diff --git a/FGBLH/Web鱼壳海豚.json b/FGBLH/Web鱼壳海豚.json index 05eae9fa..2789278b 100644 --- a/FGBLH/Web鱼壳海豚.json +++ b/FGBLH/Web鱼壳海豚.json @@ -246,6 +246,18 @@ "name": "🐬麦田影院.py[追剧]", "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "58vy", + "name": "🐬58影视.py(关梯)[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/58影视.py" + }, + { + "key": "sdvy", + "name": "🐬兄弟影视.py(关梯)[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/兄弟影视.py" }, { "key": "xhvm", @@ -730,6 +742,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧.py" }, + { + "key": "wddj18", + "name": "🐬黄豆短剧(魔改).py|🔞[短剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧(魔改).py" + }, { "key": "djjh", "name": "🐬短剧聚合.py[短剧]", @@ -921,6 +939,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/123AV.py" }, + { + "key": "18av", + "name": "🐬18AV.py|🔞(关梯)[成人]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/18AV.py" + }, { "key": "Xvideos", "name": "🐬Xvideos.py|🔞[成人]", diff --git a/FGBLH/Web鱼壳海豚py.json b/FGBLH/Web鱼壳海豚py.json index 9621f2ec..345dcd25 100644 --- a/FGBLH/Web鱼壳海豚py.json +++ b/FGBLH/Web鱼壳海豚py.json @@ -184,6 +184,18 @@ "name": "🐬麦田影院.py[追剧]", "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "58vy", + "name": "🐬58影视.py(关梯)[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/58影视.py" + }, + { + "key": "sdvy", + "name": "🐬兄弟影视.py(关梯)[追剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/兄弟影视.py" }, { "key": "xhvm", @@ -329,6 +341,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧.py" }, + { + "key": "wddj18", + "name": "🐬黄豆短剧(魔改).py|🔞[短剧]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧(魔改).py" + }, { "key": "djjh", "name": "🐬短剧聚合.py[短剧]", @@ -509,6 +527,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/123AV.py" }, + { + "key": "18av", + "name": "🐬18AV.py|🔞(关梯)[成人]", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/18AV.py" + }, { "key": "Xvideos", "name": "🐬Xvideos.py|🔞[成人]", diff --git a/FGBLH/Web鱼壳海豚无18加.json b/FGBLH/Web鱼壳海豚无18加.json index 52f6ed1c..7d4c98e5 100644 --- a/FGBLH/Web鱼壳海豚无18加.json +++ b/FGBLH/Web鱼壳海豚无18加.json @@ -233,6 +233,18 @@ "name": "🐬麦田影院.py", "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "58vy", + "name": "🐬58影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/58影视.py" + }, + { + "key": "sdvy", + "name": "🐬兄弟影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/兄弟影视.py" }, { "key": "xhvm", diff --git a/FGBLH/ok海豚.json b/FGBLH/ok海豚.json index e6e2094d..ac469373 100644 --- a/FGBLH/ok海豚.json +++ b/FGBLH/ok海豚.json @@ -225,6 +225,18 @@ "name": "🐬麦田影院.py", "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "58vy", + "name": "🐬58影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/58影视.py" + }, + { + "key": "sdvy", + "name": "🐬兄弟影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/兄弟影视.py" }, { "key": "xhvm", @@ -663,6 +675,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧.py" }, + { + "key": "wddj18", + "name": "🐬黄豆短剧(魔改).py|🔞", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧(魔改).py" + }, { "key": "djjh", "name": "🐬短剧聚合.py", @@ -860,6 +878,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/123AV.py" }, + { + "key": "18av", + "name": "🐬18AV.py|🔞(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/18AV.py" + }, { "key": "Xvideos", "name": "🐬Xvideos.py|🔞", diff --git a/FGBLH/ok海豚py.json b/FGBLH/ok海豚py.json index bf8ab05e..9e1ee3bc 100644 --- a/FGBLH/ok海豚py.json +++ b/FGBLH/ok海豚py.json @@ -183,6 +183,24 @@ "name": "🐬麦田影院.py", "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "58vy", + "name": "🐬58影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/58影视.py" + }, + { + "key": "sdvy", + "name": "🐬兄弟影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/兄弟影视.py" + }, + { + "key": "jgvy", + "name": "🐬追光影视.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/追光影视.py" }, { "key": "xhvm", @@ -346,6 +364,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧.py" }, + { + "key": "wddj18", + "name": "🐬黄豆短剧(魔改).py|🔞", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/黄豆短剧(魔改).py" + }, { "key": "djjh", "name": "🐬短剧聚合.py", @@ -526,6 +550,12 @@ "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/123AV.py" }, + { + "key": "18av", + "name": "🐬18AV.py|🔞(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/18AV.py" + }, { "key": "Xvideos", "name": "🐬Xvideos.py|🔞", diff --git a/FGBLH/ok海豚无18加.json b/FGBLH/ok海豚无18加.json index 90dd0c72..95d042b6 100644 --- a/FGBLH/ok海豚无18加.json +++ b/FGBLH/ok海豚无18加.json @@ -219,6 +219,24 @@ "name": "🐬麦田影院.py", "type": 3, "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/麦田影院.py" + }, + { + "key": "58vy", + "name": "🐬58影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/58影视.py" + }, + { + "key": "sdvy", + "name": "🐬兄弟影视.py(关梯)", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/兄弟影视.py" + }, + { + "key": "jgvy", + "name": "🐬追光影视.py", + "type": 3, + "api": "https://ghfast.top/https://raw.githubusercontent.com/FGBLH/HKL/refs/heads/main/py/追光影视.py" }, { "key": "xhvm", diff --git a/FGBLH/py/18AV.py b/FGBLH/py/18AV.py new file mode 100644 index 00000000..c6222bd0 --- /dev/null +++ b/FGBLH/py/18AV.py @@ -0,0 +1,724 @@ +# -*- coding: utf-8 -*- +import sys +import re +import json +import base64 +import threading +import requests +import urllib3 +from http.server import HTTPServer, BaseHTTPRequestHandler +from socketserver import ThreadingMixIn +from urllib.parse import unquote, quote + +urllib3.disable_warnings() +sys.path.append('..') +from base.spider import Spider + +# ===== 纯 Python AES-128 工具 ===== +_sbox = bytes([ + 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76, + 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0,0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0, + 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc,0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15, + 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a,0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75, + 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0,0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84, + 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b,0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf, + 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85,0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8, + 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5,0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2, + 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17,0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73, + 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88,0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb, + 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c,0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79, + 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9,0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08, + 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6,0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a, + 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e,0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e, + 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94,0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf, + 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68,0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16]) + +_inv_sbox = bytes([ + 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38,0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb, + 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87,0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb, + 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d,0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e, + 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2,0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25, + 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16,0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92, + 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda,0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84, + 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a,0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06, + 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02,0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b, + 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea,0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73, + 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85,0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e, + 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89,0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b, + 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20,0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4, + 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31,0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f, + 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d,0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef, + 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0,0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61, + 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26,0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d]) + +_rcon = [0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x1b,0x36] + +def _xtime(a): + return ((a << 1) ^ 0x1b) & 0xff if a & 0x80 else (a << 1) & 0xff + +def _gf_mul(a, b): + r = 0 + for _ in range(8): + if b & 1: r ^= a + a = _xtime(a) + b >>= 1 + return r + +_mul_e = bytes(_gf_mul(0x0e, i) for i in range(256)) +_mul_b = bytes(_gf_mul(0x0b, i) for i in range(256)) +_mul_d = bytes(_gf_mul(0x0d, i) for i in range(256)) +_mul_9 = bytes(_gf_mul(0x09, i) for i in range(256)) + +_key_schedules = {} + +def _key_schedule(key): + k = bytes(key) + if k in _key_schedules: return _key_schedules[k] + w = [] + for i in range(4): + w.append([key[4*i], key[4*i+1], key[4*i+2], key[4*i+3]]) + for i in range(4, 44): + temp = w[i-1][:] + if i % 4 == 0: + temp = temp[1:] + temp[:1] + temp = [_sbox[b] for b in temp] + temp[0] ^= _rcon[i//4 - 1] + w.append([w[i-4][j] ^ temp[j] for j in range(4)]) + _key_schedules[k] = w + return w + +def _dec_block(block, w): + s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15 = block + s0 ^= w[40][0]; s1 ^= w[40][1]; s2 ^= w[40][2]; s3 ^= w[40][3] + s4 ^= w[41][0]; s5 ^= w[41][1]; s6 ^= w[41][2]; s7 ^= w[41][3] + s8 ^= w[42][0]; s9 ^= w[42][1]; s10^= w[42][2]; s11^= w[42][3] + s12^= w[43][0]; s13^= w[43][1]; s14^= w[43][2]; s15^= w[43][3] + box = _inv_sbox + for rnd in range(9, 0, -1): + t0=box[s0]; t1=box[s13]; t2=box[s10]; t3=box[s7] + t4=box[s4]; t5=box[s1]; t6=box[s14]; t7=box[s11] + t8=box[s8]; t9=box[s5]; t10=box[s2]; t11=box[s15] + t12=box[s12]; t13=box[s9]; t14=box[s6]; t15=box[s3] + rk=w[rnd*4]; t0^=rk[0]; t1^=rk[1]; t2^=rk[2]; t3^=rk[3] + rk=w[rnd*4+1]; t4^=rk[0]; t5^=rk[1]; t6^=rk[2]; t7^=rk[3] + rk=w[rnd*4+2]; t8^=rk[0]; t9^=rk[1]; t10^=rk[2]; t11^=rk[3] + rk=w[rnd*4+3]; t12^=rk[0]; t13^=rk[1]; t14^=rk[2]; t15^=rk[3] + s0 =_mul_e[t0]^_mul_b[t1]^_mul_d[t2]^_mul_9[t3] + s1 =_mul_9[t0]^_mul_e[t1]^_mul_b[t2]^_mul_d[t3] + s2 =_mul_d[t0]^_mul_9[t1]^_mul_e[t2]^_mul_b[t3] + s3 =_mul_b[t0]^_mul_d[t1]^_mul_9[t2]^_mul_e[t3] + s4 =_mul_e[t4]^_mul_b[t5]^_mul_d[t6]^_mul_9[t7] + s5 =_mul_9[t4]^_mul_e[t5]^_mul_b[t6]^_mul_d[t7] + s6 =_mul_d[t4]^_mul_9[t5]^_mul_e[t6]^_mul_b[t7] + s7 =_mul_b[t4]^_mul_d[t5]^_mul_9[t6]^_mul_e[t7] + s8 =_mul_e[t8]^_mul_b[t9]^_mul_d[t10]^_mul_9[t11] + s9 =_mul_9[t8]^_mul_e[t9]^_mul_b[t10]^_mul_d[t11] + s10=_mul_d[t8]^_mul_9[t9]^_mul_e[t10]^_mul_b[t11] + s11=_mul_b[t8]^_mul_d[t9]^_mul_9[t10]^_mul_e[t11] + s12=_mul_e[t12]^_mul_b[t13]^_mul_d[t14]^_mul_9[t15] + s13=_mul_9[t12]^_mul_e[t13]^_mul_b[t14]^_mul_d[t15] + s14=_mul_d[t12]^_mul_9[t13]^_mul_e[t14]^_mul_b[t15] + s15=_mul_b[t12]^_mul_d[t13]^_mul_9[t14]^_mul_e[t15] + t0=box[s0]; t1=box[s13]; t2=box[s10]; t3=box[s7] + t4=box[s4]; t5=box[s1]; t6=box[s14]; t7=box[s11] + t8=box[s8]; t9=box[s5]; t10=box[s2]; t11=box[s15] + t12=box[s12]; t13=box[s9]; t14=box[s6]; t15=box[s3] + rk=w[0]; t0^=rk[0]; t1^=rk[1]; t2^=rk[2]; t3^=rk[3] + rk=w[1]; t4^=rk[0]; t5^=rk[1]; t6^=rk[2]; t7^=rk[3] + rk=w[2]; t8^=rk[0]; t9^=rk[1]; t10^=rk[2]; t11^=rk[3] + rk=w[3]; t12^=rk[0]; t13^=rk[1]; t14^=rk[2]; t15^=rk[3] + return bytes([t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15]) + +def _aes_cbc_decrypt(data, key, iv): + if not data or len(data) % 16: return data + n = len(data) // 16 + w = _key_schedule(key) + out = bytearray(len(data)) + prev = iv + for i in range(n): + block = data[i*16:(i+1)*16] + dec = _dec_block(block, w) + for j in range(16): + out[i*16+j] = dec[j] ^ prev[j] + prev = block + pad = out[-1] + if 1 <= pad <= 16: + return bytes(out[:-pad]) + return bytes(out) + + +# ===== 全局代理服务(封面图走代理绕过 SSL) ===== +_proxy_port = 0 +_proxy_started = False +_proxy_session = requests.Session() +_proxy_session.verify = False +_proxy_headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Referer': 'https://mjv011.com/', +} + +class _ThreadedHTTPServer(ThreadingMixIn, HTTPServer): + daemon_threads = True + +class _ProxyHandler(BaseHTTPRequestHandler): + def do_GET(self): + try: + real_url = unquote(self.path[1:]) + if not real_url or not real_url.startswith('http'): + self.send_response(404); self.end_headers(); return + r = _proxy_session.get(real_url, headers=_proxy_headers, timeout=20, verify=False) + ct = r.headers.get('Content-Type', 'image/jpeg') + self.send_response(200) + self.send_header('Content-Type', ct) + self.send_header('Content-Length', len(r.content)) + self.send_header('Access-Control-Allow-Origin', '*') + self.end_headers() + self.wfile.write(r.content) + except BrokenPipeError: + pass + except Exception: + self.send_response(404); self.end_headers() + def log_message(self, format, *args): pass + +def _find_free_port(): + import socket + sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sk.bind(('127.0.0.1', 0)) + port = sk.getsockname()[1] + sk.close() + return port + +def _start_proxy(): + global _proxy_port, _proxy_started + if _proxy_started: return + _proxy_port = _find_free_port() + server = _ThreadedHTTPServer(('127.0.0.1', _proxy_port), _ProxyHandler) + threading.Thread(target=server.serve_forever, daemon=True).start() + _proxy_started = True + + +# ===== 内容类型判断 ===== +def _is_novel(tid_or_vid): + if not tid_or_vid: return False + return tid_or_vid.startswith('novel') + +def _is_image(tid_or_vid): + if not tid_or_vid: return False + return any(tid_or_vid.startswith(p) for p in ['18H', 'doujin', 'cg', 'cwp']) + + +# ===== Spider ===== +class Spider(Spider): + session = requests.Session() + host = 'https://mjv011.com' + headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Language': 'zh-CN,zh;q=0.9', + 'Referer': 'https://mjv011.com/', + } + + def getName(self): return "mjv011" + + def isVideoFormat(self, url): + if not url: return False + return '.m3u8' in url or '.mp4' in url or '.ts' in url + + def manualVideoCheck(self): return False + def destroy(self): pass + + def localProxy(self, param): + return [404, 'text/plain', ''] + + def init(self, extend=""): + self.session.verify = False + _start_proxy() + try: + self.session.get( + f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html', + headers=self.headers, timeout=15, verify=False) + except Exception: + pass + + def _proxy_url(self, url): + if not url: return '' + if url.startswith('http://127.0.0.1'): + return url + return f'http://127.0.0.1:{_proxy_port}/{quote(url, safe="")}' + + def _fetch(self, url): + try: + r = self.session.get(url, headers=self.headers, timeout=20, verify=False) + r.encoding = 'utf-8' + if r.status_code == 200: + text = r.text + # 年龄验证页检测:自动绕过 + if len(text) < 3000 and ('同意(enter)' in text or 'IamOverEighteenYearsOld' in text): + self.session.get( + f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html', + headers=self.headers, timeout=20, verify=False) + r = self.session.get(url, headers=self.headers, timeout=20, verify=False) + r.encoding = 'utf-8' + if r.status_code == 200: + return r.text + return '' + return text + return '' + except Exception: + return '' + + # ===== 列表解析 ===== + def _parse_text_posts(self, text): + """小说列表(无图)""" + items = [] + for m in re.finditer(r"
\s*
\s*]*>]*href=\"([^\"]+)\"[^>]*>([^<]+)", text): + href, title = m.groups() + mm = re.search(r'/([^/]+)_content/(\d+)/([^/]+)\.html', href) + if not mm: continue + ctype, vid, slug = mm.group(1), mm.group(2), mm.group(3) + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title.strip(), + 'vod_pic': '', + 'vod_remarks': '', + }) + return items + + def _parse_posts(self, text, tid=''): + """根据分类解析列表:小说单独处理,其他统一按带图 post 处理""" + if _is_novel(tid): + return self._parse_text_posts(text) + + items = [] + for m in re.finditer(r"
\s*]*href=\"([^\"]+)\"[^>]*>]*src='([^']+)'[^>]*>\s*\s*
\s*]*>]*>([^<]+)(?:\s*
([^<]*)
)?", text): + href, pic, title, date = m.groups() + date = date or '' + mm = re.search(r'/([^/]+)_content/(\d+)/([^/]+)\.html', href) + if not mm: continue + ctype, vid, slug = mm.group(1), mm.group(2), mm.group(3) + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title.strip(), + 'vod_pic': self._proxy_url(pic), + 'vod_remarks': date.strip(), + }) + return items + + def _build_cat_url(self, tid, page, extend=None): + if extend and extend.get('sub'): + sub = quote(unquote(extend['sub']), safe='/()') + return f'{self.host}/zh/{sub}/{page}.html' + if tid.startswith('search_'): + kw = tid[7:] + return f'{self.host}/zh/chinese_search/all/{kw}/{page}.html' + # TVBox 可能截断 type_id,自动补全 + if tid.endswith('_random'): + tid = tid + '/all' + elif '/' not in tid: + tid = tid + '_random/all' + if page == 1: + return f'{self.host}/zh/{tid}/index.html' + return f'{self.host}/zh/{tid}/index_{page}.html' + + # ===== 接口 ===== + def homeContent(self, filter): + classes = [ + {'type_id': 'chinese_random/all', 'type_name': '中文字幕'}, + {'type_id': 'censored_random/all', 'type_name': '有码'}, + {'type_id': 'uncensored_random/all', 'type_name': '无码'}, + {'type_id': 'reducing-mosaic_random/all', 'type_name': '无码破解'}, + {'type_id': 'amateurjav_random/all', 'type_name': '素人'}, + {'type_id': 'animation_random/all', 'type_name': 'H动画'}, + {'type_id': 'dt_random/all', 'type_name': '国产自拍'}, + {'type_id': '18H_random/all', 'type_name': '18H漫画'}, + {'type_id': 'cg_random/all', 'type_name': '写真图集'}, + {'type_id': 'cwp_random/all', 'type_name': '国产写真'}, + {'type_id': 'novel_random/all', 'type_name': '小说'}, + ] + + filter = self._build_filters() + return {'class': classes, 'filters': filter, 'type': '影视'} + + def _build_filters(self): + """构造 TVBox filter 格式(网站左侧导航真实子分类)""" + filters = {} + chinese_opts = [ + {'n': '全部', 'v': ''}, + {'n': '随机', 'v': 'chinese_randomall/all'}, + {'n': '类别清单', 'v': 'chinese_categorylist/list'}, + ] + filters['chinese_random/all'] = [{'key': 'sub', 'name': '中文字幕', 'value': chinese_opts}] + uncensored_opts: list[dict[str, str]] = [ + {'n': '全部', 'v': ''}, + {'n': '一本道(1pondo)', 'v': 'uncensored_makersr/32/一本道(1pondo)'}, + {'n': 'カリビアンコム(Caribbeancom)', 'v': 'uncensored_makersr/30/カリビアンコム(Caribbeancom)'}, + {'n': 'カリビアンコムPPV', 'v': 'uncensored_makersr/40/カリビアンコムPPV(Caribbeancompr)'}, + {'n': '天然むすめ(10musume)', 'v': 'uncensored_makersr/31/天然むすめ(10musume)'}, + {'n': 'HEYZO', 'v': 'uncensored_makersr/17/HEYZO'}, + {'n': '東京熱(Tokyo Hot)', 'v': 'uncensored_makersr/29/東京熱(Tokyo Hot)'}, + {'n': 'ガチん娘!(Gachinco)', 'v': 'uncensored_makersr/35/ガチん娘!(Gachinco)'}, + {'n': 'パコパコママ(pacopacomama)', 'v': 'uncensored_makersr/36/パコパコママ(pacopacomama)'}, + {'n': 'エッチな4610', 'v': 'uncensored_makersr/34/エッチな4610'}, + {'n': '人妻斬り0930', 'v': 'uncensored_makersr/38/人妻斬り0930'}, + {'n': 'エッチな0930', 'v': 'uncensored_makersr/39/エッチな0930'}, + {'n': 'トリプルエックス(XXX-AV)', 'v': 'uncensored_makersr/126/トリプルエックス (XXX-AV)'}, + ] + filters['uncensored_random/all'] = [{'key': 'sub', 'name': '厂商', 'value': uncensored_opts}] + + animation_opts = [ + {'n': '全部', 'v': ''}, + {'n': 'H有码动画', 'v': 'CensoredAnimation_random/all'}, + {'n': 'H无码动画', 'v': 'UncensoredAnimation_random/all'}, + {'n': 'H_3D动画', 'v': 'tdAnimation_random/all'}, + ] + filters['animation_random/all'] = [{'key': 'sub', 'name': '动漫', 'value': animation_opts}] + + comic_opts = [ + {'n': '全部', 'v': ''}, + {'n': '短篇同人', 'v': 'doujin_random/all'}, + ] + filters['18H_random/all'] = [{'key': 'sub', 'name': '漫画', 'value': comic_opts}] + + cg_opts = [ + {'n': '全部', 'v': ''}, + {'n': 'Bejean On Line', 'v': 'cg_search/all/Bejean On Line'}, + {'n': 'Bomb.tv', 'v': 'cg_search/all/Bomb.tv'}, + {'n': 'DGC', 'v': 'cg_search/all/DGC'}, + {'n': 'Graphis Gals', 'v': 'cg_search/all/Graphis Gals'}, + {'n': 'Graphis Hatsunugi', 'v': 'cg_search/all/Graphis Hatsunugi'}, + {'n': 'image.tv', 'v': 'cg_search/all/image.tv'}, + {'n': 'Sabra.net', 'v': 'cg_search/all/Sabra.net'}, + {'n': 'S-Cute', 'v': 'cg_search/all/S-Cute'}, + {'n': 'X-City', 'v': 'cg_search/all/X-City'}, + {'n': 'YS Web', 'v': 'cg_search/all/YS Web'}, + ] + filters['cg_random/all'] = [{'key': 'sub', 'name': '系列', 'value': cg_opts}] + + cwp_opts = [ + {'n': '全部', 'v': ''}, + {'n': '3AGirl AAA女郎', 'v': 'cwp_search/all/3AGirl AAA女郎'}, + {'n': 'ROSI寫真', 'v': 'cwp_search/all/ROSI寫真'}, + {'n': 'RU1MM 如壹寫真', 'v': 'cwp_search/all/RU1MM 如壹寫真'}, + {'n': 'DISI第四印象', 'v': 'cwp_search/all/DISI第四印象'}, + ] + filters['cwp_random/all'] = [{'key': 'sub', 'name': '系列', 'value': cwp_opts}] + + novel_opts = [ + {'n': '全部', 'v': ''}, + {'n': '學生校園', 'v': 'novel_search/all/學生校園'}, + {'n': '職場激情', 'v': 'novel_search/all/職場激情'}, + {'n': '經驗故事', 'v': 'novel_search/all/經驗故事'}, + {'n': '暴力虐待', 'v': 'novel_search/all/暴力虐待'}, + {'n': '不倫戀情', 'v': 'novel_search/all/不倫戀情'}, + {'n': '群體換伴', 'v': 'novel_search/all/群體換伴'}, + {'n': '人妻熟女', 'v': 'novel_search/all/人妻熟女'}, + {'n': '科學幻想', 'v': 'novel_search/all/科學幻想'}, + {'n': '其他故事', 'v': 'novel_search/all/其他故事'}, + {'n': '玄幻仙俠', 'v': 'novel_search/all/玄幻仙俠'}, + {'n': '動漫修改', 'v': 'novel_search/all/動漫修改'}, + {'n': '長篇連載', 'v': 'novel_search/all/長篇連載'}, + ] + filters['novel_random/all'] = [{'key': 'sub', 'name': '主题', 'value': novel_opts}] + return filters + + def homeVideoContent(self): + text = self._fetch(f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html') + items = self._parse_posts(text, 'content_news/all') + return {'list': items} + + def categoryContent(self, tid, pg, filter, extend): + try: + return self._categoryContent_inner(tid, pg, filter, extend) + except Exception: + return {'list': [], 'page': int(pg) if pg else 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _categoryContent_inner(self, tid, pg, filter, extend): + if isinstance(extend, str): + try: + extend = json.loads(extend) + except Exception: + extend = {} + if not extend: + extend = {} + page = int(pg) if pg else 1 + # ===== 类别清单(中文字幕的子分类): 文件夹形式(仿 18av) ===== + if extend.get('sub') == 'chinese_categorylist/list': + return self._category_folder(page) + if '@' in str(tid): + return self._folder_detail(tid, page) + url = self._build_cat_url(tid, page, extend) + # 子分类筛选时按子分类内容类型解析 + parse_tid = tid + if parse_tid.endswith('_random'): + parse_tid = parse_tid + '/all' + elif '/' not in parse_tid: + parse_tid = parse_tid + '_random/all' + if extend and extend.get('sub'): + sub = extend['sub'] + if _is_novel(sub): + parse_tid = 'novel_random/all' + elif _is_image(sub): + parse_tid = sub.split('_')[0] + '_random/all' if '_' in sub else 'cg_random/all' + text = self._fetch(url) + items = self._parse_posts(text, parse_tid) + return {'list': items, 'page': page, 'pagecount': page + 1, + 'limit': len(items), 'total': page * len(items) + 1} + + # ===== 类别清单(文件夹形式,仿 18av) ===== + def _category_folder(self, pg): + """类别清单: 抓取子分类索引页,以 folder 形式返回,点文件夹进入视频列表""" + html = self._fetch(f'{self.host}/zh/chinese_categorylist/list/index.html') + lst = [] + for m in re.finditer( + r"]+href=[\"']([^\"']*chinese_category/(\d+)/([^\"'/]+)/[^\"']*)[\"'][^>]*>([^<]+)", + html, re.I): + category_url = m.group(1).strip() + category_name = m.group(4).strip() + if category_url.startswith(self.host): + category_url = category_url[len(self.host):] + lst.append({ + 'vod_id': category_url + '@', + 'vod_name': category_name, + 'vod_pic': self.host.rstrip('/') + '/images/1v.jpg', + 'vod_tag': 'folder', + 'vod_remarks': '分类', + }) + return {'list': lst, 'page': 1, 'pagecount': 1, + 'limit': len(lst), 'total': len(lst)} + + def _folder_detail(self, tid, pg): + """@ 文件夹: 去掉 @, 把子分类链接当作真实 URL 拉取视频列表(支持翻页)""" + tid = str(tid).replace('@', '') + url = self.host.rstrip('/') + tid + if re.search(r'/\d+\.html$', url): + url = re.sub(r'/\d+\.html$', '/' + str(pg) + '.html', url) + else: + base = url.rstrip('/') + url = base + ('/index.html' if pg <= 1 else f'/index_{pg}.html') + html = self._fetch(url) + lst = self._parse_posts(html, 'chinese_category') + return {'list': lst, 'page': pg, 'pagecount': 9999, + 'limit': len(lst), 'total': 9999} + + def detailContent(self, ids): + try: + return self._detailContent_inner(ids) + except Exception: + return {'list': []} + + def _detailContent_inner(self, ids): + vid = str(ids[0] if isinstance(ids, list) else ids) + ctype, num, slug = vid.split('#', 2) + if _is_novel(ctype): + return self._novel_detail(vid, ctype, num, slug) + elif _is_image(ctype): + return self._image_detail(vid, ctype, num, slug) + else: + return self._video_detail(vid, ctype, num, slug) + + def _video_detail(self, vid, ctype, num, slug): + """视频详情(有播放器解密)""" + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + + title = '' + m = re.search(r']*>(.*?)', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + if not title: + m = re.search(r'([^<]+)', text) + if m: title = m.group(1).strip() + + cover = '' + m = re.search(r'"thumbnailUrl"\s*:\s*"([^"]+)"', text) + if m: cover = m.group(1) + if not cover: + m = re.search(r"]*property=\"og:image\"[^>]*content=\"([^\"]+)\"", text) + if m: cover = m.group(1) + if not cover: + m = re.search(r"
.*?]*src='([^']+)'", text, re.S) + if m: cover = m.group(1) + + m = re.search(r'hadeedg252=(\d+)', text) + if not m: return {'list': []} + hadeedg252 = int(m.group(1)) + m = re.search(r'hcdeedg252=(\d+)', text) + if not m: return {'list': []} + hcdeedg252 = int(m.group(1)) + m = re.search(r"var argdeqweqweqwe = '([^']+)'", text) + if not m: return {'list': []} + aes_key = m.group(1) + m = re.search(r"var hdddedg252 = '([^']+)'", text) + if not m: return {'list': []} + aes_iv = m.group(1) + + mm = re.search(r"mvarr\['10_1'\]=(\[.*?\]);", text, re.S) + if not mm: return {'list': []} + mvarr_str = mm.group(1) + items = re.findall(r"\['([^']*)','([^']*)','([^']*)','([^']*)','([^']*)','([^']*)'\]", mvarr_str) + if not items: return {'list': []} + + urls = [] + for iframe_id, enc, html, prefix, empty, label in items: + if not enc or not prefix: continue + pid = self._decrypt_id(enc, hadeedg252, hcdeedg252, aes_key, aes_iv) + if not pid: continue + for res, label_name in [('1080', '1080P'), ('720', '720P'), ('480', '480P')]: + urls.append(f'{label_name}${num}|{slug}|{pid}|{res}') + + if not urls: return {'list': []} + + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': self._proxy_url(cover), + 'vod_content': '', + 'vod_remarks': '', + 'vod_play_from': 'mjv011', + 'vod_play_url': '#'.join(urls), + } + return {'list': [vod]} + + def _novel_detail(self, vid, ctype, num, slug): + """小说详情""" + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + + title = '' + m = re.search(r']*>(.*?)', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + + content = '' + m = re.search(r"id=['\"]novel_content_txtsize['\"][^>]*>(.*?)
", text, re.S) + if m: + raw = m.group(1) + content = re.sub(r'<[^>]+>', '', raw) + content = re.sub(r' ', ' ', content) + content = re.sub(r'\s+', ' ', content).strip() + if not content: + m = re.search(r"([\s\S]*?)\s*
]+>', '', raw) + content = re.sub(r' ', ' ', content) + content = re.sub(r'\s+', ' ', content).strip() + + if len(content) > 3000: + content = content[:3000] + '...' + + novel_json = json.dumps({'title': title, 'content': content}, ensure_ascii=False) + play_url = f'阅读$novel://{novel_json}' + + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': '', + 'vod_content': '', + 'vod_remarks': '', + 'vod_play_from': '小说', + 'vod_play_url': play_url, + 'vod_tag': 'text', + 'vod_player': '书', + } + return {'list': [vod]} + + def _image_detail(self, vid, ctype, num, slug): + """图片详情(写真/漫画)""" + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + + title = '' + m = re.search(r']*>(.*?)', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + + cover = '' + m = re.search(r'"thumbnailUrl"\s*:\s*"([^"]+)"', text) + if m: cover = m.group(1) + + # 提取详情页所有大图(第一页已包含全部) + all_imgs = re.findall(r"src=['\"]([^'\"]*eemmhh02\.com/[^'\"]+\.(?:jpg|png|webp))['\"]", text, re.I) + big_imgs = [] + seen = set() + for img in all_imgs: + if img in seen: + continue + seen.add(img) + big_imgs.append(self._proxy_url(img)) + + if not big_imgs: + return {'list': []} + + pics = '&&'.join(big_imgs) + play_url = f'查看$pics://{pics}' + + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': self._proxy_url(cover), + 'vod_content': f'共 {len(big_imgs)} 张图片', + 'vod_remarks': str(len(big_imgs)) + 'P', + 'vod_play_from': '图片', + 'vod_play_url': play_url, + 'vod_tag': 'image', + 'vod_player': '画', + } + return {'list': [vod]} + + def _decrypt_id(self, enc, xor_key, base, aes_key, aes_iv): + try: + sep = chr(base + 97) + parts = enc.split(sep) + s1 = ''.join(chr(int(p, base) ^ xor_key) for p in parts if p) + data = base64.b64decode(s1) + plain = _aes_cbc_decrypt(data, aes_key.encode(), aes_iv.encode()) + return plain.decode('utf-8') + except Exception: + return '' + + def searchContent(self, key, quick, pg="1"): + try: + return self._searchContent_inner(key, quick, pg) + except Exception: + return {'list': [], 'page': int(pg) if pg else 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _searchContent_inner(self, key, quick, pg="1"): + page = int(pg) if pg else 1 + return self._categoryContent_inner(f'search_{key}', page, False, {}) + + def playerContent(self, flag, id, vipFlags=None): + try: + return self._playerContent_inner(flag, id, vipFlags) + except Exception: + return {'parse': 0, 'url': '', 'header': {}, 'position': '0'} + + def _playerContent_inner(self, flag, id, vipFlags=None): + # 小说 + if id.startswith('novel://'): + return {'parse': 0, 'url': id, 'header': '', 'vod_player': '书'} + # 图片 + if id.startswith('pics://'): + return {'parse': 0, 'playUrl': '', 'url': id, 'header': self.headers} + # 视频播放 + num, slug, pid, res = id.split('|', 3) + url = f'{self.host}/js/player/play.php?numresolution={res}&lo=on&id={pid}' + text = self._fetch(url) + m3u8 = '' + if text: + mm = re.search(r'videoSources\s*=\s*(\[.*?\]);', text, re.S) + if mm: + arr = mm.group(1) + sources = re.findall(r"src:\s*'([^']+)'[^}]*?size:\s*(\d+)", arr, re.S) + if sources: + target = int(res) if str(res).isdigit() else 0 + for u, s in sources: + if int(s) == target: + m3u8 = u + break + if not m3u8: + m3u8 = sources[0][0] + if not m3u8: + mm = re.search(r'https?://[^\s"<>\']+?\.m3u8', text) + if mm: m3u8 = mm.group(0) + return {'parse': 0, 'url': m3u8, 'header': {'Referer': self.host + '/'}, 'position': '0'} \ No newline at end of file diff --git a/FGBLH/py/58影视.py b/FGBLH/py/58影视.py new file mode 100644 index 00000000..6d39fbf3 --- /dev/null +++ b/FGBLH/py/58影视.py @@ -0,0 +1,385 @@ +# -*- coding: utf-8 -*- +import sys +import re +import json +from urllib.parse import urljoin, quote, unquote, urlparse +from concurrent.futures import ThreadPoolExecutor, as_completed + +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + import requests as rq + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +HOST = "https://www.58hu.com" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 封面URL中这些域名已失效,对应影片会被过滤掉 +DEAD_IMG_HOSTS = {"image.caiji.cyou", "wim.xrc888.com"} + +CATEGORIES = { + "1": "电影", "2": "电视剧", "3": "综艺", + "4": "动漫", "21": "体育", +} + +# 子分类: {父分类ID: {子分类ID: 名称}} +SUB_CATS = { + "1": {"6": "动作片", "7": "喜剧片", "8": "爱情片", "9": "科幻片", "10": "恐怖片", + "11": "剧情片", "12": "战争片", "22": "纪录片"}, + "2": {"13": "国产剧", "14": "港台剧", "15": "日韩剧", "16": "欧美剧", "24": "海外剧", + "29": "BI番剧", "30": "BI国创", "31": "BI电影"}, + "3": {"28": "最新综艺"}, + "4": {"27": "最新动漫"}, + "21": {"26": "体育赛事"}, +} + +class Spider(Spider): + def init(self, extend=""): + global HOST + try: + r = self.fetch(HOST, headers={"User-Agent": UA}, timeout=15000) + if hasattr(r, 'url') and r.url and r.url != HOST.rstrip("/"): + HOST = r.url.rstrip("/") + except: + pass + + def homeContent(self, filter=False): + r = {"class": [], "list": []} + for k, v in CATEGORIES.items(): + r["class"].append({"type_id": k, "type_name": v}) + return r + + def homeVideoContent(self): + try: + r = self.fetch(HOST, headers={"User-Agent": UA}, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + return {"list": self._items(html)} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=""): + pn = 1 + try: pn = max(int(str(pg)), 1) + except: pass + cat = str(tid) + try: + url = self._build_category_url(cat, pn, extend) + r = self.fetch(url, headers={"User-Agent": UA}, timeout=30000) + html = r.text if hasattr(r, 'text') else str(r) + cat_name = CATEGORIES.get(cat, "") + items = self._items(html, cat_filter=cat_name) + # 过滤掉没有封面或没有可播放线路的影片(并发检查) + items = self._filter_items(items) + pc = self._pagecount(html, pn) + return {"page": pn, "pagecount": pc, "limit": 30, "total": len(items), "list": items} + except: + return {"page": pn, "pagecount": 1, "limit": 30, "total": 0, "list": []} + + def _build_category_url(self, cat, pn, extend=""): + """构建分类URL,支持筛选参数""" + # 解析extend中的筛选条件 + ext = {} + if extend and isinstance(extend, str) and extend.strip(): + try: + ext = json.loads(extend) + except: + pass + + # 判断是否为子分类(在SUB_CATS中) + is_sub = False + for parent, subs in SUB_CATS.items(): + if cat in subs: + is_sub = True + break + + # 所有分类用 vod/show 模式 + parts = [] + # class/类型 + cls = ext.get("class") or "" + if cls and cls != "全部": + parts.append(f"class/{quote(cls)}") + # area/地区 + area = ext.get("area") or "" + if area and area != "全部": + parts.append(f"area/{quote(area)}") + # year/年代 + year = ext.get("year") or "" + if year and year != "全部": + parts.append(f"year/{quote(year)}") + # letter/字母 + letter = ext.get("letter") or "" + if letter and letter != "全部": + parts.append(f"letter/{quote(letter)}") + # sort/排序 + sort = ext.get("sort") or "" + if sort: + parts.append(f"by/{quote(sort)}") + # page + if pn > 1: + parts.append(f"page/{pn}") + filters = "/".join(parts) + if filters: + return f"{HOST}/index.php/vod/show/{filters}/id/{cat}.html" + else: + return f"{HOST}/index.php/vod/show/id/{cat}.html" + + def detailContent(self, ids): + if isinstance(ids, list): + vid = ids[0] if ids else "" + else: + vid = str(ids) if ids else "" + m = re.search(r'(\d+)', str(vid)) + vid = m.group(1) if m else "" + if not vid: + return {"list": []} + try: + r = self.fetch(f"{HOST}/index.php/vod/detail/id/{vid}.html", headers={"User-Agent": UA}, timeout=30000) + h = r.text if hasattr(r, 'text') else str(r) + except: + return {"list": []} + d = {"vod_id": vid, "vod_name": "", "vod_pic": "", "vod_year": "", + "vod_area": "", "vod_class": "", "vod_director": "", "vod_actor": "", + "vod_content": "", "vod_remarks": "", "vod_play_from": "", "vod_play_url": ""} + # 标题 + tn = re.search(r']*>(.*?)', h) + if tn: + d["vod_name"] = re.sub(r'<[^>]+>', '', tn.group(1)).strip() + if not d["vod_name"]: + tn = re.search(r'(.*?)', h) + if tn: + d["vod_name"] = tn.group(1).split("-")[0].strip() + # 封面: 优先 class="pic-img video-pic" 里的img + p = re.search(r'class="pic-img video-pic"[\s\S]{0,100}?]*src="(https?://[^"]+)"', h, re.I) + if not p: + p = re.search(r'data-src="(https?://[^"]+)"', h) + if not p: + p = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', h, re.I) + if p: + pic_url = p.group(1) + if pic_url.startswith("http://"): + pic_url = pic_url.replace("http://", "https://", 1) + d["vod_pic"] = pic_url + # 简介 + desc_m = re.search(r'简介[\s\S]{0,30}?>([\s\S]*?)
', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + if not d["vod_content"]: + desc_m = re.search(r'class="[^"]*desc[^"]*"[^>]*>([\s\S]*?)
', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + # 年份 + ym = re.search(r'(\d{4})', d.get("vod_name", "")) + if ym: d["vod_year"] = ym.group(1) + # 地区/分类/导演/主演等 + info_items = re.findall(r']*class="[^"]*data[^"]*"[^>]*>([\s\S]*?)', h) + for item in info_items: + clean = re.sub(r'<[^>]+>', '', item).strip() + if '导演' in item and not d["vod_director"]: + d["vod_director"] = clean.replace('导演', '').strip().rstrip(',').strip() + elif '主演' in item and not d["vod_actor"]: + d["vod_actor"] = clean.replace('主演', '').strip().rstrip(',').strip() + elif '类型' in item and not d["vod_class"]: + d["vod_class"] = clean.replace('类型', '').strip() + elif '地区' in item and not d["vod_area"]: + d["vod_area"] = clean.replace('地区', '').strip() + # 备注 + rm = re.search(r'class="[^"]*remarks?[^"]*"[^>]*>([^<]+)<', h) + if rm: d["vod_remarks"] = rm.group(1).strip() + # 播放源(只保留m3u8直链线路) + try: + pf, pu = [], [] + line_map = {} + for sid, name in re.findall(r'id="#con_playlist_(\d+)"[^>]*class="gico[^"]*"[^>]*>([^<]+)', h): + line_map[sid] = name.strip() + for m in re.finditer(r']*id="con_playlist_(\d+)"[^>]*>([\s\S]*?)', h): + sid = m.group(1) + content = m.group(2) + eps = re.findall(r'href="(/index\.php/vod/play/id/\d+/sid/\d+/nid/\d+\.html)"[^>]*>([\s\S]*?)', content) + if not eps: + continue + line_name = line_map.get(sid, f"线路{sid}") + # 预检第1集:只保留返回m3u8直链的线路 + first_url = urljoin(HOST, eps[0][0]) + try: + rp = self.fetch(first_url, headers={"User-Agent": UA}, timeout=10000) + hp = rp.text if hasattr(rp, 'text') else str(rp) + pd = re.search(r'player_data\s*=\s*(\{[\s\S]*?\})\s*[;<]', hp) + if not pd: + continue + pdata = json.loads(pd.group(1)) + purl = pdata.get("url", "") + if not purl or not purl.startswith("http") or ".m3u8" not in purl: + continue + except: + continue + ep_list = [] + for url, name in eps: + clean_name = re.sub(r'<[^>]+>', '', name).strip() + ep_list.append(f"{clean_name}${urljoin(HOST, url)}") + if ep_list: + pf.append(line_name) + pu.append("#".join(ep_list)) + if pf: + d["vod_play_from"] = "$$$".join(pf) + d["vod_play_url"] = "$$$".join(pu) + except: + pass + return {"list": [d]} + + def searchContent(self, key, quick=False, pg="1"): + try: + pn = 1 + try: pn = int(str(pg)) + except: pass + url = f"{HOST}/index.php/vod/search/wd/{quote(key)}" + if pn > 1: + url += f"/page/{pn}" + url += ".html" + r = self.fetch(url, headers={"User-Agent": UA}, timeout=30000) + html = r.text if hasattr(r, 'text') else str(r) + items = self._items(html) + return {"list": items, "page": pn} + except: + return {"list": []} + + def playerContent(self, flag, id, vipFlags=None): + url = str(id) if id else str(flag) + if url.startswith("http") and ".m3u8" in url: + return {"url": url} + if url.startswith("http"): + full_url = url + else: + if not url.startswith("/"): + url = "/" + url + full_url = urljoin(HOST, url) + try: + r = self.fetch(full_url, headers={"User-Agent": UA}, timeout=30000) + h = r.text if hasattr(r, 'text') else str(r) + except: + return {"url": ""} + pd = re.search(r'player_data\s*=\s*(\{[\s\S]*?\})\s*[;<]', h) + if pd: + try: + data = json.loads(pd.group(1)) + play_url = data.get("url", "") + if play_url: + return {"url": play_url} + except: + pass + m3u8 = re.search(r'(https?://[^\s"\'<>]+\.m3u8)', h) + if m3u8: + return {"url": m3u8.group(1)} + return {"url": ""} + + def localProxy(self, param): + pass + + def _filter_items(self, items): + """过滤:去掉没封面的 + 并发检查线路,去掉没有LZ/YZ的""" + if not items: + return items + # 先去掉没封面的 + items = [it for it in items if it.get("vod_pic")] + if not items: + return items + # 并发检查每个影片是否有LZ/YZ线路 + playable_ids = set() + def check(it): + return it["vod_id"], self._check_playable(it["vod_id"]) + with ThreadPoolExecutor(max_workers=10) as executor: + futures = {executor.submit(check, it): it for it in items} + for future in as_completed(futures): + try: + vid, ok = future.result() + if ok: + playable_ids.add(vid) + except: + pass + return [it for it in items if it["vod_id"] in playable_ids] + + def _check_playable(self, vid): + """检查详情页是否有LZ或YZ线路名""" + try: + r = self.fetch(f"{HOST}/index.php/vod/detail/id/{vid}.html", headers={"User-Agent": UA}, timeout=5000) + h = r.text if hasattr(r, 'text') else str(r) + lines = re.findall(r'id="#con_playlist_\d+"[^>]*class="gico[^"]*"[^>]*>([^<]+)', h) + for name in lines: + if "LZ" in name or "YZ" in name: + return True + return False + except: + return False + + def _pagecount(self, html, current_page=1): + # 匹配分页链接: /index.php/vod/show/.../page/2/... + pages = re.findall(r'/page/(\d+)/', html) + max_page = current_page + for p in pages: + try: + n = int(p) + if n > max_page: + max_page = n + except: + pass + # 如果当前页是最大且还有下一页 + has_next = re.search(r'>下一页<', html) + if has_next and max_page <= current_page + 5: + max_page = current_page + 5 + return max_page + + def _items(self, html, cat_filter=""): + items, seen = [], set() + # 分类过滤关键词映射 + ANIME_KEYWORDS = {'动漫', '动画', '卡通', '番剧', '番'} + TV_KEYWORDS = {'电视剧', '国产剧', '港台剧', '日韩剧', '欧美剧', '海外剧'} + MOVIE_KEYWORDS = {'电影', '动作片', '喜剧片', '爱情片', '科幻片', '恐怖片', '剧情片', '战争片', '纪录片'} + for m in re.finditer(r'href="(/index\.php/vod/detail/id/(\d+)\.html)"[^>]*title="([^"]*)"', html): + vid = m.group(2) + if vid in seen: + continue + name = m.group(3).strip() + if not name or len(name) > 100: + continue + after = html[m.end():m.end()+2000] + # 封面: 优先 data-original,再 data-src,再 src。HTTP升级为HTTPS + cover = re.search(r'data-original="(https?://[^"]+)"', after) + if not cover: + cover = re.search(r'data-src="(https?://[^"]+)"', after) + if not cover: + cover = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', after, re.I) + pic_url = cover.group(1) if cover else "" + if pic_url.startswith("http://"): + pic_url = pic_url.replace("http://", "https://", 1) + # 过滤失效图床域名 + if pic_url: + host = urlparse(pic_url).hostname or "" + if host in DEAD_IMG_HOSTS: + pic_url = "" + # 备注 + remark = re.search(r'class="titles"[^>]*>([^<]+)<', after) + if not remark: + remark = re.search(r'class="[^"]*prb[^"]*"[^>]*>([^<]+)<', after) + # 分类过滤: 从 mcat 提取分类标签(注意span内可能有换行) + mcat_raw = re.search(r'class="mcat">([\s\S]*?)
', after) + if mcat_raw and cat_filter: + mcat_text = re.sub(r'<[^>]+>', '', mcat_raw.group(1)).strip() + if cat_filter == "电视剧": + if any(k in mcat_text for k in ANIME_KEYWORDS): + continue + elif cat_filter == "动漫": + if any(k in mcat_text for k in TV_KEYWORDS): + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": name[:50], + "vod_pic": pic_url, + "vod_remarks": remark.group(1).strip() if remark else "", + }) + return items diff --git a/FGBLH/py/兄弟影视.py b/FGBLH/py/兄弟影视.py new file mode 100644 index 00000000..d232d4b8 --- /dev/null +++ b/FGBLH/py/兄弟影视.py @@ -0,0 +1,640 @@ +# -*- coding: utf-8 -*- +import sys +import re +import json +from urllib.parse import urljoin, quote, unquote, urlparse +from html import unescape as html_unescape +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + import requests as rq + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +HOST = "https://www.brovod.com" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 封面URL中这些域名已失效,对应影片会被过滤掉 +DEAD_IMG_HOSTS = {"image.caiji.cyou", "wim.xrc888.com"} +# 分类映射: tid -> 中文名 +CATEGORIES = { + "Movies": "电影", + "TV": "剧集", + "Anime": "动漫", + "Documentaries": "纪录片", + "Snaps": "短剧", + "Shows": "综艺", +} + +# weserv.nl 代理前缀,需要去掉以获取原始URL +WESERV_PREFIX = "https://images.weserv.nl/?url=" + +# from值 -> 线路显示名 (来自 playerconfig.js) +# 蓝光①(xdxl/xdyy)和蓝光④(xdjp)已禁用(无法播放) +FROM_DISPLAY = { + "xdrs": "蓝光②", "xdac": "蓝光③", "xd5": "蓝光⑤", + "bfzym3u8": "极速①", "1080zyk": "极速②", "jsm3u8": "极速③", +} +# 禁用的from值,对应的线路会被过滤掉 +BLOCKED_FROMS = {"xdxl", "xdyy", "xdjp"} + + +class Spider(Spider): + def init(self, extend=""): + global HOST + try: + r = self.fetch(HOST, headers={"User-Agent": UA}, timeout=15000) + if hasattr(r, 'url') and r.url and r.url != HOST.rstrip("/"): + HOST = r.url.rstrip("/") + except: + pass + + def homeContent(self, filter=False): + r = {"class": []} + for k, v in CATEGORIES.items(): + r["class"].append({"type_id": k, "type_name": v}) + return r + + def homeVideoContent(self): + try: + r = self.fetch(HOST, headers={"User-Agent": UA}, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + return {"list": [it for it in self._items(html) if it.get("vod_pic")]} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=""): + pn = 1 + try: + pn = max(int(str(pg)), 1) + except: + pass + cat = str(tid) + if cat not in CATEGORIES: + return {"page": pn, "pagecount": 1, "limit": 36, "total": 0, "list": []} + try: + url = self._build_category_url(cat, pn, extend) + r = self.fetch(url, headers={"User-Agent": UA}, timeout=30000) + html = r.text if hasattr(r, 'text') else str(r) + items = [it for it in self._items(html) if it.get("vod_pic")] + pc = self._pagecount(html, pn) + return {"page": pn, "pagecount": pc, "limit": 36, "total": len(items), "list": items} + except: + return {"page": pn, "pagecount": 1, "limit": 36, "total": 0, "list": []} + + def _build_category_url(self, cat, pn, extend=""): + """构建分类URL + 网站URL实际格式为12段(以-分隔): + /show/{类名}-{地区}-{排序}-{类型}-{语言}-{字母}-----{页码}---{年份}/ + 段位说明(0-indexed): + 0: 类名 (Movies/TV/Anime/Documentaries/Snaps/Shows) + 1: 地区 (大陆/香港/美国/...) + 2: 排序 (time/hits/score) + 3: 类型 (喜剧/爱情/动作/...) + 4: 语言 (国语/英语/粤语/...) + 5: 字母 (A/B/C/.../0-9) + 6-7: 空 + 8: 页码 (1/2/3/...) + 9-10: 空 + 11: 年份 (2026/2025/...) + 示例: /show/Movies-----------/ (无筛选,首页) + 示例: /show/Movies--------1---/ (第1页) 注意首页无筛选时不需要页码 + 示例: /show/Movies--------2---/ (第2页) + 示例: /show/Movies-%E5%A4%A7%E9%99%86----------/ (地区=大陆) + 示例: /show/Movies---%E5%96%9C%E5%89%A7--------/ (类型=喜剧) + 示例: /show/Movies-----------2026/ (年份=2026) + 示例: /show/Movies--time---------/ (按时间排序) + """ + ext = {} + if extend and isinstance(extend, str) and extend.strip(): + try: + ext = json.loads(extend) + except: + pass + + area = ext.get("area") or "" + sort = ext.get("sort") or "" + genre = ext.get("class") or "" + lang = ext.get("lang") or "" + letter = ext.get("letter") or "" + year = ext.get("year") or "" + + # 12段: [类名, 地区, 排序, 类型, 语言, 字母, "", "", 页码, "", "", 年份] + parts = [cat, "", "", "", "", "", "", "", "", "", "", ""] + if area and area != "全部": + parts[1] = quote(area) + if sort: + parts[2] = sort + if genre and genre != "全部": + parts[3] = quote(genre) + if lang and lang != "全部": + parts[4] = quote(lang) + if letter and letter != "全部": + parts[5] = letter + if pn > 1: + parts[8] = str(pn) + if year and year != "全部": + parts[11] = str(year) + + url = "/show/" + "-".join(parts) + "/" + return HOST + url + + def detailContent(self, ids): + if isinstance(ids, list): + vid = ids[0] if ids else "" + else: + vid = str(ids) if ids else "" + if not vid: + return {"list": []} + detail_id = vid + + # 构建详情页URL + if "/" in vid: + detail_url = vid if vid.startswith("http") else urljoin(HOST, vid) + else: + detail_url = f"{HOST}/detail/{vid}/" + + try: + r = self.fetch(detail_url, headers={"User-Agent": UA}, timeout=30000) + h = r.text if hasattr(r, 'text') else str(r) + except: + return {"list": []} + + d = { + "vod_id": detail_id, + "vod_name": "", + "vod_pic": "", + "vod_year": "", + "vod_area": "", + "vod_class": "", + "vod_director": "", + "vod_actor": "", + "vod_content": "", + "vod_remarks": "", + "vod_play_from": "", + "vod_play_url": "", + } + + # === 标题:

名称

=== + tn = re.search(r'class="slide-info-title[^"]*"[^>]*>(.*?)', h, re.S) + if tn: + d["vod_name"] = re.sub(r'<[^>]+>', '', tn.group(1)).strip() + if not d["vod_name"]: + tn = re.search(r'(.*?)', h) + if tn: + d["vod_name"] = tn.group(1).split("-")[0].strip() + + # === 封面: 详情页中 data-src === + p = re.search(r'data-src="(https?://[^"]+)"', h) + if not p: + p = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', h, re.I) + if p: + d["vod_pic"] = self._clean_pic(p.group(1)) + + # === slide-info 区域提取年份/地区/类型/导演/演员/备注/更新时间 === + # 结构: + #
+ # 2025 + # 大陆 + # 动作... + #
+ #
备注 :蓝光
+ #
导演 :巨兴茂/
+ #
演员 :杨旭文/...
+ #
更新 :2026-02-21 18:28:06
+ + # 提取slide-info区域中的标签(年份、地区、类型) + slide_info_tags = re.findall( + r'
\s*' + r'((?:.*?\s*)+)\s*
', + h, re.S + ) + if slide_info_tags: + tag_text = re.sub(r'<[^>]+>', ' ', slide_info_tags[0]) + tag_text = re.sub(r'\s+', ' ', tag_text).strip() + parts = [t.strip() for t in tag_text.split() if t.strip()] + # 第一个通常是年份 + for p_text in parts: + if re.match(r'^\d{4}$', p_text) and not d["vod_year"]: + d["vod_year"] = p_text + # 地区关键词 + elif p_text in ("大陆", "香港", "台湾", "美国", "韩国", "日本", "英国", + "法国", "德国", "泰国", "印度", "加拿大", "其他", + "意大利", "西班牙", "未知"): + if not d["vod_area"]: + d["vod_area"] = p_text + elif not d["vod_area"] and re.match(r'^[\u4e00-\u9fff]{2,3}$', p_text): + d["vod_area"] = p_text + # 剩余的是类型 + type_parts = [] + year_done = False + area_done = False + for p_text in parts: + if re.match(r'^\d{4}$', p_text): + year_done = True + continue + if p_text in ("大陆", "香港", "台湾", "美国", "韩国", "日本", "英国", + "法国", "德国", "泰国", "印度", "加拿大", "其他", + "意大利", "西班牙", "未知"): + area_done = True + continue + if year_done and area_done: + type_parts.append(p_text) + if type_parts: + d["vod_class"] = " ".join(type_parts) + + # 备注: 备注 :蓝光 + rm = re.search(r'备注\s*[::]\s*\s*([^<\s]+)', h) + if rm: + d["vod_remarks"] = rm.group(1).strip() + + # 导演: 导演 :巨兴茂 + dm = re.search(r'导演\s*[::]\s*([\s\S]*?)(?:
)', h) + if dm: + d["vod_director"] = re.sub(r'<[^>]+>', '', dm.group(1)).replace("/", ",").strip().rstrip(",").strip() + + # 演员: 演员 :杨旭文/杨志刚/... + am = re.search(r'演员\s*[::]\s*([\s\S]*?)(?:
)', h) + if am: + d["vod_actor"] = re.sub(r'<[^>]+>', '', am.group(1)).replace("/", ",").strip().rstrip(",").strip() + + # === 简介 === + # 优先从slide-info-content区域提取 + desc_m = re.search(r'class="slide-info-content"[^>]*>([\s\S]*?)', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + if not d["vod_content"]: + # 尝试从影视简介区域提取 + desc_m = re.search(r'影视简介[\s\S]{0,10}?>([\s\S]*?)', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + if not d["vod_content"]: + # 尝试card-text区域(搜索结果页) + desc_m = re.search(r'class="card-text">([\s\S]*?)', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + + # === 播放列表解析 === + try: + pf_list, pu_list = [], [] + + # 1. 从anthology-tab提取线路名(按顺序) + # HTML结构:
......蓝光①40...
+ tab_names = [] + tab_section = re.search( + r'
(.*?)
\s*\s*
(.*?)
\s*', + h, re.S + ) + if tab_section: + for tab_m in re.finditer(r']*class="swiper-slide"[^>]*>([\s\S]*?)', tab_section.group(1)): + tab_text = html_unescape(re.sub(r'<[^>]+>', '', tab_m.group(1)).strip()) + tab_text = tab_text.replace('\xa0', ' ').strip() + if tab_text: + tab_names.append(tab_text) + + # 2. 从anthology-list-box提取各线路的集数链接 + # HTML结构:
...
...
+ # 每个anthology-list-box对应一个线路 + + list_section = re.search( + r'
(.*?)
\s*\s*', + h, re.S + ) + if not list_section: + # 更宽松匹配 + list_section = re.search( + r'class="anthology-list[^"]*"(.*?)$', + h, re.S + ) + + if list_section: + boxes = re.findall( + r'
(.*?)\s*
', + list_section.group(1), re.S + ) + if not boxes: + boxes = re.findall( + r'
(.*?)(?=
]*>(.*?)', + box_html, re.S + ) + if not eps: + continue + + ep_list = [] + for ep_url, ep_name in eps: + ep_name = re.sub(r'<[^>]+>', '', ep_name).strip() + if not ep_name: + ep_name = f"第{len(ep_list) + 1}集" + full_url = urljoin(HOST, ep_url) + ep_list.append(f"{ep_name}${full_url}") + + if ep_list: + # 检查该线路的from值,过滤禁用线路 + skip = False + try: + first_url = urljoin(HOST, eps[0][0]) if eps else "" + rp = self.fetch(first_url, headers={"User-Agent": UA}, timeout=5000) + hp = rp.text if hasattr(rp, 'text') else str(rp) + fm = re.search(r'"from"\s*:\s*"([^"]+)"', hp) + if fm and fm.group(1) in BLOCKED_FROMS: + skip = True + except: + pass + if skip: + continue + # 线路名: 优先使用anthology-tab中的名称 + if idx < len(tab_names): + line_name = tab_names[idx] + else: + line_name = f"线路{idx + 1}" + pf_list.append(line_name) + pu_list.append("#".join(ep_list)) + + # 如果上述方式没找到,备用方案: 直接匹配所有play链接并按线路序号分组 + if not pf_list: + play_links = re.findall( + r'href="(/play/[^"]+-\d+-\d+/)"[^>]*>([\s\S]*?)', + h, re.S + ) + line_episodes = {} + line_froms = {} + for link_url, ep_name in play_links: + ep_name = re.sub(r'<[^>]+>', '', ep_name).strip() + m2 = re.search(r'/play/.+?-(\d+)-(\d+)/', link_url) + if m2: + line_idx = m2.group(1) + if line_idx not in line_episodes: + line_episodes[line_idx] = [] + full_url = urljoin(HOST, link_url) + line_episodes[line_idx].append((ep_name, full_url)) + # 获取from值(只需每条线路检查一次) + if line_idx not in line_froms: + try: + rp = self.fetch(full_url, headers={"User-Agent": UA}, timeout=5000) + hp = rp.text if hasattr(rp, 'text') else str(rp) + pm = re.search(r'"from"\s*:\s*"([^"]+)"', hp) + if pm: + line_froms[line_idx] = pm.group(1) + except: + pass + + for line_idx in sorted(line_episodes.keys(), key=lambda x: int(x)): + eps = line_episodes[line_idx] + from_val = line_froms.get(line_idx, "") + if from_val in BLOCKED_FROMS: + continue + line_name = FROM_DISPLAY.get(from_val, f"线路{line_idx}") + ep_list = [] + for ep_name, ep_url in eps: + if not ep_name: + ep_name = f"第{len(ep_list) + 1}集" + ep_list.append(f"{ep_name}${ep_url}") + if ep_list: + pf_list.append(line_name) + pu_list.append("#".join(ep_list)) + + if pf_list: + d["vod_play_from"] = "$$$".join(pf_list) + d["vod_play_url"] = "$$$".join(pu_list) + except Exception: + pass + + return {"list": [d]} + + def searchContent(self, key, quick=False, pg="1"): + try: + pn = 1 + try: + pn = int(str(pg)) + except: + pass + # 搜索URL: /ss/-------------/?wd=关键词 + url = f"{HOST}/ss/-------------/?wd={quote(key)}" + r = self.fetch(url, headers={"User-Agent": UA}, timeout=30000) + html = r.text if hasattr(r, 'text') else str(r) + items = self._search_items(html) + return {"list": items, "page": pn} + except: + return {"list": []} + + def playerContent(self, flag, id, vipFlags=None): + url = str(id) if id else str(flag) + # 如果已经是m3u8直链,直接返回 + if url.startswith("http") and ".m3u8" in url: + return {"url": url} + # 构建完整URL + if url.startswith("http"): + full_url = url + else: + if not url.startswith("/"): + url = "/" + url + full_url = urljoin(HOST, url) + + try: + r = self.fetch(full_url, headers={"User-Agent": UA}, timeout=30000) + h = r.text if hasattr(r, 'text') else str(r) + except: + return {"url": ""} + + # 尝试提取 var player_aaaa 中的数据 + player_m = re.search(r'player_aaaa\s*=\s*(\{.*?\})\s*', h, re.S) + if player_m: + try: + data = json.loads(player_m.group(1)) + play_url = data.get("url", "") + # 如果url是明文的m3u8链接,直接返回 + if play_url and play_url.startswith("http") and ".m3u8" in play_url: + return {"url": play_url} + # emoji加密的url,构建解析地址返回 + if play_url: + from urllib.parse import quote + parse_url = f"https://play.brovod.com/?url={quote(play_url)}" + # parse=1 告诉APP用WebView加载解析页面嗅探m3u8 + return {"url": parse_url, "parse": 1, "header": {"User-Agent": UA}} + except Exception: + pass + + # 尝试匹配页面中的m3u8直链 + m3u8 = re.search(r'(https?://[^\s"\'<>]+\.m3u8)', h) + if m3u8: + return {"url": m3u8.group(1)} + + # 兜底:返回播放页URL,让APP的WebView去嗅探 + return {"url": full_url, "parse": 1, "header": {"User-Agent": UA}} + + def localProxy(self, param): + pass + + def _clean_pic(self, pic_url): + """清理封面URL: 去掉weserv代理前缀, HTTP升级HTTPS, 过滤失效图床""" + if not pic_url: + return "" + # 去掉weserv.nl代理前缀 + if pic_url.startswith(WESERV_PREFIX): + pic_url = pic_url[len(WESERV_PREFIX):] + try: + pic_url = unquote(pic_url) + except Exception: + pass + # HTTP升级为HTTPS + if pic_url.startswith("http://"): + pic_url = pic_url.replace("http://", "https://", 1) + # 过滤失效图床域名 + host = urlparse(pic_url).hostname or "" + if host in DEAD_IMG_HOSTS: + return "" + return pic_url + + def _items(self, html, cat_filter=""): + """从分类/首页HTML中提取列表项 + HTML结构: + + + 备注 + + """ + items, seen = [], set() + # 匹配 public-list-exp 中的详情链接 + for m in re.finditer( + r'class="public-list-exp"[^>]*href="(/detail/[^"]+)"[^>]*title="([^"]*)"', + html + ): + detail_url = m.group(1) + name = m.group(2).strip() + if not name or len(name) > 100: + continue + # 提取数字ID去重 + vid_m = re.search(r'-(\d+)/?$', detail_url) + vid = vid_m.group(1) if vid_m else detail_url + if vid in seen: + continue + seen.add(vid) + + # 在匹配位置之后查找封面和备注(向前搜索3000字符) + after = html[m.end():m.end() + 3000] + + # 封面: data-src + cover = re.search(r'data-src="(https?://[^"]+)"', after) + if not cover: + cover = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', after, re.I) + pic_url = self._clean_pic(cover.group(1)) if cover else "" + + # 备注: class="public-list-prb" + remark = re.search(r'class="public-list-prb[^"]*"[^>]*>([^<]+)<', after) + if not remark: + remark = re.search(r'class="[^"]*prb[^"]*"[^>]*>([^<]+)<', after) + + items.append({ + "vod_id": detail_url, + "vod_name": name[:50], + "vod_pic": pic_url, + "vod_remarks": remark.group(1).strip() if remark else "", + }) + return items + + def _search_items(self, html): + """从搜索结果HTML中提取列表项 + 搜索结果HTML结构(search-box): + + """ + items, seen = [], set() + # 按 public-list-box search-box 块分割 + boxes = re.split(r'
]*>]*href="[^"]*"[^>]*>(.*?)', box_html, re.S) + if name_m: + name = html_unescape(re.sub(r'<[^>]+>', '', name_m.group(1)).strip()) + else: + name_m = re.search(r'title="([^"]+)"', box_html) + name = name_m.group(1).strip() if name_m else "" + if not name or len(name) > 100: + continue + + # 封面: data-src + cover = re.search(r'data-src="(https?://[^"]+)"', box_html) + if not cover: + cover = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', box_html, re.I) + pic_url = self._clean_pic(cover.group(1)) if cover else "" + + # 备注: public-list-prb + remark = re.search(r'class="public-list-prb[^"]*"[^>]*>([^<]+)<', box_html) + + items.append({ + "vod_id": detail_url, + "vod_name": name[:50], + "vod_pic": pic_url, + "vod_remarks": remark.group(1).strip() if remark else "", + }) + return items + + def _pagecount(self, html, current_page=1): + """从HTML中提取总页数 + 分页结构: ...尾页...
... + 尾页链接: href="/show/Movies--------1643---/" + """ + max_page = current_page + + # 匹配 "尾页" 链接中的页码 + tail_m = re.search(r'尾页[^>]*href="[^"]*?-(\d+)---/"', html) + if tail_m: + try: + max_page = int(tail_m.group(1)) + return max_page + except Exception: + pass + + # 从分页数字链接中推断最大页码 + # URL格式: /show/Movies--------{N}---/ + pages = re.findall(r'/show/\w+-{4,}(\d+)---/', html) + for p in pages: + try: + n = int(p) + if n > max_page: + max_page = n + except Exception: + pass + + # 如果有下一页标记且当前页接近最大值,多给几页 + has_next = re.search(r'>下一页<', html) + if has_next and max_page <= current_page + 5: + max_page = current_page + 5 + + return max_page if max_page >= 1 else 1 diff --git a/FGBLH/py/追光影视.py b/FGBLH/py/追光影视.py new file mode 100644 index 00000000..bafee8ad --- /dev/null +++ b/FGBLH/py/追光影视.py @@ -0,0 +1,440 @@ +# -*- coding: utf-8 -*- +""" +top3.zgtv.online (追光影视) 爬虫 +- MX Pro CMS模板 +- 分类: /vodshow/{catId}---{area}--{letter}----{page}---.html +- 详情: /voddetail/{id}.html +- 播放: /vodplay/{id}-{sid}-{nid}.html -> player_aaaa JS变量 +- 搜索: /vodsearch/{keyword}-------------.html +- 播放链接是视频站原始URL(芒果/爱奇艺等), 需要解析线路 +""" +import sys +import re +import json +from collections import defaultdict +import requests as rq +from urllib.parse import quote + +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +def _(x): return x + +HOST = "https://top3.zgtv.online" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 播放源 -> 解析接口映射 (from playerconfig.js) - 仅供参考, 当前不使用 +_PARSE_MAP = { + "wsym3u8": "https://wsyzy.vip/m3u8/?url=", + "bfzym3u8": "https://free.maccms.xyz/?url=", + "360zy": "https://free.maccms.xyz/?url=", + "mtm3u8": "https://free.maccms.xyz/?url=", + "qq": "https://z01.zgtv.online/player/?url=", + "qiyi": "https://z01.zgtv.online/player/?url=", + "youku": "https://z01.zgtv.online/player/?url=", + "mgtv": "https://z01.zgtv.online/player/?url=", + "bilibili": "https://z01.zgtv.online/player/?url=", + "mjzy": "https://svip.qlplayer.cyou/?url=", +} + +# 备用解析接口 (仅保留供参考) +_BACKUP_PARSERS = [ + ("极速", "https://jx.2s0.cn/player/?url="), + ("super", "https://super.playr.top/?url="), + ("fongmi", "https://json.fongmi.cc/web?url="), + ("Jn1", "https://yparse.jn1.cc/index.php?url="), + ("PlayerJY", "https://jx.playerjy.com/?url="), + ("冰豆", "https://bd.jx.cn/?url="), + ("剖元", "https://www.pouyun.com/?url="), + ("七哥", "https://jx.nnxv.cn/tv.php?url="), + ("夜幕", "https://www.yemu.xyz/?url="), + ("Yparse", "https://jx.yparse.com/index.php?url="), + ("ik9", "https://yparse.ik9.cc/index.php?url="), + ("花旗", "https://www.huaqi.live/?url="), + ("网站z01", "https://z01.zgtv.online/player/?url="), + ("svip2", "https://svip.qlplayer.cyou/?url="), + ("maccms", "https://free.maccms.xyz/?url="), + ("wsyzy", "https://wsyzy.vip/m3u8/?url="), +] + +# from字段 -> 中文显示名 +FROM_NAMES = { + "qq": "腾讯", + "qiyi": "奇艺", + "youku": "优酷", + "mgtv": "芒果", + "bilibili": "B站", + "wsym3u8": "自营线路", + "bfzym3u8": "暴风资源", + "360zy": "无广告", + "mtm3u8": "芒果资源", + "mjzy": "自营蓝光", + "dplayer": "DPlayer", + "videojs": "VideoJS", +} + +# 需要解析的from类型 (视频站链接, 需要通过第三方解析接口) +NEED_PARSE_FROM = {"qq", "qiyi", "youku", "mgtv", "bilibili"} + +# 主分类 +CLASS_MAP = { + "20": "电影", + "37": "连续剧", + "43": "动漫", + "45": "综艺", +} + + +class Spider(Spider): + + def init(self, extend=""): + self._session = rq.Session() + self._session.headers.update({"User-Agent": UA}) + try: + self._session.get(HOST, timeout=10) + except: + pass + + def getName(self): + return "zgtv" + + def isVideoFormat(self, url): + return ".m3u8" in url or ".mp4" in url + + def manualVideoCheck(self): + return False + + def homeContent(self, filter=False): + classes = [] + for tid, name in CLASS_MAP.items(): + classes.append({"type_id": tid, "type_name": name}) + return {"class": classes} + + def homeVideoContent(self): + try: + items = self._fetch_list(f"{HOST}/vodtype/20.html") + return {"list": items} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=None): + try: + pn = max(int(str(pg)), 1) + # /vodshow/{catId}--------{page}---.html + url = f"{HOST}/vodshow/{tid}--------{pn}---.html" + items = self._fetch_list(url) + return {"list": items, "page": pn, "pagecount": pn + 10, "limit": 24, "total": 0} + except: + return {"list": [], "page": pg, "pagecount": 1, "limit": 24, "total": 0} + + def detailContent(self, ids): + try: + vid = str(ids[0]) if ids else "" + if not vid: + return {"list": []} + + url = f"{HOST}/voddetail/{vid}.html" + r = self._get(url, timeout=15000) + html = r.text + + # 标题 + title = self._extract(html, r']*class="page-title"[^>]*>([^<]+)') or "" + if not title: + title = self._extract(html, r']*>([^<]+)') or "" + + # 封面 + cover = self._extract(html, r'data-original="([^"]+\.(?:jpg|png|webp))"') or "" + + if not title: + return {"list": []} + + # 播放列表 - 只匹配剧集链接(module-play-list-link类) + all_links = re.findall( + r'class="module-play-list-link"[^>]+href="(/vodplay/(\d+)-(\d+)-(\d+)\.html)"[^>]*>[\s\S]*?([^<]+)', + html + ) + # Fallback: 宽松匹配 + if not all_links: + all_links = re.findall( + r'href="(/vodplay/(\d+)-(\d+)-(\d+)\.html)"[^>]*>[\s\S]*?([^<]+)', + html + ) + + # 按sid分组 (同一播放源) + by_sid = defaultdict(list) + for match in all_links: + if len(match) == 5: + href, v, sid, nid, name = match + if v == vid: + by_sid[sid].append((int(nid), name.strip(), href)) + + # 播放源标签 + heading = re.search( + r'id="y-playList"[^>]*>([\s\S]*?)
\s*
\s*', html + ) + source_names = [] + if heading: + source_names = re.findall(r'data-dropdown-value="([^"]+)">\s*([^<]+)', heading.group(1)) + + pf_list = [] + pu_list = [] + src_idx = 0 + + for sid in sorted(by_sid.keys()): + eps = sorted(by_sid[sid]) + src_idx += 1 + + # 获取该源的from字段(只请求第一集) + sid_from = self._get_from_source(vid, sid) + + # 跳过需要解析的视频站源 (qq/qiyi/youku/mgtv/bilibili) + if sid_from in NEED_PARSE_FROM: + continue + + # 直链源: 优先用网站的source_names, 否则用from映射名 + if src_idx - 1 < len(source_names): + friendly_name = source_names[src_idx - 1][1] + else: + friendly_name = FROM_NAMES.get(sid_from, f"线路{src_idx}") + + # 直链源 + ep_list = [] + for nid, name, href in eps: + ep_list.append(f"{name}${href}|{sid_from}") + if ep_list: + pf_list.append(friendly_name) + pu_list.append("#".join(ep_list)) + + if not pf_list: + return {"list": []} + + vod = { + "vod_id": vid, + "vod_name": title, + "vod_pic": cover, + "vod_play_from": "$$$".join(pf_list), + "vod_play_url": "$$$".join(pu_list), + } + return {"list": [vod]} + except: + return {"list": []} + + def searchContent(self, key, quick=False, pg=1): + try: + pn = max(int(str(pg)), 1) + url = f"{HOST}/vodsearch/{quote(key)}-------------.html" + items = self._fetch_list(url) + return {"list": items, "page": pn} + except: + return {"list": [], "page": 1} + + def playerContent(self, flag, id, vipFlags=None): + url = str(id) if id else str(flag) + if not url: + return {"url": ""} + if "$" in url: + parts = url.split("$", 1) + url = parts[1] + + # m3u8/mp4直链直接播 + if url.startswith("http") and (".m3u8" in url or ".mp4" in url): + return {"url": url} + + # 播放页路径 /vodplay/{vid}-{sid}-{nid}.html|from + from_src = "" + parts = url.split("|") + if len(parts) == 2: + url = parts[0] + from_src = parts[1] + + if url.startswith("/vodplay/"): + play_data = self._extract_player_data(url) + if play_data: + raw_url = play_data.get("url", "") + + # 如果已经是m3u8/mp4直链, 直接播放 + if raw_url and (".m3u8" in raw_url or ".mp4" in raw_url): + return {"url": raw_url} + + # 如果是视频站链接(qq/youku等), 返回原始URL让壳子解析 + if raw_url and raw_url.startswith("http"): + return {"url": raw_url, "parse": 1, "header": {"User-Agent": UA}} + return {"url": ""} + + return {"url": url} + + def _get(self, url, timeout=20): + r = self._session.get(url, timeout=timeout) + # MX Pro CMS可能返回不同编码 + if r.apparent_encoding: + r.encoding = r.apparent_encoding + return r + + def _extract(self, text, pattern): + m = re.search(pattern, text) + return m.group(1) if m else "" + + def _fetch_list(self, url): + """从HTML抓取影片列表""" + r = self._get(url, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + + items = [] + seen = set() + + # Pattern1: MX Pro - ... + pattern1 = re.compile( + r']+title="([^"]+)"' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for vid, title, cover in pattern1.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern1b: 搜索结果 - data-original在alt前面 + if not items: + pattern1b = re.compile( + r']*>' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"[^>]+alt="([^"]+)"' + ) + for vid, cover, title in pattern1b.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern1c: alt在data-original前面 + if not items: + pattern1c = re.compile( + r']*>' + r'[\s\S]*?' + r']+alt="([^"]+)"[^>]+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for vid, title, cover in pattern1c.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern2: 首页/推荐页 - ... + if not items: + pattern2 = re.compile( + r']+title="([^"]+)"' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for vid, title, cover in pattern2.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern3: 备用 - 任何含title和data-original的a标签 + if not items: + pattern3 = re.compile( + r']+title="([^"]+)"[^>]*>' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for title, cover in pattern3.findall(html): + items.append({ + "vod_id": "", + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + return items + + def _extract_player_url_from_path(self, path): + """从播放页路径提取真实m3u8 URL""" + try: + url = f"{HOST}{path}" + r = self._get(url, timeout=15000) + html = r.text + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html) + if m: + data = json.loads(m.group(1)) + return data.get("url", "") + except: + pass + return "" + + def _extract_player_data(self, path): + """从播放页路径提取完整播放数据(url, from等)""" + try: + url = f"{HOST}{path}" + r = self._get(url, timeout=15000) + html = r.text + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html) + if m: + data = json.loads(m.group(1)) + return data + except: + pass + return None + + def _get_from_source(self, vid, sid): + """获取某播放源的from字段(播放源类型)""" + try: + url = f"{HOST}/vodplay/{vid}-{sid}-1.html" + r = self._get(url, timeout=10000) + html = r.text + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html) + if m: + data = json.loads(m.group(1)) + return data.get("from", "") + except: + pass + return "" + + def _extract_player_url(self, vid, sid, nid): + """从播放页提取player_aaaa中的URL""" + try: + url = f"{HOST}/vodplay/{vid}-{sid}-{nid}.html" + r = self._get(url, timeout=15000) + html = r.text + + # 匹配 player_aaaa={"url":"..."} + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html, re.DOTALL) + if m: + data = json.loads(m.group(1)) + play_url = data.get("url", "") + return play_url + except: + pass + return "" + + def localProxy(self, param): + pass diff --git a/FGBLH/py/黄豆短剧(魔改).py b/FGBLH/py/黄豆短剧(魔改).py new file mode 100644 index 00000000..65e0038a --- /dev/null +++ b/FGBLH/py/黄豆短剧(魔改).py @@ -0,0 +1,446 @@ +# -*- coding: utf-8 -*- +""" +黄豆短剧爬虫 +站点: https://www.hdmgdj.com +""" + +import json +import urllib.parse + +import requests + +try: + from base.spider import Spider as BaseSpider +except ImportError: + class BaseSpider: + pass + + +class Spider(BaseSpider): + """黄豆短剧爬虫""" + + BASE_URL = 'https://www.hdmgdj.com' + API_BASE = 'https://hdmgdj.com/api' + + HEADERS = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Accept': 'application/json, text/plain, */*', + 'Referer': 'https://www.hdmgdj.com/', + 'Origin': 'https://www.hdmgdj.com', + } + + _filter_cache = {} # 分类筛选缓存 + + def __init__(self): + super().__init__() + self.name = "" + self.error_play_url = "https://kjjsaas-sh.oss-cn-shanghai.aliyuncs.com/u/3401405881/20240818-936952-fc31b16575e80a7562cdb1f81a39c6b0.mp4" + self.session = requests.Session() + self.session.headers.update(self.HEADERS) + + # ==================== 标准接口 ==================== + + def init(self, extend="{}"): + """初始化""" + if extend: + try: + self.extend = json.loads(extend) + if 'name' in self.extend: + self.name = self.extend['name'] + if 'base_url' in self.extend: + self.BASE_URL = self.extend['base_url'] + self.API_BASE = self.extend['base_url'] + '/api' + except Exception as e: + print(e) + return None + + def getName(self): + """获取爬虫名称""" + return "黄豆短剧" + + def homeContent(self, filter): + """首页""" + result = { + "class": [], + "filters": {}, + "list": [], + "parse": 0, + "jx": 0, + } + + try: + # 获取分类 + genres_data = self._get('/genres') + if genres_data and isinstance(genres_data, list): + for g in genres_data: + gid = str(g.get('id', '')) + if not gid: + continue + result["class"].append({ + "type_id": gid, + "type_name": g.get('name', ''), + }) + + # 获取首页推荐 + home_data = self._get('/home') + if home_data and isinstance(home_data, dict): + # guess 猜你喜欢 + guess_list = home_data.get('guess', []) + if isinstance(guess_list, list): + for item in guess_list: + result["list"].append(self._parse_vod(item)) + + # feature 精选 + feature_list = home_data.get('feature', []) + if isinstance(feature_list, list): + for item in feature_list: + result["list"].append(self._parse_vod(item)) + + # 如果列表为空,用首页第一页数据 + if not result["list"]: + dramas_data = self._get('/dramas?page=1&size=20') + if dramas_data and isinstance(dramas_data, dict): + for item in dramas_data.get('list', []): + result["list"].append(self._parse_vod(item)) + + except Exception as e: + print(e) + + return result + + def categoryContent(self, tid, pg, filter, extend): + """分类页""" + result = { + "page": pg, + "pagecount": 999, + "limit": 20, + "total": 99999, + "list": [], + "parse": 0, + "jx": 0, + } + + try: + # 分类ID是genre id + data = self._get(f'/dramas?genreId={tid}&page={pg}&size=20') + if data and isinstance(data, dict): + lst = data.get('list', []) + total = data.get('total', 0) + result["total"] = total + result["pagecount"] = (total + 19) // 20 if total else 999 + for item in lst: + result["list"].append(self._parse_vod(item)) + + except Exception as e: + print(e) + + return result + + def detailContent(self, ids): + """详情页""" + result = { + "list": [], + "parse": 0, + "jx": 0, + } + + try: + vid = ids[0] + data = self._get(f'/dramas/{vid}') + + if data and isinstance(data, dict): + episodes = data.get('episodes', []) + + # 组装播放地址 + play_url_parts = [] + for ep in episodes: + ep_title = ep.get('title', f"第{ep.get('ep', 0)}集") + play_url = ep.get('playUrl', '') + if play_url: + play_url_parts.append(f"{ep_title}${play_url}") + + cover = data.get('cover', '') + # 加密海报走本地代理解密 + if cover and ('encryptimages' in cover or '.bng' in cover): + try: + cover = f"{self.getProxyUrl()}&url={urllib.parse.quote(cover)}" + except Exception: + pass + + vod = { + "vod_id": str(data['id']), + "vod_name": data.get('t', ''), + "vod_pic": cover, + "type_name": data.get('sub', ''), + "vod_year": '', + "vod_area": '', + "vod_remarks": f"{data.get('serial', '')}·{data.get('plays', '')}播放", + "vod_actor": '', + "vod_director": '未知', + "vod_content": data.get('summary', '') or data.get('t', ''), + "vod_play_from": '黄豆短剧', + "vod_play_url": '#'.join(play_url_parts), + } + result["list"].append(vod) + + except Exception as e: + print(e) + + return result + + def searchContent(self, key, quick, pg="1"): + """搜索""" + result = { + "page": pg, + "pagecount": 999, + "limit": 20, + "total": 99999, + "list": [], + "parse": 0, + "jx": 0, + } + + try: + data = self._get(f'/search?kw={urllib.parse.quote(key)}&page={pg}&size=20') + if data and isinstance(data, dict): + lst = data.get('list', []) + total = data.get('total', 0) + result["total"] = total + result["pagecount"] = (total + 19) // 20 if total else 0 + for item in lst: + result["list"].append(self._parse_vod(item)) + + except Exception as e: + print(e) + + return result + + def playerContent(self, flag, id, vipFlags): + """播放页 - 直接返回 m3u8 data URI""" + result = { + "parse": 0, + "playUrl": "", + "url": self.error_play_url, + "jx": 0, + "header": "", + } + + if id: + # 直接在 playerContent 里生成解密后的 m3u8,用 data URI 返回 + # 这样播放地址就不是 127.0.0.1 代理了 + m3u8_content = self._build_m3u8_with_key(id) + if m3u8_content: + import base64 + m3u8_b64 = base64.b64encode(m3u8_content.encode('utf-8')).decode('ascii') + result["url"] = "data:application/vnd.apple.mpegurl;base64," + m3u8_b64 + result["parse"] = 0 + + return result + + def _build_m3u8_with_key(self, url): + """构建 m3u8 内容(key 内嵌为 base64 data URI,ts 用原始绝对地址)""" + import hashlib + import re + import base64 + if not url: + return None + + try: + r = self.session.get(url, timeout=15, verify=False) + content = r.text + + # 计算 key + key_bytes = self._get_key_bytes(url) + if key_bytes: + key_b64 = base64.b64encode(key_bytes).decode('ascii') + key_data_uri = "data:text/plain;base64," + key_b64 + content = re.sub( + r'(#EXT-X-KEY:.*?URI=")[^"]*(")', + r'\1' + key_data_uri + r'\2', + content + ) + + # 把相对路径的 ts 改成绝对路径 + base_url = url.rsplit('/', 1)[0] + '/' + lines = content.split('\n') + new_lines = [] + for line in lines: + line = line.strip() + if line and not line.startswith('#'): + if line.startswith('http'): + new_lines.append(line) + else: + new_lines.append(base_url + line) + else: + new_lines.append(line) + content = '\n'.join(new_lines) + return content + except Exception as e: + print(f"_build_m3u8_with_key error: {e}") + return None + + def _get_key_bytes(self, url): + """从 m3u8 URL 计算解密 key""" + import hashlib + import re + m = re.search(r'/hls/([0-9a-f]{64})/', url) + if not m: + return None + video_id = m.group(1) + ver_match = re.search(r'[?&]version=([^&#]+)', url) + version = ver_match.group(1) if ver_match else 'v1' + prefix = "xnaichanping" + key_str = prefix + video_id + version + return hashlib.md5(key_str.encode()).digest() + + def localProxy(self, param): + """本地代理 - 解密海报图片""" + try: + url = param['url'] + r = self.session.get(url, timeout=15, verify=False) + decrypted = self._aes_decrypt_img(r.content, url) + # 确定图片类型 + content_type = "image/jpeg" + if decrypted[:8] == b'\x89PNG\r\n\x1a\n': + content_type = "image/png" + elif decrypted[:6] in (b'GIF87a', b'GIF89a'): + content_type = "image/gif" + elif decrypted[:4] == b'RIFF' and decrypted[8:12] == b'WEBP': + content_type = "image/webp" + return [200, content_type, decrypted] + except Exception as e: + print(f"localProxy error: {e}") + return [500, 'text/html', b''] + + def _aes_decrypt_img(self, encrypted, url): + """AES 解密图片 - 网站自定义 CBC 算法""" + import hashlib + import re + from Crypto.Cipher import AES + + # 提取 imageId (64位哈希) + m = re.search(r'([0-9a-f]{64})', url) + if not m: + return encrypted + image_id = m.group(1) + + # 提取 version + ver_match = re.search(r'[?&]version=([^&#]+)', url) + version = ver_match.group(1) if ver_match else 'v1' + + # 计算解密 key + prefix = "xnaichanping" + key_str = prefix + image_id + version + key_bytes = hashlib.md5(key_str.encode()).digest() + + # 网站自定义 CBC 解密 (mC 函数) + t = len(encrypted) // 16 + if t < 1: + return encrypted + + iv = bytes(16) # IV=0 + + # 取最后一块 XOR 16 + last_block = encrypted[(t - 1) * 16:t * 16] + a = bytes([b ^ 16 for b in last_block]) + + # 加密 a + cipher_enc = AES.new(key_bytes, AES.MODE_CBC, iv) + o = cipher_enc.encrypt(a)[:16] + + # 扩展密文并解密 + extended = encrypted + o + cipher_dec = AES.new(key_bytes, AES.MODE_CBC, iv) + c = cipher_dec.decrypt(extended) + + # 自定义 CBC:每块 XOR 前一块密文 + u = bytearray(len(c)) + u[:16] = c[:16] + for f in range(1, t): + for h in range(16): + u[f * 16 + h] = c[f * 16 + h] ^ encrypted[(f - 1) * 16 + h] + + # 去掉 padding + d = u[-1] + if 1 <= d <= 16: + u = u[:-d] + + return bytes(u) + + # ==================== 内部方法 ==================== + + def _parse_vod(self, item): + """解析视频条目 - 海报用 getProxyUrl 代理解密""" + cover = item.get('cover', '') + # 加密海报走本地代理解密 + if cover and ('encryptimages' in cover or '.bng' in cover): + try: + cover = f"{self.getProxyUrl()}&url={urllib.parse.quote(cover)}" + except Exception: + pass + return { + "vod_id": str(item['id']), + "vod_name": item.get('t', ''), + "vod_pic": cover, + "vod_remarks": f"{item.get('serial', '')}·{item.get('eps', 0)}集", + } + + def _get(self, path): + """发送 GET 请求""" + url = self.API_BASE + path + try: + r = self.session.get(url, timeout=15, verify=False) + resp = r.json() + if resp.get('code') == 0 and resp.get('data') is not None: + return resp['data'] + return None + except Exception as e: + print(e) + return None + + +# 调试用 +if __name__ == '__main__': + import urllib3 + urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) + + s = Spider() + s.init() + + print('=== 首页 ===') + home = s.homeContent(True) + print(f'分类: {len(home["class"])}个') + for c in home['class']: + print(f' {c["type_id"]}: {c["type_name"]}') + print(f'推荐: {len(home["list"])}个') + for v in home['list'][:5]: + print(f' {v["vod_id"]}: {v["vod_name"]} - {v["vod_remarks"]}') + print() + + print('=== 分类1(都市)第1页 ===') + cr = s.categoryContent('1', 1, True, {}) + print(f'总数: {cr["total"]}, 本页: {len(cr["list"])}个') + for v in cr['list'][:5]: + print(f' {v["vod_id"]}: {v["vod_name"]}') + print() + + print('=== 搜索 穿越 ===') + sr = s.searchContent('穿越', False, '1') + print(f'结果: {len(sr["list"])}个, 总数: {sr["total"]}') + for v in sr['list'][:5]: + print(f' {v["vod_id"]}: {v["vod_name"]}') + print() + + if sr['list']: + vid = sr['list'][0]['vod_id'] + print(f'=== 详情 {vid} ===') + dr = s.detailContent([vid]) + if dr['list']: + v = dr['list'][0] + print(f'标题: {v["vod_name"]}') + print(f'分类: {v["type_name"]}') + print(f'备注: {v["vod_remarks"]}') + print(f'播放源: {v["vod_play_from"]}') + play_urls = v["vod_play_url"].split('#') + print(f'集数: {len(play_urls)}集') + print(f'第一集: {play_urls[0][:80]}...') diff --git a/TB18/MG.json b/TB18/MG.json deleted file mode 100644 index e3e8f8ad..00000000 --- a/TB18/MG.json +++ /dev/null @@ -1,613 +0,0 @@ -{ - /*-----------------------JAR包接口&壁纸接口(可替换)-----------------------*/ - "spider": "https://d.kstore.dev/download/12194/自用/MG.jar;md5;ec2cf8ed7cec0efe03a2bda99a5c9e21", - "wallpaper": "http://127.0.0.1:9978/proxy?do=wallpaper", - "danmaku": "http://127.0.0.1:5266/danmu/webhtv?name={name}&episode={episode}", - "warningText": "[💕资源来自网络,纯属学习 测试专用!网友们莫喷💕]", - //数据接口====================================网站=============================================== -"sites": [ -{ - "key": "Douban", - "name": "🎬┣豆瓣┫推荐", - "type": 3, - "api" : "csp_PianDan", - "indexs" : 0 -}, -{ - "key": "js_liuli", - "name": "🎬┣琉璃┫影視", - "type": 3, - "api": "https://d.kstore.dev/download/12194/TS/琉璃.js", - "indexs" : 0 -}, -{ - "name": "🐿┃袋鼠┃APP", - "key": "AppV6Dxs", - "type": 3, - "api": "csp_AppV6Amns", - "ext": "fbe15714a2413f05151fea6864509533510f3a0bb290dd40e3a2c65650bcf144db38b7a8945b776cf8933cb38e93a7d5d36988f5cbd33db73a1432681073eb45b4ce8224060c20ef229653f6b45f4e3a327a40e74bc51f710207b43b74b9bc3f9a2f70608e9c4783ddefc066662fb396be2d3c44dd2df48630d381176fd82e54565eccc47d944de1ff2bad4be0be043beaebd8fdcc0b6df5b1c2c3ec1f7d02b0e3f57e9af680cff3627e68d389379a8d3efdadb70e25135a3c473ddf249277ad12c9fa11002df91d7303627b06ac6bddd67ea082a758c6805628c06dcb22cafb109efad1389006e9c9518c7f85b2ab546315a1005adbf726ffe50d1f679fcf3b40e05f14698f8f5b6d1d829d6871d912056f1eee83cc1df1d9a126422781356e81cf24598a0216206fa59d2645a5812cc73e603190521454e77cc06c3640ea0799b83d60a3a0eaf5e28a7797ab77181d2b91aff50d9e1af419f10b839dc9fc61fb392ce138aaa6126f9eb3be09e94a87b96ac883c72c26d4b81d52de2696f40593b059ddd2279c354dc23d72a1f98150ec0be0dc0a5f6fdb93583b092c768b7fb8dd1bd43b59622810382fd21385606490610364fcd13e908f57a012f26e4cd4d1cee74c000bdc19edf27cb469f085c99cc9b8d9ae0f8b21473240c4a048a7dc8c6e5663258cc9184b1925ad8cb4e377f1cb78f06ee983263f47db396bb64d7118a2bb732d566408125f8ea1cb4158e6b70ac0bcff54ad45274772aaf96ca6183abfa8f0b3606404543823afc801edb734912f6777c30170a8fd0ddc9f69a3dc63885e23014f424e7a9fb8c29572d9d3004ea65a9dcf623f9c5c40abc52dc1c26e22ee9339b1ecdb0a3fe6e015cbeab7b7e091d8e7174fbbebdf82f2e1460ca94a61d3124272394619f9d84ac2b3be2fe70dfb9fa12fa8e153125327cb504b970380bf4bac66bcbf3fc3dd64855698ef82a4b0d88ef29e6bc89fe87a3354c941161e8c04a360402e906d30f095587c46ce26b9b7e1d15f7108cb01ff86c9b5a6c7bdfa9258d92602f04c6a77200754c0d4e8b1b5221e465ee36198100b53eb85eb59558016af86125162a95f24e329f87e371906d7f3fbed0f4994acd9a5b3fc2b206a5fcbc4316152f6fb6ac53b8dcffb65e2fde676f32cc9e24a2a954ade411b5ee92e809a86f8a8ac741aba21ce17a7dfb194a2ad36f5f44240669543e9051dc21c7a887d80f4a5cdfbab54903e7caaa2b7daa9ed00903093e33a95682a8fad5b5361a71a9f14f6917c964870994a6b9bca00732473bd6eed0c9e7d7a068d84cf395ae20639c545a1916786b27e85d5eb3189233da8e3361279a7d76ee6605fade068462ad8387a5be98a90d866807a98506d3efac36846329350701d3d0996f1c35009ac46493a76eccb702fd1762cd10bc50e22f3ea34c8902e2d92f07f9d519768e564c23fda9172b9b359bb8d3b508554bb4bf488f283c30f89a7320a542ba985b2df0ec20401a4ddf120f2cc427604c84d7b9340c323169cfd0a5e17d47991eb1bcc0d031297370df81f4ea242bdd5f4c76caac6f5651ba28683d2623ea5b988d3a5c938f2126bd9b49ee4579227ba7458a61bf7b2f88a0f6879242a1584593ca13d9915ec150110997cf3526d3dbdd70d9b1ef0f9c20ec0b7e394f9ae34d5b3b549805553434e9ad0baff73e8eb2dc58bcc38d2b377bb999dc5f940fed55a97951dfc5cda514c37dcdc88aff46de8617a66cfe1372c55e5bfc7d70634a51f39c665beb4bd95b7de9473da306ad9d3de48a301f01187864ff4682cb6852eb865aabb8bdb7de43daeedba1ebb755aba14d954d4a290fc6ac4e0af70577fe9850b631259eb63dfda69026955a6332fbbf84a63cba9d9253581771a61f2aa108c06e1e449637781d8c830b0e3ac20f10de7088175be90761afd66da37adead8a7241fcb4e2a571885bde71811daa240012cb6effe2fc7380027b3e85cf32c0dd40569775983451603ee7687273eeaad5825d58adec12b9489d5a22e8ba08978984f0274dc53537ecd285e2c12dafec32cd3419dde63a1639794bf70c102b6b53fa1fdff744d757c0d6c05a30a9b561821a8846ce9ef0f26" -}, -{ - "name": "🍬┃糖果┃APP", - "key": "AppV6Tg", - "type": 3, - "api": "csp_AppV6Amns", - "ext": "be125714a2413f05151fea6864509533510fc41478de761606ce64420a9d786d1766ef0968b7cb1b0b380f8d47aaca283235fd63fd19e6ac57a9a71acecc969aedb960608e1d3e2cbaa9365220d19d30711243c747442f77c21fb19b804bde8323048bc73a0ef5d5231c028e694e97122e1bfe3caf778c49dc767622f6c7cfbb12a8feb3154ad53971859304e2d7a50f24558396a1b0f9879420f15416fcd1a44fea822c8e63ddff22f6775663ea26e49ce810481083bfaebae58790814c6c91aedd7cf8d50237a5a22bed49bff6cbe937fc907cf5ce771643461426b40fc79aed7595a6b33e1942d6e93db30da5a10c6e9593dec0ea5cb378cd8a4d90c296b90aa9679a3a791a281abf5fef54ed0c3ba822bfb84d5a48fb97f9ceb65e5be0bd30a4604169f671c543a0d6a4154aee4de66de0baee995b3d9ebd02260d5c4032b8dc191de5e50dc10a5be44405c848e71ef2f7fac85814542927d39a3c5fea40a14e96688c9f4b6f5a62c949e69c66616e7ac0a24b02a746fe6257de3a5325af8f915dd59d3f75ee830ac427fd5c9c136d371beb2ae7233e21ebef3beb0b67d6ae3b8a4b4878da5bd88913145b4dd79754bb0fe8cb19ef8a547355c4795b0bd372296b3ae08227e3a8c8da641b2aad8a545863cbab2da7edf6c48fee21610ace6e05ca511fead0993d23a3a2e720b32fe86da616b34f94874f67bbd3d94b46b207487101453982db864b8aa24c6ff3326999cfbf6328c5ce176c1a01f16802ea4f615016c4a7c8bd401ee726d81f94ad56b9efe12c00e668dfdfc4f820347f71de5b36546b773f6717766c79a01611fe3c5427c6ac4c68f6d8e32b4a5400c4467ba7990c4738b6b021fcc04446eee3b473baa938bece5e1b3b5379eb7d5d079186cfe16ee6fe51202e5b90c18f59569a75944b2e932d68bb8cf9cab437f6176ab85c8b26eedfe59e5b6130b1aab2e49419d7ec0037fd83a5af3d7483bbe8d4e0e8d3033ec3db68a7c78f9100bffee32cb0247e8b647e94838f767f01cfee1a2b9836ac26a389e7340f584fbb0a8600c2ffea100993ae78fb92593ffc41211e0dda196d9d1450a3f22a56af9f4aab61c33dd3744e395aad6527687d0b0df5db85cadb66bc1bafc6bdbde8b640863433192bf091be8e148d421eca44aa1997ce4396965f3724cea8b45b416394ac32ad68cbcc6ad02cfa44bbabda8bad7c5daabe45eac86d0a8d2b203a1924d82fc3ea360436fda1a650e5a7cce58becff50eb2176a4dd90f58887b6fdb15398eefd8968ed2d859d9fd4c0c078522009ce90b59a84903d75a9fbb391deb0f3cab655b9d79e5f43b26323e7086090877472bdf01f580b4a5ead9c0ca008fdd8cba8d50641a6824daf8d0f4c992ca8c1b99723bd1b7a0c69432aca4e892096f1063a06b068127684b82e5a677f272dd45551c01a4c5f0a6e9b6fd26d871f9fd1045b65565a709cb0545882fcc593b885d29f47df475b8b1cf4f95ff61c31252f503924113c52fa72ea655e9245bce5e73427558c5fbf33a933c549dfdca79259fb8eb77d648c5f4813af11ef876e0fd65b16d3989f6d88da1026b0e53e1116e6243727dbd3a264c77d18ff7f194075f9d59f26e983276317f4dce4d2daa69538ac0c034f27f042a5595809f00945117562f16aec2501010d1b7f5521c264c1bddf8a150f5b8fde0aa5630665dc332ab2f3e490b01c7328693f22d98db1ff9599a44930cf14cec95490229c3cbf8eb9e4d083cb77cd50fe806fe469dcf3201822980b222d596e9ceb43375dd00ebc9721e344baf29f84b56000835a364cac6da64abf75f2f1fb890e24549b7b7d28874668b2463d2e790a6dda9a7d3ba00160296fa6f565436df4164bfa739161c8415a0b88c3da5b80f6439fb67e1d6aba0b8c1db798fe967334c574b9919727fb639d6cecb1f2a2a4d4c52fc3c9514efaae17b1d5c14ba1f52847c50025d1ea38cc2da904fb14f0690491ccaf4838e5a28c92a7536d735fa42a283373de3e7781201f9d7f198642f6356fc1d806f5ffa82dc79c114c70fef7e4cfd422c976f51168dd7633a0dadbac3270b9943c9b5254c1dac5688fe0f7213a3f" -}, -{ - "name": "🎊┃紫金┃APP", - "key": "AppV7Zjdr", - "type": 3, - "api": "csp_AppV7Amns", - "ext": "8b9c5714a2413f05151fea6864509533510f64888873c9014549f490a22fcafbe95529819a25c21bad6ad07d44cd28a5a28acb9d207ef4ce35f2e61950bbb27c00c9a268ee66a11cb5943790a877b4b66015010ed7f2a3c6f35b794a29dfaf6762ace01040b2ec17d426cf9cb2a1a9d55450210a11dc1ff0584959270cf53b6d3aea808e786f3c2d18bfb68172f0abb7a06ca65937e9a325415139809f045e71a15a349ab2862e8dfe93f2cb32d1e5b7f9cb2a906741073828339df5bd0f06125ebee88a97fcf33c72e57e9b090d3766b1c513c46a06e5c6ab255725cd2c42938351ec736b5980b1a08bfac2484ffccf82a6f77a34a8a48e15ae0ea7e5b15c49bbf3e59217521e29129733f372511540c52165c8411ace8b94b928a8fc89ae86ebdb1b9d502b438adb692ef9ae36f9f577b4d57654dcdec9957b9f6d14924d329ff79d4fc21ade518d7190673dc7a64cab4d3b91a0f12134dfd8433d6cd80f725a9f4215e2289adb9b8efc835264733c12f76fa846a31b586572f81b07d3d8415c871afefbe611a28207a382af39b34dc5864a2f53daf7067dd4aa59e9a71c09fdb57f5ba249b87f90b01e55190b703d9166ffbba536924065cd8a6fce03a7bc32a4053e4e2d5aa9294229f3ade0e30cce1f1cadcc4d10d92ed58b150a7becdd0c08341868afeaf727640fb755ec84aa97c96c937f68f2463d7555dc1a95ed5fb5f4dd274e7503c85c566bdb0865d3b2213c478c6286b52e69cbe490c105dd5b54c661409f3d24eea0f4b58af17e525a2cdc94b4ab76aac54bc962a82360c3b8a9f53dd958343b25afb37dfb6dcf7dc7d37ffec1623ecceb3053515e273e242cff1d3400c8bd7246d4a91fd7698848038dc111cd6a408f4b7cf5a698bf878dbb322577e03bcfeef7c14e22db29d11d63303cc07eb677aaacda3f9ed4df232917bd5ba99192a4a917d5d11b0d226ef4ed621a84dfc2524f501bc7437c4e95af25c10ed40ec8bdd41ab6728fdf71e844825b8e74aa0ec33d778701d92d94cb96383f2cb8538285afd7fb0d0c0d1f4b6e5f4696710b8fb3fb4d9cb808e53e21216c18417378cc5d40e0a22c309a4845d5abb8cdb2da48e3e3ecefdd4226ec076756762d4eb51bd46f2db84d420e008287f0982928f185cbf76cc817936e8c43a746f392fbea550dd6330f96b9ca8a15f5eca20221a8e6f6fa475e28b6b0051c65edaa5ad44e0a944f439508cc07220eae95f36d60a884d2d58aaea5276075774b89ce0f2a6043137da669c5d35cba99be6fc740c1942280dfc36b8d4c7cac4f3fd545006b3bc4bc320e16002b59e0b94a592454991739e7832a88f76f01888b77d445e75fddcf5b758e0416eb037fb1e997bc4ddbfde6777376602af63ab66881227f434cd4f040975aee8d126c246e14c19d66c7b64e63d1422452314a67df4e29788b1adcb200d71a56d63b5b77c8ff152d7c3ea96e290a3b6aadaebb9c6aea679ad93ae3734f180a3624e54361ae64845b39e69907626b1465ad50ff1c5dfe079bb72782770e1620b0340d355b421002e382c9fd852af284f3fa467c0bdb4e6918e7608299bb6ced4a3fe688ca1516b839d36993aaae3a3fc857519cc2aa19314180c3a5fea7c99b85d1bb2ac6b383a8da097c499aadba856c4b1a66cb4aa0a4910e74b87e2f4122d7909927660657e0d7df54a7638860dc142e5e3dccabdba1c8b9e5a85c0a608ee6b4775a5a03b5341150e318f136d2e38f40d96f3496f5fd10272ff9dc1bb8ff9f71c51c81dc08bb603cc09649a3019aec63bddbe1d04de9728da38a7a719913ab0b0a2d244695b21faf9875fb4ea8adda58d1acdead943ab83b50b6bcc9a87d92ef9e477fe944e0c180eb7bbc7173f61ad1cbb7a571616cba5d9406a87f22cebcf3f5a26ca78b31a7a3b7433228739495de6a094fd56d77f81532e2133261c5c3a7d5663cc95ea3393ba06096d435f411890c65ce222176f9b3688157347b673865472c8473b2cc56f1ee1bb0d7d720a71a1486d8451f33f7f33d392cd16f4dcc4f813c4624d170c7be56e7ed50af2d0a2e20600bfd3ad5cbb7a5b0bc6962cedb46096fbeb709e217b70d2f7c89d6c24e870c9fe2a9dc01dd778deffe1fa09e26a4554e3951adb4c201d9d67f67b1ccccb9d0cc381f050a7d0569f8f6bf52a2693b8e2724d0655e8668809c4724d422e73d38c1bfe7f33c4280fb69a428dab2e88abc4a3828dbab42aeb8bb8d3413b8ba625d2556142514fd1231e215141de329a51db57590e576c83e60e8c4d3f5a7391539c3816d62ae90963bb91beb8b180c36aea3562471dcb68a91dce2d09f6ba2235f7e4e340991cb6f964c002ac298659c79f915eceacd345ada76932ad4802d74ddec9babf2e46ae2a5102958b654f5b21d4ff7b68b09cc0759e7ac975df9324db45ae8e713d125020bdff208c0f08a2f46acd49da6144cf96e8b6861e9cd2cd5eb319362e99dce9602f6dd3dc218161e0c6dc63493929c095a265505a58c16305d7dee8956f2af7cce4f21567f6dd0274f77db1515c09de70e0591ec1c71a0e3473d8ca23b0dbe3c95ec93c3054a0c21d0a4cc128fcb74bdb6381c5bd08a54a647df1af55b6b7965ef73c53de214d3ee589791b40158869e2cd1dfb36195356dde2f960c9efb4a87824e6ab1d132b8356e1177871dc33b1c7c7316e263960b11b35a910d1ea9caf667e29ba5d3baea33af6a7c719b138c0143245bfa3aff901679e1db43a7bcd278ee684bd5062852b7175677689a30119029491a5d7077c0f6c6cc7776aba551e065db784fb5bc00d67bd3084bf68e9cc06b281e05c5884e8f8977b388d8db439e7c5bc2c3a73cd8af002c845215fa3af57770de0cf0a651c7a3985af5bb3f18211696f94937ce836f8ea42d701be2bf0d04c41ffd5bb1d99783ce591546f2698423800fad6a0d344262d8d09c206470b56fb3431d28771f1159074f75e1e7" -}, -{ - "name": "🦆┃燕姿┃APP", - "key": "AppV7Xyz", - "type": 3, - "api": "csp_AppV7Amns", - "ext": "3b135714a2413f05151fea6864509533510f64888873c9014549547c4b35cb1adeee20e0d57ba3751a77a841c05ab07707cfd47e5ce58300c4d76a63b36769f5ca194cdd372e6467113c881d77e743db16d7abe2ebd99e610047bc3a54b53b4f7bede852c8e349a047965ceded596e9c7cdb344a399e97218a77fdb81e930db1d2f09f2d4c2be1d6c471c80699fc615e8ec072aba54e4f79e9c56aeaa4461e497c6c381b699686935bb9dddf708e9d482bfc16e5aeae6235094fb4d8fa6741ca8318b2520013ff54ab8cb1203d078e4b8dc78abd041b48191ec6893734015fd08d2f4ebc76193de569e55f74a5397c5ea4213b9345bd027ac2986c63ce65636cd7f91f9d30d1ad37b9b4d6de92d545a1545924904a7a4c1b06d181b5dda5f13df8fd20d812125da97f030cf56d088e4ba52a074f50fabccfade34dc57f3c03ca2dc2231bca5a56800380d95dfa36f2cd731c7bd3c7cb97c8d3a027226b7841694066964d2811f51dcdcf51b44eec61fe79b3f778f338ac061b89290367806e3639e3e632c4422005eef3805f21c7c6eb2252646bdbd5fd668956526496a4927b626c15bd74d80fc0a58dd2647e719a0a8d21fd207b69b1c775523b08c70a3dee2aea405c877b5ce2c0674d0dc01bd6aa625299dd224946523dadeff0bc11857a9a979b6565b8ecf701e0bfa96ee984b04078080dd7d53f7fa0229f754d9b78ed48273863a6607bedc04fe48a7228d2a8a0c2c9fd06ba62744aa72542e8880e2b786bd00427d86827d1f075139a5d2e7f9067a5fa6e6972b419c9e2b81cda8ea188b786a63537414ace9159cdf2c0274643b0f560fcd0d528e802d16f2e9f16ea92569126ecc10dc9231c44d689bce4568300845e9232b3e68fc00985f86feaa70f1e72babc1f3e87848639935222bbcd3bdd34b30e5ae6e4f73c984fd222e3be4801099d57cc07289229665a18cc26c7d39e348ae8d7f667c2b6ce0d6fbe79557304c9a7dba512a888504bacb5e04438b2abb8433788567ac2781ec50192cfb98fb17f1b8a9a8d934316c9df70669b3087e9308809e3217ca885ab59d204875856bf085522982e2759df9c7d5e02d7d0b4427be9ce8c5dbb70ea28c979d9588b46a1c784590df6b43f6366d8ca751bb93f9cf2404fbc7c569bd7e1d82060a2e6e71a1254e0de46eae0edb7aaec777b67e745da3f743e6c5f9be0c70daac6cf191c1f32fa36f6b15653b63dfbb5609373a9ac77cae2d8d6407b8b8436f5109f63401fb292efe6310e2cdd3c7884dcc0ebf8633ff3c4348be910097ba9868ad7d8ccf17f7826b831cee3f4ff29a477dbaad861df953f6149b95927d52f95423fb74721ad712310bd9785d0138e2a91e6d61e0fda5737c71d910d0fdb2c1474c3bad1aea8d1ef29da7377fbb5eaeed74760a8631dad8cd515db4bc7437d4eba346cba5cca67c41d76c48590b3609dfd6cdd15b7af01b9392c95b5a287b7c5e4d47bf77ab80922b9f2d77b3d4eeed6b3cccb7e73276a35fe3a55430fb23a8ee5135175c29a8d72ee12eb878fdbfe8e7211e3bf23887e76ded8cbd6373d6114dc6e97c397dbc771f07324d7106bd3cf351962ea4d7c6b742954529b571b040f1c482b80b8c64e678e86528d664deceee1835225f210a6c5320bd30b0f12fc3e1f60d68d57d3e4dddb0e4b568011767cef2405cb2067e80c434798cc99ec33ab87784f95d88466cd7c4460119639591aeb0c6371921104d9134d1b86c064ea7eb99a7bc0f0c08698a269451420afe30b2c12620a96ab233ba78140250a5264948297a22f4cd2a67e513f6cd050e922c474513a498fb4f8ac190839688b0bc617145de9925789edb59ea8d78327853e845aee4f4e17a318b9176d5fdb7876a3bdaebca6278a1a378345dfb1e9ccb30061d09d933d9a518cc0544fb9daf6e7b24674412881d6433e24783aef0899542c9eb5c1b0c126284b1184ff67dfb7e7d001742176f993c326cb8370ac0959e220e4dfde1125faf8e384b499c98c5751c45a1b05f00f488c0d80e26bad47f93ed36f0f4ea3980923711bbc221de4848b17a7a61370398b03b6bcdf306e707b66bad4d4e70e46561b67f3ce787700687ec9023daa3fc0f87e59e2463f275796391b5f8be8cd5e9892d400032f3f8a97212a13f411d20e272dc1f9489e51b5546b93b238dcf3bf4b5ce7e54e4e3bca9884eea448e604b5343700c7e26b45ee2b46ccf23799e9da41bc81c8ade10c44685865d42accc3838fa4d1efe912e2a9f55776bd39d410ece3efa3eb160db8f83cfd70ede9f1bd680569e33c980e8963fde04a8094bff579dd326ab4f6d9e2b2fad0b4e68fee3c7a657558826463a747b8d8e54ead6c9cdebf30b28b134d7982a0072653937674f8db9ace504b98712f835c0dda1df82d90673f73fed71ffab1235f7fd6a45ce932c439018184c5b0e774259892ba6486735ada3f7e3f2a3589a18f9520380af129620fdd4fd5cfb3a97467f24d6b94126cb3b58207c5b724696b98d53f7e4af1e93b107484637b67efcdd49ed0f4413ae88571e863e1bb455e882ca83e1ea6a4d1d1f9e9be87a714b6cc7498303099b3a1adced48933519035f287764efbbc679acfe28958aaead545a0759127663be5b72ac8ff0d837fb7faa425c960577df76f6b18dd929cedf58088323be69f4659eea38dff065a08f1376c9e5708356a2dbafaa8515f938d1bcca9d8c7e79ea0d45476fdda42bd4230c117597dad47270cd6385636ac01f516abcad464839b669e3dd58b75352689c32e337d692c204b683a8dc4467f59f8bfca49044e3f504dd9dc1f3c13b7f89ae9f05a94b466b8742e372cb7b27e4f17eaa2d21114216611805598514cb74e487187e1876e6ef7db039b369786d8652126f02c8644c15bd8eb201b6230bdf61c335f11d93574184052f55d74809a5ba0dec468c6e4cb1bb56caa25e7381dc257f30f69b8590a3d02938d99c164068c10eadf100354a17eb1ee1796b3a185140e591bd181ae6438e9dd0ee69fe733767befaa53ca" -}, -{ - "name": "🎏┃华容┃APP", - "key": "AppV7Xhr", - "type": 3, - "api": "csp_AppV7Amns", - "ext": "97975714a2413f05151fea6864509533510f6448b0786a559e217e817f97d8199e9741f4158be7dfe4b298df32c7c552cb2608c70a3d74f572531b1d88c2b79e4e9ef9ab94ba4aabc9ef3e313d0996d373d99436537b6a14c5b8ce4c52dc56f24789d9246defca59f674ed08596cd4291296f41a9a15cfe21187017c745f276dd9581457a7be4a6311ded29e32cf7e3c725ca381c2124df2efe32ea2635c2c4bc0396e23c465fa39129633b2ae52179a73fa16caa82f06330126964f52f5bc5e1ea1051f2971616f59c0124edffa4cf9393d688b0805906aa2c2c3ccf747ff9d8d79565f68b92a248f06892404645a610f0f997595132fd7f4c4a95170de97e1127ef6b2f42879858650adff2e431080db9fb282ca0cd00223b3664307746b9703e6decc322eb9152d9614acf4799150eda3cd579132894125b4e79a20b87acf03c9dbe7b5de66466b1d0c1741241b23b0ab16c407da21b79197a3320c9b17f029cc3c827a30c2b9079f12cd927273bda043212a145a05fbd29fa3b2a4913576b89d42f635962f8c9e8894e5b4381bfbffcc11e4ec7933ffb73b38a37e602b4f145e73212e30fabfe1f55f9490521899dc605d0d30ffdc02c538d88fc2cc9040f3d2fbc91052bf95a4d2fb0380b30360c9e9766814bc64b60fb1e77a6b61038a6c6a7040e17efaffc2e8a08aea1ff66e09f70d47f94f28bdb85bd20c2ab7fb9d0d3fd6e616caa8f7016148ed6eb1e36f47f05584a198beaf6f4bb4bae6c94f53bd33b54ae0e009e1297b06351ee3237e8afef81bd7325210db974b7e74b713d2ce8fc464e3c7c79abe358d2723c647bb78bdb042f291b76eaae447bcc4ac5bf32fcd7a9910131e6bd7c87a93a720bbd7f304f963731eb0ec2ff5a652087b2c95ad720d7daec7c7f84118824621c63ffd97c9cb9f0aa403b91887cb4fe8cf98c14366103e6b5976861d1e444dd9554dbb221263cac06c2c1dc3f7850e6a98903800a787ae7cefca19d6b057ee530437a6d95e1aefe6ef9cc9cbf968298ea37b6ff915918e5814dd93ddc914543f09b674cfa757467261d142bb4259a5a58eae7d60aae68b522b1a4baef3f5031984287f486f1fcdcaed7994b5625dc57ab9b47ce014f28ada7d5a8b0320cdffadb7e3d6f36425b0cd6dcc6042665d9dd822496be254b328237023866423af0982145542831edabf0ebbdc83ecfbf0f323a1716edab1655a62101fc39b8fbb61fedf7e9ffd2c482f9e4b28ff7815fb3b7520016a39ed9f0f62373b256fc5797b646e52c293a0ad5b4fba1c1b46cf0a1fcfad9cfbea15b3f0762e9a3a98d1d2ff142b5cbb5f1722f2459c40d28dd78b14701885c0a3fd081dc75a7544b512ebe3354ed62a6752d9573207cf41fd3cfed1df2289199e57733a2b575fe94ab8de5fe2960518ae4da4a30504103a288d2ce9a6507d8f6e632fc350abf13ebad33190b096ffcf14375fed66e87cffb8a2ad1bd20c3ecd45fe3d8317cda81d9490b328c47ad4d21536df379cf5239cd541f3d36176a166579e64202bf8f4f6a0ecf8a9ee9865c69b0904ef63e0399dac7b00ded72a8260f7f3079c72d6cf53d3e69584c9b549995b11e17816835532c7f6e5b3a5d0f59daeb3bff3be3f827912df323b1eac22dc16f755249b6dec65c2972909af46c5b8aa3b10f6b526bb5dceafa0e8b340b5d6d589aae06b49cea377aba87b2dc1b5870420d8e7f3bf2c871b57a1003989e60eec0bba0370a023fd780bfbf345d2cd1abd9a9a6dae49b835b8b4fe621b0af7748760e5daa298f6e4af5b92368eab92f86a64900ec044b716b5cc7cf1cd7bb2acd7e6af7b765e703c62aa70016f991811be75cd250e6d7c2611ff968607aaeb4f4416b9c1dff5e36548874b07ef28ac858db7bfab9ca3b2b6df87d19ee9412f855b0e24b0e5f864563df387ec9ca5db7bd716d206474d5823b98b3258e0f884724937bf435803efef7035bdfbdc44dfb9f2dcfb29e60015e042a075d2a97691881ed9e9a1455ca8af326c78c919fd3c97e3b52501a9616146cce956ad34ee8a913c9d52ac4bfcbaef124659a7e388762cfa3d569c5752f51735833bbbee76d1a82092c9178f959eeb512e40bc26d7adff48dffaa93b713b476bbd9827bcc19fb3c147416edc3372b4ba039955898d588aed53a9100a944dcbfd6d2e7bbd9fbeb5f70c84dcdf33b12e28b4edb1e386b7c4eddb7c6343f25302f6f295263dc8c6c8164edcf526280c91959e04c439818d2139a41d1501523f27379cb2882a5157c03692b1a3a50fb04f64cb047c8ec3ede5272c8e8dcf25a3fc423948d7f17e7c5de6c449c77f9f1efbb0049b97a2505db1a9dba4481fedb4dc9e09a209572af26ed23e460e79e09b0984365f87f9e713f267420cdd18ac140b0cd91c8f4a0b10e097e01524d4b2217c42c9648ae126414a746cce4d80248378b0d47b521f2b9b89dde015e66d81fda5315211073240ff9f0e7ed8cd310ee07651764d35c534591ba5c46cb3cd2c4adbf63cbed9c00a66d4a53df010e25e6044cca8e0602388be754f375de5e430cbc18e395e7f6e3e89c005e09fccba079d19f6f4bf6b03aa0c9b5e6ee6627b072554033095eee608e8fde79201dc925db69e049e3a19e29ebed5d5de4a8f7f87ff6d80f72fa83c61e9657742936c240e162a6f859c870fcc1f43661cfcf9e616cf0383c0438622d82e35a13c5056ff21b9dda4d57410c1fa4ce3209a8c77f559261c9ec1a33a16daf0fc2aad88e796e4f1dc3ec3f3a3d5ba8a7349575ba4cb4d6e5f4526356aec6984c02b652f83d1db6e67cf690e4ff9bfea1743f09734f5d6557061b21084195bbe477ce43f23058b700cd6ce1a6f4684df9313d0897dfd71ea05c3b888b54392354e3eebdd05a7be4c01d6ee98a793551743c508646af4aee22661d2616a0d7aacc46de4e5529f7b7945cb084a2f04cc063aaf6bc69e00a503125d09322894244991ed75d7066a998e73f1eab86163867d3da86dddf5a57834543c3376" -}, -{ - "name": "🦁┃狮子┃APP", - "key": "AppV7Xsz", - "type": 3, - "api": "csp_AppV7Amns", - "ext": "931c5714a2413f05151fea6864509533510f6449cf8bc0a05849f4d35953df98eeb5c544c2ddeffc0a79e7a8eb3f1ce2799c2a2936200bf1f21d11448fe499fb09214dbd33ae7465d1548bfd937bb2d5d5bfb8000f3d0ad34e8ee3d137e1b19ea5b2bda8953ca41d96700897302e1c622935df3f93eb01533c2d38400f75c939c1cedaa59b659a7917f718ecf659adf7c1e9951f51e3836307c7828d99c4d6b9e9fc45de92c3c5783a7c2d1140ace1b7fa431ccd202914fa8f3f7de13b3f6bcf84d61cbd33ef32a6812627d3a91e18dbfbcd524fb951c7437c75e07a9645467002691837c584686c19e1b809dd81a76aa94c9c5f509c5e72c1181c27eca679359a717798d94315e20819c3eb350816c21438a580c014aded30b2ce0dd22ac27ada594cbd148cb0f4ea75c6c627e723e49989124f328035b7ce7e20e3443ac3bab11bd2c6b189cf9365853c9baa361178c97e6073dd526d5ddbb690aec3457e6c7883e4f2dee3eb96c5098c8412ec04827bf36e31946a89c3b6439b0ccaabf2a50721f673ce85e7dd03586cd2524bb5d53c15fbd9c1acdaea59c961a044da6ead270a34c2ef808f99049894844f0bb6f53f75bde3acb1213c00f1c5f65bbb9440bd5b5254c7dcf016d428e6e0eb5ece33a9ebb0e0a358ae652094a99979f972b447416bf8be29644655b675b075476f3d8981f4fbc673a9c7cd7755a6c384f53c01fe5dddcf1b7eedca0e4c97699125fc4010d9753b47a7ccd39eaad900139f22e1b2e5aad66419a3c74e4a2d65669452cb00e3b8862cd4e08f97eb13874285e109a1c724e5a7d353ac8d3cb98c53afad60f44d8fa9f10378e8627d69940ce8bf48817b9910121ee1e8756fb1b63f9a73a72ae86133004d93f53a3861b45067ec32e5c56465ee92b8ca6950ec7666d9cb15b87630739fbecf2eadf0b17bd6955a364b8bedd57c7a6d3ac293c6c993866868f5cfd7012489c9f342f3320b129f79d891bb8b97c2cfb90a1769f156a48bb0f763c09ec82b349c76cacc550f9d305793584a54c77dba35779cfac0d19cc82b8fa9d8d7caebbc0f3ef2effb46bcfa1dbedabc71c55db53ef78c327afe56579abcc3d15e9252c7684a081cfd65362314338b840c2a5175ee0a97711a426a3afd373c2011598415baf89de4b87c171df06f4b8bec7511b734195801d44703174003f8164c709edd02bc05314a48d4d7605fc0bbf05b2be2f641b8fea316e223be21dd69b3e5efdc81b33c804c487ba2fe5121f8aad6c50d492efd562d849ca70c4cf1d77c3349e764c998aa19d025ab671780812ee62679e7621b0a4f584cb616cbde8a7f5cbbfa2521f4cf2dabe9d4ba728d8406aa4177c51b3ff0aab4feac2f27dab498a00f86a2cfa10f070f1c1ecb6e6b908e6faf0aa968fc6070853b3aa53995c97d56baa20c4530f7f8de4c2674e1724d776b11b57cb87365fab5c025fea0add856af31b2ac724bb132abb1b3e6aadb84a67beed298a36c6e3965c9e82f0a6fe0f8438455f291d9c23673788c237fcd7a63e30100428d494a0d9f7adcf1d780098f489df6ee8fd78b553260039083f9a86ba666bb3c10fff86bbb5f58c11698ec39ddf439d5ac22b59878d6b07e7a0dcaa53eef6c652f5a024e208e283dc801db3fdeaba4ad997795371535c9e30fa7dd654d6d1a2878c59306b8d7c788fc02e36275606c56a34452c6b76eaae590198ce73d5635cedeeffec14805b534a7a2f7005a3d6c55bdc2437d16b2f3e60769381bea415d235ad871d289bcc9895e10fba3cc93df816d0d5c3fad09fe3ea21df2ca32181ec3bbb23f9948c5e58c93e810cf0a24f3461df06fa904fcf4dc063e76da2fb7f13c90efd865fd7f7226efcbca36ddeb62f4ba3bdecf02f3316ca054ea2bac09de1b76fa4056e257ee4d84892a4b518235dc6e93ab5169796296ac5a94ae9b43176a323a4ef55362513812903193a877aaad52a76f008744a006b53af893b921c45a5598da650583a74e8c277d1339e779d52deb67ca19dd6e0cd6af47740df3a99f8610eb4357ecea174cae38139992dde3114613642ba1b9e51166757aad8185b8ca0e6c904f6d9ad1560e5c2415e2fb67024f13dc1ad4d7dace0fea4bea419f19ec4ceae1f47e5c41435119ef0c430d3b8a61ff9b011c268e8d5689672daecab1c726a540d8333ba43f1a825c90b40138eafd2688229e30b4879824f8f5fe34e4c8c7f302d95ccea862f22e53527b725e1e4f942cd5e479352203e953c99b889bbc2daeaa0e839dd35ef1adc1fff83a1f64cb045cc9856f35c1f1a71028f653624f9eb42a46434fbb015962ea64a0d9e258296040475b5eebb0fc285921d8881b4c7f504ed95bb84d2e32bf0259c3ddc10b717780d9e339ed2f6a0f77cbdc30ce5eb97891674e4e3ba88354ecabd7b52481c1c3168fabd2f9ca510b3e2e6f1c01f60d6cd1e918307c52b695f68bd598294889ecfbe590154814a7e8a95e6d624cf6f498ffedffcc688ac78b5d52bbfce79780e11267187ed7a55c8aed9544172a38234fcdb0e0c32a0aef2e69bed1ffe7d218badada43658c6e2d585487a45140b5326e716646b08cfce2b5c221c61db85ab1452474a0fb9eccee20a07559c070f9f3554cd89d9e4bc40639699b55457001271f67ad49e6a46fe507bff49e8833f84c24383ccec6e8a064ff639353a76e2aabd014d084f7e4081ef24a62f869c7bbf3d77c04a24be360727e117928349e4e079bb59b45c7faaa5389270eb34b41d507abe3edf7a1cc932085ff66c618b152e94e1ce8a85c4b7c656f8131966566cfa916566246cfa92013db1757bc6176a7255dc72180d7c026ea407e4ced8cd83c9b349828c77de74130058c7fc79dcb8cc043e6e3e6b9e407e8c8e6fddfa6dd05be3d5bda123526a70479535144051b86e00d444ad3578bcc708d6de65f16a808e1b5884f8527e49a9f6c49b0d7bf6fa1e2682315f3" -}, -{ - "name" : "🐖┃肥猪┃APP", - "key" : "AppV7Fz", - "type" : 3, - "api" : "csp_AppV7Amns", - "ext" : "c8075714a2413f05151fea6864509533510f048c89b582eb125174a0c364626eb83a35618bdd10c1840663d38fb441b8ff25a078bc11c7a8f17ad5b723195ef16fe405746bf6b3defd8d16ac2d07b6f6580ea4826889761c1eae278162b6dc791fff46bcd3a42acfdd470315a17f741eeb834b4fb9f184e3baa5e698b9a771341f86037ec6fa0b8b5d3e2f12172d3ba5779bcbd40a9a9842e5e20efe45b59459bcf5269b50355cebeab216ced19dff4c8d1e3968be184fd3d5609eae3e6089d84bc7b97286027f67ef0d2b19002a7cfd7ad3094cb22ee9efd9dfcb7554f5b204f3bb205ac783272c59d9fa88672e92c91cf1f022930ce8acf1850b86c110e19cc99041d491a3330e53981a954fac8b71af43e3c200c360968d571b1ccbec1a91abfc9e6723b8b2fe1f77057423a7c152c35e5a6573a8dca051273febfe8fd8c12383a37226d8b0f4e8f09e3fbb99becc533165486f60cba1ba247842491d5dd10bc79cad14ecd4da86d0b4e9b416cda8bae4f52156c5165025cda138161b660c1e488c6fa4e733e7c78731b21564faf5008f69b326c9bde49778fd9a7a41de21b7d3dcecdd2461279726060d22d13da499673fa92de73bdf2ed4a1388e457f6d22ecbdcb3a37c1ba4196f98990bba4d4dd8713a6cbb3e3cc2c6bd8ef1dd3cd59fcb2df6dc6ba92b88ac79b047f47ef178c279d353d06d0280aaf30e23b5940ea278c24ba357999db8431273844a2016267d42b89c88d163a68d5cb17d14d46529d9922580294a5be697d66b074c8601c0e4e5c8789d3d5c0b5bcd0ec5cbd9482a41a725aa8fed498de8fdc5d7a275322afcd0bed8bd35ff237edcead3ce0d3984ee00734ed61e1f4c0e67798324ff694db01e3bac4cc00706132b77a4bddd801db4e527caec727640f80737a5e0d9793bc2d7e8a42a3996b21ac66a2e4c9ae4613e63f597fd72f4c4c7866ba14e2431a24325d25fb79eaaf19d1e1d01f7b4269fafb683aa4485580639c7a59975c3827a98c73906708f0e4efdd6a43e72e6ccd8b51d3ecfe281aa189c9544ca2808593fd239dff232009197c4ab4babed12df78fef1e9cf048de39f7cdd47ebeffec77113906eec44cf0e48fc123a81b73ab5f36cb3cc3b14837cd469e9264dc935f5b63bcd01799f2e3045bcf6442d1c2adc74380b9b3566ddcb9ea4c833e044a90d0f5cc4a47cfadc4e172f285f45ebc348ceed3d98ff83fa4bf00200f6f9eddbd37f26d6632db73a96f4a48d22caea73b0d130813de12b372c65dd99164dcf309038b3fc0b44cdb7656be826ce11dbcfae7e7d4419cfaa9b4bee1ca93e6d5dddd8bb44c5c2f3c6129d54dcfcab74412bfdd8c4e8ced562d5a6b3a7d07b68b530d7b67f257e683f5d943de791684609e6e6fa2bc6602498b10e0c9e8b8ebaede9dd13b7a4606b17053b238f5e5dafa9035b62fab1e7705aa1248abcb94c6ea418fab3a1a61f283925d11e5fd284b67f8fcdf2324b7a8fca8f4d6e5aabf49382f14ba58af771078e11b9156d18b4f4a73c1203f6517dc5294ed34b8d5b1aa0e02f82ff26405441923d120470e1cc7fa8fd881658bc44481e3cb53f30a4a0fc0dae84d8686933e3d805f936d759fb565d8f6069b976158e9a9b4f4675d0c958f55775dc6861186e7b0619e53e8ae19d283ada551c01b3743d22724b1722f79fbd9687c4a767d8b20a01999ecfcc80f0afcf23fb953290148f249eb882f907ea476f3b6c2461b8fa997fd4d6673d53473f8b264f7dc42dc526a2286065e4c37db9285b0df20e7fae6516dfd726a571f2f7fe23cc2f75d9dd202754e16987cfbf476b2cc55906b6994ed221da4a20f07693982589c3735c2386f4200b3cdda1f6010d512e344b981812a4a501c4714c6972bac852d0b8aa575ef2a650f178325266e5abb78d29394c12bd420678d240b4ad4d79b0540b108c8e22c6df84da38a300f30040b3940e4c69497a0d757525f08f592001b212fa31b4db83f311a843e062dfc552d5bc45612fc1c53dde127c260161f12d3cf3c1908b31182dd260d97913bda9156b66fa9465db0241f075b87bfee12d0258dfa4a410ac09ac6e9582e462c32e42132c8fd259ef8add97f96f663ff92c24bff1d1d00b4f37e5260476c436c336611b79634dcf343d80e51b498826c2a0f7da5471e6a109d3b18e038f974e6a1168d7ffedb3f1f88e8307315e6fdc916b05188023e84c46dc4fe4c2ab396fb825183a06d91ca9375f41168986d2ed90e511506b3d2ef7f79af2885733185f24bc37c5b0466739f9eeb5268d897411468ce2e03934f01321b0b7425cfa76b075742c3017be9e416273622cc6a8bfa30294f362d6e5b02d447829def580f01e4031a6455e37853bcc183ed9dcc4fc8a55c8bc3cee272e5611c0b0cb99edf905a7046a36c006d75e101f878ca0a3f942d6234d72eb02aa608b63452180995b19e86d0d4e16f4b9ab304fab82335eadd0ba83fe1f5079631b82c853d83d95dba7f1c632a9bd217ef10673481b8e8d93a190829c03075da8f433d45159974d8889ba06c123047279ced1c1add7f20c2814dbffda8558a8551b4294ef60a42cccf53f794dda8d8f70d03c5a81849f23a6c3faabf298a5add323721e6a1726f73dd135758c646fb41b2ae7af7114fbabb3e41ff1df4d2a1528265dc921e0021f26ec8bff7174efcf946bd5a7b62f2e6b0848b385675c27b1ba200352d72dad486c9b5896b49d94a05773f32de96005c3d4c15a7dc061e4cd530b8f27c125f2c79c63c99b101cec9f76ba143507c0cfc9958d2cdf9e87dd82545b289bb0a80bb8148cd86b021bd951f52824012a5a46768ac51fd1fd5b69f8f923d61240f995a4da2008fd2f50ce4d81fe44150c39884ceba6769555b9f6360c3c2edd5061e4a0d5a6253c0b5a22d7375def8cf6c9369c159db0e51f5b2c504a9a193d23d9d5bacb498c0f2424e0206d7358bc9cef7e6d379810fb36764d5ec356edcb9291aaae3136d937232" -}, -{ - "name" : "🦉┃雄鹰┃APP", - "key" : "AppV7Xy", - "type" : 3, - "api" : "csp_AppV7Amns", - "ext" : "e2eb5714a2413f05151fea6864509533510f79b104fb5bdb95f6904ef2318ad86ce4dfe796c4e63fd050695a813534fe77dad1fce40faec6f4c229e3a369420975823bb9d4a2544a16f87f3b85dbe0d23b12b94031672b5f7cacc8b5bda77c549d560b7ea461e1bca00d81dd68c860de33ba77ea23895efb582e98ccffee51b3296277820fd3a6fe3f65e7c0a93f7c07a4cd91d63f66cb2921cb013d0e93f0059e6f35d839b1ebb40078ed89b20115f85ff6d81d97ab99c0536638ab4454df59b59b025dbfc9c870f18d990519c2c5f2df68a619581a30f4b99be2fb23d7efde2642327a6e37ba955c985294082352c19ea83770f754a50046886aa3e388784c9538f688af27a15675e49dc788d4bd0d85becf809feb9c29c737bd3a5474c19ace10533e2e4f1e4b2d238f2544eb641c0cf63710d9b5c308c49e0c2634d655d1f25cb40920ce8d594d79a80be0f90261ea0a2152996d94407b4c5287373623ae0fe61ebfbee98cd97e3a2e797c8967bd789c2cd0876ce90ddc7fbf314c7a0b72a2d3a148895a00e08286d2856f71b1174d960b4d3227e9cd0c073c49e8cf36d5eeddd9cdf15f602e5affe008fae1ebd57bb4f0c2878d9e889619139d4273c3db6c45499d1a53f516745c02d4692ed2aa78db8a759bada10fc4beaed9171ce03ce2f567b81695c7f862dcba2804e20440ac0bc4f54b3cec65a7fce5338b8d36ee68c401f674760348ac6a6edb278ede899c673d2bfcb9bc6fc7d6e23aec4e5fabc8597438a43e04cb26bade3fe437f30e4c51d99687ec1cf3b1dc03dc994b66964c3f10bf9e1c9edb667ad01c384918a19941fbe10642277cc21974628d0a48d12562eef1d504dfd2db4904f5cdfa42f8c268c69c201e10d2addb0c9fff89d75a9cd75957096d42c265a25d8d4ac5655d63f2ad81012453d2b5c40347e728244c94d6d9c7f1a0a9dd7e1aaa03028b681fc4663df06501e5a430ca844ea8d06dcd26ca9c676d37236490aed6be73aeabd5db7ebe6335feba6dcaf9a89ba2e6395673e465b8bd262346535e8106bfdec6ca93068456fa31123b80806b41aa899801bb5acbc7b987903078fd96a70d026d076d3dc656177cec26c779e0f07c7942e8a8b2ff11881d384df6eac05e3a6f13386f7de879f65925165da9b0788e83cf1afd13b192380f80d84438c847b9010dc3948771b26d674b5146b06d618b22ebbdca99e12b6c1775442b9b3911c073f154e50563880a636bfdb8a387f6ddadfc3fd9772d7b2c2e5a29907125f09314ad2d10b66fa96dc93e9fac1afad3c1433fef8799daa595c2e8d5bcd53b3165891e79a80bba0137264bf357e62728b5501d3361c541748d1dbdd7e3320f97915a589a75f48d37dd0a908af6bcc8afc484f646fdfd5efd534c58432b046cf19572913011503bab265e667ec99703a4c3c4f57e3702737806d50720b8adb6800885fd0e66f56d93876c12f251c6a1db7a16bf9d2ca55d9799a25368b114830680fc645ec5a06d6835e83c9f8cd6610111bcf9fd501e3421054ade3378bdde9f68e90a3b30527968be7131dc947ed60ef208dee128cc1cf59384050a4e9f1c55190bce096df3170e38468dc9ceb7ed19b22e24b7f1923ba2b47e7a87dd26303ae4f6c1b0c18671723b47ed25807816861ffabcc7abfbbeeb53749cd9bd2d3070062a1223c9a0178ec04aa74e46c86cc997abfcff28a56722cb9c68c59d4704b6d55c76264f3105c642fa791d26553b8a219816d1ab730f15a99f488025624d77a3a18b7048efcf1d79496696350c5cffa58e9718b4150b3c6678646c4fb9a0409794bfed59f16de96407c50106cfa43a16f4790dd69822a01eb56b2511190a0f38e7236667b477729b937dd7cc1713273399d0baaa5589459fe31328d8c7548e32319388dc1e42cee10ee62ce8635fc7579255109cafbef3f6ff34ce3ebb3ed3aff703f8e06a60b2ccebdc290751912c6c97156a622455bebe471deb47d6d1be8c3293538d27a7e22de9da2b226a386aadafdc3a222397048982c5f2e7d2939e6828b27788c1d1b7439cf8c7ada365e25cb3b1a469e485c6d8a3a9dd04f7f5423f6713fa391543accc33f22720d2214928c0357661ac68819122bb5d0e57a142fabfe9edb82b9e55994b874a7c75573c16da78cf0500d3c72fb9acfdc070263006c25ee3817e3eb34b652b9db60311e643539d5bd60f6c1be0866f8fa6ec9ec751824758ee4d1c8c08c515b279d5021e0f9bb0a6296d5616e1fe5480433ea640d792e5cc36925166fdf81a7be0844124adf073b6f1d37961aca6136ad046a4c82a29729cdee9ae996a8195ca73b2e75ae909fe858dd783a45b0b5860af5421385d24fb35910159c6a2b7fb6f20f42d013038a9a591188c27ebe06b64f72cc6245dc31d811bb7b5629c1587090431573ef44e6694e314f3d23117374e6efa80a58d7291921b99ec217b49e6460570ff5991cc16b2e79581ac14d406a021fa7e11d71275044ececc359d6cf26c881f39837fe1bb65979662c2d2c2edbf6083db05e117f62caaecf8793c87dfc3f45c1146f1e739d78336d6c4f969843099a9bfebd394e60c062fc8b4a536ab2fc8d8242a4e7bcc637a6b565621f9d4130dbffe2bde9d5e032b73fdbb6be91c91b5035b3f2e9fd638f8bdfe73e5a653e861c4f3a8ce1a9048c6a8ce361dbd44533eb32de3fe8f582bba7a982f0472236e90286819c2ba04dab382092cdbaaa4ec92567b600bbd1210bd5b3462463402c97c1a4ab70deb639e7efd0f657d5fe60ee524df15475bddbb70c4e130ad3f7a8f9e69aee933b1e93747916bc9820c6f3daa3bc00e2a5707ea4f1facb1132d6404f5f2b588ca955d59063846e52c21537261b38ef5db85b744f31c4ab713b231ef219c3ad16a2e5cbb80a04d8701a4215ebe4379e2c482f7644127b7533fcfa87511b800361babab75c7feaebbedd6351e845e326876a033ee684bcca55e6d424aac4aa468248e7e7ceac50aaf6c61115a1c91898f9aeb3a7520" -}, -{ - "name" : "🍋┃柠檬┃APP", - "key" : "AppV7Xnm", - "type" : 3, - "api" : "csp_AppV7Amns", - "ext" : "17c35714a2413f05151fea6864509533510f6449cf8bc0a05849f4d35953003381580addaf483d2692280dcd4fabaa34afe27792df556dbd796c3f09ec10ffc784d4c30c01ec2c6ef2b0176ea5416f5ea6edee3ad672713c6932565fe8467d17764cf4d178d9088844164cef2d90657d886165707c468e0266f26daa5cdb16d2e6724f174a6bd9d1245d4397c733fa8d747bc75518dc1df1f88364c94015204e1efea6e87c2e9bb20076a529a6b6211f0670a018afcf9ec98dc1c36e8c4d7ded47a14794580c002ab99431b1cd5bf836c9e66f4a720865fef703728822fe146adf5791064234da72d951a90137c7c6aa3f7c628cead57835692d7ee1db04674c15865cf45395c7983e4304af96925e63b2df935410c25891f65bb2f03c41a5e66724b50a6851d5d3e6f4953c65895ebb7a9572c86aa782aadaf848479263881af4dc84446811ded13d22adcb877c12db769209663b2071f7314b3cc17fdf8fc0e695e1c8174a981b966fe8ab76e7439a1e7620b22d09107ac200f25aa7e79b2019fe08b4f3099892c48f33d2526bf997f36465739ef204311f912a49d20dbd65d9ef9f256b70a39ca4921955b91fd8b357aef8818ab25b19a665fd59a82f420abc55cbcdfadfd032b2b417f6130b581be6a257ae8cabdc0183203fcb5fbbb9271fa6bd13070cd6d03d02c37e9ebba4b43add0a0cf8ce5ed98bdec21431f8d45896f0ddc79224448a03b7bdeb2ea962a4ff4d8474151cc8a110d02b698c4ca67e38cde2902f58b89d26e43df10c452f1f84e9504672c0fde52f753d030f1dc6c206a63d9990a2d4d87cfd008cd0b32cfd9a67e5c2624828dd8e9629e3e346c5e0b1344d57a148bedfc526e52084d3c7d27db5160c18e319599e39def5bcd16d0db695dba773303be7e92daeab0e4df02ea76ae698c00d7096138661c2f7e671169d36ef68cbe5ebd49eaea0a8f6be847229bdd8b5ae8f8088754c549ef8061d697a05c94daa1f008a7e853c5ba1b86a078b68c6345b5c5010c61e1c255352fd7fe13c705a2879b91fd4e95eedac375b19eee43588c98bdf03e3dd6c21d5e499c1ed7b96467f0fa01d13402339658948d97eb5d5943fe7799facdbe2d098039de207ff4815a12699f9e28c9a5fdabd04da1dcf2c0b7229d422ff3c5e47117a0412136055768e62e1fe61bcdefe560ab8ef17d62b922929d422c05671a2c444e51cf6742d634dd3ed96e5cd9ae7eeb7691daecc4caf6ee9db01845699f49d8b18c9e5fc9e65833bbcdefb0ca2203d8fe614cd80d3b66bc938df34edc82c35e0b985eb75af92f97fba35587990bcacc09f52c30824e8ee51c7637f6bbe9bf989eebd08282e3bec7f5aeb20ba5f97b17f725ec3c8aca1a56f12fa9a97634892642b0d9c57e968ab81e5be6adc5c8fe8b749fbe0c47369d48a36b47252f192c10547f2f17aee716b119578f24aaac94fe3695dc607192f14da40b2d976171ef1e619f2e7bc40d4776f9c1b0e993af9540c75a659f90d4cf7506fff124f74a87cd9cea16f0b322025187e2d794323d9298688eb80a6f839542491c8764a74a21c531ec9ae1c2ca1dd9d082b32dc341822b1639dbbc30c0df2b902187e2d7f4ba80786e3515e14df90ba52e8aad4b120e5566d859bc133303d412d5d65b4cdedbc0f280f3e8c6440ff69a45e54564badb5a1ab0fec0499759d156df731cc62c258b2d33aa05429012159e015ad8d520c2070b34eeea5780bf9f163bedac0435c32e05388ecb45d5fe827c3f1ca316df1931bf6ef7995518468a1814bc69e095f47b2d3fa6aa47d01dfdc066af04a428e9074b17788c75146595af0c66dea0e076ff93495e31af24a2176790d74fb36da28c926c69340b97b564487c2eefaa6384c147f950be725b8be6163ec1f1fca3de3c09f1363db748b695fe6a6b1bc6fc9029c56904ce9c0843751d57359f9550d80dc20fc7a9d2c91485b667e021059ff9b4de61e1e266fc130d66fe562841b6d5bcc8650a34401e4a30ee82761f205e41e7d62b632856398b8a84a83645c2a5bfad71da3e2a297d447c3b7affa9d8ad7199b78f729cdfccb7110975a54b737303d71313e1217c3fcacb94170aa4299d7b90e08109ccf5cbfd43a1a090ea11596caf30b00c5e1d55c7a47e7c6ab05d36c56724128d7d6da67a35ff6f75fdf1caf8e7d94d0dbe9afa10e42a74d7caacfcdba31e93ea25ceceb3e978798235ca1a88e52d7ea3addb4da026509dbada51047f06e64ac3005d32643b43266397d6ef3f3d607badf007951f7ef820866ca4424537223f7a9f3dea734ce686459d69127fb399aabfaa3953dbed756732a33bd3b4c958f6139ede030ede153c0055622b8937cbc2d6a74bdd9ea5990e279ea862c0efd3216dcb13fc3995c208da50c02567fe7a1f6bf6bc6fee3eea2e61089a238b4c6f59c0e9fe44aca5cf6562ce2f78830a9acd4337cded587aafc0f04e66d01918cf8ff4a46d18c3aaff494e62c0e770342d5d0931e01c6092514fad0f8e6b2bbcff89d6404095d2971993b1afe56ceca93451b2e3dfe19ba374bdb2b4d7a69161b26141ba84856a72802a0671d442c4502ad5566d553665682df212174b71828401f093322f81129b9118b661a845c00ace4548508440e2fa1e3ce76f58fd537807716dd6fceed1e6d1c8b3b8491a6edfe02016d137b89c2ac3c57bdbd4e9c1f9d10c8c4b7a5300b0dffffc288da07a0e0c368a90b5a8d486251521c075b47a75025b631caa2aaf3c027c65bc0534e807a1c81db29c696a92f139014115985a027a1a56703a9b35dabac7f5280f1a26cc7ff8fb6cbf2da00024fd9947e9835563203916c2d8e4d80bbf2764fe11d743d2e1adb5c6f260ad9b3fba7172f36a09b4d600e1c014b57a7c94841d4a9d61ee2787c5fe362df95c9edc4a8f2a46f8b81ebd4fa300ab4320593ed77111eec22233099136cd36a890864eb0ffc1d1ae565589f2120cc1a56" -}, -{ - "name" : "🐶┃米奇┃APP", - "key" : "AppV7Mtq", - "type" : 3, - "api" : "csp_AppV7Amns", - "ext" : "0bdc5714a2413f05151fea6864509533510f64888873c901454934c8d9638163778263f853aba9164d000aed532c7a1eec0a5c6f7e29eced6faa070647ddb8df85b03f7bebc9c8f27f012130dc52cd2a301b2473bd8fd8290767c0adc603e52458094cbe53749bfa82ee550cc1d4dd8a3e932ba96529a966e28263eb44dcf6de6542495781a21268f9d2b48189fa21668fa06e28d6354a7808e63060f3075d539dd983c479773b6e1298d4a7ae77341e86a18dff451b8e692292e91391cacebb7262f04800545d889ea6b5e1752ffacc96c034aa840be50ee3dd24c0e26f2cafa7b2204187fad47877c5bac9aae14784db6c1d2fde2d74b4197097343540480a1b7fb88bd2fd696c90a8150ed93e51e277d40a6f3bc957b8f97a6020d50447eaa8734fd7170c96909ef13fd169ae02608f475bc4e14fc829e063fc384d9cf026da90a2b0bb0920ae88917b982f6fdcb018af96ff24de7edff4a47023d6cc7697c3f6a72a85ba33a682e9000fd87a139ad38953c4bf977df79001bb7b4e135fd02b8cba4981da6d6d19594cb595b342e0014e2128d48b3677a862bd53507a0babe91d139471d81060d76e70185fabe3f6c167e5a3ab7174ddcbf8a6b8235f9e61d7eede25ae3fbb14ce48a9a0cb9a1f3848d96bf1ccb2a2e5f725f6902180cd62e2738eaf1dabf4d4635c8426030c18634a6fe662b3b1fb478378c0cf976aec1fbefb9e052af7c99b66233010b921fb37524e64ebc47229ddacfdc676ad06fd3e7fab081fa048754eb6726f3b236e5ae161b475f083f219197c6bc094417a22b5aad52381178d0602d508cb85c9bbcc8a9ce74fe40c7d4a31494894ec9e4dc020bfd5a18838d74580dc89b2ca67a9c2b2f9856971bb77eb6d6a932302e83189215f88fa6bac8105c0e56c70baec387a1eab251dae2ce8e26e48e7c774335880b852c8fb6bcbdb903af095f3e2f33e9aab00589c97bff103d8750cfb59b06f0431d991a1738bdbce33d9a7bf0162c79f6928f22df1033c71fe12c802262da0f18484b61fde180c4060b1346732db33d168c7469bd51f5b301ee63c5effc6ac1c91037e30403fb7b1741040831ee2f9c2f2a14b1c6d3e274bf2d7b6479c992d2c15b31b11beb65ee0566d43ab6125c65f7aa78a748ac8d295a059c8a470ed6f0c29badb44be951a98bb2a7a46ed6e061760273ce7da42dcf6ac8fdfc2cc98cb3016756a7678cc5cf8df3ddd1176c6bceaf7b9044464565c864b1c49123e8c03a75e9d59aad13156754673e27d716388667f4a91ab2174e061fed1e1c7ec7ef971cc24ec7d382459564893516b1077f1a1d4d3c04c8767e6f9e559f106a4864aa004bbba00567f31e1765796db9da8410ffb61fcb839d4b5a1ad9aa1cf6f2bc18dc2839802dcaf677c8d443988bfd414765ccc01014479e9dce39801f192419475eeca596a01875a98b9203ae801d8951f034c50796b95346b9635325fbde60e88e1ca395636e381b03fd7ce3ab916aa8ab361d533881fe5bb8f148f62e05df591a1a933b7514252f57cef750f7583f3ab55039671c8a018305cfefb503e13d297b832cbdb6785bc12885ee1152e6388a8943cfcf8dbe2f0a36d4811da57ef4f7eec6724f76ac5c4c811d5e75d2f26e8aa0d4c51e1da085b70b6b8c5c34c3279ece72f8be4306df7eb9d261a0a6f5e65b30c8c88b318f8178dcb56d06943a7f0d1401c495256c7639b5b2c9d94be75669bf019b16f891fe581e2b9a26fc159bb14ca64e49d674db311e041b6be8bef7ed2308f2747a76b81f7649ff966600e9b50eb929161b81c3461470cc13bb9f5b7ea37b04c22eace4c880986d82ceb9c4a7e6d3805b3b2fb2103c29bee588f48cd3f44033988df68811fb1584f34a05dd36d4d364ccc662dd8889b8626a589512a1242cd0039f38db3a22e674cf2f0a330a99f8bd7b9320daab41473bc7e7bded3e5ee022ee8799374737641e8eef05b9495e1674569fb1ccd48cbfd0cec0bc01bd5d01478e8dba198d6e0997f16a6bc91cff8f053537624177de53f23e7888a7c72e4dac7510cf86f4cfbdadfec9342d4756d78e2df4d07f353434c9eda7f9cbd8ad315561ba76b00a5cccd01b11a317fa19e6c232d22ec01174916f8b6abd5b449e3b72b3e4938bf1cb32f153c089064e947bc3d76c04f2c3a259991d97d044cceb1b7e44f2f5d1dae2c02912ac9bad1ada7a9fc20b8be274381864f446cfc174fb86012a118bad1d7ca366c78422a3f8aa12fe2804dc2e43146f5ca5cf7f30077249288b478f6f93a3f883f3de3bb6f624e7e0313be7bf1c931b9536110805a0ec35d0f9c77db95fd07668a2ce3850d7e0f5ea7473c64b113c85c16699bc9b2e3ac3ada4a847fe7fc25c758b438ac71c102bedda47065b75263f2925997a79647fbd96966f22386df2247c9e4daf80f688f4c41d324eb411d4bed6bce872fb0c913e5acb8219bd31df9b1c2036474fe7274192637226ef9f4d45de1b54938ef240484c62c6bb477337ebffba6705332a1469410ab71c4ba0cc83b5c4c4ce0f7abedf8e36dd1e1b07bd7eb9b2a0309dd38f7a7bac04c40ac5260af4bea6ba33e34060bf90e4d585d061ae6c2abfbde6d84e02a659524ab9ea83d3865ed49020cb5f4d9dfd45cf950cf6b5f265fbfde250b29fa721596fa495728b9152398328ea8d51dd88a5f1222cba397d82c68ed1165968d0eb3f3b3687c4f56e0f52063e98a106bbdf0ba2d1ece41034ebad3599337ae7083193f8b021f2b38829bfd96fce22f8a5f028f88ab84a2f09daa53e9e9b42717090a352db954a1a7b4bd6b3ea70b01ece4cf7574c6b8ad57d023c0c1c4b5465ce73fb93e165702354409b74bebeccffe2327d02047a74c1bce64c17f99b645f3b23d7b2618def989e99866bcde48f8581121289c6db4467bd50b5f28fff1be72cdbcf3939aad7f986f90c47130f9aea1eb30a8ec30d12869d5a1f0dd8295a009c99c8f991b9e9bc6a8c0265be584e8a2c2d3de413d4c5bfb1d3400e908072a226450fe3cf1510a4e3fad4380b4893167bb36c8a87613f8b262f5dada43df810e06a94ba220" -}, -{ - "name" : "🎢┃篱墙┃APP", - "key" : "AppV7Llq", - "type" : 3, - "api" : "csp_AppV7Amns", - "ext" : "55035714a2413f05151fea6864509533510fc41478de7616064e34cb984b3dd50508d4850f8c0500d64fe9697c462d7c90a08f15f156c7a1d176bdb3bb463e6d80d064c2512b04a421fc3ef8cb9465bce042c1fe2cffd9aad1399ed6d7aa32aee9dc83c7d13a642438e576f0cb729148ce29a0bba6b104b35170ff79f406a825ff534b579fa411821b3ea7c2e9f9c4f2a2052244bd4d27922dedb0b05c7d8a1bf77d361a226ed9badfefd87e3ce90cba7afb4f6d1d7dd480b6e2e7f21dbbbc45f352296166efccb3e8aa7898aa777b46cba677495204e62ee1c54a87019a98fbd116a90961185583fb9531f2b517b0f47a145d73339adf21e77c589d621705109c7736c1f16942e8487945978f75faf7401dbb596f21341c9c3ed85571f892401320ef2b8c05158adbc91a77fd60f4ee1af9ed611da3c1a89a003921ceecf785a5b23f1b8144788524244daff436f996ddff76d129de38de4e701ddd027424153ce446bc9ee50b28d8668765bdc15fba5898ace08d8b1610bddbca170992f884e65a347b8b5dbe7ed8504ceed3ba04a15f787e516ffeda81d5195a67369978ae8f56b3b23db0d192a3d2f120c3b52b47e34a3bb24c3b9220a784c1f61b33c35a9696b931a3a8b4febfabb62a83933fc7f5042332bdf17bd58d177ae3feaf7c15fd3cd68cfa81050a9488daa793b4e96d6f93eb6314436d5f46f005a6c3a439555b69d0e7d65cb6defe748fe54de384d235f42f89a8d900382833177cd40d08b1e9b3ffa9f65ed87bd1678d9f29893e476d7a68333b688c6b8a41bbd379f71b29b75d6ab9b427240dd64884265dade955667a6869d6ccbecff605fbf9db6544b0d14ecaed34161d6b7782d104dfbcaa95bb033951b71650fa182f200228ff922299d6f9718442fd9fbcf2b708000cf8cf9bbfd6365dfada692813390349db8fc363ea604202129d9125db7298309085d2fb2dc6f685aa6434084f342ad3adb2e6ef3375989abdeaf7479e5a55a29ea6d4fb6225d07f4107307fcb21807f170510db378f0cc21d7e2d701c8486e93f5b230f196188cacbb7445b70f5b384ea3acfa3fca612294f57488dc914d7ef7efc8efea54dad0cfb7c3fca195abf1db3537019c67bdb5aacb43c5040e1029ffb4cb97fb5ef03d72bf447a3c30907ef49fe670189a4aad38230645940048e921cd0128d89b25a72e802584550f1f29eca9658fe9b62fbb6a6ebd71dbf5e155f0b2ec5133785dde0985e5be49c0cdd597dacbfc92e4e7f066b5c83e5cad4fc6e2ffa4dcee14f8fdf6d6b7f88e0a792ffaf3c153dea5e7fe666e11e8d4f6a11b7793ca7810704a4c532f3e5f01afa796b61a3a44f203722830255c09b2948af7470b2560450232ad6552fdc4cc709660b13bda5e93595ee7556df3239bc7d79c6b2e90f66ba6e2bd60a307ec9a1c5f6439535f6274a8cafb666390c6eddf162ddd43dbd2113dbdd2ac7dd61e91ddc0d307ec22298cf225a21792426cff1150e9f9568bf02f9aea0aed1954a1c8e42bd441286021b879b0d48335b494e014b0d404595524def768868a77b15fbba2849afafbcc703280e77a3a7b3fc02366f13f7a001a002702770f5ef5cd34bf105c6377884221967353845ebebd53da25f2f268e1e5bac637d5357a4c3ca8dbe886f6c1e807ae252339ad09a506a7a5b0c35242e1ba3dfffee39567ccaa9f8fbe8d3d94dc0627a0589ed3477f9dddc496ad349a50983db7f1ea504028508dec02963b3e6b9e591d0816feea133eea1b2d75ea061d911eb0379c9808abec76c8d2b2396c2b5067523d7ac74b0cbd9de6725daa9d73dfdd7a6ad60f3afc42aeac56483804227767fe2ff514aebccd183c7b9c1e917cf11adadf0d868e1fb676114134647bb59715760155ce8806d0d4ed9dc9fc973db4ba4a3d7369b15ed073dad6d89c024212e01e7bf4960515fc31e41e9a3f3967d1d4eb7b5785d1cee85ed9c84ee247e424ade993a81b100156052b938da4a64597a5230454cd00a48b379757f09073b6476394aab0bc99a0e812364657223f081d034d28937fdef3c35e1ba0e5dca8555b271224d3546cb68e59f2f8624bb211b5b8cbfd8b4e3f6e3e4b8856bab43b51ab36f8343dcd17a7c4ff66b4e2de6b60340443105ecc6aa84ea90d82440f1b0b93dc018127ee6a053e8e81503f6ed1978bda2ecb602507ce925a7a56f4b8ae573ec88d89ccc6f976dc4a4927393917b72a481c60bcec08c3e3d8a61fdb99da39b998459d4ac7dd12fefc02e8e7d3e691ab9bf0c44e563a17916e3647de15b93f73c38cb42f41e950d2938bc7e934f623365c760e7e04d833f3f47267f4947557df5e7927b58c2a292186c1cca67e476b2b6a103a3a023a7e38c74942c6bd6e2b9fd31e25fd711b3d1935db918b5aba1691f04f83809af56af471b4e9a975935c9816baba6d237d7a6fdffedf8c2f196a514e5c2d15e32a0a12e68ec6e4b4fdd38f70fbe46fe5ef37385c3a81d55df923ffd77d4d3d6a158e68ef5bd6e691634e11e7e634fff9d646184037745ecee973fe5b7c40945797f349ecdd7816e0cfc5cab3142312005d4ed5d8d102358c17c9268c8e0d5367b47a7ee7a35ff71b3a8bb7de11c529c3ad08fb88268e8c94825ba953ddbb4e38613c7c0cbfe26a23b61093342400a9ff9a953e2c2500bb56bc806811d6fc0361d63a96fa005fbf9c5cc10e832e58546a166014a76bac02483dc48e3baadb843f98ebfc54d862b8b3a39ec7ffabd6679cdfb6ae4dff075b8d4743184155061b04e3c0cb3384b1406afb1192962acbeb133966f87a3aae0e02ea96c5ca68df4fac42b543a8080698920202135a07bb8b2d3856fcf9e310dd7c95b568235daaa6196f5199b16ef08ff660027ac8a4fd404c79c6ec4c4260f75831d36bc1a4f42cc4addb827a8657708c74ce67ce095e2f2bd49bebdaa35c55e1a8567062ebb76eac4cdb8a5ef85ab9177577feda7fa05" -}, -{ - "key": "FengYe", - "name": "🍁┃枫叶┃APP", - "type": 3, - "api": "csp_CupFox", - "ext": "ASrqK2y8hBjF6nWBT4VA6nl6pMHBuUkTFU8G1oArN4pFIRBIK3Koep4Mpa+rHr3EEKPvWTsPKevEKAGNJkBG3jYkvcbsm4uMR4SEGFXEVUK5k5GC1r3GrXXjDgc1ezNOEnVyK6ZdKI+xk/a/S3HSnknsxpSteN1SyaZ76LlkHDg8oTcmvsm6VWIJmoLG+EXXFO47gkwl6Z2cGWF6122DYXd9rqv5d1nPkPmMRFOjZmeIQwGet75HMuUQH2SD6tMhrHwqOVYxsZhaEJyp6C5P7lQgMd2fNfTUjdB8IXkeVnT+wuAKOiT09go+UHAmjghG58OMf/v/2ou2/Ojv5RTxZkUiiLZ5tUfJMSW87nNKi1Ak4w3wJ2h0OBR83irMrQjD68TCU0pG+ecPOjclNg7OFlbYxsLd0PPUBDQOAxFhq9+IpEgRp04Fi5Eb9B2exKN8CXuEoyf6ISv5l7FkIamTpm0=" -}, -{ - "key": "huaisang", - "name": "🎄┃怀桑┃APP", - "type": 3, - "api": "csp_AppQi", - "ext": "AdYEovlEKsDy77+R58YGahWCxrDZyBxExcQNC2NSeH0n1b5mu6tvh8b4Eh0RCpoPF6eivKdrR1Hsb8X4sSVBS8zF6jkwLW+wze9yh+hSY5iimm4gM9mAtmt0obTi+6Iox/Jp4GCsN4MQyFebMK162SKnILklpXc1UMiJv9gnPOe5aOPUxCftL+x7/UGhBdFYWIegpiHvKeavUtCUkhxtDyC8KqVVPPW0StI5GdmUA3WBbnnrNiKqNc5GBmrffd6pDN+Cf9IIjzNNvos/5KXJmBbe/baAzTLkoafeIoDhO451" -}, -{ - "key": "悯善", - "name": "☀️┃悯善┃APP", - "type": 3, - "api": "csp_App88", - "ext": "AY/LmvuAAyhXffcGv5StyHm1MkGdY4inQLRC3KICnxUJBpq0d5dLhvE0+MW8XruH+M/Q/Ruqd6NayN9rihHGuotzXSTrDHgoZ2/dm2JlJ7GYOYfBorPhMPjuOhTNMg9w/J6oP4DXluvDpXNj9uOKq7g/Cx7vrKF6utOSaE1gUgDQwT251mOGTzGsd3ZrtEeepgI6hOdB2gJ4hHRumNhlbVtWDdpnVMYvhCIuH2HUqJFZWM5T+gEZTMLfeUEJt7ScfaQp90qNZID1YNo/tQOaFLGN12o4CkPtCNoYs+emjhVVqIjJzgfplCPIEyjRADqhur0c48FwCiJyp/XGZFmsMJaPKqvOkO+0H5YMKsR+EMmXCr6n0n1VnwGGpYl3maiq1SB78yDnh16291IjwXdERP1csTe41Vg3ppIixtk6q1etAikUle+6fjSFGvAvDYNr2Q==" -}, -{ - "key": "长泽", - "name": "🧨┃长泽┃APP", - "type": 3, - "api": "csp_App88", - "ext": "Aa+WBBIIxghmbVYkWqlC4wrZvlocl4rSZS9+QyJDF6RgWFfYSb+nEM6WkMHPVbQFva551Srt16FqFroyjNssEXemH+xC5pCMj/ewgFuLEIbY2mXCVJ1bJxWRJAggNgH1f3mjwrBxlZA0kGgfAd0os29Mdi3RNJilSo5VMkPpcQPMeF8/PTbZHNymotiTwtICNcA5Q0WXsqe/wJ3HoLU4gBYQs1lBmYdxtAuvsnte3SbumQEFlaQnygFscx6EGrwKMFZLVcmu9egAXxygsf5PmyzN/xvOr+b+HslccoKqDbHNU/C6yWFwaHBawww0ckXRtoJ8fFbV7Xv4NiRcEf6ePm/cd06xYiZmjRts11gE0r8f7D0vx/TgigmU3v8nrgNYDokUGl/jDdza3o7BXyQumCWRD45wYbmKJ1LKb0ybRvNt" -}, -{ - "key" : "清沅", - "name" : "🎩┃清沅┃APP", - "api" : "csp_AppNox", - "type" : 3, - "ext" : "ASjKEhQKe/DZHt0fbLID47aB3aYcWUG5aIPwrmTCgGinaSykux5CZpbz57zl1moRZGFkoEXqk7decpKNU6W/p/6OTfj3JWvZtr89yPZSxNyjJm1Il5upXQT68sXR/0WG392H71MN7Q8NC8xkSOuwAq7EfX2cuHMsiqFeCCugzAiINUiEqvboCFdXiI97C6kqqqiaQIS9d+R1r7krr5vQXWtky7XJNsiK5ACjppyTh68cbONYIcgLp5Kg5woh/wj9xmNT6mFGqF2D3j2RUaLoWYf+K1+ltBiuzZ7THWKwrnpBBig8XUAG3lXNXiFhPILyYWfr+1j/UoInhNITzJJ+SSRc88KmOk5kpch+idGzVMzHIq/bLpRRxE0iV8Qdtc2atKF9QUqPXJLrwv21Dl+nxgPEGOZ+71L+gABeQdvXO7xvyzUnd+rOidPJr1mBsfu9ySbcqHkhL5EIEQpGHwRhG/yN3Y5xj0BU+SdSxnDo+CwMC+g+WCts34c2u8h2tz7G5vuTw8QvDF23kF/BZeD2QaoCBAd3SDG9ObAichfuO1nDa938+Ul+iekNOEPtPFr6k5o+px/JJkE7MKYhekE/2JfmIkbkBHdnewJYckdM37/9EKsnAozbDyFKhfKR06Es52KtuAhGyh1B8uyfsj33qFpreAqGam8kjEHdYA0i832o0BtTU2gS3mf3NoijVH/XNmlJRuNXo9yYxdjuip4Eq4iqIgajM16MGAIJ0rumYhxJ5uJUFDlf55b9iS+DvJ8wotnBvfdINpAaeXPPlVc/1JDp1rIOw0qg2XIRAafLL7kzXnW8djs2dPSQU1+j9LIrfQ6u3k4lqUs9gRMW1JhwC/4iqimnwg0KsVValaplt+fxFHhwCCkS45uLf8BaY+UZtp5ZDffbi3Q0EDAK8F210Bzd5l8W8MokURUSj374Z7y2hAROBAAgZ8qWRrFOmBC+I+LUCm7sV4h7Mwdpe8sDAtxBhxOpBAYyV8eACQsDbnQsBvizlafy16ptRrArViG0uB1VSPqvi8gqcFD1zMl+uRo=" -}, -{ - "key" : "景仪", - "name" : "🎉┃景仪┃APP", - "type" : 3, - "api" : "csp_App88", - "ext" : "AScEBDU8ZGTviWgGR4VE0GGkVwxm9FRojDfGdLd7Uq6yQW7ma68i5+t2StAnXVayevGqI3Kb0rJi2eqa1R3PW9cxHiFDbXAhtGajyY69GUpDZQ615h6l9jBlh/RMkOo3RfAvtXJdZasUTDhxflfJPCn0T5P68L/XHUV9ylgYmABoOSghqLVoMUNWDS5E2PAMVkm39vpIJOyKNEIhVd3EQmPxDSjSoDE56akhNdBPWsT+tZVbLO8rEccdRYGvxYsXmVjhxaXhmzQEoEme5LF/0+x+M2A880NZ5akhrKIl5ZjfREZCgQ6FClx7+L8f8fb2VNiLtFu5538MrSRozjub6WRKe1m5OOdgdOTsAXJXw5QG5IQ/Y/i9VBZTZUjqP+0TpP4h92QjLynjJAFzwSr3bAOOIvEJW2LsK+hocK72wpyVG93vl42XQpU5s95dAVJOOOnbawZUsOq8a0ctuSsSdWQ=" -}, -{ - "key": "zhiqiu", - "name": "🌪┃听风┃APP", - "type": 3, - "api": "csp_zhiqiu", - "ext": "http://www.小不点.com/api//2026/zhiqiu.php" -}, -{ - "key" : "首映", - "name" : "🎟┃首映┃APP", - "type" : 3, - "api" : "csp_AppQi", - "ext" : { - "site" : "https://yun-1316442804.cos.ap-guangzhou.myqcloud.com/602.txt", - "dataKey" : "FTgP4Gq8zPiqbt7M", - "dataIv" : "FTgP4Gq8zPiqbt7M", - "init" : "initV120", - "ua" : "okhttp/3.10.0"} -}, -{ - "key": "csp_梨果视频", - "name": "🍐┃梨果┃ APP", - "type": 3, - "api": "csp_AppGet", - "ext": { - "site": "http://apps.liguapp.com/getapi.txt", - "dataKey": "A9f3Zx7Qk2Lm8P1N", - "dataIv": "A9f3Zx7Qk2Lm8P1N"} -}, -{ - "key" : "蓝鹰", - "name" : "🦉┃蓝鹰┃APP", - "type" : 3, - "api" : "csp_AppQi", - "ext" : { - "site" : "https://xinlanyinghb.oss-cn-wuhan-lr.aliyuncs.com/xly.txt", - "dataKey" : "ca94b06ca359d80e", - "dataIv" : "ca94b06ca359d80e", - "init" : "initV120", - "ua" : "okhttp/3.10.0"} -}, -{ - "key" : "王子", - "name" : "🤵🏻┃王子┃APP", - "type" : 3, - "api" : "csp_AppGet", - "ext" : { - "url" : "https://app.95112475.xyz", - "dataKey" : "5a9w6x58dsq6z3a6", - "dataIv" : "5a9w6x58dsq6z3a6"} -}, -{ - "key": "CupFox", - "name": "☕┃影視┃茶杯", - "type": 3, - "api": "csp_CupFox", - "indexs": 0 -}, -{ - "key": "BuBu", - "name": "🧸┃影視┃布布", - "type": 3, - "api": "csp_BuBu", - "indexs": 0 -}, -{ - "key": "Duboku", - "name": "🎯┃影視┃独播", - "type": 3, - "api": "csp_Duboku", - "indexs": 0 -}, -{ - "key": "fishhxq", - "name": "💃┃影視┃韩圈", - "type": 3, - "api": "csp_FishHxq", - "ext": "http://www.小不点.com/api//2026/fishhxq.php" -}, -{ - "key": "Rebo", - "name": "🍓┃影視┃热播", - "type": 3, - "api": "csp_AppRJ", - "ext": {"url": "http://v.rbotv.cn"} -}, -{ - "key": "bili", - "name": "🎨┃影視┃哔哩", - "type": 3, - "api": "csp_Bili", - "indexs": 0 -}, -{ - "key": "Wwys", - "name": "🍙┃影視┃糯米", - "type": 3, - "api": "csp_Wwys", - "ext": "https://vip.wwgz.cn:5200" -}, -{ - "key": "wencai", - "name": "✏️┃影視┃文才", - "type": 3, - "api": "csp_WenCai", - "ext": "https://www.tjrongze.com,https://y2s52n7.com,https://m.hkybqufgh.com,https://m.sizhengxt.com,https://m.9zhoukj.com,https://m.jiabaide.cn" -}, -{ - "key": "Guazi", - "name": "🍉┃影視┃瓜子", - "type": 3, - "api": "csp_Guazi", - "indexs": 0 -}, -{ - "key": "TvDy", - "name": "👼┃影視┃天堂", - "type": 3, - "api": "csp_TvDy", - "indexs": 0 -}, -{ - "key": "SaoHuo", - "name": "🌶️┃影視┃骚火", - "type": 3, - "api": "csp_SaoHuo", - "ext": "https://shdy5.us" -}, -{ - "key": "YunDuo", - "name": "☁️┃影視┃云朵", - "type": 3, - "api": "csp_YunDuo", - "indexs": 0 -}, -{ - "key": "Jianpian", - "name": "🎫┃影視┃荐片", - "type": 3, - "api": "csp_Jianpian", - "indexs": 0 -}, -{ - "key": "Xb6v", - "name": "🎗┃影視┃六维", - "type": 3, - "api": "csp_Xb6v", - "indexs": 0 -}, -{ - "key": "Libvio", - "name": "📺┃影視┃立播", - "type": 3, - "api": "csp_Libvio", - "ext": { - "site": [ - "https://libviofabu.com", - "https://libvio.app", - "https://libfabu.com", - "https://libviogroup.github.io"]} -}, -{ - "key": "Qiwei", - "name": "🌈┃影視┃七味", - "type": 3, - "api": "csp_Qiwei", - "ext": { - "site": [ - "https://www.qwnull.com", - "https://www.qwmkv.com", - "https://www.qwfilm.com", - "https://www.qnmp4.com", - "https://www.qnnull.com", - "https://www.qnhot.com", - "https://www.qncool.com"]} -}, -{ - "name": "🎬┃短劇┃豪堪", - "key": "HHkk", - "type": 3, - "api": "csp_HHkkAmns", - "genre": "shortdrama" -}, -{ - "name": "🎬┃短劇┃盒马", - "key": "Hema", - "type": 3, - "api": "csp_HemaAmns", - "genre": "shortdrama" -}, -{ - "name": "🎬┃短劇┃拜拜", - "key": "Bddj", - "type": 3, - "api": "csp_BddjAmns", - "genre": "shortdrama" -}, -{ - "name": "🎬┃短劇┃围观", - "key": "Wgdj", - "type": 3, - "api": "csp_WgdjAmns", - "genre": "shortdrama" -}, -{ - "name": "🎬┃短劇┃喵喵", - "key": "Qmdj", - "type": 3, - "api": "csp_QmdjAmns", - "genre": "shortdrama" -}, -{ - "name": "🎬┃短劇┃星星", - "key": "Xydj", - "type": 3, - "api": "csp_XydjAmns", - "genre": "shortdrama" -}, -{ - "key": "csp_yunyy", - "name": "🎸┃音乐┃芸芸", - "type": 3, - "api": "https://gh-proxy.com/https://raw.githubusercontent.com/LIUJEI/TB/master/TS/芸音乐.js", - "类型": "音乐" -}, -{ - "key" : "csp_kuwoyy", - "name" : "🪕┃音乐┃酷我", - "type" : 3, - "api" : "https://dogpan.com/f/VO84ig/酷我音乐.py", - "类型": "音乐" -}, -{ - "key": "Buguyy", - "name": "🪕┃音乐┃布谷", - "type": 3, - "api": "csp_Buguyy", - "indexs": 0 -}, -{ - "key": "ChuXin", - "name": "🎸┃音乐┃初心", - "type": 3, - "api": "csp_ChuXin", - "indexs": 0 -}, -{ - "key": "aiting", - "name": "🎸┃音乐┃爱听", - "type": 3, - "api": "csp_AiTingMusic", - "indexs": 0 -}, -{ - "key" : "Music24bit", - "name" : "🪕┃音乐┃无损", - "type" : 3, - "api" : "csp_Music24bit", - "ext" : {"categories" : ["周杰伦","林俊杰","陈奕迅","邓紫棋","薛之谦"]} -}, -{ - "key" : "双星", - "name" : "🥣┃动漫┃双星", - "type" : 3, - "api" : "csp_App88", - "ext" : "AcT3r+Yx4xV/LlB7Os5BUaHRLhSxKWwSAgpq3V+7Eo/lCbgRu4w9WaFSZNmvzIyEv57jMmi3y9UyfY2V3hG6r2ZXOYxjb2VtNGcc31qnT/0V8c5RhLl5yhVOC1di9IjfQ/w+842AXS7IaMxh6737IMQrO04oidEfNkqKs39imu3vmC7Qu0fR1zcCk4JWmurxw4V7qab1Sc/gkANOoml0aHP4VRJJ+vIuIb9yQZNRyOjKUjC0XQmPKJbcexNyZqnRghr5ADZOAN3NMjlQzd914ixCDj5ME+wlkvmbTjL+ECb0EG5LfX/ATTYr8e0EWLfOBzVon/BrbJdZU5m3k4jVSQwEjREWtS1z9bbii6G9ts77nx3P3smsdE9Mu4dEYZaSkekI62B98hP4gLCvw7qw8wZlymehntj/MTc7KupQ9sCKzPMiu8yz4eed4PGdfc6HMg==" -}, -{ - "key" : "XiFan", - "name" : "🥣┃动漫┃稀饭", - "type" : 3, - "api" : "csp_XiFan", - "ext" : { - "SiteUrl" : "https://next.xifanacg.com"} -}, -{ - "key" : "Manbo", - "name" : "🥣┃动漫┃曼波", - "type" : 3, - "api" : "csp_AppGet", - "ext" : "AUzH3yIWvgQkyhQw17uONTsfuN8PupZ/LJdr5C31Y/CWlzSNmarYI5kaJYN5c0p6+Oq0tXuTutQo9MHHytxulL5kmapDuAK5+2NTlpsUgBnr0tOamm69Fwb+jFDQ7VW46qf5EFY+Ea3PHzkpfeObKPM=" -}, -{ - "key" : "Gugu", - "name" : "🥣┃动漫┃咕咕", - "type" : 3, - "api" : "csp_AppGet", - "ext" : "ARKK6LQnl4dB2QciLugEzZ8QD2WdbeK23tPAre1QOEbbL5BfB8cV39JNfSd2+Xhcqr/z+V5To0krLYHUX7NtRtwYBC44/9ayncZMomdbv4ZCBNOUsBEedUQx7SWf1J0pE0BsLG9QlR8tURwRwx/sqT0=" -}, -{ - "key": "TuXiaoBei", - "name": "🥣┃少儿┃小兔", - "type": 3, - "api": "csp_TuXiaoBei", - "indexs": 0 -}, -{ - "key": "BeiLeHu", - "name": "🥣┃少儿┃小虎", - "type": 3, - "api": "csp_BeiLeHu", - "indexs": 0 -}, -{ - "key": "Sir88", - "name": "⚽┃体育┃超全", - "type": 3, - "api": "csp_Sir88", - "indexs": 0 -}, -{ - "key": "QiutongTY", - "name": "⚽┃体育┃球通", - "type": 3, - "api": "csp_QiutongTY", - "indexs": 0 -}, -{ - "key": "GuaziTY", - "name": "⚽┃体育┃瓜子", - "type": 3, - "api": "csp_GuaziTY", - "indexs": 0 -}, -{ - "key": "919TY", - "name": "⚽┃体育┃919", - "type": 3, - "api": "csp_C919TY", - "indexs": 0 -}, -{ - "key": "TingShijie", - "name": "📻┃有声┃听界", - "type": 3, - "api": "csp_TingShijie", - "indexs": 0 -}, -{ - "key": "TingYou", - "name": "📻┃有声┃听友", - "type": 3, - "api": "csp_TingYou", - "indexs": 0 -}, -{ - "key": "TingBook", - "name": "📻┃有声┃六月", - "type": 3, - "api": "csp_TingBook", - "ext": "https://app.365ting.com" -}, -{ - "key": "TingBookJinXia", - "name": "📻┃有声┃堇夏", - "type": 3, - "api": "csp_TingBookJinXia", - "indexs": 0, - "ext": "https://m.ting15.com" -}, -{ - "key": "JSo", - "name": "📁┃搜索┃珈珈", - "type": 3, - "api": "csp_JSo", - "ext": {"site": ["https://j-so.com"]} -}, -{ - "key": "Tiu6", - "name": "📁┃搜索┃Tiu6", - "type": 3, - "api": "csp_Tiu6", - "ext": {"site": ["https://www.tiu6.cn"]} -}, -{ - "key": "FishConfig", - "name": "📁┃设置┃中心", - "type": 3, - "api": "csp_FishConfig", - "indexs": 0 -}, -{ - "key" : "Local", - "name" : "📁┃文件┃浏览", - "type" : 3, - "api" : "csp_Local", - "indexs": 0 -} -], - "lives": [ - { - "name" : "综合直播", - "type" : 0, - "playerType" : 2, - "url" : "https://ghfast.top/https://raw.githubusercontent.com/develop202/migu_video/refs/heads/main/interface.txt", - "ua" : "bingcha/1.1 (mianfeifenxiang) " - }, - { - "name": "superiptv", - "type": 0, - "url": "http://127.0.0.1:5266/iptv.m3u", - "playerType": 2 - } - ], - "parses" : [ - { - "name" : "聚合1", - "type" : 3, - "url" : "Demo" - }, - { - "name" : "聚合0", - "type" : 3, - "url" : "Web" - }, - { - "name" : "ikun", - "type" : 0, - "url" : "https://jx.hls.one/?url=" - }, - { - "name" : "77", - "type" : 0, - "url" : "https://jx.77flv.cc/?url=" - }, - { - "name" : "A6", - "type" : 0, - "url" : "https://pl.a6club.com/player/analysis.php?v=" - }, - { - "name" : "8090", - "type" : 0, - "url" : "https://www.8090g.cn/?url=" - }, - { - "name" : "M3u8TV", - "type" : 0, - "url" : "https://jx.m3u8.tv/jiexi/?url=" - }, - { - "name" : "CK", - "type" : 0, - "url" : "https://www.ckplayer.vip/jiexi/?url=" - }, - { - "name" : "冰豆", - "type" : 0, - "url" : "https://bd.jx.cn/?url=" - }, - { - "name" : "XY", - "type" : 0, - "url" : "https://jx.xymp4.cc/?url=" - }, - { - "name" : "推荐", - "type" : 1, - "url" : "https://zy.qiaoji8.com/gouzi.php?url=94b07e0b2c0e8244&url=" - }, - { - "name" : "臻享", - "type" : 1, - "url" : "https://150.138.78.37:4399/api?key=94b07e0b2c0e8244&url=" - }, - { - "name" : "优选", - "type" : 1, - "url" : "http://1.94.221.189:88/algorithm.php?url=" - } - ], - "ads": ["wan.51img1.com","iqiyi.hbuioo.com","vip.ffzyad.com"]} diff --git a/TB18/MH.jpg b/TB18/MH.jpg index 15d9d898..536c8b22 100644 --- a/TB18/MH.jpg +++ b/TB18/MH.jpg @@ -2,7 +2,7 @@ /*-----------------------JAR包接口&壁纸接口(可替换)-----------------------*/ "warningText":"💕永久完全免费,切勿付费购买💕", - "spider": "./JAR/MX.jar", + "spider": "https://gitee.com/lyun_1_0/tb/raw/master/JAR/MX.jar", "wallpaper": "http://bobohome.ignorelist.com:20247/bing", "logo": "http://127.0.0.1:9978/file/TVBox/logo.png", diff --git a/TB18/YS.jpg b/TB18/YS.jpg index 101bff01..a25dbc7b 100644 --- a/TB18/YS.jpg +++ b/TB18/YS.jpg @@ -20,67 +20,53 @@ "indexs" : 0 }, { - "key": "csp_枫叶4K", - "name": "🍁┃枫叶┃4K", + "key": "csp_Jpys", + "name": "✏️┃影視┃ 爱影", "type": 3, - "jar" : "./JAR/xm.jar", - "api": "csp_FengYe", - "ext": "https://www.vip1949.com/" + "api": "csp_Jpys", + "ext": "https://y2s52n7.com" +}, +{ + "key": "山楂影视", + "name": "🌰┃影視┃山楂", + "type": 3, + "api": "csp_PianKu8" +}, +{ + "key": "飞娱影视", + "name": "🥭┃影視┃飞娱", + "type": 3, + "api": "csp_Feiyu" +}, +{ + "key": "csp_BuBu", + "name": "🥂┃影視┃ 布布", + "type": 3, + "api": "csp_App3Q", + "ext": "https://asd123sx23xdacsx.top" }, { "key": "马猴影视", - "name": "🦓┃马猴┃4K", + "name": "🦓┃影視┃马猴4K", "type": 3, "api": "csp_AppMH", "ext": "https://45.150.167.18:8000" }, { - "key": "csp_huayi", - "name": "🏵┃華誼┃ APP", + "key": "csp_枫叶4K", + "name": "🍁┃影視┃枫叶4K", "type": 3, - "api": "csp_AppDrama", + "api": "csp_XBPQ", "ext": { - "appName": "華誼影視", - "dataKey": "NDBYSZR1DMRRZ05NSUCWEJNIYWLBPT0=", - "dataIv": "OC1A06E197EF10CF3F6058CA7A803B5E", - "pkg": "com.muyue.tool", - "host": "", - "site": "https://vip.123pan.cn/1851089669/oss/az5.txt", - "version": "1.0.0.4", - "publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCp9Ek4wIlQAtwFnuBRlsFiow2tr+4UOciGeNKbY7nL74etUqUb6fvpOSOHhFEfaWlfwUpOB17x3JEL3No19nfjCeVYrYPjlJcgoqUWH/tfIfFAQWvtxBIBlKazkhw8d3ChysWmeWRikKqkBsVRY4oqNPuj4sjm6Zult0U4I4prRQIDAQAB", - "decrypt": "1"} -}, -{ - "key": "csp_pguo", - "name": "🍏┃苹果┃APP", - "type": 3, - "api": "csp_AppDrama", - "ext": { - "appName": "苹果影視", - "dataKey": "S0VNDTJHOFHHCNMRAW5IV2TOS2PBPQ==", - "dataIv": "OC1A06E197EF10CF3F6058CA7A803B5E", - "pkg": "com.juechufsh.android.xpg1", - "host": "", - "site": "https://xpgandroid03-1372779881.cos.ap-beijing.myqcloud.com/app_xpg_android.txt", - "version": "1.0.0.3", - "publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCduNEnfxGaLuQRk5ABzXHhPV43zi00sCHjLo8BYc+Wi6xXm2b4v0i28Sq4WlNCKhseft9fz8kO/qLr6/022o1RcuOU7e4GFL3U9WnNODwRBYSYWd+K8nqpI/tAUDmZEBGRWqjrc7x6aMl3A+xpnWkLbPCLsuhbuuUE3tv09oeOpwIDAQAB", - "decrypt": "0"} -}, -{ - "key": "csp_juzi", - "name": "🥭┃橘子┃ APP", - "type": 3, - "api": "csp_AppDrama", - "ext": { - "appName": "橘子影視", - "dataKey": "DGVQRUX5R1LWWDLHTGJSUKG1DJRVPQ==", - "dataIv": "OC1A06E197EF10CF3F6058CA7A803B5E", - "pkg": "com.lxf.snzlcgtzxyx", - "host": "", - "site": "https://123-1349250429.cos.ap-shanghai.myqcloud.com/app.txt", - "version": "3.0.2.1", - "publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCr8SzZhjYy+rsya1K09t8d2K50pWFoBkgUqMpKOiW+3IEVKd4eTdvg9RSOjQ82kypL6R9BnsmrS1V8s4PVDwjQbUtYhTPPC9Hz16qY7rpD6m0d2vr09/UpWQ5uOy9PR0QTrsioveZ+DIe9jc3C+zBCu/kZSY/R8stwJoiitki3gwIDAQAB", - "decrypt": "1"} + "请求头": "手机", + "简介": "text cor3\"\u003E[*],&&\u003C/div\u003E", + "图片": "data-src=\"&&\"[替换:amp;\u003E\u003E空]", + "主页url": "https://www.cd-zj.com/label/qq.html", + "副标题": "ft2\"\u003E&&\u003C/i\u003E", + "线路数组": "\u003Ci class=\"fa ds-dianying\"\u003E&&\u003C/span\u003E", + "播放数组": "anthology-list-play size\"\u003E&&\u003C/ul\u003E", + "分类url": "https://www.cd-zj.com/cupfox-list/{cateId}-{area}--{class}-----{catePg}---{year}.html", + "分类": "电影$1#电视剧$2#综艺$3#动漫$4#短剧$5"} }, { "name": "🐿┃袋鼠┃APP", @@ -158,7 +144,55 @@ "type" : 3, "api" : "csp_AppV7Amns", "ext" : "55035714a2413f05151fea6864509533510fc41478de7616064e34cb984b3dd50508d4850f8c0500d64fe9697c462d7c90a08f15f156c7a1d176bdb3bb463e6d80d064c2512b04a421fc3ef8cb9465bce042c1fe2cffd9aad1399ed6d7aa32aee9dc83c7d13a642438e576f0cb729148ce29a0bba6b104b35170ff79f406a825ff534b579fa411821b3ea7c2e9f9c4f2a2052244bd4d27922dedb0b05c7d8a1bf77d361a226ed9badfefd87e3ce90cba7afb4f6d1d7dd480b6e2e7f21dbbbc45f352296166efccb3e8aa7898aa777b46cba677495204e62ee1c54a87019a98fbd116a90961185583fb9531f2b517b0f47a145d73339adf21e77c589d621705109c7736c1f16942e8487945978f75faf7401dbb596f21341c9c3ed85571f892401320ef2b8c05158adbc91a77fd60f4ee1af9ed611da3c1a89a003921ceecf785a5b23f1b8144788524244daff436f996ddff76d129de38de4e701ddd027424153ce446bc9ee50b28d8668765bdc15fba5898ace08d8b1610bddbca170992f884e65a347b8b5dbe7ed8504ceed3ba04a15f787e516ffeda81d5195a67369978ae8f56b3b23db0d192a3d2f120c3b52b47e34a3bb24c3b9220a784c1f61b33c35a9696b931a3a8b4febfabb62a83933fc7f5042332bdf17bd58d177ae3feaf7c15fd3cd68cfa81050a9488daa793b4e96d6f93eb6314436d5f46f005a6c3a439555b69d0e7d65cb6defe748fe54de384d235f42f89a8d900382833177cd40d08b1e9b3ffa9f65ed87bd1678d9f29893e476d7a68333b688c6b8a41bbd379f71b29b75d6ab9b427240dd64884265dade955667a6869d6ccbecff605fbf9db6544b0d14ecaed34161d6b7782d104dfbcaa95bb033951b71650fa182f200228ff922299d6f9718442fd9fbcf2b708000cf8cf9bbfd6365dfada692813390349db8fc363ea604202129d9125db7298309085d2fb2dc6f685aa6434084f342ad3adb2e6ef3375989abdeaf7479e5a55a29ea6d4fb6225d07f4107307fcb21807f170510db378f0cc21d7e2d701c8486e93f5b230f196188cacbb7445b70f5b384ea3acfa3fca612294f57488dc914d7ef7efc8efea54dad0cfb7c3fca195abf1db3537019c67bdb5aacb43c5040e1029ffb4cb97fb5ef03d72bf447a3c30907ef49fe670189a4aad38230645940048e921cd0128d89b25a72e802584550f1f29eca9658fe9b62fbb6a6ebd71dbf5e155f0b2ec5133785dde0985e5be49c0cdd597dacbfc92e4e7f066b5c83e5cad4fc6e2ffa4dcee14f8fdf6d6b7f88e0a792ffaf3c153dea5e7fe666e11e8d4f6a11b7793ca7810704a4c532f3e5f01afa796b61a3a44f203722830255c09b2948af7470b2560450232ad6552fdc4cc709660b13bda5e93595ee7556df3239bc7d79c6b2e90f66ba6e2bd60a307ec9a1c5f6439535f6274a8cafb666390c6eddf162ddd43dbd2113dbdd2ac7dd61e91ddc0d307ec22298cf225a21792426cff1150e9f9568bf02f9aea0aed1954a1c8e42bd441286021b879b0d48335b494e014b0d404595524def768868a77b15fbba2849afafbcc703280e77a3a7b3fc02366f13f7a001a002702770f5ef5cd34bf105c6377884221967353845ebebd53da25f2f268e1e5bac637d5357a4c3ca8dbe886f6c1e807ae252339ad09a506a7a5b0c35242e1ba3dfffee39567ccaa9f8fbe8d3d94dc0627a0589ed3477f9dddc496ad349a50983db7f1ea504028508dec02963b3e6b9e591d0816feea133eea1b2d75ea061d911eb0379c9808abec76c8d2b2396c2b5067523d7ac74b0cbd9de6725daa9d73dfdd7a6ad60f3afc42aeac56483804227767fe2ff514aebccd183c7b9c1e917cf11adadf0d868e1fb676114134647bb59715760155ce8806d0d4ed9dc9fc973db4ba4a3d7369b15ed073dad6d89c024212e01e7bf4960515fc31e41e9a3f3967d1d4eb7b5785d1cee85ed9c84ee247e424ade993a81b100156052b938da4a64597a5230454cd00a48b379757f09073b6476394aab0bc99a0e812364657223f081d034d28937fdef3c35e1ba0e5dca8555b271224d3546cb68e59f2f8624bb211b5b8cbfd8b4e3f6e3e4b8856bab43b51ab36f8343dcd17a7c4ff66b4e2de6b60340443105ecc6aa84ea90d82440f1b0b93dc018127ee6a053e8e81503f6ed1978bda2ecb602507ce925a7a56f4b8ae573ec88d89ccc6f976dc4a4927393917b72a481c60bcec08c3e3d8a61fdb99da39b998459d4ac7dd12fefc02e8e7d3e691ab9bf0c44e563a17916e3647de15b93f73c38cb42f41e950d2938bc7e934f623365c760e7e04d833f3f47267f4947557df5e7927b58c2a292186c1cca67e476b2b6a103a3a023a7e38c74942c6bd6e2b9fd31e25fd711b3d1935db918b5aba1691f04f83809af56af471b4e9a975935c9816baba6d237d7a6fdffedf8c2f196a514e5c2d15e32a0a12e68ec6e4b4fdd38f70fbe46fe5ef37385c3a81d55df923ffd77d4d3d6a158e68ef5bd6e691634e11e7e634fff9d646184037745ecee973fe5b7c40945797f349ecdd7816e0cfc5cab3142312005d4ed5d8d102358c17c9268c8e0d5367b47a7ee7a35ff71b3a8bb7de11c529c3ad08fb88268e8c94825ba953ddbb4e38613c7c0cbfe26a23b61093342400a9ff9a953e2c2500bb56bc806811d6fc0361d63a96fa005fbf9c5cc10e832e58546a166014a76bac02483dc48e3baadb843f98ebfc54d862b8b3a39ec7ffabd6679cdfb6ae4dff075b8d4743184155061b04e3c0cb3384b1406afb1192962acbeb133966f87a3aae0e02ea96c5ca68df4fac42b543a8080698920202135a07bb8b2d3856fcf9e310dd7c95b568235daaa6196f5199b16ef08ff660027ac8a4fd404c79c6ec4c4260f75831d36bc1a4f42cc4addb827a8657708c74ce67ce095e2f2bd49bebdaa35c55e1a8567062ebb76eac4cdb8a5ef85ab9177577feda7fa05" -}, +}, +{ + "key": "csp_huayi", + "name": "🏵┃華誼┃ APP", + "type": 3, + "api": "csp_AppDrama", + "ext": { + "appName": "華誼影視", + "dataKey": "NDBYSZR1DMRRZ05NSUCWEJNIYWLBPT0=", + "dataIv": "OC1A06E197EF10CF3F6058CA7A803B5E", + "pkg": "com.muyue.tool", + "host": "", + "site": "https://vip.123pan.cn/1851089669/oss/az5.txt", + "version": "1.0.0.4", + "publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCp9Ek4wIlQAtwFnuBRlsFiow2tr+4UOciGeNKbY7nL74etUqUb6fvpOSOHhFEfaWlfwUpOB17x3JEL3No19nfjCeVYrYPjlJcgoqUWH/tfIfFAQWvtxBIBlKazkhw8d3ChysWmeWRikKqkBsVRY4oqNPuj4sjm6Zult0U4I4prRQIDAQAB", + "decrypt": "1"} +}, +{ + "key": "csp_pguo", + "name": "🍏┃苹果┃APP", + "type": 3, + "api": "csp_AppDrama", + "ext": { + "appName": "苹果影視", + "dataKey": "S0VNDTJHOFHHCNMRAW5IV2TOS2PBPQ==", + "dataIv": "OC1A06E197EF10CF3F6058CA7A803B5E", + "pkg": "com.juechufsh.android.xpg1", + "host": "", + "site": "https://xpgandroid03-1372779881.cos.ap-beijing.myqcloud.com/app_xpg_android.txt", + "version": "1.0.0.3", + "publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCduNEnfxGaLuQRk5ABzXHhPV43zi00sCHjLo8BYc+Wi6xXm2b4v0i28Sq4WlNCKhseft9fz8kO/qLr6/022o1RcuOU7e4GFL3U9WnNODwRBYSYWd+K8nqpI/tAUDmZEBGRWqjrc7x6aMl3A+xpnWkLbPCLsuhbuuUE3tv09oeOpwIDAQAB", + "decrypt": "0"} +}, +{ + "key": "csp_juzi", + "name": "🥭┃橘子┃ APP", + "type": 3, + "api": "csp_AppDrama", + "ext": { + "appName": "橘子影視", + "dataKey": "DGVQRUX5R1LWWDLHTGJSUKG1DJRVPQ==", + "dataIv": "OC1A06E197EF10CF3F6058CA7A803B5E", + "pkg": "com.lxf.snzlcgtzxyx", + "host": "", + "site": "https://123-1349250429.cos.ap-shanghai.myqcloud.com/app.txt", + "version": "3.0.2.1", + "publicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCr8SzZhjYy+rsya1K09t8d2K50pWFoBkgUqMpKOiW+3IEVKd4eTdvg9RSOjQ82kypL6R9BnsmrS1V8s4PVDwjQbUtYhTPPC9Hz16qY7rpD6m0d2vr09/UpWQ5uOy9PR0QTrsioveZ+DIe9jc3C+zBCu/kZSY/R8stwJoiitki3gwIDAQAB", + "decrypt": "1"} +}, { "key": "csp_chengzi", "name": "🍑┃橙子┃ APP", @@ -250,13 +284,11 @@ "key": "csp_lanying", "name": "🦉┃朗吟┃ APP", "type": 3, - "api": "csp_AppQi", + "api": "./TS/AppGet.js", "ext": { "host": "http://154.219.117.157:6688/", - "dataKey": "ca94b06ca359d80e", - "dataIv": "ca94b06ca359d80e", - "init": "initV120", - "ua": "okhttp/3.10.0"} + "key": "ca94b06ca359d80e", + "api": 2} }, { "key": "csp_xingy", @@ -363,25 +395,6 @@ "api": "https://gitee.com/lyun_1_0/tb/raw/master/TS/荐片.js", "ext": "https://api.ztcgi.com" }, -{ - "key": "csp_Jpys", - "name": "✏️┃影視┃ 爱影", - "type": 3, - "api": "csp_Jpys", - "ext": "https://y2s52n7.com" -}, -{ - "key": "山楂影视", - "name": "🌰┃影視┃山楂", - "type": 3, - "api": "csp_PianKu8" -}, -{ - "key": "飞娱影视", - "name": "🥭┃影視┃飞娱", - "type": 3, - "api": "csp_Feiyu" -}, { "key": "csp_Rebo", "name": "☕┃影視┃ 热播", @@ -389,13 +402,6 @@ "api": "csp_AppRJ", "ext": {"url": "http://v.rbotv.cn"} }, -{ - "key": "csp_BuBu", - "name": "🥂┃影視┃ 布布", - "type": 3, - "api": "csp_App3Q", - "ext": "https://asd123sx23xdacsx.top" -}, { "key": "csp_Hxq", "name": "👼┃影視┃ 韩圈", @@ -554,9 +560,8 @@ "key" : "csp_kuwoyy", "name" : "🪕┃酷我┃音乐", "type": 3, - "jar" : "./JAR/xm.jar", - "api": "csp_KuKuMusic", - "style": {"type": "oval","ratio": 1} + "api": "./TS/酷我.js", + "indexs" : 0 }, { "key": "csp_Kugouyy", @@ -906,7 +911,7 @@ }], "flags":["youku","qq","QQ","iqiyi","qiyi","letv","sohu","pptv","PPTV","mgtv","wasu","bilibili","m1905","seven","m78","mtv","sjs","dbs","yds","HNB","JL4K"], -"spider": "./JAR/MH.jar", +"spider": "https://gitee.com/lyun_1_0/tb/raw/master/JAR/MH.jar", "lives": [ { "name": "📺芸直播📺", diff --git a/TB18/xxx.jpg b/TB18/xxx.jpg index a1042f69..a654730b 100644 --- a/TB18/xxx.jpg +++ b/TB18/xxx.jpg @@ -1,5 +1,5 @@ { - "spider": "./JAR/MX.jar", + "spider": "https://gitee.com/lyun_1_0/tb/raw/master/JAR/MH.jar", "wallpaper": "http://api.btstu.cn/sjbz/?lx=meizi", "sites": [ { diff --git a/catvod/Motorola/demo.json b/catvod/Motorola/demo.json deleted file mode 100644 index 8b137891..00000000 --- a/catvod/Motorola/demo.json +++ /dev/null @@ -1 +0,0 @@ - diff --git a/catvod/Motorola/index.config.js b/catvod/Motorola/index.config.js deleted file mode 100644 index be85012e..00000000 --- a/catvod/Motorola/index.config.js +++ /dev/null @@ -1,437 +0,0 @@ -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// src/index.config.js -var index_config_exports = {}; -__export(index_config_exports, { - default: () => index_config_default -}); -module.exports = __toCommonJS(index_config_exports); -var index_config_default = { - ali: { - token: "" - }, - quark: { - cookie: "" - }, - uc: { - cookie: "", - token: "" - }, - y115: { - cookie: "", - offline: { - savePath: "0", - pollAttempts: 6, - pollIntervalMs: 1500 - } - }, - baidu: { - cookie: "" - }, - tianyi: { - username: "", - password: "" - }, - pan123: { - username: "", - password: "" - }, - muou: { - urls: ["https://123.666291.xyz", "https://666.666291.xyz", "https://www.muou.asia", "https://www.muou.site"] - }, - wogg: { - urls: ["https://wogg.333232.xyz", "https://wogg.xxooo.cf", "https://woggpan.888484.xyz", "https://www.wogg.lol", "https://www.wogg.one"] - }, - leijing: { - urls: ["https://www.leijing1.com", "https://leijing1.com", "https://www.leijing.xyz"] - }, - duoduo: { - urls: ["https://tv.214521.xyz", "https://tv.yydsys.cc", "https://tv.yydsys.top"] - }, - zhizhen: { - urls: ["http://www.miqk.cc", "https://mihdr.top", "https://www.mihdr.top", "https://www.miqk.cc", "https://www.zhizhenpan.fun", "https://xiaomi666.fun", "https://xiaomiai.site"] - }, - ouge: { - urls: ["https://woog.430520.xyz", "https://woog.nxog.eu.org", "https://woog.nxog.fun"] - }, - labi: { - urls: ["http://feimo.fun", "http://fmao.shop", "http://fmao.site", "http://xiaocge.fun", "http://xiaocgege.shop", "https://feimao666.fun"] - }, - kuaiying: { - urls: ["http://38.76.197.172:12521", "http://xsayang.fun:12512"] - }, - huban: { - urls: ["http://38.76.197.172:16969", "http://xhban.xyz:20720"] - }, - erxiao: { - urls: ["https://www.2xiaopan.top/", "https://2xiaopan.top/", "https://www.erxiaozhan.top/", "https://www.2xiaozhan.top/", "https://wexwp.cc/"] - }, - shandian: { - urls: ["http://shandian.blog", "https://sd.sduc.site"] - }, - wouniu: { - urls: ["https://zmi.kdns.fr"] - }, - tgsou: { - tgPic: true, - count: 0, - url: "https://tgsou.lmentor.dpdns.org", - channelUsername: "tgsearchers7,Aliyun_4K_Movies,bdbdndn11,yunpanx,bsbdbfjfjff,yp123pan,yunpanxunlei,tianyifc,BaiduCloudDisk,txtyzy,peccxinpd,gotopan,PanjClub,baicaoZY,MCPH01,MCPH02,MCPH03,bdwpzhpd,ysxb48,jdjdn1111,yggpan,MCPH086,zaihuayun,Q66Share,ucwpzy,shareAliyun,alyp_1,dianyingshare,Quark_Movies,ydypzyfx,ucquark,xx123pan,yingshifenxiang123,zyfb123,tyypzhpd,tianyirigeng,cloudtianyi,hdhhd21,Lsp115,oneonefivewpfx,qixingzhenren,taoxgzy,Channel_Shares_115,tyysypzypd,vip115hot,wp123zy,yunpan139,yunpan189,yunpanuc,yydf_hzl,leoziyuan,Q_dongman,yoyokuakeduanju,TG654TG,WFYSFX02,QukanMovie,yeqingjie_GJG666,movielover8888_film3,Baidu_netdisk,D_wusun,FLMdongtianfudi,KaiPanshare,QQZYDAPP,rjyxfx,PikPak_Share_Channel,btzhi,newproductsourcing,cctv1211,duan_ju,QuarkFree,yunpanNB,kkdj001,xxzlzn,pxyunpanxunlei,jxwpzy,kuakedongman,liangxingzhinan,xiangnikanj,guoman4K,zdqxm,kduanju,cilidianying,CBduanju,SharePanFilms,dzsgx,BooksRealm,Oscar_4Kmovies,douerpan,baidu_yppan,Q_jilupian,Netdisk_Movies,yunpanquark,ammmziyuan,ciliziyuanku,cili8888,jzmm_123pan,Q_dianying,domgmingapk,dianying4k,q_dianshiju,tgbokee,ucshare,godupan,gokuapan,gimy115,WFYSFX03,peccxin,Movie888035,xlwpzy,zyywpzy,wydwpzy,gimy100,ucshare,gimy115iso,aliyunys,clouddriveresources,XunLeiPinDao,ydwpzy,a123fxme,WPpindao,kuyupan,djya5,yingshiziyuanpindao,zh_vip,pan_guangya,zyzhpd123,zhenyingsg,gdsharing,weichengduanju666,yingxiangkj,duanjucabian,kuakenetpan,kelea555,tianyiyunpanpindao,PikPakShareChannel,tgyy678,xuexixiaonengshou1,google_yppan,ayzgzf" - }, - tgchannel: { - url: "https://t.me", - count: 4, - enableImage: true, - homeChannelUsername: ["tgsearchers7", "douerpan"], - channelUsername: ["Q66Share", "alyp_TV", "ucpanpan", "ucquark", "tianyirigeng", "hao115", "guaguale115", "ydypzyfx", "tgsearchers6", "NewQuark", "dianyingshare", "XiangxiuNB", "yunpanpan", "kuakeyun", "Quark_Movies", "qixingzhenren", "longzbija", "alyp_4K_Movies", "yunpanshare", "shareAliyun", "alyp_1", "xx123pan"], - channelRemark: { - tgsearchers7: "资源宇宙", - douerpan: "豆儿盘" - } - }, - sites: { - list: [] - }, - pans: { - list: [] - }, - danmuBuiltin: { - enabled: true, - host: "127.0.0.1", - port: 9321, - token: "87654321", - autoStart: true - }, - danmu: { - urls: [ - { address: "http://127.0.0.1:9321/87654321", name: "内置" }, - { address: "http://47.107.188.112:6008/87654321", name: "公益1" }, - { address: "http://ecs.dysobo.cn:9321/87654321", name: "公益2" } - ], - format: "xml", - autoPush: true, - autoPushBlacklist: ["bili_all", "bili_official", "88kanqiu", "live"] - }, - t4: { - list: [] - }, - cms: { - list: [] - }, - pansou: { - api_urls: "https://so.hk.111651.xyz", - channels: "", - plugins: "", - cloud_types: "", - include: "", - exclude: "", - count: 20, - pancheck: "", - pancheck_enabled: false, - pancheck_mode: "off" - }, - emby: [ - { - name: "embysim服", - server: "http://192.168.50.119:8096", - username: "emby", - password: "1234", - deviceName: "Hills Windows", - client: "Hills Windows", - clientVersion: "0.2.3", - enablePlaybackReport: true - // 播放进度上报EMBY服务器 - }, - { - name: "示例", - server: "", - username: "", - password: "", - deviceName: "", - client: "", - clientVersion: "", - enablePlaybackReport: false - } - ], - live: [ - { - name: "", - url: "", - ua: "okhttp/3.15", - enabled: true, - logoUrl: "" - } - ], - alist: [ - { - name: "测试", - server: "http://118.122.130.22:5678", - username: "", - password: "", - enabled: true - } - ], - alist_tvbox: { - base_url: "http://127.0.0.1:4567", - token: "", - custom_classes: "" - }, - webdav: [ - { - name: "亿苯正经", - server: "https://pan.lm379.cn:443", - path: "/dav", - username: "public_dav", - password: "public", - enabled: true - }, - { - name: "追番", - server: "https://zhuifan.link:443", - path: "/dav", - username: "zhuifan", - password: "zhuifan", - enabled: true - }, - { - name: "七米兰", - server: "https://al.chirmyram.com", - path: "/dav", - username: "alist", - password: "alist", - enabled: true - } - ], - bilibili: { - cookie: "", - classes: "" - }, - color: [ - { - light: { - bg: "https://i2.100024.xyz/2024/01/13/pptcej.webp", - bgMask: "0x50ffffff", - primary: "0xff446732", - onPrimary: "0xffffffff", - primaryContainer: "0xffc5efab", - onPrimaryContainer: "0xff072100", - secondary: "0xff55624c", - onSecondary: "0xffffffff", - secondaryContainer: "0xffd9e7cb", - onSecondaryContainer: "0xff131f0d", - tertiary: "0xff386666", - onTertiary: "0xffffffff", - tertiaryContainer: "0xffbbebec", - onTertiaryContainer: "0xff002020", - error: "0xffba1a1a", - onError: "0xffffffff", - errorContainer: "0xffffdad6", - onErrorContainer: "0xff410002", - background: "0xfff8faf0", - onBackground: "0xff191d16", - surface: "0xfff8faf0", - onSurface: "0xff191d16", - surfaceVariant: "0xffe0e4d6", - onSurfaceVariant: "0xff191d16", - inverseSurface: "0xff2e312b", - inverseOnSurface: "0xfff0f2e7", - outline: "0xff74796d", - outlineVariant: "0xffc3c8bb", - shadow: "0xff000000", - scrim: "0xff000000", - inversePrimary: "0xffaad291", - surfaceTint: "0xff446732" - }, - dark: { - bg: "https://i2.100024.xyz/2024/01/13/pptg3z.webp", - bgMask: "0x50000000", - primary: "0xffaad291", - onPrimary: "0xff173807", - primaryContainer: "0xff2d4f1c", - onPrimaryContainer: "0xffc5efab", - secondary: "0xffbdcbb0", - onSecondary: "0xff283420", - secondaryContainer: "0xff3e4a35", - onSecondaryContainer: "0xffd9e7cb", - tertiary: "0xffa0cfcf", - onTertiary: "0xff003738", - tertiaryContainer: "0xff1e4e4e", - onTertiaryContainer: "0xffbbebec", - error: "0xffffb4ab", - onError: "0xff690005", - errorContainer: "0xff93000a", - onErrorContainer: "0xffffdad6", - background: "0xff11140e", - onBackground: "0xffe1e4d9", - surface: "0xff11140e", - onSurface: "0xffe1e4d9", - surfaceVariant: "0xff43483e", - onSurfaceVariant: "0xffe1e4d9", - inverseSurface: "0xffe1e4d9", - inverseOnSurface: "0xff2e312b", - outline: "0xff8d9286", - outlineVariant: "0xff43483e", - shadow: "0xff000000", - scrim: "0xff000000", - inversePrimary: "0xff446732", - surfaceTint: "0xffaad291" - } - }, - { - light: { - bg: "https://i2.100024.xyz/2024/01/13/pi2rpw.webp", - bgMask: "0x50ffffff", - primary: "0xff666014", - onPrimary: "0xffffffff", - primaryContainer: "0xffeee58c", - onPrimaryContainer: "0xff1f1c00", - secondary: "0xff625f42", - onSecondary: "0xffffffff", - secondaryContainer: "0xffe9e4be", - onSecondaryContainer: "0xff1e1c05", - tertiary: "0xff3f6654", - onTertiary: "0xffffffff", - tertiaryContainer: "0xffc1ecd5", - onTertiaryContainer: "0xff002114", - error: "0xffba1a1a", - onError: "0xffffffff", - errorContainer: "0xffffdad6", - onErrorContainer: "0xff410002", - background: "0xfffef9eb", - onBackground: "0xff1d1c14", - surface: "0xfffef9eb", - onSurface: "0xff1d1c14", - surfaceVariant: "0xffe7e3d0", - onSurfaceVariant: "0xff1d1c14", - inverseSurface: "0xff323128", - inverseOnSurface: "0xfff5f1e3", - outline: "0xff7a7768", - outlineVariant: "0xffcbc7b5", - shadow: "0xff000000", - scrim: "0xff000000", - inversePrimary: "0xffd1c973", - surfaceTint: "0xff666014" - }, - dark: { - bg: "https://i2.100024.xyz/2024/01/13/pi2reo.webp", - bgMask: "0x50000000", - primary: "0xffd1c973", - onPrimary: "0xff353100", - primaryContainer: "0xff4d4800", - onPrimaryContainer: "0xffeee58c", - secondary: "0xffcdc8a3", - onSecondary: "0xff333117", - secondaryContainer: "0xff4a482c", - onSecondaryContainer: "0xffe9e4be", - tertiary: "0xffa6d0b9", - onTertiary: "0xff0e3727", - tertiaryContainer: "0xff274e3d", - onTertiaryContainer: "0xffc1ecd5", - error: "0xffffb4ab", - onError: "0xff690005", - errorContainer: "0xff93000a", - onErrorContainer: "0xffffdad6", - background: "0xff14140c", - onBackground: "0xffe7e2d5", - surface: "0xff14140c", - onSurface: "0xffe7e2d5", - surfaceVariant: "0xff49473a", - onSurfaceVariant: "0xffe7e2d5", - inverseSurface: "0xffe7e2d5", - inverseOnSurface: "0xff323128", - outline: "0xff949181", - outlineVariant: "0xff49473a", - shadow: "0xff000000", - scrim: "0xff000000", - inversePrimary: "0xff666014", - surfaceTint: "0xffd1c973" - } - }, - { - light: { - bg: "https://i2.100024.xyz/2024/01/13/qrnuwt.webp", - bgMask: "0x50ffffff", - primary: "0xFF2B6C00", - onPrimary: "0xFFFFFFFF", - primaryContainer: "0xFFA6F779", - onPrimaryContainer: "0xFF082100", - secondary: "0xFF55624C", - onSecondary: "0xFFFFFFFF", - secondaryContainer: "0xFFD9E7CA", - onSecondaryContainer: "0xFF131F0D", - tertiary: "0xFF386666", - onTertiary: "0xFFFFFFFF", - tertiaryContainer: "0xFFBBEBEB", - onTertiaryContainer: "0xFF002020", - error: "0xFFBA1A1A", - onError: "0xFFFFFFFF", - errorContainer: "0xFFFFDAD6", - onErrorContainer: "0xFF410002", - background: "0xFFFDFDF5", - onBackground: "0xFF1A1C18", - surface: "0xFFFDFDF5", - onSurface: "0xFF1A1C18", - surfaceVariant: "0xFFE0E4D6", - onSurfaceVariant: "0xFF1A1C18", - inverseSurface: "0xFF2F312C", - onInverseSurface: "0xFFF1F1EA", - outline: "0xFF74796D", - outlineVariant: "0xFFC3C8BB", - shadow: "0xFF000000", - scrim: "0xFF000000", - inversePrimary: "0xFF8CDA60", - surfaceTint: "0xFF2B6C00" - }, - dark: { - bg: "https://i2.100024.xyz/2024/01/13/qrc37o.webp", - bgMask: "0x50000000", - primary: "0xFF8CDA60", - onPrimary: "0xFF133800", - primaryContainer: "0xFF1F5100", - onPrimaryContainer: "0xFFA6F779", - secondary: "0xFFBDCBAF", - onSecondary: "0xFF283420", - secondaryContainer: "0xFF3E4A35", - onSecondaryContainer: "0xFFD9E7CA", - tertiary: "0xFFA0CFCF", - onTertiary: "0xFF003737", - tertiaryContainer: "0xFF1E4E4E", - onTertiaryContainer: "0xFFBBEBEB", - error: "0xFFFFB4AB", - errorContainer: "0xFF93000A", - onError: "0xFF690005", - onErrorContainer: "0xFFFFDAD6", - background: "0xFF1A1C18", - onBackground: "0xFFE3E3DC", - outline: "0xFF8D9286", - onInverseSurface: "0xFF1A1C18", - inverseSurface: "0xFFE3E3DC", - inversePrimary: "0xFF2B6C00", - shadow: "0xFF000000", - surfaceTint: "0xFF8CDA60", - outlineVariant: "0xFF43483E", - scrim: "0xFF000000", - surface: "0xFF1A1C18", - onSurface: "0xFFC7C7C0", - surfaceVariant: "0xFF43483E", - onSurfaceVariant: "0xFFC7C7C0" - } - } - ] -}; diff --git a/catvod/Motorola/index.config.js.md5 b/catvod/Motorola/index.config.js.md5 deleted file mode 100644 index 35dd880a..00000000 --- a/catvod/Motorola/index.config.js.md5 +++ /dev/null @@ -1 +0,0 @@ -43e4c1f017668693c7281731648fc634 \ No newline at end of file diff --git a/catvod/Motorola/index.js b/catvod/Motorola/index.js deleted file mode 100644 index 5c0be35b..00000000 --- a/catvod/Motorola/index.js +++ /dev/null @@ -1,10943 +0,0 @@ - -globalThis.websiteBundle = (() => { - return [ - '(function() {', - ' const exports = {};', - ' const module = { exports };', - "var um=Object.create;var pr=Object.defineProperty,fm=Object.defineProperties,pm=Object.getOwnPropertyDescriptor,mm=Object.getOwnPropertyDescriptors,gm=Object.getOwnPropertyNames,xo=Object.getOwnPropertySymbols,hm=Object.getPrototypeOf,ei=Object.prototype.hasOwnProperty,ul=Object.prototype.propertyIsEnumerable;var cl=(e,t,n)=>t in e?pr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,C=(e,t)=>{for(var n in t||(t={}))ei.call(t,n)&&cl(e,n,t[n]);if(xo)for(var n of xo(t))ul.call(t,n)&&cl(e,n,t[n]);return e},I=(e,t)=>fm(e,mm(t));var Vt=(e,t)=>{var n={};for(var r in e)ei.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&xo)for(var r of xo(e))t.indexOf(r)<0&&ul.call(e,r)&&(n[r]=e[r]);return n};var Ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),bm=(e,t)=>{for(var n in t)pr(e,n,{get:t[n],enumerable:!0})},fl=(e,t,n,r)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of gm(t))!ei.call(e,o)&&o!==n&&pr(e,o,{get:()=>t[o],enumerable:!(r=pm(t,o))||r.enumerable});return e};var _=(e,t,n)=>(n=e!=null?um(hm(e)):{},fl(t||!e||!e.__esModule?pr(n,\"default\",{value:e,enumerable:!0}):n,e)),xm=e=>fl(pr({},\"__esModule\",{value:!0}),e);var J=Ae((jC,pl)=>{pl.exports=window.React});var vo=Ae((HC,ml)=>{ml.exports=window.ReactDOM});var hl=Ae(ti=>{\"use strict\";var gl=vo();ti.createRoot=gl.createRoot,ti.hydrateRoot=gl.hydrateRoot;var qC});var Be=Ae((KC,bl)=>{bl.exports=window.antd});var tt=Ae((XC,xl)=>{xl.exports=window.axios});var yl=Ae((JC,vl)=>{vl.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r{\"use strict\";var vm=yl(),wl={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},ym=\"Copy to clipboard: #{key}, Enter\";function wm(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function Cm(e,t){var n,r,o,a,i,s,l=!1;t||(t={}),n=t.debug||!1;try{o=vm(),a=document.createRange(),i=document.getSelection(),s=document.createElement(\"span\"),s.textContent=e,s.ariaHidden=\"true\",s.style.all=\"unset\",s.style.position=\"fixed\",s.style.top=0,s.style.clip=\"rect(0, 0, 0, 0)\",s.style.whiteSpace=\"pre\",s.style.webkitUserSelect=\"text\",s.style.MozUserSelect=\"text\",s.style.msUserSelect=\"text\",s.style.userSelect=\"text\",s.addEventListener(\"copy\",function(f){if(f.stopPropagation(),t.format)if(f.preventDefault(),typeof f.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=wl[t.format]||wl.default;window.clipboardData.setData(d,e)}else f.clipboardData.clearData(),f.clipboardData.setData(t.format,e);t.onCopy&&(f.preventDefault(),t.onCopy(f.clipboardData))}),document.body.appendChild(s),a.selectNodeContents(s),i.addRange(a);var c=document.execCommand(\"copy\");if(!c)throw new Error(\"copy command was unsuccessful\");l=!0}catch(f){n&&console.error(\"unable to copy using execCommand: \",f),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),l=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),r=wm(\"message\"in t?t.message:ym),window.prompt(r,e)}}finally{i&&(typeof i.removeRange==\"function\"?i.removeRange(a):i.removeAllRanges()),s&&document.body.removeChild(s),o()}return l}Cl.exports=Cm});var Al=Ae((CS,So)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var o=\"\",a=0;a{\"use strict\";var Lr=J();function Pb(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var _b=typeof Object.is==\"function\"?Object.is:Pb,Bb=Lr.useSyncExternalStore,Lb=Lr.useRef,Mb=Lr.useEffect,Vb=Lr.useMemo,zb=Lr.useDebugValue;Uc.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var a=Lb(null);if(a.current===null){var i={hasValue:!1,value:null};a.current=i}else i=a.current;a=Vb(function(){function l(m){if(!c){if(c=!0,f=m,m=r(m),o!==void 0&&i.hasValue){var h=i.value;if(o(h,m))return d=h}return d=m}if(h=d,_b(f,m))return h;var x=r(m);return o!==void 0&&o(h,x)?(f=m,h):(f=m,d=x)}var c=!1,f,d,u=n===void 0?null:n;return[function(){return l(t())},u===null?void 0:function(){return l(u())}]},[t,n,r,o]);var s=Bb(e,a[0],a[1]);return Mb(function(){i.hasValue=!0,i.value=s},[s]),zb(s),s}});var jc=Ae((vI,Gc)=>{\"use strict\";Gc.exports=Wc()});var Ss=Ae((qI,Vf)=>{function mw(e){var t=typeof e;return e!=null&&(t==\"object\"||t==\"function\")}Vf.exports=mw});var $f=Ae((YI,zf)=>{var gw=typeof global==\"object\"&&global&&global.Object===Object&&global;zf.exports=gw});var Os=Ae((KI,Uf)=>{var hw=$f(),bw=typeof self==\"object\"&&self&&self.Object===Object&&self,xw=hw||bw||Function(\"return this\")();Uf.exports=xw});var Gf=Ae((XI,Wf)=>{var vw=Os(),yw=function(){return vw.Date.now()};Wf.exports=yw});var Hf=Ae((JI,jf)=>{var ww=/\\s/;function Cw(e){for(var t=e.length;t--&&ww.test(e.charAt(t)););return t}jf.exports=Cw});var Yf=Ae((QI,qf)=>{var Sw=Hf(),Ow=/^\\s+/;function Dw(e){return e&&e.slice(0,Sw(e)+1).replace(Ow,\"\")}qf.exports=Dw});var Ds=Ae((ZI,Kf)=>{var Iw=Os(),Ew=Iw.Symbol;Kf.exports=Ew});var Zf=Ae((RI,Qf)=>{var Xf=Ds(),Jf=Object.prototype,Tw=Jf.hasOwnProperty,kw=Jf.toString,oo=Xf?Xf.toStringTag:void 0;function Nw(e){var t=Tw.call(e,oo),n=e[oo];try{e[oo]=void 0;var r=!0}catch(a){}var o=kw.call(e);return r&&(t?e[oo]=n:delete e[oo]),o}Qf.exports=Nw});var ep=Ae((eE,Rf)=>{var Fw=Object.prototype,Aw=Fw.toString;function Pw(e){return Aw.call(e)}Rf.exports=Pw});var op=Ae((tE,rp)=>{var tp=Ds(),_w=Zf(),Bw=ep(),Lw=\"[object Null]\",Mw=\"[object Undefined]\",np=tp?tp.toStringTag:void 0;function Vw(e){return e==null?e===void 0?Mw:Lw:np&&np in Object(e)?_w(e):Bw(e)}rp.exports=Vw});var ip=Ae((nE,ap)=>{function zw(e){return e!=null&&typeof e==\"object\"}ap.exports=zw});var lp=Ae((rE,sp)=>{var $w=op(),Uw=ip(),Ww=\"[object Symbol]\";function Gw(e){return typeof e==\"symbol\"||Uw(e)&&$w(e)==Ww}sp.exports=Gw});var fp=Ae((oE,up)=>{var jw=Yf(),dp=Ss(),Hw=lp(),cp=NaN,qw=/^[-+]0x[0-9a-f]+$/i,Yw=/^0b[01]+$/i,Kw=/^0o[0-7]+$/i,Xw=parseInt;function Jw(e){if(typeof e==\"number\")return e;if(Hw(e))return cp;if(dp(e)){var t=typeof e.valueOf==\"function\"?e.valueOf():e;e=dp(t)?t+\"\":t}if(typeof e!=\"string\")return e===0?e:+e;e=jw(e);var n=Yw.test(e);return n||Kw.test(e)?Xw(e.slice(2),n?2:8):qw.test(e)?cp:+e}up.exports=Jw});var gp=Ae((aE,mp)=>{var Qw=Ss(),Is=Gf(),pp=fp(),Zw=\"Expected a function\",Rw=Math.max,eC=Math.min;function tC(e,t,n){var r,o,a,i,s,l,c=0,f=!1,d=!1,u=!0;if(typeof e!=\"function\")throw new TypeError(Zw);t=pp(t)||0,Qw(n)&&(f=!!n.leading,d=\"maxWait\"in n,a=d?Rw(pp(n.maxWait)||0,t):a,u=\"trailing\"in n?!!n.trailing:u);function m(O){var F=r,T=o;return r=o=void 0,c=O,i=e.apply(T,F),i}function h(O){return c=O,s=setTimeout(y,t),f?m(O):i}function x(O){var F=O-l,T=O-c,P=t-F;return d?eC(P,a-T):P}function v(O){var F=O-l,T=O-c;return l===void 0||F>=t||F<0||d&&T>=a}function y(){var O=Is();if(v(O))return b(O);s=setTimeout(y,x(O))}function b(O){return s=void 0,u&&r?m(O):(r=o=void 0,i)}function S(){s!==void 0&&clearTimeout(s),c=0,r=l=o=s=void 0}function w(){return s===void 0?i:b(Is())}function D(){var O=Is(),F=v(O);if(r=arguments,o=this,l=O,F){if(s===void 0)return h(l);if(d)return clearTimeout(s),s=setTimeout(y,t),m(l)}return s===void 0&&(s=setTimeout(y,t)),i}return D.cancel=S,D.flush=w,D}mp.exports=tC});var WC={};bm(WC,{AccountInfo:()=>Bs,AliQrcodeCard:()=>_s,CMS:()=>nm,DanmuSetting:()=>em,EmbyConfigWithSave:()=>Js,Pans:()=>Vs,PansouSetting:()=>Qs,QrcodeCard:()=>qt,QrcodeImage:()=>el,SiteDomainSetting:()=>Xa,Sites:()=>Xs,T4:()=>tm,TGChannel:()=>Ys,TGSou:()=>qs,UCDualQrcodeCard:()=>Ms,UCUt:()=>Ks,XunleiAccountInfo:()=>Ls,renderClient:()=>UC});module.exports=xm(WC);var p=_(J(),1),Qp=_(hl(),1),g=_(Be(),1),go=_(tt(),1),Ja=_(Sl(),1);var Ol=_(J()),Sm=(0,Ol.createContext)({}),yo=Sm;function R(){return R=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);nparseFloat(o));for(let o=0;o<3;o+=1)r[o]=t(r[o]||0,n[o]||\"\",o);return n[3]?r[3]=n[3].includes(\"%\")?r[3]/100:r[3]:r[3]=1,r}var Pl=(e,t,n)=>n===0?e:e/100;function mr(e,t){let n=t||255;return e>n?n:e<0?0:e}var un=class e{constructor(t){Ke(this,\"isValid\",!0),Ke(this,\"r\",0),Ke(this,\"g\",0),Ke(this,\"b\",0),Ke(this,\"a\",1),Ke(this,\"_h\",void 0),Ke(this,\"_s\",void 0),Ke(this,\"_l\",void 0),Ke(this,\"_v\",void 0),Ke(this,\"_max\",void 0),Ke(this,\"_min\",void 0),Ke(this,\"_brightness\",void 0);function n(r){return r[0]in t&&r[1]in t&&r[2]in t}if(t)if(typeof t==\"string\"){let o=function(a){return r.startsWith(a)},r=t.trim();/^#?[A-F\\d]{3,8}$/i.test(r)?this.fromHexString(r):o(\"rgb\")?this.fromRgbString(r):o(\"hsl\")?this.fromHslString(r):(o(\"hsv\")||o(\"hsb\"))&&this.fromHsvString(r)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=mr(t.r),this.g=mr(t.g),this.b=mr(t.b),this.a=typeof t.a==\"number\"?mr(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(a){let i=a/255;return i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4)}let n=t(this.r),r=t(this.g),o=t(this.b);return .2126*n+.7152*r+.0722*o}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=Xe(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g\"u\"){let t=this.getMax()-this.getMin();t===0?this._s=0:this._s=t/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(t=10){let n=this.getHue(),r=this.getSaturation(),o=this.getLightness()-t/100;return o<0&&(o=0),this._c({h:n,s:r,l:o,a:this.a})}lighten(t=10){let n=this.getHue(),r=this.getSaturation(),o=this.getLightness()+t/100;return o>1&&(o=1),this._c({h:n,s:r,l:o,a:this.a})}mix(t,n=50){let r=this._c(t),o=n/100,a=s=>(r[s]-this[s])*o+this[s],i={r:Xe(a(\"r\")),g:Xe(a(\"g\")),b:Xe(a(\"b\")),a:Xe(a(\"a\")*100)/100};return this._c(i)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),r=this.a+n.a*(1-this.a),o=a=>Xe((this[a]*this.a+n[a]*n.a*(1-this.a))/r);return this._c({r:o(\"r\"),g:o(\"g\"),b:o(\"b\"),a:r})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let r=(this.g||0).toString(16);t+=r.length===2?r:\"0\"+r;let o=(this.b||0).toString(16);if(t+=o.length===2?o:\"0\"+o,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let a=Xe(this.a*255).toString(16);t+=a.length===2?a:\"0\"+a}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=Xe(this.getSaturation()*100),r=Xe(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(r,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(r,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,r){let o=this.clone();return o[t]=mr(n,r),o}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function r(o,a){return parseInt(n[o]+n[a||o],16)}n.length<6?(this.r=r(0),this.g=r(1),this.b=r(2),this.a=n[3]?r(3)/255:1):(this.r=r(0,1),this.g=r(2,3),this.b=r(4,5),this.a=n[6]?r(6,7)/255:1)}fromHsl({h:t,s:n,l:r,a:o}){if(this._h=t%360,this._s=n,this._l=r,this.a=typeof o==\"number\"?o:1,n<=0){let u=Xe(r*255);this.r=u,this.g=u,this.b=u}let a=0,i=0,s=0,l=t/60,c=(1-Math.abs(2*r-1))*n,f=c*(1-Math.abs(l%2-1));l>=0&&l<1?(a=c,i=f):l>=1&&l<2?(a=f,i=c):l>=2&&l<3?(i=c,s=f):l>=3&&l<4?(i=f,s=c):l>=4&&l<5?(a=f,s=c):l>=5&&l<6&&(a=c,s=f);let d=r-c/2;this.r=Xe((a+d)*255),this.g=Xe((i+d)*255),this.b=Xe((s+d)*255)}fromHsv({h:t,s:n,v:r,a:o}){this._h=t%360,this._s=n,this._v=r,this.a=typeof o==\"number\"?o:1;let a=Xe(r*255);if(this.r=a,this.g=a,this.b=a,n<=0)return;let i=t/60,s=Math.floor(i),l=i-s,c=Xe(r*(1-n)*255),f=Xe(r*(1-n*l)*255),d=Xe(r*(1-n*(1-l))*255);switch(s){case 0:this.g=d,this.b=c;break;case 1:this.r=f,this.b=c;break;case 2:this.r=c,this.b=d;break;case 3:this.r=c,this.g=f;break;case 4:this.r=d,this.g=c;break;case 5:default:this.g=c,this.b=f;break}}fromHsvString(t){let n=ri(t,Pl);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=ri(t,Pl);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=ri(t,(r,o)=>o.includes(\"%\")?Xe(r/100*255):r);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var Oo=2,_l=.16,Om=.05,Dm=.05,Im=.15,Vl=5,zl=4,Em=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function Bl(e,t,n){var r;return Math.round(e.h)>=60&&Math.round(e.h)<=240?r=n?Math.round(e.h)-Oo*t:Math.round(e.h)+Oo*t:r=n?Math.round(e.h)+Oo*t:Math.round(e.h)-Oo*t,r<0?r+=360:r>=360&&(r-=360),r}function Ll(e,t,n){if(e.h===0&&e.s===0)return e.s;var r;return n?r=e.s-_l*t:t===zl?r=e.s+_l:r=e.s+Om*t,r>1&&(r=1),n&&t===Vl&&r>.1&&(r=.1),r<.06&&(r=.06),Math.round(r*100)/100}function Ml(e,t,n){var r;return n?r=e.v+Dm*t:r=e.v-Im*t,r=Math.max(0,Math.min(1,r)),Math.round(r*100)/100}function Do(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],r=new un(e),o=r.toHsv(),a=Vl;a>0;a-=1){var i=new un({h:Bl(o,a,!0),s:Ll(o,a,!0),v:Ml(o,a,!0)});n.push(i)}n.push(r);for(var s=1;s<=zl;s+=1){var l=new un({h:Bl(o,s),s:Ll(o,s),v:Ml(o,s)});n.push(l)}return t.theme===\"dark\"?Em.map(function(c){var f=c.index,d=c.amount;return new un(t.backgroundColor||\"#141414\").mix(n[f],d).toHexString()}):n.map(function(c){return c.toHexString()})}var $l=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];$l.primary=$l[5];var Ul=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];Ul.primary=Ul[5];var Wl=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];Wl.primary=Wl[5];var Gl=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];Gl.primary=Gl[5];var jl=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];jl.primary=jl[5];var Hl=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Hl.primary=Hl[5];var ql=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];ql.primary=ql[5];var Yl=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Yl.primary=Yl[5];var Io=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];Io.primary=Io[5];var Kl=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];Kl.primary=Kl[5];var Xl=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];Xl.primary=Xl[5];var Jl=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Jl.primary=Jl[5];var Ql=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Ql.primary=Ql[5];var Zl=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Zl.primary=Zl[5];var Rl=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Rl.primary=Rl[5];var ed=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];ed.primary=ed[5];var td=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];td.primary=td[5];var nd=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];nd.primary=nd[5];var rd=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];rd.primary=rd[5];var od=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];od.primary=od[5];var ad=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];ad.primary=ad[5];var id=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];id.primary=id[5];var sd=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];sd.primary=sd[5];var ld=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];ld.primary=ld[5];var dd=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];dd.primary=dd[5];var cd=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];cd.primary=cd[5];function ud(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function xt(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Tm}function si(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function km(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function li(e){return Array.from((ii.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function gd(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!oi())return null;var n=t.csp,r=t.prepend,o=t.priority,a=o===void 0?0:o,i=km(r),s=i===\"prependQueue\",l=document.createElement(\"style\");l.setAttribute(fd,i),s&&a&&l.setAttribute(pd,\"\".concat(a)),n!=null&&n.nonce&&(l.nonce=n==null?void 0:n.nonce),l.innerHTML=e;var c=si(t),f=c.firstChild;if(r){if(s){var d=(t.styles||li(c)).filter(function(u){if(![\"prepend\",\"prependQueue\"].includes(u.getAttribute(fd)))return!1;var m=Number(u.getAttribute(pd)||0);return a>=m});if(d.length)return c.insertBefore(l,d[d.length-1].nextSibling),l}c.insertBefore(l,f)}else c.appendChild(l);return l}function Nm(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=si(t);return(t.styles||li(n)).find(function(r){return r.getAttribute(md(t))===e})}function Fm(e,t){var n=ii.get(e);if(!n||!ai(document,n)){var r=gd(\"\",t),o=r.parentNode;ii.set(e,o),e.removeChild(r)}}function hd(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=si(n),o=li(r),a=xt(xt({},n),{},{styles:o});Fm(r,a);var i=Nm(t,a);if(i){var s,l;if((s=a.csp)!==null&&s!==void 0&&s.nonce&&i.nonce!==((l=a.csp)===null||l===void 0?void 0:l.nonce)){var c;i.nonce=(c=a.csp)===null||c===void 0?void 0:c.nonce}return i.innerHTML!==e&&(i.innerHTML=e),i}var f=gd(e,a);return f.setAttribute(md(a),t),f}function bd(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Am(e){return bd(e)instanceof ShadowRoot}function xd(e){return Am(e)?bd(e):null}var di={},Pm=[],_m=function(t){Pm.push(t)};function Bm(e,t){if(0)var n}function Lm(e,t){if(0)var n}function Mm(){di={}}function vd(e,t,n){!t&&!di[n]&&(e(!1,n),di[n]=!0)}function Eo(e,t){vd(Bm,e,t)}function Vm(e,t){vd(Lm,e,t)}Eo.preMessage=_m;Eo.resetWarned=Mm;Eo.noteOnce=Vm;var yd=Eo;var fn=_(J());function zm(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Cd(e,t){yd(e,\"[@ant-design/icons] \".concat(t))}function ci(e){return zt(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(zt(e.icon)===\"object\"||typeof e.icon==\"function\")}function wd(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var r=e[n];switch(n){case\"class\":t.className=r,delete t.class;break;default:delete t[n],t[zm(n)]=r}return t},{})}function To(e,t,n){return n?fn.default.createElement(e.tag,xt(xt({key:t},wd(e.attrs)),n),(e.children||[]).map(function(r,o){return To(r,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(o))})):fn.default.createElement(e.tag,xt({key:t},wd(e.attrs)),(e.children||[]).map(function(r,o){return To(r,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(o))}))}function ui(e){return Do(e)[0]}function ko(e){return e?Array.isArray(e)?e:[e]:[]}var $m=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",Sd=function(t){var n=(0,fn.useContext)(yo),r=n.csp,o=n.prefixCls,a=n.layer,i=$m;o&&(i=i.replace(/anticon/g,o)),a&&(i=\"@layer \".concat(a,\" {\\n\").concat(i,\"\\n}\")),(0,fn.useEffect)(function(){var s=t.current,l=xd(s);hd(i,\"@ant-design-icons\",{prepend:!a,csp:r,attachTo:l})},[])};var Um=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],gr={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Wm(e){var t=e.primaryColor,n=e.secondaryColor;gr.primaryColor=t,gr.secondaryColor=n||ui(t),gr.calculated=!!n}function Gm(){return xt({},gr)}var No=function(t){var n=t.icon,r=t.className,o=t.onClick,a=t.style,i=t.primaryColor,s=t.secondaryColor,l=Co(t,Um),c=Od.useRef(),f=gr;if(i&&(f={primaryColor:i,secondaryColor:s||ui(i)}),Sd(c),Cd(ci(n),\"icon should be icon definiton, but got \".concat(n)),!ci(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=xt(xt({},d),{},{icon:d.icon(f.primaryColor,f.secondaryColor)})),To(d.icon,\"svg-\".concat(d.name),xt(xt({className:r,onClick:o,style:a,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},l),{},{ref:c}))};No.displayName=\"IconReact\";No.getTwoToneColors=Gm;No.setTwoToneColors=Wm;var hr=No;function fi(e){var t=ko(e),n=wo(t,2),r=n[0],o=n[1];return hr.setTwoToneColors({primaryColor:r,secondaryColor:o})}function Dd(){var e=hr.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var jm=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];fi(Io.primary);var Fo=pn.forwardRef(function(e,t){var n=e.className,r=e.icon,o=e.spin,a=e.rotate,i=e.tabIndex,s=e.onClick,l=e.twoToneColor,c=Co(e,jm),f=pn.useContext(yo),d=f.prefixCls,u=d===void 0?\"anticon\":d,m=f.rootClassName,h=(0,Id.default)(m,u,Ke(Ke({},\"\".concat(u,\"-\").concat(r.name),!!r.name),\"\".concat(u,\"-spin\"),!!o||r.name===\"loading\"),n),x=i;x===void 0&&s&&(x=-1);var v=a?{msTransform:\"rotate(\".concat(a,\"deg)\"),transform:\"rotate(\".concat(a,\"deg)\")}:void 0,y=ko(l),b=wo(y,2),S=b[0],w=b[1];return pn.createElement(\"span\",R({role:\"img\",\"aria-label\":r.name},c,{ref:t,tabIndex:x,onClick:s,className:h}),pn.createElement(hr,{icon:r,primaryColor:S,secondaryColor:w,style:v}))});Fo.displayName=\"AntdIcon\";Fo.getTwoToneColor=Dd;Fo.setTwoToneColor=fi;var oe=Fo;var Ao=_(J());var Hm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M917.7 148.8l-42.4-42.4c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-76.1 76.1a199.27 199.27 0 00-112.1-34.3c-51.2 0-102.4 19.5-141.5 58.6L432.3 308.7a8.03 8.03 0 000 11.3L704 591.7c1.6 1.6 3.6 2.3 5.7 2.3 2 0 4.1-.8 5.7-2.3l101.9-101.9c68.9-69 77-175.7 24.3-253.5l76.1-76.1c3.1-3.2 3.1-8.3 0-11.4zM769.1 441.7l-59.4 59.4-186.8-186.8 59.4-59.4c24.9-24.9 58.1-38.7 93.4-38.7 35.3 0 68.4 13.7 93.4 38.7 24.9 24.9 38.7 58.1 38.7 93.4 0 35.3-13.8 68.4-38.7 93.4zm-190.2 105a8.03 8.03 0 00-11.3 0L501 613.3 410.7 523l66.7-66.7c3.1-3.1 3.1-8.2 0-11.3L441 408.6a8.03 8.03 0 00-11.3 0L363 475.3l-43-43a7.85 7.85 0 00-5.7-2.3c-2 0-4.1.8-5.7 2.3L206.8 534.2c-68.9 69-77 175.7-24.3 253.5l-76.1 76.1a8.03 8.03 0 000 11.3l42.4 42.4c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l76.1-76.1c33.7 22.9 72.9 34.3 112.1 34.3 51.2 0 102.4-19.5 141.5-58.6l101.9-101.9c3.1-3.1 3.1-8.2 0-11.3l-43-43 66.7-66.7c3.1-3.1 3.1-8.2 0-11.3l-36.6-36.2zM441.7 769.1a131.32 131.32 0 01-93.4 38.7c-35.3 0-68.4-13.7-93.4-38.7a131.32 131.32 0 01-38.7-93.4c0-35.3 13.7-68.4 38.7-93.4l59.4-59.4 186.8 186.8-59.4 59.4z\"}}]},name:\"api\",theme:\"outlined\"},Ed=Hm;var qm=function(t,n){return Ao.createElement(oe,R({},t,{ref:n,icon:Ed}))},Ym=Ao.forwardRef(qm),Po=Ym;var _o=_(J());var Km={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M862 465.3h-81c-4.6 0-9 2-12.1 5.5L550 723.1V160c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v563.1L255.1 470.8c-3-3.5-7.4-5.5-12.1-5.5h-81c-6.8 0-10.5 8.1-6 13.2L487.9 861a31.96 31.96 0 0048.3 0L868 478.5c4.5-5.2.8-13.2-6-13.2z\"}}]},name:\"arrow-down\",theme:\"outlined\"},Td=Km;var Xm=function(t,n){return _o.createElement(oe,R({},t,{ref:n,icon:Td}))},Jm=_o.forwardRef(Xm),mn=Jm;var Bo=_(J());var Qm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M868 545.5L536.1 163a31.96 31.96 0 00-48.3 0L156 545.5a7.97 7.97 0 006 13.2h81c4.6 0 9-2 12.1-5.5L474 300.9V864c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V300.9l218.9 252.3c3 3.5 7.4 5.5 12.1 5.5h81c6.8 0 10.5-8 6-13.2z\"}}]},name:\"arrow-up\",theme:\"outlined\"},kd=Qm;var Zm=function(t,n){return Bo.createElement(oe,R({},t,{ref:n,icon:kd}))},Rm=Bo.forwardRef(Zm),gn=Rm;var Lo=_(J());var eg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"defs\",attrs:{},children:[{tag:\"style\",attrs:{}}]},{tag:\"path\",attrs:{d:\"M899.1 869.6l-53-305.6H864c14.4 0 26-11.6 26-26V346c0-14.4-11.6-26-26-26H618V138c0-14.4-11.6-26-26-26H432c-14.4 0-26 11.6-26 26v182H160c-14.4 0-26 11.6-26 26v192c0 14.4 11.6 26 26 26h17.9l-53 305.6a25.95 25.95 0 0025.6 30.4h723c1.5 0 3-.1 4.4-.4a25.88 25.88 0 0021.2-30zM204 390h272V182h72v208h272v104H204V390zm468 440V674c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v156H416V674c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v156H202.8l45.1-260H776l45.1 260H672z\"}}]},name:\"clear\",theme:\"outlined\"},Nd=eg;var tg=function(t,n){return Lo.createElement(oe,R({},t,{ref:n,icon:Nd}))},ng=Lo.forwardRef(tg),Wn=ng;var Mo=_(J());var rg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},Fd=rg;var og=function(t,n){return Mo.createElement(oe,R({},t,{ref:n,icon:Fd}))},ag=Mo.forwardRef(og),br=ag;var Vo=_(J());var ig={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\"}}]},name:\"delete\",theme:\"outlined\"},Ad=ig;var sg=function(t,n){return Vo.createElement(oe,R({},t,{ref:n,icon:Ad}))},lg=Vo.forwardRef(sg),je=lg;var zo=_(J());var dg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\"}}]},name:\"down\",theme:\"outlined\"},Pd=dg;var cg=function(t,n){return zo.createElement(oe,R({},t,{ref:n,icon:Pd}))},ug=zo.forwardRef(cg),Ft=ug;var $o=_(J());var fg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},_d=fg;var pg=function(t,n){return $o.createElement(oe,R({},t,{ref:n,icon:_d}))},mg=$o.forwardRef(pg),xr=mg;var Uo=_(J());var gg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z\"}}]},name:\"folder-open\",theme:\"outlined\"},Bd=gg;var hg=function(t,n){return Uo.createElement(oe,R({},t,{ref:n,icon:Bd}))},bg=Uo.forwardRef(hg),hn=bg;var Wo=_(J());var xg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z\"}}]},name:\"folder\",theme:\"outlined\"},Ld=xg;var vg=function(t,n){return Wo.createElement(oe,R({},t,{ref:n,icon:Ld}))},yg=Wo.forwardRef(vg),pi=yg;var Go=_(J());var wg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M854.4 800.9c.2-.3.5-.6.7-.9C920.6 722.1 960 621.7 960 512s-39.4-210.1-104.8-288c-.2-.3-.5-.5-.7-.8-1.1-1.3-2.1-2.5-3.2-3.7-.4-.5-.8-.9-1.2-1.4l-4.1-4.7-.1-.1c-1.5-1.7-3.1-3.4-4.6-5.1l-.1-.1c-3.2-3.4-6.4-6.8-9.7-10.1l-.1-.1-4.8-4.8-.3-.3c-1.5-1.5-3-2.9-4.5-4.3-.5-.5-1-1-1.6-1.5-1-1-2-1.9-3-2.8-.3-.3-.7-.6-1-1C736.4 109.2 629.5 64 512 64s-224.4 45.2-304.3 119.2c-.3.3-.7.6-1 1-1 .9-2 1.9-3 2.9-.5.5-1 1-1.6 1.5-1.5 1.4-3 2.9-4.5 4.3l-.3.3-4.8 4.8-.1.1c-3.3 3.3-6.5 6.7-9.7 10.1l-.1.1c-1.6 1.7-3.1 3.4-4.6 5.1l-.1.1c-1.4 1.5-2.8 3.1-4.1 4.7-.4.5-.8.9-1.2 1.4-1.1 1.2-2.1 2.5-3.2 3.7-.2.3-.5.5-.7.8C103.4 301.9 64 402.3 64 512s39.4 210.1 104.8 288c.2.3.5.6.7.9l3.1 3.7c.4.5.8.9 1.2 1.4l4.1 4.7c0 .1.1.1.1.2 1.5 1.7 3 3.4 4.6 5l.1.1c3.2 3.4 6.4 6.8 9.6 10.1l.1.1c1.6 1.6 3.1 3.2 4.7 4.7l.3.3c3.3 3.3 6.7 6.5 10.1 9.6 80.1 74 187 119.2 304.5 119.2s224.4-45.2 304.3-119.2a300 300 0 0010-9.6l.3-.3c1.6-1.6 3.2-3.1 4.7-4.7l.1-.1c3.3-3.3 6.5-6.7 9.6-10.1l.1-.1c1.5-1.7 3.1-3.3 4.6-5 0-.1.1-.1.1-.2 1.4-1.5 2.8-3.1 4.1-4.7.4-.5.8-.9 1.2-1.4a99 99 0 003.3-3.7zm4.1-142.6c-13.8 32.6-32 62.8-54.2 90.2a444.07 444.07 0 00-81.5-55.9c11.6-46.9 18.8-98.4 20.7-152.6H887c-3 40.9-12.6 80.6-28.5 118.3zM887 484H743.5c-1.9-54.2-9.1-105.7-20.7-152.6 29.3-15.6 56.6-34.4 81.5-55.9A373.86 373.86 0 01887 484zM658.3 165.5c39.7 16.8 75.8 40 107.6 69.2a394.72 394.72 0 01-59.4 41.8c-15.7-45-35.8-84.1-59.2-115.4 3.7 1.4 7.4 2.9 11 4.4zm-90.6 700.6c-9.2 7.2-18.4 12.7-27.7 16.4V697a389.1 389.1 0 01115.7 26.2c-8.3 24.6-17.9 47.3-29 67.8-17.4 32.4-37.8 58.3-59 75.1zm59-633.1c11 20.6 20.7 43.3 29 67.8A389.1 389.1 0 01540 327V141.6c9.2 3.7 18.5 9.1 27.7 16.4 21.2 16.7 41.6 42.6 59 75zM540 640.9V540h147.5c-1.6 44.2-7.1 87.1-16.3 127.8l-.3 1.2A445.02 445.02 0 00540 640.9zm0-156.9V383.1c45.8-2.8 89.8-12.5 130.9-28.1l.3 1.2c9.2 40.7 14.7 83.5 16.3 127.8H540zm-56 56v100.9c-45.8 2.8-89.8 12.5-130.9 28.1l-.3-1.2c-9.2-40.7-14.7-83.5-16.3-127.8H484zm-147.5-56c1.6-44.2 7.1-87.1 16.3-127.8l.3-1.2c41.1 15.6 85 25.3 130.9 28.1V484H336.5zM484 697v185.4c-9.2-3.7-18.5-9.1-27.7-16.4-21.2-16.7-41.7-42.7-59.1-75.1-11-20.6-20.7-43.3-29-67.8 37.2-14.6 75.9-23.3 115.8-26.1zm0-370a389.1 389.1 0 01-115.7-26.2c8.3-24.6 17.9-47.3 29-67.8 17.4-32.4 37.8-58.4 59.1-75.1 9.2-7.2 18.4-12.7 27.7-16.4V327zM365.7 165.5c3.7-1.5 7.3-3 11-4.4-23.4 31.3-43.5 70.4-59.2 115.4-21-12-40.9-26-59.4-41.8 31.8-29.2 67.9-52.4 107.6-69.2zM165.5 365.7c13.8-32.6 32-62.8 54.2-90.2 24.9 21.5 52.2 40.3 81.5 55.9-11.6 46.9-18.8 98.4-20.7 152.6H137c3-40.9 12.6-80.6 28.5-118.3zM137 540h143.5c1.9 54.2 9.1 105.7 20.7 152.6a444.07 444.07 0 00-81.5 55.9A373.86 373.86 0 01137 540zm228.7 318.5c-39.7-16.8-75.8-40-107.6-69.2 18.5-15.8 38.4-29.7 59.4-41.8 15.7 45 35.8 84.1 59.2 115.4-3.7-1.4-7.4-2.9-11-4.4zm292.6 0c-3.7 1.5-7.3 3-11 4.4 23.4-31.3 43.5-70.4 59.2-115.4 21 12 40.9 26 59.4 41.8a373.81 373.81 0 01-107.6 69.2z\"}}]},name:\"global\",theme:\"outlined\"},Md=wg;var Cg=function(t,n){return Go.createElement(oe,R({},t,{ref:n,icon:Md}))},Sg=Go.forwardRef(Cg),bn=Sg;var jo=_(J());var Og={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}},{tag:\"path\",attrs:{d:\"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z\"}}]},name:\"info-circle\",theme:\"outlined\"},Vd=Og;var Dg=function(t,n){return jo.createElement(oe,R({},t,{ref:n,icon:Vd}))},Ig=jo.forwardRef(Dg),en=Ig;var Ho=_(J());var Eg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M608 112c-167.9 0-304 136.1-304 304 0 70.3 23.9 135 63.9 186.5l-41.1 41.1-62.3-62.3a8.15 8.15 0 00-11.4 0l-39.8 39.8a8.15 8.15 0 000 11.4l62.3 62.3-44.9 44.9-62.3-62.3a8.15 8.15 0 00-11.4 0l-39.8 39.8a8.15 8.15 0 000 11.4l62.3 62.3-65.3 65.3a8.03 8.03 0 000 11.3l42.3 42.3c3.1 3.1 8.2 3.1 11.3 0l253.6-253.6A304.06 304.06 0 00608 720c167.9 0 304-136.1 304-304S775.9 112 608 112zm161.2 465.2C726.2 620.3 668.9 644 608 644c-60.9 0-118.2-23.7-161.2-66.8-43.1-43-66.8-100.3-66.8-161.2 0-60.9 23.7-118.2 66.8-161.2 43-43.1 100.3-66.8 161.2-66.8 60.9 0 118.2 23.7 161.2 66.8 43.1 43 66.8 100.3 66.8 161.2 0 60.9-23.7 118.2-66.8 161.2z\"}}]},name:\"key\",theme:\"outlined\"},zd=Eg;var Tg=function(t,n){return Ho.createElement(oe,R({},t,{ref:n,icon:zd}))},kg=Ho.forwardRef(Tg),Gn=kg;var qo=_(J());var Ng={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},$d=Ng;var Fg=function(t,n){return qo.createElement(oe,R({},t,{ref:n,icon:$d}))},Ag=qo.forwardRef(Fg),vr=Ag;var Yo=_(J());var Pg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 464h-68V240c0-70.7-57.3-128-128-128H388c-70.7 0-128 57.3-128 128v224h-68c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V496c0-17.7-14.3-32-32-32zM332 240c0-30.9 25.1-56 56-56h248c30.9 0 56 25.1 56 56v224H332V240zm460 600H232V536h560v304zM484 701v53c0 4.4 3.6 8 8 8h40c4.4 0 8-3.6 8-8v-53a48.01 48.01 0 10-56 0z\"}}]},name:\"lock\",theme:\"outlined\"},Ud=Pg;var _g=function(t,n){return Yo.createElement(oe,R({},t,{ref:n,icon:Ud}))},Bg=Yo.forwardRef(_g),yr=Bg;var Ko=_(J());var Lg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},Wd=Lg;var Mg=function(t,n){return Ko.createElement(oe,R({},t,{ref:n,icon:Wd}))},Vg=Ko.forwardRef(Mg),xn=Vg;var Xo=_(J());var zg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},Gd=zg;var $g=function(t,n){return Xo.createElement(oe,R({},t,{ref:n,icon:Gd}))},Ug=Xo.forwardRef($g),nt=Ug;var Jo=_(J());var Wg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z\"}}]},name:\"reload\",theme:\"outlined\"},jd=Wg;var Gg=function(t,n){return Jo.createElement(oe,R({},t,{ref:n,icon:jd}))},jg=Jo.forwardRef(Gg),vn=jg;var Qo=_(J());var Hg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z\"}}]},name:\"safety-certificate\",theme:\"outlined\"},Hd=Hg;var qg=function(t,n){return Qo.createElement(oe,R({},t,{ref:n,icon:Hd}))},Yg=Qo.forwardRef(qg),jn=Yg;var Zo=_(J());var Kg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M893.3 293.3L730.7 130.7c-7.5-7.5-16.7-13-26.7-16V112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V338.5c0-17-6.7-33.2-18.7-45.2zM384 184h256v104H384V184zm456 656H184V184h136v136c0 17.7 14.3 32 32 32h320c17.7 0 32-14.3 32-32V205.8l136 136V840zM512 442c-79.5 0-144 64.5-144 144s64.5 144 144 144 144-64.5 144-144-64.5-144-144-144zm0 224c-44.2 0-80-35.8-80-80s35.8-80 80-80 80 35.8 80 80-35.8 80-80 80z\"}}]},name:\"save\",theme:\"outlined\"},qd=Kg;var Xg=function(t,n){return Zo.createElement(oe,R({},t,{ref:n,icon:qd}))},Jg=Zo.forwardRef(Xg),tn=Jg;var Ro=_(J());var Qg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},Yd=Qg;var Zg=function(t,n){return Ro.createElement(oe,R({},t,{ref:n,icon:Yd}))},Rg=Ro.forwardRef(Zg),wr=Rg;var ea=_(J());var eh={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M890.5 755.3L537.9 269.2c-12.8-17.6-39-17.6-51.7 0L133.5 755.3A8 8 0 00140 768h75c5.1 0 9.9-2.5 12.9-6.6L512 369.8l284.1 391.6c3 4.1 7.8 6.6 12.9 6.6h75c6.5 0 10.3-7.4 6.5-12.7z\"}}]},name:\"up\",theme:\"outlined\"},Kd=eh;var th=function(t,n){return ea.createElement(oe,R({},t,{ref:n,icon:Kd}))},nh=ea.forwardRef(th),At=nh;var ta=_(J());var rh={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z\"}}]},name:\"upload\",theme:\"outlined\"},Xd=rh;var oh=function(t,n){return ta.createElement(oe,R({},t,{ref:n,icon:Xd}))},ah=ta.forwardRef(oh),Cr=ah;var na=_(J());var ih={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},Jd=ih;var sh=function(t,n){return na.createElement(oe,R({},t,{ref:n,icon:Jd}))},lh=na.forwardRef(sh),Hn=lh;var A=_(J()),Dn=_(vo());var Me=_(J());function Zd(){for(var e=arguments.length,t=new Array(e),n=0;nr=>{t.forEach(o=>o(r))},t)}var Sr=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function yn(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function ra(e){return\"nodeType\"in e}function st(e){var t,n;return e?yn(e)?e:ra(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function oa(e){let{Document:t}=st(e);return e instanceof t}function qn(e){return yn(e)?!1:e instanceof st(e).HTMLElement}function gi(e){return e instanceof st(e).SVGElement}function wn(e){return e?yn(e)?e.document:ra(e)?oa(e)?e:qn(e)||gi(e)?e.ownerDocument:document:document:document}var Dt=Sr?Me.useLayoutEffect:Me.useEffect;function aa(e){let t=(0,Me.useRef)(e);return Dt(()=>{t.current=e}),(0,Me.useCallback)(function(){for(var n=arguments.length,r=new Array(n),o=0;o{e.current=setInterval(r,o)},[]),n=(0,Me.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function Yn(e,t){t===void 0&&(t=[e]);let n=(0,Me.useRef)(e);return Dt(()=>{n.current!==e&&(n.current=e)},t),n}function Kn(e,t){let n=(0,Me.useRef)();return(0,Me.useMemo)(()=>{let r=e(n.current);return n.current=r,r},[...t])}function Or(e){let t=aa(e),n=(0,Me.useRef)(null),r=(0,Me.useCallback)(o=>{o!==n.current&&(t==null||t(o,n.current)),n.current=o},[]);return[n,r]}function ia(e){let t=(0,Me.useRef)();return(0,Me.useEffect)(()=>{t.current=e},[e]),t.current}var mi={};function Cn(e,t){return(0,Me.useMemo)(()=>{if(t)return t;let n=mi[e]==null?0:mi[e]+1;return mi[e]=n,e+\"-\"+n},[e,t])}function ec(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o{let s=Object.entries(i);for(let[l,c]of s){let f=a[l];f!=null&&(a[l]=f+e*c)}return a},C({},t))}}var Sn=ec(1),Xn=ec(-1);function dh(e){return\"clientX\"in e&&\"clientY\"in e}function Dr(e){if(!e)return!1;let{KeyboardEvent:t}=st(e.target);return t&&e instanceof t}function ch(e){if(!e)return!1;let{TouchEvent:t}=st(e.target);return t&&e instanceof t}function Ir(e){if(ch(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return dh(e)?{x:e.clientX,y:e.clientY}:null}var $t=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[$t.Translate.toString(e),$t.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+\" \"+n+\"ms \"+r}}}),Qd=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function tc(e){return e.matches(Qd)?e:e.querySelector(Qd)}var On=_(J()),uh={display:\"none\"};function nc(e){let{id:t,value:n}=e;return On.default.createElement(\"div\",{id:t,style:uh},n)}function rc(e){let{id:t,announcement:n,ariaLiveType:r=\"assertive\"}=e,o={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return On.default.createElement(\"div\",{id:t,style:o,role:\"status\",\"aria-live\":r,\"aria-atomic\":!0},n)}function oc(){let[e,t]=(0,On.useState)(\"\");return{announce:(0,On.useCallback)(r=>{r!=null&&t(r)},[]),announcement:e}}var gc=(0,A.createContext)(null);function fh(e){let t=(0,A.useContext)(gc);(0,A.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function ph(){let[e]=(0,A.useState)(()=>new Set),t=(0,A.useCallback)(r=>(e.add(r),()=>e.delete(r)),[e]);return[(0,A.useCallback)(r=>{let{type:o,event:a}=r;e.forEach(i=>{var s;return(s=i[o])==null?void 0:s.call(i,a)})},[e]),t]}var mh={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},gh={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function hh(e){let{announcements:t=gh,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=mh}=e,{announce:a,announcement:i}=oc(),s=Cn(\"DndLiveRegion\"),[l,c]=(0,A.useState)(!1);if((0,A.useEffect)(()=>{c(!0)},[]),fh((0,A.useMemo)(()=>({onDragStart(d){let{active:u}=d;a(t.onDragStart({active:u}))},onDragMove(d){let{active:u,over:m}=d;t.onDragMove&&a(t.onDragMove({active:u,over:m}))},onDragOver(d){let{active:u,over:m}=d;a(t.onDragOver({active:u,over:m}))},onDragEnd(d){let{active:u,over:m}=d;a(t.onDragEnd({active:u,over:m}))},onDragCancel(d){let{active:u,over:m}=d;a(t.onDragCancel({active:u,over:m}))}}),[a,t])),!l)return null;let f=A.default.createElement(A.default.Fragment,null,A.default.createElement(nc,{id:r,value:o.draggable}),A.default.createElement(rc,{id:s,announcement:i}));return n?(0,Dn.createPortal)(f,n):f}var He;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(He||(He={}));function la(){}function rn(e,t){return(0,A.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function Fr(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(r=>r!=null),[...t])}var Pt=Object.freeze({x:0,y:0});function bh(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function hc(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function xh(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),i=o-r,s=a-n;if(r{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,o=[];for(let a of r){let{id:i}=a,s=n.get(i);if(s){let l=xh(s,t);l>0&&o.push({id:i,data:{droppableContainer:a,value:l}})}}return o.sort(bh)};function yh(e,t,n){return I(C({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function bc(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Pt}function wh(e){return function(n){for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;aI(C({},i),{top:i.top+e*s.y,bottom:i.bottom+e*s.y,left:i.left+e*s.x,right:i.right+e*s.x}),C({},n))}}var Ch=wh(1);function Sh(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Oh(e,t,n){let r=Sh(t);if(!r)return e;let{scaleX:o,scaleY:a,x:i,y:s}=r,l=e.left-i-(1-o)*parseFloat(n),c=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(\" \")+1)),f=o?e.width/o:e.width,d=a?e.height/a:e.height;return{width:f,height:d,top:c,right:l+f,bottom:c+d,left:l}}var Dh={ignoreTransform:!1};function Tn(e,t){t===void 0&&(t=Dh);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:c,transformOrigin:f}=st(e).getComputedStyle(e);c&&(n=Oh(n,c,f))}let{top:r,left:o,width:a,height:i,bottom:s,right:l}=n;return{top:r,left:o,width:a,height:i,bottom:s,right:l}}function ac(e){return Tn(e,{ignoreTransform:!0})}function Ih(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Eh(e,t){return t===void 0&&(t=st(e).getComputedStyle(e)),t.position===\"fixed\"}function Th(e,t){t===void 0&&(t=st(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(o=>{let a=t[o];return typeof a==\"string\"?n.test(a):!1})}function fa(e,t){let n=[];function r(o){if(t!=null&&n.length>=t||!o)return n;if(oa(o)&&o.scrollingElement!=null&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!qn(o)||gi(o)||n.includes(o))return n;let a=st(e).getComputedStyle(o);return o!==e&&Th(o,a)&&n.push(o),Eh(o,a)?n:r(o.parentNode)}return e?r(e):n}function xc(e){let[t]=fa(e,1);return t!=null?t:null}function hi(e){return!Sr||!e?null:yn(e)?e:ra(e)?oa(e)||e===wn(e).scrollingElement?window:qn(e)?e:null:null}function vc(e){return yn(e)?e.scrollX:e.scrollLeft}function yc(e){return yn(e)?e.scrollY:e.scrollTop}function vi(e){return{x:vc(e),y:yc(e)}}var Je;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(Je||(Je={}));function wc(e){return!Sr||!e?!1:e===document.scrollingElement}function Cc(e){let t={x:0,y:0},n=wc(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},o=e.scrollTop<=t.y,a=e.scrollLeft<=t.x,i=e.scrollTop>=r.y,s=e.scrollLeft>=r.x;return{isTop:o,isLeft:a,isBottom:i,isRight:s,maxScroll:r,minScroll:t}}var kh={x:.2,y:.2};function Nh(e,t,n,r,o){let{top:a,left:i,right:s,bottom:l}=n;r===void 0&&(r=10),o===void 0&&(o=kh);let{isTop:c,isBottom:f,isLeft:d,isRight:u}=Cc(e),m={x:0,y:0},h={x:0,y:0},x={height:t.height*o.y,width:t.width*o.x};return!c&&a<=t.top+x.height?(m.y=Je.Backward,h.y=r*Math.abs((t.top+x.height-a)/x.height)):!f&&l>=t.bottom-x.height&&(m.y=Je.Forward,h.y=r*Math.abs((t.bottom-x.height-l)/x.height)),!u&&s>=t.right-x.width?(m.x=Je.Forward,h.x=r*Math.abs((t.right-x.width-s)/x.width)):!d&&i<=t.left+x.width&&(m.x=Je.Backward,h.x=r*Math.abs((t.left+x.width-i)/x.width)),{direction:m,speed:h}}function Fh(e){if(e===document.scrollingElement){let{innerWidth:a,innerHeight:i}=window;return{top:0,left:0,right:a,bottom:i,width:a,height:i}}let{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function Sc(e){return e.reduce((t,n)=>Sn(t,vi(n)),Pt)}function Ah(e){return e.reduce((t,n)=>t+vc(n),0)}function Ph(e){return e.reduce((t,n)=>t+yc(n),0)}function _h(e,t){if(t===void 0&&(t=Tn),!e)return;let{top:n,left:r,bottom:o,right:a}=t(e);xc(e)&&(o<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Bh=[[\"x\",[\"left\",\"right\"],Ah],[\"y\",[\"top\",\"bottom\"],Ph]],Tr=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let r=fa(n),o=Sc(r);this.rect=C({},t),this.width=t.width,this.height=t.height;for(let[a,i,s]of Bh)for(let l of i)Object.defineProperty(this,l,{get:()=>{let c=s(r),f=o[a]-c;return this.rect[l]+f},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},In=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var r;return(r=this.target)==null?void 0:r.removeEventListener(...n)})},this.target=t}add(t,n,r){var o;(o=this.target)==null||o.addEventListener(t,n,r),this.listeners.push([t,n,r])}};function Lh(e){let{EventTarget:t}=st(e);return e instanceof t?e:wn(e)}function bi(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+r**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&r>t.y:\"x\"in t?n>t.x:\"y\"in t?r>t.y:!1}var It;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(It||(It={}));function ic(e){e.preventDefault()}function Mh(e){e.stopPropagation()}var Ce;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(Ce||(Ce={}));var Oc={start:[Ce.Space,Ce.Enter],cancel:[Ce.Esc],end:[Ce.Space,Ce.Enter,Ce.Tab]},Vh=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case Ce.Right:return I(C({},n),{x:n.x+25});case Ce.Left:return I(C({},n),{x:n.x-25});case Ce.Down:return I(C({},n),{y:n.y+25});case Ce.Up:return I(C({},n),{y:n.y-25})}},da=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new In(wn(n)),this.windowListeners=new In(st(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(It.Resize,this.handleCancel),this.windowListeners.add(It.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(It.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,r=t.node.current;r&&_h(r),n(Pt)}handleKeyDown(t){if(Dr(t)){let{active:n,context:r,options:o}=this.props,{keyboardCodes:a=Oc,coordinateGetter:i=Vh,scrollBehavior:s=\"smooth\"}=o,{code:l}=t;if(a.end.includes(l)){this.handleEnd(t);return}if(a.cancel.includes(l)){this.handleCancel(t);return}let{collisionRect:c}=r.current,f=c?{x:c.left,y:c.top}:Pt;this.referenceCoordinates||(this.referenceCoordinates=f);let d=i(t,{active:n,context:r.current,currentCoordinates:f});if(d){let u=Xn(d,f),m={x:0,y:0},{scrollableAncestors:h}=r.current;for(let x of h){let v=t.code,{isTop:y,isRight:b,isLeft:S,isBottom:w,maxScroll:D,minScroll:O}=Cc(x),F=Fh(x),T={x:Math.min(v===Ce.Right?F.right-F.width/2:F.right,Math.max(v===Ce.Right?F.left:F.left+F.width/2,d.x)),y:Math.min(v===Ce.Down?F.bottom-F.height/2:F.bottom,Math.max(v===Ce.Down?F.top:F.top+F.height/2,d.y))},P=v===Ce.Right&&!b||v===Ce.Left&&!S,V=v===Ce.Down&&!w||v===Ce.Up&&!y;if(P&&T.x!==d.x){let E=x.scrollLeft+u.x,N=v===Ce.Right&&E<=D.x||v===Ce.Left&&E>=O.x;if(N&&!u.y){x.scrollTo({left:E,behavior:s});return}N?m.x=x.scrollLeft-E:m.x=v===Ce.Right?x.scrollLeft-D.x:x.scrollLeft-O.x,m.x&&x.scrollBy({left:-m.x,behavior:s});break}else if(V&&T.y!==d.y){let E=x.scrollTop+u.y,N=v===Ce.Down&&E<=D.y||v===Ce.Up&&E>=O.y;if(N&&!u.x){x.scrollTo({top:E,behavior:s});return}N?m.y=x.scrollTop-E:m.y=v===Ce.Down?x.scrollTop-D.y:x.scrollTop-O.y,m.y&&x.scrollBy({top:-m.y,behavior:s});break}}this.handleMove(t,Sn(Xn(d,this.referenceCoordinates),m))}}}handleMove(t,n){let{onMove:r}=this.props;t.preventDefault(),r(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};da.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:r=Oc,onActivation:o}=t,{active:a}=n,{code:i}=e.nativeEvent;if(r.start.includes(i)){let s=a.activatorNode.current;return s&&e.target!==s?!1:(e.preventDefault(),o==null||o({event:e.nativeEvent}),!0)}return!1}}];function sc(e){return!!(e&&\"distance\"in e)}function lc(e){return!!(e&&\"delay\"in e)}var kr=class{constructor(t,n,r){var o;r===void 0&&(r=Lh(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:a}=t,{target:i}=a;this.props=t,this.events=n,this.document=wn(i),this.documentListeners=new In(this.document),this.listeners=new In(r),this.windowListeners=new In(st(i)),this.initialCoordinates=(o=Ir(a))!=null?o:Pt,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:r}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(It.Resize,this.handleCancel),this.windowListeners.add(It.DragStart,ic),this.windowListeners.add(It.VisibilityChange,this.handleCancel),this.windowListeners.add(It.ContextMenu,ic),this.documentListeners.add(It.Keydown,this.handleKeydown),n){if(r!=null&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(lc(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(sc(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:r,onPending:o}=this.props;o(r,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(It.Click,Mh,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(It.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:r,initialCoordinates:o,props:a}=this,{onMove:i,options:{activationConstraint:s}}=a;if(!o)return;let l=(n=Ir(t))!=null?n:Pt,c=Xn(o,l);if(!r&&s){if(sc(s)){if(s.tolerance!=null&&bi(c,s.tolerance))return this.handleCancel();if(bi(c,s.distance))return this.handleStart()}if(lc(s)&&bi(c,s.tolerance))return this.handleCancel();this.handlePending(s,c);return}t.cancelable&&t.preventDefault(),i(l)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===Ce.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},zh={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},ca=class extends kr{constructor(t){let{event:n}=t,r=wn(n.target);super(t,zh,r)}};ca.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r==null||r({event:n}),!0)}}];var $h={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},yi;(function(e){e[e.RightClick=2]=\"RightClick\"})(yi||(yi={}));var jt=class extends kr{constructor(t){super(t,$h,wn(t.event.target))}};jt.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button===yi.RightClick?!1:(r==null||r({event:n}),!0)}}];var xi={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},Ht=class extends kr{constructor(t){super(t,xi)}static setup(){return window.addEventListener(xi.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(xi.move.name,t)};function t(){}}};Ht.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:o}=n;return o.length>1?!1:(r==null||r({event:n}),!0)}}];var Er;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(Er||(Er={}));var ua;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(ua||(ua={}));function Uh(e){let{acceleration:t,activator:n=Er.Pointer,canScroll:r,draggingRect:o,enabled:a,interval:i=5,order:s=ua.TreeOrder,pointerCoordinates:l,scrollableAncestors:c,scrollableAncestorRects:f,delta:d,threshold:u}=e,m=Gh({delta:d,disabled:!a}),[h,x]=Rd(),v=(0,A.useRef)({x:0,y:0}),y=(0,A.useRef)({x:0,y:0}),b=(0,A.useMemo)(()=>{switch(n){case Er.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case Er.DraggableRect:return o}},[n,o,l]),S=(0,A.useRef)(null),w=(0,A.useCallback)(()=>{let O=S.current;if(!O)return;let F=v.current.x*y.current.x,T=v.current.y*y.current.y;O.scrollBy(F,T)},[]),D=(0,A.useMemo)(()=>s===ua.TreeOrder?[...c].reverse():c,[s,c]);(0,A.useEffect)(()=>{if(!a||!c.length||!b){x();return}for(let O of D){if((r==null?void 0:r(O))===!1)continue;let F=c.indexOf(O),T=f[F];if(!T)continue;let{direction:P,speed:V}=Nh(O,T,b,t,u);for(let E of[\"x\",\"y\"])m[E][P[E]]||(V[E]=0,P[E]=0);if(V.x>0||V.y>0){x(),S.current=O,h(w,i),v.current=V,y.current=P;return}}v.current={x:0,y:0},y.current={x:0,y:0},x()},[t,w,r,x,a,i,JSON.stringify(b),JSON.stringify(m),h,c,D,f,JSON.stringify(u)])}var Wh={x:{[Je.Backward]:!1,[Je.Forward]:!1},y:{[Je.Backward]:!1,[Je.Forward]:!1}};function Gh(e){let{delta:t,disabled:n}=e,r=ia(t);return Kn(o=>{if(n||!r||!o)return Wh;let a={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[Je.Backward]:o.x[Je.Backward]||a.x===-1,[Je.Forward]:o.x[Je.Forward]||a.x===1},y:{[Je.Backward]:o.y[Je.Backward]||a.y===-1,[Je.Forward]:o.y[Je.Forward]||a.y===1}}},[n,t,r])}function jh(e,t){let n=t!=null?e.get(t):void 0,r=n?n.node.current:null;return Kn(o=>{var a;return t==null?null:(a=r!=null?r:o)!=null?a:null},[r,t])}function Hh(e,t){return(0,A.useMemo)(()=>e.reduce((n,r)=>{let{sensor:o}=r,a=o.activators.map(i=>({eventName:i.eventName,handler:t(i.handler,r)}));return[...n,...a]},[]),[e,t])}var Nr;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Nr||(Nr={}));var wi;(function(e){e.Optimized=\"optimized\"})(wi||(wi={}));var dc=new Map;function qh(e,t){let{dragging:n,dependencies:r,config:o}=t,[a,i]=(0,A.useState)(null),{frequency:s,measure:l,strategy:c}=o,f=(0,A.useRef)(e),d=v(),u=Yn(d),m=(0,A.useCallback)(function(y){y===void 0&&(y=[]),!u.current&&i(b=>b===null?y:b.concat(y.filter(S=>!b.includes(S))))},[u]),h=(0,A.useRef)(null),x=Kn(y=>{if(d&&!n)return dc;if(!y||y===dc||f.current!==e||a!=null){let b=new Map;for(let S of e){if(!S)continue;if(a&&a.length>0&&!a.includes(S.id)&&S.rect.current){b.set(S.id,S.rect.current);continue}let w=S.node.current,D=w?new Tr(l(w),w):null;S.rect.current=D,D&&b.set(S.id,D)}return b}return y},[e,a,n,d,l]);return(0,A.useEffect)(()=>{f.current=e},[e]),(0,A.useEffect)(()=>{d||m()},[n,d]),(0,A.useEffect)(()=>{a&&a.length>0&&i(null)},[JSON.stringify(a)]),(0,A.useEffect)(()=>{d||typeof s!=\"number\"||h.current!==null||(h.current=setTimeout(()=>{m(),h.current=null},s))},[s,d,m,...r]),{droppableRects:x,measureDroppableContainers:m,measuringScheduled:a!=null};function v(){switch(c){case Nr.Always:return!1;case Nr.BeforeDragging:return n;default:return!n}}}function Dc(e,t){return Kn(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function Yh(e,t){return Dc(e,t)}function Kh(e){let{callback:t,disabled:n}=e,r=aa(t),o=(0,A.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:a}=window;return new a(r)},[r,n]);return(0,A.useEffect)(()=>()=>o==null?void 0:o.disconnect(),[o]),o}function pa(e){let{callback:t,disabled:n}=e,r=aa(t),o=(0,A.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:a}=window;return new a(r)},[n]);return(0,A.useEffect)(()=>()=>o==null?void 0:o.disconnect(),[o]),o}function Xh(e){return new Tr(Tn(e),e)}function cc(e,t,n){t===void 0&&(t=Xh);let[r,o]=(0,A.useState)(null);function a(){o(l=>{if(!e)return null;if(e.isConnected===!1){var c;return(c=l!=null?l:n)!=null?c:null}let f=t(e);return JSON.stringify(l)===JSON.stringify(f)?l:f})}let i=Kh({callback(l){if(e)for(let c of l){let{type:f,target:d}=c;if(f===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){a();break}}}}),s=pa({callback:a});return Dt(()=>{a(),e?(s==null||s.observe(e),i==null||i.observe(document.body,{childList:!0,subtree:!0})):(s==null||s.disconnect(),i==null||i.disconnect())},[e]),r}function Jh(e){let t=Dc(e);return bc(e,t)}var uc=[];function Qh(e){let t=(0,A.useRef)(e),n=Kn(r=>e?r&&r!==uc&&e&&t.current&&e.parentNode===t.current.parentNode?r:fa(e):uc,[e]);return(0,A.useEffect)(()=>{t.current=e},[e]),n}function Zh(e){let[t,n]=(0,A.useState)(null),r=(0,A.useRef)(e),o=(0,A.useCallback)(a=>{let i=hi(a.target);i&&n(s=>s?(s.set(i,vi(i)),new Map(s)):null)},[]);return(0,A.useEffect)(()=>{let a=r.current;if(e!==a){i(a);let s=e.map(l=>{let c=hi(l);return c?(c.addEventListener(\"scroll\",o,{passive:!0}),[c,vi(c)]):null}).filter(l=>l!=null);n(s.length?new Map(s):null),r.current=e}return()=>{i(e),i(a)};function i(s){s.forEach(l=>{let c=hi(l);c==null||c.removeEventListener(\"scroll\",o)})}},[o,e]),(0,A.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((a,i)=>Sn(a,i),Pt):Sc(e):Pt,[e,t])}function fc(e,t){t===void 0&&(t=[]);let n=(0,A.useRef)(null);return(0,A.useEffect)(()=>{n.current=null},t),(0,A.useEffect)(()=>{let r=e!==Pt;r&&!n.current&&(n.current=e),!r&&n.current&&(n.current=null)},[e]),n.current?Xn(e,n.current):Pt}function Rh(e){(0,A.useEffect)(()=>{if(!Sr)return;let t=e.map(n=>{let{sensor:r}=n;return r.setup==null?void 0:r.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function eb(e,t){return(0,A.useMemo)(()=>e.reduce((n,r)=>{let{eventName:o,handler:a}=r;return n[o]=i=>{a(i,t)},n},{}),[e,t])}function Ic(e){return(0,A.useMemo)(()=>e?Ih(e):null,[e])}var pc=[];function tb(e,t){t===void 0&&(t=Tn);let[n]=e,r=Ic(n?st(n):null),[o,a]=(0,A.useState)(pc);function i(){a(()=>e.length?e.map(l=>wc(l)?r:new Tr(t(l),l)):pc)}let s=pa({callback:i});return Dt(()=>{s==null||s.disconnect(),i(),e.forEach(l=>s==null?void 0:s.observe(l))},[e]),o}function nb(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return qn(t)?t:e}function rb(e){let{measure:t}=e,[n,r]=(0,A.useState)(null),o=(0,A.useCallback)(c=>{for(let{target:f}of c)if(qn(f)){r(d=>{let u=t(f);return d?I(C({},d),{width:u.width,height:u.height}):u});break}},[t]),a=pa({callback:o}),i=(0,A.useCallback)(c=>{let f=nb(c);a==null||a.disconnect(),f&&(a==null||a.observe(f)),r(f?t(f):null)},[t,a]),[s,l]=Or(i);return(0,A.useMemo)(()=>({nodeRef:s,rect:n,setRef:l}),[n,s,l])}var ob=[{sensor:ca,options:{}},{sensor:da,options:{}}],ab={current:{}},sa={draggable:{measure:ac},droppable:{measure:ac,strategy:Nr.WhileDragging,frequency:wi.Optimized},dragOverlay:{measure:Tn}},En=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,r;return(n=(r=this.get(t))==null?void 0:r.node.current)!=null?n:void 0}},ib={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new En,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:la},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:sa,measureDroppableContainers:la,windowRect:null,measuringScheduled:!1},sb={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:la,draggableNodes:new Map,over:null,measureDroppableContainers:la},ma=(0,A.createContext)(sb),Ec=(0,A.createContext)(ib);function lb(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new En}}}function db(e,t){switch(t.type){case He.DragStart:return I(C({},e),{draggable:I(C({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case He.DragMove:return e.draggable.active==null?e:I(C({},e),{draggable:I(C({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case He.DragEnd:case He.DragCancel:return I(C({},e),{draggable:I(C({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case He.RegisterDroppable:{let{element:n}=t,{id:r}=n,o=new En(e.droppable.containers);return o.set(r,n),I(C({},e),{droppable:I(C({},e.droppable),{containers:o})})}case He.SetDroppableDisabled:{let{id:n,key:r,disabled:o}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let i=new En(e.droppable.containers);return i.set(n,I(C({},a),{disabled:o})),I(C({},e),{droppable:I(C({},e.droppable),{containers:i})})}case He.UnregisterDroppable:{let{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;let a=new En(e.droppable.containers);return a.delete(n),I(C({},e),{droppable:I(C({},e.droppable),{containers:a})})}default:return e}}function cb(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:o}=(0,A.useContext)(ma),a=ia(r),i=ia(n==null?void 0:n.id);return(0,A.useEffect)(()=>{if(!t&&!r&&a&&i!=null){if(!Dr(a)||document.activeElement===a.target)return;let s=o.get(i);if(!s)return;let{activatorNode:l,node:c}=s;if(!l.current&&!c.current)return;requestAnimationFrame(()=>{for(let f of[l.current,c.current]){if(!f)continue;let d=tc(f);if(d){d.focus();break}}})}},[r,t,o,i,a]),null}function ub(e,t){let o=t,{transform:n}=o,r=Vt(o,[\"transform\"]);return e!=null&&e.length?e.reduce((a,i)=>i(C({transform:a},r)),n):n}function fb(e){return(0,A.useMemo)(()=>({draggable:C(C({},sa.draggable),e==null?void 0:e.draggable),droppable:C(C({},sa.droppable),e==null?void 0:e.droppable),dragOverlay:C(C({},sa.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function pb(e){let{activeNode:t,measure:n,initialRect:r,config:o=!0}=e,a=(0,A.useRef)(!1),{x:i,y:s}=typeof o==\"boolean\"?{x:o,y:o}:o;Dt(()=>{if(!i&&!s||!t){a.current=!1;return}if(a.current||!r)return;let c=t==null?void 0:t.node.current;if(!c||c.isConnected===!1)return;let f=n(c),d=bc(f,r);if(i||(d.x=0),s||(d.y=0),a.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let u=xc(c);u&&u.scrollBy({top:d.y,left:d.x})}},[t,i,s,r,n])}var Tc=(0,A.createContext)(I(C({},Pt),{scaleX:1,scaleY:1})),nn;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(nn||(nn={}));var Ar=(0,A.memo)(function(t){var n,r,o,a;let dl=t,{id:i,accessibility:s,autoScroll:l=!0,children:c,sensors:f=ob,collisionDetection:d=vh,measuring:u,modifiers:m}=dl,h=Vt(dl,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),x=(0,A.useReducer)(db,void 0,lb),[v,y]=x,[b,S]=ph(),[w,D]=(0,A.useState)(nn.Uninitialized),O=w===nn.Initialized,{draggable:{active:F,nodes:T,translate:P},droppable:{containers:V}}=v,E=F!=null?T.get(F):null,N=(0,A.useRef)({initial:null,translated:null}),U=(0,A.useMemo)(()=>{var ot;return F!=null?{id:F,data:(ot=E==null?void 0:E.data)!=null?ot:ab,rect:N}:null},[F,E]),K=(0,A.useRef)(null),[de,ve]=(0,A.useState)(null),[Oe,qe]=(0,A.useState)(null),Ue=Yn(h,Object.values(h)),Yt=Cn(\"DndDescribedBy\",i),Kt=(0,A.useMemo)(()=>V.getEnabled(),[V]),Ye=fb(u),{droppableRects:it,measureDroppableContainers:_t,measuringScheduled:Wt}=qh(Kt,{dragging:O,dependencies:[P.x,P.y],config:Ye.droppable}),Re=jh(T,F),cn=(0,A.useMemo)(()=>Oe?Ir(Oe):null,[Oe]),Bt=cm(),pt=Yh(Re,Ye.draggable.measure);pb({activeNode:F!=null?T.get(F):null,config:Bt.layoutShiftCompensation,initialRect:pt,measure:Ye.draggable.measure});let we=cc(Re,Ye.draggable.measure,pt),Ln=cc(Re?Re.parentElement:null),_e=(0,A.useRef)({activatorEvent:null,active:null,activeNode:Re,collisionRect:null,collisions:null,droppableRects:it,draggableNodes:T,draggingNode:null,draggingNodeRect:null,droppableContainers:V,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),mt=V.getNodeFor((n=_e.current.over)==null?void 0:n.id),St=rb({measure:Ye.dragOverlay.measure}),Mn=(r=St.nodeRef.current)!=null?r:Re,Vn=O?(o=St.rect)!=null?o:we:null,tl=!!(St.nodeRef.current&&St.rect),nl=Jh(tl?null:we),Qa=Ic(Mn?st(Mn):null),Xt=Qh(O?mt!=null?mt:Re:null),ho=tb(Xt),bo=ub(m,{transform:{x:P.x-nl.x,y:P.y-nl.y,scaleX:1,scaleY:1},activatorEvent:Oe,active:U,activeNodeRect:we,containerNodeRect:Ln,draggingNodeRect:Vn,over:_e.current.over,overlayNodeRect:St.rect,scrollableAncestors:Xt,scrollableAncestorRects:ho,windowRect:Qa}),rl=cn?Sn(cn,P):null,ol=Zh(Xt),rm=fc(ol),om=fc(ol,[we]),zn=Sn(bo,rm),$n=Vn?Ch(Vn,bo):null,dr=U&&$n?d({active:U,collisionRect:$n,droppableRects:it,droppableContainers:Kt,pointerCoordinates:rl}):null,al=hc(dr,\"id\"),[Jt,il]=(0,A.useState)(null),am=tl?bo:Sn(bo,om),im=yh(am,(a=Jt==null?void 0:Jt.rect)!=null?a:null,we),Za=(0,A.useRef)(null),sl=(0,A.useCallback)((ot,gt)=>{let{sensor:ht,options:Qt}=gt;if(K.current==null)return;let Ot=T.get(K.current);if(!Ot)return;let bt=ot.nativeEvent,Lt=new ht({active:K.current,activeNode:Ot,event:bt,options:Qt,context:_e,onAbort(et){if(!T.get(et))return;let{onDragAbort:Mt}=Ue.current,Gt={id:et};Mt==null||Mt(Gt),b({type:\"onDragAbort\",event:Gt})},onPending(et,Zt,Mt,Gt){if(!T.get(et))return;let{onDragPending:ur}=Ue.current,Rt={id:et,constraint:Zt,initialCoordinates:Mt,offset:Gt};ur==null||ur(Rt),b({type:\"onDragPending\",event:Rt})},onStart(et){let Zt=K.current;if(Zt==null)return;let Mt=T.get(Zt);if(!Mt)return;let{onDragStart:Gt}=Ue.current,cr={activatorEvent:bt,active:{id:Zt,data:Mt.data,rect:N}};(0,Dn.unstable_batchedUpdates)(()=>{Gt==null||Gt(cr),D(nn.Initializing),y({type:He.DragStart,initialCoordinates:et,active:Zt}),b({type:\"onDragStart\",event:cr}),ve(Za.current),qe(bt)})},onMove(et){y({type:He.DragMove,coordinates:et})},onEnd:Un(He.DragEnd),onCancel:Un(He.DragCancel)});Za.current=Lt;function Un(et){return async function(){let{active:Mt,collisions:Gt,over:cr,scrollAdjustedTranslate:ur}=_e.current,Rt=null;if(Mt&&ur){let{cancelDrop:fr}=Ue.current;Rt={activatorEvent:bt,active:Mt,collisions:Gt,delta:ur,over:cr},et===He.DragEnd&&typeof fr==\"function\"&&await Promise.resolve(fr(Rt))&&(et=He.DragCancel)}K.current=null,(0,Dn.unstable_batchedUpdates)(()=>{y({type:et}),D(nn.Uninitialized),il(null),ve(null),qe(null),Za.current=null;let fr=et===He.DragEnd?\"onDragEnd\":\"onDragCancel\";if(Rt){let Ra=Ue.current[fr];Ra==null||Ra(Rt),b({type:fr,event:Rt})}})}}},[T]),sm=(0,A.useCallback)((ot,gt)=>(ht,Qt)=>{let Ot=ht.nativeEvent,bt=T.get(Qt);if(K.current!==null||!bt||Ot.dndKit||Ot.defaultPrevented)return;let Lt={active:bt};ot(ht,gt.options,Lt)===!0&&(Ot.dndKit={capturedBy:gt.sensor},K.current=Qt,sl(ht,gt))},[T,sl]),ll=Hh(f,sm);Rh(f),Dt(()=>{we&&w===nn.Initializing&&D(nn.Initialized)},[we,w]),(0,A.useEffect)(()=>{let{onDragMove:ot}=Ue.current,{active:gt,activatorEvent:ht,collisions:Qt,over:Ot}=_e.current;if(!gt||!ht)return;let bt={active:gt,activatorEvent:ht,collisions:Qt,delta:{x:zn.x,y:zn.y},over:Ot};(0,Dn.unstable_batchedUpdates)(()=>{ot==null||ot(bt),b({type:\"onDragMove\",event:bt})})},[zn.x,zn.y]),(0,A.useEffect)(()=>{let{active:ot,activatorEvent:gt,collisions:ht,droppableContainers:Qt,scrollAdjustedTranslate:Ot}=_e.current;if(!ot||K.current==null||!gt||!Ot)return;let{onDragOver:bt}=Ue.current,Lt=Qt.get(al),Un=Lt&&Lt.rect.current?{id:Lt.id,rect:Lt.rect.current,data:Lt.data,disabled:Lt.disabled}:null,et={active:ot,activatorEvent:gt,collisions:ht,delta:{x:Ot.x,y:Ot.y},over:Un};(0,Dn.unstable_batchedUpdates)(()=>{il(Un),bt==null||bt(et),b({type:\"onDragOver\",event:et})})},[al]),Dt(()=>{_e.current={activatorEvent:Oe,active:U,activeNode:Re,collisionRect:$n,collisions:dr,droppableRects:it,draggableNodes:T,draggingNode:Mn,draggingNodeRect:Vn,droppableContainers:V,over:Jt,scrollableAncestors:Xt,scrollAdjustedTranslate:zn},N.current={initial:Vn,translated:$n}},[U,Re,dr,$n,T,Mn,Vn,it,V,Jt,Xt,zn]),Uh(I(C({},Bt),{delta:P,draggingRect:$n,pointerCoordinates:rl,scrollableAncestors:Xt,scrollableAncestorRects:ho}));let lm=(0,A.useMemo)(()=>({active:U,activeNode:Re,activeNodeRect:we,activatorEvent:Oe,collisions:dr,containerNodeRect:Ln,dragOverlay:St,draggableNodes:T,droppableContainers:V,droppableRects:it,over:Jt,measureDroppableContainers:_t,scrollableAncestors:Xt,scrollableAncestorRects:ho,measuringConfiguration:Ye,measuringScheduled:Wt,windowRect:Qa}),[U,Re,we,Oe,dr,Ln,St,T,V,it,Jt,_t,Xt,ho,Ye,Wt,Qa]),dm=(0,A.useMemo)(()=>({activatorEvent:Oe,activators:ll,active:U,activeNodeRect:we,ariaDescribedById:{draggable:Yt},dispatch:y,draggableNodes:T,over:Jt,measureDroppableContainers:_t}),[Oe,ll,U,we,y,Yt,T,Jt,_t]);return A.default.createElement(gc.Provider,{value:S},A.default.createElement(ma.Provider,{value:dm},A.default.createElement(Ec.Provider,{value:lm},A.default.createElement(Tc.Provider,{value:im},c)),A.default.createElement(cb,{disabled:(s==null?void 0:s.restoreFocus)===!1})),A.default.createElement(hh,I(C({},s),{hiddenTextDescribedById:Yt})));function cm(){let ot=(de==null?void 0:de.autoScrollEnabled)===!1,gt=typeof l==\"object\"?l.enabled===!1:l===!1,ht=O&&!ot&&!gt;return typeof l==\"object\"?I(C({},l),{enabled:ht}):{enabled:ht}}}),mb=(0,A.createContext)(null),mc=\"button\",gb=\"Draggable\";function kc(e){let{id:t,data:n,disabled:r=!1,attributes:o}=e,a=Cn(gb),{activators:i,activatorEvent:s,active:l,activeNodeRect:c,ariaDescribedById:f,draggableNodes:d,over:u}=(0,A.useContext)(ma),{role:m=mc,roleDescription:h=\"draggable\",tabIndex:x=0}=o!=null?o:{},v=(l==null?void 0:l.id)===t,y=(0,A.useContext)(v?Tc:mb),[b,S]=Or(),[w,D]=Or(),O=eb(i,t),F=Yn(n);Dt(()=>(d.set(t,{id:t,key:a,node:b,activatorNode:w,data:F}),()=>{let P=d.get(t);P&&P.key===a&&d.delete(t)}),[d,t]);let T=(0,A.useMemo)(()=>({role:m,tabIndex:x,\"aria-disabled\":r,\"aria-pressed\":v&&m===mc?!0:void 0,\"aria-roledescription\":h,\"aria-describedby\":f.draggable}),[r,m,x,v,h,f.draggable]);return{active:l,activatorEvent:s,activeNodeRect:c,attributes:T,isDragging:v,listeners:r?void 0:O,node:b,over:u,setNodeRef:S,setActivatorNodeRef:D,transform:y}}function Nc(){return(0,A.useContext)(Ec)}var hb=\"Droppable\",bb={timeout:25};function Fc(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:o}=e,a=Cn(hb),{active:i,dispatch:s,over:l,measureDroppableContainers:c}=(0,A.useContext)(ma),f=(0,A.useRef)({disabled:n}),d=(0,A.useRef)(!1),u=(0,A.useRef)(null),m=(0,A.useRef)(null),{disabled:h,updateMeasurementsFor:x,timeout:v}=C(C({},bb),o),y=Yn(x!=null?x:r),b=(0,A.useCallback)(()=>{if(!d.current){d.current=!0;return}m.current!=null&&clearTimeout(m.current),m.current=setTimeout(()=>{c(Array.isArray(y.current)?y.current:[y.current]),m.current=null},v)},[v]),S=pa({callback:b,disabled:h||!i}),w=(0,A.useCallback)((T,P)=>{S&&(P&&(S.unobserve(P),d.current=!1),T&&S.observe(T))},[S]),[D,O]=Or(w),F=Yn(t);return(0,A.useEffect)(()=>{!S||!D.current||(S.disconnect(),d.current=!1,S.observe(D.current))},[D,S]),(0,A.useEffect)(()=>(s({type:He.RegisterDroppable,element:{id:r,key:a,disabled:n,node:D,rect:u,data:F}}),()=>s({type:He.UnregisterDroppable,key:a,id:r})),[r]),(0,A.useEffect)(()=>{n!==f.current.disabled&&(s({type:He.SetDroppableDisabled,id:r,key:a,disabled:n}),f.current.disabled=n)},[r,a,n,s]),{active:i,rect:u,isOver:(l==null?void 0:l.id)===r,node:D,over:l,setNodeRef:O}}var Pr=e=>{let{transform:t}=e;return I(C({},t),{x:0})};var Ve=_(J());function lt(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function xb(e,t){return e.reduce((n,r,o)=>{let a=t.get(r);return a&&(n[o]=a),n},Array(e.length))}function ga(e){return e!==null&&e>=0}function vb(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n{let{rects:t,activeIndex:n,overIndex:r,index:o}=e,a=lt(t,r,n),i=t[o],s=a[o];return!s||!i?null:{x:s.left-i.left,y:s.top-i.top,scaleX:s.width/i.width,scaleY:s.height/i.height}};var ha={scaleX:1,scaleY:1},_r=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:a,overIndex:i}=e,s=(t=a[n])!=null?t:r;if(!s)return null;if(o===n){let c=a[i];return c?C({x:0,y:nn&&o<=i?C({x:0,y:-s.height-l},ha):o=i?C({x:0,y:s.height+l},ha):C({x:0,y:0},ha)};function wb(e,t,n){let r=e[t],o=e[t-1],a=e[t+1];return r?nr.map(O=>typeof O==\"object\"&&\"id\"in O?O.id:O),[r]),h=i!=null,x=i?m.indexOf(i.id):-1,v=c?m.indexOf(c.id):-1,y=(0,Ve.useRef)(m),b=!vb(m,y.current),S=v!==-1&&x===-1||b,w=yb(a);Dt(()=>{b&&h&&f(m)},[b,m,h,f]),(0,Ve.useEffect)(()=>{y.current=m},[m]);let D=(0,Ve.useMemo)(()=>({activeIndex:x,containerId:d,disabled:w,disableTransforms:S,items:m,overIndex:v,useDragOverlay:u,sortedRects:xb(m,l),strategy:o}),[x,d,w.draggable,w.droppable,S,m,v,l,u,o]);return Ve.default.createElement(_c.Provider,{value:D},t)}var Cb=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return lt(n,r,o).indexOf(t)},Sb=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:a,newIndex:i,previousItems:s,previousContainerId:l,transition:c}=e;return!c||!r||s!==a&&o===i?!1:n?!0:i!==o&&t===l},Ob={duration:200,easing:\"ease\"},Bc=\"transform\",Db=$t.Transition.toString({property:Bc,duration:0,easing:\"linear\"}),Ib={roleDescription:\"sortable\"};function Eb(e){let{disabled:t,index:n,node:r,rect:o}=e,[a,i]=(0,Ve.useState)(null),s=(0,Ve.useRef)(n);return Dt(()=>{if(!t&&n!==s.current&&r.current){let l=o.current;if(l){let c=Tn(r.current,{ignoreTransform:!0}),f={x:l.left-c.left,y:l.top-c.top,scaleX:l.width/c.width,scaleY:l.height/c.height};(f.x||f.y)&&i(f)}}n!==s.current&&(s.current=n)},[t,n,r,o]),(0,Ve.useEffect)(()=>{a&&i(null)},[a]),a}function ba(e){let{animateLayoutChanges:t=Sb,attributes:n,disabled:r,data:o,getNewIndex:a=Cb,id:i,strategy:s,resizeObserverConfig:l,transition:c=Ob}=e,{items:f,containerId:d,activeIndex:u,disabled:m,disableTransforms:h,sortedRects:x,overIndex:v,useDragOverlay:y,strategy:b}=(0,Ve.useContext)(_c),S=Tb(r,m),w=f.indexOf(i),D=(0,Ve.useMemo)(()=>C({sortable:{containerId:d,index:w,items:f}},o),[d,o,w,f]),O=(0,Ve.useMemo)(()=>f.slice(f.indexOf(i)),[f,i]),{rect:F,node:T,isOver:P,setNodeRef:V}=Fc({id:i,data:D,disabled:S.droppable,resizeObserverConfig:C({updateMeasurementsFor:O},l)}),{active:E,activatorEvent:N,activeNodeRect:U,attributes:K,setNodeRef:de,listeners:ve,isDragging:Oe,over:qe,setActivatorNodeRef:Ue,transform:Yt}=kc({id:i,data:D,attributes:C(C({},Ib),n),disabled:S.draggable}),Kt=Zd(V,de),Ye=!!E,it=Ye&&!h&&ga(u)&&ga(v),_t=!y&&Oe,Wt=_t&&it?Yt:null,Re=s!=null?s:b,cn=it?Wt!=null?Wt:Re({rects:x,activeNodeRect:U,activeIndex:u,overIndex:v,index:w}):null,Bt=ga(u)&&ga(v)?a({id:i,items:f,activeIndex:u,overIndex:v}):w,pt=E==null?void 0:E.id,we=(0,Ve.useRef)({activeId:pt,items:f,newIndex:Bt,containerId:d}),Ln=f!==we.current.items,_e=t({active:E,containerId:d,isDragging:Oe,isSorting:Ye,id:i,index:w,items:f,newIndex:we.current.newIndex,previousItems:we.current.items,previousContainerId:we.current.containerId,transition:c,wasDragging:we.current.activeId!=null}),mt=Eb({disabled:!_e,index:w,node:T,rect:F});return(0,Ve.useEffect)(()=>{Ye&&we.current.newIndex!==Bt&&(we.current.newIndex=Bt),d!==we.current.containerId&&(we.current.containerId=d),f!==we.current.items&&(we.current.items=f)},[Ye,Bt,d,f]),(0,Ve.useEffect)(()=>{if(pt===we.current.activeId)return;if(pt!=null&&we.current.activeId==null){we.current.activeId=pt;return}let Mn=setTimeout(()=>{we.current.activeId=pt},50);return()=>clearTimeout(Mn)},[pt]),{active:E,activeIndex:u,attributes:K,data:D,rect:F,index:w,newIndex:Bt,items:f,isOver:P,isSorting:Ye,isDragging:Oe,listeners:ve,node:T,overIndex:v,over:qe,setNodeRef:Kt,setActivatorNodeRef:Ue,setDroppableNodeRef:V,setDraggableNodeRef:de,transform:mt!=null?mt:cn,transition:St()};function St(){if(mt||Ln&&we.current.newIndex===w)return Db;if(!(_t&&!Dr(N)||!c)&&(Ye||_e))return $t.Transition.toString(I(C({},c),{property:Bc}))}}function Tb(e,t){var n,r;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(r=e==null?void 0:e.droppable)!=null?r:t.droppable}}var fI=[Ce.Down,Ce.Right,Ce.Up,Ce.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=':root {\\n --bg-primary: #ffffff;\\n --bg-secondary: #f5f5f5;\\n --bg-tertiary: #fafafa;\\n --text-primary: rgba(0, 0, 0, 0.88);\\n --text-secondary: rgba(0, 0, 0, 0.65);\\n --text-tertiary: rgba(0, 0, 0, 0.45);\\n --border-color: #d9d9d9;\\n --border-color-light: #f0f0f0;\\n --shadow-color: rgba(0, 0, 0, 0.08);\\n --shadow-hover: rgba(0, 0, 0, 0.12);\\n --primary-color: #1890ff;\\n --primary-hover: #40a9ff;\\n --primary-active: #096dd9;\\n --spacing-xs: 4px;\\n --spacing-sm: 8px;\\n --spacing-md: 16px;\\n --spacing-lg: 24px;\\n --spacing-xl: 32px;\\n --radius-sm: 4px;\\n --radius-md: 8px;\\n --radius-lg: 12px;\\n --radius-xl: 16px;\\n --transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);\\n --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);\\n}\\n@media (prefers-color-scheme: dark) {\\n :root {\\n --bg-primary: #141414;\\n --bg-secondary: #1f1f1f;\\n --bg-tertiary: #2a2a2a;\\n --text-primary: rgba(255, 255, 255, 0.85);\\n --text-secondary: rgba(255, 255, 255, 0.65);\\n --text-tertiary: rgba(255, 255, 255, 0.45);\\n --border-color: #424242;\\n --border-color-light: #303030;\\n --shadow-color: rgba(0, 0, 0, 0.45);\\n --shadow-hover: rgba(0, 0, 0, 0.65);\\n }\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav {\\n background: #ffffff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: transparent !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active {\\n background: #ffffff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1890ff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab:hover {\\n color: #40a9ff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-ink-bar {\\n background: #1890ff !important;\\n}\\n.force-light-table-header .ant-table-thead > tr > th {\\n background: #fafafa !important;\\n color: rgba(0, 0, 0, 0.88) !important;\\n border-bottom: 1px solid #f0f0f0 !important;\\n}\\n.force-light-table-header .ant-table-tbody > tr > td {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label {\\n background: #ffffff !important;\\n padding: 16px !important;\\n border-radius: 8px !important;\\n}\\n.force-light-form-label .ant-form-item-label label {\\n color: rgba(0, 0, 0, 0.88) !important;\\n font-weight: 600 !important;\\n font-size: 14px !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-form-item-explain {\\n color: rgba(0, 0, 0, 0.65) !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-input,\\n.force-light-form-label .ant-form-item-control .ant-input-number-input,\\n.force-light-form-label .ant-form-item-control .ant-select-selector,\\n.force-light-form-label .ant-form-item-control .ant-input-textarea {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: #ffffff !important;\\n border-color: #d9d9d9 !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-input::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-input-number-input::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-select-selector::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-input-textarea::placeholder {\\n color: rgba(0, 0, 0, 0.45) !important;\\n}\\n.force-light-form-label .ant-form-item-label > label.ant-form-item-required::before {\\n color: #ff4d4f !important;\\n}\\n.force-light-form-label .ant-switch {\\n background: rgba(0, 0, 0, 0.25) !important;\\n}\\n.force-light-form-label .ant-switch.ant-switch-checked {\\n background: #1890ff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-selection-item {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-arrow {\\n color: rgba(0, 0, 0, 0.45) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown {\\n background: #ffffff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item.ant-select-item-option-selected {\\n background: #e6f7ff !important;\\n color: #1890ff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item:hover {\\n background: #f5f5f5 !important;\\n}\\n.force-light-form-label .ant-btn {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: #ffffff !important;\\n border-color: #d9d9d9 !important;\\n}\\n.force-light-form-label .ant-btn.ant-btn-primary {\\n color: #ffffff !important;\\n background: #1890ff !important;\\n border-color: #1890ff !important;\\n}\\n.force-light-form-label .ant-alert {\\n background: #e6f7ff !important;\\n border: 1px solid #91d5ff !important;\\n}\\n.force-light-form-label .ant-alert .ant-alert-message {\\n color: rgba(0, 0, 0, 0.88) !important;\\n font-weight: 500 !important;\\n}\\n.force-light-form-label .ant-alert .ant-alert-description {\\n color: rgba(0, 0, 0, 0.65) !important;\\n}\\n.force-light-form-label .ant-divider {\\n color: rgba(0, 0, 0, 0.45) !important;\\n border-color: #f0f0f0 !important;\\n}\\n.force-light-form-label .ant-divider .ant-divider-inner-text {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-tabs-tab {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1890ff !important;\\n}\\n* {\\n -webkit-tap-highlight-color: transparent;\\n box-sizing: border-box;\\n}\\nbody {\\n margin: 0;\\n padding: 0;\\n overflow-x: hidden;\\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\nhtml {\\n scroll-behavior: smooth;\\n}\\n@keyframes fadeIn {\\n from {\\n opacity: 0;\\n }\\n to {\\n opacity: 1;\\n }\\n}\\n@keyframes slideInUp {\\n from {\\n opacity: 0;\\n transform: translateY(20px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n@keyframes slideInRight {\\n from {\\n opacity: 0;\\n transform: translateX(20px);\\n }\\n to {\\n opacity: 1;\\n transform: translateX(0);\\n }\\n}\\n@keyframes scaleIn {\\n from {\\n opacity: 0;\\n transform: scale(0.95);\\n }\\n to {\\n opacity: 1;\\n transform: scale(1);\\n }\\n}\\n.app-layout {\\n width: 100vw;\\n min-height: 100vh;\\n box-sizing: border-box;\\n padding: var(--spacing-md);\\n padding-top: max(var(--spacing-md), env(safe-area-inset-top));\\n padding-bottom: max(var(--spacing-md), env(safe-area-inset-bottom));\\n padding-left: max(var(--spacing-md), env(safe-area-inset-left));\\n padding-right: max(var(--spacing-md), env(safe-area-inset-right));\\n max-width: 1200px;\\n margin: 0 auto;\\n background: var(--bg-secondary);\\n}\\n@media (max-width: 575px) {\\n .app-layout {\\n padding: var(--spacing-sm);\\n padding-top: max(var(--spacing-sm), env(safe-area-inset-top));\\n padding-bottom: max(var(--spacing-sm), env(safe-area-inset-bottom));\\n }\\n}\\n@media (min-width: 768px) and (max-width: 991px) {\\n .app-layout {\\n padding: var(--spacing-lg);\\n }\\n}\\n@media (min-width: 992px) and (max-width: 1199px) {\\n .app-layout {\\n padding: var(--spacing-xl);\\n }\\n}\\n@media (min-width: 1200px) {\\n .app-layout {\\n padding: 48px;\\n }\\n}\\n.app-layout .app-header-row {\\n display: flex;\\n justify-content: flex-end;\\n margin-bottom: var(--spacing-md);\\n padding: var(--spacing-sm) var(--spacing-md);\\n background: var(--bg-primary);\\n border-radius: var(--radius-lg);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.app-layout .app-header-row .import-export-buttons {\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 575px) {\\n .app-layout .app-header-row .import-export-buttons {\\n flex-wrap: wrap;\\n justify-content: flex-end;\\n width: 100%;\\n }\\n}\\n@media (max-width: 575px) {\\n .app-layout .app-header-row {\\n margin-bottom: var(--spacing-sm);\\n padding: var(--spacing-xs) var(--spacing-sm);\\n border-radius: var(--radius-md);\\n }\\n}\\n.app-layout .ant-tabs {\\n background: var(--bg-primary);\\n border-radius: var(--radius-lg);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n min-height: calc(100vh - (2 * var(--spacing-md)));\\n display: flex;\\n flex-direction: column;\\n}\\n@media (max-width: 575px) {\\n .app-layout .ant-tabs {\\n border-radius: var(--radius-md);\\n min-height: calc(100vh - (2 * var(--spacing-sm)));\\n }\\n}\\n.app-layout .ant-tabs .ant-tabs-nav .ant-tabs-extra-content {\\n margin-left: auto;\\n display: flex;\\n align-items: center;\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 767px) {\\n .app-layout .ant-tabs .ant-tabs-nav .ant-tabs-extra-content {\\n flex-wrap: wrap;\\n justify-content: flex-end;\\n margin-top: var(--spacing-sm);\\n }\\n}\\n@media (max-width: 767px) {\\n .app-layout .ant-tabs .ant-tabs-nav {\\n padding-bottom: var(--spacing-sm);\\n }\\n}\\n.app-layout .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .app-layout .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-tabs {\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n}\\n.ant-tabs .ant-tabs-content {\\n transition: opacity var(--transition-base);\\n flex: 1;\\n overflow: hidden;\\n}\\n.ant-tabs .ant-tabs-tabpane {\\n animation: fadeIn var(--transition-base);\\n height: 100%;\\n}\\n.ant-tabs .ant-tabs-nav {\\n margin-bottom: 0;\\n padding: var(--spacing-md) var(--spacing-md) 0;\\n flex-shrink: 0;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-nav {\\n padding: var(--spacing-sm) var(--spacing-sm) 0;\\n }\\n}\\n.ant-tabs .ant-tabs-tab {\\n padding: 12px 16px;\\n font-size: 14px;\\n transition: all var(--transition-fast);\\n border-radius: var(--radius-sm) var(--radius-sm) 0 0;\\n}\\n.ant-tabs .ant-tabs-tab:hover {\\n color: var(--primary-hover);\\n}\\n.ant-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: var(--primary-color);\\n font-weight: 600;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-tab {\\n padding: 10px 12px;\\n font-size: 13px;\\n }\\n}\\n.ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-md);\\n overflow-y: auto;\\n overflow-x: hidden;\\n -webkit-overflow-scrolling: touch;\\n flex: 1;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-tabs .ant-tabs-extra-content {\\n display: flex;\\n align-items: center;\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-extra-content {\\n flex-wrap: wrap;\\n }\\n}\\n@media (min-width: 768px) {\\n .ant-tabs .ant-tabs-nav {\\n flex-wrap: nowrap !important;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-tabs .ant-tabs-nav {\\n flex-wrap: wrap;\\n }\\n .ant-tabs .ant-tabs-nav-list {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n flex-wrap: nowrap;\\n }\\n .ant-tabs .ant-tabs-nav-list::-webkit-scrollbar {\\n height: 4px;\\n }\\n .ant-tabs .ant-tabs-nav-list::-webkit-scrollbar-thumb {\\n background: var(--border-color);\\n border-radius: 2px;\\n }\\n}\\n@media (max-width: 767px) and (max-width: 400px) {\\n .container > .ant-card > .ant-card-body > .ant-tabs .ant-tabs-extra-content {\\n flex: 1 1 100%;\\n margin-top: var(--spacing-sm);\\n justify-content: flex-end;\\n }\\n}\\n.qrcodeCard {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n padding: var(--spacing-lg);\\n animation: slideInUp var(--transition-base);\\n}\\n.qrcodeCard img {\\n width: 180px;\\n height: 180px;\\n cursor: pointer;\\n border-radius: var(--radius-md);\\n box-shadow: 0 2px 8px var(--shadow-color);\\n transition: transform var(--transition-base), box-shadow var(--transition-base);\\n}\\n.qrcodeCard img:hover {\\n transform: scale(1.05);\\n box-shadow: 0 4px 16px var(--shadow-hover);\\n}\\n.qrcodeCard img:active {\\n transform: scale(0.98);\\n}\\n@media (max-width: 575px) {\\n .qrcodeCard img {\\n width: 140px;\\n height: 140px;\\n }\\n}\\n@media (min-width: 576px) and (max-width: 767px) {\\n .qrcodeCard img {\\n width: 160px;\\n height: 160px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .qrcodeCard img {\\n width: 200px;\\n height: 200px;\\n }\\n}\\n.qrcodeCard .btns {\\n display: flex;\\n justify-content: space-around;\\n margin-top: var(--spacing-lg);\\n width: 100%;\\n gap: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .qrcodeCard .btns {\\n flex-direction: column;\\n gap: var(--spacing-sm);\\n }\\n .qrcodeCard .btns .ant-btn {\\n width: 100%;\\n margin: 0 !important;\\n justify-content: center;\\n }\\n}\\n@media (min-width: 576px) {\\n .qrcodeCard .btns .ant-btn {\\n flex: 1;\\n margin: 0 !important;\\n }\\n}\\n@media (min-width: 1200px) {\\n .qrcodeCard .btns {\\n gap: var(--spacing-md);\\n margin-top: var(--spacing-xl);\\n }\\n}\\n.guangya-proxy-settings {\\n --guangya-blue: #002fa7;\\n --guangya-rule: #d8dce5;\\n color: #111111;\\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\\n}\\n.guangya-proxy-settings .ant-divider {\\n color: #111111 !important;\\n border-color: var(--guangya-rule) !important;\\n}\\n.guangya-proxy-form {\\n display: grid;\\n grid-template-columns: repeat(2, minmax(0, 1fr));\\n gap: 16px;\\n margin: 0;\\n padding: 18px 0;\\n border-top: 1px solid var(--guangya-rule);\\n border-bottom: 1px solid var(--guangya-rule);\\n}\\n.guangya-proxy-form .ant-form-item {\\n margin-bottom: 0;\\n}\\n.guangya-proxy-form .ant-input-number {\\n border-radius: 0;\\n}\\n@media (max-width: 720px) {\\n .guangya-proxy-form {\\n grid-template-columns: 1fr;\\n }\\n}\\n.ant-form {\\n animation: fadeIn var(--transition-base);\\n}\\n.ant-form .ant-form-item {\\n margin-bottom: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-form .ant-form-item {\\n margin-bottom: var(--spacing-sm);\\n }\\n}\\n.ant-form .ant-form-item-label {\\n padding-bottom: var(--spacing-xs);\\n}\\n.ant-form .ant-form-item-label label {\\n font-weight: 500;\\n}\\n.ant-input,\\n.ant-input-number,\\n.ant-select-selector,\\n.ant-input-textarea {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-input:hover,\\n.ant-input-number:hover,\\n.ant-select-selector:hover,\\n.ant-input-textarea:hover {\\n border-color: var(--primary-hover);\\n}\\n.ant-input:focus,\\n.ant-input-number:focus,\\n.ant-select-selector:focus,\\n.ant-input-textarea:focus,\\n.ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-select-selector.ant-input-focused,\\n.ant-input-textarea.ant-input-focused {\\n border-color: var(--primary-color);\\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 767px) {\\n .ant-input,\\n .ant-input-number-input,\\n .ant-select-selector,\\n .ant-input-textarea {\\n font-size: 16px !important;\\n min-height: 44px;\\n }\\n}\\n.ant-btn {\\n border-radius: var(--radius-sm);\\n font-weight: 500;\\n transition: all var(--transition-fast);\\n}\\n.ant-btn:hover {\\n transform: translateY(-1px);\\n box-shadow: 0 2px 8px var(--shadow-color);\\n}\\n.ant-btn:active {\\n transform: translateY(0);\\n}\\n@media (max-width: 767px) {\\n .ant-btn {\\n min-height: 44px;\\n font-size: 14px;\\n padding: 0 16px;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-btn.ant-btn-lg {\\n min-height: 48px;\\n font-size: 16px;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-btn.ant-btn-sm {\\n min-height: 36px;\\n font-size: 13px;\\n }\\n}\\n.ant-card {\\n border-radius: var(--radius-md);\\n transition: box-shadow var(--transition-base);\\n}\\n.ant-card:hover {\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-card .ant-card-head {\\n border-bottom: 1px solid var(--border-color-light);\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-card .ant-card-head {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-card .ant-card-head .ant-card-head-title {\\n font-weight: 600;\\n}\\n.ant-card .ant-card-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-card .ant-card-body {\\n padding: var(--spacing-md);\\n }\\n}\\n.sites-table,\\n.ant-table-wrapper {\\n animation: fadeIn var(--transition-base);\\n}\\n.sites-table .ant-table,\\n.ant-table-wrapper .ant-table {\\n border-radius: var(--radius-sm);\\n overflow: hidden;\\n}\\n.sites-table .ant-table-thead > tr > th,\\n.ant-table-wrapper .ant-table-thead > tr > th {\\n background: var(--bg-tertiary);\\n font-weight: 600;\\n white-space: nowrap;\\n}\\n.sites-table .ant-table-tbody > tr,\\n.ant-table-wrapper .ant-table-tbody > tr {\\n transition: background var(--transition-fast);\\n}\\n.sites-table .ant-table-tbody > tr:hover,\\n.ant-table-wrapper .ant-table-tbody > tr:hover {\\n background: var(--bg-tertiary);\\n}\\n.sites-table .ant-table-tbody > tr > td,\\n.ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 12px 16px;\\n white-space: nowrap;\\n}\\n@media (max-width: 575px) {\\n .sites-table .ant-table-tbody > tr > td,\\n .ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 8px 12px;\\n font-size: 13px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .sites-table .ant-table-tbody > tr > td,\\n .ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 14px 20px;\\n font-size: 15px;\\n }\\n}\\n@media (max-width: 767px) {\\n .sites-table,\\n .ant-table-wrapper {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n .sites-table .ant-btn,\\n .ant-table-wrapper .ant-btn {\\n padding: 4px 8px;\\n font-size: 12px;\\n min-height: 32px;\\n }\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 var(--spacing-sm);\\n color: var(--text-secondary);\\n font-size: 18px;\\n cursor: pointer;\\n transition: all var(--transition-fast);\\n min-width: 44px;\\n min-height: 44px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: var(--radius-sm);\\n}\\n.dynamic-delete-button:hover {\\n color: var(--text-primary);\\n background: var(--bg-tertiary);\\n}\\n.dynamic-delete-button:active {\\n transform: scale(0.95);\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n@media (max-width: 575px) {\\n .dynamic-delete-button {\\n font-size: 20px;\\n margin: 0 var(--spacing-xs);\\n }\\n}\\n@media (min-width: 1200px) {\\n .dynamic-delete-button {\\n font-size: 22px;\\n min-width: 48px;\\n min-height: 48px;\\n }\\n}\\n@media (max-width: 767px) {\\n .tg-channel-item {\\n display: flex !important;\\n flex-direction: row !important;\\n align-items: flex-start !important;\\n gap: var(--spacing-sm) !important;\\n width: 100%;\\n margin-bottom: var(--spacing-md) !important;\\n }\\n .tg-channel-item .tg-channel-input,\\n .tg-channel-item .tg-remark-input {\\n flex: 1 1 40%;\\n min-width: 0;\\n }\\n .tg-channel-item .tg-channel-input .ant-input,\\n .tg-channel-item .tg-remark-input .ant-input {\\n font-size: 16px !important;\\n min-height: 44px;\\n padding: 8px 11px;\\n border-radius: var(--radius-sm);\\n }\\n .tg-channel-item .tg-delete-btn {\\n flex: 0 0 44px;\\n min-width: 44px;\\n min-height: 44px;\\n }\\n .tg-channel-item .tg-delete-btn .ant-btn {\\n min-width: 44px !important;\\n min-height: 44px !important;\\n padding: 0 !important;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: var(--radius-sm);\\n }\\n}\\n.ant-alert {\\n border-radius: var(--radius-sm);\\n animation: slideInUp var(--transition-base);\\n}\\n@media (max-width: 575px) {\\n .ant-alert {\\n font-size: 13px;\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-alert {\\n font-size: 15px;\\n padding: var(--spacing-md) var(--spacing-lg);\\n }\\n}\\n.ant-switch {\\n transition: all var(--transition-fast);\\n}\\n@media (max-width: 767px) {\\n .ant-switch {\\n min-width: 44px;\\n height: 24px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-switch {\\n min-width: 52px;\\n height: 28px;\\n }\\n}\\n@media (max-width: 575px) {\\n .ant-modal {\\n margin: var(--spacing-sm);\\n max-width: calc(100vw - var(--spacing-md));\\n }\\n}\\n.ant-modal .ant-modal-content {\\n border-radius: var(--radius-md);\\n overflow: hidden;\\n}\\n.ant-modal .ant-modal-header {\\n border-bottom: 1px solid var(--border-color-light);\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (min-width: 1200px) {\\n .ant-modal .ant-modal-header {\\n padding: var(--spacing-lg) var(--spacing-xl);\\n }\\n}\\n.ant-modal .ant-modal-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-modal .ant-modal-body {\\n padding: var(--spacing-md);\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-modal .ant-modal-body {\\n padding: var(--spacing-xl);\\n font-size: 15px;\\n }\\n}\\n.ant-divider {\\n margin: var(--spacing-md) 0;\\n}\\n@media (max-width: 575px) {\\n .ant-divider {\\n margin: var(--spacing-sm) 0;\\n }\\n}\\n.ant-space.ant-space-vertical {\\n width: 100%;\\n}\\n.ant-tag {\\n border-radius: var(--radius-sm);\\n padding: 2px 8px;\\n font-size: 12px;\\n transition: all var(--transition-fast);\\n}\\n.ant-tag:hover {\\n opacity: 0.8;\\n}\\n.ant-list .ant-list-item {\\n padding: var(--spacing-md);\\n transition: background var(--transition-fast);\\n border-radius: var(--radius-sm);\\n}\\n.ant-list .ant-list-item:hover {\\n background: var(--bg-tertiary);\\n}\\n@media (max-width: 575px) {\\n .ant-list .ant-list-item {\\n padding: var(--spacing-sm);\\n }\\n}\\n::-webkit-scrollbar {\\n width: 8px;\\n height: 8px;\\n}\\n::-webkit-scrollbar-track {\\n background: var(--bg-secondary);\\n}\\n::-webkit-scrollbar-thumb {\\n background: var(--border-color);\\n border-radius: 4px;\\n}\\n::-webkit-scrollbar-thumb:hover {\\n background: var(--text-tertiary);\\n}\\n.ant-skeleton {\\n animation: fadeIn var(--transition-base);\\n}\\n.fade-in {\\n animation: fadeIn var(--transition-base);\\n}\\n.slide-in-up {\\n animation: slideInUp var(--transition-base);\\n}\\n.slide-in-right {\\n animation: slideInRight var(--transition-base);\\n}\\n.scale-in {\\n animation: scaleIn var(--transition-base);\\n}\\n.ant-spin .ant-spin-dot {\\n font-size: 24px;\\n}\\n@media (max-width: 575px) {\\n .ant-spin .ant-spin-dot {\\n font-size: 20px;\\n }\\n}\\n.loading-overlay {\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background: rgba(0, 0, 0, 0.45);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n z-index: 9999;\\n backdrop-filter: blur(4px);\\n animation: fadeIn var(--transition-fast);\\n}\\n@media (max-width: 767px) {\\n .ant-btn,\\n .ant-tabs-tab,\\n .ant-list-item,\\n .ant-table-row,\\n .dynamic-delete-button {\\n -webkit-tap-highlight-color: rgba(24, 144, 255, 0.1);\\n }\\n .ant-btn:active,\\n .ant-tabs-tab:active,\\n .ant-list-item:active,\\n .ant-table-row:active,\\n .dynamic-delete-button:active {\\n opacity: 0.8;\\n }\\n .ant-tabs-content,\\n .ant-card-body,\\n .ant-table-wrapper,\\n .ant-modal-body {\\n -webkit-overflow-scrolling: touch;\\n overscroll-behavior: contain;\\n }\\n body {\\n overscroll-behavior-y: contain;\\n }\\n html.platform-android .ant-tabs-content-holder,\\n html.platform-android .ant-tabs-content {\\n height: auto;\\n overflow-y: visible;\\n overscroll-behavior-y: auto;\\n }\\n html.platform-android .ant-table-wrapper {\\n overscroll-behavior-y: auto;\\n }\\n}\\n.ant-btn:focus-visible,\\n.ant-input:focus-visible,\\n.ant-select:focus-visible,\\n.ant-tabs-tab:focus-visible {\\n outline: 2px solid var(--primary-color);\\n outline-offset: 2px;\\n}\\n.ant-btn:focus:not(:focus-visible),\\n.ant-input:focus:not(:focus-visible),\\n.ant-select:focus:not(:focus-visible),\\n.ant-tabs-tab:focus:not(:focus-visible) {\\n outline: none;\\n}\\n.ant-empty {\\n padding: var(--spacing-xl) var(--spacing-md);\\n}\\n.ant-empty .ant-empty-image {\\n height: 100px;\\n margin-bottom: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-empty .ant-empty-image {\\n height: 80px;\\n }\\n}\\n.ant-empty .ant-empty-description {\\n color: var(--text-secondary);\\n font-size: 14px;\\n}\\n@media (max-width: 575px) {\\n .ant-empty .ant-empty-description {\\n font-size: 13px;\\n }\\n}\\n.ant-message {\\n top: 20px;\\n}\\n@media (max-width: 575px) {\\n .ant-message {\\n top: 10px;\\n }\\n}\\n.ant-message .ant-message-notice-content {\\n border-radius: var(--radius-md);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n padding: 12px 16px;\\n}\\n@media (max-width: 575px) {\\n .ant-message .ant-message-notice-content {\\n padding: 10px 14px;\\n font-size: 14px;\\n }\\n}\\n.ant-skeleton .ant-skeleton-content .ant-skeleton-title {\\n height: 20px;\\n border-radius: var(--radius-sm);\\n}\\n.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph > li {\\n height: 16px;\\n border-radius: var(--radius-sm);\\n}\\n.ant-skeleton .ant-skeleton-avatar {\\n border-radius: var(--radius-md);\\n}\\n.ant-skeleton .ant-skeleton-button {\\n border-radius: var(--radius-sm);\\n}\\n.ant-drawer .ant-drawer-content {\\n border-radius: var(--radius-lg) var(--radius-lg) 0 0;\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-content {\\n border-radius: var(--radius-md) var(--radius-md) 0 0;\\n }\\n}\\n.ant-drawer .ant-drawer-header {\\n padding: var(--spacing-md) var(--spacing-lg);\\n border-bottom: 1px solid var(--border-color-light);\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-header {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-drawer .ant-drawer-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-body {\\n padding: var(--spacing-md);\\n }\\n}\\n.ant-popover .ant-popover-inner,\\n.ant-tooltip .ant-popover-inner,\\n.ant-popover .ant-tooltip-inner,\\n.ant-tooltip .ant-tooltip-inner {\\n border-radius: var(--radius-sm);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-badge .ant-badge-count {\\n border-radius: var(--radius-sm);\\n box-shadow: 0 2px 4px var(--shadow-color);\\n}\\n.ant-progress .ant-progress-inner {\\n border-radius: var(--radius-sm);\\n}\\n.ant-progress .ant-progress-bg {\\n border-radius: var(--radius-sm);\\n}\\n.ant-steps .ant-steps-item-icon {\\n border-radius: 50%;\\n transition: all var(--transition-fast);\\n}\\n.ant-steps .ant-steps-item-title {\\n font-weight: 500;\\n}\\n.ant-collapse {\\n border-radius: var(--radius-md);\\n border: 1px solid var(--border-color-light);\\n}\\n.ant-collapse .ant-collapse-item {\\n border-bottom: 1px solid var(--border-color-light);\\n}\\n.ant-collapse .ant-collapse-item:last-child {\\n border-bottom: none;\\n border-radius: 0 0 var(--radius-md) var(--radius-md);\\n}\\n.ant-collapse .ant-collapse-header {\\n padding: var(--spacing-md) var(--spacing-lg);\\n font-weight: 500;\\n transition: background var(--transition-fast);\\n}\\n.ant-collapse .ant-collapse-header:hover {\\n background: var(--bg-tertiary);\\n}\\n@media (max-width: 575px) {\\n .ant-collapse .ant-collapse-header {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-collapse .ant-collapse-content-box {\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-collapse .ant-collapse-content-box {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-timeline .ant-timeline-item-head {\\n border-radius: 50%;\\n}\\n.ant-timeline .ant-timeline-item-content {\\n margin-left: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-timeline .ant-timeline-item-content {\\n margin-left: var(--spacing-md);\\n }\\n}\\n.ant-result {\\n padding: var(--spacing-xl) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-result {\\n padding: var(--spacing-lg) var(--spacing-md);\\n }\\n}\\n.ant-result .ant-result-icon {\\n margin-bottom: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-icon {\\n margin-bottom: var(--spacing-md);\\n }\\n}\\n.ant-result .ant-result-title {\\n font-size: 24px;\\n font-weight: 600;\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-title {\\n font-size: 20px;\\n }\\n}\\n.ant-result .ant-result-subtitle {\\n font-size: 14px;\\n color: var(--text-secondary);\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-subtitle {\\n font-size: 13px;\\n }\\n}\\n.ant-descriptions .ant-descriptions-item-label {\\n font-weight: 500;\\n color: var(--text-primary);\\n}\\n.ant-descriptions .ant-descriptions-item-content {\\n color: var(--text-secondary);\\n}\\n@media (max-width: 575px) {\\n .ant-descriptions .ant-descriptions-item-label,\\n .ant-descriptions .ant-descriptions-item-content {\\n font-size: 13px;\\n }\\n}\\n.ant-statistic .ant-statistic-title {\\n font-size: 14px;\\n color: var(--text-secondary);\\n margin-bottom: var(--spacing-xs);\\n}\\n@media (max-width: 575px) {\\n .ant-statistic .ant-statistic-title {\\n font-size: 13px;\\n }\\n}\\n.ant-statistic .ant-statistic-content {\\n font-size: 24px;\\n font-weight: 600;\\n color: var(--text-primary);\\n}\\n@media (max-width: 575px) {\\n .ant-statistic .ant-statistic-content {\\n font-size: 20px;\\n }\\n}\\n.ant-segmented {\\n border-radius: var(--radius-sm);\\n padding: 2px;\\n background: var(--bg-tertiary);\\n}\\n.ant-segmented .ant-segmented-item {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-segmented .ant-segmented-item:hover {\\n color: var(--primary-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-segmented .ant-segmented-item {\\n padding: 6px 12px;\\n font-size: 13px;\\n }\\n}\\n.ant-segmented .ant-segmented-item-selected {\\n background: var(--bg-primary);\\n box-shadow: 0 2px 4px var(--shadow-color);\\n}\\n.ant-rate .ant-rate-star {\\n transition: all var(--transition-fast);\\n}\\n.ant-rate .ant-rate-star:hover {\\n transform: scale(1.1);\\n}\\n@media (max-width: 575px) {\\n .ant-rate {\\n font-size: 18px;\\n }\\n}\\n.ant-slider .ant-slider-rail {\\n border-radius: var(--radius-sm);\\n}\\n.ant-slider .ant-slider-track {\\n border-radius: var(--radius-sm);\\n}\\n.ant-slider .ant-slider-handle {\\n border-radius: 50%;\\n box-shadow: 0 2px 4px var(--shadow-color);\\n transition: all var(--transition-fast);\\n}\\n.ant-slider .ant-slider-handle:hover,\\n.ant-slider .ant-slider-handle:focus {\\n box-shadow: 0 4px 8px var(--shadow-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-slider .ant-slider-handle {\\n width: 20px;\\n height: 20px;\\n }\\n}\\n.ant-mentions {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-mentions:hover {\\n border-color: var(--primary-hover);\\n}\\n.ant-mentions:focus,\\n.ant-mentions.ant-mentions-focused {\\n border-color: var(--primary-color);\\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 575px) {\\n .ant-mentions {\\n font-size: 16px !important;\\n min-height: 44px;\\n }\\n}\\n.ant-transfer .ant-transfer-list {\\n border-radius: var(--radius-md);\\n border: 1px solid var(--border-color-light);\\n}\\n@media (max-width: 575px) {\\n .ant-transfer .ant-transfer-list {\\n width: 100%;\\n }\\n}\\n.ant-transfer .ant-transfer-list-header {\\n border-radius: var(--radius-md) var(--radius-md) 0 0;\\n background: var(--bg-tertiary);\\n padding: var(--spacing-sm) var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-transfer .ant-transfer-list-body {\\n font-size: 14px;\\n }\\n}\\n.ant-tree .ant-tree-node-content-wrapper {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-tree .ant-tree-node-content-wrapper:hover {\\n background: var(--bg-tertiary);\\n}\\n.ant-tree .ant-tree-node-selected .ant-tree-node-content-wrapper {\\n background: rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 575px) {\\n .ant-tree .ant-tree-title {\\n font-size: 14px;\\n }\\n}\\n.ant-picker-calendar {\\n border-radius: var(--radius-md);\\n}\\n.ant-picker-calendar .ant-picker-calendar-header {\\n padding: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-picker-calendar .ant-picker-calendar-header {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-picker-calendar .ant-picker-cell {\\n border-radius: var(--radius-sm);\\n}\\n.ant-picker-calendar .ant-picker-cell:hover .ant-picker-cell-inner {\\n background: var(--bg-tertiary);\\n}\\n.ant-picker-calendar .ant-picker-cell-selected .ant-picker-cell-inner {\\n background: var(--primary-color);\\n color: white;\\n}\\n.ant-image {\\n border-radius: var(--radius-md);\\n overflow: hidden;\\n}\\n.ant-image img {\\n transition: transform var(--transition-base);\\n}\\n.ant-image:hover img {\\n transform: scale(1.05);\\n}\\n.ant-watermark {\\n opacity: 0.15;\\n}\\n.ant-qrcode {\\n border-radius: var(--radius-md);\\n padding: var(--spacing-md);\\n background: white;\\n box-shadow: 0 2px 8px var(--shadow-color);\\n}\\n.ant-float-btn {\\n border-radius: 50%;\\n box-shadow: 0 4px 12px var(--shadow-color);\\n transition: all var(--transition-fast);\\n}\\n.ant-float-btn:hover {\\n transform: translateY(-2px);\\n box-shadow: 0 6px 16px var(--shadow-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-float-btn {\\n width: 48px;\\n height: 48px;\\n }\\n}\\n.ant-tour .ant-tour-content {\\n border-radius: var(--radius-md);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-tour .ant-tour-arrow::before {\\n background: var(--bg-primary);\\n}\\n@media print {\\n .container {\\n padding: 0;\\n background: white;\\n }\\n .ant-tabs-nav,\\n .ant-btn,\\n .ant-tabs-extra-content {\\n display: none !important;\\n }\\n * {\\n animation: none !important;\\n transition: none !important;\\n }\\n}\\n',document.head.appendChild(e)}var Lc=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var k=_(J(),1),z=_(Be(),1);var G=_(J()),Qr=_(vo());function dt(e){return\"Minified Redux error #\".concat(e,\"; visit https://redux.js.org/Errors?code=\").concat(e,\" for the full message or use the non-minified dev environment for full errors. \")}var Nb=typeof Symbol==\"function\"&&Symbol.observable||\"@@observable\",Mc=Nb,Ci=()=>Math.random().toString(36).substring(7).split(\"\").join(\".\"),Fb={INIT:\"@@redux/INIT\".concat(Ci()),REPLACE:\"@@redux/REPLACE\".concat(Ci()),PROBE_UNKNOWN_ACTION:()=>\"@@redux/PROBE_UNKNOWN_ACTION\".concat(Ci())},Vc=Fb;function Ab(e){if(typeof e!=\"object\"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Si(e,t,n){if(typeof e!=\"function\")throw new Error(dt(2));if(typeof t==\"function\"&&typeof n==\"function\"||typeof n==\"function\"&&typeof arguments[3]==\"function\")throw new Error(dt(0));if(typeof t==\"function\"&&typeof n>\"u\"&&(n=t,t=void 0),typeof n<\"u\"){if(typeof n!=\"function\")throw new Error(dt(1));return n(Si)(e,t)}let r=e,o=t,a=new Map,i=a,s=0,l=!1;function c(){i===a&&(i=new Map,a.forEach((v,y)=>{i.set(y,v)}))}function f(){if(l)throw new Error(dt(3));return o}function d(v){if(typeof v!=\"function\")throw new Error(dt(4));if(l)throw new Error(dt(5));let y=!0;c();let b=s++;return i.set(b,v),function(){if(y){if(l)throw new Error(dt(6));y=!1,c(),i.delete(b),a=null}}}function u(v){if(!Ab(v))throw new Error(dt(7));if(typeof v.type>\"u\")throw new Error(dt(8));if(typeof v.type!=\"string\")throw new Error(dt(17));if(l)throw new Error(dt(9));try{l=!0,o=r(o,v)}finally{l=!1}return(a=i).forEach(b=>{b()}),v}function m(v){if(typeof v!=\"function\")throw new Error(dt(10));r=v,u({type:Vc.REPLACE})}function h(){let v=d;return{subscribe(y){if(typeof y!=\"object\"||y===null)throw new Error(dt(11));function b(){let w=y;w.next&&w.next(f())}return b(),{unsubscribe:v(b)}},[Mc](){return this}}}return u({type:Vc.INIT}),{dispatch:u,subscribe:d,getState:f,replaceReducer:m,[Mc]:h}}function zc(e,t){return function(...n){return t(e.apply(this,n))}}function Oi(e,t){if(typeof e==\"function\")return zc(e,t);if(typeof e!=\"object\"||e===null)throw new Error(dt(16));let n={};for(let r in e){let o=e[r];typeof o==\"function\"&&(n[r]=zc(o,t))}return n}function Di(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function $c(...e){return t=>(n,r)=>{let o=t(n,r),a=()=>{throw new Error(dt(15))},i={getState:o.getState,dispatch:(l,...c)=>a(l,...c)},s=e.map(l=>l(i));return a=Di(...s)(o.dispatch),I(C({},o),{dispatch:a})}}var le=_(J(),1),Ax=_(jc(),1);var $b=le.version.startsWith(\"19\"),Ub=Symbol.for($b?\"react.transitional.element\":\"react.element\"),Wb=Symbol.for(\"react.portal\"),Gb=Symbol.for(\"react.fragment\"),jb=Symbol.for(\"react.strict_mode\"),Hb=Symbol.for(\"react.profiler\"),qb=Symbol.for(\"react.consumer\"),Yb=Symbol.for(\"react.context\"),Qc=Symbol.for(\"react.forward_ref\"),Kb=Symbol.for(\"react.suspense\"),Xb=Symbol.for(\"react.suspense_list\"),Fi=Symbol.for(\"react.memo\"),Jb=Symbol.for(\"react.lazy\");var Qb=Qc,Zb=Fi;function Rb(e){if(typeof e==\"object\"&&e!==null){let{$$typeof:t}=e;switch(t){case Ub:switch(e=e.type,e){case Gb:case Hb:case jb:case Kb:case Xb:return e;default:switch(e=e&&e.$$typeof,e){case Yb:case Qc:case Jb:case Fi:return e;case qb:return e;default:return t}}case Wb:return t}}}function ex(e){return Rb(e)===Fi}function tx(e,t,n,r,{areStatesEqual:o,areOwnPropsEqual:a,areStatePropsEqual:i}){let s=!1,l,c,f,d,u;function m(b,S){return l=b,c=S,f=e(l,c),d=t(r,c),u=n(f,d,c),s=!0,u}function h(){return f=e(l,c),t.dependsOnOwnProps&&(d=t(r,c)),u=n(f,d,c),u}function x(){return e.dependsOnOwnProps&&(f=e(l,c)),t.dependsOnOwnProps&&(d=t(r,c)),u=n(f,d,c),u}function v(){let b=e(l,c),S=!i(b,f);return f=b,S&&(u=n(f,d,c)),u}function y(b,S){let w=!a(S,c),D=!o(b,l,S,c);return l=b,c=S,w&&D?h():w?x():D?v():u}return function(S,w){return s?y(S,w):m(S,w)}}function nx(e,a){var i=a,{initMapStateToProps:t,initMapDispatchToProps:n,initMergeProps:r}=i,o=Vt(i,[\"initMapStateToProps\",\"initMapDispatchToProps\",\"initMergeProps\"]);let s=t(e,o),l=n(e,o),c=r(e,o);return tx(s,l,c,e,o)}function rx(e,t){let n={};for(let r in e){let o=e[r];typeof o==\"function\"&&(n[r]=(...a)=>t(o(...a)))}return n}function ki(e){return function(n){let r=e(n);function o(){return r}return o.dependsOnOwnProps=!1,o}}function Hc(e){return e.dependsOnOwnProps?!!e.dependsOnOwnProps:e.length!==1}function Zc(e,t){return function(r,{displayName:o}){let a=function(s,l){return a.dependsOnOwnProps?a.mapToProps(s,l):a.mapToProps(s,void 0)};return a.dependsOnOwnProps=!0,a.mapToProps=function(s,l){a.mapToProps=e,a.dependsOnOwnProps=Hc(e);let c=a(s,l);return typeof c==\"function\"&&(a.mapToProps=c,a.dependsOnOwnProps=Hc(c),c=a(s,l)),c},a}}function Ai(e,t){return(n,r)=>{throw new Error(\"Invalid value of type \".concat(typeof e,\" for \").concat(t,\" argument when connecting component \").concat(r.wrappedComponentName,\".\"))}}function ox(e){return e&&typeof e==\"object\"?ki(t=>rx(e,t)):e?typeof e==\"function\"?Zc(e,\"mapDispatchToProps\"):Ai(e,\"mapDispatchToProps\"):ki(t=>({dispatch:t}))}function ax(e){return e?typeof e==\"function\"?Zc(e,\"mapStateToProps\"):Ai(e,\"mapStateToProps\"):ki(()=>({}))}function ix(e,t,n){return C(C(C({},n),e),t)}function sx(e){return function(n,{displayName:r,areMergedPropsEqual:o}){let a=!1,i;return function(l,c,f){let d=e(l,c,f);return a?o(d,i)||(i=d):(a=!0,i=d),i}}}function lx(e){return e?typeof e==\"function\"?sx(e):Ai(e,\"mergeProps\"):()=>ix}function dx(e){e()}function cx(){let e=null,t=null;return{clear(){e=null,t=null},notify(){dx(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){let n=[],r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0,o=t={callback:n,next:null,prev:t};return o.prev?o.prev.next=o:e=o,function(){!r||e===null||(r=!1,o.next?o.next.prev=o.prev:t=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}var qc={notify(){},get:()=>[]};function Rc(e,t){let n,r=qc,o=0,a=!1;function i(x){f();let v=r.subscribe(x),y=!1;return()=>{y||(y=!0,v(),d())}}function s(){r.notify()}function l(){h.onStateChange&&h.onStateChange()}function c(){return a}function f(){o++,n||(n=t?t.addNestedSub(l):e.subscribe(l),r=cx())}function d(){o--,n&&o===0&&(n(),n=void 0,r.clear(),r=qc)}function u(){a||(a=!0,f())}function m(){a&&(a=!1,d())}let h={addNestedSub:i,notifyNestedSubs:s,handleChangeWrapper:l,isSubscribed:c,trySubscribe:u,tryUnsubscribe:m,getListeners:()=>r};return h}var ux=()=>typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\",fx=ux(),px=()=>typeof navigator<\"u\"&&navigator.product===\"ReactNative\",mx=px(),gx=()=>fx||mx?le.useLayoutEffect:le.useEffect,xa=gx();function Yc(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function Ii(e,t){if(Yc(e,t))return!0;if(typeof e!=\"object\"||e===null||typeof t!=\"object\"||t===null)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let o=0;oe(...t),n)}function Ex(e,t,n,r,o,a){e.current=r,n.current=!1,o.current&&(o.current=null,a())}function Tx(e,t,n,r,o,a,i,s,l,c,f){if(!e)return()=>{};let d=!1,u=null,m=()=>{if(d||!s.current)return;let x=t.getState(),v,y;try{v=r(x,o.current)}catch(b){y=b,u=b}y||(u=null),v===a.current?i.current||c():(a.current=v,l.current=v,i.current=!0,f())};return n.onStateChange=m,n.trySubscribe(),m(),()=>{if(d=!0,n.tryUnsubscribe(),n.onStateChange=null,u)throw u}}function kx(e,t){return e===t}function Nx(e,t,n,{pure:r,areStatesEqual:o=kx,areOwnPropsEqual:a=Ii,areStatePropsEqual:i=Ii,areMergedPropsEqual:s=Ii,forwardRef:l=!1,context:c=tu}={}){let f=c,d=ax(e),u=ox(t),m=lx(n),h=!!e;return v=>{let y=v.displayName||v.name||\"Component\",b=\"Connect(\".concat(y,\")\"),S={shouldHandleStateChanges:h,displayName:b,wrappedComponentName:y,WrappedComponent:v,initMapStateToProps:d,initMapDispatchToProps:u,initMergeProps:m,areStatesEqual:o,areStatePropsEqual:i,areOwnPropsEqual:a,areMergedPropsEqual:s};function w(F){let[T,P,V]=le.useMemo(()=>{let St=F,{reactReduxForwardedRef:_e}=St,mt=Vt(St,[\"reactReduxForwardedRef\"]);return[F.context,_e,mt]},[F]),E=le.useMemo(()=>{let _e=f;return T!=null&&T.Consumer,_e},[T,f]),N=le.useContext(E),U=!!F.store&&!!F.store.getState&&!!F.store.dispatch,K=!!N&&!!N.store,de=U?F.store:N.store,ve=K?N.getServerState:de.getState,Oe=le.useMemo(()=>nx(de.dispatch,S),[de]),[qe,Ue]=le.useMemo(()=>{if(!h)return Dx;let _e=Rc(de,U?void 0:N.subscription),mt=_e.notifyNestedSubs.bind(_e);return[_e,mt]},[de,U,N]),Yt=le.useMemo(()=>U?N:I(C({},N),{subscription:qe}),[U,N,qe]),Kt=le.useRef(void 0),Ye=le.useRef(V),it=le.useRef(void 0),_t=le.useRef(!1),Wt=le.useRef(!1),Re=le.useRef(void 0);xa(()=>(Wt.current=!0,()=>{Wt.current=!1}),[]);let cn=le.useMemo(()=>()=>it.current&&V===Ye.current?it.current:Oe(de.getState(),V),[de,V]),Bt=le.useMemo(()=>mt=>qe?Tx(h,de,qe,Oe,Ye,Kt,_t,Wt,it,Ue,mt):()=>{},[qe]);Ix(Ex,[Ye,Kt,_t,V,it,Ue]);let pt;try{pt=le.useSyncExternalStore(Bt,cn,ve?()=>Oe(ve(),V):cn)}catch(_e){throw Re.current&&(_e.message+=\"\\nThe error may be correlated with this previous error:\\n\".concat(Re.current.stack,\"\\n\\n\")),_e}xa(()=>{Re.current=void 0,it.current=void 0,Kt.current=pt});let we=le.useMemo(()=>le.createElement(v,I(C({},pt),{ref:P})),[P,v,pt]);return le.useMemo(()=>h?le.createElement(E.Provider,{value:Yt},we):we,[E,we,Yt])}let O=le.memo(w);if(O.WrappedComponent=v,O.displayName=w.displayName=b,l){let T=le.forwardRef(function(V,E){return le.createElement(O,I(C({},V),{reactReduxForwardedRef:E}))});return T.displayName=b,T.WrappedComponent=v,Ni(T,v)}return Ni(O,v)}}var Pi=Nx;function Fx(e){let{children:t,context:n,serverState:r,store:o}=e,a=le.useMemo(()=>{let l=Rc(o);return{store:o,subscription:l,getServerState:r?()=>r:void 0}},[o,r]),i=le.useMemo(()=>o.getState(),[o]);return xa(()=>{let{subscription:l}=a;return l.onStateChange=l.notifyNestedSubs,l.trySubscribe(),i!==o.getState()&&l.notifyNestedSubs(),()=>{l.tryUnsubscribe(),l.onStateChange=void 0}},[a,i]),le.createElement((n||tu).Provider,{value:a},t)}var nu=Fx;var Px=!0,_i=\"Invariant failed\";function ru(e,t){if(!e){if(Px)throw new Error(_i);var n=typeof t==\"function\"?t():t,r=n?\"\".concat(_i,\": \").concat(n):_i;throw new Error(r)}}var Tt=function(t){var n=t.top,r=t.right,o=t.bottom,a=t.left,i=r-a,s=o-n,l={top:n,right:r,bottom:o,left:a,width:i,height:s,x:a,y:n,center:{x:(r+a)/2,y:(o+n)/2}};return l},va=function(t,n){return{top:t.top-n.top,left:t.left-n.left,bottom:t.bottom+n.bottom,right:t.right+n.right}},ou=function(t,n){return{top:t.top+n.top,left:t.left+n.left,bottom:t.bottom-n.bottom,right:t.right-n.right}},_x=function(t,n){return{top:t.top+n.y,left:t.left+n.x,bottom:t.bottom+n.y,right:t.right+n.x}},Bi={top:0,right:0,bottom:0,left:0},ya=function(t){var n=t.borderBox,r=t.margin,o=r===void 0?Bi:r,a=t.border,i=a===void 0?Bi:a,s=t.padding,l=s===void 0?Bi:s,c=Tt(va(n,o)),f=Tt(ou(n,i)),d=Tt(ou(f,l));return{marginBox:c,borderBox:Tt(n),paddingBox:f,contentBox:d,margin:o,border:i,padding:l}},Et=function(t){var n=t.slice(0,-2),r=t.slice(-2);if(r!==\"px\")return 0;var o=Number(n);return isNaN(o)&&ru(!1),o},Bx=function(){return{x:window.pageXOffset,y:window.pageYOffset}},Mr=function(t,n){var r=t.borderBox,o=t.border,a=t.margin,i=t.padding,s=_x(r,n);return ya({borderBox:s,border:o,margin:a,padding:i})},Vr=function(t,n){return n===void 0&&(n=Bx()),Mr(t,n)},Li=function(t,n){var r={top:Et(n.marginTop),right:Et(n.marginRight),bottom:Et(n.marginBottom),left:Et(n.marginLeft)},o={top:Et(n.paddingTop),right:Et(n.paddingRight),bottom:Et(n.paddingBottom),left:Et(n.paddingLeft)},a={top:Et(n.borderTopWidth),right:Et(n.borderRightWidth),bottom:Et(n.borderBottomWidth),left:Et(n.borderLeftWidth)};return ya({borderBox:t,margin:r,padding:o,border:a})},Mi=function(t){var n=t.getBoundingClientRect(),r=window.getComputedStyle(t);return Li(n,r)};var Lx=function(t){var n=[],r=null,o=function(){for(var i=arguments.length,s=new Array(i),l=0;le.replace(Vx,\" \").replace(zx,\"\").trim(),$x=e=>au(\"\\n %c@hello-pangea/dnd\\n\\n %c\".concat(au(e),\"\\n\\n %c\\u{1F477}\\u200D This is a development only message. It will be removed in production builds.\\n\")),Ux=e=>[$x(e),\"color: #00C584; font-size: 1.2em; font-weight: bold;\",\"line-height: 1.5\",\"color: #723874;\"],Wx=\"__@hello-pangea/dnd-disable-dev-warnings\";function Pu(e,t){Mx||typeof window<\"u\"&&window[Wx]||console[e](...Ux(t))}var FI=Pu.bind(null,\"warn\"),Gx=Pu.bind(null,\"error\");function on(){}function jx(e,t){return C(C({},e),t)}function kt(e,t,n){let r=t.map(o=>{let a=jx(n,o.options);return e.addEventListener(o.eventName,o.fn,a),function(){e.removeEventListener(o.eventName,o.fn,a)}});return function(){r.forEach(a=>{a()})}}var Hx=!0,iu=\"Invariant failed\",Fn=class extends Error{};Fn.prototype.toString=function(){return this.message};function B(e,t){throw Hx?new Fn(iu):new Fn(\"\".concat(iu,\": \").concat(t||\"\"))}var Ki=class extends G.default.Component{constructor(...t){super(...t),this.callbacks=null,this.unbind=on,this.onWindowError=n=>{let r=this.getCallbacks();r.isDragging()&&r.tryAbort(),n.error instanceof Fn&&n.preventDefault()},this.getCallbacks=()=>{if(!this.callbacks)throw new Error(\"Unable to find AppCallbacks in \");return this.callbacks},this.setCallbacks=n=>{this.callbacks=n}}componentDidMount(){this.unbind=kt(window,[{eventName:\"error\",fn:this.onWindowError}])}componentDidCatch(t){if(t instanceof Fn){this.setState({});return}throw t}componentWillUnmount(){this.unbind()}render(){return this.props.children(this.setCallbacks)}},qx=\"\\n Press space bar to start a drag.\\n When dragging you can use the arrow keys to move the item around and escape to cancel.\\n Some screen readers may require you to be in focus mode or to use your pass through key\\n\",Da=e=>e+1,Yx=e=>\"\\n You have lifted an item in position \".concat(Da(e.source.index),\"\\n\"),_u=(e,t)=>{let n=e.droppableId===t.droppableId,r=Da(e.index),o=Da(t.index);return n?\"\\n You have moved the item from position \".concat(r,\"\\n to position \").concat(o,\"\\n \"):\"\\n You have moved the item from position \".concat(r,\"\\n in list \").concat(e.droppableId,\"\\n to list \").concat(t.droppableId,\"\\n in position \").concat(o,\"\\n \")},Bu=(e,t,n)=>t.droppableId===n.droppableId?\"\\n The item \".concat(e,\"\\n has been combined with \").concat(n.draggableId):\"\\n The item \".concat(e,\"\\n in list \").concat(t.droppableId,\"\\n has been combined with \").concat(n.draggableId,\"\\n in list \").concat(n.droppableId,\"\\n \"),Kx=e=>{let t=e.destination;if(t)return _u(e.source,t);let n=e.combine;return n?Bu(e.draggableId,e.source,n):\"You are over an area that cannot be dropped on\"},su=e=>\"\\n The item has returned to its starting position\\n of \".concat(Da(e.index),\"\\n\"),Xx=e=>{if(e.reason===\"CANCEL\")return\"\\n Movement cancelled.\\n \".concat(su(e.source),\"\\n \");let t=e.destination,n=e.combine;return t?\"\\n You have dropped the item.\\n \".concat(_u(e.source,t),\"\\n \"):n?\"\\n You have dropped the item.\\n \".concat(Bu(e.draggableId,e.source,n),\"\\n \"):\"\\n The item has been dropped while not over a drop area.\\n \".concat(su(e.source),\"\\n \")},Oa={dragHandleUsageInstructions:qx,onDragStart:Yx,onDragUpdate:Kx,onDragEnd:Xx};function Jx(e,t){return!!(e===t||Number.isNaN(e)&&Number.isNaN(t))}function Lu(e,t){if(e.length!==t.length)return!1;for(let n=0;n({inputs:t,result:e()}))[0],r=(0,G.useRef)(!0),o=(0,G.useRef)(n),i=r.current||!!(t&&o.current.inputs&&Lu(t,o.current.inputs))?o.current:{inputs:t,result:e()};return(0,G.useEffect)(()=>{r.current=!1,o.current=i},[i]),i.result}function Q(e,t){return ye(()=>e,t)}var Ze={x:0,y:0},rt=(e,t)=>({x:e.x+t.x,y:e.y+t.y}),vt=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),an=(e,t)=>e.x===t.x&&e.y===t.y,er=e=>({x:e.x!==0?-e.x:0,y:e.y!==0?-e.y:0}),An=(e,t,n=0)=>e===\"x\"?{x:t,y:n}:{x:n,y:t},jr=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2),lu=(e,t)=>Math.min(...t.map(n=>jr(e,n))),Mu=e=>t=>({x:e(t.x),y:e(t.y)}),Qx=(e,t)=>{let n=Tt({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n},Zr=(e,t)=>({top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}),du=e=>[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}],Zx={top:0,right:0,bottom:0,left:0},Rx=(e,t)=>t?Zr(e,t.scroll.diff.displacement):e,ev=(e,t,n)=>n&&n.increasedBy?I(C({},e),{[t.end]:e[t.end]+n.increasedBy[t.line]}):e,tv=(e,t)=>t&&t.shouldClipSubject?Qx(t.pageMarginBox,e):Tt(e),Qn=({page:e,withPlaceholder:t,axis:n,frame:r})=>{let o=Rx(e.marginBox,r),a=ev(o,n,t),i=tv(a,r);return{page:e,withPlaceholder:t,active:i}},ns=(e,t)=>{e.frame||B();let n=e.frame,r=vt(t,n.scroll.initial),o=er(r),a=I(C({},n),{scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:o},max:n.scroll.max}}),i=Qn({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:a});return I(C({},e),{frame:a,subject:i})};function Qe(e,t=Lu){let n=null;function r(...o){if(n&&n.lastThis===this&&t(o,n.lastArgs))return n.lastResult;let a=e.apply(this,o);return n={lastResult:a,lastArgs:o,lastThis:this},a}return r.clear=function(){n=null},r}var Vu=Qe(e=>e.reduce((t,n)=>(t[n.descriptor.id]=n,t),{})),zu=Qe(e=>e.reduce((t,n)=>(t[n.descriptor.id]=n,t),{})),Ta=Qe(e=>Object.values(e)),nv=Qe(e=>Object.values(e)),tr=Qe((e,t)=>nv(t).filter(r=>e===r.descriptor.droppableId).sort((r,o)=>r.descriptor.index-o.descriptor.index));function rs(e){return e.at&&e.at.type===\"REORDER\"?e.at.destination:null}function ka(e){return e.at&&e.at.type===\"COMBINE\"?e.at.combine:null}var Na=Qe((e,t)=>t.filter(n=>n.descriptor.id!==e.descriptor.id)),rv=({isMovingForward:e,draggable:t,destination:n,insideDestination:r,previousImpact:o})=>{if(!n.isCombineEnabled||!rs(o))return null;function i(m){let h={type:\"COMBINE\",combine:{draggableId:m,droppableId:n.descriptor.id}};return I(C({},o),{at:h})}let s=o.displaced.all,l=s.length?s[0]:null;if(e)return l?i(l):null;let c=Na(t,r);if(!l){if(!c.length)return null;let m=c[c.length-1];return i(m.descriptor.id)}let f=c.findIndex(m=>m.descriptor.id===l);f===-1&&B();let d=f-1;if(d<0)return null;let u=c[d];return i(u.descriptor.id)},nr=(e,t)=>e.descriptor.droppableId===t.descriptor.id,$u={point:Ze,value:0},Hr={invisible:{},visible:{},all:[]},ov={displaced:Hr,displacedBy:$u,at:null},Nt=(e,t)=>n=>e<=n&&n<=t,Uu=e=>{let t=Nt(e.top,e.bottom),n=Nt(e.left,e.right);return r=>{if(t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right))return!0;let a=t(r.top)||t(r.bottom),i=n(r.left)||n(r.right);if(a&&i)return!0;let l=r.tope.bottom,c=r.lefte.right;return l&&c?!0:l&&i||c&&a}},av=e=>{let t=Nt(e.top,e.bottom),n=Nt(e.left,e.right);return r=>t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right)},os={direction:\"vertical\",line:\"y\",crossAxisLine:\"x\",start:\"top\",end:\"bottom\",size:\"height\",crossAxisStart:\"left\",crossAxisEnd:\"right\",crossAxisSize:\"width\"},Wu={direction:\"horizontal\",line:\"x\",crossAxisLine:\"y\",start:\"left\",end:\"right\",size:\"width\",crossAxisStart:\"top\",crossAxisEnd:\"bottom\",crossAxisSize:\"height\"},iv=e=>t=>{let n=Nt(t.top,t.bottom),r=Nt(t.left,t.right);return o=>e===os?n(o.top)&&n(o.bottom):r(o.left)&&r(o.right)},sv=(e,t)=>{let n=t.frame?t.frame.scroll.diff.displacement:Ze;return Zr(e,n)},lv=(e,t,n)=>t.subject.active?n(t.subject.active)(e):!1,dv=(e,t,n)=>n(t)(e),as=({target:e,destination:t,viewport:n,withDroppableDisplacement:r,isVisibleThroughFrameFn:o})=>{let a=r?sv(e,t):e;return lv(a,t,o)&&dv(a,n,o)},cv=e=>as(I(C({},e),{isVisibleThroughFrameFn:Uu})),Gu=e=>as(I(C({},e),{isVisibleThroughFrameFn:av})),uv=e=>as(I(C({},e),{isVisibleThroughFrameFn:iv(e.destination.axis)})),fv=(e,t,n)=>{if(typeof n==\"boolean\")return n;if(!t)return!0;let{invisible:r,visible:o}=t;if(r[e])return!1;let a=o[e];return a?a.shouldAnimate:!0};function pv(e,t){let n=e.page.marginBox,r={top:t.point.y,right:0,bottom:0,left:t.point.x};return Tt(va(n,r))}function qr({afterDragging:e,destination:t,displacedBy:n,viewport:r,forceShouldAnimate:o,last:a}){return e.reduce(function(s,l){let c=pv(l,n),f=l.descriptor.id;if(s.all.push(f),!cv({target:c,destination:t,viewport:r,withDroppableDisplacement:!0}))return s.invisible[l.descriptor.id]=!0,s;let u=fv(f,a,o),m={draggableId:f,shouldAnimate:u};return s.visible[f]=m,s},{all:[],visible:{},invisible:{}})}function mv(e,t){if(!e.length)return 0;let n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}function cu({insideDestination:e,inHomeList:t,displacedBy:n,destination:r}){let o=mv(e,{inHomeList:t});return{displaced:Hr,displacedBy:n,at:{type:\"REORDER\",destination:{droppableId:r.descriptor.id,index:o}}}}function Ia({draggable:e,insideDestination:t,destination:n,viewport:r,displacedBy:o,last:a,index:i,forceShouldAnimate:s}){let l=nr(e,n);if(i==null)return cu({insideDestination:t,inHomeList:l,displacedBy:o,destination:n});let c=t.find(h=>h.descriptor.index===i);if(!c)return cu({insideDestination:t,inHomeList:l,displacedBy:o,destination:n});let f=Na(e,t),d=t.indexOf(c),u=f.slice(d);return{displaced:qr({afterDragging:u,destination:n,displacedBy:o,last:a,viewport:r.frame,forceShouldAnimate:s}),displacedBy:o,at:{type:\"REORDER\",destination:{droppableId:n.descriptor.id,index:i}}}}function sn(e,t){return!!t.effected[e]}var gv=({isMovingForward:e,destination:t,draggables:n,combine:r,afterCritical:o})=>{if(!t.isCombineEnabled)return null;let a=r.draggableId,s=n[a].descriptor.index;return sn(a,o)?e?s:s-1:e?s+1:s},hv=({isMovingForward:e,isInHomeList:t,insideDestination:n,location:r})=>{if(!n.length)return null;let o=r.index,a=e?o+1:o-1,i=n[0].descriptor.index,s=n[n.length-1].descriptor.index,l=t?s:s+1;return al?null:a},bv=({isMovingForward:e,isInHomeList:t,draggable:n,draggables:r,destination:o,insideDestination:a,previousImpact:i,viewport:s,afterCritical:l})=>{let c=i.at;if(c||B(),c.type===\"REORDER\"){let d=hv({isMovingForward:e,isInHomeList:t,location:c.destination,insideDestination:a});return d==null?null:Ia({draggable:n,insideDestination:a,destination:o,viewport:s,last:i.displaced,displacedBy:i.displacedBy,index:d})}let f=gv({isMovingForward:e,destination:o,displaced:i.displaced,draggables:r,combine:c.combine,afterCritical:l});return f==null?null:Ia({draggable:n,insideDestination:a,destination:o,viewport:s,last:i.displaced,displacedBy:i.displacedBy,index:f})},xv=({displaced:e,afterCritical:t,combineWith:n,displacedBy:r})=>{let o=!!(e.visible[n]||e.invisible[n]);return sn(n,t)?o?Ze:er(r.point):o?r.point:Ze},vv=({afterCritical:e,impact:t,draggables:n})=>{let r=ka(t);r||B();let o=r.draggableId,a=n[o].page.borderBox.center,i=xv({displaced:t.displaced,afterCritical:e,combineWith:o,displacedBy:t.displacedBy});return rt(a,i)},ju=(e,t)=>t.margin[e.start]+t.borderBox[e.size]/2,yv=(e,t)=>t.margin[e.end]+t.borderBox[e.size]/2,is=(e,t,n)=>t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2,uu=({axis:e,moveRelativeTo:t,isMoving:n})=>An(e.line,t.marginBox[e.end]+ju(e,n),is(e,t.marginBox,n)),fu=({axis:e,moveRelativeTo:t,isMoving:n})=>An(e.line,t.marginBox[e.start]-yv(e,n),is(e,t.marginBox,n)),wv=({axis:e,moveInto:t,isMoving:n})=>An(e.line,t.contentBox[e.start]+ju(e,n),is(e,t.contentBox,n)),Cv=({impact:e,draggable:t,draggables:n,droppable:r,afterCritical:o})=>{let a=tr(r.descriptor.id,n),i=t.page,s=r.axis;if(!a.length)return wv({axis:s,moveInto:r.page,isMoving:i});let{displaced:l,displacedBy:c}=e,f=l.all[0];if(f){let u=n[f];if(sn(f,o))return fu({axis:s,moveRelativeTo:u.page,isMoving:i});let m=Mr(u.page,c.point);return fu({axis:s,moveRelativeTo:m,isMoving:i})}let d=a[a.length-1];if(d.descriptor.id===t.descriptor.id)return i.borderBox.center;if(sn(d.descriptor.id,o)){let u=Mr(d.page,er(o.displacedBy.point));return uu({axis:s,moveRelativeTo:u,isMoving:i})}return uu({axis:s,moveRelativeTo:d.page,isMoving:i})},Xi=(e,t)=>{let n=e.frame;return n?rt(t,n.scroll.diff.displacement):t},Sv=({impact:e,draggable:t,droppable:n,draggables:r,afterCritical:o})=>{let a=t.page.borderBox.center,i=e.at;return!n||!i?a:i.type===\"REORDER\"?Cv({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:o}):vv({impact:e,draggables:r,afterCritical:o})},Fa=e=>{let t=Sv(e),n=e.droppable;return n?Xi(n,t):t},Hu=(e,t)=>{let n=vt(t,e.scroll.initial),r=er(n);return{frame:Tt({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function pu(e,t){return e.map(n=>t[n])}function Ov(e,t){for(let n=0;n{let a=Hu(t,rt(t.scroll.current,o)),i=n.frame?ns(n,rt(n.frame.scroll.current,o)):n,s=e.displaced,l=qr({afterDragging:pu(s.all,r),destination:n,displacedBy:e.displacedBy,viewport:a.frame,last:s,forceShouldAnimate:!1}),c=qr({afterDragging:pu(s.all,r),destination:i,displacedBy:e.displacedBy,viewport:t.frame,last:s,forceShouldAnimate:!1}),f={},d={},u=[s,l,c];return s.all.forEach(h=>{let x=Ov(h,u);if(x){d[h]=x;return}f[h]=!0}),I(C({},e),{displaced:{all:s.all,invisible:f,visible:d}})},Iv=(e,t)=>rt(e.scroll.diff.displacement,t),ss=({pageBorderBoxCenter:e,draggable:t,viewport:n})=>{let r=Iv(n,e),o=vt(r,t.page.borderBox.center);return rt(t.client.borderBox.center,o)},qu=({draggable:e,destination:t,newPageBorderBoxCenter:n,viewport:r,withDroppableDisplacement:o,onlyOnMainAxis:a=!1})=>{let i=vt(n,e.page.borderBox.center),l={target:Zr(e.page.borderBox,i),destination:t,withDroppableDisplacement:o,viewport:r};return a?uv(l):Gu(l)},Ev=({isMovingForward:e,draggable:t,destination:n,draggables:r,previousImpact:o,viewport:a,previousPageBorderBoxCenter:i,previousClientSelection:s,afterCritical:l})=>{if(!n.isEnabled)return null;let c=tr(n.descriptor.id,r),f=nr(t,n),d=rv({isMovingForward:e,draggable:t,destination:n,insideDestination:c,previousImpact:o})||bv({isMovingForward:e,isInHomeList:f,draggable:t,draggables:r,destination:n,insideDestination:c,previousImpact:o,viewport:a,afterCritical:l});if(!d)return null;let u=Fa({impact:d,draggable:t,droppable:n,draggables:r,afterCritical:l});if(qu({draggable:t,destination:n,newPageBorderBoxCenter:u,viewport:a.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:ss({pageBorderBoxCenter:u,draggable:t,viewport:a}),impact:d,scrollJumpRequest:null};let h=vt(u,i),x=Dv({impact:d,viewport:a,destination:n,draggables:r,maxScrollChange:h});return{clientSelection:s,impact:x,scrollJumpRequest:h}},ct=e=>{let t=e.subject.active;return t||B(),t},Tv=({isMovingForward:e,pageBorderBoxCenter:t,source:n,droppables:r,viewport:o})=>{let a=n.subject.active;if(!a)return null;let i=n.axis,s=Nt(a[i.start],a[i.end]),l=Ta(r).filter(f=>f!==n).filter(f=>f.isEnabled).filter(f=>!!f.subject.active).filter(f=>Uu(o.frame)(ct(f))).filter(f=>{let d=ct(f);return e?a[i.crossAxisEnd]{let d=ct(f),u=Nt(d[i.start],d[i.end]);return s(d[i.start])||s(d[i.end])||u(a[i.start])||u(a[i.end])}).sort((f,d)=>{let u=ct(f)[i.crossAxisStart],m=ct(d)[i.crossAxisStart];return e?u-m:m-u}).filter((f,d,u)=>ct(f)[i.crossAxisStart]===ct(u[0])[i.crossAxisStart]);if(!l.length)return null;if(l.length===1)return l[0];let c=l.filter(f=>Nt(ct(f)[i.start],ct(f)[i.end])(t[i.line]));return c.length===1?c[0]:c.length>1?c.sort((f,d)=>ct(f)[i.start]-ct(d)[i.start])[0]:l.sort((f,d)=>{let u=lu(t,du(ct(f))),m=lu(t,du(ct(d)));return u!==m?u-m:ct(f)[i.start]-ct(d)[i.start]})[0]},mu=(e,t)=>{let n=e.page.borderBox.center;return sn(e.descriptor.id,t)?vt(n,t.displacedBy.point):n},kv=(e,t)=>{let n=e.page.borderBox;return sn(e.descriptor.id,t)?Zr(n,er(t.displacedBy.point)):n},Nv=({pageBorderBoxCenter:e,viewport:t,destination:n,insideDestination:r,afterCritical:o})=>r.filter(i=>Gu({target:kv(i,o),destination:n,viewport:t.frame,withDroppableDisplacement:!0})).sort((i,s)=>{let l=jr(e,Xi(n,mu(i,o))),c=jr(e,Xi(n,mu(s,o)));return l{let r=e.axis;if(e.descriptor.mode===\"virtual\")return An(r.line,t[r.line]);let o=e.subject.page.contentBox[r.size],l=tr(e.descriptor.id,n).reduce((c,f)=>c+f.client.marginBox[r.size],0)+t[r.line]-o;return l<=0?null:An(r.line,l)},Yu=(e,t)=>I(C({},e),{scroll:I(C({},e.scroll),{max:t})}),Ku=(e,t,n)=>{let r=e.frame;nr(t,e)&&B(),e.subject.withPlaceholder&&B();let o=Rr(e.axis,t.displaceBy).point,a=Fv(e,o,n),i={placeholderSize:o,increasedBy:a,oldFrameMaxScroll:e.frame?e.frame.scroll.max:null};if(!r){let f=Qn({page:e.subject.page,withPlaceholder:i,axis:e.axis,frame:e.frame});return I(C({},e),{subject:f})}let s=a?rt(r.scroll.max,a):r.scroll.max,l=Yu(r,s),c=Qn({page:e.subject.page,withPlaceholder:i,axis:e.axis,frame:l});return I(C({},e),{subject:c,frame:l})},Av=e=>{let t=e.subject.withPlaceholder;t||B();let n=e.frame;if(!n){let i=Qn({page:e.subject.page,axis:e.axis,frame:null,withPlaceholder:null});return I(C({},e),{subject:i})}let r=t.oldFrameMaxScroll;r||B();let o=Yu(n,r),a=Qn({page:e.subject.page,axis:e.axis,frame:o,withPlaceholder:null});return I(C({},e),{subject:a,frame:o})},Pv=({previousPageBorderBoxCenter:e,moveRelativeTo:t,insideDestination:n,draggable:r,draggables:o,destination:a,viewport:i,afterCritical:s})=>{if(!t){if(n.length)return null;let d={displaced:Hr,displacedBy:$u,at:{type:\"REORDER\",destination:{droppableId:a.descriptor.id,index:0}}},u=Fa({impact:d,draggable:r,droppable:a,draggables:o,afterCritical:s}),m=nr(r,a)?a:Ku(a,r,o);return qu({draggable:r,destination:m,newPageBorderBoxCenter:u,viewport:i.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0})?d:null}let l=e[a.axis.line]<=t.page.borderBox.center[a.axis.line],c=(()=>{let d=t.descriptor.index;return t.descriptor.id===r.descriptor.id||l?d:d+1})(),f=Rr(a.axis,r.displaceBy);return Ia({draggable:r,insideDestination:n,destination:a,viewport:i,displacedBy:f,last:Hr,index:c})},_v=({isMovingForward:e,previousPageBorderBoxCenter:t,draggable:n,isOver:r,draggables:o,droppables:a,viewport:i,afterCritical:s})=>{let l=Tv({isMovingForward:e,pageBorderBoxCenter:t,source:r,droppables:a,viewport:i});if(!l)return null;let c=tr(l.descriptor.id,o),f=Nv({pageBorderBoxCenter:t,viewport:i,destination:l,insideDestination:c,afterCritical:s}),d=Pv({previousPageBorderBoxCenter:t,destination:l,draggable:n,draggables:o,moveRelativeTo:f,insideDestination:c,viewport:i,afterCritical:s});if(!d)return null;let u=Fa({impact:d,draggable:n,droppable:l,draggables:o,afterCritical:s});return{clientSelection:ss({pageBorderBoxCenter:u,draggable:n,viewport:i}),impact:d,scrollJumpRequest:null}},yt=e=>{let t=e.at;return t?t.type===\"REORDER\"?t.destination.droppableId:t.combine.droppableId:null},Bv=(e,t)=>{let n=yt(e);return n?t[n]:null},Lv=({state:e,type:t})=>{let n=Bv(e.impact,e.dimensions.droppables),r=!!n,o=e.dimensions.droppables[e.critical.droppable.id],a=n||o,i=a.axis.direction,s=i===\"vertical\"&&(t===\"MOVE_UP\"||t===\"MOVE_DOWN\")||i===\"horizontal\"&&(t===\"MOVE_LEFT\"||t===\"MOVE_RIGHT\");if(s&&!r)return null;let l=t===\"MOVE_DOWN\"||t===\"MOVE_RIGHT\",c=e.dimensions.draggables[e.critical.draggable.id],f=e.current.page.borderBoxCenter,{draggables:d,droppables:u}=e.dimensions;return s?Ev({isMovingForward:l,previousPageBorderBoxCenter:f,draggable:c,destination:a,draggables:d,viewport:e.viewport,previousClientSelection:e.current.client.selection,previousImpact:e.impact,afterCritical:e.afterCritical}):_v({isMovingForward:l,previousPageBorderBoxCenter:f,draggable:c,isOver:a,draggables:d,droppables:u,viewport:e.viewport,afterCritical:e.afterCritical})};function Nn(e){return e.phase===\"DRAGGING\"||e.phase===\"COLLECTING\"}function Xu(e){let t=Nt(e.top,e.bottom),n=Nt(e.left,e.right);return function(o){return t(o.y)&&n(o.x)}}function Mv(e,t){return e.leftt.left&&e.topt.top}function Vv({pageBorderBox:e,draggable:t,candidates:n}){let r=t.page.borderBox.center,o=n.map(a=>{let i=a.axis,s=An(a.axis.line,e.center[i.line],a.page.borderBox.center[i.crossAxisLine]);return{id:a.descriptor.id,distance:jr(r,s)}}).sort((a,i)=>i.distance-a.distance);return o[0]?o[0].id:null}function zv({pageBorderBox:e,draggable:t,droppables:n}){let r=Ta(n).filter(o=>{if(!o.isEnabled)return!1;let a=o.subject.active;if(!a||!Mv(e,a))return!1;if(Xu(a)(e.center))return!0;let i=o.axis,s=a.center[i.crossAxisLine],l=e[i.crossAxisStart],c=e[i.crossAxisEnd],f=Nt(a[i.crossAxisStart],a[i.crossAxisEnd]),d=f(l),u=f(c);return!d&&!u?!0:d?ls});return r.length?r.length===1?r[0].descriptor.id:Vv({pageBorderBox:e,draggable:t,candidates:r}):null}var Ju=(e,t)=>Tt(Zr(e,t)),$v=(e,t)=>{let n=e.frame;return n?Ju(t,n.scroll.diff.value):t};function Qu({displaced:e,id:t}){return!!(e.visible[t]||e.invisible[t])}function Uv({draggable:e,closest:t,inHomeList:n}){return t?n&&t.descriptor.index>e.descriptor.index?t.descriptor.index-1:t.descriptor.index:null}var Wv=({pageBorderBoxWithDroppableScroll:e,draggable:t,destination:n,insideDestination:r,last:o,viewport:a,afterCritical:i})=>{let s=n.axis,l=Rr(n.axis,t.displaceBy),c=l.value,f=e[s.start],d=e[s.end],m=Na(t,r).find(x=>{let v=x.descriptor.id,y=x.page.borderBox.center[s.line],b=sn(v,i),S=Qu({displaced:o,id:v});return b?S?d<=y:f{if(!r.isCombineEnabled)return null;let i=r.axis,s=Rr(r.axis,e.displaceBy),l=s.value,c=t[i.start],f=t[i.end],u=Na(e,o).find(h=>{let x=h.descriptor.id,v=h.page.borderBox,b=v[i.size]/Gv,S=sn(x,a),w=Qu({displaced:n.displaced,id:x});return S?w?f>v[i.start]+b&&fv[i.start]-l+b&&cv[i.start]+l+b&&fv[i.start]+b&&c{let s=Ju(t.page.borderBox,e),l=zv({pageBorderBox:s,draggable:t,droppables:r});if(!l)return ov;let c=r[l],f=tr(c.descriptor.id,n),d=$v(c,s);return jv({pageBorderBoxWithDroppableScroll:d,draggable:t,previousImpact:o,destination:c,insideDestination:f,afterCritical:i})||Wv({pageBorderBoxWithDroppableScroll:d,draggable:t,destination:c,insideDestination:f,last:o.displaced,viewport:a,afterCritical:i})},ls=(e,t)=>I(C({},e),{[t.descriptor.id]:t}),Hv=({previousImpact:e,impact:t,droppables:n})=>{let r=yt(e),o=yt(t);if(!r||r===o)return n;let a=n[r];if(!a.subject.withPlaceholder)return n;let i=Av(a);return ls(n,i)},qv=({draggable:e,draggables:t,droppables:n,previousImpact:r,impact:o})=>{let a=Hv({previousImpact:r,impact:o,droppables:n}),i=yt(o);if(!i)return a;let s=n[i];if(nr(e,s)||s.subject.withPlaceholder)return a;let l=Ku(s,e,t);return ls(a,l)},Wr=({state:e,clientSelection:t,dimensions:n,viewport:r,impact:o,scrollJumpRequest:a})=>{let i=r||e.viewport,s=n||e.dimensions,l=t||e.current.client.selection,c=vt(l,e.initial.client.selection),f={offset:c,selection:l,borderBoxCenter:rt(e.initial.client.borderBoxCenter,c)},d={selection:rt(f.selection,i.scroll.current),borderBoxCenter:rt(f.borderBoxCenter,i.scroll.current),offset:rt(f.offset,i.scroll.diff.value)},u={client:f,page:d};if(e.phase===\"COLLECTING\")return I(C({},e),{dimensions:s,viewport:i,current:u});let m=s.draggables[e.critical.draggable.id],h=o||Zu({pageOffset:d.offset,draggable:m,draggables:s.draggables,droppables:s.droppables,previousImpact:e.impact,viewport:i,afterCritical:e.afterCritical}),x=qv({draggable:m,impact:h,previousImpact:e.impact,draggables:s.draggables,droppables:s.droppables});return I(C({},e),{current:u,dimensions:{draggables:s.draggables,droppables:x},impact:h,viewport:i,scrollJumpRequest:a||null,forceShouldAnimate:a?!1:null})};function Yv(e,t){return e.map(n=>t[n])}var Ru=({impact:e,viewport:t,draggables:n,destination:r,forceShouldAnimate:o})=>{let a=e.displaced,i=Yv(a.all,n),s=qr({afterDragging:i,destination:r,displacedBy:e.displacedBy,viewport:t.frame,forceShouldAnimate:o,last:a});return I(C({},e),{displaced:s})},ef=({impact:e,draggable:t,droppable:n,draggables:r,viewport:o,afterCritical:a})=>{let i=Fa({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:a});return ss({pageBorderBoxCenter:i,draggable:t,viewport:o})},tf=({state:e,dimensions:t,viewport:n})=>{e.movementMode!==\"SNAP\"&&B();let r=e.impact,o=n||e.viewport,a=t||e.dimensions,{draggables:i,droppables:s}=a,l=i[e.critical.draggable.id],c=yt(r);c||B();let f=s[c],d=Ru({impact:r,viewport:o,destination:f,draggables:i}),u=ef({impact:d,draggable:l,droppable:f,draggables:i,viewport:o,afterCritical:e.afterCritical});return Wr({impact:d,clientSelection:u,state:e,dimensions:a,viewport:o})},Kv=e=>({index:e.index,droppableId:e.droppableId}),nf=({draggable:e,home:t,draggables:n,viewport:r})=>{let o=Rr(t.axis,e.displaceBy),a=tr(t.descriptor.id,n),i=a.indexOf(e);i===-1&&B();let s=a.slice(i+1),l=s.reduce((u,m)=>(u[m.descriptor.id]=!0,u),{}),c={inVirtualList:t.descriptor.mode===\"virtual\",displacedBy:o,effected:l};return{impact:{displaced:qr({afterDragging:s,destination:t,displacedBy:o,last:null,viewport:r.frame,forceShouldAnimate:!1}),displacedBy:o,at:{type:\"REORDER\",destination:Kv(e.descriptor)}},afterCritical:c}},Xv=(e,t)=>({draggables:e.draggables,droppables:ls(e.droppables,t)}),eo=e=>{},to=e=>{},Jv=({draggable:e,offset:t,initialWindowScroll:n})=>{let r=Mr(e.client,t),o=Vr(r,n);return I(C({},e),{placeholder:I(C({},e.placeholder),{client:r}),client:r,page:o})},Qv=e=>{let t=e.frame;return t||B(),t},Zv=({additions:e,updatedDroppables:t,viewport:n})=>{let r=n.scroll.diff.value;return e.map(o=>{let a=o.descriptor.droppableId,i=t[a],l=Qv(i).scroll.diff.value,c=rt(r,l);return Jv({draggable:o,offset:c,initialWindowScroll:n.scroll.initial})})},Rv=({state:e,published:t})=>{eo();let n=t.modified.map(y=>{let b=e.dimensions.droppables[y.droppableId];return ns(b,y.scroll)}),r=C(C({},e.dimensions.droppables),Vu(n)),o=zu(Zv({additions:t.additions,updatedDroppables:r,viewport:e.viewport})),a=C(C({},e.dimensions.draggables),o);t.removals.forEach(y=>{delete a[y]});let i={droppables:r,draggables:a},s=yt(e.impact),l=s?i.droppables[s]:null,c=i.draggables[e.critical.draggable.id],f=i.droppables[e.critical.droppable.id],{impact:d,afterCritical:u}=nf({draggable:c,home:f,draggables:a,viewport:e.viewport}),m=l&&l.isCombineEnabled?e.impact:d,h=Zu({pageOffset:e.current.page.offset,draggable:i.draggables[e.critical.draggable.id],draggables:i.draggables,droppables:i.droppables,previousImpact:m,viewport:e.viewport,afterCritical:u});to();let x=I(C({},e),{phase:\"DRAGGING\",impact:h,onLiftImpact:d,dimensions:i,afterCritical:u,forceShouldAnimate:!1});return e.phase===\"COLLECTING\"?x:I(C({},x),{phase:\"DROP_PENDING\",reason:e.reason,isWaiting:!1})},Ji=e=>e.movementMode===\"SNAP\",Vi=(e,t,n)=>{let r=Xv(e.dimensions,t);return!Ji(e)||n?Wr({state:e,dimensions:r}):tf({state:e,dimensions:r})};function zi(e){return e.isDragging&&e.movementMode===\"SNAP\"?I(C({},e),{scrollJumpRequest:null}):e}var gu={phase:\"IDLE\",completed:null,shouldFlush:!1},ey=(e=gu,t)=>{if(t.type===\"FLUSH\")return I(C({},gu),{shouldFlush:!0});if(t.type===\"INITIAL_PUBLISH\"){e.phase!==\"IDLE\"&&B();let{critical:n,clientSelection:r,viewport:o,dimensions:a,movementMode:i}=t.payload,s=a.draggables[n.draggable.id],l=a.droppables[n.droppable.id],c={selection:r,borderBoxCenter:s.client.borderBox.center,offset:Ze},f={client:c,page:{selection:rt(c.selection,o.scroll.initial),borderBoxCenter:rt(c.selection,o.scroll.initial),offset:rt(c.selection,o.scroll.diff.value)}},d=Ta(a.droppables).every(x=>!x.isFixedOnPage),{impact:u,afterCritical:m}=nf({draggable:s,home:l,draggables:a.draggables,viewport:o});return{phase:\"DRAGGING\",isDragging:!0,critical:n,movementMode:i,dimensions:a,initial:f,current:f,isWindowScrollAllowed:d,impact:u,afterCritical:m,onLiftImpact:u,viewport:o,scrollJumpRequest:null,forceShouldAnimate:null}}if(t.type===\"COLLECTION_STARTING\")return e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\"?e:(e.phase!==\"DRAGGING\"&&B(),I(C({},e),{phase:\"COLLECTING\"}));if(t.type===\"PUBLISH_WHILE_DRAGGING\")return e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\"||B(),Rv({state:e,published:t.payload});if(t.type===\"MOVE\"){if(e.phase===\"DROP_PENDING\")return e;Nn(e)||B();let{client:n}=t.payload;return an(n,e.current.client.selection)?e:Wr({state:e,clientSelection:n,impact:Ji(e)?e.impact:null})}if(t.type===\"UPDATE_DROPPABLE_SCROLL\"){if(e.phase===\"DROP_PENDING\"||e.phase===\"COLLECTING\")return zi(e);Nn(e)||B();let{id:n,newScroll:r}=t.payload,o=e.dimensions.droppables[n];if(!o)return e;let a=ns(o,r);return Vi(e,a,!1)}if(t.type===\"UPDATE_DROPPABLE_IS_ENABLED\"){if(e.phase===\"DROP_PENDING\")return e;Nn(e)||B();let{id:n,isEnabled:r}=t.payload,o=e.dimensions.droppables[n];o||B(),o.isEnabled===r&&B();let a=I(C({},o),{isEnabled:r});return Vi(e,a,!0)}if(t.type===\"UPDATE_DROPPABLE_IS_COMBINE_ENABLED\"){if(e.phase===\"DROP_PENDING\")return e;Nn(e)||B();let{id:n,isCombineEnabled:r}=t.payload,o=e.dimensions.droppables[n];o||B(),o.isCombineEnabled===r&&B();let a=I(C({},o),{isCombineEnabled:r});return Vi(e,a,!0)}if(t.type===\"MOVE_BY_WINDOW_SCROLL\"){if(e.phase===\"DROP_PENDING\"||e.phase===\"DROP_ANIMATING\")return e;Nn(e)||B(),e.isWindowScrollAllowed||B();let n=t.payload.newScroll;if(an(e.viewport.scroll.current,n))return zi(e);let r=Hu(e.viewport,n);return Ji(e)?tf({state:e,viewport:r}):Wr({state:e,viewport:r})}if(t.type===\"UPDATE_VIEWPORT_MAX_SCROLL\"){if(!Nn(e))return e;let n=t.payload.maxScroll;if(an(n,e.viewport.scroll.max))return e;let r=I(C({},e.viewport),{scroll:I(C({},e.viewport.scroll),{max:n})});return I(C({},e),{viewport:r})}if(t.type===\"MOVE_UP\"||t.type===\"MOVE_DOWN\"||t.type===\"MOVE_LEFT\"||t.type===\"MOVE_RIGHT\"){if(e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\")return e;e.phase!==\"DRAGGING\"&&B();let n=Lv({state:e,type:t.type});return n?Wr({state:e,impact:n.impact,clientSelection:n.clientSelection,scrollJumpRequest:n.scrollJumpRequest}):e}if(t.type===\"DROP_PENDING\"){let n=t.payload.reason;return e.phase!==\"COLLECTING\"&&B(),I(C({},e),{phase:\"DROP_PENDING\",isWaiting:!0,reason:n})}if(t.type===\"DROP_ANIMATE\"){let{completed:n,dropDuration:r,newHomeClientOffset:o}=t.payload;return e.phase===\"DRAGGING\"||e.phase===\"DROP_PENDING\"||B(),{phase:\"DROP_ANIMATING\",completed:n,dropDuration:r,newHomeClientOffset:o,dimensions:e.dimensions}}if(t.type===\"DROP_COMPLETE\"){let{completed:n}=t.payload;return{phase:\"IDLE\",completed:n,shouldFlush:!1}}return e};function De(e,t){return e instanceof Object&&\"type\"in e&&e.type===t}var ty=e=>({type:\"BEFORE_INITIAL_CAPTURE\",payload:e}),ny=e=>({type:\"LIFT\",payload:e}),ry=e=>({type:\"INITIAL_PUBLISH\",payload:e}),oy=e=>({type:\"PUBLISH_WHILE_DRAGGING\",payload:e}),ay=()=>({type:\"COLLECTION_STARTING\",payload:null}),iy=e=>({type:\"UPDATE_DROPPABLE_SCROLL\",payload:e}),sy=e=>({type:\"UPDATE_DROPPABLE_IS_ENABLED\",payload:e}),ly=e=>({type:\"UPDATE_DROPPABLE_IS_COMBINE_ENABLED\",payload:e}),rf=e=>({type:\"MOVE\",payload:e}),dy=e=>({type:\"MOVE_BY_WINDOW_SCROLL\",payload:e}),cy=e=>({type:\"UPDATE_VIEWPORT_MAX_SCROLL\",payload:e}),uy=()=>({type:\"MOVE_UP\",payload:null}),fy=()=>({type:\"MOVE_DOWN\",payload:null}),py=()=>({type:\"MOVE_RIGHT\",payload:null}),my=()=>({type:\"MOVE_LEFT\",payload:null}),ds=()=>({type:\"FLUSH\",payload:null}),gy=e=>({type:\"DROP_ANIMATE\",payload:e}),cs=e=>({type:\"DROP_COMPLETE\",payload:e}),of=e=>({type:\"DROP\",payload:e}),hy=e=>({type:\"DROP_PENDING\",payload:e}),af=()=>({type:\"DROP_ANIMATION_FINISHED\",payload:null});var by=e=>({getState:t,dispatch:n})=>r=>o=>{if(!De(o,\"LIFT\")){r(o);return}let{id:a,clientSelection:i,movementMode:s}=o.payload,l=t();l.phase===\"DROP_ANIMATING\"&&n(cs({completed:l.completed})),t().phase!==\"IDLE\"&&B(),n(ds()),n(ty({draggableId:a,movementMode:s}));let f={draggableId:a,scrollOptions:{shouldPublishImmediately:s===\"SNAP\"}},{critical:d,dimensions:u,viewport:m}=e.startPublishing(f);n(ry({critical:d,dimensions:u,clientSelection:i,movementMode:s,viewport:m}))},xy=e=>()=>t=>n=>{De(n,\"INITIAL_PUBLISH\")&&e.dragging(),De(n,\"DROP_ANIMATE\")&&e.dropping(n.payload.completed.result.reason),(De(n,\"FLUSH\")||De(n,\"DROP_COMPLETE\"))&&e.resting(),t(n)},us={outOfTheWay:\"cubic-bezier(0.2, 0, 0, 1)\",drop:\"cubic-bezier(.2,1,.1,1)\"},Yr={opacity:{drop:0,combining:.7},scale:{drop:.75}},sf={outOfTheWay:.2,minDropTime:.33,maxDropTime:.55},kn=\"\".concat(sf.outOfTheWay,\"s \").concat(us.outOfTheWay),Gr={fluid:\"opacity \".concat(kn),snap:\"transform \".concat(kn,\", opacity \").concat(kn),drop:e=>{let t=\"\".concat(e,\"s \").concat(us.drop);return\"transform \".concat(t,\", opacity \").concat(t)},outOfTheWay:\"transform \".concat(kn),placeholder:\"height \".concat(kn,\", width \").concat(kn,\", margin \").concat(kn)},hu=e=>an(e,Ze)?void 0:\"translate(\".concat(e.x,\"px, \").concat(e.y,\"px)\"),Qi={moveTo:hu,drop:(e,t)=>{let n=hu(e);if(n)return t?\"\".concat(n,\" scale(\").concat(Yr.scale.drop,\")\"):n}},{minDropTime:Zi,maxDropTime:lf}=sf,vy=lf-Zi,bu=1500,yy=.6,wy=({current:e,destination:t,reason:n})=>{let r=jr(e,t);if(r<=0)return Zi;if(r>=bu)return lf;let o=r/bu,a=Zi+vy*o,i=n===\"CANCEL\"?a*yy:a;return Number(i.toFixed(2))},Cy=({impact:e,draggable:t,dimensions:n,viewport:r,afterCritical:o})=>{let{draggables:a,droppables:i}=n,s=yt(e),l=s?i[s]:null,c=i[t.descriptor.droppableId],f=ef({impact:e,draggable:t,draggables:a,afterCritical:o,droppable:l||c,viewport:r});return vt(f,t.client.borderBox.center)},Sy=({draggables:e,reason:t,lastImpact:n,home:r,viewport:o,onLiftImpact:a})=>!n.at||t!==\"DROP\"?{impact:Ru({draggables:e,impact:a,destination:r,viewport:o,forceShouldAnimate:!0}),didDropInsideDroppable:!1}:n.at.type===\"REORDER\"?{impact:n,didDropInsideDroppable:!0}:{impact:I(C({},n),{displaced:Hr}),didDropInsideDroppable:!0},Oy=({getState:e,dispatch:t})=>n=>r=>{if(!De(r,\"DROP\")){n(r);return}let o=e(),a=r.payload.reason;if(o.phase===\"COLLECTING\"){t(hy({reason:a}));return}if(o.phase===\"IDLE\")return;o.phase===\"DROP_PENDING\"&&o.isWaiting&&B(),o.phase===\"DRAGGING\"||o.phase===\"DROP_PENDING\"||B();let s=o.critical,l=o.dimensions,c=l.draggables[o.critical.draggable.id],{impact:f,didDropInsideDroppable:d}=Sy({reason:a,lastImpact:o.impact,afterCritical:o.afterCritical,onLiftImpact:o.onLiftImpact,home:o.dimensions.droppables[o.critical.droppable.id],viewport:o.viewport,draggables:o.dimensions.draggables}),u=d?rs(f):null,m=d?ka(f):null,h={index:s.draggable.index,droppableId:s.droppable.id},x={draggableId:c.descriptor.id,type:c.descriptor.type,source:h,reason:a,mode:o.movementMode,destination:u,combine:m},v=Cy({impact:f,draggable:c,dimensions:l,viewport:o.viewport,afterCritical:o.afterCritical}),y={critical:o.critical,afterCritical:o.afterCritical,result:x,impact:f};if(!(!an(o.current.client.offset,v)||!!x.combine)){t(cs({completed:y}));return}let S=wy({current:o.current.client.offset,destination:v,reason:a});t(gy({newHomeClientOffset:v,dropDuration:S,completed:y}))},df=()=>({x:window.pageXOffset,y:window.pageYOffset});function Dy(e){return{eventName:\"scroll\",options:{passive:!0,capture:!1},fn:t=>{t.target!==window&&t.target!==window.document||e()}}}function Iy({onWindowScroll:e}){function t(){e(df())}let n=Jn(t),r=Dy(n),o=on;function a(){return o!==on}function i(){a()&&B(),o=kt(window,[r])}function s(){a()||B(),n.cancel(),o(),o=on}return{start:i,stop:s,isActive:a}}var Ey=e=>De(e,\"DROP_COMPLETE\")||De(e,\"DROP_ANIMATE\")||De(e,\"FLUSH\"),Ty=e=>{let t=Iy({onWindowScroll:n=>{e.dispatch(dy({newScroll:n}))}});return n=>r=>{!t.isActive()&&De(r,\"INITIAL_PUBLISH\")&&t.start(),t.isActive()&&Ey(r)&&t.stop(),n(r)}},ky=e=>{let t=!1,n=!1,r=setTimeout(()=>{n=!0}),o=a=>{t||n||(t=!0,e(a),clearTimeout(r))};return o.wasCalled=()=>t,o},Ny=()=>{let e=[],t=o=>{let a=e.findIndex(s=>s.timerId===o);a===-1&&B();let[i]=e.splice(a,1);i.callback()};return{add:o=>{let a=setTimeout(()=>t(a)),i={timerId:a,callback:o};e.push(i)},flush:()=>{if(!e.length)return;let o=[...e];e.length=0,o.forEach(a=>{clearTimeout(a.timerId),a.callback()})}}},Fy=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.droppableId===t.droppableId&&e.index===t.index,Ay=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.draggableId===t.draggableId&&e.droppableId===t.droppableId,Py=(e,t)=>{if(e===t)return!0;let n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r},zr=(e,t)=>{eo(),t(),to()},wa=(e,t)=>({draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t});function $i(e,t,n,r){if(!e){n(r(t));return}let o=ky(n);e(t,{announce:o}),o.wasCalled()||n(r(t))}var _y=(e,t)=>{let n=Ny(),r=null,o=(d,u)=>{r&&B(),zr(\"onBeforeCapture\",()=>{let m=e().onBeforeCapture;m&&m({draggableId:d,mode:u})})},a=(d,u)=>{r&&B(),zr(\"onBeforeDragStart\",()=>{let m=e().onBeforeDragStart;m&&m(wa(d,u))})},i=(d,u)=>{r&&B();let m=wa(d,u);r={mode:u,lastCritical:d,lastLocation:m.source,lastCombine:null},n.add(()=>{zr(\"onDragStart\",()=>$i(e().onDragStart,m,t,Oa.onDragStart))})},s=(d,u)=>{let m=rs(u),h=ka(u);r||B();let x=!Py(d,r.lastCritical);x&&(r.lastCritical=d);let v=!Fy(r.lastLocation,m);v&&(r.lastLocation=m);let y=!Ay(r.lastCombine,h);if(y&&(r.lastCombine=h),!x&&!v&&!y)return;let b=I(C({},wa(d,r.mode)),{combine:h,destination:m});n.add(()=>{zr(\"onDragUpdate\",()=>$i(e().onDragUpdate,b,t,Oa.onDragUpdate))})},l=()=>{r||B(),n.flush()},c=d=>{r||B(),r=null,zr(\"onDragEnd\",()=>$i(e().onDragEnd,d,t,Oa.onDragEnd))};return{beforeCapture:o,beforeStart:a,start:i,update:s,flush:l,drop:c,abort:()=>{if(!r)return;let d=I(C({},wa(r.lastCritical,r.mode)),{combine:null,destination:null,reason:\"CANCEL\"});c(d)}}},By=(e,t)=>{let n=_y(e,t);return r=>o=>a=>{if(De(a,\"BEFORE_INITIAL_CAPTURE\")){n.beforeCapture(a.payload.draggableId,a.payload.movementMode);return}if(De(a,\"INITIAL_PUBLISH\")){let s=a.payload.critical;n.beforeStart(s,a.payload.movementMode),o(a),n.start(s,a.payload.movementMode);return}if(De(a,\"DROP_COMPLETE\")){let s=a.payload.completed.result;n.flush(),o(a),n.drop(s);return}if(o(a),De(a,\"FLUSH\")){n.abort();return}let i=r.getState();i.phase===\"DRAGGING\"&&n.update(i.critical,i.impact)}},Ly=e=>t=>n=>{if(!De(n,\"DROP_ANIMATION_FINISHED\")){t(n);return}let r=e.getState();r.phase!==\"DROP_ANIMATING\"&&B(),e.dispatch(cs({completed:r.completed}))},My=e=>{let t=null,n=null;function r(){n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)}return o=>a=>{if((De(a,\"FLUSH\")||De(a,\"DROP_COMPLETE\")||De(a,\"DROP_ANIMATION_FINISHED\"))&&r(),o(a),!De(a,\"DROP_ANIMATE\"))return;let i={eventName:\"scroll\",options:{capture:!0,passive:!1,once:!0},fn:function(){e.getState().phase===\"DROP_ANIMATING\"&&e.dispatch(af())}};n=requestAnimationFrame(()=>{n=null,t=kt(window,[i])})}},Vy=e=>()=>t=>n=>{(De(n,\"DROP_COMPLETE\")||De(n,\"FLUSH\")||De(n,\"DROP_ANIMATE\"))&&e.stopPublishing(),t(n)},zy=e=>{let t=!1;return()=>n=>r=>{if(De(r,\"INITIAL_PUBLISH\")){t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),e.tryRestoreFocusRecorded();return}if(n(r),!!t){if(De(r,\"FLUSH\")){t=!1,e.tryRestoreFocusRecorded();return}if(De(r,\"DROP_COMPLETE\")){t=!1;let o=r.payload.completed.result;o.combine&&e.tryShiftRecord(o.draggableId,o.combine.draggableId),e.tryRestoreFocusRecorded()}}}},$y=e=>De(e,\"DROP_COMPLETE\")||De(e,\"DROP_ANIMATE\")||De(e,\"FLUSH\"),Uy=e=>t=>n=>r=>{if($y(r)){e.stop(),n(r);return}if(De(r,\"INITIAL_PUBLISH\")){n(r);let o=t.getState();o.phase!==\"DRAGGING\"&&B(),e.start(o);return}n(r),e.scroll(t.getState())},Wy=e=>t=>n=>{if(t(n),!De(n,\"PUBLISH_WHILE_DRAGGING\"))return;let r=e.getState();r.phase===\"DROP_PENDING\"&&(r.isWaiting||e.dispatch(of({reason:r.reason})))},Gy=Di,jy=({dimensionMarshal:e,focusMarshal:t,styleMarshal:n,getResponders:r,announce:o,autoScroller:a})=>Si(ey,Gy($c(xy(n),Vy(e),by(e),Oy,Ly,My,Wy,Uy(a),Ty,zy(t),By(r,o)))),Ui=()=>({additions:{},removals:{},modified:{}});function Hy({registry:e,callbacks:t}){let n=Ui(),r=null,o=()=>{r||(t.collectionStarting(),r=requestAnimationFrame(()=>{r=null,eo();let{additions:l,removals:c,modified:f}=n,d=Object.keys(l).map(h=>e.draggable.getById(h).getDimension(Ze)).sort((h,x)=>h.descriptor.index-x.descriptor.index),u=Object.keys(f).map(h=>{let v=e.droppable.getById(h).callbacks.getScrollWhileDragging();return{droppableId:h,scroll:v}}),m={additions:d,removals:Object.keys(c),modified:u};n=Ui(),to(),t.publish(m)}))};return{add:l=>{let c=l.descriptor.id;n.additions[c]=l,n.modified[l.descriptor.droppableId]=!0,n.removals[c]&&delete n.removals[c],o()},remove:l=>{let c=l.descriptor;n.removals[c.id]=!0,n.modified[c.droppableId]=!0,n.additions[c.id]&&delete n.additions[c.id],o()},stop:()=>{r&&(cancelAnimationFrame(r),r=null,n=Ui())}}}var cf=({scrollHeight:e,scrollWidth:t,height:n,width:r})=>{let o=vt({x:t,y:e},{x:r,y:n});return{x:Math.max(0,o.x),y:Math.max(0,o.y)}},uf=()=>{let e=document.documentElement;return e||B(),e},ff=()=>{let e=uf();return cf({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},qy=()=>{let e=df(),t=ff(),n=e.y,r=e.x,o=uf(),a=o.clientWidth,i=o.clientHeight,s=r+a,l=n+i;return{frame:Tt({top:n,left:r,right:s,bottom:l}),scroll:{initial:e,current:e,max:t,diff:{value:Ze,displacement:Ze}}}},Yy=({critical:e,scrollOptions:t,registry:n})=>{eo();let r=qy(),o=r.scroll.current,a=e.droppable,i=n.droppable.getAllByType(a.type).map(f=>f.callbacks.getDimensionAndWatchScroll(o,t)),s=n.draggable.getAllByType(e.draggable.type).map(f=>f.getDimension(o)),l={draggables:zu(s),droppables:Vu(i)};return to(),{dimensions:l,critical:e,viewport:r}};function xu(e,t,n){return!(n.descriptor.id===t.id||n.descriptor.type!==t.type||e.droppable.getById(n.descriptor.droppableId).descriptor.mode!==\"virtual\")}var Ky=(e,t)=>{let n=null,r=Hy({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),o=(u,m)=>{e.droppable.exists(u)||B(),n&&t.updateDroppableIsEnabled({id:u,isEnabled:m})},a=(u,m)=>{n&&(e.droppable.exists(u)||B(),t.updateDroppableIsCombineEnabled({id:u,isCombineEnabled:m}))},i=(u,m)=>{n&&(e.droppable.exists(u)||B(),t.updateDroppableScroll({id:u,newScroll:m}))},s=(u,m)=>{n&&e.droppable.getById(u).callbacks.scroll(m)},l=()=>{if(!n)return;r.stop();let u=n.critical.droppable;e.droppable.getAllByType(u.type).forEach(m=>m.callbacks.dragStopped()),n.unsubscribe(),n=null},c=u=>{n||B();let m=n.critical.draggable;u.type===\"ADDITION\"&&xu(e,m,u.value)&&r.add(u.value),u.type===\"REMOVAL\"&&xu(e,m,u.value)&&r.remove(u.value)};return{updateDroppableIsEnabled:o,updateDroppableIsCombineEnabled:a,scrollDroppable:s,updateDroppableScroll:i,startPublishing:u=>{n&&B();let m=e.draggable.getById(u.draggableId),h=e.droppable.getById(m.descriptor.droppableId),x={draggable:m.descriptor,droppable:h.descriptor},v=e.subscribe(c);return n={critical:x,unsubscribe:v},Yy({critical:x,registry:e,scrollOptions:u.scrollOptions})},stopPublishing:l}},pf=(e,t)=>e.phase===\"IDLE\"?!0:e.phase!==\"DROP_ANIMATING\"||e.completed.result.draggableId===t?!1:e.completed.result.reason===\"DROP\",Xy=e=>{window.scrollBy(e.x,e.y)},Jy=Qe(e=>Ta(e).filter(t=>!(!t.isEnabled||!t.frame))),Qy=(e,t)=>Jy(t).find(r=>(r.frame||B(),Xu(r.frame.pageMarginBox)(e)))||null,Zy=({center:e,destination:t,droppables:n})=>{if(t){let o=n[t];return o.frame?o:null}return Qy(e,n)},Kr={startFromPercentage:.25,maxScrollAtPercentage:.05,maxPixelScroll:28,ease:e=>e**2,durationDampening:{stopDampeningAt:1200,accelerateAt:360},disabled:!1},Ry=(e,t,n=()=>Kr)=>{let r=n(),o=e[t.size]*r.startFromPercentage,a=e[t.size]*r.maxScrollAtPercentage;return{startScrollingFrom:o,maxScrollValueAt:a}},mf=({startOfRange:e,endOfRange:t,current:n})=>{let r=t-e;return r===0?0:(n-e)/r},fs=1,e0=(e,t,n=()=>Kr)=>{let r=n();if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return r.maxPixelScroll;if(e===t.startScrollingFrom)return fs;let a=1-mf({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),i=r.maxPixelScroll*r.ease(a);return Math.ceil(i)},t0=(e,t,n)=>{let r=n(),o=r.durationDampening.accelerateAt,a=r.durationDampening.stopDampeningAt,i=t,s=a,c=Date.now()-i;if(c>=a)return e;if(c{let a=e0(e,t,o);return a===0?0:r?Math.max(t0(a,n,o),fs):a},yu=({container:e,distanceToEdges:t,dragStartTime:n,axis:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=Ry(e,r,a);return t[r.end]{let r=t.height>e.height,o=t.width>e.width;return!o&&!r?n:o&&r?null:{x:o?0:n.x,y:r?0:n.y}},r0=Mu(e=>e===0?0:e),gf=({dragStartTime:e,container:t,subject:n,center:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i={top:r.y-t.top,right:t.right-r.x,bottom:t.bottom-r.y,left:r.x-t.left},s=yu({container:t,distanceToEdges:i,dragStartTime:e,axis:os,shouldUseTimeDampening:o,getAutoScrollerOptions:a}),l=yu({container:t,distanceToEdges:i,dragStartTime:e,axis:Wu,shouldUseTimeDampening:o,getAutoScrollerOptions:a}),c=r0({x:l,y:s});if(an(c,Ze))return null;let f=n0({container:t,subject:n,proposedScroll:c});return f?an(f,Ze)?null:f:null},o0=Mu(e=>e===0?0:e>0?1:-1),ps=(()=>{let e=(t,n)=>t<0?t:t>n?t-n:0;return({current:t,max:n,change:r})=>{let o=rt(t,r),a={x:e(o.x,n.x),y:e(o.y,n.y)};return an(a,Ze)?null:a}})(),hf=({max:e,current:t,change:n})=>{let r={x:Math.max(t.x,e.x),y:Math.max(t.y,e.y)},o=o0(n),a=ps({max:r,current:t,change:o});return!a||o.x!==0&&a.x===0||o.y!==0&&a.y===0},ms=(e,t)=>hf({current:e.scroll.current,max:e.scroll.max,change:t}),a0=(e,t)=>{if(!ms(e,t))return null;let n=e.scroll.max,r=e.scroll.current;return ps({current:r,max:n,change:t})},gs=(e,t)=>{let n=e.frame;return n?hf({current:n.scroll.current,max:n.scroll.max,change:t}):!1},i0=(e,t)=>{let n=e.frame;return!n||!gs(e,t)?null:ps({current:n.scroll.current,max:n.scroll.max,change:t})},s0=({viewport:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=gf({dragStartTime:r,container:e.frame,subject:t,center:n,shouldUseTimeDampening:o,getAutoScrollerOptions:a});return i&&ms(e,i)?i:null},l0=({droppable:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=e.frame;if(!i)return null;let s=gf({dragStartTime:r,container:i.pageMarginBox,subject:t,center:n,shouldUseTimeDampening:o,getAutoScrollerOptions:a});return s&&gs(e,s)?s:null},wu=({state:e,dragStartTime:t,shouldUseTimeDampening:n,scrollWindow:r,scrollDroppable:o,getAutoScrollerOptions:a})=>{let i=e.current.page.borderBoxCenter,l=e.dimensions.draggables[e.critical.draggable.id].page.marginBox;if(e.isWindowScrollAllowed){let d=e.viewport,u=s0({dragStartTime:t,viewport:d,subject:l,center:i,shouldUseTimeDampening:n,getAutoScrollerOptions:a});if(u){r(u);return}}let c=Zy({center:i,destination:yt(e.impact),droppables:e.dimensions.droppables});if(!c)return;let f=l0({dragStartTime:t,droppable:c,subject:l,center:i,shouldUseTimeDampening:n,getAutoScrollerOptions:a});f&&o(c.descriptor.id,f)},d0=({scrollWindow:e,scrollDroppable:t,getAutoScrollerOptions:n=()=>Kr})=>{let r=Jn(e),o=Jn(t),a=null,i=c=>{a||B();let{shouldUseTimeDampening:f,dragStartTime:d}=a;wu({state:c,scrollWindow:r,scrollDroppable:o,dragStartTime:d,shouldUseTimeDampening:f,getAutoScrollerOptions:n})};return{start:c=>{eo(),a&&B();let f=Date.now(),d=!1,u=()=>{d=!0};wu({state:c,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:u,scrollDroppable:u,getAutoScrollerOptions:n}),a={dragStartTime:f,shouldUseTimeDampening:d},to(),d&&i(c)},stop:()=>{a&&(r.cancel(),o.cancel(),a=null)},scroll:i}},c0=({move:e,scrollDroppable:t,scrollWindow:n})=>{let r=(s,l)=>{let c=rt(s.current.client.selection,l);e({client:c})},o=(s,l)=>{if(!gs(s,l))return l;let c=i0(s,l);if(!c)return t(s.descriptor.id,l),null;let f=vt(l,c);return t(s.descriptor.id,f),vt(l,f)},a=(s,l,c)=>{if(!s||!ms(l,c))return c;let f=a0(l,c);if(!f)return n(c),null;let d=vt(c,f);return n(d),vt(c,d)};return s=>{let l=s.scrollJumpRequest;if(!l)return;let c=yt(s.impact);c||B();let f=o(s.dimensions.droppables[c],l);if(!f)return;let d=s.viewport,u=a(s.isWindowScrollAllowed,d,f);u&&r(s,u)}},u0=({scrollDroppable:e,scrollWindow:t,move:n,getAutoScrollerOptions:r})=>{let o=d0({scrollWindow:t,scrollDroppable:e,getAutoScrollerOptions:r}),a=c0({move:n,scrollWindow:t,scrollDroppable:e});return{scroll:l=>{if(!(r().disabled||l.phase!==\"DRAGGING\")){if(l.movementMode===\"FLUID\"){o.scroll(l);return}l.scrollJumpRequest&&a(l)}},start:o.start,stop:o.stop}},Zn=\"data-rfd\",Rn=(()=>{let e=\"\".concat(Zn,\"-drag-handle\");return{base:e,draggableId:\"\".concat(e,\"-draggable-id\"),contextId:\"\".concat(e,\"-context-id\")}})(),Ri=(()=>{let e=\"\".concat(Zn,\"-draggable\");return{base:e,contextId:\"\".concat(e,\"-context-id\"),id:\"\".concat(e,\"-id\")}})(),f0=(()=>{let e=\"\".concat(Zn,\"-droppable\");return{base:e,contextId:\"\".concat(e,\"-context-id\"),id:\"\".concat(e,\"-id\")}})(),Cu={contextId:\"\".concat(Zn,\"-scroll-container-context-id\")},p0=e=>t=>\"[\".concat(t,'=\"').concat(e,'\"]'),$r=(e,t)=>e.map(n=>{let r=n.styles[t];return r?\"\".concat(n.selector,\" { \").concat(r,\" }\"):\"\"}).join(\" \"),m0=\"pointer-events: none;\",g0=e=>{let t=p0(e),n=(()=>{let s=\"\\n cursor: -webkit-grab;\\n cursor: grab;\\n \";return{selector:t(Rn.contextId),styles:{always:\"\\n -webkit-touch-callout: none;\\n -webkit-tap-highlight-color: rgba(0,0,0,0);\\n touch-action: manipulation;\\n \",resting:s,dragging:m0,dropAnimating:s}}})(),r=(()=>{let s=\"\\n transition: \".concat(Gr.outOfTheWay,\";\\n \");return{selector:t(Ri.contextId),styles:{dragging:s,dropAnimating:s,userCancel:s}}})(),o={selector:t(f0.contextId),styles:{always:\"overflow-anchor: none;\"}},i=[r,n,o,{selector:\"body\",styles:{dragging:\"\\n cursor: grabbing;\\n cursor: -webkit-grabbing;\\n user-select: none;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n overflow-anchor: none;\\n \"}}];return{always:$r(i,\"always\"),resting:$r(i,\"resting\"),dragging:$r(i,\"dragging\"),dropAnimating:$r(i,\"dropAnimating\"),userCancel:$r(i,\"userCancel\")}},wt=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\"?G.useLayoutEffect:G.useEffect,Wi=()=>{let e=document.querySelector(\"head\");return e||B(),e},Su=e=>{let t=document.createElement(\"style\");return e&&t.setAttribute(\"nonce\",e),t.type=\"text/css\",t};function h0(e,t){let n=ye(()=>g0(e),[e]),r=(0,G.useRef)(null),o=(0,G.useRef)(null),a=Q(Qe(d=>{let u=o.current;u||B(),u.textContent=d}),[]),i=Q(d=>{let u=r.current;u||B(),u.textContent=d},[]);wt(()=>{!r.current&&!o.current||B();let d=Su(t),u=Su(t);return r.current=d,o.current=u,d.setAttribute(\"\".concat(Zn,\"-always\"),e),u.setAttribute(\"\".concat(Zn,\"-dynamic\"),e),Wi().appendChild(d),Wi().appendChild(u),i(n.always),a(n.resting),()=>{let m=h=>{let x=h.current;x||B(),Wi().removeChild(x),h.current=null};m(r),m(o)}},[t,i,a,n.always,n.resting,e]);let s=Q(()=>a(n.dragging),[a,n.dragging]),l=Q(d=>{if(d===\"DROP\"){a(n.dropAnimating);return}a(n.userCancel)},[a,n.dropAnimating,n.userCancel]),c=Q(()=>{o.current&&a(n.resting)},[a,n.resting]);return ye(()=>({dragging:s,dropping:l,resting:c}),[s,l,c])}function bf(e,t){return Array.from(e.querySelectorAll(t))}var xf=e=>e&&e.ownerDocument&&e.ownerDocument.defaultView?e.ownerDocument.defaultView:window;function no(e){return e instanceof xf(e).HTMLElement}function vf(e,t){let n=\"[\".concat(Rn.contextId,'=\"').concat(e,'\"]'),r=bf(document,n);if(!r.length)return null;let o=r.find(a=>a.getAttribute(Rn.draggableId)===t);return!o||!no(o)?null:o}function b0(e){let t=(0,G.useRef)({}),n=(0,G.useRef)(null),r=(0,G.useRef)(null),o=(0,G.useRef)(!1),a=Q(function(u,m){let h={id:u,focus:m};return t.current[u]=h,function(){let v=t.current;v[u]!==h&&delete v[u]}},[]),i=Q(function(u){let m=vf(e,u);m&&m!==document.activeElement&&m.focus()},[e]),s=Q(function(u,m){n.current===u&&(n.current=m)},[]),l=Q(function(){r.current||o.current&&(r.current=requestAnimationFrame(()=>{r.current=null;let u=n.current;u&&i(u)}))},[i]),c=Q(function(u){n.current=null;let m=document.activeElement;m&&m.getAttribute(Rn.draggableId)===u&&(n.current=u)},[]);return wt(()=>(o.current=!0,function(){o.current=!1;let u=r.current;u&&cancelAnimationFrame(u)}),[]),ye(()=>({register:a,tryRecordFocus:c,tryRestoreFocusRecorded:l,tryShiftRecord:s}),[a,c,l,s])}function x0(){let e={draggables:{},droppables:{}},t=[];function n(d){return t.push(d),function(){let m=t.indexOf(d);m!==-1&&t.splice(m,1)}}function r(d){t.length&&t.forEach(u=>u(d))}function o(d){return e.draggables[d]||null}function a(d){let u=o(d);return u||B(),u}let i={register:d=>{e.draggables[d.descriptor.id]=d,r({type:\"ADDITION\",value:d})},update:(d,u)=>{let m=e.draggables[u.descriptor.id];m&&m.uniqueId===d.uniqueId&&(delete e.draggables[u.descriptor.id],e.draggables[d.descriptor.id]=d)},unregister:d=>{let u=d.descriptor.id,m=o(u);m&&d.uniqueId===m.uniqueId&&(delete e.draggables[u],e.droppables[d.descriptor.droppableId]&&r({type:\"REMOVAL\",value:d}))},getById:a,findById:o,exists:d=>!!o(d),getAllByType:d=>Object.values(e.draggables).filter(u=>u.descriptor.type===d)};function s(d){return e.droppables[d]||null}function l(d){let u=s(d);return u||B(),u}let c={register:d=>{e.droppables[d.descriptor.id]=d},unregister:d=>{let u=s(d.descriptor.id);u&&d.uniqueId===u.uniqueId&&delete e.droppables[d.descriptor.id]},getById:l,findById:s,exists:d=>!!s(d),getAllByType:d=>Object.values(e.droppables).filter(u=>u.descriptor.type===d)};function f(){e.draggables={},e.droppables={},t.length=0}return{draggable:i,droppable:c,subscribe:n,clean:f}}function v0(){let e=ye(x0,[]);return(0,G.useEffect)(()=>function(){e.clean()},[e]),e}var hs=G.default.createContext(null),Xr=()=>{let e=document.body;return e||B(),e},y0={position:\"absolute\",width:\"1px\",height:\"1px\",margin:\"-1px\",border:\"0\",padding:\"0\",overflow:\"hidden\",clip:\"rect(0 0 0 0)\",\"clip-path\":\"inset(100%)\"},w0=e=>\"rfd-announcement-\".concat(e);function C0(e){let t=ye(()=>w0(e),[e]),n=(0,G.useRef)(null);return(0,G.useEffect)(function(){let a=document.createElement(\"div\");return n.current=a,a.id=t,a.setAttribute(\"aria-live\",\"assertive\"),a.setAttribute(\"aria-atomic\",\"true\"),R(a.style,y0),Xr().appendChild(a),function(){setTimeout(function(){let l=Xr();l.contains(a)&&l.removeChild(a),a===n.current&&(n.current=null)})}},[t]),Q(o=>{let a=n.current;if(a){a.textContent=o;return}},[])}var S0={separator:\"::\"};function bs(e,t=S0){let n=G.default.useId();return ye(()=>\"\".concat(e).concat(t.separator).concat(n),[t.separator,e,n])}function O0({contextId:e,uniqueId:t}){return\"rfd-hidden-text-\".concat(e,\"-\").concat(t)}function D0({contextId:e,text:t}){let n=bs(\"hidden-text\",{separator:\"-\"}),r=ye(()=>O0({contextId:e,uniqueId:n}),[n,e]);return(0,G.useEffect)(function(){let a=document.createElement(\"div\");return a.id=r,a.textContent=t,a.style.display=\"none\",Xr().appendChild(a),function(){let s=Xr();s.contains(a)&&s.removeChild(a)}},[r,t]),r}var Aa=G.default.createContext(null),I0={react:\"^18.0.0 || ^19.0.0\"},E0=/(\\d+)\\.(\\d+)\\.(\\d+)/,Ou=e=>{let t=E0.exec(e);t==null&&B();let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]);return{major:n,minor:r,patch:o,raw:e}},T0=(e,t)=>t.major>e.major?!0:t.majore.minor?!0:t.minor=e.patch,k0=(e,t)=>{let n=Ou(e),r=Ou(t);T0(n,r)};var N0=e=>{let t=e.doctype;t&&(t.name.toLowerCase(),t.publicId)};function ro(e,t){}function F0(){ro(()=>{k0(I0.react,G.default.version),N0(document)},[])}function xs(e){let t=(0,G.useRef)(e);return(0,G.useEffect)(()=>{t.current=e}),t}function A0(){let e=null;function t(){return!!e}function n(i){return i===e}function r(i){e&&B();let s={abandon:i};return e=s,s}function o(){e||B(),e=null}function a(){e&&(e.abandon(),o())}return{isClaimed:t,isActive:n,claim:r,release:o,tryAbandon:a}}function Jr(e){return e.phase===\"IDLE\"||e.phase===\"DROP_ANIMATING\"?!1:e.isDragging}var P0=9,_0=13,vs=27,yf=32,B0=33,L0=34,M0=35,V0=36,z0=37,$0=38,U0=39,W0=40,G0={[_0]:!0,[P0]:!0},wf=e=>{G0[e.keyCode]&&e.preventDefault()},Pa=(()=>{let e=\"visibilitychange\";return typeof document>\"u\"?e:[e,\"ms\".concat(e),\"webkit\".concat(e),\"moz\".concat(e),\"o\".concat(e)].find(r=>\"on\".concat(r)in document)||e})(),Cf=0,Du=5;function j0(e,t){return Math.abs(t.x-e.x)>=Du||Math.abs(t.y-e.y)>=Du}var Iu={type:\"IDLE\"};function H0({cancel:e,completed:t,getPhase:n,setPhase:r}){return[{eventName:\"mousemove\",fn:o=>{let{button:a,clientX:i,clientY:s}=o;if(a!==Cf)return;let l={x:i,y:s},c=n();if(c.type===\"DRAGGING\"){o.preventDefault(),c.actions.move(l);return}c.type!==\"PENDING\"&&B();let f=c.point;if(!j0(f,l))return;o.preventDefault();let d=c.actions.fluidLift(l);r({type:\"DRAGGING\",actions:d})}},{eventName:\"mouseup\",fn:o=>{let a=n();if(a.type!==\"DRAGGING\"){e();return}o.preventDefault(),a.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:\"mousedown\",fn:o=>{n().type===\"DRAGGING\"&&o.preventDefault(),e()}},{eventName:\"keydown\",fn:o=>{if(n().type===\"PENDING\"){e();return}if(o.keyCode===vs){o.preventDefault(),e();return}wf(o)}},{eventName:\"resize\",fn:e},{eventName:\"scroll\",options:{passive:!0,capture:!1},fn:()=>{n().type===\"PENDING\"&&e()}},{eventName:\"webkitmouseforcedown\",fn:o=>{let a=n();if(a.type===\"IDLE\"&&B(),a.actions.shouldRespectForcePress()){e();return}o.preventDefault()}},{eventName:Pa,fn:e}]}function q0(e){let t=(0,G.useRef)(Iu),n=(0,G.useRef)(on),r=ye(()=>({eventName:\"mousedown\",fn:function(d){if(d.defaultPrevented||d.button!==Cf||d.ctrlKey||d.metaKey||d.shiftKey||d.altKey)return;let u=e.findClosestDraggableId(d);if(!u)return;let m=e.tryGetLock(u,i,{sourceEvent:d});if(!m)return;d.preventDefault();let h={x:d.clientX,y:d.clientY};n.current(),c(m,h)}}),[e]),o=ye(()=>({eventName:\"webkitmouseforcewillbegin\",fn:f=>{if(f.defaultPrevented)return;let d=e.findClosestDraggableId(f);if(!d)return;let u=e.findOptionsForDraggable(d);u&&(u.shouldRespectForcePress||e.canGetLock(d)&&f.preventDefault())}}),[e]),a=Q(function(){let d={passive:!1,capture:!0};n.current=kt(window,[o,r],d)},[o,r]),i=Q(()=>{t.current.type!==\"IDLE\"&&(t.current=Iu,n.current(),a())},[a]),s=Q(()=>{let f=t.current;i(),f.type===\"DRAGGING\"&&f.actions.cancel({shouldBlockNextClick:!0}),f.type===\"PENDING\"&&f.actions.abort()},[i]),l=Q(function(){let d={capture:!0,passive:!1},u=H0({cancel:s,completed:i,getPhase:()=>t.current,setPhase:m=>{t.current=m}});n.current=kt(window,u,d)},[s,i]),c=Q(function(d,u){t.current.type!==\"IDLE\"&&B(),t.current={type:\"PENDING\",point:u,actions:d},l()},[l]);wt(function(){return a(),function(){n.current()}},[a])}function Y0(){}var K0={[L0]:!0,[B0]:!0,[V0]:!0,[M0]:!0};function X0(e,t){function n(){t(),e.cancel()}function r(){t(),e.drop()}return[{eventName:\"keydown\",fn:o=>{if(o.keyCode===vs){o.preventDefault(),n();return}if(o.keyCode===yf){o.preventDefault(),r();return}if(o.keyCode===W0){o.preventDefault(),e.moveDown();return}if(o.keyCode===$0){o.preventDefault(),e.moveUp();return}if(o.keyCode===U0){o.preventDefault(),e.moveRight();return}if(o.keyCode===z0){o.preventDefault(),e.moveLeft();return}if(K0[o.keyCode]){o.preventDefault();return}wf(o)}},{eventName:\"mousedown\",fn:n},{eventName:\"mouseup\",fn:n},{eventName:\"click\",fn:n},{eventName:\"touchstart\",fn:n},{eventName:\"resize\",fn:n},{eventName:\"wheel\",fn:n,options:{passive:!0}},{eventName:Pa,fn:n}]}function J0(e){let t=(0,G.useRef)(Y0),n=ye(()=>({eventName:\"keydown\",fn:function(a){if(a.defaultPrevented||a.keyCode!==yf)return;let i=e.findClosestDraggableId(a);if(!i)return;let s=e.tryGetLock(i,f,{sourceEvent:a});if(!s)return;a.preventDefault();let l=!0,c=s.snapLift();t.current();function f(){l||B(),l=!1,t.current(),r()}t.current=kt(window,X0(c,f),{capture:!0,passive:!1})}}),[e]),r=Q(function(){let a={passive:!1,capture:!0};t.current=kt(window,[n],a)},[n]);wt(function(){return r(),function(){t.current()}},[r])}var Gi={type:\"IDLE\"},Q0=120,Z0=.15;function R0({cancel:e,getPhase:t}){return[{eventName:\"orientationchange\",fn:e},{eventName:\"resize\",fn:e},{eventName:\"contextmenu\",fn:n=>{n.preventDefault()}},{eventName:\"keydown\",fn:n=>{if(t().type!==\"DRAGGING\"){e();return}n.keyCode===vs&&n.preventDefault(),e()}},{eventName:Pa,fn:e}]}function e1({cancel:e,completed:t,getPhase:n}){return[{eventName:\"touchmove\",options:{capture:!1},fn:r=>{let o=n();if(o.type!==\"DRAGGING\"){e();return}o.hasMoved=!0;let{clientX:a,clientY:i}=r.touches[0],s={x:a,y:i};r.preventDefault(),o.actions.move(s)}},{eventName:\"touchend\",fn:r=>{let o=n();if(o.type!==\"DRAGGING\"){e();return}r.preventDefault(),o.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:\"touchcancel\",fn:r=>{if(n().type!==\"DRAGGING\"){e();return}r.preventDefault(),e()}},{eventName:\"touchforcechange\",fn:r=>{let o=n();o.type===\"IDLE\"&&B();let a=r.touches[0];if(!a||!(a.force>=Z0))return;let s=o.actions.shouldRespectForcePress();if(o.type===\"PENDING\"){s&&e();return}if(s){if(o.hasMoved){r.preventDefault();return}e();return}r.preventDefault()}},{eventName:Pa,fn:e}]}function t1(e){let t=(0,G.useRef)(Gi),n=(0,G.useRef)(on),r=Q(function(){return t.current},[]),o=Q(function(m){t.current=m},[]),a=ye(()=>({eventName:\"touchstart\",fn:function(m){if(m.defaultPrevented)return;let h=e.findClosestDraggableId(m);if(!h)return;let x=e.tryGetLock(h,s,{sourceEvent:m});if(!x)return;let v=m.touches[0],{clientX:y,clientY:b}=v,S={x:y,y:b};n.current(),d(x,S)}}),[e]),i=Q(function(){let m={capture:!0,passive:!1};n.current=kt(window,[a],m)},[a]),s=Q(()=>{let u=t.current;u.type!==\"IDLE\"&&(u.type===\"PENDING\"&&clearTimeout(u.longPressTimerId),o(Gi),n.current(),i())},[i,o]),l=Q(()=>{let u=t.current;s(),u.type===\"DRAGGING\"&&u.actions.cancel({shouldBlockNextClick:!0}),u.type===\"PENDING\"&&u.actions.abort()},[s]),c=Q(function(){let m={capture:!0,passive:!1},h={cancel:l,completed:s,getPhase:r},x=kt(window,e1(h),m),v=kt(window,R0(h),m);n.current=function(){x(),v()}},[l,r,s]),f=Q(function(){let m=r();m.type!==\"PENDING\"&&B();let h=m.actions.fluidLift(m.point);o({type:\"DRAGGING\",actions:h,hasMoved:!1})},[r,o]),d=Q(function(m,h){r().type!==\"IDLE\"&&B();let x=setTimeout(f,Q0);o({type:\"PENDING\",point:h,actions:m,longPressTimerId:x}),c()},[c,r,o,f]);wt(function(){return i(),function(){n.current();let h=r();h.type===\"PENDING\"&&(clearTimeout(h.longPressTimerId),o(Gi))}},[r,i,o]),wt(function(){return kt(window,[{eventName:\"touchmove\",fn:()=>{},options:{capture:!1,passive:!1}}])},[])}function n1(e){}var r1=[\"input\",\"button\",\"textarea\",\"select\",\"option\",\"optgroup\",\"video\",\"audio\"];function Sf(e,t){if(t==null)return!1;if(r1.includes(t.tagName.toLowerCase()))return!0;let r=t.getAttribute(\"contenteditable\");return r===\"true\"||r===\"\"?!0:t===e?!1:Sf(e,t.parentElement)}function o1(e,t){let n=t.target;return no(n)?Sf(e,n):!1}var a1=e=>Tt(e.getBoundingClientRect()).center;function i1(e){return e instanceof xf(e).Element}var s1=(()=>{let e=\"matches\";return typeof document>\"u\"?e:[e,\"msMatchesSelector\",\"webkitMatchesSelector\"].find(r=>r in Element.prototype)||e})();function Of(e,t){return e==null?null:e[s1](t)?e:Of(e.parentElement,t)}function l1(e,t){return e.closest?e.closest(t):Of(e,t)}function d1(e){return\"[\".concat(Rn.contextId,'=\"').concat(e,'\"]')}function c1(e,t){let n=t.target;if(!i1(n))return null;let r=d1(e),o=l1(n,r);return!o||!no(o)?null:o}function u1(e,t){let n=c1(e,t);return n?n.getAttribute(Rn.draggableId):null}function f1(e,t){let n=\"[\".concat(Ri.contextId,'=\"').concat(e,'\"]'),o=bf(document,n).find(a=>a.getAttribute(Ri.id)===t);return!o||!no(o)?null:o}function p1(e){e.preventDefault()}function Ca({expected:e,phase:t,isLockActive:n,shouldWarn:r}){return!(!n()||e!==t)}function Df({lockAPI:e,store:t,registry:n,draggableId:r}){if(e.isClaimed())return!1;let o=n.draggable.findById(r);return!(!o||!o.options.isEnabled||!pf(t.getState(),r))}function m1({lockAPI:e,contextId:t,store:n,registry:r,draggableId:o,forceSensorStop:a,sourceEvent:i}){if(!Df({lockAPI:e,store:n,registry:r,draggableId:o}))return null;let l=r.draggable.getById(o),c=f1(t,l.descriptor.id);if(!c||i&&!l.options.canDragInteractiveElements&&o1(c,i))return null;let f=e.claim(a||on),d=\"PRE_DRAG\";function u(){return l.options.shouldRespectForcePress}function m(){return e.isActive(f)}function h(D,O){Ca({expected:D,phase:d,isLockActive:m,shouldWarn:!0})&&n.dispatch(O())}let x=h.bind(null,\"DRAGGING\");function v(D){function O(){e.release(),d=\"COMPLETED\"}d!==\"PRE_DRAG\"&&(O(),B()),n.dispatch(ny(D.liftActionArgs)),d=\"DRAGGING\";function F(T,P={shouldBlockNextClick:!1}){if(D.cleanup(),P.shouldBlockNextClick){let V=kt(window,[{eventName:\"click\",fn:p1,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(V)}O(),n.dispatch(of({reason:T}))}return C({isActive:()=>Ca({expected:\"DRAGGING\",phase:d,isLockActive:m,shouldWarn:!1}),shouldRespectForcePress:u,drop:T=>F(\"DROP\",T),cancel:T=>F(\"CANCEL\",T)},D.actions)}function y(D){let O=Jn(T=>{x(()=>rf({client:T}))}),F=v({liftActionArgs:{id:o,clientSelection:D,movementMode:\"FLUID\"},cleanup:()=>O.cancel(),actions:{move:O}});return I(C({},F),{move:O})}function b(){let D={moveUp:()=>x(uy),moveRight:()=>x(py),moveDown:()=>x(fy),moveLeft:()=>x(my)};return v({liftActionArgs:{id:o,clientSelection:a1(c),movementMode:\"SNAP\"},cleanup:on,actions:D})}function S(){Ca({expected:\"PRE_DRAG\",phase:d,isLockActive:m,shouldWarn:!0})&&e.release()}return{isActive:()=>Ca({expected:\"PRE_DRAG\",phase:d,isLockActive:m,shouldWarn:!1}),shouldRespectForcePress:u,fluidLift:y,snapLift:b,abort:S}}var g1=[q0,J0,t1];function h1({contextId:e,store:t,registry:n,customSensors:r,enableDefaultSensors:o}){let a=[...o?g1:[],...r||[]],i=(0,G.useState)(()=>A0())[0],s=Q(function(v,y){Jr(v)&&!Jr(y)&&i.tryAbandon()},[i]);wt(function(){let v=t.getState();return t.subscribe(()=>{let b=t.getState();s(v,b),v=b})},[i,t,s]),wt(()=>i.tryAbandon,[i.tryAbandon]);let l=Q(x=>Df({lockAPI:i,registry:n,store:t,draggableId:x}),[i,n,t]),c=Q((x,v,y)=>m1({lockAPI:i,registry:n,contextId:e,store:t,draggableId:x,forceSensorStop:v||null,sourceEvent:y&&y.sourceEvent?y.sourceEvent:null}),[e,i,n,t]),f=Q(x=>u1(e,x),[e]),d=Q(x=>{let v=n.draggable.findById(x);return v?v.options:null},[n.draggable]),u=Q(function(){i.isClaimed()&&(i.tryAbandon(),t.getState().phase!==\"IDLE\"&&t.dispatch(ds()))},[i,t]),m=Q(()=>i.isClaimed(),[i]),h=ye(()=>({canGetLock:l,tryGetLock:c,findClosestDraggableId:f,findOptionsForDraggable:d,tryReleaseLock:u,isLockClaimed:m}),[l,c,f,d,u,m]);n1(a);for(let x=0;x({onBeforeCapture:t=>{(0,Qr.flushSync)(()=>{e.onBeforeCapture&&e.onBeforeCapture(t)})},onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragEnd:e.onDragEnd,onDragUpdate:e.onDragUpdate}),x1=e=>I(C(C({},Kr),e.autoScrollerOptions),{durationDampening:C(C({},Kr.durationDampening),e.autoScrollerOptions)});function Ur(e){return e.current||B(),e.current}function v1(e){let{contextId:t,setCallbacks:n,sensors:r,nonce:o,dragHandleUsageInstructions:a}=e,i=(0,G.useRef)(null);F0();let s=xs(e),l=Q(()=>b1(s.current),[s]),c=Q(()=>x1(s.current),[s]),f=C0(t),d=D0({contextId:t,text:a}),u=h0(t,o),m=Q(V=>{Ur(i).dispatch(V)},[]),h=ye(()=>Oi({publishWhileDragging:oy,updateDroppableScroll:iy,updateDroppableIsEnabled:sy,updateDroppableIsCombineEnabled:ly,collectionStarting:ay},m),[m]),x=v0(),v=ye(()=>Ky(x,h),[x,h]),y=ye(()=>u0(C({scrollWindow:Xy,scrollDroppable:v.scrollDroppable,getAutoScrollerOptions:c},Oi({move:rf},m))),[v.scrollDroppable,m,c]),b=b0(t),S=ye(()=>jy({announce:f,autoScroller:y,dimensionMarshal:v,focusMarshal:b,getResponders:l,styleMarshal:u}),[f,y,v,b,l,u]);i.current=S;let w=Q(()=>{let V=Ur(i);V.getState().phase!==\"IDLE\"&&V.dispatch(ds())},[]),D=Q(()=>{let V=Ur(i).getState();return V.phase===\"DROP_ANIMATING\"?!0:V.phase===\"IDLE\"?!1:V.isDragging},[]),O=ye(()=>({isDragging:D,tryAbort:w}),[D,w]);n(O);let F=Q(V=>pf(Ur(i).getState(),V),[]),T=Q(()=>Nn(Ur(i).getState()),[]),P=ye(()=>({marshal:v,focus:b,contextId:t,canLift:F,isMovementAllowed:T,dragHandleUsageInstructionsId:d,registry:x}),[t,v,d,b,F,T,x]);return h1({contextId:t,store:S,registry:x,customSensors:r||null,enableDefaultSensors:e.enableDefaultSensors!==!1}),(0,G.useEffect)(()=>w,[w]),G.default.createElement(Aa.Provider,{value:P},G.default.createElement(nu,{context:hs,store:S},e.children))}function y1(){return G.default.useId()}function _a(e){let t=y1(),n=e.dragHandleUsageInstructions||Oa.dragHandleUsageInstructions;return G.default.createElement(Ki,null,r=>G.default.createElement(v1,{nonce:e.nonce,contextId:t,setCallbacks:r,dragHandleUsageInstructions:n,enableDefaultSensors:e.enableDefaultSensors,sensors:e.sensors,onBeforeCapture:e.onBeforeCapture,onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragUpdate:e.onDragUpdate,onDragEnd:e.onDragEnd,autoScrollerOptions:e.autoScrollerOptions},e.children))}var Eu={dragging:5e3,dropAnimating:4500},w1=(e,t)=>t?Gr.drop(t.duration):e?Gr.snap:Gr.fluid,C1=(e,t)=>{if(e)return t?Yr.opacity.drop:Yr.opacity.combining},S1=e=>e.forceShouldAnimate!=null?e.forceShouldAnimate:e.mode===\"SNAP\";function O1(e){let n=e.dimension.client,{offset:r,combineWith:o,dropping:a}=e,i=!!o,s=S1(e),l=!!a,c=l?Qi.drop(r,i):Qi.moveTo(r);return{position:\"fixed\",top:n.marginBox.top,left:n.marginBox.left,boxSizing:\"border-box\",width:n.borderBox.width,height:n.borderBox.height,transition:w1(s,a),transform:c,opacity:C1(i,l),zIndex:l?Eu.dropAnimating:Eu.dragging,pointerEvents:\"none\"}}function D1(e){return{transform:Qi.moveTo(e.offset),transition:e.shouldAnimateDisplacement?void 0:\"none\"}}function I1(e){return e.type===\"DRAGGING\"?O1(e):D1(e)}function E1(e,t,n=Ze){let r=window.getComputedStyle(t),o=t.getBoundingClientRect(),a=Li(o,r),i=Vr(a,n),s={client:a,tagName:t.tagName.toLowerCase(),display:r.display},l={x:a.marginBox.width,y:a.marginBox.height};return{descriptor:e,placeholder:s,displaceBy:l,client:a,page:i}}function T1(e){let t=bs(\"draggable\"),{descriptor:n,registry:r,getDraggableRef:o,canDragInteractiveElements:a,shouldRespectForcePress:i,isEnabled:s}=e,l=ye(()=>({canDragInteractiveElements:a,shouldRespectForcePress:i,isEnabled:s}),[a,s,i]),c=Q(m=>{let h=o();return h||B(),E1(n,h,m)},[n,o]),f=ye(()=>({uniqueId:t,descriptor:n,options:l,getDimension:c}),[n,c,l,t]),d=(0,G.useRef)(f),u=(0,G.useRef)(!0);wt(()=>(r.draggable.register(d.current),()=>r.draggable.unregister(d.current)),[r.draggable]),wt(()=>{if(u.current){u.current=!1;return}let m=d.current;d.current=f,r.draggable.update(f,m)},[f,r.draggable])}var ys=G.default.createContext(null);function If(e){e&&no(e)||B()}function k1(e,t,n){ro(()=>{function r(a){return\"Draggable[id: \".concat(a,\"]: \")}let o=e.draggableId;o||B(!1),typeof o!=\"string\"&&B(!1),Number.isInteger(e.index)||B(!1),e.mapped.type!==\"DRAGGING\"&&(If(n()),e.isEnabled&&(vf(t,o)||B(!1)))})}function N1(e){}function Ea(e){let t=(0,G.useContext)(e);return t||B(),t}function F1(e){e.preventDefault()}var A1=e=>{let t=(0,G.useRef)(null),n=Q((O=null)=>{t.current=O},[]),r=Q(()=>t.current,[]),{contextId:o,dragHandleUsageInstructionsId:a,registry:i}=Ea(Aa),{type:s,droppableId:l}=Ea(ys),c=ye(()=>({id:e.draggableId,index:e.index,type:s,droppableId:l}),[e.draggableId,e.index,s,l]),{children:f,draggableId:d,isEnabled:u,shouldRespectForcePress:m,canDragInteractiveElements:h,isClone:x,mapped:v,dropAnimationFinished:y}=e;if(k1(e,o,r),N1(x),!x){let O=ye(()=>({descriptor:c,registry:i,getDraggableRef:r,canDragInteractiveElements:h,shouldRespectForcePress:m,isEnabled:u}),[c,i,r,h,m,u]);T1(O)}let b=ye(()=>u?{tabIndex:0,role:\"button\",\"aria-describedby\":a,\"data-rfd-drag-handle-draggable-id\":d,\"data-rfd-drag-handle-context-id\":o,draggable:!1,onDragStart:F1}:null,[o,a,d,u]),S=Q(O=>{v.type===\"DRAGGING\"&&v.dropping&&O.propertyName===\"transform\"&&(0,Qr.flushSync)(y)},[y,v]),w=ye(()=>{let O=I1(v),F=v.type===\"DRAGGING\"&&v.dropping?S:void 0;return{innerRef:n,draggableProps:{\"data-rfd-draggable-context-id\":o,\"data-rfd-draggable-id\":d,style:O,onTransitionEnd:F},dragHandleProps:b}},[o,b,d,v,S,n]),D=ye(()=>({draggableId:c.id,type:c.type,source:{index:c.index,droppableId:c.droppableId}}),[c.droppableId,c.id,c.index,c.type]);return G.default.createElement(G.default.Fragment,null,f(w,v.snapshot,D))},Ef=(e,t)=>e===t,Tf=e=>{let{combine:t,destination:n}=e;return n?n.droppableId:t?t.droppableId:null},P1=e=>e.combine?e.combine.draggableId:null,_1=e=>e.at&&e.at.type===\"COMBINE\"?e.at.combine.draggableId:null;function B1(){let e=Qe((o,a)=>({x:o,y:a})),t=Qe((o,a,i=null,s=null,l=null)=>({isDragging:!0,isClone:a,isDropAnimating:!!l,dropAnimation:l,mode:o,draggingOver:i,combineWith:s,combineTargetFor:null})),n=Qe((o,a,i,s,l=null,c=null,f=null)=>({mapped:{type:\"DRAGGING\",dropping:null,draggingOver:l,combineWith:c,mode:a,offset:o,dimension:i,forceShouldAnimate:f,snapshot:t(a,s,l,c,null)}}));return(o,a)=>{if(Jr(o)){if(o.critical.draggable.id!==a.draggableId)return null;let i=o.current.client.offset,s=o.dimensions.draggables[a.draggableId],l=yt(o.impact),c=_1(o.impact),f=o.forceShouldAnimate;return n(e(i.x,i.y),o.movementMode,s,a.isClone,l,c,f)}if(o.phase===\"DROP_ANIMATING\"){let i=o.completed;if(i.result.draggableId!==a.draggableId)return null;let s=a.isClone,l=o.dimensions.draggables[a.draggableId],c=i.result,f=c.mode,d=Tf(c),u=P1(c),h={duration:o.dropDuration,curve:us.drop,moveTo:o.newHomeClientOffset,opacity:u?Yr.opacity.drop:null,scale:u?Yr.scale.drop:null};return{mapped:{type:\"DRAGGING\",offset:o.newHomeClientOffset,dimension:l,dropping:h,draggingOver:d,combineWith:u,mode:f,forceShouldAnimate:null,snapshot:t(f,s,d,u,h)}}}return null}}function kf(e=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:e,combineWith:null}}var L1={mapped:{type:\"SECONDARY\",offset:Ze,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:kf(null)}};function M1(){let e=Qe((i,s)=>({x:i,y:s})),t=Qe(kf),n=Qe((i,s=null,l)=>({mapped:{type:\"SECONDARY\",offset:i,combineTargetFor:s,shouldAnimateDisplacement:l,snapshot:t(s)}})),r=i=>i?n(Ze,i,!0):null,o=(i,s,l,c)=>{let f=l.displaced.visible[i],d=!!(c.inVirtualList&&c.effected[i]),u=ka(l),m=u&&u.draggableId===i?s:null;if(!f){if(!d)return r(m);if(l.displaced.invisible[i])return null;let v=er(c.displacedBy.point),y=e(v.x,v.y);return n(y,m,!0)}if(d)return r(m);let h=l.displacedBy.point,x=e(h.x,h.y);return n(x,m,f.shouldAnimate)};return(i,s)=>{if(Jr(i))return i.critical.draggable.id===s.draggableId?null:o(s.draggableId,i.critical.draggable.id,i.impact,i.afterCritical);if(i.phase===\"DROP_ANIMATING\"){let l=i.completed;return l.result.draggableId===s.draggableId?null:o(s.draggableId,l.result.draggableId,l.impact,l.afterCritical)}return null}}var V1=()=>{let e=B1(),t=M1();return(r,o)=>e(r,o)||t(r,o)||L1},z1={dropAnimationFinished:af},$1=Pi(V1,z1,null,{context:hs,areStatePropsEqual:Ef})(A1);function Nf(e){return Ea(ys).isUsingCloneFor===e.draggableId&&!e.isClone?null:G.default.createElement($1,e)}function Ba(e){let t=typeof e.isDragDisabled==\"boolean\"?!e.isDragDisabled:!0,n=!!e.disableInteractiveElementBlocking,r=!!e.shouldRespectForcePress;return G.default.createElement(Nf,R({},e,{isClone:!1,isEnabled:t,canDragInteractiveElements:n,shouldRespectForcePress:r}))}var ws=e=>t=>e===t,U1=ws(\"scroll\"),W1=ws(\"auto\"),G1=ws(\"visible\"),Tu=(e,t)=>t(e.overflowX)||t(e.overflowY),j1=(e,t)=>t(e.overflowX)&&t(e.overflowY),Ff=e=>{let t=window.getComputedStyle(e),n={overflowX:t.overflowX,overflowY:t.overflowY};return Tu(n,U1)||Tu(n,W1)},H1=()=>!1,Af=e=>e==null?null:e===document.body?H1()?e:null:e===document.documentElement?null:Ff(e)?e:Af(e.parentElement);var es=e=>({x:e.scrollLeft,y:e.scrollTop}),Pf=e=>e?window.getComputedStyle(e).position===\"fixed\"?!0:Pf(e.parentElement):!1,q1=e=>{let t=Af(e),n=Pf(e);return{closestScrollable:t,isFixedOnPage:n}},Y1=({descriptor:e,isEnabled:t,isCombineEnabled:n,isFixedOnPage:r,direction:o,client:a,page:i,closest:s})=>{let l=(()=>{if(!s)return null;let{scrollSize:u,client:m}=s,h=cf({scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,height:m.paddingBox.height,width:m.paddingBox.width});return{pageMarginBox:s.page.marginBox,frameClient:m,scrollSize:u,shouldClipSubject:s.shouldClipSubject,scroll:{initial:s.scroll,current:s.scroll,max:h,diff:{value:Ze,displacement:Ze}}}})(),c=o===\"vertical\"?os:Wu,f=Qn({page:i,withPlaceholder:null,axis:c,frame:l});return{descriptor:e,isCombineEnabled:n,isFixedOnPage:r,axis:c,isEnabled:t,client:a,page:i,frame:l,subject:f}},K1=(e,t)=>{let n=Mi(e);if(!t||e!==t)return n;let r=n.paddingBox.top-t.scrollTop,o=n.paddingBox.left-t.scrollLeft,a=r+t.scrollHeight,i=o+t.scrollWidth,l=va({top:r,right:i,bottom:a,left:o},n.border);return ya({borderBox:l,margin:n.margin,border:n.border,padding:n.padding})},X1=({ref:e,descriptor:t,env:n,windowScroll:r,direction:o,isDropDisabled:a,isCombineEnabled:i,shouldClipSubject:s})=>{let l=n.closestScrollable,c=K1(e,l),f=Vr(c,r),d=(()=>{if(!l)return null;let m=Mi(l),h={scrollHeight:l.scrollHeight,scrollWidth:l.scrollWidth};return{client:m,page:Vr(m,r),scroll:es(l),scrollSize:h,shouldClipSubject:s}})();return Y1({descriptor:t,isEnabled:!a,isCombineEnabled:i,isFixedOnPage:n.isFixedOnPage,direction:o,client:c,page:f,closest:d})},J1={passive:!1},Q1={passive:!0},ku=e=>e.shouldPublishImmediately?J1:Q1,Sa=e=>e&&e.env.closestScrollable||null;function Z1(e){let t=(0,G.useRef)(null),n=Ea(Aa),r=bs(\"droppable\"),{registry:o,marshal:a}=n,i=xs(e),s=ye(()=>({id:e.droppableId,type:e.type,mode:e.mode}),[e.droppableId,e.mode,e.type]),l=(0,G.useRef)(s),c=ye(()=>Qe((w,D)=>{t.current||B();let O={x:w,y:D};a.updateDroppableScroll(s.id,O)}),[s.id,a]),f=Q(()=>{let w=t.current;return!w||!w.env.closestScrollable?Ze:es(w.env.closestScrollable)},[]),d=Q(()=>{let w=f();c(w.x,w.y)},[f,c]),u=ye(()=>Jn(d),[d]),m=Q(()=>{let w=t.current,D=Sa(w);if(w&&D||B(),w.scrollOptions.shouldPublishImmediately){d();return}u()},[u,d]),h=Q((w,D)=>{t.current&&B();let O=i.current,F=O.getDroppableRef();F||B();let T=q1(F),P={ref:F,descriptor:s,env:T,scrollOptions:D};t.current=P;let V=X1({ref:F,descriptor:s,env:T,windowScroll:w,direction:O.direction,isDropDisabled:O.isDropDisabled,isCombineEnabled:O.isCombineEnabled,shouldClipSubject:!O.ignoreContainerClipping}),E=T.closestScrollable;return E&&(E.setAttribute(Cu.contextId,n.contextId),E.addEventListener(\"scroll\",m,ku(P.scrollOptions))),V},[n.contextId,s,m,i]),x=Q(()=>{let w=t.current,D=Sa(w);return w&&D||B(),es(D)},[]),v=Q(()=>{let w=t.current;w||B();let D=Sa(w);t.current=null,D&&(u.cancel(),D.removeAttribute(Cu.contextId),D.removeEventListener(\"scroll\",m,ku(w.scrollOptions)))},[m,u]),y=Q(w=>{let D=t.current;D||B();let O=Sa(D);O||B(),O.scrollTop+=w.y,O.scrollLeft+=w.x},[]),b=ye(()=>({getDimensionAndWatchScroll:h,getScrollWhileDragging:x,dragStopped:v,scroll:y}),[v,h,x,y]),S=ye(()=>({uniqueId:r,descriptor:s,callbacks:b}),[b,s,r]);wt(()=>(l.current=S.descriptor,o.droppable.register(S),()=>{t.current&&v(),o.droppable.unregister(S)}),[b,s,v,S,a,o.droppable]),wt(()=>{t.current&&a.updateDroppableIsEnabled(l.current.id,!e.isDropDisabled)},[e.isDropDisabled,a]),wt(()=>{t.current&&a.updateDroppableIsCombineEnabled(l.current.id,e.isCombineEnabled)},[e.isCombineEnabled,a])}function ji(){}var Nu={width:0,height:0,margin:Zx},R1=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>e||n===\"close\"?Nu:{height:t.client.borderBox.height,width:t.client.borderBox.width,margin:t.client.margin},ew=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>{let r=R1({isAnimatingOpenOnMount:e,placeholder:t,animate:n});return{display:t.display,boxSizing:\"border-box\",width:r.width,height:r.height,marginTop:r.margin.top,marginRight:r.margin.right,marginBottom:r.margin.bottom,marginLeft:r.margin.left,flexShrink:\"0\",flexGrow:\"0\",pointerEvents:\"none\",transition:n!==\"none\"?Gr.placeholder:null}},tw=e=>{let t=(0,G.useRef)(null),n=Q(()=>{t.current&&(clearTimeout(t.current),t.current=null)},[]),{animate:r,onTransitionEnd:o,onClose:a,contextId:i}=e,[s,l]=(0,G.useState)(e.animate===\"open\");(0,G.useEffect)(()=>s?r!==\"open\"?(n(),l(!1),ji):t.current?ji:(t.current=setTimeout(()=>{t.current=null,l(!1)}),n):ji,[r,s,n]);let c=Q(d=>{d.propertyName===\"height\"&&(o(),r===\"close\"&&a())},[r,a,o]),f=ew({isAnimatingOpenOnMount:s,animate:e.animate,placeholder:e.placeholder});return G.default.createElement(e.placeholder.tagName,{style:f,\"data-rfd-placeholder-context-id\":i,onTransitionEnd:c,ref:e.innerRef})},nw=G.default.memo(tw);function Hi(e){return typeof e==\"boolean\"}function qi(e,t){t.forEach(n=>n(e))}var rw=[function({props:t}){t.droppableId||B(),typeof t.droppableId!=\"string\"&&B()},function({props:t}){Hi(t.isDropDisabled)||B(),Hi(t.isCombineEnabled)||B(),Hi(t.ignoreContainerClipping)||B()},function({getDroppableRef:t}){If(t())}],ow=[function({props:t,getPlaceholderRef:n}){!t.placeholder||n()}],aw=[function({props:t}){t.renderClone||B()},function({getPlaceholderRef:t}){t()&&B()}];function iw(e){ro(()=>{qi(e,rw),e.props.mode===\"standard\"&&qi(e,ow),e.props.mode===\"virtual\"&&qi(e,aw)})}var ts=class extends G.default.PureComponent{constructor(...t){super(...t),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?\"open\":\"none\"},this.onClose=()=>{this.state.animate===\"close\"&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(t,n){return t.shouldAnimate?t.on?{isVisible:!0,data:t.on,animate:\"open\"}:n.isVisible?{isVisible:!0,data:n.data,animate:\"close\"}:{isVisible:!1,animate:\"close\",data:null}:{isVisible:!!t.on,data:t.on,animate:\"none\"}}render(){if(!this.state.isVisible)return null;let t={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(t)}},sw=e=>{let t=(0,G.useContext)(Aa);t||B();let{contextId:n,isMovementAllowed:r}=t,o=(0,G.useRef)(null),a=(0,G.useRef)(null),{children:i,droppableId:s,type:l,mode:c,direction:f,ignoreContainerClipping:d,isDropDisabled:u,isCombineEnabled:m,snapshot:h,useClone:x,updateViewportMaxScroll:v,getContainerForClone:y}=e,b=Q(()=>o.current,[]),S=Q((N=null)=>{o.current=N},[]),w=Q(()=>a.current,[]),D=Q((N=null)=>{a.current=N},[]);iw({props:e,getDroppableRef:b,getPlaceholderRef:w});let O=Q(()=>{r()&&v({maxScroll:ff()})},[r,v]);Z1({droppableId:s,type:l,mode:c,direction:f,isDropDisabled:u,isCombineEnabled:m,ignoreContainerClipping:d,getDroppableRef:b});let F=ye(()=>G.default.createElement(ts,{on:e.placeholder,shouldAnimate:e.shouldAnimatePlaceholder},({onClose:N,data:U,animate:K})=>G.default.createElement(nw,{placeholder:U,onClose:N,innerRef:D,animate:K,contextId:n,onTransitionEnd:O})),[n,O,e.placeholder,e.shouldAnimatePlaceholder,D]),T=ye(()=>({innerRef:S,placeholder:F,droppableProps:{\"data-rfd-droppable-id\":s,\"data-rfd-droppable-context-id\":n}}),[n,s,F,S]),P=x?x.dragging.draggableId:null,V=ye(()=>({droppableId:s,type:l,isUsingCloneFor:P}),[s,P,l]);function E(){if(!x)return null;let{dragging:N,render:U}=x,K=G.default.createElement(Nf,{draggableId:N.draggableId,index:N.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(de,ve)=>U(de,ve,N));return Qr.default.createPortal(K,y())}return G.default.createElement(ys.Provider,{value:V},i(T,h),E())};function lw(){return document.body||B(),document.body}var Fu={mode:\"standard\",type:\"DEFAULT\",direction:\"vertical\",isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:lw},_f=e=>{let t=C({},e),n;for(n in Fu)e[n]===void 0&&(t=I(C({},t),{[n]:Fu[n]}));return t},Yi=(e,t)=>e===t.droppable.type,Au=(e,t)=>t.draggables[e.draggable.id],dw=()=>{let e={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},t=I(C({},e),{shouldAnimatePlaceholder:!1}),n=Qe(a=>({draggableId:a.id,type:a.type,source:{index:a.index,droppableId:a.droppableId}})),r=Qe((a,i,s,l,c,f)=>{let d=c.descriptor.id;if(c.descriptor.droppableId===a){let h=f?{render:f,dragging:n(c.descriptor)}:null,x={isDraggingOver:s,draggingOverWith:s?d:null,draggingFromThisWith:d,isUsingPlaceholder:!0};return{placeholder:c.placeholder,shouldAnimatePlaceholder:!1,snapshot:x,useClone:h}}if(!i)return t;if(!l)return e;let m={isDraggingOver:s,draggingOverWith:d,draggingFromThisWith:null,isUsingPlaceholder:!0};return{placeholder:c.placeholder,shouldAnimatePlaceholder:!0,snapshot:m,useClone:null}});return(a,i)=>{let s=_f(i),l=s.droppableId,c=s.type,f=!s.isDropDisabled,d=s.renderClone;if(Jr(a)){let u=a.critical;if(!Yi(c,u))return t;let m=Au(u,a.dimensions),h=yt(a.impact)===l;return r(l,f,h,h,m,d)}if(a.phase===\"DROP_ANIMATING\"){let u=a.completed;if(!Yi(c,u.critical))return t;let m=Au(u.critical,a.dimensions);return r(l,f,Tf(u.result)===l,yt(u.impact)===l,m,d)}if(a.phase===\"IDLE\"&&a.completed&&!a.shouldFlush){let u=a.completed;if(!Yi(c,u.critical))return t;let m=yt(u.impact)===l,h=!!(u.impact.at&&u.impact.at.type===\"COMBINE\"),x=u.critical.droppable.id===l;return m?h?e:t:x?e:t}return t}},cw={updateViewportMaxScroll:cy},La=Pi(dw,cw,(e,t,n)=>C(C(C({},_f(n)),e),t),{context:hs,areStatePropsEqual:Ef})(sw);var{Title:uw,Text:We}=z.Typography,{Panel:Ma}=z.Collapse,{Option:$I}=z.Select,rr=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function fw({config:e,updateConfig:t}){let n={name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",userId:\"\",deviceName:\"Hills Windows\",client:\"Hills Windows\",clientVersion:\"0.2.2\",deviceId:\"\",enabled:!0,cacheViews:!0,enablePlaybackReport:!0,timeout:15e3,retryCount:3,maxConcurrent:5,isJellyfin:!1},[r,o]=(0,k.useState)(()=>{let y=(e==null?void 0:e.emby)||[];return y.length===0?[I(C({},n),{name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",id:rr()}),I(C({},n),{name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",id:rr()})]:y.map(b=>I(C(C({},n),b),{id:b.id||rr(),enablePlaybackReport:b.enablePlaybackReport!==!1,isJellyfin:b.isJellyfin||!1}))}),[a,i]=(0,k.useState)([]),s=(0,k.useCallback)(y=>{if(!y.destination)return;let b=Array.from(r),[S]=b.splice(y.source.index,1);b.splice(y.destination.index,0,S),o(b)},[r]),l=(0,k.useCallback)(()=>\"\\u65B0\\u670D\\u52A1\\u5668 \".concat(r.length+1),[r.length]),c=(0,k.useCallback)(()=>{let y=rr(),b=I(C({},n),{name:l(),id:y,deviceId:\"\"});o([...r,b]),i(S=>[...S,y]),z.message.success(\"\\u5DF2\\u6DFB\\u52A0\\u65B0\\u670D\\u52A1\\u5668\")},[r,l]),f=(0,k.useCallback)(y=>{if(r.length<=1){z.message.warning(\"\\u81F3\\u5C11\\u9700\\u8981\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\");return}o(b=>b.filter(S=>S.id!==y)),i(b=>b.filter(S=>S!==y)),z.message.success(\"\\u670D\\u52A1\\u5668\\u5DF2\\u5220\\u9664\")},[r]),d=(0,k.useCallback)(y=>{let b=r.find(D=>D.id===y);if(!b)return;let S=rr(),w=I(C({},b),{name:\"\".concat(b.name,\" (\\u526F\\u672C)\"),id:S,deviceId:\"\"});o([...r,w]),i(D=>[...D,S]),z.message.success(\"\\u670D\\u52A1\\u5668\\u5DF2\\u590D\\u5236\")},[r]),u=(0,k.useCallback)((y,b,S)=>{o(w=>w.map(D=>D.id===y?I(C({},D),{[b]:S}):D))},[]),m=(0,k.useCallback)((y,b)=>{let S=r.findIndex(O=>O.id===y);if(b===\"up\"&&S===0||b===\"down\"&&S===r.length-1)return;let w=b===\"up\"?S-1:S+1,D=[...r];[D[S],D[w]]=[D[w],D[S]],o(D)},[r]),h=(0,k.useCallback)(y=>{i(b=>b.includes(y)?b.filter(S=>S!==y):[...b,y])},[]),x=(0,k.useCallback)(y=>y?!y.startsWith(\"http://\")&&!y.startsWith(\"https://\")?\"\\u670D\\u52A1\\u5668\\u5730\\u5740\\u5FC5\\u987B\\u4EE5 http:// \\u6216 https:// \\u5F00\\u5934\":null:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\\u4E0D\\u80FD\\u4E3A\\u7A7A\",[]),v=(0,k.useCallback)(y=>y?k.default.createElement(z.Tag,{color:\"green\",style:{fontSize:11,marginLeft:4}},k.default.createElement(Po,null),\" Jellyfin\"):k.default.createElement(z.Tag,{color:\"blue\",style:{fontSize:11,marginLeft:4}},\"Emby\"),[]);return(0,k.useEffect)(()=>{t&&t(I(C({},e),{emby:r}))},[r,e,t]),k.default.createElement(\"div\",{className:\"emby-config-container\"},k.default.createElement(\"div\",{style:{marginBottom:16,padding:\"16px 20px\",background:\"#fff\",borderRadius:8,boxShadow:\"0 2px 8px rgba(0,0,0,0.06)\",display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},k.default.createElement(uw,{level:4,style:{margin:0,display:\"flex\",alignItems:\"center\",gap:8}},k.default.createElement(wr,null)),k.default.createElement(z.Tag,{color:\"blue\",style:{fontSize:14}},\"\\u5171 \",r.length,\" \\u4E2A\\u670D\\u52A1\\u5668\")),k.default.createElement(z.Space,null,k.default.createElement(z.Button,{type:\"primary\",onClick:c,icon:k.default.createElement(nt,null),size:\"large\"},\"\\u65B0\\u589E\\u670D\\u52A1\\u5668\"))),k.default.createElement(_a,{onDragEnd:s},k.default.createElement(La,{droppableId:\"emby-servers\"},y=>k.default.createElement(\"div\",I(C({},y.droppableProps),{ref:y.innerRef}),r.map((b,S)=>{let w=a.includes(b.id),D=b.isJellyfin?\"#52c41a\":\"#1890ff\",O=x(b.server);return k.default.createElement(Ba,{key:b.id,draggableId:b.id,index:S},F=>k.default.createElement(\"div\",I(C({ref:F.innerRef},F.draggableProps),{style:{marginBottom:12}}),k.default.createElement(z.Card,{size:\"small\",style:C({borderRadius:8,borderLeft:\"4px solid \".concat(D)},O&&!w&&{borderColor:\"#ff4d4f\"})},k.default.createElement(\"div\",I(C({},F.dragHandleProps),{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",cursor:\"pointer\",paddingLeft:8,minHeight:48,gap:8},onClick:()=>h(b.id)}),k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12,flex:1,minWidth:0}},k.default.createElement(\"div\",{style:{flex:1,minWidth:0}},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:4,flexWrap:\"wrap\"}},k.default.createElement(We,{strong:!0,style:{fontSize:14,wordBreak:\"break-word\"}},b.name||\"\\u672A\\u547D\\u540D\\u670D\\u52A1\\u5668\"),k.default.createElement(z.Tag,{color:\"default\",style:{fontSize:10,marginLeft:4}},\"ID: \",b.id.slice(0,8)),v(b.isJellyfin),!b.enabled&&k.default.createElement(z.Tag,{color:\"default\"},\"\\u5DF2\\u7981\\u7528\"),O&&!w&&k.default.createElement(z.Tag,{color:\"error\",style:{fontSize:11}},\"\\u914D\\u7F6E\\u9519\\u8BEF\")),k.default.createElement(\"div\",null,k.default.createElement(We,{type:\"secondary\",style:{fontSize:12,wordBreak:\"break-all\"}},b.server||\"\\u672A\\u8BBE\\u7F6E\\u670D\\u52A1\\u5668\\u5730\\u5740\")))),k.default.createElement(z.Space,{onClick:T=>T.stopPropagation(),style:{flexShrink:0,alignSelf:\"flex-start\",marginTop:4}},k.default.createElement(z.Tooltip,{title:\"\\u590D\\u5236\\u670D\\u52A1\\u5668\"},k.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:k.default.createElement(br,null),onClick:()=>d(b.id)})),k.default.createElement(z.Tooltip,{title:\"\\u4E0A\\u79FB\"},k.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:k.default.createElement(gn,null),disabled:S===0,onClick:()=>m(b.id,\"up\")})),k.default.createElement(z.Tooltip,{title:\"\\u4E0B\\u79FB\"},k.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:k.default.createElement(mn,null),disabled:S===r.length-1,onClick:()=>m(b.id,\"down\")})),r.length>1&&k.default.createElement(z.Popconfirm,{title:\"\\u786E\\u5B9A\\u8981\\u5220\\u9664\\u8FD9\\u4E2A\\u670D\\u52A1\\u5668\\u5417\\uFF1F\",onConfirm:()=>f(b.id),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",placement:\"topRight\"},k.default.createElement(z.Tooltip,{title:\"\\u5220\\u9664\"},k.default.createElement(z.Button,{type:\"text\",danger:!0,size:\"small\",icon:k.default.createElement(je,null)}))))),w&&k.default.createElement(k.default.Fragment,null,k.default.createElement(z.Divider,{style:{margin:\"12px 0\"}}),k.default.createElement(z.Collapse,{defaultActiveKey:[\"basic\",\"playback\"],ghost:!0},k.default.createElement(Ma,{header:\"\\u57FA\\u7840\\u914D\\u7F6E\",key:\"basic\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:24},k.default.createElement(We,{type:\"secondary\"},\"\\u5B9E\\u4F8B\\u540D\\u79F0\"),k.default.createElement(z.Input,{placeholder:\"\\u5982\\uFF1A\\u6211\\u7684\\u5916\\u7F51\\u670D\",value:b.name,onChange:T=>u(b.id,\"name\",T.target.value),status:b.name?\"\":\"warning\"})),k.default.createElement(z.Col,{span:24},k.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",marginBottom:4}},k.default.createElement(We,{type:\"secondary\"},\"\\u670D\\u52A1\\u5668\\u5730\\u5740\"),O&&k.default.createElement(We,{type:\"danger\",style:{fontSize:12}},O)),k.default.createElement(z.Input,{placeholder:\"http://example.com:8096\",value:b.server,onChange:T=>u(b.id,\"server\",T.target.value),status:O?\"error\":\"\"}),k.default.createElement(We,{type:\"secondary\",style:{fontSize:12,marginTop:4}},\"\\u793A\\u4F8B: http://192.168.1.100:8096 \\u6216 https://emby.example.com\")),k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"\\u7528\\u6237\\u540D\"),k.default.createElement(z.Input,{placeholder:\"Username\",value:b.username,onChange:T=>u(b.id,\"username\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"\\u5BC6\\u7801\"),k.default.createElement(z.Input.Password,{placeholder:\"Password\",value:b.password,onChange:T=>u(b.id,\"password\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"Token\"),k.default.createElement(z.Input,{placeholder:\"\\u53EF\\u9009\\uFF0C\\u76F4\\u63A5\\u586B\\u5199Token\",value:b.token,onChange:T=>u(b.id,\"token\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"User ID\"),k.default.createElement(z.Input,{placeholder:\"\\u53EF\\u9009\\uFF0C\\u7528\\u6237ID\",value:b.userId,onChange:T=>u(b.id,\"userId\",T.target.value)})))),k.default.createElement(Ma,{header:\"\\u5BA2\\u6237\\u7AEF\\u4FE1\\u606F\",key:\"client\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"\\u8BBE\\u5907\\u540D\\u79F0\"),k.default.createElement(z.Input,{placeholder:\"\\u5982: Hills Windows\",value:b.deviceName,onChange:T=>u(b.id,\"deviceName\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"\\u5BA2\\u6237\\u7AEF\\u7C7B\\u578B\"),k.default.createElement(z.Input,{placeholder:\"\\u5982: Hills Windows\",value:b.client,onChange:T=>u(b.id,\"client\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(We,{type:\"secondary\"},\"\\u5BA2\\u6237\\u7AEF\\u7248\\u672C\"),k.default.createElement(z.Input,{placeholder:\"\\u5982: 4.8.0.50\",value:b.clientVersion,onChange:T=>u(b.id,\"clientVersion\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\"}},k.default.createElement(We,{type:\"secondary\"},\"\\u8BBE\\u5907ID\"),k.default.createElement(z.Button,{type:\"link\",size:\"small\",onClick:()=>u(b.id,\"deviceId\",rr())},\"\\u91CD\\u65B0\\u751F\\u6210\")),k.default.createElement(z.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u751F\\u6210\",value:b.deviceId,onChange:T=>u(b.id,\"deviceId\",T.target.value)}),k.default.createElement(We,{type:\"secondary\",style:{fontSize:12,marginTop:4}},\"\\u6807\\u51C6UUID\\u683C\\u5F0F\\uFF0C\\u5982: 550e8400-e29b-41d4-a716-446655440000\")))),k.default.createElement(Ma,{header:\"\\u529F\\u80FD\\u5F00\\u5173\",key:\"features\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:8},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},k.default.createElement(z.Switch,{size:\"small\",checked:b.enabled,onChange:T=>u(b.id,\"enabled\",T)}),k.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u542F\\u7528\\u72B6\\u6001\"))),k.default.createElement(z.Col,{span:8},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},k.default.createElement(z.Switch,{size:\"small\",checked:b.cacheViews,onChange:T=>u(b.id,\"cacheViews\",T)}),k.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u7F13\\u5B58\\u89C6\\u56FE\"))),k.default.createElement(z.Col,{span:8},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},k.default.createElement(z.Switch,{size:\"small\",checked:b.enablePlaybackReport,onChange:T=>u(b.id,\"enablePlaybackReport\",T)}),k.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u64AD\\u653E\\u8FDB\\u5EA6\\u540C\\u6B65\")))),k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:24},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:\"8px 12px\",background:\"#f6ffed\",borderRadius:4,border:\"1px solid #b7eb8f\"}},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},k.default.createElement(Po,{style:{marginRight:8,color:\"#52c41a\"}}),k.default.createElement(\"div\",null,k.default.createElement(We,{strong:!0},\"\\u670D\\u52A1\\u5668\\u7C7B\\u578B\"),k.default.createElement(\"div\",{style:{fontSize:12,color:\"#666\"}},b.isJellyfin?\"Jellyfin \\u662F\\u4E00\\u4E2A\\u5F00\\u6E90\\u7684\\u5A92\\u4F53\\u670D\\u52A1\\u5668\\uFF0C\\u4E0E Emby \\u517C\\u5BB9\":\"Emby \\u662F\\u4E00\\u4E2A\\u5A92\\u4F53\\u670D\\u52A1\\u5668\\uFF0C\\u652F\\u6301\\u672C\\u5730\\u548C\\u8FDC\\u7A0B\\u6D41\\u5A92\\u4F53\"))),k.default.createElement(z.Switch,{checked:b.isJellyfin,onChange:T=>u(b.id,\"isJellyfin\",T),checkedChildren:\"Jellyfin\",unCheckedChildren:\"Emby\"}))))),k.default.createElement(Ma,{header:\"\\u8BF7\\u6C42\\u914D\\u7F6E\",key:\"request\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:8},k.default.createElement(We,{type:\"secondary\"},\"\\u8D85\\u65F6\\u65F6\\u95F4(ms)\"),k.default.createElement(z.InputNumber,{style:{width:\"100%\"},min:1e3,max:6e4,step:1e3,value:b.timeout,onChange:T=>u(b.id,\"timeout\",T)})),k.default.createElement(z.Col,{span:8},k.default.createElement(We,{type:\"secondary\"},\"\\u91CD\\u8BD5\\u6B21\\u6570\"),k.default.createElement(z.InputNumber,{style:{width:\"100%\"},min:0,max:10,value:b.retryCount,onChange:T=>u(b.id,\"retryCount\",T)})),k.default.createElement(z.Col,{span:8},k.default.createElement(We,{type:\"secondary\"},\"\\u6700\\u5927\\u5E76\\u53D1\\u6570\"),k.default.createElement(z.InputNumber,{style:{width:\"100%\"},min:1,max:20,value:b.maxConcurrent,onChange:T=>u(b.id,\"maxConcurrent\",T)})))))))))}),y.placeholder))),r.length>0&&k.default.createElement(\"div\",{style:{marginTop:20,padding:\"16px\",background:\"#fafafa\",borderRadius:8}},k.default.createElement(We,{type:\"secondary\",style:{fontSize:12}},\"\\u63D0\\u793A\\uFF1A\\u914D\\u7F6E\\u4FEE\\u6539\\u540E\\u8BF7\\u624B\\u52A8\\u4FDD\\u5B58\")))}var Bf=k.default.memo(fw);var W=_(J(),1),X=_(Be(),1);var Cs=_(tt(),1);var{Text:Ct}=X.Typography,{TabPane:Lf}=X.Tabs,ar=Cs.default.create({baseURL:\"/website\"});ar.interceptors.response.use(e=>{if(e.data.code!==0){let t=new Error(e.data.message);throw t.responseData=e.data,t}return e.data.data},e=>Promise.reject(e));var or=[\"\\u4E00\\u53E3\\u6C14\\u6C99\\u96D5\\u52A8\\u6F2B\",\"\\u7EAA\\u5F55\\u7247\\u8D85\\u6E05\",\"\\u6F14\\u5531\\u4F1A\\u8D85\\u6E05\",\"\\u7F8E\\u98DF\\u8D85\\u6E05\",\"\\u98DF\\u8C31\",\"\\u4F53\\u80B2\\u8D85\\u6E05\",\"\\u7403\\u661F\",\"\\u65C5\\u6E38\",\"\\u98CE\\u666F4K\",\"\\u8BF4\\u6848\",\"\\u77E5\\u540DUP\\u4E3B\",\"\\u63A2\\u7D22\\u53D1\\u73B0\\u8D85\\u6E05\",\"\\u9B3C\\u755C\",\"\\u641E\\u7B11\\u8D85\\u6E05\",\"\\u513F\\u7AE5\\u8D85\\u6E05\",\"\\u52A8\\u7269\\u4E16\\u754C\\u8D85\\u6E05\",\"\\u76F8\\u58F0\\u5C0F\\u54C1\\u8D85\\u6E05\",\"\\u620F\\u66F2\",\"\\u89E3\\u8BF4\",\"\\u6F14\\u8BB2\",\"\\u5C0F\\u59D0\\u59D0\\u8D85\\u6E05\",\"\\u8352\\u91CE\\u6C42\\u751F\\u8D85\\u6E05\",\"\\u5065\\u8EAB\",\"\\u5E15\\u6885\\u62C9\",\"\\u592A\\u6781\\u62F3\",\"\\u5E7F\\u573A\\u821E\",\"\\u821E\\u8E48\",\"\\u97F3\\u4E50\",\"\\u6B4C\\u66F2\",\"MV4K\",\"\\u821E\\u66F2\\u8D85\\u6E05\",\"4K\",\"\\u7535\\u5F71\",\"\\u7535\\u89C6\\u5267\",\"\\u767D\\u566A\\u97F3\\u8D85\\u6E05\",\"\\u8003\\u516C\\u8003\\u8BC1\",\"\\u5E73\\u9762\\u8BBE\\u8BA1\\u6559\\u5B66\",\"\\u8F6F\\u4EF6\\u6559\\u7A0B\",\"Windows\",\"\\u9009\\u7F8E\",\"\\u6A21\\u7279\",\"\\u6CF3\\u88C5\\u79C0\",\"\\u5185\\u8863\\u79C0\",\"4K\\u97F3\\u4E50\",\"MV\",\"4K MV\",\"\\u5973\\u56E2\",\"\\u76F4\\u64AD\\u5E73\\u53F0\",\"\\u6F14\\u5531\\u4F1A\",\"\\u8BFE\\u7A0B\\u8F85\\u5BFC\",\"\\u98CE\\u666F\",\"\\u7F8E\\u98DF\",\"\\u76F8\\u58F0\\u5C0F\\u54C1\",\"\\u52A8\\u7269\\u4E16\\u754C\",\"\\u513F\\u7AE5\\u5C11\\u513F\"];function pw(){let[e]=X.Form.useForm(),[t,n]=(0,W.useState)(!1),[r,o]=(0,W.useState)(!1),[a,i]=(0,W.useState)({hasCookie:!1,cookieLength:0,lastUpdate:\"\\u672A\\u77E5\"}),[s,l]=(0,W.useState)(null),[c,f]=(0,W.useState)(null),[d,u]=(0,W.useState)(\"basic\"),[m,h]=(0,W.useState)([]),x=async()=>{var E;try{let N=await ar.get(\"/bilibili/config\"),U=\"\",K=!1;if(N.classes_all&&N.classes_all.trim())try{let ve=JSON.parse(N.classes_all.trim());if(Array.isArray(ve)){if(typeof ve[0]==\"string\")h(ve),U=JSON.stringify(ve,null,2);else{let Oe=ve.filter(qe=>qe&&qe.type_id).map(qe=>qe.type_id);h(Oe),U=JSON.stringify(Oe,null,2)}K=!0}}catch(ve){console.warn(\"\\u89E3\\u6790classes_all\\u5931\\u8D25:\",ve)}if(!K){console.log(\"\\u6570\\u636E\\u5E93\\u4E2D\\u6CA1\\u6709\\u5206\\u7C7B\\u6570\\u636E\\uFF0C\\u4F7F\\u7528\\u5E76\\u4FDD\\u5B58\\u9ED8\\u8BA4\\u5206\\u7C7B\"),h(or),U=JSON.stringify(or,null,2);try{let ve={classes_all:JSON.stringify(or)};await ar.put(\"/bilibili/config\",ve),console.log(\"\\u9ED8\\u8BA4\\u5206\\u7C7B\\u5DF2\\u4FDD\\u5B58\\u5230\\u6570\\u636E\\u5E93\")}catch(ve){console.error(\"\\u4FDD\\u5B58\\u9ED8\\u8BA4\\u5206\\u7C7B\\u5931\\u8D25:\",ve)}}let de={cookie:N.cookie||\"\",classes_all:U};e.getFieldValue(\"cookie\")||e.setFieldsValue(de),i({hasCookie:!!(N.cookie&&N.cookie.length>0),cookieLength:((E=N.cookie)==null?void 0:E.length)||0,lastUpdate:N.lastUpdate?new Date(N.lastUpdate).toLocaleString():\"\\u672A\\u77E5\"}),l(N.user_info||null),f(null)}catch(N){console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25:\",N),X.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"),h(or)}},v=async()=>{var E,N;try{o(!0),f(null);let{cookie:U}=e.getFieldsValue([\"cookie\"]);if(!U||U.trim().length<50){X.message.warning(\"\\u8BF7\\u8F93\\u5165\\u5B8C\\u6574\\u7684Cookie\");return}let K=await Cs.default.post(\"/spider/bili_all/3/validate-cookie\",{cookie:U.trim()});K.data.code===0?(f(K.data.data),X.message.success(\"Cookie\\u9A8C\\u8BC1\\u6210\\u529F\\uFF01\")):X.message.warning(K.data.message||\"Cookie\\u65E0\\u6548\\u6216\\u5DF2\\u8FC7\\u671F\")}catch(U){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",U),X.message.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25: \"+(((N=(E=U.response)==null?void 0:E.data)==null?void 0:N.message)||U.message))}finally{o(!1)}},y=async()=>{var E,N,U,K;try{n(!0);let ve={cookie:(await e.validateFields()).cookie||\"\",classes_all:e.getFieldValue(\"classes_all\")||JSON.stringify(m)},Oe=await ar.put(\"/bilibili/config\",ve);(E=Oe.testResult)!=null&&E.success?X.message.success(\"Cookie\\u4FDD\\u5B58\\u6210\\u529F\\uFF0C\\u5DF2\\u751F\\u6548\"):X.message.success(\"\\u57FA\\u7840\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),l(Oe.userInfo||null),f(null),i({hasCookie:!!ve.cookie,cookieLength:((N=ve.cookie)==null?void 0:N.length)||0,lastUpdate:Oe.lastUpdate?new Date(Oe.lastUpdate).toLocaleString():new Date().toLocaleString()})}catch(de){(K=(U=de.responseData)==null?void 0:U.data)!=null&&K.validationFailed?X.message.warning(de.message||\"Cookie\\u65E0\\u6548\\uFF0C\\u914D\\u7F6E\\u672A\\u4FDD\\u5B58\"):X.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+(de.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{n(!1)}},b=async()=>{try{n(!0);let E=JSON.stringify(m.filter(U=>U&&U.trim()!==\"\")),N={classes_all:E};await ar.put(\"/bilibili/config\",N),X.message.success(\"\\u5206\\u7C7B\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),e.setFieldsValue({classes_all:E}),await x()}catch(E){X.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+(E.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{n(!1)}},S=async()=>{try{await ar.delete(\"/bilibili/config\"),X.message.success(\"\\u914D\\u7F6E\\u5DF2\\u6E05\\u9664\"),f(null),h(or),await x()}catch(E){X.message.error(\"\\u6E05\\u9664\\u5931\\u8D25: \"+(E.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}},w=()=>{let E=[...m,\"\\u65B0\\u5206\\u7C7B\"];h(E)},D=(E,N)=>{let U=[...m];U[E]=N,h(U)},O=E=>{let N=[...m];N.splice(E,1),h(N)},F=()=>{h([]),X.message.success(\"\\u5DF2\\u6E05\\u7A7A\\u6240\\u6709\\u5206\\u7C7B\")},T=E=>{if(!E.destination)return;let N=Array.from(m),[U]=N.splice(E.source.index,1);N.splice(E.destination.index,0,U),h(N)},P=()=>{h(or),X.message.success(\"\\u5DF2\\u52A0\\u8F7D\\u9ED8\\u8BA4\\u5206\\u7C7B\")};(0,W.useEffect)(()=>{x()},[]);let V=c||s;return W.default.createElement(X.Card,null,W.default.createElement(X.Tabs,{activeKey:d,onChange:u,tabBarStyle:{marginBottom:16,whiteSpace:\"nowrap\",overflowX:\"auto\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"},tabBarGutter:8},W.default.createElement(Lf,{tab:\"\\u57FA\\u7840\\u914D\\u7F6E\",key:\"basic\"},W.default.createElement(X.Row,{gutter:24},W.default.createElement(X.Col,{span:24},W.default.createElement(X.Card,{size:\"small\",title:\"\\u5F53\\u524D\\u767B\\u5F55\\u4FE1\\u606F\",style:{marginBottom:16}},V?W.default.createElement(X.Row,{gutter:16,align:\"middle\"},W.default.createElement(X.Col,null,W.default.createElement(X.Avatar,{src:V.face,size:64})),W.default.createElement(X.Col,null,W.default.createElement(Ct,{strong:!0,style:{fontSize:16}},V.nickname),W.default.createElement(\"br\",null),W.default.createElement(Ct,{type:\"secondary\"},\"\\u7B49\\u7EA7 LV\",V.level||\"?\"),W.default.createElement(\"br\",null),W.default.createElement(Ct,{type:\"success\",strong:!0},V.vip),c&&W.default.createElement(Ct,{type:\"warning\",style:{marginLeft:8}},\"(\\u4EC5\\u6D4B\\u8BD5\\uFF0C\\u672A\\u4FDD\\u5B58)\"))):W.default.createElement(Ct,{type:\"warning\"},\"\\u672A\\u767B\\u5F55\\u6216Cookie\\u65E0\\u6548\")),W.default.createElement(X.Card,{size:\"small\",style:{marginBottom:16}},W.default.createElement(X.Row,{gutter:16},W.default.createElement(X.Col,{span:8},W.default.createElement(Ct,{strong:!0},\"Cookie\\u72B6\\u6001: \"),W.default.createElement(Ct,{type:a.hasCookie?\"success\":\"warning\"},a.hasCookie?\"\\u5DF2\\u8BBE\\u7F6E\":\"\\u672A\\u8BBE\\u7F6E\")),W.default.createElement(X.Col,{span:8},W.default.createElement(Ct,{strong:!0},\"\\u957F\\u5EA6: \"),W.default.createElement(Ct,null,a.cookieLength,\" \\u5B57\\u7B26\")),W.default.createElement(X.Col,{span:8},W.default.createElement(Ct,{strong:!0},\"\\u6700\\u540E\\u66F4\\u65B0: \"),W.default.createElement(Ct,null,a.lastUpdate)))),W.default.createElement(X.Form,{form:e,layout:\"vertical\"},W.default.createElement(X.Form.Item,{label:\"\\u7528\\u6237 Cookie\",name:\"cookie\",rules:[{validator:(E,N)=>N&&N.trim().length>0&&N.trim().length<50?Promise.reject(new Error(\"Cookie\\u592A\\u77ED\\uFF0C\\u8BF7\\u68C0\\u67E5\\u683C\\u5F0F\")):Promise.resolve()}]},W.default.createElement(X.Input.TextArea,{rows:4,placeholder:\"SESSDATA=xxx; bili_jct=xxx; DedeUserID=xxx; ...\"})),W.default.createElement(X.Form.Item,null,W.default.createElement(X.Space,null,W.default.createElement(X.Button,{onClick:v,loading:r,type:\"default\"},\"\\u9A8C\\u8BC1 Cookie\"),W.default.createElement(X.Button,{onClick:S,danger:!0},\"\\u6E05\\u9664\\u6240\\u6709\\u914D\\u7F6E\"))),W.default.createElement(X.Form.Item,null,W.default.createElement(X.Button,{type:\"primary\",onClick:y,loading:t,block:!0,size:\"large\"},\"\\u4FDD\\u5B58\\u57FA\\u7840\\u914D\\u7F6E\"))),W.default.createElement(X.Input.TextArea,{name:\"classes_all\",hidden:!0})))),W.default.createElement(Lf,{tab:\"\\u5206\\u7C7B\\u914D\\u7F6E\",key:\"classes\"},W.default.createElement(X.Row,{gutter:24},W.default.createElement(X.Col,{span:24},W.default.createElement(\"div\",{style:{marginBottom:16}},W.default.createElement(Ct,{type:\"secondary\"},\"\\u5206\\u7C7B\\u5C06\\u4F5C\\u4E3A\\u641C\\u7D22\\u5173\\u952E\\u8BCD\\u4F7F\\u7528\\u3002\\u62D6\\u52A8\\u5206\\u7C7B\\u53EF\\u4EE5\\u91CD\\u65B0\\u6392\\u5E8F\\u3002\")),W.default.createElement(_a,{onDragEnd:T},W.default.createElement(La,{droppableId:\"classes\"},E=>W.default.createElement(\"div\",I(C({},E.droppableProps),{ref:E.innerRef,style:{minHeight:200}}),m.map((N,U)=>W.default.createElement(Ba,{key:U,draggableId:U.toString(),index:U},K=>W.default.createElement(\"div\",I(C(C({ref:K.innerRef},K.draggableProps),K.dragHandleProps),{style:I(C({},K.draggableProps.style),{marginBottom:8,padding:8,border:\"1px solid #d9d9d9\",borderRadius:4,backgroundColor:\"#fff\",display:\"flex\",alignItems:\"center\"})}),W.default.createElement(\"div\",{style:{marginRight:8,cursor:\"move\"}},W.default.createElement(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},W.default.createElement(\"path\",{d:\"M8 7H16M8 12H16M8 17H16\",stroke:\"#999\",strokeWidth:\"2\",strokeLinecap:\"round\"}))),W.default.createElement(X.Input,{value:N,onChange:de=>D(U,de.target.value),style:{flex:1},placeholder:\"\\u8F93\\u5165\\u5206\\u7C7B\\u540D\\u79F0\"}),W.default.createElement(X.Button,{danger:!0,onClick:()=>O(U),style:{marginLeft:8}},\"\\u5220\\u9664\")))),E.placeholder))),m.length===0&&W.default.createElement(Ct,{type:\"secondary\",style:{display:\"block\",textAlign:\"center\",padding:\"20px\"}},'\\u6682\\u65E0\\u5206\\u7C7B\\uFF0C\\u70B9\\u51FB\"\\u6DFB\\u52A0\\u5206\\u7C7B\"\\u6309\\u94AE\\u6DFB\\u52A0'),W.default.createElement(\"div\",{style:{marginTop:16,display:\"flex\",justifyContent:\"space-between\"}},W.default.createElement(X.Button,{type:\"dashed\",onClick:w},\"\\u6DFB\\u52A0\\u5206\\u7C7B\"),W.default.createElement(X.Button,{type:\"dashed\",onClick:P},\"\\u52A0\\u8F7D\\u9ED8\\u8BA4\\u5206\\u7C7B\"),W.default.createElement(X.Button,{danger:!0,onClick:F},\"\\u6E05\\u7A7A\\u5206\\u7C7B\")),W.default.createElement(\"div\",{style:{marginTop:24}},W.default.createElement(X.Button,{type:\"primary\",onClick:b,loading:t,block:!0,size:\"large\"},\"\\u4FDD\\u5B58\\u5206\\u7C7B\\u914D\\u7F6E\")))))))}var Mf=pw;var L=_(J(),1),$=_(Be(),1);var bp=_(tt(),1),xp=_(gp(),1);var{Text:Va,Title:sE}=$.Typography,nC=e=>{let t=bp.default.create({baseURL:e});return t.interceptors.response.use(n=>{if(n.data.code!==0)throw $.message.error(n.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),new Error(n.data.message);return n.data.data},n=>{var r,o;return $.message.error(((o=(r=n.response)==null?void 0:r.data)==null?void 0:o.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),Promise.reject(n)}),t},Es=nC(\"/website/live\"),hp={name:\"\\u65B0\\u76F4\\u64AD\\u6E90_\".concat(Date.now().toString().slice(-4)),url:\"\",ua:\"okhttp/3.15\",enabled:!0,logoUrl:\"\"},vp=L.default.memo(({field:e,remove:t,fieldsCount:n,onCopy:r,index:o})=>{let m=e,{key:a,name:i,fieldKey:s}=m,l=Vt(m,[\"key\",\"name\",\"fieldKey\"]),[c,f]=(0,L.useState)(!1),d=$.Form.useFormInstance(),u=$.Form.useWatch([\"liveSources\",i],d)||{};return L.default.createElement($.Card,{size:\"small\",style:{marginBottom:12,borderLeft:\"4px solid #1890ff\",borderRadius:8},bodyStyle:{padding:16}},L.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",marginBottom:c?12:0,cursor:\"pointer\",gap:8},onClick:()=>f(!c)},L.default.createElement(\"div\",{style:{flex:1,minWidth:0}},L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:4,flexWrap:\"wrap\"}},L.default.createElement(Va,{strong:!0,style:{color:\"#1890ff\",fontSize:14}},u.name||\"\\u76F4\\u64AD\\u6E90 #\".concat(o+1)),u.enabled!==!1&&L.default.createElement($.Tag,{color:\"green\",style:{fontSize:10}},\"\\u5DF2\\u542F\\u7528\"),u.enabled===!1&&L.default.createElement($.Tag,{color:\"default\",style:{fontSize:10}},\"\\u5DF2\\u7981\\u7528\")),L.default.createElement(\"div\",null,L.default.createElement(Va,{type:\"secondary\",style:{fontSize:12,wordBreak:\"break-all\"}},u.url||\"\\u672A\\u8BBE\\u7F6E\\u5730\\u5740\"))),L.default.createElement($.Space,{onClick:h=>h.stopPropagation(),style:{flexShrink:0,alignSelf:\"flex-start\"}},L.default.createElement($.Tooltip,{title:\"\\u590D\\u5236\\u914D\\u7F6E\"},L.default.createElement($.Button,{type:\"text\",size:\"small\",icon:L.default.createElement(br,null),onClick:()=>r(e.name),style:{minWidth:36,minHeight:36}})),n>1&&L.default.createElement($.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664\\u8BE5\\u914D\\u7F6E\\u5417\\uFF1F\",onConfirm:()=>t(i),okText:\"\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",placement:\"topRight\"},L.default.createElement($.Button,{type:\"text\",danger:!0,size:\"small\",icon:L.default.createElement(je,null),style:{minWidth:36,minHeight:36}})))),c&&L.default.createElement(L.default.Fragment,null,L.default.createElement(\"div\",{style:{height:12}}),L.default.createElement($.Row,{gutter:[16,12]},L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"name\"],label:L.default.createElement($.Space,{size:\"small\"},L.default.createElement(\"span\",null,\"\\u76F4\\u64AD\\u6E90\\u540D\\u79F0\"),L.default.createElement($.Tooltip,{title:\"\\u5FC5\\u586B\\uFF0C\\u7528\\u4E8E\\u6807\\u8BC6\\u76F4\\u64AD\\u6E90\"},L.default.createElement(en,{style:{color:\"#999\",fontSize:\"12px\"}}))),rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"},{max:50,message:\"\\u540D\\u79F0\\u4E0D\\u80FD\\u8D85\\u8FC750\\u4E2A\\u5B57\\u7B26\"}]}),L.default.createElement($.Input,{placeholder:\"\\u5982\\uFF1A\\u80A5\\u7F8A\\u76F4\\u64AD\",maxLength:50,showCount:!0}))),L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"url\"],label:L.default.createElement($.Space,{size:\"small\"},L.default.createElement(\"span\",null,\"\\u76F4\\u64AD\\u6E90\\u5730\\u5740\"),L.default.createElement($.Tooltip,{title:\"\\u5FC5\\u586B\\uFF0C\\u652F\\u6301\\u6DFB\\u52A0\\u81EA\\u5B9A\\u4E49\\u8BF7\\u6C42\\u5934\\uFF0C\\u5982\\uFF1Ahttp://example.com/live.m3u|Referer=xxx&Origin=xxx\"},L.default.createElement(en,{style:{color:\"#999\",fontSize:\"12px\"}}))),rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5730\\u5740\"},{type:\"url\",message:\"\\u8BF7\\u8F93\\u5165\\u6709\\u6548\\u7684URL\\u5730\\u5740\"}]}),L.default.createElement($.Input,{placeholder:\"https://xxx.com/live.m3u\"})))),L.default.createElement($.Row,{gutter:[16,12]},L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"ua\"],label:\"User-Agent\",initialValue:\"okhttp/3.15\"}),L.default.createElement($.Input,{placeholder:\"\\u4E0D\\u586B\\u9ED8\\u8BA4\\u4E3A: okhttp/3.15\",suffix:L.default.createElement($.Tooltip,{title:\"\\u9ED8\\u8BA4\\u503C\\uFF1Aokhttp/3.15\"},L.default.createElement(en,{style:{color:\"#999\"}}))}))),L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"logoUrl\"],label:L.default.createElement($.Space,{size:\"small\"},L.default.createElement(\"span\",null,\"Logo\\u5730\\u5740\"),L.default.createElement($.Tooltip,{title:\"\\u7559\\u7A7A\\u5C06\\u4F7F\\u7528\\u9ED8\\u8BA4logo\\uFF0C\\u5EFA\\u8BAE\\u4F7F\\u7528100\\xD7100\\u50CF\\u7D20\\u7684\\u56FE\\u7247\"},L.default.createElement(en,{style:{color:\"#999\",fontSize:\"12px\"}})))}),L.default.createElement($.Input,{placeholder:\"https://xxx.com/logo.png\",suffix:L.default.createElement($.Tooltip,{title:\"\\u5EFA\\u8BAE\\u4F7F\\u7528HTTPS\\u94FE\\u63A5\"},L.default.createElement(en,{style:{color:\"#999\"}}))})))),L.default.createElement($.Row,{justify:\"space-between\",align:\"middle\"},L.default.createElement($.Col,null,L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"enabled\"],valuePropName:\"checked\",initialValue:!0,label:\"\\u72B6\\u6001\",style:{marginBottom:0}}),L.default.createElement($.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"default\"}))))))});vp.displayName=\"LiveSourceItem\";function rC(){let[e]=$.Form.useForm(),[t,n]=(0,L.useState)(!1),[r,o]=(0,L.useState)(!1),a=(0,L.useCallback)(async()=>{try{n(!0);let f=await Es.get(\"/config\"),d=Array.isArray(f)?f.map(u=>I(C({},u),{ua:u.ua||\"okhttp/3.15\",logoUrl:u.logoUrl||\"\"})):[];e.setFieldsValue({liveSources:d})}catch(f){console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25:\",f),$.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{n(!1)}},[e]),i=(0,L.useCallback)((0,xp.default)(async f=>{try{o(!0);let d=(f.liveSources||[]).filter(u=>{var m,h;return((m=u.name)==null?void 0:m.trim())&&((h=u.url)==null?void 0:h.trim())}).map(u=>I(C({},u),{ua:u.ua||\"okhttp/3.15\",logoUrl:u.logoUrl||\"\"}));if(d.length===0){$.message.warning(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u6709\\u6548\\u7684\\u76F4\\u64AD\\u6E90\");return}await Es.put(\"/config\",d),$.message.success(\"\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),await a()}catch(d){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",d),$.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\")}finally{o(!1)}},300),[a]),s=async()=>{try{let f=await e.validateFields();await i(f)}catch(f){console.error(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u5931\\u8D25:\",f)}},l=async()=>{try{await Es.delete(\"/config\"),$.message.success(\"\\u6240\\u6709\\u914D\\u7F6E\\u5DF2\\u6E05\\u7A7A\"),await a()}catch(f){console.error(\"\\u6E05\\u9664\\u914D\\u7F6E\\u5931\\u8D25:\",f),$.message.error(\"\\u6E05\\u9664\\u914D\\u7F6E\\u5931\\u8D25\")}},c=(0,L.useCallback)(f=>{let d=e.getFieldValue(\"liveSources\")||[],u=d[f];if(u){let m=I(C({},u),{name:\"\".concat(u.name,\"_\\u526F\\u672C\").concat(Date.now().toString().slice(-4))}),h=[...d,m];e.setFieldsValue({liveSources:h}),$.message.success(\"\\u914D\\u7F6E\\u9879\\u5DF2\\u590D\\u5236\")}},[e]);return(0,L.useEffect)(()=>{a()},[a]),L.default.createElement($.Spin,{spinning:t,tip:\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u4E2D...\"},L.default.createElement($.Card,{title:\"\\u76F4\\u64AD\\u6E90\\u914D\\u7F6E\",extra:L.default.createElement(Va,{type:\"secondary\"},\"\\u6700\\u540E\\u66F4\\u65B0: \",new Date().toLocaleDateString()),style:{borderRadius:8},headStyle:{borderBottom:\"1px solid #f0f0f0\"}},L.default.createElement($.Alert,{message:null,description:L.default.createElement(\"div\",{style:{fontSize:\"13px\"}},L.default.createElement(\"p\",null,\"1. UA\\u7559\\u7A7A\\u65F6\\uFF0C\\u5C06\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C\\uFF1Aokhttp/3.15\"),L.default.createElement(\"p\",null,\"2. \\u53EF\\u5728URL\\u540E\\u6DFB\\u52A0\\u81EA\\u5B9A\\u4E49\\u8BF7\\u6C42\\u5934\\uFF0C\\u683C\\u5F0F\\uFF1Ahttp://example.com/live.m3u|Referer=xxx&Origin=xxx\")),type:\"info\",showIcon:!0,icon:L.default.createElement(en,null),style:{marginBottom:20}}),L.default.createElement($.Form,{form:e,layout:\"vertical\",initialValues:{liveSources:[]},size:\"middle\"},L.default.createElement($.Form.List,{name:\"liveSources\"},(f,{add:d,remove:u})=>L.default.createElement(L.default.Fragment,null,L.default.createElement(\"div\",{style:{marginBottom:16,display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},L.default.createElement(Va,{strong:!0},\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868 (\",f.length,\")\"),L.default.createElement($.Space,null,L.default.createElement($.Button,{type:\"dashed\",onClick:()=>d(hp),icon:L.default.createElement(nt,null),size:\"middle\"},\"\\u65B0\\u589E\\u76F4\\u64AD\\u6E90\"),f.length>0&&L.default.createElement($.Popconfirm,{title:\"\\u786E\\u5B9A\\u6E05\\u7A7A\\u6240\\u6709\\u76F4\\u64AD\\u6E90\\u5417\\uFF1F\",onConfirm:l,okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\"},L.default.createElement($.Button,{danger:!0,size:\"middle\"},\"\\u6E05\\u7A7A\\u5168\\u90E8\")))),f.length===0?L.default.createElement($.Empty,{description:\"\\u6682\\u65E0\\u76F4\\u64AD\\u6E90\\u914D\\u7F6E\",image:$.Empty.PRESENTED_IMAGE_SIMPLE,style:{margin:\"40px 0\"}},L.default.createElement($.Button,{type:\"primary\",onClick:()=>d(hp),icon:L.default.createElement(nt,null)},\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\")):L.default.createElement(\"div\",{style:{paddingRight:8}},f.map((m,h)=>L.default.createElement(vp,{key:m.key,field:m,remove:u,fieldsCount:f.length,onCopy:c,index:h}))),f.length>0&&L.default.createElement(\"div\",{style:{background:\"#fff\",padding:\"16px 0\",borderTop:\"1px solid #f0f0f0\",marginTop:16}},L.default.createElement($.Space,{size:\"middle\"},L.default.createElement($.Button,{type:\"primary\",icon:L.default.createElement(tn,null),onClick:s,loading:r,size:\"large\",style:{minWidth:120}},r?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),L.default.createElement($.Button,{onClick:()=>window.location.reload(),size:\"large\"},\"\\u5237\\u65B0\\u9875\\u9762\"))))))))}var yp=L.default.memo(rC);var M=_(J(),1),q=_(Be(),1);var{Title:pE,Text:oC,Paragraph:mE}=q.Typography,{useToken:aC}=q.theme,Ts=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function iC(){let[e]=q.Form.useForm(),[t,n]=(0,M.useState)({}),[r,o]=(0,M.useState)(!1),[a,i]=(0,M.useState)({}),{token:s}=aC(),l=\"/website/alist/config\",c=async()=>{o(!0);try{let h=await(await fetch(l)).json();if(h.code===0&&h.data){let x=(Array.isArray(h.data)?h.data:[]).map(b=>I(C({},b),{id:b.id||Ts()}));e.setFieldsValue({servers:x});let v={},y={};x.forEach(b=>{v[b.id]=!1,y[b.id]=b.token?\"token\":\"password\"}),n(v),i(y)}}catch(m){console.error(\"\\u52A0\\u8F7DAlist\\u914D\\u7F6E\\u5931\\u8D25:\",m),q.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{o(!1)}},f=m=>{n(h=>I(C({},h),{[m]:!h[m]}))},d=async()=>{o(!0);try{let x=((await e.validateFields()).servers||[]).map(b=>I(C({},b),{id:b.id||Ts(),timeout:3e4})),y=await(await fetch(l,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(x)})).json();if(y.code===0)q.message.success({content:\"Alist\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\",style:{marginTop:\"50vh\"}});else throw new Error(y.message)}catch(m){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",m),q.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(m.message))}finally{o(!1)}};(0,M.useEffect)(()=>{c()},[]);let u={background:\"linear-gradient(135deg, \".concat(s.colorPrimaryBg,\" 0%, \").concat(s.colorBgContainer,\" 100%)\"),borderRadius:s.borderRadiusLG,padding:\"16px 20px\",margin:\"-1px -1px 0 -1px\",borderBottom:\"1px solid \".concat(s.colorBorderSecondary)};return M.default.createElement(q.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#722ed1\"},components:{Card:{paddingLG:20},Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},M.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},M.default.createElement(\"div\",{style:{marginBottom:24}},M.default.createElement(q.Alert,{message:\"\\u8BA4\\u8BC1\\u65B9\\u5F0F\\u8BF4\\u660E\",description:M.default.createElement(\"div\",null,M.default.createElement(\"p\",null,\"\\u2022 \",M.default.createElement(\"strong\",null,\"\\u7528\\u6237\\u540D/\\u5BC6\\u7801\\u8BA4\\u8BC1\"),\"\\uFF1A\\u4F7F\\u7528 Alist \\u7BA1\\u7406\\u5458\\u7684\\u8D26\\u53F7\\u5BC6\\u7801\\u767B\\u5F55\"),M.default.createElement(\"p\",null,\"\\u2022 \",M.default.createElement(\"strong\",null,\"Token \\u8BA4\\u8BC1\"),\"\\uFF1A\\u5728 Alist \\u540E\\u53F0\\u751F\\u6210\\u7684\\u8BBF\\u95EE\\u4EE4\\u724C\\uFF0C\\u66F4\\u5B89\\u5168\"),M.default.createElement(\"p\",null,\"\\u2022 \\u4E24\\u79CD\\u8BA4\\u8BC1\\u65B9\\u5F0F\\u9009\\u62E9\\u4E00\\u79CD\\u5373\\u53EF\\uFF0CToken \\u8BA4\\u8BC1\\u4F18\\u5148\\u7EA7\\u66F4\\u9AD8\")),type:\"info\",showIcon:!0,icon:M.default.createElement(Gn,null),style:{background:s.colorPrimaryBg,border:\"1px solid \".concat(s.colorPrimaryBorder),borderRadius:s.borderRadiusLG,marginBottom:24}})),M.default.createElement(q.Form,{form:e,layout:\"vertical\"},M.default.createElement(q.Form.List,{name:\"servers\"},(m,{add:h,remove:x})=>{let v=()=>{let S=Ts(),w={id:S,name:\"Alist\\u670D\\u52A1\\u5668 \".concat(m.length+1),server:\"\",username:\"\",password:\"\",token:\"\",enabled:!0};h(w),n(D=>I(C({},D),{[S]:!0})),i(D=>I(C({},D),{[S]:\"password\"}))},y=S=>{if(m.length<=1){q.message.warning(\"\\u81F3\\u5C11\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}let w=m.findIndex(D=>{let O=e.getFieldValue([\"servers\",D.name]);return O&&O.id===S});w!==-1&&(x(w),n(D=>{let O=C({},D);return delete O[S],O}),i(D=>{let O=C({},D);return delete O[S],O}))},b=(S,w)=>{i(D=>I(C({},D),{[S]:w}))};return M.default.createElement(\"div\",{style:{marginBottom:24}},m.map(S=>{let w=e.getFieldValue([\"servers\",S.name,\"id\"]),D=e.getFieldValue([\"servers\",S.name,\"name\"])||\"Alist\\u670D\\u52A1\\u5668 \".concat(S.name+1),O=e.getFieldValue([\"servers\",S.name,\"enabled\"])!==!1,F=a[w]||\"password\",T=t[w]||!1;return M.default.createElement(q.Card,{key:S.key,style:{marginBottom:16,borderRadius:s.borderRadiusLG,border:\"1px solid \".concat(O?\"#722ed1\":s.colorBorderSecondary),boxShadow:\"0 2px 8px rgba(114,46,209,0.08)\",overflow:\"hidden\",transition:\"all 0.3s\"},bodyStyle:{padding:0}},M.default.createElement(\"div\",{style:I(C({},u),{borderLeft:O?\"4px solid #722ed1\":\"4px solid transparent\"})},M.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},M.default.createElement(q.Badge,{color:O?\"#722ed1\":\"default\",text:M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8}},M.default.createElement(\"span\",{style:{fontWeight:500,fontSize:15,color:s.colorTextHeading}},D),!O&&M.default.createElement(q.Tag,{color:\"default\",style:{fontSize:11}},\"\\u5DF2\\u7981\\u7528\"),M.default.createElement(q.Tag,{color:\"purple\",style:{fontSize:11,background:\"rgba(114,46,209,0.1)\"}},\"Alist\"))})),M.default.createElement(q.Space,null,M.default.createElement(q.Form.Item,I(C({},S),{name:[S.name,\"enabled\"],valuePropName:\"checked\",noStyle:!0}),M.default.createElement(q.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"small\",style:{background:O?\"#722ed1\":void 0}})),M.default.createElement(q.Button,{type:\"text\",size:\"small\",icon:T?M.default.createElement(At,null):M.default.createElement(Ft,null),onClick:()=>f(w),style:{color:s.colorTextSecondary}}),m.length>1&&M.default.createElement(q.Tooltip,{title:\"\\u5220\\u9664\\u670D\\u52A1\\u5668\"},M.default.createElement(q.Button,{type:\"text\",size:\"small\",danger:!0,icon:M.default.createElement(je,null),onClick:()=>y(w)}))))),T&&M.default.createElement(\"div\",{style:{padding:\"24px 20px\",background:s.colorBgLayout}},M.default.createElement(q.Row,{gutter:[24,16]},M.default.createElement(q.Col,{span:24},M.default.createElement(q.Form.Item,I(C({},S),{label:M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},M.default.createElement(vr,{style:{fontSize:12}}),M.default.createElement(\"span\",null,\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\")),name:[S.name,\"name\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]}),M.default.createElement(q.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684Alist\\u670D\\u52A1\\u5668\",size:\"middle\"}))),M.default.createElement(q.Col,{span:24},M.default.createElement(q.Form.Item,I(C({},S),{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:[S.name,\"server\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u5730\\u5740\"},{pattern:/^https?:\\/\\/.+/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684URL\\uFF08\\u5305\\u542Bhttp://\\u6216https://\\uFF09\"}],tooltip:\"Alist\\u9ED8\\u8BA4\\u7AEF\\u53E3\\u4E3A5244\\uFF0C\\u5982\\uFF1Ahttp://192.168.1.100:5244\"}),M.default.createElement(q.Input,{placeholder:\"http://example.com:5244\",prefix:M.default.createElement(bn,{style:{color:s.colorTextQuaternary}}),size:\"middle\"}))),M.default.createElement(q.Col,{span:24},M.default.createElement(\"div\",{style:{marginBottom:16}},M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:12}},M.default.createElement(Gn,{style:{color:\"#722ed1\"}}),M.default.createElement(oC,{strong:!0,style:{fontSize:14}},\"\\u9009\\u62E9\\u8BA4\\u8BC1\\u65B9\\u5F0F\")),M.default.createElement(q.Segmented,{options:[{label:M.default.createElement(\"div\",{style:{padding:\"4px 8px\"}},M.default.createElement(Hn,{style:{marginRight:6}}),\"\\u7528\\u6237\\u540D/\\u5BC6\\u7801\"),value:\"password\"},{label:M.default.createElement(\"div\",{style:{padding:\"4px 8px\"}},M.default.createElement(jn,{style:{marginRight:6}}),\"Token\\u8BA4\\u8BC1\"),value:\"token\"}],value:F,onChange:P=>b(w,P),block:!0}))),F===\"password\"?M.default.createElement(M.default.Fragment,null,M.default.createElement(q.Col,{span:12},M.default.createElement(q.Form.Item,I(C({},S),{label:\"\\u7528\\u6237\\u540D\",name:[S.name,\"username\"]}),M.default.createElement(q.Input,{placeholder:\"Alist\\u7BA1\\u7406\\u5458\\u8D26\\u53F7\",prefix:M.default.createElement(Hn,{style:{color:s.colorTextQuaternary}}),size:\"middle\"}))),M.default.createElement(q.Col,{span:12},M.default.createElement(q.Form.Item,I(C({},S),{label:\"\\u5BC6\\u7801\",name:[S.name,\"password\"]}),M.default.createElement(q.Input.Password,{placeholder:\"\\u7BA1\\u7406\\u5458\\u5BC6\\u7801\",prefix:M.default.createElement(yr,{style:{color:s.colorTextQuaternary}}),size:\"middle\"})))):M.default.createElement(q.Col,{span:24},M.default.createElement(q.Form.Item,I(C({},S),{label:M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},M.default.createElement(jn,null),M.default.createElement(\"span\",null,\"Token\\u4EE4\\u724C\")),name:[S.name,\"token\"],tooltip:M.default.createElement(\"div\",null,M.default.createElement(\"p\",null,\"\\u5728Alist\\u540E\\u53F0\\u751F\\u6210\\uFF1A\\u8BBE\\u7F6E \\u2192 \\u8D26\\u53F7\\u8BBE\\u7F6E \\u2192 \\u4EE4\\u724C\"),M.default.createElement(\"p\",null,\"\\u6216\\u901A\\u8FC7API\\u83B7\\u53D6\\uFF1A/api/auth/login\"))}),M.default.createElement(q.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165Alist Token\",rows:3,style:{fontFamily:\"monospace\",fontSize:13}}))))))}),M.default.createElement(q.Button,{type:\"dashed\",onClick:v,block:!0,icon:M.default.createElement(nt,null),size:\"large\",style:{height:56,borderRadius:s.borderRadiusLG,borderStyle:\"dashed\",borderWidth:2,fontSize:15,borderColor:\"#722ed1\",color:\"#722ed1\"}},\"\\u6DFB\\u52A0\\u65B0\\u7684 Alist \\u670D\\u52A1\\u5668\"))}),M.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:s.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(s.colorBorderSecondary),marginTop:24,zIndex:10}},M.default.createElement(q.Space,{size:\"middle\"},M.default.createElement(q.Button,{type:\"primary\",onClick:d,loading:r,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(114,46,209,0.2)\",background:\"#722ed1\",borderColor:\"#722ed1\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),M.default.createElement(q.Button,{onClick:async()=>{o(!0);try{let h=await(await fetch(l,{method:\"DELETE\"})).json();if(h.code===0)q.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await c();else throw new Error(h.message)}catch(m){q.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+m.message)}finally{o(!1)}},loading:r,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var wp=iC;var H=_(J(),1),Z=_(Be(),1);var{Title:wE,Text:CE,Paragraph:SE}=Z.Typography,{useToken:sC}=Z.theme,ks=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function lC(){let[e]=Z.Form.useForm(),[t,n]=(0,H.useState)({}),[r,o]=(0,H.useState)(!1),{token:a}=sC(),i=\"/website/webdav/config\",s=async()=>{o(!0);try{let u=await(await fetch(i)).json();if(u.code===0&&u.data){let m=(Array.isArray(u.data)?u.data:[]).map(x=>I(C({},x),{id:x.id||ks()}));e.setFieldsValue({servers:m});let h={};m.forEach(x=>{h[x.id]=!1}),n(h)}}catch(d){console.error(\"\\u52A0\\u8F7DWebDAV\\u914D\\u7F6E\\u5931\\u8D25:\",d),Z.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{o(!1)}},l=d=>{n(u=>I(C({},u),{[d]:!u[d]}))},c=async()=>{o(!0);try{let m=((await e.validateFields()).servers||[]).map(v=>I(C({},v),{id:v.id||ks(),timeout:3e4})),x=await(await fetch(i,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(m)})).json();if(x.code===0)Z.message.success({content:\"\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\",style:{marginTop:\"50vh\"}});else throw new Error(x.message)}catch(d){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",d),Z.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(d.message))}finally{o(!1)}};(0,H.useEffect)(()=>{s()},[]);let f={background:\"linear-gradient(135deg, \".concat(a.colorPrimaryBg,\" 0%, \").concat(a.colorBgContainer,\" 100%)\"),borderRadius:a.borderRadiusLG,padding:\"16px 20px\",margin:\"-1px -1px 0 -1px\",borderBottom:\"1px solid \".concat(a.colorBorderSecondary)};return H.default.createElement(Z.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#1890ff\"},components:{Card:{paddingLG:20},Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},H.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},H.default.createElement(Z.Form,{form:e,layout:\"vertical\"},H.default.createElement(Z.Form.List,{name:\"servers\"},(d,{add:u,remove:m})=>{let h=()=>{let v=ks(),y={id:v,name:\"WebDAV\\u670D\\u52A1\\u5668 \".concat(d.length+1),server:\"\",path:\"/\",username:\"\",password:\"\",enabled:!0};u(y),n(b=>I(C({},b),{[v]:!0}))},x=v=>{if(d.length<=1){Z.message.warning(\"\\u81F3\\u5C11\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}let y=d.findIndex(b=>{let S=e.getFieldValue([\"servers\",b.name]);return S&&S.id===v});y!==-1&&(m(y),n(b=>{let S=C({},b);return delete S[v],S}))};return H.default.createElement(\"div\",{style:{marginBottom:24}},d.map(v=>{let y=e.getFieldValue([\"servers\",v.name,\"id\"]),b=e.getFieldValue([\"servers\",v.name,\"name\"])||\"\\u670D\\u52A1\\u5668 \".concat(v.name+1),S=e.getFieldValue([\"servers\",v.name,\"enabled\"])!==!1,w=t[y]||!1;return H.default.createElement(Z.Card,{key:v.key,style:{marginBottom:16,borderRadius:a.borderRadiusLG,border:\"1px solid \".concat(S?a.colorBorder:a.colorBorderSecondary),boxShadow:\"0 2px 8px rgba(0,0,0,0.06)\",overflow:\"hidden\",transition:\"all 0.3s\"},bodyStyle:{padding:0}},H.default.createElement(\"div\",{style:f},H.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},H.default.createElement(Z.Badge,{status:S?\"success\":\"default\",text:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8}},H.default.createElement(\"span\",{style:{fontWeight:500,fontSize:15,color:a.colorTextHeading}},b),!S&&H.default.createElement(Z.Tag,{color:\"default\",style:{fontSize:11}},\"\\u5DF2\\u7981\\u7528\"))})),H.default.createElement(Z.Space,null,H.default.createElement(Z.Form.Item,I(C({},v),{name:[v.name,\"enabled\"],valuePropName:\"checked\",noStyle:!0}),H.default.createElement(Z.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"small\"})),H.default.createElement(Z.Button,{type:\"text\",size:\"small\",icon:w?H.default.createElement(At,null):H.default.createElement(Ft,null),onClick:()=>l(y),style:{color:a.colorTextSecondary}}),d.length>1&&H.default.createElement(Z.Tooltip,{title:\"\\u5220\\u9664\\u670D\\u52A1\\u5668\"},H.default.createElement(Z.Button,{type:\"text\",size:\"small\",danger:!0,icon:H.default.createElement(je,null),onClick:()=>x(y)}))))),w&&H.default.createElement(\"div\",{style:{padding:\"24px 20px\",background:a.colorBgLayout}},H.default.createElement(Z.Row,{gutter:[24,16]},H.default.createElement(Z.Col,{span:24},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},H.default.createElement(vr,{style:{fontSize:12}}),H.default.createElement(\"span\",null,\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\")),name:[v.name,\"name\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]}),H.default.createElement(Z.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684WebDAV\\u670D\\u52A1\\u5668\",size:\"middle\"}))),H.default.createElement(Z.Col,{span:24},H.default.createElement(Z.Form.Item,I(C({},v),{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:[v.name,\"server\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u5730\\u5740\"},{pattern:/^https?:\\/\\/.+/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684URL\\uFF08\\u5305\\u542Bhttp://\\u6216https://\\uFF09\"}],tooltip:\"\\u5305\\u542B\\u534F\\u8BAE\\u548C\\u7AEF\\u53E3\\uFF0C\\u5982\\uFF1Ahttps://example.com:5244\"}),H.default.createElement(Z.Input,{placeholder:\"http://example.com:5244\",prefix:H.default.createElement(bn,{style:{color:a.colorTextQuaternary}}),size:\"middle\"}))),H.default.createElement(Z.Col,{span:24},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(Z.Tooltip,{title:\"WebDAV\\u670D\\u52A1\\u5668\\u4E0A\\u7684\\u8DEF\\u5F84\"},H.default.createElement(\"span\",null,\"\\u8BBF\\u95EE\\u8DEF\\u5F84\")),name:[v.name,\"path\"],initialValue:\"/\"}),H.default.createElement(Z.Input,{placeholder:\"/\",prefix:H.default.createElement(pi,{style:{color:a.colorTextQuaternary}}),size:\"middle\"}))),H.default.createElement(Z.Col,{span:12},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},H.default.createElement(Hn,{style:{fontSize:12}}),H.default.createElement(\"span\",null,\"\\u7528\\u6237\\u540D\")),name:[v.name,\"username\"]}),H.default.createElement(Z.Input,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9700\\u8981\\u8BA4\\u8BC1\",size:\"middle\"}))),H.default.createElement(Z.Col,{span:12},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},H.default.createElement(yr,{style:{fontSize:12}}),H.default.createElement(\"span\",null,\"\\u5BC6\\u7801\")),name:[v.name,\"password\"]}),H.default.createElement(Z.Input.Password,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9700\\u8981\\u5BC6\\u7801\",size:\"middle\"}))))))}),H.default.createElement(Z.Button,{type:\"dashed\",onClick:h,block:!0,icon:H.default.createElement(nt,null),size:\"large\",style:{height:56,borderRadius:a.borderRadiusLG,borderStyle:\"dashed\",borderWidth:2,fontSize:15,color:a.colorTextSecondary}},\"\\u6DFB\\u52A0\\u65B0\\u7684 WebDAV \\u670D\\u52A1\\u5668\"))}),H.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:a.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(a.colorBorderSecondary),marginTop:24,zIndex:10}},H.default.createElement(Z.Space,{size:\"middle\"},H.default.createElement(Z.Button,{type:\"primary\",onClick:c,loading:r,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(0,0,0,0.1)\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),H.default.createElement(Z.Button,{onClick:async()=>{o(!0);try{let u=await(await fetch(i,{method:\"DELETE\"})).json();if(u.code===0)Z.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await s();else throw new Error(u.message)}catch(d){Z.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+d.message)}finally{o(!1)}},loading:r,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var Cp=lC;var re=_(J(),1),ke=_(Be(),1);var Y=_(J(),1),ie=_(Be(),1);var Sp=_(tt(),1);var{Text:Ns}=ie.Typography,Pn=Sp.default.create({baseURL:\"/website/115\"});Pn.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw ie.message.error(r),new Error(r)}return e.data.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return ie.message.error(t),Promise.reject(e)});function dC({value:e,onChange:t}){let[n,r]=(0,Y.useState)(!1),[o,a]=(0,Y.useState)([]),[i,s]=(0,Y.useState)(!1),[l,c]=(0,Y.useState)(\"\"),f=(0,Y.useCallback)(x=>({title:x.name,key:String(x.cid),isLeaf:!x.has_children}),[]),d=(0,Y.useCallback)(async()=>{s(!0);try{let x=await Pn.get(\"/folders\",{params:{cid:\"0\"}});a([{title:\"\\u6839\\u76EE\\u5F55 (/)\",key:\"0\",children:(x||[]).map(f),isLeaf:(x||[]).length===0}])}finally{s(!1)}},[f]);(0,Y.useEffect)(()=>{n&&o.length===0&&d()},[n,o.length,d]);let u=(0,Y.useCallback)(async x=>{if(!(x!=null&&x.key)||x.key===\"0\")return;let y=(await Pn.get(\"/folders\",{params:{cid:x.key}})||[]).map(f);a(b=>Op(b,x.key,y))},[f]),m=(x,v)=>{let y=x==null?void 0:x[0];y&&(c(v.node.title===\"\\u6839\\u76EE\\u5F55 (/)\"?\"\\u6839\\u76EE\\u5F55\":String(v.node.title||\"\")),t==null||t(String(y)))},h=e&&e!==\"0\"?\"\".concat(l||\"\\u5DF2\\u9009\\u76EE\\u5F55\",\" (cid=\").concat(e,\")\"):\"\\u6839\\u76EE\\u5F55 (cid=0)\";return Y.default.createElement(Y.default.Fragment,null,Y.default.createElement(ie.Space.Compact,{style:{width:\"100%\"}},Y.default.createElement(ie.Button,{icon:Y.default.createElement(hn,null),onClick:()=>r(!0),style:{flex:1,textAlign:\"left\"}},h)),Y.default.createElement(ie.Modal,{title:\"\\u9009\\u62E9 \\u78C1\\u529B \\u8F6C\\u5B58\\u76EE\\u5F55\",open:n,onCancel:()=>r(!1),onOk:()=>r(!1),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",destroyOnClose:!0,width:520},Y.default.createElement(ie.Spin,{spinning:i},Y.default.createElement(ie.Tree,{treeData:o,loadData:u,onSelect:m,selectedKeys:e?[String(e)]:[],height:420,blockNode:!0})),Y.default.createElement(\"div\",{style:{marginTop:8}},Y.default.createElement(Ns,{type:\"secondary\"},\"\\u70B9\\u51FB\\u6587\\u4EF6\\u5939\\u5C55\\u5F00\\uFF0C\\u5355\\u51FB\\u9009\\u4E2D\\u5373\\u4F5C\\u4E3A\\u8F6C\\u5B58\\u4F4D\\u7F6E\\uFF1B\\u4E0D\\u9009\\u9ED8\\u8BA4\\u6839\\u76EE\\u5F55\\u3002\"))))}function Op(e,t,n){return e.map(r=>String(r.key)===String(t)?I(C({},r),{children:n}):r.children?I(C({},r),{children:Op(r.children,t,n)}):r)}function Fs(){let[e,t]=(0,Y.useState)(\"0\"),[n,r]=(0,Y.useState)(20),[o,a]=(0,Y.useState)(1500),[i,s]=(0,Y.useState)(!1),[l,c]=(0,Y.useState)(!1),[f,d]=(0,Y.useState)(null),[u,m]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{s(!0),Pn.get(\"/offline/settings\").then(y=>{var b,S,w;y&&(t(String((b=y.savePath)!=null?b:\"0\")),r(Number((S=y.pollAttempts)!=null?S:20)),a(Number((w=y.pollIntervalMs)!=null?w:1500)))}).catch(()=>{}).finally(()=>s(!1))},[]);let h=async()=>{c(!0);try{await Pn.post(\"/offline/settings\",{savePath:e,pollAttempts:n,pollIntervalMs:o}),ie.message.success(\"\\u78C1\\u529B\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(y){}finally{c(!1)}},x=async y=>{d(y?\"delete\":\"keep\");try{await Pn.post(\"/offline/clear\",{deleteSource:y}),ie.message.success(y?\"\\u5DF2\\u6E05\\u7A7A\\u79BB\\u7EBF\\u5217\\u8868\\u5E76\\u5220\\u9664\\u6E90\\u6587\\u4EF6\":\"\\u5DF2\\u6E05\\u7A7A\\u79BB\\u7EBF\\u5217\\u8868\\uFF08\\u7F51\\u76D8\\u6587\\u4EF6\\u4FDD\\u7559\\uFF09\")}catch(b){}finally{d(null)}},v=async(y,b,S)=>{var w;m(S);try{let D=await Pn.post(\"/files/clean\",{recent:y,recycle:b}),O=[];D!=null&&D.recent&&O.push(D.recent.found?\"\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u5DF2\\u6E05\\u7406 \".concat(D.recent.moved,\" \\u4E2A\\u6587\\u4EF6\").concat(b?\"\\uFF08\\u5DF2\\u6C38\\u4E45\\u5220\\u9664\\uFF09\":\"\\uFF08\\u5DF2\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\uFF0C\\u53EF\\u6062\\u590D\\uFF09\"):\"\\u672A\\u627E\\u5230\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u76EE\\u5F55\"),(w=D==null?void 0:D.recycle)!=null&&w.cleared&&O.push(\"\\u56DE\\u6536\\u7AD9\\u5DF2\\u6E05\\u7A7A\"),ie.message.success(O.join(\"\\uFF1B\")||\"\\u64CD\\u4F5C\\u5B8C\\u6210\")}catch(D){}finally{m(null)}};return Y.default.createElement(ie.Spin,{spinning:i},Y.default.createElement(ie.Form,{layout:\"vertical\"},Y.default.createElement(ie.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:16},message:\"\\u6D88\\u8017 115 \\u79BB\\u7EBF\\u6B21\\u6570\\u64AD\\u653E\\u78C1\\u529B\\u94FE\\u63A5\",description:\"\\u6BCF\\u6761\\u65B0\\u78C1\\u529B\\u90FD\\u4F1A\\u6D88\\u8017\\u4E00\\u6B21 115 \\u79BB\\u7EBF\\u914D\\u989D\\u3002\"}),Y.default.createElement(ie.Form.Item,{label:\"\\u78C1\\u529B \\u8F6C\\u5B58\\u76EE\\u5F55\",help:\"\\u78C1\\u529B\\u8F6C\\u5B58\\u7684\\u76EE\\u6807\\u6587\\u4EF6\\u5939\\u3002115 \\u79BB\\u7EBF\\u628A\\u6BCF\\u4E2A\\u79CD\\u5B50\\u8F6C\\u6210\\u6B64\\u76EE\\u5F55\\u4E0B\\u7684\\u4E00\\u4E2A\\u65B0\\u5B50\\u6587\\u4EF6\\u5939\\u3002\"},Y.default.createElement(dC,{value:e,onChange:t})),Y.default.createElement(ie.Form.Item,{label:\"\\u8F6C\\u5B58\\u8F6E\\u8BE2\\u6B21\\u6570\",help:\"\\u78C1\\u529B \\u8F6C\\u5B58\\u540E\\u672A\\u7ACB\\u5373\\u8FD4\\u56DE\\u5B8C\\u6574\\u6587\\u4EF6\\u65F6\\uFF0C\\u626B\\u63CF\\u8F6C\\u5B58\\u76EE\\u5F55\\u7684\\u6700\\u5927\\u6B21\\u6570\\u3002\"},Y.default.createElement(ie.InputNumber,{min:0,max:50,value:n,onChange:y=>r(Number(y)||0),style:{width:\"100%\"}})),Y.default.createElement(ie.Form.Item,{label:\"\\u8F6E\\u8BE2\\u95F4\\u9694 (ms)\"},Y.default.createElement(ie.InputNumber,{min:200,max:1e4,step:100,value:o,onChange:y=>a(Number(y)||1500),style:{width:\"100%\"}})),Y.default.createElement(ie.Button,{type:\"primary\",onClick:h,loading:l,block:!0},\"\\u4FDD\\u5B58\\u78C1\\u529B\\u914D\\u7F6E\"),Y.default.createElement(ie.Divider,{style:{margin:\"24px 0 12px\"}},\"\\u6E05\\u7A7A 115 \\u79BB\\u7EBF\\u5217\\u8868\"),Y.default.createElement(Ns,{type:\"secondary\",style:{display:\"block\",marginBottom:12,fontSize:12}},\"\\u6CE8\\u610F\\uFF1A\",Y.default.createElement(\"b\",null,\"\\u8FDB\\u884C\\u4E2D\"),\" \\u7684\\u4EFB\\u52A1 115 \\u534F\\u8BAE\\u4E0D\\u5141\\u8BB8\\u6E05\\uFF0C\\u9700\\u5230 115 \\u7F51\\u9875\\u7AEF\\u624B\\u52A8\\u5220\\uFF1B\\u6E05\\u4EFB\\u52A1\\u8BB0\\u5F55\\u4E0D\\u4F1A\\u91CA\\u653E\\u79BB\\u7EBF\\u914D\\u989D\\u3002\"),Y.default.createElement(ie.Space,{direction:\"vertical\",style:{width:\"100%\"},size:8},Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A\\u79BB\\u7EBF\\u5217\\u8868\",description:\"\\u6E05\\u6389\\u5DF2\\u5B8C\\u6210 / \\u5931\\u8D25\\u7684\\u4EFB\\u52A1\\u8BB0\\u5F55\\uFF0C\\u5DF2\\u8F6C\\u5B58\\u5230\\u7F51\\u76D8\\u7684\\u89C6\\u9891\\u6587\\u4EF6\\u4FDD\\u7559\\u3002\",okText:\"\\u786E\\u8BA4\\u6E05\\u7A7A\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>x(!1)},Y.default.createElement(ie.Button,{icon:Y.default.createElement(Wn,null),loading:f===\"keep\",disabled:f===\"delete\",block:!0},\"\\u6E05\\u7A7A\\uFF08\\u4FDD\\u7559\\u7F51\\u76D8\\u6587\\u4EF6\\uFF09\")),Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A + \\u5220\\u9664\\u6E90\\u6587\\u4EF6\",description:\"\\u6E05\\u6389\\u5DF2\\u5B8C\\u6210 / \\u5931\\u8D25\\u7684\\u4EFB\\u52A1\\u8BB0\\u5F55\\uFF0C\\u5E76\\u5220\\u9664\\u5DF2\\u8F6C\\u5B58\\u5230\\u7F51\\u76D8\\u7684\\u6E90\\u6587\\u4EF6\\u3002\\u4E0D\\u53EF\\u9006\\uFF0C\\u8BF7\\u786E\\u8BA4\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u5168\\u90E8\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>x(!0)},Y.default.createElement(ie.Button,{icon:Y.default.createElement(je,null),danger:!0,loading:f===\"delete\",disabled:f===\"keep\",block:!0},\"\\u6E05\\u7A7A\\uFF08\\u8FDE\\u540C\\u5220\\u9664\\u6E90\\u6587\\u4EF6\\uFF09\"))),Y.default.createElement(ie.Divider,{style:{margin:\"24px 0 12px\"}},\"\\u6E05\\u7406 115 \\u6587\\u4EF6\"),Y.default.createElement(Ns,{type:\"secondary\",style:{display:\"block\",marginBottom:12,fontSize:12}},\"\\u6CE8\\u610F\\uFF1A\\u4F1A\\u9012\\u5F52\\u5220\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u91CC\\u6240\\u6709\\u6587\\u4EF6\\uFF0C\\u5220\\u7A7A\\u540E\\u7684\\u7A7A\\u6587\\u4EF6\\u5939\\u5916\\u58F3\\u53EF\\u80FD\\u6B8B\\u7559\\u3002\"),Y.default.createElement(ie.Space,{direction:\"vertical\",style:{width:\"100%\"},size:8},Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536\",description:\"\\u628A\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u91CC\\u7684\\u6240\\u6709\\u6587\\u4EF6\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\uFF08\\u53EF\\u5728\\u56DE\\u6536\\u7AD9\\u6062\\u590D\\uFF09\\u3002\",okText:\"\\u786E\\u8BA4\\u6E05\\u7A7A\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>v(!0,!1,\"recent\")},Y.default.createElement(ie.Button,{icon:Y.default.createElement(Wn,null),loading:u===\"recent\",disabled:!!u&&u!==\"recent\",block:!0},\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536\\uFF08\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\uFF09\")),Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A \\u56DE\\u6536\\u7AD9\",description:\"\\u6C38\\u4E45\\u6E05\\u7A7A\\u6574\\u4E2A\\u56DE\\u6536\\u7AD9\\uFF0C\\u4E0D\\u53EF\\u6062\\u590D\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u6C38\\u4E45\\u6E05\\u7A7A\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>v(!1,!0,\"recycle\")},Y.default.createElement(ie.Button,{icon:Y.default.createElement(je,null),danger:!0,loading:u===\"recycle\",disabled:!!u&&u!==\"recycle\",block:!0},\"\\u6E05\\u7A7A \\u56DE\\u6536\\u7AD9\\uFF08\\u6C38\\u4E45\\u5220\\u9664\\uFF09\")),Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536 + \\u56DE\\u6536\\u7AD9\",description:\"\\u628A\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\u540E\\u7ACB\\u5373\\u6C38\\u4E45\\u6E05\\u7A7A\\uFF0C\\u5F7B\\u5E95\\u5220\\u9664\\uFF0C\\u4E0D\\u53EF\\u9006\\uFF0C\\u8BF7\\u786E\\u8BA4\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u5168\\u90E8\\u6C38\\u4E45\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>v(!0,!0,\"both\")},Y.default.createElement(ie.Button,{icon:Y.default.createElement(je,null),danger:!0,loading:u===\"both\",disabled:!!u&&u!==\"both\",block:!0},\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536 + \\u56DE\\u6536\\u7AD9\\uFF08\\u6C38\\u4E45\\u5220\\u9664\\uFF09\")))))}var ae=_(J(),1),be=_(Be(),1);var Dp=_(tt(),1);var{Text:Ip}=be.Typography,_n=Dp.default.create({baseURL:\"/website/guangya\"});_n.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw be.message.error(r),new Error(r)}return e.data.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return be.message.error(t),Promise.reject(e)});function Ep(e,t,n){return e.map(r=>String(r.key)===String(t)?I(C({},r),{children:n,isLeaf:n.length===0}):r.children?I(C({},r),{children:Ep(r.children,t,n)}):r)}function cC({value:e,valueName:t,onChange:n}){let[r,o]=(0,ae.useState)(!1),[a,i]=(0,ae.useState)([]),[s,l]=(0,ae.useState)(!1),c=(0,ae.useCallback)(h=>({title:h.name,key:String(h.fileId),isLeaf:!1}),[]),f=(0,ae.useCallback)(async()=>{l(!0);try{let h=await _n.get(\"/cloud/folders\",{params:{parentId:\"\"}});i([{title:\"\\u6839\\u76EE\\u5F55 (/)\",key:\"root\",children:(h||[]).map(c),isLeaf:!1}])}finally{l(!1)}},[c]);(0,ae.useEffect)(()=>{r&&a.length===0&&f()},[r,f,a.length]);let d=(0,ae.useCallback)(async h=>{if(!(h!=null&&h.key)||String(h.key)===\"root\")return;let x=await _n.get(\"/cloud/folders\",{params:{parentId:h.key}});i(v=>Ep(v,h.key,(x||[]).map(c)))},[c]),u=(h,x)=>{let v=String((h==null?void 0:h[0])||\"\");if(!v)return;let y=v===\"root\"?\"\\u6839\\u76EE\\u5F55\":String(x.node.title||v);n==null||n(v,y)},m=t||(e===\"root\"?\"\\u6839\\u76EE\\u5F55\":String(e||\"\\u6839\\u76EE\\u5F55\"));return ae.default.createElement(ae.default.Fragment,null,ae.default.createElement(be.Button,{icon:ae.default.createElement(hn,null),onClick:()=>o(!0),block:!0,style:{textAlign:\"left\"}},e&&e!==\"root\"?\"\".concat(m,\" (fileId=\").concat(e,\")\"):m),ae.default.createElement(be.Modal,{title:\"\\u9009\\u62E9\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u76EE\\u5F55\",open:r,onCancel:()=>o(!1),onOk:()=>o(!1),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",destroyOnClose:!0,width:520},ae.default.createElement(be.Spin,{spinning:s},ae.default.createElement(be.Tree,{treeData:a,loadData:d,onSelect:u,selectedKeys:e?[String(e)]:[\"root\"],height:420,blockNode:!0})),ae.default.createElement(Ip,{type:\"secondary\",style:{display:\"block\",marginTop:8}},\"\\u9ED8\\u8BA4\\u4F7F\\u7528\\u5149\\u9E2D\\u6839\\u76EE\\u5F55\\uFF0C\\u4E5F\\u53EF\\u9009\\u62E9\\u4EFB\\u610F\\u5B50\\u76EE\\u5F55\\u3002\")))}function As(){let[e,t]=(0,ae.useState)(\"root\"),[n,r]=(0,ae.useState)(\"\\u6839\\u76EE\\u5F55\"),[o,a]=(0,ae.useState)(20),[i,s]=(0,ae.useState)(1500),[l,c]=(0,ae.useState)(!1),[f,d]=(0,ae.useState)(!1),[u,m]=(0,ae.useState)(null),[h,x]=(0,ae.useState)(null);(0,ae.useEffect)(()=>{c(!0),Promise.all([_n.get(\"/cloud/settings\"),_n.get(\"/cloud/quota\").catch(()=>null)]).then(([b,S])=>{let w=!(b!=null&&b.savePath)||b.savePath===\"auto\"?\"root\":String(b.savePath);t(w),r(w===\"root\"?\"\\u6839\\u76EE\\u5F55\":String((b==null?void 0:b.savePathName)||w)),a(Number((b==null?void 0:b.pollAttempts)||20)),s(Number((b==null?void 0:b.pollIntervalMs)||1500)),x(S)}).catch(()=>{}).finally(()=>c(!1))},[]);let v=async()=>{d(!0);try{await _n.post(\"/cloud/settings\",{savePath:e,savePathName:n,pollAttempts:o,pollIntervalMs:i}),be.message.success(\"\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(b){}finally{d(!1)}},y=async b=>{m(b?\"files\":\"tasks\");try{let S=await _n.post(\"/cloud/clear\",{deleteFiles:b}),w=\"\\u5DF2\\u6E05\\u7406 \".concat(Number((S==null?void 0:S.taskCount)||0),\" \\u4E2A\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\"),D=b?\"\\uFF0C\\u5DF2\\u5220\\u9664 \".concat(Number((S==null?void 0:S.fileCount)||0),\" \\u4E2A\\u8F6C\\u5B58\\u6587\\u4EF6\\u6216\\u76EE\\u5F55\"):\"\";be.message.success(\"\".concat(w).concat(D))}catch(S){}finally{m(null)}};return ae.default.createElement(be.Spin,{spinning:l},ae.default.createElement(be.Form,{layout:\"vertical\"},(h==null?void 0:h.limited)&&ae.default.createElement(be.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:16},message:\"\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u989D\\u5EA6\\u4ECA\\u65E5\\u5DF2\\u7528\\u5B8C\"}),ae.default.createElement(be.Form.Item,{label:\"\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u76EE\\u5F55\",help:\"\\u6BCF\\u4E2A\\u78C1\\u529B\\u4EFB\\u52A1\\u4F1A\\u5728\\u8BE5\\u76EE\\u5F55\\u4E2D\\u751F\\u6210\\u5BF9\\u5E94\\u7684\\u8F6C\\u5B58\\u6587\\u4EF6\\u6216\\u5B50\\u76EE\\u5F55\\u3002\"},ae.default.createElement(cC,{value:e,valueName:n,onChange:(b,S)=>{t(b),r(S)}})),ae.default.createElement(be.Form.Item,{label:\"\\u8F6C\\u5B58\\u8F6E\\u8BE2\\u6B21\\u6570\",help:\"\\u4EFB\\u52A1\\u63D0\\u4EA4\\u540E\\u626B\\u63CF\\u8F6C\\u5B58\\u76EE\\u5F55\\u7684\\u6700\\u5927\\u6B21\\u6570\\u3002\"},ae.default.createElement(be.InputNumber,{min:1,max:50,value:o,onChange:b=>a(Number(b)||20),style:{width:\"100%\"}})),ae.default.createElement(be.Form.Item,{label:\"\\u8F6E\\u8BE2\\u95F4\\u9694 (ms)\"},ae.default.createElement(be.InputNumber,{min:200,max:1e4,step:100,value:i,onChange:b=>s(Number(b)||1500),style:{width:\"100%\"}})),ae.default.createElement(be.Button,{type:\"primary\",onClick:v,loading:f,block:!0},\"\\u4FDD\\u5B58\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u914D\\u7F6E\"),ae.default.createElement(be.Divider,{style:{margin:\"24px 0 12px\"}},\"\\u6E05\\u7406\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\"),ae.default.createElement(Ip,{type:\"secondary\",style:{display:\"block\",marginBottom:12,fontSize:12}},\"\\u6E05\\u7406\\u4EFB\\u52A1\\u53EA\\u5220\\u9664\\u4E91\\u8F6C\\u5B58\\u8BB0\\u5F55\\uFF1B\\u540C\\u65F6\\u6E05\\u7406\\u6587\\u4EF6\\u4F1A\\u5220\\u9664\\u4EFB\\u52A1\\u5BF9\\u5E94\\u7684\\u8F6C\\u5B58\\u6587\\u4EF6\\u6216\\u76EE\\u5F55\\uFF0C\\u6587\\u4EF6\\u6309\\u5149\\u9E2D\\u89C4\\u5219\\u8FDB\\u5165\\u56DE\\u6536\\u7AD9\\u3002\"),ae.default.createElement(be.Space,{direction:\"vertical\",style:{width:\"100%\"},size:8},ae.default.createElement(be.Popconfirm,{title:\"\\u6E05\\u7406\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\",description:\"\\u6E05\\u7406\\u8FDB\\u884C\\u4E2D\\u3001\\u5931\\u8D25\\u3001\\u53D6\\u6D88\\u548C\\u5DF2\\u5B8C\\u6210\\u7684\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\\u8BB0\\u5F55\\uFF0C\\u5DF2\\u8F6C\\u5B58\\u6587\\u4EF6\\u4FDD\\u7559\\u3002\",okText:\"\\u786E\\u8BA4\\u6E05\\u7406\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>y(!1)},ae.default.createElement(be.Button,{icon:ae.default.createElement(Wn,null),loading:u===\"tasks\",disabled:u===\"files\",block:!0},\"\\u6E05\\u7406\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\")),ae.default.createElement(be.Popconfirm,{title:\"\\u6E05\\u7406\\u4EFB\\u52A1\\u548C\\u4E91\\u8F6C\\u5B58\\u6587\\u4EF6\",description:\"\\u6E05\\u7406\\u5168\\u90E8\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\\uFF0C\\u5E76\\u5220\\u9664\\u8FD9\\u4E9B\\u4EFB\\u52A1\\u5BF9\\u5E94\\u7684\\u5149\\u9E2D\\u6587\\u4EF6\\u6216\\u76EE\\u5F55\\u3002\\u8BF7\\u786E\\u8BA4\\u540E\\u7EE7\\u7EED\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u7EE7\\u7EED\\u6E05\\u7406\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>y(!0)},ae.default.createElement(be.Button,{icon:ae.default.createElement(je,null),danger:!0,loading:u===\"files\",disabled:u===\"tasks\",block:!0},\"\\u6E05\\u7406\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\\u548C\\u4E91\\u8F6C\\u5B58\\u6587\\u4EF6\")))))}var ut=_(J(),1),ft=_(Be(),1);var za={chunkSize:1,poolSize:16},uC=200;function Tp(e={}){let t=e!=null&&e.stable&&typeof e.stable==\"object\"?e.stable:e;return{chunkSize:Number(t==null?void 0:t.chunkSize)>0?Number(t.chunkSize)/(1024*1024):za.chunkSize,poolSize:Number(t==null?void 0:t.poolSize)>0?Number(t.poolSize):za.poolSize}}var fC=({http:e})=>{let[t,n]=(0,ut.useState)(za),[r,o]=(0,ut.useState)(!0),[a,i]=(0,ut.useState)(!1);(0,ut.useEffect)(()=>{let c=!0;return o(!0),e.get(\"/guangya/config\").then(f=>{c&&n(Tp(f))}).catch(()=>{c&&(n(za),ft.message.warning(\"\\u8BFB\\u53D6\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u5DF2\\u663E\\u793A\\u9ED8\\u8BA4\\u503C\"))}).finally(()=>{c&&o(!1)}),()=>{c=!1}},[e]);let s=(c,f)=>{f!=null&&n(d=>I(C({},d),{[c]:f}))},l=async()=>{i(!0);try{let c={chunkSize:Math.round(t.chunkSize*1024*1024),poolSize:Math.round(t.poolSize)},f=await e.put(\"/guangya/config\",c);n(Tp(f||c)),ft.message.success(\"\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\")}catch(c){ft.message.error(\"\\u4FDD\\u5B58\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\\u5931\\u8D25\")}finally{i(!1)}};return ut.default.createElement(\"section\",{className:\"guangya-proxy-settings\"},ut.default.createElement(ft.Divider,null,\"\\u4EE3\\u7406\\u8BBE\\u7F6E\"),ut.default.createElement(ft.Form,{layout:\"vertical\",className:\"guangya-proxy-form\"},ut.default.createElement(ft.Form.Item,{label:\"\\u7EBF\\u7A0B\\u6570\\uFF08\\u63A8\\u8350 16\\uFF09\"},ut.default.createElement(ft.InputNumber,{min:1,max:uC,precision:0,value:t.poolSize,onChange:c=>s(\"poolSize\",c),disabled:r||a,style:{width:\"100%\"}})),ut.default.createElement(ft.Form.Item,{label:\"\\u6301\\u7EED\\u5206\\u7247\\u5927\\u5C0F (MiB)\",extra:\"\\u8D77\\u64AD\\u548C\\u6BCF\\u6B21\\u62D6\\u52A8\\u4F1A\\u4F18\\u5148\\u62C9\\u53D6 128 KiB \\u9996\\u7247\\uFF0C\\u540E\\u7EED\\u518D\\u6309\\u6B64\\u5927\\u5C0F\\u5E76\\u53D1\\u3002\"},ut.default.createElement(ft.InputNumber,{min:.01,max:10,step:.25,value:t.chunkSize,onChange:c=>s(\"chunkSize\",c),disabled:r||a,style:{width:\"100%\"}}))),ut.default.createElement(ft.Button,{type:\"primary\",block:!0,loading:r||a,onClick:l},\"\\u4FDD\\u5B58\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\"))},kp=fC;var ne=_(J(),1),ee=_(Be(),1);var Np=_(tt(),1);var{Text:pC}=ee.Typography,Ut=Np.default.create({baseURL:\"/website\"});Ut.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0)throw new Error(((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});function Fp(e,t,n){return e.map(r=>String(r.key)===String(t)?I(C({},r),{children:n,isLeaf:n.length===0}):r.children?I(C({},r),{children:Fp(r.children,t,n)}):r)}function mC({value:e,valueName:t,onChange:n,disabled:r}){let[o,a]=(0,ne.useState)(!1),[i,s]=(0,ne.useState)([]),[l,c]=(0,ne.useState)(!1),f=(0,ne.useCallback)(x=>({title:x.name,key:String(x.id),isLeaf:!1}),[]),d=(0,ne.useCallback)(async()=>{c(!0);try{let x=await Ut.get(\"/pan123/open/folders\",{params:{parentFileId:\"0\"}});s([{title:\"\\u6839\\u76EE\\u5F55 (/)\",key:\"0\",children:(x||[]).map(f),isLeaf:!1}])}finally{c(!1)}},[f]);(0,ne.useEffect)(()=>{o&&i.length===0&&d().catch(x=>ee.message.error(x.message))},[o,d,i.length]);let u=(0,ne.useCallback)(async x=>{if(!(x!=null&&x.key)||String(x.key)===\"0\")return;let v=await Ut.get(\"/pan123/open/folders\",{params:{parentFileId:x.key}});s(y=>Fp(y,x.key,(v||[]).map(f)))},[f]),m=(x,v)=>{let y=String((x==null?void 0:x[0])||\"\");if(!y)return;let b=y===\"0\"?\"\\u6839\\u76EE\\u5F55\":String(v.node.title||y);n==null||n(y,b)},h=t||(e===\"0\"?\"\\u6839\\u76EE\\u5F55\":String(e||\"\\u6839\\u76EE\\u5F55\"));return ne.default.createElement(ne.default.Fragment,null,ne.default.createElement(ee.Button,{icon:ne.default.createElement(hn,null),onClick:()=>a(!0),disabled:r,block:!0,style:{textAlign:\"left\"}},e&&e!==\"0\"?\"\".concat(h,\" (fileId=\").concat(e,\")\"):\"\\u6839\\u76EE\\u5F55 (fileId=0)\"),ne.default.createElement(ee.Modal,{title:\"\\u9009\\u62E9\\u79D2\\u4F20123\\u76EE\\u6807\\u76EE\\u5F55\",open:o,onCancel:()=>a(!1),onOk:()=>a(!1),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",destroyOnClose:!0,width:520},ne.default.createElement(ee.Spin,{spinning:l},ne.default.createElement(ee.Tree,{treeData:i,loadData:u,onSelect:m,selectedKeys:[String(e||\"0\")],height:420,blockNode:!0})),ne.default.createElement(pC,{type:\"secondary\",style:{display:\"block\",marginTop:8}},\"\\u9ED8\\u8BA4\\u4F7F\\u7528123\\u6839\\u76EE\\u5F55\\uFF0C\\u4E5F\\u53EF\\u5C55\\u5F00\\u5E76\\u9009\\u62E9\\u4EFB\\u610F\\u5B50\\u76EE\\u5F55\\u3002\")))}function Ps(){let[e]=ee.Form.useForm(),[t]=ee.Form.useForm(),[n,r]=(0,ne.useState)({}),[o,a]=(0,ne.useState)(!1),[i,s]=(0,ne.useState)(\"0\"),[l,c]=(0,ne.useState)(\"\\u6839\\u76EE\\u5F55\"),f=async()=>{let[h,x]=await Promise.all([Ut.get(\"/pan123/account\"),Ut.get(\"/pan123/open/config\")]);e.setFieldsValue(h||{}),t.setFieldsValue({oauth_server:(x==null?void 0:x.oauth_server)||\"https://oauth.litepan.top\"}),r(x||{}),s(String((x==null?void 0:x.target_parent_id)||\"0\")),c((x==null?void 0:x.target_parent_name)||\"\\u6839\\u76EE\\u5F55\")};(0,ne.useEffect)(()=>{f().catch(h=>ee.message.error(h.message))},[]);let d=async()=>{let h=await e.validateFields();await Ut.put(\"/pan123/account\",h),ee.message.success(\"123\\u7F51\\u9875\\u8D26\\u53F7\\u5DF2\\u4FDD\\u5B58\")},u=async(h={})=>{var b,S,w,D,O;let x=String((S=(b=h.target_parent_id)!=null?b:i)!=null?S:\"0\"),v=(D=(w=h.target_parent_name)!=null?w:l)!=null?D:\"\\u6839\\u76EE\\u5F55\",y=await Ut.put(\"/pan123/open/settings\",{enabled:(O=h.enabled)!=null?O:n.enabled===!0,target_parent_id:x,target_parent_name:v,oauth_server:t.getFieldValue(\"oauth_server\")||n.oauth_server});r(y||{}),s(String((y==null?void 0:y.target_parent_id)||x)),c((y==null?void 0:y.target_parent_name)||v),ee.message.success(\"123 Open\\u8BBE\\u7F6E\\u5DF2\\u4FDD\\u5B58\")},m=async()=>{a(!0);try{let h=t.getFieldValue(\"oauth_server\")||n.oauth_server;await Ut.put(\"/pan123/open/settings\",{enabled:n.enabled===!0,target_parent_id:n.target_parent_id||\"0\",target_parent_name:n.target_parent_name||\"\\u6839\\u76EE\\u5F55\",oauth_server:h});let x=await Ut.post(\"/pan123/open/oauth/password\");r(x||{}),ee.message.success(\"123\\u8D26\\u53F7\\u5BC6\\u7801\\u6388\\u6743\\u6210\\u529F\")}finally{a(!1)}};return ne.default.createElement(ee.Space,{direction:\"vertical\",style:{width:\"100%\"},size:\"middle\"},ne.default.createElement(ee.Divider,null,\"123\\u7F51\\u9875\\u8D26\\u53F7\"),ne.default.createElement(ee.Form,{form:e,layout:\"vertical\"},ne.default.createElement(ee.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},ne.default.createElement(ee.Input,null)),ne.default.createElement(ee.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},ne.default.createElement(ee.Input.Password,null)),ne.default.createElement(ee.Button,{type:\"primary\",onClick:()=>d().catch(h=>ee.message.error(h.message)),block:!0},\"\\u4FDD\\u5B58\\u7F51\\u9875\\u8D26\\u53F7\")),ne.default.createElement(ee.Divider,null,\"123 Open\"),ne.default.createElement(ee.Space,{wrap:!0},ne.default.createElement(ee.Tag,{color:n.configured?\"green\":\"red\"},n.configured?\"Open\\u5DF2\\u914D\\u7F6E\":\"Open\\u672A\\u914D\\u7F6E\"),ne.default.createElement(ee.Tag,null,n.access_token_masked||\"\\u65E0Token\"),ne.default.createElement(ee.Tag,{color:n.has_refresh_token?\"blue\":\"default\"},n.has_refresh_token?\"\\u53EF\\u5237\\u65B0\":\"\\u65E0refresh token\")),ne.default.createElement(ee.Form,{form:t,layout:\"vertical\"},ne.default.createElement(ee.Form.Item,{label:\"OAuth\\u4EE3\\u7406\\u670D\\u52A1\",name:\"oauth_server\"},ne.default.createElement(ee.Input,null)),ne.default.createElement(ee.Space,{style:{width:\"100%\"},direction:\"vertical\"},ne.default.createElement(ee.Button,{type:\"primary\",loading:o,onClick:()=>m().catch(h=>ee.message.error(h.message)),block:!0},\"\\u4F7F\\u7528123\\u8D26\\u53F7\\u5BC6\\u7801\\u76F4\\u63A5\\u6388\\u6743\"),ne.default.createElement(ee.Button,{onClick:async()=>{try{r(await Ut.post(\"/pan123/open/refresh\")),ee.message.success(\"123 Open Token\\u5237\\u65B0\\u6210\\u529F\")}catch(h){ee.message.error(h.message)}},block:!0},\"\\u5237\\u65B0Token\"))),ne.default.createElement(ee.Divider,null,\"\\u79D2\\u4F20\\u8BBE\\u7F6E\"),ne.default.createElement(ee.Space,null,ne.default.createElement(\"span\",null,\"\\u542F\\u7528115\\u2192\\u79D2\\u4F20123\"),ne.default.createElement(ee.Switch,{checked:n.enabled===!0,disabled:!n.configured,onChange:h=>u({enabled:h}).catch(x=>ee.message.error(x.message))})),ne.default.createElement(ee.Form,{layout:\"vertical\"},ne.default.createElement(ee.Form.Item,{label:\"\\u79D2\\u4F20123\\u76EE\\u6807\\u76EE\\u5F55\",help:\"SHA1\\u547D\\u4E2D\\u540E\\uFF0C\\u6587\\u4EF6\\u4F1A\\u4FDD\\u5B58\\u5230\\u6240\\u9009123\\u4E2A\\u4EBA\\u76D8\\u76EE\\u5F55\\u3002\"},ne.default.createElement(mC,{value:i,valueName:l,disabled:!n.configured,onChange:(h,x)=>{s(h),c(x)}})),ne.default.createElement(ee.Button,{type:\"primary\",loading:o,disabled:!n.configured,onClick:()=>u().catch(h=>ee.message.error(h.message)),block:!0},\"\\u4FDD\\u5B58\\u79D2\\u4F20\\u8BBE\\u7F6E\")))}var Ap=_(tt(),1),$a=Ap.default.create({baseURL:\"/website\"}),gC=[\"quark\",\"uc\",\"xunlei\",\"ali\"],hC=200;$a.interceptors.response.use(function(e){if(e.data.code!==0)throw ke.message.error(e.data.message),new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data},function(e){return Promise.reject(e)});var bC=({driveKey:e})=>{let t=e.startsWith(\"nodejs_\")?e.substring(7):e;switch((o=>o.startsWith(\"pan123_\")?\"pan123\":o)(t)){case\"quark\":return re.default.createElement(qt,{qrcodeUrl:\"/website/quark/qrcode\",cacheUrl:\"/quark/cookie\"});case\"uc\":return re.default.createElement(Ms,null);case\"115\":return re.default.createElement(qt,{qrcodeUrl:\"/website/115/qrcode\",cacheUrl:\"/115/cookie\"});case\"baidu\":return re.default.createElement(qt,{qrcodeUrl:\"/website/baidu/qrcode\",cacheUrl:\"/baidu/cookie\"});case\"tianyi\":return re.default.createElement(Bs,{api:\"/tianyi/account\"});case\"123\":return re.default.createElement(Ps,null);case\"xunlei\":return re.default.createElement(Ls,{api:\"/xunlei/account\"});case\"ali\":return re.default.createElement(_s,null);case\"guangya\":return re.default.createElement(re.default.Fragment,null,re.default.createElement(qt,{qrcodeUrl:\"/website/guangya/qrcode\",cacheUrl:\"/guangya/cookie\"}),re.default.createElement(kp,{http:$a}));case\"uc-tv\":return re.default.createElement(qt,{qrcodeUrl:\"/website/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\"});case\"magnet\":return re.default.createElement(Fs,null);case\"magnet_guangya\":return re.default.createElement(As,null);default:return re.default.createElement(\"p\",null,\"\\u76F4\\u63A5\\u89C2\\u770B\\uFF0C\\u4E0D\\u9700\\u8981cookie\")}},xC=()=>{let[e,t]=(0,re.useState)(!1),[n,r]=(0,re.useState)(null),[o,a]=(0,re.useState)(.5),[i,s]=(0,re.useState)(32),[l,c]=(0,re.useState)(!0),[f,d]=(0,re.useState)(!1),[u,m]=(0,re.useState)(!1),h=O=>O==null?void 0:O.replace(\"nodejs_\",\"\"),x=O=>O===\"quark\",v=O=>gC.includes(O),y=O=>O===\"uc\"?.0625:.5,b=O=>O===\"uc\"?16:O===\"ali\"?6:O===\"xunlei\"?10:32,S=O=>{let F=h(O.key);a(y(F)),s(b(F)),c(!0),d(!1),r(O),t(!0)},w=()=>{t(!1),r(null),a(.5),s(32),c(!0),d(!1),m(!1)};(0,re.useEffect)(()=>{if(!n)return;let O=h(n.key);v(O)&&(m(!0),$a.get(\"/\".concat(O,\"/config\")).then(F=>{let T=F.chunkSize/1048576;a(T>0?T:y(O)),s(F.poolSize>0?F.poolSize:b(O));let P=x(O)?F.enableFast===!0:!1;c(O===\"quark\"&&P?!1:F.useMultithread!==!1),d(P)}).catch(F=>{console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\",F),ke.message.warning(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C\"),a(y(O)),s(b(O)),c(!0),d(!1)}).finally(()=>m(!1)))},[n]);let D=(0,re.useMemo)(()=>[{title:\"\\u626B\\u7801\",key:\"action\",render:(O,F)=>re.default.createElement(ke.Space,{size:\"middle\"},re.default.createElement(ke.Button,{type:\"primary\",size:\"small\",icon:re.default.createElement(xr,null),onClick:()=>S(F)})),width:100,align:\"center\"}],[]);return re.default.createElement(re.default.Fragment,null,re.default.createElement(Vs,{extraColumns:D}),re.default.createElement(ke.Modal,{title:n?\"\\u4FEE\\u6539 \".concat(n.name,\" \\u914D\\u7F6E\"):\"\\u4FEE\\u6539\\u914D\\u7F6E\",open:e,onCancel:w,footer:null,destroyOnClose:!0,className:\"force-light-form-label\",width:h(n==null?void 0:n.key)===\"guangya\"?620:void 0},re.default.createElement(bC,{driveKey:n==null?void 0:n.key}),n&&v(n.key.replace(\"nodejs_\",\"\"))&&re.default.createElement(\"div\",{style:{marginTop:16}},re.default.createElement(ke.Divider,null,\"\\u4EE3\\u7406\\u8BBE\\u7F6E\"),re.default.createElement(ke.Form,{layout:\"vertical\"},re.default.createElement(ke.Form.Item,{label:\"\\u542F\\u7528\\u4EE3\\u7406\\u52A0\\u901F\",extra:n.key.replace(\"nodejs_\",\"\")===\"quark\"&&f?\"\\u5DF2\\u542F\\u7528\\u5FEB\\u4F20\\uFF0C\\u4EE3\\u7406\\u52A0\\u901F\\u4F1A\\u5931\\u6548\\uFF1B\\u5173\\u95ED\\u201C\\u542F\\u7528\\u5FEB\\u4F20\\u201D\\u540E\\u624D\\u80FD\\u6253\\u5F00\\u4EE3\\u7406\\u52A0\\u901F\\u3002\":void 0},re.default.createElement(ke.Switch,{checked:l,onChange:c,disabled:u||n.key.replace(\"nodejs_\",\"\")===\"quark\"&&f})),x(n.key.replace(\"nodejs_\",\"\"))&&re.default.createElement(ke.Form.Item,{label:\"\\u542F\\u7528\\u5FEB\\u4F20\"},re.default.createElement(ke.Switch,{checked:f,onChange:O=>{d(O),n.key.replace(\"nodejs_\",\"\")===\"quark\"&&O&&c(!1)},disabled:u})),re.default.createElement(ke.Form.Item,{label:\"\\u7EBF\\u7A0B\\u6570\"},re.default.createElement(ke.InputNumber,{min:1,max:hC,value:i,onChange:s,style:{width:\"100%\"},disabled:u})),re.default.createElement(ke.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (MB)\"},re.default.createElement(ke.InputNumber,{min:.01,max:10,value:o,onChange:a,style:{width:\"100%\"},disabled:u})),re.default.createElement(ke.Button,{type:\"primary\",onClick:async()=>{let O=n.key.replace(\"nodejs_\",\"\"),F=O===\"quark\"&&f?!1:l;try{let T={chunkSize:o*1024*1024,poolSize:i,useMultithread:F};x(O)&&(T.enableFast=f),await $a.put(\"/\".concat(O,\"/config\"),T),ke.message.success(\"\\u4EE3\\u7406\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(T){ke.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\")}},loading:u,block:!0},\"\\u4FDD\\u5B58\\u4EE3\\u7406\\u914D\\u7F6E\")))))},Pp=xC;var pe=_(J(),1),dn=_(Be(),1);var Ge=_(J(),1),ze=_(Be(),1),_p=_(tt(),1),Ua=_p.default.create({baseURL:\"/website\"});Ua.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});function zs({prefix:e=\"/panlian\",title:t=\"\\u76D8\\u94FE\"}){let[n]=ze.Form.useForm(),[r,o]=(0,Ge.useState)({hasCookie:!1,cookieLength:0}),[a,i]=(0,Ge.useState)(!1),s=async()=>{let f=await Ua.get(\"\".concat(e,\"/config\"));n.setFieldsValue({username:f.username||\"\",password:f.password||\"\",cookie:f.cookie||\"\"}),o({hasCookie:!!f.hasCookie,cookieLength:String(f.cookie||\"\").trim().length})};(0,Ge.useEffect)(()=>{s()},[e]);let l=async()=>{i(!0);try{await Ua.post(\"\".concat(e,\"/clear\")),await s(),ze.message.success(\"\".concat(t,\"\\u8D26\\u53F7\\u6570\\u636E\\u5DF2\\u6E05\\u7A7A\"))}finally{i(!1)}},c=async()=>{i(!0);try{let f=await n.validateFields([\"username\",\"password\"]),d=await Ua.post(\"\".concat(e,\"/login\"),f);await s(),ze.message.success(\"\".concat(t,\"\\u767B\\u5F55\\u6210\\u529F\\uFF1A\").concat((d==null?void 0:d.message)||\"\\u5DF2\\u5199\\u5165 Cookie\"))}finally{i(!1)}};return Ge.default.createElement(ze.Card,{variant:\"borderless\"},Ge.default.createElement(\"div\",{style:{marginBottom:12,display:\"flex\",gap:8,flexWrap:\"wrap\"}},Ge.default.createElement(ze.Tag,{color:r.hasCookie?\"success\":\"default\"},r.hasCookie?\"\\u5DF2\\u5199\\u5165 Cookie\":\"\\u672A\\u5199\\u5165 Cookie\"),Ge.default.createElement(ze.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",r.cookieLength)),Ge.default.createElement(ze.Form,{form:n,layout:\"vertical\"},Ge.default.createElement(ze.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},Ge.default.createElement(ze.Input,{placeholder:\"\".concat(t,\"\\u8D26\\u53F7\")})),Ge.default.createElement(ze.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},Ge.default.createElement(ze.Input.Password,{placeholder:\"\".concat(t,\"\\u5BC6\\u7801\")})),Ge.default.createElement(ze.Form.Item,{label:\"\\u5F53\\u524D Cookie\",name:\"cookie\"},Ge.default.createElement(ze.Input.TextArea,{rows:4,readOnly:!0,placeholder:\"\\u767B\\u5F55\\u6210\\u529F\\u540E\\u4F1A\\u81EA\\u52A8\\u56DE\\u586B Cookie\"})),Ge.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},Ge.default.createElement(ze.Button,{type:\"primary\",onClick:c,loading:a},\"\\u767B\\u5F55\"),Ge.default.createElement(ze.Button,{danger:!0,onClick:l,loading:a},\"\\u6E05\\u7A7A\"))))}var Pe=_(J(),1),Ne=_(Be(),1),Bp=_(tt(),1),ir=Bp.default.create({baseURL:\"/website\"});ir.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var ao=\"/filejin\";function $s(){let[e]=Ne.Form.useForm(),[t,n]=(0,Pe.useState)({hasCookie:!1,cookieLength:0,site:\"\"}),[r,o]=(0,Pe.useState)(!1),a=async()=>{let c=await ir.get(\"\".concat(ao,\"/config\"));e.setFieldsValue({site:c.site||\"\",username:c.username||\"\",password:c.password||\"\",cookie:c.cookie||\"\"}),n({hasCookie:!!c.hasCookie,cookieLength:String(c.cookie||\"\").trim().length,site:c.site||\"\"})};(0,Pe.useEffect)(()=>{a()},[]);let i=async()=>{o(!0);try{let{site:c}=await e.validateFields([\"site\"]);await ir.put(\"\".concat(ao,\"/config\"),{site:String(c||\"\").trim()}),await a(),Ne.message.success(\"\\u89C2\\u5F71\\u7F51\\u5740\\u5DF2\\u4FDD\\u5B58\")}finally{o(!1)}},s=async()=>{o(!0);try{await ir.post(\"\".concat(ao,\"/clear\")),await a(),Ne.message.success(\"\\u89C2\\u5F71\\u8D26\\u53F7\\u6570\\u636E\\u5DF2\\u6E05\\u7A7A\")}finally{o(!1)}},l=async()=>{o(!0);try{let c=await e.validateFields([\"site\",\"username\",\"password\"]);await ir.put(\"\".concat(ao,\"/config\"),{site:String(c.site||\"\").trim()});let f=await ir.post(\"\".concat(ao,\"/login\"),{username:c.username,password:c.password});await a(),Ne.message.success(\"\\u89C2\\u5F71\\u767B\\u5F55\\u6210\\u529F\\uFF1A\".concat((f==null?void 0:f.message)||\"\\u5DF2\\u5199\\u5165 Cookie\"))}finally{o(!1)}};return Pe.default.createElement(Ne.Card,{variant:\"borderless\"},Pe.default.createElement(\"div\",{style:{marginBottom:12,display:\"flex\",gap:8,flexWrap:\"wrap\"}},Pe.default.createElement(Ne.Tag,{color:t.hasCookie?\"success\":\"default\"},t.hasCookie?\"\\u5DF2\\u5199\\u5165 Cookie\":\"\\u672A\\u5199\\u5165 Cookie\"),Pe.default.createElement(Ne.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",t.cookieLength),Pe.default.createElement(Ne.Tag,{color:t.site?\"geekblue\":\"default\"},t.site?\"\\u81EA\\u5B9A\\u4E49\\u7F51\\u5740\\uFF1A\".concat(t.site):\"\\u4F7F\\u7528\\u9ED8\\u8BA4\\u7F51\\u5740\")),Pe.default.createElement(Ne.Form,{form:e,layout:\"vertical\"},Pe.default.createElement(Ne.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u7F51\\u5740\",name:\"site\",extra:\"\\u7559\\u7A7A\\u5219\\u4F7F\\u7528\\u5185\\u7F6E\\u9ED8\\u8BA4\\u7F51\\u5740\\u3002\\u7F51\\u5740\\u53D8\\u52A8\\u65F6\\u5728\\u6B64\\u4FEE\\u6539\\uFF0C\\u65E0\\u9700\\u6539\\u4EE3\\u7801\\u3002\\u793A\\u4F8B\\uFF1Ahttps://www.example.com\"},Pe.default.createElement(Ne.Input,{placeholder:\"\\u4F8B\\u5982 https://www.example.com\",allowClear:!0})),Pe.default.createElement(Ne.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},Pe.default.createElement(Ne.Input,{placeholder:\"\\u89C2\\u5F71\\u8D26\\u53F7\"})),Pe.default.createElement(Ne.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},Pe.default.createElement(Ne.Input.Password,{placeholder:\"\\u89C2\\u5F71\\u5BC6\\u7801\"})),Pe.default.createElement(Ne.Form.Item,{label:\"\\u5F53\\u524D Cookie\",name:\"cookie\"},Pe.default.createElement(Ne.Input.TextArea,{rows:4,readOnly:!0,placeholder:\"\\u767B\\u5F55\\u6210\\u529F\\u540E\\u4F1A\\u81EA\\u52A8\\u56DE\\u586B Cookie\"})),Pe.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},Pe.default.createElement(Ne.Button,{onClick:i,loading:r},\"\\u4FDD\\u5B58\\u7F51\\u5740\"),Pe.default.createElement(Ne.Button,{type:\"primary\",onClick:l,loading:r},\"\\u767B\\u5F55\"),Pe.default.createElement(Ne.Button,{danger:!0,onClick:s,loading:r},\"\\u6E05\\u7A7A\"))))}var Le=_(J(),1),Ee=_(Be(),1),Lp=_(tt(),1);var io=Lp.default.create({baseURL:\"/website\"});io.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var Wa=\"/pan1\";function Us(){let[e]=Ee.Form.useForm(),[t,n]=(0,Le.useState)(!1),[r,o]=(0,Le.useState)({hasCookie:!1,cookieLength:0,valid:null,uid:\"\"}),a=async()=>{let l=await io.get(\"\".concat(Wa,\"/config\"));e.setFieldsValue({cookie:l.cookie||\"\",autoReply:l.autoReply!==!1,replyMessage:l.replyMessage||\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"}),o(c=>I(C({},c),{hasCookie:!!l.hasCookie,cookieLength:Number(l.cookieLength||0)}))};(0,Le.useEffect)(()=>{a()},[]);let i=async(l=!1)=>{n(!0);try{let c=await e.validateFields();await io.put(\"\".concat(Wa,\"/config\"),c);let f={valid:null,uid:\"\"};if(l){let d=await io.post(\"\".concat(Wa,\"/validate\"));f={valid:!0,uid:(d==null?void 0:d.uid)||\"\"},Ee.message.success(\"\\u8BBA\\u575B Cookie \\u6709\\u6548\\uFF0C\\u8D44\\u6E90\\u7248\\u8BBF\\u95EE\\u6B63\\u5E38\")}else Ee.message.success(\"pan1 \\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\");await a(),o(d=>C(C({},d),f))}finally{n(!1)}},s=async()=>{n(!0);try{await io.post(\"\".concat(Wa,\"/clear\")),await a(),o(l=>I(C({},l),{valid:null,uid:\"\"})),Ee.message.success(\"\\u8BBA\\u575B Cookie \\u5DF2\\u6E05\\u7A7A\")}finally{n(!1)}};return Le.default.createElement(Ee.Card,null,Le.default.createElement(Ee.Space,{wrap:!0,style:{marginBottom:12}},Le.default.createElement(Ee.Tag,{color:r.hasCookie?\"success\":\"default\"},r.hasCookie?\"\\u5DF2\\u586B\\u5199 Cookie\":\"\\u672A\\u586B\\u5199 Cookie\"),Le.default.createElement(Ee.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",r.cookieLength),r.valid===!0&&Le.default.createElement(Ee.Tag,{color:\"success\"},\"\\u9A8C\\u8BC1\\u6210\\u529F\",r.uid?\" \\xB7 UID \".concat(r.uid):\"\")),Le.default.createElement(Ee.Form,{form:e,layout:\"vertical\",initialValues:{autoReply:!0}},Le.default.createElement(Ee.Form.Item,{label:\"\\u8BBA\\u575B Cookie\",name:\"cookie\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 pan1.me \\u767B\\u5F55 Cookie\"}],extra:\"\\u4ECE\\u6D4F\\u89C8\\u5668\\u767B\\u5F55 pan1.me \\u540E\\u590D\\u5236\\u5B8C\\u6574 Cookie\\u3002\\u81F3\\u5C11\\u5E94\\u5305\\u542B bbs_sid \\u548C bbs_token\\u3002\"},Le.default.createElement(Ee.Input.TextArea,{autoSize:{minRows:4,maxRows:8},placeholder:\"bbs_sid=...; bbs_token=...\"})),Le.default.createElement(Ee.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u9690\\u85CF\\u5E16\",name:\"autoReply\",valuePropName:\"checked\"},Le.default.createElement(Ee.Switch,{checkedChildren:\"\\u5F00\\u542F\",unCheckedChildren:\"\\u5173\\u95ED\"})),Le.default.createElement(Ee.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\",name:\"replyMessage\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\"}]},Le.default.createElement(Ee.Input,{maxLength:120,showCount:!0,placeholder:\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"})),Le.default.createElement(Ee.Space,{wrap:!0},Le.default.createElement(Ee.Button,{type:\"primary\",loading:t,onClick:()=>i(!0)},\"\\u4FDD\\u5B58\\u5E76\\u9A8C\\u8BC1\"),Le.default.createElement(Ee.Button,{loading:t,onClick:()=>i(!1)},\"\\u4EC5\\u4FDD\\u5B58\"),Le.default.createElement(Ee.Button,{danger:!0,loading:t,onClick:s},\"\\u6E05\\u7A7A Cookie\"))))}var Fe=_(J(),1),xe=_(Be(),1),Mp=_(tt(),1);var so=Mp.default.create({baseURL:\"/website\"});so.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var Ga=\"/guangyaqsxy\";function Ws(){let[e]=xe.Form.useForm(),[t,n]=(0,Fe.useState)(!1),[r,o]=(0,Fe.useState)({hasCookie:!1,cookieLength:0,valid:null,username:\"\",canReadResource:null,resourceGate:\"\"}),a=async()=>{let l=await so.get(\"\".concat(Ga,\"/config\"));e.setFieldsValue({cookie:l.cookie||\"\",autoReply:l.autoReply!==!1,replyMessage:l.replyMessage||\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"}),o(c=>I(C({},c),{hasCookie:!!l.hasCookie,cookieLength:Number(l.cookieLength||0)}))};(0,Fe.useEffect)(()=>{a()},[]);let i=async(l=!1)=>{n(!0);try{let c=await e.validateFields();await so.put(\"\".concat(Ga,\"/config\"),c);let f={valid:null,username:\"\",canReadResource:null,resourceGate:\"\"};if(l){let d=await so.post(\"\".concat(Ga,\"/validate\"));f={valid:(d==null?void 0:d.loggedIn)===!0,username:(d==null?void 0:d.username)||\"\",canReadResource:(d==null?void 0:d.canReadResource)===!0,resourceGate:(d==null?void 0:d.resourceGate)||\"\"},d!=null&&d.canReadResource?xe.message.success((d==null?void 0:d.message)||\"Cookie \\u767B\\u5F55\\u6709\\u6548\\uFF0C\\u8D44\\u6E90\\u94FE\\u63A5\\u5DF2\\u89E3\\u9501\"):(d==null?void 0:d.resourceGate)===\"comment_required\"?xe.message.warning((d==null?void 0:d.message)||\"Cookie \\u767B\\u5F55\\u6709\\u6548\\uFF0C\\u8BE6\\u60C5\\u9875\\u9700\\u8BC4\\u8BBA\\u89E3\\u9501\"):xe.message.info((d==null?void 0:d.message)||\"Cookie \\u767B\\u5F55\\u6709\\u6548\\uFF0C\\u4F46\\u672A\\u8BC6\\u522B\\u5230\\u8D44\\u6E90\\u72B6\\u6001\")}else xe.message.success(\"\\u5149\\u9E2D\\u81FB\\u5F71\\u793E Cookie \\u5DF2\\u4FDD\\u5B58\");await a(),o(d=>C(C({},d),f))}catch(c){xe.message.error((c==null?void 0:c.message)||\"\\u4FDD\\u5B58\\u5931\\u8D25\")}finally{n(!1)}},s=async()=>{n(!0);try{await so.post(\"\".concat(Ga,\"/clear\")),await a(),o(l=>I(C({},l),{valid:null,username:\"\",canReadResource:null,resourceGate:\"\"})),xe.message.success(\"Cookie \\u5DF2\\u6E05\\u7A7A\")}catch(l){xe.message.error((l==null?void 0:l.message)||\"\\u6E05\\u7A7A\\u5931\\u8D25\")}finally{n(!1)}};return Fe.default.createElement(xe.Card,null,Fe.default.createElement(xe.Space,{wrap:!0,style:{marginBottom:12}},Fe.default.createElement(xe.Tag,{color:r.hasCookie?\"success\":\"default\"},r.hasCookie?\"\\u5DF2\\u586B\\u5199 Cookie\":\"\\u672A\\u586B\\u5199 Cookie\"),Fe.default.createElement(xe.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",r.cookieLength),r.valid===!0&&Fe.default.createElement(xe.Tag,{color:\"success\"},\"Cookie \\u767B\\u5F55\\u6709\\u6548\",r.username?\" \\xB7 \".concat(r.username):\"\"),r.resourceGate===\"unlocked\"&&Fe.default.createElement(xe.Tag,{color:\"success\"},\"\\u62BD\\u68C0\\u8D44\\u6E90\\u5DF2\\u89E3\\u9501\"),r.resourceGate===\"comment_required\"&&Fe.default.createElement(xe.Tag,{color:\"warning\"},\"\\u8D44\\u6E90\\u9700\\u8BC4\\u8BBA\\u89E3\\u9501\"),r.resourceGate===\"unknown\"&&Fe.default.createElement(xe.Tag,{color:\"default\"},\"\\u8D44\\u6E90\\u72B6\\u6001\\u672A\\u77E5\")),Fe.default.createElement(xe.Form,{form:e,layout:\"vertical\",initialValues:{autoReply:!0}},Fe.default.createElement(xe.Form.Item,{label:\"\\u7AD9\\u70B9 Cookie\",name:\"cookie\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 guangya.qsxy.top \\u767B\\u5F55 Cookie\"}],extra:\"\\u5728\\u6D4F\\u89C8\\u5668\\u767B\\u5F55 guangya.qsxy.top \\u540E\\uFF0C\\u590D\\u5236\\u5B8C\\u6574 Cookie\\u3002Cookie \\u5931\\u6548\\u540E\\u9700\\u91CD\\u65B0\\u586B\\u5199\\u3002\"},Fe.default.createElement(xe.Input.TextArea,{autoSize:{minRows:5,maxRows:10},placeholder:\"wordpress_logged_in_...=...; PHPSESSID=...\"})),Fe.default.createElement(xe.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u89E3\\u9501\\u8D44\\u6E90\",name:\"autoReply\",valuePropName:\"checked\"},Fe.default.createElement(xe.Switch,{checkedChildren:\"\\u5F00\\u542F\",unCheckedChildren:\"\\u5173\\u95ED\"})),Fe.default.createElement(xe.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\",name:\"replyMessage\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\"},{min:4,message:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\\u81F3\\u5C11\\u9700\\u8981 4 \\u4E2A\\u5B57\\u7B26\"},{max:120,message:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\\u4E0D\\u80FD\\u8D85\\u8FC7 120 \\u4E2A\\u5B57\\u7B26\"}]},Fe.default.createElement(xe.Input,{maxLength:120,showCount:!0,placeholder:\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"})),Fe.default.createElement(xe.Space,{wrap:!0},Fe.default.createElement(xe.Button,{type:\"primary\",loading:t,onClick:()=>i(!0)},\"\\u4FDD\\u5B58\\u5E76\\u9A8C\\u8BC1\"),Fe.default.createElement(xe.Button,{loading:t,onClick:()=>i(!1)},\"\\u4EC5\\u4FDD\\u5B58\"),Fe.default.createElement(xe.Button,{danger:!0,loading:t,onClick:s},\"\\u6E05\\u7A7A Cookie\"))))}var Ie=_(J(),1),$e=_(Be(),1),Vp=_(tt(),1);var ja=Vp.default.create({baseURL:\"/website\"});ja.interceptors.response.use(e=>{if(e.data.code!==0){let t=new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");throw t.responseData=e.data,t}return e.data.data});var vC=[\"button\",\"input\",\"textarea\",\"select\",\"option\",\"a\",'[contenteditable=\"true\"]','[role=\"button\"]','[role=\"switch\"]','[role=\"checkbox\"]','[role=\"combobox\"]'].join(\",\"),zp=({nativeEvent:e,currentTarget:t})=>{let n=e==null?void 0:e.target,r=n instanceof Element?n.closest(vC):null;return!r||r===t},Ha=class extends jt{};Ha.activators=jt.activators.map(e=>I(C({},e),{handler:(t,n)=>zp(t)&&e.handler(t,n)}));var qa=class extends Ht{};qa.activators=Ht.activators.map(e=>I(C({},e),{handler:(t,n)=>zp(t)&&e.handler(t,n)}));var yC=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:o,transition:a,isDragging:i}=ba({id:e[\"data-row-key\"]}),s=C(I(C({},e.style),{transform:$t.Translate.toString(o),transition:a,cursor:\"move\"}),i?{position:\"relative\",zIndex:9999}:{});return Ie.default.createElement(\"tr\",C(C(I(C({},e),{ref:r,style:s}),t),n))};function wC(e=[],t={}){let n=(t==null?void 0:t.classes)||{};return e.map((r,o)=>{let a=n[r.type_id]||{},i=Number.isFinite(Number(a.order))?Number(a.order):o+1;return{key:r.type_id,type_id:r.type_id,origin_name:r.type_name,custom_name:typeof a.name==\"string\"?a.name:\"\",hidden:a.hidden===!0,order:i}}).sort((r,o)=>r.order-o.order||r.origin_name.localeCompare(o.origin_name,\"zh-CN\"))}function CC(e=[]){let t={};return e.forEach((n,r)=>{t[n.type_id]={name:(n.custom_name||\"\").trim(),hidden:n.hidden===!0,order:r+1}}),{classes:t,updatedAt:Date.now()}}function Gs(){let[e,t]=(0,Ie.useState)([]),[n,r]=(0,Ie.useState)(!1),[o,a]=(0,Ie.useState)(!1),i=Fr(rn(Ha,{activationConstraint:{distance:4}}),rn(qa,{activationConstraint:{delay:200,tolerance:6}})),s=async()=>{r(!0);try{let u=await ja.get(\"/zhuiju/config\");t(wC((u==null?void 0:u.classes)||[],(u==null?void 0:u.config)||{}))}catch(u){console.error(u),$e.message.error(\"\\u52A0\\u8F7D\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{r(!1)}};(0,Ie.useEffect)(()=>{s()},[]);let l=({active:u,over:m})=>{!m||u.id===m.id||t(h=>{let x=h.findIndex(y=>y.key===u.id),v=h.findIndex(y=>y.key===m.id);return x<0||v<0?h:lt(h,x,v).map((y,b)=>I(C({},y),{order:b+1}))})},c=(0,Ie.useMemo)(()=>[{title:\"\\u5206\\u7C7B\\u540D\",dataIndex:\"origin_name\",render:(u,m)=>{var h;return Ie.default.createElement(\"div\",null,Ie.default.createElement(\"div\",{style:{fontWeight:600}},((h=m.custom_name)==null?void 0:h.trim())||m.origin_name),Ie.default.createElement(\"div\",{style:{fontSize:12,opacity:.65}},m.origin_name))}},{title:\"\\u91CD\\u547D\\u540D\",dataIndex:\"custom_name\",render:(u,m,h)=>Ie.default.createElement($e.Input,{placeholder:m.origin_name,value:u,onChange:x=>{let v=[...e];v[h].custom_name=x.target.value,t(v)}}),width:220},{title:\"\\u5C4F\\u853D\",dataIndex:\"hidden\",width:80,align:\"center\",render:(u,m,h)=>Ie.default.createElement($e.Switch,{checked:u,onChange:x=>{let v=[...e];v[h].hidden=x,t(v)}})},{title:\"\\u6392\\u5E8F\",dataIndex:\"order\",width:90,align:\"center\",render:(u,m,h)=>Ie.default.createElement($e.Space,{size:2},Ie.default.createElement($e.Button,{icon:Ie.default.createElement(At,null),size:\"small\",type:\"text\",disabled:h===0,onClick:()=>t(x=>lt(x,h,h-1).map((v,y)=>I(C({},v),{order:y+1})))}),Ie.default.createElement($e.Button,{icon:Ie.default.createElement(Ft,null),size:\"small\",type:\"text\",disabled:h===e.length-1,onClick:()=>t(x=>lt(x,h,h+1).map((v,y)=>I(C({},v),{order:y+1})))}))}],[e]),f=async()=>{a(!0);try{await ja.put(\"/zhuiju/config\",CC(e)),$e.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\\uFF0Czhuiju \\u5206\\u7C7B\\u81EA\\u5B9A\\u4E49\\u5DF2\\u5165\\u5E93\"),await s()}catch(u){console.error(u),$e.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{a(!1)}},d=async()=>{a(!0);try{await ja.delete(\"/zhuiju/config\"),$e.message.success(\"\\u5DF2\\u91CD\\u7F6E\\u4E3A\\u9ED8\\u8BA4\\u5206\\u7C7B\"),await s()}catch(u){console.error(u),$e.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{a(!1)}};return Ie.default.createElement(\"div\",null,Ie.default.createElement(\"div\",{className:\"force-light-table-header\"},Ie.default.createElement(Ar,{sensors:i,modifiers:[Pr],onDragEnd:l},Ie.default.createElement(Br,{items:e.map(u=>u.key),strategy:_r},Ie.default.createElement($e.Table,{components:{body:{row:yC}},rowKey:\"key\",loading:n,columns:c,dataSource:e,pagination:!1,size:\"small\",scroll:{x:\"max-content\",y:420}})))),Ie.default.createElement($e.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},Ie.default.createElement($e.Button,{icon:Ie.default.createElement(vn,null),block:!0,onClick:s,disabled:o},\"\\u5237\\u65B0\\u5206\\u7C7B\\u5217\\u8868\"),Ie.default.createElement($e.Button,{type:\"primary\",block:!0,loading:o,onClick:f},\"\\u4FDD\\u5B58\"),Ie.default.createElement($e.Button,{danger:!0,block:!0,loading:o,onClick:d},\"\\u91CD\\u7F6E\")))}var ge=_(J(),1),ce=_(Be(),1),$p=_(tt(),1),lo=$p.default.create({baseURL:\"/website\"});lo.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data},e=>Promise.reject(e));function js(){let[e]=ce.Form.useForm(),[t,n]=(0,ge.useState)(!1),[r,o]=(0,ge.useState)(!1),[a,i]=(0,ge.useState)(null),s=async()=>{let{data:d}=await lo.get(\"/yingchao/config\");e.setFieldsValue({tmdb_api_key:d.tmdb_api_key||\"\",tmdb_bearer_token:d.tmdb_bearer_token||\"\",tmdb_auth_mode:d.tmdb_auth_mode||\"\",tmdb_language:d.tmdb_language||\"zh-CN\",tmdb_region:d.tmdb_region||\"CN\",hdhive_api_base_url:d.hdhive_api_base_url||\"https://hdhive.com/api/open\",hdhive_api_key:d.hdhive_api_key||\"\",hdhive_proxy_url:d.hdhive_proxy_url||\"\",hdhive_username:d.hdhive_username||\"\",hdhive_password:\"\",billing_mode:d.billing_mode||\"all\",hide_invalid:d.hide_invalid!==!1})};(0,ge.useEffect)(()=>{s()},[]);let l=async()=>{n(!0);try{let d=await e.validateFields();await lo.put(\"/yingchao/config\",d),ce.message.success(\"\\u5F71\\u5DE2\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\"),await s()}finally{n(!1)}},c=async()=>{n(!0);try{await lo.delete(\"/yingchao/config\"),ce.message.success(\"\\u5F71\\u5DE2\\u914D\\u7F6E\\u5DF2\\u91CD\\u7F6E\"),await s()}finally{n(!1)}},f=async d=>{var u;o(!0),i(null);try{let m=await lo.post(\"/yingchao/checkin\",{gamble:d});ce.message.success(m.message||\"\\u7B7E\\u5230\\u6210\\u529F\"),i({type:\"success\",message:m.message,logs:((u=m.data)==null?void 0:u.logs)||[]})}catch(m){ce.message.error(m.message||\"\\u7B7E\\u5230\\u5931\\u8D25\"),i({type:\"error\",message:m.message||\"\\u7B7E\\u5230\\u5931\\u8D25\",logs:[]})}finally{o(!1)}};return ge.default.createElement(ce.Card,{variant:\"borderless\"},ge.default.createElement(ce.Form,{form:e,layout:\"vertical\"},ge.default.createElement(ce.Form.Item,{label:\"TMDB API Key\",name:\"tmdb_api_key\"},ge.default.createElement(ce.Input,{placeholder:\"\\u672A\\u586B\\u5219\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C TMDB_API_KEY\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive API \\u5730\\u5740\",name:\"hdhive_api_base_url\"},ge.default.createElement(ce.Input,{placeholder:\"https://hdhive.com/api/open\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive API Key\",name:\"hdhive_api_key\"},ge.default.createElement(ce.Input.Password,{placeholder:\"\\u5FC5\\u586B HDHIVE_API_KEY\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive \\u4EE3\\u7406 URL\",name:\"hdhive_proxy_url\"},ge.default.createElement(ce.Input,{placeholder:\"\\u4F8B\\u5982 http://127.0.0.1:7890 \\u6216 http://user:pass@host:port\\uFF08\\u7B7E\\u5230\\u4E5F\\u4F1A\\u590D\\u7528\\uFF09\"})),ge.default.createElement(ce.Card,{size:\"small\",type:\"inner\",title:\"\\u6BCF\\u65E5\\u7B7E\\u5230\",style:{marginBottom:16}},ge.default.createElement(ce.Form.Item,{label:\"HDHive \\u7528\\u6237\\u540D\",name:\"hdhive_username\"},ge.default.createElement(ce.Input,{placeholder:\"HDHive \\u7F51\\u7AD9\\u8D26\\u53F7\",autoComplete:\"username\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive \\u5BC6\\u7801\",name:\"hdhive_password\",extra:\"\\u51FA\\u4E8E\\u5B89\\u5168\\u8003\\u8651\\uFF0C\\u5BC6\\u7801\\u4E0D\\u56DE\\u663E\\uFF1B\\u7559\\u7A7A\\u4FDD\\u5B58\\u8868\\u793A\\u6CBF\\u7528\\u5DF2\\u5B58\\u5BC6\\u7801\"},ge.default.createElement(ce.Input.Password,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u4FEE\\u6539\",autoComplete:\"new-password\"})),ge.default.createElement(ce.Space,{wrap:!0},ge.default.createElement(ce.Button,{onClick:()=>f(!1),loading:r},\"\\u7ACB\\u5373\\u7B7E\\u5230\"),ge.default.createElement(ce.Button,{onClick:()=>f(!0),loading:r,danger:!0},\"\\u8D4C\\u72D7\\u7B7E\\u5230\")),a&&ge.default.createElement(ce.Alert,{style:{marginTop:12},type:a.type,showIcon:!0,message:a.message,description:a.logs&&a.logs.length>0?ge.default.createElement(\"pre\",{style:{margin:0,whiteSpace:\"pre-wrap\",fontSize:12}},a.logs.join(\"\\n\")):null})),ge.default.createElement(ce.Form.Item,{label:\"\\u8D44\\u6E90\\u8FC7\\u6EE4\",name:\"billing_mode\"},ge.default.createElement(ce.Radio.Group,null,ge.default.createElement(ce.Space,{direction:\"vertical\"},ge.default.createElement(ce.Radio,{value:\"all\"},\"\\u5168\\u90E8\\u663E\\u793A\"),ge.default.createElement(ce.Radio,{value:\"free_only\"},\"\\u4EC5\\u514D\\u8D39\\u8D44\\u6E90\"),ge.default.createElement(ce.Radio,{value:\"paid_only\"},\"\\u4EC5\\u4ED8\\u8D39\\u8D44\\u6E90\")))),ge.default.createElement(ce.Form.Item,{label:\"\\u9690\\u85CF\\u65E0\\u6548\\u8D44\\u6E90\",name:\"hide_invalid\",valuePropName:\"checked\"},ge.default.createElement(ce.Switch,null)),ge.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},ge.default.createElement(ce.Button,{type:\"primary\",onClick:l,loading:t},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),ge.default.createElement(ce.Button,{danger:!0,onClick:c,loading:t},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))}var j=_(J(),1),se=_(Be(),1);var Up=_(tt(),1),{Text:ln}=se.Typography,Bn=Up.default.create({baseURL:\"/website/dudb\"}),Wp=3;Bn.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw se.message.error(r),new Error(r)}return e.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return se.message.error(t),Promise.reject(e)});function SC(e){if(!e)return\"-\";try{return new Date(Number(e)).toLocaleString()}catch(t){return\"-\"}}function Ya(e){let t=Number(e);return!Number.isFinite(t)||t<=0?Wp:Math.max(1,Math.floor(t))}function OC(){let[e,t]=(0,j.useState)(!1),[n,r]=(0,j.useState)(!1),[o,a]=(0,j.useState)(!1),[i,s]=(0,j.useState)(!1),[l,c]=(0,j.useState)([]),[f,d]=(0,j.useState)(\"\"),[u,m]=(0,j.useState)(!1),[h,x]=(0,j.useState)(!1),[v,y]=(0,j.useState)(Wp),b=(0,j.useCallback)(async()=>{var N,U,K;try{t(!0);let[de,ve]=await Promise.all([Bn.get(\"/list\"),Bn.get(\"/settings\")]);c(((N=de.data)==null?void 0:N.files)||[]),d(((U=de.data)==null?void 0:U.dir)||\"\"),y(Ya((K=ve.data)==null?void 0:K.searchDbLimit)),m(!1),x(!1)}catch(de){}finally{t(!1)}},[]);(0,j.useEffect)(()=>{b()},[b]);let S=(0,j.useCallback)((N,U)=>{c(K=>{let de=[...K],ve=N+U;return ve<0||ve>=de.length?K:([de[N],de[ve]]=[de[ve],de[N]],de)}),m(!0)},[]),w=(0,j.useCallback)(async()=>{try{r(!0),await Bn.put(\"/order\",{order:l.map(N=>N.name)}),m(!1),se.message.success(\"\\u6392\\u5E8F\\u5DF2\\u4FDD\\u5B58\")}catch(N){}finally{r(!1)}},[l]),D=(0,j.useCallback)(async()=>{var U;let N=Ya(v);try{a(!0);let K=await Bn.post(\"/settings\",{searchDbLimit:N});y(Ya((U=K.data)==null?void 0:U.searchDbLimit)),x(!1),se.message.success(\"\\u641C\\u7D22\\u8BBE\\u7F6E\\u5DF2\\u4FDD\\u5B58\")}catch(K){}finally{a(!1)}},[v]),O=(0,j.useCallback)(N=>{y(Ya(N)),x(!0)},[]),F=(0,j.useCallback)(async N=>{try{await Bn.delete(\"/file/\".concat(encodeURIComponent(N))),se.message.success(\"\\u5DF2\\u5220\\u9664 \".concat(N)),await b()}catch(U){}},[b]),T=(0,j.useCallback)(N=>new Promise(U=>{se.Modal.confirm({title:\"\\u8986\\u76D6\\u5DF2\\u6709\\u6587\\u4EF6 \".concat(N,\"?\"),content:\"\\u540C\\u540D .db \\u6587\\u4EF6\\u5DF2\\u5B58\\u5728\\uFF0C\\u7EE7\\u7EED\\u4E0A\\u4F20\\u4F1A\\u66FF\\u6362\\u78C1\\u76D8\\u4E0A\\u7684\\u539F\\u6587\\u4EF6\\u3002\",okText:\"\\u8986\\u76D6\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\",onOk:()=>U(!0),onCancel:()=>U(!1)})}),[]),P=(0,j.useCallback)(async({file:N,onSuccess:U,onError:K,onProgress:de})=>{let ve=l.some(Ue=>Ue.name===N.name),Oe=!1;if(ve&&(Oe=await T(N.name),!Oe)){K==null||K(new Error(\"\\u7528\\u6237\\u53D6\\u6D88\\u8986\\u76D6\"));return}let qe=new FormData;qe.append(\"file\",N);try{s(!0),await Bn.post(\"/upload\".concat(Oe?\"?overwrite=1\":\"\"),qe,{headers:{\"Content-Type\":\"multipart/form-data\"},onUploadProgress:Ue=>{Ue.total&&(de==null||de({percent:Math.round(Ue.loaded/Ue.total*100)}))}}),se.message.success(\"\".concat(Oe?\"\\u8986\\u76D6\":\"\\u4E0A\\u4F20\",\"\\u6210\\u529F: \").concat(N.name)),U==null||U({},N),await b()}catch(Ue){K==null||K(Ue)}finally{s(!1)}},[T,l,b]),V=(0,j.useCallback)(N=>/\\.db$/i.test(N.name)?!0:(se.message.error(\"\\u53EA\\u80FD\\u4E0A\\u4F20 .db \\u6587\\u4EF6\"),se.Upload.LIST_IGNORE),[]),E=(0,j.useMemo)(()=>[{title:\"#\",width:50,responsive:[\"sm\"],render:(N,U,K)=>j.default.createElement(ln,{type:\"secondary\"},K+1)},{title:\"\\u6587\\u4EF6\\u540D\",dataIndex:\"name\",render:N=>j.default.createElement(ln,{strong:!0,style:{wordBreak:\"break-all\"}},N)},{title:\"\\u5927\\u5C0F\",dataIndex:\"size_str\",width:90,responsive:[\"sm\"],render:N=>j.default.createElement(se.Tag,{color:\"blue\"},N)},{title:\"\\u4FEE\\u6539\\u65F6\\u95F4\",dataIndex:\"mtime\",width:180,responsive:[\"md\"],render:N=>j.default.createElement(ln,{type:\"secondary\",style:{fontSize:12}},SC(N))},{title:\"\\u64CD\\u4F5C\",width:132,fixed:\"right\",align:\"center\",render:(N,U,K)=>j.default.createElement(se.Space,{size:4},j.default.createElement(se.Tooltip,{title:\"\\u4E0A\\u79FB\"},j.default.createElement(se.Button,{size:\"small\",icon:j.default.createElement(gn,null),disabled:K===0,onClick:()=>S(K,-1)})),j.default.createElement(se.Tooltip,{title:\"\\u4E0B\\u79FB\"},j.default.createElement(se.Button,{size:\"small\",icon:j.default.createElement(mn,null),disabled:K===l.length-1,onClick:()=>S(K,1)})),j.default.createElement(se.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664 \".concat(U.name,\"?\"),description:\"\\u6587\\u4EF6\\u4F1A\\u4ECE\\u78C1\\u76D8\\u6C38\\u4E45\\u79FB\\u9664\",onConfirm:()=>F(U.name),okText:\"\\u5220\\u9664\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\"},j.default.createElement(se.Button,{size:\"small\",danger:!0,icon:j.default.createElement(je,null)})))}],[l.length,S,F]);return j.default.createElement(se.Spin,{spinning:e,tip:\"\\u52A0\\u8F7D\\u4E2D...\"},j.default.createElement(se.Card,{title:\"\\u672C\\u5730 DB \\u6587\\u4EF6\\u7BA1\\u7406\",extra:j.default.createElement(se.Space,{wrap:!0},j.default.createElement(se.Upload,{customRequest:P,beforeUpload:V,accept:\".db\",showUploadList:!1,multiple:!0},j.default.createElement(se.Button,{type:\"primary\",icon:j.default.createElement(Cr,null),loading:i},\"\\u4E0A\\u4F20 DB\")),j.default.createElement(se.Button,{icon:j.default.createElement(vn,null),onClick:b},\"\\u5237\\u65B0\"),j.default.createElement(se.Button,{type:\"primary\",ghost:!0,icon:j.default.createElement(tn,null),loading:n,disabled:!u,onClick:w},\"\\u4FDD\\u5B58\\u6392\\u5E8F\"))},j.default.createElement(se.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:16},message:j.default.createElement(ln,{style:{fontSize:13}},\"\\u4E0A\\u4F20\\u5230\\u56FA\\u5B9A\\u76EE\\u5F55\\uFF1A\",j.default.createElement(ln,{code:!0,copyable:!0},f||\"(\\u672A\\u52A0\\u8F7D)\")),description:j.default.createElement(\"div\",{style:{fontSize:12}},j.default.createElement(\"p\",{style:{margin:0}},\"1. \\u4EC5\\u8BC6\\u522B .db \\u6587\\u4EF6\\uFF0C\\u4E14\\u6587\\u4EF6\\u5927\\u5C0F \\u2265 1KB\"),j.default.createElement(\"p\",{style:{margin:0}},'2. \\u6392\\u5E8F\\u901A\\u8FC7 \\u2191\\u2193 \\u8C03\\u6574\\uFF0C\\u8C03\\u6574\\u540E\\u70B9\"\\u4FDD\\u5B58\\u6392\\u5E8F\"\\u6301\\u4E45\\u5316'),j.default.createElement(\"p\",{style:{margin:0}},\"3. \\u5220\\u9664\\u4F1A\\u7ACB\\u5373\\u4ECE\\u78C1\\u76D8\\u79FB\\u9664\\uFF0C\\u4E0D\\u53EF\\u6062\\u590D\"))}),j.default.createElement(se.Space,{wrap:!0,align:\"center\",style:{marginBottom:16}},j.default.createElement(ln,{strong:!0},\"\\u641C\\u7D22\\u8BBE\\u7F6E\"),j.default.createElement(ln,{type:\"secondary\"},\"\\u53EA\\u641C\\u7D22\\u6392\\u5E8F\\u524D\"),j.default.createElement(se.InputNumber,{min:1,step:1,precision:0,value:v,onChange:O,style:{width:120}}),j.default.createElement(ln,{type:\"secondary\"},\"\\u4E2A DB \\u6587\\u4EF6\"),j.default.createElement(se.Button,{icon:j.default.createElement(tn,null),loading:o,disabled:!h,onClick:D},\"\\u4FDD\\u5B58\\u8BBE\\u7F6E\")),l.length===0?j.default.createElement(se.Empty,{description:\"\\u8FD8\\u6CA1\\u6709 DB \\u6587\\u4EF6\\uFF0C\\u70B9\\u4E0A\\u4F20\\u5F00\\u59CB\"}):j.default.createElement(se.Table,{rowKey:\"name\",size:\"small\",dataSource:l,columns:E,pagination:!1,scroll:{x:420}})))}var Gp=j.default.memo(OC);var te=_(J(),1),ue=_(Be(),1);var jp=_(tt(),1),{Text:sr}=ue.Typography,co=jp.default.create({baseURL:\"/website/js\"});co.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw ue.message.error(r),new Error(r)}return e.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return ue.message.error(t),Promise.reject(e)});function DC(e){if(!e)return\"-\";try{return new Date(Number(e)).toLocaleString()}catch(t){return\"-\"}}function IC(){let[e,t]=(0,te.useState)(!1),[n,r]=(0,te.useState)(!1),[o,a]=(0,te.useState)(!1),[i,s]=(0,te.useState)([]),[l,c]=(0,te.useState)(\"\"),[f,d]=(0,te.useState)(!1),u=(0,te.useCallback)(async()=>{var w,D;try{t(!0);let O=await co.get(\"/list\");s(((w=O.data)==null?void 0:w.files)||[]),c(((D=O.data)==null?void 0:D.dir)||\"\"),d(!1)}catch(O){}finally{t(!1)}},[]);(0,te.useEffect)(()=>{u()},[u]);let m=(0,te.useCallback)((w,D)=>{s(O=>{let F=[...O],T=w+D;return T<0||T>=F.length?O:([F[w],F[T]]=[F[T],F[w]],F)}),d(!0)},[]),h=(0,te.useCallback)(async()=>{try{r(!0),await co.put(\"/order\",{order:i.map(w=>w.name)}),d(!1),ue.message.success(\"\\u6392\\u5E8F\\u5DF2\\u4FDD\\u5B58\")}catch(w){}finally{r(!1)}},[i]),x=(0,te.useCallback)(async w=>{try{await co.delete(\"/file/\".concat(encodeURIComponent(w))),ue.message.success(\"\\u5DF2\\u5220\\u9664 \".concat(w)),await u()}catch(D){}},[u]),v=(0,te.useCallback)(w=>new Promise(D=>{ue.Modal.confirm({title:\"\\u8986\\u76D6\\u5DF2\\u6709\\u6587\\u4EF6 \".concat(w,\"?\"),content:\"\\u540C\\u540D .js \\u6587\\u4EF6\\u5DF2\\u5B58\\u5728\\uFF0C\\u7EE7\\u7EED\\u4E0A\\u4F20\\u4F1A\\u66FF\\u6362\\u78C1\\u76D8\\u4E0A\\u7684\\u539F\\u6587\\u4EF6\\u3002\",okText:\"\\u8986\\u76D6\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\",onOk:()=>D(!0),onCancel:()=>D(!1)})}),[]),y=(0,te.useCallback)(async({file:w,onSuccess:D,onError:O,onProgress:F})=>{let T=i.some(E=>E.name===w.name),P=!1;if(T&&(P=await v(w.name),!P)){O==null||O(new Error(\"\\u7528\\u6237\\u53D6\\u6D88\\u8986\\u76D6\"));return}let V=new FormData;V.append(\"file\",w);try{a(!0),await co.post(\"/upload\".concat(P?\"?overwrite=1\":\"\"),V,{headers:{\"Content-Type\":\"multipart/form-data\"},onUploadProgress:E=>{E.total&&(F==null||F({percent:Math.round(E.loaded/E.total*100)}))}}),ue.message.success(\"\".concat(P?\"\\u8986\\u76D6\":\"\\u4E0A\\u4F20\",\"\\u6210\\u529F: \").concat(w.name)),D==null||D({},w),await u()}catch(E){O==null||O(E)}finally{a(!1)}},[v,i,u]),b=(0,te.useCallback)(w=>/\\.js$/i.test(w.name)?!0:(ue.message.error(\"\\u53EA\\u80FD\\u4E0A\\u4F20 .js \\u6587\\u4EF6\"),ue.Upload.LIST_IGNORE),[]),S=(0,te.useMemo)(()=>[{title:\"#\",width:50,responsive:[\"sm\"],render:(w,D,O)=>te.default.createElement(sr,{type:\"secondary\"},O+1)},{title:\"\\u6587\\u4EF6\\u540D\",dataIndex:\"name\",render:(w,D)=>te.default.createElement(\"div\",null,te.default.createElement(sr,{strong:!0,style:{wordBreak:\"break-all\"}},w),te.default.createElement(\"br\",null),te.default.createElement(sr,{type:\"secondary\",style:{fontSize:12}},\"key: \",D.key))},{title:\"\\u5927\\u5C0F\",dataIndex:\"size_str\",width:90,responsive:[\"sm\"],render:w=>te.default.createElement(ue.Tag,{color:\"blue\"},w)},{title:\"\\u4FEE\\u6539\\u65F6\\u95F4\",dataIndex:\"mtime\",width:180,responsive:[\"md\"],render:w=>te.default.createElement(sr,{type:\"secondary\",style:{fontSize:12}},DC(w))},{title:\"\\u64CD\\u4F5C\",width:132,fixed:\"right\",align:\"center\",render:(w,D,O)=>te.default.createElement(ue.Space,{size:4},te.default.createElement(ue.Tooltip,{title:\"\\u4E0A\\u79FB\"},te.default.createElement(ue.Button,{size:\"small\",icon:te.default.createElement(gn,null),disabled:O===0,onClick:()=>m(O,-1)})),te.default.createElement(ue.Tooltip,{title:\"\\u4E0B\\u79FB\"},te.default.createElement(ue.Button,{size:\"small\",icon:te.default.createElement(mn,null),disabled:O===i.length-1,onClick:()=>m(O,1)})),te.default.createElement(ue.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664 \".concat(D.name,\"?\"),description:\"\\u6587\\u4EF6\\u4F1A\\u4ECE\\u78C1\\u76D8\\u6C38\\u4E45\\u79FB\\u9664\",onConfirm:()=>x(D.name),okText:\"\\u5220\\u9664\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\"},te.default.createElement(ue.Button,{size:\"small\",danger:!0,icon:te.default.createElement(je,null)})))}],[i.length,m,x]);return te.default.createElement(ue.Spin,{spinning:e,tip:\"\\u52A0\\u8F7D\\u4E2D...\"},te.default.createElement(ue.Card,{title:\"\\u672C\\u5730 JS \\u6587\\u4EF6\\u7BA1\\u7406\",extra:te.default.createElement(ue.Space,{wrap:!0},te.default.createElement(ue.Upload,{customRequest:y,beforeUpload:b,accept:\"\",showUploadList:!1,multiple:!0},te.default.createElement(ue.Button,{type:\"primary\",icon:te.default.createElement(Cr,null),loading:o},\"\\u4E0A\\u4F20 JS\")),te.default.createElement(ue.Button,{icon:te.default.createElement(vn,null),onClick:u},\"\\u5237\\u65B0\"),te.default.createElement(ue.Button,{type:\"primary\",ghost:!0,icon:te.default.createElement(tn,null),loading:n,disabled:!f,onClick:h},\"\\u4FDD\\u5B58\\u6392\\u5E8F\"))},te.default.createElement(ue.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:16},message:te.default.createElement(sr,{style:{fontSize:13}},\"\\u4E0A\\u4F20\\u5230\\u56FA\\u5B9A\\u76EE\\u5F55\\uFF1A\",te.default.createElement(sr,{code:!0,copyable:!0},l||\"(\\u672A\\u52A0\\u8F7D)\")),description:te.default.createElement(\"div\",{style:{fontSize:12}},te.default.createElement(\"p\",{style:{margin:0}},\"\\u4EC5\\u8BC6\\u522B .js \\u6587\\u4EF6\\uFF1B\\u6587\\u4EF6\\u540D\\u4F1A\\u4F5C\\u4E3A\\u7AD9\\u70B9 key \\u7684\\u57FA\\u7840\\u503C\"))}),i.length===0?te.default.createElement(ue.Empty,{description:\"\\u8FD8\\u6CA1\\u6709 JS \\u6587\\u4EF6\\uFF0C\\u70B9\\u4E0A\\u4F20\\u5F00\\u59CB\"}):te.default.createElement(ue.Table,{rowKey:\"name\",size:\"small\",dataSource:i,columns:S,pagination:!1,scroll:{x:420}})))}var Hp=te.default.memo(IC);var Se=_(J(),1),Te=_(Be(),1);var{useToken:EC}=Te.theme,Hs=\"/website/alist_tvbox/config\";function TC(){let[e]=Te.Form.useForm(),[t,n]=(0,Se.useState)(!1),{token:r}=EC(),o=async()=>{n(!0);try{let l=await(await fetch(Hs)).json();if(l.code===0){let c=l.data||{};e.setFieldsValue({base_url:c.base_url||\"\",token:c.token||\"\",custom_classes:c.custom_classes||\"\"})}}catch(s){console.error(\"\\u52A0\\u8F7D AListTvbox \\u914D\\u7F6E\\u5931\\u8D25:\",s),Te.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{n(!1)}},a=async()=>{n(!0);try{let s=await e.validateFields(),l={base_url:String(s.base_url||\"\").trim(),token:String(s.token||\"\").trim(),custom_classes:String(s.custom_classes||\"\").trim()},f=await(await fetch(Hs,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(l)})).json();if(f.code===0)Te.message.success(\"AListTvbox \\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\");else throw new Error(f.message||\"\\u4FDD\\u5B58\\u5931\\u8D25\")}catch(s){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",s),Te.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(s.message))}finally{n(!1)}},i=async()=>{n(!0);try{let l=await(await fetch(Hs,{method:\"DELETE\"})).json();if(l.code===0)Te.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await o();else throw new Error(l.message)}catch(s){Te.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+s.message)}finally{n(!1)}};return(0,Se.useEffect)(()=>{o()},[]),Se.default.createElement(Te.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#1677ff\"},components:{Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},Se.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},Se.default.createElement(\"div\",{style:{marginBottom:24}},Se.default.createElement(Te.Alert,{message:\"AListTvbox \\u8BF4\\u660E\",description:Se.default.createElement(\"div\",null,Se.default.createElement(\"p\",null,\"\\u2022 \",Se.default.createElement(\"strong\",null,\"BASE_URL\"),\"\\uFF1AAList Tvbox \\u670D\\u52A1\\u5730\\u5740\\uFF0C\\u9ED8\\u8BA4 http://127.0.0.1:4567\"),Se.default.createElement(\"p\",null,\"\\u2022 \",Se.default.createElement(\"strong\",null,\"Token\"),\"\\uFF1AAList\\u7AD9\\u70B9 \\u2192 \\u7F16\\u8F91 \\u2192 \\u8BA4\\u8BC1Token\"),Se.default.createElement(\"p\",null,\"\\u2022 \",Se.default.createElement(\"strong\",null,\"\\u81EA\\u5B9A\\u4E49\\u5206\\u7C7B\"),'\\uFF1AJSON \\u6570\\u7EC4\\uFF0C\\u5982 [{\"type_id\":\"1\",\"type_name\":\"\\u7535\\u5F71\"}]\\uFF0C\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4\\u5206\\u7C7B')),type:\"info\",showIcon:!0,icon:Se.default.createElement(Gn,null),style:{background:r.colorPrimaryBg,border:\"1px solid \".concat(r.colorPrimaryBorder),borderRadius:r.borderRadiusLG,marginBottom:24}})),Se.default.createElement(Te.Form,{form:e,layout:\"vertical\"},Se.default.createElement(Te.Form.Item,{label:Se.default.createElement(\"span\",null,Se.default.createElement(bn,{style:{marginRight:6}}),\"BASE_URL\"),name:\"base_url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 BASE_URL\"}],tooltip:\"AList Tvbox \\u63A5\\u53E3\\u5730\\u5740\\uFF0C\\u5982 http://127.0.0.1:4567\"},Se.default.createElement(Te.Input,{placeholder:\"http://127.0.0.1:4567\"})),Se.default.createElement(Te.Form.Item,{label:Se.default.createElement(\"span\",null,Se.default.createElement(jn,{style:{marginRight:6}}),\"Token (XIAOYA_TOKEN)\"),name:\"token\",tooltip:\"AListTvbox \\u8BA4\\u8BC1Token\"},Se.default.createElement(Te.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165 AListTvbox Token\",rows:2,style:{fontFamily:\"monospace\",fontSize:13}})),Se.default.createElement(Te.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u5206\\u7C7B (JSON)\",name:\"custom_classes\",tooltip:'JSON \\u6570\\u7EC4\\uFF0C\\u5982 [{\"type_id\":\"1\",\"type_name\":\"\\u7535\\u5F71\"}]\\uFF0C\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4\\u5206\\u7C7B'},Se.default.createElement(Te.Input.TextArea,{rows:4,placeholder:'[{\"type_id\":\"1\",\"type_name\":\"\\u7535\\u5F71\"}]',style:{fontFamily:\"monospace\",fontSize:12}})),Se.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:r.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(r.colorBorderSecondary),marginTop:24,zIndex:10}},Se.default.createElement(Te.Space,{size:\"middle\"},Se.default.createElement(Te.Button,{type:\"primary\",onClick:a,loading:t,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(22,119,255,0.2)\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),Se.default.createElement(Te.Button,{onClick:i,loading:t,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var qp=TC;var he=_(J(),1),me=_(Be(),1),Yp=_(tt(),1);var{Paragraph:kC,Text:Ka}=me.Typography,NC=new Set([\"sharemount\",\"115share\",\"alishare\",\"quarkshare\",\"ucshare\",\"123share\",\"139share\",\"baidushare\",\"smb\"]),FC={title:\"\\u5408\\u96C6\\u6302\\u8F7D\\u914D\\u7F6E\",baseURL:\"/website/sharemount\",success:\"\\u5408\\u96C6\\u6302\\u8F7D\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\",maxBatchSize:5e3,label:\"\\u6302\\u8F7D\\u5217\\u8868\",example:\"115\\u5408\\u96C6 \\u539F\\u76D8 https://115.com/s/example?password=1234\",example2:\"\\u963F\\u91CC\\u5408\\u96C6 \\u539F\\u76D8/\\u7EAA\\u5F55\\u7247 https://www.alipan.com/s/example\",example3:\"SMB\\u5408\\u96C6 # smb://192.168.1.10/Videos\"},AC={mycloud:{title:\"\\u6211\\u7684\\u7F51\\u76D8\",baseURL:\"/website/mycloud\",success:\"\\u6211\\u7684\\u7F51\\u76D8\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\",label:\"\\u7F51\\u76D8\\u5206\\u7C7B\\u5217\\u8868\",hideBatch:!0,example:\"\\u6211\\u7684\\u767E\\u5EA6 0\\u3001\\u6211\\u7684\\u5938\\u514B 0\\u3001\\u6211\\u7684\\u963F\\u91CC 0\\u3001\\u6211\\u7684115 0\\u3001\\u6211\\u7684123 0\\u3001\\u6211\\u7684\\u5929\\u7FFC 0\\u3001\\u6211\\u7684UC 0\\u3001\\u6211\\u7684\\u8FC5\\u96F7 0\\u3001\\u6211\\u7684\\u5149\\u9E2D 0\",example2:\"\\u6211\\u7684\\u767E\\u5EA6 /\\u7535\\u5F71\\u3001\\u6211\\u7684\\u5938\\u514B 63f8xxxx\\u3001\\u6211\\u7684\\u963F\\u91CC 642fxxxx\\u3001\\u6211\\u7684115 258xxxx\\u3001\\u6211\\u7684123 123456\\u3001\\u6211\\u7684\\u5929\\u7FFC 67890\\u3001\\u6211\\u7684UC 63f8xxxx\\u3001\\u6211\\u7684\\u8FC5\\u96F7 VODxxxxx\",desc:\"\\u6309\\u987A\\u5E8F\\u586B\\u5199\\u5206\\u7C7B\\uFF0C\\u683C\\u5F0F\\u4E3A\\u201C\\u5206\\u7C7B\\u540D\\u79F0 \\u76EE\\u5F55\\u6807\\u8BC6\\u201D\\uFF0C\\u652F\\u6301\\u6362\\u884C\\u3001\\u987F\\u53F7\\u6216\\u9017\\u53F7\\u5206\\u9694\\uFF1B0 \\u8868\\u793A\\u6302\\u8F7D\\u6839\\u76EE\\u5F55\\u3002\\u767E\\u5EA6\\u56FA\\u5B9A\\u76EE\\u5F55\\u586B\\u5199\\u76EE\\u5F55\\u8DEF\\u5F84\\uFF0C\\u5982 /\\u7535\\u5F71\\uFF1B\\u5176\\u4ED6\\u7F51\\u76D8\\u586B\\u5199\\u76EE\\u5F55 ID\\uFF1A\\u963F\\u91CC file_id\\uFF0C\\u5938\\u514B\\u548C UC \\u586B fid\\uFF0C115 \\u586B cid\\uFF0C123 \\u586B FileId\\uFF0C\\u5929\\u7FFC\\u586B\\u76EE\\u5F55 id\\uFF0C\\u8FC5\\u96F7\\u548C\\u5149\\u9E2D\\u586B\\u6587\\u4EF6\\u5939 id\\u3002\\u9700\\u8981\\u6302\\u8F7D\\u591A\\u4E2A\\u76EE\\u5F55\\u65F6\\u91CD\\u590D\\u586B\\u5199\\u540C\\u4E00\\u5206\\u7C7B\\u540D\\uFF0C\\u4F8B\\u5982\\u201C\\u6211\\u7684\\u767E\\u5EA6 /\\u7535\\u5F71\\u3001\\u6211\\u7684\\u767E\\u5EA6 /\\u7535\\u89C6\\u5267\\u201D\\uFF1B\\u5206\\u7C7B\\u5217\\u8868\\u53EA\\u663E\\u793A\\u4E00\\u4E2A\\u201C\\u6211\\u7684\\u767E\\u5EA6\\u201D\\uFF0C\\u76EE\\u5F55\\u901A\\u8FC7\\u8BE5\\u5206\\u7C7B\\u4E0B\\u7684\\u201C\\u76EE\\u5F55\\u201D\\u7B5B\\u9009\\u5207\\u6362\\u3002\"}};function uo({type:e}){let t=e===\"mycloud\"?AC.mycloud:FC,n=Yp.default.create({baseURL:t.baseURL});n.interceptors.response.use(u=>{if(u.data.code!==0)throw me.message.error(u.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),new Error(u.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return u.data.data});let[r]=me.Form.useForm(),[o,a]=(0,he.useState)(!1),[i,s]=(0,he.useState)(!1),l=NC.has(e)||!e,c=async()=>{a(!0);try{let u=await n.get(\"/settings\");r.setFieldsValue(u?C({},u):{text:\"\",searchLimit:30,searchMaxShares:10,searchIntervalMs:600,searchCacheTtlMs:6e5})}catch(u){console.error(\"[\".concat(e,\"] load settings failed\"),u),me.message.error(\"\\u52A0\\u8F7D\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||u))}finally{a(!1)}},f=async()=>{let u=await r.validateFields(),m=l?(b=>{var S=b,{batchTiers:h,batchSize:x,batchIntervalMs:v}=S,y=Vt(S,[\"batchTiers\",\"batchSize\",\"batchIntervalMs\"]);return y})(u):u;s(!0);try{let h=await n.post(\"/settings\",m);r.setFieldsValue(h),me.message.success(t.success)}catch(h){console.error(\"[\".concat(e,\"] save settings failed\"),h),me.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((h==null?void 0:h.message)||h))}finally{s(!1)}};(0,he.useEffect)(()=>{c()},[e]);let d=he.default.createElement(me.Space,{direction:\"vertical\",size:4},he.default.createElement(Ka,null,\"\\u5206\\u7C7B\\u548C\\u76EE\\u5F55\\u987A\\u5E8F\\u6309\\u914D\\u7F6E\\u884C\\u9996\\u6B21\\u51FA\\u73B0\\u7684\\u987A\\u5E8F\\u751F\\u6210\\uFF1BSMB\\u5408\\u96C6\\u4F7F\\u7528 smb:// \\u94FE\\u63A5\\uFF0C\\u5176\\u5B83\\u5408\\u96C6\\u4F7F\\u7528 http(s) \\u94FE\\u63A5\\u3002\"));return he.default.createElement(me.Form,{form:r,layout:\"vertical\",disabled:o},he.default.createElement(me.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:12},message:t.title,description:l?d:t.desc}),he.default.createElement(me.Form.Item,{name:\"text\",label:t.label||\"\\u5206\\u4EAB\\u94FE\\u63A5\\u5217\\u8868\",rules:[{required:!1}],extra:he.default.createElement(me.Space,{direction:\"vertical\",size:2},he.default.createElement(Ka,{type:\"secondary\"},\"\\u793A\\u4F8B\\uFF1A\",t.example),he.default.createElement(Ka,{type:\"secondary\"},\"\\u793A\\u4F8B\\uFF1A\",t.example2),l&&he.default.createElement(Ka,{type:\"secondary\"},\"\\u793A\\u4F8B\\uFF1A\",t.example3))},he.default.createElement(me.Input.TextArea,{rows:l?14:10,placeholder:l?\"\".concat(t.example,\"\\n\").concat(t.example2,\"\\n\").concat(t.example3):\"\".concat(t.example,\"\\n\").concat(t.example2)})),!t.hideBatch&&(l?he.default.createElement(he.default.Fragment,null,he.default.createElement(me.Divider,{orientation:\"left\",plain:!0},\"115\\u641C\\u7D22\"),he.default.createElement(kC,{type:\"secondary\",style:{marginBottom:12}},\"\\u4EC5 115\\u5408\\u96C6 \\u4F7F\\u7528\\u8FD9\\u4E9B\\u641C\\u7D22\\u53C2\\u6570\\uFF1B\\u5176\\u5B83\\u5408\\u96C6\\u4FDD\\u6301\\u4E0D\\u53EF\\u641C\\u7D22\\u3002\"),he.default.createElement(me.Space,{align:\"start\",wrap:!0},he.default.createElement(me.Form.Item,{name:\"searchLimit\",label:\"\\u6BCF\\u6B21\\u641C\\u7D22\\u6570\\u91CF\",initialValue:30,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u6BCF\\u6B21\\u641C\\u7D22\\u6570\\u91CF\"}]},he.default.createElement(me.InputNumber,{min:1,max:100,style:{width:160}})),he.default.createElement(me.Form.Item,{name:\"searchMaxShares\",label:\"\\u641C\\u7D22\\u94FE\\u63A5\\u6570\\u91CF\",initialValue:10,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u94FE\\u63A5\\u6570\\u91CF\"}]},he.default.createElement(me.InputNumber,{min:1,style:{width:160}})),he.default.createElement(me.Form.Item,{name:\"searchIntervalMs\",label:\"\\u641C\\u7D22\\u95F4\\u9694\\uFF08\\u6BEB\\u79D2\\uFF09\",initialValue:600,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u95F4\\u9694\"}]},he.default.createElement(me.InputNumber,{min:0,max:5e3,step:100,style:{width:180}})),he.default.createElement(me.Form.Item,{name:\"searchCacheTtlMs\",label:\"\\u641C\\u7D22\\u7F13\\u5B58\\uFF08\\u6BEB\\u79D2\\uFF09\",initialValue:6e5,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u7F13\\u5B58\\u65F6\\u95F4\"}]},he.default.createElement(me.InputNumber,{min:0,max:36e5,step:6e4,style:{width:180}})))):he.default.createElement(me.Space,{align:\"start\",wrap:!0},he.default.createElement(me.Form.Item,{name:\"batchSize\",label:\"\\u6BCF\\u6279\\u8BFB\\u53D6\\u6570\\u91CF\",initialValue:500,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u6BCF\\u6279\\u8BFB\\u53D6\\u6570\\u91CF\"}]},he.default.createElement(me.InputNumber,{min:1,max:t.maxBatchSize,style:{width:160}})),he.default.createElement(me.Form.Item,{name:\"batchIntervalMs\",label:\"\\u6279\\u6B21\\u95F4\\u9694\\uFF08\\u6BEB\\u79D2\\uFF09\",initialValue:1e3,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u6279\\u6B21\\u95F4\\u9694\"}]},he.default.createElement(me.InputNumber,{min:0,max:1e4,step:100,style:{width:180}})))),he.default.createElement(\"div\",{style:{marginTop:8}},he.default.createElement(me.Space,null,he.default.createElement(me.Button,{type:\"primary\",onClick:f,loading:i},\"\\u4FDD\\u5B58\"),he.default.createElement(me.Button,{onClick:c,loading:o},\"\\u91CD\\u65B0\\u52A0\\u8F7D\"))))}var PC=[{key:\"wogg\",name:\"\\u73A9\\u5076\",api:\"/wogg/urls\"},{key:\"muou\",name:\"\\u6728\\u5076\",api:\"/muou/urls\"},{key:\"erxiao\",name:\"\\u4E8C\\u5C0F\",api:\"/erxiao/urls\"},{key:\"zhizhen\",name:\"\\u81F3\\u81FB\",api:\"/zhizhen/urls\"},{key:\"ouge\",name:\"\\u6B27\\u6B4C\",api:\"/ouge/urls\"},{key:\"labi\",name:\"\\u8721\\u7B14\",api:\"/labi/urls\"},{key:\"huban\",name:\"\\u864E\\u6591\",api:\"/huban/urls\"},{key:\"kuaiying\",name:\"\\u5FEB\\u6620\",api:\"/kuaiying/urls\"},{key:\"duoduo\",name:\"\\u591A\\u591A\",api:\"/duoduo/urls\"},{key:\"shandian\",name:\"\\u95EA\\u7535\",api:\"/shandian/urls\"},{key:\"wouniu\",name:\"\\u8717\\u725B\",api:\"/wouniu/urls\"}],_C=()=>pe.default.createElement(dn.Collapse,{defaultActiveKey:[\"wogg\"],items:PC.map(e=>({key:e.key,label:e.name,children:pe.default.createElement(Xa,{api:e.api,name:e.name})}))}),BC=e=>{let t=e.startsWith(\"nodejs_\")?e.substring(7):e,r=(a=>a===\"alist_tvbox\"||a.startsWith(\"alist_tvbox_\")?\"alist_tvbox\":a.startsWith(\"emby_\")?\"emby\":a.startsWith(\"alist_\")?\"alist\":a.startsWith(\"webdav_\")?\"webdav\":a===\"sharemount\"?\"sharemount\":a===\"115share\"?\"115share\":a===\"alishare\"?\"alishare\":a===\"quarkshare\"?\"quarkshare\":a===\"ucshare\"?\"ucshare\":a===\"123share\"?\"123share\":a===\"139share\"?\"139share\":a===\"baidushare\"?\"baidushare\":a===\"smb\"?\"smb\":a===\"mycloud\"?\"mycloud\":a)(t);return[\"bili_all\",\"tgchannel\",\"tgsou\",\"pansou\",\"panlian\",\"filejin\",\"pan1\",\"guangyaqsxy\",\"live\",\"zhuiju\",\"yingchao\",\"emby\",\"alist\",\"webdav\",\"alist_tvbox\",\"sharemount\",\"115share\",\"alishare\",\"quarkshare\",\"ucshare\",\"123share\",\"139share\",\"baidushare\",\"smb\",\"mycloud\",\"uc-tv\",\"dudb\",\"js\",\"wanoujuhe\",\"leijing\"].includes(r)},LC=({sourceKey:e,sourceName:t})=>{let n=e.startsWith(\"nodejs_\")?e.substring(7):e,o=(a=>a===\"alist_tvbox\"||a.startsWith(\"alist_tvbox_\")?\"alist_tvbox\":a.startsWith(\"emby_\")?\"emby\":a.startsWith(\"alist_\")?\"alist\":a.startsWith(\"webdav_\")?\"webdav\":a===\"sharemount\"?\"sharemount\":a===\"115share\"?\"115share\":a===\"alishare\"?\"alishare\":a===\"quarkshare\"?\"quarkshare\":a===\"ucshare\"?\"ucshare\":a===\"123share\"?\"123share\":a===\"139share\"?\"139share\":a===\"baidushare\"?\"baidushare\":a===\"smb\"?\"smb\":a===\"mycloud\"?\"mycloud\":a)(n);switch(o){case\"bili_all\":return pe.default.createElement(Mf,null);case\"tgchannel\":return pe.default.createElement(Ys,null);case\"tgsou\":return pe.default.createElement(qs,null);case\"pansou\":return pe.default.createElement(Qs,null);case\"panlian\":return pe.default.createElement(zs,null);case\"filejin\":return pe.default.createElement($s,null);case\"pan1\":return pe.default.createElement(Us,null);case\"guangyaqsxy\":return pe.default.createElement(Ws,null);case\"live\":return pe.default.createElement(yp,null);case\"zhuiju\":return pe.default.createElement(Gs,null);case\"yingchao\":return pe.default.createElement(js,null);case\"emby\":return pe.default.createElement(Js,null);case\"alist\":return pe.default.createElement(wp,null);case\"webdav\":return pe.default.createElement(Cp,null);case\"alist_tvbox\":return pe.default.createElement(qp,null);case\"sharemount\":return pe.default.createElement(uo,{type:\"sharemount\"});case\"alishare\":case\"quarkshare\":case\"ucshare\":case\"123share\":case\"139share\":case\"baidushare\":case\"smb\":case\"115share\":return pe.default.createElement(uo,{type:o});case\"mycloud\":return pe.default.createElement(uo,{type:\"mycloud\"});case\"uc-tv\":return pe.default.createElement(Ks,null);case\"dudb\":return pe.default.createElement(Gp,null);case\"js\":return pe.default.createElement(Hp,null);case\"wanoujuhe\":return pe.default.createElement(_C,null);case\"leijing\":return pe.default.createElement(Xa,{api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"});default:return pe.default.createElement(\"p\",null,\"\\u65E0\\u914D\\u7F6E\\u754C\\u9762\")}},MC=()=>{let[e,t]=(0,pe.useState)(!1),[n,r]=(0,pe.useState)(null),o=s=>{r(s),t(!0)},a=()=>{t(!1),r(null)},i=(0,pe.useMemo)(()=>[{title:\"\\u914D\\u7F6E\",key:\"action\",render:(s,l)=>BC(l.key)?pe.default.createElement(dn.Space,{size:\"middle\"},pe.default.createElement(dn.Button,{type:\"primary\",size:\"small\",icon:pe.default.createElement(xr,null),onClick:()=>o(l)})):null,width:80,align:\"center\"}],[]);return pe.default.createElement(pe.default.Fragment,null,pe.default.createElement(Xs,{extraColumns:i}),pe.default.createElement(dn.Modal,{title:n?\"\\u4FEE\\u6539 \".concat(n.name,\" \\u914D\\u7F6E\"):\"\\u4FEE\\u6539\\u914D\\u7F6E\",open:e,onCancel:a,footer:null,destroyOnClose:!0,width:800,className:\"force-light-form-label\"},n&&pe.default.createElement(LC,{sourceKey:n.key,sourceName:n.name})))},Kp=MC;var at=Object.freeze({ali:Object.freeze({original:\"ali.original\",rapid115:\"ali.rapid115\"}),123:Object.freeze({direct:\"123.direct\",original:\"123.original\"}),115:Object.freeze({original:\"115.original\",rapid123:\"115.rapid123\"}),uc:Object.freeze({unlimited:\"uc.unlimited\",original:\"uc.original\"})}),Zs=Object.freeze({ali:Object.freeze([at.ali.original,at.ali.rapid115]),123:Object.freeze([at[123].direct,at[123].original]),115:Object.freeze([at[115].original,at[115].rapid123]),uc:Object.freeze([at.uc.unlimited,at.uc.original])}),Xp=Object.freeze({[at.ali.original]:\"\\u963F\\u91CC\",[at.ali.rapid115]:\"\\u79D2\\u4F20115\",[at[123].direct]:\"123\\u65E0\\u9650\",[at[123].original]:\"P123\",[at[115].original]:\"P115\",[at[115].rapid123]:\"\\u79D2\\u4F20123\",[at.uc.unlimited]:\"UC\\u65E0\\u9650\",[at.uc.original]:\"UC\"});function Jp(e,t){let n=Zs[e];if(!n)return[];let r=new Set(n),o=new Set,a=[];for(let i of Array.isArray(t)?t:[])!r.has(i)||o.has(i)||(o.add(i),a.push(i));for(let i of n)o.has(i)||(o.add(i),a.push(i));return a}var{TabPane:lr}=g.Tabs,VC=[\"button\",\"input\",\"textarea\",\"select\",\"option\",\"a\",'[contenteditable=\"true\"]','[role=\"button\"]','[role=\"switch\"]','[role=\"checkbox\"]','[role=\"combobox\"]'].join(\",\"),Zp=({nativeEvent:e,currentTarget:t})=>{let n=e==null?void 0:e.target,r=n instanceof Element?n.closest(VC):null;return!r||r===t},po=class extends jt{};po.activators=jt.activators.map(e=>I(C({},e),{handler:(t,n)=>Zp(t)&&e.handler(t,n)}));var mo=class extends Ht{};mo.activators=Ht.activators.map(e=>I(C({},e),{handler:(t,n)=>Zp(t)&&e.handler(t,n)}));var fe=go.default.create({baseURL:\"/website\"});fe.interceptors.response.use(function(e){if(e.data.code!==0){g.message.error(e.data.message);let t=new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");throw t.responseData=e.data,t}else return e.data.data},function(e){return Promise.reject(e)});g.message.config({top:\"40%\"});function el({src:e}){let[t,n]=p.default.useState(\"\"),r=t?\"\".concat(e).concat(e.includes(\"?\")?\"&\":\"?\",\"_qr=\").concat(encodeURIComponent(t)):Lc;return p.default.createElement(\"img\",{src:r,alt:\"\\u70B9\\u51FB\\u5237\\u65B0\\u4E8C\\u7EF4\\u7801\",title:\"\\u70B9\\u51FB\\u5237\\u65B0\\u4E8C\\u7EF4\\u7801\",onClick:()=>{n(\"\".concat(Date.now(),\"-\").concat(Math.random().toString(36).slice(2)))}})}function qt({qrcodeUrl:e,cacheUrl:t}){let[n,r]=p.default.useState(\"\"),o=async()=>{let s=await fe.post(t);r(s)},a=async()=>{await fe.put(t,{cookie:n}),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},i=s=>{(0,Ja.default)(s),g.message.success(\"\\u590D\\u5236\\u6210\\u529F\")};return(0,p.useEffect)(()=>{fe.get(t).then(s=>{r(s)})},[]),p.default.createElement(\"div\",{className:\"qrcodeCard\"},p.default.createElement(el,{src:e}),p.default.createElement(g.Divider,null,p.default.createElement(g.Button,{onClick:o},\"\\u626B\\u7801\\u540E\\u70B9\\u6211\")),p.default.createElement(g.Input.TextArea,{value:n,onChange:s=>r(s.target.value),rows:4}),p.default.createElement(\"div\",{className:\"btns\"},p.default.createElement(g.Button,{onClick:()=>i(n),color:\"cyan\",variant:\"solid\",style:{marginRight:24},size:\"large\"},\"\\u590D\\u5236\"),p.default.createElement(g.Button,{onClick:a,type:\"primary\",size:\"large\"},\"\\u5165\\u5E93\")))}function _s(){let[e,t]=p.default.useState({token:\"\"}),n=\"/ali/token\",r=async()=>{let i=await fe.post(n);t(i)},o=async()=>{await fe.put(n,{data:e}),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},a=i=>{(0,Ja.default)(i.token||\"\"),g.message.success(\"\\u590D\\u5236\\u6210\\u529F\")};return(0,p.useEffect)(()=>{fe.get(n).then(i=>{t(i)})},[]),p.default.createElement(\"div\",{className:\"qrcodeCard\"},p.default.createElement(el,{src:\"/website/ali/qrcode\"}),p.default.createElement(g.Divider,null,p.default.createElement(g.Button,{onClick:r},\"\\u626B\\u7801\\u540E\\u70B9\\u6211\")),p.default.createElement(g.Input.TextArea,{value:e.token||\"\",onChange:i=>t(I(C({},e),{token:i.target.value})),rows:4}),p.default.createElement(\"div\",{className:\"btns\"},p.default.createElement(g.Button,{onClick:()=>a(e),color:\"cyan\",variant:\"solid\",style:{marginRight:24},size:\"large\"},\"\\u590D\\u5236\"),p.default.createElement(g.Button,{onClick:o,type:\"primary\",size:\"large\"},\"\\u5165\\u5E93\")))}function Xa({api:e,name:t}){let[n]=g.Form.useForm(),r={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},o={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},a=async()=>{let l=await fe.get(e);n.setFieldsValue({urls:l})},i=async()=>{let l=await n.validateFields();try{await fe.put(e,l.urls),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(c){console.error(c),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},s=async()=>{try{await fe.delete(e),a(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(l){console.error(l),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}};return(0,p.useEffect)(()=>{a()},[]),p.default.createElement(g.Form,C({form:n},r),p.default.createElement(g.Alert,{message:\"\\u542F\\u52A8\\u65F6\\u5C06\\u81EA\\u52A8\\u9009\\u62E9\\u901F\\u5EA6\\u6700\\u5FEB\\u7684\\u57DF\\u540D\",type:\"info\",style:{marginBottom:12}}),p.default.createElement(g.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(l,{add:c,remove:f},{errors:d})=>p.default.createElement(p.default.Fragment,null,l.map((u,m)=>p.default.createElement(g.Form.Item,I(C({label:m===0?\"\\u57DF\\u540D\\u5217\\u8868\":\"\",required:!1,key:u.key},m===0?r:o),{style:{marginBottom:12}}),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},u),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\".concat(t,\"\\u57DF\\u540D\")}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\".concat(t,\"\\u57DF\\u540D\"),style:{width:\"100%\"}})),l.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(xn,null),onClick:()=>f(u.name)})))),p.default.createElement(g.Form.Item,C({label:\"\"},o),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>c(),block:!0,icon:p.default.createElement(nt,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),p.default.createElement(g.Form.ErrorList,{errors:d})))),p.default.createElement(g.Form.Item,C({label:null},o),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:i,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:s,block:!0},\"\\u91CD\\u7F6E\"))))}function Bs({api:e}){let[t]=g.Form.useForm(),n=async()=>{try{let r=await t.validateFields();await fe.put(e,r),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(r){console.error(r),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(r==null?void 0:r.message))}};return(0,p.useEffect)(()=>{fe.get(e).then(r=>{t.setFieldsValue(r)})},[]),p.default.createElement(g.Form,{form:t,layout:\"vertical\"},p.default.createElement(g.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},p.default.createElement(g.Input,null)),p.default.createElement(g.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},p.default.createElement(g.Input.Password,null)),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Button,{type:\"primary\",onClick:n,block:!0},\"\\u4FDD\\u5B58\")))}var Rs=e=>{if(!e)return\"\";try{let t=new URL(e);return t.searchParams.get(\"redirect_uri\")||t.searchParams.set(\"redirect_uri\",\"\".concat(window.location.origin,\"/website/xunlei/verify-callback\")),t.toString()}catch(t){return e}};function Ls({api:e}){let[t]=g.Form.useForm(),[n,r]=p.default.useState(!1),[o,a]=p.default.useState(!1),[i,s]=p.default.useState(\"\"),[l,c]=p.default.useState({verificationId:\"\",expiryAt:0,remaining:null}),[f,d]=p.default.useState(0),[u,m]=p.default.useState(\"\"),[h,x]=p.default.useState(!1),v=p.default.useRef(null),y=()=>{s(\"\"),c({verificationId:\"\",expiryAt:0,remaining:null}),t.setFieldValue(\"verificationCode\",\"\"),m(\"\"),x(!1)},b=async()=>{var V,E,N;let P=await fe.get(e);if(t.setFieldsValue({phone:P.username||\"\",password:P.password||\"\",verificationCode:\"\"}),(V=P==null?void 0:P.verification)!=null&&V.verificationId){c({verificationId:P.verification.verificationId,expiryAt:Number(P.verification.expiresAt||0)||0,remaining:(E=P.verification.remaining)!=null?E:null}),x(!1),m(\"\"),s(((N=P==null?void 0:P.verification)==null?void 0:N.message)||\"\\u5DF2\\u6062\\u590D\\u4E0A\\u4E00\\u6B21\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u4F1A\\u8BDD\\uFF0C\\u53EF\\u76F4\\u63A5\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\");return}c({verificationId:\"\",expiryAt:0,remaining:null})},S=()=>{v.current&&!v.current.closed&&v.current.close(),v.current=null},w=(P,V)=>{x(!1),m(\"\"),s(\"\"),S(),c({verificationId:P.verificationId,expiryAt:Number(P.expiresAt||0)||Date.now()+Number(P.expiresIn||300)*1e3,remaining:P.remaining}),t.setFieldValue(\"verificationCode\",\"\"),g.message.success(V)},D=P=>{var E;if(!P)return;let V=window.open(P,\"xunlei-security-verify\",\"width=520,height=780\");if(V){v.current=V,(E=V.focus)==null||E.call(V);return}g.message.warning(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u5B89\\u5168\\u9A8C\\u8BC1\\u7A97\\u53E3\\uFF0C\\u8BF7\\u624B\\u52A8\\u6253\\u5F00\\u4E0B\\u65B9\\u94FE\\u63A5\")},O=async({phone:P,password:V})=>{let E=await fe.post(\"/xunlei/verification\",{username:P,password:V});if((E==null?void 0:E.status)===\"auto_logged_in\"){y(),S(),g.message.success(\"\\u8D26\\u53F7\\u65E0\\u9700\\u77ED\\u4FE1\\u9A8C\\u8BC1\\uFF0C\\u5DF2\\u76F4\\u63A5\\u767B\\u5F55\\u6210\\u529F\"),await b();return}if((E==null?void 0:E.status)===\"verify_required\"){let N=Rs(E.verifyUrl||\"\");s(\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\"),c({verificationId:\"\",expiryAt:0,remaining:null}),t.setFieldValue(\"verificationCode\",\"\"),x(!0),m(N),N?(D(N),g.message.info(\"\\u5DF2\\u6253\\u5F00\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\")):g.message.warning(\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\uFF0C\\u518D\\u7B49\\u5F85\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u4E0B\\u53D1\");return}if((E==null?void 0:E.status)===\"sent\"){w(E,(E==null?void 0:E.message)||(E!=null&&E.reused?\"\\u53D1\\u9001\\u8FC7\\u4E8E\\u9891\\u7E41\\uFF0C\\u7EE7\\u7EED\\u4F7F\\u7528\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\":\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u770B\\u77ED\\u4FE1\"));return}throw new Error((E==null?void 0:E.message)||\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\")},F=async()=>{try{let P=await t.validateFields([\"phone\",\"password\"]);r(!0),await O(P)}catch(P){console.error(P),s(\"\\u53D1\\u9001\\u5931\\u8D25\\uFF1A\".concat((P==null?void 0:P.message)||\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\")),g.message.error(\"\\u53D1\\u9001\\u5931\\u8D25\\uFF1A\".concat(P==null?void 0:P.message))}finally{r(!1)}},T=async()=>{var P,V;try{let E=await t.validateFields([\"phone\",\"password\",\"verificationCode\"]);if(!l.verificationId&&!u&&!h){g.message.warning(\"\\u8BF7\\u5148\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\");return}if(l.verificationId&&f<=0){g.message.warning(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u53D1\\u9001\");return}a(!0),await fe.post(\"/xunlei/login\",{username:E.phone,password:E.password,verificationId:l.verificationId,verificationCode:E.verificationCode}),s(\"\"),g.message.success(\"\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u5DF2\\u4FDD\\u5B58\\u8D26\\u53F7\\u4E0E\\u767B\\u5F55\\u6001\"),y(),S(),await b()}catch(E){console.error(E);let N=Rs(((V=(P=E==null?void 0:E.responseData)==null?void 0:P.data)==null?void 0:V.verifyUrl)||\"\");N&&(x(!0),m(N),D(N)),g.message.error(\"\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(E==null?void 0:E.message))}finally{a(!1)}};return(0,p.useEffect)(()=>{let P=V=>{var N,U,K;if(V.origin!==window.location.origin)return;let E=V.data||{};if(E.type===\"xunlei-verification-sent\"){w(E.data||{},\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5B8C\\u6210\\uFF0C\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\");return}if(E.type===\"xunlei-verification-required\"){let de=Rs(((N=E==null?void 0:E.data)==null?void 0:N.verifyUrl)||\"\");s(\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5C1A\\u672A\\u901A\\u8FC7\\uFF0C\\u8BF7\\u91CD\\u65B0\\u5B8C\\u6210\\u9A8C\\u8BC1\\u3002\"),x(!0),m(de),de&&g.message.warning(\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5C1A\\u672A\\u901A\\u8FC7\\uFF0C\\u8BF7\\u91CD\\u65B0\\u5B8C\\u6210\\u9A8C\\u8BC1\");return}E.type===\"xunlei-verification-error\"&&(x(!1),s(((U=E==null?void 0:E.data)==null?void 0:U.message)||\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u540E\\u81EA\\u52A8\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\"),g.message.error(((K=E==null?void 0:E.data)==null?void 0:K.message)||\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u540E\\u81EA\\u52A8\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\"))};return window.addEventListener(\"message\",P),()=>{window.removeEventListener(\"message\",P),S()}},[]),(0,p.useEffect)(()=>{b()},[]),(0,p.useEffect)(()=>{if(!l.verificationId||!l.expiryAt){d(0);return}let P=()=>{let E=Math.max(0,Math.ceil((l.expiryAt-Date.now())/1e3));d(E),E<=0&&(c({remaining:l.remaining,verificationId:\"\",expiryAt:0}),x(!1))};P();let V=setInterval(P,1e3);return()=>clearInterval(V)},[l.verificationId,l.expiryAt]),p.default.createElement(g.Form,{form:t,layout:\"vertical\",onValuesChange:P=>{(Object.prototype.hasOwnProperty.call(P,\"phone\")||Object.prototype.hasOwnProperty.call(P,\"password\"))&&y()}},p.default.createElement(g.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:12},message:\"\\u4EC5\\u4FDD\\u7559\\u624B\\u673A\\u53F7 + \\u5BC6\\u7801 + \\u5B89\\u5168\\u9A8C\\u8BC1 + \\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u8FD9\\u4E00\\u6761\\u767B\\u5F55\\u94FE\\u8DEF\\u3002\\u70B9\\u51FB\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u540E\\uFF0C\\u5982\\u9700\\u98CE\\u63A7\\u9A8C\\u8BC1\\u4F1A\\u81EA\\u52A8\\u62C9\\u8D77\\u9A8C\\u8BC1\\u9875\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u3002\"}),i&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:i}),p.default.createElement(g.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u624B\\u673A\\u53F7\"}]},p.default.createElement(g.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A13800138000\"})),p.default.createElement(g.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},p.default.createElement(g.Input.Password,null)),p.default.createElement(g.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",name:\"verificationCode\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"}],extra:h?\"\\u6B63\\u5728\\u7B49\\u5F85\\u5B89\\u5168\\u9A8C\\u8BC1\\u5B8C\\u6210\\u5E76\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\\u82E5\\u5DF2\\u6536\\u5230\\u77ED\\u4FE1\\uFF0C\\u4E5F\\u53EF\\u4EE5\\u76F4\\u63A5\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\":l.verificationId&&f>0?\"\\u9A8C\\u8BC1\\u7801\\u5269\\u4F59 \".concat(f,\" \\u79D2\\u6709\\u6548\"):\"\\u5148\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\uFF0C\\u518D\\u8F93\\u5165\\u77ED\\u4FE1\\u4E2D\\u7684 6 \\u4F4D\\u9A8C\\u8BC1\\u7801\"},p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",maxLength:6}),p.default.createElement(g.Button,{onClick:F,loading:n},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),l.remaining!==null&&l.verificationId&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:\"\\u4ECA\\u65E5\\u77ED\\u4FE1\\u53D1\\u9001\\u5269\\u4F59\\u6B21\\u6570\\uFF1A\".concat(l.remaining)}),u&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:h?\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\\u5DF2\\u81EA\\u52A8\\u6253\\u5F00\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\":\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\u3002\",description:p.default.createElement(g.Space,{wrap:!0},p.default.createElement(g.Button,{type:\"link\",href:u,target:\"_blank\",rel:\"noreferrer\"},\"\\u6253\\u5F00\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\"),p.default.createElement(g.Button,{onClick:()=>(0,Ja.default)(u)},\"\\u590D\\u5236\\u9A8C\\u8BC1\\u94FE\\u63A5\"))}),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:T,block:!0,loading:o},\"\\u767B\\u5F55\"))))}function qs(){let[e]=g.Form.useForm(),t={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},n={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},r=async()=>{let o=await e.validateFields();console.log(\"data\",o);try{await fe.put(\"/tgsou/config\",o),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,p.useEffect)(()=>{fe.get(\"/tgsou/config\").then(o=>{e.setFieldsValue(o)})},[]),p.default.createElement(g.Form,C({form:e},t),p.default.createElement(g.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"url\"},p.default.createElement(g.Input,null)),p.default.createElement(g.Form.List,{name:\"channelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(o,{add:a,remove:i},{errors:s})=>p.default.createElement(p.default.Fragment,null,o.map((l,c)=>p.default.createElement(g.Form.Item,I(C({label:c===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:l.key},c===0?t:n),{style:{marginBottom:12}}),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},l),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\",style:{width:\"100%\"}})),o.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(xn,null),onClick:()=>i(l.name)})))),p.default.createElement(g.Form.Item,C({label:\"\"},n),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>a(),block:!0,icon:p.default.createElement(nt,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),p.default.createElement(g.Form.ErrorList,{errors:s})))),p.default.createElement(g.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},p.default.createElement(g.InputNumber,{min:1,style:{width:\"100%\"}})),p.default.createElement(g.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},p.default.createElement(g.Switch,null)),p.default.createElement(g.Form.Item,C({label:null},n),p.default.createElement(g.Button,{type:\"primary\",onClick:r,block:!0},\"\\u4FDD\\u5B58\")))}function Ys(){let[e]=g.Form.useForm(),t={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},n={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},r=\"/tgchannel/config\",[o,a]=(0,p.useState)({}),[i,s]=(0,p.useState)(!1),[l,c]=(0,p.useState)(!1),[f,d]=(0,p.useState)({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),u=(b,S)=>{if(d(w=>C(C({},w),S)),b.homeChannelUsername||b.channelUsername){let w=[...S.homeChannelUsername||[],...S.channelUsername||[]],D=C({},o);Object.keys(D).forEach(O=>{w.includes(O)||delete D[O]}),a(D)}},m=async()=>{if(!i){s(!0);try{let b=await e.validateFields();console.log(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u901A\\u8FC7:\",b);let S=!!b.enableImage;console.log(\"enableImage \\u8F6C\\u6362\\u540E:\",S,\"\\u7C7B\\u578B:\",typeof S);let w={url:b.url||\"\",count:Number(b.count)||1,enableImage:S,homeChannelUsername:Array.isArray(b.homeChannelUsername)?b.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(b.channelUsername)?b.channelUsername.filter(Boolean):[],channelRemark:o};console.log(\"\\u63D0\\u4EA4\\u7684\\u6570\\u636E:\",w);try{await fe.put(r,w),g.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),d({url:w.url,count:w.count,enableImage:w.enableImage,homeChannelUsername:w.homeChannelUsername,channelUsername:w.channelUsername});try{localStorage.setItem(\"tgchannel_config_backup\",JSON.stringify(w)),localStorage.setItem(\"tgchannel_config_time\",new Date().toISOString())}catch(D){console.warn(\"\\u672C\\u5730\\u5B58\\u50A8\\u5907\\u4EFD\\u5931\\u8D25:\",D)}}catch(D){console.error(\"\\u4FDD\\u5B58\\u8BF7\\u6C42\\u5931\\u8D25:\",D),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((D==null?void 0:D.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}}catch(b){console.error(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u5931\\u8D25:\",b),g.message.error(\"\\u8BF7\\u68C0\\u67E5\\u8868\\u5355\\u586B\\u5199\\u662F\\u5426\\u6B63\\u786E\")}finally{s(!1)}}},h=async()=>{s(!0);try{let b=null;try{let D=localStorage.getItem(\"tgchannel_config_backup\");D&&(b=JSON.parse(D),console.log(\"\\u4ECE\\u672C\\u5730\\u5B58\\u50A8\\u6062\\u590D\\u6570\\u636E:\",b))}catch(D){console.warn(\"\\u672C\\u5730\\u5B58\\u50A8\\u6062\\u590D\\u5931\\u8D25:\",D)}let S;try{S=await fe.get(r),console.log(\"\\u670D\\u52A1\\u5668\\u52A0\\u8F7D\\u7684\\u6570\\u636E:\",S)}catch(D){console.error(\"\\u670D\\u52A1\\u5668\\u52A0\\u8F7D\\u5931\\u8D25:\",D),S=b||{url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}}}let w=S||b||{url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}};console.log(\"\\u6700\\u7EC8\\u521D\\u59CB\\u5316\\u6570\\u636E:\",w),console.log(\"enableImage \\u503C:\",w.enableImage,\"\\u7C7B\\u578B:\",typeof w.enableImage),e.setFieldsValue({url:w.url||\"\",count:w.count||1,enableImage:w.enableImage===!0||w.enableImage===\"true\"||w.enableImage===1,homeChannelUsername:Array.isArray(w.homeChannelUsername)?w.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(w.channelUsername)?w.channelUsername.filter(Boolean):[]}),w.channelRemark&&typeof w.channelRemark==\"object\"&&a(w.channelRemark),d({url:w.url||\"\",count:w.count||1,enableImage:w.enableImage===!0||w.enableImage===\"true\"||w.enableImage===1,homeChannelUsername:Array.isArray(w.homeChannelUsername)?w.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(w.channelUsername)?w.channelUsername.filter(Boolean):[]}),c(!0)}catch(b){console.error(\"\\u521D\\u59CB\\u5316\\u5931\\u8D25:\",b),g.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u4F7F\\u7528\\u9ED8\\u8BA4\\u914D\\u7F6E\"),e.setFieldsValue({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),d({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),a({}),c(!0)}finally{s(!1)}},x=(b,S)=>{if(!b||b.trim()===\"\")return;let w=C({},o);S.trim()===\"\"?delete w[b]:w[b]=S.trim(),a(w);try{let D=C({},w);localStorage.setItem(\"tgchannel_remarks_backup\",JSON.stringify(D))}catch(D){console.warn(\"\\u5907\\u6CE8\\u672C\\u5730\\u5B58\\u50A8\\u5931\\u8D25:\",D)}};(0,p.useEffect)(()=>{h()},[]);let v=b=>e.getFieldsValue()[b]||[],y=(b,S,w,D,O)=>p.default.createElement(g.Form.Item,{noStyle:!0,shouldUpdate:(F,T)=>{var E,N;let P=(E=F[O])==null?void 0:E[S],V=(N=T[O])==null?void 0:N[S];return P!==V}},({getFieldValue:F})=>{let T=F([O,S])||\"\";return p.default.createElement(\"div\",{key:b.key,className:\"tg-channel-item\",style:{marginBottom:12,display:\"flex\",gap:\"8px\",alignItems:\"flex-start\"}},p.default.createElement(\"div\",{className:\"tg-channel-input\",style:{flex:\"1 1 40%\",minWidth:0}},p.default.createElement(g.Form.Item,I(C({},b),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u9891\\u9053\\u540D\",style:{width:\"100%\"},onChange:P=>{let V=P.target.value,E=T;if(E&&E!==V&&o[E]){let N=C({},o);N[V]=N[E],delete N[E],a(N)}}}))),p.default.createElement(\"div\",{className:\"tg-remark-input\",style:{flex:\"1 1 40%\",minWidth:0}},p.default.createElement(g.Input,{placeholder:\"\\u5907\\u6CE8\",value:o[T]||\"\",onChange:P=>x(T,P.target.value),onBlur:P=>x(T,P.target.value),style:{width:\"100%\"},disabled:!T||T.trim()===\"\"})),w.length>1&&p.default.createElement(\"div\",{className:\"tg-delete-btn\",style:{flex:\"0 0 auto\"}},p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(xn,null),onClick:()=>{if(T&&o[T]){let P=C({},o);delete P[T],a(P)}D(b.name)},style:{minWidth:\"44px\",minHeight:\"44px\"}})))});return i&&!l?p.default.createElement(g.Card,{loading:!0,style:{minHeight:300}},\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u4E2D...\"):p.default.createElement(g.Form,I(C({form:e},t),{onValuesChange:u}),p.default.createElement(g.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}],extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\"}},\"\\u9700\\u5B8C\\u6574\\u4EE3\\u7406t.me\\u57DF\\u540D\\uFF0C\\u81F3\\u5C11\\u9700\\u8981\\u652F\\u6301\\u4EE5\\u4E0B\\u94FE\\u63A5\",p.default.createElement(\"p\",{style:{margin:\"4px 0\"}},\"1. \\u9891\\u9053\\u9875\\u9762\\uFF1Ahttps://t.me/s/xx\\uFF0C\\u5E76\\u4E14\\u4F1A\\u5E26\\u5206\\u9875\\u53C2\\u6570before=yy\\u3001\\u641C\\u7D22\\u53C2\\u6570q=zz\"),p.default.createElement(\"p\",{style:{margin:\"4px 0\"}},\"2. \\u6D88\\u606F\\u8BE6\\u60C5\\u9875\\uFF1Ahttps://t.me/xx/yy\"))},p.default.createElement(g.Input,null)),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{xs:24,sm:12,md:12,lg:12},p.default.createElement(g.Form.Item,{label:\"\\u83B7\\u53D6\\u56FE\\u7247\",name:\"enableImage\",valuePropName:\"checked\",labelCol:{xs:{span:12},sm:{span:8}},wrapperCol:{xs:{span:12},sm:{span:16}}},p.default.createElement(g.Switch,null))),p.default.createElement(g.Col,{xs:24,sm:12,md:12,lg:12},p.default.createElement(g.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\",labelCol:{xs:{span:12},sm:{span:10}},wrapperCol:{xs:{span:12},sm:{span:14}}},p.default.createElement(g.InputNumber,{min:1,disabled:i,style:{width:\"100%\"}})))),p.default.createElement(g.Divider,{orientation:\"left\"},\"\\u9996\\u9875\"),p.default.createElement(g.Form.List,{name:\"homeChannelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(b,{add:S,remove:w},{errors:D})=>p.default.createElement(p.default.Fragment,null,b.map((O,F)=>y(O,F,b,w,\"homeChannelUsername\")),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>S(),icon:p.default.createElement(nt,null),disabled:i,style:{width:\"100%\",maxWidth:\"400px\"}},\"\\u6DFB\\u52A0\\u9891\\u9053\")),p.default.createElement(g.Form.ErrorList,{errors:D})))),p.default.createElement(g.Divider,{orientation:\"left\"},\"\\u641C\\u7D22\"),p.default.createElement(g.Form.List,{name:\"channelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(b,{add:S,remove:w},{errors:D})=>p.default.createElement(p.default.Fragment,null,b.map((O,F)=>y(O,F,b,w,\"channelUsername\")),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>S(),icon:p.default.createElement(nt,null),disabled:i,style:{width:\"100%\",maxWidth:\"400px\"}},\"\\u6DFB\\u52A0\\u9891\\u9053\")),p.default.createElement(g.Form.ErrorList,{errors:D})))),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\",width:\"100%\"}},p.default.createElement(g.Space,{style:{width:\"100%\",maxWidth:\"600px\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:m,loading:i,disabled:!l,block:!0},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Button,{onClick:()=>{window.confirm(\"\\u786E\\u5B9A\\u8981\\u91CD\\u7F6E\\u8868\\u5355\\u5417\\uFF1F\\u8FD9\\u5C06\\u6E05\\u9664\\u6240\\u6709\\u672A\\u4FDD\\u5B58\\u7684\\u4FEE\\u6539\\u3002\")&&h()},disabled:i,style:{flex:1}},\"\\u91CD\\u7F6E\"),p.default.createElement(g.Button,{onClick:()=>{window.confirm(\"\\u786E\\u5B9A\\u8981\\u6E05\\u7A7A\\u6240\\u6709\\u5907\\u6CE8\\u5417\\uFF1F\")&&(a({}),localStorage.removeItem(\"tgchannel_remarks_backup\"),g.message.success(\"\\u5907\\u6CE8\\u5DF2\\u6E05\\u7A7A\"))},disabled:i,style:{flex:1}},\"\\u6E05\\u7A7A\\u5907\\u6CE8\"))))))}function Ms(){return p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{message:\"\\u4F1A\\u5458\\u53EA\\u626B\\u7B2C\\u4E00\\u4E2A\\uFF0C\\u975E\\u4F1A\\u5458\\u4E24\\u4E2A\\u90FD\\u626B\",type:\"info\",style:{marginBottom:16}}),p.default.createElement(g.Card,{title:\"UC \\u7F51\\u76D8\",style:{marginBottom:16}},p.default.createElement(qt,{qrcodeUrl:\"/website/uc/qrcode\",cacheUrl:\"/uc/cookie\"})),p.default.createElement(g.Card,{title:\"UC TV\"},p.default.createElement(qt,{qrcodeUrl:\"/website/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\"})))}function Ks(){let[e,t]=p.default.useState(\"\"),n=\"/uc/ut\",r=async()=>{try{await fe.put(n,{ut:e}),g.message.success(\"\\u8BBE\\u7F6E\\u6210\\u529F\")}catch(o){console.error(o),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(o==null?void 0:o.message))}};return(0,p.useEffect)(()=>{fe.get(n).then(o=>{t(o)})},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{message:\"\\u5173\\u6CE8\\u5FAE\\u4FE1\\u516C\\u4F17\\u53F7\\u201C\\u738B\\u4E8C\\u5C0F\\u653E\\u725B\\u5A03\\u201D\\uFF0C\\u8F93\\u5165\\u201C\\u673A\\u5668\\u7801\\u201D\\u5373\\u53EF\\u83B7\\u5F97\",type:\"info\",style:{marginBottom:16}}),p.default.createElement(g.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165UC\\u673A\\u5668\\u7801\",value:e,onChange:o=>t(o.target.value),rows:4}),p.default.createElement(g.Button,{type:\"primary\",onClick:r,style:{marginTop:16}},\"\\u4FDD\\u5B58\"))}var Rp=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:o,transition:a,isDragging:i}=ba({id:e[\"data-row-key\"]}),s=C(I(C({},e.style),{transform:$t.Translate.toString(o),transition:a,cursor:\"move\"}),i?{position:\"relative\",zIndex:9999}:{});return p.default.createElement(\"tr\",C(C(I(C({},e),{ref:r,style:s}),t),n))};function Xs({extraColumns:e=[]}){let[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(null),a=(0,p.useMemo)(()=>{let d=[{title:\"\\u7AD9\\u6E90\",dataIndex:\"key\",render(m,h,x){let v=r===h.key;return p.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},v?p.default.createElement(g.Input,{value:h.name,onChange:y=>{let b=[...t];b[x].name=y.target.value,n(b)},onPressEnter:()=>{o(null)},onBlur:()=>{o(null)},autoFocus:!0,style:{width:\"100%\"}}):p.default.createElement(\"div\",{style:{cursor:\"pointer\",padding:\"4px 8px\",borderRadius:\"4px\",width:\"100%\",minHeight:\"32px\",display:\"flex\",alignItems:\"center\",flexWrap:\"wrap\",gap:\"4px\"},onClick:()=>{o(h.key)},title:\"\\u70B9\\u51FB\\u4FEE\\u6539\\u540D\\u79F0\"},p.default.createElement(\"span\",null,h.name),h.t4&&p.default.createElement(g.Tag,{style:{marginLeft:4},color:\"blue\"},\"T4\"),h.cms&&p.default.createElement(g.Tag,{style:{marginLeft:4},color:\"blue\"},\"CMS\")))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(m,h,x){return p.default.createElement(g.Switch,{checked:m,onChange:v=>{let y=[...t];y[x].enable=v,n(y)}})},width:60,align:\"center\"},{title:\"\\u6392\\u5E8F\",dataIndex:\"op\",render(m,h,x){return p.default.createElement(g.Space,{size:2,style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{icon:p.default.createElement(At,null),size:\"small\",type:\"text\",disabled:x===0,onClick:()=>{n(v=>lt(v,x,x-1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}),p.default.createElement(g.Button,{icon:p.default.createElement(Ft,null),size:\"small\",type:\"text\",disabled:x===t.length-1,onClick:()=>{n(v=>lt(v,x,x+1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}))},width:70,align:\"center\"}];return[...d.slice(0,1),...e.map(m=>I(C({},m),{width:50})),...d.slice(1)]},[t,r,e]),i=Fr(rn(po,{activationConstraint:{distance:4}}),rn(mo,{activationConstraint:{delay:200,tolerance:6}})),s=({active:d,over:u})=>{d.id!==(u==null?void 0:u.id)&&n(m=>{let h=m.findIndex(v=>v.key===d.id),x=m.findIndex(v=>v.key===(u==null?void 0:u.id));return lt(m,h,x)})},l=async()=>{let u=(await go.default.get(\"/full-config\")).data.video.sites,m=await fe.get(\"/sites/list\"),h={},x={};u.forEach(y=>{x[y.key]=y});let v=m.filter(y=>(h[y.key]=!0,x[y.key]));u.forEach(y=>{h[y.key]||v.push({key:y.key,name:y.name,enable:!0,t4:y.t4,cms:y.cms})}),console.log(\"dataSource\",v,m,u),n(v)},c=async()=>{try{o(null),await fe.put(\"/sites/list\",{list:t}),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u7AD9\\u6E90\\u540D\\u79F0\\u5DF2\\u66F4\\u65B0\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(d){console.error(d),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{await fe.delete(\"/sites/list\"),l(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}};return(0,p.useEffect)(()=>{l()},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{description:\"\\u70B9\\u51FB\\u7AD9\\u6E90\\u540D\\u79F0\\u53EF\\u7F16\\u8F91\\uFF0C\\u62D6\\u52A8\\u884C\\u6216\\u4F7F\\u7528\\u4E0A\\u4E0B\\u6309\\u94AE\\u8C03\\u6574\\u987A\\u5E8F\",type:\"info\",style:{marginBottom:16},closable:!0}),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(Ar,{sensors:i,modifiers:[Pr],onDragEnd:s},p.default.createElement(Br,{items:t.map(d=>d.key),strategy:_r},p.default.createElement(g.Table,{components:{body:{row:Rp}},rowKey:\"key\",columns:a,dataSource:t,pagination:!1,className:\"sites-table\",size:\"small\",scroll:{x:\"max-content\"}})))),p.default.createElement(g.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",block:!0,onClick:c},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,block:!0,onClick:f},\"\\u91CD\\u7F6E\")))}function Vs({extraColumns:e=[]}){let[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(null),a=(0,p.useMemo)(()=>{let d=[{title:\"\\u7F51\\u76D8\",dataIndex:\"key\",render(m,h,x){let v=r===h.key;return p.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},v?p.default.createElement(g.Input,{value:h.name,onChange:y=>{let b=[...t];b[x].name=y.target.value,n(b)},onPressEnter:()=>o(null),onBlur:()=>o(null),autoFocus:!0,style:{width:\"100%\"}}):p.default.createElement(\"div\",{style:{cursor:\"pointer\",padding:\"4px 8px\",borderRadius:\"4px\",width:\"100%\",minHeight:\"32px\",display:\"flex\",alignItems:\"center\"},onClick:()=>o(h.key),title:\"\\u70B9\\u51FB\\u4FEE\\u6539\\u540D\\u79F0\"},h.name))}},{title:\"\\u7EBF\\u8DEF\\u987A\\u5E8F\",dataIndex:\"routeOrder\",render(m,h){if(!Zs[h.key])return p.default.createElement(\"span\",{style:{color:\"#8c8c8c\"}},\"\\u5355\\u7EBF\\u8DEF\");let x=Jp(h.key,m);return p.default.createElement(g.Space,{direction:\"vertical\",size:2,onPointerDown:v=>v.stopPropagation(),onClick:v=>v.stopPropagation()},x.map((v,y)=>{let b=v===\"\".concat(h.key,\".original\")?h.name:Xp[v]||v;return p.default.createElement(g.Space,{key:v,size:2,style:{display:\"flex\"}},p.default.createElement(g.Tag,{color:y===0?\"blue\":void 0,style:{margin:0,minWidth:88,borderRadius:2}},y+1,\". \",b),p.default.createElement(g.Button,{icon:p.default.createElement(At,null),size:\"small\",type:\"text\",disabled:y===0,title:\"\\u7EBF\\u8DEF\\u4E0A\\u79FB\",onClick:()=>{n(S=>S.map(w=>w.key===h.key?I(C({},w),{routeOrder:lt(x,y,y-1)}):w))},style:{padding:\"2px\",minWidth:22,height:22}}),p.default.createElement(g.Button,{icon:p.default.createElement(Ft,null),size:\"small\",type:\"text\",disabled:y===x.length-1,title:\"\\u7EBF\\u8DEF\\u4E0B\\u79FB\",onClick:()=>{n(S=>S.map(w=>w.key===h.key?I(C({},w),{routeOrder:lt(x,y,y+1)}):w))},style:{padding:\"2px\",minWidth:22,height:22}}))}))},width:170},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(m,h,x){return p.default.createElement(g.Switch,{checked:m,onChange:v=>{let y=t.map((b,S)=>S===x?I(C({},b),{enable:v}):C({},b));if(v&&[\"magnet\",\"magnet_guangya\"].includes(h.key))for(let b of y)b.key!==h.key&&[\"magnet\",\"magnet_guangya\"].includes(b.key)&&(b.enable=!1);n(y)}})},width:60,align:\"center\"},{title:\"\\u6392\\u5E8F\",dataIndex:\"op\",render(m,h,x){return p.default.createElement(g.Space,{size:2,style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{icon:p.default.createElement(At,null),size:\"small\",type:\"text\",disabled:x===0,onClick:()=>{n(v=>lt(v,x,x-1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}),p.default.createElement(g.Button,{icon:p.default.createElement(Ft,null),size:\"small\",type:\"text\",disabled:x===t.length-1,onClick:()=>{n(v=>lt(v,x,x+1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}))},width:70,align:\"center\"}];return[...d.slice(0,1),...e.map(m=>I(C({},m),{width:50})),...d.slice(1)]},[t,r,e]),i=Fr(rn(po,{activationConstraint:{distance:4}}),rn(mo,{activationConstraint:{delay:200,tolerance:6}})),s=({active:d,over:u})=>{d.id!==(u==null?void 0:u.id)&&n(m=>{let h=m.findIndex(v=>v.key===d.id),x=m.findIndex(v=>v.key===(u==null?void 0:u.id));return lt(m,h,x)})},l=async()=>{let d=await fe.get(\"/pans/list\");n(d)},c=async()=>{try{await fe.put(\"/pans/list\",{list:t}),g.message.success(\"\\u8BBE\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{await fe.delete(\"/pans/list\"),l(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}};return(0,p.useEffect)(()=>{l()},[]),p.default.createElement(\"div\",null,p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(Ar,{sensors:i,modifiers:[Pr],onDragEnd:s},p.default.createElement(Br,{items:t.map(d=>d.key),strategy:_r},p.default.createElement(g.Table,{components:{body:{row:Rp}},rowKey:\"key\",columns:a,dataSource:t,pagination:!1,size:\"small\",scroll:{x:\"max-content\"}})))),p.default.createElement(g.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",block:!0,onClick:c},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,block:!0,onClick:f},\"\\u91CD\\u7F6E\")))}function em(){let[e]=g.Form.useForm(),[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(!1),a={labelCol:{xs:{span:24},sm:{span:4}},wrapperCol:{xs:{span:24},sm:{span:20}}},i={wrapperCol:{xs:{span:24,offset:0},sm:{span:20,offset:4}}},s=\"/danmu/setting\",l=async()=>{var u;o(!0);try{let h=((u=(await go.default.get(\"/full-config\")).data.video)==null?void 0:u.sites)||[],v=[...new Set(h.map(y=>({key:y.key.replace(\"nodejs_\",\"\"),name:y.name})).filter(y=>y.key&&y.name))].map(y=>({label:\"\".concat(y.name),value:y.key}));n(v)}catch(m){console.error(\"\\u52A0\\u8F7D\\u722C\\u866B\\u5217\\u8868\\u5931\\u8D25:\",m),g.message.error(\"\\u52A0\\u8F7D\\u722C\\u866B\\u5217\\u8868\\u5931\\u8D25\")}finally{o(!1)}},c=async()=>{await l();let u=await fe.get(s);e.setFieldsValue(u)},f=async()=>{let u=await e.validateFields();try{await fe.put(s,u),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(m){console.error(m),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(m==null?void 0:m.message))}},d=async()=>{try{await fe.delete(s),c(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(u){console.error(u),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(u==null?void 0:u.message))}};return(0,p.useEffect)(()=>{c()},[]),p.default.createElement(g.Form,I(C({form:e},a),{className:\"force-light-form-label\"}),p.default.createElement(g.Alert,{message:\"\\u5F00\\u542F\\u81EA\\u52A8\\u63A8\\u9001\\u65F6\\uFF0C\\u81EA\\u52A8\\u9009\\u53D6\\u6700\\u5FEB\\u54CD\\u5E94\\u7684API\",type:\"info\",style:{marginBottom:12}}),p.default.createElement(g.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(u,{add:m,remove:h},{errors:x})=>p.default.createElement(p.default.Fragment,null,u.map((v,y)=>p.default.createElement(g.Form.Item,I(C({label:y===0?\"API\\u5217\\u8868\":\"\",required:!1,key:v.key},y===0?a:i),{style:{marginBottom:12}}),p.default.createElement(g.Space,{direction:\"vertical\",style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},v),{name:[v.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\",style:{width:\"100%\"}})),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},v),{name:[v.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u522B\\u540D\",style:{width:\"100%\"}})),u.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(xn,null),onClick:()=>h(v.name)}))))),p.default.createElement(g.Form.Item,C({label:\"\"},i),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>m(),block:!0,icon:p.default.createElement(nt,null)},\"\\u6DFB\\u52A0API\"),p.default.createElement(g.Form.ErrorList,{errors:x})))),p.default.createElement(g.Form.Item,C({label:null},i),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(zC,null))),p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\"},p.default.createElement(g.Switch,null)),p.default.createElement(g.Form.Item,{label:\"\\u5F39\\u5E55\\u683C\\u5F0F\",name:\"format\",initialValue:\"xml\",tooltip:\"\\u63A7\\u5236\\u81EA\\u52A8\\u5F39\\u5E55\\u548C\\u624B\\u52A8\\u5F39\\u5E55\\u7684\\u8F93\\u51FA\\u683C\\u5F0F\"},p.default.createElement(g.Select,{options:[{label:\"XML\",value:\"xml\"},{label:\"JSON\",value:\"json\"}]})),p.default.createElement(g.Form.Item,{label:\"\\u63A8\\u9001\\u9ED1\\u540D\\u5355\",name:\"autoPushBlacklist\",tooltip:\"\\u9ED1\\u540D\\u5355\\u4E2D\\u7684\\u7AD9\\u70B9\\u4E0D\\u4F1A\\u81EA\\u52A8\\u63A8\\u9001\\u5F39\\u5E55\"},p.default.createElement(g.Select,{mode:\"multiple\",placeholder:\"\\u9009\\u62E9\\u4E0D\\u9700\\u8981\\u81EA\\u52A8\\u63A8\\u9001\\u5F39\\u5E55\\u7684\\u7AD9\\u70B9\",style:{width:\"100%\"},options:t,loading:r,showSearch:!1,virtual:!1,dropdownMatchSelectWidth:!1,dropdownRender:u=>p.default.createElement(\"div\",null,p.default.createElement(\"div\",{style:{padding:\"4px 8px\",color:\"#666\",fontSize:\"12px\"}},\"\\u70B9\\u51FB\\u9009\\u62E9\\u9ED1\\u540D\\u5355\\u7AD9\\u70B9\"),u)})),p.default.createElement(g.Form.Item,C({label:null},i),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:f,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:d,block:!0},\"\\u91CD\\u7F6E\"),p.default.createElement(g.Button,{onClick:l,loading:r,block:!0,type:\"default\"},\"\\u5237\\u65B0\\u7AD9\\u70B9\\u5217\\u8868\"))))}function zC(){let e=p.default.useCallback(()=>{try{window.location.href=\"/internal-danmu/ui\"}catch(t){console.error(t),g.message.error(\"\\u6253\\u5F00\\u5B8C\\u6574\\u5F39\\u5E55UI\\u5931\\u8D25\")}},[]);return p.default.createElement(g.Button,{icon:p.default.createElement(wr,null),block:!0,onClick:e},\"\\u5185\\u7F6E\\u5F39\\u5E55UI\")}function tm(){let[e]=g.Form.useForm(),t={labelCol:{span:0},wrapperCol:{span:24}},n={wrapperCol:{span:24,offset:0}},r=\"/t4/list\",o=async()=>{let s=await fe.get(r);e.setFieldsValue({list:s})},a=async()=>{let s=await e.validateFields();try{await fe.put(r,s.list),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u4FDD\\u5B58\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(l){console.error(l),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},i=async()=>{try{await fe.delete(r),o(),g.message.success(\"\\u6E05\\u7A7A\\u6210\\u529F\")}catch(s){console.error(s),g.message.error(\"\\u6E05\\u7A7A\\u5931\\u8D25\\uFF1A\".concat(s==null?void 0:s.message))}};return(0,p.useEffect)(()=>{o()},[]),p.default.createElement(g.Form,I(C({form:e},t),{className:\"force-light-form-label\"}),p.default.createElement(g.Form.List,{name:\"list\"},(s,{add:l,remove:c},{errors:f})=>p.default.createElement(p.default.Fragment,null,s.map((d,u)=>p.default.createElement(g.Form.Item,I(C({required:!1,key:d.key},t),{style:{marginBottom:12}}),p.default.createElement(g.Space,{direction:\"vertical\",style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},d),{name:[d.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165T4\\u63A5\\u53E3\\u5730\\u5740\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165T4\\u63A5\\u53E3\\u5730\\u5740\",style:{width:\"100%\"}})),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},d),{name:[d.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],noStyle:!0,rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]}),p.default.createElement(g.Input,{placeholder:\"\\u540D\\u79F0\",style:{width:\"100%\"}})),p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(xn,null),onClick:()=>c(d.name)}))))),p.default.createElement(g.Form.Item,C({label:\"\"},n),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:p.default.createElement(nt,null)},\"\\u6DFB\\u52A0T4\\u63A5\\u53E3\"),p.default.createElement(g.Form.ErrorList,{errors:f})))),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:a,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:i,block:!0},\"\\u6E05\\u7A7A\"))))}function nm(){let e=\"/cms/list\",[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(\"\"),[a,i]=(0,p.useState)([]),[s,l]=(0,p.useState)({}),c=[{title:\"\\u540D\\u79F0\",dataIndex:\"name\",key:\"name\"},{title:\"API\",dataIndex:\"address\",key:\"address\",render:w=>w.startsWith(\"csp_\")?p.default.createElement(g.Tag,{color:\"red\"},\"\\u5DF2\\u8FC7\\u6EE4: \",w):w},{title:\"\\u64CD\\u4F5C\",key:\"action\",width:80,render:(w,D)=>D.address.startsWith(\"csp_\")?p.default.createElement(g.Tag,{color:\"default\"},\"\\u5DF2\\u81EA\\u52A8\\u8FC7\\u6EE4\"):p.default.createElement(g.Button,{type:\"link\",danger:!0,onClick:()=>v(D.key)},\"\\u5220\\u9664\")}],f=w=>w.filter(D=>!(D.api||D.address||\"\").startsWith(\"csp_\")),d=async()=>{let w=await fe.get(e),D=f(w);i(D);let O=[...new Set(D.map(F=>{try{if(F.address&&F.address.startsWith(\"http\")){let T=new URL(F.address);return\"\".concat(T.protocol,\"//\").concat(T.host)}}catch(T){}return null}).filter(Boolean))];O.length>0&&n(O)},u=()=>{if(!r.trim()){g.message.error(\"\\u8BF7\\u8F93\\u5165CMS\\u63A5\\u53E3\\u5730\\u5740\");return}let w=r.trim();w.startsWith(\"http\")||(w=\"http://\"+w);try{new URL(w),t.includes(w)?g.message.warning(\"\\u8BE5\\u5730\\u5740\\u5DF2\\u5B58\\u5728\"):(n([...t,w]),o(\"\"))}catch(D){g.message.error(\"\\u8BF7\\u8F93\\u5165\\u6709\\u6548\\u7684URL\\u5730\\u5740\")}},m=w=>{let D=[...t];D.splice(w,1),n(D)},h=async(w,D)=>{l(I(C({},s),{[D]:!0}));try{let{data:O}=await go.default.get(w.trim(),{timeout:1e4});if(O.sites&&O.sites.length){let F=f(O.sites),T=F.map(E=>({key:\"\".concat(w,\"-\").concat(E.api||E.name),name:E.name,address:E.api||w}));i(E=>{let N=new Set(E.map(K=>K.key)),U=T.filter(K=>!N.has(K.key));return[...E,...U]});let P=O.sites.length-F.length,V=\"\".concat(w,\" \\u89E3\\u6790\\u6210\\u529F\\uFF0C\\u65B0\\u589E\").concat(T.length,\"\\u4E2A\\u7AD9\\u70B9\");P>0&&(V+=\"\\uFF0C\\u81EA\\u52A8\\u8FC7\\u6EE4\".concat(P,\"\\u4E2Acsp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\")),g.message.success(V)}else g.message.warning(\"\".concat(w,\" \\u6CA1\\u6709\\u627E\\u5230\\u53EF\\u7528\\u7684\\u7AD9\\u70B9\\u6570\\u636E\"))}catch(O){console.error(O),g.message.error(\"\".concat(w,\" \\u63A5\\u53E3\\u89E3\\u6790\\u5931\\u8D25: \").concat(O.message))}finally{let O=C({},s);delete O[D],l(O)}},x=async()=>{if(t.length===0){g.message.error(\"\\u8BF7\\u5148\\u6DFB\\u52A0CMS\\u63A5\\u53E3\\u5730\\u5740\");return}window.confirm(\"\\u662F\\u5426\\u6E05\\u7A7A\\u73B0\\u6709\\u7AD9\\u70B9\\u6570\\u636E\\uFF0C\\u91CD\\u65B0\\u4ECE\\u6240\\u6709CMS\\u63A5\\u53E3\\u89E3\\u6790\\uFF1F\")&&i([]);let D=0;for(let O=0;O{i(a.filter(D=>D.key!==w))},y=()=>{i([])},b=async()=>{let w=f(a);try{await fe.put(e,w),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u4FDD\\u5B58\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u5171\\u4FDD\\u5B58\\u4E86\",w.length,\"\\u4E2A\\u7AD9\\u70B9\",p.default.createElement(\"br\",null),a.length-w.length>0&&\"\\u5DF2\\u81EA\\u52A8\\u8FC7\\u6EE4\".concat(a.length-w.length,\"\\u4E2Acsp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\"),p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(D){console.error(D),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(D==null?void 0:D.message))}},S=async()=>{try{await fe.delete(e),i([]),n([]),o(\"\"),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(w){console.error(w),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(w==null?void 0:w.message))}};return(0,p.useEffect)(()=>{d()},[]),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(g.Card,{title:\"CMS\\u63A5\\u53E3\\u5730\\u5740\\u7BA1\\u7406\",style:{marginBottom:16}},p.default.createElement(g.Space.Compact,{style:{width:\"100%\",marginBottom:12}},p.default.createElement(g.Input,{placeholder:\"\\u8F93\\u5165XPTV CMS\\u63A5\\u53E3\\u5730\\u5740 (\\u5982: http://example.com/api.php)\",value:r,onChange:w=>o(w.target.value),onPressEnter:u}),p.default.createElement(g.Button,{type:\"primary\",onClick:u},\"\\u6DFB\\u52A0\")),t.length>0&&p.default.createElement(\"div\",{style:{marginBottom:16}},p.default.createElement(g.Divider,null,\"\\u5DF2\\u6DFB\\u52A0\\u7684CMS\\u63A5\\u53E3\\u5730\\u5740 (\",t.length,\"\\u4E2A)\"),p.default.createElement(g.List,{size:\"small\",dataSource:t,renderItem:(w,D)=>p.default.createElement(g.List.Item,{actions:[p.default.createElement(g.Button,{key:\"parse\",type:\"link\",loading:s[D],onClick:()=>h(w,D)},\"\\u89E3\\u6790\"),p.default.createElement(g.Button,{key:\"delete\",type:\"link\",danger:!0,onClick:()=>m(D)},\"\\u5220\\u9664\")]},p.default.createElement(g.Tag,{color:\"blue\"},w))}),p.default.createElement(\"div\",{style:{marginTop:16,display:\"flex\",gap:\"8px\",flexWrap:\"wrap\"}},p.default.createElement(g.Button,{type:\"primary\",onClick:x,loading:Object.values(s).some(Boolean)},\"\\u6279\\u91CF\\u89E3\\u6790\\u6240\\u6709CMS\\u63A5\\u53E3\"),p.default.createElement(g.Button,{danger:!0,onClick:y},\"\\u6E05\\u7A7A\\u6240\\u6709\\u7AD9\\u70B9\")))),p.default.createElement(g.Card,{title:\"\\u89E3\\u6790\\u51FA\\u7684\\u7AD9\\u70B9\\u5217\\u8868\"},p.default.createElement(g.Alert,{message:\"\\u5DF2\\u89E3\\u6790\\u51FA \".concat(a.length,\" \\u4E2A\\u7AD9\\u70B9\\uFF0C\\u7CFB\\u7EDF\\u4F1A\\u81EA\\u52A8\\u8FC7\\u6EE4csp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\"),type:\"info\",showIcon:!0,style:{marginBottom:12}}),p.default.createElement(g.Table,{columns:c,dataSource:a,pagination:!1,rowKey:\"key\",scroll:{y:300},locale:{emptyText:\"\\u6682\\u65E0\\u7AD9\\u70B9\\u6570\\u636E\\uFF0C\\u8BF7\\u5148\\u6DFB\\u52A0CMS\\u63A5\\u53E3\\u5E76\\u89E3\\u6790\"}}),p.default.createElement(\"div\",{style:{marginTop:16,textAlign:\"center\"}},p.default.createElement(g.Button,{type:\"primary\",onClick:b,style:{marginRight:8}},\"\\u4FDD\\u5B58\\u7AD9\\u70B9\\u914D\\u7F6E (\",a.length,\"\\u4E2A)\"),p.default.createElement(g.Button,{danger:!0,onClick:S},\"\\u91CD\\u7F6E\\u6240\\u6709\\u914D\\u7F6E\"))))}var fo=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function Js(){let[e,t]=(0,p.useState)([]),[n,r]=(0,p.useState)(!1),[o,a]=(0,p.useState)(!1);(0,p.useEffect)(()=>{r(!0),fe.get(\"/emby/config\").then(s=>{let l=Array.isArray(s)?s:[];l.length===0?l=[{id:fo(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",server:\"\",enabled:!0,username:\"\",password:\"\",token:\"\",isJellyfin:!1,playStrategies:\"custom\",playStrategyOrder:[\"stream\",\"direct\",\"directPlay\",\"transcoding\",\"master\"]},{id:fo(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",server:\"\",enabled:!0,username:\"\",password:\"\",token:\"\",isJellyfin:!1,playStrategies:\"custom\",playStrategyOrder:[\"stream\",\"direct\",\"directPlay\",\"transcoding\",\"master\"]}]:l=l.map(c=>I(C({},c),{id:c.id?String(c.id):fo()})),t(l)}).catch(s=>{console.error(\"\\u52A0\\u8F7DEmby\\u914D\\u7F6E\\u51FA\\u9519:\",s),t([{id:fo(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",server:\"\",enabled:!0,isJellyfin:!1,playStrategies:\"custom\"},{id:fo(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",server:\"\",enabled:!0,isJellyfin:!1,playStrategies:\"custom\"}])}).finally(()=>{r(!1),a(!0)})},[]);let i=async()=>{r(!0);try{await fe.put(\"/emby/config\",e),g.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(s){g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+s.message)}finally{r(!1)}};return o?p.default.createElement(g.Card,{bordered:!1},p.default.createElement(Bf,{config:{emby:e},updateConfig:s=>t(s.emby)}),p.default.createElement(g.Divider,null),p.default.createElement(g.Button,{type:\"primary\",block:!0,size:\"large\",onClick:i,loading:n},\"\\u4FDD\\u5B58\\u914D\\u7F6E\")):p.default.createElement(g.Card,{loading:!0,bordered:!1})}function Qs(){let[e]=g.Form.useForm(),t=\"/pansou/config\",n=g.Form.useWatch(\"pancheck_mode\",e)||\"off\",r=async()=>{let a=await fe.get(t),i=I(C({},a),{pancheck_mode:a.pancheck_mode||(a.pancheck_enabled?\"pancheck\":\"off\"),selected_platforms:a.selected_platforms_str||(Array.isArray(a.selected_platforms)?a.selected_platforms.join(\",\"):\"\")});e.setFieldsValue(i)},o=async()=>{let a=await e.validateFields();await fe.put(t,a),g.message.success(\"Pansou\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\")};return(0,p.useEffect)(()=>{r()},[]),p.default.createElement(g.Card,{variant:\"borderless\"},p.default.createElement(g.Form,{form:e,layout:\"vertical\"},p.default.createElement(g.Form.Item,{label:\"\\u76D8\\u641C API (\\u591A\\u4E2A\\u4EE5\\u9017\\u53F7\\u5206\\u9694)\",name:\"api_urls\"},p.default.createElement(g.Input.TextArea,{rows:2})),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u9891\\u9053\",name:\"channels\"},p.default.createElement(g.Input,{placeholder:\"\\u7559\\u7A7A\\u641C\\u7D22\\u5168\\u90E8\\u9891\\u9053\"}))),p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u63D2\\u4EF6\",name:\"plugins\"},p.default.createElement(g.Input,{placeholder:\"\\u7559\\u7A7A\\u641C\\u7D22\\u5168\\u90E8\\u63D2\\u4EF6\"})))),p.default.createElement(g.Form.Item,{label:\"\\u641C\\u7D22\\u7684\\u7F51\\u76D8\\u7C7B\\u578B\",name:\"cloud_types\",extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\",color:\"#666\"}},\"\\u7559\\u7A7A\\u9ED8\\u8BA4\\u641C\\u7D22\\uFF1Abaidu,aliyun,quark,tianyi,uc,mobile,115,123\",p.default.createElement(\"br\",null),\"\\u591A\\u4E2A\\u7528\\u9017\\u53F7\\u5206\\u9694\")},p.default.createElement(g.Input,{placeholder:\"baidu,aliyun,quark,tianyi,uc,mobile,115,123\"})),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u5305\\u542B\\u8BCD (Include)\",name:\"include\"},p.default.createElement(g.Input,{placeholder:\"\\u591A\\u4E2A\\u9017\\u53F7\\u5206\\u9694\"}))),p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u6392\\u9664\\u8BCD (Exclude)\",name:\"exclude\"},p.default.createElement(g.Input,{placeholder:\"\\u591A\\u4E2A\\u9017\\u53F7\\u5206\\u9694\"})))),p.default.createElement(g.Form.Item,{label:\"\\u68C0\\u6D4B\\u6A21\\u5F0F\",name:\"pancheck_mode\",initialValue:\"off\",extra:\"\\u5173\\u95ED\\uFF1A\\u4E0D\\u68C0\\u6D4B\\uFF1B\\u68C0\\u6D4B\\uFF1A\\u590D\\u7528 pansou \\u81EA\\u5E26\\u68C0\\u6D4B\\u63A5\\u53E3\\uFF1Bpancheck\\uFF1A\\u4F7F\\u7528\\u5916\\u90E8 pancheck \\u670D\\u52A1\"},p.default.createElement(g.Radio.Group,null,p.default.createElement(g.Radio.Button,{value:\"off\"},\"\\u5173\\u95ED\"),p.default.createElement(g.Radio.Button,{value:\"detect\"},\"\\u68C0\\u6D4B\"),p.default.createElement(g.Radio.Button,{value:\"pancheck\"},\"pancheck\"))),p.default.createElement(g.Form.Item,{label:\"\\u68C0\\u6D4B\\u7684\\u7F51\\u76D8\\u7C7B\\u578B\",name:\"selected_platforms\",extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\",color:\"#666\"}},\"\\u7559\\u7A7A\\u9ED8\\u8BA4\\u68C0\\u6D4B\\uFF1Aquark,uc,tianyi,pan123,pan115,cmcc,baidu,aliyun\",p.default.createElement(\"br\",null),\"\\u591A\\u4E2A\\u7528\\u9017\\u53F7\\u5206\\u9694\")},p.default.createElement(g.Input,{placeholder:\"quark,uc,tianyi,pan123,pan115,cmcc,baidu,aliyun\"})),n===\"pancheck\"?p.default.createElement(g.Form.Item,{label:\"Pancheck \\u670D\\u52A1\\u5730\\u5740\",name:\"pancheck\"},p.default.createElement(g.Input,{placeholder:\"https://vyzdeslmqkfx.ap-northeast-1.clawcloudrun.com\"})):null,p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:8},p.default.createElement(g.Form.Item,{label:\"\\u6BCF\\u7C7B\\u7F51\\u76D8\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\",extra:\"0 \\u4E3A\\u4E0D\\u9650\\u5236\\uFF0C\\u9ED8\\u8BA4 0\"},p.default.createElement(g.InputNumber,{min:0,style:{width:\"100%\"}})))),p.default.createElement(g.Form.Item,null,p.default.createElement(g.Button,{type:\"primary\",onClick:o,block:!0},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"))))}function $C(){let[e,t]=(0,p.useState)(!1);return(0,p.useEffect)(()=>{let r=()=>{t(window.innerWidth<768)};return r(),window.addEventListener(\"resize\",r),()=>window.removeEventListener(\"resize\",r)},[]),p.default.createElement(\"div\",{className:\"app-layout\"},p.default.createElement(\"div\",{className:\"app-header-row\"},p.default.createElement(g.Space,{className:\"import-export-buttons\"},p.default.createElement(g.Upload,C({},{accept:\".json\",showUploadList:!1,beforeUpload(r){let o=new FileReader;return o.onload=async a=>{try{let i=JSON.parse(a.target.result);console.log(\"Parsed JSON data:\",i),await fe.put(\"/backup\",i),g.message.success(\"\".concat(r.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(i){g.message.error(\"\".concat(r.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(i.message)),console.error(\"Error parsing JSON:\",i)}},o.readAsText(r),!1}}),p.default.createElement(g.Button,{type:\"primary\",size:\"small\"},\"\\u5BFC\\u5165\")),p.default.createElement(g.Button,{type:\"default\",size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\"))),p.default.createElement(g.Tabs,{defaultActiveKey:\"cloud_drives\",centered:e,tabPosition:\"top\",style:{minHeight:\"100vh\"},className:\"force-light-tabs\"},p.default.createElement(lr,{tab:\"\\u7F51\\u76D8\",key:\"cloud_drives\"},p.default.createElement(Pp,null)),p.default.createElement(lr,{tab:\"\\u7AD9\\u6E90\",key:\"sources\"},p.default.createElement(Kp,null)),p.default.createElement(lr,{tab:\"\\u5F39\\u5E55\",key:\"danmu\"},p.default.createElement(em,null)),p.default.createElement(lr,{tab:\"T4/CMS\",key:\"t4_cms\"},p.default.createElement(g.Tabs,{animated:{inkBar:!0,tabPane:!0},destroyInactiveTabPane:!0,tabPosition:e?\"top\":\"left\",tabBarStyle:{width:e?\"auto\":120,marginBottom:16,whiteSpace:\"nowrap\",overflowX:\"auto\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"},className:\"force-light-tabs\"},p.default.createElement(lr,{tab:\"T4\\u63A5\\u53E3\",key:\"t4\"},p.default.createElement(tm,null)),p.default.createElement(lr,{tab:\"CMS\\u63A5\\u53E3\",key:\"cms\"},p.default.createElement(nm,null))))))}function UC(){document.documentElement.classList.toggle(\"platform-android\",/Android/i.test(window.navigator.userAgent||\"\")),(0,Qp.createRoot)(document.getElementById(\"app\")).render(p.default.createElement($C,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n\nuse-sync-external-store/cjs/use-sync-external-store-with-selector.production.js:\n (**\n * @license React\n * use-sync-external-store-with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n", - ' module.exports.renderClient();', - '})();' - ].join('\n'); -})(); - - - -globalThis.danmuBundle = (() => { - return [ - '(function() {', - ' const exports = {};', - ' const module = { exports };', - "var Or=Object.create;var te=Object.defineProperty,Tr=Object.defineProperties,br=Object.getOwnPropertyDescriptor,Cr=Object.getOwnPropertyDescriptors,wr=Object.getOwnPropertyNames,Ge=Object.getOwnPropertySymbols,yr=Object.getPrototypeOf,Ze=Object.prototype.hasOwnProperty,Sr=Object.prototype.propertyIsEnumerable;var Ke=(t,e,r)=>e in t?te(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,J=(t,e)=>{for(var r in e||(e={}))Ze.call(e,r)&&Ke(t,r,e[r]);if(Ge)for(var r of Ge(e))Sr.call(e,r)&&Ke(t,r,e[r]);return t},X=(t,e)=>Tr(t,Cr(e));var ee=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Fr=(t,e)=>{for(var r in e)te(t,r,{get:e[r],enumerable:!0})},Qe=(t,e,r,o)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of wr(e))!Ze.call(t,a)&&a!==r&&te(t,a,{get:()=>e[a],enumerable:!(o=br(e,a))||o.enumerable});return t};var P=(t,e,r)=>(r=t!=null?Or(yr(t)):{},Qe(e||!t||!t.__esModule?te(r,\"default\",{value:t,enumerable:!0}):r,t)),vr=t=>Qe(te({},\"__esModule\",{value:!0}),t);var H=ee((So,Ye)=>{Ye.exports=window.React});var Xe=ee((Fo,Je)=>{Je.exports=window.ReactDOM});var tt=ee(Fe=>{\"use strict\";var et=Xe();Fe.createRoot=et.createRoot,Fe.hydrateRoot=et.hydrateRoot;var vo});var ot=ee((ko,rt)=>{rt.exports=window.antd});var mt=ee((Xo,de)=>{(function(){\"use strict\";var t={}.hasOwnProperty;function e(){for(var a=\"\",l=0;l{mr.exports=window.axios});var wo={};Fr(wo,{Danmu:()=>gr,renderDanmu:()=>Co});module.exports=vr(wo);var f=P(H(),1),xr=P(tt(),1),h=P(ot(),1);var at=P(H()),Dr=(0,at.createContext)({}),ne=Dr;function M(){return M=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,o=Array(e);rparseFloat(a));for(let a=0;a<3;a+=1)o[a]=e(o[a]||0,r[a]||\"\",a);return r[3]?o[3]=r[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var ct=(t,e,r)=>r===0?t:t/100;function re(t,e){let r=e||255;return t>r?r:t<0?0:t}var K=class t{constructor(e){D(this,\"isValid\",!0),D(this,\"r\",0),D(this,\"g\",0),D(this,\"b\",0),D(this,\"a\",1),D(this,\"_h\",void 0),D(this,\"_s\",void 0),D(this,\"_l\",void 0),D(this,\"_v\",void 0),D(this,\"_max\",void 0),D(this,\"_min\",void 0),D(this,\"_brightness\",void 0);function r(o){return o[0]in e&&o[1]in e&&o[2]in e}if(e)if(typeof e==\"string\"){let a=function(l){return o.startsWith(l)},o=e.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(e instanceof t)this.r=e.r,this.g=e.g,this.b=e.b,this.a=e.a,this._h=e._h,this._s=e._s,this._l=e._l,this._v=e._v;else if(r(\"rgb\"))this.r=re(e.r),this.g=re(e.g),this.b=re(e.b),this.a=typeof e.a==\"number\"?re(e.a,1):1;else if(r(\"hsl\"))this.fromHsl(e);else if(r(\"hsv\"))this.fromHsv(e);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(e))}setR(e){return this._sc(\"r\",e)}setG(e){return this._sc(\"g\",e)}setB(e){return this._sc(\"b\",e)}setA(e){return this._sc(\"a\",e,1)}setHue(e){let r=this.toHsv();return r.h=e,this._c(r)}getLuminance(){function e(l){let n=l/255;return n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4)}let r=e(this.r),o=e(this.g),a=e(this.b);return .2126*r+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let e=this.getMax()-this.getMin();e===0?this._h=0:this._h=k(60*(this.r===this.getMax()?(this.g-this.b)/e+(this.g\"u\"){let e=this.getMax()-this.getMin();e===0?this._s=0:this._s=e/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()-e/100;return a<0&&(a=0),this._c({h:r,s:o,l:a,a:this.a})}lighten(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()+e/100;return a>1&&(a=1),this._c({h:r,s:o,l:a,a:this.a})}mix(e,r=50){let o=this._c(e),a=r/100,l=c=>(o[c]-this[c])*a+this[c],n={r:k(l(\"r\")),g:k(l(\"g\")),b:k(l(\"b\")),a:k(l(\"a\")*100)/100};return this._c(n)}tint(e=10){return this.mix({r:255,g:255,b:255,a:1},e)}shade(e=10){return this.mix({r:0,g:0,b:0,a:1},e)}onBackground(e){let r=this._c(e),o=this.a+r.a*(1-this.a),a=l=>k((this[l]*this.a+r[l]*r.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}clone(){return this._c(this)}toHexString(){let e=\"#\",r=(this.r||0).toString(16);e+=r.length===2?r:\"0\"+r;let o=(this.g||0).toString(16);e+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(e+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let l=k(this.a*255).toString(16);e+=l.length===2?l:\"0\"+l}return e}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let e=this.getHue(),r=k(this.getSaturation()*100),o=k(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(e,r,o){let a=this.clone();return a[e]=re(r,o),a}_c(e){return new this.constructor(e)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(e){let r=e.replace(\"#\",\"\");function o(a,l){return parseInt(r[a]+r[l||a],16)}r.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=r[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=r[6]?o(6,7)/255:1)}fromHsl({h:e,s:r,l:o,a}){if(this._h=e%360,this._s=r,this._l=o,this.a=typeof a==\"number\"?a:1,r<=0){let d=k(o*255);this.r=d,this.g=d,this.b=d}let l=0,n=0,c=0,m=e/60,u=(1-Math.abs(2*o-1))*r,g=u*(1-Math.abs(m%2-1));m>=0&&m<1?(l=u,n=g):m>=1&&m<2?(l=g,n=u):m>=2&&m<3?(n=u,c=g):m>=3&&m<4?(n=g,c=u):m>=4&&m<5?(l=g,c=u):m>=5&&m<6&&(l=u,c=g);let b=o-u/2;this.r=k((l+b)*255),this.g=k((n+b)*255),this.b=k((c+b)*255)}fromHsv({h:e,s:r,v:o,a}){this._h=e%360,this._s=r,this._v=o,this.a=typeof a==\"number\"?a:1;let l=k(o*255);if(this.r=l,this.g=l,this.b=l,r<=0)return;let n=e/60,c=Math.floor(n),m=n-c,u=k(o*(1-r)*255),g=k(o*(1-r*m)*255),b=k(o*(1-r*(1-m))*255);switch(c){case 0:this.g=b,this.b=u;break;case 1:this.r=g,this.b=u;break;case 2:this.r=u,this.b=b;break;case 3:this.r=u,this.g=g;break;case 4:this.r=b,this.g=u;break;case 5:default:this.g=u,this.b=g;break}}fromHsvString(e){let r=De(e,ct);this.fromHsv({h:r[0],s:r[1],v:r[2],a:r[3]})}fromHslString(e){let r=De(e,ct);this.fromHsl({h:r[0],s:r[1],l:r[2],a:r[3]})}fromRgbString(e){let r=De(e,(o,a)=>a.includes(\"%\")?k(o/100*255):o);this.r=r[0],this.g=r[1],this.b=r[2],this.a=r[3]}};var se=2,pt=.16,kr=.05,Ar=.05,Er=.15,Ot=5,Tt=4,Pr=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function xt(t,e,r){var o;return Math.round(t.h)>=60&&Math.round(t.h)<=240?o=r?Math.round(t.h)-se*e:Math.round(t.h)+se*e:o=r?Math.round(t.h)+se*e:Math.round(t.h)-se*e,o<0?o+=360:o>=360&&(o-=360),o}function ht(t,e,r){if(t.h===0&&t.s===0)return t.s;var o;return r?o=t.s-pt*e:e===Tt?o=t.s+pt:o=t.s+kr*e,o>1&&(o=1),r&&e===Ot&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function gt(t,e,r){var o;return r?o=t.v+Ar*e:o=t.v-Er*e,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function ue(t){for(var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=[],o=new K(t),a=o.toHsv(),l=Ot;l>0;l-=1){var n=new K({h:xt(a,l,!0),s:ht(a,l,!0),v:gt(a,l,!0)});r.push(n)}r.push(o);for(var c=1;c<=Tt;c+=1){var m=new K({h:xt(a,c),s:ht(a,c),v:gt(a,c)});r.push(m)}return e.theme===\"dark\"?Pr.map(function(u){var g=u.index,b=u.amount;return new K(e.backgroundColor||\"#141414\").mix(r[g],b).toHexString()}):r.map(function(u){return u.toHexString()})}var bt=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];bt.primary=bt[5];var Ct=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];Ct.primary=Ct[5];var wt=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];wt.primary=wt[5];var yt=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];yt.primary=yt[5];var St=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];St.primary=St[5];var Ft=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Ft.primary=Ft[5];var vt=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];vt.primary=vt[5];var Dt=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Dt.primary=Dt[5];var me=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];me.primary=me[5];var kt=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];kt.primary=kt[5];var At=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];At.primary=At[5];var Et=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Et.primary=Et[5];var Pt=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Pt.primary=Pt[5];var Mt=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Mt.primary=Mt[5];var Rt=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Rt.primary=Rt[5];var It=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];It.primary=It[5];var _t=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];_t.primary=_t[5];var Bt=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];Bt.primary=Bt[5];var Lt=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Lt.primary=Lt[5];var Nt=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Nt.primary=Nt[5];var Ht=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Ht.primary=Ht[5];var qt=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];qt.primary=qt[5];var Vt=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];Vt.primary=Vt[5];var zt=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];zt.primary=zt[5];var Ut=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];Ut.primary=Ut[5];var $t=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];$t.primary=$t[5];function jt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),r.push.apply(r,o)}return r}function I(t){for(var e=1;e0&&arguments[0]!==void 0?arguments[0]:{},e=t.mark;return e?e.startsWith(\"data-\")?e:\"data-\".concat(e):Mr}function Pe(t){if(t.attachTo)return t.attachTo;var e=document.querySelector(\"head\");return e||document.body}function Rr(t){return t===\"queue\"?\"prependQueue\":t?\"prepend\":\"append\"}function Me(t){return Array.from((Ee.get(t)||t).children).filter(function(e){return e.tagName===\"STYLE\"})}function Zt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!ke())return null;var r=e.csp,o=e.prepend,a=e.priority,l=a===void 0?0:a,n=Rr(o),c=n===\"prependQueue\",m=document.createElement(\"style\");m.setAttribute(Wt,n),c&&l&&m.setAttribute(Gt,\"\".concat(l)),r!=null&&r.nonce&&(m.nonce=r==null?void 0:r.nonce),m.innerHTML=t;var u=Pe(e),g=u.firstChild;if(o){if(c){var b=(e.styles||Me(u)).filter(function(d){if(![\"prepend\",\"prependQueue\"].includes(d.getAttribute(Wt)))return!1;var p=Number(d.getAttribute(Gt)||0);return l>=p});if(b.length)return u.insertBefore(m,b[b.length-1].nextSibling),m}u.insertBefore(m,g)}else u.appendChild(m);return m}function Ir(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=Pe(e);return(e.styles||Me(r)).find(function(o){return o.getAttribute(Kt(e))===t})}function _r(t,e){var r=Ee.get(t);if(!r||!Ae(document,r)){var o=Zt(\"\",e),a=o.parentNode;Ee.set(t,a),t.removeChild(o)}}function Qt(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=Pe(r),a=Me(o),l=I(I({},r),{},{styles:a});_r(o,l);var n=Ir(e,l);if(n){var c,m;if((c=l.csp)!==null&&c!==void 0&&c.nonce&&n.nonce!==((m=l.csp)===null||m===void 0?void 0:m.nonce)){var u;n.nonce=(u=l.csp)===null||u===void 0?void 0:u.nonce}return n.innerHTML!==t&&(n.innerHTML=t),n}var g=Zt(t,l);return g.setAttribute(Kt(l),e),g}function Yt(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}function Br(t){return Yt(t)instanceof ShadowRoot}function Jt(t){return Br(t)?Yt(t):null}var Re={},Lr=[],Nr=function(e){Lr.push(e)};function Hr(t,e){if(0)var r}function qr(t,e){if(0)var r}function Vr(){Re={}}function Xt(t,e,r){!e&&!Re[r]&&(t(!1,r),Re[r]=!0)}function ce(t,e){Xt(Hr,t,e)}function zr(t,e){Xt(qr,t,e)}ce.preMessage=Nr;ce.resetWarned=Vr;ce.noteOnce=zr;var er=ce;var Z=P(H());function Ur(t){return t.replace(/-(.)/g,function(e,r){return r.toUpperCase()})}function rr(t,e){er(t,\"[@ant-design/icons] \".concat(e))}function Ie(t){return q(t)===\"object\"&&typeof t.name==\"string\"&&typeof t.theme==\"string\"&&(q(t.icon)===\"object\"||typeof t.icon==\"function\")}function tr(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(t).reduce(function(e,r){var o=t[r];switch(r){case\"class\":e.className=o,delete e.class;break;default:delete e[r],e[Ur(r)]=o}return e},{})}function pe(t,e,r){return r?Z.default.createElement(t.tag,I(I({key:e},tr(t.attrs)),r),(t.children||[]).map(function(o,a){return pe(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))})):Z.default.createElement(t.tag,I({key:e},tr(t.attrs)),(t.children||[]).map(function(o,a){return pe(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))}))}function _e(t){return ue(t)[0]}function xe(t){return t?Array.isArray(t)?t:[t]:[]}var $r=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",or=function(e){var r=(0,Z.useContext)(ne),o=r.csp,a=r.prefixCls,l=r.layer,n=$r;a&&(n=n.replace(/anticon/g,a)),l&&(n=\"@layer \".concat(l,\" {\\n\").concat(n,\"\\n}\")),(0,Z.useEffect)(function(){var c=e.current,m=Jt(c);Qt(n,\"@ant-design-icons\",{prepend:!l,csp:o,attachTo:m})},[])};var jr=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],oe={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Wr(t){var e=t.primaryColor,r=t.secondaryColor;oe.primaryColor=e,oe.secondaryColor=r||_e(e),oe.calculated=!!r}function Gr(){return I({},oe)}var he=function(e){var r=e.icon,o=e.className,a=e.onClick,l=e.style,n=e.primaryColor,c=e.secondaryColor,m=fe(e,jr),u=ar.useRef(),g=oe;if(n&&(g={primaryColor:n,secondaryColor:c||_e(n)}),or(u),rr(Ie(r),\"icon should be icon definiton, but got \".concat(r)),!Ie(r))return null;var b=r;return b&&typeof b.icon==\"function\"&&(b=I(I({},b),{},{icon:b.icon(g.primaryColor,g.secondaryColor)})),pe(b.icon,\"svg-\".concat(b.name),I(I({className:o,onClick:a,style:l,\"data-icon\":b.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},m),{},{ref:u}))};he.displayName=\"IconReact\";he.getTwoToneColors=Gr;he.setTwoToneColors=Wr;var ae=he;function Be(t){var e=xe(t),r=ie(e,2),o=r[0],a=r[1];return ae.setTwoToneColors({primaryColor:o,secondaryColor:a})}function lr(){var t=ae.getTwoToneColors();return t.calculated?[t.primaryColor,t.secondaryColor]:t.primaryColor}var Kr=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];Be(me.primary);var ge=Q.forwardRef(function(t,e){var r=t.className,o=t.icon,a=t.spin,l=t.rotate,n=t.tabIndex,c=t.onClick,m=t.twoToneColor,u=fe(t,Kr),g=Q.useContext(ne),b=g.prefixCls,d=b===void 0?\"anticon\":b,p=g.rootClassName,C=(0,nr.default)(p,d,D(D({},\"\".concat(d,\"-\").concat(o.name),!!o.name),\"\".concat(d,\"-spin\"),!!a||o.name===\"loading\"),r),w=n;w===void 0&&c&&(w=-1);var A=l?{msTransform:\"rotate(\".concat(l,\"deg)\"),transform:\"rotate(\".concat(l,\"deg)\")}:void 0,_=xe(m),O=ie(_,2),y=O[0],E=O[1];return Q.createElement(\"span\",M({role:\"img\",\"aria-label\":o.name},u,{ref:e,tabIndex:w,onClick:c,className:C}),Q.createElement(ae,{icon:o,primaryColor:y,secondaryColor:E,style:A}))});ge.displayName=\"AntdIcon\";ge.getTwoToneColor=lr;ge.setTwoToneColor=Be;var V=ge;var Oe=P(H());var Zr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},ir=Zr;var Qr=function(e,r){return Oe.createElement(V,M({},e,{ref:r,icon:ir}))},Yr=Oe.forwardRef(Qr),Le=Yr;var Te=P(H());var Jr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}},{tag:\"path\",attrs:{d:\"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z\"}}]},name:\"clock-circle\",theme:\"outlined\"},fr=Jr;var Xr=function(e,r){return Te.createElement(V,M({},e,{ref:r,icon:fr}))},eo=Te.forwardRef(Xr),Ne=eo;var be=P(H());var to={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z\"}}]},name:\"close-circle\",theme:\"outlined\"},dr=to;var ro=function(e,r){return be.createElement(V,M({},e,{ref:r,icon:dr}))},oo=be.forwardRef(ro),He=oo;var Ce=P(H());var ao={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM416 702h-76V172c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v530h-76c-6.7 0-10.5 7.8-6.3 13l112 141.9a8 8 0 0012.6 0l112-141.9c4.1-5.2.4-13-6.3-13z\"}}]},name:\"sort-ascending\",theme:\"outlined\"},sr=ao;var lo=function(e,r){return Ce.createElement(V,M({},e,{ref:r,icon:sr}))},no=Ce.forwardRef(lo),qe=no;var we=P(H());var io={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM310.3 167.1a8 8 0 00-12.6 0L185.7 309c-4.2 5.3-.4 13 6.3 13h76v530c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V322h76c6.7 0 10.5-7.8 6.3-13l-112-141.9z\"}}]},name:\"sort-descending\",theme:\"outlined\"},ur=io;var fo=function(e,r){return we.createElement(V,M({},e,{ref:r,icon:ur}))},so=we.forwardRef(fo),Ve=so;var Y=P(cr(),1);var ze=class{constructor(e=100,r=5*60*1e3){this.maxSize=e,this.ttl=r,this.cache=new Map}get(e){let r=this.cache.get(e);return r?Date.now()-r.timestamp>this.ttl?(this.cache.delete(e),null):(this.cache.delete(e),this.cache.set(e,r),r.value):null}set(e,r){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){let o=this.cache.keys().next().value;o!==void 0&&this.cache.delete(o)}this.cache.set(e,{value:r,timestamp:Date.now()})}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}get size(){return this.cache.size}cleanup(){let e=Date.now(),r=0;for(let[o,a]of this.cache.entries())e-a.timestamp>this.ttl&&(this.cache.delete(o),r++);return r}getStats(){return{size:this.cache.size,maxSize:this.maxSize,ttl:this.ttl,utilizationRate:(this.cache.size/this.maxSize*100).toFixed(2)+\"%\"}}*entries(){let e=Date.now();for(let[r,o]of[...this.cache.entries()]){if(e-o.timestamp>this.ttl){this.cache.delete(r);continue}yield[r,o.value]}}},Ue=ze;var uo=[\"\\u5F71\\u7247\",\"\\u7247\\u5B50\",\"\\u7247\\u82B1\",\"\\u7247\\u6BB5\",\"\\u9884\\u544A\",\"\\u9884\\u544A\\u7247\",\"\\u82B1\\u7D6E\",\"\\u5E55\\u540E\",\"\\u8BBF\\u8C08\",\"\\u7279\\u522B\\u7BC7\",\"\\u756A\\u5916\\u7BC7\",\"OVA\",\"OAD\",\"SP\",\"TV\\u7248\",\"\\u5267\\u573A\\u7248\",\"\\u7535\\u5F71\\u7248\",\"\\u5F71\\u7248\",\"\\u5267\\u7248\",\"\\u56FD\\u8BED\\u7248\",\"\\u666E\\u901A\\u8BDD\\u7248\",\"\\u7CA4\\u8BED\\u7248\",\"\\u95FD\\u5357\\u8BED\\u7248\",\"\\u5BA2\\u5BB6\\u8BED\\u7248\",\"\\u5434\\u8BED\\u7248\",\"\\u5DDD\\u8BED\\u7248\",\"\\u6E58\\u8BED\\u7248\",\"\\u8D63\\u8BED\\u7248\",\"\\u7CA4\\u8BED\\u914D\\u97F3\\u7248\",\"\\u56FD\\u8BED\\u914D\\u97F3\\u7248\",\"\\u666E\\u901A\\u8BDD\\u914D\\u97F3\\u7248\",\"\\u65B9\\u8A00\\u7248\",\"\\u539F\\u7248\\u914D\\u97F3\",\"\\u539F\\u97F3\\u7248\",\"\\u53F0\\u8BED\\u7248\",\"\\u7CA4\\u8BED\\u4E2D\\u5B57\\u7248\",\"\\u56FD\\u8BED\\u4E2D\\u5B57\\u7248\",\"\\u666E\\u901A\\u8BDD\\u4E2D\\u5B57\\u7248\",\"\\u7CA4\\u8BED\\u539F\\u58F0\\u7248\",\"\\u56FD\\u8BED\\u539F\\u58F0\\u7248\",\"\\u666E\\u901A\\u8BDD\\u539F\\u58F0\\u7248\",\"\\u7CA4\\u8BED\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u56FD\\u8BED\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u666E\\u901A\\u8BDD\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u52A8\\u753B\\u7248\",\"\\u771F\\u4EBA\\u7248\",\"\\u6539\\u7F16\\u7248\",\"\\u91CD\\u5236\\u7248\",\"\\u4FEE\\u590D\\u7248\",\"\\u52A0\\u957F\\u7248\",\"\\u672A\\u5220\\u51CF\\u7248\",\"\\u5B8C\\u6574\\u7248\",\"\\u5BFC\\u6F14\\u526A\\u8F91\\u7248\",\"\\u7EC8\\u6781\\u7248\",\"\\u7279\\u522B\\u7248\",\"\\u9650\\u5B9A\\u7248\",\"\\u6536\\u85CF\\u7248\",\"\\u8C6A\\u534E\\u7248\",\"\\u5178\\u85CF\\u7248\",\"\\u9AD8\\u6E05\\u7248\",\"\\u8D85\\u6E05\\u7248\",\"\\u6807\\u6E05\\u7248\",\"HD\\u7248\",\"UHD\\u7248\",\"4K\\u7248\",\"\\u84DD\\u5149\\u7248\",\"DVD\\u7248\",\"BD\\u7248\",\"WEB\\u7248\",\"TVrip\",\"BDrip\",\"DVDrip\",\"HDrip\",\"WEB-DL\",\"HDTV\",\"DVDRip\",\"BRRip\",\"HDRip\",\"BluRay\",\"TS\",\"TC\",\"CAM\",\"\\u62A2\\u5148\\u7248\",\"\\u67AA\\u7248\",\"\\u5077\\u62CD\\u7248\",\"\\u6CC4\\u9732\\u7248\",\"\\u62A2\\u5148\\u770B\",\"\\u6B63\\u7247\",\"\\u6B63\\u7247\\u7247\\u6BB5\",\"\\u6B63\\u7247\\u7CBE\\u534E\",\"\\u82B1\\u7D6E\\u96C6\\u9526\",\"\\u5E55\\u540E\\u82B1\\u7D6E\",\"\\u5236\\u4F5C\\u7279\\u8F91\",\"\\u8BBF\\u8C08\\u5F55\",\"\\u9996\\u6620\\u793C\",\"\\u7EA2\\u6BEF\\u79C0\",\"\\u8DEF\\u6F14\",\"\\u53D1\\u5E03\\u4F1A\",\"\\u9884\\u544A\\u7247\\u5408\\u96C6\",\"\\u9884\\u544A\\u7247\\u82B1\\u7D6E\",\"\\u7247\\u82B1\\u9884\\u544A\",\"\\u7CBE\\u5F69\\u7247\\u6BB5\",\"\\u7CBE\\u5F69\\u96C6\\u9526\",\"\\u7CBE\\u9009\\u7247\\u6BB5\",\"\\u9AD8\\u80FD\\u7247\\u6BB5\",\"\\u9AD8\\u5149\\u65F6\\u523B\",\"\\u526A\\u8F91\\u7248\",\"\\u6DF7\\u526A\",\"MV\",\"\\u4E3B\\u9898\\u66F2\",\"\\u63D2\\u66F2\",\"\\u7247\\u5C3E\\u66F2\",\"\\u914D\\u4E50\",\"\\u539F\\u58F0\",\"OST\",\"\\u539F\\u58F0\\u5E26\",\"\\u539F\\u58F0\\u5927\\u789F\",\"\\u97F3\\u4E50\\u96C6\",\"\\u97F3\\u4E50\\u4F1A\",\"\\u6F14\\u5531\",\"Live\",\"Live\\u7248\",\"\\u73B0\\u573A\\u7248\",\"\\u73B0\\u573A\\u5F55\\u5236\",\"\\u821E\\u53F0\\u7248\",\"\\u821E\\u53F0\\u5267\",\"\\u8BDD\\u5267\",\"\\u6B4C\\u5267\",\"\\u821E\\u5267\",\"\\u620F\\u66F2\",\"\\u4EAC\\u5267\",\"\\u8D8A\\u5267\",\"\\u7CA4\\u5267\",\"\\u8BC4\\u5267\",\"\\u9EC4\\u6885\\u620F\",\"\\u4E8C\\u4EBA\\u8F6C\",\"\\u76F8\\u58F0\",\"\\u5C0F\\u54C1\",\"\\u7EFC\\u827A\\u79C0\",\"\\u771F\\u4EBA\\u79C0\",\"\\u8131\\u53E3\\u79C0\",\"\\u8BBF\\u8C08\\u8282\\u76EE\",\"\\u7EAA\\u5F55\\u7247\\u7CFB\\u5217\",\"\\u4E13\\u9898\\u7247\",\"\\u79D1\\u6559\\u7247\",\"\\u52A8\\u753B\\u7247\",\"\\u52A8\\u6F2B\\u7247\",\"\\u52A8\\u753B\\u77ED\\u7247\",\"\\u52A8\\u753B\\u7535\\u5F71\",\"\\u52A8\\u753B\\u7CFB\\u5217\",\"\\u52A8\\u753B\\u5267\\u96C6\",\"\\u52A8\\u753B\\u8FDE\\u7EED\\u5267\",\"\\u52A8\\u753BOVA\",\"\\u52A8\\u753BOAD\",\"\\u52A8\\u753BSP\",\"\\u52A8\\u753B\\u7279\\u5178\",\"\\u52A8\\u753B\\u5408\\u96C6\",\"\\u52A8\\u753B\\u7CBE\\u9009\",\"\\u7535\\u5F71\\u5408\\u96C6\",\"\\u5F71\\u7247\\u5408\\u96C6\",\"\\u7CFB\\u5217\\u5408\\u96C6\",\"\\u5408\\u96C6\\u7248\",\"\\u5957\\u88C5\\u7248\",\"\\u5957\\u88C5\\u5408\\u96C6\",\"\\u5168\\u96C6\",\"\\u5168\\u7CFB\\u5217\",\"\\u5168\\u5B63\",\"\\u66F4\\u65B0\\u4E2D\",\"\\u5B8C\\u7ED3\",\"\\u5B8C\\u7ED3\\u7BC7\",\"\\u5B8C\\u7ED3\\u5B63\",\"\\u6700\\u7EC8\\u5B63\",\"\\u6700\\u7EC8\\u7AE0\",\"\\u7EC8\\u7AE0\",\"\\u7EC8\\u7BC7\",\"\\u5927\\u7ED3\\u5C40\",\"\\u5927\\u7D50\\u5C40\",\"\\u7279\\u522B\\u7BC7\\u5B8C\\u7ED3\",\"\\u756A\\u5916\\u5B8C\\u7ED3\",\"OVA\\u5B8C\\u7ED3\",\"OAD\\u5B8C\\u7ED3\",\"SP\\u5B8C\\u7ED3\",\"\\u5168\\u5267\\u7EC8\",\"\\u5B8C\\u7ED3\\u6492\\u82B1\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\",\"\\u5B8C\\u7ED3\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7BC7\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7279\\u8F91\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u8BBF\\u8C08\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u82B1\\u7D6E\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u8BBF\\u8C08\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u7279\\u8F91\\u8BBF\\u8C08\\u82B1\\u7D6E\",\"BD\",\"BDRIP\",\"WEB-DL\",\"HDRip\",\"DVDRip\",\"BDRip\",\"BRRip\",\"Rip\",\"BluRay\",\"IMAX\",\"CAM\",\"HD\",\"HDR\",\"UHD\",\"4K\",\"1080p\",\"720p\",\"2160p\",\"480p\",\"120fps\",\"60fps\",\"x264\",\"x265\",\"H264\",\"HEVC\",\"AAC\",\"dts\",\"ddp\",\"truehd\",\"10bit\",\"8bit\",\"5.1\",\"7.1\",\"\\u56FD\\u8BED\",\"\\u7CA4\\u8BED\",\"\\u82F1\\u8BED\",\"\\u65E5\\u8BED\",\"\\u97E9\\u8BED\",\"\\u6CF0\\u8BED\",\"\\u6CD5\\u8BED\",\"\\u5FB7\\u8BED\",\"\\u897F\\u73ED\\u7259\\u8BED\",\"\\u4FC4\\u8BED\",\"\\u8461\\u8404\\u7259\\u8BED\",\"\\u610F\\u5927\\u5229\\u8BED\",\"\\u81FB\\u5F69\",\"\\u4E2D\\u5B57\",\"\\u7B80\\u4E2D\",\"\\u7E41\\u4E2D\",\"\\u7B80\\u7E41\\u4E2D\\u5B57\",\"\\u4E2D\\u82F1\\u53CC\\u5B57\",\"\\u5185\\u5D4C\",\"\\u5185\\u5C01\",\"\\u675C\\u6BD4\\u5168\\u666F\\u58F0\",\"\\u675C\\u6BD4\\u97F3\\u6548\",\"\\u65E0\\u6C34\\u5370\",\"\\u5B8C\\u6574\\u7248\",\"\\u539F\\u58F0\\u7248\",\"\\u89E3\\u8BF4\\u7248\",\"\\u9884\\u544A\\u7247\",\"\\u672A\\u5220\\u51CF\\u7248\",\"\\u52A0\\u957F\\u7248\",\"\\u84DD\\u5149\",\"\\u62A2\\u5148\\u7248\",\"TC\\u7248\",\"\\u62A2\\u5148\",\"TC\",\"\\u4E24\\u5B63\\u5168\",\"\\u5168\\u5B63\",\"\\u5168\\u96C6\",\"DV\",\"\\u538B\\u5236\",\"HQ\",\"\\u5E27\",\"\\u7535\\u5F71\\u7248\",\"\\u8C46\\u74E3\",\"\\u66F4\\u65B0\",\"\\u66F4\\u65B0\\u5230\",\"\\u63A8\\u8350\",\"\\u52A8\\u4F5C\",\"\\u5192\\u9669\",\"\\u7231\\u60C5\",\"\\u79D1\\u5E7B\",\"\\u60AC\\u7591\",\"\\u60CA\\u609A\",\"\\u6050\\u6016\",\"\\u559C\\u5267\",\"\\u60B2\\u5267\",\"\\u5267\\u60C5\",\"\\u5947\\u5E7B\",\"\\u72AF\\u7F6A\",\"\\u6218\\u4E89\",\"\\u5386\\u53F2\",\"\\u4F20\\u8BB0\",\"\\u97F3\\u4E50\",\"\\u6B4C\\u821E\",\"\\u5BB6\\u5EAD\",\"\\u513F\\u7AE5\",\"\\u4F53\\u80B2\",\"\\u707E\\u96BE\",\"\\u4F26\\u7406\",\"\\u77ED\\u7247\",\"\\u5FAE\\u7535\\u5F71\",\"\\u9AD8\\u6E05\",\"\\u8D85\\u6E05\",\"\\u6807\\u6E05\",\"\\u62A2\\u9C9C\\u770B\",\"\\u9996\\u64AD\",\"\\u72EC\\u64AD\",\"\\u70ED\\u64AD\",\"\\u8FDE\\u8F7D\\u4E2D\",\"\\u6700\\u65B0\",\"\\u7ECF\\u5178\",\"\\u70ED\\u95E8\",\"\\u83B7\\u5956\",\"\\u53E3\\u7891\",\"\\u597D\\u8BC4\",\"\\u9AD8\\u5206\",\"\\u8C46\\u74E3\\u9AD8\\u5206\",\"IMDb\\u9AD8\\u5206\",\"\\u672A\\u5206\\u7EA7\",\"\\u9650\\u5236\\u7EA7\",\"\\u5BFC\\u6F14\\u526A\\u8F91\",\"\\u52A0\\u957F\",\"\\u7279\\u522B\\u52A0\\u957F\",\"\\u7EC8\\u6781\\u526A\\u8F91\",\"\\u6536\\u85CF\",\"\\u8C6A\\u534E\",\"\\u7EAA\\u5FF5\",\"\\u9650\\u5B9A\",\"\\u91CD\\u6620\",\"\\u4FEE\\u590D\",\"\\u6570\\u7801\\u4FEE\\u590D\",\"\\u91CD\\u5236\",\"\\u84DD\\u5149\\u4FEE\\u590D\",\"\\u91CD\\u5236\\u9AD8\\u6E05\",\"\\u9AD8\\u6E05\\u91CD\\u5236\",\"\\u91CD\\u7F16\",\"\\u91CD\\u526A\",\"\\u914D\\u97F3\",\"\\u8BD1\\u5236\",\"\\u539F\\u58F0\",\"\\u53CC\\u8BED\",\"\\u591A\\u8BED\",\"\\u591A\\u58F0\\u9053\",\"\\u73AF\\u7ED5\\u58F0\",\"\\u5168\\u666F\\u58F0\",\"3D\",\"VR\",\"\\u5168\\u666F\",\"360\\u5EA6\",\"8K\",\"\\u539F\\u753B\",\"\\u65E0\\u635F\",\"\\u6709\\u635F\",\"\\u538B\\u7F29\",\"\\u672A\\u538B\\u7F29\",\"\\u9AD8\\u7801\\u7387\",\"\\u4F4E\\u7801\\u7387\",\"\\u91CD\\u7F16\\u7801\",\"\\u591A\\u5B57\\u5E55\",\"\\u591A\\u97F3\\u8F68\",\"\\u53CC\\u97F3\\u8F68\",\"\\u591A\\u7248\\u672C\",\"\\u5408\\u96C6\",\"\\u5957\\u88C5\",\"\\u7CFB\\u5217\",\"\\u5B8C\\u7ED3\\u7248\",\"\\u6700\\u7EC8\\u5B63\",\"\\u6700\\u7EC8\\u7AE0\",\"\\u7EC8\\u7AE0\",\"\\u5927\\u7ED3\\u5C40\",\"\\u7279\\u522B\\u7BC7\",\"\\u756A\\u5916\\u7BC7\",\"OVA\",\"OAD\",\"SP\",\"\\u5267\\u573A\\u7248\",\"\\u7535\\u5F71\\u7248\",\"\\u5F71\\u7248\",\"\\u5267\\u7248\",\"\\u52A8\\u753B\\u7248\",\"\\u771F\\u4EBA\\u7248\",\"\\u6539\\u7F16\\u7248\",\"\\u539F\\u521B\",\"\\u884D\\u751F\",\"\\u756A\\u5916\",\"\\u7EED\\u96C6\",\"\\u524D\\u4F20\",\"\\u540E\\u4F20\",\"\\u91CD\\u542F\",\"\\u7FFB\\u62CD\",\"\\u91CD\\u62CD\",\"\\u81F4\\u656C\",\"\\u7EAA\\u5FF5\",\"\\u732E\\u793C\",\"\\u8D3A\\u5C81\",\"\\u6691\\u671F\\u6863\",\"\\u56FD\\u5E86\\u6863\",\"\\u8D3A\\u5C81\\u6863\",\"\\u6625\\u8282\\u6863\",\"\\u60C5\\u4EBA\\u8282\\u6863\",\"\\u4E2D\\u79CB\\u6863\",\"\\u6863\\u671F\",\"\\u4E0A\\u6620\",\"\\u5B9A\\u6863\",\"\\u9996\\u6620\",\"\\u516C\\u6620\",\"\\u4E0A\\u6620\\u65F6\\u95F4\",\"\\u4E0A\\u6620\\u65E5\\u671F\",\"\\u7968\\u623F\",\"\\u7968\\u623F\\u51A0\\u519B\",\"\\u7968\\u623F\\u699C\",\"\\u53E3\\u7891\\u699C\",\"\\u8BC4\\u5206\\u699C\",\"\\u6392\\u884C\\u699C\",\"\\u699C\\u5355\",\"\\u699C\\u5355\\u7B2C\\u4E00\",\"\\u70ED\\u95E8\\u699C\",\"\\u70ED\\u641C\",\"\\u70ED\\u8BAE\",\"\\u8BDD\\u9898\",\"\\u70ED\\u8BAE\\u8BDD\\u9898\",\"\\u70ED\\u95E8\\u8BDD\\u9898\",\"\\u8BA8\\u8BBA\\u5EA6\",\"\\u5173\\u6CE8\\u5EA6\",\"\\u70ED\\u5EA6\",\"\\u70ED\\u5EA6\\u699C\",\"\\u70ED\\u95E8\\u63A8\\u8350\",\"\\u7CBE\\u9009\",\"\\u529B\\u8350\",\"\\u5F3A\\u70C8\\u63A8\\u8350\",\"\\u5FC5\\u770B\",\"\\u4E0D\\u53EF\\u9519\\u8FC7\",\"\\u7ECF\\u5178\\u4E4B\\u4F5C\",\"\\u795E\\u4F5C\",\"\\u4F73\\u4F5C\",\"\\u9AD8\\u5206\\u4F73\\u4F5C\",\"\\u9AD8\\u5206\\u795E\\u4F5C\",\"\\u70C2\\u7247\",\"\\u5DEE\\u8BC4\",\"\\u4F4E\\u5206\",\"\\u53E3\\u7891\\u7206\\u68DA\",\"\\u53E3\\u7891\\u6251\\u8857\",\"\\u53E3\\u7891\\u4E24\\u6781\",\"\\u53E3\\u7891\\u5206\\u5316\",\"\\u4E89\\u8BAE\",\"\\u70ED\\u8BAE\\u4E0D\\u65AD\",\"\\u5907\\u53D7\\u5173\\u6CE8\",\"\\u4E07\\u4F17\\u671F\\u5F85\",\"\\u671F\\u5F85\\u5DF2\\u4E45\",\"\\u4E07\\u4F17\\u77A9\\u76EE\",\"\\u5E74\\u5EA6\\u6700\\u4F73\",\"\\u5E74\\u5EA6\\u6700\\u5DEE\",\"\\u5E74\\u5EA6\\u4E4B\\u4F5C\",\"\\u5E74\\u5EA6\\u9ED1\\u9A6C\",\"\\u5E74\\u5EA6\\u60CA\\u559C\",\"\\u5E74\\u5EA6\\u5931\\u671B\",\"\\u538B\\u8F74\\u4E4B\\u4F5C\",\"\\u6536\\u5B98\\u4E4B\\u4F5C\",\"\\u6536\\u5B98\",\"\\u6536\\u5B98\\u5B63\",\"\\u6536\\u5B98\\u6218\",\"\\u5927\\u7ED3\\u5C40\\u524D\\u7BC7\",\"\\u5927\\u7ED3\\u5C40\\u540E\\u7BC7\",\"\\u6700\\u7EC8\\u56DE\",\"\\u6700\\u7EC8\\u8BDD\",\"\\u6700\\u7EC8\\u7AE0\\u524D\\u7BC7\",\"\\u6700\\u7EC8\\u7AE0\\u540E\\u7BC7\"];function mo(t){return String(t).replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}var co=new RegExp(uo.map(mo).sort((t,e)=>e.length-t.length).join(\"|\"),\"ig\"),z=new Ue(500,60*60*1e3),Dl=new Ue(1e3,60*60*1e3);function $e(t){if(!t||!t.trim())return\"\";let e=t.trim(),r=z.get(t);if(r!==null)return r;e=e.replace(new RegExp(\"^[\\\\u{1F300}-\\\\u{1F9FF}\\\\u{2600}-\\\\u{26FF}\\\\u{2700}-\\\\u{27BF}]+\\\\s*\",\"u\"),\"\");let o=e.indexOf(\"\\u300A\"),a=e.indexOf(\"\\u300B\");if(o!==-1&&a!==-1&&oString.fromCharCode(parseInt(p,16))).replace(/<[^>]+>/g,\"\").replace(/&[a-z]+;/gi,\"\").trim();let n=e.match(/\\[([^\\]]+)\\]/g);if(n&&n.length>=2){let d=e.replace(/\\[([^\\]]+)\\]/g,\"\").trim();if(!/[\\u4e00-\\u9fa5]/.test(d))for(let A of n){let _=A.slice(1,-1);if(/[\\u4e00-\\u9fa5]/.test(_)&&!/全球|封装|字幕|语言|下载/.test(_)){let O=_;if(O.includes(\".\")){let y=O.split(\".\").filter(E=>E.trim());for(let E of y)if(/[\\u4e00-\\u9fa5]/.test(E)&&!/全\\d+季/.test(E)){O=E.trim();break}}return z.set(t,O),O}}let C=n[0].slice(1,-1),w=n[1].slice(1,-1);if(/夸克|百度|迅雷|阿里|天翼|115|下载/.test(C)&&/[\\u4e00-\\u9fa5]/.test(w))return z.set(t,w),w}let c=e.indexOf(\"|\"),m=e.lastIndexOf(\"|\");if(c!==-1&&c!==m){let d=e.substring(c+1,m).trim();return z.set(t,d),d}e=e.replace(/[/g,\"[\").replace(/]/g,\"]\"),e=e.replace(/\\[([^\\]]*)\\]/g,(d,p)=>/第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+/i.test(p)?d:\"\").trim(),e=e.replace(/[((].*?[))]/g,\"\").replace(/【.*?】/g,\"\").trim(),e=e.replace(/\\b\\d+(\\.\\d+)?[GMK]B?\\b/gi,\"\").replace(/\\b(2160|1080|720|480)[pP]\\b/gi,\"\").replace(/\\b(4K|2K|HDR|HD|SD|FHD|UHD)\\b/gi,\"\").replace(/\\bx264|x265|H264|HEVC\\b/gi,\"\").replace(/\\bAAC|AC3|DTS|FLAC\\b/gi,\"\").replace(/\\b(10bit|8bit|60fps|120fps)\\b/gi,\"\").replace(/\\bWEB-DL\\b/gi,\"\").replace(/\\bWEB-MKV\\b/gi,\"\").replace(/\\bWEB-\\b/gi,\"\").replace(/\\bWEB\\b/gi,\"\").replace(/\\bREMUX\\b/gi,\"\").replace(/S\\d+E\\d+(-S\\d+E\\d+)?/gi,\"\").replace(/完结\\s*\\d+\\s*集/g,\"\").replace(/更新\\s*\\d+\\s*集/g,\"\").replace(/更新至\\s*\\d+\\s*集/g,\"\").replace(/更至\\s*\\d+\\s*集/g,\"\").replace(/全\\s*\\d+\\s*集/g,\"\").replace(/第\\s*\\d+\\s*集/g,\"\").replace(/最新/g,\"\").replace(/臻彩/g,\"\").replace(co,\"\").replace(/[\\u200E\\u200F\\u202A-\\u202E]/g,\"\").replace(/\\s+/g,\" \").trim();let u=e.match(/([\\u4e00-\\u9fa5]{2,})/);if(u){let d=u[1],p=new RegExp(d+\"\\\\d*\"+d,\"g\");e=e.replace(p,d)}if(e=e.replace(/\\d{4}$/g,\"\").trim(),e=e.replace(/[((][))]/g,\"\").replace(/【】/g,\"\").replace(/\\[\\]/g,\"\").trim(),e.includes(\".\")){let d=e.split(\".\").filter(C=>C.trim()),p=\"\";for(let C of d)if(/[\\u4e00-\\u9fa5]/.test(C)){p=C.trim();break}if(p){let C=p.match(/全\\d+季/);if(C)e=p.substring(0,C.index).trim();else{e=p;for(let w of d){let A=w.match(/^S(\\d+)$/i);if(A){e=e+\" \"+A[0];break}}}}}let g=!1;if(e.includes(\"-\")){let d=e.split(\"-\"),p=\"\";for(let C of d)if(/[\\u4e00-\\u9fa5]/.test(C)){p=C.trim();break}if(p)if(/第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+/i.test(p))e=p,g=!0;else{let C=e.match(/第[一二三四五六七八九十\\d]+季|S(\\d+)|Season\\s*(\\d+)/i);if(C)return e=p+\" \"+C[0],g=!0,z.set(t,e),e;e=p,g=!0}}if(e.includes(\"/\")){let d=e.split(\"/\");for(let p of d)if(/[\\u4e00-\\u9fa5]/.test(p)){e=p.trim();break}}if(!g&&e.includes(\" \")){let d=e.split(\" \").filter(w=>w.trim());if(d.length>1&&d[0].length===1&&/[a-zA-Z]/.test(d[0])){let w=d.slice(0,2).join(\" \");return z.set(t,w),w}if(d.length===2&&/[\\u4e00-\\u9fa5]/.test(d[0])&&/^(第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+)$/i.test(d[1]))return z.set(t,e),e;let p=[],C=!1;for(let w=0;w0?e=p.join(\" \"):d.length>0&&(e=d[0])}e=e.replace(/[::·.。]+$/,\"\").replace(/\\.全\\d+季$/,\"\").replace(/\\.第[一二三四五六七八九十\\d]+季$/,\"\").replace(/\\.$/,\"\").replace(/未删减版$/,\"\").replace(/无删减版$/,\"\").replace(/删减版$/,\"\").replace(/完整版$/,\"\").replace(/\\s+$/,\"\").trim();let b=e||t;return z.set(t,b),b}if(typeof window<\"u\"){let t=document.createElement(\"style\");t.textContent=\"html,\\nbody,\\n#app {\\n height: 100%;\\n margin: 0;\\n padding: 0;\\n overflow: hidden;\\n}\\n.danmu-container {\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n padding: 20px;\\n box-sizing: border-box;\\n}\\n.danmu-container .main-title {\\n text-align: center;\\n transition: all 0.3s ease-out;\\n max-height: 50px;\\n opacity: 1;\\n margin-bottom: 20px;\\n overflow: hidden;\\n}\\n.danmu-container .main-title.hidden {\\n max-height: 0;\\n opacity: 0;\\n margin: 0;\\n}\\n.danmu-container .search-input {\\n margin-bottom: 20px;\\n}\\n.danmu-container .result-container {\\n flex-grow: 1;\\n overflow: hidden;\\n display: flex;\\n flex-direction: column;\\n}\\n.danmu-container .result-container .spin-container {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 100%;\\n}\\n.danmu-container .result-container > .ant-tabs {\\n flex-grow: 1;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n}\\n.danmu-container .result-container > .ant-tabs .ant-tabs-content-holder {\\n overflow-y: auto;\\n flex-grow: 1;\\n}\\n.drawer {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-mask {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-content-wrapper {\\n left: 0;\\n right: 0;\\n}\\n.drawer .ant-drawer-title {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.drawer .ant-list-item {\\n padding: 16px 24px;\\n}\\n@media (max-width: 768px) {\\n .danmu-container {\\n padding: 10px;\\n }\\n .danmu-container .search-input {\\n margin-bottom: 8px;\\n }\\n .danmu-container .ant-tabs-left > .ant-tabs-nav {\\n width: 80px;\\n }\\n .danmu-container .ant-tabs-nav {\\n margin: 0;\\n }\\n .danmu-container .ant-tabs-tab {\\n font-size: 12px;\\n padding: 8px 12px;\\n }\\n .danmu-container .anime-episode-container {\\n flex-direction: column;\\n }\\n .danmu-container .anime-episode-container .anime-list-col,\\n .danmu-container .anime-episode-container .episode-list-col {\\n width: 100%;\\n border-right: none;\\n max-height: 50vh;\\n }\\n .danmu-container .anime-episode-container .anime-list-col {\\n border-bottom: 1px solid #f0f0f0;\\n }\\n .drawer .ant-drawer-header {\\n padding: 16px 12px;\\n }\\n .drawer .ant-list-item {\\n padding: 12px;\\n }\\n}\\n\",document.head.appendChild(t)}var{Search:po}=h.Input,{Title:xo}=h.Typography,ye=\"danmu_search_cache\",pr=\"danmu_search_order\",ho=5,go=10*60*1e3,Oo=t=>{let e=localStorage.getItem(ye);if(!e)return null;try{let r=JSON.parse(e),o=r[t];return o?Date.now()-o.timestamp>go?(delete r[t],localStorage.setItem(ye,JSON.stringify(r)),null):o.data:null}catch(r){return console.error(\"\\u7F13\\u5B58\\u8BFB\\u53D6\\u5931\\u8D25:\",r),null}},To=(t,e)=>{let r=[];try{r=JSON.parse(localStorage.getItem(pr)||\"[]\")}catch(a){}let o={};try{o=JSON.parse(localStorage.getItem(ye)||\"{}\")}catch(a){}if(r=r.filter(a=>a!==t),r.unshift(t),o[t]={data:e,timestamp:Date.now()},r.length>ho){let a=r.pop();delete o[a]}localStorage.setItem(pr,JSON.stringify(r)),localStorage.setItem(ye,JSON.stringify(o))},je=50,hr=t=>String(t||\"\").trim().toLowerCase()===\"json\"?\"json\":\"xml\",bo=({animes:t,sourceUrl:e,inputValue:r,danmuFormat:o=\"xml\"})=>{var W;let[a,l]=(0,f.useState)(!1),[n,c]=(0,f.useState)(null),[m,u]=(0,f.useState)(!1),[g,b]=(0,f.useState)(\"\"),[d,p]=(0,f.useState)(0),C=(0,f.useRef)(null),w=(r||\"\").trim(),A=hr(o),_=async i=>{var s,R,U,$,j,G,N;let S=new AbortController;C.current=S,console.log(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u5F00\\u59CB\",{inputValue:w,sourceUrl:e,danmuFormat:A,animeTitle:n==null?void 0:n.animeTitle,episodeId:i==null?void 0:i.episodeId,episodeTitle:i==null?void 0:i.episodeTitle});let x=\"\",F=\"\";try{let T=await Y.default.get(\"/website/danmu/current-play\",{timeout:3e3}),We=((s=T==null?void 0:T.data)==null?void 0:s.data)||{};if(x=We.flag||window.currentPlayFlag||\"\",F=We.id||window.currentPlayId||\"\",!x||!F){let Se=await messageToDart({action:\"getPlayInfo\"});Se&&(x=Se.flag||\"\",F=Se.id||\"\")}}catch(T){console.warn(\"\\u65E0\\u6CD5\\u83B7\\u53D6\\u64AD\\u653E\\u4FE1\\u606F\\uFF0Cflag/id \\u53EF\\u80FD\\u4E3A\\u7A7A\",T)}try{let T=await Y.default.post(\"/website/danmu/push\",{url:\"/website/danmu/comment?source=\".concat(encodeURIComponent(e),\"&episodeId=\").concat(encodeURIComponent(i.episodeId),\"&format=\").concat(encodeURIComponent(A)),sourceUrl:e,anime:n,title:w,format:A,flag:x,id:F},{signal:S.signal});if(console.log(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u6210\\u529F\",{inputValue:w,sourceUrl:e,danmuFormat:A,animeTitle:n==null?void 0:n.animeTitle,episodeId:i==null?void 0:i.episodeId,episodeTitle:i==null?void 0:i.episodeTitle,flag:x,id:F}),(R=T==null?void 0:T.data)!=null&&R.code&&T.data.code!==0)throw new Error(((U=T==null?void 0:T.data)==null?void 0:U.message)||\"\\u63A8\\u9001\\u5931\\u8D25\");h.message.success(\"\\u5DF2\\u63A8\\u9001 \".concat((j=($=T==null?void 0:T.data)==null?void 0:$.danmuCount)!=null?j:0,\" \\u6761\\u5F39\\u5E55\\uFF0C\\u8BF7\\u7B49\\u5F85\\u5F39\\u5E55\\u52A0\\u8F7D\\u5B8C\\u6210\")),l(!1)}catch(T){if(Y.default.isCancel(T)){console.log(\"\\u63A8\\u9001\\u8BF7\\u6C42\\u5DF2\\u53D6\\u6D88\");return}console.error(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u5931\\u8D25\",{inputValue:w,sourceUrl:e,danmuFormat:A,animeTitle:n==null?void 0:n.animeTitle,episodeId:i==null?void 0:i.episodeId,episodeTitle:i==null?void 0:i.episodeTitle,flag:x,id:F,message:T==null?void 0:T.message,status:(G=T==null?void 0:T.response)==null?void 0:G.status,data:(N=T==null?void 0:T.response)==null?void 0:N.data}),console.error(T),h.message.error((T==null?void 0:T.message)||\"\\u63A8\\u9001\\u5931\\u8D25\")}finally{C.current===S&&(C.current=null)}},O=i=>{let S=Array.isArray(i==null?void 0:i.episodes)?i.episodes:[];c(X(J({},i),{episodes:S})),b(\"\"),p(0),l(!0),u(!1)},y=()=>{if(n){let i=Array.isArray(n.episodes)?n.episodes:[];c(X(J({},n),{episodes:[...i].reverse()})),u(S=>!S)}},E=i=>{var F,s;let S=(s=(F=i==null?void 0:i.episodeNumber)!=null?F:i==null?void 0:i.number)!=null?s:\"?\",x=(i==null?void 0:i.episodeTitle)||(i==null?void 0:i.title)||(i==null?void 0:i.name)||\"\";return x?\"\\u7B2C\".concat(S,\"\\u96C6 - \").concat(x):\"\\u7B2C\".concat(S,\"\\u96C6\")},B=Array.isArray(n==null?void 0:n.episodes)?n.episodes.filter(i=>{var s,R;let S=g.trim().toLowerCase();if(!S)return!0;let x=String((R=(s=i==null?void 0:i.episodeNumber)!=null?s:i==null?void 0:i.number)!=null?R:\"\"),F=E(i).toLowerCase();return x.includes(S)||F.includes(S)}):[],v=Array.from({length:Math.max(1,Math.ceil(B.length/je))},(i,S)=>{let x=S*je,F=Math.min(B.length,x+je);return{key:S,label:\"\".concat(x+1,\"-\").concat(F),items:B.slice(x,F)}}),L=Math.min(d,Math.max(v.length-1,0)),le=((W=v[L])==null?void 0:W.items)||[];return!t||t.length===0?f.default.createElement(h.Empty,{description:\"\\u8BE5\\u6765\\u6E90\\u4E0B\\u65E0\\u7ED3\\u679C\"}):f.default.createElement(f.default.Fragment,null,f.default.createElement(h.List,{dataSource:t,renderItem:i=>{let S=Array.isArray(i==null?void 0:i.episodes)?i.episodes.length:(i==null?void 0:i.episodeCount)||(i==null?void 0:i.episodesCount)||0;return f.default.createElement(h.List.Item,{onClick:()=>O(i)},f.default.createElement(\"div\",{style:{display:\"flex\",width:\"100%\",justifyContent:\"space-between\",gap:12}},f.default.createElement(\"span\",null,i.animeTitle),f.default.createElement(h.Tag,{color:\"blue\"},S,\"\\u96C6\")))}}),n&&f.default.createElement(h.Drawer,{title:n.animeTitle,placement:\"bottom\",onClose:()=>l(!1),open:a,height:\"80%\",destroyOnClose:!0,closable:!1,bodyStyle:{padding:0},rootClassName:\"drawer\",extra:f.default.createElement(h.Button,{icon:m?f.default.createElement(qe,null):f.default.createElement(Ve,null),onClick:y,style:{marginLeft:16}})},f.default.createElement(\"div\",{style:{padding:\"12px 16px\",borderBottom:\"1px solid #f0f0f0\",display:\"flex\",flexDirection:\"column\",gap:12}},f.default.createElement(h.Input,{placeholder:\"\\u8F93\\u5165\\u96C6\\u6570\\u6216\\u6807\\u9898\\u5173\\u952E\\u8BCD\\uFF0C\\u5B9E\\u65F6\\u8FC7\\u6EE4\",value:g,onChange:i=>{b(i.target.value),p(0)},allowClear:!0}),v.length>1&&f.default.createElement(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:8}},v.map(i=>f.default.createElement(h.Tag,{key:i.key,color:L===i.key?\"processing\":\"default\",style:{cursor:\"pointer\",marginInlineEnd:0},onClick:()=>p(i.key)},i.label)))),f.default.createElement(h.List,{dataSource:le,locale:{emptyText:\"\\u6CA1\\u6709\\u5339\\u914D\\u5230\\u53EF\\u9009\\u5267\\u96C6\"},renderItem:i=>f.default.createElement(h.List.Item,{onClick:()=>_(i)},E(i))})))};function gr(){let[t,e]=(0,f.useState)([]),[r,o]=(0,f.useState)(\"xml\"),[a,l]=(0,f.useState)(!1),[n,c]=(0,f.useState)([]),[m,u]=(0,f.useState)({}),[g,b]=(0,f.useState)(!1),[d,p]=(0,f.useState)(()=>{let O=new URLSearchParams(window.location.search).get(\"keyword\")||\"\";return $e(O||\"\").trim()||O.trim()}),C=(0,f.useRef)(null);(0,f.useEffect)(()=>{Y.default.get(\"/website/danmu/setting\").then(O=>{if(O.data.code===0&&O.data.data&&O.data.data.urls){o(hr(O.data.data.format));let y=[],E=new Set;O.data.data.urls.forEach(B=>{let v={name:B.name||new URL(B.address).hostname,url:B.address},L=\"\".concat(v.name,\"@@\").concat(v.url);E.has(L)||(E.add(L),y.push(v))}),e(y)}else h.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")}).catch(O=>{console.error(O),h.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")})},[]);let w=(0,f.useCallback)((O,y=!1)=>{let B=(O||\"\").trim(),v=y&&$e(B).trim()||B;if(!v){y||h.message.warning(\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u5173\\u952E\\u8BCD\");return}if(t.length===0&&!y){h.message.error(\"\\u6CA1\\u6709\\u53EF\\u7528\\u7684\\u5F39\\u5E55\\u6E90\");return}if(p(v),!y){let x=new URL(window.location);x.searchParams.set(\"keyword\",v),window.history.pushState({},\"\",x)}if(y){let x=Oo(v);if(x){c(x),b(!0),l(!1);let F={};x.forEach(s=>{F[s.sourceName]={status:\"success\",fromCache:!0}}),u(F),h.message.success(\"\\u4ECE\\u7F13\\u5B58\\u52A0\\u8F7D\\u4E86\\u7ED3\\u679C\");return}}C.current&&C.current.abort();let L=new AbortController;C.current=L,l(!0),b(!0),c([]),u({});let le=0,W=[],i=Date.now(),S={};t.forEach(x=>{S[x.name]={status:\"loading\",duration:0}}),u(S),t.forEach(x=>{let F=Date.now();console.log(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u5F00\\u59CB\",{keyword:v,sourceName:x.name,sourceUrl:x.url}),Y.default.get(\"/website/danmu/search\",{params:{source:x.url,anime:v},timeout:1e4,signal:L.signal}).then(s=>{var $,j,G;if(C.current!==L)return;let R=Date.now()-F,U=Array.isArray(($=s==null?void 0:s.data)==null?void 0:$.animes)?s.data.animes:[];if(console.log(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u54CD\\u5E94\",{keyword:v,sourceName:x.name,sourceUrl:x.url,duration:R,status:s==null?void 0:s.status,success:(j=s==null?void 0:s.data)==null?void 0:j.success,animeCount:U.length,preview:U.slice(0,5).map(N=>N==null?void 0:N.animeTitle)}),s.data.success&&s.data.animes&&s.data.animes.length>0){let N={sourceName:x.name,sourceUrl:x.url,data:s.data};W.push(N),c(T=>[...T,N]),u(T=>X(J({},T),{[x.name]:{status:\"success\",duration:R,count:s.data.animes.length}}))}else console.warn(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u65E0\\u7ED3\\u679C\\u6216\\u672A\\u6EE1\\u8DB3\\u6210\\u529F\\u5224\\u5B9A\",{keyword:v,sourceName:x.name,sourceUrl:x.url,duration:R,status:s==null?void 0:s.status,success:(G=s==null?void 0:s.data)==null?void 0:G.success,animeCount:U.length,rawData:s==null?void 0:s.data}),u(N=>X(J({},N),{[x.name]:{status:\"empty\",duration:R}}))}).catch(s=>{var $,j;if(C.current!==L)return;if(Y.default.isCancel(s)){console.log(\"\\u641C\\u7D22\\u8BF7\\u6C42\\u5DF2\\u53D6\\u6D88: \".concat(x.name));return}let R=Date.now()-F;console.error(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u5931\\u8D25: \".concat(x.name),{keyword:v,sourceName:x.name,sourceUrl:x.url,duration:R,message:s==null?void 0:s.message,code:s==null?void 0:s.code,status:($=s==null?void 0:s.response)==null?void 0:$.status,data:(j=s==null?void 0:s.response)==null?void 0:j.data});let U=s.code===\"ECONNABORTED\"?\"\\u8D85\\u65F6\":\"\\u5931\\u8D25\";u(G=>X(J({},G),{[x.name]:{status:\"error\",duration:R,error:U}}))}).finally(()=>{if(C.current===L&&(le++,le===t.length)){l(!1);let s=Date.now()-i;console.log(\"\\u641C\\u7D22\\u5B8C\\u6210\\uFF0C\\u603B\\u8017\\u65F6: \".concat(s,\"ms\")),W.length>0?(To(v,W),h.message.success(\"\\u627E\\u5230 \".concat(W.length,\" \\u4E2A\\u6E90\\u7684\\u7ED3\\u679C\"))):h.message.warning(\"\\u672A\\u627E\\u5230\\u4EFB\\u4F55\\u7ED3\\u679C\")}})})},[t]);(0,f.useEffect)(()=>{if(t.length>0){let y=new URLSearchParams(window.location.search).get(\"keyword\");y&&w(y,!0)}},[t,w]);let A=O=>{let y=m[O];if(!y)return null;if(y.fromCache)return f.default.createElement(h.Tag,{color:\"blue\",style:{marginLeft:8}},\"\\u7F13\\u5B58\");switch(y.status){case\"loading\":return f.default.createElement(h.Tag,{icon:f.default.createElement(Ne,null),color:\"processing\",style:{marginLeft:8}},\"\\u641C\\u7D22\\u4E2D\");case\"success\":return f.default.createElement(h.Tag,{icon:f.default.createElement(Le,null),color:\"success\",style:{marginLeft:8}},y.count,\"\\u4E2A\\u7ED3\\u679C (\",y.duration,\"ms)\");case\"empty\":return f.default.createElement(h.Tag,{color:\"default\",style:{marginLeft:8}},\"\\u65E0\\u7ED3\\u679C (\",y.duration,\"ms)\");case\"error\":return f.default.createElement(h.Tag,{icon:f.default.createElement(He,null),color:\"error\",style:{marginLeft:8}},y.error,\" (\",y.duration,\"ms)\");default:return null}},_=n.map((O,y)=>({key:\"\".concat(O.sourceName,\"-\").concat(y),label:f.default.createElement(\"span\",null,O.sourceName,A(O.sourceName)),children:f.default.createElement(bo,{animes:O.data.animes,sourceUrl:O.sourceUrl,inputValue:d,danmuFormat:r})}));return f.default.createElement(\"div\",{className:\"danmu-container\"},f.default.createElement(xo,{level:2,className:\"main-title \".concat(g?\"hidden\":\"\")},\"\\u5F39\\u5E55\\u641C\\u7D22\"),f.default.createElement(\"div\",{style:{display:\"flex\",gap:12,alignItems:\"center\"}},f.default.createElement(po,{placeholder:\"\\u8F93\\u5165\\u5F71\\u89C6\\u540D\\u79F0...\",enterButton:\"\\u641C\\u7D22\",size:\"large\",onSearch:O=>w(O),loading:a,className:\"search-input\",value:d,onChange:O=>p(O.target.value)})),f.default.createElement(\"div\",{className:\"result-container\"},g&&n.length===0&&a&&f.default.createElement(\"div\",{className:\"spin-container\"},f.default.createElement(h.Spin,{size:\"large\"})),n.length>0&&f.default.createElement(h.Tabs,{items:_,size:\"small\"}),g&&n.length===0&&!a&&f.default.createElement(h.Empty,{description:\"\\u672A\\u627E\\u5230\\u76F8\\u5173\\u7ED3\\u679C\"})))}function Co(){(0,xr.createRoot)(document.getElementById(\"app\")).render(f.default.createElement(gr,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n", - ' module.exports.renderDanmu();', - '})();' - ].join('\n'); -})(); - - - -globalThis.danmuAdvancedBundle = function() { - return ''; -}(); - - - -(function(){ - var firstBootLogWrite = true; - var bootLogPath = ''; - function bootSafeString(value) { - try { return String(value); } catch (_) { return '[unstringifiable]'; } - } - function bootBaseDir() { - try { - if (typeof process !== 'undefined' && process && process.env && process.env.NODE_PATH) { - return process.env.NODE_PATH; - } - } catch (_) {} - try { - if (typeof process !== 'undefined' && process && typeof process.cwd === 'function') { - return process.cwd(); - } - } catch (_) {} - return '.'; - } - function bootLog(message) { - try { - var req = eval('require'); - var fs = req('fs'); - var path = req('path'); - if (!bootLogPath) bootLogPath = path.join(bootBaseDir(), 'cat-boot.log'); - var line = '[' + new Date().toISOString() + '] ' + bootSafeString(message) + '\n'; - fs.writeFileSync(bootLogPath, line, { flag: firstBootLogWrite ? 'w' : 'a' }); - firstBootLogWrite = false; - } catch (_) {} - } - globalThis.__catpawBootLog = bootLog; - bootLog('boot banner ran node=' + (typeof process !== 'undefined' && process ? process.version : 'unknown') + ' cwd=' + bootBaseDir()); -})(); - -try { - -(function(){ - var injected = false; - var diag = 'before: fetch=' + typeof globalThis.fetch + ' Headers=' + typeof globalThis.Headers + ' Request=' + typeof globalThis.Request; - try { - // eval 绕过 esbuild 静态分析,让 require('undici') 在 iOS 运行期由 nodejs-mobile 解析 - var _require = eval('require'); - var u = _require('undici'); - diag += ' | undici keys=' + (u ? Object.keys(u).length : 'null'); - if (u && u.Request && u.Headers && u.fetch) { - // 必须整套对齐到同一个 undici 实例,否则 fetch 和 Request 类不互认 - globalThis.fetch = u.fetch; - globalThis.Headers = u.Headers; - globalThis.Request = u.Request; - globalThis.Response = u.Response; - if (u.FormData) globalThis.FormData = u.FormData; - if (u.File) globalThis.File = u.File; - if (u.Blob) globalThis.Blob = u.Blob; - injected = true; - } - } catch (e) { - diag += ' | require undici threw: ' + (e && e.message); - } - diag += ' | injected=' + injected; - if (typeof globalThis.__catpawBootLog === 'function') { - globalThis.__catpawBootLog('[webApiGlobalsShim] ' + diag); - } - function ensure(name, ctor){ - try { - if (typeof globalThis[name] === 'undefined') globalThis[name] = ctor; - } catch (_) {} - } - if (!injected) { - // 最坏 fallback:require undici 失败时给个能 new 的 stub,至少让 bundle 加载不报 - // "X is not a constructor"。运行期 fetch 通讯可能仍不工作。 - if (typeof globalThis.Headers !== 'function') { - var H = function Headers(init){ - this._m = Object.create(null); - var setOne = (k, v) => { this._m[String(k).toLowerCase()] = String(v); }; - if (!init) return; - if (typeof init.forEach === 'function' && !Array.isArray(init)) init.forEach((v, k) => setOne(k, v)); - else if (Symbol.iterator in Object(init)) { for (var p of init) setOne(p[0], p[1]); } - else if (typeof init === 'object') { for (var k in init) if (Object.prototype.hasOwnProperty.call(init, k)) setOne(k, init[k]); } - }; - H.prototype.set = function(k, v){ this._m[String(k).toLowerCase()] = String(v); }; - H.prototype.get = function(k){ var n = String(k).toLowerCase(); return Object.prototype.hasOwnProperty.call(this._m, n) ? this._m[n] : null; }; - H.prototype.has = function(k){ return Object.prototype.hasOwnProperty.call(this._m, String(k).toLowerCase()); }; - H.prototype.delete = function(k){ delete this._m[String(k).toLowerCase()]; }; - H.prototype.append = function(k, v){ var n = String(k).toLowerCase(); if (Object.prototype.hasOwnProperty.call(this._m, n)) this._m[n] += ', ' + v; else this._m[n] = String(v); }; - H.prototype.forEach = function(cb, thisArg){ for (var k in this._m) cb.call(thisArg, this._m[k], k, this); }; - H.prototype.entries = function*(){ for (var k in this._m) yield [k, this._m[k]]; }; - H.prototype.keys = function*(){ for (var k in this._m) yield k; }; - H.prototype.values = function*(){ for (var k in this._m) yield this._m[k]; }; - H.prototype[Symbol.iterator] = H.prototype.entries; - globalThis.Headers = H; - } - if (typeof globalThis.Request !== 'function') { - var R = function Request(input, init){ - init = init || {}; - var isReq = input && typeof input === 'object' && typeof input.url !== 'undefined'; - this.url = isReq ? input.url : String(input); - this.method = init.method || (isReq ? input.method : 'GET'); - this.headers = new globalThis.Headers(init.headers || (isReq ? input.headers : undefined)); - this.body = init.body !== undefined ? init.body : (isReq ? input.body : undefined); - this.redirect = init.redirect || (isReq ? input.redirect : 'follow'); - }; - R.prototype.toString = function(){ return this.url; }; - globalThis.Request = R; - } - if (typeof globalThis.Response !== 'function') { - globalThis.Response = function Response(body, init){ - init = init || {}; - this.status = init.status || 200; - this.ok = this.status >= 200 && this.status < 300; - this.headers = new globalThis.Headers(init.headers); - this._body = body; - }; - globalThis.Response.prototype.text = function(){ return Promise.resolve(String(this._body == null ? '' : this._body)); }; - globalThis.Response.prototype.json = function(){ return Promise.resolve(JSON.parse(String(this._body == null ? 'null' : this._body))); }; - } - } - // 这几个无论 undici 路径还是 fallback 路径都补 - ensure('File', class File {}); - ensure('FileList', class FileList {}); - ensure('FileReader', class FileReader {}); - ensure('FormData', class FormData { - constructor(){ this._e = []; } - append(k, v){ this._e.push([String(k), v]); } - get(k){ var e = this._e.find(p => p[0] === String(k)); return e ? e[1] : null; } - has(k){ return this._e.some(p => p[0] === String(k)); } - forEach(cb, thisArg){ this._e.forEach(p => cb.call(thisArg, p[1], p[0], this)); } - *entries(){ for (var e of this._e) yield e; } - [Symbol.iterator](){ return this.entries(); } - }); - - // 终极兜底 fetch:iOS nodejs-mobile 若既没暴露 globalThis.fetch 又没法 require('undici'), - // 用 node:http/https 手写一个最小 fetch。仅满足 youtubei.js HTTPClient 的 POST JSON + 读 body 场景。 - // 不实现 redirect / streaming / fancy body 类型;够 spider 业务用。 - if (typeof globalThis.fetch !== 'function') { - var _req2 = eval('require'); - var http_ = _req2('http'); - var https_ = _req2('https'); - globalThis.fetch = function fetch(input, init){ - init = init || {}; - return new Promise(function(resolve, reject){ - var urlStr = typeof input === 'string' ? input : (input && (input.url || input.toString && input.toString())) || String(input); - var u; - try { u = new URL(urlStr); } catch (e) { reject(new TypeError('Failed to parse URL: ' + urlStr)); return; } - var lib = u.protocol === 'https:' ? https_ : http_; - var headers = {}; - var inHdr = init.headers || (input && input.headers); - if (inHdr) { - if (typeof inHdr.forEach === 'function') inHdr.forEach(function(v,k){ headers[k]=String(v); }); - else if (typeof inHdr === 'object') for (var k in inHdr) headers[k] = String(inHdr[k]); - } - var method = init.method || (input && input.method) || 'GET'; - var body = init.body !== undefined ? init.body : (input && input.body); - var req = lib.request({ - method: method, - hostname: u.hostname, - port: u.port || (u.protocol === 'https:' ? 443 : 80), - path: u.pathname + u.search, - headers: headers, - }, function(res){ - // 简单 redirect: 3xx 跟一次,避免主流接口偶发 redirect 直接挂 - if (res.statusCode >= 300 && res.statusCode < 400 && res.headers.location && (init._redirHops || 0) < 5) { - res.resume(); - var nextUrl = new URL(res.headers.location, urlStr).toString(); - resolve(globalThis.fetch(nextUrl, Object.assign({}, init, { _redirHops: (init._redirHops || 0) + 1 }))); - return; - } - var chunks = []; - res.on('data', function(c){ chunks.push(c); }); - res.on('end', function(){ - var buf = Buffer.concat(chunks); - var bodyStr = null; - resolve({ - ok: res.statusCode >= 200 && res.statusCode < 300, - status: res.statusCode, - statusText: res.statusMessage || '', - url: urlStr, - headers: new globalThis.Headers(res.headers), - text: function(){ if (bodyStr == null) bodyStr = buf.toString('utf8'); return Promise.resolve(bodyStr); }, - json: function(){ return this.text().then(JSON.parse); }, - arrayBuffer: function(){ return Promise.resolve(buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength)); }, - clone: function(){ return this; } - }); - }); - }); - req.on('error', reject); - if (body != null && body !== '') { - if (typeof body === 'string' || Buffer.isBuffer(body) || body instanceof Uint8Array) req.write(body); - else req.write(String(body)); - } - req.end(); - }); - }; - if (typeof globalThis.__catpawBootLog === 'function') { - globalThis.__catpawBootLog('[webApiGlobalsShim] installed http/https-based fetch fallback'); - } - } -})(); - -(function(){ - if (typeof globalThis.Intl !== 'undefined' && globalThis.Intl && typeof globalThis.Intl.DateTimeFormat === 'function') return; - function DateTimeFormat(){ - return { - resolvedOptions: function(){ return { timeZone: 'UTC', locale: 'en-US', calendar: 'gregory', numberingSystem: 'latn' }; }, - format: function(d){ try { return new Date(d == null ? Date.now() : d).toISOString(); } catch(_) { return ''; } }, - formatToParts: function(){ return []; }, - formatRange: function(a, b){ return String(a) + ' - ' + String(b); }, - formatRangeToParts: function(){ return []; } - }; - } - function NumberFormat(){ - return { - resolvedOptions: function(){ return { locale: 'en-US' }; }, - format: function(n){ return String(n); }, - formatToParts: function(){ return []; } - }; - } - function Collator(){ - return { compare: function(a, b){ a = String(a); b = String(b); return a < b ? -1 : a > b ? 1 : 0; } }; - } - function PluralRules(){ return { select: function(){ return 'other'; } }; } - function RelativeTimeFormat(){ - return { - format: function(v, u){ return String(v) + ' ' + String(u); }, - formatToParts: function(){ return []; } - }; - } - function ListFormat(){ - return { format: function(arr){ return (arr || []).join(', '); }, formatToParts: function(){ return []; } }; - } - function DisplayNames(){ - return { of: function(s){ return s; } }; - } - function Segmenter(){ - return { segment: function(s){ return { [Symbol.iterator]: function*(){ for (var ch of String(s || '')) yield { segment: ch, index: 0, input: s }; } }; } }; - } - function Locale(tag){ - var t = String(tag || 'en-US'); - this.baseName = t; - this.language = t.split('-')[0] || 'en'; - this.region = (t.split('-')[1] || '').toUpperCase() || undefined; - } - var IntlObj = globalThis.Intl || {}; - IntlObj.DateTimeFormat = DateTimeFormat; - IntlObj.NumberFormat = NumberFormat; - IntlObj.Collator = Collator; - IntlObj.PluralRules = PluralRules; - IntlObj.RelativeTimeFormat = RelativeTimeFormat; - IntlObj.ListFormat = ListFormat; - IntlObj.DisplayNames = DisplayNames; - IntlObj.Segmenter = Segmenter; - IntlObj.Locale = Locale; - IntlObj.getCanonicalLocales = function(loc){ - if (Array.isArray(loc)) return loc.map(String); - return loc == null ? [] : [String(loc)]; - }; - IntlObj.supportedValuesOf = function(){ return []; }; - globalThis.Intl = IntlObj; -})(); - -(function(){ - if (typeof String.prototype.toWellFormed !== 'function') { - Object.defineProperty(String.prototype, 'toWellFormed', { - value: function toWellFormed(){ return String(this); }, - writable: true, configurable: true, enumerable: false - }); - } - if (typeof String.prototype.isWellFormed !== 'function') { - Object.defineProperty(String.prototype, 'isWellFormed', { - value: function isWellFormed(){ return true; }, - writable: true, configurable: true, enumerable: false - }); - } -})(); - -(function(){ - if (typeof TextDecoder === 'undefined') return; - var _TD = TextDecoder; - function isIcu(e){ return e && (e.code === 'ERR_NO_ICU' || e.code === 'ERR_ENCODING_NOT_SUPPORTED'); } - function SafeTD(label, options){ - if (!(this instanceof SafeTD)) return new SafeTD(label, options); - try { return Reflect.construct(_TD, [label, options]); } - catch (e) { - if (!isIcu(e)) throw e; - var safeLabel = (typeof label === 'string' && /^utf-?8$/i.test(label)) ? label : 'utf-8'; - var safeOpts = options ? Object.assign({}, options, { fatal: false }) : { fatal: false }; - return Reflect.construct(_TD, [safeLabel, safeOpts]); - } - } - SafeTD.prototype = _TD.prototype; - globalThis.TextDecoder = SafeTD; -})(); - -var snr=Object.create;var tF=Object.defineProperty;var inr=Object.getOwnPropertyDescriptor;var anr=Object.getOwnPropertyNames;var onr=Object.getPrototypeOf,cnr=Object.prototype.hasOwnProperty;var ae=(e,t)=>()=>(e&&(t=e(e=0)),t);var S=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ft=(e,t)=>{for(var r in t)tF(e,r,{get:t[r],enumerable:!0})},QBe=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of anr(t))!cnr.call(e,s)&&s!==r&&tF(e,s,{get:()=>t[s],enumerable:!(n=inr(t,s))||n.enumerable});return e};var Ne=(e,t,r)=>(r=e!=null?snr(onr(e)):{},QBe(t||!e||!e.__esModule?tF(r,"default",{value:e,enumerable:!0}):r,e)),unr=e=>QBe(tF({},"__esModule",{value:!0}),e);var XBe=S((Z5n,WBe)=>{"use strict";function lnr(e){var t=new e,r=t;function n(){var i=t;return i.next?t=i.next:(t=new e,r=t),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}WBe.exports=lnr});var ZBe=S((e$n,AZ)=>{"use strict";var dnr=XBe();function JBe(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=dnr(fnr),s=null,i=null,a=0,o=null,c={push:m,drain:od,saturated:od,pause:l,paused:!1,get concurrency(){return r},set concurrency(v){if(!(v>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=v,!c.paused)for(;s&&a=r||c.paused?i?(i.next=I,i=I):(s=I,i=I,c.saturated()):(a++,t.call(e,I.value,I.worked))}function _(v,b){var I=n.get();I.context=e,I.release=g,I.value=v,I.callback=b||od,I.errorHandler=o,a>=r||c.paused?s?(I.next=s,s=I):(s=I,i=I,c.saturated()):(a++,t.call(e,I.value,I.worked))}function g(v){v&&n.release(v);var b=s;b&&a<=r?c.paused?a--:(i===s&&(i=null),s=b.next,b.next=null,t.call(e,b.value,b.worked),i===null&&c.empty()):--a===0&&c.drain()}function y(){s=null,i=null,c.drain=od}function A(){s=null,i=null,c.drain(),c.drain=od}function E(v){o=v}}function od(){}function fnr(){this.value=null,this.callback=od,this.next=null,this.release=od,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var s=e.callback,i=e.errorHandler,a=e.value;e.value=null,e.callback=od,e.errorHandler&&i(r,a),s.call(e.context,r,n),e.release(e)}}function hnr(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(l,d){t.call(this,l).then(function(f){d(null,f)},d)}var s=JBe(e,n,r),i=s.push,a=s.unshift;return s.push=o,s.unshift=c,s.drained=u,s;function o(l){var d=new Promise(function(f,h){i(l,function(p,m){if(p){h(p);return}f(m)})});return d.catch(od),d}function c(l){var d=new Promise(function(f,h){a(l,function(p,m){if(p){h(p);return}f(m)})});return d.catch(od),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}AZ.exports=JBe;AZ.exports.promise=hnr});var yZ=S((t$n,rF)=>{"use strict";var{format:pnr}=require("node:util");function mnr(){return`${this.name} [${this.code}]: ${this.message}`}function EZ(e,t,r=500,n=Error){if(!e)throw new Error("Fastify error code must not be empty");if(!t)throw new Error("Fastify error message must not be empty");e=e.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=e,this.name="FastifyError",this.statusCode=r;let a=i.length-1;a!==-1&&i[a]&&typeof i[a]=="object"&&"cause"in i[a]&&(this.cause=i.pop().cause),this.message=pnr(t,...i),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,s)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),s.prototype[Symbol.toStringTag]="Error",s.prototype.toString=mnr,s}rF.exports=EZ;rF.exports.default=EZ;rF.exports.createError=EZ});var nF=S((r$n,e3e)=>{"use strict";var{createError:j_}=yZ();e3e.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:j_("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:j_("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:j_("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:j_("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:j_("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:j_("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:j_("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:j_("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var y1=S((n$n,t3e)=>{"use strict";var gnr=Symbol("avvio.Boot"),_nr=Symbol("isOnCloseHandler"),Anr=Symbol("avvio.ThenifyDoNotWrap"),Enr=Symbol("avvio.TimeTree.untrackNode"),ynr=Symbol("avvio.TimeTree.trackNode"),vnr=Symbol("avvio.TimeTree.getParent"),Snr=Symbol("avvio.TimeTree.getNode"),Tnr=Symbol("avvio.TimeTree.addNode"),bnr=Symbol.for("plugin-meta");t3e.exports={kAvvio:gnr,kIsOnCloseHandler:_nr,kThenifyDoNotWrap:Anr,kUntrackNode:Enr,kTrackNode:ynr,kGetParent:vnr,kGetNode:Snr,kAddNode:Tnr,kPluginMeta:bnr}});var c3e=S((s$n,o3e)=>{"use strict";var{kUntrackNode:r3e,kTrackNode:vZ,kGetParent:n3e,kGetNode:s3e,kAddNode:i3e}=y1(),SZ=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[vZ](t){this.tableId.set(t.id,t),this.tableLabel.has(t.label)?this.tableLabel.get(t.label).push(t):this.tableLabel.set(t.label,[t])}[r3e](t){this.tableId.delete(t.id);let r=this.tableLabel.get(t.label);r.pop(),r.length===0&&this.tableLabel.delete(t.label)}[n3e](t){if(t===null)return null;if(this.tableLabel.has(t)){let r=this.tableLabel.get(t);return r[r.length-1]}else return null}[s3e](t){return this.tableId.get(t)}[i3e](t,r,n){let s=this[n3e](t);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[vZ](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:t,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[vZ](o),a}start(t,r,n=Date.now()){return this[i3e](t,r,n)}stop(t,r=Date.now()){let n=this[s3e](t);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[r3e](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return a3e(this.toJSON())}};function a3e(e,t=""){let r=t,n=e.nodes.length,s=n-1;r+=`${e.label} ${e.diff} ms -`;for(let i=0;i{"use strict";var{debuglog:Inr}=require("node:util"),Rnr=Inr("avvio");u3e.exports={debug:Rnr}});var d3e=S((a$n,l3e)=>{"use strict";function Cnr(){let e={resolve:null,reject:null,promise:null};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}l3e.exports={createPromise:Cnr}});var h3e=S((o$n,f3e)=>{"use strict";var{kPluginMeta:TZ}=y1();function xnr(e,t){return e[TZ]&&e[TZ].name?e[TZ].name:t&&t.name?t.name:e.name?e.name:e.toString().split(` -`).slice(0,2).map(r=>r.trim()).join(" -- ")}f3e.exports={getPluginName:xnr}});var iF=S((c$n,p3e)=>{"use strict";function wnr(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}p3e.exports={isPromiseLike:wnr}});var g3e=S((u$n,m3e)=>{"use strict";var{EventEmitter:Nnr}=require("node:events"),{inherits:Onr}=require("node:util"),{debug:uo}=sF(),{createPromise:Dnr}=d3e(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:Pnr}=nF(),{getPluginName:Lnr}=h3e(),{isPromiseLike:Mnr}=iF();function v1(e,t,r,n,s){this.queue=e,this.func=t,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=Lnr(t,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Onr(v1,Nnr);v1.prototype.exec=function(e,t){uo("exec",this.name),this.server=e;let r=this.func,n=this.name,s=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let i=null,a=c=>{if(s){uo("loading complete",n);return}this._error=c,uo(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),t(c)};this.timeout>0&&(uo("setting up timeout",n,this.timeout),i=setTimeout(function(){uo("timed out",n),i=null;let c=new Pnr(n);c.fn=r,a(c)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);Mnr(o)&&(uo("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};v1.prototype.loadedSoFar=function(){if(uo("loadedSoFar",this.name),this.loaded)return Promise.resolve();let e=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(uo("rejecting promise",this.name,r),this._promise.reject(r)):(uo("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},t;return this._promise?t=Promise.resolve():(this._promise=Dnr(),t=this._promise.promise,this.server?e():this.on("start",e)),t};v1.prototype.enqueue=function(e,t){uo("enqueue",this.name,e.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(e,t)};v1.prototype.finish=function(e,t){uo("finish",this.name,e);let r=()=>{this.loaded||(uo("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,t(e))};if(e){this._promise&&(this._promise.reject(e),this._promise=null),r();return}let n=()=>{if(uo("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{uo("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else uo("delayed",this.name),this.queue.drain=()=>{uo("drain",this.name),this.queue.drain=knr,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function knr(){}m3e.exports={Plugin:v1}});var A3e=S((l$n,_3e)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:bZ}=nF();function Bnr(e){if(!(e&&(typeof e=="function"||typeof e.then=="function")))throw Array.isArray(e)?new bZ("array"):e===null?new bZ("null"):new bZ(typeof e)}_3e.exports={validatePlugin:Bnr}});var y3e=S((d$n,E3e)=>{"use strict";function Unr(e){return e!==null&&typeof e=="object"&&typeof e.default=="function"}E3e.exports={isBundledOrTypescriptPlugin:Unr}});var T3e=S((f$n,S3e)=>{"use strict";var{debug:v3e}=sF(),{kThenifyDoNotWrap:IZ}=y1();function Fnr(){if(this.booted){v3e("thenify returning undefined because we are already booted");return}if(this[IZ]){this[IZ]=!1;return}return v3e("thenify"),(e,t)=>this._loadRegistered().then(()=>(this[IZ]=!0,e(this._server)),t)}S3e.exports={thenify:Fnr}});var I3e=S((h$n,b3e)=>{"use strict";var{isPromiseLike:$nr}=iF(),{kAvvio:qnr}=y1();function Hnr(e,t,r){let n=e.apply(e,t);$nr(n)&&!n[qnr]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}b3e.exports={executeWithThenable:Hnr}});var P3e=S((p$n,CZ)=>{"use strict";var aF=ZBe(),Vnr=require("node:events").EventEmitter,jnr=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:tO,AVV_ERR_CALLBACK_NOT_FN:S1,AVV_ERR_ROOT_PLG_BOOTED:Knr,AVV_ERR_READY_TIMEOUT:Gnr,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:znr}=nF(),{kAvvio:x3e,kIsOnCloseHandler:w3e}=y1(),{TimeTree:Ynr}=c3e(),{Plugin:N3e}=g3e(),{debug:T1}=sF(),{validatePlugin:Qnr}=A3e(),{isBundledOrTypescriptPlugin:Wnr}=y3e(),{isPromiseLike:Xnr}=iF(),{thenify:O3e}=T3e(),{executeWithThenable:R3e}=I3e();function Mi(e,t,r){if(typeof e=="function"&&arguments.length===1&&(r=e,t={},e=null),typeof t=="function"&&(r=t,t={}),t=t||{},t.autostart=t.autostart!==!1,t.timeout=Number(t.timeout)||0,t.expose=t.expose||{},!new.target)return new Mi(e,t,r);this._server=e||this,this._opts=t,e&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new Ynr,this._readyQ=aF(this,D3e,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=C3e},this._closeQ=aF(this,Znr,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=C3e},this._doStart=null;let n=this;this._root=new N3e(aF(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},t,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{T1("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){s=s||this._error||i}if(s){if(this._error=s,this._readyQ.length()===0)throw s}else this.booted=!0;this._readyQ.resume()})}jnr(Mi,Vnr);Mi.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};Mi.prototype.override=function(e,t,r){return e};Mi.prototype[x3e]=!0;Mi.prototype.use=function(e,t){return this._lastUsed=this._addPlugin(e,t,!1),this};Mi.prototype._loadRegistered=function(){let e=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),e?e.loadedSoFar():Promise.resolve()};Object.defineProperty(Mi.prototype,"then",{get:O3e});Mi.prototype._addPlugin=function(e,t,r){if(Wnr(e)&&(e=e.default),Qnr(e),t=t||{},this.booted)throw new Knr;let n=this._current[0],s=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;s=n.timeout-(a+3)}let i=new N3e(aF(this,this._loadPluginNextTick,1),e,t,r,s);if(this._trackPluginLoading(i),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,a=>{a&&(this._error=a)}),i};Mi.prototype._expose=function(){let t=this,r=t._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new tO(n,"use");if(r[n]=function(c,u){return t.use(c,u),this},r[s])throw new tO(s,"after");if(r[s]=function(c){return typeof c!="function"?t._loadRegistered():(t.after(RZ(c,this)),this)},r[i])throw new tO(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new S1(i,typeof c);return t.ready(c?RZ(c,this):void 0)},r[a])throw new tO(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new S1(a,typeof c);return t.onClose(esr(c,this)),this},r[o])throw new tO(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new S1(o,typeof c);return c?(t.close(RZ(c,this)),this):t.close()},r.then)throw new znr("then");Object.defineProperty(r,"then",{get:O3e.bind(t)}),r[x3e]=!0};Mi.prototype.after=function(e){if(!e)return this._loadRegistered();this._addPlugin(t.bind(this),{},!0);function t(r,n,s){D3e.call(this,e,s)}return this};Mi.prototype.onClose=function(e){if(typeof e!="function")throw new S1("onClose",typeof e);return e[w3e]=!0,this._closeQ.unshift(e,t=>{t&&(this._error=t)}),this};Mi.prototype.close=function(e){let t;if(e){if(typeof e!="function")throw new S1("close",typeof e)}else t=new Promise(function(r,n){e=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(e),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),t};Mi.prototype.ready=function(e){if(e){if(typeof e!="function")throw new S1("ready",typeof e);this._readyQ.push(e),queueMicrotask(this.start.bind(this));return}return new Promise((t,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):t(n),process.nextTick(o)}})};Mi.prototype._trackPluginLoading=function(e){let t=this._current[0]?.name||null;e.once("start",(r,n,s)=>{let i=this.pluginTree.start(t||null,n,s);e.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};Mi.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};Mi.prototype.toJSON=function(){return this.pluginTree.toJSON()};Mi.prototype._loadPlugin=function(e,t){let r=this;if(Xnr(e.func)){e.func.then(a=>{typeof a.default=="function"&&(a=a.default),e.func=a,this._loadPlugin(e,t)},t);return}let n=r._current[0];if(r._current.unshift(e),r._error&&!e.isAfter){T1("skipping loading of plugin as instance errored and it is not an after",e.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!e.isAfter)try{s=r.override(s,e.func,e.options)}catch(a){return T1("override errored",e.name),i(a)}e.exec(s,i);function i(a){e.finish(a,o=>{r._current.shift(),t(o)})}};Mi.prototype._loadPluginNextTick=function(e,t){process.nextTick(this._loadPlugin.bind(this),e,t)};function C3e(){}function D3e(e,t){let r=this._server,n=this._error;if(this._error=null,e.length===0)this._error=n,R3e(e,[],t);else if(e.length===1)R3e(e,[n],t);else if(this._opts.timeout===0){let s=i=>{this._error=i,t(this._error)};e.length===2?e(n,s):e(n,r,s)}else Jnr.call(this,e,n,r,t)}function Jnr(e,t,r,n){let s=e.unwrappedName??e.name;T1("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{T1("timed out",s),i=null;let o=new Gnr(s);o.fn=e,this._error=o,n(o)},this._opts.timeout);e.length===2?e(t,a.bind(this)):e(t,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function Znr(e,t){let r=this._server,n=e[w3e];if(e.length===0||e.length===1){let s;n?s=e(r):s=e(this._error),s&&typeof s.then=="function"?(T1("resolving close/onClose promise"),s.then(()=>process.nextTick(t),i=>process.nextTick(t,i))):process.nextTick(t)}else e.length===2?e(n?r:this._error,t):n?e(r,t):e(this._error,r,t)}function esr(e,t){return r.bind(t);function r(n,s){let i;e.length===0?(i=e(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):e.length===1?(i=e(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):e(this,s)}}function RZ(e,t){let r=n.bind(t);return r.unwrappedName=e.name,r;function n(s,i){let a;e?e.length===0?(a=e(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):e.length===1?(a=e(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):e.length===2?e(s,i):e(s,this,i):process.nextTick(i)}}CZ.exports=Mi;CZ.exports.express=function(e){return Mi(e,{expose:{use:"load"}})}});var Pa=S((m$n,L3e)=>{"use strict";var tsr={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};L3e.exports=tsr});var NZ=S((g$n,oF)=>{"use strict";var{format:xZ}=require("node:util");function rsr(e){return M3e({...e,name:"DeprecationWarning"})}function M3e({name:e,code:t,message:r,unlimited:n=!1}={}){if(!e)throw new Error("Warning name must not be empty");if(!t)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");t=t.toUpperCase();let s={[e]:function(a,o,c){i.emitted===!0&&i.unlimited!==!0||(i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code))}};n&&(s={[e]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[e];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=t,i.format=function(a,o,c){let u;return a&&o&&c?u=xZ(r,a,o,c):a&&o?u=xZ(r,a,o):a?u=xZ(r,a):u=r,u},i}var wZ={createWarning:M3e,createDeprecation:rsr};oF.exports=wZ;oF.exports.default=wZ;oF.exports.processWarning=wZ});var Xp=S((_$n,B3e)=>{"use strict";var{createDeprecation:Mo,createWarning:k3e}=NZ(),nsr=Mo({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),ssr=Mo({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),isr=Mo({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),asr=Mo({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),osr=Mo({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),csr=Mo({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),usr=Mo({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),lsr=Mo({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),dsr=Mo({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),fsr=Mo({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),hsr=Mo({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),psr=Mo({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),msr=Mo({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),gsr=Mo({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),_sr=Mo({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),Asr=Mo({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),Esr=k3e({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),ysr=k3e({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});B3e.exports={FSTDEP005:nsr,FSTDEP006:ssr,FSTDEP007:isr,FSTDEP008:asr,FSTDEP009:osr,FSTDEP010:csr,FSTDEP011:usr,FSTDEP012:lsr,FSTDEP013:dsr,FSTDEP014:fsr,FSTDEP015:hsr,FSTDEP016:psr,FSTDEP017:msr,FSTDEP018:gsr,FSTDEP019:_sr,FSTDEP020:Asr,FSTWRN001:Esr,FSTWRN002:ysr}});var ko=S((A$n,cF)=>{"use strict";var st=yZ(),b1={FST_ERR_NOT_FOUND:st("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:st("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:st("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:st("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:st("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:st("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:st("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:st("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:st("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:st("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:st("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:st("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:st("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:st("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:st("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:st("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:st("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:st("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:st("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:st("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:st("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:st("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:st("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:st("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:st("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:st("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:st("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:st("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:st("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:st("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:st("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:st("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:st("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:st("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:st("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:st("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:st("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:st("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:st("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:st("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:st("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:st("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:st("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:st("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:st("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:st("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:st("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:st("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:st("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:st("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:st("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:st("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:st("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:st("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:st("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:st("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:st("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:st("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:st("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:st("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:st("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:st("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:st("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:st("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:st("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:st("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:st("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:st("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:st("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:st("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:st("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:st("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:st("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:st("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:st("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:st("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:st("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:st("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:st("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function vsr(e,t){return t.cause=e,t}cF.exports=b1;cF.exports.appendStackTrace=vsr;cF.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:b1.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:b1.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:b1.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:b1.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:b1.FST_ERR_PLUGIN_TIMEOUT}});var K_=S((E$n,G3e)=>{"use strict";var Ssr=["onRoute","onRegister","onReady","onListen","preClose","onClose"],q3e=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],Tsr=q3e.concat(Ssr),{FST_ERR_HOOK_INVALID_TYPE:bsr,FST_ERR_HOOK_INVALID_HANDLER:Isr,FST_ERR_SEND_UNDEFINED_ERR:uF,FST_ERR_HOOK_TIMEOUT:Rsr,FST_ERR_HOOK_NOT_SUPPORTED:Csr,AVVIO_ERRORS_MAP:U3e,appendStackTrace:F3e}=ko(),{kChildren:rO,kHooks:H3e,kRequestPayloadStream:$3e}=Pa();function nO(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}nO.prototype=Object.create(null);nO.prototype.validate=function(e,t){if(typeof e!="string")throw new bsr;if(Array.isArray(this[e])===!1)throw new Csr(e);if(typeof t!="function")throw new Isr(e,Object.prototype.toString.call(t))};nO.prototype.add=function(e,t){this.validate(e,t),this[e].push(t)};function xsr(e){let t=new nO;return t.onRequest=e.onRequest.slice(),t.preParsing=e.preParsing.slice(),t.preValidation=e.preValidation.slice(),t.preSerialization=e.preSerialization.slice(),t.preHandler=e.preHandler.slice(),t.onSend=e.onSend.slice(),t.onResponse=e.onResponse.slice(),t.onError=e.onError.slice(),t.onRoute=e.onRoute.slice(),t.onRegister=e.onRegister.slice(),t.onTimeout=e.onTimeout.slice(),t.onRequestAbort=e.onRequestAbort.slice(),t.onReady=[],t.onListen=[],t.preClose=[],t}function V3e(e,t,r,n){let s=r[H3e][e],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=F3e(l,new Rsr(e)):l=U3e[l.code]!=null?F3e(l,new U3e[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[rO].length){i===0&&a===0?o():t(function(f,h){o(f),h(f)});return}if(i===s.length&&a{"use strict";var Usr=require("node:http"),Fsr=require("node:https"),$sr=require("node:dns"),{FSTDEP011:z3e}=Xp(),{kState:Bo,kOptions:qsr,kServerBindings:Hsr}=Pa(),{onListenHookRunner:lF}=K_(),{FST_ERR_HTTP2_INVALID_VERSION:Vsr,FST_ERR_REOPENED_CLOSE_SERVER:W3e,FST_ERR_REOPENED_SERVER:X3e,FST_ERR_LISTEN_OPTIONS_INVALID:jsr}=ko();DZ.exports.createServer=Ksr;DZ.exports.compileValidateHTTPVersion=zsr;function J3e(e){return`Server listening at ${e}`}function Ksr(e,t){let r=eUe(e,t);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=OZ([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")z3e(),s=OZ(Array.from(arguments)),a=s.cb;else if(i.length>1){z3e();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,OZ([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new jsr("Invalid options.signal");if(s.signal.aborted)this.close();else{let u=()=>{this.close()};s.signal.addEventListener("abort",u,{once:!0})}}let c;if(s.path==null?c=s.host??"localhost":c=s.host,Object.prototype.hasOwnProperty.call(s,"host")===!1&&(s.host=c),c==="localhost"?s.cb=(u,l)=>{if(u){a(u,l);return}Y3e.call(this,r,t,e,s,()=>{this[Bo].listening=!0,a(null,l),lF(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Bo].listening=!0,a(null,l),lF(this)},a===void 0)return Gsr.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Y3e.call(this,r,t,e,s,()=>{this[Bo].listening=!0,d(l),lF(this)}):(d(l),lF(this))}));this.ready(Z3e.call(this,r,s))}return{server:r,listen:n}}function Y3e(e,t,r,n,s){this[Bo].listening=!1,$sr.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=e.listening&&r.serverFactory,c=0,u=0;if(!o){let d=e.address();for(let f of a)if(f.address!==d.address){c++;let h=Object.assign({},n,{host:f.address,port:d.port,cb:_=>{u++,_||this[Hsr].push(p),u===c&&s()}}),p=eUe(r,t),m=()=>{p.close(()=>{}),r.forceCloseConnections==="idle"?p.closeIdleConnections():typeof p.closeAllConnections=="function"&&r.forceCloseConnections&&p.closeAllConnections()};p.on("upgrade",e.emit.bind(e,"upgrade")),e.on("unref",m),e.on("close",m),e.on("error",m),this[Bo].listening=!1,Z3e.call(this,p,h)()}}if(c===0){s();return}let l=e.unref;e.unref=function(){l.call(e),e.emit("unref")}})}function Z3e(e,t){let r=n=>{if(e.removeListener("error",r),n)this[Bo].listening=!1,t.cb(n,null);else{let s=tUe.call(this,e,t.listenTextResolver||J3e);t.cb(null,s)}};return n=>{if(n!=null)return t.cb(n);if(this[Bo].listening&&this[Bo].closing)return t.cb(new W3e,null);if(this[Bo].listening)return t.cb(new X3e,null);e.once("error",r),this[Bo].closing||(e.listen(t,r),this[Bo].listening=!0)}}function Gsr(e,t){return this[Bo].listening&&this[Bo].closing?Promise.reject(new W3e):this[Bo].listening?Promise.reject(new X3e):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Bo].listening=!1,a(o)},e.once("error",r)}),s=new Promise((i,a)=>{e.listen(t,()=>{e.removeListener("error",r),i(tUe.call(this,e,t.listenTextResolver||J3e))}),this[Bo].listening=!0});return Promise.race([n,s])})}function zsr(e){let t=!1,r=new Map;return e.serverFactory&&(t=!0),e.http2?(r.set("2.0",!0),e.https&&e.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(s){return t||r.has(s)}}function eUe(e,t){let r=null,n=e.https===!0?{}:e.https;return e.serverFactory?r=e.serverFactory(t,e):e.http2?(typeof n=="object"?r=Q3e().createSecureServer(n,t):r=Q3e().createServer(t),r.on("session",Qsr(e.http2SessionTimeout))):(n?r=Fsr.createServer(n,t):r=Usr.createServer(e.http,t),r.keepAliveTimeout=e.keepAliveTimeout,r.requestTimeout=e.requestTimeout,e.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=e.maxRequestsPerSocket)),e.serverFactory||r.setTimeout(e.connectionTimeout),r}function OZ(e){if(e.length===0)return{port:0,host:"localhost"};let r={cb:typeof e[e.length-1]=="function"?e.pop():void 0},n=e[0],s=e.length,i=e[s-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=s>1?i:void 0):(r.port=s>=1&&Number.isInteger(n)?n:Ysr(n),r.host=s>=2&&e[1]?e[1]:"localhost",r.backlog=s>=3?e[2]:void 0),r}function Ysr(e){let t=Number(e);return t>=0&&!Number.isNaN(t)&&Number.isInteger(t)?t:0}function tUe(e,t){let r=e.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[qsr].https?"s":"")+"://")+r;let s=t(r);return this.log.info(s),r}function Q3e(){try{return require("node:http2")}catch{throw new Vsr}}function Qsr(e){return function(t){t.setTimeout(e,Wsr)}}function Wsr(){this.close()}});var kZ=S((v$n,sUe)=>{"use strict";var{kSchemaHeaders:hF,kSchemaParams:PZ,kSchemaQuerystring:LZ,kSchemaBody:MZ,kSchemaResponse:nUe}=Pa(),Xsr=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:Jsr}=ko(),{FSTWRN001:dF}=Xp();function Zsr(e,t){if(!e.schema||!e.schema.response)return;let{method:r,url:n}=e.config||{};e[nUe]=Object.keys(e.schema.response).reduce(function(s,i){let a=e.schema.response[i];if(i=i.toLowerCase(),!Xsr.exec(i))throw new Jsr;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=t({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=t({schema:a,url:n,method:r,httpStatus:i});return s},{})}function eir(e,t,r){let{schema:n}=e;if(!n)return;let{method:s,url:i}=e.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))e[hF]=t({schema:a,method:s,url:i,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(c=>{o[c]=a[c]}),o.required instanceof Array&&(o.required=o.required.map(c=>c.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(c=>{o.properties[c.toLowerCase()]=a.properties[c]})),e[hF]=t({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&dF("headers",s,i);n.body?e[MZ]=t({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&dF("body",s,i),n.querystring?e[LZ]=t({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&dF("querystring",s,i),n.params?e[PZ]=t({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&dF("params",s,i)}function fF(e,t,r){let n=t[r]===void 0,s=e&&e(n?null:t[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?e.errors:a&&a.error?a.error:(a&&a.value&&(t[r]=a.value),!1)}}function pF(e,t,r){let n=r===void 0;if(n||!r.skipParams){let i=fF(e[PZ],t,"params");if(i)return typeof i.then!="function"?G_(i,"params",e.schemaErrorFormatter):tir(i,e,t)}if(n||!r.skipBody){let i=fF(e[MZ],t,"body");if(i)return typeof i.then!="function"?G_(i,"body",e.schemaErrorFormatter):rir(i,e,t)}if(n||!r.skipQuery){let i=fF(e[LZ],t,"query");if(i)return typeof i.then!="function"?G_(i,"querystring",e.schemaErrorFormatter):nir(i,e,t)}let s=fF(e[hF],t,"headers");return s?typeof s.then!="function"?G_(s,"headers",e.schemaErrorFormatter):sir(s,e,t):!1}function tir(e,t,r){return e.then(n=>n?G_(n,"params",t.schemaErrorFormatter):pF(t,r,{skipParams:!0}))}function rir(e,t,r){return e.then(n=>n?G_(n,"body",t.schemaErrorFormatter):pF(t,r,{skipParams:!0,skipBody:!0}))}function nir(e,t,r){return e.then(n=>n?G_(n,"querystring",t.schemaErrorFormatter):pF(t,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function sir(e,t,r){return e.then(n=>n?G_(n,"headers",t.schemaErrorFormatter):!1)}function G_(e,t,r){if(e instanceof Error)return e.statusCode=e.statusCode||400,e.code=e.code||"FST_ERR_VALIDATION",e.validationContext=e.validationContext||t,e;let n=r(e,t);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=e,n.validationContext=t,n}sUe.exports={symbols:{bodySchema:MZ,querystringSchema:LZ,responseSchema:nUe,paramsSchema:PZ,headersSchema:hF},compileSchemasForValidation:eir,compileSchemasForSerialization:Zsr,validate:pF}});var BZ=S((S$n,aUe)=>{"use strict";var{kReplyIsError:iUe,kReplyHijacked:iir}=Pa();function air(e,t){e.then(function(r){if(t[iir]!==!0&&(r!==void 0||t.sent===!1&&t.raw.headersSent===!1&&t.request.raw.aborted===!1))try{t.send(r)}catch(n){t[iUe]=!0,t.send(n)}},function(r){if(t.sent===!0){t.log.error({err:r},"Promise errored, but reply.sent = true was set");return}t[iUe]=!0;try{t.send(r)}catch(n){t.send(n)}})}aUe.exports=air});var qZ=S((T$n,$Z)=>{"use strict";var{validate:oir}=kZ(),{preValidationHookRunner:cir,preHandlerHookRunner:uir}=K_(),lir=BZ(),{kReplyIsError:mF,kRouteContext:Y_}=Pa();function dir(e,t,r){if(r.sent===!0)return;if(e!=null){r[mF]=!0,r.send(e);return}let n=t.raw.method,s=t.headers,i=t[Y_];if(n==="GET"||n==="HEAD"){z_(t,r);return}let a=s["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?s["transfer-encoding"]===void 0&&(s["content-length"]==="0"||s["content-length"]===void 0)?z_(t,r):i.contentTypeParser.run("",z_,t,r):i.contentTypeParser.run(a,z_,t,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,z_,t,r):z_(t,r);return}z_(t,r)}function z_(e,t){try{e[Y_].preValidation!==null?cir(e[Y_].preValidation,e,t,UZ):UZ(null,e,t)}catch(r){UZ(r,e,t)}}function UZ(e,t,r){if(r.sent===!0)return;if(e!=null){r[mF]=!0,r.send(e);return}let n=oir(r[Y_],t);if(n&&typeof n.then=="function"||!1){let i=oUe.bind(null,t,r);n.then(i,i)}else oUe(t,r,n)}function oUe(e,t,r){if(r){if(t[Y_].attachValidation===!1){t.send(r);return}t.request.validationError=r}e[Y_].preHandler!==null?uir(e[Y_].preHandler,e,t,FZ):FZ(null,e,t)}function FZ(e,t,r){if(r.sent)return;if(e!=null){r[mF]=!0,r.send(e);return}let n;try{n=t[Y_].handler(t,r)}catch(s){r[mF]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?lir(n,r):r.send(n))}$Z.exports=dir;$Z.exports[Symbol.for("internals")]={handler:z_,preHandlerCallback:FZ}});var uUe=S((b$n,cUe)=>{"use strict";function R1(){}var fir={fatal:R1,error:R1,warn:R1,info:R1,debug:R1,trace:R1};Object.defineProperty(cUe,"exports",{get(){return Object.create(fir)}})});var VZ=S((I$n,fUe)=>{"use strict";var iO=e=>e&&typeof e.message=="string",HZ=e=>{if(!e)return;let t=e.cause;if(typeof t=="function"){let r=e.cause();return iO(r)?r:void 0}else return iO(t)?t:void 0},lUe=(e,t)=>{if(!iO(e))return"";let r=e.stack||"";if(t.has(e))return r+` -causes have become circular...`;let n=HZ(e);return n?(t.add(e),r+` -caused by: `+lUe(n,t)):r},hir=e=>lUe(e,new Set),dUe=(e,t,r)=>{if(!iO(e))return"";let n=r?"":e.message||"";if(t.has(e))return n+": ...";let s=HZ(e);if(s){t.add(e);let i=typeof e.cause=="function";return n+(i?"":": ")+dUe(s,t,i)}else return n},pir=e=>dUe(e,new Set);fUe.exports={isErrorLike:iO,getErrorCause:HZ,stackWithCauses:hir,messageWithCauses:pir}});var jZ=S((R$n,pUe)=>{"use strict";var mir=Symbol("circular-ref-tag"),gF=Symbol("pino-raw-err-ref"),hUe=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[gF]},set:function(e){this[gF]=e}}});Object.defineProperty(hUe,gF,{writable:!0,value:{}});pUe.exports={pinoErrProto:hUe,pinoErrorSymbols:{seen:mir,rawSymbol:gF}}});var _Ue=S((C$n,gUe)=>{"use strict";gUe.exports=GZ;var{messageWithCauses:gir,stackWithCauses:_ir,isErrorLike:mUe}=VZ(),{pinoErrProto:Air,pinoErrorSymbols:Eir}=jZ(),{seen:KZ}=Eir,{toString:yir}=Object.prototype;function GZ(e){if(!mUe(e))return e;e[KZ]=void 0;let t=Object.create(Air);t.type=yir.call(e.constructor)==="[object Function]"?e.constructor.name:e.name,t.message=gir(e),t.stack=_ir(e),Array.isArray(e.errors)&&(t.aggregateErrors=e.errors.map(r=>GZ(r)));for(let r in e)if(t[r]===void 0){let n=e[r];mUe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,KZ)&&(t[r]=GZ(n)):t[r]=n}return delete e[KZ],t.raw=e,t}});var EUe=S((x$n,AUe)=>{"use strict";AUe.exports=AF;var{isErrorLike:zZ}=VZ(),{pinoErrProto:vir,pinoErrorSymbols:Sir}=jZ(),{seen:_F}=Sir,{toString:Tir}=Object.prototype;function AF(e){if(!zZ(e))return e;e[_F]=void 0;let t=Object.create(vir);t.type=Tir.call(e.constructor)==="[object Function]"?e.constructor.name:e.name,t.message=e.message,t.stack=e.stack,Array.isArray(e.errors)&&(t.aggregateErrors=e.errors.map(r=>AF(r))),zZ(e.cause)&&!Object.prototype.hasOwnProperty.call(e.cause,_F)&&(t.cause=AF(e.cause));for(let r in e)if(t[r]===void 0){let n=e[r];zZ(n)?Object.prototype.hasOwnProperty.call(n,_F)||(t[r]=AF(n)):t[r]=n}return delete e[_F],t.raw=e,t}});var TUe=S((w$n,SUe)=>{"use strict";SUe.exports={mapHttpRequest:bir,reqSerializer:vUe};var YZ=Symbol("pino-raw-req-ref"),yUe=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[YZ]},set:function(e){this[YZ]=e}}});Object.defineProperty(yUe,YZ,{writable:!0,value:{}});function vUe(e){let t=e.info||e.socket,r=Object.create(yUe);if(r.id=typeof e.id=="function"?e.id():e.id||(e.info?e.info.id:void 0),r.method=e.method,e.originalUrl)r.url=e.originalUrl;else{let n=e.path;r.url=typeof n=="string"?n:e.url?e.url.path||e.url:void 0}return e.query&&(r.query=e.query),e.params&&(r.params=e.params),r.headers=e.headers,r.remoteAddress=t&&t.remoteAddress,r.remotePort=t&&t.remotePort,r.raw=e.raw||e,r}function bir(e){return{req:vUe(e)}}});var CUe=S((N$n,RUe)=>{"use strict";RUe.exports={mapHttpResponse:Iir,resSerializer:IUe};var QZ=Symbol("pino-raw-res-ref"),bUe=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[QZ]},set:function(e){this[QZ]=e}}});Object.defineProperty(bUe,QZ,{writable:!0,value:{}});function IUe(e){let t=Object.create(bUe);return t.statusCode=e.headersSent?e.statusCode:null,t.headers=e.getHeaders?e.getHeaders():e._headers,t.raw=e,t}function Iir(e){return{res:IUe(e)}}});var XZ=S((O$n,xUe)=>{"use strict";var WZ=_Ue(),Rir=EUe(),EF=TUe(),yF=CUe();xUe.exports={err:WZ,errWithCause:Rir,mapHttpRequest:EF.mapHttpRequest,mapHttpResponse:yF.mapHttpResponse,req:EF.reqSerializer,res:yF.resSerializer,wrapErrorSerializer:function(t){return t===WZ?t:function(n){return t(WZ(n))}},wrapRequestSerializer:function(t){return t===EF.reqSerializer?t:function(n){return t(EF.reqSerializer(n))}},wrapResponseSerializer:function(t){return t===yF.resSerializer?t:function(n){return t(yF.resSerializer(n))}}}});var JZ=S((D$n,wUe)=>{"use strict";function Cir(e,t){return t}wUe.exports=function(){let t=Error.prepareStackTrace;Error.prepareStackTrace=Cir;let r=new Error().stack;if(Error.prepareStackTrace=t,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var OUe=S((P$n,NUe)=>{"use strict";NUe.exports=xir;function xir(e={}){let{ERR_PATHS_MUST_BE_STRINGS:t=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=e;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(t());try{if(/〇/.test(i))throw Error();let a=(i[0]==="["?"":".")+i.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(` - 'use strict' - const o = new Proxy({}, { get: () => o, set: () => { throw Error() } }); - const \u3007 = null; - o${a} - if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var vF=S((L$n,DUe)=>{"use strict";DUe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var LUe=S((M$n,PUe)=>{"use strict";var wir=vF();PUe.exports=Nir;function Nir({paths:e}){let t=[];var r=0;let n=e.reduce(function(s,i,a){var o=i.match(wir).map(l=>l.replace(/'|"|`/g,""));let c=i[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let u=o.indexOf("*");if(u>-1){let l=o.slice(0,u),d=l.join("."),f=o.slice(u+1,o.length),h=f.length>0;r++,t.push({before:l,beforeStr:d,after:f,nested:h})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:t,wcLen:r,secret:n}}});var kUe=S((k$n,MUe)=>{"use strict";var Oir=vF();MUe.exports=Dir;function Dir({secret:e,serialize:t,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",` - if (typeof o !== 'object' || o == null) { - ${kir(n,t)} - } - const { censor, secret } = this - const originalSecret = {} - const secretKeys = Object.keys(secret) - for (var i = 0; i < secretKeys.length; i++) { - originalSecret[secretKeys[i]] = secret[secretKeys[i]] - } - - ${Pir(e,s,i)} - this.compileRestore() - ${Lir(r>0,s,i)} - this.secret = originalSecret - ${Mir(t)} - `).bind(a);return o.state=a,t===!1&&(o.restore=c=>a.restore(c)),o}function Pir(e,t,r){return Object.keys(e).map(n=>{let{escPath:s,leadingBracket:i,path:a}=e[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=Oir.exec(n))!==null;){let[,p]=l,{index:m,input:_}=l;m>o&&u.push(_.substring(0,m-(p?0:1)))}var d=u.map(p=>`o${c}${p}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=` - switch (true) { - ${u.reverse().map(p=>` - case o${c}${p} === censor: - secret[${s}].circle = ${JSON.stringify(p)} - break - `).join(` -`)} - } - `,h=r?`val, ${JSON.stringify(a)}`:"val";return` - if (${d}) { - const val = o${c}${n} - if (val === censor) { - secret[${s}].precensored = true - } else { - secret[${s}].val = val - o${c}${n} = ${t?`censor(${h})`:"censor"} - ${f} - } - } - `}).join(` -`)}function Lir(e,t,r){return e===!0?` - { - const { wildcards, wcLen, groupRedact, nestedRedact } = this - for (var i = 0; i < wcLen; i++) { - const { before, beforeStr, after, nested } = wildcards[i] - if (nested === true) { - secret[beforeStr] = secret[beforeStr] || [] - nestedRedact(secret[beforeStr], o, before, after, censor, ${t}, ${r}) - } else secret[beforeStr] = groupRedact(o, before, censor, ${t}, ${r}) - } - } - `:""}function Mir(e){return e===!1?"return o":` - var s = this.serialize(o) - this.restore(o) - return s - `}function kir(e,t){return e===!0?"throw Error('fast-redact: primitives cannot be redacted')":t===!1?"return o":"return this.serialize(o)"}});var eee=S((B$n,FUe)=>{"use strict";FUe.exports={groupRedact:Uir,groupRestore:Bir,nestedRedact:$ir,nestedRestore:Fir};function Bir({keys:e,values:t,target:r}){if(r==null||typeof r=="string")return;let n=e.length;for(var s=0;s0;a--)i=i[n[a]];i[n[0]]=s}}function $ir(e,t,r,n,s,i,a){let o=BUe(t,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l{"use strict";var{groupRestore:Vir,nestedRestore:jir}=eee();$Ue.exports=Kir;function Kir(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:t,wcLen:r}=this,n=Object.keys(t),s=Gir(t,n),i=r>0,a=i?{secret:t,groupRestore:Vir,nestedRestore:jir}:{secret:t};this.restore=Function("o",zir(s,n,i)).bind(a),this.restore.state=a}}function Gir(e,t){return t.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=e[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return` - if (secret[${s}].val !== undefined) { - try { ${o} } catch (e) {} - ${c} - } - `}).join("")}function zir(e,t,r){return` - const secret = this.secret - ${r===!0?` - const keys = Object.keys(secret) - const len = keys.length - for (var i = len - 1; i >= ${t.length}; i--) { - const k = keys[i] - const o = secret[k] - if (o) { - if (o.flat === true) this.groupRestore(o) - else this.nestedRestore(o) - secret[k] = null - } - } - `:""} - ${e} - return o - `}});var VUe=S((F$n,HUe)=>{"use strict";HUe.exports=Yir;function Yir(e){let{secret:t,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=e,u=[{secret:t,censor:r,compileRestore:n}];return s!==!1&&u.push({serialize:s}),c>0&&u.push({groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}),Object.assign(...u)}});var GUe=S(($$n,KUe)=>{"use strict";var jUe=OUe(),Qir=LUe(),Wir=kUe(),Xir=qUe(),{groupRedact:Jir,nestedRedact:Zir}=eee(),ear=VUe(),tar=vF(),rar=jUe(),tee=e=>e;tee.restore=tee;var nar="[REDACTED]";ree.rx=tar;ree.validator=jUe;KUe.exports=ree;function ree(e={}){let t=Array.from(new Set(e.paths||[])),r="serialize"in e&&(e.serialize===!1||typeof e.serialize=="function")?e.serialize:JSON.stringify,n=e.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let s=n===!0?void 0:"censor"in e?e.censor:nar,i=typeof s=="function",a=i&&s.length>1;if(t.length===0)return r||tee;rar({paths:t,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=Qir({paths:t,censor:s}),l=Xir(),d="strict"in e?e.strict:!0;return Wir({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},ear({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:Jir,nestedRedact:Zir,wildcards:o,wcLen:c}))}});var C1=S((q$n,zUe)=>{"use strict";var sar=Symbol("pino.setLevel"),iar=Symbol("pino.getLevel"),aar=Symbol("pino.levelVal"),oar=Symbol("pino.levelComp"),car=Symbol("pino.useLevelLabels"),uar=Symbol("pino.useOnlyCustomLevels"),lar=Symbol("pino.mixin"),dar=Symbol("pino.lsCache"),far=Symbol("pino.chindings"),har=Symbol("pino.asJson"),par=Symbol("pino.write"),mar=Symbol("pino.redactFmt"),gar=Symbol("pino.time"),_ar=Symbol("pino.timeSliceIndex"),Aar=Symbol("pino.stream"),Ear=Symbol("pino.stringify"),yar=Symbol("pino.stringifySafe"),Sar=Symbol("pino.stringifiers"),Tar=Symbol("pino.end"),bar=Symbol("pino.formatOpts"),Iar=Symbol("pino.messageKey"),Rar=Symbol("pino.errorKey"),Car=Symbol("pino.nestedKey"),xar=Symbol("pino.nestedKeyStr"),war=Symbol("pino.mixinMergeStrategy"),Nar=Symbol("pino.msgPrefix"),Oar=Symbol("pino.wildcardFirst"),Dar=Symbol.for("pino.serializers"),Par=Symbol.for("pino.formatters"),Lar=Symbol.for("pino.hooks"),Mar=Symbol.for("pino.metadata");zUe.exports={setLevelSym:sar,getLevelSym:iar,levelValSym:aar,levelCompSym:oar,useLevelLabelsSym:car,mixinSym:lar,lsCacheSym:dar,chindingsSym:far,asJsonSym:har,writeSym:par,serializersSym:Dar,redactFmtSym:mar,timeSym:gar,timeSliceIndexSym:_ar,streamSym:Aar,stringifySym:Ear,stringifySafeSym:yar,stringifiersSym:Sar,endSym:Tar,formatOptsSym:bar,messageKeySym:Iar,errorKeySym:Rar,nestedKeySym:Car,wildcardFirstSym:Oar,needsMetadataGsym:Mar,useOnlyCustomLevelsSym:uar,formattersSym:Par,hooksSym:Lar,nestedKeyStrSym:xar,mixinMergeStrategySym:war,msgPrefixSym:Nar}});var iee=S((H$n,XUe)=>{"use strict";var see=GUe(),{redactFmtSym:kar,wildcardFirstSym:SF}=C1(),{rx:nee,validator:Bar}=see,YUe=Bar({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:e=>`pino \u2013 redact paths array contains an invalid path (${e})`}),QUe="[Redacted]",WUe=!1;function Uar(e,t){let{paths:r,censor:n}=Far(e),s=r.reduce((o,c)=>{nee.lastIndex=0;let u=nee.exec(c),l=nee.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=SF),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,h=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==SF&&o[d].length===0&&o[d].push(...o[SF]||[]),d===SF&&Object.keys(o).forEach(function(p){o[p]&&o[p].push(h)}),o[d].push(h),o},{}),i={[kar]:see({paths:r,censor:n,serialize:t,strict:WUe})},a=(...o)=>t(typeof n=="function"?n(...o):n);return[...Object.keys(s),...Object.getOwnPropertySymbols(s)].reduce((o,c)=>{if(s[c]===null)o[c]=u=>a(u,[c]);else{let u=typeof n=="function"?(l,d)=>n(l,[c,...d]):n;o[c]=see({paths:s[c],censor:u,serialize:t,strict:WUe})}return o},i)}function Far(e){if(Array.isArray(e))return e={paths:e,censor:QUe},YUe(e),e;let{paths:t,censor:r=QUe,remove:n}=e;if(Array.isArray(t)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),YUe({paths:t,censor:r}),{paths:t,censor:r}}XUe.exports=Uar});var ZUe=S((V$n,JUe)=>{"use strict";var $ar=()=>"",qar=()=>`,"time":${Date.now()}`,Har=()=>`,"time":${Math.round(Date.now()/1e3)}`,Var=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;JUe.exports={nullTime:$ar,epochTime:qar,unixTime:Har,isoTime:Var}});var tFe=S((j$n,eFe)=>{"use strict";function jar(e){try{return JSON.stringify(e)}catch{return'"[Circular]"'}}eFe.exports=Kar;function Kar(e,t,r){var n=r&&r.stringify||jar,s=1;if(typeof e=="object"&&e!==null){var i=t.length+s;if(i===1)return e;var a=new Array(i);a[0]=n(e);for(var o=1;o-1?d:0,e.charCodeAt(h+1)){case 100:case 102:if(l>=c||t[l]==null)break;d=c||t[l]==null)break;d=c||t[l]===void 0)break;d",d=h+2,h++;break}u+=n(t[l]),d=h+2,h++;break;case 115:if(l>=c)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));aee.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};aee.exports=e}});var uFe=S((G$n,cFe)=>{"use strict";var ki=require("fs"),Gar=require("events"),zar=require("util").inherits,rFe=require("path"),uee=oee(),TF=100,bF=Buffer.allocUnsafe(0),Yar=16*1024,nFe="buffer",sFe="utf8";function iFe(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(i,a){if(i){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",i)}):t.emit("error",i);return}let o=t._reopening;t.fd=a,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():o&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",s=t.mode;if(t.sync)try{t.mkdir&&ki.mkdirSync(rFe.dirname(e),{recursive:!0});let i=ki.openSync(e,n,s);r(null,i)}catch(i){throw r(i),i}else t.mkdir?ki.mkdir(rFe.dirname(e),{recursive:!0},i=>{if(i)return r(i);ki.open(e,n,s,r)}):ki.open(e,n,s,r)}function If(e){if(!(this instanceof If))return new If(e);let{fd:t,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=s||0,this.maxWrite=i||Yar,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=u||(()=>!0),this.mkdir=c||!1;let h,p;if(d===nFe)this._writingBuf=bF,this.write=Xar,this.flush=Zar,this.flushSync=tor,this._actualWrite=nor,h=()=>ki.writeSync(this.fd,this._writingBuf),p=()=>ki.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===sFe)this._writingBuf="",this.write=War,this.flush=Jar,this.flushSync=eor,this._actualWrite=ror,h=()=>ki.writeSync(this.fd,this._writingBuf,"utf8"),p=()=>ki.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${sFe}" and "${nFe}", but passed ${d}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")iFe(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(m,_)=>{if(m){if((m.code==="EAGAIN"||m.code==="EBUSY")&&this.retryEAGAIN(m,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{uee(TF),this.release(void 0,0)}catch(A){this.release(A)}else setTimeout(p,TF);else this._writing=!1,this.emit("error",m);return}this.emit("write",_);let g=cee(this._writingBuf,this._len,_);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){p();return}try{do{let A=h(),E=cee(this._writingBuf,this._len,A);this._len=E.len,this._writingBuf=E.writingBuf}while(this._writingBuf.length)}catch(A){this.release(A);return}}this._fsync&&ki.fsyncSync(this.fd);let y=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):y>this.minLength?this._actualWrite():this._ending?y>0?this._actualWrite():(this._writing=!1,IF(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(Qar,this)):this.emit("drain"))},this.on("newListener",function(m){m==="drain"&&(this._asyncDrainScheduled=!1)})}function cee(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function Qar(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}zar(If,Gar);function aFe(e,t){return e.length===0?bF:e.length===1?e[0]:Buffer.concat(e,t)}function War(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):ki.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function Jar(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&oFe.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function Zar(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&oFe.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}If.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&ki.close(t,r=>{if(r)return this.emit("error",r)})}),iFe(this.file,this)};If.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():IF(this)))};function eor(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=ki.writeSync(this.fd,e,"utf8"),r=cee(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;uee(TF)}}try{ki.fsyncSync(this.fd)}catch{}}function tor(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=bF);let e=bF;for(;this._bufs.length||e.length;){e.length<=0&&(e=aFe(this._bufs[0],this._lens[0]));try{let t=ki.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;uee(TF)}}}If.prototype.destroy=function(){this.destroyed||IF(this)};function ror(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=ki.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else ki.write(this.fd,this._writingBuf,"utf8",e)}function nor(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:aFe(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=ki.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else ki.write(this.fd,this._writingBuf,e)}function IF(e){if(e.fd===-1){e.once("ready",IF.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],ki.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?ki.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}If.SonicBoom=If;If.default=If;cFe.exports=If});var lee=S((z$n,pFe)=>{"use strict";var Rf={exit:[],beforeExit:[]},lFe={exit:aor,beforeExit:oor},x1;function sor(){x1===void 0&&(x1=new FinalizationRegistry(cor))}function ior(e){Rf[e].length>0||process.on(e,lFe[e])}function dFe(e){Rf[e].length>0||(process.removeListener(e,lFe[e]),Rf.exit.length===0&&Rf.beforeExit.length===0&&(x1=void 0))}function aor(){fFe("exit")}function oor(){fFe("beforeExit")}function fFe(e){for(let t of Rf[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}Rf[e]=[]}function cor(e){for(let t of["exit","beforeExit"]){let r=Rf[t].indexOf(e);Rf[t].splice(r,r+1),dFe(t)}}function hFe(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");ior(e);let n=new WeakRef(t);n.fn=r,sor(),x1.register(t,n),Rf[e].push(n)}function uor(e,t){hFe("exit",e,t)}function lor(e,t){hFe("beforeExit",e,t)}function dor(e){if(x1!==void 0){x1.unregister(e);for(let t of["exit","beforeExit"])Rf[t]=Rf[t].filter(r=>{let n=r.deref();return n&&n!==e}),dFe(t)}}pFe.exports={register:uor,registerBeforeExit:lor,unregister:dor}});var mFe=S((Y$n,hor)=>{hor.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina ",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var _Fe=S((Q$n,gFe)=>{"use strict";function por(e,t,r,n,s){let i=Date.now()+n,a=Atomics.load(e,t);if(a===r){s(null,"ok");return}let o=a,c=u=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(e,t),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function mor(e,t,r,n,s){let i=Date.now()+n,a=Atomics.load(e,t);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(e,t),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}gFe.exports={wait:por,waitDiff:mor}});var EFe=S((W$n,AFe)=>{"use strict";AFe.exports={WRITE_INDEX:4,READ_INDEX:8}});var bFe=S((X$n,TFe)=>{"use strict";var{version:gor}=mFe(),{EventEmitter:_or}=require("events"),{Worker:Aor}=require("worker_threads"),{join:Eor}=require("path"),{pathToFileURL:yor}=require("url"),{wait:vor}=_Fe(),{WRITE_INDEX:Eu,READ_INDEX:J0}=EFe(),Sor=require("buffer"),Tor=require("assert"),je=Symbol("kImpl"),bor=Sor.constants.MAX_STRING_LENGTH,oO=class{constructor(t){this._value=t}deref(){return this._value}},CF=class{register(){}unregister(){}},Ior=process.env.NODE_V8_COVERAGE?CF:global.FinalizationRegistry||CF,Ror=process.env.NODE_V8_COVERAGE?oO:global.WeakRef||oO,yFe=new Ior(e=>{e.exited||e.terminate()});function Cor(e,t){let{filename:r,workerData:n}=t,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||Eor(__dirname,"lib","worker.js"),a=new Aor(i,{...t.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:yor(r).href,dataBuf:e[je].dataBuf,stateBuf:e[je].stateBuf,workerData:{$context:{threadStreamVersion:gor},...n}}});return a.stream=new oO(e),a.on("message",xor),a.on("exit",SFe),yFe.register(e,a),a}function vFe(e){Tor(!e[je].sync),e[je].needDrain&&(e[je].needDrain=!1,e.emit("drain"))}function RF(e){let t=Atomics.load(e[je].state,Eu),r=e[je].data.length-t;if(r>0){if(e[je].buf.length===0){e[je].flushing=!1,e[je].ending?mee(e):e[je].needDrain&&process.nextTick(vFe,e);return}let n=e[je].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(e[je].buf=e[je].buf.slice(r),xF(e,n,RF.bind(null,e))):e.flush(()=>{if(!e.destroyed){for(Atomics.store(e[je].state,J0,0),Atomics.store(e[je].state,Eu,0);s>e[je].data.length;)r=r/2,n=e[je].buf.slice(0,r),s=Buffer.byteLength(n);e[je].buf=e[je].buf.slice(r),xF(e,n,RF.bind(null,e))}})}else if(r===0){if(t===0&&e[je].buf.length===0)return;e.flush(()=>{Atomics.store(e[je].state,J0,0),Atomics.store(e[je].state,Eu,0),RF(e)})}else Z0(e,new Error("overwritten"))}function xor(e){let t=this.stream.deref();if(t===void 0){this.exited=!0,this.terminate();return}switch(e.code){case"READY":this.stream=new Ror(t),t.flush(()=>{t[je].ready=!0,t.emit("ready")});break;case"ERROR":Z0(t,e.err);break;case"EVENT":Array.isArray(e.args)?t.emit(e.name,...e.args):t.emit(e.name,e.args);break;case"WARNING":process.emitWarning(e.err);break;default:Z0(t,new Error("this should not happen: "+e.code))}}function SFe(e){let t=this.stream.deref();t!==void 0&&(yFe.unregister(t),t.worker.exited=!0,t.worker.off("exit",SFe),Z0(t,e!==0?new Error("the worker thread exited"):null))}var fee=class extends _or{constructor(t={}){if(super(),t.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[je]={},this[je].stateBuf=new SharedArrayBuffer(128),this[je].state=new Int32Array(this[je].stateBuf),this[je].dataBuf=new SharedArrayBuffer(t.bufferSize||4*1024*1024),this[je].data=Buffer.from(this[je].dataBuf),this[je].sync=t.sync||!1,this[je].ending=!1,this[je].ended=!1,this[je].needDrain=!1,this[je].destroyed=!1,this[je].flushing=!1,this[je].ready=!1,this[je].finished=!1,this[je].errored=null,this[je].closed=!1,this[je].buf="",this.worker=Cor(this,t),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(t){if(this[je].destroyed)return hee(this,new Error("the worker has exited")),!1;if(this[je].ending)return hee(this,new Error("the worker is ending")),!1;if(this[je].flushing&&this[je].buf.length+t.length>=bor)try{dee(this),this[je].flushing=!0}catch(r){return Z0(this,r),!1}if(this[je].buf+=t,this[je].sync)try{return dee(this),!0}catch(r){return Z0(this,r),!1}return this[je].flushing||(this[je].flushing=!0,setImmediate(RF,this)),this[je].needDrain=this[je].data.length-this[je].buf.length-Atomics.load(this[je].state,Eu)<=0,!this[je].needDrain}end(){this[je].destroyed||(this[je].ending=!0,mee(this))}flush(t){if(this[je].destroyed){typeof t=="function"&&process.nextTick(t,new Error("the worker has exited"));return}let r=Atomics.load(this[je].state,Eu);vor(this[je].state,J0,r,1/0,(n,s)=>{if(n){Z0(this,n),process.nextTick(t,n);return}if(s==="not-equal"){this.flush(t);return}process.nextTick(t)})}flushSync(){this[je].destroyed||(dee(this),pee(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[je].ready}get destroyed(){return this[je].destroyed}get closed(){return this[je].closed}get writable(){return!this[je].destroyed&&!this[je].ending}get writableEnded(){return this[je].ending}get writableFinished(){return this[je].finished}get writableNeedDrain(){return this[je].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[je].errored}};function hee(e,t){setImmediate(()=>{e.emit("error",t)})}function Z0(e,t){e[je].destroyed||(e[je].destroyed=!0,t&&(e[je].errored=t,hee(e,t)),e.worker.exited?setImmediate(()=>{e[je].closed=!0,e.emit("close")}):e.worker.terminate().catch(()=>{}).then(()=>{e[je].closed=!0,e.emit("close")}))}function xF(e,t,r){let n=Atomics.load(e[je].state,Eu),s=Buffer.byteLength(t);return e[je].data.write(t,n),Atomics.store(e[je].state,Eu,n+s),Atomics.notify(e[je].state,Eu),r(),!0}function mee(e){if(!(e[je].ended||!e[je].ending||e[je].flushing)){e[je].ended=!0;try{e.flushSync();let t=Atomics.load(e[je].state,J0);Atomics.store(e[je].state,Eu,-1),Atomics.notify(e[je].state,Eu);let r=0;for(;t!==-1;){if(Atomics.wait(e[je].state,J0,t,1e3),t=Atomics.load(e[je].state,J0),t===-2){Z0(e,new Error("end() failed"));return}if(++r===10){Z0(e,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{e[je].finished=!0,e.emit("finish")})}catch(t){Z0(e,t)}}}function dee(e){let t=()=>{e[je].ending?mee(e):e[je].needDrain&&process.nextTick(vFe,e)};for(e[je].flushing=!1;e[je].buf.length!==0;){let r=Atomics.load(e[je].state,Eu),n=e[je].data.length-r;if(n===0){pee(e),Atomics.store(e[je].state,J0,0),Atomics.store(e[je].state,Eu,0);continue}else if(n<0)throw new Error("overwritten");let s=e[je].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)e[je].buf=e[je].buf.slice(n),xF(e,s,t);else{for(pee(e),Atomics.store(e[je].state,J0,0),Atomics.store(e[je].state,Eu,0);i>e[je].buf.length;)n=n/2,s=e[je].buf.slice(0,n),i=Buffer.byteLength(s);e[je].buf=e[je].buf.slice(n),xF(e,s,t)}}}function pee(e){if(e[je].flushing)throw new Error("unable to flush while flushing");let t=Atomics.load(e[je].state,Eu),r=0;for(;;){let n=Atomics.load(e[je].state,J0);if(n===-2)throw Error("_flushSync failed");if(n!==t)Atomics.wait(e[je].state,J0,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}TFe.exports=fee});var Aee=S((J$n,IFe)=>{"use strict";var{createRequire:wor}=require("module"),Nor=JZ(),{join:gee,isAbsolute:Oor,sep:Dor}=require("path"),Por=oee(),_ee=lee(),Lor=bFe();function Mor(e){_ee.register(e,Bor),_ee.registerBeforeExit(e,Uor),e.on("close",function(){_ee.unregister(e)})}function kor(e,t,r){let n=new Lor({filename:e,workerData:t,workerOpts:r});n.on("ready",s),n.on("close",function(){process.removeListener("exit",i)}),process.on("exit",i);function s(){process.removeListener("exit",i),n.unref(),r.autoEnd!==!1&&Mor(n)}function i(){n.closed||(n.flushSync(),Por(100),n.end())}return n}function Bor(e){e.ref(),e.flushSync(),e.end(),e.once("close",function(){e.unref()})}function Uor(e){e.flushSync()}function For(e){let{pipeline:t,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=Nor()}=e,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=e.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||gee(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):t&&(l=u["pino-pipeline-worker"]||gee(__dirname,"worker-pipeline.js"),i.targets=t.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,kor(d(l),i,a);function d(f){if(f=u[f]||f,Oor(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return gee(__dirname,"..","file.js");let h;for(let p of c)try{let m=p==="node:repl"?process.cwd()+Dor:p;h=wor(m).resolve(f);break}catch{continue}if(!h)throw new Error(`unable to determine transport target for "${f}"`);return h}}IFe.exports=For});var OF=S((Z$n,kFe)=>{"use strict";var RFe=tFe(),{mapHttpRequest:$or,mapHttpResponse:qor}=XZ(),yee=uFe(),CFe=lee(),{lsCacheSym:Hor,chindingsSym:NFe,writeSym:xFe,serializersSym:OFe,formatOptsSym:wFe,endSym:Vor,stringifiersSym:DFe,stringifySym:PFe,stringifySafeSym:vee,wildcardFirstSym:LFe,nestedKeySym:jor,formattersSym:MFe,messageKeySym:Kor,errorKeySym:Gor,nestedKeyStrSym:zor,msgPrefixSym:wF}=C1(),{isMainThread:Yor}=require("worker_threads"),Qor=Aee();function w1(){}function Wor(e,t){if(!t)return r;return function(...s){t.call(this,s,r,e)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=$or(n):typeof n.setHeader=="function"&&(n=qor(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[wF]=="string"&&i!==void 0&&i!==null&&(i=this[wF]+i),this[xFe](n,RFe(i,a,this[wFe]),e)}else{let i=n===void 0?s.shift():n;typeof this[wF]=="string"&&i!==void 0&&i!==null&&(i=this[wF]+i),this[xFe](null,RFe(i,s,this[wFe]),e)}}}function Eee(e){let t="",r=0,n=!1,s=255,i=e.length;if(i>100)return JSON.stringify(e);for(var a=0;a=32;a++)s=e.charCodeAt(a),(s===34||s===92)&&(t+=e.slice(r,a)+"\\",r=a,n=!0);return n?t+=e.slice(r):t=e,s<32?JSON.stringify(e):'"'+t+'"'}function Xor(e,t,r,n){let s=this[PFe],i=this[vee],a=this[DFe],o=this[Vor],c=this[NFe],u=this[OFe],l=this[MFe],d=this[Kor],f=this[Gor],h=this[Hor][r]+n;h=h+c;let p;l.log&&(e=l.log(e));let m=a[LFe],_="";for(let y in e)if(p=e[y],Object.prototype.hasOwnProperty.call(e,y)&&p!==void 0){u[y]?p=u[y](p):y===f&&u.err&&(p=u.err(p));let A=a[y]||m;switch(typeof p){case"undefined":case"function":continue;case"number":Number.isFinite(p)===!1&&(p=null);case"boolean":A&&(p=A(p));break;case"string":p=(A||Eee)(p);break;default:p=(A||s)(p,i)}if(p===void 0)continue;let E=Eee(y);_+=","+E+":"+p}let g="";if(t!==void 0){p=u[d]?u[d](t):t;let y=a[d]||m;switch(typeof p){case"function":break;case"number":Number.isFinite(p)===!1&&(p=null);case"boolean":y&&(p=y(p)),g=',"'+d+'":'+p;break;case"string":p=(y||Eee)(p),g=',"'+d+'":'+p;break;default:p=(y||s)(p,i),g=',"'+d+'":'+p}}return this[jor]&&_?h+this[zor]+_.slice(1)+"}"+g+o:h+_+g+o}function Jor(e,t){let r,n=e[NFe],s=e[PFe],i=e[vee],a=e[DFe],o=a[LFe],c=e[OFe],u=e[MFe].bindings;t=u(t);for(let l in t)if(r=t[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&t.hasOwnProperty(l)&&r!==void 0)===!0){if(r=c[l]?c[l](r):r,r=(a[l]||o||s)(r,i),r===void 0)continue;n+=',"'+l+'":'+r}return n}function Zor(e){return e.write!==e.constructor.prototype.write}var ecr=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function NF(e){let t=new yee(e);return t.on("error",r),!ecr&&!e.sync&&Yor&&(CFe.register(t,tcr),t.on("close",function(){CFe.unregister(t)})),t;function r(n){if(n.code==="EPIPE"){t.write=w1,t.end=w1,t.flushSync=w1,t.destroy=w1;return}t.removeListener("error",r),t.emit("error",n)}}function tcr(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",function(){e.end()})):e.flushSync())}function rcr(e){return function(r,n,s={},i){if(typeof s=="string")i=NF({dest:s}),s={};else if(typeof i=="string"){if(s&&s.transport)throw Error("only one of option.transport or stream can be specified");i=NF({dest:i})}else if(s instanceof yee||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof yee||s.transport.writable||s.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(s.transport.targets&&s.transport.targets.length&&s.formatters&&typeof s.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let c;s.customLevels&&(c=s.useOnlyCustomLevels?s.customLevels:Object.assign({},s.levels,s.customLevels)),i=Qor({caller:n,...s.transport,levels:c})}if(s=Object.assign({},e,s),s.serializers=Object.assign({},e.serializers,s.serializers),s.formatters=Object.assign({},e.formatters,s.formatters),s.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=s;return a===!1&&(s.level="silent"),o||(s.onChild=w1),i||(Zor(process.stdout)?i=process.stdout:i=NF({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function ncr(e,t){try{return JSON.stringify(e)}catch{try{return(t||this[vee])(e)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function scr(e,t,r){return{level:e,bindings:t,log:r}}function icr(e){let t=Number(e);return typeof e=="string"&&Number.isFinite(t)?t:e===void 0?1:e}kFe.exports={noop:w1,buildSafeSonicBoom:NF,asChindings:Jor,asJson:Xor,genLog:Wor,createArgsNormalizer:rcr,stringify:ncr,buildFormatters:scr,normalizeDestFileDescriptor:icr}});var DF=S((e9n,BFe)=>{var acr={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},ocr={ASC:"ASC",DESC:"DESC"};BFe.exports={DEFAULT_LEVELS:acr,SORTING_ORDER:ocr}});var bee=S((t9n,qFe)=>{"use strict";var{lsCacheSym:ccr,levelValSym:See,useOnlyCustomLevelsSym:ucr,streamSym:lcr,formattersSym:dcr,hooksSym:fcr,levelCompSym:UFe}=C1(),{noop:hcr,genLog:tv}=OF(),{DEFAULT_LEVELS:eh,SORTING_ORDER:FFe}=DF(),$Fe={fatal:e=>{let t=tv(eh.fatal,e);return function(...r){let n=this[lcr];if(t.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:e=>tv(eh.error,e),warn:e=>tv(eh.warn,e),info:e=>tv(eh.info,e),debug:e=>tv(eh.debug,e),trace:e=>tv(eh.trace,e)},Tee=Object.keys(eh).reduce((e,t)=>(e[eh[t]]=t,e),{}),pcr=Object.keys(Tee).reduce((e,t)=>(e[t]='{"level":'+Number(t),e),{});function mcr(e){let t=e[dcr].level,{labels:r}=e.levels,n={};for(let s in r){let i=t(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return e[ccr]=n,e}function gcr(e,t){if(t)return!1;switch(e){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function _cr(e){let{labels:t,values:r}=this.levels;if(typeof e=="number"){if(t[e]===void 0)throw Error("unknown level value"+e);e=t[e]}if(r[e]===void 0)throw Error("unknown level "+e);let n=this[See],s=this[See]=r[e],i=this[ucr],a=this[UFe],o=this[fcr].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=hcr;continue}this[c]=gcr(c,i)?$Fe[c](o):tv(r[c],o)}this.emit("level-change",e,s,t[n],n,this)}function Acr(e){let{levels:t,levelVal:r}=this;return t&&t.labels?t.labels[r]:""}function Ecr(e){let{values:t}=this.levels,r=t[e];return r!==void 0&&this[UFe](r,this[See])}function ycr(e,t,r){return e===FFe.DESC?t<=r:t>=r}function vcr(e){return typeof e=="string"?ycr.bind(null,e):e}function Scr(e=null,t=!1){let r=e?Object.keys(e).reduce((i,a)=>(i[e[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),t?null:Tee,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),t?null:eh,e);return{labels:n,values:s}}function Tcr(e,t,r){if(typeof e=="number"){if(![].concat(Object.keys(t||{}).map(i=>t[i]),r?[]:Object.keys(Tee).map(i=>+i),1/0).includes(e))throw Error(`default level:${e} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:eh,t);if(!(e in n))throw Error(`default level:${e} must be included in custom levels`)}function bcr(e,t){let{labels:r,values:n}=e;for(let s in t){if(s in n)throw Error("levels cannot be overridden");if(t[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function Icr(e){if(typeof e!="function"&&!(typeof e=="string"&&Object.values(FFe).includes(e)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}qFe.exports={initialLsCache:pcr,genLsCache:mcr,levelMethods:$Fe,getLevel:Acr,setLevel:_cr,isLevelEnabled:Ecr,mappings:Scr,assertNoLevelCollisions:bcr,assertDefaultLevelFound:Tcr,genLevelComparison:vcr,assertLevelComparison:Icr}});var Iee=S((r9n,HFe)=>{"use strict";HFe.exports={version:"8.21.0"}});var ZFe=S((s9n,JFe)=>{"use strict";var{EventEmitter:Rcr}=require("events"),{lsCacheSym:Ccr,levelValSym:xcr,setLevelSym:Cee,getLevelSym:VFe,chindingsSym:xee,parsedChindingsSym:wcr,mixinSym:Ncr,asJsonSym:YFe,writeSym:Ocr,mixinMergeStrategySym:Dcr,timeSym:Pcr,timeSliceIndexSym:Lcr,streamSym:QFe,serializersSym:rv,formattersSym:Ree,errorKeySym:Mcr,messageKeySym:kcr,useOnlyCustomLevelsSym:Bcr,needsMetadataGsym:Ucr,redactFmtSym:Fcr,stringifySym:$cr,formatOptsSym:qcr,stringifiersSym:Hcr,msgPrefixSym:jFe}=C1(),{getLevel:Vcr,setLevel:jcr,isLevelEnabled:Kcr,mappings:Gcr,initialLsCache:zcr,genLsCache:Ycr,assertNoLevelCollisions:Qcr}=bee(),{asChindings:WFe,asJson:Wcr,buildFormatters:KFe,stringify:GFe}=OF(),{version:Xcr}=Iee(),Jcr=iee(),Zcr=class{},XFe={constructor:Zcr,child:eur,bindings:tur,setBindings:rur,flush:aur,isLevelEnabled:Kcr,version:Xcr,get level(){return this[VFe]()},set level(e){this[Cee](e)},get levelVal(){return this[xcr]},set levelVal(e){throw Error("levelVal is read-only")},[Ccr]:zcr,[Ocr]:sur,[YFe]:Wcr,[VFe]:Vcr,[Cee]:jcr};Object.setPrototypeOf(XFe,Rcr.prototype);JFe.exports=function(){return Object.create(XFe)};var zFe=e=>e;function eur(e,t){if(!e)throw Error("missing bindings for child Pino");t=t||{};let r=this[rv],n=this[Ree],s=Object.create(this);if(t.hasOwnProperty("serializers")===!0){s[rv]=Object.create(null);for(let l in r)s[rv][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i{"use strict";var{hasOwnProperty:cO}=Object.prototype,sv=Oee();sv.configure=Oee;sv.stringify=sv;sv.default=sv;Dee.stringify=sv;Dee.configure=Oee;r6e.exports=sv;var our=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function Q_(e){return e.length<5e3&&!our.test(e)?`"${e}"`:JSON.stringify(e)}function wee(e,t){if(e.length>200||t)return e.sort(t);for(let r=1;rn;)e[s]=e[s-1],s--;e[s]=n}return e}var cur=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function Nee(e){return cur.call(e)!==void 0&&e.length!==0}function e6e(e,t,r){e.length= 1`)}return r===void 0?1/0:r}function nv(e){return e===1?"1 item":`${e} items`}function fur(e){let t=new Set;for(let r of e)(typeof r=="string"||typeof r=="number")&&t.add(String(r));return t}function hur(e){if(cO.call(e,"strict")){let t=e.strict;if(typeof t!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(t)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function Oee(e){e={...e};let t=hur(e);t&&(e.bigint===void 0&&(e.bigint=!1),"circularValue"in e||(e.circularValue=Error));let r=uur(e),n=dur(e,"bigint"),s=lur(e),i=typeof s=="function"?s:void 0,a=t6e(e,"maximumDepth"),o=t6e(e,"maximumBreadth");function c(h,p,m,_,g,y){let A=p[h];switch(typeof A=="object"&&A!==null&&typeof A.toJSON=="function"&&(A=A.toJSON(h)),A=_.call(p,h,A),typeof A){case"string":return Q_(A);case"object":{if(A===null)return"null";if(m.indexOf(A)!==-1)return r;let E="",v=",",b=y;if(Array.isArray(A)){if(A.length===0)return"[]";if(ao){let G=A.length-o-1;E+=`${v}"... ${nv(G)} not stringified"`}return g!==""&&(E+=` -${b}`),m.pop(),`[${E}]`}let I=Object.keys(A),T=I.length;if(T===0)return"{}";if(ao){let M=T-o;E+=`${w}"...":${x}"${nv(M)} not stringified"`,w=v}return g!==""&&w.length>1&&(E=` -${y}${E} -${b}`),m.pop(),`{${E}}`}case"number":return isFinite(A)?String(A):t?t(A):"null";case"boolean":return A===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(A);default:return t?t(A):void 0}}function u(h,p,m,_,g,y){switch(typeof p=="object"&&p!==null&&typeof p.toJSON=="function"&&(p=p.toJSON(h)),typeof p){case"string":return Q_(p);case"object":{if(p===null)return"null";if(m.indexOf(p)!==-1)return r;let A=y,E="",v=",";if(Array.isArray(p)){if(p.length===0)return"[]";if(ao){let D=p.length-o-1;E+=`${v}"... ${nv(D)} not stringified"`}return g!==""&&(E+=` -${A}`),m.pop(),`[${E}]`}m.push(p);let b="";g!==""&&(y+=g,v=`, -${y}`,b=" ");let I="";for(let T of _){let x=u(T,p[T],m,_,g,y);x!==void 0&&(E+=`${I}${Q_(T)}:${b}${x}`,I=v)}return g!==""&&I.length>1&&(E=` -${y}${E} -${A}`),m.pop(),`{${E}}`}case"number":return isFinite(p)?String(p):t?t(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return t?t(p):void 0}}function l(h,p,m,_,g){switch(typeof p){case"string":return Q_(p);case"object":{if(p===null)return"null";if(typeof p.toJSON=="function"){if(p=p.toJSON(h),typeof p!="object")return l(h,p,m,_,g);if(p===null)return"null"}if(m.indexOf(p)!==-1)return r;let y=g;if(Array.isArray(p)){if(p.length===0)return"[]";if(ao){let U=p.length-o-1;x+=`${w}"... ${nv(U)} not stringified"`}return x+=` -${y}`,m.pop(),`[${x}]`}let A=Object.keys(p),E=A.length;if(E===0)return"{}";if(ao){let x=E-o;b+=`${I}"...": "${nv(x)} not stringified"`,I=v}return I!==""&&(b=` -${g}${b} -${y}`),m.pop(),`{${b}}`}case"number":return isFinite(p)?String(p):t?t(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return t?t(p):void 0}}function d(h,p,m){switch(typeof p){case"string":return Q_(p);case"object":{if(p===null)return"null";if(typeof p.toJSON=="function"){if(p=p.toJSON(h),typeof p!="object")return d(h,p,m);if(p===null)return"null"}if(m.indexOf(p)!==-1)return r;let _="",g=p.length!==void 0;if(g&&Array.isArray(p)){if(p.length===0)return"[]";if(ao){let x=p.length-o-1;_+=`,"... ${nv(x)} not stringified"`}return m.pop(),`[${_}]`}let y=Object.keys(p),A=y.length;if(A===0)return"{}";if(ao){let b=A-o;_+=`${E}"...":"${nv(b)} not stringified"`}return m.pop(),`{${_}}`}case"number":return isFinite(p)?String(p):t?t(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return t?t(p):void 0}}function f(h,p,m){if(arguments.length>1){let _="";if(typeof m=="number"?_=" ".repeat(Math.min(m,10)):typeof m=="string"&&(_=m.slice(0,10)),p!=null){if(typeof p=="function")return c("",{"":h},[],p,_,"");if(Array.isArray(p))return u("",h,[],fur(p),_,"")}if(_.length!==0)return l("",h,[],_,"")}return d("",h,[])}return f}});var a6e=S((i9n,i6e)=>{"use strict";var Pee=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:s6e}=DF(),pur=s6e.info;function mur(e,t){let r=0;e=e||[],t=t||{dedupe:!1};let n=Object.create(s6e);n.silent=1/0,t.levels&&typeof t.levels=="object"&&Object.keys(t.levels).forEach(d=>{n[d]=t.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[Pee]:!0,streamLevels:n};return Array.isArray(e)?e.forEach(c,s):c.call(s,e),e=null,s;function i(d){let f,h=this.lastLevel,{streams:p}=this,m=0,_;for(let g=_ur(p.length,t.dedupe);Eur(g,p.length,t.dedupe);g=Aur(g,t.dedupe))if(f=p[g],f.level<=h){if(m!==0&&m!==f.level)break;if(_=f.stream,_[Pee]){let{lastTime:y,lastMsg:A,lastObj:E,lastLogger:v}=this;_.lastLevel=h,_.lastTime=y,_.lastMsg=A,_.lastObj=E,_.lastLogger=v}_.write(d),t.dedupe&&(m=f.level)}else if(!t.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,h=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:p,streamLevels:m}=this,_;typeof d.levelVal=="number"?_=d.levelVal:typeof d.level=="string"?_=m[d.level]:typeof d.level=="number"?_=d.level:_=pur;let g={stream:h,level:_,levelVal:void 0,id:r++};return p.unshift(g),p.sort(gur),this.minLevel=p[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let h=0;h=0:e{"use strict";var yur=require("os"),p6e=XZ(),vur=JZ(),Sur=iee(),m6e=ZUe(),Tur=ZFe(),g6e=C1(),{configure:bur}=n6e(),{assertDefaultLevelFound:Iur,mappings:_6e,genLsCache:Rur,genLevelComparison:Cur,assertLevelComparison:xur}=bee(),{DEFAULT_LEVELS:wur,SORTING_ORDER:Nur}=DF(),{createArgsNormalizer:Our,asChindings:Dur,buildSafeSonicBoom:o6e,buildFormatters:Pur,stringify:Lee,normalizeDestFileDescriptor:c6e,noop:Lur}=OF(),{version:Mur}=Iee(),{chindingsSym:u6e,redactFmtSym:kur,serializersSym:l6e,timeSym:Bur,timeSliceIndexSym:Uur,streamSym:Fur,stringifySym:d6e,stringifySafeSym:Mee,stringifiersSym:f6e,setLevelSym:$ur,endSym:qur,formatOptsSym:Hur,messageKeySym:Vur,errorKeySym:jur,nestedKeySym:Kur,mixinSym:Gur,levelCompSym:zur,useOnlyCustomLevelsSym:Yur,formattersSym:h6e,hooksSym:Qur,nestedKeyStrSym:Wur,mixinMergeStrategySym:Xur,msgPrefixSym:Jur}=g6e,{epochTime:A6e,nullTime:Zur}=m6e,{pid:elr}=process,tlr=yur.hostname(),rlr=p6e.err,nlr={level:"info",levelComparison:Nur.ASC,levels:wur,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:elr,hostname:tlr},serializers:Object.assign(Object.create(null),{err:rlr}),formatters:Object.assign(Object.create(null),{bindings(e){return e},level(e,t){return{level:t}}}),hooks:{logMethod:void 0},timestamp:A6e,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},slr=Our(nlr),ilr=Object.assign(Object.create(null),p6e);function kee(...e){let t={},{opts:r,stream:n}=slr(t,vur(),...e),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:h,customLevels:p,levelComparison:m,mixin:_,mixinMergeStrategy:g,useOnlyCustomLevels:y,formatters:A,hooks:E,depthLimit:v,edgeLimit:b,onChild:I,msgPrefix:T}=r,x=bur({maximumDepth:v,maximumBreadth:b}),w=Pur(A.level,A.bindings,A.log),D=Lee.bind({[Mee]:x}),M=s?Sur(s,D):{},L=s?{stringify:M[kur]}:{stringify:D},U="}"+(i?`\r -`:` -`),G=Dur.bind(null,{[u6e]:"",[l6e]:a,[f6e]:M,[d6e]:Lee,[Mee]:x,[h6e]:w}),$="";d!==null&&(f===void 0?$=G(d):$=G(Object.assign({},d,{name:f})));let K=o instanceof Function?o:o?A6e:Zur,ee=K().indexOf(":")+1;if(y&&!p)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(_&&typeof _!="function")throw Error(`Unknown mixin type "${typeof _}" - expected "function"`);if(T&&typeof T!="string")throw Error(`Unknown msgPrefix type "${typeof T}" - expected "string"`);Iur(h,p,y);let z=_6e(p,y);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:z,messageKey:c,errorKey:u}}),xur(m);let oe=Cur(m);return Object.assign(t,{levels:z,[zur]:oe,[Yur]:y,[Fur]:n,[Bur]:K,[Uur]:ee,[d6e]:Lee,[Mee]:x,[f6e]:M,[qur]:U,[Hur]:L,[Vur]:c,[jur]:u,[Kur]:l,[Wur]:l?`,${JSON.stringify(l)}:{`:"",[l6e]:a,[Gur]:_,[Xur]:g,[u6e]:$,[h6e]:w,[Qur]:E,silent:Lur,onChild:I,[Jur]:T}),Object.setPrototypeOf(t,Tur()),Rur(t),t[$ur](h),t}cd.exports=kee;cd.exports.destination=(e=process.stdout.fd)=>typeof e=="object"?(e.dest=c6e(e.dest||process.stdout.fd),o6e(e)):o6e({dest:c6e(e),minLength:0});cd.exports.transport=Aee();cd.exports.multistream=a6e();cd.exports.levels=_6e();cd.exports.stdSerializers=ilr;cd.exports.stdTimeFunctions=Object.assign({},m6e);cd.exports.symbols=g6e;cd.exports.version=Mur;cd.exports.default=kee;cd.exports.pino=kee});var uO=S((o9n,b6e)=>{"use strict";var alr=uUe(),PF=E6e(),{serializersSym:y6e}=PF.symbols,{FST_ERR_LOG_INVALID_DESTINATION:olr,FST_ERR_LOG_INVALID_LOGGER:clr}=ko();function v6e(e){if(e.stream&&e.file)throw new olr;e.file&&(e.stream=PF.destination(e.file),delete e.file);let t=e.logger,r=e.genReqId,n=null;return t?(e.logger=void 0,e.genReqId=void 0,t[y6e]&&(e.serializers=Object.assign({},e.serializers,t[y6e])),n=t.child({},e),e.logger=t,e.genReqId=r):n=PF(e,e.stream),n}var Bee={req:function(t){return{method:t.method,url:t.url,version:t.headers&&t.headers["accept-version"],hostname:t.hostname,remoteAddress:t.ip,remotePort:t.socket?t.socket.remotePort:void 0}},err:PF.stdSerializers.err,res:function(t){return{statusCode:t.statusCode}}};function ulr(){let e=process.hrtime();return e[0]*1e3+e[1]/1e6}function llr(e){if(!e.logger){let n=alr;return n.child=()=>n,{logger:n,hasLogger:!1}}if(S6e(e.logger))return{logger:v6e({logger:e.logger,serializers:Object.assign({},Bee,e.logger.serializers)}),hasLogger:!0};let t={};return Object.prototype.toString.call(e.logger)==="[object Object]"&&Reflect.ownKeys(e.logger).forEach(n=>{Object.defineProperty(t,n,{value:e.logger[n],writable:!0,enumerable:!0,configurable:!0})}),t.level=t.level||"info",t.serializers=Object.assign({},Bee,t.serializers),e.logger=t,{logger:v6e(e.logger),hasLogger:!0}}function S6e(e,t){let r=["info","error","debug","fatal","warn","trace","child"],n=e?r.filter(s=>!e[s]||typeof e[s]!="function"):r;if(n.length){if(n.length===r.length&&!t)return!1;throw clr(n.join(","))}else return!0}function dlr(e,t,r,n,s){let i={[e.requestIdLogLabel]:n},a=e.childLoggerFactory.call(e.server,t,i,s||{},r);return e.childLoggerFactory!==T6e&&S6e(a,!0),a}function T6e(e,t,r){return e.child(t,r)}b6e.exports={createLogger:llr,createChildLogger:dlr,defaultChildLoggerFactory:T6e,serializers:Bee,now:ulr}});var LF=S((c9n,I6e)=>{"use strict";I6e.exports=flr;function N1(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function flr(e){if(e=e||{},e.circles)return hlr(e);let t=new Map;if(t.set(Date,a=>new Date(a)),t.set(Map,(a,o)=>new Map(n(Array.from(a),o))),t.set(Set,(a,o)=>new Set(n(Array.from(a),o))),e.constructorHandlers)for(let a of e.constructorHandlers)t.set(a[0],a[1]);let r=null;return e.proto?i:s;function n(a,o){let c=Object.keys(a),u=new Array(c.length);for(let l=0;lnew Date(c)),n.set(Map,(c,u)=>new Map(i(Array.from(c),u))),n.set(Set,(c,u)=>new Set(i(Array.from(c),u))),e.constructorHandlers)for(let c of e.constructorHandlers)n.set(c[0],c[1]);let s=null;return e.proto?o:a;function i(c,u){let l=Object.keys(c),d=new Array(l.length);for(let f=0;f{"use strict";var plr=LF()({circles:!1,proto:!0}),{kSchemaVisited:R6e,kSchemaResponse:mlr}=Pa(),Fee=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:glr,FST_ERR_SCH_ALREADY_PRESENT:_lr,FST_ERR_SCH_DUPLICATE:Alr,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:Elr}=ko(),x6e=["params","body","querystring","query","headers"];function MF(e){this.store=e||{}}MF.prototype.add=function(e){let t=plr(e.isFluentSchema||e.isFluentJSONSchema||e[Fee]?e.valueOf():e),r=t.$id;if(!r)throw new glr;if(this.store[r])throw new _lr(r);this.store[r]=t};MF.prototype.getSchemas=function(){return Object.assign({},this.store)};MF.prototype.getSchema=function(e){return this.store[e]};function C6e(e){return typeof e=="object"&&Object.getPrototypeOf(e)!==Object.prototype}function ylr(e,t){if(e[R6e])return e;if(e.query){if(e.querystring)throw new Alr("querystring");e.querystring=e.query}vlr(e);for(let r of x6e){let n=e[r];n&&!C6e(n)&&(e[r]=Uee(n,t.jsonShorthand))}if(e.response){let r=Object.keys(e.response);for(let n of r){if(C6e(e.response[n]))continue;let s=e.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o{"use strict";var Tlr=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;O6e.exports=class N6e{constructor(t){switch(t&&t.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=t}asInteger(t){if(Number.isInteger(t))return""+t;if(typeof t=="bigint")return t.toString();let r=this.parseInteger(t);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${t}" cannot be converted to an integer.`);return""+r}asNumber(t){let r=Number(t);if(r!==r)throw new Error(`The value "${t}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(t){return t&&"true"||"false"}asDateTime(t){if(t===null)return'""';if(t instanceof Date)return'"'+t.toISOString()+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a date-time.`)}asDate(t){if(t===null)return'""';if(t instanceof Date)return'"'+new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a date.`)}asTime(t){if(t===null)return'""';if(t instanceof Date)return'"'+new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a time.`)}asString(t){let r=t.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(t);return i===-1&&'"'+t+'"'||'"'+s+t.slice(i)+'"'}else return r<5e3&&Tlr.test(t)===!1?'"'+t+'"':JSON.stringify(t)}asUnsafeString(t){return'"'+t+'"'}getState(){return this._options}static restoreFromState(t){return new N6e(t)}}});var hO=S(Rn=>{"use strict";Object.defineProperty(Rn,"__esModule",{value:!0});Rn.regexpCode=Rn.getEsmExportName=Rn.getProperty=Rn.safeStringify=Rn.stringify=Rn.strConcat=Rn.addCodeArg=Rn.str=Rn._=Rn.nil=Rn._Code=Rn.Name=Rn.IDENTIFIER=Rn._CodeOrName=void 0;var dO=class{};Rn._CodeOrName=dO;Rn.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var iv=class extends dO{constructor(t){if(super(),!Rn.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Rn.Name=iv;var ud=class extends dO{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof iv&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Rn._Code=ud;Rn.nil=new ud("");function D6e(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.ValueScope=vu.ValueScopeName=vu.Scope=vu.varKinds=vu.UsedValueState=void 0;var yu=hO(),Vee=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},kF;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(kF||(vu.UsedValueState=kF={}));vu.varKinds={const:new yu.Name("const"),let:new yu.Name("let"),var:new yu.Name("var")};var BF=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof yu.Name?t:this.name(t)}name(t){return new yu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};vu.Scope=BF;var UF=class extends yu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,yu._)`.${new yu.Name(r)}[${n}]`}};vu.ValueScopeName=UF;var Dlr=(0,yu._)`\n`,jee=class extends BF{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Dlr:yu.nil}}get(){return this._scope}name(t){return new UF(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,yu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let i=yu.nil;for(let a in t){let o=t[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,kF.Started);let l=r(u);if(l){let d=this.opts.es5?vu.varKinds.var:vu.varKinds.const;i=(0,yu._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,yu._)`${i}${l}${this.opts._n}`;else throw new Vee(u);c.set(u,kF.Completed)})}return i}};vu.ValueScope=jee});var Tr=S(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.or=wr.and=wr.not=wr.CodeGen=wr.operators=wr.varKinds=wr.ValueScopeName=wr.ValueScope=wr.Scope=wr.Name=wr.regexpCode=wr.stringify=wr.getProperty=wr.nil=wr.strConcat=wr.str=wr._=void 0;var an=hO(),Cf=Kee(),W_=hO();Object.defineProperty(wr,"_",{enumerable:!0,get:function(){return W_._}});Object.defineProperty(wr,"str",{enumerable:!0,get:function(){return W_.str}});Object.defineProperty(wr,"strConcat",{enumerable:!0,get:function(){return W_.strConcat}});Object.defineProperty(wr,"nil",{enumerable:!0,get:function(){return W_.nil}});Object.defineProperty(wr,"getProperty",{enumerable:!0,get:function(){return W_.getProperty}});Object.defineProperty(wr,"stringify",{enumerable:!0,get:function(){return W_.stringify}});Object.defineProperty(wr,"regexpCode",{enumerable:!0,get:function(){return W_.regexpCode}});Object.defineProperty(wr,"Name",{enumerable:!0,get:function(){return W_.Name}});var HF=Kee();Object.defineProperty(wr,"Scope",{enumerable:!0,get:function(){return HF.Scope}});Object.defineProperty(wr,"ValueScope",{enumerable:!0,get:function(){return HF.ValueScope}});Object.defineProperty(wr,"ValueScopeName",{enumerable:!0,get:function(){return HF.ValueScopeName}});Object.defineProperty(wr,"varKinds",{enumerable:!0,get:function(){return HF.varKinds}});wr.operators={GT:new an._Code(">"),GTE:new an._Code(">="),LT:new an._Code("<"),LTE:new an._Code("<="),EQ:new an._Code("==="),NEQ:new an._Code("!=="),NOT:new an._Code("!"),OR:new an._Code("||"),AND:new an._Code("&&"),ADD:new an._Code("+")};var Zp=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Gee=class extends Zp{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Cf.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=D1(this.rhs,t,r)),this}get names(){return this.rhs instanceof an._CodeOrName?this.rhs.names:{}}},FF=class extends Zp{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof an.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=D1(this.rhs,t,r),this}get names(){let t=this.lhs instanceof an.Name?{}:{...this.lhs.names};return qF(t,this.rhs)}},zee=class extends FF{constructor(t,r,n,s){super(t,n,s),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Yee=class extends Zp{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},Qee=class extends Zp{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},Wee=class extends Zp{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Xee=class extends Zp{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=D1(this.code,t,r),this}get names(){return this.code instanceof an._CodeOrName?this.code.names:{}}},pO=class extends Zp{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(t,r)||(Plr(t,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>cv(t,r.names),{})}},em=class extends pO{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Jee=class extends pO{},O1=class extends em{};O1.kind="else";var av=class e extends em{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new O1(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(L6e(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=D1(this.condition,t,r),this}get names(){let t=super.names;return qF(t,this.condition),this.else&&cv(t,this.else.names),t}};av.kind="if";var ov=class extends em{};ov.kind="for";var Zee=class extends ov{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=D1(this.iteration,t,r),this}get names(){return cv(super.names,this.iteration.names)}},ete=class extends ov{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s}render(t){let r=t.es5?Cf.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=qF(super.names,this.from);return qF(t,this.to)}},$F=class extends ov{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=D1(this.iterable,t,r),this}get names(){return cv(super.names,this.iterable.names)}},mO=class extends em{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};mO.kind="func";var gO=class extends pO{render(t){return"return "+super.render(t)}};gO.kind="return";var tte=class extends em{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&cv(t,this.catch.names),this.finally&&cv(t,this.finally.names),t}},_O=class extends em{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};_O.kind="catch";var AO=class extends em{render(t){return"finally"+super.render(t)}};AO.kind="finally";var rte=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new Cf.Scope({parent:t}),this._nodes=[new Jee]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Gee(t,i,n)),i}const(t,r,n){return this._def(Cf.varKinds.const,t,r,n)}let(t,r,n){return this._def(Cf.varKinds.let,t,r,n)}var(t,r,n){return this._def(Cf.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new FF(t,r,n))}add(t,r){return this._leafNode(new zee(t,wr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==an.nil&&this._leafNode(new Xee(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,an.addCodeArg)(r,s));return r.push("}"),new an._Code(r)}if(t,r,n){if(this._blockNode(new av(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new av(t))}else(){return this._elseNode(new O1)}endIf(){return this._endBlockNode(av,O1)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Zee(t),r)}forRange(t,r,n,s,i=this.opts.es5?Cf.varKinds.var:Cf.varKinds.let){let a=this._scope.toName(t);return this._for(new ete(i,a,r,n),()=>s(a))}forOf(t,r,n,s=Cf.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof an.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,an._)`${a}.length`,o=>{this.var(i,(0,an._)`${a}[${o}]`),n(i)})}return this._for(new $F("of",s,i,r),()=>n(i))}forIn(t,r,n,s=this.opts.es5?Cf.varKinds.var:Cf.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,an._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new $F("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(ov)}label(t){return this._leafNode(new Yee(t))}break(t){return this._leafNode(new Qee(t))}return(t){let r=new gO;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(gO)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new tte;if(this._blockNode(s),this.code(t),r){let i=this.name("e");this._currNode=s.catch=new _O(i),r(i)}return n&&(this._currNode=s.finally=new AO,this.code(n)),this._endBlockNode(_O,AO)}throw(t){return this._leafNode(new Wee(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=an.nil,n,s){return this._blockNode(new mO(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(mO)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof av))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};wr.CodeGen=rte;function cv(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function qF(e,t){return t instanceof an._CodeOrName?cv(e,t.names):e}function D1(e,t,r){if(e instanceof an.Name)return n(e);if(!s(e))return e;return new an._Code(e._items.reduce((i,a)=>(a instanceof an.Name&&(a=n(a)),a instanceof an._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function s(i){return i instanceof an._Code&&i._items.some(a=>a instanceof an.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Plr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function L6e(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,an._)`!${nte(e)}`}wr.not=L6e;var Llr=M6e(wr.operators.AND);function Mlr(...e){return e.reduce(Llr)}wr.and=Mlr;var klr=M6e(wr.operators.OR);function Blr(...e){return e.reduce(klr)}wr.or=Blr;function M6e(e){return(t,r)=>t===an.nil?r:r===an.nil?t:(0,an._)`${nte(t)} ${e} ${nte(r)}`}function nte(e){return e instanceof an.Name?e:(0,an._)`(${e})`}});var gn=S(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.checkStrictMode=kr.getErrorPath=kr.Type=kr.useFunc=kr.setEvaluated=kr.evaluatedPropsToName=kr.mergeEvaluated=kr.eachItem=kr.unescapeJsonPointer=kr.escapeJsonPointer=kr.escapeFragment=kr.unescapeFragment=kr.schemaRefOrVal=kr.schemaHasRulesButRef=kr.schemaHasRules=kr.checkUnknownRules=kr.alwaysValidSchema=kr.toHash=void 0;var Ts=Tr(),Ulr=hO();function Flr(e){let t={};for(let r of e)t[r]=!0;return t}kr.toHash=Flr;function $lr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(U6e(e,t),!F6e(t,e.self.RULES.all))}kr.alwaysValidSchema=$lr;function U6e(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let i in t)s[i]||H6e(e,`unknown keyword: "${i}"`)}kr.checkUnknownRules=U6e;function F6e(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}kr.schemaHasRules=F6e;function qlr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}kr.schemaHasRulesButRef=qlr;function Hlr({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Ts._)`${r}`}return(0,Ts._)`${e}${t}${(0,Ts.getProperty)(n)}`}kr.schemaRefOrVal=Hlr;function Vlr(e){return $6e(decodeURIComponent(e))}kr.unescapeFragment=Vlr;function jlr(e){return encodeURIComponent(ite(e))}kr.escapeFragment=jlr;function ite(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}kr.escapeJsonPointer=ite;function $6e(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}kr.unescapeJsonPointer=$6e;function Klr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}kr.eachItem=Klr;function k6e({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof Ts.Name?(i instanceof Ts.Name?e(s,i,a):t(s,i,a),a):i instanceof Ts.Name?(t(s,a,i),i):r(i,a);return o===Ts.Name&&!(c instanceof Ts.Name)?n(s,c):c}}kr.mergeEvaluated={props:k6e({mergeNames:(e,t,r)=>e.if((0,Ts._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Ts._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Ts._)`${r} || {}`).code((0,Ts._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Ts._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Ts._)`${r} || {}`),ate(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:q6e}),items:k6e({mergeNames:(e,t,r)=>e.if((0,Ts._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Ts._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Ts._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Ts._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function q6e(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Ts._)`{}`);return t!==void 0&&ate(e,r,t),r}kr.evaluatedPropsToName=q6e;function ate(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Ts._)`${t}${(0,Ts.getProperty)(n)}`,!0))}kr.setEvaluated=ate;var B6e={};function Glr(e,t){return e.scopeValue("func",{ref:t,code:B6e[t.code]||(B6e[t.code]=new Ulr._Code(t.code))})}kr.useFunc=Glr;var ste;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(ste||(kr.Type=ste={}));function zlr(e,t,r){if(e instanceof Ts.Name){let n=t===ste.Num;return r?n?(0,Ts._)`"[" + ${e} + "]"`:(0,Ts._)`"['" + ${e} + "']"`:n?(0,Ts._)`"/" + ${e}`:(0,Ts._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Ts.getProperty)(e).toString():"/"+ite(e)}kr.getErrorPath=zlr;function H6e(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}kr.checkStrictMode=H6e});var tm=S(ote=>{"use strict";Object.defineProperty(ote,"__esModule",{value:!0});var Uo=Tr(),Ylr={data:new Uo.Name("data"),valCxt:new Uo.Name("valCxt"),instancePath:new Uo.Name("instancePath"),parentData:new Uo.Name("parentData"),parentDataProperty:new Uo.Name("parentDataProperty"),rootData:new Uo.Name("rootData"),dynamicAnchors:new Uo.Name("dynamicAnchors"),vErrors:new Uo.Name("vErrors"),errors:new Uo.Name("errors"),this:new Uo.Name("this"),self:new Uo.Name("self"),scope:new Uo.Name("scope"),json:new Uo.Name("json"),jsonPos:new Uo.Name("jsonPos"),jsonLen:new Uo.Name("jsonLen"),jsonPart:new Uo.Name("jsonPart")};ote.default=Ylr});var EO=S(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.extendErrors=Fo.resetErrorsCount=Fo.reportExtraError=Fo.reportError=Fo.keyword$DataError=Fo.keywordError=void 0;var _n=Tr(),VF=gn(),Dc=tm();Fo.keywordError={message:({keyword:e})=>(0,_n.str)`must pass "${e}" keyword validation`};Fo.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,_n.str)`"${e}" keyword must be ${t} ($data)`:(0,_n.str)`"${e}" keyword is invalid ($data)`};function Qlr(e,t=Fo.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:a,allErrors:o}=s,c=K6e(e,t,r);n??(a||o)?V6e(i,c):j6e(s,(0,_n._)`[${c}]`)}Fo.reportError=Qlr;function Wlr(e,t=Fo.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:a}=n,o=K6e(e,t,r);V6e(s,o),i||a||j6e(n,Dc.default.vErrors)}Fo.reportExtraError=Wlr;function Xlr(e,t){e.assign(Dc.default.errors,t),e.if((0,_n._)`${Dc.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,_n._)`${Dc.default.vErrors}.length`,t),()=>e.assign(Dc.default.vErrors,null)))}Fo.resetErrorsCount=Xlr;function Jlr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,Dc.default.errors,o=>{e.const(a,(0,_n._)`${Dc.default.vErrors}[${o}]`),e.if((0,_n._)`${a}.instancePath === undefined`,()=>e.assign((0,_n._)`${a}.instancePath`,(0,_n.strConcat)(Dc.default.instancePath,i.errorPath))),e.assign((0,_n._)`${a}.schemaPath`,(0,_n.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,_n._)`${a}.schema`,r),e.assign((0,_n._)`${a}.data`,n))})}Fo.extendErrors=Jlr;function V6e(e,t){let r=e.const("err",t);e.if((0,_n._)`${Dc.default.vErrors} === null`,()=>e.assign(Dc.default.vErrors,(0,_n._)`[${r}]`),(0,_n._)`${Dc.default.vErrors}.push(${r})`),e.code((0,_n._)`${Dc.default.errors}++`)}function j6e(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0,_n._)`new ${e.ValidationError}(${t})`):(r.assign((0,_n._)`${n}.errors`,t),r.return(!1))}var uv={keyword:new _n.Name("keyword"),schemaPath:new _n.Name("schemaPath"),params:new _n.Name("params"),propertyName:new _n.Name("propertyName"),message:new _n.Name("message"),schema:new _n.Name("schema"),parentSchema:new _n.Name("parentSchema")};function K6e(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,_n._)`{}`:Zlr(e,t,r)}function Zlr(e,t,r={}){let{gen:n,it:s}=e,i=[edr(s,r),tdr(e,r)];return rdr(e,t,i),n.object(...i)}function edr({errorPath:e},{instancePath:t}){let r=t?(0,_n.str)`${e}${(0,VF.getErrorPath)(t,VF.Type.Str)}`:e;return[Dc.default.instancePath,(0,_n.strConcat)(Dc.default.instancePath,r)]}function tdr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0,_n.str)`${t}/${e}`;return r&&(s=(0,_n.str)`${s}${(0,VF.getErrorPath)(r,VF.Type.Str)}`),[uv.schemaPath,s]}function rdr(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([uv.keyword,s],[uv.params,typeof t=="function"?t(e):t||(0,_n._)`{}`]),c.messages&&n.push([uv.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([uv.schema,a],[uv.parentSchema,(0,_n._)`${l}${d}`],[Dc.default.data,i]),u&&n.push([uv.propertyName,u])}});var z6e=S(P1=>{"use strict";Object.defineProperty(P1,"__esModule",{value:!0});P1.boolOrEmptySchema=P1.topBoolOrEmptySchema=void 0;var ndr=EO(),sdr=Tr(),idr=tm(),adr={message:"boolean schema is false"};function odr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?G6e(e,!1):typeof r=="object"&&r.$async===!0?t.return(idr.default.data):(t.assign((0,sdr._)`${n}.errors`,null),t.return(!0))}P1.topBoolOrEmptySchema=odr;function cdr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),G6e(e)):r.var(t,!0)}P1.boolOrEmptySchema=cdr;function G6e(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,ndr.reportError)(s,adr,void 0,t)}});var cte=S(L1=>{"use strict";Object.defineProperty(L1,"__esModule",{value:!0});L1.getRules=L1.isJSONType=void 0;var udr=["string","number","integer","boolean","null","object","array"],ldr=new Set(udr);function ddr(e){return typeof e=="string"&&ldr.has(e)}L1.isJSONType=ddr;function fdr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}L1.getRules=fdr});var ute=S(X_=>{"use strict";Object.defineProperty(X_,"__esModule",{value:!0});X_.shouldUseRule=X_.shouldUseGroup=X_.schemaHasRulesForType=void 0;function hdr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&Y6e(e,n)}X_.schemaHasRulesForType=hdr;function Y6e(e,t){return t.rules.some(r=>Q6e(e,r))}X_.shouldUseGroup=Y6e;function Q6e(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}X_.shouldUseRule=Q6e});var yO=S($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.reportTypeError=$o.checkDataTypes=$o.checkDataType=$o.coerceAndCheckDataType=$o.getJSONTypes=$o.getSchemaTypes=$o.DataType=void 0;var pdr=cte(),mdr=ute(),gdr=EO(),gr=Tr(),W6e=gn(),M1;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(M1||($o.DataType=M1={}));function _dr(e){let t=X6e(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}$o.getSchemaTypes=_dr;function X6e(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(pdr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}$o.getJSONTypes=X6e;function Adr(e,t){let{gen:r,data:n,opts:s}=e,i=Edr(t,s.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,mdr.schemaHasRulesForType)(e,t[0]));if(a){let o=dte(t,n,s.strictNumbers,M1.Wrong);r.if(o,()=>{i.length?ydr(e,t,i):fte(e)})}return a}$o.coerceAndCheckDataType=Adr;var J6e=new Set(["string","number","integer","boolean","null"]);function Edr(e,t){return t?e.filter(r=>J6e.has(r)||t==="array"&&r==="array"):[]}function ydr(e,t,r){let{gen:n,data:s,opts:i}=e,a=n.let("dataType",(0,gr._)`typeof ${s}`),o=n.let("coerced",(0,gr._)`undefined`);i.coerceTypes==="array"&&n.if((0,gr._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,gr._)`${s}[0]`).assign(a,(0,gr._)`typeof ${s}`).if(dte(t,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,gr._)`${o} !== undefined`);for(let u of r)(J6e.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),fte(e),n.endIf(),n.if((0,gr._)`${o} !== undefined`,()=>{n.assign(s,o),vdr(e,o)});function c(u){switch(u){case"string":n.elseIf((0,gr._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,gr._)`"" + ${s}`).elseIf((0,gr._)`${s} === null`).assign(o,(0,gr._)`""`);return;case"number":n.elseIf((0,gr._)`${a} == "boolean" || ${s} === null - || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,gr._)`+${s}`);return;case"integer":n.elseIf((0,gr._)`${a} === "boolean" || ${s} === null - || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,gr._)`+${s}`);return;case"boolean":n.elseIf((0,gr._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,gr._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,gr._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,gr._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,gr._)`[${s}]`)}}}function vdr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,gr._)`${t} !== undefined`,()=>e.assign((0,gr._)`${t}[${r}]`,n))}function lte(e,t,r,n=M1.Correct){let s=n===M1.Correct?gr.operators.EQ:gr.operators.NEQ,i;switch(e){case"null":return(0,gr._)`${t} ${s} null`;case"array":i=(0,gr._)`Array.isArray(${t})`;break;case"object":i=(0,gr._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,gr._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,gr._)`typeof ${t} ${s} ${e}`}return n===M1.Correct?i:(0,gr.not)(i);function a(o=gr.nil){return(0,gr.and)((0,gr._)`typeof ${t} == "number"`,o,r?(0,gr._)`isFinite(${t})`:gr.nil)}}$o.checkDataType=lte;function dte(e,t,r,n){if(e.length===1)return lte(e[0],t,r,n);let s,i=(0,W6e.toHash)(e);if(i.array&&i.object){let a=(0,gr._)`typeof ${t} != "object"`;s=i.null?a:(0,gr._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else s=gr.nil;i.number&&delete i.integer;for(let a in i)s=(0,gr.and)(s,lte(a,t,r,n));return s}$o.checkDataTypes=dte;var Sdr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,gr._)`{type: ${e}}`:(0,gr._)`{type: ${t}}`};function fte(e){let t=Tdr(e);(0,gdr.reportError)(t,Sdr)}$o.reportTypeError=fte;function Tdr(e){let{gen:t,data:r,schema:n}=e,s=(0,W6e.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var e8e=S(jF=>{"use strict";Object.defineProperty(jF,"__esModule",{value:!0});jF.assignDefaults=void 0;var k1=Tr(),bdr=gn();function Idr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Z6e(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Z6e(e,i,s.default))}jF.assignDefaults=Idr;function Z6e(e,t,r){let{gen:n,compositeRule:s,data:i,opts:a}=e;if(r===void 0)return;let o=(0,k1._)`${i}${(0,k1.getProperty)(t)}`;if(s){(0,bdr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let c=(0,k1._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,k1._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,k1._)`${o} = ${(0,k1.stringify)(r)}`)}});var ld=S(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.validateUnion=os.validateArray=os.usePattern=os.callValidateCode=os.schemaProperties=os.allSchemaProperties=os.noPropertyInData=os.propertyInData=os.isOwnProperty=os.hasPropFunc=os.reportMissingProp=os.checkMissingProp=os.checkReportMissingProp=void 0;var Hs=Tr(),hte=gn(),J_=tm(),Rdr=gn();function Cdr(e,t){let{gen:r,data:n,it:s}=e;r.if(mte(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0,Hs._)`${t}`},!0),e.error()})}os.checkReportMissingProp=Cdr;function xdr({gen:e,data:t,it:{opts:r}},n,s){return(0,Hs.or)(...n.map(i=>(0,Hs.and)(mte(e,t,i,r.ownProperties),(0,Hs._)`${s} = ${i}`)))}os.checkMissingProp=xdr;function wdr(e,t){e.setParams({missingProperty:t},!0),e.error()}os.reportMissingProp=wdr;function t8e(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Hs._)`Object.prototype.hasOwnProperty`})}os.hasPropFunc=t8e;function pte(e,t,r){return(0,Hs._)`${t8e(e)}.call(${t}, ${r})`}os.isOwnProperty=pte;function Ndr(e,t,r,n){let s=(0,Hs._)`${t}${(0,Hs.getProperty)(r)} !== undefined`;return n?(0,Hs._)`${s} && ${pte(e,t,r)}`:s}os.propertyInData=Ndr;function mte(e,t,r,n){let s=(0,Hs._)`${t}${(0,Hs.getProperty)(r)} === undefined`;return n?(0,Hs.or)(s,(0,Hs.not)(pte(e,t,r))):s}os.noPropertyInData=mte;function r8e(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}os.allSchemaProperties=r8e;function Odr(e,t){return r8e(t).filter(r=>!(0,hte.alwaysValidSchema)(e,t[r]))}os.schemaProperties=Odr;function Ddr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Hs._)`${e}, ${t}, ${n}${s}`:t,d=[[J_.default.instancePath,(0,Hs.strConcat)(J_.default.instancePath,i)],[J_.default.parentData,a.parentData],[J_.default.parentDataProperty,a.parentDataProperty],[J_.default.rootData,J_.default.rootData]];a.opts.dynamicRef&&d.push([J_.default.dynamicAnchors,J_.default.dynamicAnchors]);let f=(0,Hs._)`${l}, ${r.object(...d)}`;return c!==Hs.nil?(0,Hs._)`${o}.call(${c}, ${f})`:(0,Hs._)`${o}(${f})`}os.callValidateCode=Ddr;var Pdr=(0,Hs._)`new RegExp`;function Ldr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Hs._)`${s.code==="new RegExp"?Pdr:(0,Rdr.useFunc)(e,s)}(${r}, ${n})`})}os.usePattern=Ldr;function Mdr(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(i,!0),a(()=>t.break()),i;function a(o){let c=t.const("len",(0,Hs._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:hte.Type.Num},i),t.if((0,Hs.not)(i),o)})}}os.validateArray=Mdr;function kdr(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,hte.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);t.assign(a,(0,Hs._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,Hs.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}os.validateUnion=kdr});var i8e=S(th=>{"use strict";Object.defineProperty(th,"__esModule",{value:!0});th.validateKeywordUsage=th.validSchemaType=th.funcKeywordCode=th.macroKeywordCode=void 0;var Pc=Tr(),lv=tm(),Bdr=ld(),Udr=EO();function Fdr(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=e,o=t.macro.call(a.self,s,i,a),c=s8e(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");e.subschema({schema:o,schemaPath:Pc.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}th.macroKeywordCode=Fdr;function $dr(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=e;Hdr(c,t);let u=!o&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=s8e(n,s,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&n8e(e),_(()=>e.error());else{let g=t.async?h():p();t.modifying&&n8e(e),_(()=>qdr(e,g))}}function h(){let g=n.let("ruleErrs",null);return n.try(()=>m((0,Pc._)`await `),y=>n.assign(d,!1).if((0,Pc._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,Pc._)`${y}.errors`),()=>n.throw(y))),g}function p(){let g=(0,Pc._)`${l}.errors`;return n.assign(g,null),m(Pc.nil),g}function m(g=t.async?(0,Pc._)`await `:Pc.nil){let y=c.opts.passContext?lv.default.this:lv.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,Pc._)`${g}${(0,Bdr.callValidateCode)(e,l,y,A)}`,t.modifying)}function _(g){var y;n.if((0,Pc.not)((y=t.valid)!==null&&y!==void 0?y:d),g)}}th.funcKeywordCode=$dr;function n8e(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Pc._)`${n.parentData}[${n.parentDataProperty}]`))}function qdr(e,t){let{gen:r}=e;r.if((0,Pc._)`Array.isArray(${t})`,()=>{r.assign(lv.default.vErrors,(0,Pc._)`${lv.default.vErrors} === null ? ${t} : ${lv.default.vErrors}.concat(${t})`).assign(lv.default.errors,(0,Pc._)`${lv.default.vErrors}.length`),(0,Udr.extendErrors)(e)},()=>e.error())}function Hdr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function s8e(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Pc.stringify)(r)})}function Vdr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}th.validSchemaType=Vdr;function jdr({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}th.validateKeywordUsage=jdr});var o8e=S(Z_=>{"use strict";Object.defineProperty(Z_,"__esModule",{value:!0});Z_.extendSubschemaMode=Z_.extendSubschemaData=Z_.getSubschema=void 0;var rh=Tr(),a8e=gn();function Kdr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,rh._)`${e.schemaPath}${(0,rh.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,rh._)`${e.schemaPath}${(0,rh.getProperty)(t)}${(0,rh.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,a8e.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Z_.getSubschema=Kdr;function Gdr(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=o.let("data",(0,rh._)`${t.data}${(0,rh.getProperty)(r)}`,!0);c(f),e.errorPath=(0,rh.str)`${u}${(0,a8e.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,rh._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(s!==void 0){let u=s instanceof rh.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}Z_.extendSubschemaData=Gdr;function zdr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}Z_.extendSubschemaMode=zdr});var dd=S((I9n,c8e)=>{"use strict";c8e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!e(t[s],r[s]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r}});var l8e=S((R9n,u8e)=>{"use strict";var eA=u8e.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};KF(t,n,s,e,"",e)};eA.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};eA.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};eA.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};eA.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function KF(e,t,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in eA.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});Su.getSchemaRefs=Su.resolveUrl=Su.normalizeId=Su._getFullPath=Su.getFullPath=Su.inlineRef=void 0;var Qdr=gn(),Wdr=dd(),Xdr=l8e(),Jdr=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Zdr(e,t=!0){return typeof e=="boolean"?!0:t===!0?!gte(e):t?d8e(e)<=t:!1}Su.inlineRef=Zdr;var efr=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function gte(e){for(let t in e){if(efr.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(gte)||typeof r=="object"&>e(r))return!0}return!1}function d8e(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Jdr.has(r)&&(typeof e[r]=="object"&&(0,Qdr.eachItem)(e[r],n=>t+=d8e(n)),t===1/0))return 1/0}return t}function f8e(e,t="",r){r!==!1&&(t=B1(t));let n=e.parse(t);return h8e(e,n)}Su.getFullPath=f8e;function h8e(e,t){return e.serialize(t).split("#")[0]+"#"}Su._getFullPath=h8e;var tfr=/#\/?$/;function B1(e){return e?e.replace(tfr,""):""}Su.normalizeId=B1;function rfr(e,t,r){return r=B1(r),e.resolve(t,r)}Su.resolveUrl=rfr;var nfr=/^[a-z_][-a-z0-9._]*$/i;function sfr(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=B1(e[r]||t),i={"":s},a=f8e(n,s,!1),o={},c=new Set;return Xdr(e,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=a+f,_=i[p];typeof d[r]=="string"&&(_=g.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),i[f]=_;function g(A){let E=this.opts.uriResolver.resolve;if(A=B1(_?E(_,A):A),c.has(A))throw l(A);c.add(A);let v=this.refs[A];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,A):A!==B1(m)&&(A[0]==="#"?(u(d,o[A],A),o[A]=d):this.refs[A]=m),A}function y(A){if(typeof A=="string"){if(!nfr.test(A))throw new Error(`invalid anchor "${A}"`);g.call(this,`#${A}`)}}}),o;function u(d,f,h){if(f!==void 0&&!Wdr(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Su.getSchemaRefs=sfr});var bO=S(tA=>{"use strict";Object.defineProperty(tA,"__esModule",{value:!0});tA.getData=tA.KeywordCxt=tA.validateFunctionCode=void 0;var A8e=z6e(),p8e=yO(),Ate=ute(),GF=yO(),ifr=e8e(),TO=i8e(),_te=o8e(),Rt=Tr(),rr=tm(),afr=vO(),rm=gn(),SO=EO();function ofr(e){if(v8e(e)&&(S8e(e),y8e(e))){lfr(e);return}E8e(e,()=>(0,A8e.topBoolOrEmptySchema)(e))}tA.validateFunctionCode=ofr;function E8e({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){s.code.es5?e.func(t,(0,Rt._)`${rr.default.data}, ${rr.default.valCxt}`,n.$async,()=>{e.code((0,Rt._)`"use strict"; ${m8e(r,s)}`),ufr(e,s),e.code(i)}):e.func(t,(0,Rt._)`${rr.default.data}, ${cfr(s)}`,n.$async,()=>e.code(m8e(r,s)).code(i))}function cfr(e){return(0,Rt._)`{${rr.default.instancePath}="", ${rr.default.parentData}, ${rr.default.parentDataProperty}, ${rr.default.rootData}=${rr.default.data}${e.dynamicRef?(0,Rt._)`, ${rr.default.dynamicAnchors}={}`:Rt.nil}}={}`}function ufr(e,t){e.if(rr.default.valCxt,()=>{e.var(rr.default.instancePath,(0,Rt._)`${rr.default.valCxt}.${rr.default.instancePath}`),e.var(rr.default.parentData,(0,Rt._)`${rr.default.valCxt}.${rr.default.parentData}`),e.var(rr.default.parentDataProperty,(0,Rt._)`${rr.default.valCxt}.${rr.default.parentDataProperty}`),e.var(rr.default.rootData,(0,Rt._)`${rr.default.valCxt}.${rr.default.rootData}`),t.dynamicRef&&e.var(rr.default.dynamicAnchors,(0,Rt._)`${rr.default.valCxt}.${rr.default.dynamicAnchors}`)},()=>{e.var(rr.default.instancePath,(0,Rt._)`""`),e.var(rr.default.parentData,(0,Rt._)`undefined`),e.var(rr.default.parentDataProperty,(0,Rt._)`undefined`),e.var(rr.default.rootData,rr.default.data),t.dynamicRef&&e.var(rr.default.dynamicAnchors,(0,Rt._)`{}`)})}function lfr(e){let{schema:t,opts:r,gen:n}=e;E8e(e,()=>{r.$comment&&t.$comment&&b8e(e),mfr(e),n.let(rr.default.vErrors,null),n.let(rr.default.errors,0),r.unevaluated&&dfr(e),T8e(e),Afr(e)})}function dfr(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Rt._)`${r}.evaluated`),t.if((0,Rt._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Rt._)`${e.evaluated}.props`,(0,Rt._)`undefined`)),t.if((0,Rt._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Rt._)`${e.evaluated}.items`,(0,Rt._)`undefined`))}function m8e(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Rt._)`/*# sourceURL=${r} */`:Rt.nil}function ffr(e,t){if(v8e(e)&&(S8e(e),y8e(e))){hfr(e,t);return}(0,A8e.boolOrEmptySchema)(e,t)}function y8e({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function v8e(e){return typeof e.schema!="boolean"}function hfr(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&b8e(e),gfr(e),_fr(e);let i=n.const("_errs",rr.default.errors);T8e(e,i),n.var(t,(0,Rt._)`${i} === ${rr.default.errors}`)}function S8e(e){(0,rm.checkUnknownRules)(e),pfr(e)}function T8e(e,t){if(e.opts.jtd)return g8e(e,[],!1,t);let r=(0,p8e.getSchemaTypes)(e.schema),n=(0,p8e.coerceAndCheckDataType)(e,r);g8e(e,r,!n,t)}function pfr(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,rm.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function mfr(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,rm.checkStrictMode)(e,"default is ignored in the schema root")}function gfr(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,afr.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function _fr(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function b8e({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code((0,Rt._)`${rr.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,Rt.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,Rt._)`${rr.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function Afr(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;r.$async?t.if((0,Rt._)`${rr.default.errors} === 0`,()=>t.return(rr.default.data),()=>t.throw((0,Rt._)`new ${s}(${rr.default.vErrors})`)):(t.assign((0,Rt._)`${n}.errors`,rr.default.vErrors),i.unevaluated&&Efr(e),t.return((0,Rt._)`${rr.default.errors} === 0`))}function Efr({gen:e,evaluated:t,props:r,items:n}){r instanceof Rt.Name&&e.assign((0,Rt._)`${t}.props`,r),n instanceof Rt.Name&&e.assign((0,Rt._)`${t}.items`,n)}function g8e(e,t,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,rm.schemaHasRulesButRef)(i,l))){s.block(()=>R8e(e,"$ref",l.all.$ref.definition));return}c.jtd||yfr(e,t),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Ate.shouldUseGroup)(i,f)&&(f.type?(s.if((0,GF.checkDataType)(f.type,a,c.strictNumbers)),_8e(e,f),t.length===1&&t[0]===f.type&&r&&(s.else(),(0,GF.reportTypeError)(e)),s.endIf()):_8e(e,f),o||s.if((0,Rt._)`${rr.default.errors} === ${n||0}`))}}function _8e(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0,ifr.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Ate.shouldUseRule)(n,i)&&R8e(e,i.keyword,i.definition,t.type)})}function yfr(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(vfr(e,t),e.opts.allowUnionTypes||Sfr(e,t),Tfr(e,e.dataTypes))}function vfr(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{I8e(e.dataTypes,r)||Ete(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Ifr(e,t)}}function Sfr(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Ete(e,"use allowUnionTypes to allow union type keyword")}function Tfr(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,Ate.shouldUseRule)(e.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>bfr(t,a))&&Ete(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function bfr(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function I8e(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Ifr(e,t){let r=[];for(let n of e.dataTypes)I8e(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Ete(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,rm.checkStrictMode)(e,t,e.opts.strictTypes)}var zF=class{constructor(t,r,n){if((0,TO.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,rm.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",C8e(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,TO.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",rr.default.errors))}result(t,r,n){this.failResult((0,Rt.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Rt.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Rt._)`${r} !== undefined && (${(0,Rt.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?SO.reportExtraError:SO.reportError)(this,this.def.error,r)}$dataError(){(0,SO.reportError)(this,this.def.$dataError||SO.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,SO.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Rt.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Rt.nil,r=Rt.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,Rt.or)((0,Rt._)`${s} === undefined`,r)),t!==Rt.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Rt.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,Rt.or)(a(),o());function a(){if(n.length){if(!(r instanceof Rt.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,Rt._)`${(0,GF.checkDataTypes)(c,r,i.opts.strictNumbers,GF.DataType.Wrong)}`}return Rt.nil}function o(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return(0,Rt._)`!${c}(${r})`}return Rt.nil}}subschema(t,r){let n=(0,_te.getSubschema)(this.it,t);(0,_te.extendSubschemaData)(n,this.it,t),(0,_te.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return ffr(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=rm.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=rm.mergeEvaluated.items(s,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(t,Rt.Name)),!0}};tA.KeywordCxt=zF;function R8e(e,t,r,n){let s=new zF(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0,TO.funcKeywordCode)(s,r):"macro"in r?(0,TO.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,TO.funcKeywordCode)(s,r)}var Rfr=/^\/(?:[^~]|~0|~1)*$/,Cfr=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function C8e(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return rr.default.rootData;if(e[0]==="/"){if(!Rfr.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,i=rr.default.rootData}else{let u=Cfr.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,Rt._)`${i}${(0,Rt.getProperty)((0,rm.unescapeJsonPointer)(u))}`,a=(0,Rt._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}tA.getData=C8e});var YF=S(vte=>{"use strict";Object.defineProperty(vte,"__esModule",{value:!0});var yte=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};vte.default=yte});var IO=S(bte=>{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});var Ste=vO(),Tte=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Ste.resolveUrl)(t,r,n),this.missingSchema=(0,Ste.normalizeId)((0,Ste.getFullPath)(t,this.missingRef))}};bte.default=Tte});var WF=S(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});fd.resolveSchema=fd.getCompilingSchema=fd.resolveRef=fd.compileSchema=fd.SchemaEnv=void 0;var xf=Tr(),xfr=YF(),dv=tm(),wf=vO(),x8e=gn(),wfr=bO(),U1=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,wf.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};fd.SchemaEnv=U1;function Rte(e){let t=w8e.call(this,e);if(t)return t;let r=(0,wf.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new xf.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;e.$async&&(o=a.scopeValue("Error",{ref:xfr.default,code:(0,xf._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:dv.default.data,parentData:dv.default.parentData,parentDataProperty:dv.default.parentDataProperty,dataNames:[dv.default.data],dataPathArr:[xf.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,xf.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:xf.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,xf._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,wfr.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(dv.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let h=new Function(`${dv.default.self}`,`${dv.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:m}=u;h.evaluated={props:p instanceof xf.Name?void 0:p,items:m instanceof xf.Name?void 0:m,dynamicProps:p instanceof xf.Name,dynamicItems:m instanceof xf.Name},h.source&&(h.source.evaluated=(0,xf.stringify)(h.evaluated))}return e.validate=h,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}fd.compileSchema=Rte;function Nfr(e,t,r){var n;r=(0,wf.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=Pfr.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new U1({schema:a,schemaId:o,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=Ofr.call(this,i)}fd.resolveRef=Nfr;function Ofr(e){return(0,wf.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Rte.call(this,e)}function w8e(e){for(let t of this._compilations)if(Dfr(t,e))return t}fd.getCompilingSchema=w8e;function Dfr(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Pfr(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||QF.call(this,e,t)}function QF(e,t){let r=this.opts.uriResolver.parse(t),n=(0,wf._getFullPath)(this.opts.uriResolver,r),s=(0,wf.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Ite.call(this,r,e);let i=(0,wf.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=QF.call(this,e,a);return typeof o?.schema!="object"?void 0:Ite.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||Rte.call(this,a),i===(0,wf.normalizeId)(t)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,wf.resolveUrl)(this.opts.uriResolver,s,u)),new U1({schema:o,schemaId:c,root:e,baseId:s})}return Ite.call(this,r,a)}}fd.resolveSchema=QF;var Lfr=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ite(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,x8e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Lfr.has(o)&&u&&(t=(0,wf.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,x8e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,wf.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=QF.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new U1({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var N8e=S((D9n,Mfr)=>{Mfr.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var xte=S((P9n,L8e)=>{"use strict";var kfr=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),D8e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Cte(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var Bfr=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function O8e(e){return e.length=0,!0}function Ufr(e,t,r){if(e.length){let n=Cte(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function Ffr(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=Ufr;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=O8e}else{s.push(u);continue}}return s.length&&(o===O8e?r.zone=s.join(""):a?n.push(s.join("")):n.push(Cte(s))),r.address=n.join(""),r}function P8e(e){if($fr(e,":")<2)return{host:e,isIPV6:!1};let t=Ffr(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function $fr(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:jfr}=xte(),Kfr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Gfr=["http","https","ws","wss","urn","urn:uuid"];function zfr(e){return Gfr.indexOf(e)!==-1}function wte(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function M8e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function k8e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function Yfr(e){return e.secure=wte(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Qfr(e){if((e.port===(wte(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function Wfr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Kfr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=Nte(s);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function Xfr(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=Nte(s);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function Jfr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!jfr(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Zfr(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var B8e={scheme:"http",domainHost:!0,parse:M8e,serialize:k8e},e0r={scheme:"https",domainHost:B8e.domainHost,parse:M8e,serialize:k8e},XF={scheme:"ws",domainHost:!0,parse:Yfr,serialize:Qfr},t0r={scheme:"wss",domainHost:XF.domainHost,parse:XF.parse,serialize:XF.serialize},r0r={scheme:"urn",parse:Wfr,serialize:Xfr,skipNormalize:!0},n0r={scheme:"urn:uuid",parse:Jfr,serialize:Zfr,skipNormalize:!0},JF={http:B8e,https:e0r,ws:XF,wss:t0r,urn:r0r,"urn:uuid":n0r};Object.setPrototypeOf(JF,null);function Nte(e){return e&&(JF[e]||JF[e.toLowerCase()])||void 0}U8e.exports={wsIsSecure:wte,SCHEMES:JF,isValidSchemeName:zfr,getSchemeHandler:Nte}});var H8e=S((M9n,e6)=>{"use strict";var{normalizeIPv6:s0r,removeDotSegments:RO,recomposeAuthority:i0r,normalizeComponentEncoding:ZF,isIPv4:a0r,nonSimpleDomain:o0r}=xte(),{SCHEMES:c0r,getSchemeHandler:$8e}=F8e();function u0r(e,t){return typeof e=="string"?e=nh(nm(e,t),t):typeof e=="object"&&(e=nm(nh(e,t),t)),e}function l0r(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=q8e(nm(e,n),nm(t,n),n,!0);return n.skipEscape=!0,nh(s,n)}function q8e(e,t,r,n){let s={};return n||(e=nm(nh(e,r),r),t=nm(nh(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=RO(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=RO(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=RO(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=RO(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function d0r(e,t,r){return typeof e=="string"?(e=unescape(e),e=nh(ZF(nm(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nh(ZF(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=nh(ZF(nm(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nh(ZF(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function nh(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=$8e(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=i0r(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=RO(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var f0r=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function nm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(f0r);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(a0r(n.host)===!1){let c=s0r(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=$8e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&o0r(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Ote={SCHEMES:c0r,normalize:u0r,resolve:l0r,resolveComponent:q8e,equal:d0r,serialize:nh,parse:nm};e6.exports=Ote;e6.exports.default=Ote;e6.exports.fastUri=Ote});var j8e=S(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});var V8e=H8e();V8e.code='require("ajv/dist/runtime/uri").default';Dte.default=V8e});var J8e=S(lo=>{"use strict";Object.defineProperty(lo,"__esModule",{value:!0});lo.CodeGen=lo.Name=lo.nil=lo.stringify=lo.str=lo._=lo.KeywordCxt=void 0;var h0r=bO();Object.defineProperty(lo,"KeywordCxt",{enumerable:!0,get:function(){return h0r.KeywordCxt}});var F1=Tr();Object.defineProperty(lo,"_",{enumerable:!0,get:function(){return F1._}});Object.defineProperty(lo,"str",{enumerable:!0,get:function(){return F1.str}});Object.defineProperty(lo,"stringify",{enumerable:!0,get:function(){return F1.stringify}});Object.defineProperty(lo,"nil",{enumerable:!0,get:function(){return F1.nil}});Object.defineProperty(lo,"Name",{enumerable:!0,get:function(){return F1.Name}});Object.defineProperty(lo,"CodeGen",{enumerable:!0,get:function(){return F1.CodeGen}});var p0r=YF(),Q8e=IO(),m0r=cte(),CO=WF(),g0r=Tr(),xO=vO(),t6=yO(),Lte=gn(),K8e=N8e(),_0r=j8e(),W8e=(e,t)=>new RegExp(e,t);W8e.code="new RegExp";var A0r=["removeAdditional","useDefaults","coerceTypes"],E0r=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),y0r={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},v0r={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},G8e=200;function S0r(e){var t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y,A,E,v,b,I,T,x;let w=e.strict,D=(t=e.code)===null||t===void 0?void 0:t.optimize,M=D===!0||D===void 0?1:D||0,L=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:W8e,U=(s=e.uriResolver)!==null&&s!==void 0?s:_0r.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:w)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=e.strictNumbers)!==null&&o!==void 0?o:w)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:w)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:w)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:L}:{optimize:M,regExp:L},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:G8e,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:G8e,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(y=e.messages)!==null&&y!==void 0?y:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(v=e.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(b=e.validateSchema)!==null&&b!==void 0?b:!0,validateFormats:(I=e.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(T=e.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(x=e.int32range)!==null&&x!==void 0?x:!0,uriResolver:U}}var wO=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...S0r(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new g0r.ValueScope({scope:{},prefixes:E0r,es5:r,lines:n}),this.logger=x0r(t.logger);let s=t.validateFormats;t.validateFormats=!1,this.RULES=(0,m0r.getRules)(),z8e.call(this,y0r,t,"NOT SUPPORTED"),z8e.call(this,v0r,t,"DEPRECATED","warn"),this._metaOpts=R0r.call(this),t.formats&&b0r.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&I0r.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),T0r.call(this),t.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=K8e;n==="id"&&(s={...K8e},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Q8e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,xO.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,t);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(t){let r;for(;typeof(r=Y8e.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new CO.SchemaEnv({schema:{},schemaId:n});if(r=CO.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Y8e.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,xO.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(N0r.call(this,n,r),!r)return(0,Lte.eachItem)(n,i=>Pte.call(this,i)),this;D0r.call(this,r);let s={...r,type:(0,t6.getJSONTypes)(r.type),schemaType:(0,t6.getJSONTypes)(r.schemaType)};return(0,Lte.eachItem)(n,s.type.length===0?i=>Pte.call(this,i,s):i=>s.type.forEach(a=>Pte.call(this,i,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===t);s>=0&&n.rules.splice(s,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let i=s.split("/").slice(1),a=t;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=X8e(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]))}}_addSchema(t,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,xO.normalizeId)(a||n);let u=xO.getSchemaRefs.call(this,t,n);return c=new CO.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):CO.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{CO.compileSchema.call(this,t)}finally{this.opts=r}}};wO.ValidationError=p0r.default;wO.MissingRefError=Q8e.default;lo.default=wO;function z8e(e,t,r,n="error"){for(let s in e){let i=s;i in t&&this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function Y8e(e){return e=(0,xO.normalizeId)(e),this.schemas[e]||this.refs[e]}function T0r(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function b0r(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function I0r(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function R0r(){let e={...this.opts};for(let t of A0r)delete e[t];return e}var C0r={log(){},warn(){},error(){}};function x0r(e){if(e===!1)return C0r;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var w0r=/^[a-z_$][a-z0-9_$:-]*$/i;function N0r(e,t){let{RULES:r}=this;if((0,Lte.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!w0r.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Pte(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,t6.getJSONTypes)(t.type),schemaType:(0,t6.getJSONTypes)(t.schemaType)}};t.before?O0r.call(this,a,o,t.before):a.rules.push(o),i.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function O0r(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function D0r(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=X8e(t)),e.validateSchema=this.compile(t,!0))}var P0r={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function X8e(e){return{anyOf:[e,P0r]}}});var Z8e=S(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});var L0r={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Mte.default=L0r});var n5e=S(fv=>{"use strict";Object.defineProperty(fv,"__esModule",{value:!0});fv.callRef=fv.getValidate=void 0;var M0r=IO(),e5e=ld(),Tu=Tr(),$1=tm(),t5e=WF(),r6=gn(),k0r={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=t5e.resolveRef.call(c,u,s,r);if(l===void 0)throw new M0r.default(n.opts.uriResolver,s,r);if(l instanceof t5e.SchemaEnv)return f(l);return h(l);function d(){if(i===u)return n6(e,a,i,i.$async);let p=t.scopeValue("root",{ref:u});return n6(e,(0,Tu._)`${p}.validate`,u,u.$async)}function f(p){let m=r5e(e,p);n6(e,m,p,p.$async)}function h(p){let m=t.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Tu.stringify)(p)}:{ref:p}),_=t.name("valid"),g=e.subschema({schema:p,dataTypes:[],schemaPath:Tu.nil,topSchemaRef:m,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function r5e(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Tu._)`${r.scopeValue("wrapper",{ref:t})}.validate`}fv.getValidate=r5e;function n6(e,t,r,n){let{gen:s,it:i}=e,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?$1.default.this:Tu.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Tu._)`await ${(0,e5e.callValidateCode)(e,t,u)}`),h(t),a||s.assign(p,!0)},m=>{s.if((0,Tu._)`!(${m} instanceof ${i.ValidationError})`,()=>s.throw(m)),f(m),a||s.assign(p,!1)}),e.ok(p)}function d(){e.result((0,e5e.callValidateCode)(e,t,u),()=>h(t),()=>f(t))}function f(p){let m=(0,Tu._)`${p}.errors`;s.assign($1.default.vErrors,(0,Tu._)`${$1.default.vErrors} === null ? ${m} : ${$1.default.vErrors}.concat(${m})`),s.assign($1.default.errors,(0,Tu._)`${$1.default.vErrors}.length`)}function h(p){var m;if(!i.opts.unevaluated)return;let _=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(i.props=r6.mergeEvaluated.props(s,_.props,i.props));else{let g=s.var("props",(0,Tu._)`${p}.evaluated.props`);i.props=r6.mergeEvaluated.props(s,g,i.props,Tu.Name)}if(i.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(i.items=r6.mergeEvaluated.items(s,_.items,i.items));else{let g=s.var("items",(0,Tu._)`${p}.evaluated.items`);i.items=r6.mergeEvaluated.items(s,g,i.items,Tu.Name)}}}fv.callRef=n6;fv.default=k0r});var s5e=S(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});var B0r=Z8e(),U0r=n5e(),F0r=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",B0r.default,U0r.default];kte.default=F0r});var i5e=S(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});var s6=Tr(),rA=s6.operators,i6={maximum:{okStr:"<=",ok:rA.LTE,fail:rA.GT},minimum:{okStr:">=",ok:rA.GTE,fail:rA.LT},exclusiveMaximum:{okStr:"<",ok:rA.LT,fail:rA.GTE},exclusiveMinimum:{okStr:">",ok:rA.GT,fail:rA.LTE}},$0r={message:({keyword:e,schemaCode:t})=>(0,s6.str)`must be ${i6[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,s6._)`{comparison: ${i6[e].okStr}, limit: ${t}}`},q0r={keyword:Object.keys(i6),type:"number",schemaType:"number",$data:!0,error:$0r,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,s6._)`${r} ${i6[t].fail} ${n} || isNaN(${r})`)}};Bte.default=q0r});var a5e=S(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});var NO=Tr(),H0r={message:({schemaCode:e})=>(0,NO.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,NO._)`{multipleOf: ${e}}`},V0r={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:H0r,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,a=t.let("res"),o=i?(0,NO._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,NO._)`${a} !== parseInt(${a})`;e.fail$data((0,NO._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Ute.default=V0r});var c5e=S(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});function o5e(e){let t=e.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty($te,"__esModule",{value:!0});var hv=Tr(),j0r=gn(),K0r=c5e(),G0r={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,hv.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,hv._)`{limit: ${e}}`},z0r={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:G0r,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?hv.operators.GT:hv.operators.LT,a=s.opts.unicode===!1?(0,hv._)`${r}.length`:(0,hv._)`${(0,j0r.useFunc)(e.gen,K0r.default)}(${r})`;e.fail$data((0,hv._)`${a} ${i} ${n}`)}};$te.default=z0r});var l5e=S(qte=>{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});var Y0r=ld(),Q0r=gn(),q1=Tr(),W0r={message:({schemaCode:e})=>(0,q1.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,q1._)`{pattern: ${e}}`},X0r={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:W0r,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0,q1._)`new RegExp`:(0,Q0r.useFunc)(t,c),l=t.let("valid");t.try(()=>t.assign(l,(0,q1._)`${u}(${i}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,q1._)`!${l}`)}else{let c=(0,Y0r.usePattern)(e,s);e.fail$data((0,q1._)`!${c}.test(${r})`)}}};qte.default=X0r});var d5e=S(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});var OO=Tr(),J0r={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,OO.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,OO._)`{limit: ${e}}`},Z0r={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:J0r,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?OO.operators.GT:OO.operators.LT;e.fail$data((0,OO._)`Object.keys(${r}).length ${s} ${n}`)}};Hte.default=Z0r});var f5e=S(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});var DO=ld(),PO=Tr(),ehr=gn(),thr={message:({params:{missingProperty:e}})=>(0,PO.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,PO._)`{missingProperty: ${e}}`},rhr={keyword:"required",type:"object",schemaType:"array",$data:!0,error:thr,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:a}=e,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let m of r)if(h?.[m]===void 0&&!p.has(m)){let _=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${m}" is not defined at "${_}" (strictRequired)`;(0,ehr.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(PO.nil,d);else for(let h of r)(0,DO.checkReportMissingProp)(e,h)}function l(){let h=t.let("missing");if(c||i){let p=t.let("valid",!0);e.block$data(p,()=>f(h,p)),e.ok(p)}else t.if((0,DO.checkMissingProp)(e,r,h)),(0,DO.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,DO.noPropertyInData)(t,s,h,o.ownProperties),()=>e.error())})}function f(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,DO.propertyInData)(t,s,h,o.ownProperties)),t.if((0,PO.not)(p),()=>{e.error(),t.break()})},PO.nil)}}};Vte.default=rhr});var h5e=S(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});var LO=Tr(),nhr={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,LO.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,LO._)`{limit: ${e}}`},shr={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:nhr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?LO.operators.GT:LO.operators.LT;e.fail$data((0,LO._)`${r}.length ${s} ${n}`)}};jte.default=shr});var MO=S(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});var p5e=dd();p5e.code='require("ajv/dist/runtime/equal").default';Kte.default=p5e});var m5e=S(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});var Gte=yO(),fo=Tr(),ihr=gn(),ahr=MO(),ohr={message:({params:{i:e,j:t}})=>(0,fo.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,fo._)`{i: ${e}, j: ${t}}`},chr={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:ohr,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=e;if(!n&&!s)return;let c=t.let("valid"),u=i.items?(0,Gte.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,fo._)`${a} === false`),e.ok(c);function l(){let p=t.let("i",(0,fo._)`${r}.length`),m=t.let("j");e.setParams({i:p,j:m}),t.assign(c,!0),t.if((0,fo._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let _=t.name("item"),g=(0,Gte.checkDataTypes)(u,_,o.opts.strictNumbers,Gte.DataType.Wrong),y=t.const("indices",(0,fo._)`{}`);t.for((0,fo._)`;${p}--;`,()=>{t.let(_,(0,fo._)`${r}[${p}]`),t.if(g,(0,fo._)`continue`),u.length>1&&t.if((0,fo._)`typeof ${_} == "string"`,(0,fo._)`${_} += "_"`),t.if((0,fo._)`typeof ${y}[${_}] == "number"`,()=>{t.assign(m,(0,fo._)`${y}[${_}]`),e.error(),t.assign(c,!1).break()}).code((0,fo._)`${y}[${_}] = ${p}`)})}function h(p,m){let _=(0,ihr.useFunc)(t,ahr.default),g=t.name("outer");t.label(g).for((0,fo._)`;${p}--;`,()=>t.for((0,fo._)`${m} = ${p}; ${m}--;`,()=>t.if((0,fo._)`${_}(${r}[${p}], ${r}[${m}])`,()=>{e.error(),t.assign(c,!1).break(g)})))}}};zte.default=chr});var g5e=S(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});var Yte=Tr(),uhr=gn(),lhr=MO(),dhr={message:"must be equal to constant",params:({schemaCode:e})=>(0,Yte._)`{allowedValue: ${e}}`},fhr={keyword:"const",$data:!0,error:dhr,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,Yte._)`!${(0,uhr.useFunc)(t,lhr.default)}(${r}, ${s})`):e.fail((0,Yte._)`${i} !== ${r}`)}};Qte.default=fhr});var _5e=S(Wte=>{"use strict";Object.defineProperty(Wte,"__esModule",{value:!0});var kO=Tr(),hhr=gn(),phr=MO(),mhr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,kO._)`{allowedValues: ${e}}`},ghr={keyword:"enum",schemaType:"array",$data:!0,error:mhr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,hhr.useFunc)(t,phr.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",i);l=(0,kO.or)(...s.map((p,m)=>f(h,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,h=>t.if((0,kO._)`${u()}(${r}, ${h})`,()=>t.assign(l,!0).break()))}function f(h,p){let m=s[p];return typeof m=="object"&&m!==null?(0,kO._)`${u()}(${r}, ${h}[${p}])`:(0,kO._)`${r} === ${m}`}}};Wte.default=ghr});var A5e=S(Xte=>{"use strict";Object.defineProperty(Xte,"__esModule",{value:!0});var _hr=i5e(),Ahr=a5e(),Ehr=u5e(),yhr=l5e(),vhr=d5e(),Shr=f5e(),Thr=h5e(),bhr=m5e(),Ihr=g5e(),Rhr=_5e(),Chr=[_hr.default,Ahr.default,Ehr.default,yhr.default,vhr.default,Shr.default,Thr.default,bhr.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Ihr.default,Rhr.default];Xte.default=Chr});var Zte=S(BO=>{"use strict";Object.defineProperty(BO,"__esModule",{value:!0});BO.validateAdditionalItems=void 0;var pv=Tr(),Jte=gn(),xhr={message:({params:{len:e}})=>(0,pv.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,pv._)`{limit: ${e}}`},whr={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:xhr,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Jte.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}E5e(e,n)}};function E5e(e,t){let{gen:r,schema:n,data:s,keyword:i,it:a}=e;a.items=!0;let o=r.const("len",(0,pv._)`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,pv._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,Jte.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,pv._)`${o} <= ${t.length}`);r.if((0,pv.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,o,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:Jte.Type.Num},u),a.allErrors||r.if((0,pv.not)(u),()=>r.break())})}}BO.validateAdditionalItems=E5e;BO.default=whr});var ere=S(UO=>{"use strict";Object.defineProperty(UO,"__esModule",{value:!0});UO.validateTuple=void 0;var y5e=Tr(),a6=gn(),Nhr=ld(),Ohr={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return v5e(e,"additionalItems",t);r.items=!0,!(0,a6.alwaysValidSchema)(r,t)&&e.ok((0,Nhr.validateArray)(e))}};function v5e(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=e;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=a6.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,y5e._)`${i}.length`);r.forEach((d,f)=>{(0,a6.alwaysValidSchema)(o,d)||(n.if((0,y5e._)`${u} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},c)),e.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=o,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let _=`"${a}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,a6.checkStrictMode)(o,_,f.strictTuples)}}}UO.validateTuple=v5e;UO.default=Ohr});var S5e=S(tre=>{"use strict";Object.defineProperty(tre,"__esModule",{value:!0});var Dhr=ere(),Phr={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,Dhr.validateTuple)(e,"items")};tre.default=Phr});var b5e=S(rre=>{"use strict";Object.defineProperty(rre,"__esModule",{value:!0});var T5e=Tr(),Lhr=gn(),Mhr=ld(),khr=Zte(),Bhr={message:({params:{len:e}})=>(0,T5e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,T5e._)`{limit: ${e}}`},Uhr={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Bhr,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=!0,!(0,Lhr.alwaysValidSchema)(n,t)&&(s?(0,khr.validateAdditionalItems)(e,s):e.ok((0,Mhr.validateArray)(e)))}};rre.default=Uhr});var I5e=S(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});var hd=Tr(),o6=gn(),Fhr={message:({params:{min:e,max:t}})=>t===void 0?(0,hd.str)`must contain at least ${e} valid item(s)`:(0,hd.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,hd._)`{minContains: ${e}}`:(0,hd._)`{minContains: ${e}, maxContains: ${t}}`},$hr={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Fhr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=t.const("len",(0,hd._)`${s}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,o6.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,o6.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,o6.alwaysValidSchema)(i,r)){let m=(0,hd._)`${l} >= ${a}`;o!==void 0&&(m=(0,hd._)`${m} && ${l} <= ${o}`),e.pass(m);return}i.items=!0;let d=t.name("valid");o===void 0&&a===1?h(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,hd._)`${s}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),_=t.let("count",0);h(m,()=>t.if(m,()=>p(_)))}function h(m,_){t.forRange("i",0,l,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:o6.Type.Num,compositeRule:!0},m),_()})}function p(m){t.code((0,hd._)`${m}++`),o===void 0?t.if((0,hd._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,hd._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,hd._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};nre.default=$hr});var x5e=S(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.validateSchemaDeps=sh.validatePropertyDeps=sh.error=void 0;var sre=Tr(),qhr=gn(),FO=ld();sh.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,sre.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,sre._)`{property: ${e}, - missingProperty: ${n}, - depsCount: ${t}, - deps: ${r}}`};var Hhr={keyword:"dependencies",type:"object",schemaType:"object",error:sh.error,code(e){let[t,r]=Vhr(e);R5e(e,t),C5e(e,r)}};function Vhr({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function R5e(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let c=(0,FO.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,FO.checkReportMissingProp)(e,u)}):(r.if((0,sre._)`${c} && (${(0,FO.checkMissingProp)(e,o,i)})`),(0,FO.reportMissingProp)(e,i),r.else())}}sh.validatePropertyDeps=R5e;function C5e(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,a=r.name("valid");for(let o in t)(0,qhr.alwaysValidSchema)(i,t[o])||(r.if((0,FO.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:o},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}sh.validateSchemaDeps=C5e;sh.default=Hhr});var N5e=S(ire=>{"use strict";Object.defineProperty(ire,"__esModule",{value:!0});var w5e=Tr(),jhr=gn(),Khr={message:"property name must be valid",params:({params:e})=>(0,w5e._)`{propertyName: ${e.propertyName}}`},Ghr={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Khr,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0,jhr.alwaysValidSchema)(s,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,w5e.not)(i),()=>{e.error(!0),s.allErrors||t.break()})}),e.ok(i)}};ire.default=Ghr});var ore=S(are=>{"use strict";Object.defineProperty(are,"__esModule",{value:!0});var c6=ld(),Nf=Tr(),zhr=tm(),u6=gn(),Yhr={message:"must NOT have additional properties",params:({params:e})=>(0,Nf._)`{additionalProperty: ${e.additionalProperty}}`},Qhr={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Yhr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,u6.alwaysValidSchema)(a,r))return;let u=(0,c6.allSchemaProperties)(n.properties),l=(0,c6.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Nf._)`${i} === ${zhr.default.errors}`);function d(){t.forIn("key",s,_=>{!u.length&&!l.length?p(_):t.if(f(_),()=>p(_))})}function f(_){let g;if(u.length>8){let y=(0,u6.schemaRefOrVal)(a,n.properties,"properties");g=(0,c6.isOwnProperty)(t,y,_)}else u.length?g=(0,Nf.or)(...u.map(y=>(0,Nf._)`${_} === ${y}`)):g=Nf.nil;return l.length&&(g=(0,Nf.or)(g,...l.map(y=>(0,Nf._)`${(0,c6.usePattern)(e,y)}.test(${_})`))),(0,Nf.not)(g)}function h(_){t.code((0,Nf._)`delete ${s}[${_}]`)}function p(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,u6.alwaysValidSchema)(a,r)){let g=t.name("valid");c.removeAdditional==="failing"?(m(_,g,!1),t.if((0,Nf.not)(g),()=>{e.reset(),h(_)})):(m(_,g),o||t.if((0,Nf.not)(g),()=>t.break()))}}function m(_,g,y){let A={keyword:"additionalProperties",dataProp:_,dataPropType:u6.Type.Str};y===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,g)}}};are.default=Qhr});var P5e=S(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});var Whr=bO(),O5e=ld(),cre=gn(),D5e=ore(),Xhr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&D5e.default.code(new Whr.KeywordCxt(i,D5e.default,"additionalProperties"));let a=(0,O5e.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=cre.mergeEvaluated.props(t,(0,cre.toHash)(a),i.props));let o=a.filter(d=>!(0,cre.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=t.name("valid");for(let d of o)u(d)?l(d):(t.if((0,O5e.propertyInData)(t,s,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};ure.default=Xhr});var B5e=S(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});var L5e=ld(),l6=Tr(),M5e=gn(),k5e=gn(),Jhr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:a}=i,o=(0,L5e.allSchemaProperties)(r),c=o.filter(m=>(0,M5e.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof l6.Name)&&(i.props=(0,k5e.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let m of o)u&&h(m),i.allErrors?p(m):(t.var(l,!0),p(m),t.if(l))}function h(m){for(let _ in u)new RegExp(m).test(_)&&(0,M5e.checkStrictMode)(i,`property ${_} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){t.forIn("key",n,_=>{t.if((0,l6._)`${(0,L5e.usePattern)(e,m)}.test(${_})`,()=>{let g=c.includes(m);g||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:_,dataPropType:k5e.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,l6._)`${d}[${_}]`,!0):!g&&!i.allErrors&&t.if((0,l6.not)(l),()=>t.break())})})}}};lre.default=Jhr});var U5e=S(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});var Zhr=gn(),epr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,Zhr.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};dre.default=epr});var F5e=S(fre=>{"use strict";Object.defineProperty(fre,"__esModule",{value:!0});var tpr=ld(),rpr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:tpr.validateUnion,error:{message:"must match a schema in anyOf"}};fre.default=rpr});var $5e=S(hre=>{"use strict";Object.defineProperty(hre,"__esModule",{value:!0});var d6=Tr(),npr=gn(),spr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,d6._)`{passingSchemas: ${e.passing}}`},ipr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:spr,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),o=t.let("passing",null),c=t.name("_valid");e.setParams({passing:o}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let f;(0,npr.alwaysValidSchema)(s,l)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,d6._)`${c} && ${a}`).assign(a,!1).assign(o,(0,d6._)`[${o}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,d6.Name)})})}}};hre.default=ipr});var q5e=S(pre=>{"use strict";Object.defineProperty(pre,"__esModule",{value:!0});var apr=gn(),opr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((i,a)=>{if((0,apr.alwaysValidSchema)(n,i))return;let o=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(o)})}};pre.default=opr});var j5e=S(mre=>{"use strict";Object.defineProperty(mre,"__esModule",{value:!0});var f6=Tr(),V5e=gn(),cpr={message:({params:e})=>(0,f6.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,f6._)`{failingKeyword: ${e.ifClause}}`},upr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:cpr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,V5e.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=H5e(n,"then"),i=H5e(n,"else");if(!s&&!i)return;let a=t.let("valid",!0),o=t.name("_valid");if(c(),e.reset(),s&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,u("then",l),u("else",l))}else s?t.if(o,u("then")):t.if((0,f6.not)(o),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,f6._)`${l}`):e.setParams({ifClause:l})}}}};function H5e(e,t){let r=e.schema[t];return r!==void 0&&!(0,V5e.alwaysValidSchema)(e,r)}mre.default=upr});var K5e=S(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});var lpr=gn(),dpr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,lpr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};gre.default=dpr});var G5e=S(_re=>{"use strict";Object.defineProperty(_re,"__esModule",{value:!0});var fpr=Zte(),hpr=S5e(),ppr=ere(),mpr=b5e(),gpr=I5e(),_pr=x5e(),Apr=N5e(),Epr=ore(),ypr=P5e(),vpr=B5e(),Spr=U5e(),Tpr=F5e(),bpr=$5e(),Ipr=q5e(),Rpr=j5e(),Cpr=K5e();function xpr(e=!1){let t=[Spr.default,Tpr.default,bpr.default,Ipr.default,Rpr.default,Cpr.default,Apr.default,Epr.default,_pr.default,ypr.default,vpr.default];return e?t.push(hpr.default,mpr.default):t.push(fpr.default,ppr.default),t.push(gpr.default),t}_re.default=xpr});var z5e=S(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});var Bi=Tr(),wpr={message:({schemaCode:e})=>(0,Bi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Bi._)`{format: ${e}}`},Npr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:wpr,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,Bi._)`${p}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,Bi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(_,(0,Bi._)`${m}.type || "string"`).assign(g,(0,Bi._)`${m}.validate`),()=>r.assign(_,(0,Bi._)`"string"`).assign(g,m)),e.fail$data((0,Bi.or)(y(),A()));function y(){return c.strictSchema===!1?Bi.nil:(0,Bi._)`${a} && !${g}`}function A(){let E=l.$async?(0,Bi._)`(${m}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Bi._)`${g}(${n})`,v=(0,Bi._)`(typeof ${g} == "function" ? ${E} : ${g}.test(${n}))`;return(0,Bi._)`${g} && ${g} !== true && ${_} === ${t} && !${v}`}}function h(){let p=d.formats[i];if(!p){y();return}if(p===!0)return;let[m,_,g]=A(p);m===t&&e.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function A(v){let b=v instanceof RegExp?(0,Bi.regexpCode)(v):c.code.formats?(0,Bi._)`${c.code.formats}${(0,Bi.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:v,code:b});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,Bi._)`${I}.validate`]:["string",v,I]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Bi._)`await ${g}(${n})`}return typeof _=="function"?(0,Bi._)`${g}(${n})`:(0,Bi._)`${g}.test(${n})`}}}};Are.default=Npr});var Y5e=S(Ere=>{"use strict";Object.defineProperty(Ere,"__esModule",{value:!0});var Opr=z5e(),Dpr=[Opr.default];Ere.default=Dpr});var Q5e=S(H1=>{"use strict";Object.defineProperty(H1,"__esModule",{value:!0});H1.contentVocabulary=H1.metadataVocabulary=void 0;H1.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];H1.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var X5e=S(yre=>{"use strict";Object.defineProperty(yre,"__esModule",{value:!0});var Ppr=s5e(),Lpr=A5e(),Mpr=G5e(),kpr=Y5e(),W5e=Q5e(),Bpr=[Ppr.default,Lpr.default,(0,Mpr.default)(),kpr.default,W5e.metadataVocabulary,W5e.contentVocabulary];yre.default=Bpr});var Z5e=S(h6=>{"use strict";Object.defineProperty(h6,"__esModule",{value:!0});h6.DiscrError=void 0;var J5e;(function(e){e.Tag="tag",e.Mapping="mapping"})(J5e||(h6.DiscrError=J5e={}))});var t$e=S(Sre=>{"use strict";Object.defineProperty(Sre,"__esModule",{value:!0});var V1=Tr(),vre=Z5e(),e$e=WF(),Upr=IO(),Fpr=gn(),$pr={message:({params:{discrError:e,tagName:t}})=>e===vre.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,V1._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},qpr={keyword:"discriminator",type:"object",schemaType:"object",error:$pr,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,V1._)`${r}${(0,V1.getProperty)(o)}`);t.if((0,V1._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:vre.DiscrError.Tag,tag:u,tagName:o})),e.ok(c);function l(){let h=f();t.if(!1);for(let p in h)t.elseIf((0,V1._)`${u} === ${p}`),t.assign(c,d(h[p]));t.else(),e.error(!1,{discrError:vre.DiscrError.Mapping,tag:u,tagName:o}),t.endIf()}function d(h){let p=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(m,V1.Name),p}function f(){var h;let p={},m=g(s),_=!0;for(let E=0;E{Hpr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var bre=S((Vs,Tre)=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});Vs.MissingRefError=Vs.ValidationError=Vs.CodeGen=Vs.Name=Vs.nil=Vs.stringify=Vs.str=Vs._=Vs.KeywordCxt=Vs.Ajv=void 0;var Vpr=J8e(),jpr=X5e(),Kpr=t$e(),n$e=r$e(),Gpr=["/properties"],p6="http://json-schema.org/draft-07/schema",j1=class extends Vpr.default{_addVocabularies(){super._addVocabularies(),jpr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(Kpr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(n$e,Gpr):n$e;this.addMetaSchema(t,p6,!1),this.refs["http://json-schema.org/schema"]=p6}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(p6)?p6:void 0)}};Vs.Ajv=j1;Tre.exports=Vs=j1;Tre.exports.Ajv=j1;Object.defineProperty(Vs,"__esModule",{value:!0});Vs.default=j1;var zpr=bO();Object.defineProperty(Vs,"KeywordCxt",{enumerable:!0,get:function(){return zpr.KeywordCxt}});var K1=Tr();Object.defineProperty(Vs,"_",{enumerable:!0,get:function(){return K1._}});Object.defineProperty(Vs,"str",{enumerable:!0,get:function(){return K1.str}});Object.defineProperty(Vs,"stringify",{enumerable:!0,get:function(){return K1.stringify}});Object.defineProperty(Vs,"nil",{enumerable:!0,get:function(){return K1.nil}});Object.defineProperty(Vs,"Name",{enumerable:!0,get:function(){return K1.Name}});Object.defineProperty(Vs,"CodeGen",{enumerable:!0,get:function(){return K1.CodeGen}});var Ypr=YF();Object.defineProperty(Vs,"ValidationError",{enumerable:!0,get:function(){return Ypr.default}});var Qpr=IO();Object.defineProperty(Vs,"MissingRefError",{enumerable:!0,get:function(){return Qpr.default}})});var i$e=S((bqn,s$e)=>{"use strict";var Wpr={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};s$e.exports={HEX:Wpr}});var h$e=S((Iqn,f$e)=>{"use strict";var{HEX:Xpr}=i$e();function u$e(e){if(d$e(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=t;return r?{host:Zpr(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function Ire(e){let t="",r=!0;for(let n of e){if(n!=="0"&&r===!0&&(r=!1),Xpr[n]===void 0)return;r||(t+=n)}return t}function Jpr(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=Ire(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;u7){r.error=!0;break}u-1>=0&&e[u-1]===":"&&(a=!0);continue}else if(l==="%"){if(!c())break;i=!0}else{s.push(l);continue}}return s.length&&(i?r.zone=s.join(""):o?n.push(s.join("")):n.push(Ire(s.join("")))),r.address=n.join(""),r}function l$e(e,t={}){if(d$e(e,":")<2)return{host:e,isIPV6:!1};let r=Jpr(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,s=r.address;return r.zone&&(n+="%"+r.zone,s+="%25"+r.zone),{host:n,escapedHost:s,isIPV6:!0}}}function Zpr(e,t){let r="",n=!0,s=e.length;for(let i=0;i{"use strict";var smr=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,imr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function p$e(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function m$e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function g$e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function amr(e){return e.secure=p$e(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function omr(e){if((e.port===(p$e(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function cmr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(imr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=Rre[s];e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function umr(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=Rre[s];i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function lmr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!smr.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function dmr(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var _$e={scheme:"http",domainHost:!0,parse:m$e,serialize:g$e},fmr={scheme:"https",domainHost:_$e.domainHost,parse:m$e,serialize:g$e},m6={scheme:"ws",domainHost:!0,parse:amr,serialize:omr},hmr={scheme:"wss",domainHost:m6.domainHost,parse:m6.parse,serialize:m6.serialize},pmr={scheme:"urn",parse:cmr,serialize:umr,skipNormalize:!0},mmr={scheme:"urn:uuid",parse:lmr,serialize:dmr,skipNormalize:!0},Rre={http:_$e,https:fmr,ws:m6,wss:hmr,urn:pmr,"urn:uuid":mmr};A$e.exports=Rre});var xre=S((Cqn,_6)=>{"use strict";var{normalizeIPv6:gmr,normalizeIPv4:_mr,removeDotSegments:$O,recomposeAuthority:Amr,normalizeComponentEncoding:g6}=h$e(),y$e=E$e();function Emr(e,t){return typeof e=="string"?e=ih(sm(e,t),t):typeof e=="object"&&(e=sm(ih(e,t),t)),e}function ymr(e,t,r){let n=Object.assign({scheme:"null"},r),s=v$e(sm(e,n),sm(t,n),n,!0);return ih(s,{...n,skipEscape:!0})}function v$e(e,t,r,n){let s={};return n||(e=sm(ih(e,r),r),t=sm(ih(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=$O(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=$O(t.path||""),s.query=t.query):(t.path?(t.path.charAt(0)==="/"?s.path=$O(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=$O(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function vmr(e,t,r){return typeof e=="string"?(e=unescape(e),e=ih(g6(sm(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=ih(g6(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=ih(g6(sm(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=ih(g6(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function ih(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=y$e[(n.scheme||r.scheme||"").toLowerCase()];i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(s.push(r.scheme),s.push(":"));let a=Amr(r,n);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path.charAt(0)!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=$O(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),s.push(o)}return r.query!==void 0&&(s.push("?"),s.push(r.query)),r.fragment!==void 0&&(s.push("#"),s.push(r.fragment)),s.join("")}var Smr=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function Tmr(e){let t=0;for(let r=0,n=e.length;r126||Smr[t])return!0;return!1}var bmr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function sm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=e.indexOf("%")!==-1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let i=e.match(bmr);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host){let o=_mr(n.host);o.isIPV4===!1?n.host=gmr(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=y$e[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&Tmr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(s&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),s&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),s&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Cre={normalize:Emr,resolve:ymr,resolveComponents:v$e,equal:vmr,serialize:ih,parse:sm};_6.exports=Cre;_6.exports.default=Cre;_6.exports.fastUri=Cre});var A6=S(oh=>{"use strict";Object.defineProperty(oh,"__esModule",{value:!0});oh.formatNames=oh.fastFormats=oh.fullFormats=void 0;function ah(e,t){return{validate:e,compare:t}}oh.fullFormats={date:ah(I$e,Dre),time:ah(Nre(!0),Pre),"date-time":ah(S$e(!0),C$e),"iso-time":ah(Nre(),R$e),"iso-date-time":ah(S$e(),x$e),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Nmr,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:Bmr,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:Omr,int32:{type:"number",validate:Lmr},int64:{type:"number",validate:Mmr},float:{type:"number",validate:b$e},double:{type:"number",validate:b$e},password:!0,binary:!0};oh.fastFormats={...oh.fullFormats,date:ah(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Dre),time:ah(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Pre),"date-time":ah(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,C$e),"iso-time":ah(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,R$e),"iso-date-time":ah(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,x$e),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};oh.formatNames=Object.keys(oh.fullFormats);function Imr(e){return e%4===0&&(e%100!==0||e%400===0)}var Rmr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Cmr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function I$e(e){let t=Rmr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&Imr(r)?29:Cmr[n])}function Dre(e,t){if(e&&t)return e>t?1:e23||l>59||e&&!o)return!1;if(s<=23&&i<=59&&a<60)return!0;let d=i-l*c,f=s-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&a<61}}function Pre(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function R$e(e,t){if(!(e&&t))return;let r=wre.exec(e),n=wre.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=Dmr}function Mmr(e){return Number.isInteger(e)}function b$e(){return!0}var kmr=/[^\\]\\Z/;function Bmr(e){if(kmr.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var w$e=S(G1=>{"use strict";Object.defineProperty(G1,"__esModule",{value:!0});G1.formatLimitDefinition=void 0;var Umr=bre(),Of=Tr(),nA=Of.operators,E6={formatMaximum:{okStr:"<=",ok:nA.LTE,fail:nA.GT},formatMinimum:{okStr:">=",ok:nA.GTE,fail:nA.LT},formatExclusiveMaximum:{okStr:"<",ok:nA.LT,fail:nA.GTE},formatExclusiveMinimum:{okStr:">",ok:nA.GT,fail:nA.LTE}},Fmr={message:({keyword:e,schemaCode:t})=>(0,Of.str)`should be ${E6[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Of._)`{comparison: ${E6[e].okStr}, limit: ${t}}`};G1.formatLimitDefinition={keyword:Object.keys(E6),type:"string",schemaType:"string",$data:!0,error:Fmr,code(e){let{gen:t,data:r,schemaCode:n,keyword:s,it:i}=e,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new Umr.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=t.scopeValue("formats",{ref:o.formats,code:a.code.formats}),h=t.const("fmt",(0,Of._)`${f}[${c.schemaCode}]`);e.fail$data((0,Of.or)((0,Of._)`typeof ${h} != "object"`,(0,Of._)`${h} instanceof RegExp`,(0,Of._)`typeof ${h}.compare != "function"`,d(h)))}function l(){let f=c.schema,h=o.formats[f];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let p=t.scopeValue("formats",{key:f,ref:h,code:a.code.formats?(0,Of._)`${a.code.formats}${(0,Of.getProperty)(f)}`:void 0});e.fail$data(d(p))}function d(f){return(0,Of._)`${f}.compare(${r}, ${n}) ${E6[s].fail} 0`}},dependencies:["format"]};var $mr=e=>(e.addKeyword(G1.formatLimitDefinition),e);G1.default=$mr});var P$e=S((qO,D$e)=>{"use strict";Object.defineProperty(qO,"__esModule",{value:!0});var z1=A6(),qmr=w$e(),Lre=Tr(),N$e=new Lre.Name("fullFormats"),Hmr=new Lre.Name("fastFormats"),Mre=(e,t={keywords:!0})=>{if(Array.isArray(t))return O$e(e,t,z1.fullFormats,N$e),e;let[r,n]=t.mode==="fast"?[z1.fastFormats,Hmr]:[z1.fullFormats,N$e],s=t.formats||z1.formatNames;return O$e(e,s,r,n),t.keywords&&(0,qmr.default)(e),e};Mre.get=(e,t="full")=>{let n=(t==="fast"?z1.fastFormats:z1.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function O$e(e,t,r,n){var s,i;(s=(i=e.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,Lre._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}D$e.exports=qO=Mre;Object.defineProperty(qO,"__esModule",{value:!0});qO.default=Mre});var Bre=S((Nqn,L$e)=>{"use strict";var Vmr=bre(),jmr=xre(),Kmr=P$e(),Gmr=LF()({proto:!0}),kre=class e{constructor(t){this.ajv=new Vmr({...t,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:jmr}),Kmr(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=t||{}}addSchema(t,r){let n=t.$id||r;if(t.$id!==void 0&&t.$id[0]==="#"&&(n=r+t.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=Gmr(t);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=t}}validate(t,r){return this.ajv.validate(t,r)}convertSchemaToAjvFormat(t){if(t!==null){t.type==="string"?(t.fjs_type="string",t.type=["string","object"]):Array.isArray(t.type)&&t.type.includes("string")&&!t.type.includes("object")&&(t.fjs_type="string",t.type.push("object"));for(let r in t)typeof t[r]=="object"&&this.convertSchemaToAjvFormat(t[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(t){let r=new e(t.ajvOptions);for(let[n,s]of Object.entries(t.ajvSchemas))r.ajv.addSchema(s,n);return r}};L$e.exports=kre});var Fre=S((Oqn,Ure)=>{"use strict";function zmr(e,t,r,n){let s="";t.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator') -`,s+=`const validatorState = ${JSON.stringify(n.getState())} -`,s+=`const validator = Validator.restoreFromState(validatorState) -`):s+=`const validator = null -`;let{schema:i,...a}=r.getState();return` - 'use strict' - - const Serializer = require('fast-json-stringify/lib/serializer') - const serializerState = ${JSON.stringify(a)} - const serializer = Serializer.restoreFromState(serializerState) - - ${s} - - module.exports = ${e.toString()}(validator, serializer)`}Ure.exports=zmr;Ure.exports.dependencies={Serializer:$ee(),Validator:Bre()}});var k$e=S((Pqn,M$e)=>{"use strict";var{dependencies:Ymr}=Fre(),{Serializer:Qmr,Validator:Dqn}=Ymr,Wmr={mode:"standalone"},Xmr=Qmr.restoreFromState(Wmr),Jmr=null;M$e.exports=function(t,r){function n(i){let a=i&&typeof i.toJSON=="function"?i.toJSON():i;if(a===null)return"{}";let o=!1,c="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(c+=","),c+='"statusCode":',c+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(c+=","),c+='"code":',c+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(c+=","),c+='"error":',c+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(c+=","),c+='"message":',c+=r.asString(a.message)),c+"}"}return n}(Jmr,Xmr)});var HO=S((Lqn,$$e)=>{"use strict";var B$e=require("node:http").STATUS_CODES,Zmr=BZ(),{kReplyHeaders:mv,kReplyNextErrorHandler:y6,kReplyIsRunningOnErrorHook:egr,kReplyHasStatusCode:tgr,kRouteContext:F$e}=Pa(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:rgr,FST_ERR_FAILED_ERROR_SERIALIZATION:ngr}=ko(),{getSchemaSerializer:sgr}=lO(),$re=k$e(),igr={func:ogr,toJSON(){return this.func.name.toString()+"()"}};function agr(e,t,r){e[egr]=!1;let n=e[F$e];if(e[y6]===!1){U$e(t,e,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[mv])}catch(u){o.log.warn({req:o.request,res:o,err:u},u&&u.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(c)});return}let s=e[y6]||n.errorHandler;e[y6]=Object.getPrototypeOf(s),delete e[mv]["content-type"],delete e[mv]["content-length"];let i=s.func;if(!i){e[y6]=!1,U$e(t,e,r);return}let a=i(t,e.request,e);a!==void 0&&(a!==null&&typeof a.then=="function"?Zmr(a,e):e.send(a))}function ogr(e,t,r){if(ugr(e,r),!r[tgr]||r.statusCode===200){let n=e.statusCode||e.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:e},e&&e.message):r.log.error({req:t,res:r,err:e},e&&e.message),r.send(e)}function U$e(e,t,r){let n=t.raw,s=t.statusCode;t[mv]["content-type"]=t[mv]["content-type"]??"application/json; charset=utf-8";let i;try{let a=sgr(t[F$e],s,t[mv]["content-type"]);i=a===!1?$re({error:B$e[s+""],code:e.code,message:e.message,statusCode:s}):a(Object.create(e,{error:{value:B$e[s+""]},message:{value:e.message},statusCode:{value:s}}))}catch(a){t.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),t.code(500),i=$re(new ngr(a.message,e.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=$re(new rgr(typeof i))),t[mv]["content-length"]=""+Buffer.byteLength(i),r(t,i)}function cgr(e=igr,t){if(!t)return e;let r=Object.create(e);return r.func=t,r}function ugr(e,t){let r=t.raw,n=r.statusCode;n=n>=400?n:500,e!=null&&(e.headers!==void 0&&t.headers(e.headers),e.status>=400?n=e.status:e.statusCode>=400&&(n=e.statusCode)),r.statusCode=n}$$e.exports={buildErrorHandler:cgr,handleError:agr}});var R6=S((Mqn,I6)=>{"use strict";var jre=require("node:stream").finished,lgr=require("node:stream").Readable,{kFourOhFourContext:q$e,kPublicRouteContext:H$e,kReplyErrorHandlerCalled:W$e,kReplyHijacked:VO,kReplyStartTime:jO,kReplyEndTime:Gre,kReplySerializer:im,kReplySerializerDefault:S6,kReplyIsError:T6,kReplyHeaders:Ds,kReplyTrailers:La,kReplyHasStatusCode:zre,kReplyIsRunningOnErrorHook:Yre,kReplyNextErrorHandler:dgr,kDisableRequestLogging:X$e,kSchemaResponse:b6,kReplyCacheSerializeFns:sA,kSchemaController:qre,kOptions:fgr,kRouteContext:Br}=Pa(),{onSendHookRunner:J$e,onResponseHookRunner:hgr,preHandlerHookRunner:pgr,preSerializationHookRunner:mgr}=K_(),V$e=qZ()[Symbol.for("internals")],ggr=uO(),Kre=ggr.now,{handleError:j$e}=HO(),{getSchemaSerializer:_gr}=lO(),Hre={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:Agr,FST_ERR_REP_RESPONSE_BODY_CONSUMED:Egr,FST_ERR_REP_ALREADY_SENT:Z$e,FST_ERR_REP_SENT_VALUE:ygr,FST_ERR_SEND_INSIDE_ONERR:vgr,FST_ERR_BAD_STATUS_CODE:Sgr,FST_ERR_BAD_TRAILER_NAME:Tgr,FST_ERR_BAD_TRAILER_VALUE:bgr,FST_ERR_MISSING_SERIALIZATION_FN:Igr,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:Rgr}=ko(),{FSTDEP010:Cgr,FSTDEP013:xgr,FSTDEP019:wgr,FSTDEP020:Ngr}=Xp(),e9e=Object.prototype.toString;function bs(e,t,r){this.raw=e,this[im]=null,this[W$e]=!1,this[T6]=!1,this[Yre]=!1,this.request=t,this[Ds]={},this[La]=null,this[zre]=!1,this[jO]=void 0,this.log=r}bs.props=[];Object.defineProperties(bs.prototype,{[Br]:{get(){return this.request[Br]}},context:{get(){return wgr(),this.request[Br]}},elapsedTime:{get(){return this[jO]===void 0?0:(this[Gre]||Kre())-this[jO]}},server:{get(){return this.request[Br].server}},sent:{enumerable:!0,get(){return(this[VO]||this.raw.writableEnded)===!0},set(e){if(Cgr(),e!==!0)throw new ygr;if(this.sent&&this[VO])throw new Z$e(this.request.url,this.request.method);this[VO]=!0}},statusCode:{get(){return this.raw.statusCode},set(e){this.code(e)}},[H$e]:{get(){return this.request[H$e]}}});bs.prototype.hijack=function(){return this[VO]=!0,this};bs.prototype.send=function(e){if(this[Yre]===!0)throw new vgr;if(this.sent)return this.log.warn({err:new Z$e(this.request.url,this.request.method)}),this;if(e instanceof Error||this[T6]===!0)return this[T6]=!1,KO(this,e,gv),this;if(e===void 0)return gv(this,e),this;let t=this.getHeader("content-type"),r=t!==void 0;if(e!==null){if(typeof e.pipe=="function"||typeof e.getReader=="function"||e9e.call(e)==="[object Response]")return gv(this,e),this;if(e?.buffer instanceof ArrayBuffer){r===!1&&(this[Ds]["content-type"]=Hre.OCTET);let n=Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength);return gv(this,n),this}if(r===!1&&typeof e=="string")return this[Ds]["content-type"]=Hre.PLAIN,gv(this,e),this}if(this[im]!==null){if(typeof e!="string")return K$e(this,e),this;e=this[im](e)}else if(r===!1||t.indexOf("json")>-1){if(r===!1)this[Ds]["content-type"]=Hre.JSON;else if(t.indexOf("charset")===-1){let n=t.trim();n.endsWith(";")?this[Ds]["content-type"]=`${n} charset=utf-8`:this[Ds]["content-type"]=`${n}; charset=utf-8`}if(typeof e!="string")return K$e(this,e),this}return gv(this,e),this};bs.prototype.getHeader=function(e){e=e.toLowerCase();let t=this.raw,r=this[Ds][e];return r===void 0&&t.hasHeader(e)&&(r=t.getHeader(e)),r};bs.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[Ds]}};bs.prototype.hasHeader=function(e){return e=e.toLowerCase(),this[Ds][e]!==void 0||this.raw.hasHeader(e)};bs.prototype.removeHeader=function(e){return delete this[Ds][e.toLowerCase()],this};bs.prototype.header=function(e,t=""){return e=e.toLowerCase(),this[Ds][e]&&e==="set-cookie"?(typeof this[Ds][e]=="string"&&(this[Ds][e]=[this[Ds][e]]),Array.isArray(t)?Array.prototype.push.apply(this[Ds][e],t):this[Ds][e].push(t)):this[Ds][e]=t,this};bs.prototype.headers=function(e){let t=Object.keys(e);for(var r=0;r!==t.length;++r){let n=t[r];this.header(n,e[n])}return this};var Ogr=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);bs.prototype.trailer=function(e,t){if(e=e.toLowerCase(),Ogr.has(e))throw new Tgr(e);if(typeof t!="function")throw new bgr(e,typeof t);return this[La]===null&&(this[La]={}),this[La][e]=t,this};bs.prototype.hasTrailer=function(e){return this[La]?.[e.toLowerCase()]!==void 0};bs.prototype.removeTrailer=function(e){return this[La]===null?this:(this[La][e.toLowerCase()]=void 0,this)};bs.prototype.code=function(e){let t=Number(e);if(isNaN(t)||t<100||t>599)throw new Sgr(e||String(e));return this.raw.statusCode=t,this[zre]=!0,this};bs.prototype.status=bs.prototype.code;bs.prototype.getSerializationFunction=function(e,t){let r;return typeof e=="string"||typeof e=="number"?typeof t=="string"?r=this[Br][b6]?.[e]?.[t]:r=this[Br][b6]?.[e]:typeof e=="object"&&(r=this[Br][sA]?.get(e)),r};bs.prototype.compileSerializationSchema=function(e,t=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[Br][sA]?.has(e))return this[Br][sA].get(e);let o=(this[Br].serializerCompiler||this.server[qre].serializerCompiler||this.server[qre].setupSerializer(this.server[fgr])||this.server[qre].serializerCompiler)({schema:e,method:s,url:i,httpStatus:t,contentType:r});return this[Br][sA]==null&&(this[Br][sA]=new WeakMap),this[Br][sA].set(e,o),o};bs.prototype.serializeInput=function(e,t,r,n){let s=r,i;if(r=typeof t=="string"||typeof t=="number"?t:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[Br][b6]?.[r]?.[n]:i=this[Br][b6]?.[r],i==null)throw n?new Rgr(r,n):new Igr(r)}else this[Br][sA]?.has(t)?i=this[Br][sA].get(t):i=this.compileSerializationSchema(t,r,n);return i(e)};bs.prototype.serialize=function(e){return this[im]!==null?this[im](e):this[Br]&&this[Br][S6]?this[Br][S6](e,this.raw.statusCode):n9e(this[Br],e,this.raw.statusCode)};bs.prototype.serializer=function(e){return this[im]=e,this};bs.prototype.type=function(e){return this[Ds]["content-type"]=e,this};bs.prototype.redirect=function(e,t){return typeof e=="string"&&(t=e,e=this[zre]?this.raw.statusCode:302),this.header("location",t).code(e).send()};bs.prototype.callNotFound=function(){return Bgr(this),this};bs.prototype.getResponseTime=function(){return Ngr(),this.elapsedTime};bs.prototype.then=function(e,t){if(this.sent){e();return}jre(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?t?t(r):this.log&&this.log.warn("unhandled rejection on reply.then"):e()})};function K$e(e,t){e[Br].preSerialization!==null?mgr(e[Br].preSerialization,e.request,e,t,G$e):G$e(null,e.request,e,t)}function G$e(e,t,r,n){if(e!=null){KO(r,e);return}try{r[im]!==null?n=r[im](n):r[Br]&&r[Br][S6]?n=r[Br][S6](n,r.raw.statusCode):n=n9e(r[Br],n,r.raw.statusCode,r[Ds]["content-type"])}catch(s){Dgr(s,r),KO(r,s);return}gv(r,n)}function Dgr(e,t){e.serialization=t[Br].config}function gv(e,t){e[Br].onSend!==null?J$e(e[Br].onSend,e.request,e,t,Pgr):t9e(e,t)}function Pgr(e,t,r,n){e!=null?KO(r,e):t9e(r,n)}function Vre(e,t){let r=e.raw;try{r.writeHead(t,e[Ds])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&e.log.warn(`Reply was already sent, did you forget to "return reply" in the "${e.request.raw.url}" (${e.request.raw.method}) route?`),n}}function t9e(e,t){let r=e.raw,n=e.request;if(e[La]!==null){let a=Object.keys(e[La]),o="";for(let c of a)typeof e[La][c]=="function"&&(o+=" ",o+=c);e.header("Transfer-Encoding","chunked"),e.header("Trailer",o.trim())}let s=e9e.call(t)==="[object Response]";s&&typeof t.status=="number"&&e.code(t.status);let i=r.statusCode;if(t==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&e[La]===null&&(e[Ds]["content-length"]="0"),Vre(e,i),v6(t,r,e);return}if(i>=100&&i<200||i===204){e.removeHeader("content-type"),e.removeHeader("content-length"),Vre(e,i),v6(void 0,r,e),typeof t.resume=="function"&&(t.on("error",s9e),t.resume());return}if(typeof t.pipe=="function"){r9e(t,r,e);return}if(typeof t.getReader=="function"){Y$e(t,r,e);return}if(s){if(typeof t.headers=="object"&&typeof t.headers.forEach=="function")for(let[a,o]of t.headers)e.header(a,o);if(t.body!=null){if(t.bodyUsed)throw new Egr;Y$e(t.body,r,e)}return}if(typeof t!="string"&&!Buffer.isBuffer(t))throw new Agr(typeof t);if(e[La]===null){let a=e[Ds]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(t))&&(e[Ds]["content-length"]=""+Buffer.byteLength(t))}Vre(e,i),r.write(t),v6(t,r,e)}function z$e(e,t,r){t.code==="ERR_STREAM_PREMATURE_CLOSE"?e[X$e]||e.info({res:r},"stream closed prematurely"):e.warn({err:t},"response terminated with an error with headers already sent")}function Y$e(e,t,r){let n=lgr.fromWeb(e);r9e(n,t,r)}function r9e(e,t,r){let n=!0,s=!1;if(Lgr(e,t,r),jre(e,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(t.headersSent||r.request.raw.aborted===!0?(s||(s=!0,z$e(r.log,i,t)),t.destroy()):KO(r,i))}),jre(t,function(i){n&&(i!=null&&t.headersSent&&!s&&(s=!0,z$e(r.log,i,t)),typeof e.destroy=="function"?e.destroy():typeof e.close=="function"?e.close(s9e):typeof e.abort=="function"?e.abort():r.log.warn("stream payload does not end properly"))}),t.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[Ds])t.setHeader(i,r[Ds][i]);e.pipe(t)}function v6(e,t,r){if(r[La]===null){t.end(null,null,null);return}let n=Object.keys(r[La]),s={},i=0,a=!0;function o(){i===0&&(t.addTrailers(s),t.end(null,null,null))}for(let c of n){let u=function(d,f){i++,d?r.log.debug(d):s[c]=f,process.nextTick(o)};if(typeof r[La][c]!="function")continue;a=!1,i--;let l=r[La][c](r,e,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(xgr(),u(null,l))}a&&t.end(null,null,null)}function Lgr(e,t,r){r[La]!==null&&e.on("end",()=>v6(null,t,r))}function KO(e,t,r){e[Br].onError!==null&&!e[dgr]?(e[Yre]=!0,J$e(e[Br].onError,e.request,e,t,()=>j$e(e,t,r))):j$e(e,t,r)}function Mgr(e){e[jO]=Kre();let t=r=>{e[Gre]=Kre(),e.raw.removeListener("finish",t),e.raw.removeListener("error",t);let n=e[Br];n&&n.onResponse!==null?hgr(n.onResponse,e.request,e,Q$e):Q$e(r,e.request,e)};e.raw.on("finish",t),e.raw.on("error",t)}function Q$e(e,t,r){if(r.log[X$e])return;let n=r.elapsedTime;if(e!=null){r.log.error({res:r,err:e,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function kgr(e){let t=e.props.slice();function r(n,s,i){this.raw=n,this[T6]=!1,this[W$e]=!1,this[VO]=!1,this[im]=null,this.request=s,this[Ds]={},this[La]=null,this[jO]=void 0,this[Gre]=void 0,this.log=i;for(var a,o=0;o{"use strict";i9e.exports=Ugr;function Ugr(e){if(!e)throw new TypeError("argument req is required");var t=$gr(e.headers["x-forwarded-for"]||""),r=Fgr(e),n=[r].concat(t);return n}function Fgr(e){return e.socket?e.socket.remoteAddress:e.connection.remoteAddress}function $gr(e){for(var t=e.length,r=[],n=e.length,s=e.length-1;s>=0;s--)switch(e.charCodeAt(s)){case 32:n===t&&(n=t=s);break;case 44:n!==t&&r.push(e.substring(n,t)),n=t=s;break;default:n=s;break}return n!==t&&r.push(e.substring(n,t)),r}});var c9e=S((o9e,GO)=>{(function(){var e,t,r,n,s,i,a,o,c;t={},o=this,typeof GO<"u"&&GO!==null&&GO.exports?GO.exports=t:o.ipaddr=t,a=function(u,l,d,f){var h,p;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(h=0;f>0;){if(p=d-f,p<0&&(p=0),u[h]>>p!==l[h]>>p)return!1;f-=d,h+=1}return!0},t.subnetMatch=function(u,l,d){var f,h,p,m,_;d==null&&(d="unicast");for(p in l)for(m=l[p],m[0]&&!(m[0]instanceof Array)&&(m=[m]),f=0,h=m.length;f=0;d=f+=-1)if(h=this.octets[d],h in _){if(m=_[h],p&&m!==0)return null;m!==8&&(p=!0),l+=m}else return null;return 32-l},u}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},t.IPv4.parser=function(u){var l,d,f,h,p;if(d=function(m){return m[0]==="0"&&m[1]!=="x"?parseInt(m,8):parseInt(m)},l=u.match(n.fourOctet))return function(){var m,_,g,y;for(g=l.slice(1,6),y=[],m=0,_=g.length;m<_;m++)f=g[m],y.push(d(f));return y}();if(l=u.match(n.longValue)){if(p=d(l[1]),p>4294967295||p<0)throw new Error("ipaddr: address outside defined range");return function(){var m,_;for(_=[],h=m=0;m<=24;h=m+=8)_.push(p>>h&255);return _}().reverse()}else return null},t.IPv6=function(){function u(l,d){var f,h,p,m,_,g;if(l.length===16)for(this.parts=[],f=h=0;h<=14;f=h+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,p=0,m=g.length;pd&&(l=f.index,d=f[0].length);return d<0?p:p.substring(0,l)+"::"+p.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,h,p;for(l=[],p=this.parts,d=0,f=p.length;d>8),l.push(h&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var h,p,m,_;for(m=this.parts,_=[],h=0,p=m.length;h>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,h,p,m,_;for(_={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,p=!1,d=f=7;f>=0;d=f+=-1)if(h=this.parts[d],h in _){if(m=_[h],p&&m!==0)return null;m!==16&&(p=!0),l+=m}else return null;return 128-l},u}(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},e=function(u,l){var d,f,h,p,m,_;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(_=(u.match(i.zoneIndex)||[])[0],_&&(_=_.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(m=l-d,p=":";m--;)p+="0:";return u=u.replace("::",p),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,y,A,E;for(A=u.split(":"),E=[],g=0,y=A.length;g=0&&l<=32))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},t.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,f;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(f=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},t.isValid=function(u){return t.IPv6.isValid(u)||t.IPv4.isValid(u)},t.parse=function(u){if(t.IPv6.isValid(u))return t.IPv6.parse(u);if(t.IPv4.isValid(u))return t.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},t.parseCIDR=function(u){var l;try{return t.IPv6.parseCIDR(u)}catch(d){l=d;try{return t.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},t.fromByteArray=function(u){var l;if(l=u.length,l===4)return new t.IPv4(u);if(l===16)return new t.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},t.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(o9e)});var h9e=S((Bqn,w6)=>{"use strict";w6.exports=zgr;w6.exports.all=d9e;w6.exports.compile=f9e;var qgr=a9e(),l9e=c9e(),Hgr=/^[0-9]+$/,C6=l9e.isValid,x6=l9e.parse,u9e={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function d9e(e,t){var r=qgr(e);if(!t)return r;typeof t!="function"&&(t=f9e(t));for(var n=0;ns)throw new TypeError("invalid range on address: "+e);return[n,i]}function Ggr(e){var t=x6(e),r=t.kind();return r==="ipv4"?t.prefixLengthFromSubnetMask():null}function zgr(e,t){if(!e)throw new TypeError("req argument is required");if(!t)throw new TypeError("trust argument is required");var r=d9e(e,t),n=r[r.length-1];return n}function Ygr(){return!1}function Qgr(e){return function(r){if(!C6(r))return!1;for(var n=x6(r),s,i=n.kind(),a=0;a{"use strict";var Xgr="2.0.0",Jgr=Number.MAX_SAFE_INTEGER||9007199254740991,Zgr=16,e_r=250,t_r=["major","premajor","minor","preminor","patch","prepatch","prerelease"];p9e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Zgr,MAX_SAFE_BUILD_LENGTH:e_r,MAX_SAFE_INTEGER:Jgr,RELEASE_TYPES:t_r,SEMVER_SPEC_VERSION:Xgr,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var YO=S((Fqn,m9e)=>{"use strict";var r_r=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};m9e.exports=r_r});var Y1=S((ch,g9e)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Qre,MAX_SAFE_BUILD_LENGTH:n_r,MAX_LENGTH:s_r}=zO(),i_r=YO();ch=g9e.exports={};var a_r=ch.re=[],o_r=ch.safeRe=[],dt=ch.src=[],c_r=ch.safeSrc=[],ft=ch.t={},u_r=0,Wre="[a-zA-Z0-9-]",l_r=[["\\s",1],["\\d",s_r],[Wre,n_r]],d_r=e=>{for(let[t,r]of l_r)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},lr=(e,t,r)=>{let n=d_r(t),s=u_r++;i_r(e,s,t),ft[e]=s,dt[s]=t,c_r[s]=n,a_r[s]=new RegExp(t,r?"g":void 0),o_r[s]=new RegExp(n,r?"g":void 0)};lr("NUMERICIDENTIFIER","0|[1-9]\\d*");lr("NUMERICIDENTIFIERLOOSE","\\d+");lr("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Wre}*`);lr("MAINVERSION",`(${dt[ft.NUMERICIDENTIFIER]})\\.(${dt[ft.NUMERICIDENTIFIER]})\\.(${dt[ft.NUMERICIDENTIFIER]})`);lr("MAINVERSIONLOOSE",`(${dt[ft.NUMERICIDENTIFIERLOOSE]})\\.(${dt[ft.NUMERICIDENTIFIERLOOSE]})\\.(${dt[ft.NUMERICIDENTIFIERLOOSE]})`);lr("PRERELEASEIDENTIFIER",`(?:${dt[ft.NONNUMERICIDENTIFIER]}|${dt[ft.NUMERICIDENTIFIER]})`);lr("PRERELEASEIDENTIFIERLOOSE",`(?:${dt[ft.NONNUMERICIDENTIFIER]}|${dt[ft.NUMERICIDENTIFIERLOOSE]})`);lr("PRERELEASE",`(?:-(${dt[ft.PRERELEASEIDENTIFIER]}(?:\\.${dt[ft.PRERELEASEIDENTIFIER]})*))`);lr("PRERELEASELOOSE",`(?:-?(${dt[ft.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dt[ft.PRERELEASEIDENTIFIERLOOSE]})*))`);lr("BUILDIDENTIFIER",`${Wre}+`);lr("BUILD",`(?:\\+(${dt[ft.BUILDIDENTIFIER]}(?:\\.${dt[ft.BUILDIDENTIFIER]})*))`);lr("FULLPLAIN",`v?${dt[ft.MAINVERSION]}${dt[ft.PRERELEASE]}?${dt[ft.BUILD]}?`);lr("FULL",`^${dt[ft.FULLPLAIN]}$`);lr("LOOSEPLAIN",`[v=\\s]*${dt[ft.MAINVERSIONLOOSE]}${dt[ft.PRERELEASELOOSE]}?${dt[ft.BUILD]}?`);lr("LOOSE",`^${dt[ft.LOOSEPLAIN]}$`);lr("GTLT","((?:<|>)?=?)");lr("XRANGEIDENTIFIERLOOSE",`${dt[ft.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);lr("XRANGEIDENTIFIER",`${dt[ft.NUMERICIDENTIFIER]}|x|X|\\*`);lr("XRANGEPLAIN",`[v=\\s]*(${dt[ft.XRANGEIDENTIFIER]})(?:\\.(${dt[ft.XRANGEIDENTIFIER]})(?:\\.(${dt[ft.XRANGEIDENTIFIER]})(?:${dt[ft.PRERELEASE]})?${dt[ft.BUILD]}?)?)?`);lr("XRANGEPLAINLOOSE",`[v=\\s]*(${dt[ft.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dt[ft.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dt[ft.XRANGEIDENTIFIERLOOSE]})(?:${dt[ft.PRERELEASELOOSE]})?${dt[ft.BUILD]}?)?)?`);lr("XRANGE",`^${dt[ft.GTLT]}\\s*${dt[ft.XRANGEPLAIN]}$`);lr("XRANGELOOSE",`^${dt[ft.GTLT]}\\s*${dt[ft.XRANGEPLAINLOOSE]}$`);lr("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Qre}})(?:\\.(\\d{1,${Qre}}))?(?:\\.(\\d{1,${Qre}}))?`);lr("COERCE",`${dt[ft.COERCEPLAIN]}(?:$|[^\\d])`);lr("COERCEFULL",dt[ft.COERCEPLAIN]+`(?:${dt[ft.PRERELEASE]})?(?:${dt[ft.BUILD]})?(?:$|[^\\d])`);lr("COERCERTL",dt[ft.COERCE],!0);lr("COERCERTLFULL",dt[ft.COERCEFULL],!0);lr("LONETILDE","(?:~>?)");lr("TILDETRIM",`(\\s*)${dt[ft.LONETILDE]}\\s+`,!0);ch.tildeTrimReplace="$1~";lr("TILDE",`^${dt[ft.LONETILDE]}${dt[ft.XRANGEPLAIN]}$`);lr("TILDELOOSE",`^${dt[ft.LONETILDE]}${dt[ft.XRANGEPLAINLOOSE]}$`);lr("LONECARET","(?:\\^)");lr("CARETTRIM",`(\\s*)${dt[ft.LONECARET]}\\s+`,!0);ch.caretTrimReplace="$1^";lr("CARET",`^${dt[ft.LONECARET]}${dt[ft.XRANGEPLAIN]}$`);lr("CARETLOOSE",`^${dt[ft.LONECARET]}${dt[ft.XRANGEPLAINLOOSE]}$`);lr("COMPARATORLOOSE",`^${dt[ft.GTLT]}\\s*(${dt[ft.LOOSEPLAIN]})$|^$`);lr("COMPARATOR",`^${dt[ft.GTLT]}\\s*(${dt[ft.FULLPLAIN]})$|^$`);lr("COMPARATORTRIM",`(\\s*)${dt[ft.GTLT]}\\s*(${dt[ft.LOOSEPLAIN]}|${dt[ft.XRANGEPLAIN]})`,!0);ch.comparatorTrimReplace="$1$2$3";lr("HYPHENRANGE",`^\\s*(${dt[ft.XRANGEPLAIN]})\\s+-\\s+(${dt[ft.XRANGEPLAIN]})\\s*$`);lr("HYPHENRANGELOOSE",`^\\s*(${dt[ft.XRANGEPLAINLOOSE]})\\s+-\\s+(${dt[ft.XRANGEPLAINLOOSE]})\\s*$`);lr("STAR","(<|>)?=?\\s*\\*");lr("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");lr("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var N6=S(($qn,_9e)=>{"use strict";var f_r=Object.freeze({loose:!0}),h_r=Object.freeze({}),p_r=e=>e?typeof e!="object"?f_r:e:h_r;_9e.exports=p_r});var Xre=S((qqn,y9e)=>{"use strict";var A9e=/^[0-9]+$/,E9e=(e,t)=>{if(typeof e=="number"&&typeof t=="number")return e===t?0:eE9e(t,e);y9e.exports={compareIdentifiers:E9e,rcompareIdentifiers:m_r}});var qo=S((Hqn,S9e)=>{"use strict";var O6=YO(),{MAX_LENGTH:v9e,MAX_SAFE_INTEGER:D6}=zO(),{safeRe:P6,t:L6}=Y1(),g_r=N6(),{compareIdentifiers:Jre}=Xre(),Zre=class e{constructor(t,r){if(r=g_r(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>v9e)throw new TypeError(`version is longer than ${v9e} characters`);O6("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?P6[L6.LOOSE]:P6[L6.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>D6||this.major<0)throw new TypeError("Invalid major version");if(this.minor>D6||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>D6||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&it.major?1:this.minort.minor?1:this.patcht.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=t.prerelease[r];if(O6("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return Jre(n,s)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let n=this.build[r],s=t.build[r];if(O6("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return Jre(n,s)}while(++r)}inc(t,r,n){if(t.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?P6[L6.PRERELEASELOOSE]:P6[L6.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let i=[r,s];n===!1&&(i=[r]),Jre(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};S9e.exports=Zre});var _v=S((Vqn,b9e)=>{"use strict";var T9e=qo(),__r=(e,t,r=!1)=>{if(e instanceof T9e)return e;try{return new T9e(e,t)}catch(n){if(!r)return null;throw n}};b9e.exports=__r});var R9e=S((jqn,I9e)=>{"use strict";var A_r=_v(),E_r=(e,t)=>{let r=A_r(e,t);return r?r.version:null};I9e.exports=E_r});var x9e=S((Kqn,C9e)=>{"use strict";var y_r=_v(),v_r=(e,t)=>{let r=y_r(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};C9e.exports=v_r});var O9e=S((Gqn,N9e)=>{"use strict";var w9e=qo(),S_r=(e,t,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new w9e(e instanceof w9e?e.version:e,r).inc(t,n,s).version}catch{return null}};N9e.exports=S_r});var L9e=S((zqn,P9e)=>{"use strict";var D9e=_v(),T_r=(e,t)=>{let r=D9e(e,null,!0),n=D9e(t,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,a=i?r:n,o=i?n:r,c=!!a.prerelease.length;if(!!o.prerelease.length&&!c){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};P9e.exports=T_r});var k9e=S((Yqn,M9e)=>{"use strict";var b_r=qo(),I_r=(e,t)=>new b_r(e,t).major;M9e.exports=I_r});var U9e=S((Qqn,B9e)=>{"use strict";var R_r=qo(),C_r=(e,t)=>new R_r(e,t).minor;B9e.exports=C_r});var $9e=S((Wqn,F9e)=>{"use strict";var x_r=qo(),w_r=(e,t)=>new x_r(e,t).patch;F9e.exports=w_r});var H9e=S((Xqn,q9e)=>{"use strict";var N_r=_v(),O_r=(e,t)=>{let r=N_r(e,t);return r&&r.prerelease.length?r.prerelease:null};q9e.exports=O_r});var pd=S((Jqn,j9e)=>{"use strict";var V9e=qo(),D_r=(e,t,r)=>new V9e(e,r).compare(new V9e(t,r));j9e.exports=D_r});var G9e=S((Zqn,K9e)=>{"use strict";var P_r=pd(),L_r=(e,t,r)=>P_r(t,e,r);K9e.exports=L_r});var Y9e=S((eHn,z9e)=>{"use strict";var M_r=pd(),k_r=(e,t)=>M_r(e,t,!0);z9e.exports=k_r});var M6=S((tHn,W9e)=>{"use strict";var Q9e=qo(),B_r=(e,t,r)=>{let n=new Q9e(e,r),s=new Q9e(t,r);return n.compare(s)||n.compareBuild(s)};W9e.exports=B_r});var J9e=S((rHn,X9e)=>{"use strict";var U_r=M6(),F_r=(e,t)=>e.sort((r,n)=>U_r(r,n,t));X9e.exports=F_r});var eqe=S((nHn,Z9e)=>{"use strict";var $_r=M6(),q_r=(e,t)=>e.sort((r,n)=>$_r(n,r,t));Z9e.exports=q_r});var QO=S((sHn,tqe)=>{"use strict";var H_r=pd(),V_r=(e,t,r)=>H_r(e,t,r)>0;tqe.exports=V_r});var k6=S((iHn,rqe)=>{"use strict";var j_r=pd(),K_r=(e,t,r)=>j_r(e,t,r)<0;rqe.exports=K_r});var ene=S((aHn,nqe)=>{"use strict";var G_r=pd(),z_r=(e,t,r)=>G_r(e,t,r)===0;nqe.exports=z_r});var tne=S((oHn,sqe)=>{"use strict";var Y_r=pd(),Q_r=(e,t,r)=>Y_r(e,t,r)!==0;sqe.exports=Q_r});var B6=S((cHn,iqe)=>{"use strict";var W_r=pd(),X_r=(e,t,r)=>W_r(e,t,r)>=0;iqe.exports=X_r});var U6=S((uHn,aqe)=>{"use strict";var J_r=pd(),Z_r=(e,t,r)=>J_r(e,t,r)<=0;aqe.exports=Z_r});var rne=S((lHn,oqe)=>{"use strict";var eAr=ene(),tAr=tne(),rAr=QO(),nAr=B6(),sAr=k6(),iAr=U6(),aAr=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return eAr(e,r,n);case"!=":return tAr(e,r,n);case">":return rAr(e,r,n);case">=":return nAr(e,r,n);case"<":return sAr(e,r,n);case"<=":return iAr(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};oqe.exports=aAr});var uqe=S((dHn,cqe)=>{"use strict";var oAr=qo(),cAr=_v(),{safeRe:F6,t:$6}=Y1(),uAr=(e,t)=>{if(e instanceof oAr)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?F6[$6.COERCEFULL]:F6[$6.COERCE]);else{let c=t.includePrerelease?F6[$6.COERCERTLFULL]:F6[$6.COERCERTL],u;for(;(u=c.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",a=t.includePrerelease&&r[5]?`-${r[5]}`:"",o=t.includePrerelease&&r[6]?`+${r[6]}`:"";return cAr(`${n}.${s}.${i}${a}${o}`,t)};cqe.exports=uAr});var dqe=S((fHn,lqe)=>{"use strict";var nne=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(t,r)}return this}};lqe.exports=nne});var md=S((hHn,mqe)=>{"use strict";var lAr=/\s+/g,sne=class e{constructor(t,r){if(r=fAr(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof ine)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(lAr," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!hqe(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&EAr(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&_Ar)|(this.options.loose&&AAr))+":"+t,s=fqe.get(n);if(s)return s;let i=this.options.loose,a=i?Lc[Ho.HYPHENRANGELOOSE]:Lc[Ho.HYPHENRANGE];t=t.replace(a,wAr(this.options.includePrerelease)),js("hyphen replace",t),t=t.replace(Lc[Ho.COMPARATORTRIM],pAr),js("comparator trim",t),t=t.replace(Lc[Ho.TILDETRIM],mAr),js("tilde trim",t),t=t.replace(Lc[Ho.CARETTRIM],gAr),js("caret trim",t);let o=t.split(" ").map(d=>yAr(d,this.options)).join(" ").split(/\s+/).map(d=>xAr(d,this.options));i&&(o=o.filter(d=>(js("loose invalid filter",d,this.options),!!d.match(Lc[Ho.COMPARATORLOOSE])))),js("range list",o);let c=new Map,u=o.map(d=>new ine(d,this.options));for(let d of u){if(hqe(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return fqe.set(n,l),l}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>pqe(n,r)&&t.set.some(s=>pqe(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new hAr(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",EAr=e=>e.value==="",pqe=(e,t)=>{let r=!0,n=e.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,t)),s=n.pop();return r},yAr=(e,t)=>(e=e.replace(Lc[Ho.BUILD],""),js("comp",e,t),e=TAr(e,t),js("caret",e),e=vAr(e,t),js("tildes",e),e=IAr(e,t),js("xrange",e),e=CAr(e,t),js("stars",e),e),Mc=e=>!e||e.toLowerCase()==="x"||e==="*",vAr=(e,t)=>e.trim().split(/\s+/).map(r=>SAr(r,t)).join(" "),SAr=(e,t)=>{let r=t.loose?Lc[Ho.TILDELOOSE]:Lc[Ho.TILDE];return e.replace(r,(n,s,i,a,o)=>{js("tilde",e,n,s,i,a,o);let c;return Mc(s)?c="":Mc(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:Mc(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(js("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,js("tilde return",c),c})},TAr=(e,t)=>e.trim().split(/\s+/).map(r=>bAr(r,t)).join(" "),bAr=(e,t)=>{js("caret",e,t);let r=t.loose?Lc[Ho.CARETLOOSE]:Lc[Ho.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(s,i,a,o,c)=>{js("caret",e,s,i,a,o,c);let u;return Mc(i)?u="":Mc(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:Mc(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(js("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(js("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),js("caret return",u),u})},IAr=(e,t)=>(js("replaceXRanges",e,t),e.split(/\s+/).map(r=>RAr(r,t)).join(" ")),RAr=(e,t)=>{e=e.trim();let r=t.loose?Lc[Ho.XRANGELOOSE]:Lc[Ho.XRANGE];return e.replace(r,(n,s,i,a,o,c)=>{js("xRange",e,n,s,i,a,o,c);let u=Mc(i),l=u||Mc(a),d=l||Mc(o),f=d;return s==="="&&f&&(s=""),c=t.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),js("xRange return",n),n})},CAr=(e,t)=>(js("replaceStars",e,t),e.trim().replace(Lc[Ho.STAR],"")),xAr=(e,t)=>(js("replaceGTE0",e,t),e.trim().replace(Lc[t.includePrerelease?Ho.GTE0PRE:Ho.GTE0],"")),wAr=e=>(t,r,n,s,i,a,o,c,u,l,d,f)=>(Mc(n)?r="":Mc(s)?r=`>=${n}.0.0${e?"-0":""}`:Mc(i)?r=`>=${n}.${s}.0${e?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,Mc(u)?c="":Mc(l)?c=`<${+u+1}.0.0-0`:Mc(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:e?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),NAr=(e,t,r)=>{for(let n=0;n0){let s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}});var WO=S((pHn,vqe)=>{"use strict";var XO=Symbol("SemVer ANY"),cne=class e{static get ANY(){return XO}constructor(t,r){if(r=gqe(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),one("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===XO?this.value="":this.value=this.operator+this.semver.version,one("comp",this)}parse(t){let r=this.options.loose?_qe[Aqe.COMPARATORLOOSE]:_qe[Aqe.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Eqe(n[2],this.options.loose):this.semver=XO}toString(){return this.value}test(t){if(one("Comparator.test",t,this.options.loose),this.semver===XO||t===XO)return!0;if(typeof t=="string")try{t=new Eqe(t,this.options)}catch{return!1}return ane(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new yqe(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new yqe(this.value,r).test(t.semver):(r=gqe(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||ane(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||ane(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};vqe.exports=cne;var gqe=N6(),{safeRe:_qe,t:Aqe}=Y1(),ane=rne(),one=YO(),Eqe=qo(),yqe=md()});var JO=S((mHn,Sqe)=>{"use strict";var OAr=md(),DAr=(e,t,r)=>{try{t=new OAr(t,r)}catch{return!1}return t.test(e)};Sqe.exports=DAr});var bqe=S((gHn,Tqe)=>{"use strict";var PAr=md(),LAr=(e,t)=>new PAr(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));Tqe.exports=LAr});var Rqe=S((_Hn,Iqe)=>{"use strict";var MAr=qo(),kAr=md(),BAr=(e,t,r)=>{let n=null,s=null,i=null;try{i=new kAr(t,r)}catch{return null}return e.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new MAr(n,r))}),n};Iqe.exports=BAr});var xqe=S((AHn,Cqe)=>{"use strict";var UAr=qo(),FAr=md(),$Ar=(e,t,r)=>{let n=null,s=null,i=null;try{i=new FAr(t,r)}catch{return null}return e.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new UAr(n,r))}),n};Cqe.exports=$Ar});var Oqe=S((EHn,Nqe)=>{"use strict";var une=qo(),qAr=md(),wqe=QO(),HAr=(e,t)=>{e=new qAr(e,t);let r=new une("0.0.0");if(e.test(r)||(r=new une("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let o=new une(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||wqe(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||wqe(r,i))&&(r=i)}return r&&e.test(r)?r:null};Nqe.exports=HAr});var Pqe=S((yHn,Dqe)=>{"use strict";var VAr=md(),jAr=(e,t)=>{try{return new VAr(e,t).range||"*"}catch{return null}};Dqe.exports=jAr});var q6=S((vHn,Bqe)=>{"use strict";var KAr=qo(),kqe=WO(),{ANY:GAr}=kqe,zAr=md(),YAr=JO(),Lqe=QO(),Mqe=k6(),QAr=U6(),WAr=B6(),XAr=(e,t,r,n)=>{e=new KAr(e,n),t=new zAr(t,n);let s,i,a,o,c;switch(r){case">":s=Lqe,i=QAr,a=Mqe,o=">",c=">=";break;case"<":s=Mqe,i=WAr,a=Lqe,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(YAr(e,t,n))return!1;for(let u=0;u{h.semver===GAr&&(h=new kqe(">=0.0.0")),d=d||h,f=f||h,s(h.semver,d.semver,n)?d=h:a(h.semver,f.semver,n)&&(f=h)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(e,f.semver))return!1;if(f.operator===c&&a(e,f.semver))return!1}return!0};Bqe.exports=XAr});var Fqe=S((SHn,Uqe)=>{"use strict";var JAr=q6(),ZAr=(e,t,r)=>JAr(e,t,">",r);Uqe.exports=ZAr});var qqe=S((THn,$qe)=>{"use strict";var eEr=q6(),tEr=(e,t,r)=>eEr(e,t,"<",r);$qe.exports=tEr});var jqe=S((bHn,Vqe)=>{"use strict";var Hqe=md(),rEr=(e,t,r)=>(e=new Hqe(e,r),t=new Hqe(t,r),e.intersects(t,r));Vqe.exports=rEr});var Gqe=S((IHn,Kqe)=>{"use strict";var nEr=JO(),sEr=pd();Kqe.exports=(e,t,r)=>{let n=[],s=null,i=null,a=e.sort((l,d)=>sEr(l,d,r));for(let l of a)nEr(l,t,r)?(i=l,s||(s=l)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let c=o.join(" || "),u=typeof t.raw=="string"?t.raw:String(t);return c.length{"use strict";var zqe=md(),dne=WO(),{ANY:lne}=dne,ZO=JO(),fne=pd(),iEr=(e,t,r={})=>{if(e===t)return!0;e=new zqe(e,r),t=new zqe(t,r);let n=!1;e:for(let s of e.set){for(let i of t.set){let a=oEr(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},aEr=[new dne(">=0.0.0-0")],Yqe=[new dne(">=0.0.0")],oEr=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===lne){if(t.length===1&&t[0].semver===lne)return!0;r.includePrerelease?e=aEr:e=Yqe}if(t.length===1&&t[0].semver===lne){if(r.includePrerelease)return!0;t=Yqe}let n=new Set,s,i;for(let h of e)h.operator===">"||h.operator===">="?s=Qqe(s,h,r):h.operator==="<"||h.operator==="<="?i=Wqe(i,h,r):n.add(h.semver);if(n.size>1)return null;let a;if(s&&i){if(a=fne(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let h of n){if(s&&!ZO(h,String(s),r)||i&&!ZO(h,String(i),r))return null;for(let p of t)if(!ZO(h,String(p),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let h of t){if(l=l||h.operator===">"||h.operator===">=",u=u||h.operator==="<"||h.operator==="<=",s){if(f&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===f.major&&h.semver.minor===f.minor&&h.semver.patch===f.patch&&(f=!1),h.operator===">"||h.operator===">="){if(o=Qqe(s,h,r),o===h&&o!==s)return!1}else if(s.operator===">="&&!ZO(s.semver,String(h),r))return!1}if(i){if(d&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===d.major&&h.semver.minor===d.minor&&h.semver.patch===d.patch&&(d=!1),h.operator==="<"||h.operator==="<="){if(c=Wqe(i,h,r),c===h&&c!==i)return!1}else if(i.operator==="<="&&!ZO(i.semver,String(h),r))return!1}if(!h.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},Qqe=(e,t,r)=>{if(!e)return t;let n=fne(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},Wqe=(e,t,r)=>{if(!e)return t;let n=fne(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};Xqe.exports=iEr});var pne=S((CHn,tHe)=>{"use strict";var hne=Y1(),Zqe=zO(),cEr=qo(),eHe=Xre(),uEr=_v(),lEr=R9e(),dEr=x9e(),fEr=O9e(),hEr=L9e(),pEr=k9e(),mEr=U9e(),gEr=$9e(),_Er=H9e(),AEr=pd(),EEr=G9e(),yEr=Y9e(),vEr=M6(),SEr=J9e(),TEr=eqe(),bEr=QO(),IEr=k6(),REr=ene(),CEr=tne(),xEr=B6(),wEr=U6(),NEr=rne(),OEr=uqe(),DEr=WO(),PEr=md(),LEr=JO(),MEr=bqe(),kEr=Rqe(),BEr=xqe(),UEr=Oqe(),FEr=Pqe(),$Er=q6(),qEr=Fqe(),HEr=qqe(),VEr=jqe(),jEr=Gqe(),KEr=Jqe();tHe.exports={parse:uEr,valid:lEr,clean:dEr,inc:fEr,diff:hEr,major:pEr,minor:mEr,patch:gEr,prerelease:_Er,compare:AEr,rcompare:EEr,compareLoose:yEr,compareBuild:vEr,sort:SEr,rsort:TEr,gt:bEr,lt:IEr,eq:REr,neq:CEr,gte:xEr,lte:wEr,cmp:NEr,coerce:OEr,Comparator:DEr,Range:PEr,satisfies:LEr,toComparators:MEr,maxSatisfying:kEr,minSatisfying:BEr,minVersion:UEr,validRange:FEr,outside:$Er,gtr:qEr,ltr:HEr,intersects:VEr,simplifyRange:jEr,subset:KEr,SemVer:cEr,re:hne.re,src:hne.src,tokens:hne.t,SEMVER_SPEC_VERSION:Zqe.SEMVER_SPEC_VERSION,RELEASE_TYPES:Zqe.RELEASE_TYPES,compareIdentifiers:eHe.compareIdentifiers,rcompareIdentifiers:eHe.rcompareIdentifiers}});var V6=S((xHn,Ane)=>{"use strict";var H6=h9e(),GEr=pne(),{FSTDEP005:zEr,FSTDEP012:YEr,FSTDEP015:QEr,FSTDEP016:WEr,FSTDEP017:XEr,FSTDEP018:JEr}=Xp(),{kHasBeenDecorated:ZEr,kSchemaBody:eyr,kSchemaHeaders:tyr,kSchemaParams:ryr,kSchemaQuerystring:rHe,kSchemaController:mne,kOptions:nyr,kRequestCacheValidateFns:iA,kRouteContext:Ui,kPublicRouteContext:nHe,kRequestOriginalUrl:gne}=Pa(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:syr}=ko(),sHe={body:eyr,headers:tyr,params:ryr,querystring:rHe,query:rHe};function _ne(e,t,r,n,s,i){this.id=e,this[Ui]=i,this.params=t,this.raw=r,this.query=n,this.log=s,this.body=void 0}_ne.props=[];function iyr(e){if(typeof e=="function")return e;if(e===!0)return function(){return!0};if(typeof e=="number")return function(t,r){return rr.trim());return H6.compile(t)}return H6.compile(e)}function ayr(e,t){return t?oyr(e,t):aHe(e)}function aHe(e){let t=e.props.slice();function r(n,s,i,a,o,c){this.id=n,this[Ui]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;le.config},schema:{get:()=>e.schema}}),Object.freeze(s)}},routerMethod:{get(){return JEr(),this[Ui].config?.method}},routeConfig:{get(){return WEr(),this[Ui][nHe]?.config}},routeSchema:{get(){return QEr(),this[Ui][nHe].schema}},is404:{get(){return this[Ui].config?.url===void 0}},connection:{get(){return GEr.gte(process.versions.node,"13.0.0")&&zEr(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(e){this.additionalHeaders=e}},getValidationFunction:{value:function(e){if(typeof e=="string"){let t=sHe[e];return this[Ui][t]}else if(typeof e=="object")return this[Ui][iA]?.get(e)}},compileValidationSchema:{value:function(e,t=null){let{method:r,url:n}=this;if(this[Ui][iA]?.has(e))return this[Ui][iA].get(e);let i=(this[Ui].validatorCompiler||this.server[mne].validatorCompiler||this.server[mne].setupValidator(this.server[nyr])||this.server[mne].validatorCompiler)({schema:e,method:r,url:n,httpPart:t});return this[Ui][iA]==null&&(this[Ui][iA]=new WeakMap),this[Ui][iA].set(e,i),i}},validateInput:{value:function(e,t,r){r=typeof t=="string"?t:r;let n=r!=null&&typeof r=="string"&&sHe[r],s;if(n&&(s=this[Ui][n]),s==null&&(t==null||typeof t!="object"||Array.isArray(t)))throw new syr(r);return s==null&&(this[Ui][iA]?.has(t)?s=this[Ui][iA].get(t):s=this.compileValidationSchema(t,r)),s(e)}}});Ane.exports=_ne;Ane.exports.buildRequest=ayr});var j6=S((wHn,oHe)=>{"use strict";var{kFourOhFourContext:cyr,kReplySerializerDefault:uyr,kSchemaErrorFormatter:lyr,kErrorHandler:dyr,kChildLoggerFactory:fyr,kOptions:hyr,kReply:pyr,kRequest:myr,kBodyLimit:gyr,kLogLevel:_yr,kContentTypeParser:Ayr,kRouteByFastify:Eyr,kRequestCacheValidateFns:yyr,kReplyCacheSerializeFns:vyr,kPublicRouteContext:Syr}=Pa();function Tyr({schema:e,handler:t,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:h,exposeHeadRoute:p,prefixTrailingSlash:m,server:_,isFastify:g}){this.schema=e,this.handler=t,this.Reply=_[pyr],this.Request=_[myr],this.contentTypeParser=_[Ayr],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||_[dyr],this.requestIdLogLabel=n||_[hyr].requestIdLogLabel,this.childLoggerFactory=s||_[fyr],this._middie=null,this._parserOptions={limit:a||_[gyr]},this.exposeHeadRoute=p,this.prefixTrailingSlash=m,this.logLevel=o||_[_yr],this.logSerializers=c,this[cyr]=null,this.attachValidation=u,this[uyr]=f,this.schemaErrorFormatter=h||_[lyr]||Iyr,this[Eyr]=g,this[yyr]=null,this[vyr]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[Syr]=byr(this),this.server=_}function byr(e){return Object.create(null,{schema:{enumerable:!0,get(){return e.schema}},config:{enumerable:!0,get(){return e.config}}})}function Iyr(e,t){let r="",n=", ";for(var s=0;s!==e.length;++s){let i=e[s];r+=t+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}oHe.exports=Tyr});var Ene=S((NHn,cHe)=>{"use strict";cHe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var bne=S((OHn,fHe)=>{"use strict";var{kReply:yne,kRequest:vne,kState:Ryr,kHasBeenDecorated:Cyr}=Pa(),{FST_ERR_DEC_ALREADY_PRESENT:uHe,FST_ERR_DEC_MISSING_DEPENDENCY:xyr,FST_ERR_DEC_AFTER_START:wyr,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:Nyr}=ko(),{FSTDEP006:Oyr}=Xp();function Dyr(e,t,r,n){if(Object.prototype.hasOwnProperty.call(e,t))throw new uHe(t);Sne(e,t,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(e,t,{get:r.getter,set:r.setter}):e[t]=r}function lHe(e,t,r,n){let s=e.prototype;if(Object.prototype.hasOwnProperty.call(s,t)||G6(e,t))throw new uHe(t);e[Cyr]=!0,Sne(e,t,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,t,{get:r.getter,set:r.setter}):typeof r=="function"?s[t]=r:e.props.push({key:t,value:r})}function dHe(e,t){typeof t=="object"&&t&&!(typeof t.getter=="function"||typeof t.setter=="function")&&Oyr(e)}function Pyr(e,t,r){return Tne(this,e),Dyr(this,e,t,r),this}function K6(e,t){return t?t in e||e.prototype&&t in e.prototype||G6(e,t):e in this}function G6(e,t){return e.props?e.props.find(({key:r})=>r===t):!1}function Lyr(e){return e&&G6(this[vne],e)?!0:K6(this[vne].prototype,e)}function Myr(e){return e&&G6(this[yne],e)?!0:K6(this[yne].prototype,e)}function Sne(e,t,r){if(r!=null){if(!Array.isArray(r))throw new Nyr(t);for(var n=0;n!==r.length;++n)if(!K6(e,r[n]))throw new xyr(r[n])}}function kyr(e,t,r){return Tne(this,e),dHe(e,t),lHe(this[yne],e,t,r),this}function Byr(e,t,r){return Tne(this,e),dHe(e,t),lHe(this[vne],e,t,r),this}function Tne(e,t){if(e[Ryr].started)throw new wyr(t)}fHe.exports={add:Pyr,exist:K6,existRequest:Lyr,existReply:Myr,dependencies:Sne,decorateReply:kyr,decorateRequest:Byr}});var pHe=S(uh=>{"use strict";var Ine=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=t,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(t){if(this.items.has(t)){let r=this.items.get(t);this.items.delete(t),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;this.items.delete(t.key),this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(this.items.has(t))return this.items.get(t).expiry}get(t){if(this.items.has(t)){let r=this.items.get(t);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items.set(t,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},Rne=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=t,this.ttl=r}get size(){return this.items.size}bumpLru(t){if(this.last===t)return;let r=this.last,n=t.next,s=t.prev;this.first===t&&(this.first=n),t.next=null,t.prev=r,r.next=t,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=t}clear(){this.items=new Map,this.first=null,this.last=null}delete(t){if(this.items.has(t)){let r=this.items.get(t);this.items.delete(t),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;this.items.delete(t.key),this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(this.items.has(t))return this.items.get(t).expiry}get(t){if(this.items.has(t)){let r=this.items.get(t);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return this.bumpLru(r),r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items.set(t,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},e2=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=t,this.ttl=r}bumpLru(t){if(this.last===t)return;let r=this.last,n=t.next,s=t.prev;this.first===t&&(this.first=n),t.next=null,t.prev=r,r.next=t,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=t}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];delete this.items[t],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;delete this.items[t.key],--this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(Object.prototype.hasOwnProperty.call(this.items,t))return this.items[t].expiry}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return this.bumpLru(r),r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items[t]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},z6=class{constructor(){this.records={}}initForCache(t,r){this.records[t]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(t){for(let r of Object.keys(this.records[t]))this.records[t][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function hHe(e){return`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")}`}var Cne=class{constructor(t,r,n){this.cacheId=t,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=hHe(this.collectionStart),this.records=n||new z6,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(t){this.archiveIfNeeded(),this.currentRecord.cacheSize=t}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=hHe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},Y6=class extends e2{constructor(t,r,n,s,i){if(super(t||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new Cne(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(t,r){super.set(t,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(t,r=!1){super.delete(t),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},Q6=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=t,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];delete this.items[t],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;delete this.items[t.key],--this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(Object.prototype.hasOwnProperty.call(this.items,t))return this.items[t].expiry}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items[t]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};uh.Fifo=Q6;uh.FifoMap=Ine;uh.FifoObject=Q6;uh.HitStatisticsRecord=z6;uh.Lru=e2;uh.LruHitStatistics=Y6;uh.LruMap=Rne;uh.LruObject=e2;uh.LruObjectHitStatistics=Y6});var AHe=S((PHn,t2)=>{"use strict";var J6=function(){};J6.prototype=Object.create(null);var W6=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,X6=/\\([\v\u0020-\u00ff])/gu,mHe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,Av={type:"",parameters:new J6};Object.freeze(Av.parameters);Object.freeze(Av);function gHe(e){if(typeof e!="string")throw new TypeError("argument header is required and must be a string");let t=e.indexOf(";"),r=t!==-1?e.slice(0,t).trim():e.trim();if(mHe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new J6};if(t===-1)return n;let s,i,a;for(W6.lastIndex=t;i=W6.exec(e);){if(i.index!==t)throw new TypeError("invalid parameter format");t+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),X6.test(a)&&(a=a.replace(X6,"$1"))),n.parameters[s]=a}if(t!==e.length)throw new TypeError("invalid parameter format");return n}function _He(e){if(typeof e!="string")return Av;let t=e.indexOf(";"),r=t!==-1?e.slice(0,t).trim():e.trim();if(mHe.test(r)===!1)return Av;let n={type:r.toLowerCase(),parameters:new J6};if(t===-1)return n;let s,i,a;for(W6.lastIndex=t;i=W6.exec(e);){if(i.index!==t)return Av;t+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),X6.test(a)&&(a=a.replace(X6,"$1"))),n.parameters[s]=a}return t!==e.length?Av:n}t2.exports.default={parse:gHe,safeParse:_He};t2.exports.parse=gHe;t2.exports.safeParse=_He;t2.exports.defaultContentType=Av});var wne=S((LHn,Q1)=>{"use strict";var Uyr=typeof Buffer<"u",EHe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,yHe=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function vHe(e,t,r){r==null&&t!==null&&typeof t=="object"&&(r=t,t=void 0),Uyr&&Buffer.isBuffer(e)&&(e=e.toString()),e&&e.charCodeAt(0)===65279&&(e=e.slice(1));let n=JSON.parse(e,t);if(n===null||typeof n!="object")return n;let s=r&&r.protoAction||"error",i=r&&r.constructorAction||"error";if(s==="ignore"&&i==="ignore")return n;if(s!=="ignore"&&i!=="ignore"){if(EHe.test(e)===!1&&yHe.test(e)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(EHe.test(e)===!1)return n}else if(yHe.test(e)===!1)return n;return SHe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function SHe(e,{protoAction:t="error",constructorAction:r="error",safe:n}={}){let s=[e];for(;s.length;){let i=s;s=[];for(let a of i){if(t!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(t==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let c=a[o];c&&typeof c=="object"&&s.push(c)}}}return e}function xne(e,t,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return vHe(e,t,r)}finally{Error.stackTraceLimit=n}}function Fyr(e,t){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return vHe(e,t,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}Q1.exports=xne;Q1.exports.default=xne;Q1.exports.parse=xne;Q1.exports.safeParse=Fyr;Q1.exports.scan=SHe});var Lne=S((MHn,n2)=>{"use strict";var{AsyncResource:$yr}=require("node:async_hooks"),{Fifo:bHe}=pHe(),{safeParse:IHe,defaultContentType:qyr}=AHe(),Hyr=wne(),{kDefaultJsonParse:r2,kContentTypeParser:W1,kBodyLimit:Vyr,kRequestPayloadStream:RHe,kState:One,kTestInternals:jyr,kReplyIsError:CHe,kRouteContext:Kyr}=Pa(),{FST_ERR_CTP_INVALID_TYPE:xHe,FST_ERR_CTP_EMPTY_TYPE:Gyr,FST_ERR_CTP_ALREADY_PRESENT:zyr,FST_ERR_CTP_INVALID_HANDLER:Yyr,FST_ERR_CTP_INVALID_PARSE_TYPE:Qyr,FST_ERR_CTP_BODY_TOO_LARGE:THe,FST_ERR_CTP_INVALID_MEDIA_TYPE:Wyr,FST_ERR_CTP_INVALID_CONTENT_LENGTH:Xyr,FST_ERR_CTP_EMPTY_JSON_BODY:Jyr,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:Dne}=ko();function am(e,t,r){this[r2]=NHe(t,r),this.customParsers=new Map,this.customParsers.set("application/json",new Nne(!0,!1,e,this[r2])),this.customParsers.set("text/plain",new Nne(!0,!1,e,Pne)),this.parserList=[new Z6("application/json"),new Z6("text/plain")],this.parserRegExpList=[],this.cache=new bHe(100)}am.prototype.add=function(e,t,r){let n=typeof e=="string";if(!n&&!(e instanceof RegExp))throw new xHe;if(n&&e.length===0)throw new Gyr;if(typeof r!="function")throw new Yyr;if(this.existingParser(e))throw new zyr(e);if(t.parseAs!==void 0&&t.parseAs!=="string"&&t.parseAs!=="buffer")throw new Qyr(t.parseAs);let s=new Nne(t.parseAs==="string",t.parseAs==="buffer",t.bodyLimit,r);n&&e==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new Z6(e)):(e.isEssence=e.source.indexOf(";")===-1,this.parserRegExpList.unshift(e)),this.customParsers.set(e.toString(),s))};am.prototype.hasParser=function(e){return this.customParsers.has(typeof e=="string"?e:e.toString())};am.prototype.existingParser=function(e){return e==="application/json"&&this.customParsers.has(e)?this.customParsers.get(e).fn!==this[r2]:e==="text/plain"&&this.customParsers.has(e)?this.customParsers.get(e).fn!==Pne:this.hasParser(e)};am.prototype.getParser=function(e){if(this.hasParser(e))return this.customParsers.get(e);let t=this.cache.get(e);if(t!==void 0)return t;let r=IHe(e);if(r===qyr)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(svr(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(e,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(ivr(e,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(e,a),a}}return this.customParsers.get("")};am.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new bHe(100)};am.prototype.remove=function(e){if(!(typeof e=="string"||e instanceof RegExp))throw new xHe;let t=this.customParsers.delete(e.toString()),r=typeof e=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===e.toString());return n>-1&&r.splice(n,1),t||n>-1};am.prototype.run=function(e,t,r,n){let s=this.getParser(e);if(s===void 0){r.is404?t(r,n):n.send(new Wyr(e||void 0));return}let i=new $yr("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)wHe(r,n,n[Kyr]._parserOptions,s,a);else{let o=s.fn(r,r[RHe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[CHe]=!0,n.send(o)):(r.body=c,t(r,n))})}};function wHe(e,t,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=e.headers["content-length"]===void 0?NaN:Number(e.headers["content-length"]);if(o>a){t.header("connection","close"),t.send(new THe);return}let c=0,u=i===!0?"":[],l=e[RHe]||e.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(h){c+=h.length;let{receivedEncodedLength:p=0}=l;if(c>a||p>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),t.send(new THe);return}i===!0?u+=h:u.push(h)}function f(h){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),h!==void 0){typeof h.statusCode=="number"&&h.statusCode>=400||(h.statusCode=400),t[CHe]=!0,t.code(h.statusCode).send(h);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){t.header("connection","close"),t.send(new Xyr);return}i===!1&&(u=Buffer.concat(u));let p=n.fn(e,u,s);p&&typeof p.then=="function"&&p.then(m=>s(null,m),s)}}function NHe(e,t){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new Jyr,void 0);let a;try{a=Hyr.parse(s,{protoAction:e,constructorAction:t})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function Pne(e,t,r){r(null,t)}function Nne(e,t,r,n){this.asString=e,this.asBuffer=t,this.bodyLimit=r,this.fn=n}function Zyr(e){let t=new am;return t[r2]=e[r2],t.customParsers=new Map(e.customParsers.entries()),t.parserList=e.parserList.slice(),t.parserRegExpList=e.parserRegExpList.slice(),t}function evr(e,t,r){if(this[One].started)throw new Dne("addContentTypeParser");return typeof t=="function"&&(r=t,t={}),t||(t={}),t.bodyLimit||(t.bodyLimit=this[Vyr]),Array.isArray(e)?e.forEach(n=>this[W1].add(n,t,r)):this[W1].add(e,t,r),this}function tvr(e){return this[W1].hasParser(e)}function rvr(e){if(this[One].started)throw new Dne("removeContentTypeParser");if(Array.isArray(e))for(let t of e)this[W1].remove(t);else this[W1].remove(e)}function nvr(){if(this[One].started)throw new Dne("removeAllContentTypeParsers");this[W1].removeAll()}function svr(e,t){if(t.isEssence)return e.type.indexOf(t)!==-1;if(e.type.indexOf(t.type)===-1)return!1;for(let r of t.parameterKeys)if(!(r in e.parameters)||e.parameters[r]!==t.parameters[r])return!1;return!0}function ivr(e,t,r){return r.isEssence?r.test(t):r.test(e)}function Z6(e){this.name=e;let t=IHe(e);if(this.isEssence=e.indexOf(";")===-1,this.isEssence===!1&&t.type===""){let r=e.split(";",1)[0];this.type=r===""?e:r}else this.type=t.type;this.parameters=t.parameters,this.parameterKeys=Object.keys(t.parameters)}Z6.prototype.toString=function(){return this.name};n2.exports=am;n2.exports.helpers={buildContentTypeParser:Zyr,addContentTypeParser:evr,hasContentTypeParser:tvr,removeContentTypeParser:rvr,removeAllContentTypeParsers:nvr};n2.exports.defaultParsers={getDefaultJsonParser:NHe,defaultTextParser:Pne};n2.exports[jyr]={rawBody:wHe}});var LHe=S((kHn,PHe)=>{"use strict";var OHe=dd(),avr=Symbol.for("json-schema-ref"),Mne=class{#e;#t;#r;#n;#a;constructor(t={}){this.#e={},this.#t={},this.#r=t.insertRefSymbol??!1,this.#n=t.allowEqualDuplicates??!0,this.#a=t.cloneSchemaWithoutRefs??!1}addSchema(t,r){t.$id!==void 0&&t.$id.charAt(0)!=="#"?r=t.$id:this.#l(t,r),this.#s(t,r)}getSchema(t,r="#"){let n=this.#e[t];if(n===void 0)throw new Error(`Cannot resolve ref "${t}${r}". Schema with id "${t}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:DHe(n.schema,r)}hasSchema(t){return this.#e[t]!==void 0}getSchemaRefs(t){let r=this.#e[t];if(r===void 0)throw new Error(`Schema with id "${t}" is not found.`);return r.refs}getSchemaDependencies(t,r={}){let n=this.#e[t];for(let s of n.refs){let i=s.schemaId;r[i]===void 0&&(r[i]=this.getSchema(i),this.getSchemaDependencies(i,r))}return r}derefSchema(t){if(this.#t[t]!==void 0)return;let r=this.#e[t];if(r===void 0)throw new Error(`Schema with id "${t}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[t]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,t,n);let s=this.getSchemaDependencies(t);for(let i in s){let a=s[i];this.#i(a,i,n)}for(let i of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(i.ref,i.sourceSchemaId),c=this.getDerefSchema(a,o);if(c===null)throw new Error(`Cannot resolve ref "${i.ref}". Ref "${o}" is not found in schema "${a}".`);i.targetSchema=c,i.targetSchemaId=a}for(let i of n)this.#c(i,n)}getDerefSchema(t,r="#"){let n=this.#t[t];return n===void 0&&(this.derefSchema(t),n=this.#t[t]),n.anchors[r]!==void 0?n.anchors[r]:DHe(n.schema,r)}#o(t,r){let n=t.indexOf("#");return n===-1?{refSchemaId:t,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:t}:{refSchemaId:t.slice(0,n),refJsonPointer:t.slice(n)}}#s(t,r){let n=t.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#m(t,r,n):(this.#l(t,n),r=n));let s=t.$ref;if(s!==void 0&&typeof s=="string"){let{refSchemaId:i,refJsonPointer:a}=this.#o(s,r);this.#e[r].refs.push({schemaId:i,jsonPointer:a})}for(let i in t)typeof t[i]=="object"&&t[i]!==null&&this.#s(t[i],r)}#i(t,r,n=[]){let s=Array.isArray(t)?[...t]:{...t},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#h(s,i),r=i)),s.$ref!==void 0&&n.push({ref:s.$ref,sourceSchemaId:r,sourceSchema:s});for(let a in s){let o=s[a];typeof o=="object"&&o!==null&&(s[a]=this.#i(o,r,n))}return s}#c(t,r){let{sourceSchema:n,targetSchema:s}=t;if(n.$ref){if(this.#r&&(n[avr]=n.$ref),delete n.$ref,s.$ref){let i=r.find(a=>a.sourceSchema===s);this.#c(i,r)}for(let i in s)if(i!=="$id"){if(n[i]!==void 0){if(OHe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${t.ref}". Property "${i}" is already exist in schema "${t.sourceSchemaId}".`)}n[i]=s[i]}t.isResolved=!0}}#l(t,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&OHe(t,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:t,anchors:{},refs:[]}}#m(t,r,n){let{anchors:s}=this.#e[r];if(s[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);s[n]=t}#h(t,r){this.#t[r]===void 0&&(this.#t[r]={schema:t,anchors:{}})}#d(t,r,n){let{anchors:s}=this.#t[r];s[n]=t}};function DHe(e,t){let r=t.split("/"),n=e;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}PHe.exports={RefResolver:Mne}});var kHe=S((BHn,MHe)=>{"use strict";var kne=class e{constructor(t,r,n="#"){this.schema=t,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(t){return new e(this.schema[t],this.schemaId,this.jsonPointer+"/"+t)}getSchemaRef(){return this.schemaId+this.jsonPointer}};MHe.exports=kne});var qHe=S((UHn,Une)=>{"use strict";Une.exports=et;Une.exports.default=et;var ovr={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},BHe={enum:["array","boolean","integer","null","number","object","string"]},UHe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,cvr=A6().fullFormats.uri,FHe=A6().fullFormats.regex;function gd(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0,o=a;return typeof e=="number"&&!(e%1)&&!isNaN(e)&&isFinite(e)?a===o&&typeof e=="number"&&isFinite(e)&&(e<0||isNaN(e))?(gd.errors=[{instancePath:t,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(gd.errors=i,a===0):(gd.errors=[{instancePath:t,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var Bne={validate:et};function kc(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0;if(a===0)if(Array.isArray(e)){if(e.length<1)return kc.errors=[{instancePath:t,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=e.length;for(let u=0;u",limit:0},message:"must be > 0"}],!1}else return et.errors=[{instancePath:t+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.maximum!==void 0){let A=e.maximum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.exclusiveMaximum!==void 0){let A=e.exclusiveMaximum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.minimum!==void 0){let A=e.minimum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.exclusiveMinimum!==void 0){let A=e.exclusiveMinimum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.maxLength!==void 0){let A=e.maxLength,E=a,v=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return et.errors=[{instancePath:t+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return et.errors=[{instancePath:t+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=E===a}else var o=!0;if(o){if(e.minLength!==void 0){let A=a;gd(e.minLength,{instancePath:t+"/minLength",parentData:e,parentDataProperty:"minLength",rootData:s})||(i=i===null?gd.errors:i.concat(gd.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.pattern!==void 0){let A=e.pattern,E=a;if(a===E&&a===E)if(typeof A=="string"){if(!FHe(A))return et.errors=[{instancePath:t+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return et.errors=[{instancePath:t+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=E===a}else var o=!0;if(o){if(e.additionalItems!==void 0){let A=a;et(e.additionalItems,{instancePath:t+"/additionalItems",parentData:e,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.items!==void 0){let A=e.items,E=a,v=a,b=!1,I=a;et(A,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var c=I===a;if(b=b||c,!b){let x=a;kc(A,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:s})||(i=i===null?kc.errors:i.concat(kc.errors),a=i.length);var c=x===a;b=b||c}if(b)a=v,i!==null&&(v?i.length=v:i=null);else{let x={instancePath:t+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[x]:i.push(x),a++,et.errors=i,!1}var o=E===a}else var o=!0;if(o){if(e.maxItems!==void 0){let A=e.maxItems,E=a,v=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return et.errors=[{instancePath:t+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return et.errors=[{instancePath:t+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=E===a}else var o=!0;if(o){if(e.minItems!==void 0){let A=a;gd(e.minItems,{instancePath:t+"/minItems",parentData:e,parentDataProperty:"minItems",rootData:s})||(i=i===null?gd.errors:i.concat(gd.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.uniqueItems!==void 0){let A=a;if(typeof e.uniqueItems!="boolean")return et.errors=[{instancePath:t+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=A===a}else var o=!0;if(o){if(e.contains!==void 0){let A=a;et(e.contains,{instancePath:t+"/contains",parentData:e,parentDataProperty:"contains",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.maxProperties!==void 0){let A=e.maxProperties,E=a,v=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return et.errors=[{instancePath:t+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return et.errors=[{instancePath:t+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=E===a}else var o=!0;if(o){if(e.minProperties!==void 0){let A=a;gd(e.minProperties,{instancePath:t+"/minProperties",parentData:e,parentDataProperty:"minProperties",rootData:s})||(i=i===null?gd.errors:i.concat(gd.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.required!==void 0){let A=e.required,E=a;if(a===a)if(Array.isArray(A)){var u=!0;let I=A.length;for(let T=0;T1){let w={};for(;T--;){let D=A[T];if(typeof D=="string"){if(typeof w[D]=="number"){return x=w[D],et.errors=[{instancePath:t+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:T,j:x},message:"must NOT have duplicate items (items ## "+x+" and "+T+" are identical)"}],!1;break}w[D]=T}}}}}else return et.errors=[{instancePath:t+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=E===a}else var o=!0;if(o){if(e.additionalProperties!==void 0){let A=a;et(e.additionalProperties,{instancePath:t+"/additionalProperties",parentData:e,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.definitions!==void 0){let A=e.definitions,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A))for(let b in A){let I=a;et(A[b],{instancePath:t+"/definitions/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var l=I===a;if(!l)break}else return et.errors=[{instancePath:t+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.properties!==void 0){let A=e.properties,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A))for(let b in A){let I=a;et(A[b],{instancePath:t+"/properties/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var d=I===a;if(!d)break}else return et.errors=[{instancePath:t+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.patternProperties!==void 0){let A=e.patternProperties,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A)){for(let b in A){let I=a;if(a===I&&typeof b=="string"&&!FHe(b)){let T={instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:b};i===null?i=[T]:i.push(T),a++}var f=I===a;if(!f){let T={instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:b},message:"property name must be valid"};return i===null?i=[T]:i.push(T),a++,et.errors=i,!1;break}}if(f)for(let b in A){let I=a;et(A[b],{instancePath:t+"/patternProperties/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var h=I===a;if(!h)break}}else return et.errors=[{instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.dependencies!==void 0){let A=e.dependencies,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A))for(let b in A){let I=A[b],T=a,x=a,w=!1,D=a;et(I,{instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var p=D===a;if(w=w||p,!w){let M=a;if(a===a)if(Array.isArray(I)){var m=!0;let G=I.length;for(let $=0;$1){let ee={};for(;$--;){let z=I[$];if(typeof z=="string"){if(typeof ee[z]=="number"){K=ee[z];let oe={instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:$,j:K},message:"must NOT have duplicate items (items ## "+K+" and "+$+" are identical)"};i===null?i=[oe]:i.push(oe),a++;break}ee[z]=$}}}}}else{let G={instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[G]:i.push(G),a++}var p=M===a;w=w||p}if(w)a=x,i!==null&&(x?i.length=x:i=null);else{let M={instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,et.errors=i,!1}var _=T===a;if(!_)break}else return et.errors=[{instancePath:t+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.propertyNames!==void 0){let A=a;et(e.propertyNames,{instancePath:t+"/propertyNames",parentData:e,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.enum!==void 0){let A=e.enum,E=a;if(a===E)if(Array.isArray(A)){if(A.length<1)return et.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let b=A.length,I;if(b>1){e:for(;b--;)for(I=b;I--;)if($He(A[b],A[I])){return et.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:b,j:I},message:"must NOT have duplicate items (items ## "+I+" and "+b+" are identical)"}],!1;break e}}}}else return et.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=E===a}else var o=!0;if(o){if(e.type!==void 0){let A=e.type,E=a,v=a,b=!1,I=a;if(!(A==="array"||A==="boolean"||A==="integer"||A==="null"||A==="number"||A==="object"||A==="string")){let x={instancePath:t+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:BHe.enum},message:"must be equal to one of the allowed values"};i===null?i=[x]:i.push(x),a++}var g=I===a;if(b=b||g,!b){let x=a;if(a===x)if(Array.isArray(A))if(A.length<1){let D={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[D]:i.push(D),a++}else{var y=!0;let D=A.length;for(let M=0;M1){e:for(;M--;)for(L=M;L--;)if($He(A[M],A[L])){let U={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:L},message:"must NOT have duplicate items (items ## "+L+" and "+M+" are identical)"};i===null?i=[U]:i.push(U),a++;break e}}}}else{let D={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[D]:i.push(D),a++}var g=x===a;b=b||g}if(b)a=v,i!==null&&(v?i.length=v:i=null);else{let x={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[x]:i.push(x),a++,et.errors=i,!1}var o=E===a}else var o=!0;if(o){if(e.format!==void 0){let A=a;if(typeof e.format!="string")return et.errors=[{instancePath:t+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.contentMediaType!==void 0){let A=a;if(typeof e.contentMediaType!="string")return et.errors=[{instancePath:t+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.contentEncoding!==void 0){let A=a;if(typeof e.contentEncoding!="string")return et.errors=[{instancePath:t+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.if!==void 0){let A=a;et(e.if,{instancePath:t+"/if",parentData:e,parentDataProperty:"if",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.then!==void 0){let A=a;et(e.then,{instancePath:t+"/then",parentData:e,parentDataProperty:"then",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.else!==void 0){let A=a;et(e.else,{instancePath:t+"/else",parentData:e,parentDataProperty:"else",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.allOf!==void 0){let A=a;kc(e.allOf,{instancePath:t+"/allOf",parentData:e,parentDataProperty:"allOf",rootData:s})||(i=i===null?kc.errors:i.concat(kc.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.anyOf!==void 0){let A=a;kc(e.anyOf,{instancePath:t+"/anyOf",parentData:e,parentDataProperty:"anyOf",rootData:s})||(i=i===null?kc.errors:i.concat(kc.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.oneOf!==void 0){let A=a;kc(e.oneOf,{instancePath:t+"/oneOf",parentData:e,parentDataProperty:"oneOf",rootData:s})||(i=i===null?kc.errors:i.concat(kc.errors),a=i.length);var o=A===a}else var o=!0;if(o)if(e.not!==void 0){let A=a;et(e.not,{instancePath:t+"/not",parentData:e,parentDataProperty:"not",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return et.errors=i,a===0}});var Hne=S((FHn,HHe)=>{"use strict";var Fne=class extends Error{constructor(t,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${t}" keyword schemas.`,this.schemas=r}},$ne=class extends Error{constructor(t,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${t}" keyword not found.`,this.schemas=r}},qne=class extends Error{constructor(t){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${t}".`}};HHe.exports={MergeError:Fne,ResolverNotFoundError:$ne,InvalidOnConflictOptionError:qne}});var KHe=S(($Hn,jHe)=>{"use strict";var uvr=dd(),{MergeError:Vne}=Hne();function VHe(e){let t=e[0];for(let r=1;re[r].includes(n));return t}function lvr(e,t,r){let n=VHe(t);if(n.length===0)throw new Vne(e,t);r[e]=n}function dvr(e,t,r){for(let s=0;sc?n(c,o%c):o,s=(o,c)=>o*c/n(o,c),i=1;for(let o of t)for(;o*i%1!==0;)i*=10;let a=t[0]*i;for(let o of t)a=s(a,o*i);r[e]=a/i}function gvr(e,t,r){let n=t[0];for(let s=1;s{"use strict";var yvr=dd(),fi=KHe(),r8=Hne(),YHe={$id:fi.skip,type:fi.hybridArraysIntersection,enum:fi.arraysIntersection,minLength:fi.maxNumber,maxLength:fi.minNumber,minimum:fi.maxNumber,maximum:fi.minNumber,multipleOf:fi.commonMultiple,exclusiveMinimum:fi.maxNumber,exclusiveMaximum:fi.minNumber,minItems:fi.maxNumber,maxItems:fi.minNumber,maxProperties:fi.minNumber,minProperties:fi.maxNumber,const:fi.allEqual,default:fi.allEqual,format:fi.allEqual,required:fi.arraysUnion,properties:Rvr,patternProperties:t8,additionalProperties:e8,items:Tvr,additionalItems:bvr,definitions:t8,$defs:t8,nullable:fi.booleanAnd,oneOf:GHe,anyOf:GHe,allOf:fi.arraysUnion,not:e8,if:Cvr,then:fi.skip,else:fi.skip,dependencies:zHe,dependentRequired:zHe,dependentSchemas:t8,propertyNames:e8,uniqueItems:fi.booleanOr,contains:e8};function e8(e,t,r,n,s){r[e]=Df(t,s)}function vvr(e){let t=[[]];for(let r of e){let n=[];for(let s of t)for(let i of r)n.push([...s,i]);t=n}return t}function GHe(e,t,r,n,s){if(t.length===1){r[e]=t[0];return}let i=vvr(t),a=[];for(let o of i)try{let c=Df(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof r8.MergeError)continue;throw c}r[e]=a}function Svr(e,t){let{items:r,additionalItems:n}=e;return Array.isArray(r)?t{"use strict";var{mergeSchemas:wvr}=XHe();function Nvr(e){return wvr(e,{onConflict:"skip"})}JHe.exports=Nvr});var cVe=S((VHn,X1)=>{"use strict";var{RefResolver:Ovr}=LHe(),Dvr=$ee(),Pvr=Bre(),Ev=kHe(),eVe=qHe(),Lvr=ZHe(),Mvr=/'/g,n8=2e4,rVe="default",kvr=["floor","ceil","round","trunc"],nVe=["default","json-stringify"],s2=0;function jne(e,t){if(!eVe(e)){t?t=`"${t}" `:t="";let r=eVe.errors[0],n=new Error(`${t}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=jne.errors,n}}function i2(e,t){let r=t.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||t.schemaId,i=r.slice(n)||"#",a=e.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new Ev(a,s,i);return a.$ref!==void 0?i2(e,o):o}function s8(e,t){let r=e.refResolver.getSchema(t,"#");return new Ev(r,t,"#")}function tVe(e,t){return e.$id&&e.$id.charAt(0)!=="#"?e.$id:t}function Kne(e,t){jne(e),t=t||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:t,refResolver:new Ovr,rootSchemaId:e.$id||`__fjs_root_${s2++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=tVe(e,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(e,r.rootSchemaId),t.schema)for(let l in t.schema){let d=t.schema[l],f=tVe(d,l);r.refResolver.hasSchema(f)||(jne(d,l),r.refResolver.addSchema(d,l))}if(t.rounding&&!kvr.includes(t.rounding))throw new Error(`Unsupported integer rounding method ${t.rounding}`);if(t.largeArrayMechanism)if(nVe.includes(t.largeArrayMechanism))rVe=t.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${t.largeArrayMechanism}`);if(t.largeArraySize)if(typeof t.largeArraySize=="string"&&Number.isFinite(Number.parseInt(t.largeArraySize,10)))n8=Number.parseInt(t.largeArraySize,10);else if(typeof t.largeArraySize=="number"&&Number.isInteger(t.largeArraySize))n8=t.largeArraySize;else if(typeof t.largeArraySize=="bigint")n8=Number(t.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof t.largeArraySize} with value ${t.largeArraySize}`);let s=new Ev(e,r.rootSchemaId),i=Sl(r,s,"input"),a=` - const JSON_STR_BEGIN_OBJECT = '{' - const JSON_STR_END_OBJECT = '}' - const JSON_STR_BEGIN_ARRAY = '[' - const JSON_STR_END_ARRAY = ']' - const JSON_STR_COMMA = ',' - const JSON_STR_COLONS = ':' - const JSON_STR_QUOTE = '"' - const JSON_STR_EMPTY_OBJECT = JSON_STR_BEGIN_OBJECT + JSON_STR_END_OBJECT - const JSON_STR_EMPTY_ARRAY = JSON_STR_BEGIN_ARRAY + JSON_STR_END_ARRAY - const JSON_STR_EMPTY_STRING = JSON_STR_QUOTE + JSON_STR_QUOTE - const JSON_STR_NULL = 'null' - `;i==="json += anonymous0(input)"?a+=` - ${r.functions.join(` -`)} - const main = anonymous0 - return main - `:a+=` - function main (input) { - let json = '' - ${i} - return json - } - ${r.functions.join(` -`)} - return main - `;let o=new Dvr(t),c=new Pvr(t.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);c.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[h,p]of Object.entries(f))c.addSchema(p,h)}if(t.debugMode&&(t.mode="debug"),t.mode==="debug")return{validator:c,serializer:o,code:`validator -serializer -${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return t.mode==="standalone"?Fre()(u,r,o,c):u(c,o)}var Bvr=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],Uvr=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],Fvr=["maxLength","minLength","pattern"],$vr=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function qvr(e){for(var t of Bvr)if(t in e)return"object";for(var t of Uvr)if(t in e)return"array";for(var t of Fvr)if(t in e)return"string";for(var t of $vr)if(t in e)return"number";return e.type}function Hvr(e,t,r){let n=t.schema,s=Object.keys(n.properties||{}),i=` - const propertiesKeys = ${JSON.stringify(s)} - for (const [key, value] of Object.entries(obj)) { - if ( - propertiesKeys.includes(key) || - value === undefined || - typeof value === 'function' || - typeof value === 'symbol' - ) continue - `,a=t.getPropertyLocation("patternProperties"),o=a.schema;if(o!==void 0)for(let l in o){let d=a.getPropertyLocation(l);i+=` - if (/${l.replace(/\\*\//g,"\\/")}/.test(key)) { - ${r} - json += serializer.asString(key) + JSON_STR_COLONS - ${Sl(e,d,"value")} - continue - } - `}let u=t.getPropertyLocation("additionalProperties").schema;if(u!==void 0)if(u===!0)i+=` - ${r} - json += serializer.asString(key) + JSON_STR_COLONS + JSON.stringify(value) - `;else{let l=t.getPropertyLocation("additionalProperties");i+=` - ${r} - json += serializer.asString(key) + JSON_STR_COLONS - ${Sl(e,l,"value")} - `}return i+=` - } - `,i}function Vvr(e,t){let r=t.schema,n=t.getPropertyLocation("properties"),s=r.required||[],i=Object.keys(r.properties||{}).sort((u,l)=>{let d=s.includes(u),f=s.includes(l);return d===f?0:d?-1:1}),a=s.includes(i[0]),o=`let value -`;for(let u of s)if(!i.includes(u)){let l=JSON.stringify(u);o+=`if (obj[${l}] === undefined) throw new Error('${l.replace(/'/g,"\\'")} is required!') -`}o+=`let json = JSON_STR_BEGIN_OBJECT -`;let c="";a||(o+=`let addComma = false -`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=i2(e,l));let d=JSON.stringify(u),f=l.schema.default,h=s.includes(u);o+=` - value = obj[${d}] - if (value !== undefined) { - ${c} - json += ${JSON.stringify(d+":")} - ${Sl(e,l,"value")} - }`,f!==void 0?o+=` else { - ${c} - json += ${JSON.stringify(d+":"+JSON.stringify(f))} - } - `:h?o+=` else { - throw new Error('${d.replace(/'/g,"\\'")} is required!') - } - `:o+=` -`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=Hvr(e,t,c)),o+=` - return json + JSON_STR_END_OBJECT - `,o}function i8(e,t,r){for(let a=0;a ${s.length}) { - throw new Error(\`Item at ${s.length} does not match schema definition.\`) - } - `),rVe==="json-stringify"&&(o+=`if (arrayLength >= ${n8}) return JSON.stringify(obj) -`),o+=` - const arrayEnd = arrayLength - 1 - let value - let json = '' - `,Array.isArray(s)){for(let u=0;uiVe(s,t)).join(" || ")})`)}return r}function aVe(e){return"anonymous"+e.functionsCounter++}function zvr(e,t,r){let s=t.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{t.schema={...t.schema,type:o};let u=oVe(e,t,r),l=c===0?"if":"else if";switch(o){case"null":i+=` - ${l} (${r} === null) - ${u} - `;break;case"string":{i+=` - ${l}( - typeof ${r} === "string" || - ${r} === null || - ${r} instanceof Date || - ${r} instanceof RegExp || - ( - typeof ${r} === "object" && - typeof ${r}.toString === "function" && - ${r}.toString !== Object.prototype.toString - ) - ) - ${u} - `;break}case"array":{i+=` - ${l}(Array.isArray(${r})) - ${u} - `;break}case"integer":{i+=` - ${l}(Number.isInteger(${r}) || ${r} === null) - ${u} - `;break}default:{i+=` - ${l}(typeof ${r} === "${o}" || ${r} === null) - ${u} - `;break}}});let a=t.getSchemaRef();return a.startsWith(e.rootSchemaId)&&(a=a.replace(e.rootSchemaId,"")),i+=` - else throw new TypeError(\`The value of '${a}' does not match schema definition.\`) - `,i}function oVe(e,t,r){let n=t.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:` - if (typeof ${r} !== 'string') { - if (${r} === null) { - json += JSON_STR_EMPTY_STRING - } else if (${r} instanceof Date) { - json += JSON_STR_QUOTE + ${r}.toISOString() + JSON_STR_QUOTE - } else if (${r} instanceof RegExp) { - json += serializer.asString(${r}.source) - } else { - json += serializer.asString(${r}.toString()) - } - } else { - json += serializer.asString(${r}) - } - `;case"integer":return`json += serializer.asInteger(${r})`;case"number":return`json += serializer.asNumber(${r})`;case"boolean":return`json += serializer.asBoolean(${r})`;case"object":return`json += ${Kvr(e,t)}(${r})`;case"array":return`json += ${Gvr(e,t)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function Yvr(e,t){let r=e.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=` - if (${t} === null) { - json += JSON_STR_NULL - } else { - `),i+=`json += '${JSON.stringify(r.const).replace(Mvr,"\\'")}'`,s&&(i+=` - } - `),i}function Qvr(e,t,r){let n=t.schema,s=e.mergedSchemasIds.get(n);if(s){let l=s8(e,s);return Sl(e,l,r)}s=`__fjs_merged_${s2++}`,e.mergedSchemasIds.set(n,s);let{allOf:i,...a}=t.schema,o=[new Ev(a,t.schemaId,t.jsonPointer)],c=t.getPropertyLocation("allOf");for(let l=0;l{"use strict";var Jvr=zne();function uVe(e={readMode:!0}){if(e.readMode===!0&&typeof e.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(e.readMode!==!0&&typeof e.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(e.readMode===!0)return function(){return function(n){return e.restoreFunction(n)}};let t=Jvr();return function(n,s={}){s.mode="standalone";let i=t(n,s);return function(a){let o=i(a);return e.storeFunction(a,o),new Function(o)}}}Gne.exports=uVe;Gne.exports.default=uVe});var zne=S((KHn,a2)=>{"use strict";var Zvr=cVe();function Yne(){return function(t,r){let n=Object.assign({},r,{schema:t});return eSr.bind(null,n)}}function eSr(e,{schema:t}){return e.schema&&t.$id&&e.schema[t.$id]&&(e.schema={...e.schema},delete e.schema[t.$id]),Zvr(t,e)}a2.exports=Yne;a2.exports.default=Yne;a2.exports.SerializerSelector=Yne;a2.exports.StandaloneSerializer=lVe()});var J1=S(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.regexpCode=Cn.getEsmExportName=Cn.getProperty=Cn.safeStringify=Cn.stringify=Cn.strConcat=Cn.addCodeArg=Cn.str=Cn._=Cn.nil=Cn._Code=Cn.Name=Cn.IDENTIFIER=Cn._CodeOrName=void 0;var o2=class{};Cn._CodeOrName=o2;Cn.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var yv=class extends o2{constructor(t){if(super(),!Cn.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Cn.Name=yv;var _d=class extends o2{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof yv&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Cn._Code=_d;Cn.nil=new _d("");function dVe(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.ValueScope=Iu.ValueScopeName=Iu.Scope=Iu.varKinds=Iu.UsedValueState=void 0;var bu=J1(),Xne=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},a8;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(a8||(Iu.UsedValueState=a8={}));Iu.varKinds={const:new bu.Name("const"),let:new bu.Name("let"),var:new bu.Name("var")};var o8=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof bu.Name?t:this.name(t)}name(t){return new bu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Iu.Scope=o8;var c8=class extends bu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,bu._)`.${new bu.Name(r)}[${n}]`}};Iu.ValueScopeName=c8;var uSr=(0,bu._)`\n`,Jne=class extends o8{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?uSr:bu.nil}}get(){return this._scope}name(t){return new c8(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,bu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let i=bu.nil;for(let a in t){let o=t[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,a8.Started);let l=r(u);if(l){let d=this.opts.es5?Iu.varKinds.var:Iu.varKinds.const;i=(0,bu._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,bu._)`${i}${l}${this.opts._n}`;else throw new Xne(u);c.set(u,a8.Completed)})}return i}};Iu.ValueScope=Jne});var Vt=S(Nr=>{"use strict";Object.defineProperty(Nr,"__esModule",{value:!0});Nr.or=Nr.and=Nr.not=Nr.CodeGen=Nr.operators=Nr.varKinds=Nr.ValueScopeName=Nr.ValueScope=Nr.Scope=Nr.Name=Nr.regexpCode=Nr.stringify=Nr.getProperty=Nr.nil=Nr.strConcat=Nr.str=Nr._=void 0;var on=J1(),Pf=u8(),aA=J1();Object.defineProperty(Nr,"_",{enumerable:!0,get:function(){return aA._}});Object.defineProperty(Nr,"str",{enumerable:!0,get:function(){return aA.str}});Object.defineProperty(Nr,"strConcat",{enumerable:!0,get:function(){return aA.strConcat}});Object.defineProperty(Nr,"nil",{enumerable:!0,get:function(){return aA.nil}});Object.defineProperty(Nr,"getProperty",{enumerable:!0,get:function(){return aA.getProperty}});Object.defineProperty(Nr,"stringify",{enumerable:!0,get:function(){return aA.stringify}});Object.defineProperty(Nr,"regexpCode",{enumerable:!0,get:function(){return aA.regexpCode}});Object.defineProperty(Nr,"Name",{enumerable:!0,get:function(){return aA.Name}});var h8=u8();Object.defineProperty(Nr,"Scope",{enumerable:!0,get:function(){return h8.Scope}});Object.defineProperty(Nr,"ValueScope",{enumerable:!0,get:function(){return h8.ValueScope}});Object.defineProperty(Nr,"ValueScopeName",{enumerable:!0,get:function(){return h8.ValueScopeName}});Object.defineProperty(Nr,"varKinds",{enumerable:!0,get:function(){return h8.varKinds}});Nr.operators={GT:new on._Code(">"),GTE:new on._Code(">="),LT:new on._Code("<"),LTE:new on._Code("<="),EQ:new on._Code("==="),NEQ:new on._Code("!=="),NOT:new on._Code("!"),OR:new on._Code("||"),AND:new on._Code("&&"),ADD:new on._Code("+")};var om=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Zne=class extends om{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Pf.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=eI(this.rhs,t,r)),this}get names(){return this.rhs instanceof on._CodeOrName?this.rhs.names:{}}},l8=class extends om{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof on.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=eI(this.rhs,t,r),this}get names(){let t=this.lhs instanceof on.Name?{}:{...this.lhs.names};return f8(t,this.rhs)}},ese=class extends l8{constructor(t,r,n,s){super(t,n,s),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},tse=class extends om{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},rse=class extends om{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},nse=class extends om{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},sse=class extends om{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=eI(this.code,t,r),this}get names(){return this.code instanceof on._CodeOrName?this.code.names:{}}},u2=class extends om{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(t,r)||(lSr(t,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Tv(t,r.names),{})}},cm=class extends u2{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},ise=class extends u2{},Z1=class extends cm{};Z1.kind="else";var vv=class e extends cm{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Z1(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(hVe(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=eI(this.condition,t,r),this}get names(){let t=super.names;return f8(t,this.condition),this.else&&Tv(t,this.else.names),t}};vv.kind="if";var Sv=class extends cm{};Sv.kind="for";var ase=class extends Sv{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=eI(this.iteration,t,r),this}get names(){return Tv(super.names,this.iteration.names)}},ose=class extends Sv{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s}render(t){let r=t.es5?Pf.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=f8(super.names,this.from);return f8(t,this.to)}},d8=class extends Sv{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=eI(this.iterable,t,r),this}get names(){return Tv(super.names,this.iterable.names)}},l2=class extends cm{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};l2.kind="func";var d2=class extends u2{render(t){return"return "+super.render(t)}};d2.kind="return";var cse=class extends cm{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Tv(t,this.catch.names),this.finally&&Tv(t,this.finally.names),t}},f2=class extends cm{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};f2.kind="catch";var h2=class extends cm{render(t){return"finally"+super.render(t)}};h2.kind="finally";var use=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new Pf.Scope({parent:t}),this._nodes=[new ise]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Zne(t,i,n)),i}const(t,r,n){return this._def(Pf.varKinds.const,t,r,n)}let(t,r,n){return this._def(Pf.varKinds.let,t,r,n)}var(t,r,n){return this._def(Pf.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new l8(t,r,n))}add(t,r){return this._leafNode(new ese(t,Nr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==on.nil&&this._leafNode(new sse(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,on.addCodeArg)(r,s));return r.push("}"),new on._Code(r)}if(t,r,n){if(this._blockNode(new vv(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new vv(t))}else(){return this._elseNode(new Z1)}endIf(){return this._endBlockNode(vv,Z1)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new ase(t),r)}forRange(t,r,n,s,i=this.opts.es5?Pf.varKinds.var:Pf.varKinds.let){let a=this._scope.toName(t);return this._for(new ose(i,a,r,n),()=>s(a))}forOf(t,r,n,s=Pf.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof on.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,on._)`${a}.length`,o=>{this.var(i,(0,on._)`${a}[${o}]`),n(i)})}return this._for(new d8("of",s,i,r),()=>n(i))}forIn(t,r,n,s=this.opts.es5?Pf.varKinds.var:Pf.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,on._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new d8("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Sv)}label(t){return this._leafNode(new tse(t))}break(t){return this._leafNode(new rse(t))}return(t){let r=new d2;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(d2)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new cse;if(this._blockNode(s),this.code(t),r){let i=this.name("e");this._currNode=s.catch=new f2(i),r(i)}return n&&(this._currNode=s.finally=new h2,this.code(n)),this._endBlockNode(f2,h2)}throw(t){return this._leafNode(new nse(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=on.nil,n,s){return this._blockNode(new l2(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(l2)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof vv))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};Nr.CodeGen=use;function Tv(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function f8(e,t){return t instanceof on._CodeOrName?Tv(e,t.names):e}function eI(e,t,r){if(e instanceof on.Name)return n(e);if(!s(e))return e;return new on._Code(e._items.reduce((i,a)=>(a instanceof on.Name&&(a=n(a)),a instanceof on._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function s(i){return i instanceof on._Code&&i._items.some(a=>a instanceof on.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function lSr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function hVe(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,on._)`!${lse(e)}`}Nr.not=hVe;var dSr=pVe(Nr.operators.AND);function fSr(...e){return e.reduce(dSr)}Nr.and=fSr;var hSr=pVe(Nr.operators.OR);function pSr(...e){return e.reduce(hSr)}Nr.or=pSr;function pVe(e){return(t,r)=>t===on.nil?r:r===on.nil?t:(0,on._)`${lse(t)} ${e} ${lse(r)}`}function lse(e){return e instanceof on.Name?e:(0,on._)`(${e})`}});var _r=S(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.checkStrictMode=Ur.getErrorPath=Ur.Type=Ur.useFunc=Ur.setEvaluated=Ur.evaluatedPropsToName=Ur.mergeEvaluated=Ur.eachItem=Ur.unescapeJsonPointer=Ur.escapeJsonPointer=Ur.escapeFragment=Ur.unescapeFragment=Ur.schemaRefOrVal=Ur.schemaHasRulesButRef=Ur.schemaHasRules=Ur.checkUnknownRules=Ur.alwaysValidSchema=Ur.toHash=void 0;var Is=Vt(),mSr=J1();function gSr(e){let t={};for(let r of e)t[r]=!0;return t}Ur.toHash=gSr;function _Sr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(_Ve(e,t),!AVe(t,e.self.RULES.all))}Ur.alwaysValidSchema=_Sr;function _Ve(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let i in t)s[i]||vVe(e,`unknown keyword: "${i}"`)}Ur.checkUnknownRules=_Ve;function AVe(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Ur.schemaHasRules=AVe;function ASr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Ur.schemaHasRulesButRef=ASr;function ESr({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Is._)`${r}`}return(0,Is._)`${e}${t}${(0,Is.getProperty)(n)}`}Ur.schemaRefOrVal=ESr;function ySr(e){return EVe(decodeURIComponent(e))}Ur.unescapeFragment=ySr;function vSr(e){return encodeURIComponent(fse(e))}Ur.escapeFragment=vSr;function fse(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Ur.escapeJsonPointer=fse;function EVe(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Ur.unescapeJsonPointer=EVe;function SSr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Ur.eachItem=SSr;function mVe({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof Is.Name?(i instanceof Is.Name?e(s,i,a):t(s,i,a),a):i instanceof Is.Name?(t(s,a,i),i):r(i,a);return o===Is.Name&&!(c instanceof Is.Name)?n(s,c):c}}Ur.mergeEvaluated={props:mVe({mergeNames:(e,t,r)=>e.if((0,Is._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Is._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Is._)`${r} || {}`).code((0,Is._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Is._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Is._)`${r} || {}`),hse(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:yVe}),items:mVe({mergeNames:(e,t,r)=>e.if((0,Is._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Is._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Is._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Is._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function yVe(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Is._)`{}`);return t!==void 0&&hse(e,r,t),r}Ur.evaluatedPropsToName=yVe;function hse(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Is._)`${t}${(0,Is.getProperty)(n)}`,!0))}Ur.setEvaluated=hse;var gVe={};function TSr(e,t){return e.scopeValue("func",{ref:t,code:gVe[t.code]||(gVe[t.code]=new mSr._Code(t.code))})}Ur.useFunc=TSr;var dse;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(dse||(Ur.Type=dse={}));function bSr(e,t,r){if(e instanceof Is.Name){let n=t===dse.Num;return r?n?(0,Is._)`"[" + ${e} + "]"`:(0,Is._)`"['" + ${e} + "']"`:n?(0,Is._)`"/" + ${e}`:(0,Is._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Is.getProperty)(e).toString():"/"+fse(e)}Ur.getErrorPath=bSr;function vVe(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Ur.checkStrictMode=vVe});var Ad=S(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});var Vo=Vt(),ISr={data:new Vo.Name("data"),valCxt:new Vo.Name("valCxt"),instancePath:new Vo.Name("instancePath"),parentData:new Vo.Name("parentData"),parentDataProperty:new Vo.Name("parentDataProperty"),rootData:new Vo.Name("rootData"),dynamicAnchors:new Vo.Name("dynamicAnchors"),vErrors:new Vo.Name("vErrors"),errors:new Vo.Name("errors"),this:new Vo.Name("this"),self:new Vo.Name("self"),scope:new Vo.Name("scope"),json:new Vo.Name("json"),jsonPos:new Vo.Name("jsonPos"),jsonLen:new Vo.Name("jsonLen"),jsonPart:new Vo.Name("jsonPart")};pse.default=ISr});var p2=S(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});jo.extendErrors=jo.resetErrorsCount=jo.reportExtraError=jo.reportError=jo.keyword$DataError=jo.keywordError=void 0;var An=Vt(),p8=_r(),Bc=Ad();jo.keywordError={message:({keyword:e})=>(0,An.str)`must pass "${e}" keyword validation`};jo.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,An.str)`"${e}" keyword must be ${t} ($data)`:(0,An.str)`"${e}" keyword is invalid ($data)`};function RSr(e,t=jo.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:a,allErrors:o}=s,c=bVe(e,t,r);n??(a||o)?SVe(i,c):TVe(s,(0,An._)`[${c}]`)}jo.reportError=RSr;function CSr(e,t=jo.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:a}=n,o=bVe(e,t,r);SVe(s,o),i||a||TVe(n,Bc.default.vErrors)}jo.reportExtraError=CSr;function xSr(e,t){e.assign(Bc.default.errors,t),e.if((0,An._)`${Bc.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,An._)`${Bc.default.vErrors}.length`,t),()=>e.assign(Bc.default.vErrors,null)))}jo.resetErrorsCount=xSr;function wSr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,Bc.default.errors,o=>{e.const(a,(0,An._)`${Bc.default.vErrors}[${o}]`),e.if((0,An._)`${a}.instancePath === undefined`,()=>e.assign((0,An._)`${a}.instancePath`,(0,An.strConcat)(Bc.default.instancePath,i.errorPath))),e.assign((0,An._)`${a}.schemaPath`,(0,An.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,An._)`${a}.schema`,r),e.assign((0,An._)`${a}.data`,n))})}jo.extendErrors=wSr;function SVe(e,t){let r=e.const("err",t);e.if((0,An._)`${Bc.default.vErrors} === null`,()=>e.assign(Bc.default.vErrors,(0,An._)`[${r}]`),(0,An._)`${Bc.default.vErrors}.push(${r})`),e.code((0,An._)`${Bc.default.errors}++`)}function TVe(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0,An._)`new ${e.ValidationError}(${t})`):(r.assign((0,An._)`${n}.errors`,t),r.return(!1))}var bv={keyword:new An.Name("keyword"),schemaPath:new An.Name("schemaPath"),params:new An.Name("params"),propertyName:new An.Name("propertyName"),message:new An.Name("message"),schema:new An.Name("schema"),parentSchema:new An.Name("parentSchema")};function bVe(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,An._)`{}`:NSr(e,t,r)}function NSr(e,t,r={}){let{gen:n,it:s}=e,i=[OSr(s,r),DSr(e,r)];return PSr(e,t,i),n.object(...i)}function OSr({errorPath:e},{instancePath:t}){let r=t?(0,An.str)`${e}${(0,p8.getErrorPath)(t,p8.Type.Str)}`:e;return[Bc.default.instancePath,(0,An.strConcat)(Bc.default.instancePath,r)]}function DSr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0,An.str)`${t}/${e}`;return r&&(s=(0,An.str)`${s}${(0,p8.getErrorPath)(r,p8.Type.Str)}`),[bv.schemaPath,s]}function PSr(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([bv.keyword,s],[bv.params,typeof t=="function"?t(e):t||(0,An._)`{}`]),c.messages&&n.push([bv.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([bv.schema,a],[bv.parentSchema,(0,An._)`${l}${d}`],[Bc.default.data,i]),u&&n.push([bv.propertyName,u])}});var RVe=S(tI=>{"use strict";Object.defineProperty(tI,"__esModule",{value:!0});tI.boolOrEmptySchema=tI.topBoolOrEmptySchema=void 0;var LSr=p2(),MSr=Vt(),kSr=Ad(),BSr={message:"boolean schema is false"};function USr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?IVe(e,!1):typeof r=="object"&&r.$async===!0?t.return(kSr.default.data):(t.assign((0,MSr._)`${n}.errors`,null),t.return(!0))}tI.topBoolOrEmptySchema=USr;function FSr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),IVe(e)):r.var(t,!0)}tI.boolOrEmptySchema=FSr;function IVe(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,LSr.reportError)(s,BSr,void 0,t)}});var mse=S(rI=>{"use strict";Object.defineProperty(rI,"__esModule",{value:!0});rI.getRules=rI.isJSONType=void 0;var $Sr=["string","number","integer","boolean","null","object","array"],qSr=new Set($Sr);function HSr(e){return typeof e=="string"&&qSr.has(e)}rI.isJSONType=HSr;function VSr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}rI.getRules=VSr});var gse=S(oA=>{"use strict";Object.defineProperty(oA,"__esModule",{value:!0});oA.shouldUseRule=oA.shouldUseGroup=oA.schemaHasRulesForType=void 0;function jSr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&CVe(e,n)}oA.schemaHasRulesForType=jSr;function CVe(e,t){return t.rules.some(r=>xVe(e,r))}oA.shouldUseGroup=CVe;function xVe(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}oA.shouldUseRule=xVe});var m2=S(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.reportTypeError=Ko.checkDataTypes=Ko.checkDataType=Ko.coerceAndCheckDataType=Ko.getJSONTypes=Ko.getSchemaTypes=Ko.DataType=void 0;var KSr=mse(),GSr=gse(),zSr=p2(),Ar=Vt(),wVe=_r(),nI;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(nI||(Ko.DataType=nI={}));function YSr(e){let t=NVe(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Ko.getSchemaTypes=YSr;function NVe(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(KSr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Ko.getJSONTypes=NVe;function QSr(e,t){let{gen:r,data:n,opts:s}=e,i=WSr(t,s.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,GSr.schemaHasRulesForType)(e,t[0]));if(a){let o=Ase(t,n,s.strictNumbers,nI.Wrong);r.if(o,()=>{i.length?XSr(e,t,i):Ese(e)})}return a}Ko.coerceAndCheckDataType=QSr;var OVe=new Set(["string","number","integer","boolean","null"]);function WSr(e,t){return t?e.filter(r=>OVe.has(r)||t==="array"&&r==="array"):[]}function XSr(e,t,r){let{gen:n,data:s,opts:i}=e,a=n.let("dataType",(0,Ar._)`typeof ${s}`),o=n.let("coerced",(0,Ar._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ar._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ar._)`${s}[0]`).assign(a,(0,Ar._)`typeof ${s}`).if(Ase(t,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ar._)`${o} !== undefined`);for(let u of r)(OVe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),Ese(e),n.endIf(),n.if((0,Ar._)`${o} !== undefined`,()=>{n.assign(s,o),JSr(e,o)});function c(u){switch(u){case"string":n.elseIf((0,Ar._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ar._)`"" + ${s}`).elseIf((0,Ar._)`${s} === null`).assign(o,(0,Ar._)`""`);return;case"number":n.elseIf((0,Ar._)`${a} == "boolean" || ${s} === null - || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Ar._)`+${s}`);return;case"integer":n.elseIf((0,Ar._)`${a} === "boolean" || ${s} === null - || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Ar._)`+${s}`);return;case"boolean":n.elseIf((0,Ar._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Ar._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Ar._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Ar._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,Ar._)`[${s}]`)}}}function JSr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Ar._)`${t} !== undefined`,()=>e.assign((0,Ar._)`${t}[${r}]`,n))}function _se(e,t,r,n=nI.Correct){let s=n===nI.Correct?Ar.operators.EQ:Ar.operators.NEQ,i;switch(e){case"null":return(0,Ar._)`${t} ${s} null`;case"array":i=(0,Ar._)`Array.isArray(${t})`;break;case"object":i=(0,Ar._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,Ar._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,Ar._)`typeof ${t} ${s} ${e}`}return n===nI.Correct?i:(0,Ar.not)(i);function a(o=Ar.nil){return(0,Ar.and)((0,Ar._)`typeof ${t} == "number"`,o,r?(0,Ar._)`isFinite(${t})`:Ar.nil)}}Ko.checkDataType=_se;function Ase(e,t,r,n){if(e.length===1)return _se(e[0],t,r,n);let s,i=(0,wVe.toHash)(e);if(i.array&&i.object){let a=(0,Ar._)`typeof ${t} != "object"`;s=i.null?a:(0,Ar._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ar.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ar.and)(s,_se(a,t,r,n));return s}Ko.checkDataTypes=Ase;var ZSr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Ar._)`{type: ${e}}`:(0,Ar._)`{type: ${t}}`};function Ese(e){let t=eTr(e);(0,zSr.reportError)(t,ZSr)}Ko.reportTypeError=Ese;function eTr(e){let{gen:t,data:r,schema:n}=e,s=(0,wVe.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var PVe=S(m8=>{"use strict";Object.defineProperty(m8,"__esModule",{value:!0});m8.assignDefaults=void 0;var sI=Vt(),tTr=_r();function rTr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)DVe(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,i)=>DVe(e,i,s.default))}m8.assignDefaults=rTr;function DVe(e,t,r){let{gen:n,compositeRule:s,data:i,opts:a}=e;if(r===void 0)return;let o=(0,sI._)`${i}${(0,sI.getProperty)(t)}`;if(s){(0,tTr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let c=(0,sI._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,sI._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,sI._)`${o} = ${(0,sI.stringify)(r)}`)}});var ho=S(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.validateUnion=cs.validateArray=cs.usePattern=cs.callValidateCode=cs.schemaProperties=cs.allSchemaProperties=cs.noPropertyInData=cs.propertyInData=cs.isOwnProperty=cs.hasPropFunc=cs.reportMissingProp=cs.checkMissingProp=cs.checkReportMissingProp=void 0;var Ks=Vt(),yse=_r(),cA=Ad(),nTr=_r();function sTr(e,t){let{gen:r,data:n,it:s}=e;r.if(Sse(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0,Ks._)`${t}`},!0),e.error()})}cs.checkReportMissingProp=sTr;function iTr({gen:e,data:t,it:{opts:r}},n,s){return(0,Ks.or)(...n.map(i=>(0,Ks.and)(Sse(e,t,i,r.ownProperties),(0,Ks._)`${s} = ${i}`)))}cs.checkMissingProp=iTr;function aTr(e,t){e.setParams({missingProperty:t},!0),e.error()}cs.reportMissingProp=aTr;function LVe(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ks._)`Object.prototype.hasOwnProperty`})}cs.hasPropFunc=LVe;function vse(e,t,r){return(0,Ks._)`${LVe(e)}.call(${t}, ${r})`}cs.isOwnProperty=vse;function oTr(e,t,r,n){let s=(0,Ks._)`${t}${(0,Ks.getProperty)(r)} !== undefined`;return n?(0,Ks._)`${s} && ${vse(e,t,r)}`:s}cs.propertyInData=oTr;function Sse(e,t,r,n){let s=(0,Ks._)`${t}${(0,Ks.getProperty)(r)} === undefined`;return n?(0,Ks.or)(s,(0,Ks.not)(vse(e,t,r))):s}cs.noPropertyInData=Sse;function MVe(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}cs.allSchemaProperties=MVe;function cTr(e,t){return MVe(t).filter(r=>!(0,yse.alwaysValidSchema)(e,t[r]))}cs.schemaProperties=cTr;function uTr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Ks._)`${e}, ${t}, ${n}${s}`:t,d=[[cA.default.instancePath,(0,Ks.strConcat)(cA.default.instancePath,i)],[cA.default.parentData,a.parentData],[cA.default.parentDataProperty,a.parentDataProperty],[cA.default.rootData,cA.default.rootData]];a.opts.dynamicRef&&d.push([cA.default.dynamicAnchors,cA.default.dynamicAnchors]);let f=(0,Ks._)`${l}, ${r.object(...d)}`;return c!==Ks.nil?(0,Ks._)`${o}.call(${c}, ${f})`:(0,Ks._)`${o}(${f})`}cs.callValidateCode=uTr;var lTr=(0,Ks._)`new RegExp`;function dTr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Ks._)`${s.code==="new RegExp"?lTr:(0,nTr.useFunc)(e,s)}(${r}, ${n})`})}cs.usePattern=dTr;function fTr(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(i,!0),a(()=>t.break()),i;function a(o){let c=t.const("len",(0,Ks._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:yse.Type.Num},i),t.if((0,Ks.not)(i),o)})}}cs.validateArray=fTr;function hTr(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,yse.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);t.assign(a,(0,Ks._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,Ks.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}cs.validateUnion=hTr});var UVe=S(lh=>{"use strict";Object.defineProperty(lh,"__esModule",{value:!0});lh.validateKeywordUsage=lh.validSchemaType=lh.funcKeywordCode=lh.macroKeywordCode=void 0;var Uc=Vt(),Iv=Ad(),pTr=ho(),mTr=p2();function gTr(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=e,o=t.macro.call(a.self,s,i,a),c=BVe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");e.subschema({schema:o,schemaPath:Uc.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}lh.macroKeywordCode=gTr;function _Tr(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=e;ETr(c,t);let u=!o&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=BVe(n,s,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&kVe(e),_(()=>e.error());else{let g=t.async?h():p();t.modifying&&kVe(e),_(()=>ATr(e,g))}}function h(){let g=n.let("ruleErrs",null);return n.try(()=>m((0,Uc._)`await `),y=>n.assign(d,!1).if((0,Uc._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,Uc._)`${y}.errors`),()=>n.throw(y))),g}function p(){let g=(0,Uc._)`${l}.errors`;return n.assign(g,null),m(Uc.nil),g}function m(g=t.async?(0,Uc._)`await `:Uc.nil){let y=c.opts.passContext?Iv.default.this:Iv.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,Uc._)`${g}${(0,pTr.callValidateCode)(e,l,y,A)}`,t.modifying)}function _(g){var y;n.if((0,Uc.not)((y=t.valid)!==null&&y!==void 0?y:d),g)}}lh.funcKeywordCode=_Tr;function kVe(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Uc._)`${n.parentData}[${n.parentDataProperty}]`))}function ATr(e,t){let{gen:r}=e;r.if((0,Uc._)`Array.isArray(${t})`,()=>{r.assign(Iv.default.vErrors,(0,Uc._)`${Iv.default.vErrors} === null ? ${t} : ${Iv.default.vErrors}.concat(${t})`).assign(Iv.default.errors,(0,Uc._)`${Iv.default.vErrors}.length`),(0,mTr.extendErrors)(e)},()=>e.error())}function ETr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function BVe(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Uc.stringify)(r)})}function yTr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}lh.validSchemaType=yTr;function vTr({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}lh.validateKeywordUsage=vTr});var $Ve=S(uA=>{"use strict";Object.defineProperty(uA,"__esModule",{value:!0});uA.extendSubschemaMode=uA.extendSubschemaData=uA.getSubschema=void 0;var dh=Vt(),FVe=_r();function STr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,dh._)`${e.schemaPath}${(0,dh.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,dh._)`${e.schemaPath}${(0,dh.getProperty)(t)}${(0,dh.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,FVe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}uA.getSubschema=STr;function TTr(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=o.let("data",(0,dh._)`${t.data}${(0,dh.getProperty)(r)}`,!0);c(f),e.errorPath=(0,dh.str)`${u}${(0,FVe.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,dh._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(s!==void 0){let u=s instanceof dh.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}uA.extendSubschemaData=TTr;function bTr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}uA.extendSubschemaMode=bTr});var HVe=S((aVn,qVe)=>{"use strict";var lA=qVe.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};g8(t,n,s,e,"",e)};lA.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};lA.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};lA.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};lA.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function g8(e,t,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in lA.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.getSchemaRefs=Ru.resolveUrl=Ru.normalizeId=Ru._getFullPath=Ru.getFullPath=Ru.inlineRef=void 0;var RTr=_r(),CTr=dd(),xTr=HVe(),wTr=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function NTr(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Tse(e):t?VVe(e)<=t:!1}Ru.inlineRef=NTr;var OTr=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Tse(e){for(let t in e){if(OTr.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Tse)||typeof r=="object"&&Tse(r))return!0}return!1}function VVe(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!wTr.has(r)&&(typeof e[r]=="object"&&(0,RTr.eachItem)(e[r],n=>t+=VVe(n)),t===1/0))return 1/0}return t}function jVe(e,t="",r){r!==!1&&(t=iI(t));let n=e.parse(t);return KVe(e,n)}Ru.getFullPath=jVe;function KVe(e,t){return e.serialize(t).split("#")[0]+"#"}Ru._getFullPath=KVe;var DTr=/#\/?$/;function iI(e){return e?e.replace(DTr,""):""}Ru.normalizeId=iI;function PTr(e,t,r){return r=iI(r),e.resolve(t,r)}Ru.resolveUrl=PTr;var LTr=/^[a-z_][-a-z0-9._]*$/i;function MTr(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=iI(e[r]||t),i={"":s},a=jVe(n,s,!1),o={},c=new Set;return xTr(e,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=a+f,_=i[p];typeof d[r]=="string"&&(_=g.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),i[f]=_;function g(A){let E=this.opts.uriResolver.resolve;if(A=iI(_?E(_,A):A),c.has(A))throw l(A);c.add(A);let v=this.refs[A];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,A):A!==iI(m)&&(A[0]==="#"?(u(d,o[A],A),o[A]=d):this.refs[A]=m),A}function y(A){if(typeof A=="string"){if(!LTr.test(A))throw new Error(`invalid anchor "${A}"`);g.call(this,`#${A}`)}}}),o;function u(d,f,h){if(f!==void 0&&!CTr(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ru.getSchemaRefs=MTr});var aI=S(dA=>{"use strict";Object.defineProperty(dA,"__esModule",{value:!0});dA.getData=dA.KeywordCxt=dA.validateFunctionCode=void 0;var WVe=RVe(),GVe=m2(),Ise=gse(),_8=m2(),kTr=PVe(),A2=UVe(),bse=$Ve(),Ct=Vt(),nr=Ad(),BTr=g2(),um=_r(),_2=p2();function UTr(e){if(ZVe(e)&&(e7e(e),JVe(e))){qTr(e);return}XVe(e,()=>(0,WVe.topBoolOrEmptySchema)(e))}dA.validateFunctionCode=UTr;function XVe({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){s.code.es5?e.func(t,(0,Ct._)`${nr.default.data}, ${nr.default.valCxt}`,n.$async,()=>{e.code((0,Ct._)`"use strict"; ${zVe(r,s)}`),$Tr(e,s),e.code(i)}):e.func(t,(0,Ct._)`${nr.default.data}, ${FTr(s)}`,n.$async,()=>e.code(zVe(r,s)).code(i))}function FTr(e){return(0,Ct._)`{${nr.default.instancePath}="", ${nr.default.parentData}, ${nr.default.parentDataProperty}, ${nr.default.rootData}=${nr.default.data}${e.dynamicRef?(0,Ct._)`, ${nr.default.dynamicAnchors}={}`:Ct.nil}}={}`}function $Tr(e,t){e.if(nr.default.valCxt,()=>{e.var(nr.default.instancePath,(0,Ct._)`${nr.default.valCxt}.${nr.default.instancePath}`),e.var(nr.default.parentData,(0,Ct._)`${nr.default.valCxt}.${nr.default.parentData}`),e.var(nr.default.parentDataProperty,(0,Ct._)`${nr.default.valCxt}.${nr.default.parentDataProperty}`),e.var(nr.default.rootData,(0,Ct._)`${nr.default.valCxt}.${nr.default.rootData}`),t.dynamicRef&&e.var(nr.default.dynamicAnchors,(0,Ct._)`${nr.default.valCxt}.${nr.default.dynamicAnchors}`)},()=>{e.var(nr.default.instancePath,(0,Ct._)`""`),e.var(nr.default.parentData,(0,Ct._)`undefined`),e.var(nr.default.parentDataProperty,(0,Ct._)`undefined`),e.var(nr.default.rootData,nr.default.data),t.dynamicRef&&e.var(nr.default.dynamicAnchors,(0,Ct._)`{}`)})}function qTr(e){let{schema:t,opts:r,gen:n}=e;XVe(e,()=>{r.$comment&&t.$comment&&r7e(e),GTr(e),n.let(nr.default.vErrors,null),n.let(nr.default.errors,0),r.unevaluated&&HTr(e),t7e(e),QTr(e)})}function HTr(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Ct._)`${r}.evaluated`),t.if((0,Ct._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Ct._)`${e.evaluated}.props`,(0,Ct._)`undefined`)),t.if((0,Ct._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Ct._)`${e.evaluated}.items`,(0,Ct._)`undefined`))}function zVe(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Ct._)`/*# sourceURL=${r} */`:Ct.nil}function VTr(e,t){if(ZVe(e)&&(e7e(e),JVe(e))){jTr(e,t);return}(0,WVe.boolOrEmptySchema)(e,t)}function JVe({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function ZVe(e){return typeof e.schema!="boolean"}function jTr(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&r7e(e),zTr(e),YTr(e);let i=n.const("_errs",nr.default.errors);t7e(e,i),n.var(t,(0,Ct._)`${i} === ${nr.default.errors}`)}function e7e(e){(0,um.checkUnknownRules)(e),KTr(e)}function t7e(e,t){if(e.opts.jtd)return YVe(e,[],!1,t);let r=(0,GVe.getSchemaTypes)(e.schema),n=(0,GVe.coerceAndCheckDataType)(e,r);YVe(e,r,!n,t)}function KTr(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,um.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function GTr(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,um.checkStrictMode)(e,"default is ignored in the schema root")}function zTr(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,BTr.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function YTr(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function r7e({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code((0,Ct._)`${nr.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,Ct.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,Ct._)`${nr.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function QTr(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;r.$async?t.if((0,Ct._)`${nr.default.errors} === 0`,()=>t.return(nr.default.data),()=>t.throw((0,Ct._)`new ${s}(${nr.default.vErrors})`)):(t.assign((0,Ct._)`${n}.errors`,nr.default.vErrors),i.unevaluated&&WTr(e),t.return((0,Ct._)`${nr.default.errors} === 0`))}function WTr({gen:e,evaluated:t,props:r,items:n}){r instanceof Ct.Name&&e.assign((0,Ct._)`${t}.props`,r),n instanceof Ct.Name&&e.assign((0,Ct._)`${t}.items`,n)}function YVe(e,t,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,um.schemaHasRulesButRef)(i,l))){s.block(()=>s7e(e,"$ref",l.all.$ref.definition));return}c.jtd||XTr(e,t),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Ise.shouldUseGroup)(i,f)&&(f.type?(s.if((0,_8.checkDataType)(f.type,a,c.strictNumbers)),QVe(e,f),t.length===1&&t[0]===f.type&&r&&(s.else(),(0,_8.reportTypeError)(e)),s.endIf()):QVe(e,f),o||s.if((0,Ct._)`${nr.default.errors} === ${n||0}`))}}function QVe(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0,kTr.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Ise.shouldUseRule)(n,i)&&s7e(e,i.keyword,i.definition,t.type)})}function XTr(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(JTr(e,t),e.opts.allowUnionTypes||ZTr(e,t),ebr(e,e.dataTypes))}function JTr(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{n7e(e.dataTypes,r)||Rse(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),rbr(e,t)}}function ZTr(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Rse(e,"use allowUnionTypes to allow union type keyword")}function ebr(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,Ise.shouldUseRule)(e.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>tbr(t,a))&&Rse(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function tbr(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function n7e(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function rbr(e,t){let r=[];for(let n of e.dataTypes)n7e(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Rse(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,um.checkStrictMode)(e,t,e.opts.strictTypes)}var A8=class{constructor(t,r,n){if((0,A2.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,um.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",i7e(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,A2.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",nr.default.errors))}result(t,r,n){this.failResult((0,Ct.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Ct.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Ct._)`${r} !== undefined && (${(0,Ct.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?_2.reportExtraError:_2.reportError)(this,this.def.error,r)}$dataError(){(0,_2.reportError)(this,this.def.$dataError||_2.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,_2.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Ct.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Ct.nil,r=Ct.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,Ct.or)((0,Ct._)`${s} === undefined`,r)),t!==Ct.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Ct.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,Ct.or)(a(),o());function a(){if(n.length){if(!(r instanceof Ct.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,Ct._)`${(0,_8.checkDataTypes)(c,r,i.opts.strictNumbers,_8.DataType.Wrong)}`}return Ct.nil}function o(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return(0,Ct._)`!${c}(${r})`}return Ct.nil}}subschema(t,r){let n=(0,bse.getSubschema)(this.it,t);(0,bse.extendSubschemaData)(n,this.it,t),(0,bse.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return VTr(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=um.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=um.mergeEvaluated.items(s,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(t,Ct.Name)),!0}};dA.KeywordCxt=A8;function s7e(e,t,r,n){let s=new A8(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0,A2.funcKeywordCode)(s,r):"macro"in r?(0,A2.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,A2.funcKeywordCode)(s,r)}var nbr=/^\/(?:[^~]|~0|~1)*$/,sbr=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function i7e(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return nr.default.rootData;if(e[0]==="/"){if(!nbr.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,i=nr.default.rootData}else{let u=sbr.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,Ct._)`${i}${(0,Ct.getProperty)((0,um.unescapeJsonPointer)(u))}`,a=(0,Ct._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}dA.getData=i7e});var E2=S(xse=>{"use strict";Object.defineProperty(xse,"__esModule",{value:!0});var Cse=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};xse.default=Cse});var lm=S(Ose=>{"use strict";Object.defineProperty(Ose,"__esModule",{value:!0});var wse=g2(),Nse=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,wse.resolveUrl)(t,r,n),this.missingSchema=(0,wse.normalizeId)((0,wse.getFullPath)(t,this.missingRef))}};Ose.default=Nse});var Cv=S(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});Ed.resolveSchema=Ed.getCompilingSchema=Ed.resolveRef=Ed.compileSchema=Ed.SchemaEnv=void 0;var Lf=Vt(),ibr=E2(),Rv=Ad(),Mf=g2(),a7e=_r(),abr=aI(),oI=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Mf.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Ed.SchemaEnv=oI;function Pse(e){let t=o7e.call(this,e);if(t)return t;let r=(0,Mf.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Lf.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;e.$async&&(o=a.scopeValue("Error",{ref:ibr.default,code:(0,Lf._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Rv.default.data,parentData:Rv.default.parentData,parentDataProperty:Rv.default.parentDataProperty,dataNames:[Rv.default.data],dataPathArr:[Lf.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Lf.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Lf.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Lf._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,abr.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Rv.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let h=new Function(`${Rv.default.self}`,`${Rv.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:m}=u;h.evaluated={props:p instanceof Lf.Name?void 0:p,items:m instanceof Lf.Name?void 0:m,dynamicProps:p instanceof Lf.Name,dynamicItems:m instanceof Lf.Name},h.source&&(h.source.evaluated=(0,Lf.stringify)(h.evaluated))}return e.validate=h,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}Ed.compileSchema=Pse;function obr(e,t,r){var n;r=(0,Mf.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=lbr.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new oI({schema:a,schemaId:o,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=cbr.call(this,i)}Ed.resolveRef=obr;function cbr(e){return(0,Mf.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Pse.call(this,e)}function o7e(e){for(let t of this._compilations)if(ubr(t,e))return t}Ed.getCompilingSchema=o7e;function ubr(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function lbr(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||E8.call(this,e,t)}function E8(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Mf._getFullPath)(this.opts.uriResolver,r),s=(0,Mf.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Dse.call(this,r,e);let i=(0,Mf.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=E8.call(this,e,a);return typeof o?.schema!="object"?void 0:Dse.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||Pse.call(this,a),i===(0,Mf.normalizeId)(t)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Mf.resolveUrl)(this.opts.uriResolver,s,u)),new oI({schema:o,schemaId:c,root:e,baseId:s})}return Dse.call(this,r,a)}}Ed.resolveSchema=E8;var dbr=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Dse(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,a7e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!dbr.has(o)&&u&&(t=(0,Mf.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,a7e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Mf.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=E8.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new oI({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var c7e=S((fVn,fbr)=>{fbr.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Mse=S((hVn,f7e)=>{"use strict";var hbr=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),l7e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Lse(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var pbr=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function u7e(e){return e.length=0,!0}function mbr(e,t,r){if(e.length){let n=Lse(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function gbr(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=mbr;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=u7e}else{s.push(u);continue}}return s.length&&(o===u7e?r.zone=s.join(""):a?n.push(s.join("")):n.push(Lse(s))),r.address=n.join(""),r}function d7e(e){if(_br(e,":")<2)return{host:e,isIPV6:!1};let t=gbr(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function _br(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:vbr}=Mse(),Sbr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Tbr=["http","https","ws","wss","urn","urn:uuid"];function bbr(e){return Tbr.indexOf(e)!==-1}function kse(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function h7e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function p7e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function Ibr(e){return e.secure=kse(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Rbr(e){if((e.port===(kse(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function Cbr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Sbr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=Bse(s);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function xbr(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=Bse(s);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function wbr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!vbr(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Nbr(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var m7e={scheme:"http",domainHost:!0,parse:h7e,serialize:p7e},Obr={scheme:"https",domainHost:m7e.domainHost,parse:h7e,serialize:p7e},y8={scheme:"ws",domainHost:!0,parse:Ibr,serialize:Rbr},Dbr={scheme:"wss",domainHost:y8.domainHost,parse:y8.parse,serialize:y8.serialize},Pbr={scheme:"urn",parse:Cbr,serialize:xbr,skipNormalize:!0},Lbr={scheme:"urn:uuid",parse:wbr,serialize:Nbr,skipNormalize:!0},v8={http:m7e,https:Obr,ws:y8,wss:Dbr,urn:Pbr,"urn:uuid":Lbr};Object.setPrototypeOf(v8,null);function Bse(e){return e&&(v8[e]||v8[e.toLowerCase()])||void 0}g7e.exports={wsIsSecure:kse,SCHEMES:v8,isValidSchemeName:bbr,getSchemeHandler:Bse}});var y7e=S((mVn,T8)=>{"use strict";var{normalizeIPv6:Mbr,removeDotSegments:y2,recomposeAuthority:kbr,normalizeComponentEncoding:S8,isIPv4:Bbr,nonSimpleDomain:Ubr}=Mse(),{SCHEMES:Fbr,getSchemeHandler:A7e}=_7e();function $br(e,t){return typeof e=="string"?e=fh(dm(e,t),t):typeof e=="object"&&(e=dm(fh(e,t),t)),e}function qbr(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=E7e(dm(e,n),dm(t,n),n,!0);return n.skipEscape=!0,fh(s,n)}function E7e(e,t,r,n){let s={};return n||(e=dm(fh(e,r),r),t=dm(fh(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=y2(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=y2(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=y2(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=y2(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function Hbr(e,t,r){return typeof e=="string"?(e=unescape(e),e=fh(S8(dm(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=fh(S8(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=fh(S8(dm(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=fh(S8(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function fh(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=A7e(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=kbr(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=y2(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var Vbr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function dm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(Vbr);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(Bbr(n.host)===!1){let c=Mbr(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=A7e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&Ubr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Use={SCHEMES:Fbr,normalize:$br,resolve:qbr,resolveComponent:E7e,equal:Hbr,serialize:fh,parse:dm};T8.exports=Use;T8.exports.default=Use;T8.exports.fastUri=Use});var S7e=S(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});var v7e=y7e();v7e.code='require("ajv/dist/runtime/uri").default';Fse.default=v7e});var Hse=S(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.CodeGen=po.Name=po.nil=po.stringify=po.str=po._=po.KeywordCxt=void 0;var jbr=aI();Object.defineProperty(po,"KeywordCxt",{enumerable:!0,get:function(){return jbr.KeywordCxt}});var cI=Vt();Object.defineProperty(po,"_",{enumerable:!0,get:function(){return cI._}});Object.defineProperty(po,"str",{enumerable:!0,get:function(){return cI.str}});Object.defineProperty(po,"stringify",{enumerable:!0,get:function(){return cI.stringify}});Object.defineProperty(po,"nil",{enumerable:!0,get:function(){return cI.nil}});Object.defineProperty(po,"Name",{enumerable:!0,get:function(){return cI.Name}});Object.defineProperty(po,"CodeGen",{enumerable:!0,get:function(){return cI.CodeGen}});var Kbr=E2(),C7e=lm(),Gbr=mse(),v2=Cv(),zbr=Vt(),S2=g2(),b8=m2(),qse=_r(),T7e=c7e(),Ybr=S7e(),x7e=(e,t)=>new RegExp(e,t);x7e.code="new RegExp";var Qbr=["removeAdditional","useDefaults","coerceTypes"],Wbr=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Xbr={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Jbr={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},b7e=200;function Zbr(e){var t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y,A,E,v,b,I,T,x;let w=e.strict,D=(t=e.code)===null||t===void 0?void 0:t.optimize,M=D===!0||D===void 0?1:D||0,L=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:x7e,U=(s=e.uriResolver)!==null&&s!==void 0?s:Ybr.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:w)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=e.strictNumbers)!==null&&o!==void 0?o:w)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:w)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:w)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:L}:{optimize:M,regExp:L},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:b7e,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:b7e,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(y=e.messages)!==null&&y!==void 0?y:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(v=e.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(b=e.validateSchema)!==null&&b!==void 0?b:!0,validateFormats:(I=e.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(T=e.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(x=e.int32range)!==null&&x!==void 0?x:!0,uriResolver:U}}var T2=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...Zbr(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new zbr.ValueScope({scope:{},prefixes:Wbr,es5:r,lines:n}),this.logger=i1r(t.logger);let s=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Gbr.getRules)(),I7e.call(this,Xbr,t,"NOT SUPPORTED"),I7e.call(this,Jbr,t,"DEPRECATED","warn"),this._metaOpts=n1r.call(this),t.formats&&t1r.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&r1r.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),e1r.call(this),t.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=T7e;n==="id"&&(s={...T7e},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof C7e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,S2.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,t);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(t){let r;for(;typeof(r=R7e.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new v2.SchemaEnv({schema:{},schemaId:n});if(r=v2.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=R7e.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,S2.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(o1r.call(this,n,r),!r)return(0,qse.eachItem)(n,i=>$se.call(this,i)),this;u1r.call(this,r);let s={...r,type:(0,b8.getJSONTypes)(r.type),schemaType:(0,b8.getJSONTypes)(r.schemaType)};return(0,qse.eachItem)(n,s.type.length===0?i=>$se.call(this,i,s):i=>s.type.forEach(a=>$se.call(this,i,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===t);s>=0&&n.rules.splice(s,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let i=s.split("/").slice(1),a=t;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=w7e(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]))}}_addSchema(t,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,S2.normalizeId)(a||n);let u=S2.getSchemaRefs.call(this,t,n);return c=new v2.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):v2.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{v2.compileSchema.call(this,t)}finally{this.opts=r}}};T2.ValidationError=Kbr.default;T2.MissingRefError=C7e.default;po.default=T2;function I7e(e,t,r,n="error"){for(let s in e){let i=s;i in t&&this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function R7e(e){return e=(0,S2.normalizeId)(e),this.schemas[e]||this.refs[e]}function e1r(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function t1r(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function r1r(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function n1r(){let e={...this.opts};for(let t of Qbr)delete e[t];return e}var s1r={log(){},warn(){},error(){}};function i1r(e){if(e===!1)return s1r;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var a1r=/^[a-z_$][a-z0-9_$:-]*$/i;function o1r(e,t){let{RULES:r}=this;if((0,qse.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!a1r.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function $se(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,b8.getJSONTypes)(t.type),schemaType:(0,b8.getJSONTypes)(t.schemaType)}};t.before?c1r.call(this,a,o,t.before):a.rules.push(o),i.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function c1r(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function u1r(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=w7e(t)),e.validateSchema=this.compile(t,!0))}var l1r={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function w7e(e){return{anyOf:[e,l1r]}}});var N7e=S(Vse=>{"use strict";Object.defineProperty(Vse,"__esModule",{value:!0});var d1r={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Vse.default=d1r});var jse=S(xv=>{"use strict";Object.defineProperty(xv,"__esModule",{value:!0});xv.callRef=xv.getValidate=void 0;var f1r=lm(),O7e=ho(),Cu=Vt(),uI=Ad(),D7e=Cv(),I8=_r(),h1r={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=D7e.resolveRef.call(c,u,s,r);if(l===void 0)throw new f1r.default(n.opts.uriResolver,s,r);if(l instanceof D7e.SchemaEnv)return f(l);return h(l);function d(){if(i===u)return R8(e,a,i,i.$async);let p=t.scopeValue("root",{ref:u});return R8(e,(0,Cu._)`${p}.validate`,u,u.$async)}function f(p){let m=P7e(e,p);R8(e,m,p,p.$async)}function h(p){let m=t.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Cu.stringify)(p)}:{ref:p}),_=t.name("valid"),g=e.subschema({schema:p,dataTypes:[],schemaPath:Cu.nil,topSchemaRef:m,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function P7e(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Cu._)`${r.scopeValue("wrapper",{ref:t})}.validate`}xv.getValidate=P7e;function R8(e,t,r,n){let{gen:s,it:i}=e,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?uI.default.this:Cu.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Cu._)`await ${(0,O7e.callValidateCode)(e,t,u)}`),h(t),a||s.assign(p,!0)},m=>{s.if((0,Cu._)`!(${m} instanceof ${i.ValidationError})`,()=>s.throw(m)),f(m),a||s.assign(p,!1)}),e.ok(p)}function d(){e.result((0,O7e.callValidateCode)(e,t,u),()=>h(t),()=>f(t))}function f(p){let m=(0,Cu._)`${p}.errors`;s.assign(uI.default.vErrors,(0,Cu._)`${uI.default.vErrors} === null ? ${m} : ${uI.default.vErrors}.concat(${m})`),s.assign(uI.default.errors,(0,Cu._)`${uI.default.vErrors}.length`)}function h(p){var m;if(!i.opts.unevaluated)return;let _=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(i.props=I8.mergeEvaluated.props(s,_.props,i.props));else{let g=s.var("props",(0,Cu._)`${p}.evaluated.props`);i.props=I8.mergeEvaluated.props(s,g,i.props,Cu.Name)}if(i.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(i.items=I8.mergeEvaluated.items(s,_.items,i.items));else{let g=s.var("items",(0,Cu._)`${p}.evaluated.items`);i.items=I8.mergeEvaluated.items(s,g,i.items,Cu.Name)}}}xv.callRef=R8;xv.default=h1r});var L7e=S(Kse=>{"use strict";Object.defineProperty(Kse,"__esModule",{value:!0});var p1r=N7e(),m1r=jse(),g1r=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",p1r.default,m1r.default];Kse.default=g1r});var M7e=S(Gse=>{"use strict";Object.defineProperty(Gse,"__esModule",{value:!0});var C8=Vt(),fA=C8.operators,x8={maximum:{okStr:"<=",ok:fA.LTE,fail:fA.GT},minimum:{okStr:">=",ok:fA.GTE,fail:fA.LT},exclusiveMaximum:{okStr:"<",ok:fA.LT,fail:fA.GTE},exclusiveMinimum:{okStr:">",ok:fA.GT,fail:fA.LTE}},_1r={message:({keyword:e,schemaCode:t})=>(0,C8.str)`must be ${x8[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,C8._)`{comparison: ${x8[e].okStr}, limit: ${t}}`},A1r={keyword:Object.keys(x8),type:"number",schemaType:"number",$data:!0,error:_1r,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,C8._)`${r} ${x8[t].fail} ${n} || isNaN(${r})`)}};Gse.default=A1r});var k7e=S(zse=>{"use strict";Object.defineProperty(zse,"__esModule",{value:!0});var b2=Vt(),E1r={message:({schemaCode:e})=>(0,b2.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,b2._)`{multipleOf: ${e}}`},y1r={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:E1r,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,a=t.let("res"),o=i?(0,b2._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,b2._)`${a} !== parseInt(${a})`;e.fail$data((0,b2._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};zse.default=y1r});var U7e=S(Yse=>{"use strict";Object.defineProperty(Yse,"__esModule",{value:!0});function B7e(e){let t=e.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(Qse,"__esModule",{value:!0});var wv=Vt(),v1r=_r(),S1r=U7e(),T1r={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,wv.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,wv._)`{limit: ${e}}`},b1r={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:T1r,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?wv.operators.GT:wv.operators.LT,a=s.opts.unicode===!1?(0,wv._)`${r}.length`:(0,wv._)`${(0,v1r.useFunc)(e.gen,S1r.default)}(${r})`;e.fail$data((0,wv._)`${a} ${i} ${n}`)}};Qse.default=b1r});var $7e=S(Wse=>{"use strict";Object.defineProperty(Wse,"__esModule",{value:!0});var I1r=ho(),R1r=_r(),lI=Vt(),C1r={message:({schemaCode:e})=>(0,lI.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,lI._)`{pattern: ${e}}`},x1r={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:C1r,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0,lI._)`new RegExp`:(0,R1r.useFunc)(t,c),l=t.let("valid");t.try(()=>t.assign(l,(0,lI._)`${u}(${i}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,lI._)`!${l}`)}else{let c=(0,I1r.usePattern)(e,s);e.fail$data((0,lI._)`!${c}.test(${r})`)}}};Wse.default=x1r});var q7e=S(Xse=>{"use strict";Object.defineProperty(Xse,"__esModule",{value:!0});var I2=Vt(),w1r={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,I2.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,I2._)`{limit: ${e}}`},N1r={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:w1r,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?I2.operators.GT:I2.operators.LT;e.fail$data((0,I2._)`Object.keys(${r}).length ${s} ${n}`)}};Xse.default=N1r});var H7e=S(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var R2=ho(),C2=Vt(),O1r=_r(),D1r={message:({params:{missingProperty:e}})=>(0,C2.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,C2._)`{missingProperty: ${e}}`},P1r={keyword:"required",type:"object",schemaType:"array",$data:!0,error:D1r,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:a}=e,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let m of r)if(h?.[m]===void 0&&!p.has(m)){let _=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${m}" is not defined at "${_}" (strictRequired)`;(0,O1r.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(C2.nil,d);else for(let h of r)(0,R2.checkReportMissingProp)(e,h)}function l(){let h=t.let("missing");if(c||i){let p=t.let("valid",!0);e.block$data(p,()=>f(h,p)),e.ok(p)}else t.if((0,R2.checkMissingProp)(e,r,h)),(0,R2.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,R2.noPropertyInData)(t,s,h,o.ownProperties),()=>e.error())})}function f(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,R2.propertyInData)(t,s,h,o.ownProperties)),t.if((0,C2.not)(p),()=>{e.error(),t.break()})},C2.nil)}}};Jse.default=P1r});var V7e=S(Zse=>{"use strict";Object.defineProperty(Zse,"__esModule",{value:!0});var x2=Vt(),L1r={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,x2.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,x2._)`{limit: ${e}}`},M1r={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:L1r,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?x2.operators.GT:x2.operators.LT;e.fail$data((0,x2._)`${r}.length ${s} ${n}`)}};Zse.default=M1r});var w8=S(eie=>{"use strict";Object.defineProperty(eie,"__esModule",{value:!0});var j7e=dd();j7e.code='require("ajv/dist/runtime/equal").default';eie.default=j7e});var K7e=S(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});var tie=m2(),mo=Vt(),k1r=_r(),B1r=w8(),U1r={message:({params:{i:e,j:t}})=>(0,mo.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,mo._)`{i: ${e}, j: ${t}}`},F1r={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:U1r,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=e;if(!n&&!s)return;let c=t.let("valid"),u=i.items?(0,tie.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,mo._)`${a} === false`),e.ok(c);function l(){let p=t.let("i",(0,mo._)`${r}.length`),m=t.let("j");e.setParams({i:p,j:m}),t.assign(c,!0),t.if((0,mo._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let _=t.name("item"),g=(0,tie.checkDataTypes)(u,_,o.opts.strictNumbers,tie.DataType.Wrong),y=t.const("indices",(0,mo._)`{}`);t.for((0,mo._)`;${p}--;`,()=>{t.let(_,(0,mo._)`${r}[${p}]`),t.if(g,(0,mo._)`continue`),u.length>1&&t.if((0,mo._)`typeof ${_} == "string"`,(0,mo._)`${_} += "_"`),t.if((0,mo._)`typeof ${y}[${_}] == "number"`,()=>{t.assign(m,(0,mo._)`${y}[${_}]`),e.error(),t.assign(c,!1).break()}).code((0,mo._)`${y}[${_}] = ${p}`)})}function h(p,m){let _=(0,k1r.useFunc)(t,B1r.default),g=t.name("outer");t.label(g).for((0,mo._)`;${p}--;`,()=>t.for((0,mo._)`${m} = ${p}; ${m}--;`,()=>t.if((0,mo._)`${_}(${r}[${p}], ${r}[${m}])`,()=>{e.error(),t.assign(c,!1).break(g)})))}}};rie.default=F1r});var G7e=S(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});var nie=Vt(),$1r=_r(),q1r=w8(),H1r={message:"must be equal to constant",params:({schemaCode:e})=>(0,nie._)`{allowedValue: ${e}}`},V1r={keyword:"const",$data:!0,error:H1r,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,nie._)`!${(0,$1r.useFunc)(t,q1r.default)}(${r}, ${s})`):e.fail((0,nie._)`${i} !== ${r}`)}};sie.default=V1r});var z7e=S(iie=>{"use strict";Object.defineProperty(iie,"__esModule",{value:!0});var w2=Vt(),j1r=_r(),K1r=w8(),G1r={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,w2._)`{allowedValues: ${e}}`},z1r={keyword:"enum",schemaType:"array",$data:!0,error:G1r,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,j1r.useFunc)(t,K1r.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",i);l=(0,w2.or)(...s.map((p,m)=>f(h,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,h=>t.if((0,w2._)`${u()}(${r}, ${h})`,()=>t.assign(l,!0).break()))}function f(h,p){let m=s[p];return typeof m=="object"&&m!==null?(0,w2._)`${u()}(${r}, ${h}[${p}])`:(0,w2._)`${r} === ${m}`}}};iie.default=z1r});var Y7e=S(aie=>{"use strict";Object.defineProperty(aie,"__esModule",{value:!0});var Y1r=M7e(),Q1r=k7e(),W1r=F7e(),X1r=$7e(),J1r=q7e(),Z1r=H7e(),eIr=V7e(),tIr=K7e(),rIr=G7e(),nIr=z7e(),sIr=[Y1r.default,Q1r.default,W1r.default,X1r.default,J1r.default,Z1r.default,eIr.default,tIr.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},rIr.default,nIr.default];aie.default=sIr});var cie=S(N2=>{"use strict";Object.defineProperty(N2,"__esModule",{value:!0});N2.validateAdditionalItems=void 0;var Nv=Vt(),oie=_r(),iIr={message:({params:{len:e}})=>(0,Nv.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Nv._)`{limit: ${e}}`},aIr={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:iIr,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,oie.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Q7e(e,n)}};function Q7e(e,t){let{gen:r,schema:n,data:s,keyword:i,it:a}=e;a.items=!0;let o=r.const("len",(0,Nv._)`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Nv._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,oie.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Nv._)`${o} <= ${t.length}`);r.if((0,Nv.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,o,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:oie.Type.Num},u),a.allErrors||r.if((0,Nv.not)(u),()=>r.break())})}}N2.validateAdditionalItems=Q7e;N2.default=aIr});var uie=S(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.validateTuple=void 0;var W7e=Vt(),N8=_r(),oIr=ho(),cIr={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return X7e(e,"additionalItems",t);r.items=!0,!(0,N8.alwaysValidSchema)(r,t)&&e.ok((0,oIr.validateArray)(e))}};function X7e(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=e;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=N8.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,W7e._)`${i}.length`);r.forEach((d,f)=>{(0,N8.alwaysValidSchema)(o,d)||(n.if((0,W7e._)`${u} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},c)),e.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=o,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let _=`"${a}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,N8.checkStrictMode)(o,_,f.strictTuples)}}}O2.validateTuple=X7e;O2.default=cIr});var J7e=S(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});var uIr=uie(),lIr={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,uIr.validateTuple)(e,"items")};lie.default=lIr});var eje=S(die=>{"use strict";Object.defineProperty(die,"__esModule",{value:!0});var Z7e=Vt(),dIr=_r(),fIr=ho(),hIr=cie(),pIr={message:({params:{len:e}})=>(0,Z7e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Z7e._)`{limit: ${e}}`},mIr={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:pIr,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=!0,!(0,dIr.alwaysValidSchema)(n,t)&&(s?(0,hIr.validateAdditionalItems)(e,s):e.ok((0,fIr.validateArray)(e)))}};die.default=mIr});var tje=S(fie=>{"use strict";Object.defineProperty(fie,"__esModule",{value:!0});var yd=Vt(),O8=_r(),gIr={message:({params:{min:e,max:t}})=>t===void 0?(0,yd.str)`must contain at least ${e} valid item(s)`:(0,yd.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,yd._)`{minContains: ${e}}`:(0,yd._)`{minContains: ${e}, maxContains: ${t}}`},_Ir={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:gIr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=t.const("len",(0,yd._)`${s}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,O8.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,O8.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,O8.alwaysValidSchema)(i,r)){let m=(0,yd._)`${l} >= ${a}`;o!==void 0&&(m=(0,yd._)`${m} && ${l} <= ${o}`),e.pass(m);return}i.items=!0;let d=t.name("valid");o===void 0&&a===1?h(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,yd._)`${s}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),_=t.let("count",0);h(m,()=>t.if(m,()=>p(_)))}function h(m,_){t.forRange("i",0,l,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:O8.Type.Num,compositeRule:!0},m),_()})}function p(m){t.code((0,yd._)`${m}++`),o===void 0?t.if((0,yd._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,yd._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,yd._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};fie.default=_Ir});var sje=S(hh=>{"use strict";Object.defineProperty(hh,"__esModule",{value:!0});hh.validateSchemaDeps=hh.validatePropertyDeps=hh.error=void 0;var hie=Vt(),AIr=_r(),D2=ho();hh.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,hie.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,hie._)`{property: ${e}, - missingProperty: ${n}, - depsCount: ${t}, - deps: ${r}}`};var EIr={keyword:"dependencies",type:"object",schemaType:"object",error:hh.error,code(e){let[t,r]=yIr(e);rje(e,t),nje(e,r)}};function yIr({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function rje(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let c=(0,D2.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,D2.checkReportMissingProp)(e,u)}):(r.if((0,hie._)`${c} && (${(0,D2.checkMissingProp)(e,o,i)})`),(0,D2.reportMissingProp)(e,i),r.else())}}hh.validatePropertyDeps=rje;function nje(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,a=r.name("valid");for(let o in t)(0,AIr.alwaysValidSchema)(i,t[o])||(r.if((0,D2.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:o},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}hh.validateSchemaDeps=nje;hh.default=EIr});var aje=S(pie=>{"use strict";Object.defineProperty(pie,"__esModule",{value:!0});var ije=Vt(),vIr=_r(),SIr={message:"property name must be valid",params:({params:e})=>(0,ije._)`{propertyName: ${e.propertyName}}`},TIr={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:SIr,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0,vIr.alwaysValidSchema)(s,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,ije.not)(i),()=>{e.error(!0),s.allErrors||t.break()})}),e.ok(i)}};pie.default=TIr});var gie=S(mie=>{"use strict";Object.defineProperty(mie,"__esModule",{value:!0});var D8=ho(),kf=Vt(),bIr=Ad(),P8=_r(),IIr={message:"must NOT have additional properties",params:({params:e})=>(0,kf._)`{additionalProperty: ${e.additionalProperty}}`},RIr={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:IIr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,P8.alwaysValidSchema)(a,r))return;let u=(0,D8.allSchemaProperties)(n.properties),l=(0,D8.allSchemaProperties)(n.patternProperties);d(),e.ok((0,kf._)`${i} === ${bIr.default.errors}`);function d(){t.forIn("key",s,_=>{!u.length&&!l.length?p(_):t.if(f(_),()=>p(_))})}function f(_){let g;if(u.length>8){let y=(0,P8.schemaRefOrVal)(a,n.properties,"properties");g=(0,D8.isOwnProperty)(t,y,_)}else u.length?g=(0,kf.or)(...u.map(y=>(0,kf._)`${_} === ${y}`)):g=kf.nil;return l.length&&(g=(0,kf.or)(g,...l.map(y=>(0,kf._)`${(0,D8.usePattern)(e,y)}.test(${_})`))),(0,kf.not)(g)}function h(_){t.code((0,kf._)`delete ${s}[${_}]`)}function p(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,P8.alwaysValidSchema)(a,r)){let g=t.name("valid");c.removeAdditional==="failing"?(m(_,g,!1),t.if((0,kf.not)(g),()=>{e.reset(),h(_)})):(m(_,g),o||t.if((0,kf.not)(g),()=>t.break()))}}function m(_,g,y){let A={keyword:"additionalProperties",dataProp:_,dataPropType:P8.Type.Str};y===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,g)}}};mie.default=RIr});var uje=S(Aie=>{"use strict";Object.defineProperty(Aie,"__esModule",{value:!0});var CIr=aI(),oje=ho(),_ie=_r(),cje=gie(),xIr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&cje.default.code(new CIr.KeywordCxt(i,cje.default,"additionalProperties"));let a=(0,oje.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=_ie.mergeEvaluated.props(t,(0,_ie.toHash)(a),i.props));let o=a.filter(d=>!(0,_ie.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=t.name("valid");for(let d of o)u(d)?l(d):(t.if((0,oje.propertyInData)(t,s,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Aie.default=xIr});var hje=S(Eie=>{"use strict";Object.defineProperty(Eie,"__esModule",{value:!0});var lje=ho(),L8=Vt(),dje=_r(),fje=_r(),wIr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:a}=i,o=(0,lje.allSchemaProperties)(r),c=o.filter(m=>(0,dje.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof L8.Name)&&(i.props=(0,fje.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let m of o)u&&h(m),i.allErrors?p(m):(t.var(l,!0),p(m),t.if(l))}function h(m){for(let _ in u)new RegExp(m).test(_)&&(0,dje.checkStrictMode)(i,`property ${_} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){t.forIn("key",n,_=>{t.if((0,L8._)`${(0,lje.usePattern)(e,m)}.test(${_})`,()=>{let g=c.includes(m);g||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:_,dataPropType:fje.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,L8._)`${d}[${_}]`,!0):!g&&!i.allErrors&&t.if((0,L8.not)(l),()=>t.break())})})}}};Eie.default=wIr});var pje=S(yie=>{"use strict";Object.defineProperty(yie,"__esModule",{value:!0});var NIr=_r(),OIr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,NIr.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};yie.default=OIr});var mje=S(vie=>{"use strict";Object.defineProperty(vie,"__esModule",{value:!0});var DIr=ho(),PIr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:DIr.validateUnion,error:{message:"must match a schema in anyOf"}};vie.default=PIr});var gje=S(Sie=>{"use strict";Object.defineProperty(Sie,"__esModule",{value:!0});var M8=Vt(),LIr=_r(),MIr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,M8._)`{passingSchemas: ${e.passing}}`},kIr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:MIr,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),o=t.let("passing",null),c=t.name("_valid");e.setParams({passing:o}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let f;(0,LIr.alwaysValidSchema)(s,l)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,M8._)`${c} && ${a}`).assign(a,!1).assign(o,(0,M8._)`[${o}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,M8.Name)})})}}};Sie.default=kIr});var _je=S(Tie=>{"use strict";Object.defineProperty(Tie,"__esModule",{value:!0});var BIr=_r(),UIr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((i,a)=>{if((0,BIr.alwaysValidSchema)(n,i))return;let o=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(o)})}};Tie.default=UIr});var yje=S(bie=>{"use strict";Object.defineProperty(bie,"__esModule",{value:!0});var k8=Vt(),Eje=_r(),FIr={message:({params:e})=>(0,k8.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,k8._)`{failingKeyword: ${e.ifClause}}`},$Ir={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:FIr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,Eje.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Aje(n,"then"),i=Aje(n,"else");if(!s&&!i)return;let a=t.let("valid",!0),o=t.name("_valid");if(c(),e.reset(),s&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,u("then",l),u("else",l))}else s?t.if(o,u("then")):t.if((0,k8.not)(o),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,k8._)`${l}`):e.setParams({ifClause:l})}}}};function Aje(e,t){let r=e.schema[t];return r!==void 0&&!(0,Eje.alwaysValidSchema)(e,r)}bie.default=$Ir});var vje=S(Iie=>{"use strict";Object.defineProperty(Iie,"__esModule",{value:!0});var qIr=_r(),HIr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,qIr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Iie.default=HIr});var Sje=S(Rie=>{"use strict";Object.defineProperty(Rie,"__esModule",{value:!0});var VIr=cie(),jIr=J7e(),KIr=uie(),GIr=eje(),zIr=tje(),YIr=sje(),QIr=aje(),WIr=gie(),XIr=uje(),JIr=hje(),ZIr=pje(),eRr=mje(),tRr=gje(),rRr=_je(),nRr=yje(),sRr=vje();function iRr(e=!1){let t=[ZIr.default,eRr.default,tRr.default,rRr.default,nRr.default,sRr.default,QIr.default,WIr.default,YIr.default,XIr.default,JIr.default];return e?t.push(jIr.default,GIr.default):t.push(VIr.default,KIr.default),t.push(zIr.default),t}Rie.default=iRr});var Tje=S(Cie=>{"use strict";Object.defineProperty(Cie,"__esModule",{value:!0});var Fi=Vt(),aRr={message:({schemaCode:e})=>(0,Fi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Fi._)`{format: ${e}}`},oRr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:aRr,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,Fi._)`${p}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,Fi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(_,(0,Fi._)`${m}.type || "string"`).assign(g,(0,Fi._)`${m}.validate`),()=>r.assign(_,(0,Fi._)`"string"`).assign(g,m)),e.fail$data((0,Fi.or)(y(),A()));function y(){return c.strictSchema===!1?Fi.nil:(0,Fi._)`${a} && !${g}`}function A(){let E=l.$async?(0,Fi._)`(${m}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Fi._)`${g}(${n})`,v=(0,Fi._)`(typeof ${g} == "function" ? ${E} : ${g}.test(${n}))`;return(0,Fi._)`${g} && ${g} !== true && ${_} === ${t} && !${v}`}}function h(){let p=d.formats[i];if(!p){y();return}if(p===!0)return;let[m,_,g]=A(p);m===t&&e.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function A(v){let b=v instanceof RegExp?(0,Fi.regexpCode)(v):c.code.formats?(0,Fi._)`${c.code.formats}${(0,Fi.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:v,code:b});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,Fi._)`${I}.validate`]:["string",v,I]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Fi._)`await ${g}(${n})`}return typeof _=="function"?(0,Fi._)`${g}(${n})`:(0,Fi._)`${g}.test(${n})`}}}};Cie.default=oRr});var bje=S(xie=>{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});var cRr=Tje(),uRr=[cRr.default];xie.default=uRr});var Ije=S(dI=>{"use strict";Object.defineProperty(dI,"__esModule",{value:!0});dI.contentVocabulary=dI.metadataVocabulary=void 0;dI.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];dI.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Cje=S(wie=>{"use strict";Object.defineProperty(wie,"__esModule",{value:!0});var lRr=L7e(),dRr=Y7e(),fRr=Sje(),hRr=bje(),Rje=Ije(),pRr=[lRr.default,dRr.default,(0,fRr.default)(),hRr.default,Rje.metadataVocabulary,Rje.contentVocabulary];wie.default=pRr});var Nie=S(B8=>{"use strict";Object.defineProperty(B8,"__esModule",{value:!0});B8.DiscrError=void 0;var xje;(function(e){e.Tag="tag",e.Mapping="mapping"})(xje||(B8.DiscrError=xje={}))});var Nje=S(Die=>{"use strict";Object.defineProperty(Die,"__esModule",{value:!0});var fI=Vt(),Oie=Nie(),wje=Cv(),mRr=lm(),gRr=_r(),_Rr={message:({params:{discrError:e,tagName:t}})=>e===Oie.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,fI._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},ARr={keyword:"discriminator",type:"object",schemaType:"object",error:_Rr,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,fI._)`${r}${(0,fI.getProperty)(o)}`);t.if((0,fI._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:Oie.DiscrError.Tag,tag:u,tagName:o})),e.ok(c);function l(){let h=f();t.if(!1);for(let p in h)t.elseIf((0,fI._)`${u} === ${p}`),t.assign(c,d(h[p]));t.else(),e.error(!1,{discrError:Oie.DiscrError.Mapping,tag:u,tagName:o}),t.endIf()}function d(h){let p=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(m,fI.Name),p}function f(){var h;let p={},m=g(s),_=!0;for(let E=0;E{ERr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Pje=S((Gs,Pie)=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.MissingRefError=Gs.ValidationError=Gs.CodeGen=Gs.Name=Gs.nil=Gs.stringify=Gs.str=Gs._=Gs.KeywordCxt=Gs.Ajv=void 0;var yRr=Hse(),vRr=Cje(),SRr=Nje(),Dje=Oje(),TRr=["/properties"],U8="http://json-schema.org/draft-07/schema",hI=class extends yRr.default{_addVocabularies(){super._addVocabularies(),vRr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(SRr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(Dje,TRr):Dje;this.addMetaSchema(t,U8,!1),this.refs["http://json-schema.org/schema"]=U8}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(U8)?U8:void 0)}};Gs.Ajv=hI;Pie.exports=Gs=hI;Pie.exports.Ajv=hI;Object.defineProperty(Gs,"__esModule",{value:!0});Gs.default=hI;var bRr=aI();Object.defineProperty(Gs,"KeywordCxt",{enumerable:!0,get:function(){return bRr.KeywordCxt}});var pI=Vt();Object.defineProperty(Gs,"_",{enumerable:!0,get:function(){return pI._}});Object.defineProperty(Gs,"str",{enumerable:!0,get:function(){return pI.str}});Object.defineProperty(Gs,"stringify",{enumerable:!0,get:function(){return pI.stringify}});Object.defineProperty(Gs,"nil",{enumerable:!0,get:function(){return pI.nil}});Object.defineProperty(Gs,"Name",{enumerable:!0,get:function(){return pI.Name}});Object.defineProperty(Gs,"CodeGen",{enumerable:!0,get:function(){return pI.CodeGen}});var IRr=E2();Object.defineProperty(Gs,"ValidationError",{enumerable:!0,get:function(){return IRr.default}});var RRr=lm();Object.defineProperty(Gs,"MissingRefError",{enumerable:!0,get:function(){return RRr.default}})});var fm=S(P2=>{"use strict";Object.defineProperty(P2,"__esModule",{value:!0});P2.checkMetadata=void 0;var CRr=_r(),xRr={keyword:"metadata",schemaType:"object",code(e){Lje(e);let{gen:t,schema:r,it:n}=e;if((0,CRr.alwaysValidSchema)(n,r))return;let s=t.name("valid");e.subschema({keyword:"metadata",jtdMetadata:!0},s),e.ok(s)}};function Lje({it:e,keyword:t},r){if(e.jtdMetadata!==r)throw new Error(`JTD: "${t}" cannot be used in this schema location`)}P2.checkMetadata=Lje;P2.default=xRr});var F8=S(M2=>{"use strict";Object.defineProperty(M2,"__esModule",{value:!0});M2.hasRef=void 0;var Mje=Cv(),L2=Vt(),wRr=lm(),kje=Ad(),Bje=jse(),NRr=fm(),ORr={keyword:"ref",schemaType:"string",code(e){(0,NRr.checkMetadata)(e);let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{schemaEnv:{root:a}}=i,o=t.name("valid");s.nullable?(t.var(o,(0,L2._)`${r} === null`),t.if((0,L2.not)(o),c)):(t.var(o,!1),c()),e.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new wRr.default(i.opts.uriResolver,"",n,`No definition ${n}`);Lie(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=Mje.compileSchema.call(i.self,new Mje.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),h=(0,Bje.getValidate)(e,f),p=t.const("_errs",kje.default.errors);(0,Bje.callRef)(e,h,f,f.$async),t.assign(o,(0,L2._)`${p} === ${kje.default.errors}`)}function l(d){let f=t.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,L2.stringify)(d)}:{ref:d});e.subschema({schema:d,dataTypes:[],schemaPath:L2.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function Lie(e){for(let t in e){let r;if(t==="ref"||typeof(r=e[t])=="object"&&Lie(r))return!0}return!1}M2.hasRef=Lie;M2.default=ORr});var kie=S(Mie=>{"use strict";Object.defineProperty(Mie,"__esModule",{value:!0});var DRr=/t|\s/i,PRr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,LRr=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,MRr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Fje(e,t){let r=e.split(DRr);return r.length===2&&Uje(r[0])&&kRr(r[1])||t&&r.length===1&&Uje(r[0])}Mie.default=Fje;function Uje(e){let t=PRr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&(s<=MRr[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function kRr(e){let t=LRr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3],i=+(t[4]||0),a=+(t[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}Fje.code='require("ajv/dist/runtime/timestamp").default'});var mI=S(hA=>{"use strict";Object.defineProperty(hA,"__esModule",{value:!0});hA.typeErrorParams=hA.typeErrorMessage=hA.typeError=void 0;var BRr=Vt();function URr(e){return{message:t=>$je(t,e),params:t=>qje(t,e)}}hA.typeError=URr;function $je({parentSchema:e},t){return e?.nullable?`must be ${t} or null`:`must be ${t}`}hA.typeErrorMessage=$je;function qje({parentSchema:e},t){return(0,BRr._)`{type: ${t}, nullable: ${!!e?.nullable}}`}hA.typeErrorParams=qje});var Bie=S(gI=>{"use strict";Object.defineProperty(gI,"__esModule",{value:!0});gI.intRange=void 0;var Tl=Vt(),FRr=kie(),$Rr=_r(),qRr=fm(),Hje=mI();gI.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var HRr={message:e=>(0,Hje.typeErrorMessage)(e,e.schema),params:e=>(0,Hje.typeErrorParams)(e,e.schema)};function VRr(e){let{gen:t,data:r,it:n}=e,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,Tl._)`${r} instanceof Date `;let a=(0,$Rr.useFunc)(t,FRr.default),o=i?(0,Tl._)`, true`:Tl.nil,c=(0,Tl._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,Tl.or)((0,Tl._)`${r} instanceof Date`,c)}var jRr={keyword:"type",schemaType:"string",error:HRr,code(e){(0,qRr.checkMetadata)(e);let{data:t,schema:r,parentSchema:n,it:s}=e,i;switch(r){case"boolean":case"string":i=(0,Tl._)`typeof ${t} == ${r}`;break;case"timestamp":{i=VRr(e);break}case"float32":case"float64":i=(0,Tl._)`typeof ${t} == "number"`;break;default:{let a=r;if(i=(0,Tl._)`typeof ${t} == "number" && isFinite(${t}) && !(${t} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,Tl._)`${i} && ${t} >= 0`);else{let[o,c]=gI.intRange[a];i=(0,Tl._)`${i} && ${t} >= ${o} && ${t} <= ${c}`}}}e.pass(n.nullable?(0,Tl.or)((0,Tl._)`${t} === null`,i):i)}};gI.default=jRr});var AI=S(_I=>{"use strict";Object.defineProperty(_I,"__esModule",{value:!0});_I.checkNullableObject=_I.checkNullable=void 0;var $8=Vt();function Vje({gen:e,data:t,parentSchema:r},n=$8.nil){let s=e.name("valid");return r.nullable?(e.let(s,(0,$8._)`${t} === null`),n=(0,$8.not)(s)):e.let(s,!1),[s,n]}_I.checkNullable=Vje;function KRr(e,t){let[r,n]=Vje(e,t);return[r,(0,$8._)`${n} && typeof ${e.data} == "object" && !Array.isArray(${e.data})`]}_I.checkNullableObject=KRr});var jje=S(Uie=>{"use strict";Object.defineProperty(Uie,"__esModule",{value:!0});var pA=Vt(),GRr=fm(),zRr=AI(),YRr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,pA._)`{allowedValues: ${e}}`},QRr={keyword:"enum",schemaType:"array",error:YRr,code(e){(0,GRr.checkMetadata)(e);let{gen:t,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=e;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,c=(0,pA._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,zRr.checkNullable)(e,c),t.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,pA.and)(c,(0,pA.or)(...n.map(l=>(0,pA._)`${r} === ${l}`))),i.nullable&&(o=(0,pA.or)((0,pA._)`${r} === null`,o))}e.pass(o);function u(){t.forOf("v",s,l=>t.if((0,pA._)`${o} = ${r} === ${l}`,()=>t.break()))}}};Uie.default=QRr});var Gje=S(Fie=>{"use strict";Object.defineProperty(Fie,"__esModule",{value:!0});var WRr=_r(),XRr=ho(),Kje=Vt(),JRr=fm(),ZRr=AI(),eCr=mI(),tCr={keyword:"elements",schemaType:"object",error:(0,eCr.typeError)("array"),code(e){(0,JRr.checkMetadata)(e);let{gen:t,data:r,schema:n,it:s}=e;if((0,WRr.alwaysValidSchema)(s,n))return;let[i]=(0,ZRr.checkNullable)(e);t.if((0,Kje.not)(i),()=>t.if((0,Kje._)`Array.isArray(${r})`,()=>t.assign(i,(0,XRr.validateArray)(e)),()=>e.error())),e.ok(i)}};Fie.default=tCr});var qie=S(mA=>{"use strict";Object.defineProperty(mA,"__esModule",{value:!0});mA.validateProperties=mA.error=void 0;var $ie=ho(),zje=_r(),hm=Vt(),rCr=fm(),nCr=AI(),Yje=mI(),EI;(function(e){e.Additional="additional",e.Missing="missing"})(EI||(EI={}));mA.error={message:e=>{let{params:t}=e;return t.propError?t.propError===EI.Additional?"must NOT have additional properties":`must have property '${t.missingProperty}'`:(0,Yje.typeErrorMessage)(e,"object")},params:e=>{let{params:t}=e;return t.propError?t.propError===EI.Additional?(0,hm._)`{error: ${t.propError}, additionalProperty: ${t.additionalProperty}}`:(0,hm._)`{error: ${t.propError}, missingProperty: ${t.missingProperty}}`:(0,Yje.typeErrorParams)(e,"object")}};var sCr={keyword:"properties",schemaType:"object",error:mA.error,code:Qje};function Qje(e){(0,rCr.checkMetadata)(e);let{gen:t,data:r,parentSchema:n,it:s}=e,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(h())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=p("properties"),[u,l]=p("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,nCr.checkNullableObject)(e,r):[t.let("valid",!1),!0];t.if(f,()=>t.assign(d,!0).block(()=>{m(c,"properties",!0),m(l,"optionalProperties"),i||g()})),e.pass(d);function h(){let A=n.properties,E=n.optionalProperties;if(!(A&&E))return!1;for(let v in A)if(Object.prototype.hasOwnProperty.call(E,v))return!0;return!1}function p(A){let E=n[A],v=E?(0,$ie.allSchemaProperties)(E):[];if(s.jtdDiscriminator&&v.some(I=>I===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${A}`);let b=v.filter(I=>!(0,zje.alwaysValidSchema)(s,E[I]));return[v,b]}function m(A,E,v){let b=t.var("valid");for(let T of A)t.if((0,$ie.propertyInData)(t,r,T,s.opts.ownProperties),()=>_(T,E,b),()=>I(T)),e.ok(b);function I(T){v?(t.assign(b,!1),e.error(!1,{propError:EI.Missing,missingProperty:T},{schemaPath:T})):t.assign(b,!0)}}function _(A,E,v){e.subschema({keyword:E,schemaProp:A,dataProp:A},v)}function g(){t.forIn("key",r,A=>{let E=y(A,o,"properties",s.jtdDiscriminator),v=y(A,u,"optionalProperties"),b=E===!0?v:v===!0?E:(0,hm.and)(E,v);t.if(b,()=>{s.opts.removeAdditional?t.code((0,hm._)`delete ${r}[${A}]`):(e.error(!1,{propError:EI.Additional,additionalProperty:A},{instancePath:A,parentSchema:!0}),s.opts.allErrors||t.break())})})}function y(A,E,v,b){let I;if(E.length>8){let T=(0,zje.schemaRefOrVal)(s,n[v],v);I=(0,hm.not)((0,$ie.isOwnProperty)(t,T,A)),b!==void 0&&(I=(0,hm.and)(I,(0,hm._)`${A} !== ${b}`))}else if(E.length||b!==void 0){let T=b===void 0?E:[b].concat(E);I=(0,hm.and)(...T.map(x=>(0,hm._)`${A} !== ${x}`))}else I=!0;return I}}mA.validateProperties=Qje;mA.default=sCr});var Xje=S(Hie=>{"use strict";Object.defineProperty(Hie,"__esModule",{value:!0});var Wje=qie(),iCr={keyword:"optionalProperties",schemaType:"object",error:Wje.error,code(e){e.parentSchema.properties||(0,Wje.validateProperties)(e)}};Hie.default=iCr});var Zje=S(Vie=>{"use strict";Object.defineProperty(Vie,"__esModule",{value:!0});var Ov=Vt(),aCr=fm(),oCr=AI(),Jje=mI(),q8=Nie(),cCr={message:e=>{let{schema:t,params:r}=e;return r.discrError?r.discrError===q8.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in mapping`:(0,Jje.typeErrorMessage)(e,"object")},params:e=>{let{schema:t,params:r}=e;return r.discrError?(0,Ov._)`{error: ${r.discrError}, tag: ${t}, tagValue: ${r.tag}}`:(0,Jje.typeErrorParams)(e,"object")}},uCr={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:cCr,code(e){(0,aCr.checkMetadata)(e);let{gen:t,data:r,schema:n,parentSchema:s}=e,[i,a]=(0,oCr.checkNullableObject)(e,r);t.if(a),o(),t.elseIf((0,Ov.not)(i)),e.error(),t.endIf(),e.ok(i);function o(){let l=t.const("tag",(0,Ov._)`${r}${(0,Ov.getProperty)(n)}`);t.if((0,Ov._)`${l} === undefined`),e.error(!1,{discrError:q8.DiscrError.Tag,tag:l}),t.elseIf((0,Ov._)`typeof ${l} == "string"`),c(l),t.else(),e.error(!1,{discrError:q8.DiscrError.Tag,tag:l},{instancePath:n}),t.endIf()}function c(l){t.if(!1);for(let d in s.mapping)t.elseIf((0,Ov._)`${l} === ${d}`),t.assign(i,u(d));t.else(),e.error(!1,{discrError:q8.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),t.endIf()}function u(l){let d=t.name("valid");return e.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};Vie.default=uCr});var tKe=S(jie=>{"use strict";Object.defineProperty(jie,"__esModule",{value:!0});var eKe=_r(),H8=Vt(),lCr=fm(),dCr=AI(),fCr=mI(),hCr={keyword:"values",schemaType:"object",error:(0,fCr.typeError)("object"),code(e){(0,lCr.checkMetadata)(e);let{gen:t,data:r,schema:n,it:s}=e,[i,a]=(0,dCr.checkNullableObject)(e,r);(0,eKe.alwaysValidSchema)(s,n)?t.if((0,H8.not)((0,H8.or)(a,i)),()=>e.error()):(t.if(a),t.assign(i,o()),t.elseIf((0,H8.not)(i)),e.error(),t.endIf()),e.ok(i);function o(){let c=t.name("valid");if(s.allErrors){let l=t.let("valid",!0);return u(()=>t.assign(l,!1)),l}return t.var(c,!0),u(()=>t.break()),c;function u(l){t.forIn("key",r,d=>{e.subschema({keyword:"values",dataProp:d,dataPropType:eKe.Type.Str},c),t.if((0,H8.not)(c),l)})}}}};jie.default=hCr});var rKe=S(Kie=>{"use strict";Object.defineProperty(Kie,"__esModule",{value:!0});var pCr=ho(),mCr={keyword:"union",schemaType:"array",trackErrors:!0,code:pCr.validateUnion,error:{message:"must match a schema in union"}};Kie.default=mCr});var nKe=S(Gie=>{"use strict";Object.defineProperty(Gie,"__esModule",{value:!0});var gCr=F8(),_Cr=Bie(),ACr=jje(),ECr=Gje(),yCr=qie(),vCr=Xje(),SCr=Zje(),TCr=tKe(),bCr=rKe(),ICr=fm(),RCr=["definitions",gCr.default,_Cr.default,ACr.default,ECr.default,yCr.default,vCr.default,SCr.default,TCr.default,bCr.default,ICr.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];Gie.default=RCr});var oKe=S(zie=>{"use strict";Object.defineProperty(zie,"__esModule",{value:!0});var pm=e=>{let t={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return e&&(t.definitions={values:{ref:"schema"}}),t},CCr=e=>({optionalProperties:pm(e)}),xCr=e=>({properties:{ref:{type:"string"}},optionalProperties:pm(e)}),wCr=e=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:pm(e)}),NCr=e=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:pm(e)}),OCr=e=>({properties:{elements:{ref:"schema"}},optionalProperties:pm(e)}),iKe=e=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...pm(e)}}),aKe=e=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...pm(e)}}),DCr=e=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[iKe(!1),aKe(!1)]}}}},optionalProperties:pm(e)}),PCr=e=>({properties:{values:{ref:"schema"}},optionalProperties:pm(e)}),sKe=e=>({metadata:{union:[CCr,xCr,wCr,NCr,OCr,iKe,aKe,DCr,PCr].map(t=>t(e))}}),LCr={definitions:{schema:sKe(!1)},...sKe(!0)};zie.default=LCr});var Yie=S(V8=>{"use strict";Object.defineProperty(V8,"__esModule",{value:!0});V8.jtdForms=void 0;V8.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var uKe=S(Wie=>{"use strict";Object.defineProperty(Wie,"__esModule",{value:!0});var Qie=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,MCr={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function cKe(e){return Qie.lastIndex=0,'"'+(Qie.test(e)?e.replace(Qie,t=>{let r=MCr[t];return typeof r=="string"?r:"\\u"+("0000"+t.charCodeAt(0).toString(16)).slice(-4)}):e)+'"'}Wie.default=cKe;cKe.code='require("ajv/dist/runtime/quote").default'});var mKe=S(Jie=>{"use strict";Object.defineProperty(Jie,"__esModule",{value:!0});var kCr=Yie(),dKe=Cv(),Or=Vt(),BCr=lm(),us=Ad(),UCr=ho(),FCr=F8(),$Cr=_r(),qCr=uKe(),HCr={elements:jCr,values:KCr,discriminator:GCr,properties:lKe,optionalProperties:lKe,enum:k2,type:zCr,ref:QCr};function fKe(e,t){let r=dKe.getCompilingSchema.call(this,e);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Or.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:e.schema,schemaEnv:e,definitions:t,data:us.default.data},u;try{this._compilations.add(e),e.serializeName=o,a.func(o,us.default.data,!1,()=>{a.let(us.default.json,(0,Or.str)``),B2(c),a.return(us.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(us.default.scope)}return ${l}`;let f=new Function(`${us.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),e.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete e.serialize,delete e.serializeName,l}finally{this._compilations.delete(e)}return e}Jie.default=fKe;function B2(e){let t;for(let r of kCr.jtdForms)if(r in e.schema){t=r;break}VCr(e,t?HCr[t]:XCr)}function VCr(e,t){let{gen:r,schema:n,data:s}=e;if(!n.nullable)return t(e);r.if((0,Or._)`${s} === undefined || ${s} === null`,()=>r.add(us.default.json,(0,Or._)`"null"`),()=>t(e))}function jCr(e){let{gen:t,schema:r,data:n}=e;t.add(us.default.json,(0,Or.str)`[`);let s=t.let("first",!0);t.forOf("el",n,i=>{Xie(e,s),B2({...e,schema:r.elements,data:i})}),t.add(us.default.json,(0,Or.str)`]`)}function KCr(e){let{gen:t,schema:r,data:n}=e;t.add(us.default.json,(0,Or.str)`{`);let s=t.let("first",!0);t.forIn("key",n,i=>hKe(e,i,r.values,s)),t.add(us.default.json,(0,Or.str)`}`)}function hKe(e,t,r,n){let{gen:s,data:i}=e;Xie(e,n),k2({...e,data:t}),s.add(us.default.json,(0,Or.str)`:`);let a=s.const("value",(0,Or._)`${i}${(0,Or.getProperty)(t)}`);B2({...e,schema:r,data:a})}function GCr(e){let{gen:t,schema:r,data:n}=e,{discriminator:s}=r;t.add(us.default.json,(0,Or.str)`{${JSON.stringify(s)}:`);let i=t.const("tag",(0,Or._)`${n}${(0,Or.getProperty)(s)}`);k2({...e,data:i}),t.if(!1);for(let a in r.mapping){t.elseIf((0,Or._)`${i} === ${a}`);let o=r.mapping[a];pKe({...e,schema:o},s)}t.endIf(),t.add(us.default.json,(0,Or.str)`}`)}function lKe(e){let{gen:t}=e;t.add(us.default.json,(0,Or.str)`{`),pKe(e),t.add(us.default.json,(0,Or.str)`}`)}function pKe(e,t){let{gen:r,schema:n,data:s}=e,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=h(o.concat(c)),l=!t,d;for(let g of o)l?l=!1:r.add(us.default.json,(0,Or.str)`,`),m(g,i[g],p(g));l&&(d=r.let("first",!0));for(let g of c){let y=p(g);r.if((0,Or.and)((0,Or._)`${y} !== undefined`,(0,UCr.isOwnProperty)(r,s,g)),()=>{Xie(e,d),m(g,a[g],y)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(_(g,u),()=>hKe(e,g,{},d)));function f(g){return g?Object.keys(g):[]}function h(g){if(t&&g.push(t),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function p(g){return r.const("value",(0,Or._)`${s}${(0,Or.getProperty)(g)}`)}function m(g,y,A){r.add(us.default.json,(0,Or.str)`${JSON.stringify(g)}:`),B2({...e,schema:y,data:A})}function _(g,y){return y.length?(0,Or.and)(...y.map(A=>(0,Or._)`${g} !== ${A}`)):!0}}function zCr(e){let{gen:t,schema:r,data:n}=e;switch(r.type){case"boolean":t.add(us.default.json,(0,Or._)`${n} ? "true" : "false"`);break;case"string":k2(e);break;case"timestamp":t.if((0,Or._)`${n} instanceof Date`,()=>t.add(us.default.json,(0,Or._)`'"' + ${n}.toISOString() + '"'`),()=>k2(e));break;default:YCr(e)}}function k2({gen:e,data:t}){e.add(us.default.json,(0,Or._)`${(0,$Cr.useFunc)(e,qCr.default)}(${t})`)}function YCr({gen:e,data:t,self:r}){let n=(0,Or._)`${t} === Infinity || ${t} === -Infinity || ${t} !== ${t}`;r.opts.specialNumbers===void 0||r.opts.specialNumbers==="fast"?e.add(us.default.json,(0,Or._)`"" + ${t}`):e.if(n,()=>e.add(us.default.json,(0,Or._)`null`),()=>e.add(us.default.json,(0,Or._)`"" + ${t}`))}function QCr(e){let{gen:t,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=e,{ref:o}=i,c=s[o];if(!c)throw new BCr.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,FCr.hasRef)(c))return B2({...e,schema:c});let{root:u}=a,l=fKe.call(r,new dKe.SchemaEnv({schema:c,root:u}),s);t.add(us.default.json,(0,Or._)`${WCr(t,l)}(${n})`)}function WCr(e,t){return t.serialize?e.scopeValue("serialize",{ref:t.serialize}):(0,Or._)`${e.scopeValue("wrapper",{ref:t})}.serialize`}function XCr({gen:e,data:t}){e.add(us.default.json,(0,Or._)`JSON.stringify(${t})`)}function Xie({gen:e},t){t?e.if(t,()=>e.assign(t,!1),()=>e.add(us.default.json,(0,Or.str)`,`)):e.add(us.default.json,(0,Or.str)`,`)}});var _Ke=S(_A=>{"use strict";Object.defineProperty(_A,"__esModule",{value:!0});_A.parseJsonString=_A.parseJsonNumber=_A.parseJson=void 0;var JCr=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function mm(e,t){let r;mm.message=void 0;let n;t&&(e=e.slice(t));try{return mm.position=t+e.length,JSON.parse(e)}catch(s){if(n=JCr.exec(s.message),!n){mm.message="unexpected end";return}r=+n[1];let i=e[r];e=e.slice(0,r),mm.position=t+r;try{return JSON.parse(e)}catch{mm.message=`unexpected token ${i}`;return}}}_A.parseJson=mm;mm.message=void 0;mm.position=0;mm.code='require("ajv/dist/runtime/parseJson").parseJson';function gm(e,t,r){let n="",s;if(gm.message=void 0,e[t]==="-"&&(n+="-",t++),e[t]==="0")n+="0",t++;else if(!i(r)){a();return}if(r)return gm.position=t,+n;if(e[t]==="."&&(n+=".",t++,!i())){a();return}if(s=e[t],(s==="e"||s==="E")&&(n+="e",t++,s=e[t],(s==="+"||s==="-")&&(n+=s,t++),!i())){a();return}return gm.position=t,+n;function i(o){let c=!1;for(;s=e[t],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,t++;return c}function a(){gm.position=t,gm.message=t="a"&&n<="f")a+=n.charCodeAt(0)-ZCr+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-exr;else{s(`unexpected token ${n}`);return}t++}r+=String.fromCharCode(a)}else{s(`unexpected token ${n}`);return}else if(n===void 0){s("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{s(`unexpected token ${n}`);return}return gA.position=t,r;function s(i){gA.position=t,gA.message=i}}_A.parseJsonString=gA;gA.message=void 0;gA.position=0;gA.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var xKe=S(aae=>{"use strict";Object.defineProperty(aae,"__esModule",{value:!0});var txr=Yie(),vKe=Cv(),Nt=Vt(),rxr=lm(),Kr=Ad(),nxr=ho(),sxr=F8(),ixr=Bie(),tae=_Ke(),SKe=_r(),axr=kie(),oxr={elements:dxr,values:fxr,discriminator:pxr,properties:AKe,optionalProperties:AKe,enum:gxr,type:mxr,ref:_xr};function TKe(e,t){let r=vKe.getCompilingSchema.call(this,e);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Nt.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:e.schema,schemaEnv:e,definitions:t,data:Kr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(e),e.parseName=o,cxr(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(Kr.default.scope)}return ${l}`;let f=new Function(`${Kr.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),e.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete e.parse,delete e.parseName,l}finally{this._compilations.delete(e)}return e}aae.default=TKe;var eae=(0,Nt._)`undefined`;function cxr(e){let{gen:t,parseName:r,char:n}=e;t.func(r,(0,Nt._)`${Kr.default.json}, ${Kr.default.jsonPos}, ${Kr.default.jsonPart}`,!1,()=>{t.let(Kr.default.data),t.let(n),t.assign((0,Nt._)`${r}.message`,eae),t.assign((0,Nt._)`${r}.position`,eae),t.assign(Kr.default.jsonPos,(0,Nt._)`${Kr.default.jsonPos} || 0`),t.const(Kr.default.jsonLen,(0,Nt._)`${Kr.default.json}.length`),j8(e),iae(e),t.if(Kr.default.jsonPart,()=>{t.assign((0,Nt._)`${r}.position`,Kr.default.jsonPos),t.return(Kr.default.data)}),t.if((0,Nt._)`${Kr.default.jsonPos} === ${Kr.default.jsonLen}`,()=>t.return(Kr.default.data)),yI(e)})}function j8(e){let t;for(let r of txr.jtdForms)if(r in e.schema){t=r;break}t?lxr(e,oxr[t]):nae(e)}var uxr=yKe(!0,yKe(!1,yI));function lxr(e,t){let{gen:r,schema:n,data:s}=e;if(!n.nullable)return t(e);U2(e,"null",t,()=>r.assign(s,null))}function dxr(e){let{gen:t,schema:r,data:n}=e;ph(e,"[");let s=t.let("i",0);t.assign(n,(0,Nt._)`[]`),rae(e,"]",()=>{let i=t.let("el");j8({...e,schema:r.elements,data:i}),t.assign((0,Nt._)`${n}[${s}++]`,i)})}function fxr(e){let{gen:t,schema:r,data:n}=e;ph(e,"{"),t.assign(n,(0,Nt._)`{}`),rae(e,"}",()=>hxr(e,r.values))}function rae(e,t,r){bKe(e,t,r),ph(e,t)}function bKe(e,t,r){let{gen:n}=e;n.for((0,Nt._)`;${Kr.default.jsonPos}<${Kr.default.jsonLen} && ${K8(1)}!==${t};`,()=>{r(),U2(e,",",()=>n.break(),s)});function s(){U2(e,t,()=>{},yI)}}function hxr(e,t){let{gen:r}=e,n=r.let("key");Dv({...e,data:n}),ph(e,":"),RKe(e,n,t)}function pxr(e){let{gen:t,data:r,schema:n}=e,{discriminator:s,mapping:i}=n;ph(e,"{"),t.assign(r,(0,Nt._)`{}`);let a=t.const("pos",Kr.default.jsonPos),o=t.let("value"),c=t.let("tag");bKe(e,"}",()=>{let u=t.let("key");Dv({...e,data:u}),ph(e,":"),t.if((0,Nt._)`${u} === ${s}`,()=>{Dv({...e,data:c}),t.assign((0,Nt._)`${r}[${u}]`,c),t.break()},()=>nae({...e,data:o}))}),t.assign(Kr.default.jsonPos,a),t.if((0,Nt._)`${c} === undefined`),_m(e,(0,Nt.str)`discriminator tag not found`);for(let u in i)t.elseIf((0,Nt._)`${c} === ${u}`),IKe({...e,schema:i[u]},s);t.else(),_m(e,(0,Nt.str)`discriminator value not in schema`),t.endIf()}function AKe(e){let{gen:t,data:r}=e;ph(e,"{"),t.assign(r,(0,Nt._)`{}`),IKe(e)}function IKe(e,t){let{gen:r,schema:n,data:s}=e,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(rae(e,"}",()=>{let c=r.let("key");if(Dv({...e,data:c}),ph(e,":"),r.if(!1),EKe(e,c,i),EKe(e,c,a),t){r.elseIf((0,Nt._)`${c} === ${t}`);let u=r.let("tag");Dv({...e,data:u})}r.else(),o?nae({...e,data:(0,Nt._)`${s}[${c}]`}):_m(e,(0,Nt.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,nxr.hasPropFunc)(r),u=(0,Nt.and)(...Object.keys(i).map(l=>(0,Nt._)`${c}.call(${s}, ${l})`));r.if((0,Nt.not)(u),()=>_m(e,(0,Nt.str)`missing required properties`))}}function EKe(e,t,r={}){let{gen:n}=e;for(let s in r)n.elseIf((0,Nt._)`${t} === ${s}`),RKe(e,t,r[s])}function RKe(e,t,r){j8({...e,schema:r,data:(0,Nt._)`${e.data}[${t}]`})}function mxr(e){let{gen:t,schema:r,data:n,self:s}=e;switch(r.type){case"boolean":uxr(e);break;case"string":Dv(e);break;case"timestamp":{Dv(e);let i=(0,SKe.useFunc)(t,axr.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,Nt._)`!${i}(${n}, true)`:(0,Nt._)`!${i}(${n})`,u=o?(0,Nt.or)(c,(0,Nt._)`(${n} = new Date(${n}), false)`,(0,Nt._)`isNaN(${n}.valueOf())`):c;t.if(u,()=>_m(e,(0,Nt.str)`invalid timestamp`));break}case"float32":case"float64":Zie(e);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))Zie(e,16),i==="uint32"&&t.if((0,Nt._)`${n} < 0`,()=>_m(e,(0,Nt.str)`integer out of range`));else{let[a,o,c]=ixr.intRange[i];Zie(e,c),t.if((0,Nt._)`${n} < ${a} || ${n} > ${o}`,()=>_m(e,(0,Nt.str)`integer out of range`))}}}}function Dv(e){ph(e,'"'),sae(e,tae.parseJsonString)}function gxr(e){let{gen:t,data:r,schema:n}=e,s=n.enum;ph(e,'"'),t.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);t.elseIf((0,Nt._)`${K8(a.length)} === ${a}`),t.assign(r,(0,Nt.str)`${i}`),t.add(Kr.default.jsonPos,a.length)}t.else(),yI(e),t.endIf()}function Zie(e,t){let{gen:r}=e;iae(e),r.if((0,Nt._)`"-0123456789".indexOf(${K8(1)}) < 0`,()=>yI(e),()=>sae(e,tae.parseJsonNumber,t))}function yKe(e,t){return r=>{let{gen:n,data:s}=r;U2(r,`${e}`,()=>t(r),()=>n.assign(s,e))}}function _xr(e){let{gen:t,self:r,definitions:n,schema:s,schemaEnv:i}=e,{ref:a}=s,o=n[a];if(!o)throw new rxr.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,sxr.hasRef)(o))return j8({...e,schema:o});let{root:c}=i,u=TKe.call(r,new vKe.SchemaEnv({schema:o,root:c}),n);CKe(e,Axr(t,u),!0)}function Axr(e,t){return t.parse?e.scopeValue("parse",{ref:t.parse}):(0,Nt._)`${e.scopeValue("wrapper",{ref:t})}.parse`}function nae(e){sae(e,tae.parseJson)}function sae(e,t,r){CKe(e,(0,SKe.useFunc)(e.gen,t),r)}function CKe(e,t,r){let{gen:n,data:s}=e;n.assign(s,(0,Nt._)`${t}(${Kr.default.json}, ${Kr.default.jsonPos}${r?(0,Nt._)`, ${r}`:Nt.nil})`),n.assign(Kr.default.jsonPos,(0,Nt._)`${t}.position`),n.if((0,Nt._)`${s} === undefined`,()=>_m(e,(0,Nt._)`${t}.message`))}function ph(e,t){U2(e,t,yI)}function U2(e,t,r,n){let{gen:s}=e,i=t.length;iae(e),s.if((0,Nt._)`${K8(i)} === ${t}`,()=>{s.add(Kr.default.jsonPos,i),n?.(e)},()=>r(e))}function iae({gen:e,char:t}){e.code((0,Nt._)`while((${t}=${Kr.default.json}[${Kr.default.jsonPos}],${t}===" "||${t}==="\\n"||${t}==="\\r"||${t}==="\\t"))${Kr.default.jsonPos}++;`)}function K8(e){return e===1?(0,Nt._)`${Kr.default.json}[${Kr.default.jsonPos}]`:(0,Nt._)`${Kr.default.json}.slice(${Kr.default.jsonPos}, ${Kr.default.jsonPos}+${e})`}function yI(e){_m(e,(0,Nt._)`"unexpected token " + ${Kr.default.json}[${Kr.default.jsonPos}]`)}function _m({gen:e,parseName:t},r){e.assign((0,Nt._)`${t}.message`,r),e.assign((0,Nt._)`${t}.position`,Kr.default.jsonPos),e.return(eae)}});var uae=S((zs,cae)=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});zs.MissingRefError=zs.ValidationError=zs.CodeGen=zs.Name=zs.nil=zs.stringify=zs.str=zs._=zs.KeywordCxt=zs.Ajv=void 0;var Exr=Hse(),yxr=nKe(),vxr=oKe(),Sxr=mKe(),Txr=xKe(),oae="JTD-meta-schema",vI=class extends Exr.default{constructor(t={}){super({...t,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(yxr.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(vxr.default,oae,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(oae)?oae:void 0)}compileSerializer(t){let r=this._addSchema(t);return r.serialize||this._compileSerializer(r)}compileParser(t){let r=this._addSchema(t);return r.parse||this._compileParser(r)}_compileSerializer(t){if(Sxr.default.call(this,t,t.schema.definitions||{}),!t.serialize)throw new Error("ajv implementation error");return t.serialize}_compileParser(t){if(Txr.default.call(this,t,t.schema.definitions||{}),!t.parse)throw new Error("ajv implementation error");return t.parse}};zs.Ajv=vI;cae.exports=zs=vI;cae.exports.Ajv=vI;Object.defineProperty(zs,"__esModule",{value:!0});zs.default=vI;var bxr=aI();Object.defineProperty(zs,"KeywordCxt",{enumerable:!0,get:function(){return bxr.KeywordCxt}});var SI=Vt();Object.defineProperty(zs,"_",{enumerable:!0,get:function(){return SI._}});Object.defineProperty(zs,"str",{enumerable:!0,get:function(){return SI.str}});Object.defineProperty(zs,"stringify",{enumerable:!0,get:function(){return SI.stringify}});Object.defineProperty(zs,"nil",{enumerable:!0,get:function(){return SI.nil}});Object.defineProperty(zs,"Name",{enumerable:!0,get:function(){return SI.Name}});Object.defineProperty(zs,"CodeGen",{enumerable:!0,get:function(){return SI.CodeGen}});var Ixr=E2();Object.defineProperty(zs,"ValidationError",{enumerable:!0,get:function(){return Ixr.default}});var Rxr=lm();Object.defineProperty(zs,"MissingRefError",{enumerable:!0,get:function(){return Rxr.default}})});var lae=S((b7n,wKe)=>{"use strict";var Cxr=xre();wKe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:Cxr,addUsedSchema:!1,allErrors:!1})});var MKe=S(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});mh.formatNames=mh.fastFormats=mh.fullFormats=void 0;function TI(e,t){return{validate:e,compare:t}}mh.fullFormats={date:TI(DKe,hae),time:TI(PKe,pae),"date-time":TI(Oxr,LKe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Lxr,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:qxr,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:Mxr,int32:{type:"number",validate:Uxr},int64:{type:"number",validate:Fxr},float:{type:"number",validate:OKe},double:{type:"number",validate:OKe},password:!0,binary:!0};mh.fastFormats={...mh.fullFormats,date:TI(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,hae),time:TI(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,pae),"date-time":TI(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,LKe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};mh.formatNames=Object.keys(mh.fullFormats);function xxr(e){return e%4===0&&(e%100!==0||e%400===0)}var wxr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Nxr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function DKe(e){let t=wxr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&xxr(r)?29:Nxr[n])}function hae(e,t){if(e&&t)return e>t?1:et?1:e=kxr}function Fxr(e){return Number.isInteger(e)}function OKe(){return!0}var $xr=/[^\\]\\Z/;function qxr(e){if($xr.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var q2=S(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.regexpCode=xn.getEsmExportName=xn.getProperty=xn.safeStringify=xn.stringify=xn.strConcat=xn.addCodeArg=xn.str=xn._=xn.nil=xn._Code=xn.Name=xn.IDENTIFIER=xn._CodeOrName=void 0;var F2=class{};xn._CodeOrName=F2;xn.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Pv=class extends F2{constructor(t){if(super(),!xn.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};xn.Name=Pv;var vd=class extends F2{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof Pv&&(r[n.str]=(r[n.str]||0)+1),r),{})}};xn._Code=vd;xn.nil=new vd("");function kKe(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(wu,"__esModule",{value:!0});wu.ValueScope=wu.ValueScopeName=wu.Scope=wu.varKinds=wu.UsedValueState=void 0;var xu=q2(),_ae=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},G8;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(G8||(wu.UsedValueState=G8={}));wu.varKinds={const:new xu.Name("const"),let:new xu.Name("let"),var:new xu.Name("var")};var z8=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof xu.Name?t:this.name(t)}name(t){return new xu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};wu.Scope=z8;var Y8=class extends xu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,xu._)`.${new xu.Name(r)}[${n}]`}};wu.ValueScopeName=Y8;var Wxr=(0,xu._)`\n`,Aae=class extends z8{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Wxr:xu.nil}}get(){return this._scope}name(t){return new Y8(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,xu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let i=xu.nil;for(let a in t){let o=t[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,G8.Started);let l=r(u);if(l){let d=this.opts.es5?wu.varKinds.var:wu.varKinds.const;i=(0,xu._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,xu._)`${i}${l}${this.opts._n}`;else throw new _ae(u);c.set(u,G8.Completed)})}return i}};wu.ValueScope=Aae});var br=S(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.or=Dr.and=Dr.not=Dr.CodeGen=Dr.operators=Dr.varKinds=Dr.ValueScopeName=Dr.ValueScope=Dr.Scope=Dr.Name=Dr.regexpCode=Dr.stringify=Dr.getProperty=Dr.nil=Dr.strConcat=Dr.str=Dr._=void 0;var cn=q2(),Bf=Eae(),AA=q2();Object.defineProperty(Dr,"_",{enumerable:!0,get:function(){return AA._}});Object.defineProperty(Dr,"str",{enumerable:!0,get:function(){return AA.str}});Object.defineProperty(Dr,"strConcat",{enumerable:!0,get:function(){return AA.strConcat}});Object.defineProperty(Dr,"nil",{enumerable:!0,get:function(){return AA.nil}});Object.defineProperty(Dr,"getProperty",{enumerable:!0,get:function(){return AA.getProperty}});Object.defineProperty(Dr,"stringify",{enumerable:!0,get:function(){return AA.stringify}});Object.defineProperty(Dr,"regexpCode",{enumerable:!0,get:function(){return AA.regexpCode}});Object.defineProperty(Dr,"Name",{enumerable:!0,get:function(){return AA.Name}});var J8=Eae();Object.defineProperty(Dr,"Scope",{enumerable:!0,get:function(){return J8.Scope}});Object.defineProperty(Dr,"ValueScope",{enumerable:!0,get:function(){return J8.ValueScope}});Object.defineProperty(Dr,"ValueScopeName",{enumerable:!0,get:function(){return J8.ValueScopeName}});Object.defineProperty(Dr,"varKinds",{enumerable:!0,get:function(){return J8.varKinds}});Dr.operators={GT:new cn._Code(">"),GTE:new cn._Code(">="),LT:new cn._Code("<"),LTE:new cn._Code("<="),EQ:new cn._Code("==="),NEQ:new cn._Code("!=="),NOT:new cn._Code("!"),OR:new cn._Code("||"),AND:new cn._Code("&&"),ADD:new cn._Code("+")};var Am=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},yae=class extends Am{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Bf.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=II(this.rhs,t,r)),this}get names(){return this.rhs instanceof cn._CodeOrName?this.rhs.names:{}}},Q8=class extends Am{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof cn.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=II(this.rhs,t,r),this}get names(){let t=this.lhs instanceof cn.Name?{}:{...this.lhs.names};return X8(t,this.rhs)}},vae=class extends Q8{constructor(t,r,n,s){super(t,n,s),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Sae=class extends Am{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},Tae=class extends Am{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},bae=class extends Am{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Iae=class extends Am{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=II(this.code,t,r),this}get names(){return this.code instanceof cn._CodeOrName?this.code.names:{}}},H2=class extends Am{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(t,r)||(Xxr(t,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>kv(t,r.names),{})}},Em=class extends H2{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Rae=class extends H2{},bI=class extends Em{};bI.kind="else";var Lv=class e extends Em{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new bI(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(UKe(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=II(this.condition,t,r),this}get names(){let t=super.names;return X8(t,this.condition),this.else&&kv(t,this.else.names),t}};Lv.kind="if";var Mv=class extends Em{};Mv.kind="for";var Cae=class extends Mv{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=II(this.iteration,t,r),this}get names(){return kv(super.names,this.iteration.names)}},xae=class extends Mv{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s}render(t){let r=t.es5?Bf.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=X8(super.names,this.from);return X8(t,this.to)}},W8=class extends Mv{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=II(this.iterable,t,r),this}get names(){return kv(super.names,this.iterable.names)}},V2=class extends Em{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};V2.kind="func";var j2=class extends H2{render(t){return"return "+super.render(t)}};j2.kind="return";var wae=class extends Em{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&kv(t,this.catch.names),this.finally&&kv(t,this.finally.names),t}},K2=class extends Em{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};K2.kind="catch";var G2=class extends Em{render(t){return"finally"+super.render(t)}};G2.kind="finally";var Nae=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new Bf.Scope({parent:t}),this._nodes=[new Rae]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new yae(t,i,n)),i}const(t,r,n){return this._def(Bf.varKinds.const,t,r,n)}let(t,r,n){return this._def(Bf.varKinds.let,t,r,n)}var(t,r,n){return this._def(Bf.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new Q8(t,r,n))}add(t,r){return this._leafNode(new vae(t,Dr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==cn.nil&&this._leafNode(new Iae(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,cn.addCodeArg)(r,s));return r.push("}"),new cn._Code(r)}if(t,r,n){if(this._blockNode(new Lv(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new Lv(t))}else(){return this._elseNode(new bI)}endIf(){return this._endBlockNode(Lv,bI)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Cae(t),r)}forRange(t,r,n,s,i=this.opts.es5?Bf.varKinds.var:Bf.varKinds.let){let a=this._scope.toName(t);return this._for(new xae(i,a,r,n),()=>s(a))}forOf(t,r,n,s=Bf.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof cn.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,cn._)`${a}.length`,o=>{this.var(i,(0,cn._)`${a}[${o}]`),n(i)})}return this._for(new W8("of",s,i,r),()=>n(i))}forIn(t,r,n,s=this.opts.es5?Bf.varKinds.var:Bf.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,cn._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new W8("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Mv)}label(t){return this._leafNode(new Sae(t))}break(t){return this._leafNode(new Tae(t))}return(t){let r=new j2;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(j2)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new wae;if(this._blockNode(s),this.code(t),r){let i=this.name("e");this._currNode=s.catch=new K2(i),r(i)}return n&&(this._currNode=s.finally=new G2,this.code(n)),this._endBlockNode(K2,G2)}throw(t){return this._leafNode(new bae(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=cn.nil,n,s){return this._blockNode(new V2(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(V2)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof Lv))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};Dr.CodeGen=Nae;function kv(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function X8(e,t){return t instanceof cn._CodeOrName?kv(e,t.names):e}function II(e,t,r){if(e instanceof cn.Name)return n(e);if(!s(e))return e;return new cn._Code(e._items.reduce((i,a)=>(a instanceof cn.Name&&(a=n(a)),a instanceof cn._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function s(i){return i instanceof cn._Code&&i._items.some(a=>a instanceof cn.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Xxr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function UKe(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,cn._)`!${Oae(e)}`}Dr.not=UKe;var Jxr=FKe(Dr.operators.AND);function Zxr(...e){return e.reduce(Jxr)}Dr.and=Zxr;var ewr=FKe(Dr.operators.OR);function twr(...e){return e.reduce(ewr)}Dr.or=twr;function FKe(e){return(t,r)=>t===cn.nil?r:r===cn.nil?t:(0,cn._)`${Oae(t)} ${e} ${Oae(r)}`}function Oae(e){return e instanceof cn.Name?e:(0,cn._)`(${e})`}});var En=S(Fr=>{"use strict";Object.defineProperty(Fr,"__esModule",{value:!0});Fr.checkStrictMode=Fr.getErrorPath=Fr.Type=Fr.useFunc=Fr.setEvaluated=Fr.evaluatedPropsToName=Fr.mergeEvaluated=Fr.eachItem=Fr.unescapeJsonPointer=Fr.escapeJsonPointer=Fr.escapeFragment=Fr.unescapeFragment=Fr.schemaRefOrVal=Fr.schemaHasRulesButRef=Fr.schemaHasRules=Fr.checkUnknownRules=Fr.alwaysValidSchema=Fr.toHash=void 0;var Rs=br(),rwr=q2();function nwr(e){let t={};for(let r of e)t[r]=!0;return t}Fr.toHash=nwr;function swr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(HKe(e,t),!VKe(t,e.self.RULES.all))}Fr.alwaysValidSchema=swr;function HKe(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let i in t)s[i]||GKe(e,`unknown keyword: "${i}"`)}Fr.checkUnknownRules=HKe;function VKe(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Fr.schemaHasRules=VKe;function iwr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Fr.schemaHasRulesButRef=iwr;function awr({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Rs._)`${r}`}return(0,Rs._)`${e}${t}${(0,Rs.getProperty)(n)}`}Fr.schemaRefOrVal=awr;function owr(e){return jKe(decodeURIComponent(e))}Fr.unescapeFragment=owr;function cwr(e){return encodeURIComponent(Pae(e))}Fr.escapeFragment=cwr;function Pae(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Fr.escapeJsonPointer=Pae;function jKe(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Fr.unescapeJsonPointer=jKe;function uwr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Fr.eachItem=uwr;function $Ke({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof Rs.Name?(i instanceof Rs.Name?e(s,i,a):t(s,i,a),a):i instanceof Rs.Name?(t(s,a,i),i):r(i,a);return o===Rs.Name&&!(c instanceof Rs.Name)?n(s,c):c}}Fr.mergeEvaluated={props:$Ke({mergeNames:(e,t,r)=>e.if((0,Rs._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Rs._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Rs._)`${r} || {}`).code((0,Rs._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Rs._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Rs._)`${r} || {}`),Lae(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:KKe}),items:$Ke({mergeNames:(e,t,r)=>e.if((0,Rs._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Rs._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Rs._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Rs._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function KKe(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Rs._)`{}`);return t!==void 0&&Lae(e,r,t),r}Fr.evaluatedPropsToName=KKe;function Lae(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Rs._)`${t}${(0,Rs.getProperty)(n)}`,!0))}Fr.setEvaluated=Lae;var qKe={};function lwr(e,t){return e.scopeValue("func",{ref:t,code:qKe[t.code]||(qKe[t.code]=new rwr._Code(t.code))})}Fr.useFunc=lwr;var Dae;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Dae||(Fr.Type=Dae={}));function dwr(e,t,r){if(e instanceof Rs.Name){let n=t===Dae.Num;return r?n?(0,Rs._)`"[" + ${e} + "]"`:(0,Rs._)`"['" + ${e} + "']"`:n?(0,Rs._)`"/" + ${e}`:(0,Rs._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Rs.getProperty)(e).toString():"/"+Pae(e)}Fr.getErrorPath=dwr;function GKe(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Fr.checkStrictMode=GKe});var ym=S(Mae=>{"use strict";Object.defineProperty(Mae,"__esModule",{value:!0});var Go=br(),fwr={data:new Go.Name("data"),valCxt:new Go.Name("valCxt"),instancePath:new Go.Name("instancePath"),parentData:new Go.Name("parentData"),parentDataProperty:new Go.Name("parentDataProperty"),rootData:new Go.Name("rootData"),dynamicAnchors:new Go.Name("dynamicAnchors"),vErrors:new Go.Name("vErrors"),errors:new Go.Name("errors"),this:new Go.Name("this"),self:new Go.Name("self"),scope:new Go.Name("scope"),json:new Go.Name("json"),jsonPos:new Go.Name("jsonPos"),jsonLen:new Go.Name("jsonLen"),jsonPart:new Go.Name("jsonPart")};Mae.default=fwr});var z2=S(zo=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.extendErrors=zo.resetErrorsCount=zo.reportExtraError=zo.reportError=zo.keyword$DataError=zo.keywordError=void 0;var yn=br(),Z8=En(),Fc=ym();zo.keywordError={message:({keyword:e})=>(0,yn.str)`must pass "${e}" keyword validation`};zo.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,yn.str)`"${e}" keyword must be ${t} ($data)`:(0,yn.str)`"${e}" keyword is invalid ($data)`};function hwr(e,t=zo.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:a,allErrors:o}=s,c=QKe(e,t,r);n??(a||o)?zKe(i,c):YKe(s,(0,yn._)`[${c}]`)}zo.reportError=hwr;function pwr(e,t=zo.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:a}=n,o=QKe(e,t,r);zKe(s,o),i||a||YKe(n,Fc.default.vErrors)}zo.reportExtraError=pwr;function mwr(e,t){e.assign(Fc.default.errors,t),e.if((0,yn._)`${Fc.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,yn._)`${Fc.default.vErrors}.length`,t),()=>e.assign(Fc.default.vErrors,null)))}zo.resetErrorsCount=mwr;function gwr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,Fc.default.errors,o=>{e.const(a,(0,yn._)`${Fc.default.vErrors}[${o}]`),e.if((0,yn._)`${a}.instancePath === undefined`,()=>e.assign((0,yn._)`${a}.instancePath`,(0,yn.strConcat)(Fc.default.instancePath,i.errorPath))),e.assign((0,yn._)`${a}.schemaPath`,(0,yn.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,yn._)`${a}.schema`,r),e.assign((0,yn._)`${a}.data`,n))})}zo.extendErrors=gwr;function zKe(e,t){let r=e.const("err",t);e.if((0,yn._)`${Fc.default.vErrors} === null`,()=>e.assign(Fc.default.vErrors,(0,yn._)`[${r}]`),(0,yn._)`${Fc.default.vErrors}.push(${r})`),e.code((0,yn._)`${Fc.default.errors}++`)}function YKe(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0,yn._)`new ${e.ValidationError}(${t})`):(r.assign((0,yn._)`${n}.errors`,t),r.return(!1))}var Bv={keyword:new yn.Name("keyword"),schemaPath:new yn.Name("schemaPath"),params:new yn.Name("params"),propertyName:new yn.Name("propertyName"),message:new yn.Name("message"),schema:new yn.Name("schema"),parentSchema:new yn.Name("parentSchema")};function QKe(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,yn._)`{}`:_wr(e,t,r)}function _wr(e,t,r={}){let{gen:n,it:s}=e,i=[Awr(s,r),Ewr(e,r)];return ywr(e,t,i),n.object(...i)}function Awr({errorPath:e},{instancePath:t}){let r=t?(0,yn.str)`${e}${(0,Z8.getErrorPath)(t,Z8.Type.Str)}`:e;return[Fc.default.instancePath,(0,yn.strConcat)(Fc.default.instancePath,r)]}function Ewr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0,yn.str)`${t}/${e}`;return r&&(s=(0,yn.str)`${s}${(0,Z8.getErrorPath)(r,Z8.Type.Str)}`),[Bv.schemaPath,s]}function ywr(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Bv.keyword,s],[Bv.params,typeof t=="function"?t(e):t||(0,yn._)`{}`]),c.messages&&n.push([Bv.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([Bv.schema,a],[Bv.parentSchema,(0,yn._)`${l}${d}`],[Fc.default.data,i]),u&&n.push([Bv.propertyName,u])}});var XKe=S(RI=>{"use strict";Object.defineProperty(RI,"__esModule",{value:!0});RI.boolOrEmptySchema=RI.topBoolOrEmptySchema=void 0;var vwr=z2(),Swr=br(),Twr=ym(),bwr={message:"boolean schema is false"};function Iwr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?WKe(e,!1):typeof r=="object"&&r.$async===!0?t.return(Twr.default.data):(t.assign((0,Swr._)`${n}.errors`,null),t.return(!0))}RI.topBoolOrEmptySchema=Iwr;function Rwr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),WKe(e)):r.var(t,!0)}RI.boolOrEmptySchema=Rwr;function WKe(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,vwr.reportError)(s,bwr,void 0,t)}});var kae=S(CI=>{"use strict";Object.defineProperty(CI,"__esModule",{value:!0});CI.getRules=CI.isJSONType=void 0;var Cwr=["string","number","integer","boolean","null","object","array"],xwr=new Set(Cwr);function wwr(e){return typeof e=="string"&&xwr.has(e)}CI.isJSONType=wwr;function Nwr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}CI.getRules=Nwr});var Bae=S(EA=>{"use strict";Object.defineProperty(EA,"__esModule",{value:!0});EA.shouldUseRule=EA.shouldUseGroup=EA.schemaHasRulesForType=void 0;function Owr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&JKe(e,n)}EA.schemaHasRulesForType=Owr;function JKe(e,t){return t.rules.some(r=>ZKe(e,r))}EA.shouldUseGroup=JKe;function ZKe(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}EA.shouldUseRule=ZKe});var Y2=S(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.reportTypeError=Yo.checkDataTypes=Yo.checkDataType=Yo.coerceAndCheckDataType=Yo.getJSONTypes=Yo.getSchemaTypes=Yo.DataType=void 0;var Dwr=kae(),Pwr=Bae(),Lwr=z2(),Er=br(),eGe=En(),xI;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(xI||(Yo.DataType=xI={}));function Mwr(e){let t=tGe(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Yo.getSchemaTypes=Mwr;function tGe(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Dwr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Yo.getJSONTypes=tGe;function kwr(e,t){let{gen:r,data:n,opts:s}=e,i=Bwr(t,s.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,Pwr.schemaHasRulesForType)(e,t[0]));if(a){let o=Fae(t,n,s.strictNumbers,xI.Wrong);r.if(o,()=>{i.length?Uwr(e,t,i):$ae(e)})}return a}Yo.coerceAndCheckDataType=kwr;var rGe=new Set(["string","number","integer","boolean","null"]);function Bwr(e,t){return t?e.filter(r=>rGe.has(r)||t==="array"&&r==="array"):[]}function Uwr(e,t,r){let{gen:n,data:s,opts:i}=e,a=n.let("dataType",(0,Er._)`typeof ${s}`),o=n.let("coerced",(0,Er._)`undefined`);i.coerceTypes==="array"&&n.if((0,Er._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Er._)`${s}[0]`).assign(a,(0,Er._)`typeof ${s}`).if(Fae(t,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Er._)`${o} !== undefined`);for(let u of r)(rGe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),$ae(e),n.endIf(),n.if((0,Er._)`${o} !== undefined`,()=>{n.assign(s,o),Fwr(e,o)});function c(u){switch(u){case"string":n.elseIf((0,Er._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Er._)`"" + ${s}`).elseIf((0,Er._)`${s} === null`).assign(o,(0,Er._)`""`);return;case"number":n.elseIf((0,Er._)`${a} == "boolean" || ${s} === null - || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Er._)`+${s}`);return;case"integer":n.elseIf((0,Er._)`${a} === "boolean" || ${s} === null - || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Er._)`+${s}`);return;case"boolean":n.elseIf((0,Er._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Er._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Er._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Er._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,Er._)`[${s}]`)}}}function Fwr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Er._)`${t} !== undefined`,()=>e.assign((0,Er._)`${t}[${r}]`,n))}function Uae(e,t,r,n=xI.Correct){let s=n===xI.Correct?Er.operators.EQ:Er.operators.NEQ,i;switch(e){case"null":return(0,Er._)`${t} ${s} null`;case"array":i=(0,Er._)`Array.isArray(${t})`;break;case"object":i=(0,Er._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,Er._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,Er._)`typeof ${t} ${s} ${e}`}return n===xI.Correct?i:(0,Er.not)(i);function a(o=Er.nil){return(0,Er.and)((0,Er._)`typeof ${t} == "number"`,o,r?(0,Er._)`isFinite(${t})`:Er.nil)}}Yo.checkDataType=Uae;function Fae(e,t,r,n){if(e.length===1)return Uae(e[0],t,r,n);let s,i=(0,eGe.toHash)(e);if(i.array&&i.object){let a=(0,Er._)`typeof ${t} != "object"`;s=i.null?a:(0,Er._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Er.nil;i.number&&delete i.integer;for(let a in i)s=(0,Er.and)(s,Uae(a,t,r,n));return s}Yo.checkDataTypes=Fae;var $wr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Er._)`{type: ${e}}`:(0,Er._)`{type: ${t}}`};function $ae(e){let t=qwr(e);(0,Lwr.reportError)(t,$wr)}Yo.reportTypeError=$ae;function qwr(e){let{gen:t,data:r,schema:n}=e,s=(0,eGe.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var sGe=S(e5=>{"use strict";Object.defineProperty(e5,"__esModule",{value:!0});e5.assignDefaults=void 0;var wI=br(),Hwr=En();function Vwr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)nGe(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,i)=>nGe(e,i,s.default))}e5.assignDefaults=Vwr;function nGe(e,t,r){let{gen:n,compositeRule:s,data:i,opts:a}=e;if(r===void 0)return;let o=(0,wI._)`${i}${(0,wI.getProperty)(t)}`;if(s){(0,Hwr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let c=(0,wI._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,wI._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,wI._)`${o} = ${(0,wI.stringify)(r)}`)}});var Sd=S(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.validateUnion=ls.validateArray=ls.usePattern=ls.callValidateCode=ls.schemaProperties=ls.allSchemaProperties=ls.noPropertyInData=ls.propertyInData=ls.isOwnProperty=ls.hasPropFunc=ls.reportMissingProp=ls.checkMissingProp=ls.checkReportMissingProp=void 0;var Ys=br(),qae=En(),yA=ym(),jwr=En();function Kwr(e,t){let{gen:r,data:n,it:s}=e;r.if(Vae(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0,Ys._)`${t}`},!0),e.error()})}ls.checkReportMissingProp=Kwr;function Gwr({gen:e,data:t,it:{opts:r}},n,s){return(0,Ys.or)(...n.map(i=>(0,Ys.and)(Vae(e,t,i,r.ownProperties),(0,Ys._)`${s} = ${i}`)))}ls.checkMissingProp=Gwr;function zwr(e,t){e.setParams({missingProperty:t},!0),e.error()}ls.reportMissingProp=zwr;function iGe(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ys._)`Object.prototype.hasOwnProperty`})}ls.hasPropFunc=iGe;function Hae(e,t,r){return(0,Ys._)`${iGe(e)}.call(${t}, ${r})`}ls.isOwnProperty=Hae;function Ywr(e,t,r,n){let s=(0,Ys._)`${t}${(0,Ys.getProperty)(r)} !== undefined`;return n?(0,Ys._)`${s} && ${Hae(e,t,r)}`:s}ls.propertyInData=Ywr;function Vae(e,t,r,n){let s=(0,Ys._)`${t}${(0,Ys.getProperty)(r)} === undefined`;return n?(0,Ys.or)(s,(0,Ys.not)(Hae(e,t,r))):s}ls.noPropertyInData=Vae;function aGe(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}ls.allSchemaProperties=aGe;function Qwr(e,t){return aGe(t).filter(r=>!(0,qae.alwaysValidSchema)(e,t[r]))}ls.schemaProperties=Qwr;function Wwr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Ys._)`${e}, ${t}, ${n}${s}`:t,d=[[yA.default.instancePath,(0,Ys.strConcat)(yA.default.instancePath,i)],[yA.default.parentData,a.parentData],[yA.default.parentDataProperty,a.parentDataProperty],[yA.default.rootData,yA.default.rootData]];a.opts.dynamicRef&&d.push([yA.default.dynamicAnchors,yA.default.dynamicAnchors]);let f=(0,Ys._)`${l}, ${r.object(...d)}`;return c!==Ys.nil?(0,Ys._)`${o}.call(${c}, ${f})`:(0,Ys._)`${o}(${f})`}ls.callValidateCode=Wwr;var Xwr=(0,Ys._)`new RegExp`;function Jwr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Ys._)`${s.code==="new RegExp"?Xwr:(0,jwr.useFunc)(e,s)}(${r}, ${n})`})}ls.usePattern=Jwr;function Zwr(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(i,!0),a(()=>t.break()),i;function a(o){let c=t.const("len",(0,Ys._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:qae.Type.Num},i),t.if((0,Ys.not)(i),o)})}}ls.validateArray=Zwr;function eNr(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,qae.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);t.assign(a,(0,Ys._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,Ys.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}ls.validateUnion=eNr});var uGe=S(gh=>{"use strict";Object.defineProperty(gh,"__esModule",{value:!0});gh.validateKeywordUsage=gh.validSchemaType=gh.funcKeywordCode=gh.macroKeywordCode=void 0;var $c=br(),Uv=ym(),tNr=Sd(),rNr=z2();function nNr(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=e,o=t.macro.call(a.self,s,i,a),c=cGe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");e.subschema({schema:o,schemaPath:$c.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}gh.macroKeywordCode=nNr;function sNr(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=e;aNr(c,t);let u=!o&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=cGe(n,s,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&oGe(e),_(()=>e.error());else{let g=t.async?h():p();t.modifying&&oGe(e),_(()=>iNr(e,g))}}function h(){let g=n.let("ruleErrs",null);return n.try(()=>m((0,$c._)`await `),y=>n.assign(d,!1).if((0,$c._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,$c._)`${y}.errors`),()=>n.throw(y))),g}function p(){let g=(0,$c._)`${l}.errors`;return n.assign(g,null),m($c.nil),g}function m(g=t.async?(0,$c._)`await `:$c.nil){let y=c.opts.passContext?Uv.default.this:Uv.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,$c._)`${g}${(0,tNr.callValidateCode)(e,l,y,A)}`,t.modifying)}function _(g){var y;n.if((0,$c.not)((y=t.valid)!==null&&y!==void 0?y:d),g)}}gh.funcKeywordCode=sNr;function oGe(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,$c._)`${n.parentData}[${n.parentDataProperty}]`))}function iNr(e,t){let{gen:r}=e;r.if((0,$c._)`Array.isArray(${t})`,()=>{r.assign(Uv.default.vErrors,(0,$c._)`${Uv.default.vErrors} === null ? ${t} : ${Uv.default.vErrors}.concat(${t})`).assign(Uv.default.errors,(0,$c._)`${Uv.default.vErrors}.length`),(0,rNr.extendErrors)(e)},()=>e.error())}function aNr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function cGe(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,$c.stringify)(r)})}function oNr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}gh.validSchemaType=oNr;function cNr({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}gh.validateKeywordUsage=cNr});var dGe=S(vA=>{"use strict";Object.defineProperty(vA,"__esModule",{value:!0});vA.extendSubschemaMode=vA.extendSubschemaData=vA.getSubschema=void 0;var _h=br(),lGe=En();function uNr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,_h._)`${e.schemaPath}${(0,_h.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,_h._)`${e.schemaPath}${(0,_h.getProperty)(t)}${(0,_h.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,lGe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}vA.getSubschema=uNr;function lNr(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=o.let("data",(0,_h._)`${t.data}${(0,_h.getProperty)(r)}`,!0);c(f),e.errorPath=(0,_h.str)`${u}${(0,lGe.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,_h._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(s!==void 0){let u=s instanceof _h.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}vA.extendSubschemaData=lNr;function dNr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}vA.extendSubschemaMode=dNr});var hGe=S(($7n,fGe)=>{"use strict";var SA=fGe.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};t5(t,n,s,e,"",e)};SA.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};SA.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};SA.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};SA.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function t5(e,t,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in SA.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Nu,"__esModule",{value:!0});Nu.getSchemaRefs=Nu.resolveUrl=Nu.normalizeId=Nu._getFullPath=Nu.getFullPath=Nu.inlineRef=void 0;var hNr=En(),pNr=dd(),mNr=hGe(),gNr=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function _Nr(e,t=!0){return typeof e=="boolean"?!0:t===!0?!jae(e):t?pGe(e)<=t:!1}Nu.inlineRef=_Nr;var ANr=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function jae(e){for(let t in e){if(ANr.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(jae)||typeof r=="object"&&jae(r))return!0}return!1}function pGe(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!gNr.has(r)&&(typeof e[r]=="object"&&(0,hNr.eachItem)(e[r],n=>t+=pGe(n)),t===1/0))return 1/0}return t}function mGe(e,t="",r){r!==!1&&(t=NI(t));let n=e.parse(t);return gGe(e,n)}Nu.getFullPath=mGe;function gGe(e,t){return e.serialize(t).split("#")[0]+"#"}Nu._getFullPath=gGe;var ENr=/#\/?$/;function NI(e){return e?e.replace(ENr,""):""}Nu.normalizeId=NI;function yNr(e,t,r){return r=NI(r),e.resolve(t,r)}Nu.resolveUrl=yNr;var vNr=/^[a-z_][-a-z0-9._]*$/i;function SNr(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=NI(e[r]||t),i={"":s},a=mGe(n,s,!1),o={},c=new Set;return mNr(e,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=a+f,_=i[p];typeof d[r]=="string"&&(_=g.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),i[f]=_;function g(A){let E=this.opts.uriResolver.resolve;if(A=NI(_?E(_,A):A),c.has(A))throw l(A);c.add(A);let v=this.refs[A];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,A):A!==NI(m)&&(A[0]==="#"?(u(d,o[A],A),o[A]=d):this.refs[A]=m),A}function y(A){if(typeof A=="string"){if(!vNr.test(A))throw new Error(`invalid anchor "${A}"`);g.call(this,`#${A}`)}}}),o;function u(d,f,h){if(f!==void 0&&!pNr(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Nu.getSchemaRefs=SNr});var J2=S(TA=>{"use strict";Object.defineProperty(TA,"__esModule",{value:!0});TA.getData=TA.KeywordCxt=TA.validateFunctionCode=void 0;var vGe=XKe(),_Ge=Y2(),Gae=Bae(),r5=Y2(),TNr=sGe(),X2=uGe(),Kae=dGe(),xt=br(),sr=ym(),bNr=Q2(),vm=En(),W2=z2();function INr(e){if(bGe(e)&&(IGe(e),TGe(e))){xNr(e);return}SGe(e,()=>(0,vGe.topBoolOrEmptySchema)(e))}TA.validateFunctionCode=INr;function SGe({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){s.code.es5?e.func(t,(0,xt._)`${sr.default.data}, ${sr.default.valCxt}`,n.$async,()=>{e.code((0,xt._)`"use strict"; ${AGe(r,s)}`),CNr(e,s),e.code(i)}):e.func(t,(0,xt._)`${sr.default.data}, ${RNr(s)}`,n.$async,()=>e.code(AGe(r,s)).code(i))}function RNr(e){return(0,xt._)`{${sr.default.instancePath}="", ${sr.default.parentData}, ${sr.default.parentDataProperty}, ${sr.default.rootData}=${sr.default.data}${e.dynamicRef?(0,xt._)`, ${sr.default.dynamicAnchors}={}`:xt.nil}}={}`}function CNr(e,t){e.if(sr.default.valCxt,()=>{e.var(sr.default.instancePath,(0,xt._)`${sr.default.valCxt}.${sr.default.instancePath}`),e.var(sr.default.parentData,(0,xt._)`${sr.default.valCxt}.${sr.default.parentData}`),e.var(sr.default.parentDataProperty,(0,xt._)`${sr.default.valCxt}.${sr.default.parentDataProperty}`),e.var(sr.default.rootData,(0,xt._)`${sr.default.valCxt}.${sr.default.rootData}`),t.dynamicRef&&e.var(sr.default.dynamicAnchors,(0,xt._)`${sr.default.valCxt}.${sr.default.dynamicAnchors}`)},()=>{e.var(sr.default.instancePath,(0,xt._)`""`),e.var(sr.default.parentData,(0,xt._)`undefined`),e.var(sr.default.parentDataProperty,(0,xt._)`undefined`),e.var(sr.default.rootData,sr.default.data),t.dynamicRef&&e.var(sr.default.dynamicAnchors,(0,xt._)`{}`)})}function xNr(e){let{schema:t,opts:r,gen:n}=e;SGe(e,()=>{r.$comment&&t.$comment&&CGe(e),PNr(e),n.let(sr.default.vErrors,null),n.let(sr.default.errors,0),r.unevaluated&&wNr(e),RGe(e),kNr(e)})}function wNr(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,xt._)`${r}.evaluated`),t.if((0,xt._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,xt._)`${e.evaluated}.props`,(0,xt._)`undefined`)),t.if((0,xt._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,xt._)`${e.evaluated}.items`,(0,xt._)`undefined`))}function AGe(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,xt._)`/*# sourceURL=${r} */`:xt.nil}function NNr(e,t){if(bGe(e)&&(IGe(e),TGe(e))){ONr(e,t);return}(0,vGe.boolOrEmptySchema)(e,t)}function TGe({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function bGe(e){return typeof e.schema!="boolean"}function ONr(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&CGe(e),LNr(e),MNr(e);let i=n.const("_errs",sr.default.errors);RGe(e,i),n.var(t,(0,xt._)`${i} === ${sr.default.errors}`)}function IGe(e){(0,vm.checkUnknownRules)(e),DNr(e)}function RGe(e,t){if(e.opts.jtd)return EGe(e,[],!1,t);let r=(0,_Ge.getSchemaTypes)(e.schema),n=(0,_Ge.coerceAndCheckDataType)(e,r);EGe(e,r,!n,t)}function DNr(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,vm.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function PNr(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,vm.checkStrictMode)(e,"default is ignored in the schema root")}function LNr(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,bNr.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function MNr(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function CGe({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code((0,xt._)`${sr.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,xt.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,xt._)`${sr.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function kNr(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;r.$async?t.if((0,xt._)`${sr.default.errors} === 0`,()=>t.return(sr.default.data),()=>t.throw((0,xt._)`new ${s}(${sr.default.vErrors})`)):(t.assign((0,xt._)`${n}.errors`,sr.default.vErrors),i.unevaluated&&BNr(e),t.return((0,xt._)`${sr.default.errors} === 0`))}function BNr({gen:e,evaluated:t,props:r,items:n}){r instanceof xt.Name&&e.assign((0,xt._)`${t}.props`,r),n instanceof xt.Name&&e.assign((0,xt._)`${t}.items`,n)}function EGe(e,t,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,vm.schemaHasRulesButRef)(i,l))){s.block(()=>wGe(e,"$ref",l.all.$ref.definition));return}c.jtd||UNr(e,t),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Gae.shouldUseGroup)(i,f)&&(f.type?(s.if((0,r5.checkDataType)(f.type,a,c.strictNumbers)),yGe(e,f),t.length===1&&t[0]===f.type&&r&&(s.else(),(0,r5.reportTypeError)(e)),s.endIf()):yGe(e,f),o||s.if((0,xt._)`${sr.default.errors} === ${n||0}`))}}function yGe(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0,TNr.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Gae.shouldUseRule)(n,i)&&wGe(e,i.keyword,i.definition,t.type)})}function UNr(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(FNr(e,t),e.opts.allowUnionTypes||$Nr(e,t),qNr(e,e.dataTypes))}function FNr(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{xGe(e.dataTypes,r)||zae(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),VNr(e,t)}}function $Nr(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&zae(e,"use allowUnionTypes to allow union type keyword")}function qNr(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,Gae.shouldUseRule)(e.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>HNr(t,a))&&zae(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function HNr(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function xGe(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function VNr(e,t){let r=[];for(let n of e.dataTypes)xGe(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function zae(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,vm.checkStrictMode)(e,t,e.opts.strictTypes)}var n5=class{constructor(t,r,n){if((0,X2.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,vm.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",NGe(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,X2.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",sr.default.errors))}result(t,r,n){this.failResult((0,xt.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,xt.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,xt._)`${r} !== undefined && (${(0,xt.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?W2.reportExtraError:W2.reportError)(this,this.def.error,r)}$dataError(){(0,W2.reportError)(this,this.def.$dataError||W2.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,W2.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=xt.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=xt.nil,r=xt.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,xt.or)((0,xt._)`${s} === undefined`,r)),t!==xt.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==xt.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,xt.or)(a(),o());function a(){if(n.length){if(!(r instanceof xt.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,xt._)`${(0,r5.checkDataTypes)(c,r,i.opts.strictNumbers,r5.DataType.Wrong)}`}return xt.nil}function o(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return(0,xt._)`!${c}(${r})`}return xt.nil}}subschema(t,r){let n=(0,Kae.getSubschema)(this.it,t);(0,Kae.extendSubschemaData)(n,this.it,t),(0,Kae.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return NNr(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=vm.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=vm.mergeEvaluated.items(s,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(t,xt.Name)),!0}};TA.KeywordCxt=n5;function wGe(e,t,r,n){let s=new n5(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0,X2.funcKeywordCode)(s,r):"macro"in r?(0,X2.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,X2.funcKeywordCode)(s,r)}var jNr=/^\/(?:[^~]|~0|~1)*$/,KNr=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function NGe(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return sr.default.rootData;if(e[0]==="/"){if(!jNr.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,i=sr.default.rootData}else{let u=KNr.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,xt._)`${i}${(0,xt.getProperty)((0,vm.unescapeJsonPointer)(u))}`,a=(0,xt._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}TA.getData=NGe});var s5=S(Qae=>{"use strict";Object.defineProperty(Qae,"__esModule",{value:!0});var Yae=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};Qae.default=Yae});var Z2=S(Jae=>{"use strict";Object.defineProperty(Jae,"__esModule",{value:!0});var Wae=Q2(),Xae=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Wae.resolveUrl)(t,r,n),this.missingSchema=(0,Wae.normalizeId)((0,Wae.getFullPath)(t,this.missingRef))}};Jae.default=Xae});var a5=S(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});Td.resolveSchema=Td.getCompilingSchema=Td.resolveRef=Td.compileSchema=Td.SchemaEnv=void 0;var Uf=br(),GNr=s5(),Fv=ym(),Ff=Q2(),OGe=En(),zNr=J2(),OI=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Ff.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Td.SchemaEnv=OI;function eoe(e){let t=DGe.call(this,e);if(t)return t;let r=(0,Ff.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Uf.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;e.$async&&(o=a.scopeValue("Error",{ref:GNr.default,code:(0,Uf._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Fv.default.data,parentData:Fv.default.parentData,parentDataProperty:Fv.default.parentDataProperty,dataNames:[Fv.default.data],dataPathArr:[Uf.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Uf.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Uf.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Uf._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,zNr.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Fv.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let h=new Function(`${Fv.default.self}`,`${Fv.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:m}=u;h.evaluated={props:p instanceof Uf.Name?void 0:p,items:m instanceof Uf.Name?void 0:m,dynamicProps:p instanceof Uf.Name,dynamicItems:m instanceof Uf.Name},h.source&&(h.source.evaluated=(0,Uf.stringify)(h.evaluated))}return e.validate=h,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}Td.compileSchema=eoe;function YNr(e,t,r){var n;r=(0,Ff.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=XNr.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new OI({schema:a,schemaId:o,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=QNr.call(this,i)}Td.resolveRef=YNr;function QNr(e){return(0,Ff.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:eoe.call(this,e)}function DGe(e){for(let t of this._compilations)if(WNr(t,e))return t}Td.getCompilingSchema=DGe;function WNr(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function XNr(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||i5.call(this,e,t)}function i5(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Ff._getFullPath)(this.opts.uriResolver,r),s=(0,Ff.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Zae.call(this,r,e);let i=(0,Ff.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=i5.call(this,e,a);return typeof o?.schema!="object"?void 0:Zae.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||eoe.call(this,a),i===(0,Ff.normalizeId)(t)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Ff.resolveUrl)(this.opts.uriResolver,s,u)),new OI({schema:o,schemaId:c,root:e,baseId:s})}return Zae.call(this,r,a)}}Td.resolveSchema=i5;var JNr=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Zae(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,OGe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!JNr.has(o)&&u&&(t=(0,Ff.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,OGe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Ff.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=i5.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new OI({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var PGe=S((G7n,ZNr)=>{ZNr.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var roe=S((z7n,BGe)=>{"use strict";var eOr=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),MGe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function toe(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var tOr=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function LGe(e){return e.length=0,!0}function rOr(e,t,r){if(e.length){let n=toe(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function nOr(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=rOr;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=LGe}else{s.push(u);continue}}return s.length&&(o===LGe?r.zone=s.join(""):a?n.push(s.join("")):n.push(toe(s))),r.address=n.join(""),r}function kGe(e){if(sOr(e,":")<2)return{host:e,isIPV6:!1};let t=nOr(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function sOr(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:cOr}=roe(),uOr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,lOr=["http","https","ws","wss","urn","urn:uuid"];function dOr(e){return lOr.indexOf(e)!==-1}function noe(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function UGe(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function FGe(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function fOr(e){return e.secure=noe(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function hOr(e){if((e.port===(noe(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function pOr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(uOr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=soe(s);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function mOr(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=soe(s);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function gOr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!cOr(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function _Or(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var $Ge={scheme:"http",domainHost:!0,parse:UGe,serialize:FGe},AOr={scheme:"https",domainHost:$Ge.domainHost,parse:UGe,serialize:FGe},o5={scheme:"ws",domainHost:!0,parse:fOr,serialize:hOr},EOr={scheme:"wss",domainHost:o5.domainHost,parse:o5.parse,serialize:o5.serialize},yOr={scheme:"urn",parse:pOr,serialize:mOr,skipNormalize:!0},vOr={scheme:"urn:uuid",parse:gOr,serialize:_Or,skipNormalize:!0},c5={http:$Ge,https:AOr,ws:o5,wss:EOr,urn:yOr,"urn:uuid":vOr};Object.setPrototypeOf(c5,null);function soe(e){return e&&(c5[e]||c5[e.toLowerCase()])||void 0}qGe.exports={wsIsSecure:noe,SCHEMES:c5,isValidSchemeName:dOr,getSchemeHandler:soe}});var KGe=S((Q7n,l5)=>{"use strict";var{normalizeIPv6:SOr,removeDotSegments:eD,recomposeAuthority:TOr,normalizeComponentEncoding:u5,isIPv4:bOr,nonSimpleDomain:IOr}=roe(),{SCHEMES:ROr,getSchemeHandler:VGe}=HGe();function COr(e,t){return typeof e=="string"?e=Ah(Sm(e,t),t):typeof e=="object"&&(e=Sm(Ah(e,t),t)),e}function xOr(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=jGe(Sm(e,n),Sm(t,n),n,!0);return n.skipEscape=!0,Ah(s,n)}function jGe(e,t,r,n){let s={};return n||(e=Sm(Ah(e,r),r),t=Sm(Ah(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=eD(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=eD(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=eD(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=eD(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function wOr(e,t,r){return typeof e=="string"?(e=unescape(e),e=Ah(u5(Sm(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ah(u5(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Ah(u5(Sm(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ah(u5(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Ah(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=VGe(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=TOr(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=eD(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var NOr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Sm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(NOr);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(bOr(n.host)===!1){let c=SOr(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=VGe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&IOr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var ioe={SCHEMES:ROr,normalize:COr,resolve:xOr,resolveComponent:jGe,equal:wOr,serialize:Ah,parse:Sm};l5.exports=ioe;l5.exports.default=ioe;l5.exports.fastUri=ioe});var zGe=S(aoe=>{"use strict";Object.defineProperty(aoe,"__esModule",{value:!0});var GGe=KGe();GGe.code='require("ajv/dist/runtime/uri").default';aoe.default=GGe});var tze=S(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.CodeGen=go.Name=go.nil=go.stringify=go.str=go._=go.KeywordCxt=void 0;var OOr=J2();Object.defineProperty(go,"KeywordCxt",{enumerable:!0,get:function(){return OOr.KeywordCxt}});var DI=br();Object.defineProperty(go,"_",{enumerable:!0,get:function(){return DI._}});Object.defineProperty(go,"str",{enumerable:!0,get:function(){return DI.str}});Object.defineProperty(go,"stringify",{enumerable:!0,get:function(){return DI.stringify}});Object.defineProperty(go,"nil",{enumerable:!0,get:function(){return DI.nil}});Object.defineProperty(go,"Name",{enumerable:!0,get:function(){return DI.Name}});Object.defineProperty(go,"CodeGen",{enumerable:!0,get:function(){return DI.CodeGen}});var DOr=s5(),JGe=Z2(),POr=kae(),tD=a5(),LOr=br(),rD=Q2(),d5=Y2(),coe=En(),YGe=PGe(),MOr=zGe(),ZGe=(e,t)=>new RegExp(e,t);ZGe.code="new RegExp";var kOr=["removeAdditional","useDefaults","coerceTypes"],BOr=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),UOr={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},FOr={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},QGe=200;function $Or(e){var t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y,A,E,v,b,I,T,x;let w=e.strict,D=(t=e.code)===null||t===void 0?void 0:t.optimize,M=D===!0||D===void 0?1:D||0,L=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ZGe,U=(s=e.uriResolver)!==null&&s!==void 0?s:MOr.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:w)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=e.strictNumbers)!==null&&o!==void 0?o:w)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:w)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:w)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:L}:{optimize:M,regExp:L},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:QGe,loopEnum:(_=e.loopEnum)!==null&&_!==void 0?_:QGe,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(y=e.messages)!==null&&y!==void 0?y:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(v=e.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(b=e.validateSchema)!==null&&b!==void 0?b:!0,validateFormats:(I=e.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(T=e.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(x=e.int32range)!==null&&x!==void 0?x:!0,uriResolver:U}}var nD=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...$Or(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new LOr.ValueScope({scope:{},prefixes:BOr,es5:r,lines:n}),this.logger=GOr(t.logger);let s=t.validateFormats;t.validateFormats=!1,this.RULES=(0,POr.getRules)(),WGe.call(this,UOr,t,"NOT SUPPORTED"),WGe.call(this,FOr,t,"DEPRECATED","warn"),this._metaOpts=jOr.call(this),t.formats&&HOr.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&VOr.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),qOr.call(this),t.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=YGe;n==="id"&&(s={...YGe},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof JGe.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,rD.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,t);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(t){let r;for(;typeof(r=XGe.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new tD.SchemaEnv({schema:{},schemaId:n});if(r=tD.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=XGe.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,rD.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(YOr.call(this,n,r),!r)return(0,coe.eachItem)(n,i=>ooe.call(this,i)),this;WOr.call(this,r);let s={...r,type:(0,d5.getJSONTypes)(r.type),schemaType:(0,d5.getJSONTypes)(r.schemaType)};return(0,coe.eachItem)(n,s.type.length===0?i=>ooe.call(this,i,s):i=>s.type.forEach(a=>ooe.call(this,i,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===t);s>=0&&n.rules.splice(s,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let i=s.split("/").slice(1),a=t;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=eze(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]))}}_addSchema(t,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,rD.normalizeId)(a||n);let u=rD.getSchemaRefs.call(this,t,n);return c=new tD.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):tD.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{tD.compileSchema.call(this,t)}finally{this.opts=r}}};nD.ValidationError=DOr.default;nD.MissingRefError=JGe.default;go.default=nD;function WGe(e,t,r,n="error"){for(let s in e){let i=s;i in t&&this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function XGe(e){return e=(0,rD.normalizeId)(e),this.schemas[e]||this.refs[e]}function qOr(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function HOr(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function VOr(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function jOr(){let e={...this.opts};for(let t of kOr)delete e[t];return e}var KOr={log(){},warn(){},error(){}};function GOr(e){if(e===!1)return KOr;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var zOr=/^[a-z_$][a-z0-9_$:-]*$/i;function YOr(e,t){let{RULES:r}=this;if((0,coe.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!zOr.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function ooe(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,d5.getJSONTypes)(t.type),schemaType:(0,d5.getJSONTypes)(t.schemaType)}};t.before?QOr.call(this,a,o,t.before):a.rules.push(o),i.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function QOr(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function WOr(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=eze(t)),e.validateSchema=this.compile(t,!0))}var XOr={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function eze(e){return{anyOf:[e,XOr]}}});var rze=S(uoe=>{"use strict";Object.defineProperty(uoe,"__esModule",{value:!0});var JOr={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};uoe.default=JOr});var aze=S($v=>{"use strict";Object.defineProperty($v,"__esModule",{value:!0});$v.callRef=$v.getValidate=void 0;var ZOr=Z2(),nze=Sd(),Ou=br(),PI=ym(),sze=a5(),f5=En(),e2r={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=sze.resolveRef.call(c,u,s,r);if(l===void 0)throw new ZOr.default(n.opts.uriResolver,s,r);if(l instanceof sze.SchemaEnv)return f(l);return h(l);function d(){if(i===u)return h5(e,a,i,i.$async);let p=t.scopeValue("root",{ref:u});return h5(e,(0,Ou._)`${p}.validate`,u,u.$async)}function f(p){let m=ize(e,p);h5(e,m,p,p.$async)}function h(p){let m=t.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Ou.stringify)(p)}:{ref:p}),_=t.name("valid"),g=e.subschema({schema:p,dataTypes:[],schemaPath:Ou.nil,topSchemaRef:m,errSchemaPath:r},_);e.mergeEvaluated(g),e.ok(_)}}};function ize(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Ou._)`${r.scopeValue("wrapper",{ref:t})}.validate`}$v.getValidate=ize;function h5(e,t,r,n){let{gen:s,it:i}=e,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?PI.default.this:Ou.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Ou._)`await ${(0,nze.callValidateCode)(e,t,u)}`),h(t),a||s.assign(p,!0)},m=>{s.if((0,Ou._)`!(${m} instanceof ${i.ValidationError})`,()=>s.throw(m)),f(m),a||s.assign(p,!1)}),e.ok(p)}function d(){e.result((0,nze.callValidateCode)(e,t,u),()=>h(t),()=>f(t))}function f(p){let m=(0,Ou._)`${p}.errors`;s.assign(PI.default.vErrors,(0,Ou._)`${PI.default.vErrors} === null ? ${m} : ${PI.default.vErrors}.concat(${m})`),s.assign(PI.default.errors,(0,Ou._)`${PI.default.vErrors}.length`)}function h(p){var m;if(!i.opts.unevaluated)return;let _=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(i.props=f5.mergeEvaluated.props(s,_.props,i.props));else{let g=s.var("props",(0,Ou._)`${p}.evaluated.props`);i.props=f5.mergeEvaluated.props(s,g,i.props,Ou.Name)}if(i.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(i.items=f5.mergeEvaluated.items(s,_.items,i.items));else{let g=s.var("items",(0,Ou._)`${p}.evaluated.items`);i.items=f5.mergeEvaluated.items(s,g,i.items,Ou.Name)}}}$v.callRef=h5;$v.default=e2r});var oze=S(loe=>{"use strict";Object.defineProperty(loe,"__esModule",{value:!0});var t2r=rze(),r2r=aze(),n2r=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",t2r.default,r2r.default];loe.default=n2r});var cze=S(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});var p5=br(),bA=p5.operators,m5={maximum:{okStr:"<=",ok:bA.LTE,fail:bA.GT},minimum:{okStr:">=",ok:bA.GTE,fail:bA.LT},exclusiveMaximum:{okStr:"<",ok:bA.LT,fail:bA.GTE},exclusiveMinimum:{okStr:">",ok:bA.GT,fail:bA.LTE}},s2r={message:({keyword:e,schemaCode:t})=>(0,p5.str)`must be ${m5[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,p5._)`{comparison: ${m5[e].okStr}, limit: ${t}}`},i2r={keyword:Object.keys(m5),type:"number",schemaType:"number",$data:!0,error:s2r,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,p5._)`${r} ${m5[t].fail} ${n} || isNaN(${r})`)}};doe.default=i2r});var uze=S(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});var sD=br(),a2r={message:({schemaCode:e})=>(0,sD.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,sD._)`{multipleOf: ${e}}`},o2r={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:a2r,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,a=t.let("res"),o=i?(0,sD._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,sD._)`${a} !== parseInt(${a})`;e.fail$data((0,sD._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};foe.default=o2r});var dze=S(hoe=>{"use strict";Object.defineProperty(hoe,"__esModule",{value:!0});function lze(e){let t=e.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});var qv=br(),c2r=En(),u2r=dze(),l2r={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,qv.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,qv._)`{limit: ${e}}`},d2r={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:l2r,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?qv.operators.GT:qv.operators.LT,a=s.opts.unicode===!1?(0,qv._)`${r}.length`:(0,qv._)`${(0,c2r.useFunc)(e.gen,u2r.default)}(${r})`;e.fail$data((0,qv._)`${a} ${i} ${n}`)}};poe.default=d2r});var hze=S(moe=>{"use strict";Object.defineProperty(moe,"__esModule",{value:!0});var f2r=Sd(),h2r=En(),LI=br(),p2r={message:({schemaCode:e})=>(0,LI.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,LI._)`{pattern: ${e}}`},m2r={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:p2r,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0,LI._)`new RegExp`:(0,h2r.useFunc)(t,c),l=t.let("valid");t.try(()=>t.assign(l,(0,LI._)`${u}(${i}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,LI._)`!${l}`)}else{let c=(0,f2r.usePattern)(e,s);e.fail$data((0,LI._)`!${c}.test(${r})`)}}};moe.default=m2r});var pze=S(goe=>{"use strict";Object.defineProperty(goe,"__esModule",{value:!0});var iD=br(),g2r={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,iD.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,iD._)`{limit: ${e}}`},_2r={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:g2r,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?iD.operators.GT:iD.operators.LT;e.fail$data((0,iD._)`Object.keys(${r}).length ${s} ${n}`)}};goe.default=_2r});var mze=S(_oe=>{"use strict";Object.defineProperty(_oe,"__esModule",{value:!0});var aD=Sd(),oD=br(),A2r=En(),E2r={message:({params:{missingProperty:e}})=>(0,oD.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,oD._)`{missingProperty: ${e}}`},y2r={keyword:"required",type:"object",schemaType:"array",$data:!0,error:E2r,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:a}=e,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let m of r)if(h?.[m]===void 0&&!p.has(m)){let _=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${m}" is not defined at "${_}" (strictRequired)`;(0,A2r.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(oD.nil,d);else for(let h of r)(0,aD.checkReportMissingProp)(e,h)}function l(){let h=t.let("missing");if(c||i){let p=t.let("valid",!0);e.block$data(p,()=>f(h,p)),e.ok(p)}else t.if((0,aD.checkMissingProp)(e,r,h)),(0,aD.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,aD.noPropertyInData)(t,s,h,o.ownProperties),()=>e.error())})}function f(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,aD.propertyInData)(t,s,h,o.ownProperties)),t.if((0,oD.not)(p),()=>{e.error(),t.break()})},oD.nil)}}};_oe.default=y2r});var gze=S(Aoe=>{"use strict";Object.defineProperty(Aoe,"__esModule",{value:!0});var cD=br(),v2r={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,cD.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,cD._)`{limit: ${e}}`},S2r={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:v2r,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?cD.operators.GT:cD.operators.LT;e.fail$data((0,cD._)`${r}.length ${s} ${n}`)}};Aoe.default=S2r});var g5=S(Eoe=>{"use strict";Object.defineProperty(Eoe,"__esModule",{value:!0});var _ze=dd();_ze.code='require("ajv/dist/runtime/equal").default';Eoe.default=_ze});var Aze=S(voe=>{"use strict";Object.defineProperty(voe,"__esModule",{value:!0});var yoe=Y2(),_o=br(),T2r=En(),b2r=g5(),I2r={message:({params:{i:e,j:t}})=>(0,_o.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,_o._)`{i: ${e}, j: ${t}}`},R2r={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:I2r,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=e;if(!n&&!s)return;let c=t.let("valid"),u=i.items?(0,yoe.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,_o._)`${a} === false`),e.ok(c);function l(){let p=t.let("i",(0,_o._)`${r}.length`),m=t.let("j");e.setParams({i:p,j:m}),t.assign(c,!0),t.if((0,_o._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let _=t.name("item"),g=(0,yoe.checkDataTypes)(u,_,o.opts.strictNumbers,yoe.DataType.Wrong),y=t.const("indices",(0,_o._)`{}`);t.for((0,_o._)`;${p}--;`,()=>{t.let(_,(0,_o._)`${r}[${p}]`),t.if(g,(0,_o._)`continue`),u.length>1&&t.if((0,_o._)`typeof ${_} == "string"`,(0,_o._)`${_} += "_"`),t.if((0,_o._)`typeof ${y}[${_}] == "number"`,()=>{t.assign(m,(0,_o._)`${y}[${_}]`),e.error(),t.assign(c,!1).break()}).code((0,_o._)`${y}[${_}] = ${p}`)})}function h(p,m){let _=(0,T2r.useFunc)(t,b2r.default),g=t.name("outer");t.label(g).for((0,_o._)`;${p}--;`,()=>t.for((0,_o._)`${m} = ${p}; ${m}--;`,()=>t.if((0,_o._)`${_}(${r}[${p}], ${r}[${m}])`,()=>{e.error(),t.assign(c,!1).break(g)})))}}};voe.default=R2r});var Eze=S(Toe=>{"use strict";Object.defineProperty(Toe,"__esModule",{value:!0});var Soe=br(),C2r=En(),x2r=g5(),w2r={message:"must be equal to constant",params:({schemaCode:e})=>(0,Soe._)`{allowedValue: ${e}}`},N2r={keyword:"const",$data:!0,error:w2r,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,Soe._)`!${(0,C2r.useFunc)(t,x2r.default)}(${r}, ${s})`):e.fail((0,Soe._)`${i} !== ${r}`)}};Toe.default=N2r});var yze=S(boe=>{"use strict";Object.defineProperty(boe,"__esModule",{value:!0});var uD=br(),O2r=En(),D2r=g5(),P2r={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,uD._)`{allowedValues: ${e}}`},L2r={keyword:"enum",schemaType:"array",$data:!0,error:P2r,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,O2r.useFunc)(t,D2r.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",i);l=(0,uD.or)(...s.map((p,m)=>f(h,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,h=>t.if((0,uD._)`${u()}(${r}, ${h})`,()=>t.assign(l,!0).break()))}function f(h,p){let m=s[p];return typeof m=="object"&&m!==null?(0,uD._)`${u()}(${r}, ${h}[${p}])`:(0,uD._)`${r} === ${m}`}}};boe.default=L2r});var vze=S(Ioe=>{"use strict";Object.defineProperty(Ioe,"__esModule",{value:!0});var M2r=cze(),k2r=uze(),B2r=fze(),U2r=hze(),F2r=pze(),$2r=mze(),q2r=gze(),H2r=Aze(),V2r=Eze(),j2r=yze(),K2r=[M2r.default,k2r.default,B2r.default,U2r.default,F2r.default,$2r.default,q2r.default,H2r.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},V2r.default,j2r.default];Ioe.default=K2r});var Coe=S(lD=>{"use strict";Object.defineProperty(lD,"__esModule",{value:!0});lD.validateAdditionalItems=void 0;var Hv=br(),Roe=En(),G2r={message:({params:{len:e}})=>(0,Hv.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Hv._)`{limit: ${e}}`},z2r={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:G2r,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Roe.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Sze(e,n)}};function Sze(e,t){let{gen:r,schema:n,data:s,keyword:i,it:a}=e;a.items=!0;let o=r.const("len",(0,Hv._)`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Hv._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,Roe.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Hv._)`${o} <= ${t.length}`);r.if((0,Hv.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,o,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:Roe.Type.Num},u),a.allErrors||r.if((0,Hv.not)(u),()=>r.break())})}}lD.validateAdditionalItems=Sze;lD.default=z2r});var xoe=S(dD=>{"use strict";Object.defineProperty(dD,"__esModule",{value:!0});dD.validateTuple=void 0;var Tze=br(),_5=En(),Y2r=Sd(),Q2r={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return bze(e,"additionalItems",t);r.items=!0,!(0,_5.alwaysValidSchema)(r,t)&&e.ok((0,Y2r.validateArray)(e))}};function bze(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=e;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=_5.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,Tze._)`${i}.length`);r.forEach((d,f)=>{(0,_5.alwaysValidSchema)(o,d)||(n.if((0,Tze._)`${u} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},c)),e.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=o,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let _=`"${a}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,_5.checkStrictMode)(o,_,f.strictTuples)}}}dD.validateTuple=bze;dD.default=Q2r});var Ize=S(woe=>{"use strict";Object.defineProperty(woe,"__esModule",{value:!0});var W2r=xoe(),X2r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,W2r.validateTuple)(e,"items")};woe.default=X2r});var Cze=S(Noe=>{"use strict";Object.defineProperty(Noe,"__esModule",{value:!0});var Rze=br(),J2r=En(),Z2r=Sd(),eDr=Coe(),tDr={message:({params:{len:e}})=>(0,Rze.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Rze._)`{limit: ${e}}`},rDr={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:tDr,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=!0,!(0,J2r.alwaysValidSchema)(n,t)&&(s?(0,eDr.validateAdditionalItems)(e,s):e.ok((0,Z2r.validateArray)(e)))}};Noe.default=rDr});var xze=S(Ooe=>{"use strict";Object.defineProperty(Ooe,"__esModule",{value:!0});var bd=br(),A5=En(),nDr={message:({params:{min:e,max:t}})=>t===void 0?(0,bd.str)`must contain at least ${e} valid item(s)`:(0,bd.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,bd._)`{minContains: ${e}}`:(0,bd._)`{minContains: ${e}, maxContains: ${t}}`},sDr={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:nDr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=t.const("len",(0,bd._)`${s}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,A5.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,A5.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,A5.alwaysValidSchema)(i,r)){let m=(0,bd._)`${l} >= ${a}`;o!==void 0&&(m=(0,bd._)`${m} && ${l} <= ${o}`),e.pass(m);return}i.items=!0;let d=t.name("valid");o===void 0&&a===1?h(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,bd._)`${s}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),_=t.let("count",0);h(m,()=>t.if(m,()=>p(_)))}function h(m,_){t.forRange("i",0,l,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:A5.Type.Num,compositeRule:!0},m),_()})}function p(m){t.code((0,bd._)`${m}++`),o===void 0?t.if((0,bd._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,bd._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,bd._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};Ooe.default=sDr});var Oze=S(Eh=>{"use strict";Object.defineProperty(Eh,"__esModule",{value:!0});Eh.validateSchemaDeps=Eh.validatePropertyDeps=Eh.error=void 0;var Doe=br(),iDr=En(),fD=Sd();Eh.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Doe.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Doe._)`{property: ${e}, - missingProperty: ${n}, - depsCount: ${t}, - deps: ${r}}`};var aDr={keyword:"dependencies",type:"object",schemaType:"object",error:Eh.error,code(e){let[t,r]=oDr(e);wze(e,t),Nze(e,r)}};function oDr({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function wze(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let c=(0,fD.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,fD.checkReportMissingProp)(e,u)}):(r.if((0,Doe._)`${c} && (${(0,fD.checkMissingProp)(e,o,i)})`),(0,fD.reportMissingProp)(e,i),r.else())}}Eh.validatePropertyDeps=wze;function Nze(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,a=r.name("valid");for(let o in t)(0,iDr.alwaysValidSchema)(i,t[o])||(r.if((0,fD.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:o},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}Eh.validateSchemaDeps=Nze;Eh.default=aDr});var Pze=S(Poe=>{"use strict";Object.defineProperty(Poe,"__esModule",{value:!0});var Dze=br(),cDr=En(),uDr={message:"property name must be valid",params:({params:e})=>(0,Dze._)`{propertyName: ${e.propertyName}}`},lDr={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:uDr,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0,cDr.alwaysValidSchema)(s,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,Dze.not)(i),()=>{e.error(!0),s.allErrors||t.break()})}),e.ok(i)}};Poe.default=lDr});var Moe=S(Loe=>{"use strict";Object.defineProperty(Loe,"__esModule",{value:!0});var E5=Sd(),$f=br(),dDr=ym(),y5=En(),fDr={message:"must NOT have additional properties",params:({params:e})=>(0,$f._)`{additionalProperty: ${e.additionalProperty}}`},hDr={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:fDr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,y5.alwaysValidSchema)(a,r))return;let u=(0,E5.allSchemaProperties)(n.properties),l=(0,E5.allSchemaProperties)(n.patternProperties);d(),e.ok((0,$f._)`${i} === ${dDr.default.errors}`);function d(){t.forIn("key",s,_=>{!u.length&&!l.length?p(_):t.if(f(_),()=>p(_))})}function f(_){let g;if(u.length>8){let y=(0,y5.schemaRefOrVal)(a,n.properties,"properties");g=(0,E5.isOwnProperty)(t,y,_)}else u.length?g=(0,$f.or)(...u.map(y=>(0,$f._)`${_} === ${y}`)):g=$f.nil;return l.length&&(g=(0,$f.or)(g,...l.map(y=>(0,$f._)`${(0,E5.usePattern)(e,y)}.test(${_})`))),(0,$f.not)(g)}function h(_){t.code((0,$f._)`delete ${s}[${_}]`)}function p(_){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(_);return}if(r===!1){e.setParams({additionalProperty:_}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,y5.alwaysValidSchema)(a,r)){let g=t.name("valid");c.removeAdditional==="failing"?(m(_,g,!1),t.if((0,$f.not)(g),()=>{e.reset(),h(_)})):(m(_,g),o||t.if((0,$f.not)(g),()=>t.break()))}}function m(_,g,y){let A={keyword:"additionalProperties",dataProp:_,dataPropType:y5.Type.Str};y===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,g)}}};Loe.default=hDr});var kze=S(Boe=>{"use strict";Object.defineProperty(Boe,"__esModule",{value:!0});var pDr=J2(),Lze=Sd(),koe=En(),Mze=Moe(),mDr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Mze.default.code(new pDr.KeywordCxt(i,Mze.default,"additionalProperties"));let a=(0,Lze.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=koe.mergeEvaluated.props(t,(0,koe.toHash)(a),i.props));let o=a.filter(d=>!(0,koe.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=t.name("valid");for(let d of o)u(d)?l(d):(t.if((0,Lze.propertyInData)(t,s,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Boe.default=mDr});var $ze=S(Uoe=>{"use strict";Object.defineProperty(Uoe,"__esModule",{value:!0});var Bze=Sd(),v5=br(),Uze=En(),Fze=En(),gDr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:a}=i,o=(0,Bze.allSchemaProperties)(r),c=o.filter(m=>(0,Uze.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof v5.Name)&&(i.props=(0,Fze.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let m of o)u&&h(m),i.allErrors?p(m):(t.var(l,!0),p(m),t.if(l))}function h(m){for(let _ in u)new RegExp(m).test(_)&&(0,Uze.checkStrictMode)(i,`property ${_} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){t.forIn("key",n,_=>{t.if((0,v5._)`${(0,Bze.usePattern)(e,m)}.test(${_})`,()=>{let g=c.includes(m);g||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:_,dataPropType:Fze.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,v5._)`${d}[${_}]`,!0):!g&&!i.allErrors&&t.if((0,v5.not)(l),()=>t.break())})})}}};Uoe.default=gDr});var qze=S(Foe=>{"use strict";Object.defineProperty(Foe,"__esModule",{value:!0});var _Dr=En(),ADr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,_Dr.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Foe.default=ADr});var Hze=S($oe=>{"use strict";Object.defineProperty($oe,"__esModule",{value:!0});var EDr=Sd(),yDr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:EDr.validateUnion,error:{message:"must match a schema in anyOf"}};$oe.default=yDr});var Vze=S(qoe=>{"use strict";Object.defineProperty(qoe,"__esModule",{value:!0});var S5=br(),vDr=En(),SDr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,S5._)`{passingSchemas: ${e.passing}}`},TDr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:SDr,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),o=t.let("passing",null),c=t.name("_valid");e.setParams({passing:o}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let f;(0,vDr.alwaysValidSchema)(s,l)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,S5._)`${c} && ${a}`).assign(a,!1).assign(o,(0,S5._)`[${o}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,S5.Name)})})}}};qoe.default=TDr});var jze=S(Hoe=>{"use strict";Object.defineProperty(Hoe,"__esModule",{value:!0});var bDr=En(),IDr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((i,a)=>{if((0,bDr.alwaysValidSchema)(n,i))return;let o=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(o)})}};Hoe.default=IDr});var zze=S(Voe=>{"use strict";Object.defineProperty(Voe,"__esModule",{value:!0});var T5=br(),Gze=En(),RDr={message:({params:e})=>(0,T5.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,T5._)`{failingKeyword: ${e.ifClause}}`},CDr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:RDr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,Gze.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Kze(n,"then"),i=Kze(n,"else");if(!s&&!i)return;let a=t.let("valid",!0),o=t.name("_valid");if(c(),e.reset(),s&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,u("then",l),u("else",l))}else s?t.if(o,u("then")):t.if((0,T5.not)(o),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,T5._)`${l}`):e.setParams({ifClause:l})}}}};function Kze(e,t){let r=e.schema[t];return r!==void 0&&!(0,Gze.alwaysValidSchema)(e,r)}Voe.default=CDr});var Yze=S(joe=>{"use strict";Object.defineProperty(joe,"__esModule",{value:!0});var xDr=En(),wDr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,xDr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};joe.default=wDr});var Qze=S(Koe=>{"use strict";Object.defineProperty(Koe,"__esModule",{value:!0});var NDr=Coe(),ODr=Ize(),DDr=xoe(),PDr=Cze(),LDr=xze(),MDr=Oze(),kDr=Pze(),BDr=Moe(),UDr=kze(),FDr=$ze(),$Dr=qze(),qDr=Hze(),HDr=Vze(),VDr=jze(),jDr=zze(),KDr=Yze();function GDr(e=!1){let t=[$Dr.default,qDr.default,HDr.default,VDr.default,jDr.default,KDr.default,kDr.default,BDr.default,MDr.default,UDr.default,FDr.default];return e?t.push(ODr.default,PDr.default):t.push(NDr.default,DDr.default),t.push(LDr.default),t}Koe.default=GDr});var Wze=S(Goe=>{"use strict";Object.defineProperty(Goe,"__esModule",{value:!0});var $i=br(),zDr={message:({schemaCode:e})=>(0,$i.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,$i._)`{format: ${e}}`},YDr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:zDr,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,$i._)`${p}[${a}]`),_=r.let("fType"),g=r.let("format");r.if((0,$i._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(_,(0,$i._)`${m}.type || "string"`).assign(g,(0,$i._)`${m}.validate`),()=>r.assign(_,(0,$i._)`"string"`).assign(g,m)),e.fail$data((0,$i.or)(y(),A()));function y(){return c.strictSchema===!1?$i.nil:(0,$i._)`${a} && !${g}`}function A(){let E=l.$async?(0,$i._)`(${m}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,$i._)`${g}(${n})`,v=(0,$i._)`(typeof ${g} == "function" ? ${E} : ${g}.test(${n}))`;return(0,$i._)`${g} && ${g} !== true && ${_} === ${t} && !${v}`}}function h(){let p=d.formats[i];if(!p){y();return}if(p===!0)return;let[m,_,g]=A(p);m===t&&e.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function A(v){let b=v instanceof RegExp?(0,$i.regexpCode)(v):c.code.formats?(0,$i._)`${c.code.formats}${(0,$i.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:v,code:b});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,$i._)`${I}.validate`]:["string",v,I]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,$i._)`await ${g}(${n})`}return typeof _=="function"?(0,$i._)`${g}(${n})`:(0,$i._)`${g}.test(${n})`}}}};Goe.default=YDr});var Xze=S(zoe=>{"use strict";Object.defineProperty(zoe,"__esModule",{value:!0});var QDr=Wze(),WDr=[QDr.default];zoe.default=WDr});var Jze=S(MI=>{"use strict";Object.defineProperty(MI,"__esModule",{value:!0});MI.contentVocabulary=MI.metadataVocabulary=void 0;MI.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];MI.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var eYe=S(Yoe=>{"use strict";Object.defineProperty(Yoe,"__esModule",{value:!0});var XDr=oze(),JDr=vze(),ZDr=Qze(),ePr=Xze(),Zze=Jze(),tPr=[XDr.default,JDr.default,(0,ZDr.default)(),ePr.default,Zze.metadataVocabulary,Zze.contentVocabulary];Yoe.default=tPr});var rYe=S(b5=>{"use strict";Object.defineProperty(b5,"__esModule",{value:!0});b5.DiscrError=void 0;var tYe;(function(e){e.Tag="tag",e.Mapping="mapping"})(tYe||(b5.DiscrError=tYe={}))});var sYe=S(Woe=>{"use strict";Object.defineProperty(Woe,"__esModule",{value:!0});var kI=br(),Qoe=rYe(),nYe=a5(),rPr=Z2(),nPr=En(),sPr={message:({params:{discrError:e,tagName:t}})=>e===Qoe.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,kI._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},iPr={keyword:"discriminator",type:"object",schemaType:"object",error:sPr,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,kI._)`${r}${(0,kI.getProperty)(o)}`);t.if((0,kI._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:Qoe.DiscrError.Tag,tag:u,tagName:o})),e.ok(c);function l(){let h=f();t.if(!1);for(let p in h)t.elseIf((0,kI._)`${u} === ${p}`),t.assign(c,d(h[p]));t.else(),e.error(!1,{discrError:Qoe.DiscrError.Mapping,tag:u,tagName:o}),t.endIf()}function d(h){let p=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(m,kI.Name),p}function f(){var h;let p={},m=g(s),_=!0;for(let E=0;E{aPr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var oYe=S((Qs,Xoe)=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.MissingRefError=Qs.ValidationError=Qs.CodeGen=Qs.Name=Qs.nil=Qs.stringify=Qs.str=Qs._=Qs.KeywordCxt=Qs.Ajv=void 0;var oPr=tze(),cPr=eYe(),uPr=sYe(),aYe=iYe(),lPr=["/properties"],I5="http://json-schema.org/draft-07/schema",BI=class extends oPr.default{_addVocabularies(){super._addVocabularies(),cPr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(uPr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(aYe,lPr):aYe;this.addMetaSchema(t,I5,!1),this.refs["http://json-schema.org/schema"]=I5}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(I5)?I5:void 0)}};Qs.Ajv=BI;Xoe.exports=Qs=BI;Xoe.exports.Ajv=BI;Object.defineProperty(Qs,"__esModule",{value:!0});Qs.default=BI;var dPr=J2();Object.defineProperty(Qs,"KeywordCxt",{enumerable:!0,get:function(){return dPr.KeywordCxt}});var UI=br();Object.defineProperty(Qs,"_",{enumerable:!0,get:function(){return UI._}});Object.defineProperty(Qs,"str",{enumerable:!0,get:function(){return UI.str}});Object.defineProperty(Qs,"stringify",{enumerable:!0,get:function(){return UI.stringify}});Object.defineProperty(Qs,"nil",{enumerable:!0,get:function(){return UI.nil}});Object.defineProperty(Qs,"Name",{enumerable:!0,get:function(){return UI.Name}});Object.defineProperty(Qs,"CodeGen",{enumerable:!0,get:function(){return UI.CodeGen}});var fPr=s5();Object.defineProperty(Qs,"ValidationError",{enumerable:!0,get:function(){return fPr.default}});var hPr=Z2();Object.defineProperty(Qs,"MissingRefError",{enumerable:!0,get:function(){return hPr.default}})});var cYe=S(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.formatLimitDefinition=void 0;var pPr=oYe(),qf=br(),IA=qf.operators,R5={formatMaximum:{okStr:"<=",ok:IA.LTE,fail:IA.GT},formatMinimum:{okStr:">=",ok:IA.GTE,fail:IA.LT},formatExclusiveMaximum:{okStr:"<",ok:IA.LT,fail:IA.GTE},formatExclusiveMinimum:{okStr:">",ok:IA.GT,fail:IA.LTE}},mPr={message:({keyword:e,schemaCode:t})=>qf.str`should be ${R5[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>qf._`{comparison: ${R5[e].okStr}, limit: ${t}}`};FI.formatLimitDefinition={keyword:Object.keys(R5),type:"string",schemaType:"string",$data:!0,error:mPr,code(e){let{gen:t,data:r,schemaCode:n,keyword:s,it:i}=e,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new pPr.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=t.scopeValue("formats",{ref:o.formats,code:a.code.formats}),h=t.const("fmt",qf._`${f}[${c.schemaCode}]`);e.fail$data(qf.or(qf._`typeof ${h} != "object"`,qf._`${h} instanceof RegExp`,qf._`typeof ${h}.compare != "function"`,d(h)))}function l(){let f=c.schema,h=o.formats[f];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let p=t.scopeValue("formats",{key:f,ref:h,code:a.code.formats?qf._`${a.code.formats}${qf.getProperty(f)}`:void 0});e.fail$data(d(p))}function d(f){return qf._`${f}.compare(${r}, ${n}) ${R5[s].fail} 0`}},dependencies:["format"]};var gPr=e=>(e.addKeyword(FI.formatLimitDefinition),e);FI.default=gPr});var fYe=S((hD,dYe)=>{"use strict";Object.defineProperty(hD,"__esModule",{value:!0});var $I=MKe(),_Pr=cYe(),Joe=br(),uYe=new Joe.Name("fullFormats"),APr=new Joe.Name("fastFormats"),Zoe=(e,t={keywords:!0})=>{if(Array.isArray(t))return lYe(e,t,$I.fullFormats,uYe),e;let[r,n]=t.mode==="fast"?[$I.fastFormats,APr]:[$I.fullFormats,uYe],s=t.formats||$I.formatNames;return lYe(e,s,r,n),t.keywords&&_Pr.default(e),e};Zoe.get=(e,t="full")=>{let n=(t==="fast"?$I.fastFormats:$I.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function lYe(e,t,r,n){var s,i;(s=(i=e.opts.code).formats)!==null&&s!==void 0||(i.formats=Joe._`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}dYe.exports=hD=Zoe;Object.defineProperty(hD,"__esModule",{value:!0});hD.default=Zoe});var mYe=S((Fjn,pYe)=>{"use strict";var EPr=Pje().default,yPr=uae(),hYe=lae(),ece=class{constructor(t,r){r.mode==="JTD"?this.ajv=new yPr(Object.assign({},hYe,r.customOptions)):this.ajv=new EPr(Object.assign({},hYe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let i of r.plugins)Array.isArray(i)?(n=n&&i[0].name!=="formatsPlugin",i[0](this.ajv,i[1])):(n=n&&i.name!=="formatsPlugin",i(this.ajv));n&&fYe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(t);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:t}){if(t.$id){let r=this.ajv.getSchema(t.$id);if(r)return r}return this.ajv.compile(t)}};pYe.exports=ece});var _Ye=S(($jn,gYe)=>{"use strict";var vPr=uae(),SPr=lae(),tce=class{constructor(t,r){this.ajv=new vPr(Object.assign({},SPr,r))}buildSerializerFunction({schema:t}){return this.ajv.compileSerializer(t)}};gYe.exports=tce});var yYe=S((mD,EYe)=>{"use strict";Object.defineProperty(mD,"__esModule",{value:!0});var pD=u8(),Hf=J1();function AYe(e,t){if(!e.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=e.scope.opts;return typeof t=="function"?s(t.source):t!==void 0?i(t,n):i(e.schemas,o=>o.meta?void 0:e.compile(o.schema));function n(o){let c=e.getSchema(o);if(!c)throw new Error(`moduleCode: no schema with id ${o}`);return c}function s(o){let c={},u=o?.validateName,l=a(c,o);return e.opts.code.esm?`"use strict";${r}export const validate = ${u};${r}export default ${u};${r}${l}`:`"use strict";${r}module.exports = ${u};${r}module.exports.default = ${u};${r}${l}`}function i(o,c){var u;let l={},d=(0,Hf._)`"use strict";`;for(let f in o){let h=c(o[f]);if(h){let p=a(l,h.source),m=e.opts.code.esm?(0,Hf._)`export const ${(0,Hf.getEsmExportName)(f)}`:(0,Hf._)`exports${(0,Hf.getProperty)(f)}`;d=(0,Hf._)`${d}${r}${m} = ${(u=h.source)===null||u===void 0?void 0:u.validateName};${r}${p}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===pD.UsedValueState.Completed)return Hf.nil;h(c.validateName,pD.UsedValueState.Started);let u=e.scope.scopeCode(c.scopeValues,o,d),l=new Hf._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,Hf._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(p){var m;let _=(m=p.value)===null||m===void 0?void 0:m.ref;if(p.prefix==="validate"&&typeof _=="function")return a(o,_.source);if((p.prefix==="root"||p.prefix==="wrapper")&&typeof _=="object"){let{validate:g,validateName:y}=_;if(!y)throw new Error("ajv internal error");let A=e.opts.code.es5?pD.varKinds.var:pD.varKinds.const,E=(0,Hf._)`${A} ${p} = {validate: ${y}};`;if(f(y)===pD.UsedValueState.Started)return E;let v=a(o,g?.source);return(0,Hf._)`${E}${r}${v}`}}function f(p){var m;return(m=o[p.prefix])===null||m===void 0?void 0:m.get(p)}function h(p,m){let{prefix:_}=p;(o[_]=o[_]||new Map).set(p,m)}}}EYe.exports=mD=AYe;Object.defineProperty(mD,"__esModule",{value:!0});mD.default=AYe});var TYe=S((qjn,SYe)=>{"use strict";var vYe=rce(),TPr=yYe().default;function bPr(e={readMode:!0}){if(e.readMode===!0&&!e.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(e.readMode!==!0&&!e.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(e.readMode===!0)return function(){return function(n){return e.restoreFunction(n)}};let t=vYe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=t(n,s);return function(a){let o=i(a),c=TPr(i[vYe.AjvReference].ajv,o);return e.storeFunction(a,c),o}}}SYe.exports=bPr});var rce=S((Hjn,qI)=>{"use strict";var IYe=Symbol.for("fastify.ajv-compiler.reference"),IPr=mYe(),RPr=_Ye();function nce(e){let t=new Map,r=new Map;return e&&e.jtdSerializer===!0?function(s,i){let a=bYe({},i);if(r.has(a))return r.get(a);let o=new RPr(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=bYe(s,i.customOptions);if(t.has(a))return t.get(a);let o=new IPr(s,i),c=o.buildValidatorFunction.bind(o);return t.set(a,c),i.customOptions.code!==void 0&&(c[IYe]=o),c}}function bYe(e,t){let r=JSON.stringify(e),n=JSON.stringify(t);return`${r}${n}`}qI.exports=nce;qI.exports.default=nce;qI.exports.AjvCompiler=nce;qI.exports.AjvReference=IYe;qI.exports.StandaloneValidator=TYe()});var sce=S((Vjn,RYe)=>{"use strict";var{buildSchemas:CPr}=lO(),xPr=zne(),wPr=rce();function NPr(e,t){if(e)return new HI(e,t);let r=Object.assign({buildValidator:null,buildSerializer:null},t?.compilersFactory);r.buildValidator||(r.buildValidator=wPr()),r.buildSerializer||(r.buildSerializer=xPr());let n={bucket:t&&t.bucket||CPr,compilersFactory:r,isCustomValidatorCompiler:typeof t?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof t?.compilersFactory?.buildValidator=="function"};return new HI(void 0,n)}var HI=class{constructor(t,r){this.opts=r||t?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,t?(this.schemaBucket=this.opts.bucket(t.getSchemas()),this.validatorCompiler=t.getValidatorCompiler(),this.serializerCompiler=t.getSerializerCompiler(),this.isCustomValidatorCompiler=t.isCustomValidatorCompiler,this.isCustomSerializerCompiler=t.isCustomSerializerCompiler,this.parent=t):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(t){return this.addedSchemas=!0,this.schemaBucket.add(t)}getSchema(t){return this.schemaBucket.getSchema(t)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(t){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>t}),this.validatorCompiler=t,this.isCustomValidatorCompiler=!0}setSerializerCompiler(t){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>t}),this.serializerCompiler=t,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(t){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),t.ajv))}setupSerializer(t){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),t.serializerOpts))}};HI.buildSchemaController=NPr;RYe.exports=HI});var lce=S((jjn,uce)=>{"use strict";var ice=pne(),oce=require("node:assert"),cce=Symbol.for("registered-plugin"),{kTestInternals:OPr}=Pa(),{exist:DPr,existReply:PPr,existRequest:LPr}=bne(),{FST_ERR_PLUGIN_VERSION_MISMATCH:MPr,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:kPr}=ko(),{FSTWRN002:BPr}=Xp();function gD(e){return e[Symbol.for("plugin-meta")]}function CYe(e){let t=xYe(e);if(t)return t;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;st.trim()).join(" -- ")}function xYe(e){return e[Symbol.for("fastify.display-name")]}function wYe(e){return!!e[Symbol.for("skip-override")]}function NYe(e){let t=gD(e);if(!t)return;let r=t.dependencies;r&&(oce(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{oce(this[cce].indexOf(n)>-1,`The dependency '${n}' of plugin '${t.name}' is not registered`)}))}function OYe(e){let t=gD(e);if(!t)return;let{decorators:r,name:n}=t;r&&(r.fastify&&ace(this,"Fastify",r.fastify,n),r.reply&&ace(this,"Reply",r.reply,n),r.request&&ace(this,"Request",r.request,n))}var FPr={Fastify:DPr,Request:LPr,Reply:PPr};function ace(e,t,r,n){oce(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!FPr[t].call(e,s))throw new kPr(s,i,t)})}function $Pr(e){let t=gD(e);if(!t)return;let r=t.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&ice.gt(this.version,ice.coerce(r))===!0)&&r&&ice.satisfies(this.version,r,{includePrerelease:n})===!1)throw new MPr(t.name,r,this.version)}function qPr(e){let t=gD(e);if(!t)return;let r=t.name;if(r)return this[cce].push(r),r}function HPr(e,t){e.constructor.name==="AsyncFunction"&&e.length===3&&BPr(t||"anonymous")}function VPr(e){let t=qPr.call(this,e)||CYe(e);return HPr.call(this,e,t),$Pr.call(this,e),OYe.call(this,e),NYe.call(this,e),wYe(e)}uce.exports={getPluginName:CYe,getFuncPreview:UPr,kRegisteredPlugins:cce,getDisplayName:xYe,registerPlugin:VPr};uce.exports[OPr]={shouldSkipOverride:wYe,getMeta:gD,checkDecorators:OYe,checkDependencies:NYe}});var C5=S((Kjn,DYe)=>{"use strict";function jPr(e,t){let r=t||GPr();return e?zPr(e,r):r}function KPr(e,t){return e.genReqId(t)}function GPr(){let t=0;return function(){return t=t+1&2147483647,`req-${t.toString(36)}`}}function zPr(e,t){return function(r){return r.headers[e]||t(r)}}DYe.exports={getGenReqId:KPr,reqIdGenFactory:jPr}});var kYe=S((Gjn,MYe)=>{"use strict";var PYe=12,YPr=0,dce=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function QPr(e){var t=e.indexOf("%");if(t===-1)return e;for(var r=e.length,n="",s=0,i=0,a=t,o=PYe;t>-1&&t>10),56320+(i&1023)),i=0,s=t+3,t=a=e.indexOf("%",s);else{if(o===YPr)return null;if(t+=3,t{"use strict";var BYe=kYe(),UYe=/\+/g,FYe=function(){};FYe.prototype=Object.create(null);function XPr(e){let t=new FYe;if(typeof e!="string")return t;let r=e.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let h=0;hi,d||(a=h),n=e.slice(i+1,a),d||n.length>0){u&&(n=n.replace(UYe," ")),o&&(n=BYe(n)||n),d&&(s=e.slice(a+1,h),l&&(s=s.replace(UYe," ")),c&&(s=BYe(s)||s));let p=t[n];p===void 0?t[n]=s:p.pop?p.push(s):t[n]=[p,s]}s="",i=h,a=h,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=h:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return t}$Ye.exports=XPr});var VYe=S((Yjn,HYe)=>{var yh=Array.from({length:256},(e,t)=>"%"+((t<16?"0":"")+t.toString(16)).toUpperCase()),JPr=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function ZPr(e){let t=e.length;if(t===0)return"";let r="",n=0,s=0;e:for(;s>6]+yh[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=yh[224|i>>12]+yh[128|i>>6&63]+yh[128|i&63];continue}if(++s,s>=t)throw new Error("URI malformed");let a=e.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=yh[240|i>>18]+yh[128|i>>12&63]+yh[128|i>>6&63]+yh[128|i&63]}return n===0?e:n{"use strict";var{encodeString:fce}=VYe();function jYe(e){let t=typeof e;return t==="string"?fce(e):t==="bigint"?e.toString():t==="boolean"?e?"true":"false":t==="number"&&Number.isFinite(e)?e<1e21?""+e:fce(""+e):""}function eLr(e){let t="";if(e===null||typeof e!="object")return t;let r="&",n=Object.keys(e),s=n.length,i=0;for(let a=0;a{"use strict";var zYe=qYe(),YYe=GYe(),QYe={parse:zYe,stringify:YYe};_D.exports=QYe;_D.exports.default=QYe;_D.exports.parse=zYe;_D.exports.stringify=YYe});var JYe=S(XYe=>{"use strict";Object.defineProperty(XYe,"__esModule",{value:!0})});var ZYe=S(AD=>{"use strict";Object.defineProperty(AD,"__esModule",{value:!0});AD.types=void 0;var tLr;(function(e){e[e.ROOT=0]="ROOT",e[e.GROUP=1]="GROUP",e[e.POSITION=2]="POSITION",e[e.SET=3]="SET",e[e.RANGE=4]="RANGE",e[e.REPETITION=5]="REPETITION",e[e.REFERENCE=6]="REFERENCE",e[e.CHAR=7]="CHAR"})(tLr=AD.types||(AD.types={}))});var tQe=S(eQe=>{"use strict";Object.defineProperty(eQe,"__esModule",{value:!0})});var bm=S(Tm=>{"use strict";var rLr=Tm&&Tm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hce=Tm&&Tm.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&rLr(t,e,r)};Object.defineProperty(Tm,"__esModule",{value:!0});hce(JYe(),Tm);hce(ZYe(),Tm);hce(tQe(),Tm)});var x5=S(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});Qo.anyChar=Qo.notWhitespace=Qo.whitespace=Qo.notInts=Qo.ints=Qo.notWords=Qo.words=void 0;var Hn=bm(),rQe=()=>[{type:Hn.types.RANGE,from:48,to:57}],nQe=()=>[{type:Hn.types.CHAR,value:95},{type:Hn.types.RANGE,from:97,to:122},{type:Hn.types.RANGE,from:65,to:90},{type:Hn.types.RANGE,from:48,to:57}],sQe=()=>[{type:Hn.types.CHAR,value:9},{type:Hn.types.CHAR,value:10},{type:Hn.types.CHAR,value:11},{type:Hn.types.CHAR,value:12},{type:Hn.types.CHAR,value:13},{type:Hn.types.CHAR,value:32},{type:Hn.types.CHAR,value:160},{type:Hn.types.CHAR,value:5760},{type:Hn.types.RANGE,from:8192,to:8202},{type:Hn.types.CHAR,value:8232},{type:Hn.types.CHAR,value:8233},{type:Hn.types.CHAR,value:8239},{type:Hn.types.CHAR,value:8287},{type:Hn.types.CHAR,value:12288},{type:Hn.types.CHAR,value:65279}],nLr=()=>[{type:Hn.types.CHAR,value:10},{type:Hn.types.CHAR,value:13},{type:Hn.types.CHAR,value:8232},{type:Hn.types.CHAR,value:8233}];Qo.words=()=>({type:Hn.types.SET,set:nQe(),not:!1});Qo.notWords=()=>({type:Hn.types.SET,set:nQe(),not:!0});Qo.ints=()=>({type:Hn.types.SET,set:rQe(),not:!1});Qo.notInts=()=>({type:Hn.types.SET,set:rQe(),not:!0});Qo.whitespace=()=>({type:Hn.types.SET,set:sQe(),not:!1});Qo.notWhitespace=()=>({type:Hn.types.SET,set:sQe(),not:!0});Qo.anyChar=()=>({type:Hn.types.SET,set:nLr(),not:!0})});var aQe=S(Id=>{"use strict";var sLr=Id&&Id.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),iLr=Id&&Id.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),aLr=Id&&Id.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&sLr(t,e,r);return iLr(t,e),t};Object.defineProperty(Id,"__esModule",{value:!0});Id.tokenizeClass=Id.strToChars=void 0;var iQe=bm(),VI=aLr(x5()),oLr="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";Id.strToChars=e=>{let t=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return e.replace(t,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?oLr.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};Id.tokenizeClass=(e,t)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(e))!==null;){let h=(c=(o=(a=(i=(s=(n=(r=l[1]&&VI.words())!==null&&r!==void 0?r:l[2]&&VI.ints())!==null&&n!==void 0?n:l[3]&&VI.whitespace())!==null&&s!==void 0?s:l[4]&&VI.notWords())!==null&&i!==void 0?i:l[5]&&VI.notInts())!==null&&a!==void 0?a:l[6]&&VI.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:iQe.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=l[16])&&{type:iQe.types.CHAR,value:d.charCodeAt(0)};if(h)u.push(h);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}});var pce=S(vh=>{"use strict";var cLr=vh&&vh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uLr=vh&&vh.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),cQe=vh&&vh.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&cLr(t,e,r);return uLr(t,e),t};Object.defineProperty(vh,"__esModule",{value:!0});vh.tokenizer=void 0;var oQe=cQe(aQe()),Ao=bm(),Vv=cQe(x5());vh.tokenizer=e=>{let t=0,r,n={type:Ao.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${d-1}`)},l=oQe.strToChars(e);for(;ts){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:Ao.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var lQe=S(Wo=>{"use strict";var dLr=Wo&&Wo.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fLr=Wo&&Wo.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hLr=Wo&&Wo.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dLr(t,e,r);return fLr(t,e),t};Object.defineProperty(Wo,"__esModule",{value:!0});Wo.NOTANYCHAR=Wo.WHITESPACE=Wo.WORDS=Wo.INTS=void 0;var w5=hLr(x5()),uQe=bm();function N5(e){let t={},r=0;for(let n of e)n.type===uQe.types.CHAR&&(t[n.value]=!0),n.type===uQe.types.RANGE&&(t[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},t),len:r}}Wo.INTS=N5(w5.ints().set);Wo.WORDS=N5(w5.words().set);Wo.WHITESPACE=N5(w5.whitespace().set);Wo.NOTANYCHAR=N5(w5.anyChar().set)});var fQe=S(Rd=>{"use strict";var pLr=Rd&&Rd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mLr=Rd&&Rd.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gLr=Rd&&Rd.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pLr(t,e,r);return mLr(t,e),t};Object.defineProperty(Rd,"__esModule",{value:!0});Rd.writeSetTokens=Rd.setChar=void 0;var L5=bm(),O5=gLr(lQe());function P5(e){return e===94?"\\^":e===92?"\\\\":e===93?"\\]":e===45?"\\-":String.fromCharCode(e)}Rd.setChar=P5;function D5(e,{lookup:t,len:r}){if(r!==e.length)return!1;let n=t();for(let s of e){if(s.type===L5.types.SET)return!1;let i=s.type===L5.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function dQe(e,t=!1){if(D5(e.set,O5.INTS))return e.not?"\\D":"\\d";if(D5(e.set,O5.WORDS))return e.not?"\\W":"\\w";if(e.not&&D5(e.set,O5.NOTANYCHAR))return".";if(D5(e.set,O5.WHITESPACE))return e.not?"\\S":"\\s";let r="";for(let s=0;s{"use strict";Object.defineProperty(jI,"__esModule",{value:!0});jI.reconstruct=void 0;var RA=bm(),mce=fQe(),hQe=e=>e.map(jI.reconstruct).join(""),pQe=e=>{if("options"in e)return e.options.map(hQe).join("|");if("stack"in e)return hQe(e.stack);throw new Error("options or stack must be Root or Group token")};jI.reconstruct=e=>{switch(e.type){case RA.types.ROOT:return pQe(e);case RA.types.CHAR:{let t=String.fromCharCode(e.value);return(/[[\\{}$^.|?*+()]/.test(t)?"\\":"")+t}case RA.types.POSITION:return e.value==="^"||e.value==="$"?e.value:`\\${e.value}`;case RA.types.REFERENCE:return`\\${e.value}`;case RA.types.SET:return mce.writeSetTokens(e);case RA.types.GROUP:return`(${e.remember?"":e.followedBy?"?=":e.notFollowedBy?"?!":"?:"}${pQe(e)})`;case RA.types.REPETITION:{let{min:t,max:r}=e,n;return t===0&&r===1?n="?":t===1&&r===1/0?n="+":t===0&&r===1/0?n="*":r===1/0?n=`{${t},}`:t===r?n=`{${t}}`:n=`{${t},${r}}`,`${jI.reconstruct(e.value)}${n}`}case RA.types.RANGE:return`${mce.setChar(e.from)}-${mce.setChar(e.to)}`;default:throw new Error(`Invalid token type ${e}`)}}});var _Qe=S((Cd,M5)=>{"use strict";var ALr=Cd&&Cd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_ce=Cd&&Cd.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&ALr(t,e,r)};Object.defineProperty(Cd,"__esModule",{value:!0});Cd.types=void 0;var mQe=bm();Object.defineProperty(Cd,"types",{enumerable:!0,get:function(){return mQe.types}});_ce(pce(),Cd);_ce(gce(),Cd);var gQe=pce(),ELr=gce();_ce(bm(),Cd);Cd.default=gQe.tokenizer;M5.exports=gQe.tokenizer;M5.exports.types=mQe.types;M5.exports.reconstruct=ELr.reconstruct});var EQe=S((oKn,k5)=>{"use strict";var AQe=_Qe(),yLr=AQe.types;function Ace(e,t){t||(t={});let r=t.limit===void 0?25:t.limit;vLr(e)?e=e.source:typeof e!="string"&&(e=String(e));try{e=AQe(e)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===yLr.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o{"use strict";yQe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let e={};return{get:t=>e[t]||null,set:(t,r)=>{e[t]=r}}},deriveConstraint:e=>e.method,mustMatchWhenDerived:!0}});var CQe=S((uKn,RQe)=>{"use strict";var vQe=dd(),SQe=B5(),TQe=Symbol("treeData");function bQe(e,t=""){let r="",n=Object.keys(e);for(let s=0;sIQe(t)):typeof e=="symbol"?e.toString():typeof e=="function"?SLr(e):e}function TLr(e,t){if(!t.includeMeta)return{};let r=t.buildPrettyMeta(e),n={},s=t.includeMeta;Array.isArray(s)||(s=Reflect.ownKeys(r));for(let i of s){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let a=i.toString(),o=r[i];if(o!=null){let c=JSON.stringify(IQe(o));n[a]=c}}return n}function bLr(e){let t="";for(let[r,n]of Object.entries(e))t+=` -\u2022 (${r}) ${n}`;return t}function ILr(e){let t={...e.opts.constraints},r=t[SQe.name];return delete t[SQe.name],{...e,method:r,opts:{constraints:t}}}function RLr(e){let t=` (${e.method})`,r=e.opts.constraints||{};return Object.keys(r).length!==0&&(t+=" "+JSON.stringify(r)),t+=bLr(e.metaData),t}function CLr(e){return e.reduce((t,r)=>{for(let n of t)if(vQe(r.opts.constraints,n.opts.constraints)&&vQe(r.metaData,n.metaData))return n.method+=", "+r.method,t;return t.push(r),t},[])}function xLr(e,t,r){let n=e.routes;return r.method===void 0&&(n=n.map(ILr)),n=n.map(s=>(s.metaData=TLr(s,r),s)),r.method===void 0&&(n=CLr(n)),n.map(RLr).join(` -${t}`)}function U5(e,t,r,n){if((e.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",t=t[r]={},e.isLeafNode&&(t[TQe]=xLr(e,r,n)),r=""),e.staticChildren)for(let s of Object.values(e.staticChildren))U5(s,t,r+s.prefix,n);if(e.parametricChildren)for(let s of Object.values(e.parametricChildren)){let i=Array.from(s.nodePaths).join("|");U5(s,t,r+i,n)}e.wildcardChild&&U5(e.wildcardChild,t,"*",n)}function wLr(e,t){let r={};return U5(e,r,e.prefix,t),bQe(r)}RQe.exports={prettyPrintTree:wLr}});var wQe=S((lKn,xQe)=>{"use strict";var NLr=B5(),Ece=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(t){return t===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(t)}addHandler(t,r){let n=r.params,s=r.opts.constraints||{},i={params:n,constraints:s,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(s);a.length===0&&(this.unconstrainedHandler=i);for(let c of a)this.constraints.includes(c)||(c==="version"?this.constraints.unshift(c):this.constraints.push(c));let o=a.includes(NLr.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(i),this.handlers.sort((c,u)=>Object.keys(c.constraints).length-Object.keys(u.constraints).length),o||this._compileGetHandlerMatchingConstraints(t,s)}_compileCreateParamsObject(t){let r=[];for(let n=0;n{"use strict";var OLr=wQe(),j5={STATIC:0,PARAMETRIC:1,WILDCARD:2},F5=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(t,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new OLr),this.isLeafNode=!0,this.routes.push(t),this.handlerStorage.addHandler(r,t)}},$5=class extends F5{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(t,r){let n=this.staticChildren[t.charAt(r)];return n===void 0||!n.matchPrefix(t,r)?null:n}getStaticChild(t,r=0){if(t.length===r)return this;let n=this.findStaticMatchingChild(t,r);return n?n.getStaticChild(t,r+n.prefix.length):null}createStaticChild(t){if(t.length===0)return this;let r=this.staticChildren[t.charAt(0)];if(r){let s=1;for(;s(s.regex&&s.regex.source)===r);return n||null}createParametricChild(t,r,n){let s=this.getParametricChild(t);return s?(s.nodePaths.add(n),s):(s=new H5(t,r,n),this.parametricChildren.push(s),this.parametricChildren.sort((i,a)=>i.isRegex?a.isRegex?i.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(i.staticSuffix)?1:i.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),s)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new V5,this.wildcardChild}split(t,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new e(n);return i.staticChildren[s.charAt(0)]=this,t.staticChildren[n.charAt(0)]=i,i}getNextNode(t,r,n,s){let i=this.findStaticMatchingChild(t,r),a=0;if(i===null){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return i}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let t=[];for(let r=1;r{"use strict";var DLr=require("node:assert");function ED(){if(!(this instanceof ED))return new ED;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}ED.prototype.set=function(e,t){if(typeof e!="string")throw new TypeError("Version should be a string");let[r,n,s]=e.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,s=Number(s)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=t,this.store["*"]=t,this.store["x.x"]=t,this.store["x.x.x"]=t),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=t,this.store[`${r}.x.x`]=t),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=t),this.store[`${r}.${n}.${s}`]=t,this};ED.prototype.get=function(e){return this.store[e]};DQe.exports={name:"version",mustMatchWhenDerived:!0,storage:ED,validate(e){DLr(typeof e=="string","Version should be a string")}}});var MQe=S((hKn,LQe)=>{"use strict";var PLr=require("node:assert");function LLr(){let e={},t=[];return{get:r=>{let n=e[r];if(n)return n;for(let s of t)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?t.push({host:r,value:n}):e[r]=n}}}LQe.exports={name:"host",mustMatchWhenDerived:!1,storage:LLr,validate(e){PLr(typeof e=="string"||Object.prototype.toString.call(e)==="[object RegExp]","Host should be a string or a RegExp")}}});var BQe=S((pKn,kQe)=>{"use strict";var MLr=PQe(),kLr=MQe(),yce=require("node:assert"),vce=class{constructor(t){if(this.strategies={version:MLr,host:kLr},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,t)for(let r of Object.values(t))this.addConstraintStrategy(r)}isStrategyUsed(t){return this.strategiesInUse.has(t)||this.asyncStrategiesInUse.has(t)}hasConstraintStrategy(t){let r=this.strategies[t];return r!==void 0?r.isCustom||this.isStrategyUsed(t):!1}addConstraintStrategy(t){if(yce(typeof t.name=="string"&&t.name!=="","strategy.name is required."),yce(t.storage&&typeof t.storage=="function","strategy.storage function is required."),yce(t.deriveConstraint&&typeof t.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[t.name]&&this.strategies[t.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${t.name}.`);if(this.isStrategyUsed(t.name))throw new Error(`There already exists a route with ${t.name} constraint.`);t.isCustom=!0,t.isAsync=t.deriveConstraint.length===3,this.strategies[t.name]=t,t.mustMatchWhenDerived&&this.noteUsage({[t.name]:t})}deriveConstraints(t,r,n){let s=this.deriveSyncConstraints(t,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,t,r,n)}deriveSyncConstraints(t,r){}noteUsage(t){if(t){let r=this.strategiesInUse.size;for(let n in t)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(t){if(!this.strategies[t])throw new Error(`No strategy registered for constraint key ${t}`);return this.strategies[t].storage()}validateConstraints(t){for(let r in t){let n=t[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let s=this.strategies[r];if(!s)throw new Error(`No strategy registered for constraint key ${r}`);s.validate&&s.validate(n)}}deriveAsyncConstraints(t,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,t);return}t=t||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}t[a]=u,--i===0&&s(null,t)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let t=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?t.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?t.push(" version: req.headers['accept-version'],"):t.push(" host: req.headers.host || req.headers[':authority'],")}t.push("}"),this.deriveSyncConstraints=new Function("req","ctx",t.join(` -`)).bind(this)}};kQe.exports=vce});var FQe=S((mKn,UQe)=>{"use strict";var BLr=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];UQe.exports=BLr});var HQe=S((gKn,qQe)=>{"use strict";function $Qe(e,t){return e===50?t===53?"%":t===51?"#":t===52?"$":t===54?"&":t===66||t===98?"+":t===67||t===99?",":t===70||t===102?"/":null:e===51?t===65||t===97?":":t===66||t===98?";":t===68||t===100?"=":t===70||t===102?"?":null:e===52&&t===48?"@":null}function ULr(e,t){let r=!1,n=!1,s="";for(let a=1;a{"use strict";var qi=require("node:assert"),$Lr=WYe(),K5=EQe(),Tce=dd(),{prettyPrintTree:qLr}=CQe(),{StaticNode:VQe,NODE_TYPES:jQe}=OQe(),HLr=BQe(),KI=FQe(),Sce=B5(),{safeDecodeURI:VLr,safeDecodeURIComponent:KQe}=HQe(),GQe=/^https?:\/\/.*?\//,jv=/(\/:[^/()]*?)\?(\/?)/;if(!K5(GQe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!K5(jv))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function yi(e){if(!(this instanceof yi))return new yi(e);e=e||{},this._opts=e,e.defaultRoute?(qi(typeof e.defaultRoute=="function","The default route must be a function"),this.defaultRoute=e.defaultRoute):this.defaultRoute=null,e.onBadUrl?(qi(typeof e.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=e.onBadUrl):this.onBadUrl=null,e.buildPrettyMeta?(qi(typeof e.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=e.buildPrettyMeta):this.buildPrettyMeta=jLr,e.querystringParser?(qi(typeof e.querystringParser=="function","querystringParser must be a function"),this.querystringParser=e.querystringParser):this.querystringParser=t=>t===""?{}:$Lr.parse(t),this.caseSensitive=e.caseSensitive===void 0?!0:e.caseSensitive,this.ignoreTrailingSlash=e.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=e.ignoreDuplicateSlashes||!1,this.maxParamLength=e.maxParamLength||100,this.allowUnsafeRegex=e.allowUnsafeRegex||!1,this.constrainer=new HLr(e.constraints),this.useSemicolonDelimiter=e.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}yi.prototype.on=function(t,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),qi(typeof r=="string","Path should be a string"),qi(r.length>0,"The path could not be empty"),qi(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),qi(typeof s=="function","Handler should be a function");let a=r.match(jv);if(a){qi(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(jv,"$1$2"),l=r.replace(jv,"$2")||"/";this.on(t,u,n,s,i),this.on(t,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=bce(r)),this.ignoreTrailingSlash&&(r=Ice(r));let c=Array.isArray(t)?t:[t];for(let u of c)qi(typeof u=="string","Method should be a string"),qi(KI.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};yi.prototype._on=function(t,r,n,s,i){let a={};n.constraints!==void 0&&(qi(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[t]===void 0&&(this.trees[t]=new VQe("/"));let o=r;if(o==="*"&&this.trees[t].prefix.length!==0){let f=this.trees[t];this.trees[t]=new VQe(""),this.trees[t].staticChildren["/"]=f}let c=this.trees[t],u=c.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let h=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,p=o.charCodeAt(f)===42;if(h||p||f===o.length&&f!==u){let m=o.slice(u,f);this.caseSensitive||(m=m.toLowerCase()),m=m.split("::").join(":"),m=m.split("%").join("%25"),c=c.createStaticChild(m)}if(h){let m=!1,_=!0,g="",y=[],A=f+1;for(let E=A;;E++){let v=o.charCodeAt(E),b=v===40,I=v===45||v===46,T=v===47||E===o.length;if(b||I||T){let x=o.slice(A,E);if(l.push(x),m=m||b||I,b){let M=QQe(o,E),L=o.slice(E,M+1);this.allowUnsafeRegex||qi(K5(new RegExp(L)),`The regex '${L}' is not safe!`),y.push(YQe(L)),E=M+1,_=!0}else y.push(_?"(.*?)":`(${g}|(?:(?!${g}).)*)`),_=!1;let w=E;for(;E0,"The path could not be empty"),qi(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),qi(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(jv);if(s){qi(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(jv,"$1$2"),o=r.replace(jv,"$2");this.off(t,a,n),this.off(t,o,n);return}this.ignoreDuplicateSlashes&&(r=bce(r)),this.ignoreTrailingSlash&&(r=Ice(r));let i=Array.isArray(t)?t:[t];for(let a of i)this._off(a,r,n)};yi.prototype._off=function(t,r,n){qi(typeof t=="string","Method should be a string"),qi(KI.includes(t),`Method '${t}' is not an http method.`);function s(c){return t!==c.method||r!==c.path}function i(c){return s(c)||!Tce(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};yi.prototype.lookup=function(t,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(t,n),a=this.find(t.method,t.url,i);return this.callHandler(a,t,r,n)}this.constrainer.deriveConstraints(t,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(t.method,t.url,a),c=this.callHandler(o,t,r,n);s(null,c)}catch(o){s(o)}})};yi.prototype.callHandler=function(t,r,n,s){return t===null?this._defaultRoute(r,n,s):s===void 0?t.handler(r,n,t.params,t.store,t.searchParams):t.handler.call(s,r,n,t.params,t.store,t.searchParams)};yi.prototype.find=function(t,r,n){let s=this.trees[t];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(GQe,"/")),this.ignoreDuplicateSlashes&&(r=bce(r));let i,a,o;try{i=VLr(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=Ice(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,h=[];for(;;){if(l===f&&s.isLeafNode){let g=s.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let p=s.getNextNode(r,l,h,d.length);if(p===null){if(h.length===0)return null;let g=h.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),p=g.brotherNode}if(s=p,s.kind===jQe.STATIC){l+=s.prefix.length;continue}if(s.kind===jQe.WILDCARD){let g=c.slice(l);o&&(g=KQe(g)),d.push(g),l=f;continue}let m=c.indexOf("/",l);m===-1&&(m=f);let _=c.slice(l,m);if(o&&(_=KQe(_)),s.isRegex){let g=s.regex.exec(_);if(g===null)continue;for(let y=1;yu)return null;d.push(A)}}else{if(_.length>u)return null;d.push(_)}l=m}};yi.prototype._rebuild=function(e){this.reset();for(let t of e){let{method:r,path:n,opts:s,handler:i,store:a}=t;this._on(r,n,s,i,a)}};yi.prototype._defaultRoute=function(e,t,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(e,t):this.defaultRoute.call(r,e,t);t.statusCode=404,t.end()};yi.prototype._onBadUrl=function(e){if(this.onBadUrl===null)return null;let t=this.onBadUrl;return{handler:(r,n,s)=>t(e,r,n),params:{},store:null}};yi.prototype.prettyPrint=function(e={}){let t=e.method;e.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(t===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[Sce.name]=Sce;let a=new yi({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[Sce.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[t];return r==null?"(empty tree)":qLr(r,e)};for(let e in KI){if(!KI.hasOwnProperty(e))continue;let t=KI[e],r=t.toLowerCase();yi.prototype[r]=function(n,s,i){return this.on(t,n,s,i)}}yi.prototype.all=function(e,t,r){this.on(KI,e,t,r)};WQe.exports=yi;function zQe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function bce(e){return e.replace(/\/\/+/g,"/")}function Ice(e){return e.length>1&&e.charCodeAt(e.length-1)===47?e.slice(0,-1):e}function YQe(e){return e.charCodeAt(1)===94&&(e=e.slice(0,1)+e.slice(2)),e.charCodeAt(e.length-2)===36&&(e=e.slice(0,e.length-2)+e.slice(e.length-1)),e}function QQe(e,t){let r=1;for(;t{"use strict";function Cce(e,t,r,n){if(r===void 0)return t.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{t.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);t.header("content-length",s),n(null,null)}function KLr(e){return e==null?Cce:Array.isArray(e)?[...e,Cce]:[e,Cce]}XQe.exports={parseHeadOnSendHandlers:KLr}});var mWe=S((EKn,pWe)=>{"use strict";var GLr=Rce(),zLr=j6(),ZQe=qZ(),{onRequestAbortHookRunner:YLr,lifecycleHooks:eWe,preParsingHookRunner:QLr,onTimeoutHookRunner:WLr,onRequestHookRunner:XLr}=K_(),{supportedMethods:JLr}=Ene(),{normalizeSchema:ZLr}=lO(),{parseHeadOnSendHandlers:eMr}=JQe(),{FSTDEP007:tMr,FSTDEP008:rMr,FSTDEP014:tWe}=Xp(),{compileSchemasForValidation:nMr,compileSchemasForSerialization:sMr}=kZ(),{FST_ERR_SCH_VALIDATION_BUILD:iMr,FST_ERR_SCH_SERIALIZATION_BUILD:aMr,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:oMr,FST_ERR_DUPLICATED_ROUTE:cMr,FST_ERR_INVALID_URL:uMr,FST_ERR_HOOK_INVALID_HANDLER:rWe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:lMr,FST_ERR_ROUTE_DUPLICATED_HANDLER:dMr,FST_ERR_ROUTE_HANDLER_NOT_FN:nWe,FST_ERR_ROUTE_MISSING_HANDLER:fMr,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:hMr,FST_ERR_ROUTE_METHOD_INVALID:pMr,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:mMr,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:gMr,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:xce}=ko(),{kRoutePrefix:_Mr,kLogLevel:AMr,kLogSerializers:sWe,kHooks:iWe,kSchemaController:EMr,kOptions:aWe,kReplySerializerDefault:wce,kReplyIsError:yMr,kRequestPayloadStream:vMr,kDisableRequestLogging:SMr,kSchemaErrorFormatter:TMr,kErrorHandler:oWe,kHasBeenDecorated:cWe,kRequestAcceptVersion:Nce,kRouteByFastify:Oce,kRouteContext:uWe}=Pa(),{buildErrorHandler:bMr}=HO(),{createChildLogger:IMr}=uO(),{getGenReqId:RMr}=C5();function CMr(e){let t=GLr(e.config),r,n,s,i,a,o,c,u,l,d,f,h,p,m=!1;return{setup(T,x){r=x.avvio,n=x.fourOhFour,s=x.logger,i=x.hasLogger,a=x.setupResponseListeners,o=x.throwIfAlreadyStarted,h=x.validateHTTPVersion,f=T.exposeHeadRoutes,c=T.disableRequestLogging,u=T.ignoreTrailingSlash,l=T.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(T,"return503OnClosing")?T.return503OnClosing:!0,p=x.keepAliveConnections},routing:t.lookup.bind(t),route:b,hasRoute:E,prepareRoute:A,getDefaultRoute:function(){return tWe(),t.defaultRoute},setDefaultRoute:function(T){if(tWe(),typeof T!="function")throw new oMr;t.defaultRoute=T},routeHandler:I,closeRoutes:()=>{m=!0},printRoutes:t.prettyPrint.bind(t),addConstraintStrategy:_,hasConstraintStrategy:g,isAsyncConstraint:y,findRoute:v};function _(T){return o("Cannot add constraint strategy!"),t.addConstraintStrategy(T)}function g(T){return t.hasConstraintStrategy(T)}function y(){return t.constrainer.asyncStrategiesInUse.size>0}function A({method:T,url:x,options:w,handler:D,isFastify:M}){if(typeof x!="string")throw new uMr(typeof x);if(!D&&typeof w=="function")D=w,w={};else if(D&&typeof D=="function"){if(Object.prototype.toString.call(w)!=="[object Object]")throw new lMr(T,x);if(w.handler)throw typeof w.handler=="function"?new dMr(T,x):new nWe(T,x)}return w=Object.assign({},w,{method:T,url:x,path:x,handler:D||w&&w.handler}),b.call(this,{options:w,isFastify:M})}function E({options:T}){return v(T)!==null}function v(T){let x=t.find(T.method,T.url||"",T.constraints);return x?{handler:x.handler,params:x.params,searchParams:x.searchParams}:null}function b({options:T,isFastify:x}){let w={...T},{exposeHeadRoute:D}=w,L=D!=null?D:f,U=w.method==="GET"||Array.isArray(w.method)&&w.method.includes("GET"),G=w.method==="HEAD"||Array.isArray(w.method)&&w.method.includes("HEAD"),$=L&&U?{...T}:null;o("Cannot add route!");let K=w.url||w.path||"";if(Array.isArray(w.method))for(var ee=0;ee0&&w.method!=="HEAD")switch(w.prefixTrailingSlash){case"slash":oe.call(this,{path:K,isFastify:x});break;case"no-slash":oe.call(this,{path:"",isFastify:x});break;case"both":default:oe.call(this,{path:"",isFastify:x}),u!==!0&&(l!==!0||!z.endsWith("/"))&&oe.call(this,{path:K,prefixing:!0,isFastify:x})}else K[0]==="/"&&z.endsWith("/")?oe.call(this,{path:K.slice(1),isFastify:x}):oe.call(this,{path:K,isFastify:x});return this;function oe({path:le,prefixing:te=!1,isFastify:Q=!1}){let Z=z+le;if(w.url=Z,w.path=Z,w.routePath=le,w.prefix=z,w.logLevel=w.logLevel||this[AMr],(this[sWe]||w.logSerializers)&&(w.logSerializers=Object.assign(Object.create(this[sWe]),w.logSerializers)),w.attachValidation==null&&(w.attachValidation=!1),te===!1)for(let H of this[iWe].onRoute)H.call(this,w);for(let H of eWe)if(w&&H in w){if(Array.isArray(w[H]))for(let j of w[H]){if(typeof j!="function")throw new rWe(H,Object.prototype.toString.call(j));if(H==="onSend"||H==="preSerialization"||H==="onError"||H==="preParsing"){if(j.constructor.name==="AsyncFunction"&&j.length===4)throw new xce}else if(H==="onRequestAbort"){if(j.constructor.name==="AsyncFunction"&&j.length!==1)throw new xce}else if(j.constructor.name==="AsyncFunction"&&j.length===3)throw new xce}else if(w[H]!==void 0&&typeof w[H]!="function")throw new rWe(H,Object.prototype.toString.call(w[H]))}let de=w.constraints||{},B={...w.config,url:Z,method:w.method},k=new zLr({schema:w.schema,handler:w.handler.bind(this),config:B,errorHandler:w.errorHandler,childLoggerFactory:w.childLoggerFactory,bodyLimit:w.bodyLimit,logLevel:w.logLevel,logSerializers:w.logSerializers,attachValidation:w.attachValidation,schemaErrorFormatter:w.schemaErrorFormatter,replySerializer:this[wce],validatorCompiler:w.validatorCompiler,serializerCompiler:w.serializerCompiler,exposeHeadRoute:L,prefixTrailingSlash:w.prefixTrailingSlash||"both",server:this,isFastify:Q});w.version&&(rMr(),de.version=w.version);let W=t.findRoute("HEAD",w.url,de),P=W!==null;G&&P&&!k[Oce]&&W.store[Oce]&&t.off("HEAD",w.url,de);try{t.on(w.method,w.url,{constraints:de},I,k)}catch(H){if(!k[Oce])throw H.message.includes(`Method '${w.method}' already declared for route '${w.url}'`)?new cMr(w.method,w.url):H}if(this.after((H,j)=>{k.errorHandler=w.errorHandler?bMr(this[oWe],w.errorHandler):this[oWe],k._parserOptions.limit=w.bodyLimit||null,k.logLevel=w.logLevel,k.logSerializers=w.logSerializers,k.attachValidation=w.attachValidation,k[wce]=this[wce],k.schemaErrorFormatter=w.schemaErrorFormatter||this[TMr]||k.schemaErrorFormatter,r.once("preReady",()=>{for(let q of eWe){let Y=this[iWe][q].concat(w[q]||[]).map(X=>X.bind(this));k[q]=Y.length?Y:null}for(;!k.Request[cWe]&&k.Request.parent;)k.Request=k.Request.parent;for(;!k.Reply[cWe]&&k.Reply.parent;)k.Reply=k.Reply.parent;if(n.setContext(this,k),w.schema){k.schema=ZLr(k.schema,this.initialConfig);let q=this[EMr];!w.validatorCompiler&&(w.schema.body||w.schema.headers||w.schema.querystring||w.schema.params)&&q.setupValidator(this[aWe]);try{let Y=typeof w?.validatorCompiler=="function"||q.isCustomValidatorCompiler;nMr(k,w.validatorCompiler||q.validatorCompiler,Y)}catch(Y){throw new iMr(w.method,Z,Y.message)}w.schema.response&&!w.serializerCompiler&&q.setupSerializer(this[aWe]);try{sMr(k,w.serializerCompiler||q.serializerCompiler)}catch(Y){throw new aMr(w.method,Z,Y.message)}}}),j(H)}),L&&U&&!G&&!P){let H=eMr($.onSend);A.call(this,{method:"HEAD",url:le,options:{...$,onSend:H},isFastify:!0})}else P&&D&&tMr()}}function I(T,x,w,D,M){let L=RMr(D.server,T),U={level:D.logLevel};D.logSerializers&&(U.serializers=D.logSerializers);let G=IMr(D,s,T,L,U);if(G[SMr]=c,!h(T.httpVersion)){G.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let z='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',oe={"Content-Type":"application/json","Content-Length":z.length};x.writeHead(505,oe),x.end(z);return}if(m===!0&&(T.httpVersionMajor!==2&&x.setHeader("Connection","close"),d)){let z={"Content-Type":"application/json","Content-Length":"80"};x.writeHead(503,z),x.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),G.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(T.headers.connection||"")==="keep-alive"&&p.has(T.socket)===!1&&(p.add(T.socket),T.socket.on("close",NMr.bind({keepAliveConnections:p,socket:T.socket}))),T.headers[Nce]!==void 0&&(T.headers["accept-version"]=T.headers[Nce],T.headers[Nce]=void 0);let K=new D.Request(L,w,T,M,G,D),ee=new D.Reply(x,K,G);c===!1&&G.info({req:K},"incoming request"),(i===!0||D.onResponse!==null)&&a(ee),D.onRequest!==null?XLr(D.onRequest,K,ee,fWe):fWe(null,K,ee),D.onRequestAbort!==null&&T.on("close",()=>{T.aborted&&YLr(D.onRequestAbort,K,xMr.bind(null,ee))}),D.onTimeout!==null&&(K.raw.socket._meta||K.raw.socket.on("timeout",wMr),K.raw.socket._meta={context:D,request:K,reply:ee})}}function xMr(e,t){t&&e.log.error({err:t},"onRequestAborted hook failed")}function wMr(){let{context:e,request:t,reply:r}=this._meta;WLr(e.onTimeout,t,r,OMr)}function lWe(e){if(typeof e!="string")throw new pMr;if(e=e.toUpperCase(),JLr.indexOf(e)===-1)throw new hMr(e);return e}function dWe(e,t,r){if((e==="GET"||e==="HEAD")&&r&&r.body)throw new mMr(e,t)}function hWe(e){if(e!==void 0&&(!Number.isInteger(e)||e<=0))throw new gMr(e)}function fWe(e,t,r){if(r.sent!==!0){if(e!=null){r[yMr]=!0,r.send(e);return}t[vMr]=t.raw,t[uWe].preParsing!==null?QLr(t[uWe].preParsing,t,r,ZQe):ZQe(null,t,r)}}function NMr(){this.keepAliveConnections.delete(this.socket)}function OMr(){}pWe.exports={buildRouting:CMr,validateBodyLimitOption:hWe}});var SWe=S((yKn,vWe)=>{"use strict";var DMr=Rce(),gWe=R6(),_We=V6(),PMr=j6(),{kRoutePrefix:LMr,kCanSetNotFoundHandler:yD,kFourOhFourLevelInstance:vD,kFourOhFourContext:Sh,kHooks:MMr,kErrorHandler:AWe}=Pa(),{lifecycleHooks:kMr}=K_(),{buildErrorHandler:BMr}=HO(),{FST_ERR_NOT_FOUND:UMr}=ko(),{createChildLogger:EWe}=uO(),{getGenReqId:yWe}=C5();function FMr(e){let{logger:t}=e,r=DMr({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[vD]=d,d[yD]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:h,method:p}=d.raw,m=`Route ${p}:${h} not found`;d.log.info(m),f.code(404).send({message:m,error:"Not Found",statusCode:404})}function a(){return function(f,h,p){let m=this[vD][Sh],_=yWe(m.server,h),g=EWe(m,t,h,_),y=new _We(_,null,h,null,g,m),A=new gWe(p,y,g);n(y,A)}}function o(d,f){let h=Object.assign({},d[Sh]);h.onSend=f.onSend,f[Sh]=h}function c(d,f,h,p){this[yD]===void 0&&(this[yD]=!0),this[Sh]===void 0&&(this[Sh]=null);let m=this,_=this[LMr]||"/";if(this[yD]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${_}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(m)):d.preHandler=d.preHandler.bind(m)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(m)):d.preValidation=d.preValidation.bind(m))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[vD][yD]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,y)=>{u.call(this,_,d,f,h,p),y(g)})}function u(d,f,h,p,m){let _=new PMr({schema:f.schema,handler:h,config:f.config||{},server:this});if(p.once("preReady",()=>{let g=this[Sh];for(let y of kMr){let A=this[MMr][y].concat(f[y]||[]).map(E=>E.bind(this));g[y]=A.length?A:null}g.errorHandler=f.errorHandler?BMr(this[AWe],f.errorHandler):this[AWe]}),this[Sh]!==null&&d==="/"){Object.assign(this[Sh],_);return}this[vD][Sh]=_,r.all(d+(d.endsWith("/")?"*":"/*"),m,_),r.all(d,m,_)}function l(d,f){let h=this[vD][Sh],p=yWe(h.server,d),m=EWe(h,t,d,p);m.info({req:d},"incoming request");let _=new _We(p,null,d,null,m,h),g=new gWe(f,_,m);_.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),_.log.warn(r.prettyPrint()),g.code(404).send(new UMr)}}vWe.exports=FMr});var bWe=S((vKn,G5)=>{"use strict";G5.exports=wn;G5.exports.default=wn;var TWe={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},$Mr=Object.prototype.hasOwnProperty,qMr=new RegExp("idle","u");function wn(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0;if(a===0)if(e&&typeof e=="object"&&!Array.isArray(e)){e.connectionTimeout===void 0&&(e.connectionTimeout=0),e.keepAliveTimeout===void 0&&(e.keepAliveTimeout=72e3),e.maxRequestsPerSocket===void 0&&(e.maxRequestsPerSocket=0),e.requestTimeout===void 0&&(e.requestTimeout=0),e.bodyLimit===void 0&&(e.bodyLimit=1048576),e.caseSensitive===void 0&&(e.caseSensitive=!0),e.allowUnsafeRegex===void 0&&(e.allowUnsafeRegex=!1),e.ignoreTrailingSlash===void 0&&(e.ignoreTrailingSlash=!1),e.ignoreDuplicateSlashes===void 0&&(e.ignoreDuplicateSlashes=!1),e.disableRequestLogging===void 0&&(e.disableRequestLogging=!1),e.jsonShorthand===void 0&&(e.jsonShorthand=!0),e.maxParamLength===void 0&&(e.maxParamLength=100),e.onProtoPoisoning===void 0&&(e.onProtoPoisoning="error"),e.onConstructorPoisoning===void 0&&(e.onConstructorPoisoning="error"),e.pluginTimeout===void 0&&(e.pluginTimeout=1e4),e.requestIdHeader===void 0&&(e.requestIdHeader="request-id"),e.requestIdLogLabel===void 0&&(e.requestIdLogLabel="reqId"),e.http2SessionTimeout===void 0&&(e.http2SessionTimeout=72e3),e.exposeHeadRoutes===void 0&&(e.exposeHeadRoutes=!0),e.useSemicolonDelimiter===void 0&&(e.useSemicolonDelimiter=!0);let p=a;for(let m in e)$Mr.call(TWe.properties,m)||delete e[m];if(p===a){let m=e.connectionTimeout,_=a;if(!(typeof m=="number"&&!(m%1)&&!isNaN(m)&&isFinite(m))){let g=typeof m,y;if(y===void 0)if(g==="boolean"||m===null||g==="string"&&m&&m==+m&&!(m%1))y=+m;else return wn.errors=[{instancePath:t+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;y!==void 0&&(m=y,e!==void 0&&(e.connectionTimeout=y))}var o=_===a;if(o){let g=e.keepAliveTimeout,y=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let E=typeof g,v;if(v===void 0)if(E==="boolean"||g===null||E==="string"&&g&&g==+g&&!(g%1))v=+g;else return wn.errors=[{instancePath:t+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(g=v,e!==void 0&&(e.keepAliveTimeout=v))}var o=y===a;if(o){if(e.forceCloseConnections!==void 0){let E=e.forceCloseConnections,v=a,b=a,I=!1,T=null,x=a;if(typeof E!="string"){let M=typeof E,L;if(L===void 0)if(M=="number"||M=="boolean")L=""+E;else if(E===null)L="";else{let U={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}L!==void 0&&(E=L,e!==void 0&&(e.forceCloseConnections=L))}if(a===x&&typeof E=="string"&&!qMr.test(E)){let M={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};i===null?i=[M]:i.push(M),a++}var c=x===a;c&&(I=!0,T=0);let w=a;if(typeof E!="boolean"){let M;if(M===void 0)if(E==="false"||E===0||E===null)M=!1;else if(E==="true"||E===1)M=!0;else{let L={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[L]:i.push(L),a++}M!==void 0&&(E=M,e!==void 0&&(e.forceCloseConnections=M))}var c=w===a;if(c&&I?(I=!1,T=[T,1]):c&&(I=!0,T=1),I)a=b,i!==null&&(b?i.length=b:i=null);else{let M={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:T},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,wn.errors=i,!1}var o=v===a}else var o=!0;if(o){let E=e.maxRequestsPerSocket,v=a;if(!(typeof E=="number"&&!(E%1)&&!isNaN(E)&&isFinite(E))&&E!==null){let I=typeof E,T;if(T===void 0)if(I==="boolean"||E===null||I==="string"&&E&&E==+E&&!(E%1))T=+E;else if(E===""||E===0||E===!1)T=null;else return wn.errors=[{instancePath:t+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.maxRequestsPerSocket=T))}var o=v===a;if(o){let I=e.requestTimeout,T=a;if(!(typeof I=="number"&&!(I%1)&&!isNaN(I)&&isFinite(I))){let w=typeof I,D;if(D===void 0)if(w==="boolean"||I===null||w==="string"&&I&&I==+I&&!(I%1))D=+I;else return wn.errors=[{instancePath:t+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;D!==void 0&&(I=D,e!==void 0&&(e.requestTimeout=D))}var o=T===a;if(o){let w=e.bodyLimit,D=a;if(!(typeof w=="number"&&!(w%1)&&!isNaN(w)&&isFinite(w))){let L=typeof w,U;if(U===void 0)if(L==="boolean"||w===null||L==="string"&&w&&w==+w&&!(w%1))U=+w;else return wn.errors=[{instancePath:t+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;U!==void 0&&(w=U,e!==void 0&&(e.bodyLimit=U))}var o=D===a;if(o){let L=e.caseSensitive,U=a;if(typeof L!="boolean"){let $;if($===void 0)if(L==="false"||L===0||L===null)$=!1;else if(L==="true"||L===1)$=!0;else return wn.errors=[{instancePath:t+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;$!==void 0&&(L=$,e!==void 0&&(e.caseSensitive=$))}var o=U===a;if(o){let $=e.allowUnsafeRegex,K=a;if(typeof $!="boolean"){let z;if(z===void 0)if($==="false"||$===0||$===null)z=!1;else if($==="true"||$===1)z=!0;else return wn.errors=[{instancePath:t+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;z!==void 0&&($=z,e!==void 0&&(e.allowUnsafeRegex=z))}var o=K===a;if(o){if(e.http2!==void 0){let z=e.http2,oe=a;if(typeof z!="boolean"){let te;if(te===void 0)if(z==="false"||z===0||z===null)te=!1;else if(z==="true"||z===1)te=!0;else return wn.errors=[{instancePath:t+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;te!==void 0&&(z=te,e!==void 0&&(e.http2=te))}var o=oe===a}else var o=!0;if(o){if(e.https!==void 0){let z=e.https,oe=a,le=a,te=!0,Q=a,Z=a,de=a,B=a,k=!1,W=null,P=a;if(typeof z!="boolean"){let q;if(q===void 0)if(z==="false"||z===0||z===null)q=!1;else if(z==="true"||z===1)q=!0;else{let Y={};i===null?i=[Y]:i.push(Y),a++}q!==void 0&&(z=q,e!==void 0&&(e.https=q))}var u=P===a;u&&(k=!0,W=0);let H=a;if(z!==null){let q;if(q===void 0)if(z===""||z===0||z===!1)q=null;else{let Y={};i===null?i=[Y]:i.push(Y),a++}q!==void 0&&(z=q,e!==void 0&&(e.https=q))}var u=H===a;if(u&&k)k=!1,W=[W,1];else{u&&(k=!0,W=1);let q=a;if(a===q)if(z&&typeof z=="object"&&!Array.isArray(z)){let X;if(z.allowHTTP1===void 0&&(X="allowHTTP1")){let ie={};i===null?i=[ie]:i.push(ie),a++}else{let ie=a;for(let ne in z)ne!=="allowHTTP1"&&delete z[ne];if(ie===a&&z.allowHTTP1!==void 0){let ne=z.allowHTTP1;if(typeof ne!="boolean"){let se;if(se===void 0)if(ne==="false"||ne===0||ne===null)se=!1;else if(ne==="true"||ne===1)se=!0;else{let J={};i===null?i=[J]:i.push(J),a++}se!==void 0&&(ne=se,z!==void 0&&(z.allowHTTP1=se))}}}}else{let X={};i===null?i=[X]:i.push(X),a++}var u=q===a;u&&k?(k=!1,W=[W,2]):u&&(k=!0,W=2)}if(k)a=B,i!==null&&(B?i.length=B:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=de===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Z,i!==null&&(Z?i.length=Z:i=null);var d=Q===a;if(a=le,i!==null&&(le?i.length=le:i=null),d){let q=a;e.https=!0;var d=q===a;te=d}if(!te){let q={instancePath:t+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,wn.errors=i,!1}var o=oe===a}else var o=!0;if(o){let z=e.ignoreTrailingSlash,oe=a;if(typeof z!="boolean"){let te;if(te===void 0)if(z==="false"||z===0||z===null)te=!1;else if(z==="true"||z===1)te=!0;else return wn.errors=[{instancePath:t+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;te!==void 0&&(z=te,e!==void 0&&(e.ignoreTrailingSlash=te))}var o=oe===a;if(o){let te=e.ignoreDuplicateSlashes,Q=a;if(typeof te!="boolean"){let de;if(de===void 0)if(te==="false"||te===0||te===null)de=!1;else if(te==="true"||te===1)de=!0;else return wn.errors=[{instancePath:t+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;de!==void 0&&(te=de,e!==void 0&&(e.ignoreDuplicateSlashes=de))}var o=Q===a;if(o){let de=e.disableRequestLogging,B=a;if(typeof de!="boolean"){let W;if(W===void 0)if(de==="false"||de===0||de===null)W=!1;else if(de==="true"||de===1)W=!0;else return wn.errors=[{instancePath:t+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(de=W,e!==void 0&&(e.disableRequestLogging=W))}var o=B===a;if(o){let W=e.jsonShorthand,P=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return wn.errors=[{instancePath:t+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,e!==void 0&&(e.jsonShorthand=j))}var o=P===a;if(o){let j=e.maxParamLength,q=a;if(!(typeof j=="number"&&!(j%1)&&!isNaN(j)&&isFinite(j))){let X=typeof j,ie;if(ie===void 0)if(X==="boolean"||j===null||X==="string"&&j&&j==+j&&!(j%1))ie=+j;else return wn.errors=[{instancePath:t+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ie!==void 0&&(j=ie,e!==void 0&&(e.maxParamLength=ie))}var o=q===a;if(o){let X=e.onProtoPoisoning,ie=a;if(typeof X!="string"){let se=typeof X,J;if(J===void 0)if(se=="number"||se=="boolean")J=""+X;else if(X===null)J="";else return wn.errors=[{instancePath:t+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;J!==void 0&&(X=J,e!==void 0&&(e.onProtoPoisoning=J))}var o=ie===a;if(o){let se=e.onConstructorPoisoning,J=a;if(typeof se!="string"){let ge=typeof se,be;if(be===void 0)if(ge=="number"||ge=="boolean")be=""+se;else if(se===null)be="";else return wn.errors=[{instancePath:t+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;be!==void 0&&(se=be,e!==void 0&&(e.onConstructorPoisoning=be))}var o=J===a;if(o){let ge=e.pluginTimeout,be=a;if(!(typeof ge=="number"&&!(ge%1)&&!isNaN(ge)&&isFinite(ge))){let xe=typeof ge,Fe;if(Fe===void 0)if(xe==="boolean"||ge===null||xe==="string"&&ge&&ge==+ge&&!(ge%1))Fe=+ge;else return wn.errors=[{instancePath:t+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Fe!==void 0&&(ge=Fe,e!==void 0&&(e.pluginTimeout=Fe))}var o=be===a;if(o){let xe=e.requestIdHeader,Fe=a,Ee=a,me=!1,Ae=a;if(xe!==!1){let Se={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:TWe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[Se]:i.push(Se),a++}var f=Ae===a;if(me=me||f,!me){let Se=a;if(typeof xe!="string"){let Le=typeof xe,we;if(we===void 0)if(Le=="number"||Le=="boolean")we=""+xe;else if(xe===null)we="";else{let He={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[He]:i.push(He),a++}we!==void 0&&(xe=we,e!==void 0&&(e.requestIdHeader=we))}var f=Se===a;me=me||f}if(me)a=Ee,i!==null&&(Ee?i.length=Ee:i=null);else{let Se={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[Se]:i.push(Se),a++,wn.errors=i,!1}var o=Fe===a;if(o){let Se=e.requestIdLogLabel,Ie=a;if(typeof Se!="string"){let we=typeof Se,He;if(He===void 0)if(we=="number"||we=="boolean")He=""+Se;else if(Se===null)He="";else return wn.errors=[{instancePath:t+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;He!==void 0&&(Se=He,e!==void 0&&(e.requestIdLogLabel=He))}var o=Ie===a;if(o){let we=e.http2SessionTimeout,He=a;if(!(typeof we=="number"&&!(we%1)&&!isNaN(we)&&isFinite(we))){let ke=typeof we,Qe;if(Qe===void 0)if(ke==="boolean"||we===null||ke==="string"&&we&&we==+we&&!(we%1))Qe=+we;else return wn.errors=[{instancePath:t+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Qe!==void 0&&(we=Qe,e!==void 0&&(e.http2SessionTimeout=Qe))}var o=He===a;if(o){let ke=e.exposeHeadRoutes,Qe=a;if(typeof ke!="boolean"){let ze;if(ze===void 0)if(ke==="false"||ke===0||ke===null)ze=!1;else if(ke==="true"||ke===1)ze=!0;else return wn.errors=[{instancePath:t+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ze!==void 0&&(ke=ze,e!==void 0&&(e.exposeHeadRoutes=ze))}var o=Qe===a;if(o){let ze=e.useSemicolonDelimiter,ot=a;if(typeof ze!="boolean"){let _t;if(_t===void 0)if(ze==="false"||ze===0||ze===null)_t=!1;else if(ze==="true"||ze===1)_t=!0;else return wn.errors=[{instancePath:t+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;_t!==void 0&&(ze=_t,e!==void 0&&(e.useSemicolonDelimiter=_t))}var o=ot===a;if(o){if(e.versioning!==void 0){let _t=e.versioning,mr=a;if(a===mr)if(_t&&typeof _t=="object"&&!Array.isArray(_t)){let it;if(_t.storage===void 0&&(it="storage")||_t.deriveVersion===void 0&&(it="deriveVersion"))return wn.errors=[{instancePath:t+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:it},message:"must have required property '"+it+"'"}],!1}else return wn.errors=[{instancePath:t+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=mr===a}else var o=!0;if(o)if(e.constraints!==void 0){let _t=e.constraints,mr=a;if(a===mr)if(_t&&typeof _t=="object"&&!Array.isArray(_t))for(let it in _t){let yt=_t[it],vs=a;if(a===vs)if(yt&&typeof yt=="object"&&!Array.isArray(yt)){let kn;if(yt.name===void 0&&(kn="name")||yt.storage===void 0&&(kn="storage")||yt.validate===void 0&&(kn="validate")||yt.deriveConstraint===void 0&&(kn="deriveConstraint"))return wn.errors=[{instancePath:t+"/constraints/"+it.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:kn},message:"must have required property '"+kn+"'"}],!1;if(yt.name!==void 0){let Ns=yt.name;if(typeof Ns!="string"){let qs=typeof Ns,Bn;if(Bn===void 0)if(qs=="number"||qs=="boolean")Bn=""+Ns;else if(Ns===null)Bn="";else return wn.errors=[{instancePath:t+"/constraints/"+it.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Bn!==void 0&&(Ns=Bn,yt!==void 0&&(yt.name=Bn))}}}else return wn.errors=[{instancePath:t+"/constraints/"+it.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=vs===a;if(!h)break}else return wn.errors=[{instancePath:t+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=mr===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return wn.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return wn.errors=i,a===0}G5.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var IWe=S((SKn,Y5)=>{"use strict";var z5=bWe(),HMr=LF()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:VMr}=ko();function jMr(e){let t=HMr(e);if(!z5(t)){let r=new VMr(JSON.stringify(z5.errors.map(n=>n.message)));throw r.errors=z5.errors,r}return Dce(t)}function Dce(e){let t=Object.getOwnPropertyNames(e);for(let r of t){let n=e[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(e[r]=n&&typeof n=="object"?Dce(n):n)}return Object.freeze(e)}Y5.exports=jMr;Y5.exports.defaultInitOptions=z5.defaultInitOptions;Y5.exports.utils={deepFreezeObject:Dce}});var LWe=S((TKn,PWe)=>{"use strict";var{kAvvioBoot:KMr,kChildren:RWe,kRoutePrefix:CWe,kLogLevel:xWe,kLogSerializers:Pce,kHooks:Lce,kSchemaController:GI,kContentTypeParser:wWe,kReply:NWe,kRequest:OWe,kFourOhFour:GMr,kPluginNameChain:DWe}=Pa(),zMr=R6(),YMr=V6(),QMr=sce(),WMr=Lne(),{buildHooks:XMr}=K_(),SD=lce();PWe.exports=function(t,r,n){let s=SD.registerPlugin.call(t,r),i=SD.getPluginName(r)||SD.getFuncPreview(r);if(s)return t[DWe].push(i),t;let a=Object.create(t);t[RWe].push(a),a.ready=t[KMr].bind(a),a[RWe]=[],a[NWe]=zMr.buildReply(a[NWe]),a[OWe]=YMr.buildRequest(a[OWe]),a[wWe]=WMr.helpers.buildContentTypeParser(a[wWe]),a[Lce]=XMr(a[Lce]),a[CWe]=JMr(a[CWe],n.prefix),a[xWe]=n.logLevel||a[xWe],a[GI]=QMr.buildSchemaController(t[GI]),a.getSchema=a[GI].getSchema.bind(a[GI]),a.getSchemas=a[GI].getSchemas.bind(a[GI]),a[SD.kRegisteredPlugins]=Object.create(a[SD.kRegisteredPlugins]),a[DWe]=[i],(a[Pce]||n.logSerializers)&&(a[Pce]=Object.assign(Object.create(a[Pce]),n.logSerializers)),n.prefix&&a[GMr].arrange404(a);for(let o of a[Lce].onRegister)o.call(this,a,n);return a};function JMr(e,t){return t?(e.endsWith("/")&&t[0]==="/"?t=t.slice(1):t[0]!=="/"&&(t="/"+t),e+t):e}});var kWe=S((bKn,MWe)=>{"use strict";MWe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var FWe=S(Mce=>{"use strict";Mce.parse=ikr;Mce.serialize=akr;var ZMr=Object.prototype.toString,ekr=Object.prototype.hasOwnProperty,tkr=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,rkr=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,nkr=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,skr=/^[\u0020-\u003A\u003D-\u007E]*$/;function ikr(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");var r={},n=e.length;if(n<2)return r;var s=t&&t.decode||okr,i=0,a=0,o=0;do{if(a=e.indexOf("=",i),a===-1)break;if(o=e.indexOf(";",i),o===-1)o=n;else if(a>o){i=e.lastIndexOf(";",a-1)+1;continue}var c=BWe(e,i,a),u=UWe(e,a,c),l=e.slice(c,u);if(!ekr.call(r,l)){var d=BWe(e,a+1,o),f=UWe(e,o,d);e.charCodeAt(d)===34&&e.charCodeAt(f-1)===34&&(d++,f--);var h=e.slice(d,f);r[l]=ukr(h,s)}i=o+1}while(ir;){var n=e.charCodeAt(--t);if(n!==32&&n!==9)return t+1}return r}function akr(e,t,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!tkr.test(e))throw new TypeError("argument name is invalid");var s=n(t);if(!rkr.test(s))throw new TypeError("argument val is invalid");var i=e+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!nkr.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!skr.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!ckr(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function okr(e){return e.indexOf("%")!==-1?decodeURIComponent(e):e}function ckr(e){return ZMr.call(e)==="[object Date]"}function ukr(e,t){try{return t(e)}catch{return e}}});var HWe=S((RKn,qWe)=>{"use strict";var{URL:$We}=require("node:url"),kce="http://localhost";qWe.exports=function(t,r){(typeof t=="string"||Object.prototype.toString.call(t)==="[object String]")&&t.startsWith("//")&&(t=kce+t);let n=typeof t=="object"?Object.assign(new $We(kce),t):new $We(t,kce);if(typeof r=="string"){r=new URLSearchParams(r);for(let s of r.keys()){n.searchParams.delete(s);for(let i of r.getAll(s))n.searchParams.append(s,i)}}else{let s=Object.assign({},t.query,r);for(let i in s){let a=s[i];if(Array.isArray(a)){n.searchParams.delete(i);for(let o of a)n.searchParams.append(i,o)}else n.searchParams.set(i,a)}}return n}});var VWe=S((CKn,Bce)=>{"use strict";var{randomUUID:lkr}=require("node:crypto"),{Readable:dkr}=require("node:stream"),zI;function fkr(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function hkr(e){zI=zI??new TextEncoder;let t=`----formdata-${lkr()}`,r=`--${t}\r -Content-Disposition: form-data`;let n=c=>c.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),s=c=>c.replace(/\r?\n|\r/g,`\r -`),i=new Uint8Array([13,10]);async function*a(){for(let[c,u]of e)if(typeof u=="string")yield zI.encode(`${r}; name="${n(s(c))}"\r -\r -`),yield zI.encode(`${s(u)}\r -`);else{let l=`${r}; name="${n(s(c))}"`;u.name&&(l+=`; filename="${n(u.name)}"`),l+=`\r -Content-Type: ${u.type||"application/octet-stream"}\r -\r -`,yield zI.encode(l),u.stream?yield*u.stream():yield u,yield i}yield zI.encode(`--${t}--`)}return{stream:dkr.from(a()),contentType:`multipart/form-data; boundary=${t}`}}Bce.exports.isFormDataLike=fkr;Bce.exports.formDataToStream=hkr});var GWe=S((xKn,Q5)=>{"use strict";var{Readable:jWe,addAbortSignal:pkr}=require("node:stream"),Fce=require("node:util"),mkr=FWe(),gkr=require("node:assert"),{createDeprecation:_kr}=NZ(),Akr=HWe(),{isFormDataLike:Ekr,formDataToStream:ykr}=VWe(),{EventEmitter:vkr}=require("node:events"),Skr=_kr({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function Tkr(e){return e.port?e.host:e.hostname+(e.protocol==="https:"?":443":":80")}var Uce=class extends vkr{constructor(t){super(),this.remoteAddress=t}};function KWe(e){return new t(this);function t(r){Th.call(r,{...e,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(Th.prototype))this.constructor.prototype[n]=Th.prototype[n];return Fce.inherits(this.constructor,e.Request),this}}function Th(e){jWe.call(this,{autoDestroy:!1});let t=Akr(e.url||e.path,e.query);this.url=t.pathname+t.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=e.method?e.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=e.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let c=r[a];gkr(c!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+c}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||e.authority||Tkr(t),e.cookies){let{cookies:a}=e,o=Object.keys(a).map(c=>mkr.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new Uce(e.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return Skr(),this.socket},configurable:!0});let n=e.payload||e.body||null,s=n&&typeof n.resume=="function";if(Ekr(n)){let a=ykr(n);n=a.stream,s=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!s&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!s&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:e.simulate||{}};let i=e.signal;return i&&pkr(i,this),this}Fce.inherits(Th,jWe);Fce.inherits(KWe,Th);Th.prototype.prepare=function(e){let t=this._lightMyRequest.payload;if(!t||typeof t.resume!="function")return e();let r=[];t.on("data",n=>r.push(Buffer.from(n))),t.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,e()}),t.resume()};Th.prototype._read=function(e){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};Th.prototype.destroy=function(e){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,e&&(this._error=!0,process.nextTick(()=>this.emit("error",e))),process.nextTick(()=>this.emit("close")))};Q5.exports=Th;Q5.exports.Request=Th;Q5.exports.CustomRequest=KWe});var YWe=S((wKn,TD)=>{"use strict";var W5={decodeValues:!0,map:!1,silent:!1};function $ce(e){return typeof e!="string"||e in{}}function qce(){return Object.create(null)}function Hce(e){return typeof e=="string"&&!!e.trim()}function Vce(e,t){var r=e.split(";").filter(Hce),n=r.shift(),s=bkr(n),i=s.name,a=s.value;if(t=t?Object.assign({},W5,t):W5,$ce(i))return null;try{a=t.decodeValues?decodeURIComponent(a):a}catch(c){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",c)}var o=qce();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!$ce(l)){var d=u.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function bkr(e){var t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}function zWe(e,t){if(t=t?Object.assign({},W5,t):W5,!e)return t.map?qce():[];if(e.headers)if(typeof e.headers.getSetCookie=="function")e=e.headers.getSetCookie();else if(e.headers["set-cookie"])e=e.headers["set-cookie"];else{var r=e.headers[Object.keys(e.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&e.headers.cookie&&!t.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),e=r}if(Array.isArray(e)||(e=[e]),t.map){var n=qce();return e.filter(Hce).reduce(function(s,i){var a=Vce(i,t);return a&&!$ce(a.name)&&(s[a.name]=a),s},n)}else return e.filter(Hce).map(function(s){return Vce(s,t)}).filter(Boolean)}function Ikr(e){if(Array.isArray(e))return e;if(typeof e!="string")return[];var t=[],r=0,n,s,i,a,o;function c(){for(;r=e.length)&&t.push(e.substring(n,e.length))}return t}TD.exports=zWe;TD.exports.parse=zWe;TD.exports.parseString=Vce;TD.exports.splitCookiesString=Ikr});var XWe=S((NKn,WWe)=>{"use strict";var bD=require("node:http"),{Writable:Rkr,Readable:Ckr}=require("node:stream"),xkr=require("node:util"),wkr=YWe();function CA(e,t,r){bD.ServerResponse.call(this,e),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(Okr()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>t(a));process.nextTick(()=>t(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>t(a,null))}};this.once("finish",()=>{let a=Nkr(this);a.raw.req=e,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}xkr.inherits(CA,bD.ServerResponse);CA.prototype.setTimeout=function(e,t){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},e),this.on("timeout",t),this};CA.prototype.writeHead=function(){let e=bD.ServerResponse.prototype.writeHead.apply(this,arguments);return QWe(this),e};CA.prototype.write=function(e,t,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),bD.ServerResponse.prototype.write.call(this,e,t,r),this._lightMyRequest.payloadChunks.push(Buffer.from(e,t)),!0};CA.prototype.end=function(e,t,r){e&&this.write(e,t),bD.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};CA.prototype.destroy=function(e){this.destroyed||(this.destroyed=!0,e&&process.nextTick(()=>this.emit("error",e)),process.nextTick(()=>this.emit("close")))};CA.prototype.addTrailers=function(e){for(let t in e)this._lightMyRequest.trailers[t.toLowerCase().trim()]=e[t].toString().trim()};function Nkr(e){e._lightMyRequest.headers===null&&QWe(e),Dkr(e);let t={raw:{res:e},headers:e._lightMyRequest.headers,statusCode:e.statusCode,statusMessage:e.statusMessage,trailers:{},get cookies(){return wkr.parse(this)}},r=Buffer.concat(e._lightMyRequest.payloadChunks);return t.rawPayload=r,t.payload=r.toString(),t.body=t.payload,t.trailers=e._lightMyRequest.trailers,t.json=function(){return JSON.parse(t.payload)},t.stream=function(){return Ckr.from(e._lightMyRequest.payloadChunks)},t}function Okr(){return new Rkr({write(e,t,r){setImmediate(r)}})}function Dkr(e){let t=e._lightMyRequest.headers;for(let r of Object.keys(t)){let n=t[r];Array.isArray(n)?t[r]=n.map(s=>""+s):t[r]=""+n}}function QWe(e){e._lightMyRequest.headers=Object.assign({},e.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(t=>{let r=new RegExp("\\r\\n"+t+": ([^\\r]*)\\r\\n"),n=e._header.match(r);n&&(e._lightMyRequest.headers[t.toLowerCase()]=n[1])})}WWe.exports=CA});var JWe=S((OKn,jce)=>{"use strict";jce.exports=ra;jce.exports.default=ra;var Pkr={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function ra(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(e&&typeof e=="object"&&!Array.isArray(e)){let E;if(e.url===void 0&&(E="url")){let v={instancePath:t,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:E},message:"must have required property '"+E+"'"};i===null?i=[v]:i.push(v),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(e&&typeof e=="object"&&!Array.isArray(e)){let E;if(e.path===void 0&&(E="path")){let v={instancePath:t,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:E},message:"must have required property '"+E+"'"};i===null?i=[v]:i.push(v),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let E={instancePath:t,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[E]:i.push(E),a++,ra.errors=i,!1}if(a===0)if(e&&typeof e=="object"&&!Array.isArray(e)){if(e.url!==void 0){let E=e.url,v=a,b=a,I=!1,T=null,x=a;if(typeof E!="string"){let D=typeof E,M;if(M===void 0)if(D=="number"||D=="boolean")M=""+E;else if(E===null)M="";else{let L={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}M!==void 0&&(E=M,e!==void 0&&(e.url=M))}var p=x===a;p&&(I=!0,T=0);let w=a;if(a===w)if(E&&typeof E=="object"&&!Array.isArray(E)){let D;if(E.pathname===void 0&&(D="pathname")){let M={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:D},message:"must have required property '"+D+"'"};i===null?i=[M]:i.push(M),a++}else{if(E.protocol!==void 0){let M=E.protocol,L=a;if(typeof M!="string"){let U=typeof M,G;if(G===void 0)if(U=="number"||U=="boolean")G=""+M;else if(M===null)G="";else{let $={instancePath:t+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[$]:i.push($),a++}G!==void 0&&(M=G,E!==void 0&&(E.protocol=G))}var h=L===a}else var h=!0;if(h){if(E.hostname!==void 0){let M=E.hostname,L=a;if(typeof M!="string"){let G=typeof M,$;if($===void 0)if(G=="number"||G=="boolean")$=""+M;else if(M===null)$="";else{let K={instancePath:t+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}$!==void 0&&(M=$,E!==void 0&&(E.hostname=$))}var h=L===a}else var h=!0;if(h)if(E.pathname!==void 0){let M=E.pathname,L=a;if(typeof M!="string"){let G=typeof M,$;if($===void 0)if(G=="number"||G=="boolean")$=""+M;else if(M===null)$="";else{let K={instancePath:t+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}$!==void 0&&(M=$,E!==void 0&&(E.pathname=$))}var h=L===a}else var h=!0}}}else{let D={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[D]:i.push(D),a++}var p=w===a;if(p&&I?(I=!1,T=[T,1]):p&&(I=!0,T=1),I)a=b,i!==null&&(b?i.length=b:i=null);else{let D={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:T},message:"must match exactly one schema in oneOf"};return i===null?i=[D]:i.push(D),a++,ra.errors=i,!1}var m=v===a}else var m=!0;if(m){if(e.path!==void 0){let E=e.path,v=a,b=a,I=!1,T=null,x=a;if(typeof E!="string"){let M=typeof E,L;if(L===void 0)if(M=="number"||M=="boolean")L=""+E;else if(E===null)L="";else{let U={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}L!==void 0&&(E=L,e!==void 0&&(e.path=L))}var g=x===a;g&&(I=!0,T=0);let w=a;if(a===w)if(E&&typeof E=="object"&&!Array.isArray(E)){let M;if(E.pathname===void 0&&(M="pathname")){let L={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[L]:i.push(L),a++}else{if(E.protocol!==void 0){let L=E.protocol,U=a;if(typeof L!="string"){let G=typeof L,$;if($===void 0)if(G=="number"||G=="boolean")$=""+L;else if(L===null)$="";else{let K={instancePath:t+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}$!==void 0&&(L=$,E!==void 0&&(E.protocol=$))}var _=U===a}else var _=!0;if(_){if(E.hostname!==void 0){let L=E.hostname,U=a;if(typeof L!="string"){let $=typeof L,K;if(K===void 0)if($=="number"||$=="boolean")K=""+L;else if(L===null)K="";else{let ee={instancePath:t+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[ee]:i.push(ee),a++}K!==void 0&&(L=K,E!==void 0&&(E.hostname=K))}var _=U===a}else var _=!0;if(_)if(E.pathname!==void 0){let L=E.pathname,U=a;if(typeof L!="string"){let $=typeof L,K;if(K===void 0)if($=="number"||$=="boolean")K=""+L;else if(L===null)K="";else{let ee={instancePath:t+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[ee]:i.push(ee),a++}K!==void 0&&(L=K,E!==void 0&&(E.pathname=K))}var _=U===a}else var _=!0}}}else{let M={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var g=w===a;if(g&&I?(I=!1,T=[T,1]):g&&(I=!0,T=1),I)a=b,i!==null&&(b?i.length=b:i=null);else{let M={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:T},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,ra.errors=i,!1}var m=v===a}else var m=!0;if(m){if(e.cookies!==void 0){let E=e.cookies,v=a;if(a===v&&!(E&&typeof E=="object"&&!Array.isArray(E)))return ra.errors=[{instancePath:t+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=v===a}else var m=!0;if(m){if(e.headers!==void 0){let E=e.headers,v=a;if(a===v&&!(E&&typeof E=="object"&&!Array.isArray(E)))return ra.errors=[{instancePath:t+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=v===a}else var m=!0;if(m){if(e.query!==void 0){let E=e.query,v=a,b=a,I=!1,T=a;if(a===T&&!(E&&typeof E=="object"&&!Array.isArray(E))){let w={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[w]:i.push(w),a++}var y=T===a;if(I=I||y,!I){let w=a;if(typeof E!="string"){let M=typeof E,L;if(L===void 0)if(M=="number"||M=="boolean")L=""+E;else if(E===null)L="";else{let U={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}L!==void 0&&(E=L,e!==void 0&&(e.query=L))}var y=w===a;I=I||y}if(I)a=b,i!==null&&(b?i.length=b:i=null);else{let w={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[w]:i.push(w),a++,ra.errors=i,!1}var m=v===a}else var m=!0;if(m){if(e.simulate!==void 0){let E=e.simulate,v=a;if(a===v)if(E&&typeof E=="object"&&!Array.isArray(E)){if(E.end!==void 0){let I=E.end,T=a;if(typeof I!="boolean"){let x;if(x===void 0)if(I==="false"||I===0||I===null)x=!1;else if(I==="true"||I===1)x=!0;else return ra.errors=[{instancePath:t+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;x!==void 0&&(I=x,E!==void 0&&(E.end=x))}var A=T===a}else var A=!0;if(A){if(E.split!==void 0){let I=E.split,T=a;if(typeof I!="boolean"){let w;if(w===void 0)if(I==="false"||I===0||I===null)w=!1;else if(I==="true"||I===1)w=!0;else return ra.errors=[{instancePath:t+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;w!==void 0&&(I=w,E!==void 0&&(E.split=w))}var A=T===a}else var A=!0;if(A){if(E.error!==void 0){let I=E.error,T=a;if(typeof I!="boolean"){let w;if(w===void 0)if(I==="false"||I===0||I===null)w=!1;else if(I==="true"||I===1)w=!0;else return ra.errors=[{instancePath:t+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;w!==void 0&&(I=w,E!==void 0&&(E.error=w))}var A=T===a}else var A=!0;if(A)if(E.close!==void 0){let I=E.close,T=a;if(typeof I!="boolean"){let w;if(w===void 0)if(I==="false"||I===0||I===null)w=!1;else if(I==="true"||I===1)w=!0;else return ra.errors=[{instancePath:t+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;w!==void 0&&(I=w,E!==void 0&&(E.close=w))}var A=T===a}else var A=!0}}}else return ra.errors=[{instancePath:t+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=v===a}else var m=!0;if(m){if(e.authority!==void 0){let E=e.authority,v=a;if(typeof E!="string"){let I=typeof E,T;if(T===void 0)if(I=="number"||I=="boolean")T=""+E;else if(E===null)T="";else return ra.errors=[{instancePath:t+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.authority=T))}var m=v===a}else var m=!0;if(m){if(e.remoteAddress!==void 0){let E=e.remoteAddress,v=a;if(typeof E!="string"){let I=typeof E,T;if(T===void 0)if(I=="number"||I=="boolean")T=""+E;else if(E===null)T="";else return ra.errors=[{instancePath:t+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.remoteAddress=T))}var m=v===a}else var m=!0;if(m){if(e.method!==void 0){let E=e.method,v=a;if(typeof E!="string"){let I=typeof E,T;if(T===void 0)if(I=="number"||I=="boolean")T=""+E;else if(E===null)T="";else return ra.errors=[{instancePath:t+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.method=T))}if(!(E==="ACL"||E==="BIND"||E==="CHECKOUT"||E==="CONNECT"||E==="COPY"||E==="DELETE"||E==="GET"||E==="HEAD"||E==="LINK"||E==="LOCK"||E==="M-SEARCH"||E==="MERGE"||E==="MKACTIVITY"||E==="MKCALENDAR"||E==="MKCOL"||E==="MOVE"||E==="NOTIFY"||E==="OPTIONS"||E==="PATCH"||E==="POST"||E==="PROPFIND"||E==="PROPPATCH"||E==="PURGE"||E==="PUT"||E==="REBIND"||E==="REPORT"||E==="SEARCH"||E==="SOURCE"||E==="SUBSCRIBE"||E==="TRACE"||E==="UNBIND"||E==="UNLINK"||E==="UNLOCK"||E==="UNSUBSCRIBE"||E==="acl"||E==="bind"||E==="checkout"||E==="connect"||E==="copy"||E==="delete"||E==="get"||E==="head"||E==="link"||E==="lock"||E==="m-search"||E==="merge"||E==="mkactivity"||E==="mkcalendar"||E==="mkcol"||E==="move"||E==="notify"||E==="options"||E==="patch"||E==="post"||E==="propfind"||E==="proppatch"||E==="purge"||E==="put"||E==="rebind"||E==="report"||E==="search"||E==="source"||E==="subscribe"||E==="trace"||E==="unbind"||E==="unlink"||E==="unlock"||E==="unsubscribe"))return ra.errors=[{instancePath:t+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:Pkr.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var m=v===a}else var m=!0;if(m)if(e.validate!==void 0){let E=e.validate,v=a;if(typeof E!="boolean"){let I;if(I===void 0)if(E==="false"||E===0||E===null)I=!1;else if(E==="true"||E===1)I=!0;else return ra.errors=[{instancePath:t+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;I!==void 0&&(E=I,e!==void 0&&(e.validate=I))}var m=v===a}else var m=!0}}}}}}}}}else return ra.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return ra.errors=i,a===0}});var tXe=S((DKn,RD)=>{"use strict";var Lkr=require("node:assert"),Kce=GWe(),X5=XWe(),Z5="The dispatch function has already been invoked",ZWe=JWe();function Gce(e,t,r){return r===void 0?new ID(e,t):J5(e,t,r)}function eXe(e,t,r,n){return r.once("error",function(s){this.destroyed&&n.destroy(s)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>e.call(t,r,n))}function J5(e,t,r){if(t=typeof t=="string"?{url:t}:t,t.validate!==!1&&(Lkr(typeof e=="function","dispatchFunc should be a function"),!ZWe(t)))throw new Error(ZWe.errors.map(a=>a.message));let n=t.server||{},s=t.Request?Kce.CustomRequest:Kce;if(e.request&&e.request.app===e&&(Object.setPrototypeOf(Object.getPrototypeOf(e.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(e.response),X5.prototype)),typeof r=="function"){let i=new s(t),a=new X5(i,r);return eXe(e,n,i,a)}else return new Promise((i,a)=>{let o=new s(t),c=new X5(o,i,a);eXe(e,n,o,c)})}function ID(e,t){typeof t=="string"?this.option={url:t}:this.option=Object.assign({},t),this.dispatch=e,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var Mkr=["delete","get","head","options","patch","post","put","trace"];Mkr.forEach(e=>{ID.prototype[e]=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(Z5);return this.option.url=t,this.option.method=e.toUpperCase(),this}});var kkr=["body","cookies","headers","payload","query"];kkr.forEach(e=>{ID.prototype[e]=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(Z5);return this.option[e]=t,this}});ID.prototype.end=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(Z5);if(this._hasInvoked=!0,typeof e=="function")J5(this.dispatch,this.option,e);else return this._promise=J5(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(e=>{e!=="constructor"&&(ID.prototype[e]=function(...t){if(!this._promise){if(this._hasInvoked===!0)throw new Error(Z5);this._hasInvoked=!0,this._promise=J5(this.dispatch,this.option)}return this._promise[e](...t)})});function Bkr(e){return e instanceof Kce||e instanceof X5||e&&e.constructor&&e.constructor.name==="_CustomLMRRequest"}RD.exports=Gce;RD.exports.default=Gce;RD.exports.inject=Gce;RD.exports.isInjection=Bkr});var gXe=S((PKn,n$)=>{"use strict";var Ukr="4.26.0",Fkr=P3e(),zce=require("node:http"),CD,{kAvvioBoot:xD,kChildren:Yce,kServerBindings:rXe,kBodyLimit:$kr,kRoutePrefix:nXe,kLogLevel:qkr,kLogSerializers:Hkr,kHooks:Qce,kSchemaController:xA,kRequestAcceptVersion:Vkr,kReplySerializerDefault:sXe,kContentTypeParser:jkr,kReply:Kkr,kRequest:Gkr,kFourOhFour:zkr,kState:Hi,kOptions:Wce,kPluginNameChain:wD,kSchemaErrorFormatter:Xce,kErrorHandler:e$,kKeepAliveConnections:Jce,kChildLoggerFactory:Zce,kGenReqId:eue}=Pa(),{createServer:Ykr,compileValidateHTTPVersion:Qkr}=rUe(),ND=R6(),t$=V6(),Wkr=j6(),{supportedMethods:Xkr}=Ene(),YI=bne(),Kv=Lne(),iXe=sce(),{Hooks:Jkr,hookRunnerApplication:aXe,supportedHooks:tue}=K_(),{createLogger:Zkr,createChildLogger:oXe,defaultChildLoggerFactory:e4r}=uO(),cXe=lce(),{getGenReqId:uXe,reqIdGenFactory:lXe}=C5(),{buildRouting:t4r,validateBodyLimitOption:r4r}=mWe(),n4r=SWe(),mXe=IWe(),s4r=LWe(),{FSTDEP009:i4r}=Xp(),a4r=kWe(),{appendStackTrace:o4r,AVVIO_ERRORS_MAP:dXe,...Gv}=ko(),{defaultInitOptions:Du}=mXe,{FST_ERR_ASYNC_CONSTRAINT:c4r,FST_ERR_BAD_URL:u4r,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:l4r,FST_ERR_OPTIONS_NOT_OBJ:d4r,FST_ERR_QSP_NOT_FN:f4r,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:h4r,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:p4r,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:m4r,FST_ERR_VERSION_CONSTRAINT_NOT_STR:g4r,FST_ERR_INSTANCE_ALREADY_LISTENING:_4r,FST_ERR_REOPENED_CLOSE_SERVER:A4r,FST_ERR_ROUTE_REWRITE_NOT_STR:E4r,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:fXe}=Gv,{buildErrorHandler:hXe}=HO();function y4r(e){let t={};return["errorHandler","logLevel","logSerializers"].concat(tue).forEach(n=>{t[n]=e.store[n]}),Object.assign({},t)}function r$(e){if(e=e||{},typeof e!="object")throw new d4r;if(e.querystringParser&&typeof e.querystringParser!="function")throw new f4r(typeof e.querystringParser);if(e.schemaController&&e.schemaController.bucket&&typeof e.schemaController.bucket!="function")throw new h4r(typeof e.schemaController.bucket);r4r(e.bodyLimit);let t=e.requestIdHeader===!1?!1:(e.requestIdHeader||Du.requestIdHeader).toLowerCase(),r=lXe(t,e.genReqId),n=e.requestIdLogLabel||"reqId",s=e.bodyLimit||Du.bodyLimit,i=e.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},e.ajv),o=e.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new p4r(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new m4r(typeof a.plugins);let{logger:c,hasLogger:u}=Zkr(e);e.connectionTimeout=e.connectionTimeout||Du.connectionTimeout,e.keepAliveTimeout=e.keepAliveTimeout||Du.keepAliveTimeout,e.maxRequestsPerSocket=e.maxRequestsPerSocket||Du.maxRequestsPerSocket,e.requestTimeout=e.requestTimeout||Du.requestTimeout,e.logger=c,e.requestIdHeader=t,e.requestIdLogLabel=n,e.disableRequestLogging=i,e.ajv=a,e.clientErrorHandler=e.clientErrorHandler||K;let l=mXe(e);e.exposeHeadRoutes=l.exposeHeadRoutes;let d=e.constraints;e.versioning&&(i4r(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:e.versioning.storage,deriveConstraint:e.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new g4r}}});let f=t4r({config:{defaultRoute:ee,onBadUrl:z,constraints:d,ignoreTrailingSlash:e.ignoreTrailingSlash||Du.ignoreTrailingSlash,ignoreDuplicateSlashes:e.ignoreDuplicateSlashes||Du.ignoreDuplicateSlashes,maxParamLength:e.maxParamLength||Du.maxParamLength,caseSensitive:e.caseSensitive,allowUnsafeRegex:e.allowUnsafeRegex||Du.allowUnsafeRegex,buildPrettyMeta:y4r,querystringParser:e.querystringParser,useSemicolonDelimiter:e.useSemicolonDelimiter??Du.useSemicolonDelimiter}}),h=n4r(e),p=H(f,e);e.http2SessionTimeout=l.http2SessionTimeout;let{server:m,listen:_}=Ykr(e,p),g=typeof m.closeAllConnections=="function",y=typeof m.closeIdleConnections=="function",A=e.forceCloseConnections;if(A==="idle"&&!y)throw new l4r;typeof A!="boolean"&&(A=y?"idle":!1);let E=!g&&A===!0?new Set:a4r(),v=ND.setupResponseListeners,b=iXe.buildSchemaController(null,e.schemaController),I={[Hi]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[Jce]:E,[Wce]:e,[Yce]:[],[rXe]:[],[$kr]:s,[nXe]:"",[qkr]:"",[Hkr]:null,[Qce]:new Jkr,[xA]:b,[Xce]:null,[e$]:hXe(),[Zce]:e4r,[sXe]:null,[jkr]:new Kv(s,e.onProtoPoisoning||Du.onProtoPoisoning,e.onConstructorPoisoning||Du.onConstructorPoisoning),[Kkr]:ND.buildReply(ND),[Gkr]:t$.buildRequest(t$,e.trustProxy),[zkr]:h,[cXe.kRegisteredPlugins]:[],[wD]:["fastify"],[xD]:null,[eue]:r,routing:p,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(Y,X,ie){return f.prepareRoute.call(this,{method:"DELETE",url:Y,options:X,handler:ie})},get:function(Y,X,ie){return f.prepareRoute.call(this,{method:"GET",url:Y,options:X,handler:ie})},head:function(Y,X,ie){return f.prepareRoute.call(this,{method:"HEAD",url:Y,options:X,handler:ie})},patch:function(Y,X,ie){return f.prepareRoute.call(this,{method:"PATCH",url:Y,options:X,handler:ie})},post:function(Y,X,ie){return f.prepareRoute.call(this,{method:"POST",url:Y,options:X,handler:ie})},put:function(Y,X,ie){return f.prepareRoute.call(this,{method:"PUT",url:Y,options:X,handler:ie})},options:function(Y,X,ie){return f.prepareRoute.call(this,{method:"OPTIONS",url:Y,options:X,handler:ie})},all:function(Y,X,ie){return f.prepareRoute.call(this,{method:Xkr,url:Y,options:X,handler:ie})},route:function(Y){return f.route.call(this,{options:Y})},hasRoute:function(Y){return f.hasRoute.call(this,{options:Y})},findRoute:function(Y){return f.findRoute(Y)},log:c,withTypeProvider:U,addHook:G,addSchema:$,getSchema:b.getSchema.bind(b),getSchemas:b.getSchemas.bind(b),setValidatorCompiler:te,setSerializerCompiler:Z,setSchemaController:de,setReplySerializer:B,setSchemaErrorFormatter:Q,setGenReqId:j,addContentTypeParser:Kv.helpers.addContentTypeParser,hasContentTypeParser:Kv.helpers.hasContentTypeParser,getDefaultJsonParser:Kv.defaultParsers.getDefaultJsonParser,defaultTextParser:Kv.defaultParsers.defaultTextParser,removeContentTypeParser:Kv.helpers.removeContentTypeParser,removeAllContentTypeParsers:Kv.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[cXe.kRegisteredPlugins].includes(q)||this[wD].includes(q)},listen:_,server:m,addresses:function(){let q=this[rXe].map(Y=>Y.address());return q.push(this.server.address()),q.filter(Y=>Y)},decorate:YI.add,hasDecorator:YI.exist,decorateReply:YI.decorateReply,decorateRequest:YI.decorateRequest,hasRequestDecorator:YI.existRequest,hasReplyDecorator:YI.existReply,inject:M,printRoutes:P,setNotFoundHandler:le,setErrorHandler:k,setChildLoggerFactory:W,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(I,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let Y=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[Wce].https?"https":"http"}://${Y}:${q.port}`}},pluginName:{configurable:!0,get(){return this[wD].length>1?this[wD].join(" -> "):this[wD][0]}},prefix:{configurable:!0,get(){return this[nXe]}},validatorCompiler:{configurable:!0,get(){return this[xA].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[xA].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[Zce]}},version:{configurable:!0,get(){return Ukr}},errorHandler:{configurable:!0,get(){return this[e$].func}},genReqId:{configurable:!0,get(){return this[eue]}}}),e.schemaErrorFormatter&&(pXe(e.schemaErrorFormatter),I[Xce]=e.schemaErrorFormatter.bind(I));let T=Number(e.pluginTimeout),x=Fkr(I,{autostart:!1,timeout:isNaN(T)===!1?T:Du.pluginTimeout,expose:{use:"register"}});x.override=s4r,x.on("start",()=>I[Hi].started=!0),I[xD]=I.ready,I.ready=L,I.printPlugins=x.prettyPrint.bind(x),x.once("preReady",()=>{I.onClose((q,Y)=>{I[Hi].closing=!0,f.closeRoutes(),aXe("preClose",I[xD],I,function(){if(I[Hi].listening){if(A==="idle")q.server.closeIdleConnections();else if(g&&A)q.server.closeAllConnections();else if(A===!0)for(let X of I[Jce])X.destroy(),I[Jce].delete(X)}!e.serverFactory||I[Hi].listening?q.server.close(function(X){X&&X.code!=="ERR_SERVER_NOT_RUNNING"?Y(null):Y()}):process.nextTick(Y,null)})})});let w=new Wkr({server:I,config:{}});I.setNotFoundHandler(),h.arrange404(I),f.setup(e,{avvio:x,fourOhFour:h,logger:c,hasLogger:u,setupResponseListeners:v,throwIfAlreadyStarted:D,validateHTTPVersion:Qkr(e),keepAliveConnections:E}),m.on("clientError",e.clientErrorHandler.bind(I));try{let Y=require("node:diagnostics_channel").channel("fastify.initialization");Y.hasSubscribers&&Y.publish({fastify:I})}catch{}return"asyncDispose"in Symbol&&(I[Symbol.asyncDispose]=function(){return I.close()}),I;function D(q){if(I[Hi].started)throw new _4r(q)}function M(q,Y){if(CD===void 0&&(CD=tXe()),I[Hi].started){if(I[Hi].closing){let X=new A4r;if(Y){Y(X);return}else return Promise.reject(X)}return CD(p,q,Y)}if(Y)this.ready(X=>{X?Y(X,null):CD(p,q,Y)});else return CD((X,ie)=>{this.ready(function(ne){if(ne){ie.emit("error",ne);return}p(X,ie)})},q)}function L(q){if(this[Hi].readyPromise!==null){if(q!=null){this[Hi].readyPromise.then(()=>q(null,I),q);return}return this[Hi].readyPromise}let Y,X;if(process.nextTick(ie),this[Hi].readyPromise=new Promise(function(se,J){Y=se,X=J}),q)this[Hi].readyPromise.then(()=>q(null,I),q);else return this[Hi].readyPromise;function ie(){I[xD]((se,J)=>{se||I[Hi].started||I[Hi].ready||I[Hi].booting?ne(se):(I[Hi].booting=!0,aXe("onReady",I[xD],I,ne)),J()})}function ne(se){if(se=se!=null&&dXe[se.code]!=null?o4r(se,new dXe[se.code](se.message)):se,se)return X(se);Y(I),I[Hi].booting=!1,I[Hi].ready=!0,I[Hi].promise=null}}function U(){return this}function G(q,Y){if(D('Cannot call "addHook"!'),Y==null)throw new Gv.FST_ERR_HOOK_INVALID_HANDLER(q,Y);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(Y.constructor.name==="AsyncFunction"&&Y.length===4)throw new Gv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(Y.constructor.name==="AsyncFunction"&&Y.length!==0)throw new Gv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(Y.constructor.name==="AsyncFunction"&&Y.length!==1)throw new Gv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(Y.constructor.name==="AsyncFunction"&&Y.length===3)throw new Gv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(Y):q==="onReady"||q==="onListen"||q==="onRoute"?this[Qce].add(q,Y):this.after((ie,ne)=>{X.call(this,q,Y),ne(ie)}),this;function X(ie,ne){this[Qce].add(ie,ne),this[Yce].forEach(se=>X.call(se,ie,ne))}}function $(q){return D('Cannot call "addSchema"!'),this[xA].add(q),this[Yce].forEach(Y=>Y.addSchema(q)),this}function K(q,Y){if(q.code==="ECONNRESET"||Y.destroyed)return;let X,ie,ne,se;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ie="408",ne=zce.STATUS_CODES[ie],X=`{"error":"${ne}","message":"Client Timeout","statusCode":408}`,se="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ie="431",ne=zce.STATUS_CODES[ie],X=`{"error":"${ne}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,se="header_overflow"):(ie="400",ne=zce.STATUS_CODES[ie],X=`{"error":"${ne}","message":"Client Error","statusCode":400}`,se="error"),this.log.trace({err:q},`client ${se}`),Y.writable&&Y.write(`HTTP/1.1 ${ie} ${ne}\r -Content-Length: ${X.length}\r -Content-Type: application/json\r -\r -${X}`),Y.destroy(q)}function ee(q,Y){q.headers["accept-version"]!==void 0&&(q.headers[Vkr]=q.headers["accept-version"],q.headers["accept-version"]=void 0),h.router.lookup(q,Y)}function z(q,Y,X){if(o){let ne=uXe(w.server,Y),se=oXe(w,c,Y,ne),J=new t$(ne,null,Y,null,se,w),ce=new ND(X,J,se);return i===!1&&se.info({req:J},"incoming request"),o(new u4r(q),J,ce)}let ie=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;X.writeHead(400,{"Content-Type":"application/json","Content-Length":ie.length}),X.end(ie)}function oe(q,Y,X){if(q!==!1)return function(ne){if(ne){if(o){let J=uXe(w.server,Y),ce=oXe(w,c,Y,J),ge=new t$(J,null,Y,null,ce,w),be=new ND(X,ge,ce);return i===!1&&ce.info({req:ge},"incoming request"),o(new c4r,ge,be)}let se='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';X.writeHead(500,{"Content-Type":"application/json","Content-Length":se.length}),X.end(se)}}}function le(q,Y){return D('Cannot call "setNotFoundHandler"!'),h.setNotFoundHandler.call(this,q,Y,x,f.routeHandler),this}function te(q){return D('Cannot call "setValidatorCompiler"!'),this[xA].setValidatorCompiler(q),this}function Q(q){return D('Cannot call "setSchemaErrorFormatter"!'),pXe(q),this[Xce]=q.bind(this),this}function Z(q){return D('Cannot call "setSerializerCompiler"!'),this[xA].setSerializerCompiler(q),this}function de(q){D('Cannot call "setSchemaController"!');let Y=this[xA],X=iXe.buildSchemaController(Y,Object.assign({},Y.opts,q));return this[xA]=X,this.getSchema=X.getSchema.bind(X),this.getSchemas=X.getSchemas.bind(X),this}function B(q){return D('Cannot call "setReplySerializer"!'),this[sXe]=q,this}function k(q){return D('Cannot call "setErrorHandler"!'),this[e$]=hXe(this[e$],q.bind(this)),this}function W(q){return D('Cannot call "setChildLoggerFactory"!'),this[Zce]=q,this}function P(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?tue.concat(q.includeMeta):tue:q.includeMeta,f.printRoutes(q)}function H(q,{rewriteUrl:Y,logger:X}){let ie;return function(se,J){if(ie===void 0&&(ie=q.isAsyncConstraint()),Y){se.originalUrl=se.url;let ce=Y.call(I,se);if(typeof ce=="string")se.url=ce;else{let ge=new E4r(se.url,typeof ce);se.destroy(ge)}}q.routing(se,J,oe(ie,se,J))}}function j(q){return D('Cannot call "setGenReqId"!'),this[eue]=lXe(this[Wce].requestIdHeader,q),this}}r$.errorCodes=Gv;function pXe(e){if(typeof e!="function")throw new fXe(typeof e);if(e.constructor.name==="AsyncFunction")throw new fXe("AsyncFunction")}n$.exports=r$;n$.exports.fastify=r$;n$.exports.default=r$});function OD(e,t){return function(){return e.apply(t,arguments)}}var rue=ae(()=>{"use strict"});function S4r(e){return e!==null&&!DD(e)&&e.constructor!==null&&!DD(e.constructor)&&xd(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}function T4r(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&vXe(e.buffer),t}function PD(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,s;if(typeof e!="object"&&(e=[e]),QI(e))for(n=0,s=e.length;n0;)if(s=r[n],t===s.toLowerCase())return s;return null}function sue(){let{caseless:e}=IXe(this)&&this||{},t={},r=(n,s)=>{let i=e&&TXe(t,s)||s;i$(t[i])&&i$(n)?t[i]=sue(t[i],n):i$(n)?t[i]=sue({},n):QI(n)?t[i]=n.slice():t[i]=n};for(let n=0,s=arguments.length;n{"use strict";rue();({toString:v4r}=Object.prototype),{getPrototypeOf:iue}=Object,a$=(e=>t=>{let r=v4r.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Ih=e=>(e=e.toLowerCase(),t=>a$(t)===e),o$=e=>t=>typeof t===e,{isArray:QI}=Array,DD=o$("undefined");vXe=Ih("ArrayBuffer");b4r=o$("string"),xd=o$("function"),SXe=o$("number"),c$=e=>e!==null&&typeof e=="object",I4r=e=>e===!0||e===!1,i$=e=>{if(a$(e)!=="object")return!1;let t=iue(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},R4r=Ih("Date"),C4r=Ih("File"),x4r=Ih("Blob"),w4r=Ih("FileList"),N4r=e=>c$(e)&&xd(e.pipe),O4r=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||xd(e.append)&&((t=a$(e))==="formdata"||t==="object"&&xd(e.toString)&&e.toString()==="[object FormData]"))},D4r=Ih("URLSearchParams"),P4r=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");bXe=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,IXe=e=>!DD(e)&&e!==bXe;L4r=(e,t,r,{allOwnKeys:n}={})=>(PD(t,(s,i)=>{r&&xd(s)?e[i]=OD(s,r):e[i]=s},{allOwnKeys:n}),e),M4r=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),k4r=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},B4r=(e,t,r,n)=>{let s,i,a,o={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)a=s[i],(!n||n(a,e,t))&&!o[a]&&(t[a]=e[a],o[a]=!0);e=r!==!1&&iue(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},U4r=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},F4r=e=>{if(!e)return null;if(QI(e))return e;let t=e.length;if(!SXe(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},$4r=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&iue(Uint8Array)),q4r=(e,t)=>{let n=(e&&e[Symbol.iterator]).call(e),s;for(;(s=n.next())&&!s.done;){let i=s.value;t.call(e,i[0],i[1])}},H4r=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},V4r=Ih("HTMLFormElement"),j4r=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),EXe=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),K4r=Ih("RegExp"),RXe=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};PD(r,(s,i)=>{let a;(a=t(s,i,e))!==!1&&(n[i]=a||s)}),Object.defineProperties(e,n)},G4r=e=>{RXe(e,(t,r)=>{if(xd(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(xd(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},z4r=(e,t)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return QI(e)?n(e):n(String(e).split(t)),r},Y4r=()=>{},Q4r=(e,t)=>(e=+e,Number.isFinite(e)?e:t),nue="abcdefghijklmnopqrstuvwxyz",yXe="0123456789",CXe={DIGIT:yXe,ALPHA:nue,ALPHA_DIGIT:nue+nue.toUpperCase()+yXe},W4r=(e=16,t=CXe.ALPHA_DIGIT)=>{let r="",{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};J4r=e=>{let t=new Array(10),r=(n,s)=>{if(c$(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[s]=n;let i=QI(n)?[]:{};return PD(n,(a,o)=>{let c=r(a,s+1);!DD(c)&&(i[o]=c)}),t[s]=void 0,i}}return n};return r(e,0)},Z4r=Ih("AsyncFunction"),eBr=e=>e&&(c$(e)||xd(e))&&xd(e.then)&&xd(e.catch),Re={isArray:QI,isArrayBuffer:vXe,isBuffer:S4r,isFormData:O4r,isArrayBufferView:T4r,isString:b4r,isNumber:SXe,isBoolean:I4r,isObject:c$,isPlainObject:i$,isUndefined:DD,isDate:R4r,isFile:C4r,isBlob:x4r,isRegExp:K4r,isFunction:xd,isStream:N4r,isURLSearchParams:D4r,isTypedArray:$4r,isFileList:w4r,forEach:PD,merge:sue,extend:L4r,trim:P4r,stripBOM:M4r,inherits:k4r,toFlatObject:B4r,kindOf:a$,kindOfTest:Ih,endsWith:U4r,toArray:F4r,forEachEntry:q4r,matchAll:H4r,isHTMLForm:V4r,hasOwnProperty:EXe,hasOwnProp:EXe,reduceDescriptors:RXe,freezeMethods:G4r,toObjectSet:z4r,toCamelCase:j4r,noop:Y4r,toFiniteNumber:Q4r,findKey:TXe,global:bXe,isContextDefined:IXe,ALPHABET:CXe,generateString:W4r,isSpecCompliantForm:X4r,toJSONObject:J4r,isAsyncFn:Z4r,isThenable:eBr}});function WI(e,t,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}var xXe,wXe,mt,Vf=ae(()=>{"use strict";ni();Re.inherits(WI,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Re.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});xXe=WI.prototype,wXe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{wXe[e]={value:e}});Object.defineProperties(WI,wXe);Object.defineProperty(xXe,"isAxiosError",{value:!0});WI.from=(e,t,r,n,s,i)=>{let a=Object.create(xXe);return Re.toFlatObject(e,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),WI.call(a,e.message,t,r,n,s),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};mt=WI});var DXe=S((HKn,OXe)=>{var NXe=require("stream").Stream,tBr=require("util");OXe.exports=jf;function jf(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}tBr.inherits(jf,NXe);jf.create=function(e,t){var r=new this;t=t||{};for(var n in t)r[n]=t[n];r.source=e;var s=e.emit;return e.emit=function(){return r._handleEmit(arguments),s.apply(e,arguments)},e.on("error",function(){}),r.pauseStream&&e.pause(),r};Object.defineProperty(jf.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});jf.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};jf.prototype.resume=function(){this._released||this.release(),this.source.resume()};jf.prototype.pause=function(){this.source.pause()};jf.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(e){this.emit.apply(this,e)}.bind(this)),this._bufferedEvents=[]};jf.prototype.pipe=function(){var e=NXe.prototype.pipe.apply(this,arguments);return this.resume(),e};jf.prototype._handleEmit=function(e){if(this._released){this.emit.apply(this,e);return}e[0]==="data"&&(this.dataSize+=e[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(e)};jf.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var e="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(e))}}});var kXe=S((VKn,MXe)=>{var rBr=require("util"),LXe=require("stream").Stream,PXe=DXe();MXe.exports=vi;function vi(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}rBr.inherits(vi,LXe);vi.create=function(e){var t=new this;e=e||{};for(var r in e)t[r]=e[r];return t};vi.isStreamLike=function(e){return typeof e!="function"&&typeof e!="string"&&typeof e!="boolean"&&typeof e!="number"&&!Buffer.isBuffer(e)};vi.prototype.append=function(e){var t=vi.isStreamLike(e);if(t){if(!(e instanceof PXe)){var r=PXe.create(e,{maxDataSize:1/0,pauseStream:this.pauseStreams});e.on("data",this._checkDataSize.bind(this)),e=r}this._handleErrors(e),this.pauseStreams&&e.pause()}return this._streams.push(e),this};vi.prototype.pipe=function(e,t){return LXe.prototype.pipe.call(this,e,t),this.resume(),e};vi.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};vi.prototype._realGetNext=function(){var e=this._streams.shift();if(typeof e>"u"){this.end();return}if(typeof e!="function"){this._pipeNext(e);return}var t=e;t(function(r){var n=vi.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};vi.prototype._pipeNext=function(e){this._currentStream=e;var t=vi.isStreamLike(e);if(t){e.on("end",this._getNext.bind(this)),e.pipe(this,{end:!1});return}var r=e;this.write(r),this._getNext()};vi.prototype._handleErrors=function(e){var t=this;e.on("error",function(r){t._emitError(r)})};vi.prototype.write=function(e){this.emit("data",e)};vi.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};vi.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};vi.prototype.end=function(){this._reset(),this.emit("end")};vi.prototype.destroy=function(){this._reset(),this.emit("close")};vi.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};vi.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var e="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(e))}};vi.prototype._updateDataSize=function(){this.dataSize=0;var e=this;this._streams.forEach(function(t){t.dataSize&&(e.dataSize+=t.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};vi.prototype._emitError=function(e){this._reset(),this.emit("error",e)}});var BXe=S((jKn,nBr)=>{nBr.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var FXe=S((KKn,UXe)=>{UXe.exports=BXe()});var HXe=S(Pu=>{"use strict";var u$=FXe(),sBr=require("path").extname,$Xe=/^\s*([^;\s]*)(?:;|\s|$)/,iBr=/^text\//i;Pu.charset=qXe;Pu.charsets={lookup:qXe};Pu.contentType=aBr;Pu.extension=oBr;Pu.extensions=Object.create(null);Pu.lookup=cBr;Pu.types=Object.create(null);uBr(Pu.extensions,Pu.types);function qXe(e){if(!e||typeof e!="string")return!1;var t=$Xe.exec(e),r=t&&u$[t[1].toLowerCase()];return r&&r.charset?r.charset:t&&iBr.test(t[1])?"UTF-8":!1}function aBr(e){if(!e||typeof e!="string")return!1;var t=e.indexOf("/")===-1?Pu.lookup(e):e;if(!t)return!1;if(t.indexOf("charset")===-1){var r=Pu.charset(t);r&&(t+="; charset="+r.toLowerCase())}return t}function oBr(e){if(!e||typeof e!="string")return!1;var t=$Xe.exec(e),r=t&&Pu.extensions[t[1].toLowerCase()];return!r||!r.length?!1:r[0]}function cBr(e){if(!e||typeof e!="string")return!1;var t=sBr("x."+e).toLowerCase().substr(1);return t&&Pu.types[t]||!1}function uBr(e,t){var r=["nginx","apache",void 0,"iana"];Object.keys(u$).forEach(function(s){var i=u$[s],a=i.extensions;if(!(!a||!a.length)){e[s]=a;for(var o=0;ol||u===l&&t[c].substr(0,12)==="application/"))continue}t[c]=s}}})}});var jXe=S((zKn,VXe)=>{VXe.exports=lBr;function lBr(e){var t=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;t?t(e):setTimeout(e,0)}});var aue=S((YKn,GXe)=>{var KXe=jXe();GXe.exports=dBr;function dBr(e){var t=!1;return KXe(function(){t=!0}),function(n,s){t?e(n,s):KXe(function(){e(n,s)})}}});var oue=S((QKn,zXe)=>{zXe.exports=fBr;function fBr(e){Object.keys(e.jobs).forEach(hBr.bind(e)),e.jobs={}}function hBr(e){typeof this.jobs[e]=="function"&&this.jobs[e]()}});var cue=S((WKn,QXe)=>{var YXe=aue(),pBr=oue();QXe.exports=mBr;function mBr(e,t,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=gBr(t,s,e[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?pBr(r):r.results[s]=a,n(i,r.results))})}function gBr(e,t,r,n){var s;return e.length==2?s=e(r,YXe(n)):s=e(r,t,YXe(n)),s}});var uue=S((XKn,WXe)=>{WXe.exports=_Br;function _Br(e,t){var r=!Array.isArray(e),n={index:0,keyedList:r||t?Object.keys(e):null,jobs:{},results:r?{}:[],size:r?Object.keys(e).length:e.length};return t&&n.keyedList.sort(r?t:function(s,i){return t(e[s],e[i])}),n}});var lue=S((JKn,XXe)=>{var ABr=oue(),EBr=aue();XXe.exports=yBr;function yBr(e){Object.keys(this.jobs).length&&(this.index=this.size,ABr(this),EBr(e)(null,this.results))}});var ZXe=S((ZKn,JXe)=>{var vBr=cue(),SBr=uue(),TBr=lue();JXe.exports=bBr;function bBr(e,t,r){for(var n=SBr(e);n.index<(n.keyedList||e).length;)vBr(e,t,n,function(s,i){if(s){r(s,i);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return TBr.bind(n,r)}});var due=S((eGn,l$)=>{var eJe=cue(),IBr=uue(),RBr=lue();l$.exports=CBr;l$.exports.ascending=tJe;l$.exports.descending=xBr;function CBr(e,t,r,n){var s=IBr(e,r);return eJe(e,t,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||e).length){eJe(e,t,s,i);return}n(null,s.results)}),RBr.bind(s,n)}function tJe(e,t){return et?1:0}function xBr(e,t){return-1*tJe(e,t)}});var nJe=S((tGn,rJe)=>{var wBr=due();rJe.exports=NBr;function NBr(e,t,r){return wBr(e,t,null,r)}});var iJe=S((rGn,sJe)=>{sJe.exports={parallel:ZXe(),serial:nJe(),serialOrdered:due()}});var fue=S((nGn,aJe)=>{"use strict";aJe.exports=Object});var cJe=S((sGn,oJe)=>{"use strict";oJe.exports=Error});var lJe=S((iGn,uJe)=>{"use strict";uJe.exports=EvalError});var fJe=S((aGn,dJe)=>{"use strict";dJe.exports=RangeError});var pJe=S((oGn,hJe)=>{"use strict";hJe.exports=ReferenceError});var gJe=S((cGn,mJe)=>{"use strict";mJe.exports=SyntaxError});var wA=S((uGn,_Je)=>{"use strict";_Je.exports=TypeError});var EJe=S((lGn,AJe)=>{"use strict";AJe.exports=URIError});var vJe=S((dGn,yJe)=>{"use strict";yJe.exports=Math.abs});var TJe=S((fGn,SJe)=>{"use strict";SJe.exports=Math.floor});var IJe=S((hGn,bJe)=>{"use strict";bJe.exports=Math.max});var CJe=S((pGn,RJe)=>{"use strict";RJe.exports=Math.min});var wJe=S((mGn,xJe)=>{"use strict";xJe.exports=Math.pow});var OJe=S((gGn,NJe)=>{"use strict";NJe.exports=Math.round});var PJe=S((_Gn,DJe)=>{"use strict";DJe.exports=Number.isNaN||function(t){return t!==t}});var MJe=S((AGn,LJe)=>{"use strict";var OBr=PJe();LJe.exports=function(t){return OBr(t)||t===0?t:t<0?-1:1}});var BJe=S((EGn,kJe)=>{"use strict";kJe.exports=Object.getOwnPropertyDescriptor});var hue=S((yGn,UJe)=>{"use strict";var d$=BJe();if(d$)try{d$([],"length")}catch{d$=null}UJe.exports=d$});var $Je=S((vGn,FJe)=>{"use strict";var f$=Object.defineProperty||!1;if(f$)try{f$({},"a",{value:1})}catch{f$=!1}FJe.exports=f$});var pue=S((SGn,qJe)=>{"use strict";qJe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var s=42;t[r]=s;for(var i in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var a=Object.getOwnPropertySymbols(t);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(t,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var jJe=S((TGn,VJe)=>{"use strict";var HJe=typeof Symbol<"u"&&Symbol,DBr=pue();VJe.exports=function(){return typeof HJe!="function"||typeof Symbol!="function"||typeof HJe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:DBr()}});var mue=S((bGn,KJe)=>{"use strict";KJe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var gue=S((IGn,GJe)=>{"use strict";var PBr=fue();GJe.exports=PBr.getPrototypeOf||null});var QJe=S((RGn,YJe)=>{"use strict";var LBr="Function.prototype.bind called on incompatible ",MBr=Object.prototype.toString,kBr=Math.max,BBr="[object Function]",zJe=function(t,r){for(var n=[],s=0;s{"use strict";var $Br=QJe();WJe.exports=Function.prototype.bind||$Br});var h$=S((xGn,XJe)=>{"use strict";XJe.exports=Function.prototype.call});var _ue=S((wGn,JJe)=>{"use strict";JJe.exports=Function.prototype.apply});var eZe=S((NGn,ZJe)=>{"use strict";ZJe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var rZe=S((OGn,tZe)=>{"use strict";var qBr=LD(),HBr=_ue(),VBr=h$(),jBr=eZe();tZe.exports=jBr||qBr.call(VBr,HBr)});var Aue=S((DGn,nZe)=>{"use strict";var KBr=LD(),GBr=wA(),zBr=h$(),YBr=rZe();nZe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new GBr("a function is required");return YBr(KBr,zBr,t)}});var uZe=S((PGn,cZe)=>{"use strict";var QBr=Aue(),sZe=hue(),aZe;try{aZe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var Eue=!!aZe&&sZe&&sZe(Object.prototype,"__proto__"),oZe=Object,iZe=oZe.getPrototypeOf;cZe.exports=Eue&&typeof Eue.get=="function"?QBr([Eue.get]):typeof iZe=="function"?function(t){return iZe(t==null?t:oZe(t))}:!1});var pZe=S((LGn,hZe)=>{"use strict";var lZe=mue(),dZe=gue(),fZe=uZe();hZe.exports=lZe?function(t){return lZe(t)}:dZe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return dZe(t)}:fZe?function(t){return fZe(t)}:null});var p$=S((MGn,mZe)=>{"use strict";var WBr=Function.prototype.call,XBr=Object.prototype.hasOwnProperty,JBr=LD();mZe.exports=JBr.call(WBr,XBr)});var UD=S((kGn,vZe)=>{"use strict";var Gr,ZBr=fue(),e3r=cJe(),t3r=lJe(),r3r=fJe(),n3r=pJe(),eR=gJe(),ZI=wA(),s3r=EJe(),i3r=vJe(),a3r=TJe(),o3r=IJe(),c3r=CJe(),u3r=wJe(),l3r=OJe(),d3r=MJe(),EZe=Function,yue=function(e){try{return EZe('"use strict"; return ('+e+").constructor;")()}catch{}},MD=hue(),f3r=$Je(),vue=function(){throw new ZI},h3r=MD?function(){try{return arguments.callee,vue}catch{try{return MD(arguments,"callee").get}catch{return vue}}}():vue,XI=jJe()(),Ma=pZe(),p3r=gue(),m3r=mue(),yZe=_ue(),kD=h$(),JI={},g3r=typeof Uint8Array>"u"||!Ma?Gr:Ma(Uint8Array),zv={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?Gr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Gr:ArrayBuffer,"%ArrayIteratorPrototype%":XI&&Ma?Ma([][Symbol.iterator]()):Gr,"%AsyncFromSyncIteratorPrototype%":Gr,"%AsyncFunction%":JI,"%AsyncGenerator%":JI,"%AsyncGeneratorFunction%":JI,"%AsyncIteratorPrototype%":JI,"%Atomics%":typeof Atomics>"u"?Gr:Atomics,"%BigInt%":typeof BigInt>"u"?Gr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Gr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Gr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Gr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":e3r,"%eval%":eval,"%EvalError%":t3r,"%Float16Array%":typeof Float16Array>"u"?Gr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?Gr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Gr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Gr:FinalizationRegistry,"%Function%":EZe,"%GeneratorFunction%":JI,"%Int8Array%":typeof Int8Array>"u"?Gr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Gr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Gr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":XI&&Ma?Ma(Ma([][Symbol.iterator]())):Gr,"%JSON%":typeof JSON=="object"?JSON:Gr,"%Map%":typeof Map>"u"?Gr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!XI||!Ma?Gr:Ma(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":ZBr,"%Object.getOwnPropertyDescriptor%":MD,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Gr:Promise,"%Proxy%":typeof Proxy>"u"?Gr:Proxy,"%RangeError%":r3r,"%ReferenceError%":n3r,"%Reflect%":typeof Reflect>"u"?Gr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Gr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!XI||!Ma?Gr:Ma(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Gr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":XI&&Ma?Ma(""[Symbol.iterator]()):Gr,"%Symbol%":XI?Symbol:Gr,"%SyntaxError%":eR,"%ThrowTypeError%":h3r,"%TypedArray%":g3r,"%TypeError%":ZI,"%Uint8Array%":typeof Uint8Array>"u"?Gr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Gr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Gr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Gr:Uint32Array,"%URIError%":s3r,"%WeakMap%":typeof WeakMap>"u"?Gr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Gr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Gr:WeakSet,"%Function.prototype.call%":kD,"%Function.prototype.apply%":yZe,"%Object.defineProperty%":f3r,"%Object.getPrototypeOf%":p3r,"%Math.abs%":i3r,"%Math.floor%":a3r,"%Math.max%":o3r,"%Math.min%":c3r,"%Math.pow%":u3r,"%Math.round%":l3r,"%Math.sign%":d3r,"%Reflect.getPrototypeOf%":m3r};if(Ma)try{null.error}catch(e){gZe=Ma(Ma(e)),zv["%Error.prototype%"]=gZe}var gZe,_3r=function e(t){var r;if(t==="%AsyncFunction%")r=yue("async function () {}");else if(t==="%GeneratorFunction%")r=yue("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=yue("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var s=e("%AsyncGenerator%");s&&Ma&&(r=Ma(s.prototype))}return zv[t]=r,r},_Ze={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},BD=LD(),m$=p$(),A3r=BD.call(kD,Array.prototype.concat),E3r=BD.call(yZe,Array.prototype.splice),AZe=BD.call(kD,String.prototype.replace),g$=BD.call(kD,String.prototype.slice),y3r=BD.call(kD,RegExp.prototype.exec),v3r=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,S3r=/\\(\\)?/g,T3r=function(t){var r=g$(t,0,1),n=g$(t,-1);if(r==="%"&&n!=="%")throw new eR("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new eR("invalid intrinsic syntax, expected opening `%`");var s=[];return AZe(t,v3r,function(i,a,o,c){s[s.length]=o?AZe(c,S3r,"$1"):a||i}),s},b3r=function(t,r){var n=t,s;if(m$(_Ze,n)&&(s=_Ze[n],n="%"+s[0]+"%"),m$(zv,n)){var i=zv[n];if(i===JI&&(i=_3r(n)),typeof i>"u"&&!r)throw new ZI("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new eR("intrinsic "+t+" does not exist!")};vZe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new ZI("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new ZI('"allowMissing" argument must be a boolean');if(y3r(/^%?[^%]*%?$/,t)===null)throw new eR("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=T3r(t),s=n.length>0?n[0]:"",i=b3r("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],E3r(n,A3r([0,1],u)));for(var l=1,d=!0;l=n.length){var m=MD(o,f);d=!!m,d&&"get"in m&&!("originalValue"in m.get)?o=m.get:o=o[f]}else d=m$(o,f),o=o[f];d&&!c&&(zv[a]=o)}}return o}});var TZe=S((BGn,SZe)=>{"use strict";var I3r=pue();SZe.exports=function(){return I3r()&&!!Symbol.toStringTag}});var RZe=S((UGn,IZe)=>{"use strict";var R3r=UD(),bZe=R3r("%Object.defineProperty%",!0),C3r=TZe()(),x3r=p$(),w3r=wA(),_$=C3r?Symbol.toStringTag:null;IZe.exports=function(t,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,s=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof s<"u"&&typeof s!="boolean")throw new w3r("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");_$&&(n||!x3r(t,_$))&&(bZe?bZe(t,_$,{configurable:!s,enumerable:!1,value:r,writable:!1}):t[_$]=r)}});var xZe=S((FGn,CZe)=>{"use strict";CZe.exports=function(e,t){return Object.keys(t).forEach(function(r){e[r]=e[r]||t[r]}),e}});var Rue=S(($Gn,wZe)=>{"use strict";var Iue=kXe(),N3r=require("util"),Sue=require("path"),O3r=require("http"),D3r=require("https"),P3r=require("url").parse,L3r=require("fs"),M3r=require("stream").Stream,k3r=require("crypto"),Tue=HXe(),B3r=iJe(),U3r=RZe(),NA=p$(),bue=xZe();function vn(e){if(!(this instanceof vn))return new vn(e);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],Iue.call(this),e=e||{};for(var t in e)this[t]=e[t]}N3r.inherits(vn,Iue);vn.LINE_BREAK=`\r -`;vn.DEFAULT_CONTENT_TYPE="application/octet-stream";vn.prototype.append=function(e,t,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=Iue.prototype.append.bind(this);if((typeof t=="number"||t==null)&&(t=String(t)),Array.isArray(t)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(e,t,r),i=this._multiPartFooter();n(s),n(t),n(i),this._trackLength(s,t,r)};vn.prototype._trackLength=function(e,t,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(t)?n=t.length:typeof t=="string"&&(n=Buffer.byteLength(t)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(e)+vn.LINE_BREAK.length,!(!t||!t.path&&!(t.readable&&NA(t,"httpVersion"))&&!(t instanceof M3r))&&(r.knownLength||this._valuesToMeasure.push(t))};vn.prototype._lengthRetriever=function(e,t){NA(e,"fd")?e.end!=null&&e.end!=1/0&&e.start!=null?t(null,e.end+1-(e.start?e.start:0)):L3r.stat(e.path,function(r,n){if(r){t(r);return}var s=n.size-(e.start?e.start:0);t(null,s)}):NA(e,"httpVersion")?t(null,Number(e.headers["content-length"])):NA(e,"httpModule")?(e.on("response",function(r){e.pause(),t(null,Number(r.headers["content-length"]))}),e.resume()):t("Unknown stream")};vn.prototype._multiPartHeader=function(e,t,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(t,r),s=this._getContentType(t,r),i="",a={"Content-Disposition":["form-data",'name="'+e+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&bue(a,r.header);var o;for(var c in a)if(NA(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+vn.LINE_BREAK)}return"--"+this.getBoundary()+vn.LINE_BREAK+i+vn.LINE_BREAK};vn.prototype._getContentDisposition=function(e,t){var r;if(typeof t.filepath=="string"?r=Sue.normalize(t.filepath).replace(/\\/g,"/"):t.filename||e&&(e.name||e.path)?r=Sue.basename(t.filename||e&&(e.name||e.path)):e&&e.readable&&NA(e,"httpVersion")&&(r=Sue.basename(e.client._httpMessage.path||"")),r)return'filename="'+r+'"'};vn.prototype._getContentType=function(e,t){var r=t.contentType;return!r&&e&&e.name&&(r=Tue.lookup(e.name)),!r&&e&&e.path&&(r=Tue.lookup(e.path)),!r&&e&&e.readable&&NA(e,"httpVersion")&&(r=e.headers["content-type"]),!r&&(t.filepath||t.filename)&&(r=Tue.lookup(t.filepath||t.filename)),!r&&e&&typeof e=="object"&&(r=vn.DEFAULT_CONTENT_TYPE),r};vn.prototype._multiPartFooter=function(){return function(e){var t=vn.LINE_BREAK,r=this._streams.length===0;r&&(t+=this._lastBoundary()),e(t)}.bind(this)};vn.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+vn.LINE_BREAK};vn.prototype.getHeaders=function(e){var t,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(t in e)NA(e,t)&&(r[t.toLowerCase()]=e[t]);return r};vn.prototype.setBoundary=function(e){if(typeof e!="string")throw new TypeError("FormData boundary must be a string");this._boundary=e};vn.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};vn.prototype.getBuffer=function(){for(var e=new Buffer.alloc(0),t=this.getBoundary(),r=0,n=this._streams.length;r{NZe=Ne(Rue(),1),A$=NZe.default});function xue(e){return Re.isPlainObject(e)||Re.isArray(e)}function DZe(e){return Re.endsWith(e,"[]")?e.slice(0,-2):e}function OZe(e,t,r){return e?e.concat(t).map(function(s,i){return s=DZe(s),!r&&i?"["+s+"]":s}).join(r?".":""):t}function F3r(e){return Re.isArray(e)&&!e.some(xue)}function q3r(e,t,r){if(!Re.isObject(e))throw new TypeError("target must be an object");t=t||new(A$||FormData),r=Re.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,_){return!Re.isUndefined(_[m])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&Re.isSpecCompliantForm(t);if(!Re.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(Re.isDate(p))return p.toISOString();if(!c&&Re.isBlob(p))throw new mt("Blob is not supported. Use a Buffer instead.");return Re.isArrayBuffer(p)||Re.isTypedArray(p)?c&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function l(p,m,_){let g=p;if(p&&!_&&typeof p=="object"){if(Re.endsWith(m,"{}"))m=n?m:m.slice(0,-2),p=JSON.stringify(p);else if(Re.isArray(p)&&F3r(p)||(Re.isFileList(p)||Re.endsWith(m,"[]"))&&(g=Re.toArray(p)))return m=DZe(m),g.forEach(function(A,E){!(Re.isUndefined(A)||A===null)&&t.append(a===!0?OZe([m],E,i):a===null?m:m+"[]",u(A))}),!1}return xue(p)?!0:(t.append(OZe(_,m,i),u(p)),!1)}let d=[],f=Object.assign($3r,{defaultVisitor:l,convertValue:u,isVisitable:xue});function h(p,m){if(!Re.isUndefined(p)){if(d.indexOf(p)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(p),Re.forEach(p,function(g,y){(!(Re.isUndefined(g)||g===null)&&s.call(t,g,Re.isString(y)?y.trim():y,m,f))===!0&&h(g,m?m.concat(y):[y])}),d.pop()}}if(!Re.isObject(e))throw new TypeError("data must be an object");return h(e),t}var $3r,OA,FD=ae(()=>{"use strict";ni();Vf();Cue();$3r=Re.toFlatObject(Re,{},null,function(t){return/^is[A-Z]/.test(t)});OA=q3r});function PZe(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function LZe(e,t){this._pairs=[],e&&OA(e,this,t)}var MZe,kZe,BZe=ae(()=>{"use strict";FD();MZe=LZe.prototype;MZe.append=function(t,r){this._pairs.push([t,r])};MZe.toString=function(t){let r=t?function(n){return t.call(this,n,PZe)}:PZe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};kZe=LZe});function H3r(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Yv(e,t,r){if(!t)return e;let n=r&&r.encode||H3r,s=r&&r.serialize,i;if(s?i=s(t,r):i=Re.isURLSearchParams(t)?t.toString():new kZe(t,r).toString(n),i){let a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}var E$=ae(()=>{"use strict";ni();BZe()});var wue,Nue,UZe=ae(()=>{"use strict";ni();wue=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Re.forEach(this.handlers,function(n){n!==null&&t(n)})}},Nue=wue});var tR,y$=ae(()=>{"use strict";tR={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}});var FZe,$Ze,qZe=ae(()=>{"use strict";FZe=Ne(require("url"),1),$Ze=FZe.default.URLSearchParams});var HZe,VZe=ae(()=>{qZe();Cue();HZe={isNode:!0,classes:{URLSearchParams:$Ze,FormData:A$,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]}});var Oue={};Ft(Oue,{hasBrowserEnv:()=>jZe,hasStandardBrowserEnv:()=>V3r,hasStandardBrowserWebWorkerEnv:()=>j3r});var jZe,V3r,j3r,KZe=ae(()=>{jZe=typeof window<"u"&&typeof document<"u",V3r=(e=>jZe&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),j3r=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function"});var _a,DA=ae(()=>{VZe();KZe();_a={...Oue,...HZe}});function Due(e,t){return OA(e,new _a.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return _a.isNode&&Re.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}var GZe=ae(()=>{"use strict";ni();FD();DA()});function K3r(e){return Re.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function G3r(e){let t={},r=Object.keys(e),n,s=r.length,i;for(n=0;n=r.length;return a=!a&&Re.isArray(s)?s.length:a,c?(Re.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!Re.isObject(s[a]))&&(s[a]=[]),t(r,n,s[a],i)&&Re.isArray(s[a])&&(s[a]=G3r(s[a])),!o)}if(Re.isFormData(e)&&Re.isFunction(e.entries)){let r={};return Re.forEachEntry(e,(n,s)=>{t(K3r(n),s,r,0)}),r}return null}var v$,Pue=ae(()=>{"use strict";ni();v$=z3r});function Y3r(e,t,r){if(Re.isString(e))try{return(t||JSON.parse)(e),Re.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var Lue,rR,S$=ae(()=>{"use strict";ni();Vf();y$();FD();GZe();DA();Pue();Lue={transitional:tR,adapter:["xhr","http"],transformRequest:[function(t,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=Re.isObject(t);if(i&&Re.isHTMLForm(t)&&(t=new FormData(t)),Re.isFormData(t))return s?JSON.stringify(v$(t)):t;if(Re.isArrayBuffer(t)||Re.isBuffer(t)||Re.isStream(t)||Re.isFile(t)||Re.isBlob(t))return t;if(Re.isArrayBufferView(t))return t.buffer;if(Re.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Due(t,this.formSerializer).toString();if((o=Re.isFileList(t))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return OA(o?{"files[]":t}:t,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),Y3r(t)):t}],transformResponse:[function(t){let r=this.transitional||Lue.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(t&&Re.isString(t)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(o){if(a)throw o.name==="SyntaxError"?mt.from(o,mt.ERR_BAD_RESPONSE,this,null,this.response):o}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:_a.classes.FormData,Blob:_a.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Re.forEach(["delete","get","head","post","put","patch"],e=>{Lue.headers[e]={}});rR=Lue});var Q3r,zZe,YZe=ae(()=>{"use strict";ni();Q3r=Re.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),zZe=e=>{let t={},r,n,s;return e&&e.split(` -`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||t[r]&&Q3r[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t}});function $D(e){return e&&String(e).trim().toLowerCase()}function T$(e){return e===!1||e==null?e:Re.isArray(e)?e.map(T$):String(e)}function W3r(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}function Mue(e,t,r,n,s){if(Re.isFunction(n))return n.call(this,t,r);if(s&&(t=r),!!Re.isString(t)){if(Re.isString(n))return t.indexOf(n)!==-1;if(Re.isRegExp(n))return n.test(t)}}function J3r(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Z3r(e,t){let r=Re.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(s,i,a){return this[n].call(this,t,s,i,a)},configurable:!0})})}var QZe,X3r,nR,Aa,PA=ae(()=>{"use strict";ni();YZe();QZe=Symbol("internals");X3r=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());nR=class{constructor(t){t&&this.set(t)}set(t,r,n){let s=this;function i(o,c,u){let l=$D(c);if(!l)throw new Error("header name must be a non-empty string");let d=Re.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=T$(o))}let a=(o,c)=>Re.forEach(o,(u,l)=>i(u,l,c));return Re.isPlainObject(t)||t instanceof this.constructor?a(t,r):Re.isString(t)&&(t=t.trim())&&!X3r(t)?a(zZe(t),r):t!=null&&i(r,t,n),this}get(t,r){if(t=$D(t),t){let n=Re.findKey(this,t);if(n){let s=this[n];if(!r)return s;if(r===!0)return W3r(s);if(Re.isFunction(r))return r.call(this,s,n);if(Re.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=$D(t),t){let n=Re.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||Mue(this,this[n],n,r)))}return!1}delete(t,r){let n=this,s=!1;function i(a){if(a=$D(a),a){let o=Re.findKey(n,a);o&&(!r||Mue(n,n[o],o,r))&&(delete n[o],s=!0)}}return Re.isArray(t)?t.forEach(i):i(t),s}clear(t){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!t||Mue(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){let r=this,n={};return Re.forEach(this,(s,i)=>{let a=Re.findKey(n,i);if(a){r[a]=T$(s),delete r[i];return}let o=t?J3r(i):String(i).trim();o!==i&&delete r[i],r[o]=T$(s),n[o]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return Re.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=t&&Re.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let n=new this(t);return r.forEach(s=>n.set(s)),n}static accessor(t){let n=(this[QZe]=this[QZe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=$D(a);n[o]||(Z3r(s,a),n[o]=!0)}return Re.isArray(t)?t.forEach(i):i(t),this}};nR.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Re.reduceDescriptors(nR.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}});Re.freezeMethods(nR);Aa=nR});function qD(e,t){let r=this||rR,n=t||r,s=Aa.from(n.headers),i=n.data;return Re.forEach(e,function(o){i=o.call(r,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}var WZe=ae(()=>{"use strict";ni();S$();PA()});function HD(e){return!!(e&&e.__CANCEL__)}var kue=ae(()=>{"use strict"});function XZe(e,t,r){mt.call(this,e??"canceled",mt.ERR_CANCELED,t,r),this.name="CanceledError"}var Kf,sR=ae(()=>{"use strict";Vf();ni();Re.inherits(XZe,mt,{__CANCEL__:!0});Kf=XZe});function LA(e,t,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new mt("Request failed with status code "+r.status,[mt.ERR_BAD_REQUEST,mt.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var Bue=ae(()=>{"use strict";Vf()});function Uue(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}var JZe=ae(()=>{"use strict"});function Fue(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}var ZZe=ae(()=>{"use strict"});function Qv(e,t){return e&&!Uue(t)?Fue(e,t):t}var b$=ae(()=>{"use strict";JZe();ZZe()});var tet=S(eet=>{"use strict";var eUr=require("url").parse,tUr={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},rUr=String.prototype.endsWith||function(e){return e.length<=this.length&&this.indexOf(e,this.length-e.length)!==-1};function nUr(e){var t=typeof e=="string"?eUr(e):e||{},r=t.protocol,n=t.host,s=t.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||tUr[r]||0,!sUr(n,s)))return"";var i=iR("npm_config_"+r+"_proxy")||iR(r+"_proxy")||iR("npm_config_proxy")||iR("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function sUr(e,t){var r=(iR("npm_config_no_proxy")||iR("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var s=n.match(/^(.+):(\d+)$/),i=s?s[1]:n,a=s?parseInt(s[2]):0;return a&&a!==t?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!rUr.call(e,i)):e!==i}):!0}function iR(e){return process.env[e.toLowerCase()]||process.env[e.toUpperCase()]||""}eet.getProxyForUrl=nUr});var net=S((qzn,ret)=>{var aR=1e3,oR=aR*60,cR=oR*60,Wv=cR*24,iUr=Wv*7,aUr=Wv*365.25;ret.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return oUr(e);if(r==="number"&&isFinite(e))return t.long?uUr(e):cUr(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function oUr(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*aUr;case"weeks":case"week":case"w":return r*iUr;case"days":case"day":case"d":return r*Wv;case"hours":case"hour":case"hrs":case"hr":case"h":return r*cR;case"minutes":case"minute":case"mins":case"min":case"m":return r*oR;case"seconds":case"second":case"secs":case"sec":case"s":return r*aR;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function cUr(e){var t=Math.abs(e);return t>=Wv?Math.round(e/Wv)+"d":t>=cR?Math.round(e/cR)+"h":t>=oR?Math.round(e/oR)+"m":t>=aR?Math.round(e/aR)+"s":e+"ms"}function uUr(e){var t=Math.abs(e);return t>=Wv?I$(e,t,Wv,"day"):t>=cR?I$(e,t,cR,"hour"):t>=oR?I$(e,t,oR,"minute"):t>=aR?I$(e,t,aR,"second"):e+" ms"}function I$(e,t,r,n){var s=t>=r*1.5;return Math.round(e/r)+" "+n+(s?"s":"")}});var $ue=S((Hzn,set)=>{function lUr(e){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=net(),r.destroy=u,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let d=0;for(let f=0;f{if(b==="%%")return"%";E++;let T=r.formatters[I];if(typeof T=="function"){let x=_[E];b=T.call(g,x),_.splice(E,1),E--}return b}),r.formatArgs.call(g,_),(g.log||r.log).apply(g,_)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(h!==r.namespaces&&(h=r.namespaces,p=r.enabled(l)),p),set:_=>{f=_}}),typeof r.init=="function"&&r.init(m),m}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,h=0,p=-1,m=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(i(l,d))return!1;for(let d of r.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}set.exports=lUr});var iet=S((Lu,R$)=>{Lu.formatArgs=fUr;Lu.save=hUr;Lu.load=pUr;Lu.useColors=dUr;Lu.storage=mUr();Lu.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Lu.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function dUr(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function fUr(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+R$.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),e.splice(n,0,t)}Lu.log=console.debug||console.log||(()=>{});function hUr(e){try{e?Lu.storage.setItem("debug",e):Lu.storage.removeItem("debug")}catch{}}function pUr(){let e;try{e=Lu.storage.getItem("debug")||Lu.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function mUr(){try{return localStorage}catch{}}R$.exports=$ue()(Lu);var{formatters:gUr}=R$.exports;gUr.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var oet=S((Vzn,aet)=>{"use strict";aet.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),s=t.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var _Ur=require("os"),cet=require("tty"),wd=oet(),{env:ka}=process,MA;wd("no-color")||wd("no-colors")||wd("color=false")||wd("color=never")?MA=0:(wd("color")||wd("colors")||wd("color=true")||wd("color=always"))&&(MA=1);"FORCE_COLOR"in ka&&(ka.FORCE_COLOR==="true"?MA=1:ka.FORCE_COLOR==="false"?MA=0:MA=ka.FORCE_COLOR.length===0?1:Math.min(parseInt(ka.FORCE_COLOR,10),3));function que(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function Hue(e,t){if(MA===0)return 0;if(wd("color=16m")||wd("color=full")||wd("color=truecolor"))return 3;if(wd("color=256"))return 2;if(e&&!t&&MA===void 0)return 0;let r=MA||0;if(ka.TERM==="dumb")return r;if(process.platform==="win32"){let n=_Ur.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in ka)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in ka)||ka.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in ka)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ka.TEAMCITY_VERSION)?1:0;if(ka.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in ka){let n=parseInt((ka.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ka.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ka.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ka.TERM)||"COLORTERM"in ka?1:r}function AUr(e){let t=Hue(e,e&&e.isTTY);return que(t)}uet.exports={supportsColor:AUr,stdout:que(Hue(!0,cet.isatty(1))),stderr:que(Hue(!0,cet.isatty(2)))}});var fet=S((Ba,x$)=>{var EUr=require("tty"),C$=require("util");Ba.init=RUr;Ba.log=TUr;Ba.formatArgs=vUr;Ba.save=bUr;Ba.load=IUr;Ba.useColors=yUr;Ba.destroy=C$.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ba.colors=[6,2,3,4,5,1];try{let e=Vue();e&&(e.stderr||e).level>=2&&(Ba.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ba.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function yUr(){return"colors"in Ba.inspectOpts?!!Ba.inspectOpts.colors:EUr.isatty(process.stderr.fd)}function vUr(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${t} \x1B[0m`;e[0]=i+e[0].split(` -`).join(` -`+i),e.push(s+"m+"+x$.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=SUr()+t+" "+e[0]}function SUr(){return Ba.inspectOpts.hideDate?"":new Date().toISOString()+" "}function TUr(...e){return process.stderr.write(C$.formatWithOptions(Ba.inspectOpts,...e)+` -`)}function bUr(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function IUr(){return process.env.DEBUG}function RUr(e){e.inspectOpts={};let t=Object.keys(Ba.inspectOpts);for(let r=0;rt.trim()).join(" ")};det.O=function(e){return this.inspectOpts.colors=this.useColors,C$.inspect(e,this.inspectOpts)}});var het=S((Kzn,jue)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?jue.exports=iet():jue.exports=fet()});var met=S((Gzn,pet)=>{var VD;pet.exports=function(){if(!VD){try{VD=het()("follow-redirects")}catch{}typeof VD!="function"&&(VD=function(){})}VD.apply(null,arguments)}});var yet=S((zzn,rle)=>{var KD=require("url"),jD=KD.URL,CUr=require("http"),xUr=require("https"),Que=require("stream").Writable,Wue=require("assert"),get=met();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=Jv(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var Xue=!1;try{Wue(new jD(""))}catch(e){Xue=e.code==="ERR_INVALID_URL"}var wUr=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],Jue=["abort","aborted","connect","error","socket","timeout"],Zue=Object.create(null);Jue.forEach(function(e){Zue[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var Gue=GD("ERR_INVALID_URL","Invalid URL",TypeError),zue=GD("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),NUr=GD("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",zue),OUr=GD("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),DUr=GD("ERR_STREAM_WRITE_AFTER_END","write after end"),PUr=Que.prototype.destroy||Aet;function Mu(e,t){Que.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof zue?s:new zue({cause:s}))}},this._performRequest()}Mu.prototype=Object.create(Que.prototype);Mu.prototype.abort=function(){tle(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Mu.prototype.destroy=function(e){return tle(this._currentRequest,e),PUr.call(this,e),this};Mu.prototype.write=function(e,t,r){if(this._ending)throw new DUr;if(!Xv(e)&&!kUr(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(Jv(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new OUr),this.abort())};Mu.prototype.end=function(e,t,r){if(Jv(e)?(r=e,e=t=null):Jv(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(e,t,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};Mu.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};Mu.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};Mu.prototype.setTimeout=function(e,t){var r=this;function n(a){a.setTimeout(e),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},e),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",s)}return t&&this.on("timeout",t),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){Mu.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(Mu.prototype,e,{get:function(){return this._currentRequest[e]}})});Mu.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};Mu.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of Jue)n.on(s,Zue[s]);if(this._currentUrl=/^\//.test(this._options.path)?KD.format(this._options):this._options.path,this._isRedirect){var i=0,a=this,o=this._requestBodyBuffers;(function c(u){if(n===a._currentRequest)if(u)a.emit("error",u);else if(i=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(tle(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new NUr;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var i=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],Kue(/^content-/i,this._options.headers));var a=Kue(/^host$/i,this._options.headers),o=ele(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:KD.format(Object.assign(o,{host:c})),l=LUr(r,u);if(get("redirecting to",l.href),this._isRedirect=!0,Yue(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!MUr(l.host,c))&&Kue(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),Jv(s)){var d={headers:e.headers,statusCode:t},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function _et(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var s=n+":",i=r[s]=e[n],a=t[n]=Object.create(i);function o(u,l,d){return BUr(u)?u=Yue(u):Xv(u)?u=Yue(ele(u)):(d=l,l=Eet(u),u={protocol:s}),Jv(l)&&(d=l,l=null),l=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},u,l),l.nativeProtocols=r,!Xv(l.host)&&!Xv(l.hostname)&&(l.hostname="::1"),Wue.equal(l.protocol,s,"protocol mismatch"),get("options",l),new Mu(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),t}function Aet(){}function ele(e){var t;if(Xue)t=new jD(e);else if(t=Eet(KD.parse(e)),!Xv(t.protocol))throw new Gue({input:e});return t}function LUr(e,t){return Xue?new jD(e,t):ele(KD.resolve(t,e))}function Eet(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new Gue({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new Gue({input:e.href||e});return e}function Yue(e,t){var r=t||{};for(var n of wUr)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function Kue(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function GD(e,t,r){function n(s){Jv(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function tle(e,t){for(var r of Jue)e.removeListener(r,Zue[r]);e.on("error",Aet),e.destroy(t)}function MUr(e,t){Wue(Xv(e)&&Xv(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function Xv(e){return typeof e=="string"||e instanceof String}function Jv(e){return typeof e=="function"}function kUr(e){return typeof e=="object"&&"length"in e}function BUr(e){return jD&&e instanceof jD}rle.exports=_et({http:CUr,https:xUr});rle.exports.wrap=_et});var Zv,w$=ae(()=>{Zv="1.6.7"});function zD(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var nle=ae(()=>{"use strict"});function sle(e,t,r){let n=r&&r.Blob||_a.classes.Blob,s=zD(e);if(t===void 0&&n&&(t=!0),s==="data"){e=s.length?e.slice(s.length+1):e;let i=UUr.exec(e);if(!i)throw new mt("Invalid URL",mt.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(t){if(!n)throw new mt("Blob is not supported",mt.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new mt("Unsupported protocol "+s,mt.ERR_NOT_SUPPORT)}var UUr,vet=ae(()=>{"use strict";Vf();nle();DA();UUr=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/});function FUr(e,t){let r=0,n=1e3/t,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,e.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),e.apply(null,o)),n-(c-r)))}}var Tet,bet=ae(()=>{"use strict";Tet=FUr});function $Ur(e,t){e=e||10;let r=new Array(e),n=new Array(e),s=0,i=0,a;return t=t!==void 0?t:1e3,function(c){let u=Date.now(),l=n[i];a||(a=u),r[s]=c,n[s]=u;let d=i,f=0;for(;d!==s;)f+=r[d++],d=d%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),u-a{"use strict";N$=$Ur});var Iet,O$,ale,ole,Ret=ae(()=>{"use strict";Iet=Ne(require("stream"),1);ni();bet();ile();O$=Symbol("internals"),ale=class extends Iet.default.Transform{constructor(t){t=Re.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(o,c)=>!Re.isUndefined(c[o])),super({readableHighWaterMark:t.chunkSize});let r=this,n=this[O$]={length:t.length,timeWindow:t.timeWindow,ticksRate:t.ticksRate,chunkSize:t.chunkSize,maxRate:t.maxRate,minChunkSize:t.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=N$(n.ticksRate*t.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=Tet(function(){let c=n.length,u=n.bytesSeen,l=u-i;if(!l||r.destroyed)return;let d=s(l);i=u,process.nextTick(()=>{r.emit("progress",{loaded:u,total:c,progress:c?u/c:void 0,bytes:l,rate:d||void 0,estimated:d&&c&&u<=c?(c-u)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(t){let r=this[O$];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,n){let s=this,i=this[O$],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(p,m){let _=Buffer.byteLength(p);i.bytesSeen+=_,i.bytes+=_,i.isCaptured&&i.updateProgress(),s.push(p)?process.nextTick(m):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(m)}}let h=(p,m)=>{let _=Buffer.byteLength(p),g=null,y=o,A,E=0;if(a){let v=Date.now();(!i.ts||(E=v-i.ts)>=c)&&(i.ts=v,A=l-i.bytes,i.bytes=A<0?-A:0,E=0),A=l-i.bytes}if(a){if(A<=0)return setTimeout(()=>{m(null,p)},c-E);Ay&&_-y>d&&(g=p.subarray(y),p=p.subarray(0,y)),f(p,g?()=>{process.nextTick(m,null,g)}:m)};h(t,function p(m,_){if(m)return n(m);_?h(_,p):n(null)})}setLength(t){return this[O$].length=+t,this}},ole=ale});var Cet,qUr,D$,cle=ae(()=>{({asyncIterator:Cet}=Symbol),qUr=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[Cet]?yield*e[Cet]():yield e},D$=qUr});var xet,wet,HUr,YD,kA,VUr,jUr,ule,KUr,Net,Oet=ae(()=>{xet=require("util"),wet=require("stream");ni();cle();HUr=Re.ALPHABET.ALPHA_DIGIT+"-_",YD=new xet.TextEncoder,kA=`\r -`,VUr=YD.encode(kA),jUr=2,ule=class{constructor(t,r){let{escapeName:n}=this.constructor,s=Re.isString(r),i=`Content-Disposition: form-data; name="${n(t)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${kA}`;s?r=YD.encode(String(r).replace(/\r?\n|\r\n?/g,kA)):i+=`Content-Type: ${r.type||"application/octet-stream"}${kA}`,this.headers=YD.encode(i+kA),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+jUr,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;Re.isTypedArray(t)?yield t:yield*D$(t),yield VUr}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},KUr=(e,t,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+Re.generateString(s,HUr)}=r||{};if(!Re.isFormData(e))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=YD.encode("--"+i+kA),o=YD.encode("--"+i+"--"+kA+kA),c=o.byteLength,u=Array.from(e.entries()).map(([d,f])=>{let h=new ule(d,f);return c+=h.size,h});c+=a.byteLength*u.length,c=Re.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),t&&t(l),wet.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},Net=KUr});var Det,lle,Pet,Let=ae(()=>{"use strict";Det=Ne(require("stream"),1),lle=class extends Det.default.Transform{__transform(t,r,n){this.push(t),n()}_transform(t,r,n){if(t.length!==0&&(this._transform=this.__transform,t[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(t,r,n)}},Pet=lle});var GUr,Met,ket=ae(()=>{ni();GUr=(e,t)=>Re.isAsyncFn(e)?function(...r){let n=r.pop();e.apply(this,r).then(s=>{try{t?n(null,...t(s)):n(null,s)}catch(i){n(i)}},n)}:e,Met=GUr});function XUr(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function zet(e,t,r){let n=t;if(!n&&n!==!1){let s=(0,qet.getProxyForUrl)(r);s&&(n=new URL(s))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+i}e.headers.host=e.hostname+(e.port?":"+e.port:"");let s=n.hostname||n.host;e.hostname=s,e.host=s,e.port=n.port,e.path=r,n.protocol&&(e.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}e.beforeRedirects.proxy=function(i){zet(i,t,i.href)}}var qet,Het,Vet,jet,Ket,Im,eS,Get,Bet,zUr,Uet,YUr,QUr,WUr,Fet,JUr,ZUr,eFr,$et,Yet,Qet=ae(()=>{"use strict";ni();Bue();b$();E$();qet=Ne(tet(),1),Het=Ne(require("http"),1),Vet=Ne(require("https"),1),jet=Ne(require("util"),1),Ket=Ne(yet(),1),Im=Ne(require("zlib"),1);w$();y$();Vf();sR();DA();vet();eS=Ne(require("stream"),1);PA();Ret();Get=Ne(require("events"),1);Oet();cle();Let();ket();Bet={flush:Im.default.constants.Z_SYNC_FLUSH,finishFlush:Im.default.constants.Z_SYNC_FLUSH},zUr={flush:Im.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Im.default.constants.BROTLI_OPERATION_FLUSH},Uet=Re.isFunction(Im.default.createBrotliDecompress),{http:YUr,https:QUr}=Ket.default,WUr=/https:?/,Fet=_a.protocols.map(e=>e+":");JUr=typeof process<"u"&&Re.kindOf(process)==="process",ZUr=e=>new Promise((t,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),t(c)},o=c=>{i(c,!0),r(c)};e(a,o,c=>n=c).catch(o)}),eFr=({address:e,family:t})=>{if(!Re.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},$et=(e,t)=>eFr(Re.isObject(e)?e:{address:e,family:t}),Yet=JUr&&function(t){return ZUr(async function(n,s,i){let{data:a,lookup:o,family:c}=t,{responseType:u,responseEncoding:l}=t,d=t.method.toUpperCase(),f,h=!1,p;if(o){let K=Met(o,ee=>Re.isArray(ee)?ee:[ee]);o=(ee,z,oe)=>{K(ee,z,(le,te,Q)=>{if(le)return oe(le);let Z=Re.isArray(te)?te.map(de=>$et(de)):[$et(te,Q)];z.all?oe(le,Z):oe(le,Z[0].address,Z[0].family)})}}let m=new Get.default,_=()=>{t.cancelToken&&t.cancelToken.unsubscribe(g),t.signal&&t.signal.removeEventListener("abort",g),m.removeAllListeners()};i((K,ee)=>{f=!0,ee&&(h=!0,_())});function g(K){m.emit("abort",!K||K.type?new Kf(null,t,p):K)}m.once("abort",s),(t.cancelToken||t.signal)&&(t.cancelToken&&t.cancelToken.subscribe(g),t.signal&&(t.signal.aborted?g():t.signal.addEventListener("abort",g)));let y=Qv(t.baseURL,t.url),A=new URL(y,"http://localhost"),E=A.protocol||Fet[0];if(E==="data:"){let K;if(d!=="GET")return LA(n,s,{status:405,statusText:"method not allowed",headers:{},config:t});try{K=sle(t.url,u==="blob",{Blob:t.env&&t.env.Blob})}catch(ee){throw mt.from(ee,mt.ERR_BAD_REQUEST,t)}return u==="text"?(K=K.toString(l),(!l||l==="utf8")&&(K=Re.stripBOM(K))):u==="stream"&&(K=eS.default.Readable.from(K)),LA(n,s,{data:K,status:200,statusText:"OK",headers:new Aa,config:t})}if(Fet.indexOf(E)===-1)return s(new mt("Unsupported protocol "+E,mt.ERR_BAD_REQUEST,t));let v=Aa.from(t.headers).normalize();v.set("User-Agent","axios/"+Zv,!1);let b=t.onDownloadProgress,I=t.onUploadProgress,T=t.maxRate,x,w;if(Re.isSpecCompliantForm(a)){let K=v.getContentType(/boundary=([-_\w\d]{10,70})/i);a=Net(a,ee=>{v.set(ee)},{tag:`axios-${Zv}-boundary`,boundary:K&&K[1]||void 0})}else if(Re.isFormData(a)&&Re.isFunction(a.getHeaders)){if(v.set(a.getHeaders()),!v.hasContentLength())try{let K=await jet.default.promisify(a.getLength).call(a);Number.isFinite(K)&&K>=0&&v.setContentLength(K)}catch{}}else if(Re.isBlob(a))a.size&&v.setContentType(a.type||"application/octet-stream"),v.setContentLength(a.size||0),a=eS.default.Readable.from(D$(a));else if(a&&!Re.isStream(a)){if(!Buffer.isBuffer(a))if(Re.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(Re.isString(a))a=Buffer.from(a,"utf-8");else return s(new mt("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",mt.ERR_BAD_REQUEST,t));if(v.setContentLength(a.length,!1),t.maxBodyLength>-1&&a.length>t.maxBodyLength)return s(new mt("Request body larger than maxBodyLength limit",mt.ERR_BAD_REQUEST,t))}let D=Re.toFiniteNumber(v.getContentLength());Re.isArray(T)?(x=T[0],w=T[1]):x=w=T,a&&(I||x)&&(Re.isStream(a)||(a=eS.default.Readable.from(a,{objectMode:!1})),a=eS.default.pipeline([a,new ole({length:D,maxRate:Re.toFiniteNumber(x)})],Re.noop),I&&a.on("progress",K=>{I(Object.assign(K,{upload:!0}))}));let M;if(t.auth){let K=t.auth.username||"",ee=t.auth.password||"";M=K+":"+ee}if(!M&&A.username){let K=A.username,ee=A.password;M=K+":"+ee}M&&v.delete("authorization");let L;try{L=Yv(A.pathname+A.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch(K){let ee=new Error(K.message);return ee.config=t,ee.url=t.url,ee.exists=!0,s(ee)}v.set("Accept-Encoding","gzip, compress, deflate"+(Uet?", br":""),!1);let U={path:L,method:d,headers:v.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:M,protocol:E,family:c,beforeRedirect:XUr,beforeRedirects:{}};!Re.isUndefined(o)&&(U.lookup=o),t.socketPath?U.socketPath=t.socketPath:(U.hostname=A.hostname,U.port=A.port,zet(U,t.proxy,E+"//"+A.hostname+(A.port?":"+A.port:"")+U.path));let G,$=WUr.test(U.protocol);if(U.agent=$?t.httpsAgent:t.httpAgent,t.transport?G=t.transport:t.maxRedirects===0?G=$?Vet.default:Het.default:(t.maxRedirects&&(U.maxRedirects=t.maxRedirects),t.beforeRedirect&&(U.beforeRedirects.config=t.beforeRedirect),G=$?QUr:YUr),t.maxBodyLength>-1?U.maxBodyLength=t.maxBodyLength:U.maxBodyLength=1/0,t.insecureHTTPParser&&(U.insecureHTTPParser=t.insecureHTTPParser),p=G.request(U,function(ee){if(p.destroyed)return;let z=[ee],oe=+ee.headers["content-length"];if(b){let de=new ole({length:Re.toFiniteNumber(oe),maxRate:Re.toFiniteNumber(w)});b&&de.on("progress",B=>{b(Object.assign(B,{download:!0}))}),z.push(de)}let le=ee,te=ee.req||p;if(t.decompress!==!1&&ee.headers["content-encoding"])switch((d==="HEAD"||ee.statusCode===204)&&delete ee.headers["content-encoding"],(ee.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":z.push(Im.default.createUnzip(Bet)),delete ee.headers["content-encoding"];break;case"deflate":z.push(new Pet),z.push(Im.default.createUnzip(Bet)),delete ee.headers["content-encoding"];break;case"br":Uet&&(z.push(Im.default.createBrotliDecompress(zUr)),delete ee.headers["content-encoding"])}le=z.length>1?eS.default.pipeline(z,Re.noop):z[0];let Q=eS.default.finished(le,()=>{Q(),_()}),Z={status:ee.statusCode,statusText:ee.statusMessage,headers:new Aa(ee.headers),config:t,request:te};if(u==="stream")Z.data=le,LA(n,s,Z);else{let de=[],B=0;le.on("data",function(W){de.push(W),B+=W.length,t.maxContentLength>-1&&B>t.maxContentLength&&(h=!0,le.destroy(),s(new mt("maxContentLength size of "+t.maxContentLength+" exceeded",mt.ERR_BAD_RESPONSE,t,te)))}),le.on("aborted",function(){if(h)return;let W=new mt("maxContentLength size of "+t.maxContentLength+" exceeded",mt.ERR_BAD_RESPONSE,t,te);le.destroy(W),s(W)}),le.on("error",function(W){p.destroyed||s(mt.from(W,null,t,te))}),le.on("end",function(){try{let W=de.length===1?de[0]:Buffer.concat(de);u!=="arraybuffer"&&(W=W.toString(l),(!l||l==="utf8")&&(W=Re.stripBOM(W))),Z.data=W}catch(W){return s(mt.from(W,null,t,Z.request,Z))}LA(n,s,Z)})}m.once("abort",de=>{le.destroyed||(le.emit("error",de),le.destroy())})}),m.once("abort",K=>{s(K),p.destroy(K)}),p.on("error",function(ee){s(mt.from(ee,null,t,p))}),p.on("socket",function(ee){ee.setKeepAlive(!0,1e3*60)}),t.timeout){let K=parseInt(t.timeout,10);if(Number.isNaN(K)){s(new mt("error trying to parse `config.timeout` to int",mt.ERR_BAD_OPTION_VALUE,t,p));return}p.setTimeout(K,function(){if(f)return;let z=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",oe=t.transitional||tR;t.timeoutErrorMessage&&(z=t.timeoutErrorMessage),s(new mt(z,oe.clarifyTimeoutError?mt.ETIMEDOUT:mt.ECONNABORTED,t,p)),g()})}if(Re.isStream(a)){let K=!1,ee=!1;a.on("end",()=>{K=!0}),a.once("error",z=>{ee=!0,p.destroy(z)}),a.on("close",()=>{!K&&!ee&&g(new Kf("Request stream has been aborted",t,p))}),a.pipe(p)}else p.end(a)})}});var Wet,Xet=ae(()=>{ni();DA();Wet=_a.hasStandardBrowserEnv?{write(e,t,r,n,s,i){let a=[e+"="+encodeURIComponent(t)];Re.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),Re.isString(n)&&a.push("path="+n),Re.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){let t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}}});var Jet,Zet=ae(()=>{"use strict";ni();DA();Jet=_a.hasStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return t&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=s(window.location.href),function(a){let o=Re.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}()});function ett(e,t){let r=0,n=N$(50,250);return s=>{let i=s.loaded,a=s.lengthComputable?s.total:void 0,o=i-r,c=n(o),u=i<=a;r=i;let l={loaded:i,total:a,progress:a?i/a:void 0,bytes:o,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:s};l[t?"download":"upload"]=!0,e(l)}}var tFr,ttt,rtt=ae(()=>{"use strict";ni();Bue();Xet();E$();b$();Zet();y$();Vf();sR();nle();DA();PA();ile();tFr=typeof XMLHttpRequest<"u",ttt=tFr&&function(e){return new Promise(function(r,n){let s=e.data,i=Aa.from(e.headers).normalize(),{responseType:a,withXSRFToken:o}=e,c;function u(){e.cancelToken&&e.cancelToken.unsubscribe(c),e.signal&&e.signal.removeEventListener("abort",c)}let l;if(Re.isFormData(s)){if(_a.hasStandardBrowserEnv||_a.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[m,..._]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([m||"multipart/form-data",..._].join("; "))}}let d=new XMLHttpRequest;if(e.auth){let m=e.auth.username||"",_=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(m+":"+_))}let f=Qv(e.baseURL,e.url);d.open(e.method.toUpperCase(),Yv(f,e.params,e.paramsSerializer),!0),d.timeout=e.timeout;function h(){if(!d)return;let m=Aa.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:m,config:e,request:d};LA(function(A){r(A),u()},function(A){n(A),u()},g),d=null}if("onloadend"in d?d.onloadend=h:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(h)},d.onabort=function(){d&&(n(new mt("Request aborted",mt.ECONNABORTED,e,d)),d=null)},d.onerror=function(){n(new mt("Network Error",mt.ERR_NETWORK,e,d)),d=null},d.ontimeout=function(){let _=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",g=e.transitional||tR;e.timeoutErrorMessage&&(_=e.timeoutErrorMessage),n(new mt(_,g.clarifyTimeoutError?mt.ETIMEDOUT:mt.ECONNABORTED,e,d)),d=null},_a.hasStandardBrowserEnv&&(o&&Re.isFunction(o)&&(o=o(e)),o||o!==!1&&Jet(f))){let m=e.xsrfHeaderName&&e.xsrfCookieName&&Wet.read(e.xsrfCookieName);m&&i.set(e.xsrfHeaderName,m)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&Re.forEach(i.toJSON(),function(_,g){d.setRequestHeader(g,_)}),Re.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),a&&a!=="json"&&(d.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&d.addEventListener("progress",ett(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",ett(e.onUploadProgress)),(e.cancelToken||e.signal)&&(c=m=>{d&&(n(!m||m.type?new Kf(null,e,d):m),d.abort(),d=null)},e.cancelToken&&e.cancelToken.subscribe(c),e.signal&&(e.signal.aborted?c():e.signal.addEventListener("abort",c)));let p=zD(f);if(p&&_a.protocols.indexOf(p)===-1){n(new mt("Unsupported protocol "+p+":",mt.ERR_BAD_REQUEST,e));return}d.send(s||null)})}});var dle,ntt,rFr,P$,fle=ae(()=>{ni();Qet();rtt();Vf();dle={http:Yet,xhr:ttt};Re.forEach(dle,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});ntt=e=>`- ${e}`,rFr=e=>Re.isFunction(e)||e===null||e===!1,P$={getAdapter:e=>{e=Re.isArray(e)?e:[e];let{length:t}=e,r,n,s={};for(let i=0;i`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build")),a=t?i.length>1?`since : -`+i.map(ntt).join(` -`):" "+ntt(i[0]):"as no adapter specified";throw new mt("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:dle}});function hle(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Kf(null,e)}function L$(e){return hle(e),e.headers=Aa.from(e.headers),e.data=qD.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),P$.getAdapter(e.adapter||rR.adapter)(e).then(function(n){return hle(e),n.data=qD.call(e,e.transformResponse,n),n.headers=Aa.from(n.headers),n},function(n){return HD(n)||(hle(e),n&&n.response&&(n.response.data=qD.call(e,e.transformResponse,n.response),n.response.headers=Aa.from(n.response.headers))),Promise.reject(n)})}var stt=ae(()=>{"use strict";WZe();kue();S$();sR();PA();fle()});function Rm(e,t){t=t||{};let r={};function n(u,l,d){return Re.isPlainObject(u)&&Re.isPlainObject(l)?Re.merge.call({caseless:d},u,l):Re.isPlainObject(l)?Re.merge({},l):Re.isArray(l)?l.slice():l}function s(u,l,d){if(Re.isUndefined(l)){if(!Re.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!Re.isUndefined(l))return n(void 0,l)}function a(u,l){if(Re.isUndefined(l)){if(!Re.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in t)return n(u,l);if(d in e)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(u,l)=>s(itt(u),itt(l),!0)};return Re.forEach(Object.keys(Object.assign({},e,t)),function(l){let d=c[l]||s,f=d(e[l],t[l],l);Re.isUndefined(f)&&d!==o||(r[l]=f)}),r}var itt,ple=ae(()=>{"use strict";ni();PA();itt=e=>e instanceof Aa?e.toJSON():e});function nFr(e,t,r){if(typeof e!="object")throw new mt("options must be an object",mt.ERR_BAD_OPTION_VALUE);let n=Object.keys(e),s=n.length;for(;s-- >0;){let i=n[s],a=t[i];if(a){let o=e[i],c=o===void 0||a(o,i,e);if(c!==!0)throw new mt("option "+i+" must be "+c,mt.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new mt("Unknown option "+i,mt.ERR_BAD_OPTION)}}var mle,att,M$,ott=ae(()=>{"use strict";w$();Vf();mle={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{mle[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});att={};mle.transitional=function(t,r,n){function s(i,a){return"[Axios v"+Zv+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(t===!1)throw new mt(s(a," has been removed"+(r?" in "+r:"")),mt.ERR_DEPRECATED);return r&&!att[a]&&(att[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,a,o):!0}};M$={assertOptions:nFr,validators:mle}});var BA,uR,QD,ctt=ae(()=>{"use strict";ni();E$();UZe();stt();ple();b$();ott();PA();BA=M$.validators,uR=class{constructor(t){this.defaults=t,this.interceptors={request:new Nue,response:new Nue}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=` -`+i):n.stack=i}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=Rm(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&M$.assertOptions(n,{silentJSONParsing:BA.transitional(BA.boolean),forcedJSONParsing:BA.transitional(BA.boolean),clarifyTimeoutError:BA.transitional(BA.boolean)},!1),s!=null&&(Re.isFunction(s)?r.paramsSerializer={serialize:s}:M$.assertOptions(s,{encode:BA.function,serialize:BA.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&Re.merge(i.common,i[r.method]);i&&Re.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),r.headers=Aa.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(r)===!1||(c=c&&m.synchronous,o.unshift(m.fulfilled,m.rejected))});let u=[];this.interceptors.response.forEach(function(m){u.push(m.fulfilled,m.rejected)});let l,d=0,f;if(!c){let p=[L$.bind(this),void 0];for(p.unshift.apply(p,o),p.push.apply(p,u),f=p.length,l=Promise.resolve(r);d{"use strict";sR();gle=class e{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});let n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i,a=new Promise(o=>{n.subscribe(o),i=o}).then(s);return a.cancel=function(){n.unsubscribe(i)},a},t(function(i,a,o){n.reason||(n.reason=new Kf(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new e(function(s){t=s}),cancel:t}}},utt=gle});function _le(e){return function(r){return e.apply(null,r)}}var dtt=ae(()=>{"use strict"});function Ale(e){return Re.isObject(e)&&e.isAxiosError===!0}var ftt=ae(()=>{"use strict";ni()});var Ele,htt,ptt=ae(()=>{Ele={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ele).forEach(([e,t])=>{Ele[t]=e});htt=Ele});function mtt(e){let t=new QD(e),r=OD(QD.prototype.request,t);return Re.extend(r,QD.prototype,t,{allOwnKeys:!0}),Re.extend(r,t,null,{allOwnKeys:!0}),r.create=function(s){return mtt(Rm(e,s))},r}var na,ve,gtt=ae(()=>{"use strict";ni();rue();ctt();ple();S$();Pue();sR();ltt();kue();w$();FD();Vf();dtt();ftt();PA();fle();ptt();na=mtt(rR);na.Axios=QD;na.CanceledError=Kf;na.CancelToken=utt;na.isCancel=HD;na.VERSION=Zv;na.toFormData=OA;na.AxiosError=mt;na.Cancel=na.CanceledError;na.all=function(t){return Promise.all(t)};na.spread=_le;na.isAxiosError=Ale;na.mergeConfig=Rm;na.AxiosHeaders=Aa;na.formToJSON=e=>v$(Re.isHTMLForm(e)?new FormData(e):e);na.getAdapter=P$.getAdapter;na.HttpStatusCode=htt;na.default=na;ve=na});var YQn,QQn,WQn,XQn,JQn,ZQn,eWn,tWn,rWn,nWn,sWn,iWn,aWn,oWn,cWn,uWn,Pr=ae(()=>{gtt();({Axios:YQn,AxiosError:QQn,CanceledError:WQn,isCancel:XQn,CancelToken:JQn,VERSION:ZQn,all:eWn,Cancel:tWn,isAxiosError:rWn,spread:nWn,toFormData:sWn,AxiosHeaders:iWn,HttpStatusCode:aWn,formToJSON:oWn,getAdapter:cWn,mergeConfig:uWn}=ve)});var yle,gt,sa=ae(()=>{yle=class{constructor(t=100,r=5*60*1e3){this.maxSize=t,this.ttl=r,this.cache=new Map}get(t){let r=this.cache.get(t);return r?Date.now()-r.timestamp>this.ttl?(this.cache.delete(t),null):(this.cache.delete(t),this.cache.set(t,r),r.value):null}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){let n=this.cache.keys().next().value;n!==void 0&&this.cache.delete(n)}this.cache.set(t,{value:r,timestamp:Date.now()})}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}cleanup(){let t=Date.now(),r=0;for(let[n,s]of this.cache.entries())t-s.timestamp>this.ttl&&(this.cache.delete(n),r++);return r}getStats(){return{size:this.cache.size,maxSize:this.maxSize,ttl:this.ttl,utilizationRate:(this.cache.size/this.maxSize*100).toFixed(2)+"%"}}*entries(){let t=Date.now();for(let[r,n]of[...this.cache.entries()]){if(t-n.timestamp>this.ttl){this.cache.delete(r);continue}yield[r,n.value]}}},gt=yle});function tS(e){if(!e)return String(e);let t=e.name||"Error",r=e.code,n=e.message||"",s=e.config||{},i=s.url||e.request?._currentUrl||e.request?._options?.path,a=(s.method||"GET").toUpperCase(),o=s.timeout,c=e.response?.status;if(!e.config&&!e.response&&!e.request)return r?`${t}: ${n} (code=${r})`:`${t}: ${n}`;let u=[`${t}: ${n}`];return r&&u.push(`code=${r}`),c!==void 0&&u.push(`status=${c}`),o!==void 0&&u.push(`timeout=${o}ms`),i&&u.push(`${a} ${i}`),u.join(" | ")}var mFr,De,xm=ae(()=>{mFr={info:(...e)=>console.log(...e),warn:(...e)=>console.warn(...e),error:(...e)=>console.error(...e),debug:(...e)=>{process.env.DEBUG&&console.log(...e)}},De=mFr});var Dtt=S((TWn,Ott)=>{var fR=1e3,hR=fR*60,pR=hR*60,rS=pR*24,SFr=rS*7,TFr=rS*365.25;Ott.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return bFr(e);if(r==="number"&&isFinite(e))return t.long?RFr(e):IFr(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function bFr(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*TFr;case"weeks":case"week":case"w":return r*SFr;case"days":case"day":case"d":return r*rS;case"hours":case"hour":case"hrs":case"hr":case"h":return r*pR;case"minutes":case"minute":case"mins":case"min":case"m":return r*hR;case"seconds":case"second":case"secs":case"sec":case"s":return r*fR;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function IFr(e){var t=Math.abs(e);return t>=rS?Math.round(e/rS)+"d":t>=pR?Math.round(e/pR)+"h":t>=hR?Math.round(e/hR)+"m":t>=fR?Math.round(e/fR)+"s":e+"ms"}function RFr(e){var t=Math.abs(e);return t>=rS?F$(e,t,rS,"day"):t>=pR?F$(e,t,pR,"hour"):t>=hR?F$(e,t,hR,"minute"):t>=fR?F$(e,t,fR,"second"):e+" ms"}function F$(e,t,r,n){var s=t>=r*1.5;return Math.round(e/r)+" "+n+(s?"s":"")}});var wle=S((bWn,Ptt)=>{function CFr(e){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=Dtt(),r.destroy=u,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let d=0;for(let f=0;f{if(b==="%%")return"%";E++;let T=r.formatters[I];if(typeof T=="function"){let x=_[E];b=T.call(g,x),_.splice(E,1),E--}return b}),r.formatArgs.call(g,_),(g.log||r.log).apply(g,_)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(h!==r.namespaces&&(h=r.namespaces,p=r.enabled(l)),p),set:_=>{f=_}}),typeof r.init=="function"&&r.init(m),m}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,h=0,p=-1,m=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(i(l,d))return!1;for(let d of r.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Ptt.exports=CFr});var Ltt=S((ku,$$)=>{ku.formatArgs=wFr;ku.save=NFr;ku.load=OFr;ku.useColors=xFr;ku.storage=DFr();ku.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();ku.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function xFr(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function wFr(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+$$.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),e.splice(n,0,t)}ku.log=console.debug||console.log||(()=>{});function NFr(e){try{e?ku.storage.setItem("debug",e):ku.storage.removeItem("debug")}catch{}}function OFr(){let e;try{e=ku.storage.getItem("debug")||ku.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function DFr(){try{return localStorage}catch{}}$$.exports=wle()(ku);var{formatters:PFr}=$$.exports;PFr.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var ktt=S((Ua,H$)=>{var LFr=require("tty"),q$=require("util");Ua.init=qFr;Ua.log=UFr;Ua.formatArgs=kFr;Ua.save=FFr;Ua.load=$Fr;Ua.useColors=MFr;Ua.destroy=q$.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ua.colors=[6,2,3,4,5,1];try{let e=Vue();e&&(e.stderr||e).level>=2&&(Ua.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ua.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function MFr(){return"colors"in Ua.inspectOpts?!!Ua.inspectOpts.colors:LFr.isatty(process.stderr.fd)}function kFr(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${t} \x1B[0m`;e[0]=i+e[0].split(` -`).join(` -`+i),e.push(s+"m+"+H$.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=BFr()+t+" "+e[0]}function BFr(){return Ua.inspectOpts.hideDate?"":new Date().toISOString()+" "}function UFr(...e){return process.stderr.write(q$.formatWithOptions(Ua.inspectOpts,...e)+` -`)}function FFr(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function $Fr(){return process.env.DEBUG}function qFr(e){e.inspectOpts={};let t=Object.keys(Ua.inspectOpts);for(let r=0;rt.trim()).join(" ")};Mtt.O=function(e){return this.inspectOpts.colors=this.useColors,q$.inspect(e,this.inspectOpts)}});var Ole=S((IWn,Nle)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Nle.exports=Ltt():Nle.exports=ktt()});var Ftt=S(Bu=>{"use strict";var HFr=Bu&&Bu.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),VFr=Bu&&Bu.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Btt=Bu&&Bu.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&HFr(t,e,r);return VFr(t,e),t};Object.defineProperty(Bu,"__esModule",{value:!0});Bu.req=Bu.json=Bu.toBuffer=void 0;var jFr=Btt(require("http")),KFr=Btt(require("https"));async function Utt(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}Bu.toBuffer=Utt;async function GFr(e){let r=(await Utt(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}Bu.json=GFr;function zFr(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?KFr:jFr).request(e,t),s=new Promise((i,a)=>{n.once("response",i).once("error",a).end()});return n.then=s.then.bind(s),n}Bu.req=zFr});var Vtt=S(Il=>{"use strict";var qtt=Il&&Il.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YFr=Il&&Il.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Htt=Il&&Il.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&qtt(t,e,r);return YFr(t,e),t},QFr=Il&&Il.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qtt(t,e,r)};Object.defineProperty(Il,"__esModule",{value:!0});Il.Agent=void 0;var WFr=Htt(require("net")),$tt=Htt(require("http")),XFr=require("https");QFr(Ftt(),Il);var Rh=Symbol("AgentBaseInternalState"),Dle=class extends $tt.Agent{constructor(t){super(t),this[Rh]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new WFr.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return this.isSecureEndpoint(t)?XFr.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},i=this.getName(s),a=this.incrementSockets(i);Promise.resolve().then(()=>this.connect(t,s)).then(o=>{if(this.decrementSockets(i,a),o instanceof $tt.Agent)try{return o.addRequest(t,s)}catch(c){return n(c)}this[Rh].currentSocket=o,super.createSocket(t,r,n)},o=>{this.decrementSockets(i,a),n(o)})}createConnection(){let t=this[Rh].currentSocket;if(this[Rh].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[Rh].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[Rh]&&(this[Rh].defaultPort=t)}get protocol(){return this[Rh].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[Rh]&&(this[Rh].protocol=t)}};Il.Agent=Dle});var jtt=S(mR=>{"use strict";var JFr=mR&&mR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mR,"__esModule",{value:!0});mR.parseProxyResponse=void 0;var ZFr=JFr(Ole()),V$=(0,ZFr.default)("https-proxy-agent:parse-proxy-response");function e6r(e){return new Promise((t,r)=>{let n=0,s=[];function i(){let l=e.read();l?u(l):e.once("readable",i)}function a(){e.removeListener("end",o),e.removeListener("error",c),e.removeListener("readable",i)}function o(){a(),V$("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function c(l){a(),V$("onerror %o",l),r(l)}function u(l){s.push(l),n+=l.length;let d=Buffer.concat(s,n),f=d.indexOf(`\r -\r -`);if(f===-1){V$("have not received end of HTTP headers yet..."),i();return}let h=d.slice(0,f).toString("ascii").split(`\r -`),p=h.shift();if(!p)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let m=p.split(" "),_=+m[1],g=m.slice(2).join(" "),y={};for(let A of h){if(!A)continue;let E=A.indexOf(":");if(E===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${A}"`));let v=A.slice(0,E).toLowerCase(),b=A.slice(E+1).trimStart(),I=y[v];typeof I=="string"?y[v]=[I,b]:Array.isArray(I)?I.push(b):y[v]=b}V$("got proxy server response: %o %o",p,y),a(),t({connect:{statusCode:_,statusText:g,headers:y},buffered:d})}e.on("error",c),e.on("end",o),i()})}mR.parseProxyResponse=e6r});var Wtt=S(Nd=>{"use strict";var t6r=Nd&&Nd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),r6r=Nd&&Nd.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ytt=Nd&&Nd.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&t6r(t,e,r);return r6r(t,e),t},Qtt=Nd&&Nd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Nd,"__esModule",{value:!0});Nd.HttpsProxyAgent=void 0;var j$=Ytt(require("net")),Ktt=Ytt(require("tls")),n6r=Qtt(require("assert")),s6r=Qtt(Ole()),i6r=Vtt(),a6r=require("url"),o6r=jtt(),XD=(0,s6r.default)("https-proxy-agent"),Gtt=e=>e.servername===void 0&&e.host&&!j$.isIP(e.host)?{...e,servername:e.host}:e,K$=class extends i6r.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new a6r.URL(t):t,this.proxyHeaders=r?.headers??{},XD("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?ztt(r,"headers"):null,host:n,port:s}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(XD("Creating `tls.Socket`: %o",this.connectOpts),s=Ktt.connect(Gtt(this.connectOpts))):(XD("Creating `net.Socket`: %o",this.connectOpts),s=j$.connect(this.connectOpts));let i=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=j$.isIPv6(r.host)?`[${r.host}]`:r.host,o=`CONNECT ${a}:${r.port} HTTP/1.1\r -`;if(n.username||n.password){let f=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;i["Proxy-Authorization"]=`Basic ${Buffer.from(f).toString("base64")}`}i.Host=`${a}:${r.port}`,i["Proxy-Connection"]||(i["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let f of Object.keys(i))o+=`${f}: ${i[f]}\r -`;let c=(0,o6r.parseProxyResponse)(s);s.write(`${o}\r -`);let{connect:u,buffered:l}=await c;if(t.emit("proxyConnect",u),this.emit("proxyConnect",u,t),u.statusCode===200)return t.once("socket",c6r),r.secureEndpoint?(XD("Upgrading socket connection to TLS"),Ktt.connect({...ztt(Gtt(r),"host","path","port"),socket:s})):s;s.destroy();let d=new j$.Socket({writable:!1});return d.readable=!0,t.once("socket",f=>{XD("Replaying proxy buffer for failed request"),(0,n6r.default)(f.listenerCount("data")>0),f.push(l),f.push(null)}),d}};K$.protocols=["http","https"];Nd.HttpsProxyAgent=K$;function c6r(e){e.resume()}function ztt(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var Xtt=S((NWn,u6r)=>{u6r.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var rrt=S((OWn,wm)=>{var Ple=require("fs"),G$=require("path"),l6r=require("os"),d6r=require("crypto"),f6r=Xtt(),Lle=f6r.version,h6r=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function p6r(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` -`);let n;for(;(n=h6r.exec(r))!=null;){let s=n[1],i=n[2]||"";i=i.trim();let a=i[0];i=i.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),a==='"'&&(i=i.replace(/\\n/g,` -`),i=i.replace(/\\r/g,"\r")),t[s]=i}return t}function m6r(e){e=e||{};let t=trt(e);e.path=t;let r=Ea.configDotenv(e);if(!r.parsed){let a=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw a.code="MISSING_DATA",a}let n=ert(e).split(","),s=n.length,i;for(let a=0;a=s)throw o}return Ea.parse(i)}function g6r(e){console.log(`[dotenv@${Lle}][WARN] ${e}`)}function JD(e){console.log(`[dotenv@${Lle}][DEBUG] ${e}`)}function Ztt(e){console.log(`[dotenv@${Lle}] ${e}`)}function ert(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function _6r(e,t){let r;try{r=new URL(t)}catch(o){if(o.code==="ERR_INVALID_URL"){let c=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw c.code="INVALID_DOTENV_KEY",c}throw o}let n=r.password;if(!n){let o=new Error("INVALID_DOTENV_KEY: Missing key part");throw o.code="INVALID_DOTENV_KEY",o}let s=r.searchParams.get("environment");if(!s){let o=new Error("INVALID_DOTENV_KEY: Missing environment part");throw o.code="INVALID_DOTENV_KEY",o}let i=`DOTENV_VAULT_${s.toUpperCase()}`,a=e.parsed[i];if(!a){let o=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw o.code="NOT_FOUND_DOTENV_ENVIRONMENT",o}return{ciphertext:a,key:n}}function trt(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)Ple.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=G$.resolve(process.cwd(),".env.vault");return Ple.existsSync(t)?t:null}function Jtt(e){return e[0]==="~"?G$.join(l6r.homedir(),e.slice(1)):e}function A6r(e){let t=!!(e&&e.debug),r=e&&"quiet"in e?e.quiet:!0;(t||!r)&&Ztt("Loading env from encrypted .env.vault");let n=Ea._parseVault(e),s=process.env;return e&&e.processEnv!=null&&(s=e.processEnv),Ea.populate(s,n,e),{parsed:n}}function E6r(e){let t=G$.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug),s=e&&"quiet"in e?e.quiet:!0;e&&e.encoding?r=e.encoding:n&&JD("No encoding is specified. UTF-8 is used by default");let i=[t];if(e&&e.path)if(!Array.isArray(e.path))i=[Jtt(e.path)];else{i=[];for(let u of e.path)i.push(Jtt(u))}let a,o={};for(let u of i)try{let l=Ea.parse(Ple.readFileSync(u,{encoding:r}));Ea.populate(o,l,e)}catch(l){n&&JD(`Failed to load ${u} ${l.message}`),a=l}let c=process.env;if(e&&e.processEnv!=null&&(c=e.processEnv),Ea.populate(c,o,e),n||!s){let u=Object.keys(o).length,l=[];for(let d of i)try{let f=G$.relative(process.cwd(),d);l.push(f)}catch(f){n&&JD(`Failed to load ${d} ${f.message}`),a=f}Ztt(`injecting env (${u}) from ${l.join(",")}`)}return a?{parsed:o,error:a}:{parsed:o}}function y6r(e){if(ert(e).length===0)return Ea.configDotenv(e);let t=trt(e);return t?Ea._configVault(e):(g6r(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),Ea.configDotenv(e))}function v6r(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),s=n.subarray(0,12),i=n.subarray(-16);n=n.subarray(12,-16);try{let a=d6r.createDecipheriv("aes-256-gcm",r,s);return a.setAuthTag(i),`${a.update(n)}${a.final()}`}catch(a){let o=a instanceof RangeError,c=a.message==="Invalid key length",u=a.message==="Unsupported state or unable to authenticate data";if(o||c){let l=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw l.code="INVALID_DOTENV_KEY",l}else if(u){let l=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw l.code="DECRYPTION_FAILED",l}else throw a}}function S6r(e,t,r={}){let n=!!(r&&r.debug),s=!!(r&&r.override);if(typeof t!="object"){let i=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw i.code="OBJECT_REQUIRED",i}for(let i of Object.keys(t))Object.prototype.hasOwnProperty.call(e,i)?(s===!0&&(e[i]=t[i]),n&&JD(s===!0?`"${i}" is already defined and WAS overwritten`:`"${i}" is already defined and was NOT overwritten`)):e[i]=t[i]}var Ea={configDotenv:E6r,_configVault:A6r,_parseVault:m6r,config:y6r,decrypt:v6r,parse:p6r,populate:S6r};wm.exports.configDotenv=Ea.configDotenv;wm.exports._configVault=Ea._configVault;wm.exports._parseVault=Ea._parseVault;wm.exports.config=Ea.config;wm.exports.decrypt=Ea.decrypt;wm.exports.parse=Ea.parse;wm.exports.populate=Ea.populate;wm.exports=Ea});function T6r(e){if(!/^data:/i.test(e))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');e=e.replace(/\r?\n/g,"");let t=e.indexOf(",");if(t===-1||t<=4)throw new TypeError("malformed data: URI");let r=e.substring(5,t).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l{nrt=T6r});var art=S((z$,irt)=>{(function(e,t){typeof z$=="object"&&typeof irt<"u"?t(z$):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.WebStreamsPolyfill={}))})(z$,function(e){"use strict";function t(){}function r(C){return typeof C=="object"&&C!==null||typeof C=="function"}let n=t;function s(C,O){try{Object.defineProperty(C,"name",{value:O,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(C){return new i(C)}function u(C){return c(O=>O(C))}function l(C){return o(C)}function d(C,O,V){return a.call(C,O,V)}function f(C,O,V){d(d(C,O,V),void 0,n)}function h(C,O){f(C,O)}function p(C,O){f(C,void 0,O)}function m(C,O,V){return d(C,O,V)}function _(C){d(C,void 0,n)}let g=C=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let O=u(void 0);g=V=>d(O,V)}return g(C)};function y(C,O,V){if(typeof C!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(C,O,V)}function A(C,O,V){try{return u(y(C,O,V))}catch(fe){return l(fe)}}let E=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(O){let V=this._back,fe=V;V._elements.length===E-1&&(fe={_elements:[],_next:void 0}),V._elements.push(O),fe!==V&&(this._back=fe,V._next=fe),++this._size}shift(){let O=this._front,V=O,fe=this._cursor,ye=fe+1,Oe=O._elements,Ue=Oe[fe];return ye===E&&(V=O._next,ye=0),--this._size,this._cursor=ye,O!==V&&(this._front=V),Oe[fe]=void 0,Ue}forEach(O){let V=this._cursor,fe=this._front,ye=fe._elements;for(;(V!==ye.length||fe._next!==void 0)&&!(V===ye.length&&(fe=fe._next,ye=fe._elements,V=0,ye.length===0));)O(ye[V]),++V}peek(){let O=this._front,V=this._cursor;return O._elements[V]}}let b=Symbol("[[AbortSteps]]"),I=Symbol("[[ErrorSteps]]"),T=Symbol("[[CancelSteps]]"),x=Symbol("[[PullSteps]]"),w=Symbol("[[ReleaseSteps]]");function D(C,O){C._ownerReadableStream=O,O._reader=C,O._state==="readable"?G(C):O._state==="closed"?K(C):$(C,O._storedError)}function M(C,O){let V=C._ownerReadableStream;return Tf(V,O)}function L(C){let O=C._ownerReadableStream;O._state==="readable"?ee(C,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):z(C,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),O._readableStreamController[w](),O._reader=void 0,C._ownerReadableStream=void 0}function U(C){return new TypeError("Cannot "+C+" a stream using a released reader")}function G(C){C._closedPromise=c((O,V)=>{C._closedPromise_resolve=O,C._closedPromise_reject=V})}function $(C,O){G(C),ee(C,O)}function K(C){G(C),oe(C)}function ee(C,O){C._closedPromise_reject!==void 0&&(_(C._closedPromise),C._closedPromise_reject(O),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0)}function z(C,O){$(C,O)}function oe(C){C._closedPromise_resolve!==void 0&&(C._closedPromise_resolve(void 0),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0)}let le=Number.isFinite||function(C){return typeof C=="number"&&isFinite(C)},te=Math.trunc||function(C){return C<0?Math.ceil(C):Math.floor(C)};function Q(C){return typeof C=="object"||typeof C=="function"}function Z(C,O){if(C!==void 0&&!Q(C))throw new TypeError(`${O} is not an object.`)}function de(C,O){if(typeof C!="function")throw new TypeError(`${O} is not a function.`)}function B(C){return typeof C=="object"&&C!==null||typeof C=="function"}function k(C,O){if(!B(C))throw new TypeError(`${O} is not an object.`)}function W(C,O,V){if(C===void 0)throw new TypeError(`Parameter ${O} is required in '${V}'.`)}function P(C,O,V){if(C===void 0)throw new TypeError(`${O} is required in '${V}'.`)}function H(C){return Number(C)}function j(C){return C===0?0:C}function q(C){return j(te(C))}function Y(C,O){let fe=Number.MAX_SAFE_INTEGER,ye=Number(C);if(ye=j(ye),!le(ye))throw new TypeError(`${O} is not a finite number`);if(ye=q(ye),ye<0||ye>fe)throw new TypeError(`${O} is outside the accepted range of 0 to ${fe}, inclusive`);return!le(ye)||ye===0?0:ye}function X(C,O){if(!$_(C))throw new TypeError(`${O} is not a ReadableStream.`)}function ie(C){return new ge(C)}function ne(C,O){C._reader._readRequests.push(O)}function se(C,O,V){let ye=C._reader._readRequests.shift();V?ye._closeSteps():ye._chunkSteps(O)}function J(C){return C._reader._readRequests.length}function ce(C){let O=C._reader;return!(O===void 0||!be(O))}class ge{constructor(O){if(W(O,1,"ReadableStreamDefaultReader"),X(O,"First parameter"),q_(O))throw new TypeError("This stream has already been locked for exclusive reading by another reader");D(this,O),this._readRequests=new v}get closed(){return be(this)?this._closedPromise:l(Ee("closed"))}cancel(O=void 0){return be(this)?this._ownerReadableStream===void 0?l(U("cancel")):M(this,O):l(Ee("cancel"))}read(){if(!be(this))return l(Ee("read"));if(this._ownerReadableStream===void 0)return l(U("read from"));let O,V,fe=c((Oe,Ue)=>{O=Oe,V=Ue});return Te(this,{_chunkSteps:Oe=>O({value:Oe,done:!1}),_closeSteps:()=>O({value:void 0,done:!0}),_errorSteps:Oe=>V(Oe)}),fe}releaseLock(){if(!be(this))throw Ee("releaseLock");this._ownerReadableStream!==void 0&&xe(this)}}Object.defineProperties(ge.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(ge.prototype.cancel,"cancel"),s(ge.prototype.read,"read"),s(ge.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ge.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function be(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_readRequests")?!1:C instanceof ge}function Te(C,O){let V=C._ownerReadableStream;V._disturbed=!0,V._state==="closed"?O._closeSteps():V._state==="errored"?O._errorSteps(V._storedError):V._readableStreamController[x](O)}function xe(C){L(C);let O=new TypeError("Reader was released");Fe(C,O)}function Fe(C,O){let V=C._readRequests;C._readRequests=new v,V.forEach(fe=>{fe._errorSteps(O)})}function Ee(C){return new TypeError(`ReadableStreamDefaultReader.prototype.${C} can only be used on a ReadableStreamDefaultReader`)}let me=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class Ae{constructor(O,V){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=O,this._preventCancel=V}next(){let O=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?m(this._ongoingPromise,O,O):O(),this._ongoingPromise}return(O){let V=()=>this._returnSteps(O);return this._ongoingPromise?m(this._ongoingPromise,V,V):V()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let O=this._reader,V,fe,ye=c((Ue,ut)=>{V=Ue,fe=ut});return Te(O,{_chunkSteps:Ue=>{this._ongoingPromise=void 0,g(()=>V({value:Ue,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,L(O),V({value:void 0,done:!0})},_errorSteps:Ue=>{this._ongoingPromise=void 0,this._isFinished=!0,L(O),fe(Ue)}}),ye}_returnSteps(O){if(this._isFinished)return Promise.resolve({value:O,done:!0});this._isFinished=!0;let V=this._reader;if(!this._preventCancel){let fe=M(V,O);return L(V),m(fe,()=>({value:O,done:!0}))}return L(V),u({value:O,done:!0})}}let pe={next(){return Ie(this)?this._asyncIteratorImpl.next():l(Le("next"))},return(C){return Ie(this)?this._asyncIteratorImpl.return(C):l(Le("return"))}};Object.setPrototypeOf(pe,me);function Se(C,O){let V=ie(C),fe=new Ae(V,O),ye=Object.create(pe);return ye._asyncIteratorImpl=fe,ye}function Ie(C){if(!r(C)||!Object.prototype.hasOwnProperty.call(C,"_asyncIteratorImpl"))return!1;try{return C._asyncIteratorImpl instanceof Ae}catch{return!1}}function Le(C){return new TypeError(`ReadableStreamAsyncIterator.${C} can only be used on a ReadableSteamAsyncIterator`)}let we=Number.isNaN||function(C){return C!==C};var He,Ge,ke;function Qe(C){return C.slice()}function It(C,O,V,fe,ye){new Uint8Array(C).set(new Uint8Array(V,fe,ye),O)}let ze=C=>(typeof C.transfer=="function"?ze=O=>O.transfer():typeof structuredClone=="function"?ze=O=>structuredClone(O,{transfer:[O]}):ze=O=>O,ze(C)),ot=C=>(typeof C.detached=="boolean"?ot=O=>O.detached:ot=O=>O.byteLength===0,ot(C));function lt(C,O,V){if(C.slice)return C.slice(O,V);let fe=V-O,ye=new ArrayBuffer(fe);return It(ye,0,C,O,fe),ye}function _t(C,O){let V=C[O];if(V!=null){if(typeof V!="function")throw new TypeError(`${String(O)} is not a function`);return V}}function mr(C){let O={[Symbol.iterator]:()=>C.iterator},V=async function*(){return yield*O}(),fe=V.next;return{iterator:V,nextMethod:fe,done:!1}}let Ht=(ke=(He=Symbol.asyncIterator)!==null&&He!==void 0?He:(Ge=Symbol.for)===null||Ge===void 0?void 0:Ge.call(Symbol,"Symbol.asyncIterator"))!==null&&ke!==void 0?ke:"@@asyncIterator";function it(C,O="sync",V){if(V===void 0)if(O==="async"){if(V=_t(C,Ht),V===void 0){let Oe=_t(C,Symbol.iterator),Ue=it(C,"sync",Oe);return mr(Ue)}}else V=_t(C,Symbol.iterator);if(V===void 0)throw new TypeError("The object is not iterable");let fe=y(V,C,[]);if(!r(fe))throw new TypeError("The iterator method must return an object");let ye=fe.next;return{iterator:fe,nextMethod:ye,done:!1}}function yt(C){let O=y(C.nextMethod,C.iterator,[]);if(!r(O))throw new TypeError("The iterator.next() method must return an object");return O}function vs(C){return!!C.done}function kn(C){return C.value}function Ns(C){return!(typeof C!="number"||we(C)||C<0)}function qs(C){let O=lt(C.buffer,C.byteOffset,C.byteOffset+C.byteLength);return new Uint8Array(O)}function Bn(C){let O=C._queue.shift();return C._queueTotalSize-=O.size,C._queueTotalSize<0&&(C._queueTotalSize=0),O.value}function co(C,O,V){if(!Ns(V)||V===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");C._queue.push({value:O,size:V}),C._queueTotalSize+=V}function El(C){return C._queue.peek().value}function Po(C){C._queue=new v,C._queueTotalSize=0}function Gp(C){return C===DataView}function o1(C){return Gp(C.constructor)}function wU(C){return Gp(C)?1:C.BYTES_PER_ELEMENT}class W0{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Gy(this))throw ZJ("view");return this._view}respond(O){if(!Gy(this))throw ZJ("respond");if(W(O,1,"respond"),O=Y(O,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(ot(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");DU(this._associatedReadableByteStreamController,O)}respondWithNewView(O){if(!Gy(this))throw ZJ("respondWithNewView");if(W(O,1,"respondWithNewView"),!ArrayBuffer.isView(O))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(ot(O.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");PU(this._associatedReadableByteStreamController,O)}}Object.defineProperties(W0.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(W0.prototype.respond,"respond"),s(W0.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(W0.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class vf{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!yl(this))throw YN("byobRequest");return JJ(this)}get desiredSize(){if(!yl(this))throw YN("desiredSize");return oBe(this)}close(){if(!yl(this))throw YN("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let O=this._controlledReadableByteStream._state;if(O!=="readable")throw new TypeError(`The stream (in ${O} state) is not in the readable state and cannot be closed`);zN(this)}enqueue(O){if(!yl(this))throw YN("enqueue");if(W(O,1,"enqueue"),!ArrayBuffer.isView(O))throw new TypeError("chunk must be an array buffer view");if(O.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(O.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let V=this._controlledReadableByteStream._state;if(V!=="readable")throw new TypeError(`The stream (in ${V} state) is not in the readable state and cannot be enqueued to`);OU(this,O)}error(O=void 0){if(!yl(this))throw YN("error");id(this,O)}[T](O){zy(this),Po(this);let V=this._cancelAlgorithm(O);return NU(this),V}[x](O){let V=this._controlledReadableByteStream;if(this._queueTotalSize>0){aBe(this,O);return}let fe=this._autoAllocateChunkSize;if(fe!==void 0){let ye;try{ye=new ArrayBuffer(fe)}catch(Ue){O._errorSteps(Ue);return}let Oe={buffer:ye,bufferByteLength:fe,byteOffset:0,byteLength:fe,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(Oe)}ne(V,O),sd(this)}[w](){if(this._pendingPullIntos.length>0){let O=this._pendingPullIntos.peek();O.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(O)}}}Object.defineProperties(vf.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(vf.prototype.close,"close"),s(vf.prototype.enqueue,"enqueue"),s(vf.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vf.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function yl(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledReadableByteStream")?!1:C instanceof vf}function Gy(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_associatedReadableByteStreamController")?!1:C instanceof W0}function sd(C){if(!Mtr(C))return;if(C._pulling){C._pullAgain=!0;return}C._pulling=!0;let V=C._pullAlgorithm();f(V,()=>(C._pulling=!1,C._pullAgain&&(C._pullAgain=!1,sd(C)),null),fe=>(id(C,fe),null))}function zy(C){WJ(C),C._pendingPullIntos=new v}function c1(C,O){let V=!1;C._state==="closed"&&(V=!0);let fe=HN(O);O.readerType==="default"?se(C,fe,V):qtr(C,fe,V)}function HN(C){let O=C.bytesFilled,V=C.elementSize;return new C.viewConstructor(C.buffer,C.byteOffset,O/V)}function Yy(C,O,V,fe){C._queue.push({buffer:O,byteOffset:V,byteLength:fe}),C._queueTotalSize+=fe}function VN(C,O,V,fe){let ye;try{ye=lt(O,V,V+fe)}catch(Oe){throw id(C,Oe),Oe}Yy(C,ye,0,fe)}function jN(C,O){O.bytesFilled>0&&VN(C,O.buffer,O.byteOffset,O.bytesFilled),u1(C)}function KN(C,O){let V=Math.min(C._queueTotalSize,O.byteLength-O.bytesFilled),fe=O.bytesFilled+V,ye=V,Oe=!1,Ue=fe%O.elementSize,ut=fe-Ue;ut>=O.minimumFill&&(ye=ut-O.bytesFilled,Oe=!0);let Wt=C._queue;for(;ye>0;){let Lt=Wt.peek(),ur=Math.min(ye,Lt.byteLength),xr=O.byteOffset+O.bytesFilled;It(O.buffer,xr,Lt.buffer,Lt.byteOffset,ur),Lt.byteLength===ur?Wt.shift():(Lt.byteOffset+=ur,Lt.byteLength-=ur),C._queueTotalSize-=ur,GN(C,ur,O),ye-=ur}return Oe}function GN(C,O,V){V.bytesFilled+=O}function Qy(C){C._queueTotalSize===0&&C._closeRequested?(NU(C),eO(C._controlledReadableByteStream)):sd(C)}function WJ(C){C._byobRequest!==null&&(C._byobRequest._associatedReadableByteStreamController=void 0,C._byobRequest._view=null,C._byobRequest=null)}function XJ(C){for(;C._pendingPullIntos.length>0;){if(C._queueTotalSize===0)return;let O=C._pendingPullIntos.peek();KN(C,O)&&(u1(C),c1(C._controlledReadableByteStream,O))}}function Otr(C){let O=C._controlledReadableByteStream._reader;for(;O._readRequests.length>0;){if(C._queueTotalSize===0)return;let V=O._readRequests.shift();aBe(C,V)}}function Dtr(C,O,V,fe){let ye=C._controlledReadableByteStream,Oe=O.constructor,Ue=wU(Oe),{byteOffset:ut,byteLength:Wt}=O,Lt=V*Ue,ur;try{ur=ze(O.buffer)}catch(Ss){fe._errorSteps(Ss);return}let xr={buffer:ur,bufferByteLength:ur.byteLength,byteOffset:ut,byteLength:Wt,bytesFilled:0,minimumFill:Lt,elementSize:Ue,viewConstructor:Oe,readerType:"byob"};if(C._pendingPullIntos.length>0){C._pendingPullIntos.push(xr),lBe(ye,fe);return}if(ye._state==="closed"){let Ss=new Oe(xr.buffer,xr.byteOffset,0);fe._closeSteps(Ss);return}if(C._queueTotalSize>0){if(KN(C,xr)){let Ss=HN(xr);Qy(C),fe._chunkSteps(Ss);return}if(C._closeRequested){let Ss=new TypeError("Insufficient bytes to fill elements in the given buffer");id(C,Ss),fe._errorSteps(Ss);return}}C._pendingPullIntos.push(xr),lBe(ye,fe),sd(C)}function Ptr(C,O){O.readerType==="none"&&u1(C);let V=C._controlledReadableByteStream;if(eZ(V))for(;dBe(V)>0;){let fe=u1(C);c1(V,fe)}}function Ltr(C,O,V){if(GN(C,O,V),V.readerType==="none"){jN(C,V),XJ(C);return}if(V.bytesFilled0){let ye=V.byteOffset+V.bytesFilled;VN(C,V.buffer,ye-fe,fe)}V.bytesFilled-=fe,c1(C._controlledReadableByteStream,V),XJ(C)}function iBe(C,O){let V=C._pendingPullIntos.peek();WJ(C),C._controlledReadableByteStream._state==="closed"?Ptr(C,V):Ltr(C,O,V),sd(C)}function u1(C){return C._pendingPullIntos.shift()}function Mtr(C){let O=C._controlledReadableByteStream;return O._state!=="readable"||C._closeRequested||!C._started?!1:!!(ce(O)&&J(O)>0||eZ(O)&&dBe(O)>0||oBe(C)>0)}function NU(C){C._pullAlgorithm=void 0,C._cancelAlgorithm=void 0}function zN(C){let O=C._controlledReadableByteStream;if(!(C._closeRequested||O._state!=="readable")){if(C._queueTotalSize>0){C._closeRequested=!0;return}if(C._pendingPullIntos.length>0){let V=C._pendingPullIntos.peek();if(V.bytesFilled%V.elementSize!==0){let fe=new TypeError("Insufficient bytes to fill elements in the given buffer");throw id(C,fe),fe}}NU(C),eO(O)}}function OU(C,O){let V=C._controlledReadableByteStream;if(C._closeRequested||V._state!=="readable")return;let{buffer:fe,byteOffset:ye,byteLength:Oe}=O;if(ot(fe))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let Ue=ze(fe);if(C._pendingPullIntos.length>0){let ut=C._pendingPullIntos.peek();if(ot(ut.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");WJ(C),ut.buffer=ze(ut.buffer),ut.readerType==="none"&&jN(C,ut)}if(ce(V))if(Otr(C),J(V)===0)Yy(C,Ue,ye,Oe);else{C._pendingPullIntos.length>0&&u1(C);let ut=new Uint8Array(Ue,ye,Oe);se(V,ut,!1)}else eZ(V)?(Yy(C,Ue,ye,Oe),XJ(C)):Yy(C,Ue,ye,Oe);sd(C)}function id(C,O){let V=C._controlledReadableByteStream;V._state==="readable"&&(zy(C),Po(C),NU(C),MBe(V,O))}function aBe(C,O){let V=C._queue.shift();C._queueTotalSize-=V.byteLength,Qy(C);let fe=new Uint8Array(V.buffer,V.byteOffset,V.byteLength);O._chunkSteps(fe)}function JJ(C){if(C._byobRequest===null&&C._pendingPullIntos.length>0){let O=C._pendingPullIntos.peek(),V=new Uint8Array(O.buffer,O.byteOffset+O.bytesFilled,O.byteLength-O.bytesFilled),fe=Object.create(W0.prototype);Btr(fe,C,V),C._byobRequest=fe}return C._byobRequest}function oBe(C){let O=C._controlledReadableByteStream._state;return O==="errored"?null:O==="closed"?0:C._strategyHWM-C._queueTotalSize}function DU(C,O){let V=C._pendingPullIntos.peek();if(C._controlledReadableByteStream._state==="closed"){if(O!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(O===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(V.bytesFilled+O>V.byteLength)throw new RangeError("bytesWritten out of range")}V.buffer=ze(V.buffer),iBe(C,O)}function PU(C,O){let V=C._pendingPullIntos.peek();if(C._controlledReadableByteStream._state==="closed"){if(O.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(O.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(V.byteOffset+V.bytesFilled!==O.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(V.bufferByteLength!==O.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(V.bytesFilled+O.byteLength>V.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ye=O.byteLength;V.buffer=ze(O.buffer),iBe(C,ye)}function cBe(C,O,V,fe,ye,Oe,Ue){O._controlledReadableByteStream=C,O._pullAgain=!1,O._pulling=!1,O._byobRequest=null,O._queue=O._queueTotalSize=void 0,Po(O),O._closeRequested=!1,O._started=!1,O._strategyHWM=Oe,O._pullAlgorithm=fe,O._cancelAlgorithm=ye,O._autoAllocateChunkSize=Ue,O._pendingPullIntos=new v,C._readableStreamController=O;let ut=V();f(u(ut),()=>(O._started=!0,sd(O),null),Wt=>(id(O,Wt),null))}function ktr(C,O,V){let fe=Object.create(vf.prototype),ye,Oe,Ue;O.start!==void 0?ye=()=>O.start(fe):ye=()=>{},O.pull!==void 0?Oe=()=>O.pull(fe):Oe=()=>u(void 0),O.cancel!==void 0?Ue=Wt=>O.cancel(Wt):Ue=()=>u(void 0);let ut=O.autoAllocateChunkSize;if(ut===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");cBe(C,fe,ye,Oe,Ue,V,ut)}function Btr(C,O,V){C._associatedReadableByteStreamController=O,C._view=V}function ZJ(C){return new TypeError(`ReadableStreamBYOBRequest.prototype.${C} can only be used on a ReadableStreamBYOBRequest`)}function YN(C){return new TypeError(`ReadableByteStreamController.prototype.${C} can only be used on a ReadableByteStreamController`)}function Utr(C,O){Z(C,O);let V=C?.mode;return{mode:V===void 0?void 0:Ftr(V,`${O} has member 'mode' that`)}}function Ftr(C,O){if(C=`${C}`,C!=="byob")throw new TypeError(`${O} '${C}' is not a valid enumeration value for ReadableStreamReaderMode`);return C}function $tr(C,O){var V;Z(C,O);let fe=(V=C?.min)!==null&&V!==void 0?V:1;return{min:Y(fe,`${O} has member 'min' that`)}}function uBe(C){return new U_(C)}function lBe(C,O){C._reader._readIntoRequests.push(O)}function qtr(C,O,V){let ye=C._reader._readIntoRequests.shift();V?ye._closeSteps(O):ye._chunkSteps(O)}function dBe(C){return C._reader._readIntoRequests.length}function eZ(C){let O=C._reader;return!(O===void 0||!Wy(O))}class U_{constructor(O){if(W(O,1,"ReadableStreamBYOBReader"),X(O,"First parameter"),q_(O))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!yl(O._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");D(this,O),this._readIntoRequests=new v}get closed(){return Wy(this)?this._closedPromise:l(LU("closed"))}cancel(O=void 0){return Wy(this)?this._ownerReadableStream===void 0?l(U("cancel")):M(this,O):l(LU("cancel"))}read(O,V={}){if(!Wy(this))return l(LU("read"));if(!ArrayBuffer.isView(O))return l(new TypeError("view must be an array buffer view"));if(O.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(O.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(ot(O.buffer))return l(new TypeError("view's buffer has been detached"));let fe;try{fe=$tr(V,"options")}catch(Lt){return l(Lt)}let ye=fe.min;if(ye===0)return l(new TypeError("options.min must be greater than 0"));if(o1(O)){if(ye>O.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ye>O.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(U("read from"));let Oe,Ue,ut=c((Lt,ur)=>{Oe=Lt,Ue=ur});return fBe(this,O,ye,{_chunkSteps:Lt=>Oe({value:Lt,done:!1}),_closeSteps:Lt=>Oe({value:Lt,done:!0}),_errorSteps:Lt=>Ue(Lt)}),ut}releaseLock(){if(!Wy(this))throw LU("releaseLock");this._ownerReadableStream!==void 0&&Htr(this)}}Object.defineProperties(U_.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(U_.prototype.cancel,"cancel"),s(U_.prototype.read,"read"),s(U_.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(U_.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function Wy(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_readIntoRequests")?!1:C instanceof U_}function fBe(C,O,V,fe){let ye=C._ownerReadableStream;ye._disturbed=!0,ye._state==="errored"?fe._errorSteps(ye._storedError):Dtr(ye._readableStreamController,O,V,fe)}function Htr(C){L(C);let O=new TypeError("Reader was released");hBe(C,O)}function hBe(C,O){let V=C._readIntoRequests;C._readIntoRequests=new v,V.forEach(fe=>{fe._errorSteps(O)})}function LU(C){return new TypeError(`ReadableStreamBYOBReader.prototype.${C} can only be used on a ReadableStreamBYOBReader`)}function QN(C,O){let{highWaterMark:V}=C;if(V===void 0)return O;if(we(V)||V<0)throw new RangeError("Invalid highWaterMark");return V}function MU(C){let{size:O}=C;return O||(()=>1)}function kU(C,O){Z(C,O);let V=C?.highWaterMark,fe=C?.size;return{highWaterMark:V===void 0?void 0:H(V),size:fe===void 0?void 0:Vtr(fe,`${O} has member 'size' that`)}}function Vtr(C,O){return de(C,O),V=>H(C(V))}function jtr(C,O){Z(C,O);let V=C?.abort,fe=C?.close,ye=C?.start,Oe=C?.type,Ue=C?.write;return{abort:V===void 0?void 0:Ktr(V,C,`${O} has member 'abort' that`),close:fe===void 0?void 0:Gtr(fe,C,`${O} has member 'close' that`),start:ye===void 0?void 0:ztr(ye,C,`${O} has member 'start' that`),write:Ue===void 0?void 0:Ytr(Ue,C,`${O} has member 'write' that`),type:Oe}}function Ktr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function Gtr(C,O,V){return de(C,V),()=>A(C,O,[])}function ztr(C,O,V){return de(C,V),fe=>y(C,O,[fe])}function Ytr(C,O,V){return de(C,V),(fe,ye)=>A(C,O,[fe,ye])}function pBe(C,O){if(!l1(C))throw new TypeError(`${O} is not a WritableStream.`)}function Qtr(C){if(typeof C!="object"||C===null)return!1;try{return typeof C.aborted=="boolean"}catch{return!1}}let Wtr=typeof AbortController=="function";function Xtr(){if(Wtr)return new AbortController}class F_{constructor(O={},V={}){O===void 0?O=null:k(O,"First parameter");let fe=kU(V,"Second parameter"),ye=jtr(O,"First parameter");if(gBe(this),ye.type!==void 0)throw new RangeError("Invalid type is specified");let Ue=MU(fe),ut=QN(fe,1);drr(this,ye,ut,Ue)}get locked(){if(!l1(this))throw qU("locked");return d1(this)}abort(O=void 0){return l1(this)?d1(this)?l(new TypeError("Cannot abort a stream that already has a writer")):BU(this,O):l(qU("abort"))}close(){return l1(this)?d1(this)?l(new TypeError("Cannot close a stream that already has a writer")):X0(this)?l(new TypeError("Cannot close an already-closing stream")):_Be(this):l(qU("close"))}getWriter(){if(!l1(this))throw qU("getWriter");return mBe(this)}}Object.defineProperties(F_.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(F_.prototype.abort,"abort"),s(F_.prototype.close,"close"),s(F_.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(F_.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function mBe(C){return new zp(C)}function Jtr(C,O,V,fe,ye=1,Oe=()=>1){let Ue=Object.create(F_.prototype);gBe(Ue);let ut=Object.create(f1.prototype);return TBe(Ue,ut,C,O,V,fe,ye,Oe),Ue}function gBe(C){C._state="writable",C._storedError=void 0,C._writer=void 0,C._writableStreamController=void 0,C._writeRequests=new v,C._inFlightWriteRequest=void 0,C._closeRequest=void 0,C._inFlightCloseRequest=void 0,C._pendingAbortRequest=void 0,C._backpressure=!1}function l1(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_writableStreamController")?!1:C instanceof F_}function d1(C){return C._writer!==void 0}function BU(C,O){var V;if(C._state==="closed"||C._state==="errored")return u(void 0);C._writableStreamController._abortReason=O,(V=C._writableStreamController._abortController)===null||V===void 0||V.abort(O);let fe=C._state;if(fe==="closed"||fe==="errored")return u(void 0);if(C._pendingAbortRequest!==void 0)return C._pendingAbortRequest._promise;let ye=!1;fe==="erroring"&&(ye=!0,O=void 0);let Oe=c((Ue,ut)=>{C._pendingAbortRequest={_promise:void 0,_resolve:Ue,_reject:ut,_reason:O,_wasAlreadyErroring:ye}});return C._pendingAbortRequest._promise=Oe,ye||rZ(C,O),Oe}function _Be(C){let O=C._state;if(O==="closed"||O==="errored")return l(new TypeError(`The stream (in ${O} state) is not in the writable state and cannot be closed`));let V=c((ye,Oe)=>{let Ue={_resolve:ye,_reject:Oe};C._closeRequest=Ue}),fe=C._writer;return fe!==void 0&&C._backpressure&&O==="writable"&&lZ(fe),frr(C._writableStreamController),V}function Ztr(C){return c((V,fe)=>{let ye={_resolve:V,_reject:fe};C._writeRequests.push(ye)})}function tZ(C,O){if(C._state==="writable"){rZ(C,O);return}nZ(C)}function rZ(C,O){let V=C._writableStreamController;C._state="erroring",C._storedError=O;let fe=C._writer;fe!==void 0&&EBe(fe,O),!srr(C)&&V._started&&nZ(C)}function nZ(C){C._state="errored",C._writableStreamController[I]();let O=C._storedError;if(C._writeRequests.forEach(ye=>{ye._reject(O)}),C._writeRequests=new v,C._pendingAbortRequest===void 0){UU(C);return}let V=C._pendingAbortRequest;if(C._pendingAbortRequest=void 0,V._wasAlreadyErroring){V._reject(O),UU(C);return}let fe=C._writableStreamController[b](V._reason);f(fe,()=>(V._resolve(),UU(C),null),ye=>(V._reject(ye),UU(C),null))}function err(C){C._inFlightWriteRequest._resolve(void 0),C._inFlightWriteRequest=void 0}function trr(C,O){C._inFlightWriteRequest._reject(O),C._inFlightWriteRequest=void 0,tZ(C,O)}function rrr(C){C._inFlightCloseRequest._resolve(void 0),C._inFlightCloseRequest=void 0,C._state==="erroring"&&(C._storedError=void 0,C._pendingAbortRequest!==void 0&&(C._pendingAbortRequest._resolve(),C._pendingAbortRequest=void 0)),C._state="closed";let V=C._writer;V!==void 0&&CBe(V)}function nrr(C,O){C._inFlightCloseRequest._reject(O),C._inFlightCloseRequest=void 0,C._pendingAbortRequest!==void 0&&(C._pendingAbortRequest._reject(O),C._pendingAbortRequest=void 0),tZ(C,O)}function X0(C){return!(C._closeRequest===void 0&&C._inFlightCloseRequest===void 0)}function srr(C){return!(C._inFlightWriteRequest===void 0&&C._inFlightCloseRequest===void 0)}function irr(C){C._inFlightCloseRequest=C._closeRequest,C._closeRequest=void 0}function arr(C){C._inFlightWriteRequest=C._writeRequests.shift()}function UU(C){C._closeRequest!==void 0&&(C._closeRequest._reject(C._storedError),C._closeRequest=void 0);let O=C._writer;O!==void 0&&cZ(O,C._storedError)}function sZ(C,O){let V=C._writer;V!==void 0&&O!==C._backpressure&&(O?Err(V):lZ(V)),C._backpressure=O}class zp{constructor(O){if(W(O,1,"WritableStreamDefaultWriter"),pBe(O,"First parameter"),d1(O))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=O,O._writer=this;let V=O._state;if(V==="writable")!X0(O)&&O._backpressure?VU(this):xBe(this),HU(this);else if(V==="erroring")uZ(this,O._storedError),HU(this);else if(V==="closed")xBe(this),_rr(this);else{let fe=O._storedError;uZ(this,fe),RBe(this,fe)}}get closed(){return Xy(this)?this._closedPromise:l(Jy("closed"))}get desiredSize(){if(!Xy(this))throw Jy("desiredSize");if(this._ownerWritableStream===void 0)throw XN("desiredSize");return lrr(this)}get ready(){return Xy(this)?this._readyPromise:l(Jy("ready"))}abort(O=void 0){return Xy(this)?this._ownerWritableStream===void 0?l(XN("abort")):orr(this,O):l(Jy("abort"))}close(){if(!Xy(this))return l(Jy("close"));let O=this._ownerWritableStream;return O===void 0?l(XN("close")):X0(O)?l(new TypeError("Cannot close an already-closing stream")):ABe(this)}releaseLock(){if(!Xy(this))throw Jy("releaseLock");this._ownerWritableStream!==void 0&&yBe(this)}write(O=void 0){return Xy(this)?this._ownerWritableStream===void 0?l(XN("write to")):vBe(this,O):l(Jy("write"))}}Object.defineProperties(zp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(zp.prototype.abort,"abort"),s(zp.prototype.close,"close"),s(zp.prototype.releaseLock,"releaseLock"),s(zp.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(zp.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function Xy(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_ownerWritableStream")?!1:C instanceof zp}function orr(C,O){let V=C._ownerWritableStream;return BU(V,O)}function ABe(C){let O=C._ownerWritableStream;return _Be(O)}function crr(C){let O=C._ownerWritableStream,V=O._state;return X0(O)||V==="closed"?u(void 0):V==="errored"?l(O._storedError):ABe(C)}function urr(C,O){C._closedPromiseState==="pending"?cZ(C,O):Arr(C,O)}function EBe(C,O){C._readyPromiseState==="pending"?wBe(C,O):yrr(C,O)}function lrr(C){let O=C._ownerWritableStream,V=O._state;return V==="errored"||V==="erroring"?null:V==="closed"?0:bBe(O._writableStreamController)}function yBe(C){let O=C._ownerWritableStream,V=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");EBe(C,V),urr(C,V),O._writer=void 0,C._ownerWritableStream=void 0}function vBe(C,O){let V=C._ownerWritableStream,fe=V._writableStreamController,ye=hrr(fe,O);if(V!==C._ownerWritableStream)return l(XN("write to"));let Oe=V._state;if(Oe==="errored")return l(V._storedError);if(X0(V)||Oe==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(Oe==="erroring")return l(V._storedError);let Ue=Ztr(V);return prr(fe,O,ye),Ue}let SBe={};class f1{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!iZ(this))throw oZ("abortReason");return this._abortReason}get signal(){if(!iZ(this))throw oZ("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(O=void 0){if(!iZ(this))throw oZ("error");this._controlledWritableStream._state==="writable"&&IBe(this,O)}[b](O){let V=this._abortAlgorithm(O);return FU(this),V}[I](){Po(this)}}Object.defineProperties(f1.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(f1.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function iZ(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledWritableStream")?!1:C instanceof f1}function TBe(C,O,V,fe,ye,Oe,Ue,ut){O._controlledWritableStream=C,C._writableStreamController=O,O._queue=void 0,O._queueTotalSize=void 0,Po(O),O._abortReason=void 0,O._abortController=Xtr(),O._started=!1,O._strategySizeAlgorithm=ut,O._strategyHWM=Ue,O._writeAlgorithm=fe,O._closeAlgorithm=ye,O._abortAlgorithm=Oe;let Wt=aZ(O);sZ(C,Wt);let Lt=V(),ur=u(Lt);f(ur,()=>(O._started=!0,$U(O),null),xr=>(O._started=!0,tZ(C,xr),null))}function drr(C,O,V,fe){let ye=Object.create(f1.prototype),Oe,Ue,ut,Wt;O.start!==void 0?Oe=()=>O.start(ye):Oe=()=>{},O.write!==void 0?Ue=Lt=>O.write(Lt,ye):Ue=()=>u(void 0),O.close!==void 0?ut=()=>O.close():ut=()=>u(void 0),O.abort!==void 0?Wt=Lt=>O.abort(Lt):Wt=()=>u(void 0),TBe(C,ye,Oe,Ue,ut,Wt,V,fe)}function FU(C){C._writeAlgorithm=void 0,C._closeAlgorithm=void 0,C._abortAlgorithm=void 0,C._strategySizeAlgorithm=void 0}function frr(C){co(C,SBe,0),$U(C)}function hrr(C,O){try{return C._strategySizeAlgorithm(O)}catch(V){return WN(C,V),1}}function bBe(C){return C._strategyHWM-C._queueTotalSize}function prr(C,O,V){try{co(C,O,V)}catch(ye){WN(C,ye);return}let fe=C._controlledWritableStream;if(!X0(fe)&&fe._state==="writable"){let ye=aZ(C);sZ(fe,ye)}$U(C)}function $U(C){let O=C._controlledWritableStream;if(!C._started||O._inFlightWriteRequest!==void 0)return;if(O._state==="erroring"){nZ(O);return}if(C._queue.length===0)return;let fe=El(C);fe===SBe?mrr(C):grr(C,fe)}function WN(C,O){C._controlledWritableStream._state==="writable"&&IBe(C,O)}function mrr(C){let O=C._controlledWritableStream;irr(O),Bn(C);let V=C._closeAlgorithm();FU(C),f(V,()=>(rrr(O),null),fe=>(nrr(O,fe),null))}function grr(C,O){let V=C._controlledWritableStream;arr(V);let fe=C._writeAlgorithm(O);f(fe,()=>{err(V);let ye=V._state;if(Bn(C),!X0(V)&&ye==="writable"){let Oe=aZ(C);sZ(V,Oe)}return $U(C),null},ye=>(V._state==="writable"&&FU(C),trr(V,ye),null))}function aZ(C){return bBe(C)<=0}function IBe(C,O){let V=C._controlledWritableStream;FU(C),rZ(V,O)}function qU(C){return new TypeError(`WritableStream.prototype.${C} can only be used on a WritableStream`)}function oZ(C){return new TypeError(`WritableStreamDefaultController.prototype.${C} can only be used on a WritableStreamDefaultController`)}function Jy(C){return new TypeError(`WritableStreamDefaultWriter.prototype.${C} can only be used on a WritableStreamDefaultWriter`)}function XN(C){return new TypeError("Cannot "+C+" a stream using a released writer")}function HU(C){C._closedPromise=c((O,V)=>{C._closedPromise_resolve=O,C._closedPromise_reject=V,C._closedPromiseState="pending"})}function RBe(C,O){HU(C),cZ(C,O)}function _rr(C){HU(C),CBe(C)}function cZ(C,O){C._closedPromise_reject!==void 0&&(_(C._closedPromise),C._closedPromise_reject(O),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0,C._closedPromiseState="rejected")}function Arr(C,O){RBe(C,O)}function CBe(C){C._closedPromise_resolve!==void 0&&(C._closedPromise_resolve(void 0),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0,C._closedPromiseState="resolved")}function VU(C){C._readyPromise=c((O,V)=>{C._readyPromise_resolve=O,C._readyPromise_reject=V}),C._readyPromiseState="pending"}function uZ(C,O){VU(C),wBe(C,O)}function xBe(C){VU(C),lZ(C)}function wBe(C,O){C._readyPromise_reject!==void 0&&(_(C._readyPromise),C._readyPromise_reject(O),C._readyPromise_resolve=void 0,C._readyPromise_reject=void 0,C._readyPromiseState="rejected")}function Err(C){VU(C)}function yrr(C,O){uZ(C,O)}function lZ(C){C._readyPromise_resolve!==void 0&&(C._readyPromise_resolve(void 0),C._readyPromise_resolve=void 0,C._readyPromise_reject=void 0,C._readyPromiseState="fulfilled")}function vrr(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let dZ=vrr();function Srr(C){if(!(typeof C=="function"||typeof C=="object")||C.name!=="DOMException")return!1;try{return new C,!0}catch{return!1}}function Trr(){let C=dZ?.DOMException;return Srr(C)?C:void 0}function brr(){let C=function(V,fe){this.message=V||"",this.name=fe||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(C,"DOMException"),C.prototype=Object.create(Error.prototype),Object.defineProperty(C.prototype,"constructor",{value:C,writable:!0,configurable:!0}),C}let Irr=Trr()||brr();function NBe(C,O,V,fe,ye,Oe){let Ue=ie(C),ut=mBe(O);C._disturbed=!0;let Wt=!1,Lt=u(void 0);return c((ur,xr)=>{let Ss;if(Oe!==void 0){if(Ss=()=>{let Ut=Oe.reason!==void 0?Oe.reason:new Irr("Aborted","AbortError"),Xr=[];fe||Xr.push(()=>O._state==="writable"?BU(O,Ut):u(void 0)),ye||Xr.push(()=>C._state==="readable"?Tf(C,Ut):u(void 0)),Au(()=>Promise.all(Xr.map(Os=>Os())),!0,Ut)},Oe.aborted){Ss();return}Oe.addEventListener("abort",Ss)}function bf(){return c((Ut,Xr)=>{function Os(vl){vl?Ut():d(g1(),Os,Xr)}Os(!1)})}function g1(){return Wt?u(!0):d(ut._readyPromise,()=>c((Ut,Xr)=>{Te(Ue,{_chunkSteps:Os=>{Lt=d(vBe(ut,Os),void 0,t),Ut(!1)},_closeSteps:()=>Ut(!0),_errorSteps:Xr})}))}if(Qp(C,Ue._closedPromise,Ut=>(fe?ad(!0,Ut):Au(()=>BU(O,Ut),!0,Ut),null)),Qp(O,ut._closedPromise,Ut=>(ye?ad(!0,Ut):Au(()=>Tf(C,Ut),!0,Ut),null)),Oc(C,Ue._closedPromise,()=>(V?ad():Au(()=>crr(ut)),null)),X0(O)||O._state==="closed"){let Ut=new TypeError("the destination writable stream closed before all data could be piped to it");ye?ad(!0,Ut):Au(()=>Tf(C,Ut),!0,Ut)}_(bf());function V_(){let Ut=Lt;return d(Lt,()=>Ut!==Lt?V_():void 0)}function Qp(Ut,Xr,Os){Ut._state==="errored"?Os(Ut._storedError):p(Xr,Os)}function Oc(Ut,Xr,Os){Ut._state==="closed"?Os():h(Xr,Os)}function Au(Ut,Xr,Os){if(Wt)return;Wt=!0,O._state==="writable"&&!X0(O)?h(V_(),vl):vl();function vl(){return f(Ut(),()=>Wp(Xr,Os),_1=>Wp(!0,_1)),null}}function ad(Ut,Xr){Wt||(Wt=!0,O._state==="writable"&&!X0(O)?h(V_(),()=>Wp(Ut,Xr)):Wp(Ut,Xr))}function Wp(Ut,Xr){return yBe(ut),L(Ue),Oe!==void 0&&Oe.removeEventListener("abort",Ss),Ut?xr(Xr):ur(void 0),null}})}class Yp{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!jU(this))throw GU("desiredSize");return fZ(this)}close(){if(!jU(this))throw GU("close");if(!p1(this))throw new TypeError("The stream is not in a state that permits close");Zy(this)}enqueue(O=void 0){if(!jU(this))throw GU("enqueue");if(!p1(this))throw new TypeError("The stream is not in a state that permits enqueue");return h1(this,O)}error(O=void 0){if(!jU(this))throw GU("error");Sf(this,O)}[T](O){Po(this);let V=this._cancelAlgorithm(O);return KU(this),V}[x](O){let V=this._controlledReadableStream;if(this._queue.length>0){let fe=Bn(this);this._closeRequested&&this._queue.length===0?(KU(this),eO(V)):JN(this),O._chunkSteps(fe)}else ne(V,O),JN(this)}[w](){}}Object.defineProperties(Yp.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Yp.prototype.close,"close"),s(Yp.prototype.enqueue,"enqueue"),s(Yp.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Yp.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function jU(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledReadableStream")?!1:C instanceof Yp}function JN(C){if(!OBe(C))return;if(C._pulling){C._pullAgain=!0;return}C._pulling=!0;let V=C._pullAlgorithm();f(V,()=>(C._pulling=!1,C._pullAgain&&(C._pullAgain=!1,JN(C)),null),fe=>(Sf(C,fe),null))}function OBe(C){let O=C._controlledReadableStream;return!p1(C)||!C._started?!1:!!(q_(O)&&J(O)>0||fZ(C)>0)}function KU(C){C._pullAlgorithm=void 0,C._cancelAlgorithm=void 0,C._strategySizeAlgorithm=void 0}function Zy(C){if(!p1(C))return;let O=C._controlledReadableStream;C._closeRequested=!0,C._queue.length===0&&(KU(C),eO(O))}function h1(C,O){if(!p1(C))return;let V=C._controlledReadableStream;if(q_(V)&&J(V)>0)se(V,O,!1);else{let fe;try{fe=C._strategySizeAlgorithm(O)}catch(ye){throw Sf(C,ye),ye}try{co(C,O,fe)}catch(ye){throw Sf(C,ye),ye}}JN(C)}function Sf(C,O){let V=C._controlledReadableStream;V._state==="readable"&&(Po(C),KU(C),MBe(V,O))}function fZ(C){let O=C._controlledReadableStream._state;return O==="errored"?null:O==="closed"?0:C._strategyHWM-C._queueTotalSize}function Rrr(C){return!OBe(C)}function p1(C){let O=C._controlledReadableStream._state;return!C._closeRequested&&O==="readable"}function DBe(C,O,V,fe,ye,Oe,Ue){O._controlledReadableStream=C,O._queue=void 0,O._queueTotalSize=void 0,Po(O),O._started=!1,O._closeRequested=!1,O._pullAgain=!1,O._pulling=!1,O._strategySizeAlgorithm=Ue,O._strategyHWM=Oe,O._pullAlgorithm=fe,O._cancelAlgorithm=ye,C._readableStreamController=O;let ut=V();f(u(ut),()=>(O._started=!0,JN(O),null),Wt=>(Sf(O,Wt),null))}function Crr(C,O,V,fe){let ye=Object.create(Yp.prototype),Oe,Ue,ut;O.start!==void 0?Oe=()=>O.start(ye):Oe=()=>{},O.pull!==void 0?Ue=()=>O.pull(ye):Ue=()=>u(void 0),O.cancel!==void 0?ut=Wt=>O.cancel(Wt):ut=()=>u(void 0),DBe(C,ye,Oe,Ue,ut,V,fe)}function GU(C){return new TypeError(`ReadableStreamDefaultController.prototype.${C} can only be used on a ReadableStreamDefaultController`)}function xrr(C,O){return yl(C._readableStreamController)?Nrr(C):wrr(C)}function wrr(C,O){let V=ie(C),fe=!1,ye=!1,Oe=!1,Ue=!1,ut,Wt,Lt,ur,xr,Ss=c(Oc=>{xr=Oc});function bf(){return fe?(ye=!0,u(void 0)):(fe=!0,Te(V,{_chunkSteps:Au=>{g(()=>{ye=!1;let ad=Au,Wp=Au;Oe||h1(Lt._readableStreamController,ad),Ue||h1(ur._readableStreamController,Wp),fe=!1,ye&&bf()})},_closeSteps:()=>{fe=!1,Oe||Zy(Lt._readableStreamController),Ue||Zy(ur._readableStreamController),(!Oe||!Ue)&&xr(void 0)},_errorSteps:()=>{fe=!1}}),u(void 0))}function g1(Oc){if(Oe=!0,ut=Oc,Ue){let Au=Qe([ut,Wt]),ad=Tf(C,Au);xr(ad)}return Ss}function V_(Oc){if(Ue=!0,Wt=Oc,Oe){let Au=Qe([ut,Wt]),ad=Tf(C,Au);xr(ad)}return Ss}function Qp(){}return Lt=ZN(Qp,bf,g1),ur=ZN(Qp,bf,V_),p(V._closedPromise,Oc=>(Sf(Lt._readableStreamController,Oc),Sf(ur._readableStreamController,Oc),(!Oe||!Ue)&&xr(void 0),null)),[Lt,ur]}function Nrr(C){let O=ie(C),V=!1,fe=!1,ye=!1,Oe=!1,Ue=!1,ut,Wt,Lt,ur,xr,Ss=c(Ut=>{xr=Ut});function bf(Ut){p(Ut._closedPromise,Xr=>(Ut!==O||(id(Lt._readableStreamController,Xr),id(ur._readableStreamController,Xr),(!Oe||!Ue)&&xr(void 0)),null))}function g1(){Wy(O)&&(L(O),O=ie(C),bf(O)),Te(O,{_chunkSteps:Xr=>{g(()=>{fe=!1,ye=!1;let Os=Xr,vl=Xr;if(!Oe&&!Ue)try{vl=qs(Xr)}catch(_1){id(Lt._readableStreamController,_1),id(ur._readableStreamController,_1),xr(Tf(C,_1));return}Oe||OU(Lt._readableStreamController,Os),Ue||OU(ur._readableStreamController,vl),V=!1,fe?Qp():ye&&Oc()})},_closeSteps:()=>{V=!1,Oe||zN(Lt._readableStreamController),Ue||zN(ur._readableStreamController),Lt._readableStreamController._pendingPullIntos.length>0&&DU(Lt._readableStreamController,0),ur._readableStreamController._pendingPullIntos.length>0&&DU(ur._readableStreamController,0),(!Oe||!Ue)&&xr(void 0)},_errorSteps:()=>{V=!1}})}function V_(Ut,Xr){be(O)&&(L(O),O=uBe(C),bf(O));let Os=Xr?ur:Lt,vl=Xr?Lt:ur;fBe(O,Ut,1,{_chunkSteps:A1=>{g(()=>{fe=!1,ye=!1;let E1=Xr?Ue:Oe;if(Xr?Oe:Ue)E1||PU(Os._readableStreamController,A1);else{let YBe;try{YBe=qs(A1)}catch(_Z){id(Os._readableStreamController,_Z),id(vl._readableStreamController,_Z),xr(Tf(C,_Z));return}E1||PU(Os._readableStreamController,A1),OU(vl._readableStreamController,YBe)}V=!1,fe?Qp():ye&&Oc()})},_closeSteps:A1=>{V=!1;let E1=Xr?Ue:Oe,eF=Xr?Oe:Ue;E1||zN(Os._readableStreamController),eF||zN(vl._readableStreamController),A1!==void 0&&(E1||PU(Os._readableStreamController,A1),!eF&&vl._readableStreamController._pendingPullIntos.length>0&&DU(vl._readableStreamController,0)),(!E1||!eF)&&xr(void 0)},_errorSteps:()=>{V=!1}})}function Qp(){if(V)return fe=!0,u(void 0);V=!0;let Ut=JJ(Lt._readableStreamController);return Ut===null?g1():V_(Ut._view,!1),u(void 0)}function Oc(){if(V)return ye=!0,u(void 0);V=!0;let Ut=JJ(ur._readableStreamController);return Ut===null?g1():V_(Ut._view,!0),u(void 0)}function Au(Ut){if(Oe=!0,ut=Ut,Ue){let Xr=Qe([ut,Wt]),Os=Tf(C,Xr);xr(Os)}return Ss}function ad(Ut){if(Ue=!0,Wt=Ut,Oe){let Xr=Qe([ut,Wt]),Os=Tf(C,Xr);xr(Os)}return Ss}function Wp(){}return Lt=LBe(Wp,Qp,Au),ur=LBe(Wp,Oc,ad),bf(O),[Lt,ur]}function Orr(C){return r(C)&&typeof C.getReader<"u"}function Drr(C){return Orr(C)?Lrr(C.getReader()):Prr(C)}function Prr(C){let O,V=it(C,"async"),fe=t;function ye(){let Ue;try{Ue=yt(V)}catch(Wt){return l(Wt)}let ut=u(Ue);return m(ut,Wt=>{if(!r(Wt))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(vs(Wt))Zy(O._readableStreamController);else{let ur=kn(Wt);h1(O._readableStreamController,ur)}})}function Oe(Ue){let ut=V.iterator,Wt;try{Wt=_t(ut,"return")}catch(xr){return l(xr)}if(Wt===void 0)return u(void 0);let Lt;try{Lt=y(Wt,ut,[Ue])}catch(xr){return l(xr)}let ur=u(Lt);return m(ur,xr=>{if(!r(xr))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return O=ZN(fe,ye,Oe,0),O}function Lrr(C){let O,V=t;function fe(){let Oe;try{Oe=C.read()}catch(Ue){return l(Ue)}return m(Oe,Ue=>{if(!r(Ue))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(Ue.done)Zy(O._readableStreamController);else{let ut=Ue.value;h1(O._readableStreamController,ut)}})}function ye(Oe){try{return u(C.cancel(Oe))}catch(Ue){return l(Ue)}}return O=ZN(V,fe,ye,0),O}function Mrr(C,O){Z(C,O);let V=C,fe=V?.autoAllocateChunkSize,ye=V?.cancel,Oe=V?.pull,Ue=V?.start,ut=V?.type;return{autoAllocateChunkSize:fe===void 0?void 0:Y(fe,`${O} has member 'autoAllocateChunkSize' that`),cancel:ye===void 0?void 0:krr(ye,V,`${O} has member 'cancel' that`),pull:Oe===void 0?void 0:Brr(Oe,V,`${O} has member 'pull' that`),start:Ue===void 0?void 0:Urr(Ue,V,`${O} has member 'start' that`),type:ut===void 0?void 0:Frr(ut,`${O} has member 'type' that`)}}function krr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function Brr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function Urr(C,O,V){return de(C,V),fe=>y(C,O,[fe])}function Frr(C,O){if(C=`${C}`,C!=="bytes")throw new TypeError(`${O} '${C}' is not a valid enumeration value for ReadableStreamType`);return C}function $rr(C,O){return Z(C,O),{preventCancel:!!C?.preventCancel}}function PBe(C,O){Z(C,O);let V=C?.preventAbort,fe=C?.preventCancel,ye=C?.preventClose,Oe=C?.signal;return Oe!==void 0&&qrr(Oe,`${O} has member 'signal' that`),{preventAbort:!!V,preventCancel:!!fe,preventClose:!!ye,signal:Oe}}function qrr(C,O){if(!Qtr(C))throw new TypeError(`${O} is not an AbortSignal.`)}function Hrr(C,O){Z(C,O);let V=C?.readable;P(V,"readable","ReadableWritablePair"),X(V,`${O} has member 'readable' that`);let fe=C?.writable;return P(fe,"writable","ReadableWritablePair"),pBe(fe,`${O} has member 'writable' that`),{readable:V,writable:fe}}class Lo{constructor(O={},V={}){O===void 0?O=null:k(O,"First parameter");let fe=kU(V,"Second parameter"),ye=Mrr(O,"First parameter");if(hZ(this),ye.type==="bytes"){if(fe.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let Oe=QN(fe,0);ktr(this,ye,Oe)}else{let Oe=MU(fe),Ue=QN(fe,1);Crr(this,ye,Ue,Oe)}}get locked(){if(!$_(this))throw ev("locked");return q_(this)}cancel(O=void 0){return $_(this)?q_(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):Tf(this,O):l(ev("cancel"))}getReader(O=void 0){if(!$_(this))throw ev("getReader");return Utr(O,"First parameter").mode===void 0?ie(this):uBe(this)}pipeThrough(O,V={}){if(!$_(this))throw ev("pipeThrough");W(O,1,"pipeThrough");let fe=Hrr(O,"First parameter"),ye=PBe(V,"Second parameter");if(q_(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(d1(fe.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let Oe=NBe(this,fe.writable,ye.preventClose,ye.preventAbort,ye.preventCancel,ye.signal);return _(Oe),fe.readable}pipeTo(O,V={}){if(!$_(this))return l(ev("pipeTo"));if(O===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!l1(O))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let fe;try{fe=PBe(V,"Second parameter")}catch(ye){return l(ye)}return q_(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):d1(O)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):NBe(this,O,fe.preventClose,fe.preventAbort,fe.preventCancel,fe.signal)}tee(){if(!$_(this))throw ev("tee");let O=xrr(this);return Qe(O)}values(O=void 0){if(!$_(this))throw ev("values");let V=$rr(O,"First parameter");return Se(this,V.preventCancel)}[Ht](O){return this.values(O)}static from(O){return Drr(O)}}Object.defineProperties(Lo,{from:{enumerable:!0}}),Object.defineProperties(Lo.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Lo.from,"from"),s(Lo.prototype.cancel,"cancel"),s(Lo.prototype.getReader,"getReader"),s(Lo.prototype.pipeThrough,"pipeThrough"),s(Lo.prototype.pipeTo,"pipeTo"),s(Lo.prototype.tee,"tee"),s(Lo.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Lo.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Lo.prototype,Ht,{value:Lo.prototype.values,writable:!0,configurable:!0});function ZN(C,O,V,fe=1,ye=()=>1){let Oe=Object.create(Lo.prototype);hZ(Oe);let Ue=Object.create(Yp.prototype);return DBe(Oe,Ue,C,O,V,fe,ye),Oe}function LBe(C,O,V){let fe=Object.create(Lo.prototype);hZ(fe);let ye=Object.create(vf.prototype);return cBe(fe,ye,C,O,V,0,void 0),fe}function hZ(C){C._state="readable",C._reader=void 0,C._storedError=void 0,C._disturbed=!1}function $_(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_readableStreamController")?!1:C instanceof Lo}function q_(C){return C._reader!==void 0}function Tf(C,O){if(C._disturbed=!0,C._state==="closed")return u(void 0);if(C._state==="errored")return l(C._storedError);eO(C);let V=C._reader;if(V!==void 0&&Wy(V)){let ye=V._readIntoRequests;V._readIntoRequests=new v,ye.forEach(Oe=>{Oe._closeSteps(void 0)})}let fe=C._readableStreamController[T](O);return m(fe,t)}function eO(C){C._state="closed";let O=C._reader;if(O!==void 0&&(oe(O),be(O))){let V=O._readRequests;O._readRequests=new v,V.forEach(fe=>{fe._closeSteps()})}}function MBe(C,O){C._state="errored",C._storedError=O;let V=C._reader;V!==void 0&&(ee(V,O),be(V)?Fe(V,O):hBe(V,O))}function ev(C){return new TypeError(`ReadableStream.prototype.${C} can only be used on a ReadableStream`)}function kBe(C,O){Z(C,O);let V=C?.highWaterMark;return P(V,"highWaterMark","QueuingStrategyInit"),{highWaterMark:H(V)}}let BBe=C=>C.byteLength;s(BBe,"size");class zU{constructor(O){W(O,1,"ByteLengthQueuingStrategy"),O=kBe(O,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=O.highWaterMark}get highWaterMark(){if(!FBe(this))throw UBe("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!FBe(this))throw UBe("size");return BBe}}Object.defineProperties(zU.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(zU.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function UBe(C){return new TypeError(`ByteLengthQueuingStrategy.prototype.${C} can only be used on a ByteLengthQueuingStrategy`)}function FBe(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_byteLengthQueuingStrategyHighWaterMark")?!1:C instanceof zU}let $Be=()=>1;s($Be,"size");class YU{constructor(O){W(O,1,"CountQueuingStrategy"),O=kBe(O,"First parameter"),this._countQueuingStrategyHighWaterMark=O.highWaterMark}get highWaterMark(){if(!HBe(this))throw qBe("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!HBe(this))throw qBe("size");return $Be}}Object.defineProperties(YU.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(YU.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function qBe(C){return new TypeError(`CountQueuingStrategy.prototype.${C} can only be used on a CountQueuingStrategy`)}function HBe(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_countQueuingStrategyHighWaterMark")?!1:C instanceof YU}function Vrr(C,O){Z(C,O);let V=C?.cancel,fe=C?.flush,ye=C?.readableType,Oe=C?.start,Ue=C?.transform,ut=C?.writableType;return{cancel:V===void 0?void 0:zrr(V,C,`${O} has member 'cancel' that`),flush:fe===void 0?void 0:jrr(fe,C,`${O} has member 'flush' that`),readableType:ye,start:Oe===void 0?void 0:Krr(Oe,C,`${O} has member 'start' that`),transform:Ue===void 0?void 0:Grr(Ue,C,`${O} has member 'transform' that`),writableType:ut}}function jrr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function Krr(C,O,V){return de(C,V),fe=>y(C,O,[fe])}function Grr(C,O,V){return de(C,V),(fe,ye)=>A(C,O,[fe,ye])}function zrr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}class QU{constructor(O={},V={},fe={}){O===void 0&&(O=null);let ye=kU(V,"Second parameter"),Oe=kU(fe,"Third parameter"),Ue=Vrr(O,"First parameter");if(Ue.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(Ue.writableType!==void 0)throw new RangeError("Invalid writableType specified");let ut=QN(Oe,0),Wt=MU(Oe),Lt=QN(ye,1),ur=MU(ye),xr,Ss=c(bf=>{xr=bf});Yrr(this,Ss,Lt,ur,ut,Wt),Wrr(this,Ue),Ue.start!==void 0?xr(Ue.start(this._transformStreamController)):xr(void 0)}get readable(){if(!VBe(this))throw zBe("readable");return this._readable}get writable(){if(!VBe(this))throw zBe("writable");return this._writable}}Object.defineProperties(QU.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(QU.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function Yrr(C,O,V,fe,ye,Oe){function Ue(){return O}function ut(Ss){return Zrr(C,Ss)}function Wt(Ss){return enr(C,Ss)}function Lt(){return tnr(C)}C._writable=Jtr(Ue,ut,Lt,Wt,V,fe);function ur(){return rnr(C)}function xr(Ss){return nnr(C,Ss)}C._readable=ZN(Ue,ur,xr,ye,Oe),C._backpressure=void 0,C._backpressureChangePromise=void 0,C._backpressureChangePromise_resolve=void 0,WU(C,!0),C._transformStreamController=void 0}function VBe(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_transformStreamController")?!1:C instanceof QU}function jBe(C,O){Sf(C._readable._readableStreamController,O),pZ(C,O)}function pZ(C,O){JU(C._transformStreamController),WN(C._writable._writableStreamController,O),mZ(C)}function mZ(C){C._backpressure&&WU(C,!1)}function WU(C,O){C._backpressureChangePromise!==void 0&&C._backpressureChangePromise_resolve(),C._backpressureChangePromise=c(V=>{C._backpressureChangePromise_resolve=V}),C._backpressure=O}class H_{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!XU(this))throw ZU("desiredSize");let O=this._controlledTransformStream._readable._readableStreamController;return fZ(O)}enqueue(O=void 0){if(!XU(this))throw ZU("enqueue");KBe(this,O)}error(O=void 0){if(!XU(this))throw ZU("error");Xrr(this,O)}terminate(){if(!XU(this))throw ZU("terminate");Jrr(this)}}Object.defineProperties(H_.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(H_.prototype.enqueue,"enqueue"),s(H_.prototype.error,"error"),s(H_.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(H_.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function XU(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledTransformStream")?!1:C instanceof H_}function Qrr(C,O,V,fe,ye){O._controlledTransformStream=C,C._transformStreamController=O,O._transformAlgorithm=V,O._flushAlgorithm=fe,O._cancelAlgorithm=ye,O._finishPromise=void 0,O._finishPromise_resolve=void 0,O._finishPromise_reject=void 0}function Wrr(C,O){let V=Object.create(H_.prototype),fe,ye,Oe;O.transform!==void 0?fe=Ue=>O.transform(Ue,V):fe=Ue=>{try{return KBe(V,Ue),u(void 0)}catch(ut){return l(ut)}},O.flush!==void 0?ye=()=>O.flush(V):ye=()=>u(void 0),O.cancel!==void 0?Oe=Ue=>O.cancel(Ue):Oe=()=>u(void 0),Qrr(C,V,fe,ye,Oe)}function JU(C){C._transformAlgorithm=void 0,C._flushAlgorithm=void 0,C._cancelAlgorithm=void 0}function KBe(C,O){let V=C._controlledTransformStream,fe=V._readable._readableStreamController;if(!p1(fe))throw new TypeError("Readable side is not in a state that permits enqueue");try{h1(fe,O)}catch(Oe){throw pZ(V,Oe),V._readable._storedError}Rrr(fe)!==V._backpressure&&WU(V,!0)}function Xrr(C,O){jBe(C._controlledTransformStream,O)}function GBe(C,O){let V=C._transformAlgorithm(O);return m(V,void 0,fe=>{throw jBe(C._controlledTransformStream,fe),fe})}function Jrr(C){let O=C._controlledTransformStream,V=O._readable._readableStreamController;Zy(V);let fe=new TypeError("TransformStream terminated");pZ(O,fe)}function Zrr(C,O){let V=C._transformStreamController;if(C._backpressure){let fe=C._backpressureChangePromise;return m(fe,()=>{let ye=C._writable;if(ye._state==="erroring")throw ye._storedError;return GBe(V,O)})}return GBe(V,O)}function enr(C,O){let V=C._transformStreamController;if(V._finishPromise!==void 0)return V._finishPromise;let fe=C._readable;V._finishPromise=c((Oe,Ue)=>{V._finishPromise_resolve=Oe,V._finishPromise_reject=Ue});let ye=V._cancelAlgorithm(O);return JU(V),f(ye,()=>(fe._state==="errored"?m1(V,fe._storedError):(Sf(fe._readableStreamController,O),gZ(V)),null),Oe=>(Sf(fe._readableStreamController,Oe),m1(V,Oe),null)),V._finishPromise}function tnr(C){let O=C._transformStreamController;if(O._finishPromise!==void 0)return O._finishPromise;let V=C._readable;O._finishPromise=c((ye,Oe)=>{O._finishPromise_resolve=ye,O._finishPromise_reject=Oe});let fe=O._flushAlgorithm();return JU(O),f(fe,()=>(V._state==="errored"?m1(O,V._storedError):(Zy(V._readableStreamController),gZ(O)),null),ye=>(Sf(V._readableStreamController,ye),m1(O,ye),null)),O._finishPromise}function rnr(C){return WU(C,!1),C._backpressureChangePromise}function nnr(C,O){let V=C._transformStreamController;if(V._finishPromise!==void 0)return V._finishPromise;let fe=C._writable;V._finishPromise=c((Oe,Ue)=>{V._finishPromise_resolve=Oe,V._finishPromise_reject=Ue});let ye=V._cancelAlgorithm(O);return JU(V),f(ye,()=>(fe._state==="errored"?m1(V,fe._storedError):(WN(fe._writableStreamController,O),mZ(C),gZ(V)),null),Oe=>(WN(fe._writableStreamController,Oe),mZ(C),m1(V,Oe),null)),V._finishPromise}function ZU(C){return new TypeError(`TransformStreamDefaultController.prototype.${C} can only be used on a TransformStreamDefaultController`)}function gZ(C){C._finishPromise_resolve!==void 0&&(C._finishPromise_resolve(),C._finishPromise_resolve=void 0,C._finishPromise_reject=void 0)}function m1(C,O){C._finishPromise_reject!==void 0&&(_(C._finishPromise),C._finishPromise_reject(O),C._finishPromise_resolve=void 0,C._finishPromise_reject=void 0)}function zBe(C){return new TypeError(`TransformStream.prototype.${C} can only be used on a TransformStream`)}e.ByteLengthQueuingStrategy=zU,e.CountQueuingStrategy=YU,e.ReadableByteStreamController=vf,e.ReadableStream=Lo,e.ReadableStreamBYOBReader=U_,e.ReadableStreamBYOBRequest=W0,e.ReadableStreamDefaultController=Yp,e.ReadableStreamDefaultReader=ge,e.TransformStream=QU,e.TransformStreamDefaultController=H_,e.WritableStream=F_,e.WritableStreamDefaultController=f1,e.WritableStreamDefaultWriter=zp})});var ort=S(()=>{if(!globalThis.ReadableStream)try{let e=require("node:process"),{emitWarning:t}=e;try{e.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),e.emitWarning=t}catch(r){throw e.emitWarning=t,r}}catch{Object.assign(globalThis,art())}try{let{Blob:e}=require("buffer");e&&!e.prototype.stream&&(e.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let o=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=o.byteLength,i.enqueue(new Uint8Array(o)),n===s.size&&i.close()}})})}catch{}});async function*Mle(e,t=!0){for(let r of e)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(t){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,crt),a=r.buffer.slice(n,n+i);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let a=await s.slice(n,Math.min(s.size,n+crt)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var MWn,crt,urt,b6r,Gf,ZD=ae(()=>{MWn=Ne(ort(),1);crt=65536;urt=class kle{#e=[];#t="";#r=0;#n="transparent";constructor(t=[],r={}){if(typeof t!="object"||t===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof t[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of t){let a;ArrayBuffer.isView(i)?a=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?a=new Uint8Array(i.slice(0)):i instanceof kle?a=i:a=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let t=new TextDecoder,r="";for await(let n of Mle(this.#e,!1))r+=t.decode(n,{stream:!0});return r+=t.decode(),r}async arrayBuffer(){let t=new Uint8Array(this.size),r=0;for await(let n of Mle(this.#e,!1))t.set(n,r),r+=n.length;return t.buffer}stream(){let t=Mle(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await t.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await t.return()}})}slice(t=0,r=this.size,n=""){let{size:s}=this,i=t<0?Math.max(s+t,0):Math.min(t,s),a=r<0?Math.max(s+r,0):Math.min(r,s),o=Math.max(a-i,0),c=this.#e,u=[],l=0;for(let f of c){if(l>=o)break;let h=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&h<=i)i-=h,a-=h;else{let p;ArrayBuffer.isView(f)?(p=f.subarray(i,Math.min(h,a)),l+=p.byteLength):(p=f.slice(i,Math.min(h,a)),l+=p.size),a-=h,u.push(p),i=0}}let d=new kle([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](t){return t&&typeof t=="object"&&typeof t.constructor=="function"&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&/^(Blob|File)$/.test(t[Symbol.toStringTag])}};Object.defineProperties(urt.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});b6r=urt,Gf=b6r});var I6r,R6r,FA,Ble=ae(()=>{ZD();I6r=class extends Gf{#e=0;#t="";constructor(t,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(t,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](t){return!!t&&t instanceof Gf&&/^(File)$/.test(t[Symbol.toStringTag])}},R6r=I6r,FA=R6r});function frt(e,t=Gf){var r=`${lrt()}${lrt()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r -Content-Disposition: form-data; name="`;return e.forEach((i,a)=>typeof i=="string"?n.push(s+Ule(a)+`"\r -\r -${i.replace(/\r(?!\n)|(?{ZD();Ble();({toStringTag:eP,iterator:C6r,hasInstance:x6r}=Symbol),lrt=Math.random,w6r="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),drt=(e,t,r)=>(e+="",/^(Blob|File)$/.test(t&&t[eP])?[(r=r!==void 0?r+"":t[eP]=="File"?t.name:"blob",e),t.name!==r||t[eP]=="blob"?new FA([t],r,t):t]:[e,t+""]),Ule=(e,t)=>(t?e:e.replace(/\r?\n|\r/g,`\r -`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),nS=(e,t,r)=>{if(t.lengthtypeof t[r]!="function")}append(...t){nS("append",arguments,2),this.#e.push(drt(...t))}delete(t){nS("delete",arguments,1),t+="",this.#e=this.#e.filter(([r])=>r!==t)}get(t){nS("get",arguments,1),t+="";for(var r=this.#e,n=r.length,s=0;sn[0]===t&&r.push(n[1])),r}has(t){return nS("has",arguments,1),t+="",this.#e.some(r=>r[0]===t)}forEach(t,r){nS("forEach",arguments,1);for(var[n,s]of this)t.call(r,s,n,this)}set(...t){nS("set",arguments,2);var r=[],n=!0;t=drt(...t),this.#e.forEach(s=>{s[0]===t[0]?n&&(n=!r.push(t)):r.push(s)}),n&&r.push(t),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[t]of this)yield t}*values(){for(var[,t]of this)yield t}}});var Nm,Q$=ae(()=>{Nm=class extends Error{constructor(t,r){super(t),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var qc,Fle=ae(()=>{Q$();qc=class extends Nm{constructor(t,r,n){super(t,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var W$,$le,tP,hrt,prt,mrt,X$=ae(()=>{W$=Symbol.toStringTag,$le=e=>typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&typeof e.sort=="function"&&e[W$]==="URLSearchParams",tP=e=>e&&typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&/^(Blob|File)$/.test(e[W$]),hrt=e=>typeof e=="object"&&(e[W$]==="AbortSignal"||e[W$]==="EventTarget"),prt=(e,t)=>{let r=new URL(t).hostname,n=new URL(e).hostname;return r===n||r.endsWith(`.${n}`)},mrt=(e,t)=>{let r=new URL(t).protocol,n=new URL(e).protocol;return r===n}});var _rt=S((YWn,grt)=>{if(!globalThis.DOMException)try{let{MessageChannel:e}=require("worker_threads"),t=new e().port1,r=new ArrayBuffer;t.postMessage(r,[r,r])}catch(e){e.constructor.name==="DOMException"&&(globalThis.DOMException=e.constructor)}grt.exports=globalThis.DOMException});var sS,Art,Ert,qle,yrt,vrt,Srt,Trt,brt,Irt,J$,Hle=ae(()=>{sS=require("node:fs"),Art=require("node:path"),Ert=Ne(_rt(),1);Ble();ZD();({stat:qle}=sS.promises),yrt=(e,t)=>brt((0,sS.statSync)(e),e,t),vrt=(e,t)=>qle(e).then(r=>brt(r,e,t)),Srt=(e,t)=>qle(e).then(r=>Irt(r,e,t)),Trt=(e,t)=>Irt((0,sS.statSync)(e),e,t),brt=(e,t,r="")=>new Gf([new J$({path:t,size:e.size,lastModified:e.mtimeMs,start:0})],{type:r}),Irt=(e,t,r="")=>new FA([new J$({path:t,size:e.size,lastModified:e.mtimeMs,start:0})],(0,Art.basename)(t),{type:r,lastModified:e.mtimeMs}),J$=class e{#e;#t;constructor(t){this.#e=t.path,this.#t=t.start,this.size=t.size,this.lastModified=t.lastModified}slice(t,r){return new e({path:this.#e,lastModified:this.lastModified,size:r-t,start:this.#t+t})}async*stream(){let{mtimeMs:t}=await qle(this.#e);if(t>this.lastModified)throw new Ert.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,sS.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var Crt={};Ft(Crt,{toFormData:()=>k6r});function M6r(e){let t=e.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!t)return;let r=t[2]||t[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function k6r(e,t){if(!/multipart/i.test(t))throw new TypeError("Failed to fetch");let r=t.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new Vle(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new $A,f=g=>{a+=_.decode(g,{stream:!0})},h=g=>{l.push(g)},p=()=>{let g=new FA(l,u,{type:c});d.append(o,g)},m=()=>{d.append(o,a)},_=new TextDecoder("utf-8");_.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=m,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=_.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=_.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=_.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=M6r(i),u&&(n.onPartData=h,n.onPartEnd=p)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of e)n.write(g);return n.end(),d}var Ch,Ps,Rrt,qA,Z$,e9,N6r,rP,O6r,D6r,P6r,L6r,iS,Vle,xrt=ae(()=>{Hle();Y$();Ch=0,Ps={START_BOUNDARY:Ch++,HEADER_FIELD_START:Ch++,HEADER_FIELD:Ch++,HEADER_VALUE_START:Ch++,HEADER_VALUE:Ch++,HEADER_VALUE_ALMOST_DONE:Ch++,HEADERS_ALMOST_DONE:Ch++,PART_DATA_START:Ch++,PART_DATA:Ch++,END:Ch++},Rrt=1,qA={PART_BOUNDARY:Rrt,LAST_BOUNDARY:Rrt*=2},Z$=10,e9=13,N6r=32,rP=45,O6r=58,D6r=97,P6r=122,L6r=e=>e|32,iS=()=>{},Vle=class{constructor(t){this.index=0,this.flags=0,this.onHeaderEnd=iS,this.onHeaderField=iS,this.onHeadersEnd=iS,this.onHeaderValue=iS,this.onPartBegin=iS,this.onPartData=iS,this.onPartEnd=iS,this.boundaryChars={},t=`\r ---`+t;let r=new Uint8Array(t.length);for(let n=0;n{this[E+"Mark"]=r},g=E=>{delete this[E+"Mark"]},y=(E,v,b,I)=>{(v===void 0||v!==b)&&this[E](I&&I.subarray(v,b))},A=(E,v)=>{let b=E+"Mark";b in this&&(v?(y(E,this[b],r,t),delete this[b]):(y(E,this[b],t.length,t),this[b]=0))};for(r=0;rP6r)return;break;case Ps.HEADER_VALUE_START:if(p===N6r)break;_("onHeaderValue"),u=Ps.HEADER_VALUE;case Ps.HEADER_VALUE:p===e9&&(A("onHeaderValue",!0),y("onHeaderEnd"),u=Ps.HEADER_VALUE_ALMOST_DONE);break;case Ps.HEADER_VALUE_ALMOST_DONE:if(p!==Z$)return;u=Ps.HEADER_FIELD_START;break;case Ps.HEADERS_ALMOST_DONE:if(p!==Z$)return;y("onHeadersEnd"),u=Ps.PART_DATA_START;break;case Ps.PART_DATA_START:u=Ps.PART_DATA,_("onPartData");case Ps.PART_DATA:if(s=c,c===0){for(r+=f;r0)i[c-1]=p;else if(s>0){let E=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);y("onPartData",0,s,E),s=0,_("onPartData"),r--}break;case Ps.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}A("onHeaderField"),A("onHeaderValue"),A("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===Ps.HEADER_FIELD_START&&this.index===0||this.state===Ps.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Ps.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function jle(e){if(e[Uu].disturbed)throw new TypeError(`body used already for: ${e.url}`);if(e[Uu].disturbed=!0,e[Uu].error)throw e[Uu].error;let{body:t}=e;if(t===null)return Rl.Buffer.alloc(0);if(!(t instanceof Od.default))return Rl.Buffer.alloc(0);let r=[],n=0;try{for await(let s of t){if(e.size>0&&n+s.length>e.size){let i=new qc(`content size at ${e.url} over limit: ${e.size}`,"max-size");throw t.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof Nm?s:new qc(`Invalid response body while trying to fetch ${e.url}: ${s.message}`,"system",s)}if(t.readableEnded===!0||t._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Rl.Buffer.from(r.join("")):Rl.Buffer.concat(r,n)}catch(s){throw new qc(`Could not create Buffer from response body for ${e.url}: ${s.message}`,"system",s)}else throw new qc(`Premature close of server response while trying to fetch ${e.url}`)}var Od,Om,Rl,B6r,Uu,xh,gR,U6r,t9,wrt,Nrt,r9=ae(()=>{Od=Ne(require("node:stream"),1),Om=require("node:util"),Rl=require("node:buffer");ZD();Y$();Fle();Q$();X$();B6r=(0,Om.promisify)(Od.default.pipeline),Uu=Symbol("Body internals"),xh=class{constructor(t,{size:r=0}={}){let n=null;t===null?t=null:$le(t)?t=Rl.Buffer.from(t.toString()):tP(t)||Rl.Buffer.isBuffer(t)||(Om.types.isAnyArrayBuffer(t)?t=Rl.Buffer.from(t):ArrayBuffer.isView(t)?t=Rl.Buffer.from(t.buffer,t.byteOffset,t.byteLength):t instanceof Od.default||(t instanceof $A?(t=frt(t),n=t.type.split("=")[1]):t=Rl.Buffer.from(String(t))));let s=t;Rl.Buffer.isBuffer(t)?s=Od.default.Readable.from(t):tP(t)&&(s=Od.default.Readable.from(t.stream())),this[Uu]={body:t,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,t instanceof Od.default&&t.on("error",i=>{let a=i instanceof Nm?i:new qc(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[Uu].error=a})}get body(){return this[Uu].stream}get bodyUsed(){return this[Uu].disturbed}async arrayBuffer(){let{buffer:t,byteOffset:r,byteLength:n}=await jle(this);return t.slice(r,r+n)}async formData(){let t=this.headers.get("content-type");if(t.startsWith("application/x-www-form-urlencoded")){let n=new $A,s=new URLSearchParams(await this.text());for(let[i,a]of s)n.append(i,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(xrt(),Crt));return r(this.body,t)}async blob(){let t=this.headers&&this.headers.get("content-type")||this[Uu].body&&this[Uu].body.type||"",r=await this.arrayBuffer();return new Gf([r],{type:t})}async json(){let t=await this.text();return JSON.parse(t)}async text(){let t=await jle(this);return new TextDecoder().decode(t)}buffer(){return jle(this)}};xh.prototype.buffer=(0,Om.deprecate)(xh.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(xh.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,Om.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});gR=(e,t)=>{let r,n,{body:s}=e[Uu];if(e.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Od.default&&typeof s.getBoundary!="function"&&(r=new Od.PassThrough({highWaterMark:t}),n=new Od.PassThrough({highWaterMark:t}),s.pipe(r),s.pipe(n),e[Uu].stream=r,s=n),s},U6r=(0,Om.deprecate)(e=>e.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),t9=(e,t)=>e===null?null:typeof e=="string"?"text/plain;charset=UTF-8":$le(e)?"application/x-www-form-urlencoded;charset=UTF-8":tP(e)?e.type||null:Rl.Buffer.isBuffer(e)||Om.types.isAnyArrayBuffer(e)||ArrayBuffer.isView(e)?null:e instanceof $A?`multipart/form-data; boundary=${t[Uu].boundary}`:e&&typeof e.getBoundary=="function"?`multipart/form-data;boundary=${U6r(e)}`:e instanceof Od.default?null:"text/plain;charset=UTF-8",wrt=e=>{let{body:t}=e[Uu];return t===null?0:tP(t)?t.size:Rl.Buffer.isBuffer(t)?t.length:t&&typeof t.getLengthSync=="function"&&t.hasKnownLength&&t.hasKnownLength()?t.getLengthSync():null},Nrt=async(e,{body:t})=>{t===null?e.end():await B6r(t,e)}});function Ort(e=[]){return new Xo(e.reduce((t,r,n,s)=>(n%2===0&&t.push(s.slice(n,n+2)),t),[]).filter(([t,r])=>{try{return n9(t),Gle(t,String(r)),!0}catch{return!1}}))}var Kle,nP,n9,Gle,Xo,s9=ae(()=>{Kle=require("node:util"),nP=Ne(require("node:http"),1),n9=typeof nP.default.validateHeaderName=="function"?nP.default.validateHeaderName:e=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(e)){let t=new TypeError(`Header name must be a valid HTTP token [${e}]`);throw Object.defineProperty(t,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),t}},Gle=typeof nP.default.validateHeaderValue=="function"?nP.default.validateHeaderValue:(e,t)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(t)){let r=new TypeError(`Invalid character in header content ["${e}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},Xo=class e extends URLSearchParams{constructor(t){let r=[];if(t instanceof e){let n=t.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(t!=null)if(typeof t=="object"&&!Kle.types.isBoxedPrimitive(t)){let n=t[Symbol.iterator];if(n==null)r.push(...Object.entries(t));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...t].map(s=>{if(typeof s!="object"||Kle.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)");return r=r.length>0?r.map(([n,s])=>(n9(n),Gle(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(a,o)=>(n9(a),Gle(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(n9(a),URLSearchParams.prototype[s].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(t){let r=this.getAll(t);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(t)&&(n=n.toLowerCase()),n}forEach(t,r=void 0){for(let n of this.keys())Reflect.apply(t,r,[this.get(n),n,this])}*values(){for(let t of this.keys())yield this.get(t)}*entries(){for(let t of this.keys())yield[t,this.get(t)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((t,r)=>(t[r]=this.getAll(r),t),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((t,r)=>{let n=this.getAll(r);return r==="host"?t[r]=n[0]:t[r]=n.length>1?n:n[0],t},{})}};Object.defineProperties(Xo.prototype,["get","entries","forEach","values"].reduce((e,t)=>(e[t]={enumerable:!0},e),{}))});var F6r,sP,zle=ae(()=>{F6r=new Set([301,302,303,307,308]),sP=e=>F6r.has(e)});var zf,Hc,Drt=ae(()=>{s9();r9();zle();zf=Symbol("Response internals"),Hc=class e extends xh{constructor(t=null,r={}){super(t,r);let n=r.status!=null?r.status:200,s=new Xo(r.headers);if(t!==null&&!s.has("Content-Type")){let i=t9(t,this);i&&s.append("Content-Type",i)}this[zf]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[zf].type}get url(){return this[zf].url||""}get status(){return this[zf].status}get ok(){return this[zf].status>=200&&this[zf].status<300}get redirected(){return this[zf].counter>0}get statusText(){return this[zf].statusText}get headers(){return this[zf].headers}get highWaterMark(){return this[zf].highWaterMark}clone(){return new e(gR(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(t,r=302){if(!sP(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new e(null,{headers:{location:new URL(t).toString()},status:r})}static error(){let t=new e(null,{status:0,statusText:""});return t[zf].type="error",t}static json(t=void 0,r={}){let n=JSON.stringify(t);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new Xo(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new e(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(Hc.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var Prt,Lrt=ae(()=>{Prt=e=>{if(e.search)return e.search;let t=e.href.length-1,r=e.hash||(e.href[t]==="#"?"#":"");return e.href[t-r.length]==="?"?"?":""}});function Mrt(e,t=!1){return e==null||(e=new URL(e),/^(about|blob|data):$/.test(e.protocol))?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function Frt(e){if(!Brt.has(e))throw new TypeError(`Invalid referrerPolicy: ${e}`);return e}function $6r(e){if(/^(http|ws)s:$/.test(e.protocol))return!0;let t=e.host.replace(/(^\[)|(]$)/g,""),r=(0,krt.isIP)(t);return r===4&&/^127\./.test(t)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(t)?!0:e.host==="localhost"||e.host.endsWith(".localhost")?!1:e.protocol==="file:"}function _R(e){return/^about:(blank|srcdoc)$/.test(e)||e.protocol==="data:"||/^(blob|filesystem):$/.test(e.protocol)?!0:$6r(e)}function $rt(e,{referrerURLCallback:t,referrerOriginCallback:r}={}){if(e.referrer==="no-referrer"||e.referrerPolicy==="")return null;let n=e.referrerPolicy;if(e.referrer==="about:client")return"no-referrer";let s=e.referrer,i=Mrt(s),a=Mrt(s,!0);i.toString().length>4096&&(i=a),t&&(i=t(i)),r&&(a=r(a));let o=new URL(e.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return _R(i)&&!_R(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:_R(i)&&!_R(o)?"no-referrer":a;case"same-origin":return i.origin===o.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===o.origin?i:a;case"no-referrer-when-downgrade":return _R(i)&&!_R(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function qrt(e){let t=(e.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of t)n&&Brt.has(n)&&(r=n);return r}var krt,Brt,Urt,Yle=ae(()=>{krt=require("node:net");Brt=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),Urt="strict-origin-when-cross-origin"});var Hrt,Vrt,Fa,iP,q6r,Yf,jrt,Krt=ae(()=>{Hrt=require("node:url"),Vrt=require("node:util");s9();r9();X$();Lrt();Yle();Fa=Symbol("Request internals"),iP=e=>typeof e=="object"&&typeof e[Fa]=="object",q6r=(0,Vrt.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Yf=class e extends xh{constructor(t,r={}){let n;if(iP(t)?n=new URL(t.url):(n=new URL(t),t={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||t.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!iP(r)&&"data"in r&&q6r(),(r.body!=null||iP(t)&&t.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:iP(t)&&t.body!==null?gR(t):null;super(i,{size:r.size||t.size||0});let a=new Xo(r.headers||t.headers||{});if(i!==null&&!a.has("Content-Type")){let u=t9(i,this);u&&a.set("Content-Type",u)}let o=iP(t)?t.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!hrt(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?t.referrer:r.referrer;if(c==="")c="no-referrer";else if(c){let u=new URL(c);c=/^about:(\/\/)?client$/.test(u)?"client":u}else c=void 0;this[Fa]={method:s,redirect:r.redirect||t.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?t.follow===void 0?20:t.follow:r.follow,this.compress=r.compress===void 0?t.compress===void 0?!0:t.compress:r.compress,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent,this.highWaterMark=r.highWaterMark||t.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||t.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||t.referrerPolicy||""}get method(){return this[Fa].method}get url(){return(0,Hrt.format)(this[Fa].parsedURL)}get headers(){return this[Fa].headers}get redirect(){return this[Fa].redirect}get signal(){return this[Fa].signal}get referrer(){if(this[Fa].referrer==="no-referrer")return"";if(this[Fa].referrer==="client")return"about:client";if(this[Fa].referrer)return this[Fa].referrer.toString()}get referrerPolicy(){return this[Fa].referrerPolicy}set referrerPolicy(t){this[Fa].referrerPolicy=Frt(t)}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Yf.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});jrt=e=>{let{parsedURL:t}=e[Fa],r=new Xo(e[Fa].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(e.body===null&&/^(post|put)$/i.test(e.method)&&(n="0"),e.body!==null){let o=wrt(e);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),e.referrerPolicy===""&&(e.referrerPolicy=Urt),e.referrer&&e.referrer!=="no-referrer"?e[Fa].referrer=$rt(e):e[Fa].referrer="no-referrer",e[Fa].referrer instanceof URL&&r.set("Referer",e.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),e.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=e;typeof s=="function"&&(s=s(t));let i=Prt(t),a={path:t.pathname+i,method:e.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:e.insecureHTTPParser,agent:s};return{parsedURL:t,options:a}}});var aP,Grt=ae(()=>{Q$();aP=class extends Nm{constructor(t,r="aborted"){super(t,r)}}});var i9={};Ft(i9,{AbortError:()=>aP,Blob:()=>Gf,FetchError:()=>qc,File:()=>FA,FormData:()=>$A,Headers:()=>Xo,Request:()=>Yf,Response:()=>Hc,blobFrom:()=>vrt,blobFromSync:()=>yrt,default:()=>HA,fileFrom:()=>Srt,fileFromSync:()=>Trt,isRedirect:()=>sP});async function HA(e,t){return new Promise((r,n)=>{let s=new Yf(e,t),{parsedURL:i,options:a}=jrt(s);if(!H6r.has(i.protocol))throw new TypeError(`node-fetch cannot load ${e}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let p=nrt(s.url),m=new Hc(p,{headers:{"Content-Type":p.typeFull}});r(m);return}let o=(i.protocol==="https:"?Yrt.default:zrt.default).request,{signal:c}=s,u=null,l=()=>{let p=new aP("The operation was aborted.");n(p),s.body&&s.body instanceof Cl.default.Readable&&s.body.destroy(p),!(!u||!u.body)&&u.body.emit("error",p)};if(c&&c.aborted){l();return}let d=()=>{l(),h()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let h=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",p=>{n(new qc(`request to ${s.url} failed, reason: ${p.message}`,"system",p)),h()}),V6r(f,p=>{u&&u.body&&u.body.destroy(p)}),process.version<"v14"&&f.on("socket",p=>{let m;p.prependListener("end",()=>{m=p._eventsCount}),p.prependListener("close",_=>{if(u&&m{f.setTimeout(0);let m=Ort(p.rawHeaders);if(sP(p.statusCode)){let E=m.get("Location"),v=null;try{v=E===null?null:new URL(E,s.url)}catch{if(s.redirect!=="manual"){n(new qc(`uri requested responds with an invalid redirect URL: ${E}`,"invalid-redirect")),h();return}}switch(s.redirect){case"error":n(new qc(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),h();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new qc(`maximum redirect reached at: ${s.url}`,"max-redirect")),h();return}let b={headers:new Xo(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:gR(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!prt(s.url,v)||!mrt(s.url,v))for(let T of["authorization","www-authenticate","cookie","cookie2"])b.headers.delete(T);if(p.statusCode!==303&&s.body&&t.body instanceof Cl.default.Readable){n(new qc("Cannot follow redirect with body being a readable stream","unsupported-redirect")),h();return}(p.statusCode===303||(p.statusCode===301||p.statusCode===302)&&s.method==="POST")&&(b.method="GET",b.body=void 0,b.headers.delete("content-length"));let I=qrt(m);I&&(b.referrerPolicy=I),r(HA(new Yf(v,b))),h();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&p.once("end",()=>{c.removeEventListener("abort",d)});let _=(0,Cl.pipeline)(p,new Cl.PassThrough,E=>{E&&n(E)});process.version<"v12.10"&&p.on("aborted",d);let g={url:s.url,status:p.statusCode,statusText:p.statusMessage,headers:m,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},y=m.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||y===null||p.statusCode===204||p.statusCode===304){u=new Hc(_,g),r(u);return}let A={flush:aS.default.Z_SYNC_FLUSH,finishFlush:aS.default.Z_SYNC_FLUSH};if(y==="gzip"||y==="x-gzip"){_=(0,Cl.pipeline)(_,aS.default.createGunzip(A),E=>{E&&n(E)}),u=new Hc(_,g),r(u);return}if(y==="deflate"||y==="x-deflate"){let E=(0,Cl.pipeline)(p,new Cl.PassThrough,v=>{v&&n(v)});E.once("data",v=>{(v[0]&15)===8?_=(0,Cl.pipeline)(_,aS.default.createInflate(),b=>{b&&n(b)}):_=(0,Cl.pipeline)(_,aS.default.createInflateRaw(),b=>{b&&n(b)}),u=new Hc(_,g),r(u)}),E.once("end",()=>{u||(u=new Hc(_,g),r(u))});return}if(y==="br"){_=(0,Cl.pipeline)(_,aS.default.createBrotliDecompress(),E=>{E&&n(E)}),u=new Hc(_,g),r(u);return}u=new Hc(_,g),r(u)}),Nrt(f,s).catch(n)})}function V6r(e,t){let r=oP.Buffer.from(`0\r -\r -`),n=!1,s=!1,i;e.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),e.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",t(u)}},c=u=>{s=oP.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=oP.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&oP.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),e.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var zrt,Yrt,aS,Cl,oP,H6r,AR=ae(()=>{zrt=Ne(require("node:http"),1),Yrt=Ne(require("node:https"),1),aS=Ne(require("node:zlib"),1),Cl=Ne(require("node:stream"),1),oP=require("node:buffer");srt();r9();Drt();s9();Krt();Fle();Grt();zle();Y$();X$();Yle();Hle();H6r=new Set(["data:","http:","https:"])});function R(e,...t){let r={error:0,warn:1,info:2},n=r[F.logLevel]!==void 0?r[F.logLevel]:1;if((r[e]||0)>n)return;let s=t.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return Qrt(l)}else return typeof u=="string"?Qrt(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");F.logBuffer.push({timestamp:c,level:e,message:i}),F.logBuffer.length>F.MAX_LOGS&&F.logBuffer.shift(),console[e](...s)}function Qrt(e){let t=e;if(F.originalEnvVars&&F.accessedEnvVars)for(let[r,n]of Object.entries(F.originalEnvVars)){let s=F.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");t=t.replace(a,i)}}return t}function Wrt(e){try{let t=JSON.parse(e);return JSON.stringify(t,null,2).replace(/\n/g,` - `)}catch{return e}}var jt=ae(()=>{Qt()});function Xrt(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function Qle(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function xl(e){let t="";for(let r=0;r{j6r=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function Si(e){let t;if(typeof e=="string")t=e;else if(Array.isArray(e))t=JSON.stringify(e);else if(typeof e=="object")t=JSON.stringify(e);else{R("error","[Utils] [Common] Unsupported data type");return}R("info","[Utils] [Common]",t.slice(0,200))}function jA(e){let t=e.match(/\((\d{4})\)/);return t?parseInt(t[1]):null}function wh(e){if(/^\d+$/.test(e))return Number(e);let t={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,s=0,i=1;for(let a=0;a=i?n=s*c:n+=s*c,i=c,s=0}}return s>0&&(n+=s),n}function Jrt(e){if(!e||typeof e!="string")return{cleanFileName:"",preferredPlatform:""};let t=e.indexOf("@");if(t===-1)return{cleanFileName:e.trim(),preferredPlatform:""};let r=e.substring(0,t).trim(),n=e.substring(t+1).trim(),s=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(s){let i=s[1],a=s[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:Wle(i)}}else{let i=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(i){let a=i[1],o=i[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:Wle(n)}}else return{cleanFileName:r,preferredPlatform:Wle(n)}}}function Wle(e){if(!e||typeof e!="string")return"";let t=e.trim();return F.allowedPlatforms.includes(t)?t:""}function Zrt(e){if(!e)return[...F.platformOrderArr];if(!F.allowedPlatforms.includes(e))return R("warn",`[Utils] [Common] Invalid platform: ${e}, using default order`),[...F.platformOrderArr];let t=[e];for(let r of F.platformOrderArr)r!==e&&r!==null&&t.push(r);return t.push(null),t}function ent(e){return e?String(e).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Lr(e){return e?String(e).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function KA(e,t){if(!e||!t)return!1;let r=Lr(e),n=Lr(t);if(r===n)return!0;let s=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let i of s)if(r.startsWith(n+i))return!0;return!1}function dr(e){if(!e)return null;let t=e.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(t){let r=t[1]||t[2]||t[3];if(r)return wh(r)}return null}function Xt(e,t,r=null){if(e==null||t==null)return!1;let n=String(e),s=String(t);if(!n||!s)return!1;if(F.strictTitleMatch)return KA(n,s);let i=F.titleNoiseFilter||null,a=i?n.replace(i,"").trim():n,o=Lr(a).toLowerCase(),u=[Lr(s).toLowerCase()];try{u=[...new Set([s,yr(s),xl(s)])].map(f=>Lr(f).toLowerCase()).filter(Boolean)}catch{}let l=r!==null?r:dr(s);if(l!==null&&r===null){let f=s.replace(/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:季|期|部(?!分))?/gi,"").trim();f&&f!==s&&(u=[...new Set([...u,Lr(f).toLowerCase()])])}if(i){let f=s.replace(i,"").trim();f&&f!==s&&(u=[...new Set([...u,Lr(f).toLowerCase()])])}if(l!==null){let f=dr(n);if(l>1){if((f||1)!==l)return!1}else if(l===1&&f!==null&&f!==1)return!1}if(u.some(f=>o.includes(f)))return!0;if(!u.some(f=>{if(Math.abs(o.length-f.length)>Math.max(o.length,f.length)*.7||/^[a-zA-Z0-9]+$/.test(f))return!1;let h=0,p=0;for(let m of f){let _=o.indexOf(m,p);_!==-1&&(h++,p=_+1)}return h/f.length>.8})){let f=s.replace(/[\(\(]\s*(?:19|20)\d{2}\s*[\)\)]|\b(?:19|20)\d{2}\b/g,"").trim();if(f&&f!==s){let h=i?f.replace(i,"").trim():f,p=Lr(h).toLowerCase(),m=/[\(\(]\s*(?:19|20)\d{2}\s*[\)\)]|\b(?:19|20)\d{2}\b/.test(n);if(p&&o.includes(p)&&!m)return!0}}return!1}function At(e,t){let r=e?.constructor?.name;if(t==="array"){if(!Array.isArray(e))throw new TypeError(`${e} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(t==="boolean"){if(typeof e!="boolean"&&typeof e!="number")throw new TypeError(`${e} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof e!==t)throw new TypeError(`${e} \u5FC5\u987B\u662F ${t}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Jt(e){if(!e)return{season:null,baseTitle:null};let t=e.match(/^(.*?)\(\d{4}\)/),r=t?t[1].trim():e.split("(")[0].trim(),n=Lr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:wh(s[1]),baseTitle:n.replace(s[0],"").trim()};let i=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(i)return{season:parseInt(i[1],10),baseTitle:n.replace(i[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let c=n.match(/([一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)$/);return c?{season:wh(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function Pm(e){if(!e)return null;let t=e.match(/第(\d+)集/);if(t)return parseInt(t[1],10);let r=e.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=e.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function Jle(e,t){let{season:r,baseTitle:n}=Jt(e),s=Pm(t);return{baseTitle:n,season:r,episode:s}}var VA,Xle,ds=ae(()=>{Qt();jt();Fu();VA=e=>{let t=e.match(/【(.*?)】/);return t?t[1]:null},Xle=e=>e.split("(")[0].trim()});function rnt(e){let t=e.match(/^S(\d+)$/i);if(t)return`S${String(parseInt(t[1])).padStart(2,"0")}`;let r=e.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:e}function nnt(e){return!e||typeof e!="string"?[]:e.split(",").map(t=>{let r=t.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let g=c.substring(u+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(y=>y.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let h=l.match(/^(.*?)\/([SE]\d+)(?:\/([SE]\d+))?$/i),p=h?h[1].trim():l.trim();if(!p)return null;let m=h?rnt(h[2]):null,_=h&&h[3]?rnt(h[3]):null;return{anime:p,season:m,episode:_,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function Zle(e,{anime:t,season:r,episode:n,source:s}){if(!Array.isArray(e)||e.length===0||!t)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),tnt[c]&&i.add(tnt[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of e)if(Lr(d.anime)===Lr(t)){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?i.size>0&&d.sources.some(f=>i.has(f))&&(c=d):d.all?u=d:l=d}if(c!==null)return c;if(u!==null)return u;if(l!==null)return l}return null}function oS(e,t,r={}){let n=Number(t);if(!n||!Array.isArray(e)||e.length===0)return e;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=p=>{if(!p||typeof p!="object")return null;if(typeof p.p=="string"){let m=p.p.split(","),_=parseFloat(m[0]);if(Number.isFinite(_))return _}if(p.t!==void 0&&p.t!==null){let m=Number(p.t);if(Number.isFinite(m))return m}if(p.progress!==void 0&&p.progress!==null){let m=Number(p.progress);if(Number.isFinite(m))return m/1e3}if(p.timepoint!==void 0&&p.timepoint!==null){let m=Number(p.timepoint);if(Number.isFinite(m))return m}return null},o=i>0?i:a(e[e.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return e;let u=n*1e3,l=p=>Math.max(0,p),d=(p,m=2)=>Number(p.toFixed(m)),f=p=>{let m=l(c!==null?p*c:p+n);return c!==null?d(m,2):m},h=p=>{let m=l(c!==null?p*c:p+u);return c!==null?Math.round(m):m};return e.map(p=>{if(!p||typeof p!="object")return p;let m={...p};if(typeof m.p=="string"){let _=m.p.split(","),g=parseFloat(_[0]);Number.isFinite(g)&&(_[0]=f(g).toFixed(2),m.p=_.join(","))}if(m.t!==void 0&&m.t!==null){let _=Number(m.t);Number.isFinite(_)&&(m.t=f(_))}if(m.progress!==void 0&&m.progress!==null){let _=Number(m.progress);Number.isFinite(_)&&(m.progress=h(_))}if(m.timepoint!==void 0&&m.timepoint!==null){let _=Number(m.timepoint);Number.isFinite(_)&&(m.timepoint=f(_))}return m})}var tnt,ede=ae(()=>{ds();tnt={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var Lm,snt=ae(()=>{ede();Lm=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002 - -\u8F93\u5165\u5B57\u6BB5\u8BF4\u660E\uFF1A -- title: \u67E5\u8BE2\u6807\u9898 -- season: \u5B63\u6570\uFF08\u53EF\u4E3A null\uFF09 -- episode: \u96C6\u6570\uFF08\u53EF\u4E3A null\uFF09 -- year: \u5E74\u4EFD\uFF08\u53EF\u4E3A null\uFF09 -- dynamicPlatformOrder: \u5E73\u53F0\u504F\u597D\u5217\u8868\uFF08\u53EF\u4E3A null\uFF09 -- preferAnimeId: \u504F\u597D\u52A8\u6F2B ID\uFF08\u53EF\u4E3A null\uFF09 -- animes: \u5019\u9009\u52A8\u6F2B\u5217\u8868 - - animeId: \u52A8\u6F2Bid - animeTitle: \u52A8\u6F2B\u6807\u9898\uFF0C(\u5E74\u4EFD)\u524D\u9762\u624D\u662F\u771F\u5B9E\u7684\u6807\u9898 - aliases: \u52A8\u6F2B\u6807\u9898\u7684\u522B\u540D\uFF0C\u89C6\u60C5\u51B5\u53EF\u4EE5\u4F5C\u4E3A(\u52A8\u6F2B\u6807\u9898)\u770B\u5F85 - type: \u7C7B\u578B - startDate: \u53D1\u5E03\u65E5\u671F\uFF0C\u6709\u5E74\u4EFD - episodeCount: \u603B\u96C6\u6570 - source: \u5F39\u5E55\u6765\u6E90 - -\u5339\u914D\u89C4\u5219 (\u6309\u4F18\u5148\u7EA7\u6392\u5E8F): -1. \u5982\u679CpreferAnimeId\u975E\u7A7A\uFF0C\u4E14animes\u5B58\u5728\u8BE5animeId\uFF0C\u5219\u8FD4\u56DE\u8BE5id\u5BF9\u5E94\u7684anime\u548Cepisode -2. \u6807\u9898\u76F8\u4F3C\u5EA6: \u4F18\u5148\u5339\u914D\u6807\u9898\u76F8\u4F3C\u5EA6\u6700\u9AD8\u7684\u6761\u76EE -3. \u5B63\u5EA6\u4E25\u683C\u5339\u914D: \u5982\u679C\u6307\u5B9A\u4E86\u5B63\u5EA6,\u5FC5\u987B\u4E25\u683C\u5339\u914D -4. \u7C7B\u578B\u5339\u914D: episode\u4E3A\u7A7A\u5219\u4F18\u5148\u5339\u914D\u7535\u5F71\uFF0C\u975E\u7A7A\u5219\u5339\u914D\u7535\u89C6\u5267\u7B49 -5. \u5E74\u4EFD\u63A5\u8FD1: \u4F18\u5148\u9009\u62E9\u5E74\u4EFD\u63A5\u8FD1\u7684 -6. \u5E73\u53F0\u5339\u914D\uFF1A\u5982\u679C\u6709\u591A\u4E2A\u9AD8\u5EA6\u76F8\u4F3C\u7684\u7ED3\u679C\u4E14dynamicPlatformOrder\u975E\u7A7A\uFF0C\u5219\u4ECE\u524D\u5F80\u540E\u9009\u62E9\u76F8\u5BF9\u5E94\u7684\u5E73\u53F0 -7. \u96C6\u6570\u5B8C\u6574: \u5982\u679C\u6709\u591A\u4E2A\u9AD8\u5EA6\u76F8\u4F3C\u7684\u7ED3\u679C,\u9009\u62E9\u96C6\u6570\u6700\u5B8C\u6574\u7684 - -\u8BF7\u5206\u6790\u54EA\u4E2A\u52A8\u6F2B\u6700\u7B26\u5408\u67E5\u8BE2\u6761\u4EF6\uFF0C\u5982\u679C\u6307\u5B9A\u4E86\u5B63\u6570\u548C\u96C6\u6570\uFF0C\u8BF7\u4E5F\u8FD4\u56DE\u5BF9\u5E94\u7684\u96C6\u4FE1\u606F\u3002 -\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B JSON \u683C\u5F0F\u8FD4\u56DE\u7ED3\u679C\uFF0C\u4E0D\u8981\u5305\u542B\u4EFB\u4F55\u5176\u4ED6\u5185\u5BB9\uFF1A -{ - "animeIndex": \u5339\u914D\u7684\u52A8\u6F2B\u5728\u5217\u8868\u4E2D\u7684\u7D22\u5F15(\u4ECE0\u5F00\u59CB) \u6216 null -} - -\u5982\u679C\u6CA1\u6709\u627E\u5230\u5408\u9002\u7684\u5339\u914D\uFF0C\u8FD4\u56DE\uFF1A -{ - "animeIndex": null -}`;static get(t,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[t]?(i=this.env[t],this.originalEnvVars.set(t,i)):typeof process<"u"&&process.env?.[t]?(i=process.env[t],this.originalEnvVars.set(t,i)):(i=r,this.originalEnvVars.set(t,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${t} must be a valid number`);break;case"boolean":a=i===!0||i==="true"||i===1||i==="1";break;case"string":default:a=String(i);break}let o=s?this.encryptStr(a):a;return this.accessedEnvVars.set(t,o),a}static set(t,r){typeof process<"u"&&(process.env[t]=String(r)),this.accessedEnvVars.set(t,r)}static encryptStr(t){return"*".repeat(t.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,s)=>{if(n.includes("@")){let[i,a]=n.split("@").map(o=>o.trim());return{name:i||`vod-${s+1}`,url:a}}return{name:`vod-${s+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","tencent,youku,iqiyi,imgo,bilibili,renren,hanjutv,douban","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["tencent","youku","iqiyi","imgo","bilibili","renren","hanjutv","douban"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(i=>i.trim()).every(i=>this.ALLOWED_PLATFORMS.includes(i)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let t=this.get("MERGE_SOURCE_PAIRS","","string");return t?t.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let s=n[0],i=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(s))return null;let a=i.filter(o=>o!==s&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:s,secondaries:a}}).filter(Boolean):[]}static resolveEpisodeTitleFilter(){let t="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?s.trim()).filter(Boolean),n=[];for(let s of r)try{if(s.startsWith("/")&&s.lastIndexOf("/")>0){let a=s.lastIndexOf("/"),o=s.slice(1,a),c=s.slice(a+1);n.push({type:"regex",value:new RegExp(o,c)});continue}if(s.includes("/")){let[a,o]=s.split("/").map(d=>d.trim()),c=Number(o),u=this.isValidIpv4(a),l=this.isValidIpv6(a);if(Number.isInteger(c)){if(u&&c>=0&&c<=32){n.push({type:"cidr",ip:a,prefix:c});continue}if(l&&c>=0&&c<=128){n.push({type:"cidr",ip:a,prefix:c});continue}}}if(this.isValidIpv4(s)||this.isValidIpv6(s)){n.push({type:"exact",value:s});continue}let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n.push({type:"regex",value:new RegExp(`^${i}$`)})}catch{console.warn(`Invalid IP_BLACKLIST entry: ${s}, skipped.`)}return this.accessedEnvVars.set("IP_BLACKLIST",r),n}static isValidIpv4(t){if(!t||typeof t!="string")return!1;let r=t.split(".");return r.length!==4?!1:r.every(n=>{if(!/^(\d{1,3})$/.test(n))return!1;let s=Number(n);return s>=0&&s<=255})}static isValidIpv6(t){if(!t||typeof t!="string")return!1;let r=t.trim();if(!r.includes(":"))return!1;let[n,s]=r.split("::");if(r.split("::").length>2)return!1;let i=n?n.split(":").filter(Boolean):[],a=s?s.split(":").filter(Boolean):[],o=d=>{if(d.length===0)return d;let f=d[d.length-1];if(!f.includes("."))return d;if(!this.isValidIpv4(f))return null;let h=f.split(".").map(_=>Number(_)),p=(h[0]<<8|h[1]).toString(16),m=(h[2]<<8|h[3]).toString(16);return[...d.slice(0,-1),p,m]},c=o(i);if(!c||(a=o(a),!a)||c.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!c.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let t=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!t)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",t);try{return new RegExp(`^(.*?)(?:${t})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let t=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!t)return r;let n=t.split(";");for(let s of n)if(s.includes("->")){let[i,a]=s.split("->").map(o=>o.trim());i&&a&&r.set(i,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(t={}){this.env=t;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA415",min:0,max:50},DOUBAN_COOKIE:{category:"api",type:"text",description:"\u8C46\u74E3Cookie\uFF0C\u7528\u4E8E\u63D0\u5347\u8C46\u74E3\u641C\u7D22/\u8BE6\u60C5\u8BF7\u6C42\u7A33\u5B9A\u6027\uFF0C\u586B\u5199\u6D4F\u89C8\u5668\u4E2D\u5DF2\u767B\u5F55\u8C46\u74E3\u540E\u7684\u5B8C\u6574 Cookie \u5B57\u7B26\u4E32"},DANMU_API_PORT:{category:"system",type:"number",description:"Node \u672C\u5730\u90E8\u7F72\u76D1\u542C\u7AEF\u53E3\uFF0C\u9ED8\u8BA43321",min:1,max:65535},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4tencent,youku,iqiyi,imgo,bilibili,renren,hanjutv,douban"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002 -\u683C\u5F0F\uFF1A\u6E901&\u6E902&\u6E903 \uFF0C\u591A\u7EC4\u7528\u9017\u53F7\u5206\u9694\u3002 -\u793A\u4F8B\uFF1Adandan&animeko&bahamut,bilibili&animeko,dandan`},OTHER_SERVER:{category:"source",type:"text",description:"\u7B2C\u4E09\u65B9\u5F39\u5E55\u670D\u52A1\u5668\uFF0C\u9ED8\u8BA4https://api.danmu.icu"},CUSTOM_SOURCE_API_URL:{category:"source",type:"text",description:"\u81EA\u5B9A\u4E49\u5F39\u5E55\u6E90API\u5730\u5740\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u914D\u7F6E\u540E\u8FD8\u9700\u5728SOURCE_ORDER\u6DFB\u52A0custom\u6E90"},VOD_SERVERS:{category:"source",type:"text",description:"VOD\u7AD9\u70B9\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u540D\u79F0@URL,\u540D\u79F0@URL\uFF0C\u9ED8\u8BA4\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top"},VOD_RETURN_MODE:{category:"source",type:"select",options:["all","fastest"],description:"VOD\u8FD4\u56DE\u6A21\u5F0F\uFF1Aall\uFF08\u6240\u6709\u7AD9\u70B9\uFF09\u6216 fastest\uFF08\u6700\u5FEB\u7684\u7AD9\u70B9\uFF09\uFF0C\u9ED8\u8BA4fastest"},VOD_REQUEST_TIMEOUT:{category:"source",type:"number",description:"VOD\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4\uFF0C\u9ED8\u8BA410000",min:5e3,max:3e4},BILIBILI_COOKIE:{category:"source",type:"text",description:"B\u7AD9Cookie"},YOUKU_CONCURRENCY:{category:"source",type:"number",description:"\u4F18\u9177\u5E76\u53D1\u914D\u7F6E\uFF0C\u9ED8\u8BA48",min:1,max:16},REAL_TIME_PULL_DANDAN:{category:"source",type:"boolean",description:"\u5F39\u5F39\u7B2C\u4E09\u65B9\u5F39\u5E55\u6E90\u5B9E\u65F6\u62C9\u53D6\u5F00\u5173\uFF0C\u9ED8\u8BA4\u4E3Afalse\uFF08\u5173\u95ED\uFF09\uFF0C\u53EF\u9009\u503C\uFF1Atrue\u3001false"},PLATFORM_ORDER:{category:"match",type:"multi-select",options:this.ALLOWED_PLATFORMS,description:`\u5E73\u53F0\u6392\u5E8F\u914D\u7F6E\uFF0C\u53EF\u4EE5\u914D\u7F6E\u81EA\u52A8\u5339\u914D\u65F6\u7684\u4F18\u9009\u5E73\u53F0\u3002 -\u5F53\u914D\u7F6E\u5408\u5E76\u5E73\u53F0\u7684\u65F6\u5019\uFF0C\u53EF\u4EE5\u6307\u5B9A\u671F\u671B\u7684\u5408\u5E76\u6E90\uFF0C -\u793A\u4F8B\uFF1A\u4E00\u4E2A\u7ED3\u679C\u8FD4\u56DE\u4E86"dandan&bilibili1&animeko"\u548C"youku"\u65F6\uFF0C -\u5F53\u914D\u7F6E"youku"\u65F6\u8FD4\u56DE"youku" -\u5F53\u914D\u7F6E"dandan&animeko"\u65F6\u8FD4\u56DE"dandan&bilibili1&animeko"`},ANIME_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u540D\u8FC7\u6EE4\u89C4\u5219"},EPISODE_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u96C6\u6807\u9898\u8FC7\u6EE4\u89C4\u5219"},ENABLE_ANIME_EPISODE_FILTER:{category:"match",type:"boolean",description:"\u63A7\u5236\u624B\u52A8\u641C\u7D22\u7684\u65F6\u5019\u662F\u5426\u6839\u636EANIME_TITLE_FILTER\u8FDB\u884C\u5267\u540D\u8FC7\u6EE4\u4EE5\u53CA\u6839\u636EEPISODE_TITLE_FILTER\u8FDB\u884C\u96C6\u6807\u9898\u8FC7\u6EE4"},STRICT_TITLE_MATCH:{category:"match",type:"boolean",description:"\u4E25\u683C\u6807\u9898\u5339\u914D\u6A21\u5F0F"},TITLE_TO_CHINESE:{category:"match",type:"boolean",description:"\u5916\u8BED\u6807\u9898\u8F6C\u6362\u4E2D\u6587\u5F00\u5173"},ANIME_TITLE_SIMPLIFIED:{category:"match",type:"boolean",description:"\u641C\u7D22\u7684\u5267\u540D\u6807\u9898\u81EA\u52A8\u7E41\u8F6C\u7B80"},TITLE_MAPPING_TABLE:{category:"match",type:"map",description:'\u5267\u540D\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u52A8\u5339\u914D\u65F6\u66FF\u6362\u6807\u9898\u8FDB\u884C\u641C\u7D22\uFF0C\u683C\u5F0F\uFF1A\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;... \uFF0C\u4F8B\u5982\uFF1A"\u5510\u671D\u8BE1\u4E8B\u5F55->\u5510\u671D\u8BE1\u4E8B\u5F55\u4E4B\u897F\u884C;\u56FD\u8272\u82B3\u534E->\u9526\u7EE3\u82B3\u534E"'},AI_BASE_URL:{category:"match",type:"text",description:"AI\u670D\u52A1\u57FA\u7840URL\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Ahttps://api.openai.com/v1"},AI_MODEL:{category:"match",type:"text",description:"AI\u6A21\u578B\u540D\u79F0\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Agpt-4o"},AI_API_KEY:{category:"match",type:"text",description:"AI\u670D\u52A1API\u5BC6\u94A5\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u9700\u624B\u52A8\u586B\u5199"},AI_MATCH_PROMPT:{category:"match",type:"text",description:"AI\u81EA\u52A8\u5339\u914D\u63D0\u793A\u8BCD\u6A21\u677F\uFF0C\u4E0D\u586B\u63D0\u4F9B\u9ED8\u8BA4\u63D0\u793A\u8BCD\uFF0C\u9ED8\u8BA4\u63D0\u793A\u8BCD\u8BF7\u67E5\u770BREADME"},BLOCKED_WORDS:{category:"danmu",type:"text",description:"\u5C4F\u853D\u8BCD\u5217\u8868"},GROUP_MINUTE:{category:"danmu",type:"number",description:"\u5206\u949F\u5185\u5408\u5E76\u53BB\u91CD\uFF080\u8868\u793A\u4E0D\u53BB\u91CD\uFF09\uFF0C\u9ED8\u8BA41",min:0,max:30},DANMU_LIMIT:{category:"danmu",type:"number",description:"\u5F39\u5E55\u6570\u91CF\u9650\u5236\uFF0C\u5355\u4F4D\u4E3Ak\uFF0C\u5373\u5343\uFF1A\u9ED8\u8BA4 0\uFF0C\u8868\u793A\u4E0D\u9650\u5236\u5F39\u5E55\u6570",min:0,max:100},DANMU_SIMPLIFIED_TRADITIONAL:{category:"danmu",type:"select",options:["default","simplified","traditional"],description:"\u5F39\u5E55\u7B80\u7E41\u4F53\u8F6C\u6362\u8BBE\u7F6E\uFF1Adefault\uFF08\u9ED8\u8BA4\u4E0D\u8F6C\u6362\uFF09\u3001simplified\uFF08\u7E41\u8F6C\u7B80\uFF09\u3001traditional\uFF08\u7B80\u8F6C\u7E41\uFF09"},CONVERT_TOP_BOTTOM_TO_SCROLL:{category:"danmu",type:"boolean",description:"\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u8F6C\u6362\u4E3A\u6D6E\u52A8\u5F39\u5E55"},CONVERT_COLOR:{category:"danmu",type:"select",options:["default","white","color"],description:"\u5F39\u5E55\u8F6C\u6362\u989C\u8272\u914D\u7F6E"},COLOR_POOL:{category:"danmu",type:"text",description:"\u81EA\u5B9A\u4E49\u989C\u8272\u6C60\uFF08CONVERT_COLOR\u4E3Acolor\u65F6\u751F\u6548\uFF09\uFF0C\u4E0D\u914D\u7F6E\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60\uFF0C\u683C\u5F0F\uFF1A\u5341\u8FDB\u5236\u989C\u8272\u503C\u9017\u53F7\u5206\u9694"},DANMU_OUTPUT_FORMAT:{category:"danmu",type:"select",options:["json","xml"],description:"\u5F39\u5E55\u8F93\u51FA\u683C\u5F0F\uFF0C\u9ED8\u8BA4json"},DANMU_PUSH_URL:{category:"danmu",type:"text",description:"\u5F39\u5E55\u63A8\u9001\u5730\u5740\uFF0C\u793A\u4F8B http://127.0.0.1:9978/action?do=refresh&type=danmaku&path= "},LIKE_SWITCH:{category:"danmu",type:"boolean",description:"\u5F39\u5E55\u70B9\u8D5E\u6570\u663E\u793A\u5F00\u5173\uFF0C\u9ED8\u8BA4\u5F00\u542F"},DANMU_OFFSET:{category:"danmu",type:"text",sources:this.ALLOWED_SOURCES,description:"\u5F39\u5E55\u65F6\u95F4\u504F\u79FB\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u5267\u540D:\u79D2 \u6216 \u5267\u540D/\u5B63:\u79D2 \u6216 \u5267\u540D/\u5B63/\u96C6:\u79D2\uFF0C\u652F\u6301\u6307\u5B9A\u6765\u6E90\uFF1A\u5267\u540D@\u6765\u6E90:\u79D2 \u6216 \u5267\u540D/\u5B63@\u6765\u6E901&\u6765\u6E902:\u79D2\uFF0C\u591A\u6761\u7528\u9017\u53F7\u5206\u9694\uFF0C\u6B63\u6570\u8868\u793A\u5F39\u5E55\u5EF6\u540E\uFF08\u5411\u53F3\uFF09\uFF0C\u8D1F\u6570\u8868\u793A\u5F39\u5E55\u63D0\u524D\uFF08\u5411\u5DE6\uFF09\uFF0C\u4F8B\u5982\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10"},SEARCH_CACHE_MINUTES:{category:"cache",type:"number",description:"\u641C\u7D22\u7ED3\u679C\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},COMMENT_CACHE_MINUTES:{category:"cache",type:"number",description:"\u5F39\u5E55\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},REMEMBER_LAST_SELECT:{category:"cache",type:"boolean",description:"\u8BB0\u4F4F\u624B\u52A8\u9009\u62E9\u7ED3\u679C"},MAX_LAST_SELECT_MAP:{category:"cache",type:"number",description:"\u8BB0\u4F4F\u4E0A\u6B21\u9009\u62E9\u6620\u5C04\u7F13\u5B58\u5927\u5C0F\u9650\u5236\uFF0C\u9ED8\u8BA4100",min:10,max:1e3},MAX_ANIMES:{category:"cache",type:"number",description:"\u52A8\u6F2B\u6807\u9898\u7F13\u5B58\u6700\u5927\u6570\u91CF\uFF0C\u9ED8\u8BA4100",min:100,max:1e3},UPSTASH_REDIS_REST_URL:{category:"cache",type:"text",description:"Upstash Redis\u8BF7\u6C42\u94FE\u63A5"},UPSTASH_REDIS_REST_TOKEN:{category:"cache",type:"text",description:"Upstash Redis\u8BBF\u95EE\u4EE4\u724C"},LOCAL_REDIS_URL:{category:"cache",type:"text",description:"\u672C\u5730 Redis \u8FDE\u63A5URL\uFF0C\u793A\u4F8B\uFF1Aredis://:password@127.0.0.1:6379/0\uFF0C\u53EA\u652F\u6301\u672C\u5730\u90E8\u7F72\u548Cdocker\u90E8\u7F72"},PROXY_URL:{category:"system",type:"text",description:"\u4EE3\u7406/\u53CD\u4EE3\u5730\u5740"},TMDB_API_KEY:{category:"system",type:"text",description:"TMDB API\u5BC6\u94A5"},LOG_LEVEL:{category:"system",type:"select",options:["debug","info","warn","error"],description:"\u65E5\u5FD7\u7EA7\u522B\u914D\u7F6E"},DEPLOY_PLATFROM_ACCOUNT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8D26\u53F7ID"},DEPLOY_PLATFROM_PROJECT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u9879\u76EE\u540D\u79F0"},DEPLOY_PLATFROM_TOKEN:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8BBF\u95EE\u4EE4\u724C"},NODE_TLS_REJECT_UNAUTHORIZED:{category:"system",type:"number",description:"\u5728\u5EFA\u7ACB HTTPS \u8FDE\u63A5\u65F6\u662F\u5426\u9A8C\u8BC1\u670D\u52A1\u5668\u7684 SSL/TLS \u8BC1\u4E66\uFF0C0\u8868\u793A\u5FFD\u7565\uFF0C\u9ED8\u8BA4\u4E3A1",min:0,max:1},IP_BLACKLIST:{category:"system",type:"text",description:"IP \u9ED1\u540D\u5355\u5217\u8868\uFF0C\u652F\u6301\u9017\u53F7/\u5206\u53F7/\u6362\u884C\u5206\u9694\uFF0C\u652F\u6301 /regex/ \u6216 /regex/i \u6B63\u5219\uFF0C\u652F\u6301 IPv4/IPv6 CIDR\uFF08\u5982 10.0.0.0/4\u30012001:db8::/64\uFF09\u3002\u547D\u4E2D\u5219\u62D2\u7EDD\u8BF7\u6C42"}};return{vodAllowedPlatforms:this.VOD_ALLOWED_PLATFORMS,allowedPlatforms:this.ALLOWED_PLATFORMS,token:this.get("TOKEN","87654321","string",!0),adminToken:this.get("ADMIN_TOKEN","","string",!0),sourceOrderArr:this.resolveSourceOrder(),mergeSourcePairs:this.resolveMergeSourcePairs(),otherServer:this.get("OTHER_SERVER","https://api.danmu.icu","string"),customSourceApiUrl:this.get("CUSTOM_SOURCE_API_URL","","string",!0),vodServers:this.resolveVodServers(),vodReturnMode:this.get("VOD_RETURN_MODE","fastest","string").toLowerCase(),vodRequestTimeout:this.get("VOD_REQUEST_TIMEOUT","10000","string"),bilibliCookie:this.get("BILIBILI_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),realTimePullDandan:this.get("REAL_TIME_PULL_DANDAN",!1,"boolean"),platformOrderArr:this.resolvePlatformOrder(),animeTitleFilter:this.resolveAnimeTitleFilter(),episodeTitleFilter:this.resolveEpisodeTitleFilter(),blockedWords:this.get("BLOCKED_WORDS","","string"),groupMinute:Math.min(this.get("GROUP_MINUTE",1,"number"),30),danmuLimit:this.get("DANMU_LIMIT",0,"number"),proxyUrl:this.get("PROXY_URL","","string",!0),danmuSimplifiedTraditional:this.get("DANMU_SIMPLIFIED_TRADITIONAL","default","string"),danmuPushUrl:this.get("DANMU_PUSH_URL","","string"),likeSwitch:this.get("LIKE_SWITCH",!0,"boolean"),danmuOffset:this.get("DANMU_OFFSET","","string"),danmuOffsetRules:nnt(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",15,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var Ws,F,Qt=ae(()=>{snt();Ws={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.16",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(e={}){return this.env=e,this.envs=Lm.load(this.env),this.originalEnvVars=Object.fromEntries(Lm.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Lm.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=Lm.load(this.env),this.originalEnvVars=Object.fromEntries(Lm.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Lm.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(e){let t=this.envs.proxyUrl||"";if(!t||!e)return e;let r=t.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(e)}catch{return e}let o=a.hostname;for(let c of r)if(c.startsWith("bahamut@")&&o.includes("gamer.com.tw")){s=c.substring(8);break}else if(c.startsWith("tmdb@")&&o.includes("tmdb")){s=c.substring(5);break}else if(c.startsWith("bilibili@")&&o.includes("bilibili")){s=c.substring(9);break}else if(c.startsWith("animeko@")&&(o.includes("animeko")||o.includes("bgm.tv"))){s=c.substring(8);break}else c.startsWith("@")&&!i?i=c.substring(1):!c.includes("@")&&!n&&(n=c);if(s)try{let c=new URL(s);return a.protocol=c.protocol,a.host=c.host,a.port=c.port,c.pathname!=="/"&&(a.pathname=c.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return e}return i?`${i.replace(/\/$/,"")}/${e}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(e)}`:e},getConfig(){if(this._configProxy)return this._configProxy;let e=this;return this._configProxy=new Proxy({},{get(t,r){return r in e.envs?e.envs[r]:r==="version"?e.VERSION:r==="maxLogs"?e.MAX_LOGS:r==="maxAnimes"?e.envs.MAX_ANIMES:r==="maxRecords"?e.MAX_RECORDS:r==="maxLastSelectMap"?e.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?e.makeProxyUrl.bind(e):e[r]},set(t,r,n){return r in e.envs?e.envs[r]=n:e[r]=n,!0}}),this._configProxy}},F=new Proxy({},{get(e,t){return Ws.getConfig()[t]},set(e,t,r){return Ws.getConfig()[t]=r,!0},has(e,t){return t in Ws.getConfig()},ownKeys(e){return Reflect.ownKeys(Ws.getConfig())},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(Ws.getConfig(),t)}})});var Pst={};Ft(Pst,{Deflate:()=>bst,Inflate:()=>xst,constants:()=>Dst,default:()=>O$r,deflate:()=>Ist,deflateRaw:()=>Rst,gzip:()=>Cst,inflate:()=>wst,inflateRaw:()=>Nst,ungzip:()=>Ost});function bR(e){let t=e.length;for(;--t>=0;)e[t]=0}function rde(e,t,r,n,s){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=s,this.has_stree=e&&e.length}function nde(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function Nh(e,t,r,n,s){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=s}function G8r(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=m9,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(B8r*2),this.dyn_dtree=new Uint16Array((2*M8r+1)*2),this.bl_tree=new Uint16Array((2*k8r+1)*2),GA(this.dyn_ltree),GA(this.dyn_dtree),GA(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(U8r+1),this.heap=new Uint16Array(2*Ade+1),GA(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Ade+1),GA(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function p5r(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function bP(e){this.options=g9.assign({level:y5r,method:S5r,chunkSize:16384,windowBits:15,memLevel:8,strategy:v5r},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new lst,this.strm.avail_out=0;let r=fP.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==h9)throw new Error(dS[r]);if(t.header&&fP.deflateSetHeader(this.strm,t.header),t.dictionary){let n;if(typeof t.dictionary=="string"?n=yP.string2buf(t.dictionary):dst.call(t.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(t.dictionary):n=t.dictionary,r=fP.deflateSetDictionary(this.strm,n),r!==h9)throw new Error(dS[r]);this._dict_set=!0}}function wde(e,t){let r=new bP(t);if(r.push(e,!0),r.err)throw r.msg||dS[r.err];return r.result}function T5r(e,t){return t=t||{},t.raw=!0,wde(e,t)}function b5r(e,t){return t=t||{},t.gzip=!0,wde(e,t)}function z5r(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function l$r(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}function IP(e){this.options=g9.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});let t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new lst,this.strm.avail_out=0;let r=Bm.inflateInit2(this.strm,t.windowBits);if(r!==vP)throw new Error(dS[r]);if(this.header=new d$r,Bm.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=yP.string2buf(t.dictionary):Tst.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Bm.inflateSetDictionary(this.strm,t.dictionary),r!==vP)))throw new Error(dS[r])}function Nde(e,t){let r=new IP(t);if(r.push(e),r.err)throw r.msg||dS[r.err];return r.result}function g$r(e,t){return t=t||{},t.raw=!0,Nde(e,t)}var K6r,Vnt,G6r,z6r,Y6r,bde,SP,pP,vR,Ide,jnt,cS,tde,Q6r,Rde,Knt,Gnt,znt,mde,d9,W6r,Ynt,X6r,km,dP,mP,gP,Cde,f9,Qnt,Wnt,Xnt,Jnt,_P,$u,Oh,Znt,J6r,Z6r,est,e8r,tst,rst,int,sde,ant,gde,ont,cnt,t8r,r8r,n8r,unt,s8r,nst,i8r,a8r,o8r,c8r,u8r,l8r,d8r,f8r,h8r,p8r,AP,m8r,g8r,_8r,$a,dS,pS,A8r,_de,E8r,YA,y8r,QA,v8r,S8r,Dd,lnt,Eo,dnt,Dh,T8r,ide,b8r,I8r,a9,R8r,C8r,x8r,w8r,m9,N8r,O8r,D8r,P8r,L8r,Ade,M8r,k8r,B8r,U8r,un,zA,Ph,F8r,SR,xde,Ede,yde,vde,Sde,uS,uP,Vc,IR,fS,RR,$8r,lS,fnt,GA,q8r,H8r,WA,wl,Nl,Vn,cP,Tde,sst,TR,ist,ade,ER,V8r,j8r,lP,K8r,TP,ast,ost,z8r,cst,Y8r,Q8r,W8r,X8r,J8r,Z8r,e5r,t5r,r5r,n5r,s5r,i5r,a5r,fP,o5r,c5r,u5r,g9,ust,EP,l5r,d5r,f5r,h5r,yP,lst,dst,m5r,g5r,_5r,A5r,h9,E5r,y5r,v5r,S5r,I5r,R5r,C5r,x5r,w5r,N5r,o9,O5r,D5r,yR,hnt,pnt,mnt,ode,gnt,P5r,L5r,M5r,k5r,B5r,hP,U5r,fst,hst,_nt,F5r,c9,hS,$5r,q5r,Pd,pst,mst,H5r,Ant,_9,Ent,ynt,vnt,Snt,Tnt,bnt,Int,Rnt,Cnt,p9,Mm,cde,xnt,ude,wnt,Nnt,Ont,Dnt,u9,l9,Pnt,Lnt,Mnt,knt,Bnt,lde,Unt,Fnt,si,gst,_st,V5r,j5r,K5r,G5r,$nt,mS,Ast,Est,yst,vst,Y5r,qnt,dde,fde,Q5r,Sst,W5r,X5r,J5r,Z5r,e$r,t$r,r$r,n$r,s$r,i$r,a$r,o$r,c$r,u$r,Bm,d$r,Tst,f$r,h$r,vP,hde,pde,p$r,Hnt,m$r,_$r,A$r,E$r,y$r,v$r,S$r,T$r,b$r,I$r,R$r,C$r,x$r,w$r,N$r,bst,Ist,Rst,Cst,xst,wst,Nst,Ost,Dst,O$r,Lst=ae(()=>{K6r=0,Vnt=1,G6r=2,z6r=3,Y6r=258,bde=29,SP=256,pP=SP+1+bde,vR=30,Ide=19,jnt=2*pP+1,cS=15,tde=16,Q6r=7,Rde=256,Knt=16,Gnt=17,znt=18,mde=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),d9=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),W6r=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),Ynt=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),X6r=512,km=new Array((pP+2)*2);bR(km);dP=new Array(vR*2);bR(dP);mP=new Array(X6r);bR(mP);gP=new Array(Y6r-z6r+1);bR(gP);Cde=new Array(bde);bR(Cde);f9=new Array(vR);bR(f9);Jnt=e=>e<256?mP[e]:mP[256+(e>>>7)],_P=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},$u=(e,t,r)=>{e.bi_valid>tde-r?(e.bi_buf|=t<>tde-e.bi_valid,e.bi_valid+=r-tde):(e.bi_buf|=t<{$u(e,r[t*2],r[t*2+1])},Znt=(e,t)=>{let r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1},J6r=e=>{e.bi_valid===16?(_P(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},Z6r=(e,t)=>{let r=t.dyn_tree,n=t.max_code,s=t.stat_desc.static_tree,i=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,c=t.stat_desc.max_length,u,l,d,f,h,p,m=0;for(f=0;f<=cS;f++)e.bl_count[f]=0;for(r[e.heap[e.heap_max]*2+1]=0,u=e.heap_max+1;uc&&(f=c,m++),r[l*2+1]=f,!(l>n)&&(e.bl_count[f]++,h=0,l>=o&&(h=a[l-o]),p=r[l*2],e.opt_len+=p*(f+h),i&&(e.static_len+=p*(s[l*2+1]+h)));if(m!==0){do{for(f=c-1;e.bl_count[f]===0;)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[c]--,m-=2}while(m>0);for(f=c;f!==0;f--)for(l=e.bl_count[f];l!==0;)d=e.heap[--u],!(d>n)&&(r[d*2+1]!==f&&(e.opt_len+=(f-r[d*2+1])*r[d*2],r[d*2+1]=f),l--)}},est=(e,t,r)=>{let n=new Array(cS+1),s=0,i,a;for(i=1;i<=cS;i++)s=s+r[i-1]<<1,n[i]=s;for(a=0;a<=t;a++){let o=e[a*2+1];o!==0&&(e[a*2]=Znt(n[o]++,o))}},e8r=()=>{let e,t,r,n,s,i=new Array(cS+1);for(r=0,n=0;n>=7;n{let t;for(t=0;t{e.bi_valid>8?_P(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},int=(e,t,r,n)=>{let s=t*2,i=r*2;return e[s]{let n=e.heap[r],s=r<<1;for(;s<=e.heap_len&&(s{let n,s,i=0,a,o;if(e.sym_next!==0)do n=e.pending_buf[e.sym_buf+i++]&255,n+=(e.pending_buf[e.sym_buf+i++]&255)<<8,s=e.pending_buf[e.sym_buf+i++],n===0?Oh(e,s,t):(a=gP[s],Oh(e,a+SP+1,t),o=mde[a],o!==0&&(s-=Cde[a],$u(e,s,o)),n--,a=Jnt(n),Oh(e,a,r),o=d9[a],o!==0&&(n-=f9[a],$u(e,n,o)));while(i{let r=t.dyn_tree,n=t.stat_desc.static_tree,s=t.stat_desc.has_stree,i=t.stat_desc.elems,a,o,c=-1,u;for(e.heap_len=0,e.heap_max=jnt,a=0;a>1;a>=1;a--)sde(e,r,a);u=i;do a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],sde(e,r,1),o=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=o,r[u*2]=r[a*2]+r[o*2],e.depth[u]=(e.depth[a]>=e.depth[o]?e.depth[a]:e.depth[o])+1,r[a*2+1]=r[o*2+1]=u,e.heap[1]=u++,sde(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],Z6r(e,t),est(r,c,e.bl_count)},ont=(e,t,r)=>{let n,s=-1,i,a=t[0*2+1],o=0,c=7,u=4;for(a===0&&(c=138,u=3),t[(r+1)*2+1]=65535,n=0;n<=r;n++)i=a,a=t[(n+1)*2+1],!(++o{let n,s=-1,i,a=t[0*2+1],o=0,c=7,u=4;for(a===0&&(c=138,u=3),n=0;n<=r;n++)if(i=a,a=t[(n+1)*2+1],!(++o{let t;for(ont(e,e.dyn_ltree,e.l_desc.max_code),ont(e,e.dyn_dtree,e.d_desc.max_code),gde(e,e.bl_desc),t=Ide-1;t>=3&&e.bl_tree[Ynt[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},r8r=(e,t,r,n)=>{let s;for($u(e,t-257,5),$u(e,r-1,5),$u(e,n-4,4),s=0;s{let t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return 0;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return 1;for(r=32;r{unt||(e8r(),unt=!0),e.l_desc=new nde(e.dyn_ltree,Qnt),e.d_desc=new nde(e.dyn_dtree,Wnt),e.bl_desc=new nde(e.bl_tree,Xnt),e.bi_buf=0,e.bi_valid=0,tst(e)},nst=(e,t,r,n)=>{$u(e,(K6r<<1)+(n?1:0),3),rst(e),_P(e,r),_P(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r},i8r=e=>{$u(e,Vnt<<1,3),Oh(e,Rde,km),J6r(e)},a8r=(e,t,r,n)=>{let s,i,a=0;e.level>0?(e.strm.data_type===2&&(e.strm.data_type=n8r(e)),gde(e,e.l_desc),gde(e,e.d_desc),a=t8r(e),s=e.opt_len+3+7>>>3,i=e.static_len+3+7>>>3,i<=s&&(s=i)):s=i=r+5,r+4<=s&&t!==-1?nst(e,t,r,n):e.strategy===4||i===s?($u(e,(Vnt<<1)+(n?1:0),3),ant(e,km,dP)):($u(e,(G6r<<1)+(n?1:0),3),r8r(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),ant(e,e.dyn_ltree,e.dyn_dtree)),tst(e),n&&rst(e)},o8r=(e,t,r)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(gP[r]+SP+1)*2]++,e.dyn_dtree[Jnt(t)*2]++),e.sym_next===e.sym_end),c8r=s8r,u8r=nst,l8r=a8r,d8r=o8r,f8r=i8r,h8r={_tr_init:c8r,_tr_stored_block:u8r,_tr_flush_block:l8r,_tr_tally:d8r,_tr_align:f8r},p8r=(e,t,r,n)=>{let s=e&65535|0,i=e>>>16&65535|0,a=0;for(;r!==0;){a=r>2e3?2e3:r,r-=a;do s=s+t[n++]|0,i=i+s|0;while(--a);s%=65521,i%=65521}return s|i<<16|0},AP=p8r,m8r=()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t},g8r=new Uint32Array(m8r()),_8r=(e,t,r,n)=>{let s=g8r,i=n+r;e^=-1;for(let a=n;a>>8^s[(e^t[a])&255];return e^-1},$a=_8r,dS={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},pS={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:A8r,_tr_stored_block:_de,_tr_flush_block:E8r,_tr_tally:YA,_tr_align:y8r}=h8r,{Z_NO_FLUSH:QA,Z_PARTIAL_FLUSH:v8r,Z_FULL_FLUSH:S8r,Z_FINISH:Dd,Z_BLOCK:lnt,Z_OK:Eo,Z_STREAM_END:dnt,Z_STREAM_ERROR:Dh,Z_DATA_ERROR:T8r,Z_BUF_ERROR:ide,Z_DEFAULT_COMPRESSION:b8r,Z_FILTERED:I8r,Z_HUFFMAN_ONLY:a9,Z_RLE:R8r,Z_FIXED:C8r,Z_DEFAULT_STRATEGY:x8r,Z_UNKNOWN:w8r,Z_DEFLATED:m9}=pS,N8r=9,O8r=15,D8r=8,P8r=29,L8r=256,Ade=L8r+1+P8r,M8r=30,k8r=19,B8r=2*Ade+1,U8r=15,un=3,zA=258,Ph=zA+un+1,F8r=32,SR=42,xde=57,Ede=69,yde=73,vde=91,Sde=103,uS=113,uP=666,Vc=1,IR=2,fS=3,RR=4,$8r=3,lS=(e,t)=>(e.msg=dS[t],t),fnt=e=>e*2-(e>4?9:0),GA=e=>{let t=e.length;for(;--t>=0;)e[t]=0},q8r=e=>{let t,r,n,s=e.w_size;t=e.hash_size,n=t;do r=e.head[--n],e.head[n]=r>=s?r-s:0;while(--t);t=s,n=t;do r=e.prev[--n],e.prev[n]=r>=s?r-s:0;while(--t)},H8r=(e,t,r)=>(t<{let t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))},Nl=(e,t)=>{E8r(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,wl(e.strm)},Vn=(e,t)=>{e.pending_buf[e.pending++]=t},cP=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},Tde=(e,t,r,n)=>{let s=e.avail_in;return s>n&&(s=n),s===0?0:(e.avail_in-=s,t.set(e.input.subarray(e.next_in,e.next_in+s),r),e.state.wrap===1?e.adler=AP(e.adler,t,s,r):e.state.wrap===2&&(e.adler=$a(e.adler,t,s,r)),e.next_in+=s,e.total_in+=s,s)},sst=(e,t)=>{let r=e.max_chain_length,n=e.strstart,s,i,a=e.prev_length,o=e.nice_match,c=e.strstart>e.w_size-Ph?e.strstart-(e.w_size-Ph):0,u=e.window,l=e.w_mask,d=e.prev,f=e.strstart+zA,h=u[n+a-1],p=u[n+a];e.prev_length>=e.good_match&&(r>>=2),o>e.lookahead&&(o=e.lookahead);do if(s=t,!(u[s+a]!==p||u[s+a-1]!==h||u[s]!==u[n]||u[++s]!==u[n+1])){n+=2,s++;do;while(u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&na){if(e.match_start=t,a=i,i>=o)break;h=u[n+a-1],p=u[n+a]}}while((t=d[t&l])>c&&--r!==0);return a<=e.lookahead?a:e.lookahead},TR=e=>{let t=e.w_size,r,n,s;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Ph)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),q8r(e),n+=t),e.strm.avail_in===0)break;if(r=Tde(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=un)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=WA(e,e.ins_h,e.window[s+1]);e.insert&&(e.ins_h=WA(e,e.ins_h,e.window[s+un-1]),e.prev[s&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=s,s++,e.insert--,!(e.lookahead+e.insert{let r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,n,s,i,a=0,o=e.strm.avail_in;do{if(n=65535,i=e.bi_valid+42>>3,e.strm.avail_outs+e.strm.avail_in&&(n=s+e.strm.avail_in),n>i&&(n=i),n>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,wl(e.strm),s&&(s>n&&(s=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+s),e.strm.next_out),e.strm.next_out+=s,e.strm.avail_out-=s,e.strm.total_out+=s,e.block_start+=s,n-=s),n&&(Tde(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(a===0);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_wateri&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(Tde(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,r=i>e.w_size?e.w_size:i,s=e.strstart-e.block_start,(s>=r||(s||t===Dd)&&t!==QA&&e.strm.avail_in===0&&s<=i)&&(n=s>i?i:s,a=t===Dd&&e.strm.avail_in===0&&n===s?1:0,_de(e,e.block_start,n,a),e.block_start+=n,wl(e.strm)),a?fS:Vc)},ade=(e,t)=>{let r,n;for(;;){if(e.lookahead=un&&(e.ins_h=WA(e,e.ins_h,e.window[e.strstart+un-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-Ph&&(e.match_length=sst(e,r)),e.match_length>=un)if(n=YA(e,e.strstart-e.match_start,e.match_length-un),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=un){e.match_length--;do e.strstart++,e.ins_h=WA(e,e.ins_h,e.window[e.strstart+un-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=WA(e,e.ins_h,e.window[e.strstart+1]);else n=YA(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Nl(e,!1),e.strm.avail_out===0))return Vc}return e.insert=e.strstart{let r,n,s;for(;;){if(e.lookahead=un&&(e.ins_h=WA(e,e.ins_h,e.window[e.strstart+un-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=un-1,r!==0&&e.prev_length4096)&&(e.match_length=un-1)),e.prev_length>=un&&e.match_length<=e.prev_length){s=e.strstart+e.lookahead-un,n=YA(e,e.strstart-1-e.prev_match,e.prev_length-un),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=s&&(e.ins_h=WA(e,e.ins_h,e.window[e.strstart+un-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=un-1,e.strstart++,n&&(Nl(e,!1),e.strm.avail_out===0))return Vc}else if(e.match_available){if(n=YA(e,0,e.window[e.strstart-1]),n&&Nl(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Vc}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=YA(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart{let r,n,s,i,a=e.window;for(;;){if(e.lookahead<=zA){if(TR(e),e.lookahead<=zA&&t===QA)return Vc;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=un&&e.strstart>0&&(s=e.strstart-1,n=a[s],n===a[++s]&&n===a[++s]&&n===a[++s])){i=e.strstart+zA;do;while(n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&se.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=un?(r=YA(e,1,e.match_length-un),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=YA(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Nl(e,!1),e.strm.avail_out===0))return Vc}return e.insert=0,t===Dd?(Nl(e,!0),e.strm.avail_out===0?fS:RR):e.sym_next&&(Nl(e,!1),e.strm.avail_out===0)?Vc:IR},j8r=(e,t)=>{let r;for(;;){if(e.lookahead===0&&(TR(e),e.lookahead===0)){if(t===QA)return Vc;break}if(e.match_length=0,r=YA(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Nl(e,!1),e.strm.avail_out===0))return Vc}return e.insert=0,t===Dd?(Nl(e,!0),e.strm.avail_out===0?fS:RR):e.sym_next&&(Nl(e,!1),e.strm.avail_out===0)?Vc:IR};lP=[new Nh(0,0,0,0,ist),new Nh(4,4,8,4,ade),new Nh(4,5,16,8,ade),new Nh(4,6,32,32,ade),new Nh(4,4,16,16,ER),new Nh(8,16,32,32,ER),new Nh(8,16,128,128,ER),new Nh(8,32,128,256,ER),new Nh(32,128,258,1024,ER),new Nh(32,258,258,4096,ER)],K8r=e=>{e.window_size=2*e.w_size,GA(e.head),e.max_lazy_match=lP[e.level].max_lazy,e.good_match=lP[e.level].good_length,e.nice_match=lP[e.level].nice_length,e.max_chain_length=lP[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=un-1,e.match_available=0,e.ins_h=0};TP=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.status!==SR&&t.status!==xde&&t.status!==Ede&&t.status!==yde&&t.status!==vde&&t.status!==Sde&&t.status!==uS&&t.status!==uP?1:0},ast=e=>{if(TP(e))return lS(e,Dh);e.total_in=e.total_out=0,e.data_type=w8r;let t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?xde:t.wrap?SR:uS,e.adler=t.wrap===2?0:1,t.last_flush=-2,A8r(t),Eo},ost=e=>{let t=ast(e);return t===Eo&&K8r(e.state),t},z8r=(e,t)=>TP(e)||e.state.wrap!==2?Dh:(e.state.gzhead=t,Eo),cst=(e,t,r,n,s,i)=>{if(!e)return Dh;let a=1;if(t===b8r&&(t=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),s<1||s>N8r||r!==m9||n<8||n>15||t<0||t>9||i<0||i>C8r||n===8&&a!==1)return lS(e,Dh);n===8&&(n=9);let o=new G8r;return e.state=o,o.strm=e,o.status=SR,o.wrap=a,o.gzhead=null,o.w_bits=n,o.w_size=1<cst(e,t,m9,O8r,D8r,x8r),Q8r=(e,t)=>{if(TP(e)||t>lnt||t<0)return e?lS(e,Dh):Dh;let r=e.state;if(!e.output||e.avail_in!==0&&!e.input||r.status===uP&&t!==Dd)return lS(e,e.avail_out===0?ide:Dh);let n=r.last_flush;if(r.last_flush=t,r.pending!==0){if(wl(e),e.avail_out===0)return r.last_flush=-1,Eo}else if(e.avail_in===0&&fnt(t)<=fnt(n)&&t!==Dd)return lS(e,ide);if(r.status===uP&&e.avail_in!==0)return lS(e,ide);if(r.status===SR&&r.wrap===0&&(r.status=uS),r.status===SR){let s=m9+(r.w_bits-8<<4)<<8,i=-1;if(r.strategy>=a9||r.level<2?i=0:r.level<6?i=1:r.level===6?i=2:i=3,s|=i<<6,r.strstart!==0&&(s|=F8r),s+=31-s%31,cP(r,s),r.strstart!==0&&(cP(r,e.adler>>>16),cP(r,e.adler&65535)),e.adler=1,r.status=uS,wl(e),r.pending!==0)return r.last_flush=-1,Eo}if(r.status===xde){if(e.adler=0,Vn(r,31),Vn(r,139),Vn(r,8),r.gzhead)Vn(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Vn(r,r.gzhead.time&255),Vn(r,r.gzhead.time>>8&255),Vn(r,r.gzhead.time>>16&255),Vn(r,r.gzhead.time>>24&255),Vn(r,r.level===9?2:r.strategy>=a9||r.level<2?4:0),Vn(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(Vn(r,r.gzhead.extra.length&255),Vn(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=$a(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=Ede;else if(Vn(r,0),Vn(r,0),Vn(r,0),Vn(r,0),Vn(r,0),Vn(r,r.level===9?2:r.strategy>=a9||r.level<2?4:0),Vn(r,$8r),r.status=uS,wl(e),r.pending!==0)return r.last_flush=-1,Eo}if(r.status===Ede){if(r.gzhead.extra){let s=r.pending,i=(r.gzhead.extra.length&65535)-r.gzindex;for(;r.pending+i>r.pending_buf_size;){let o=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+o),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>s&&(e.adler=$a(e.adler,r.pending_buf,r.pending-s,s)),r.gzindex+=o,wl(e),r.pending!==0)return r.last_flush=-1,Eo;s=0,i-=o}let a=new Uint8Array(r.gzhead.extra);r.pending_buf.set(a.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending+=i,r.gzhead.hcrc&&r.pending>s&&(e.adler=$a(e.adler,r.pending_buf,r.pending-s,s)),r.gzindex=0}r.status=yde}if(r.status===yde){if(r.gzhead.name){let s=r.pending,i;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>s&&(e.adler=$a(e.adler,r.pending_buf,r.pending-s,s)),wl(e),r.pending!==0)return r.last_flush=-1,Eo;s=0}r.gzindexs&&(e.adler=$a(e.adler,r.pending_buf,r.pending-s,s)),r.gzindex=0}r.status=vde}if(r.status===vde){if(r.gzhead.comment){let s=r.pending,i;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>s&&(e.adler=$a(e.adler,r.pending_buf,r.pending-s,s)),wl(e),r.pending!==0)return r.last_flush=-1,Eo;s=0}r.gzindexs&&(e.adler=$a(e.adler,r.pending_buf,r.pending-s,s))}r.status=Sde}if(r.status===Sde){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(wl(e),r.pending!==0))return r.last_flush=-1,Eo;Vn(r,e.adler&255),Vn(r,e.adler>>8&255),e.adler=0}if(r.status=uS,wl(e),r.pending!==0)return r.last_flush=-1,Eo}if(e.avail_in!==0||r.lookahead!==0||t!==QA&&r.status!==uP){let s=r.level===0?ist(r,t):r.strategy===a9?j8r(r,t):r.strategy===R8r?V8r(r,t):lP[r.level].func(r,t);if((s===fS||s===RR)&&(r.status=uP),s===Vc||s===fS)return e.avail_out===0&&(r.last_flush=-1),Eo;if(s===IR&&(t===v8r?y8r(r):t!==lnt&&(_de(r,0,0,!1),t===S8r&&(GA(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),wl(e),e.avail_out===0))return r.last_flush=-1,Eo}return t!==Dd?Eo:r.wrap<=0?dnt:(r.wrap===2?(Vn(r,e.adler&255),Vn(r,e.adler>>8&255),Vn(r,e.adler>>16&255),Vn(r,e.adler>>24&255),Vn(r,e.total_in&255),Vn(r,e.total_in>>8&255),Vn(r,e.total_in>>16&255),Vn(r,e.total_in>>24&255)):(cP(r,e.adler>>>16),cP(r,e.adler&65535)),wl(e),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?Eo:dnt)},W8r=e=>{if(TP(e))return Dh;let t=e.state.status;return e.state=null,t===uS?lS(e,T8r):Eo},X8r=(e,t)=>{let r=t.length;if(TP(e))return Dh;let n=e.state,s=n.wrap;if(s===2||s===1&&n.status!==SR||n.lookahead)return Dh;if(s===1&&(e.adler=AP(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){s===0&&(GA(n.head),n.strstart=0,n.block_start=0,n.insert=0);let c=new Uint8Array(n.w_size);c.set(t.subarray(r-n.w_size,r),0),t=c,r=n.w_size}let i=e.avail_in,a=e.next_in,o=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,TR(n);n.lookahead>=un;){let c=n.strstart,u=n.lookahead-(un-1);do n.ins_h=WA(n,n.ins_h,n.window[c+un-1]),n.prev[c&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=c,c++;while(--u);n.strstart=c,n.lookahead=un-1,TR(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=un-1,n.match_available=0,e.next_in=a,e.input=o,e.avail_in=i,n.wrap=s,Eo},J8r=Y8r,Z8r=cst,e5r=ost,t5r=ast,r5r=z8r,n5r=Q8r,s5r=W8r,i5r=X8r,a5r="pako deflate (from Nodeca project)",fP={deflateInit:J8r,deflateInit2:Z8r,deflateReset:e5r,deflateResetKeep:t5r,deflateSetHeader:r5r,deflate:n5r,deflateEnd:s5r,deflateSetDictionary:i5r,deflateInfo:a5r},o5r=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c5r=function(e){let t=Array.prototype.slice.call(arguments,1);for(;t.length;){let r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(let n in r)o5r(r,n)&&(e[n]=r[n])}}return e},u5r=e=>{let t=0;for(let n=0,s=e.length;n=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;EP[254]=EP[254]=1;l5r=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,r,n,s,i,a=e.length,o=0;for(s=0;s>>6,t[i++]=128|r&63):r<65536?(t[i++]=224|r>>>12,t[i++]=128|r>>>6&63,t[i++]=128|r&63):(t[i++]=240|r>>>18,t[i++]=128|r>>>12&63,t[i++]=128|r>>>6&63,t[i++]=128|r&63);return t},d5r=(e,t)=>{if(t<65534&&e.subarray&&ust)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n{let r=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let n,s,i=new Array(r*2);for(s=0,n=0;n4){i[s++]=65533,n+=o-1;continue}for(a&=o===2?31:o===3?15:7;o>1&&n1){i[s++]=65533;continue}a<65536?i[s++]=a:(a-=65536,i[s++]=55296|a>>10&1023,i[s++]=56320|a&1023)}return d5r(i,s)},h5r=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let r=t-1;for(;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+EP[e[r]]>t?r:t},yP={string2buf:l5r,buf2string:f5r,utf8border:h5r};lst=p5r,dst=Object.prototype.toString,{Z_NO_FLUSH:m5r,Z_SYNC_FLUSH:g5r,Z_FULL_FLUSH:_5r,Z_FINISH:A5r,Z_OK:h9,Z_STREAM_END:E5r,Z_DEFAULT_COMPRESSION:y5r,Z_DEFAULT_STRATEGY:v5r,Z_DEFLATED:S5r}=pS;bP.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,s,i;if(this.ended)return!1;for(t===~~t?i=t:i=t===!0?A5r:m5r,typeof e=="string"?r.input=yP.string2buf(e):dst.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){if(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(i===g5r||i===_5r)&&r.avail_out<=6){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(s=fP.deflate(r,i),s===E5r)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),s=fP.deflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===h9;if(r.avail_out===0){this.onData(r.output);continue}if(i>0&&r.next_out>0){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(r.avail_in===0)break}return!0};bP.prototype.onData=function(e){this.chunks.push(e)};bP.prototype.onEnd=function(e){e===h9&&(this.result=g9.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};I5r=bP,R5r=wde,C5r=T5r,x5r=b5r,w5r=pS,N5r={Deflate:I5r,deflate:R5r,deflateRaw:C5r,gzip:x5r,constants:w5r},o9=16209,O5r=16191,D5r=function(t,r){let n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y,A,E,v,b,I,T,x,w,D=t.state;n=t.next_in,x=t.input,s=n+(t.avail_in-5),i=t.next_out,w=t.output,a=i-(r-t.avail_out),o=i+(t.avail_out-257),c=D.dmax,u=D.wsize,l=D.whave,d=D.wnext,f=D.window,h=D.hold,p=D.bits,m=D.lencode,_=D.distcode,g=(1<>>24,h>>>=E,p-=E,E=A>>>16&255,E===0)w[i++]=A&65535;else if(E&16){v=A&65535,E&=15,E&&(p>>=E,p-=E),p<15&&(h+=x[n++]<>>24,h>>>=E,p-=E,E=A>>>16&255,E&16){if(b=A&65535,E&=15,pc){t.msg="invalid distance too far back",D.mode=o9;break e}if(h>>>=E,p-=E,E=i-a,b>E){if(E=b-E,E>l&&D.sane){t.msg="invalid distance too far back",D.mode=o9;break e}if(I=0,T=f,d===0){if(I+=u-E,E2;)w[i++]=T[I++],w[i++]=T[I++],w[i++]=T[I++],v-=3;v&&(w[i++]=T[I++],v>1&&(w[i++]=T[I++]))}else{I=i-b;do w[i++]=w[I++],w[i++]=w[I++],w[i++]=w[I++],v-=3;while(v>2);v&&(w[i++]=w[I++],v>1&&(w[i++]=w[I++]))}}else if(E&64){t.msg="invalid distance code",D.mode=o9;break e}else{A=_[(A&65535)+(h&(1<>3,n-=v,p-=v<<3,h&=(1<{let c=o.bits,u=0,l=0,d=0,f=0,h=0,p=0,m=0,_=0,g=0,y=0,A,E,v,b,I,T=null,x,w=new Uint16Array(yR+1),D=new Uint16Array(yR+1),M=null,L,U,G;for(u=0;u<=yR;u++)w[u]=0;for(l=0;l=1&&w[f]===0;f--);if(h>f&&(h=f),f===0)return s[i++]=1<<24|64<<16|0,s[i++]=1<<24|64<<16|0,o.bits=1,0;for(d=1;d0&&(e===mnt||f!==1))return-1;for(D[1]=0,u=1;uhnt||e===gnt&&g>pnt)return 1;for(;;){L=u-m,a[l]+1=x?(U=M[a[l]-x],G=T[a[l]-x]):(U=96,G=0),A=1<>m)+E]=L<<24|U<<16|G|0;while(E!==0);for(A=1<>=1;if(A!==0?(y&=A-1,y+=A):y=0,l++,--w[u]===0){if(u===f)break;u=t[r+a[l]]}if(u>h&&(y&b)!==v){for(m===0&&(m=h),I+=d,p=u-m,_=1<hnt||e===gnt&&g>pnt)return 1;v=y&b,s[v]=h<<24|p<<16|I-i|0}}return y!==0&&(s[I+y]=u-m<<24|64<<16|0),o.bits=h,0},hP=B5r,U5r=0,fst=1,hst=2,{Z_FINISH:_nt,Z_BLOCK:F5r,Z_TREES:c9,Z_OK:hS,Z_STREAM_END:$5r,Z_NEED_DICT:q5r,Z_STREAM_ERROR:Pd,Z_DATA_ERROR:pst,Z_MEM_ERROR:mst,Z_BUF_ERROR:H5r,Z_DEFLATED:Ant}=pS,_9=16180,Ent=16181,ynt=16182,vnt=16183,Snt=16184,Tnt=16185,bnt=16186,Int=16187,Rnt=16188,Cnt=16189,p9=16190,Mm=16191,cde=16192,xnt=16193,ude=16194,wnt=16195,Nnt=16196,Ont=16197,Dnt=16198,u9=16199,l9=16200,Pnt=16201,Lnt=16202,Mnt=16203,knt=16204,Bnt=16205,lde=16206,Unt=16207,Fnt=16208,si=16209,gst=16210,_st=16211,V5r=852,j5r=592,K5r=15,G5r=K5r,$nt=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);mS=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.mode<_9||t.mode>_st?1:0},Ast=e=>{if(mS(e))return Pd;let t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=_9,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(V5r),t.distcode=t.distdyn=new Int32Array(j5r),t.sane=1,t.back=-1,hS},Est=e=>{if(mS(e))return Pd;let t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,Ast(e)},yst=(e,t)=>{let r;if(mS(e))return Pd;let n=e.state;return t<0?(r=0,t=-t):(r=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?Pd:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,Est(e))},vst=(e,t)=>{if(!e)return Pd;let r=new z5r;e.state=r,r.strm=e,r.window=null,r.mode=_9;let n=yst(e,t);return n!==hS&&(e.state=null),n},Y5r=e=>vst(e,G5r),qnt=!0,Q5r=e=>{if(qnt){dde=new Int32Array(512),fde=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(hP(fst,e.lens,0,288,dde,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;hP(hst,e.lens,0,32,fde,0,e.work,{bits:5}),qnt=!1}e.lencode=dde,e.lenbits=9,e.distcode=fde,e.distbits=5},Sst=(e,t,r,n)=>{let s,i=e.state;return i.window===null&&(i.wsize=1<=i.wsize?(i.window.set(t.subarray(r-i.wsize,r),0),i.wnext=0,i.whave=i.wsize):(s=i.wsize-i.wnext,s>n&&(s=n),i.window.set(t.subarray(r-n,r-n+s),i.wnext),n-=s,n?(i.window.set(t.subarray(r-n,r),0),i.wnext=n,i.whave=i.wsize):(i.wnext+=s,i.wnext===i.wsize&&(i.wnext=0),i.whave{let r,n,s,i,a,o,c,u,l,d,f,h,p,m,_=0,g,y,A,E,v,b,I,T,x=new Uint8Array(4),w,D,M=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(mS(e)||!e.output||!e.input&&e.avail_in!==0)return Pd;r=e.state,r.mode===Mm&&(r.mode=cde),a=e.next_out,s=e.output,c=e.avail_out,i=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,d=o,f=c,T=hS;e:for(;;)switch(r.mode){case _9:if(r.wrap===0){r.mode=cde;break}for(;l<16;){if(o===0)break e;o--,u+=n[i++]<>>8&255,r.check=$a(r.check,x,2,0),u=0,l=0,r.mode=Ent;break}if(r.head&&(r.head.done=!1),!(r.wrap&1)||(((u&255)<<8)+(u>>8))%31){e.msg="incorrect header check",r.mode=si;break}if((u&15)!==Ant){e.msg="unknown compression method",r.mode=si;break}if(u>>>=4,l-=4,I=(u&15)+8,r.wbits===0&&(r.wbits=I),I>15||I>r.wbits){e.msg="invalid window size",r.mode=si;break}r.dmax=1<>8&1),r.flags&512&&r.wrap&4&&(x[0]=u&255,x[1]=u>>>8&255,r.check=$a(r.check,x,2,0)),u=0,l=0,r.mode=ynt;case ynt:for(;l<32;){if(o===0)break e;o--,u+=n[i++]<>>8&255,x[2]=u>>>16&255,x[3]=u>>>24&255,r.check=$a(r.check,x,4,0)),u=0,l=0,r.mode=vnt;case vnt:for(;l<16;){if(o===0)break e;o--,u+=n[i++]<>8),r.flags&512&&r.wrap&4&&(x[0]=u&255,x[1]=u>>>8&255,r.check=$a(r.check,x,2,0)),u=0,l=0,r.mode=Snt;case Snt:if(r.flags&1024){for(;l<16;){if(o===0)break e;o--,u+=n[i++]<>>8&255,r.check=$a(r.check,x,2,0)),u=0,l=0}else r.head&&(r.head.extra=null);r.mode=Tnt;case Tnt:if(r.flags&1024&&(h=r.length,h>o&&(h=o),h&&(r.head&&(I=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(i,i+h),I)),r.flags&512&&r.wrap&4&&(r.check=$a(r.check,n,h,i)),o-=h,i+=h,r.length-=h),r.length))break e;r.length=0,r.mode=bnt;case bnt:if(r.flags&2048){if(o===0)break e;h=0;do I=n[i+h++],r.head&&I&&r.length<65536&&(r.head.name+=String.fromCharCode(I));while(I&&h>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Mm;break;case Cnt:for(;l<32;){if(o===0)break e;o--,u+=n[i++]<>>=l&7,l-=l&7,r.mode=lde;break}for(;l<3;){if(o===0)break e;o--,u+=n[i++]<>>=1,l-=1,u&3){case 0:r.mode=xnt;break;case 1:if(Q5r(r),r.mode=u9,t===c9){u>>>=2,l-=2;break e}break;case 2:r.mode=Nnt;break;case 3:e.msg="invalid block type",r.mode=si}u>>>=2,l-=2;break;case xnt:for(u>>>=l&7,l-=l&7;l<32;){if(o===0)break e;o--,u+=n[i++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=si;break}if(r.length=u&65535,u=0,l=0,r.mode=ude,t===c9)break e;case ude:r.mode=wnt;case wnt:if(h=r.length,h){if(h>o&&(h=o),h>c&&(h=c),h===0)break e;s.set(n.subarray(i,i+h),a),o-=h,i+=h,c-=h,a+=h,r.length-=h;break}r.mode=Mm;break;case Nnt:for(;l<14;){if(o===0)break e;o--,u+=n[i++]<>>=5,l-=5,r.ndist=(u&31)+1,u>>>=5,l-=5,r.ncode=(u&15)+4,u>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=si;break}r.have=0,r.mode=Ont;case Ont:for(;r.have>>=3,l-=3}for(;r.have<19;)r.lens[M[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,w={bits:r.lenbits},T=hP(U5r,r.lens,0,19,r.lencode,0,r.work,w),r.lenbits=w.bits,T){e.msg="invalid code lengths set",r.mode=si;break}r.have=0,r.mode=Dnt;case Dnt:for(;r.have>>24,y=_>>>16&255,A=_&65535,!(g<=l);){if(o===0)break e;o--,u+=n[i++]<>>=g,l-=g,r.lens[r.have++]=A;else{if(A===16){for(D=g+2;l>>=g,l-=g,r.have===0){e.msg="invalid bit length repeat",r.mode=si;break}I=r.lens[r.have-1],h=3+(u&3),u>>>=2,l-=2}else if(A===17){for(D=g+3;l>>=g,l-=g,I=0,h=3+(u&7),u>>>=3,l-=3}else{for(D=g+7;l>>=g,l-=g,I=0,h=11+(u&127),u>>>=7,l-=7}if(r.have+h>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=si;break}for(;h--;)r.lens[r.have++]=I}}if(r.mode===si)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=si;break}if(r.lenbits=9,w={bits:r.lenbits},T=hP(fst,r.lens,0,r.nlen,r.lencode,0,r.work,w),r.lenbits=w.bits,T){e.msg="invalid literal/lengths set",r.mode=si;break}if(r.distbits=6,r.distcode=r.distdyn,w={bits:r.distbits},T=hP(hst,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,w),r.distbits=w.bits,T){e.msg="invalid distances set",r.mode=si;break}if(r.mode=u9,t===c9)break e;case u9:r.mode=l9;case l9:if(o>=6&&c>=258){e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=o,r.hold=u,r.bits=l,D5r(e,f),a=e.next_out,s=e.output,c=e.avail_out,i=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,r.mode===Mm&&(r.back=-1);break}for(r.back=0;_=r.lencode[u&(1<>>24,y=_>>>16&255,A=_&65535,!(g<=l);){if(o===0)break e;o--,u+=n[i++]<>E)],g=_>>>24,y=_>>>16&255,A=_&65535,!(E+g<=l);){if(o===0)break e;o--,u+=n[i++]<>>=E,l-=E,r.back+=E}if(u>>>=g,l-=g,r.back+=g,r.length=A,y===0){r.mode=Bnt;break}if(y&32){r.back=-1,r.mode=Mm;break}if(y&64){e.msg="invalid literal/length code",r.mode=si;break}r.extra=y&15,r.mode=Pnt;case Pnt:if(r.extra){for(D=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Lnt;case Lnt:for(;_=r.distcode[u&(1<>>24,y=_>>>16&255,A=_&65535,!(g<=l);){if(o===0)break e;o--,u+=n[i++]<>E)],g=_>>>24,y=_>>>16&255,A=_&65535,!(E+g<=l);){if(o===0)break e;o--,u+=n[i++]<>>=E,l-=E,r.back+=E}if(u>>>=g,l-=g,r.back+=g,y&64){e.msg="invalid distance code",r.mode=si;break}r.offset=A,r.extra=y&15,r.mode=Mnt;case Mnt:if(r.extra){for(D=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=si;break}r.mode=knt;case knt:if(c===0)break e;if(h=f-c,r.offset>h){if(h=r.offset-h,h>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=si;break}h>r.wnext?(h-=r.wnext,p=r.wsize-h):p=r.wnext-h,h>r.length&&(h=r.length),m=r.window}else m=s,p=a-r.offset,h=r.length;h>c&&(h=c),c-=h,r.length-=h;do s[a++]=m[p++];while(--h);r.length===0&&(r.mode=l9);break;case Bnt:if(c===0)break e;s[a++]=r.length,c--,r.mode=l9;break;case lde:if(r.wrap){for(;l<32;){if(o===0)break e;o--,u|=n[i++]<{if(mS(e))return Pd;let t=e.state;return t.window&&(t.window=null),e.state=null,hS},J5r=(e,t)=>{if(mS(e))return Pd;let r=e.state;return r.wrap&2?(r.head=t,t.done=!1,hS):Pd},Z5r=(e,t)=>{let r=t.length,n,s,i;return mS(e)||(n=e.state,n.wrap!==0&&n.mode!==p9)?Pd:n.mode===p9&&(s=1,s=AP(s,t,r,0),s!==n.check)?pst:(i=Sst(e,t,r,r),i?(n.mode=gst,mst):(n.havedict=1,hS))},e$r=Est,t$r=yst,r$r=Ast,n$r=Y5r,s$r=vst,i$r=W5r,a$r=X5r,o$r=J5r,c$r=Z5r,u$r="pako inflate (from Nodeca project)",Bm={inflateReset:e$r,inflateReset2:t$r,inflateResetKeep:r$r,inflateInit:n$r,inflateInit2:s$r,inflate:i$r,inflateEnd:a$r,inflateGetHeader:o$r,inflateSetDictionary:c$r,inflateInfo:u$r};d$r=l$r,Tst=Object.prototype.toString,{Z_NO_FLUSH:f$r,Z_FINISH:h$r,Z_OK:vP,Z_STREAM_END:hde,Z_NEED_DICT:pde,Z_STREAM_ERROR:p$r,Z_DATA_ERROR:Hnt,Z_MEM_ERROR:m$r}=pS;IP.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,s=this.options.dictionary,i,a,o;if(this.ended)return!1;for(t===~~t?a=t:a=t===!0?h$r:f$r,Tst.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),i=Bm.inflate(r,a),i===pde&&s&&(i=Bm.inflateSetDictionary(r,s),i===vP?i=Bm.inflate(r,a):i===Hnt&&(i=pde));r.avail_in>0&&i===hde&&r.state.wrap>0&&e[r.next_in]!==0;)Bm.inflateReset(r),i=Bm.inflate(r,a);switch(i){case p$r:case Hnt:case pde:case m$r:return this.onEnd(i),this.ended=!0,!1}if(o=r.avail_out,r.next_out&&(r.avail_out===0||i===hde))if(this.options.to==="string"){let c=yP.utf8border(r.output,r.next_out),u=r.next_out-c,l=yP.buf2string(r.output,c);r.next_out=u,r.avail_out=n-u,u&&r.output.set(r.output.subarray(c,c+u),0),this.onData(l)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(!(i===vP&&o===0)){if(i===hde)return i=Bm.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,!0;if(r.avail_in===0)break}}return!0};IP.prototype.onData=function(e){this.chunks.push(e)};IP.prototype.onEnd=function(e){e===vP&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=g9.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};_$r=IP,A$r=Nde,E$r=g$r,y$r=Nde,v$r=pS,S$r={Inflate:_$r,inflate:A$r,inflateRaw:E$r,ungzip:y$r,constants:v$r},{Deflate:T$r,deflate:b$r,deflateRaw:I$r,gzip:R$r}=N5r,{Inflate:C$r,inflate:x$r,inflateRaw:w$r,ungzip:N$r}=S$r,bst=T$r,Ist=b$r,Rst=I$r,Cst=R$r,xst=C$r,wst=x$r,Nst=w$r,Ost=N$r,Dst=pS,O$r={Deflate:bst,deflate:Ist,deflateRaw:Rst,gzip:Cst,Inflate:xst,inflate:wst,inflateRaw:Nst,ungzip:Ost,constants:Dst}});function Cs(e){return D$r[e]||e}function Ode(e,t){if(!e)return()=>{};if(e.aborted)return t.abort(),()=>{};let r=()=>{t.abort()};return e.addEventListener("abort",r,{once:!0}),()=>{e.removeEventListener("abort",r)}}async function Me(e,t={}){let r=parseInt(t.retries||"0",10)||0,n=Array.isArray(t.validStatusCodes)?t.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=$e.getStore()||"system";a>0?(R("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${e}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):R("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${e}`);let c=parseInt(t.timeout||F.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=Ode(t.signal,u);try{let f;if(typeof WebAssembly>"u"){R("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(AR(),i9))).default;f=await g(e,{method:"GET",headers:{...t.headers},signal:u.signal})}else f=await fetch(e,{method:"GET",headers:{...t.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let h;if(t.base64Data){R("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),y=new Uint8Array(g),A="",E=32768;for(let v=0;v(Lst(),Pst))).inflate(new Uint8Array(g));y=new TextDecoder("utf-8").decode(E)}catch(A){throw R("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] pako\u89E3\u538B\u7F29\u5931\u8D25`,A),A}}h=y}else h=await f.text();let p;try{p=JSON.parse(h)}catch{p=h}let m={},_=[];for(let[g,y]of f.headers.entries())g.toLowerCase()==="set-cookie"?_.push(y):m[g]=y;return _.length>0&&(m["set-cookie"]=_.join(";")),a>0&&R("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:p,status:f.status,headers:m}}catch(f){clearTimeout(l),s=f;let h=$e.getStore()||"system";if(t.signal?.aborted)throw f;if(f.name==="AbortError"?(R("error",`[${h}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(R("error",`[${h}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),R("error","- \u6D88\u606F:",f.message),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(R("error","- \u7801:",f.cause.code),R("error","- \u539F\u56E0:",f.cause.message))),a0?(R("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${e}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(g=>setTimeout(g,100)):await new Promise(g=>setTimeout(g,Math.min(1e3*Math.pow(2,o-1),5e3)))):R("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${e}`);let u=parseInt(r.timeout||F.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=Ode(r.signal,l),{headers:h={},params:p,allow_redirects:m=!0}=r,_={method:"POST",headers:{...h},body:t,signal:l.signal};m||(_.redirect="manual");try{let g;if(typeof WebAssembly>"u"){R("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let E=(await Promise.resolve().then(()=>(AR(),i9))).default;g=await E(e,_)}else g=await fetch(e,_);clearTimeout(d);let y=await g.text();if(!g.ok&&!s.includes(g.status))throw R("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,y),new Error(`HTTP error! status: ${g.status}`);let A;try{A=JSON.parse(y)}catch{A=y}return o>0&&R("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:A,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let y=$e.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(R("error",`[${y}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(R("error",`[${y}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),R("error","- \u6D88\u606F:",g.message),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(R("error","- \u7801:",g.cause.code),R("error","- \u539F\u56E0:",g.cause.message))),o]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").trim():e}catch(t){let r=$e.getStore()||"system";return R("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${t.message}`),e}}function tt(e,t=200){return new Response(JSON.stringify(e),{status:t,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function Bst(e,t=200){if(typeof e!="string"||!e.trim().startsWith("s,n="";for(let s in e)e.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(e[s]));return n}function RP(e={}){let t={};for(let[s,i]of Object.entries(e))typeof i=="boolean"?t[s]=i?"true":"false":i==null?t[s]="":t[s]=String(i);let r=[];for(let s in t)Object.prototype.hasOwnProperty.call(t,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(t[s]);n.push(`${i}=${a}`)}return n.join("&")}function xR(e,t){let r=e,n="",s=e.indexOf("#"),i="";s!==-1&&(r=e.substring(0,s),i=e.substring(s));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let u=n.split("&");for(let l of u)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let u in t)Object.prototype.hasOwnProperty.call(t,u)&&(o[u]=t[u]);let c=[];for(let u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(`${encodeURIComponent(u)}=${encodeURIComponent(o[u])}`);return r+(c.length?"?"+c.join("&"):"")+i}function Ust(e){let t=e.indexOf("//")+2;t===1&&(t=0);let r=e.indexOf("/",t);if(r===-1)return"/";let n=e.indexOf("?",r),s=e.indexOf("#",r),i=n!==-1?n:s!==-1?s:e.length;return e.substring(r,i)||"/"}async function Lde(e,t={},r){let{headers:n={},sniffLimit:s}=t,i=parseInt(s||"32768",10)||32768,a=parseInt(t.timeout||F.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=Ode(t.signal,o);try{let l=$e.getStore()||"system";R("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${e}`);let d=await fetch(e,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let v=$e.getStore()||"system";R("warn",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let b=await d.text();if(clearTimeout(c),r&&!r(b.slice(0,i)))return R("info",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(b)}catch{return b}}let h=0,p=[],m=!1,_="",g=!1;for(;;){let{done:v,value:b}=await f.read();if(v)break;if(h+=b.length,!g&&r){let I=new TextDecoder("utf-8").decode(b,{stream:!0});if(_+=I,!r(_)){let T=$e.getStore()||"system";R("info",`[${T}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${h}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),m=!0;break}h>i&&(g=!0,_=null)}p.push(b)}if(clearTimeout(c),m)return null;let y=new Uint8Array(h),A=0;for(let v of p)y.set(v,A),A+=v.length;let E=new TextDecoder("utf-8").decode(y);try{return JSON.parse(E)}catch{return E}}catch(l){let d=$e.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||R("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var Mst,$e,D$r,$r=ae(()=>{Qt();jt();Mst=require("node:async_hooks"),$e=new Mst.AsyncLocalStorage,D$r={360:"360kan",imgo:"mango"}});function fs(e){let t=0;for(let r=0;r>>0}return t.toString(16)}function wR(e,t){return e==="lastSelectMap"&&t instanceof Map?JSON.stringify(Object.fromEntries(t)):JSON.stringify(t)}function Ti(e){function t(A){let E="";for(let v=0;v>6),E+=String.fromCharCode(128|b&63)):(E+=String.fromCharCode(224|b>>12),E+=String.fromCharCode(128|b>>6&63),E+=String.fromCharCode(128|b&63))}return E}e=t(e);function r(A,E){return A<>>32-E}function n(A,E){let v=A&1073741824,b=E&1073741824,I=A&2147483648,T=E&2147483648,x=(A&1073741823)+(E&1073741823);return v&b?x^2147483648^I^T:v|b?x&1073741824?x^3221225472^I^T:x^1073741824^I^T:x^I^T}function s(A,E,v){return A&E|~A&v}function i(A,E,v){return A&v|E&~v}function a(A,E,v){return A^E^v}function o(A,E,v){return E^(A|~v)}function c(A,E,v,b,I,T,x){return A=n(A,n(n(s(E,v,b),I),x)),n(r(A,T),E)}function u(A,E,v,b,I,T,x){return A=n(A,n(n(i(E,v,b),I),x)),n(r(A,T),E)}function l(A,E,v,b,I,T,x){return A=n(A,n(n(a(E,v,b),I),x)),n(r(A,T),E)}function d(A,E,v,b,I,T,x){return A=n(A,n(n(o(E,v,b),I),x)),n(r(A,T),E)}function f(A){let E=A.length,v=((E+8>>>6)+1)*16,b=new Array(v).fill(0);for(let I=0;I>2]|=A.charCodeAt(I)<>2]|=128<>>v*8&255).toString(16);E+=I.substr(I.length-2,2)}return E}let p=f(e),m=1732584193,_=4023233417,g=2562383102,y=271733878;for(let A=0;A>3,d=u&7;if(d===0){let[f,h]=Bde(i,o);switch(o=h,l){case 1:c.id=f;break;case 2:c.progress=f;break;case 3:c.mode=f;break;case 4:c.fontsize=f;break;case 5:c.color=f;break;case 8:c.ctime=f;break;case 9:c.weight=f;break;case 11:c.pool=f;break;case 13:c.attr=f;break;case 15:c.like_num=f;break;case 17:c.dm_type_v2=f;break}}else if(d===2){let[f,h]=Fst(i,o);switch(o=h,l){case 6:c.midHash=Ld(f);break;case 7:c.content=Ld(f);break;case 10:c.action=Ld(f);break;case 12:c.idStr=Ld(f);break;case 14:c.animation=Ld(f);break;case 16:c.color_v2=Ld(f);break}}else{let[f,h]=Bde(i,o);o=h}}r.push(c)}return r}function Bde(e,t){let r=0n,n=0n,s=t;for(;;){let i=e[s++];if(r|=BigInt(i&127)<>>0)%9999999,t<1e4?t+1e4:t}function $st(e,t){let r=new Uint8Array(e.length);for(let n=0;nVst[t]))}function y9(e){let s=new Array(44);for(let i=0;i<4;i++)s[i]=e.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=$st(E9(L$r(a)),Uint8Array.from([P$r[i/4],0,0,0]))),s[i]=$st(s[i-4],a)}return s}function M$r(e,t){let s=new Uint8Array(e);s=Mde(s,t.slice(10*4,11*4));for(let i=9;i>=1;i--)s=xP(s),s=CP(s),s=Mde(s,t.slice(i*4,(i+1)*4)),s=k$r(s);return s=xP(s),s=CP(s),s=Mde(s,t.slice(0,4)),s}function Mde(e,t){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=e[s+4*n]^t[n][s];return r}function CP(e){let t=new Array(256);for(let r=0;r<256;r++)t[Vst[r]]=r;return Uint8Array.from(e.map(r=>t[r]))}function xP(e){let t=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)t[r+4*n]=e[r+4*((n-r+4)%4)];return t}function k$r(e){function t(n,s){let i=0;for(let a=0;a<8;a++){s&1&&(i^=n);let o=n&128;n=n<<1&255,o&&(n^=27),s>>=1}return i}let r=new Uint8Array(16);for(let n=0;n<4;n++){let s=e.slice(4*n,4*n+4);r[4*n+0]=t(s[0],14)^t(s[1],11)^t(s[2],13)^t(s[3],9),r[4*n+1]=t(s[0],9)^t(s[1],14)^t(s[2],11)^t(s[3],13),r[4*n+2]=t(s[0],13)^t(s[1],9)^t(s[2],14)^t(s[3],11),r[4*n+3]=t(s[0],11)^t(s[1],13)^t(s[2],9)^t(s[3],14)}return r}function B$r(e,t){let r=y9(t),n=16,s=new Uint8Array(e.length);for(let i=0;i=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function Ld(e){let t="",r=0;for(;r=192&&n<224){let s=e[r++];t+=String.fromCharCode((n&31)<<6|s&63)}else if(n>=224&&n<240){let s=e[r++],i=e[r++];t+=String.fromCharCode((n&15)<<12|(s&63)<<6|i&63)}else if(n>=240){let s=e[r++],i=e[r++],a=e[r++],c=((n&7)<<18|(s&63)<<12|(i&63)<<6|a&63)-65536;t+=String.fromCharCode(55296+(c>>10),56320+(c&1023))}}return t}function _S(e){let t=[];for(let r=0;r>6),t.push(128|n&63);else if(n<55296||n>=57344)t.push(224|n>>12),t.push(128|n>>6&63),t.push(128|n&63);else{r++;let s=e.charCodeAt(r),i=65536+((n&1023)<<10|s&1023);t.push(240|i>>18),t.push(128|i>>12&63),t.push(128|i>>6&63),t.push(128|i&63)}}return new Uint8Array(t)}function $$r(e,t){try{let r=gS(e),n=_S(t),s=B$r(r,n),i=U$r(s);return Ld(i)}catch(r){return R("error","[Utils] [Codec]",r),null}}function wP(e){let t=typeof e=="string"?e.trim():JSON.stringify(e??"");try{return JSON.parse(t)}catch{}let n=$$r(t,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return t}function q$r(e){let t=[];for(let r=0;r>6),t.push(128|n&63)):n<65536&&(t.push(224|n>>12),t.push(128|n>>6&63),t.push(128|n&63))}return t}function v9(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=t[(e[n]&3)<<4|e[n+1]>>4],r+=t[(e[n+1]&15)<<2|e[n+2]>>6],r+=t[e[n+2]&63];return n>2],n+1>4],r+=t[(e[n+1]&15)<<2],r+="="):(r+=t[(e[n]&3)<<4],r+="==")),r}function kde(e){function t(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=e.length*8;for(let u=0;u>2]|=e.charCodeAt(u)<<(3-u)%4*8;n[e.length>>2]|=128<<(3-e.length%4)*8,n[(e.length+8>>6)*16+15]=s;let i=new Array(64),a=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],o=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];for(let u=0;u>>3,w=t(17,i[y-2])^t(19,i[y-2])^i[y-2]>>>10;i[y]=i[y-16]+x+i[y-7]+w|0}let A=t(6,p)^t(11,p)^t(25,p),E=p&m^~p&_,v=g+A+E+o[y]+i[y]|0,b=t(2,l)^t(13,l)^t(22,l),I=l&d^l&f^d&f,T=b+I|0;g=_,_=m,m=p,p=h+v|0,h=f,f=d,d=l,l=v+T|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+h|0,a[4]=a[4]+p|0,a[5]=a[5]+m|0,a[6]=a[6]+_|0,a[7]=a[7]+g|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function jst(e,t){let n=q$r(e);n.length>64&&(n=kde(e)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let s=n.map(c=>c^92),i=n.map(c=>c^54),a=kde(String.fromCharCode(...i)+t),o=kde(String.fromCharCode(...s)+String.fromCharCode(...a));return v9(o)}function NP(e,t,r,n){let s=e+"t"+t;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ti(s)}function qst(e){if(e<=65535)return String.fromCharCode(e);e-=65536;let t=(e>>10)+55296,r=(e&1023)+56320;return String.fromCharCode(t,r)}function Um(e){if(!e)return e;let t={"<":"<",">":">","&":"&",""":'"',"'":"'"};return e.replace(/&[a-zA-Z]+;/g,r=>t[r]||r).replace(/&#(\d+);/g,(r,n)=>qst(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>qst(parseInt(n,16)))}var Vst,P$r,aa=ae(()=>{jt();Vst=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],P$r=[0,1,2,4,8,16,32,64,128,27,54]});var Gst={};Ft(Gst,{getRedisCaches:()=>$de,getRedisKey:()=>H$r,judgeRedisValid:()=>qde,pingRedis:()=>Kst,runPipeline:()=>Fde,setRedisKey:()=>Ude,setRedisKeyWithExpiry:()=>V$r,updateRedisCaches:()=>OP});async function Kst(){let e=`${F.redisUrl}/ping`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${F.redisToken}`}})).json()}catch(t){R("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",t.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",t.name),t.cause&&(R("error","- [Utils] [Redis] \u7801:",t.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",t.cause.message))}}async function H$r(e){let t=`${F.redisUrl}/get/${e}`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${F.redisToken}`}})).json()}catch(r){R("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(R("error","- [Utils] [Redis] \u7801:",r.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function Ude(e,t){let r=wR(e,t),n=fs(r);if(F.lastHashes[e]===n)return R("info",`[Utils] [Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${F.redisUrl}/set/${e}`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${F.redisToken}`,"Content-Type":"application/json"},body:r})).json();return F.lastHashes[e]=n,R("info",`[Utils] [Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F`),a}catch(i){R("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(R("error","- [Utils] [Redis] \u7801:",i.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function V$r(e,t,r){let n=wR(e,t),s=fs(n);if(F.lastHashes[e]===s)return R("info",`[Utils] [Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${F.redisUrl}/set/${e}?EX=${r}`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${F.redisToken}`,"Content-Type":"application/json"},body:n})).json();return F.lastHashes[e]=s,R("info",`[Utils] [Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){R("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(R("error","- [Utils] [Redis] \u7801:",a.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function Fde(e){let t=`${F.redisUrl}/pipeline`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"POST",headers:{Authorization:`Bearer ${F.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(e)})).json()}catch(r){R("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(R("error","- [Utils] [Redis] \u7801:",r.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function $de(){if(!F.redisCacheInitialized)try{R("info","[Utils] [Redis] getRedisCaches start.");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await Fde(t);F.animes=r[0].result?JSON.parse(r[0].result):F.animes,F.episodeIds=r[1].result?JSON.parse(r[1].result):F.episodeIds,F.episodeNum=r[2].result?JSON.parse(r[2].result):F.episodeNum,F.reqRecords=r[3].result?JSON.parse(r[3].result):F.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(F.lastSelectMap=new Map(Object.entries(n)),R("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${F.lastSelectMap.size} entries`)),F.todayReqNum=r[5].result?parseInt(r[5].result,10):F.todayReqNum,F.lastHashes.animes=fs(JSON.stringify(F.animes)),F.lastHashes.episodeIds=fs(JSON.stringify(F.episodeIds)),F.lastHashes.episodeNum=fs(JSON.stringify(F.episodeNum)),F.lastHashes.reqRecords=fs(JSON.stringify(F.reqRecords)),F.lastHashes.lastSelectMap=fs(JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.lastHashes.todayReqNum=fs(JSON.stringify(F.todayReqNum)),F.redisCacheInitialized=!0,R("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(e){R("error",`[Utils] [Redis] getRedisCaches failed: ${e.message}`,e.stack),F.redisCacheInitialized=!0}}async function OP(){try{R("info","[Utils] [Redis] updateCaches start.");let e=[],t=[],r=[{key:"animes",value:F.animes},{key:"episodeIds",value:F.episodeIds},{key:"episodeNum",value:F.episodeNum},{key:"reqRecords",value:F.reqRecords},{key:"lastSelectMap",value:F.lastSelectMap},{key:"todayReqNum",value:F.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=fs(i);a!==F.lastHashes[n]&&(e.push(["SET",n,i]),t.push({key:n,hash:a}))}if(e.length>0){R("info",`[Utils] [Redis] Updating ${e.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let n=await Fde(e),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,R("warn",`[Utils] [Redis] Failed to update Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{F.lastHashes[a]=o}),R("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):R("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else R("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(e){R("error",`[Utils] [Redis] updateRedisCaches failed: ${e.message}`,e.stack),R("error",`[Utils] [Redis] Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function qde(e){if(!F.redisValid&&F.redisUrl&&F.redisToken&&e!=="/favicon.ico"&&e!=="/robots.txt"){let t=await Kst();t&&t.result&&t.result==="PONG"&&(F.redisValid=!0)}}var S9=ae(()=>{Qt();jt();aa()});var Lh,T9,b9,I9,R9,Hde,Vde,C9,Gt,NR,Vi=ae(()=>{ds();Lh=class e{constructor({animeId:t=111,bangumiId:r="",animeTitle:n="",type:s="",typeDescription:i="",imageUrl:a="",startDate:o="",episodeCount:c=1,rating:u=0,isFavorited:l=!0,source:d="",links:f=[],mergedChildren:h=[],isHiddenChild:p=!1}={}){At(t,"number"),At(r,"string"),At(n,"string"),At(s,"string","type"),At(i,"string"),At(a,"string"),At(o,"string"),At(c,"number"),At(u,"number"),At(l,"boolean"),At(d,"string"),At(f,"array"),At(h,"array"),At(p,"boolean"),this.links=f.map(m=>T9.fromJson(m)),Object.assign(this,{animeId:t,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:h,isHiddenChild:p})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(t.links||[]).map(n=>T9.fromJson(n));return new e({...t,links:r})}toJson(){return{...this,links:this.links.map(t=>t.toJson())}}},T9=class e{constructor({name:t="",url:r="",title:n="",id:s=10001}={}){At(t,"string"),At(r,"string"),At(n,"string"),At(s,"number"),Object.assign(this,{name:t,url:r,title:n,id:s})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},b9=class e{constructor({episodeId:t=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){At(t,"number"),At(r,"number"),At(n,"string"),At(s,"string"),At(i,"string","type"),At(a,"string"),At(o,"number"),At(c,"string"),Object.assign(this,{episodeId:t,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},I9=class{constructor({episodeId:t="",episodeTitle:r=""}={}){this.episodeId=t,this.episodeTitle=r}};I9.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};R9=class e{constructor({animeId:t=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){At(t,"number"),At(r,"string"),At(n,"string"),At(s,"string"),At(i,"array"),Object.assign(this,{animeId:t,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new I9(a))})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this,episodes:this.episodes.map(t=>t.toJson())}}},Hde=class e{constructor({id:t="",airDate:r="",name:n="",episodeCount:s=0}={}){At(t,"string"),At(r,"string"),At(n,"string"),At(s,"number"),Object.assign(this,{id:t,airDate:r,name:n,episodeCount:s})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},Vde=class e{constructor({seasonId:t="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){At(t,"string"),At(r,"number"),At(n,"string"),At(s,"string"),At(i,"string"),Object.assign(this,{seasonId:t,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},C9=class e{constructor({animeId:t=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){At(t,"number"),At(r,"string"),At(n,"string"),At(s,"string"),At(i,"boolean"),At(a,"number"),At(o,"boolean"),At(c,"number"),At(u,"string"),At(l,"string"),At(d,"array"),At(f,"array");let h=d.map(p=>Hde.fromJson(p));Object.assign(this,{animeId:t,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:h,episodes:f})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=t.episodes.map(n=>Vde.fromJson(n));return new e({...t,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(t=>t.toJson()),episodes:this.episodes.map(t=>t.toJson())}}},Gt=class e{constructor({type:t="",segmentList:r=[],duration:n=0}={}){At(t,"string"),At(r,"array"),At(n,"number"),this.segmentList=r.map(s=>NR.fromJson(s)),Object.assign(this,{type:t,duration:n})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(t.segmentList||[]).map(n=>NR.fromJson(n));return new e({...t,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(t=>t.toJson())}}},NR=class e{constructor({type:t,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){At(t,"string","type"),At(r,"number","segment_start"),At(n,"number","segment_end"),At(s,"string","url"),i!==void 0&&At(i,"string","data"),a!==void 0&&At(a,"string","_m_h5_tk"),o!==void 0&&At(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:t,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}}});var eit={};Ft(eit,{addAnime:()=>ar,addEpisode:()=>Jst,cleanupExpiredIPs:()=>O9,findAnimeIdByCommentId:()=>N9,findAnimeTitleById:()=>zde,findIndexById:()=>w9,findTitleById:()=>Gde,findUrlById:()=>FP,getCommentCache:()=>Fm,getDirname:()=>D9,getLastSearch:()=>Kde,getLocalCaches:()=>Xde,getPreferAnimeId:()=>Wde,getSearchCache:()=>kP,isCommentCacheValid:()=>Xst,isSearchCacheValid:()=>Wst,judgeLocalCacheValid:()=>Jde,readCacheFromFile:()=>AS,removeEarliestAnime:()=>cr,removeEpisodeByUrl:()=>Zst,resolveAnimeById:()=>ES,resolveAnimeByIdFromDetailStore:()=>yS,resolveEpisodeContextById:()=>DR,setCommentCache:()=>UP,setLastSearch:()=>jde,setPreferByAnimeId:()=>Qde,setSearchCache:()=>BP,storeAnimeIdsToMap:()=>Yde,updateLocalCaches:()=>$P,writeCacheToFile:()=>P9});function jde(e,t){if(DP.set(e,{...t,timestamp:Date.now()}),DP.size>200)for(let[r,n]of DP)Date.now()-n.timestamp>3600*1e3&&DP.delete(r)}function Kde(e){return DP.get(e)}function OR(e){if(!e||typeof e!="object")return"";let t=e.source?String(e.source)+":":"";return e.bangumiId!==void 0&&e.bangumiId!==null&&String(e.bangumiId)!==""?"bangumi:"+t+String(e.bangumiId):e.animeId!==void 0&&e.animeId!==null&&String(e.animeId)!==""?"anime:"+t+String(e.animeId):""}function zst(e,t){if(!(e instanceof Map)||!t)return;let r=OR(t);r&&e.set(r,t)}function*MP(e){if(!(e instanceof Map))return;let t=new Set;for(let r of e.values()){let n=OR(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function j$r(e){let t=[];for(let r of MP(e))t.push(r);return t}function K$r(){let e=Date.now(),t=[];for(let[r,n]of F.searchCache.entries()){let s=(e-n.timestamp)/6e4;if(s>F.searchCacheMinutes){F.searchCache.delete(r),R("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}t.push(n)}return t.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),t}function Yst(e,t,r){let n=Date.now(),s=0;for(let[i,a]of e.entries())(n-a.timestamp)/6e4>t&&(e.delete(i),s++);s>0&&R("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${e.size} \u4E2A`)}function G$r(e,t){return String(e?.animeId)===t||String(e?.bangumiId)===t}function x9(e,t,r=null){let n=null;for(let s of e)if(G$r(s,t)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*Qst(){let e=new Set;for(let t of K$r())if(Array.isArray(t.details))for(let r of t.details){let n=OR(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function ES(e,t=null,r=null){let n=String(e),s=x9(F.animes,n,r);return s||(s=x9(MP(t),n,r),s)?s:x9(Qst(),n,r)}function yS(e,t=null,r=null){let n=String(e);return x9(MP(t),n,r)}function DR(e,t=null){let r=Number(e);if(!Number.isFinite(r))return null;let n=i=>{if(!i?.links||!Array.isArray(i.links))return null;let a=i.links.findIndex(o=>o.id===r);return a===-1?null:{anime:i,link:i.links[a],index:a}};for(let i of F.animes){let a=n(i);if(a)return a}for(let i of MP(t)){let a=n(i);if(a)return a}let s=new Set;for(let i of F.animes){let a=OR(i);a&&s.add(a)}for(let i of MP(t)){let a=OR(i);a&&s.add(a)}for(let i of Qst()){let a=OR(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function Wst(e){if(!F.searchCache.has(e))return!1;let t=F.searchCache.get(e),n=(Date.now()-t.timestamp)/(1e3*60);return n>F.searchCacheMinutes?(F.searchCache.delete(e),R("info",`[Cache] Search cache for "${e}" expired after ${n.toFixed(2)} minutes`),!1):!0}function kP(e,t=null){if(Wst(e)){R("info",`[Cache] Using search cache for "${e}"`);let r=F.searchCache.get(e);return t instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{zst(t,n)}),r.results}return null}function BP(e,t,r=null){let n=j$r(r);if(Yst(F.searchCache,F.searchCacheMinutes,"searchCache"),F.searchCache.set(e,{results:t,details:n,timestamp:Date.now()}),F.searchCache.size>500){let s=F.searchCache.keys().next().value;F.searchCache.delete(s),R("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}R("info",`[Cache] Cached search results for "${e}" (${t.length} animes)`)}function Xst(e){if(!F.commentCache.has(e))return!1;let t=F.commentCache.get(e),n=(Date.now()-t.timestamp)/(1e3*60);return n>F.commentCacheMinutes?(F.commentCache.delete(e),R("info",`[Cache] Comment cache for "${e}" expired after ${n.toFixed(2)} minutes`),!1):!0}function Fm(e){return Xst(e)?(R("info",`[Cache] Using comment cache for "${e}"`),F.commentCache.get(e).comments):null}function UP(e,t){if(Yst(F.commentCache,F.commentCacheMinutes,"commentCache"),F.commentCache.set(e,{comments:t,timestamp:Date.now()}),F.commentCache.size>500){let r=F.commentCache.keys().next().value;F.commentCache.delete(r),R("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}R("info",`[Cache] Cached comments for "${e}" (${t.length} comments)`)}function Jst(e,t){let r=F.episodeIds.find(s=>s.url===e&&s.title===t);if(r)return R("info",`[Cache] Episode with URL ${e} and title ${t} already exists in episodeIds, returning existing episode.`),r;F.episodeNum++;let n={id:F.episodeNum,url:e,title:t};return F.episodeIds.push(n),R("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function Zst(e){let t=F.episodeIds.length;F.episodeIds=F.episodeIds.filter(n=>n.url!==e);let r=t-F.episodeIds.length;return r>0?(R("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${e}`),!0):(R("error",`[Cache] No episode found in episodeIds with URL: ${e}`),!1)}function FP(e){let t=F.episodeIds.find(n=>n.id===e);if(t)return R("info",`[Cache] Found URL for ID ${e}: ${t.url}`),t.url;let r=DR(e);return r?.link?.url?(R("info",`[Cache] Found URL for ID ${e} via cached anime details: ${r.link.url}`),r.link.url):(R("error",`[Cache] No URL found for ID: ${e}`),null)}function w9(e){let t=F.episodeIds.findIndex(n=>n.id===e);if(t!==-1)return R("info",`[Cache] Found index for ID ${e}: ${t}`),t;let r=DR(e);return r?(R("info",`[Cache] Found index for ID ${e} via cached anime details: ${r.index}`),r.index):(R("error",`[Cache] No index found for ID: ${e}`),-1)}function Gde(e){let t=F.episodeIds.find(n=>n.id===e);if(t)return R("info",`[Cache] Found TITLE for ID ${e}: ${t.title}`),t.title;let r=DR(e);return r?.link?.title?(R("info",`[Cache] Found TITLE for ID ${e} via cached anime details: ${r.link.title}`),r.link.title):(R("error",`[Cache] No TITLE found for ID: ${e}`),null)}function zde(e){let t=DR(e);return t?.anime?.animeTitle?(R("info",`[Cache] Found animeTitle for ID ${e}: ${t.anime.animeTitle}`),t.anime.animeTitle):(R("error",`[Cache] No animeTitle found for ID: ${e}`),null)}function ar(e,t=null){e=Lh.fromJson(e);try{if(!e.links||!Array.isArray(e.links))return R("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(e)}`),!1;let r=[];e.links.forEach(i=>{if(i.url){let a=Jst(i.url,i.title);a&&r.push(a)}else R("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=Lh.fromJson({...e,links:r});zst(t,n);let s=F.animes.findIndex(i=>i.animeId===e.animeId);return s!==-1&&(F.animes.splice(s,1),R("info",`[Cache] Removed old anime at index: ${s}`)),F.animes.push(n),R("info",`[Cache] Added anime to latest position: ${e.animeId}`),F.animes.length>F.MAX_ANIMES&&(cr()||R("error","[Cache] Failed to remove earliest anime, but continuing")),R("info",`[Cache] animes: ${JSON.stringify(F.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return R("error",`[Cache] addAnime failed: ${r.message}`),!1}}function cr(){if(F.animes.length===0)return R("error","[Cache] No animes to remove."),!1;let e=F.animes.shift();return R("info",`[Cache] Removed earliest anime: ${JSON.stringify(e)}`),e.links&&Array.isArray(e.links)&&e.links.forEach(t=>{t.url&&Zst(t.url)}),!0}function Yde(e,t){let r=new Set,n=F.lastSelectMap.get(t);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of e)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),F.lastSelectMap.has(t)&&F.lastSelectMap.delete(t),F.lastSelectMap.set(t,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),F.lastSelectMap.size>F.MAX_LAST_SELECT_MAP){let d=F.lastSelectMap.keys().next().value;F.lastSelectMap.delete(d),R("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function N9(e){let t=DR(e);return t?[t.anime.animeId,t.anime.source,t.link.title,t.anime.aliases||[]]:[null,null,null,[]]}function Qde(e,t,r=null,n=null){for(let[s,i]of F.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(e)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=e,i.sourceBySeason[a]=t,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),F.lastSelectMap.set(s,i),s}return null}function Wde(e,t=null){let r=F.lastSelectMap.get(e);if(!r)return[null,null,null];let n=t===null?"default":String(t),s=r.preferBySeason||{},i=r.sourceBySeason||{},a=s[n]??s.default??r.prefer??null,o=i[n]??i.default??r.source??null,c=r.offsets||null;return[a,o,c]}function O9(e){let r=0;for(let[n,s]of F.requestHistory.entries()){let i=s.filter(a=>e-a<=6e4);i.length===0?(F.requestHistory.delete(n),r++,R("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length0&&R("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function D9(){return typeof __dirname<"u"?__dirname:LP.join(process.cwd(),"danmu_api","utils")}function AS(e){let t=LP.join(D9(),"..","..",".cache",`${e}`);if(PP.existsSync(t)){let r=PP.readFileSync(t,"utf8");return JSON.parse(r)}return null}function P9(e,t){let r=LP.join(D9(),"..","..",".cache",`${e}`);PP.writeFileSync(r,JSON.stringify(t),"utf8")}async function Xde(){if(!F.localCacheInitialized)try{R("info","[Cache] getLocalCaches start."),F.animes=JSON.parse(AS("animes"))||F.animes,F.episodeIds=JSON.parse(AS("episodeIds"))||F.episodeIds,F.episodeNum=JSON.parse(AS("episodeNum"))||F.episodeNum,F.reqRecords=JSON.parse(AS("reqRecords"))||F.reqRecords,F.todayReqNum=JSON.parse(AS("todayReqNum"))||F.todayReqNum;let e=AS("lastSelectMap");e&&(F.lastSelectMap=new Map(Object.entries(JSON.parse(e))),R("info",`[Cache] Restored lastSelectMap from local cache with ${F.lastSelectMap.size} entries`)),F.lastHashes.animes=fs(JSON.stringify(F.animes)),F.lastHashes.episodeIds=fs(JSON.stringify(F.episodeIds)),F.lastHashes.episodeNum=fs(JSON.stringify(F.episodeNum)),F.lastHashes.reqRecords=fs(JSON.stringify(F.reqRecords)),F.lastHashes.todayReqNum=fs(JSON.stringify(F.todayReqNum)),F.lastHashes.lastSelectMap=fs(JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.localCacheInitialized=!0,R("info","[Cache] getLocalCaches completed successfully.")}catch(e){R("error",`[Cache] getLocalCaches failed: ${e.message}`,e.stack),F.localCacheInitialized=!0}}async function $P(){try{R("info","[Cache] updateLocalCaches start.");let e=[],t=[{key:"animes",value:F.animes},{key:"episodeIds",value:F.episodeIds},{key:"episodeNum",value:F.episodeNum},{key:"reqRecords",value:F.reqRecords},{key:"lastSelectMap",value:F.lastSelectMap},{key:"todayReqNum",value:F.todayReqNum}];for(let{key:r,value:n}of t){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=fs(s);i!==F.lastHashes[r]&&(P9(r,s),e.push({key:r,hash:i}))}e.length>0?(R("info",`[Cache] Updated local caches for keys: ${e.map(r=>r.key).join(", ")}`),e.forEach(({key:r,hash:n})=>{F.lastHashes[r]=n})):R("info","[Cache] No changes detected, skipping local cache update.")}catch(e){R("error",`[Cache] updateLocalCaches failed: ${e.message}`,e.stack),R("error",`[Cache] Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function Jde(e,t){if(t==="node")try{if(PP=await import("fs"),LP=await import("path"),!F.localCacheValid&&e!=="/favicon.ico"&&e!=="/robots.txt"){let r=LP.join(D9(),"..","..",".cache");PP.existsSync(r)?F.localCacheValid=!0:F.localCacheValid=!1}}catch(r){R("warn","[Cache] Node.js modules not available:",r.message),F.localCacheValid=!1}}var PP,LP,DP,ii=ae(()=>{Qt();jt();Vi();aa();DP=new Map});function z$r(e,t,r=!1){if(t===0&&!r)return e.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=e.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=t===0?o.toFixed(2):Math.floor(o/(t*60));return i[c]||(i[c]=[]),i[c].push({...a,t:o}),i},{});return Object.keys(n).map(i=>{let o=n[i].reduce((c,u)=>{let l=u.m.split(" X")[0].trim();if(c[l]||(c[l]={count:0,earliestT:u.t,cid:u.cid,p:u.p,like:0,sources:new Set}),c[l].count+=1,c[l].earliestT=Math.min(c[l].earliestT,u.t),c[l].like+=u.like!==void 0?u.like:0,u.p){let d=u.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&c[l].sources.add(f.trim())})}return c},{});return Object.keys(o).map(c=>{let u=o[c],l=Math.max(1,u.sources.size),d=Math.round(u.count/l);d<1&&(d=1);let f=Array.from(u.sources).join("\uFF06"),h=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p:h,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function Y$r(e){if(!F.likeSwitch)return e;let t=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return e.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||t.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",c;r.like>=1e4?c=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?c=(r.like/1e3).toFixed(1)+"k":c=r.like.toString();let u=`\u200A${o}${c}`,l=r.m+u,{like:d,...f}=r;return{...f,m:l}})}function Q$r(e,t){if(t===0)return e;let r=t*1e3,n=e.length;if(n<=r)return e;let s=n/r,i=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(e&&Array.isArray(e.danmuku)){let f={right:1,top:4,bottom:5},h=p=>p?parseInt(p.replace("#",""),16):16777215;i=e.danmuku.map(p=>({timepoint:p[0],ct:f[p[1]]!==void 0?f[p[1]]:1,color:h(p[2]),content:p[4]}))}else Array.isArray(e)&&(i=e);if(!i.length)return[];for(let f of i){let h,p,m,_,g;if("progress"in f&&"mode"in f&&"content"in f)m=(f.progress/1e3).toFixed(2),_=f.mode||1,g=f.color||16777215,p=f.content;else if("timepoint"in f)m=parseFloat(f.timepoint).toFixed(2),_=f.ct||0,g=f.color||16777215,p=f.content;else{if(!("p"in f))continue;let A=f.p.split(",");m=parseFloat(A[0]).toFixed(2),_=A[1]||0,A.length===4?g=A[2]||16777215:A.length>=8?g=A[3]||16777215:g=A[3]||A[2]||16777215,p=f.m}let y=f._sourceLabel||t;f.realTimeSource&&!y.includes(f.realTimeSource)&&(y=`${y}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(y)&&(s=!0),h=[m,_,g,`[${y}]`].join(","),r.push({p:h,m:p,cid:n++,like:f?.like})}let a=F.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let h=f.trim();if(h.startsWith("/")&&h.endsWith("/"))try{return new RegExp(h.slice(1,-1))}catch(p){return R("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${h}`,p),null}return null}).filter(f=>f!==null);R("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${F.blockedWords}`),R("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(h=>h.toString()).join(` -`):String(f))(a)}`);let c=r.filter(f=>!a.some(h=>h.test(f.m)));R("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${F.groupMinute}`);let u=z$r(c,F.groupMinute,s),l=Y$r(u),d=Q$r(l,F.danmuLimit);if(F.convertTopBottomToScroll||F.convertColor==="white"||F.convertColor==="color"){let f=0,h=0;d=d.map(p=>{let m=p.p.split(",");if(m.length<3)return p;let _=parseInt(m[1],10),g=parseInt(m[2],10),y=!1;F.convertTopBottomToScroll&&(_===4||_===5)&&(f++,_=1,y=!0),F.convertColor==="white"&&g!==16777215&&(h++,g=16777215,y=!0);let A=F.colorPool.split(",").map(v=>parseInt(v.trim(),10)).filter(v=>!isNaN(v)&&v>=0&&v<=16777215),E=A[Math.floor(Math.random()*A.length)];if(F.convertColor==="color"&&g===16777215&&g!==E&&(h++,g=E,y=!0),y){let v=[m[0],_,g,...m.slice(3)].join(",");return{...p,p:v}}return p}),f>0&&R("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),h>0&&R("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${h} \u6761\u5F39\u5E55\u989C\u8272`)}return F.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:xl(f.m)})),R("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),R("info",`[Utils] [Danmu] danmus_original: ${r.length}`),R("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),R("info",`[Utils] [Danmu] danmus_group: ${u.length}`),R("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),R("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function Zde(e){return typeof e.r!="number"||e.r<0||e.r>255||typeof e.g!="number"||e.g<0||e.g>255||typeof e.b!="number"||e.b<0||e.b>255?-1:e.r*256*256+e.g*256+e.b}function PR(e){return typeof e!="string"||e.length!==6||!/^[0-9A-Fa-f]{6}$/.test(e)?16777215:parseInt(e,16)}function W$r(e){let t=` -`;t+=` -`;let r=e.comments||[];if(Array.isArray(r))for(let n of r){let s=J$r(n);t+=' '+e9r(n.m)+` -`}return t+="",t}function X$r(){let t=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return t+r}function J$r(e){let t=e.p.split(","),n=(parseFloat(t[0])||0).toFixed(1),s=t[1]||"1",i="25",a=t[2]||"16777215",o="1751533608",c="0",u="0",l=X$r();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function Z$r(e){return e?String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function e9r(e){return e?String(e).replace(/&/g,"&").replace(//g,">"):""}function vS(e,t){let r=t||F.danmuOutputFormat;if(r=r.toLowerCase(),R("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=W$r(e);return Bst(n)}catch(n){return R("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),tt(e)}return tt(e)}var XA=ae(()=>{Qt();jt();$r();Fu()});var $m,L9=ae(()=>{$r();$m=class{constructor({apiKey:t,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=t,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(t,r={}){let n={model:r.model||this.model,messages:t,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await jn(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(t,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:t}),this.chat(n,r)}session(t={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,t);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(t){return{ok:!1,error:t.message}}}}});function tfe(e){let t=new Map,r=e.length;for(let n=0;n=0?"custom":"official";return R("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${e} vs bangumi-data@${t} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(e){return R("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${e.message}`),"custom"}}async function MR(e,t=!1,r=null){if(!F.useBangumiData)return;let n=null,s=F.bangumiDataCacheDays!==void 0?F.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(e==="node"?jc.default.existsSync(B9)?n=U9.default.join(B9,oit):HP||(R("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),R("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),R("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),HP=!0):HP||(R("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${e} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),HP=!0),Ol&&Date.now()-M9>t9r&&(R("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),Ol=!1),hi){if(s>0&&Date.now()-k9{Ol=!1}));return}if(n&&jc.default.existsSync(n))try{let a=jc.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();hi=JSON.parse(jc.default.readFileSync(n,"utf-8")),hi?.items?.length>0&&hi.items[0]._flatText===void 0?(hi=uit(hi),jc.default.writeFileSync(n,JSON.stringify(hi),"utf-8"),tfe(hi.items)):hi?.items?.length>0&&tfe(hi.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;LR=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);k9=Date.now(),R("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${hi.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${LR} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&t&&!Ol&&(R("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Ol=!0,M9=Date.now(),efe(n).finally(()=>{Ol=!1}));return}catch(a){R("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),hi=null}if(Ol){if(t){R("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Ol;){if(a>150){R("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Ol=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{R("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Ol=!0,M9=Date.now();let a=efe(n).finally(()=>{Ol=!1});t?await a:(R("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(R("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}function uit(e){if(!e||!e.items)return{items:[]};let t=[];for(let r of e.items){let n=[];if(r.sites){for(let o of r.sites)if(l9r.has(o.site)){let c={site:o.site,id:o.id};o.season_id&&(c.season_id=String(o.season_id)),o.video_sn&&(c.video_sn=String(o.video_sn)),o.comment&&(c.comment=o.comment),o.related&&(c.related=o.related),n.push(c)}}if(n.length===0)continue;let s={title:r.title,type:r.type,sites:n};r.begin&&(s.begin=r.begin),r.titleTranslate&&(s.titleTranslate=r.titleTranslate);let i=r.title;if(r.titleTranslate)for(let o in r.titleTranslate){let c=r.titleTranslate[o];for(let u=0;unew AbortController);s.forEach(h=>{R("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${h}`)});let o=s.map(async(h,p)=>{let m=a[p],_=await HA(h,{...i,signal:m.signal});if(!_.ok)throw new Error(`HTTP error ${_.status} from ${h}`);let g=await _.json(),y=g.items?g.items.length:0;if(m.signal.aborted)throw new Error("Aborted before parsing");let A=Date.now(),E=uit(g),v=Date.now()-A,b=null;return e&&!m.signal.aborted&&(b=`${e}.tmp${p}`,jc.default.writeFileSync(b,JSON.stringify(E),"utf-8")),{index:p,url:h,tempFilePath:b,resultData:E,pruneCost:v,originalCount:y}}),c=await Promise.any(o);a.forEach((h,p)=>{p!==c.index&&h.abort()}),e&&(s.forEach((h,p)=>{if(p!==c.index){let m=`${e}.tmp${p}`;if(jc.default.existsSync(m))try{jc.default.unlinkSync(m)}catch{}}}),jc.default.renameSync(c.tempFilePath,e));let u=((Date.now()-r)/1e3).toFixed(2);R("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),hi=c.resultData,n=c.pruneCost,tfe(hi.items),SS.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);LR=Math.max(0,(l-t)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);k9=Date.now(),R("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${hi.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${LR} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(t){let r=t instanceof AggregateError?t.errors.map(n=>n.message).join(" | "):t.message;R("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Qf(e,t){if(!hi||!hi.items)return[];let r=SS.get(e);if(!r){if(r=(async()=>{let c=[],u=[e];try{u=[...new Set([e,yr(e),xl(e)])]}catch{}let d=[yr(e)].map(m=>{let _=m.replace(cit,"");return _=Lr(_).toLowerCase(),_.length>=2?_:Lr(m).toLowerCase()}).filter(m=>m.length>0),f=null;if(typeof JA<"u"&&JA.size>0&&d.length>0){let m=new Set;for(let _ of d){let g=Array.from(new Set(_.replace(i9r,"")));if(g.length===0)continue;g.sort((E,v)=>{let b=JA.get(E)?.length||0,I=JA.get(v)?.length||0;return b-I});let y=JA.get(g[0]);if(!y||y.length===0)continue;let A=new Set(y);for(let E=1;E_);let h=hi.items,p=u.length;for(let m=0;m100){let c=SS.keys().next().value;SS.delete(c)}SS.set(e,r)}let n=await r,s=n,i=dr(e);if(i!==null){let c=n.filter(({item:u})=>{let l=Jt(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let h=0;h1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=s9r,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>t.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",h="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",h="movie"):c.type==="tv"?(f="TV\u52A8\u753B",h="tvseries"):c.type==="ova"?(f="OVA",h="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",h="web");let p="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(p="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let m=[],_=[];if(d.comment){let y=d.comment.split(a9r),A=new Map;if(d.related&&Array.isArray(d.related))for(let E of d.related)E.id&&A.set(String(E.id),E.season_id||null);for(let E of y){let v=E.split(o9r);if(v.length>=2){let b=v[0].trim(),I=v[1].trim();I&&a.test(b)&&m.push({title:c.title,titles:[...u],begin:c.begin,siteId:I,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:h,titleSuffix:` ${b}${p}`,season_id:A.get(I)||null})}else if(v.length===1&&v[0].trim()){let b=v[0].trim();a.test(b)&&_.push(b)}}}let g="";_.length>0&&(g+=` ${_.join(" ")}`),g+=p,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:h,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...m)}}return o}function F9(e=!1){if(hi!==null){let t=hi.items?hi.items.length:0;hi=null,k9=0,SS.clear(),JA.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);R("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${t}\uFF0C\u91CA\u653E: ${LR} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),LR="0.00",HP=!1}if(e&&jc.default.existsSync(B9))try{let t=U9.default.join(B9,oit);jc.default.existsSync(t)&&jc.default.unlinkSync(t);for(let r=0;r<5;r++){let n=`${t}.tmp${r}`;jc.default.existsSync(n)&&jc.default.unlinkSync(n)}R("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(t){R("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${t.message}`)}}var jc,U9,hi,k9,Ol,M9,LR,HP,JA,tit,rit,nit,B9,oit,t9r,SS,sit,r9r,n9r,s9r,cit,i9r,a9r,o9r,l9r,qm=ae(()=>{jc=Ne(require("fs"),1),U9=Ne(require("path"),1);AR();Qt();jt();ds();Fu();hi=null,k9=0,Ol=!1,M9=0,LR="0.00",HP=!1,JA=new Map,tit="custom",rit=null,nit=null,B9=U9.default.join(process.cwd(),".cache"),oit="bangumi-data-cache.json",t9r=2e4,SS=new Map,sit={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/bangumi-data@0.3/dist/data.json","https://unpkg.com/@wan0ge/bangumi-data@0.3/dist/data.json"],official:["https://cdn.jsdelivr.net/npm/bangumi-data@0.3/dist/data.json","https://unpkg.com/bangumi-data@0.3/dist/data.json"]},r9r="@wan0ge/bangumi-data",n9r="bangumi-data",s9r=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|日[语語]|日配|原版|原[声聲])(?:版)?/,cit=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|劇場版|续[篇集]|外传)(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/gi,i9r=/\s+/g,a9r=/[,,]/,o9r=/[::]/;l9r=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"])});var nfe=S($9=>{"use strict";Object.defineProperty($9,"__esModule",{value:!0});$9.VerbatimString=void 0;var rfe=class extends String{format;constructor(t,r){super(r),this.format=t}};$9.VerbatimString=rfe});var Mh=S(Jr=>{"use strict";Object.defineProperty(Jr,"__esModule",{value:!0});Jr.MultiErrorReply=Jr.CommandTimeoutDuringMaintenanceError=Jr.SocketTimeoutDuringMaintenanceError=Jr.TimeoutError=Jr.BlobError=Jr.SimpleError=Jr.ErrorReply=Jr.ReconnectStrategyError=Jr.RootNodesUnavailableError=Jr.SocketClosedUnexpectedlyError=Jr.DisconnectsClientError=Jr.ClientOfflineError=Jr.ClientClosedError=Jr.SocketTimeoutError=Jr.ConnectionTimeoutError=Jr.WatchError=Jr.AbortError=void 0;var sfe=class extends Error{constructor(){super("The command was aborted")}};Jr.AbortError=sfe;var ife=class extends Error{constructor(t="One (or more) of the watched keys has been changed"){super(t)}};Jr.WatchError=ife;var afe=class extends Error{constructor(){super("Connection timeout")}};Jr.ConnectionTimeoutError=afe;var ofe=class extends Error{constructor(t){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${t}ms.`)}};Jr.SocketTimeoutError=ofe;var cfe=class extends Error{constructor(){super("The client is closed")}};Jr.ClientClosedError=cfe;var ufe=class extends Error{constructor(){super("The client is offline")}};Jr.ClientOfflineError=ufe;var lfe=class extends Error{constructor(){super("Disconnects client")}};Jr.DisconnectsClientError=lfe;var dfe=class extends Error{constructor(){super("Socket closed unexpectedly")}};Jr.SocketClosedUnexpectedlyError=dfe;var ffe=class extends Error{constructor(){super("All the root nodes are unavailable")}};Jr.RootNodesUnavailableError=ffe;var hfe=class extends Error{originalError;socketError;constructor(t,r){super(t.message),this.originalError=t,this.socketError=r}};Jr.ReconnectStrategyError=hfe;var kR=class extends Error{};Jr.ErrorReply=kR;var pfe=class extends kR{};Jr.SimpleError=pfe;var mfe=class extends kR{};Jr.BlobError=mfe;var VP=class extends Error{};Jr.TimeoutError=VP;var gfe=class extends VP{constructor(t){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${t}ms.`)}};Jr.SocketTimeoutDuringMaintenanceError=gfe;var _fe=class extends VP{constructor(t){super(`Command timeout during maintenance. Waited to write command for more than ${t}ms.`)}};Jr.CommandTimeoutDuringMaintenanceError=_fe;var Afe=class extends kR{replies;errorIndexes;constructor(t,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=t,this.errorIndexes=r}*errors(){for(let t of this.errorIndexes)yield this.replies[t]}};Jr.MultiErrorReply=Afe});var V9=S(Mt=>{"use strict";var Efe;Object.defineProperty(Mt,"__esModule",{value:!0});Mt.Decoder=Mt.PUSH_TYPE_MAPPING=Mt.RESP_TYPES=void 0;var lit=nfe(),q9=Mh();Mt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var Jn={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};Mt.PUSH_TYPE_MAPPING={[Mt.RESP_TYPES.BLOB_STRING]:Buffer};var H9=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(t){this.onReply=t.onReply,this.onErrorReply=t.onErrorReply,this.onPush=t.onPush,this.getTypeMapping=t.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(t){if(this.#e>=t.length){this.#e-=t.length;return}if(this.#t&&(this.#t(t)||this.#e>=t.length)){this.#e-=t.length;return}do{let r=t[this.#e];if(++this.#e===t.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,t))break}while(this.#e=r.length?this.#w.bind(this,n,t):this.#w(n,t,r)}#R(t,r,n){let s=t(n);return typeof s=="function"?this.#R.bind(this,s,r):this.#e>=n.length?this.#w.bind(this,s,r):this.#w(s,r,n)}#N(t,r,n,s){let i=this.#e+t;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#B.bind(this,t-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#B(t,r,n,s,i){let a=this.#e+t;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#B.bind(this,t-c.length,r,n,s)}r.push(i.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return s===Buffer?o:o.toString()}#w(t,r,n){return this.#N(t,2,r,n)}#O(t,r){return this.#P(this.#h.bind(this,0),t,r)}#P(t,r,n){let s=t(n);return typeof s=="function"?this.#P.bind(this,s,r):this.#ce(s,r,n)}#ce(t,r,n){let s=t-4;return r===lit.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#w.bind(this,s,r):this.#w(s,r,n))}#ue(t,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#$.bind(this,t,n):this.#$(t,n,r)}#$(t,r,n){let s=r(n);return typeof s=="function"?this.#$.bind(this,t,s):this.#le(t,s,n)}#le(t,r,n){return this.#j(r,this.#w.bind(this,t,String),n)}#j(t,r,n){let s=r(n);return typeof s=="function"?this.#j.bind(this,t,s):new lit.VerbatimString(t,s)}#K(t){let r=this.#E(String,t);return typeof r=="function"?this.#G.bind(this,r):new q9.SimpleError(r)}#G(t,r){let n=t(r);return typeof n=="function"?this.#G.bind(this,n):new q9.SimpleError(n)}#z(t){let r=this.#C(String,t);return typeof r=="function"?this.#Y.bind(this,r):new q9.BlobError(r)}#Y(t,r){let n=t(r);return typeof n=="function"?this.#Y.bind(this,n):new q9.BlobError(n)}#x(t,r){let n=r[this.#e];return++this.#e===r.length?this.#q.bind(this,n,t):this.#q(n,t,r)}#q(t,r,n){switch(t){case Mt.RESP_TYPES.NULL:return this.#s();case Mt.RESP_TYPES.BOOLEAN:return this.#i(n);case Mt.RESP_TYPES.NUMBER:return this.#c(r[Mt.RESP_TYPES.NUMBER],n);case Mt.RESP_TYPES.BIG_NUMBER:return this.#d(r[Mt.RESP_TYPES.BIG_NUMBER],n);case Mt.RESP_TYPES.DOUBLE:return this.#g(r[Mt.RESP_TYPES.DOUBLE],n);case Mt.RESP_TYPES.SIMPLE_STRING:return this.#E(r[Mt.RESP_TYPES.SIMPLE_STRING],n);case Mt.RESP_TYPES.BLOB_STRING:return this.#C(r[Mt.RESP_TYPES.BLOB_STRING],n);case Mt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[Mt.RESP_TYPES.VERBATIM_STRING],n);case Mt.RESP_TYPES.SIMPLE_ERROR:return this.#K(n);case Mt.RESP_TYPES.BLOB_ERROR:return this.#z(n);case Mt.RESP_TYPES.ARRAY:return this.#H(r,n);case Mt.RESP_TYPES.SET:return this.#X(r,n);case Mt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${t} "${String.fromCharCode(t)}"`)}}#H(t,r){return r[this.#e]===Jn["-"]?(this.#e+=4,null):this.#Q(this.#h(0,r),t,r)}#Q(t,r,n){return typeof t=="function"?this.#de.bind(this,t,r):this.#L(new Array(t),0,r,n)}#de(t,r,n){return this.#Q(t(n),r,n)}#L(t,r,n,s){for(let i=r;i=s.length)return this.#L.bind(this,t,i,n);let a=this.#x(n,s);if(typeof a=="function")return this.#W.bind(this,t,i,a,n);t[i]=a}return t}#W(t,r,n,s,i){let a=n(i);return typeof a=="function"?this.#W.bind(this,t,r,a,s):(t[r++]=a,this.#L(t,r,s,i))}#X(t,r){let n=this.#h(0,r);return typeof n=="function"?this.#J.bind(this,n,t):this.#Z(n,t,r)}#J(t,r,n){let s=t(n);return typeof s=="function"?this.#J.bind(this,s,r):this.#Z(s,r,n)}#Z(t,r,n){return r[Mt.RESP_TYPES.SET]===Set?this.#V(new Set,t,r,n):this.#L(new Array(t),0,r,n)}#V(t,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#V.bind(this,t,r,n);let i=this.#x(n,s);if(typeof i=="function")return this.#ee.bind(this,t,r,i,n);t.add(i),--r}return t}#ee(t,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,t,r,a,s):(t.add(a),this.#V(t,r-1,s,i))}#te(t,r){let n=this.#h(0,r);return typeof n=="function"?this.#re.bind(this,n,t):this.#ne(n,t,r)}#re(t,r,n){let s=t(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(t,r,n){switch(r[Mt.RESP_TYPES.MAP]){case Map:return this.#U(new Map,t,r,n);case Array:return this.#L(new Array(t*2),0,r,n);default:return this.#F(Object.create(null),t,r,n)}}#U(t,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#U.bind(this,t,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,t,r,i,n);if(this.#e>=s.length)return this.#M.bind(this,t,r,i,this.#x.bind(this,n),n);let a=this.#x(n,s);if(typeof a=="function")return this.#M.bind(this,t,r,i,a,n);t.set(i,a),--r}return t}#se(t,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,t):this.#ie(n,t,r)}#ie(t,r,n){switch(t){case Mt.RESP_TYPES.SIMPLE_STRING:return this.#E(String,n);case Mt.RESP_TYPES.BLOB_STRING:return this.#C(String,n);default:return this.#q(t,r,n)}}#ae(t,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,t,r,a,s);if(this.#e>=i.length)return this.#M.bind(this,t,r,a,this.#x.bind(this,s),s);let o=this.#x(s,i);return typeof o=="function"?this.#M.bind(this,t,r,a,o,s):(t.set(a,o),this.#U(t,r-1,s,i))}#M(t,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#M.bind(this,t,r,n,o,i):(t.set(n,o),this.#U(t,r-1,i,a))}#F(t,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#F.bind(this,t,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,t,r,i,n);if(this.#e>=s.length)return this.#k.bind(this,t,r,i,this.#x.bind(this,n),n);let a=this.#x(n,s);if(typeof a=="function")return this.#k.bind(this,t,r,i,a,n);t[i]=a,--r}return t}#oe(t,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,t,r,a,s);if(this.#e>=i.length)return this.#k.bind(this,t,r,a,this.#x.bind(this,s),s);let o=this.#x(s,i);return typeof o=="function"?this.#k.bind(this,t,r,a,o,s):(t[a]=o,this.#F(t,r-1,s,i))}#k(t,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#k.bind(this,t,r,n,o,i):(t[n]=o,this.#F(t,r-1,i,a))}};Mt.Decoder=H9;Efe=H9});var fit=S(BR=>{"use strict";Object.defineProperty(BR,"__esModule",{value:!0});BR.scriptSha1=BR.defineScript=void 0;var d9r=require("node:crypto");function f9r(e){return{...e,SHA1:dit(e.SCRIPT)}}BR.defineScript=f9r;function dit(e){return(0,d9r.createHash)("sha1").update(e).digest("hex")}BR.scriptSha1=dit});var hit=S(j9=>{"use strict";Object.defineProperty(j9,"__esModule",{value:!0});j9.digest=void 0;var yfe=null;async function h9r(){if(!yfe)try{yfe=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return yfe}async function p9r(e){let t=await h9r(),r=typeof e=="string"?e:new Uint8Array(e);return t.xxh64(r).toString(16).padStart(16,"0")}j9.digest=p9r});var pit=S(vfe=>{"use strict";Object.defineProperty(vfe,"__esModule",{value:!0});vfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","CAT"),t&&e.push(t)},transformReply:void 0}});var mit=S(Sfe=>{"use strict";Object.defineProperty(Sfe,"__esModule",{value:!0});Sfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","DELUSER"),e.pushVariadic(t)},transformReply:void 0}});var git=S(Tfe=>{"use strict";Object.defineProperty(Tfe,"__esModule",{value:!0});Tfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ACL","DRYRUN",t,...r)},transformReply:void 0}});var _it=S(bfe=>{"use strict";Object.defineProperty(bfe,"__esModule",{value:!0});bfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","GENPASS"),t&&e.push(t.toString())},transformReply:void 0}});var Ait=S(Ife=>{"use strict";Object.defineProperty(Ife,"__esModule",{value:!0});Ife.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","GETUSER",t)},transformReply:{2:e=>({flags:e[1],passwords:e[3],commands:e[5],keys:e[7],channels:e[9],selectors:e[11]?.map(t=>{let r=t;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var Eit=S(Rfe=>{"use strict";Object.defineProperty(Rfe,"__esModule",{value:!0});Rfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","LIST")},transformReply:void 0}});var yit=S(Cfe=>{"use strict";Object.defineProperty(Cfe,"__esModule",{value:!0});Cfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","LOAD")},transformReply:void 0}});var kh=S(K9=>{"use strict";Object.defineProperty(K9,"__esModule",{value:!0});K9.BasicCommandParser=void 0;var xfe=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let t=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.transformRedisJsonNullReply=rt.transformRedisJsonReply=rt.transformRedisJsonArgument=rt.transformStreamsMessagesReplyResp3=rt.transformStreamsMessagesReplyResp2=rt.transformStreamMessagesReply=rt.transformStreamMessageNullReply=rt.transformStreamMessageReply=rt.parseArgs=rt.parseZKeysArguments=rt.transformRangeReply=rt.parseSlotRangesArguments=rt.transformFunctionListItemReply=rt.RedisFunctionFlags=rt.transformCommandReply=rt.CommandCategories=rt.CommandFlags=rt.parseOptionalVariadicArgument=rt.pushVariadicArgument=rt.pushVariadicNumberArguments=rt.pushVariadicArguments=rt.pushEvalArguments=rt.evalFirstKeyIndex=rt.transformPXAT=rt.transformEXAT=rt.transformSortedSetReply=rt.transformTuplesReply=rt.createTransformTuplesReplyFunc=rt.transformTuplesToMap=rt.transformNullableDoubleReply=rt.createTransformNullableDoubleReplyResp2Func=rt.transformDoubleArrayReply=rt.createTransformDoubleReplyResp2Func=rt.transformDoubleReply=rt.transformStringDoubleArgument=rt.transformDoubleArgument=rt.transformBooleanArrayReply=rt.transformBooleanReply=rt.isArrayReply=rt.isNullReply=void 0;var m9r=kh(),wfe=V9();function Nfe(e){return e===null}rt.isNullReply=Nfe;function g9r(e){return Array.isArray(e)}rt.isArrayReply=g9r;rt.transformBooleanReply={2:e=>e===1,3:void 0};rt.transformBooleanArrayReply={2:e=>e.map(rt.transformBooleanReply[2]),3:void 0};function G9(e){switch(e){case 1/0:return"+inf";case-1/0:return"-inf";default:return e.toString()}}rt.transformDoubleArgument=G9;function _9r(e){return typeof e!="number"?e:G9(e)}rt.transformStringDoubleArgument=_9r;rt.transformDoubleReply={2:(e,t,r)=>{switch(r?r[wfe.RESP_TYPES.DOUBLE]:void 0){case String:return e;default:{let s;switch(e.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(e)}return s}}},3:void 0};function Iit(e,t){return r=>rt.transformDoubleReply[2](r,e,t)}rt.createTransformDoubleReplyResp2Func=Iit;rt.transformDoubleArrayReply={2:(e,t,r)=>e.map(Iit(t,r)),3:void 0};function A9r(e,t){return r=>rt.transformNullableDoubleReply[2](r,e,t)}rt.createTransformNullableDoubleReplyResp2Func=A9r;rt.transformNullableDoubleReply={2:(e,t,r)=>e===null?null:rt.transformDoubleReply[2](e,t,r),3:void 0};function E9r(e,t){let r=Object.create(null);for(let n=0;nOfe(r,e,t)}rt.createTransformTuplesReplyFunc=y9r;function Ofe(e,t,r){let n=r?r[wfe.RESP_TYPES.MAP]:void 0,s=e;switch(n){case Array:return e;case Map:{let i=new Map;for(let a=0;a{let n=e,s=[];for(let i=0;ie.map(t=>{let[r,n]=t;return{value:r,score:n}})};function v9r(e){return(typeof e=="number"?e:Math.floor(e.getTime()/1e3)).toString()}rt.transformEXAT=v9r;function S9r(e){return(typeof e=="number"?e:e.getTime()).toString()}rt.transformPXAT=S9r;function T9r(e){return e?.keys?.[0]}rt.evalFirstKeyIndex=T9r;function b9r(e,t){return t?.keys?e.push(t.keys.length.toString(),...t.keys):e.push("0"),t?.arguments&&e.push(...t.arguments),e}rt.pushEvalArguments=b9r;function I9r(e,t){return Array.isArray(t)?e=e.concat(t):e.push(t),e}rt.pushVariadicArguments=I9r;function R9r(e,t){if(Array.isArray(t))for(let r of t)e.push(r.toString());else e.push(t.toString());return e}rt.pushVariadicNumberArguments=R9r;function C9r(e,t){return Array.isArray(t)?e.push(t.length.toString(),...t):e.push("1",t),e}rt.pushVariadicArgument=C9r;function x9r(e,t,r){r!==void 0&&(e.push(t),e.pushVariadicWithLength(r))}rt.parseOptionalVariadicArgument=x9r;var vit;(function(e){e.WRITE="write",e.READONLY="readonly",e.DENYOOM="denyoom",e.ADMIN="admin",e.PUBSUB="pubsub",e.NOSCRIPT="noscript",e.RANDOM="random",e.SORT_FOR_SCRIPT="sort_for_script",e.LOADING="loading",e.STALE="stale",e.SKIP_MONITOR="skip_monitor",e.ASKING="asking",e.FAST="fast",e.MOVABLEKEYS="movablekeys"})(vit||(rt.CommandFlags=vit={}));var Sit;(function(e){e.KEYSPACE="@keyspace",e.READ="@read",e.WRITE="@write",e.SET="@set",e.SORTEDSET="@sortedset",e.LIST="@list",e.HASH="@hash",e.STRING="@string",e.BITMAP="@bitmap",e.HYPERLOGLOG="@hyperloglog",e.GEO="@geo",e.STREAM="@stream",e.PUBSUB="@pubsub",e.ADMIN="@admin",e.FAST="@fast",e.SLOW="@slow",e.BLOCKING="@blocking",e.DANGEROUS="@dangerous",e.CONNECTION="@connection",e.TRANSACTION="@transaction",e.SCRIPTING="@scripting"})(Sit||(rt.CommandCategories=Sit={}));function w9r([e,t,r,n,s,i,a]){return{name:e,arity:t,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}rt.transformCommandReply=w9r;var Tit;(function(e){e.NO_WRITES="no-writes",e.ALLOW_OOM="allow-oom",e.ALLOW_STALE="allow-stale",e.NO_CLUSTER="no-cluster"})(Tit||(rt.RedisFunctionFlags=Tit={}));function N9r(e){return{libraryName:e[1],engine:e[3],functions:e[5].map(t=>({name:t[1],description:t[3],flags:t[5]}))}}rt.transformFunctionListItemReply=N9r;function bit(e,t){e.push(t.start.toString(),t.end.toString())}function O9r(e,t){if(Array.isArray(t))for(let r of t)bit(e,r);else bit(e,t)}rt.parseSlotRangesArguments=O9r;function D9r([e,t]){return{start:e,end:t}}rt.transformRangeReply=D9r;function P9r(e,t){if(Array.isArray(t)){if(e.push(t.length.toString()),t.length)if(L9r(t))e.pushKeys(t);else{for(let r=0;r{"use strict";Object.defineProperty(Pfe,"__esModule",{value:!0});var q9r=We();Pfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","LOG"),t!=null&&e.push(t.toString())},transformReply:{2:(e,t,r)=>e.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":q9r.transformDoubleReply[2](s[11],t,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var xit=S(KP=>{"use strict";var H9r=KP&&KP.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KP,"__esModule",{value:!0});var V9r=H9r(Lfe());KP.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:V9r.default.IS_READ_ONLY,parseCommand(e){e.push("ACL","LOG","RESET")},transformReply:void 0}});var wit=S(Mfe=>{"use strict";Object.defineProperty(Mfe,"__esModule",{value:!0});Mfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","SAVE")},transformReply:void 0}});var Nit=S(kfe=>{"use strict";Object.defineProperty(kfe,"__esModule",{value:!0});kfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ACL","SETUSER",t),e.pushVariadic(r)},transformReply:void 0}});var Oit=S(Bfe=>{"use strict";Object.defineProperty(Bfe,"__esModule",{value:!0});Bfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","USERS")},transformReply:void 0}});var Dit=S(Ufe=>{"use strict";Object.defineProperty(Ufe,"__esModule",{value:!0});Ufe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","WHOAMI")},transformReply:void 0}});var Pit=S(Ffe=>{"use strict";Object.defineProperty(Ffe,"__esModule",{value:!0});Ffe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("APPEND",t,r)},transformReply:void 0}});var $fe=S(UR=>{"use strict";Object.defineProperty(UR,"__esModule",{value:!0});UR.ASKING_CMD=void 0;UR.ASKING_CMD="ASKING";UR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push(UR.ASKING_CMD)},transformReply:void 0}});var Lit=S(qfe=>{"use strict";Object.defineProperty(qfe,"__esModule",{value:!0});qfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,{username:t,password:r}){e.push("AUTH"),t!==void 0&&e.push(t),e.push(r)},transformReply:void 0}});var Mit=S(Hfe=>{"use strict";Object.defineProperty(Hfe,"__esModule",{value:!0});Hfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("BGREWRITEAOF")},transformReply:void 0}});var kit=S(Vfe=>{"use strict";Object.defineProperty(Vfe,"__esModule",{value:!0});Vfe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("BGSAVE"),t?.SCHEDULE&&e.push("SCHEDULE")},transformReply:void 0}});var Bit=S(jfe=>{"use strict";Object.defineProperty(jfe,"__esModule",{value:!0});jfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BITCOUNT"),e.pushKey(t),r&&(e.push(r.start.toString()),e.push(r.end.toString()),r.mode&&e.push(r.mode))},transformReply:void 0}});var Uit=S(Kfe=>{"use strict";Object.defineProperty(Kfe,"__esModule",{value:!0});Kfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BITFIELD_RO"),e.pushKey(t);for(let n of r)e.push("GET"),e.push(n.encoding),e.push(n.offset.toString())},transformReply:void 0}});var Fit=S(Gfe=>{"use strict";Object.defineProperty(Gfe,"__esModule",{value:!0});Gfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BITFIELD"),e.pushKey(t);for(let n of r)switch(n.operation){case"GET":e.push("GET",n.encoding,n.offset.toString());break;case"SET":e.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":e.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":e.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var $it=S(zfe=>{"use strict";Object.defineProperty(zfe,"__esModule",{value:!0});zfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BITOP",t),e.pushKey(r),e.pushKeys(n)},transformReply:void 0}});var qit=S(Yfe=>{"use strict";Object.defineProperty(Yfe,"__esModule",{value:!0});Yfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s,i){e.push("BITPOS"),e.pushKey(t),e.push(r.toString()),n!==void 0&&e.push(n.toString()),s!==void 0&&e.push(s.toString()),i&&e.push(i)},transformReply:void 0}});var Hit=S(Qfe=>{"use strict";Object.defineProperty(Qfe,"__esModule",{value:!0});Qfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("BLMOVE"),e.pushKeys([t,r]),e.push(n,s,i.toString())},transformReply:void 0}});var Wfe=S(GP=>{"use strict";Object.defineProperty(GP,"__esModule",{value:!0});GP.parseLMPopArguments=void 0;function Vit(e,t,r,n){e.pushKeysLength(t),e.push(r),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString())}GP.parseLMPopArguments=Vit;GP.default={IS_READ_ONLY:!1,parseCommand(e,...t){e.push("LMPOP"),Vit(e,...t)},transformReply:void 0}});var Kit=S(Hm=>{"use strict";var j9r=Hm&&Hm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),K9r=Hm&&Hm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),G9r=Hm&&Hm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&j9r(t,e,r);return K9r(t,e),t};Object.defineProperty(Hm,"__esModule",{value:!0});var jit=G9r(Wfe());Hm.default={IS_READ_ONLY:!1,parseCommand(e,t,...r){e.push("BLMPOP",t.toString()),(0,jit.parseLMPopArguments)(e,...r)},transformReply:jit.default.transformReply}});var Jfe=S(Xfe=>{"use strict";Object.defineProperty(Xfe,"__esModule",{value:!0});Xfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BLPOP"),e.pushKeys(t),e.push(r.toString())},transformReply(e){return e===null?null:{key:e[0],element:e[1]}}}});var Git=S(zP=>{"use strict";var z9r=zP&&zP.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zP,"__esModule",{value:!0});var Y9r=z9r(Jfe());zP.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BRPOP"),e.pushKeys(t),e.push(r.toString())},transformReply:Y9r.default.transformReply}});var zit=S(Zfe=>{"use strict";Object.defineProperty(Zfe,"__esModule",{value:!0});Zfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BRPOPLPUSH"),e.pushKeys([t,r]),e.push(n.toString())},transformReply:void 0}});var e0e=S(YP=>{"use strict";Object.defineProperty(YP,"__esModule",{value:!0});YP.parseZMPopArguments=void 0;var Yit=We();function Qit(e,t,r,n){e.pushKeysLength(t),e.push(r),n?.COUNT&&e.push("COUNT",n.COUNT.toString())}YP.parseZMPopArguments=Qit;YP.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZMPOP"),Qit(e,t,r,n)},transformReply:{2(e,t,r){return e===null?null:{key:e[0],members:e[1].map(n=>{let[s,i]=n;return{value:s,score:Yit.transformDoubleReply[2](i,t,r)}})}},3(e){return e===null?null:{key:e[0],members:Yit.transformSortedSetReply[3](e[1])}}}}});var Xit=S(Vm=>{"use strict";var Q9r=Vm&&Vm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),W9r=Vm&&Vm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),X9r=Vm&&Vm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Q9r(t,e,r);return W9r(t,e),t};Object.defineProperty(Vm,"__esModule",{value:!0});var Wit=X9r(e0e());Vm.default={IS_READ_ONLY:!1,parseCommand(e,t,...r){e.push("BZMPOP",t.toString()),(0,Wit.parseZMPopArguments)(e,...r)},transformReply:Wit.default.transformReply}});var r0e=S(t0e=>{"use strict";Object.defineProperty(t0e,"__esModule",{value:!0});var J9r=We();t0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BZPOPMAX"),e.pushKeys(t),e.push(r.toString())},transformReply:{2(e,t,r){return e===null?null:{key:e[0],value:e[1],score:J9r.transformDoubleReply[2](e[2],t,r)}},3(e){return e===null?null:{key:e[0],value:e[1],score:e[2]}}}}});var Zit=S(QP=>{"use strict";var Z9r=QP&&QP.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QP,"__esModule",{value:!0});var Jit=Z9r(r0e());QP.default={IS_READ_ONLY:Jit.default.IS_READ_ONLY,parseCommand(e,t,r){e.push("BZPOPMIN"),e.pushKeys(t),e.push(r.toString())},transformReply:Jit.default.transformReply}});var eat=S(n0e=>{"use strict";Object.defineProperty(n0e,"__esModule",{value:!0});n0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","CACHING",t?"YES":"NO")},transformReply:void 0}});var tat=S(s0e=>{"use strict";Object.defineProperty(s0e,"__esModule",{value:!0});s0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","GETNAME")},transformReply:void 0}});var rat=S(i0e=>{"use strict";Object.defineProperty(i0e,"__esModule",{value:!0});i0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","GETREDIR")},transformReply:void 0}});var nat=S(a0e=>{"use strict";Object.defineProperty(a0e,"__esModule",{value:!0});a0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","ID")},transformReply:void 0}});var c0e=S(o0e=>{"use strict";Object.defineProperty(o0e,"__esModule",{value:!0});var eqr=/([^\s=]+)=([^\s]*)/g;o0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","INFO")},transformReply(e){let t={};for(let n of e.toString().matchAll(eqr))t[n[1]]=n[2];let r={id:Number(t.id),addr:t.addr,fd:Number(t.fd),name:t.name,age:Number(t.age),idle:Number(t.idle),flags:t.flags,db:Number(t.db),sub:Number(t.sub),psub:Number(t.psub),multi:Number(t.multi),qbuf:Number(t.qbuf),qbufFree:Number(t["qbuf-free"]),argvMem:Number(t["argv-mem"]),obl:Number(t.obl),oll:Number(t.oll),omem:Number(t.omem),totMem:Number(t["tot-mem"]),events:t.events,cmd:t.cmd,user:t.user,libName:t["lib-name"],libVer:t["lib-ver"]};return t.laddr!==void 0&&(r.laddr=t.laddr),t.redir!==void 0&&(r.redir=Number(t.redir)),t.ssub!==void 0&&(r.ssub=Number(t.ssub)),t["multi-mem"]!==void 0&&(r.multiMem=Number(t["multi-mem"])),t.resp!==void 0&&(r.resp=Number(t.resp)),r}}});var iat=S(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});Dl.CLIENT_KILL_FILTERS=void 0;Dl.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Dl.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){if(e.push("CLIENT","KILL"),Array.isArray(t))for(let r of t)sat(e,r);else sat(e,t)},transformReply:void 0};function sat(e,t){if(t===Dl.CLIENT_KILL_FILTERS.SKIP_ME){e.push("SKIPME");return}switch(e.push(t.filter),t.filter){case Dl.CLIENT_KILL_FILTERS.ADDRESS:e.push(t.address);break;case Dl.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:e.push(t.localAddress);break;case Dl.CLIENT_KILL_FILTERS.ID:e.push(typeof t.id=="number"?t.id.toString():t.id);break;case Dl.CLIENT_KILL_FILTERS.TYPE:e.push(t.type);break;case Dl.CLIENT_KILL_FILTERS.USER:e.push(t.username);break;case Dl.CLIENT_KILL_FILTERS.SKIP_ME:e.push(t.skipMe?"yes":"no");break;case Dl.CLIENT_KILL_FILTERS.MAXAGE:e.push(t.maxAge.toString());break}}});var aat=S(WP=>{"use strict";var tqr=WP&&WP.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WP,"__esModule",{value:!0});var rqr=tqr(c0e());WP.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","LIST"),t&&(t.TYPE!==void 0?e.push("TYPE",t.TYPE):(e.push("ID"),e.pushVariadic(t.ID)))},transformReply(e){let t=e.toString().split(` -`),r=t.length-1,n=[];for(let s=0;s{"use strict";Object.defineProperty(u0e,"__esModule",{value:!0});u0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","NO-EVICT",t?"ON":"OFF")},transformReply:void 0}});var cat=S(l0e=>{"use strict";Object.defineProperty(l0e,"__esModule",{value:!0});l0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","NO-TOUCH",t?"ON":"OFF")},transformReply:void 0}});var uat=S(d0e=>{"use strict";Object.defineProperty(d0e,"__esModule",{value:!0});d0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLIENT","PAUSE",t.toString()),r&&e.push(r)},transformReply:void 0}});var lat=S(f0e=>{"use strict";Object.defineProperty(f0e,"__esModule",{value:!0});f0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","SETNAME",t)},transformReply:void 0}});var dat=S(h0e=>{"use strict";Object.defineProperty(h0e,"__esModule",{value:!0});h0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){if(e.push("CLIENT","TRACKING",t?"ON":"OFF"),t){if(r?.REDIRECT&&e.push("REDIRECT",r.REDIRECT.toString()),nqr(r)){if(e.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)e.push("PREFIX",n);else e.push("PREFIX",r.PREFIX)}else sqr(r)?e.push("OPTIN"):iqr(r)&&e.push("OPTOUT");r?.NOLOOP&&e.push("NOLOOP")}},transformReply:void 0};function nqr(e){return e?.BCAST===!0}function sqr(e){return e?.OPTIN===!0}function iqr(e){return e?.OPTOUT===!0}});var fat=S(p0e=>{"use strict";Object.defineProperty(p0e,"__esModule",{value:!0});p0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","TRACKINGINFO")},transformReply:{2:e=>({flags:e[1],redirect:e[3],prefixes:e[5]}),3:void 0}}});var hat=S(m0e=>{"use strict";Object.defineProperty(m0e,"__esModule",{value:!0});m0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","UNPAUSE")},transformReply:void 0}});var pat=S(g0e=>{"use strict";Object.defineProperty(g0e,"__esModule",{value:!0});g0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","ADDSLOTS"),e.pushVariadicNumber(t)},transformReply:void 0}});var mat=S(_0e=>{"use strict";Object.defineProperty(_0e,"__esModule",{value:!0});var aqr=We();_0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","ADDSLOTSRANGE"),(0,aqr.parseSlotRangesArguments)(e,t)},transformReply:void 0}});var gat=S(A0e=>{"use strict";Object.defineProperty(A0e,"__esModule",{value:!0});A0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var _at=S(E0e=>{"use strict";Object.defineProperty(E0e,"__esModule",{value:!0});E0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","COUNT-FAILURE-REPORTS",t)},transformReply:void 0}});var Aat=S(y0e=>{"use strict";Object.defineProperty(y0e,"__esModule",{value:!0});y0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","COUNTKEYSINSLOT",t.toString())},transformReply:void 0}});var Eat=S(v0e=>{"use strict";Object.defineProperty(v0e,"__esModule",{value:!0});v0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","DELSLOTS"),e.pushVariadicNumber(t)},transformReply:void 0}});var yat=S(S0e=>{"use strict";Object.defineProperty(S0e,"__esModule",{value:!0});var oqr=We();S0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","DELSLOTSRANGE"),(0,oqr.parseSlotRangesArguments)(e,t)},transformReply:void 0}});var vat=S(XP=>{"use strict";Object.defineProperty(XP,"__esModule",{value:!0});XP.FAILOVER_MODES=void 0;XP.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};XP.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","FAILOVER"),t?.mode&&e.push(t.mode)},transformReply:void 0}});var Sat=S(T0e=>{"use strict";Object.defineProperty(T0e,"__esModule",{value:!0});T0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var Tat=S(b0e=>{"use strict";Object.defineProperty(b0e,"__esModule",{value:!0});b0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","FORGET",t)},transformReply:void 0}});var bat=S(I0e=>{"use strict";Object.defineProperty(I0e,"__esModule",{value:!0});I0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLUSTER","GETKEYSINSLOT",t.toString(),r.toString())},transformReply:void 0}});var Iat=S(R0e=>{"use strict";Object.defineProperty(R0e,"__esModule",{value:!0});R0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","INFO")},transformReply:void 0}});var Rat=S(C0e=>{"use strict";Object.defineProperty(C0e,"__esModule",{value:!0});C0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","KEYSLOT",t)},transformReply:void 0}});var Cat=S(x0e=>{"use strict";Object.defineProperty(x0e,"__esModule",{value:!0});x0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","LINKS")},transformReply:{2:e=>e.map(t=>{let r=t;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var xat=S(w0e=>{"use strict";Object.defineProperty(w0e,"__esModule",{value:!0});w0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLUSTER","MEET",t,r.toString())},transformReply:void 0}});var wat=S(N0e=>{"use strict";Object.defineProperty(N0e,"__esModule",{value:!0});N0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","MYID")},transformReply:void 0}});var Nat=S(O0e=>{"use strict";Object.defineProperty(O0e,"__esModule",{value:!0});O0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var Oat=S(D0e=>{"use strict";Object.defineProperty(D0e,"__esModule",{value:!0});D0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","NODES")},transformReply:void 0}});var Dat=S(P0e=>{"use strict";Object.defineProperty(P0e,"__esModule",{value:!0});P0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","REPLICAS",t)},transformReply:void 0}});var Pat=S(L0e=>{"use strict";Object.defineProperty(L0e,"__esModule",{value:!0});L0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","REPLICATE",t)},transformReply:void 0}});var Lat=S(M0e=>{"use strict";Object.defineProperty(M0e,"__esModule",{value:!0});M0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","RESET"),t?.mode&&e.push(t.mode)},transformReply:void 0}});var Mat=S(k0e=>{"use strict";Object.defineProperty(k0e,"__esModule",{value:!0});k0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var kat=S(B0e=>{"use strict";Object.defineProperty(B0e,"__esModule",{value:!0});B0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","SET-CONFIG-EPOCH",t.toString())},transformReply:void 0}});var Bat=S(JP=>{"use strict";Object.defineProperty(JP,"__esModule",{value:!0});JP.CLUSTER_SLOT_STATES=void 0;JP.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};JP.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("CLUSTER","SETSLOT",t.toString(),r),n&&e.push(n)},transformReply:void 0}});var Fat=S(U0e=>{"use strict";Object.defineProperty(U0e,"__esModule",{value:!0});U0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","SLOTS")},transformReply(e){return e.map(([t,r,n,...s])=>({from:t,to:r,master:Uat(n),replicas:s.map(Uat)}))}};function Uat(e){let[t,r,n]=e;return{host:t,port:r,id:n}}});var $at=S(F0e=>{"use strict";Object.defineProperty(F0e,"__esModule",{value:!0});F0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("COMMAND","COUNT")},transformReply:void 0}});var qat=S($0e=>{"use strict";Object.defineProperty($0e,"__esModule",{value:!0});$0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","GETKEYS"),e.push(...t)},transformReply:void 0}});var Hat=S(q0e=>{"use strict";Object.defineProperty(q0e,"__esModule",{value:!0});q0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","GETKEYSANDFLAGS"),e.push(...t)},transformReply(e){return e.map(t=>{let[r,n]=t;return{key:r,flags:n}})}}});var Vat=S(H0e=>{"use strict";Object.defineProperty(H0e,"__esModule",{value:!0});var cqr=We();H0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","INFO",...t)},transformReply(e){return e.map(t=>t?(0,cqr.transformCommandReply)(t):null)}}});var jat=S(ZP=>{"use strict";Object.defineProperty(ZP,"__esModule",{value:!0});ZP.COMMAND_LIST_FILTER_BY=void 0;ZP.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};ZP.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","LIST"),t?.FILTERBY&&e.push("FILTERBY",t.FILTERBY.type,t.FILTERBY.value)},transformReply:void 0}});var Kat=S(V0e=>{"use strict";Object.defineProperty(V0e,"__esModule",{value:!0});var uqr=We();V0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("COMMAND")},transformReply(e){return e.map(uqr.transformCommandReply)}}});var Gat=S(j0e=>{"use strict";Object.defineProperty(j0e,"__esModule",{value:!0});var lqr=We();j0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CONFIG","GET"),e.pushVariadic(t)},transformReply:{2:lqr.transformTuplesReply,3:void 0}}});var zat=S(K0e=>{"use strict";Object.defineProperty(K0e,"__esModule",{value:!0});K0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CONFIG","RESETSTAT")},transformReply:void 0}});var Yat=S(G0e=>{"use strict";Object.defineProperty(G0e,"__esModule",{value:!0});G0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CONFIG","REWRITE")},transformReply:void 0}});var Qat=S(z0e=>{"use strict";Object.defineProperty(z0e,"__esModule",{value:!0});z0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,...[t,r]){if(e.push("CONFIG","SET"),typeof t=="string"||t instanceof Buffer)e.push(t,r);else for(let[n,s]of Object.entries(t))e.push(n,s)},transformReply:void 0}});var Wat=S(Y0e=>{"use strict";Object.defineProperty(Y0e,"__esModule",{value:!0});Y0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("COPY"),e.pushKeys([t,r]),n?.DB&&e.push("DB",n.DB.toString()),n?.REPLACE&&e.push("REPLACE")},transformReply:void 0}});var Xat=S(Q0e=>{"use strict";Object.defineProperty(Q0e,"__esModule",{value:!0});Q0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("DBSIZE")},transformReply:void 0}});var Jat=S(W0e=>{"use strict";Object.defineProperty(W0e,"__esModule",{value:!0});W0e.default={parseCommand(e,t){e.push("DECR"),e.pushKey(t)},transformReply:void 0}});var Zat=S(X0e=>{"use strict";Object.defineProperty(X0e,"__esModule",{value:!0});X0e.default={parseCommand(e,t,r){e.push("DECRBY"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var eot=S(J0e=>{"use strict";Object.defineProperty(J0e,"__esModule",{value:!0});J0e.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("DEL"),e.pushKeys(t)},transformReply:void 0}});var tot=S(eL=>{"use strict";Object.defineProperty(eL,"__esModule",{value:!0});eL.DelexCondition=void 0;eL.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};eL.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("DELEX"),e.pushKey(t),r&&(e.push(r.condition),e.push(r.matchValue))},transformReply:void 0}});var rot=S(Z0e=>{"use strict";Object.defineProperty(Z0e,"__esModule",{value:!0});Z0e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("DIGEST"),e.pushKey(t)},transformReply:void 0}});var not=S(ehe=>{"use strict";Object.defineProperty(ehe,"__esModule",{value:!0});ehe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("DUMP"),e.pushKey(t)},transformReply:void 0}});var sot=S(the=>{"use strict";Object.defineProperty(the,"__esModule",{value:!0});the.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ECHO",t)},transformReply:void 0}});var TS=S(tL=>{"use strict";Object.defineProperty(tL,"__esModule",{value:!0});tL.parseEvalArguments=void 0;function iot(e,t,r){e.push(t),r?.keys?e.pushKeysLength(r.keys):e.push("0"),r?.arguments&&e.push(...r.arguments)}tL.parseEvalArguments=iot;tL.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("EVAL"),iot(...e)},transformReply:void 0}});var oot=S(jm=>{"use strict";var dqr=jm&&jm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fqr=jm&&jm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hqr=jm&&jm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dqr(t,e,r);return fqr(t,e),t};Object.defineProperty(jm,"__esModule",{value:!0});var aot=hqr(TS());jm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("EVAL_RO"),(0,aot.parseEvalArguments)(...e)},transformReply:aot.default.transformReply}});var uot=S(Km=>{"use strict";var pqr=Km&&Km.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mqr=Km&&Km.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gqr=Km&&Km.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pqr(t,e,r);return mqr(t,e),t};Object.defineProperty(Km,"__esModule",{value:!0});var cot=gqr(TS());Km.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("EVALSHA_RO"),(0,cot.parseEvalArguments)(...e)},transformReply:cot.default.transformReply}});var dot=S(Gm=>{"use strict";var _qr=Gm&&Gm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Aqr=Gm&&Gm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Eqr=Gm&&Gm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&_qr(t,e,r);return Aqr(t,e),t};Object.defineProperty(Gm,"__esModule",{value:!0});var lot=Eqr(TS());Gm.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("EVALSHA"),(0,lot.parseEvalArguments)(...e)},transformReply:lot.default.transformReply}});var hot=S(rhe=>{"use strict";Object.defineProperty(rhe,"__esModule",{value:!0});rhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){if(e.push("GEOADD"),e.pushKey(t),n?.condition?e.push(n.condition):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.CH&&e.push("CH"),Array.isArray(r))for(let s of r)fot(e,s);else fot(e,r)},transformReply:void 0};function fot(e,{longitude:t,latitude:r,member:n}){e.push(t.toString(),r.toString(),n)}});var pot=S(nhe=>{"use strict";Object.defineProperty(nhe,"__esModule",{value:!0});nhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("GEODIST"),e.pushKey(t),e.push(r,n),s&&e.push(s)},transformReply(e){return e===null?null:Number(e)}}});var mot=S(she=>{"use strict";Object.defineProperty(she,"__esModule",{value:!0});she.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GEOHASH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var got=S(ihe=>{"use strict";Object.defineProperty(ihe,"__esModule",{value:!0});ihe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GEOPOS"),e.pushKey(t),e.pushVariadic(r)},transformReply(e){return e.map(t=>{let r=t;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var IS=S(bS=>{"use strict";Object.defineProperty(bS,"__esModule",{value:!0});bS.parseGeoSearchOptions=bS.parseGeoSearchArguments=void 0;function _ot(e,t,r,n,s){e.pushKey(t),typeof r=="string"||r instanceof Buffer?e.push("FROMMEMBER",r):e.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?e.push("BYRADIUS",n.radius.toString(),n.unit):e.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),Aot(e,s)}bS.parseGeoSearchArguments=_ot;function Aot(e,t){t?.SORT&&e.push(t.SORT),t?.COUNT&&(typeof t.COUNT=="number"?e.push("COUNT",t.COUNT.toString()):(e.push("COUNT",t.COUNT.value.toString()),t.COUNT.ANY&&e.push("ANY")))}bS.parseGeoSearchOptions=Aot;bS.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("GEOSEARCH"),_ot(e,t,r,n,s)},transformReply:void 0}});var nL=S(rL=>{"use strict";Object.defineProperty(rL,"__esModule",{value:!0});rL.parseGeoRadiusArguments=void 0;var yqr=IS();function Eot(e,t,r,n,s,i){e.pushKey(t),e.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,yqr.parseGeoSearchOptions)(e,i)}rL.parseGeoRadiusArguments=Eot;rL.default={IS_READ_ONLY:!1,parseCommand(...e){return e[0].push("GEORADIUS"),Eot(...e)},transformReply:void 0}});var sL=S(Bh=>{"use strict";var vqr=Bh&&Bh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bh,"__esModule",{value:!0});Bh.GEO_REPLY_WITH=void 0;var yot=vqr(IS());Bh.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};Bh.default={IS_READ_ONLY:yot.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i){yot.default.parseCommand(e,t,r,n,i),e.push(...s),e.preserve=s},transformReply(e,t){let r=new Set(t),n=0,s=r.has(Bh.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(Bh.GEO_REPLY_WITH.HASH)&&++n,a=r.has(Bh.GEO_REPLY_WITH.COORDINATES)&&++n;return e.map(o=>{let c=o,u={member:c[0]};if(s&&(u.distance=c[s]),i&&(u.hash=c[i]),a){let[l,d]=c[a];u.coordinates={longitude:l,latitude:d}}return u})}}});var z9=S(Pl=>{"use strict";var Sqr=Pl&&Pl.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Tqr=Pl&&Pl.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),bqr=Pl&&Pl.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Sqr(t,e,r);return Tqr(t,e),t},Iqr=Pl&&Pl.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Pl,"__esModule",{value:!0});Pl.parseGeoRadiusWithArguments=void 0;var vot=bqr(nL()),Rqr=Iqr(sL());function Sot(e,t,r,n,s,i,a){(0,vot.parseGeoRadiusArguments)(e,t,r,n,s,a),e.pushVariadic(i),e.preserve=i}Pl.parseGeoRadiusWithArguments=Sot;Pl.default={IS_READ_ONLY:vot.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUS"),Sot(e,t,r,n,s,i,a)},transformReply:Rqr.default.transformReply}});var Tot=S(iL=>{"use strict";var Cqr=iL&&iL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iL,"__esModule",{value:!0});var xqr=z9(),wqr=Cqr(z9());iL.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUS_RO"),(0,xqr.parseGeoRadiusWithArguments)(...e)},transformReply:wqr.default.transformReply}});var Iot=S(zm=>{"use strict";var Nqr=zm&&zm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Oqr=zm&&zm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Dqr=zm&&zm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Nqr(t,e,r);return Oqr(t,e),t};Object.defineProperty(zm,"__esModule",{value:!0});var bot=Dqr(nL());zm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUS_RO"),(0,bot.parseGeoRadiusArguments)(...e)},transformReply:bot.default.transformReply}});var Cot=S(Ym=>{"use strict";var Pqr=Ym&&Ym.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Lqr=Ym&&Ym.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Mqr=Ym&&Ym.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Pqr(t,e,r);return Lqr(t,e),t};Object.defineProperty(Ym,"__esModule",{value:!0});var Rot=Mqr(nL());Ym.default={IS_READ_ONLY:Rot.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUS"),(0,Rot.parseGeoRadiusArguments)(e,t,r,n,s,a),a?.STOREDIST?(e.push("STOREDIST"),e.pushKey(i)):(e.push("STORE"),e.pushKey(i))},transformReply:void 0}});var oL=S(aL=>{"use strict";Object.defineProperty(aL,"__esModule",{value:!0});aL.parseGeoRadiusByMemberArguments=void 0;var kqr=IS();function xot(e,t,r,n,s,i){e.pushKey(t),e.push(r,n.toString(),s),(0,kqr.parseGeoSearchOptions)(e,i)}aL.parseGeoRadiusByMemberArguments=xot;aL.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("GEORADIUSBYMEMBER"),xot(e,t,r,n,s,i)},transformReply:void 0}});var ahe=S(RS=>{"use strict";var wot=RS&&RS.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RS,"__esModule",{value:!0});RS.parseGeoRadiusByMemberWithArguments=void 0;var Bqr=wot(oL()),Uqr=IS(),Fqr=wot(sL());function Not(e,t,r,n,s,i,a){e.pushKey(t),e.push(r,n.toString(),s),(0,Uqr.parseGeoSearchOptions)(e,a),e.push(...i),e.preserve=i}RS.parseGeoRadiusByMemberWithArguments=Not;RS.default={IS_READ_ONLY:Bqr.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUSBYMEMBER"),Not(e,t,r,n,s,i,a)},transformReply:Fqr.default.transformReply}});var Dot=S(Qm=>{"use strict";var $qr=Qm&&Qm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),qqr=Qm&&Qm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Hqr=Qm&&Qm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&$qr(t,e,r);return qqr(t,e),t};Object.defineProperty(Qm,"__esModule",{value:!0});var Oot=Hqr(ahe());Qm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUSBYMEMBER_RO"),(0,Oot.parseGeoRadiusByMemberWithArguments)(...e)},transformReply:Oot.default.transformReply}});var Lot=S(Wm=>{"use strict";var Vqr=Wm&&Wm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jqr=Wm&&Wm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Kqr=Wm&&Wm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Vqr(t,e,r);return jqr(t,e),t};Object.defineProperty(Wm,"__esModule",{value:!0});var Pot=Kqr(oL());Wm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUSBYMEMBER_RO"),(0,Pot.parseGeoRadiusByMemberArguments)(...e)},transformReply:Pot.default.transformReply}});var kot=S(Xm=>{"use strict";var Gqr=Xm&&Xm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zqr=Xm&&Xm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Yqr=Xm&&Xm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Gqr(t,e,r);return zqr(t,e),t};Object.defineProperty(Xm,"__esModule",{value:!0});var Mot=Yqr(oL());Xm.default={IS_READ_ONLY:Mot.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUSBYMEMBER"),(0,Mot.parseGeoRadiusByMemberArguments)(e,t,r,n,s,a),a?.STOREDIST?(e.push("STOREDIST"),e.pushKey(i)):(e.push("STORE"),e.pushKey(i))},transformReply:void 0}});var Bot=S(ohe=>{"use strict";Object.defineProperty(ohe,"__esModule",{value:!0});var Qqr=IS();ohe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("GEOSEARCHSTORE"),t!==void 0&&e.pushKey(t),(0,Qqr.parseGeoSearchArguments)(e,r,n,s,i),i?.STOREDIST&&e.push("STOREDIST")},transformReply:void 0}});var Uot=S(che=>{"use strict";Object.defineProperty(che,"__esModule",{value:!0});che.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("GET"),e.pushKey(t)},transformReply:void 0}});var Fot=S(uhe=>{"use strict";Object.defineProperty(uhe,"__esModule",{value:!0});uhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GETBIT"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var $ot=S(lhe=>{"use strict";Object.defineProperty(lhe,"__esModule",{value:!0});lhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("GETDEL"),e.pushKey(t)},transformReply:void 0}});var qot=S(fhe=>{"use strict";Object.defineProperty(fhe,"__esModule",{value:!0});var dhe=We();fhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){if(e.push("GETEX"),e.pushKey(t),"type"in r)switch(r.type){case"EX":case"PX":e.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":e.push(r.type,(0,dhe.transformEXAT)(r.value));break;case"PERSIST":e.push("PERSIST");break}else"EX"in r?e.push("EX",r.EX.toString()):"PX"in r?e.push("PX",r.PX.toString()):"EXAT"in r?e.push("EXAT",(0,dhe.transformEXAT)(r.EXAT)):"PXAT"in r?e.push("PXAT",(0,dhe.transformPXAT)(r.PXAT)):e.push("PERSIST")},transformReply:void 0}});var Hot=S(hhe=>{"use strict";Object.defineProperty(hhe,"__esModule",{value:!0});hhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("GETRANGE"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Vot=S(phe=>{"use strict";Object.defineProperty(phe,"__esModule",{value:!0});phe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GETSET"),e.pushKey(t),e.push(r)},transformReply:void 0}});var jot=S(mhe=>{"use strict";Object.defineProperty(mhe,"__esModule",{value:!0});mhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("EXISTS"),e.pushKeys(t)},transformReply:void 0}});var Kot=S(ghe=>{"use strict";Object.defineProperty(ghe,"__esModule",{value:!0});ghe.default={parseCommand(e,t,r,n){e.push("EXPIRE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n)},transformReply:void 0}});var Got=S(_he=>{"use strict";Object.defineProperty(_he,"__esModule",{value:!0});var Wqr=We();_he.default={parseCommand(e,t,r,n){e.push("EXPIREAT"),e.pushKey(t),e.push((0,Wqr.transformEXAT)(r)),n&&e.push(n)},transformReply:void 0}});var zot=S(Ahe=>{"use strict";Object.defineProperty(Ahe,"__esModule",{value:!0});Ahe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("EXPIRETIME"),e.pushKey(t)},transformReply:void 0}});var Yot=S(cL=>{"use strict";Object.defineProperty(cL,"__esModule",{value:!0});cL.REDIS_FLUSH_MODES=void 0;cL.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};cL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FLUSHALL"),t&&e.push(t)},transformReply:void 0}});var Qot=S(Ehe=>{"use strict";Object.defineProperty(Ehe,"__esModule",{value:!0});Ehe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FLUSHDB"),t&&e.push(t)},transformReply:void 0}});var Xot=S(Jm=>{"use strict";var Xqr=Jm&&Jm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Jqr=Jm&&Jm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Zqr=Jm&&Jm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Xqr(t,e,r);return Jqr(t,e),t};Object.defineProperty(Jm,"__esModule",{value:!0});var Wot=Zqr(TS());Jm.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("FCALL"),(0,Wot.parseEvalArguments)(...e)},transformReply:Wot.default.transformReply}});var Zot=S(Zm=>{"use strict";var eHr=Zm&&Zm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),tHr=Zm&&Zm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),rHr=Zm&&Zm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&eHr(t,e,r);return tHr(t,e),t};Object.defineProperty(Zm,"__esModule",{value:!0});var Jot=rHr(TS());Zm.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("FCALL_RO"),(0,Jot.parseEvalArguments)(...e)},transformReply:Jot.default.transformReply}});var ect=S(yhe=>{"use strict";Object.defineProperty(yhe,"__esModule",{value:!0});yhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","DELETE",t)},transformReply:void 0}});var tct=S(vhe=>{"use strict";Object.defineProperty(vhe,"__esModule",{value:!0});vhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","DUMP")},transformReply:void 0}});var rct=S(She=>{"use strict";Object.defineProperty(She,"__esModule",{value:!0});She.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","FLUSH"),t&&e.push(t)},transformReply:void 0}});var nct=S(The=>{"use strict";Object.defineProperty(The,"__esModule",{value:!0});The.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","KILL")},transformReply:void 0}});var Ihe=S(bhe=>{"use strict";Object.defineProperty(bhe,"__esModule",{value:!0});bhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","LIST"),t?.LIBRARYNAME&&e.push("LIBRARYNAME",t.LIBRARYNAME)},transformReply:{2:e=>e.map(t=>{let r=t;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}})}}),3:void 0}}});var sct=S(uL=>{"use strict";var nHr=uL&&uL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uL,"__esModule",{value:!0});var Rhe=nHr(Ihe());uL.default={NOT_KEYED_COMMAND:Rhe.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Rhe.default.IS_READ_ONLY,parseCommand(...e){Rhe.default.parseCommand(...e),e[0].push("WITHCODE")},transformReply:{2:e=>e.map(t=>{let r=t;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}}),library_code:r[7]}}),3:void 0}}});var ict=S(Che=>{"use strict";Object.defineProperty(Che,"__esModule",{value:!0});Che.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("FUNCTION","LOAD"),r?.REPLACE&&e.push("REPLACE"),e.push(t)},transformReply:void 0}});var act=S(xhe=>{"use strict";Object.defineProperty(xhe,"__esModule",{value:!0});xhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("FUNCTION","RESTORE",t),r?.mode&&e.push(r.mode)},transformReply:void 0}});var oct=S(whe=>{"use strict";Object.defineProperty(whe,"__esModule",{value:!0});var sHr=We();whe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","STATS")},transformReply:{2:e=>({running_script:iHr(e[1]),engines:aHr(e[3])}),3:void 0}};function iHr(e){if((0,sHr.isNullReply)(e))return null;let t=e;return{name:t[1],command:t[3],duration_ms:t[5]}}function aHr(e){let t=e,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty(Nhe,"__esModule",{value:!0});Nhe.default={parseCommand(e,t,r){e.push("HDEL"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Dhe=S(Ohe=>{"use strict";Object.defineProperty(Ohe,"__esModule",{value:!0});Ohe.default={parseCommand(e,t,r){e.push("HELLO"),t&&(e.push(t.toString()),r?.AUTH&&e.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&e.push("SETNAME",r.SETNAME))},transformReply:{2:e=>({server:e[1],version:e[3],proto:e[5],id:e[7],mode:e[9],role:e[11],modules:e[13]}),3:void 0}}});var uct=S(Phe=>{"use strict";Object.defineProperty(Phe,"__esModule",{value:!0});Phe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HEXISTS"),e.pushKey(t),e.push(r)},transformReply:void 0}});var lct=S(lL=>{"use strict";Object.defineProperty(lL,"__esModule",{value:!0});lL.HASH_EXPIRATION=void 0;lL.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};lL.default={parseCommand(e,t,r,n,s){e.push("HEXPIRE"),e.pushKey(t),e.push(n.toString()),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var dct=S(Lhe=>{"use strict";Object.defineProperty(Lhe,"__esModule",{value:!0});var oHr=We();Lhe.default={parseCommand(e,t,r,n,s){e.push("HEXPIREAT"),e.pushKey(t),e.push((0,oHr.transformEXAT)(n)),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var fct=S(dL=>{"use strict";Object.defineProperty(dL,"__esModule",{value:!0});dL.HASH_EXPIRATION_TIME=void 0;dL.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};dL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HEXPIRETIME"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var hct=S(Mhe=>{"use strict";Object.defineProperty(Mhe,"__esModule",{value:!0});Mhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HGET"),e.pushKey(t),e.push(r)},transformReply:void 0}});var pct=S(khe=>{"use strict";Object.defineProperty(khe,"__esModule",{value:!0});var cHr=We();khe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HGETALL"),e.pushKey(t)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:cHr.transformTuplesReply,3:void 0}}});var mct=S(Bhe=>{"use strict";Object.defineProperty(Bhe,"__esModule",{value:!0});Bhe.default={parseCommand(e,t,r){e.push("HGETDEL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var gct=S(Uhe=>{"use strict";Object.defineProperty(Uhe,"__esModule",{value:!0});Uhe.default={parseCommand(e,t,r,n){e.push("HGETEX"),e.pushKey(t),n?.expiration&&(typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="PERSIST"?e.push("PERSIST"):e.push(n.expiration.type,n.expiration.value.toString())),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var _ct=S(Fhe=>{"use strict";Object.defineProperty(Fhe,"__esModule",{value:!0});Fhe.default={parseCommand(e,t,r,n){e.push("HINCRBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:void 0}});var Act=S($he=>{"use strict";Object.defineProperty($he,"__esModule",{value:!0});$he.default={parseCommand(e,t,r,n){e.push("HINCRBYFLOAT"),e.pushKey(t),e.push(r,n.toString())},transformReply:void 0}});var Ect=S(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});qhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HKEYS"),e.pushKey(t)},transformReply:void 0}});var yct=S(Hhe=>{"use strict";Object.defineProperty(Hhe,"__esModule",{value:!0});Hhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HLEN"),e.pushKey(t)},transformReply:void 0}});var vct=S(Vhe=>{"use strict";Object.defineProperty(Vhe,"__esModule",{value:!0});Vhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HMGET"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Sct=S(jhe=>{"use strict";Object.defineProperty(jhe,"__esModule",{value:!0});jhe.default={parseCommand(e,t,r){e.push("HPERSIST"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var Tct=S(Khe=>{"use strict";Object.defineProperty(Khe,"__esModule",{value:!0});Khe.default={parseCommand(e,t,r,n,s){e.push("HPEXPIRE"),e.pushKey(t),e.push(n.toString()),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var bct=S(Ghe=>{"use strict";Object.defineProperty(Ghe,"__esModule",{value:!0});var uHr=We();Ghe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("HPEXPIREAT"),e.pushKey(t),e.push((0,uHr.transformPXAT)(n)),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var Ict=S(zhe=>{"use strict";Object.defineProperty(zhe,"__esModule",{value:!0});zhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HPEXPIRETIME"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var Rct=S(Yhe=>{"use strict";Object.defineProperty(Yhe,"__esModule",{value:!0});Yhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HPTTL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var Cct=S(Qhe=>{"use strict";Object.defineProperty(Qhe,"__esModule",{value:!0});Qhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HRANDFIELD"),e.pushKey(t),e.push(r.toString(),"WITHVALUES")},transformReply:{2:e=>{let t=[],r=0;for(;re.map(t=>{let[r,n]=t;return{field:r,value:n}})}}});var xct=S(Whe=>{"use strict";Object.defineProperty(Whe,"__esModule",{value:!0});Whe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HRANDFIELD"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var wct=S(Xhe=>{"use strict";Object.defineProperty(Xhe,"__esModule",{value:!0});Xhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("HRANDFIELD"),e.pushKey(t)},transformReply:void 0}});var fL=S(CS=>{"use strict";Object.defineProperty(CS,"__esModule",{value:!0});CS.pushScanArguments=CS.parseScanArguments=void 0;function Nct(e,t,r){e.push(t),r?.MATCH&&e.push("MATCH",r.MATCH),r?.COUNT&&e.push("COUNT",r.COUNT.toString())}CS.parseScanArguments=Nct;function lHr(e,t,r){return e.push(t.toString()),r?.MATCH&&e.push("MATCH",r.MATCH),r?.COUNT&&e.push("COUNT",r.COUNT.toString()),e}CS.pushScanArguments=lHr;CS.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SCAN"),Nct(e,t,r),r?.TYPE&&e.push("TYPE",r.TYPE)},transformReply([e,t]){return{cursor:e,keys:t}}}});var Zhe=S(Jhe=>{"use strict";Object.defineProperty(Jhe,"__esModule",{value:!0});var dHr=fL();Jhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("HSCAN"),e.pushKey(t),(0,dHr.parseScanArguments)(e,r,n)},transformReply([e,t]){let r=[],n=0;for(;n{"use strict";var fHr=hL&&hL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hL,"__esModule",{value:!0});var hHr=fHr(Zhe());hL.default={IS_READ_ONLY:!0,parseCommand(...e){let t=e[0];hHr.default.parseCommand(...e),t.push("NOVALUES")},transformReply([e,t]){return{cursor:e,fields:t}}}});var Pct=S(epe=>{"use strict";Object.defineProperty(epe,"__esModule",{value:!0});epe.default={parseCommand(e,...[t,r,n]){e.push("HSET"),e.pushKey(t),typeof r=="string"||typeof r=="number"||r instanceof Buffer?e.push(xS(r),xS(n)):r instanceof Map?pHr(e,r):Array.isArray(r)?Dct(e,r):mHr(e,r)},transformReply:void 0};function pHr(e,t){for(let[r,n]of t.entries())e.push(xS(r),xS(n))}function Dct(e,t){for(let r of t){if(Array.isArray(r)){Dct(e,r);continue}e.push(xS(r))}}function mHr(e,t){for(let r of Object.keys(t))e.push(xS(r),xS(t[r]))}function xS(e){return typeof e=="number"?e.toString():e}});var Mct=S(tpe=>{"use strict";Object.defineProperty(tpe,"__esModule",{value:!0});var gHr=kh();tpe.default={parseCommand(e,t,r,n){e.push("HSETEX"),e.pushKey(t),n?.mode&&e.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="KEEPTTL"?e.push("KEEPTTL"):e.push(n.expiration.type,n.expiration.value.toString())),e.push("FIELDS"),r instanceof Map?_Hr(e,r):Array.isArray(r)?AHr(e,r):EHr(e,r)},transformReply:void 0};function _Hr(e,t){e.push(t.size.toString());for(let[r,n]of t.entries())e.push(pL(r),pL(n))}function AHr(e,t){let r=new gHr.BasicCommandParser;if(Lct(r,t),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");e.push((r.redisArgs.length/2).toString()),e.push(...r.redisArgs)}function Lct(e,t){for(let r of t){if(Array.isArray(r)){Lct(e,r);continue}e.push(pL(r))}}function EHr(e,t){let r=Object.keys(t).length;if(r==0)throw Error("object without keys");e.push(r.toString());for(let n of Object.keys(t))e.push(pL(n),pL(t[n]))}function pL(e){return typeof e=="number"?e.toString():e}});var kct=S(rpe=>{"use strict";Object.defineProperty(rpe,"__esModule",{value:!0});rpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("HSETNX"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var Bct=S(npe=>{"use strict";Object.defineProperty(npe,"__esModule",{value:!0});npe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HSTRLEN"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Uct=S(spe=>{"use strict";Object.defineProperty(spe,"__esModule",{value:!0});spe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HTTL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var Fct=S(ipe=>{"use strict";Object.defineProperty(ipe,"__esModule",{value:!0});ipe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HVALS"),e.pushKey(t)},transformReply:void 0}});var qct=S(ape=>{"use strict";Object.defineProperty(ape,"__esModule",{value:!0});function $ct(e){let t=[];for(let r=0;r{let r=t;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function vHr(e){let t={},r=e[0];for(let n=0;ne===null?null:vHr(e),3:void 0},unstableResp3:!0}});var Hct=S(ope=>{"use strict";Object.defineProperty(ope,"__esModule",{value:!0});ope.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("HOTKEYS","RESET")},transformReply:void 0}});var Vct=S(mL=>{"use strict";Object.defineProperty(mL,"__esModule",{value:!0});mL.HOTKEYS_METRICS=void 0;mL.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};mL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){if(e.push("HOTKEYS","START"),e.push("METRICS",t.METRICS.count.toString()),t.METRICS.CPU&&e.push("CPU"),t.METRICS.NET&&e.push("NET"),t.COUNT!==void 0&&e.push("COUNT",t.COUNT.toString()),t.DURATION!==void 0&&e.push("DURATION",t.DURATION.toString()),t.SAMPLE!==void 0&&e.push("SAMPLE",t.SAMPLE.toString()),t.SLOTS!==void 0){e.push("SLOTS",t.SLOTS.count.toString());for(let r of t.SLOTS.slots)e.push(r.toString())}},transformReply:void 0}});var jct=S(cpe=>{"use strict";Object.defineProperty(cpe,"__esModule",{value:!0});cpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("HOTKEYS","STOP")},transformReply:void 0}});var Kct=S(upe=>{"use strict";Object.defineProperty(upe,"__esModule",{value:!0});upe.default={parseCommand(e,t){e.push("INCR"),e.pushKey(t)},transformReply:void 0}});var Gct=S(lpe=>{"use strict";Object.defineProperty(lpe,"__esModule",{value:!0});lpe.default={parseCommand(e,t,r){e.push("INCRBY"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var zct=S(dpe=>{"use strict";Object.defineProperty(dpe,"__esModule",{value:!0});dpe.default={parseCommand(e,t,r){e.push("INCRBYFLOAT"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Yct=S(fpe=>{"use strict";Object.defineProperty(fpe,"__esModule",{value:!0});fpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("INFO"),t&&e.push(t)},transformReply:void 0}});var Qct=S(hpe=>{"use strict";Object.defineProperty(hpe,"__esModule",{value:!0});hpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("KEYS",t)},transformReply:void 0}});var Wct=S(ppe=>{"use strict";Object.defineProperty(ppe,"__esModule",{value:!0});ppe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LASTSAVE")},transformReply:void 0}});var Xct=S(mpe=>{"use strict";Object.defineProperty(mpe,"__esModule",{value:!0});mpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LATENCY","DOCTOR")},transformReply:void 0}});var gpe=S(gL=>{"use strict";Object.defineProperty(gL,"__esModule",{value:!0});gL.LATENCY_EVENTS=void 0;gL.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};gL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LATENCY","GRAPH",t)},transformReply:void 0}});var Jct=S(_pe=>{"use strict";Object.defineProperty(_pe,"__esModule",{value:!0});_pe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LATENCY","HISTORY",t)},transformReply:void 0}});var Zct=S(Ape=>{"use strict";Object.defineProperty(Ape,"__esModule",{value:!0});Ape.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LATENCY","LATEST")},transformReply:void 0}});var eut=S(_L=>{"use strict";Object.defineProperty(_L,"__esModule",{value:!0});_L.LATENCY_EVENTS=void 0;var SHr=gpe();Object.defineProperty(_L,"LATENCY_EVENTS",{enumerable:!0,get:function(){return SHr.LATENCY_EVENTS}});_L.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,...t){let r=["LATENCY","RESET"];t.length>0&&r.push(...t),e.push(...r)},transformReply:void 0}});var Y9=S(Epe=>{"use strict";Object.defineProperty(Epe,"__esModule",{value:!0});Epe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("LCS"),e.pushKeys([t,r])},transformReply:void 0}});var ype=S(AL=>{"use strict";var THr=AL&&AL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AL,"__esModule",{value:!0});var tut=THr(Y9());AL.default={IS_READ_ONLY:tut.default.IS_READ_ONLY,parseCommand(e,t,r,n){tut.default.parseCommand(e,t,r),e.push("IDX"),n?.MINMATCHLEN&&e.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:e=>({matches:e[1],len:e[3]}),3:void 0}}});var nut=S(EL=>{"use strict";var bHr=EL&&EL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EL,"__esModule",{value:!0});var rut=bHr(ype());EL.default={IS_READ_ONLY:rut.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];rut.default.parseCommand(...e),t.push("WITHMATCHLEN")},transformReply:{2:e=>({matches:e[1],len:e[3]}),3:void 0}}});var iut=S(yL=>{"use strict";var IHr=yL&&yL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yL,"__esModule",{value:!0});var sut=IHr(Y9());yL.default={IS_READ_ONLY:sut.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];sut.default.parseCommand(...e),t.push("LEN")},transformReply:void 0}});var aut=S(vpe=>{"use strict";Object.defineProperty(vpe,"__esModule",{value:!0});vpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("LINDEX"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var out=S(Spe=>{"use strict";Object.defineProperty(Spe,"__esModule",{value:!0});Spe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("LINSERT"),e.pushKey(t),e.push(r,n,s)},transformReply:void 0}});var cut=S(Tpe=>{"use strict";Object.defineProperty(Tpe,"__esModule",{value:!0});Tpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LLEN"),e.pushKey(t)},transformReply:void 0}});var uut=S(bpe=>{"use strict";Object.defineProperty(bpe,"__esModule",{value:!0});bpe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("LMOVE"),e.pushKeys([t,r]),e.push(n,s)},transformReply:void 0}});var lut=S(Ipe=>{"use strict";Object.defineProperty(Ipe,"__esModule",{value:!0});Ipe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,...r){e.push("LOLWUT"),t&&(e.push("VERSION",t.toString()),e.pushVariadic(r.map(String)))},transformReply:void 0}});var Cpe=S(Rpe=>{"use strict";Object.defineProperty(Rpe,"__esModule",{value:!0});Rpe.default={parseCommand(e,t){e.push("LPOP"),e.pushKey(t)},transformReply:void 0}});var dut=S(vL=>{"use strict";var RHr=vL&&vL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vL,"__esModule",{value:!0});var CHr=RHr(Cpe());vL.default={IS_READ_ONLY:!1,parseCommand(e,t,r){CHr.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var wpe=S(xpe=>{"use strict";Object.defineProperty(xpe,"__esModule",{value:!0});xpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LPOS"),e.pushKey(t),e.push(r),n?.RANK!==void 0&&e.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&e.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var fut=S(SL=>{"use strict";var xHr=SL&&SL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SL,"__esModule",{value:!0});var Npe=xHr(wpe());SL.default={CACHEABLE:Npe.default.CACHEABLE,IS_READ_ONLY:Npe.default.IS_READ_ONLY,parseCommand(e,t,r,n,s){Npe.default.parseCommand(e,t,r,s),e.push("COUNT",n.toString())},transformReply:void 0}});var hut=S(Ope=>{"use strict";Object.defineProperty(Ope,"__esModule",{value:!0});Ope.default={parseCommand(e,t,r){e.push("LPUSH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var put=S(Dpe=>{"use strict";Object.defineProperty(Dpe,"__esModule",{value:!0});Dpe.default={parseCommand(e,t,r){e.push("LPUSHX"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var mut=S(Ppe=>{"use strict";Object.defineProperty(Ppe,"__esModule",{value:!0});Ppe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LRANGE"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var gut=S(Lpe=>{"use strict";Object.defineProperty(Lpe,"__esModule",{value:!0});Lpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LREM"),e.pushKey(t),e.push(r.toString()),e.push(n)},transformReply:void 0}});var _ut=S(Mpe=>{"use strict";Object.defineProperty(Mpe,"__esModule",{value:!0});Mpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LSET"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Aut=S(kpe=>{"use strict";Object.defineProperty(kpe,"__esModule",{value:!0});kpe.default={parseCommand(e,t,r,n){e.push("LTRIM"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Eut=S(Bpe=>{"use strict";Object.defineProperty(Bpe,"__esModule",{value:!0});Bpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","DOCTOR")},transformReply:void 0}});var yut=S(Upe=>{"use strict";Object.defineProperty(Upe,"__esModule",{value:!0});Upe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var vut=S(Fpe=>{"use strict";Object.defineProperty(Fpe,"__esModule",{value:!0});Fpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("MEMORY","PURGE")},transformReply:void 0}});var Sut=S($pe=>{"use strict";Object.defineProperty($pe,"__esModule",{value:!0});var wHr=We();$pe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","STATS")},transformReply:{2:(e,t,r)=>{let n={},s=0;for(;s{"use strict";Object.defineProperty(qpe,"__esModule",{value:!0});qpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("MEMORY","USAGE"),e.pushKey(t),r?.SAMPLES&&e.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var but=S(Hpe=>{"use strict";Object.defineProperty(Hpe,"__esModule",{value:!0});Hpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("MGET"),e.pushKeys(t)},transformReply:void 0}});var Iut=S(Vpe=>{"use strict";Object.defineProperty(Vpe,"__esModule",{value:!0});Vpe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i,a){e.push("MIGRATE",t,r.toString());let o=Array.isArray(n);o?e.push(""):e.push(n),e.push(s.toString(),i.toString()),a?.COPY&&e.push("COPY"),a?.REPLACE&&e.push("REPLACE"),a?.AUTH&&(a.AUTH.username?e.push("AUTH2",a.AUTH.username,a.AUTH.password):e.push("AUTH",a.AUTH.password)),o&&(e.push("KEYS"),e.pushVariadic(n))},transformReply:void 0}});var Rut=S(jpe=>{"use strict";Object.defineProperty(jpe,"__esModule",{value:!0});jpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MODULE","LIST")},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],ver:r[3]}}),3:void 0}}});var Cut=S(Kpe=>{"use strict";Object.defineProperty(Kpe,"__esModule",{value:!0});Kpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("MODULE","LOAD",t),r&&e.push(...r)},transformReply:void 0}});var xut=S(Gpe=>{"use strict";Object.defineProperty(Gpe,"__esModule",{value:!0});Gpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("MODULE","UNLOAD",t)},transformReply:void 0}});var wut=S(zpe=>{"use strict";Object.defineProperty(zpe,"__esModule",{value:!0});zpe.default={parseCommand(e,t,r){e.push("MOVE"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Ype=S(TL=>{"use strict";Object.defineProperty(TL,"__esModule",{value:!0});TL.parseMSetArguments=void 0;function Nut(e,t){if(Array.isArray(t)){if(t.length==0)throw new Error("empty toSet Argument");if(Array.isArray(t[0]))for(let r of t)e.pushKey(r[0]),e.push(r[1]);else{let r=t;for(let n=0;n{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.parseMSetExArguments=vo.ExpirationMode=vo.SetMode=void 0;var Out=We();vo.SetMode={XX:"XX",NX:"NX"};vo.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function Dut(e,t){let r=[];if(Array.isArray(t)){if(t.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(t[0]))r=t;else{let n=t;for(let s=0;s{"use strict";Object.defineProperty(Qpe,"__esModule",{value:!0});var NHr=Ype();Qpe.default={IS_READ_ONLY:!0,parseCommand(e,t){return e.push("MSETNX"),(0,NHr.parseMSetArguments)(e,t)},transformReply:void 0}});var Mut=S(Wpe=>{"use strict";Object.defineProperty(Wpe,"__esModule",{value:!0});Wpe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","ENCODING"),e.pushKey(t)},transformReply:void 0}});var kut=S(Xpe=>{"use strict";Object.defineProperty(Xpe,"__esModule",{value:!0});Xpe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","FREQ"),e.pushKey(t)},transformReply:void 0}});var But=S(Jpe=>{"use strict";Object.defineProperty(Jpe,"__esModule",{value:!0});Jpe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","IDLETIME"),e.pushKey(t)},transformReply:void 0}});var Uut=S(Zpe=>{"use strict";Object.defineProperty(Zpe,"__esModule",{value:!0});Zpe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","REFCOUNT"),e.pushKey(t)},transformReply:void 0}});var Fut=S(eme=>{"use strict";Object.defineProperty(eme,"__esModule",{value:!0});eme.default={parseCommand(e,t){e.push("PERSIST"),e.pushKey(t)},transformReply:void 0}});var $ut=S(tme=>{"use strict";Object.defineProperty(tme,"__esModule",{value:!0});tme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("PEXPIRE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n)},transformReply:void 0}});var qut=S(rme=>{"use strict";Object.defineProperty(rme,"__esModule",{value:!0});var OHr=We();rme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("PEXPIREAT"),e.pushKey(t),e.push((0,OHr.transformPXAT)(r)),n&&e.push(n)},transformReply:void 0}});var Hut=S(nme=>{"use strict";Object.defineProperty(nme,"__esModule",{value:!0});nme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PEXPIRETIME"),e.pushKey(t)},transformReply:void 0}});var Vut=S(sme=>{"use strict";Object.defineProperty(sme,"__esModule",{value:!0});sme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("PFADD"),e.pushKey(t),r&&e.pushVariadic(r)},transformReply:void 0}});var jut=S(ime=>{"use strict";Object.defineProperty(ime,"__esModule",{value:!0});ime.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PFCOUNT"),e.pushKeys(t)},transformReply:void 0}});var Kut=S(ame=>{"use strict";Object.defineProperty(ame,"__esModule",{value:!0});ame.default={parseCommand(e,t,r){e.push("PFMERGE"),e.pushKey(t),r&&e.pushKeys(r)},transformReply:void 0}});var Gut=S(ome=>{"use strict";Object.defineProperty(ome,"__esModule",{value:!0});ome.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PING"),t&&e.push(t)},transformReply:void 0}});var zut=S(cme=>{"use strict";Object.defineProperty(cme,"__esModule",{value:!0});cme.default={parseCommand(e,t,r,n){e.push("PSETEX"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Yut=S(ume=>{"use strict";Object.defineProperty(ume,"__esModule",{value:!0});ume.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PTTL"),e.pushKey(t)},transformReply:void 0}});var Qut=S(lme=>{"use strict";Object.defineProperty(lme,"__esModule",{value:!0});lme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(e,t,r){e.push("PUBLISH",t,r)},transformReply:void 0}});var Wut=S(dme=>{"use strict";Object.defineProperty(dme,"__esModule",{value:!0});dme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","CHANNELS"),t&&e.push(t)},transformReply:void 0}});var Xut=S(fme=>{"use strict";Object.defineProperty(fme,"__esModule",{value:!0});fme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("PUBSUB","NUMPAT")},transformReply:void 0}});var Jut=S(hme=>{"use strict";Object.defineProperty(hme,"__esModule",{value:!0});hme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","NUMSUB"),t&&e.pushVariadic(t)},transformReply(e){let t=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(pme,"__esModule",{value:!0});pme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","SHARDNUMSUB"),t&&e.pushVariadic(t)},transformReply(e){let t=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(mme,"__esModule",{value:!0});mme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","SHARDCHANNELS"),t&&e.push(t)},transformReply:void 0}});var tlt=S(gme=>{"use strict";Object.defineProperty(gme,"__esModule",{value:!0});gme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("RANDOMKEY")},transformReply:void 0}});var rlt=S(_me=>{"use strict";Object.defineProperty(_me,"__esModule",{value:!0});_me.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("READONLY")},transformReply:void 0}});var nlt=S(Ame=>{"use strict";Object.defineProperty(Ame,"__esModule",{value:!0});Ame.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("RENAME"),e.pushKeys([t,r])},transformReply:void 0}});var slt=S(Eme=>{"use strict";Object.defineProperty(Eme,"__esModule",{value:!0});Eme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("RENAMENX"),e.pushKeys([t,r])},transformReply:void 0}});var ilt=S(yme=>{"use strict";Object.defineProperty(yme,"__esModule",{value:!0});yme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("REPLICAOF",t,r.toString())},transformReply:void 0}});var alt=S(vme=>{"use strict";Object.defineProperty(vme,"__esModule",{value:!0});vme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("RESTORE-ASKING")},transformReply:void 0}});var olt=S(Sme=>{"use strict";Object.defineProperty(Sme,"__esModule",{value:!0});Sme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("RESTORE"),e.pushKey(t),e.push(r.toString(),n),s?.REPLACE&&e.push("REPLACE"),s?.ABSTTL&&e.push("ABSTTL"),s?.IDLETIME&&e.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&e.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var clt=S(Tme=>{"use strict";Object.defineProperty(Tme,"__esModule",{value:!0});Tme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ROLE")},transformReply(e){switch(e[0]){case"master":{let[t,r,n]=e;return{role:t,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[t,r,n,s,i]=e;return{role:t,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[t,r]=e;return{role:t,masterNames:r}}}}}});var ult=S(bme=>{"use strict";Object.defineProperty(bme,"__esModule",{value:!0});bme.default={parseCommand(e,t,r){e.push("RPOP"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var llt=S(Ime=>{"use strict";Object.defineProperty(Ime,"__esModule",{value:!0});Ime.default={parseCommand(e,t){e.push("RPOP"),e.pushKey(t)},transformReply:void 0}});var dlt=S(Rme=>{"use strict";Object.defineProperty(Rme,"__esModule",{value:!0});Rme.default={parseCommand(e,t,r){e.push("RPOPLPUSH"),e.pushKeys([t,r])},transformReply:void 0}});var flt=S(Cme=>{"use strict";Object.defineProperty(Cme,"__esModule",{value:!0});Cme.default={parseCommand(e,t,r){e.push("RPUSH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var hlt=S(xme=>{"use strict";Object.defineProperty(xme,"__esModule",{value:!0});xme.default={parseCommand(e,t,r){e.push("RPUSHX"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var plt=S(wme=>{"use strict";Object.defineProperty(wme,"__esModule",{value:!0});wme.default={parseCommand(e,t,r){e.push("SADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var mlt=S(Nme=>{"use strict";Object.defineProperty(Nme,"__esModule",{value:!0});Nme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCARD"),e.pushKey(t)},transformReply:void 0}});var glt=S(Ome=>{"use strict";Object.defineProperty(Ome,"__esModule",{value:!0});Ome.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","DEBUG",t)},transformReply:void 0}});var _lt=S(Dme=>{"use strict";Object.defineProperty(Dme,"__esModule",{value:!0});Dme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","EXISTS"),e.pushVariadic(t)},transformReply:void 0}});var Alt=S(Pme=>{"use strict";Object.defineProperty(Pme,"__esModule",{value:!0});Pme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","FLUSH"),t&&e.push(t)},transformReply:void 0}});var Elt=S(Lme=>{"use strict";Object.defineProperty(Lme,"__esModule",{value:!0});Lme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("SCRIPT","KILL")},transformReply:void 0}});var ylt=S(Mme=>{"use strict";Object.defineProperty(Mme,"__esModule",{value:!0});Mme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","LOAD",t)},transformReply:void 0}});var vlt=S(kme=>{"use strict";Object.defineProperty(kme,"__esModule",{value:!0});kme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SDIFF"),e.pushKeys(t)},transformReply:void 0}});var Slt=S(Bme=>{"use strict";Object.defineProperty(Bme,"__esModule",{value:!0});Bme.default={parseCommand(e,t,r){e.push("SDIFFSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var Tlt=S(Ume=>{"use strict";Object.defineProperty(Ume,"__esModule",{value:!0});Ume.default={parseCommand(e,t,r,n){e.push("SET"),e.pushKey(t),e.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="KEEPTTL"?e.push("KEEPTTL"):e.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?e.push("EX",n.EX.toString()):n?.PX!==void 0?e.push("PX",n.PX.toString()):n?.EXAT!==void 0?e.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?e.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&e.push("KEEPTTL"),n?.condition?(e.push(n.condition),n?.matchValue!==void 0&&e.push(n.matchValue)):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.GET&&e.push("GET")},transformReply:void 0}});var blt=S(Fme=>{"use strict";Object.defineProperty(Fme,"__esModule",{value:!0});Fme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("SETBIT"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Ilt=S($me=>{"use strict";Object.defineProperty($me,"__esModule",{value:!0});$me.default={parseCommand(e,t,r,n){e.push("SETEX"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Rlt=S(qme=>{"use strict";Object.defineProperty(qme,"__esModule",{value:!0});qme.default={parseCommand(e,t,r){e.push("SETNX"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Clt=S(Hme=>{"use strict";Object.defineProperty(Hme,"__esModule",{value:!0});Hme.default={parseCommand(e,t,r,n){e.push("SETRANGE"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var xlt=S(Vme=>{"use strict";Object.defineProperty(Vme,"__esModule",{value:!0});Vme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SINTER"),e.pushKeys(t)},transformReply:void 0}});var wlt=S(jme=>{"use strict";Object.defineProperty(jme,"__esModule",{value:!0});jme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SINTERCARD"),e.pushKeysLength(t),typeof r=="number"?e.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&e.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var Nlt=S(Kme=>{"use strict";Object.defineProperty(Kme,"__esModule",{value:!0});Kme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SINTERSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var Olt=S(Gme=>{"use strict";Object.defineProperty(Gme,"__esModule",{value:!0});Gme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SISMEMBER"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Dlt=S(zme=>{"use strict";Object.defineProperty(zme,"__esModule",{value:!0});zme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SMEMBERS"),e.pushKey(t)},transformReply:{2:void 0,3:void 0}}});var Plt=S(Yme=>{"use strict";Object.defineProperty(Yme,"__esModule",{value:!0});Yme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SMISMEMBER"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Llt=S(Qme=>{"use strict";Object.defineProperty(Qme,"__esModule",{value:!0});Qme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("SMOVE"),e.pushKeys([t,r]),e.push(n)},transformReply:void 0}});var Q9=S(bL=>{"use strict";Object.defineProperty(bL,"__esModule",{value:!0});bL.parseSortArguments=void 0;function Mlt(e,t,r){if(e.pushKey(t),r?.BY&&e.push("BY",r.BY),r?.LIMIT&&e.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)e.push("GET",n);else e.push("GET",r.GET);r?.DIRECTION&&e.push(r.DIRECTION),r?.ALPHA&&e.push("ALPHA")}bL.parseSortArguments=Mlt;bL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SORT"),Mlt(e,t,r)},transformReply:void 0}});var Blt=S(eg=>{"use strict";var DHr=eg&&eg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),PHr=eg&&eg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),LHr=eg&&eg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&DHr(t,e,r);return PHr(t,e),t};Object.defineProperty(eg,"__esModule",{value:!0});var klt=LHr(Q9());eg.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("SORT_RO"),(0,klt.parseSortArguments)(...e)},transformReply:klt.default.transformReply}});var Ult=S(IL=>{"use strict";var MHr=IL&&IL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(IL,"__esModule",{value:!0});var kHr=MHr(Q9());IL.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){kHr.default.parseCommand(e,t,n),e.push("STORE",r)},transformReply:void 0}});var Flt=S(Wme=>{"use strict";Object.defineProperty(Wme,"__esModule",{value:!0});Wme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SPOP"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var $lt=S(Xme=>{"use strict";Object.defineProperty(Xme,"__esModule",{value:!0});Xme.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("SPOP"),e.pushKey(t)},transformReply:void 0}});var qlt=S(Jme=>{"use strict";Object.defineProperty(Jme,"__esModule",{value:!0});Jme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SPUBLISH"),e.pushKey(t),e.push(r)},transformReply:void 0}});var ege=S(Zme=>{"use strict";Object.defineProperty(Zme,"__esModule",{value:!0});Zme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("SRANDMEMBER"),e.pushKey(t)},transformReply:void 0}});var Vlt=S(RL=>{"use strict";var BHr=RL&&RL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RL,"__esModule",{value:!0});var Hlt=BHr(ege());RL.default={IS_READ_ONLY:Hlt.default.IS_READ_ONLY,parseCommand(e,t,r){Hlt.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var jlt=S(tge=>{"use strict";Object.defineProperty(tge,"__esModule",{value:!0});tge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SREM"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Klt=S(rge=>{"use strict";Object.defineProperty(rge,"__esModule",{value:!0});var UHr=fL();rge.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("SSCAN"),e.pushKey(t),(0,UHr.parseScanArguments)(e,r,n)},transformReply([e,t]){return{cursor:e,members:t}}}});var Glt=S(nge=>{"use strict";Object.defineProperty(nge,"__esModule",{value:!0});nge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("STRLEN"),e.pushKey(t)},transformReply:void 0}});var zlt=S(sge=>{"use strict";Object.defineProperty(sge,"__esModule",{value:!0});sge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SUNION"),e.pushKeys(t)},transformReply:void 0}});var Ylt=S(ige=>{"use strict";Object.defineProperty(ige,"__esModule",{value:!0});ige.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SUNIONSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var Qlt=S(age=>{"use strict";Object.defineProperty(age,"__esModule",{value:!0});age.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SWAPDB",t.toString(),r.toString())},transformReply:void 0}});var Wlt=S(oge=>{"use strict";Object.defineProperty(oge,"__esModule",{value:!0});oge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("TIME")},transformReply:void 0}});var Xlt=S(cge=>{"use strict";Object.defineProperty(cge,"__esModule",{value:!0});cge.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TOUCH"),e.pushKeys(t)},transformReply:void 0}});var Jlt=S(uge=>{"use strict";Object.defineProperty(uge,"__esModule",{value:!0});uge.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TTL"),e.pushKey(t)},transformReply:void 0}});var Zlt=S(lge=>{"use strict";Object.defineProperty(lge,"__esModule",{value:!0});lge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("TYPE"),e.pushKey(t)},transformReply:void 0}});var edt=S(dge=>{"use strict";Object.defineProperty(dge,"__esModule",{value:!0});dge.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("UNLINK"),e.pushKeys(t)},transformReply:void 0}});var tdt=S(fge=>{"use strict";Object.defineProperty(fge,"__esModule",{value:!0});fge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("WAIT",t.toString(),r.toString())},transformReply:void 0}});var rdt=S(hge=>{"use strict";Object.defineProperty(hge,"__esModule",{value:!0});hge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XACK"),e.pushKey(t),e.push(r),e.pushVariadic(n)},transformReply:void 0}});var ndt=S(pge=>{"use strict";Object.defineProperty(pge,"__esModule",{value:!0});pge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XACKDEL"),e.pushKey(t),e.push(r),s&&e.push(s),e.push("IDS"),e.pushVariadicWithLength(n)},transformReply:void 0}});var mge=S(CL=>{"use strict";Object.defineProperty(CL,"__esModule",{value:!0});CL.parseXAddArguments=void 0;function sdt(e,t,r,n,s,i){t.push("XADD"),t.pushKey(r),e&&t.push(e),i?.policy&&t.push(i.policy),i?.IDMPAUTO?t.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&t.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&t.push(i.TRIM.strategy),i.TRIM.strategyModifier&&t.push(i.TRIM.strategyModifier),t.push(i.TRIM.threshold.toString()),i.TRIM.limit&&t.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&t.push(i.TRIM.policy)),t.push(n);for(let[a,o]of Object.entries(s))t.push(a,o)}CL.parseXAddArguments=sdt;CL.default={IS_READ_ONLY:!1,parseCommand(...e){return sdt(void 0,...e)},transformReply:void 0}});var idt=S(gge=>{"use strict";Object.defineProperty(gge,"__esModule",{value:!0});var FHr=mge();gge.default={IS_READ_ONLY:!1,parseCommand(...e){return(0,FHr.parseXAddArguments)("NOMKSTREAM",...e)},transformReply:void 0}});var Age=S(_ge=>{"use strict";Object.defineProperty(_ge,"__esModule",{value:!0});var $Hr=We();_ge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i,a){e.push("XAUTOCLAIM"),e.pushKey(t),e.push(r,n,s.toString(),i),a?.COUNT&&e.push("COUNT",a.COUNT.toString())},transformReply(e,t,r){return{nextId:e[0],messages:e[1].map($Hr.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:e[2]}}}});var odt=S(xL=>{"use strict";var qHr=xL&&xL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xL,"__esModule",{value:!0});var adt=qHr(Age());xL.default={IS_READ_ONLY:adt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];adt.default.parseCommand(...e),t.push("JUSTID")},transformReply(e){return{nextId:e[0],messages:e[1],deletedMessages:e[2]}}}});var yge=S(Ege=>{"use strict";Object.defineProperty(Ege,"__esModule",{value:!0});var HHr=We();Ege.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i,a){e.push("XCLAIM"),e.pushKey(t),e.push(r,n,s.toString()),e.pushVariadic(i),a?.IDLE!==void 0&&e.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&e.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&e.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&e.push("FORCE"),a?.LASTID!==void 0&&e.push("LASTID",a.LASTID)},transformReply(e,t,r){return e.map(HHr.transformStreamMessageNullReply.bind(void 0,r))}}});var udt=S(wL=>{"use strict";var VHr=wL&&wL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wL,"__esModule",{value:!0});var cdt=VHr(yge());wL.default={IS_READ_ONLY:cdt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];cdt.default.parseCommand(...e),t.push("JUSTID")},transformReply:void 0}});var ldt=S(vge=>{"use strict";Object.defineProperty(vge,"__esModule",{value:!0});vge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XCFGSET"),e.pushKey(t),r?.IDMP_DURATION!==void 0&&e.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&e.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var ddt=S(Sge=>{"use strict";Object.defineProperty(Sge,"__esModule",{value:!0});Sge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XDEL"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var fdt=S(Tge=>{"use strict";Object.defineProperty(Tge,"__esModule",{value:!0});Tge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XDELEX"),e.pushKey(t),n&&e.push(n),e.push("IDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var hdt=S(bge=>{"use strict";Object.defineProperty(bge,"__esModule",{value:!0});bge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XGROUP","CREATE"),e.pushKey(t),e.push(r,n),s?.MKSTREAM&&e.push("MKSTREAM"),s?.ENTRIESREAD&&e.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var pdt=S(Ige=>{"use strict";Object.defineProperty(Ige,"__esModule",{value:!0});Ige.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XGROUP","CREATECONSUMER"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var mdt=S(Rge=>{"use strict";Object.defineProperty(Rge,"__esModule",{value:!0});Rge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XGROUP","DELCONSUMER"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var gdt=S(Cge=>{"use strict";Object.defineProperty(Cge,"__esModule",{value:!0});Cge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XGROUP","DESTROY"),e.pushKey(t),e.push(r)},transformReply:void 0}});var _dt=S(xge=>{"use strict";Object.defineProperty(xge,"__esModule",{value:!0});xge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XGROUP","SETID"),e.pushKey(t),e.push(r,n),s?.ENTRIESREAD&&e.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var Adt=S(wge=>{"use strict";Object.defineProperty(wge,"__esModule",{value:!0});wge.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("XINFO","CONSUMERS"),e.pushKey(t),e.push(r)},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var Edt=S(Nge=>{"use strict";Object.defineProperty(Nge,"__esModule",{value:!0});Nge.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("XINFO","GROUPS"),e.pushKey(t)},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var vdt=S(Oge=>{"use strict";Object.defineProperty(Oge,"__esModule",{value:!0});var ydt=We();Oge.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("XINFO","STREAM"),e.pushKey(t)},transformReply:{2(e){let t={};for(let r=0;r{"use strict";Object.defineProperty(Dge,"__esModule",{value:!0});Dge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("XLEN"),e.pushKey(t)},transformReply:void 0}});var Tdt=S(Pge=>{"use strict";Object.defineProperty(Pge,"__esModule",{value:!0});Pge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s,i,a){e.push("XPENDING"),e.pushKey(t),e.push(r),a?.IDLE!==void 0&&e.push("IDLE",a.IDLE.toString()),e.push(n,s,i.toString()),a?.consumer&&e.push(a.consumer)},transformReply(e){return e.map(t=>{let r=t;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var bdt=S(Lge=>{"use strict";Object.defineProperty(Lge,"__esModule",{value:!0});Lge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("XPENDING"),e.pushKey(t),e.push(r)},transformReply(e){let t=e[3];return{pending:e[0],firstId:e[1],lastId:e[2],consumers:t===null?null:t.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Mge=S(NL=>{"use strict";Object.defineProperty(NL,"__esModule",{value:!0});NL.xRangeArguments=void 0;var jHr=We();function Idt(e,t,r){let n=[e,t];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}NL.xRangeArguments=Idt;NL.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,...r){e.push("XRANGE"),e.pushKey(t),e.pushVariadic(Idt(r[0],r[1],r[2]))},transformReply(e,t,r){return e.map(jHr.transformStreamMessageReply.bind(void 0,r))}}});var kge=S(OL=>{"use strict";Object.defineProperty(OL,"__esModule",{value:!0});OL.pushXReadStreams=void 0;var KHr=We();function Rdt(e,t){if(e.push("STREAMS"),Array.isArray(t)){for(let r=0;r{"use strict";Object.defineProperty(Bge,"__esModule",{value:!0});var GHr=kge(),zHr=We();Bge.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("XREADGROUP","GROUP",t,r),s?.COUNT!==void 0&&e.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&e.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&e.push("NOACK"),s?.CLAIM!==void 0&&e.push("CLAIM",s.CLAIM.toString()),(0,GHr.pushXReadStreams)(e,n)},transformReply:{2:zHr.transformStreamsMessagesReplyResp2,3:void 0}}});var xdt=S(tg=>{"use strict";var YHr=tg&&tg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),QHr=tg&&tg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),WHr=tg&&tg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&YHr(t,e,r);return QHr(t,e),t};Object.defineProperty(tg,"__esModule",{value:!0});var W9=WHr(Mge());tg.default={CACHEABLE:W9.default.CACHEABLE,IS_READ_ONLY:W9.default.IS_READ_ONLY,parseCommand(e,t,...r){e.push("XREVRANGE"),e.pushKey(t),e.pushVariadic((0,W9.xRangeArguments)(r[0],r[1],r[2]))},transformReply:W9.default.transformReply}});var wdt=S(Uge=>{"use strict";Object.defineProperty(Uge,"__esModule",{value:!0});Uge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XSETID"),e.pushKey(t),e.push(r),n?.ENTRIESADDED&&e.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&e.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var Ndt=S(Fge=>{"use strict";Object.defineProperty(Fge,"__esModule",{value:!0});Fge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XTRIM"),e.pushKey(t),e.push(r),s?.strategyModifier&&e.push(s.strategyModifier),e.push(n.toString()),s?.LIMIT&&e.push("LIMIT",s.LIMIT.toString()),s?.policy&&e.push(s.policy)},transformReply:void 0}});var $ge=S(DL=>{"use strict";Object.defineProperty(DL,"__esModule",{value:!0});DL.pushMembers=void 0;var Ddt=We();DL.default={parseCommand(e,t,r,n){e.push("ZADD"),e.pushKey(t),n?.condition?e.push(n.condition):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.comparison?e.push(n.comparison):n?.LT?e.push("LT"):n?.GT&&e.push("GT"),n?.CH&&e.push("CH"),Pdt(e,r)},transformReply:Ddt.transformDoubleReply};function Pdt(e,t){if(Array.isArray(t))for(let r of t)Odt(e,r);else Odt(e,t)}DL.pushMembers=Pdt;function Odt(e,t){e.push((0,Ddt.transformDoubleArgument)(t.score),t.value)}});var Ldt=S(qge=>{"use strict";Object.defineProperty(qge,"__esModule",{value:!0});var XHr=$ge(),JHr=We();qge.default={parseCommand(e,t,r,n){e.push("ZADD"),e.pushKey(t),n?.condition&&e.push(n.condition),n?.comparison&&e.push(n.comparison),n?.CH&&e.push("CH"),e.push("INCR"),(0,XHr.pushMembers)(e,r)},transformReply:JHr.transformNullableDoubleReply}});var Mdt=S(Hge=>{"use strict";Object.defineProperty(Hge,"__esModule",{value:!0});Hge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZCARD"),e.pushKey(t)},transformReply:void 0}});var Bdt=S(Vge=>{"use strict";Object.defineProperty(Vge,"__esModule",{value:!0});var kdt=We();Vge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZCOUNT"),e.pushKey(t),e.push((0,kdt.transformStringDoubleArgument)(r),(0,kdt.transformStringDoubleArgument)(n))},transformReply:void 0}});var Kge=S(jge=>{"use strict";Object.defineProperty(jge,"__esModule",{value:!0});jge.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZDIFF"),e.pushKeysLength(t)},transformReply:void 0}});var Fdt=S(PL=>{"use strict";var ZHr=PL&&PL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PL,"__esModule",{value:!0});var eVr=We(),Udt=ZHr(Kge());PL.default={IS_READ_ONLY:Udt.default.IS_READ_ONLY,parseCommand(e,t){Udt.default.parseCommand(e,t),e.push("WITHSCORES")},transformReply:eVr.transformSortedSetReply}});var $dt=S(Gge=>{"use strict";Object.defineProperty(Gge,"__esModule",{value:!0});Gge.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZDIFFSTORE"),e.pushKey(t),e.pushKeysLength(r)},transformReply:void 0}});var Hdt=S(zge=>{"use strict";Object.defineProperty(zge,"__esModule",{value:!0});var qdt=We();zge.default={parseCommand(e,t,r,n){e.push("ZINCRBY"),e.pushKey(t),e.push((0,qdt.transformDoubleArgument)(r),n)},transformReply:qdt.transformDoubleReply}});var X9=S(LL=>{"use strict";Object.defineProperty(LL,"__esModule",{value:!0});LL.parseZInterArguments=void 0;var tVr=We();function Vdt(e,t,r){(0,tVr.parseZKeysArguments)(e,t),r?.AGGREGATE&&e.push("AGGREGATE",r.AGGREGATE)}LL.parseZInterArguments=Vdt;LL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZINTER"),Vdt(e,t,r)},transformReply:void 0}});var Kdt=S(ML=>{"use strict";var rVr=ML&&ML.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ML,"__esModule",{value:!0});var nVr=We(),jdt=rVr(X9());ML.default={IS_READ_ONLY:jdt.default.IS_READ_ONLY,parseCommand(...e){jdt.default.parseCommand(...e),e[0].push("WITHSCORES")},transformReply:nVr.transformSortedSetReply}});var Gdt=S(Yge=>{"use strict";Object.defineProperty(Yge,"__esModule",{value:!0});Yge.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZINTERCARD"),e.pushKeysLength(t),typeof r=="number"?e.push("LIMIT",r.toString()):r?.LIMIT&&e.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var zdt=S(Qge=>{"use strict";Object.defineProperty(Qge,"__esModule",{value:!0});var sVr=X9();Qge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZINTERSTORE"),e.pushKey(t),(0,sVr.parseZInterArguments)(e,r,n)},transformReply:void 0}});var Ydt=S(Wge=>{"use strict";Object.defineProperty(Wge,"__esModule",{value:!0});Wge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZLEXCOUNT"),e.pushKey(t),e.push(r),e.push(n)},transformReply:void 0}});var Qdt=S(Xge=>{"use strict";Object.defineProperty(Xge,"__esModule",{value:!0});var iVr=We();Xge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZMSCORE"),e.pushKey(t),e.pushVariadic(r)},transformReply:{2:(e,t,r)=>e.map((0,iVr.createTransformNullableDoubleReplyResp2Func)(t,r)),3:void 0}}});var Wdt=S(Jge=>{"use strict";Object.defineProperty(Jge,"__esModule",{value:!0});var aVr=We();Jge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZPOPMAX"),e.pushKey(t),e.push(r.toString())},transformReply:aVr.transformSortedSetReply}});var e_e=S(Zge=>{"use strict";Object.defineProperty(Zge,"__esModule",{value:!0});var oVr=We();Zge.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("ZPOPMAX"),e.pushKey(t)},transformReply:{2:(e,t,r)=>e.length===0?null:{value:e[0],score:oVr.transformDoubleReply[2](e[1],t,r)},3:e=>e.length===0?null:{value:e[0],score:e[1]}}}});var Xdt=S(t_e=>{"use strict";Object.defineProperty(t_e,"__esModule",{value:!0});var cVr=We();t_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZPOPMIN"),e.pushKey(t),e.push(r.toString())},transformReply:cVr.transformSortedSetReply}});var Jdt=S(kL=>{"use strict";var uVr=kL&&kL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kL,"__esModule",{value:!0});var lVr=uVr(e_e());kL.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("ZPOPMIN"),e.pushKey(t)},transformReply:lVr.default.transformReply}});var n_e=S(r_e=>{"use strict";Object.defineProperty(r_e,"__esModule",{value:!0});r_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZRANDMEMBER"),e.pushKey(t)},transformReply:void 0}});var s_e=S(BL=>{"use strict";var dVr=BL&&BL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BL,"__esModule",{value:!0});var Zdt=dVr(n_e());BL.default={IS_READ_ONLY:Zdt.default.IS_READ_ONLY,parseCommand(e,t,r){Zdt.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var tft=S(UL=>{"use strict";var fVr=UL&&UL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UL,"__esModule",{value:!0});var hVr=We(),eft=fVr(s_e());UL.default={IS_READ_ONLY:eft.default.IS_READ_ONLY,parseCommand(e,t,r){eft.default.parseCommand(e,t,r),e.push("WITHSCORES")},transformReply:hVr.transformSortedSetReply}});var i_e=S(FL=>{"use strict";Object.defineProperty(FL,"__esModule",{value:!0});FL.zRangeArgument=void 0;var rft=We();function nft(e,t,r){let n=[(0,rft.transformStringDoubleArgument)(e),(0,rft.transformStringDoubleArgument)(t)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}FL.zRangeArgument=nft;FL.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("ZRANGE"),e.pushKey(t),e.pushVariadic(nft(r,n,s))},transformReply:void 0}});var sft=S($L=>{"use strict";var pVr=$L&&$L.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($L,"__esModule",{value:!0});var mVr=We(),a_e=pVr(i_e());$L.default={CACHEABLE:a_e.default.CACHEABLE,IS_READ_ONLY:a_e.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];a_e.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:mVr.transformSortedSetReply}});var aft=S(o_e=>{"use strict";Object.defineProperty(o_e,"__esModule",{value:!0});var ift=We();o_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("ZRANGEBYLEX"),e.pushKey(t),e.push((0,ift.transformStringDoubleArgument)(r),(0,ift.transformStringDoubleArgument)(n)),s?.LIMIT&&e.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var u_e=S(c_e=>{"use strict";Object.defineProperty(c_e,"__esModule",{value:!0});var oft=We();c_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("ZRANGEBYSCORE"),e.pushKey(t),e.push((0,oft.transformStringDoubleArgument)(r),(0,oft.transformStringDoubleArgument)(n)),s?.LIMIT&&e.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var cft=S(qL=>{"use strict";var gVr=qL&&qL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qL,"__esModule",{value:!0});var _Vr=We(),l_e=gVr(u_e());qL.default={CACHEABLE:l_e.default.CACHEABLE,IS_READ_ONLY:l_e.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];l_e.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:_Vr.transformSortedSetReply}});var lft=S(d_e=>{"use strict";Object.defineProperty(d_e,"__esModule",{value:!0});var uft=We();d_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){switch(e.push("ZRANGESTORE"),e.pushKey(t),e.pushKey(r),e.push((0,uft.transformStringDoubleArgument)(n),(0,uft.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":e.push("BYSCORE");break;case"LEX":e.push("BYLEX");break}i?.REV&&e.push("REV"),i?.LIMIT&&e.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var fft=S(f_e=>{"use strict";Object.defineProperty(f_e,"__esModule",{value:!0});var dft=We();f_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYSCORE"),e.pushKey(t),e.push((0,dft.transformStringDoubleArgument)(r),(0,dft.transformStringDoubleArgument)(n))},transformReply:void 0}});var p_e=S(h_e=>{"use strict";Object.defineProperty(h_e,"__esModule",{value:!0});h_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZRANK"),e.pushKey(t),e.push(r)},transformReply:void 0}});var hft=S(HL=>{"use strict";var AVr=HL&&HL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HL,"__esModule",{value:!0});var m_e=AVr(p_e());HL.default={CACHEABLE:m_e.default.CACHEABLE,IS_READ_ONLY:m_e.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];m_e.default.parseCommand(...e),t.push("WITHSCORE")},transformReply:{2:e=>e===null?null:{rank:e[0],score:Number(e[1])},3:e=>e===null?null:{rank:e[0],score:e[1]}}}});var pft=S(g_e=>{"use strict";Object.defineProperty(g_e,"__esModule",{value:!0});g_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZREM"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var gft=S(__e=>{"use strict";Object.defineProperty(__e,"__esModule",{value:!0});var mft=We();__e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYLEX"),e.pushKey(t),e.push((0,mft.transformStringDoubleArgument)(r),(0,mft.transformStringDoubleArgument)(n))},transformReply:void 0}});var _ft=S(A_e=>{"use strict";Object.defineProperty(A_e,"__esModule",{value:!0});A_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYRANK"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Aft=S(E_e=>{"use strict";Object.defineProperty(E_e,"__esModule",{value:!0});E_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZREVRANK"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Eft=S(y_e=>{"use strict";Object.defineProperty(y_e,"__esModule",{value:!0});var EVr=fL(),yVr=We();y_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZSCAN"),e.pushKey(t),(0,EVr.parseScanArguments)(e,r,n)},transformReply([e,t]){return{cursor:e,members:yVr.transformSortedSetReply[2](t)}}}});var yft=S(v_e=>{"use strict";Object.defineProperty(v_e,"__esModule",{value:!0});var vVr=We();v_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZSCORE"),e.pushKey(t),e.push(r)},transformReply:vVr.transformNullableDoubleReply}});var T_e=S(S_e=>{"use strict";Object.defineProperty(S_e,"__esModule",{value:!0});var SVr=We();S_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZUNION"),(0,SVr.parseZKeysArguments)(e,t),r?.AGGREGATE&&e.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var Sft=S(VL=>{"use strict";var TVr=VL&&VL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VL,"__esModule",{value:!0});var bVr=We(),vft=TVr(T_e());VL.default={IS_READ_ONLY:vft.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];vft.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:bVr.transformSortedSetReply}});var Tft=S(b_e=>{"use strict";Object.defineProperty(b_e,"__esModule",{value:!0});var IVr=We();b_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZUNIONSTORE"),e.pushKey(t),(0,IVr.parseZKeysArguments)(e,r),n?.AGGREGATE&&e.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var Ift=S(I_e=>{"use strict";Object.defineProperty(I_e,"__esModule",{value:!0});var bft=We();I_e.default={parseCommand(e,t,r,n,s){e.push("VADD"),e.pushKey(t),s?.REDUCE!==void 0&&e.push("REDUCE",s.REDUCE.toString()),e.push("VALUES",r.length.toString());for(let i of r)e.push((0,bft.transformDoubleArgument)(i));e.push(n),s?.CAS&&e.push("CAS"),s?.QUANT&&e.push(s.QUANT),s?.EF!==void 0&&e.push("EF",s.EF.toString()),s?.SETATTR&&e.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&e.push("M",s.M.toString())},transformReply:bft.transformBooleanReply}});var Rft=S(R_e=>{"use strict";Object.defineProperty(R_e,"__esModule",{value:!0});R_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VCARD"),e.pushKey(t)},transformReply:void 0}});var Cft=S(C_e=>{"use strict";Object.defineProperty(C_e,"__esModule",{value:!0});C_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VDIM"),e.pushKey(t)},transformReply:void 0}});var w_e=S(x_e=>{"use strict";Object.defineProperty(x_e,"__esModule",{value:!0});var RVr=We();x_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VEMB"),e.pushKey(t),e.push(r)},transformReply:RVr.transformDoubleArrayReply}});var wft=S(jL=>{"use strict";var CVr=jL&&jL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jL,"__esModule",{value:!0});var xft=We(),xVr=CVr(w_e()),wVr={2:e=>({quantization:e[0],raw:e[1],l2Norm:xft.transformDoubleReply[2](e[2]),...e[3]!==void 0&&{quantizationRange:xft.transformDoubleReply[2](e[3])}}),3:e=>({quantization:e[0],raw:e[1],l2Norm:e[2],quantizationRange:e[3]})};jL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){xVr.default.parseCommand(e,t,r),e.push("RAW")},transformReply:wVr}});var Nft=S(N_e=>{"use strict";Object.defineProperty(N_e,"__esModule",{value:!0});var NVr=We();N_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VGETATTR"),e.pushKey(t),e.push(r)},transformReply:NVr.transformRedisJsonNullReply}});var Oft=S(O_e=>{"use strict";Object.defineProperty(O_e,"__esModule",{value:!0});O_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VINFO"),e.pushKey(t)},transformReply:{2:e=>{let t=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(D_e,"__esModule",{value:!0});D_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VLINKS"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Pft=S(KL=>{"use strict";var OVr=KL&&KL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KL,"__esModule",{value:!0});var DVr=We(),Dft=OVr(P_e());function PVr(e){let t=[];for(let r of e){let n=Object.create(null);for(let s=0;s{"use strict";Object.defineProperty(L_e,"__esModule",{value:!0});L_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VRANDMEMBER"),e.pushKey(t),r!==void 0&&e.push(r.toString())},transformReply:void 0}});var Mft=S(M_e=>{"use strict";Object.defineProperty(M_e,"__esModule",{value:!0});M_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("VRANGE"),e.pushKey(t),e.push(r,n),s!==void 0&&e.push(s.toString())},transformReply:void 0}});var kft=S(k_e=>{"use strict";Object.defineProperty(k_e,"__esModule",{value:!0});var LVr=We();k_e.default={parseCommand(e,t,r){e.push("VREM"),e.pushKey(t),e.push(r)},transformReply:LVr.transformBooleanReply}});var Bft=S(B_e=>{"use strict";Object.defineProperty(B_e,"__esModule",{value:!0});var MVr=We();B_e.default={parseCommand(e,t,r,n){e.push("VSETATTR"),e.pushKey(t),e.push(r),typeof n=="object"&&n!==null?e.push(JSON.stringify(n)):e.push(n)},transformReply:MVr.transformBooleanReply}});var F_e=S(U_e=>{"use strict";Object.defineProperty(U_e,"__esModule",{value:!0});var kVr=We();U_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){if(e.push("VSIM"),e.pushKey(t),Array.isArray(r)){e.push("VALUES",r.length.toString());for(let s of r)e.push((0,kVr.transformDoubleArgument)(s))}else e.push("ELE",r);n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&e.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&e.push("EF",n.EF.toString()),n?.FILTER&&e.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&e.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&e.push("TRUTH"),n?.NOTHREAD&&e.push("NOTHREAD")},transformReply:void 0}});var Fft=S(GL=>{"use strict";var BVr=GL&&GL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GL,"__esModule",{value:!0});var UVr=We(),Uft=BVr(F_e());GL.default={IS_READ_ONLY:Uft.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Uft.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:{2:e=>{let t=e,r={};for(let n=0;n{"use strict";Object.defineProperty($_e,"__esModule",{value:!0});var FVr=We(),$Vr=e=>e;$_e.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(e,...t){let r=["LATENCY","HISTOGRAM"];t.length!==0&&r.push(...t),e.push(...r)},transformReply:{2:e=>{let t={};if(e.length===0)return t;for(let r=1;r{"use strict";var qVr=pi&&pi.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),HVr=pi&&pi.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),zL=pi&&pi.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&qVr(t,e,r);return HVr(t,e),t},re=pi&&pi.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pi,"__esModule",{value:!0});pi.NON_STICKY_COMMANDS=pi.REDIS_FLUSH_MODES=pi.COMMAND_LIST_FILTER_BY=pi.CLUSTER_SLOT_STATES=pi.FAILOVER_MODES=pi.CLIENT_KILL_FILTERS=void 0;var qft=re(pit()),Hft=re(mit()),Vft=re(git()),jft=re(_it()),Kft=re(Ait()),Gft=re(Eit()),zft=re(yit()),Yft=re(xit()),Qft=re(Lfe()),Wft=re(wit()),Xft=re(Nit()),Jft=re(Oit()),Zft=re(Dit()),e0t=re(Pit()),t0t=re($fe()),r0t=re(Lit()),n0t=re(Mit()),s0t=re(kit()),i0t=re(Bit()),a0t=re(Uit()),o0t=re(Fit()),c0t=re($it()),u0t=re(qit()),l0t=re(Hit()),d0t=re(Kit()),f0t=re(Jfe()),h0t=re(Git()),p0t=re(zit()),m0t=re(Xit()),g0t=re(r0e()),_0t=re(Zit()),A0t=re(eat()),E0t=re(tat()),y0t=re(rat()),v0t=re(nat()),S0t=re(c0e()),q_e=zL(iat());Object.defineProperty(pi,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return q_e.CLIENT_KILL_FILTERS}});var T0t=re(aat()),b0t=re(oat()),I0t=re(cat()),R0t=re(uat()),C0t=re(lat()),x0t=re(dat()),w0t=re(fat()),N0t=re(hat()),O0t=re(pat()),D0t=re(mat()),P0t=re(gat()),L0t=re(_at()),M0t=re(Aat()),k0t=re(Eat()),B0t=re(yat()),H_e=zL(vat());Object.defineProperty(pi,"FAILOVER_MODES",{enumerable:!0,get:function(){return H_e.FAILOVER_MODES}});var U0t=re(Sat()),F0t=re(Tat()),$0t=re(bat()),q0t=re(Iat()),H0t=re(Rat()),V0t=re(Cat()),j0t=re(xat()),K0t=re(wat()),G0t=re(Nat()),z0t=re(Oat()),Y0t=re(Dat()),Q0t=re(Pat()),W0t=re(Lat()),X0t=re(Mat()),J0t=re(kat()),V_e=zL(Bat());Object.defineProperty(pi,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return V_e.CLUSTER_SLOT_STATES}});var Z0t=re(Fat()),eht=re($at()),tht=re(qat()),rht=re(Hat()),nht=re(Vat()),j_e=zL(jat());Object.defineProperty(pi,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return j_e.COMMAND_LIST_FILTER_BY}});var sht=re(Kat()),iht=re(Gat()),aht=re(zat()),oht=re(Yat()),cht=re(Qat()),uht=re(Wat()),lht=re(Xat()),dht=re(Jat()),fht=re(Zat()),hht=re(eot()),pht=re(tot()),mht=re(rot()),ght=re(not()),_ht=re(sot()),Aht=re(oot()),Eht=re(TS()),yht=re(uot()),vht=re(dot()),Sht=re(hot()),Tht=re(pot()),bht=re(mot()),Iht=re(got()),Rht=re(Tot()),Cht=re(Iot()),xht=re(Cot()),wht=re(z9()),Nht=re(nL()),Oht=re(Dot()),Dht=re(Lot()),Pht=re(kot()),Lht=re(ahe()),Mht=re(oL()),kht=re(sL()),Bht=re(IS()),Uht=re(Bot()),Fht=re(Uot()),$ht=re(Fot()),qht=re($ot()),Hht=re(qot()),Vht=re(Hot()),jht=re(Vot()),Kht=re(jot()),Ght=re(Kot()),zht=re(Got()),Yht=re(zot()),K_e=zL(Yot());Object.defineProperty(pi,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return K_e.REDIS_FLUSH_MODES}});var Qht=re(Qot()),Wht=re(Xot()),Xht=re(Zot()),Jht=re(ect()),Zht=re(tct()),ept=re(rct()),tpt=re(nct()),rpt=re(sct()),npt=re(Ihe()),spt=re(ict()),ipt=re(act()),apt=re(oct()),opt=re(cct()),cpt=re(Dhe()),upt=re(uct()),lpt=re(lct()),dpt=re(dct()),fpt=re(fct()),hpt=re(hct()),ppt=re(pct()),mpt=re(mct()),gpt=re(gct()),_pt=re(_ct()),Apt=re(Act()),Ept=re(Ect()),ypt=re(yct()),vpt=re(vct()),Spt=re(Sct()),Tpt=re(Tct()),bpt=re(bct()),Ipt=re(Ict()),Rpt=re(Rct()),Cpt=re(Cct()),xpt=re(xct()),wpt=re(wct()),Npt=re(Zhe()),Opt=re(Oct()),Dpt=re(Pct()),Ppt=re(Mct()),Lpt=re(kct()),Mpt=re(Bct()),kpt=re(Uct()),Bpt=re(Fct()),Upt=re(qct()),Fpt=re(Hct()),$pt=re(Vct()),qpt=re(jct()),Hpt=re(Kct()),Vpt=re(Gct()),jpt=re(zct()),Kpt=re(Yct()),Gpt=re(Qct()),zpt=re(Wct()),Ypt=re(Xct()),Qpt=re(gpe()),Wpt=re(Jct()),Xpt=re(Zct()),Jpt=re(eut()),Zpt=re(nut()),emt=re(ype()),tmt=re(iut()),rmt=re(Y9()),nmt=re(aut()),smt=re(out()),imt=re(cut()),amt=re(uut()),omt=re(Wfe()),VVr=re(lut()),cmt=re(dut()),umt=re(Cpe()),lmt=re(fut()),dmt=re(wpe()),fmt=re(hut()),hmt=re(put()),pmt=re(mut()),mmt=re(gut()),gmt=re(_ut()),_mt=re(Aut()),Amt=re(Eut()),Emt=re(yut()),ymt=re(vut()),vmt=re(Sut()),Smt=re(Tut()),Tmt=re(but()),bmt=re(Iut()),Imt=re(Rut()),Rmt=re(Cut()),Cmt=re(xut()),xmt=re(wut()),wmt=re(Ype()),Nmt=re(Put()),Omt=re(Lut()),Dmt=re(Mut()),Pmt=re(kut()),Lmt=re(But()),Mmt=re(Uut()),kmt=re(Fut()),Bmt=re($ut()),Umt=re(qut()),Fmt=re(Hut()),$mt=re(Vut()),qmt=re(jut()),Hmt=re(Kut()),Vmt=re(Gut()),jmt=re(zut()),Kmt=re(Yut()),Gmt=re(Qut()),zmt=re(Wut()),Ymt=re(Xut()),Qmt=re(Jut()),Wmt=re(Zut()),Xmt=re(elt()),Jmt=re(tlt()),Zmt=re(rlt()),egt=re(nlt()),tgt=re(slt()),rgt=re(ilt()),ngt=re(alt()),sgt=re(olt()),igt=re(clt()),agt=re(ult()),ogt=re(llt()),cgt=re(dlt()),ugt=re(flt()),lgt=re(hlt()),dgt=re(plt()),fgt=re(fL()),hgt=re(mlt()),pgt=re(glt()),mgt=re(_lt()),ggt=re(Alt()),_gt=re(Elt()),Agt=re(ylt()),Egt=re(vlt()),ygt=re(Slt()),vgt=re(Tlt()),Sgt=re(blt()),Tgt=re(Ilt()),bgt=re(Rlt()),Igt=re(Clt()),Rgt=re(xlt()),Cgt=re(wlt()),xgt=re(Nlt()),wgt=re(Olt()),Ngt=re(Dlt()),Ogt=re(Plt()),Dgt=re(Llt()),Pgt=re(Blt()),Lgt=re(Ult()),Mgt=re(Q9()),kgt=re(Flt()),Bgt=re($lt()),Ugt=re(qlt()),Fgt=re(Vlt()),$gt=re(ege()),qgt=re(jlt()),Hgt=re(Klt()),Vgt=re(Glt()),jgt=re(zlt()),Kgt=re(Ylt()),Ggt=re(Qlt()),zgt=re(Wlt()),Ygt=re(Xlt()),Qgt=re(Jlt()),Wgt=re(Zlt()),Xgt=re(edt()),Jgt=re(tdt()),Zgt=re(rdt()),e_t=re(ndt()),t_t=re(idt()),r_t=re(mge()),n_t=re(odt()),s_t=re(Age()),i_t=re(udt()),a_t=re(yge()),o_t=re(ldt()),c_t=re(ddt()),u_t=re(fdt()),l_t=re(hdt()),d_t=re(pdt()),f_t=re(mdt()),h_t=re(gdt()),p_t=re(_dt()),m_t=re(Adt()),g_t=re(Edt()),__t=re(vdt()),A_t=re(Sdt()),E_t=re(Tdt()),y_t=re(bdt()),v_t=re(Mge()),S_t=re(kge()),T_t=re(Cdt()),b_t=re(xdt()),I_t=re(wdt()),R_t=re(Ndt()),C_t=re(Ldt()),x_t=re($ge()),w_t=re(Mdt()),N_t=re(Bdt()),O_t=re(Fdt()),D_t=re(Kge()),P_t=re($dt()),L_t=re(Hdt()),M_t=re(Kdt()),k_t=re(X9()),B_t=re(Gdt()),U_t=re(zdt()),F_t=re(Ydt()),$_t=re(e0e()),q_t=re(Qdt()),H_t=re(Wdt()),V_t=re(e_e()),j_t=re(Xdt()),K_t=re(Jdt()),G_t=re(tft()),z_t=re(s_e()),Y_t=re(n_e()),Q_t=re(sft()),W_t=re(i_e()),X_t=re(aft()),J_t=re(cft()),Z_t=re(u_e()),eAt=re(lft()),tAt=re(fft()),rAt=re(hft()),nAt=re(p_e()),sAt=re(pft()),iAt=re(gft()),aAt=re(_ft()),oAt=re(Aft()),cAt=re(Eft()),uAt=re(yft()),lAt=re(Sft()),dAt=re(T_e()),fAt=re(Tft()),hAt=re(Ift()),pAt=re(Rft()),mAt=re(Cft()),gAt=re(w_e()),_At=re(wft()),AAt=re(Nft()),EAt=re(Oft()),yAt=re(P_e()),vAt=re(Pft()),SAt=re(Lft()),TAt=re(Mft()),bAt=re(kft()),IAt=re(Bft()),RAt=re(F_e()),CAt=re(Fft()),xAt=re($ft());pi.default={ACL_CAT:qft.default,aclCat:qft.default,ACL_DELUSER:Hft.default,aclDelUser:Hft.default,ACL_DRYRUN:Vft.default,aclDryRun:Vft.default,ACL_GENPASS:jft.default,aclGenPass:jft.default,ACL_GETUSER:Kft.default,aclGetUser:Kft.default,ACL_LIST:Gft.default,aclList:Gft.default,ACL_LOAD:zft.default,aclLoad:zft.default,ACL_LOG_RESET:Yft.default,aclLogReset:Yft.default,ACL_LOG:Qft.default,aclLog:Qft.default,ACL_SAVE:Wft.default,aclSave:Wft.default,ACL_SETUSER:Xft.default,aclSetUser:Xft.default,ACL_USERS:Jft.default,aclUsers:Jft.default,ACL_WHOAMI:Zft.default,aclWhoAmI:Zft.default,APPEND:e0t.default,append:e0t.default,ASKING:t0t.default,asking:t0t.default,AUTH:r0t.default,auth:r0t.default,BGREWRITEAOF:n0t.default,bgRewriteAof:n0t.default,BGSAVE:s0t.default,bgSave:s0t.default,BITCOUNT:i0t.default,bitCount:i0t.default,BITFIELD_RO:a0t.default,bitFieldRo:a0t.default,BITFIELD:o0t.default,bitField:o0t.default,BITOP:c0t.default,bitOp:c0t.default,BITPOS:u0t.default,bitPos:u0t.default,BLMOVE:l0t.default,blMove:l0t.default,BLMPOP:d0t.default,blmPop:d0t.default,BLPOP:f0t.default,blPop:f0t.default,BRPOP:h0t.default,brPop:h0t.default,BRPOPLPUSH:p0t.default,brPopLPush:p0t.default,BZMPOP:m0t.default,bzmPop:m0t.default,BZPOPMAX:g0t.default,bzPopMax:g0t.default,BZPOPMIN:_0t.default,bzPopMin:_0t.default,CLIENT_CACHING:A0t.default,clientCaching:A0t.default,CLIENT_GETNAME:E0t.default,clientGetName:E0t.default,CLIENT_GETREDIR:y0t.default,clientGetRedir:y0t.default,CLIENT_ID:v0t.default,clientId:v0t.default,CLIENT_INFO:S0t.default,clientInfo:S0t.default,CLIENT_KILL:q_e.default,clientKill:q_e.default,CLIENT_LIST:T0t.default,clientList:T0t.default,"CLIENT_NO-EVICT":b0t.default,clientNoEvict:b0t.default,"CLIENT_NO-TOUCH":I0t.default,clientNoTouch:I0t.default,CLIENT_PAUSE:R0t.default,clientPause:R0t.default,CLIENT_SETNAME:C0t.default,clientSetName:C0t.default,CLIENT_TRACKING:x0t.default,clientTracking:x0t.default,CLIENT_TRACKINGINFO:w0t.default,clientTrackingInfo:w0t.default,CLIENT_UNPAUSE:N0t.default,clientUnpause:N0t.default,CLUSTER_ADDSLOTS:O0t.default,clusterAddSlots:O0t.default,CLUSTER_ADDSLOTSRANGE:D0t.default,clusterAddSlotsRange:D0t.default,CLUSTER_BUMPEPOCH:P0t.default,clusterBumpEpoch:P0t.default,"CLUSTER_COUNT-FAILURE-REPORTS":L0t.default,clusterCountFailureReports:L0t.default,CLUSTER_COUNTKEYSINSLOT:M0t.default,clusterCountKeysInSlot:M0t.default,CLUSTER_DELSLOTS:k0t.default,clusterDelSlots:k0t.default,CLUSTER_DELSLOTSRANGE:B0t.default,clusterDelSlotsRange:B0t.default,CLUSTER_FAILOVER:H_e.default,clusterFailover:H_e.default,CLUSTER_FLUSHSLOTS:U0t.default,clusterFlushSlots:U0t.default,CLUSTER_FORGET:F0t.default,clusterForget:F0t.default,CLUSTER_GETKEYSINSLOT:$0t.default,clusterGetKeysInSlot:$0t.default,CLUSTER_INFO:q0t.default,clusterInfo:q0t.default,CLUSTER_KEYSLOT:H0t.default,clusterKeySlot:H0t.default,CLUSTER_LINKS:V0t.default,clusterLinks:V0t.default,CLUSTER_MEET:j0t.default,clusterMeet:j0t.default,CLUSTER_MYID:K0t.default,clusterMyId:K0t.default,CLUSTER_MYSHARDID:G0t.default,clusterMyShardId:G0t.default,CLUSTER_NODES:z0t.default,clusterNodes:z0t.default,CLUSTER_REPLICAS:Y0t.default,clusterReplicas:Y0t.default,CLUSTER_REPLICATE:Q0t.default,clusterReplicate:Q0t.default,CLUSTER_RESET:W0t.default,clusterReset:W0t.default,CLUSTER_SAVECONFIG:X0t.default,clusterSaveConfig:X0t.default,"CLUSTER_SET-CONFIG-EPOCH":J0t.default,clusterSetConfigEpoch:J0t.default,CLUSTER_SETSLOT:V_e.default,clusterSetSlot:V_e.default,CLUSTER_SLOTS:Z0t.default,clusterSlots:Z0t.default,COMMAND_COUNT:eht.default,commandCount:eht.default,COMMAND_GETKEYS:tht.default,commandGetKeys:tht.default,COMMAND_GETKEYSANDFLAGS:rht.default,commandGetKeysAndFlags:rht.default,COMMAND_INFO:nht.default,commandInfo:nht.default,COMMAND_LIST:j_e.default,commandList:j_e.default,COMMAND:sht.default,command:sht.default,CONFIG_GET:iht.default,configGet:iht.default,CONFIG_RESETASTAT:aht.default,configResetStat:aht.default,CONFIG_REWRITE:oht.default,configRewrite:oht.default,CONFIG_SET:cht.default,configSet:cht.default,COPY:uht.default,copy:uht.default,DBSIZE:lht.default,dbSize:lht.default,DECR:dht.default,decr:dht.default,DECRBY:fht.default,decrBy:fht.default,DEL:hht.default,del:hht.default,DELEX:pht.default,delEx:pht.default,DIGEST:mht.default,digest:mht.default,DUMP:ght.default,dump:ght.default,ECHO:_ht.default,echo:_ht.default,EVAL_RO:Aht.default,evalRo:Aht.default,EVAL:Eht.default,eval:Eht.default,EVALSHA_RO:yht.default,evalShaRo:yht.default,EVALSHA:vht.default,evalSha:vht.default,EXISTS:Kht.default,exists:Kht.default,EXPIRE:Ght.default,expire:Ght.default,EXPIREAT:zht.default,expireAt:zht.default,EXPIRETIME:Yht.default,expireTime:Yht.default,FLUSHALL:K_e.default,flushAll:K_e.default,FLUSHDB:Qht.default,flushDb:Qht.default,FCALL:Wht.default,fCall:Wht.default,FCALL_RO:Xht.default,fCallRo:Xht.default,FUNCTION_DELETE:Jht.default,functionDelete:Jht.default,FUNCTION_DUMP:Zht.default,functionDump:Zht.default,FUNCTION_FLUSH:ept.default,functionFlush:ept.default,FUNCTION_KILL:tpt.default,functionKill:tpt.default,FUNCTION_LIST_WITHCODE:rpt.default,functionListWithCode:rpt.default,FUNCTION_LIST:npt.default,functionList:npt.default,FUNCTION_LOAD:spt.default,functionLoad:spt.default,FUNCTION_RESTORE:ipt.default,functionRestore:ipt.default,FUNCTION_STATS:apt.default,functionStats:apt.default,GEOADD:Sht.default,geoAdd:Sht.default,GEODIST:Tht.default,geoDist:Tht.default,GEOHASH:bht.default,geoHash:bht.default,GEOPOS:Iht.default,geoPos:Iht.default,GEORADIUS_RO_WITH:Rht.default,geoRadiusRoWith:Rht.default,GEORADIUS_RO:Cht.default,geoRadiusRo:Cht.default,GEORADIUS_STORE:xht.default,geoRadiusStore:xht.default,GEORADIUS_WITH:wht.default,geoRadiusWith:wht.default,GEORADIUS:Nht.default,geoRadius:Nht.default,GEORADIUSBYMEMBER_RO_WITH:Oht.default,geoRadiusByMemberRoWith:Oht.default,GEORADIUSBYMEMBER_RO:Dht.default,geoRadiusByMemberRo:Dht.default,GEORADIUSBYMEMBER_STORE:Pht.default,geoRadiusByMemberStore:Pht.default,GEORADIUSBYMEMBER_WITH:Lht.default,geoRadiusByMemberWith:Lht.default,GEORADIUSBYMEMBER:Mht.default,geoRadiusByMember:Mht.default,GEOSEARCH_WITH:kht.default,geoSearchWith:kht.default,GEOSEARCH:Bht.default,geoSearch:Bht.default,GEOSEARCHSTORE:Uht.default,geoSearchStore:Uht.default,GET:Fht.default,get:Fht.default,GETBIT:$ht.default,getBit:$ht.default,GETDEL:qht.default,getDel:qht.default,GETEX:Hht.default,getEx:Hht.default,GETRANGE:Vht.default,getRange:Vht.default,GETSET:jht.default,getSet:jht.default,HDEL:opt.default,hDel:opt.default,HELLO:cpt.default,hello:cpt.default,HEXISTS:upt.default,hExists:upt.default,HEXPIRE:lpt.default,hExpire:lpt.default,HEXPIREAT:dpt.default,hExpireAt:dpt.default,HEXPIRETIME:fpt.default,hExpireTime:fpt.default,HGET:hpt.default,hGet:hpt.default,HGETALL:ppt.default,hGetAll:ppt.default,HGETDEL:mpt.default,hGetDel:mpt.default,HGETEX:gpt.default,hGetEx:gpt.default,HINCRBY:_pt.default,hIncrBy:_pt.default,HINCRBYFLOAT:Apt.default,hIncrByFloat:Apt.default,HKEYS:Ept.default,hKeys:Ept.default,HLEN:ypt.default,hLen:ypt.default,HMGET:vpt.default,hmGet:vpt.default,HPERSIST:Spt.default,hPersist:Spt.default,HPEXPIRE:Tpt.default,hpExpire:Tpt.default,HPEXPIREAT:bpt.default,hpExpireAt:bpt.default,HPEXPIRETIME:Ipt.default,hpExpireTime:Ipt.default,HPTTL:Rpt.default,hpTTL:Rpt.default,HRANDFIELD_COUNT_WITHVALUES:Cpt.default,hRandFieldCountWithValues:Cpt.default,HRANDFIELD_COUNT:xpt.default,hRandFieldCount:xpt.default,HRANDFIELD:wpt.default,hRandField:wpt.default,HSCAN:Npt.default,hScan:Npt.default,HSCAN_NOVALUES:Opt.default,hScanNoValues:Opt.default,HSET:Dpt.default,hSet:Dpt.default,HSETEX:Ppt.default,hSetEx:Ppt.default,HSETNX:Lpt.default,hSetNX:Lpt.default,HSTRLEN:Mpt.default,hStrLen:Mpt.default,HTTL:kpt.default,hTTL:kpt.default,HVALS:Bpt.default,hVals:Bpt.default,HOTKEYS_GET:Upt.default,hotkeysGet:Upt.default,HOTKEYS_RESET:Fpt.default,hotkeysReset:Fpt.default,HOTKEYS_START:$pt.default,hotkeysStart:$pt.default,HOTKEYS_STOP:qpt.default,hotkeysStop:qpt.default,INCR:Hpt.default,incr:Hpt.default,INCRBY:Vpt.default,incrBy:Vpt.default,INCRBYFLOAT:jpt.default,incrByFloat:jpt.default,INFO:Kpt.default,info:Kpt.default,KEYS:Gpt.default,keys:Gpt.default,LASTSAVE:zpt.default,lastSave:zpt.default,LATENCY_DOCTOR:Ypt.default,latencyDoctor:Ypt.default,LATENCY_GRAPH:Qpt.default,latencyGraph:Qpt.default,LATENCY_HISTORY:Wpt.default,latencyHistory:Wpt.default,LATENCY_HISTOGRAM:xAt.default,latencyHistogram:xAt.default,LATENCY_LATEST:Xpt.default,latencyLatest:Xpt.default,LATENCY_RESET:Jpt.default,latencyReset:Jpt.default,LCS_IDX_WITHMATCHLEN:Zpt.default,lcsIdxWithMatchLen:Zpt.default,LCS_IDX:emt.default,lcsIdx:emt.default,LCS_LEN:tmt.default,lcsLen:tmt.default,LCS:rmt.default,lcs:rmt.default,LINDEX:nmt.default,lIndex:nmt.default,LINSERT:smt.default,lInsert:smt.default,LLEN:imt.default,lLen:imt.default,LMOVE:amt.default,lMove:amt.default,LMPOP:omt.default,lmPop:omt.default,LOLWUT:VVr.default,LPOP_COUNT:cmt.default,lPopCount:cmt.default,LPOP:umt.default,lPop:umt.default,LPOS_COUNT:lmt.default,lPosCount:lmt.default,LPOS:dmt.default,lPos:dmt.default,LPUSH:fmt.default,lPush:fmt.default,LPUSHX:hmt.default,lPushX:hmt.default,LRANGE:pmt.default,lRange:pmt.default,LREM:mmt.default,lRem:mmt.default,LSET:gmt.default,lSet:gmt.default,LTRIM:_mt.default,lTrim:_mt.default,MEMORY_DOCTOR:Amt.default,memoryDoctor:Amt.default,"MEMORY_MALLOC-STATS":Emt.default,memoryMallocStats:Emt.default,MEMORY_PURGE:ymt.default,memoryPurge:ymt.default,MEMORY_STATS:vmt.default,memoryStats:vmt.default,MEMORY_USAGE:Smt.default,memoryUsage:Smt.default,MGET:Tmt.default,mGet:Tmt.default,MIGRATE:bmt.default,migrate:bmt.default,MODULE_LIST:Imt.default,moduleList:Imt.default,MODULE_LOAD:Rmt.default,moduleLoad:Rmt.default,MODULE_UNLOAD:Cmt.default,moduleUnload:Cmt.default,MOVE:xmt.default,move:xmt.default,MSET:wmt.default,mSet:wmt.default,MSETEX:Nmt.default,mSetEx:Nmt.default,MSETNX:Omt.default,mSetNX:Omt.default,OBJECT_ENCODING:Dmt.default,objectEncoding:Dmt.default,OBJECT_FREQ:Pmt.default,objectFreq:Pmt.default,OBJECT_IDLETIME:Lmt.default,objectIdleTime:Lmt.default,OBJECT_REFCOUNT:Mmt.default,objectRefCount:Mmt.default,PERSIST:kmt.default,persist:kmt.default,PEXPIRE:Bmt.default,pExpire:Bmt.default,PEXPIREAT:Umt.default,pExpireAt:Umt.default,PEXPIRETIME:Fmt.default,pExpireTime:Fmt.default,PFADD:$mt.default,pfAdd:$mt.default,PFCOUNT:qmt.default,pfCount:qmt.default,PFMERGE:Hmt.default,pfMerge:Hmt.default,PING:Vmt.default,ping:Vmt.default,PSETEX:jmt.default,pSetEx:jmt.default,PTTL:Kmt.default,pTTL:Kmt.default,PUBLISH:Gmt.default,publish:Gmt.default,PUBSUB_CHANNELS:zmt.default,pubSubChannels:zmt.default,PUBSUB_NUMPAT:Ymt.default,pubSubNumPat:Ymt.default,PUBSUB_NUMSUB:Qmt.default,pubSubNumSub:Qmt.default,PUBSUB_SHARDNUMSUB:Wmt.default,pubSubShardNumSub:Wmt.default,PUBSUB_SHARDCHANNELS:Xmt.default,pubSubShardChannels:Xmt.default,RANDOMKEY:Jmt.default,randomKey:Jmt.default,READONLY:Zmt.default,readonly:Zmt.default,RENAME:egt.default,rename:egt.default,RENAMENX:tgt.default,renameNX:tgt.default,REPLICAOF:rgt.default,replicaOf:rgt.default,"RESTORE-ASKING":ngt.default,restoreAsking:ngt.default,RESTORE:sgt.default,restore:sgt.default,RPOP_COUNT:agt.default,rPopCount:agt.default,ROLE:igt.default,role:igt.default,RPOP:ogt.default,rPop:ogt.default,RPOPLPUSH:cgt.default,rPopLPush:cgt.default,RPUSH:ugt.default,rPush:ugt.default,RPUSHX:lgt.default,rPushX:lgt.default,SADD:dgt.default,sAdd:dgt.default,SCAN:fgt.default,scan:fgt.default,SCARD:hgt.default,sCard:hgt.default,SCRIPT_DEBUG:pgt.default,scriptDebug:pgt.default,SCRIPT_EXISTS:mgt.default,scriptExists:mgt.default,SCRIPT_FLUSH:ggt.default,scriptFlush:ggt.default,SCRIPT_KILL:_gt.default,scriptKill:_gt.default,SCRIPT_LOAD:Agt.default,scriptLoad:Agt.default,SDIFF:Egt.default,sDiff:Egt.default,SDIFFSTORE:ygt.default,sDiffStore:ygt.default,SET:vgt.default,set:vgt.default,SETBIT:Sgt.default,setBit:Sgt.default,SETEX:Tgt.default,setEx:Tgt.default,SETNX:bgt.default,setNX:bgt.default,SETRANGE:Igt.default,setRange:Igt.default,SINTER:Rgt.default,sInter:Rgt.default,SINTERCARD:Cgt.default,sInterCard:Cgt.default,SINTERSTORE:xgt.default,sInterStore:xgt.default,SISMEMBER:wgt.default,sIsMember:wgt.default,SMEMBERS:Ngt.default,sMembers:Ngt.default,SMISMEMBER:Ogt.default,smIsMember:Ogt.default,SMOVE:Dgt.default,sMove:Dgt.default,SORT_RO:Pgt.default,sortRo:Pgt.default,SORT_STORE:Lgt.default,sortStore:Lgt.default,SORT:Mgt.default,sort:Mgt.default,SPOP_COUNT:kgt.default,sPopCount:kgt.default,SPOP:Bgt.default,sPop:Bgt.default,SPUBLISH:Ugt.default,sPublish:Ugt.default,SRANDMEMBER_COUNT:Fgt.default,sRandMemberCount:Fgt.default,SRANDMEMBER:$gt.default,sRandMember:$gt.default,SREM:qgt.default,sRem:qgt.default,SSCAN:Hgt.default,sScan:Hgt.default,STRLEN:Vgt.default,strLen:Vgt.default,SUNION:jgt.default,sUnion:jgt.default,SUNIONSTORE:Kgt.default,sUnionStore:Kgt.default,SWAPDB:Ggt.default,swapDb:Ggt.default,TIME:zgt.default,time:zgt.default,TOUCH:Ygt.default,touch:Ygt.default,TTL:Qgt.default,ttl:Qgt.default,TYPE:Wgt.default,type:Wgt.default,UNLINK:Xgt.default,unlink:Xgt.default,WAIT:Jgt.default,wait:Jgt.default,XACK:Zgt.default,xAck:Zgt.default,XACKDEL:e_t.default,xAckDel:e_t.default,XADD_NOMKSTREAM:t_t.default,xAddNoMkStream:t_t.default,XADD:r_t.default,xAdd:r_t.default,XAUTOCLAIM_JUSTID:n_t.default,xAutoClaimJustId:n_t.default,XAUTOCLAIM:s_t.default,xAutoClaim:s_t.default,XCLAIM_JUSTID:i_t.default,xClaimJustId:i_t.default,XCLAIM:a_t.default,xClaim:a_t.default,XCFGSET:o_t.default,xCfgSet:o_t.default,XDEL:c_t.default,xDel:c_t.default,XDELEX:u_t.default,xDelEx:u_t.default,XGROUP_CREATE:l_t.default,xGroupCreate:l_t.default,XGROUP_CREATECONSUMER:d_t.default,xGroupCreateConsumer:d_t.default,XGROUP_DELCONSUMER:f_t.default,xGroupDelConsumer:f_t.default,XGROUP_DESTROY:h_t.default,xGroupDestroy:h_t.default,XGROUP_SETID:p_t.default,xGroupSetId:p_t.default,XINFO_CONSUMERS:m_t.default,xInfoConsumers:m_t.default,XINFO_GROUPS:g_t.default,xInfoGroups:g_t.default,XINFO_STREAM:__t.default,xInfoStream:__t.default,XLEN:A_t.default,xLen:A_t.default,XPENDING_RANGE:E_t.default,xPendingRange:E_t.default,XPENDING:y_t.default,xPending:y_t.default,XRANGE:v_t.default,xRange:v_t.default,XREAD:S_t.default,xRead:S_t.default,XREADGROUP:T_t.default,xReadGroup:T_t.default,XREVRANGE:b_t.default,xRevRange:b_t.default,XSETID:I_t.default,xSetId:I_t.default,XTRIM:R_t.default,xTrim:R_t.default,ZADD_INCR:C_t.default,zAddIncr:C_t.default,ZADD:x_t.default,zAdd:x_t.default,ZCARD:w_t.default,zCard:w_t.default,ZCOUNT:N_t.default,zCount:N_t.default,ZDIFF_WITHSCORES:O_t.default,zDiffWithScores:O_t.default,ZDIFF:D_t.default,zDiff:D_t.default,ZDIFFSTORE:P_t.default,zDiffStore:P_t.default,ZINCRBY:L_t.default,zIncrBy:L_t.default,ZINTER_WITHSCORES:M_t.default,zInterWithScores:M_t.default,ZINTER:k_t.default,zInter:k_t.default,ZINTERCARD:B_t.default,zInterCard:B_t.default,ZINTERSTORE:U_t.default,zInterStore:U_t.default,ZLEXCOUNT:F_t.default,zLexCount:F_t.default,ZMPOP:$_t.default,zmPop:$_t.default,ZMSCORE:q_t.default,zmScore:q_t.default,ZPOPMAX_COUNT:H_t.default,zPopMaxCount:H_t.default,ZPOPMAX:V_t.default,zPopMax:V_t.default,ZPOPMIN_COUNT:j_t.default,zPopMinCount:j_t.default,ZPOPMIN:K_t.default,zPopMin:K_t.default,ZRANDMEMBER_COUNT_WITHSCORES:G_t.default,zRandMemberCountWithScores:G_t.default,ZRANDMEMBER_COUNT:z_t.default,zRandMemberCount:z_t.default,ZRANDMEMBER:Y_t.default,zRandMember:Y_t.default,ZRANGE_WITHSCORES:Q_t.default,zRangeWithScores:Q_t.default,ZRANGE:W_t.default,zRange:W_t.default,ZRANGEBYLEX:X_t.default,zRangeByLex:X_t.default,ZRANGEBYSCORE_WITHSCORES:J_t.default,zRangeByScoreWithScores:J_t.default,ZRANGEBYSCORE:Z_t.default,zRangeByScore:Z_t.default,ZRANGESTORE:eAt.default,zRangeStore:eAt.default,ZRANK_WITHSCORE:rAt.default,zRankWithScore:rAt.default,ZRANK:nAt.default,zRank:nAt.default,ZREM:sAt.default,zRem:sAt.default,ZREMRANGEBYLEX:iAt.default,zRemRangeByLex:iAt.default,ZREMRANGEBYRANK:aAt.default,zRemRangeByRank:aAt.default,ZREMRANGEBYSCORE:tAt.default,zRemRangeByScore:tAt.default,ZREVRANK:oAt.default,zRevRank:oAt.default,ZSCAN:cAt.default,zScan:cAt.default,ZSCORE:uAt.default,zScore:uAt.default,ZUNION_WITHSCORES:lAt.default,zUnionWithScores:lAt.default,ZUNION:dAt.default,zUnion:dAt.default,ZUNIONSTORE:fAt.default,zUnionStore:fAt.default,VADD:hAt.default,vAdd:hAt.default,VCARD:pAt.default,vCard:pAt.default,VDIM:mAt.default,vDim:mAt.default,VEMB:gAt.default,vEmb:gAt.default,VEMB_RAW:_At.default,vEmbRaw:_At.default,VGETATTR:AAt.default,vGetAttr:AAt.default,VINFO:EAt.default,vInfo:EAt.default,VLINKS:yAt.default,vLinks:yAt.default,VLINKS_WITHSCORES:vAt.default,vLinksWithScores:vAt.default,VRANDMEMBER:SAt.default,vRandMember:SAt.default,VRANGE:TAt.default,vRange:TAt.default,VREM:bAt.default,vRem:bAt.default,VSETATTR:IAt.default,vSetAttr:IAt.default,VSIM:RAt.default,vSim:RAt.default,VSIM_WITHSCORES:CAt.default,vSimWithScores:CAt.default};var jVr=re(Wf()),{HOTKEYS_GET:vis,hotkeysGet:Sis,HOTKEYS_RESET:Tis,hotkeysReset:bis,HOTKEYS_START:Iis,hotkeysStart:Ris,HOTKEYS_STOP:Cis,hotkeysStop:xis,...KVr}=jVr.default;pi.NON_STICKY_COMMANDS=KVr});var YL=S(qr=>{"use strict";var wAt=qr&&qr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},NAt;Object.defineProperty(qr,"__esModule",{value:!0});qr.emitDiagnostics=qr.dbgMaintenance=qr.MAINTENANCE_EVENTS=qr.SMIGRATED_EVENT=void 0;var OAt=require("net"),GVr=require("dns/promises"),$R=wAt(require("node:assert")),zVr=require("node:timers/promises"),YVr=wAt(require("node:diagnostics_channel"));qr.SMIGRATED_EVENT="__SMIGRATED";qr.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var ZA={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},QVr=(...e)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...e)};qr.dbgMaintenance=QVr;var WVr=e=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;YVr.default.channel("redis.maintenance").publish(e)};qr.emitDiagnostics=WVr;var J9=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(t){t.maintNotifications===void 0&&(t.maintNotifications=t?.RESP===3?"auto":"disabled"),t.maintEndpointType===void 0&&(t.maintEndpointType="auto"),t.maintRelaxedSocketTimeout===void 0&&(t.maintRelaxedSocketTimeout=1e4),t.maintRelaxedCommandTimeout===void 0&&(t.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(t){if(t.maintNotifications==="disabled")return;let r=t.url?new URL(t.url).hostname:t.socket?.host;if(!r)return;let n=t.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await JVr(n,r,t)],errorHandler:i=>{if((0,qr.dbgMaintenance)("handshake failed:",i),t.maintNotifications==="enabled")throw i}}}constructor(t,r,n){this.#e=t,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=t=>{if((0,qr.dbgMaintenance)("ONPUSH:",t.map(String)),!Array.isArray(t)||!Object.values(ZA).includes(String(t[0])))return!1;let r=String(t[0]);switch((0,qr.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:t.map(String)}}),r){case ZA.MOVING:{let n=t[2],s=t[3]?String(t[3]):null;return(0,qr.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case ZA.MIGRATING:case ZA.SMIGRATING:case ZA.FAILING_OVER:return(0,qr.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case ZA.MIGRATED:case ZA.FAILED_OVER:return(0,qr.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case ZA.SMIGRATED:return(0,qr.dbgMaintenance)("Received SMIGRATED"),this.#c(t),this.#i(),!0}return!1};#o=async(t,r)=>{this.#s();let n,s;if(r===null){(0,$R.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=t*1e3/2;(0,qr.dbgMaintenance)(`Wait for ${d}ms`),await(0,zVr.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,qr.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,qr.dbgMaintenance)("Creating new tmp client");let i=performance.now();if(this.#t.url){let u=new URL(this.#t.url);u.hostname=n,u.port=String(s),this.#t.url=u.toString()}else this.#t.socket={...this.#t.socket,host:n,port:s};let a=this.#n.duplicate();a.on("error",u=>{(0,qr.dbgMaintenance)("[ERR]",u)}),(0,qr.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,qr.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,qr.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,qr.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,qr.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,qr.dbgMaintenance)("In-flight commands completed"),(0,qr.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,qr.dbgMaintenance)("Swap client sockets done."),(0,qr.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,qr.dbgMaintenance)("Timeout relaxation already done");return}let t={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(t)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,qr.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let t={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(t)};#c=t=>{let r=NAt.parseSMigratedPush(t);(0,qr.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(t){let r=new Map;for(let[s,i,a]of t[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(h=>{let p=h.indexOf("-");return p===-1?Number(h):[Number(h.substring(0,p)),Number(h.substring(p+1))]}),d=r.get(o)??[],f=d.find(h=>h.addr.host===c&&h.addr.port===Number(u));f?f.slots=f.slots.concat(l):d.push({addr:{host:c,port:Number(u)},slots:l}),r.set(o,d)}let n=[];for(let[s,i]of r.entries()){let[a,o]=s.split(":");n.push({source:{host:a,port:Number(o)},destinations:i})}return{seqId:t[1],entries:n}}#l(){(0,$R.default)(this.#t.socket!==void 0),(0,$R.default)("host"in this.#t.socket),(0,$R.default)(typeof this.#t.socket.host=="string");let t=this.#t.socket.host;(0,$R.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:t,port:r}}};NAt=J9;qr.default=J9;function XVr(e){let t=(0,OAt.isIP)(e);if(t===4){let r=e.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return t===6?e.startsWith("fc")||e.startsWith("fd")||e==="::1"||e.startsWith("fe80"):!1}async function JVr(e,t,r){if((0,$R.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,qr.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,OAt.isIP)(t)?t:(await(0,GVr.lookup)(t,{family:0})).address,s=XVr(n),i;return e?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,qr.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var BAt=S(QL=>{"use strict";var kAt=QL&&QL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QL,"__esModule",{value:!0});var DAt=require("node:events"),PAt=kAt(require("node:net")),ZVr=kAt(require("node:tls")),Uh=Mh(),LAt=require("node:timers/promises"),MAt=YL(),G_e=class extends DAt.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#m=0;get socketEpoch(){return this.#m}constructor(t,r){super(),this.#e=t,this.#t=r?.connectTimeout??5e3,this.#r=this.#h(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#h(t){let r=t?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,s)=>{try{let i=r(n,s);if(i!==!1&&!(i instanceof Error)&&typeof i!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${i} instead`);return i}catch(i){return this.emit("error",i),this.defaultReconnectStrategy(n,i)}}:this.defaultReconnectStrategy}#d(t){if(t?.tls===!0){let n={...t,port:t?.port??6379,noDelay:t?.noDelay??!0,keepAlive:t?.keepAlive??!0,keepAliveInitialDelay:t?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return ZVr.default.connect(n)},event:"secureConnect"}}if(t&&"path"in t){let n={...t,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return PAt.default.createConnection(n)},event:"connect"}}let r={...t,port:t?.port??6379,noDelay:t?.noDelay??!0,keepAlive:t?.keepAlive??!0,keepAliveInitialDelay:t?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return PAt.default.createConnection(r)},event:"connect"}}#f(t,r){let n=this.#r(t,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Uh.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#p()}async#p(){let t=0;do try{this.#s=await this.#A(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(t++,new Uh.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,LAt.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#m++,this.emit("ready")}catch(r){let n=this.#f(t++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,LAt.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(t){if((0,MAt.dbgMaintenance)(`Set socket timeout to ${t}`),this.#o===t){(0,MAt.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${t}, skipping`);return}this.#o=t,t!==void 0?this.#s?.setTimeout(t):this.#s?.setTimeout(this.#a??0)}async#A(){let t=this.#n.create(),r;return this.#t!==void 0&&(r=()=>t.destroy(new Uh.ConnectionTimeoutError),t.once("timeout",r),t.setTimeout(this.#t)),this.#l&&t.unref(),await(0,DAt.once)(t,this.#n.event),r&&t.removeListener("timeout",r),this.#a&&(t.once("timeout",()=>{let n=this.#o?new Uh.SocketTimeoutDuringMaintenanceError(this.#o):new Uh.SocketTimeoutError(this.#a);t.destroy(n)}),t.setTimeout(this.#a)),t.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==t||this.#g(new Uh.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),t}#g(t){let r=this.#c;this.#c=!1,this.emit("error",t),!(!r||!this.#i||typeof this.#f(0,t)!="number")&&(this.emit("reconnecting"),this.#p().catch(()=>{}))}write(t){if(this.#s){this.#s.cork();for(let r of t){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(t){if(!this.#i)throw new Uh.ClientClosedError;this.#i=!1;let r=await t();return this.destroySocket(),r}close(){if(!this.#i)throw new Uh.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Uh.ClientClosedError;this.#i=!1,this.destroySocket()}destroySocket(){this.#c=!1,this.#s&&(this.#s.destroy(),this.#s=void 0),this.emit("end")}ref(){this.#l=!1,this.#s?.ref()}unref(){this.#l=!0,this.#s?.unref()}defaultReconnectStrategy(t,r){if(r instanceof Uh.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,t)*50,2e3)+n}};QL.default=G_e});var Y_e=S(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});Z9.Token=void 0;var z_e=class{value;expiresAtMs;receivedAtMs;constructor(t,r,n){this.value=t,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(t){return this.expiresAtMs{"use strict";Object.defineProperty(qR,"__esModule",{value:!0});qR.TokenManager=qR.IDPError=void 0;var e7r=Y_e(),eq=class extends Error{message;isRetryable;constructor(t,r){super(t),this.message=t,this.isRetryable=r,this.name="IDPError"}};qR.IDPError=eq;var Q_e=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(t,r){if(this.identityProvider=t,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(t,r=0){return this.listener&&this.stop(),this.listener=t,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:t,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=t*Math.pow(n,this.retryAttempt-1);if(i=Math.min(i,r),s){let o=i*(s/100),c=Math.random()*o-o/2;i+=c}return Math.max(0,Math.floor(i))}shouldRetry(t){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(t,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(t){if(this.shouldRetry(t)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${t}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(t,!1),this.stop()}}handleNewToken=async({token:t,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(t,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(t,r){let n=Date.now(),s=new e7r.Token(t,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(t){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),t===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),t)}calculateRefreshTime(t,r=Date.now()){let n=t.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(t,r){let n=t instanceof Error?t.message:String(t);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new eq(n,r))}};qR.TokenManager=Q_e});var FAt=S(HR=>{"use strict";Object.defineProperty(HR,"__esModule",{value:!0});HR.UnableToObtainNewCredentialsError=HR.CredentialsError=void 0;var W_e=class extends Error{constructor(t){super(`Re-authentication with latest credentials failed: ${t}`),this.name="CredentialsError"}};HR.CredentialsError=W_e;var X_e=class extends Error{constructor(t){super(`Unable to obtain new credentials : ${t}`),this.name="UnableToObtainNewCredentialsError"}};HR.UnableToObtainNewCredentialsError=X_e});var HAt=S(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});Md.Token=Md.CredentialsError=Md.UnableToObtainNewCredentialsError=Md.IDPError=Md.TokenManager=void 0;var $At=UAt();Object.defineProperty(Md,"TokenManager",{enumerable:!0,get:function(){return $At.TokenManager}});Object.defineProperty(Md,"IDPError",{enumerable:!0,get:function(){return $At.IDPError}});var qAt=FAt();Object.defineProperty(Md,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return qAt.UnableToObtainNewCredentialsError}});Object.defineProperty(Md,"CredentialsError",{enumerable:!0,get:function(){return qAt.CredentialsError}});var t7r=Y_e();Object.defineProperty(Md,"Token",{enumerable:!0,get:function(){return t7r.Token}})});var rq=S(Fh=>{"use strict";var r7r=Fh&&Fh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Fh,"__esModule",{value:!0});Fh.EmptyAwareSinglyLinkedList=Fh.SinglyLinkedList=Fh.DoublyLinkedList=void 0;var n7r=r7r(require("events")),J_e=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(t){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:t}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:t}}unshift(t){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:t}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:t}}add(t,r=!1){return r?this.unshift(t):this.push(t)}shift(){if(this.#t===void 0)return;--this.#e;let t=this.#t;return t.next?(t.next.previous=void 0,this.#t=t.next,t.next=void 0):this.#t=this.#r=void 0,t.value}remove(t){this.#e!==0&&(--this.#e,this.#r===t&&(this.#r=t.previous),this.#t===t?this.#t=t.next:(t.previous&&(t.previous.next=t.next),t.next&&(t.next.previous=t.previous)),t.previous=void 0,t.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let t=this.#t;for(;t!==void 0;)yield t.value,t=t.next}*nodes(){let t=this.#t;for(;t;){let r=t.next;yield t,t=r}}};Fh.DoublyLinkedList=J_e;var tq=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(t){++this.#e;let r={value:t,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(t,r){if(t.removed)throw new Error("node already removed");--this.#e,this.#t===t?this.#r===t?this.#t=this.#r=void 0:this.#t=t.next:this.#r===t?(this.#r=r,r.next=void 0):r.next=t.next,t.removed=!0}shift(){if(this.#t===void 0)return;let t=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=t.next,t.removed=!0,t.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let t=this.#t;for(;t!==void 0;)yield t.value,t=t.next}};Fh.SinglyLinkedList=tq;var Z_e=class extends tq{events=new n7r.default;reset(){let t=this.length;super.reset(),t!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let t=this.length,r=super.shift();return t!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(t,r){let n=this.length;super.remove(t,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Fh.EmptyAwareSinglyLinkedList=Z_e});var VAt=S(eAe=>{"use strict";Object.defineProperty(eAe,"__esModule",{value:!0});var WL=`\r -`;function s7r(e){let t=[],r="*"+e.length+WL;for(let n=0;n{var jAt=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],i7r=function(t){for(var r,n=0,s=0,i=[],a=t.length;n>6|192,i[s++]=r&63|128):(r&64512)===55296&&n+1>18|240,i[s++]=r>>12&63|128,i[s++]=r>>6&63|128,i[s++]=r&63|128):(i[s++]=r>>12|224,i[s++]=r>>6&63|128,i[s++]=r&63|128);return i},KAt=tAe.exports=function(t){for(var r,n=0,s=-1,i=0,a=0,o=typeof t=="string"?i7r(t):t,c=o.length;n>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=jAt[(r^i>>8)&255]^i<<8}return i&16383};tAe.exports.generateMulti=function(t){for(var r=1,n=t.length,s=KAt(t[0]);r{"use strict";var a7r=or&&or.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(or,"__esModule",{value:!0});or.PubSub=or.PUBSUB_TYPE=void 0;var o7r=a7r(rAe());or.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var So={[or.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[or.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[or.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},nAe=class e{static isStatusReply(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return So[or.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||So[or.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||So[or.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||So[or.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||So[or.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return So[or.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(t){return Array.isArray(t)?t:[t]}static#t(t,r){return r?t.buffers:t.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[or.PUBSUB_TYPE.CHANNELS]:new Map,[or.PUBSUB_TYPE.PATTERNS]:new Map,[or.PUBSUB_TYPE.SHARDED]:new Map};subscribe(t,r,n,s){let i=[So[t].subscribe],a=e.#e(r);for(let o of a){let c=this.listeners[t].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)e.#t(this.listeners[t].get(o),s).add(n);return}return this.#n=!0,this.#r++,{args:i,channelsCounter:i.length-1,resolve:()=>{this.#r--;for(let o of a){let c=this.listeners[t].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[t].set(o,c)),e.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(t,r,n){if(this.#a(t,r,n))return this.#n=!0,this.#r++,{args:[So[t].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(t,r,n){let s=this.listeners[t].get(r);if(!s)return this.listeners[t].set(r,n),!0;for(let i of n.buffers)s.buffers.add(i);for(let i of n.strings)s.strings.add(i);return!1}extendTypeListeners(t,r){let n=[So[t].subscribe];for(let[s,i]of r)this.#a(t,s,i)&&n.push(s);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}unsubscribe(t,r,n,s){let i=this.listeners[t];if(!r)return this.#o([So[t].unsubscribe],NaN,()=>i.clear());let a=e.#e(r);if(!n)return this.#o([So[t].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[So[t].unsubscribe];for(let c of a){let u=i.get(c);if(u){let l,d;if(s?(l=u.buffers,d=u.strings):(l=u.strings,d=u.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;u.unsubscribing=!0}o.push(c)}if(o.length===1){for(let c of a)e.#t(i.get(c),s).delete(n);return}return this.#o(o,o.length-1,()=>{for(let c of a){let u=i.get(c);u&&((s?u.buffers:u.strings).delete(n),u.buffers.size===0&&u.strings.size===0&&i.delete(c))}})}#o(t,r,n){return{args:t,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[or.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[or.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[or.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let t=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===or.PUBSUB_TYPE.SHARDED?this.#c(t,n):this.#i(t,r,n));return t}#i(t,r,n){this.#r++;let s=()=>this.#r--;t.push({args:[So[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(t,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,t.push({args:[So[or.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return So[or.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(or.PUBSUB_TYPE.CHANNELS,t[2],t[1]),!0):So[or.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(or.PUBSUB_TYPE.PATTERNS,t[3],t[2],t[1]),!0):So[or.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(or.PUBSUB_TYPE.SHARDED,t[2],t[1]),!0):!1}removeShardedListeners(t){let r=this.listeners[or.PUBSUB_TYPE.SHARDED].get(t);return this.listeners[or.PUBSUB_TYPE.SHARDED].delete(t),this.#s(),r}removeAllListeners(){let t={[or.PUBSUB_TYPE.CHANNELS]:this.listeners[or.PUBSUB_TYPE.CHANNELS],[or.PUBSUB_TYPE.PATTERNS]:this.listeners[or.PUBSUB_TYPE.PATTERNS],[or.PUBSUB_TYPE.SHARDED]:this.listeners[or.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[or.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[or.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[or.PUBSUB_TYPE.SHARDED]=new Map,t}removeShardedPubSubListenersForSlots(t){let r=new Map;for(let[n,s]of this.listeners[or.PUBSUB_TYPE.SHARDED])t.has((0,o7r.default)(n))&&(r.set(n,s),this.listeners[or.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[or.PUBSUB_TYPE.SHARDED]:r}}#l(t,r,n,s){let i=(s??n).toString(),a=this.listeners[t].get(i);if(!a)return;for(let u of a.buffers)u(r,n);if(!a.strings.size)return;let o=s?n.toString():i,c=o==="__redis__:invalidate"?r===null?null:r.map(u=>u.toString()):r.toString();for(let u of a.strings)u(c,o)}};or.PubSub=nAe});var zAt=S(ZL=>{"use strict";var c7r=ZL&&ZL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZL,"__esModule",{value:!0});var GAt=rq(),u7r=c7r(VAt()),JL=V9(),sAe=XL(),VR=Mh(),jR=YL(),l7r=Buffer.from("pong"),d7r=Buffer.from("RESET"),f7r={...JL.PUSH_TYPE_MAPPING,[JL.RESP_TYPES.SIMPLE_STRING]:Buffer},iAe=class e{#e;#t;#r=new GAt.DoublyLinkedList;#n=new GAt.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new sAe.PubSub;#i=[this.#h.bind(this)];#c;setMaintenanceCommandTimeout(t){if(this.#c===t){(0,jR.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${t}, skipping`);return}if((0,jR.dbgMaintenance)(`Setting maintenance command timeout to ${t}`),this.#c=t,this.#c===void 0){(0,jR.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let s of this.#r.nodes()){let i=s.value;e.#I(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new VR.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,jR.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${t}`)}get isPubSubActive(){return this.#s.isActive}constructor(t,r,n){this.#e=t,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(t){this.#n.shift().resolve(t)}#m(t){this.#n.shift().reject(t)}#h(t){if(this.#s.handleMessageReply(t))return!0;let r=sAe.PubSub.isShardedUnsubscribe(t);if(r&&!this.#n.length){let n=t[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||sAe.PubSub.isStatusReply(t)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&t[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new JL.Decoder({onReply:t=>this.#l(t),onErrorReply:t=>this.#m(t),onPush:t=>{for(let r of this.#i)if(r(t))return},getTypeMapping:()=>this.#d()})}addPushHandler(t){this.#i.push(t)}async waitForInflightCommandsToComplete(t){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=t?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,jR.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),t?.flushOnTimeout&&a>0&&((0,jR.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#T(new VR.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(t,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new VR.AbortError):new Promise((n,s)=>{let i,a={args:t,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#c??r?.timeout,c=this.#c!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(i),a.reject(c?new VR.CommandTimeoutDuringMaintenanceError(o):new VR.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let u=r?.abortSignal;u&&(a.abort={signal:u,listener:()=>{this.#r.remove(i),a.reject(new VR.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#p(t,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:t.args,chainId:n,abort:void 0,timeout:void 0,resolve(){t.resolve(),s()},reject(a){t.reject?.(),i(a)},channelsCounter:t.channelsCounter,typeMapping:JL.PUSH_TYPE_MAPPING},r)})}#A(){this.#e===2&&(this.decoder.onReply=t=>{if(Array.isArray(t)){if(this.#h(t))return;let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];if(l7r.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=t[1].length===0?t[0]:t[1];n(s?.[JL.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(t)},this.decoder.getTypeMapping=()=>f7r)}subscribe(t,r,n,s){let i=this.#s.subscribe(t,r,n,s);if(i)return this.#A(),this.#p(i)}#g(){this.decoder.onReply=t=>this.#l(t),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(t,r,n,s){let i=this.#s.unsubscribe(t,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#p(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(t){return this.#s.removeShardedPubSubListenersForSlots(t)}resubscribe(t){let r=this.#s.resubscribe();if(r.length)return this.#A(),Promise.all(r.map(n=>this.#p(n,!0,t)))}extendPubSubChannelListeners(t,r,n){let s=this.#s.extendChannelListeners(t,r,n);if(s)return this.#A(),this.#p(s)}extendPubSubListeners(t,r){let n=this.#s.extendTypeListeners(t,r);if(n)return this.#A(),this.#p(n)}getPubSubListeners(t){return this.#s.listeners[t]}monitor(t,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#v?this.#v=t:this.decoder.onReply=t,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#v;async reset(t,r){return new Promise((n,s)=>{this.#v=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&d7r.equals(i)){this.#g(),this.#v=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#v(i)},this.#r.push({args:["RESET"],chainId:t,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let t=this.#r.shift();for(;t;){let r;try{r=(0,u7r.default)(t.args)}catch(n){t.reject(n),t=this.#r.shift();continue}t.args=void 0,t.abort&&(e.#_(t),t.abort=void 0),t.timeout&&(e.#I(t),t.timeout=void 0),this.#o=t.chainId,t.chainId=void 0,this.#n.push(t),yield r,t=this.#r.shift()}}#T(t){for(let r of this.#n)r.reject(t);this.#n.reset()}static#_(t){t.abort.signal.removeEventListener("abort",t.abort.listener)}static#I(t){t.timeout?.signal.removeEventListener("abort",t.timeout.listener)}static#S(t,r){t.abort&&e.#_(t),t.timeout&&e.#I(t),t.reject(r)}flushWaitingForReply(t){if(this.resetDecoder(),this.#s.reset(),this.#T(t),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)e.#S(this.#r.shift(),t);this.#o=void 0}}flushAll(t){this.resetDecoder(),this.#s.reset(),this.#T(t);for(let r of this.#r)e.#S(r,t);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(t){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&t.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let t=[],r=this.#r.head;for(;r;)t.push(r.value),this.#r.remove(r),r=r.next;return t}prependCommandsToWrite(t){if(t.length)for(let r=t.length-1;r>=0;r--)this.#r.unshift(t[r])}};ZL.default=iAe});var qh=S($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});$h.scriptArgumentsPrefix=$h.functionArgumentsPrefix=$h.getTransformReply=$h.attachConfig=void 0;function YAt(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function h7r({BaseClass:e,commands:t,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends e{};for(let[u,l]of Object.entries(t))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=YAt:c.prototype[u]=r(l,o);if(a?.modules)for(let[u,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,h]of Object.entries(l))a.RESP==3&&h.unstableResp3&&!a.unstableResp3?d[f]=YAt:d[f]=n(h,o);QAt(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,h]of Object.entries(l))d[f]=s(f,h,o);QAt(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}$h.attachConfig=h7r;function QAt(e,t,r){Object.defineProperty(e,t,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,t,{value:n}),n}})}function p7r(e,t){switch(typeof e.transformReply){case"function":return e.transformReply;case"object":return e.transformReply[t]}}$h.getTransformReply=p7r;function m7r(e,t){let r=[t.IS_READ_ONLY?"FCALL_RO":"FCALL",e];return t.NUMBER_OF_KEYS!==void 0&&r.push(t.NUMBER_OF_KEYS.toString()),r}$h.functionArgumentsPrefix=m7r;function g7r(e){let t=[e.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",e.SHA1];return e.NUMBER_OF_KEYS!==void 0&&t.push(e.NUMBER_OF_KEYS.toString()),t}$h.scriptArgumentsPrefix=g7r});var eM=S(oAe=>{"use strict";Object.defineProperty(oAe,"__esModule",{value:!0});var WAt=Mh(),aAe=class{typeMapping;constructor(t){this.typeMapping=t}queue=[];scriptsInUse=new Set;addCommand(t,r){this.queue.push({args:t,transformReply:r})}addScript(t,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(t.SHA1)?s.push("EVALSHA",t.SHA1):(this.scriptsInUse.add(t.SHA1),s.push("EVAL",t.SCRIPT)),t.NUMBER_OF_KEYS!==void 0&&s.push(t.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(t){let r=[],n=t.map((s,i)=>{if(s instanceof WAt.ErrorReply)return r.push(i),s;let{transformReply:a,args:o}=this.queue[i];return a?a(s,o.preserve,this.typeMapping):s});if(r.length)throw new WAt.MultiErrorReply(n,r);return n}};oAe.default=aAe});var uAe=S(tM=>{"use strict";var XAt=tM&&tM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tM,"__esModule",{value:!0});var _7r=XAt(Wf()),A7r=XAt(eM()),KR=qh(),nq=kh(),cAe=class e{static#e(t,r){let n=(0,KR.getTransformReply)(t,r);return function(...s){let i=new nq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(t,r){let n=(0,KR.getTransformReply)(t,r);return function(...s){let i=new nq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(t,r,n){let s=(0,KR.functionArgumentsPrefix)(t,r),i=(0,KR.getTransformReply)(r,n);return function(...a){let o=new nq.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(t,r){let n=(0,KR.getTransformReply)(t,r);return function(...s){let i=new nq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(t,a,n)}}static extend(t){return(0,KR.attachConfig)({BaseClass:e,commands:_7r.default,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t})}#a;#o;#s;#i;constructor(t,r,n){this.#a=new A7r.default(n),this.#o=t,this.#s=r}SELECT(t,r){return this.#i=t,this.#a.addCommand(["SELECT",t.toString()],r),this}select=this.SELECT;addCommand(t,r){return this.#a.addCommand(t,r),this}#c(t,r,n){return this.#a.addScript(t,r,n),this}async exec(t=!1){return t?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};tM.default=cAe});var eEt=S(zR=>{"use strict";var JAt=zR&&zR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zR,"__esModule",{value:!0});zR.RedisLegacyClient=void 0;var E7r=qh(),ZAt=JAt(Wf()),y7r=JAt(eM()),GR=class e{static#e(t,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),e.pushArguments(t,r),n}static pushArguments(t,r){for(let n=0;nthis.#r.emit("error",u));return}c.then(u=>o(null,s?s(u):u)).catch(u=>o(u))}}#r;#n;constructor(t){this.#r=t;let r=t.options?.RESP??2;for(let[n,s]of Object.entries(ZAt.default))this[n]=e.#t(n,s,r);this.#n=lAe.factory(r)}sendCommand(...t){let r=[],n=e.#e(r,t),s=this.#r.sendCommand(r);if(!n){s.catch(i=>this.#r.emit("error",i));return}s.then(i=>n(null,i)).catch(i=>n(i))}multi(){return this.#n(this.#r)}};zR.RedisLegacyClient=GR;var lAe=class e{static#e(t,r,n){let s=GR.getTransformReply(r,n);return function(...i){let a=[t];return GR.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(t){let r=class extends e{};for(let[n,s]of Object.entries(ZAt.default))r.prototype[n]=e.#e(n,s,t);return n=>new r(n)}#t=new y7r.default;#r;constructor(t){this.#r=t}sendCommand(...t){let r=[];return GR.pushArguments(r,t),this.#t.addCommand(r),this}exec(t){let r=this.#r._executeMulti(this.#t.queue);if(!t){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>t(null,this.#t.transformReplies(n))).catch(n=>t?.(n))}}});var YR=S(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});qu.PooledNoRedirectClientSideCache=qu.BasicPooledClientSideCache=qu.PooledClientSideCacheProvider=qu.BasicClientSideCache=qu.ClientSideCacheProvider=qu.CacheStats=void 0;var v7r=require("stream"),rM=class e{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(t,r,n,s,i,a){if(this.hitCount=t,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,t<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(t=0,r=0,n=0,s=0,i=0,a=0){return new e(t,r,n,s,i,a)}static empty(){return e.EMPTY_STATS}static EMPTY_STATS=new e(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let t=this.requestCount();return t===0?1:this.hitCount/t}missRate(){let t=this.requestCount();return t===0?0:this.missCount/t}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let t=this.loadCount();return t===0?0:this.loadFailureCount/t}averageLoadPenalty(){let t=this.loadCount();return t===0?0:this.totalLoadTime/t}minus(t){return e.of(Math.max(0,this.hitCount-t.hitCount),Math.max(0,this.missCount-t.missCount),Math.max(0,this.loadSuccessCount-t.loadSuccessCount),Math.max(0,this.loadFailureCount-t.loadFailureCount),Math.max(0,this.totalLoadTime-t.totalLoadTime),Math.max(0,this.evictionCount-t.evictionCount))}plus(t){return e.of(this.hitCount+t.hitCount,this.missCount+t.missCount,this.loadSuccessCount+t.loadSuccessCount,this.loadFailureCount+t.loadFailureCount,this.totalLoadTime+t.totalLoadTime,this.evictionCount+t.evictionCount)}};qu.CacheStats=rM;var sq=class e{static INSTANCE=new e;constructor(){}recordHits(t){}recordMisses(t){}recordLoadSuccess(t){}recordLoadFailure(t){}recordEvictions(t){}snapshot(){return rM.empty()}};function S7r(){return sq.INSTANCE}var iq=class e{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(t){this.#e+=t}recordMisses(t){this.#t+=t}recordLoadSuccess(t){this.#r++,this.#a+=t}recordLoadFailure(t){this.#n++,this.#a+=t}recordEvictions(t){this.#o+=t}snapshot(){return rM.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new e}};function T7r(e){let t=new Array(e.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(t){let r=this.#e.get(t);if(r&&!r.validate()){this.delete(t),this.#r.recordEvictions(1),this.emit("cache-evict",t);return}return r!==void 0&&this.lru&&(this.#e.delete(t),this.#e.set(t,r)),r}delete(t){let r=this.#e.get(t);r&&(r.invalidate(),this.#e.delete(t))}has(t){return this.#e.has(t)}set(t,r,n){let s=this.#e.size,i=this.#e.get(t);i&&(s--,i.invalidate()),this.maxEntries>0&&s>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(t,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(t)}size(){return this.#e.size}createValueEntry(t,r){return new nM(this.ttl,r)}createPromiseEntry(t,r){return new sM(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};qu.BasicClientSideCache=cq;var uq=class extends cq{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(t){if(!this.#e)return super.get(t)}has(t){return this.#e?!1:super.has(t)}onPoolClose(){this.clear()}};qu.PooledClientSideCacheProvider=uq;var lq=class extends uq{onError(){this.clear(!1)}onClose(){this.clear(!1)}};qu.BasicPooledClientSideCache=lq;var dAe=class extends nM{#e;constructor(t,r,n){super(t,n),this.#e=r}validate(){let t=super.validate();return this.#e&&(t=t&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),t}},fAe=class extends sM{#e;constructor(t,r,n){super(t,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},hAe=class extends lq{createValueEntry(t,r){let n={epoch:t.socketEpoch,client:t};return new dAe(this.ttl,n,r)}createPromiseEntry(t,r){let n={epoch:t.socketEpoch,client:t};return new fAe(this.ttl,n,r)}onError(){}onClose(){}};qu.PooledNoRedirectClientSideCache=hAe});var dq=S(mAe=>{"use strict";Object.defineProperty(mAe,"__esModule",{value:!0});var pAe=class{#e;#t;get(t){return JSON.stringify(t,tEt())===this.#t?this.#e:void 0}set(t,r){this.#e=r,this.#t=JSON.stringify(t,tEt())}};mAe.default=pAe;function tEt(){let e=new WeakSet;return function(r,n){return n&&typeof n=="object"?e.has(n)?"circular":(e.add(n),n):n}}});var EAe=S(QR=>{"use strict";var AAe=QR&&QR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QR,"__esModule",{value:!0});QR.RedisClientPool=void 0;var b7r=Wf(),I7r=AAe(WR()),R7r=require("node:events"),gAe=rq(),C7r=Mh(),wS=qh(),x7r=AAe(uAe()),rEt=YR(),fq=kh(),w7r=AAe(dq()),_Ae=class e extends R7r.EventEmitter{static#e(t,r){let n=(0,wS.getTransformReply)(t,r);return async function(...s){let i=new fq.BasicCommandParser;return t.parseCommand(i,...s),this.execute(a=>a._executeCommand(t,i,this._commandOptions,n))}}static#t(t,r){let n=(0,wS.getTransformReply)(t,r);return async function(...s){let i=new fq.BasicCommandParser;return t.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(t,i,this._self._commandOptions,n))}}static#r(t,r,n){let s=(0,wS.functionArgumentsPrefix)(t,r),i=(0,wS.getTransformReply)(r,n);return async function(...a){let o=new fq.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(t,r){let n=(0,wS.scriptArgumentsPrefix)(t),s=(0,wS.getTransformReply)(t,r);return async function(...i){let a=new fq.BasicCommandParser;return a.pushVariadic(n),t.parseCommand(a,...i),this.execute(o=>o._executeScript(t,a,this._commandOptions,s))}}static#a=new w7r.default;static create(t,r){let n=e.#a.get(t);return n||(n=(0,wS.attachConfig)({BaseClass:e,commands:b7r.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t}),n.prototype.Multi=x7r.default.extend(t),e.#a.set(t,n)),Object.create(new n(t,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new gAe.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new gAe.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#m=new gAe.SinglyLinkedList;get tasksQueueLength(){return this._self.#m.length}#h=!1;get isOpen(){return this._self.#h}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(t,r){if(super(),this.#i={...e.#o,...r},r?.clientSideCache)if(t===void 0&&(t={}),r.clientSideCache instanceof rEt.PooledClientSideCacheProvider)this.#f=t.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=t.clientSideCache=new rEt.BasicPooledClientSideCache(n)}this.#s=I7r.default.factory(t).bind(void 0,t)}_self=this;_commandOptions;withCommandOptions(t){let r=Object.create(this._self);return r._commandOptions=t,r}#p(t,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._self.#p("typeMapping",t)}withAbortSignal(t){return this._self.#p("abortSignal",t)}asap(){return this._self.#p("asap",!0)}async connect(){if(this._self.#h)return;this._self.#h=!0;let t=[];for(;t.lengththis.emit("error",r)));try{await t.value.connect()}catch(r){throw this._self.#l.remove(t),r}this._self.#v(t)}execute(t){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#m;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#m.remove(c,i),n(new C7r.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#m.push({timeout:o,resolve:r,reject:n,fn:t});this.totalClientsthis.#v(t)):(r(i),this.#v(t))}#v(t){let r=this.#m.shift();if(r){clearTimeout(r.timeout),this.#g(t,r.resolve,r.reject,r.fn);return}this.#l.remove(t),this.#c.push(t.value),this.#T()}cleanupTimeout;#T(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#_(),this.#i.cleanupDelay))}#_(){let t=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;rn.sendCommand(t,r))}MULTI(){return new this.Multi((t,r)=>this.execute(n=>n._executeMulti(t,r)),t=>this.execute(r=>r._executePipeline(t)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#h){this._self.#d=!0;try{let t=[];for(let r of this._self.#c)t.push(r.close());for(let r of this._self.#l)t.push(r.close());await Promise.all(t),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let t of this._self.#c)t.destroy();this._self.#c.reset();for(let t of this._self.#l)t.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#h=!1}};QR.RedisClientPool=_Ae});var nEt=S((Wis,N7r)=>{N7r.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var WR=S(Jf=>{"use strict";var O7r=Jf&&Jf.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),D7r=Jf&&Jf.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),P7r=Jf&&Jf.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&O7r(t,e,r);return D7r(t,e),t},ZR=Jf&&Jf.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},Xf;Object.defineProperty(Jf,"__esModule",{value:!0});var XR=ZR(Wf()),L7r=ZR(BAt()),sEt=HAt(),M7r=ZR(zAt()),k7r=require("node:events"),NS=qh(),eE=Mh(),B7r=require("node:url"),JR=XL(),U7r=ZR(uAe()),F7r=ZR(Dhe()),$7r=eEt(),q7r=EAe(),OS=We(),iEt=YR(),hq=kh(),H7r=ZR(dq()),V7r=nEt(),pq=P7r(YL()),mq=class extends k7r.EventEmitter{static#e(t,r){let n=(0,NS.getTransformReply)(t,r);return async function(...s){let i=new hq.BasicCommandParser;return t.parseCommand(i,...s),this._self._executeCommand(t,i,this._commandOptions,n)}}static#t(t,r){let n=(0,NS.getTransformReply)(t,r);return async function(...s){let i=new hq.BasicCommandParser;return t.parseCommand(i,...s),this._self._executeCommand(t,i,this._self._commandOptions,n)}}static#r(t,r,n){let s=(0,NS.functionArgumentsPrefix)(t,r),i=(0,NS.getTransformReply)(r,n);return async function(...a){let o=new hq.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(t,r){let n=(0,NS.scriptArgumentsPrefix)(t),s=(0,NS.getTransformReply)(t,r);return async function(...i){let a=new hq.BasicCommandParser;return a.push(...n),t.parseCommand(a,...i),this._executeScript(t,a,this._commandOptions,s)}}static#a=new H7r.default;static factory(t){let r=Xf.#a.get(t);return r||(r=(0,NS.attachConfig)({BaseClass:Xf,commands:XR.default,createCommand:Xf.#e,createModuleCommand:Xf.#t,createFunctionCommand:Xf.#r,createScriptCommand:Xf.#n,config:t}),r.prototype.Multi=U7r.default.extend(t),Xf.#a.set(t,r)),n=>Object.create(new r(n))}static create(t){return Xf.factory(t)(t)}static parseOptions(t){if(t?.url){let r=Xf.parseURL(t.url);if(t.socket){if(t.socket.tls!==void 0&&t.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${t.socket.tls} which is mismatch with protocol or the URL ${t.url} passed`);r.socket=Object.assign(t.socket,r.socket)}Object.assign(t,r)}return t}static parseURL(t){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new B7r.URL(t),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#m;#h;#d;#f=null;#p=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#h!==void 0}get isDirtyWatch(){return this._self.#m!==void 0}setDirtyWatch(t){this._self.#m=t}constructor(t){if(super(),this.#A(t),this.#o=this.#g(t),this.#i=this.#v(),this.#s=this.#b(),this.#o.maintNotifications!=="disabled"&&new pq.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof iEt.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new iEt.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else t?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#A(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(t?.emitInvalidate&&t?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(t?.clientSideCache&&t?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(t?.maintNotifications&&t?.maintNotifications!=="disabled"&&t?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(t={}){if(!t.credentialsProvider&&(t.username||t.password)&&(t.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:t.username,password:t.password})}),t.database&&(this._self.#c=t.database),t.commandOptions&&(this._commandOptions=t.commandOptions),t.maintNotifications!=="disabled"&&pq.default.setupDefaultMaintOptions(t),t.url){let r=Xf.parseOptions(t);return r?.database&&(this._self.#c=r.database),r}return t}#v(){return new M7r.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(t,r)=>this.emit("sharded-channel-moved",t,r))}reAuthenticate=async t=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,OS.parseArgs)(XR.default.AUTH,{username:t.username,password:t.password??""}))};#T(t){return t.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);t.onReAuthenticationError(new sEt.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;t.onReAuthenticationError(new sEt.UnableToObtainNewCredentialsError(n))}})}async#_(t,r){let n=[],s=await this.#I();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:t,asap:r}).catch(a));return n}async#I(){let t=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#T(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),t.push({cmd:(0,OS.parseArgs)(F7r.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&t.push({cmd:(0,OS.parseArgs)(XR.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#T(r);this.#f=i,(s.username||s.password)&&t.push({cmd:(0,OS.parseArgs)(XR.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&t.push({cmd:(0,OS.parseArgs)(XR.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&t.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&t.push({cmd:(0,OS.parseArgs)(XR.default.READONLY)}),this.#o.disableClientInfo||(t.push({cmd:["CLIENT","SETINFO","LIB-VER",V7r.version],errorHandler:()=>{}}),t.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&t.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&t.push({cmd:["CLIENT","TRACKING","ON"]});let n=await pq.default.getHandshakeCommand(this.#o);return n&&t.push(n),t}#S(t){t.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#b(){let t=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#_(s,!0)),n.length)return this.#D(),Promise.all(n)},r=new L7r.default(t,this.#o.socket);return this.#S(r),r}#y;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#y),this.#y=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(t=>this.emit("ping-interval",t)).catch(t=>this.emit("error",t)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(t){let r=Object.create(this._self);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}withAbortSignal(t){return this._commandOptionsProxy("abortSignal",t)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new $7r.RedisLegacyClient(this)}createPool(t){return q7r.RedisClientPool.create(this._self.#o,t)}duplicate(t){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...t})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let t=this._self.#s;return this._self.#s=null,t.removeAllListeners(),t}_insertSocket(t){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=t,this._self.#S(this._self.#s)}_maintenanceUpdate(t){this._self.#s.setMaintenanceTimeout(t.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(t.relaxedCommandTimeout)}_pause(){this._self.#p=!0}_unpause(){this._self.#p=!1,this._self.#N()}_handleSmigrated(t){this._self.emit(pq.SMIGRATED_EVENT,t)}_getQueue(){return this._self.#i}async _executeCommand(t,r,n,s){let i=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(i&&t.CACHEABLE&&a)return await i.handleCache(this._self,r,o,s,n?.typeMapping);{let c=await o();return s?s(c,r.preserve,n?.typeMapping):c}}async _executeScript(t,r,n,s){let i=r.redisArgs,a;try{a=await this.sendCommand(i,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;i[0]="EVAL",i[1]=t.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(t,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new eE.ClientOfflineError)}else return Promise.reject(new eE.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(t,n);return this._self.#R(),s}async SELECT(t){await this.sendCommand(["SELECT",t.toString()]),this._self.#c=t}select=this.SELECT;#E(t){return t===void 0?Promise.resolve():(this.#R(),t)}SUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.subscribe(JR.PUBSUB_TYPE.CHANNELS,t,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.unsubscribe(JR.PUBSUB_TYPE.CHANNELS,t,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.subscribe(JR.PUBSUB_TYPE.PATTERNS,t,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.unsubscribe(JR.PUBSUB_TYPE.PATTERNS,t,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.subscribe(JR.PUBSUB_TYPE.SHARDED,t,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.unsubscribe(JR.PUBSUB_TYPE.SHARDED,t,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(t){let r=await this._self.sendCommand((0,OS.pushVariadicArguments)(["WATCH"],t));return this._self.#h??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let t=await this._self.sendCommand(["UNWATCH"]);return this._self.#h=void 0,t}unwatch=this.UNWATCH;getPubSubListeners(t){return this._self.#i.getPubSubListeners(t)}extendPubSubChannelListeners(t,r,n){return this._self.#E(this._self.#i.extendPubSubChannelListeners(t,r,n))}extendPubSubListeners(t,r){return this._self.#E(this._self.#i.extendPubSubListeners(t,r))}#D(){this.#p||this.#s.write(this.#i.commandsToWrite())}#C;#R(){!this.#s.isReady||this.#C||(this.#C=setImmediate(()=>{this.#D(),this.#C=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#R()}async _executePipeline(t,r){if(!this._self.#s.isOpen)return Promise.reject(new eE.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(t.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#R();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(t,r){let n=this._self.#m;this._self.#m=void 0;let s=this._self.#h;if(this._self.#h=void 0,!this._self.#s.isOpen)throw new eE.ClientClosedError;if(n)throw new eE.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new eE.WatchError("Client reconnected after WATCH");let i=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#i.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of t)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#R();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new eE.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(t){let r=t?.cursor??"0";do{let n=await this.scan(r,t);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(t,r){let n=r?.cursor??"0";do{let s=await this.hScan(t,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(t,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(t,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(t,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(t,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(t,r){let n=r?.cursor??"0";do{let s=await this.sScan(t,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(t,r){let n=r?.cursor??"0";do{let s=await this.zScan(t,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(t){let r=this._self.#i.monitor(t,{typeMapping:this._commandOptions?.typeMapping});this._self.#R(),await r,this._self.#l=t}monitor=this.MONITOR;async reset(){let t=Symbol("Reset Chain"),r=[this._self.#i.reset(t)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#_(t,!1)),this._self.#R(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#m=void 0,this._self.#h=void 0}resetIfDirty(){let t=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),t=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),t=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),t=!0),(this._self.#m||this._self.#h)&&(console.warn("Returning a client with active WATCH"),t=!0),t)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#y);let t=this._self.#i.addCommand(["QUIT"]);return this._self.#R(),t})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(t=>{if(clearTimeout(this._self.#y),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),t();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),t())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#y),this._self.#i.flushAll(new eE.DisconnectsClientError),this._self.#s.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#s.ref()}unref(){this._self.#s.unref()}};Xf=mq;Jf.default=mq});var cEt=S(Hh=>{"use strict";var oEt=Hh&&Hh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},vAe;Object.defineProperty(Hh,"__esModule",{value:!0});Hh.RESUBSCRIBE_LISTENERS_EVENT=void 0;var j7r=Mh(),K7r=oEt(WR()),Ll=XL(),yAe=oEt(rAe()),aEt=YR(),Hu=YL();Hh.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var gq=class{static#e=16384;#t;#r;#n;slots=new Array(vAe.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(t,r){this.#o(t),this.#t=t,t?.clientSideCache&&(t.clientSideCache instanceof aEt.PooledClientSideCacheProvider?this.clientSideCache=t.clientSideCache:this.clientSideCache=new aEt.BasicPooledClientSideCache(t.clientSideCache)),this.#r=K7r.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#s(),this.#n("connect")}catch(t){throw this.#a=!1,t}}async#s(){let t=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=t;rthis.#f(d,!0,s,r,n)));for(let d=a;d<=o;d++)this.slots[d]=l}if(this.pubSubNode&&!r.has(this.pubSubNode.address)){let a=this.pubSubNode.client.getPubSubListeners(Ll.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Ll.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#b({[Ll.PUBSUB_TYPE.CHANNELS]:a,[Ll.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:c}=o;c&&c.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async t=>{if((0,Hu.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(t,null,2)),this.smigratedSeqIdsSeen.has(t.seqId)){(0,Hu.dbgMaintenance)(`[CSlots]: sequence id ${t.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(t.seqId);for(let r of t.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,Hu.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,Hu.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,Hu.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let i=new Set;try{s.client?._pause(),"pubSub"in s&&s.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:h}of r.destinations){let p=`${d}:${f}`,m=this.nodeByAddress.get(p);(0,Hu.dbgMaintenance)(`[CSlots]: Looking for destAddress=${p}. Found in nodeByAddress: ${m?"YES":"NO"}`);let _;if(m){let A=[...new Set(this.slots)].map(v=>`${v.master.host}:${v.master.port}`);(0,Hu.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${A.join(", ")}`);let E=this.slots.find(v=>v.master.host===d&&v.master.port===f);if(!E)throw(0,Hu.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");_=E,m.client?._pause(),m.pubSub?.client._pause()}else{let A=[];m=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,A),await Promise.all([...A,this.#y(m)]),m.client?._pause(),m.pubSub?.client._pause(),_={master:m}}a=m;let g=new Set;for(let A of h)if(typeof A=="number")this.slots[A]=_,g.add(A),i.add(A);else for(let E=A[0];E<=A[1];E++)this.slots[E]=_,g.add(E),i.add(E);(0,Hu.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${m.address}. Sample slots: ${Array.from(h).slice(0,5).join(", ")}${h.length>5?"...":""}`);let y=s.client._getQueue().extractCommandsForSlots(g);m.client?._getQueue().prependCommandsToWrite(y),(0,Hu.dbgMaintenance)(`[CSlots]: Extracted ${y.length} commands for ${g.size} slots, prepended to ${m.address}`),m.client?._unpause(),m.pubSub?.client._unpause()}(0,Hu.dbgMaintenance)(`[CSlots]: Total ${i.size} slots moved from ${n}. Sample: ${Array.from(i).slice(0,10).join(", ")}${i.size>10?"...":""}`);let o=5e3,c=[],u={timeoutMs:o,flushOnTimeout:!0};if(c.push(s.client._getQueue().waitForInflightCommandsToComplete(u)),"pubSub"in s&&s.pubSub!==void 0&&c.push(s.pubSub.client._getQueue().waitForInflightCommandsToComplete(u)),this.pubSubNode?.address===n&&c.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(u)),await Promise.all(c),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in s){let d=s.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(i);this.#n(Hh.RESUBSCRIBE_LISTENERS_EVENT,d)}s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause()}else{let d=s.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,Hu.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(Hh.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(Ll.PUBSUB_TYPE.CHANNELS),h=this.pubSubNode.client.getPubSubListeners(Ll.PUBSUB_TYPE.PATTERNS),p=this.pubSubNode.client;f.size||h.size?await this.#b({[Ll.PUBSUB_TYPE.CHANNELS]:f,[Ll.PUBSUB_TYPE.PATTERNS]:h}):this.pubSubNode=void 0,p.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,Hu.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#m(t){let r=this.#d(t);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#h(t){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[t];case"function":return this.#t.nodeAddressMap(t)}}#d(t){if(!this.#t.defaults)return t;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...t?.socket}:r=t?.socket,{...this.#t.defaults,...t,socket:r}}#f(t,r,n,s,i){let a=`${t.host}:${t.port}`,o=this.nodeByAddress.get(a);return o||(o={...t,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#A(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#p(t,r=t.readonly){let n=this.#h(t.address)??{host:t.host,port:t.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(Hu.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(Hh.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#A(t,r){let n=t.client=this.#p(t,r);return t.connectPromise=n.connect().finally(()=>t.connectPromise=void 0)}nodeClient(t){return t.connectPromise?t.connectPromise:t.client?Promise.resolve(t.client):this.#A(t)}#g;async rediscover(t){return this.#g??=this.#v(t).finally(()=>{this.#g=void 0}),this.#g}async#v(t){if(!await this.#c(t.options))return this.#s()}quit(){return this.#_(t=>t.quit())}disconnect(){return this.#_(t=>t.disconnect())}close(){return this.#_(t=>t.close())}destroy(){this.#a=!1;for(let t of this.#T())t.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#T(){for(let t of this.masters)t.client&&(yield t.client),t.pubSub&&(yield t.pubSub.client);for(let t of this.replicas)t.client&&(yield t.client)}async#_(t){this.#a=!1;let r=[];for(let n of this.#T())r.push(t(n));this.pubSubNode&&(r.push(t(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(t,r){if(!t)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,yAe.default)(t);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#I(){if(this.masters.length+this.replicas.length===0)return;let t=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(t(t&&await Promise.all([i.extendPubSubListeners(Ll.PUBSUB_TYPE.CHANNELS,t[Ll.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Ll.PUBSUB_TYPE.PATTERNS,t[Ll.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(t){let r=await this.getPubSubClient();await t(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(t){let{master:r}=this.slots[(0,yAe.default)(t)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#y(r)}async#y(t){let r=this.#p(t,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Ll.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return t.pubSub={client:r,connectPromise:r.connect().then(n=>(t.pubSub.connectPromise=void 0,n)).catch(n=>{throw t.pubSub=void 0,n})},t.pubSub.connectPromise}async executeShardedUnsubscribeCommand(t,r){let{master:n}=this.slots[(0,yAe.default)(t)];if(!n.pubSub)return;let s=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(s),s.isPubSubActive||(s.destroy(),n.pubSub=void 0)}};vAe=gq;Hh.default=gq});var uEt=S(iM=>{"use strict";var G7r=iM&&iM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(iM,"__esModule",{value:!0});var z7r=Wf(),Y7r=G7r(eM()),eC=qh(),_q=kh(),SAe=class e{static#e(t,r){let n=(0,eC.getTransformReply)(t,r);return function(...s){let i=new _q.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,t.IS_READ_ONLY,a,n)}}static#t(t,r){let n=(0,eC.getTransformReply)(t,r);return function(...s){let i=new _q.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,t.IS_READ_ONLY,a,n)}}static#r(t,r,n){let s=(0,eC.functionArgumentsPrefix)(t,r),i=(0,eC.getTransformReply)(r,n);return function(...a){let o=new _q.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;c.preserve=o.preserve;let u=o.firstKey;return this._self.addCommand(u,r.IS_READ_ONLY,c,i)}}static#n(t,r){let n=(0,eC.getTransformReply)(t,r);return function(...s){let i=new _q.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#m(o,t.IS_READ_ONLY,t,a,n)}}static extend(t){return(0,eC.attachConfig)({BaseClass:e,commands:z7r.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t})}#a;#o;#s;#i;#c=!0;constructor(t,r,n,s){this.#a=new Y7r.default(s),this.#o=t,this.#s=r,this.#i=n}#l(t,r){this.#i??=t,this.#c&&=r}addCommand(t,r,n,s){return this.#l(t,r),this.#a.addCommand(n,s),this}#m(t,r,n,s,i){return this.#l(t,r),this.#a.addScript(n,s,i),this}async exec(t=!1){return t?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#i,this.#c,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};iM.default=SAe});var fEt=S(Zf=>{"use strict";var Q7r=Zf&&Zf.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),W7r=Zf&&Zf.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),X7r=Zf&&Zf.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Q7r(t,e,r);return W7r(t,e),t},dEt=Zf&&Zf.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Zf,"__esModule",{value:!0});var J7r=Wf(),Z7r=require("node:events"),DS=qh(),lEt=X7r(cEt()),ejr=dEt(uEt()),tjr=Mh(),Aq=kh(),rjr=$fe(),njr=dEt(dq()),TAe=class e extends Z7r.EventEmitter{static#e(t,r){let n=(0,DS.getTransformReply)(t,r);return async function(...s){let i=new Aq.BasicCommandParser;return t.parseCommand(i,...s),this._self._execute(i.firstKey,t.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(t,i,o,n))}}static#t(t,r){let n=(0,DS.getTransformReply)(t,r);return async function(...s){let i=new Aq.BasicCommandParser;return t.parseCommand(i,...s),this._self._execute(i.firstKey,t.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(t,i,o,n))}}static#r(t,r,n){let s=(0,DS.functionArgumentsPrefix)(t,r),i=(0,DS.getTransformReply)(r,n);return async function(...a){let o=new Aq.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(c,u)=>c._executeCommand(r,o,u,i))}}static#n(t,r){let n=(0,DS.scriptArgumentsPrefix)(t),s=(0,DS.getTransformReply)(t,r);return async function(...i){let a=new Aq.BasicCommandParser;return a.push(...n),t.parseCommand(a,...i),this._self._execute(a.firstKey,t.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(t,a,c,s))}}static#a=new njr.default;static factory(t){let r=e.#a.get(t);return r||(r=(0,DS.attachConfig)({BaseClass:e,commands:J7r.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t}),r.prototype.Multi=ejr.default.extend(t),e.#a.set(t,r)),n=>Object.create(new r(n))}static create(t){return e.factory(t)(t)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(t){super(),this._options=t,this._slots=new lEt.default(t,this.emit.bind(this)),this.on(lEt.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),t?.commandOptions&&(this._commandOptions=t.commandOptions)}duplicate(t){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...t})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}_handleAsk(t){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([rjr.ASKING_CMD],{chainId:s}),t(r,i)]))[1]}}async _execute(t,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(t,r),c=0,u=s;for(;;)try{let l=n??{};return l.slotNumber=o,await u(a,l)}catch(l){if(u=s,++c>i||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,u=this._handleAsk(s);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(t,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(t,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(t,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(t){return new this.Multi(async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executeMulti(s)},async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executePipeline(s)},t,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(t,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(t,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(t,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(t,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(t,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(t,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(t,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(t,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(t,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(t)?t[0]:t,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(t,r,n)}catch(c){if(++o>s||!(c instanceof tjr.ErrorReply))throw c;if(c.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(i);continue}throw c}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(t,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(t)?t[0]:t,s=>s.SUNSUBSCRIBE(t,r,n))}resubscribeAllPubSubListeners(t){if(t.CHANNELS)for(let[r,n]of t.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(t.PATTERNS)for(let[r,n]of t.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(t.SHARDED)for(let[r,n]of t.SHARDED)n.buffers.forEach(s=>{this.sSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.sSubscribe(r,s)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(t){return this._self._slots.nodeClient(t)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(t){return this._self._slots.getSlotRandomNode(t)}getMasters(){return this.masters}getSlotMaster(t){return this.slots[t].master}};Zf.default=TAe});var pEt=S(qa=>{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.getMappedNode=qa.createScriptCommand=qa.createModuleCommand=qa.createFunctionCommand=qa.createCommand=qa.clientSocketToNode=qa.createNodeList=qa.parseNode=void 0;var Eq=kh(),tC=qh();function hEt(e){if(!(e.flags.includes("s_down")||e.flags.includes("disconnected")||e.flags.includes("failover_in_progress")))return{host:e.ip,port:Number(e.port)}}qa.parseNode=hEt;function sjr(e){var t=[];for(let r of e){let n=hEt(r);n!==void 0&&t.push(n)}return t}qa.createNodeList=sjr;function ijr(e){let t=e;return{host:t.host,port:t.port}}qa.clientSocketToNode=ijr;function ajr(e,t){let r=(0,tC.getTransformReply)(e,t);return async function(...n){let s=new Eq.BasicCommandParser;return e.parseCommand(s,...n),this._self._execute(e.IS_READ_ONLY,i=>i._executeCommand(e,s,this.commandOptions,r))}}qa.createCommand=ajr;function ojr(e,t,r){let n=(0,tC.functionArgumentsPrefix)(e,t),s=(0,tC.getTransformReply)(t,r);return async function(...i){let a=new Eq.BasicCommandParser;return a.push(...n),t.parseCommand(a,...i),this._self._execute(t.IS_READ_ONLY,o=>o._executeCommand(t,a,this._self.commandOptions,s))}}qa.createFunctionCommand=ojr;function cjr(e,t){let r=(0,tC.getTransformReply)(e,t);return async function(...n){let s=new Eq.BasicCommandParser;return e.parseCommand(s,...n),this._self._execute(e.IS_READ_ONLY,i=>i._executeCommand(e,s,this._self.commandOptions,r))}}qa.createModuleCommand=cjr;function ujr(e,t){let r=(0,tC.scriptArgumentsPrefix)(e),n=(0,tC.getTransformReply)(e,t);return async function(...s){let i=new Eq.BasicCommandParser;return i.push(...r),e.parseCommand(i,...s),this._self._execute(e.IS_READ_ONLY,a=>a._executeScript(e,i,this.commandOptions,n))}}qa.createScriptCommand=ujr;function ljr(e,t,r){if(r===void 0)return{host:e,port:t};let n=`${e}:${t}`;switch(typeof r){case"object":return r[n]??{host:e,port:t};case"function":return r(n)??{host:e,port:t}}}qa.getMappedNode=ljr});var gEt=S(aM=>{"use strict";var djr=aM&&aM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(aM,"__esModule",{value:!0});var fjr=Wf(),mEt=djr(eM()),rC=qh(),yq=kh(),bAe=class e{static _createCommand(t,r){let n=(0,rC.getTransformReply)(t,r);return function(...s){let i=new yq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(t.IS_READ_ONLY,a,n)}}static _createModuleCommand(t,r){let n=(0,rC.getTransformReply)(t,r);return function(...s){let i=new yq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(t.IS_READ_ONLY,a,n)}}static _createFunctionCommand(t,r,n){let s=(0,rC.functionArgumentsPrefix)(t,r),i=(0,rC.getTransformReply)(r,n);return function(...a){let o=new yq.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,c,i)}}static _createScriptCommand(t,r){let n=(0,rC.getTransformReply)(t,r);return function(...s){let i=new yq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(t.IS_READ_ONLY,t,a,n)}}static extend(t){return(0,rC.attachConfig)({BaseClass:e,commands:fjr.NON_STICKY_COMMANDS,createCommand:e._createCommand,createModuleCommand:e._createModuleCommand,createFunctionCommand:e._createFunctionCommand,createScriptCommand:e._createScriptCommand,config:t})}#e=new mEt.default;#t;#r=!0;constructor(t,r){this.#e=new mEt.default(r),this.#t=t}#n(t){this.#r&&=t}addCommand(t,r,n){return this.#n(t),this.#e.addCommand(r,n),this}#a(t,r,n,s){return this.#n(t),this.#e.addScript(r,n,s),this}async exec(t=!1){return t?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};aM.default=bAe});var EEt=S(nC=>{"use strict";var AEt=nC&&nC.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nC,"__esModule",{value:!0});nC.PubSubProxy=void 0;var hjr=AEt(require("node:events")),tE=XL(),_Et=AEt(WR()),IAe=class extends hjr.default{#e;#t;#r;#n;#a;constructor(t,r){super(),this.#e=t,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new _Et.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(t=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(t&&this.#a&&await Promise.all([s.extendPubSubListeners(tE.PUBSUB_TYPE.CHANNELS,this.#a[tE.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(tE.PUBSUB_TYPE.PATTERNS,this.#a[tE.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==s?(s.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,s))).catch(s=>{throw this.#n=void 0,s});return this.#n={client:r,connectPromise:n},n}#i(){return this.#n?this.#n.connectPromise??this.#n.client:this.#s()}async changeNode(t){this.#r=t,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[tE.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(tE.PUBSUB_TYPE.CHANNELS),[tE.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(tE.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(t){let r=this.#i();return r instanceof _Et.default?t(r):r.then(n=>{if(n!==void 0)return t(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(t,r,n){return this.#c(s=>s.SUBSCRIBE(t,r,n))}#l(t){return this.#c(async r=>{let n=await t(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(t,r,n){return this.#l(s=>s.UNSUBSCRIBE(t,r,n))}async pSubscribe(t,r,n){return this.#c(s=>s.PSUBSCRIBE(t,r,n))}async pUnsubscribe(t,r,n){return this.#l(s=>s.PUNSUBSCRIBE(t,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};nC.PubSubProxy=IAe});var yEt=S(RAe=>{"use strict";Object.defineProperty(RAe,"__esModule",{value:!0});var pjr=We();RAe.default={parseCommand(e,t){e.push("SENTINEL","MASTER",t)},transformReply:{2:pjr.transformTuplesReply,3:void 0}}});var vEt=S(CAe=>{"use strict";Object.defineProperty(CAe,"__esModule",{value:!0});CAe.default={parseCommand(e,t,r,n,s){e.push("SENTINEL","MONITOR",t,r,n,s)},transformReply:void 0}});var SEt=S(xAe=>{"use strict";Object.defineProperty(xAe,"__esModule",{value:!0});var mjr=We();xAe.default={parseCommand(e,t){e.push("SENTINEL","REPLICAS",t)},transformReply:{2:(e,t,r)=>{let n=e,s=[];return n.reduce((i,a)=>(i.push((0,mjr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var TEt=S(wAe=>{"use strict";Object.defineProperty(wAe,"__esModule",{value:!0});var gjr=We();wAe.default={parseCommand(e,t){e.push("SENTINEL","SENTINELS",t)},transformReply:{2:(e,t,r)=>{let n=e,s=[];return n.reduce((i,a)=>(i.push((0,gjr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var bEt=S(NAe=>{"use strict";Object.defineProperty(NAe,"__esModule",{value:!0});NAe.default={parseCommand(e,t,r){e.push("SENTINEL","SET",t);for(let n of r)e.push(n.option,n.value)},transformReply:void 0}});var NEt=S(oM=>{"use strict";var cM=oM&&oM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oM,"__esModule",{value:!0});var IEt=cM(yEt()),REt=cM(vEt()),CEt=cM(SEt()),xEt=cM(TEt()),wEt=cM(bEt());oM.default={SENTINEL_SENTINELS:xEt.default,sentinelSentinels:xEt.default,SENTINEL_MASTER:IEt.default,sentinelMaster:IEt.default,SENTINEL_REPLICAS:CEt.default,sentinelReplicas:CEt.default,SENTINEL_MONITOR:REt.default,sentinelMonitor:REt.default,SENTINEL_SET:wEt.default,sentinelSet:wEt.default}});var OEt=S(uM=>{"use strict";var _jr=uM&&uM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uM,"__esModule",{value:!0});var Ajr=_jr(NEt());uM.default={sentinel:Ajr.default}});var PEt=S(vq=>{"use strict";Object.defineProperty(vq,"__esModule",{value:!0});vq.WaitQueue=void 0;var DEt=rq(),OAe=class{#e=new DEt.SinglyLinkedList;#t=new DEt.SinglyLinkedList;push(t){let r=this.#t.shift();if(r!==void 0){r(t);return}this.#e.push(t)}shift(){return this.#e.shift()}wait(){return new Promise(t=>this.#t.push(t))}};vq.WaitQueue=OAe});var UEt=S(rg=>{"use strict";var MAe=rg&&rg.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(rg,"__esModule",{value:!0});rg.RedisSentinelFactory=rg.RedisSentinelClient=void 0;var kAe=require("node:events"),sC=MAe(WR()),MEt=qh(),kEt=Wf(),ai=pEt(),BEt=MAe(gEt()),Ejr=EEt(),yjr=require("node:timers/promises"),Sq=MAe(OEt()),vjr=PEt(),LEt=YR(),lM=class e{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(t,r,n){this._self=this,this.#t=t,this.#e=r,this.#r=n}static factory(t){let r=(0,MEt.attachConfig)({BaseClass:e,commands:kEt.NON_STICKY_COMMANDS,createCommand:ai.createCommand,createModuleCommand:ai.createModuleCommand,createFunctionCommand:ai.createFunctionCommand,createScriptCommand:ai.createScriptCommand,config:t});return r.prototype.Multi=BEt.default.extend(t),(n,s,i)=>Object.create(new r(n,s,i))}static create(t,r,n,s){return e.factory(t)(r,n,s)}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}async _execute(t,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(t,r,n){return this._execute(t,s=>s.sendCommand(r,n))}async _executePipeline(t,r){return this._execute(t,n=>n._executePipeline(r))}async _executeMulti(t,r){return this._execute(t,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(t){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(t))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,t=>t.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let t=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,t}};rg.RedisSentinelClient=lM;var DAe=class e extends kAe.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#s;get clientSideCache(){return this._self.#e.clientSideCache}constructor(t){super(),this._self=this,this.#t=t,t.commandOptions&&(this.#r=t.commandOptions),this.#e=new PAe(t),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(t){let r=(0,MEt.attachConfig)({BaseClass:e,commands:kEt.NON_STICKY_COMMANDS,createCommand:ai.createCommand,createModuleCommand:ai.createModuleCommand,createFunctionCommand:ai.createFunctionCommand,createScriptCommand:ai.createScriptCommand,config:t});return r.prototype.Multi=BEt.default.extend(t),n=>Object.create(new r(n))}static create(t){return e.factory(t)(t)}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[t]:r},n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(t,r){let n;(!t||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#s??=await this._self.#e.getClientLease(),n=this._self.#s,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#s&&--this._self.#o===0){let s=this._self.#e.releaseClientLease(n);this._self.#s=void 0,s&&await s}}}async use(t){let r=await this._self.#e.getClientLease();try{return await t(lM.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(t,r,n){return this._execute(t,s=>s.sendCommand(r,n))}async _executePipeline(t,r){return this._execute(t,n=>n._executePipeline(r))}async _executeMulti(t,r){return this._execute(t,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(t,r,n){return this._self.#e.subscribe(t,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(t,r,n){return this._self.#e.unsubscribe(t,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(t,r,n){return this._self.#e.pSubscribe(t,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(t,r,n){return this._self.#e.pUnsubscribe(t,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let t=await this._self.#e.getClientLease();return lM.create(this._self.#t,this._self.#e,t,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(t){t?this._self.#n=r=>{t.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(t)}};rg.default=DAe;var PAe=class extends kAe.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#m=0;#h;#d;#f=[];#p;#A;#g=[];#v=0;#T;get useReplicas(){return this.#T>0}#_;#I;#S;#b;#y=!1;#u=()=>{};#E;get clientSideCache(){return this.#E}#D(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(t){if(super(),this.#D(t),this.#r=t.name,this.#c=t.RESP,this.#h=Array.from(t.sentinelRootNodes),this.#I=t.maxCommandRediscovers??16,this.#A=t.masterPoolSize??1,this.#T=t.replicaPoolSize??0,this.#o=t.nodeAddressMap,this.#s=t.scanInterval??0,this.#i=t.passthroughClientErrorEvents??!1,this.#n=t.nodeClientOptions?{...t.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(t.clientSideCache)if(t.clientSideCache instanceof LEt.PooledClientSideCacheProvider)this.#E=this.#n.clientSideCache=t.clientSideCache;else{let r=t.clientSideCache;this.#E=this.#n.clientSideCache=new LEt.BasicPooledClientSideCache(r)}if(this.#a=t.sentinelClientOptions?Object.assign({},t.sentinelClientOptions):{},this.#a.modules=Sq.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#p=new vjr.WaitQueue;for(let r=0;rthis.emit("error",r))}#C(t,r,n){let s=(0,ai.getMappedNode)(t.host,t.port,this.#o);return sC.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let t=this.#p.shift();return t!==void 0?Promise.resolve({id:t}):this.#p.wait().then(r=>({id:r}))}releaseClientLease(t){let r=this.#f[t.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#p.push(t.id))}this.#p.push(t.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#_=this.#R(),await this.#_,this.#t=!0}finally{this.#_=void 0,this.#s>0&&(this.#b=setInterval(this.#O.bind(this),this.#s))}}async#R(){let t=0;for(;;){if(this.#u("starting connect loop"),t+=1,this.#y){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&t>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,yjr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(t,r){let n=0;for(;;){this.#_!==void 0&&await this.#_;let s=this.#w(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await t(s)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(t){return await t.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#B(n,r)},!0),t}async#B(t,r){this.#u("pubsub control channel message on "+t),this.#O()}#w(t){if(t!==void 0)return this.#f[t.id];if(this.#v>=this.#g.length&&(this.#v=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#v++]}async#O(){if(!(this.#t==!1||this.#y==!0)){if(this.#_!==void 0)return this.#l=!0,await this.#_;try{return this.#_=this.#R(),await this.#_}finally{this.#u("finished reconfgure"),this.#_=void 0}}}#P(t){let r=this.#h.findIndex(n=>n.host===t.host&&n.port===t.port);r!==-1&&this.#h.splice(r,1),this.#O()}async close(){this.#y=!0,this.#_!=null&&await this.#_,this.#t=!1,this.#E?.onPoolClose(),this.#b&&(clearInterval(this.#b),this.#b=void 0);let t=[];this.#d!==void 0&&(this.#d.isOpen&&t.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&t.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&t.push(r.close());this.#g=[],await Promise.all(t),this.#S.destroy(),this.#e=!1}async destroy(){this.#y=!0,this.#_!=null&&await this.#_,this.#t=!1,this.#E?.onPoolClose(),this.#b&&(clearInterval(this.#b),this.#b=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let t of this.#f)t.isOpen&&t.destroy();this.#f=[];for(let t of this.#g)t.isOpen&&t.destroy();this.#g=[],this.#S.destroy(),this.#e=!1,this.#y=!1}async subscribe(t,r,n){return this.#S.subscribe(t,r,n)}async unsubscribe(t,r,n){return this.#S.unsubscribe(t,r,n)}async pSubscribe(t,r,n){return this.#S.pSubscribe(t,r,n)}async pUnsubscribe(t,r,n){return this.#S.pUnsubscribe(t,r,n)}async observe(){for(let t of this.#h){let r;try{this.#u(`observe: trying to connect to sentinel: ${t.host}:${t.port}`),r=this.#C(t,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:t,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#T,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(t){let r=(0,ai.parseNode)(t.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${t.masterData.flags}`),new Error("no valid master node");r.host===t.currentMaster?.host&&r.port===t.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${t.currentMaster?.host}:${t.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${t.currentMaster?.host}:${t.currentMaster?.port}`);let n=t.sentinelConnected;n.host===t.currentSentinel?.host&&n.port===t.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(t.useReplicas){let u=(0,ai.createNodeList)(t.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of t.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=t.replicaPoolSize&&(i.set(l,t.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,t.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[t.sentinelConnected].concat((0,ai.createNodeList)(t.sentinelData)),epoch:Number(t.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(t){this.#u("transform: enter");let r=[];if(t.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${t.sentinelToOpen.host}:${t.sentinelToOpen.port}`);let a=t.sentinelToOpen,o=this.#C(t.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,ai.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#P(a)}).on("end",()=>this.#P(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${t.sentinelToOpen.host}:${t.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:t.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(t.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u{this.#i&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let h={type:"MASTER",node:(0,ai.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",h)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${t.masterToOpen.host}:${t.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#S.changeNode(t.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:t.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#m++}let n=new Set;for(let a of t.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,ai.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,t.replicasToOpen.size!=0)for(let[a,o]of t.replicasToOpen){for(let u=0;u{this.#i&&this.emit("error",new Error(`Replica Client (${a.host}:${a.port}): ${d.message}`,{cause:d}));let f={type:"REPLICA",node:(0,ai.clientSocketToNode)(l.options.socket),error:d};this.emit("client-error",f)}),this.#g.push(l),r.push(l.connect()),this.#u(`created replica client to ${a.host}:${a.port}`)}let c={type:"REPLICA_ADD",node:a};this.emit("topology-change",c)}if(t.sentinelList.length!=this.#h.length){this.#h=t.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:t.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#u("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let t of this.#f)if(t.isReady)return(0,ai.clientSocketToNode)(t.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,ai.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let t=new Map,r=new Map;for(let n of this.#g){let s=(0,ai.clientSocketToNode)(n.options.socket),i=JSON.stringify(s);n.isReady?r.set(i,(r.get(i)??0)+1):r.has(i)||r.set(i,0)}for(let[n,s]of r)t.set(JSON.parse(n),s);return t}setTracer(t){t?this.#u=r=>{t.push(r)}:this.#u=()=>{}}},LAe=class extends kAe.EventEmitter{options;#e;#t=-1;constructor(t){super(),this.options=t,this.#e=t.sentinelRootNodes}async updateSentinelRootNodes(){for(let t of this.#e){let r=sC.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:t.host,port:t.port,reconnectStrategy:!1},modules:Sq.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[t].concat((0,ai.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let t=!1;for(let r of this.#e){let n=sC.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:Sq.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}t=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,ai.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw t?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let t=await this.getMasterNode(),r=(0,ai.getMappedNode)(t.host,t.port,this.options.nodeAddressMap);return sC.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let t=!1;for(let r of this.#e){let n=sC.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:Sq.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}t=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,ai.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw t?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let t=await this.getReplicaNodes();if(t.length==0)throw new Error("no available replicas");this.#t++,this.#t>=t.length&&(this.#t=0);let r=t[this.#t],n=(0,ai.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return sC.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};rg.RedisSentinelFactory=LAe});var fM=S(vr=>{"use strict";var Sjr=vr&&vr.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Tjr=vr&&vr.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Sjr(t,e,r)},BAe=vr&&vr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vr,"__esModule",{value:!0});vr.BasicPooledClientSideCache=vr.BasicClientSideCache=vr.REDIS_FLUSH_MODES=vr.COMMAND_LIST_FILTER_BY=vr.CLUSTER_SLOT_STATES=vr.FAILOVER_MODES=vr.CLIENT_KILL_FILTERS=vr.GEO_REPLY_WITH=vr.createSentinel=vr.createCluster=vr.createClientPool=vr.createClient=vr.digest=vr.defineScript=vr.VerbatimString=vr.RESP_TYPES=void 0;var bjr=V9();Object.defineProperty(vr,"RESP_TYPES",{enumerable:!0,get:function(){return bjr.RESP_TYPES}});var Ijr=nfe();Object.defineProperty(vr,"VerbatimString",{enumerable:!0,get:function(){return Ijr.VerbatimString}});var Rjr=fit();Object.defineProperty(vr,"defineScript",{enumerable:!0,get:function(){return Rjr.defineScript}});var Cjr=hit();Object.defineProperty(vr,"digest",{enumerable:!0,get:function(){return Cjr.digest}});Tjr(Mh(),vr);var xjr=BAe(WR());vr.createClient=xjr.default.create;var wjr=EAe();vr.createClientPool=wjr.RedisClientPool.create;var Njr=BAe(fEt());vr.createCluster=Njr.default.create;var Ojr=BAe(UEt());vr.createSentinel=Ojr.default.create;var Djr=sL();Object.defineProperty(vr,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return Djr.GEO_REPLY_WITH}});var dM=Wf();Object.defineProperty(vr,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return dM.CLIENT_KILL_FILTERS}});Object.defineProperty(vr,"FAILOVER_MODES",{enumerable:!0,get:function(){return dM.FAILOVER_MODES}});Object.defineProperty(vr,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return dM.CLUSTER_SLOT_STATES}});Object.defineProperty(vr,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return dM.COMMAND_LIST_FILTER_BY}});Object.defineProperty(vr,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return dM.REDIS_FLUSH_MODES}});var FEt=YR();Object.defineProperty(vr,"BasicClientSideCache",{enumerable:!0,get:function(){return FEt.BasicClientSideCache}});Object.defineProperty(vr,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return FEt.BasicPooledClientSideCache}})});var $Et=S(UAe=>{"use strict";Object.defineProperty(UAe,"__esModule",{value:!0});var Pjr=We();UAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BF.ADD"),e.pushKey(t),e.push(r)},transformReply:Pjr.transformBooleanReply}});var qEt=S(FAe=>{"use strict";Object.defineProperty(FAe,"__esModule",{value:!0});FAe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("BF.CARD"),e.pushKey(t)},transformReply:void 0}});var HEt=S($Ae=>{"use strict";Object.defineProperty($Ae,"__esModule",{value:!0});var Ljr=We();$Ae.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.EXISTS"),e.pushKey(t),e.push(r)},transformReply:Ljr.transformBooleanReply}});var qAe=S(Tq=>{"use strict";Object.defineProperty(Tq,"__esModule",{value:!0});Tq.transformInfoV2Reply=void 0;var Mjr=fM();function kjr(e,t){switch(t?t[Mjr.RESP_TYPES.MAP]:void 0){case Array:return e;case Map:{let n=new Map;for(let s=0;s{"use strict";Object.defineProperty(HAe,"__esModule",{value:!0});var Bjr=qAe();HAe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("BF.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,Bjr.transformInfoV2Reply)(e,r),3:void 0}}});var jEt=S(VAe=>{"use strict";Object.defineProperty(VAe,"__esModule",{value:!0});var Ujr=We();VAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BF.INSERT"),e.pushKey(t),n?.CAPACITY!==void 0&&e.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&e.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&e.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&e.push("NOCREATE"),n?.NONSCALING&&e.push("NONSCALING"),e.push("ITEMS"),e.pushVariadic(r)},transformReply:Ujr.transformBooleanArrayReply}});var KEt=S(jAe=>{"use strict";Object.defineProperty(jAe,"__esModule",{value:!0});jAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BF.LOADCHUNK"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var GEt=S(KAe=>{"use strict";Object.defineProperty(KAe,"__esModule",{value:!0});var Fjr=We();KAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BF.MADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:Fjr.transformBooleanArrayReply}});var zEt=S(GAe=>{"use strict";Object.defineProperty(GAe,"__esModule",{value:!0});var $jr=We();GAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.MEXISTS"),e.pushKey(t),e.pushVariadic(r)},transformReply:$jr.transformBooleanArrayReply}});var YEt=S(zAe=>{"use strict";Object.defineProperty(zAe,"__esModule",{value:!0});zAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("BF.RESERVE"),e.pushKey(t),e.push(r.toString(),n.toString()),s?.EXPANSION&&e.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&e.push("NONSCALING")},transformReply:void 0}});var QEt=S(YAe=>{"use strict";Object.defineProperty(YAe,"__esModule",{value:!0});YAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.SCANDUMP"),e.pushKey(t),e.push(r.toString())},transformReply(e){return{iterator:e[0],chunk:e[1]}}}});var iC=S(Vh=>{"use strict";var qjr=Vh&&Vh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Hjr=Vh&&Vh.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qjr(t,e,r)},jh=Vh&&Vh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Vh,"__esModule",{value:!0});var WEt=jh($Et()),XEt=jh(qEt()),JEt=jh(HEt()),ZEt=jh(VEt()),eyt=jh(jEt()),tyt=jh(KEt()),ryt=jh(GEt()),nyt=jh(zEt()),syt=jh(YEt()),iyt=jh(QEt());Hjr(qAe(),Vh);Vh.default={ADD:WEt.default,add:WEt.default,CARD:XEt.default,card:XEt.default,EXISTS:JEt.default,exists:JEt.default,INFO:ZEt.default,info:ZEt.default,INSERT:eyt.default,insert:eyt.default,LOADCHUNK:tyt.default,loadChunk:tyt.default,MADD:ryt.default,mAdd:ryt.default,MEXISTS:nyt.default,mExists:nyt.default,RESERVE:syt.default,reserve:syt.default,SCANDUMP:iyt.default,scanDump:iyt.default}});var oyt=S(QAe=>{"use strict";Object.defineProperty(QAe,"__esModule",{value:!0});QAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("CMS.INCRBY"),e.pushKey(t),Array.isArray(r))for(let n of r)ayt(e,n);else ayt(e,r)},transformReply:void 0};function ayt(e,{item:t,incrementBy:r}){e.push(t,r.toString())}});var cyt=S(WAe=>{"use strict";Object.defineProperty(WAe,"__esModule",{value:!0});var Vjr=iC();WAe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("CMS.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,Vjr.transformInfoV2Reply)(e,r),3:void 0}}});var uyt=S(XAe=>{"use strict";Object.defineProperty(XAe,"__esModule",{value:!0});XAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CMS.INITBYDIM"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var lyt=S(JAe=>{"use strict";Object.defineProperty(JAe,"__esModule",{value:!0});JAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CMS.INITBYPROB"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var dyt=S(ZAe=>{"use strict";Object.defineProperty(ZAe,"__esModule",{value:!0});ZAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("CMS.MERGE"),e.pushKey(t),e.push(r.length.toString()),jjr(r))e.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(eEe,"__esModule",{value:!0});eEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CMS.QUERY"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Eyt=S(hM=>{"use strict";var aC=hM&&hM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hM,"__esModule",{value:!0});var hyt=aC(oyt()),pyt=aC(cyt()),myt=aC(uyt()),gyt=aC(lyt()),_yt=aC(dyt()),Ayt=aC(fyt());hM.default={INCRBY:hyt.default,incrBy:hyt.default,INFO:pyt.default,info:pyt.default,INITBYDIM:myt.default,initByDim:myt.default,INITBYPROB:gyt.default,initByProb:gyt.default,MERGE:_yt.default,merge:_yt.default,QUERY:Ayt.default,query:Ayt.default}});var yyt=S(tEe=>{"use strict";Object.defineProperty(tEe,"__esModule",{value:!0});var Kjr=We();tEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.ADD"),e.pushKey(t),e.push(r)},transformReply:Kjr.transformBooleanReply}});var vyt=S(rEe=>{"use strict";Object.defineProperty(rEe,"__esModule",{value:!0});var Gjr=We();rEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.ADDNX"),e.pushKey(t),e.push(r)},transformReply:Gjr.transformBooleanReply}});var Syt=S(nEe=>{"use strict";Object.defineProperty(nEe,"__esModule",{value:!0});nEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CF.COUNT"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Tyt=S(sEe=>{"use strict";Object.defineProperty(sEe,"__esModule",{value:!0});var zjr=We();sEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.DEL"),e.pushKey(t),e.push(r)},transformReply:zjr.transformBooleanReply}});var byt=S(iEe=>{"use strict";Object.defineProperty(iEe,"__esModule",{value:!0});var Yjr=We();iEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.EXISTS"),e.pushKey(t),e.push(r)},transformReply:Yjr.transformBooleanReply}});var Iyt=S(aEe=>{"use strict";Object.defineProperty(aEe,"__esModule",{value:!0});var Qjr=iC();aEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("CF.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,Qjr.transformInfoV2Reply)(e,r),3:void 0}}});var oEe=S(pM=>{"use strict";Object.defineProperty(pM,"__esModule",{value:!0});pM.parseCfInsertArguments=void 0;var Wjr=We();function Ryt(e,t,r,n){e.pushKey(t),n?.CAPACITY!==void 0&&e.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&e.push("NOCREATE"),e.push("ITEMS"),e.pushVariadic(r)}pM.parseCfInsertArguments=Ryt;pM.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("CF.INSERT"),Ryt(...e)},transformReply:Wjr.transformBooleanArrayReply}});var Cyt=S(ng=>{"use strict";var Xjr=ng&&ng.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Jjr=ng&&ng.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Zjr=ng&&ng.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Xjr(t,e,r);return Jjr(t,e),t};Object.defineProperty(ng,"__esModule",{value:!0});var cEe=Zjr(oEe());ng.default={IS_READ_ONLY:cEe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("CF.INSERTNX"),(0,cEe.parseCfInsertArguments)(...e)},transformReply:cEe.default.transformReply}});var xyt=S(uEe=>{"use strict";Object.defineProperty(uEe,"__esModule",{value:!0});uEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CF.LOADCHUNK"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var wyt=S(lEe=>{"use strict";Object.defineProperty(lEe,"__esModule",{value:!0});lEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CF.RESERVE"),e.pushKey(t),e.push(r.toString()),n?.BUCKETSIZE!==void 0&&e.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&e.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&e.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var Nyt=S(dEe=>{"use strict";Object.defineProperty(dEe,"__esModule",{value:!0});dEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CF.SCANDUMP"),e.pushKey(t),e.push(r.toString())},transformReply(e){return{iterator:e[0],chunk:e[1]}}}});var Hyt=S(mM=>{"use strict";var e0=mM&&mM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mM,"__esModule",{value:!0});var Oyt=e0(yyt()),Dyt=e0(vyt()),Pyt=e0(Syt()),Lyt=e0(Tyt()),Myt=e0(byt()),kyt=e0(Iyt()),Byt=e0(oEe()),Uyt=e0(Cyt()),Fyt=e0(xyt()),$yt=e0(wyt()),qyt=e0(Nyt());mM.default={ADD:Oyt.default,add:Oyt.default,ADDNX:Dyt.default,addNX:Dyt.default,COUNT:Pyt.default,count:Pyt.default,DEL:Lyt.default,del:Lyt.default,EXISTS:Myt.default,exists:Myt.default,INFO:kyt.default,info:kyt.default,INSERT:Byt.default,insert:Byt.default,INSERTNX:Uyt.default,insertNX:Uyt.default,LOADCHUNK:Fyt.default,loadChunk:Fyt.default,RESERVE:$yt.default,reserve:$yt.default,SCANDUMP:qyt.default,scanDump:qyt.default}});var Vyt=S(fEe=>{"use strict";Object.defineProperty(fEe,"__esModule",{value:!0});fEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TDIGEST.ADD"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:void 0}});var hEe=S(gM=>{"use strict";Object.defineProperty(gM,"__esModule",{value:!0});gM.transformByRankArguments=void 0;var eKr=We();function jyt(e,t,r){e.pushKey(t);for(let n of r)e.push(n.toString())}gM.transformByRankArguments=jyt;gM.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TDIGEST.BYRANK"),jyt(...e)},transformReply:eKr.transformDoubleArrayReply}});var Kyt=S(sg=>{"use strict";var tKr=sg&&sg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rKr=sg&&sg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nKr=sg&&sg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tKr(t,e,r);return rKr(t,e),t};Object.defineProperty(sg,"__esModule",{value:!0});var pEe=nKr(hEe());sg.default={IS_READ_ONLY:pEe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TDIGEST.BYREVRANK"),(0,pEe.transformByRankArguments)(...e)},transformReply:pEe.default.transformReply}});var Gyt=S(mEe=>{"use strict";Object.defineProperty(mEe,"__esModule",{value:!0});var sKr=We();mEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TDIGEST.CDF"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:sKr.transformDoubleArrayReply}});var zyt=S(gEe=>{"use strict";Object.defineProperty(gEe,"__esModule",{value:!0});gEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TDIGEST.CREATE"),e.pushKey(t),r?.COMPRESSION!==void 0&&e.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var Yyt=S(_Ee=>{"use strict";Object.defineProperty(_Ee,"__esModule",{value:!0});var iKr=iC();_Ee.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,iKr.transformInfoV2Reply)(e,r),3:void 0}}});var Qyt=S(AEe=>{"use strict";Object.defineProperty(AEe,"__esModule",{value:!0});var aKr=We();AEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.MAX"),e.pushKey(t)},transformReply:aKr.transformDoubleReply}});var Wyt=S(EEe=>{"use strict";Object.defineProperty(EEe,"__esModule",{value:!0});EEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TDIGEST.MERGE"),e.pushKey(t),e.pushKeysLength(r),n?.COMPRESSION!==void 0&&e.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&e.push("OVERRIDE")},transformReply:void 0}});var Xyt=S(yEe=>{"use strict";Object.defineProperty(yEe,"__esModule",{value:!0});var oKr=We();yEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.MIN"),e.pushKey(t)},transformReply:oKr.transformDoubleReply}});var Jyt=S(vEe=>{"use strict";Object.defineProperty(vEe,"__esModule",{value:!0});var cKr=We();vEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TDIGEST.QUANTILE"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:cKr.transformDoubleArrayReply}});var SEe=S(_M=>{"use strict";Object.defineProperty(_M,"__esModule",{value:!0});_M.transformRankArguments=void 0;function Zyt(e,t,r){e.pushKey(t);for(let n of r)e.push(n.toString())}_M.transformRankArguments=Zyt;_M.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TDIGEST.RANK"),Zyt(...e)},transformReply:void 0}});var evt=S(TEe=>{"use strict";Object.defineProperty(TEe,"__esModule",{value:!0});TEe.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TDIGEST.RESET"),e.pushKey(t)},transformReply:void 0}});var tvt=S(ig=>{"use strict";var uKr=ig&&ig.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lKr=ig&&ig.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dKr=ig&&ig.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&uKr(t,e,r);return lKr(t,e),t};Object.defineProperty(ig,"__esModule",{value:!0});var bEe=dKr(SEe());ig.default={IS_READ_ONLY:bEe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TDIGEST.REVRANK"),(0,bEe.transformRankArguments)(...e)},transformReply:bEe.default.transformReply}});var rvt=S(IEe=>{"use strict";Object.defineProperty(IEe,"__esModule",{value:!0});var fKr=We();IEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("TDIGEST.TRIMMED_MEAN"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:fKr.transformDoubleReply}});var _vt=S(AM=>{"use strict";var Vu=AM&&AM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AM,"__esModule",{value:!0});var nvt=Vu(Vyt()),svt=Vu(hEe()),ivt=Vu(Kyt()),avt=Vu(Gyt()),ovt=Vu(zyt()),cvt=Vu(Yyt()),uvt=Vu(Qyt()),lvt=Vu(Wyt()),dvt=Vu(Xyt()),fvt=Vu(Jyt()),hvt=Vu(SEe()),pvt=Vu(evt()),mvt=Vu(tvt()),gvt=Vu(rvt());AM.default={ADD:nvt.default,add:nvt.default,BYRANK:svt.default,byRank:svt.default,BYREVRANK:ivt.default,byRevRank:ivt.default,CDF:avt.default,cdf:avt.default,CREATE:ovt.default,create:ovt.default,INFO:cvt.default,info:cvt.default,MAX:uvt.default,max:uvt.default,MERGE:lvt.default,merge:lvt.default,MIN:dvt.default,min:dvt.default,QUANTILE:fvt.default,quantile:fvt.default,RANK:hvt.default,rank:hvt.default,RESET:pvt.default,reset:pvt.default,REVRANK:mvt.default,revRank:mvt.default,TRIMMED_MEAN:gvt.default,trimmedMean:gvt.default}});var Avt=S(REe=>{"use strict";Object.defineProperty(REe,"__esModule",{value:!0});REe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TOPK.ADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Evt=S(CEe=>{"use strict";Object.defineProperty(CEe,"__esModule",{value:!0});CEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TOPK.COUNT"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var vvt=S(xEe=>{"use strict";Object.defineProperty(xEe,"__esModule",{value:!0});function yvt(e,{item:t,incrementBy:r}){e.push(t,r.toString())}xEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("TOPK.INCRBY"),e.pushKey(t),Array.isArray(r))for(let n of r)yvt(e,n);else yvt(e,r)},transformReply:void 0}});var Svt=S(wEe=>{"use strict";Object.defineProperty(wEe,"__esModule",{value:!0});var hKr=We(),pKr=iC();wEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(e[7]=hKr.transformDoubleReply[2](e[7],t,r),(0,pKr.transformInfoV2Reply)(e,r)),3:void 0}}});var Tvt=S(NEe=>{"use strict";Object.defineProperty(NEe,"__esModule",{value:!0});NEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.LIST"),e.pushKey(t),e.push("WITHCOUNT")},transformReply(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(OEe,"__esModule",{value:!0});OEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.LIST"),e.pushKey(t)},transformReply:void 0}});var Ivt=S(DEe=>{"use strict";Object.defineProperty(DEe,"__esModule",{value:!0});var mKr=We();DEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TOPK.QUERY"),e.pushKey(t),e.pushVariadic(r)},transformReply:mKr.transformBooleanArrayReply}});var Rvt=S(PEe=>{"use strict";Object.defineProperty(PEe,"__esModule",{value:!0});PEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TOPK.RESERVE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var Mvt=S(EM=>{"use strict";var rE=EM&&EM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(EM,"__esModule",{value:!0});var Cvt=rE(Avt()),xvt=rE(Evt()),wvt=rE(vvt()),Nvt=rE(Svt()),Ovt=rE(Tvt()),Dvt=rE(bvt()),Pvt=rE(Ivt()),Lvt=rE(Rvt());EM.default={ADD:Cvt.default,add:Cvt.default,COUNT:xvt.default,count:xvt.default,INCRBY:wvt.default,incrBy:wvt.default,INFO:Nvt.default,info:Nvt.default,LIST_WITHCOUNT:Ovt.default,listWithCount:Ovt.default,LIST:Dvt.default,list:Dvt.default,QUERY:Pvt.default,query:Pvt.default,RESERVE:Lvt.default,reserve:Lvt.default}});var kvt=S(yM=>{"use strict";var vM=yM&&yM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(yM,"__esModule",{value:!0});var gKr=vM(iC()),_Kr=vM(Eyt()),AKr=vM(Hyt()),EKr=vM(_vt()),yKr=vM(Mvt());yM.default={bf:gKr.default,cms:_Kr.default,cf:AKr.default,tDigest:EKr.default,topK:yKr.default}});var LEe=S(oC=>{"use strict";var vKr=oC&&oC.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oC,"__esModule",{value:!0});oC.default=void 0;var SKr=kvt();Object.defineProperty(oC,"default",{enumerable:!0,get:function(){return vKr(SKr).default}})});var Uvt=S(MEe=>{"use strict";Object.defineProperty(MEe,"__esModule",{value:!0});var Bvt=We();MEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,...s){e.push("JSON.ARRAPPEND"),e.pushKey(t),e.push(r,(0,Bvt.transformRedisJsonArgument)(n));for(let i=0;i{"use strict";Object.defineProperty(kEe,"__esModule",{value:!0});var TKr=We();kEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("JSON.ARRINDEX"),e.pushKey(t),e.push(r,(0,TKr.transformRedisJsonArgument)(n)),s?.range&&(e.push(s.range.start.toString()),s.range.stop!==void 0&&e.push(s.range.stop.toString()))},transformReply:void 0}});var qvt=S(BEe=>{"use strict";Object.defineProperty(BEe,"__esModule",{value:!0});var $vt=We();BEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,...i){e.push("JSON.ARRINSERT"),e.pushKey(t),e.push(r,n.toString(),(0,$vt.transformRedisJsonArgument)(s));for(let a=0;a{"use strict";Object.defineProperty(UEe,"__esModule",{value:!0});UEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.ARRLEN"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Vvt=S($Ee=>{"use strict";Object.defineProperty($Ee,"__esModule",{value:!0});var FEe=We();$Ee.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.ARRPOP"),e.pushKey(t),r&&(e.push(r.path),r.index!==void 0&&e.push(r.index.toString()))},transformReply(e){return(0,FEe.isArrayReply)(e)?e.map(t=>(0,FEe.transformRedisJsonNullReply)(t)):(0,FEe.transformRedisJsonNullReply)(e)}}});var jvt=S(qEe=>{"use strict";Object.defineProperty(qEe,"__esModule",{value:!0});qEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("JSON.ARRTRIM"),e.pushKey(t),e.push(r,n.toString(),s.toString())},transformReply:void 0}});var Kvt=S(HEe=>{"use strict";Object.defineProperty(HEe,"__esModule",{value:!0});HEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.CLEAR"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Gvt=S(VEe=>{"use strict";Object.defineProperty(VEe,"__esModule",{value:!0});VEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.DEBUG","MEMORY"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var zvt=S(jEe=>{"use strict";Object.defineProperty(jEe,"__esModule",{value:!0});jEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.DEL"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Yvt=S(KEe=>{"use strict";Object.defineProperty(KEe,"__esModule",{value:!0});KEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.FORGET"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Qvt=S(GEe=>{"use strict";Object.defineProperty(GEe,"__esModule",{value:!0});var bKr=We();GEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.GET"),e.pushKey(t),r?.path!==void 0&&e.pushVariadic(r.path)},transformReply:bKr.transformRedisJsonNullReply}});var Wvt=S(zEe=>{"use strict";Object.defineProperty(zEe,"__esModule",{value:!0});var IKr=We();zEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.MERGE"),e.pushKey(t),e.push(r,(0,IKr.transformRedisJsonArgument)(n))},transformReply:void 0}});var Xvt=S(YEe=>{"use strict";Object.defineProperty(YEe,"__esModule",{value:!0});var RKr=We();YEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.MGET"),e.pushKeys(t),e.push(r)},transformReply(e){return e.map(t=>(0,RKr.transformRedisJsonNullReply)(t))}}});var Jvt=S(QEe=>{"use strict";Object.defineProperty(QEe,"__esModule",{value:!0});var CKr=We();QEe.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(WEe,"__esModule",{value:!0});WEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.NUMINCRBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:{2:e=>JSON.parse(e.toString()),3:void 0}}});var Zvt=S(SM=>{"use strict";var xKr=SM&&SM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(SM,"__esModule",{value:!0});var wKr=xKr(XEe());SM.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.NUMMULTBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:wKr.default.transformReply}});var eSt=S(JEe=>{"use strict";Object.defineProperty(JEe,"__esModule",{value:!0});JEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.OBJKEYS"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var tSt=S(ZEe=>{"use strict";Object.defineProperty(ZEe,"__esModule",{value:!0});ZEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.OBJLEN"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var rSt=S(eye=>{"use strict";Object.defineProperty(eye,"__esModule",{value:!0});var NKr=We();eye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("JSON.SET"),e.pushKey(t),e.push(r,(0,NKr.transformRedisJsonArgument)(n)),s?.condition?e.push(s?.condition):s?.NX?e.push("NX"):s?.XX&&e.push("XX")},transformReply:void 0}});var nSt=S(tye=>{"use strict";Object.defineProperty(tye,"__esModule",{value:!0});var OKr=We();tye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.STRAPPEND"),e.pushKey(t),n?.path!==void 0&&e.push(n.path),e.push((0,OKr.transformRedisJsonArgument)(r))},transformReply:void 0}});var sSt=S(rye=>{"use strict";Object.defineProperty(rye,"__esModule",{value:!0});rye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.STRLEN"),e.pushKey(t),r?.path&&e.push(r.path)},transformReply:void 0}});var iSt=S(nye=>{"use strict";Object.defineProperty(nye,"__esModule",{value:!0});nye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.TOGGLE"),e.pushKey(t),e.push(r)},transformReply:void 0}});var aSt=S(sye=>{"use strict";Object.defineProperty(sye,"__esModule",{value:!0});sye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.TYPE"),e.pushKey(t),r?.path&&e.push(r.path)},transformReply:{2:void 0,3:e=>e[0]}}});var NSt=S(t0=>{"use strict";var mi=t0&&t0.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t0,"__esModule",{value:!0});t0.transformRedisJsonNullReply=t0.transformRedisJsonReply=t0.transformRedisJsonArgument=void 0;var oSt=mi(Uvt()),cSt=mi(Fvt()),uSt=mi(qvt()),lSt=mi(Hvt()),dSt=mi(Vvt()),fSt=mi(jvt()),hSt=mi(Kvt()),pSt=mi(Gvt()),mSt=mi(zvt()),gSt=mi(Yvt()),_St=mi(Qvt()),ASt=mi(Wvt()),ESt=mi(Xvt()),ySt=mi(Jvt()),vSt=mi(XEe()),SSt=mi(Zvt()),TSt=mi(eSt()),bSt=mi(tSt()),ISt=mi(rSt()),RSt=mi(nSt()),CSt=mi(sSt()),xSt=mi(iSt()),wSt=mi(aSt()),iye=We();Object.defineProperty(t0,"transformRedisJsonArgument",{enumerable:!0,get:function(){return iye.transformRedisJsonArgument}});Object.defineProperty(t0,"transformRedisJsonReply",{enumerable:!0,get:function(){return iye.transformRedisJsonReply}});Object.defineProperty(t0,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return iye.transformRedisJsonNullReply}});t0.default={ARRAPPEND:oSt.default,arrAppend:oSt.default,ARRINDEX:cSt.default,arrIndex:cSt.default,ARRINSERT:uSt.default,arrInsert:uSt.default,ARRLEN:lSt.default,arrLen:lSt.default,ARRPOP:dSt.default,arrPop:dSt.default,ARRTRIM:fSt.default,arrTrim:fSt.default,CLEAR:hSt.default,clear:hSt.default,DEBUG_MEMORY:pSt.default,debugMemory:pSt.default,DEL:mSt.default,del:mSt.default,FORGET:gSt.default,forget:gSt.default,GET:_St.default,get:_St.default,MERGE:ASt.default,merge:ASt.default,MGET:ESt.default,mGet:ESt.default,MSET:ySt.default,mSet:ySt.default,NUMINCRBY:vSt.default,numIncrBy:vSt.default,NUMMULTBY:SSt.default,numMultBy:SSt.default,OBJKEYS:TSt.default,objKeys:TSt.default,OBJLEN:bSt.default,objLen:bSt.default,SET:ISt.default,set:ISt.default,STRAPPEND:RSt.default,strAppend:RSt.default,STRLEN:CSt.default,strLen:CSt.default,TOGGLE:xSt.default,toggle:xSt.default,TYPE:wSt.default,type:wSt.default}});var aye=S(cC=>{"use strict";var DKr=cC&&cC.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cC,"__esModule",{value:!0});cC.default=void 0;var PKr=NSt();Object.defineProperty(cC,"default",{enumerable:!0,get:function(){return DKr(PKr).default}})});var OSt=S(oye=>{"use strict";Object.defineProperty(oye,"__esModule",{value:!0});oye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var bq=S(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.REDISEARCH_LANGUAGE=Ls.parseSchema=Ls.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Ls.VAMANA_COMPRESSION_ALGORITHM=Ls.SCHEMA_VECTOR_FIELD_ALGORITHM=Ls.SCHEMA_TEXT_FIELD_PHONETIC=Ls.SCHEMA_FIELD_TYPE=void 0;var DSt=We();Ls.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Ls.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Ls.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Ls.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Ls.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function cye(e,t){t.SORTABLE&&(e.push("SORTABLE"),t.SORTABLE==="UNF"&&e.push("UNF")),t.NOINDEX&&e.push("NOINDEX")}function PSt(e,t){for(let[r,n]of Object.entries(t)){let s=Array.isArray(n)?n:[n];for(let i of s){if(e.push(r),typeof i=="string"){e.push(i);continue}switch(i.AS&&e.push("AS",i.AS),e.push(i.type),i.INDEXMISSING&&e.push("INDEXMISSING"),i.type){case Ls.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&e.push("NOSTEM"),i.WEIGHT!==void 0&&e.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&e.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&e.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&e.push("INDEXEMPTY"),cye(e,i);break;case Ls.SCHEMA_FIELD_TYPE.NUMERIC:case Ls.SCHEMA_FIELD_TYPE.GEO:cye(e,i);break;case Ls.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&e.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&e.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&e.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&e.push("INDEXEMPTY"),cye(e,i);break;case Ls.SCHEMA_FIELD_TYPE.VECTOR:e.push(i.ALGORITHM);let a=[];switch(a.push("TYPE",i.TYPE,"DIM",i.DIM.toString(),"DISTANCE_METRIC",i.DISTANCE_METRIC),i.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",i.INITIAL_CAP.toString()),i.ALGORITHM){case Ls.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case Ls.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:i.M!==void 0&&a.push("M",i.M.toString()),i.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",i.EF_CONSTRUCTION.toString()),i.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",i.EF_RUNTIME.toString());break;case Ls.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:i.COMPRESSION&&a.push("COMPRESSION",i.COMPRESSION),i.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",i.CONSTRUCTION_WINDOW_SIZE.toString()),i.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",i.GRAPH_MAX_DEGREE.toString()),i.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",i.SEARCH_WINDOW_SIZE.toString()),i.EPSILON!==void 0&&a.push("EPSILON",i.EPSILON.toString()),i.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",i.TRAINING_THRESHOLD.toString()),i.REDUCE!==void 0&&a.push("REDUCE",i.REDUCE.toString());break}e.pushVariadicWithLength(a);break;case Ls.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&e.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}Ls.parseSchema=PSt;Ls.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};Ls.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.CREATE",t),n?.ON&&e.push("ON",n.ON),(0,DSt.parseOptionalVariadicArgument)(e,"PREFIX",n?.PREFIX),n?.FILTER&&e.push("FILTER",n.FILTER),n?.LANGUAGE&&e.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&e.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&e.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&e.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&e.push("MAXTEXTFIELDS"),n?.TEMPORARY&&e.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&e.push("NOOFFSETS"),n?.NOHL&&e.push("NOHL"),n?.NOFIELDS&&e.push("NOFIELDS"),n?.NOFREQS&&e.push("NOFREQS"),n?.SKIPINITIALSCAN&&e.push("SKIPINITIALSCAN"),(0,DSt.parseOptionalVariadicArgument)(e,"STOPWORDS",n?.STOPWORDS),e.push("SCHEMA"),PSt(e,r)},transformReply:void 0}});var LSt=S(uye=>{"use strict";Object.defineProperty(uye,"__esModule",{value:!0});var LKr=bq();uye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALTER",t,"SCHEMA","ADD"),(0,LKr.parseSchema)(e,r)},transformReply:void 0}});var uC=S(Iq=>{"use strict";Object.defineProperty(Iq,"__esModule",{value:!0});Iq.DEFAULT_DIALECT=void 0;Iq.DEFAULT_DIALECT="2"});var LS=S(PS=>{"use strict";Object.defineProperty(PS,"__esModule",{value:!0});PS.parseSearchOptions=PS.parseParamsArgument=void 0;var TM=We(),MKr=uC();function MSt(e,t){if(t){e.push("PARAMS");let r=[];for(let n in t){if(!Object.hasOwn(t,n))continue;let s=t[n];r.push(n,typeof s=="number"?s.toString():s)}e.pushVariadicWithLength(r)}}PS.parseParamsArgument=MSt;function kSt(e,t){t?.VERBATIM&&e.push("VERBATIM"),t?.NOSTOPWORDS&&e.push("NOSTOPWORDS"),(0,TM.parseOptionalVariadicArgument)(e,"INKEYS",t?.INKEYS),(0,TM.parseOptionalVariadicArgument)(e,"INFIELDS",t?.INFIELDS),(0,TM.parseOptionalVariadicArgument)(e,"RETURN",t?.RETURN),t?.SUMMARIZE&&(e.push("SUMMARIZE"),typeof t.SUMMARIZE=="object"&&((0,TM.parseOptionalVariadicArgument)(e,"FIELDS",t.SUMMARIZE.FIELDS),t.SUMMARIZE.FRAGS!==void 0&&e.push("FRAGS",t.SUMMARIZE.FRAGS.toString()),t.SUMMARIZE.LEN!==void 0&&e.push("LEN",t.SUMMARIZE.LEN.toString()),t.SUMMARIZE.SEPARATOR!==void 0&&e.push("SEPARATOR",t.SUMMARIZE.SEPARATOR))),t?.HIGHLIGHT&&(e.push("HIGHLIGHT"),typeof t.HIGHLIGHT=="object"&&((0,TM.parseOptionalVariadicArgument)(e,"FIELDS",t.HIGHLIGHT.FIELDS),t.HIGHLIGHT.TAGS&&e.push("TAGS",t.HIGHLIGHT.TAGS.open,t.HIGHLIGHT.TAGS.close))),t?.SLOP!==void 0&&e.push("SLOP",t.SLOP.toString()),t?.TIMEOUT!==void 0&&e.push("TIMEOUT",t.TIMEOUT.toString()),t?.INORDER&&e.push("INORDER"),t?.LANGUAGE&&e.push("LANGUAGE",t.LANGUAGE),t?.EXPANDER&&e.push("EXPANDER",t.EXPANDER),t?.SCORER&&e.push("SCORER",t.SCORER),t?.SORTBY&&(e.push("SORTBY"),typeof t.SORTBY=="string"||t.SORTBY instanceof Buffer?e.push(t.SORTBY):(e.push(t.SORTBY.BY),t.SORTBY.DIRECTION&&e.push(t.SORTBY.DIRECTION))),t?.LIMIT&&e.push("LIMIT",t.LIMIT.from.toString(),t.LIMIT.size.toString()),MSt(e,t?.PARAMS),t?.DIALECT?e.push("DIALECT",t.DIALECT.toString()):e.push("DIALECT",MKr.DEFAULT_DIALECT)}PS.parseSearchOptions=kSt;PS.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.SEARCH",t,r),kSt(e,n)},transformReply:{2:e=>{let t=e.length>2&&!Array.isArray(e[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.parseGroupByReducer=hs.parseAggregateOptions=hs.FT_AGGREGATE_GROUP_BY_REDUCERS=hs.FT_AGGREGATE_STEPS=void 0;var BKr=LS(),UKr=We(),FKr=uC();hs.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};hs.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};hs.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r,n){return e.push("FT.AGGREGATE",t,r),FSt(e,n)},transformReply:{2:(e,t,r)=>{let n=[];for(let s=1;s{"use strict";var $Kr=bM&&bM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bM,"__esModule",{value:!0});var dye=$Kr(lC());bM.default={IS_READ_ONLY:dye.default.IS_READ_ONLY,parseCommand(e,t,r,n){dye.default.parseCommand(e,t,r,n),e.push("WITHCURSOR"),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&e.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:e=>({...dye.default.transformReply[2](e[0]),cursor:e[1]}),3:void 0},unstableResp3:!0}});var $St=S(hye=>{"use strict";Object.defineProperty(hye,"__esModule",{value:!0});hye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALIASADD",t,r)},transformReply:void 0}});var qSt=S(pye=>{"use strict";Object.defineProperty(pye,"__esModule",{value:!0});pye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.ALIASDEL",t)},transformReply:void 0}});var HSt=S(mye=>{"use strict";Object.defineProperty(mye,"__esModule",{value:!0});mye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALIASUPDATE",t,r)},transformReply:void 0}});var VSt=S(gye=>{"use strict";Object.defineProperty(gye,"__esModule",{value:!0});gye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.CONFIG","GET",t)},transformReply(e){let t=Object.create(null);for(let r of e){let[n,s]=r;t[n.toString()]=s}return t}}});var jSt=S(_ye=>{"use strict";Object.defineProperty(_ye,"__esModule",{value:!0});_ye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.CONFIG","SET",t,r)},transformReply:void 0}});var KSt=S(Aye=>{"use strict";Object.defineProperty(Aye,"__esModule",{value:!0});Aye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.CURSOR","DEL",t,r.toString())},transformReply:void 0}});var GSt=S(IM=>{"use strict";var qKr=IM&&IM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(IM,"__esModule",{value:!0});var HKr=qKr(fye());IM.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.CURSOR","READ",t,r.toString()),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString())},transformReply:HKr.default.transformReply,unstableResp3:!0}});var zSt=S(Eye=>{"use strict";Object.defineProperty(Eye,"__esModule",{value:!0});Eye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DICTADD",t),e.pushVariadic(r)},transformReply:void 0}});var YSt=S(yye=>{"use strict";Object.defineProperty(yye,"__esModule",{value:!0});yye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DICTDEL",t),e.pushVariadic(r)},transformReply:void 0}});var QSt=S(vye=>{"use strict";Object.defineProperty(vye,"__esModule",{value:!0});vye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.DICTDUMP",t)},transformReply:{2:void 0,3:void 0}}});var WSt=S(Sye=>{"use strict";Object.defineProperty(Sye,"__esModule",{value:!0});Sye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DROPINDEX",t),r?.DD&&e.push("DD")},transformReply:{2:void 0,3:void 0}}});var XSt=S(Tye=>{"use strict";Object.defineProperty(Tye,"__esModule",{value:!0});var VKr=LS(),jKr=uC();Tye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.EXPLAIN",t,r),(0,VKr.parseParamsArgument)(e,n?.PARAMS),n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",jKr.DEFAULT_DIALECT)},transformReply:void 0}});var JSt=S(bye=>{"use strict";Object.defineProperty(bye,"__esModule",{value:!0});var KKr=uC();bye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.EXPLAINCLI",t,r),n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",KKr.DEFAULT_DIALECT)},transformReply:void 0}});var tTt=S(r0=>{"use strict";Object.defineProperty(r0,"__esModule",{value:!0});r0.FT_HYBRID_COMBINE_METHOD=r0.FT_HYBRID_VECTOR_METHOD=void 0;var ZSt=We(),GKr=LS(),zKr=lC();r0.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};r0.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function YKr(e,t){e.push("SEARCH",t.query),t.SCORER&&e.push("SCORER",t.SCORER),t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}function QKr(e,t){if(e.push("VSIM",t.field,t.vector),t.method){if(t.method.type===r0.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;t.method.EF_RUNTIME!==void 0&&(r+=2),e.push("KNN",r.toString(),"K",t.method.K.toString()),t.method.EF_RUNTIME!==void 0&&e.push("EF_RUNTIME",t.method.EF_RUNTIME.toString())}if(t.method.type===r0.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;t.method.EPSILON!==void 0&&(r+=2),e.push("RANGE",r.toString(),"RADIUS",t.method.RADIUS.toString()),t.method.EPSILON!==void 0&&e.push("EPSILON",t.method.EPSILON.toString())}}t.FILTER&&e.push("FILTER",t.FILTER),t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}function WKr(e,t){if(t){if(e.push("COMBINE"),t.method.type===r0.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;t.method.WINDOW!==void 0&&(r+=2),t.method.CONSTANT!==void 0&&(r+=2),t.YIELD_SCORE_AS&&(r+=2),e.push("RRF",r.toString()),t.method.WINDOW!==void 0&&e.push("WINDOW",t.method.WINDOW.toString()),t.method.CONSTANT!==void 0&&e.push("CONSTANT",t.method.CONSTANT.toString())}if(t.method.type===r0.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;t.method.ALPHA!==void 0&&(r+=2),t.method.BETA!==void 0&&(r+=2),t.method.WINDOW!==void 0&&(r+=2),t.YIELD_SCORE_AS&&(r+=2),e.push("LINEAR",r.toString()),t.method.ALPHA!==void 0&&e.push("ALPHA",t.method.ALPHA.toString()),t.method.BETA!==void 0&&e.push("BETA",t.method.BETA.toString()),t.method.WINDOW!==void 0&&e.push("WINDOW",t.method.WINDOW.toString())}t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}}function XKr(e,t){e.push("APPLY",t.expression),t.AS&&e.push("AS",t.AS)}function JKr(e,t){if(YKr(e,t.SEARCH),QKr(e,t.VSIM),t.COMBINE&&WKr(e,t.COMBINE),t.LOAD&&(t.LOAD==="*"?e.push("LOAD","*"):(0,ZSt.parseOptionalVariadicArgument)(e,"LOAD",t.LOAD)),t.GROUPBY&&((0,ZSt.parseOptionalVariadicArgument)(e,"GROUPBY",t.GROUPBY.fields),t.GROUPBY.REDUCE)){let n=Array.isArray(t.GROUPBY.REDUCE)?t.GROUPBY.REDUCE:[t.GROUPBY.REDUCE];for(let s of n)(0,zKr.parseGroupByReducer)(e,s)}if(t.APPLY){let n=Array.isArray(t.APPLY)?t.APPLY:[t.APPLY];for(let s of n)XKr(e,s)}if(t.SORTBY){let n=t.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);e.push("SORTBY",n.toString());for(let s of t.SORTBY.fields)e.push(s.field),s.direction&&e.push(s.direction)}t.NOSORT&&e.push("NOSORT"),t.FILTER&&e.push("FILTER",t.FILTER),t.LIMIT&&e.push("LIMIT",t.LIMIT.offset.toString(),t.LIMIT.count.toString());let r=t.PARAMS&&Object.keys(t.PARAMS).length>0;(0,GKr.parseParamsArgument)(e,r?t.PARAMS:void 0),t.TIMEOUT!==void 0&&e.push("TIMEOUT",t.TIMEOUT.toString())}r0.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.HYBRID",t),JKr(e,r)},transformReply:{2:e=>ZKr(e),3:void 0},unstableResp3:!0};function ZKr(e){let t=eTt(e),r=t.total_results??0,n=t.results??[],s=t.warnings??[],i=t.execution_time?Number.parseFloat(t.execution_time):0,a=[];for(let o of n){let c=eTt(o),u=Object.create(null);for(let[l,d]of Object.entries(c))if(l==="$")try{Object.assign(u,JSON.parse(d))}catch{u[l]=d}else u[l]=d;a.push(u)}return{totalResults:r,executionTime:i,warnings:s,results:a}}function eTt(e){let t={};if(!Array.isArray(e))return t;for(let r=0;r{"use strict";Object.defineProperty(Rye,"__esModule",{value:!0});var Iye=We();Rye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.INFO",t)},transformReply:{2:eGr,3:void 0},unstableResp3:!0};function eGr(e,t,r){let n=(0,Iye.createTransformTuplesReplyFunc)(t,r),s={};for(let i=0;in(o));break;case"gc_stats":{let o={},c=e[i+1];for(let u=0;u{"use strict";var tGr=ag&&ag.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rGr=ag&&ag.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nGr=ag&&ag.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tGr(t,e,r);return rGr(t,e),t};Object.defineProperty(ag,"__esModule",{value:!0});var nTt=nGr(LS());ag.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.PROFILE",t,"SEARCH"),n?.LIMITED&&e.push("LIMITED"),e.push("QUERY",r),(0,nTt.parseSearchOptions)(e,n)},transformReply:{2:e=>({results:nTt.default.transformReply[2](e[0]),profile:e[1]}),3:e=>e},unstableResp3:!0}});var aTt=S(og=>{"use strict";var sGr=og&&og.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),iGr=og&&og.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),aGr=og&&og.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&sGr(t,e,r);return iGr(t,e),t};Object.defineProperty(og,"__esModule",{value:!0});var iTt=aGr(lC());og.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.PROFILE",t,"AGGREGATE"),n?.LIMITED&&e.push("LIMITED"),e.push("QUERY",r),(0,iTt.parseAggregateOptions)(e,n)},transformReply:{2:e=>({results:iTt.default.transformReply[2](e[0]),profile:e[1]}),3:e=>e},unstableResp3:!0}});var oTt=S(RM=>{"use strict";var oGr=RM&&RM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RM,"__esModule",{value:!0});var Cye=oGr(LS());RM.default={NOT_KEYED_COMMAND:Cye.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Cye.default.IS_READ_ONLY,parseCommand(...e){Cye.default.parseCommand(...e),e[0].push("NOCONTENT")},transformReply:{2:e=>({total:e[0],documents:e.slice(1)}),3:void 0},unstableResp3:!0}});var uTt=S(xye=>{"use strict";Object.defineProperty(xye,"__esModule",{value:!0});var cGr=uC();xye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){if(e.push("FT.SPELLCHECK",t,r),n?.DISTANCE&&e.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)cTt(e,s);else cTt(e,n.TERMS);n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",cGr.DEFAULT_DIALECT)},transformReply:{2:e=>e.map(([,t,r])=>({term:t,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function cTt(e,{mode:t,dictionary:r}){e.push("TERMS",t,r)}});var lTt=S(wye=>{"use strict";Object.defineProperty(wye,"__esModule",{value:!0});wye.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("FT.SUGADD"),e.pushKey(t),e.push(r,n.toString()),s?.INCR&&e.push("INCR"),s?.PAYLOAD&&e.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var dTt=S(Nye=>{"use strict";Object.defineProperty(Nye,"__esModule",{value:!0});Nye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.SUGDEL"),e.pushKey(t),e.push(r)},transformReply:void 0}});var CM=S(Oye=>{"use strict";Object.defineProperty(Oye,"__esModule",{value:!0});Oye.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.SUGGET"),e.pushKey(t),e.push(r),n?.FUZZY&&e.push("FUZZY"),n?.MAX!==void 0&&e.push("MAX",n.MAX.toString())},transformReply:void 0}});var hTt=S(xM=>{"use strict";var uGr=xM&&xM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xM,"__esModule",{value:!0});var lGr=We(),fTt=uGr(CM());xM.default={IS_READ_ONLY:fTt.default.IS_READ_ONLY,parseCommand(...e){fTt.default.parseCommand(...e),e[0].push("WITHPAYLOADS")},transformReply(e){if((0,lGr.isNullReply)(e))return null;let t=new Array(e.length/2),r=0,n=0;for(;r{"use strict";var dGr=wM&&wM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wM,"__esModule",{value:!0});var Dye=We(),pTt=dGr(CM());wM.default={IS_READ_ONLY:pTt.default.IS_READ_ONLY,parseCommand(...e){pTt.default.parseCommand(...e),e[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(e,t,r)=>{if((0,Dye.isNullReply)(e))return null;let n=new Array(e.length/3),s=0,i=0;for(;s{if((0,Dye.isNullReply)(e))return null;let t=new Array(e.length/3),r=0,n=0;for(;r{"use strict";var fGr=NM&&NM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NM,"__esModule",{value:!0});var Pye=We(),gTt=fGr(CM());NM.default={IS_READ_ONLY:gTt.default.IS_READ_ONLY,parseCommand(...e){gTt.default.parseCommand(...e),e[0].push("WITHSCORES")},transformReply:{2:(e,t,r)=>{if((0,Pye.isNullReply)(e))return null;let n=new Array(e.length/2),s=0,i=0;for(;s{if((0,Pye.isNullReply)(e))return null;let t=new Array(e.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(Lye,"__esModule",{value:!0});Lye.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.SUGLEN",t)},transformReply:void 0}});var ETt=S(Mye=>{"use strict";Object.defineProperty(Mye,"__esModule",{value:!0});Mye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.SYNDUMP",t)},transformReply:{2:e=>{let t={},r=0;for(;r{"use strict";Object.defineProperty(kye,"__esModule",{value:!0});kye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("FT.SYNUPDATE",t,r),s?.SKIPINITIALSCAN&&e.push("SKIPINITIALSCAN"),e.pushVariadic(n)},transformReply:void 0}});var vTt=S(Bye=>{"use strict";Object.defineProperty(Bye,"__esModule",{value:!0});Bye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.TAGVALS",t,r)},transformReply:{2:void 0,3:void 0}}});var nbt=S(OM=>{"use strict";var ln=OM&&OM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OM,"__esModule",{value:!0});var STt=ln(OSt()),TTt=ln(LSt()),bTt=ln(fye()),ITt=ln(lC()),RTt=ln($St()),CTt=ln(qSt()),xTt=ln(HSt()),wTt=ln(VSt()),NTt=ln(jSt()),OTt=ln(bq()),DTt=ln(KSt()),PTt=ln(GSt()),LTt=ln(zSt()),MTt=ln(YSt()),kTt=ln(QSt()),BTt=ln(WSt()),UTt=ln(XSt()),FTt=ln(JSt()),$Tt=ln(tTt()),qTt=ln(rTt()),HTt=ln(sTt()),VTt=ln(aTt()),jTt=ln(oTt()),KTt=ln(LS()),GTt=ln(uTt()),zTt=ln(lTt()),YTt=ln(dTt()),QTt=ln(hTt()),WTt=ln(mTt()),XTt=ln(_Tt()),JTt=ln(CM()),ZTt=ln(ATt()),ebt=ln(ETt()),tbt=ln(yTt()),rbt=ln(vTt());OM.default={_LIST:STt.default,_list:STt.default,ALTER:TTt.default,alter:TTt.default,AGGREGATE_WITHCURSOR:bTt.default,aggregateWithCursor:bTt.default,AGGREGATE:ITt.default,aggregate:ITt.default,ALIASADD:RTt.default,aliasAdd:RTt.default,ALIASDEL:CTt.default,aliasDel:CTt.default,ALIASUPDATE:xTt.default,aliasUpdate:xTt.default,CONFIG_GET:wTt.default,configGet:wTt.default,CONFIG_SET:NTt.default,configSet:NTt.default,CREATE:OTt.default,create:OTt.default,CURSOR_DEL:DTt.default,cursorDel:DTt.default,CURSOR_READ:PTt.default,cursorRead:PTt.default,DICTADD:LTt.default,dictAdd:LTt.default,DICTDEL:MTt.default,dictDel:MTt.default,DICTDUMP:kTt.default,dictDump:kTt.default,DROPINDEX:BTt.default,dropIndex:BTt.default,EXPLAIN:UTt.default,explain:UTt.default,EXPLAINCLI:FTt.default,explainCli:FTt.default,HYBRID:$Tt.default,hybrid:$Tt.default,INFO:qTt.default,info:qTt.default,PROFILESEARCH:HTt.default,profileSearch:HTt.default,PROFILEAGGREGATE:VTt.default,profileAggregate:VTt.default,SEARCH_NOCONTENT:jTt.default,searchNoContent:jTt.default,SEARCH:KTt.default,search:KTt.default,SPELLCHECK:GTt.default,spellCheck:GTt.default,SUGADD:zTt.default,sugAdd:zTt.default,SUGDEL:YTt.default,sugDel:YTt.default,SUGGET_WITHPAYLOADS:QTt.default,sugGetWithPayloads:QTt.default,SUGGET_WITHSCORES_WITHPAYLOADS:WTt.default,sugGetWithScoresWithPayloads:WTt.default,SUGGET_WITHSCORES:XTt.default,sugGetWithScores:XTt.default,SUGGET:JTt.default,sugGet:JTt.default,SUGLEN:ZTt.default,sugLen:ZTt.default,SYNDUMP:ebt.default,synDump:ebt.default,SYNUPDATE:tbt.default,synUpdate:tbt.default,TAGVALS:rbt.default,tagVals:rbt.default}});var Uye=S(Ha=>{"use strict";var hGr=Ha&&Ha.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ha,"__esModule",{value:!0});Ha.FT_AGGREGATE_STEPS=Ha.FT_AGGREGATE_GROUP_BY_REDUCERS=Ha.SCHEMA_VECTOR_FIELD_ALGORITHM=Ha.SCHEMA_TEXT_FIELD_PHONETIC=Ha.SCHEMA_FIELD_TYPE=Ha.REDISEARCH_LANGUAGE=Ha.default=void 0;var pGr=nbt();Object.defineProperty(Ha,"default",{enumerable:!0,get:function(){return hGr(pGr).default}});var Rq=bq();Object.defineProperty(Ha,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return Rq.REDISEARCH_LANGUAGE}});Object.defineProperty(Ha,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return Rq.SCHEMA_FIELD_TYPE}});Object.defineProperty(Ha,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return Rq.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(Ha,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return Rq.SCHEMA_VECTOR_FIELD_ALGORITHM}});var sbt=lC();Object.defineProperty(Ha,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return sbt.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(Ha,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return sbt.FT_AGGREGATE_STEPS}})});var Va=S(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.transformRESP2LabelsWithSources=Zr.transformRESP2Labels=Zr.parseSelectedLabelsArguments=Zr.resp3MapToValue=Zr.resp2MapToValue=Zr.transformSamplesReply=Zr.transformSampleReply=Zr.parseLabelsArgument=Zr.transformTimestampArgument=Zr.parseDuplicatePolicy=Zr.TIME_SERIES_DUPLICATE_POLICIES=Zr.parseChunkSizeArgument=Zr.parseEncodingArgument=Zr.TIME_SERIES_ENCODING=Zr.parseRetentionArgument=Zr.parseIgnoreArgument=void 0;var Fye=fM();function mGr(e,t){t!==void 0&&e.push("IGNORE",t.maxTimeDiff.toString(),t.maxValDiff.toString())}Zr.parseIgnoreArgument=mGr;function gGr(e,t){t!==void 0&&e.push("RETENTION",t.toString())}Zr.parseRetentionArgument=gGr;Zr.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function _Gr(e,t){t!==void 0&&e.push("ENCODING",t)}Zr.parseEncodingArgument=_Gr;function AGr(e,t){t!==void 0&&e.push("CHUNK_SIZE",t.toString())}Zr.parseChunkSizeArgument=AGr;Zr.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function EGr(e,t){t!==void 0&&e.push("DUPLICATE_POLICY",t)}Zr.parseDuplicatePolicy=EGr;function yGr(e){return typeof e=="string"?e:(typeof e=="number"?e:e.getTime()).toString()}Zr.transformTimestampArgument=yGr;function vGr(e,t){if(t){e.push("LABELS");for(let[r,n]of Object.entries(t))e.push(r,n)}}Zr.parseLabelsArgument=vGr;Zr.transformSampleReply={2(e){let[t,r]=e;return{timestamp:t,value:Number(r)}},3(e){let[t,r]=e;return{timestamp:t,value:r}}};Zr.transformSamplesReply={2(e){return e.map(t=>Zr.transformSampleReply[2](t))},3(e){return e.map(t=>Zr.transformSampleReply[3](t))}};function SGr(e,t,r){let n=e;switch(r?.[Fye.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),t(a))}return s}case Array:{for(let s of n){let i=s;i[1]=t(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=t(a)}return s}}}Zr.resp2MapToValue=SGr;function TGr(e,t){let r=e;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty($ye,"__esModule",{value:!0});var dC=Va();$ye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("TS.ADD"),e.pushKey(t),e.push((0,dC.transformTimestampArgument)(r),n.toString()),(0,dC.parseRetentionArgument)(e,s?.RETENTION),(0,dC.parseEncodingArgument)(e,s?.ENCODING),(0,dC.parseChunkSizeArgument)(e,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&e.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,dC.parseLabelsArgument)(e,s?.LABELS),(0,dC.parseIgnoreArgument)(e,s?.IGNORE)},transformReply:void 0}});var abt=S(qye=>{"use strict";Object.defineProperty(qye,"__esModule",{value:!0});var DM=Va();qye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.ALTER"),e.pushKey(t),(0,DM.parseRetentionArgument)(e,r?.RETENTION),(0,DM.parseChunkSizeArgument)(e,r?.CHUNK_SIZE),(0,DM.parseDuplicatePolicy)(e,r?.DUPLICATE_POLICY),(0,DM.parseLabelsArgument)(e,r?.LABELS),(0,DM.parseIgnoreArgument)(e,r?.IGNORE)},transformReply:void 0}});var obt=S(Hye=>{"use strict";Object.defineProperty(Hye,"__esModule",{value:!0});var fC=Va();Hye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.CREATE"),e.pushKey(t),(0,fC.parseRetentionArgument)(e,r?.RETENTION),(0,fC.parseEncodingArgument)(e,r?.ENCODING),(0,fC.parseChunkSizeArgument)(e,r?.CHUNK_SIZE),(0,fC.parseDuplicatePolicy)(e,r?.DUPLICATE_POLICY),(0,fC.parseLabelsArgument)(e,r?.LABELS),(0,fC.parseIgnoreArgument)(e,r?.IGNORE)},transformReply:void 0}});var Vye=S(PM=>{"use strict";Object.defineProperty(PM,"__esModule",{value:!0});PM.TIME_SERIES_AGGREGATION_TYPE=void 0;PM.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};PM.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("TS.CREATERULE"),e.pushKeys([t,r]),e.push("AGGREGATION",n,s.toString()),i!==void 0&&e.push(i.toString())},transformReply:void 0}});var jye=S(MM=>{"use strict";Object.defineProperty(MM,"__esModule",{value:!0});MM.parseIncrByArguments=void 0;var LM=Va();function cbt(e,t,r,n){e.pushKey(t),e.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&e.push("TIMESTAMP",(0,LM.transformTimestampArgument)(n.TIMESTAMP)),(0,LM.parseRetentionArgument)(e,n?.RETENTION),n?.UNCOMPRESSED&&e.push("UNCOMPRESSED"),(0,LM.parseChunkSizeArgument)(e,n?.CHUNK_SIZE),(0,LM.parseLabelsArgument)(e,n?.LABELS),(0,LM.parseIgnoreArgument)(e,n?.IGNORE)}MM.parseIncrByArguments=cbt;MM.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("TS.INCRBY"),cbt(...e)},transformReply:void 0}});var ubt=S(cg=>{"use strict";var xGr=cg&&cg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wGr=cg&&cg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),NGr=cg&&cg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&xGr(t,e,r);return wGr(t,e),t};Object.defineProperty(cg,"__esModule",{value:!0});var Kye=NGr(jye());cg.default={IS_READ_ONLY:Kye.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TS.DECRBY"),(0,Kye.parseIncrByArguments)(...e)},transformReply:Kye.default.transformReply}});var dbt=S(Gye=>{"use strict";Object.defineProperty(Gye,"__esModule",{value:!0});var lbt=Va();Gye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TS.DEL"),e.pushKey(t),e.push((0,lbt.transformTimestampArgument)(r),(0,lbt.transformTimestampArgument)(n))},transformReply:void 0}});var fbt=S(zye=>{"use strict";Object.defineProperty(zye,"__esModule",{value:!0});zye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.DELETERULE"),e.pushKeys([t,r])},transformReply:void 0}});var hbt=S(Yye=>{"use strict";Object.defineProperty(Yye,"__esModule",{value:!0});Yye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.GET"),e.pushKey(t),r?.LATEST&&e.push("LATEST")},transformReply:{2(e){return e.length===0?null:{timestamp:e[0],value:Number(e[1])}},3(e){return e.length===0?null:{timestamp:e[0],value:e[1]}}}}});var Wye=S(Qye=>{"use strict";Object.defineProperty(Qye,"__esModule",{value:!0});var OGr=We();Qye.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TS.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>{let n={};for(let s=0;s({name:a,value:o}));break;case"rules":n[i]=e[s+1].map(([a,o,c])=>({key:a,timeBucket:o,aggregationType:c}));break;case"ignoreMaxValDiff":n[i]=OGr.transformDoubleReply[2](e[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var pbt=S(kM=>{"use strict";var DGr=kM&&kM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kM,"__esModule",{value:!0});var Xye=DGr(Wye());kM.default={IS_READ_ONLY:Xye.default.IS_READ_ONLY,parseCommand(e,t){Xye.default.parseCommand(e,t),e.push("DEBUG")},transformReply:{2:(e,t,r)=>{let n=Xye.default.transformReply[2](e,t,r);for(let s=0;s({startTimestamp:a[1],endTimestamp:a[3],samples:a[5],size:a[7],bytesPerSample:a[9]}));break}}}return n},3:void 0},unstableResp3:!0}});var mbt=S(Jye=>{"use strict";Object.defineProperty(Jye,"__esModule",{value:!0});var PGr=Va();Jye.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of t)e.pushKey(r),e.push((0,PGr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var Kh=S(MS=>{"use strict";Object.defineProperty(MS,"__esModule",{value:!0});MS.parseFilterArgument=MS.parseLatestArgument=void 0;var Cq=Va();function gbt(e,t){t&&e.push("LATEST")}MS.parseLatestArgument=gbt;function _bt(e,t){e.push("FILTER"),e.pushVariadic(t)}MS.parseFilterArgument=_bt;MS.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.MGET"),gbt(e,r?.LATEST),_bt(e,t)},transformReply:{2(e,t,r){return(0,Cq.resp2MapToValue)(e,([,,n])=>({sample:Cq.transformSampleReply[2](n)}),r)},3(e){return(0,Cq.resp3MapToValue)(e,([,t])=>({sample:Cq.transformSampleReply[3](t)}))}}}});var Zye=S(UM=>{"use strict";Object.defineProperty(UM,"__esModule",{value:!0});UM.createTransformMGetLabelsReply=void 0;var Abt=Kh(),BM=Va();function Ebt(){return{2(e,t,r){return(0,BM.resp2MapToValue)(e,([,n,s])=>({labels:(0,BM.transformRESP2Labels)(n),sample:BM.transformSampleReply[2](s)}),r)},3(e){return(0,BM.resp3MapToValue)(e,([t,r])=>({labels:t,sample:BM.transformSampleReply[3](r)}))}}}UM.createTransformMGetLabelsReply=Ebt;UM.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.MGET"),(0,Abt.parseLatestArgument)(e,r?.LATEST),e.push("WITHLABELS"),(0,Abt.parseFilterArgument)(e,t)},transformReply:Ebt()}});var vbt=S(eve=>{"use strict";Object.defineProperty(eve,"__esModule",{value:!0});var ybt=Kh(),LGr=Va(),MGr=Zye();eve.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("TS.MGET"),(0,ybt.parseLatestArgument)(e,n?.LATEST),(0,LGr.parseSelectedLabelsArguments)(e,r),(0,ybt.parseFilterArgument)(e,t)},transformReply:(0,MGr.createTransformMGetLabelsReply)()}});var Gh=S(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});ug.transformRangeArguments=ug.parseRangeArguments=ug.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var kS=Va();ug.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function Sbt(e,t,r,n){if(e.push((0,kS.transformTimestampArgument)(t),(0,kS.transformTimestampArgument)(r)),n?.LATEST&&e.push("LATEST"),n?.FILTER_BY_TS){e.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)e.push((0,kS.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&e.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&e.push("ALIGN",(0,kS.transformTimestampArgument)(n.ALIGN)),e.push("AGGREGATION",n.AGGREGATION.type,(0,kS.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&e.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&e.push("EMPTY"))}ug.parseRangeArguments=Sbt;function Tbt(e,t,r,n,s){e.pushKey(t),Sbt(e,r,n,s)}ug.transformRangeArguments=Tbt;ug.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TS.RANGE"),Tbt(...e)},transformReply:{2(e){return kS.transformSamplesReply[2](e)},3(e){return kS.transformSamplesReply[3](e)}}}});var hC=S(n0=>{"use strict";Object.defineProperty(n0,"__esModule",{value:!0});n0.extractResp3MRangeSources=n0.createTransformMRangeGroupByArguments=n0.parseGroupByArguments=n0.TIME_SERIES_REDUCERS=void 0;var xq=Va(),kGr=Gh(),BGr=Kh();n0.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function bbt(e,t){e.push("GROUPBY",t.label,"REDUCE",t.REDUCE)}n0.parseGroupByArguments=bbt;function Ibt(e){return(t,r,n,s,i,a)=>{t.push(e),(0,kGr.parseRangeArguments)(t,r,n,a),(0,BGr.parseFilterArgument)(t,s),bbt(t,i)}}n0.createTransformMRangeGroupByArguments=Ibt;function Rbt(e){let t=e;return t instanceof Map?t.get("sources"):t instanceof Array?t[1]:t.sources}n0.extractResp3MRangeSources=Rbt;n0.default={IS_READ_ONLY:!0,parseCommand:Ibt("TS.MRANGE"),transformReply:{2(e,t,r){return(0,xq.resp2MapToValue)(e,([n,s,i])=>({samples:xq.transformSamplesReply[2](i)}),r)},3(e){return(0,xq.resp3MapToValue)(e,([t,r,n,s])=>({sources:Rbt(n),samples:xq.transformSamplesReply[3](s)}))}}}});var wq=S(FM=>{"use strict";Object.defineProperty(FM,"__esModule",{value:!0});FM.createTransformMRangeSelectedLabelsArguments=void 0;var pC=Va(),UGr=Gh(),FGr=Kh();function Cbt(e){return(t,r,n,s,i,a)=>{t.push(e),(0,UGr.parseRangeArguments)(t,r,n,a),(0,pC.parseSelectedLabelsArguments)(t,s),(0,FGr.parseFilterArgument)(t,i)}}FM.createTransformMRangeSelectedLabelsArguments=Cbt;FM.default={IS_READ_ONLY:!0,parseCommand:Cbt("TS.MRANGE"),transformReply:{2(e,t,r){return(0,pC.resp2MapToValue)(e,([n,s,i])=>({labels:(0,pC.transformRESP2Labels)(s,r),samples:pC.transformSamplesReply[2](i)}),r)},3(e){return(0,pC.resp3MapToValue)(e,([t,r,n])=>({labels:r,samples:pC.transformSamplesReply[3](n)}))}}}});var rve=S(BS=>{"use strict";var $Gr=BS&&BS.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BS,"__esModule",{value:!0});BS.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var tve=Va(),qGr=Gh(),xbt=hC(),HGr=Kh(),VGr=$Gr(wq());function wbt(e){return(t,r,n,s,i,a,o)=>{t.push(e),(0,qGr.parseRangeArguments)(t,r,n,o),(0,tve.parseSelectedLabelsArguments)(t,s),(0,HGr.parseFilterArgument)(t,i),(0,xbt.parseGroupByArguments)(t,a)}}BS.createMRangeSelectedLabelsGroupByTransformArguments=wbt;BS.default={IS_READ_ONLY:!0,parseCommand:wbt("TS.MRANGE"),transformReply:{2:VGr.default.transformReply[2],3(e){return(0,tve.resp3MapToValue)(e,([t,r,n,s])=>({labels:t,sources:(0,xbt.extractResp3MRangeSources)(n),samples:tve.transformSamplesReply[3](s)}))}}}});var nve=S(qM=>{"use strict";Object.defineProperty(qM,"__esModule",{value:!0});qM.createMRangeWithLabelsGroupByTransformArguments=void 0;var $M=Va(),jGr=Gh(),Nbt=hC(),KGr=Kh();function Obt(e){return(t,r,n,s,i,a)=>{t.push(e),(0,jGr.parseRangeArguments)(t,r,n,a),t.push("WITHLABELS"),(0,KGr.parseFilterArgument)(t,s),(0,Nbt.parseGroupByArguments)(t,i)}}qM.createMRangeWithLabelsGroupByTransformArguments=Obt;qM.default={IS_READ_ONLY:!0,parseCommand:Obt("TS.MRANGE"),transformReply:{2(e,t,r){return(0,$M.resp2MapToValue)(e,([n,s,i])=>{let a=(0,$M.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:$M.transformSamplesReply[2](i)}},r)},3(e){return(0,$M.resp3MapToValue)(e,([t,r,n,s])=>({labels:t,sources:(0,Nbt.extractResp3MRangeSources)(n),samples:$M.transformSamplesReply[3](s)}))}}}});var sve=S(HM=>{"use strict";Object.defineProperty(HM,"__esModule",{value:!0});HM.createTransformMRangeWithLabelsArguments=void 0;var Nq=Va(),GGr=Gh(),zGr=Kh();function Dbt(e){return(t,r,n,s,i)=>{t.push(e),(0,GGr.parseRangeArguments)(t,r,n,i),t.push("WITHLABELS"),(0,zGr.parseFilterArgument)(t,s)}}HM.createTransformMRangeWithLabelsArguments=Dbt;HM.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Dbt("TS.MRANGE"),transformReply:{2(e,t,r){return(0,Nq.resp2MapToValue)(e,([n,s,i])=>{let a=s,o=Object.create(null);for(let c of a){let[u,l]=c,d=u;o[d.toString()]=l}return{labels:o,samples:Nq.transformSamplesReply[2](i)}},r)},3(e){return(0,Nq.resp3MapToValue)(e,([t,r,n])=>({labels:t,samples:Nq.transformSamplesReply[3](n)}))}}}});var ive=S(VM=>{"use strict";Object.defineProperty(VM,"__esModule",{value:!0});VM.createTransformMRangeArguments=void 0;var Oq=Va(),YGr=Gh(),QGr=Kh();function Pbt(e){return(t,r,n,s,i)=>{t.push(e),(0,YGr.parseRangeArguments)(t,r,n,i),(0,QGr.parseFilterArgument)(t,s)}}VM.createTransformMRangeArguments=Pbt;VM.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Pbt("TS.MRANGE"),transformReply:{2(e,t,r){return(0,Oq.resp2MapToValue)(e,([n,s,i])=>Oq.transformSamplesReply[2](i),r)},3(e){return(0,Oq.resp3MapToValue)(e,([t,r,n])=>Oq.transformSamplesReply[3](n))}}}});var Lbt=S(lg=>{"use strict";var WGr=lg&&lg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),XGr=lg&&lg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),JGr=lg&&lg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&WGr(t,e,r);return XGr(t,e),t};Object.defineProperty(lg,"__esModule",{value:!0});var ave=JGr(hC());lg.default={IS_READ_ONLY:ave.default.IS_READ_ONLY,parseCommand:(0,ave.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:ave.default.transformReply}});var Mbt=S(dg=>{"use strict";var ZGr=dg&&dg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ezr=dg&&dg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),tzr=dg&&dg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ZGr(t,e,r);return ezr(t,e),t};Object.defineProperty(dg,"__esModule",{value:!0});var ove=tzr(rve());dg.default={IS_READ_ONLY:ove.default.IS_READ_ONLY,parseCommand:(0,ove.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:ove.default.transformReply}});var kbt=S(fg=>{"use strict";var rzr=fg&&fg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),nzr=fg&&fg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),szr=fg&&fg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&rzr(t,e,r);return nzr(t,e),t};Object.defineProperty(fg,"__esModule",{value:!0});var cve=szr(wq());fg.default={IS_READ_ONLY:cve.default.IS_READ_ONLY,parseCommand:(0,cve.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:cve.default.transformReply}});var Bbt=S(hg=>{"use strict";var izr=hg&&hg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),azr=hg&&hg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ozr=hg&&hg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&izr(t,e,r);return azr(t,e),t};Object.defineProperty(hg,"__esModule",{value:!0});var uve=ozr(nve());hg.default={IS_READ_ONLY:uve.default.IS_READ_ONLY,parseCommand:(0,uve.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:uve.default.transformReply}});var Ubt=S(pg=>{"use strict";var czr=pg&&pg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uzr=pg&&pg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),lzr=pg&&pg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&czr(t,e,r);return uzr(t,e),t};Object.defineProperty(pg,"__esModule",{value:!0});var Dq=lzr(sve());pg.default={NOT_KEYED_COMMAND:Dq.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Dq.default.IS_READ_ONLY,parseCommand:(0,Dq.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:Dq.default.transformReply}});var Fbt=S(mg=>{"use strict";var dzr=mg&&mg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fzr=mg&&mg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hzr=mg&&mg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dzr(t,e,r);return fzr(t,e),t};Object.defineProperty(mg,"__esModule",{value:!0});var Pq=hzr(ive());mg.default={NOT_KEYED_COMMAND:Pq.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Pq.default.IS_READ_ONLY,parseCommand:(0,Pq.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:Pq.default.transformReply}});var $bt=S(lve=>{"use strict";Object.defineProperty(lve,"__esModule",{value:!0});lve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("TS.QUERYINDEX"),e.pushVariadic(t)},transformReply:{2:void 0,3:void 0}}});var qbt=S(gg=>{"use strict";var pzr=gg&&gg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mzr=gg&&gg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gzr=gg&&gg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pzr(t,e,r);return mzr(t,e),t};Object.defineProperty(gg,"__esModule",{value:!0});var dve=gzr(Gh());gg.default={IS_READ_ONLY:dve.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TS.REVRANGE"),(0,dve.transformRangeArguments)(...e)},transformReply:dve.default.transformReply}});var A1t=S(zh=>{"use strict";var _zr=zh&&zh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Azr=zh&&zh.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&_zr(t,e,r)},Yn=zh&&zh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zh,"__esModule",{value:!0});var Hbt=Yn(ibt()),Vbt=Yn(abt()),jbt=Yn(obt()),Kbt=Yn(Vye()),Gbt=Yn(ubt()),zbt=Yn(dbt()),Ybt=Yn(fbt()),Qbt=Yn(hbt()),Wbt=Yn(jye()),Xbt=Yn(pbt()),Jbt=Yn(Wye()),Zbt=Yn(mbt()),e1t=Yn(vbt()),t1t=Yn(Zye()),r1t=Yn(Kh()),n1t=Yn(hC()),s1t=Yn(rve()),i1t=Yn(wq()),a1t=Yn(nve()),o1t=Yn(sve()),c1t=Yn(ive()),u1t=Yn(Lbt()),l1t=Yn(Mbt()),d1t=Yn(kbt()),f1t=Yn(Bbt()),h1t=Yn(Ubt()),p1t=Yn(Fbt()),m1t=Yn($bt()),g1t=Yn(Gh()),_1t=Yn(qbt());Azr(Va(),zh);zh.default={ADD:Hbt.default,add:Hbt.default,ALTER:Vbt.default,alter:Vbt.default,CREATE:jbt.default,create:jbt.default,CREATERULE:Kbt.default,createRule:Kbt.default,DECRBY:Gbt.default,decrBy:Gbt.default,DEL:zbt.default,del:zbt.default,DELETERULE:Ybt.default,deleteRule:Ybt.default,GET:Qbt.default,get:Qbt.default,INCRBY:Wbt.default,incrBy:Wbt.default,INFO_DEBUG:Xbt.default,infoDebug:Xbt.default,INFO:Jbt.default,info:Jbt.default,MADD:Zbt.default,mAdd:Zbt.default,MGET_SELECTED_LABELS:e1t.default,mGetSelectedLabels:e1t.default,MGET_WITHLABELS:t1t.default,mGetWithLabels:t1t.default,MGET:r1t.default,mGet:r1t.default,MRANGE_GROUPBY:n1t.default,mRangeGroupBy:n1t.default,MRANGE_SELECTED_LABELS_GROUPBY:s1t.default,mRangeSelectedLabelsGroupBy:s1t.default,MRANGE_SELECTED_LABELS:i1t.default,mRangeSelectedLabels:i1t.default,MRANGE_WITHLABELS_GROUPBY:a1t.default,mRangeWithLabelsGroupBy:a1t.default,MRANGE_WITHLABELS:o1t.default,mRangeWithLabels:o1t.default,MRANGE:c1t.default,mRange:c1t.default,MREVRANGE_GROUPBY:u1t.default,mRevRangeGroupBy:u1t.default,MREVRANGE_SELECTED_LABELS_GROUPBY:l1t.default,mRevRangeSelectedLabelsGroupBy:l1t.default,MREVRANGE_SELECTED_LABELS:d1t.default,mRevRangeSelectedLabels:d1t.default,MREVRANGE_WITHLABELS_GROUPBY:f1t.default,mRevRangeWithLabelsGroupBy:f1t.default,MREVRANGE_WITHLABELS:h1t.default,mRevRangeWithLabels:h1t.default,MREVRANGE:p1t.default,mRevRange:p1t.default,QUERYINDEX:m1t.default,queryIndex:m1t.default,RANGE:g1t.default,range:g1t.default,REVRANGE:_1t.default,revRange:_1t.default}});var hve=S(Jo=>{"use strict";var Ezr=Jo&&Jo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Jo,"__esModule",{value:!0});Jo.TIME_SERIES_REDUCERS=Jo.TIME_SERIES_BUCKET_TIMESTAMP=Jo.TIME_SERIES_AGGREGATION_TYPE=Jo.TIME_SERIES_DUPLICATE_POLICIES=Jo.TIME_SERIES_ENCODING=Jo.default=void 0;var fve=A1t();Object.defineProperty(Jo,"default",{enumerable:!0,get:function(){return Ezr(fve).default}});Object.defineProperty(Jo,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return fve.TIME_SERIES_ENCODING}});Object.defineProperty(Jo,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return fve.TIME_SERIES_DUPLICATE_POLICIES}});var yzr=Vye();Object.defineProperty(Jo,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return yzr.TIME_SERIES_AGGREGATION_TYPE}});var vzr=Gh();Object.defineProperty(Jo,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return vzr.TIME_SERIES_BUCKET_TIMESTAMP}});var Szr=hC();Object.defineProperty(Jo,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return Szr.TIME_SERIES_REDUCERS}})});var E1t=S(ji=>{"use strict";var Tzr=ji&&ji.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jM=ji&&ji.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Tzr(t,e,r)},Lq=ji&&ji.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ji,"__esModule",{value:!0});ji.createSentinel=ji.createCluster=ji.createClientPool=ji.createClient=void 0;var Mq=fM(),bzr=Lq(LEe()),Izr=Lq(aye()),Rzr=Lq(Uye()),Czr=Lq(hve());jM(fM(),ji);jM(LEe(),ji);jM(aye(),ji);jM(Uye(),ji);jM(hve(),ji);var kq={...bzr.default,json:Izr.default,ft:Rzr.default,ts:Czr.default};function xzr(e){return(0,Mq.createClient)({...e,modules:{...kq,...e?.modules}})}ji.createClient=xzr;function wzr(e,t){return(0,Mq.createClientPool)({...e,modules:{...kq,...e?.modules}},t)}ji.createClientPool=wzr;function Nzr(e){return(0,Mq.createCluster)({...e,modules:{...kq,...e?.modules}})}ji.createCluster=Nzr;function Ozr(e){return(0,Mq.createSentinel)({...e,modules:{...kq,...e?.modules}})}ji.createSentinel=Ozr});var Uq={};Ft(Uq,{closeLocalRedisConnection:()=>Mzr,getLocalRedisCaches:()=>Pzr,getLocalRedisKey:()=>y1t,judgeLocalRedisValid:()=>Lzr,setLocalRedisKey:()=>Bq,setLocalRedisKeyWithExpiry:()=>Dzr,updateLocalRedisCaches:()=>KM});async function mC(){if(bi)return bi;let e=F.localRedisUrl;try{R("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:t}=await Promise.resolve().then(()=>Ne(E1t(),1));return bi=t({url:e,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),bi.on("error",r=>{R("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),F.localRedisValid=!1}),bi.on("connect",()=>{R("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await bi.connect(),F.localRedisValid=!0,R("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),bi}catch(t){return R("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",t.message),F.localRedisValid=!1,null}}async function gC(){if(!bi)return!1;try{return await bi.ping()==="PONG"}catch(e){return R("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),F.localRedisValid=!1,!1}}async function y1t(e){try{if(await gC()||await mC(),!bi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await bi.get(e)}catch(t){return R("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",t.message),null}}async function Bq(e,t){let r=wR(e,t),n=fs(r);if(F.lastHashes[e]===n)return R("info",`[Utils] [Local-Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await gC()||await mC(),!bi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await bi.set(e,r);return F.lastHashes[e]=n,R("info",`[Utils] [Local-Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return R("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function Dzr(e,t,r){let n=wR(e,t),s=fs(n);if(F.lastHashes[e]===s)return R("info",`[Utils] [Local-Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await gC()||await mC(),!bi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await bi.setEx(e,r,n);return F.lastHashes[e]=s,R("info",`[Utils] [Local-Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return R("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function Pzr(){if(!F.localCacheInitialized)try{if(R("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await gC()||await mC(),!bi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],t=await Promise.all(e.map(n=>y1t(n)));F.animes=t[0]?JSON.parse(t[0]):F.animes,F.episodeIds=t[1]?JSON.parse(t[1]):F.episodeIds,F.episodeNum=t[2]?JSON.parse(t[2]):F.episodeNum,F.reqRecords=t[3]?JSON.parse(t[3]):F.reqRecords;let r=t[4]?JSON.parse(t[4]):null;r&&typeof r=="object"&&(F.lastSelectMap=new Map(Object.entries(r)),R("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${F.lastSelectMap.size} entries`)),F.todayReqNum=t[5]?parseInt(t[5],10):F.todayReqNum,F.lastHashes.animes=fs(JSON.stringify(F.animes)),F.lastHashes.episodeIds=fs(JSON.stringify(F.episodeIds)),F.lastHashes.episodeNum=fs(JSON.stringify(F.episodeNum)),F.lastHashes.reqRecords=fs(JSON.stringify(F.reqRecords)),F.lastHashes.lastSelectMap=fs(JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.lastHashes.todayReqNum=fs(JSON.stringify(F.todayReqNum)),F.localCacheInitialized=!0,R("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(e){R("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${e.message}`,e.stack),F.localCacheInitialized=!0}}async function KM(){try{if(R("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await gC()||await mC(),!bi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let e=[],t=[{key:"animes",value:F.animes},{key:"episodeIds",value:F.episodeIds},{key:"episodeNum",value:F.episodeNum},{key:"reqRecords",value:F.reqRecords},{key:"lastSelectMap",value:F.lastSelectMap},{key:"todayReqNum",value:F.todayReqNum}];for(let{key:r,value:n}of t){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=fs(s);i!==F.lastHashes[r]&&e.push({key:r,value:n,hash:i})}if(e.length>0){R("info",`[Utils] [Local-Redis] Updating ${e.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let r=e.map(async({key:a,value:o})=>Bq(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,R("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{F.lastHashes[a]=o}),R("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):R("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else R("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(e){R("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${e.message}`,e.stack),R("error",`[Utils] [Local-Redis] Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function Lzr(e){if(!F.localRedisValid&&F.localRedisUrl&&e!=="/favicon.ico"&&e!=="/robots.txt")try{await gC()||await mC(),bi&&await bi.ping()==="PONG"&&(F.localRedisValid=!0)}catch(t){R("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),F.localRedisValid=!1}}async function Mzr(){if(bi)try{await bi.quit(),bi=null,F.localRedisValid=!1,R("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(e){R("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",e.message)}}var bi,GM=ae(()=>{Qt();jt();aa();bi=null});async function zM(e,t={}){let n=`https://api.tmdb.org/3/${e}`,s=F.makeProxyUrl(n);try{let i=await Me(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:t.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return R("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function $q(e,t="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${t}?api_key=${F.tmdbApiKey}&query=${encodeURIComponent(e)}&language=zh-CN&page=${n}`;return await zM(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${t}?api_key=${F.tmdbApiKey}&query=${encodeURIComponent(e)}&language=zh-CN&page=${o}`,u=await zM(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return R("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function kzr(e,t,r={}){let n=`${e}/${t}?api_key=${F.tmdbApiKey}&language=ja-JP`;return await zM(n,r)}async function S1t(e,t,r={}){let n=`${e}/${t}/external_ids?api_key=${F.tmdbApiKey}`;return await zM(n,r)}async function Bzr(e,t,r={}){let n=`${e}/${t}/alternative_titles?api_key=${F.tmdbApiKey}`;return await zM(n,r)}function Uzr(e,t,r=""){let n=e?.data?.results||e?.data?.titles||[];if(!n.length)return null;let s=(r||"").toLowerCase().trim(),i=o=>o.title||o.name||"",a=[o=>s&&i(o).toLowerCase().trim()===s,...["CN","TW","HK","SG"].map(o=>c=>(c.iso_3166_1||c.iso_639_1)===o&&!Dm(i(c))),o=>!Dm(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return R("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function Fzr(e,t,r=""){let n=e.name||e.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(Dm(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;R("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=e.media_type||(e.name?"tv":"movie");try{if(t&&t.aborted)throw new DOMException("Aborted","AbortError");let a=await Bzr(i,e.id,{signal:t});if(t&&t.aborted)throw new DOMException("Aborted","AbortError");let o=Uzr(a,i,r);return o?(R("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(R("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return R("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function _C(e,t=null,r="Unknown"){let n=R1t(e);if(n!==e&&R("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${e}" -> "${n}"`),F.useBangumiData){let o=await Qf(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return R("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!F.tmdbApiKey)return R("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=Fq.get(n);if(s)R("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=w=>{let D=w.genre_ids||[],M=w.genres||[],L=D.length>0?D:M.map($=>$.id),U=w.original_language||"";return L.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:U==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${U}, genres: ${L.join(",")})`}},d=(w,D)=>{let M=oe=>oe.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),L=M(w),U=M(D);if(L===U)return 1;let G=L.length=U.length?L:U;if($.includes(G)&&G.length>0)return .6+G.length/$.length*.3;let K=w.length>D.length?w:D,ee=w.length>D.length?D:w;if(K.length===0)return 1;let z=(oe,le)=>{oe=oe.toLowerCase(),le=le.toLowerCase();let te=[];for(let Q=0;Q<=oe.length;Q++){let Z=Q;for(let de=0;de<=le.length;de++)if(Q===0)te[de]=de;else if(de>0){let B=te[de-1];oe.charAt(Q-1)!==le.charAt(de-1)&&(B=Math.min(Math.min(B,Z),te[de])+1),te[de-1]=Z,Z=B}Q>0&&(te[le.length]=Z)}return te[le.length]};return(K.length-z(K,ee))/K.length};if(R("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await $q(n,"multi",{signal:u});if(!f||!f.data)return R("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let h=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!h.results||h.results.length===0)return R("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let p=[],m=[];for(let w of h.results){let D=l(w);if(D.isValid)p.push(w);else{let M=w.name||w.title||"\u672A\u77E5";m.push(`${M}(${D.reason})`)}}if(p.length===0)return R("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;R("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${p.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${m.length} \u4E2A\u65E0\u5173\u6761\u76EE${m.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+m.join(", "):""}`);let _=null,g=-1,y=null,A=0,E=5,v=!1;for(let w of p){let D=w.name||w.title||"";if(!D)continue;let M=d(n,D),L=w.original_name||w.original_title||"",U=L?d(n,L):0,G=Math.max(M,U);if(G===1&&!v){v=!0,R("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${D}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),G>g&&(g=G,_=w,y=D);continue}let $,K,ee=D.toLowerCase().trim()===n.toLowerCase().trim();if(v||ee)$=D,K=G,v&&ee?R("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${D}" - \u76F8\u4F3C\u5EA6: ${(K*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):R("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${D}" - \u76F8\u4F3C\u5EA6: ${(K*100).toFixed(2)}%`);else{if(Ag&&(g=K,_=w,y=$)}if(!_||g<.4)return R("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${_?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;R("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${y}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let I=_.media_type||(_.name?"tv":"movie"),T=await kzr(I,_.id,{signal:u}),x;if(!T||!T.data)x=_.name||_.title,R("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${x}`);else{let w=typeof T.data=="string"?JSON.parse(T.data):T.data;x=w.original_name||w.original_title||w.name||w.title,R("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${x}`)}return{title:x,cnAlias:y}}catch(u){return u.name==="AbortError"?(R("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(R("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{Fq.delete(n)})},Fq.set(n,s),R("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{Fq.get(n)===s&&(s.refCount--,s.refCount<=0&&(R("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(t){if(t.aborted)return i(),R("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;t.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{t&&(a=()=>u(new DOMException("Aborted","AbortError")),t.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(R("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(R("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{t&&(t.removeEventListener("abort",i),a&&t.removeEventListener("abort",a))}}async function T1t(e,t=null,r=null){if(!Dm(e))return e;if(F.useBangumiData){let i=R1t(e),a=Qf(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!Dm(u))||o.titles[1];if(c&&!Dm(c))return R("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${e} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=t!=null,s=n?"tv":"movie";try{let i=await $q(e,s);if(!i.data.results||i.data.results.length===0)return R("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),e;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!Dm(l)})||i.data.results[0],c=n?o.name:o.title;return c?(R("info",`\u539F\u6807\u9898: ${e} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):e}catch(i){return R("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),e}}function I1t(e){let t=e.match(b1t);return t?t.index:e.length}function R1t(e){let t=I1t(e);return t{let a=i.org_title||i.title||"";return a.substring(0,I1t(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c1&&R("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of e){let a=i.title||"";if(!(i.isLocalPriority||a.includes(t)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${t}${o.match(/^[~~::]/)?"":" "}${o}`:t,R("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(v1t);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&b1t.test(c)){let l=u.trim().match(v1t),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${t}${d}`,R("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=t+u,R("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else Dm(a)?(i._displayTitle=t,R("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):R("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}var Fq,b1t,v1t,EC=ae(()=>{Qt();jt();$r();Fu();qm();Fq=new Map;b1t=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|劇場版|续[篇集]|外传)(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,v1t=/[ ::~~]/});function kt(e,...t){typeof t[0]=="string"&&t[0].includes("[Merge-Check]")&&!$zr||R(e,...t)}function B1t(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function pve(e){if(typeof structuredClone=="function")try{return structuredClone(e)}catch{}return JSON.parse(JSON.stringify(e))}function ju(e){if(!e)return"Unspecified";let t=e.toLowerCase();return Be.Lang.CN.test(t)?"CN":Be.Lang.JP.test(t)?"JP":"Unspecified"}function U1t(e){if(!e)return"";let t=e,r=t.toUpperCase();for(let n of Hzr){if(!n.seriesKeywords.every(a=>r.includes(a.toUpperCase())))continue;let i=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let c=new RegExp(B1t(o),"gi");c.test(t)&&(t=t.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(t+=` ${n.defaultStandard} `)}return t}function sE(e){if(!e)return"";let t=yr(e);return t=t.replace(Be.Clean.NA_TAG,""),t=t.replace(Be.Season.PART_NORM,"part $1"),t=t.replace(Be.Season.PART_NORM_2,"part $1"),t=t.replace(Be.Season.FINAL,"\u6700\u7EC8\u5B63"),t=t.replace(Be.Season.NORM,"\u7B2C$1\u5B63"),t=t.replace(Be.Season.CN,(r,n)=>`\u7B2C${wh(n)}\u5B63`),t=t.replace(Be.Season.ROMAN,(r,n,s,i)=>`${n}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[s]}\u5B63${i}`),t=t.replace(Be.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),t=t.replace(Be.Lang.JP_DUB_VER,""),t=t.replace(Be.Clean.SOURCE_TAG,""),t=t.replace(Be.Clean.REGION_LIMIT,""),t=t.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),t=t.replace(Be.Clean.PUNCTUATION," "),t=t.replace(/{{DOT}}/g,"."),t.replace(Be.Clean.WHITESPACE," ").toLowerCase().trim()}function kd(e){if(!e)return"";let t=U1t(e);t=yr(t);let r=t.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(t=t.replace(r[0],n+" "))}return t=t.replace(Be.Clean.SOURCE_TAG,""),t=t.replace(Be.Clean.FROM_SUFFIX,""),t=t.replace(Be.Clean.NA_TAG,""),t=t.replace(Be.Clean.PARENTHESES_CONTENT,""),t=t.replace(Be.Season.INFO_STRONG,""),t=t.replace(Be.Season.PART_INFO_STRONG,""),t=t.replace(Be.Clean.MOVIE_KEYWORDS,""),t=t.replace(Be.Lang.KEYWORDS_STRONG,""),t=t.replace(Be.Clean.LONE_VER_CHAR,""),t=t.replace(Be.Clean.NON_ALPHANUM_CN,""),t.toLowerCase()}function yC(e){if(!e)return"";let t=yr(e);return t=t.replace(Be.Episode.SUFFIX_DIGIT,""),t=t.replace(Be.Episode.FILE_NOISE,""),t=t.replace(Be.Episode.SEASON_PREFIX," "),t=t.replace(Be.Episode.CLEAN_SMART," "),t=t.replace(Be.Clean.SOURCE_TAG,""),t=t.replace(Be.Lang.CN_STD,"\u4E2D\u6587"),t=t.replace(Be.Lang.JP_STD,"\u65E5\u6587"),t=t.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),t=t.replace(Be.Episode.PUNCTUATION," "),t=t.replace(/{{DOT}}/g,"."),t.replace(Be.Clean.WHITESPACE," ").toLowerCase().trim()}function C1t(e){return e?e.replace(Be.Clean.PARENTHESES_CONTENT,"").trim():""}function gve(e){if(!e)return"";let t=String(e).split(Bd)[0].trim();if(t.startsWith("//"))return"https:"+t;let r=t.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?t:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return t}function x1t(e){if(!e||e==="N/A")return{year:null,month:null};let t=new Date(e),r=t.getTime();if(isNaN(r))return{year:null,month:null};let n=t.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:t.getMonth()+1}}function Vzr(e,t){let r=e.length,n=t.length;if(r===0)return n;if(n===0)return r;let s=new Array(n+1),i=new Array(n+1);for(let a=0;a<=n;a++)s[a]=a;for(let a=1;a<=r;a++){i[0]=a;let o=e.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===t.charCodeAt(u-1)?0:1;i[u]=Math.min(i[u-1]+1,s[u]+1,s[u-1]+l)}let c=s;s=i,i=c}return s[n]}function jzr(e,t){if(!e||!t)return 0;let r=new Set(e.replace(Be.Clean.WHITESPACE,"")),n=new Set(t.replace(Be.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s.5)return .8+E*.2}let c=Vzr(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(Be.Clean.WHITESPACE,"")),d=new Set(n.replace(Be.Clean.WHITESPACE,"")),f=l.size,h=d.size;if(f===0||h===0)return 0;let p=0,[m,_]=f2&&(y=p/A,y>.6&&A/Math.max(f,h)<.6&&(y-=.25)),Math.max(u,g,y)}function Ku(e,t="",r=[]){let n=new Set,s=sE(t||""),i=l=>{let d=sE(U1t(l)),f=d.replace(Be.Season.PART_ANY,""),h=f.match(Be.Season.CN_STRUCTURE);if(h){let _={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};_[h[1]]&&n.add(_[h[1]])}if(qzr.forEach(_=>{let g=(_.useCleaned?f:d).match(_.regex);g&&n.add(_.prefix?`${_.prefix}${parseInt(g[1])}`:_.val)}),!Vq.some(_=>{if(_.regex.test(f))return n.add(_.val),!0})){let _=f.match(Be.Season.SUFFIX_AMBIGUOUS);if(_){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},y=_[1].toUpperCase();g[y]&&n.add(g[y])}}Be.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let m={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[_,g]of Object.entries(m))d.includes(`\u7B2C${_}\u5B63`)&&n.add(`S${g}`)};[e,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function To(e,t="",r=[]){let n=Ku(e,t,r),s=null;for(let i of n)if(i.startsWith("S")){let a=parseInt(i.substring(1));isNaN(a)||(s===null||a>s)&&(s=a)}return s}function FS(e,t){let r=(e+" "+(t||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function vC(e,t,r){if(r&&Be.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(e+" "+(t||"")).toLowerCase();return Be.Category.ANIME_KW.test(n)?"ANIME":Be.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function Kzr(e,t,r=!0){if(!e||!t||kd(e)===kd(t))return!1;let n=d=>{if(!d)return"";let f=yr(d);return f=f.replace(Be.Clean.META_SUFFIX,"").replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").replace(Be.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(e),i=n(t);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let p of f){let m=d.indexOf(p);if(m!==-1)return d.substring(m).trim()}let h=d.split(Be.Clean.WHITESPACE);return h.length>=2?h.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length1||f.length>2)return!0}}return!!(o&&c&&jzr(o,c)<.2)}function F1t(e,t,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?yr(c).replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim():"",a=i(e),o=i(t);if(Be.Clean.SPACE_STRUCTURE.test(a)&&Be.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(Be.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(Be.Season.PURE_PART.test(u)||Be.Season.PURE_PART.test(l))}return!1}function Gzr(e,t,r,n,s,i,a="",o=""){let c=vC(e,r,a),u=vC(t,n,o);if(c==="REAL"&&u==="ANIME"||c==="ANIME"&&u==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),h=(n||"").includes("2D"),p=!l&&!f,m=!d&&!h;if(!p&&m?/3[dD]/.test(t)?d=!0:/2[dD]/.test(t)&&(h=!0):!m&&p&&(/3[dD]/.test(e)?l=!0:/2[dD]/.test(e)&&(f=!0)),(l||f)&&(d||h)&&l!==d)return!0;let y=FS(e,r),A=FS(t,n);return!y||!A||y===A||F1t(e,t,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function zzr(e,t,r,n,s=[],i=[]){let a=Ku(e,r,s),o=Ku(t,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(h=>h.startsWith("S")&&parseInt(h.substring(1))>=2),u=f=>f.has("SEQUEL"),l=f=>f.has("AMBIGUOUS"),d=f=>f.has("S1");if(a.size>0&&o.size>0){if(l(a)&&d(o)||l(o)&&d(a))return!0;if(l(a)&&(c(o)||u(o))||l(o)&&(c(a)||u(a))||c(a)&&u(o)||c(o)&&u(a))return!1;for(let f of a)if(f.startsWith("S")){let h=o.has(f),p=Array.from(o).some(m=>m.startsWith("S"));if(!h&&p)return!0}return!1}return a.size!==o.size?!F1t(e,t,r,n):!1}function Yzr(e,t,r,n,s=[],i=[]){let a=Ku(e,r,s),o=Ku(t,n,i),c=Array.from(a).filter(l=>l.startsWith("S")),u=Array.from(o).filter(l=>l.startsWith("S"));return c.length>0&&u.length>0?c.some(l=>u.includes(l)):!1}function Qzr(e,t,r=!1){if(!e.year||!t.year)return .05;let n=e.year-t.year;if(n===0){if(e.month&&t.month){let i=Math.abs(e.month-t.month);return i>2?0:i===0?.2:.1}return .1}let s=Math.abs(n);return r&&s<=10?0:s>1?-1:0}function Wzr(e,t,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(t,r);return c>0&&e/c>.5?!0:!(e<2)}let a=Math.max(t,r);if(a===0)return!1;let o=e/a;return!(a>5&&o<.18)}function qq(e){if(!e)return null;let t=e.toLowerCase();return t.includes("opening")?"opening":t.includes("ending")?"ending":t.includes("interview")?"interview":t.includes("bloopers")?"Bloopers":null}function Kc(e,t=""){let r=!1,n=t;if(e){let p=e.match(Be.Episode.DANDAN_TAG);p&&(n=p[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&e){let p=e.replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();(Be.Episode.SPECIAL_START.test(p)||Be.Episode.DANDAN_IGNORE.test(p))&&(r=!0)}let i=sE(e||""),a=Be.Episode.MOVIE_CHECK.test(i),o=Be.Episode.PV_CHECK.test(i),c=null,u=null,l=qq(e),d=o||r||!!l||Be.Episode.SPECIAL_CHECK.test(i),f=i.match(Be.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let h=i.match(Be.Episode.NUM_STRATEGY_A);if(h)c=parseFloat(h[2]);else{let p=i.match(Be.Episode.NUM_STRATEGY_B);if(p)c=parseFloat(p[1]);else{let m=i.match(Be.Episode.NUM_STRATEGY_C);m&&(c=parseFloat(m[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function _ve(e,t,r=""){if(!e)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!t||s)return e.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(e.forEach((o,c)=>{let u=o.title||o.name||"";t.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";kt("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}function Hq(e,t,r){if(!e||e.length<2||!t)return"";let n=l=>{if(!l||!r)return l||"";try{let d=w1t.get(r);if(!d){let f=B1t(r);d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),w1t.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(t),i=s.match(Be.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=e.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let h=0;hf.length&&(f=m)}return f},c=o(a[0],a[1]);if(c.length<2)return"";for(let l=2;l=2&&s.startsWith(l)?l:""}return u.length>=2&&(Be.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(kt("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function N1t(e,t){let r=new Set;if(!e)return r;let n=-1;for(let s=0;s{let a=s.title||s.name||"",o=Kc(a,t);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i{let c=o.title||o.name||"",u=Kc(c,r);u.num!==null&&t.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(e.length=0,e.push(...s,...i),kt("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(t).join(",")}) \u5230\u672B\u5C3E`))}function D1t(e,t,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(e.length===0||t.length===0)return 0;let c=Hq(e,a,s),u=Hq(t,o,i),l=(I,T)=>I?T&&I.includes(T)?I.replace(T,""):I:"",d=(I,T,x,w)=>{let D=I.link.title||"",M=l(D,w),L=Kc(M,T),U=ju(M),G=U!=="Unspecified"?U:x,$=G==="Unspecified"&&/^(dandan|animeko)$/i.test(T)?"JP":G,K=yC(M),ee=$==="CN"?M.replace(Be.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:L,effLang:$,specialType:qq(M),cleanEpText:K,strictCnCore:ee}},f=e.map(I=>d(I,s,r,c)),h=t.map(I=>d(I,i,n,u)),p=null,m=null;f.forEach(({info:I})=>{I.num!==null&&!I.isSpecial&&I.num%1===0&&(p=p===null?I.num:Math.min(p,I.num))}),h.forEach(({info:I})=>{I.num!==null&&!I.isSpecial&&I.num%1===0&&(m=m===null?I.num:Math.min(m,I.num))});let _=p!==null&&m!==null?p-m:null,g=15,y=_!==null?-_:0,A=Math.max(Math.min(-g,y-g),-Math.max(e.length,t.length)),E=Math.min(Math.max(g,y+g),Math.max(e.length,t.length)),v=0,b=-9999;for(let I=A;I<=E;I++){let T=0,x=0,w=0,D=new Map,M=!1,L=null;for(let U=0;U=e.length)continue;let $=f[G],K=h[U],ee=$.info,z=K.info,oe=0;ee.isMovie!==z.isMovie&&(oe+=ja.EP_ALIGN.MOVIE_TYPE_MISMATCH),(ee.isStrictSpecial&&!z.isSpecial||z.isStrictSpecial&&!ee.isSpecial)&&(oe+=ja.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let le=$.effLang==="Unspecified"?"JP":$.effLang,te=K.effLang==="Unspecified"?"JP":K.effLang;le===te?oe+=ja.EP_ALIGN.LANG_MATCH:oe+=ja.EP_ALIGN.LANG_MISMATCH,ee.season!==null&&z.season!==null&&ee.season!==z.season&&(oe+=ja.EP_ALIGN.SEASON_NUM_MISMATCH),($.specialType||K.specialType)&&($.specialType!==K.specialType?oe+=ja.EP_ALIGN.SPECIAL_TYPE_MISMATCH:oe+=ja.EP_ALIGN.SPECIAL_TYPE_MATCH),ee.isSpecial===z.isSpecial&&(oe+=ja.EP_ALIGN.IS_SPECIAL_MATCH),_!==null&&!ee.isSpecial&&!z.isSpecial&&ee.num-z.num===_&&(oe+=ja.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let Q=0;$.effLang==="CN"&&K.effLang==="CN"&&$.strictCnCore&&K.strictCnCore&&($.strictCnCore.includes(K.strictCnCore)||K.strictCnCore.includes($.strictCnCore))?Q=ee.num!==null&&z.num!==null&&ee.num===z.num?ja.EP_ALIGN.CN_STRICT_MATCH:ja.EP_ALIGN.CN_STRICT_MISMATCH:Q=nE($.cleanEpText,K.cleanEpText),oe+=Q,x+=Q,ee.num!==null&&z.num!==null&&ee.num===z.num&&(oe+=ja.EP_ALIGN.NUMERIC_MATCH);let Z=1;if(ee.num!==null&&!ee.isSpecial&&(L!==null&&ee.num-L>1?Z=.1:L=ee.num),oe*=Z,Q*=Z,x+=Q,T+=oe,ee.num!==null&&z.num!==null){let de=(z.num-ee.num).toFixed(4);D.set(de,(D.get(de)||0)+Z)}w++}if(w>0){let U=T/w,G=0;for(let z of D.values())G=Math.max(G,z);let $=G/w,K=x/w;$>.6&&(M||K>.33)&&(U+=ja.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),U+=Math.min(w*.15,1.5);let ee=D.get("0.0000")||0;ee>0&&(U+=ja.EP_ALIGN.ZERO_DIFF_BONUS_BASE,U+=ee*ja.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT),U>b&&(b=U,v=I)}}return b>.3?v:0}function Xzr(e,t,r){let n=new Map,s=[];for(let o of e){if(r&&r.has(o.animeId))continue;let c=F.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(vC(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(FS(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=To(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let h=_ve(c.links,t,c.source).filter(p=>{let m=p.link.title||p.link.name||"",g=sE(m).replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(Be.Episode.SPECIAL_CHECK.test(g)||Be.Episode.DANDAN_IGNORE.test(g))||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(m))}).length;if(h>0){n.has(d)||n.set(d,new Map);let p=n.get(d);p.has(h)||p.set(h,[]),p.get(h).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${h}\u96C6 ("${c.animeTitle}")`)}else s.push(` [\u5FFD\u7565] [${c.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let i=new Map,a=[];for(let[o,c]of n.entries()){let u=0,l=0,d=[];for(let[h,p]of c.entries()){let m=p.length;m>l?(l=m,u=h,d=p):m===l&&h`${h}\u96C6(x${p.length})[${p.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&kt("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: -${s.join(` -`)} - => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function Jzr(e,t,r=""){let n=`${e}_${t}_${r}`,s=0;for(let i=0;i=0;l--){let d=e.links[l],f=d.title||d.name||"",h=Kc(f,e.source);if(!h.isSpecial&&!h.isPV&&!h.isStrictSpecial&&h.num!==null){o=l;break}}for(let l of t){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,h=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||h&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((h,p)=>h.originalIndex-p.originalIndex),d.push(...l.map(h=>P1t(h,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(h=>h.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),e.links.unshift(...n.map(l=>P1t(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,e.links,"\u5C3E\u90E8"),u(i,e.links,"\u7279\u6B8A"),c.length>0&&kt("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: -${c.join(` -`)}`)}function eYr(e){let t=new Map;if(!e||e.length<2)return t;let r=e.map(s=>{let i=s.animeTitle||"",a=sE(i).replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of Vq)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(Be.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(t.set(String(s.id),i),kt("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return t}function tYr(e,t){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!e.links||!t.links||!e.links.length||!t.links.length)return r;let n=m=>m.filter(_=>{let g=(_.title||_.name||"").toLowerCase();return!Be.Episode.PV_CHECK.test(g)&&!Be.Episode.SPECIAL_CHECK.test(g)}).length,s=n(e.links),i=n(t.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=m=>m.map(_=>yC(_.title||_.name||"").replace(/\d+/g,"").trim()).filter(_=>_.length>1),o=a(e.links),c=a(t.links);if(o.length<3||c.length<3)return r;let u=ju(o.join(" ")),l=ju(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,h=0,p=[];for(let m=0;m.6?f++:y<.3&&h++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,kt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${p.join(", ")}`)):h>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,kt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${p.join(", ")}`)),r}function Ave(e,t){let r=F.customMergeRules||[];if(r.length===0)return null;let n=To(e.animeTitle,e.typeDescription,e.aliases),s=To(t.animeTitle,t.typeDescription,t.aliases),i=(a,o)=>{let c=yr(a||"").toLowerCase().replace(Be.Clean.FROM_SUFFIX,""),u=yr(o||"").toLowerCase(),l=/[\((\[]?\d{4}[\))\]]?/.test(u),d=/【.*?】/.test(u)||/\[.*?\]/.test(u);if(l||(c=c.replace(/[\((\[]\d{4}[\))\]]/g,"")),!d){let f=c.match(/^(?:【|\[)(.+?)(?:】|\])/);if(f){let h=f[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(h)||(c=c.replace(f[0],h+" "))}c=c.replace(Be.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(Be.Season.INFO_STRONG,"")),c=c.replace(Be.Clean.MOVIE_KEYWORDS,""),{target:Lr(c).replace(/\s+/g,""),rule:Lr(u).replace(/\s+/g,"")}};for(let a of r){let o=_=>String(_).split(US)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(e.source).split(US),d=String(t.source).split(US);if(!l.includes(c)||!d.includes(u))continue;let f=i(e.animeTitle,a.primary.title),h=i(t.animeTitle,a.secondary.title),p=f.target===f.rule,m=h.target===h.rule;if(!(!p||!m)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function rYr(e,t,r=new Set,n=[]){if(!t||t.length===0)return[];let s=e.animeTitle||"",i=s.replace(Be.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(Be.Lang.CN_DUB_VER)||Be.Lang.CN.test(i),o=e.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:x1t(e.startDate),u=e.episodeCount||(e.links?e.links.length:0),l=ju(s),d=sE(i),f=kd(i),h=Ku(s,e.typeDescription,e.aliases),p=Array.from(h).filter(T=>T.startsWith("S")),m=[{animeId:e.animeId,animeTitle:s},...t],_=eYr(m),g=_.has(String(e.animeId)),y=_.get(String(e.animeId)),A=r.has(e.animeId),E=(T,x)=>{kt("info",`[Merge-Check] \u62D2\u7EDD: [${e.source}] ${s} vs [${T}] -> ${x}`)},v=[],b=0;for(let T of t){let x=T.animeTitle||"",w=Ave(e,T);if(w){if(w.action==="block"){E(x,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let se=ju(x);v.push({anime:T,score:1,lang:se,debugTitle:x,isCustomMapped:!0}),kt("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${e.source}] ${s} <-> [${T.source}] ${x}`);continue}if(!n.includes(T.source)){E(x,"\u8BE5\u6765\u6E90\u4E3A\u6620\u5C04\u8868\u52A8\u6001\u6CE8\u5165\uFF0C\u4E14\u672A\u547D\u4E2D\u7279\u6743\u89C4\u5219\uFF0C\u53D7\u9650\u4E8E\u6743\u9650\u6C99\u7BB1\u4E88\u4EE5\u963B\u65AD");continue}let D=r.has(T.animeId),M=A||D,L=T.source==="hanjutv",U=x.includes("N/A")||L?{year:null,month:null}:x1t(T.startDate),G=ju(x),$=x.replace(Be.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),K=!!$.match(Be.Lang.CN_DUB_VER)||Be.Lang.CN.test($),ee=a||K,z=T.episodeCount||(T.links?T.links.length:0);if($.includes("\u4E4B")){let se=$.split("\u4E4B"),J=sE(se[0]);if(d===J){E(x,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${J}")`);continue}}if(Gzr(s,x,e.typeDescription,T.typeDescription,u,z,e.source,T.source)){let se=vC(s,e.typeDescription,e.source),J=vC(x,T.typeDescription,T.source);E(x,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${se}/${FS(s,e.typeDescription)} [${e.typeDescription}] vs S:${J}/${FS(x,T.typeDescription)} [${T.typeDescription}])`);continue}let oe=c.year!==null&&U.year!==null,le=Kzr(s,x,oe);if(_.has(String(T.animeId))){let se=_.get(String(T.animeId));if(f===kd(se)&&!(Be.Season.SUFFIX_AMBIGUOUS.test(d)||Vq.some(ce=>ce.regex.test(d)))){E(x,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${se}")`);continue}}if(g&&kd($)===kd(y)){E(x,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${y}")`);continue}if(!oe&&le){E(x,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let Q=Yzr(i,$,e.typeDescription,T.typeDescription,e.aliases,T.aliases),Z=tYr(e,T),de=s.search(Be.Clean.MOVIE_KEYWORDS)!==-1,B=x.search(Be.Clean.MOVIE_KEYWORDS)!==-1;if(de!==B){let se=Ku(x,T.typeDescription,T.aliases),J=be=>kd(be.replace(Be.Clean.MOVIE_KEYWORDS,"")),ce=J(s),ge=J(x);if(nE(ce,ge)>.9&&!h.has("SEQUEL")&&!se.has("SEQUEL")){E(x,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${de?"Movie":"TV"}] vs [${B?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let k=M?0:Qzr(c,U,ee);if(k===-1){let se=Q;if(Z.isStrongMatch&&(se=!0),M&&(se=!0),le&&!M&&(se=!1),se&&c.year&&U.year&&Math.abs(c.year-U.year)>2&&!Z.isStrongMatch&&!M&&(se=!1),!se){E(x,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${U.year}, IsDub:${ee})`);continue}}if(!M&&zzr(i,$,e.typeDescription,T.typeDescription,e.aliases,T.aliases))if(Z.isStrongMatch)kt("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${x}] (Probe\u5F3A\u5339\u914D)`);else{E(x,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let W=se=>se?String(se).replace(Be.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",P=Array.from(new Set([i,...e.aliases||[]].map(W).filter(Boolean))),H=Array.from(new Set([$,...T.aliases||[]].map(W).filter(Boolean))),j=0,q=0;for(let se of P){let J=C1t(se);for(let ce of H)j=Math.max(j,nE(se,ce)),q=Math.max(q,nE(J,C1t(ce)))}let Y=Math.max(j,q),X=Y;le&&(Y+=ja.TITLE_STRUCTURE_CONFLICT),k!==-1&&(Y+=k);let ie=l==="CN",ne=G==="CN";if(ie&&ne?Y+=ja.LANG_MATCH_CN:ie!==ne&&(Y+=ja.LANG_MISMATCH),Z.isStrongMatch?(kt("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${Y.toFixed(2)}) -> ${Yh.SIMILARITY_STRONG}`),Y=Math.max(Y,Yh.SIMILARITY_STRONG)):Z.isStrongMismatch&&(E(x,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),Y=0),Yb&&(b=Y),v.push({anime:T,score:Y,lang:G,debugTitle:x}),kt("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${x} Score=${Y.toFixed(2)} (BestSoFar=${b.toFixed(2)})`)}if(v.length===0||bT.isCustomMapped))return[];let I=v.filter(T=>{if(T.isCustomMapped||T.score>=b-Yh.TIER_DEFAULT||T.lang==="CN"&&T.score>=b-Yh.TIER_CN)return!0;let x=Ku(T.debugTitle,T.anime.typeDescription,T.anime.aliases);if(Array.from(x).some(D=>D.startsWith("P"))&&T.score>=b-Yh.TIER_PART){let D=Array.from(x).filter(M=>M.startsWith("S"));if(p.length>0&&D.length>0){if(p.some(L=>D.includes(L)))return!0}else return!0}return!1});return I.sort((T,x)=>T.isCustomMapped&&!x.isCustomMapped?-1:!T.isCustomMapped&&x.isCustomMapped?1:x.score-T.score),I.map(T=>T.anime)}function nYr(e){let t=new Set;if(!e||e.length===0)return t;let r=new Map;e.forEach(n=>{let s=F.animes.find(d=>String(d.animeId)===String(n.animeId))||n,i=Ku(s.animeTitle,s.typeDescription,s.aliases);if(i.has("MOVIE")||i.has("OVA")||i.has("SP")||i.has("SEQUEL"))return;let a=yr(n.animeTitle||""),o=a.match(/^(?:【|\[)(.+?)(?:】|\])/);if(o){let d=o[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(d)||(a=a.replace(o[0],d+" "))}a=a.replace(/第([一二三四五六七八九十]+)季/g,(d,f)=>`\u7B2C${wh(f)}\u5B63`);let c=a.replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.META_SUFFIX,"").replace(Be.Lang.KEYWORDS_STRONG,"");if(Vq.forEach(d=>c=c.replace(d.regex,"")),c=c.replace(Be.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:季|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!c)return;let u=vC(n.animeTitle,s.typeDescription,s.source),l=`${c}|${u}`;r.has(l)||r.set(l,[]),r.get(l).push(n)});for(let[n,s]of r.entries()){if(s.length<2)continue;let[i,a]=n.split("|"),o=s.map(d=>` - [${d.source}] ${d.animeTitle}`).join(` -`);kt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${i}" [${a}] (\u5305\u542B ${s.length} \u4E2A\u6761\u76EE): -${o}`);let c=new Map,u=0;if(s.forEach(d=>{let f=F.animes.find(g=>String(g.animeId)===String(d.animeId))||d,h=Ku(f.animeTitle,f.typeDescription,f.aliases),p=1;for(let g of h)if(g.startsWith("S")){let y=parseInt(g.substring(1));isNaN(y)||(p=y)}if(p===1){let g=h.has("SEQUEL")||Be.Season.SUFFIX_SEQUEL.test(f.animeTitle),y=h.has("AMBIGUOUS")||Be.Season.SUFFIX_AMBIGUOUS.test(f.animeTitle);(g||y)&&(p=2,kt("info",`[Merge-Check] [Detail] [${f.source}] "${f.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}p>u&&(u=p);let m=0;f.links&&(/^(dandan|animeko)$/i.test(f.source)?m=f.links.filter(g=>{let y=g.title||g.name||"",A=y.replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();if(Be.Episode.SPECIAL_CHECK.test(A)||Be.Episode.DANDAN_IGNORE.test(A))return!1;let E=sE(y);return!(Be.Episode.SPECIAL_CHECK.test(E)||Be.Episode.DANDAN_IGNORE.test(E)||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(A)||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(y))}).length:m=f.links.length),c.has(f.source)||c.set(f.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let _=c.get(f.source);_.seasonCounts[p]||(_.seasonCounts[p]=0),_.seasonCounts[p]=Math.max(_.seasonCounts[p],m),p>_.maxSeason&&(_.maxSeason=p),p===1&&_.s1Candidates.push({anime:f,originalCount:m})}),u<=1)continue;let l=Array.from(c.keys());for(let[d,f]of c.entries()){if(f.maxSeason>1)continue;let h=0,p=!1;for(let _ of l){if(_===d)continue;let g=c.get(_);g.seasonCounts[1]&&(p=!0,g.seasonCounts[1]>h&&(h=g.seasonCounts[1]))}if(!p)continue;let m=h+Yh.COLLECTION_DIFF;f.s1Candidates.forEach(_=>{let g=h>0?_.originalCount/h:0;if(_.originalCount>m){if(g>Yh.COLLECTION_RATIO){kt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${d}] ${_.anime.animeTitle} (Ratio too high: ${g.toFixed(2)} > ${Yh.COLLECTION_RATIO})`);return}t.add(_.anime.animeId),kt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${d}] ${_.anime.animeTitle} (Count:${_.originalCount} > Thr:${m}, Ratio:${g.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else kt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${d}] ${_.anime.animeTitle} (Count:${_.originalCount} <= Threshold:${m})`)})}}return t}async function mve(e){let{pAnime:t,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:h,collectionProgress:p,baseSecondaries:m}=e;if(f.has(t.animeId)&&s.has(t.animeId))return kt("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let _=pve(t);if(!_.links){let L=F.animes.find(U=>String(U.animeId)===String(t.animeId));_.links=L?.links?pve(L.links):[]}if(!_.links||_.links.length===0)return kt("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${t.animeTitle}`),null;let g=t.animeTitle.replace(Be.Clean.FROM_SUFFIX,""),y=[],A=[t.animeId],E=!1,v=ju(t.animeTitle),b=Hq(_.links,t.animeTitle,u),I=f.has(t.animeId),T=(L,U)=>L?U&&L.includes(U)?L.replace(U,""):L:"",x=kd(t.animeTitle),w=n.filter(L=>kd(L.animeTitle)===x),D=Xzr(w,o,f);if(D.size>0){let L=Array.from(D.entries()).map(([U,G])=>`S${U}=${G}`).join(", ");(I||r.some(U=>n.some(G=>G.source===U&&f.has(G.animeId))))&&kt("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${L} }`)}let M=[];for(let L of r){let U=n.filter(ee=>{if(ee.source!==L)return!1;let z=Ave(t,ee);if(z)return z.action==="block"?(kt("info",`${l} \u62E6\u622A: \u526F\u6E90 [${ee.source}] ${ee.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(I)return!0;let oe=s.has(ee.animeId),le=h&&h.has(ee.animeId);return!(oe&&!le)}),G=[],$=new Set;for(let ee of U)$.has(ee.animeId)||($.add(ee.animeId),G.push(ee));if(U=G,d&&(U=U.filter(ee=>ju(ee.animeTitle)===d)),U.length>1&&U.sort((ee,z)=>{let oe=ju(ee.animeTitle)==="CN",le=ju(z.animeTitle)==="CN";return oe===le?0:oe?1:-1}),U.length===0)continue;let K=rYr(t,U,f,m);M.push(...K)}if(M.length>0){if(M.length>1&&(I||M.some(L=>f.has(L.animeId)))){M.sort((U,G)=>{let $=To(U.animeTitle,U.typeDescription,U.aliases)||1,K=To(G.animeTitle,G.typeDescription,G.aliases)||1;if($!==K)return $-K;let ee=r.indexOf(U.source),z=r.indexOf(G.source);return ee-z});let L=M.map(U=>`[${U.source}]S${To(U.animeTitle,U.typeDescription,U.aliases)||1}`);kt("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${L.join(" -> ")}`)}for(let L of M){let U=L.source,G=Ave(t,L);if(G&&G.action==="block"){kt("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${t.animeTitle} <-> [${U}] ${L.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!I&&!(h&&h.has(L.animeId))&&!G&&s.has(L.animeId))continue;let $=F.animes.find(Te=>String(Te.animeId)===String(L.animeId));if(!$?.links)continue;let K=pve($),ee=[],z=new Set,oe=[],le=[],te=K.animeTitle.replace(Be.Clean.FROM_SUFFIX,""),Q=N1t(_.links,u),Z=N1t(K.links,U),de=new Set([...Z].filter(Te=>!Q.has(Te))),B=new Set([...Q].filter(Te=>!Z.has(Te)));B.size>0&&O1t(_.links,B,u,`\u4E3B\u6E90:${u}`),de.size>0&&O1t(K.links,de,U,`\u526F\u6E90:${U}`);let k=K.links,W=_ve(_.links,o,u),P=_ve(k,o,U),H=ju(K.animeTitle),j=W,q=P,Y=0,X=0,ie=f.has(L.animeId),ne=(Te,xe,Fe)=>{let Ee=0,me=xe;if(Fe&&Fe>1){let Ae=!1,pe=Te?t.animeId:L.animeId;if(p&&p.has(pe)){let Se=p.get(pe),Ie=Fe-1;if(Se[`S${Ie}`]!==void 0){let Le=Se[`S${Ie}`]+1;Le>0&&Le=xe.length){let Le=(Fe-1)*12;Le Total ${xe.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Fe} -> Index ${Le})`),Ie=Math.max(0,Le-2))}if(Ie>0&&IeTe.isSpecial||Te.isStrictSpecial||Te.num!==null&&Te.num%1!==0,ge=new Map,be=0;if(G&&G.hasRoutes){kt("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${t.animeTitle} <-> ${L.animeTitle}`);let xe=D1t(j,q,v,H,u,U,t.animeTitle,K.animeTitle)+Y-X;be=xe;let Fe=new Map;for(let Ee of G.routes){let me=Ee.sec.end-Ee.sec.start+1,Ae=Ee.prim.end-Ee.prim.start+1;if(me!==Ae){kt("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Ee.sec.start}~E${Ee.sec.end} > E${Ee.prim.start}~E${Ee.prim.end}`);continue}for(let pe=0;pe{let It=Kc(T(ke.link.title||ke.link.name,b),u),ze=It.num;return ze===null&&!It.isStrictSpecial&&(ze=Qe+1),ze===He&&!It.isSpecial&&!It.isStrictSpecial});if(Ge!==-1){ge.set(Ee,Ge),Le.relativeIndex=Ge;let ke=W[Ge].originalIndex,Qe=_.links[ke],It=Qe.name||Qe.title||`Index ${ke}`,ze=gve(Ae.url),ot=Qe.url,lt=`${U}:${ze}`;ot.includes(Bd)||ot.startsWith(u+":")||(ot=`${u}:${ot}`);let _t=`${ot}${Bd}${lt}`,mr=Qe.title;if(mr){let Ht=U,it=(Ae.title||"").match(/^【([^】\d]+)(?:\d*)】/);it&&(Ht=it[1].trim()),mr=mr.replace(/^【([^】]+)】/,(yt,vs)=>`\u3010${vs}${US}${Ht}\u3011`)}ee.push({idx:Ge,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${It} <-> ${pe} (Rule: E${we}>E${He})`}),z.add(Ge),se++,oe.push({linkIndex:ke,newUrl:_t,newTitle:mr})}else Le.relativeIndex=Ee+xe,ee.push({idx:Le.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${He} <-> ${pe}`}),le.push(Le)}}else{G&&kt("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${U}] ${L.animeTitle} -> [${u}] ${t.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),be=D1t(j,q,v,H,u,U,t.animeTitle,K.animeTitle)+Y-X,be!==0&&kt("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${U}): Offset=${be} (P:${W.length}, S:${P.length})`);let xe=new Map,Fe=null;P.forEach((pe,Se)=>{let Ie=W[Se+be];if(!Ie)return;let Le=T(Ie.link.title||Ie.link.name,b),we=T(pe.link.title||pe.link.name,J),He=Kc(Le,u),Ge=Kc(we,U);if(He.num===null||Ge.num===null||ce(He)||ce(Ge))return;let ke=He.num-Ge.num,It=1+(nE(yC(Le),yC(we))>.45?1:0);Fe!==null&&He.num-Fe>1?It=.1:Fe=He.num,xe.set(ke,(xe.get(ke)||0)+It)});let Ee=xe.size>0?[...xe.entries()].reduce((pe,Se)=>Se[1]>pe[1]?Se:pe)[0]:null,me=W.reduce((pe,Se,Ie)=>{let Le=Kc(T(Se.link.title||Se.link.name,b),u);return ce(Le)&&!Le.isPV&&pe.push(Ie),pe},[]),Ae=0;for(let pe=0;pe{let ot=Kc(T(ze.link.title||ze.link.name,b),u);return ot.num===It&&!ce(ot)}),Se!==-1)ke.relativeIndex=Se;else{let ze=-.5;for(let ot=W.length-1;ot>=0;ot--){let lt=Kc(T(W[ot].link.title||W[ot].link.name,b),u);if(lt.num!==null&&!lt.isSpecial&<.numze&&(ze=Ht,It=lt)}It===-1&&!Ge.isPV&&Ae=0&&Se`\u3010${o1}${US}${Po}\u3011`)}ee.push({idx:ke.relativeIndex,text:` [\u5339\u914D] ${ot} <-> ${we}`}),z.add(Se),se++,oe.push({linkIndex:It,newUrl:co,newTitle:El})}else ee.push({idx:ke.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${we}`}),le.push(ke)}}for(let Te=0;Te (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(se>0){let Te=f.has(t.animeId)||f.has(L.animeId),xe=!1;if(G?xe=se>0:xe=Wzr(se,W.length,P.length,u,U,Te),xe){for(let we of oe){let He=_.links[we.linkIndex];He.url=we.newUrl,He.title=we.newTitle}let Fe=we=>we?we.replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim():"",Ee=Fe(_.animeTitle);_.aliases=[...new Set([..._.aliases||[],...K.aliases||[],...L.aliases||[],Fe(K.animeTitle)])].filter(we=>we&&we!==Ee),kt("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${U}] ${te} (\u672C\u6B21\u5408\u5E76 ${se} \u96C6)`),ee.length>0&&(ee.sort((we,He)=>we.idx-He.idx),kt("info",`${l} [${U}] \u6620\u5C04\u8BE6\u60C5: -${ee.map(we=>we.text).join(` -`)}`)),_.mergedChildren=_.mergedChildren||[],_.mergedChildren.some(we=>String(we.animeId)===String(L.animeId)&&we.source===L.source)||_.mergedChildren.push({animeId:L.animeId,animeTitle:L.animeTitle,source:L.source,episodes:K.links?K.links.length:0,imageUrl:L.imageUrl||""});let me=F.animes.find(we=>String(we.animeId)===String(L.animeId)&&we.source===L.source);if(me&&(me.isHiddenChild=!0),p&&(ie||I)){let we=-1;if(I&&!ie){for(let He=0;Hewe&&(we=ke)}}if(we!==-1){let He=To(K.animeTitle,K.typeDescription,K.aliases)||1;p.has(t.animeId)||p.set(t.animeId,{});let Ge=p.get(t.animeId);se>=3&&(Ge[`S${He}`]=we)}}else if(!I&&ie){for(let He=0;Hewe&&(we=ke.originalIndex)}}if(we!==-1){let He=To(t.animeTitle,t.typeDescription,t.aliases)||1;p.has(L.animeId)||p.set(L.animeId,{});let Ge=p.get(L.animeId);se>=3&&(Ge[`S${He}`]=we,kt("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${L.animeId}]: S${He} -> MaxIndex ${we}`))}}}let Ae=To(t.animeTitle,t.typeDescription,t.aliases)||1,pe=To(K.animeTitle,K.typeDescription,K.aliases)||1,Se=G&&Ae!==pe;f.has(L.animeId)||Se?kt("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${U}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):Zzr(_,le,U);let Ie=[],Le=[];_.links.forEach(we=>{let He=we.title.replace(Be.Clean.SOURCE_TAG,"").trim();Be.Episode.SINK_TITLE_STRICT.test(He)?Le.push(we):Ie.push(we)}),Le.length>0&&(_.links=[...Ie,...Le],kt("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${Le.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),E=!0,y.push(U),A.push(L.animeId)}else kt("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${U}] ${te} (\u5339\u914D\u7387\u8FC7\u4F4E: ${se}/${Math.max(W.length,P.length)})`)}}}if(E){let L=A.join("|");if(a.has(L))return kt("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${L})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(L);let U=F.animes.find($=>String($.animeId)===String(t.animeId)&&$.source===t.source);U&&(U.isHiddenChild=!0);for(let $=1;$({primary:h.primary,secondaries:[...h.secondaries],baseSecondaries:[...h.secondaries]}));for(let[h,p]of s.entries()){let m=i.find(_=>_.primary===h);m||(m={primary:h,secondaries:[],baseSecondaries:[]},i.push(m));for(let _ of p)m.secondaries.includes(_)||m.secondaries.push(_)}if(!i||i.length===0)return;kt("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=F.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=nYr(e),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(h=>{h.secondaries.length===0&&f.add(h.primary)});for(let h of i){if(h.secondaries.length===0)continue;let p=new Map,m=[h.primary,...h.secondaries];m.forEach((T,x)=>p.set(T,x));let _=m.join("&"),g=new Set,y=(T,x)=>{if(!T||T.length<2)return T;kt("info",`[Merge-Check] [Sort] ${x} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${T[0].animeTitle}`),T.sort((D,M)=>{let L=p.get(D.source)??99,U=p.get(M.source)??99;if(L!==U)return L-U;let G=oe=>{let le=Ku(oe.animeTitle,oe.typeDescription,oe.aliases);return le.has("MOVIE")||le.has("OVA")||le.has("SP")||FS(oe.animeTitle,oe.typeDescription)==="MOVIE"?2:1},$=G(D),K=G(M);if($!==K)return $-K;let ee=To(D.animeTitle,D.typeDescription,D.aliases)||1,z=To(M.animeTitle,M.typeDescription,M.aliases)||1;return ee-z});let w=T.map(D=>{let M=To(D.animeTitle,D.typeDescription,D.aliases)||1,L=Ku(D.animeTitle,D.typeDescription,D.aliases).has("MOVIE")||FS(D.animeTitle,D.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${p.get(D.source)??"?"}] [${L}] [${D.source}] ${D.animeTitle}`});return kt("info",`[Merge-Check] [Sort] ${x} \u6267\u884C\u987A\u5E8F: - ${w.join(` - `)}`),T},A=[];m.forEach(T=>{e.filter(w=>w.source===T&&!g.has(w.animeId)&&ju(w.animeTitle)==="CN").forEach(w=>A.push(w))});let E=!1;for(let T of m)if(e.some(x=>x.source===T&&!g.has(x.animeId)&&ju(x.animeTitle)==="CN")){E=!0;break}if(A.length>0&&E){kt("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${A.length} \u4E2A CN \u8D44\u6E90\u3002`),y(A,"Phase 1");for(let T of A){if(g.has(T.animeId))continue;let x=p.get(T.source),w=m.slice(x+1);if(w.length===0)continue;let D=await mve({pAnime:T,availableSecondaries:w,curAnimes:e,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:_,currentPrimarySource:T.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:h.baseSecondaries});D&&(u.push(D),g.add(T.animeId),d.add(T.animeId))}}let v=[];for(let T=1;TD.source===x&&!g.has(D.animeId)&&ju(D.animeTitle)==="CN").forEach(D=>v.push(D))}if(v.length>=2){kt("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${v.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),y(v,"Phase 1.5");for(let T of v){if(g.has(T.animeId))continue;let x=p.get(T.source),w=m.slice(x+1);if(w.length===0)continue;let D=await mve({pAnime:T,availableSecondaries:w,curAnimes:e,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:_,currentPrimarySource:T.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:h.baseSecondaries});D&&(u.push(D),g.add(T.animeId),d.add(T.animeId))}}let b=[];m.forEach(T=>{e.filter(w=>w.source===T&&!g.has(w.animeId)).forEach(w=>b.push(w))});let I=new Set(b.map(T=>T.source));if(b.length>0&&I.size>=2){kt("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${b.length} \u4E2A\u8D44\u6E90\u3002`),y(b,"Phase 2");for(let T of b){if(g.has(T.animeId))continue;let x=p.get(T.source),w=m.slice(x+1);if(w.length===0)continue;let D=Ku(T.animeTitle,T.typeDescription,T.aliases),M=Array.from(D).some(G=>G.startsWith("P")),L=null;if(M){L=new Set;let G=To(T.animeTitle,T.typeDescription,T.aliases)||1;for(let $ of d){let K=F.animes.find(oe=>String(oe.animeId)===String($));if(!K||!w.includes(K.source))continue;let ee=Ku(K.animeTitle,K.typeDescription,K.aliases);if(Array.from(ee).some(oe=>oe.startsWith("P")))continue;let z=To(K.animeTitle,K.typeDescription,K.aliases)||1;G===z&&L.add(K.animeId)}}let U=await mve({pAnime:T,availableSecondaries:w,curAnimes:e,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:_,currentPrimarySource:T.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:L,collectionProgress:c,baseSecondaries:h.baseSecondaries});U&&(u.push(U),g.add(T.animeId),d.add(T.animeId))}}}if(u.length>0){for(let h of u)ar(h,t);e.unshift(...u)}if(f.size>0)for(let h of e)d.has(h.animeId)&&f.has(h.source)&&d.delete(h.animeId);for(let h=e.length-1;h>=0;h--){let p=e[h];(p._isMerged||d.has(p.animeId))&&e.splice(h,1)}u.length>0?kt("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${e.length}`):kt("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${e.length})`)}function L1t(e){if(e.p&&typeof e.p=="string"){let t=parseFloat(e.p.split(",")[0]);if(!isNaN(t))return t}return e.t!==void 0&&e.t!==null?Number(e.t):typeof e.progress=="number"?e.progress/1e3:0}function M1t(e){if(e){if(typeof e.m=="string")return e.m;if(typeof e.text=="string")return e.text;if(typeof e.content=="string")return e.content}return""}function k1t(e){return!e||typeof e!="string"?"":e.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function q1t(e,t){let r=[...e||[],...t||[]],n=s=>{if(!s)return 0;if(s.t!==void 0&&s.t!==null)return Number(s.t);if(s.p&&typeof s.p=="string"){let i=parseFloat(s.p.split(",")[0]);return isNaN(i)?0:i}return 0};return r.sort((s,i)=>n(s)-n(i)),r}function H1t(e,t,r,n=.8,s=1){let i=t.indexOf("dandan");if(i===-1||!e[i]?.length)return kt("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),e;let a=e[i],o=a.length,c=new Map;return a.forEach(u=>{let l=k1t(M1t(u)),d=L1t(u);l&&(!c.has(l)||d{let d=t[l];if(d==="dandan"||!u?.length)return;let f=new Map,h=[],p=0;u.forEach(E=>{let v=k1t(M1t(E)),b=L1t(E);if(h.push({danmu:E,time:b}),v&&c.has(v)){p++;let I=Math.round(b-c.get(v));f.set(I,(f.get(I)||0)+1)}});let m=0,_=0;f.forEach((E,v)=>{E>_&&(_=E,m=v)});let g=Math.min(o,u.length),y=_/g,A=p>0?_/p:0;if(p/g{let b=Math.max(0,v-m);typeof E.p=="string"&&(E.p=E.p.replace(/^[^,]+(?=,)/,b.toFixed(2))),E.t!=null&&(E.t=b),typeof E.progress=="number"&&(E.progress=Math.round(b*1e3))})}),e}var Bd,US,$zr,ja,Yh,Be,Vq,qzr,Hzr,w1t,V1t=ae(()=>{Qt();jt();ii();Fu();ds();Bd="$$$",US="&",$zr=!1,ja=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),Yh=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});Be={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(日[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(日[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|日[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/日[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:季|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五六七八九十]+)\s*季/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:季|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|劇場版|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|无修|未删减|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五六七八九十]+\s*季|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|劇場版|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[季S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[季s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},Vq=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],qzr=[{regex:/(?:第)?\s*(\d+)\s*(?:季|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|劇場版|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(续篇|续集)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],Hzr=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];w1t=new Map});function z1t(e,t=Date.now()){let r=Number(e);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(t)||Date.now())}function sYr(e=""){return v9(_S(e)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function iYr(e=""){let t=String(e||"").trim();if(!t)return"";let r=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(t.length/4)*4,"=");return Ld(gS(r))}function QM(e){return typeof TextEncoder<"u"?new TextEncoder().encode(e):_S(e)}function dYr(e){return typeof TextDecoder<"u"?new TextDecoder().decode(e):Ld(e)}function eIt(e,t){let r=new Uint8Array(e.length);for(let n=0;n>=1}return r}function pYr(e){let t=new Uint8Array(16);for(let r=0;r<4;r++){let n=e.slice(4*r,4*r+4);t[4*r+0]=oi(n[0],2)^oi(n[1],3)^n[2]^n[3],t[4*r+1]=n[0]^oi(n[1],2)^oi(n[2],3)^n[3],t[4*r+2]=n[0]^n[1]^oi(n[2],2)^oi(n[3],3),t[4*r+3]=oi(n[0],3)^n[1]^n[2]^oi(n[3],2)}return t}function mYr(e){let t=new Uint8Array(16);for(let r=0;r<4;r++){let n=e.slice(4*r,4*r+4);t[4*r+0]=oi(n[0],14)^oi(n[1],11)^oi(n[2],13)^oi(n[3],9),t[4*r+1]=oi(n[0],9)^oi(n[1],14)^oi(n[2],11)^oi(n[3],13),t[4*r+2]=oi(n[0],13)^oi(n[1],9)^oi(n[2],14)^oi(n[3],11),t[4*r+3]=oi(n[0],11)^oi(n[1],13)^oi(n[2],9)^oi(n[3],14)}return t}function gYr(e,t){let r=new Uint8Array(e);r=SC(r,t,0);for(let n=1;n<=9;n++)r=E9(r),r=G1t(r),r=pYr(r),r=SC(r,t,n);return r=E9(r),r=G1t(r),r=SC(r,t,10),r}function _Yr(e,t){let r=new Uint8Array(e);r=SC(r,t,10);for(let n=9;n>=1;n--)r=xP(r),r=CP(r),r=SC(r,t,n),r=mYr(r);return r=xP(r),r=CP(r),r=SC(r,t,0),r}function AYr(e,t,r){let n=fYr(e,16),s=y9(t),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;o{aa();Y1t="6.8.2",aYr="a_8280",oYr="xiaomi",Q1t="Redmi Note 12",cYr="Xiaomi",W1t="14",uYr=`HanjuTV/${Y1t} (${Q1t}; Android ${W1t}; Scale/2.00)`,X1t=14*24*60*60*1e3,j1t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",J1t="f349wghhe784tqwh",Z1t="d3w8hf94fidk38lk",lYr="34F9Q53w/HJW8E6Q",K1t="fb3597b87601d5a7"});var Zt,gi=ae(()=>{jt();XA();ds();Zt=class{constructor(){}async search(t){throw new Error("Method 'search' must be implemented")}async getEpisodes(t){throw new Error("Method 'Episodes' must be implemented")}async handleAnimes(t,r,n,s=null,i=null){throw new Error("Method 'handleAnimes' must be implemented")}async getEpisodeDanmu(t){throw new Error("Method 'getEpisodeDanmu' must be implemented")}async getEpisodeDanmuSegments(t){throw new Error("Method 'getEpisodeDanmuSegments' must be implemented")}async getEpisodeSegmentDanmu(t){throw new Error("Method 'getEpisodeSegmentDanmu' must be implemented")}formatComments(t){throw new Error("Method 'formatComments' must be implemented")}async getComments(t,r,n=!1,s=null){if(n)return s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),R("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),await this.getEpisodeDanmuSegments(t);s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`),R("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`);let i=await this.getEpisodeDanmu(t);s&&await s(85,`\u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),R("info",`[system] [Base] \u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let a=this.formatComments(i);return s&&await s(100,`\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),R("info",`[system] [Base] \u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),qP(a,r)}async getSegmentComments(t,r=null){r&&await r(5,`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${t.type}\u5F39\u5E55`),R("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${t.type}\u5F39\u5E55`);let n=await this.getEpisodeSegmentDanmu(t);r&&await r(85,`\u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),R("info",`[system] [Base] \u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let s=this.formatComments(n);return r&&await r(100,`\u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),R("info",`[system] [Base] \u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),qP(s,t.type)}sortAndPushAnimesByYear(t,r){t.filter(n=>n!==null).sort((n,s)=>{let i=jA(n.animeTitle),a=jA(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=Xle(n.animeTitle),c=Xle(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}}});function Sn(e){let t=parseInt(e);return isNaN(t)||t<1900||t>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${t}-01-01T00:00:00Z`}function $S(e){let t=e.split(":").map(Number),r=0;return t.length===3?r=t[0]*3600+t[1]*60+t[2]:t.length===2?r=t[0]*60+t[1]:r=t[0],r}var bo=ae(()=>{});var WM,cIt=ae(()=>{gi();Qt();jt();$r();bo();ii();ds();WM=class extends Zt{async get360Zongyi(t,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await Me(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(R("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}R("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return R("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(t,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${t}&id=${r}&site=${n}`,a=(await Me(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){R("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(t,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${t}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await Me(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){R("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(t,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(t,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(R("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return R("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(t,r,n){try{let s=JSON.stringify([{cat_id:String(t),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await Me(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return R("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;dd.url)}return[]}catch(s){return R("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(t){try{let n=(await Me(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(t)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),R("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),R("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return R("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[360kan] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.titleTxt,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))F.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let h=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(F.vodAllowedPlatforms.includes(l.seriesSite))for(let p=0;p0)for(let g of _)d.push({name:g.name,url:g.url,title:`\u3010${p}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,m,p);if(g&&Number(g)>0){let y=await this.getEpisodesV1(f,m,p,g);if(y&&y.length>0)for(let A of y)d.push({name:A.name,url:A.url,title:`\u3010${p}\u3011 \u7B2C${A.name}\u96C6`,sort:A.name})}}catch(g){R("error",`[360kan] fallback detail fetch failed for site ${p}: ${g&&g.message?g.message:g}`)}}catch(m){R("error",`[360kan] failed to fetch episodesv2 for site ${p}: ${m&&m.message?m.message:m}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async h=>F.vodAllowedPlatforms.includes(h)?(await Promise.all(l.playlinks_year[h].map(async m=>await this.get360Zongyi(l.titleTxt,l.id,h,m)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:Sn(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),ar({...f,links:d},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){}formatComments(t){}}});var XM,uIt=ae(()=>{gi();Qt();jt();$r();bo();ii();ds();XM=class extends Zt{async getVodAnimes(t,r,n){try{let s=ent(t),i=encodeURIComponent(s),a=await Me(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){R("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return R("info",`[VOD] ${n} response: \u2193\u2193\u2193`),Si(o),{serverName:n,list:o.list}}else return R("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return R("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(t,r){let n=r.map(i=>this.getVodAnimes(t,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(t,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(t,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return R("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return R("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];R("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return R("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];R("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return R("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return R("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(t,r=null,n=null){return!F.vodServers||F.vodServers.length===0?[]:F.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(t,F.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(t,F.vodServers)}async getEpisodes(t){}async handleAnimes(t,r,n,s,i=null,a=null){let o=[];if(!t||!Array.isArray(t))return R("error","[VOD] sourceAnimes is not a valid array"),[];let c=t.filter(d=>Xt(d.vod_name,r,a)),u=a!==null?a:dr(r);if(u!==null){let d=c.filter(f=>{let h=Jt(f.vod_name).season;return h===u||u===1&&h===null});d.length>0&&(c=d,R("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(g=>g==="mgtv"?"imgo":g==="bilibili"?"bilibili1":g);let h=d.vod_play_url.split("$$$"),p=f.map((g,y)=>F.vodAllowedPlatforms.includes(g)?y:-1).filter(g=>g!==-1),m=[],_=0;for(let g of p){let y=f[g],A=h[g].split("#");for(let E of A){let v=E.split("$");_++,m.push({name:_.toString(),url:v[1],title:`\u3010${y}\u3011 ${v[0]}`})}}if(m.length>0){let g={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:Sn(d.vod_year),episodeCount:m.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),ar({...g,links:m},i),F.animes.length>F.MAX_ANIMES&&cr()}}catch(f){R("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(t){}formatComments(t){}}});async function lIt(e){let t="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};F.doubanCookie&&(r.Cookie=F.doubanCookie);try{let n=await Me(`${t}${e}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return R("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function dIt(e,t={}){let r="https://api.douban.com/v2";try{let n=await jn(`${r}${e}`,JSON.stringify({...t,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return R("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function fIt(e,t=20){let r=`/search?q=${e}&start=0&count=${t}&type=movie`;return await lIt(r)}async function hIt(e,t=20){return await dIt("/movie/search",{q:e,start:0,count:t})}async function pIt(e){let t=`/movie/${e}?for_mobile=1`;return await lIt(t)}async function mIt(e){let t=`/movie/imdb/${e}`;return await dIt(t)}var vve=ae(()=>{jt();$r();Qt()});async function gIt(e){let t="https://api.imdbapi.dev";try{let r=await Me(`${t}${e}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return R("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function _It(e){let t=`/titles/${e}/seasons`;return await gIt(t)}async function AIt(e,t){let r=`/titles/${e}/episodes?season=${t}`;return await gIt(r)}var EIt=ae(()=>{jt();$r()});var JM,yIt=ae(()=>{gi();jt();vve();EC();EIt();JM=class extends Zt{constructor(t){super("BaseSource"),this.doubanSource=t}async _getDoubanInfo(t,r,n){if(!t)return;let s=await mIt(t);if(!s||!s?.data)return;let i=s?.data?.id;if(i){let o=i.split("/").pop(),c=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:c,target:{cover_url:s.data?.image,title:s.data?.alt_title}})}}async getDoubanIdByTmdbId(t,r){try{let n=[],i=(await S1t(t,r)).data?.imdb_id;if(!i)return[];if(t==="movie")await this._getDoubanInfo(i,t,n);else{let a=await _It(i);R("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;R("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await AIt(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,t,n)}catch(l){R("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return R("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(t){try{let n=(await $q(t)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===t)),R("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return R("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return R("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){}async handleAnimes(t,r,n,s=null,i=null){return this.doubanSource.handleAnimes(t,r,n,s,i)}async getEpisodeDanmu(t){}formatComments(t){}}});var ZM,vIt=ae(()=>{gi();jt();vve();ds();ZM=class extends Zt{constructor(t,r,n,s,i){super("BaseSource"),this.tencentSource=t,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(t){try{let n=(await fIt(t))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){R("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await hIt(t))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),R("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return R("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(t){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[t.subtype]||t.subtype,s=t.images?.large||t.images?.medium||t.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=t.directors?.map(u=>u.name).join(" ")||"",o=t.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${t.year} / ${t.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(t.id),target:{rating:{count:t.collect_count||0,max:t.rating?.max||10,star_count:t.rating?.stars?parseInt(t.rating.stars)/10:0,value:t.rating?.average||0},controversy_reason:"",title:t.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${t.subtype==="movie"?"movie":"tv"}/${t.id}`,cover_url:i,year:String(t.year||""),card_subtitle:c,id:String(t.id),null_rating_reason:""},target_type:t.subtype==="movie"?"movie":"tv"}}async getEpisodes(t){}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Douban] sourceAnimes is not a valid array"),[];let o=t.filter(l=>{let d=l?.target?.title||"";return Xt(d,r,i)}),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",h=Jt(f).season;return h===c||c===1&&h===null});l.length>0&&(o=l,R("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;R("info","[Douban] doubanId: ",d,l?.target?.title,f);let h=await pIt(d),p=[];for(let m of h.data?.vendors??[]){if(!m)continue;R("info","[Douban] vendor uri: ",m.uri),h.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":h.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&h.data?.genres.includes("\u52A8\u753B")&&h.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&h.data?.genres.includes("\u52A8\u753B")&&h.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&h.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&h.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&h.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u534E\u8BED\u7535\u5F71":f==="\u7535\u5F71"?f="\u5916\u8BED\u7535\u5F71":f==="\u7535\u89C6\u5267"&&h.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&h.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&h.data?.countries.some(g=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(g))&&(f="\u6B27\u7F8E\u5267");let _=[{title:h.data?.title,year:h.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(m.id){case"qq":{let g=new URL(m.uri).searchParams.get("cid");g&&(_[0].provider="tencent",_[0].mediaId=g,await this.tencentSource.handleAnimes(_,h.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(m.uri).searchParams.get("tvid");g&&(_[0].provider="iqiyi",_[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(_,h.data?.title,a,s,i));break}case"youku":{let g=new URL(m.uri).searchParams.get("showid");g&&(_[0].provider="youku",_[0].mediaId=g,await this.youkuSource.handleAnimes(_,h.data?.title,a,s,i));break}case"bilibili":{let g=new URL(m.uri).pathname.split("/").pop();g&&(_[0].provider="bilibili",_[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(_,h.data?.title,a,s,i));break}case"miguvideo":{let g=null,A=decodeURIComponent(m.uri).match(/"contentID":"([^"]+)"/);A&&A[1]&&(g=A[1]),g&&(_[0].provider="migu",_[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(_,h.data?.title,a,s,i));break}}}return p}catch(d){return R("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){}formatComments(t){}}});var _g,ek,tk,Zo,rk,SIt=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();_g=null,ek=0,tk=0,Zo={search:"WIN",detail:"TV",danmu:"TV"},rk=class extends Zt{constructor(){super(),this.isBatchMode=!1}API_CONFIG={TV_SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",MAC_HOST:"api.cluuid.cn",MAC_DANMU_HOST:"static-dm.lequkeji.com",MAC_VERSION:"1.2.3",MAC_USER_AGENT:"%E4%BA%BA%E4%BA%BA%E8%A7%86%E9%A2%91%20for%20Mac/1.0 CFNetwork/3860.600.21 Darwin/25.5.0",MAC_CLIENT_TYPE:"mac_rrsp",WIN_HOST:"api.pleasfun.com",WIN_DANMU_HOST:"static-dm.lequkeji.com",WIN_VERSION:"1.24.2",WIN_USER_AGENT:"Boost.Beast/351",WIN_CLIENT_TYPE:"win_rrsp_gw",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let t="aY",r=24-t.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=t;for(let i=0;iMath.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let t=_g;_g=this.generateRandomAliId(),ek=0,tk=Math.floor(Math.random()*31)+30,t?R("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${t} -> ${_g}`):R("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${_g}`),R("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${tk} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){_g||this.rotateAliId(),ek>=tk&&(R("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${ek}/${tk})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),ek++,R("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${ek}/${tk} (\u5F53\u524DID: ...${_g.slice(-6)})`)}getAliId(){return _g||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),_g}generateTvHeaders(t,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:t.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}buildMacHeaders(){return{aliId:this.generateMacAliId(),ct:this.API_CONFIG.MAC_CLIENT_TYPE,cv:this.API_CONFIG.MAC_VERSION,token:"",Accept:"*/*","Accept-Language":"zh-CN,zh-Hans;q=0.9","User-Agent":this.API_CONFIG.MAC_USER_AGENT}}buildWinHeaders(){return{aliId:this.generateWinAliId(),ct:this.API_CONFIG.WIN_CLIENT_TYPE,cv:this.API_CONFIG.WIN_VERSION,token:"","Content-Type":"application/json","User-Agent":this.API_CONFIG.WIN_USER_AGENT}}generateSignature(t,r,n,s,i,a,o,c){let u=`${t.toUpperCase()} -aliId:${r} -ct:${n} -cv:${s} -t:${i} -${a}?${o}`;return jst(c,u)}buildSignedHeaders({method:t,url:r,params:n={},deviceId:s,token:i}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=Ust(r),c=RP(n),u=Date.now(),d=this.generateSignature(t,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(t,r,n){try{let s=await Me(t,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(R("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return R("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(t,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=xR(t,r);return await Me(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(t,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:t,url:r,params:n,deviceId:s});return await Me(r+"?"+RP(n),{headers:i,timeout:5e3})}async searchAppContent(t,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:t,num:r,searchNext:"",well:"match"},a=NP(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,h])=>`${f}=${encodeURIComponent(h==null?"":String(h))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await Me(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(R("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let h=[];if(f.highlights&&(f.highlights.alias&&(h=f.highlights.alias.split(",").map(p=>p.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let p=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();p&&!h.includes(p)&&h.push(p)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return R("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(t,r=20){try{let n="/search/v5/season",s={keywords:t,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=RP(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await Me(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(R("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return R("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(t,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=RP({keywords:t,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await Me(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return R("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],h=p=>{let m=[];if(p.highlights&&(p.highlights.alias&&(m=p.highlights.alias.split(",").map(_=>_.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),p.highlights.original_name)){let _=p.highlights.original_name.replace(/<[^>]+>/g,"").trim();_&&!m.includes(_)&&m.push(_)}return{provider:"renren",mediaId:String(p.id),title:String(p.title||p.alias||p.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:m,type:p.classify||p.cat||"Renren",season:null,year:p.year||null,imageUrl:p.cover||p.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(p=>u.push(h(p))),d.forEach(p=>u.push(h(p))),f.forEach(p=>{p.seasonList&&Array.isArray(p.seasonList)&&p.seasonList.forEach(m=>{u.push(h(m))})}),u}catch(n){return R("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(t,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:t,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;csetTimeout(f,s-c));let u=await this.renrenRequest("GET",i,a);return n.value=Date.now(),r&&(r.value=!1),u.data?(wP(u.data)?.data?.searchDramaList||[]).map(f=>{let h=[];if(f.highlights&&(f.highlights.alias&&(h=f.highlights.alias.split(",").map(p=>p.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let p=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();p&&!h.includes(p)&&h.push(p)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(R("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return R("info","[Renren] performNetworkSearch error:",i.message),null}}async search(t){R("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(Zo.search);i===-1&&(i=0);for(let a=i;a ${o}`),Zo.search=o);break}else R("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){R("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(R("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),Zo.search="WIN"),r}async getAppDramaDetail(t,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(t),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=NP(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,h])=>`${f}=${encodeURIComponent(h)}`).join("&"),c=this.generateTvHeaders(n,a),u=await Me(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${t}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(R("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${t})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${t})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${t})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${t})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(R("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${t}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return R("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(t,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=NP(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([p,m])=>`${p}=${encodeURIComponent(m)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${t}${i}?${c}`,d=await Me(l,{headers:u,timeout:5e3});if(!d||!d.data)return R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${t}): ID=${r}`),null;let f=d.data,h=f.msg||f.message||"";return h.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(R("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${t}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${h} (${t}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${t}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${t}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(R("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${t}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return R("info",`[Renren] getGatewayDramaDetail error (${t}):`,s.message),null}}async getWebDramaDetailFallback(t){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(t),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=wP(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(R("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${t}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return R("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(t,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(Zo.detail);i===-1&&(i=0);for(let a=i;a ${o}`),Zo.detail=o),n;R("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){R("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return R("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),Zo.detail="TV",null}async getEpisodes(t){let r=await this.getDetail(t);if(!r)return R("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${t}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return R("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${t}`),[];let n=[],s=String(t);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("info","[Renren] sourceAnimes is not a valid array"),[];let o=t.filter(d=>Xt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>Xt(f,r,i)):!1),c=i!==null?i:dr(r);if(c!==null){let d=o.filter(f=>{let h=Jt(f.title).season;return h===c||c===1&&h===null});d.length>0&&(o=d,R("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[Zo.search]||"\u672A\u77E5";R("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${t.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),h=[];for(let p of f)h.push({name:p.episodeIndex.toString(),url:p.episodeId,title:`\u3010${p.provider}\u3011 ${p.title}`});if(h.length>0){let p=d.aliases||[];f.enName&&!p.includes(f.enName)&&p.push(f.enName);let m=f.year||d.year||"",_=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${m})\u3010${_}\u3011from renren`,aliases:p,type:_,typeDescription:_,imageUrl:d.imageUrl,startDate:Sn(m),episodeCount:h.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),ar({...g,links:h},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(f){R("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(t){try{let r=Date.now(),n=t;String(t).includes("-")&&(n=String(t).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=NP(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await Me(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(R("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=wP(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return R("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(t){let r=String(t).includes("-")?String(t).split("-")[1]:t,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(t){let r=String(t).includes("-")?String(t).split("-")[1]:t,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(t){let r=t;String(t).includes("-")&&(r=String(t).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(R("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=wP(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return R("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(t){let r=0;if(String(t).includes("-")){let[o,c]=String(t).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(Zo.danmu);i===-1&&(i=0);for(let o=i;o ${c}`),Zo.danmu=c),n.length>0?R("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):R("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=t,n;R("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){R("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}R("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),Zo.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=t,a}async getEpisodeDanmuSegments(t){return new Gt({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}parseRRSPPFields(t){let r=String(t).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let h=d(l);return isNaN(h)?f:h},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(t){let r=t.adDurationMs||0,n=t.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=t.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&R("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}}});var bYr,qS,TIt,Ki,nk,bIt=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();yve();bYr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},qS=1e8,TIt=6e4,Ki=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),nk=class extends Zt{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmedUid=null}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(t){return bYr[t]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await sIt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await nIt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(t,r={}){let n=await this.buildTvHeaders(),s=await Me(`${this.tvHost}${t}`,{headers:n.headers,timeout:1e4,retries:1,...r});return Eve(s?.data,n.uid)}logError(t,r){R("error",`[Hanjutv] ${t}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(t=[],r=""){let n=Gq(r);return Array.isArray(t)?t.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(t,r,n){try{return await t()}catch(s){return n&&R("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(t=[]){return Array.isArray(t)?t.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(t=[]){return Array.isArray(t)?t.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(t=[]){return this.normalizeEpisodes(t).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(t=[]){return this.normalizeEpisodes(t).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(t){let r=t?.seriesData?.seriesList||t?.seriesList||t?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(t=[]){let r=new Map;for(let n of t){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}normalizeSearchPairTitle(t=""){return String(t||"").normalize("NFKC").trim()}getSearchPairYear(t){let r=t?.publishTime??t?.releaseTime??t?.year??null,n=String(r??"").trim(),s=c=>Number.isInteger(c)&&c>=1900&&c<=2100,i=c=>{let l=new Date(c).getUTCFullYear();return s(l)?l:null};if(/^(?:19|20)\d{2}$/.test(n))return Number(n);let a=n.match(/^((?:19|20)\d{2})\d{4}$/);if(a)return Number(a[1]);if(r!==null&&r!==""){let c=Number(r);if(Number.isFinite(c)){if(c!==0){let u=Math.abs(c),l=null;u>=1e10?l=c:u>=1e8&&(l=c*1e3);let d=l===null?null:i(l);if(d!==null)return d}}else if(n){let u=i(n);if(u!==null)return u}}let o=String(t?.searchMemo||"").match(/(?:19|20)\d{2}/);return o?Number(o[0]):null}getSearchPairEpisodeCount(t){let r=Number(t?.lastSerialNo??t?.totalEpisode??t?.episodeCount);return Number.isFinite(r)&&r>0?r:null}getSearchPairMetadata(t){let r=n=>n==null?null:String(n).trim()||null;return{playMode:r(t?.playMode),year:r(this.getSearchPairYear(t)),episodeCount:r(this.getSearchPairEpisodeCount(t)),category:r(t?.category)}}isMergeableSearchPair(t,r){let n=this.normalizeSearchPairTitle(t?.name),s=this.normalizeSearchPairTitle(r?.name);if(!n||!s||n!==s)return!1;let i=this.getSearchPairMetadata(t),a=this.getSearchPairMetadata(r);for(let o of["playMode","year","category"])if(i[o]!==null&&a[o]!==null&&i[o]!==a[o])return!1;return!0}getSearchPairMatchScore(t,r){if(!this.isMergeableSearchPair(t,r))return null;let n=this.getSearchPairMetadata(t),s=this.getSearchPairMetadata(r),i={year:8,playMode:4,category:2,episodeCount:1},a=0;for(let[o,c]of Object.entries(i))n[o]!==null&&s[o]!==null&&n[o]===s[o]&&(a+=c);return a}selectUniqueBestSearchCandidate(t,r=[]){let n=r.map(a=>({candidate:a,score:this.getSearchPairMatchScore(t,a)})).filter(a=>a.score!==null);if(n.length===0)return null;let s=Math.max(...n.map(a=>a.score)),i=n.filter(a=>a.score===s);return i.length===1?i[0].candidate:null}pairSearchCandidateGroup(t=[],r=[]){let n=new Map(t.map(a=>[String(a.sid),a])),s=new Map(r.map(a=>[String(a.sid),a])),i=new Map;for(;n.size>0&&s.size>0;){let a=Array.from(n.values()),o=Array.from(s.values()),c=new Map,u=new Map;for(let d of a){let f=this.selectUniqueBestSearchCandidate(d,o);f&&c.set(String(d.sid),f)}for(let d of o){let f=this.selectUniqueBestSearchCandidate(d,a);f&&u.set(String(d.sid),f)}let l=[];for(let[d,f]of c){let h=String(f.sid),p=u.get(h);p&&String(p.sid)===d&&l.push({s5Sid:d,tvSid:h,tvItem:f})}if(l.length===0)break;for(let d of l)i.set(d.s5Sid,d.tvItem),n.delete(d.s5Sid),s.delete(d.tvSid)}return i}pairSearchCandidates(t=[],r=[]){let n=o=>{let c=new Map;for(let u of o){let l=this.normalizeSearchPairTitle(u?.name);l&&(c.has(l)||c.set(l,[]),c.get(l).push(u))}return c},s=n(t),i=n(r),a=new Map;for(let[o,c]of s){let u=i.get(o);if(!u)continue;let l=this.pairSearchCandidateGroup(c,u);for(let[d,f]of l)a.set(d,f)}return a}buildSearchCandidate(t,r,n=""){if(!t?.sid)return null;let s=String(t.sid),i=String(n||"").trim(),a=r===Ki.MERGED?Xn(`hxq:${s}|tv:${i}`):Xn(s);return{...t,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(t,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],_=[];for(let g of p)(Xt(g?.name||"",t)?m:_).push(g);return{matched:m,unmatched:_}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=this.pairSearchCandidates(o.matched,c.matched),f=new Set(Array.from(d.values(),p=>String(p.sid)));for(let p of o.matched){let m=d.get(String(p.sid));m?l.push(this.buildSearchCandidate(p,Ki.MERGED,m.sid)):l.push(this.buildSearchCandidate(p,Ki.HXQ))}c.matched.filter(p=>!f.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,Ki.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,Ki.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,Ki.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,Ki.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,Ki.TV)).filter(Boolean));let h=p=>p.map(m=>m.name);return{resultList:l,stats:{s5Total:s.length,s5Matched:o.matched.length,tvTotal:i.length,tvMatched:c.matched.length,mergedCount:u?l.filter(p=>p?._variant===Ki.MERGED).length:0,s5MatchedList:h(o.matched),s5UnmatchedList:h(o.unmatched),tvMatchedList:h(c.matched),tvUnmatchedList:h(c.unmatched)}}}async extractFromPayload(t,r,n){if(!t||typeof t!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof t.data=="string"&&t.data.length>0){let i;try{i=await Eve(t,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(i);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let s=this.extractSearchItems(t);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(t){try{return await Me(`${this.appHost}/api/common/configs`,{headers:t,timeout:8e3,retries:0}),!0}catch{return!1}}async ensureMobileIdentityWarmed(){if(this._mobileWarmedUid)return!0;if(this._mobileWarmupPromise)return this._mobileWarmupPromise;let t=(async()=>{let r=await this.buildMobileHeaders();if(this._mobileWarmedUid===r.uid)return!0;let n=await this.warmupMobileIdentity(r.headers);return n&&(this._mobileWarmedUid=r.uid),n})();this._mobileWarmupPromise=t;try{return await t}finally{this._mobileWarmupPromise===t&&(this._mobileWarmupPromise=null)}}async searchWithS5Api(t){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(t),i=await Me(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(t){let r=encodeURIComponent(t),n=await this.buildTvHeaders(),s=await Me(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(t){try{let r=String(t||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(R("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(R("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(R("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),R("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),R("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(t,r,n,s){try{let i=String(t||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(R("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(t){return this.getSeriesDetail(t,async r=>(await Me(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(t){return this.getSeriesDetail(t,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(t){try{let r=String(t||"").trim();if(!r)return[];let n=[async()=>{let i=await Me(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await Me(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await Me(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(R("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(t){try{let r=String(t||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(R("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(t,...r){let n=[t?.updateTime,t?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(t,r=""){let n=String(r||"").trim();return n?`\u7B2C${t}\u96C6\uFF1A${n}`:`\u7B2C${t}\u96C6`}buildEpisodeLink(t,r){let n=t?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,t?.title||r?.title||""),i="";if(t?.pid&&r?.eid){let a=aIt(t.pid,r.eid);i=a?`hanjutv:${a}`:""}else t?.pid?i=`hxq:${t.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(t=[],r=[]){let n=new Map(t.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(t,r,n,s){let i=this.getCategory(r?.category??t?.category),a=this.resolveAnimeYear(t,r);return{animeId:s,bangumiId:String(s),animeTitle:`${t.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:t?.image?.thumb||"",startDate:Sn(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(t){if(!t)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(t),this.getHxqEpisodes(t)]);return{detail:r,episodes:n}}async getTvBundle(t){if(!t)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(t),this.getTvEpisodes(t)]);return{detail:r,episodes:n}}async buildAnimePayload(t){let r=t?._variant||Ki.HXQ,n=String(t?.sid||"").trim(),s=String(t?.tvSid||"").trim(),i=s||(r===Ki.TV?n:""),a=Number(t?.animeId),o=r===Ki.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Xn(`hxq:${n}|tv:${s}`):null,c=(r===Ki.HXQ||r===Ki.MERGED)&&n,u=(r===Ki.TV||r===Ki.MERGED)&&i,[l,d]=await Promise.all([c?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),u?this.getTvBundle(i):Promise.resolve({detail:null,episodes:[]})]);if(r===Ki.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let h=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(t,h,f,o),links:f}}}if((r===Ki.HXQ||r===Ki.MERGED)&&n){let f=l.episodes.map(h=>this.buildEpisodeLink(h,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(t,l.detail,f,o??Xn(n)),links:f}}if((r===Ki.TV||r===Ki.MERGED)&&i){let f=d.episodes.map(h=>this.buildEpisodeLink(null,h)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(t,d.detail,f,o??Xn(i)),links:f}}return null}async handleAnimes(t,r,n,s=null,i=null){if(!Array.isArray(t))return R("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=t.filter(l=>Xt(l.name,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.buildAnimePayload(l);return!d||!d.summary||!Array.isArray(d.links)||d.links.length===0?null:d}catch(d){return R("error",`[Hanjutv] Error processing anime: ${d.message}`),null}}));for(let l of u)if(l)try{a.push(l.summary),ar({...l.summary,links:l.links},s),F.animes.length>F.MAX_ANIMES&&cr()}catch(d){R("error",`[Hanjutv] Error processing anime: ${d.message}`)}return this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(t){let r=String(t?.id||"").trim();if(!r)return[];let n=[];if(!t.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=TIt,l=0,d=240;for(;c0&&a.push(...h);let p=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",m=Number(f?.data?.nextAxis??qS),_=Number(f?.data?.lastId??o);if(!Number.isFinite(m)||m<=c||m>=qS)break;if(Number.isFinite(_)&&_>o&&(o=_),c=m,!p){if(h.length===0)break;u=c+TIt}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${i})`,o),a.length>0){n=a;break}}}}if(n.length===0){let s=0,i=0,a=0,o=120;for(;i0&&n.push(...u);let l=Number(c.more??0)===1||c.more===!0||c.more==="1",d=Number(c.nextAxis??qS),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=qS||(Number.isFinite(f)&&f>s&&(s=f),i=d,l||(s=0),u.length===0&&!l))break}catch(c){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",c);break}}return n}async getEpisodeDanmu(t){let r=oIt(t),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(t){return R("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Gt({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}}});var HS,Sve=ae(()=>{gi();Qt();jt();$r();bo();ii();Fu();EC();ds();Vi();qm();HS=class extends Zt{async search(t){try{let r=[];F.useBangumiData&&(r=await Qf(t,["gamer","gamer_hk"]),R("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`));let n=r.filter(h=>h.video_sn);if(r.length>0&&r.length===n.length)return R("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(h=>{let m=(h.titles.find(_=>_&&_.includes(t))||h.titles[1]||h.title)+(h.titleSuffix||"");return{video_sn:parseInt(h.video_sn),title:m,_displayTitle:m,isLocalPriority:!0,aliases:[...h.titles],_typeStr:h.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:t,_bangumiBegin:h.begin||null}});let s=xl(t),i=t,a=encodeURIComponent(s);R("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${t}`),R("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let h=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,p=F.makeProxyUrl(h),m=await Me(p,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(m&&m.data&&m.data.anime&&m.data.anime.length>0){o.abort();let _=m.data.anime;for(let g of _)try{g._originalQuery=t,g._searchUsedTitle=s}catch{}return R("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(_)}`),R("info",`[Bahamut] \u8FD4\u56DE ${_.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:_,source:"original"}}return R("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(h){return R("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:h.message,name:h.name,stack:h.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(E=>setTimeout(E,100));let h=await _C(i,o.signal,"Bahamut");if(!h||!h.title)return R("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:p,cnAlias:m}=h;R("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${p}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(p)}`,y=F.makeProxyUrl(g),A=await Me(y,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:o.signal,retries:3});if(A&&A.data&&A.data.anime&&A.data.anime.length>0){let E=A.data.anime;for(let v of E)try{v._originalQuery=t,v._searchUsedTitle=p,v._tmdbCnAlias=m}catch{}return R("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(E)}`),R("info",`[Bahamut] \u8FD4\u56DE ${E.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:E,source:"tmdb"}}return R("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(h){return h.name==="AbortError"?(R("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(R("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:h.message,name:h.name,stack:h.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:R("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let h of f){if(!h||!h.acg_sn)continue;let p=r.find(m=>String(h.acg_sn)===String(m.siteId))||r.find(m=>h.title&&m.title===h.title);if(p){let m=h.title,g=(p.titles.find(y=>y&&y.includes(t))||p.titles[1]||p.title)+(p.titleSuffix||"");h.title=g,h._displayTitle=g,h.isLocalPriority=!0,h.aliases=[...p.titles],m&&!h.aliases.includes(m)&&h.aliases.push(m),h._typeStr=p.typeStr,R("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${h.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return R("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${t}`,n=F.makeProxyUrl(r),s=await Me(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return R("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return R("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return R("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return R("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=xl(r);function c(_,g,y){if(!_)return!1;let A=String(_),E=String(g||""),v=String(y||"");if(F.strictTitleMatch){if(KA(A,E)||v&&KA(A,v))return!0;try{if(KA(A,xl(E))||KA(A,yr(E))||v&&(KA(A,xl(v))||KA(A,yr(v))))return!0}catch{}return!1}let b=Lr(A),I=Lr(E),T=v?Lr(v):"";if(b.includes(I)||T&&b.includes(T))return!0;try{if(b.includes(Lr(xl(E)))||b.includes(Lr(yr(E)))||T&&(b.includes(Lr(xl(v)))||b.includes(Lr(yr(v)))))return!0}catch{}try{if(b.toLowerCase().includes(I.toLowerCase())||T&&b.toLowerCase().includes(T.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(t)?t:[]).filter(_=>{let g=_.title||"",y=_._searchUsedTitle||_._originalQuery||"";return o||_._searchUsedTitle&&_._searchUsedTitle!==r?(R("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${g}`),!0):c(g,r,y)||Array.isArray(_.aliases)&&_.aliases.some(A=>c(A,r,y))});l.forEach(_=>{_._originalTitleAlias=_.title?yr(_.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;AC(l,d);let f=i!==null?i:dr(r),h=l;if(f!==null){let _=l.filter(g=>{let y=g._displayTitle||g.title,A=Jt(y).season;return A===f||f===1&&A===null});_.length>0&&(h=_,R("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let p=new Map,m=await Promise.all(h.map(async _=>{try{let g=String(_.video_sn);p.has(g)||p.set(g,this.getEpisodes(_.video_sn));let y=await p.get(g);if(!y||typeof y!="object"||Array.isArray(y))return null;let A=y.video,E=null;y.anime.episodes&&(E=y.anime.episodes[0]||Object.values(y.anime.episodes)[0]);let v=[];if(E&&Array.isArray(E))for(let b of E){let I=`\u7B2C${b.episode}\u96C6`;v.push({name:b.episode.toString(),url:b.videoSn.toString(),title:`\u3010bahamut\u3011 ${I}`})}if(v.length>0){let b=null;if(_._bangumiBegin&&(b=parseInt(_._bangumiBegin.substring(0,4))),!b&&y.anime&&y.anime.seasonStart&&(b=new Date(y.anime.seasonStart).getFullYear()),!b&&A&&A.upTime){let U=String(A.upTime).match(/(\d{4})/);U&&(b=parseInt(U[1]))}if(!b){let L=(_.info||"").match(/(\d{4})/);L&&(b=parseInt(L[1]))}let I=y.anime&&y.anime.cover||_.cover||A&&A.cover||"",T=_._displayTitle||yr(_.title),x=Array.isArray(_.aliases)?[..._.aliases]:[];_._originalTitleAlias&&_._originalTitleAlias!==T&&!x.includes(_._originalTitleAlias)&&x.push(_._originalTitleAlias);let w=_._typeStr||"\u52A8\u6F2B",D=y.anime&&y.anime.title||A&&A.title||"";D.includes("[\u96FB\u5F71]")?w="\u5267\u573A\u7248":D.includes("[\u7279\u5225\u7BC7]")&&(w="OVA");let M={animeId:_.video_sn,bangumiId:String(_.video_sn),animeTitle:`${T}(${b||"N/A"})\u3010${w}\u3011from bahamut`,aliases:x,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:I,startDate:b?Sn(b):Sn(y.anime.seasonStart?new Date(y.anime.seasonStart).getFullYear():null),episodeCount:v.length,rating:A.rating,isFavorited:!0,source:"bahamut"};a.push(M),ar({...M,links:v},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(g){R("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),m}async getEpisodeDanmu(t){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${t}`,s=F.makeProxyUrl(n),i=await Me(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return R("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(t){return R("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Gt({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){let r={0:1,1:5,2:4};return t.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:F.danmuSimplifiedTraditional==="simplified"?yr(n.text):n.text,t:n.time/10}))}}});var VS,Tve=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();VS=class extends Zt{extractAliasesFromHintWords(t){if(!t||typeof t!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=t.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(t,r,n=null){return Xt(t.title,r,n)?!0:Array.isArray(t.aliases)&&t.aliases.some(s=>Xt(s,r,n))}filterTencentSearchItem(t,r){if(!t.videoInfo||!t.doc)return null;let n=t.videoInfo,s=t.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let i=n.title.replace(//g,"").replace(/<\/em>/g,"");if(!i||!s)return null;let a=n.typeName;if(a.includes("\u77ED\u5267")||!["\u7535\u89C6\u5267","\u52A8\u6F2B","\u7535\u5F71","\u7EAA\u5F55\u7247","\u7EFC\u827A","\u7EFC\u827A\u8282\u76EE"].includes(a))return null;let c=a,u=!1,l=!1;n.coverDoc&&(n.coverDoc.richTags&&Array.isArray(n.coverDoc.richTags)&&n.coverDoc.richTags.forEach(p=>{p.text&&p.text.includes("3D")&&(u=!0),p.text&&p.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(p=>{p&&p.includes("3D")&&(u=!0),p&&p.includes("2D")&&(l=!0)})),u?c="3D"+c:l&&(c="2D"+c);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(p=>p.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(m=>i.includes(m)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,h=this.extractAliasesFromHintWords(n.hintWords).filter(p=>p!==i);return{provider:"tencent",mediaId:s,title:i,aliases:h,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(t){try{R("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${t}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:t,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(t)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await jn(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return R("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return R("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){R("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(R("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(t));l.length>0?(R("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${t}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):R("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${t}" \u7684\u9879\u76EE`);break}}if(o.length===0)return R("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,t);l&&c.push(l)}return R("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${t}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:t,vid:"",lid:"",page_num:"",page_context:`cid=${t}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${t}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await jn(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return R("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return R("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){R("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(R("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return R("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];R("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{R("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:t,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await jn(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let h of f.data.module_list_datas)for(let p of h.module_datas)if(p.item_data_lists&&p.item_data_lists.item_datas)for(let m of p.item_data_lists.item_datas)m.item_params&&m.item_params.vid&&m.item_params.is_trailer!=="1"&&c.push({vid:m.item_params.vid,title:m.item_params.title,unionTitle:m.item_params.union_title||m.item_params.title})}}}return R("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return R("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Tencent] sourceAnimes is not a valid array"),[];let o=t.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let h=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",p=l.title,m=h.match(/\[.+版\]/);m&&h.includes(l.title)&&(p=`${l.title}${m[0]}`);let g={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${p}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),ar({...g,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(t){let r=t;if(typeof t=="string"&&(t.startsWith("http")||t.includes("vid="))){let n=t.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=t.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(t){R("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",t);let r=this.extractVid(t);R("info",`[Tencent] vid: ${r}`);let n;try{n=await Me(t,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return R("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";R("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(t);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;R("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(Me(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return R("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return Si(u),u}async getEpisodeDanmuSegments(t){R("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(t);R("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await Me(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new Gt({type:"qq",segmentList:[]}):(R("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new Gt({type:"qq",segmentList:[]}))}let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=Object.values(a.segment_index);for(let u of c)o.push({type:"qq",segment_start:(Number(u.segment_start)||0)/1e3,segment_end:(Number(u.segment_name.split("/").pop())||0)/1e3,url:`${n}${s}/${u.segment_name}`});return new Gt({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=await Me(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return R("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}}});var jS,bve=ae(()=>{gi();jt();$r();ds();aa();bo();ii();Qt();Vi();jS=class e extends Zt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(t){try{R("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={key:t,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${yo(r)}`,i=async()=>{let l=await Me(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});return!l||!l.data?null:typeof l.data=="string"?JSON.parse(l.data):l.data},a=2,o=await i();for(let l=0;lsetTimeout(f,1500)),o=await i()}if(!o)return R("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];if(o.code==="-1")return R("info","[iQiyi] \u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=-1)\uFF0C\u91CD\u8BD5\u540E\u4ECD\u5931\u8D25"),R("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];if(!o.data||!o.data.templates)return R("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),R("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];let c=[],u=o.data.templates;for(let l of u){let d=[];l.template===112&&l.intentAlbumInfos?(R("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${l.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),d=l.intentAlbumInfos):[101,102,103].includes(l.template)&&l.albumInfo&&(R("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${l.template})`),d=[l.albumInfo]);for(let f of d){let h=this._filterIqiyiSearchItem(f,t);h&&c.push(h)}}return R("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(t,r){if(!t.title)return null;if(t.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return R("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${t.title}`),null;let n=t.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(t.metaTags&&Array.isArray(t.metaTags)&&t.metaTags.forEach(h=>{h.name==="3D"&&(i=!0),h.name==="2D"&&(a=!0)}),t.baseTags&&Array.isArray(t.baseTags)&&t.baseTags.forEach(h=>{h.value==="3D"&&(i=!0),h.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let h=t.qipuId||t.playQipuId;if(!h)return R("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${t.title}`),null;let p=null;if(t.year){let _=t.year.value||t.year.name;_&&typeof _=="string"&&_.length===4&&/^\d{4}$/.test(_)&&(p=parseInt(_))}let m=t.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${h}`,title:m,type:s,year:p,imageUrl:t.img||t.imgH,episodeCount:1,_qipuId:h}}let o=t.pageUrl;if(!o)return R("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${t.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return R("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(t.year){let h=t.year.value||t.year.name;h&&typeof h=="string"&&h.length===4&&/^\d{4}$/.test(h)&&(l=parseInt(h))}let d=null;if(t.videos&&t.videos.length>0)d=t.videos.length;else if(t.subscriptContent){let h=t.subscriptContent.match(/(?:更新至|全|共)\s*(\d+)\s*(?:集|话|期)/);if(h)d=parseInt(h[1]);else{let p=t.subscriptContent.trim().match(/^(\d+)$/);p&&(d=parseInt(p[1]))}}let f=t.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:t.img||t.imgH,episodeCount:d}}async getEpisodes(t){try{if(R("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`),t.startsWith("movie_")){let h=t.substring(6);R("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${h}`);let p=await this._getMovieVideoId(h);return p?(R("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${p}`),[{id:p,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${p}.html`}]):(R("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${h}`),[])}let r=/^\d+$/.test(t)?t:this._videoIdToEntityId(t);if(!r)return R("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${t}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${yo(n)}`,a=await Me(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return R("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return R("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return R("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let h of l)if(h.bk_type==="video_list"&&h.data?.data){if(R("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${h.bk_id}`),!h.tag||!h.tag.includes("episodes")){R("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${h.bk_id}`);continue}d=!0;let p=h.data.data;if(!Array.isArray(p)){R("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let m of p)if(!(!m.videos||!Array.isArray(m.videos))){for(let _ of m.videos)if(!(!_.data||!Array.isArray(_.data)))for(let g of _.data){if(g.content_type!==1)continue;let A=(g.play_url||"").match(/tvid=(\d+)/);if(!A)continue;let E=A[1],v=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",b=g.subtitle;b&&!v.includes(b)&&(v=`${v} ${b}`);let I=g.album_order,T=g.page_url;E&&v&&T&&c.push({id:E,title:v,order:I!==void 0?I:c.length,link:T})}}}else if(h.bk_type==="album_episodes"&&h.data?.data){R("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let p=h.data.data;for(let m of p){let _=m.videos;if(typeof _=="string"){R("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${_}`);try{let g=await Me(_);_=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){R("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(_&&typeof _=="object"&&_.feature_paged)for(let g in _.feature_paged){let y=_.feature_paged[g];for(let A of y){if(A.content_type!==1)continue;let v=(A.play_url||"").match(/tvid=(\d+)/);if(!v)continue;let b=v[1],I=A.short_display_name||A.title||"\u672A\u77E5\u5206\u96C6",T=A.subtitle;T&&!I.includes(T)&&(I=`${I} ${T}`);let x=A.album_order,w=A.page_url;b&&I&&x&&w&&c.push({id:b,title:I,order:x,link:w})}}}}if(!d)return R("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(h=>[h.id,h])).values());return f.sort((h,p)=>h.order-p.order),R("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return R("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(t){try{let r={entity_id:t,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${yo(r)}`;R("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await Me(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return R("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c)return R("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${c[1]}`),c[1]}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c)return R("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${c[1]}`),c[1]}}return R("info",`[iQiyi] \u54CD\u5E94\u4E2D\u672A\u627E\u5230 v_xxx \u683C\u5F0F\u89C6\u9891ID\uFF0C\u4F7F\u7528 entity_id: ${t}`),R("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),t}catch(r){return R("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(t){try{let r=parseInt(t,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return R("error",`[iQiyi] \u5C06 video_id '${t}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(t){let r=t.toString(2),n=e.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;uXt(l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h of d){let p=h.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:h.order.toString(),url:p,title:`\u3010qiyi\u3011 ${h.title}`})}if(f.length>0){let p={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(p),ar({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",t);let r;try{r=await Me(t,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return R("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";R("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(t);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;R("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return R("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return Si(c),c}async getEpisodeDanmuSegments(t){R("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s,i;try{let f=t.match(/v_(\w+)/);if(!f)return R("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new Gt({type:"qiyi",segmentList:[]});s=f[1],R("info",`[iQiyi] tvid: ${s}`),i=s;let h=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await Me(h,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),R("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(f){return R("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",f),new Gt({type:"qiyi",segmentList:[]})}let a;try{let f=`${n}${s}`,h=await Me(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=(typeof h.data=="string"?JSON.parse(h.data):h.data).data;if(a=Number(m.durationSec)||0,m.displayBarrage===!1)return R("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new Gt({type:"qiyi",duration:a,segmentList:[]});R("info",`[iQiyi] \u65F6\u957F: ${a}`)}catch(f){R("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",f)}if(!a&&i&&i!==s){R("info",`[iQiyi] decode \u540E tvid \u65E0\u6548\uFF0C\u7528\u539F\u59CB tvid \u91CD\u8BD5: ${i}`);try{let f=`${n}${i}`,h=await Me(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=typeof h.data=="string"?JSON.parse(h.data):h.data,m=Number(p.data.durationSec)||0;m>0&&(s=i,a=m,R("info",`[iQiyi] \u539F\u59CB tvid \u6709\u6548\uFF0C\u65F6\u957F: ${a}`))}catch(f){R("error","[iQiyi] \u539F\u59CB tvid \u91CD\u8BD5\u4E5F\u5931\u8D25:",f)}}if(!a)return new Gt({type:"qiyi",segmentList:[]});let o=60,c=Math.ceil(a/o);R("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${c}`);let u=[],l=`0000${s}`,d=`${l.slice(-4,-2)}/${l.slice(-2)}`;for(let f=0;f(.*?)`,"g");return t.match(c)?.map(u=>u.substring(o.length+2,u.length-o.length-3))||[]}let n=r("content"),s=r("showTime"),i=r("color"),a=r("likeCount");return n.map((o,c)=>({content:o,showTime:s[c],color:i[c],like:parseInt(a[c],10)||0}))}_parseIqiyiProtoDanmu(t){let r=[],n=this._parseIqiyiProtoFields(t);for(let s of n){if(s.number!==6||!s.bytes)continue;let i=this._parseIqiyiProtoFields(s.bytes),a=this._getIqiyiProtoString(i,1);for(let o of i){if(o.number!==2||!o.bytes)continue;let c=this._parseIqiyiProtoFields(o.bytes),u=this._getIqiyiProtoString(c,2);u&&r.push({content:u,showTime:this._getIqiyiProtoString(c,6)||a||"0",color:this._getIqiyiProtoString(c,8)||"ffffff",like:parseInt(this._getIqiyiProtoString(c,14),10)||0})}}return r}_parseIqiyiProtoFields(t){let r=[],n=0,s=new TextDecoder("utf-8");for(;n>3n),c=Number(a&7n);if(o===0)break;if(c===0){let u=this._readIqiyiVarint(t,n);r.push({number:o,wireType:c,value:u.value.toString()}),n=u.offset}else if(c===1)r.push({number:o,wireType:c}),n+=8;else if(c===2){let u=this._readIqiyiVarint(t,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>t.length)break;let f=t.subarray(n,d);r.push({number:o,wireType:c,bytes:f,value:s.decode(f)}),n=d}else if(c===5)r.push({number:o,wireType:c}),n+=4;else break}return r}_readIqiyiVarint(t,r){let n=0n,s=0n,i=r;for(;in.number===r)?.value||""}formatComments(t){return t.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return n.timepoint=parseFloat(r.showTime),n.color=parseInt(r.color,16),n.content=Um(r.content),n.size=25,n.like=r.like,n})}}});var KS,Ive=ae(()=>{gi();Qt();jt();$r();ds();bo();XA();aa();ii();Vi();KS=class extends Zt{transformV2Color(t){if(!t)return-1;let n=Zde(t.color_left),s=Zde(t.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(t){let r=(t||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(t){try{R("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${t}`),this._deviceId||(this._deviceId=Ti(`danmu-api-mango-${Date.now()}`));let r=Date.now(),n=Ti(this._deviceId+"."+r),i=`https://mobileso.bz.mgtv.com/aphone/search/rebirth/v2?q=${encodeURIComponent(t)}&_support=10100001&device=23127PN0CC&osVersion=16&appVersion=9.3.3&did=${this._deviceId}&mac=${this._deviceId}&seqId=${n}&ticket=&userId=0&osType=android&type=10&abroad=0`,a=await Me(i,{headers:{"User-Agent":"Dalvik/2.1.0 (Linux; U; Android 16; 23127PN0CC Build/AP1A.240505.003)",Accept:"application/json"}});if(!a||!a.data)return R("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(!o.data||!o.data.contents)return R("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o.data.contents)if(u.type==="mediaRebirthV2")for(let l of u.data){if(l.source&&l.source!=="imgo"||!l.clipId)continue;let d=String(l.clipId),f=l.title?l.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",h=Array.isArray(l.desc)?l.desc[0]||"":l.desc||"",p=h.match(/[12][890][0-9][0-9]/),m=p?parseInt(p[0]):null,_=h.split("/")[0].replace("\u7C7B\u578B:","").trim(),g=this._extractMediaType(_);c.push({provider:"imgo",mediaId:d,title:f,type:g,year:m,imageUrl:l.img||null,episodeCount:l.videoCount||null})}return R("info",`[Mango] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${t}`);let r=[],n="",s=0,i=1;for(;s0&&r.push(...d.data.list.filter(f=>f.src_clip_id===t)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,R("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(R("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(R("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return R("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return R("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(t){try{R("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${t}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${t}&month=&page=1&_support=10000000`,n=await Me(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return R("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return R("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),R("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return R("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(t){if(!t||t.length===0)return[];R("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${t.length}`);let r=t.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});R("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of t){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),c=a.match(/第(\d+)期/),u=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,h=a.substring(a.indexOf(f)+f.length);/^(加更|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(h)?R("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),R("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|加更|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|删减|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),R("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else R("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){R("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),R("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),R("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Mango] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let h=await this._getMovieEpisode(l.mediaId);if(!h)return;let p=`https://www.mgtv.com/b/${l.mediaId}/${h.video_id}.html`,m=h.t3||h.t1||"\u6B63\u7247",_=[{name:"1",url:p,title:`\u3010imgo\u3011 ${m}`}],y={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(y),ar({...y,links:_},s),F.animes.length>F.MAX_ANIMES&&cr();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let p={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(p),ar({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(Me(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return R("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return Si(i),i}async getEpisodeDanmuSegments(t){R("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=t.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return R("error","[Mango] Invalid URL"),new Gt({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];R("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let p=`${r}?cid=${c}&vid=${u}`;l=await Me(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(p){return p.response?.status===404?new Gt({type:"imgo",segmentList:[]}):(R("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",p),new Gt({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,h=!0;try{let p=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,m=await Me(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),_=typeof m.data=="string"?JSON.parse(m.data):m.data;(!_.data||!_.data.cdn_list||!_.data.cdn_version)&&(R("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),h=!1);let g=[];if(h){let y=Math.ceil($S(f)/60),A=_.data.cdn_list.split(",")[0],E=_.data.cdn_version;for(let v=0;v{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}}});var GS,Rve=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();Fu();EC();qm();GS=class e extends Zt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(t){let r;try{R("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${t}`);let n=parseInt(F.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(AR(),i9))).default)(t,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,t).toString():a.url;return c&&c!==t?(R("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(R("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),t)}catch(n){return R("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),t}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let t=Math.floor(Date.now()/1e3),r=e.WBI_MIXIN_KEY_CACHE;if(r.key&&t-r.timestamp(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=t,R("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return R("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(t,r){let n={...t};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=Ti(o);return n.w_rid=c,n}async _searchByType(t,r,n){try{R("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${t}'`);let s={keyword:t,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await Me(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:F.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return R("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let h=this._extractMediaType(d.season_type_name),p=h==="\u7535\u5F71"?1:d.ep_size||0,m=null;try{d.pubdate?typeof d.pubdate=="number"?m=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(m=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(m=new Date(d.pubtime*1e3).getFullYear())}catch{}let _=Um((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=Um((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),y={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:_,org_title:g,type:h,year:m,imageUrl:d.cover||null,episodeCount:p};d.eps&&d.eps.length>0&&(y._eps=d.eps),l.push(y)}return R("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return R("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(t){let r=(t||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(t){let r=[];F.useBangumiData&&(r=await Qf(t,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),R("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{R("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${t}`);let s=await this._getWbiMixinKey(),i=this._searchByType(t,"media_bangumi",s),a=this._searchByType(t,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(R("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(t,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let h of c){if(!h||!h.mediaId&&!h.season_id)continue;let p=r.find(_=>h.mdId&&h.mdId===`md${_.siteId}`)||r.find(_=>h.org_title&&_.title===h.org_title);if(p){let g=(p.titles.find(y=>y&&y.includes(t))||p.titles[1]||p.title)+(p.titleSuffix||"");h.title=g,h._displayTitle=g,h.aliases=[...p.titles],h.type=p.typeStr||h.type,h.isLocalPriority=!0,d.add(`md${p.siteId}`),R("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${h.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let m=h.mediaId||(h.season_id?`ss${h.season_id}`:null);m&&l.has(m)||(m&&l.add(m),u.push(h))}let f=r.filter(h=>!d.has(`md${h.siteId}`));if(f.length>0){let h=f.filter(m=>m.season_id),p=f.filter(m=>!m.season_id);if(h.length>0){R("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${h.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let m of h){let g=(m.titles.find(E=>E&&E.includes(t))||m.titles[1]||m.title)+(m.titleSuffix||""),y={provider:"bilibili",mediaId:`ss${m.season_id}`,mdId:`md${m.siteId}`,title:g,org_title:m.title,aliases:[...m.titles],_displayTitle:g,type:m.typeStr,year:m.begin?parseInt(m.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(m.matchedSiteKey),isLocalPriority:!0},A=y.mediaId;A&&!l.has(A)&&(l.add(A),u.unshift(y))}}if(p.length>0){R("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let m=p.map(async g=>{let y=await this._resolveMediaInfo(g.siteId),E=(g.titles.find(v=>v&&v.includes(t))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:y.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:E,org_title:g.title,aliases:[...g.titles],_displayTitle:E,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:y.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),_=await Promise.all(m);for(let g of _){let y=g.mediaId;y&&l.has(y)||y&&(l.add(y),u.unshift(g))}}}return R("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return R("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(t){try{let r=await Me(`https://api.bilibili.com/pgc/review/user?media_id=${t}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){R("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${t}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(t){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${t}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${t}`];for(let i of n)try{let a=await Me(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:F.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return R("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${t}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),R("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(t){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${t}`,n=await Me(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:F.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return R("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${t}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return R("info",`[Bilibili] \u89C6\u9891 bvid=${t} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${t}?p=${o.page}`}));return R("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return R("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${t}):`,r.message),[]}}async getEpisodes(t){if(t.startsWith("md")){let r=t.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(t.startsWith("ss")){let r=t.substring(2);return await this._getPgcEpisodes(r)}else if(t.startsWith("bv")){let r=t.substring(2);return await this._getUgcEpisodes(r)}return R("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${t}`),[]}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Bilibili] sourceAnimes is not a valid array"),[];t.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=t.length>0?t[0]._tmdbCnAlias:null;AC(t,o);let c=t.filter(d=>d.isOversea||Xt(d.title,r,i)||d.aliases&&d.aliases.some(f=>Xt(f,r,i))),u=i!==null?i:dr(r);if(u!==null){let d=c.filter(f=>{let h=f._displayTitle||f.title,p=Jt(h).season;return p===u||u===1&&p===null});d.length>0&&(c=d,R("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],h=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!h){f=d._eps.map((y,A)=>{let E;d.isOversea&&y.position?E=y.position.toString():E=y.index_title||y.index||(A+1).toString();let v=y.title||y.index_title||E,b=y.long_title||"",I=/^\d+(\.\d+)?$/.test(v)?`\u7B2C${v}\u8BDD`:v;b&&b!==v&&(I+=` ${b}`);let T=y.id||y.param,x=`https://www.bilibili.com/bangumi/play/ep${T}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:E,url:x,title:`\u3010bilibili1\u3011 ${I.trim()}`,_id:parseInt(T,10)||0}});let g=f.map(y=>Pm(y.name));g.every(y=>y!==null)?(f.forEach((y,A)=>y._sortKey=g[A]),f.sort((y,A)=>y._sortKey-A._sortKey)):f.sort((y,A)=>y._id-A._id),R("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let g=await this.getEpisodes(d.mediaId);if(g.length===0){R("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((y,A)=>{let E=y.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(E+="&area=hkmt"),{name:`${A+1}`,url:E,title:`\u3010bilibili1\u3011 ${y.title}`,_id:parseInt(y.id,10)||0}}),f.sort((y,A)=>y._id-A._id)}if(f.length===0)return;let p=Xn(d.mediaId),m=d._displayTitle||yr(d.title),_={animeId:p,bangumiId:d.mediaId,animeTitle:`${m}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Sn(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(_),ar({..._,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}catch(f){R("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(t){R("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",t);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=t.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),R("info","[Bilibili] ",a);else return R("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(t.includes("video/"))try{let d=t.split("?")[1],f=1;if(d){let _=d.split("&");for(let g of _){let[y,A]=g.split("=");y==="p"&&(f=A||1)}}R("info",`[Bilibili] p: ${f}`);let h;t.includes("BV")?h=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),h=`${r}?aid=${a[2].substring(2)}`);let p=await Me(h,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return R("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;u=m.data.duration,o=m.data.pages[f-1].cid}catch(d){return R("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(t.includes("bangumi/")&&t.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=t.split("?")[1]||"",h=null,p=!1;f.split("&").forEach(_=>{let[g,y]=_.split("=");g==="season_id"&&(h=y),g==="area"&&y==="hkmt"&&(p=!0)});let m=!1;if(!p){let _=await Me(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof _.data=="string"?JSON.parse(_.data):_.data;if(g.code===0&&g.result){let y=g.result.episodes.find(A=>A.id==d);y&&(o=y.cid,u=y.duration/1e3,l=y.share_copy,m=!0)}}if((!m||p)&&h&&this._hasBilibiliProxy()){try{let _=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${h}`),g=await Me(_,{headers:{Cookie:F.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),y=typeof g.data=="string"?JSON.parse(g.data):g.data;if(y.code===0&&y.result){let A=(y.result.episodes||y.result.main_section?.episodes||[]).find(E=>E.id==d);A&&(o=A.cid,c=A.aid,u=A.duration/1e3,l=A.long_title,m=!0)}}catch{}if(!m)try{let _=await Me(`https://api.bilibili.com/pgc/web/season/section?season_id=${h}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:F.bilibliCookie||""}}),g=typeof _.data=="string"?JSON.parse(_.data):_.data;if(g.code===0&&g.result?.main_section?.episodes){let y=g.result.main_section.episodes.find(A=>A.id==d);y&&(o=y.cid,c=y.aid,u=y.duration?y.duration/1e3:0,l=y.long_title,m=!0)}}catch{}}if(!o)return R("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return R("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(t.includes("bangumi/")&&t.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;R("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let h=await Me(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=typeof h.data=="string"?JSON.parse(h.data):h.data;if(p.code!==0)return R("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",p.message),null;if(!p.result.episodes||p.result.episodes.length===0)return R("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let m=p.result.episodes[0];o=m.cid,u=m.duration/1e3,l=m.share_copy,R("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return R("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return R("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return R("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(t){R("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),u=await Promise.all(c),l=!1;for(let d of u)d.status==="ok"&&d.value?i.push(...d.value):(R("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(t){if(R("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),typeof t=="string"&&t.includes("/combine?")){let c=[],u=0,l=0,d=t.startsWith("http")?t:`https://www.bilibili.com${t}`,f=new URL(d);for(let[h,p]of f.searchParams.entries()){if(!h.startsWith("cid"))continue;let m=h.substring(3),[_,g]=p.split("-"),y=parseFloat(_)||0,A=parseFloat(g)||0,E=A-y;if(E<=0)continue;l+=E;let v=Math.ceil(A/360);for(let b=0;b0?Math.ceil(i/360):36;R("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new Gt({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=new URL(t.url),n=t.url.split("#")[0],s=await Me(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:F.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=Hst(s.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,c=parseFloat(a.get("combine_end"))||0,u=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of i){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=c){let h=f-o+u;if(d.p&&typeof d.p=="string"){let p=d.p.split(",");p[0]=h.toFixed(5),d.p=p.join(",")}d.t!==void 0&&(d.t=h),d.progress!==void 0&&(d.progress=Math.round(h*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(t){return t.map(r=>(F.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=yr(r.m)),r.like=r.like_num,r))}_makeProxyUrl(t){return F.makeProxyUrl(t)}_hasBilibiliProxy(){return(F.proxyUrl||"").split(",").some(t=>{let r=t.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(t){return encodeURIComponent(t).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(t,r,n,s="Original",i=null){let o=(F.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((F.proxyUrl||"").includes("bilibili@")||(F.proxyUrl||"").includes("@")))return[];if(o){R("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:t,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:e.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(m=>`${m}=${this._javaUrlEncode(String(u[m]))}`).join("&"),d=Ti(l+e.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,h=F.makeProxyUrl(f),p=await this._fetchAppSearchWithStream(h,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(p&&p.code===0)return(p.data?.items||p.data?.result||p.data||[]).filter(m=>m.goto!=="recommend_tips"&&m.area!=="\u6F2B\u6E38"&&m.badge!=="\u516C\u544A").map(m=>({provider:"bilibili",mediaId:m.season_id?`ss${m.season_id}`:m.uri.match(/season\/(\d+)/)?.[1]?`ss${m.uri.match(/season\/(\d+)/)[1]}`:"",title:Um((m.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:Um((m.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(m.season_type_name),year:m.ptime?new Date(m.ptime*1e3).getFullYear():null,imageUrl:m.cover||m.pic||"",episodeCount:0,_eps:m.episodes||m.episodes_new,checkMore:m.check_more,isOversea:!0})).filter(m=>m.mediaId);p&&p.code!==0&&R("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${p.code}: ${p.message}`)}catch(u){if(u.name==="AbortError")throw u;R("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}R("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else R("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:t,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(m=>`${encodeURIComponent(m)}=${encodeURIComponent(u[m])}`).join("&")}`,f=F.makeProxyUrl(d),h=await Me(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:F.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),p=typeof h.data=="string"?JSON.parse(h.data):h.data;if(p.code!==0)return R("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${p.code}: ${p.message}`),[];if(p.data?.result)return p.data.result.filter(m=>m.url?.includes("bilibili.com")&&!m.areas?.includes("\u6F2B\u6E38")).map(m=>({provider:"bilibili",mediaId:m.season_id?`ss${m.season_id}`:"",mdId:m.media_id?`md${m.media_id}`:null,title:Um((m.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:Um((m.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(m.season_type_name),year:m.pubtime?new Date(m.pubtime*1e3).getFullYear():null,imageUrl:m.cover||null,episodeCount:m.ep_size||0,_eps:m.eps,isOversea:!0})).filter(m=>m.mediaId)}catch(u){if(u.name==="AbortError")throw u;R("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(t,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(t,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=t),c}).catch(()=>[]),a=F.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await _C(t,n.signal,"Bilibili");if(o&&o.title&&o.title!==t){let{title:c,cnAlias:u}=o,l=s.map(async(f,h)=>(h>0&&await new Promise(p=>setTimeout(p,h*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=t,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(t,r,n,s){if(typeof Lde!="function")return null;let i=!1,a=!1,o=await Lde(t,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(R("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}}});var zS,Cve=ae(()=>{gi();Qt();jt();$r();ds();aa();bo();ii();Vi();zS=class extends Zt{convertYoukuUrl(t){let r=t.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(t,r){let n=t.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(t){try{R("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=encodeURIComponent(t),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await Me(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return R("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return R("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,t);u&&o.push(u)}return R("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return R("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${t}`);let r=100,n=await this._getEpisodesPage(t,1,r);if(!n||!n.videos||n.videos.length===0)return R("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);R("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(t,u,r));let c=await Promise.allSettled(o);for(let u=0;uXt(l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),h=this._processAndFormatEpisodes(d,f),p=[];for(let m of h){let _=m.link||`https://v.youku.com/v_show/id_${m.vid}.html`;p.push({name:m.episodeIndex.toString(),url:_,title:`\u3010youku\u3011 ${m.title}`})}if(p.length>0){let _={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"youku"};a.push(_),ar({..._,links:p},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(t,r="variety"){return[...t].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(t,r,n){let s=t.displayName||t.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${t.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${t.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(t,r){let n=(t||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(t){if(R("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",t),!t)return[];let n=(await this.getEpisodeDanmuSegments(t)).segmentList,s=[],i=F.youkuConcurrency,a=[...n];for(let o=0;o{let l=await jn(u.url,yo({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){R("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return Si(s),s}async getEpisodeDanmuSegments(t){if(R("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),!t)return new Gt({type:"youku",segmentList:[]});t.includes("youku.com/video?vid")&&(t=this.convertYoukuUrl(t));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=t.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),R("info","[Youku]",a);else return R("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);R("info",`[Youku] video_id: ${o}`);let c;try{let E=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await Me(E,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(E){return R("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",E),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;R("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,h,p;try{let E="https://log.mmstat.com/eg.js",v="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",b=await Me(E,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});R("info",`[Youku] cnaRes: ${JSON.stringify(b)}`),R("info",`[Youku] cnaRes.headers: ${JSON.stringify(b.headers)}`);let I=b.headers.etag||b.headers.Etag;R("info",`[Youku] etag: ${I}`),f=I.replace(/^"|"$/g,""),R("info",`[Youku] cna: ${f}`);let T;for(;!T;)T=await Me(v,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});R("info",`[Youku] tkEncRes: ${JSON.stringify(T)}`),R("info",`[Youku] tkEncRes.headers: ${JSON.stringify(T.headers)}`);let x=T.headers["set-cookie"]||T.headers["Set-Cookie"];R("info",`[Youku] tkEncSetCookie: ${x}`);let w=x.match(/_m_h5_tk_enc=([^;]+)/);h=w?w[1]:null;let D=x.match(/_m_h5_tk=([^;]+)/);p=D?D[1]:null,R("info",`[Youku] _m_h5_tk_enc: ${h}`),R("info",`[Youku] _m_h5_tk: ${p}`)}catch(E){return R("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",E),[]}let m=60,_=Math.floor(d/m)+1,g=[],y=async E=>{let v={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:E,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},b=JSON.stringify(v);function I(G){let $="";for(let K=0;K255?$+=encodeURIComponent(G[K]):$+=G[K];return $}function T(G){let $="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",K="",ee=0,z=0;for(let oe=0;oe=6;)K+=$[ee>>z-6&63],z-=6;for(z>0&&(K+=$[ee<<6-z&63]);K.length%4!==0;)K+="=";return K}let x=T(I(b));v.msg=x,v.sign=Ti(`${x}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let w=JSON.stringify(v),D=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:D,sign:Ti([p.slice(0,32),D,"24679788",w].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},L=yo(M),U=`${n}?${L}`;return R("info",`[Youku] piece_url: ${U}`),{type:"youku",segment_start:E*m,segment_end:Math.min((E+1)*m,d),url:U,data:w,_m_h5_tk:p,_m_h5_tk_enc:h}},A=Array.from({length:_},(E,v)=>v);for(let E=0;E{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};n.timepoint=r.playat/1e3;let s=JSON.parse(r.propertis);if(s?.color&&(n.color=typeof s.color=="string"?parseInt(s.color,10):s.color),s?.pos){let i=s.pos;i===1?n.ct=5:i===2&&(n.ct=4)}return n.content=r.content,n.like=r.extFields.voteUp,n})}}});var nfs,sfs,ifs,afs,ofs,cfs,zq,sk,IIt=ae(()=>{gi();Qt();jt();$r();ii();Fu();Vi();EC();Tve();bve();Ive();Rve();Cve();Sve();ds();qm();nfs=new VS,sfs=new jS,ifs=new KS,afs=new GS,ofs=new zS,cfs=new HS,zq=`LogVar Danmu API/${F.version}`,sk=class extends Zt{async search(t,r=!1){if(F.useBangumiData&&!r){let n=await Qf(t,["anidb"]);if(n.length>0)return R("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(t))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{R("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${t}`);let n=new AbortController,s=(async()=>{try{let c=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${t}`,{headers:{"Content-Type":"application/json","User-Agent":zq},retries:1});if(!c||!c.data)return R("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return R("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return R("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),R("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return R("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(h=>setTimeout(h,100));let c=await _C(t,n.signal,"Dandan");if(!c||!c.title)return R("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;R("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":zq},signal:n.signal,retries:1});if(!d||!d.data)return R("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return R("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let h of f)h.isTmdbSource=!0,h._tmdbCnAlias=l;return R("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),R("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return R("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(R("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${t})`),!r){let c=t.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==t)return R("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return R("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(t){try{let r=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${t}`,{headers:{"Content-Type":"application/json","User-Agent":zq},retries:1});if(!r||!r.data)return R("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return R("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return R("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return R("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(t,r){if(!t||!r)return 0;let n=new Set(t.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Dandan] sourceAnimes is not a valid array"),[];t.forEach(p=>{p.title=p.animeTitle});let o=t.length>0?t[0]._tmdbCnAlias:null;AC(t,o);let c=t.length,u=new Set,l=[],d=i!==null?i:dr(r),f=t,h=!1;if(d!==null){let p=t.filter(m=>{let _=m._displayTitle||m.animeTitle,g=Jt(_).season;return g===d||d===1&&g===null});p.length>0&&(f=p,h=!0,R("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let p of f)u.add(p.animeId),l.push({...p,isRelated:!1});for(;l.length>0;){let p=l.splice(0,l.length);await Promise.all(p.map(async m=>{try{let _=await this.getEpisodes(m.animeId),g=_.episodes,y=_.titles||[],A=this.calculateSimilarity(r,m.animeTitle),E=!h;if(A>=.1&&_.relateds&&Array.isArray(_.relateds)&&E)for(let T of _.relateds){let x=Jt(T.animeTitle).season!==null;!u.has(T.animeId)&&(x||c>=25)&&(u.add(T.animeId),l.push({animeId:T.animeId,animeTitle:T.animeTitle,imageUrl:T.imageUrl,rating:T.rating||0,isRelated:!0}))}let v=[m.animeTitle,...y,...m.aliases||[]],b=!1;if(m.isRelated||m.isTmdbSource)if(d!==null){let T=null;for(let x of v){if(!x)continue;let w=dr(x);if(w!==null){T=w;break}}d>1?b=(T||1)===d:d===1&&(b=T===null||T===1)}else b=!0;else b=v.some(T=>T&&Xt(T,r,d));if(!b)return;let I=[];for(let T of g){let x=T.episodeTitle&&T.episodeTitle.trim()!==""?`${T.episodeTitle}`:`\u7B2C${T.episodeNumber}\u96C6`;I.push({name:x,url:T.episodeId.toString(),title:`\u3010dandan\u3011 ${x}`})}if(I.length>0){let T=m._displayTitle||m.animeTitle,x=[...new Set([...y,...m.aliases||[]])];m.animeTitle&&m.animeTitle!==T&&!x.includes(m.animeTitle)&&x.push(m.animeTitle);let w=_.type||m.type||"tvseries",D=_.typeDescription||m.typeDescription||"TV\u52A8\u753B",M=m.startDate||(g.length>0?g[0].airDate:null),L=M?new Date(M).getFullYear():"\u672A\u77E5",U={animeId:m.animeId,bangumiId:String(m.animeId),animeTitle:`${T}(${L})\u3010${D}\u3011from dandan`,aliases:x,type:w,typeDescription:D,imageUrl:_.imageUrl||m.imageUrl,startDate:M,episodeCount:I.length,rating:m.rating||0,isFavorited:!0,source:"dandan"};a.push(U),ar({...U,links:I},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(_){R("error",`[Dandan] Error processing anime: ${_.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(t,r=[]){let n=[],s={};try{let a=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${t}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":zq},retries:1}).catch(o=>(R("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){R("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(t){return R("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Gt({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>r.isRealTimePulled?F.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:yr(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:F.danmuSimplifiedTraditional==="simplified"?yr(r.m):r.m})}}});var ik,RIt=ae(()=>{gi();Qt();jt();$r();ii();Fu();Vi();ik=class extends Zt{async search(t){try{let r=await Me(`${F.customSourceApiUrl}/api/v2/search/anime?keyword=${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(R("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(R("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(R("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return R("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){try{let r=await Me(`${F.customSourceApiUrl}/api/v2/bangumi/${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(R("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(R("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(R("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return R("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null){let i=[];if(!t||!Array.isArray(t))return R("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),ar({...l,links:u},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(c){R("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(t){let r=[];try{let n=await Me(`${F.customSourceApiUrl}/api/v2/comment/${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return R("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(t){return R("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Gt({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:F.danmuSimplifiedTraditional==="simplified"?yr(r.m):r.m}))}}});function xIt(e){let t=Ag[e];return e>=132&&(Ag[e]=ck,ck=e),t}function xve(){return(ok===null||ok.byteLength===0)&&(ok=new Uint8Array(wve.buffer)),ok}function Yq(){return(ak===null||ak.byteLength===0)&&(ak=new Int32Array(wve.buffer)),ak}function wIt(e,t){return e=e>>>0,Ld(xve().subarray(e,e+t))}function CIt(e,t,r){if(r===void 0){let i=_S(e),a=t(i.length,1)>>>0;return xve().subarray(a,a+i.length).set(i),Qq=i.length,a}let n=_S(e),s=t(n.length,1)>>>0;return xve().subarray(s,s+n.length).set(n),Qq=n.length,s}function RYr(e){return e==null}function CYr(e){let t=atob(e.replace(/\s+/g,"")),r=new Uint8Array(t.length);for(let n=0;nxIt(n),__wbindgen_string_new:(n,s)=>{let i=wIt(n,s);ck===Ag.length&&Ag.push(Ag.length+1);let a=ck;return ck=Ag[a],Ag[a]=i,a},__wbindgen_debug_string:()=>{}}};return Ml=(await WebAssembly.instantiate(e,t)).instance.exports,wve=Ml.memory,ak=null,ok=null,Ml}function wYr(e,t){let r,n;try{let s=Ml.__wbindgen_add_to_stack_pointer(-16),i=CIt(e,Ml.__wbindgen_malloc,Ml.__wbindgen_realloc),a=Qq,o=RYr(t)?0:CIt(t,Ml.__wbindgen_malloc,Ml.__wbindgen_realloc),c=Qq;Ml.gateway_decrypt(s,i,a,o,c);let u=Yq()[s/4+0],l=Yq()[s/4+1],d=Yq()[s/4+2],f=Yq()[s/4+3],h=u,p=l;if(f)throw h=0,p=0,xIt(d);return r=h,n=p,wIt(h,p)}finally{Ml.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Ml.__wbindgen_free(r,n,1)}}async function NIt(e,t){return e=e.replace(/\s+/g,""),await xYr(),wYr(e,t)}var IYr,Ml,ak,ok,wve,Qq,Ag,ck,OIt=ae(()=>{aa();IYr=` -AGFzbQEAAAABWA5gAn9/AX9gA39/fwF/YAJ/fwBgA39/fwBgAX8Bf2ABfwBgBX9/f39/AX9gBX9/f39/AGAAAX9gBH9/f38AYAR/ -f39/AX9gAn5/AX9gBn9/f39/fwBgAAACXAMDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5f -c3RyaW5nX25ldwAAA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwACA4gBhgEEAgUBAAIGBQMFAQMBAgMCAwMCAgAGAAsABQIB -CAcHAAIHBgMJAwwDAAMDCQAAAAACBwIDAwMDAAIDAwUAAQIBAwAABg0CCgAAAgUFAwIFBAQCAQAFAAoDBAAAAAAAAgICAgQABAQE -BAIEAAAEBQAAAAQEBAQAAAIAAAECAgABAQgAAAQEBQQFAXABOTkFAwEAEQYJAX8BQYCAwAALB58BCQZtZW1vcnkCAAZlbnNpZ24A -JA9nYXRld2F5X2VuY3J5cHQAIA9nYXRld2F5X2RlY3J5cHQAIQdnZXRfa2V5AIMBEV9fd2JpbmRnZW5fbWFsbG9jAEUSX193Ymlu -ZGdlbl9yZWFsbG9jAEkfX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcgBvD19fd2JpbmRnZW5fZnJlZQBaCUgBAEEBCzhw -RF5fL4gBKzJXMYgBcnFfiAFKS247UUAZc2OIAWJBZE4jM4gBYYgBSlFCe3mIAVZ4UTptXWaIAWGIAQ8/fIABGyIKv+YChgG+IQIP -fwF+IwBBEGsiCyQAAkACQAJ/AkAgAEH1AU8EQEEIQQgQWCEGQRRBCBBYIQVBEEEIEFghAUEAQRBBCBBYQQJ0ayICQYCAfCABIAUg -Bmpqa0F3cUEDayIBIAEgAksbIABNDQQgAEEEakEIEFghBEG0psAAKAIARQ0DQQAgBGshAwJ/QQAgBEGAAkkNABpBHyAEQf///wdL -DQAaIARBBiAEQQh2ZyIAa3ZBAXEgAEEBdGtBPmoLIgZBAnRBmKPAAGooAgAiAUUEQEEAIQBBACEFDAILIAQgBhBTdCEHQQAhAEEA -IQUDQAJAIAEQdCICIARJDQAgAiAEayICIANPDQAgASEFIAIiAw0AQQAhAyABIQBBAAwECyABQRRqKAIAIgIgACACIAEgB0EddkEE -cWpBEGooAgAiAUcbIAAgAhshACAHQQF0IQcgAQ0ACwwBC0EQIABBBGpBEEEIEFhBBWsgAEsbQQgQWCEEQbCmwAAoAgAiASAEQQN2 -IgB2IgJBA3EEQAJAIAJBf3NBAXEgAGoiA0EDdCIAQbCkwABqKAIAIgVBCGooAgAiAiAAQaikwABqIgBHBEAgAiAANgIMIAAgAjYC -CAwBC0GwpsAAIAFBfiADd3E2AgALIAUgA0EDdBBQIAUQhgEhAwwECyAEQbimwAAoAgBNDQICQAJAAkACQAJAAkAgAkUEQEG0psAA -KAIAIgBFDQkgABBpaEECdEGYo8AAaigCACIBEHQgBGshAyABEFIiAARAA0AgABB0IARrIgIgAyACIANJIgIbIQMgACABIAIbIQEg -ABBSIgANAAsLIAEgBBCEASEFIAEQHEEQQQgQWCADSw0CIAEgBBBrIAUgAxBUQbimwAAoAgAiAA0BDAULAkBBASAAQR9xIgB0EFsg -AiAAdHEQaWgiAkEDdCIAQbCkwABqKAIAIgNBCGooAgAiASAAQaikwABqIgBHBEAgASAANgIMIAAgATYCCAwBC0GwpsAAQbCmwAAo -AgBBfiACd3E2AgALIAMgBBBrIAMgBBCEASIFIAJBA3QgBGsiAhBUQbimwAAoAgAiAA0CDAMLIABBeHFBqKTAAGohB0HApsAAKAIA -IQYCf0GwpsAAKAIAIgJBASAAQQN2dCIAcUUEQEGwpsAAIAAgAnI2AgAgBwwBCyAHKAIICyEAIAcgBjYCCCAAIAY2AgwgBiAHNgIM -IAYgADYCCAwDCyABIAMgBGoQUAwDCyAAQXhxQaikwABqIQdBwKbAACgCACEGAn9BsKbAACgCACIBQQEgAEEDdnQiAHFFBEBBsKbA -ACAAIAFyNgIAIAcMAQsgBygCCAshACAHIAY2AgggACAGNgIMIAYgBzYCDCAGIAA2AggLQcCmwAAgBTYCAEG4psAAIAI2AgAgAxCG -ASEDDAULQcCmwAAgBTYCAEG4psAAIAM2AgALIAEQhgEiA0UNAgwDCyAAIAVyRQRAQQAhBUEBIAZ0EFtBtKbAACgCAHEiAEUNAiAA -EGloQQJ0QZijwABqKAIAIQALQQELIQEDQCABRQRAIAUgACAFIAAQdCIBIARrIgYgA0kiAhsgASAESSIBGyEFIAMgBiADIAIbIAEb -IQMgABBSIQBBASEBDAELIAAEQEEAIQEMAQUgBUUNAiAEQbimwAAoAgAiAE0gAyAAIARrT3ENAiAFIAQQhAEhBiAFEBwCQEEQQQgQ -WCADTQRAIAUgBBBrIAYgAxBUIANBgAJPBEAgBiADEB0MAgsgA0F4cUGopMAAaiECAn9BsKbAACgCACIBQQEgA0EDdnQiAHFFBEBB -sKbAACAAIAFyNgIAIAIMAQsgAigCCAshACACIAY2AgggACAGNgIMIAYgAjYCDCAGIAA2AggMAQsgBSADIARqEFALIAUQhgEiAw0D -CwsLAkACQCAEQbimwAAoAgAiAEsEQCAEQbymwAAoAgAiAE8EQEEIQQgQWCAEakEUQQgQWGpBEEEIEFhqQYCABBBYIgBBEHZAACEC -IAtBBGoiAUEANgIIIAFBACAAQYCAfHEgAkF/RiIAGzYCBCABQQAgAkEQdCAAGzYCACALKAIEIghFBEBBACEDDAULIAsoAgwhDEHI -psAAIAsoAggiCkHIpsAAKAIAaiIBNgIAQcymwABBzKbAACgCACIAIAEgACABSxs2AgACQEHEpsAAKAIABEBBmKTAACEAA0AgABBs -IAhGDQIgACgCCCIADQALDAQLQdSmwAAoAgAiAEEAIAAgCE0bRQRAQdSmwAAgCDYCAAtB2KbAAEH/HzYCAEGkpMAAIAw2AgBBnKTA -ACAKNgIAQZikwAAgCDYCAEG0pMAAQaikwAA2AgBBvKTAAEGwpMAANgIAQbCkwABBqKTAADYCAEHEpMAAQbikwAA2AgBBuKTAAEGw -pMAANgIAQcykwABBwKTAADYCAEHApMAAQbikwAA2AgBB1KTAAEHIpMAANgIAQcikwABBwKTAADYCAEHcpMAAQdCkwAA2AgBB0KTA -AEHIpMAANgIAQeSkwABB2KTAADYCAEHYpMAAQdCkwAA2AgBB7KTAAEHgpMAANgIAQeCkwABB2KTAADYCAEH0pMAAQeikwAA2AgBB -6KTAAEHgpMAANgIAQfCkwABB6KTAADYCAEH8pMAAQfCkwAA2AgBB+KTAAEHwpMAANgIAQYSlwABB+KTAADYCAEGApcAAQfikwAA2 -AgBBjKXAAEGApcAANgIAQYilwABBgKXAADYCAEGUpcAAQYilwAA2AgBBkKXAAEGIpcAANgIAQZylwABBkKXAADYCAEGYpcAAQZCl -wAA2AgBBpKXAAEGYpcAANgIAQaClwABBmKXAADYCAEGspcAAQaClwAA2AgBBqKXAAEGgpcAANgIAQbSlwABBqKXAADYCAEG8pcAA -QbClwAA2AgBBsKXAAEGopcAANgIAQcSlwABBuKXAADYCAEG4pcAAQbClwAA2AgBBzKXAAEHApcAANgIAQcClwABBuKXAADYCAEHU -pcAAQcilwAA2AgBByKXAAEHApcAANgIAQdylwABB0KXAADYCAEHQpcAAQcilwAA2AgBB5KXAAEHYpcAANgIAQdilwABB0KXAADYC -AEHspcAAQeClwAA2AgBB4KXAAEHYpcAANgIAQfSlwABB6KXAADYCAEHopcAAQeClwAA2AgBB/KXAAEHwpcAANgIAQfClwABB6KXA -ADYCAEGEpsAAQfilwAA2AgBB+KXAAEHwpcAANgIAQYymwABBgKbAADYCAEGApsAAQfilwAA2AgBBlKbAAEGIpsAANgIAQYimwABB -gKbAADYCAEGcpsAAQZCmwAA2AgBBkKbAAEGIpsAANgIAQaSmwABBmKbAADYCAEGYpsAAQZCmwAA2AgBBrKbAAEGgpsAANgIAQaCm -wABBmKbAADYCAEGopsAAQaCmwAA2AgBBCEEIEFghBUEUQQgQWCECQRBBCBBYIQFBxKbAACAIIAgQhgEiAEEIEFggAGsiABCEASID -NgIAQbymwAAgCkEIaiABIAIgBWpqIABqayIFNgIAIAMgBUEBcjYCBEEIQQgQWCECQRRBCBBYIQFBEEEIEFghACADIAUQhAEgACAB -IAJBCGtqajYCBEHQpsAAQYCAgAE2AgAMBAsgABB2DQIgABB3IAxHDQIgACgCACICQcSmwAAoAgAiAU0EfyACIAAoAgRqIAFLBUEA -C0UNAiAAIAAoAgQgCmo2AgRBvKbAACgCACAKaiEBQcSmwAAoAgAiACAAEIYBIgBBCBBYIABrIgAQhAEhA0G8psAAIAEgAGsiBTYC -AEHEpsAAIAM2AgAgAyAFQQFyNgIEQQhBCBBYIQJBFEEIEFghAUEQQQgQWCEAIAMgBRCEASAAIAEgAkEIa2pqNgIEQdCmwABBgICA -ATYCAAwDC0G8psAAIAAgBGsiATYCAEHEpsAAQcSmwAAoAgAiAiAEEIQBIgA2AgAgACABQQFyNgIEIAIgBBBrIAIQhgEhAwwDC0HA -psAAKAIAIQJBEEEIEFggACAEayIBTQRAIAIgBBCEASEAQbimwAAgATYCAEHApsAAIAA2AgAgACABEFQgAiAEEGsgAhCGASEDDAML -QcCmwABBADYCAEG4psAAKAIAIQBBuKbAAEEANgIAIAIgABBQIAIQhgEhAwwCC0HUpsAAQdSmwAAoAgAiACAIIAAgCEkbNgIAIAgg -CmohAUGYpMAAIQACQANAIAEgACgCAEcEQCAAKAIIIgANAQwCCwsgABB2DQAgABB3IAxHDQAgACgCACEDIAAgCDYCACAAIAAoAgQg -Cmo2AgQgCBCGASIFQQgQWCECIAMQhgEiAUEIEFghACAIIAIgBWtqIgYgBBCEASEHIAYgBBBrIAMgACABa2oiACAEIAZqayEEAkBB -xKbAACgCACAARwRAIABBwKbAACgCAEYNASAAKAIEQQNxQQFGBEACQCAAEHQiBUGAAk8EQCAAEBwMAQsgAEEMaigCACICIABBCGoo -AgAiAUcEQCABIAI2AgwgAiABNgIIDAELQbCmwABBsKbAACgCAEF+IAVBA3Z3cTYCAAsgBCAFaiEEIAAgBRCEASEACyAHIAQgABBP -IARBgAJPBEAgByAEEB0gBhCGASEDDAULIARBeHFBqKTAAGohAgJ/QbCmwAAoAgAiAUEBIARBA3Z0IgBxRQRAQbCmwAAgACABcjYC -ACACDAELIAIoAggLIQAgAiAHNgIIIAAgBzYCDCAHIAI2AgwgByAANgIIIAYQhgEhAwwEC0HEpsAAIAc2AgBBvKbAAEG8psAAKAIA -IARqIgA2AgAgByAAQQFyNgIEIAYQhgEhAwwDC0HApsAAIAc2AgBBuKbAAEG4psAAKAIAIARqIgA2AgAgByAAEFQgBhCGASEDDAIL -QcSmwAAoAgAhCUGYpMAAIQACQANAIAkgACgCAE8EQCAAEGwgCUsNAgsgACgCCCIADQALQQAhAAsgCSAAEGwiBkEUQQgQWCIPa0EX -ayIBEIYBIgBBCBBYIABrIAFqIgAgAEEQQQgQWCAJakkbIg0QhgEhDiANIA8QhAEhAEEIQQgQWCEDQRRBCBBYIQVBEEEIEFghAkHE -psAAIAggCBCGASIBQQgQWCABayIBEIQBIgc2AgBBvKbAACAKQQhqIAIgAyAFamogAWprIgM2AgAgByADQQFyNgIEQQhBCBBYIQVB -FEEIEFghAkEQQQgQWCEBIAcgAxCEASABIAIgBUEIa2pqNgIEQdCmwABBgICAATYCACANIA8Qa0GYpMAAKQIAIRAgDkEIakGgpMAA -KQIANwIAIA4gEDcCAEGkpMAAIAw2AgBBnKTAACAKNgIAQZikwAAgCDYCAEGgpMAAIA42AgADQCAAQQQQhAEgAEEHNgIEIgBBBGog -BkkNAAsgCSANRg0AIAkgDSAJayIAIAkgABCEARBPIABBgAJPBEAgCSAAEB0MAQsgAEF4cUGopMAAaiECAn9BsKbAACgCACIBQQEg -AEEDdnQiAHFFBEBBsKbAACAAIAFyNgIAIAIMAQsgAigCCAshACACIAk2AgggACAJNgIMIAkgAjYCDCAJIAA2AggLQQAhA0G8psAA -KAIAIgAgBE0NAEG8psAAIAAgBGsiATYCAEHEpsAAQcSmwAAoAgAiAiAEEIQBIgA2AgAgACABQQFyNgIEIAIgBBBrIAIQhgEhAwsg -C0EQaiQAIAMLrRABGH8gACABKAIQIgkgASgCICIHIAEoAjAiCiABKAIAIgsgASgCJCIMIAEoAjQiDSABKAIEIg4gASgCFCIPIA0g -DCAPIA4gCiAHIAkgCyAAKAIAIhkgACgCCCIQIAAoAgQiCHFqIAAoAgwiGCAIQX9zcWpqQYi31cQCa0EHdyAIaiICaiAOIBhqIBAg -AkF/c3FqIAIgCHFqQaqR4bkBa0EMdyACaiIDIAggASgCDCIRaiACIAMgECABKAIIIhJqIAggA0F/c3FqIAIgA3FqQdvhgaECakER -d2oiBUF/c3FqIAMgBXFqQZLiiPIDa0EWdyAFaiIEQX9zcWogBCAFcWpB0eCP1ABrQQd3IARqIgJqIAMgD2ogBSACQX9zcWogAiAE -cWpBqoyfvARqQQx3IAJqIgMgASgCHCITIARqIAIgAyABKAIYIhQgBWogBCADQX9zcWogAiADcWpB7fO+vgVrQRF3aiIFQX9zcWog -AyAFcWpB/9XlFWtBFncgBWoiAkF/c3FqIAIgBXFqQdixgswGakEHdyACaiIEaiADIAxqIAUgBEF/c3FqIAIgBHFqQdGQ7KUHa0EM -dyAEaiIDIAEoAiwiFSACaiAEIAMgASgCKCIWIAVqIAIgA0F/c3FqIAMgBHFqQc/IAmtBEXdqIgJBf3NxaiACIANxakHC0Iy1B2tB -FncgAmoiBUF/c3FqIAIgBXFqQaKiwNwGakEHdyAFaiIGaiABKAI4IhcgAmogBSADIA1qIAIgBkF/c3FqIAUgBnFqQe2cnhNrQQx3 -IAZqIgRBf3MiAnFqIAQgBnFqQfL4mswFa0ERdyAEaiIDIAJxaiAFIAEoAjwiBWogBiADQX9zIgFxaiADIARxakGhkNDNBGpBFncg -A2oiBiAEcWpBnrWHzwBrQQV3IAZqIgJqIAMgFWogAiAGQX9zcWogBCAUaiABIAZxaiACIANxakHAmf39A2tBCXcgAmoiBCAGcWpB -0bT5sgJqQQ53IARqIgMgBEF/c3FqIAYgC2ogBCACQX9zcWogAiADcWpB1vCksgFrQRR3IANqIgIgBHFqQaPfw84Ca0EFdyACaiIB -aiADIAVqIAEgAkF/c3FqIAQgFmogAiADQX9zcWogASADcWpB06iQEmpBCXcgAWoiBCACcWpB/7L4ugJrQQ53IARqIgMgBEF/c3Fq -IAIgCWogBCABQX9zcWogASADcWpBuIiwwQFrQRR3IANqIgIgBHFqQeabh48CakEFdyACaiIBaiADIBFqIAEgAkF/c3FqIAQgF2og -AiADQX9zcWogASADcWpBqvCj5gNrQQl3IAFqIgQgAnFqQfnkq9kAa0EOdyAEaiIDIARBf3NxaiACIAdqIAQgAUF/c3FqIAEgA3Fq -Qe2p6KoEakEUdyADaiICIARxakH7rfCwBWtBBXcgAmoiAWogAiAKaiAEIBJqIAIgA0F/c3FqIAEgA3FqQYi4wRhrQQl3IAFqIgYg -AUF/c3FqIAMgE2ogASACQX9zcWogAiAGcWpB2YW8uwZqQQ53IAZqIgQgAXFqQfbm1pYHa0EUdyAEaiIDIARzIgEgBnNqQb6NF2tB -BHcgA2oiAmogBCAVaiACIAYgB2ogASACc2pB/5K4xAdrQQt3IAJqIgJzIgEgA3NqQaLC9ewGakEQdyACaiIEIAJzIAMgF2ogASAE -c2pB9I/rEGtBF3cgBGoiB3NqQbyrhNoFa0EEdyAHaiIBaiAEIBNqIAIgCWogBCAHcyABc2pBqZ/73gRqQQt3IAFqIgQgASAHc3Nq -QaDpksoAa0EQdyAEaiIDIARzIAcgFmogASAEcyADc2pBkIeBigRrQRd3IANqIgJzakHG/e3EAmpBBHcgAmoiAWogAyARaiAEIAtq -IAIgA3MgAXNqQYaw+6oBa0ELdyABaiIEIAEgAnNzakH7nsPYAmtBEHcgBGoiAyAEcyACIBRqIAEgBHMgA3NqQYW6oCRqQRd3IANq -IgJzakHH36yxAmtBBHcgAmoiAWogAiASaiAEIApqIAIgA3MgAXNqQZvMkckBa0ELdyABaiIEIAFzIAMgBWogASACcyAEc2pB+PmJ -/QFqQRB3IARqIgNzakGb087aA2tBF3cgA2oiAiAEQX9zciADc2pBvLvb3gBrQQZ3IAJqIgFqIAIgD2ogAyAXaiAEIBNqIAEgA0F/ -c3IgAnNqQZf/q5kEakEKdyABaiIEIAJBf3NyIAFzakHZuK+jBWtBD3cgBGoiAyABQX9zciAEc2pBx7+xG2tBFXcgA2oiAiAEQX9z -ciADc2pBw7PtqgZqQQZ3IAJqIgFqIAIgDmogAyAWaiAEIBFqIAEgA0F/c3IgAnNqQe7mzIcHa0EKdyABaiIEIAJBf3NyIAFzakGD -l8AAa0EPdyAEaiICIAFBf3NyIARzakGvxO7TB2tBFXcgAmoiASAEQX9zciACc2pBz/yh/QZqQQZ3IAFqIgNqIAEgDWogAiAUaiAE -IAVqIAMgAkF/c3IgAXNqQaCyzA5rQQp3IANqIgIgAUF/c3IgA3NqQez5+ucFa0EPdyACaiIBIANBf3NyIAJzakGho6DwBGpBFXcg -AWoiBCACQX9zciABc2pB/oKyxQBrQQZ3IARqIgMgGWo2AgAgACAYIAIgFWogAyABQX9zciAEc2pBy5uUlgRrQQp3IANqIgJqNgIM -IAAgECABIBJqIAIgBEF/c3IgA3NqQbul39YCakEPdyACaiIBajYCCCAAIAEgCGogBCAMaiABIANBf3NyIAJzakHv2OSjAWtBFXdq -NgIEC5IHAQV/IAAQhwEiACAAEHQiARCEASECAkACQAJAAkACQAJAAkACQAJAIAAQdQ0AIAAoAgAhAyAAEGoNASABIANqIQEgACAD -EIUBIgBBwKbAACgCAEYEQCACKAIEQQNxQQNHDQFBuKbAACABNgIAIAAgASACEE8MCQsgA0GAAk8EQCAAEBwMAQsgAEEMaigCACIE -IABBCGooAgAiBUcEQCAFIAQ2AgwgBCAFNgIIDAELQbCmwABBsKbAACgCAEF+IANBA3Z3cTYCAAsgAhBlDQIgAkHEpsAAKAIARg0E -IAJBwKbAACgCAEcNAUHApsAAIAA2AgBBuKbAAEG4psAAKAIAIAFqIgI2AgAgACACEFQPCyABIANqQRBqIQAMBgsgAhB0IgMgAWoh -AQJAIANBgAJPBEAgAhAcDAELIAJBDGooAgAiBCACQQhqKAIAIgJHBEAgAiAENgIMIAQgAjYCCAwBC0GwpsAAQbCmwAAoAgBBfiAD -QQN2d3E2AgALIAAgARBUIABBwKbAACgCAEcNAUG4psAAIAE2AgAPCyAAIAEgAhBPCyABQYACSQ0BIAAgARAdQdimwABB2KbAACgC -AEEBayIANgIAIAANAxAfGg8LQcSmwAAgADYCAEG8psAAQbymwAAoAgAgAWoiAjYCACAAIAJBAXI2AgRBwKbAACgCACAARgRAQbim -wABBADYCAEHApsAAQQA2AgALIAJB0KbAACgCAE0NAkEIQQgQWCEAQRRBCBBYIQJBEEEIEFghA0EAQRBBCBBYQQJ0ayIBQYCAfCAD -IAAgAmpqa0F3cUEDayIAIAAgAUsbRQ0CQcSmwAAoAgBFDQJBCEEIEFghAEEUQQgQWCECQRBBCBBYIQFBACEDQbymwAAoAgAiBCAB -IAIgAEEIa2pqIgBNDQEgBCAAa0H//wNqQYCAfHEiBEGAgARrIQJBxKbAACgCACEBQZikwAAhAAJAA0AgASAAKAIATwRAIAAQbCAB -Sw0CCyAAKAIIIgANAAtBACEACyAAEHYNASAAKAIMGgwBCyABQXhxQaikwABqIQICf0GwpsAAKAIAIgNBASABQQN2dCIBcUUEQEGw -psAAIAEgA3I2AgAgAgwBCyACKAIICyEDIAIgADYCCCADIAA2AgwgACACNgIMIAAgAzYCCA8LEB9BACADa0cNAEG8psAAKAIAQdCm -wAAoAgBNDQBB0KbAAEF/NgIACwv0BgEIfwJAIAAoAgAiCiAAKAIIIgNyBEACQCADRQ0AIAEgAmohCCAAQQxqKAIAQQFqIQcgASEF -A0ACQCAFIQMgB0EBayIHRQ0AIAMgCEYNAgJ/IAMsAAAiBkEATgRAIAZB/wFxIQYgA0EBagwBCyADLQABQT9xIQkgBkEfcSEFIAZB -X00EQCAFQQZ0IAlyIQYgA0ECagwBCyADLQACQT9xIAlBBnRyIQkgBkFwSQRAIAkgBUEMdHIhBiADQQNqDAELIAVBEnRBgIDwAHEg -Ay0AA0E/cSAJQQZ0cnIiBkGAgMQARg0DIANBBGoLIgUgBCADa2ohBCAGQYCAxABHDQEMAgsLIAMgCEYNACADLAAAIgVBAE4gBUFg -SXIgBUFwSXJFBEAgBUH/AXFBEnRBgIDwAHEgAy0AA0E/cSADLQACQT9xQQZ0IAMtAAFBP3FBDHRycnJBgIDEAEYNAQsCQAJAIARF -DQAgAiAETQRAQQAhAyACIARGDQEMAgtBACEDIAEgBGosAABBQEgNAQsgASEDCyAEIAIgAxshAiADIAEgAxshAQsgCkUNASAAKAIE -IQgCQCACQRBPBEAgASACEAchAwwBCyACRQRAQQAhAwwBCyACQQNxIQcCQCACQQRJBEBBACEDQQAhBgwBCyACQXxxIQVBACEDQQAh -BgNAIAMgASAGaiIELAAAQb9/SmogBEEBaiwAAEG/f0pqIARBAmosAABBv39KaiAEQQNqLAAAQb9/SmohAyAFIAZBBGoiBkcNAAsL -IAdFDQAgASAGaiEFA0AgAyAFLAAAQb9/SmohAyAFQQFqIQUgB0EBayIHDQALCwJAIAMgCEkEQCAIIANrIQRBACEDAkACQAJAIAAt -ACBBAWsOAgABAgsgBCEDQQAhBAwBCyAEQQF2IQMgBEEBakEBdiEECyADQQFqIQMgAEEYaigCACEFIAAoAhAhBiAAKAIUIQADQCAD -QQFrIgNFDQIgACAGIAUoAhARAABFDQALQQEPCwwCC0EBIQMgACABIAIgBSgCDBEBAAR/IAMFQQAhAwJ/A0AgBCADIARGDQEaIANB -AWohAyAAIAYgBSgCEBEAAEUNAAsgA0EBawsgBEkLDwsgACgCFCABIAIgAEEYaigCACgCDBEBAA8LIAAoAhQgASACIABBGGooAgAo -AgwRAQAL1wYBCH8CQAJAIAEgAEEDakF8cSICIABrIghJDQAgASAIayIGQQRJDQAgBkEDcSEHQQAhAQJAIAAgAkYiCQ0AAkAgAiAA -QX9zakEDSQRADAELA0AgASAAIARqIgMsAABBv39KaiADQQFqLAAAQb9/SmogA0ECaiwAAEG/f0pqIANBA2osAABBv39KaiEBIARB -BGoiBA0ACwsgCQ0AIAAgAmshAyAAIARqIQIDQCABIAIsAABBv39KaiEBIAJBAWohAiADQQFqIgMNAAsLIAAgCGohBAJAIAdFDQAg -BCAGQXxxaiIALAAAQb9/SiEFIAdBAUYNACAFIAAsAAFBv39KaiEFIAdBAkYNACAFIAAsAAJBv39KaiEFCyAGQQJ2IQYgASAFaiED -A0AgBCEAIAZFDQJBwAEgBiAGQcABTxsiBUEDcSEHIAVBAnQhBEEAIQIgBUEETwRAIAAgBEHwB3FqIQggACEBA0AgAiABKAIAIgJB -f3NBB3YgAkEGdnJBgYKECHFqIAFBBGooAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWogAUEIaigCACICQX9zQQd2IAJBBnZyQYGChAhx -aiABQQxqKAIAIgJBf3NBB3YgAkEGdnJBgYKECHFqIQIgAUEQaiIBIAhHDQALCyAGIAVrIQYgACAEaiEEIAJBCHZB/4H8B3EgAkH/ -gfwHcWpBgYAEbEEQdiADaiEDIAdFDQALAn8gACAFQfwBcUECdGoiACgCACIBQX9zQQd2IAFBBnZyQYGChAhxIgEgB0EBRg0AGiAB -IAAoAgQiAUF/c0EHdiABQQZ2ckGBgoQIcWoiASAHQQJGDQAaIAAoAggiAEF/c0EHdiAAQQZ2ckGBgoQIcSABagsiAUEIdkH/gRxx -IAFB/4H8B3FqQYGABGxBEHYgA2oPCyABRQRAQQAPCyABQQNxIQQCQCABQQRJBEBBACECDAELIAFBfHEhBUEAIQIDQCADIAAgAmoi -ASwAAEG/f0pqIAFBAWosAABBv39KaiABQQJqLAAAQb9/SmogAUEDaiwAAEG/f0pqIQMgBSACQQRqIgJHDQALCyAERQ0AIAAgAmoh -AQNAIAMgASwAAEG/f0pqIQMgAUEBaiEBIARBAWsiBA0ACwsgAwunBgEGfyMAQeADayIFJAAgBUEAQeADEIEBIgUgASABEBQgBUEg -aiABQRBqIgEgARAUQcAAIQZBCCEHA0AgBSAHEDUgAyAFaiIBQUBrIgQQDCAEIAQoAgBBf3M2AgAgAUHEAGoiBCAEKAIAQX9zNgIA -IAFB1ABqIgQgBCgCAEF/czYCACABQdgAaiIEIAQoAgBBf3M2AgAgBSAGaiIEIAQoAgBBgIADczYCACAFIAdBCGoiB0EOECogA0GA -A0YEQCAFQeAAaiEHIAVBQGshAyAFQSBqIQZBAyEEA0AgBEEBayEEQQAhAQNAIAEgBmoiAiACKAIAIgIgAiACQQR2c0GAmLwYcSIC -QQR0cyACcyICIAIgAkECdnNBgOaAmANxIgJBAnRzIAJzNgIAIAFBBGoiAUEgRw0AC0EAIQEDQCABIANqIgIgAigCACICIAIgAkEE -dnNBgJ6A+ABxIgJBBHRzIAJzNgIAIAFBBGoiAUEgRw0AC0EAIQEDQCABIAdqIgIgAigCACICIAIgAkEEdnNBgIa84ABxIgJBBHRz -IAJzIgIgAiACQQJ2c0GA5oCYA3EiAkECdHMgAnM2AgAgAUEEaiIBQSBHDQALIAdBgAFqIQcgA0GAAWohAyAGQYABaiEGIAQNAAtB -oAMhAQNAIAEgBWoiAyADKAIAIgMgAyADQQR2c0GAmLwYcSIDQQR0cyADcyIDIAMgA0ECdnNBgOaAmANxIgNBAnRzIANzNgIAIAFB -BGoiAUHAA0cNAAtBACEDA0AgAyAFaiIBQSBqIgYgBigCAEF/czYCACABQSRqIgYgBigCAEF/czYCACABQTRqIgYgBigCAEF/czYC -ACABQThqIgEgASgCAEF/czYCACADQSBqIgNBwANHDQALIAAgBUHgAxCCARogBUHgA2okAAUgBSAHEDUgAUHgAGoiBBAMIAQgBCgC -AEF/czYCACABQeQAaiIEIAQoAgBBf3M2AgAgAUH0AGoiBCAEKAIAQX9zNgIAIAFB+ABqIgEgASgCAEF/czYCACAFIAdBCGoiB0EG -ECogBkHEAGohBiADQUBrIQMMAQsLC7QFAQh/QStBgIDEACAAKAIcIghBAXEiBhshDCAEIAZqIQYCQCAIQQRxRQRAQQAhAQwBCwJA -IAJBEE8EQCABIAIQByEFDAELIAJFBEAMAQsgAkEDcSEJAkAgAkEESQRADAELIAJBfHEhCgNAIAUgASAHaiILLAAAQb9/SmogC0EB -aiwAAEG/f0pqIAtBAmosAABBv39KaiALQQNqLAAAQb9/SmohBSAKIAdBBGoiB0cNAAsLIAlFDQAgASAHaiEHA0AgBSAHLAAAQb9/ -SmohBSAHQQFqIQcgCUEBayIJDQALCyAFIAZqIQYLAkACQCAAKAIARQRAQQEhBSAAKAIUIgYgACgCGCIAIAwgASACEEYNAQwCCyAG -IAAoAgQiB08EQEEBIQUgACgCFCIGIAAoAhgiACAMIAEgAhBGDQEMAgsgCEEIcQRAIAAoAhAhCCAAQTA2AhAgAC0AICEKQQEhBSAA -QQE6ACAgACgCFCIJIAAoAhgiCyAMIAEgAhBGDQEgByAGa0EBaiEFAkADQCAFQQFrIgVFDQEgCUEwIAsoAhARAABFDQALQQEPC0EB -IQUgCSADIAQgCygCDBEBAA0BIAAgCjoAICAAIAg2AhBBACEFDAELIAcgBmshBgJAAkACQCAALQAgIgVBAWsOAwABAAILIAYhBUEA -IQYMAQsgBkEBdiEFIAZBAWpBAXYhBgsgBUEBaiEFIABBGGooAgAhCCAAKAIQIQogACgCFCEAAkADQCAFQQFrIgVFDQEgACAKIAgo -AhARAABFDQALQQEPC0EBIQUgACAIIAwgASACEEYNACAAIAMgBCAIKAIMEQEADQBBACEFA0AgBSAGRgRAQQAPCyAFQQFqIQUgACAK -IAgoAhARAABFDQALIAVBAWsgBkkPCyAFDwsgBiADIAQgACgCDBEBAAvYBAEcfyAAIAAoAggiBCAAKAIEIgVzIgwgACgCHCINIAAo -AhAiAXMiFiAAKAIYIgJzIhcgFnFzIAIgDXMiAyAAKAIMIgYgACgCACIHcyIIcyIJcyADIAUgB3MiCnMiEyABIAJzIg8gBCAAKAIU -IgRzIhBzIhlxIhRzIAYgF3MiFSABIAZzIgEgDHMiGHEgCSAYcyABcSILcyIOcyIRIA4gDyABIAdzIhpxIAIgBXMiBSAEIAZzcyIH -IAEgCnMiDnJzcyIScSICIAsgAyAJcXMiCyAHIA5xIAogD3MiCiAEcyIbIAUgCHMiHHFzIAFzIARzcyIGcyARIBQgCiANIBBzIhRx -IAhzcyALcyIEcyIIcSAEcyIFIAYgEnMiCyACIARzcSAGcyINcyIQIAFxIAogDXEiCnMgDSALIAQgEnFBf3NxIAJzIgFzIgQgE3Eg -AyACIAYgEXEgCHFzIAhzIgIgAXMiA3EiCHMiEXM2AgAgACAHIAIgBXMiB3EiBiAFIBtxIhJzIAMgEHMiEyAVcSIVIAMgCXEiA3Mi -CyAQIAkgDHNxIgwgByAOcSIHIAIgD3EiD3NzIg5zIglzNgIcIAAgDCACIBpxIgIgASAXcXMiDCAGIAUgHHFzc3MiBSADIA0gFHEi -AyABIBZxcyIBIA9zcyARc3M2AhggACABIApzIgEgB3MgC3MgBXM2AhQgACADIAQgGXEiA3MgCXM2AhAgACATIBhxIAJzIA5zIgIg -ASADIBJzIgEgCHNzczYCDCAAIAEgDHMgCXM2AgggACAGIBVzIAJzNgIEC9QFAgZ/An4CQCACRQ0AIAJBB2siA0EAIAIgA08bIQcg -AUEDakF8cSABayEIQQAhAwNAAkACQAJAIAEgA2otAAAiBcAiBkEATgRAIAggA2tBA3ENASADIAdPDQIDQCABIANqIgRBBGooAgAg -BCgCAHJBgIGChHhxDQMgA0EIaiIDIAdJDQALDAILQoCAgICAICEKQoCAgIAQIQkCQAJAAn4CQAJAAkACQAJAAkACQAJAAkAgBUGM -oMAAai0AAEECaw4DAAECCgsgA0EBaiIEIAJJDQJCACEKQgAhCQwJC0IAIQogA0EBaiIEIAJJDQJCACEJDAgLQgAhCiADQQFqIgQg -AkkNAkIAIQkMBwsgASAEaiwAAEG/f0oNBgwHCyABIARqLAAAIQQCQAJAIAVB4AFrIgUEQCAFQQ1GBEAMAgUMAwsACyAEQWBxQaB/ -Rg0EDAMLIARBn39KDQIMAwsgBkEfakH/AXFBDE8EQCAGQX5xQW5HDQIgBEFASA0DDAILIARBQEgNAgwBCyABIARqLAAAIQQCQAJA -AkACQCAFQfABaw4FAQAAAAIACyAGQQ9qQf8BcUECSyAEQUBOcg0DDAILIARB8ABqQf8BcUEwTw0CDAELIARBj39KDQELIAIgA0EC -aiIETQRAQgAhCQwFCyABIARqLAAAQb9/Sg0CQgAhCSADQQNqIgQgAk8NBCABIARqLAAAQb9/TA0FQoCAgICA4AAMAwtCgICAgIAg -DAILQgAhCSADQQJqIgQgAk8NAiABIARqLAAAQb9/TA0DC0KAgICAgMAACyEKQoCAgIAQIQkLIAAgCiADrYQgCYQ3AgQgAEEBNgIA -DwsgBEEBaiEDDAILIANBAWohAwwBCyACIANNDQADQCABIANqLAAAQQBIDQEgAiADQQFqIgNHDQALDAILIAIgA0sNAAsLIAAgATYC -BCAAQQhqIAI2AgAgAEEANgIAC6YEARt/IAAgACgCHCIBIAAoAgQiBHMiByAAKAIQIgUgACgCCCIKcyIMcyIRIAAoAgxzIgggACgC -GCIGcyILIAEgBXMiEnMiCSAGIAAoAhRzIgJzIgMgBCACIAAoAgAiBHMiBnMiEyAGcXMgAyAHcSINcyAHcyAJIBJxIg4gAiAIIApz -IgJzIgggCXMiFyAMcXMiD3MiECAPIAIgEXEiDyALIAIgBHMiGCATIAEgCnMiCnMiGXFzc3MiFHEiCyAIIApxIA5zIg4gDyAFIAZz -Ig8gBHEgCnMgCHNzcyIFcyAOIA0gAyAEIAlzIg0gASAGcyIOcXNzIAFzcyIBIBBzcSIVIAtzIAFxIhYgEHMiECACcSIaIAQgASAV -cyIEcXMiFSAFIAEgC3MiAiAFIBRzIgVxcyIBIA1xcyADIAIgFnMgAXEgBXMiAyABcyILcSINcyIUIAMgE3FzIAwgAyAEIBBzIgJz -IgUgASAEcyIMcyITcSAMIBJxIhJzIhZzIhsgDSADIAZxcyIGIBMgF3FzIgMgByALcSIHIAUgCHEgFXNzcyIIczYCBCAAIAcgG3M2 -AgAgACAWIAIgGXFzIgcgECARcXMiESADIAkgDHFzIglzNgIcIAAgCCABIA5xcyIDIAUgCnEgEnMgCXNzNgIUIAAgAiAYcSAacyAG -cyARcyIBNgIQIAAgByAEIA9xcyADczYCCCAAIAEgCXM2AhggACABIBRzNgIMC4YFAQp/IwBBMGsiAyQAIANBJGogATYCACADQQM6 -ACwgA0EgNgIcIANBADYCKCADIAA2AiAgA0EANgIUIANBADYCDAJ/AkACQAJAIAIoAhAiCkUEQCACQQxqKAIAIgBFDQEgAigCCCEB -IABBA3QhBSAAQQFrQf////8BcUEBaiEHIAIoAgAhAANAIABBBGooAgAiBARAIAMoAiAgACgCACAEIAMoAiQoAgwRAQANBAsgASgC -ACADQQxqIAFBBGooAgARAAANAyABQQhqIQEgAEEIaiEAIAVBCGsiBQ0ACwwBCyACQRRqKAIAIgBFDQAgAEEFdCELIABBAWtB//// -P3FBAWohByACKAIIIQggAigCACEAA0AgAEEEaigCACIBBEAgAygCICAAKAIAIAEgAygCJCgCDBEBAA0DCyADIAUgCmoiAUEQaigC -ADYCHCADIAFBHGotAAA6ACwgAyABQRhqKAIANgIoIAFBDGooAgAhBkEAIQlBACEEAkACQAJAIAFBCGooAgBBAWsOAgACAQsgBkED -dCAIaiIMKAIEQS1HDQEgDCgCACgCACEGC0EBIQQLIAMgBjYCECADIAQ2AgwgAUEEaigCACEEAkACQAJAIAEoAgBBAWsOAgACAQsg -BEEDdCAIaiIGKAIEQS1HDQEgBigCACgCACEEC0EBIQkLIAMgBDYCGCADIAk2AhQgCCABQRRqKAIAQQN0aiIBKAIAIANBDGogASgC -BBEAAA0CIABBCGohACALIAVBIGoiBUcNAAsLIAcgAigCBE8NASADKAIgIAIoAgAgB0EDdGoiACgCACAAKAIEIAMoAiQoAgwRAQBF -DQELQQEMAQtBAAsgA0EwaiQAC4cVARV/IwBBIGsiAyQAIANBGGpCADcDACADQRBqQgA3AwAgA0EIakIANwMAIANCADcDACADIAIg -AkEQahAUIAFBwANqIQpBACECA0AgAiADaiITIBMoAgAgAiAKaigCAHM2AgAgAkEEaiICQSBHDQALIAMQCkEAIQIDQCACIANqIgog -CigCACIKIAogCkEEdnNBgJ6A+ABxIgpBBHRzIApzNgIAIAJBBGoiAkEgRw0ACyABQcACaiETIAFB4AJqIRQgAUGAA2ohFSABQaAD -aiEWQegAIQoCQANAQQAhAgNAIAIgA2oiBiAGKAIAIAIgFmooAgBzNgIAIAJBBGoiAkEgRw0ACyADIAMoAhgiBkEWd0G//vz5A3Eg -BkEed0HAgYOGfHFyIAZzIgkgAygCHCICcyIHIAJBFndBv/78+QNxIAJBHndBwIGDhnxxciACcyICIAMoAhAiBUEWd0G//vz5A3Eg -BUEed0HAgYOGfHFyIAVzIgwgAygCFCIEcyINcyILQQx3QY+evPgAcSALQRR3QfDhw4d/cXJzIAtzNgIcIAMgBiAEIARBFndBv/78 -+QNxIARBHndBwIGDhnxxcnMiCHMiBiADKAIAIgRBFndBv/78+QNxIARBHndBwIGDhnxxciAEcyIPcyILIAtBDHdBj568+ABxIAtB -FHdB8OHDh39xcnMgAiAEcyILczYCACADIAYgCSAFIAMoAgwiBEEWd0G//vz5A3EgBEEed0HAgYOGfHFyIARzIg5zIAJzIhBzIgVB -DHdBj568+ABxIAVBFHdB8OHDh39xcnMgBXM2AhggAyANIAQgAygCCCIFQRZ3Qb/+/PkDcSAFQR53QcCBg4Z8cXIgBXMiCXMgAnMi -ESAHIAhzcyIEQQx3QY+evPgAcSAEQRR3QfDhw4d/cXJzIARzNgIUIAMgECAGIAdzIg0gDCAFIAMoAgQiBEEWd0G//vz5A3EgBEEe -d0HAgYOGfHFyIARzIghzIhJzcyIFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAVzNgIQIAMgESAEIA9zIAJzIgUgBiAOc3MiAkEM -d0GPnrz4AHEgAkEUd0Hw4cOHf3FycyACczYCDCADIBIgByAJcyALcyICQQx3QY+evPgAcSACQRR3QfDhw4d/cXJzIAJzNgIIIAMg -BSAIIA1zIgJBDHdBj568+ABxIAJBFHdB8OHDh39xcnMgAnM2AgQgAxAKIApBCEYEQEEAIQIDQCACIANqIgogCigCACABIAJqKAIA -czYCACACQQRqIgJBIEcNAAsgACADEBUgA0EgaiQADwtBACECA0AgAiADaiIGIAYoAgAgAiAVaigCAHM2AgAgAkEEaiICQSBHDQAL -IApBEGshCyADIAMoAhgiB0EYdyAHcyIJIAMoAhwiAnMiBiACQRh3IAJzIgIgAygCECIFQRh3IAVzIgwgAygCFCIEcyINcyIIQRB3 -cyAIczYCHCADIAcgBCAEQRh3cyIIcyIHIAMoAgAiBEEYdyAEcyIPcyIOQRB3IA5zIAIgBHMiDnM2AgAgAyAHIAkgBSADKAIMIgRB -GHcgBHMiEHMgAnMiEXMiBUEQd3MgBXM2AhggAyANIAQgAygCCCIFQRh3IAVzIglzIAJzIhIgBiAIc3MiBEEQd3MgBHM2AhQgAyAR -IAYgB3MiDSAMIAUgAygCBCIEQRh3IARzIghzIgVzcyIMQRB3cyAMczYCECADIBIgBCAPcyACcyICIAcgEHNzIgdBEHdzIAdzNgIM -IAMgBSAGIAlzIA5zIgZBEHdzIAZzNgIIIAMgAiAIIA1zIgZBEHdzIAZzNgIEIAMQCkEAIQIDQCACIANqIgYgBigCACACIBRqKAIA -czYCACACQQRqIgJBIEcNAAsgAyADKAIYIgZBEndBg4aMGHEgBkEad0H8+fNncXIgBnMiDCADKAIcIgJzIgcgAkESd0GDhowYcSAC -QRp3Qfz582dxciACcyICIAMoAhAiBUESd0GDhowYcSAFQRp3Qfz582dxciAFcyINIAMoAhQiBHMiCHMiCUEMd0GPnrz4AHEgCUEU -d0Hw4cOHf3FycyAJczYCHCADIAYgBCAEQRJ3QYOGjBhxIARBGndB/PnzZ3FycyIPcyIGIAMoAgAiBEESd0GDhowYcSAEQRp3Qfz5 -82dxciAEcyIOcyIJIAlBDHdBj568+ABxIAlBFHdB8OHDh39xcnMgAiAEcyIJczYCACADIAYgDCAFIAMoAgwiBEESd0GDhowYcSAE -QRp3Qfz582dxciAEcyIQcyACcyIRcyIFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAVzNgIYIAMgCCAEIAMoAggiBUESd0GDhowY -cSAFQRp3Qfz582dxciAFcyIMcyACcyISIAcgD3NzIgRBDHdBj568+ABxIARBFHdB8OHDh39xcnMgBHM2AhQgAyARIAYgB3MiCCAN -IAUgAygCBCIEQRJ3QYOGjBhxIARBGndB/PnzZ3FyIARzIg9zIhdzcyIFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAVzNgIQIAMg -EiAEIA5zIAJzIgUgBiAQc3MiAkEMd0GPnrz4AHEgAkEUd0Hw4cOHf3FycyACczYCDCADIBcgByAMcyAJcyICQQx3QY+evPgAcSAC -QRR3QfDhw4d/cXJzIAJzNgIIIAMgBSAIIA9zIgJBDHdBj568+ABxIAJBFHdB8OHDh39xcnMgAnM2AgQgAxAKIApBGGsiCSALSw0B -QQAhAgNAIAIgA2oiBiAGKAIAIAIgE2ooAgBzNgIAIAJBBGoiAkEgRw0ACyATQYABayETIBRBgAFrIRQgFUGAAWshFSAWQYABayEW -IAMgAygCGCIGQRR3QY+evPgAcSAGQRx3QfDhw4d/cXIgBnMiCyADKAIcIgJzIgcgAkEUd0GPnrz4AHEgAkEcd0Hw4cOHf3FyIAJz -IgIgAygCECIFQRR3QY+evPgAcSAFQRx3QfDhw4d/cXIgBXMiDCADKAIUIgRzIg1zIghBEHdzIAhzNgIcIAMgBiAEIARBFHdBj568 -+ABxIARBHHdB8OHDh39xcnMiCHMiBiADKAIAIgRBFHdBj568+ABxIARBHHdB8OHDh39xciAEcyIPcyIOQRB3IA5zIAIgBHMiDnM2 -AgAgAyAGIAsgBSADKAIMIgRBFHdBj568+ABxIARBHHdB8OHDh39xciAEcyIQcyACcyIRcyIFQRB3cyAFczYCGCADIA0gBCADKAII -IgVBFHdBj568+ABxIAVBHHdB8OHDh39xciAFcyILcyACcyISIAcgCHNzIgRBEHdzIARzNgIUIAMgESAGIAdzIg0gDCAFIAMoAgQi -BEEUd0GPnrz4AHEgBEEcd0Hw4cOHf3FyIARzIghzIgVzcyIMQRB3cyAMczYCECADIBIgBCAPcyACcyICIAYgEHNzIgZBEHdzIAZz -NgIMIAMgBSAHIAtzIA5zIgZBEHdzIAZzNgIIIAMgAiAIIA1zIgZBEHdzIAZzNgIEIAMQCiAKQSBrIgpBeEcNAAtBeCAJQYyWwAAQ -OQALIAkgC0GclsAAEDkAC5UEAQt/IAAoAgQhCiAAKAIAIQsgACgCCCEMAkADQCAFDQECQAJAIAIgBEkNAANAIAEgBGohBQJAAkAC -QAJAIAIgBGsiBkEITwRAIAVBA2pBfHEiACAFRg0BIAAgBWsiAEUNAUEAIQMDQCADIAVqLQAAQQpGDQUgACADQQFqIgNHDQALIAAg -BkEIayIDSw0DDAILIAIgBEYEQCACIQQMBgtBACEDA0AgAyAFai0AAEEKRg0EIAYgA0EBaiIDRw0ACyACIQQMBQsgBkEIayEDQQAh -AAsDQCAAIAVqIgdBBGooAgAiCUGKlKjQAHNBgYKECGsgCUF/c3EgBygCACIHQYqUqNAAc0GBgoQIayAHQX9zcXJBgIGChHhxDQEg -AEEIaiIAIANNDQALCyAAIAZGBEAgAiEEDAMLA0AgACAFai0AAEEKRgRAIAAhAwwCCyAGIABBAWoiAEcNAAsgAiEEDAILIAMgBGoi -AEEBaiEEAkAgACACTw0AIAAgAWotAABBCkcNAEEAIQUgBCEDIAQhAAwDCyACIARPDQALC0EBIQUgAiIAIAgiA0YNAgsCQCAMLQAA -BEAgC0HUnMAAQQQgCigCDBEBAA0BCyABIAhqIQYgACAIayEHQQAhCSAMIAAgCEcEfyAGIAdqQQFrLQAAQQpGBSAJCzoAACADIQgg -CyAGIAcgCigCDBEBAEUNAQsLQQEhDQsgDQvPBAEEfyAAIAEQhAEhAgJAAkACQAJAAkACQAJAIAAQdQ0AIAAoAgAhAyAAEGoNASAB -IANqIQEgACADEIUBIgBBwKbAACgCAEYEQCACKAIEQQNxQQNHDQFBuKbAACABNgIAIAAgASACEE8PCyADQYACTwRAIAAQHAwBCyAA -QQxqKAIAIgQgAEEIaigCACIFRwRAIAUgBDYCDCAEIAU2AggMAQtBsKbAAEGwpsAAKAIAQX4gA0EDdndxNgIACyACEGUNAiACQcSm -wAAoAgBGDQQgAkHApsAAKAIARw0BQcCmwAAgADYCAEG4psAAQbimwAAoAgAgAWoiATYCACAAIAEQVA8LIAEgA2pBEGohAAwECyAC -EHQiAyABaiEBAkAgA0GAAk8EQCACEBwMAQsgAkEMaigCACIEIAJBCGooAgAiAkcEQCACIAQ2AgwgBCACNgIIDAELQbCmwABBsKbA -ACgCAEF+IANBA3Z3cTYCAAsgACABEFQgAEHApsAAKAIARw0BQbimwAAgATYCAA8LIAAgASACEE8LIAFBgAJPBEAgACABEB0PCyAB -QXhxQaikwABqIQICf0GwpsAAKAIAIgNBASABQQN2dCIBcUUEQEGwpsAAIAEgA3I2AgAgAgwBCyACKAIICyEBIAIgADYCCCABIAA2 -AgwgACACNgIMIAAgATYCCA8LQcSmwAAgADYCAEG8psAAQbymwAAoAgAgAWoiATYCACAAIAFBAXI2AgQgAEHApsAAKAIARw0AQbim -wABBADYCAEHApsAAQQA2AgALC5ASAQ5/IwBBIGsiAyQAIANBGGpCADcDACADQRBqQgA3AwAgA0EIakIANwMAIANCADcDACADIAIg -AkEQahAUQQAhAgNAIAIgA2oiCiAKKAIAIAEgAmooAgBzNgIAIAJBBGoiAkEgRw0ACyABQYABaiEKIAFB4ABqIQ0gAUFAayEOIAFB -IGohD0EIIRADQCADEAwgAyADKAIYIgJBFndBv/78+QNxIAJBHndBwIGDhnxxciIGIAJzIgQgAygCHCICQRZ3Qb/+/PkDcSACQR53 -QcCBg4Z8cXIiBSACcyICQQx3QY+evPgAcSACQRR3QfDhw4d/cXJzIAVzNgIcIAMgBiADKAIUIgVBFndBv/78+QNxIAVBHndBwIGD -hnxxciIHIAVzIgUgBEEMd0GPnrz4AHEgBEEUd0Hw4cOHf3Fyc3M2AhggAyADKAIQIgRBFndBv/78+QNxIARBHndBwIGDhnxxciIJ -IARzIgQgBUEMd0GPnrz4AHEgBUEUd0Hw4cOHf3FycyAHczYCFCADIAMoAgQiBUEWd0G//vz5A3EgBUEed0HAgYOGfHFyIgsgBXMi -BSADKAIIIgZBFndBv/78+QNxIAZBHndBwIGDhnxxciIHIAZzIgZBDHdBj568+ABxIAZBFHdB8OHDh39xcnMgB3M2AgggAyADKAIA -IgdBFndBv/78+QNxIAdBHndBwIGDhnxxciIIIAdzIgdBDHdBj568+ABxIAdBFHdB8OHDh39xciAIcyACczYCACADIAkgAygCDCII -QRZ3Qb/+/PkDcSAIQR53QcCBg4Z8cXIiDCAIcyIIIARBDHdBj568+ABxIARBFHdB8OHDh39xcnNzIAJzNgIQIAMgBiAIQQx3QY+e -vPgAcSAIQRR3QfDhw4d/cXJzIAxzIAJzNgIMIAMgByAFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAtzIAJzNgIEQQAhAgNAIAIg -A2oiBCAEKAIAIAIgD2ooAgBzNgIAIAJBBGoiAkEgRw0ACyAQQegARgRAQQAhAgNAIAIgA2oiCiAKKAIAIgogCiAKQQR2c0GAnoD4 -AHEiCkEEdHMgCnM2AgAgAkEEaiICQSBHDQALIAFBwANqIQEgAxAMQQAhAgNAIAIgA2oiCiAKKAIAIAEgAmooAgBzNgIAIAJBBGoi -AkEgRw0ACyAAIAMQFSADQSBqJAAFIAMQDCADIAMoAhgiAkEUd0GPnrz4AHEgAkEcd0Hw4cOHf3FyIgUgAnMiBiADKAIcIgJBFHdB -j568+ABxIAJBHHdB8OHDh39xciIEIAJzIgJBEHdzIARzNgIcIAMgBSADKAIUIgRBFHdBj568+ABxIARBHHdB8OHDh39xciIHIARz -IgggBkEQd3NzNgIYIAMgByADKAIQIgRBFHdBj568+ABxIARBHHdB8OHDh39xciIFIARzIgYgCEEQd3NzNgIUIAMgAygCBCIEQRR3 -QY+evPgAcSAEQRx3QfDhw4d/cXIiByAEcyIIIAMoAggiBEEUd0GPnrz4AHEgBEEcd0Hw4cOHf3FyIgkgBHMiC0EQd3MgCXM2Aggg -AyADKAIAIgRBFHdBj568+ABxIARBHHdB8OHDh39xciIJIARzIgxBEHcgCXMgAnM2AgAgAyAFIAMoAgwiBEEUd0GPnrz4AHEgBEEc -d0Hw4cOHf3FyIgkgBHMiBCAGQRB3c3MgAnM2AhAgAyALIARBEHdzIAlzIAJzNgIMIAMgDCAIQRB3cyAHcyACczYCBEEAIQIDQCAC -IANqIgQgBCgCACACIA5qKAIAczYCACACQQRqIgJBIEcNAAsgAxAMIAMgAygCGCICQRJ3QYOGjBhxIAJBGndB/PnzZ3FyIgYgAnMi -BCADKAIcIgJBEndBg4aMGHEgAkEad0H8+fNncXIiBSACcyICQQx3QY+evPgAcSACQRR3QfDhw4d/cXJzIAVzNgIcIAMgBiADKAIU -IgVBEndBg4aMGHEgBUEad0H8+fNncXIiByAFcyIFIARBDHdBj568+ABxIARBFHdB8OHDh39xcnNzNgIYIAMgAygCECIEQRJ3QYOG -jBhxIARBGndB/PnzZ3FyIgkgBHMiBCAFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAdzNgIUIAMgAygCBCIFQRJ3QYOGjBhxIAVB -GndB/PnzZ3FyIgsgBXMiBSADKAIIIgZBEndBg4aMGHEgBkEad0H8+fNncXIiByAGcyIGQQx3QY+evPgAcSAGQRR3QfDhw4d/cXJz -IAdzNgIIIAMgAygCACIHQRJ3QYOGjBhxIAdBGndB/PnzZ3FyIgggB3MiB0EMd0GPnrz4AHEgB0EUd0Hw4cOHf3FyIAhzIAJzNgIA -IAMgCSADKAIMIghBEndBg4aMGHEgCEEad0H8+fNncXIiDCAIcyIIIARBDHdBj568+ABxIARBFHdB8OHDh39xcnNzIAJzNgIQIAMg -BiAIQQx3QY+evPgAcSAIQRR3QfDhw4d/cXJzIAxzIAJzNgIMIAMgByAFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAtzIAJzNgIE -QQAhAgNAIAIgA2oiBCAEKAIAIAIgDWooAgBzNgIAIAJBBGoiAkEgRw0ACyADEAwgAyADKAIYIgJBGHciBCACcyIFIAMoAhwiAkEY -dyIGIAJzIgJBEHdzIAZzNgIcIAMgBCADKAIUIgZBGHciByAGcyIGIAVBEHdzczYCGCADIAcgAygCECIEQRh3IgUgBHMiBCAGQRB3 -c3M2AhQgAyADKAIEIgZBGHciByAGcyIGIAMoAggiCEEYdyIJIAhzIghBEHdzIAlzNgIIIAMgAygCACIJQRh3IgsgCXMiCUEQdyAL -cyACczYCACADIAUgAygCDCILQRh3IgwgC3MiCyAEQRB3c3MgAnM2AhAgAyAIIAtBEHdzIAxzIAJzNgIMIAMgCSAGQRB3cyAHcyAC -czYCBEEAIQIDQCACIANqIgQgBCgCACACIApqKAIAczYCACACQQRqIgJBIEcNAAsgCkGAAWohCiANQYABaiENIA5BgAFqIQ4gD0GA -AWohDyAQQSBqIRAMAQsLC4gEAQh/IAEoAgQiBQRAIAEoAgAhBANAAkAgA0EBaiECAn8gAiADIARqLQAAIgjAIglBAE4NABoCQAJA -AkACQAJAAkACQAJAAkACQAJAIAhBjKDAAGotAABBAmsOAwABAgwLQYyiwAAgAiAEaiACIAVPGy0AAEHAAXFBgAFHDQsgA0ECagwK -C0GMosAAIAIgBGogAiAFTxssAAAhByAIQeABayIGRQ0BIAZBDUYNAgwDC0GMosAAIAIgBGogAiAFTxssAAAhBiAIQfABaw4FBAMD -AwUDCyAHQWBxQaB/Rw0IDAYLIAdBn39KDQcMBQsgCUEfakH/AXFBDE8EQCAJQX5xQW5HIAdBQE5yDQcMBQsgB0FATg0GDAQLIAlB -D2pB/wFxQQJLIAZBQE5yDQUMAgsgBkHwAGpB/wFxQTBPDQQMAQsgBkGPf0oNAwtBjKLAACAEIANBAmoiAmogAiAFTxstAABBwAFx -QYABRw0CQYyiwAAgBCADQQNqIgJqIAIgBU8bLQAAQcABcUGAAUcNAiADQQRqDAELQYyiwAAgBCADQQJqIgJqIAIgBU8bLQAAQcAB -cUGAAUcNASADQQNqCyIDIgIgBUkNAQsLIAAgAzYCBCAAIAQ2AgAgASAFIAJrNgIEIAEgAiAEajYCACAAIAIgA2s2AgwgACADIARq -NgIIDwsgAEEANgIAC/QGAgx/AX4jAEHQAGsiAyQAIANBPGogASACECYCQCADKAI8BEAgA0EoaiADQcQAaiILKAIAIgE2AgAgAyAD -KQI8Ig83AyBBACECIANBGGogAUEAEDwgA0EANgJEIAMgAykDGDcCPCADQRBqIgQgASAPpyIFajYCBCAEIAU2AgAgAygCECIBIAMo -AhQiDEcEQANAIAEtAAAiBEEEdkHkiMAAai0AAEEEdCAEQQ9xQeSIwABqLQAAciENIAMoAkAgAkYEfyMAQRBrIggkACAIQQhqIQog -A0E8aiEJQQAhBiMAQSBrIgUkAAJAIAIgAkEBaiIESw0AQQggCSgCBCICQQF0IgYgBCAEIAZJGyIEIARBCE0bIgRBf3NBH3YhBgJA -IAJFBEAgBUEANgIYDAELIAUgAjYCHCAFQQE2AhggBSAJKAIANgIUCyAFQRRqIQcgBUEIaiICAn8CQAJ/AkACQCAGBEAgBEEASA0B -IAcoAgQEQCAHQQhqKAIAIg4EQCAHKAIAIA4gBiAEEFkMBQsLIARFDQJB3aLAAC0AABogBCAGEGAMAwsgAkEANgIEIAJBCGogBDYC -AAwDCyACQQA2AgQMAgsgBgsiBwRAIAIgBzYCBCACQQhqIAQ2AgBBAAwCCyACIAY2AgQgAkEIaiAENgIAC0EBCzYCACAFKAIMIQYg -BSgCCARAIAVBEGooAgAhBAwBCyAJIAQ2AgQgCSAGNgIAQYGAgIB4IQYLIAogBDYCBCAKIAY2AgAgBUEgaiQAAkACQCAIKAIIIgJB -gYCAgHhHBEAgAkUNASACIAgoAgwQegALIAhBEGokAAwBCxBHAAsgAygCRAUgAgsgAygCPGogDToAACADIAMoAkRBAWoiAjYCRCAB -QQFqIgEgDEcNAAsLIANBOGogCygCACIBNgIAIAMgAykCPCIPNwMwIANBPGogD6cgARALIAMoAjwNASADKAJAIQIgA0EIaiADQcQA -aigCACIBQQAQPCADKAIMIQQgAygCCCACIAEQggEhAiAAIAE2AgggACAENgIEIAAgAjYCACADQTBqEFEgA0EgahBRIANB0ABqJAAP -CyADIAMpAkA3AzBB3IfAAEErIANBMGpBmIjAAEHUiMAAEDQACyADIAMpAkA3A0hB3IfAAEErIANByABqQYiIwABB9IjAABA0AAuk -AwENfyAAIAIoAAwiAyABKAAMIgRBAXZzQdWq1aoFcSIIIANzIgMgAigACCIFIAEoAAgiBkEBdnNB1arVqgVxIgkgBXMiBUECdnNB -s+bMmQNxIgsgA3MiAyACKAAEIgcgASgABCIKQQF2c0HVqtWqBXEiDCAHcyIHIAIoAAAiAiABKAAAIgFBAXZzQdWq1aoFcSINIAJz -IgJBAnZzQbPmzJkDcSIOIAdzIgdBBHZzQY+evPgAcSIPIANzNgIcIAAgBCAIQQF0cyIDIAYgCUEBdHMiBEECdnNBs+bMmQNxIggg -A3MiAyAKIAxBAXRzIgYgASANQQF0cyIBQQJ2c0Gz5syZA3EiCSAGcyIGQQR2c0GPnrz4AHEiCiADczYCGCAAIAtBAnQgBXMiAyAO -QQJ0IAJzIgJBBHZzQY+evPgAcSIFIANzNgIUIAAgD0EEdCAHczYCDCAAIAhBAnQgBHMiAyAJQQJ0IAFzIgFBBHZzQY+evPgAcSIE -IANzNgIQIAAgCkEEdCAGczYCCCAAIAVBBHQgAnM2AgQgACAEQQR0IAFzNgIAC6QDAQ5/IAAgASgCHCICIAEoAhgiBEEBdnNB1arV -qgVxIgcgAnMiAiABKAIUIgUgASgCECIGQQF2c0HVqtWqBXEiCCAFcyIFQQJ2c0Gz5syZA3EiCSACcyICIAEoAgwiAyABKAIIIgtB -AXZzQdWq1aoFcSIMIANzIgMgASgCBCIKIAEoAgAiAUEBdnNB1arVqgVxIg0gCnMiCkECdnNBs+bMmQNxIg4gA3MiA0EEdnNBj568 -+ABxIg8gAnM2ABwgACAJQQJ0IAVzIgIgDkECdCAKcyIFQQR2c0GPnrz4AHEiCSACczYAGCAAIA9BBHQgA3M2ABQgACAEIAdBAXRz -IgIgBiAIQQF0cyIEQQJ2c0Gz5syZA3EiByACcyICIAsgDEEBdHMiBiABIA1BAXRzIgFBAnZzQbPmzJkDcSIIIAZzIgZBBHZzQY+e -vPgAcSIDIAJzNgAMIAAgCUEEdCAFczYAECAAIAdBAnQgBHMiAiAIQQJ0IAFzIgFBBHZzQY+evPgAcSIEIAJzNgAIIAAgA0EEdCAG -czYABCAAIARBBHQgAXM2AAAL+wIBB38jAEEQayIEJAACQAJAAkACQAJAAkAgASgCBCICRQ0AIAEoAgAhBiACQQNxIQcCQCACQQRJ -BEBBACECDAELIAZBHGohAyACQXxxIQhBACECA0AgAygCACADQQhrKAIAIANBEGsoAgAgA0EYaygCACACampqaiECIANBIGohAyAI -IAVBBGoiBUcNAAsLIAcEQCAFQQN0IAZqQQRqIQMDQCADKAIAIAJqIQIgA0EIaiEDIAdBAWsiBw0ACwsgAUEMaigCAARAIAJBAEgN -ASAGKAIERSACQRBJcQ0BIAJBAXQhAgsgAg0BC0EBIQNBACECDAELIAJBAEgNAUHdosAALQAAGiACQQEQYCIDRQ0CCyAEQQA2Aggg -BCACNgIEIAQgAzYCACAEQbiZwAAgARANRQ0CQZiawABBMyAEQQ9qQcyawABB9JrAABA0AAsQRwALQQEgAhB6AAsgACAEKQIANwIA -IABBCGogBEEIaigCADYCACAEQRBqJAAL4wIBBX9BEEEIEFggAEsEQEEQQQgQWCEAC0EIQQgQWCEDQRRBCBBYIQJBEEEIEFghBAJA -QQBBEEEIEFhBAnRrIgVBgIB8IAQgAiADamprQXdxQQNrIgMgAyAFSxsgAGsgAU0NACAAQRAgAUEEakEQQQgQWEEFayABSxtBCBBY -IgNqQRBBCBBYakEEaxADIgJFDQAgAhCHASEBAkAgAEEBayIEIAJxRQRAIAEhAAwBCyACIARqQQAgAGtxEIcBIQJBEEEIEFghBCAB -EHQgAiAAQQAgAiABayAETRtqIgAgAWsiAmshBCABEGpFBEAgACAEEEwgASACEEwgASACEBAMAQsgASgCACEBIAAgBDYCBCAAIAEg -Amo2AgALAkAgABBqDQAgABB0IgJBEEEIEFggA2pNDQAgACADEIQBIQEgACADEEwgASACIANrIgMQTCABIAMQEAsgABCGASEGIAAQ -ahoLIAYLigMCBX8BfiMAQUBqIgUkAEEBIQcCQCAALQAEDQAgAC0ABSEJIAAoAgAiBigCHCIIQQRxRQRAIAYoAhRB25zAAEHYnMAA -IAkbQQJBAyAJGyAGQRhqKAIAKAIMEQEADQEgBigCFCABIAIgBigCGCgCDBEBAA0BIAYoAhRBqJzAAEECIAYoAhgoAgwRAQANASAD -IAYgBCgCDBEAACEHDAELIAlFBEAgBigCFEHdnMAAQQMgBkEYaigCACgCDBEBAA0BIAYoAhwhCAsgBUEBOgAbIAVBNGpBvJzAADYC -ACAFIAYpAhQ3AgwgBSAFQRtqNgIUIAUgBikCCDcCJCAGKQIAIQogBSAINgI4IAUgBigCEDYCLCAFIAYtACA6ADwgBSAKNwIcIAUg -BUEMaiIINgIwIAggASACEA8NACAFQQxqQaicwABBAhAPDQAgAyAFQRxqIAQoAgwRAAANACAFKAIwQeCcwABBAiAFKAI0KAIMEQEA -IQcLIABBAToABSAAIAc6AAQgBUFAayQAIAALiAQBBX8jAEEQayIDJAACQAJ/AkAgAUGAAU8EQCADQQA2AgwgAUGAEEkNASABQYCA -BEkEQCADIAFBP3FBgAFyOgAOIAMgAUEMdkHgAXI6AAwgAyABQQZ2QT9xQYABcjoADUEDDAMLIAMgAUE/cUGAAXI6AA8gAyABQQZ2 -QT9xQYABcjoADiADIAFBDHZBP3FBgAFyOgANIAMgAUESdkEHcUHwAXI6AAxBBAwCCyAAKAIIIgIgACgCBEYEQCMAQSBrIgQkAAJA -AkAgAkEBaiICRQ0AQQggACgCBCIGQQF0IgUgAiACIAVJGyICIAJBCE0bIgVBf3NBH3YhAgJAIAZFBEAgBEEANgIYDAELIAQgBjYC -HCAEQQE2AhggBCAAKAIANgIUCyAEQQhqIAIgBSAEQRRqEC4gBCgCDCECIAQoAghFBEAgACAFNgIEIAAgAjYCAAwCCyACQYGAgIB4 -Rg0BIAJFDQAgAiAEQRBqKAIAEHoACxBHAAsgBEEgaiQAIAAoAgghAgsgACACQQFqNgIIIAAoAgAgAmogAToAAAwCCyADIAFBP3FB -gAFyOgANIAMgAUEGdkHAAXI6AAxBAgshASABIAAoAgQgACgCCCICa0sEQCAAIAIgARAsIAAoAgghAgsgACgCACACaiADQQxqIAEQ -ggEaIAAgASACajYCCAsgA0EQaiQAQQALvgICBX8BfiMAQTBrIgQkAEEnIQICQCAAQpDOAFQEQCAAIQcMAQsDQCAEQQlqIAJqIgNB -BGsgACAAQpDOAIAiB0KQzgB+faciBUH//wNxQeQAbiIGQQF0QaqdwABqLwAAOwAAIANBAmsgBSAGQeQAbGtB//8DcUEBdEGqncAA -ai8AADsAACACQQRrIQIgAEL/wdcvViAHIQANAAsLIAenIgNB4wBLBEAgAkECayICIARBCWpqIAenIgMgA0H//wNxQeQAbiIDQeQA -bGtB//8DcUEBdEGqncAAai8AADsAAAsCQCADQQpPBEAgAkECayICIARBCWpqIANBAXRBqp3AAGovAAA7AAAMAQsgAkEBayICIARB -CWpqIANBMGo6AAALIAFBxJvAAEEAIARBCWogAmpBJyACaxAJIARBMGokAAuyAgEDfyMAQYABayIEJAACQAJAAn8CQCABKAIcIgJB -EHFFBEAgAkEgcQ0BIAA1AgAgARAaDAILIAAoAgAhAEEAIQIDQCACIARqQf8AakEwQdcAIABBD3EiA0EKSRsgA2o6AAAgAkEBayEC -IABBEEkgAEEEdiEARQ0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIgBGpBgAFqQQAgAmsQCQwBCyAAKAIAIQBBACECA0AgAiAE -akH/AGpBMEE3IABBD3EiA0EKSRsgA2o6AAAgAkEBayECIABBEEkgAEEEdiEARQ0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIg -BGpBgAFqQQAgAmsQCQsgBEGAAWokAA8LIABBgAFBmJ3AABA2AAsgAEGAAUGYncAAEDYAC7sCAQV/IAAoAhghAwJAAkAgACAAKAIM -RgRAIABBFEEQIABBFGoiASgCACIEG2ooAgAiAg0BQQAhAQwCCyAAKAIIIgIgACgCDCIBNgIMIAEgAjYCCAwBCyABIABBEGogBBsh -BANAIAQhBSACIgFBFGoiAiABQRBqIAIoAgAiAhshBCABQRRBECACG2ooAgAiAg0ACyAFQQA2AgALAkAgA0UNAAJAIAAgACgCHEEC -dEGYo8AAaiICKAIARwRAIANBEEEUIAMoAhAgAEYbaiABNgIAIAENAQwCCyACIAE2AgAgAQ0AQbSmwABBtKbAACgCAEF+IAAoAhx3 -cTYCAA8LIAEgAzYCGCAAKAIQIgIEQCABIAI2AhAgAiABNgIYCyAAQRRqKAIAIgBFDQAgAUEUaiAANgIAIAAgATYCGAsLnwIBBH8g -AEIANwIQIAACf0EAIAFBgAJJDQAaQR8gAUH///8HSw0AGiABQQYgAUEIdmciAmt2QQFxIAJBAXRrQT5qCyIDNgIcIANBAnRBmKPA -AGohAgJAQbSmwAAoAgAiBEEBIAN0IgVxRQRAQbSmwAAgBCAFcjYCACACIAA2AgAMAQsgAigCACECIAMQUyEDAkACQCACEHQgAUYE -QCACIQMMAQsgASADdCEEA0AgAiAEQR12QQRxakEQaiIFKAIAIgNFDQIgBEEBdCEEIAMiAhB0IAFHDQALCyADKAIIIgEgADYCDCAD -IAA2AgggACADNgIMIAAgATYCCCAAQQA2AhgPCyAFIAA2AgALIAAgAjYCGCAAIAA2AgggACAANgIMC8QCAgR/AX4jAEFAaiIDJAAg -ACgCACEFIAACf0EBIAAtAAgNABogACgCBCIEKAIcIgZBBHFFBEBBASAEKAIUQducwABB5ZzAACAFG0ECQQEgBRsgBEEYaigCACgC -DBEBAA0BGiABIAQgAigCDBEAAAwBCyAFRQRAQQEgBCgCFEHmnMAAQQIgBEEYaigCACgCDBEBAA0BGiAEKAIcIQYLIANBAToAGyAD -QTRqQbycwAA2AgAgAyAEKQIUNwIMIAMgA0EbajYCFCADIAQpAgg3AiQgBCkCACEHIAMgBjYCOCADIAQoAhA2AiwgAyAELQAgOgA8 -IAMgBzcCHCADIANBDGo2AjBBASABIANBHGogAigCDBEAAA0AGiADKAIwQeCcwABBAiADKAI0KAIMEQEACzoACCAAIAVBAWo2AgAg -A0FAayQAIAALXQEMf0GgpMAAKAIAIgIEQEGYpMAAIQYDQCACIgEoAgghAiABKAIEIQMgASgCACEEIAEoAgwaIAEhBiAFQQFqIQUg -Ag0ACwtB2KbAAEH/HyAFIAVB/x9NGzYCACAIC8YeAhB/A34jAEEgayIIJAAgCCACNgIYIAggAjYCFCAIIAE2AhAgCEEQahA+IAgo -AhghEyAIKAIQIQEgCCADBH8gCCAENgIYIAggBDYCFCAIIAM2AhAgCEEQahA+IAggCCgCGCICNgIMIAggAjYCCCAIKAIQBUEACzYC -BCAIQRBqIREjAEGgCWsiBSQAAkACQAJAAkACQCAIQQRqIgMoAgBFBEAgBUHwBGpB4InAAEEsEBMgBSgC8AQiAkUNASAFIAUoAvgE -Igc2AiwgBSAFKAL0BDYCKCAFIAI2AiQMAgsgBUGYAWogA0EIaigCACICNgIAIAUgAykCACIWNwOQASAFQfAEaiAWpyACEBMgBSgC -8AQiAgRAIAUgBSgC+AQiBzYCLCAFIAUoAvQENgIoIAUgAjYCJCAFQZABahBRDAILIAUoAvQEIQIgEUEANgIAIBEgAjYCBCAFQZAB -ahBRDAILIAUoAvQEIQIgEUEANgIAIBEgAjYCBAwBCyAHQSBHBEBBnIrAAEEJEAEhAiARQQA2AgAgESACNgIEIAVBJGoQUQwBCyAF -QcgAaiIHIAJBGGopAAA3AwAgBUFAayIEIAJBEGopAAA3AwAgBUE4aiIDIAJBCGopAAA3AwAgBSACKQAANwMwIAVBGGogE0EAEDwg -BSgCHCECIAUoAhggASATEIIBIQogBSATNgJcIAUgAjYCWCAFIAo2AlQgBUH4AGogBykDADcDACAFQfAAaiAEKQMANwMAIAVB6ABq -IAMpAwA3AwAgBSAFKQMwNwNgIAVBkAFqIAVB4ABqEAggBUEQaiATQXBxIg1BEGoiDkEBEDwgBSAONgKMASAFIAUoAhQ2AogBIAUg -BSgCECISNgKEASAOIBNJDQEgBUHwBGoiECAFQZABakHgAxCCARogBUGACWoiA0IANwAAIANBCGpCADcAACADIAogDWogE0EPcSIC -EIIBGiACIANqQRAgAmsiAiACEIEBGiAFQdgIaiAFQYgJaikAADcDACAFIAUpAIAJNwPQCCAFIBNBBHY2AogJIAUgEjYChAkgBSAK -NgKACSMAQUBqIgkkACADKAIIIhRBAXEgAygCBCEHIAMoAgAhBCAUQQJPBEAgFEEBdiEGIAQhAyAHIQIDQCAJQSBqIBAgAxARIAJB -GGogCUE4aikDADcAACACQRBqIAlBMGopAwA3AAAgAkEIaiAJQShqKQMANwAAIAIgCSkDIDcAACADQSBqIQMgAkEgaiECIAZBAWsi -Bg0ACwsEQCAJEE0gCUEIaiAEIBRB/v///wBxQQR0IgNqIgJBCGopAAA3AwAgCSACKQAANwMAIAlBIGogECAJEBEgAyAHaiICQQhq -IAlBKGopAAA3AAAgAiAJKQAgNwAACyAJQUBrJAAgEkUNASAFQeAIaiICEE0gBUHoCGogBUHYCGopAwA3AwAgBSAFKQPQCDcD4Agg -BUGACWogBUHwBGoiFCACEBEgDSASaiICQQhqIAVBiAlqKQAANwAAIAIgBSkAgAk3AAAgBUEIaiAOQQAQPCAFKAIMIQMgBSgCCCAS -IA4QggEhAiAFIA42AvgEIAUgAzYC9AQgBSACNgLwBCMAQTBrIgwkACAMQRBqIQYgFCgCCCIPIRBBqILAAC0AACEKIwBBIGsiDSQA -IBBBgICAgHxJIQQgEEEDbiICQQJ0IQMCQCAQIAJBA2xrIgdFBEAgAyECDAELAkACQAJAIApFBEBBAiECIAdBAWsOAgMCAQsgEEGA -gICAfEkgA0EEaiICIANPcSEEDAMLIA1BEGpCADcCACANQQE2AgggDUHgjsAANgIEIA0gDUEcajYCDCANQQRqQcyPwAAQSAALQQMh -AgsgAiADciECCyAGIAI2AgQgBiAENgIAIA1BIGokAAJAAkAgDCgCEARAIAxBCGogDCgCFCILQQEQPCAMKAIMIRAgDCgCCCEJQQAh -B0EAIQQCQAJAAkACfyAUKAIAIQ5BACECAkAgD0EbSQ0AIA9BGmsiAkEAIAIgD00bIQoCQANAIA8gB0Eaak8EQCAEQWBGDQIgCyAE -QSBqIgJJBEAgAiALQZSVwAAQOAALIAQgCWoiBiAHIA5qIgQpAAAiFUI4hiIWQjqIp0GrgsAAai0AADoAACAGQQRqIBVCgICA+A+D -QgiGIhdCIoinQauCwABqLQAAOgAAIAZBAWogFiAVQoD+A4NCKIaEIhZCNIinQT9xQauCwABqLQAAOgAAIAZBAmogFiAVQoCA/AeD -QhiGIBeEhCIXQi6Ip0E/cUGrgsAAai0AADoAACAGQQNqIBdCKIinQT9xQauCwABqLQAAOgAAIAZBBmogFUIIiEKAgID4D4MgFUIY -iEKAgPwHg4QgFUIoiEKA/gODIBVCOIiEhCIWpyIDQRZ2QT9xQauCwABqLQAAOgAAIAZBB2ogA0EQdkE/cUGrgsAAai0AADoAACAG -QQVqIBYgF4RCHIinQT9xQauCwABqLQAAOgAAIAZBCGogBEEGaikAACIVQjiGIhZCOoinQauCwABqLQAAOgAAIAZBCWogFiAVQoD+ -A4NCKIaEIhdCNIinQT9xQauCwABqLQAAOgAAIAZBCmogFyAVQoCAgPgPg0IIhiIWIBVCgID8B4NCGIaEhCIXQi6Ip0E/cUGrgsAA -ai0AADoAACAGQQtqIBdCKIinQT9xQauCwABqLQAAOgAAIAZBDGogFkIiiKdBq4LAAGotAAA6AAAgBkENaiAXIBVCCIhCgICA+A+D -IBVCGIhCgID8B4OEIBVCKIhCgP4DgyAVQjiIhIQiFoRCHIinQT9xQauCwABqLQAAOgAAIAZBDmogFqciA0EWdkE/cUGrgsAAai0A -ADoAACAGQQ9qIANBEHZBP3FBq4LAAGotAAA6AAAgBkEQaiAEQQxqKQAAIhVCOIYiFkI6iKdBq4LAAGotAAA6AAAgBkERaiAWIBVC -gP4Dg0IohoQiF0I0iKdBP3FBq4LAAGotAAA6AAAgBkESaiAXIBVCgICA+A+DQgiGIhYgFUKAgPwHg0IYhoSEIhdCLoinQT9xQauC -wABqLQAAOgAAIAZBE2ogF0IoiKdBP3FBq4LAAGotAAA6AAAgBkEUaiAWQiKIp0GrgsAAai0AADoAACAGQRZqIBVCCIhCgICA+A+D -IBVCGIhCgID8B4OEIBVCKIhCgP4DgyAVQjiIhIQiFqciA0EWdkE/cUGrgsAAai0AADoAACAGQRdqIANBEHZBP3FBq4LAAGotAAA6 -AAAgBkEVaiAWIBeEQhyIp0E/cUGrgsAAai0AADoAACAGQRhqIARBEmopAAAiFUI4hiIWQjqIp0GrgsAAai0AADoAACAGQRlqIBYg -FUKA/gODQiiGhCIXQjSIp0E/cUGrgsAAai0AADoAACAGQRpqIBcgFUKAgID4D4NCCIYiFiAVQoCA/AeDQhiGhIQiF0IuiKdBP3FB -q4LAAGotAAA6AAAgBkEbaiAXQiiIp0E/cUGrgsAAai0AADoAACAGQRxqIBZCIoinQauCwABqLQAAOgAAIAZBHWogFyAVQgiIQoCA -gPgPgyAVQhiIQoCA/AeDhCAVQiiIQoD+A4MgFUI4iISEIhaEQhyIp0E/cUGrgsAAai0AADoAACAGQR5qIBanIgNBFnZBP3FBq4LA -AGotAAA6AAAgBkEfaiADQRB2QT9xQauCwABqLQAAOgAAIAIhBCAKIAdBGGoiB08NAQwDCwsgB0EaaiAPQYSVwAAQOAALQWBBAEGU -lcAAEDkACwJAAkACQAJAAkACfwJAAkACQAJAAkACQCAPIA9BA3AiBmsiEiAHTQRAIAIhAwwBCwNAIAdBfEsNAiAHQQNqIgQgD0sN -AyACQQRqIQMgAkF7Sw0EIAMgC0sEQCADIAtB9JTAABA4AAsgAiAJaiINIAcgDmoiAi0AACIKQQJ2QauCwABqLQAAOgAAIA1BA2og -AkECai0AACIHQT9xQauCwABqLQAAOgAAIA1BAmogAkEBai0AACICQQJ0IAdBBnZyQT9xQauCwABqLQAAOgAAIA1BAWogCkEEdCAC -QQR2ckE/cUGrgsAAai0AADoAACADIQIgBCIHIBJJDQALCyAGQQFrDgIDBAYLIAcgB0EDakHklMAAEDkACyAHQQNqIA9B5JTAABA4 -AAsgAiADQfSUwAAQOQALIAMgC0kEQEECIQcgAyAJaiAOIBJqLQAAIgJBAnZBq4LAAGotAAA6AAAgAkEEdEEwcSALIANBAWoiBEsN -AhogBCALQdSUwAAQNwALIAMgC0HElMAAEDcACyADIAtPDQIgAyAJaiAOIBJqLQAAIgJBAnZBq4LAAGotAAA6AAAgEkEBaiIKIA9P -DQMgA0EBaiIEIAtPDQRBAyEHIAQgCWogAkEEdCAKIA5qLQAAIgJBBHZyQT9xQauCwABqLQAAOgAAIANBAmoiBCALTw0FIAJBAnRB -PHELIQIgBCAJaiACQauCwABqLQAAOgAAIAMgB2ohAwsgAwwECyADIAtBhJTAABA3AAsgCiAPQZSUwAAQNwALIAQgC0GklMAAEDcA -CyAEIAtBtJTAABA3AAsiCkGogsAALQAABH8gCiALSw0BAn8gCSAKaiECIAsgCmshB0EAIQMCQEEAIAprQQNxIgQEQANAIAMgB0YN -AiACIANqQT06AAAgBCADQQFqIgNHDQALCyAEDAELIAcgB0Hcj8AAEDcACwVBAAsgCmpLDQEMAgsgCiALQdCFwAAQNgALQeCFwABB -KkGMhsAAED0ACyAMQRxqIAkgCxALIAwoAhwEQCAMKQIgIhZCgICAgPAfg0KAgICAIFINAgsgESALNgIIIBEgEDYCBCARIAk2AgAg -FBBRIAxBMGokAAwCC0GCh8AAQS1BsIfAABA9AAsgDCAWNwIoIAwgCzYCJCAMIBA2AiAgDCAJNgIcQcCHwABBDCAMQRxqQZCBwABB -zIfAABA0AAsgBUGEAWoQUSAFQdQAahBRIAVBJGoQUQsgBUGgCWokAAwBC0Hch8AAQSsgBUHwBGpBuIjAAEGMisAAEDQACyAIKAIY -IQIgCCgCFCEDIAgoAhAhBCATBEAgARAFCyAAIAQEfyAIIAI2AhggCCADNgIUIAggBDYCECAIQRBqED4gCCgCGCEBIAgoAhAhBEEA -IQNBAAVBAQs2AgwgACADNgIIIAAgATYCBCAAIAQ2AgAgCEEgaiQAC9wRAg1/AX4jAEEgayIHJAAgByACNgIYIAcgAjYCFCAHIAE2 -AhAgB0EQahA+IAcoAhghDyAHKAIQIQEgByADBH8gByAENgIYIAcgBDYCFCAHIAM2AhAgB0EQahA+IAcgBygCGCICNgIMIAcgAjYC -CCAHKAIQBUEACzYCBCAHQRBqIQsjAEHgCGsiBSQAAkACQAJAIAdBBGoiAigCAEUEQCAFQfQEakHgicAAQSwQEyAFKAL0BCIDRQ0B -IAUgBSgC/AQiBDYCLCAFIAUoAvgENgIoIAUgAzYCJAwCCyAFQZgBaiACQQhqKAIAIgM2AgAgBSACKQIAIhI3A5ABIAVB9ARqIBKn -IAMQEyAFKAL0BCIDBEAgBSAFKAL8BCIENgIsIAUgBSgC+AQ2AiggBSADNgIkIAVBkAFqEFEMAgsgBSgC+AQhAiALQQA2AgAgCyAC -NgIEIAVBkAFqEFEMAgsgBSgC+AQhAiALQQA2AgAgCyACNgIEDAELAkACQAJAIARBIEYEQCAFQcgAaiIEIANBGGopAAA3AwAgBUFA -ayIJIANBEGopAAA3AwAgBUE4aiIGIANBCGopAAA3AwAgBSADKQAANwMwIAVB9ARqIAEgDxAmIAUoAvQEIgINAUG4isAAQRwQASEC -IAtBADYCACALIAI2AgQMAgtBnIrAAEEJEAEhAiALQQA2AgAgCyACNgIEDAELIAUgBSgC/AQiCjYCXCAFIAUoAvgENgJYIAUgAjYC -VCAFQfgAaiAEKQMANwMAIAVB8ABqIAkpAwA3AwAgBUHoAGogBikDADcDACAFIAUpAzA3A2AgBUGQAWoiAyAFQeAAahAIIAVBGGog -CkEBEDwgBSAKNgKMASAFIAUoAhw2AogBIAUgBSgCGCIJNgKEASAFQfQEaiADQeADEIIBGgJAIApBD3ENACAFIAk2AtgIIAUgAjYC -1AggBSAKQQR2Igw2AtwIIAVB9ARqIQ4jAEFAaiIIJAAgBUHUCGoiAigCCCINQQFxIAIoAgQhAyACKAIAIQYgDUECTwRAIA1BAXYh -ECAGIQQgAyECA0AgCEEgaiAOIAQQDiACQRhqIAhBOGopAwA3AAAgAkEQaiAIQTBqKQMANwAAIAJBCGogCEEoaikDADcAACACIAgp -AyA3AAAgBEEgaiEEIAJBIGohAiAQQQFrIhANAAsLBEAgCBBNIAhBCGogBiANQf7///8AcUEEdCICaiIEQQhqKQAANwMAIAggBCkA -ADcDACAIQSBqIA4gCBAOIAIgA2oiAkEIaiAIQShqKQAANwAAIAIgCCkAIDcAAAsgCEFAayQAIAVBEGohCCAJIQJBACEDQQAhBgJA -AkACQCAMRQ0AIAxBBHQgAmpBEGstAA8iBEERa0H/AXFB8AFJDQBBACAEayEDQRAgBGsgAiAMQQR0aiEOAkADQCADQX9GDQEgAyAO -aiEGIANBAWohAyAGLQAAIARGDQALQQAhAwwBC0ERTw0BIAxBBHQgBGshBiACIQMLIAggBjYCBCAIIAM2AgAMAQtB5YDAAEEZQYCB -wAAQQwALIAUoAhBFDQACQCAKRQRAQQAhBgwBCyAKIAkgCmpBAWstAAAiAmshBiACIApLDQMLIAVB9ARqIQhBACEEIwBB8ABrIgMk -ACADQShqIgIgBjYCBCACIAk2AgAgAyADKQMoNwI0IANB0ABqIANBNGoQEgJAAkACQAJAIAMoAlAEQCADQegAaiADQdgAaikCADcD -ACADIAMpAlA3A2AgA0EgaiADQeAAaiICEH4gAygCJCEJIAMoAiAhCiADQRhqIAIQfyADKAIcRQRAIAggCjYCBCAIQQA2AgAgCEEI -aiAJNgIADAILAkAgBkUEQEEBIQIMAQsgBkEASA0DQd2iwAAtAAAaIAZBARBgIgJFDQQLIANBADYCRCADIAI2AjwgAyAGNgJAIAYg -CUkEfyADQTxqQQAgCRAtIAMoAkQhBCADKAI8BSACCyAEaiAKIAkQggEaIAMgBCAJaiIGNgJEIAMoAkAgBmtBAk0EQCADQTxqIAZB -AxAtIAMoAkQhBgsgAygCPCICIAZqIgRBhJvAAC8AACIJOwAAIARBAmpBhpvAAC0AACIKOgAAIAMgBkEDaiIGNgJEIAMgAykCNDcC -SCADQdAAaiADQcgAahASIAMoAlAEQANAIANB6ABqIANB2ABqKQIANwMAIAMgAykCUDcDYCADQRBqIANB4ABqEH4gAygCECEMIAMo -AhQiBCADKAJAIAZrSwRAIANBPGogBiAEEC0gAygCRCEGIAMoAjwhAgsgAiAGaiAMIAQQggEaIAMgBCAGaiIGNgJEIANBCGogA0Hg -AGoQfyADKAIMBEAgAygCQCAGa0ECTQRAIANBPGogBkEDEC0gAygCRCEGCyADKAI8IgIgBmoiBCAJOwAAIARBAmogCjoAACADIAZB -A2oiBjYCRAsgA0HQAGogA0HIAGoQEiADKAJQDQALCyAIIAMpAjw3AgAgCEEIaiADQcQAaigCADYCAAwBCyAIQbiZwAA2AgQgCEEA -NgIAIAhBCGpBADYCAAsgA0HwAGokAAwCCxBHAAtBASAGEHoACwJAIAUoAvQEIgNFBEAgBSgC+AQhBCAFQQhqIAVB/ARqKAIAIgZB -ABA8IAUoAgwhAiAFKAIIIgMgBCAGEIIBGgwBCyAFKAL8BCEGIAUoAvgEIQILIAsgBjYCCCALIAI2AgQgCyADNgIAIAVBhAFqEFEg -BUHUAGoQUSAFQSRqEFEMAwtB1IrAAEEeEAEhAiALQQA2AgAgCyACNgIEIAVBhAFqEFEgBUHUAGoQUQsgBUEkahBRDAELIAYgCkGo -isAAEDgACyAFQeAIaiQAIAcoAhghAiAHKAIUIQMgBygCECEEIA8EQCABEAULIAAgBAR/IAcgAjYCGCAHIAM2AhQgByAENgIQIAdB -EGoQPiAHKAIYIQEgBygCECEEQQAhA0EABUEBCzYCDCAAIAM2AgggACABNgIEIAAgBDYCACAHQSBqJAALjQIBAn8jAEEQayICJAAC -QCAAKAIAIgMtAABFBEAgASgCFEGNosAAQQQgAUEYaigCACgCDBEBACEADAELQQEhACACIANBAWo2AgAgAiABKAIUQZGiwABBBCAB -QRhqKAIAKAIMEQEAOgAMIAIgATYCCCACQQA6AA0gAkEANgIEIAJBBGogAkHsnMAAEB4gAi0ADCEBKAIAIgNFBEAgAUEARyEADAEL -IAENACACKAIIIQECQCADQQFHDQAgAi0ADUUNACABLQAcQQRxDQAgASgCFEHonMAAQQEgAUEYaigCACgCDBEBAA0BCyABKAIUQcSb -wABBASABQRhqKAIAKAIMEQEAIQALIAJBEGokACAAC/ABAgR/AX4jAEEwayICJAAgAUEEaiEEIAEoAgRFBEAgASgCACEDIAJBLGoi -BUEANgIAIAJCATcCJCACQSRqQaCXwAAgAxANGiACQSBqIAUoAgAiAzYCACACIAIpAiQiBjcDGCAEQQhqIAM2AgAgBCAGNwIACyAC -QRBqIgMgBEEIaigCADYCACABQQxqQQA2AgAgBCkCACEGIAFCATcCBEHdosAALQAAGiACIAY3AwhBDEEEEGAiAUUEQEEEQQwQegAL -IAEgAikDCDcCACABQQhqIAMoAgA2AgAgAEHQmMAANgIEIAAgATYCACACQTBqJAAL1wYBCn8jAEEQayIFJAAgBSACNgIIIAUgAjYC -BCAFIAE2AgAgBRA+IAUoAgghCyAFKAIAIQEgBSAENgIIIAUgBDYCBCAFIAM2AgAgBRA+IAUoAgAiDCEEIAUoAgghAyMAQfABayIC -JAAgAiALNgIEIAIgATYCACACIAM2AgwgAiAENgIIIAJBmAFqQYSJwABBLBATIAIoApgBRQRAIAIgAigCnAE2AkBB3IfAAEErIAJB -QGtBqIjAAEGwicAAEDQACyACQRhqIAJBoAFqKAIANgIAIAIgAikCmAE3AxAgAkHMAGpCAzcCACACQawBakEDNgIAIAJBpAFqIg1B -BDYCACACQQM2AkQgAkHAicAANgJAIAJBAzYCnAEgAiACQZgBaiIHNgJIIAIgAkEIajYCqAEgAiACQRBqIg42AqABIAIgAjYCmAEg -AkEcaiIEIAJBQGsiCRAWIAlBAEHAABCBARogAkGIAWpC/rnrxemOlZkQNwIAIAJCgcaUupbx6uZvNwKAASACQgA3ApABIAkgAigC -HCACKAIkECggBBBRIAcgCUHYABCCARogAkEoaiEKQQAhBCMAQdAAayIGJAAgBkEAQTgQgQEiBiAHKAJQIgg2AjggBiAHQdQAaigC -ADYCPCAHQfKKwABBOEH4ACAIQQN2QT9xIghBOEkbIAhrECgDQCAEIAZqIAQgB2ooAgA2AgAgBEEEaiIEQThHDQALIAdBQGsiCCAG -EAQgBkIANwNIIAZCADcDQEFwIQQDQCAEIAZqQdAAaiAEIAhqQRBqKAIANgIAIARBBGoiBA0ACyAKIAYpA0g3AAggCiAGKQNANwAA -IAZB0ABqJAAgDUIBNwIAIAJBATYCnAEgAkHYicAANgKYASACQQU2AjwgAiACQThqNgKgASACIAo2AjggCSAHEBYgBUEIaiACQcgA -aigCADYCACAFIAIpA0A3AgAgDhBRIAJB8AFqJAAgBSgCCCEGIAUoAgQhBCAFKAIAIQIgAwRAIAwQBQsgCwRAIAEQBQsgACACBH8g -BSAGNgIIIAUgBDYCBCAFIAI2AgAgBRA+IAUoAgghASAFKAIAIQNBACEEQQAFQQELNgIMIAAgBDYCCCAAIAE2AgQgACADNgIAIAVB -EGokAAvaAQEBfyMAQRBrIgUkACAFIAAoAhQgASACIABBGGooAgAoAgwRAQA6AAwgBSAANgIIIAUgAkU6AA0gBUEANgIEIAVBBGog -A0Hsj8AAEB4gBEHYi8AAEB4hAAJ/IAUtAAwiAUEARyAAKAIAIgJFDQAaQQEgAQ0AGiAFKAIIIQACQCACQQFHDQAgBS0ADUUNACAA -LQAcQQRxDQBBASAAKAIUQeicwABBASAAQRhqKAIAKAIMEQEADQEaCyAAKAIUQcSbwABBASAAQRhqKAIAKAIMEQEACyAFQRBqJAAL -jSICEX8IfiMAQTBrIgkkACAJQQhqIhEgAkEDdiACQQdxIgNBAEdqNgIAIBEgAkECdiACQQNxQQBHakEDbDYCBCAJIAkpAwg3AhAg -CSAJQRBqKAIEIg5BARA8IAkgDjYCICAJIAkoAgQ2AhwgCSAJKAIAIhE2AhggCUEkaiEGIAEhDCAJKAIQIQogCSgCFBpBqoLAAC0A -ACETQamCwAAtAAAhEgJAAkACQAJAAkACQAJAAkACQAJAAkAgAw4GAAUBAgMFBAtBCCEDDAMLQQohAwwCC0ELIQMMAQtBDCEDC0EA -IQEgAiADayIEQQAgAiAETxsiD0EgTw0BDAMLIAJFDQEgDCACQQFrIgFqLQAAIgJBPUYNASACQeuCwABqLQAAQf8BRw0BIAZBADoA -BCAGQQI2AgAgBkEIaiABNgIAIAZBBWogAjoAAAwECyAPQSBrIQsCQAJAAkACQANAIAVBYEYNASAFQSBqIgEgAksNAiAIQRpqIA5L -DQMCQAJAIAUgDGoiBy0AACIDQeuCwABqMQAAIhlC/wFRDQAgB0EBai0AACIDQeuCwABqMQAAIhdC/wFRBEAgBUEBaiEFDAELIAdB -AmotAAAiA0HrgsAAajEAACIYQv8BUQRAIAVBAmohBQwBCyAHQQNqLQAAIgNB64LAAGoxAAAiGkL/AVEEQCAFQQNqIQUMAQsgB0EE -ai0AACIDQeuCwABqMQAAIhRC/wFRBEAgBUEEaiEFDAELIAdBBWotAAAiA0HrgsAAajEAACIVQv8BUQRAIAVBBWohBQwBCyAHQQZq -LQAAIgNB64LAAGoxAAAiG0L/AVEEQCAFQQZqIQUMAQsgB0EHai0AACIDQeuCwABqMQAAIhZC/wFSDQEgBUEHaiEFCyAGQQI2AgAg -BiADrUIIhiAFrUIghoQ3AgQMCQsgCCARaiINIBdCNIYgGUI6hoQiFyAYQi6GhCIYIBpCKIaEIBRCIoaEIhQgFUIchoQiFSAbQhaG -hCAWQhCGhCIWQoD+A4NCKIYgFkKAgPwHg0IYhiAWQoCAgPgPg0IIhoSEIBVCCIhCgICA+A+DIBRCGIhCgID8B4OEIBhCKIhCgP4D -gyAXQjiIhISENwAAQQghAyAHQQhqLQAAIgRB64LAAGoxAAAiGUL/AVENBEEJIQMgB0EJai0AACIEQeuCwABqMQAAIhdC/wFRDQRB -CiEDIAdBCmotAAAiBEHrgsAAajEAACIYQv8BUQ0EQQshAyAHQQtqLQAAIgRB64LAAGoxAAAiGkL/AVENBEEMIQMgB0EMai0AACIE -QeuCwABqMQAAIhRC/wFRDQRBDSEDIAdBDWotAAAiBEHrgsAAajEAACIVQv8BUQ0EQQ4hAyAHQQ5qLQAAIgRB64LAAGoxAAAiG0L/ -AVENBEEPIQMgB0EPai0AACIEQeuCwABqMQAAIhZC/wFRDQQgDUEGaiAXQjSGIBlCOoaEIhcgGEIuhoQiGCAaQiiGhCAUQiKGhCIU -IBVCHIaEIhUgG0IWhoQgFkIQhoQiFkKA/gODQiiGIBZCgID8B4NCGIYgFkKAgID4D4NCCIaEhCAVQgiIQoCAgPgPgyAUQhiIQoCA -/AeDhCAYQiiIQoD+A4MgF0I4iISEhDcAAEEQIQMCQCAHQRBqLQAAIgRB64LAAGoxAAAiGUL/AVENAEERIQMgB0ERai0AACIEQeuC -wABqMQAAIhdC/wFRDQBBEiEDIAdBEmotAAAiBEHrgsAAajEAACIYQv8BUQ0AQRMhAyAHQRNqLQAAIgRB64LAAGoxAAAiGkL/AVEN -AEEUIQMgB0EUai0AACIEQeuCwABqMQAAIhRC/wFRDQBBFSEDIAdBFWotAAAiBEHrgsAAajEAACIVQv8BUQ0AQRYhAyAHQRZqLQAA -IgRB64LAAGoxAAAiG0L/AVENAEEXIQMgB0EXai0AACIEQeuCwABqMQAAIhZC/wFRDQAgDUEMaiAXQjSGIBlCOoaEIhcgGEIuhoQi -GCAaQiiGhCAUQiKGhCIUIBVCHIaEIhUgG0IWhoQgFkIQhoQiFkKA/gODQiiGIBZCgID8B4NCGIYgFkKAgID4D4NCCIaEhCAVQgiI -QoCAgPgPgyAUQhiIQoCA/AeDhCAYQiiIQoD+A4MgF0I4iISEhDcAAEEYIQMgB0EYai0AACIEQeuCwABqMQAAIhlC/wFRDQhBGSED -IAdBGWotAAAiBEHrgsAAajEAACIXQv8BUQ0IQRohAyAHQRpqLQAAIgRB64LAAGoxAAAiGEL/AVENCEEbIQMgB0Ebai0AACIEQeuC -wABqMQAAIhpC/wFRDQhBHCEDIAdBHGotAAAiBEHrgsAAajEAACIUQv8BUQ0IQR0hAyAHQR1qLQAAIgRB64LAAGoxAAAiFUL/AVEN -CEEeIQMgB0Eeai0AACIEQeuCwABqMQAAIhtC/wFRDQhBHyEDIAdBH2otAAAiBEHrgsAAajEAACIWQv8BUQ0IIA1BEmogF0I0hiAZ -QjqGhCIXIBhCLoaEIhggGkIohoQgFEIihoQiFCAVQhyGhCIVIBtCFoaEIBZCEIaEIhZCgP4Dg0IohiAWQoCA/AeDQhiGIBZCgICA -+A+DQgiGhIQgFUIIiEKAgID4D4MgFEIYiEKAgPwHg4QgGEIoiEKA/gODIBdCOIiEhIQ3AAAgCkEEayEKIAhBGGohCCALIAEiBUkN -BwwBCwsMBgtBYEEAQayRwAAQOQALIAEgAkGskcAAEDgACyAIQRpqIA5BvJHAABA4AAsMAgsgBkECNgIAIAZBAToABAwCCwJAAkAg -D0EISQ0AIAEgD0EIayIFTw0AAkACQAJAAkACQANAIAFBCGohBCABQXhGDQIgAiAESQ0DIAhBd0sNBCAIQQhqIA5LDQUgASAMaiIL -LQAAIgNB64LAAGoxAAAiGUL/AVENASALQQFqLQAAIgNB64LAAGoxAAAiF0L/AVEEQCABQQFyIQEMAgsgC0ECai0AACIDQeuCwABq -MQAAIhhC/wFRBEAgAUECciEBDAILIAtBA2otAAAiA0HrgsAAajEAACIaQv8BUQRAIAFBA3IhAQwCCyALQQRqLQAAIgNB64LAAGox -AAAiFEL/AVEEQCABQQRyIQEMAgsgC0EFai0AACIDQeuCwABqMQAAIhVC/wFRBEAgAUEFciEBDAILIAtBBmotAAAiA0HrgsAAajEA -ACIbQv8BUQRAIAFBBnIhAQwCCyALQQdqLQAAIgNB64LAAGoxAAAiFkL/AVIEQCAIIBFqIBdCNIYgGUI6hoQiFyAYQi6GhCIYIBpC -KIaEIBRCIoaEIhQgFUIchoQiFSAbQhaGhCAWQhCGhCIWQoD+A4NCKIYgFkKAgPwHg0IYhiAWQoCAgPgPg0IIhoSEIBVCCIhCgICA -+A+DIBRCGIhCgID8B4OEIBhCKIhCgP4DgyAXQjiIhISENwAAIApBAWshCiAIQQZqIQggBSAEIgFNDQgMAQsLIAFBB3IhAQsgBkEC -NgIAIAYgAa1CIIYgA61CCIaENwIEDAcLQXggBEHMkcAAEDkACyAEIAJBzJHAABA4AAsgCCAIQQhqQdyRwAAQOQALIAhBCGogDkHc -kcAAEDgACyABIQQLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCkECSQRAIAghCgwBCyAKQQFrIQUgAiAE -ayEDA0AgAiAESQ0DIAhBBmohCiAIQXlLDQQgCiAOSw0FIAIgBEYNBiAEIAxqIgstAAAiAUHrgsAAajEAACIZQv8BUQ0TIANBAkkN -ByALQQFqLQAAIgFB64LAAGoxAAAiGkL/AVENAiADQQJNDQggC0ECai0AACIBQeuCwABqMQAAIhtC/wFRDQkgA0EDTQ0KIAtBA2ot -AAAiAUHrgsAAajEAACIWQv8BUQ0LIANBBE0NDCALQQRqLQAAIgFB64LAAGoxAAAiF0L/AVENDSADQQVNDQ4gC0EFai0AACIBQeuC -wABqMQAAIhhC/wFRDQ8gA0EGTQ0QIAtBBmotAAAiAUHrgsAAajEAACIUQv8BUQ0RIANBB00NEiALQQdqLQAAIgFB64LAAGoxAAAi -FUL/AVEEQCAEQQdqIQQMFAsgCCARaiIBIBpCNIYgGUI6hoQgG0IuhoQgFkIohoQgF0IihoQgGEIchoQgFEIWhoQiFEIIiEKAgID4 -D4MgFEIYiEKAgPwHg4QgFEIoiEKA/gODIBRCOIiEhD4AACABQQRqIBQgFUIQhoQiFUKAgPwHg0IYhiAVQoCAgPgPg0IIhoRCIIg9 -AAAgA0EIayEDIARBCGohBCAKIQggBUEBayIFDQALCyASQQBHIRJBACENQQAhCEEAIQNCACEUQQAhB0EAIQEjAEEgayIQJAACQAJA -AkACQAJAIAIgBE8EQCACIARGBEBBACECDAMLIAIgDGohDyAEIAxqIQwDQEEAIQUDQCAFIAdqIQ0gBSAMaiILLQAAIgJBPUcEQAJA -IAVFBEAgAkHrgsAAajEAACIVQv8BUQ0BIA1BAWohByAVIAhBAWoiCEE6bEE+ca2GIBSEIRRBACENIAIhASALQQFqIgwgD0cNBAwH -CyAGQYD6ADsBBCAGQQI2AgAgBkEIaiADIARqNgIADAcLIAZBADoABCAGQQI2AgAgBkEFaiACOgAAIAZBCGogBCAHaiAFajYCAAwG -CyADIA0gBRshAyANQQJxBEAgDCAFQQFqIgVqIA9GDQQMAQsLCyAGQYD6ADsBBCAGQQI2AgAgBkEIaiADIARqNgIADAMLIAQgAkHo -jMAAEDYACyAPIAxrIQ0gASECCwJAAkACQAJAIBNBAWsOAgEAAwsgDQ0BDAILIAggDWpBA3FFDQEgBkECNgIAIAZBAzoABAwCCyAG -QQI2AgAgBkEDOgAEDAELQQAhBQJAAn8CQAJAAkACQAJAAkACQCAIIgwOCQgAAQIDAAQFBgALIBBBEGpCADcCACAQQQE2AgggEEGI -jsAANgIEIBAgEEEcajYCDCAQQQRqQZCOwAAQSAALQQgMBQtBEAwEC0EYDAMLQSAMAgtBKAwBC0EwCyEMQQEhBQsgEkUgFCAMrYZC -AFJxRQRAIAUEQCAKIA4gCiAOSxshAUEAIQJBOCEFA0AgASAKRg0EIAogEWogFCAFQThxrYg8AAAgBUEIayEFIApBAWohCiACQQhq -IgIgDEkNAAsLIAYgCjYCCCAGIAMgBGo2AgQgBiANQQBHNgIADAELIAZBAjoABCAGQQI2AgAgBkEFaiACOgAAIAZBCGogBCAIakEB -azYCAAsgEEEgaiQADAELIAEgDkH4jMAAEDcACwwTCyAEQQFqIQQMEAsgBCACQeyRwAAQNgALIAggCkH8kcAAEDkACyAKIA5B/JHA -ABA4AAtBAEEAQYySwAAQNwALQQFBAUGcksAAEDcAC0ECQQJBrJLAABA3AAsgBEECaiEEDAkLQQNBA0G8ksAAEDcACyAEQQNqIQQM -BwtBBEEEQcySwAAQNwALIARBBGohBAwFC0EFQQVB3JLAABA3AAsgBEEFaiEEDAMLQQZBBkHsksAAEDcACyAEQQZqIQQMAQtBB0EH -QfySwAAQNwALIAZBAjYCACAGIAGtQgiGIAStQiCGhDcCBAwBCyAGQQI2AgAgBiAErUIIhiADIAVqrUIghoQ3AgQLAkAgCSgCJEEC -RwRAIAlBLGooAgAiASAOTQRAIAkgATYCIAsgACAJKQIYNwIAIABBCGogCUEgaigCADYCAAwBCyAJKQIoIRUgAEEANgIAIAAgFTcC -BCAJQRhqEFELIAlBMGokAAvKAQACQAJAIAEEQCACQQBIDQECQAJAAn8gAygCBARAIANBCGooAgAiAUUEQCACRQRAQQEhAQwEC0Hd -osAALQAAGiACQQEQYAwCCyADKAIAIAFBASACEFkMAQsgAkUEQEEBIQEMAgtB3aLAAC0AABogAkEBEGALIgFFDQELIAAgATYCBCAA -QQhqIAI2AgAgAEEANgIADwsgAEEBNgIEDAILIABBADYCBAwBCyAAQQA2AgQgAEEBNgIADwsgAEEIaiACNgIAIABBATYCAAvFAQEE -fyMAQUBqIgMkACADQQBBwAAQgQEhAyAAIAAoAlAiBiACQQN0aiIENgJQIABB1ABqIgUgBSgCACACQR12aiAEIAZJajYCACACBEAg -ASACaiEEIABBQGshBSAGQQN2QT9xIQIDQCAAIAJqIAEtAAA6AAAgAkEBaiICQcAARgRAQQAhAgNAIAIgA2ogACACaigCADYCACAC -QQRqIgJBwABHDQALIAUgAxAEQQAhAgsgAUEBaiIBIARHDQALCyADQUBrJAALhAIBAn8jAEEgayIGJABBlKPAAEGUo8AAKAIAIgdB -AWo2AgACQAJAIAdBAEgNAEHgpsAALQAADQBB4KbAAEEBOgAAQdymwABB3KbAACgCAEEBajYCACAGIAU6AB0gBiAEOgAcIAYgAzYC -GCAGIAI2AhQgBkGYmcAANgIQIAZB9JbAADYCDEGEo8AAKAIAIgJBAEgNAEGEo8AAIAJBAWo2AgBBhKPAAEGMo8AAKAIABH8gBiAA -IAEoAhARAgAgBiAGKQMANwIMQYyjwAAoAgAgBkEMakGQo8AAKAIAKAIUEQIAQYSjwAAoAgBBAWsFIAILNgIAQeCmwABBADoAACAE -DQELAAsAC70BAQR/QXAhBCAAIAFBAnRqIQBB+AAgASABQfgATxtB+ABrIQYCQAJAA0AgASAEaiIDQfgATw0CIAUgBkYNASAAIABB -QGooAgAgACgCACACeEGDhowYcXMiA0ECdEH8+fNncSADQQR0QfDhw4d/cXMgA0EGdEHAgYOGfHFzIANzNgIAIARBAWohBCAAQQRq -IQAgBUEBayIFQXhHDQALDwsgASAFa0H4AEG8lsAAEDcACyADQfgAQayWwAAQNwAL2QEBAn8jAEEQayICJAAgAiAAQQRqNgIEIAEo -AhRBraLAAEEJIAFBGGooAgAoAgwRAQAhAyACQQA6AA0gAiADOgAMIAIgATYCCCACQQhqQbaiwABBCyAAQZiiwAAQGEHBosAAQQkg -AkEEakHMosAAEBghAyACLQAMIQACfyAAQQBHIAItAA1FDQAaQQEgAA0AGiADKAIAIgAtABxBBHFFBEAgACgCFEHjnMAAQQIgACgC -GCgCDBEBAAwBCyAAKAIUQeKcwABBASAAKAIYKAIMEQEACyACQRBqJAALyAEBAn8jAEEgayIDJAACQAJAIAEgASACaiIBSw0AQQgg -ACgCBCICQQF0IgQgASABIARJGyIBIAFBCE0bIgRBf3NBH3YhAQJAIAJFBEAgA0EANgIYDAELIAMgAjYCHCADQQE2AhggAyAAKAIA -NgIUCyADQQhqIAEgBCADQRRqEC4gAygCDCEBIAMoAghFBEAgACAENgIEIAAgATYCAAwCCyABQYGAgIB4Rg0BIAFFDQAgASADQRBq -KAIAEHoACxBHAAsgA0EgaiQAC8gBAQJ/IwBBIGsiAyQAAkACQCABIAEgAmoiAUsNAEEIIAAoAgQiAkEBdCIEIAEgASAESRsiASAB -QQhNGyIEQX9zQR92IQECQCACRQRAIANBADYCGAwBCyADIAI2AhwgA0EBNgIYIAMgACgCADYCFAsgA0EIaiABIAQgA0EUahAnIAMo -AgwhASADKAIIRQRAIAAgBDYCBCAAIAE2AgAMAgsgAUGBgICAeEYNASABRQ0AIAEgA0EQaigCABB6AAsQRwALIANBIGokAAusAQEB -fwJAAkAgAQRAIAJBAEgNAQJ/IAMoAgQEQAJAIANBCGooAgAiBEUEQAwBCyADKAIAIAQgASACEFkMAgsLIAEgAkUNABpB3aLAAC0A -ABogAiABEGALIgMEQCAAIAM2AgQgAEEIaiACNgIAIABBADYCAA8LIAAgATYCBCAAQQhqIAI2AgAMAgsgAEEANgIEIABBCGogAjYC -AAwBCyAAQQA2AgQLIABBATYCAAusAQEDfyMAQdAAayICJAADQAJAIAIgACADajYCDCACQQ02AiwgAkEBNgIkIAJBATYCFCACQbSL -wAA2AhAgAkEBNgIcIAIgAkEMajYCKCACQQM6AEwgAkEINgJIIAJCIDcCQCACQoCAgIAgNwI4IAJBAjYCMCACIAJBMGo2AiAgAiAC -QShqNgIYIAEgAkEQahBcIgQNACADQQFqIgNBEEcNAQsLIAJB0ABqJAAgBAuPAQEDfyMAQYABayIDJAAgAC0AACECQQAhAANAIAAg -A2pB/wBqQTBB1wAgAkEPcSIEQQpJGyAEajoAACAAQQFrIQAgAiIEQQR2IQIgBEEQTw0ACyAAQYABaiICQYABSwRAIAJBgAFBmJ3A -ABA2AAsgAUGoncAAQQIgACADakGAAWpBACAAaxAJIANBgAFqJAALkgEBAX8jAEFAaiICJAAgAkIANwM4IAJBOGogACgCABACIAJB -GGpCATcCACACIAIoAjwiADYCNCACIAA2AjAgAiACKAI4NgIsIAJBDjYCKCACQQI2AhAgAkHIi8AANgIMIAIgAkEsajYCJCACIAJB -JGo2AhQgASACQQxqEFwgAigCMARAIAIoAiwQBQsgAkFAayQAC4sBAQF/IwBBEGsiAiQAAn8CQAJAAkACQCAALQAAQQFrDgMBAgMA -CyACIABBAWo2AgggAUGJkMAAQQsgAEEEaiACQQhqECUMAwsgAUH8j8AAQQ0QVQwCCyACIABBAWo2AgwgAUGUkMAAQREgAEEEaiAC -QQxqECUMAQsgAUGlkMAAQQ4QVQsgAkEQaiQAC4wBAgN/AX4jAEEgayICJAAgAUEEaiEDIAEoAgRFBEAgASgCACEBIAJBHGoiBEEA -NgIAIAJCATcCFCACQRRqQaCXwAAgARANGiACQRBqIAQoAgAiATYCACACIAIpAhQiBTcDCCADQQhqIAE2AgAgAyAFNwIACyAAQdCY -wAA2AgQgACADNgIAIAJBIGokAAt9AQF/IwBBQGoiBSQAIAUgATYCDCAFIAA2AgggBSADNgIUIAUgAjYCECAFQSRqQgI3AgAgBUE8 -akEuNgIAIAVBAjYCHCAFQaycwAA2AhggBUEvNgI0IAUgBUEwajYCICAFIAVBEGo2AjggBSAFQQhqNgIwIAVBGGogBBBIAAt4AQJ/ -IAFBD2ohAiAAIAFBAnRqIQBBICEBAkACQANAIAJBCGtB+ABPDQIgAkH4AE8NASAAIAFqIgNBHGogA0EEaygCADYCACACQQFrIQIg -AUEEayIBDQALDwsgAkH4AEHclsAAEDcACyACQQhrQfgAQcyWwAAQNwALbAEBfyMAQTBrIgMkACADIAA2AgAgAyABNgIEIANBFGpC -AjcCACADQSxqQRI2AgAgA0ECNgIMIANBqJ/AADYCCCADQRI2AiQgAyADQSBqNgIQIAMgA0EEajYCKCADIAM2AiAgA0EIaiACEEgA -C2wBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRRqQgI3AgAgA0EsakESNgIAIANBAjYCDCADQZicwAA2AgggA0ESNgIkIAMg -A0EgajYCECADIAM2AiggAyADQQRqNgIgIANBCGogAhBIAAtsAQF/IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0EUakICNwIAIANB -LGpBEjYCACADQQI2AgwgA0HIn8AANgIIIANBEjYCJCADIANBIGo2AhAgAyADQQRqNgIoIAMgAzYCICADQQhqIAIQSAALbAEBfyMA -QTBrIgMkACADIAA2AgAgAyABNgIEIANBFGpCAjcCACADQSxqQRI2AgAgA0ECNgIMIANB/J/AADYCCCADQRI2AiQgAyADQSBqNgIQ -IAMgA0EEajYCKCADIAM2AiAgA0EIaiACEEgAC/sDAgd/AX4jAEEQayIEJAAgACgCCCEGIAAoAgAhACABKAIUQdCbwABBASABQRhq -KAIAKAIMEQEAIQMgBEEEaiICQQA6AAUgAiADOgAEIAIgATYCACAGBEADQCAEIAA2AgwgBEEMaiEIIwBBQGoiASQAQQEhAwJAIARB -BGoiBS0ABA0AIAUtAAUhAwJAIAUoAgAiAigCHCIHQQRxRQRAIANFDQFBASEDIAIoAhRB25zAAEECIAJBGGooAgAoAgwRAQBFDQEM -AgsgA0UEQEEBIQMgAigCFEHpnMAAQQEgAkEYaigCACgCDBEBAA0CIAIoAhwhBwtBASEDIAFBAToAGyABQTRqQbycwAA2AgAgASAC -KQIUNwIMIAEgAUEbajYCFCABIAIpAgg3AiQgAikCACEJIAEgBzYCOCABIAIoAhA2AiwgASACLQAgOgA8IAEgCTcCHCABIAFBDGo2 -AjAgCCABQRxqQbSZwAAoAgARAAANASABKAIwQeCcwABBAiABKAI0KAIMEQEAIQMMAQsgCCACQbSZwAAoAgARAAAhAwsgBUEBOgAF -IAUgAzoABCABQUBrJAAgAEEBaiEAIAZBAWsiBg0ACwsgBEEEaiIALQAEBH9BAQUgACgCACIAKAIUQfycwABBASAAQRhqKAIAKAIM -EQEACyAEQRBqJAALZwAjAEEwayIAJABB3KLAAC0AAARAIABBGGpCATcCACAAQQI2AhAgAEHcl8AANgIMIABBEjYCKCAAIAE2Aiwg -ACAAQSRqNgIUIAAgAEEsajYCJCAAQQxqQYSYwAAQSAALIABBMGokAAt3AAJAAkACQCABRQRAQQEhAgwBCyABQQBIDQECfyACRQRA -Qd2iwAAtAAAaIAFBARBgDAELAkAgARADIgJFDQAgAhCHARBqDQAgAkEAIAEQgQEaCyACCyICRQ0CCyAAIAE2AgQgACACNgIADwsQ -RwALQQEgARB6AAtbAQF/IwBBMGsiAyQAIAMgATYCDCADIAA2AgggA0EcakIBNwIAIANBATYCFCADQcibwAA2AhAgA0EvNgIsIAMg -A0EoajYCGCADIANBCGo2AiggA0EQaiACEEgAC7sCAQd/IwBBEGsiBSQAAkAgACgCCCIEIAAoAgRPDQAgBUEIaiEGIwBBIGsiASQA -AkAgBCAAKAIETQRAIAFBCGohAgJAIAAoAgQiA0UEQCACQQA2AgQMAQsgAiADNgIIIAJBATYCBCACIAAoAgA2AgALAkACQCABKAIM -IgJFDQAgAUEQaigCACEDIAEoAgghByAERQRAIAMEQCAHEAULIABCATcCAAwBCyAHIAMgAiAEEFkiA0UNASAAIAQ2AgQgACADNgIA -C0GBgICAeCECCyAGIAQ2AgQgBiACNgIAIAFBIGokAAwBCyABQRRqQgA3AgAgAUEBNgIMIAFBxIHAADYCCCABQZCBwAA2AhAgAUEI -akGYgsAAEEgACyAFKAIIIgBBgYCAgHhGDQAgACAFKAIMEHoACyAFQRBqJAALTwECfyAAKAIEIQIgACgCACEDAkAgACgCCCIALQAA -RQ0AIANB1JzAAEEEIAIoAgwRAQBFDQBBAQ8LIAAgAUEKRjoAACADIAEgAigCEBEAAAtCAQF/IAIgACgCBCAAKAIIIgNrSwRAIAAg -AyACECwgACgCCCEDCyAAKAIAIANqIAEgAhCCARogACACIANqNgIIQQALTQECf0HdosAALQAAGiABKAIEIQIgASgCACEDQQhBBBBg -IgFFBEBBBEEIEHoACyABIAI2AgQgASADNgIAIABB4JjAADYCBCAAIAE2AgALQgEBfyACIAAoAgQgACgCCCIDa0sEQCAAIAMgAhAt -IAAoAgghAwsgACgCACADaiABIAIQggEaIAAgAiADajYCCEEAC0cBAX8jAEEgayIDJAAgA0EMakIANwIAIANBATYCBCADQcSbwAA2 -AgggAyABNgIcIAMgADYCGCADIANBGGo2AgAgAyACEEgAC+cBAQN/IwBBEGsiAyQAIAMgAEEMajYCDCMAQRBrIgIkACABKAIUQaSb -wABBDSABQRhqKAIAKAIMEQEAIQQgAkEAOgANIAIgBDoADCACIAE2AgggAkEIakGHm8AAQQUgAEG0m8AAEBhBjJvAAEEFIANBDGpB -lJvAABAYIQACfyACLQAMIgFBAEcgAi0ADUUNABpBASABDQAaIAAoAgAiAC0AHEEEcUUEQCAAKAIUQeOcwABBAiAAKAIYKAIMEQEA -DAELIAAoAhRB4pzAAEEBIAAoAhgoAgwRAQALIAJBEGokACADQRBqJAALNwACQCABaUEBR0GAgICAeCABayAASXINACAABEBB3aLA -AC0AABogACABEGAiAUUNAQsgAQ8LAAs5AAJAAn8gAkGAgMQARwRAQQEgACACIAEoAhARAAANARoLIAMNAUEACw8LIAAgAyAEIAEo -AgwRAQALPwEBfyMAQSBrIgAkACAAQRRqQgA3AgAgAEEBNgIMIABBgJrAADYCCCAAQbiZwAA2AhAgAEEIakGImsAAEEgAC8kCAQJ/ -IwBBIGsiAiQAIAJBATsBHCACIAE2AhggAiAANgIUIAJB1JvAADYCECACQcSbwAA2AgwjAEEQayIBJAACQCACQQxqIgAoAgwiAgRA -IAAoAggiA0UNASABIAI2AgwgASAANgIIIAEgAzYCBCMAQRBrIgAkACABQQRqIgEoAgAiAkEMaigCACEDAkACfwJAAkAgAigCBA4C -AAEDCyADDQJBACECQfSWwAAMAQsgAw0BIAIoAgAiAygCBCECIAMoAgALIQMgACACNgIEIAAgAzYCACAAQfCYwAAgASgCBCIAKAII -IAEoAgggAC0AECAALQARECkACyAAQQA2AgQgACACNgIAIABBhJnAACABKAIEIgAoAgggASgCCCAALQAQIAAtABEQKQALQfSWwABB -K0GwmMAAEEMAC0H0lsAAQStBwJjAABBDAAstAAJAIANpQQFHQYCAgIB4IANrIAFJckUEQCAAIAEgAyACEFkiAA0BCwALIAALsgEB -A38gACgCACEAIAEQZ0UEQCABEGhFBEAgADEAACABEBoPCyMAQYABayIDJAAgAC0AACEAA0AgAiADakH/AGpBMEE3IABBD3EiBEEK -SRsgBGo6AAAgAkEBayECIAAiBEEEdiEAIARBEE8NAAsgAkGAAWoiAEGAAUsEQCAAQYABQZidwAAQNgALIAFBqJ3AAEECIAIgA2pB -gAFqQQAgAmsQCSADQYABaiQADwsgACABEDALpwIBA38gARBnRQRAIAEQaEUEQCAAIAEQbg8LIwBBgAFrIgMkACAAKAIAIQADQCAC -IANqQf8AakEwQTcgAEEPcSIEQQpJGyAEajoAACACQQFrIQIgAEEQSSAAQQR2IQBFDQALIAJBgAFqIgBBgAFLBEAgAEGAAUGYncAA -EDYACyABQaidwABBAiACIANqQYABakEAIAJrEAkgA0GAAWokAA8LIwBBgAFrIgMkACAAKAIAIQADQCACIANqQf8AakEwQdcAIABB -D3EiBEEKSRsgBGo6AAAgAkEBayECIABBEEkgAEEEdiEARQ0ACyACQYABaiIAQYABSwRAIABBgAFBmJ3AABA2AAsgAUGoncAAQQIg -AiADakGAAWpBACACaxAJIANBgAFqJAALJwAgACAAKAIEQQFxIAFyQQJyNgIEIAAgAWoiACAAKAIEQQFyNgIECycAIABCADcAACAA -QRhqQgA3AAAgAEEQakIANwAAIABBCGpCADcAAAsgAQF/AkAgACgCBCIBRQ0AIABBCGooAgBFDQAgARAFCwsjACACIAIoAgRBfnE2 -AgQgACABQQFyNgIEIAAgAWogATYCAAseACAAIAFBA3I2AgQgACABaiIAIAAoAgRBAXI2AgQLEQAgACgCBARAIAAoAgAQBQsLGQEB -fyAAKAIQIgEEfyABBSAAQRRqKAIACwsSAEEZIABBAXZrQQAgAEEfRxsLFgAgACABQQFyNgIEIAAgAWogATYCAAsZACAAKAIUIAEg -AiAAQRhqKAIAKAIMEQEACxwAIAEoAhRBqKLAAEEFIAFBGGooAgAoAgwRAQALFAAgACgCACIAQYQBTwRAIAAQAAsLEAAgACABakEB -a0EAIAFrcQuLBgEGfwJ/IAAhBQJAAkACQAJAAkAgAkEJTwRAIAIgAxAXIgcNAUEADAYLQQhBCBBYIQBBFEEIEFghAUEQQQgQWCEC -QQBBEEEIEFhBAnRrIgRBgIB8IAIgACABamprQXdxQQNrIgAgACAESxsgA00NA0EQIANBBGpBEEEIEFhBBWsgA0sbQQgQWCECIAUQ -hwEiACAAEHQiBBCEASEBAkACQAJAAkACQAJAIAAQakUEQCACIARNDQQgAUHEpsAAKAIARg0GIAFBwKbAACgCAEYNAyABEGUNCSAB -EHQiBiAEaiIIIAJJDQkgCCACayEEIAZBgAJJDQEgARAcDAILIAAQdCEBIAJBgAJJDQggASACa0GBgAhJIAJBBGogAU1xDQQgASAA -KAIAIgFqQRBqIQQgAkEfakGAgAQQWCECDAgLIAFBDGooAgAiCSABQQhqKAIAIgFHBEAgASAJNgIMIAkgATYCCAwBC0GwpsAAQbCm -wAAoAgBBfiAGQQN2d3E2AgALQRBBCBBYIARNBEAgACACEIQBIQEgACACEEwgASAEEEwgASAEEBAgAA0JDAcLIAAgCBBMIAANCAwG -C0G4psAAKAIAIARqIgQgAkkNBQJAQRBBCBBYIAQgAmsiAUsEQCAAIAQQTEEAIQFBACEEDAELIAAgAhCEASIEIAEQhAEhBiAAIAIQ -TCAEIAEQVCAGIAYoAgRBfnE2AgQLQcCmwAAgBDYCAEG4psAAIAE2AgAgAA0HDAULQRBBCBBYIAQgAmsiAUsNACAAIAIQhAEhBCAA -IAIQTCAEIAEQTCAEIAEQEAsgAA0FDAMLQbymwAAoAgAgBGoiBCACSw0BDAILIAcgBSABIAMgASADSRsQggEaIAUQBQwCCyAAIAIQ -hAEhASAAIAIQTCABIAQgAmsiAkEBcjYCBEG8psAAIAI2AgBBxKbAACABNgIAIAANAgsgAxADIgFFDQAgASAFIAAQdEF4QXwgABBq -G2oiACADIAAgA0kbEIIBIAUQBQwCCyAHDAELIAAQahogABCGAQsLCwAgAQRAIAAQBQsLDwAgAEEBdCIAQQAgAGtyCxMAIAAoAhQg -AEEYaigCACABEA0LFAAgACgCACABIAAoAgQoAgwRAAALEAAgACgCACAAKAIEIAEQfQsQACAAKAIAIAAoAgggARB9CxkAAn8gAUEJ -TwRAIAEgABAXDAELIAAQAwsLIQAgAEKYo6rL4I761NYANwMIIABCq6qJm/b22twaNwMACyAAIABC5N7HhZDQhd59NwMIIABCwff5 -6MyTstFBNwMACyIAIABCqrDurabN4qqqfzcDCCAAQrusqeeAuviazQA3AwALEwAgAEHgmMAANgIEIAAgATYCAAsNACAALQAEQQJx -QQF2CxAAIAEgACgCACAAKAIEEAYLDQAgAC0AHEEQcUEEdgsNACAALQAcQSBxQQV2CwoAQQAgAGsgAHELCwAgAC0ABEEDcUULDAAg -ACABQQNyNgIECw0AIAAoAgAgACgCBGoLDgAgACgCABoDQAwACwALCwAgADUCACABEBoLCwAgACMAaiQAIwALBgAgABBRCwsAIAAo -AgAgARAwCw0AIAFB7JbAAEEIEFULDQAgAEGgl8AAIAEQDQsKACAAKAIEQXhxCwoAIAAoAgRBAXELCgAgACgCDEEBcQsKACAAKAIM -QQF2CwsAIAAoAgAgARArCw0AIABBuJnAACABEA0LGQAgACABQYCjwAAoAgAiAEETIAAbEQIAAAuIBAEFfyMAQRBrIgMkAAJAAn8C -QCABQYABTwRAIANBADYCDCABQYAQSQ0BIAFBgIAESQRAIAMgAUE/cUGAAXI6AA4gAyABQQx2QeABcjoADCADIAFBBnZBP3FBgAFy -OgANQQMMAwsgAyABQT9xQYABcjoADyADIAFBBnZBP3FBgAFyOgAOIAMgAUEMdkE/cUGAAXI6AA0gAyABQRJ2QQdxQfABcjoADEEE -DAILIAAoAggiAiAAKAIERgRAIwBBIGsiBCQAAkACQCACQQFqIgJFDQBBCCAAKAIEIgZBAXQiBSACIAIgBUkbIgIgAkEITRsiBUF/ -c0EfdiECAkAgBkUEQCAEQQA2AhgMAQsgBCAGNgIcIARBATYCGCAEIAAoAgA2AhQLIARBCGogAiAFIARBFGoQJyAEKAIMIQIgBCgC -CEUEQCAAIAU2AgQgACACNgIADAILIAJBgYCAgHhGDQEgAkUNACACIARBEGooAgAQegALEEcACyAEQSBqJAAgACgCCCECCyAAIAJB -AWo2AgggACgCACACaiABOgAADAILIAMgAUE/cUGAAXI6AA0gAyABQQZ2QcABcjoADEECCyEBIAEgACgCBCAAKAIIIgJrSwRAIAAg -AiABEC0gACgCCCECCyAAKAIAIAJqIANBDGogARCCARogACABIAJqNgIICyADQRBqJABBAAsNACAAQbycwAAgARANCwoAIAIgACAB -EAYLDAAgACABKQIANwMACwwAIAAgASkCCDcDAAu3AgEDfwJ/IAAoAgAhACMAQYABayIEJAACQAJAAn8CQCABKAIcIgNBEHFFBEAg -A0EgcQ0BIAAxAAAgARAaDAILIAAtAAAhAANAIAIgBGpB/wBqQTBB1wAgAEEPcSIDQQpJGyADajoAACACQQFrIQIgACIDQQR2IQAg -A0EQTw0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIgBGpBgAFqQQAgAmsQCQwBCyAALQAAIQADQCACIARqQf8AakEwQTcgAEEP -cSIDQQpJGyADajoAACACQQFrIQIgACIDQQR2IQAgA0EQTw0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIgBGpBgAFqQQAgAmsQ -CQsgBEGAAWokAAwCCyAAQYABQZidwAAQNgALIABBgAFBmJ3AABA2AAsLrwEBA38gASEFAkAgAkEQSQRAIAAhAQwBCyAAQQAgAGtB -A3EiA2ohBCADBEAgACEBA0AgASAFOgAAIAFBAWoiASAESQ0ACwsgBCACIANrIgJBfHEiA2ohASADQQBKBEAgBUH/AXFBgYKECGwh -AwNAIAQgAzYCACAEQQRqIgQgAUkNAAsLIAJBA3EhAgsgAgRAIAEgAmohAgNAIAEgBToAACABQQFqIgEgAkkNAAsLIAALuAIBB38C -QCACIgRBEEkEQCAAIQIMAQsgAEEAIABrQQNxIgNqIQUgAwRAIAAhAiABIQYDQCACIAYtAAA6AAAgBkEBaiEGIAJBAWoiAiAFSQ0A -CwsgBSAEIANrIghBfHEiB2ohAgJAIAEgA2oiA0EDcQRAIAdBAEwNASADQQN0IgRBGHEhCSADQXxxIgZBBGohAUEAIARrQRhxIQQg -BigCACEGA0AgBSAGIAl2IAEoAgAiBiAEdHI2AgAgAUEEaiEBIAVBBGoiBSACSQ0ACwwBCyAHQQBMDQAgAyEBA0AgBSABKAIANgIA -IAFBBGohASAFQQRqIgUgAkkNAAsLIAhBA3EhBCADIAdqIQELIAQEQCACIARqIQMDQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiAD -SQ0ACwsgAAsLAEGEicAAQSwQAQsHACAAIAFqCwcAIAAgAWsLBwAgAEEIagsHACAAQQhrCwMAAQsL7SEEAEGAgMAAC/MKL1VzZXJz -L21hZ3Vhbmd6aGkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9ibG9jay1wYWRk -aW5nLTAuMy4zL3NyYy9saWIucnNhc3NlcnRpb24gZmFpbGVkOiBuIDw9IGJzAAAAABAAZQAAAFEAAAARAAAAAQAAABQAAAAEAAAA -AgAAAFRyaWVkIHRvIHNocmluayB0byBhIGxhcmdlciBjYXBhY2l0eaAAEAAkAAAAL3J1c3RjLzc5ZTk3MTZjOTgwNTcwYmZkMWY2 -NjZlM2IxNmFjNTgzZjAxNjg5NjIvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc8wAEABMAAAArgEAAAkAAAABAAFBQkNERUZH -SElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsv//////////////////////// -/////////////////////////////////z7///8/NDU2Nzg5Ojs8Pf////////8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGf// -/////xobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIz//////////////////////////////////////////////////////////// -//////////////////////////////////////////////////////////////////////////////////////////////////// -/////////////////y9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJi -YmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5jb2RlLnJzAAAAawIQAGIAAABQAAAAMwAAAHVzaXplIG92ZXJmbG93IHdoZW4g -Y2FsY3VsYXRpbmcgYjY0IGxlbmd0aAAAawIQAGIAAABXAAAACgAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9z -cmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5naW5lL21vZC5yc2ludGVnZXIg -b3ZlcmZsb3cgd2hlbiBjYWxjdWxhdGluZyBidWZmZXIgc2l6ZQAcAxAAZgAAAHcAAAAOAAAASW52YWxpZCBVVEY4HAMQAGYAAAB8 -AAAAIAAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUABgAAAAgAAAAEAAAABwAAAAYAAAAIAAAA -BAAAAAgAAAAJAAAABAAAAAQAAAAKAAAACwAAAAAAAAABAAAADAAAAHNyYy9saWIucnMAAEgEEAAKAAAAeQAAACUAAAADBQcADwoN -AQsOBAYJDAgCSAQQAAoAAAB7AAAAJwAAAEFMc1BEcnNPQjdDN0RBZTN1cjhNQ3dzQnNBRUh1Z0M2QXdBQUI3OEtBQTg9SAQQAAoA -AAAVAAAALwAAANwDEAAAAAAA3AMQAAAAAADcAxAAAAAAANwDEAAAAAAAdnd3THU3ZTZ1ZzRIQVFNQXVnOENzQThIRDdvSER3dXhB -ZzRIQVFHNkRMQT1IBBAACgAAADcAAAAKAAAARXJyb3IgS2V5AAAASAQQAAoAAABaAAAANgAAAEVycm9yIGRlY29kaW5nIGNpcGhl -ciB0ZXh0IDFFcnJvciBkZWNyeXB0aW5nIGNpcGhlciB0ZXh0IDKAAEG0i8AAC9gVsgUQAAAAAABKc1ZhbHVlKCkAAAC8BRAACAAA -AMQFEAABAAAADwAAAAQAAAAEAAAAEAAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVz -LmlvLTZmMTdkMjJiYmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5naW5lL2dlbmVyYWxfcHVycG9zZS9kZWNvZGVfc3VmZml4 -LnJz6AUQAIAAAAAdAAAAGQAAAOgFEACAAAAAmgAAAAkAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2Rl -OiBJbXBvc3NpYmxlOiBtdXN0IG9ubHkgaGF2ZSAwIHRvIDggaW5wdXQgYnl0ZXMgaW4gbGFzdCBjaHVuaywgd2l0aCBubyBpbnZh -bGlkIGxlbmd0aHMAAIgGEAB+AAAA6AUQAIAAAACFAAAADgAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNv -ZGU6IEltcG9zc2libGUgcmVtYWluZGVyAAAgBxAAPgAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5k -ZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5jb2RlLnJzAABoBxAAYgAAAG4AAAAWAAAA -aAcQAGIAAACCAAAACQAAAA8AAAAEAAAABAAAABEAAABJbnZhbGlkTGVuZ3RoSW52YWxpZEJ5dGVJbnZhbGlkTGFzdFN5bWJvbElu -dmFsaWRQYWRkaW5nL1VzZXJzL21hZ3Vhbmd6aGkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJi -YTE1MDAxZi9iYXNlNjQtMC4yMS4yL3NyYy9lbmdpbmUvZ2VuZXJhbF9wdXJwb3NlL2RlY29kZS5yczMIEAB5AAAAcgAAACkAAAAz -CBAAeQAAAHMAAAAvAAAAMwgQAHkAAACZAAAAGwAAADMIEAB5AAAAnQAAABkAAAAzCBAAeQAAALAAAAATAAAAMwgQAHkAAACzAAAA -GAAAADMIEAB5AAAA2gAAAB8AAAAzCBAAeQAAAOAAAAAfAAAAMwgQAHkAAADpAAAAHwAAADMIEAB5AAAA8gAAAB8AAAAzCBAAeQAA -APsAAAAfAAAAMwgQAHkAAAAEAQAAHwAAADMIEAB5AAAADQEAAB8AAAAzCBAAeQAAABYBAAAfAAAAL1VzZXJzL21hZ3Vhbmd6aGkv -LmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9iYXNlNjQtMC4yMS4yL3NyYy9lbmdp -bmUvZ2VuZXJhbF9wdXJwb3NlL21vZC5ycwAAjAkQAHYAAACUAAAADQAAAIwJEAB2AAAAlgAAAEAAAACMCRAAdgAAAJUAAAANAAAA -jAkQAHYAAACYAAAADQAAAIwJEAB2AAAAnAAAAA0AAACMCRAAdgAAAJ0AAAANAAAAjAkQAHYAAACFAAAAJQAAAIwJEAB2AAAAhgAA -ACsAAACMCRAAdgAAAD4AAAAbAAAAjAkQAHYAAABAAAAAIAAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMv -aW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYWVzLTAuOC4zL3NyYy9zb2Z0L2ZpeHNsaWNlMzIucnMApAoQAGcAAADd -AQAAKQAAAKQKEABnAAAA8gEAAC0AAACkChAAZwAAAIkEAAASAAAApAoQAGcAAACJBAAAPQAAAKQKEABnAAAAFAUAACIAAACkChAA -ZwAAABQFAAAJAAAAUGFkRXJyb3JjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlABQAAAAMAAAABAAA -ABUAAAAWAAAAFwAAAG1lbW9yeSBhbGxvY2F0aW9uIG9mICBieXRlcyBmYWlsZWQAALgLEAAVAAAAzQsQAA0AAABsaWJyYXJ5L3N0 -ZC9zcmMvYWxsb2MucnPsCxAAGAAAAGIBAAAJAAAAbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycxQMEAAcAAAAUwIAAB8AAAAU -DBAAHAAAAFQCAAAeAAAAFAAAAAwAAAAEAAAAGAAAABkAAAAIAAAABAAAABoAAAAZAAAACAAAAAQAAAAbAAAAHAAAAB0AAAAQAAAA -BAAAAB4AAAAfAAAAIAAAAAAAAAABAAAAIQAAACIAAAAEAAAABAAAACMAAAAkAAAADAAAAAQAAAAlAAAAJgAAACcAAABsaWJyYXJ5 -L2FsbG9jL3NyYy9yYXdfdmVjLnJzY2FwYWNpdHkgb3ZlcmZsb3cAAADsDBAAEQAAANAMEAAcAAAAFgIAAAUAAABhIGZvcm1hdHRp -bmcgdHJhaXQgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IAKAAAAAAAAAABAAAAKQAAAGxpYnJhcnkvYWxsb2Mvc3Jj -L2ZtdC5yc1wNEAAYAAAAYgIAACAAAADvv71ieXRlc2Vycm9yAAAAIgAAAAQAAAAEAAAAKgAAAEZyb21VdGY4RXJyb3IAAAArAAAA -DAAAAAQAAAAsAAAAKQAAAMQNEAAAAAAAWwAAADAAAAAAAAAAAQAAADEAAABpbmRleCBvdXQgb2YgYm91bmRzOiB0aGUgbGVuIGlz -ICBidXQgdGhlIGluZGV4IGlzIAAA5A0QACAAAAAEDhAAEgAAADogAADEDRAAAAAAACgOEAACAAAAMgAAAAwAAAAEAAAAMwAAADQA -AAA1AAAAICAgICB7ICwgIHsKLAp9IH0oKAosCgAAMgAAAAQAAAAEAAAANgAAAF1saWJyYXJ5L2NvcmUvc3JjL2ZtdC9udW0ucnN9 -DhAAGwAAAGkAAAAXAAAAMHgwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4 -MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2 -NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OXJhbmdlIHN0 -YXJ0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAAAHIPEAASAAAAhA8QACIAAAByYW5nZSBlbmQgaW5k -ZXgguA8QABAAAACEDxAAIgAAAHNsaWNlIGluZGV4IHN0YXJ0cyBhdCAgYnV0IGVuZHMgYXQgANgPEAAWAAAA7g8QAA0AAAABAQEB -AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB -AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBzqHAAAszAgICAgICAgICAgICAgICAgIC -AgICAgICAgICAgICAwMDAwMDAwMDAwMDAwMDAwQEBAQEAEGNosAAC0xOb25lU29tZQAAADIAAAAEAAAABAAAADcAAABFcnJvclV0 -ZjhFcnJvcnZhbGlkX3VwX3RvZXJyb3JfbGVuAAAyAAAABAAAAAQAAAA4AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJv -Y2Vzc2VkLWJ5AwVydXN0Yx0xLjc0LjAgKDc5ZTk3MTZjOSAyMDIzLTExLTEzKQZ3YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbhIw -LjIuODcgKGYwYThhZTNiOSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0 -`,Ml=null,ak=null,ok=null,wve=null,Qq=0,Ag=new Array(132).fill(void 0);Ag.push(void 0,null,!0,!1);ck=Ag.length});var Nve,DIt,PIt=ae(()=>{gi();Qt();jt();$r();aa();XA();bo();ii();OIt();ds();Vi();Nve=class extends Zt{async search(t){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:t,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await jn(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return R("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),R("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(t){let n=t.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(t){try{let r=await Me(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${t}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return R("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return R("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(t){try{let r=await Me(t,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return R("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(R("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return R("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Migu] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.name||l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,h=Jt(f).season;return h===c||c===1&&h===null});l.length>0&&(o=l,R("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let h of d)f.push({name:h.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??h.pID}/${h.pID}`,title:`\u3010migu\u3011 ${h.name}`});if(f.length>0){let h={animeId:Xn(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:Sn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(h),ar({...h,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...m)}else R("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Si(i),i)}async getEpisodeDanmuSegments(t){R("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=this.extractEpId(t),n=await this.getDetail(r),s=$S(n.duration);R("info","[Migu] itemId:",r),R("info","[Migu] durationSec:",s),R("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${PR(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},DIt=Nve});var uk,LIt=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();uk=class extends Zt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(t,r){if(!t.aid||!t.album_name||t.is_trailer===1||t.corner_mark&&t.corner_mark.text==="\u9884\u544A")return null;let n=t.album_name.replace("<<<","").replace(">>>",""),s=null;if(t.meta&&Array.isArray(t.meta)){for(let i of t.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(t.aid),title:n,type:s,year:t.year||null,imageUrl:t.ver_big_pic||null,episodeCount:t.total_video_count||0}}async search(t){try{R("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={key:t,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${yo(r)}`,i=await Me(s,{headers:n});if(!i||!i.data)return R("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return R("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,t);u&&o.push(u)}return R("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return R("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(t){let r={playlistid:t,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${yo(r)}`,i=await Me(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return R("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(t){try{R("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`);let r=await this.getPlaylistData(t);if(!r)return R("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return R("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${t})`),[];let s=[];for(let i=0;iXt(l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Sohu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let p={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(p),ar({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(t,r){if(!t)return 0;try{let n=await this.getPlaylistData(t),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return R("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(t){let r,n="0",s=await Me(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(t){R("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...m);else if(h>600)break}else R("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Si(i),i)}async getDanmuSegment(t){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await Me(t.url,{headers:r,timeout:1e4});if(!n||!n.data)return R("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${t.segment_start}-${t.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&R("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${t.segment_start}-${t.segment_end}s)`),i||[]}catch(s){return R("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return R("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(t){R("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let{vid:r,aid:n}=await this.extractVidAndAid(t),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;c0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=await Me(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return R("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return R("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}}});var MIt,lk,kIt=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();MIt={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},lk=class extends Zt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(t,r){if(!t.pid||!t.title)return null;let n=t.title,s=MIt[t.type]||"\u7535\u89C6\u5267";return{mediaId:String(t.pid),title:n,type:s,year:t.year||null,imageUrl:t.imageUrl||null,episodeCount:t.episodeCount||0}}async search(t){try{R("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={wd:t,from:"pc",ref:"click",click_area:"search_button",query:t,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${yo(r)}`,i=await Me(s,{headers:n,timeout:15e3});if(!i||!i.data)return R("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;R("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/
]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);R("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];R("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let h=JSON.parse(f);R("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${h.pid}, type=${h.type}`);let p=h.pid||"",m=h.type||"",_=h.total||"0";if(!p)continue;let g=d.index,y=[`
- `,` -`,""],A=-1;for(let U of y){let G=a.indexOf(U,g);if(G!==-1){A=G;break}}if(A===-1){let U=a.indexOf('
[\s\S]*?]*title="([^"]*)"[^>]*>/.exec(E);if(b&&b[1]&&(v=b[1].trim()),!v&&h.keyWord){let U=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(h.keyWord);U&&U[1]&&(v=U[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!v){let U=/]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(E);U&&U[1]&&(v=U[1].trim())}v||R("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let I=/]*(?:src|data-src|alt)="([^"]+)"/.exec(E),T=I?I[1]:"",x=null,w=/年份:<\/b>.*?>(\d{4})<\/a>/.exec(E);w||(w=/上映时间:<\/b>.*?>(\d{4})<\/a>/.exec(E)),w||(w=/_y(\d{4})_/.exec(E)),w||(w=/(\d{4})/.exec(h.keyWord||"")),w&&(x=parseInt(w[1]));let D=MIt[m]||"\u7535\u89C6\u5267",M=_&&/^\d+$/.test(_)?parseInt(_):0,L={mediaId:p,title:v,type:D,year:x,imageUrl:T&&T.startsWith("http")?T:T?`https:${T}`:null,episodeCount:M};o.push(L),R("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${v} (pid=${p}, type=${D}, episodes=${M})`)}catch(f){R("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){R("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${t}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),R("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)R("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else R("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${t}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return R("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`);let r=[`https://www.le.com/tv/${t}.html`,`https://www.le.com/comic/${t}.html`,`https://www.le.com/playlet/${t}.html`,`https://www.le.com/movie/${t}.html`],n=null;for(let l of r)try{let d=await Me(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,R("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){R("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return R("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${t}`),[];let s=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return R("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],t);let i=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return R("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],t);R("info","[Leshi] \u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/
0?(R("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return R("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(t,r){try{let n=/
]*>[\s\S]*?<\/div>/g,s=t.match(n);if(!s||s.length===0){R("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/
[\s\S]*?<\/dl>/g,o=t.match(a);if(!o||o.length===0){R("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let c=/]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,u=t.match(c);return!u||u.length===0?(R("error",`[Leshi] \u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(u,r)}return this.extractEpisodes(o,r)}let i=[];for(let a of s){let o=/
[\s\S]*?<\/dl>/.exec(a);o&&i.push(o[0])}return i.length===0?(R("error",`[Leshi] \u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(i,r)}catch(n){return R("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(t,r){let n=[];for(let s of t)try{let i=/]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){R("info","[Leshi] \u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=i[1],o=i[2],c=`https:${a}`,u="",l=/
[\s\n\r]*]*title="([^"]*)"[^>]*>([^<]*)<\/a>/.exec(s);if(l&&l[1])u=l[1].trim();else if(l&&l[2])u=l[2].trim();else{let h=/]*title="([^"]*)"[^>]*>[\s\S]*?
/.exec(s)||/
[\s\S]*?]*title="([^"]*)"/.exec(s);if(h&&h[1])u=h[1].trim();else{let p=/
]*>([^<]*)/.exec(s);if(p&&p[1])u=p[1].trim();else{let m=/]*title="[^"]*"[^>]*>([^<]*)/.exec(s);m&&m[1]&&(u=m[1].trim())}}}if(!u){let h=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);h?u=`\u7B2C${h[1]||h[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){R("info",`[Leshi] \u8DF3\u8FC7\u9884\u544A\u7247: ${u}`);continue}let f={vid:o,title:u,url:c,episodeId:`${o}:${r}`};n.push(f)}catch(i){R("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return R("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Leshi] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Leshi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let p={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from leshi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(p),ar({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Leshi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...m);else if(h>600)break}else R("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Si(i),i)}async getDanmuSegment(t){try{let r=await Me(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?r.data:JSON.stringify(r.data),i=/vjs_\d+\((.*)\)/.exec(s);if(i){let a=JSON.parse(i[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return R("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(t){R("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=t,n=t.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let s=await this.getVideoDuration(r),i=[];for(let a=0;a{try{let n=this.positionMap[parseInt(r.position)]||1,s=parseFloat(r.start||0),i=r.color||"FFFFFF",a=parseInt(i,16),o=r.id||r._id||"",c=r.txt||"",u=`${s.toFixed(2)},${n},25,${a},[${this.constructor.name.toLowerCase()}]`;return{cid:String(o),p:u,m:c,t:Math.round(s*100)/100}}catch(n){return R("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}}});var Ove,BIt,UIt=ae(()=>{gi();Qt();jt();$r();aa();bo();ii();ds();Vi();Ove=class extends Zt{async search(t){try{let r=`https://m.ixigua.com/s/${t}`,s=(await Me(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,i=[],a=/
[\s\S]*?

[\s\S]*?相关视频[\s\S]*?<\/h2>[\s\S]*?
([\s\S]*?)<\/div><\/div><\/div>/,o=s.match(a);if(o){let c=o[1],u=/
[\s\S]*?(?=
|$)/g;(c.match(u)||[]).forEach(d=>{let f=d.match(/href="(\/video\/\d+)"/),h=f?`https://m.ixigua.com${f[1]}`:"",p=d.match(/

[\s\S]*?title="([^"]+)"/),m=p?p[1]:"",_=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),A="",E="";if(y){let v=y[1].split("/");A=v[0]||"",E=v[2]||""}h&&m&&i.push({name:m,type:A,year:E,img:g,url:h})})}else return R("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return R("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return R("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(t){try{let n=`https://m.ixigua.com/video/${t.split("/").pop()}`,s=await Me(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return R("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return R("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(t){try{let r=`https://m.ixigua.com/video/${t}`,n=await Me(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return R("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){R("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return R("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return R("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Xigua] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.name,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),h=[];for(let p of f){let m=p.title;h.push({name:m,url:p.url,title:`\u3010xigua\u3011 ${m}`})}if(h.length>0){let p={animeId:Xn(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Sn(l.year),episodeCount:h.length,rating:0,isFavorited:!0,source:"xigua"};a.push(p),ar({...p,links:h},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...m)}else R("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Si(i),i)}async getEpisodeDanmuSegments(t){R("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=t.split("/").pop(),n=await this.getDetail(t)*1e3;R("info","[Xigua] itemId:",r),R("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a({cid:Number(r.danmaku_id),p:`${(r.offset_time/1e3).toFixed(2)},1,16777215,[xigua]`,m:r.text,t:Math.round(r.offset_time/1e3)}))}},BIt=Ove});var Dve,FIt,$It=ae(()=>{gi();Qt();jt();$r();aa();XA();bo();ii();ds();Vi();Dve=class extends Zt{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(t,r){let n=Date.now(),s=yo(r,!1),i=`os:Android|version:5.8.00|action:${t}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ti(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(t){let r=t.match(/\/video\/([a-f0-9]+)\.html/i),n=t.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(t){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:t},i=await jn(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return R("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return R("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return R("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(t){try{let r=this.extractByRegex(t),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await jn(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return R("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return R("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(t){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:t},i=await jn(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return R("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return R("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.name,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let h of d){let p=h.title;f.push({name:p,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${h.episodeId}`,title:`\u3010maiduidui\u3011 ${p}`})}if(f.length>0){let h={animeId:Xn(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Sn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(h),ar({...h,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...m)}else R("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Si(i),i)}async getEpisodeDanmuSegments(t){R("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let n=this.extractByRegex(t).uuid,s=await this.getDetail(t);R("info","[Maiduidui] uuid:",n),R("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o{u.push(...f.barrageList)}),u}catch(r){return R("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${PR(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},FIt=Dve});function dk(e,t,r){if(e==null)return r;let n=t.split("."),s=e;for(let i=0;i{Qt();jt();aa();$r();NYr="https://www.yfsp.tv/",OYr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",DYr=60*1e3;Wq=class{constructor(t){t=t||{},this.proxyUrlBuilder=t.proxyUrlBuilder||function(r){return F.makeProxyUrl(r)},this.userAgent=t.userAgent||OYr,this.configPageUrl=t.configPageUrl||NYr,this.ttlMs=t.ttlMs||DYr,this.now=t.now||function(){return Date.now()},this.signingConfig=null,this.signingConfigFetchedAt=0}async getSigningConfig(t){t=t||!1;var r=this.now(),n=this.signingConfig&&r-this.signingConfigFetchedAt{gi();jt();$r();aa();XA();bo();ii();ds();Fu();Qt();VIt();fk=class extends Zt{constructor(){super(),this.USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",this.SEARCH_API="https://rankv21.tripdata.app/v3/list/briefsearch",this.PLAYLIST_API="https://m10.yfsp.tv/v3/video/languagesplaylist",this.VIDEO_API="https://m10.yfsp.tv/v3/video/play",this.DANMU_API="https://m10.yfsp.tv/api/video/getBarrage",this.DOMAIN_API="https://www.yfsp.tv/play",this.CONFIG_PAGE_API="https://www.yfsp.tv/",this.signingProvider=new Wq({userAgent:this.USER_AGENT,configPageUrl:this.CONFIG_PAGE_API}),this.inflightDanmuRequests=new Map}extractEpisodeRequestKey(t){try{return new URL(t).searchParams.get("id")??t}catch{return t}}async searchDrama(t,r=1,n=10){let s={tags:t,orderby:4,page:r,size:n,desc:1,isserial:-1},i={"User-Agent":this.USER_AGENT,Accept:"application/json"};R("info",`[Aiyifan] [\u641C\u7D22] \u5173\u952E\u8BCD: ${t}, \u9875\u7801: ${r}`);try{let a=xR(this.SEARCH_API,s),o=await Me(F.makeProxyUrl(a),{headers:i});return typeof o.data=="string"?JSON.parse(o.data):o.data}catch(a){return R("error",`[Aiyifan] [\u641C\u7D22\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractDramaList(t){let r=[],n=t?.data?.info||[];if(!n.length)return R("warn","[Aiyifan] [\u8B66\u544A] \u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),r;for(let s of n){let i=s.result||[];if(i.length)for(let a of i){let o=a.contxt,c=a.title;r.push({contxt:o,title:c,...a}),R("info",`[Aiyifan] [\u53D1\u73B0\u5267\u76EE] ${c} vid=${o}`)}}return r}async getPlaylist(t){let r={cinema:1,vid:t,lsk:1,taxis:0,cid:"0,1,4,152"},n={"User-Agent":this.USER_AGENT,Accept:"application/json"};R("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u8BF7\u6C42 vid: ${t}`);try{let{data:s}=await this.signingProvider.signedGetJson(this.PLAYLIST_API,r,n,"\u64AD\u653E\u5217\u8868"),i=[],a=s.data?.info||[];for(let o of a)for(let c of o.playList||[])i.push(c);return R("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u5171\u83B7\u53D6\u5230 ${i.length} \u96C6`),i}catch(s){return R("error",`[Aiyifan] [\u64AD\u653E\u5217\u8868\u5931\u8D25] \u9519\u8BEF: ${s.message}`),[]}}async getVideoInfo(t,r=null){let n={cinema:1,id:t,a:0,lang:"none",usersign:1,region:"GL.",device:0,isMasterSupport:1},s={"User-Agent":this.USER_AGENT,Accept:"application/json"},i=r?`(ID:${r})`:"";R("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u8BF7\u6C42 key: ${t} ${i}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.VIDEO_API,n,s,"\u89C6\u9891\u4FE1\u606F");return R("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] vv\u7B7E\u540D: ${o.substring(0,16)}...`),a.data||{}}catch(a){return R("error",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractUniqueKey(t){let n=(t.info?.[0]||{}).uniqueKey;return n&&R("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u83B7\u53D6\u5230 uniqueKey: ${n}`),n}async fetchBarrage(t,r=1,n=3e4){let s={cinema:1,page:r,size:n,uniqueKey:t},i={"User-Agent":this.USER_AGENT};R("info",`[Aiyifan] [\u5F39\u5E55] \u8BF7\u6C42 uniqueKey: ${t}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.DANMU_API,s,i,"\u5F39\u5E55");R("info",`[Aiyifan] [\u5F39\u5E55] vv\u7B7E\u540D: ${o.substring(0,16)}...`);let c=a.data?.info||[];return R("info",`[Aiyifan] [\u5F39\u5E55] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c}catch(a){return R("error",`[Aiyifan] [\u5F39\u5E55\u5931\u8D25] \u9519\u8BEF: ${a.message}`),[]}}async search(t){R("info",`[Aiyifan] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=await this.searchDrama(t);if(!r)return R("error","[Aiyifan] \u641C\u7D22\u5931\u8D25\uFF0C\u9000\u51FA"),[];let n=this.extractDramaList(r);if(!n.length)return R("warn","[Aiyifan] \u672A\u627E\u5230\u5267\u76EE\u4FE1\u606F\uFF0C\u9000\u51FA"),[];let s=n.map(i=>({provider:"aiyifan",mediaId:i.contxt,title:i.title,type:i.atypeName,year:new Date(i.postTime).getFullYear(),imageUrl:i.imgPath||null,episodeCount:0}));return R("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(t){R("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${t}`);let r=await this.getPlaylist(t);if(!r.length)return R("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${t}?id=${s.key}`}));return R("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Xt(l.title,r,i)),c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=Jt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){R("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((m,_)=>({name:m.title||`${_+1}`,url:m.link,title:`\u3010aiyifan\u3011 ${m.title}`}));if(f.length===0)return;let p={animeId:Xn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Sn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(p),ar({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}catch(d){R("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(t){R("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${t}`);let r=this.extractEpisodeRequestKey(t),n=this.inflightDanmuRequests.get(r);if(n)return R("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return R("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return R("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(R("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),R("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(t){let r=await this.getEpisodeDanmu(t),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${t}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(t){let r=t.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(t){return t.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${PR(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(F.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=yr(r.m)),r))}}});var Ud,hk,jYr,KYr,pk,KIt=ae(()=>{gi();Qt();jt();$r();ii();Fu();Vi();ds();qm();Ud={danmu:null,subject:null},hk=new Map,jYr=3*60*1e3,KYr=100,pk=class extends Zt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${F.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(t){return F.makeProxyUrl(t)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let t="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(t),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==t?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:t}]}async _fetchV0AllEpisodes(t,r){let n=[],s=0,i=200;try{for(;;){let a=`${t}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await Me(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&R("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&R("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length1600){R("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return R("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(t){let r=hk.get(t);if(r&&Date.now()-r.timestampa.url===s);(!s||i===-1)&&(i=0,s=n[0].url,Ud.subject=s);for(let a=0;a(R("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:t},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if(Ud.subject!==o.url&&(R("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Ud.subject} -> ${o.url}`),Ud.subject=o.url),hk.set(t,{data:c,timestamp:Date.now()}),hk.size>KYr){let u=hk.keys().next().value;hk.delete(u)}return c}R("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){R("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return R("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),Ud.subject=n[0].url,null}async search(t){if(F.useBangumiData){let r=await Qf(t,["bangumi"]);if(r.length>0){R("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(t))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return R("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=t.replace(/[._]/g," ").replace(/\s+/g," ").trim();R("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},h=null;for(let _ of d)try{if(h=await jn(_.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),h&&h.data){R("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${_.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){R("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${_.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!h||!h.data){R("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let p=h.data.data||[];if(p.length===0)break;let m=this.filterSearchResults(p,t);if(m.length>0&&(n=n.concat(m)),m.length=60){R("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return R("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),R("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return R("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(t,r){return t.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&Xt(i,r))})}hasExplicitSeasonInfo(t){return t?/第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|劇場版|Movie|Film|续[篇集]|外传|SP|(?o.length){if(this.hasExplicitSeasonInfo(c))continue;let u=await this._fetchAnimekoSubject(i.id),d=this._extractRelations(u).find(f=>f.id===a.id);if(d&&(R("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let h=d.relation;h==="\u7EED\u96C6"&&(h="\u7EED\u7BC7"),a._relation_mark=`(${h})`}}}return t}_extractRelations(t){if(!t||!t.relations)return[];let r=t.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(t,r){if(!t||!t.fields||!Array.isArray(t.fields))return null;let n=t.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(t){let r=[];return!t||!t.fields||!Array.isArray(t.fields)||t.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(t){return t.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(t){try{let r=await this._fetchAnimekoSubject(t);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&R("info",`[Animeko] Subject ${t} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return R("error","[Animeko] GetEpisodes error:",{message:r.message,id:t}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return t&&R("error","[Animeko] sourceAnimes is not a valid array"),[];let o=t,c=i!==null?i:dr(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,h=Jt(f).season;return h===c||c===1&&h===null});l.length>0&&(o=l,R("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],h=l.air_date||"";if(Array.isArray(d)){d.sort((p,m)=>(p.sort||0)-(m.sort||0));for(let p of d){if(p.type!==0)continue;!h&&p.airdate&&(h=p.airdate);let m=p.sort||p.ep,_=p.name_cn||p.name||"",g=`\u7B2C${m}\u8BDD ${_}`.trim();f.push({name:`${m}`,url:p.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let p=h?new Date(h).getFullYear():"",m={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${p})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:h,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(m),ar({...m,links:f},s),F.animes.length>F.MAX_ANIMES&&cr()}}catch(d){R("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){let r=String(t).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return R("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=Ud.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],Ud.danmu=s);for(let a=0;a ${c}`),Ud.danmu=c),R("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}R("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){R("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return R("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),Ud.danmu=n[0],[]}async getEpisodeDanmuSegments(t){return new Gt({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(t)}]})}async getEpisodeSegmentDanmu(t){let r=(t.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(t){if(!Array.isArray(t))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return t.filter(n=>n&&n.danmakuInfo).map(n=>{let s=n.danmakuInfo,i=(Number(s.playTime)/1e3).toFixed(2),a=r[s.location]||1,o=s.color===-1?16777215:s.color,c=F.danmuSimplifiedTraditional==="simplified"?yr(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}}});var mk,GIt=ae(()=>{gi();Qt();jt();$r();ds();Vi();mk=class extends Zt{async search(t){}async getEpisodes(t){}async handleAnimes(t,r,n,s=null){}async getEpisodeDanmu(t){try{let r=await Me(`${F.otherServer}/?url=${t}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return R("info",`[Other] danmu response from ${F.otherServer}: \u2193\u2193\u2193`),Si(r.data),r.data}catch(r){return R("error",`[Other] \u8BF7\u6C42 ${F.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(t){return R("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Gt({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t}}});function zIt(e){let t=Number(e||0);return!Number.isFinite(t)||t<=0?0:t>6*60*60?t/1e3:t}function ZIt(e,t=!1){return t?String(e||F.danmuOutputFormat||"json").toLowerCase()==="json":!1}function Jq(e,t=null){return t===null?e:{videoDuration:t,...e}}function GYr(e){let t=zIt(e?.duration||e?.videoDuration||0);if(t>0)return t;let r=Array.isArray(e?.segmentList)?e.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=zIt(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function kve(e){if(!/^https?:\/\//i.test(e))return 0;try{let t=e,r=null;return t.includes(".qq.com")?r=await $e.run("tencent",()=>iE.getComments(t,"qq",!0)):t.includes(".iqiyi.com")?r=await $e.run("iqiyi",()=>oE.getComments(t,"qiyi",!0)):t.includes(".mgtv.com")?r=await $e.run("mango",()=>YS.getComments(t,"imgo",!0)):t.includes(".bilibili.com")||t.includes("b23.tv")?(t.includes("b23.tv")&&(t=await $e.run("bilibili",()=>Fd.resolveB23Link(t))),r=await $e.run("bilibili",()=>Fd.getComments(t,"bilibili1",!0))):t.includes(".youku.com")?r=await $e.run("youku",()=>aE.getComments(t,"youku",!0)):t.includes(".miguvideo.com")?r=await $e.run("migu",()=>cE.getComments(t,"migu",!0)):t.includes(".sohu.com")?r=await $e.run("sohu",()=>QS.getComments(t,"sohu",!0)):t.includes(".le.com")?r=await $e.run("leshi",()=>WS.getComments(t,"leshi",!0)):t.includes(".douyin.com")||t.includes(".ixigua.com")?r=await $e.run("xigua",()=>XS.getComments(t,"xigua",!0)):t.includes(".mddcloud.com.cn")?r=await $e.run("maiduidui",()=>JS.getComments(t,"maiduidui",!0)):t.includes(".yfsp.tv")&&(r=await $e.run("aiyifan",()=>ZS.getComments(t,"aiyifan",!0))),GYr(r)}catch(t){return R("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${t.message}`),0}}function zYr(e){return String(e||"").split(Bd).map(t=>{let r=t.indexOf(":");return r===-1?t.trim():t.slice(r+1).trim()}).filter(Boolean)}async function Zq(e){if(!e)return 0;try{let t=e.includes(Bd)?zYr(e):[e];return(await Promise.all(t.map(kve))).reduce((n,s)=>Math.max(n,s||0),0)}catch(t){return R("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${t.message}`),0}}function eH(e,t){if(!t)return!0;let r=jA(e.animeTitle);return r?r===t:!0}function YYr(e,t,r){let n=e.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():e.animeTitle.split("(")[0].trim(),i=Lr(s),a=Lr(t);if(i.includes(a)){if(i.startsWith(a)){let o=i.substring(a.length).trim();if(o===""&&r===1)return!0;let c=o.match(/\d+/);if(c&&c[0]===r.toString())return!0;let u=o.match(/[一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+/);if(u&&wh(u[0])===r)return!0}return!1}else return!1}function Pve(e,t,r,n,s){if(r===null||t===null)return!0;let i=[];s&&(i=s.split("&").map(o=>o.trim().toLowerCase()).filter(o=>o)),i.length===0&&(i=["_any_"]);let a=!0;for(let o of i){let c=!1,u=new Map,l=!1;for(let d of e){let f=tH(d.animeTitle)||d.source;if(o!=="_any_"&&Eg(f,o)===0)continue;l=!0;let h=tT(d,n);if(h?.success&&h.bangumi?.episodes){let p=h.bangumi.episodes.filter(A=>!F.episodeTitleFilter.test(A.episodeTitle)),m=eT(p);if(m.some(A=>Pm(A.episodeTitle)===r)){c=!0;break}let _=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&_.push(...d.aliases);let g=null;for(let A of _){if(!A)continue;let E=Jt(A).season;if(E!==null){g=E;break}}g===null&&(g=1);let y=u.get(g)||0;m.length>y&&u.set(g,m.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(de[$]!==void 0),L=[];for(let $ of M){let K=[],ee=new Map;if($==="360")L.push({key:$,animes:K,detailStore:ee,promise:$e.run(Cs($),()=>WIt.handleAnimes(c,t,K,ee,s))});else if($==="vod"){if(o&&Array.isArray(o)){let z=$e.run($,()=>(async()=>{for(let oe of o)oe&&oe.list&&oe.list.length>0&&await XIt.handleAnimes(oe.list,t,K,oe.serverName,ee,s)})());L.push({key:$,animes:K,detailStore:ee,promise:z})}}else $==="tmdb"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>JIt.handleAnimes(u,t,K,ee,s))}):$==="douban"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>Mve.handleAnimes(l,t,K,ee,s))}):$==="renren"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>gk.handleAnimes(d,t,K,ee,s))}):$==="hanjutv"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>_k.handleAnimes(f,t,K,ee,s))}):$==="bahamut"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>TC.handleAnimes(h,t,K,ee,s))}):$==="dandan"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>Ak.handleAnimes(p,t,K,ee,s))}):$==="custom"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>nH.handleAnimes(m,t,K))}):$==="tencent"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>iE.handleAnimes(_,t,K,ee,s))}):$==="youku"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>aE.handleAnimes(g,t,K,ee,s))}):$==="iqiyi"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>oE.handleAnimes(y,t,K,ee,s))}):$==="imgo"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run(Cs($),()=>YS.handleAnimes(A,t,K,ee,s))}):$==="bilibili"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>Fd.handleAnimes(E,t,K,ee,s))}):$==="migu"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>cE.handleAnimes(v,t,K,ee,s))}):$==="sohu"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>QS.handleAnimes(b,t,K,ee,s))}):$==="leshi"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>WS.handleAnimes(I,t,K,ee,s))}):$==="xigua"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>XS.handleAnimes(T,t,K,ee,s))}):$==="maiduidui"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>JS.handleAnimes(x,t,K,ee,s))}):$==="aiyifan"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>ZS.handleAnimes(w,t,K,ee,s))}):$==="animeko"&&L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>bC.handleAnimes(D,t,K,ee,s))})}let U=await Promise.allSettled(L.map($=>$.promise)),G=new Set(r.map($=>$.animeId));for(let $=0;$ ${g}`),i=g}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=kP(u,c);if(l===null&&a!==null){let g=kP(i,c);g!==null&&(R("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=g)}if(l!==null){let g=Pve(l,a,o,c,s);if(g)return tt({errorCode:0,success:!0,errorMessage:"",animes:l});{let y=a+1,A=[...l],E=!1;for(;!g&&!E;){let v=`${i}_S${y}`,b=kP(v,c);b!==null&&b.length>0?(A.push(...b),g=Pve(A,a,o,c,s),y++):E=!0}if(g)return R("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${y-1}`),tt({errorCode:0,success:!0,errorMessage:"",animes:A});R("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[],f=/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/,h=i.split(/\s+/).filter(g=>{let y=g.replace(/@%?-?\d+(?:\.\d+)?$/,"");return f.test(y)});if(h.length>=2){let g=h.map(y=>{let{source:A,realId:E}=QIt(y);return A?`${A}:${E}`:""}).filter(Boolean);if(g.length>=2){let y=g.join(Bd),A=[];for(let T of h){let{source:x}=QIt(T);if(x==="animeko"){let w=T.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);A.push(`\u3010animeko\u3011 BGMEp${w?w[1]:"?"}`)}else if(x==="bahamut")A.push(`\u3010bahamut\u3011 BahaSn${T.match(/sn=(\d+)/)?.[1]||"?"}`);else{let w=await $e.run(Cs(x),()=>Pde(T));A.push(`\u3010${x}\u3011 ${w}`)}}let E=A.join("\uFF06"),v=Lh.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u5408\u5E76",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),b=[{name:"\u624B\u52A8\u5408\u5E76\u5F39\u5E55",url:y,title:E}];d.push(v),ar(Lh.fromJson({...v,links:b}),c),F.animes.length>F.MAX_ANIMES&&cr(),F.localCacheValid&&d.length!==0&&await $P(),F.redisValid&&d.length!==0&&await OP(),F.localRedisValid&&d.length!==0&&await KM();let I=d.map(({links:T,...x})=>x);return tt({errorCode:0,success:!0,errorMessage:"",animes:I})}}if(f.test(i)){let g=Lh.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),y="unknown";i.includes(".qq.com")?y="qq":i.includes(".iqiyi.com")?y="qiyi":i.includes(".mgtv.com")?y="imgo":i.includes(".youku.com")?y="youku":i.includes(".bilibili.com")||i.includes("b23.tv")?y="bilibili1":i.includes(".miguvideo.com")?y="migu":i.includes(".sohu.com")?y="sohu":i.includes(".le.com")?y="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?y="xigua":i.includes(".mddcloud.com.cn")?y="maiduidui":i.includes(".yfsp.tv")?y="aiyifan":/(?:bgm|bangumi)\.(?:tv|lol)\/ep\/|chii\.in\/ep\//.test(i)?y="animeko":i.includes("ani.gamer.com.tw")&&(y="bahamut");let A=i,E=i;if(y==="animeko"){let I=i.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);A=I?I[1]:i,E=`BGMEp${A}`}else if(y==="bahamut"){let I=i.match(/sn=(\d+)/);A=I?I[1]:i,E=`BahaSn${A}`}else E=await $e.run(Cs(y),()=>Pde(i));let v=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:A,title:`\u3010${y}\u3011 ${E}`}];d.push(g),ar(Lh.fromJson({...g,links:v}),c),F.animes.length>F.MAX_ANIMES&&cr(),F.localCacheValid&&d.length!==0&&await $P(),F.redisValid&&d.length!==0&&await OP(),F.localRedisValid&&d.length!==0&&await KM();let b=d.map(({links:I,...T})=>T);return tt({errorCode:0,success:!0,errorMessage:"",animes:b})}try{R("info",`[system] [LogVar-API] Search sourceOrderArr: ${F.sourceOrderArr}`);let g={},y={};for(let I of F.sourceOrderArr)I==="360"?y[I]=$e.run(Cs(I),()=>WIt.search(i)):I==="vod"?y[I]=$e.run(Cs(I),()=>XIt.search(i,t,r)):I==="tmdb"?y[I]=$e.run(Cs(I),()=>JIt.search(i)):I==="douban"?y[I]=$e.run(Cs(I),()=>Mve.search(i)):I==="renren"?y[I]=$e.run(Cs(I),()=>gk.search(i)):I==="hanjutv"?y[I]=$e.run(Cs(I),()=>_k.search(i)):I==="bahamut"?y[I]=$e.run(Cs(I),()=>TC.search(i)):I==="dandan"?y[I]=$e.run(Cs(I),()=>Ak.search(i)):I==="custom"?y[I]=$e.run(Cs(I),()=>nH.search(i)):I==="tencent"?y[I]=$e.run(Cs(I),()=>iE.search(i)):I==="youku"?y[I]=$e.run(Cs(I),()=>aE.search(i)):I==="iqiyi"?y[I]=$e.run(Cs(I),()=>oE.search(i)):I==="imgo"?y[I]=$e.run(Cs(I),()=>YS.search(i)):I==="bilibili"?y[I]=$e.run(Cs(I),()=>Fd.search(i)):I==="migu"?y[I]=$e.run(Cs(I),()=>cE.search(i)):I==="sohu"?y[I]=$e.run(Cs(I),()=>QS.search(i)):I==="leshi"?y[I]=$e.run(Cs(I),()=>WS.search(i)):I==="xigua"?y[I]=$e.run(Cs(I),()=>XS.search(i)):I==="maiduidui"?y[I]=$e.run(Cs(I),()=>JS.search(i)):I==="aiyifan"?y[I]=$e.run(Cs(I),()=>ZS.search(i)):I==="animeko"&&(y[I]=$e.run(Cs(I),()=>bC.search(i)));let A=F.sourceOrderArr.map(I=>{let T=[],x=new Map,w=y[I].then(async D=>{g[I]=D,await YIt({[I]:D},i,T,x,a,t,r)});return{key:I,animes:T,detailStore:x,promise:w}}),E=await Promise.allSettled(A.map(I=>I.promise)),v=new Set(d.map(I=>I.animeId));for(let I=0;I0&&BP(u,d.map(({links:I,...T})=>T),c),!Pve(d,a,o,c,s)&&a!==null){let I=a;for(let T of F.sourceOrderArr){let x=g[T];if(Array.isArray(x))for(let w of x){let D=w&&Array.isArray(w.list)?w.list:[w];for(let M of D){if(!M)continue;let L=Jt(M.animeTitle||M.title||"").season;L!==null&&L>I&&(I=L)}}}if(I>a){R("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let T=[];for(let w=a+1;w<=I;w++)T.push((async()=>{let D=[];return await YIt(g,i,D,c,w,t,r),D.length>0&&BP(`${i}_S${w}`,D.map(({links:M,...L})=>L),c),D})());let x=await Promise.all(T);for(let w of x)d.push(...w)}}}catch(g){R("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",g)}let p=F.mergeSourcePairs&&F.mergeSourcePairs.length>0,m=F.customMergeRules&&F.customMergeRules.length>0;if((p||m)&&await $1t(d,c),Yde(d,i),F.enableAnimeEpisodeFilter){let g=[];for(let y of d){let A=y.animeTitle||"";if(F.animeTitleFilter&&F.animeTitleFilter.test(A)){R("info",`[searchAnime] Anime ${y.animeId} filtered by name: ${A}`);continue}let E=yS(y?.bangumiId,c,y?.source)||yS(y?.animeId,c,y?.source)||ES(y?.bangumiId,c,y?.source)||ES(y?.animeId,c,y?.source);if(E&&E.links){let v=E.links.map((b,I)=>({episodeId:b.id,episodeTitle:b.title,episodeNumber:I+1}));v=v.filter(b=>!F.episodeTitleFilter.test(b.episodeTitle)),R("info",`[searchAnime] Anime ${y.animeId} filtered episodes: ${v.length}/${E.links.length}`),v.length>0&&g.push(y)}}d.length=0,d.push(...g)}F.localCacheValid&&d.length!==0&&await $P(),F.redisValid&&d.length!==0&&await OP(),F.localRedisValid&&d.length!==0&&await KM();let _=d.map(({links:g,...y})=>y);if(_.length>0){let g=a!==null?`${i}_S${a}`:i;BP(g,_,c)}return tt({errorCode:0,success:!0,errorMessage:"",animes:_})}function eT(e){return e.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function Eg(e,t){if(!e||!t)return 0;let r=e.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),s=0;for(let i of n)r.some(o=>o===i||o.includes(i)&&i.length>2||i.includes(o)&&o.length>2)&&s++;return s===0?0:s*1e3-r.length}function tH(e){let t=e.match(/from\s+([a-zA-Z0-9&]+)/i);return t?t[1]:null}function rH(e,t,r,n=null){if(!e||e.length===0)return null;let s=e;if(n&&(s=e.filter(i=>{let a=VA(i.episodeTitle);return Eg(a,n)>0})),s.length===0)return null;for(let i of s){let a=Pm(i.episodeTitle);if(t===r&&a===r)return R("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return R("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return R("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function QYr(e,t,r,n,s,i,a,o,c=null){let u=F.aiBaseUrl,l=F.aiModel,d=F.aiApiKey,f=F.aiMatchPrompt;if(!F.aiValid||!f)return R("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let h=new $m({apiKey:d,baseURL:u,model:l,systemPrompt:f}),p={title:s,season:e,episode:t,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(m=>{let _=m.animeTitle||"",g=_.match(/^(.*?)\(\d{4}\)/),y=g?g[1].trim():_.split("(")[0].trim();return{animeId:m.animeId,animeTitle:y,aliases:m.aliases||[],type:m.type,year:m.startDate?m.startDate.slice(0,4):null,episodeCount:m.episodeCount,source:m.source}})};try{let m=JSON.stringify(p,null,2),_=await h.ask(m);R("info",`AI match response: ${_}`);let g;try{let b=_.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),I=b?b[1]||b[2]||b[3]:_;g=JSON.parse(I.trim())}catch(b){return R("error",`Failed to parse AI response: ${b.message}`),{resEpisode:null,resAnime:null}}let y=g.animeIndex;if(y==null)return{resEpisode:null,resAnime:null};let A=n.animes[y];if(!A)return R("error",`AI returned invalid anime index: ${y}`),{resEpisode:null,resAnime:null};let E=tT(A,c);if(!E?.success||!E?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let v=null;if(e&&t){let b=E.bangumi.episodes.filter(T=>!F.episodeTitleFilter.test(T.episodeTitle)),I=eT(b);R("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",I.map(T=>T.episodeTitle)),v=rH(I,t,t)}else E.bangumi.episodes.length>0&&(v=E.bangumi.episodes[0]);return{resEpisode:v,resAnime:A}}catch(m){return R("error",`AI matching failed: ${m.message}`),{resEpisode:null,resAnime:null}}}function tT(e,t=null){let r=yS(e?.bangumiId,t,e?.source)||yS(e?.animeId,t,e?.source);return r?Uve(r,e?.bangumiId||e?.animeId||""):(R("warn",`[matchAnime] Missing request detail snapshot for anime ${e?.animeId??e?.bangumiId}`),null)}function eRt(e,t,r,n,s){let i=String(t),a=e[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,R("info",`Applying offset "${e[i]}" for S${t}E${r} -> ${s}`)),s}function tRt(e,t,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};R("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=Lr(t),c=new Map;for(let f of e.animes){let h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);let p=!1;for(let _ of h)if(_&&Lr(_).includes(o)){if(!eH(f,r))continue;p=!0;break}if(!p)continue;let m=null;for(let _ of h){if(!_)continue;let g=Jt(_).season;if(g!==null){m=g;break}}if(m===null&&(m=1),!c.has(m)){let _=tT(f,a);if(_?.success&&_?.bangumi?.episodes){let g=_.bangumi.episodes.filter(A=>!F.episodeTitleFilter.test(A.episodeTitle)),y=eT(g);y.length>0&&c.set(m,{anime:f,episodes:y,actualPlatform:tH(f.animeTitle)||f.source})}}}let u=s,l=n,d={anime:null,episode:null,score:0};for(;c.has(l);){let f=c.get(l),h=f.episodes,p=null;for(let m of h)if(Pm(m.episodeTitle)===s){p=m;break}if(p){if(i&&Eg(VA(p.episodeTitle),i)===0)break;R("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${p.episodeTitle}`),d={anime:f.anime,episode:p,score:i?Eg(f.actualPlatform,i):1};break}if(u<=h.length){let m=h[u-1];if(i&&Eg(VA(m.episodeTitle),i)===0)break;R("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?Eg(f.actualPlatform,i):1};break}R("info",`[system] [Spillover] S${l} \u5171\u6709 ${h.length} \u96C6(\u5DF2\u8FC7\u6EE4\u756A\u5916)\uFF0C\u5269\u4F59\u76EE\u6807\u96C6\u6570\u4E3A ${u}\uFF0C\u6620\u5C04\u81F3 S${l+1} \u7EE7\u7EED\u67E5\u627E`),u-=h.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function WYr(e,t,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Lr(s);for(let f of n.animes){if(F.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let p=!1,m=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&m.push(...f.aliases);for(let A of m)if(A){if(e&&t){if(Lr(A).includes(d)){if(!eH(f,r)){R("info",`Year mismatch: anime year ${jA(f.animeTitle)} vs query year ${r}`);continue}let E=F.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),v={...f,animeTitle:A};if(YYr(v,s,e)||E){p=!0;break}}}else if(A.split("(")[0].trim()===s){if(!eH(f,r)){R("info",`Year mismatch: anime year ${jA(f.animeTitle)} vs query year ${r}`);continue}p=!0;break}}if(!p)continue;let _=tT(f,u);if(!_?.success||!_?.bangumi?.episodes)continue;R("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),R("info",_);let g=null,y=F.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(e&&t){let A=_.bangumi.episodes.filter(b=>!F.episodeTitleFilter.test(b.episodeTitle)),E=eT(A);R("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",E.map(b=>b.episodeTitle));let v=t;c&&c[String(e)]!==void 0&&(v=eRt(c,e,t,E,v)),g=rH(E,t,v,a),!g&&y&&(R("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),g=rH(E,t,v,null))}else if(_.bangumi.episodes.length>0)if(a){let A=_.bangumi.episodes.find(E=>{let v=VA(E.episodeTitle);return Eg(v,a)>0});A?g=A:y&&(R("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),g=_.bangumi.episodes[0])}else g=_.bangumi.episodes[0];if(g){let A=tH(f.animeTitle)||f.source,E=0;if(a?E=Eg(A,a):E=1,y&&(E+=9999),E>l.score&&(l={anime:f,episode:g,score:E}),!a||y)break}}if(!l.episode&&e&&t){let f=tRt(n,s,r,e,t,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?Eg(tH(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function XYr(e,t,r,n,s,i,a,o,c,u=null){for(let d of e.animes){if(s&&!eH(d,s)){R("info",`Fallback: Year mismatch: anime year ${jA(d.animeTitle)} vs query year ${s}`);continue}let f=tT(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(R("info",f),r&&n){let h=f.bangumi.episodes.filter(g=>!F.episodeTitleFilter.test(g.episodeTitle)),p=eT(h);R("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",p.map(g=>g.episodeTitle));let m=n;c&&c[String(r)]!==void 0&&(m=eRt(c,r,n,p,m));let _=rH(p,n,m,null);if(_){a=_,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=tRt(e,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}function QIt(e){let t=e.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);if(t){let s=e.match(/@(-?\d+(?:\.\d+)?)$/);return{source:"animeko",realId:t[1]+(s?s[0]:"")}}let r=e.match(/ani\.gamer\.com\.tw\/animeVideo\.php\?sn=(\d+)/);if(r){let s=e.match(/@(-?\d+(?:\.\d+)?)$/);return{source:"bahamut",realId:r[1]+(s?s[0]:"")}}return{source:JYr(e),realId:e}}function JYr(e){return e.includes(".qq.com")?"tencent":e.includes(".iqiyi.com")?"iqiyi":e.includes(".mgtv.com")?"imgo":e.includes(".youku.com")?"youku":e.includes(".bilibili.com")||e.includes("b23.tv")?"bilibili":e.includes(".miguvideo.com")?"migu":e.includes(".sohu.com")?"sohu":e.includes(".le.com")?"leshi":e.includes(".douyin.com")||e.includes(".ixigua.com")?"xigua":e.includes(".mddcloud.com.cn")?"maiduidui":e.includes(".yfsp.tv")?"aiyifan":"unknown"}async function ZYr(e){let t=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=e.match(t),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=e.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let c=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(c)n=c[0];else if(/^[A-Za-z0-9]/.test(n)){let u=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);u&&(n=u[1].trim().replace(/[._]/g," "))}else{let u=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=u.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:u.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,c=e.match(o);n=c?c[1].replace(/[._]/g," ").trim():e,s=null,i=null;let u=e.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return F.titleToChinese&&(n=await T1t(n.replace("."," "),s,i)),R("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function rRt(e,t,r,n){let s=new URL(e),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",t||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function nRt(e,t,r){try{let n=await t.json();if(!n)return R("error","[system] [Match] Request body is empty"),tt({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return R("error","[system] [Match] Missing fileName parameter in request body"),tt({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=Jrt(s);R("info",`[system] [Match] Processing anime match for query: ${s}`),R("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await ZYr(i);if(F.titleMappingTable&&F.titleMappingTable.size>0){let x=F.titleMappingTable.get(o);x&&(o=x,R("info",`[system] [Match] Title mapped from original: ${e.searchParams.get("keyword")} to: ${o}`))}if(F.animeTitleSimplified){let x=yr(o);R("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${x}`),o=x}F.titleNoiseFilter&&(o=o.replace(F.titleNoiseFilter,"").trim());let[d,f,h]=Wde(o,c);R("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let p=Zrt(a),m=p.length>0?p[0]:null,_=new Map,g=rRt(t.url,o,c,u),A=await(await IC(g,d,f,_,m)).json();R("info",`[system] [Match] searchData: ${A.animes}`);let E,v,b=!1,I={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};R("info",`[system] [Match] Original platformOrderArr: ${F.platformOrderArr}`),R("info",`[system] [Match] Dynamic platformOrder: ${p}`),R("info",`[system] [Match] Preferred platform: ${a||"none"}`);let T=await QYr(c,u,l,A,o,t,p,d,_);if(T.resAnime&&T.resEpisode)E=T.resAnime,v=T.resEpisode,I.isMatched=!0,R("info",`[system] [Match] AI match found: ${E.animeTitle}; episode: ${v.episodeTitle}`);else{for(let x of p){let w=await WYr(c,u,l,A,o,t,x,d,h,_);if(v=w.resEpisode,E=w.resAnime,E){I.isMatched=!0,R("info",`[system] [Match] Found match with platform: ${x||"default"}`);break}}if(!E){let x=await XYr(A,t,c,u,l,o,v,E,h,_);v=x.resEpisode,E=x.resAnime,b=x.isSpillover}}return v&&(r&&!b&&jde(r,{title:o,season:c,episode:u,episodeId:v.episodeId}),I.matches=[b9.fromJson({episodeId:v.episodeId,animeId:E.animeId,animeTitle:E.animeTitle,episodeTitle:v.episodeTitle,type:E.type,typeDescription:E.typeDescription,shift:0,imageUrl:E.imageUrl})]),R("info",`[system] [Match] resMatchData: ${I}`),tt(I)}catch(n){return R("error",`[system] [Match] Failed to parse request body: ${n.message}`),tt({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function sRt(e){let t=e.searchParams.get("anime"),r=e.searchParams.get("episode")||"";if(F.animeTitleSimplified){let c=yr(t);R("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${t} -> ${c}`),t=c}if(R("info",`[system] [Episodes] Search episodes with anime: ${t}, episode: ${r}`),!t)return R("error","[system] [Episodes] Missing anime parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=rRt(e,t),s=new Map,a=await(await IC(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return R("info","[system] [Episodes] No anime found for the given title"),tt({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=ES(c.bangumiId,s,c.source)||ES(c.animeId,s,c.source),l=null;if(u)l=Uve(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,e.origin);l=await(await Bve(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>c.typeDescription&&(c.typeDescription.includes("\u7535\u5F71")||c.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(h=>parseInt(h.episodeNumber)===f)}}d.length>0&&o.push(R9.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return R("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),tt({errorCode:0,success:!0,errorMessage:"",animes:o})}async function Bve(e,t=null,r=null){let n=e.split("/").pop(),s=yS(n,t,r)||ES(n);return s?tt(Uve(s,n)):(R("error",`[system] [Bangumi] Anime with ID ${n} not found`),tt({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function Uve(e,t=""){R("info",`[system] [Bangumi] Fetched details for anime ID: ${t||e.bangumiId}`);let r=[];for(let s=0;s!F.episodeTitleFilter.test(s.episodeTitle)),R("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${e.links.length}`),r.length===0)return R("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${t||e.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:C9.fromJson({animeId:e.animeId,bangumiId:e.bangumiId,animeTitle:e.animeTitle,imageUrl:e.imageUrl,isOnAir:!0,airDay:1,isFavorited:e.isFavorited,rating:e.rating,type:e.type,typeDescription:e.typeDescription,seasons:[{id:`season-${e.animeId}`,airDate:e.startDate,name:"Season 1",episodeCount:e.episodeCount}],episodes:r})}}async function eQr(e,t,r){let n=e.split(Bd),s=n.map(p=>{let m=p.indexOf(":");if(m===-1)return{realId:"",logicalSource:"",sourceLabel:""};let _=p.substring(0,m),g=p.substring(m+1),y=0,A=!1,E=g.match(/@%(-?\d+(?:\.\d+)?)$/);if(E)y=parseFloat(E[1]),A=!0,g=g.substring(0,g.length-E[0].length);else{let v=g.match(/@(-?\d+(?:\.\d+)?)$/);v&&(y=parseFloat(v[1]),g=g.substring(0,g.length-v[0].length))}return _!=="hanjutv"?{realId:g,logicalSource:_,sourceLabel:_,manualOffset:y,manualOffsetPercent:A}:{realId:g,logicalSource:"hanjutv",sourceLabel:Gq(g),manualOffset:y,manualOffsetPercent:A}}),i=s.map(p=>p.logicalSource).filter(Boolean),a=s.map(p=>p.realId),o=s.map(p=>p.sourceLabel).filter(Boolean).join("\uFF06");R("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=Fm(e);if(c)return R("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async p=>{let m=p.logicalSource,_=p.sourceLabel||p.logicalSource,g=p.realId;if(!m||!g)return[];let y=`${m}:${g}`;if(Xq.has(y)){R("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${y}`);try{return await Xq.get(y)||[]}catch{return[]}}let A=$e.run(Cs(m),async()=>{let E=null;if(m==="renren"?E=gk:m==="hanjutv"?E=_k:m==="bahamut"?E=TC:m==="dandan"?E=Ak:m==="tencent"?E=iE:m==="youku"?E=aE:m==="iqiyi"?E=oE:m==="imgo"?E=YS:m==="bilibili"?E=Fd:m==="migu"?E=cE:m==="sohu"?E=QS:m==="leshi"?E=WS:m==="xigua"?E=XS:m==="maiduidui"?E=JS:m==="aiyifan"?E=ZS:m==="animeko"&&(E=bC),E)try{let v=g;m==="bilibili"&&String(v).includes("b23.tv")&&(v=await Fd.resolveB23Link(v));let b=await E.getEpisodeDanmu(v,n),I=E.formatComments(b);if(R("info",`[${_}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),p.manualOffset&&I&&Array.isArray(I))if(p.manualOffsetPercent){let T=Math.max(...I.map(x=>parseFloat(String(x.p).split(",")[0])||0),0);I=oS(I,p.manualOffset,{usePercent:!0,videoDuration:T||1}),R("info",`[${_}] \u5E94\u7528\u767E\u5206\u6BD4\u504F\u79FB ${p.manualOffset}s (\u65F6\u957F=${T}s)`)}else I=oS(I,p.manualOffset),R("info",`[${_}] \u5E94\u7528\u624B\u52A8\u504F\u79FB ${p.manualOffset}s`);return I&&Array.isArray(I)&&I.forEach(T=>{T._sourceLabel||(T._sourceLabel=_)}),u[_]=I.length,I}catch(v){return R("error",`[Merge] \u83B7\u53D6 ${_} \u5931\u8D25: ${v.message}`),u[_]=0,[]}return[]});Xq.set(y,A);try{return await A}finally{Xq.delete(y)}}),d=await Promise.all(l);if(H1t(d,i,a),F.danmuOffsetRules?.length>0&&t&&r){let[,,p]=N9(r);if(p){let{baseTitle:m,season:_,episode:g}=Jle(t,p);_||=1,g||=w9(r)+1;let y=`S${_.toString().padStart(2,"0")}`,A=`E${g.toString().padStart(2,"0")}`;for(let E=0;E ${i[E]} (${m}/${y}/${A})${b?.usePercent?`, duration=${x}s`:""}`),d[E]=oS(v,I,{usePercent:b?.usePercent,videoDuration:x})}}}}let f=[];d.forEach(p=>{f=q1t(f,p)});let h=Object.entries(u).map(([p,m])=>`${p}: ${m}`).join(", ");return R("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${h})`),qP(f,o)}async function Fve(e,t,r,n,s=!1){let i=parseInt(e.split("/").pop()),a=zde(i),o=FP(i),c=Gde(i),u=c?VA(c):null,l=ZIt(t,s);if(R("info","[system] [LogVar-API] comment url...",o),R("info","[system] [LogVar-API] comment title...",c),R("info","[system] [LogVar-API] comment platform...",u),!o)return R("error",`[system] [LogVar-API] Comment with ID ${i} not found`),tt({count:0,comments:[]},404);R("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=Fm(o);if(d!==null){let I=Jq({count:d.length,comments:d},l?await Zq(o):null);return vS(I,t)}R("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],h=l?Zq(o):null,p=0,m=!1,_=o,g=o.match(/@%(-?\d+(?:\.\d+)?)$/);if(g)p=parseFloat(g[1]),m=!0,_=o.substring(0,o.length-g[0].length),R("info",`[system] [LogVar-API] \u68C0\u6D4B\u5230\u94FE\u63A5\u767E\u5206\u6BD4\u504F\u79FB: ${p}s`);else{let I=o.match(/@(-?\d+(?:\.\d+)?)$/);I&&(p=parseFloat(I[1]),_=o.substring(0,o.length-I[0].length),R("info",`[system] [LogVar-API] \u68C0\u6D4B\u5230\u94FE\u63A5\u504F\u79FB: ${p}s`))}if(o&&o.includes(Bd))f=await eQr(o,a,i);else{let I=_;if(o.includes(".qq.com"))f=await $e.run("tencent",()=>iE.getComments(I,u,r));else if(o.includes(".iqiyi.com"))f=await $e.run("iqiyi",()=>oE.getComments(I,u,r));else if(o.includes(".mgtv.com"))f=await $e.run("mango",()=>YS.getComments(I,u,r));else if(o.includes(".bilibili.com")||o.includes("b23.tv")){let x=I;x.includes("b23.tv")&&(x=await $e.run("bilibili",()=>Fd.resolveB23Link(x))),f=await $e.run("bilibili",()=>Fd.getComments(x,u,r))}else if(o.includes(".youku.com"))f=await $e.run("youku",()=>aE.getComments(I,u,r));else if(o.includes(".miguvideo.com"))f=await $e.run("migu",()=>cE.getComments(I,u,r));else if(o.includes(".sohu.com"))f=await $e.run("sohu",()=>QS.getComments(I,u,r));else if(o.includes(".le.com"))f=await $e.run("leshi",()=>WS.getComments(I,u,r));else if(o.includes(".douyin.com")||o.includes(".ixigua.com"))f=await $e.run("xigua",()=>XS.getComments(I,u,r));else if(o.includes(".mddcloud.com.cn"))f=await $e.run("maiduidui",()=>JS.getComments(I,u,r));else if(o.includes(".yfsp.tv"))f=await $e.run("aiyifan",()=>ZS.getComments(I,u,r));else if(/(?:bgm|bangumi)\.(?:tv|lol)\/ep\/|chii\.in\/ep\//.test(o)){let x=I.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);f=await $e.run("animeko",()=>bC.getComments(x?x[1]:I,u,r))}else if(o.includes("ani.gamer.com.tw")){let x=I.match(/sn=(\d+)/);f=await $e.run("bahamut",()=>TC.getComments(x?x[1]:I,u,r))}let T=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;T.test(o)||(u==="renren"?f=await $e.run("renren",()=>gk.getComments(o,u,r)):u==="hanjutv"?f=await $e.run("hanjutv",()=>_k.getComments(o,u,r)):u==="bahamut"?f=await $e.run("bahamut",()=>TC.getComments(o,u,r)):u==="dandan"?f=await $e.run("dandan",()=>Ak.getComments(o,u,r)):u==="custom"?f=await $e.run("custom",()=>nH.getComments(o,u,r)):u==="animeko"&&(f=await $e.run("animeko",()=>bC.getComments(o,u,r)))),(!f||f.length===0)&&T.test(o)&&(f=await $e.run("other",()=>Lve.getComments(o,"other_server",r)))}if(p!==0&&f&&Array.isArray(f)&&f.length>0)if(m){let I=Math.max(...f.map(T=>parseFloat(String(T.p).split(",")[0])||0),0);f=oS(f,p,{usePercent:!0,videoDuration:I||1}),R("info",`[system] [LogVar-API] \u5E94\u7528\u94FE\u63A5\u767E\u5206\u6BD4\u504F\u79FB ${p}s (\u65F6\u957F=${I}s)`)}else f=oS(f,p),R("info",`[system] [LogVar-API] \u5E94\u7528\u94FE\u63A5\u504F\u79FB ${p}s`);let[y,A,E,v]=N9(i);if(y&&A){let I=null,T=null,x=null;if(n){let D=Kde(n);D&&D.title&&D.season&&D.episode&&E&&(I=D.title,T=D.season,x=`${D.episode}:${E}`,R("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${D.episode}, Selected ${E} -> Offset ${x} (Season ${T})`))}R("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${I}; titleMatches\uFF1A${Xt(a,I)}`),(Xt(a,I)||Array.isArray(v)&&v.some(D=>Xt(D,I)))&&(R("info","[system] [LogVar-API] excute setPreferByAnimeId"),Qde(y,A,T,x)),F.localCacheValid&&y&&P9("lastSelectMap",JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.redisValid&&y&&Ude("lastSelectMap",F.lastSelectMap).catch(D=>R("error","[system] [LogVar-API] Redis set error",D)),F.localRedisValid&&y&&Bq("lastSelectMap",F.lastSelectMap)}if(a&&E&&F.danmuOffsetRules?.length>0&&!(o&&o.includes(Bd))){let{baseTitle:I,season:T,episode:x}=Jle(a,E);T||=1,x||=w9(i)+1;let w=`S${T.toString().padStart(2,"0")}`,D=`E${x.toString().padStart(2,"0")}`,M=Zle(F.danmuOffsetRules,{anime:I,season:w,episode:D,source:A}),L=M?.offset||0;if(L!==0){let U=M?.usePercent?await kve(o):0;R("info",`[system] [LogVar-API] Applying danmu offset: ${L}${M?.usePercent?"%":"s"} for ${I}/${w}/${D}${M?.usePercent?`, duration=${U}s`:""}`),f=oS(f,L,{usePercent:M?.usePercent,videoDuration:U})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&UP(o,f));let b=Jq({count:f.length,comments:f},h?await h:null);return vS(b,t)}async function $ve(e,t,r,n=!1){try{if(!e||typeof e!="string")return R("error","[system] [LogVar-API] Missing or invalid url parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(e=e.trim(),!e.startsWith("http"))return R("error","[system] [LogVar-API] Invalid url format, must start with http or https"),tt({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);R("info",`[system] [LogVar-API] Processing comment request for URL: ${e}`);let s=e,i=ZIt(t,n),a=Fm(s);if(a!==null){let l=Jq({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await Zq(s):null);return vS(l,t)}R("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?Zq(s):null;s.includes(".qq.com")?o=await $e.run("tencent",()=>iE.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await $e.run("iqiyi",()=>oE.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await $e.run("mango",()=>YS.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await $e.run("bilibili",()=>Fd.resolveB23Link(s))),o=await $e.run("bilibili",()=>Fd.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await $e.run("youku",()=>aE.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await $e.run("migu",()=>cE.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await $e.run("sohu",()=>QS.getComments(s,"sohu",r)):s.includes(".le.com")?o=await $e.run("leshi",()=>WS.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await $e.run("xigua",()=>XS.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await $e.run("maiduidui",()=>JS.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await $e.run("aiyifan",()=>ZS.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await $e.run("other",()=>Lve.getComments(s,"other_server",r))),R("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&UP(s,o);let u=Jq({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return vS(u,t)}catch(s){return R("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),tt({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function iRt(e,t){try{let r=e.url,n=e.type;if(!r||typeof r!="string")return R("error","[system] [SegmentComment] Missing or invalid url parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),R("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=Fm(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return vS(o,t)}R("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await $e.run("tencent",()=>iE.getSegmentComments(e)):n==="qiyi"?i=await $e.run("iqiyi",()=>oE.getSegmentComments(e)):n==="imgo"?i=await $e.run("mango",()=>YS.getSegmentComments(e)):n==="bilibili1"?i=await $e.run("bilibili",()=>Fd.getSegmentComments(e)):n==="youku"?i=await $e.run("youku",()=>aE.getSegmentComments(e)):n==="migu"?i=await $e.run("migu",()=>cE.getSegmentComments(e)):n==="sohu"?i=await $e.run("sohu",()=>QS.getSegmentComments(e)):n==="leshi"?i=await $e.run("leshi",()=>WS.getSegmentComments(e)):n==="xigua"?i=await $e.run("xigua",()=>XS.getSegmentComments(e)):n==="maiduidui"?i=await $e.run("maiduidui",()=>JS.getSegmentComments(e)):n==="aiyifan"?i=await $e.run("aiyifan",()=>ZS.getSegmentComments(e)):n==="hanjutv"?i=await $e.run("hanjutv",()=>_k.getSegmentComments(e)):n==="bahamut"?i=await $e.run("bahamut",()=>TC.getSegmentComments(e)):n==="renren"?i=await $e.run("renren",()=>gk.getSegmentComments(e)):n==="dandan"?i=await $e.run("dandan",()=>Ak.getSegmentComments(e)):n==="animeko"?i=await $e.run("animeko",()=>bC.getSegmentComments(e)):n==="custom"?i=await $e.run("custom",()=>nH.getSegmentComments(e)):n==="other_server"&&(i=await $e.run("other",()=>Lve.getSegmentComments(e))),R("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&UP(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return vS(a,t)}catch(r){return R("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),tt({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}var WIt,XIt,gk,_k,TC,Ak,nH,iE,aE,oE,YS,Fd,cE,QS,WS,XS,JS,ZS,bC,Lve,Mve,JIt,Xq,qve=ae(()=>{Qt();$r();jt();Fu();S9();GM();ii();XA();ede();ds();EC();V1t();yve();L9();cIt();uIt();yIt();vIt();SIt();bIt();Sve();IIt();RIt();Tve();bve();Ive();Rve();PIt();Cve();LIt();kIt();UIt();$It();jIt();KIt();GIt();Vi();WIt=new WM,XIt=new XM,gk=new rk,_k=new nk,TC=new HS,Ak=new sk,nH=new ik,iE=new VS,aE=new zS,oE=new jS,YS=new KS,Fd=new GS,cE=new DIt,QS=new uk,WS=new lk,XS=new BIt,JS=new FIt,ZS=new fk,bC=new pk,Lve=new mk,Mve=new ZM(iE,oE,aE,Fd,cE),JIt=new JM(Mve),Xq=new Map});function sH(e){let t=String(e||"").trim();if(!t)return"";if(F.animeTitleSimplified)try{t=yr(t)}catch{}return Lr(t.toLowerCase())}function aRt(e){let t=String(e||"").replace(/\D/g,"");return t.length>=8?t.slice(0,8):""}function iQr(e){let t=String(e||"");return tQr.forEach(([r,n])=>{t=t.replace(r,n)}),t}function cRt(e){let t=String(e||"");return rQr.forEach(([n,s],i)=>{t=t.replace(n,s)}),t.replace(/\s+/g," ").trim()}function oRt(e){if(!e)return null;let t=String(e);for(let{pattern:s,group:i,chinese:a}of nQr){let o=t.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=wh(c);if(u!==null&&!isNaN(u))return u}else{let u=parseInt(c,10);if(!isNaN(u)&&u>0&&u<1e4)return u}}}for(let{pattern:s,type:i}of sQr){let a=t.match(s);if(a){if(i==="ymd"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}else if(i==="ymd_compact"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}}}let r=cRt(e),n=Pm(r);return n!==null?n:null}function aQr(e){let t=String(e||"").trim();if(!t)return[];let r=[],n=a=>{let o=Lr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(t);let s=Lr(iQr(t)).trim();s&&s!==t&&n(s);let i=Lr(t.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==t&&n(i),r.sort((a,o)=>a.length-o.length)}function oQr(e){let t=new URL(e.url),r=t.pathname.replace(/\/+$/,""),n="/api/v2/",s="/danmaku",i="",a=r.indexOf(n);if(a>=0)i=r.slice(0,a);else{let o=r.indexOf(s);o>=0?i=r.slice(0,o):i=r}return`${t.origin}${i}`}async function cQr(e,t){if(t.method==="GET")return{name:e.searchParams.get("name")||"",episode:e.searchParams.get("episode")||""};try{let r=t.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){R("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function uQr(e,t,r,n){let s=Math.max(0,200-n),i=cRt(r),a=sH(i);if(!a)return s;let o=t?.episodeTitle||"",c=sH(o),u=sH(VA(o)),l=sH(e?.animeTitle||"");(c===a||u===a)&&(s+=1e4),(c.includes(a)||a.includes(c))&&(s+=4500),u&&(u.includes(a)||a.includes(u))&&(s+=2500);let d=oRt(i),f=oRt(o),h=parseInt(t?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(h)&&d===h&&(s+=4e3);let p=aRt(i),m=aRt(o);return p&&m&&p===m&&(s+=9e3),p&&a.includes(p)&&(s+=800),l.includes("\u7EFC\u827A")&&p&&m&&(s+=1200),l.includes("\u7EFC\u827A")&&p&&!m&&d===null&&(s-=1500),s}function lQr(e,t,r){let n=[];for(let s of e){let i=tT(s,t);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;F.enableAnimeEpisodeFilter&&(a=a.filter(o=>!F.episodeTitleFilter.test(o.episodeTitle))),a=eT(a),a.forEach((o,c)=>{let u=`${r}/api/v2/comment/${encodeURIComponent(o.episodeId)}?format=xml`;n.push({anime:s,episode:o,index:c,commentUrl:u})})}return n}async function Hve(e,t){let{name:r,episode:n}=await cQr(e,t);if(!r)return tt([],200);if(F.titleMappingTable&&F.titleMappingTable.size>0){let f=F.titleMappingTable.get(r);f&&(R("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(e.toString()),i=new Map,a=aQr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let p=await(await IC(s,null,null,i)).json();if(o=Array.isArray(p?.animes)?p.animes:[],o.length){f!==r&&R("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return R("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),tt([],200);let c=oQr(t),u=lQr(o,i,c).map(f=>({...f,score:uQr(f.anime,f.episode,n,f.index)})).sort((f,h)=>h.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return R("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),tt(d,200)}var tQr,rQr,nQr,sQr,uRt=ae(()=>{Qt();$r();jt();Fu();ds();qve();tQr=[[/[\(\[(【]\s*(19|20)\d{2}\s*[\)\])】]/g," "],[/\b(19|20)\d{2}\b/g," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps)\b/gi," "],[/[_.-]+/g," "]],rQr=[[/\[[^\]]*\]/g," "],[/[【((][^】))]*[】))]/g," "],[/\.(mp4|mkv|avi|rmvb|ts|flv|mov|m4v)$/gi," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps|aac|flac|dts)\b/gi," "],[/[_~.-]+/g," "]],nQr=[{pattern:/[Ss]\d{1,2}\s*[Ee](\d{1,4})/,group:1},{pattern:/第\s*([零一二三四五六七八九十百零〇两\d]+)\s*[集期话章回段篇]/,group:1,chinese:!0},{pattern:/[Ee][Pp]?\.?\s*(\d{1,4})/,group:1},{pattern:/[Ee](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/Episode\s*(\d{1,4})/i,group:1},{pattern:/(?:正在)?播放[::]\s*(\d{1,4})/,group:1},{pattern:/(?:第\s*)?[零一二三四五六七八九十百\d]+\s*季\s*[||]\s*(\d{1,4})/,group:1},{pattern:/[\[【\((](\d{1,4})[\]】\))]/,group:1},{pattern:/@@@(\d{1,4})/,group:1},{pattern:/(?:^|[\s_\-])(\d{1,4})x(?:[\s_\-]|$)/i,group:1},{pattern:/\s(\d{1,4})\.(?:mp4|mkv|avi|mov|mp3|1080|720|4k|2k)/i,group:1},{pattern:/[_\-](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/\s(\d{1,4})\s/,group:1},{pattern:/\s(\d{1,4})$/,group:1},{pattern:/^(\d{1,4})\s/,group:1},{pattern:/(\d{1,4})(?:\s|$)$/,group:1}],sQr=[{pattern:/(\d{4})[.\-\/年](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}]});var lRt,dRt=ae(()=>{lRt=` -/* \u57FA\u7840\u6837\u5F0F */ -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body { - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; - background: linear-gradient(135deg, #a0b9e8ff 0%, #e39db4ff 100%); - min-height: 100vh; - padding: 5px; -} - -.container { - max-width: 1200px; - margin: 0 auto; - background: white; - border-radius: 12px; - box-shadow: 0 20px 60px rgba(0,0,0,0.3); - overflow: hidden; -} - -.header { - background: linear-gradient(135deg, #1a2980 0%, #26d0ce 100%); - color: white; - padding: 15px; - display: flex; - justify-content: space-between; - align-items: center; - flex-wrap: wrap; - gap: 15px; -} - -.header-left { - display: flex; - flex-direction: column; - align-items: flex-start; - gap: 15px; - flex-wrap: wrap; -} - -.logo-title-container { - display: flex; - align-items: center; - gap: 15px; -} - -.logo { - width: 50px; - height: 50px; - background: white; - border-radius: 12px; - display: flex; - align-items: center; - justify-content: center; - font-size: 28px; - box-shadow: 0 4px 12px rgba(0,0,0,0.2); - overflow: hidden; /* \u5173\u952E\uFF1A\u9632\u6B62\u6EA2\u51FA */ -} - -.logo img { - width: 100%; /* \u6216 90% \u7559\u70B9\u5185\u8FB9\u8DDD\u66F4\u597D\u770B */ - height: 100%; - object-fit: cover; /* \u56FE\u7247\u4F1A\u88AB\u88C1\u526A\u6210\u6B63\u65B9\u5F62\uFF0C\u5145\u6EE1\u5BB9\u5668 */ - /* object-fit: contain; /* \u5982\u679C\u60F3\u5B8C\u6574\u663E\u793A\u56FE\u7247\uFF08\u4F1A\u7559\u767D\uFF09\u5C31\u7528\u8FD9\u4E2A */ - border-radius: 12px; /* \u8BA9\u56FE\u7247\u4E5F\u8DDF\u968F\u5706\u89D2 */ -} - -.header h1 { - font-size: 24px; - margin: 0; -} - -.version-info { - display: flex; - align-items: center; - gap: 10px; - font-size: 13px; - opacity: 0.95; -} - -.version-badge { - background: rgba(255,255,255,0.2); - padding: 3px 10px; - border-radius: 12px; - font-weight: 500; -} - -.update-badge { - background: #ffd700; - color: #333; - padding: 3px 10px; - border-radius: 12px; - font-weight: 500; - animation: pulse 2s infinite; - cursor: pointer; -} - -@keyframes pulse { - 0%, 100% { opacity: 1; } - 50% { opacity: 0.7; } -} - -.content { - padding: 15px; -} - -.section { - display: none; -} - -.section.active { - display: block; - animation: fadeIn 0.3s; -} - -@keyframes fadeIn { - from { opacity: 0; transform: translateY(10px); } - to { opacity: 1; transform: translateY(0); } -} - -/* footer \u6837\u5F0F */ -.footer { - padding: 20px; - background: transparent; - text-align: center; - font-size: 14px; -} - -/* footer \u6587\u5B57\u6837\u5F0F */ -.footer-text { - color: #ffeb3b; - margin: 10px 0; -} - -/* footer \u94FE\u63A5\u6837\u5F0F */ -.footer-links { - margin: 10px 0; -} - -.footer-link { - margin: 0 10px; - text-decoration: none; - color: #ffc107; -} - -.footer-link:hover { - color: #ffeb3b; /* \u53EF\u9009\uFF0C\u589E\u52A0 hover \u6548\u679C */ -} - -/* GitHub \u94FE\u63A5\u7279\u5B9A\u6837\u5F0F */ -.github-link { - display: inline-flex; - align-items: center; -} - -.github-icon { - width: 14px; - vertical-align: middle; - margin-right: 5px; -} -`});var fRt,hRt=ae(()=>{fRt=` -/* \u7EC4\u4EF6\u6837\u5F0F */ -.nav-buttons { - display: flex; - gap: 10px; - flex-wrap: wrap; -} - -.nav-btn { - padding: 8px 16px; - background: rgba(255,255,255,0.2); - border: 1px solid rgba(255,255,255,0.3); - color: white; - border-radius: 6px; - cursor: pointer; - transition: all 0.3s; - font-size: 14px; -} - -.nav-btn:hover { - background: rgba(255,255,255,0.3); -} - -.nav-btn.active { - background: white; - color: #1a2980; - font-weight: bold; -} - -/* \u73AF\u5883\u53D8\u91CF\u6837\u5F0F */ -.env-categories { - display: flex; - gap: 10px; - margin-bottom: 20px; - flex-wrap: wrap; -} - -.category-btn { - padding: 10px 20px; - background: #f0f0f0; - border: 2px solid transparent; - border-radius: 6px; - cursor: pointer; - transition: all 0.3s; -} - -.category-btn.active { - background: #667eea; - color: white; - border-color: #667eea; -} - -.env-list { - margin-bottom: 20px; -} - -.env-item { - background: #f8f9fa; - padding: 15px; - margin-bottom: 10px; - border-radius: 8px; - display: flex; - justify-content: space-between; - align-items: center; - flex-wrap: wrap; - gap: 10px; -} - -.env-item .env-info { - flex: 1; - min-width: 200px; - word-break: break-word; - overflow-wrap: break-word; - word-wrap: break-word; -} - -.env-item .env-info strong { - color: #667eea; - display: block; - margin-bottom: 5px; - word-break: break-all; -} - -.env-item .env-info > div.text-dark-gray { - word-break: break-all; - white-space: normal; - background-color: #f1f3f5; - padding: 8px; - border-radius: 4px; - font-family: monospace; - margin-bottom: 5px; -} - -.env-item .env-info span { - word-break: break-all; - white-space: normal; -} - -.env-item .env-actions { - display: flex; - gap: 8px; - flex-shrink: 0; -} - -.env-info { - flex: 1; - min-width: 200px; -} - -.env-info strong { - color: #667eea; - display: block; - margin-bottom: 5px; -} - -.env-actions { - display: flex; - gap: 8px; -} - -/* \u6309\u94AE\u6837\u5F0F */ -.btn { - padding: 8px 16px; - border: none; - border-radius: 6px; - cursor: pointer; - font-size: 14px; - transition: all 0.3s; -} - -.btn-primary { - background: #667eea; - color: white; -} - -.btn-primary:hover { - background: #5568d3; -} - -.btn-success { - background: #28a745; - color: white; - position: relative; - overflow: hidden; -} - -.btn-success:hover { - background: #218838; -} - -.btn-success::before { - content: ''; - position: absolute; - top: 50%; - left: 50%; - width: 0; - height: 0; - border-radius: 50%; - background: rgba(255,255,255,0.3); - transform: translate(-50%, -50%); - transition: width 0.6s, height 0.6s; -} - -.btn-success:active::before { - width: 300px; - height: 300px; -} - -.btn-danger { - background: #dc3545; - color: white; -} - -.btn-danger:hover { - background: #c82333; -} - -/* \u9884\u89C8\u533A\u57DF */ -.preview-area { - background: #f8f9fa; - padding: 20px; - border-radius: 8px; - margin-top: 20px; -} - -.preview-item { - padding: 10px; - background: white; - margin-bottom: 8px; - border-radius: 6px; - border-left: 4px solid #667eea; - word-break: break-word; - overflow-wrap: break-word; - word-wrap: break-word; -} - -.preview-item .preview-item-content { - display: flex; - flex-direction: column; - align-items: flex-start; - gap: 5px; -} - -.preview-item .preview-key { - font-weight: bold; - color: #67eea; - align-self: flex-start; -} - -.preview-item .preview-value { - word-break: break-all; - white-space: normal; - width: 100%; - background-color: #f8f9fa; - padding: 8px; - border-radius: 4px; - font-family: monospace; - color: #333; /* \u66F4\u9ED1\u7684\u5B57\u4F53\u989C\u8272 */ - font-weight: bold; /* \u52A0\u7C97\u663E\u793A */ -} - -/* \u65E5\u5FD7\u6837\u5F0F */ -.log-controls { - display: flex; - justify-content: space-between; - align-items: center; - margin-bottom: 15px; - flex-wrap: wrap; - gap: 10px; -} - -@keyframes pulse { - 0% { box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.5); } - 70% { box-shadow: 0 0 0 10px rgba(40, 167, 69, 0); } - 100% { box-shadow: 0 0 0 0 rgba(40, 167, 69, 0); } -} - -.log-container { - background: #1e1e1e; - color: #d4d4d4; - padding: 15px; - border-radius: 8px; - max-height: 500px; - overflow-y: auto; - font-family: 'Courier New', monospace; - font-size: 13px; - line-height: 1.6; -} - -.log-entry { - margin-bottom: 8px; - padding: 5px; - border-radius: 4px; -} - -.log-entry.info { color: #4fc3f7; } -.log-entry.warn { color: #ffb74d; } -.log-entry.error { color: #e57373; } -.log-entry.success { color: #81c784; } - - - -/* \u65E5\u5FD7\u8FC7\u6EE4\u4EA4\u4E92\u9762\u677F\u53CA\u6807\u7B7E\u6837\u5F0F */ -.log-filters-container { - display: flex; - flex-wrap: wrap; - gap: 8px; - margin-bottom: 10px; -} - -.filter-btn { - background: transparent; - color: #888; - border: 1px solid #555; - padding: 4px 14px; - border-radius: 20px; - font-size: 12px; - cursor: pointer; - transition: all 0.3s; - text-transform: capitalize; -} - -.filter-btn:hover { - border-color: #999; - background: rgba(255, 255, 255, 0.05); -} - -.filter-btn.active { - background: rgba(191, 161, 255, 0.1); - color: #bfa1ff; - border-color: #bfa1ff; - text-shadow: 0.3px 0 0 currentColor, -0.3px 0 0 currentColor; -} - -.log-tag { - color: #bfa1ff; - font-weight: bold; - margin-right: 4px; - display: inline-block; -} - -.log-entry.error .log-tag { - color: #ffb74d; -} - - - -/* \u8868\u5355\u5E2E\u52A9\u6587\u672C */ -.form-help { - font-size: 12px; - color: #666; - margin-top: 5px; - font-style: italic; -} - -/* API\u8C03\u8BD5\u6837\u5F0F */ -.api-selector { - margin-bottom: 20px; -} - -.api-params { - background: #f8f9fa; - padding: 20px; - border-radius: 8px; - margin-bottom: 20px; -} - -.api-response { - background: #1e1e1e; - color: #d4d4d4; - padding: 15px; - border-radius: 8px; - max-height: 400px; - overflow-y: auto; - font-family: 'Courier New', monospace; - font-size: 13px; - white-space: pre-wrap; -} - -/* XML\u54CD\u5E94\u6837\u5F0F */ -.api-response.xml { - color: #88ccff; -} - -/* JSON\u9AD8\u4EAE\u6837\u5F0F */ -.json-response { - background: #1e1e1e; - color: #d4d4d4; - padding: 15px; - border-radius: 8px; - max-height: 400px; - overflow-y: auto; - font-family: 'Courier New', monospace; - font-size: 13px; - white-space: pre-wrap; -} - -.json-response .key { - color: #9cdcfe; -} - -.json-response .string { - color: #ce9178; -} - -.json-response .number { - color: #b5cea8; -} - -.json-response .boolean { - color: #569cd6; -} - -.json-response .null { - color: #569cd6; -} - -.json-response .undefined { - color: #569cd6; -} - -.error-response { - background: #1e1e1e; - color: #d4d4d4; - padding: 15px; - border-radius: 8px; - max-height: 400px; - overflow-y: auto; - font-family: 'Courier New', monospace; - font-size: 13px; - white-space: pre-wrap; - border-left: 4px solid #dc3545; -} - -/* \u6A21\u6001\u6846 */ -.modal { - display: none; - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - background: rgba(0,0,0,0.5); - z-index: 1000; - padding: 20px; - overflow-y: auto; -} - -.modal.active { - display: flex; - justify-content: center; - align-items: center; -} - -.modal-content { - background: white; - padding: 30px; - border-radius: 12px; - max-width: 600px; - width: 100%; - max-height: calc(100vh - 40px); - overflow-y: auto; - box-shadow: 0 10px 40px rgba(0,0,0,0.3); - position: relative; - top: 0; - left: 0; -} - -.modal-header { - display: flex; - justify-content: space-between; - align-items: center; - margin-bottom: 25px; - padding-bottom: 15px; - border-bottom: 1px solid #eee; -} - -.modal-header h3 { - color: #667eea; - margin: 0; -} - -.modal-body { - margin-bottom: 25px; -} - -.modal-footer { - display: flex; - justify-content: flex-end; - gap: 10px; - padding-top: 15px; - border-top: 1px solid #eee; -} - -.confirmation-list { - padding-left: 20px; - margin: 0; - list-style: none; -} - -.confirmation-list li { - position: relative; - padding-left: 10px; - margin: 8px 0; -} - -.confirmation-list li::before { - content: "\u2022"; - position: absolute; - left: 0; - color: #667eea; - font-size: 16px; -} - -.warning-box { - background: #fff3cd; - border-left: 4px solid #ffc107; - padding: 15px; - border-radius: 6px; - margin-top: 15px; - margin-bottom: 20px; -} - -.modal-header { - display: flex; - justify-content: space-between; - align-items: center; - margin-bottom: 25px; - padding-bottom: 15px; - border-bottom: 1px solid #eee; -} - -.modal-header h3 { - color: #667eea; - margin: 0; -} - -.close-btn { - background: none; - border: none; - font-size: 24px; - cursor: pointer; - color: #999; -} - -.close-btn:hover { - color: #333; -} - -/* \u503C\u7C7B\u578B\u6807\u8BC6 */ -.value-type-badge { - display: inline-block; - padding: 2px 8px; - background: #667eea; - color: white; - border-radius: 12px; - font-size: 11px; - margin-left: 8px; -} - -/* \u786E\u8BA4\u6A21\u6001\u6846\u6837\u5F0F */ -.confirmation-list { - padding-left: 20px; - margin: 0; - list-style: none; -} - -.confirmation-list li { - position: relative; - padding-left: 10px; - margin: 8px 0; -} - -.confirmation-list li::before { - content: "\u2022"; - position: absolute; - left: 0; - color: #667eea; - font-size: 16px; -} - -.warning-box { - background: #fff3cd; - border-left: 4px solid #ffc107; - padding: 15px; - border-radius: 6px; - margin-top: 15px; - margin-bottom: 20px; -} - -.modal-footer { - display: flex; - justify-content: flex-end; - gap: 10px; - margin-top: 25px; - padding-top: 15px; - border-top: 1px solid #eee; -} - -.value-type-badge.multi { - background: #ff6b6b; -} - -.value-type-badge.map { - background: #9b59b6; -} - -/* \u8FDB\u5EA6\u6761 */ -.progress-container { - position: fixed; - top: 0; - left: 0; - right: 0; - height: 4px; - background: rgba(0,0,0,0.1); - z-index: 9999; - display: none; -} - -.progress-container.active { - display: block; -} - -.progress-bar { - height: 100%; - background: linear-gradient(90deg, #667eea, #764ba2); - width: 0; - transition: width 0.3s; - box-shadow: 0 0 10px rgba(102, 126, 234, 0.5); -} - -/* \u52A0\u8F7D\u63D0\u793A */ -.loading-overlay { - position: fixed; - top: 0; - left: 0; - right: 0; - bottom: 0; - background: rgba(0,0,0,0.7); - display: none; - justify-content: center; - align-items: center; - z-index: 9998; -} - -.loading-overlay.active { - display: flex; -} - -.loading-content { - background: white; - padding: 40px; - border-radius: 12px; - text-align: center; - box-shadow: 0 20px 60px rgba(0,0,0,0.3); - max-width: 400px; -} - -.loading-spinner { - width: 60px; - height: 60px; - border: 5px solid #f3f3f3; - border-top: 5px solid #667eea; - border-radius: 50%; - animation: spin 1s linear infinite; - margin: 0 auto 20px; -} - -.loading-spinner-small { - display: inline-block; - width: 14px; - height: 14px; - border: 2px solid #ffffff; - border-top: 2px solid #667eea; - border-radius: 50%; - animation: spin 1s linear infinite; - margin-right: 8px; - vertical-align: middle; -} - -@keyframes spin { - 0% { transform: rotate(0deg); } - 100% { transform: rotate(360deg); } -} - -.loading-text { - font-size: 18px; - color: #333; - font-weight: 500; - margin-bottom: 10px; -} - -.loading-detail { - font-size: 14px; - color: #666; -} - -/* \u901A\u7528\u5185\u8054\u6837\u5F0F\u7C7B */ -.text-center { - text-align: center; -} - -.text-gray { - color: #bbb; /* \u66F4\u6DE1\u7684\u5B57\u4F53\u989C\u8272 */ -} - -.text-red { - color: #e74c3c; -} - -.text-dark-gray { - color: #333; /* \u66F4\u9ED1\u7684\u5B57\u4F53\u989C\u8272 */ - font-weight: bold; /* \u52A0\u7C97\u663E\u793A */ -} - -.text-purple { - color: #67eea; -} - -.text-yellow-gold { - color: #ffd700; -} - -.padding-20 { - padding: 20px; -} - -.margin-bottom-10 { - margin-bottom: 10px; -} - -.margin-top-3 { - margin-top: 3px; -} - -.margin-top-15 { - margin-top: 15px; -} - -.font-size-12 { - font-size: 12px; -} - -.margin-bottom-15 { - margin-bottom: 15px; -} - -.text-monospace { - font-family: monospace; -} - -/* \u63A8\u9001\u5F39\u5E55\u76F8\u5173\u6837\u5F0F */ -.anime-grid { - display: grid; - grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); - gap: 10px; - margin-top: 15px; -} - -.anime-item { - border: 1px solid #ddd; - border-radius: 8px; - padding: 8px; - text-align: center; - cursor: pointer; -} - -.anime-item-img { - width: 100%; - height: 150px; - object-fit: cover; - border-radius: 4px; -} - -.anime-title { - margin: 8px 0 5px; - font-size: 12px; - word-break: normal; /* \u4FDD\u6301\u6B63\u5E38\u7684\u5355\u8BCD\u6362\u884C\u89C4\u5219\uFF0C\u4F18\u5148\u5728\u7A7A\u683C\u5904\u65AD\u53E5\u4EE5\u4FDD\u8BC1\u53EF\u8BFB\u6027 */ - overflow-wrap: break-word; /* \u5F53\u957F\u5B57\u7B26\u4E32\uFF08\u5982\u591A\u6E90\u5408\u5E76\u540E\u7F00\uFF09\u8D85\u51FA\u5BB9\u5668\u65F6\uFF0C\u5141\u8BB8\u5728\u5176\u5185\u90E8\u5F3A\u5236\u6362\u884C */ - display: -webkit-box; /* \u542F\u7528 WebKit \u7279\u6709\u7684\u5F39\u6027\u4F38\u7F29\u76D2\u6A21\u578B */ - -webkit-line-clamp: 5; /* \u9650\u5236\u6587\u672C\u5757\u6700\u591A\u663E\u793A\u7684\u884C\u6570\u4E3A5\u884C */ - -webkit-box-orient: vertical; /* \u8BBE\u7F6E\u5F39\u6027\u76D2\u5B50\u7684\u5B50\u5143\u7D20\u5782\u76F4\u6392\u5217 */ - overflow: hidden; /* \u9690\u85CF\u8D85\u51FA\u5BB9\u5668\u8BBE\u5B9A\u9AD8\u5EA6\u8303\u56F4\u7684\u6587\u672C\u5185\u5BB9 */ - text-overflow: ellipsis; /* \u6587\u672C\u6EA2\u51FA\u65F6\u4F7F\u7528\u7701\u7565\u53F7(...)\u8FDB\u884C\u622A\u65AD\u5C55\u793A */ -} - -.episode-list-container { - max-height: 400px; - overflow-y: auto; -} - -.episode-item { - padding: 10px; - border-bottom: 1px solid #eee; -} - -.episode-item-content { - display: inline-block; - width: calc(100% - 100px); - vertical-align: middle; -} - -.episode-push-btn { - width: 80px; - display: inline-block; - margin-left: 10px; -} - -/* Bilibili Cookie \u7F16\u8F91\u5668\u6837\u5F0F */ -.bili-cookie-editor { - display: flex; - flex-direction: column; - gap: 15px; -} - -.bili-cookie-status { - background: #f8f9fa; - padding: 12px; - border-radius: 6px; - display: flex; - align-items: center; - gap: 10px; - border-left: 4px solid #667eea; -} - -.bili-status-icon { - font-size: 18px; -} - -.bili-status-text { - flex: 1; - font-weight: 500; -} - -.bili-cookie-actions { - display: flex; - gap: 10px; -} - -.btn-sm { - padding: 6px 12px; - font-size: 13px; -} - -/* \u79FB\u52A8\u7AEF\u9002\u914D */ -@media (max-width: 768px) { - .bili-cookie-actions { - flex-direction: column; - } - - .bili-cookie-actions .btn { - width: 100%; - } -} - -/* \u591A\u9009\u6807\u7B7E\u4E0E\u5408\u5E76\u6A21\u5F0F\u76F8\u5173\u6837\u5F0F */ -.selected-tag { - display: inline-flex; - align-items: center; - gap: 8px; - background: #667eea; - color: white; - padding: 8px 12px; - border-radius: 20px; - cursor: move; - user-select: none; - transition: all 0.3s; - box-shadow: 0 2px 4px rgba(0,0,0,0.1); - - max-width: 100%; - height: auto; - white-space: normal; - word-break: break-all; - line-height: 1.4; -} - -.merge-mode-controls { - display: flex; - align-items: center; - gap: 10px; - margin: 10px 0; -} - -.merge-mode-btn { - padding: 6px 12px; - background: #f8f9fa; - border: 1px solid #ddd; - border-radius: 20px; - cursor: pointer; - font-size: 13px; - display: flex; - align-items: center; - gap: 5px; - transition: all 0.3s; - color: #666; -} - -.merge-mode-btn.active { - background: #e3f2fd; - border-color: #2196f3; - color: #2196f3; - font-weight: 500; -} - -.staging-area { - display: none; - background: #e3f2fd; - border: 2px dashed #90caf9; - border-radius: 8px; - padding: 10px; - margin-bottom: 15px; - flex-wrap: wrap; - gap: 8px; - align-items: center; - min-height: 52px; - position: relative; - transition: all 0.3s; -} - -.staging-area.active { - display: flex; - animation: slideDown 0.3s; -} - -@keyframes slideDown { - from { opacity: 0; transform: translateY(-10px); } - to { opacity: 1; transform: translateY(0); } -} - -.staging-area::before { - content: '\u5408\u5E76\u7EC4\u6682\u5B58\u533A:'; - color: #1976d2; - font-size: 12px; - font-weight: bold; - margin-right: 5px; -} - -.staging-tag { - background: white; - color: #1976d2; - border: 1px solid #bbdefb; - padding: 4px 10px; - border-radius: 15px; - font-size: 13px; - display: flex; - align-items: center; - gap: 5px; - cursor: move; - user-select: none; - max-width: 100%; - word-break: break-all; -} - -.staging-tag.drag-over { - background: #bbdefb; - border-color: #2196f3; - transform: scale(1.05); -} - -.staging-tag.dragging { - opacity: 0.5; - transform: scale(0.95); - background: #e3f2fd; -} - -.staging-tag .remove-btn { - color: #ef5350; - cursor: pointer; - font-weight: bold; - font-size: 14px; -} - -.staging-separator { - color: #999; - font-weight: bold; -} - -.confirm-merge-btn { - margin-left: auto; - background: #4caf50; - color: white; - border: none; - border-radius: 50%; - width: 28px; - height: 28px; - display: flex; - align-items: center; - justify-content: center; - cursor: pointer; - box-shadow: 0 2px 5px rgba(0,0,0,0.2); - transition: all 0.2s; -} - -.confirm-merge-btn:hover { - background: #43a047; - transform: scale(1.1); -} - -.confirm-merge-btn:disabled { - background: #ccc; - cursor: not-allowed; - transform: none; -} - -.available-tags { - display: flex; - flex-wrap: wrap; - gap: 8px; - margin-top: 10px; -} - -.available-tag { - padding: 6px 12px; - background: #fff; - border: 1px solid #ddd; - border-radius: 4px; - cursor: pointer; - transition: all 0.2s; - user-select: none; -} - -.available-tag:hover { - background: #f0f0f0; - border-color: #bbb; -} - -.available-tag.disabled { - opacity: 0.5; - cursor: not-allowed; - background: #f5f5f5; - color: #aaa; - pointer-events: none; - border-color: #eee; - box-shadow: none; -} - -/* \u8BF7\u6C42\u8BB0\u5F55\u6837\u5F0F */ -.request-records-container { - border-radius: 8px; -} - -.no-records { - text-align: center; - color: #fff; - padding: 60px; - font-style: italic; - font-size: 16px; -} - -.record-item { - background: linear-gradient(145deg, #ffffff 0%, #f8f9fa 100%); - border: none; - border-radius: 16px; - padding: 10px; - margin-bottom: 10px; - box-shadow: 0 8px 32px rgba(0,0,0,0.15); - transition: transform 0.2s, box-shadow 0.2s; -} - -.record-item:hover { - transform: translateY(-2px); - box-shadow: 0 12px 40px rgba(0,0,0,0.2); -} - -.record-header { - display: flex; - justify-content: flex-start; - align-items: center; - margin-bottom: 15px; - flex-wrap: wrap; - gap: 15px; -} - -.record-method { - background: linear-gradient(135deg, #00b4db 0%, #0083b0 100%); - color: white; - padding: 8px 16px; - border-radius: 10px; - font-size: 14px; - font-weight: bold; - min-width: 60px; - text-align: center; - box-shadow: 0 4px 15px rgba(0,180,219,0.3); -} - -.record-interface { - flex: 1; - font-family: 'Courier New', monospace; - font-weight: 600; - color: #2d3748; - word-break: break-all; - font-size: 15px; - background: #edf2f7; - padding: 8px 16px; - border-radius: 8px; -} - -.record-ip { - background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); - color: white; - padding: 8px 16px; - border-radius: 10px; - font-size: 13px; - min-width: 120px; - text-align: center; - font-weight: 500; - box-shadow: 0 4px 15px rgba(245,87,108,0.3); -} - -.record-timestamp { - color: #718096; - font-size: 14px; - margin-bottom: 15px; - padding-bottom: 15px; - border-bottom: 2px dashed #e2e8f0; - display: flex; - align-items: center; - gap: 8px; -} - -.record-timestamp.no-params { - border-bottom: none; - margin-bottom: 0; - padding-bottom: 0; -} - -.record-timestamp::before { - content: '\u{1F550}'; - font-size: 16px; -} - -.record-params { - background: #f5f5f5; - border-radius: 12px; - padding: 15px; - border: 1px solid #e0e0e0; -} - -.record-params-title { - color: #667eea; - font-weight: 600; - font-size: 14px; - margin-bottom: 12px; - display: flex; - align-items: center; - gap: 8px; -} - -.record-params-title::before { - content: '\u{1F4CB}'; - font-size: 16px; -} - -.record-params pre { - margin: 0; - padding: 15px; - background: #ffffff; - color: #333; - border-radius: 8px; - font-family: 'Courier New', monospace; - font-size: 13px; - white-space: pre-wrap; - word-wrap: break-word; - overflow-x: auto; - line-height: 1.6; - border: 1px solid #ddd; -} - -/* \u8BF7\u6C42\u8BB0\u5F55\u79FB\u52A8\u7AEF\u9002\u914D */ -@media (max-width: 768px) { - .record-header { - flex-direction: column; - align-items: stretch; - } - - .record-method, - .record-interface, - .record-ip { - width: 100%; - box-sizing: border-box; - } -} - -/* ===================== */ -/* \u5F39\u5E55\u6D4B\u8BD5\u76F8\u5173\u6837\u5F0F */ -/* ===================== */ - -/* \u9876\u7EA7\u6807\u7B7E\u9875 */ -.api-top-tabs { - display: flex; - gap: 0; - margin-bottom: 20px; - border-bottom: 2px solid #e0e0e0; -} - -.api-top-tab { - padding: 10px 24px; - background: none; - border: none; - border-bottom: 3px solid transparent; - cursor: pointer; - font-size: 15px; - font-weight: 500; - color: #666; - transition: all 0.3s; - margin-bottom: -2px; -} - -.api-top-tab:hover { - color: #667eea; -} - -.api-top-tab.active { - color: #667eea; - border-bottom-color: #667eea; - font-weight: bold; -} - -.api-tab-content { - display: none; -} - -.api-tab-content.active { - display: block; -} - -/* \u5F39\u5E55\u6D4B\u8BD5\u5B50\u6807\u7B7E */ -.danmu-test-tabs { - display: flex; - gap: 10px; - margin-bottom: 20px; -} - -.danmu-test-tab { - padding: 8px 20px; - background: #f0f0f0; - border: 2px solid transparent; - border-radius: 20px; - cursor: pointer; - font-size: 14px; - font-weight: 500; - transition: all 0.3s; - color: #555; -} - -.danmu-test-tab:hover { - background: #e0e0e0; -} - -.danmu-test-tab.active { - background: #667eea; - color: white; - border-color: #667eea; -} - -.danmu-test-panel { - display: none; -} - -.danmu-test-panel.active { - display: block; -} - -/* \u5F39\u5E55\u7EDF\u8BA1\u5361\u7247 */ -.danmu-stats { - margin-bottom: 15px; -} - -.danmu-stats-title { - font-size: 16px; - font-weight: bold; - color: #667eea; - margin-bottom: 12px; - padding-bottom: 8px; - border-bottom: 1px solid #eee; -} - -.danmu-stats-grid { - display: grid; - grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); - gap: 12px; -} - -.danmu-stat-card { - background: #f8f9fa; - border-radius: 10px; - padding: 15px; - text-align: center; - border: 1px solid #eee; - transition: transform 0.2s; -} - -.danmu-stat-card:hover { - transform: translateY(-2px); - box-shadow: 0 4px 12px rgba(0,0,0,0.08); -} - -.stat-value { - font-size: 20px; - font-weight: bold; - color: #333; - margin-bottom: 4px; - word-break: break-all; -} - -.stat-label { - font-size: 12px; - color: #999; -} - -.danmu-result-error { - margin-bottom: 15px; - background: #fff8f8; - border: 1px solid #ffcdd2; - color: #c62828; - border-radius: 10px; - padding: 12px 15px; - font-size: 13px; -} - -/* \u5F39\u5E55\u70ED\u529B\u56FE */ -.danmu-heatmap-container { - margin-bottom: 15px; - background: #f8f9fa; - border-radius: 10px; - padding: 15px; -} - -.danmu-section-title { - margin: 0 0 10px; - font-size: 15px; -} - -.danmu-section-title-spaced { - margin-top: 15px; -} - -.danmu-empty-text { - color: #999; -} - -.danmu-empty-list { - text-align: center; - padding: 20px; -} - -.heatmap-bars { - display: flex; - align-items: flex-end; - gap: 2px; - height: 100px; - padding: 0 2px; -} - -.danmu-heatmap-interactive { - position: relative; - padding-top: 34px; - touch-action: pan-y; - user-select: none; -} - -.danmu-heatmap-tooltip { - position: absolute; - top: 0; - left: 0; - transform: translateX(-50%) translateY(-4px); - display: flex; - align-items: baseline; - gap: 4px; - padding: 5px 9px; - border-radius: 999px; - background: rgba(51, 51, 51, 0.92); - color: white; - font-size: 12px; - line-height: 1.2; - white-space: nowrap; - opacity: 0; - pointer-events: none; - transition: opacity 0.12s ease, transform 0.12s ease; - z-index: 2; -} - -.danmu-heatmap-tooltip.active { - opacity: 1; - transform: translateX(-50%) translateY(0); -} - -.danmu-heatmap-tooltip strong { - font-size: 15px; -} - -.danmu-heatmap-tooltip em { - color: rgba(255,255,255,0.72); - font-style: normal; - margin-left: 3px; -} - -.danmu-heatmap-indicator { - position: absolute; - top: 34px; - bottom: 0; - width: 2px; - transform: translateX(-50%); - border-radius: 999px; - background: rgba(102, 126, 234, 0.88); - box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.14); - opacity: 0; - pointer-events: none; - transition: opacity 0.12s ease; - z-index: 1; -} - -.danmu-heatmap-indicator.active { - opacity: 1; -} - -.heatmap-bar { - flex: 1; - min-width: 3px; - height: var(--heatmap-height, 2%); - background: var(--heatmap-color, #667eea); - border-radius: 2px 2px 0 0; - transition: opacity 0.2s, transform 0.12s ease, box-shadow 0.12s ease; - cursor: pointer; -} - -.heatmap-bar.active { - opacity: 0.95; - transform: translateY(-2px); - box-shadow: 0 0 0 2px rgba(102, 126, 234, 0.24); -} - -.heatmap-bar:hover { - opacity: 0.8; -} - -.heatmap-axis { - display: flex; - justify-content: space-between; - margin-top: 6px; - font-size: 11px; - color: #999; -} - -/* \u5F39\u5E55\u8FC7\u6EE4\u6807\u7B7E */ -.danmu-filter-tabs { - display: flex; - flex-wrap: nowrap; - gap: 8px; - margin-bottom: 12px; - overflow-x: auto; - overflow-y: hidden; - padding-bottom: 2px; - -webkit-overflow-scrolling: touch; - scrollbar-width: none; -} - -.danmu-filter-tabs::-webkit-scrollbar { - display: none; -} - -.danmu-filter-tab { - flex: 0 0 auto; - display: inline-flex; - align-items: center; - gap: 6px; - white-space: nowrap; - padding: 6px 12px; - background: #f0f0f0; - border: 1px solid #ddd; - border-radius: 15px; - cursor: pointer; - font-size: 13px; - transition: all 0.2s; - color: #555; -} - -.danmu-filter-tab:hover { - background: #e0e0e0; -} - -.danmu-filter-tab.active { - background: #667eea; - color: white; - border-color: #667eea; -} - -.danmu-filter-count { - display: inline-flex; - align-items: center; - justify-content: center; - min-width: 20px; - height: 18px; - padding: 0 6px; - border-radius: 999px; - background: rgba(0,0,0,0.08); - color: inherit; - font-size: 11px; - font-weight: 600; - line-height: 1; -} - -.danmu-filter-tab.active .danmu-filter-count { - background: rgba(255,255,255,0.22); -} - -/* \u5F39\u5E55\u5217\u8868 */ -.danmu-list-area { - background: #f8f9fa; - border-radius: 10px; - padding: 15px; -} - -.danmu-list-area h3 { - margin: 0 0 10px; - font-size: 15px; -} - -.danmu-list { - max-height: 500px; - overflow-y: auto; - border: 1px solid #eee; - border-radius: 8px; - background: white; -} - -.danmu-item { - display: flex; - align-items: center; - gap: 10px; - padding: 8px 12px; - border-bottom: 1px solid #f0f0f0; - font-size: 13px; - transition: background 0.15s; -} - -.danmu-item:last-child { - border-bottom: none; -} - -.danmu-item:hover { - background: #f8f9ff; -} - -.danmu-time { - color: #999; - font-family: 'Courier New', monospace; - font-size: 12px; - min-width: 50px; - flex-shrink: 0; -} - -.danmu-color-dot { - width: 12px; - height: 12px; - border-radius: 50%; - flex-shrink: 0; - border: 1px solid rgba(0,0,0,0.1); - background: var(--danmu-color-dot, #fff); -} - -.danmu-mode-tag { - font-size: 11px; - padding: 2px 6px; - border-radius: 8px; - flex-shrink: 0; - font-weight: 500; -} - -.danmu-mode-scroll { - background: #e3f2fd; - color: #1976d2; -} - -.danmu-mode-top { - background: #fce4ec; - color: #c62828; -} - -.danmu-mode-bottom { - background: #e8f5e9; - color: #2e7d32; -} - -.danmu-text { - flex: 1; - min-width: 0; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - color: #333; -} - -.danmu-load-more { - display: none; - width: 100%; - margin-top: 10px; -} - -.jump-to-episode { - margin-top: 15px; - margin-bottom: 15px; - padding: 10px; - background: #f8f9fa; - border-radius: 12px; - display: flex; - align-items: center; - gap: 10px; - flex-wrap: wrap; -} - -.jump-episode-input { - padding: 8px; - width: 90px; - border: 1px solid #ccc; - border-radius: 8px; -} - -.jump-episode-btn { - margin-left: 5px; - border-radius: 8px; -} - -.jump-episode-total { - margin-left: 5px; - color: #666; - font-size: 14px; -} - -.episode-item.episode-item-highlight { - background: #fff3cd; -} - -/* \u8FD4\u56DE\u6309\u94AE */ -.btn-back { - padding: 8px 16px; - background: #f0f0f0; - border: 1px solid #ddd; - border-radius: 6px; - cursor: pointer; - font-size: 14px; - color: #555; - transition: all 0.2s; - margin-bottom: 15px; - display: inline-block; -} - -.btn-back:hover { - background: #e0e0e0; - color: #333; -} - -/* \u5F39\u5E55\u52A0\u8F7D\u52A8\u753B */ -.danmu-loading { - text-align: center; - padding: 60px 20px; -} - -.danmu-loading .loading-spinner { - margin: 0 auto 15px; -} - -.danmu-loading .loading-text { - color: #666; - font-size: 15px; -} - -/* \u5F39\u5E55\u7ED3\u679C\u5DE5\u5177\u680F\uFF08\u8FD4\u56DE+\u5BFC\u51FA\u540C\u884C\uFF09 */ -.danmu-result-toolbar { - display: flex; - justify-content: space-between; - align-items: center; - margin-bottom: 15px; - flex-wrap: wrap; - gap: 10px; -} - -.danmu-result-toolbar .btn-back { - margin-bottom: 0; -} - -.danmu-export-btns { - display: flex; - gap: 8px; - margin-left: auto; -} - -/* \u5F39\u5E55\u6D4B\u8BD5\u79FB\u52A8\u7AEF\u9002\u914D */ -@media (max-width: 768px) { - .danmu-stats-grid { - grid-template-columns: repeat(2, 1fr); - } - - .api-top-tab { - padding: 8px 16px; - font-size: 14px; - } - - .danmu-test-tabs { - flex-wrap: wrap; - } - - .stat-value { - font-size: 16px; - } - - .heatmap-bars { - height: 70px; - gap: 1px; - padding: 0 1px; - } - - .heatmap-bar { - min-width: 2px; - } -} - -/* \u989C\u8272\u6C60\u914D\u7F6E */ -.color-pool-display { - display: flex; - flex-wrap: wrap; - gap: 8px; - margin-bottom: 12px; - min-height: 36px; - padding: 8px; - border: 1px solid #e0e0e0; - border-radius: 8px; - background: #f9f9f9; -} - -.color-pool-item { - display: inline-flex; - align-items: center; - gap: 4px; - padding: 3px 8px; - border: 1px solid #ddd; - border-radius: 6px; - background: #fff; - font-size: 12px; -} - -.color-pool-swatch { - display: inline-block; - width: 18px; - height: 18px; - border-radius: 3px; - border: 1px solid #ccc; -} - -.color-pool-value { - color: #666; - font-family: monospace; - font-size: 11px; -} - -.color-pool-remove { - border: none; - background: none; - color: #999; - cursor: pointer; - padding: 0 2px; - font-size: 14px; - line-height: 1; -} - -.color-pool-empty { - color: #999; - font-size: 12px; - align-self: center; -} - -.color-pool-picker { - padding: 14px; - border: 1px solid #e0e0e0; - border-radius: 10px; - background: #fafafa; - margin-bottom: 12px; -} - -.color-pool-picker-inner { - display: flex; - flex-direction: column; - align-items: center; - gap: 12px; -} - -.color-wheel { - width: 120px; - height: 120px; - border-radius: 50%; - background: conic-gradient(hsl(0,100%,50%),hsl(60,100%,50%),hsl(120,100%,50%),hsl(180,100%,50%),hsl(240,100%,50%),hsl(300,100%,50%),hsl(360,100%,50%)); - cursor: crosshair; - position: relative; - box-shadow: 0 1px 4px rgba(0,0,0,0.1); - flex-shrink: 0; -} - -.color-wheel-center { - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%,-50%); - width: 44%; - height: 44%; - border-radius: 50%; - background: #fafafa; -} - -.color-wheel-dot { - position: absolute; - width: 14px; - height: 14px; - border-radius: 50%; - border: 2.5px solid #fff; - box-shadow: 0 0 4px rgba(0,0,0,0.35); - pointer-events: none; -} - -.color-pool-preview { - display: flex; - align-items: center; - gap: 10px; -} - -.color-pool-preview-swatch { - width: 32px; - height: 32px; - border-radius: 6px; - border: 1px solid #ddd; - flex-shrink: 0; -} - -.color-pool-preview-hex { - font-family: monospace; - font-size: 13px; - color: #555; -} - -.color-pool-lightness { - display: flex; - align-items: center; - gap: 8px; - width: 100%; - max-width: 240px; -} - -.color-pool-lightness span { - font-size: 12px; - color: #888; - flex-shrink: 0; -} - -.color-pool-lightness input { - flex: 1; - accent-color: #667eea; -} - -.color-pool-actions { - display: flex; - gap: 8px; - flex-wrap: nowrap; -} - -.color-pool-actions .btn { - white-space: nowrap; - flex-shrink: 0; -} - -.color-pool-actions .spacer { - flex: 1; -} - -/* \u6279\u91CF\u6DFB\u52A0\u989C\u8272\u5F39\u7A97 */ -.batch-color-overlay { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; - background: rgba(0,0,0,0.4); - z-index: 9999; - display: flex; - align-items: center; - justify-content: center; -} - -.batch-color-dialog { - background: #fff; - border-radius: 12px; - padding: 20px; - width: 90%; - max-width: 420px; - box-shadow: 0 4px 20px rgba(0,0,0,0.15); -} - -.batch-color-input { - width: 100%; - padding: 8px 10px; - border: 1px solid #ddd; - border-radius: 6px; - font-size: 13px; - font-family: monospace; - resize: vertical; - box-sizing: border-box; -} - -.batch-color-preview { - display: flex; - flex-wrap: wrap; - gap: 6px; - margin-top: 10px; - min-height: 24px; -} - -.batch-color-preview-swatch { - display: inline-block; - width: 22px; - height: 22px; - border-radius: 4px; - border: 1px solid #ccc; -} - -.batch-color-actions { - display: flex; - gap: 8px; - justify-content: flex-end; - margin-top: 14px; -} - -/* \u504F\u79FB\u89C4\u5219\u5FEB\u901F\u914D\u7F6E */ -.offset-rule-panel { - display: none; - margin-top: 10px; - padding: 12px; - border: 1px solid #e0e0e0; - border-radius: 8px; - background: #f9f9f9; -} - -.offset-form-row { - display: flex; - gap: 8px; - flex-wrap: wrap; - margin-bottom: 10px; -} - -.offset-label { - font-size: 12px; - color: #666; -} - -.offset-input { - width: 100%; - padding: 6px 8px; - border: 1px solid #ddd; - border-radius: 4px; - font-size: 13px; - box-sizing: border-box; -} - -.offset-sources { - display: flex; - flex-wrap: wrap; - gap: 5px; - margin-top: 5px; -} - -.offset-source-tag { - padding: 3px 10px; - border: 1px solid #ddd; - border-radius: 12px; - font-size: 12px; - cursor: pointer; - user-select: none; - background: #fff; - color: #666; - transition: all 0.15s; -} - -.offset-source-tag.selected { - background: #1a73e8; - color: #fff; - border-color: #1a73e8; -} - -.offset-actions { - display: flex; - gap: 8px; - justify-content: flex-end; -} - -/* \u6700\u8FD1\u6570\u636E\u4E0Eanimes\u7F13\u5B58\u9762\u677F\u6837\u5F0F */ - -/* \u9762\u677F\u5BB9\u5668 */ -.recent-data-panel { - display: none; - max-height: 350px; - overflow-y: auto; -} - -.anime-cache-list { - display: flex; - flex-direction: column; - gap: 8px; -} - -.anime-cache-card { - background: #fff; - border-radius: 6px; - border: 1px solid #eaeaea; - box-shadow: 0 1px 3px rgba(0,0,0,0.04); - overflow: hidden; -} - -.anime-cache-card-body { - display: flex; - gap: 12px; - align-items: center; - padding: 10px; -} - -.anime-cache-cover { - width: 44px; - height: 60px; - border-radius: 4px; - background-color: #e2e3e5; - background-size: cover; - background-position: center; - flex-shrink: 0; - box-shadow: 0 1px 4px rgba(0,0,0,0.15); -} - -.anime-cache-info, -.anime-cache-child-info { - flex: 1; - min-width: 0; -} - -.anime-cache-title { - font-weight: 600; - font-size: 13px; - line-height: 1.4; - margin-bottom: 4px; - display: -webkit-box; - -webkit-line-clamp: 2; - -webkit-box-orient: vertical; - overflow: hidden; - word-break: break-all; -} - -.anime-cache-meta { - color: #888; - font-size: 11px; -} - -.anime-cache-actions, -.anime-cache-child-actions { - display: flex; - flex-direction: column; - flex-shrink: 0; -} - -.anime-cache-actions { gap: 6px; } - -.btn-xs { - padding: 2px 6px; - font-size: 11px; -} - -/* \u5361\u7247\u5E95\u90E8\u6807\u7B7E\u5207\u6362\u680F(Tab \u98CE\u683C) */ -.anime-cache-footer { - display: flex; - gap: 8px; - padding: 8px 10px; - background: #fdfdfd; - border-top: 1px solid #f0f0f0; -} - -.cache-badge { - font-size: 11px; - padding: 4px 10px; - border-radius: 12px; - cursor: pointer; - user-select: none; - display: inline-flex; - align-items: center; - font-weight: 500; - transition: all 0.2s; -} - -.cache-badge.badge-sources { background: #e3f2fd; color: #0d47a1; border: 1px solid #bbdefb; } -.cache-badge.badge-episodes { background: #e8f5e9; color: #1b5e20; border: 1px solid #c8e6c9; } -.cache-badge.active { filter: brightness(0.9); box-shadow: inset 0 1px 3px rgba(0,0,0,0.1); } - -/* \u6298\u53E0\u5217\u8868\u5BB9\u5668 */ -.merged-children-container, -.episodes-list-container { - display: none; - flex-direction: column; - gap: 6px; - padding: 8px 10px; - background: #fafafa; - border-top: 1px solid #f0f0f0; -} - -.episodes-list-container { - max-height: 200px; - overflow-y: auto; -} - -/* \u5B50\u8282\u70B9\u5361\u7247 */ -.anime-cache-child-item { - display: flex; - flex-direction: column; - background: #fff; - padding: 8px; - border-radius: 4px; - border: 1px dashed #ccc; -} - -.anime-cache-child-main { - display: flex; - gap: 10px; - align-items: center; - width: 100%; -} - -.anime-cache-child-cover { - width: 33px; - height: 45px; - border-radius: 3px; - background-color: #e2e3e5; - background-size: cover; - background-position: center; - flex-shrink: 0; - box-shadow: 0 1px 3px rgba(0,0,0,0.1); -} - -.anime-cache-child-title { - font-weight: 500; - font-size: 12px; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} - -.anime-cache-child-actions { gap: 4px; } - -/* \u5408\u5E76\u6620\u5C04\u8BE6\u60C5 */ -.child-mapping-toggle { - font-size: 10px; - color: #666; - cursor: pointer; - margin-top: 8px; - padding-top: 6px; - border-top: 1px dashed #eee; - text-align: center; -} - -.child-mapping-toggle:hover { - color: #0066cc; -} - -.child-mapping-container { - display: none; - flex-direction: column; - gap: 4px; - margin-top: 6px; - background: #fdfdfd; - padding: 6px; - border-radius: 4px; - border: 1px solid #f0f0f0; - max-height: 150px; - overflow-y: auto; -} - -.mapping-row { - font-size: 10px; - display: flex; - gap: 6px; - align-items: flex-start; -} - -.mapping-status { flex-shrink: 0; font-weight: bold; } -.mapping-status.success { color: #28a745; } -.mapping-status.warning { color: #d39e00; } -.mapping-text { color: #555; word-break: break-all; } -`});var pRt,mRt=ae(()=>{pRt=` -/* \u8868\u5355\u6837\u5F0F */ -.form-group { - margin-bottom: 15px; -} - -.form-group label { - display: block; - margin-bottom: 5px; - font-weight: 500; - color: #333; -} - -.form-group input, -.form-group select, -.form-group textarea { - width: 100%; - padding: 10px; - border: 1px solid #ddd; - border-radius: 6px; - font-size: 14px; -} - -.form-group textarea { - resize: vertical; - min-height: 80px; - font-family: 'Courier New', Consolas, monospace; - line-height: 1.5; -} - -/* \u5F00\u5173\u6309\u94AE */ -.switch-container { - display: flex; - align-items: center; - gap: 10px; -} - -.switch { - position: relative; - display: inline-block; - width: 50px; - height: 26px; -} - -.switch input { - opacity: 0; - width: 0; - height: 0; -} - -.slider { - position: absolute; - cursor: pointer; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: #ccc; - transition: .4s; - border-radius: 26px; -} - -.slider:before { - position: absolute; - content: ""; - height: 18px; - width: 18px; - left: 4px; - bottom: 4px; - background-color: white; - transition: .4s; - border-radius: 50%; -} - -input:checked + .slider { - background-color: #667eea; -} - -input:checked + .slider:before { - transform: translateX(24px); -} - -.switch-label { - font-weight: 500; - color: #333; -} - -/* \u6570\u5B57\u6EDA\u8F6E */ -.number-picker { - display: flex; - align-items: center; - gap: 15px; - background: #f8f9fa; - padding: 15px; - border-radius: 8px; -} - -.number-display { - font-size: 32px; - font-weight: bold; - color: #667eea; - min-width: 60px; - text-align: center; -} - -.number-controls { - display: flex; - flex-direction: column; - gap: 5px; -} - -.number-btn { - width: 40px; - height: 40px; - border: 2px solid #667eea; - background: white; - color: #667eea; - border-radius: 8px; - cursor: pointer; - font-size: 20px; - font-weight: bold; - transition: all 0.3s; - display: flex; - align-items: center; - justify-content: center; -} - -.number-btn:hover { - background: #667eea; - color: white; -} - -.number-btn:active { - transform: scale(0.95); -} - -.number-range { - width: 100%; - margin-top: 10px; -} - -.number-range input[type="range"] { - width: 100%; - height: 6px; - border-radius: 3px; - background: #ddd; - outline: none; - -webkit-appearance: none; -} - -.number-range input[type="range"]::-webkit-slider-thumb { - -webkit-appearance: none; - appearance: none; - width: 20px; - height: 20px; - border-radius: 50%; - background: #667eea; - cursor: pointer; -} - -.number-range input[type="range"]::-moz-range-thumb { - width: 20px; - height: 20px; - border-radius: 50%; - background: #667eea; - cursor: pointer; - border: none; -} - -/* \u6807\u7B7E\u9009\u62E9 */ -.tag-selector { - display: flex; - flex-wrap: wrap; - gap: 10px; -} - -.tag-option { - padding: 10px 20px; - background: #f0f0f0; - border: 2px solid transparent; - border-radius: 20px; - cursor: pointer; - transition: all 0.3s; - font-size: 14px; - font-weight: 500; -} - -.tag-option:hover { - background: #e0e0e0; -} - -.tag-option.selected { - background: #667eea; - color: white; - border-color: #667eea; -} - -.tag-option.selected:hover { - background: #5568d3; -} - -/* \u591A\u9009\u6807\u7B7E */ -.multi-select-container { - display: flex; - flex-direction: column; - gap: 15px; -} - -.selected-tags { - min-height: 60px; - background: #f8f9fa; - border: 2px dashed #ddd; - border-radius: 8px; - padding: 10px; - display: flex; - flex-wrap: wrap; - gap: 8px; - align-items: flex-start; -} - -.selected-tags.empty::before { - content: '\u62D6\u52A8\u6216\u70B9\u51FB\u4E0B\u65B9\u9009\u9879\u6DFB\u52A0...'; - color: #999; - font-size: 14px; - width: 100%; - text-align: center; - padding: 15px 0; -} - -.selected-tag { - display: inline-flex; - align-items: center; - gap: 8px; - background: #667eea; - color: white; - padding: 8px 12px; - border-radius: 20px; - cursor: move; - user-select: none; - transition: all 0.3s; - box-shadow: 0 2px 4px rgba(0,0,0,0.1); -} - -.selected-tag:hover { - background: #5568d3; - transform: translateY(-2px); - box-shadow: 0 4px 8px rgba(0,0,0,0.2); -} - -.selected-tag.dragging { - opacity: 0.5; - transform: rotate(5deg); -} - -.selected-tag .tag-text { - font-weight: 500; -} - -.selected-tag .remove-btn { - width: 18px; - height: 18px; - background: rgba(255,255,255,0.3); - border: none; - border-radius: 50%; - color: white; - cursor: pointer; - display: flex; - align-items: center; - justify-content: center; - font-size: 14px; - font-weight: bold; - transition: all 0.2s; -} - -.selected-tag .remove-btn:hover { - background: rgba(255,255,255,0.5); - transform: scale(1.1); -} - -.available-tags { - display: flex; - flex-wrap: wrap; - gap: 8px; -} - -.available-tag { - padding: 8px 16px; - background: #f0f0f0; - border: 2px solid transparent; - border-radius: 20px; - cursor: pointer; - transition: all 0.3s; - font-size: 14px; - font-weight: 500; - user-select: none; -} - -.available-tag:hover { - background: #e0e0e0; - transform: translateY(-2px); -} - -.available-tag.disabled { - opacity: 0.5; - cursor: not-allowed; - background: #f8f9fa; -} - -.available-tag.disabled:hover { - transform: none; -} - -.drag-over { - background: #e8eaf6 !important; - border-color: #667eea !important; -} - -/* \u6620\u5C04\u8868\u6837\u5F0F */ -.map-container { - margin-top: 10px; -} - -.map-item { - display: flex; - align-items: center; - gap: 10px; - margin-bottom: 10px; - padding: 10px; - border: 1px solid #ddd; - border-radius: 6px; - background-color: #f9f9f9; -} - -.map-input-left, .map-input-right { - flex: 1; - padding: 8px; - border: 1px solid #ddd; - border-radius: 4px; -} - -.map-separator { - font-weight: bold; - color: #666; -} - -.map-remove-btn { - margin-left: 10px; - padding: 6px 12px; - font-size: 12px; -} - -.map-item-template { - display: none; -} -`});var gRt,_Rt=ae(()=>{gRt=` -/* \u54CD\u5E94\u5F0F\u6837\u5F0F */ -@media (max-width: 768px) { - .logo { - width: 40px; - height: 40px; - font-size: 22px; - } - - .header-left { - width: 100%; - flex-direction: column; - align-items: flex-start; - } - - .logo-title-container { - display: flex; - flex-direction: row; - align-items: center; - gap: 10px; - } - - .header h1 { - font-size: 18px; - margin: 0; - } - - .version-info { - font-size: 11px; - flex-wrap: wrap; - margin-top: 5px; - width: 100%; - } - - .nav-buttons { - width: 100%; - flex-wrap: wrap; - gap: 5px; - justify-content: center; - } - - .nav-btn { - flex: 1 1 calc(33.333% - 5px); - text-align: center; - font-size: 11px; - padding: 8px 5px; - white-space: nowrap; - min-width: 70px; - max-width: 120px; - overflow: hidden; - text-overflow: ellipsis; - } - - .env-item { - flex-direction: column; - align-items: flex-start; - } - - .env-actions { - width: 100%; - } - - .btn { - flex: 1; - } -} -`});var ARt,ERt=ae(()=>{ARt=` -// \u81EA\u5B9A\u4E49\u5F39\u7A97\u7EC4\u4EF6 -function createCustomAlert() { - // \u68C0\u67E5\u662F\u5426\u5DF2\u5B58\u5728\u81EA\u5B9A\u4E49\u5F39\u7A97\u5143\u7D20 - if (document.getElementById('custom-alert-overlay')) { - return; - } - - // \u521B\u5EFA\u5F39\u7A97HTML\u5143\u7D20 - const alertHTML = ''; - - // \u6DFB\u52A0\u5230body - document.body.insertAdjacentHTML('beforeend', alertHTML); - - // \u83B7\u53D6\u5143\u7D20 - const overlay = document.getElementById('custom-alert-overlay'); - const closeBtn = document.getElementById('custom-alert-close'); - const confirmBtn = document.getElementById('custom-alert-confirm'); - - // \u5173\u95ED\u5F39\u7A97\u51FD\u6570 - function closeAlert() { - overlay.classList.remove('active'); - // \u91CD\u7F6E\u6807\u9898\u548C\u6D88\u606F - document.getElementById('custom-alert-title').textContent = '\u63D0\u793A'; - } - - // \u4E8B\u4EF6\u76D1\u542C\u5668 - closeBtn.addEventListener('click', closeAlert); - confirmBtn.addEventListener('click', closeAlert); - - // \u70B9\u51FB\u906E\u7F69\u5C42\u5173\u95ED\u5F39\u7A97 - overlay.addEventListener('click', function(e) { - if (e.target === overlay) { - closeAlert(); - } - }); -} - -// \u81EA\u5B9A\u4E49alert\u51FD\u6570 -function customAlert(message, title = '\u63D0\u793A') { - // \u786E\u4FDD\u5F39\u7A97\u5143\u7D20\u5DF2\u521B\u5EFA - createCustomAlert(); - - // \u83B7\u53D6\u5143\u7D20 - const overlay = document.getElementById('custom-alert-overlay'); - const titleElement = document.getElementById('custom-alert-title'); - const messageElement = document.getElementById('custom-alert-message'); - - // \u8BBE\u7F6E\u6807\u9898\u548C\u6D88\u606F - titleElement.textContent = title; - messageElement.textContent = message; - - // \u663E\u793A\u5F39\u7A97 - overlay.classList.add('active'); -} - -// \u81EA\u5B9A\u4E49confirm\u51FD\u6570\uFF08\u5982\u679C\u9700\u8981\uFF09 -function customConfirm(message, title = '\u786E\u8BA4') { - return new Promise((resolve) => { - // \u786E\u4FDD\u5F39\u7A97\u5143\u7D20\u5DF2\u521B\u5EFA - createCustomAlert(); - - // \u83B7\u53D6\u5143\u7D20 - const overlay = document.getElementById('custom-alert-overlay'); - const titleElement = document.getElementById('custom-alert-title'); - const messageElement = document.getElementById('custom-alert-message'); - const confirmBtn = document.getElementById('custom-alert-confirm'); - - // \u79FB\u9664\u4E4B\u524D\u7684\u4E8B\u4EF6\u76D1\u542C\u5668\uFF08\u5982\u679C\u6709\uFF09 - const newConfirmBtn = confirmBtn.cloneNode(true); - confirmBtn.parentNode.replaceChild(newConfirmBtn, confirmBtn); - - // \u8BBE\u7F6E\u6807\u9898\u548C\u6D88\u606F - titleElement.textContent = title; - messageElement.textContent = message; - - // \u786E\u5B9A\u6309\u94AE\u4E8B\u4EF6 - newConfirmBtn.addEventListener('click', () => { - overlay.classList.remove('active'); - resolve(true); - }); - - // \u5173\u95ED\u6309\u94AE\u4E8B\u4EF6 - document.getElementById('custom-alert-close').addEventListener('click', () => { - overlay.classList.remove('active'); - resolve(false); - }); - - // \u70B9\u51FB\u906E\u7F69\u5C42\u5173\u95ED - overlay.addEventListener('click', function(e) { - if (e.target === overlay) { - overlay.classList.remove('active'); - resolve(false); - } - }); - - // \u663E\u793A\u5F39\u7A97 - overlay.classList.add('active'); - }); -} - -// \u521D\u59CB\u5316\u81EA\u5B9A\u4E49\u5F39\u7A97 -document.addEventListener('DOMContentLoaded', createCustomAlert); - -// \u6570\u636E\u5B58\u50A8 -let envVariables = {}; -let currentCategory = 'api'; // \u9ED8\u8BA4\u5206\u7C7B\u6539\u4E3Aapi -let editingKey = null; -let logs = []; // \u4FDD\u7559\u672C\u5730\u65E5\u5FD7\u6570\u7EC4\uFF0C\u7528\u4E8EUI\u663E\u793A - -// \u7248\u672C\u4FE1\u606F -let currentVersion = ''; -let latestVersion = ''; -let currentToken = 'globals.currentToken'; -let currentAdminToken = ''; // admin token\uFF0C\u7528\u4E8E\u7CFB\u7EDF\u7BA1\u7406 -let originalToken = ''; - -// \u53CD\u5411\u4EE3\u7406/API\u57FA\u7840\u8DEF\u5F84\u914D\u7F6E -// \u4ECELocalStorage\u83B7\u53D6\u7528\u6237\u81EA\u5B9A\u4E49\u7684Base URL -let customBaseUrl = localStorage.getItem('logvar_api_base_url') || ''; - -// \u4FDD\u5B58\u81EA\u5B9A\u4E49Base URL (\u4E3A\u7A7A\u5219\u6E05\u9664) -function saveBaseUrl() { - const input = document.getElementById('custom-base-url').value.trim(); - if (input) { - // \u786E\u4FDDURL\u4E0D\u4EE5\u659C\u6760\u7ED3\u5C3E\uFF0C\u65B9\u4FBF\u540E\u7EED\u62FC\u63A5 - let formattedUrl = input; - if (formattedUrl.endsWith('/')) { - formattedUrl = formattedUrl.slice(0, -1); - } - localStorage.setItem('logvar_api_base_url', formattedUrl); - customBaseUrl = formattedUrl; - customAlert('API\u5730\u5740\u914D\u7F6E\u5DF2\u4FDD\u5B58\uFF0C\u5373\u5C06\u5237\u65B0\u9875\u9762\u3002', '\u4FDD\u5B58\u6210\u529F'); - setTimeout(() => { - location.reload(); - }, 1000); - } else { - // \u8F93\u5165\u4E3A\u7A7A\uFF0C\u89C6\u4E3A\u6E05\u9664\u914D\u7F6E/\u91CD\u7F6E\u4E3A\u9ED8\u8BA4 - localStorage.removeItem('logvar_api_base_url'); - customBaseUrl = ''; - customAlert('\u914D\u7F6E\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u72B6\u6001\uFF0C\u5373\u5C06\u5237\u65B0\u9875\u9762\u3002', '\u64CD\u4F5C\u6210\u529F'); - setTimeout(() => { - location.reload(); - }, 1000); - } -} - -// \u6784\u5EFA\u5E26token\u7684API\u8BF7\u6C42\u8DEF\u5F84 -function buildApiUrl(path, isSystemPath = false) { - let res; - // \u5982\u679C\u662F\u7CFB\u7EDF\u7BA1\u7406\u8DEF\u5F84\u4E14\u6709admin token,\u5219\u4F7F\u7528admin token - if (isSystemPath && currentAdminToken && currentAdminToken.trim() !== '' && currentAdminToken.trim() !== '*'.repeat(currentAdminToken.length)) { - res = '/' + currentAdminToken + path; - } else { - // \u5426\u5219\u4F7F\u7528\u666E\u901Atoken - res = (currentToken ? '/' + currentToken : "") + path; - } - - // \u5982\u679C\u914D\u7F6E\u4E86\u81EA\u5B9A\u4E49\u57FA\u7840URL (\u89E3\u51B3\u53CD\u4EE3\u95EE\u9898) - if (customBaseUrl) { - // \u786E\u4FDD\u8DEF\u5F84\u4EE5/\u5F00\u5934 - const cleanPath = res.startsWith('/') ? res : '/' + res; - return customBaseUrl + cleanPath; - } - - return res; -} - -// \u4ECEAPI\u52A0\u8F7D\u771F\u5B9E\u73AF\u5883\u53D8\u91CF\u6570\u636E -function loadEnvVariables() { - // \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u914D\u7F6E\u6570\u636E - fetch(buildApiUrl('/api/config', true)) - .then(response => response.json()) - .then(config => { - // \u4ECE\u914D\u7F6E\u4E2D\u83B7\u53D6admin token - currentAdminToken = config.originalEnvVars?.ADMIN_TOKEN || ''; - - originalToken = config.originalEnvVars?.TOKEN || ''; - - // \u4F7F\u7528\u4ECEAPI\u83B7\u53D6\u7684\u539F\u59CB\u73AF\u5883\u53D8\u91CF\uFF0C\u7528\u4E8E\u7CFB\u7EDF\u8BBE\u7F6E - const originalEnvVars = config.originalEnvVars || {}; - const envVarConfig = config.envVarConfig || {}; - const runtimeEnvVars = config.envs || {}; - const categoryOrder = ['api', 'source', 'match', 'danmu', 'cache', 'system']; - const allKeys = Array.from(new Set([ - ...Object.keys(envVarConfig), - ...Object.keys(originalEnvVars), - ...Object.keys(runtimeEnvVars) - ])); - - // \u91CD\u65B0\u7EC4\u7EC7\u6570\u636E\u7ED3\u6784\u4EE5\u9002\u914D\u73B0\u6709UI - envVariables = {}; - - categoryOrder.forEach(category => { - envVariables[category] = []; - }); - - // \u5C06\u914D\u7F6E\u5B9A\u4E49\u5168\u91CF\u8F6C\u6362\u4E3AUI\u6240\u9700\u683C\u5F0F\uFF0C\u907F\u514D\u53EA\u663E\u793A\u5DF2\u6709\u503C\u7684\u914D\u7F6E\u9879 - allKeys.forEach(key => { - // \u4ECEenvVarConfig\u83B7\u53D6\u914D\u7F6E\u4FE1\u606F - const varConfig = envVarConfig[key] || { category: 'system', type: 'text', description: '\u672A\u5206\u7C7B\u914D\u7F6E\u9879' }; - const category = varConfig.category || 'system'; - - // \u5982\u679C\u8BE5\u5206\u7C7B\u4E0D\u5B58\u5728\uFF0C\u521B\u5EFA\u5B83 - if (!envVariables[category]) { - envVariables[category] = []; - } - - // \u6DFB\u52A0\u5230\u5BF9\u5E94\u5206\u7C7B\uFF0C\u5305\u542B\u5B8C\u6574\u7684\u914D\u7F6E\u4FE1\u606F - const originalValue = originalEnvVars[key]; - const envValue = runtimeEnvVars[key]; - const defaultValue = varConfig.defaultValue; - const displayValue = (originalValue !== undefined && originalValue !== null && originalValue !== '') - ? originalValue - : ((envValue !== undefined && envValue !== null && envValue !== '') - ? envValue - : (defaultValue !== undefined && defaultValue !== null ? defaultValue : '')); - - envVariables[category].push({ - key: key, - value: displayValue, - description: varConfig.description || '', - type: varConfig.type || 'text', - min: varConfig.min, - max: varConfig.max, - options: varConfig.options || [], // \u4EC5\u5BF9 select \u548C multi-select \u7C7B\u578B\u6709\u6548 - sources: varConfig.sources || null // \u4EC5\u5BF9 DANMU_OFFSET \u7B49\u9700\u8981\u6765\u6E90\u914D\u7F6E\u7684\u6709\u6548 - }); - }); - - // \u6E32\u67D3\u73AF\u5883\u53D8\u91CF\u5217\u8868 - renderEnvList(); - }) - .catch(error => { - console.error('Failed to load env variables:', error); - }); -} - -// \u66F4\u65B0API\u7AEF\u70B9\u4FE1\u606F -function updateApiEndpoint() { - return fetch(buildApiUrl('/api/config', true)) - .then(response => { - // \u68C0\u67E5ContentType\uFF0C\u5982\u679C\u662FHTML\u8BF4\u660E\u53EF\u80FD\u662F404\u9875\u9762\u6216\u53CD\u4EE3\u9519\u8BEF\u9875\u9762 - const contentType = response.headers.get("content-type"); - if (contentType && contentType.indexOf("application/json") === -1) { - throw new Error("Received HTML instead of JSON. Possible 404 or Proxy Error."); - } - if (!response.ok) { - throw new Error(\`HTTP error! status: \${response.status}\`); - } - return response.json(); - }) - .then(config => { - let _reverseProxy = customBaseUrl; // \u4F7F\u7528\u5168\u5C40\u914D\u7F6E - - // \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3 - const protocol = window.location.protocol; - const host = window.location.host; - const token = config.originalEnvVars?.TOKEN || '87654321'; // \u9ED8\u8BA4token\u503C - const adminToken = config.originalEnvVars?.ADMIN_TOKEN; - - // \u83B7\u53D6URL\u8DEF\u5F84\u5E76\u63D0\u53D6token - let urlPath = window.location.pathname; - if(_reverseProxy) { - try { - let proxyPath = _reverseProxy.startsWith('http') - ? new URL(_reverseProxy).pathname - : _reverseProxy; - - if (proxyPath.endsWith('/')) { - proxyPath = proxyPath.slice(0, -1); - } - if(proxyPath && urlPath.startsWith(proxyPath)) { - urlPath = urlPath.substring(proxyPath.length); - } - } catch(e) { /* ignore */ } - } - - const pathParts = urlPath.split('/').filter(part => part !== ''); - const urlToken = pathParts.length > 0 ? pathParts[0] : ''; - let apiToken = '********'; - - // \u5224\u65AD\u662F\u5426\u4F7F\u7528\u9ED8\u8BA4token - if (token === '87654321') { - // \u5982\u679C\u662F\u9ED8\u8BA4token\uFF0C\u5219\u663E\u793A\u771F\u5B9Etoken - apiToken = token; - } else { - // \u5982\u679C\u4E0D\u662F\u9ED8\u8BA4token\uFF0C\u5219\u68C0\u67E5URL\u4E2D\u7684token\u662F\u5426\u5339\u914D\uFF0C\u5339\u914D\u5219\u663E\u793A\u771F\u5B9Etoken\uFF0C\u5426\u5219\u663E\u793A\u661F\u53F7 - if (urlToken === token || (adminToken !== "" && urlToken === adminToken)) { - apiToken = token; // \u66F4\u65B0\u5168\u5C40token\u53D8\u91CF - } - } - - // \u6784\u9020API\u7AEF\u70B9URL - let baseUrlStr; - if (_reverseProxy) { - // \u5982\u679C\u914D\u7F6E\u4E86\u53CD\u4EE3\uFF0C\u4E14\u662F\u76F8\u5BF9\u8DEF\u5F84\uFF0C\u5219\u8865\u5168\u534F\u8BAE\u548C\u4E3B\u673A\uFF0C\u786E\u4FDD\u663E\u793A\u4E3A\u7EDD\u5BF9\u8DEF\u5F84 - baseUrlStr = _reverseProxy.startsWith('http') - ? _reverseProxy - : (protocol + '//' + host + _reverseProxy); - } else { - baseUrlStr = protocol + '//' + host; - } - - // \u786E\u4FDD baseUrlStr \u4E0D\u4EE5\u659C\u6760\u7ED3\u5C3E - let cleanBaseUrl = baseUrlStr; - if (cleanBaseUrl.endsWith('/')) { - cleanBaseUrl = cleanBaseUrl.slice(0, -1); - } - const apiEndpoint = cleanBaseUrl + '/' + apiToken; - - const apiEndpointElement = document.getElementById('api-endpoint'); - if (apiEndpointElement) { - apiEndpointElement.textContent = apiEndpoint; - } - return config; // \u8FD4\u56DE\u914D\u7F6E\u4FE1\u606F\uFF0C\u4EE5\u4FBF\u94FE\u5F0F\u8C03\u7528 - }) - .catch(error => { - console.error('\u83B7\u53D6\u914D\u7F6E\u4FE1\u606F\u5931\u8D25:', error); - // \u51FA\u9519\u65F6\u663E\u793A\u9ED8\u8BA4\u503C - const protocol = window.location.protocol; - const host = window.location.host; - let _reverseProxy = customBaseUrl; - - // \u6784\u9020\u663E\u793A\u7528\u7684BaseUrl - let baseUrlStr; - if (_reverseProxy) { - baseUrlStr = _reverseProxy.startsWith('http') - ? _reverseProxy - : (protocol + '//' + host + _reverseProxy); - } else { - baseUrlStr = protocol + '//' + host; - } - - let cleanBaseUrl = baseUrlStr; - if (cleanBaseUrl.endsWith('/')) { - cleanBaseUrl = cleanBaseUrl.slice(0, -1); - } - const apiEndpoint = cleanBaseUrl + '/********'; - - const apiEndpointElement = document.getElementById('api-endpoint'); - if (apiEndpointElement) { - apiEndpointElement.textContent = apiEndpoint; - } - - // \u5982\u679C\u662F\u56E0\u4E3A\u53CD\u4EE3\u5BFC\u81F4\u7684\u95EE\u9898\uFF0C\u663E\u793A\u8F93\u5165\u6846 (\u4EA4\u7531renderPreview\u5904\u7406\uFF0C\u6216\u8005\u5728\u8FD9\u91CC\u4E5F\u53EF\u4EE5\u89E6\u53D1) - const proxyContainer = document.getElementById('proxy-config-container'); - if(proxyContainer) { - proxyContainer.style.display = 'block'; - // \u586B\u5145\u5F53\u524D\u8F93\u5165\u6846\uFF08\u5982\u679C\u6709\u503C\uFF09 - if(customBaseUrl) { - document.getElementById('custom-base-url').value = customBaseUrl; - } - } - - throw error; // \u629B\u51FA\u9519\u8BEF\uFF0C\u4EE5\u4FBF\u8C03\u7528\u8005\u53EF\u4EE5\u5904\u7406 - }); -} - -function getDockerVersion() { - const url = "https://img.shields.io/docker/v/logvar/danmu-api?sort=semver"; - - fetch(url) - .then(response => response.text()) - .then(svgContent => { - // \u4F7F\u7528\u6B63\u5219\u8868\u8FBE\u5F0F\u4ECE SVG \u4E2D\u63D0\u53D6\u7248\u672C\u53F7 - const versionMatch = svgContent.match(/version<\\/text>(v[\\d\\.]+)/); - - if (versionMatch && versionMatch[1]) { - console.log("Version:", versionMatch[1]); - const latestVersionElement = document.getElementById('latest-version'); - if (latestVersionElement) { - latestVersionElement.textContent = versionMatch[1]; - } - } else { - console.log("Version not found"); - } - }) - .catch(error => { - console.error("Error fetching the SVG:", error); - }); -} - -// \u5207\u6362\u5BFC\u822A -function switchSection(section, event = null) { - // \u68C0\u67E5\u662F\u5426\u5C1D\u8BD5\u8BBF\u95EE\u53D7token\u4FDD\u62A4\u7684section\uFF08\u65E5\u5FD7\u67E5\u770B\u3001\u63A5\u53E3\u8C03\u8BD5\u3001\u63A8\u9001\u5F39\u5E55\u3001\u8BF7\u6C42\u8BB0\u5F55\u3001\u7CFB\u7EDF\u914D\u7F6E\u9700\u8981token\u8BBF\u95EE\uFF09 - if (section === 'logs' || section === 'api' || section === 'env' || section === 'push' || section === 'request-records') { - let _reverseProxy = customBaseUrl; // \u4F7F\u7528\u5168\u5C40\u914D\u7F6E - - // \u83B7\u53D6URL\u8DEF\u5F84\u5E76\u63D0\u53D6token - let urlPath = window.location.pathname; - if(_reverseProxy) { - // \u4E25\u8C28\u5730\u79FB\u9664BaseUrl\u4E2D\u7684path\u90E8\u5206 - try { - // \u5982\u679C_reverseProxy\u5305\u542B\u5B8C\u6574URL\uFF0C\u63D0\u53D6pathname - // \u5982\u679C\u53EA\u662F\u76F8\u5BF9\u8DEF\u5F84\uFF0C\u76F4\u63A5\u4F7F\u7528 - let proxyPath = _reverseProxy.startsWith('http') - ? new URL(_reverseProxy).pathname - : _reverseProxy; - - // \u786E\u4FDD\u79FB\u9664\u5C3E\u90E8\u659C\u6760\uFF0C\u9632\u6B62\u5339\u914D\u5931\u8D25 - if (proxyPath.endsWith('/')) { - proxyPath = proxyPath.slice(0, -1); - } - - if(proxyPath && urlPath.startsWith(proxyPath)) { - urlPath = urlPath.substring(proxyPath.length); - } - } catch(e) { - console.error("\u89E3\u6790\u53CD\u4EE3\u8DEF\u5F84\u5931\u8D25", e); - } - } - - const pathParts = urlPath.split('/').filter(part => part !== ''); - const urlToken = pathParts.length > 0 ? pathParts[0] : ''; - - // \u68C0\u67E5URL\u4E2D\u662F\u5426\u6709token - if (!urlToken && originalToken !== "87654321") { - // \u63D0\u793A\u7528\u6237\u9700\u8981\u5728URL\u4E2D\u914D\u7F6ETOKEN - setTimeout(() => { - // \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3 - const protocol = window.location.protocol; - const host = window.location.host; - - // \u6784\u9020\u663E\u793A\u7684BaseUrl\uFF0C\u786E\u4FDD\u662F\u7EDD\u5BF9\u8DEF\u5F84 - let displayBase; - if (_reverseProxy) { - displayBase = _reverseProxy.startsWith('http') - ? _reverseProxy - : (protocol + '//' + host + _reverseProxy); - } else { - displayBase = protocol + '//' + host; - } - - if (displayBase.endsWith('/')) { - displayBase = displayBase.slice(0, -1); - } - - // \u6839\u636Esection\u7C7B\u578B\u663E\u793A\u4E0D\u540C\u7684token\u63D0\u793A - const tokenType = section === 'env' ? 'ADMIN_TOKEN' : 'TOKEN'; - customAlert('\u8BF7\u5728URL\u4E2D\u914D\u7F6E\u76F8\u5E94\u7684' + tokenType + '\u4EE5\u8BBF\u95EE\u6B64\u529F\u80FD\uFF01\\n\\n\u8BBF\u95EE\u65B9\u5F0F\uFF1A' + displayBase + '/{' + tokenType + '}'); - }, 100); - return; - } - - // \u5982\u679C\u662F\u7CFB\u7EDF\u914D\u7F6E\u9875\u9762\uFF0C\u8FD8\u9700\u8981\u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN\u4E14URL\u4E2D\u7684token\u7B49\u4E8EcurrentAdminToken - if (section === 'env') { - // \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E - checkDeployPlatformConfig().then(result => { - if (!result.success) { - // \u5982\u679C\u914D\u7F6E\u68C0\u67E5\u4E0D\u901A\u8FC7\uFF0C\u53EA\u663E\u793A\u63D0\u793A\uFF0C\u4E0D\u5207\u6362\u9875\u9762 - setTimeout(() => { - customAlert(result.message); - }, 100); - } else { - // \u5982\u679C\u914D\u7F6E\u68C0\u67E5\u901A\u8FC7\uFF0C\u624D\u5207\u6362\u5230env\u9875\u9762 - document.querySelectorAll('.section').forEach(s => s.classList.remove('active')); - document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active')); - - document.getElementById(\`\${section}-section\`).classList.add('active'); - // \u5728\u5F02\u6B65\u56DE\u8C03\u4E2D\u4F7F\u7528\u4F20\u5165\u7684event\u53C2\u6570\u6765\u8BBE\u7F6E\u6309\u94AE\u7684active\u72B6\u6001 - if (event && event.target) { - event.target.classList.add('active'); - } - - addLog(\`\u5207\u6362\u5230\${section === 'env' ? '\u73AF\u5883\u53D8\u91CF' : section === 'preview' ? '\u914D\u7F6E\u9884\u89C8' : section === 'logs' ? '\u65E5\u5FD7\u67E5\u770B' : section === 'push' ? '\u63A8\u9001\u5F39\u5E55' : section === 'request-records' ? '\u8BF7\u6C42\u8BB0\u5F55' : '\u63A5\u53E3\u8C03\u8BD5'}\u6A21\u5757\`, 'info'); - } - }); - } else { - // \u5BF9\u4E8E\u65E5\u5FD7\u67E5\u770B\u3001\u63A5\u53E3\u8C03\u8BD5\u548C\u63A8\u9001\u5F39\u5E55\u9875\u9762\uFF0C\u53EA\u8981URL\u4E2D\u6709token\u5C31\u53EF\u4EE5\u8BBF\u95EE - document.querySelectorAll('.section').forEach(s => s.classList.remove('active')); - document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active')); - - document.getElementById(\`\${section}-section\`).classList.add('active'); - if (event && event.target) { - event.target.classList.add('active'); - } - - addLog(\`\u5207\u6362\u5230\${section === 'env' ? '\u73AF\u5883\u53D8\u91CF' : section === 'preview' ? '\u914D\u7F6E\u9884\u89C8' : section === 'logs' ? '\u65E5\u5FD7\u67E5\u770B' : section === 'push' ? '\u63A8\u9001\u5F39\u5E55' : section === 'request-records' ? '\u8BF7\u6C42\u8BB0\u5F55' : '\u63A5\u53E3\u8C03\u8BD5'}\u6A21\u5757\`, 'info'); - - // \u5982\u679C\u5207\u6362\u5230\u65E5\u5FD7\u67E5\u770B\u9875\u9762\uFF0C\u5219\u7ACB\u5373\u5237\u65B0\u65E5\u5FD7 - if (section === 'logs') { - if (typeof fetchRealLogs === 'function') { - fetchRealLogs(); - } - } - } - } else { - // \u5BF9\u4E8E\u975E\u53D7\u4FDD\u62A4\u9875\u9762\uFF08\u5982\u914D\u7F6E\u9884\u89C8\uFF09\uFF0C\u6B63\u5E38\u5207\u6362 - document.querySelectorAll('.section').forEach(s => s.classList.remove('active')); - document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active')); - - document.getElementById(\`\${section}-section\`).classList.add('active'); - if (event && event.target) { - event.target.classList.add('active'); - } - - addLog(\`\u5207\u6362\u5230\${section === 'env' ? '\u73AF\u5883\u53D8\u91CF' : section === 'preview' ? '\u914D\u7F6E\u9884\u89C8' : section === 'logs' ? '\u65E5\u5FD7\u67E5\u770B' : section === 'push' ? '\u63A8\u9001\u5F39\u5E55' : '\u63A5\u53E3\u8C03\u8BD5'}\u6A21\u5757\`, 'info'); - } -} - -// \u5207\u6362\u7C7B\u522B -function switchCategory(category, event = null) { - currentCategory = category; - document.querySelectorAll('.category-btn').forEach(b => b.classList.remove('active')); - if (event && event.target) { - event.target.classList.add('active'); - } - renderEnvList(); -} - -// \u5173\u95ED\u6A21\u6001\u6846 -function closeModal() { - document.getElementById('env-modal').classList.remove('active'); - - // \u91CD\u7F6E\u8868\u5355\u5B57\u6BB5\u72B6\u6001 - document.getElementById('env-category').disabled = false; - document.getElementById('env-key').readOnly = false; - document.getElementById('value-type').disabled = false; - document.getElementById('env-description').readOnly = false; -} - -// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316\u65F6\u83B7\u53D6\u4E00\u6B21\u65E5\u5FD7 -async function init() { - try { - await updateApiEndpoint(); // \u7B49\u5F85API\u7AEF\u70B9\u66F4\u65B0\u5B8C\u6210 - getDockerVersion(); - // \u4ECEAPI\u83B7\u53D6\u914D\u7F6E\u4FE1\u606F\uFF0C\u5305\u62EC\u68C0\u67E5\u662F\u5426\u6709admin token - const config = await fetchAndSetConfig(); - - // \u8BBE\u7F6E\u9ED8\u8BA4\u63A8\u9001\u5730\u5740 - setDefaultPushUrl(config); - - // \u68C0\u67E5\u5E76\u5904\u7406\u7BA1\u7406\u5458\u4EE4\u724C - checkAndHandleAdminToken(); - - loadEnvVariables(); // \u4ECEAPI\u52A0\u8F7D\u771F\u5B9E\u73AF\u5883\u53D8\u91CF\u6570\u636E - renderEnvList(); - renderPreview(); - addLog('\u7CFB\u7EDF\u521D\u59CB\u5316\u5B8C\u6210', 'success'); - // \u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E - fetchRealLogs(); - - // \u521D\u59CB\u5316\u63A8\u9001\u5F39\u5E55\u754C\u9762 - if (typeof initPushDanmuInterface === 'function') { - initPushDanmuInterface(); - } - - // \u521D\u59CB\u5316\u63A5\u53E3\u8C03\u8BD5\u754C\u9762 - if (typeof initApiTestInterface === 'function') { - initApiTestInterface(); - } - - } catch (error) { - console.error('\u521D\u59CB\u5316\u5931\u8D25:', error); - addLog('\u7CFB\u7EDF\u521D\u59CB\u5316\u5931\u8D25: ' + error.message, 'error'); - - // \u786E\u4FDD\u53CD\u4EE3\u914D\u7F6E\u6846\u663E\u793A - const proxyContainer = document.getElementById('proxy-config-container'); - if(proxyContainer) { - proxyContainer.style.display = 'block'; - if(customBaseUrl) { - document.getElementById('custom-base-url').value = customBaseUrl; - } - } - - // \u5373\u4F7F\u521D\u59CB\u5316\u5931\u8D25\uFF0C\u4E5F\u8981\u5C1D\u8BD5\u83B7\u53D6\u65E5\u5FD7 - fetchRealLogs(); - } -} - -// \u590D\u5236API\u7AEF\u70B9\u5230\u526A\u8D34\u677F -function copyApiEndpoint() { - const apiEndpointElement = document.getElementById('api-endpoint'); - if (apiEndpointElement) { - const apiEndpoint = apiEndpointElement.textContent; - navigator.clipboard.writeText(apiEndpoint) - .then(() => { - // \u4E34\u65F6\u6539\u53D8\u663E\u793A\u6587\u672C\u4EE5\u63D0\u4F9B\u53CD\u9988 - const originalText = apiEndpointElement.textContent; - apiEndpointElement.textContent = '\u5DF2\u590D\u5236!'; - apiEndpointElement.style.color = '#ff6b6b'; - - // 2\u79D2\u540E\u6062\u590D\u539F\u59CB\u6587\u672C - setTimeout(() => { - apiEndpointElement.textContent = originalText; - apiEndpointElement.style.color = '#4CAF50'; - }, 2000); - - addLog('API\u7AEF\u70B9\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F: ' + apiEndpoint, 'success'); - }) - .catch(err => { - console.error('\u590D\u5236\u5931\u8D25:', err); - customAlert('\u590D\u5236\u5931\u8D25: ' + err); - addLog('\u590D\u5236API\u7AEF\u70B9\u5931\u8D25: ' + err, 'error'); - }); - } -} - -function escapeHtml(text) { - // \u5982\u679C\u662F null \u6216 undefined\uFF0C\u8FD4\u56DE\u7A7A\u5B57\u7B26\u4E32 - if (text === null || text === undefined) { - return ''; - } - - // \u5C06\u975E\u5B57\u7B26\u4E32\u503C\u8F6C\u6362\u4E3A\u5B57\u7B26\u4E32 - const str = String(text); - - const map = { - '&': '&', - '<': '<', - '>': '>', - '"': '"', - "'": ''' - }; - return str.replace(/[&<>"']/g, m => map[m]); -} - - -// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316 -init(); -`});var yRt,vRt=ae(()=>{yRt=` -// \u6E32\u67D3\u914D\u7F6E\u9884\u89C8 -function renderPreview() { - const preview = document.getElementById('preview-area'); - const proxyConfigContainer = document.getElementById('proxy-config-container'); - - // \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u914D\u7F6E\u6570\u636E - fetch(buildApiUrl('/api/config')) - .then(response => { - const contentType = response.headers.get("content-type"); - if (contentType && contentType.indexOf("application/json") === -1) { - // \u8FD4\u56DE\u6587\u672C\u4EE5\u4FBF\u540E\u7EED\u5904\u7406\uFF08\u4F8B\u5982\u663E\u793AHTML\u9519\u8BEF\u7684\u524D\u51E0\u4E2A\u5B57\u7B26\uFF09 - return response.text().then(text => { - throw new Error('Expected JSON, got ' + contentType + '. Content: ' + text.substring(0, 50) + '...'); - }); - } - if (!response.ok) { - throw new Error('HTTP error! status: ' + response.status); - } - return response.json(); - }) - .then(config => { - // \u6210\u529F\u52A0\u8F7D\uFF0C\u9690\u85CF\u53CD\u4EE3\u914D\u7F6E\u6846 - if(proxyConfigContainer) { - proxyConfigContainer.style.display = 'none'; - } - - // \u4F7F\u7528\u4ECEAPI\u83B7\u53D6\u7684\u5206\u7C7B\u73AF\u5883\u53D8\u91CF - const categorizedVars = config.categorizedEnvVars || {}; - - // \u6E32\u67D3\u9884\u89C8\u5185\u5BB9 - let html = ''; - - Object.keys(categorizedVars).forEach(category => { - const items = categorizedVars[category]; - if (items && items.length > 0) { - html += \`

\${getCategoryName(category)}

\`; - items.forEach(item => { - const escapedValue = escapeHtml(item.value); - html += \` -
-
-
\${item.key}
-
\${escapedValue}
-
- \${item.description ? \`
\${item.description}
\` : ''} -
- \`; - }); - } - }); - - preview.innerHTML = html || '

\u6682\u65E0\u914D\u7F6E

'; - }) - .catch(error => { - console.error('Failed to load config for preview:', error); - - // \u663E\u793A\u53CD\u4EE3\u914D\u7F6E\u6846 - if(proxyConfigContainer) { - proxyConfigContainer.style.display = 'block'; - // \u5982\u679C\u6709\u5DF2\u4FDD\u5B58\u7684URL\uFF0C\u586B\u5145\u5B83 - const savedUrl = localStorage.getItem('logvar_api_base_url'); - if(savedUrl) { - document.getElementById('custom-base-url').value = savedUrl; - } - } - - preview.innerHTML = '

\u52A0\u8F7D\u914D\u7F6E\u5931\u8D25: ' + error.message + '

'; - addLog('\u52A0\u8F7D\u914D\u7F6E\u5931\u8D25: ' + error.message, 'error'); - }); -} - -// \u83B7\u53D6\u7C7B\u522B\u540D\u79F0 -function getCategoryName(category) { - const names = { - api: '\u{1F517} API\u914D\u7F6E', - source: '\u{1F4DC} \u6E90\u914D\u7F6E', - match: '\u{1F50D} \u5339\u914D\u914D\u7F6E', - danmu: '\u{1F523} \u5F39\u5E55\u914D\u7F6E', - cache: '\u{1F4BE} \u7F13\u5B58\u914D\u7F6E', - system: '\u2699\uFE0F \u7CFB\u7EDF\u914D\u7F6E' - }; - return names[category] || category; -} -`});var SRt,TRt=ae(()=>{SRt=` -// \u65E5\u5FD7\u5168\u5C40\u8FC7\u6EE4\u72B6\u6001 -let currentLogFilter = 'ALL'; - -// \u83B7\u53D6\u65E5\u5FD7\u7684\u4E25\u683C\u5F52\u5C5E\u5206\u7C7B -function getLogCategory(message) { - // \u5339\u914D\u884C\u9996\u7684\u8FDE\u7EED\u65B9\u62EC\u53F7\u6807\u7B7E (\u9700\u53CC\u91CD\u8F6C\u4E49) - const prefixMatch = message.match(/^(?:\\s*\\[[^\\]]+\\])+/); - if (!prefixMatch) { - // \u65E0\u6807\u7B7E\u884C\u4F5C\u4E3A\u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u884C\u7684\u5206\u7C7B - return '_inherit_'; - } - - const tags = prefixMatch[0].match(/\\[([^\\]]+)\\]/g).map(t => t.replace(/[\\[\\]]/g, '').trim()); - - // \u5F52\u7C7B\u5408\u5E76\u5DE5\u5177\u65E5\u5FD7 - // \u53EA\u8981\u884C\u9996\u5305\u542B Merge\uFF0C\u6216\u8005\u5305\u542B\u5408\u5E76\u6620\u5C04\u72EC\u6709\u7684\u5B50\u6807\u7B7E\uFF0C\u5F3A\u884C\u5C06\u5176\u6536\u675F\u81F3 Merge \u4E13\u5C5E\u5206\u7C7B - if (tags.some(t => t.toLowerCase() === 'merge' || ['\u5339\u914D', '\u843D\u5355', '\u8865\u5168', '\u5408\u96C6', '\u7565\u8FC7', 'Merge-Check'].some(key => t.includes(key)))) { - return 'merge'; - } - - // \u6392\u9664\u65F6\u95F4\u6233\u548C\u5E95\u5C42\u65E0\u610F\u4E49\u6807\u7B7E\uFF0C\u6293\u53D6\u771F\u6B63\u7684\u4E1A\u52A1\u6E90 - const validTags = tags.filter(t => - !/^\\d{4}-\\d{2}-\\d{2}[T ]/.test(t) && // \u6392\u9664 ISO \u65F6\u95F4\u6233\u683C\u5F0F\uFF08YYYY-MM-DDTHH:MM:SS\uFF09 - !/^\\d{2}:\\d{2}(:\\d{2})?$/.test(t) && // \u6392\u9664 HH:MM:SS \u65F6\u95F4\u683C\u5F0F\uFF08JSON \u7EED\u884C\uFF09 - !t.includes('08:00') && - t !== '\u8BF7\u6C42\u6A21\u62DF' && - t !== '\u7F51\u7EDC\u8BF7\u6C42' - ); - - if (validTags.length === 0) { - // \u5168\u90E8\u6807\u7B7E\u88AB\u65F6\u95F4\u6233\u7B49\u8FC7\u6EE4\u89C4\u5219\u6392\u9664\uFF0C\u4F5C\u4E3A\u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u884C\u7684\u5206\u7C7B - return '_inherit_'; - } - - // \u7EDF\u4E00\u8F6C\u6362\u4E3A\u5C0F\u5199\uFF0C\u786E\u4FDD\u5927\u5C0F\u5199\u53D8\u4F53(\u5982 Bahamut \u548C bahamut)\u6536\u675F\u81F3\u540C\u4E00\u5185\u90E8\u6807\u8BC6\u7B26 - let category = validTags[0].toLowerCase(); - - // \u6807\u7B7E\u5F52\u4E00\u5316\uFF1A\u5C06\u53D8\u4F53\u6807\u7B7E\u6620\u5C04\u5230\u6807\u51C6\u5206\u7C7B - const normalizationMap = { - 'vod fastest mode': 'vod', - 'custom source': 'custom', - 'bilibili-proxy': 'bilibili', - 'tmdb-source': 'tmdb', - 'path check': 'system', - 'path fix': 'system', - 'base': 'system', - 'fongmi': 'system', - }; - if (normalizationMap[category]) { - category = normalizationMap[category]; - } - - return category; -} - -// \u65E5\u5FD7\u76F8\u5173 -function addLog(message, type = 'info') { - const timestamp = new Date().toLocaleTimeString(); - logs.push({ timestamp, message, type }); - if (logs.length > 100) logs.shift(); - renderLogs(); -} - -function renderLogs() { - const container = document.getElementById('log-container'); - const filterContainer = document.getElementById('log-filters') || createFilterContainer(); - - let filteredLogs = logs; - if (currentLogFilter !== 'ALL') { - // \u91C7\u7528\u4E25\u683C\u5F52\u5C5E\u6821\u9A8C\uFF0C\u540C\u65F6\u652F\u6301\u7EED\u884C\u4E0A\u4E0B\u6587\u7EE7\u627F - let lastCategory = 'system'; - filteredLogs = logs.filter(log => { - let category = getLogCategory(log.message); - if (category === '_inherit_') { - // \u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u4E2A\u660E\u786E\u5206\u7C7B\u884C - category = lastCategory; - } else { - lastCategory = category; - } - return category === currentLogFilter; - }); - } - - container.innerHTML = filteredLogs.map(log => { - let highlightedMessage = log.message; - - // \u884C\u9996\u8FDE\u7EED\u6807\u7B7E\u9AD8\u4EAE (\u9700\u53CC\u91CD\u8F6C\u4E49) - const prefixMatch = log.message.match(/^(?:\\s*\\[[^\\]]+\\])+/); - if (prefixMatch) { - const prefix = prefixMatch[0]; - const rest = log.message.slice(prefix.length); - const coloredPrefix = prefix.replace(/\\[([^\\]]+)\\]/g, '[$1]'); - highlightedMessage = coloredPrefix + rest; - } - - return \`
[\${log.timestamp}] \${highlightedMessage}
\`; - }).join(''); - container.scrollTop = container.scrollHeight; - - updateFilterUI(); -} - -function createFilterContainer() { - const controls = document.querySelector('.log-controls'); - const filterDiv = document.createElement('div'); - filterDiv.id = 'log-filters'; - filterDiv.className = 'log-filters-container'; - controls.parentNode.insertBefore(filterDiv, document.getElementById('log-container')); - return filterDiv; -} - -// \u6807\u7B7E\u663E\u793A\u987A\u5E8F\uFF1AALL \u2192 \u7CFB\u7EDF \u2192 \u5DE5\u5177 \u2192 \u6E90\uFF0C\u7EC4\u5185\u5B57\u6BCD\u5E8F -const tagGroupOrder = [ - ['system', 'ai'], - ['utils', 'cache', 'merge'], - ['360kan', 'aiyifan', 'animeko', 'bahamut', 'bilibili', 'custom', 'dandan', 'douban', 'hanjutv', 'iqiyi', 'leshi', 'maiduidui', 'mango', 'migu', 'other', 'renren', 'sohu', 'tencent', 'tmdb', 'vod', 'xigua', 'youku'], -]; -const tagOrderMap = {}; -tagGroupOrder.forEach((group, gi) => group.forEach((tag, ti) => tagOrderMap[tag] = gi * 1000 + ti)); - -function updateFilterUI() { - const filterContainer = document.getElementById('log-filters'); - let html = \`\`; - - const currentTags = new Set(); - let lastCategory = 'system'; - logs.forEach(log => { - let category = getLogCategory(log.message); - // \u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u4E2A\u660E\u786E\u5206\u7C7B\u884C - if (category === '_inherit_') { - category = lastCategory; - } else { - lastCategory = category; - } - // \u6240\u6709\u5206\u7C7B\u6807\u7B7E\u5747\u751F\u6210\u7B5B\u9009\u6309\u94AE - currentTags.add(category); - }); - - [...currentTags].sort((a, b) => { - const ai = tagOrderMap[a] ?? 99999, bi = tagOrderMap[b] ?? 99999; - return ai !== bi ? ai - bi : a.localeCompare(b); - }).forEach(tag => { - html += \`\`; - }); - - filterContainer.innerHTML = html; -} - -window.setLogFilter = function(tag) { - currentLogFilter = tag; - renderLogs(); -}; - -// \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E -async function fetchRealLogs() { - try { - // \u65E5\u5FD7\u67E5\u770B\u4F7F\u7528\u666E\u901Atoken\u8BBF\u95EE\uFF0C\u4E0D\u9700\u8981admin token - const response = await fetch(buildApiUrl('/api/logs')); // \u4E0D\u4F7F\u7528admin token - if (!response.ok) { - throw new Error(\`HTTP error! status: \${response.status}\`); - } - const logText = await response.text(); - // \u89E3\u6790\u65E5\u5FD7\u6587\u672C\u4E3A\u6570\u7EC4 - const logLines = logText.split('\\n').filter(line => line.trim() !== ''); - // \u8F6C\u6362\u4E3Alogs\u6570\u7EC4\u683C\u5F0F - logs = logLines.map(line => { - // \u89E3\u6790\u65E5\u5FD7\u884C\uFF0C\u63D0\u53D6\u65F6\u95F4\u6233\u3001\u7EA7\u522B\u548C\u6D88\u606F - const match = line.match(/\\[([^\\]]+)\\] (\\w+): (.*)/); - if (match) { - return { - timestamp: match[1], - type: match[2], - message: match[3] - }; - } - // \u5982\u679C\u65E0\u6CD5\u89E3\u6790\uFF0C\u8FD4\u56DE\u539F\u59CB\u884C - return { - timestamp: new Date().toLocaleTimeString(), - type: 'info', - message: line - }; - }); - renderLogs(); - } catch (error) { - console.error('Failed to fetch logs:', error); - addLog(\`\u83B7\u53D6\u65E5\u5FD7\u5931\u8D25: \${error.message}\`, 'error'); - } -} - -function refreshLogs() { - // \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E - fetchRealLogs(); -} - -async function clearLogs() { - // \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E - const configCheck = await checkDeployPlatformConfig(); - if (!configCheck.success) { - customAlert(configCheck.message); - return; - } - - customConfirm('\u786E\u5B9A\u8981\u6E05\u7A7A\u6240\u6709\u65E5\u5FD7\u5417?', '\u6E05\u7A7A\u786E\u8BA4').then(async confirmed => { - if (confirmed) { - try { - const clearLogsUrl = currentAdminToken && checkAdminToken() - ? buildApiUrl('/api/logs/clear', true) - : buildApiUrl('/api/logs/clear'); - const response = await fetch(clearLogsUrl, { - method: 'POST' - }); - - if (!response.ok) { - throw new Error(\`HTTP error! status: \${response.status}\`); - } - - const result = await response.json(); - if (result.success) { - // \u6E05\u7A7A\u524D\u7AEF\u663E\u793A\u7684\u65E5\u5FD7 - logs = []; - renderLogs(); - addLog('\u65E5\u5FD7\u5DF2\u6E05\u7A7A', 'warn'); - } else { - addLog(\`\u6E05\u7A7A\u65E5\u5FD7\u5931\u8D25: \${result.message}\`, 'error'); - } - } catch (error) { - console.error('Failed to clear logs:', error); - addLog(\`\u6E05\u7A7A\u65E5\u5FD7\u5931\u8D25: \${error.message}\`, 'error'); - } - } - }); -} - -// JSON\u9AD8\u4EAE\u51FD\u6570 -function highlightJSON(obj) { - let json = JSON.stringify(obj, null, 2); - // \u8F6C\u4E49HTML\u7279\u6B8A\u5B57\u7B26 - json = json.replace(/&/g, '&').replace(//g, '>'); - - // \u9AD8\u4EAEJSON\u8BED\u6CD5 - return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(s*:)?|\b(true|false|null)\b|-?d+(?:.d*)?(?:[eE][+-]?d+)?)/g, function (match) { - let cls = 'number'; - if (/^"/.test(match)) { - if (/:$/.test(match)) { - cls = 'key'; - } else { - cls = 'string'; - } - } else if (/true|false/.test(match)) { - cls = 'boolean'; - } else if (/null/.test(match)) { - cls = 'null'; - } - return '' + match + ''; - }); -} -`});var bRt,IRt=ae(()=>{bRt=` -// API \u914D\u7F6E -const apiConfigs = { - searchAnime: { - name: '\u641C\u7D22\u52A8\u6F2B', - method: 'GET', - path: '/api/v2/search/anime', - params: [ - { name: 'keyword', label: '\u5173\u952E\u8BCD \u6216 \u64AD\u653E\u94FE\u63A5URL', type: 'text', required: true, placeholder: '\u793A\u4F8B: \u751F\u4E07\u7269 \u6216 http://v.qq.com/x/cover/rjae621myqca41h/j0032ubhl9s.html' } - ] - }, - searchEpisodes: { - name: '\u641C\u7D22\u5267\u96C6', - method: 'GET', - path: '/api/v2/search/episodes', - params: [ - { name: 'anime', label: '\u52A8\u6F2B\u540D\u79F0', type: 'text', required: true, placeholder: '\u793A\u4F8B: \u751F\u4E07\u7269' }, - { name: 'episode', label: '\u96C6', type: 'text', required: false, placeholder: '\u793A\u4F8B: 1, movie' } - ] - }, - matchAnime: { - name: '\u5339\u914D\u52A8\u6F2B', - method: 'POST', - path: '/api/v2/match', - params: [ - { name: 'fileName', label: '\u6587\u4EF6\u540D', type: 'text', required: true, placeholder: '\u793A\u4F8B: \u751F\u4E07\u7269 S02E08, \u65E0\u5FE7\u6E21.S02E08.2160p.WEB-DL.H265.DDP.5.1, \u7231\u60C5\u516C\u5BD3.ipartment.2009.S02E08.H.265.25fps.mkv, \u4EB2\u7231\u7684X S02E08, \u5B87\u5B99Marry Me? S02E08' } - ] - }, - getBangumi: { - name: '\u83B7\u53D6\u756A\u5267\u8BE6\u60C5', - method: 'GET', - path: '/api/v2/bangumi/:animeId', - params: [ - { name: 'animeId', label: '\u52A8\u6F2BID', type: 'text', required: true, placeholder: '\u793A\u4F8B: 236379' } - ] - }, - getComment: { - name: '\u83B7\u53D6\u5F39\u5E55', - method: 'GET', - path: '/api/v2/comment/:commentId', - params: [ - { name: 'commentId', label: '\u5F39\u5E55ID', type: 'text', required: true, placeholder: '\u793A\u4F8B: 10009' }, - { name: 'format', label: '\u683C\u5F0F', type: 'select', required: false, placeholder: '\u53EF\u9009: json\u6216xml', options: ['json', 'xml'] }, - { name: 'duration', label: '\u9644\u5E26\u65F6\u957F', type: 'select', required: false, placeholder: '\u53EF\u9009: true\u6216false', options: ['true', 'false'] }, - { name: 'segmentflag', label: '\u5206\u7247\u6807\u5FD7', type: 'select', required: false, placeholder: '\u53EF\u9009: true\u6216false', options: ['true', 'false'] } - ] - }, - getSegmentComment: { - name: '\u83B7\u53D6\u5206\u7247\u5F39\u5E55', - method: 'POST', - path: '/api/v2/segmentcomment', - params: [ - { name: 'format', label: '\u683C\u5F0F', type: 'select', required: false, placeholder: '\u53EF\u9009: json\u6216xml', options: ['json', 'xml'] }, - ], - hasBody: true, - bodyType: 'json' - } -}; - -// \u5F39\u5E55\u6D4B\u8BD5\u5168\u5C40\u72B6\u6001 -let danmuTestState = { - allComments: [], - filteredComments: [], - currentFilter: 'all', - displayedCount: 0, - pageSize: 100, - currentEpisodeId: null, - currentTitle: '', - currentDuration: 0, - currentCallTrace: null, - currentManualSearchCallTraceBase: null, - currentManualEpisodeCallTraceBase: null, - nextDanmuRequestId: 0, - activeDanmuRequestId: 0, - nextDanmuFlowRequestId: 0, - activeDanmuFlowRequestId: 0, - nextManualBangumiRequestId: 0, - activeManualBangumiRequestId: 0 -}; - -// \u521D\u59CB\u5316\u63A5\u53E3\u8C03\u8BD5\u754C\u9762 -function initApiTestInterface() { - const apiSelect = document.getElementById('api-select'); - if (apiSelect) { - apiSelect.addEventListener('keypress', function(event) { - if (event.key === 'Enter') { loadApiParams(); } - }); - } - const autoInput = document.getElementById('auto-match-filename'); - if (autoInput) { - autoInput.addEventListener('keypress', function(event) { - if (event.key === 'Enter') { autoMatchTest(); } - }); - } - const manualInput = document.getElementById('manual-search-keyword'); - if (manualInput) { - manualInput.addEventListener('keypress', function(event) { - if (event.key === 'Enter') { manualSearchAnime(); } - }); - } -} - -// \u4E3A\u53C2\u6570\u8F93\u5165\u6846\u6DFB\u52A0\u56DE\u8F66\u4E8B\u4EF6\u76D1\u542C -function attachEnterEventToParams() { - // \u5EF6\u8FDF\u6267\u884C\uFF0C\u786E\u4FDDDOM\u5143\u7D20\u5DF2\u7ECF\u6E32\u67D3 - setTimeout(() => { - // \u83B7\u53D6\u6240\u6709\u53C2\u6570\u8F93\u5165\u6846 - const paramInputs = document.querySelectorAll('#params-form input[type="text"], #params-form textarea, #params-form select'); - paramInputs.forEach(input => { - // \u79FB\u9664\u4E4B\u524D\u7684\u4E8B\u4EF6\u76D1\u542C\u5668\uFF08\u907F\u514D\u91CD\u590D\u7ED1\u5B9A\uFF09 - input.removeEventListener('keypress', handleParamInputEnter); - // \u6DFB\u52A0\u65B0\u7684\u4E8B\u4EF6\u76D1\u542C\u5668 - input.addEventListener('keypress', handleParamInputEnter); - }); - }, 100); -} - -function updateCommentDurationFieldVisibility() { - const apiSelect = document.getElementById('api-select'); - const durationGroup = document.querySelector('#params-form [data-param-name="duration"]'); - const durationInput = document.getElementById('param-duration'); - const formatInput = document.getElementById('param-format'); - - if (!durationGroup) return; - - const isCommentApi = apiSelect && apiSelect.value === 'getComment'; - const formatValue = formatInput ? formatInput.value.toLowerCase() : ''; - const shouldShowDuration = isCommentApi && (formatValue === '' || formatValue === 'json'); - - durationGroup.style.display = shouldShowDuration ? '' : 'none'; - if (!shouldShowDuration && durationInput) { - durationInput.value = ''; - } -} - -function bindCommentDurationFieldVisibility() { - const formatInput = document.getElementById('param-format'); - if (!formatInput) return; - formatInput.addEventListener('change', updateCommentDurationFieldVisibility); - updateCommentDurationFieldVisibility(); -} - -// \u5904\u7406\u53C2\u6570\u8F93\u5165\u6846\u7684\u56DE\u8F66\u4E8B\u4EF6 -function handleParamInputEnter(event) { - if (event.key === 'Enter') { - // \u89E6\u53D1\u6D4B\u8BD5API\u6309\u94AE\u7684\u70B9\u51FB\u4E8B\u4EF6 - const testButton = document.querySelector('#api-params .btn-success'); - if (testButton) { - testButton.click(); - } - } -} - -// \u63A5\u53E3\u8C03\u8BD5\u76F8\u5173 -function loadApiParams() { - const select = document.getElementById('api-select'); - const apiKey = select.value; - const paramsDiv = document.getElementById('api-params'); - const formDiv = document.getElementById('params-form'); - - if (!apiKey) { - paramsDiv.style.display = 'none'; - return; - } - - const config = apiConfigs[apiKey]; - paramsDiv.style.display = 'block'; - - let html = ''; - - // \u6DFB\u52A0\u67E5\u8BE2\u53C2\u6570\u90E8\u5206 - if (config.params && config.params.length > 0) { - html += '
'; - html += '

\u67E5\u8BE2\u53C2\u6570

'; - html += config.params.map(param => { - if (param.type === 'select') { - // \u4E3Aselect\u7C7B\u578B\u53C2\u6570\u6DFB\u52A0\u9ED8\u8BA4\u9009\u9879 - let optionsHtml = ''; - if (param.options) { - optionsHtml += param.options.map(opt => \`\`).join(''); - } - return \` -
- - - \${param.placeholder ? \`
\${param.placeholder}
\` : ''} -
- \`; - } - // \u4F7F\u7528placeholder\u5C5E\u6027\u663E\u793A\u793A\u4F8B\u53C2\u6570 - const placeholder = param.placeholder ? param.placeholder : "\u8BF7\u8F93\u5165" + param.label; - return \` -
- - -
- \`; - }).join(''); - html += '
'; - } - - // \u6DFB\u52A0\u8BF7\u6C42\u4F53\u90E8\u5206\uFF08\u5982\u679C\u63A5\u53E3\u6709\u8BF7\u6C42\u4F53\uFF09 - if (config.hasBody) { - html += '
'; - html += '

\u8BF7\u6C42\u4F53

'; - html += \`
- - -
\u8F93\u5165JSON\u683C\u5F0F\u7684\u8BF7\u6C42\u4F53\u5185\u5BB9
-
\`; - html += '
'; - } - - if (!html) { - html = '

\u6B64\u63A5\u53E3\u65E0\u9700\u53C2\u6570

'; - } - - formDiv.innerHTML = html; - - // \u4E3A\u53C2\u6570\u8F93\u5165\u6846\u6DFB\u52A0\u56DE\u8F66\u4E8B\u4EF6\u76D1\u542C - attachEnterEventToParams(); - bindCommentDurationFieldVisibility(); -} - -function testApi() { - const select = document.getElementById('api-select'); - const apiKey = select.value; - const sendButton = document.querySelector('#api-params .btn-success'); // \u83B7\u53D6\u53D1\u9001\u8BF7\u6C42\u6309\u94AE - - if (!apiKey) { - addLog('\u8BF7\u5148\u9009\u62E9\u63A5\u53E3', 'error'); - return; - } - - // \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001 - const originalText = sendButton.innerHTML; - sendButton.innerHTML = ''; - sendButton.disabled = true; - - const config = apiConfigs[apiKey]; - const params = {}; - - // \u83B7\u53D6\u67E5\u8BE2\u53C2\u6570 - if (config.params) { - config.params.forEach(param => { - const value = document.getElementById(\`param-\${param.name}\`).value; - if (value) params[param.name] = value; - }); - } - - addLog(\`\u8C03\u7528\u63A5\u53E3: \${config.name} (\${config.method} \${config.path})\`, 'info'); - addLog(\`\u8BF7\u6C42\u53C2\u6570: \${JSON.stringify(params)}\`, 'info'); - - // \u6784\u5EFA\u8BF7\u6C42URL - let url = config.path; - - // \u68C0\u67E5\u662F\u5426\u4E3A\u8DEF\u5F84\u53C2\u6570\u63A5\u53E3 - const isPathParameterApi = config.path.includes(':'); - - if (isPathParameterApi) { - // \u5904\u7406\u8DEF\u5F84\u53C2\u6570\u63A5\u53E3 (/api/v2/comment \u548C /api/v2/bangumi) - // \u5148\u5206\u79BB\u8DEF\u5F84\u53C2\u6570\u548C\u67E5\u8BE2\u53C2\u6570 - const pathParams = {}; - const queryParams = {}; - - // \u5206\u7C7B\u53C2\u6570 - for (const [key, value] of Object.entries(params)) { - // \u68C0\u67E5\u53C2\u6570\u662F\u5426\u4E3A\u8DEF\u5F84\u53C2\u6570 - if (config.path.includes(':' + key)) { - pathParams[key] = value; - } else { - // \u5176\u4ED6\u53C2\u6570\u4F5C\u4E3A\u67E5\u8BE2\u53C2\u6570 - queryParams[key] = value; - } - } - - // \u66FF\u6362\u8DEF\u5F84\u53C2\u6570 - for (const [key, value] of Object.entries(pathParams)) { - url = url.replace(':' + key, encodeURIComponent(value)); - } - - // \u6DFB\u52A0\u67E5\u8BE2\u53C2\u6570 - if (config.method === 'GET' && Object.keys(queryParams).length > 0) { - const queryString = new URLSearchParams(queryParams).toString(); - url = url + '?' + queryString; - } - } else { - // \u4FDD\u6301\u539F\u6765\u7684\u903B\u8F91\uFF0C\u7528\u4E8E search/anime \u7B49\u63A5\u53E3 - if (config.method === 'GET') { - const queryString = new URLSearchParams(params).toString(); - url = url + '?' + queryString; - } else if (config.method === 'POST' && apiKey === 'getSegmentComment') { - // \u5BF9\u4E8E getSegmentComment \u63A5\u53E3\uFF0C\u9700\u8981\u5C06 format \u53C2\u6570\u6DFB\u52A0\u5230 URL \u67E5\u8BE2\u53C2\u6570\u4E2D - const queryParams = {}; - if (params.format) { - queryParams.format = params.format; - } - if (Object.keys(queryParams).length > 0) { - const queryString = new URLSearchParams(queryParams).toString(); - url = url + '?' + queryString; - } - } - } - - // \u914D\u7F6E\u8BF7\u6C42\u9009\u9879 - const requestOptions = { - method: config.method, - headers: { - 'Content-Type': 'application/json' - } - }; - - // \u5904\u7406\u8BF7\u6C42\u4F53 - if (config.hasBody) { - // \u4ECE\u8BF7\u6C42\u4F53\u8F93\u5165\u6846\u83B7\u53D6\u5185\u5BB9 - const bodyContent = document.getElementById('body-content').value; - if (bodyContent) { - try { - // \u5C1D\u8BD5\u89E3\u6790\u7528\u6237\u8F93\u5165\u7684JSON - const bodyData = JSON.parse(bodyContent); - requestOptions.body = JSON.stringify(bodyData); - } catch (e) { - addLog('\u8BF7\u6C42\u4F53JSON\u683C\u5F0F\u9519\u8BEF: ' + e.message, 'error'); - sendButton.innerHTML = originalText; - sendButton.disabled = false; - return; - } - } else { - // \u5982\u679C\u6CA1\u6709\u5728\u8BF7\u6C42\u4F53\u8F93\u5165\u6846\u4E2D\u8F93\u5165\u5185\u5BB9\uFF0C\u5219\u4F7F\u7528\u53C2\u6570\u6784\u5EFA\u8BF7\u6C42\u4F53\uFF08\u5411\u540E\u517C\u5BB9\uFF09 - if (apiKey === 'getSegmentComment') { - // \u5BF9\u4E8E getSegmentComment \u63A5\u53E3\uFF0C\u521B\u5EFA segment \u5BF9\u8C61 - const segmentData = { url: params.url }; - if (params.format) { - segmentData.format = params.format; - } - requestOptions.body = JSON.stringify(segmentData); - } else { - requestOptions.body = JSON.stringify(params); - } - } - } else if (config.method === 'POST') { - // \u5BF9\u4E8E\u6CA1\u6709\u7279\u6B8A\u8BF7\u6C42\u4F53\u914D\u7F6E\u7684POST\u63A5\u53E3\uFF0C\u4F7F\u7528\u53C2\u6570\u6784\u5EFA\u8BF7\u6C42\u4F53 - requestOptions.body = JSON.stringify(params); - } - - // \u53D1\u9001\u771F\u5B9EAPI\u8BF7\u6C42 - fetch(buildApiUrl(url), requestOptions) - .then(response => { - if (!response.ok) { - throw new Error(\`HTTP error! status: \${response.status}\`); - } - - // \u68C0\u67E5format\u53C2\u6570\u4EE5\u786E\u5B9A\u5982\u4F55\u5904\u7406\u54CD\u5E94 - const formatParam = params.format || 'json'; - - if (formatParam.toLowerCase() === 'xml') { - // \u5BF9\u4E8EXML\u683C\u5F0F\uFF0C\u8FD4\u56DE\u6587\u672C\u5185\u5BB9 - return response.text().then(text => ({ - data: text, - format: 'xml' - })); - } else { - // \u5BF9\u4E8EJSON\u683C\u5F0F\u6216\u5176\u4ED6\u60C5\u51B5\uFF0C\u8FD4\u56DEJSON\u5BF9\u8C61 - return response.json().then(json => ({ - data: json, - format: 'json' - })); - } - }) - .then(result => { - // \u663E\u793A\u54CD\u5E94\u7ED3\u679C - document.getElementById('api-response-container').style.display = 'block'; - - if (result.format === 'xml') { - // \u663E\u793AXML\u54CD\u5E94 - document.getElementById('api-response').textContent = result.data; - document.getElementById('api-response').className = 'api-response xml'; // \u4F7F\u7528XML\u4E13\u7528\u6837\u5F0F\u7C7B - } else { - // \u663E\u793AJSON\u54CD\u5E94 - document.getElementById('api-response').className = 'json-response'; - document.getElementById('api-response').innerHTML = highlightJSON(result.data); - } - - addLog('\u63A5\u53E3\u8C03\u7528\u6210\u529F', 'success'); - }) - .catch(error => { - // \u5904\u7406\u9519\u8BEF - const errorMessage = \`API\u8BF7\u6C42\u5931\u8D25: \${error.message}\`; - document.getElementById('api-response-container').style.display = 'block'; - document.getElementById('api-response').textContent = errorMessage; - // \u6DFB\u52A0\u9519\u8BEF\u4FE1\u606F\u7684CSS\u7C7B - document.getElementById('api-response').className = 'error-response'; - addLog(errorMessage, 'error'); - }) - .finally(() => { - // \u6062\u590D\u6309\u94AE\u72B6\u6001 - sendButton.innerHTML = originalText; - sendButton.disabled = false; - }); -} - -// ===================== -// \u6807\u7B7E\u9875\u5207\u6362 -// ===================== -function switchApiTopTab(tab, event) { - document.querySelectorAll('.api-top-tab').forEach(btn => btn.classList.remove('active')); - document.querySelectorAll('.api-tab-content').forEach(el => el.classList.remove('active')); - event.target.classList.add('active'); - if (tab === 'debug') { - document.getElementById('api-debug-content').classList.add('active'); - } else { - document.getElementById('danmu-test-content').classList.add('active'); - } -} - -function switchDanmuTestTab(tab, event) { - document.querySelectorAll('.danmu-test-tab').forEach(btn => btn.classList.remove('active')); - document.querySelectorAll('.danmu-test-panel').forEach(el => el.classList.remove('active')); - event.target.classList.add('active'); - if (tab === 'auto') { - document.getElementById('auto-match-panel').classList.add('active'); - } else { - document.getElementById('manual-match-panel').classList.add('active'); - } -} - -// ===================== -// \u5DE5\u5177\u51FD\u6570 -// ===================== -function decColorToHex(dec) { - const n = parseInt(dec) || 16777215; - return '#' + n.toString(16).padStart(6, '0'); -} - -function parseDanmuMode(p) { - const parts = p.split(','); - return parseInt(parts[1]) || 1; -} - -function parseDanmuColor(p) { - const parts = p.split(','); - return parseInt(parts[2]) || 16777215; -} - -function parseDanmuTime(p) { - return parseFloat(p.split(',')[0]) || 0; -} - -function getModeLabel(mode) { - switch (mode) { - case 4: return '\u5E95\u90E8'; - case 5: return '\u9876\u90E8'; - default: return '\u6EDA\u52A8'; - } -} - -function formatDuration(seconds) { - const s = Math.floor(seconds); - const h = Math.floor(s / 3600); - const m = Math.floor((s % 3600) / 60); - const sec = s % 60; - if (h > 0) return h + ':' + String(m).padStart(2,'0') + ':' + String(sec).padStart(2,'0'); - return m + ':' + String(sec).padStart(2,'0'); -} - -function getValidDanmuTimes(comments) { - return comments - .map(c => c.t !== undefined ? Number(c.t) : parseDanmuTime(c.p)) - .filter(time => Number.isFinite(time) && time >= 0) - .sort((a, b) => a - b); -} - -function getPercentileValue(sortedValues, percentile) { - if (!sortedValues.length) return 0; - const safePercentile = Math.min(Math.max(percentile, 0), 1); - const index = Math.floor((sortedValues.length - 1) * safePercentile); - return sortedValues[index] || 0; -} - -function getMedian(values) { - if (!values.length) return 0; - const sorted = [...values].sort((a, b) => a - b); - const mid = Math.floor(sorted.length / 2); - return sorted.length % 2 === 0 ? (sorted[mid - 1] + sorted[mid]) / 2 : sorted[mid]; -} - -function buildTailGapThreshold(sortedValues) { - if (sortedValues.length < 2) return 45; - - const gaps = []; - const startIndex = Math.max(1, sortedValues.length - 80); - for (let i = startIndex; i < sortedValues.length; i++) { - const gap = sortedValues[i] - sortedValues[i - 1]; - if (gap > 0) { - gaps.push(gap); - } - } - - if (!gaps.length) return 45; - - const sortedGaps = [...gaps].sort((a, b) => a - b); - const medianGap = getMedian(sortedGaps); - const p90Gap = getPercentileValue(sortedGaps, 0.9); - return Math.min(240, Math.max(45, medianGap * 12, p90Gap * 3)); -} - -function estimateVideoDurationFromComments(comments) { - const validTimes = getValidDanmuTimes(comments); - if (!validTimes.length) return 0; - if (validTimes.length < 200) return validTimes[validTimes.length - 1]; - - const p995Time = getPercentileValue(validTimes, 0.995); - const p998Time = getPercentileValue(validTimes, 0.998); - const gapThreshold = buildTailGapThreshold(validTimes); - const trimBaseline = p998Time + Math.max(90, gapThreshold * 2); - let endIndex = validTimes.length - 1; - - while (endIndex > 0) { - let tailStartIndex = endIndex; - while (tailStartIndex > 0) { - const gap = validTimes[tailStartIndex] - validTimes[tailStartIndex - 1]; - if (gap > gapThreshold) break; - tailStartIndex--; - } - - const tailClusterSize = endIndex - tailStartIndex + 1; - const tailClusterSpan = validTimes[endIndex] - validTimes[tailStartIndex]; - const previousGap = tailStartIndex > 0 ? validTimes[tailStartIndex] - validTimes[tailStartIndex - 1] : 0; - const isIsolatedTail = tailStartIndex > 0 - && tailClusterSize <= 2 - && tailClusterSpan <= 15 - && previousGap > gapThreshold; - - if (!isIsolatedTail || validTimes[endIndex] <= trimBaseline) { - break; - } - - endIndex = tailStartIndex - 1; - } - - return Math.max(validTimes[Math.max(endIndex, 0)] || 0, p995Time); -} - -function getEffectiveDuration(comments, explicitDuration) { - if (Number.isFinite(explicitDuration) && explicitDuration > 0) { - return explicitDuration; - } - return estimateVideoDurationFromComments(comments); -} - -function setBtnLoading(btn, loading) { - if (!btn) return; - if (loading) { - btn._origText = btn.innerHTML; - btn.innerHTML = ''; - btn.disabled = true; - } else { - btn.innerHTML = btn._origText || '\u6309\u94AE'; - btn.disabled = false; - } -} - -// \u901A\u7528\uFF1A\u663E\u793A\u6307\u5B9A\u9762\u677F\uFF0C\u9690\u85CF\u540C\u7EA7\u5176\u4ED6\u9762\u677F -function showDanmuView(showIds, hideIds) { - hideIds.forEach(id => { const el = document.getElementById(id); if (el) el.style.display = 'none'; }); - showIds.forEach(id => { const el = document.getElementById(id); if (el) el.style.display = 'block'; }); -} - -// \u751F\u6210\u8FD4\u56DE\u6309\u94AEHTML -function backBtnHtml(text, onclick) { - return ''; -} - -function inlineJsString(value) { - return escapeHtml(JSON.stringify(String(value || ''))); -} - -function createDanmuCallTrace(mode, inputText) { - return { - mode: mode || 'manual', - inputText: inputText || '', - steps: [], - startedAt: performance.now() - }; -} - -function cloneDanmuCallTrace(trace) { - if (!trace) return null; - return { - mode: trace.mode, - inputText: trace.inputText, - startedAt: performance.now(), - steps: (trace.steps || []).map(step => Object.assign({}, step)) - }; -} - -function createDanmuCallStep(step) { - return Object.assign({ - name: '', - method: 'GET', - url: '', - params: '', - result: '', - elapsed: 0, - status: 'success' - }, step); -} - -function addDanmuCallStep(trace, step) { - if (!trace) return; - trace.steps.push(createDanmuCallStep(step)); -} - -function finishDanmuCallStep(trace, startedAt, step) { - addDanmuCallStep(trace, Object.assign({}, step, { - elapsed: performance.now() - startedAt - })); -} - -function finishDanmuCallFailure(trace, startedAt, step, error) { - const message = error && error.message ? error.message : String(error || '\u672A\u77E5\u9519\u8BEF'); - finishDanmuCallStep(trace, startedAt, Object.assign({ - status: 'error', - result: '\u5931\u8D25\uFF1A' + message - }, step)); -} - -function finishDanmuCallEmpty(trace, startedAt, step, message) { - finishDanmuCallStep(trace, startedAt, Object.assign({ - status: 'empty', - result: message || '\u65E0\u7ED3\u679C' - }, step)); -} - -function safeDanmuApiPath(path) { - return String(path || '').replace(new RegExp('^/[^/]+/api/'), '//api/'); -} - -function renderDanmuCallTrace(trace) { - return ''; -} - -function getDanmuCallTraceTotalMs(trace) { - if (!trace || !Array.isArray(trace.steps) || trace.steps.length === 0) return 0; - return trace.steps.reduce((sum, step) => sum + (Number(step.elapsed) || 0), 0); -} - -function renderDanmuCallFailure(trace, title, message, source) { - let html = '
'; - if (source === 'manual-episode') { - html += backBtnHtml('\u8FD4\u56DE\u5217\u8868', 'backToEpisodeList()'); - } else if (source === 'manual-anime') { - html += backBtnHtml('\u8FD4\u56DE\u641C\u7D22\u7ED3\u679C', 'backToManualSearch()'); - } - html += '
'; - html += '
' + escapeHtml(title || '\u8C03\u7528\u5931\u8D25') + '\uFF1A' + escapeHtml(message || '\u8BF7\u6C42\u5931\u8D25') + '
'; - html += renderDanmuCallTrace(trace); - return html; -} - -function showDanmuCallTraceFailure(trace, title, message, source) { - const resultArea = document.getElementById('danmu-result-area'); - if (!resultArea) return; - resultArea.innerHTML = renderDanmuCallFailure(trace, title, message, source); - resultArea.style.display = 'block'; -} - -function getDanmuCallTraceTotalSeconds(trace, fallbackSeconds) { - const totalMs = getDanmuCallTraceTotalMs(trace); - if (totalMs > 0) return (totalMs / 1000).toFixed(2); - return fallbackSeconds || '0.00'; -} - -function formatCallElapsed(ms) { - if (!Number.isFinite(ms)) return '--'; - return ms >= 1000 ? (ms / 1000).toFixed(2) + 's' : Math.round(ms) + 'ms'; -} - -function startDanmuFlowRequest() { - const requestId = ++danmuTestState.nextDanmuFlowRequestId; - danmuTestState.activeDanmuFlowRequestId = requestId; - danmuTestState.activeManualBangumiRequestId = 0; - invalidateActiveDanmuRequest(); - return requestId; -} - -function isCurrentDanmuFlowRequest(requestId) { - return danmuTestState.activeDanmuFlowRequestId === requestId; -} - -function startManualBangumiRequest() { - const requestId = ++danmuTestState.nextManualBangumiRequestId; - danmuTestState.activeManualBangumiRequestId = requestId; - danmuTestState.activeDanmuFlowRequestId = 0; - invalidateActiveDanmuRequest(); - return requestId; -} - -function isCurrentManualBangumiRequest(requestId) { - return danmuTestState.activeManualBangumiRequestId === requestId; -} - -function invalidateActiveDanmuRequest() { - danmuTestState.activeDanmuRequestId = 0; -} - -function setDanmuFlowButtonLoading(btn, requestId, loading) { - if (!btn) return; - if (loading) { - btn._danmuFlowRequestId = requestId; - setBtnLoading(btn, true); - return; - } - if (btn._danmuFlowRequestId === requestId) { - setBtnLoading(btn, false); - btn._danmuFlowRequestId = 0; - } -} - -// ===================== -// \u81EA\u52A8\u5339\u914D\u6D4B\u8BD5 -// ===================== -async function autoMatchTest() { - const fileName = document.getElementById('auto-match-filename').value.trim(); - if (!fileName) { customAlert('\u8BF7\u8F93\u5165\u6587\u4EF6\u540D'); return; } - - const flowRequestId = startDanmuFlowRequest(); - const btn = document.getElementById('auto-match-btn'); - setDanmuFlowButtonLoading(btn, flowRequestId, true); - document.getElementById('danmu-result-area').style.display = 'none'; - addLog('\u81EA\u52A8\u5339\u914D\u6D4B\u8BD5: ' + fileName, 'info'); - const trace = createDanmuCallTrace('auto', fileName); - danmuTestState.currentCallTrace = trace; - danmuTestState.currentManualSearchCallTraceBase = null; - danmuTestState.currentManualEpisodeCallTraceBase = null; - - let matchStartedAt = 0; - try { - matchStartedAt = performance.now(); - const resp = await fetch(buildApiUrl('/api/v2/match'), { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ fileName: fileName }) - }); - if (!resp.ok) throw new Error('HTTP ' + resp.status); - const data = await resp.json(); - if (!isCurrentDanmuFlowRequest(flowRequestId)) return; - - if (data.isMatched && data.matches && data.matches.length > 0) { - const best = data.matches[0]; - const title = (best.animeTitle || '') + ' ' + (best.episodeTitle || ''); - finishDanmuCallStep(trace, matchStartedAt, { - name: '\u5339\u914D', - method: 'POST', - url: '/api/v2/match', - params: '\u6587\u4EF6\u540D\uFF1A' + fileName, - result: '\u547D\u4E2D ' + data.matches.length + ' \u4E2A\u7ED3\u679C\uFF0CepisodeId: ' + best.episodeId - }); - addLog('\u81EA\u52A8\u5339\u914D\u547D\u4E2D: ' + title + ' (\u5171' + data.matches.length + '\u4E2A\u7ED3\u679C\uFF0C\u53D6\u7B2C1\u4E2A)', 'success'); - setDanmuFlowButtonLoading(btn, flowRequestId, false); - fetchDanmuForTest(best.episodeId, title, 'auto', trace); - return; - } else { - finishDanmuCallEmpty(trace, matchStartedAt, { - name: '\u5339\u914D', - method: 'POST', - url: '/api/v2/match', - params: '\u6587\u4EF6\u540D\uFF1A' + fileName - }, '\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C'); - customAlert('\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C'); - addLog('\u81EA\u52A8\u5339\u914D\u65E0\u7ED3\u679C', 'warn'); - showDanmuCallTraceFailure(trace, '\u81EA\u52A8\u5339\u914D\u65E0\u7ED3\u679C', '\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C', 'auto'); - } - } catch (e) { - if (!isCurrentDanmuFlowRequest(flowRequestId)) return; - finishDanmuCallFailure(trace, matchStartedAt || performance.now(), { - name: '\u5339\u914D', - method: 'POST', - url: '/api/v2/match', - params: '\u6587\u4EF6\u540D\uFF1A' + fileName - }, e); - customAlert('\u5339\u914D\u5931\u8D25: ' + e.message); - addLog('\u81EA\u52A8\u5339\u914D\u5931\u8D25: ' + e.message, 'error'); - showDanmuCallTraceFailure(trace, '\u81EA\u52A8\u5339\u914D\u5931\u8D25', e.message, 'auto'); - } finally { - setDanmuFlowButtonLoading(btn, flowRequestId, false); - } -} - -// ===================== -// \u624B\u52A8\u5339\u914D\u6D4B\u8BD5 -// ===================== -async function manualSearchAnime() { - const keyword = document.getElementById('manual-search-keyword').value.trim(); - if (!keyword) { customAlert('\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57'); return; } - - const flowRequestId = startDanmuFlowRequest(); - const btn = document.getElementById('manual-search-btn'); - setDanmuFlowButtonLoading(btn, flowRequestId, true); - document.getElementById('manual-anime-list').style.display = 'none'; - document.getElementById('manual-episode-list').style.display = 'none'; - document.getElementById('danmu-result-area').style.display = 'none'; - addLog('\u624B\u52A8\u641C\u7D22: ' + keyword, 'info'); - const trace = createDanmuCallTrace('manual', keyword); - danmuTestState.currentCallTrace = trace; - danmuTestState.currentManualSearchCallTraceBase = null; - danmuTestState.currentManualEpisodeCallTraceBase = null; - - let searchStartedAt = 0; - let searchUrl = ''; - try { - searchUrl = '/api/v2/search/anime?keyword=' + encodeURIComponent(keyword); - searchStartedAt = performance.now(); - const resp = await fetch(buildApiUrl(searchUrl)); - if (!resp.ok) throw new Error('HTTP ' + resp.status); - const data = await resp.json(); - if (!isCurrentDanmuFlowRequest(flowRequestId)) return; - - if (data.success && data.animes && data.animes.length > 0) { - finishDanmuCallStep(trace, searchStartedAt, { - name: '\u641C\u7D22', - method: 'GET', - url: searchUrl, - params: '\u5173\u952E\u8BCD\uFF1A' + keyword, - result: '\u627E\u5230 ' + data.animes.length + ' \u4E2A\u52A8\u6F2B' - }); - danmuTestState.currentManualSearchCallTraceBase = cloneDanmuCallTrace(trace); - displayManualAnimeList(data.animes); - addLog('\u641C\u7D22\u5230 ' + data.animes.length + ' \u4E2A\u52A8\u6F2B', 'success'); - } else { - finishDanmuCallEmpty(trace, searchStartedAt, { - name: '\u641C\u7D22', - method: 'GET', - url: searchUrl, - params: '\u5173\u952E\u8BCD\uFF1A' + keyword - }, '\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B'); - customAlert('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B'); - addLog('\u641C\u7D22\u65E0\u7ED3\u679C', 'warn'); - showDanmuCallTraceFailure(trace, '\u641C\u7D22\u65E0\u7ED3\u679C', '\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B', 'manual-search'); - } - } catch (e) { - if (!isCurrentDanmuFlowRequest(flowRequestId)) return; - finishDanmuCallFailure(trace, searchStartedAt || performance.now(), { - name: '\u641C\u7D22', - method: 'GET', - url: searchUrl || '/api/v2/search/anime', - params: '\u5173\u952E\u8BCD\uFF1A' + keyword - }, e); - customAlert('\u641C\u7D22\u5931\u8D25: ' + e.message); - addLog('\u641C\u7D22\u5931\u8D25: ' + e.message, 'error'); - showDanmuCallTraceFailure(trace, '\u641C\u7D22\u5931\u8D25', e.message, 'manual-search'); - } finally { - setDanmuFlowButtonLoading(btn, flowRequestId, false); - } -} - -function displayManualAnimeList(animes) { - const container = document.getElementById('manual-anime-list'); - let html = '

\u641C\u7D22\u7ED3\u679C

'; - animes.forEach(anime => { - const animeId = Number.parseInt(anime.animeId, 10); - if (!Number.isFinite(animeId)) return; - const img = escapeHtml(anime.imageUrl || 'https://placehold.co/150x200?text=No+Image'); - html += '
'; - html += '' + escapeHtml(anime.animeTitle) + ''; - html += '

' + escapeHtml(anime.animeTitle) + ' - \u5171' + (anime.episodeCount || '?') + '\u96C6

'; - html += '
'; - }); - html += '
'; - container.innerHTML = html; - container.style.display = 'block'; -} - -async function manualGetBangumi(animeId) { - const detailRequestId = startManualBangumiRequest(); - const requestTrace = danmuTestState.currentManualSearchCallTraceBase - ? cloneDanmuCallTrace(danmuTestState.currentManualSearchCallTraceBase) - : createDanmuCallTrace('manual', String(animeId || '')); - danmuTestState.currentCallTrace = requestTrace; - addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5: ' + animeId, 'info'); - // \u9690\u85CF\u641C\u7D22\u7ED3\u679C\uFF0C\u663E\u793A\u5267\u96C6\u5217\u8868\u533A\u57DF - showDanmuView(['manual-episode-list'], ['manual-anime-list', 'danmu-result-area']); - - let bangumiStartedAt = 0; - const bangumiUrl = '/api/v2/bangumi/' + animeId; - try { - bangumiStartedAt = performance.now(); - const resp = await fetch(buildApiUrl(bangumiUrl)); - if (!resp.ok) throw new Error('HTTP ' + resp.status); - const data = await resp.json(); - if (!isCurrentManualBangumiRequest(detailRequestId)) return; - - const episodes = data && data.bangumi && Array.isArray(data.bangumi.episodes) ? data.bangumi.episodes : []; - if (data.success && data.bangumi && episodes.length > 0) { - finishDanmuCallStep(requestTrace, bangumiStartedAt, { - name: '\u756A\u5267\u8BE6\u60C5', - method: 'GET', - url: bangumiUrl, - params: 'animeId: ' + animeId, - result: '\u83B7\u53D6\u5230 ' + episodes.length + ' \u4E2A\u5267\u96C6' - }); - danmuTestState.currentManualEpisodeCallTraceBase = cloneDanmuCallTrace(requestTrace); - displayManualEpisodeList(data.bangumi.animeTitle, episodes); - addLog('\u83B7\u53D6\u5230 ' + episodes.length + ' \u4E2A\u5267\u96C6', 'success'); - } else { - finishDanmuCallEmpty(requestTrace, bangumiStartedAt, { - name: '\u756A\u5267\u8BE6\u60C5', - method: 'GET', - url: bangumiUrl, - params: 'animeId: ' + animeId - }, '\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F'); - customAlert('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F'); - showDanmuCallTraceFailure(requestTrace, '\u756A\u5267\u8BE6\u60C5\u65E0\u5267\u96C6', '\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F', 'manual-anime'); - // \u6062\u590D\u641C\u7D22\u7ED3\u679C - showDanmuView(['manual-anime-list'], ['manual-episode-list']); - } - } catch (e) { - if (!isCurrentManualBangumiRequest(detailRequestId)) return; - finishDanmuCallFailure(requestTrace, bangumiStartedAt || performance.now(), { - name: '\u756A\u5267\u8BE6\u60C5', - method: 'GET', - url: bangumiUrl, - params: 'animeId: ' + animeId - }, e); - customAlert('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + e.message); - addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + e.message, 'error'); - showDanmuCallTraceFailure(requestTrace, '\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25', e.message, 'manual-anime'); - showDanmuView(['manual-anime-list'], ['manual-episode-list']); - } -} - -function displayManualEpisodeList(animeTitle, episodes) { - const container = document.getElementById('manual-episode-list'); - let html = backBtnHtml('\u8FD4\u56DE\u641C\u7D22\u7ED3\u679C', 'backToManualSearch()'); - html += '

\u5267\u96C6\u5217\u8868

'; - html += '

' + escapeHtml(animeTitle) + '

'; - - // \u6DFB\u52A0\u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\u7684\u529F\u80FD - html += \` -
- \u8DF3\u8F6C\u5230\u7B2C - - \u96C6 - - \u5171\${episodes.length}\u96C6 -
\`; - - html += '
'; - episodes.forEach(ep => { - const episodeId = Number.parseInt(ep.episodeId, 10); - const episodeNumber = Number.parseInt(ep.episodeNumber, 10); - if (!Number.isFinite(episodeId) || !Number.isFinite(episodeNumber)) return; - const title = String(animeTitle || '') + ' \u7B2C' + episodeNumber + '\u96C6'; - html += '
'; - html += '
\u7B2C' + episodeNumber + '\u96C6 - ' + escapeHtml(ep.episodeTitle || '\u65E0\u6807\u9898') + '
'; - html += ''; - html += '
'; - }); - html += '
'; - container.innerHTML = html; - container.style.display = 'block'; - setTimeout(() => container.scrollIntoView({ behavior: 'smooth', block: 'start' }), 10); -} - -// \u8FD4\u56DE\u641C\u7D22\u7ED3\u679C -function backToManualSearch() { - showDanmuView(['manual-anime-list'], ['manual-episode-list', 'danmu-result-area']); -} - -// \u8FD4\u56DE\u5267\u96C6\u5217\u8868 -function backToEpisodeList() { - showDanmuView(['manual-episode-list'], ['danmu-result-area']); -} - -// \u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570 -function jumpToEpisode() { - const episodeInput = document.getElementById('jump-episode-input'); - const episodeNumber = parseInt(episodeInput.value); - - if (!episodeNumber || episodeNumber <= 0) { - customAlert('\u8BF7\u8F93\u5165\u6709\u6548\u7684\u96C6\u6570\uFF08\u6B63\u6574\u6570\uFF09'); - return; - } - - // \u67E5\u627E\u5BF9\u5E94\u96C6\u6570\u7684\u5143\u7D20 - const episodeElement = document.getElementById('episode-item-' + episodeNumber); - if (episodeElement) { - // \u6EDA\u52A8\u5230\u6307\u5B9A\u5143\u7D20\u4F4D\u7F6E - episodeElement.scrollIntoView({ behavior: 'smooth', block: 'center' }); - // \u6DFB\u52A0\u9AD8\u4EAE\u6548\u679C\u4EE5\u4FBF\u8BC6\u522B - episodeElement.classList.add('episode-item-highlight'); - setTimeout(() => { - episodeElement.classList.remove('episode-item-highlight'); - }, 2000); - } else { - customAlert('\u627E\u4E0D\u5230\u7B2C' + episodeNumber + '\u96C6'); - } -} - -function isCurrentDanmuRequest(requestId) { - return danmuTestState.activeDanmuRequestId === requestId; -} - -// ===================== -// \u83B7\u53D6\u5F39\u5E55\u5E76\u5C55\u793A\u7ED3\u679C -// ===================== -async function fetchDanmuForTest(episodeId, title, source, traceBase) { - addLog('\u83B7\u53D6\u5F39\u5E55: ' + episodeId + ' (' + title + ')', 'info'); - const requestId = ++danmuTestState.nextDanmuRequestId; - danmuTestState.activeDanmuRequestId = requestId; - let requestTrace = null; - if (traceBase) { - requestTrace = cloneDanmuCallTrace(traceBase); - danmuTestState.currentCallTrace = requestTrace; - } else if (source === 'manual' && danmuTestState.currentManualEpisodeCallTraceBase) { - danmuTestState.currentCallTrace = cloneDanmuCallTrace(danmuTestState.currentManualEpisodeCallTraceBase); - requestTrace = danmuTestState.currentCallTrace; - } else { - requestTrace = cloneDanmuCallTrace(danmuTestState.currentCallTrace); - danmuTestState.currentCallTrace = requestTrace; - } - danmuTestState.currentEpisodeId = episodeId; - danmuTestState.currentTitle = title; - danmuTestState.currentDuration = 0; - - // \u9690\u85CF\u4E0A\u7EA7\u9762\u677F - if (source === 'manual') { - showDanmuView([], ['manual-episode-list', 'manual-anime-list', 'danmu-result-area']); - } else { - showDanmuView([], ['danmu-result-area']); - } - - // \u663E\u793A\u52A0\u8F7D\u52A8\u753B - const resultArea = document.getElementById('danmu-result-area'); - resultArea.innerHTML = '
\u6B63\u5728\u83B7\u53D6\u5F39\u5E55\u6570\u636E...
'; - resultArea.style.display = 'block'; - - const startTime = performance.now(); - try { - const commentUrl = '/api/v2/comment/' + episodeId + '?format=json&duration=true'; - const data = await fetch(buildApiUrl(commentUrl)) - .then(resp => { - if (!resp.ok) throw new Error('HTTP ' + resp.status); - return resp.json(); - }); - if (!isCurrentDanmuRequest(requestId)) return; - const elapsed = ((performance.now() - startTime) / 1000).toFixed(2); - const durationSeconds = Number((data && data.videoDuration) || 0); - - if (!data.comments || data.comments.length === 0) { - finishDanmuCallEmpty(requestTrace, startTime, { - name: '\u5F39\u5E55', - method: 'GET', - url: commentUrl, - params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true' - }, '\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E'); - customAlert('\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E'); - addLog('\u65E0\u5F39\u5E55\u6570\u636E', 'warn'); - const failureSource = source === 'manual' ? 'manual-episode' : source; - resultArea.innerHTML = renderDanmuCallFailure(requestTrace, '\u65E0\u5F39\u5E55\u6570\u636E', '\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E', failureSource); - resultArea.style.display = 'block'; - return; - } - - finishDanmuCallStep(requestTrace, startTime, { - name: '\u5F39\u5E55', - method: 'GET', - url: commentUrl, - params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true', - result: data.comments.length + ' \u6761\u5F39\u5E55' - }); - - addLog('\u83B7\u53D6\u5230 ' + data.comments.length + ' \u6761\u5F39\u5E55, \u8017\u65F6 ' + elapsed + 's', 'success'); - - danmuTestState.allComments = data.comments; - danmuTestState.currentFilter = 'all'; - danmuTestState.displayedCount = 0; - danmuTestState.currentDuration = durationSeconds; - - // \u91CD\u5EFA\u7ED3\u679C\u533A\u5185\u5BB9\uFF1Aauto\u6A21\u5F0F\u53EA\u6709\u5BFC\u51FA\u6309\u94AE\uFF0Cmanual\u6A21\u5F0F\u6709\u8FD4\u56DE+\u5BFC\u51FA - let toolbarHtml = '
'; - if (source === 'manual') { - toolbarHtml += backBtnHtml('\u8FD4\u56DE\u5217\u8868', 'backToEpisodeList()'); - } - toolbarHtml += '
' + - '' + - '' + - '
'; - - const filterCounts = getDanmuFilterCounts(data.comments); - resultArea.innerHTML = - toolbarHtml + - '
' + - renderDanmuCallTrace(requestTrace) + - '

\u5F39\u5E55\u70ED\u529B\u56FE

' + - '

\u5F39\u5E55\u5217\u8868

' + - renderDanmuFilterTabs(filterCounts) + - '
' + - '' + - '
'; - - applyDanmuFilter(); - renderDanmuStats(data, elapsed, title, durationSeconds, filterCounts); - renderDanmuHeatmap(data.comments, durationSeconds); - renderDanmuList(); - - setTimeout(() => resultArea.scrollIntoView({ behavior: 'smooth', block: 'start' }), 10); - } catch (e) { - if (!isCurrentDanmuRequest(requestId)) return; - const commentUrl = '/api/v2/comment/' + episodeId + '?format=json&duration=true'; - finishDanmuCallFailure(requestTrace, startTime, { - name: '\u5F39\u5E55', - method: 'GET', - url: commentUrl, - params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true' - }, e); - customAlert('\u83B7\u53D6\u5F39\u5E55\u5931\u8D25: ' + e.message); - addLog('\u83B7\u53D6\u5F39\u5E55\u5931\u8D25: ' + e.message, 'error'); - const failureSource = source === 'manual' ? 'manual-episode' : source; - resultArea.innerHTML = renderDanmuCallFailure(requestTrace, '\u83B7\u53D6\u5F39\u5E55\u5931\u8D25', e.message, failureSource); - resultArea.style.display = 'block'; - } -} - -// ===================== -// \u5BFC\u51FA\u5F39\u5E55\uFF08\u76F4\u63A5\u8BF7\u6C42\u540E\u7AEF\u83B7\u53D6\u683C\u5F0F\u5316\u6570\u636E\uFF09 -// ===================== -async function exportDanmu(format) { - const id = danmuTestState.currentEpisodeId; - if (!id) { customAlert('\u65E0\u5F39\u5E55\u6570\u636E\u53EF\u5BFC\u51FA'); return; } - - const title = danmuTestState.currentTitle || ('danmu_' + id); - // \u6E05\u7406\u6587\u4EF6\u540D\u4E2D\u7684\u975E\u6CD5\u5B57\u7B26 - const safeTitle = title.replace(/[\\\\/:*?"<>|]/g, '_'); - - addLog('\u5BFC\u51FA\u5F39\u5E55 ' + format.toUpperCase() + '...', 'info'); - try { - const resp = await fetch(buildApiUrl('/api/v2/comment/' + id + '?format=' + format)); - if (!resp.ok) throw new Error('HTTP ' + resp.status); - - let content, mimeType; - if (format === 'xml') { - content = await resp.text(); - mimeType = 'application/xml'; - } else { - const data = await resp.json(); - content = JSON.stringify(data, null, 2); - mimeType = 'application/json'; - } - - const blob = new Blob([content], { type: mimeType }); - const url = URL.createObjectURL(blob); - const a = document.createElement('a'); - a.href = url; - a.download = safeTitle + '.' + format; - document.body.appendChild(a); - a.click(); - document.body.removeChild(a); - URL.revokeObjectURL(url); - addLog('\u5BFC\u51FA\u5F39\u5E55 ' + format.toUpperCase() + ' \u6210\u529F', 'success'); - } catch (e) { - customAlert('\u5BFC\u51FA\u5931\u8D25: ' + e.message); - addLog('\u5BFC\u51FA\u5931\u8D25: ' + e.message, 'error'); - } -} - -// ===================== -// \u5F39\u5E55\u7EDF\u8BA1 -// ===================== -function renderDanmuStats(data, elapsed, title, durationSeconds, filterCounts) { - const comments = data.comments; - const count = comments.length; - - const maxTime = getEffectiveDuration(comments, durationSeconds); - - // \u5E73\u5747\u5BC6\u5EA6 - const durationMin = maxTime / 60; - const avgDensity = durationMin > 0 ? (count / durationMin).toFixed(1) : '0'; - - // \u9AD8\u80FD\u65F6\u523B\uFF1A\u627E\u5BC6\u5EA6\u6700\u9AD8\u768430\u79D2\u533A\u95F4 - const segLen = 30; - const segCount = Math.ceil(maxTime / segLen) || 1; - const segs = new Array(segCount).fill(0); - comments.forEach(c => { - const t = c.t !== undefined ? c.t : parseDanmuTime(c.p); - if (t > maxTime) return; // \u8DF3\u8FC7\u5F02\u5E38\u65F6\u95F4\u70B9 - const idx = Math.min(Math.floor(t / segLen), segCount - 1); - segs[idx]++; - }); - let hotIdx = 0; - for (let i = 1; i < segs.length; i++) { - if (segs[i] > segs[hotIdx]) hotIdx = i; - } - const hotStart = hotIdx * segLen; - const hotMoment = formatDuration(hotStart) + ' - ' + formatDuration(hotStart + segLen); - - const coloredCount = comments.reduce((sum, comment) => { - if (!comment || !comment.p) return sum; - const color = parseInt(String(comment.p).split(',')[2], 10); - return Number.isFinite(color) && color !== 16777215 ? sum + 1 : sum; - }, 0); - const coloredRatio = count > 0 ? ((coloredCount / count) * 100).toFixed(1) + '%' : '--'; - - const container = document.getElementById('danmu-stats'); - container.innerHTML = - '
' + escapeHtml(title) + '
' + - '
' + - '
' + count + '
\u5F39\u5E55\u6570
' + - '
' + formatDuration(maxTime) + '
\u65F6\u957F
' + - '
' + hotMoment + '
\u9AD8\u80FD\u65F6\u523B
' + - '
' + avgDensity + ' \u6761/\u5206
\u5E73\u5747\u5BC6\u5EA6
' + - '
' + elapsed + 's
\u8BF7\u6C42\u8017\u65F6
' + - '
' + coloredRatio + '
\u5F69\u8272\u5360\u6BD4
' + - '
'; -} - -// ===================== -// \u5F39\u5E55\u70ED\u529B\u56FE -// ===================== -function renderDanmuHeatmap(comments, durationSeconds) { - const container = document.getElementById('danmu-heatmap'); - const maxTime = getEffectiveDuration(comments, durationSeconds); - if (maxTime === 0) { container.innerHTML = '

\u65E0\u6570\u636E

'; return; } - - const barCount = Math.min(60, Math.max(20, Math.ceil(maxTime / 30))); - const segLen = maxTime / barCount; - const segs = new Array(barCount).fill(0); - comments.forEach(c => { - const t = c.t !== undefined ? c.t : parseDanmuTime(c.p); - if (t > maxTime) return; // \u8DF3\u8FC7\u5F02\u5E38\u65F6\u95F4\u70B9 - const idx = Math.min(Math.floor(t / segLen), barCount - 1); - segs[idx]++; - }); - - const maxSeg = Math.max(...segs, 1); - let html = '
'; - html += '
'; - for (let i = 0; i < barCount; i++) { - const pct = Math.max(2, (segs[i] / maxSeg) * 100); - const intensity = segs[i] / maxSeg; - // \u4ECE\u84DD\u5230\u7EA2\u7684\u6E10\u53D8 - const r = Math.round(66 + intensity * 189); - const g = Math.round(126 - intensity * 80); - const b = Math.round(234 - intensity * 180); - const start = i * segLen; - const end = Math.min((i + 1) * segLen, maxTime); - const timeLabel = formatDuration(start) + ' - ' + formatDuration(end); - html += '
'; - } - html += '
'; - html += '
'; - html += '
'; - html += '
00:00' + formatDuration(maxTime / 2) + '' + formatDuration(maxTime) + '
'; - container.innerHTML = html; - bindDanmuHeatmapScrub(container, segs, segLen, maxTime); -} - -function bindDanmuHeatmapScrub(container, segs, segLen, maxTime) { - const interactive = container.querySelector('.danmu-heatmap-interactive'); - const bars = container.querySelector('.heatmap-bars'); - const tooltip = container.querySelector('.danmu-heatmap-tooltip'); - const indicator = container.querySelector('.danmu-heatmap-indicator'); - if (!interactive || !bars || !tooltip || !indicator) return; - - let rafId = null; - let latestEvent = null; - const scheduleUpdate = event => { - latestEvent = event; - if (rafId) return; - rafId = requestAnimationFrame(() => { - rafId = null; - if (!latestEvent) return; - updateDanmuHeatmapTooltip(latestEvent, interactive, bars, tooltip, indicator, segs, segLen, maxTime); - }); - }; - - const hideTooltip = () => hideDanmuHeatmapTooltip(bars, tooltip, indicator, () => { - if (rafId) { - cancelAnimationFrame(rafId); - rafId = null; - } - latestEvent = null; - }); - - interactive.addEventListener('pointermove', scheduleUpdate, { passive: true }); - interactive.addEventListener('pointerdown', scheduleUpdate, { passive: true }); - interactive.addEventListener('pointerup', hideTooltip, { passive: true }); - interactive.addEventListener('pointercancel', hideTooltip, { passive: true }); - interactive.addEventListener('pointerleave', hideTooltip); -} - -function hideDanmuHeatmapTooltip(bars, tooltip, indicator, beforeHide) { - if (beforeHide) beforeHide(); - tooltip.classList.remove('active'); - indicator.classList.remove('active'); - const activeBar = bars.querySelector('.heatmap-bar.active'); - if (activeBar) activeBar.classList.remove('active'); -} - -function updateDanmuHeatmapTooltip(event, interactive, bars, tooltip, indicator, segs, segLen, maxTime) { - if (!event) return; - const rect = bars.getBoundingClientRect(); - if (!rect.width) return; - const ratio = Math.max(0, Math.min(1, (event.clientX - rect.left) / rect.width)); - const index = Math.max(0, Math.min(segs.length - 1, Math.floor(ratio * segs.length))); - const start = index * segLen; - const end = Math.min((index + 1) * segLen, maxTime); - const leftPct = ((index + 0.5) / segs.length) * 100; - - const activeBar = bars.querySelector('.heatmap-bar.active'); - if (activeBar) activeBar.classList.remove('active'); - const currentBar = bars.querySelector('.heatmap-bar[data-index="' + index + '"]'); - if (currentBar) currentBar.classList.add('active'); - - tooltip.innerHTML = '' + segs[index] + '\u6761\u5F39\u5E55' + formatDuration(start) + ' - ' + formatDuration(end) + ''; - tooltip.classList.add('active'); - indicator.classList.add('active'); - - const clampedLeft = clampHeatmapTooltipLeft(interactive, tooltip, leftPct); - tooltip.style.left = clampedLeft + 'px'; - indicator.style.left = leftPct + '%'; -} - -function clampHeatmapTooltipLeft(interactive, tooltip, leftPct) { - const width = interactive.clientWidth || 0; - const tooltipWidth = tooltip.offsetWidth || 0; - const padding = 8; - const rawLeft = (leftPct / 100) * width; - const minLeft = (tooltipWidth / 2) + padding; - const maxLeft = width - (tooltipWidth / 2) - padding; - if (width <= tooltipWidth + padding * 2) return width / 2; - return Math.max(minLeft, Math.min(maxLeft, rawLeft)); -} - -function getDanmuFilterCounts(comments) { - const counts = { all: comments.length, scroll: 0, top: 0, bottom: 0 }; - comments.forEach(c => { - const mode = parseDanmuMode(c.p); - if (mode === 5) counts.top++; - else if (mode === 4) counts.bottom++; - else counts.scroll++; - }); - return counts; -} - -function renderDanmuFilterTabs(counts) { - const items = [ - { key: 'all', label: '\u5168\u90E8' }, - { key: 'scroll', label: '\u6EDA\u52A8' }, - { key: 'top', label: '\u9876\u90E8' }, - { key: 'bottom', label: '\u5E95\u90E8' } - ]; - let html = '
'; - items.forEach(item => { - const active = item.key === 'all' ? ' active' : ''; - html += ''; - }); - html += '
'; - return html; -} - -// ===================== -// \u5F39\u5E55\u5217\u8868\u8FC7\u6EE4\u4E0E\u61D2\u52A0\u8F7D -// ===================== -function applyDanmuFilter() { - const filter = danmuTestState.currentFilter; - if (filter === 'all') { - danmuTestState.filteredComments = danmuTestState.allComments; - } else { - const modeMap = { scroll: 1, top: 5, bottom: 4 }; - const targetMode = modeMap[filter]; - danmuTestState.filteredComments = danmuTestState.allComments.filter(c => { - const mode = parseDanmuMode(c.p); - if (filter === 'scroll') return mode !== 4 && mode !== 5; - return mode === targetMode; - }); - } - danmuTestState.displayedCount = 0; -} - -function filterDanmuList(type, event) { - document.querySelectorAll('.danmu-filter-tab').forEach(btn => btn.classList.remove('active')); - const tab = event.currentTarget || event.target.closest('.danmu-filter-tab'); - if (tab) tab.classList.add('active'); - danmuTestState.currentFilter = type; - applyDanmuFilter(); - renderDanmuList(); -} - -function renderDanmuList() { - const list = danmuTestState.filteredComments; - const end = Math.min(danmuTestState.displayedCount + danmuTestState.pageSize, list.length); - let html = ''; - - for (let i = danmuTestState.displayedCount; i < end; i++) { - const c = list[i]; - const time = c.t !== undefined ? c.t : parseDanmuTime(c.p); - const mode = parseDanmuMode(c.p); - const color = parseDanmuColor(c.p); - const hexColor = decColorToHex(color); - const modeLabel = getModeLabel(mode); - - html += '
' + - '' + formatDuration(time) + '' + - '' + - '' + modeLabel + '' + - '' + escapeHtml(c.m) + '' + - '
'; - } - - const container = document.getElementById('danmu-list'); - if (danmuTestState.displayedCount === 0) { - container.innerHTML = html || '

\u65E0\u5F39\u5E55\u6570\u636E

'; - } else { - container.insertAdjacentHTML('beforeend', html); - } - danmuTestState.displayedCount = end; - - // \u63A7\u5236\u52A0\u8F7D\u66F4\u591A\u6309\u94AE - const loadMoreBtn = document.getElementById('danmu-load-more'); - if (end < list.length) { - loadMoreBtn.style.display = 'block'; - loadMoreBtn.textContent = '\u52A0\u8F7D\u66F4\u591A (' + end + '/' + list.length + ')'; - } else { - loadMoreBtn.style.display = 'none'; - } -} - -function loadMoreDanmu() { - renderDanmuList(); -} -`});var RRt,CRt=ae(()=>{RRt=` -// \u63A8\u9001\u5F39\u5E55\u529F\u80FD\u76F8\u5173 - -// \u4ECE\u73AF\u5883\u53D8\u91CF\u83B7\u53D6\u9ED8\u8BA4\u63A8\u9001\u5730\u5740 -function getDefaultPushUrl(config) { - const pushUrl = config.originalEnvVars?.DANMU_PUSH_URL || ''; - return pushUrl.trim(); -} - -// \u8BBE\u7F6E\u9ED8\u8BA4\u63A8\u9001\u5730\u5740 -function setDefaultPushUrl(config) { - const defaultPushUrl = getDefaultPushUrl(config); - if (defaultPushUrl) { - const pushUrlInput = document.getElementById('push-url'); - if (pushUrlInput && !pushUrlInput.value) { - pushUrlInput.value = defaultPushUrl; - } - } -} - -// \u521D\u59CB\u5316\u63A8\u9001\u5F39\u5E55\u754C\u9762 -function initPushDanmuInterface() { - const searchKeywordInput = document.getElementById('push-search-keyword'); - if (searchKeywordInput) { - // \u6DFB\u52A0\u56DE\u8F66\u952E\u641C\u7D22\u4E8B\u4EF6\u76D1\u542C - searchKeywordInput.addEventListener('keypress', function(event) { - if (event.key === 'Enter') { - searchAnimeForPush(); - } - }); - } -} - -// \u641C\u7D22\u52A8\u6F2B\u7528\u4E8E\u63A8\u9001 -function searchAnimeForPush() { - const keyword = document.getElementById('push-search-keyword').value.trim(); - const pushUrl = document.getElementById('push-url').value.trim(); - const searchBtn = document.querySelector('#push-section .btn-primary'); - - if (!keyword) { - customAlert('\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57'); - return; - } - - // \u641C\u7D22\u65F6\u4E0D\u518D\u6821\u9A8CpushUrl\u662F\u5426\u4E3A\u7A7A\uFF0C\u53EA\u5728\u63A8\u9001\u65F6\u6821\u9A8C - - // \u6DFB\u52A0\u52A0\u8F7D\u72B6\u6001 - const originalText = searchBtn.textContent; - searchBtn.innerHTML = ''; - searchBtn.disabled = true; - - // \u6784\u5EFA\u641C\u7D22API\u8BF7\u6C42URL - const searchUrl = buildApiUrl('/api/v2/search/anime?keyword=' + encodeURIComponent(keyword)); - - addLog(\`\u5F00\u59CB\u641C\u7D22\u52A8\u6F2B: \${keyword}\`, 'info'); - - // \u53D1\u9001\u641C\u7D22\u8BF7\u6C42 - fetch(searchUrl) - .then(response => { - if (!response.ok) { - throw new Error(\`HTTP error! status: \${response.status}\`); - } - return response.json(); - }) - .then(data => { - if (data.success && data.animes.length > 0) { - displayAnimeListForPush(data.animes, pushUrl); - } else { - document.getElementById('push-anime-list').style.display = 'none'; - document.getElementById('push-episode-list').style.display = 'none'; - customAlert('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B'); - addLog('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B', 'warn'); - } - }) - .catch(error => { - console.error('\u641C\u7D22\u52A8\u6F2B\u5931\u8D25:', error); - customAlert('\u641C\u7D22\u52A8\u6F2B\u5931\u8D25: ' + error.message); - addLog('\u641C\u7D22\u52A8\u6F2B\u5931\u8D25: ' + error.message, 'error'); - }) - .finally(() => { - // \u6062\u590D\u6309\u94AE\u72B6\u6001 - searchBtn.innerHTML = originalText; - searchBtn.disabled = false; - }); -} - -// \u5C55\u793A\u52A8\u6F2B\u5217\u8868\u7528\u4E8E\u63A8\u9001 -function displayAnimeListForPush(animes, pushUrl) { - const container = document.getElementById('push-anime-list'); - let html = '

\u641C\u7D22\u7ED3\u679C

'; - - animes.forEach(anime => { - const imageUrl = anime.imageUrl || 'https://placehold.co/150x200?text=No+Image'; - html += \` -
- \${anime.animeTitle} -

\${anime.animeTitle} - \u5171\${anime.episodeCount}\u96C6

-
- \`; - }); - - html += '
'; - container.innerHTML = html; - container.style.display = 'block'; - - addLog(\`\u663E\u793A \${animes.length} \u4E2A\u52A8\u6F2B\u7ED3\u679C\`, 'info'); -} - -// \u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u7528\u4E8E\u63A8\u9001 -function getBangumiForPush(animeId, pushUrl) { - const bangumiUrl = buildApiUrl('/api/v2/bangumi/' + animeId); - - addLog(\`\u83B7\u53D6\u756A\u5267\u8BE6\u60C5: \${animeId}\`, 'info'); - - fetch(bangumiUrl) - .then(response => { - if (!response.ok) { - throw new Error(\`HTTP error! status: \${response.status}\`); - } - return response.json(); - }) - .then(data => { - if (data.success && data.bangumi && data.bangumi.episodes) { - displayEpisodeListForPush(data.bangumi.animeTitle, data.bangumi.episodes, pushUrl); - } else { - customAlert('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F'); - addLog('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F', 'warn'); - } - }) - .catch(error => { - console.error('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25:', error); - customAlert('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + error.message); - addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + error.message, 'error'); - }); -} - -// \u5C55\u793A\u5267\u96C6\u5217\u8868\u7528\u4E8E\u63A8\u9001 -function displayEpisodeListForPush(animeTitle, episodes, pushUrl) { - const container = document.getElementById('push-episode-list'); - let html = \`

\u5267\u96C6\u5217\u8868

\${animeTitle}

\`; - - // \u6DFB\u52A0\u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\u7684\u529F\u80FD - html += \` -
- \u8DF3\u8F6C\u5230\u7B2C - - \u96C6 - - \u5171\${episodes.length}\u96C6 -
\`; - - html += '
'; - - episodes.forEach(episode => { - // \u751F\u6210\u5F39\u5E55URL - const commentUrl = window.location.origin + buildApiUrl('/api/v2/comment/' + episode.episodeId + '?format=xml'); - html += \` -
-
- \u7B2C\${episode.episodeNumber}\u96C6 - \${episode.episodeTitle || '\u65E0\u6807\u9898'} -
- -
- \`; - }); - - html += '
'; - container.innerHTML = html; - container.style.display = 'block'; - - addLog(\`\u663E\u793A \${episodes.length} \u4E2A\u5267\u96C6\`, 'info'); - - // \u81EA\u52A8\u6EDA\u52A8\u5230\u5267\u96C6\u5217\u8868\u5904 - setTimeout(() => { - container.scrollIntoView({ behavior: 'smooth', block: 'start' }); - }, 10); -} - -// \u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\uFF08\u63A8\u9001\u5F39\u5E55\u7248\uFF09 -function jumpToEpisodeForPushDanmu() { - const episodeInput = document.getElementById('jump-episode-input-push'); - const episodeNumber = parseInt(episodeInput.value); - - if (!episodeNumber || episodeNumber <= 0) { - customAlert('\u8BF7\u8F93\u5165\u6709\u6548\u7684\u96C6\u6570\uFF08\u6B63\u6574\u6570\uFF09'); - return; - } - - // \u67E5\u627E\u5BF9\u5E94\u96C6\u6570\u7684\u5143\u7D20 - const episodeElement = document.getElementById('episode-item-push-' + episodeNumber); - if (episodeElement) { - // \u6EDA\u52A8\u5230\u6307\u5B9A\u5143\u7D20\u4F4D\u7F6E - episodeElement.scrollIntoView({ behavior: 'smooth', block: 'center' }); - // \u6DFB\u52A0\u9AD8\u4EAE\u6548\u679C\u4EE5\u4FBF\u8BC6\u522B - episodeElement.style.backgroundColor = '#fff3cd'; // \u9EC4\u8272\u80CC\u666F\u9AD8\u4EAE - setTimeout(() => { - episodeElement.style.backgroundColor = ''; // \u6062\u590D\u539F\u8272 - }, 2000); - } else { - customAlert('\u627E\u4E0D\u5230\u7B2C' + episodeNumber + '\u96C6'); - } -} - -// \u63A8\u9001\u5F39\u5E55 -async function pushDanmu(pushUrl, commentUrl, episodeTitle) { - // \u83B7\u53D6\u63A8\u9001\u6309\u94AE\u5143\u7D20 - const pushButton = event.target; // \u901A\u8FC7\u4E8B\u4EF6\u5BF9\u8C61\u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u6309\u94AE - - // \u6821\u9A8C\u63A8\u9001\u5730\u5740\u662F\u5426\u4E3A\u7A7A - if (!pushUrl || pushUrl.trim() === '') { - customAlert('\u8BF7\u8F93\u5165\u63A8\u9001\u5730\u5740'); - if (pushButton) { - pushButton.innerHTML = '\u63A8\u9001'; - pushButton.disabled = false; - } - return; - } - - if (pushButton) { - const originalText = pushButton.innerHTML; - pushButton.innerHTML = ''; - pushButton.disabled = true; - } - - try { - // \u5411\u63A8\u9001\u5730\u5740\u53D1\u9001\u5F39\u5E55\u6570\u636E - const pushResponse = await fetch(pushUrl + encodeURIComponent(commentUrl), { - method: 'GET', - mode: 'no-cors', // \u7531\u4E8E\u8DE8\u57DF\u9650\u5236\uFF0C\u4F7F\u7528no-cors\u6A21\u5F0F - }); - - customAlert('\u5F39\u5E55\u63A8\u9001\u6210\u529F\uFF01' + episodeTitle); - addLog('\u5F39\u5E55\u63A8\u9001\u6210\u529F - ' + episodeTitle, 'success'); - } catch (error) { - console.error('\u63A8\u9001\u5F39\u5E55\u5931\u8D25:', error); - customAlert('\u63A8\u9001\u5F39\u5E55\u5931\u8D25: ' + error.message); - addLog('\u63A8\u9001\u5F39\u5E55\u5931\u8D25: ' + error.message, 'error'); - } finally { - // \u6062\u590D\u6309\u94AE\u72B6\u6001 - if (pushButton) { - pushButton.innerHTML = '\u63A8\u9001'; - pushButton.disabled = false; - } - } -} -`});var xRt,wRt=ae(()=>{xRt=` -// \u8BF7\u6C42\u8BB0\u5F55\u76F8\u5173\u529F\u80FD -async function renderRequestRecords() { - const recordsContainer = document.getElementById('request-records-list'); - if (!recordsContainer) { - console.error('\u672A\u627E\u5230\u8BF7\u6C42\u8BB0\u5F55\u5BB9\u5668'); - return; - } - - try { - // \u4ECEAPI\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55 - const response = await fetch(buildApiUrl('/api/reqrecords')); - if (!response.ok) { - throw new Error('\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55\u5931\u8D25'); - } - - const data = await response.json(); - const records = data.records; - const todayReqNum = data.todayReqNum; - - // \u663E\u793A\u4ECA\u65E5\u8BF7\u6C42\u603B\u6570 - const totalRequestsElement = document.getElementById('total-requests-today'); - if (totalRequestsElement) { - totalRequestsElement.textContent = \`\u4ECA\u65E5\u8BF7\u6C42\u603B\u6570: \${todayReqNum}\`; - } - - if (records.length === 0) { - recordsContainer.innerHTML = '
\u6682\u65E0\u8BF7\u6C42\u8BB0\u5F55
'; - return; - } - - // \u751F\u6210\u8BB0\u5F55HTML - const recordsHtml = records.map(record => { - const interfaceName = decodeURIComponent(record.interface) || '\u672A\u77E5\u63A5\u53E3'; - const params = record.params || {}; - const timestamp = record.timestamp ? new Date(record.timestamp).toLocaleString('zh-CN') : '\u672A\u77E5\u65F6\u95F4'; - const method = record.method || 'GET'; - const clientIp = record.clientIp || '\u672A\u77E5IP'; - - // \u683C\u5F0F\u5316\u53C2\u6570\u663E\u793A - const hasParams = Object.keys(params).length > 0; - const paramsHtml = hasParams - ? \`
-
\u8BF7\u6C42\u53C2\u6570
-
\${JSON.stringify(params, null, 2)}
-
\` - : ''; - - // \u5982\u679C\u6CA1\u6709\u53C2\u6570\uFF0C\u7ED9\u65F6\u95F4\u6233\u6DFB\u52A0 no-params \u7C7B\u4EE5\u9690\u85CF\u865A\u7EBF - const timestampClass = hasParams ? 'record-timestamp' : 'record-timestamp no-params'; - - return \` -
-
-
\${method}
-
\${interfaceName}
-
\${clientIp}
-
-
\${timestamp}
- \${paramsHtml} -
\`; - }).join(''); - - recordsContainer.innerHTML = recordsHtml; - } catch (error) { - console.error('\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55\u65F6\u51FA\u9519:', error); - recordsContainer.innerHTML = '
\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55\u5931\u8D25: ' + error.message + '
'; - } -} - -// \u521D\u59CB\u5316\u8BF7\u6C42\u8BB0\u5F55\u754C\u9762 -function initRequestRecordsInterface() { - // \u786E\u4FDD\u5728\u5207\u6362\u5230\u8BF7\u6C42\u8BB0\u5F55\u6807\u7B7E\u9875\u65F6\u4E5F\u66F4\u65B0\u8BB0\u5F55 - const originalSwitchSection = window.switchSection; - if (originalSwitchSection && typeof originalSwitchSection === 'function') { - window.switchSection = function(section, event = null) { - // \u8C03\u7528\u539F\u51FD\u6570 - originalSwitchSection(section, event); - - // \u5982\u679C\u5207\u6362\u5230\u8BF7\u6C42\u8BB0\u5F55\u9875\u9762\uFF0C\u5219\u5237\u65B0\u8BB0\u5F55 - if (section === 'request-records') { - setTimeout(renderRequestRecords, 100); - } - }; - } - - // \u9996\u6B21\u521D\u59CB\u5316 - if (document.getElementById('request-records-section') && - document.querySelector('.nav-btn[data-section="request-records"]') && - document.querySelector('.nav-btn[data-section="request-records"]').classList.contains('active')) { - renderRequestRecords(); - } -} - -// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316 -document.addEventListener('DOMContentLoaded', function() { - if (typeof initRequestRecordsInterface === 'function') { - initRequestRecordsInterface(); - } - - // \u6DFB\u52A0\u5237\u65B0\u6309\u94AE\u529F\u80FD - const refreshBtn = document.getElementById('refresh-request-records'); - if (refreshBtn) { - refreshBtn.onclick = function() { - renderRequestRecords(); - }; - } - -}); -`});var NRt,ORt=ae(()=>{NRt=` -// \u5168\u5C40\u53D8\u91CF\u5B9A\u4E49 -let isMergeMode = false; -let stagingTags = []; - -// \u663E\u793A\u6E05\u7406\u7F13\u5B58\u786E\u8BA4\u6A21\u6001\u6846 -function showClearCacheModal() { - document.getElementById('clear-cache-modal').classList.add('active'); -} - -// \u9690\u85CF\u6E05\u7406\u7F13\u5B58\u786E\u8BA4\u6A21\u6001\u6846 -function hideClearCacheModal() { - document.getElementById('clear-cache-modal').classList.remove('active'); -} - -// \u786E\u8BA4\u6E05\u7406\u7F13\u5B58 -async function confirmClearCache() { - // \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E - const configCheck = await checkDeployPlatformConfig(); - if (!configCheck.success) { - hideClearCacheModal(); - customAlert(configCheck.message); - return; - } - - hideClearCacheModal(); - showLoading('\u6B63\u5728\u6E05\u7406\u7F13\u5B58...', '\u6E05\u9664\u4E2D\uFF0C\u8BF7\u7A0D\u5019'); - addLog('\u5F00\u59CB\u6E05\u7406\u7F13\u5B58', 'info'); - - try { - // \u8C03\u7528\u771F\u5B9E\u7684\u6E05\u7406\u7F13\u5B58API - const response = await fetch(buildApiUrl('/api/cache/clear', true), { // \u4F7F\u7528admin token - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({}) - }); - - const result = await response.json(); - - if (result.success) { - updateLoadingText('\u6E05\u7406\u5B8C\u6210', '\u7F13\u5B58\u5DF2\u6210\u529F\u6E05\u9664'); - addLog('\u7F13\u5B58\u6E05\u7406\u5B8C\u6210', 'success'); - addLog('\u2705 \u7F13\u5B58\u6E05\u7406\u6210\u529F\uFF01\u5DF2\u6E05\u7406: ' + JSON.stringify(result.clearedItems), 'success'); - } else { - updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u8BF7\u67E5\u770B\u65E5\u5FD7\u4E86\u89E3\u8BE6\u60C5'); - addLog('\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ' + result.message, 'error'); - } - } catch (error) { - updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u7F51\u7EDC\u9519\u8BEF\u6216\u670D\u52A1\u4E0D\u53EF\u7528'); - addLog('\u7F13\u5B58\u6E05\u7406\u8BF7\u6C42\u5931\u8D25: ' + error.message, 'error'); - } finally { - setTimeout(() => { - hideLoading(); - }, 10); - } -} - -// \u663E\u793A\u91CD\u65B0\u90E8\u7F72\u786E\u8BA4\u6A21\u6001\u6846 -function showDeploySystemModal() { - document.getElementById('deploy-system-modal').classList.add('active'); -} - -// \u9690\u85CF\u91CD\u65B0\u90E8\u7F72\u786E\u8BA4\u6A21\u6001\u6846 -function hideDeploySystemModal() { - document.getElementById('deploy-system-modal').classList.remove('active'); -} - -// \u786E\u8BA4\u91CD\u65B0\u90E8\u7F72\u7CFB\u7EDF -function confirmDeploySystem() { - // \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E - checkDeployPlatformConfig().then(configCheck => { - if (!configCheck.success) { - hideDeploySystemModal(); - customAlert(configCheck.message); - return; - } - - hideDeploySystemModal(); - showLoading('\u51C6\u5907\u90E8\u7F72...', '\u6B63\u5728\u68C0\u67E5\u7CFB\u7EDF\u72B6\u6001'); - addLog('===== \u5F00\u59CB\u7CFB\u7EDF\u90E8\u7F72 =====', 'info'); - - // \u83B7\u53D6\u5F53\u524D\u90E8\u7F72\u5E73\u53F0 - fetch(buildApiUrl('/api/config', true)) - .then(response => response.json()) - .then(config => { - const deployPlatform = config.envs.deployPlatform || 'node'; - addLog(\`\u68C0\u6D4B\u5230\u90E8\u7F72\u5E73\u53F0: \${deployPlatform}\`, 'info'); - - if (deployPlatform.toLowerCase() === 'node') { - // Node\u90E8\u7F72\u4E0D\u9700\u8981\u91CD\u65B0\u90E8\u7F72 - setTimeout(() => { - hideLoading(); - addLog('===== \u90E8\u7F72\u5B8C\u6210 =====', 'success'); - addLog('Node\u90E8\u7F72\u6A21\u5F0F\uFF0C\u73AF\u5883\u53D8\u91CF\u5DF2\u751F\u6548', 'info'); - addLog('\u2705 Node\u90E8\u7F72\u6A21\u5F0F - \u5728Node\u90E8\u7F72\u6A21\u5F0F\u4E0B\uFF0C\u73AF\u5883\u53D8\u91CF\u4FEE\u6539\u540E\u4F1A\u81EA\u52A8\u751F\u6548\uFF0C\u65E0\u9700\u91CD\u65B0\u90E8\u7F72\u3002\u7CFB\u7EDF\u5DF2\u66F4\u65B0\u914D\u7F6E', 'success'); - }, 150); - } else { - // \u8C03\u7528\u771F\u5B9E\u7684\u90E8\u7F72API - fetch(buildApiUrl('/api/deploy', true), { // \u4F7F\u7528admin token - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({}) - }) - .then(response => response.json()) - .then(result => { - if (result.success) { - addLog('\u4E91\u7AEF\u90E8\u7F72\u89E6\u53D1\u6210\u529F', 'success'); - // \u6A21\u62DF\u4E91\u7AEF\u90E8\u7F72\u8FC7\u7A0B - simulateDeployProcess(); - } else { - hideLoading(); - addLog(\`\u4E91\u7AEF\u90E8\u7F72\u5931\u8D25: \${result.message}\`, 'error'); - addLog(\`\u274C \u4E91\u7AEF\u90E8\u7F72\u5931\u8D25: \${result.message}\`, 'error'); - } - }) - .catch(error => { - hideLoading(); - addLog(\`\u4E91\u7AEF\u90E8\u7F72\u8BF7\u6C42\u5931\u8D25: \${error.message}\`, 'error'); - addLog(\`\u274C \u4E91\u7AEF\u90E8\u7F72\u8BF7\u6C42\u5931\u8D25: \${error.message}\`, 'error'); - }); - } - }) - .catch(error => { - hideLoading(); - addLog(\`\u83B7\u53D6\u90E8\u7F72\u5E73\u53F0\u4FE1\u606F\u5931\u8D25: \${error.message}\`, 'error'); - console.error('\u83B7\u53D6\u90E8\u7F72\u5E73\u53F0\u4FE1\u606F\u5931\u8D25:', error); - }); - }); -} - -// \u6A21\u62DF\u4E91\u7AEF\u90E8\u7F72\u8FC7\u7A0B -function simulateDeployProcess() { - let progress = 0; - const progressInterval = setInterval(() => { - progress += Math.random() * 8; - if (progress >= 100) { - progress = 10; - clearInterval(progressInterval); - } - updateProgress(progress); - }, 300); - - // \u6A21\u62DF\u90E8\u7F72\u6B65\u9AA4 - const steps = [ - { delay: 100, text: '\u68C0\u67E5\u73AF\u5883\u53D8\u91CF...', detail: '\u9A8C\u8BC1\u914D\u7F6E\u6587\u4EF6', log: '\u914D\u7F6E\u6587\u4EF6\u9A8C\u8BC1\u901A\u8FC7' }, - { delay: 5000, text: '\u89E6\u53D1\u4E91\u7AEF\u90E8\u7F72...', detail: '\u90E8\u7F72\u5230\u5F53\u524D\u5E73\u53F0', log: '\u4E91\u7AEF\u90E8\u7F72\u5DF2\u89E6\u53D1' }, - { delay: 9500, text: '\u6784\u5EFA\u9879\u76EE...', detail: '\u4E91\u7AEF\u6784\u5EFA\u4E2D', log: '\u4E91\u7AEF\u6784\u5EFA\u5B8C\u6210' }, - { delay: 5000, text: '\u90E8\u7F72\u66F4\u65B0...', detail: '\u53D1\u5E03\u5230\u751F\u4EA7\u73AF\u5883', log: '\u66F4\u65B0\u5DF2\u90E8\u7F72' }, - { delay: 5500, text: '\u670D\u52A1\u91CD\u542F...', detail: '\u5E94\u7528\u65B0\u914D\u7F6E', log: '\u670D\u52A1\u5DF2\u91CD\u542F' }, - { delay: 5000, text: '\u5065\u5EB7\u68C0\u67E5...', detail: '\u9A8C\u8BC1\u670D\u52A1\u72B6\u6001', log: '\u6240\u6709\u670D\u52A1\u8FD0\u884C\u6B63\u5E38' }, - ]; - - steps.forEach(step => { - setTimeout(() => { - updateLoadingText(step.text, step.detail); - addLog(step.log, 'success'); - }, step.delay); - }); - - // \u90E8\u7F72\u540E\u68C0\u67E5\u670D\u52A1\u662F\u5426\u53EF\u7528 - setTimeout(() => { - checkDeploymentStatus(); - }, 900); // \u5EF6\u957F\u5EF6\u8FDF\u4EE5\u786E\u4FDD\u6A21\u62DF\u90E8\u7F72\u8FC7\u7A0B\u5B8C\u6210 -} - -// \u68C0\u67E5\u90E8\u7F72\u72B6\u6001\uFF0C\u6BCF\u96945\u79D2\u8BF7\u6C42/api/logs\u63A5\u53E3\u76F4\u5230\u8BF7\u6C42\u6210\u529F -function checkDeploymentStatus() { - const checkInterval = setInterval(() => { - updateLoadingText('\u90E8\u7F72\u5B8C\u6210\uFF0C\u68C0\u67E5\u670D\u52A1\u72B6\u6001...', '\u6B63\u5728\u8BF7\u6C42 /api/logs \u63A5\u53E3'); - addLog('\u6B63\u5728\u68C0\u67E5\u670D\u52A1\u72B6\u6001...', 'info'); - - fetch(buildApiUrl('/api/logs')) - .then(response => { - if (response.ok) { - // \u8BF7\u6C42\u6210\u529F\uFF0C\u505C\u6B62\u68C0\u67E5 - clearInterval(checkInterval); - // \u66F4\u65B0\u52A0\u8F7D\u72B6\u6001\u800C\u4E0D\u662F\u7ACB\u5373\u9690\u85CF - updateLoadingText('\u90E8\u7F72\u6210\u529F\uFF01', '\u670D\u52A1\u5DF2\u91CD\u542F\u5E76\u6B63\u5E38\u8FD0\u884C'); - addLog('===== \u90E8\u7F72\u5B8C\u6210 =====', 'success'); - addLog('\u90E8\u7F72\u7248\u672C: ' + latestVersion, 'info'); - addLog('\u7CFB\u7EDF\u5DF2\u66F4\u65B0\u5E76\u91CD\u542F', 'success'); - - // \u90E8\u7F72\u5B8C\u6210\u540E\u518D\u6B21\u786E\u8BA4\uFF0C\u8BBF\u95EE/api/logs\u63A5\u53E3\u6765\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210 - confirmDeploymentByLogs(); - } else { - addLog('\u670D\u52A1\u68C0\u67E5\u4E2D - \u72B6\u6001\u7801: ' + response.status, 'info'); - } - }) - .catch(error => { - addLog('\u670D\u52A1\u68C0\u67E5\u4E2D - \u8FDE\u63A5\u5931\u8D25: ' + error.message, 'info'); - }); - }, 500); // \u6BCF5\u79D2\u68C0\u67E5\u4E00\u6B21 -} - -// \u90E8\u7F72\u5B8C\u6210\u540E\u901A\u8FC7\u8BBF\u95EE/api/logs\u63A5\u53E3\u6765\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210 -function confirmDeploymentByLogs() { - // \u90E8\u7F72\u5B8C\u6210\u540E\u7684\u786E\u8BA4\u68C0\u67E5 - let confirmationAttempts = 0; - const maxAttempts = 3; // \u6700\u591A\u5C1D\u8BD53\u6B21\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210 - - const confirmationInterval = setInterval(() => { - confirmationAttempts++; - updateLoadingText('\u90E8\u7F72\u5B8C\u6210\u786E\u8BA4\u4E2D...', '\u6B63\u5728\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210 (' + confirmationAttempts + '/' + maxAttempts + ')'); - addLog('\u90E8\u7F72\u5B8C\u6210\u786E\u8BA4 - \u5C1D\u8BD5 ' + confirmationAttempts + '/' + maxAttempts, 'info'); - - fetch(buildApiUrl('/api/logs')) - .then(response => { - if (response.ok) { - // \u8BF7\u6C42\u6210\u529F\uFF0C\u505C\u6B62\u786E\u8BA4\u68C0\u67E5 - clearInterval(confirmationInterval); - // \u663E\u793A\u6210\u529F\u4FE1\u606F\u540E\u5EF6\u8FDF\u9690\u85CF\u52A0\u8F7D\u906E\u7F69 - updateLoadingText('\u90E8\u7F72\u786E\u8BA4\u6210\u529F\uFF01', '\u670D\u52A1\u5DF2\u91CD\u542F\u5E76\u6B63\u5E38\u8FD0\u884C'); - addLog('\u90E8\u7F72\u786E\u8BA4\u6210\u529F - /api/logs \u63A5\u53E3\u8BBF\u95EE\u6B63\u5E38', 'success'); - - setTimeout(() => { - hideLoading(); - // \u663E\u793A\u6210\u529F\u5F39\u7A97 - customAlert('\u{1F389} \u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548'); - addLog('\u{1F389} \u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548', 'success'); - }, 200); - } else if (confirmationAttempts >= maxAttempts) { - // \u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u786E\u8BA4\u68C0\u67E5 - clearInterval(confirmationInterval); - updateLoadingText('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210', '\u670D\u52A1\u5DF2\u91CD\u542F'); - addLog('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210 - \u5DF2\u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570', 'warn'); - - setTimeout(() => { - hideLoading(); - // \u663E\u793A\u6210\u529F\u5F39\u7A97 - customAlert('\u{1F389} \u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548'); - addLog('\u{1F389} \u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548', 'success'); - }, 200); - } else { - addLog('\u90E8\u7F72\u786E\u8BA4\u4E2D - \u72B6\u6001\u7801: ' + response.status, 'info'); - } - }) - .catch(error => { - if (confirmationAttempts >= maxAttempts) { - // \u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u786E\u8BA4\u68C0\u67E5 - clearInterval(confirmationInterval); - updateLoadingText('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210', '\u670D\u52A1\u5DF2\u91CD\u542F'); - addLog('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210 - \u5DF2\u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570', 'warn'); - - setTimeout(() => { - hideLoading(); - // \u663E\u793A\u6210\u529F\u5F39\u7A97 - customAlert('\u{1F389} \u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548'); - addLog('\u{1F389} \u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548', 'success'); - }, 200); - } else { - addLog('\u90E8\u7F72\u786E\u8BA4\u4E2D - \u8FDE\u63A5\u5931\u8D25: ' + error.message, 'info'); - } - }); - }, 5000); // \u6BCF5\u79D2\u68C0\u67E5\u4E00\u6B21\uFF0C\u7528\u4E8E\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210 -} - -// \u68C0\u67E5URL\u4E2D\u7684token\u662F\u5426\u4E0EcurrentAdminToken\u5339\u914D -function checkAdminToken() { - let _reverseProxy = customBaseUrl; // \u4F7F\u7528\u5168\u5C40\u53D8\u91CF customBaseUrl - - // \u83B7\u53D6URL\u8DEF\u5F84\u5E76\u63D0\u53D6token - let urlPath = window.location.pathname; - - // \u5982\u679C\u914D\u7F6E\u4E86\u53CD\u4EE3\u8DEF\u5F84\uFF0C\u5FC5\u987B\u5148\u5265\u79BB\u5B83 - if(_reverseProxy) { - try { - // \u89E3\u6790\u914D\u7F6E\u4E2D\u7684\u8DEF\u5F84\u90E8\u5206\uFF0C\u4F8B\u5982 http://192.168.8.1:2333/danmu_api => /danmu_api - let proxyPath = _reverseProxy.startsWith('http') - ? new URL(_reverseProxy).pathname - : _reverseProxy; - - // \u786E\u4FDD\u79FB\u9664\u5C3E\u90E8\u659C\u6760 - if (proxyPath.endsWith('/')) { - proxyPath = proxyPath.slice(0, -1); - } - - // \u5982\u679C\u5F53\u524DURL\u5305\u542B\u6B64\u524D\u7F00\uFF0C\u5219\u79FB\u9664\u5B83 - if(proxyPath && urlPath.startsWith(proxyPath)) { - urlPath = urlPath.substring(proxyPath.length); - } - } catch(e) { - console.error("\u89E3\u6790\u53CD\u4EE3\u8DEF\u5F84\u5931\u8D25", e); - } - } - - const pathParts = urlPath.split('/').filter(part => part !== ''); - const urlToken = pathParts.length > 0 ? pathParts[0] : currentToken; // \u5982\u679C\u6CA1\u6709\u8DEF\u5F84\u6BB5\uFF0C\u4F7F\u7528\u9ED8\u8BA4token - - // \u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN\u4E14URL\u4E2D\u7684token\u7B49\u4E8EcurrentAdminToken - return currentAdminToken && currentAdminToken.trim() !== '' && urlToken === currentAdminToken; -} - -// \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u914D\u7F6E -async function checkDeployPlatformConfig() { - // \u9996\u5148\u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN - if (!checkAdminToken()) { - // \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3 - const protocol = window.location.protocol; - const host = window.location.host; - - let displayBase; - if (customBaseUrl) { - displayBase = customBaseUrl.startsWith('http') - ? customBaseUrl - : (protocol + '//' + host + customBaseUrl); - } else { - displayBase = protocol + '//' + host; - } - - if (displayBase.endsWith('/')) { - displayBase = displayBase.slice(0, -1); - } - - return { success: false, message: '\u8BF7\u5148\u914D\u7F6EADMIN_TOKEN\u73AF\u5883\u53D8\u91CF\u5E76\u4F7F\u7528\u6B63\u786E\u7684token\u8BBF\u95EE\u4EE5\u542F\u7528\u7CFB\u7EDF\u90E8\u7F72\u529F\u80FD\uFF01\\n\\n\u8BBF\u95EE\u65B9\u5F0F\uFF1A' + displayBase + '/{ADMIN_TOKEN}' }; - } - - try { - const response = await fetch(buildApiUrl('/api/config', true)); - if (!response.ok) { - throw new Error('HTTP error! status: ' + response.status); - } - - const config = await response.json(); - const deployPlatform = config.envs.deployPlatform || 'node'; - - // \u5982\u679C\u662Fnode\u90E8\u7F72\u5E73\u53F0\uFF0C\u53EA\u9700\u8981\u68C0\u67E5ADMIN_TOKEN - if (deployPlatform.toLowerCase() === 'node') { - return { success: true, message: 'Node\u90E8\u7F72\u5E73\u53F0\uFF0C\u4EC5\u9700\u914D\u7F6EADMIN_TOKEN' }; - } - - // \u5BF9\u4E8E\u5176\u4ED6\u90E8\u7F72\u5E73\u53F0\uFF0C\u6536\u96C6\u6240\u6709\u7F3A\u5931\u7684\u73AF\u5883\u53D8\u91CF - const missingVars = []; - const deployPlatformProject = config.originalEnvVars.DEPLOY_PLATFROM_PROJECT; - const deployPlatformToken = config.originalEnvVars.DEPLOY_PLATFROM_TOKEN; - const deployPlatformAccount = config.originalEnvVars.DEPLOY_PLATFROM_ACCOUNT; - - if (!deployPlatformProject || deployPlatformProject.trim() === '') { - missingVars.push('DEPLOY_PLATFROM_PROJECT'); - } - - if (!deployPlatformToken || deployPlatformToken.trim() === '') { - missingVars.push('DEPLOY_PLATFROM_TOKEN'); - } - - // \u5BF9\u4E8E\u9700\u8981\u8D26\u53F7ID\u7684\u90E8\u7F72\u5E73\u53F0\uFF0C\u8FD8\u9700\u8981\u68C0\u67E5DEPLOY_PLATFROM_ACCOUNT - if (['netlify', 'cloudflare', 'huggingface'].includes(deployPlatform.toLowerCase())) { - if (!deployPlatformAccount || deployPlatformAccount.trim() === '') { - missingVars.push('DEPLOY_PLATFROM_ACCOUNT'); - } - } - - if (missingVars.length > 0) { - const missingVarsStr = missingVars.join('\u3001'); - return { success: false, message: '\u90E8\u7F72\u5E73\u53F0\u4E3A' + deployPlatform + '\uFF0C\u8BF7\u914D\u7F6E\u4EE5\u4E0B\u7F3A\u5931\u7684\u73AF\u5883\u53D8\u91CF\uFF1A' + missingVarsStr }; - } - - return { success: true, message: deployPlatform + '\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E\u5B8C\u6574' }; - } catch (error) { - console.error('\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E\u5931\u8D25:', error); - return { success: false, message: '\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E\u5931\u8D25: ' + error.message }; - } -} - -// \u83B7\u53D6\u5E76\u8BBE\u7F6E\u914D\u7F6E\u4FE1\u606F -async function fetchAndSetConfig() { - const config = await fetch(buildApiUrl('/api/config', true)).then(response => response.json()); - const hasAdminToken = config.hasAdminToken; - currentAdminToken = config.originalEnvVars?.ADMIN_TOKEN || ''; - return config; -} - -// \u68C0\u67E5\u5E76\u5904\u7406\u7BA1\u7406\u5458\u4EE4\u724C -function checkAndHandleAdminToken() { - if (!checkAdminToken()) { - // \u7981\u7528\u7CFB\u7EDF\u914D\u7F6E\u6309\u94AE\u5E76\u6DFB\u52A0\u63D0\u793A - const envNavBtn = document.getElementById('env-nav-btn'); - if (envNavBtn) { - envNavBtn.title = '\u8BF7\u5148\u914D\u7F6EADMIN_TOKEN\u5E76\u4F7F\u7528\u6B63\u786E\u7684admin token\u8BBF\u95EE\u4EE5\u542F\u7528\u7CFB\u7EDF\u7BA1\u7406\u529F\u80FD'; - } - } -} - -// \u6E32\u67D3\u503C\u8F93\u5165\u63A7\u4EF6 -function renderValueInput(item) { - const container = document.getElementById('value-input-container'); - const type = item ? item.type : document.getElementById('value-type').value; - const value = item ? item.value : ''; - const currentKey = item ? item.key : document.getElementById('env-key').value; - - if (type === 'boolean') { - // \u5E03\u5C14\u5F00\u5173 - // \u5BF9\u4E8ELIKE_SWITCH\u53D8\u91CF\uFF0C\u9ED8\u8BA4\u503C\u8BBE\u4E3Atrue\uFF08\u5F00\u542F\u72B6\u6001\uFF09 - let checked; - if (currentKey === 'LIKE_SWITCH' || currentKey === 'REMEMBER_LAST_SELECT') { - // \u5982\u679C\u503C\u4E3A\u7A7A\u6216\u672A\u5B9A\u4E49\uFF0CLIKE_SWITCH\u548CREMEMBER_LAST_SELECT\u9ED8\u8BA4\u4E3Atrue\uFF08\u5F00\u542F\uFF09 - checked = value === 'true' || value === true || (value === '' || value === undefined || value === null); - } else { - checked = value === 'true' || value === true; - } - container.innerHTML = \` - -
- - \${checked ? '\u542F\u7528' : '\u7981\u7528'} -
- \`; - - document.getElementById('bool-value').addEventListener('change', function(e) { - document.getElementById('bool-label').textContent = e.target.checked ? '\u542F\u7528' : '\u7981\u7528'; - }); - - } else if (type === 'number') { - // \u6570\u5B57\u6EDA\u8F6E - const min = item && item.min !== undefined ? item.min : 1; - const max = item && item.max !== undefined ? item.max : 100; - const currentValue = value || min; - - container.innerHTML = \` - -
-
- - -
-
\${currentValue}
-
-
- -
- \`; - - } else if (type === 'select') { - // \u6807\u7B7E\u9009\u62E9 - const options = item && item.options ? item.options : ['option1', 'option2', 'option3']; - const optionsInput = item ? '' : \` -
- - -
- \`; - - container.innerHTML = \` - \${optionsInput} - -
- \${options.map(opt => \` -
- \${opt} -
- \`).join('')} -
- \`; - - } else if (type === 'multi-select') { - // \u591A\u9009\u6807\u7B7E\uFF08\u53EF\u62D6\u52A8\u6392\u5E8F\uFF09 - const options = item && item.options ? item.options : ['option1', 'option2', 'option3', 'option4']; - // \u786E\u4FDDvalue\u662F\u5B57\u7B26\u4E32\u7C7B\u578B\u540E\u518D\u8FDB\u884Csplit\u64CD\u4F5C - const stringValue = typeof value === 'string' ? value : String(value || ''); - const selectedValues = stringValue ? stringValue.split(',').map(v => v.trim()).filter(v => v) : []; - - // \u68C0\u67E5\u662F\u5426\u4E3A SOURCE_ORDER\uFF0C\u5982\u679C\u662F\u5219\u4E0D\u663E\u793A\u5408\u5E76\u6A21\u5F0F - const shouldShowMergeMode = currentKey === 'MERGE_SOURCE_PAIRS' || currentKey === 'PLATFORM_ORDER'; - - // \u6BCF\u6B21\u6E32\u67D3\u65F6\u91CD\u7F6E\u5408\u5E76\u6A21\u5F0F\u72B6\u6001 - isMergeMode = false; - stagingTags = []; - - const optionsInput = item ? '' : \` -
- - -
- \`; - - container.innerHTML = \` - \${optionsInput} - -
-
- \${selectedValues.map(val => \` -
- \${val} - -
- \`).join('')} -
- - \${shouldShowMergeMode ? \` -
-
- \u{1F517}\uFE0F \u5F00\u542F\u5408\u5E76\u6A21\u5F0F -
-
- \u5F00\u542F\u540E\u70B9\u51FB\u4E0B\u65B9\u9009\u9879\u5C06\u6DFB\u52A0\u5230\u6682\u5B58\u533A,\u7EC4\u5408\u540E\u70B9\u51FB \u221A \u786E\u8BA4 -
-
- -
- -
- \` : ''} - - -
- \${options.map(opt => { - return \` -
- \${opt} -
- \`; - }).join('')} -
-
- - \${currentKey === 'MERGE_SOURCE_PAIRS' ? \` -
- -
-
-
-
- \` : ''} - \`; - - // \u8BBE\u7F6E\u62D6\u52A8\u4E8B\u4EF6 - // \u7ACB\u5373\u6267\u884C\u4E00\u6B21\u72B6\u6001\u68C0\u67E5\uFF0C\u786E\u4FDD\u5DF2\u9009\u9879\u53D8\u7070 - setTimeout(updateTagStates, 0); - setupDragAndDrop(); - - } else if (type === 'map') { - // \u6620\u5C04\u8868\u7C7B\u578B - const pairs = value ? value.split(';').map(pair => pair.trim()).filter(pair => pair) : []; - const mapItems = pairs.map(pair => { - if (pair.includes('->')) { - const [left, right] = pair.split('->').map(s => s.trim()); - return { left, right }; - } - return { left: pair, right: '' }; - }); - - container.innerHTML = \` - -
- \${mapItems.map((item, index) => \` -
- - -> - - -
- \`).join('')} - -
- - \`; - - } else { - // \u6587\u672C\u8F93\u5165 - const currentKey = document.getElementById('env-key') ? document.getElementById('env-key').value : ''; - const isBilibiliCookie = currentKey === 'BILIBILI_COOKIE'; - const isAiApiKey = currentKey === 'AI_API_KEY'; - const isColorPool = currentKey === 'COLOR_POOL'; - const isDanmuOffset = currentKey === 'DANMU_OFFSET'; - const isCustomMergeRules = currentKey === 'CUSTOM_MERGE_RULES'; - const offsetSources = item && item.sources ? item.sources : []; - - if (isColorPool) { - // \u81EA\u5B9A\u4E49\u989C\u8272\u6C60\u4E13\u7528\u7F16\u8F91\u754C\u9762 - const colors = parseColorPool(value); - - container.innerHTML = \` - -
- \${renderColorItems(colors)} -
-
-
-
-
-
-
-
-
- #ff0000 -
-
- \u4EAE\u5EA6 - -
-
- - -
-
-
-
- -
- -
- - \`; - setTimeout(initColorWheel, 0); - } else if (isDanmuOffset) { - // DANMU_OFFSET \u4E13\u7528\u7F16\u8F91\u754C\u9762 - const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 10) : 3; - container.innerHTML = \` - - -
- - -
-
-
\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u53EF\u5FEB\u6377\u586B\u5165\u89C4\u5219\u8868\u5355\uFF1A
-
-
-
-
\u5B63\u548C\u96C6\u4E0D\u586B\u5219\u5BF9\u6240\u6709\u5B63/\u96C6\u751F\u6548
-
-
- - -
-
- - -
-
- - -
-
- - -
-
-
- -
- \${offsetSources.length > 0 ? \` -
- -
- \${offsetSources.map(src => \` -
- \${src} -
- \`).join('')} -
-
- \` : ''} -
- - -
-
- \`; - } else if (isAiApiKey) { - // AI API Key \u4E13\u7528\u7F16\u8F91\u754C\u9762 - container.innerHTML = \` -
- - -
\u652F\u6301 OpenAI \u517C\u5BB9\u7684 API\uFF0C\u9700\u914D\u5408 AI_BASE_URL \u548C AI_MODEL \u914D\u7F6E\u4F7F\u7528
- -
- \u{1F50D} - \u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u6D4B\u8BD5\u8FDE\u901A\u6027 -
-
- -
-
- \`; - } else if (isBilibiliCookie) { - // Bilibili Cookie \u4E13\u7528\u7F16\u8F91\u754C\u9762 - const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 8) : 3; - container.innerHTML = \` - - \`; - - // \u81EA\u52A8\u68C0\u6D4B Cookie \u72B6\u6001 + \u76D1\u542C\u8F93\u5165\u53D8\u5316\uFF08\u9632\u6296\uFF09 - setTimeout(() => { - autoCheckBilibiliCookieStatus(); - - const inputEl = document.getElementById('text-value'); - if (inputEl) { - let debounceTimer = null; - inputEl.addEventListener('input', () => { - if (debounceTimer) clearTimeout(debounceTimer); - debounceTimer = setTimeout(() => { - autoCheckBilibiliCookieStatus(); - }, 600); - }); - } - }, 120); - } else if (isCustomMergeRules) { - // CUSTOM_MERGE_RULES \u4E13\u7528\u7F16\u8F91\u754C\u9762 - const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 10) : 3; - container.innerHTML = \` - - -
- - -
-
-
\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u53EF\u5FEB\u6377\u586B\u5165\u89C4\u5219\u8868\u5355\uFF1A
-
-
-
-
-
- - -
-
- - -
\u5408\u5E76
-
-
- - -
-
-
-
- - -
-
-
- -
- \${offsetSources.map(src => \` -
\${src}
- \`).join('')} -
-
-
- - -
-
- \`; - } else if (value && value.length > 50) { - const rows = Math.min(Math.max(Math.ceil(value.length / 50), 3), 10); - container.innerHTML = \` - - - \`; - } else { - container.innerHTML = \` - - - \`; - } - } -} - -// ===== \u989C\u8272\u6C60\u64CD\u4F5C\u51FD\u6570 ===== - -// \u8272\u8F6E\u72B6\u6001 -let wheelHue = 0; -let wheelLightness = 50; -let wheelCleanup = null; - -// \u89E3\u6790\u989C\u8272\u6C60\u5B57\u7B26\u4E32\u4E3A\u5341\u8FDB\u5236\u6570\u7EC4 -function parseColorPool(str) { - if (!str) return []; - return str.split(',').map(c => parseInt(c.trim(), 10)).filter(c => !isNaN(c) && c >= 0 && c <= 16777215); -} - -// \u6E32\u67D3\u989C\u8272\u6C60\u8272\u5757 HTML -function renderColorItems(colors) { - if (colors.length === 0) return '\u672A\u914D\u7F6E\uFF0C\u5C06\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60'; - return colors.map((c, i) => \` -
- - \${c} - -
- \`).join(''); -} - -// HSL -> RGB -> \u5341\u8FDB\u5236 -function hslToDecimal(h, s, l) { - s /= 100; - l /= 100; - const k = n => (n + h / 30) % 12; - const a = s * Math.min(l, 1 - l); - const f = n => l - a * Math.max(-1, Math.min(k(n) - 3, 9 - k(n), 1)); - const r = Math.round(f(0) * 255); - const g = Math.round(f(8) * 255); - const b = Math.round(f(4) * 255); - return (r << 16) | (g << 8) | b; -} - -// \u66F4\u65B0\u8272\u8F6E\u9884\u89C8 -function updateWheelPreview() { - const dec = hslToDecimal(wheelHue, 100, wheelLightness); - const hex = '#' + dec.toString(16).padStart(6, '0'); - const swatch = document.getElementById('color-preview-swatch'); - const hexLabel = document.getElementById('color-preview-hex'); - const dot = document.getElementById('wheel-dot'); - if (swatch) swatch.style.background = hex; - if (hexLabel) hexLabel.textContent = hex; - if (dot) dot.style.background = hex; -} - -// \u521D\u59CB\u5316\u8272\u8F6E\u4EA4\u4E92 -function initColorWheel() { - if (wheelCleanup) wheelCleanup(); - - const wheel = document.getElementById('color-wheel'); - const slider = document.getElementById('color-lightness'); - if (!wheel) return; - - let dragging = false; - - function handleWheelEvent(e) { - const rect = wheel.getBoundingClientRect(); - const cx = rect.width / 2; - const cy = rect.height / 2; - const x = e.clientX - rect.left - cx; - const y = e.clientY - rect.top - cy; - const dist = Math.sqrt(x * x + y * y); - const outerR = rect.width / 2; - const innerR = outerR * 0.22; - if (dist < innerR || dist > outerR) return; - let angle = Math.atan2(y, x) * 180 / Math.PI + 90; - if (angle < 0) angle += 360; - wheelHue = Math.round(angle % 360); - const dot = document.getElementById('wheel-dot'); - if (dot) { - const r = (innerR + outerR) / 2; - const rad = (wheelHue - 90) * Math.PI / 180; - dot.style.left = (cx + r * Math.cos(rad) - 7) + 'px'; - dot.style.top = (cy + r * Math.sin(rad) - 7) + 'px'; - } - updateWheelPreview(); - } - - const onMove = e => { - if (dragging) handleWheelEvent(e); - }; - const onTouchMove = e => { - if (dragging) handleWheelEvent(e.touches[0]); - }; - const onUp = () => { - dragging = false; - }; - - wheel.addEventListener('mousedown', e => { - dragging = true; - handleWheelEvent(e); - }); - wheel.addEventListener('touchstart', e => { - dragging = true; - handleWheelEvent(e.touches[0]); - e.preventDefault(); - }, { passive: false }); - document.addEventListener('mousemove', onMove); - document.addEventListener('touchmove', onTouchMove, { passive: false }); - document.addEventListener('mouseup', onUp); - document.addEventListener('touchend', onUp); - - if (slider) { - slider.addEventListener('input', function() { - wheelLightness = parseInt(this.value, 10); - updateWheelPreview(); - }); - } - - wheelCleanup = () => { - document.removeEventListener('mousemove', onMove); - document.removeEventListener('touchmove', onTouchMove); - document.removeEventListener('mouseup', onUp); - document.removeEventListener('touchend', onUp); - wheelCleanup = null; - }; - - updateWheelPreview(); -} - -// \u989C\u8272\u6C60 - \u8FFD\u52A0\u989C\u8272\u503C -function appendColorToPool(decimal) { - const textarea = document.getElementById('text-value'); - const current = textarea.value.trim(); - textarea.value = current ? current + ',' + decimal : String(decimal); - syncColorPoolDisplay(); -} - -// \u989C\u8272\u6C60 - \u4ECE\u8272\u8F6E\u6DFB\u52A0 -function addColorToPool() { - appendColorToPool(hslToDecimal(wheelHue, 100, wheelLightness)); -} - -// \u989C\u8272\u6C60 - \u968F\u673A\u6DFB\u52A0\uFF08crypto \u771F\u968F\u673A\uFF09 -function addRandomColorToPool() { - const arr = new Uint32Array(1); - crypto.getRandomValues(arr); - appendColorToPool(arr[0] % 16777216); -} - -// \u989C\u8272\u6C60 - \u5220\u9664\u6307\u5B9A\u989C\u8272 -function removeColorFromPool(index) { - const textarea = document.getElementById('text-value'); - const colors = textarea.value.split(',').map(c => c.trim()).filter(c => c); - colors.splice(index, 1); - textarea.value = colors.join(','); - syncColorPoolDisplay(); -} - -// \u989C\u8272\u6C60 - \u6062\u590D\u9ED8\u8BA4\uFF08\u6E05\u7A7A\u503C\uFF0C\u540E\u7AEF\u9ED8\u8BA4\u503C\u81EA\u52A8\u751F\u6548\uFF09 -function resetColorPool() { - const textarea = document.getElementById('text-value'); - textarea.value = ''; - syncColorPoolDisplay(); -} - -// \u989C\u8272\u6C60 - \u540C\u6B65\u8272\u5757\u5C55\u793A -function syncColorPoolDisplay() { - const textarea = document.getElementById('text-value'); - const display = document.getElementById('color-pool-display'); - if (!textarea || !display) return; - display.innerHTML = renderColorItems(parseColorPool(textarea.value)); -} - -// \u989C\u8272\u6C60 - \u6279\u91CF\u6DFB\u52A0\u5F39\u7A97 -function showBatchColorDialog() { - const overlay = document.createElement('div'); - overlay.id = 'batch-color-overlay'; - overlay.className = 'batch-color-overlay'; - overlay.innerHTML = \` -
-
\u6279\u91CF\u6DFB\u52A0\u989C\u8272
-
\u652F\u6301\u5341\u8FDB\u5236\uFF08\u5982 16777215\uFF09\u548C\u5341\u516D\u8FDB\u5236\uFF08\u5982 #ffffff\uFF09\uFF0C\u9017\u53F7\u5206\u9694
- -
-
- - -
-
- \`; - document.body.appendChild(overlay); - overlay.addEventListener('click', function(e) { - if (e.target === overlay) closeBatchColorDialog(); - }); - const input = document.getElementById('batch-color-input'); - if (input) input.addEventListener('input', updateBatchColorPreview); -} - -// \u989C\u8272\u6C60 - \u5173\u95ED\u6279\u91CF\u5F39\u7A97 -function closeBatchColorDialog() { - const overlay = document.getElementById('batch-color-overlay'); - if (overlay) overlay.remove(); -} - -// \u989C\u8272\u6C60 - \u89E3\u6790\u5355\u4E2A\u989C\u8272\u503C\uFF08\u652F\u6301\u5341\u8FDB\u5236\u548C #hex\uFF09 -function parseColorValue(raw) { - const s = raw.trim(); - if (!s) return NaN; - if (s.startsWith('#')) { - const hex = s.slice(1); - if (/^[0-9a-fA-F]{3}$/.test(hex)) { - const full = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2]; - return parseInt(full, 16); - } - if (/^[0-9a-fA-F]{6}$/.test(hex)) { - return parseInt(hex, 16); - } - return NaN; - } - const n = parseInt(s, 10); - if (isNaN(n) || n < 0 || n > 16777215) return NaN; - return n; -} - -// \u989C\u8272\u6C60 - \u6279\u91CF\u9884\u89C8 -function updateBatchColorPreview() { - const input = document.getElementById('batch-color-input'); - const preview = document.getElementById('batch-color-preview'); - if (!input || !preview) return; - const parts = input.value.split(','); - const html = parts.map(raw => { - const c = parseColorValue(raw); - if (isNaN(c)) return ''; - return \`\`; - }).filter(Boolean).join(''); - preview.innerHTML = html || '\u8F93\u5165\u989C\u8272\u540E\u9884\u89C8'; -} - -// \u989C\u8272\u6C60 - \u786E\u8BA4\u6279\u91CF\u6DFB\u52A0 -function confirmBatchColor() { - const input = document.getElementById('batch-color-input'); - if (!input) return; - const parts = input.value.split(','); - const valid = parts.map(raw => parseColorValue(raw)).filter(c => !isNaN(c)); - if (valid.length === 0) { - customAlert('\u672A\u8BC6\u522B\u5230\u6709\u6548\u989C\u8272\u503C'); - return; - } - const textarea = document.getElementById('text-value'); - const current = textarea.value.trim(); - const newVal = valid.map(String).join(','); - textarea.value = current ? current + ',' + newVal : newVal; - syncColorPoolDisplay(); - closeBatchColorDialog(); -} - -// DANMU_OFFSET \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u89C4\u5219\u9762\u677F -function toggleOffsetRulePanel() { - const panel = document.getElementById('offset-rule-panel'); - if (panel) { - const isHidden = getComputedStyle(panel).display === 'none'; - panel.style.display = isHidden ? 'block' : 'none'; - const btn = document.getElementById('offset-rule-toggle'); - if (btn) btn.textContent = isHidden ? '\u6536\u8D77' : '\u6DFB\u52A0\u89C4\u5219'; - } -} - -// DANMU_OFFSET \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u6765\u6E90\u9009\u4E2D\u72B6\u6001 -function toggleOffsetSource(el) { - el.classList.toggle('selected'); -} - -// DANMU_OFFSET \u5FEB\u901F\u914D\u7F6E - \u786E\u8BA4\u6DFB\u52A0\u89C4\u5219 -function appendOffsetRule() { - const anime = document.getElementById('offset-anime').value.trim(); - const season = document.getElementById('offset-season').value.trim(); - const episode = document.getElementById('offset-episode').value.trim(); - const seconds = document.getElementById('offset-seconds').value.trim(); - const usePercent = !!document.getElementById('offset-use-percent')?.checked; - - if (!anime) { - customAlert('\u8BF7\u8F93\u5165\u5267\u540D'); - return; - } - if (!seconds) { - customAlert('\u8BF7\u8F93\u5165\u504F\u79FB\u79D2\u6570'); - return; - } - if (episode && !season) { - customAlert('\u6307\u5B9A\u96C6\u65F6\u9700\u8981\u540C\u65F6\u6307\u5B9A\u5B63'); - return; - } - - let path = anime; - if (season) { - path += '/S' + season.padStart(2, '0'); - if (episode) { - path += '/E' + episode.padStart(2, '0'); - } - } - - const sourcesEl = document.getElementById('offset-sources'); - if (sourcesEl) { - const selectedSources = Array.from(sourcesEl.querySelectorAll('.offset-source-tag.selected')) - .map(el => el.dataset.value); - if (selectedSources.length > 0) { - path += '@' + selectedSources.join('&'); - } - } - - if (usePercent) { - path += '%'; - } - - const rule = path + ':' + seconds; - const textarea = document.getElementById('text-value'); - const current = textarea.value.trim(); - textarea.value = current ? current + ',' + rule : rule; - - document.getElementById('offset-anime').value = ''; - document.getElementById('offset-season').value = ''; - document.getElementById('offset-episode').value = ''; - document.getElementById('offset-seconds').value = ''; - const usePercentEl = document.getElementById('offset-use-percent'); - if (usePercentEl) { - usePercentEl.checked = false; - } - if (sourcesEl) { - sourcesEl.querySelectorAll('.offset-source-tag.selected').forEach(el => { - el.classList.remove('selected'); - }); - } - toggleOffsetRulePanel(); -} - -// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u7126\u70B9\u72B6\u6001\u8BB0\u5F55 -let currentMergeFocus = 'sec'; - -function setMergeFocus(type) { - currentMergeFocus = type; -} - -// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5FEB\u6377\u8FFD\u52A0\u6765\u6E90 -function appendSourceToMerge(source) { - const inputId = currentMergeFocus === 'sec' ? 'merge-sec-entity' : 'merge-prim-entity'; - const inputEl = document.getElementById(inputId); - if (!inputEl) return; - - let val = inputEl.value.trim(); - if (val.includes('@')) { - val += '&' + source; - } else { - val += '@' + source; - } - inputEl.value = val; - inputEl.focus(); // \u4FDD\u6301\u7126\u70B9\uFF0C\u65B9\u4FBF\u7528\u6237\u8FDE\u7EED\u70B9\u51FB\u591A\u4E2A\u6765\u6E90 -} - -// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u89C4\u5219\u9762\u677F -function toggleMergeRulePanel() { - const panel = document.getElementById('merge-rule-panel'); - if (panel) { - const isHidden = getComputedStyle(panel).display === 'none'; - panel.style.display = isHidden ? 'block' : 'none'; - const btn = document.getElementById('merge-rule-toggle'); - if (btn) btn.textContent = isHidden ? '\u6536\u8D77' : '\u6DFB\u52A0\u89C4\u5219'; - } -} - -// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u64CD\u4F5C\u7B26\u8054\u52A8 -function onMergeActionChange() { - const action = document.getElementById('merge-action').value; - const routeRow = document.getElementById('merge-route-row'); - const hint = document.getElementById('merge-action-hint'); - - if (action === '\xD7') { - if (routeRow) routeRow.style.display = 'none'; - if (hint) hint.textContent = '\u963B\u65AD'; - } else { - if (routeRow) routeRow.style.display = 'flex'; - if (hint) hint.textContent = '\u5408\u5E76'; - } -} - -// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u786E\u8BA4\u6DFB\u52A0\u89C4\u5219 -function appendMergeRule() { - const secEntity = document.getElementById('merge-sec-entity').value.trim(); - const action = document.getElementById('merge-action').value; - const primEntity = document.getElementById('merge-prim-entity').value.trim(); - const routeRule = document.getElementById('merge-route-rule').value.trim(); - - if (!secEntity || !primEntity) { - customAlert('\u526F\u6E90\u5B9E\u4F53\u548C\u4E3B\u6E90\u5B9E\u4F53\u4E0D\u80FD\u4E3A\u7A7A'); - return; - } - - let rule = secEntity + ' ' + action + ' ' + primEntity; - if (action === '->' && routeRule) { - rule += ' | ' + routeRule; - } - - const textarea = document.getElementById('text-value'); - const current = textarea.value.trim(); - - if (current && !current.endsWith(';')) { - textarea.value = current + ';' + rule; - } else { - textarea.value = current ? current + rule : rule; - } - - // \u6E05\u7A7A\u8868\u5355 - document.getElementById('merge-sec-entity').value = ''; - document.getElementById('merge-prim-entity').value = ''; - document.getElementById('merge-route-rule').value = ''; - - toggleMergeRulePanel(); -} - -// \u8C03\u6574\u6570\u5B57 -function adjustNumber(delta) { - const display = document.getElementById('num-value'); - const slider = document.getElementById('num-slider'); - let value = parseInt(display.textContent) + delta; - - value = Math.max(parseInt(slider.min), Math.min(parseInt(slider.max), value)); - - display.textContent = value; - slider.value = value; -} - -// \u66F4\u65B0\u6570\u5B57\u663E\u793A -function updateNumberDisplay(value) { - document.getElementById('num-value').textContent = value; -} - -// \u9009\u62E9\u6807\u7B7E -function selectTag(element) { - document.querySelectorAll('.tag-option').forEach(el => el.classList.remove('selected')); - element.classList.add('selected'); -} - -// \u66F4\u65B0\u6807\u7B7E\u9009\u9879 -function updateTagOptions() { - const input = document.getElementById('select-options'); - const options = input.value.split(',').map(s => s.trim()).filter(s => s); - const container = document.getElementById('tag-selector'); - - container.innerHTML = options.map(opt => \` -
- \${opt} -
- \`).join(''); -} - -// \u7EDF\u4E00\u7684\u72B6\u6001\u68C0\u67E5\u51FD\u6570 -function updateTagStates() { - // \u786E\u4FDD DOM \u5143\u7D20\u5B58\u5728\uFF0C\u9632\u6B62\u5728\u6E32\u67D3\u8FC7\u7A0B\u4E2D\u88AB\u8C03\u7528\u51FA\u9519 - const keyInput = document.getElementById('env-key'); - if (!keyInput) return; - - const currentKey = keyInput.value; - const isMergeSourcePairs = currentKey === 'MERGE_SOURCE_PAIRS'; - - // 1. \u83B7\u53D6\u5F53\u524D\u6682\u5B58\u533A\u4E2D\u7684Token (\u9632\u6B62\u540C\u7EC4\u5185\u91CD\u590D) - const stagingTokens = new Set(stagingTags); - - // 2. \u83B7\u53D6\u5DF2\u786E\u8BA4\u7684 Selected Tags (\u4EC5\u5728\u975E\u5408\u5E76\u6A21\u5F0F\u4E0B\u9700\u8981\u68C0\u67E5) - const selectedTagElements = Array.from(document.querySelectorAll('.selected-tag')); - - // 3. \u66F4\u65B0\u6240\u6709\u53EF\u9009\u9879\u7684\u72B6\u6001 - const availableTags = document.querySelectorAll('.available-tag'); - availableTags.forEach(tag => { - const value = tag.dataset.value; - let shouldDisable = false; - - if (isMergeMode) { - // [\u5408\u5E76\u6A21\u5F0F\u903B\u8F91] - // \u53EA\u8981\u4E0D\u5728\u5F53\u524D\u7684\u6682\u5B58\u533A\u4E2D\uFF0C\u5C31\u53EF\u4EE5\u9009\uFF08\u5141\u8BB8 bilibili&a \u548C bilibili&b\uFF09 - // \u4E5F\u5C31\u662F\u8BF4\uFF0C\u6211\u4EEC\u5B8C\u5168\u4E0D\u68C0\u67E5 selectedTagElements - if (stagingTokens.has(value)) { - shouldDisable = true; - } - } else { - // [\u666E\u901A\u6A21\u5F0F\u903B\u8F91] - // \u53EA\u8981\u5DF2\u7ECF\u88AB\u9009\u4E86\uFF0C\u5C31\u7981\u7528 (\u7CBE\u51C6\u5339\u914D) - const isAlreadySelected = selectedTagElements.some(el => el.dataset.value === value); - if (isAlreadySelected) { - shouldDisable = true; - } - - // \u7279\u6B8A\u60C5\u51B5\uFF1A\u5982\u679C\u662F MERGE_SOURCE_PAIRS \u4F46\u6CA1\u5F00\u5408\u5E76\u6A21\u5F0F\uFF0C\u4E14\u8FD8\u6CA1\u88AB\u9009\uFF0C\u4E5F\u7981\u7528\uFF08\u5F3A\u8FEB\u7528\u6237\u5F00\u5F00\u5173\uFF09 - if (isMergeSourcePairs && !isAlreadySelected) { - shouldDisable = true; - } - } - - if (shouldDisable) { - tag.classList.add('disabled'); - } else { - tag.classList.remove('disabled'); - } - }); -} - -// \u6DFB\u52A0\u5DF2\u9009\u6807\u7B7E -function addSelectedTag(element) { - const value = element.dataset.value; - - if (isMergeMode) { - if (!stagingTags.includes(value)) { - stagingTags.push(value); - renderStagingArea(); - updateTagStates(); // \u7ACB\u5373\u66F4\u65B0\u72B6\u6001 (\u8BE5\u9009\u9879\u53D8\u7070\uFF0C\u9632\u6B62\u540C\u7EC4\u91CD\u590D) - } - return; - } - - if (element.classList.contains('disabled')) return; - - const container = document.getElementById('selected-tags'); - - // \u79FB\u9664empty\u7C7B - container.classList.remove('empty'); - - // \u521B\u5EFA\u65B0\u6807\u7B7E - const tag = document.createElement('div'); - tag.className = 'selected-tag'; - tag.draggable = true; - tag.dataset.value = value; - tag.innerHTML = \` - \${value} - - \`; - - container.appendChild(tag); - updateTagStates(); // \u7ACB\u5373\u66F4\u65B0\u72B6\u6001 - setupDragAndDrop(); -} - -// \u79FB\u9664\u5DF2\u9009\u6807\u7B7E -function removeSelectedTag(button) { - const tag = button.parentElement; - tag.remove(); - - const container = document.getElementById('selected-tags'); - if (container.children.length === 0) { - container.classList.add('empty'); - } - - updateTagStates(); // \u79FB\u9664\u540E\u7ACB\u5373\u91CA\u653E\u72B6\u6001 - setupDragAndDrop(); -} - -// \u66F4\u65B0\u591A\u9009\u9009\u9879 -function updateMultiOptions() { - const input = document.getElementById('multi-options'); - const options = input.value.split(',').map(s => s.trim()).filter(s => s); - - const container = document.getElementById('available-tags'); - container.innerHTML = options.map(opt => { - return \` -
- \${opt} -
- \`; - }).join(''); - - updateTagStates(); // \u521D\u59CB\u5316\u65F6\u66F4\u65B0\u72B6\u6001 -} - -// \u5207\u6362\u5408\u5E76\u6A21\u5F0F -function toggleMergeMode() { - isMergeMode = !isMergeMode; - const btn = document.getElementById('merge-mode-toggle'); - const stagingArea = document.getElementById('staging-area'); - - if (isMergeMode) { - btn.classList.add('active'); - btn.innerHTML = '\u26D3\u200D\u{1F4A5} \u5408\u5E76\u6A21\u5F0F\u5DF2\u5F00\u542F\uFF0C\u70B9\u51FB\u5173\u95ED'; - stagingArea.classList.add('active'); - renderStagingArea(); - } else { - btn.classList.remove('active'); - btn.innerHTML = '\u{1F517}\uFE0F \u70B9\u51FB\u5F00\u542F\u5408\u5E76\u6A21\u5F0F'; - stagingArea.classList.remove('active'); - stagingTags = []; - } - - // \u5207\u6362\u6A21\u5F0F\u65F6\u7ACB\u5373\u5237\u65B0\u6240\u6709\u53EF\u9009\u9879\u72B6\u6001 - updateTagStates(); -} - -// \u6E32\u67D3\u6682\u5B58\u533A -function renderStagingArea() { - const container = document.getElementById('staging-area'); - const confirmBtn = container.querySelector('.confirm-merge-btn'); - - while (container.firstChild && container.firstChild !== confirmBtn) { - container.removeChild(container.firstChild); - } - - if (stagingTags.length === 0) { - const hint = document.createElement('span'); - hint.textContent = '\u8BF7\u70B9\u51FB\u4E0B\u65B9\u9009\u9879\u8FDB\u884C\u7EC4\u5408...'; - hint.style.color = '#666'; - hint.style.fontSize = '12px'; - container.insertBefore(hint, confirmBtn); - confirmBtn.disabled = true; - } else { - stagingTags.forEach((tag, index) => { - if (index > 0) { - const sep = document.createElement('span'); - sep.className = 'staging-separator'; - sep.textContent = '&'; - container.insertBefore(sep, confirmBtn); - } - const tagEl = document.createElement('div'); - tagEl.className = 'staging-tag'; - tagEl.draggable = true; - tagEl.dataset.value = tag; - tagEl.dataset.index = index; - tagEl.innerHTML = \`\${tag}\xD7\`; - container.insertBefore(tagEl, confirmBtn); - }); - confirmBtn.disabled = false; - setupStagingDragAndDrop(); - } -} - -// \u4ECE\u6682\u5B58\u533A\u79FB\u9664 -function removeFromStaging(index) { - stagingTags.splice(index, 1); - renderStagingArea(); - updateTagStates(); // \u79FB\u9664\u540E\u5237\u65B0\u72B6\u6001 -} - -// \u786E\u8BA4\u6DFB\u52A0\u5408\u5E76\u7EC4 -function confirmMergeGroup() { - if (stagingTags.length === 0) return; - const groupValue = stagingTags.join('&'); - const container = document.getElementById('selected-tags'); - container.classList.remove('empty'); - - const tag = document.createElement('div'); - tag.className = 'selected-tag'; - tag.draggable = true; - tag.dataset.value = groupValue; - tag.innerHTML = \`\${groupValue}\`; - - container.appendChild(tag); - setupDragAndDrop(); - - stagingTags = []; // \u6E05\u7A7A\u6682\u5B58\u533A - renderStagingArea(); - updateTagStates(); // \u5173\u952E\uFF1A\u786E\u8BA4\u540E\u7ACB\u5373\u91CD\u65B0\u8BA1\u7B97\u6240\u6709\u53EF\u9009\u9879\u7684\u7981\u7528\u72B6\u6001 (\u91CD\u7F6E\u4E3A\u53EF\u7528) -} - -// \u8BBE\u7F6E\u6682\u5B58\u533A\u62D6\u653E\u529F\u80FD -function setupStagingDragAndDrop() { - const container = document.getElementById('staging-area'); - const tags = container.querySelectorAll('.staging-tag'); - - tags.forEach(tag => { - tag.addEventListener('dragstart', handleStagingDragStart); - tag.addEventListener('dragend', handleStagingDragEnd); - tag.addEventListener('dragover', handleStagingDragOver); - tag.addEventListener('drop', handleStagingDrop); - tag.addEventListener('dragenter', handleStagingDragEnter); - tag.addEventListener('dragleave', handleStagingDragLeave); - - tag.addEventListener('touchstart', handleStagingTouchStart); - tag.addEventListener('touchmove', handleStagingTouchMove); - tag.addEventListener('touchend', handleStagingTouchEnd); - }); -} - -let stagingDraggedElement = null; - -function handleStagingDragStart(e) { - stagingDraggedElement = this; - this.classList.add('dragging'); - e.dataTransfer.effectAllowed = 'move'; -} - -function handleStagingDragEnd(e) { - this.classList.remove('dragging'); - document.querySelectorAll('.staging-tag').forEach(tag => { - tag.classList.remove('drag-over'); - }); -} - -function handleStagingDragOver(e) { - if (e.preventDefault) { - e.preventDefault(); - } - e.dataTransfer.dropEffect = 'move'; - return false; -} - -function handleStagingDragEnter(e) { - if (this !== stagingDraggedElement) { - this.classList.add('drag-over'); - } -} - -function handleStagingDragLeave(e) { - this.classList.remove('drag-over'); -} - -function handleStagingDrop(e) { - if (e.stopPropagation) { - e.stopPropagation(); - } - - if (stagingDraggedElement !== this) { - const draggedIndex = parseInt(stagingDraggedElement.dataset.index); - const targetIndex = parseInt(this.dataset.index); - - const [movedItem] = stagingTags.splice(draggedIndex, 1); - stagingTags.splice(targetIndex, 0, movedItem); - - renderStagingArea(); - } - - this.classList.remove('drag-over'); - return false; -} - -function handleStagingTouchStart(e) { - if (e.target.classList.contains('remove-btn')) { - return; - } - - e.preventDefault(); - stagingDraggedElement = this; - this.classList.add('dragging'); - - this.style.transform = 'rotate(5deg)'; - this.style.opacity = '0.8'; - this.style.zIndex = '1000'; -} - -function handleStagingTouchMove(e) { - if (!stagingDraggedElement) return; - e.preventDefault(); - - const touch = e.touches[0]; - const elementRect = stagingDraggedElement.getBoundingClientRect(); - - if (!document.getElementById('staging-touch-drag-ghost')) { - const ghostElement = stagingDraggedElement.cloneNode(true); - ghostElement.id = 'staging-touch-drag-ghost'; - ghostElement.style.position = 'fixed'; - ghostElement.style.left = '0'; - ghostElement.style.top = '0'; - ghostElement.style.pointerEvents = 'none'; - ghostElement.style.zIndex = '9999'; - ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)'; - ghostElement.style.opacity = '0.8'; - ghostElement.style.boxSizing = 'border-box'; - ghostElement.style.width = elementRect.width + 'px'; - ghostElement.style.height = elementRect.height + 'px'; - document.body.appendChild(ghostElement); - } else { - const ghostElement = document.getElementById('staging-touch-drag-ghost'); - ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)'; - } - - const container = document.getElementById('staging-area'); - const tags = Array.from(container.querySelectorAll('.staging-tag')).filter(tag => tag !== stagingDraggedElement); - let targetElement = null; - - for (const tag of tags) { - const rect = tag.getBoundingClientRect(); - if (touch.clientX >= rect.left && touch.clientX <= rect.right && - touch.clientY >= rect.top && touch.clientY <= rect.bottom) { - targetElement = tag; - break; - } - } - - document.querySelectorAll('.staging-tag').forEach(tag => { - if (tag !== stagingDraggedElement) { - tag.classList.remove('drag-over'); - } - }); - - if (targetElement) { - targetElement.classList.add('drag-over'); - } -} - -function handleStagingTouchEnd(e) { - if (!stagingDraggedElement) return; - e.preventDefault(); - - const ghostElement = document.getElementById('staging-touch-drag-ghost'); - if (ghostElement) { - document.body.removeChild(ghostElement); - } - - const touch = e.changedTouches[0]; - const targetElement = document.elementFromPoint(touch.clientX, touch.clientY); - const targetTag = targetElement.closest('.staging-tag'); - - if (targetTag && targetTag !== stagingDraggedElement) { - const draggedIndex = parseInt(stagingDraggedElement.dataset.index); - const targetIndex = parseInt(targetTag.dataset.index); - - const [movedItem] = stagingTags.splice(draggedIndex, 1); - stagingTags.splice(targetIndex, 0, movedItem); - - renderStagingArea(); - } - - stagingDraggedElement.style.transform = ''; - stagingDraggedElement.style.opacity = ''; - stagingDraggedElement.style.zIndex = ''; - stagingDraggedElement.classList.remove('dragging'); - - document.querySelectorAll('.staging-tag').forEach(tag => { - tag.classList.remove('drag-over'); - }); - - stagingDraggedElement = null; -} - -// \u8BBE\u7F6E\u62D6\u653E\u529F\u80FD -let draggedElement = null; -let touchDragging = false; - -// \u4E3A\u5220\u9664\u6309\u94AE\u6DFB\u52A0\u89E6\u6478\u4E8B\u4EF6\u76D1\u542C\u5668\uFF0C\u4EE5\u786E\u4FDD\u5176\u53EF\u4EE5\u88AB\u70B9\u51FB -function setupDragAndDrop() { - const container = document.getElementById('selected-tags'); - const tags = container.querySelectorAll('.selected-tag'); - - tags.forEach(tag => { - // \u9F20\u6807\u62D6\u653E\u4E8B\u4EF6 - tag.addEventListener('dragstart', handleDragStart); - tag.addEventListener('dragend', handleDragEnd); - tag.addEventListener('dragover', handleDragOver); - tag.addEventListener('drop', handleDrop); - tag.addEventListener('dragenter', handleDragEnter); - tag.addEventListener('dragleave', handleDragLeave); - - // \u89E6\u6478\u62D6\u653E\u4E8B\u4EF6 - tag.addEventListener('touchstart', handleTouchStart); - tag.addEventListener('touchmove', handleTouchMove); - tag.addEventListener('touchend', handleTouchEnd); - - // \u786E\u4FDD\u5220\u9664\u6309\u94AE\u53EF\u4EE5\u88AB\u70B9\u51FB - const removeBtn = tag.querySelector('.remove-btn'); - if (removeBtn) { - // \u963B\u6B62\u5220\u9664\u6309\u94AE\u4E0A\u7684\u89E6\u6478\u4E8B\u4EF6\u5192\u6CE1\u5230\u7236\u5143\u7D20 - removeBtn.addEventListener('touchstart', function(e) { - e.stopPropagation(); - }); - - removeBtn.addEventListener('touchend', function(e) { - e.stopPropagation(); - }); - } - }); -} - -function handleDragStart(e) { - draggedElement = this; - this.classList.add('dragging'); - e.dataTransfer.effectAllowed = 'move'; -} - -function handleDragEnd(e) { - this.classList.remove('dragging'); - document.querySelectorAll('.selected-tag').forEach(tag => { - tag.classList.remove('drag-over'); - }); -} - -function handleDragOver(e) { - if (e.preventDefault) { - e.preventDefault(); - } - e.dataTransfer.dropEffect = 'move'; - return false; -} - -function handleDragEnter(e) { - if (this !== draggedElement) { - this.classList.add('drag-over'); - } -} - -function handleDragLeave(e) { - this.classList.remove('drag-over'); -} - -function handleDrop(e) { - if (e.stopPropagation) { - e.stopPropagation(); - } - - if (draggedElement !== this) { - const container = document.getElementById('selected-tags'); - const allTags = Array.from(container.querySelectorAll('.selected-tag')); - const draggedIndex = allTags.indexOf(draggedElement); - const targetIndex = allTags.indexOf(this); - - if (draggedIndex < targetIndex) { - this.parentNode.insertBefore(draggedElement, this.nextSibling); - } else { - this.parentNode.insertBefore(draggedElement, this); - } - } - - this.classList.remove('drag-over'); - return false; -} - -// \u89E6\u6478\u62D6\u52A8\u4E8B\u4EF6\u5904\u7406 -function handleTouchStart(e) { - // \u68C0\u67E5\u70B9\u51FB\u7684\u662F\u5426\u662F\u5220\u9664\u6309\u94AE - if (e.target.classList.contains('remove-btn')) { - // \u5982\u679C\u70B9\u51FB\u7684\u662F\u5220\u9664\u6309\u94AE\uFF0C\u5219\u4E0D\u6267\u884C\u62D6\u52A8\u64CD\u4F5C - return; - } - - // \u9632\u6B62\u9ED8\u8BA4\u7684\u89E6\u6478\u884C\u4E3A - e.preventDefault(); - - // \u83B7\u53D6\u89E6\u6478\u70B9 - const touch = e.touches[0]; - - // \u6A21\u62DF\u62D6\u52A8\u5F00\u59CB - draggedElement = this; - this.classList.add('dragging'); - touchDragging = true; - - // \u6DFB\u52A0\u62D6\u52A8\u6837\u5F0F - this.style.transform = 'rotate(5deg)'; - this.style.opacity = '0.8'; - this.style.zIndex = '1000'; - - // \u6DFB\u52A0\u89E6\u6478\u79FB\u52A8\u548C\u7ED3\u675F\u4E8B\u4EF6\u76D1\u542C\u5668\u5230\u6587\u6863 - document.addEventListener('touchmove', handleTouchMove, { passive: false }); - document.addEventListener('touchend', handleTouchEnd, { passive: false }); -} - -function handleTouchMove(e) { - if (!touchDragging || !draggedElement) return; - - // \u9632\u6B62\u9ED8\u8BA4\u7684\u89E6\u6478\u884C\u4E3A - e.preventDefault(); - - // \u4F7F\u7528 requestAnimationFrame \u6765\u4F18\u5316\u6027\u80FD - if (window.requestAnimationFrame) { - window.requestAnimationFrame(() => { - // \u83B7\u53D6\u89E6\u6478\u70B9\u4F4D\u7F6E - const touch = e.touches[0]; - - // \u83B7\u53D6\u62D6\u52A8\u5143\u7D20\u7684\u5C3A\u5BF8 - const elementRect = draggedElement.getBoundingClientRect(); - - // \u521B\u5EFA\u4E00\u4E2A\u4E34\u65F6\u7684\u62D6\u52A8\u5143\u7D20\uFF0C\u800C\u4E0D\u662F\u79FB\u52A8\u539F\u59CB\u5143\u7D20 - if (!document.getElementById('touch-drag-ghost')) { - const ghostElement = draggedElement.cloneNode(true); - ghostElement.id = 'touch-drag-ghost'; - ghostElement.style.position = 'fixed'; // \u4F7F\u7528 fixed \u800C\u4E0D\u662F absolute - ghostElement.style.left = '0'; - ghostElement.style.top = '0'; - ghostElement.style.pointerEvents = 'none'; // \u9632\u6B62\u5E72\u6270\u89E6\u6478\u4E8B\u4EF6 - ghostElement.style.zIndex = '9999'; - ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)'; - ghostElement.style.opacity = '0.8'; - ghostElement.style.boxSizing = 'border-box'; // \u786E\u4FDD\u5C3A\u5BF8\u8BA1\u7B97\u6B63\u786E - ghostElement.style.width = elementRect.width + 'px'; // \u56FA\u5B9A\u5BBD\u5EA6 - ghostElement.style.height = elementRect.height + 'px'; // \u56FA\u5B9A\u9AD8\u5EA6 - document.body.appendChild(ghostElement); - } else { - const ghostElement = document.getElementById('touch-drag-ghost'); - ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)'; - } - - // \u68C0\u67E5\u4E0E\u5176\u4ED6\u5143\u7D20\u7684\u78B0\u649E - const container = document.getElementById('selected-tags'); - const tags = Array.from(container.querySelectorAll('.selected-tag')).filter(tag => tag !== draggedElement); - let targetElement = null; - - for (const tag of tags) { - const rect = tag.getBoundingClientRect(); - if (touch.clientX >= rect.left && touch.clientX <= rect.right && - touch.clientY >= rect.top && touch.clientY <= rect.bottom) { - targetElement = tag; - break; - } - } - - // \u9AD8\u4EAE\u76EE\u6807\u5143\u7D20 - document.querySelectorAll('.selected-tag').forEach(tag => { - if (tag !== draggedElement) { - tag.classList.remove('drag-over'); - } - }); - - if (targetElement) { - targetElement.classList.add('drag-over'); - } - }); - } else { - // \u964D\u7EA7\u5904\u7406\uFF0C\u5982\u679C\u4E0D\u652F\u6301 requestAnimationFrame - const touch = e.touches[0]; - - // \u83B7\u53D6\u62D6\u52A8\u5143\u7D20\u7684\u5C3A\u5BF8 - const elementRect = draggedElement.getBoundingClientRect(); - - // \u521B\u5EFA\u4E00\u4E2A\u4E34\u65F6\u7684\u62D6\u52A8\u5143\u7D20\uFF0C\u800C\u4E0D\u662F\u79FB\u52A8\u539F\u59CB\u5143\u7D20 - if (!document.getElementById('touch-drag-ghost')) { - const ghostElement = draggedElement.cloneNode(true); - ghostElement.id = 'touch-drag-ghost'; - ghostElement.style.position = 'fixed'; // \u4F7F\u7528 fixed \u800C\u4E0D\u662F absolute - ghostElement.style.left = '0'; - ghostElement.style.top = '0'; - ghostElement.style.pointerEvents = 'none'; // \u9632\u6B62\u5E72\u6270\u89E6\u6478\u4E8B\u4EF6 - ghostElement.style.zIndex = '9999'; - ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)'; - ghostElement.style.opacity = '0.8'; - ghostElement.style.boxSizing = 'border-box'; // \u786E\u4FDD\u5C3A\u5BF8\u8BA1\u7B97\u6B63\u786E - ghostElement.style.width = elementRect.width + 'px'; // \u56FA\u5B9A\u5BBD\u5EA6 - ghostElement.style.height = elementRect.height + 'px'; // \u56FA\u5B9A\u9AD8\u5EA6 - document.body.appendChild(ghostElement); - } else { - const ghostElement = document.getElementById('touch-drag-ghost'); - ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)'; - } - - // \u68C0\u67E5\u4E0E\u5176\u4ED6\u5143\u7D20\u7684\u78B0\u649E - const container = document.getElementById('selected-tags'); - const tags = Array.from(container.querySelectorAll('.selected-tag')).filter(tag => tag !== draggedElement); - let targetElement = null; - - for (const tag of tags) { - const rect = tag.getBoundingClientRect(); - if (touch.clientX >= rect.left && touch.clientX <= rect.right && - touch.clientY >= rect.top && touch.clientY <= rect.bottom) { - targetElement = tag; - break; - } - } - - // \u9AD8\u4EAE\u76EE\u6807\u5143\u7D20 - document.querySelectorAll('.selected-tag').forEach(tag => { - if (tag !== draggedElement) { - tag.classList.remove('drag-over'); - } - }); - - if (targetElement) { - targetElement.classList.add('drag-over'); - } - } -} - -function handleTouchEnd(e) { - if (!touchDragging || !draggedElement) return; - - // \u9632\u6B62\u9ED8\u8BA4\u7684\u89E6\u6478\u884C\u4E3A - e.preventDefault(); - - // \u79FB\u9664\u4E34\u65F6\u62D6\u52A8\u5143\u7D20 - const ghostElement = document.getElementById('touch-drag-ghost'); - if (ghostElement) { - document.body.removeChild(ghostElement); - } - - // \u627E\u5230\u76EE\u6807\u5143\u7D20\uFF08\u5982\u679C\u6709\uFF09 - const touch = e.changedTouches[0]; - const targetElement = document.elementFromPoint(touch.clientX, touch.clientY); - - const container = document.getElementById('selected-tags'); - const targetTag = targetElement.closest('.selected-tag'); - - // \u5982\u679C\u76EE\u6807\u662F\u53E6\u4E00\u4E2A\u6807\u7B7E\uFF0C\u6267\u884C\u4EA4\u6362 - if (targetTag && targetTag !== draggedElement && container.contains(targetTag)) { - const allTags = Array.from(container.querySelectorAll('.selected-tag')); - const draggedIndex = allTags.indexOf(draggedElement); - const targetIndex = allTags.indexOf(targetTag); - - if (draggedIndex < targetIndex) { - targetTag.parentNode.insertBefore(draggedElement, targetTag.nextSibling); - } else { - targetTag.parentNode.insertBefore(draggedElement, targetTag); - } - } - - // \u91CD\u7F6E\u5143\u7D20\u6837\u5F0F - draggedElement.style.transform = ''; - draggedElement.style.opacity = ''; - draggedElement.style.zIndex = ''; - - // \u79FB\u9664\u62D6\u52A8\u7C7B - draggedElement.classList.remove('dragging'); - document.querySelectorAll('.selected-tag').forEach(tag => { - tag.classList.remove('drag-over'); - }); - - // \u91CD\u7F6E\u53D8\u91CF - touchDragging = false; - draggedElement = null; - - // \u79FB\u9664\u4E8B\u4EF6\u76D1\u542C\u5668 - document.removeEventListener('touchmove', handleTouchMove); - document.removeEventListener('touchend', handleTouchEnd); -} - -// \u663E\u793A\u52A0\u8F7D\u906E\u7F69 -function showLoading(text, detail) { - document.getElementById('loading-text').textContent = text; - document.getElementById('loading-detail').textContent = detail; - document.getElementById('loading-overlay').classList.add('active'); - document.getElementById('progress-container').classList.add('active'); - updateProgress(0); -} - -// \u9690\u85CF\u52A0\u8F7D\u906E\u7F69 -function hideLoading() { - document.getElementById('loading-overlay').classList.remove('active'); - setTimeout(() => { - document.getElementById('progress-container').classList.remove('active'); - updateProgress(0); - }, 300); -} - -// \u66F4\u65B0\u52A0\u8F7D\u6587\u672C -function updateLoadingText(text, detail) { - document.getElementById('loading-text').textContent = text; - document.getElementById('loading-detail').textContent = detail; -} - -// \u66F4\u65B0\u8FDB\u5EA6\u6761 -function updateProgress(percent) { - document.getElementById('progress-bar').style.width = percent + '%'; -} - -// \u6E32\u67D3\u73AF\u5883\u53D8\u91CF\u5217\u8868 -function renderEnvList() { - const list = document.getElementById('env-list'); - const items = envVariables[currentCategory] || []; - - if (items.length === 0) { - list.innerHTML = '

\u6682\u65E0\u914D\u7F6E\u9879

'; - return; - } - - list.innerHTML = items.map((item, index) => { - const typeLabel = item.type === 'boolean' ? '\u5E03\u5C14' : - item.type === 'number' ? '\u6570\u5B57' : - item.type === 'select' ? '\u5355\u9009' : - item.type === 'map' ? '\u6620\u5C04' : - item.type === 'multi-select' ? '\u591A\u9009' : '\u6587\u672C'; - const badgeClass = item.type === 'multi-select' ? 'multi' : ''; - - const escapedValue = escapeHtml(item.value); - - return \` -
-
- \${item.key}\${typeLabel} -
\${escapedValue}
-
\${item.description || '\u65E0\u63CF\u8FF0'}
-
-
- - -
-
- \`; - }).join(''); -} - -function openAddEnvModal() { - editingKey = null; - document.getElementById('modal-title').textContent = '\u6DFB\u52A0\u914D\u7F6E\u9879'; - document.getElementById('env-category').value = currentCategory; - document.getElementById('env-key').value = ''; - document.getElementById('env-description').value = ''; - document.getElementById('value-type').value = 'text'; - - document.getElementById('env-category').disabled = false; - document.getElementById('env-key').readOnly = false; - document.getElementById('value-type').disabled = false; - document.getElementById('env-description').readOnly = false; - - renderValueInput({ type: 'text', key: '', value: '', description: '' }); - document.getElementById('env-modal').classList.add('active'); -} - -// \u7F16\u8F91\u73AF\u5883\u53D8\u91CF -function editEnv(index, clickEvent) { - const item = envVariables[currentCategory][index]; - const editButton = clickEvent?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE - - // \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001 - const originalText = editButton ? editButton.innerHTML : ''; - if (editButton) { - editButton.innerHTML = ''; - editButton.disabled = true; - } - - editingKey = index; - document.getElementById('modal-title').textContent = '\u7F16\u8F91\u914D\u7F6E\u9879'; - document.getElementById('env-category').value = currentCategory; - document.getElementById('env-key').value = item.key; - document.getElementById('env-description').value = item.description || ''; - document.getElementById('value-type').value = item.type || 'text'; - - // \u8BBE\u7F6E\u5B57\u6BB5\u4E3A\u53EA\u8BFB\uFF08\u7F16\u8F91\u6A21\u5F0F\u4E0B\uFF09 - document.getElementById('env-category').disabled = true; - document.getElementById('env-key').readOnly = true; - document.getElementById('value-type').disabled = true; - document.getElementById('env-description').readOnly = true; - - // \u6E32\u67D3\u5BF9\u5E94\u7684\u503C\u8F93\u5165\u63A7\u4EF6 - renderValueInput(item); - - document.getElementById('env-modal').classList.add('active'); - - // \u6062\u590D\u6309\u94AE\u72B6\u6001\uFF08\u5728\u5B9E\u9645\u573A\u666F\u4E2D\uFF0C\u8FD9\u4F1A\u5728\u7F16\u8F91\u5B8C\u6210\u540E\u53D1\u751F\uFF0C\u6BD4\u5982\u5728\u4FDD\u5B58\u540E\u6216\u53D6\u6D88\u540E\uFF09 - // \u4E3A\u4E86\u6F14\u793A\uFF0C\u8FD9\u91CC\u7ACB\u5373\u6062\u590D\u6309\u94AE\u72B6\u6001\uFF0C\u5B9E\u9645\u4F7F\u7528\u4E2D\u5E94\u8BE5\u5728\u9002\u5F53\u7684\u5730\u65B9\u6062\u590D\u6309\u94AE\u72B6\u6001 - if (editButton) { - editButton.innerHTML = originalText; - editButton.disabled = false; - } -} - -// \u5220\u9664\u73AF\u5883\u53D8\u91CF -function deleteEnv(index, clickEvent) { - customConfirm('\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u914D\u7F6E\u9879\u5417?', '\u5220\u9664\u786E\u8BA4').then(confirmed => { - if (confirmed) { - const item = envVariables[currentCategory][index]; - const key = item.key; - const deleteButton = clickEvent?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE - - // \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001 - const originalText = deleteButton ? deleteButton.innerHTML : ''; - if (deleteButton) { - deleteButton.innerHTML = ''; - deleteButton.disabled = true; - } - - // \u8C03\u7528API\u5220\u9664\u73AF\u5883\u53D8\u91CF - fetch(buildApiUrl('/api/env/del'), { - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({ key }) - }) - .then(response => response.json()) - .then(result => { - if (result.success) { - // \u4ECE\u672C\u5730\u6570\u636E\u4E2D\u5220\u9664 - envVariables[currentCategory].splice(index, 1); - renderEnvList(); - renderPreview(); - addLog(\`\u5220\u9664\u914D\u7F6E\u9879: \${key}\`, 'warn'); - } else { - addLog(\`\u5220\u9664\u914D\u7F6E\u9879\u5931\u8D25: \${result.message}\`, 'error'); - addLog(\`\u274C \u5220\u9664\u914D\u7F6E\u9879\u5931\u8D25: \${result.message}\`, 'error'); - } - }) - .catch(error => { - addLog(\`\u5220\u9664\u914D\u7F6E\u9879\u5931\u8D25: \${error.message}\`, 'error'); - addLog(\`\u274C \u5220\u9664\u914D\u7F6E\u9879\u5931\u8D25: \${error.message}\`, 'error'); - }) - .finally(() => { - // \u6062\u590D\u6309\u94AE\u72B6\u6001 - if (deleteButton) { - deleteButton.innerHTML = originalText; - deleteButton.disabled = false; - } - }); - } - }); -} - -// \u8868\u5355\u63D0\u4EA4 -document.getElementById('env-form').addEventListener('submit', async function(e) { - e.preventDefault(); - - const category = document.getElementById('env-category').value; - const key = document.getElementById('env-key').value.trim(); - const description = document.getElementById('env-description').value.trim(); - const type = document.getElementById('value-type').value; - const existingItem = editingKey !== null && envVariables[currentCategory] - ? envVariables[currentCategory][editingKey] - : null; - - // \u6839\u636E\u7C7B\u578B\u83B7\u53D6\u503C - let value, itemData; - - if (type === 'boolean') { - value = document.getElementById('bool-value').checked ? 'true' : 'false'; - itemData = { key, value, description, type }; - } else if (type === 'number') { - value = document.getElementById('num-value').textContent; - const min = parseInt(document.getElementById('num-slider').min); - const max = parseInt(document.getElementById('num-slider').max); - itemData = { key, value, description, type, min, max }; - } else if (type === 'select') { - const selected = document.querySelector('.tag-option.selected'); - value = selected ? selected.dataset.value : ''; - const options = Array.from(document.querySelectorAll('.tag-option')).map(el => el.dataset.value); - itemData = { key, value, description, type, options }; - } else if (type === 'multi-select') { - // \u5982\u679C\u5F00\u542F\u4E86\u5408\u5E76\u6A21\u5F0F\uFF0C\u4E14\u6682\u5B58\u533A\u8FD8\u6709\u5185\u5BB9\uFF0C\u81EA\u52A8\u5C06\u5176\u89C6\u4E3A\u786E\u8BA4\u6DFB\u52A0 - if (isMergeMode && stagingTags && stagingTags.length > 0) { - confirmMergeGroup(); - } - - const selectedTags = Array.from(document.querySelectorAll('.selected-tag')) - .map(el => el.dataset.value); - value = selectedTags.join(','); - const options = Array.from(document.querySelectorAll('.available-tag')).map(el => el.dataset.value); - itemData = { key, value, description, type, options }; - } else if (type === 'map') { - // \u83B7\u53D6\u6620\u5C04\u8868\u503C - const mapItems = document.querySelectorAll('#map-container .map-item'); - const pairs = []; - mapItems.forEach(item => { - const leftInput = item.querySelector('.map-input-left'); - const rightInput = item.querySelector('.map-input-right'); - const leftValue = leftInput.value.trim(); - const rightValue = rightInput.value.trim(); - if (leftValue && rightValue) { - pairs.push(leftValue + '->' + rightValue); - } - }); - value = pairs.join(';'); - itemData = { key, value, description, type }; - } else { - const textValueEl = document.getElementById('text-value'); - value = textValueEl ? textValueEl.value.trim() : ''; - itemData = { key, value, description, type }; - } - - // \u8C03\u7528API\u66F4\u65B0\u73AF\u5883\u53D8\u91CF - \u5148\u5C1D\u8BD5set\u63A5\u53E3\uFF0C\u5931\u8D25\u5219\u8C03\u7528add\u63A5\u53E3 - try { - // \u9996\u5148\u5C1D\u8BD5\u4F7F\u7528set\u63A5\u53E3\u66F4\u65B0 - let response = await fetch(buildApiUrl('/api/env/set'), { - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({ key, value }) - }); - - let result = await response.json(); - - if (!result.success) { - // \u5982\u679Cset\u63A5\u53E3\u5931\u8D25\uFF0C\u5C1D\u8BD5\u4F7F\u7528add\u63A5\u53E3 - response = await fetch(buildApiUrl('/api/env/add'), { - method: 'POST', - headers: { - 'Content-Type': 'application/json' - }, - body: JSON.stringify({ key, value }) - }); - - result = await response.json(); - } - - if (result.success) { - // \u66F4\u65B0\u672C\u5730\u6570\u636E - if (!envVariables[category]) { - envVariables[category] = []; - } - - if (editingKey !== null) { - envVariables[currentCategory][editingKey] = { - ...(existingItem || {}), - ...itemData - }; - addLog(\`\u66F4\u65B0\u914D\u7F6E\u9879: \${key} = \${value}\`, 'success'); - } else { - envVariables[category].push(itemData); - addLog(\`\u6DFB\u52A0\u914D\u7F6E\u9879: \${key} = \${value}\`, 'success'); - } - - if (category !== currentCategory) { - currentCategory = category; - document.querySelectorAll('.category-btn').forEach((btn, i) => { - btn.classList.toggle('active', ['api', 'source', 'match', 'danmu', 'cache', 'system'][i] === category); - }); - } - - renderEnvList(); - renderPreview(); - closeModal(); - } else { - addLog(\`\u64CD\u4F5C\u5931\u8D25: \${result.message}\`, 'error'); - addLog(\`\u274C \u64CD\u4F5C\u5931\u8D25: \${result.message}\`, 'error'); - customAlert(result.message + '\uFF0C\u8BF7\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u73AF\u5883\u53D8\u91CF\u914D\u7F6E\u662F\u5426\u6B63\u786E'); - } - } catch (error) { - addLog(\`\u66F4\u65B0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: \${error.message}\`, 'error'); - addLog(\`\u274C \u66F4\u65B0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: \${error.message}\`, 'error'); - customAlert(error.message + '\uFF0C\u8BF7\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u73AF\u5883\u53D8\u91CF\u914D\u7F6E\u662F\u5426\u6B63\u786E'); - } -}); - -// \u6DFB\u52A0\u6620\u5C04\u9879 -function addMapItem() { - const container = document.getElementById('map-container'); - const template = document.querySelector('.map-item-template'); - const newItem = template.cloneNode(true); - newItem.style.display = 'flex'; - newItem.classList.remove('map-item-template'); - newItem.classList.add('map-item'); - const index = container.querySelectorAll('.map-item').length; - newItem.setAttribute('data-index', index); - container.appendChild(newItem); -} - -// \u5220\u9664\u6620\u5C04\u9879 -function removeMapItem(button) { - const item = button.closest('.map-item'); - if (item) { - item.remove(); - } -} -/* ======================================== - Bilibili Cookie \u626B\u7801\u767B\u5F55\u529F\u80FD - ======================================== */ -let biliQRCheckInterval = null; -let biliBiliQRKey = null; - -async function startBilibiliQRLogin() { - // \u521B\u5EFA\u626B\u7801\u767B\u5F55\u6A21\u6001\u6846 - if (!document.getElementById('bili-qr-modal')) { - const modalHTML = \` - - \`; - document.body.insertAdjacentHTML('beforeend', modalHTML); - } - - const modal = document.getElementById('bili-qr-modal'); - const qrCode = document.getElementById('bili-qr-code'); - const qrLoading = document.getElementById('bili-qr-loading'); - const qrStatus = document.getElementById('bili-qr-status'); - - modal.classList.add('active'); - qrCode.style.display = 'none'; - qrCode.innerHTML = ''; - qrLoading.style.display = 'block'; - qrStatus.textContent = '\u6B63\u5728\u751F\u6210\u4E8C\u7EF4\u7801...'; - - if (biliQRCheckInterval) { - clearInterval(biliQRCheckInterval); - } - - try { - const response = await fetch(buildApiUrl('/api/cookie/qr/generate', true), { - method: 'POST' - }); - - const result = await response.json(); - - if (result.success && result.data) { - biliBiliQRKey = result.data.qrcode_key; - const qrUrl = result.data.url; - - qrCode.innerHTML = '\u4E8C\u7EF4\u7801'; - qrCode.style.display = 'block'; - qrLoading.style.display = 'none'; - qrStatus.textContent = '\u8BF7\u4F7F\u7528 Bilibili APP \u626B\u63CF'; - - startBiliQRCheck(); - } else { - throw new Error(result.message || '\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25'); - } - } catch (error) { - qrLoading.style.display = 'none'; - qrStatus.textContent = '\u274C ' + error.message; - } -} - -function startBiliQRCheck() { - if (!biliBiliQRKey) return; - - const qrStatus = document.getElementById('bili-qr-status'); - - biliQRCheckInterval = setInterval(async () => { - try { - const response = await fetch(buildApiUrl('/api/cookie/qr/check', true), { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ qrcode_key: biliBiliQRKey }) - }); - - const result = await response.json(); - - if (result.success && result.data) { - const code = result.data.code; - - switch (code) { - case 86101: - qrStatus.textContent = '\u23F3 \u7B49\u5F85\u626B\u7801...'; - break; - case 86090: - qrStatus.textContent = '\u{1F4F1} \u5DF2\u626B\u7801\uFF0C\u8BF7\u786E\u8BA4'; - break; - case 86038: - qrStatus.textContent = '\u274C \u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F'; - clearInterval(biliQRCheckInterval); - break; - case 0: - qrStatus.textContent = '\u2705 \u767B\u5F55\u6210\u529F\uFF01'; - clearInterval(biliQRCheckInterval); - - if (result.data.cookie) { - fillBilibiliCookie(result.data.cookie); - } - - setTimeout(() => { - closeBiliQRModal(); - }, 1000); - break; - } - } - } catch (error) { - console.error('\u68C0\u67E5\u626B\u7801\u72B6\u6001\u5931\u8D25:', error); - } - }, 2000); -} - -function fillBilibiliCookie(cookie) { - const textInput = document.getElementById('text-value'); - if (textInput) { - textInput.value = cookie; - textInput.dispatchEvent(new Event('input', { bubbles: true })); - - textInput.style.borderColor = 'var(--success-color, #28a745)'; - setTimeout(() => { - textInput.style.borderColor = ''; - // \u586B\u5165\u540E\u89E6\u53D1\u68C0\u6D4B\u4E00\u6B21\uFF08\u4F1A\u63D0\u793A\u7528\u6237\u4FDD\u5B58\uFF09 - autoCheckBilibiliCookieStatus(); - }, 2000); - } -} - -function closeBiliQRModal() { - const modal = document.getElementById('bili-qr-modal'); - if (modal) { - modal.classList.remove('active'); - } - - if (biliQRCheckInterval) { - clearInterval(biliQRCheckInterval); - } -} - -async function autoCheckBilibiliCookieStatus() { - const textInput = document.getElementById('text-value'); - const statusEl = document.getElementById('bili-cookie-status'); - - if (!textInput || !statusEl) return; - - const cookie = textInput.value.trim(); - - // \u5982\u679C\u8F93\u5165\u6846\u4E3A\u7A7A,\u63D0\u793A\u672A\u914D\u7F6E - if (!cookie) { - statusEl.innerHTML = '\u26A0\uFE0F\u672A\u914D\u7F6E'; - return; - } - - statusEl.innerHTML = '\u{1F50D}\u68C0\u6D4B\u4E2D...'; - - // \u8131\u654F\u540E\u7684 *...* \u65E0\u6CD5\u76F4\u63A5\u6821\u9A8C\uFF0C\u540E\u7AEF\u4F1A\u81EA\u52A8\u6539\u4E3A\u6821\u9A8C\u201C\u5DF2\u4FDD\u5B58\u201D\u7684 Cookie - const isMasked = /^[*]+$/.test(cookie); - const payload = isMasked ? {} : { cookie }; - - try { - const response = await fetch(buildApiUrl('/api/cookie/verify', true), { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify(payload) - }); - - const result = await response.json(); - - if (result && result.success && result.data) { - if (result.data.isValid) { - const uname = result.data.uname || '\u5DF2\u767B\u5F55'; - const expiresAt = result.data.expiresAt; - const now = Math.floor(Date.now() / 1000); - - let leftText = ''; - if (typeof expiresAt === 'number' && expiresAt > now) { - const daysLeft = Math.ceil((expiresAt - now) / (24 * 60 * 60)); - leftText = \` (\u5269\u4F59 \${daysLeft} \u5929)\`; - } - - // \u7528\u6237\u624B\u52A8\u8F93\u5165/\u626B\u7801\u586B\u5165\u7684 Cookie \u2192 \u63D0\u793A\u4FDD\u5B58 - if (!isMasked) { - statusEl.innerHTML = \`\u2705\${uname}\${leftText} \xB7 \u8BF7\u70B9\u51FB\u4FDD\u5B58\u6309\u94AE\uFF08Vercel\u7B49\u5E73\u53F0\u9700\u91CD\u65B0\u90E8\u7F72\u540E\u751F\u6548\uFF09\`; - } else { - // \u8131\u654F\u663E\u793A\u65F6\u53EA\u5C55\u793A\u5F53\u524D\u5DF2\u4FDD\u5B58 Cookie \u7684\u72B6\u6001 - statusEl.innerHTML = \`\u2705\${uname}\${leftText}\`; - } - } else { - const err = result.data.error || 'Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548'; - statusEl.innerHTML = \`\u274C\${err}\uFF0C\u8BF7\u91CD\u65B0\u626B\u7801\u767B\u5F55\u5E76\u4FDD\u5B58\`; - } - } else { - statusEl.innerHTML = '\u26A0\uFE0F\u68C0\u6D4B\u5931\u8D25'; - } - } catch (error) { - statusEl.innerHTML = '\u26A0\uFE0F\u68C0\u6D4B\u5931\u8D25'; - } -} -// \u663E\u793A Bilibili Cookie \u4FDD\u5B58\u63D0\u793A -function showBilibiliCookieSaveHint(text) { - const statusEl = document.getElementById('bili-cookie-status'); - if (!statusEl) return; - - const msg = text || '\u8BF7\u70B9\u51FB\u4FDD\u5B58\u6309\u94AE,Vercel\u7B49\u5E73\u53F0\u9700\u91CD\u65B0\u90E8\u7F72\u540E\u751F\u6548'; - statusEl.innerHTML = \`\u{1F4BE}\${msg}\`; -} - -/* ======================================== - AI API Key \u8FDE\u901A\u6027\u6D4B\u8BD5\u529F\u80FD - ======================================== */ -async function verifyAiConnection() { - const statusEl = document.getElementById('ai-apikey-status'); - const btn = document.getElementById('ai-verify-btn'); - const textInput = document.getElementById('text-value'); - - if (!statusEl || !textInput) return; - - const apiKey = textInput.value.trim(); - - // \u5982\u679C\u8F93\u5165\u6846\u4E3A\u7A7A\uFF0C\u63D0\u793A\u672A\u914D\u7F6E - if (!apiKey) { - statusEl.innerHTML = '\u26A0\uFE0F\u8BF7\u5148\u8F93\u5165 API Key'; - return; - } - - // \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001 - const originalText = btn.innerHTML; - btn.innerHTML = ''; - btn.disabled = true; - - statusEl.innerHTML = '\u{1F50D}\u6B63\u5728\u6D4B\u8BD5\u8FDE\u901A\u6027...'; - - // \u68C0\u67E5\u662F\u5426\u4E3A\u8131\u654F\u540E\u7684 *...* - const isMasked = /^[*]+$/.test(apiKey); - - try { - const response = await fetch(buildApiUrl('/api/ai/verify', true), { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify(isMasked ? {} : { 'aiApiKey': apiKey }) - }); - - const result = await response.json(); - - if (result.ok) { - statusEl.innerHTML = '\u2705' + (result.message || 'AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F') + ''; - statusEl.style.color = 'var(--success-color, #28a745)'; - } else { - statusEl.innerHTML = '\u274C' + (result.message || '\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25') + ''; - statusEl.style.color = 'var(--danger-color, #dc3545)'; - } - } catch (error) { - statusEl.innerHTML = '\u26A0\uFE0F\u6D4B\u8BD5\u8BF7\u6C42\u5931\u8D25: ' + error.message + ''; - statusEl.style.color = 'var(--warning-color, #ffc107)'; - } finally { - // \u6062\u590D\u6309\u94AE\u72B6\u6001 - btn.innerHTML = originalText; - btn.disabled = false; - } -} - -/* ======================================== - \u6700\u8FD1\u6570\u636E\u4E0Eanimes\u7F13\u5B58\u9762\u677F\u529F\u80FD - ======================================== */ - -// \u7EDF\u4E00\u5207\u6362\u5361\u7247\u5185\u7684\u6298\u53E0\u533A\u57DF -function toggleCardSection(btnEl, targetSelector, openText, closeText) { - if (!btnEl) return; - const card = btnEl.closest('.anime-cache-card'); - if (!card) return; - const container = card.querySelector(targetSelector); - if (!container) return; - - const isHidden = window.getComputedStyle(container).display === 'none'; - - if (isHidden) { - container.style.display = 'flex'; - btnEl.innerHTML = closeText; - btnEl.classList.add('active'); - } else { - container.style.display = 'none'; - btnEl.innerHTML = openText; - btnEl.classList.remove('active'); - } -} - -// \u5207\u6362\u5B50\u8282\u70B9\u5185\u7684\u6620\u5C04\u8BE6\u60C5 -function toggleMapping(btnEl) { - if (!btnEl) return; - const parentItem = btnEl.closest('.anime-cache-child-item'); - if (!parentItem) return; - const container = parentItem.querySelector('.child-mapping-container'); - if (!container) return; - - const isHidden = window.getComputedStyle(container).display === 'none'; - if (isHidden) { - container.style.display = 'flex'; - btnEl.innerHTML = '\u{1F4CA} \u6536\u8D77\u6620\u5C04\u8BE6\u60C5'; - btnEl.classList.add('active'); - } else { - container.style.display = 'none'; - btnEl.innerHTML = '\u{1F4CA} \u5C55\u5F00\u6620\u5C04\u8BE6\u60C5'; - btnEl.classList.remove('active'); - } -} - -// \u5FEB\u6377\u6570\u636E\u9762\u677F\u4E1A\u52A1\u903B\u8F91 -async function fetchAndShowRecentData() { - const panel = document.getElementById('recent-data-panel'); - const listContainer = document.getElementById('recent-data-list'); - - if (!panel || !listContainer) return; - - if (window.getComputedStyle(panel).display !== 'none') { - panel.style.display = 'none'; - return; - } - - panel.style.display = 'block'; - listContainer.innerHTML = ' \u6570\u636E\u52A0\u8F7D\u4E2D...'; - - try { - const response = await fetch(buildApiUrl('/api/cache/animes', true)); - const result = await response.json(); - - if (result.success && result.data && result.data.length > 0) { - renderAnimeCachePanel(result.data, listContainer); - } else { - listContainer.innerHTML = '
\u7F13\u5B58\u4E2D\u6682\u65E0\u756A\u5267\u6570\u636E\uFF0C\u8BF7\u5148\u901A\u8FC7\u5BA2\u6237\u7AEF\u8BF7\u6C42\u5F39\u5E55\u63A5\u53E3\u4EE5\u751F\u6210\u7F13\u5B58\u3002
'; - } - } catch (error) { - listContainer.innerHTML = \`
\u8BF7\u6C42\u5931\u8D25: \${error.message}
\`; - } -} - -// \u6E32\u67D3animes\u7F13\u5B58\u9762\u677F (\u542B\u96C6\u6570\u89E3\u6790\u4E0E\u6620\u5C04\u8BE6\u60C5) -function renderAnimeCachePanel(data, listContainer) { - const keyInput = document.getElementById('env-key'); - - if (!listContainer || !keyInput) return; - - const currentKey = keyInput.value; - - // \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u751F\u6210\u64CD\u4F5C\u6309\u94AE - const generateButtons = (title, source) => { - if (currentKey === 'CUSTOM_MERGE_RULES') { - return \` - - - \`; - } else if (currentKey === 'DANMU_OFFSET') { - return \` - - \`; - } - return ''; - }; - - // \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u6E05\u6D17\u6807\u9898 - const cleanTitleStr = (rawTitle) => rawTitle.replace(/\\s*from\\s+.*$/i, '').trim().replace(/'/g, '''); - - let html = '
'; - - data.forEach(item => { - const cleanTitle = cleanTitleStr(item.animeTitle); - const coverStyle = item.imageUrl ? \`background-image: url('\${item.imageUrl}');\` : ''; - - // 1. \u6784\u5EFA\u5408\u5E76\u5B50\u6E90\u6A21\u5757 - let childrenHtml = ''; - let childrenCount = 0; - if (item.mergedChildren && item.mergedChildren.length > 0) { - childrenCount = item.mergedChildren.length; - const childItems = item.mergedChildren.map(child => { - const childCleanTitle = cleanTitleStr(child.animeTitle); - - const childCoverStyle = child.imageUrl ? \`background-image: url('\${child.imageUrl}');\` : ''; - - // \u89E3\u6790\u6620\u5C04\u6570\u636E\u5E76\u6309\u5339\u914D\u72B6\u6001\u6392\u5E8F - let mappingHtml = ''; - if (item.links && item.links.length > 0) { - const parsedRows = []; - - item.links.forEach((link, idx) => { - const urlStr = String(link.url || ''); - const hasMainMatch = urlStr.includes(item.source + ':') || !urlStr.includes(':'); - const hasChildMatch = urlStr.includes(child.source + ':'); - - if (!hasMainMatch && !hasChildMatch) return; - - let mainSide = '(\u4E3B\u6E90\u8D8A\u754C)'; - if (hasMainMatch) { - const cleanMainEpTitle = (link.title || '\u672A\u77E5\u5267\u96C6').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"'); - mainSide = \`\u3010\${item.source}\u3011\${cleanMainEpTitle}\`; - } - - let childSide = '(\u526F\u6E90\u7F3A\u5931)'; - let childNum = NaN; - - if (hasChildMatch) { - const regex = new RegExp(child.source + ':([^$]+)'); - const match = urlStr.match(regex); - let childTitleStr = '(\u6E90ID\u672A\u77E5)'; - - if (match) { - const childId = match[1]; - childTitleStr = \`(\u6E90ID: \${childId})\`; - - if (child.links && child.links.length > 0) { - const childLink = child.links.find(l => String(l.url) === String(childId)); - if (childLink && childLink.title) { - childTitleStr = childLink.title.replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"'); - } - } - } else { - childTitleStr = (link.title || '').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"'); - } - childSide = \`\u3010\${child.source}\u3011\${childTitleStr}\`; - - const numMatch = childTitleStr.match(/\\d+/); - if (numMatch) { - childNum = parseInt(numMatch[0], 10); - } - } - - let rowHtml = ''; - if (hasMainMatch && hasChildMatch) { - rowHtml = \`
\u2713 \u5339\u914D \${mainSide} \u2194 \${childSide}
\`; - } else { - rowHtml = \`
\u2717 \u843D\u5355 \${mainSide} \u2194 \${childSide}
\`; - } - - parsedRows.push({ - originalIndex: idx, - hasChildMatch: hasChildMatch, - childNum: childNum, - html: rowHtml - }); - }); - - const matchedRows = parsedRows.filter(r => r.hasChildMatch).sort((a, b) => { - if (!isNaN(a.childNum) && !isNaN(b.childNum)) { - return a.childNum - b.childNum; - } - return a.originalIndex - b.originalIndex; - }); - - const lonelyRows = parsedRows.filter(r => !r.hasChildMatch).sort((a, b) => a.originalIndex - b.originalIndex); - - const finalRows = [...matchedRows, ...lonelyRows]; - const mappingRowsHtml = finalRows.map(r => r.html).join(''); - - if (mappingRowsHtml) { - mappingHtml = \` -
\u{1F4CA} \u5C55\u5F00\u6620\u5C04\u8BE6\u60C5
-
- \${mappingRowsHtml} -
- \`; - } - } - - return \` -
-
-
-
-
\${childCleanTitle}
-
[\${child.source}] (\${child.episodes}\u96C6)
-
-
- \${generateButtons(childCleanTitle, child.source)} -
-
- \${mappingHtml} -
- \`; - }).join(''); - - childrenHtml = \` -
- \${childItems} -
- \`; - } - - // 2. \u6784\u5EFA\u5267\u96C6\u53C2\u8003\u5217\u8868\u6A21\u5757 - let episodesHtml = ''; - let episodesCount = 0; - if (item.links && item.links.length > 0) { - episodesCount = item.links.length; - const epItems = item.links.map(link => { - const safeTitle = link.title ? link.title.replace(/'/g, ''').replace(/"/g, '"') : '\u672A\u77E5\u5267\u96C6'; - return \` -
-
-
-
\${safeTitle}
-
-
-
- \`; - }).join(''); - - episodesHtml = \` -
- \${epItems} -
- \`; - } - - // 3. \u6784\u5EFA\u5361\u7247\u5E95\u90E8\u4E13\u5C5E\u5207\u6362\u680F (Tab Bar) - let footerHtml = ''; - if (childrenCount > 0 || episodesCount > 0) { - let badges = ''; - if (episodesCount > 0) { - badges += \`
\u{1F4FA} \${episodesCount} \u4E2A\u5267\u96C6
\`; - } - if (childrenCount > 0) { - badges += \`
\u{1F517} \${childrenCount} \u4E2A\u88AB\u5408\u5E76\u6E90
\`; - } - footerHtml = \`\`; - } - - // 4. \u7EC4\u88C5\u5B8C\u6574\u5361\u7247 - html += \` -
-
-
-
-
\${cleanTitle}
-
[\${item.source}] (\${item.episodes}\u96C6)
-
-
- \${generateButtons(cleanTitle, item.source)} -
-
- \${footerHtml} - \${childrenHtml} - \${episodesHtml} -
- \`; - }); - - html += '
'; - listContainer.innerHTML = html; -} - -/* ======================================== - \u8868\u5355\u586B\u5145\u5FEB\u6377\u64CD\u4F5C\u529F\u80FD - ======================================== */ - -// \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u8F93\u5165\u6846\u89C6\u89C9\u53CD\u9988\u7EDF\u4E00\u5904\u7406 -function applyInputFeedback(inputEl) { - if (!inputEl) return; - const oldBorder = inputEl.style.borderColor; - inputEl.style.borderColor = '#28a745'; - setTimeout(() => inputEl.style.borderColor = oldBorder, 800); - inputEl.focus(); -} - -// \u8868\u5355\u586B\u5145\u903B\u8F91\uFF1A\u5408\u5E76\u6620\u5C04\u8868 -function fillMergeEntity(type, title, source) { - const panel = document.getElementById('merge-rule-panel'); - if (panel && window.getComputedStyle(panel).display === 'none') { - toggleMergeRulePanel(); - } - - const inputId = type === 'sec' ? 'merge-sec-entity' : 'merge-prim-entity'; - const inputEl = document.getElementById(inputId); - - if (inputEl) { - inputEl.value = \`\${title}@\${source}\`; - applyInputFeedback(inputEl); - setMergeFocus(type); - } -} - -// \u8868\u5355\u586B\u5145\u903B\u8F91\uFF1A\u5F39\u5E55\u504F\u79FB -function fillOffsetEntity(title, source) { - const panel = document.getElementById('offset-rule-panel'); - if (panel && window.getComputedStyle(panel).display === 'none') { - toggleOffsetRulePanel(); - } - - // \u89C6\u56FE\u5C42\u6570\u636E\u6E05\u6D17\uFF1A\u53BB\u9664\u5E74\u4EFD\u548C\u7C7B\u578B\u540E\u7F00 - const cleanTitle = title - .replace(/[\\u200B-\\u200F\\uFEFF]/g, '') - .replace(/\\s*[\uFF08(\u3014\\[]\\s*[0-9\uFF10-\uFF19]{4}\\s*\u5E74?\\s*[\uFF09)\u3015\\]]/g, '') - .replace(/(.+?)\\s*\u3010[^\u3011]+\u3011$/, '$1') - .trim(); - - const inputEl = document.getElementById('offset-anime'); - - if (inputEl) { - inputEl.value = cleanTitle; - - // \u57FA\u4E8E data-value \u5C5E\u6027\u5339\u914D\u5E76\u9009\u4E2D\u5BF9\u5E94\u6765\u6E90\u6807\u7B7E - const sourceTags = document.querySelectorAll('#offset-sources .offset-source-tag'); - if (sourceTags.length > 0) { - sourceTags.forEach(el => el.classList.remove('selected')); - const targetTag = Array.from(sourceTags).find(el => el.dataset.value === source); - if (targetTag) targetTag.classList.add('selected'); - } - - applyInputFeedback(inputEl); - } -} -`});var DRt,PRt=ae(()=>{Qt();dRt();hRt();mRt();_Rt();ERt();vRt();TRt();IRt();CRt();wRt();ORt();DRt=` - - - - - - LogVar\u5F39\u5E55API - - - - - - - - - -
- -
-
-
- -
-
-
- -

LogVar\u5F39\u5E55API

-
-
- \u5F53\u524D\u7248\u672C: v${F.version} - - \u{1F389} \u6700\u65B0\u7248\u672C: \u52A0\u8F7D\u4E2D... - - - API\u7AEF\u70B9: \u52A0\u8F7D\u4E2D... - -
-
- -
- -
- -
-

\u914D\u7F6E\u9884\u89C8

- - - -

\u5F53\u524D\u751F\u6548\u7684\u73AF\u5883\u53D8\u91CF\u914D\u7F6E

-
-
- - -
-

\u65E5\u5FD7\u67E5\u770B

-
-
- - -
- \u5B9E\u65F6\u65E5\u5FD7\u76D1\u63A7 -
-
-
- - -
-

\u63A5\u53E3\u8C03\u8BD5

-
- - -
- -
-
-
- - -
-
- - -
- -
-
- - -
- -
-

\u6A21\u62DF\u64AD\u653E\u5668\u81EA\u52A8\u5339\u914D\u6D41\u7A0B\uFF1A\u8F93\u5165\u6587\u4EF6\u540D \u2192 \u5339\u914D\u5267\u96C6 \u2192 \u83B7\u53D6\u5F39\u5E55

-
- -
- - -
-
-
- -
-

\u6A21\u62DF\u64AD\u653E\u5668\u624B\u52A8\u641C\u7D22\u6D41\u7A0B\uFF1A\u641C\u7D22\u52A8\u6F2B \u2192 \u9009\u62E9\u756A\u5267 \u2192 \u9009\u62E9\u5267\u96C6 \u2192 \u83B7\u53D6\u5F39\u5E55

-
- -
- - -
-
- - -
- - -
-
- - -
-

\u63A8\u9001\u5F39\u5E55

-

\u652F\u6301OK\u5F71\u89C6\u7B49\u64AD\u653E\u5668\uFF0C\u4E24\u7AEF\u9700\u8981\u5728\u540C\u4E00\u5C40\u57DF\u7F51\u6216\u4F7F\u7528\u516C\u7F51ip\uFF0C\u63A8\u9001\u5730\u5740\u683C\u5F0F\u5982 http://127.0.0.1:9978/action?do=refresh&type=danmaku&path=

-
-
- - -
-
- -
- - -
-
-
- - -
- - -
-

\u8BF7\u6C42\u8BB0\u5F55

-
-
- - -
- \u4E91\u670D\u52A1\u90E8\u7F72\u9700\u8981\u914D\u7F6Eredis -
-
-
- - -
-
-
-

\u73AF\u5883\u53D8\u91CF\u914D\u7F6E

-

vercel/netlify/edgeone\u5E73\u53F0\u4FEE\u6539\u53D8\u91CF\u540E\u9700\u8981\u91CD\u65B0\u90E8\u7F72

-
-
- - -
- - - - - - -
- -
- - - - - - -
- -
-
-
-
- - -
-
-
-
\u6B63\u5728\u5904\u7406...
-
\u8BF7\u7A0D\u5019
-
-
- - - - - -
- - - - -`});var Gc,rT=ae(()=>{Qt();jt();Gc=class{constructor(){}updateLocalEnv(t,r){return typeof F.env<"u"?F.env[t]=r:typeof process<"u"&&(process.env[t]=r),F.reInit(),R("info",`[system] [Server] \u2713 Environment variable updated successfully: ${t}`),!0}delLocalEnv(t){return typeof F.env<"u"&&F.env[t]?delete F.env[t]:typeof process<"u"&&process.env?.[t]&&delete process.env[t],F.reInit(),R("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${t}`),!0}getAllEnv(){let t=F.originalEnvVars,r=F.envVarConfig,n={};for(let[s,i]of Object.entries(t)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(t){return this.getAllEnv()[t]}async setEnv(t,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(t,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(t){throw new Error("Method 'delEnv' must be implemented")}async checkParams(t,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(t,r,n){throw new Error("Method 'deploy' must be implemented")}}});var iH,LRt=ae(()=>{rT();Qt();jt();$r();iH=class extends Gc{API_URL="https://api.cloudflare.com";async _getAllEnvs(t,r,n){let s=`${this.API_URL}/client/v4/accounts/${t}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await Me(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(t,r,n){let s=t.findIndex(i=>i.name===r);return n==null?s!==-1&&t.splice(s,1):s!==-1?t[s].text=n:t.push({name:r,text:n,type:"plain_text"}),t}async setEnv(t,r){try{let n=await this._getAllEnvs(F.deployPlatformAccount,F.deployPlatformProject,F.deployPlatformToken);if(n===null){R("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${F.deployPlatformAccount}/workers/scripts/${F.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${F.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,t,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await A9(s,a,i),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){return await this.setEnv(t,null),this.delLocalEnv(t)}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return R("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var aH,MRt=ae(()=>{rT();Qt();jt();$r();aH=class extends Gc{API_URL="https://api.vercel.com";async _getAllEnvs(t,r){let n=`${this.API_URL}/v10/projects/${t}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await Me(n,s)).data.envs}async _getEevId(t){try{let n=(await this._getAllEnvs(F.deployPlatformProject,F.deployPlatformToken)).find(s=>s.key===t);return n||null}catch(r){R("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(t,r){let n=await this._getEevId(t);if(!n){R("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${F.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:t,value:r.toString(),target:n.target,type:n.type};return await A9(s,JSON.stringify(a),i),this.updateLocalEnv(t,r)}catch(s){R("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(t,r){try{let n=`${this.API_URL}/v10/projects/${F.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:t,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await jn(n,JSON.stringify(i),s),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(t){let r=await this._getEevId(t);if(!r){R("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${F.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}};return await CR(n,s),this.delLocalEnv(t)}catch(n){R("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let t=`${this.API_URL}/v6/deployments?projectId=${F.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${F.deployPlatformToken}`}},n=await Me(t,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:F.deployPlatformProject,deploymentId:s,target:"production"},c=await jn(i,JSON.stringify(o),a);return c?.data?.id?!0:(R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});var oH,kRt=ae(()=>{rT();Qt();jt();$r();oH=class extends Gc{API_URL="https://api.netlify.com";async _getAllEnvs(t,r,n){let s=`${this.API_URL}/api/v1/accounts/${t}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await Me(s,i)}async setEnv(t,r){try{let n=`${this.API_URL}/api/v1/accounts/${F.deployPlatformAccount}/env/${t}?site_id=${F.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:t,values:[{context:"all",value:r.toString()}]};return await kst(n,JSON.stringify(i),s),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){try{let n=`${this.API_URL}/api/v1/accounts/${F.deployPlatformAccount}/env?site_id=${F.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}};return await jn(n,JSON.stringify([{key:t,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(t){try{let r=`${this.API_URL}/api/v1/accounts/${F.deployPlatformAccount}/env/${t}?site_id=${F.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}};return await CR(r,n),this.delLocalEnv(t)}catch(r){R("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let t=`${this.API_URL}/api/v1/sites/${F.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},s=await jn(t,JSON.stringify({}),r);return s?.data?.id?!0:(R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});var cH,BRt=ae(()=>{rT();Qt();jt();$r();cH=class extends Gc{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(t,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}};return await jn(n,JSON.stringify(r),s)}async _getAllEnvs(t,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:t},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(t,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:F.deployPlatformProject,EnvVars:[{Key:t,Value:r.toString()}]};return await this._httpPost(F.deployPlatformToken,n),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:F.deployPlatformProject,EnvVars:[t]};return await this._httpPost(F.deployPlatformToken,r),this.delLocalEnv(t)}catch(r){R("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let t={Action:"CreatePagesDeployment",ProjectId:F.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(F.deployPlatformToken,t);return r?.data?.Code!==0?(R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});var uH,URt=ae(()=>{rT();Qt();jt();$r();uH=class extends Gc{API_URL="https://huggingface.co";get repoId(){return`${F.deployPlatformAccount}/${F.deployPlatformProject}`}_getOptions(t=F.deployPlatformToken){return{headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}}}_getVariablesUrl(t){return`${this.API_URL}/api/spaces/${t}/variables`}async _getAllEnvs(t,r,n){let s=`${t}/${r}`,i=this._getVariablesUrl(s);return(await Me(i,this._getOptions(n)))?.data}async setEnv(t,r){try{let n=this._getVariablesUrl(this.repoId),s={key:t,value:r.toString()};return await jn(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){try{let r=this._getVariablesUrl(this.repoId);return await CR(r,{...this._getOptions(),body:JSON.stringify({key:t})}),this.delLocalEnv(t)}catch(r){R("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let t=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await jn(t,void 0,this._getOptions()),!0}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});function dQr(){let e=[globalThis.__filename,typeof process<"u"&&Array.isArray(process.argv)?process.argv[1]:""].filter(r=>typeof r=="string"&&r&&r!=="[stdin]");for(let r of e){let n=r.replace(/\\/g,"/"),s="/vendor/danmu_api/",i=n.lastIndexOf(s);if(i!==-1)return r.slice(0,i+s.length-1)}return(typeof process<"u"&&typeof process.cwd=="function"?process.cwd():"")||"."}function jve(){let e=dQr(),t=e.replace(/\\/g,"/"),r="/vendor/danmu_api",n=t.lastIndexOf(r);return n!==-1?e.slice(0,n+r.length):nT.default.resolve(e||".","..","..")}function fQr(e){return e?nT.default.isAbsolute(e)?e:nT.default.resolve(jve(),e):""}function RC(){let e=process.env.DANMU_API_ENV_FILE||"";return e&&e.trim()?fQr(e.trim()):nT.default.join(jve(),"config",".env")}function Kve(){return nT.default.dirname(RC())}function FRt(){return nT.default.join(jve(),"config_example")}function lH(){let e=Kve();return Vve.default.existsSync(e)||Vve.default.mkdirSync(e,{recursive:!0}),e}var Vve,nT,Gve=ae(()=>{Vve=Ne(require("fs"),1),nT=Ne(require("path"),1)});var yg,Ek,$Rt=ae(()=>{rT();jt();yg=Ne(require("fs"),1);Gve();Ek=class extends Gc{updateConfigValue(t,r){let n=RC();lH(),yg.default.existsSync(n)||(yg.default.writeFileSync(n,"","utf8"),R("info",`[server] Created missing .env file: ${n}`));let s=yg.default.existsSync(n);if(!s)throw new Error(`.env not found: ${n}`);let i=!1;try{let a=r;if(t==="BLOCKED_WORDS"&&!a.startsWith('"')&&!a.endsWith('"')&&(a=`"${a}"`),s){let c=yg.default.readFileSync(n,"utf8").split(` -`),u=!1;for(let l=0;l{let c=o.trim();if(!c||c.startsWith("#"))return!0;let u=c.match(/^([^=]+)=/);return!(u&&u[1].trim()===t)});yg.default.writeFileSync(r,a.join(` -`),"utf8"),R("info",`[system] [Server] Deleted ${t} from .env`),n=!0}return n?this.delLocalEnv(t):!1}catch(s){R("error","[system] [Server] \u2717 Failed to delete environment variable:",s.message)}}}});var Qh,dH=ae(()=>{LRt();MRt();kRt();BRt();URt();$Rt();Qh=class{static async getHandler(t){switch(t?.toLowerCase()){case"cloudflare":return new iH;case"vercel":return new aH;case"netlify":return new oH;case"edgeone":return new cH;case"huggingface":return new uH;case"node":return new Ek;default:return new Ek}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}}});function Yve(){return new Response(DRt.replace("globals.currentToken",F.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function fH(e=!1){let t=F.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...F.accessedEnvVars,localCacheValid:F.localCacheValid,redisValid:F.redisValid,localRedisValid:F.localRedisValid,aiValid:F.aiValid,deployPlatform:F.deployPlatform};Object.keys(n).forEach(o=>{let c=t[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},u=c.category||"system";r[u].push({key:o,value:n[o].value||n[o],type:n[o].type||c.type||"text",description:c.description||"\u65E0\u63CF\u8FF0",options:n[o].options||c.options})});let i=(F.adminToken||"").trim()!=="",a={...F.originalEnvVars};return(!e||F.currentToken!==F.adminToken)&&Object.keys(a).forEach(o=>{(F.currentToken!==F.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),tt({message:"Welcome to the LogVar Danmu API server",version:F.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:t,originalEnvVars:a,hasAdminToken:i,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/hf\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function qRt(){try{let e=F.deployPlatform;if(R("info",`[system] [Server] Deployment request received for platform: ${e}`),e.toLowerCase()==="node")return R("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),tt({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let t=await Qh.getHandler(e);return t?await t.deploy()?(R("info",`[system] [Server] Deployment triggered successfully for platform: ${e}`),tt({success:!0,message:"Deployment triggered successfully"},200)):(R("error",`[system] [Server] Failed to trigger deployment for platform: ${e}`),tt({success:!1,message:"Failed to trigger deployment"},500)):(R("error",`[system] [Server] No handler found for platform: ${e}`),tt({success:!1,message:`No handler found for platform: ${e}`},400))}catch(e){return R("error",`[system] [Server] Deployment error: ${e.message}`),tt({success:!1,message:`Deployment failed: ${e.message}`},500)}}function HRt(){let e=F.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${Wrt(r.message)}`).join(` -`),t=e;return F.currentToken!==F.adminToken&&(t=e.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(t,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function VRt(){return F.logBuffer=[],tt({success:!0,message:"Logs cleared"},200)}async function jRt(){try{F.animes=[],F.episodeIds=[],F.episodeNum=10001,F.lastSelectMap=new Map,F.reqRecords=[],F.todayReqNum=0,F.searchCache=new Map,F.commentCache=new Map,F.requestHistory=new Map;try{F9(!0),F.useBangumiData&&MR(F.deployPlatform,!1).catch(e=>{R("warn",`[system] [Server] Bangumi-Data background reload failed: ${e.message}`)})}catch(e){R("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${e.message}`)}R("info","[system] [Server] Memory cache cleared successfully");try{if(F.localCacheValid){let{updateLocalCaches:e}=await Promise.resolve().then(()=>(ii(),eit));await e(),R("info","[system] [Server] Local cache cleared successfully")}}catch(e){R("warn",`[system] [Server] Local cache may not be available: ${e.message}`)}try{if(F.redisValid){let{updateRedisCaches:e}=await Promise.resolve().then(()=>(S9(),Gst));await e(),R("info","[system] [Server] Redis cache cleared successfully")}}catch(e){R("warn",`[system] [Server] Redis may not be available: ${e.message}`)}try{if(F.localRedisValid){let{updateLocalRedisCaches:e}=await Promise.resolve().then(()=>(GM(),Uq));await e(),R("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(e){R("warn",`[system] [Server] LocalRedis may not be available: ${e.message}`)}return R("info","[system] [Server] All caches cleared successfully"),tt({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(e){return R("error",`[system] [Server] Cache clear failed: ${e.message}`),tt({success:!1,message:`Cache clear failed: ${e.message}`},500)}}function hQr(e){let t=e.indexOf("?");if(t===-1)return e;let r=e.slice(0,t),s=e.slice(t+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function zve(e){if(e==null)return e;if(Array.isArray(e))return e.map(zve);if(typeof e=="object"){let t={};for(let r of Object.keys(e))t[r]=zve(e[r]);return t}return"***"}function KRt(){let e=[...F.reqRecords].reverse(),t=F.todayReqNum||0;return F.currentToken!==F.adminToken&&(e=e.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=hQr(n.interface)),n.params!=null&&(n.params=zve(n.params)),n})),tt({records:e,todayReqNum:t},200)}function GRt(){try{let e=[...F.animes||[]].reverse(),t=new Map;e.forEach(n=>{n?.source&&n?.animeId&&t.set(`${n.source}_${n.animeId}`,n)});let r=e.filter(n=>!n.isHiddenChild).map(n=>{let s=typeof n.toJson=="function"?n.toJson():{...n},{links:i=[],mergedChildren:a=[],...o}=s;return{...o,episodes:o.episodeCount||o.episodes||1,links:i,mergedChildren:a.map(c=>{let u=t.get(`${c.source}_${c.animeId}`),l=typeof u?.toJson=="function"?u.toJson():u,d=l?.links?.length>0?l.links:c.links||[];return{...c,episodes:c.episodeCount||c.episodes||1,links:d}})}});return tt({success:!0,data:r},200)}catch(e){return R("error",`[system] [Server] Fetch cache animes failed: ${e.message}`),tt({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${e.message}`},500)}}var zRt=ae(()=>{Qt();$r();PRt();jt();dH();qm()});async function YRt(e){try{let{key:t,value:r}=await e.json();if(!t)return tt({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=F.deployPlatform;return await(await Qh.getHandler(n)).setEnv(t,r)?tt({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u8BBE\u7F6E\u6210\u529F`}):tt({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(t){return R("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),tt({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function QRt(e){try{let{key:t,value:r}=await e.json();if(!t)return tt({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=F.deployPlatform;return await(await Qh.getHandler(n)).addEnv(t,r)?tt({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u6DFB\u52A0\u6210\u529F`}):tt({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u6DFB\u52A0\u5931\u8D25`},500)}catch(t){return R("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),tt({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function WRt(e){try{let{key:t}=await e.json();if(!t)return tt({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=F.deployPlatform;return await(await Qh.getHandler(r)).delEnv(t)?tt({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u5220\u9664\u6210\u529F`}):tt({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u5220\u9664\u5931\u8D25`},500)}catch(t){return R("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),tt({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function XRt(e){try{let t=await e.json(),r=t.aiBaseUrl||F.aiBaseUrl||"https://api.openai.com/v1",n=t.aiModel||F.aiModel||"gpt-4o",s=t.aiApiKey||F.aiApiKey;if(!s)return tt({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new $m({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?tt({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):tt({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(t){return R("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",t),tt({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${t.message}`},500)}}var JRt=ae(()=>{$r();jt();dH();Qt();L9()});function eCt(){try{if(F&&typeof F.bilibliCookie=="string"&&F.bilibliCookie)return F.bilibliCookie}catch{}try{if(F&&F.env&&typeof F.env.BILIBILI_COOKIE=="string"&&F.env.BILIBILI_COOKIE)return F.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function pQr(e){try{let t=e.match(/SESSDATA=([^;]+)/);if(!t)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=t[1],n=decodeURIComponent(r),s=Math.floor(Date.now()/1e3),i=(n.match(/\d{10,}/g)||[]).map(c=>Number(c)).filter(c=>Number.isFinite(c)),a=10*365*24*60*60,o=i.filter(c=>c>s&&c0)return Math.max(...o);if(n.includes(",")){let c=n.split(",");if(c.length>1){let u=parseInt(c[1],10);if(!isNaN(u)&&u>s)return u}}}catch{}return Math.floor(Date.now()/1e3)+30*24*60*60}async function tCt(e){if(!e)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!e.includes("SESSDATA")||!e.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let t=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:e,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!t.ok){let n=await t.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${t.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await t.json()}catch(n){let s=await t.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${s?s.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(t){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+t.message}}}async function rCt(e,t="saved"){if(!e)return{success:!0,data:{isValid:!1,checked:t,error:"\u672A\u914D\u7F6ECookie"}};let r=await tCt(e);return r.isValid?{success:!0,data:{isValid:!0,checked:t,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:pQr(e)}}:{success:!0,data:{isValid:!1,checked:t,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function nCt(){try{let e=eCt(),t=await rCt(e,"saved");return tt(t)}catch(e){return tt({success:!1,message:e.message},500)}}async function sCt(e){try{let t={};try{t=await e.json()}catch{t={}}let r=typeof t.cookie=="string"?t.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?eCt():r,a=await rCt(s,n?"saved":"input");return tt(a)}catch(t){return tt({success:!1,message:t.message},500)}}async function iCt(){try{let t=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return t.code!==0?tt({success:!1,message:t.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(ZRt.set(t.data.qrcode_key,{createTime:Date.now(),status:"generated"}),tt({success:!0,data:t.data}))}catch(e){return tt({success:!1,message:e.message},500)}}function mQr(e){let t=new Map,r=[];try{if(e?.headers&&typeof e.headers.getSetCookie=="function")r=e.headers.getSetCookie()||[];else{let u=e?.headers?.get?.("set-cookie");u&&(r=[u])}}catch{r=[]}for(let u of r){if(!u||typeof u!="string")continue;let l=u.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),h=l.slice(d+1).trim();f&&t.set(f,h)}let n=t.get("SESSDATA"),s=t.get("bili_jct"),i=t.get("DedeUserID"),a=t.get("DedeUserID__ckMd5"),o=t.get("sid");if(!n)return null;let c=[`SESSDATA=${n}`];return s&&c.push(`bili_jct=${s}`),i&&c.push(`DedeUserID=${i}`),a&&c.push(`DedeUserID__ckMd5=${a}`),o&&c.push(`sid=${o}`),c.join("; ")}async function aCt(e){let t=null;try{let r=await e.json();if(t=r.qrcodeKey||r.qrcode_key,!t)return tt({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${t}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),s=await n.json(),i=null;if(s?.data?.code===0&&(i=mQr(n),!i&&s?.data?.url))try{let o=new URL(s.data.url),c=new URLSearchParams(o.search),u=decodeURIComponent(c.get("SESSDATA")||""),l=decodeURIComponent(c.get("bili_jct")||""),d=decodeURIComponent(c.get("DedeUserID")||"");if(u){let f=[`SESSDATA=${u}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),i=f.join("; ")}}catch{}let a={success:!0,data:{code:s?.data?.code,message:s?.data?.message||""}};return i&&(a.data.cookie=i),tt(a)}catch(r){return tt({success:!1,message:r.message},500)}finally{t&&ZRt.delete(t)}}async function oCt(e){try{let r=((await e.json()).cookie||"").trim();if(!r)return tt({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return tt({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await tCt(r);if(!n.isValid)return tt({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=F.deployPlatform,i=await Qh.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?tt({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):tt({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):tt({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(t){return tt({success:!1,message:t.message},500)}}var ZRt,cCt=ae(()=>{$r();jt();Qt();dH();ZRt=new Map});async function lCt(e,t,r,n,s){$t=Ws.init(t);let i=new URL(e.url),a=i.pathname,o=e.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if($t.useBangumiData&&await MR(r,c,s),$t.deployPlatform=r,r==="node"){await Jde(a,r);let{judgeLocalRedisValid:m}=await Promise.resolve().then(()=>(GM(),Uq));await m(a)}if(await qde(a),!$t.aiValid&&$t.aiBaseUrl&&$t.aiModel&&$t.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new $m({baseURL:$t.aiBaseUrl,model:$t.aiModel,apiKey:$t.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&($t.aiValid=!0),R("info",`[system] [Server] request url: ${JSON.stringify(i)}`),R("info",`[system] [Server] request path: ${a}`),R("info",`[system] [Server] client ip: ${n}`),$t.ipBlacklist?.length&&$t.ipBlacklist.some(_=>gQr(_,n)))return R("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),tt({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=$t.token==="87654321",h=d===$t.token||d===$t.adminToken;if($t.currentToken=h?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&$t.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await Xde(),$t.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await $de(),r==="node"&&$t.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:m}=await Promise.resolve().then(()=>(GM(),Uq));await m()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(m=>a.includes(m))){let m=$t.reqRecords.length>0?$t.reqRecords[$t.reqRecords.length-1]:null,_=new Date().toDateString();if(m){let v=new Date(m.timestamp).toDateString();R("info",`[system] [Server] currentDate: ${_}`),R("info",`[system] [Server] lastDate: ${v}`),v!==_?$t.todayReqNum=1:$t.todayReqNum++}else $t.todayReqNum=1;let g=e.url,y=g.indexOf("/api/v2");y!==-1&&(g=g.substring(y));let A=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let v=e.clone();if((v.headers.get("content-type")||"").includes("application/json"))A=await v.json();else{let I=await v.text();I&&(A=JSON.parse(I))}}catch{A=null}let E={interface:g,params:A,timestamp:new Date().toISOString(),method:o,clientIp:n};$t.reqRecords.push(E),$t.reqRecords.length>$t.MAX_RECORDS&&($t.reqRecords=$t.reqRecords.slice(-$t.MAX_RECORDS))}if(a==="/"&&o==="GET")return Yve();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if($t.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===$t.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?fH(!1):(R("error",`[system] [Server] Invalid token in path: ${a}`),tt({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==$t.token&&u[0]!==$t.adminToken)return a==="/api/config"&&o==="GET"?fH(!1):(R("error",`[system] [Server] Invalid or missing token in path: ${a}`),tt({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(R("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return fH(!0);if(a==="/api/reqrecords"&&o==="GET")return KRt();if(R("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){R("info",`[Path Check] Starting path normalization for: "${a}"`);let m=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)R("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==m?R("info",`[Path Check] Path after cleanup: "${a}"`):R("info","[Path Check] Path after cleanup: No cleanup needed.");let _=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(R("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(R("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(R("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===_&&R("info","[Path Check] Prefix Check: No prefix addition needed."),R("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return Yve();if(a==="/api/v2/search/anime"&&o==="GET")return IC(i);if(a==="/api/v2/search/episodes"&&o==="GET")return sRt(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return Hve(i,e);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return Hve(i,e);if(a==="/api/v2/match"&&o==="POST")return nRt(i,e,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return Bve(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let m=i.searchParams.get("format"),_=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),y=i.searchParams.get("duration"),A=g==="true"||g==="1",E=y==="true"||y==="1";if(_){if(Fm(_)!==null)return R("info",`[Utils] [Rate Limit] Cache hit for URL: ${_}, skipping rate limit check`),$ve(_,m,A,E);if($t.rateLimitMaxRequests>0){let T=Date.now(),x=60*1e3;O9(T),$t.requestHistory.has(n)||$t.requestHistory.set(n,[]);let D=$t.requestHistory.get(n).filter(M=>T-M<=x);if(D.length>=$t.rateLimitMaxRequests)return R("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${D.length}/${$t.rateLimitMaxRequests} requests in 1 minute)`),tt({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);D.push(T),$t.requestHistory.set(n,D),R("info",`[Utils] [Rate Limit] IP ${n} request count: ${D.length}/${$t.rateLimitMaxRequests}`)}return $ve(_,m,A,E)}if(!a.startsWith("/api/v2/comment/"))return R("error","[system] [Server] Missing commentId or url parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let v=parseInt(a.split("/").pop()),b=FP(v);if(b&&Fm(b)!==null)return R("info",`[Utils] [Rate Limit] Cache hit for URL: ${b}, skipping rate limit check`),Fve(a,m,A,n,E);if($t.rateLimitMaxRequests>0){let I=Date.now(),T=60*1e3;O9(I),$t.requestHistory.has(n)||$t.requestHistory.set(n,[]);let w=$t.requestHistory.get(n).filter(D=>I-D<=T);if(w.length>=$t.rateLimitMaxRequests)return R("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${w.length}/${$t.rateLimitMaxRequests} requests in 1 minute)`),tt({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);w.push(I),$t.requestHistory.set(n,w),R("info",`[Utils] [Rate Limit] IP ${n} request count: ${w.length}/${$t.rateLimitMaxRequests}`)}return Fve(a,m,A,n,E)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let m=i.searchParams.get("format"),_=await e.json(),g;try{g=NR.fromJson(_)}catch{return R("error","[system] [Server] Invalid JSON in request body for segment"),tt({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return iRt(g,m)}catch(m){return R("error",`[system] [Server] Error processing segmentcomment request: ${m.message}`),tt({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?HRt():a==="/api/logs/clear"&&o==="POST"?VRt():a==="/api/env/set"&&o==="POST"?YRt(e):a==="/api/env/add"&&o==="POST"?QRt(e):a==="/api/env/del"&&o==="POST"?WRt(e):a==="/api/deploy"&&o==="POST"?qRt():a==="/api/cache/animes"&&o==="GET"?GRt():a==="/api/cache/clear"&&o==="POST"?jRt():a==="/api/cookie/status"&&o==="GET"?nCt():a==="/api/cookie/qr/generate"&&o==="POST"?iCt():a==="/api/cookie/qr/check"&&o==="POST"?aCt(e):a==="/api/cookie/verify"&&o==="POST"?sCt(e):a==="/api/cookie/save"&&o==="POST"?oCt(e):a==="/api/ai/verify"&&o==="POST"?XRt(e):tt({message:"Not found"},404)}function gQr(e,t){return!e||!t||t==="unknown"?!1:e.type==="exact"?e.value===t:e.type==="regex"?e.value.test(t):e.type==="cidr"?_Qr(t,e.ip,e.prefix):!1}function _Qr(e,t,r){if(e.includes(":")||t.includes(":")){let o=uCt(e),c=uCt(t);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;d0){let d=255<<8-l&255;return(o[u]&d)===(c[u]&d)}return!0}let s=Qve(e),i=Qve(t);if(s===null||i===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(s&a)===(i&a)}function Qve(e){let t=e.split(".");if(t.length!==4)return null;let r=t.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function uCt(e){if(!e||typeof e!="string"||!e.includes(":"))return null;let r=e.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],s=r[1]?r[1].split(":").filter(Boolean):[],i=c=>{if(c.length===0)return c;let u=c[c.length-1];if(!u.includes("."))return c;let l=Qve(u);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...c.slice(0,-1),d,f]};if(n=i(n),s=i(s),!n||!s)return null;if(r.length===1){if(n.length!==8)return null}else{let c=n.length+s.length;if(c>8)return null;let u=8-c;s=new Array(u).fill("0").concat(s)}let a=n.concat(s);if(a.length!==8)return null;let o=[];for(let c of a){if(!/^[0-9a-fA-F]{1,4}$/.test(c))return null;let u=parseInt(c,16);o.push(u>>8&255,u&255)}return o}var $t,dCt=ae(()=>{Qt();$r();jt();S9();ii();XA();L9();qm();qve();uRt();zRt();JRt();Vi();cCt()});var hCt=S(()=>{var hH=require("module"),Wve=require("path"),fCt=Wve.resolve(__dirname),CC="20.19.0",Xve="node-fetch",Ii="[esm-shim]",AQr=` -;(function(){ - if(exports!==module.exports && typeof exports==='object'){ - Object.keys(exports).forEach(k=>{ - if(k!=='__esModule' && !(k in module.exports)) module.exports[k]=exports[k] - }) - }; - if(typeof module.exports==='object' && Object.keys(module.exports).length===0){ - Object.keys(exports).forEach(k=>{ - if(k!=='__esModule') module.exports[k]=exports[k] - }) - } -})(); -`;function EQr(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number),s=Math.max(r.length,n.length);for(let i=0;io)return 1;if(a=0,r="not found",n=!1,s=!1;try{let i=require.resolve(`${Xve}/package.json`),a=require(i);r=a.version,n=a.version.startsWith("3."),s=!t&&n}catch{s=!1}return{nodeVersion:e,nodeFetchVersion:r,isNodeCompatible:t,isNodeFetchV3:n,needsShim:s}}var $d=yQr();console.log(`${Ii} Environment: Node ${$d.nodeVersion}, node-fetch ${$d.nodeFetchVersion}`);console.log(`${Ii} Node.js compatible (>=${CC}): ${$d.isNodeCompatible}`);console.log(`${Ii} node-fetch v3: ${$d.isNodeFetchV3}`);console.log(`${Ii} Needs shim: ${$d.needsShim}`);$d.needsShim?vQr():($d.isNodeCompatible&&$d.isNodeFetchV3?console.log(`${Ii} Node.js >=${CC} + node-fetch v3: optimal compatibility, shim disabled`):$d.isNodeCompatible&&!$d.isNodeFetchV3?console.log(`${Ii} Node.js >=${CC} + node-fetch v2: native compatibility, shim disabled`):!$d.isNodeCompatible&&!$d.isNodeFetchV3?console.log(`${Ii} Node.js <${CC} + node-fetch v2: no ESM issues, shim disabled`):console.log(`${Ii} Shim disabled for optimal performance`),global.loadNodeFetch=async()=>(console.log(`${Ii} loadNodeFetch called but not needed in this environment`),Promise.resolve()));function vQr(){console.log(`${Ii} Compatibility shim enabled for Node.js <${CC} + node-fetch v3`);let e;try{e=require("esbuild")}catch(c){throw console.error(`${Ii} missing dependency: run \`npm install esbuild\``),c}let t=null,r=null;async function n(){return t||r||(r=(async()=>{try{console.log(`${Ii} Loading node-fetch v3 ESM module...`);let c=await import(Xve);return t={default:c.default,fetch:c.default,Request:c.Request,Response:c.Response,Headers:c.Headers,FormData:c.FormData,AbortError:c.AbortError,FetchError:c.FetchError},console.log(`${Ii} node-fetch v3 loaded successfully`),t}catch(c){throw console.error(`${Ii} Failed to load node-fetch v3:`,c.message),c}})(),r)}function s(){let c=function(...l){if(!t)throw new Error(`${Ii} node-fetch v3 must be loaded asynchronously first. Call await global.loadNodeFetch() in your startup code.`);return t.fetch(...l)};return["Request","Response","Headers","FormData","AbortError","FetchError"].forEach(l=>{Object.defineProperty(c,l,{get(){if(!t)throw new Error(`${Ii} node-fetch v3.${l} must be loaded asynchronously first. Call await global.loadNodeFetch() in your startup code.`);return t[l]},enumerable:!0,configurable:!0})}),Object.defineProperty(c,"default",{get(){return c},enumerable:!0,configurable:!0}),c}function i(c,u){let l=c,d=Wve.basename(u);if(l.includes("import(")&&(l=l.replace(/(await\s+)?import\s*\(((?:[^()]|\([^)]*\))*)\)/g,(f,h,p)=>(console.log(`${Ii} Converting dynamic import in ${d}`),`${h||""}Promise.resolve(require(${p}))`))),c.includes("import.meta.url")){let f="__importMetaUrl";c.includes(f)?l=l.replace(/import\.meta\.url/g,f):(console.log(`${Ii} Fixing import.meta.url in ${d}`),l=`const ${f} = require('url').pathToFileURL(__filename).href; -`+l,l=l.replace(/import\.meta\.url/g,f))}return l}let a=hH._load;hH._load=function(c,u,l){return c===Xve?(console.log(`${Ii} Intercepting node-fetch require`),s()):a.call(this,c,u,l)};let o=hH.prototype._compile;hH.prototype._compile=function(c,u){try{let l=typeof u=="string"&&u.startsWith(fCt)&&!u.includes("node_modules"),d=/\b(?:import|export)\b/.test(c);if(l&&d){console.log(`${Ii} Transforming ESM syntax in: ${Wve.relative(fCt,u)}`);let f=i(c,u),p=e.transformSync(f,{loader:"js",format:"cjs",target:"es2018",sourcemap:"inline"}).code+AQr;return o.call(this,p,u)}}catch(l){console.error(`${Ii} esbuild transform failed:`,u,l.message||l)}return o.call(this,c,u)},global.loadNodeFetch=n,console.log(`${Ii} ESM compatibility shim active with hooks installed`)}});function ECt(e,t={}){let r=t.entryType||t.type;if(r==="both"&&(r=kl.FILE_DIR_TYPE),r&&(t.type=r),e){if(typeof e!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(r&&!pCt.includes(r))throw new Error(`readdirp: Invalid type passed. Use one of ${pCt.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=e,new Zve(t)}var vg,_Ct,Sg,kl,Jve,ACt,SQr,pCt,TQr,bQr,IQr,RQr,mCt,gCt,Zve,yCt=ae(()=>{vg=require("node:fs/promises"),_Ct=require("node:stream"),Sg=require("node:path"),kl={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},Jve={root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:kl.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(Jve);ACt="READDIRP_RECURSIVE_ERROR",SQr=new Set(["ENOENT","EPERM","EACCES","ELOOP",ACt]),pCt=[kl.DIR_TYPE,kl.EVERYTHING_TYPE,kl.FILE_DIR_TYPE,kl.FILE_TYPE],TQr=new Set([kl.DIR_TYPE,kl.EVERYTHING_TYPE,kl.FILE_DIR_TYPE]),bQr=new Set([kl.EVERYTHING_TYPE,kl.FILE_DIR_TYPE,kl.FILE_TYPE]),IQr=e=>SQr.has(e.code),RQr=process.platform==="win32",mCt=e=>!0,gCt=e=>{if(e===void 0)return mCt;if(typeof e=="function")return e;if(typeof e=="string"){let t=e.trim();return r=>r.basename===t}if(Array.isArray(e)){let t=e.map(r=>r.trim());return r=>t.some(n=>r.basename===n)}return mCt},Zve=class extends _Ct.Readable{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let r={...Jve,...t},{root:n,type:s}=r;this._fileFilter=gCt(r.fileFilter),this._directoryFilter=gCt(r.directoryFilter);let i=r.lstat?vg.lstat:vg.stat;RQr?this._stat=a=>i(a,{bigint:!0}):this._stat=i,this._maxDepth=r.depth??Jve.depth,this._wantsDir=s?TQr.has(s):!1,this._wantsFile=s?bQr.has(s):!1,this._wantsEverything=s===kl.EVERYTHING_TYPE,this._root=(0,Sg.resolve)(n),this._isDirent=!r.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let r=this.parent,n=r&&r.files;if(n&&n.length>0){let{path:s,depth:i}=r,a=n.splice(0,t).map(c=>this._formatEntry(c,s)),o=await Promise.all(a);for(let c of o){if(!c)continue;if(this.destroyed)return;let u=await this._getEntryType(c);u==="directory"&&this._directoryFilter(c)?(i<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,i+1)),this._wantsDir&&(this.push(c),t--)):(u==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),t--)}}else{let s=this.parents.pop();if(!s){this.push(null);break}if(this.parent=await s,this.destroyed)return}}}catch(r){this.destroy(r)}finally{this.reading=!1}}}async _exploreDir(t,r){let n;try{n=await(0,vg.readdir)(t,this._rdOptions)}catch(s){this._onError(s)}return{files:n,depth:r,path:t}}async _formatEntry(t,r){let n,s=this._isDirent?t.name:t;try{let i=(0,Sg.resolve)((0,Sg.join)(r,s));n={path:(0,Sg.relative)(this._root,i),fullPath:i,basename:s},n[this._statsProp]=this._isDirent?t:await this._stat(i)}catch(i){this._onError(i);return}return n}_onError(t){IQr(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let r=t[this._statsProp];if(r.isFile())return"file";if(r.isDirectory())return"directory";if(r&&r.isSymbolicLink()){let n=t.fullPath;try{let s=await(0,vg.realpath)(n),i=await(0,vg.lstat)(s);if(i.isFile())return"file";if(i.isDirectory()){let a=s.length;if(n.startsWith(s)&&n.substr(a,1)===Sg.sep){let o=new Error(`Circular symlink detected: "${n}" points to "${s}"`);return o.code=ACt,this._onError(o)}return"directory"}}catch(s){return this._onError(s),""}}}_includeAsFile(t){let r=t&&t[this._statsProp];return r&&this._wantsEverything&&!r.isDirectory()}}});function vCt(e,t,r,n,s){let i=(a,o)=>{r(e),s(a,o,{watchedPath:e}),o&&e!==o&&gH(ci.resolve(e,o),sT,ci.join(e,o))};try{return(0,iT.watch)(e,{persistent:t.persistent},i)}catch(a){n(a);return}}var iT,i0,ci,SCt,CQr,rSe,TCt,AH,EH,nSe,xQr,wQr,NQr,bCt,_i,s0,OQr,DQr,sT,pH,xC,PQr,LQr,MQr,tSe,yk,kQr,vk,ICt,mH,gH,BQr,eSe,UQr,_H,RCt=ae(()=>{iT=require("fs"),i0=require("fs/promises"),ci=Ne(require("path"),1),SCt=require("os"),CQr="data",rSe="end",TCt="close",AH=()=>{},EH=process.platform,nSe=EH==="win32",xQr=EH==="darwin",wQr=EH==="linux",NQr=EH==="freebsd",bCt=(0,SCt.type)()==="OS400",_i={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},s0=_i,OQr="watch",DQr={lstat:i0.lstat,stat:i0.stat},sT="listeners",pH="errHandlers",xC="rawEmitters",PQr=[sT,pH,xC],LQr=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),MQr=e=>LQr.has(ci.extname(e).slice(1).toLowerCase()),tSe=(e,t)=>{e instanceof Set?e.forEach(t):t(e)},yk=(e,t,r)=>{let n=e[t];n instanceof Set||(e[t]=n=new Set([n])),n.add(r)},kQr=e=>t=>{let r=e[t];r instanceof Set?r.clear():delete e[t]},vk=(e,t,r)=>{let n=e[t];n instanceof Set?n.delete(r):n===r&&delete e[t]},ICt=e=>e instanceof Set?e.size===0:!e,mH=new Map;gH=(e,t,r,n,s)=>{let i=mH.get(e);i&&tSe(i[t],a=>{a(r,n,s)})},BQr=(e,t,r,n)=>{let{listener:s,errHandler:i,rawEmitter:a}=n,o=mH.get(t),c;if(!r.persistent)return c=vCt(e,r,s,i,a),c?c.close.bind(c):void 0;if(o)yk(o,sT,s),yk(o,pH,i),yk(o,xC,a);else{if(c=vCt(e,r,gH.bind(null,t,sT),i,gH.bind(null,t,xC)),!c)return;c.on(s0.ERROR,async u=>{let l=gH.bind(null,t,pH);if(o&&(o.watcherUnusable=!0),nSe&&u.code==="EPERM")try{await(await(0,i0.open)(e,"r")).close(),l(u)}catch{}else l(u)}),o={listeners:s,errHandlers:i,rawEmitters:a,watcher:c},mH.set(t,o)}return()=>{vk(o,sT,s),vk(o,pH,i),vk(o,xC,a),ICt(o.listeners)&&(o.watcher.close(),mH.delete(t),PQr.forEach(kQr(o)),o.watcher=void 0,Object.freeze(o))}},eSe=new Map,UQr=(e,t,r,n)=>{let{listener:s,rawEmitter:i}=n,a=eSe.get(t),o=a&&a.options;return o&&(o.persistentr.interval)&&((0,iT.unwatchFile)(t),a=void 0),a?(yk(a,sT,s),yk(a,xC,i)):(a={listeners:s,rawEmitters:i,options:r,watcher:(0,iT.watchFile)(t,r,(c,u)=>{tSe(a.rawEmitters,d=>{d(s0.CHANGE,t,{curr:c,prev:u})});let l=c.mtimeMs;(c.size!==u.size||l>u.mtimeMs||l===0)&&tSe(a.listeners,d=>d(e,c))})},eSe.set(t,a)),()=>{vk(a,sT,s),vk(a,xC,i),ICt(a.listeners)&&(eSe.delete(t),(0,iT.unwatchFile)(t),a.options=a.watcher=void 0,Object.freeze(a))}},_H=class{constructor(t){this.fsw=t,this._boundHandleError=r=>t._handleError(r)}_watchWithNodeFs(t,r){let n=this.fsw.options,s=ci.dirname(t),i=ci.basename(t);this.fsw._getWatchedDir(s).add(i);let o=ci.resolve(t),c={persistent:n.persistent};r||(r=AH);let u;if(n.usePolling){let l=n.interval!==n.binaryInterval;c.interval=l&&MQr(i)?n.binaryInterval:n.interval,u=UQr(t,o,c,{listener:r,rawEmitter:this.fsw._emitRaw})}else u=BQr(t,o,c,{listener:r,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return u}_handleFile(t,r,n){if(this.fsw.closed)return;let s=ci.dirname(t),i=ci.basename(t),a=this.fsw._getWatchedDir(s),o=r;if(a.has(i))return;let c=async(l,d)=>{if(this.fsw._throttle(OQr,t,5)){if(!d||d.mtimeMs===0)try{let f=await(0,i0.stat)(t);if(this.fsw.closed)return;let h=f.atimeMs,p=f.mtimeMs;if((!h||h<=p||p!==o.mtimeMs)&&this.fsw._emit(s0.CHANGE,t,f),(xQr||wQr||NQr)&&o.ino!==f.ino){this.fsw._closeFile(l),o=f;let m=this._watchWithNodeFs(t,c);m&&this.fsw._addPathCloser(l,m)}else o=f}catch{this.fsw._remove(s,i)}else if(a.has(i)){let f=d.atimeMs,h=d.mtimeMs;(!f||f<=h||h!==o.mtimeMs)&&this.fsw._emit(s0.CHANGE,t,d),o=d}}},u=this._watchWithNodeFs(t,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(s0.ADD,t,0))return;this.fsw._emit(s0.ADD,t,r)}return u}async _handleSymlink(t,r,n,s){if(this.fsw.closed)return;let i=t.fullPath,a=this.fsw._getWatchedDir(r);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let o;try{o=await(0,i0.realpath)(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(a.has(s)?this.fsw._symlinkPaths.get(i)!==o&&(this.fsw._symlinkPaths.set(i,o),this.fsw._emit(s0.CHANGE,n,t.stats)):(a.add(s),this.fsw._symlinkPaths.set(i,o),this.fsw._emit(s0.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(i))return!0;this.fsw._symlinkPaths.set(i,!0)}_handleRead(t,r,n,s,i,a,o){if(t=ci.join(t,""),o=this.fsw._throttle("readdir",t,1e3),!o)return;let c=this.fsw._getWatchedDir(n.path),u=new Set,l=this.fsw._readdirp(t,{fileFilter:d=>n.filterPath(d),directoryFilter:d=>n.filterDir(d)});if(l)return l.on(CQr,async d=>{if(this.fsw.closed){l=void 0;return}let f=d.path,h=ci.join(t,f);if(u.add(f),!(d.stats.isSymbolicLink()&&await this._handleSymlink(d,t,h,f))){if(this.fsw.closed){l=void 0;return}(f===s||!s&&!c.has(f))&&(this.fsw._incrReadyCount(),h=ci.join(i,ci.relative(i,h)),this._addToNodeFs(h,r,n,a+1))}}).on(s0.ERROR,this._boundHandleError),new Promise((d,f)=>{if(!l)return f();l.once(rSe,()=>{if(this.fsw.closed){l=void 0;return}let h=o?o.clear():!1;d(void 0),c.getChildren().filter(p=>p!==t&&!u.has(p)).forEach(p=>{this.fsw._remove(t,p)}),l=void 0,h&&this._handleRead(t,!1,n,s,i,a,o)})})}async _handleDir(t,r,n,s,i,a,o){let c=this.fsw._getWatchedDir(ci.dirname(t)),u=c.has(ci.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!i&&!u&&this.fsw._emit(s0.ADD_DIR,t,r),c.add(ci.basename(t)),this.fsw._getWatchedDir(t);let l,d,f=this.fsw.options.depth;if((f==null||s<=f)&&!this.fsw._symlinkPaths.has(o)){if(!i&&(await this._handleRead(t,n,a,i,t,s,l),this.fsw.closed))return;d=this._watchWithNodeFs(t,(h,p)=>{p&&p.mtimeMs===0||this._handleRead(h,!1,a,i,t,s,l)})}return d}async _addToNodeFs(t,r,n,s,i){let a=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return a(),!1;let o=this.fsw._getWatchHelpers(t);n&&(o.filterPath=c=>n.filterPath(c),o.filterDir=c=>n.filterDir(c));try{let c=await DQr[o.statMethod](o.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(o.watchPath,c))return a(),!1;let u=this.fsw.options.followSymlinks,l;if(c.isDirectory()){let d=ci.resolve(t),f=u?await(0,i0.realpath)(t):t;if(this.fsw.closed||(l=await this._handleDir(o.watchPath,c,r,s,i,o,f),this.fsw.closed))return;d!==f&&f!==void 0&&this.fsw._symlinkPaths.set(d,f)}else if(c.isSymbolicLink()){let d=u?await(0,i0.realpath)(t):t;if(this.fsw.closed)return;let f=ci.dirname(o.watchPath);if(this.fsw._getWatchedDir(f).add(o.watchPath),this.fsw._emit(s0.ADD,o.watchPath,c),l=await this._handleDir(f,c,r,s,t,o,d),this.fsw.closed)return;d!==void 0&&this.fsw._symlinkPaths.set(ci.resolve(t),d)}else l=this._handleFile(o.watchPath,c,r);return a(),l&&this.fsw._addPathCloser(t,l),!1}catch(c){if(this.fsw._handleError(c))return a(),t}}}});var BCt={};Ft(BCt,{FSWatcher:()=>Sk,WatchHelper:()=>vH,default:()=>JQr,watch:()=>kCt});function yH(e){return Array.isArray(e)?e:[e]}function KQr(e){return typeof e=="function"?e:typeof e=="string"?t=>e===t:e instanceof RegExp?t=>e.test(t):typeof e=="object"&&e!==null?t=>{if(e.path===t)return!0;if(e.recursive){let r=zr.relative(e.path,t);return r?!r.startsWith("..")&&!zr.isAbsolute(r):!1}return!1}:()=>!1}function GQr(e){if(typeof e!="string")throw new Error("string expected");e=zr.normalize(e),e=e.replace(/\\/g,"/");let t=!1;e.startsWith("//")&&(t=!0);let r=/\/\//;for(;e.match(r);)e=e.replace(r,"/");return t&&(e="/"+e),e}function xCt(e,t,r){let n=GQr(t);for(let s=0;sKQr(s));return t==null?(s,i)=>xCt(n,s,i):xCt(n,t)}function kCt(e,t={}){let r=new Sk(t);return r.add(e),r}var DCt,SH,PCt,zr,sSe,FQr,LCt,$Qr,qQr,HQr,CCt,VQr,jQr,iSe,wCt,NCt,MCt,OCt,YQr,QQr,aSe,WQr,XQr,vH,Sk,JQr,UCt=ae(()=>{DCt=require("fs"),SH=require("fs/promises"),PCt=require("events"),zr=Ne(require("path"),1);yCt();RCt();sSe="/",FQr="//",LCt=".",$Qr="..",qQr="string",HQr=/\\/g,CCt=/\/\//,VQr=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,jQr=/^\.[/\\]/;iSe=e=>typeof e=="object"&&e!==null&&!(e instanceof RegExp);wCt=e=>{let t=yH(e).flat();if(!t.every(r=>typeof r===qQr))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(MCt)},NCt=e=>{let t=e.replace(HQr,sSe),r=!1;for(t.startsWith(FQr)&&(r=!0);t.match(CCt);)t=t.replace(CCt,sSe);return r&&(t=sSe+t),t},MCt=e=>NCt(zr.normalize(NCt(e))),OCt=(e="")=>t=>typeof t=="string"?MCt(zr.isAbsolute(t)?t:zr.join(e,t)):t,YQr=(e,t)=>zr.isAbsolute(e)?e:zr.join(t,e),QQr=Object.freeze(new Set),aSe=class{constructor(t,r){this.path=t,this._removeWatcher=r,this.items=new Set}add(t){let{items:r}=this;r&&t!==LCt&&t!==$Qr&&r.add(t)}async remove(t){let{items:r}=this;if(!r||(r.delete(t),r.size>0))return;let n=this.path;try{await(0,SH.readdir)(n)}catch{this._removeWatcher&&this._removeWatcher(zr.dirname(n),zr.basename(n))}}has(t){let{items:r}=this;if(r)return r.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=AH,this.items=QQr,Object.freeze(this)}},WQr="stat",XQr="lstat",vH=class{constructor(t,r,n){this.fsw=n;let s=t;this.path=t=t.replace(jQr,""),this.watchPath=s,this.fullWatchPath=zr.resolve(s),this.dirParts=[],this.dirParts.forEach(i=>{i.length>1&&i.pop()}),this.followSymlinks=r,this.statMethod=r?WQr:XQr}entryPath(t){return zr.join(this.watchPath,zr.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:r}=t;if(r&&r.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,r)&&this.fsw._hasReadPermissions(r)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},Sk=class extends PCt.EventEmitter{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let r=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},s={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?yH(t.ignored):yH([]),awaitWriteFinish:r===!0?n:typeof r=="object"?{...n,...r}:!1};bCt&&(s.usePolling=!0),s.atomic===void 0&&(s.atomic=!s.usePolling);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?s.usePolling=!1:c==="true"||c==="1"?s.usePolling=!0:s.usePolling=!!c}let a=process.env.CHOKIDAR_INTERVAL;a&&(s.interval=Number.parseInt(a,10));let o=0;this._emitReady=()=>{o++,o>=this._readyCount&&(this._emitReady=AH,this._readyEmitted=!0,process.nextTick(()=>this.emit(_i.READY)))},this._emitRaw=(...c)=>this.emit(_i.RAW,...c),this._boundRemove=this._remove.bind(this),this.options=s,this._nodeFsHandler=new _H(this),Object.freeze(s)}_addIgnoredPath(t){if(iSe(t)){for(let r of this._ignoredPaths)if(iSe(r)&&r.path===t.path&&r.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let r of this._ignoredPaths)iSe(r)&&r.path===t&&this._ignoredPaths.delete(r)}add(t,r,n){let{cwd:s}=this.options;this.closed=!1,this._closePromise=void 0;let i=wCt(t);return s&&(i=i.map(a=>YQr(a,s))),i.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async a=>{let o=await this._nodeFsHandler._addToNodeFs(a,!n,void 0,0,r);return o&&this._emitReady(),o})).then(a=>{this.closed||a.forEach(o=>{o&&this.add(zr.dirname(o),zr.basename(r||o))})}),this}unwatch(t){if(this.closed)return this;let r=wCt(t),{cwd:n}=this.options;return r.forEach(s=>{!zr.isAbsolute(s)&&!this._closers.has(s)&&(n&&(s=zr.join(n,s)),s=zr.resolve(s)),this._closePath(s),this._addIgnoredPath(s),this._watched.has(s)&&this._addIgnoredPath({path:s,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(r=>r.forEach(n=>{let s=n();s instanceof Promise&&t.push(s)})),this._streams.forEach(r=>r.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(r=>r.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((r,n)=>{let i=(this.options.cwd?zr.relative(this.options.cwd,n):n)||LCt;t[i]=r.getChildren().sort()}),t}emitWithAll(t,r){this.emit(t,...r),t!==_i.ERROR&&this.emit(_i.ALL,t,...r)}async _emit(t,r,n){if(this.closed)return;let s=this.options;nSe&&(r=zr.normalize(r)),s.cwd&&(r=zr.relative(s.cwd,r));let i=[r];n!=null&&i.push(n);let a=s.awaitWriteFinish,o;if(a&&(o=this._pendingWrites.get(r)))return o.lastChange=new Date,this;if(s.atomic){if(t===_i.UNLINK)return this._pendingUnlinks.set(r,[t,...i]),setTimeout(()=>{this._pendingUnlinks.forEach((c,u)=>{this.emit(...c),this.emit(_i.ALL,...c),this._pendingUnlinks.delete(u)})},typeof s.atomic=="number"?s.atomic:100),this;t===_i.ADD&&this._pendingUnlinks.has(r)&&(t=_i.CHANGE,this._pendingUnlinks.delete(r))}if(a&&(t===_i.ADD||t===_i.CHANGE)&&this._readyEmitted){let c=(u,l)=>{u?(t=_i.ERROR,i[0]=u,this.emitWithAll(t,i)):l&&(i.length>1?i[1]=l:i.push(l),this.emitWithAll(t,i))};return this._awaitWriteFinish(r,a.stabilityThreshold,t,c),this}if(t===_i.CHANGE&&!this._throttle(_i.CHANGE,r,50))return this;if(s.alwaysStat&&n===void 0&&(t===_i.ADD||t===_i.ADD_DIR||t===_i.CHANGE)){let c=s.cwd?zr.join(s.cwd,r):r,u;try{u=await(0,SH.stat)(c)}catch{}if(!u||this.closed)return;i.push(u)}return this.emitWithAll(t,i),this}_handleError(t){let r=t&&t.code;return t&&r!=="ENOENT"&&r!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||r!=="EPERM"&&r!=="EACCES")&&this.emit(_i.ERROR,t),t||this.closed}_throttle(t,r,n){this._throttled.has(t)||this._throttled.set(t,new Map);let s=this._throttled.get(t);if(!s)throw new Error("invalid throttle");let i=s.get(r);if(i)return i.count++,!1;let a,o=()=>{let u=s.get(r),l=u?u.count:0;return s.delete(r),clearTimeout(a),u&&clearTimeout(u.timeoutObject),l};a=setTimeout(o,n);let c={timeoutObject:a,clear:o,count:0};return s.set(r,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,r,n,s){let i=this.options.awaitWriteFinish;if(typeof i!="object")return;let a=i.pollInterval,o,c=t;this.options.cwd&&!zr.isAbsolute(t)&&(c=zr.join(this.options.cwd,t));let u=new Date,l=this._pendingWrites;function d(f){(0,DCt.stat)(c,(h,p)=>{if(h||!l.has(t)){h&&h.code!=="ENOENT"&&s(h);return}let m=Number(new Date);f&&p.size!==f.size&&(l.get(t).lastChange=m);let _=l.get(t);m-_.lastChange>=r?(l.delete(t),s(void 0,p)):o=setTimeout(d,a,p)})}l.has(t)||(l.set(t,{lastChange:u,cancelWait:()=>(l.delete(t),clearTimeout(o),n)}),o=setTimeout(d,a))}_isIgnored(t,r){if(this.options.atomic&&VQr.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=(this.options.ignored||[]).map(OCt(n)),o=[...[...this._ignoredPaths].map(OCt(n)),...i];this._userIgnored=zQr(o,void 0)}return this._userIgnored(t,r)}_isntIgnored(t,r){return!this._isIgnored(t,r)}_getWatchHelpers(t){return new vH(t,this.options.followSymlinks,this)}_getWatchedDir(t){let r=zr.resolve(t);return this._watched.has(r)||this._watched.set(r,new aSe(r,this._boundRemove)),this._watched.get(r)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,r,n){let s=zr.join(t,r),i=zr.resolve(s);if(n=n??(this._watched.has(s)||this._watched.has(i)),!this._throttle("remove",s,100))return;!n&&this._watched.size===1&&this.add(t,r,!0),this._getWatchedDir(s).getChildren().forEach(f=>this._remove(s,f));let c=this._getWatchedDir(t),u=c.has(r);c.remove(r),this._symlinkPaths.has(i)&&this._symlinkPaths.delete(i);let l=s;if(this.options.cwd&&(l=zr.relative(this.options.cwd,s)),this.options.awaitWriteFinish&&this._pendingWrites.has(l)&&this._pendingWrites.get(l).cancelWait()===_i.ADD)return;this._watched.delete(s),this._watched.delete(i);let d=n?_i.UNLINK_DIR:_i.UNLINK;u&&!this._isIgnored(s)&&this._emit(d,s),this._closePath(s)}_closePath(t){this._closeFile(t);let r=zr.dirname(t);this._getWatchedDir(r).remove(zr.basename(t))}_closeFile(t){let r=this._closers.get(t);r&&(r.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,r){if(!r)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(r)}_readdirp(t,r){if(this.closed)return;let n={type:_i.ALL,alwaysStat:!0,lstat:!0,...r,depth:0},s=ECt(t,n);return this._streams.add(s),s.once(TCt,()=>{s=void 0}),s.once(rSe,()=>{s&&(this._streams.delete(s),s=void 0)}),s}};JQr={watch:kCt,FSWatcher:Sk}});var oWr={};function tWr(){return process.env.SPACE_ID?"huggingface":"node"}function rWr(){lH();let e=uE.default.join(oSe,".env.example"),t=uE.default.join(FCt,".env.example"),r=qd.default.existsSync(Tg),n=qd.default.existsSync(e),s=qd.default.existsSync(FCt),i=qd.default.existsSync(t);if(r){console.log("[server] Configuration files exist, skipping auto-copy");return}if(n)try{qd.default.copyFileSync(e,Tg),console.log("[server] Copied .env.example to .env successfully")}catch(a){console.log("[server] Error copying .env.example to .env:",a.message)}else if(s&&i)try{qd.default.existsSync(oSe)||(qd.default.mkdirSync(oSe,{recursive:!0}),console.log("[server] Created config directory")),qd.default.copyFileSync(t,Tg),console.log("[server] Copied config_example/.env.example to config/.env successfully")}catch(a){console.log("[server] Error copying config_example files to config directory:",a.message)}else console.log("[server] .env.example not found in config or config_example, cannot auto-copy")}function KCt(){try{jCt.default.config({path:Tg,override:!0});for(let[e,t]of Object.entries(eWr))process.env[e]=t;console.log("[server] .env file loaded successfully")}catch{console.log("[server] dotenv not available or .env file not found, using system environment variables")}}async function nWr(){let e=qd.default.existsSync(Tg);if(!e){console.log("[server] .env not found, skipping file watcher");return}try{let t=await Promise.resolve().then(()=>(UCt(),BCt)),r=t.default||t,n=[];e&&n.push(Tg),aT=r.watch(n,{persistent:!0,awaitWriteFinish:{stabilityThreshold:100,pollInterval:100}}),aT.on("change",i=>{oT&&clearTimeout(oT),oT=setTimeout(()=>{let a=uE.default.basename(i);console.log(`[server] ${a} changed, reloading environment variables...`);try{let o=new Set;if(i===Tg&&qd.default.existsSync(Tg)){let u=qd.default.readFileSync(Tg,"utf8").split(` -`);for(let l of u){let d=l.trim();if(d&&!d.startsWith("#")){let f=d.match(/^([^=]+)=/);f&&o.add(f[1])}}}for(let c of Object.keys(process.env))o.has(c)||delete process.env[c];KCt(),Ws?.reInit?.(),console.log("[server] Environment variables reloaded successfully"),console.log("[server] Updated keys:",Array.from(o).join(", ")),(process.env.USE_BANGUMI_DATA==="false"||process.env.USE_BANGUMI_DATA===!1)&&F9(!0)}catch(o){console.log("[server] Error reloading configuration files:",o.message)}oT=null},200)}),aT.on("unlink",i=>{let a=uE.default.basename(i);console.log(`[server] ${a} deleted, using remaining configuration files`)}),aT.on("error",i=>{console.log("[server] File watcher error:",i.message)});let s=n.map(i=>uE.default.basename(i)).join(" and ");console.log(`[server] Configuration file watcher started for: ${s}`)}catch{console.log("[server] chokidar not available, configuration hot reload disabled")}}function GCt(){aT&&(console.log("[server] Closing file watcher..."),aT.close(),aT=null),oT&&(clearTimeout(oT),oT=null),bH&&(console.log("[server] Closing main server..."),bH.close(()=>{console.log("[server] Main server closed")})),IH&&(console.log("[server] Closing proxy server..."),IH.close(()=>{console.log("[server] Proxy server closed")})),setTimeout(()=>{console.log("[server] Exit complete."),process.exit(0)},500)}function sWr(){return TH.default.createServer(async(e,t)=>{try{let r=`http://${e.headers.host}${e.url}`,n="unknown",s=e.headers["x-forwarded-for"];s?(n=s.split(",")[0].trim(),console.log(`[server] Using X-Forwarded-For IP: ${n}`)):e.headers["x-real-ip"]?(n=e.headers["x-real-ip"],console.log(`[server] Using X-Real-IP: ${n}`)):(n=e.socket.remoteAddress||"unknown",console.log(`[server] Using direct connection IP: ${n}`)),n&&n.startsWith("::ffff:")&&(n=n.substring(7));let i;(e.method==="POST"||e.method==="PUT")&&(i=await new Promise(d=>{let f="";e.on("data",h=>f+=h),e.on("end",()=>d(f))}));let a=new Yf(r,{method:e.method,headers:e.headers,body:i||void 0}),o=await lCt(a,process.env,tWr(),n);t.statusCode=o.status,o.headers.forEach((d,f)=>{let h=f.toLowerCase();h==="content-encoding"||h==="content-length"||t.setHeader(f,d)});let c=e.headers["accept-encoding"]||"",u=o.headers.get("content-type")||"",l;if(o&&typeof o.arrayBuffer=="function"){let d=await o.arrayBuffer();l=Buffer.from(d)}else if(o&&typeof o.buffer=="function")l=await o.buffer();else if(o&&typeof o.text=="function"){let d=await o.text();l=Buffer.from(d||"","utf8")}else throw new TypeError("webResponse has no readable body method (arrayBuffer/buffer/text)");if(c.includes("gzip")&&l.length>1024&&(u.includes("xml")||u.includes("json")||u.includes("text")))try{let d=HCt.default.gzipSync(l);t.setHeader("Content-Encoding","gzip"),t.setHeader("Content-Length",d.length),l=d}catch(d){console.error("[GZIP] Compression failed, falling back to raw:",d.message)}t.hasHeader("Content-Length")||t.setHeader("Content-Length",l.length),t.end(l)}catch(r){console.error("Server error:",r),t.statusCode=500,t.end("Internal Server Error")}})}function iWr(){return TH.default.createServer((e,t)=>{let r=new URL(e.url,`http://${e.headers.host}`),n=Object.fromEntries(r.searchParams);if(n.url){let s=process.env.PROXY_URL||"",i=null;if(s){let d=s.split(",").map(f=>f.trim()).filter(f=>f);for(let f of d)if(!(/^@/.test(f)||/^[\w-]+@http/i.test(f))){i=f.trim(),console.log("[Proxy Server] Forward proxy detected:",i);break}}let a=n.url;console.log("[Proxy Server] Target URL:",a);let o=new URL(a),c={hostname:o.hostname,port:o.port||(o.protocol==="https:"?443:80),path:o.pathname+o.search,method:"GET",headers:{...e.headers}};delete c.headers.host;let u=o.protocol==="https:"?qCt.default:TH.default;i?(console.log("[Proxy Server] Using forward proxy agent:",i),c.agent=new VCt.HttpsProxyAgent(i)):console.log("[Proxy Server] No proxy configured, direct connection");let l=u.request(c,d=>{t.writeHead(d.statusCode,d.headers),d.pipe(t,{end:!0})});e.on("close",()=>{t.writableEnded||(console.log("[Proxy Server] Client disconnected prematurely. Destroying upstream request."),l.destroy())}),l.on("error",d=>{if(e.destroyed||e.aborted||d.code==="ECONNRESET"||d.message==="socket hang up"){t.writableEnded||console.log("[Proxy Server] Upstream connection closed (expected behavior due to client interrupt).");return}console.error("Proxy request error:",d),t.headersSent||(t.statusCode=500,t.end("Proxy Error: "+d.message))}),l.end()}else t.statusCode=400,t.end("Bad Request: Missing URL parameter")})}async function aWr(){console.log("[server] Starting server..."),await nWr();try{Ws.init(process.env)}catch(r){console.error("[server] Globals init failed:",r)}let e=Number.parseInt(process.env.DANMU_API_PORT??"",10),t=Number.isNaN(e)?9321:e;bH=sWr(),bH.listen(t,"0.0.0.0",()=>{console.log(`Server running on http://0.0.0.0:${t}`)}),IH=iWr(),IH.listen(5321,"0.0.0.0",()=>{console.log("Proxy server running on http://0.0.0.0:5321"),setTimeout(()=>MR("node",!0).catch(console.error),1e3)})}var $Ct,uE,qd,TH,qCt,HCt,VCt,jCt,Wms,Xms,ZQr,Jms,oSe,FCt,Tg,eWr,aT,oT,bH,IH,zCt=ae(()=>{$Ct=require("module"),uE=Ne(require("path"),1),qd=Ne(require("fs"),1),TH=Ne(require("http"),1),qCt=Ne(require("https"),1),HCt=Ne(require("zlib"),1),VCt=Ne(Wtt(),1),jCt=Ne(rrt(),1);AR();dCt();Qt();qm();Gve();Wms=Ne(hCt(),1),Xms=(0,$Ct.createRequire)(typeof __filename<"u"?__filename:process.cwd()),ZQr=typeof __filename<"u"?__filename:uE.default.join(process.cwd(),"vendor","danmu_api","danmu_api","server.js"),Jms=typeof __dirname<"u"?__dirname:uE.default.dirname(ZQr),oSe=Kve(),FCt=FRt(),Tg=RC(),eWr={...process.env};rWr();KCt();typeof globalThis.fetch!="function"&&(globalThis.fetch=HA);typeof globalThis.Request>"u"&&(globalThis.Request=Yf);typeof globalThis.Response>"u"&&(globalThis.Response=Hc);typeof globalThis.Headers>"u"&&(globalThis.Headers=Xo);aT=null,oT=null,bH=null,IH=null;process.on("SIGTERM",GCt);process.on("SIGINT",GCt);aWr()});function ext(){return typeof globalThis<"u"&&typeof globalThis.messageToDart=="function"?globalThis.messageToDart:null}function _Wr(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return String(e);try{return JSON.stringify(e)}catch{return String(e)}}function AWr(e,t={}){return`${e}:${_Wr(t)}`}function EWr(){return Date.now()ZCt){let t=ec.recent.size-ZCt,r=0;for(let n of ec.recent.keys()){if(r>=t)break;ec.recent.delete(n),r++}}ec.lastPruneAt=e}function SWr(e=Date.now()){e-ec.lastPruneAt0&&a&&a.expiresAt>n)return a.result;if(ec.inflight.has(s))return ec.inflight.get(s);if(EWr()&&e!=="getPlayInfo")return null;let o=(async()=>{try{let c=await r({action:e,...t});return i>0&&ec.recent.set(s,{result:c,expiresAt:Date.now()+i}),c}catch(c){let u=c?.message||"",l=c?.code||"";return(l==="ECONNABORTED"||l==="ECONNRESET"||l==="ECONNREFUSED"||u.includes("timeout")||u.includes("socket hang up"))&&yWr(),console.warn(`[HostBridge] ${e} \u8C03\u7528\u5F02\u5E38:`,u||c),null}finally{ec.inflight.delete(s)}})();return ec.inflight.set(s,o),o}var mWr,ec,gWr,ZCt,en,Hd=ae(()=>{mWr={toast:1500,danmuPush:1200,clearDanmu:1200,serverStarted:1e4,queryProfile:3e3,saveProfile:5e3},ec={cooldownUntil:0,inflight:new Map,recent:new Map,lastPruneAt:0},gWr=60*1e3,ZCt=200;en={isAvailable(){return!!ext()},async toast(e,t={}){let r=Number.isFinite(t.duration)?t.duration:2;return Wh("toast",{opt:{message:String(e??""),duration:r}})},async getPlayInfo(){return Wh("getPlayInfo")},async pushDanmu(e,t={}){return Wh("danmuPush",{opt:{url:e,...t}})},async clearDanmu(){let e=[()=>Wh("danmuPush",{opt:{url:""}}),()=>Wh("danmuPush",{opt:{url:null}}),()=>Wh("clearDanmu")];for(let t of e){let r=await t();if(r!=null)return r}return null},async queryProfile(){return Wh("queryProfile")},async saveProfile(e){return Wh("saveProfile",{opt:e})},async notifyServerStarted(e){return Wh("serverStarted",{opt:{address:e}})},async dispatch(e,t){return Wh(e,t||{})}}});function uSe(e){return bWr.some(t=>t.test(e))}function nxt(e){let t=String(e||"").toLowerCase();if(!t||t==="::"||t==="::1"||t.startsWith("fc")||t.startsWith("fd")||t.startsWith("fe80:")||t.startsWith("fe9")||t.startsWith("fea")||t.startsWith("feb"))return!0;if(t.startsWith("::ffff:")){let r=t.split(":").pop();if(Tk.default.isIPv4(r)&&uSe(r))return!0}return!1}function IWr(e){let t=String(e||"").toLowerCase().trim();return!!(!t||t==="localhost"||t.endsWith(".localhost")||t==="metadata.google.internal"||t.endsWith(".internal")||t.endsWith(".local"))}function RWr(e){if(!e||typeof e!="string")return{ok:!1,reason:"empty url"};let t;try{t=new URL(e)}catch{return{ok:!1,reason:"invalid url"}}if(!TWr.has(t.protocol))return{ok:!1,reason:`protocol not allowed: ${t.protocol}`,parsed:t};let r=t.hostname;return IWr(r)?{ok:!1,reason:`blocked host: ${r}`,host:r,parsed:t}:Tk.default.isIPv4(r)&&uSe(r)?{ok:!1,reason:`blocked ipv4: ${r}`,host:r,parsed:t}:Tk.default.isIPv6(r)&&nxt(r)?{ok:!1,reason:`blocked ipv6: ${r}`,host:r,parsed:t}:{ok:!0,host:r,parsed:t}}async function lT(e){let t=RWr(e);if(!t.ok||Tk.default.isIP(t.host))return t;let r;try{r=await rxt.default.promises.lookup(t.host,{all:!0,verbatim:!0})}catch(n){return{ok:!1,reason:`dns lookup failed: ${n.message}`,host:t.host}}for(let{address:n,family:s}of r){if(s===4&&uSe(n))return{ok:!1,reason:`dns resolves to private ipv4: ${n}`,host:t.host};if(s===6&&nxt(n))return{ok:!1,reason:`dns resolves to private ipv6: ${n}`,host:t.host}}return{ok:!0,host:t.host,parsed:t.parsed,addrs:r}}var rxt,Tk,TWr,bWr,wH=ae(()=>{rxt=Ne(require("dns"),1),Tk=Ne(require("net"),1),TWr=new Set(["http:","https:"]),bWr=[/^0\./,/^10\./,/^100\.(6[4-9]|[7-9]\d|1[0-1]\d|12[0-7])\./,/^127\./,/^169\.254\./,/^172\.(1[6-9]|2\d|3[0-1])\./,/^192\.0\.0\./,/^192\.0\.2\./,/^192\.88\.99\./,/^192\.168\./,/^198\.(1[8-9]|51\.100)\./,/^203\.0\.113\./,/^(22[4-9]|2[3-5]\d)\./,/^255\.255\.255\.255$/]});var ySe={};Ft(ySe,{acquireInflightGate:()=>ASe,default:()=>Xe,getAgentStats:()=>gSe,getInflightGateStats:()=>_Se,getSharedAgents:()=>Zn,releaseInflightGate:()=>ESe});function fxt(e){if(!e||!e.interceptors||e.__inflightGateInstalled)return e;e.__inflightGateInstalled=!0;let t=90*1e3;e.interceptors.request.use(async n=>{await wC.acquire();let s={released:!1};return s.timer=setTimeout(()=>{s.released||(s.released=!0,wC.release())},t),n.__gateToken=s,n.maxContentLength||(n.maxContentLength=cxt),n.maxBodyLength||(n.maxBodyLength=cxt),n});let r=n=>{n&&!n.released&&(n.released=!0,n.timer&&(clearTimeout(n.timer),n.timer=null),wC.release())};return e.interceptors.response.use(n=>(r(n?.config?.__gateToken),n),n=>(r(n?.config?.__gateToken),Promise.reject(n))),e}function VWr({insecure:e,family:t}){return`i${e?1:0}-f${t||0}`}function Zn(e={}){let t=!!e.insecure||MWr,r=e.family===4||e.family===6?e.family:0,n=VWr({insecure:t,family:r}),s=mSe.get(n);if(s)return s;let i={keepAlive:kWr,keepAliveMsecs:1e3,maxSockets:BWr,maxFreeSockets:UWr,timeout:FWr,freeSocketTimeout:$Wr,...r?{family:r}:{}};return s={httpsAgent:new lxt.default.Agent({...i,rejectUnauthorized:!t}),httpAgent:new dxt.default.Agent(i),key:n,insecure:t,family:r},mSe.set(n,s),s}function uxt(e){let t=r=>Object.keys(r||{}).reduce((n,s)=>(n[s]=(r[s]||[]).length,n),{});return{sockets:t(e.sockets),freeSockets:t(e.freeSockets),requests:t(e.requests)}}function gSe(){let e={sockets:{},freeSockets:{},requests:{}},t={sockets:{},freeSockets:{},requests:{}},r=[];for(let n of mSe.values()){let s=uxt(n.httpsAgent),i=uxt(n.httpAgent);r.push({key:n.key,insecure:n.insecure,family:n.family,https:s,http:i});for(let a of["sockets","freeSockets","requests"]){for(let[o,c]of Object.entries(s[a]))e[a][o]=(e[a][o]||0)+c;for(let[o,c]of Object.entries(i[a]))t[a][o]=(t[a][o]||0)+c}}return{https:e,http:t,variants:r}}function _Se(){return wC.stats()}async function ASe(){await wC.acquire()}function ESe(){wC.release()}var lxt,dxt,MWr,kWr,BWr,UWr,FWr,$Wr,cxt,qWr,pSe,wC,HWr,mSe,hxt,jWr,KWr,GWr,Xe,Hr=ae(()=>{Pr();lxt=Ne(require("https"),1),dxt=Ne(require("http"),1),MWr=process.env.INSECURE_TLS==="1"||process.env.NODE_TLS_REJECT_UNAUTHORIZED==="0",kWr=process.env.HTTP_KEEP_ALIVE!=="false",BWr=parseInt(process.env.HTTP_MAX_SOCKETS||"50",10),UWr=parseInt(process.env.HTTP_MAX_FREE_SOCKETS||"10",10),FWr=parseInt(process.env.HTTP_SOCKET_TIMEOUT||"60000",10),$Wr=parseInt(process.env.HTTP_FREE_SOCKET_TIMEOUT||"30000",10),cxt=parseInt(process.env.HTTP_MAX_CONTENT_LENGTH||String(2*1024*1024),10),qWr=parseInt(process.env.HTTP_GLOBAL_INFLIGHT||"150",10),pSe=class{constructor(t){this.max=t,this.active=0,this.peakActive=0,this.waiting=[],this.totalAcquired=0,this.totalReleased=0,this.peakWaiting=0}async acquire(){if(this.totalAcquired+=1,this.activethis.peakActive&&(this.peakActive=this.active);return}await new Promise(t=>{this.waiting.push(t),this.waiting.length>this.peakWaiting&&(this.peakWaiting=this.waiting.length)}),this.active+=1,this.active>this.peakActive&&(this.peakActive=this.active)}release(){this.totalReleased+=1,this.active=Math.max(0,this.active-1);let t=this.waiting.shift();t&&t()}stats(){return{max:this.max,active:this.active,waiting:this.waiting.length,peakActive:this.peakActive,peakWaiting:this.peakWaiting,totalAcquired:this.totalAcquired,totalReleased:this.totalReleased}}},wC=new pSe(qWr);HWr=ve.create.bind(ve);ve.create=function(t){let r=HWr(t);return fxt(r),r};fxt(ve);mSe=new Map;hxt=Zn(),jWr=hxt.httpsAgent,KWr=hxt.httpAgent,GWr=ve.create({httpsAgent:jWr,httpAgent:KWr});Xe=GWr});var xSe={};Ft(xSe,{HOME_CACHE_TTL:()=>Tt,buildHomeCacheKey:()=>Yr,clearHomeCache:()=>ISe,getHomeCache:()=>Qr,getHomeCacheStats:()=>RSe,hasHomeCache:()=>XWr,resetHomeCacheStats:()=>CSe,setHomeCache:()=>dn});function pxt(){return Date.now()}function QWr(e,t=Tt.semiStatic){let r=Number(t||Tt.semiStatic),n=Number.isFinite(r)&&r>0?pxt()+r:Number.POSITIVE_INFINITY;return{value:e,expiresAt:n}}function mxt(e){return!e||pxt()>e.expiresAt}function WWr(e){for(let[t]of a0.entries())if(t===e)return!0;return!1}function Yr(e,t={}){let r=t?.server||"default",n=t?.cacheKeyExtra||"";return`${e}:${r}:${n}`}function Qr(e){let t=a0.get(e);if(t&&!mxt(t))return Vd.hits++,t.value;t&&a0.delete(e),Vd.misses++}function dn(e,t,r){!WWr(e)&&a0.size>=bSe&&Vd.evictions++,a0.set(e,QWr(t,r)),Vd.sets++}function XWr(e){let t=a0.get(e);return t&&!mxt(t)?!0:(t&&a0.delete(e),!1)}function ISe(e){if(!e){a0.clear();return}let t=new RegExp(`^${e}:`);for(let[r]of a0.entries())t.test(r)&&a0.delete(r)}function RSe(){let e=Vd.hits+Vd.misses;return{hits:Vd.hits,misses:Vd.misses,sets:Vd.sets,evictions:Vd.evictions,hitRate:e>0?Vd.hits/e:0,size:a0.size,maxSize:bSe,calculatedSize:0}}function CSe(){Vd={hits:0,misses:0,sets:0,evictions:0}}var Tt,Vd,bSe,a0,Nn=ae(()=>{sa();Tt={static:30*60*1e3,semiStatic:10*60*1e3,dynamic:5*60*1e3,realtime:1*60*1e3},Vd={hits:0,misses:0,sets:0,evictions:0},bSe=500,a0=new gt(bSe,Number.POSITIVE_INFINITY)});var Nxt=ae(()=>{});function Ck(e){return e?.xml?typeof e.xml=="boolean"?Oxt:{...Oxt,...e.xml}:e??void 0}var aXr,Rk,Oxt,DSe=ae(()=>{aXr={xml:!1,decodeEntities:!0},Rk=aXr,Oxt={_useHtmlParser2:!0,xmlMode:!0}});function Dxt(e){return e.type===Tn.Tag||e.type===Tn.Script||e.type===Tn.Style}var Tn,Pxt,Lxt,Mxt,kxt,Bxt,Uxt,Fxt,$xt,qxt,OC=ae(()=>{(function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"})(Tn||(Tn={}));Pxt=Tn.Root,Lxt=Tn.Text,Mxt=Tn.Directive,kxt=Tn.Comment,Bxt=Tn.Script,Uxt=Tn.Style,Fxt=Tn.Tag,$xt=Tn.CDATA,qxt=Tn.Doctype});function bt(e){return Dxt(e)}function DC(e){return e.type===Tn.CDATA}function Gu(e){return e.type===Tn.Text}function gT(e){return e.type===Tn.Comment}function UH(e){return e.type===Tn.Directive}function o0(e){return e.type===Tn.Root}function ps(e){return Object.prototype.hasOwnProperty.call(e,"children")}function Ok(e,t=!1){let r;if(Gu(e))r=new Xh(e.data);else if(gT(e))r=new hT(e.data);else if(bt(e)){let n=t?PSe(e.children):[],s=new mT(e.name,{...e.attribs},n);n.forEach(i=>i.parent=s),e.namespace!=null&&(s.namespace=e.namespace),e["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...e["x-attribsNamespace"]}),e["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...e["x-attribsPrefix"]}),r=s}else if(DC(e)){let n=t?PSe(e.children):[],s=new Nk(n);n.forEach(i=>i.parent=s),r=s}else if(o0(e)){let n=t?PSe(e.children):[],s=new Bl(n);n.forEach(i=>i.parent=s),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),r=s}else if(UH(e)){let n=new pT(e.name,e.data);e["x-name"]!=null&&(n["x-name"]=e["x-name"],n["x-publicId"]=e["x-publicId"],n["x-systemId"]=e["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${e.type}`);return r.startIndex=e.startIndex,r.endIndex=e.endIndex,e.sourceCodeLocation!=null&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function PSe(e){let t=e.map(r=>Ok(r,!0));for(let r=1;r{OC();BH=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(t){this.parent=t}get previousSibling(){return this.prev}set previousSibling(t){this.prev=t}get nextSibling(){return this.next}set nextSibling(t){this.next=t}cloneNode(t=!1){return Ok(this,t)}},xk=class extends BH{constructor(t){super(),this.data=t}get nodeValue(){return this.data}set nodeValue(t){this.data=t}},Xh=class extends xk{constructor(){super(...arguments),this.type=Tn.Text}get nodeType(){return 3}},hT=class extends xk{constructor(){super(...arguments),this.type=Tn.Comment}get nodeType(){return 8}},pT=class extends xk{constructor(t,r){super(r),this.name=t,this.type=Tn.Directive}get nodeType(){return 1}},wk=class extends BH{constructor(t){super(),this.children=t}get firstChild(){var t;return(t=this.children[0])!==null&&t!==void 0?t:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(t){this.children=t}},Nk=class extends wk{constructor(){super(...arguments),this.type=Tn.CDATA}get nodeType(){return 4}},Bl=class extends wk{constructor(){super(...arguments),this.type=Tn.Root}get nodeType(){return 9}},mT=class extends wk{constructor(t,r,n=[],s=t==="script"?Tn.Script:t==="style"?Tn.Style:Tn.Tag){super(n),this.name=t,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(t){this.name=t}get attributes(){return Object.keys(this.attribs).map(t=>{var r,n;return{name:t,value:this.attribs[t],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[t],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[t]}})}}});var Vxt,PC,tc=ae(()=>{OC();LSe();LSe();Vxt={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},PC=class{constructor(t,r,n){this.dom=[],this.root=new Bl(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,typeof r=="function"&&(n=r,r=Vxt),typeof t=="object"&&(r=t,t=void 0),this.callback=t??null,this.options=r??Vxt,this.elementCB=n??null}onparserinit(t){this.parser=t}onreset(){this.dom=[],this.root=new Bl(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null}onend(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))}onerror(t){this.handleCallback(t)}onclosetag(){this.lastNode=null;let t=this.tagStack.pop();this.options.withEndIndices&&(t.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(t)}onopentag(t,r){let n=this.options.xmlMode?Tn.Tag:void 0,s=new mT(t,r,void 0,n);this.addNode(s),this.tagStack.push(s)}ontext(t){let{lastNode:r}=this;if(r&&r.type===Tn.Text)r.data+=t,this.options.withEndIndices&&(r.endIndex=this.parser.endIndex);else{let n=new Xh(t);this.addNode(n),this.lastNode=n}}oncomment(t){if(this.lastNode&&this.lastNode.type===Tn.Comment){this.lastNode.data+=t;return}let r=new hT(t);this.addNode(r),this.lastNode=r}oncommentend(){this.lastNode=null}oncdatastart(){let t=new Xh(""),r=new Nk([t]);this.addNode(r),t.parent=r,this.lastNode=t}oncdataend(){this.lastNode=null}onprocessinginstruction(t,r){let n=new pT(t,r);this.addNode(n)}handleCallback(t){if(typeof this.callback=="function")this.callback(t,this.dom);else if(t)throw t}addNode(t){let r=this.tagStack[this.tagStack.length-1],n=r.children[r.children.length-1];this.options.withStartIndices&&(t.startIndex=this.parser.startIndex),this.options.withEndIndices&&(t.endIndex=this.parser.endIndex),r.children.push(t),n&&(t.prev=n,n.next=t),t.parent=r,this.lastNode=null}}});var FH,jxt=ae(()=>{FH=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(e=>e.charCodeAt(0)))});var $H,Kxt=ae(()=>{$H=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(e=>e.charCodeAt(0)))});function Dk(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=oXr.get(e))!==null&&t!==void 0?t:e}var MSe,oXr,LC,kSe=ae(()=>{oXr=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),LC=(MSe=String.fromCodePoint)!==null&&MSe!==void 0?MSe:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t}});function BSe(e){return e>=Ga.ZERO&&e<=Ga.NINE}function uXr(e){return e>=Ga.UPPER_A&&e<=Ga.UPPER_F||e>=Ga.LOWER_A&&e<=Ga.LOWER_F}function lXr(e){return e>=Ga.UPPER_A&&e<=Ga.UPPER_Z||e>=Ga.LOWER_A&&e<=Ga.LOWER_Z||BSe(e)}function dXr(e){return e===Ga.EQUALS||lXr(e)}function Gxt(e){let t="",r=new qH(e,n=>t+=LC(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){t+=s.slice(a,o),r.startEntity(i);let u=r.write(s,o+1);if(u<0){a=o+r.end();break}a=o+u,o=u===0?a+1:a}let c=t+s.slice(a);return t="",c}}function USe(e,t,r,n){let s=(t&jd.BRANCH_LENGTH)>>7,i=t&jd.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:e[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=e[c];if(un)o=c-1;else return e[c+s]}return-1}var Ga,cXr,jd,Ka,Ig,qH,l_s,d_s,Pk=ae(()=>{jxt();Kxt();kSe();kSe();(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(Ga||(Ga={}));cXr=32;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(jd||(jd={}));(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(Ka||(Ka={}));(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(Ig||(Ig={}));qH=class{constructor(t,r,n){this.decodeTree=t,this.emitCodePoint=r,this.errors=n,this.state=Ka.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Ig.Strict}startEntity(t){this.decodeMode=t,this.state=Ka.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,r){switch(this.state){case Ka.EntityStart:return t.charCodeAt(r)===Ga.NUM?(this.state=Ka.NumericStart,this.consumed+=1,this.stateNumericStart(t,r+1)):(this.state=Ka.NamedEntity,this.stateNamedEntity(t,r));case Ka.NumericStart:return this.stateNumericStart(t,r);case Ka.NumericDecimal:return this.stateNumericDecimal(t,r);case Ka.NumericHex:return this.stateNumericHex(t,r);case Ka.NamedEntity:return this.stateNamedEntity(t,r)}}stateNumericStart(t,r){return r>=t.length?-1:(t.charCodeAt(r)|cXr)===Ga.LOWER_X?(this.state=Ka.NumericHex,this.consumed+=1,this.stateNumericHex(t,r+1)):(this.state=Ka.NumericDecimal,this.stateNumericDecimal(t,r))}addToNumericResult(t,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(t.substr(r,i),s),this.consumed+=i}}stateNumericHex(t,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Ga.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Ig.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;let{result:r,decodeTree:n}=this,s=(n[r]&jd.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[t]&~jd.VALUE_LENGTH:s[t+1],n),r===3&&this.emitCodePoint(s[t+2],n),n}end(){var t;switch(this.state){case Ka.NamedEntity:return this.result!==0&&(this.decodeMode!==Ig.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Ka.NumericDecimal:return this.emitNumericEntity(0,2);case Ka.NumericHex:return this.emitNumericEntity(0,3);case Ka.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Ka.EntityStart:return 0}}};l_s=Gxt(FH),d_s=Gxt($H)});function HH(e){for(let t=1;t{fXr=new Map(HH([[9," "],[0," "],[22,"!"],[0,"""],[0,"#"],[0,"$"],[0,"%"],[0,"&"],[0,"'"],[0,"("],[0,")"],[0,"*"],[0,"+"],[0,","],[1,"."],[0,"/"],[10,":"],[0,";"],[0,{v:"<",n:8402,o:"<⃒"}],[0,{v:"=",n:8421,o:"=⃥"}],[0,{v:">",n:8402,o:">⃒"}],[0,"?"],[0,"@"],[26,"["],[0,"\"],[0,"]"],[0,"^"],[0,"_"],[0,"`"],[5,{n:106,o:"fj"}],[20,"{"],[0,"|"],[0,"}"],[34," "],[0,"¡"],[0,"¢"],[0,"£"],[0,"¤"],[0,"¥"],[0,"¦"],[0,"§"],[0,"¨"],[0,"©"],[0,"ª"],[0,"«"],[0,"¬"],[0,"­"],[0,"®"],[0,"¯"],[0,"°"],[0,"±"],[0,"²"],[0,"³"],[0,"´"],[0,"µ"],[0,"¶"],[0,"·"],[0,"¸"],[0,"¹"],[0,"º"],[0,"»"],[0,"¼"],[0,"½"],[0,"¾"],[0,"¿"],[0,"À"],[0,"Á"],[0,"Â"],[0,"Ã"],[0,"Ä"],[0,"Å"],[0,"Æ"],[0,"Ç"],[0,"È"],[0,"É"],[0,"Ê"],[0,"Ë"],[0,"Ì"],[0,"Í"],[0,"Î"],[0,"Ï"],[0,"Ð"],[0,"Ñ"],[0,"Ò"],[0,"Ó"],[0,"Ô"],[0,"Õ"],[0,"Ö"],[0,"×"],[0,"Ø"],[0,"Ù"],[0,"Ú"],[0,"Û"],[0,"Ü"],[0,"Ý"],[0,"Þ"],[0,"ß"],[0,"à"],[0,"á"],[0,"â"],[0,"ã"],[0,"ä"],[0,"å"],[0,"æ"],[0,"ç"],[0,"è"],[0,"é"],[0,"ê"],[0,"ë"],[0,"ì"],[0,"í"],[0,"î"],[0,"ï"],[0,"ð"],[0,"ñ"],[0,"ò"],[0,"ó"],[0,"ô"],[0,"õ"],[0,"ö"],[0,"÷"],[0,"ø"],[0,"ù"],[0,"ú"],[0,"û"],[0,"ü"],[0,"ý"],[0,"þ"],[0,"ÿ"],[0,"Ā"],[0,"ā"],[0,"Ă"],[0,"ă"],[0,"Ą"],[0,"ą"],[0,"Ć"],[0,"ć"],[0,"Ĉ"],[0,"ĉ"],[0,"Ċ"],[0,"ċ"],[0,"Č"],[0,"č"],[0,"Ď"],[0,"ď"],[0,"Đ"],[0,"đ"],[0,"Ē"],[0,"ē"],[2,"Ė"],[0,"ė"],[0,"Ę"],[0,"ę"],[0,"Ě"],[0,"ě"],[0,"Ĝ"],[0,"ĝ"],[0,"Ğ"],[0,"ğ"],[0,"Ġ"],[0,"ġ"],[0,"Ģ"],[1,"Ĥ"],[0,"ĥ"],[0,"Ħ"],[0,"ħ"],[0,"Ĩ"],[0,"ĩ"],[0,"Ī"],[0,"ī"],[2,"Į"],[0,"į"],[0,"İ"],[0,"ı"],[0,"IJ"],[0,"ij"],[0,"Ĵ"],[0,"ĵ"],[0,"Ķ"],[0,"ķ"],[0,"ĸ"],[0,"Ĺ"],[0,"ĺ"],[0,"Ļ"],[0,"ļ"],[0,"Ľ"],[0,"ľ"],[0,"Ŀ"],[0,"ŀ"],[0,"Ł"],[0,"ł"],[0,"Ń"],[0,"ń"],[0,"Ņ"],[0,"ņ"],[0,"Ň"],[0,"ň"],[0,"ʼn"],[0,"Ŋ"],[0,"ŋ"],[0,"Ō"],[0,"ō"],[2,"Ő"],[0,"ő"],[0,"Œ"],[0,"œ"],[0,"Ŕ"],[0,"ŕ"],[0,"Ŗ"],[0,"ŗ"],[0,"Ř"],[0,"ř"],[0,"Ś"],[0,"ś"],[0,"Ŝ"],[0,"ŝ"],[0,"Ş"],[0,"ş"],[0,"Š"],[0,"š"],[0,"Ţ"],[0,"ţ"],[0,"Ť"],[0,"ť"],[0,"Ŧ"],[0,"ŧ"],[0,"Ũ"],[0,"ũ"],[0,"Ū"],[0,"ū"],[0,"Ŭ"],[0,"ŭ"],[0,"Ů"],[0,"ů"],[0,"Ű"],[0,"ű"],[0,"Ų"],[0,"ų"],[0,"Ŵ"],[0,"ŵ"],[0,"Ŷ"],[0,"ŷ"],[0,"Ÿ"],[0,"Ź"],[0,"ź"],[0,"Ż"],[0,"ż"],[0,"Ž"],[0,"ž"],[19,"ƒ"],[34,"Ƶ"],[63,"ǵ"],[65,"ȷ"],[142,"ˆ"],[0,"ˇ"],[16,"˘"],[0,"˙"],[0,"˚"],[0,"˛"],[0,"˜"],[0,"˝"],[51,"̑"],[127,"Α"],[0,"Β"],[0,"Γ"],[0,"Δ"],[0,"Ε"],[0,"Ζ"],[0,"Η"],[0,"Θ"],[0,"Ι"],[0,"Κ"],[0,"Λ"],[0,"Μ"],[0,"Ν"],[0,"Ξ"],[0,"Ο"],[0,"Π"],[0,"Ρ"],[1,"Σ"],[0,"Τ"],[0,"Υ"],[0,"Φ"],[0,"Χ"],[0,"Ψ"],[0,"Ω"],[7,"α"],[0,"β"],[0,"γ"],[0,"δ"],[0,"ε"],[0,"ζ"],[0,"η"],[0,"θ"],[0,"ι"],[0,"κ"],[0,"λ"],[0,"μ"],[0,"ν"],[0,"ξ"],[0,"ο"],[0,"π"],[0,"ρ"],[0,"ς"],[0,"σ"],[0,"τ"],[0,"υ"],[0,"φ"],[0,"χ"],[0,"ψ"],[0,"ω"],[7,"ϑ"],[0,"ϒ"],[2,"ϕ"],[0,"ϖ"],[5,"Ϝ"],[0,"ϝ"],[18,"ϰ"],[0,"ϱ"],[3,"ϵ"],[0,"϶"],[10,"Ё"],[0,"Ђ"],[0,"Ѓ"],[0,"Є"],[0,"Ѕ"],[0,"І"],[0,"Ї"],[0,"Ј"],[0,"Љ"],[0,"Њ"],[0,"Ћ"],[0,"Ќ"],[1,"Ў"],[0,"Џ"],[0,"А"],[0,"Б"],[0,"В"],[0,"Г"],[0,"Д"],[0,"Е"],[0,"Ж"],[0,"З"],[0,"И"],[0,"Й"],[0,"К"],[0,"Л"],[0,"М"],[0,"Н"],[0,"О"],[0,"П"],[0,"Р"],[0,"С"],[0,"Т"],[0,"У"],[0,"Ф"],[0,"Х"],[0,"Ц"],[0,"Ч"],[0,"Ш"],[0,"Щ"],[0,"Ъ"],[0,"Ы"],[0,"Ь"],[0,"Э"],[0,"Ю"],[0,"Я"],[0,"а"],[0,"б"],[0,"в"],[0,"г"],[0,"д"],[0,"е"],[0,"ж"],[0,"з"],[0,"и"],[0,"й"],[0,"к"],[0,"л"],[0,"м"],[0,"н"],[0,"о"],[0,"п"],[0,"р"],[0,"с"],[0,"т"],[0,"у"],[0,"ф"],[0,"х"],[0,"ц"],[0,"ч"],[0,"ш"],[0,"щ"],[0,"ъ"],[0,"ы"],[0,"ь"],[0,"э"],[0,"ю"],[0,"я"],[1,"ё"],[0,"ђ"],[0,"ѓ"],[0,"є"],[0,"ѕ"],[0,"і"],[0,"ї"],[0,"ј"],[0,"љ"],[0,"њ"],[0,"ћ"],[0,"ќ"],[1,"ў"],[0,"џ"],[7074," "],[0," "],[0," "],[0," "],[1," "],[0," "],[0," "],[0," "],[0,"​"],[0,"‌"],[0,"‍"],[0,"‎"],[0,"‏"],[0,"‐"],[2,"–"],[0,"—"],[0,"―"],[0,"‖"],[1,"‘"],[0,"’"],[0,"‚"],[1,"“"],[0,"”"],[0,"„"],[1,"†"],[0,"‡"],[0,"•"],[2,"‥"],[0,"…"],[9,"‰"],[0,"‱"],[0,"′"],[0,"″"],[0,"‴"],[0,"‵"],[3,"‹"],[0,"›"],[3,"‾"],[2,"⁁"],[1,"⁃"],[0,"⁄"],[10,"⁏"],[7,"⁗"],[7,{v:" ",n:8202,o:"  "}],[0,"⁠"],[0,"⁡"],[0,"⁢"],[0,"⁣"],[72,"€"],[46,"⃛"],[0,"⃜"],[37,"ℂ"],[2,"℅"],[4,"ℊ"],[0,"ℋ"],[0,"ℌ"],[0,"ℍ"],[0,"ℎ"],[0,"ℏ"],[0,"ℐ"],[0,"ℑ"],[0,"ℒ"],[0,"ℓ"],[1,"ℕ"],[0,"№"],[0,"℗"],[0,"℘"],[0,"ℙ"],[0,"ℚ"],[0,"ℛ"],[0,"ℜ"],[0,"ℝ"],[0,"℞"],[3,"™"],[1,"ℤ"],[2,"℧"],[0,"ℨ"],[0,"℩"],[2,"ℬ"],[0,"ℭ"],[1,"ℯ"],[0,"ℰ"],[0,"ℱ"],[1,"ℳ"],[0,"ℴ"],[0,"ℵ"],[0,"ℶ"],[0,"ℷ"],[0,"ℸ"],[12,"ⅅ"],[0,"ⅆ"],[0,"ⅇ"],[0,"ⅈ"],[10,"⅓"],[0,"⅔"],[0,"⅕"],[0,"⅖"],[0,"⅗"],[0,"⅘"],[0,"⅙"],[0,"⅚"],[0,"⅛"],[0,"⅜"],[0,"⅝"],[0,"⅞"],[49,"←"],[0,"↑"],[0,"→"],[0,"↓"],[0,"↔"],[0,"↕"],[0,"↖"],[0,"↗"],[0,"↘"],[0,"↙"],[0,"↚"],[0,"↛"],[1,{v:"↝",n:824,o:"↝̸"}],[0,"↞"],[0,"↟"],[0,"↠"],[0,"↡"],[0,"↢"],[0,"↣"],[0,"↤"],[0,"↥"],[0,"↦"],[0,"↧"],[1,"↩"],[0,"↪"],[0,"↫"],[0,"↬"],[0,"↭"],[0,"↮"],[1,"↰"],[0,"↱"],[0,"↲"],[0,"↳"],[1,"↵"],[0,"↶"],[0,"↷"],[2,"↺"],[0,"↻"],[0,"↼"],[0,"↽"],[0,"↾"],[0,"↿"],[0,"⇀"],[0,"⇁"],[0,"⇂"],[0,"⇃"],[0,"⇄"],[0,"⇅"],[0,"⇆"],[0,"⇇"],[0,"⇈"],[0,"⇉"],[0,"⇊"],[0,"⇋"],[0,"⇌"],[0,"⇍"],[0,"⇎"],[0,"⇏"],[0,"⇐"],[0,"⇑"],[0,"⇒"],[0,"⇓"],[0,"⇔"],[0,"⇕"],[0,"⇖"],[0,"⇗"],[0,"⇘"],[0,"⇙"],[0,"⇚"],[0,"⇛"],[1,"⇝"],[6,"⇤"],[0,"⇥"],[15,"⇵"],[7,"⇽"],[0,"⇾"],[0,"⇿"],[0,"∀"],[0,"∁"],[0,{v:"∂",n:824,o:"∂̸"}],[0,"∃"],[0,"∄"],[0,"∅"],[1,"∇"],[0,"∈"],[0,"∉"],[1,"∋"],[0,"∌"],[2,"∏"],[0,"∐"],[0,"∑"],[0,"−"],[0,"∓"],[0,"∔"],[1,"∖"],[0,"∗"],[0,"∘"],[1,"√"],[2,"∝"],[0,"∞"],[0,"∟"],[0,{v:"∠",n:8402,o:"∠⃒"}],[0,"∡"],[0,"∢"],[0,"∣"],[0,"∤"],[0,"∥"],[0,"∦"],[0,"∧"],[0,"∨"],[0,{v:"∩",n:65024,o:"∩︀"}],[0,{v:"∪",n:65024,o:"∪︀"}],[0,"∫"],[0,"∬"],[0,"∭"],[0,"∮"],[0,"∯"],[0,"∰"],[0,"∱"],[0,"∲"],[0,"∳"],[0,"∴"],[0,"∵"],[0,"∶"],[0,"∷"],[0,"∸"],[1,"∺"],[0,"∻"],[0,{v:"∼",n:8402,o:"∼⃒"}],[0,{v:"∽",n:817,o:"∽̱"}],[0,{v:"∾",n:819,o:"∾̳"}],[0,"∿"],[0,"≀"],[0,"≁"],[0,{v:"≂",n:824,o:"≂̸"}],[0,"≃"],[0,"≄"],[0,"≅"],[0,"≆"],[0,"≇"],[0,"≈"],[0,"≉"],[0,"≊"],[0,{v:"≋",n:824,o:"≋̸"}],[0,"≌"],[0,{v:"≍",n:8402,o:"≍⃒"}],[0,{v:"≎",n:824,o:"≎̸"}],[0,{v:"≏",n:824,o:"≏̸"}],[0,{v:"≐",n:824,o:"≐̸"}],[0,"≑"],[0,"≒"],[0,"≓"],[0,"≔"],[0,"≕"],[0,"≖"],[0,"≗"],[1,"≙"],[0,"≚"],[1,"≜"],[2,"≟"],[0,"≠"],[0,{v:"≡",n:8421,o:"≡⃥"}],[0,"≢"],[1,{v:"≤",n:8402,o:"≤⃒"}],[0,{v:"≥",n:8402,o:"≥⃒"}],[0,{v:"≦",n:824,o:"≦̸"}],[0,{v:"≧",n:824,o:"≧̸"}],[0,{v:"≨",n:65024,o:"≨︀"}],[0,{v:"≩",n:65024,o:"≩︀"}],[0,{v:"≪",n:new Map(HH([[824,"≪̸"],[7577,"≪⃒"]]))}],[0,{v:"≫",n:new Map(HH([[824,"≫̸"],[7577,"≫⃒"]]))}],[0,"≬"],[0,"≭"],[0,"≮"],[0,"≯"],[0,"≰"],[0,"≱"],[0,"≲"],[0,"≳"],[0,"≴"],[0,"≵"],[0,"≶"],[0,"≷"],[0,"≸"],[0,"≹"],[0,"≺"],[0,"≻"],[0,"≼"],[0,"≽"],[0,"≾"],[0,{v:"≿",n:824,o:"≿̸"}],[0,"⊀"],[0,"⊁"],[0,{v:"⊂",n:8402,o:"⊂⃒"}],[0,{v:"⊃",n:8402,o:"⊃⃒"}],[0,"⊄"],[0,"⊅"],[0,"⊆"],[0,"⊇"],[0,"⊈"],[0,"⊉"],[0,{v:"⊊",n:65024,o:"⊊︀"}],[0,{v:"⊋",n:65024,o:"⊋︀"}],[1,"⊍"],[0,"⊎"],[0,{v:"⊏",n:824,o:"⊏̸"}],[0,{v:"⊐",n:824,o:"⊐̸"}],[0,"⊑"],[0,"⊒"],[0,{v:"⊓",n:65024,o:"⊓︀"}],[0,{v:"⊔",n:65024,o:"⊔︀"}],[0,"⊕"],[0,"⊖"],[0,"⊗"],[0,"⊘"],[0,"⊙"],[0,"⊚"],[0,"⊛"],[1,"⊝"],[0,"⊞"],[0,"⊟"],[0,"⊠"],[0,"⊡"],[0,"⊢"],[0,"⊣"],[0,"⊤"],[0,"⊥"],[1,"⊧"],[0,"⊨"],[0,"⊩"],[0,"⊪"],[0,"⊫"],[0,"⊬"],[0,"⊭"],[0,"⊮"],[0,"⊯"],[0,"⊰"],[1,"⊲"],[0,"⊳"],[0,{v:"⊴",n:8402,o:"⊴⃒"}],[0,{v:"⊵",n:8402,o:"⊵⃒"}],[0,"⊶"],[0,"⊷"],[0,"⊸"],[0,"⊹"],[0,"⊺"],[0,"⊻"],[1,"⊽"],[0,"⊾"],[0,"⊿"],[0,"⋀"],[0,"⋁"],[0,"⋂"],[0,"⋃"],[0,"⋄"],[0,"⋅"],[0,"⋆"],[0,"⋇"],[0,"⋈"],[0,"⋉"],[0,"⋊"],[0,"⋋"],[0,"⋌"],[0,"⋍"],[0,"⋎"],[0,"⋏"],[0,"⋐"],[0,"⋑"],[0,"⋒"],[0,"⋓"],[0,"⋔"],[0,"⋕"],[0,"⋖"],[0,"⋗"],[0,{v:"⋘",n:824,o:"⋘̸"}],[0,{v:"⋙",n:824,o:"⋙̸"}],[0,{v:"⋚",n:65024,o:"⋚︀"}],[0,{v:"⋛",n:65024,o:"⋛︀"}],[2,"⋞"],[0,"⋟"],[0,"⋠"],[0,"⋡"],[0,"⋢"],[0,"⋣"],[2,"⋦"],[0,"⋧"],[0,"⋨"],[0,"⋩"],[0,"⋪"],[0,"⋫"],[0,"⋬"],[0,"⋭"],[0,"⋮"],[0,"⋯"],[0,"⋰"],[0,"⋱"],[0,"⋲"],[0,"⋳"],[0,"⋴"],[0,{v:"⋵",n:824,o:"⋵̸"}],[0,"⋶"],[0,"⋷"],[1,{v:"⋹",n:824,o:"⋹̸"}],[0,"⋺"],[0,"⋻"],[0,"⋼"],[0,"⋽"],[0,"⋾"],[6,"⌅"],[0,"⌆"],[1,"⌈"],[0,"⌉"],[0,"⌊"],[0,"⌋"],[0,"⌌"],[0,"⌍"],[0,"⌎"],[0,"⌏"],[0,"⌐"],[1,"⌒"],[0,"⌓"],[1,"⌕"],[0,"⌖"],[5,"⌜"],[0,"⌝"],[0,"⌞"],[0,"⌟"],[2,"⌢"],[0,"⌣"],[9,"⌭"],[0,"⌮"],[7,"⌶"],[6,"⌽"],[1,"⌿"],[60,"⍼"],[51,"⎰"],[0,"⎱"],[2,"⎴"],[0,"⎵"],[0,"⎶"],[37,"⏜"],[0,"⏝"],[0,"⏞"],[0,"⏟"],[2,"⏢"],[4,"⏧"],[59,"␣"],[164,"Ⓢ"],[55,"─"],[1,"│"],[9,"┌"],[3,"┐"],[3,"└"],[3,"┘"],[3,"├"],[7,"┤"],[7,"┬"],[7,"┴"],[7,"┼"],[19,"═"],[0,"║"],[0,"╒"],[0,"╓"],[0,"╔"],[0,"╕"],[0,"╖"],[0,"╗"],[0,"╘"],[0,"╙"],[0,"╚"],[0,"╛"],[0,"╜"],[0,"╝"],[0,"╞"],[0,"╟"],[0,"╠"],[0,"╡"],[0,"╢"],[0,"╣"],[0,"╤"],[0,"╥"],[0,"╦"],[0,"╧"],[0,"╨"],[0,"╩"],[0,"╪"],[0,"╫"],[0,"╬"],[19,"▀"],[3,"▄"],[3,"█"],[8,"░"],[0,"▒"],[0,"▓"],[13,"□"],[8,"▪"],[0,"▫"],[1,"▭"],[0,"▮"],[2,"▱"],[1,"△"],[0,"▴"],[0,"▵"],[2,"▸"],[0,"▹"],[3,"▽"],[0,"▾"],[0,"▿"],[2,"◂"],[0,"◃"],[6,"◊"],[0,"○"],[32,"◬"],[2,"◯"],[8,"◸"],[0,"◹"],[0,"◺"],[0,"◻"],[0,"◼"],[8,"★"],[0,"☆"],[7,"☎"],[49,"♀"],[1,"♂"],[29,"♠"],[2,"♣"],[1,"♥"],[0,"♦"],[3,"♪"],[2,"♭"],[0,"♮"],[0,"♯"],[163,"✓"],[3,"✗"],[8,"✠"],[21,"✶"],[33,"❘"],[25,"❲"],[0,"❳"],[84,"⟈"],[0,"⟉"],[28,"⟦"],[0,"⟧"],[0,"⟨"],[0,"⟩"],[0,"⟪"],[0,"⟫"],[0,"⟬"],[0,"⟭"],[7,"⟵"],[0,"⟶"],[0,"⟷"],[0,"⟸"],[0,"⟹"],[0,"⟺"],[1,"⟼"],[2,"⟿"],[258,"⤂"],[0,"⤃"],[0,"⤄"],[0,"⤅"],[6,"⤌"],[0,"⤍"],[0,"⤎"],[0,"⤏"],[0,"⤐"],[0,"⤑"],[0,"⤒"],[0,"⤓"],[2,"⤖"],[2,"⤙"],[0,"⤚"],[0,"⤛"],[0,"⤜"],[0,"⤝"],[0,"⤞"],[0,"⤟"],[0,"⤠"],[2,"⤣"],[0,"⤤"],[0,"⤥"],[0,"⤦"],[0,"⤧"],[0,"⤨"],[0,"⤩"],[0,"⤪"],[8,{v:"⤳",n:824,o:"⤳̸"}],[1,"⤵"],[0,"⤶"],[0,"⤷"],[0,"⤸"],[0,"⤹"],[2,"⤼"],[0,"⤽"],[7,"⥅"],[2,"⥈"],[0,"⥉"],[0,"⥊"],[0,"⥋"],[2,"⥎"],[0,"⥏"],[0,"⥐"],[0,"⥑"],[0,"⥒"],[0,"⥓"],[0,"⥔"],[0,"⥕"],[0,"⥖"],[0,"⥗"],[0,"⥘"],[0,"⥙"],[0,"⥚"],[0,"⥛"],[0,"⥜"],[0,"⥝"],[0,"⥞"],[0,"⥟"],[0,"⥠"],[0,"⥡"],[0,"⥢"],[0,"⥣"],[0,"⥤"],[0,"⥥"],[0,"⥦"],[0,"⥧"],[0,"⥨"],[0,"⥩"],[0,"⥪"],[0,"⥫"],[0,"⥬"],[0,"⥭"],[0,"⥮"],[0,"⥯"],[0,"⥰"],[0,"⥱"],[0,"⥲"],[0,"⥳"],[0,"⥴"],[0,"⥵"],[0,"⥶"],[1,"⥸"],[0,"⥹"],[1,"⥻"],[0,"⥼"],[0,"⥽"],[0,"⥾"],[0,"⥿"],[5,"⦅"],[0,"⦆"],[4,"⦋"],[0,"⦌"],[0,"⦍"],[0,"⦎"],[0,"⦏"],[0,"⦐"],[0,"⦑"],[0,"⦒"],[0,"⦓"],[0,"⦔"],[0,"⦕"],[0,"⦖"],[3,"⦚"],[1,"⦜"],[0,"⦝"],[6,"⦤"],[0,"⦥"],[0,"⦦"],[0,"⦧"],[0,"⦨"],[0,"⦩"],[0,"⦪"],[0,"⦫"],[0,"⦬"],[0,"⦭"],[0,"⦮"],[0,"⦯"],[0,"⦰"],[0,"⦱"],[0,"⦲"],[0,"⦳"],[0,"⦴"],[0,"⦵"],[0,"⦶"],[0,"⦷"],[1,"⦹"],[1,"⦻"],[0,"⦼"],[1,"⦾"],[0,"⦿"],[0,"⧀"],[0,"⧁"],[0,"⧂"],[0,"⧃"],[0,"⧄"],[0,"⧅"],[3,"⧉"],[3,"⧍"],[0,"⧎"],[0,{v:"⧏",n:824,o:"⧏̸"}],[0,{v:"⧐",n:824,o:"⧐̸"}],[11,"⧜"],[0,"⧝"],[0,"⧞"],[4,"⧣"],[0,"⧤"],[0,"⧥"],[5,"⧫"],[8,"⧴"],[1,"⧶"],[9,"⨀"],[0,"⨁"],[0,"⨂"],[1,"⨄"],[1,"⨆"],[5,"⨌"],[0,"⨍"],[2,"⨐"],[0,"⨑"],[0,"⨒"],[0,"⨓"],[0,"⨔"],[0,"⨕"],[0,"⨖"],[0,"⨗"],[10,"⨢"],[0,"⨣"],[0,"⨤"],[0,"⨥"],[0,"⨦"],[0,"⨧"],[1,"⨩"],[0,"⨪"],[2,"⨭"],[0,"⨮"],[0,"⨯"],[0,"⨰"],[0,"⨱"],[1,"⨳"],[0,"⨴"],[0,"⨵"],[0,"⨶"],[0,"⨷"],[0,"⨸"],[0,"⨹"],[0,"⨺"],[0,"⨻"],[0,"⨼"],[2,"⨿"],[0,"⩀"],[1,"⩂"],[0,"⩃"],[0,"⩄"],[0,"⩅"],[0,"⩆"],[0,"⩇"],[0,"⩈"],[0,"⩉"],[0,"⩊"],[0,"⩋"],[0,"⩌"],[0,"⩍"],[2,"⩐"],[2,"⩓"],[0,"⩔"],[0,"⩕"],[0,"⩖"],[0,"⩗"],[0,"⩘"],[1,"⩚"],[0,"⩛"],[0,"⩜"],[0,"⩝"],[1,"⩟"],[6,"⩦"],[3,"⩪"],[2,{v:"⩭",n:824,o:"⩭̸"}],[0,"⩮"],[0,"⩯"],[0,{v:"⩰",n:824,o:"⩰̸"}],[0,"⩱"],[0,"⩲"],[0,"⩳"],[0,"⩴"],[0,"⩵"],[1,"⩷"],[0,"⩸"],[0,"⩹"],[0,"⩺"],[0,"⩻"],[0,"⩼"],[0,{v:"⩽",n:824,o:"⩽̸"}],[0,{v:"⩾",n:824,o:"⩾̸"}],[0,"⩿"],[0,"⪀"],[0,"⪁"],[0,"⪂"],[0,"⪃"],[0,"⪄"],[0,"⪅"],[0,"⪆"],[0,"⪇"],[0,"⪈"],[0,"⪉"],[0,"⪊"],[0,"⪋"],[0,"⪌"],[0,"⪍"],[0,"⪎"],[0,"⪏"],[0,"⪐"],[0,"⪑"],[0,"⪒"],[0,"⪓"],[0,"⪔"],[0,"⪕"],[0,"⪖"],[0,"⪗"],[0,"⪘"],[0,"⪙"],[0,"⪚"],[2,"⪝"],[0,"⪞"],[0,"⪟"],[0,"⪠"],[0,{v:"⪡",n:824,o:"⪡̸"}],[0,{v:"⪢",n:824,o:"⪢̸"}],[1,"⪤"],[0,"⪥"],[0,"⪦"],[0,"⪧"],[0,"⪨"],[0,"⪩"],[0,"⪪"],[0,"⪫"],[0,{v:"⪬",n:65024,o:"⪬︀"}],[0,{v:"⪭",n:65024,o:"⪭︀"}],[0,"⪮"],[0,{v:"⪯",n:824,o:"⪯̸"}],[0,{v:"⪰",n:824,o:"⪰̸"}],[2,"⪳"],[0,"⪴"],[0,"⪵"],[0,"⪶"],[0,"⪷"],[0,"⪸"],[0,"⪹"],[0,"⪺"],[0,"⪻"],[0,"⪼"],[0,"⪽"],[0,"⪾"],[0,"⪿"],[0,"⫀"],[0,"⫁"],[0,"⫂"],[0,"⫃"],[0,"⫄"],[0,{v:"⫅",n:824,o:"⫅̸"}],[0,{v:"⫆",n:824,o:"⫆̸"}],[0,"⫇"],[0,"⫈"],[2,{v:"⫋",n:65024,o:"⫋︀"}],[0,{v:"⫌",n:65024,o:"⫌︀"}],[2,"⫏"],[0,"⫐"],[0,"⫑"],[0,"⫒"],[0,"⫓"],[0,"⫔"],[0,"⫕"],[0,"⫖"],[0,"⫗"],[0,"⫘"],[0,"⫙"],[0,"⫚"],[0,"⫛"],[8,"⫤"],[1,"⫦"],[0,"⫧"],[0,"⫨"],[0,"⫩"],[1,"⫫"],[0,"⫬"],[0,"⫭"],[0,"⫮"],[0,"⫯"],[0,"⫰"],[0,"⫱"],[0,"⫲"],[0,"⫳"],[9,{v:"⫽",n:8421,o:"⫽⃥"}],[44343,{n:new Map(HH([[56476,"𝒜"],[1,"𝒞"],[0,"𝒟"],[2,"𝒢"],[2,"𝒥"],[0,"𝒦"],[2,"𝒩"],[0,"𝒪"],[0,"𝒫"],[0,"𝒬"],[1,"𝒮"],[0,"𝒯"],[0,"𝒰"],[0,"𝒱"],[0,"𝒲"],[0,"𝒳"],[0,"𝒴"],[0,"𝒵"],[0,"𝒶"],[0,"𝒷"],[0,"𝒸"],[0,"𝒹"],[1,"𝒻"],[1,"𝒽"],[0,"𝒾"],[0,"𝒿"],[0,"𝓀"],[0,"𝓁"],[0,"𝓂"],[0,"𝓃"],[1,"𝓅"],[0,"𝓆"],[0,"𝓇"],[0,"𝓈"],[0,"𝓉"],[0,"𝓊"],[0,"𝓋"],[0,"𝓌"],[0,"𝓍"],[0,"𝓎"],[0,"𝓏"],[52,"𝔄"],[0,"𝔅"],[1,"𝔇"],[0,"𝔈"],[0,"𝔉"],[0,"𝔊"],[2,"𝔍"],[0,"𝔎"],[0,"𝔏"],[0,"𝔐"],[0,"𝔑"],[0,"𝔒"],[0,"𝔓"],[0,"𝔔"],[1,"𝔖"],[0,"𝔗"],[0,"𝔘"],[0,"𝔙"],[0,"𝔚"],[0,"𝔛"],[0,"𝔜"],[1,"𝔞"],[0,"𝔟"],[0,"𝔠"],[0,"𝔡"],[0,"𝔢"],[0,"𝔣"],[0,"𝔤"],[0,"𝔥"],[0,"𝔦"],[0,"𝔧"],[0,"𝔨"],[0,"𝔩"],[0,"𝔪"],[0,"𝔫"],[0,"𝔬"],[0,"𝔭"],[0,"𝔮"],[0,"𝔯"],[0,"𝔰"],[0,"𝔱"],[0,"𝔲"],[0,"𝔳"],[0,"𝔴"],[0,"𝔵"],[0,"𝔶"],[0,"𝔷"],[0,"𝔸"],[0,"𝔹"],[1,"𝔻"],[0,"𝔼"],[0,"𝔽"],[0,"𝔾"],[1,"𝕀"],[0,"𝕁"],[0,"𝕂"],[0,"𝕃"],[0,"𝕄"],[1,"𝕆"],[3,"𝕊"],[0,"𝕋"],[0,"𝕌"],[0,"𝕍"],[0,"𝕎"],[0,"𝕏"],[0,"𝕐"],[1,"𝕒"],[0,"𝕓"],[0,"𝕔"],[0,"𝕕"],[0,"𝕖"],[0,"𝕗"],[0,"𝕘"],[0,"𝕙"],[0,"𝕚"],[0,"𝕛"],[0,"𝕜"],[0,"𝕝"],[0,"𝕞"],[0,"𝕟"],[0,"𝕠"],[0,"𝕡"],[0,"𝕢"],[0,"𝕣"],[0,"𝕤"],[0,"𝕥"],[0,"𝕦"],[0,"𝕧"],[0,"𝕨"],[0,"𝕩"],[0,"𝕪"],[0,"𝕫"]]))}],[8906,"ff"],[0,"fi"],[0,"fl"],[0,"ffi"],[0,"ffl"]]))});function Lk(e){let t="",r=0,n;for(;(n=FSe.exec(e))!==null;){let s=n.index,i=e.charCodeAt(s),a=Yxt.get(i);a!==void 0?(t+=e.substring(r,s)+a,r=s+1):(t+=`${e.substring(r,s)}&#x${Qxt(e,s).toString(16)};`,r=FSe.lastIndex+=+((i&64512)===55296))}return t+e.substr(r)}function $Se(e,t){return function(n){let s,i=0,a="";for(;s=e.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=t.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var FSe,Yxt,Qxt,Wxt,VH,jH,KH=ae(()=>{FSe=/["&'<>$\x80-\uFFFF]/g,Yxt=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),Qxt=String.prototype.codePointAt!=null?(e,t)=>e.codePointAt(t):(e,t)=>(e.charCodeAt(t)&64512)===55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t);Wxt=$Se(/[&<>'"]/g,Yxt),VH=$Se(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),jH=$Se(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))});var qSe=ae(()=>{zxt();KH()});var Xxt,Jxt,twt=ae(()=>{Pk();qSe();KH();KH();qSe();Pk();(function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"})(Xxt||(Xxt={}));(function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"})(Jxt||(Jxt={}))});var rwt,nwt,swt=ae(()=>{rwt=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),nwt=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e]))});function mXr(e){return e.replace(/"/g,""")}function gXr(e,t){var r;if(!e)return;let n=((r=t.encodeEntities)!==null&&r!==void 0?r:t.decodeEntities)===!1?mXr:t.xmlMode||t.encodeEntities!=="utf8"?Lk:VH;return Object.keys(e).map(s=>{var i,a;let o=(i=e[s])!==null&&i!==void 0?i:"";return t.xmlMode==="foreign"&&(s=(a=nwt.get(s))!==null&&a!==void 0?a:s),!t.emptyAttrs&&!t.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}function jSe(e,t={}){let r="length"in e?e:[e],n="";for(let s=0;s0&&(n+=jSe(e.children,t)),(t.xmlMode||!iwt.has(e.name))&&(n+=``)),n}function vXr(e){return`<${e.data}>`}function SXr(e,t){var r;let n=e.data||"";return((r=t.encodeEntities)!==null&&r!==void 0?r:t.decodeEntities)!==!1&&!(!t.xmlMode&&e.parent&&pXr.has(e.parent.name))&&(n=t.xmlMode||t.encodeEntities!=="utf8"?Lk(n):jH(n)),n}function TXr(e){return``}function bXr(e){return``}var pXr,iwt,GH,AXr,EXr,KSe=ae(()=>{OC();twt();swt();pXr=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);iwt=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);GH=jSe;AXr=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),EXr=new Set(["svg","math"])});function awt(e,t){return GH(e,t)}function IXr(e,t){return ps(e)?e.children.map(r=>awt(r,t)).join(""):""}function zH(e){return Array.isArray(e)?e.map(zH).join(""):bt(e)?e.name==="br"?` -`:zH(e.children):DC(e)?zH(e.children):Gu(e)?e.data:""}function Rg(e){return Array.isArray(e)?e.map(Rg).join(""):ps(e)&&!gT(e)?Rg(e.children):Gu(e)?e.data:""}function Mk(e){return Array.isArray(e)?e.map(Mk).join(""):ps(e)&&(e.type===Tn.Tag||DC(e))?Mk(e.children):Gu(e)?e.data:""}var GSe=ae(()=>{tc();KSe();OC()});function MC(e){return ps(e)?e.children:[]}function owt(e){return e.parent||null}function zSe(e){let t=owt(e);if(t!=null)return MC(t);let r=[e],{prev:n,next:s}=e;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function RXr(e,t){var r;return(r=e.attribs)===null||r===void 0?void 0:r[t]}function CXr(e,t){return e.attribs!=null&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&e.attribs[t]!=null}function xXr(e){return e.name}function YH(e){let{next:t}=e;for(;t!==null&&!bt(t);)({next:t}=t);return t}function QH(e){let{prev:t}=e;for(;t!==null&&!bt(t);)({prev:t}=t);return t}var cwt=ae(()=>{tc()});function Cg(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){let t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}function wXr(e,t){let r=t.prev=e.prev;r&&(r.next=t);let n=t.next=e.next;n&&(n.prev=t);let s=t.parent=e.parent;if(s){let i=s.children;i[i.lastIndexOf(e)]=t,e.parent=null}}function NXr(e,t){if(Cg(t),t.next=null,t.parent=e,e.children.push(t)>1){let r=e.children[e.children.length-2];r.next=t,t.prev=r}else t.prev=null}function OXr(e,t){Cg(t);let{parent:r}=e,n=e.next;if(t.next=n,t.prev=e,e.next=t,t.parent=r,n){if(n.prev=t,r){let s=r.children;s.splice(s.lastIndexOf(n),0,t)}}else r&&r.children.push(t)}function DXr(e,t){if(Cg(t),t.parent=e,t.prev=null,e.children.unshift(t)!==1){let r=e.children[1];r.prev=t,t.next=r}else t.next=null}function PXr(e,t){Cg(t);let{parent:r}=e;if(r){let n=r.children;n.splice(n.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=r,t.prev=e.prev,t.next=e,e.prev=t}var uwt=ae(()=>{});function kC(e,t,r=!0,n=1/0){return WH(e,Array.isArray(t)?t:[t],r,n)}function WH(e,t,r,n){let s=[],i=[Array.isArray(t)?t:[t]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(e(o)&&(s.push(o),--n<=0))return s;r&&ps(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function LXr(e,t){return t.find(e)}function XH(e,t,r=!0){let n=Array.isArray(t)?t:[t];for(let s=0;s0){let a=XH(e,i.children,!0);if(a)return a}}return null}function lwt(e,t){return(Array.isArray(t)?t:[t]).some(r=>bt(r)&&e(r)||ps(r)&&lwt(e,r.children))}function MXr(e,t){let r=[],n=[Array.isArray(t)?t:[t]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];bt(i)&&e(i)&&r.push(i),ps(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var YSe=ae(()=>{tc()});function QSe(e,t){return typeof t=="function"?r=>bt(r)&&t(r.attribs[e]):r=>bt(r)&&r.attribs[e]===t}function kXr(e,t){return r=>e(r)||t(r)}function dwt(e){let t=Object.keys(e).map(r=>{let n=e[r];return Object.prototype.hasOwnProperty.call(JH,r)?JH[r](n):QSe(r,n)});return t.length===0?null:t.reduce(kXr)}function BXr(e,t){let r=dwt(e);return r?r(t):!0}function UXr(e,t,r,n=1/0){let s=dwt(e);return s?kC(s,t,r,n):[]}function FXr(e,t,r=!0){return Array.isArray(t)||(t=[t]),XH(QSe("id",e),t,r)}function _T(e,t,r=!0,n=1/0){return kC(JH.tag_name(e),t,r,n)}function $Xr(e,t,r=!0,n=1/0){return kC(QSe("class",e),t,r,n)}function qXr(e,t,r=!0,n=1/0){return kC(JH.tag_type(e),t,r,n)}var JH,WSe=ae(()=>{tc();YSe();JH={tag_name(e){return typeof e=="function"?t=>bt(t)&&e(t.name):e==="*"?bt:t=>bt(t)&&t.name===e},tag_type(e){return typeof e=="function"?t=>e(t.type):t=>t.type===e},tag_contains(e){return typeof e=="function"?t=>Gu(t)&&e(t.data):t=>Gu(t)&&t.data===e}}});function HXr(e){let t=e.length;for(;--t>=0;){let r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0){e.splice(t,1);continue}for(let n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e}function fwt(e,t){let r=[],n=[];if(e===t)return 0;let s=ps(e)?e:e.parent;for(;s;)r.unshift(s),s=s.parent;for(s=ps(t)?t:t.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;ac.indexOf(l)?o===t?Kd.FOLLOWING|Kd.CONTAINED_BY:Kd.FOLLOWING:o===e?Kd.PRECEDING|Kd.CONTAINS:Kd.PRECEDING}function dE(e){return e=e.filter((t,r,n)=>!n.includes(t,r+1)),e.sort((t,r)=>{let n=fwt(t,r);return n&Kd.PRECEDING?-1:n&Kd.FOLLOWING?1:0}),e}var Kd,hwt=ae(()=>{tc();(function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"})(Kd||(Kd={}))});function XSe(e){let t=ZH(zXr,e);return t?t.name==="feed"?VXr(t):jXr(t):null}function VXr(e){var t;let r=e.children,n={type:"atom",items:_T("entry",r).map(a=>{var o;let{children:c}=a,u={media:pwt(c)};zu(u,"id","id",c),zu(u,"title","title",c);let l=(o=ZH("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=fE("summary",c)||fE("content",c);d&&(u.description=d);let f=fE("updated",c);return f&&(u.pubDate=new Date(f)),u})};zu(n,"id","id",r),zu(n,"title","title",r);let s=(t=ZH("link",r))===null||t===void 0?void 0:t.attribs.href;s&&(n.link=s),zu(n,"description","subtitle",r);let i=fE("updated",r);return i&&(n.updated=new Date(i)),zu(n,"author","email",r,!0),n}function jXr(e){var t,r;let n=(r=(t=ZH("channel",e.children))===null||t===void 0?void 0:t.children)!==null&&r!==void 0?r:[],s={type:e.name.substr(0,3),id:"",items:_T("item",e.children).map(a=>{let{children:o}=a,c={media:pwt(o)};zu(c,"id","guid",o),zu(c,"title","title",o),zu(c,"link","link",o),zu(c,"description","description",o);let u=fE("pubDate",o)||fE("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};zu(s,"title","title",n),zu(s,"link","link",n),zu(s,"description","description",n);let i=fE("lastBuildDate",n);return i&&(s.updated=new Date(i)),zu(s,"author","managingEditor",n,!0),s}function pwt(e){return _T("media:content",e).map(t=>{let{attribs:r}=t,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of KXr)r[s]&&(n[s]=r[s]);for(let s of GXr)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function ZH(e,t){return _T(e,t,!0,1)[0]}function fE(e,t,r=!1){return Rg(_T(e,t,r,1)).trim()}function zu(e,t,r,n,s=!1){let i=fE(r,n,s);i&&(e[t]=i)}function zXr(e){return e==="rss"||e==="feed"||e==="rdf:RDF"}var KXr,GXr,mwt=ae(()=>{GSe();WSe();KXr=["url","type","lang"],GXr=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"]});var hE={};Ft(hE,{DocumentPosition:()=>Kd,append:()=>OXr,appendChild:()=>NXr,compareDocumentPosition:()=>fwt,existsOne:()=>lwt,filter:()=>kC,find:()=>WH,findAll:()=>MXr,findOne:()=>XH,findOneChild:()=>LXr,getAttributeValue:()=>RXr,getChildren:()=>MC,getElementById:()=>FXr,getElements:()=>UXr,getElementsByClassName:()=>$Xr,getElementsByTagName:()=>_T,getElementsByTagType:()=>qXr,getFeed:()=>XSe,getInnerHTML:()=>IXr,getName:()=>xXr,getOuterHTML:()=>awt,getParent:()=>owt,getSiblings:()=>zSe,getText:()=>zH,hasAttrib:()=>CXr,hasChildren:()=>ps,innerText:()=>Mk,isCDATA:()=>DC,isComment:()=>gT,isDocument:()=>o0,isTag:()=>bt,isText:()=>Gu,nextElementSibling:()=>YH,prepend:()=>PXr,prependChild:()=>DXr,prevElementSibling:()=>QH,removeElement:()=>Cg,removeSubsets:()=>HXr,replaceElement:()=>wXr,testElement:()=>BXr,textContent:()=>Rg,uniqueSort:()=>dE});var c0=ae(()=>{GSe();cwt();uwt();YSe();WSe();hwt();mwt();tc()});var mE={};Ft(mE,{contains:()=>JSe,html:()=>Awt,merge:()=>XXr,parseHTML:()=>QXr,root:()=>WXr,text:()=>pE,xml:()=>Ewt});function _wt(e,t,r){return e?e(t??e._root.children,null,void 0,r).toString():""}function YXr(e,t){return!t&&typeof e=="object"&&e!=null&&!("length"in e)&&!("type"in e)}function Awt(e,t){let r=YXr(e)?(t=e,void 0):e,n={...Rk,...this===null||this===void 0?void 0:this._options,...Ck(t??{})};return _wt(this,r,n)}function Ewt(e){let t={...this._options,xmlMode:!0};return _wt(this,e,t)}function pE(e){let t=e||(this?this.root():[]),r="";for(let n=0;n{c0();DSe()});function Ul(e){return e.cheerio!=null}function ywt(e){return e.replace(/[_.-](\w|$)/g,(t,r)=>r.toUpperCase())}function vwt(e){return e.replace(/[A-Z]/g,"-$&").toLowerCase()}function xs(e,t){let r=e.length;for(let n=0;nOk(n,!0)):[Ok(e,!0)],r=new Bl(t);return t.forEach(n=>{n.parent=r}),t}function kk(e){let t=e.indexOf("<");if(t<0||t>e.length-3)return!1;let r=e.charCodeAt(t+1);return(r>=ET.LowerA&&r<=ET.LowerZ||r>=ET.UpperA&&r<=ET.UpperZ||r===ET.Exclamation)&&e.includes(">",t+2)}var ET,yT=ae(()=>{tc();tc();(function(e){e[e.LowerA=97]="LowerA",e[e.LowerZ=122]="LowerZ",e[e.UpperA=65]="UpperA",e[e.UpperZ=90]="UpperZ",e[e.Exclamation=33]="Exclamation"})(ET||(ET={}))});var rTe={};Ft(rTe,{addClass:()=>Cwt,attr:()=>ZXr,data:()=>tJr,hasClass:()=>sJr,prop:()=>eJr,removeAttr:()=>nJr,removeClass:()=>xwt,toggleClass:()=>wwt,val:()=>rJr});function tV(e,t,r){var n;if(!(!e||!bt(e))){if((n=e.attribs)!==null&&n!==void 0||(e.attribs={}),!t)return e.attribs;if(BC.call(e.attribs,t))return!r&&tTe.test(t)?t:e.attribs[t];if(e.name==="option"&&t==="value")return pE(e.children);if(e.name==="input"&&(e.attribs.type==="radio"||e.attribs.type==="checkbox")&&t==="value")return"on"}}function UC(e,t,r){r===null?Rwt(e,t):e.attribs[t]=`${r}`}function ZXr(e,t){if(typeof e=="object"||t!==void 0){if(typeof t=="function"){if(typeof e!="string")throw new Error("Bad combination of arguments.");return xs(this,(r,n)=>{bt(r)&&UC(r,e,t.call(r,n,r.attribs[e]))})}return xs(this,r=>{bt(r)&&(typeof e=="object"?Object.keys(e).forEach(n=>{let s=e[n];UC(r,n,s)}):UC(r,e,t))})}return arguments.length>1?this:tV(this[0],e,this.options.xmlMode)}function Twt(e,t,r){return t in e?e[t]:!r&&tTe.test(t)?tV(e,t,!1)!==void 0:tV(e,t,r)}function eTe(e,t,r,n){t in e?e[t]=r:UC(e,t,!n&&tTe.test(t)?r?"":null:`${r}`)}function eJr(e,t){var r;if(typeof e=="string"&&t===void 0){let n=this[0];if(!n||!bt(n))return;switch(e){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[e];return typeof URL<"u"&&(e==="href"&&(n.tagName==="a"||n.name==="link")||e==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return Mk(n);case"textContent":return Rg(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return Twt(n,e,this.options.xmlMode)}}if(typeof e=="object"||t!==void 0){if(typeof t=="function"){if(typeof e=="object")throw new Error("Bad combination of arguments.");return xs(this,(n,s)=>{bt(n)&&eTe(n,e,t.call(n,s,Twt(n,e,this.options.xmlMode)),this.options.xmlMode)})}return xs(this,n=>{bt(n)&&(typeof e=="object"?Object.keys(e).forEach(s=>{let i=e[s];eTe(n,s,i,this.options.xmlMode)}):eTe(n,e,t,this.options.xmlMode))})}}function bwt(e,t,r){var n;let s=e;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof t=="object"?Object.assign(s.data,t):typeof t=="string"&&r!==void 0&&(s.data[t]=r)}function Iwt(e,t){let r,n,s;t==null?(r=Object.keys(e.attribs).filter(i=>i.startsWith(ZSe)),n=r.map(i=>ywt(i.slice(ZSe.length)))):(r=[ZSe+vwt(t)],n=[t]);for(let i=0;i{bt(i)&&(typeof e=="object"?bwt(i,e):bwt(i,e,t))}),this):BC.call(s.data,e)?s.data[e]:Iwt(s,e):Iwt(s)}function rJr(e){let t=arguments.length===0,r=this[0];if(!r||!bt(r))return t?void 0:this;switch(r.name){case"textarea":return this.text(e);case"select":{let n=this.find("option:selected");if(!t){if(this.attr("multiple")==null&&typeof e=="object")return this;this.find("option").removeAttr("selected");let s=typeof e!="object"?[e]:e;for(let i=0;ipE(s.children)):n.attr("value")}case"input":case"option":return t?this.attr("value"):this.attr("value",e)}}function Rwt(e,t){!e.attribs||!BC.call(e.attribs,t)||delete e.attribs[t]}function rV(e){return e?e.trim().split(Bk):[]}function nJr(e){let t=rV(e);for(let r=0;r{bt(n)&&Rwt(n,t[r])});return this}function sJr(e){return this.toArray().some(t=>{let r=bt(t)&&t.attribs.class,n=-1;if(r&&e.length)for(;(n=r.indexOf(e,n+1))>-1;){let s=n+e.length;if((n===0||Bk.test(r[n-1]))&&(s===r.length||Bk.test(r[s])))return!0}return!1})}function Cwt(e){if(typeof e=="function")return xs(this,(n,s)=>{if(bt(n)){let i=n.attribs.class||"";Cwt.call([n],e.call(n,s,i))}});if(!e||typeof e!="string")return this;let t=e.split(Bk),r=this.length;for(let n=0;n{bt(s)&&xwt.call([s],e.call(s,i,s.attribs.class||""))});let t=rV(e),r=t.length,n=arguments.length===0;return xs(this,s=>{if(bt(s))if(n)s.attribs.class="";else{let i=rV(s.attribs.class),a=!1;for(let o=0;o=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function wwt(e,t){if(typeof e=="function")return xs(this,(a,o)=>{bt(a)&&wwt.call([a],e.call(a,o,a.attribs.class||"",t),t)});if(!e||typeof e!="string")return this;let r=e.split(Bk),n=r.length,s=typeof t=="boolean"?t?1:-1:0,i=this.length;for(let a=0;a=0&&l<0?c.push(r[u]):s<=0&&l>=0&&c.splice(l,1)}o.attribs.class=c.join(" ")}return this}var BC,Bk,ZSe,Swt,tTe,JXr,Nwt=ae(()=>{AT();yT();c0();BC=Object.prototype.hasOwnProperty,Bk=/\s+/,ZSe="data-",Swt={null:null,true:!0,false:!1},tTe=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,JXr=/^{[^]*}$|^\[[^]*]$/});var nV=S(Jh=>{"use strict";Object.defineProperty(Jh,"__esModule",{value:!0});Jh.AttributeAction=Jh.IgnoreCaseMode=Jh.SelectorType=void 0;var iJr;(function(e){e.Attribute="attribute",e.Pseudo="pseudo",e.PseudoElement="pseudo-element",e.Tag="tag",e.Universal="universal",e.Adjacent="adjacent",e.Child="child",e.Descendant="descendant",e.Parent="parent",e.Sibling="sibling",e.ColumnCombinator="column-combinator"})(iJr=Jh.SelectorType||(Jh.SelectorType={}));Jh.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var aJr;(function(e){e.Any="any",e.Element="element",e.End="end",e.Equals="equals",e.Exists="exists",e.Hyphen="hyphen",e.Not="not",e.Start="start"})(aJr=Jh.AttributeAction||(Jh.AttributeAction={}))});var Mwt=S(FC=>{"use strict";Object.defineProperty(FC,"__esModule",{value:!0});FC.parse=FC.isTraversal=void 0;var Kn=nV(),Owt=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,oJr=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,cJr=new Map([[126,Kn.AttributeAction.Element],[94,Kn.AttributeAction.Start],[36,Kn.AttributeAction.End],[42,Kn.AttributeAction.Any],[33,Kn.AttributeAction.Not],[124,Kn.AttributeAction.Hyphen]]),uJr=new Set(["has","not","matches","is","where","host","host-context"]);function Pwt(e){switch(e.type){case Kn.SelectorType.Adjacent:case Kn.SelectorType.Child:case Kn.SelectorType.Descendant:case Kn.SelectorType.Parent:case Kn.SelectorType.Sibling:case Kn.SelectorType.ColumnCombinator:return!0;default:return!1}}FC.isTraversal=Pwt;var lJr=new Set(["contains","icontains"]);function dJr(e,t,r){var n=parseInt(t,16)-65536;return n!==n||r?t:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function Uk(e){return e.replace(oJr,dJr)}function nTe(e){return e===39||e===34}function Dwt(e){return e===32||e===9||e===10||e===12||e===13}function fJr(e){var t=[],r=Lwt(t,"".concat(e),0);if(r0&&r0&&Pwt(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(L){if(n.length>0&&n[n.length-1].type===Kn.SelectorType.Descendant){n[n.length-1].type=L;return}c(),n.push({type:L})}function l(L,U){n.push({type:Kn.SelectorType.Attribute,name:L,action:U,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Kn.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");e.push(n)}if(i(0),t.length===r)return r;e:for(;r{"use strict";var sV=qC&&qC.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,s=t.length,i;n ":" > ";case Ri.SelectorType.Parent:return t===0?"< ":" < ";case Ri.SelectorType.Sibling:return t===0?"~ ":" ~ ";case Ri.SelectorType.Adjacent:return t===0?"+ ":" + ";case Ri.SelectorType.Descendant:return" ";case Ri.SelectorType.ColumnCombinator:return t===0?"|| ":" || ";case Ri.SelectorType.Universal:return e.namespace==="*"&&t+10?n+e.slice(r):e}});var HC=S(Fl=>{"use strict";var gJr=Fl&&Fl.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_Jr=Fl&&Fl.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&gJr(t,e,r)};Object.defineProperty(Fl,"__esModule",{value:!0});Fl.stringify=Fl.parse=Fl.isTraversal=void 0;_Jr(nV(),Fl);var Vwt=Mwt();Object.defineProperty(Fl,"isTraversal",{enumerable:!0,get:function(){return Vwt.isTraversal}});Object.defineProperty(Fl,"parse",{enumerable:!0,get:function(){return Vwt.parse}});var AJr=Hwt();Object.defineProperty(Fl,"stringify",{enumerable:!0,get:function(){return AJr.stringify}})});var gE=S((mAs,jwt)=>{jwt.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});function Fk(e){return!Kwt.has(e.type)}function sTe(e){let t=e.map(Gwt);for(let r=1;r=0&&n>=1)):e.type===zc.SelectorType.Pseudo&&(e.data?e.name==="has"||e.name==="contains"?n=0:Array.isArray(e.data)?(n=Math.min(...e.data.map(s=>Math.min(...s.map(Gwt)))),n<0&&(n=0)):n=2:n=3),n}var zc,Kwt,EJr,iTe=ae(()=>{zc=Ne(HC(),1),Kwt=new Map([[zc.SelectorType.Universal,50],[zc.SelectorType.Tag,30],[zc.SelectorType.Attribute,1],[zc.SelectorType.Pseudo,0]]);EJr=new Map([[zc.AttributeAction.Exists,10],[zc.AttributeAction.Equals,8],[zc.AttributeAction.Not,7],[zc.AttributeAction.Start,6],[zc.AttributeAction.End,6],[zc.AttributeAction.Any,5]])});function zwt(e){return e.replace(yJr,"\\$&")}function vT(e,t){return typeof e.ignoreCase=="boolean"?e.ignoreCase:e.ignoreCase==="quirks"?!!t.quirksMode:!t.xmlMode&&vJr.has(e.name)}var $k,yJr,vJr,Ywt,Qwt=ae(()=>{$k=Ne(gE(),1),yJr=/[-[\]{}()*+?.,\\^$|#\s]/g;vJr=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);Ywt={equals(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t;return vT(t,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&e(a)}):a=>n.getAttributeValue(a,s)===i&&e(a)},hyphen(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t,a=i.length;return vT(t,r)?(i=i.toLowerCase(),function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a).toLowerCase()===i&&e(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&e(c)}},element(e,t,r){let{adapter:n}=r,{name:s,value:i}=t;if(/\s/.test(i))return $k.default.falseFunc;let a=new RegExp(`(?:^|\\s)${zwt(i)}(?:$|\\s)`,vT(t,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&e(c)}},exists(e,{name:t},{adapter:r}){return n=>r.hasAttrib(n,t)&&e(n)},start(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t,a=i.length;return a===0?$k.default.falseFunc:vT(t,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&e(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&e(o)}},end(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t,a=-i.length;return a===0?$k.default.falseFunc:vT(t,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&e(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&e(o)}},any(e,t,r){let{adapter:n}=r,{name:s,value:i}=t;if(i==="")return $k.default.falseFunc;if(vT(t,r)){let a=new RegExp(zwt(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&e(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&e(a)}},not(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t;return i===""?a=>!!n.getAttributeValue(a,s)&&e(a):vT(t,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&e(a)}):a=>n.getAttributeValue(a,s)!==i&&e(a)}}});function Xwt(e){if(e=e.trim().toLowerCase(),e==="even")return[2,0];if(e==="odd")return[2,1];let t=0,r=0,n=i(),s=a();if(t=Wwt&&e.charCodeAt(t)<=TJr;)u=u*10+(e.charCodeAt(t)-Wwt),t++;return t===c?null:u}function o(){for(;t{SJr=new Set([9,10,12,13,32]),Wwt=48,TJr=57});function Zwt(e){let t=e[0],r=e[1]-1;if(r<0&&t<=0)return aTe.default.falseFunc;if(t===-1)return i=>i<=r;if(t===0)return i=>i===r;if(t===1)return r<0?aTe.default.trueFunc:i=>i>=r;let n=Math.abs(t),s=(r%n+n)%n;return t>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}var aTe,eNt=ae(()=>{aTe=Ne(gE(),1)});function VC(e){return Zwt(Xwt(e))}var tNt=ae(()=>{Jwt();eNt()});function iV(e,t){return r=>{let n=t.getParent(r);return n!=null&&t.isTag(n)&&e(r)}}function oTe(e){return function(r,n,{adapter:s}){let i=s[e];return typeof i!="function"?Yu.default.falseFunc:function(o){return i(o)&&r(o)}}}var Yu,jC,rNt=ae(()=>{tNt();Yu=Ne(gE(),1);jC={contains(e,t,{adapter:r}){return function(s){return e(s)&&r.getText(s).includes(t)}},icontains(e,t,{adapter:r}){let n=t.toLowerCase();return function(i){return e(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(e,t,{adapter:r,equals:n}){let s=VC(t);return s===Yu.default.falseFunc?Yu.default.falseFunc:s===Yu.default.trueFunc?iV(e,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0&&!n(a,o[u]);u--)r.isTag(o[u])&&c++;return s(c)&&e(a)}},"nth-of-type"(e,t,{adapter:r,equals:n}){let s=VC(t);return s===Yu.default.falseFunc?Yu.default.falseFunc:s===Yu.default.trueFunc?iV(e,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0;u--){let l=o[u];if(n(a,l))break;r.isTag(l)&&r.getName(l)===r.getName(a)&&c++}return s(c)&&e(a)}},root(e,t,{adapter:r}){return n=>{let s=r.getParent(n);return(s==null||!r.isTag(s))&&e(n)}},scope(e,t,r,n){let{equals:s}=r;return!n||n.length===0?jC.root(e,t,r):n.length===1?i=>s(n[0],i)&&e(i):i=>n.includes(i)&&e(i)},hover:oTe("isHovered"),visited:oTe("isVisited"),active:oTe("isActive")}});function cTe(e,t,r,n){if(r===null){if(e.length>n)throw new Error(`Pseudo-class :${t} requires an argument`)}else if(e.length===n)throw new Error(`Pseudo-class :${t} doesn't have any arguments`)}var qk,nNt=ae(()=>{qk={empty(e,{adapter:t}){return!t.getChildren(e).some(r=>t.isTag(r)||t.getText(r)!=="")},"first-child"(e,{adapter:t,equals:r}){if(t.prevElementSibling)return t.prevElementSibling(e)==null;let n=t.getSiblings(e).find(s=>t.isTag(s));return n!=null&&r(e,n)},"last-child"(e,{adapter:t,equals:r}){let n=t.getSiblings(e);for(let s=n.length-1;s>=0;s--){if(r(e,n[s]))return!0;if(t.isTag(n[s]))break}return!1},"first-of-type"(e,{adapter:t,equals:r}){let n=t.getSiblings(e),s=t.getName(e);for(let i=0;i=0;i--){let a=n[i];if(r(e,a))return!0;if(t.isTag(a)&&t.getName(a)===s)break}return!1},"only-of-type"(e,{adapter:t,equals:r}){let n=t.getName(e);return t.getSiblings(e).every(s=>r(e,s)||!t.isTag(s)||t.getName(s)!==n)},"only-child"(e,{adapter:t,equals:r}){return t.getSiblings(e).every(n=>r(e,n)||!t.isTag(n))}}});var aV,sNt=ae(()=>{aV={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is( - :is(button, input, select, textarea, optgroup, option)[disabled], - optgroup[disabled] > option, - fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *) - )`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"}});function fTe(e,t){return e===Gd.default.falseFunc?Gd.default.falseFunc:r=>t.isTag(r)&&e(r)}function hTe(e,t){let r=t.getSiblings(e);if(r.length<=1)return[];let n=r.indexOf(e);return n<0||n===r.length-1?[]:r.slice(n+1).filter(t.isTag)}function lTe(e){return{xmlMode:!!e.xmlMode,lowerCaseAttributeNames:!!e.lowerCaseAttributeNames,lowerCaseTags:!!e.lowerCaseTags,quirksMode:!!e.quirksMode,cacheResults:!!e.cacheResults,pseudos:e.pseudos,adapter:e.adapter,equals:e.equals}}var Gd,dTe,uTe,oV,cV=ae(()=>{Gd=Ne(gE(),1);iTe();dTe={};uTe=(e,t,r,n,s)=>{let i=s(t,lTe(r),n);return i===Gd.default.trueFunc?e:i===Gd.default.falseFunc?Gd.default.falseFunc:a=>i(a)&&e(a)},oV={is:uTe,matches:uTe,where:uTe,not(e,t,r,n,s){let i=s(t,lTe(r),n);return i===Gd.default.falseFunc?e:i===Gd.default.trueFunc?Gd.default.falseFunc:a=>!i(a)&&e(a)},has(e,t,r,n,s){let{adapter:i}=r,a=lTe(r);a.relativeSelector=!0;let o=t.some(l=>l.some(Fk))?[dTe]:void 0,c=s(t,a,o);if(c===Gd.default.falseFunc)return Gd.default.falseFunc;let u=fTe(c,i);if(o&&c!==Gd.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!e(d))return!1;o[0]=d;let f=i.getChildren(d),h=l?[...f,...hTe(d,i)]:f;return i.existsOne(u,h)}}return l=>e(l)&&i.existsOne(u,i.getChildren(l))}}});function aNt(e,t,r,n,s){var i;let{name:a,data:o}=t;if(Array.isArray(o)){if(!(a in oV))throw new Error(`Unknown pseudo-class :${a}(${o})`);return oV[a](e,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:aV[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,iNt.parse)(u);return oV.is(e,l,r,n,s)}if(typeof c=="function")return cTe(c,a,o,1),l=>c(l,o)&&e(l);if(a in jC)return jC[a](e,o,r,n);if(a in qk){let l=qk[a];return cTe(l,a,o,2),d=>l(d,r,o)&&e(d)}throw new Error(`Unknown pseudo-class :${a}`)}var iNt,pTe=ae(()=>{iNt=Ne(HC(),1);rNt();nNt();sNt();cV()});function mTe(e,t){let r=t.getParent(e);return r&&t.isTag(r)?r:null}function oNt(e,t,r,n,s){let{adapter:i,equals:a}=r;switch(t.type){case zd.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case zd.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case zd.SelectorType.Attribute:{if(t.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(t.name=t.name.toLowerCase()),Ywt[t.action](e,t,r)}case zd.SelectorType.Pseudo:return aNt(e,t,r,n,s);case zd.SelectorType.Tag:{if(t.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=t;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&e(u)}}case zd.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=mTe(l,i);)if(e(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=mTe(l,i);)if(!o.has(l)){if(i.isTag(l)&&e(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(e(u))return!0;while(u=mTe(u,i));return!1};case zd.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&e(u))};case zd.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&e(u)};case zd.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;l{Qwt();pTe();zd=Ne(HC(),1)});function uNt(e,t,r){let n=uV(e,t,r);return fTe(n,t.adapter)}function uV(e,t,r){let n=typeof e=="string"?(0,u0.parse)(e):e;return lV(n,t,r)}function lNt(e){return e.type===u0.SelectorType.Pseudo&&(e.name==="scope"||Array.isArray(e.data)&&e.data.some(t=>t.some(lNt)))}function CJr(e,{adapter:t},r){let n=!!r?.every(s=>{let i=t.isTag(s)&&t.getParent(s);return s===dTe||i&&t.isTag(i)});for(let s of e){if(!(s.length>0&&Fk(s[0])&&s[0].type!==u0.SelectorType.Descendant))if(n&&!s.some(lNt))s.unshift(bJr);else continue;s.unshift(RJr)}}function lV(e,t,r){var n;e.forEach(sTe),r=(n=t.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(t.relativeSelector!==!1)CJr(e,t,i);else if(e.some(c=>c.length>0&&Fk(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=e.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==u0.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===u0.SelectorType.Descendant?c[1]=IJr:(l.type===u0.SelectorType.Adjacent||l.type===u0.SelectorType.Sibling)&&(a=!0))}return xJr(c,t,i)}).reduce(wJr,wg.default.falseFunc);return o.shouldTestNextSiblings=a,o}function xJr(e,t,r){var n;return e.reduce((s,i)=>s===wg.default.falseFunc?wg.default.falseFunc:oNt(s,i,t,r,lV),(n=t.rootFunc)!==null&&n!==void 0?n:wg.default.trueFunc)}function wJr(e,t){return t===wg.default.falseFunc||e===wg.default.trueFunc?e:e===wg.default.falseFunc||t===wg.default.trueFunc?t:function(n){return e(n)||t(n)}}var u0,wg,bJr,IJr,RJr,dNt=ae(()=>{u0=Ne(HC(),1),wg=Ne(gE(),1);iTe();cNt();cV();bJr={type:u0.SelectorType.Descendant},IJr={type:"_flexibleDescendant"},RJr={type:u0.SelectorType.Pseudo,name:"scope",data:null}});function hNt(e){var t,r,n,s;let i=e??NJr;return(t=i.adapter)!==null&&t!==void 0||(i.adapter=hE),(r=i.equals)!==null&&r!==void 0||(i.equals=(s=(n=i.adapter)===null||n===void 0?void 0:n.equals)!==null&&s!==void 0?s:fNt),i}function _Te(e){return function(r,n,s){let i=hNt(n);return e(r,i,s)}}function pNt(e){return function(r,n,s){let i=hNt(s);typeof r!="function"&&(r=uV(r,i,n));let a=fV(n,i.adapter,r.shouldTestNextSiblings);return e(r,a,i)}}function fV(e,t,r=!1){return r&&(e=OJr(e,t)),Array.isArray(e)?t.removeSubsets(e):t.getChildren(e)}function OJr(e,t){let r=Array.isArray(e)?e.slice(0):[e],n=r.length;for(let s=0;s{c0();gTe=Ne(gE(),1);dNt();cV();pTe();fNt=(e,t)=>e===t,NJr={adapter:hE,equals:fNt};jAs=_Te(uNt),KAs=_Te(uV),dV=_Te(lV);GAs=pNt((e,t,r)=>e===gTe.default.falseFunc||!t||t.length===0?[]:r.adapter.findAll(e,t)),zAs=pNt((e,t,r)=>e===gTe.default.falseFunc||!t||t.length===0?null:r.adapter.findOne(e,t))});function KC(e){return e.type!=="pseudo"?!1:DJr.has(e.name)?!0:e.name==="not"&&Array.isArray(e.data)?e.data.some(t=>t.some(KC)):!1}function mNt(e,t,r){let n=t!=null?parseInt(t,10):NaN;switch(e){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}var DJr,ETe=ae(()=>{DJr=new Set(["first","last","eq","gt","nth","lt","even","odd"])});function gNt(e){for(;e.parent;)e=e.parent;return e}function hV(e){let t=[],r=[];for(let n of e)n.some(KC)?t.push(n):r.push(n);return[r,t]}var _Nt=ae(()=>{ETe()});function STe(e,t,r={}){return TTe([e],t,r)}function TTe(e,t,r={}){if(typeof t=="function")return e.some(t);let[n,s]=hV((0,Qu.parse)(t));return n.length>0&&e.some(dV(n,r))||s.some(i=>ENt(i,e,r).length>0)}function MJr(e,t,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(e){case"first":case"lt":return t;case"last":return t.length>0?[t[t.length-1]]:t;case"nth":case"eq":return isFinite(s)&&Math.abs(s)a%2===0);case"odd":return t.filter((i,a)=>a%2===1);case"not":{let i=new Set(ANt(r,t,n));return t.filter(a=>!i.has(a))}}}function bTe(e,t,r={}){return ANt((0,Qu.parse)(e),t,r)}function ANt(e,t,r){if(t.length===0)return[];let[n,s]=hV(e),i;if(n.length){let a=vTe(t,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;abt(l)&&!i.has(l)):t).length===0)break;let u=ENt(o,t,r);if(u.length)if(i)u.forEach(l=>i.add(l));else{if(a===s.length-1)return u;i=new Set(u)}}return typeof i<"u"?i.size===t.length?t:t.filter(a=>i.has(a)):[]}function ENt(e,t,r){var n;if(e.some(Qu.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:gNt(t[0]),i={...r,context:t,relativeSelector:!1};return e.push(LJr),mV(s,e,i,!0,t.length)}return mV(t,e,r,!1,t.length)}function yNt(e,t,r={},n=1/0){if(typeof e=="function")return vNt(t,e);let[s,i]=hV((0,Qu.parse)(e)),a=i.map(o=>mV(t,o,r,!0,n));return s.length&&a.push(yTe(t,s,r,n)),a.length===0?[]:a.length===1?a[0]:dE(a.reduce((o,c)=>[...o,...c]))}function mV(e,t,r,n,s){let i=t.findIndex(KC),a=t.slice(0,i),o=t[i],c=t.length-1===i?s:1/0,u=mNt(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(e)?MC(e).filter(bt):a.length===0?(Array.isArray(e)?e:[e]).filter(bt):n||a.some(Qu.isTraversal)?yTe(e,[a],r,u):vTe(e,[a],r)).slice(0,u),f=MJr(o.name,d,o.data,r);if(f.length===0||t.length===i+1)return f;let h=t.slice(i+1),p=h.some(Qu.isTraversal);if(p){if((0,Qu.isTraversal)(h[0])){let{type:m}=h[0];(m===Qu.SelectorType.Sibling||m===Qu.SelectorType.Adjacent)&&(f=fV(f,hE,!0)),h.unshift(PJr)}r={...r,relativeSelector:!1,rootFunc:m=>f.includes(m)}}else r.rootFunc&&r.rootFunc!==pV.trueFunc&&(r={...r,rootFunc:pV.trueFunc});return h.some(KC)?mV(f,h,r,!1,s):p?yTe(f,[h],r,s):vTe(f,[h],r)}function yTe(e,t,r,n){let s=dV(t,r,e);return vNt(e,s,n)}function vNt(e,t,r=1/0){let n=fV(e,hE,t.shouldTestNextSiblings);return WH(s=>bt(s)&&t(s),n,!0,r)}function vTe(e,t,r){let n=(Array.isArray(e)?e:[e]).filter(bt);if(n.length===0)return n;let s=dV(t,r);return s===pV.trueFunc?n:n.filter(s)}var Qu,pV,PJr,LJr,SNt=ae(()=>{Qu=Ne(HC(),1);ATe();c0();pV=Ne(gE(),1);_Nt();ETe();ATe();PJr={type:Qu.SelectorType.Universal,namespace:null},LJr={type:Qu.SelectorType.Pseudo,name:"scope",data:null}});var wTe={};Ft(wTe,{add:()=>fZr,addBack:()=>hZr,children:()=>WJr,closest:()=>HJr,contents:()=>XJr,each:()=>JJr,end:()=>dZr,eq:()=>aZr,filter:()=>eZr,filterArray:()=>xTe,find:()=>UJr,first:()=>sZr,get:()=>oZr,has:()=>nZr,index:()=>uZr,is:()=>tZr,last:()=>iZr,map:()=>ZJr,next:()=>VJr,nextAll:()=>jJr,nextUntil:()=>KJr,not:()=>rZr,parent:()=>FJr,parents:()=>$Jr,parentsUntil:()=>qJr,prev:()=>GJr,prevAll:()=>zJr,prevUntil:()=>YJr,siblings:()=>QJr,slice:()=>lZr,toArray:()=>cZr});function UJr(e){var t;if(!e)return this._make([]);let r=this.toArray();if(typeof e!="string"){let i=Ul(e)?e.toArray():[e];return this._make(i.filter(a=>r.some(o=>JSe(o,a))))}let n=BJr.test(e)?r:this.children().toArray(),s={context:r,root:(t=this._root)===null||t===void 0?void 0:t[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(yNt(e,n,s))}function ITe(e){return function(t,...r){return function(n){var s;let i=e(t,this);return n&&(i=xTe(i,n,this.options.xmlMode,(s=this._root)===null||s===void 0?void 0:s[0])),this._make(this.length>1&&i.length>1?r.reduce((a,o)=>o(a),i):i)}}}function CTe(e,...t){let r=null,n=ITe((s,i)=>{let a=[];return xs(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(e,...t);return function(s,i){r=typeof s=="string"?o=>STe(o,s,this.options):s?Vk(s):null;let a=n.call(this,i);return r=null,a}}function GC(e){return Array.from(new Set(e))}function HJr(e){var t;let r=[];if(!e)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(t=this._root)===null||t===void 0?void 0:t[0]},s=typeof e=="string"?i=>STe(i,e,n):Vk(e);return xs(this,i=>{for(;i&&bt(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}function XJr(){let e=this.toArray().reduce((t,r)=>ps(r)?t.concat(r.children):t,[]);return this._make(e)}function JJr(e){let t=0,r=this.length;for(;te.call(t,r,t):Ul(e)?t=>Array.prototype.includes.call(e,t):function(t){return e===t}}function eZr(e){var t;return this._make(xTe(this.toArray(),e,this.options.xmlMode,(t=this._root)===null||t===void 0?void 0:t[0]))}function xTe(e,t,r,n){return typeof t=="string"?bTe(t,e,{xmlMode:r,root:n}):e.filter(Vk(t))}function tZr(e){let t=this.toArray();return typeof e=="string"?TTe(t.filter(bt),e,this.options):e?t.some(Vk(e)):!1}function rZr(e){let t=this.toArray();if(typeof e=="string"){let r=new Set(bTe(e,t,this.options));t=t.filter(n=>!r.has(n))}else{let r=Vk(e);t=t.filter((n,s)=>!r(n,s))}return this._make(t)}function nZr(e){return this.filter(typeof e=="string"?`:has(${e})`:(t,r)=>this._make(r).find(e).length>0)}function sZr(){return this.length>1?this._make(this[0]):this}function iZr(){return this.length>0?this._make(this[this.length-1]):this}function aZr(e){var t;return e=+e,e===0&&this.length<=1?this:(e<0&&(e=this.length+e),this._make((t=this[e])!==null&&t!==void 0?t:[]))}function oZr(e){return e==null?this.toArray():this[e<0?this.length+e:e]}function cZr(){return Array.prototype.slice.call(this)}function uZr(e){let t,r;return e==null?(t=this.parent().children(),r=this[0]):typeof e=="string"?(t=this._make(e),r=this[0]):(t=this,r=Ul(e)?e[0]:e),Array.prototype.indexOf.call(t,r)}function lZr(e,t){return this._make(Array.prototype.slice.call(this,e,t))}function dZr(){var e;return(e=this.prevObject)!==null&&e!==void 0?e:this._make([])}function fZr(e,t){let r=this._make(e,t),n=dE([...this.get(),...r.get()]);return this._make(n)}function hZr(e){return this.prevObject?this.add(e?this.prevObject.filter(e):this.prevObject):this}var BJr,Hk,RTe,FJr,$Jr,qJr,VJr,jJr,KJr,GJr,zJr,YJr,QJr,WJr,TNt=ae(()=>{tc();SNt();yT();AT();c0();BJr=/^\s*[~+]/;Hk=ITe((e,t)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;ne&&!o0(e)?e:null,GC),$Jr=Hk(e=>{let t=[];for(;e.parent&&!o0(e.parent);)t.push(e.parent),e=e.parent;return t},dE,e=>e.reverse()),qJr=CTe(({parent:e})=>e&&!o0(e)?e:null,dE,e=>e.reverse());VJr=RTe(e=>YH(e)),jJr=Hk(e=>{let t=[];for(;e.next;)e=e.next,bt(e)&&t.push(e);return t},GC),KJr=CTe(e=>YH(e),GC),GJr=RTe(e=>QH(e)),zJr=Hk(e=>{let t=[];for(;e.prev;)e=e.prev,bt(e)&&t.push(e);return t},GC),YJr=CTe(e=>QH(e),GC),QJr=Hk(e=>zSe(e).filter(t=>bt(t)&&t!==e),dE),WJr=Hk(e=>MC(e).filter(bt),GC)});function bNt(e){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return e(r,n,s,i);let a=r;if(!Array.isArray(a)&&o0(a))return a;let o=new Bl([]);return _E(a,o),o}}function _E(e,t){let r=Array.isArray(e)?e:[e];t?t.children=r:t=null;for(let n=0;n{c0();tc()});var OTe={};Ft(OTe,{_makeDomArray:()=>pZr,after:()=>TZr,append:()=>_Zr,appendTo:()=>mZr,before:()=>IZr,clone:()=>PZr,empty:()=>wZr,html:()=>NZr,insertAfter:()=>bZr,insertBefore:()=>RZr,prepend:()=>AZr,prependTo:()=>gZr,remove:()=>CZr,replaceWith:()=>xZr,text:()=>DZr,toString:()=>OZr,unwrap:()=>vZr,wrap:()=>EZr,wrapAll:()=>SZr,wrapInner:()=>yZr});function pZr(e,t){return e==null?[]:Ul(e)?t?eV(e.get()):e.get():Array.isArray(e)?e.reduce((r,n)=>r.concat(this._makeDomArray(n,t)),[]):typeof e=="string"?this._parse(e,this.options,!1,null).children:t?eV([e]):[e]}function INt(e){return function(...t){let r=this.length-1;return xs(this,(n,s)=>{if(!ps(n))return;let i=typeof t[0]=="function"?t[0].call(n,s,this._render(n.children)):t,a=this._makeDomArray(i,s=e.length?null:e[t+r];for(let l=0;l-1&&(f.children.splice(p,1),s===f&&t>p&&o[0]--)}d.parent=s,d.prev&&(d.prev.next=(i=d.next)!==null&&i!==void 0?i:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?c:n[l-1],d.next=l===n.length-1?u:n[l+1]}return c&&(c.next=n[0]),u&&(u.prev=n[n.length-1]),e.splice(...o)}function mZr(e){return(Ul(e)?e:this._make(e)).append(this),this}function gZr(e){return(Ul(e)?e:this._make(e)).prepend(this),this}function RNt(e){return function(t){let r=this.length-1,n=this.parents().last();for(let s=0;s{this._make(r).replaceWith(r.children)}),this}function SZr(e){let t=this[0];if(t){let r=this._make(typeof e=="function"?e.call(t,0,t):e).insertBefore(t),n;for(let i=0;i{let{parent:s}=r;if(!ps(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof e[0]=="function"?e[0].call(r,n,this._render(r.children)):e,c=this._makeDomArray(o,n{let n=this.clone().toArray(),{parent:s}=r;if(!s)return;let i=s.children,a=i.indexOf(r);a<0||(AE(i,a+1,0,n,s),t.push(...n))}),this._make(t)}function IZr(...e){let t=this.length-1;return xs(this,(r,n)=>{let{parent:s}=r;if(!ps(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof e[0]=="function"?e[0].call(r,n,this._render(r.children)):e,c=this._makeDomArray(o,n{let s=this.clone().toArray(),{parent:i}=n;if(!i)return;let a=i.children,o=a.indexOf(n);o<0||(AE(a,o,0,s,i),r.push(...s))}),this._make(r)}function CZr(e){let t=e?this.filter(e):this;return xs(t,r=>{Cg(r),r.prev=r.next=r.parent=null}),this}function xZr(e){return xs(this,(t,r)=>{let{parent:n}=t;if(!n)return;let s=n.children,i=typeof e=="function"?e.call(t,r,t):e,a=this._makeDomArray(i);_E(a,null);let o=s.indexOf(t);AE(s,o,1,a,n),a.includes(t)||(t.parent=t.prev=t.next=null)})}function wZr(){return xs(this,e=>{ps(e)&&(e.children.forEach(t=>{t.next=t.prev=t.parent=null}),e.children.length=0)})}function NZr(e){if(e===void 0){let t=this[0];return!t||!ps(t)?null:this._render(t.children)}return xs(this,t=>{if(!ps(t))return;t.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=Ul(e)?e.toArray():this._parse(`${e}`,this.options,!1,t).children;_E(r,t)})}function OZr(){return this._render(this)}function DZr(e){return e===void 0?pE(this):typeof e=="function"?xs(this,(t,r)=>this._make(t).text(e.call(t,r,pE([t])))):xs(this,t=>{if(!ps(t))return;t.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new Xh(`${e}`);_E(r,t)})}function PZr(){return this._make(eV(this.get()))}var _Zr,AZr,EZr,yZr,CNt=ae(()=>{tc();NTe();AT();yT();c0();_Zr=INt((e,t,r)=>{AE(t,t.length,0,e,r)}),AZr=INt((e,t,r)=>{AE(t,0,0,e,r)});EZr=RNt((e,t,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=s.indexOf(e);_E([e],t),AE(s,i,0,r,n)}),yZr=RNt((e,t,r)=>{ps(e)&&(_E(e.children,t),_E(r,e))})});var DTe={};Ft(DTe,{css:()=>LZr});function LZr(e,t){if(e!=null&&t!=null||typeof e=="object"&&!Array.isArray(e))return xs(this,(r,n)=>{bt(r)&&xNt(r,e,t,n)});if(this.length!==0)return wNt(this[0],e)}function xNt(e,t,r,n){if(typeof t=="string"){let s=wNt(e),i=typeof r=="function"?r.call(e,n,s[t]):r;i===""?delete s[t]:i!=null&&(s[t]=i),e.attribs.style=MZr(s)}else typeof t=="object"&&Object.keys(t).forEach((s,i)=>{xNt(e,s,t[s],i)})}function wNt(e,t){if(!e||!bt(e))return;let r=kZr(e.attribs.style);if(typeof t=="string")return r[t];if(Array.isArray(t)){let n={};return t.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function MZr(e){return Object.keys(e).reduce((t,r)=>`${t}${t?" ":""}${r}: ${e[r]};`,"")}function kZr(e){if(e=(e||"").trim(),!e)return{};let t={},r;for(let n of e.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(t[r]+=`;${i}`)}else r=n.slice(0,s).trim(),t[r]=n.slice(s+1).trim()}return t}var NNt=ae(()=>{yT()});var PTe={};Ft(PTe,{serialize:()=>UZr,serializeArray:()=>FZr});function UZr(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(BZr,"+")}function FZr(){return this.map((e,t)=>{let r=this._make(t);return bt(t)&&t.name==="form"?r.find(ONt).toArray():r.filter(ONt).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((e,t)=>{var r;let n=this._make(t),s=n.attr("name"),i=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(i)?i.map(a=>({name:s,value:a.replace(DNt,`\r -`)})):{name:s,value:i.replace(DNt,`\r -`)}}).toArray()}var ONt,BZr,DNt,PNt=ae(()=>{yT();ONt="input,select,textarea,keygen",BZr=/%20/g,DNt=/\r?\n/g});var EE,LNt=ae(()=>{Nwt();TNt();CNt();NNt();PNt();EE=class{constructor(t,r,n){if(this.length=0,this.options=n,this._root=r,t){for(let s=0;s{DSe();AT();LNt();yT()});function gV(e){return e>=55296&&e<=57343}function BNt(e){return e>=56320&&e<=57343}function UNt(e,t){return(e-55296)*1024+9216+t}function _V(e){return e!==32&&e!==10&&e!==13&&e!==9&&e!==12&&e>=1&&e<=31||e>=127&&e<=159}function AV(e){return e>=64976&&e<=65007||qZr.has(e)}var qZr,Ms,ue,Yc,EV=ae(()=>{qZr=new Set([65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111]),Ms="\uFFFD";(function(e){e[e.EOF=-1]="EOF",e[e.NULL=0]="NULL",e[e.TABULATION=9]="TABULATION",e[e.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",e[e.LINE_FEED=10]="LINE_FEED",e[e.FORM_FEED=12]="FORM_FEED",e[e.SPACE=32]="SPACE",e[e.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",e[e.QUOTATION_MARK=34]="QUOTATION_MARK",e[e.AMPERSAND=38]="AMPERSAND",e[e.APOSTROPHE=39]="APOSTROPHE",e[e.HYPHEN_MINUS=45]="HYPHEN_MINUS",e[e.SOLIDUS=47]="SOLIDUS",e[e.DIGIT_0=48]="DIGIT_0",e[e.DIGIT_9=57]="DIGIT_9",e[e.SEMICOLON=59]="SEMICOLON",e[e.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",e[e.EQUALS_SIGN=61]="EQUALS_SIGN",e[e.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",e[e.QUESTION_MARK=63]="QUESTION_MARK",e[e.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",e[e.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",e[e.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",e[e.GRAVE_ACCENT=96]="GRAVE_ACCENT",e[e.LATIN_SMALL_A=97]="LATIN_SMALL_A",e[e.LATIN_SMALL_Z=122]="LATIN_SMALL_Z"})(ue||(ue={}));Yc={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"}});var Pe,jk=ae(()=>{(function(e){e.controlCharacterInInputStream="control-character-in-input-stream",e.noncharacterInInputStream="noncharacter-in-input-stream",e.surrogateInInputStream="surrogate-in-input-stream",e.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",e.endTagWithAttributes="end-tag-with-attributes",e.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",e.unexpectedSolidusInTag="unexpected-solidus-in-tag",e.unexpectedNullCharacter="unexpected-null-character",e.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",e.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",e.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",e.missingEndTagName="missing-end-tag-name",e.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",e.unknownNamedCharacterReference="unknown-named-character-reference",e.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",e.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",e.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",e.eofBeforeTagName="eof-before-tag-name",e.eofInTag="eof-in-tag",e.missingAttributeValue="missing-attribute-value",e.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",e.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",e.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",e.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",e.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",e.missingDoctypePublicIdentifier="missing-doctype-public-identifier",e.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",e.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",e.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",e.cdataInHtmlContent="cdata-in-html-content",e.incorrectlyOpenedComment="incorrectly-opened-comment",e.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",e.eofInDoctype="eof-in-doctype",e.nestedComment="nested-comment",e.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",e.eofInComment="eof-in-comment",e.incorrectlyClosedComment="incorrectly-closed-comment",e.eofInCdata="eof-in-cdata",e.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",e.nullCharacterReference="null-character-reference",e.surrogateCharacterReference="surrogate-character-reference",e.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",e.controlCharacterReference="control-character-reference",e.noncharacterCharacterReference="noncharacter-character-reference",e.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",e.missingDoctypeName="missing-doctype-name",e.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",e.duplicateAttribute="duplicate-attribute",e.nonConformingDoctype="non-conforming-doctype",e.missingDoctype="missing-doctype",e.misplacedDoctype="misplaced-doctype",e.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",e.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",e.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",e.openElementsLeftAfterEof="open-elements-left-after-eof",e.abandonedHeadElementChild="abandoned-head-element-child",e.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",e.nestedNoscriptInHead="nested-noscript-in-head",e.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(Pe||(Pe={}))});var VZr,yV,FNt=ae(()=>{EV();jk();VZr=65536,yV=class{constructor(t){this.handler=t,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=VZr,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(t,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:t,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(t){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(t,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(t){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(BNt(r))return this.pos++,this._addGap(),UNt(t,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,ue.EOF;return this._err(Pe.surrogateInInputStream),t}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(t,r){this.html.length>0?this.html+=t:this.html=t,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(t){this.html=this.html.substring(0,this.pos+1)+t+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(t,r){if(this.pos+t.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(t,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,ue.EOF;let n=this.html.charCodeAt(r);return n===ue.CARRIAGE_RETURN?ue.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,ue.EOF;let t=this.html.charCodeAt(this.pos);return t===ue.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,ue.LINE_FEED):t===ue.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,gV(t)&&(t=this._processSurrogate(t)),this.handler.onParseError===null||t>31&&t<127||t===ue.LINE_FEED||t===ue.CARRIAGE_RETURN||t>159&&t<64976||this._checkForProblematicCharacters(t),t)}_checkForProblematicCharacters(t){_V(t)?this._err(Pe.controlCharacterInInputStream):AV(t)&&this._err(Pe.noncharacterInInputStream)}retreat(t){for(this.pos-=t;this.pos=0;r--)if(e.attrs[r].name===t)return e.attrs[r].value;return null}var fn,SV=ae(()=>{(function(e){e[e.CHARACTER=0]="CHARACTER",e[e.NULL_CHARACTER=1]="NULL_CHARACTER",e[e.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",e[e.START_TAG=3]="START_TAG",e[e.END_TAG=4]="END_TAG",e[e.COMMENT=5]="COMMENT",e[e.DOCTYPE=6]="DOCTYPE",e[e.EOF=7]="EOF",e[e.HIBERNATION=8]="HIBERNATION"})(fn||(fn={}))});var TV,LTe=ae(()=>{TV=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(e=>e.charCodeAt(0)))});var MTe=ae(()=>{});function BTe(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=KZr.get(e))!==null&&t!==void 0?t:e}var kTe,KZr,$Nt,UTe=ae(()=>{KZr=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),$Nt=(kTe=String.fromCodePoint)!==null&&kTe!==void 0?kTe:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t}});function FTe(e){return e>=Ya.ZERO&&e<=Ya.NINE}function YZr(e){return e>=Ya.UPPER_A&&e<=Ya.UPPER_F||e>=Ya.LOWER_A&&e<=Ya.LOWER_F}function QZr(e){return e>=Ya.UPPER_A&&e<=Ya.UPPER_Z||e>=Ya.LOWER_A&&e<=Ya.LOWER_Z||FTe(e)}function WZr(e){return e===Ya.EQUALS||QZr(e)}function XZr(e,t,r,n){let s=(t&yE.BRANCH_LENGTH)>>7,i=t&yE.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:e[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=e[c];if(un)o=c-1;else return e[c+s]}return-1}var Ya,zZr,yE,za,Zh,bV,qNt=ae(()=>{LTe();MTe();UTe();LTe();MTe();UTe();(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(Ya||(Ya={}));zZr=32;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(yE||(yE={}));(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(za||(za={}));(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(Zh||(Zh={}));bV=class{constructor(t,r,n){this.decodeTree=t,this.emitCodePoint=r,this.errors=n,this.state=za.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Zh.Strict}startEntity(t){this.decodeMode=t,this.state=za.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,r){switch(this.state){case za.EntityStart:return t.charCodeAt(r)===Ya.NUM?(this.state=za.NumericStart,this.consumed+=1,this.stateNumericStart(t,r+1)):(this.state=za.NamedEntity,this.stateNamedEntity(t,r));case za.NumericStart:return this.stateNumericStart(t,r);case za.NumericDecimal:return this.stateNumericDecimal(t,r);case za.NumericHex:return this.stateNumericHex(t,r);case za.NamedEntity:return this.stateNamedEntity(t,r)}}stateNumericStart(t,r){return r>=t.length?-1:(t.charCodeAt(r)|zZr)===Ya.LOWER_X?(this.state=za.NumericHex,this.consumed+=1,this.stateNumericHex(t,r+1)):(this.state=za.NumericDecimal,this.stateNumericDecimal(t,r))}addToNumericResult(t,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(t.substr(r,i),s),this.consumed+=i}}stateNumericHex(t,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Ya.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Zh.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;let{result:r,decodeTree:n}=this,s=(n[r]&yE.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[t]&~yE.VALUE_LENGTH:s[t+1],n),r===3&&this.emitCodePoint(s[t+2],n),n}end(){var t;switch(this.state){case za.NamedEntity:return this.result!==0&&(this.decodeMode!==Zh.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case za.NumericDecimal:return this.emitNumericEntity(0,2);case za.NumericHex:return this.emitNumericEntity(0,3);case za.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case za.EntityStart:return 0}}}});var IV={};Ft(IV,{ATTRS:()=>ep,DOCUMENT_MODE:()=>rc,NS:()=>Ve,NUMBERED_HEADERS:()=>zC,SPECIAL_ELEMENTS:()=>$Te,TAG_ID:()=>N,TAG_NAMES:()=>Ce,getTagID:()=>vE,hasUnescapedText:()=>qTe});function vE(e){var t;return(t=JZr.get(e))!==null&&t!==void 0?t:N.UNKNOWN}function qTe(e,t){return ZZr.has(e)||t&&e===Ce.NOSCRIPT}var Ve,ep,rc,Ce,N,JZr,Je,$Te,zC,ZZr,Ng=ae(()=>{(function(e){e.HTML="http://www.w3.org/1999/xhtml",e.MATHML="http://www.w3.org/1998/Math/MathML",e.SVG="http://www.w3.org/2000/svg",e.XLINK="http://www.w3.org/1999/xlink",e.XML="http://www.w3.org/XML/1998/namespace",e.XMLNS="http://www.w3.org/2000/xmlns/"})(Ve||(Ve={}));(function(e){e.TYPE="type",e.ACTION="action",e.ENCODING="encoding",e.PROMPT="prompt",e.NAME="name",e.COLOR="color",e.FACE="face",e.SIZE="size"})(ep||(ep={}));(function(e){e.NO_QUIRKS="no-quirks",e.QUIRKS="quirks",e.LIMITED_QUIRKS="limited-quirks"})(rc||(rc={}));(function(e){e.A="a",e.ADDRESS="address",e.ANNOTATION_XML="annotation-xml",e.APPLET="applet",e.AREA="area",e.ARTICLE="article",e.ASIDE="aside",e.B="b",e.BASE="base",e.BASEFONT="basefont",e.BGSOUND="bgsound",e.BIG="big",e.BLOCKQUOTE="blockquote",e.BODY="body",e.BR="br",e.BUTTON="button",e.CAPTION="caption",e.CENTER="center",e.CODE="code",e.COL="col",e.COLGROUP="colgroup",e.DD="dd",e.DESC="desc",e.DETAILS="details",e.DIALOG="dialog",e.DIR="dir",e.DIV="div",e.DL="dl",e.DT="dt",e.EM="em",e.EMBED="embed",e.FIELDSET="fieldset",e.FIGCAPTION="figcaption",e.FIGURE="figure",e.FONT="font",e.FOOTER="footer",e.FOREIGN_OBJECT="foreignObject",e.FORM="form",e.FRAME="frame",e.FRAMESET="frameset",e.H1="h1",e.H2="h2",e.H3="h3",e.H4="h4",e.H5="h5",e.H6="h6",e.HEAD="head",e.HEADER="header",e.HGROUP="hgroup",e.HR="hr",e.HTML="html",e.I="i",e.IMG="img",e.IMAGE="image",e.INPUT="input",e.IFRAME="iframe",e.KEYGEN="keygen",e.LABEL="label",e.LI="li",e.LINK="link",e.LISTING="listing",e.MAIN="main",e.MALIGNMARK="malignmark",e.MARQUEE="marquee",e.MATH="math",e.MENU="menu",e.META="meta",e.MGLYPH="mglyph",e.MI="mi",e.MO="mo",e.MN="mn",e.MS="ms",e.MTEXT="mtext",e.NAV="nav",e.NOBR="nobr",e.NOFRAMES="noframes",e.NOEMBED="noembed",e.NOSCRIPT="noscript",e.OBJECT="object",e.OL="ol",e.OPTGROUP="optgroup",e.OPTION="option",e.P="p",e.PARAM="param",e.PLAINTEXT="plaintext",e.PRE="pre",e.RB="rb",e.RP="rp",e.RT="rt",e.RTC="rtc",e.RUBY="ruby",e.S="s",e.SCRIPT="script",e.SEARCH="search",e.SECTION="section",e.SELECT="select",e.SOURCE="source",e.SMALL="small",e.SPAN="span",e.STRIKE="strike",e.STRONG="strong",e.STYLE="style",e.SUB="sub",e.SUMMARY="summary",e.SUP="sup",e.TABLE="table",e.TBODY="tbody",e.TEMPLATE="template",e.TEXTAREA="textarea",e.TFOOT="tfoot",e.TD="td",e.TH="th",e.THEAD="thead",e.TITLE="title",e.TR="tr",e.TRACK="track",e.TT="tt",e.U="u",e.UL="ul",e.SVG="svg",e.VAR="var",e.WBR="wbr",e.XMP="xmp"})(Ce||(Ce={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.A=1]="A",e[e.ADDRESS=2]="ADDRESS",e[e.ANNOTATION_XML=3]="ANNOTATION_XML",e[e.APPLET=4]="APPLET",e[e.AREA=5]="AREA",e[e.ARTICLE=6]="ARTICLE",e[e.ASIDE=7]="ASIDE",e[e.B=8]="B",e[e.BASE=9]="BASE",e[e.BASEFONT=10]="BASEFONT",e[e.BGSOUND=11]="BGSOUND",e[e.BIG=12]="BIG",e[e.BLOCKQUOTE=13]="BLOCKQUOTE",e[e.BODY=14]="BODY",e[e.BR=15]="BR",e[e.BUTTON=16]="BUTTON",e[e.CAPTION=17]="CAPTION",e[e.CENTER=18]="CENTER",e[e.CODE=19]="CODE",e[e.COL=20]="COL",e[e.COLGROUP=21]="COLGROUP",e[e.DD=22]="DD",e[e.DESC=23]="DESC",e[e.DETAILS=24]="DETAILS",e[e.DIALOG=25]="DIALOG",e[e.DIR=26]="DIR",e[e.DIV=27]="DIV",e[e.DL=28]="DL",e[e.DT=29]="DT",e[e.EM=30]="EM",e[e.EMBED=31]="EMBED",e[e.FIELDSET=32]="FIELDSET",e[e.FIGCAPTION=33]="FIGCAPTION",e[e.FIGURE=34]="FIGURE",e[e.FONT=35]="FONT",e[e.FOOTER=36]="FOOTER",e[e.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",e[e.FORM=38]="FORM",e[e.FRAME=39]="FRAME",e[e.FRAMESET=40]="FRAMESET",e[e.H1=41]="H1",e[e.H2=42]="H2",e[e.H3=43]="H3",e[e.H4=44]="H4",e[e.H5=45]="H5",e[e.H6=46]="H6",e[e.HEAD=47]="HEAD",e[e.HEADER=48]="HEADER",e[e.HGROUP=49]="HGROUP",e[e.HR=50]="HR",e[e.HTML=51]="HTML",e[e.I=52]="I",e[e.IMG=53]="IMG",e[e.IMAGE=54]="IMAGE",e[e.INPUT=55]="INPUT",e[e.IFRAME=56]="IFRAME",e[e.KEYGEN=57]="KEYGEN",e[e.LABEL=58]="LABEL",e[e.LI=59]="LI",e[e.LINK=60]="LINK",e[e.LISTING=61]="LISTING",e[e.MAIN=62]="MAIN",e[e.MALIGNMARK=63]="MALIGNMARK",e[e.MARQUEE=64]="MARQUEE",e[e.MATH=65]="MATH",e[e.MENU=66]="MENU",e[e.META=67]="META",e[e.MGLYPH=68]="MGLYPH",e[e.MI=69]="MI",e[e.MO=70]="MO",e[e.MN=71]="MN",e[e.MS=72]="MS",e[e.MTEXT=73]="MTEXT",e[e.NAV=74]="NAV",e[e.NOBR=75]="NOBR",e[e.NOFRAMES=76]="NOFRAMES",e[e.NOEMBED=77]="NOEMBED",e[e.NOSCRIPT=78]="NOSCRIPT",e[e.OBJECT=79]="OBJECT",e[e.OL=80]="OL",e[e.OPTGROUP=81]="OPTGROUP",e[e.OPTION=82]="OPTION",e[e.P=83]="P",e[e.PARAM=84]="PARAM",e[e.PLAINTEXT=85]="PLAINTEXT",e[e.PRE=86]="PRE",e[e.RB=87]="RB",e[e.RP=88]="RP",e[e.RT=89]="RT",e[e.RTC=90]="RTC",e[e.RUBY=91]="RUBY",e[e.S=92]="S",e[e.SCRIPT=93]="SCRIPT",e[e.SEARCH=94]="SEARCH",e[e.SECTION=95]="SECTION",e[e.SELECT=96]="SELECT",e[e.SOURCE=97]="SOURCE",e[e.SMALL=98]="SMALL",e[e.SPAN=99]="SPAN",e[e.STRIKE=100]="STRIKE",e[e.STRONG=101]="STRONG",e[e.STYLE=102]="STYLE",e[e.SUB=103]="SUB",e[e.SUMMARY=104]="SUMMARY",e[e.SUP=105]="SUP",e[e.TABLE=106]="TABLE",e[e.TBODY=107]="TBODY",e[e.TEMPLATE=108]="TEMPLATE",e[e.TEXTAREA=109]="TEXTAREA",e[e.TFOOT=110]="TFOOT",e[e.TD=111]="TD",e[e.TH=112]="TH",e[e.THEAD=113]="THEAD",e[e.TITLE=114]="TITLE",e[e.TR=115]="TR",e[e.TRACK=116]="TRACK",e[e.TT=117]="TT",e[e.U=118]="U",e[e.UL=119]="UL",e[e.SVG=120]="SVG",e[e.VAR=121]="VAR",e[e.WBR=122]="WBR",e[e.XMP=123]="XMP"})(N||(N={}));JZr=new Map([[Ce.A,N.A],[Ce.ADDRESS,N.ADDRESS],[Ce.ANNOTATION_XML,N.ANNOTATION_XML],[Ce.APPLET,N.APPLET],[Ce.AREA,N.AREA],[Ce.ARTICLE,N.ARTICLE],[Ce.ASIDE,N.ASIDE],[Ce.B,N.B],[Ce.BASE,N.BASE],[Ce.BASEFONT,N.BASEFONT],[Ce.BGSOUND,N.BGSOUND],[Ce.BIG,N.BIG],[Ce.BLOCKQUOTE,N.BLOCKQUOTE],[Ce.BODY,N.BODY],[Ce.BR,N.BR],[Ce.BUTTON,N.BUTTON],[Ce.CAPTION,N.CAPTION],[Ce.CENTER,N.CENTER],[Ce.CODE,N.CODE],[Ce.COL,N.COL],[Ce.COLGROUP,N.COLGROUP],[Ce.DD,N.DD],[Ce.DESC,N.DESC],[Ce.DETAILS,N.DETAILS],[Ce.DIALOG,N.DIALOG],[Ce.DIR,N.DIR],[Ce.DIV,N.DIV],[Ce.DL,N.DL],[Ce.DT,N.DT],[Ce.EM,N.EM],[Ce.EMBED,N.EMBED],[Ce.FIELDSET,N.FIELDSET],[Ce.FIGCAPTION,N.FIGCAPTION],[Ce.FIGURE,N.FIGURE],[Ce.FONT,N.FONT],[Ce.FOOTER,N.FOOTER],[Ce.FOREIGN_OBJECT,N.FOREIGN_OBJECT],[Ce.FORM,N.FORM],[Ce.FRAME,N.FRAME],[Ce.FRAMESET,N.FRAMESET],[Ce.H1,N.H1],[Ce.H2,N.H2],[Ce.H3,N.H3],[Ce.H4,N.H4],[Ce.H5,N.H5],[Ce.H6,N.H6],[Ce.HEAD,N.HEAD],[Ce.HEADER,N.HEADER],[Ce.HGROUP,N.HGROUP],[Ce.HR,N.HR],[Ce.HTML,N.HTML],[Ce.I,N.I],[Ce.IMG,N.IMG],[Ce.IMAGE,N.IMAGE],[Ce.INPUT,N.INPUT],[Ce.IFRAME,N.IFRAME],[Ce.KEYGEN,N.KEYGEN],[Ce.LABEL,N.LABEL],[Ce.LI,N.LI],[Ce.LINK,N.LINK],[Ce.LISTING,N.LISTING],[Ce.MAIN,N.MAIN],[Ce.MALIGNMARK,N.MALIGNMARK],[Ce.MARQUEE,N.MARQUEE],[Ce.MATH,N.MATH],[Ce.MENU,N.MENU],[Ce.META,N.META],[Ce.MGLYPH,N.MGLYPH],[Ce.MI,N.MI],[Ce.MO,N.MO],[Ce.MN,N.MN],[Ce.MS,N.MS],[Ce.MTEXT,N.MTEXT],[Ce.NAV,N.NAV],[Ce.NOBR,N.NOBR],[Ce.NOFRAMES,N.NOFRAMES],[Ce.NOEMBED,N.NOEMBED],[Ce.NOSCRIPT,N.NOSCRIPT],[Ce.OBJECT,N.OBJECT],[Ce.OL,N.OL],[Ce.OPTGROUP,N.OPTGROUP],[Ce.OPTION,N.OPTION],[Ce.P,N.P],[Ce.PARAM,N.PARAM],[Ce.PLAINTEXT,N.PLAINTEXT],[Ce.PRE,N.PRE],[Ce.RB,N.RB],[Ce.RP,N.RP],[Ce.RT,N.RT],[Ce.RTC,N.RTC],[Ce.RUBY,N.RUBY],[Ce.S,N.S],[Ce.SCRIPT,N.SCRIPT],[Ce.SEARCH,N.SEARCH],[Ce.SECTION,N.SECTION],[Ce.SELECT,N.SELECT],[Ce.SOURCE,N.SOURCE],[Ce.SMALL,N.SMALL],[Ce.SPAN,N.SPAN],[Ce.STRIKE,N.STRIKE],[Ce.STRONG,N.STRONG],[Ce.STYLE,N.STYLE],[Ce.SUB,N.SUB],[Ce.SUMMARY,N.SUMMARY],[Ce.SUP,N.SUP],[Ce.TABLE,N.TABLE],[Ce.TBODY,N.TBODY],[Ce.TEMPLATE,N.TEMPLATE],[Ce.TEXTAREA,N.TEXTAREA],[Ce.TFOOT,N.TFOOT],[Ce.TD,N.TD],[Ce.TH,N.TH],[Ce.THEAD,N.THEAD],[Ce.TITLE,N.TITLE],[Ce.TR,N.TR],[Ce.TRACK,N.TRACK],[Ce.TT,N.TT],[Ce.U,N.U],[Ce.UL,N.UL],[Ce.SVG,N.SVG],[Ce.VAR,N.VAR],[Ce.WBR,N.WBR],[Ce.XMP,N.XMP]]);Je=N,$Te={[Ve.HTML]:new Set([Je.ADDRESS,Je.APPLET,Je.AREA,Je.ARTICLE,Je.ASIDE,Je.BASE,Je.BASEFONT,Je.BGSOUND,Je.BLOCKQUOTE,Je.BODY,Je.BR,Je.BUTTON,Je.CAPTION,Je.CENTER,Je.COL,Je.COLGROUP,Je.DD,Je.DETAILS,Je.DIR,Je.DIV,Je.DL,Je.DT,Je.EMBED,Je.FIELDSET,Je.FIGCAPTION,Je.FIGURE,Je.FOOTER,Je.FORM,Je.FRAME,Je.FRAMESET,Je.H1,Je.H2,Je.H3,Je.H4,Je.H5,Je.H6,Je.HEAD,Je.HEADER,Je.HGROUP,Je.HR,Je.HTML,Je.IFRAME,Je.IMG,Je.INPUT,Je.LI,Je.LINK,Je.LISTING,Je.MAIN,Je.MARQUEE,Je.MENU,Je.META,Je.NAV,Je.NOEMBED,Je.NOFRAMES,Je.NOSCRIPT,Je.OBJECT,Je.OL,Je.P,Je.PARAM,Je.PLAINTEXT,Je.PRE,Je.SCRIPT,Je.SECTION,Je.SELECT,Je.SOURCE,Je.STYLE,Je.SUMMARY,Je.TABLE,Je.TBODY,Je.TD,Je.TEMPLATE,Je.TEXTAREA,Je.TFOOT,Je.TH,Je.THEAD,Je.TITLE,Je.TR,Je.TRACK,Je.UL,Je.WBR,Je.XMP]),[Ve.MATHML]:new Set([Je.MI,Je.MO,Je.MN,Je.MS,Je.MTEXT,Je.ANNOTATION_XML]),[Ve.SVG]:new Set([Je.TITLE,Je.FOREIGN_OBJECT,Je.DESC]),[Ve.XLINK]:new Set,[Ve.XML]:new Set,[Ve.XMLNS]:new Set},zC=new Set([Je.H1,Je.H2,Je.H3,Je.H4,Je.H5,Je.H6]),ZZr=new Set([Ce.STYLE,Ce.SCRIPT,Ce.XMP,Ce.IFRAME,Ce.NOEMBED,Ce.NOFRAMES,Ce.PLAINTEXT])});function een(e){return e>=ue.DIGIT_0&&e<=ue.DIGIT_9}function Kk(e){return e>=ue.LATIN_CAPITAL_A&&e<=ue.LATIN_CAPITAL_Z}function ten(e){return e>=ue.LATIN_SMALL_A&&e<=ue.LATIN_SMALL_Z}function SE(e){return ten(e)||Kk(e)}function HNt(e){return SE(e)||een(e)}function RV(e){return e+32}function jNt(e){return e===ue.SPACE||e===ue.LINE_FEED||e===ue.TABULATION||e===ue.FORM_FEED}function VNt(e){return jNt(e)||e===ue.SOLIDUS||e===ue.GREATER_THAN_SIGN}function ren(e){return e===ue.NULL?Pe.nullCharacterReference:e>1114111?Pe.characterReferenceOutsideUnicodeRange:gV(e)?Pe.surrogateCharacterReference:AV(e)?Pe.noncharacterCharacterReference:_V(e)||e===ue.CARRIAGE_RETURN?Pe.controlCharacterReference:null}var he,nc,Gk,HTe=ae(()=>{FNt();EV();SV();qNt();jk();Ng();(function(e){e[e.DATA=0]="DATA",e[e.RCDATA=1]="RCDATA",e[e.RAWTEXT=2]="RAWTEXT",e[e.SCRIPT_DATA=3]="SCRIPT_DATA",e[e.PLAINTEXT=4]="PLAINTEXT",e[e.TAG_OPEN=5]="TAG_OPEN",e[e.END_TAG_OPEN=6]="END_TAG_OPEN",e[e.TAG_NAME=7]="TAG_NAME",e[e.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",e[e.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",e[e.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",e[e.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",e[e.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",e[e.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",e[e.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",e[e.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",e[e.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",e[e.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",e[e.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",e[e.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",e[e.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",e[e.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",e[e.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",e[e.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",e[e.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",e[e.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",e[e.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",e[e.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",e[e.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",e[e.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",e[e.BOGUS_COMMENT=40]="BOGUS_COMMENT",e[e.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",e[e.COMMENT_START=42]="COMMENT_START",e[e.COMMENT_START_DASH=43]="COMMENT_START_DASH",e[e.COMMENT=44]="COMMENT",e[e.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",e[e.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",e[e.COMMENT_END_DASH=49]="COMMENT_END_DASH",e[e.COMMENT_END=50]="COMMENT_END",e[e.COMMENT_END_BANG=51]="COMMENT_END_BANG",e[e.DOCTYPE=52]="DOCTYPE",e[e.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",e[e.DOCTYPE_NAME=54]="DOCTYPE_NAME",e[e.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",e[e.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",e[e.CDATA_SECTION=68]="CDATA_SECTION",e[e.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",e[e.CDATA_SECTION_END=70]="CDATA_SECTION_END",e[e.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",e[e.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(he||(he={}));nc={DATA:he.DATA,RCDATA:he.RCDATA,RAWTEXT:he.RAWTEXT,SCRIPT_DATA:he.SCRIPT_DATA,PLAINTEXT:he.PLAINTEXT,CDATA_SECTION:he.CDATA_SECTION};Gk=class{constructor(t,r){this.options=t,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=he.DATA,this.returnState=he.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new yV(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new bV(TV,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(Pe.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(Pe.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=ren(n);s&&this._err(s,1)}}:void 0)}_err(t,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(t,r))}getCurrentLocation(t){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-t,startOffset:this.preprocessor.offset-t,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let t=this._consume();this._ensureHibernation()||this._callState(t)}this.inLoop=!1}}pause(){this.paused=!0}resume(t){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||t?.())}write(t,r,n){this.active=!0,this.preprocessor.write(t,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(t){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(t),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(t){this.consumedAfterSnapshot+=t;for(let r=0;r0&&this._err(Pe.endTagWithAttributes),t.selfClosing&&this._err(Pe.endTagWithTrailingSolidus),this.handler.onEndTag(t)),this.preprocessor.dropParsedChunk()}emitCurrentComment(t){this.prepareToken(t),this.handler.onComment(t),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(t){this.prepareToken(t),this.handler.onDoctype(t),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(t){if(this.currentCharacterToken){switch(t&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=t.startLine,this.currentCharacterToken.location.endCol=t.startCol,this.currentCharacterToken.location.endOffset=t.startOffset),this.currentCharacterToken.type){case fn.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case fn.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case fn.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let t=this.getCurrentLocation(0);t&&(t.endLine=t.startLine,t.endCol=t.startCol,t.endOffset=t.startOffset),this._emitCurrentCharacterToken(t),this.handler.onEof({type:fn.EOF,location:t}),this.active=!1}_appendCharToCurrentCharacterToken(t,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===t){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(t,r)}_emitCodePoint(t){let r=jNt(t)?fn.WHITESPACE_CHARACTER:t===ue.NULL?fn.NULL_CHARACTER:fn.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(t))}_emitChars(t){this._appendCharToCurrentCharacterToken(fn.CHARACTER,t)}_startCharacterReference(){this.returnState=this.state,this.state=he.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?Zh.Attribute:Zh.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===he.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===he.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===he.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(t){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(t):this._emitCodePoint(t)}_callState(t){switch(this.state){case he.DATA:{this._stateData(t);break}case he.RCDATA:{this._stateRcdata(t);break}case he.RAWTEXT:{this._stateRawtext(t);break}case he.SCRIPT_DATA:{this._stateScriptData(t);break}case he.PLAINTEXT:{this._statePlaintext(t);break}case he.TAG_OPEN:{this._stateTagOpen(t);break}case he.END_TAG_OPEN:{this._stateEndTagOpen(t);break}case he.TAG_NAME:{this._stateTagName(t);break}case he.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(t);break}case he.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(t);break}case he.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(t);break}case he.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(t);break}case he.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(t);break}case he.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(t);break}case he.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(t);break}case he.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(t);break}case he.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(t);break}case he.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(t);break}case he.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(t);break}case he.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(t);break}case he.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(t);break}case he.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(t);break}case he.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(t);break}case he.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(t);break}case he.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(t);break}case he.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(t);break}case he.ATTRIBUTE_NAME:{this._stateAttributeName(t);break}case he.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(t);break}case he.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(t);break}case he.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(t);break}case he.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(t);break}case he.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(t);break}case he.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(t);break}case he.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(t);break}case he.BOGUS_COMMENT:{this._stateBogusComment(t);break}case he.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(t);break}case he.COMMENT_START:{this._stateCommentStart(t);break}case he.COMMENT_START_DASH:{this._stateCommentStartDash(t);break}case he.COMMENT:{this._stateComment(t);break}case he.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(t);break}case he.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(t);break}case he.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(t);break}case he.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(t);break}case he.COMMENT_END_DASH:{this._stateCommentEndDash(t);break}case he.COMMENT_END:{this._stateCommentEnd(t);break}case he.COMMENT_END_BANG:{this._stateCommentEndBang(t);break}case he.DOCTYPE:{this._stateDoctype(t);break}case he.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(t);break}case he.DOCTYPE_NAME:{this._stateDoctypeName(t);break}case he.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(t);break}case he.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(t);break}case he.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(t);break}case he.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(t);break}case he.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(t);break}case he.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(t);break}case he.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(t);break}case he.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(t);break}case he.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(t);break}case he.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(t);break}case he.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(t);break}case he.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(t);break}case he.BOGUS_DOCTYPE:{this._stateBogusDoctype(t);break}case he.CDATA_SECTION:{this._stateCdataSection(t);break}case he.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(t);break}case he.CDATA_SECTION_END:{this._stateCdataSectionEnd(t);break}case he.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case he.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(t);break}default:throw new Error("Unknown state")}}_stateData(t){switch(t){case ue.LESS_THAN_SIGN:{this.state=he.TAG_OPEN;break}case ue.AMPERSAND:{this._startCharacterReference();break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitCodePoint(t);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRcdata(t){switch(t){case ue.AMPERSAND:{this._startCharacterReference();break}case ue.LESS_THAN_SIGN:{this.state=he.RCDATA_LESS_THAN_SIGN;break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Ms);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRawtext(t){switch(t){case ue.LESS_THAN_SIGN:{this.state=he.RAWTEXT_LESS_THAN_SIGN;break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Ms);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateScriptData(t){switch(t){case ue.LESS_THAN_SIGN:{this.state=he.SCRIPT_DATA_LESS_THAN_SIGN;break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Ms);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_statePlaintext(t){switch(t){case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Ms);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateTagOpen(t){if(SE(t))this._createStartTagToken(),this.state=he.TAG_NAME,this._stateTagName(t);else switch(t){case ue.EXCLAMATION_MARK:{this.state=he.MARKUP_DECLARATION_OPEN;break}case ue.SOLIDUS:{this.state=he.END_TAG_OPEN;break}case ue.QUESTION_MARK:{this._err(Pe.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=he.BOGUS_COMMENT,this._stateBogusComment(t);break}case ue.EOF:{this._err(Pe.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(Pe.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=he.DATA,this._stateData(t)}}_stateEndTagOpen(t){if(SE(t))this._createEndTagToken(),this.state=he.TAG_NAME,this._stateTagName(t);else switch(t){case ue.GREATER_THAN_SIGN:{this._err(Pe.missingEndTagName),this.state=he.DATA;break}case ue.EOF:{this._err(Pe.eofBeforeTagName),this._emitChars("");break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this.state=he.SCRIPT_DATA_ESCAPED,this._emitChars(Ms);break}case ue.EOF:{this._err(Pe.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=he.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedLessThanSign(t){t===ue.SOLIDUS?this.state=he.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:SE(t)?(this._emitChars("<"),this.state=he.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(t)):(this._emitChars("<"),this.state=he.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagOpen(t){SE(t)?(this.state=he.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(t)):(this._emitChars("");break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this.state=he.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(Ms);break}case ue.EOF:{this._err(Pe.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=he.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedLessThanSign(t){t===ue.SOLIDUS?(this.state=he.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=he.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateScriptDataDoubleEscapeEnd(t){if(this.preprocessor.startsWith(Yc.SCRIPT,!1)&&VNt(this.preprocessor.peek(Yc.SCRIPT.length))){this._emitCodePoint(t);for(let r=0;r{Ng();YNt=new Set([N.DD,N.DT,N.LI,N.OPTGROUP,N.OPTION,N.P,N.RB,N.RP,N.RT,N.RTC]),KNt=new Set([...YNt,N.CAPTION,N.COLGROUP,N.TBODY,N.TD,N.TFOOT,N.TH,N.THEAD,N.TR]),CV=new Set([N.APPLET,N.CAPTION,N.HTML,N.MARQUEE,N.OBJECT,N.TABLE,N.TD,N.TEMPLATE,N.TH]),nen=new Set([...CV,N.OL,N.UL]),sen=new Set([...CV,N.BUTTON]),GNt=new Set([N.ANNOTATION_XML,N.MI,N.MN,N.MO,N.MS,N.MTEXT]),zNt=new Set([N.DESC,N.FOREIGN_OBJECT,N.TITLE]),ien=new Set([N.TR,N.TEMPLATE,N.HTML]),aen=new Set([N.TBODY,N.TFOOT,N.THEAD,N.TEMPLATE,N.HTML]),oen=new Set([N.TABLE,N.TEMPLATE,N.HTML]),cen=new Set([N.TD,N.TH]),xV=class{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(t,r,n){this.treeAdapter=r,this.handler=n,this.items=[],this.tagIDs=[],this.stackTop=-1,this.tmplCount=0,this.currentTagId=N.UNKNOWN,this.current=t}_indexOf(t){return this.items.lastIndexOf(t,this.stackTop)}_isInTemplate(){return this.currentTagId===N.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===Ve.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagId=this.tagIDs[this.stackTop]}push(t,r){this.stackTop++,this.items[this.stackTop]=t,this.current=t,this.tagIDs[this.stackTop]=r,this.currentTagId=r,this._isInTemplate()&&this.tmplCount++,this.handler.onItemPush(t,r,!0)}pop(){let t=this.current;this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!0)}replace(t,r){let n=this._indexOf(t);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(t,r,n){let s=this._indexOf(t)+1;this.items.splice(s,0,r),this.tagIDs.splice(s,0,n),this.stackTop++,s===this.stackTop&&this._updateCurrentElement(),this.current&&this.currentTagId!==void 0&&this.handler.onItemPush(this.current,this.currentTagId,s===this.stackTop)}popUntilTagNamePopped(t){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(t,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Ve.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(t){for(;this.stackTop>=t;){let r=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(r,this.stackTop=0;n--)if(t.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(t,r){let n=this._indexOfTagNames(t,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(oen,Ve.HTML)}clearBackToTableBodyContext(){this.clearBackTo(aen,Ve.HTML)}clearBackToTableRowContext(){this.clearBackTo(ien,Ve.HTML)}remove(t){let r=this._indexOf(t);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===N.BODY?this.items[1]:null}contains(t){return this._indexOf(t)>-1}getCommonAncestor(t){let r=this._indexOf(t)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===N.HTML}hasInDynamicScope(t,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ve.HTML:{if(s===t)return!0;if(r.has(s))return!1;break}case Ve.SVG:{if(zNt.has(s))return!1;break}case Ve.MATHML:{if(GNt.has(s))return!1;break}}}return!0}hasInScope(t){return this.hasInDynamicScope(t,CV)}hasInListItemScope(t){return this.hasInDynamicScope(t,nen)}hasInButtonScope(t){return this.hasInDynamicScope(t,sen)}hasNumberedHeaderInScope(){for(let t=this.stackTop;t>=0;t--){let r=this.tagIDs[t];switch(this.treeAdapter.getNamespaceURI(this.items[t])){case Ve.HTML:{if(zC.has(r))return!0;if(CV.has(r))return!1;break}case Ve.SVG:{if(zNt.has(r))return!1;break}case Ve.MATHML:{if(GNt.has(r))return!1;break}}}return!0}hasInTableScope(t){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ve.HTML)switch(this.tagIDs[r]){case t:return!0;case N.TABLE:case N.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let t=this.stackTop;t>=0;t--)if(this.treeAdapter.getNamespaceURI(this.items[t])===Ve.HTML)switch(this.tagIDs[t]){case N.TBODY:case N.THEAD:case N.TFOOT:return!0;case N.TABLE:case N.HTML:return!1}return!0}hasInSelectScope(t){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ve.HTML)switch(this.tagIDs[r]){case t:return!0;case N.OPTION:case N.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&YNt.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&KNt.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(t){for(;this.currentTagId!==void 0&&this.currentTagId!==t&&KNt.has(this.currentTagId);)this.pop()}}});var l0,WNt,wV,XNt=ae(()=>{(function(e){e[e.Marker=0]="Marker",e[e.Element=1]="Element"})(l0||(l0={}));WNt={type:l0.Marker},wV=class{constructor(t){this.treeAdapter=t,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(t,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(t),a=this.treeAdapter.getNamespaceURI(t);for(let o=0;o[a.name,a.value])),i=0;for(let a=0;as.get(c.name)===c.value)&&(i+=1,i>=3&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(WNt)}pushElement(t,r){this._ensureNoahArkCondition(t),this.entries.unshift({type:l0.Element,element:t,token:r})}insertElementAfterBookmark(t,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:l0.Element,element:t,token:r})}removeEntry(t){let r=this.entries.indexOf(t);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let t=this.entries.indexOf(WNt);t===-1?this.entries.length=0:this.entries.splice(0,t+1)}getElementEntryInScopeWithTagName(t){let r=this.entries.find(n=>n.type===l0.Marker||this.treeAdapter.getTagName(n.element)===t);return r&&r.type===l0.Element?r:null}getElementEntry(t){return this.entries.find(r=>r.type===l0.Element&&r.element===t)}}});var Yd,NV=ae(()=>{Ng();Yd={createDocument(){return{nodeName:"#document",mode:rc.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(e,t,r){return{nodeName:e,tagName:e,attrs:r,namespaceURI:t,childNodes:[],parentNode:null}},createCommentNode(e){return{nodeName:"#comment",data:e,parentNode:null}},createTextNode(e){return{nodeName:"#text",value:e,parentNode:null}},appendChild(e,t){e.childNodes.push(t),t.parentNode=e},insertBefore(e,t,r){let n=e.childNodes.indexOf(r);e.childNodes.splice(n,0,t),t.parentNode=e},setTemplateContent(e,t){e.content=t},getTemplateContent(e){return e.content},setDocumentType(e,t,r,n){let s=e.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=t,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:t,publicId:r,systemId:n,parentNode:null};Yd.appendChild(e,i)}},setDocumentMode(e,t){e.mode=t},getDocumentMode(e){return e.mode},detachNode(e){if(e.parentNode){let t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},insertText(e,t){if(e.childNodes.length>0){let r=e.childNodes[e.childNodes.length-1];if(Yd.isTextNode(r)){r.value+=t;return}}Yd.appendChild(e,Yd.createTextNode(t))},insertTextBefore(e,t,r){let n=e.childNodes[e.childNodes.indexOf(r)-1];n&&Yd.isTextNode(n)?n.value+=t:Yd.insertBefore(e,Yd.createTextNode(t),r)},adoptAttributes(e,t){let r=new Set(e.attrs.map(n=>n.name));for(let n=0;ne.startsWith(r))}function rOt(e){return e.name===ZNt&&e.publicId===null&&(e.systemId===null||e.systemId===uen)}function nOt(e){if(e.name!==ZNt)return rc.QUIRKS;let{systemId:t}=e;if(t&&t.toLowerCase()===len)return rc.QUIRKS;let{publicId:r}=e;if(r!==null){if(r=r.toLowerCase(),fen.has(r))return rc.QUIRKS;let n=t===null?den:eOt;if(JNt(r,n))return rc.QUIRKS;if(n=t===null?tOt:hen,JNt(r,n))return rc.LIMITED_QUIRKS}return rc.NO_QUIRKS}var ZNt,uen,len,eOt,den,fen,tOt,hen,sOt=ae(()=>{Ng();ZNt="html",uen="about:legacy-compat",len="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",eOt=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],den=[...eOt,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],fen=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),tOt=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],hen=[...tOt,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]});function aOt(e){let t=e.tagID;return t===N.FONT&&e.attrs.some(({name:n})=>n===ep.COLOR||n===ep.SIZE||n===ep.FACE)||yen.has(t)}function VTe(e){for(let t=0;t{Ng();iOt={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},men="definitionurl",gen="definitionURL",_en=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e])),Aen=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ve.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ve.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ve.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ve.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ve.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ve.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ve.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ve.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ve.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ve.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ve.XMLNS}]]),Een=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),yen=new Set([N.B,N.BIG,N.BLOCKQUOTE,N.BODY,N.BR,N.CENTER,N.CODE,N.DD,N.DIV,N.DL,N.DT,N.EM,N.EMBED,N.H1,N.H2,N.H3,N.H4,N.H5,N.H6,N.HEAD,N.HR,N.I,N.IMG,N.LI,N.LISTING,N.MENU,N.META,N.NOBR,N.OL,N.P,N.PRE,N.RUBY,N.S,N.SMALL,N.SPAN,N.STRONG,N.STRIKE,N.SUB,N.SUP,N.TABLE,N.TT,N.U,N.UL,N.VAR])});function Cen(e,t){let r=e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);return r?e.openElements.contains(r.element)?e.openElements.hasInScope(t.tagID)||(r=null):(e.activeFormattingElements.removeEntry(r),r=null):AOt(e,t),r}function xen(e,t){let r=null,n=e.openElements.stackTop;for(;n>=0;n--){let s=e.openElements.items[n];if(s===t.element)break;e._isSpecialElement(s,e.openElements.tagIDs[n])&&(r=s)}return r||(e.openElements.shortenToLength(Math.max(n,0)),e.activeFormattingElements.removeEntry(t)),r}function wen(e,t,r){let n=t,s=e.openElements.getCommonAncestor(t);for(let i=0,a=s;a!==r;i++,a=s){s=e.openElements.getCommonAncestor(a);let o=e.activeFormattingElements.getElementEntry(a),c=o&&i>=Ien;!o||c?(c&&e.activeFormattingElements.removeEntry(o),e.openElements.remove(a)):(a=Nen(e,o),n===t&&(e.activeFormattingElements.bookmark=o),e.treeAdapter.detachNode(n),e.treeAdapter.appendChild(a,n),n=a)}return n}function Nen(e,t){let r=e.treeAdapter.getNamespaceURI(t.element),n=e.treeAdapter.createElement(t.token.tagName,r,t.token.attrs);return e.openElements.replace(t.element,n),t.element=n,n}function Oen(e,t,r){let n=e.treeAdapter.getTagName(t),s=vE(n);if(e._isElementCausesFosterParenting(s))e._fosterParentElement(r);else{let i=e.treeAdapter.getNamespaceURI(t);s===N.TEMPLATE&&i===Ve.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,r)}}function Den(e,t,r){let n=e.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=e.treeAdapter.createElement(s.tagName,n,s.attrs);e._adoptNodes(t,i),e.treeAdapter.appendChild(t,i),e.activeFormattingElements.insertElementAfterBookmark(i,s),e.activeFormattingElements.removeEntry(r),e.openElements.remove(r.element),e.openElements.insertAfter(t,i,s.tagID)}function QTe(e,t){for(let r=0;r=r;n--)e._setEndLocation(e.openElements.items[n],t);if(!e.fragmentContext&&e.openElements.stackTop>=0){let n=e.openElements.items[0],s=e.treeAdapter.getNodeSourceCodeLocation(n);if(s&&!s.endTag&&(e._setEndLocation(n,t),e.openElements.stackTop>=1)){let i=e.openElements.items[1],a=e.treeAdapter.getNodeSourceCodeLocation(i);a&&!a.endTag&&e._setEndLocation(i,t)}}}}function Men(e,t){e._setDocumentType(t);let r=t.forceQuirks?rc.QUIRKS:nOt(t);rOt(t)||e._err(t,Pe.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,r),e.insertionMode=_e.BEFORE_HTML}function zk(e,t){e._err(t,Pe.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,rc.QUIRKS),e.insertionMode=_e.BEFORE_HTML,e._processToken(t)}function ken(e,t){t.tagID===N.HTML?(e._insertElement(t,Ve.HTML),e.insertionMode=_e.BEFORE_HEAD):Qk(e,t)}function Ben(e,t){let r=t.tagID;(r===N.HTML||r===N.HEAD||r===N.BODY||r===N.BR)&&Qk(e,t)}function Qk(e,t){e._insertFakeRootElement(),e.insertionMode=_e.BEFORE_HEAD,e._processToken(t)}function Uen(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.HEAD:{e._insertElement(t,Ve.HTML),e.headElement=e.openElements.current,e.insertionMode=_e.IN_HEAD;break}default:Wk(e,t)}}function Fen(e,t){let r=t.tagID;r===N.HEAD||r===N.BODY||r===N.HTML||r===N.BR?Wk(e,t):e._err(t,Pe.endTagWithoutMatchingOpenElement)}function Wk(e,t){e._insertFakeElement(Ce.HEAD,N.HEAD),e.headElement=e.openElements.current,e.insertionMode=_e.IN_HEAD,e._processToken(t)}function d0(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.BASE:case N.BASEFONT:case N.BGSOUND:case N.LINK:case N.META:{e._appendElement(t,Ve.HTML),t.ackSelfClosing=!0;break}case N.TITLE:{e._switchToTextParsing(t,nc.RCDATA);break}case N.NOSCRIPT:{e.options.scriptingEnabled?e._switchToTextParsing(t,nc.RAWTEXT):(e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_HEAD_NO_SCRIPT);break}case N.NOFRAMES:case N.STYLE:{e._switchToTextParsing(t,nc.RAWTEXT);break}case N.SCRIPT:{e._switchToTextParsing(t,nc.SCRIPT_DATA);break}case N.TEMPLATE:{e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=_e.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(_e.IN_TEMPLATE);break}case N.HEAD:{e._err(t,Pe.misplacedStartTagForHeadElement);break}default:Xk(e,t)}}function $en(e,t){switch(t.tagID){case N.HEAD:{e.openElements.pop(),e.insertionMode=_e.AFTER_HEAD;break}case N.BODY:case N.BR:case N.HTML:{Xk(e,t);break}case N.TEMPLATE:{ST(e,t);break}default:e._err(t,Pe.endTagWithoutMatchingOpenElement)}}function ST(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==N.TEMPLATE&&e._err(t,Pe.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(N.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,Pe.endTagWithoutMatchingOpenElement)}function Xk(e,t){e.openElements.pop(),e.insertionMode=_e.AFTER_HEAD,e._processToken(t)}function qen(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.BASEFONT:case N.BGSOUND:case N.HEAD:case N.LINK:case N.META:case N.NOFRAMES:case N.STYLE:{d0(e,t);break}case N.NOSCRIPT:{e._err(t,Pe.nestedNoscriptInHead);break}default:Jk(e,t)}}function Hen(e,t){switch(t.tagID){case N.NOSCRIPT:{e.openElements.pop(),e.insertionMode=_e.IN_HEAD;break}case N.BR:{Jk(e,t);break}default:e._err(t,Pe.endTagWithoutMatchingOpenElement)}}function Jk(e,t){let r=t.type===fn.EOF?Pe.openElementsLeftAfterEof:Pe.disallowedContentInNoscriptInHead;e._err(t,r),e.openElements.pop(),e.insertionMode=_e.IN_HEAD,e._processToken(t)}function Ven(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.BODY:{e._insertElement(t,Ve.HTML),e.framesetOk=!1,e.insertionMode=_e.IN_BODY;break}case N.FRAMESET:{e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_FRAMESET;break}case N.BASE:case N.BASEFONT:case N.BGSOUND:case N.LINK:case N.META:case N.NOFRAMES:case N.SCRIPT:case N.STYLE:case N.TEMPLATE:case N.TITLE:{e._err(t,Pe.abandonedHeadElementChild),e.openElements.push(e.headElement,N.HEAD),d0(e,t),e.openElements.remove(e.headElement);break}case N.HEAD:{e._err(t,Pe.misplacedStartTagForHeadElement);break}default:Zk(e,t)}}function jen(e,t){switch(t.tagID){case N.BODY:case N.HTML:case N.BR:{Zk(e,t);break}case N.TEMPLATE:{ST(e,t);break}default:e._err(t,Pe.endTagWithoutMatchingOpenElement)}}function Zk(e,t){e._insertFakeElement(Ce.BODY,N.BODY),e.insertionMode=_e.IN_BODY,kV(e,t)}function kV(e,t){switch(t.type){case fn.CHARACTER:{mOt(e,t);break}case fn.WHITESPACE_CHARACTER:{pOt(e,t);break}case fn.COMMENT:{zTe(e,t);break}case fn.START_TAG:{sc(e,t);break}case fn.END_TAG:{BV(e,t);break}case fn.EOF:{EOt(e,t);break}default:}}function pOt(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function mOt(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function Ken(e,t){e.openElements.tmplCount===0&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}function Gen(e,t){let r=e.openElements.tryPeekProperlyNestedBodyElement();r&&e.openElements.tmplCount===0&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(r,t.attrs))}function zen(e,t){let r=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&r&&(e.treeAdapter.detachNode(r),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_FRAMESET)}function Yen(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML)}function Qen(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e.openElements.currentTagId!==void 0&&zC.has(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,Ve.HTML)}function Wen(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}function Xen(e,t){let r=e.openElements.tmplCount>0;(!e.formElement||r)&&(e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),r||(e.formElement=e.openElements.current))}function Jen(e,t){e.framesetOk=!1;let r=t.tagID;for(let n=e.openElements.stackTop;n>=0;n--){let s=e.openElements.tagIDs[n];if(r===N.LI&&s===N.LI||(r===N.DD||r===N.DT)&&(s===N.DD||s===N.DT)){e.openElements.generateImpliedEndTagsWithExclusion(s),e.openElements.popUntilTagNamePopped(s);break}if(s!==N.ADDRESS&&s!==N.DIV&&s!==N.P&&e._isSpecialElement(e.openElements.items[n],s))break}e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML)}function Zen(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),e.tokenizer.state=nc.PLAINTEXT}function etn(e,t){e.openElements.hasInScope(N.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(N.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.framesetOk=!1}function ttn(e,t){let r=e.activeFormattingElements.getElementEntryInScopeWithTagName(Ce.A);r&&(QTe(e,t),e.openElements.remove(r.element),e.activeFormattingElements.removeEntry(r)),e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function rtn(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function ntn(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(N.NOBR)&&(QTe(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,Ve.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function stn(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}function itn(e,t){e.treeAdapter.getDocumentMode(e.document)!==rc.QUIRKS&&e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),e.framesetOk=!1,e.insertionMode=_e.IN_TABLE}function gOt(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Ve.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function _Ot(e){let t=vV(e,ep.TYPE);return t!=null&&t.toLowerCase()===Ten}function atn(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Ve.HTML),_Ot(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}function otn(e,t){e._appendElement(t,Ve.HTML),t.ackSelfClosing=!0}function ctn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._appendElement(t,Ve.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function utn(e,t){t.tagName=Ce.IMG,t.tagID=N.IMG,gOt(e,t)}function ltn(e,t){e._insertElement(t,Ve.HTML),e.skipNextNewLine=!0,e.tokenizer.state=nc.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=_e.TEXT}function dtn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,nc.RAWTEXT)}function ftn(e,t){e.framesetOk=!1,e._switchToTextParsing(t,nc.RAWTEXT)}function dOt(e,t){e._switchToTextParsing(t,nc.RAWTEXT)}function htn(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===_e.IN_TABLE||e.insertionMode===_e.IN_CAPTION||e.insertionMode===_e.IN_TABLE_BODY||e.insertionMode===_e.IN_ROW||e.insertionMode===_e.IN_CELL?_e.IN_SELECT_IN_TABLE:_e.IN_SELECT}function ptn(e,t){e.openElements.currentTagId===N.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML)}function mtn(e,t){e.openElements.hasInScope(N.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,Ve.HTML)}function gtn(e,t){e.openElements.hasInScope(N.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(N.RTC),e._insertElement(t,Ve.HTML)}function _tn(e,t){e._reconstructActiveFormattingElements(),VTe(t),OV(t),t.selfClosing?e._appendElement(t,Ve.MATHML):e._insertElement(t,Ve.MATHML),t.ackSelfClosing=!0}function Atn(e,t){e._reconstructActiveFormattingElements(),jTe(t),OV(t),t.selfClosing?e._appendElement(t,Ve.SVG):e._insertElement(t,Ve.SVG),t.ackSelfClosing=!0}function fOt(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML)}function sc(e,t){switch(t.tagID){case N.I:case N.S:case N.B:case N.U:case N.EM:case N.TT:case N.BIG:case N.CODE:case N.FONT:case N.SMALL:case N.STRIKE:case N.STRONG:{rtn(e,t);break}case N.A:{ttn(e,t);break}case N.H1:case N.H2:case N.H3:case N.H4:case N.H5:case N.H6:{Qen(e,t);break}case N.P:case N.DL:case N.OL:case N.UL:case N.DIV:case N.DIR:case N.NAV:case N.MAIN:case N.MENU:case N.ASIDE:case N.CENTER:case N.FIGURE:case N.FOOTER:case N.HEADER:case N.HGROUP:case N.DIALOG:case N.DETAILS:case N.ADDRESS:case N.ARTICLE:case N.SEARCH:case N.SECTION:case N.SUMMARY:case N.FIELDSET:case N.BLOCKQUOTE:case N.FIGCAPTION:{Yen(e,t);break}case N.LI:case N.DD:case N.DT:{Jen(e,t);break}case N.BR:case N.IMG:case N.WBR:case N.AREA:case N.EMBED:case N.KEYGEN:{gOt(e,t);break}case N.HR:{ctn(e,t);break}case N.RB:case N.RTC:{mtn(e,t);break}case N.RT:case N.RP:{gtn(e,t);break}case N.PRE:case N.LISTING:{Wen(e,t);break}case N.XMP:{dtn(e,t);break}case N.SVG:{Atn(e,t);break}case N.HTML:{Ken(e,t);break}case N.BASE:case N.LINK:case N.META:case N.STYLE:case N.TITLE:case N.SCRIPT:case N.BGSOUND:case N.BASEFONT:case N.TEMPLATE:{d0(e,t);break}case N.BODY:{Gen(e,t);break}case N.FORM:{Xen(e,t);break}case N.NOBR:{ntn(e,t);break}case N.MATH:{_tn(e,t);break}case N.TABLE:{itn(e,t);break}case N.INPUT:{atn(e,t);break}case N.PARAM:case N.TRACK:case N.SOURCE:{otn(e,t);break}case N.IMAGE:{utn(e,t);break}case N.BUTTON:{etn(e,t);break}case N.APPLET:case N.OBJECT:case N.MARQUEE:{stn(e,t);break}case N.IFRAME:{ftn(e,t);break}case N.SELECT:{htn(e,t);break}case N.OPTION:case N.OPTGROUP:{ptn(e,t);break}case N.NOEMBED:case N.NOFRAMES:{dOt(e,t);break}case N.FRAMESET:{zen(e,t);break}case N.TEXTAREA:{ltn(e,t);break}case N.NOSCRIPT:{e.options.scriptingEnabled?dOt(e,t):fOt(e,t);break}case N.PLAINTEXT:{Zen(e,t);break}case N.COL:case N.TH:case N.TD:case N.TR:case N.HEAD:case N.FRAME:case N.TBODY:case N.TFOOT:case N.THEAD:case N.CAPTION:case N.COLGROUP:break;default:fOt(e,t)}}function Etn(e,t){if(e.openElements.hasInScope(N.BODY)&&(e.insertionMode=_e.AFTER_BODY,e.options.sourceCodeLocationInfo)){let r=e.openElements.tryPeekProperlyNestedBodyElement();r&&e._setEndLocation(r,t)}}function ytn(e,t){e.openElements.hasInScope(N.BODY)&&(e.insertionMode=_e.AFTER_BODY,COt(e,t))}function vtn(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(r))}function Stn(e){let t=e.openElements.tmplCount>0,{formElement:r}=e;t||(e.formElement=null),(r||t)&&e.openElements.hasInScope(N.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(N.FORM):r&&e.openElements.remove(r))}function Ttn(e){e.openElements.hasInButtonScope(N.P)||e._insertFakeElement(Ce.P,N.P),e._closePElement()}function btn(e){e.openElements.hasInListItemScope(N.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(N.LI),e.openElements.popUntilTagNamePopped(N.LI))}function Itn(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.popUntilTagNamePopped(r))}function Rtn(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}function Ctn(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(r),e.activeFormattingElements.clearToLastMarker())}function xtn(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(Ce.BR,N.BR),e.openElements.pop(),e.framesetOk=!1}function AOt(e,t){let r=t.tagName,n=t.tagID;for(let s=e.openElements.stackTop;s>0;s--){let i=e.openElements.items[s],a=e.openElements.tagIDs[s];if(n===a&&(n!==N.UNKNOWN||e.treeAdapter.getTagName(i)===r)){e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.stackTop>=s&&e.openElements.shortenToLength(s);break}if(e._isSpecialElement(i,a))break}}function BV(e,t){switch(t.tagID){case N.A:case N.B:case N.I:case N.S:case N.U:case N.EM:case N.TT:case N.BIG:case N.CODE:case N.FONT:case N.NOBR:case N.SMALL:case N.STRIKE:case N.STRONG:{QTe(e,t);break}case N.P:{Ttn(e);break}case N.DL:case N.UL:case N.OL:case N.DIR:case N.DIV:case N.NAV:case N.PRE:case N.MAIN:case N.MENU:case N.ASIDE:case N.BUTTON:case N.CENTER:case N.FIGURE:case N.FOOTER:case N.HEADER:case N.HGROUP:case N.DIALOG:case N.ADDRESS:case N.ARTICLE:case N.DETAILS:case N.SEARCH:case N.SECTION:case N.SUMMARY:case N.LISTING:case N.FIELDSET:case N.BLOCKQUOTE:case N.FIGCAPTION:{vtn(e,t);break}case N.LI:{btn(e);break}case N.DD:case N.DT:{Itn(e,t);break}case N.H1:case N.H2:case N.H3:case N.H4:case N.H5:case N.H6:{Rtn(e);break}case N.BR:{xtn(e);break}case N.BODY:{Etn(e,t);break}case N.HTML:{ytn(e,t);break}case N.FORM:{Stn(e);break}case N.APPLET:case N.OBJECT:case N.MARQUEE:{Ctn(e,t);break}case N.TEMPLATE:{ST(e,t);break}default:AOt(e,t)}}function EOt(e,t){e.tmplInsertionModeStack.length>0?ROt(e,t):WTe(e,t)}function wtn(e,t){var r;t.tagID===N.SCRIPT&&((r=e.scriptHandler)===null||r===void 0||r.call(e,e.openElements.current)),e.openElements.pop(),e.insertionMode=e.originalInsertionMode}function Ntn(e,t){e._err(t,Pe.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}function GTe(e,t){if(e.openElements.currentTagId!==void 0&&hOt.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=_e.IN_TABLE_TEXT,t.type){case fn.CHARACTER:{vOt(e,t);break}case fn.WHITESPACE_CHARACTER:{yOt(e,t);break}}else t4(e,t)}function Otn(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_CAPTION}function Dtn(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_COLUMN_GROUP}function Ptn(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(Ce.COLGROUP,N.COLGROUP),e.insertionMode=_e.IN_COLUMN_GROUP,XTe(e,t)}function Ltn(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_TABLE_BODY}function Mtn(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(Ce.TBODY,N.TBODY),e.insertionMode=_e.IN_TABLE_BODY,UV(e,t)}function ktn(e,t){e.openElements.hasInTableScope(N.TABLE)&&(e.openElements.popUntilTagNamePopped(N.TABLE),e._resetInsertionMode(),e._processStartTag(t))}function Btn(e,t){_Ot(t)?e._appendElement(t,Ve.HTML):t4(e,t),t.ackSelfClosing=!0}function Utn(e,t){!e.formElement&&e.openElements.tmplCount===0&&(e._insertElement(t,Ve.HTML),e.formElement=e.openElements.current,e.openElements.pop())}function QC(e,t){switch(t.tagID){case N.TD:case N.TH:case N.TR:{Mtn(e,t);break}case N.STYLE:case N.SCRIPT:case N.TEMPLATE:{d0(e,t);break}case N.COL:{Ptn(e,t);break}case N.FORM:{Utn(e,t);break}case N.TABLE:{ktn(e,t);break}case N.TBODY:case N.TFOOT:case N.THEAD:{Ltn(e,t);break}case N.INPUT:{Btn(e,t);break}case N.CAPTION:{Otn(e,t);break}case N.COLGROUP:{Dtn(e,t);break}default:t4(e,t)}}function e4(e,t){switch(t.tagID){case N.TABLE:{e.openElements.hasInTableScope(N.TABLE)&&(e.openElements.popUntilTagNamePopped(N.TABLE),e._resetInsertionMode());break}case N.TEMPLATE:{ST(e,t);break}case N.BODY:case N.CAPTION:case N.COL:case N.COLGROUP:case N.HTML:case N.TBODY:case N.TD:case N.TFOOT:case N.TH:case N.THEAD:case N.TR:break;default:t4(e,t)}}function t4(e,t){let r=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,kV(e,t),e.fosterParentingEnabled=r}function yOt(e,t){e.pendingCharacterTokens.push(t)}function vOt(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function Yk(e,t){let r=0;if(e.hasNonWhitespacePendingCharacterToken)for(;r0&&e.openElements.currentTagId===N.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===N.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===N.OPTGROUP&&e.openElements.pop();break}case N.OPTION:{e.openElements.currentTagId===N.OPTION&&e.openElements.pop();break}case N.SELECT:{e.openElements.hasInSelectScope(N.SELECT)&&(e.openElements.popUntilTagNamePopped(N.SELECT),e._resetInsertionMode());break}case N.TEMPLATE:{ST(e,t);break}default:}}function jtn(e,t){let r=t.tagID;r===N.CAPTION||r===N.TABLE||r===N.TBODY||r===N.TFOOT||r===N.THEAD||r===N.TR||r===N.TD||r===N.TH?(e.openElements.popUntilTagNamePopped(N.SELECT),e._resetInsertionMode(),e._processStartTag(t)):bOt(e,t)}function Ktn(e,t){let r=t.tagID;r===N.CAPTION||r===N.TABLE||r===N.TBODY||r===N.TFOOT||r===N.THEAD||r===N.TR||r===N.TD||r===N.TH?e.openElements.hasInTableScope(r)&&(e.openElements.popUntilTagNamePopped(N.SELECT),e._resetInsertionMode(),e.onEndTag(t)):IOt(e,t)}function Gtn(e,t){switch(t.tagID){case N.BASE:case N.BASEFONT:case N.BGSOUND:case N.LINK:case N.META:case N.NOFRAMES:case N.SCRIPT:case N.STYLE:case N.TEMPLATE:case N.TITLE:{d0(e,t);break}case N.CAPTION:case N.COLGROUP:case N.TBODY:case N.TFOOT:case N.THEAD:{e.tmplInsertionModeStack[0]=_e.IN_TABLE,e.insertionMode=_e.IN_TABLE,QC(e,t);break}case N.COL:{e.tmplInsertionModeStack[0]=_e.IN_COLUMN_GROUP,e.insertionMode=_e.IN_COLUMN_GROUP,XTe(e,t);break}case N.TR:{e.tmplInsertionModeStack[0]=_e.IN_TABLE_BODY,e.insertionMode=_e.IN_TABLE_BODY,UV(e,t);break}case N.TD:case N.TH:{e.tmplInsertionModeStack[0]=_e.IN_ROW,e.insertionMode=_e.IN_ROW,FV(e,t);break}default:e.tmplInsertionModeStack[0]=_e.IN_BODY,e.insertionMode=_e.IN_BODY,sc(e,t)}}function ztn(e,t){t.tagID===N.TEMPLATE&&ST(e,t)}function ROt(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(N.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):WTe(e,t)}function Ytn(e,t){t.tagID===N.HTML?sc(e,t):MV(e,t)}function COt(e,t){var r;if(t.tagID===N.HTML){if(e.fragmentContext||(e.insertionMode=_e.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===N.HTML){e._setEndLocation(e.openElements.items[0],t);let n=e.openElements.items[1];n&&!(!((r=e.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&e._setEndLocation(n,t)}}else MV(e,t)}function MV(e,t){e.insertionMode=_e.IN_BODY,kV(e,t)}function Qtn(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.FRAMESET:{e._insertElement(t,Ve.HTML);break}case N.FRAME:{e._appendElement(t,Ve.HTML),t.ackSelfClosing=!0;break}case N.NOFRAMES:{d0(e,t);break}default:}}function Wtn(e,t){t.tagID===N.FRAMESET&&!e.openElements.isRootHtmlElementCurrent()&&(e.openElements.pop(),!e.fragmentContext&&e.openElements.currentTagId!==N.FRAMESET&&(e.insertionMode=_e.AFTER_FRAMESET))}function Xtn(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.NOFRAMES:{d0(e,t);break}default:}}function Jtn(e,t){t.tagID===N.HTML&&(e.insertionMode=_e.AFTER_AFTER_FRAMESET)}function Ztn(e,t){t.tagID===N.HTML?sc(e,t):PV(e,t)}function PV(e,t){e.insertionMode=_e.IN_BODY,kV(e,t)}function ern(e,t){switch(t.tagID){case N.HTML:{sc(e,t);break}case N.NOFRAMES:{d0(e,t);break}default:}}function trn(e,t){t.chars=Ms,e._insertCharacters(t)}function rrn(e,t){e._insertCharacters(t),e.framesetOk=!1}function xOt(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==Ve.HTML&&e.openElements.currentTagId!==void 0&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function nrn(e,t){if(aOt(t))xOt(e),e._startTagOutsideForeignContent(t);else{let r=e._getAdjustedCurrentElement(),n=e.treeAdapter.getNamespaceURI(r);n===Ve.MATHML?VTe(t):n===Ve.SVG&&(oOt(t),jTe(t)),OV(t),t.selfClosing?e._appendElement(t,n):e._insertElement(t,n),t.ackSelfClosing=!0}}function srn(e,t){if(t.tagID===N.P||t.tagID===N.BR){xOt(e),e._endTagOutsideForeignContent(t);return}for(let r=e.openElements.stackTop;r>0;r--){let n=e.openElements.items[r];if(e.treeAdapter.getNamespaceURI(n)===Ve.HTML){e._endTagOutsideForeignContent(t);break}let s=e.treeAdapter.getTagName(n);if(s.toLowerCase()===t.tagName){t.tagName=s,e.openElements.shortenToLength(r);break}}}var Ten,ben,Ien,_e,Ren,hOt,lOt,YC,SOt,JTe=ae(()=>{HTe();QNt();XNt();NV();sOt();KTe();jk();EV();Ng();SV();Ten="hidden",ben=8,Ien=3;(function(e){e[e.INITIAL=0]="INITIAL",e[e.BEFORE_HTML=1]="BEFORE_HTML",e[e.BEFORE_HEAD=2]="BEFORE_HEAD",e[e.IN_HEAD=3]="IN_HEAD",e[e.IN_HEAD_NO_SCRIPT=4]="IN_HEAD_NO_SCRIPT",e[e.AFTER_HEAD=5]="AFTER_HEAD",e[e.IN_BODY=6]="IN_BODY",e[e.TEXT=7]="TEXT",e[e.IN_TABLE=8]="IN_TABLE",e[e.IN_TABLE_TEXT=9]="IN_TABLE_TEXT",e[e.IN_CAPTION=10]="IN_CAPTION",e[e.IN_COLUMN_GROUP=11]="IN_COLUMN_GROUP",e[e.IN_TABLE_BODY=12]="IN_TABLE_BODY",e[e.IN_ROW=13]="IN_ROW",e[e.IN_CELL=14]="IN_CELL",e[e.IN_SELECT=15]="IN_SELECT",e[e.IN_SELECT_IN_TABLE=16]="IN_SELECT_IN_TABLE",e[e.IN_TEMPLATE=17]="IN_TEMPLATE",e[e.AFTER_BODY=18]="AFTER_BODY",e[e.IN_FRAMESET=19]="IN_FRAMESET",e[e.AFTER_FRAMESET=20]="AFTER_FRAMESET",e[e.AFTER_AFTER_BODY=21]="AFTER_AFTER_BODY",e[e.AFTER_AFTER_FRAMESET=22]="AFTER_AFTER_FRAMESET"})(_e||(_e={}));Ren={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},hOt=new Set([N.TABLE,N.TBODY,N.TFOOT,N.THEAD,N.TR]),lOt={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:Yd,onParseError:null},YC=class{constructor(t,r,n=null,s=null){this.fragmentContext=n,this.scriptHandler=s,this.currentToken=null,this.stopped=!1,this.insertionMode=_e.INITIAL,this.originalInsertionMode=_e.INITIAL,this.headElement=null,this.formElement=null,this.currentNotInHTML=!1,this.tmplInsertionModeStack=[],this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1,this.options={...lOt,...t},this.treeAdapter=this.options.treeAdapter,this.onParseError=this.options.onParseError,this.onParseError&&(this.options.sourceCodeLocationInfo=!0),this.document=r??this.treeAdapter.createDocument(),this.tokenizer=new Gk(this.options,this),this.activeFormattingElements=new wV(this.treeAdapter),this.fragmentContextID=n?vE(this.treeAdapter.getTagName(n)):N.UNKNOWN,this._setContextModes(n??this.document,this.fragmentContextID),this.openElements=new xV(this.document,this.treeAdapter,this)}static parse(t,r){let n=new this(r);return n.tokenizer.write(t,!0),n.document}static getFragmentParser(t,r){let n={...lOt,...r};t??(t=n.treeAdapter.createElement(Ce.TEMPLATE,Ve.HTML,[]));let s=n.treeAdapter.createElement("documentmock",Ve.HTML,[]),i=new this(n,s,t);return i.fragmentContextID===N.TEMPLATE&&i.tmplInsertionModeStack.unshift(_e.IN_TEMPLATE),i._initTokenizerForFragmentParsing(),i._insertFakeRootElement(),i._resetInsertionMode(),i._findFormInFragmentContext(),i}getFragment(){let t=this.treeAdapter.getFirstChild(this.document),r=this.treeAdapter.createDocumentFragment();return this._adoptNodes(t,r),r}_err(t,r,n){var s;if(!this.onParseError)return;let i=(s=t.location)!==null&&s!==void 0?s:Ren,a={code:r,startLine:i.startLine,startCol:i.startCol,startOffset:i.startOffset,endLine:n?i.startLine:i.endLine,endCol:n?i.startCol:i.endCol,endOffset:n?i.startOffset:i.endOffset};this.onParseError(a)}onItemPush(t,r,n){var s,i;(i=(s=this.treeAdapter).onItemPush)===null||i===void 0||i.call(s,t),n&&this.openElements.stackTop>0&&this._setContextModes(t,r)}onItemPop(t,r){var n,s;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(t,this.currentToken),(s=(n=this.treeAdapter).onItemPop)===null||s===void 0||s.call(n,t,this.openElements.current),r){let i,a;this.openElements.stackTop===0&&this.fragmentContext?(i=this.fragmentContext,a=this.fragmentContextID):{current:i,currentTagId:a}=this.openElements,this._setContextModes(i,a)}}_setContextModes(t,r){let n=t===this.document||t&&this.treeAdapter.getNamespaceURI(t)===Ve.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&t!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,t)}_switchToTextParsing(t,r){this._insertElement(t,Ve.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=_e.TEXT}switchToPlaintextParsing(){this.insertionMode=_e.TEXT,this.originalInsertionMode=_e.IN_BODY,this.tokenizer.state=nc.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let t=this.fragmentContext;for(;t;){if(this.treeAdapter.getTagName(t)===Ce.FORM){this.formElement=t;break}t=this.treeAdapter.getParentNode(t)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ve.HTML))switch(this.fragmentContextID){case N.TITLE:case N.TEXTAREA:{this.tokenizer.state=nc.RCDATA;break}case N.STYLE:case N.XMP:case N.IFRAME:case N.NOEMBED:case N.NOFRAMES:case N.NOSCRIPT:{this.tokenizer.state=nc.RAWTEXT;break}case N.SCRIPT:{this.tokenizer.state=nc.SCRIPT_DATA;break}case N.PLAINTEXT:{this.tokenizer.state=nc.PLAINTEXT;break}default:}}_setDocumentType(t){let r=t.name||"",n=t.publicId||"",s=t.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),t.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,t.location)}}_attachElementToTree(t,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(t,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(t);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,t)}}_appendElement(t,r){let n=this.treeAdapter.createElement(t.tagName,r,t.attrs);this._attachElementToTree(n,t.location)}_insertElement(t,r){let n=this.treeAdapter.createElement(t.tagName,r,t.attrs);this._attachElementToTree(n,t.location),this.openElements.push(n,t.tagID)}_insertFakeElement(t,r){let n=this.treeAdapter.createElement(t,Ve.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(t){let r=this.treeAdapter.createElement(t.tagName,Ve.HTML,t.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,t.location),this.openElements.push(r,t.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let t=this.treeAdapter.createElement(Ce.HTML,Ve.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(t,null),this.treeAdapter.appendChild(this.openElements.current,t),this.openElements.push(t,N.HTML)}_appendCommentNode(t,r){let n=this.treeAdapter.createCommentNode(t.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,t.location)}_insertCharacters(t){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,t.chars,n):this.treeAdapter.insertText(r,t.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,t.chars)),!t.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=t.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,t.location)}_adoptNodes(t,r){for(let n=this.treeAdapter.getFirstChild(t);n;n=this.treeAdapter.getFirstChild(t))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(t,r){if(this.treeAdapter.getNodeSourceCodeLocation(t)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(t),i=r.type===fn.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(t,i)}}shouldProcessStartTagTokenInForeignContent(t){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,t.tagID===N.SVG&&this.treeAdapter.getTagName(r)===Ce.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ve.MATHML?!1:this.tokenizer.inForeignNode||(t.tagID===N.MGLYPH||t.tagID===N.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ve.HTML)}_processToken(t){switch(t.type){case fn.CHARACTER:{this.onCharacter(t);break}case fn.NULL_CHARACTER:{this.onNullCharacter(t);break}case fn.COMMENT:{this.onComment(t);break}case fn.DOCTYPE:{this.onDoctype(t);break}case fn.START_TAG:{this._processStartTag(t);break}case fn.END_TAG:{this.onEndTag(t);break}case fn.EOF:{this.onEof(t);break}case fn.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(t);break}}}_isIntegrationPoint(t,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return cOt(t,s,i,n)}_reconstructActiveFormattingElements(){let t=this.activeFormattingElements.entries.length;if(t){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===l0.Marker||this.openElements.contains(s.element)),n=r===-1?t-1:r-1;for(let s=n;s>=0;s--){let i=this.activeFormattingElements.entries[s];this._insertElement(i.token,this.treeAdapter.getNamespaceURI(i.element)),i.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=_e.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(N.P),this.openElements.popUntilTagNamePopped(N.P)}_resetInsertionMode(){for(let t=this.openElements.stackTop;t>=0;t--)switch(t===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[t]){case N.TR:{this.insertionMode=_e.IN_ROW;return}case N.TBODY:case N.THEAD:case N.TFOOT:{this.insertionMode=_e.IN_TABLE_BODY;return}case N.CAPTION:{this.insertionMode=_e.IN_CAPTION;return}case N.COLGROUP:{this.insertionMode=_e.IN_COLUMN_GROUP;return}case N.TABLE:{this.insertionMode=_e.IN_TABLE;return}case N.BODY:{this.insertionMode=_e.IN_BODY;return}case N.FRAMESET:{this.insertionMode=_e.IN_FRAMESET;return}case N.SELECT:{this._resetInsertionModeForSelect(t);return}case N.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case N.HTML:{this.insertionMode=this.headElement?_e.AFTER_HEAD:_e.BEFORE_HEAD;return}case N.TD:case N.TH:{if(t>0){this.insertionMode=_e.IN_CELL;return}break}case N.HEAD:{if(t>0){this.insertionMode=_e.IN_HEAD;return}break}}this.insertionMode=_e.IN_BODY}_resetInsertionModeForSelect(t){if(t>0)for(let r=t-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===N.TEMPLATE)break;if(n===N.TABLE){this.insertionMode=_e.IN_SELECT_IN_TABLE;return}}this.insertionMode=_e.IN_SELECT}_isElementCausesFosterParenting(t){return hOt.has(t)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let t=this.openElements.stackTop;t>=0;t--){let r=this.openElements.items[t];switch(this.openElements.tagIDs[t]){case N.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ve.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case N.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[t-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(t){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,t,r.beforeElement):this.treeAdapter.appendChild(r.parent,t)}_isSpecialElement(t,r){let n=this.treeAdapter.getNamespaceURI(t);return $Te[n].has(r)}onCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){rrn(this,t);return}switch(this.insertionMode){case _e.INITIAL:{zk(this,t);break}case _e.BEFORE_HTML:{Qk(this,t);break}case _e.BEFORE_HEAD:{Wk(this,t);break}case _e.IN_HEAD:{Xk(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{Jk(this,t);break}case _e.AFTER_HEAD:{Zk(this,t);break}case _e.IN_BODY:case _e.IN_CAPTION:case _e.IN_CELL:case _e.IN_TEMPLATE:{mOt(this,t);break}case _e.TEXT:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:{this._insertCharacters(t);break}case _e.IN_TABLE:case _e.IN_TABLE_BODY:case _e.IN_ROW:{GTe(this,t);break}case _e.IN_TABLE_TEXT:{vOt(this,t);break}case _e.IN_COLUMN_GROUP:{LV(this,t);break}case _e.AFTER_BODY:{MV(this,t);break}case _e.AFTER_AFTER_BODY:{PV(this,t);break}default:}}onNullCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){trn(this,t);return}switch(this.insertionMode){case _e.INITIAL:{zk(this,t);break}case _e.BEFORE_HTML:{Qk(this,t);break}case _e.BEFORE_HEAD:{Wk(this,t);break}case _e.IN_HEAD:{Xk(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{Jk(this,t);break}case _e.AFTER_HEAD:{Zk(this,t);break}case _e.TEXT:{this._insertCharacters(t);break}case _e.IN_TABLE:case _e.IN_TABLE_BODY:case _e.IN_ROW:{GTe(this,t);break}case _e.IN_COLUMN_GROUP:{LV(this,t);break}case _e.AFTER_BODY:{MV(this,t);break}case _e.AFTER_AFTER_BODY:{PV(this,t);break}default:}}onComment(t){if(this.skipNextNewLine=!1,this.currentNotInHTML){zTe(this,t);return}switch(this.insertionMode){case _e.INITIAL:case _e.BEFORE_HTML:case _e.BEFORE_HEAD:case _e.IN_HEAD:case _e.IN_HEAD_NO_SCRIPT:case _e.AFTER_HEAD:case _e.IN_BODY:case _e.IN_TABLE:case _e.IN_CAPTION:case _e.IN_COLUMN_GROUP:case _e.IN_TABLE_BODY:case _e.IN_ROW:case _e.IN_CELL:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:case _e.IN_TEMPLATE:case _e.IN_FRAMESET:case _e.AFTER_FRAMESET:{zTe(this,t);break}case _e.IN_TABLE_TEXT:{Yk(this,t);break}case _e.AFTER_BODY:{Pen(this,t);break}case _e.AFTER_AFTER_BODY:case _e.AFTER_AFTER_FRAMESET:{Len(this,t);break}default:}}onDoctype(t){switch(this.skipNextNewLine=!1,this.insertionMode){case _e.INITIAL:{Men(this,t);break}case _e.BEFORE_HEAD:case _e.IN_HEAD:case _e.IN_HEAD_NO_SCRIPT:case _e.AFTER_HEAD:{this._err(t,Pe.misplacedDoctype);break}case _e.IN_TABLE_TEXT:{Yk(this,t);break}default:}}onStartTag(t){this.skipNextNewLine=!1,this.currentToken=t,this._processStartTag(t),t.selfClosing&&!t.ackSelfClosing&&this._err(t,Pe.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(t){this.shouldProcessStartTagTokenInForeignContent(t)?nrn(this,t):this._startTagOutsideForeignContent(t)}_startTagOutsideForeignContent(t){switch(this.insertionMode){case _e.INITIAL:{zk(this,t);break}case _e.BEFORE_HTML:{ken(this,t);break}case _e.BEFORE_HEAD:{Uen(this,t);break}case _e.IN_HEAD:{d0(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{qen(this,t);break}case _e.AFTER_HEAD:{Ven(this,t);break}case _e.IN_BODY:{sc(this,t);break}case _e.IN_TABLE:{QC(this,t);break}case _e.IN_TABLE_TEXT:{Yk(this,t);break}case _e.IN_CAPTION:{Ftn(this,t);break}case _e.IN_COLUMN_GROUP:{XTe(this,t);break}case _e.IN_TABLE_BODY:{UV(this,t);break}case _e.IN_ROW:{FV(this,t);break}case _e.IN_CELL:{Htn(this,t);break}case _e.IN_SELECT:{bOt(this,t);break}case _e.IN_SELECT_IN_TABLE:{jtn(this,t);break}case _e.IN_TEMPLATE:{Gtn(this,t);break}case _e.AFTER_BODY:{Ytn(this,t);break}case _e.IN_FRAMESET:{Qtn(this,t);break}case _e.AFTER_FRAMESET:{Xtn(this,t);break}case _e.AFTER_AFTER_BODY:{Ztn(this,t);break}case _e.AFTER_AFTER_FRAMESET:{ern(this,t);break}default:}}onEndTag(t){this.skipNextNewLine=!1,this.currentToken=t,this.currentNotInHTML?srn(this,t):this._endTagOutsideForeignContent(t)}_endTagOutsideForeignContent(t){switch(this.insertionMode){case _e.INITIAL:{zk(this,t);break}case _e.BEFORE_HTML:{Ben(this,t);break}case _e.BEFORE_HEAD:{Fen(this,t);break}case _e.IN_HEAD:{$en(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{Hen(this,t);break}case _e.AFTER_HEAD:{jen(this,t);break}case _e.IN_BODY:{BV(this,t);break}case _e.TEXT:{wtn(this,t);break}case _e.IN_TABLE:{e4(this,t);break}case _e.IN_TABLE_TEXT:{Yk(this,t);break}case _e.IN_CAPTION:{$tn(this,t);break}case _e.IN_COLUMN_GROUP:{qtn(this,t);break}case _e.IN_TABLE_BODY:{YTe(this,t);break}case _e.IN_ROW:{TOt(this,t);break}case _e.IN_CELL:{Vtn(this,t);break}case _e.IN_SELECT:{IOt(this,t);break}case _e.IN_SELECT_IN_TABLE:{Ktn(this,t);break}case _e.IN_TEMPLATE:{ztn(this,t);break}case _e.AFTER_BODY:{COt(this,t);break}case _e.IN_FRAMESET:{Wtn(this,t);break}case _e.AFTER_FRAMESET:{Jtn(this,t);break}case _e.AFTER_AFTER_BODY:{PV(this,t);break}default:}}onEof(t){switch(this.insertionMode){case _e.INITIAL:{zk(this,t);break}case _e.BEFORE_HTML:{Qk(this,t);break}case _e.BEFORE_HEAD:{Wk(this,t);break}case _e.IN_HEAD:{Xk(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{Jk(this,t);break}case _e.AFTER_HEAD:{Zk(this,t);break}case _e.IN_BODY:case _e.IN_TABLE:case _e.IN_CAPTION:case _e.IN_COLUMN_GROUP:case _e.IN_TABLE_BODY:case _e.IN_ROW:case _e.IN_CELL:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:{EOt(this,t);break}case _e.TEXT:{Ntn(this,t);break}case _e.IN_TABLE_TEXT:{Yk(this,t);break}case _e.IN_TEMPLATE:{ROt(this,t);break}case _e.AFTER_BODY:case _e.IN_FRAMESET:case _e.AFTER_FRAMESET:case _e.AFTER_AFTER_BODY:case _e.AFTER_AFTER_FRAMESET:{WTe(this,t);break}default:}}onWhitespaceCharacter(t){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,t.chars.charCodeAt(0)===ue.LINE_FEED)){if(t.chars.length===1)return;t.chars=t.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(t);return}switch(this.insertionMode){case _e.IN_HEAD:case _e.IN_HEAD_NO_SCRIPT:case _e.AFTER_HEAD:case _e.TEXT:case _e.IN_COLUMN_GROUP:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:case _e.IN_FRAMESET:case _e.AFTER_FRAMESET:{this._insertCharacters(t);break}case _e.IN_BODY:case _e.IN_CAPTION:case _e.IN_CELL:case _e.IN_TEMPLATE:case _e.AFTER_BODY:case _e.AFTER_AFTER_BODY:case _e.AFTER_AFTER_FRAMESET:{pOt(this,t);break}case _e.IN_TABLE:case _e.IN_TABLE_BODY:case _e.IN_ROW:{GTe(this,t);break}case _e.IN_TABLE_TEXT:{yOt(this,t);break}default:}}};SOt=new Set([N.CAPTION,N.COL,N.COLGROUP,N.TBODY,N.TD,N.TFOOT,N.TH,N.THEAD,N.TR])});function wOt(e,t){return function(n){let s,i=0,a="";for(;s=e.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=t.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var iys,NOt,OOt,DOt=ae(()=>{iys=String.prototype.codePointAt==null?(e,t)=>(e.charCodeAt(t)&64512)===55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t):(e,t)=>e.codePointAt(t);NOt=wOt(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),OOt=wOt(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))});function arn(e,t){return t.treeAdapter.isElementNode(e)&&t.treeAdapter.getNamespaceURI(e)===Ve.HTML&&irn.has(t.treeAdapter.getTagName(e))}function ZTe(e,t){let r={...orn,...t};return POt(e,r)}function crn(e,t){let r="",n=t.treeAdapter.isElementNode(e)&&t.treeAdapter.getTagName(e)===Ce.TEMPLATE&&t.treeAdapter.getNamespaceURI(e)===Ve.HTML?t.treeAdapter.getTemplateContent(e):e,s=t.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=POt(i,t);return r}function POt(e,t){return t.treeAdapter.isElementNode(e)?urn(e,t):t.treeAdapter.isTextNode(e)?drn(e,t):t.treeAdapter.isCommentNode(e)?frn(e,t):t.treeAdapter.isDocumentTypeNode(e)?hrn(e,t):""}function urn(e,t){let r=t.treeAdapter.getTagName(e);return`<${r}${lrn(e,t)}>${arn(e,t)?"":`${crn(e,t)}`}`}function lrn(e,{treeAdapter:t}){let r="";for(let n of t.getAttrList(e)){if(r+=" ",n.namespace)switch(n.namespace){case Ve.XML:{r+=`xml:${n.name}`;break}case Ve.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ve.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${NOt(n.value)}"`}return r}function drn(e,t){let{treeAdapter:r}=t,n=r.getTextNodeContent(e),s=r.getParentNode(e),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ve.HTML&&qTe(i,t.scriptingEnabled)?n:OOt(n)}function frn(e,{treeAdapter:t}){return``}function hrn(e,{treeAdapter:t}){return``}var irn,orn,LOt=ae(()=>{Ng();DOt();NV();irn=new Set([Ce.AREA,Ce.BASE,Ce.BASEFONT,Ce.BGSOUND,Ce.BR,Ce.COL,Ce.EMBED,Ce.FRAME,Ce.HR,Ce.IMG,Ce.INPUT,Ce.KEYGEN,Ce.LINK,Ce.META,Ce.PARAM,Ce.SOURCE,Ce.TRACK,Ce.WBR]);orn={treeAdapter:Yd,scriptingEnabled:!0}});function MOt(e,t){return YC.parse(e,t)}function kOt(e,t,r){typeof e=="string"&&(r=t,t=e,e=null);let n=YC.getFragmentParser(e,r);return n.tokenizer.write(t,!0),n.getFragment()}var ebe=ae(()=>{JTe();NV();JTe();LOt();jk();KTe();Ng();SV();HTe()});function BOt(e){let t=e.includes('"')?"'":'"';return t+e+t}function prn(e,t,r){let n="!DOCTYPE ";return e&&(n+=e),t?n+=` PUBLIC ${BOt(t)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${BOt(r)}`),n}var Og,UOt=ae(()=>{ebe();tc();Og={isCommentNode:gT,isElementNode:bt,isTextNode:Gu,createDocument(){let e=new Bl([]);return e["x-mode"]=IV.DOCUMENT_MODE.NO_QUIRKS,e},createDocumentFragment(){return new Bl([])},createElement(e,t,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;oUH(a)&&a.name==="!doctype");i?i.data=s??null:(i=new pT("!doctype",s),Og.appendChild(e,i)),i["x-name"]=t,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(e,t){e["x-mode"]=t},getDocumentMode(e){return e["x-mode"]},detachNode(e){if(e.parent){let t=e.parent.children.indexOf(e),{prev:r,next:n}=e;e.prev=null,e.next=null,r&&(r.next=n),n&&(n.prev=r),e.parent.children.splice(t,1),e.parent=null}},insertText(e,t){let r=e.children[e.children.length-1];r&&Gu(r)?r.data+=t:Og.appendChild(e,Og.createTextNode(t))},insertTextBefore(e,t,r){let n=e.children[e.children.indexOf(r)-1];n&&Gu(n)?n.data+=t:Og.insertBefore(e,Og.createTextNode(t),r)},adoptAttributes(e,t){for(let r=0;r{tc();ebe();UOt();mrn={treeAdapter:Og}});function Dg(e){return e===pt.Space||e===pt.NewLine||e===pt.Tab||e===pt.FormFeed||e===pt.CarriageReturn}function $V(e){return e===pt.Slash||e===pt.Gt||Dg(e)}function HOt(e){return e>=pt.Zero&&e<=pt.Nine}function grn(e){return e>=pt.LowerA&&e<=pt.LowerZ||e>=pt.UpperA&&e<=pt.UpperZ}function _rn(e){return e>=pt.UpperA&&e<=pt.UpperF||e>=pt.LowerA&&e<=pt.LowerF}var pt,Ke,f0,Wu,WC,tbe=ae(()=>{Pk();(function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"})(pt||(pt={}));(function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"})(Ke||(Ke={}));(function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"})(f0||(f0={}));Wu={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},WC=class{constructor({xmlMode:t=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=Ke.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ke.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=t,this.decodeEntities=r,this.entityTrie=t?$H:FH}reset(){this.state=Ke.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ke.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(t){this.offset+=this.buffer.length,this.buffer=t,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=Ke.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&t===pt.Amp&&(this.state=Ke.BeforeEntity)}stateSpecialStartSequence(t){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?$V(t):(t|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=Ke.InTagName,this.stateInTagName(t)}stateInSpecialTag(t){if(this.sequenceIndex===this.currentSequence.length){if(t===pt.Gt||Dg(t)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&t!==pt.Semi)this.trieIndex+=n;else{let s=this.index-this.entityExcess+1;s>this.sectionStart&&this.emitPartial(this.sectionStart,s),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,n===0&&this.emitNamedEntity()}}}emitNamedEntity(){if(this.state=this.baseState,this.entityResult===0)return;switch((this.entityTrie[this.entityResult]&jd.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~jd.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(t){(t|32)===pt.LowerX?(this.entityExcess++,this.state=Ke.InHexEntity):(this.state=Ke.InNumericEntity,this.stateInNumericEntity(t))}emitNumericEntity(t){let r=this.index-this.entityExcess-1;r+2+ +(this.state===Ke.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(t),this.emitCodePoint(Dk(this.entityResult))),this.state=this.baseState}stateInNumericEntity(t){t===pt.Semi?this.emitNumericEntity(!0):HOt(t)?(this.entityResult=this.entityResult*10+(t-pt.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(t){t===pt.Semi?this.emitNumericEntity(!0):HOt(t)?(this.entityResult=this.entityResult*16+(t-pt.Zero),this.entityExcess++):_rn(t)?(this.entityResult=this.entityResult*16+((t|32)-pt.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===Ke.Text||this.baseState===Ke.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===Ke.Text||this.state===Ke.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===Ke.InAttributeValueDq||this.state===Ke.InAttributeValueSq||this.state===Ke.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index{tbe();Pk();XC=new Set(["input","option","optgroup","select","button","datalist","textarea"]),ms=new Set(["p"]),VOt=new Set(["thead","tbody"]),jOt=new Set(["dd","dt"]),KOt=new Set(["rt","rp"]),Arn=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",ms],["h1",ms],["h2",ms],["h3",ms],["h4",ms],["h5",ms],["h6",ms],["select",XC],["input",XC],["output",XC],["button",XC],["datalist",XC],["textarea",XC],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",jOt],["dt",jOt],["address",ms],["article",ms],["aside",ms],["blockquote",ms],["details",ms],["div",ms],["dl",ms],["fieldset",ms],["figcaption",ms],["figure",ms],["footer",ms],["form",ms],["header",ms],["hr",ms],["main",ms],["nav",ms],["ol",ms],["pre",ms],["section",ms],["table",ms],["ul",ms],["rt",KOt],["rp",KOt],["tbody",VOt],["tfoot",VOt]]),Ern=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),GOt=new Set(["math","svg"]),zOt=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),yrn=/\s|\//,r4=class{constructor(t,r={}){var n,s,i,a,o;this.options=r,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=t??{},this.lowerCaseTagNames=(n=r.lowerCaseTags)!==null&&n!==void 0?n:!r.xmlMode,this.lowerCaseAttributeNames=(s=r.lowerCaseAttributeNames)!==null&&s!==void 0?s:!r.xmlMode,this.tokenizer=new((i=r.Tokenizer)!==null&&i!==void 0?i:WC)(this.options,this),(o=(a=this.cbs).onparserinit)===null||o===void 0||o.call(a,this)}ontext(t,r){var n,s;let i=this.getSlice(t,r);this.endIndex=r-1,(s=(n=this.cbs).ontext)===null||s===void 0||s.call(n,i),this.startIndex=r}ontextentity(t){var r,n;let s=this.tokenizer.getSectionStart();this.endIndex=s-1,(n=(r=this.cbs).ontext)===null||n===void 0||n.call(r,LC(t)),this.startIndex=s}isVoidElement(t){return!this.options.xmlMode&&Ern.has(t)}onopentagname(t,r){this.endIndex=r;let n=this.getSlice(t,r);this.lowerCaseTagNames&&(n=n.toLowerCase()),this.emitOpenTag(n)}emitOpenTag(t){var r,n,s,i;this.openTagStart=this.startIndex,this.tagname=t;let a=!this.options.xmlMode&&Arn.get(t);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){let o=this.stack.pop();(n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,o,!0)}this.isVoidElement(t)||(this.stack.push(t),GOt.has(t)?this.foreignContext.push(!0):zOt.has(t)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,t),this.cbs.onopentag&&(this.attribs={})}endOpenTag(t){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,t),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(t){this.endIndex=t,this.endOpenTag(!1),this.startIndex=t+1}onclosetag(t,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(t,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(GOt.has(u)||zOt.has(u))&&this.foreignContext.pop(),this.isVoidElement(u))!this.options.xmlMode&&u==="br"&&((s=(n=this.cbs).onopentagname)===null||s===void 0||s.call(n,"br"),(a=(i=this.cbs).onopentag)===null||a===void 0||a.call(i,"br",{},!0),(c=(o=this.cbs).onclosetag)===null||c===void 0||c.call(o,"br",!1));else{let l=this.stack.lastIndexOf(u);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&u==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(t){this.endIndex=t,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=t+1):this.onopentagend(t)}closeCurrentTag(t){var r,n;let s=this.tagname;this.endOpenTag(t),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!t),this.stack.pop())}onattribname(t,r){this.startIndex=t;let n=this.getSlice(t,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(t,r){this.attribvalue+=this.getSlice(t,r)}onattribentity(t){this.attribvalue+=LC(t)}onattribend(t,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,t===f0.Double?'"':t===f0.Single?"'":t===f0.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(t){let r=t.search(yrn),n=r<0?t:t.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(t,r){this.endIndex=r;let n=this.getSlice(t,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(t,r){this.endIndex=r;let n=this.getSlice(t,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(t,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(t,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(t,r,n){var s,i,a,o,c,u,l,d,f,h;this.endIndex=r;let p=this.getSlice(t,r-n);this.options.xmlMode||this.options.recognizeCDATA?((i=(s=this.cbs).oncdatastart)===null||i===void 0||i.call(s),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,p),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${p}]]`),(h=(f=this.cbs).oncommentend)===null||h===void 0||h.call(f)),this.startIndex=r+1}onend(){var t,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(t=this.cbs).onend)===null||r===void 0||r.call(t)}reset(){var t,r,n,s;(r=(t=this.cbs).onreset)===null||r===void 0||r.call(t),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(s=(n=this.cbs).onparserinit)===null||s===void 0||s.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(t){this.reset(),this.end(t)}getSlice(t,r){for(;t-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(t-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(t){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(t),this.tokenizer.running&&(this.tokenizer.write(t),this.writeIndex++)}end(t){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}t&&this.write(t),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{rbe();rbe();tc();tc();tbe();OC();c0();c0();c0()});var vrn,er,TT,jys,Kys,Gys,zys,Qd=ae(()=>{Nxt();kNt();NTe();qOt();KSe();QOt();AT();AT();vrn=bNt((e,t,r,n)=>t.xmlMode||t._useHtmlParser2?YOt(e,t):FOt(e,t,r,n)),er=MNt(vrn,(e,t)=>t.xmlMode||t._useHtmlParser2?GH(e,t):$Ot(e)),TT=er([]),{contains:jys}=mE,{merge:Kys}=mE,{parseHTML:Gys}=mE,{root:zys}=mE});var tn=S((qV,XOt)=>{(function(e,t){typeof qV=="object"?XOt.exports=qV=t():typeof define=="function"&&define.amd?define([],t):e.CryptoJS=t()})(qV,function(){var e=e||function(t,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var s=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},i=Object.create||function(){function g(){}return function(y){var A;return g.prototype=y,A=new g,g.prototype=null,A}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var y=i(this);return g&&y.mixIn(g),(!y.hasOwnProperty("init")||this.init===y.init)&&(y.init=function(){y.$super.init.apply(this,arguments)}),y.init.prototype=y,y.$super=this,y},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var y in g)g.hasOwnProperty(y)&&(this[y]=g[y]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,y){g=this.words=g||[],y!=r?this.sigBytes=y:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var y=this.words,A=g.words,E=this.sigBytes,v=g.sigBytes;if(this.clamp(),E%4)for(var b=0;b>>2]>>>24-b%4*8&255;y[E+b>>>2]|=I<<24-(E+b)%4*8}else for(var T=0;T>>2]=A[T>>>2];return this.sigBytes+=v,this},clamp:function(){var g=this.words,y=this.sigBytes;g[y>>>2]&=4294967295<<32-y%4*8,g.length=t.ceil(y/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var y=[],A=0;A>>2]>>>24-v%4*8&255;E.push((b>>>4).toString(16)),E.push((b&15).toString(16))}return E.join("")},parse:function(g){for(var y=g.length,A=[],E=0;E>>3]|=parseInt(g.substr(E,2),16)<<24-E%8*4;return new u.init(A,y/2)}},f=l.Latin1={stringify:function(g){for(var y=g.words,A=g.sigBytes,E=[],v=0;v>>2]>>>24-v%4*8&255;E.push(String.fromCharCode(b))}return E.join("")},parse:function(g){for(var y=g.length,A=[],E=0;E>>2]|=(g.charCodeAt(E)&255)<<24-E%4*8;return new u.init(A,y)}},h=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},p=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=h.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var y,A=this._data,E=A.words,v=A.sigBytes,b=this.blockSize,I=b*4,T=v/I;g?T=t.ceil(T):T=t.max((T|0)-this._minBufferSize,0);var x=T*b,w=t.min(x*4,v);if(x){for(var D=0;D{(function(e,t){typeof HV=="object"?JOt.exports=HV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(HV,function(e){return function(t){var r=e,n=r.lib,s=n.Base,i=n.WordArray,a=r.x64={},o=a.Word=s.extend({init:function(u,l){this.high=u,this.low=l}}),c=a.WordArray=s.extend({init:function(u,l){u=this.words=u||[],l!=t?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f{(function(e,t){typeof VV=="object"?ZOt.exports=VV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(VV,function(e){return function(){if(typeof ArrayBuffer=="function"){var t=e,r=t.lib,n=r.WordArray,s=n.init,i=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,c=[],u=0;u>>2]|=a[u]<<24-u%4*8;s.call(this,c,o)}else s.apply(this,arguments)};i.prototype=n}}(),e.lib.WordArray})});var r2t=S((jV,t2t)=>{(function(e,t){typeof jV=="object"?t2t.exports=jV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(jV,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.enc,i=s.Utf16=s.Utf16BE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535;l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=o.charCodeAt(l)<<16-l%2*16;return n.create(u,c*2)}};s.Utf16LE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535);l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=a(o.charCodeAt(l)<<16-l%2*16);return n.create(u,c*2)}};function a(o){return o<<8&4278255360|o>>>8&16711935}}(),e.enc.Utf16})});var TE=S((KV,n2t)=>{(function(e,t){typeof KV=="object"?n2t.exports=KV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(KV,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.enc,i=s.Base64={stringify:function(o){var c=o.words,u=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f>>2]>>>24-f%4*8&255,p=c[f+1>>>2]>>>24-(f+1)%4*8&255,m=c[f+2>>>2]>>>24-(f+2)%4*8&255,_=h<<16|p<<8|m,g=0;g<4&&f+g*.75>>6*(3-g)&63));var y=l.charAt(64);if(y)for(;d.length%4;)d.push(y);return d.join("")},parse:function(o){var c=o.length,u=this._map,l=this._reverseMap;if(!l){l=this._reverseMap=[];for(var d=0;d>>6-f%4*2,m=h|p;l[d>>>2]|=m<<24-d%4*8,d++}return n.create(l,d)}}(),e.enc.Base64})});var i2t=S((GV,s2t)=>{(function(e,t){typeof GV=="object"?s2t.exports=GV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(GV,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.enc,i=s.Base64url={stringify:function(o,c){c===void 0&&(c=!0);var u=o.words,l=o.sigBytes,d=c?this._safe_map:this._map;o.clamp();for(var f=[],h=0;h>>2]>>>24-h%4*8&255,m=u[h+1>>>2]>>>24-(h+1)%4*8&255,_=u[h+2>>>2]>>>24-(h+2)%4*8&255,g=p<<16|m<<8|_,y=0;y<4&&h+y*.75>>6*(3-y)&63));var A=d.charAt(64);if(A)for(;f.length%4;)f.push(A);return f.join("")},parse:function(o,c){c===void 0&&(c=!0);var u=o.length,l=c?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f>>6-f%4*2,m=h|p;l[d>>>2]|=m<<24-d%4*8,d++}return n.create(l,d)}}(),e.enc.Base64url})});var bE=S((zV,a2t)=>{(function(e,t){typeof zV=="object"?a2t.exports=zV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(zV,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var h=0;h<64;h++)o[h]=t.abs(t.sin(h+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(h,p){for(var m=0;m<16;m++){var _=p+m,g=h[_];h[_]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var y=this._hash.words,A=h[p+0],E=h[p+1],v=h[p+2],b=h[p+3],I=h[p+4],T=h[p+5],x=h[p+6],w=h[p+7],D=h[p+8],M=h[p+9],L=h[p+10],U=h[p+11],G=h[p+12],$=h[p+13],K=h[p+14],ee=h[p+15],z=y[0],oe=y[1],le=y[2],te=y[3];z=u(z,oe,le,te,A,7,o[0]),te=u(te,z,oe,le,E,12,o[1]),le=u(le,te,z,oe,v,17,o[2]),oe=u(oe,le,te,z,b,22,o[3]),z=u(z,oe,le,te,I,7,o[4]),te=u(te,z,oe,le,T,12,o[5]),le=u(le,te,z,oe,x,17,o[6]),oe=u(oe,le,te,z,w,22,o[7]),z=u(z,oe,le,te,D,7,o[8]),te=u(te,z,oe,le,M,12,o[9]),le=u(le,te,z,oe,L,17,o[10]),oe=u(oe,le,te,z,U,22,o[11]),z=u(z,oe,le,te,G,7,o[12]),te=u(te,z,oe,le,$,12,o[13]),le=u(le,te,z,oe,K,17,o[14]),oe=u(oe,le,te,z,ee,22,o[15]),z=l(z,oe,le,te,E,5,o[16]),te=l(te,z,oe,le,x,9,o[17]),le=l(le,te,z,oe,U,14,o[18]),oe=l(oe,le,te,z,A,20,o[19]),z=l(z,oe,le,te,T,5,o[20]),te=l(te,z,oe,le,L,9,o[21]),le=l(le,te,z,oe,ee,14,o[22]),oe=l(oe,le,te,z,I,20,o[23]),z=l(z,oe,le,te,M,5,o[24]),te=l(te,z,oe,le,K,9,o[25]),le=l(le,te,z,oe,b,14,o[26]),oe=l(oe,le,te,z,D,20,o[27]),z=l(z,oe,le,te,$,5,o[28]),te=l(te,z,oe,le,v,9,o[29]),le=l(le,te,z,oe,w,14,o[30]),oe=l(oe,le,te,z,G,20,o[31]),z=d(z,oe,le,te,T,4,o[32]),te=d(te,z,oe,le,D,11,o[33]),le=d(le,te,z,oe,U,16,o[34]),oe=d(oe,le,te,z,K,23,o[35]),z=d(z,oe,le,te,E,4,o[36]),te=d(te,z,oe,le,I,11,o[37]),le=d(le,te,z,oe,w,16,o[38]),oe=d(oe,le,te,z,L,23,o[39]),z=d(z,oe,le,te,$,4,o[40]),te=d(te,z,oe,le,A,11,o[41]),le=d(le,te,z,oe,b,16,o[42]),oe=d(oe,le,te,z,x,23,o[43]),z=d(z,oe,le,te,M,4,o[44]),te=d(te,z,oe,le,G,11,o[45]),le=d(le,te,z,oe,ee,16,o[46]),oe=d(oe,le,te,z,v,23,o[47]),z=f(z,oe,le,te,A,6,o[48]),te=f(te,z,oe,le,w,10,o[49]),le=f(le,te,z,oe,K,15,o[50]),oe=f(oe,le,te,z,T,21,o[51]),z=f(z,oe,le,te,G,6,o[52]),te=f(te,z,oe,le,b,10,o[53]),le=f(le,te,z,oe,L,15,o[54]),oe=f(oe,le,te,z,E,21,o[55]),z=f(z,oe,le,te,D,6,o[56]),te=f(te,z,oe,le,ee,10,o[57]),le=f(le,te,z,oe,x,15,o[58]),oe=f(oe,le,te,z,$,21,o[59]),z=f(z,oe,le,te,I,6,o[60]),te=f(te,z,oe,le,U,10,o[61]),le=f(le,te,z,oe,v,15,o[62]),oe=f(oe,le,te,z,M,21,o[63]),y[0]=y[0]+z|0,y[1]=y[1]+oe|0,y[2]=y[2]+le|0,y[3]=y[3]+te|0},_doFinalize:function(){var h=this._data,p=h.words,m=this._nDataBytes*8,_=h.sigBytes*8;p[_>>>5]|=128<<24-_%32;var g=t.floor(m/4294967296),y=m;p[(_+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,p[(_+64>>>9<<4)+14]=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,h.sigBytes=(p.length+1)*4,this._process();for(var A=this._hash,E=A.words,v=0;v<4;v++){var b=E[v];E[v]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360}return A},clone:function(){var h=i.clone.call(this);return h._hash=this._hash.clone(),h}});function u(h,p,m,_,g,y,A){var E=h+(p&m|~p&_)+g+A;return(E<>>32-y)+p}function l(h,p,m,_,g,y,A){var E=h+(p&_|m&~_)+g+A;return(E<>>32-y)+p}function d(h,p,m,_,g,y,A){var E=h+(p^m^_)+g+A;return(E<>>32-y)+p}function f(h,p,m,_,g,y,A){var E=h+(m^(p|~_))+g+A;return(E<>>32-y)+p}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),e.MD5})});var nbe=S((YV,o2t)=>{(function(e,t){typeof YV=="object"?o2t.exports=YV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(YV,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=r.Hasher,i=t.algo,a=[],o=i.SHA1=s.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(c,u){for(var l=this._hash.words,d=l[0],f=l[1],h=l[2],p=l[3],m=l[4],_=0;_<80;_++){if(_<16)a[_]=c[u+_]|0;else{var g=a[_-3]^a[_-8]^a[_-14]^a[_-16];a[_]=g<<1|g>>>31}var y=(d<<5|d>>>27)+m+a[_];_<20?y+=(f&h|~f&p)+1518500249:_<40?y+=(f^h^p)+1859775393:_<60?y+=(f&h|f&p|h&p)-1894007588:y+=(f^h^p)-899497514,m=p,p=h,h=f<<30|f>>>2,f=d,d=y}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+h|0,l[3]=l[3]+p|0,l[4]=l[4]+m|0},_doFinalize:function(){var c=this._data,u=c.words,l=this._nDataBytes*8,d=c.sigBytes*8;return u[d>>>5]|=128<<24-d%32,u[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),u[(d+64>>>9<<4)+15]=l,c.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var c=s.clone.call(this);return c._hash=this._hash.clone(),c}});t.SHA1=s._createHelper(o),t.HmacSHA1=s._createHmacHelper(o)}(),e.SHA1})});var WV=S((QV,c2t)=>{(function(e,t){typeof QV=="object"?c2t.exports=QV=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(QV,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(m){for(var _=t.sqrt(m),g=2;g<=_;g++)if(!(m%g))return!1;return!0}function f(m){return(m-(m|0))*4294967296|0}for(var h=2,p=0;p<64;)d(h)&&(p<8&&(o[p]=f(t.pow(h,1/2))),c[p]=f(t.pow(h,1/3)),p++),h++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var h=this._hash.words,p=h[0],m=h[1],_=h[2],g=h[3],y=h[4],A=h[5],E=h[6],v=h[7],b=0;b<64;b++){if(b<16)u[b]=d[f+b]|0;else{var I=u[b-15],T=(I<<25|I>>>7)^(I<<14|I>>>18)^I>>>3,x=u[b-2],w=(x<<15|x>>>17)^(x<<13|x>>>19)^x>>>10;u[b]=T+u[b-7]+w+u[b-16]}var D=y&A^~y&E,M=p&m^p&_^m&_,L=(p<<30|p>>>2)^(p<<19|p>>>13)^(p<<10|p>>>22),U=(y<<26|y>>>6)^(y<<21|y>>>11)^(y<<7|y>>>25),G=v+U+D+c[b]+u[b],$=L+M;v=E,E=A,A=y,y=g+G|0,g=_,_=m,m=p,p=G+$|0}h[0]=h[0]+p|0,h[1]=h[1]+m|0,h[2]=h[2]+_|0,h[3]=h[3]+g|0,h[4]=h[4]+y|0,h[5]=h[5]+A|0,h[6]=h[6]+E|0,h[7]=h[7]+v|0},_doFinalize:function(){var d=this._data,f=d.words,h=this._nDataBytes*8,p=d.sigBytes*8;return f[p>>>5]|=128<<24-p%32,f[(p+64>>>9<<4)+14]=t.floor(h/4294967296),f[(p+64>>>9<<4)+15]=h,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=i.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=i._createHelper(l),r.HmacSHA256=i._createHmacHelper(l)}(Math),e.SHA256})});var l2t=S((XV,u2t)=>{(function(e,t,r){typeof XV=="object"?u2t.exports=XV=t(tn(),WV()):typeof define=="function"&&define.amd?define(["./core","./sha256"],t):t(e.CryptoJS)})(XV,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.algo,i=s.SHA256,a=s.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=i._doFinalize.call(this);return o.sigBytes-=4,o}});t.SHA224=i._createHelper(a),t.HmacSHA224=i._createHmacHelper(a)}(),e.SHA224})});var sbe=S((JV,d2t)=>{(function(e,t,r){typeof JV=="object"?d2t.exports=JV=t(tn(),n4()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],t):t(e.CryptoJS)})(JV,function(e){return function(){var t=e,r=t.lib,n=r.Hasher,s=t.x64,i=s.Word,a=s.WordArray,o=t.algo;function c(){return i.create.apply(i,arguments)}var u=[c(1116352408,3609767458),c(1899447441,602891725),c(3049323471,3964484399),c(3921009573,2173295548),c(961987163,4081628472),c(1508970993,3053834265),c(2453635748,2937671579),c(2870763221,3664609560),c(3624381080,2734883394),c(310598401,1164996542),c(607225278,1323610764),c(1426881987,3590304994),c(1925078388,4068182383),c(2162078206,991336113),c(2614888103,633803317),c(3248222580,3479774868),c(3835390401,2666613458),c(4022224774,944711139),c(264347078,2341262773),c(604807628,2007800933),c(770255983,1495990901),c(1249150122,1856431235),c(1555081692,3175218132),c(1996064986,2198950837),c(2554220882,3999719339),c(2821834349,766784016),c(2952996808,2566594879),c(3210313671,3203337956),c(3336571891,1034457026),c(3584528711,2466948901),c(113926993,3758326383),c(338241895,168717936),c(666307205,1188179964),c(773529912,1546045734),c(1294757372,1522805485),c(1396182291,2643833823),c(1695183700,2343527390),c(1986661051,1014477480),c(2177026350,1206759142),c(2456956037,344077627),c(2730485921,1290863460),c(2820302411,3158454273),c(3259730800,3505952657),c(3345764771,106217008),c(3516065817,3606008344),c(3600352804,1432725776),c(4094571909,1467031594),c(275423344,851169720),c(430227734,3100823752),c(506948616,1363258195),c(659060556,3750685593),c(883997877,3785050280),c(958139571,3318307427),c(1322822218,3812723403),c(1537002063,2003034995),c(1747873779,3602036899),c(1955562222,1575990012),c(2024104815,1125592928),c(2227730452,2716904306),c(2361852424,442776044),c(2428436474,593698344),c(2756734187,3733110249),c(3204031479,2999351573),c(3329325298,3815920427),c(3391569614,3928383900),c(3515267271,566280711),c(3940187606,3454069534),c(4118630271,4000239992),c(116418474,1914138554),c(174292421,2731055270),c(289380356,3203993006),c(460393269,320620315),c(685471733,587496836),c(852142971,1086792851),c(1017036298,365543100),c(1126000580,2618297676),c(1288033470,3409855158),c(1501505948,4234509866),c(1607167915,987167468),c(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=c()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(f,h){for(var p=this._hash.words,m=p[0],_=p[1],g=p[2],y=p[3],A=p[4],E=p[5],v=p[6],b=p[7],I=m.high,T=m.low,x=_.high,w=_.low,D=g.high,M=g.low,L=y.high,U=y.low,G=A.high,$=A.low,K=E.high,ee=E.low,z=v.high,oe=v.low,le=b.high,te=b.low,Q=I,Z=T,de=x,B=w,k=D,W=M,P=L,H=U,j=G,q=$,Y=K,X=ee,ie=z,ne=oe,se=le,J=te,ce=0;ce<80;ce++){var ge,be,Te=l[ce];if(ce<16)be=Te.high=f[h+ce*2]|0,ge=Te.low=f[h+ce*2+1]|0;else{var xe=l[ce-15],Fe=xe.high,Ee=xe.low,me=(Fe>>>1|Ee<<31)^(Fe>>>8|Ee<<24)^Fe>>>7,Ae=(Ee>>>1|Fe<<31)^(Ee>>>8|Fe<<24)^(Ee>>>7|Fe<<25),pe=l[ce-2],Se=pe.high,Ie=pe.low,Le=(Se>>>19|Ie<<13)^(Se<<3|Ie>>>29)^Se>>>6,we=(Ie>>>19|Se<<13)^(Ie<<3|Se>>>29)^(Ie>>>6|Se<<26),He=l[ce-7],Ge=He.high,ke=He.low,Qe=l[ce-16],It=Qe.high,ze=Qe.low;ge=Ae+ke,be=me+Ge+(ge>>>0>>0?1:0),ge=ge+we,be=be+Le+(ge>>>0>>0?1:0),ge=ge+ze,be=be+It+(ge>>>0>>0?1:0),Te.high=be,Te.low=ge}var ot=j&Y^~j&ie,lt=q&X^~q&ne,_t=Q&de^Q&k^de&k,mr=Z&B^Z&W^B&W,Ht=(Q>>>28|Z<<4)^(Q<<30|Z>>>2)^(Q<<25|Z>>>7),it=(Z>>>28|Q<<4)^(Z<<30|Q>>>2)^(Z<<25|Q>>>7),yt=(j>>>14|q<<18)^(j>>>18|q<<14)^(j<<23|q>>>9),vs=(q>>>14|j<<18)^(q>>>18|j<<14)^(q<<23|j>>>9),kn=u[ce],Ns=kn.high,qs=kn.low,Bn=J+vs,co=se+yt+(Bn>>>0>>0?1:0),Bn=Bn+lt,co=co+ot+(Bn>>>0>>0?1:0),Bn=Bn+qs,co=co+Ns+(Bn>>>0>>0?1:0),Bn=Bn+ge,co=co+be+(Bn>>>0>>0?1:0),El=it+mr,Po=Ht+_t+(El>>>0>>0?1:0);se=ie,J=ne,ie=Y,ne=X,Y=j,X=q,q=H+Bn|0,j=P+co+(q>>>0>>0?1:0)|0,P=k,H=W,k=de,W=B,de=Q,B=Z,Z=Bn+El|0,Q=co+Po+(Z>>>0>>0?1:0)|0}T=m.low=T+Z,m.high=I+Q+(T>>>0>>0?1:0),w=_.low=w+B,_.high=x+de+(w>>>0>>0?1:0),M=g.low=M+W,g.high=D+k+(M>>>0>>0?1:0),U=y.low=U+H,y.high=L+P+(U>>>0>>0?1:0),$=A.low=$+q,A.high=G+j+($>>>0>>0?1:0),ee=E.low=ee+X,E.high=K+Y+(ee>>>0>>0?1:0),oe=v.low=oe+ne,v.high=z+ie+(oe>>>0>>0?1:0),te=b.low=te+J,b.high=le+se+(te>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,h=f.words,p=this._nDataBytes*8,m=f.sigBytes*8;h[m>>>5]|=128<<24-m%32,h[(m+128>>>10<<5)+30]=Math.floor(p/4294967296),h[(m+128>>>10<<5)+31]=p,f.sigBytes=h.length*4,this._process();var _=this._hash.toX32();return _},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});t.SHA512=n._createHelper(d),t.HmacSHA512=n._createHmacHelper(d)}(),e.SHA512})});var h2t=S((ZV,f2t)=>{(function(e,t,r){typeof ZV=="object"?f2t.exports=ZV=t(tn(),n4(),sbe()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],t):t(e.CryptoJS)})(ZV,function(e){return function(){var t=e,r=t.x64,n=r.Word,s=r.WordArray,i=t.algo,a=i.SHA512,o=i.SHA384=a.extend({_doReset:function(){this._hash=new s.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var c=a._doFinalize.call(this);return c.sigBytes-=16,c}});t.SHA384=a._createHelper(o),t.HmacSHA384=a._createHmacHelper(o)}(),e.SHA384})});var m2t=S((e7,p2t)=>{(function(e,t,r){typeof e7=="object"?p2t.exports=e7=t(tn(),n4()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],t):t(e.CryptoJS)})(e7,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var p=1,m=0,_=0;_<24;_++){u[p+5*m]=(_+1)*(_+2)/2%64;var g=m%5,y=(2*p+3*m)%5;p=g,m=y}for(var p=0;p<5;p++)for(var m=0;m<5;m++)l[p+5*m]=m+(2*p+3*m)%5*5;for(var A=1,E=0;E<24;E++){for(var v=0,b=0,I=0;I<7;I++){if(A&1){var T=(1<>>24)&16711935|(A<<24|A>>>8)&4278255360,E=(E<<8|E>>>24)&16711935|(E<<24|E>>>8)&4278255360;var v=_[y];v.high^=E,v.low^=A}for(var b=0;b<24;b++){for(var I=0;I<5;I++){for(var T=0,x=0,w=0;w<5;w++){var v=_[I+5*w];T^=v.high,x^=v.low}var D=f[I];D.high=T,D.low=x}for(var I=0;I<5;I++)for(var M=f[(I+4)%5],L=f[(I+1)%5],U=L.high,G=L.low,T=M.high^(U<<1|G>>>31),x=M.low^(G<<1|U>>>31),w=0;w<5;w++){var v=_[I+5*w];v.high^=T,v.low^=x}for(var $=1;$<25;$++){var T,x,v=_[$],K=v.high,ee=v.low,z=u[$];z<32?(T=K<>>32-z,x=ee<>>32-z):(T=ee<>>64-z,x=K<>>64-z);var oe=f[l[$]];oe.high=T,oe.low=x}var le=f[0],te=_[0];le.high=te.high,le.low=te.low;for(var I=0;I<5;I++)for(var w=0;w<5;w++){var $=I+5*w,v=_[$],Q=f[$],Z=f[(I+1)%5+5*w],de=f[(I+2)%5+5*w];v.high=Q.high^~Z.high&de.high,v.low=Q.low^~Z.low&de.low}var v=_[0],B=d[b];v.high^=B.high,v.low^=B.low}},_doFinalize:function(){var p=this._data,m=p.words,_=this._nDataBytes*8,g=p.sigBytes*8,y=this.blockSize*32;m[g>>>5]|=1<<24-g%32,m[(t.ceil((g+1)/y)*y>>>5)-1]|=128,p.sigBytes=m.length*4,this._process();for(var A=this._state,E=this.cfg.outputLength/8,v=E/8,b=[],I=0;I>>24)&16711935|(x<<24|x>>>8)&4278255360,w=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360,b.push(w),b.push(x)}return new s.init(b,E)},clone:function(){for(var p=i.clone.call(this),m=p._state=this._state.slice(0),_=0;_<25;_++)m[_]=m[_].clone();return p}});r.SHA3=i._createHelper(h),r.HmacSHA3=i._createHmacHelper(h)}(Math),e.SHA3})});var _2t=S((t7,g2t)=>{(function(e,t){typeof t7=="object"?g2t.exports=t7=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(t7,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=s.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=s.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=s.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=s.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=s.create([0,1518500249,1859775393,2400959708,2840853838]),f=s.create([1352829926,1548603684,1836072691,2053994217,0]),h=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(E,v){for(var b=0;b<16;b++){var I=v+b,T=E[I];E[I]=(T<<8|T>>>24)&16711935|(T<<24|T>>>8)&4278255360}var x=this._hash.words,w=d.words,D=f.words,M=o.words,L=c.words,U=u.words,G=l.words,$,K,ee,z,oe,le,te,Q,Z,de;le=$=x[0],te=K=x[1],Q=ee=x[2],Z=z=x[3],de=oe=x[4];for(var B,b=0;b<80;b+=1)B=$+E[v+M[b]]|0,b<16?B+=p(K,ee,z)+w[0]:b<32?B+=m(K,ee,z)+w[1]:b<48?B+=_(K,ee,z)+w[2]:b<64?B+=g(K,ee,z)+w[3]:B+=y(K,ee,z)+w[4],B=B|0,B=A(B,U[b]),B=B+oe|0,$=oe,oe=z,z=A(ee,10),ee=K,K=B,B=le+E[v+L[b]]|0,b<16?B+=y(te,Q,Z)+D[0]:b<32?B+=g(te,Q,Z)+D[1]:b<48?B+=_(te,Q,Z)+D[2]:b<64?B+=m(te,Q,Z)+D[3]:B+=p(te,Q,Z)+D[4],B=B|0,B=A(B,G[b]),B=B+de|0,le=de,de=Z,Z=A(Q,10),Q=te,te=B;B=x[1]+ee+Z|0,x[1]=x[2]+z+de|0,x[2]=x[3]+oe+le|0,x[3]=x[4]+$+te|0,x[4]=x[0]+K+Q|0,x[0]=B},_doFinalize:function(){var E=this._data,v=E.words,b=this._nDataBytes*8,I=E.sigBytes*8;v[I>>>5]|=128<<24-I%32,v[(I+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,E.sigBytes=(v.length+1)*4,this._process();for(var T=this._hash,x=T.words,w=0;w<5;w++){var D=x[w];x[w]=(D<<8|D>>>24)&16711935|(D<<24|D>>>8)&4278255360}return T},clone:function(){var E=i.clone.call(this);return E._hash=this._hash.clone(),E}});function p(E,v,b){return E^v^b}function m(E,v,b){return E&v|~E&b}function _(E,v,b){return(E|~v)^b}function g(E,v,b){return E&b|v&~b}function y(E,v,b){return E^(v|~b)}function A(E,v){return E<>>32-v}r.RIPEMD160=i._createHelper(h),r.HmacRIPEMD160=i._createHmacHelper(h)}(Math),e.RIPEMD160})});var n7=S((r7,A2t)=>{(function(e,t){typeof r7=="object"?A2t.exports=r7=t(tn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(r7,function(e){(function(){var t=e,r=t.lib,n=r.Base,s=t.enc,i=s.Utf8,a=t.algo,o=a.HMAC=n.extend({init:function(c,u){c=this._hasher=new c.init,typeof u=="string"&&(u=i.parse(u));var l=c.blockSize,d=l*4;u.sigBytes>d&&(u=c.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),h=this._iKey=u.clone(),p=f.words,m=h.words,_=0;_{(function(e,t,r){typeof s7=="object"?E2t.exports=s7=t(tn(),WV(),n7()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],t):t(e.CryptoJS)})(s7,function(e){return function(){var t=e,r=t.lib,n=r.Base,s=r.WordArray,i=t.algo,a=i.SHA256,o=i.HMAC,c=i.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,l){for(var d=this.cfg,f=o.create(d.hasher,u),h=s.create(),p=s.create([1]),m=h.words,_=p.words,g=d.keySize,y=d.iterations;m.length{(function(e,t,r){typeof i7=="object"?v2t.exports=i7=t(tn(),nbe(),n7()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],t):t(e.CryptoJS)})(i7,function(e){return function(){var t=e,r=t.lib,n=r.Base,s=r.WordArray,i=t.algo,a=i.MD5,o=i.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,u){for(var l,d=this.cfg,f=d.hasher.create(),h=s.create(),p=h.words,m=d.keySize,_=d.iterations;p.length{(function(e,t,r){typeof a7=="object"?S2t.exports=a7=t(tn(),Pg()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],t):t(e.CryptoJS)})(a7,function(e){e.lib.Cipher||function(t){var r=e,n=r.lib,s=n.Base,i=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,c=o.Utf8,u=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:s.extend(),createEncryptor:function(D,M){return this.create(this._ENC_XFORM_MODE,D,M)},createDecryptor:function(D,M){return this.create(this._DEC_XFORM_MODE,D,M)},init:function(D,M,L){this.cfg=this.cfg.extend(L),this._xformMode=D,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(D){return this._append(D),this._process()},finalize:function(D){D&&this._append(D);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function D(M){return typeof M=="string"?w:I}return function(M){return{encrypt:function(L,U,G){return D(U).encrypt(M,L,U,G)},decrypt:function(L,U,G){return D(U).decrypt(M,L,U,G)}}}}()}),h=n.StreamCipher=f.extend({_doFinalize:function(){var D=this._process(!0);return D},blockSize:1}),p=r.mode={},m=n.BlockCipherMode=s.extend({createEncryptor:function(D,M){return this.Encryptor.create(D,M)},createDecryptor:function(D,M){return this.Decryptor.create(D,M)},init:function(D,M){this._cipher=D,this._iv=M}}),_=p.CBC=function(){var D=m.extend();D.Encryptor=D.extend({processBlock:function(L,U){var G=this._cipher,$=G.blockSize;M.call(this,L,U,$),G.encryptBlock(L,U),this._prevBlock=L.slice(U,U+$)}}),D.Decryptor=D.extend({processBlock:function(L,U){var G=this._cipher,$=G.blockSize,K=L.slice(U,U+$);G.decryptBlock(L,U),M.call(this,L,U,$),this._prevBlock=K}});function M(L,U,G){var $,K=this._iv;K?($=K,this._iv=t):$=this._prevBlock;for(var ee=0;ee>>2]&255;D.sigBytes-=M}},A=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:_,padding:y}),reset:function(){var D;f.reset.call(this);var M=this.cfg,L=M.iv,U=M.mode;this._xformMode==this._ENC_XFORM_MODE?D=U.createEncryptor:(D=U.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==D?this._mode.init(this,L&&L.words):(this._mode=D.call(U,this,L&&L.words),this._mode.__creator=D)},_doProcessBlock:function(D,M){this._mode.processBlock(D,M)},_doFinalize:function(){var D,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),D=this._process(!0)):(D=this._process(!0),M.unpad(D)),D},blockSize:128/32}),E=n.CipherParams=s.extend({init:function(D){this.mixIn(D)},toString:function(D){return(D||this.formatter).stringify(this)}}),v=r.format={},b=v.OpenSSL={stringify:function(D){var M,L=D.ciphertext,U=D.salt;return U?M=i.create([1398893684,1701076831]).concat(U).concat(L):M=L,M.toString(u)},parse:function(D){var M,L=u.parse(D),U=L.words;return U[0]==1398893684&&U[1]==1701076831&&(M=i.create(U.slice(2,4)),U.splice(0,4),L.sigBytes-=16),E.create({ciphertext:L,salt:M})}},I=n.SerializableCipher=s.extend({cfg:s.extend({format:b}),encrypt:function(D,M,L,U){U=this.cfg.extend(U);var G=D.createEncryptor(L,U),$=G.finalize(M),K=G.cfg;return E.create({ciphertext:$,key:L,iv:K.iv,algorithm:D,mode:K.mode,padding:K.padding,blockSize:D.blockSize,formatter:U.format})},decrypt:function(D,M,L,U){U=this.cfg.extend(U),M=this._parse(M,U.format);var G=D.createDecryptor(L,U).finalize(M.ciphertext);return G},_parse:function(D,M){return typeof D=="string"?M.parse(D,this):D}}),T=r.kdf={},x=T.OpenSSL={execute:function(D,M,L,U,G){if(U||(U=i.random(64/8)),G)var $=d.create({keySize:M+L,hasher:G}).compute(D,U);else var $=d.create({keySize:M+L}).compute(D,U);var K=i.create($.words.slice(M),L*4);return $.sigBytes=M*4,E.create({key:$,iv:K,salt:U})}},w=n.PasswordBasedCipher=I.extend({cfg:I.cfg.extend({kdf:x}),encrypt:function(D,M,L,U){U=this.cfg.extend(U);var G=U.kdf.execute(L,D.keySize,D.ivSize,U.salt,U.hasher);U.iv=G.iv;var $=I.encrypt.call(this,D,M,G.key,U);return $.mixIn(G),$},decrypt:function(D,M,L,U){U=this.cfg.extend(U),M=this._parse(M,U.format);var G=U.kdf.execute(L,D.keySize,D.ivSize,M.salt,U.hasher);U.iv=G.iv;var $=I.decrypt.call(this,D,M,G.key,U);return $}})}()})});var b2t=S((o7,T2t)=>{(function(e,t,r){typeof o7=="object"?T2t.exports=o7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(o7,function(e){return e.mode.CFB=function(){var t=e.lib.BlockCipherMode.extend();t.Encryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize;r.call(this,n,s,a,i),this._prevBlock=n.slice(s,s+a)}}),t.Decryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=n.slice(s,s+a);r.call(this,n,s,a,i),this._prevBlock=o}});function r(n,s,i,a){var o,c=this._iv;c?(o=c.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var u=0;u{(function(e,t,r){typeof c7=="object"?I2t.exports=c7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(c7,function(e){return e.mode.CTR=function(){var t=e.lib.BlockCipherMode.extend(),r=t.Encryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._counter;o&&(c=this._counter=o.slice(0),this._iv=void 0);var u=c.slice(0);i.encryptBlock(u,0),c[a-1]=c[a-1]+1|0;for(var l=0;l{(function(e,t,r){typeof u7=="object"?C2t.exports=u7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(u7,function(e){return e.mode.CTRGladman=function(){var t=e.lib.BlockCipherMode.extend();function r(i){if((i>>24&255)===255){var a=i>>16&255,o=i>>8&255,c=i&255;a===255?(a=0,o===255?(o=0,c===255?c=0:++c):++o):++a,i=0,i+=a<<16,i+=o<<8,i+=c}else i+=1<<24;return i}function n(i){return(i[0]=r(i[0]))===0&&(i[1]=r(i[1])),i}var s=t.Encryptor=t.extend({processBlock:function(i,a){var o=this._cipher,c=o.blockSize,u=this._iv,l=this._counter;u&&(l=this._counter=u.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f{(function(e,t,r){typeof l7=="object"?w2t.exports=l7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(l7,function(e){return e.mode.OFB=function(){var t=e.lib.BlockCipherMode.extend(),r=t.Encryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._keystream;o&&(c=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(c,0);for(var u=0;u{(function(e,t,r){typeof d7=="object"?O2t.exports=d7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(d7,function(e){return e.mode.ECB=function(){var t=e.lib.BlockCipherMode.extend();return t.Encryptor=t.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),t.Decryptor=t.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),t}(),e.mode.ECB})});var L2t=S((f7,P2t)=>{(function(e,t,r){typeof f7=="object"?P2t.exports=f7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(f7,function(e){return e.pad.AnsiX923={pad:function(t,r){var n=t.sigBytes,s=r*4,i=s-n%s,a=n+i-1;t.clamp(),t.words[a>>>2]|=i<<24-a%4*8,t.sigBytes+=i},unpad:function(t){var r=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=r}},e.pad.Ansix923})});var k2t=S((h7,M2t)=>{(function(e,t,r){typeof h7=="object"?M2t.exports=h7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(h7,function(e){return e.pad.Iso10126={pad:function(t,r){var n=r*4,s=n-t.sigBytes%n;t.concat(e.lib.WordArray.random(s-1)).concat(e.lib.WordArray.create([s<<24],1))},unpad:function(t){var r=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=r}},e.pad.Iso10126})});var U2t=S((p7,B2t)=>{(function(e,t,r){typeof p7=="object"?B2t.exports=p7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(p7,function(e){return e.pad.Iso97971={pad:function(t,r){t.concat(e.lib.WordArray.create([2147483648],1)),e.pad.ZeroPadding.pad(t,r)},unpad:function(t){e.pad.ZeroPadding.unpad(t),t.sigBytes--}},e.pad.Iso97971})});var $2t=S((m7,F2t)=>{(function(e,t,r){typeof m7=="object"?F2t.exports=m7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(m7,function(e){return e.pad.ZeroPadding={pad:function(t,r){var n=r*4;t.clamp(),t.sigBytes+=n-(t.sigBytes%n||n)},unpad:function(t){for(var r=t.words,n=t.sigBytes-1,n=t.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){t.sigBytes=n+1;break}}},e.pad.ZeroPadding})});var H2t=S((g7,q2t)=>{(function(e,t,r){typeof g7=="object"?q2t.exports=g7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(g7,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})});var j2t=S((_7,V2t)=>{(function(e,t,r){typeof _7=="object"?V2t.exports=_7=t(tn(),ya()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(_7,function(e){return function(t){var r=e,n=r.lib,s=n.CipherParams,i=r.enc,a=i.Hex,o=r.format,c=o.Hex={stringify:function(u){return u.ciphertext.toString(a)},parse:function(u){var l=a.parse(u);return s.create({ciphertext:l})}}}(),e.format.Hex})});var G2t=S((A7,K2t)=>{(function(e,t,r){typeof A7=="object"?K2t.exports=A7=t(tn(),TE(),bE(),Pg(),ya()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(A7,function(e){return function(){var t=e,r=t.lib,n=r.BlockCipher,s=t.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],h=[],p=[];(function(){for(var g=[],y=0;y<256;y++)y<128?g[y]=y<<1:g[y]=y<<1^283;for(var A=0,E=0,y=0;y<256;y++){var v=E^E<<1^E<<2^E<<3^E<<4;v=v>>>8^v&255^99,i[A]=v,a[v]=A;var b=g[A],I=g[b],T=g[I],x=g[v]*257^v*16843008;o[A]=x<<24|x>>>8,c[A]=x<<16|x>>>16,u[A]=x<<8|x>>>24,l[A]=x;var x=T*16843009^I*65537^b*257^A*16843008;d[v]=x<<24|x>>>8,f[v]=x<<16|x>>>16,h[v]=x<<8|x>>>24,p[v]=x,A?(A=b^g[g[g[T^b]]],E^=g[g[E]]):A=E=1}})();var m=[0,1,2,4,8,16,32,64,128,27,54],_=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var y=this._keyPriorReset=this._key,A=y.words,E=y.sigBytes/4,v=this._nRounds=E+6,b=(v+1)*4,I=this._keySchedule=[],T=0;T6&&T%E==4&&(g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255]):(g=g<<8|g>>>24,g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255],g^=m[T/E|0]<<24),I[T]=I[T-E]^g);for(var x=this._invKeySchedule=[],w=0;w>>24]]^f[i[g>>>16&255]]^h[i[g>>>8&255]]^p[i[g&255]]}}},encryptBlock:function(g,y){this._doCryptBlock(g,y,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,y){var A=g[y+1];g[y+1]=g[y+3],g[y+3]=A,this._doCryptBlock(g,y,this._invKeySchedule,d,f,h,p,a);var A=g[y+1];g[y+1]=g[y+3],g[y+3]=A},_doCryptBlock:function(g,y,A,E,v,b,I,T){for(var x=this._nRounds,w=g[y]^A[0],D=g[y+1]^A[1],M=g[y+2]^A[2],L=g[y+3]^A[3],U=4,G=1;G>>24]^v[D>>>16&255]^b[M>>>8&255]^I[L&255]^A[U++],K=E[D>>>24]^v[M>>>16&255]^b[L>>>8&255]^I[w&255]^A[U++],ee=E[M>>>24]^v[L>>>16&255]^b[w>>>8&255]^I[D&255]^A[U++],z=E[L>>>24]^v[w>>>16&255]^b[D>>>8&255]^I[M&255]^A[U++];w=$,D=K,M=ee,L=z}var $=(T[w>>>24]<<24|T[D>>>16&255]<<16|T[M>>>8&255]<<8|T[L&255])^A[U++],K=(T[D>>>24]<<24|T[M>>>16&255]<<16|T[L>>>8&255]<<8|T[w&255])^A[U++],ee=(T[M>>>24]<<24|T[L>>>16&255]<<16|T[w>>>8&255]<<8|T[D&255])^A[U++],z=(T[L>>>24]<<24|T[w>>>16&255]<<16|T[D>>>8&255]<<8|T[M&255])^A[U++];g[y]=$,g[y+1]=K,g[y+2]=ee,g[y+3]=z},keySize:256/32});t.AES=n._createHelper(_)}(),e.AES})});var Y2t=S((E7,z2t)=>{(function(e,t,r){typeof E7=="object"?z2t.exports=E7=t(tn(),TE(),bE(),Pg(),ya()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(E7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=r.BlockCipher,i=t.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var m=this._key,_=m.words,g=[],y=0;y<56;y++){var A=a[y]-1;g[y]=_[A>>>5]>>>31-A%32&1}for(var E=this._subKeys=[],v=0;v<16;v++){for(var b=E[v]=[],I=c[v],y=0;y<24;y++)b[y/6|0]|=g[(o[y]-1+I)%28]<<31-y%6,b[4+(y/6|0)]|=g[28+(o[y+24]-1+I)%28]<<31-y%6;b[0]=b[0]<<1|b[0]>>>31;for(var y=1;y<7;y++)b[y]=b[y]>>>(y-1)*4+3;b[7]=b[7]<<5|b[7]>>>27}for(var T=this._invSubKeys=[],y=0;y<16;y++)T[y]=E[15-y]},encryptBlock:function(m,_){this._doCryptBlock(m,_,this._subKeys)},decryptBlock:function(m,_){this._doCryptBlock(m,_,this._invSubKeys)},_doCryptBlock:function(m,_,g){this._lBlock=m[_],this._rBlock=m[_+1],f.call(this,4,252645135),f.call(this,16,65535),h.call(this,2,858993459),h.call(this,8,16711935),f.call(this,1,1431655765);for(var y=0;y<16;y++){for(var A=g[y],E=this._lBlock,v=this._rBlock,b=0,I=0;I<8;I++)b|=u[I][((v^A[I])&l[I])>>>0];this._lBlock=v,this._rBlock=E^b}var T=this._lBlock;this._lBlock=this._rBlock,this._rBlock=T,f.call(this,1,1431655765),h.call(this,8,16711935),h.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),m[_]=this._lBlock,m[_+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(m,_){var g=(this._lBlock>>>m^this._rBlock)&_;this._rBlock^=g,this._lBlock^=g<>>m^this._lBlock)&_;this._lBlock^=g,this._rBlock^=g<192.");var g=_.slice(0,2),y=_.length<4?_.slice(0,2):_.slice(2,4),A=_.length<6?_.slice(0,2):_.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(y)),this._des3=d.createEncryptor(n.create(A))},encryptBlock:function(m,_){this._des1.encryptBlock(m,_),this._des2.decryptBlock(m,_),this._des3.encryptBlock(m,_)},decryptBlock:function(m,_){this._des3.decryptBlock(m,_),this._des2.encryptBlock(m,_),this._des1.decryptBlock(m,_)},keySize:192/32,ivSize:64/32,blockSize:64/32});t.TripleDES=s._createHelper(p)}(),e.TripleDES})});var W2t=S((y7,Q2t)=>{(function(e,t,r){typeof y7=="object"?Q2t.exports=y7=t(tn(),TE(),bE(),Pg(),ya()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(y7,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,s=t.algo,i=s.RC4=n.extend({_doReset:function(){for(var c=this._key,u=c.words,l=c.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,h=0;f<256;f++){var p=f%l,m=u[p>>>2]>>>24-p%4*8&255;h=(h+d[f]+m)%256;var _=d[f];d[f]=d[h],d[h]=_}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var h=c[u];c[u]=c[l],c[l]=h,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}t.RC4=n._createHelper(i);var o=s.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var c=this.cfg.drop;c>0;c--)a.call(this)}});t.RC4Drop=n._createHelper(o)}(),e.RC4})});var J2t=S((v7,X2t)=>{(function(e,t,r){typeof v7=="object"?X2t.exports=v7=t(tn(),TE(),bE(),Pg(),ya()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(v7,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,s=t.algo,i=[],a=[],o=[],c=s.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var h=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)p[f]^=h[f+4&7];if(d){var m=d.words,_=m[0],g=m[1],y=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,A=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,E=y>>>16|A&4294901760,v=A<<16|y&65535;p[0]^=y,p[1]^=E,p[2]^=A,p[3]^=v,p[4]^=y,p[5]^=E,p[6]^=A,p[7]^=v;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var h=0;h<4;h++)i[h]=(i[h]<<8|i[h]>>>24)&16711935|(i[h]<<24|i[h]>>>8)&4278255360,l[d+h]^=i[h]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var h=l[f]+d[f],p=h&65535,m=h>>>16,_=((p*p>>>17)+p*m>>>15)+m*m,g=((h&4294901760)*h|0)+((h&65535)*h|0);o[f]=_^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.Rabbit=n._createHelper(c)}(),e.Rabbit})});var eDt=S((S7,Z2t)=>{(function(e,t,r){typeof S7=="object"?Z2t.exports=S7=t(tn(),TE(),bE(),Pg(),ya()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(S7,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,s=t.algo,i=[],a=[],o=[],c=s.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],h=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var p=0;p<4;p++)u.call(this);for(var p=0;p<8;p++)h[p]^=f[p+4&7];if(d){var m=d.words,_=m[0],g=m[1],y=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,A=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,E=y>>>16|A&4294901760,v=A<<16|y&65535;h[0]^=y,h[1]^=E,h[2]^=A,h[3]^=v,h[4]^=y,h[5]^=E,h[6]^=A,h[7]^=v;for(var p=0;p<4;p++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var h=0;h<4;h++)i[h]=(i[h]<<8|i[h]>>>24)&16711935|(i[h]<<24|i[h]>>>8)&4278255360,l[d+h]^=i[h]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var h=l[f]+d[f],p=h&65535,m=h>>>16,_=((p*p>>>17)+p*m>>>15)+m*m,g=((h&4294901760)*h|0)+((h&65535)*h|0);o[f]=_^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.RabbitLegacy=n._createHelper(c)}(),e.RabbitLegacy})});var rDt=S((T7,tDt)=>{(function(e,t,r){typeof T7=="object"?tDt.exports=T7=t(tn(),TE(),bE(),Pg(),ya()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(T7,function(e){return function(){var t=e,r=t.lib,n=r.BlockCipher,s=t.algo;let i=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var c={pbox:[],sbox:[]};function u(p,m){let _=m>>24&255,g=m>>16&255,y=m>>8&255,A=m&255,E=p.sbox[0][_]+p.sbox[1][g];return E=E^p.sbox[2][y],E=E+p.sbox[3][A],E}function l(p,m,_){let g=m,y=_,A;for(let E=0;E1;--E)g=g^p.pbox[E],y=u(p,g)^y,A=g,g=y,y=A;return A=g,g=y,y=A,y=y^p.pbox[1],g=g^p.pbox[0],{left:g,right:y}}function f(p,m,_){for(let v=0;v<4;v++){p.sbox[v]=[];for(let b=0;b<256;b++)p.sbox[v][b]=o[v][b]}let g=0;for(let v=0;v=_&&(g=0);let y=0,A=0,E=0;for(let v=0;v{(function(e,t,r){typeof b7=="object"?nDt.exports=b7=t(tn(),n4(),e2t(),r2t(),TE(),i2t(),bE(),nbe(),WV(),l2t(),sbe(),h2t(),m2t(),_2t(),n7(),y2t(),Pg(),ya(),b2t(),R2t(),x2t(),N2t(),D2t(),L2t(),k2t(),U2t(),$2t(),H2t(),j2t(),G2t(),Y2t(),W2t(),J2t(),eDt(),rDt()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],t):e.CryptoJS=t(e.CryptoJS)})(b7,function(e){return e})});var h0=S((Wys,sDt)=>{"use strict";var I7=require("buffer"),JC=I7.Buffer,Wd={},Xd;for(Xd in I7)I7.hasOwnProperty(Xd)&&(Xd==="SlowBuffer"||Xd==="Buffer"||(Wd[Xd]=I7[Xd]));var ZC=Wd.Buffer={};for(Xd in JC)JC.hasOwnProperty(Xd)&&(Xd==="allocUnsafe"||Xd==="allocUnsafeSlow"||(ZC[Xd]=JC[Xd]));Wd.Buffer.prototype=JC.prototype;(!ZC.from||ZC.from===Uint8Array.from)&&(ZC.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return JC(e,t,r)});ZC.alloc||(ZC.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=JC(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!Wd.kStringMaxLength)try{Wd.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Wd.constants||(Wd.constants={MAX_LENGTH:Wd.kMaxLength},Wd.kStringMaxLength&&(Wd.constants.MAX_STRING_LENGTH=Wd.kStringMaxLength));sDt.exports=Wd});var aDt=S(obe=>{"use strict";var iDt="\uFEFF";obe.PrependBOM=ibe;function ibe(e,t){this.encoder=e,this.addBOM=!0}ibe.prototype.write=function(e){return this.addBOM&&(e=iDt+e,this.addBOM=!1),this.encoder.write(e)};ibe.prototype.end=function(){return this.encoder.end()};obe.StripBOM=abe;function abe(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}abe.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===iDt&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};abe.prototype.end=function(){return this.decoder.end()}});var cDt=S((Jys,oDt)=>{"use strict";var bT=h0().Buffer;oDt.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:ube};function ube(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=fbe:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=hbe,bT.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=pbe,this.defaultCharUnicode=t.defaultCharUnicode))}ube.prototype.encoder=dbe;ube.prototype.decoder=lbe;var cbe=require("string_decoder").StringDecoder;cbe.prototype.end||(cbe.prototype.end=function(){});function lbe(e,t){this.decoder=new cbe(t.enc)}lbe.prototype.write=function(e){return bT.isBuffer(e)||(e=bT.from(e)),this.decoder.write(e)};lbe.prototype.end=function(){return this.decoder.end()};function dbe(e,t){this.enc=t.enc}dbe.prototype.write=function(e){return bT.from(e,this.enc)};dbe.prototype.end=function(){};function fbe(e,t){this.prevStr=""}fbe.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),bT.from(e,"base64")};fbe.prototype.end=function(){return bT.from(this.prevStr,"base64")};function hbe(e,t){}hbe.prototype.write=function(e){for(var t=bT.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(s&63)):(t[r++]=224+(s>>>12),t[r++]=128+(s>>>6&63),t[r++]=128+(s&63))}return t.slice(0,r)};hbe.prototype.end=function(){};function pbe(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}pbe.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,s="",i=0;i0&&(s+=this.defaultCharUnicode,r=0),a<128?s+=String.fromCharCode(a):a<224?(t=a&31,r=1,n=1):a<240?(t=a&15,r=2,n=1):s+=this.defaultCharUnicode):r>0?(t=t<<6|a&63,r--,n++,r===0&&(n===2&&t<128&&t>0?s+=this.defaultCharUnicode:n===3&&t<2048?s+=this.defaultCharUnicode:s+=String.fromCharCode(t))):s+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,s};pbe.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var dDt=S(IE=>{"use strict";var R7=h0().Buffer;IE._utf32=mbe;function mbe(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}IE.utf32le={type:"_utf32",isLE:!0};IE.utf32be={type:"_utf32",isLE:!1};IE.ucs4le="utf32le";IE.ucs4be="utf32be";mbe.prototype.encoder=gbe;mbe.prototype.decoder=_be;function gbe(e,t){this.isLE=t.isLE,this.highSurrogate=0}gbe.prototype.write=function(e){for(var t=R7.from(e,"ucs2"),r=R7.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,s=0,i=0;i0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var s=55296|r>>10;e[t++]=s&255,e[t++]=s>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}_be.prototype.end=function(){this.overflow.length=0};IE.utf32=Abe;IE.ucs4="utf32";function Abe(e,t){this.iconv=t}Abe.prototype.encoder=Ebe;Abe.prototype.decoder=ybe;function Ebe(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}Ebe.prototype.write=function(e){return this.encoder.write(e)};Ebe.prototype.end=function(){return this.encoder.end()};function ybe(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}ybe.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=lDt(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&i++,(r[3]!==0||r[2]>16)&&s++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&o++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&a++,r.length=0,n++,n>=100)break e}return o-i>a-s?"utf-32be":o-i{"use strict";var fDt=h0().Buffer;Rbe.utf16be=C7;function C7(){}C7.prototype.encoder=vbe;C7.prototype.decoder=Sbe;C7.prototype.bomAware=!0;function vbe(){}vbe.prototype.write=function(e){for(var t=fDt.from(e,"ucs2"),r=0;r=100)break e}return i>s?"utf-16be":i{"use strict";var tp=h0().Buffer;N7.utf7=x7;N7.unicode11utf7="utf7";function x7(e,t){this.iconv=t}x7.prototype.encoder=xbe;x7.prototype.decoder=wbe;x7.prototype.bomAware=!0;var Srn=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function xbe(e,t){this.iconv=t.iconv}xbe.prototype.write=function(e){return tp.from(e.replace(Srn,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};xbe.prototype.end=function(){};function wbe(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var Trn=/[A-Za-z0-9\/+]/,Nbe=[];for(s4=0;s4<256;s4++)Nbe[s4]=Trn.test(String.fromCharCode(s4));var s4,brn=43,IT=45,Cbe=38;wbe.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(e=this.iconv.decode(tp.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};N7.utf7imap=w7;function w7(e,t){this.iconv=t}w7.prototype.encoder=Obe;w7.prototype.decoder=Dbe;w7.prototype.bomAware=!0;function Obe(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=tp.alloc(6),this.base64AccumIdx=0}Obe.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,s=tp.alloc(e.length*5+10),i=0,a=0;a0&&(i+=s.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),i),n=0),s[i++]=IT,t=!1),t||(s[i++]=o,o===Cbe&&(s[i++]=IT))):(t||(s[i++]=Cbe,t=!0),t&&(r[n++]=o>>8,r[n++]=o&255,n==r.length&&(i+=s.write(r.toString("base64").replace(/\//g,","),i),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,s.slice(0,i)};Obe.prototype.end=function(){var e=tp.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=IT,this.inBase64=!1),e.slice(0,t)};function Dbe(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var mDt=Nbe.slice();mDt[44]=!0;Dbe.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(e=this.iconv.decode(tp.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var ADt=S(_Dt=>{"use strict";var O7=h0().Buffer;_Dt._sbcs=Pbe;function Pbe(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=O7.from(e.chars,"ucs2");for(var s=O7.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";EDt.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var SDt=S((svs,vDt)=>{"use strict";vDt.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b -\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b -\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b -\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var IDt=S(bDt=>{"use strict";var kbe=h0().Buffer;bDt._dbcs=Lg;var Io=-1,TDt=-2,Jd=-10,Qc=-1e3,ex=new Array(256),i4=-1;for(D7=0;D7<256;D7++)ex[D7]=Io;var D7;function Lg(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=ex.slice(0),this.decodeTableSeq=[];for(var n=0;nQc)throw new Error("gb18030 decode tables conflict at byte 2");for(var u=this.decodeTables[Qc-o[c]],l=129;l<=254;l++){if(u[l]===Io)u[l]=Qc-i;else{if(u[l]===Qc-i)continue;if(u[l]>Qc)throw new Error("gb18030 decode tables conflict at byte 3")}for(var d=this.decodeTables[Qc-u[l]],f=48;f<=57;f++)d[f]===Io&&(d[f]=TDt)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var h={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var s=r[t[n]];if(s==Io)r[t[n]]=Qc-this.decodeTables.length,this.decodeTables.push(r=ex.slice(0));else if(s<=Qc)r=this.decodeTables[Qc-s];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};Lg.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};Lg.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=ex.slice(0)),this.encodeTable[t]};Lg.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=Jd?this.encodeTableSeq[Jd-r[n]][i4]=t:r[n]==Io&&(r[n]=t)};Lg.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),s=r&255,i;n[s]<=Jd?i=this.encodeTableSeq[Jd-n[s]]:(i={},n[s]!==Io&&(i[i4]=n[s]),n[s]=Jd-this.encodeTableSeq.length,this.encodeTableSeq.push(i));for(var a=1;a=0)this._setEncodeChar(o,c),s=!0;else if(o<=Qc){var u=Qc-o;if(!i[u]){var l=c<<8>>>0;this._fillEncodeTable(u,l,r)?s=!0:i[u]=!0}}else o<=Jd&&(this._setEncodeSequence(this.decodeTableSeq[Jd-o],c),s=!0)}return s};function P7(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}P7.prototype.write=function(e){for(var t=kbe.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,s=-1,i=0,a=0;;){if(s===-1){if(i==e.length)break;var o=e.charCodeAt(i++)}else{var o=s;s=-1}if(55296<=o&&o<57344)if(o<56320)if(r===-1){r=o;continue}else r=o,o=Io;else r!==-1?(o=65536+(r-55296)*1024+(o-56320),r=-1):o=Io;else r!==-1&&(s=o,o=Io,r=-1);var c=Io;if(n!==void 0&&o!=Io){var u=n[o];if(typeof u=="object"){n=u;continue}else typeof u=="number"?c=u:u==null&&(u=n[i4],u!==void 0&&(c=u,s=o));n=void 0}else if(o>=0){var l=this.encodeTable[o>>8];if(l!==void 0&&(c=l[o&255]),c<=Jd){n=this.encodeTableSeq[Jd-c];continue}if(c==Io&&this.gb18030){var d=Ube(this.gb18030.uChars,o);if(d!=-1){var c=this.gb18030.gbChars[d]+(o-this.gb18030.uChars[d]);t[a++]=129+Math.floor(c/12600),c=c%12600,t[a++]=48+Math.floor(c/1260),c=c%1260,t[a++]=129+Math.floor(c/10),c=c%10,t[a++]=48+c;continue}}}c===Io&&(c=this.defaultCharSingleByte),c<256?t[a++]=c:c<65536?(t[a++]=c>>8,t[a++]=c&255):c<16777216?(t[a++]=c>>16,t[a++]=c>>8&255,t[a++]=c&255):(t[a++]=c>>>24,t[a++]=c>>>16&255,t[a++]=c>>>8&255,t[a++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,a)};P7.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=kbe.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[i4];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};P7.prototype.findIdx=Ube;function Bbe(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}Bbe.prototype.write=function(e){for(var t=kbe.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,s=this.prevBytes.length,i=-this.prevBytes.length,a,o=0,c=0;o=0?e[o]:n[o+s],a=this.decodeTables[r][u];if(!(a>=0))if(a===Io)a=this.defaultCharUnicode.charCodeAt(0),o=i;else if(a===TDt){if(o>=3)var l=(e[o-3]-129)*12600+(e[o-2]-48)*1260+(e[o-1]-129)*10+(u-48);else var l=(n[o-3+s]-129)*12600+((o-2>=0?e[o-2]:n[o-2+s])-48)*1260+((o-1>=0?e[o-1]:n[o-1+s])-129)*10+(u-48);var d=Ube(this.gb18030.gbChars,l);a=this.gb18030.uChars[d]+l-this.gb18030.gbChars[d]}else if(a<=Qc){r=Qc-a;continue}else if(a<=Jd){for(var f=this.decodeTableSeq[Jd-a],h=0;h>8;a=f[f.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+a+" at "+r+"/"+u);if(a>=65536){a-=65536;var p=55296|a>>10;t[c++]=p&255,t[c++]=p>>8,a=56320|a&1023}t[c++]=a&255,t[c++]=a>>8,r=0,i=o+1}return this.nodeIdx=r,this.prevBytes=i>=0?Array.prototype.slice.call(e,i):n.slice(i+s).concat(Array.prototype.slice.call(e)),t.slice(0,c).toString("ucs2")};Bbe.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function Ube(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[s]<=t?r=s:n=s}return r}});var RDt=S((avs,Irn)=>{Irn.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var CDt=S((ovs,Rrn)=>{Rrn.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var L7=S((cvs,Crn)=>{Crn.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var Fbe=S((uvs,xrn)=>{xrn.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var xDt=S((lvs,wrn)=>{wrn.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var wDt=S((dvs,Nrn)=>{Nrn.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var $be=S((fvs,Orn)=>{Orn.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var NDt=S((hvs,Drn)=>{Drn.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var DDt=S((pvs,ODt)=>{"use strict";ODt.exports={shiftjis:{type:"_dbcs",table:function(){return RDt()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return CDt()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return L7()}},gbk:{type:"_dbcs",table:function(){return L7().concat(Fbe())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return L7().concat(Fbe())},gb18030:function(){return xDt()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return wDt()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return $be()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return $be().concat(NDt())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var MDt=S((LDt,tx)=>{"use strict";var PDt=[cDt(),dDt(),pDt(),gDt(),ADt(),yDt(),SDt(),IDt(),DDt()];for(M7=0;M7{"use strict";var kDt=h0().Buffer;BDt.exports=function(e){var t=e.Transform;function r(s,i){this.conv=s,i=i||{},i.decodeStrings=!1,t.call(this,i)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(s,i,a){if(typeof s!="string")return a(new Error("Iconv encoding stream needs strings as its input."));try{var o=this.conv.write(s);o&&o.length&&this.push(o),a()}catch(c){a(c)}},r.prototype._flush=function(s){try{var i=this.conv.end();i&&i.length&&this.push(i),s()}catch(a){s(a)}},r.prototype.collect=function(s){var i=[];return this.on("error",s),this.on("data",function(a){i.push(a)}),this.on("end",function(){s(null,kDt.concat(i))}),this};function n(s,i){this.conv=s,i=i||{},i.encoding=this.encoding="utf8",t.call(this,i)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(s,i,a){if(!kDt.isBuffer(s)&&!(s instanceof Uint8Array))return a(new Error("Iconv decoding stream needs buffers as its input."));try{var o=this.conv.write(s);o&&o.length&&this.push(o,this.encoding),a()}catch(c){a(c)}},n.prototype._flush=function(s){try{var i=this.conv.end();i&&i.length&&this.push(i,this.encoding),s()}catch(a){s(a)}},n.prototype.collect=function(s){var i="";return this.on("error",s),this.on("data",function(a){i+=a}),this.on("end",function(){s(null,i)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var HDt=S((gvs,qDt)=>{"use strict";var FDt=h0().Buffer,$Dt=aDt(),fr=qDt.exports;fr.encodings=null;fr.defaultCharUnicode="\uFFFD";fr.defaultCharSingleByte="?";fr.encode=function(t,r,n){t=""+(t||"");var s=fr.getEncoder(r,n),i=s.write(t),a=s.end();return a&&a.length>0?FDt.concat([i,a]):i};fr.decode=function(t,r,n){typeof t=="string"&&(fr.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),fr.skipDecodeWarning=!0),t=FDt.from(""+(t||""),"binary"));var s=fr.getDecoder(r,n),i=s.write(t),a=s.end();return a?i+a:i};fr.encodingExists=function(t){try{return fr.getCodec(t),!0}catch{return!1}};fr.toEncoding=fr.encode;fr.fromEncoding=fr.decode;fr._codecDataCache={};fr.getCodec=function(t){fr.encodings||(fr.encodings=MDt());for(var r=fr._canonicalizeEncoding(t),n={};;){var s=fr._codecDataCache[r];if(s)return s;var i=fr.encodings[r];switch(typeof i){case"string":r=i;break;case"object":for(var a in i)n[a]=i[a];n.encodingName||(n.encodingName=r),r=i.type;break;case"function":return n.encodingName||(n.encodingName=r),s=new i(n,fr),fr._codecDataCache[n.encodingName]=s,s;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};fr._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};fr.getEncoder=function(t,r){var n=fr.getCodec(t),s=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(s=new $Dt.PrependBOM(s,r)),s};fr.getDecoder=function(t,r){var n=fr.getCodec(t),s=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(s=new $Dt.StripBOM(s,r)),s};fr.enableStreamingAPI=function(t){if(!fr.supportsStreams){var r=UDt()(t);fr.IconvLiteEncoderStream=r.IconvLiteEncoderStream,fr.IconvLiteDecoderStream=r.IconvLiteDecoderStream,fr.encodeStream=function(s,i){return new fr.IconvLiteEncoderStream(fr.getEncoder(s,i),i)},fr.decodeStream=function(s,i){return new fr.IconvLiteDecoderStream(fr.getDecoder(s,i),i)},fr.supportsStreams=!0}};var B7;try{B7=require("stream")}catch{}B7&&B7.Transform?fr.enableStreamingAPI(B7):fr.encodeStream=fr.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var KDt=S((_vs,U7)=>{var jDt=jDt||function(e){return Buffer.from(e).toString("base64")};function Prn(e){var t=this,r=Math.round,n=Math.floor,s=new Array(64),i=new Array(64),a=new Array(64),o=new Array(64),c,u,l,d,f=new Array(65535),h=new Array(65535),p=new Array(64),m=new Array(64),_=[],g=0,y=7,A=new Array(64),E=new Array(64),v=new Array(64),b=new Array(256),I=new Array(2048),T,x=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],w=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],D=[0,1,2,3,4,5,6,7,8,9,10,11],M=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],L=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],U=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],G=[0,1,2,3,4,5,6,7,8,9,10,11],$=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],K=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function ee(J){for(var ce=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],ge=0;ge<64;ge++){var be=n((ce[ge]*J+50)/100);be<1?be=1:be>255&&(be=255),s[x[ge]]=be}for(var Te=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],xe=0;xe<64;xe++){var Fe=n((Te[xe]*J+50)/100);Fe<1?Fe=1:Fe>255&&(Fe=255),i[x[xe]]=Fe}for(var Ee=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],me=0,Ae=0;Ae<8;Ae++)for(var pe=0;pe<8;pe++)a[me]=1/(s[x[me]]*Ee[Ae]*Ee[pe]*8),o[me]=1/(i[x[me]]*Ee[Ae]*Ee[pe]*8),me++}function z(J,ce){for(var ge=0,be=0,Te=new Array,xe=1;xe<=16;xe++){for(var Fe=1;Fe<=J[xe];Fe++)Te[ce[be]]=[],Te[ce[be]][0]=ge,Te[ce[be]][1]=xe,be++,ge++;ge*=2}return Te}function oe(){c=z(w,D),u=z(U,G),l=z(M,L),d=z($,K)}function le(){for(var J=1,ce=2,ge=1;ge<=15;ge++){for(var be=J;be>0]=38470*J,I[J+512>>0]=7471*J+32768,I[J+768>>0]=-11059*J,I[J+1024>>0]=-21709*J,I[J+1280>>0]=32768*J+8421375,I[J+1536>>0]=-27439*J,I[J+1792>>0]=-5329*J}function Q(J){for(var ce=J[0],ge=J[1]-1;ge>=0;)ce&1<>8&255),Z(J&255)}function B(J,ce){var ge,be,Te,xe,Fe,Ee,me,Ae,pe=0,Se,Ie=8,Le=64;for(Se=0;Se0?Qy+.5|0:Qy-.5|0;return p}function k(){de(65504),de(16),Z(74),Z(70),Z(73),Z(70),Z(0),Z(1),Z(1),Z(0),de(1),de(1),Z(0),Z(0)}function W(J){if(J){de(65505),J[0]===69&&J[1]===120&&J[2]===105&&J[3]===102?de(J.length+2):(de(J.length+5+2),Z(69),Z(120),Z(105),Z(102),Z(0));for(var ce=0;ce"u"||J.constructor!==Array||J.forEach(ce=>{if(typeof ce=="string"){de(65534);var ge=ce.length;de(ge+2);var be;for(be=0;be0&&m[we]==0;we--);if(we==0)return Q(xe),ge;for(var He=1,Ge;He<=we;){for(var ke=He;m[He]==0&&He<=we;++He);var Qe=He-ke;if(Qe>=me){Ge=Qe>>4;for(var It=1;It<=Ge;++It)Q(Fe);Qe=Qe&15}Ee=32767+m[He],Q(Te[(Qe<<4)+h[Ee]]),Q(f[Ee]),He++}return we!=Ae&&Q(xe),ge}function ie(){for(var J=String.fromCharCode,ce=0;ce<256;ce++)b[ce]=J(ce)}this.encode=function(J,ce){var ge=new Date().getTime();ce&&ne(ce),_=new Array,g=0,y=7,de(65496),k(),q(J.comments),W(J.exifBuffer),H(),P(J.width,J.height),j(),Y();var be=0,Te=0,xe=0;g=0,y=7,this.encode.displayName="_encode_";for(var Fe=J.data,Ee=J.width,me=J.height,Ae=Ee*4,pe=Ee*3,Se,Ie=0,Le,we,He,Ge,ke,Qe,It,ze;Ie>3,Qe=(ze&7)*4,ke=Ge+It*Ae+Qe,Ie+It>=me&&(ke-=Ae*(Ie+1+It-me)),Se+Qe>=Ae&&(ke-=Se+Qe-Ae+4),Le=Fe[ke++],we=Fe[ke++],He=Fe[ke++],A[ze]=(I[Le]+I[we+256>>0]+I[He+512>>0]>>16)-128,E[ze]=(I[Le+768>>0]+I[we+1024>>0]+I[He+1280>>0]>>16)-128,v[ze]=(I[Le+1280>>0]+I[we+1536>>0]+I[He+1792>>0]>>16)-128;be=X(A,a,be,c,l),Te=X(E,o,Te,u,d),xe=X(v,o,xe,u,d),Se+=32}Ie+=8}if(y>=0){var ot=[];ot[1]=y+1,ot[0]=(1<"u")return new Uint8Array(_);return Buffer.from(_);var lt,_t};function ne(J){if(J<=0&&(J=1),J>100&&(J=100),T!=J){var ce=0;J<50?ce=Math.floor(5e3/J):ce=Math.floor(200-J*2),ee(ce),T=J}}function se(){var J=new Date().getTime();e||(e=50),ie(),oe(),le(),te(),ne(e);var ce=new Date().getTime()-J}se()}typeof U7<"u"?U7.exports=VDt:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=VDt);function VDt(e,t){typeof t>"u"&&(t=50);var r=new Prn(t),n=r.encode(e,t);return{data:n,width:e.width,height:e.height}}});var zDt=S((Avs,Hbe)=>{var qbe=function(){"use strict";var t=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),r=4017,n=799,s=3406,i=2276,a=1567,o=3784,c=5793,u=2896;function l(){}function d(y,A){for(var E=0,v=[],b,I,T=16;T>0&&!y[T-1];)T--;v.push({children:[],index:0});var x=v[0],w;for(b=0;b0;){if(v.length===0)throw new Error("Could not recreate Huffman Table");x=v.pop()}for(x.index++,v.push(x);v.length<=b;)v.push(w={children:[],index:0}),x.children[x.index]=w.children,x=w;E++}b+10)return le--,oe>>le&1;if(oe=y[A++],oe==255){var pe=y[A++];if(pe)throw new Error("unexpected marker: "+(oe<<8|pe).toString(16))}return le=7,oe>>>7}function Q(pe){for(var Se=pe,Ie;(Ie=te())!==null;){if(Se=Se[Ie],typeof Se=="number")return Se;if(typeof Se!="object")throw new Error("invalid huffman sequence")}return null}function Z(pe){for(var Se=0;pe>0;){var Ie=te();if(Ie===null)return;Se=Se<<1|Ie,pe--}return Se}function de(pe){var Se=Z(pe);return Se>=1<>4;if(Ge===0){if(ke<15)break;we+=16;continue}we+=ke;var Qe=t[we];Se[Qe]=de(Ge),we++}}function k(pe,Se){var Ie=Q(pe.huffmanTableDC),Le=Ie===0?0:de(Ie)<0){P--;return}for(var Ie=I,Le=T;Ie<=Le;){var we=Q(pe.huffmanTableAC),He=we&15,Ge=we>>4;if(He===0){if(Ge<15){P=Z(Ge)+(1<>4;if(Qe===0)we<15?(P=Z(we)+(1<=65488&&Fe<=65495)A+=2;else break}return A-z}function h(y,A){var E=[],v=A.blocksPerLine,b=A.blocksPerColumn,I=v<<3,T=new Int32Array(64),x=new Uint8Array(64);function w(z,oe,le){var te=A.quantizationTable,Q,Z,de,B,k,W,P,H,j,q=le,Y;for(Y=0;Y<64;Y++)q[Y]=z[Y]*te[Y];for(Y=0;Y<8;++Y){var X=8*Y;if(q[1+X]==0&&q[2+X]==0&&q[3+X]==0&&q[4+X]==0&&q[5+X]==0&&q[6+X]==0&&q[7+X]==0){j=c*q[0+X]+512>>10,q[0+X]=j,q[1+X]=j,q[2+X]=j,q[3+X]=j,q[4+X]=j,q[5+X]=j,q[6+X]=j,q[7+X]=j;continue}Q=c*q[0+X]+128>>8,Z=c*q[4+X]+128>>8,de=q[2+X],B=q[6+X],k=u*(q[1+X]-q[7+X])+128>>8,H=u*(q[1+X]+q[7+X])+128>>8,W=q[3+X]<<4,P=q[5+X]<<4,j=Q-Z+1>>1,Q=Q+Z+1>>1,Z=j,j=de*o+B*a+128>>8,de=de*a-B*o+128>>8,B=j,j=k-P+1>>1,k=k+P+1>>1,P=j,j=H+W+1>>1,W=H-W+1>>1,H=j,j=Q-B+1>>1,Q=Q+B+1>>1,B=j,j=Z-de+1>>1,Z=Z+de+1>>1,de=j,j=k*i+H*s+2048>>12,k=k*s-H*i+2048>>12,H=j,j=W*n+P*r+2048>>12,W=W*r-P*n+2048>>12,P=j,q[0+X]=Q+H,q[7+X]=Q-H,q[1+X]=Z+P,q[6+X]=Z-P,q[2+X]=de+W,q[5+X]=de-W,q[3+X]=B+k,q[4+X]=B-k}for(Y=0;Y<8;++Y){var ie=Y;if(q[8+ie]==0&&q[16+ie]==0&&q[24+ie]==0&&q[32+ie]==0&&q[40+ie]==0&&q[48+ie]==0&&q[56+ie]==0){j=c*le[Y+0]+8192>>14,q[0+ie]=j,q[8+ie]=j,q[16+ie]=j,q[24+ie]=j,q[32+ie]=j,q[40+ie]=j,q[48+ie]=j,q[56+ie]=j;continue}Q=c*q[0+ie]+2048>>12,Z=c*q[32+ie]+2048>>12,de=q[16+ie],B=q[48+ie],k=u*(q[8+ie]-q[56+ie])+2048>>12,H=u*(q[8+ie]+q[56+ie])+2048>>12,W=q[24+ie],P=q[40+ie],j=Q-Z+1>>1,Q=Q+Z+1>>1,Z=j,j=de*o+B*a+2048>>12,de=de*a-B*o+2048>>12,B=j,j=k-P+1>>1,k=k+P+1>>1,P=j,j=H+W+1>>1,W=H-W+1>>1,H=j,j=Q-B+1>>1,Q=Q+B+1>>1,B=j,j=Z-de+1>>1,Z=Z+de+1>>1,de=j,j=k*i+H*s+2048>>12,k=k*s-H*i+2048>>12,H=j,j=W*n+P*r+2048>>12,W=W*r-P*n+2048>>12,P=j,q[0+ie]=Q+H,q[56+ie]=Q-H,q[8+ie]=Z+P,q[48+ie]=Z-P,q[16+ie]=de+W,q[40+ie]=de-W,q[24+ie]=B+k,q[32+ie]=B-k}for(Y=0;Y<64;++Y){var ne=128+(q[Y]+8>>4);oe[Y]=ne<0?0:ne>255?255:ne}}g(I*b*8);for(var D,M,L=0;L255?255:y}l.prototype={load:function(A){var E=new XMLHttpRequest;E.open("GET",A,!0),E.responseType="arraybuffer",E.onload=function(){var v=new Uint8Array(E.response||E.mozResponseArrayBuffer);this.parse(v),this.onload&&this.onload()}.bind(this),E.send(null)},parse:function(A){var E=this.opts.maxResolutionInMP*1e3*1e3,v=0,b=A.length;function I(){var ke=A[v]<<8|A[v+1];return v+=2,ke}function T(){var ke=I(),Qe=A.subarray(v,v+ke-2);return v+=Qe.length,Qe}function x(ke){var Qe=1,It=1,ze,ot;for(ot in ke.components)ke.components.hasOwnProperty(ot)&&(ze=ke.components[ot],Qe>4)if(W>>4===1)for(te=0;te<64;te++){var H=t[te];P[H]=I()}else throw new Error("DQT: invalid table spec");else for(te=0;te<64;te++){var H=t[te];P[H]=A[v++]}G[W&15]=P}break;case 65472:case 65473:case 65474:I(),L={},L.extended=z===65473,L.progressive=z===65474,L.precision=A[v++],L.scanLines=I(),L.samplesPerLine=I(),L.components={},L.componentsOrder=[];var j=L.scanLines*L.samplesPerLine;if(j>E){var q=Math.ceil((j-E)/1e6);throw new Error(`maxResolutionInMP limit exceeded by ${q}MP`)}var Y=A[v++],X,ie=0,ne=0;for(le=0;le>4,J=A[v+1]&15,ce=A[v+2];if(se<=0||J<=0)throw new Error("Invalid sampling factor, expected values above 0");L.componentsOrder.push(X),L.components[X]={h:se,v:J,quantizationIdx:ce},v+=3}x(L),$.push(L);break;case 65476:var ge=I();for(le=2;le>4?K:ee)[be&15]=d(Te,Fe)}break;case 65501:I(),U=I();break;case 65500:I(),I();break;case 65498:var Ee=I(),me=A[v++],Ae=[],pe;for(le=0;le>4],pe.huffmanTableAC=K[Se&15],Ae.push(pe)}var Ie=A[v++],Le=A[v++],we=A[v++],He=f(A,v,L,Ae,U,Ie,Le,we>>4,we&15,this.opts);v+=He;break;case 65535:A[v]!==255&&v--;break;default:if(A[v-3]==255&&A[v-2]>=192&&A[v-2]<=254){v-=3;break}else if(z===224||z==225){if(oe!==-1)throw new Error(`first unknown JPEG marker at offset ${oe.toString(16)}, second unknown JPEG marker ${z.toString(16)} at offset ${(v-1).toString(16)}`);oe=v-1;let ke=I();if(A[v+ke-2]===255){v+=ke-2;break}}throw new Error("unknown JPEG marker "+z.toString(16))}z=I()}if($.length!=1)throw new Error("only single frame JPEGs supported");for(var le=0;le<$.length;le++){var Ge=$[le].components;for(var te in Ge)Ge[te].quantizationTable=G[Ge[te].quantizationIdx],delete Ge[te].quantizationIdx}this.width=L.samplesPerLine,this.height=L.scanLines,this.jfif=w,this.adobe=D,this.components=[];for(var le=0;le_){var E=Math.ceil((A-_)/1024/1024);throw new Error(`maxMemoryUsageInMB limit exceeded by at least ${E}MB`)}m=A}return l.resetMaxMemoryUsage=function(y){m=0,_=y},l.getBytesAllocated=function(){return m},l.requestMemoryAllocation=g,l}();typeof Hbe<"u"?Hbe.exports=GDt:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=GDt);function GDt(e,t={}){var r={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},n={...r,...t},s=new Uint8Array(e),i=new qbe;i.opts=n,qbe.resetMaxMemoryUsage(n.maxMemoryUsageInMB*1024*1024),i.parse(s);var a=n.formatAsRGBA?4:3,o=i.width*i.height*a;try{qbe.requestMemoryAllocation(o);var c={width:i.width,height:i.height,exifBuffer:i.exifBuffer,data:n.useTArray?new Uint8Array(o):Buffer.alloc(o)};i.comments.length>0&&(c.comments=i.comments)}catch(u){throw u instanceof RangeError?new Error("Could not allocate enough memory for the image. Required: "+o):u instanceof ReferenceError&&u.message==="Buffer is not defined"?new Error("Buffer is not globally defined in this environment. Consider setting useTArray to true"):u}return i.copyToImageData(c,n.formatAsRGBA),c}});var QDt=S((Evs,YDt)=>{var Lrn=KDt(),Mrn=zDt();YDt.exports={encode:Lrn,decode:Mrn}});var XDt=S((yvs,WDt)=>{WDt.exports=require("util").inspect});var l4=S((vvs,_Pt)=>{var Jbe=typeof Map=="function"&&Map.prototype,Vbe=Object.getOwnPropertyDescriptor&&Jbe?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,$7=Jbe&&Vbe&&typeof Vbe.get=="function"?Vbe.get:null,JDt=Jbe&&Map.prototype.forEach,Zbe=typeof Set=="function"&&Set.prototype,jbe=Object.getOwnPropertyDescriptor&&Zbe?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,q7=Zbe&&jbe&&typeof jbe.get=="function"?jbe.get:null,ZDt=Zbe&&Set.prototype.forEach,krn=typeof WeakMap=="function"&&WeakMap.prototype,o4=krn?WeakMap.prototype.has:null,Brn=typeof WeakSet=="function"&&WeakSet.prototype,c4=Brn?WeakSet.prototype.has:null,Urn=typeof WeakRef=="function"&&WeakRef.prototype,ePt=Urn?WeakRef.prototype.deref:null,Frn=Boolean.prototype.valueOf,$rn=Object.prototype.toString,qrn=Function.prototype.toString,Hrn=String.prototype.match,e1e=String.prototype.slice,RE=String.prototype.replace,Vrn=String.prototype.toUpperCase,tPt=String.prototype.toLowerCase,lPt=RegExp.prototype.test,rPt=Array.prototype.concat,rp=Array.prototype.join,jrn=Array.prototype.slice,nPt=Math.floor,zbe=typeof BigInt=="function"?BigInt.prototype.valueOf:null,Kbe=Object.getOwnPropertySymbols,Ybe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,rx=typeof Symbol=="function"&&typeof Symbol.iterator=="object",u4=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===rx||!0)?Symbol.toStringTag:null,dPt=Object.prototype.propertyIsEnumerable,sPt=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function iPt(e,t){if(e===1/0||e===-1/0||e!==e||e&&e>-1e3&&e<1e3||lPt.call(/e/,t))return t;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof e=="number"){var n=e<0?-nPt(-e):nPt(e);if(n!==e){var s=String(n),i=e1e.call(t,s.length+1);return RE.call(s,r,"$&_")+"."+RE.call(RE.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return RE.call(t,r,"$&_")}var Qbe=XDt(),aPt=Qbe.custom,oPt=pPt(aPt)?aPt:null,fPt={__proto__:null,double:'"',single:"'"},Krn={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};_Pt.exports=function e(t,r,n,s){var i=r||{};if(Mg(i,"quoteStyle")&&!Mg(fPt,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Mg(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=Mg(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Mg(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Mg(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof t>"u")return"undefined";if(t===null)return"null";if(typeof t=="boolean")return t?"true":"false";if(typeof t=="string")return gPt(t,i);if(typeof t=="number"){if(t===0)return 1/0/t>0?"0":"-0";var c=String(t);return o?iPt(t,c):c}if(typeof t=="bigint"){var u=String(t)+"n";return o?iPt(t,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof t=="object")return Wbe(t)?"[Array]":"[Object]";var d=unn(i,n);if(typeof s>"u")s=[];else if(mPt(s,t)>=0)return"[Circular]";function f(L,U,G){if(U&&(s=jrn.call(s),s.push(U)),G){var $={depth:i.depth};return Mg(i,"quoteStyle")&&($.quoteStyle=i.quoteStyle),e(L,$,n+1,s)}return e(L,i,n+1,s)}if(typeof t=="function"&&!cPt(t)){var h=enn(t),p=F7(t,f);return"[Function"+(h?": "+h:" (anonymous)")+"]"+(p.length>0?" { "+rp.call(p,", ")+" }":"")}if(pPt(t)){var m=rx?RE.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):Ybe.call(t);return typeof t=="object"&&!rx?a4(m):m}if(ann(t)){for(var _="<"+tPt.call(String(t.nodeName)),g=t.attributes||[],y=0;y",_}if(Wbe(t)){if(t.length===0)return"[]";var A=F7(t,f);return d&&!cnn(A)?"["+Xbe(A,d)+"]":"[ "+rp.call(A,", ")+" ]"}if(Yrn(t)){var E=F7(t,f);return!("cause"in Error.prototype)&&"cause"in t&&!dPt.call(t,"cause")?"{ ["+String(t)+"] "+rp.call(rPt.call("[cause]: "+f(t.cause),E),", ")+" }":E.length===0?"["+String(t)+"]":"{ ["+String(t)+"] "+rp.call(E,", ")+" }"}if(typeof t=="object"&&a){if(oPt&&typeof t[oPt]=="function"&&Qbe)return Qbe(t,{depth:l-n});if(a!=="symbol"&&typeof t.inspect=="function")return t.inspect()}if(tnn(t)){var v=[];return JDt&&JDt.call(t,function(L,U){v.push(f(U,t,!0)+" => "+f(L,t))}),uPt("Map",$7.call(t),v,d)}if(snn(t)){var b=[];return ZDt&&ZDt.call(t,function(L){b.push(f(L,t))}),uPt("Set",q7.call(t),b,d)}if(rnn(t))return Gbe("WeakMap");if(inn(t))return Gbe("WeakSet");if(nnn(t))return Gbe("WeakRef");if(Wrn(t))return a4(f(Number(t)));if(Jrn(t))return a4(f(zbe.call(t)));if(Xrn(t))return a4(Frn.call(t));if(Qrn(t))return a4(f(String(t)));if(typeof window<"u"&&t===window)return"{ [object Window] }";if(typeof globalThis<"u"&&t===globalThis||typeof global<"u"&&t===global)return"{ [object globalThis] }";if(!zrn(t)&&!cPt(t)){var I=F7(t,f),T=sPt?sPt(t)===Object.prototype:t instanceof Object||t.constructor===Object,x=t instanceof Object?"":"null prototype",w=!T&&u4&&Object(t)===t&&u4 in t?e1e.call(CE(t),8,-1):x?"Object":"",D=T||typeof t.constructor!="function"?"":t.constructor.name?t.constructor.name+" ":"",M=D+(w||x?"["+rp.call(rPt.call([],w||[],x||[]),": ")+"] ":"");return I.length===0?M+"{}":d?M+"{"+Xbe(I,d)+"}":M+"{ "+rp.call(I,", ")+" }"}return String(t)};function hPt(e,t,r){var n=r.quoteStyle||t,s=fPt[n];return s+e+s}function Grn(e){return RE.call(String(e),/"/g,""")}function RT(e){return!u4||!(typeof e=="object"&&(u4 in e||typeof e[u4]<"u"))}function Wbe(e){return CE(e)==="[object Array]"&&RT(e)}function zrn(e){return CE(e)==="[object Date]"&&RT(e)}function cPt(e){return CE(e)==="[object RegExp]"&&RT(e)}function Yrn(e){return CE(e)==="[object Error]"&&RT(e)}function Qrn(e){return CE(e)==="[object String]"&&RT(e)}function Wrn(e){return CE(e)==="[object Number]"&&RT(e)}function Xrn(e){return CE(e)==="[object Boolean]"&&RT(e)}function pPt(e){if(rx)return e&&typeof e=="object"&&e instanceof Symbol;if(typeof e=="symbol")return!0;if(!e||typeof e!="object"||!Ybe)return!1;try{return Ybe.call(e),!0}catch{}return!1}function Jrn(e){if(!e||typeof e!="object"||!zbe)return!1;try{return zbe.call(e),!0}catch{}return!1}var Zrn=Object.prototype.hasOwnProperty||function(e){return e in this};function Mg(e,t){return Zrn.call(e,t)}function CE(e){return $rn.call(e)}function enn(e){if(e.name)return e.name;var t=Hrn.call(qrn.call(e),/^function\s*([\w$]+)/);return t?t[1]:null}function mPt(e,t){if(e.indexOf)return e.indexOf(t);for(var r=0,n=e.length;rt.maxStringLength){var r=e.length-t.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return gPt(e1e.call(e,0,t.maxStringLength),t)+n}var s=Krn[t.quoteStyle||"single"];s.lastIndex=0;var i=RE.call(RE.call(e,s,"\\$1"),/[\x00-\x1f]/g,onn);return hPt(i,"single",t)}function onn(e){var t=e.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return r?"\\"+r:"\\x"+(t<16?"0":"")+Vrn.call(t.toString(16))}function a4(e){return"Object("+e+")"}function Gbe(e){return e+" { ? }"}function uPt(e,t,r,n){var s=n?Xbe(r,n):rp.call(r,", ");return e+" ("+t+") {"+s+"}"}function cnn(e){for(var t=0;t=0)return!1;return!0}function unn(e,t){var r;if(e.indent===" ")r=" ";else if(typeof e.indent=="number"&&e.indent>0)r=rp.call(Array(e.indent+1)," ");else return null;return{base:r,prev:rp.call(Array(t+1),r)}}function Xbe(e,t){if(e.length===0)return"";var r=` -`+t.prev+t.base;return r+rp.call(e,","+r)+` -`+t.prev}function F7(e,t){var r=Wbe(e),n=[];if(r){n.length=e.length;for(var s=0;s{"use strict";var lnn=l4(),dnn=wA(),H7=function(e,t,r){for(var n=e,s;(s=n.next)!=null;n=s)if(s.key===t)return n.next=s.next,r||(s.next=e.next,e.next=s),s},fnn=function(e,t){if(e){var r=H7(e,t);return r&&r.value}},hnn=function(e,t,r){var n=H7(e,t);n?n.value=r:e.next={key:t,next:e.next,value:r}},pnn=function(e,t){return e?!!H7(e,t):!1},mnn=function(e,t){if(e)return H7(e,t,!0)};APt.exports=function(){var t,r={assert:function(n){if(!r.has(n))throw new dnn("Side channel does not contain "+lnn(n))},delete:function(n){var s=t&&t.next,i=mnn(t,n);return i&&s&&s===i&&(t=void 0),!!i},get:function(n){return fnn(t,n)},has:function(n){return pnn(t,n)},set:function(n,s){t||(t={next:void 0}),hnn(t,n,s)}};return r}});var t1e=S((Tvs,SPt)=>{"use strict";var yPt=UD(),vPt=Aue(),gnn=vPt([yPt("%String.prototype.indexOf%")]);SPt.exports=function(t,r){var n=yPt(t,!!r);return typeof n=="function"&&gnn(t,".prototype.")>-1?vPt([n]):n}});var r1e=S((bvs,bPt)=>{"use strict";var _nn=UD(),d4=t1e(),Ann=l4(),Enn=wA(),TPt=_nn("%Map%",!0),ynn=d4("Map.prototype.get",!0),vnn=d4("Map.prototype.set",!0),Snn=d4("Map.prototype.has",!0),Tnn=d4("Map.prototype.delete",!0),bnn=d4("Map.prototype.size",!0);bPt.exports=!!TPt&&function(){var t,r={assert:function(n){if(!r.has(n))throw new Enn("Side channel does not contain "+Ann(n))},delete:function(n){if(t){var s=Tnn(t,n);return bnn(t)===0&&(t=void 0),s}return!1},get:function(n){if(t)return ynn(t,n)},has:function(n){return t?Snn(t,n):!1},set:function(n,s){t||(t=new TPt),vnn(t,n,s)}};return r}});var RPt=S((Ivs,IPt)=>{"use strict";var Inn=UD(),j7=t1e(),Rnn=l4(),V7=r1e(),Cnn=wA(),nx=Inn("%WeakMap%",!0),xnn=j7("WeakMap.prototype.get",!0),wnn=j7("WeakMap.prototype.set",!0),Nnn=j7("WeakMap.prototype.has",!0),Onn=j7("WeakMap.prototype.delete",!0);IPt.exports=nx?function(){var t,r,n={assert:function(s){if(!n.has(s))throw new Cnn("Side channel does not contain "+Rnn(s))},delete:function(s){if(nx&&s&&(typeof s=="object"||typeof s=="function")){if(t)return Onn(t,s)}else if(V7&&r)return r.delete(s);return!1},get:function(s){return nx&&s&&(typeof s=="object"||typeof s=="function")&&t?xnn(t,s):r&&r.get(s)},has:function(s){return nx&&s&&(typeof s=="object"||typeof s=="function")&&t?Nnn(t,s):!!r&&r.has(s)},set:function(s,i){nx&&s&&(typeof s=="object"||typeof s=="function")?(t||(t=new nx),wnn(t,s,i)):V7&&(r||(r=V7()),r.set(s,i))}};return n}:V7});var xPt=S((Rvs,CPt)=>{"use strict";var Dnn=wA(),Pnn=l4(),Lnn=EPt(),Mnn=r1e(),knn=RPt(),Bnn=knn||Mnn||Lnn;CPt.exports=function(){var t,r={assert:function(n){if(!r.has(n))throw new Dnn("Side channel does not contain "+Pnn(n))},delete:function(n){return!!t&&t.delete(n)},get:function(n){return t&&t.get(n)},has:function(n){return!!t&&t.has(n)},set:function(n,s){t||(t=Bnn()),t.set(n,s)}};return r}});var K7=S((Cvs,wPt)=>{"use strict";var Unn=String.prototype.replace,Fnn=/%20/g,n1e={RFC1738:"RFC1738",RFC3986:"RFC3986"};wPt.exports={default:n1e.RFC3986,formatters:{RFC1738:function(e){return Unn.call(e,Fnn,"+")},RFC3986:function(e){return String(e)}},RFC1738:n1e.RFC1738,RFC3986:n1e.RFC3986}});var a1e=S((xvs,OPt)=>{"use strict";var $nn=K7(),s1e=Object.prototype.hasOwnProperty,CT=Array.isArray,np=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),qnn=function(t){for(;t.length>1;){var r=t.pop(),n=r.obj[r.prop];if(CT(n)){for(var s=[],i=0;i=i1e?a.slice(c,c+i1e):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===$nn.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=np[f];continue}if(f<2048){l[l.length]=np[192|f>>6]+np[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=np[224|f>>12]+np[128|f>>6&63]+np[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=np[240|f>>18]+np[128|f>>12&63]+np[128|f>>6&63]+np[128|f&63]}o+=l.join("")}return o},Gnn=function(t){for(var r=[{obj:{o:t},prop:"o"}],n=[],s=0;s{"use strict";var PPt=xPt(),G7=a1e(),f4=K7(),Xnn=Object.prototype.hasOwnProperty,LPt={brackets:function(t){return t+"[]"},comma:"comma",indices:function(t,r){return t+"["+r+"]"},repeat:function(t){return t}},sp=Array.isArray,Jnn=Array.prototype.push,MPt=function(e,t){Jnn.apply(e,sp(t)?t:[t])},Znn=Date.prototype.toISOString,DPt=f4.default,va={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:G7.encode,encodeValuesOnly:!1,filter:void 0,format:DPt,formatter:f4.formatters[DPt],indices:!1,serializeDate:function(t){return Znn.call(t)},skipNulls:!1,strictNullHandling:!1},esn=function(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"||typeof t=="symbol"||typeof t=="bigint"},o1e={},tsn=function e(t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y){for(var A=t,E=y,v=0,b=!1;(E=E.get(o1e))!==void 0&&!b;){var I=E.get(t);if(v+=1,typeof I<"u"){if(I===v)throw new RangeError("Cyclic object value");b=!0}typeof E.get(o1e)>"u"&&(v=0)}if(typeof l=="function"?A=l(r,A):A instanceof Date?A=h(A):n==="comma"&&sp(A)&&(A=G7.maybeMap(A,function(oe){return oe instanceof Date?h(oe):oe})),A===null){if(a)return u&&!_?u(r,va.encoder,g,"key",p):r;A=""}if(esn(A)||G7.isBuffer(A)){if(u){var T=_?r:u(r,va.encoder,g,"key",p);return[m(T)+"="+m(u(A,va.encoder,g,"value",p))]}return[m(r)+"="+m(String(A))]}var x=[];if(typeof A>"u")return x;var w;if(n==="comma"&&sp(A))_&&u&&(A=G7.maybeMap(A,u)),w=[{value:A.length>0?A.join(",")||null:void 0}];else if(sp(l))w=l;else{var D=Object.keys(A);w=d?D.sort(d):D}var M=c?String(r).replace(/\./g,"%2E"):String(r),L=s&&sp(A)&&A.length===1?M+"[]":M;if(i&&sp(A)&&A.length===0)return L+"[]";for(var U=0;U"u"?t.encodeDotInKeys===!0?!0:va.allowDots:!!t.allowDots;return{addQueryPrefix:typeof t.addQueryPrefix=="boolean"?t.addQueryPrefix:va.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:va.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:va.charsetSentinel,commaRoundTrip:!!t.commaRoundTrip,delimiter:typeof t.delimiter>"u"?va.delimiter:t.delimiter,encode:typeof t.encode=="boolean"?t.encode:va.encode,encodeDotInKeys:typeof t.encodeDotInKeys=="boolean"?t.encodeDotInKeys:va.encodeDotInKeys,encoder:typeof t.encoder=="function"?t.encoder:va.encoder,encodeValuesOnly:typeof t.encodeValuesOnly=="boolean"?t.encodeValuesOnly:va.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof t.serializeDate=="function"?t.serializeDate:va.serializeDate,skipNulls:typeof t.skipNulls=="boolean"?t.skipNulls:va.skipNulls,sort:typeof t.sort=="function"?t.sort:null,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:va.strictNullHandling}};kPt.exports=function(e,t){var r=e,n=rsn(t),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):sp(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=LPt[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=PPt(),l=0;l0?p+h:""}});var qPt=S((Nvs,$Pt)=>{"use strict";var xT=a1e(),c1e=Object.prototype.hasOwnProperty,UPt=Array.isArray,Ci={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:xT.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},nsn=function(e){return e.replace(/&#(\d+);/g,function(t,r){return String.fromCharCode(parseInt(r,10))})},FPt=function(e,t,r){if(e&&typeof e=="string"&&t.comma&&e.indexOf(",")>-1)return e.split(",");if(t.throwOnLimitExceeded&&r>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(t.arrayLimit===1?"":"s")+" allowed in an array.");return e},ssn="utf8=%26%2310003%3B",isn="utf8=%E2%9C%93",asn=function(t,r){var n={__proto__:null},s=r.ignoreQueryPrefix?t.replace(/^\?/,""):t;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(p=UPt(p)?[p]:p);var m=c1e.call(n,h);m&&r.duplicates==="combine"?n[h]=xT.combine(n[h],p):(!m||r.duplicates==="last")&&(n[h]=p)}return n},osn=function(e,t,r,n){var s=0;if(e.length>0&&e[e.length-1]==="[]"){var i=e.slice(0,-1).join("");s=Array.isArray(t)&&t[i]?t[i].length:0}for(var a=n?t:FPt(t,r,s),o=e.length-1;o>=0;--o){var c,u=e[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:xT.combine([],a);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?c={0:a}:!isNaN(f)&&u!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(c=[],c[f]=a):d!=="__proto__"&&(c[d]=a)}a=c}return a},csn=function(t,r,n,s){if(t){var i=n.allowDots?t.replace(/\.([^.[]+)/g,"[$1]"):t,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&c1e.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d"u"?Ci.charset:t.charset,n=typeof t.duplicates>"u"?Ci.duplicates:t.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof t.allowDots>"u"?t.decodeDotInKeys===!0?!0:Ci.allowDots:!!t.allowDots;return{allowDots:s,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:Ci.allowEmptyArrays,allowPrototypes:typeof t.allowPrototypes=="boolean"?t.allowPrototypes:Ci.allowPrototypes,allowSparse:typeof t.allowSparse=="boolean"?t.allowSparse:Ci.allowSparse,arrayLimit:typeof t.arrayLimit=="number"?t.arrayLimit:Ci.arrayLimit,charset:r,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:Ci.charsetSentinel,comma:typeof t.comma=="boolean"?t.comma:Ci.comma,decodeDotInKeys:typeof t.decodeDotInKeys=="boolean"?t.decodeDotInKeys:Ci.decodeDotInKeys,decoder:typeof t.decoder=="function"?t.decoder:Ci.decoder,delimiter:typeof t.delimiter=="string"||xT.isRegExp(t.delimiter)?t.delimiter:Ci.delimiter,depth:typeof t.depth=="number"||t.depth===!1?+t.depth:Ci.depth,duplicates:n,ignoreQueryPrefix:t.ignoreQueryPrefix===!0,interpretNumericEntities:typeof t.interpretNumericEntities=="boolean"?t.interpretNumericEntities:Ci.interpretNumericEntities,parameterLimit:typeof t.parameterLimit=="number"?t.parameterLimit:Ci.parameterLimit,parseArrays:t.parseArrays!==!1,plainObjects:typeof t.plainObjects=="boolean"?t.plainObjects:Ci.plainObjects,strictDepth:typeof t.strictDepth=="boolean"?!!t.strictDepth:Ci.strictDepth,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:Ci.strictNullHandling,throwOnLimitExceeded:typeof t.throwOnLimitExceeded=="boolean"?t.throwOnLimitExceeded:!1}};$Pt.exports=function(e,t){var r=usn(t);if(e===""||e===null||typeof e>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof e=="string"?asn(e,r):e,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var lsn=BPt(),dsn=qPt(),fsn=K7();HPt.exports={formats:fsn,parse:dsn,stringify:lsn}});var u1e={};Ft(u1e,{default:()=>hsn,getPanEnabled:()=>wT,getPanName:()=>ht,getPans:()=>xi,publishPans:()=>xE});function xi(){let e=globalThis?.Pans;return Array.isArray(e)?e:[]}function ht(e){return e==="magnet"?"\u78C1\u529B":xi().find(r=>r?.key===e)?.name||e}function wT(e,t=xi()){let r=Array.isArray(t)?t:[];return e==="magnet"?r.some(s=>["magnet","magnet_guangya"].includes(s?.key)&&!!s?.enable):!!r.find(s=>s?.key===e)?.enable}function xE(e){let t=Array.isArray(e)?e:[];return globalThis.Pans=t,globalThis.getPanName=ht,globalThis.getPanEnabled=wT,t}var hsn,wi=ae(()=>{hsn={getPans:xi,getPanName:ht,getPanEnabled:wT,publishPans:xE}});var T1e={};Ft(T1e,{IOS_UA:()=>ax,MAC_UA:()=>Nsn,MOBILE_UA:()=>Rsn,PC_UA:()=>Csn,UA:()=>xsn,UC_UA:()=>wsn,conversion:()=>Ju,delay:()=>zt,findBestLCS:()=>Msn,fixUrl:()=>Psn,formatPlayUrl:()=>p4,formatPlayUrl2:()=>Osn,getCookieArray:()=>p0,isEmpty:()=>S1e,jsonParse:()=>Lsn,lcs:()=>QPt,rand:()=>NT,randDevice:()=>YPt,randDeviceWithId:()=>v1e,randMAC:()=>Isn,randStr:()=>Sa,randUUID:()=>bsn,stripHtmlTag:()=>Dsn});function NT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function Sa(e,t,r){var n="";let s=t===void 0?!0:t;for(var i=0;i|《|》/g,"").replace(/\$|#/g," ").trim()}function Osn(e,t){var r=t.indexOf("$");return r<=0?p4(e,t):p4(e,t.substring(0,r))+t.substring(r)}function Dsn(e){return e.replace(/<\/?[^>]+(>|$)/g,"").replace(/&.{1,5};/g,"").replace(/\s{2,}/g," ")}function Psn(e,t){try{if(t.startsWith("//")){let r=new URL(e);t.substring(2,t.indexOf("/",2)).includes(".")?t=r.protocol+":"+t:t=r.protocol+"://"+r.host+t.substring(1)}else if(!t.includes("://")){let r=new URL(e);t=r.protocol+"://"+r.host+t}}catch{}return t}function Lsn(e,t){try{let r=t.url||"";if(r.startsWith("//")&&(r="https:"+r),!r.startsWith("http"))return{};let n=t.headers||{},s=(t["user-agent"]||"").trim();s.length>0&&(n["User-Agent"]=s);let i=(t.referer||"").trim();return i.length>0&&(n.Referer=i),{header:n,url:r}}catch{}return{}}function Ju(e){let t=e/1048576;return t>1024?`${(t/1024).toFixed(2)}GB`:`${parseInt(t).toFixed(0)}MB`}function S1e(e){return e==null?!0:typeof e=="string"||Array.isArray(e)?e.length===0:!1}function QPt(e,t){if(!e||!t)return{length:0,sequence:"",offset:0};for(var r="",n=e.length,s=t.length,i=new Array(n),a=0,o=0,c=0;ca&&(a=i[c][l],d=c-i[c][l]+1,o===d?r+=e[c]:(o=d,r="",r+=e.substr(o,c+1-o))));return{length:a,sequence:r,offset:d}}function Msn(e,t){let r=[],n=0;for(let i=0;ir[n].lcs.length&&(n=i)}let s=r[n];return{allLCS:r,bestMatch:s,bestMatchIndex:n}}function zt(e){return new Promise(t=>setTimeout(t,e))}var h4,GPt,zPt,Rsn,Csn,xsn,wsn,ax,Nsn,p0,ws=ae(()=>{h4="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";GPt=["Huawei","Xiaomi"],zPt=[["MHA-AL00","HUAWEI Mate 9","MHA-TL00","HUAWEI Mate 9","LON-AL00","HUAWEI Mate 9 Pro","ALP-AL00","HUAWEI Mate 10","ALP-TL00","HUAWEI Mate 10","BLA-AL00","HUAWEI Mate 10 Pro","BLA-TL00","HUAWEI Mate 10 Pro","HMA-AL00","HUAWEI Mate 20","HMA-TL00","HUAWEI Mate 20","LYA-AL00","HUAWEI Mate 20 Pro","LYA-AL10","HUAWEI Mate 20 Pro","LYA-TL00","HUAWEI Mate 20 Pro","EVR-AL00","HUAWEI Mate 20 X","EVR-TL00","HUAWEI Mate 20 X","EVR-AN00","HUAWEI Mate 20 X","TAS-AL00","HUAWEI Mate 30","TAS-TL00","HUAWEI Mate 30","TAS-AN00","HUAWEI Mate 30","TAS-TN00","HUAWEI Mate 30","LIO-AL00","HUAWEI Mate 30 Pro","LIO-TL00","HUAWEI Mate 30 Pro","LIO-AN00","HUAWEI Mate 30 Pro","LIO-TN00","HUAWEI Mate 30 Pro","LIO-AN00m","HUAWEI Mate 30E Pro","OCE-AN10","HUAWEI Mate 40","OCE-AN50","HUAWEI Mate 40E","OCE-AL50","HUAWEI Mate 40E","NOH-AN00","HUAWEI Mate 40 Pro","NOH-AN01","HUAWEI Mate 40 Pro","NOH-AL00","HUAWEI Mate 40 Pro","NOH-AL10","HUAWEI Mate 40 Pro","NOH-AN50","HUAWEI Mate 40E Pro","NOP-AN00","HUAWEI Mate 40 Pro","CET-AL00","HUAWEI Mate 50","CET-AL60","HUAWEI Mate 50E","DCO-AL00","HUAWEI Mate 50 Pro","TAH-AN00","HUAWEI Mate X","TAH-AN00m","HUAWEI Mate Xs","TET-AN00","HUAWEI Mate X2","TET-AN10","HUAWEI Mate X2","TET-AN50","HUAWEI Mate X2","TET-AL00","HUAWEI Mate X2","PAL-AL00","HUAWEI Mate Xs 2","PAL-AL10","HUAWEI Mate Xs 2","EVA-AL00","HUAWEI P9","EVA-AL10","HUAWEI P9","EVA-TL00","HUAWEI P9","EVA-DL00","HUAWEI P9","EVA-CL00","HUAWEI P9","VIE-AL10","HUAWEI P9 Plus","VTR-AL00","HUAWEI P10","VTR-TL00","HUAWEI P10","VKY-AL00","HUAWEI P10 Plus","VKY-TL00","HUAWEI P10 Plus","EML-AL00","HUAWEI P20","EML-TL00","HUAWEI P20","CLT-AL00","HUAWEI P20 Pro","CLT-AL01","HUAWEI P20 Pro","CLT-AL00l","HUAWEI P20 Pro","CLT-TL00","HUAWEI P20 Pro","CLT-TL01","HUAWEI P20 Pro","ELE-AL00","HUAWEI P30","ELE-TL00","HUAWEI P30","VOG-AL00","HUAWEI P30 Pro","VOG-AL10","HUAWEI P30 Pro","VOG-TL00","HUAWEI P30 Pro","ANA-AL00","HUAWEI P40","ANA-AN00","HUAWEI P40","ANA-TN00","HUAWEI P40","ELS-AN00","HUAWEI P40 Pro","ELS-TN00","HUAWEI P40 Pro","ELS-AN10","HUAWEI P40 Pro","ELS-TN10","HUAWEI P40 Pro","ABR-AL00","HUAWEI P50","ABR-AL80","HUAWEI P50","ABR-AL60","HUAWEI P50E","ABR-AL90","HUAWEI P50E","JAD-AL00","HUAWEI P50 Pro","JAD-AL80","HUAWEI P50 Pro","JAD-AL50","HUAWEI P50 Pro","JAD-AL60","HUAWEI P50 Pro","BAL-AL00","HUAWEI P50 Pocket","BAL-AL60","HUAWEI Pocket S","PIC-AL00","HUAWEI nova 2","PIC-TL00","HUAWEI nova 2","BAC-AL00","HUAWEI nova 2 Plus","BAC-TL00","HUAWEI nova 2 Plus","HWI-AL00","HUAWEI nova 2s","HWI-TL00","HUAWEI nova 2s","ANE-AL00","HUAWEI nova 3e","ANE-TL00","HUAWEI nova 3e","PAR-AL00","HUAWEI nova 3","PAR-TL00","HUAWEI nova 3","INE-AL00","HUAWEI nova 3i","INE-TL00","HUAWEI nova 3i","VCE-AL00","HUAWEI nova 4","VCE-TL00","HUAWEI nova 4","MAR-AL00","HUAWEI nova 4e","MAR-TL00","HUAWEI nova 4e","SEA-AL00","HUAWEI nova 5","SEA-TL00","HUAWEI nova 5","SEA-AL10","HUAWEI nova 5 Pro","SEA-TL10","HUAWEI nova 5 Pro","GLK-AL00","HUAWEI nova 5i","GLK-TL00","HUAWEI nova 5i","GLK-LX1U","HUAWEI nova 5i","SPN-TL00","HUAWEI nova 5i Pro","SPN-AL00","HUAWEI nova 5z","WLZ-AL10","HUAWEI nova 6","WLZ-AN00","HUAWEI nova 6","JNY-AL10","HUAWEI nova 6 SE","JNY-TL10","HUAWEI nova 6 SE","JEF-AN00","HUAWEI nova 7","JEF-AN20","HUAWEI nova 7","JEF-TN00","HUAWEI nova 7","JEF-TN20","HUAWEI nova 7","JER-AN10","HUAWEI nova 7 Pro","JER-AN20","HUAWEI nova 7 Pro","JER-TN10","HUAWEI nova 7 Pro","JER-TN20","HUAWEI nova 7 Pro","CDY-AN00","HUAWEI nova 7 SE","CDY-AN20","HUAWEI nova 7 SE","CDY-TN00","HUAWEI nova 7 SE","CDY-TN20","HUAWEI nova 7 SE","ANG-AN00","HUAWEI nova 8","BRQ-AN00","HUAWEI nova 8 Pro","BRQ-AL00","HUAWEI nova 8 Pro","JSC-AN00","HUAWEI nova 8 SE","JSC-TN00","HUAWEI nova 8 SE","JSC-AL50","HUAWEI nova 8 SE","NAM-AL00","HUAWEI nova 9","RTE-AL00","HUAWEI nova 9 Pro","JLN-AL00","HUAWEI nova 9 SE","NCO-AL00","HUAWEI nova 10","GLA-AL00","HUAWEI nova 10 Pro","CHA-AL80","HUAWEI nova 10z"],["M2001J2C","Xiaomi 10","M2001J2G","Xiaomi 10","M2001J2I","Xiaomi 10","M2011K2C","Xiaomi 11","M2011K2G","Xiaomi 11","2201123C","Xiaomi 12","2201123G","Xiaomi 12","2112123AC","Xiaomi 12X","2112123AG","Xiaomi 12X","2201122C","Xiaomi 12 Pro","2201122G","Xiaomi 12 Pro"]];Rsn="Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36",Csn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36",xsn="Mozilla/5.0",wsn="Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36",ax="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",Nsn="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0";p0=e=>e.map(t=>t.split(";")[0]+";")});var m4=S((b1e,I1e)=>{(function(e,t){typeof b1e=="object"&&typeof I1e<"u"?I1e.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs=t()})(b1e,function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",h="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,_={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var L=["th","st","nd","rd"],U=M%100;return"["+M+(L[(U-20)%10]||L[U]||L[0])+"]"}},g=function(M,L,U){var G=String(M);return!G||G.length>=L?M:""+Array(L+1-G.length).join(U)+M},y={s:g,z:function(M){var L=-M.utcOffset(),U=Math.abs(L),G=Math.floor(U/60),$=U%60;return(L<=0?"+":"-")+g(G,2,"0")+":"+g($,2,"0")},m:function M(L,U){if(L.date()1)return M(ee[0])}else{var z=L.name;E[z]=L,$=z}return!G&&$&&(A=$),$||!G&&A},T=function(M,L){if(b(M))return M.clone();var U=typeof L=="object"?L:{};return U.date=M,U.args=arguments,new w(U)},x=y;x.l=I,x.i=b,x.w=function(M,L){return T(M,{locale:L.$L,utc:L.$u,x:L.$x,$offset:L.$offset})};var w=function(){function M(U){this.$L=I(U.locale,null,!0),this.parse(U),this.$x=this.$x||U.x||{},this[v]=!0}var L=M.prototype;return L.parse=function(U){this.$d=function(G){var $=G.date,K=G.utc;if($===null)return new Date(NaN);if(x.u($))return new Date;if($ instanceof Date)return new Date($);if(typeof $=="string"&&!/Z$/i.test($)){var ee=$.match(p);if(ee){var z=ee[2]-1||0,oe=(ee[7]||"0").substring(0,3);return K?new Date(Date.UTC(ee[1],z,ee[3]||1,ee[4]||0,ee[5]||0,ee[6]||0,oe)):new Date(ee[1],z,ee[3]||1,ee[4]||0,ee[5]||0,ee[6]||0,oe)}}return new Date($)}(U),this.init()},L.init=function(){var U=this.$d;this.$y=U.getFullYear(),this.$M=U.getMonth(),this.$D=U.getDate(),this.$W=U.getDay(),this.$H=U.getHours(),this.$m=U.getMinutes(),this.$s=U.getSeconds(),this.$ms=U.getMilliseconds()},L.$utils=function(){return x},L.isValid=function(){return this.$d.toString()!==h},L.isSame=function(U,G){var $=T(U);return this.startOf(G)<=$&&$<=this.endOf(G)},L.isAfter=function(U,G){return T(U){"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.getOptions=Vr.setOptions=Vr.hasOwnProp=Vr.formatDate=Vr.camelify=Vr.splitByCommaWithPreservingQuotes=Vr.trim=Vr.splitAt=Vr.tryCatch=Vr.byteSequenceToHex=Vr.hexToByteSequence=Vr.toNumber=Vr.INVALIDPLAYLIST=Vr.CONDITIONALPARAMCHECK=Vr.PARAMCHECK=Vr.CONDITIONALASSERT=Vr.ASSERT=Vr.THROW=void 0;var g4={};function OT(e){if(!g4.strictMode){g4.silent||console.error(e.message);return}throw e}Vr.THROW=OT;function ksn(e,...t){for(let[r,n]of t.entries())n||OT(new Error(`${e} : Failed at [${r}]`))}Vr.ASSERT=ksn;function Bsn(...e){for(let[t,[r,n]]of e.entries())r&&(n||OT(new Error(`Conditional Assert : Failed at [${t}]`)))}Vr.CONDITIONALASSERT=Bsn;function Usn(...e){for(let[t,r]of e.entries())r===void 0&&OT(new Error(`Param Check : Failed at [${t}]`))}Vr.PARAMCHECK=Usn;function Fsn(...e){for(let[t,[r,n]]of e.entries())r&&n===void 0&&OT(new Error(`Conditional Param Check : Failed at [${t}]`))}Vr.CONDITIONALPARAMCHECK=Fsn;function $sn(e){OT(new Error(`Invalid Playlist : ${e}`))}Vr.INVALIDPLAYLIST=$sn;function WPt(e,t=10){if(typeof e=="number")return e;let r=t===10?Number.parseFloat(e):Number.parseInt(e,t);return Number.isNaN(r)?0:r}Vr.toNumber=WPt;function qsn(e){(e.startsWith("0x")||e.startsWith("0X"))&&(e=e.slice(2));let t=[];for(let r=0;r{"use strict";var Jsn=rn&&rn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Zsn=rn&&rn.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ein=rn&&rn.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Jsn(t,e,r);return Zsn(t,e),t};Object.defineProperty(rn,"__esModule",{value:!0});rn.RenditionReport=rn.PrefetchSegment=rn.PartialSegment=rn.Segment=rn.MediaPlaylist=rn.MasterPlaylist=rn.Playlist=rn.SpliceInfo=rn.DateRange=rn.MediaInitializationSection=rn.Key=rn.SessionData=rn.Variant=rn.Rendition=void 0;var oa=ein(_4()),R1e=class{constructor({type:t,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){oa.PARAMCHECK(t,n,a),oa.CONDITIONALASSERT([t==="SUBTITLES",r],[t==="CLOSED-CAPTIONS",l],[t==="CLOSED-CAPTIONS",!r],[u,t==="SUBTITLES"]),this.type=t,this.uri=r,this.groupId=n,this.language=s,this.assocLanguage=i,this.name=a,this.isDefault=o,this.autoselect=c,this.forced=u,this.instreamId=l,this.characteristics=d,this.channels=f}};rn.Rendition=R1e;var C1e=class{constructor({uri:t,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:h,audio:p=[],video:m=[],subtitles:_=[],closedCaptions:g=[],currentRenditions:y={audio:0,video:0,subtitles:0,closedCaptions:0}}){oa.PARAMCHECK(t,n),this.uri=t,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=s,this.score=i,this.codecs=a,this.resolution=o,this.frameRate=c,this.hdcpLevel=u,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=h,this.audio=p,this.video=m,this.subtitles=_,this.closedCaptions=g,this.currentRenditions=y}};rn.Variant=C1e;var x1e=class{constructor({id:t,value:r,uri:n,language:s}){oa.PARAMCHECK(t,r||n),oa.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=t,this.value=r,this.uri=n,this.language=s}};rn.SessionData=x1e;var w1e=class{constructor({method:t,uri:r,iv:n,format:s,formatVersion:i}){oa.PARAMCHECK(t),oa.CONDITIONALPARAMCHECK([t!=="NONE",r]),oa.CONDITIONALASSERT([t==="NONE",!(r||n||s||i)]),this.method=t,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};rn.Key=w1e;var N1e=class{constructor({hint:t=!1,uri:r,mimeType:n,byterange:s}){oa.PARAMCHECK(r),this.hint=t,this.uri=r,this.mimeType=n,this.byterange=s}};rn.MediaInitializationSection=N1e;var O1e=class{constructor({id:t,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){oa.PARAMCHECK(t),oa.CONDITIONALPARAMCHECK([o===!0,r]),oa.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=t,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};rn.DateRange=O1e;var D1e=class{constructor({type:t,duration:r,tagName:n,value:s}){oa.PARAMCHECK(t),oa.CONDITIONALPARAMCHECK([t==="OUT",r]),oa.CONDITIONALPARAMCHECK([t==="RAW",n]),this.type=t,this.duration=r,this.tagName=n,this.value=s}};rn.SpliceInfo=D1e;var ox=class{constructor(t){oa.PARAMCHECK(t),this.type=t}},A4=class extends ox{constructor({isMasterPlaylist:t,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),oa.PARAMCHECK(t),this.isMasterPlaylist=t,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};rn.Playlist=A4;var P1e=class extends A4{constructor(t={}){super({...t,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=t;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};rn.MasterPlaylist=P1e;var L1e=class extends A4{constructor(t={}){super({...t,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:s=0,endlist:i=!1,playlistType:a,isIFrame:o,segments:c=[],prefetchSegments:u=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:h=0,hash:p}=t;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=s,this.endlist=i,this.playlistType=a,this.isIFrame=o,this.segments=c,this.prefetchSegments=u,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=h,this.hash=p}};rn.MediaPlaylist=L1e;var M1e=class extends ox{constructor({uri:t,mimeType:r,data:n,duration:s,title:i,byterange:a,discontinuity:o,mediaSequenceNumber:c=0,discontinuitySequence:u=0,key:l,map:d,programDateTime:f,dateRange:h,markers:p=[],parts:m=[]}){super("segment"),this.uri=t,this.mimeType=r,this.data=n,this.duration=s,this.title=i,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=c,this.discontinuitySequence=u,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=h,this.markers=p,this.parts=m}};rn.Segment=M1e;var k1e=class extends ox{constructor({hint:t=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),oa.PARAMCHECK(r),this.hint=t,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};rn.PartialSegment=k1e;var B1e=class extends ox{constructor({uri:t,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),oa.PARAMCHECK(t),this.uri=t,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};rn.PrefetchSegment=B1e;var U1e=class{constructor({uri:t,lastMSN:r,lastPart:n}){oa.PARAMCHECK(t),this.uri=t,this.lastMSN=r,this.lastPart=n}};rn.RenditionReport=U1e});var sLt=S(Bg=>{"use strict";var tin=Bg&&Bg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),rin=Bg&&Bg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),nin=Bg&&Bg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&tin(t,e,r);return rin(t,e),t};Object.defineProperty(Bg,"__esModule",{value:!0});var nt=nin(_4()),Qa=F1e();function rLt(e){return nt.trim(e,'"')}function sin(e){switch(e){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function iin(e){let t=nt.splitAt(e,",");return{duration:nt.toNumber(t[0]),title:decodeURIComponent(escape(t[1]))}}function nLt(e){let t=nt.splitAt(e,"@");return{length:nt.toNumber(t[0]),offset:t[1]?nt.toNumber(t[1]):-1}}function ain(e){let t=nt.splitAt(e,"x");return{width:nt.toNumber(t[0]),height:nt.toNumber(t[1])}}function oin(e){let t="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=e.split(",");r.length===0&&nt.INVALIDPLAYLIST(t);let n=[];for(let s of r){let[i,a]=nt.splitAt(s,":");if(!i||!a){nt.INVALIDPLAYLIST(t);continue}n.push({format:i,cpcList:a.split("/")})}return n}function cin(e){let t=nt.hexToByteSequence(e);return t.length!==16&&nt.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),t}function uin(e){return e.startsWith('"')?rLt(e):e.startsWith("0x")||e.startsWith("0X")?nt.hexToByteSequence(e):nt.toNumber(e)}function $1e(e,t){t.IV&&e.compatibleVersion<2&&(e.compatibleVersion=2),(t.KEYFORMAT||t.KEYFORMATVERSIONS)&&e.compatibleVersion<5&&(e.compatibleVersion=5)}function XPt(e){let t={};for(let r of nt.splitByCommaWithPreservingQuotes(e)){let[n,s]=nt.splitAt(r,"="),i=rLt(s);switch(n){case"URI":t[n]=i;break;case"START-DATE":case"END-DATE":t[n]=new Date(i);break;case"IV":t[n]=cin(i);break;case"BYTERANGE":t[n]=nLt(i);break;case"RESOLUTION":t[n]=ain(i);break;case"ALLOWED-CPC":t[n]=oin(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":t[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":t[n]=nt.toNumber(i);break;default:n.startsWith("SCTE35-")?t[n]=nt.hexToByteSequence(i):n.startsWith("X-")?t[n]=uin(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&nt.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),t[n]=i)}}return t}function lin(e,t){switch(e){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[nt.toNumber(t),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(t))?[null,XPt(t)]:[nt.toNumber(t),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,XPt(t)];case"EXTINF":return[iin(t),null];case"EXT-X-BYTERANGE":return[nLt(t),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(t),null];case"EXT-X-PLAYLIST-TYPE":return[t,null];default:return[t,null]}}function JPt(){nt.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function din(e){let t=e.indexOf(":");return t===-1?[e.slice(1).trim(),null]:[e.slice(1,t).trim(),e.slice(t+1).trim()]}function fin({attributes:e}){return new Qa.Rendition({type:e.TYPE,uri:e.URI,groupId:e["GROUP-ID"],language:e.LANGUAGE,assocLanguage:e["ASSOC-LANGUAGE"],name:e.NAME,isDefault:e.DEFAULT,autoselect:e.AUTOSELECT,forced:e.FORCED,instreamId:e["INSTREAM-ID"],characteristics:e.CHARACTERISTICS,channels:e.CHANNELS})}function hin(e,t){let r=!1;for(let n of e){if(n.name===t.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&t.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function pin(e,t,r){let n=fin(t),s=e[nt.camelify(r)],i=hin(s,n);i&&nt.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(e.currentRenditions[nt.camelify(r)]=s.length-1)}function min(e,t,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&e[n]==="NONE"?(r.isClosedCaptionsNone=!0,t.closedCaptions=[]):e[n]&&!t[nt.camelify(n)].some(s=>s.groupId===e[n])&&nt.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function ZPt(e,t,r,n,s){let i=new Qa.Variant({uri:r,bandwidth:t.BANDWIDTH,averageBandwidth:t["AVERAGE-BANDWIDTH"],score:t.SCORE,codecs:t.CODECS,resolution:t.RESOLUTION,frameRate:t["FRAME-RATE"],hdcpLevel:t["HDCP-LEVEL"],allowedCpc:t["ALLOWED-CPC"],videoRange:t["VIDEO-RANGE"],stableVariantId:t["STABLE-VARIANT-ID"],programId:t["PROGRAM-ID"]});for(let a of e)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&nt.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),t[c]===o["GROUP-ID"]&&(pin(i,a,c),c==="CLOSED-CAPTIONS")){for(let{instreamId:u}of i.closedCaptions)if(u&&u.startsWith("SERVICE")&&s.compatibleVersion<7){s.compatibleVersion=7;break}}}return min(t,i,s),i.isIFrameOnly=n,i}function gin(e,t){if(e.method!==t.method||e.uri!==t.uri)return!1;if(e.iv){if(!t.iv||e.iv.length!==t.iv.length)return!1;for(let r=0;ru.id===c.id&&u.language===c.language)&&nt.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&nt.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new Qa.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>gin(u,c))&&nt.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),$1e(t,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&nt.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&nt.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&nt.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&nt.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(t.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&nt.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function eLt(e,t,r,n,s,i,a){let o=new Qa.Segment({uri:t,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:h}=e[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&nt.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&nt.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&nt.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),$1e(a,h),o.key=new Qa.Key({method:h.METHOD,uri:h.URI,iv:h.IV,format:h.KEYFORMAT,formatVersion:h.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&nt.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new Qa.MediaInitializationSection({uri:h.URI,byterange:h.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let p={};for(let m of Object.keys(h))(m.startsWith("SCTE35-")||m.startsWith("X-"))&&(p[m]=h[m]);o.dateRange=new Qa.DateRange({id:h.ID,classId:h.CLASS,start:h["START-DATE"],end:h["END-DATE"],duration:h.DURATION,plannedDuration:h["PLANNED-DURATION"],endOnNext:h["END-ON-NEXT"],attributes:p})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new Qa.SpliceInfo({type:"OUT",duration:h&&h.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new Qa.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new Qa.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!h.TYPE)nt.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&h.TYPE==="PART"&&u)nt.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!h.URI)nt.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&h.TYPE==="MAP")c&&nt.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new Qa.MediaInitializationSection({hint:!0,uri:h.URI,byterange:{length:h["BYTERANGE-LENGTH"],offset:h["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&h.TYPE==="PART"){d==="EXT-X-PART"&&!h.DURATION&&nt.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let p=new Qa.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:h.URI,byterange:d==="EXT-X-PART"?h.BYTERANGE:{length:h["BYTERANGE-LENGTH"],offset:h["BYTERANGE-START"]||0},duration:h.DURATION,independent:h.INDEPENDENT,gap:h.GAP});o.parts.push(p)}}return o}function Ain(e,t,r,n,s,i,a){let o=new Qa.PrefetchSegment({uri:t,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=e[c];u==="EXTINF"?nt.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?nt.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?($1e(a,l),o.key=new Qa.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&nt.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function Ein(e,t){let r=new Qa.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of e.entries()){let{name:h,value:p,attributes:m,category:_}=f;if(_==="Segment"){n===-1&&(n=d),h==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(h==="EXT-X-VERSION")r.version===void 0?r.version=p:nt.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(h==="EXT-X-TARGETDURATION")r.targetDuration=t.targetDuration=p;else if(h==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&nt.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=p;else if(h==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&nt.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&nt.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=p;else if(h==="EXT-X-ENDLIST")r.endlist=!0;else if(h==="EXT-X-PLAYLIST-TYPE")r.playlistType=p;else if(h==="EXT-X-I-FRAMES-ONLY")t.compatibleVersion<4&&(t.compatibleVersion=4),r.isIFrame=!0;else if(h==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&nt.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(h==="EXT-X-START")r.start&&nt.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof m["TIME-OFFSET"]!="number"&&nt.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:m["TIME-OFFSET"],precise:m.PRECISE||!1};else if(h==="EXT-X-SERVER-CONTROL")m["CAN-BLOCK-RELOAD"]||nt.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:m["CAN-BLOCK-RELOAD"],canSkipUntil:m["CAN-SKIP-UNTIL"],holdBack:m["HOLD-BACK"],partHoldBack:m["PART-HOLD-BACK"]};else if(h==="EXT-X-PART-INF")m["PART-TARGET"]||nt.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=m["PART-TARGET"];else if(h==="EXT-X-RENDITION-REPORT")m.URI||nt.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),m.URI.search(/^[a-z]+:/)===0&&nt.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new Qa.RenditionReport({uri:m.URI,lastMSN:m["LAST-MSN"],lastPart:m["LAST-PART"]}));else if(h==="EXT-X-SKIP")m["SKIPPED-SEGMENTS"]||nt.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),t.compatibleVersion<9&&(t.compatibleVersion=9),r.skip=m["SKIPPED-SEGMENTS"],s+=r.skip;else if(h==="EXT-X-PREFETCH"){let g=Ain(e,p,n===-1?d:n,d-1,s++,o,t);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?c=g.key:g.key=c,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&nt.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||nt.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&nt.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=eLt(e,f,n,d-1,s++,o,t);g&&([o,c,u]=tLt(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=eLt(e,"",n,e.length-1,s++,o,t);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&nt.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),tLt(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return yin(r.segments),r.lowLatencyCompatibility&&vin(r,l),r}function tLt(e,t,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=t;if(i&&(t.discontinuitySequence=r+1),a||(t.key=n),o||(t.map=s),c&&c.offset===-1){let{segments:l}=e;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:nt.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else nt.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return e.segments.push(t),[t.discontinuitySequence,t.key,t.map]}function yin(e){let t=new Map,r=new Map,n=!1,s=!1;for(let i=e.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=e[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&nt.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&nt.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=t.get(o.classId)),t.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start0&&ur&&nt.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(u.lastPart=l.parts.length-1)}}function Sin(e,t){if(e==="Segment"||e==="MediaPlaylist"){if(t.isMasterPlaylist===void 0){t.isMasterPlaylist=!1;return}t.isMasterPlaylist&&JPt();return}if(e==="MasterPlaylist"){if(t.isMasterPlaylist===void 0){t.isMasterPlaylist=!0;return}t.isMasterPlaylist===!1&&JPt()}}function Tin(e,t){let[r,n]=din(e),s=sin(r);if(Sin(s,t),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(t.hash[r]&&nt.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),t.hash[r]=!0);let[i,a]=lin(r,n);return{name:r,category:s,value:i,attributes:a}}function bin(e,t){let r=[];for(let n of e.split(` -`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=Tin(s,t);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&nt.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function Iin(e,t){let r;return t.isMasterPlaylist?r=_in(e,t):(r=Ein(e,t),!r.isIFrame&&t.hasMap&&t.compatibleVersion<6&&(t.compatibleVersion=6)),t.compatibleVersion>1&&(!r.version||r.version{"use strict";var Cin=Ug&&Ug.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xin=Ug&&Ug.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),win=Ug&&Ug.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Cin(t,e,r);return xin(t,e),t};Object.defineProperty(Ug,"__esModule",{value:!0});var m0=win(_4()),Nin=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],Oin=["#EXT-X-MEDIA"],q1e=class extends Array{constructor(t){super(),this.baseUri=t}push(...t){for(let r of t){if(!r.startsWith("#")){super.push(r);continue}if(Nin.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(Oin.some(n=>r.startsWith(n)))continue;m0.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function H1e(e,t){let r=1e3;t&&(r=10**t);let n=Math.round(e*r)/r;return t?n.toFixed(t):n}function Din(e){let t=e.toString(10),r=t.indexOf(".");return r===-1?0:t.length-r-1}function Pin(e,t){for(let r of t.sessionDataList)e.push(Lin(r));for(let r of t.sessionKeyList)e.push(iLt(r,!0));for(let r of t.variants)Min(e,r)}function Lin(e){let t=[`DATA-ID="${e.id}"`];return e.language&&t.push(`LANGUAGE="${e.language}"`),e.value?t.push(`VALUE="${e.value}"`):e.uri&&t.push(`URI="${e.uri}"`),`#EXT-X-SESSION-DATA:${t.join(",")}`}function iLt(e,t){let r=t?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${e.method}`];return e.uri&&n.push(`URI="${e.uri}"`),e.iv&&(e.iv.length!==16&&m0.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${m0.byteSequenceToHex(e.iv)}`)),e.format&&n.push(`KEYFORMAT="${e.format}"`),e.formatVersion&&n.push(`KEYFORMATVERSIONS="${e.formatVersion}"`),`${r}:${n.join(",")}`}function Min(e,t){let r=t.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${t.bandwidth}`];if(t.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${t.averageBandwidth}`),t.isIFrameOnly&&n.push(`URI="${t.uri}"`),t.codecs&&n.push(`CODECS="${t.codecs}"`),t.resolution&&n.push(`RESOLUTION=${t.resolution.width}x${t.resolution.height}`),t.frameRate&&n.push(`FRAME-RATE=${H1e(t.frameRate,3)}`),t.hdcpLevel&&n.push(`HDCP-LEVEL=${t.hdcpLevel}`),t.audio.length>0){n.push(`AUDIO="${t.audio[0].groupId}"`);for(let s of t.audio)e.push(Y7(s))}if(t.video.length>0){n.push(`VIDEO="${t.video[0].groupId}"`);for(let s of t.video)e.push(Y7(s))}if(t.subtitles.length>0){n.push(`SUBTITLES="${t.subtitles[0].groupId}"`);for(let s of t.subtitles)e.push(Y7(s))}if(m0.getOptions().allowClosedCaptionsNone&&t.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(t.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${t.closedCaptions[0].groupId}"`);for(let s of t.closedCaptions)e.push(Y7(s))}if(t.score&&n.push(`SCORE=${t.score}`),t.allowedCpc){let s=[];for(let{format:i,cpcList:a}of t.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}t.videoRange&&n.push(`VIDEO-RANGE=${t.videoRange}`),t.stableVariantId&&n.push(`STABLE-VARIANT-ID="${t.stableVariantId}"`),t.programId&&n.push(`PROGRAM-ID=${t.programId}`),e.push(`${r}:${n.join(",")}`),t.isIFrameOnly||e.push(`${t.uri}`)}function Y7(e){let t=[`TYPE=${e.type}`,`GROUP-ID="${e.groupId}"`,`NAME="${e.name}"`];return e.isDefault!==void 0&&t.push(`DEFAULT=${e.isDefault?"YES":"NO"}`),e.autoselect!==void 0&&t.push(`AUTOSELECT=${e.autoselect?"YES":"NO"}`),e.forced!==void 0&&t.push(`FORCED=${e.forced?"YES":"NO"}`),e.language&&t.push(`LANGUAGE="${e.language}"`),e.assocLanguage&&t.push(`ASSOC-LANGUAGE="${e.assocLanguage}"`),e.instreamId&&t.push(`INSTREAM-ID="${e.instreamId}"`),e.characteristics&&t.push(`CHARACTERISTICS="${e.characteristics}"`),e.channels&&t.push(`CHANNELS="${e.channels}"`),e.uri&&t.push(`URI="${e.uri}"`),`#EXT-X-MEDIA:${t.join(",")}`}function kin(e,t){let r="",n="",s=!1;if(t.targetDuration&&e.push(`#EXT-X-TARGETDURATION:${t.targetDuration}`),t.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=t.lowLatencyCompatibility,u=[];u.push(`CAN-BLOCK-RELOAD=${i?"YES":"NO"}`),a!==void 0&&u.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&u.push(`HOLD-BACK=${o}`),c!==void 0&&u.push(`PART-HOLD-BACK=${c}`),e.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}t.partTargetDuration&&e.push(`#EXT-X-PART-INF:PART-TARGET=${t.partTargetDuration}`),t.mediaSequenceBase&&e.push(`#EXT-X-MEDIA-SEQUENCE:${t.mediaSequenceBase}`),t.discontinuitySequenceBase&&e.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${t.discontinuitySequenceBase}`),t.playlistType&&e.push(`#EXT-X-PLAYLIST-TYPE:${t.playlistType}`),t.isIFrame&&e.push("#EXT-X-I-FRAMES-ONLY"),t.skip>0&&e.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${t.skip}`);for(let i of t.segments){let a="";[r,n,a]=Bin(e,i,r,n,t.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}t.playlistType==="VOD"&&s&&e.push("#EXT-X-CUE-IN"),t.prefetchSegments.length>2&&m0.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of t.prefetchSegments)i.discontinuity&&e.push("#EXT-X-PREFETCH-DISCONTINUITY"),e.push(`#EXT-X-PREFETCH:${i.uri}`);t.endlist&&e.push("#EXT-X-ENDLIST");for(let i of t.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),e.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function Bin(e,t,r,n,s=1){let i=!1,a="";if(t.discontinuity&&e.push("#EXT-X-DISCONTINUITY"),t.key){let c=iLt(t.key);c!==r&&(e.push(c),r=c)}if(t.map){let c=Uin(t.map);c!==n&&(e.push(c),n=c)}if(t.programDateTime&&e.push(`#EXT-X-PROGRAM-DATE-TIME:${m0.formatDate(t.programDateTime)}`),t.dateRange&&e.push(Fin(t.dateRange)),t.markers.length>0&&(a=$in(e,t.markers)),t.parts.length>0&&(i=qin(e,t.parts)),i)return[r,n];let o=s<3?Math.round(t.duration):H1e(t.duration,Din(t.duration));return e.push(`#EXTINF:${o},${unescape(encodeURIComponent(t.title||""))}`),t.byterange&&e.push(`#EXT-X-BYTERANGE:${V1e(t.byterange)}`),Array.prototype.push.call(e,`${t.uri}`),[r,n,a]}function Uin(e){let t=[`URI="${e.uri}"`];return e.byterange&&t.push(`BYTERANGE="${V1e(e.byterange)}"`),`#EXT-X-MAP:${t.join(",")}`}function V1e({offset:e,length:t}){return`${t}@${e}`}function Fin(e){let t=[`ID="${e.id}"`];e.start&&t.push(`START-DATE="${m0.formatDate(e.start)}"`),e.end&&t.push(`END-DATE="${m0.formatDate(e.end)}"`),e.duration&&t.push(`DURATION=${e.duration}`),e.plannedDuration&&t.push(`PLANNED-DURATION=${e.plannedDuration}`),e.classId&&t.push(`CLASS="${e.classId}"`),e.endOnNext&&t.push("END-ON-NEXT=YES");for(let r of Object.keys(e.attributes))r.startsWith("X-")?typeof e.attributes[r]=="number"?t.push(`${r}=${e.attributes[r]}`):t.push(`${r}="${e.attributes[r]}"`):r.startsWith("SCTE35-")&&t.push(`${r}=${m0.byteSequenceToHex(e.attributes[r])}`);return`#EXT-X-DATERANGE:${t.join(",")}`}function $in(e,t){let r="";for(let n of t)if(n.type==="OUT")r="OUT",e.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",e.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";e.push(`#${n.tagName}${s}`)}return r}function qin(e,t){let r=!1;for(let n of t)if(n.hint){let s=[];if(s.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:i,length:a}=n.byterange;s.push(`BYTERANGE-START=${i}`),a&&s.push(`BYTERANGE-LENGTH=${a}`)}e.push(`#EXT-X-PRELOAD-HINT:${s.join(",")}`),r=!0}else{let s=[];s.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&s.push(`BYTERANGE=${V1e(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),e.push(`#EXT-X-PART:${s.join(",")}`)}return r}function Hin(e){m0.PARAMCHECK(e),m0.ASSERT("Not a playlist",e.type==="playlist");let t=new q1e(e.uri);return t.push("#EXTM3U"),e.version&&t.push(`#EXT-X-VERSION:${e.version}`),e.independentSegments&&t.push("#EXT-X-INDEPENDENT-SEGMENTS"),e.start&&t.push(`#EXT-X-START:TIME-OFFSET=${H1e(e.start.offset)}${e.start.precise?",PRECISE=YES":""}`),e.isMasterPlaylist?Pin(t,e):kin(t,e),t.join(` -`)}Ug.default=Hin});var uLt=S(ca=>{"use strict";var Vin=ca&&ca.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jin=ca&&ca.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Kin=ca&&ca.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Vin(t,e,r);return jin(t,e),t},oLt=ca&&ca.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ca,"__esModule",{value:!0});ca.setOptions=ca.getOptions=ca.types=ca.stringify=ca.parse=void 0;var cLt=_4();Object.defineProperty(ca,"getOptions",{enumerable:!0,get:function(){return cLt.getOptions}});Object.defineProperty(ca,"setOptions",{enumerable:!0,get:function(){return cLt.setOptions}});var Gin=oLt(sLt());ca.parse=Gin.default;var zin=oLt(aLt());ca.stringify=zin.default;var Yin=Kin(F1e());ca.types=Yin});function cx(e,t={}){if(!e||typeof e!="string")throw new TypeError("createCache: name \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");if(j1e.has(e))return j1e.get(e).cache;let r=new gt(t.maxSize??100,t.ttl??5*60*1e3);return j1e.set(e,{cache:r,options:{maxSize:r.maxSize,ttl:r.ttl},createdAt:Date.now()}),r}function es(e,t={}){let r=cx(e,t),n=Symbol("absent");return{has(s){return r.cache.has(s)},get(s){let i=r.get(s);if(!(i===null&&!r.cache.has(s)))return i},set(s,i){return r.set(s,i),this},delete(s){return r.delete(s)},clear(){r.clear()},get size(){return r.size},*entries(){yield*r.entries()},*keys(){for(let[s]of r.entries())yield s},*values(){for(let[,s]of r.entries())yield s},[Symbol.iterator](){return r.entries()}}}var j1e,g0=ae(()=>{sa();j1e=new Map});function Qin(e){if(!e||typeof e!="string")return null;let t=ux.chineseEpisode.exec(e);if(t){let o=t[0].replace(/第|[集話话]/g,"");if(lLt.has(o))return lLt.get(o);if(/^\d+$/.test(o))return parseInt(o,10)}let r=ux.epFormat.exec(e);if(r)return parseInt(r[1],10);let n=ux.seasonEpisode.exec(e);if(n)return parseInt(n[2],10);let s=ux.bracketNumber.exec(e);if(s)return parseInt(s[1],10);let i=ux.plainNumber.exec(e);if(i){let o=parseInt(i[1],10);if(o<1e3)return o}let a=ux.simpleEpisode.exec(e);return a?parseInt(a[1],10):null}function Kt(e){return!e||e.length<=1?e:e.map(r=>{let n=r.vod_name||r.n||r.name||r.file_name||r.FileName||"",s=n,i=dLt.get(s);return i===void 0&&(i=Qin(n),dLt.set(s,i)),{video:r,name:n,number:i}}).sort((r,n)=>r.number!==null&&n.number!==null?r.number-n.number:r.number!==null&&n.number===null?-1:r.number===null&&n.number!==null?1:r.name.localeCompare(n.name,"zh-CN")).map(r=>r.video)}async function _0(e,t,r=5){if(!Array.isArray(e)||e.length===0)return[];let n=[],s=0;async function i(){for(;;){let c=s++;if(c>=e.length)return;let u=e[c];if(u!==void 0)try{let l=await t(u);l&&n.push(l)}catch(l){console.error("Parallel processing error:",l)}}}let a=Math.min(r,e.length),o=Array.from({length:a},()=>i());return await Promise.all(o),n}function Ro(e,t,r=!1){if(!t||t.length===0)return{};let i=(r?Kt(t):t).map(a=>{let o=Ju(a.vod_size),u=(a.vod_name||"").replace(/\.[^.]+$/,"");return{vod_id:a.vod_id,vod_name:p4("",` ${u} [${o}]`)}}).map(a=>`${a.vod_name}$${a.vod_id}`).join("#");return{from:e,url:i}}async function Q7(e,t){if(!Array.isArray(e)||e.length===0)return null;let r=[...new Set(e.map(l=>String(l||"").trim()).filter(Boolean))];if(r.length===0)return null;let n=r.map(l=>{try{let d=new URL(l);return{url:l,host:d.host,origin:d.origin}}catch{return{url:l,host:"",origin:""}}}),s=l=>{let d=Number(l||0);return d===200||d===204||d===301||d===302||d===401||d===403||d===405},i=(l,d)=>{let f=d?.request?.res?.responseUrl||d?.config?.url||l.url;try{let h=new URL(f).host;return!!h&&h===l.host}catch{return!1}},a=(l,d)=>{let f=String(l||"").toLowerCase();return!f||d.host&&f.includes(d.host.toLowerCase())?!1:f.includes("/en/?")||f.includes("access denied")||f.includes("forbidden")||f.includes("captcha")||f.includes("cloudflare")},o=async l=>{let d=Date.now();try{let f=await ve({method:"head",url:l.url,headers:t,timeout:5e3,maxRedirects:5,validateStatus:()=>!0});if(s(f?.status)&&i(l,f))return{url:l.url,elapsedMs:Date.now()-d,status:Number(f?.status||0),method:"head"}}catch{}try{let f=await ve({method:"get",url:l.url,headers:t,timeout:5e3,maxRedirects:5,validateStatus:()=>!0});return!s(f?.status)||!i(l,f)||a(f?.data,l)?null:{url:l.url,elapsedMs:Date.now()-d,status:Number(f?.status||0),method:"get"}}catch{return null}},u=(await Promise.all(n.map(o))).filter(Boolean);return u.length===0?null:(u.sort((l,d)=>l.elapsedMs!==d.elapsedMs?l.elapsedMs-d.elapsedMs:l.url.localeCompare(d.url)),u[0].url)}var ux,lLt,dLt,ua=ae(()=>{ws();Pr();g0();ux={chineseEpisode:/第[零一二三四五六七八九十百千万0-9]+[集話话]/,epFormat:/(?:E|EP)[\s_-]*(\d+)/i,seasonEpisode:/S(\d+)[\s_-]*E(\d+)/i,bracketNumber:/[\[【\(](\d+)[\]】\)]/,plainNumber:/\b(\d{1,4})\b/,simpleEpisode:/(\d+)[集話话]/},lLt=new Map([["\u96F6",0],["\u3007",0],["\u4E00",1],["\u4E8C",2],["\u4E09",3],["\u56DB",4],["\u4E94",5],["\u516D",6],["\u4E03",7],["\u516B",8],["\u4E5D",9],["\u5341",10],["\u5341\u4E00",11],["\u5341\u4E8C",12],["\u5341\u4E09",13],["\u5341\u56DB",14],["\u5341\u4E94",15],["\u5341\u516D",16],["\u5341\u4E03",17],["\u5341\u516B",18],["\u5341\u4E5D",19],["\u4E8C\u5341",20],["\u4E8C\u5341\u4E00",21],["\u4E8C\u5341\u4E8C",22],["\u4E8C\u5341\u4E09",23],["\u4E8C\u5341\u56DB",24],["\u4E8C\u5341\u4E94",25],["\u4E8C\u5341\u516D",26],["\u4E8C\u5341\u4E03",27],["\u4E8C\u5341\u516B",28],["\u4E8C\u5341\u4E5D",29],["\u4E09\u5341",30],["\u4E09\u5341\u4E00",31],["\u4E09\u5341\u4E8C",32],["\u4E09\u5341\u4E09",33],["\u4E09\u5341\u56DB",34],["\u4E09\u5341\u4E94",35],["\u4E09\u5341\u516D",36],["\u4E09\u5341\u4E03",37],["\u4E09\u5341\u516B",38],["\u4E09\u5341\u4E5D",39],["\u56DB\u5341",40]]);dLt=es("utils.vodNumber",{maxSize:5e3,ttl:60*60*1e3})});function Xin(){let e=xi();if(!Array.isArray(e)||e.length===0)return null;let t={};for(let r of e)r?.key&&(t[r.key]=r.enable!==!1);return t.magnet=t.magnet===!0||t.magnet_guangya===!0,t}function Jin(e=Date.now()){return W7&&e-fLt{wi();hLt={ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9_-]+(\/folder\/[a-zA-Z0-9_-]+)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]+)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+|web\/share\?code=[^&\s]+)/i,yd:/https?:\/\/(?:yun\.139\.com\/shareweb\/#\/w\/i\/|caiyun\.139\.com\/(?:m\/i\?|w\/i\/))[^&\s]+/i,quark:/https?:\/\/(?:pan\.quark\.cn|pan\.qoark\.cn)\/s\/[a-zA-Z0-9_-]+/i,uc:/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[^/?#\s]+(?:\?[^\s]*)?/i,baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[^?\s]+(?:\?[^\s]*)?/i,guangya:/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/i,magnet:/^(?:magnet:\?xt=urn:btih:[A-Za-z0-9]+|ed2k:\/\/\|file\|)/i},pLt={ali:"ali",quark:"quark",baidu:"baidu",uc:"uc",tianyi:"tianyi",yd:"yidong",pan123:"123",pan115:"115",xunlei:"xunlei",magnet:"magnet",guangya:"guangya"},W7=null,fLt=0,Win=3e4;mLt=async e=>X7(e)==="ali",gLt=async e=>X7(e)==="quark",_Lt=async e=>X7(e)==="uc",J7=e=>A0(e)==="ali",Z7=e=>A0(e)==="quark",ej=e=>A0(e)==="uc",tj=e=>A0(e)==="tianyi",rj=e=>A0(e)==="yidong",nj=e=>A0(e)==="123",sj=e=>A0(e)==="115",ij=e=>A0(e)==="baidu",ALt=e=>A0(e)==="xunlei",aj=e=>A0(e)==="magnet",oj=e=>A0(e)==="guangya",cj=async e=>X7(e)});function vt(e){return!!e&&Zin.test(String(e))}function SLt(e){return String(e||"").replace(/\.[^.]+$/,"")}function tr(e){let t=String(e||"").toLowerCase().match(/\.([^.]+)$/),r=t?t[1]:"";return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}function lj(e){let t=String(e||"").toLowerCase();return t=SLt(t),t=t.replace(/[\[\((【].*?[\]\))】]/g," "),t=t.replace(/(?:[._\-\s]|^)(?:chs|cht|chi|zh-cn|zh|cn|sc|tc|eng|en|jpn|jp|简中|繁中|中字|双语|中英|外挂字幕|内封字幕|sub|subtitle)(?:[._\-\s]|$)/gi," "),t=t.replace(/[._\-]+/g," "),t=t.replace(/\s+/g," ").trim(),t.replace(/\s+/g,"")}function dj(e){let t=String(e||"").toLowerCase().match(/\.([^.]+)$/);return t?t[1]:""}function fj(e){return SLt(String(e||"")).trim().toLowerCase()}function ELt(e,t){return!Array.isArray(e)||e.length===0?null:e.slice().sort((n,s)=>{let i=uj[dj(t(n))]||99,a=uj[dj(t(s))]||99;return i!==a?i-a:String(t(n)||"").localeCompare(String(t(s)||""),"zh-CN")})[0]}function yLt(e,t){return!Array.isArray(e)||e.length===0?[]:e.slice().sort((r,n)=>{let s=uj[dj(t(r))]||99,i=uj[dj(t(n))]||99;return s!==i?s-i:String(t(r)||"").localeCompare(String(t(n)||""),"zh-CN")})}function ic(e,t,r){if(!e||!Array.isArray(t)||t.length===0)return[];let n=fj(e);if(!n)return[];let s=t.filter(o=>fj(r(o))===n);if(s.length>0)return yLt(s,r);let i=lj(e);if(!i)return[];let a=[];for(let o of t){let c=r(o),u=lj(c);u&&(u===i||u.startsWith(i)||i.startsWith(u))&&a.push(o)}return yLt(a,r)}function Ir(e,t,r){if(!e||!Array.isArray(t)||t.length===0)return null;let n=fj(e);if(!n)return null;let s=t.filter(o=>fj(r(o))===n);if(s.length>0)return ELt(s,r);let i=lj(e);if(!i)return null;let a=[];for(let o of t){let c=r(o),u=lj(c);u&&(u===i||u.startsWith(i)||i.startsWith(u))&&a.push(o)}return ELt(a,r)}function vLt(e){let t=String(e||"").trim().match(/^(\d+):(\d{1,2}):(\d{1,2})[.](\d{1,2})$/);if(!t)return"00:00:00,000";let r=String(Number(t[1])).padStart(2,"0"),n=String(Number(t[2])).padStart(2,"0"),s=String(Number(t[3])).padStart(2,"0"),i=Number(t[4]),a=String(i*10).padStart(3,"0");return`${r}:${n}:${s},${a}`}function ean(e){return String(e||"").replace(/\{[^}]*\}/g,"").replace(/\\N/g,` -`).replace(/\\n/g,` -`).replace(/\\h/g," ").trim()}function tan(e){let t=String(e||"");return/[\u4e00-\u9fff]/.test(t)?t.split(` -`).map(r=>r.replace(/[A-Za-z][A-Za-z0-9\s.,!?;:'"()\-_/\\[\]{}<>`~@#$%^&*+=|]*/g,"").replace(/\s{2,}/g," ").trim()).filter(Boolean).join(` -`):t}function DT(e){let t=String(e||"").split(/\r?\n/),r=[],n=1;for(let s of t){if(!s.startsWith("Dialogue:"))continue;let a=s.slice(9).trim().split(",");if(a.length<10)continue;let o=vLt(a[1]),c=vLt(a[2]),u=tan(ean(a.slice(9).join(",")));u&&(r.push(String(n++)),r.push(`${o} --> ${c}`),r.push(u),r.push(""))}return r.join(` -`)}var Zin,uj,Wc=ae(()=>{Zin=/\.(srt|ass|ssa|vtt|sub|idx|smi|txt)$/i,uj={ass:1,ssa:2,srt:3,vtt:4,sub:5,idx:6,smi:7,txt:8}});function Ot(e,t={}){let{fieldOrder:r,encodeUri:n=!1,structured:s=!1}=t,i;if(Array.isArray(e))i=e.map(K1e);else if(e&&typeof e=="object"){if(!Array.isArray(r)||r.length===0)throw new TypeError("encodeVodId: object payload requires options.fieldOrder");i=r.map(o=>K1e(e[o]))}else{let o=K1e(e);return n?encodeURIComponent(o):o}let a=s?ran(i):i.join(TLt);return n?encodeURIComponent(a):a}function Mr(e,t={}){let{fieldOrder:r,decodeUri:n=!1,minLength:s}=t;if(e==null)return Array.isArray(r)?{}:[];let i=String(e);if(n)try{i=decodeURIComponent(i)}catch{}let a=nan(i);if(a===null&&(a=i.split(TLt)),typeof s=="number"&&a.length{o[c]=a[u]??""}),a.length>r.length&&(o._rest=a.slice(r.length)),o}function K1e(e){return e==null?"":String(e)}function ran(e){let t=JSON.stringify(e),r=Buffer.from(t,"utf8").toString("base64url");return G1e+r}function nan(e){if(typeof e!="string"||!e.startsWith(G1e))return null;try{let t=e.slice(G1e.length),r=Buffer.from(t,"base64url").toString("utf8"),n=JSON.parse(r);return Array.isArray(n)?n.map(s=>s==null?"":String(s)):null}catch{return null}}var TLt,G1e,Xc=ae(()=>{TLt="*",G1e="!vod1!"});function Fg(e,t,r=!1){let n=Array.isArray(t)?t.filter(Boolean):[];if(!e||n.length===0)return null;let s=Ro(e,n,r);return!s?.from||!s?.url?null:s}function Ta(e,t,r=!1){let n=Fg(e,t,r);return n?[n]:[]}function $g(e,t){let r=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",n=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return`${n?`${r}://${n}`:e.server.address().url}${e.server.prefix}/proxy/${t}`}function lx(e,t,r,n,s,i=".bin"){return`${$g(e,t)}/src/${r}/${n}/${s}/${i}`}function ba(e,t,r,n,s,i,a=".bin"){return[String(r||""),lx(e,t,n,s,i,a)]}function bLt(e,t,r,n,s,i=".m3u8"){return`${$g(e,t)}/trans/${r}/${n}/${s}/${i}`}function E0(e,t,r,n,s=".srt",i={}){return{name:i.name?String(i.name):"\u5916\u6302\u5B57\u5E55",url:lx(e,t,"subt",r,n,s),format:i.format?String(i.format):s.replace(/^\./,"")||"srt"}}var $l=ae(()=>{ua()});function z1e(e={}){let t=e&&typeof e.url=="string"?e.url:"";return t?{url:t,name:e.name?String(e.name):san,format:e.format?String(e.format):ian}:null}function Xs(e={}){let{parse:t,urls:r,subtitles:n,extra:s,header:i}=e||{},a={parse:t===1?1:0,url:Array.isArray(r)?r.slice():[]};i&&typeof i=="object"&&!Array.isArray(i)&&(a.header={...i});let o=Array.isArray(n)?n.map(u=>u&&typeof u=="object"?z1e(u):null).filter(Boolean):[];o.length>0&&(a.subs=o,a.subt=o[0].url,a.subtitle=o[0].url,a.subs_urls=o.map(u=>u.url));let c=s&&typeof s=="object"?{...s}:null;if(o.length>0){let u=o.map(d=>d.url),l=c||{};l.subt||(l.subt=o[0].url),l.subtitle||(l.subtitle=o[0].url),(!Array.isArray(l.subs_urls)||l.subs_urls.length===0)&&(l.subs_urls=u),(!Array.isArray(l.subs)||l.subs.length===0)&&(l.subs=o.map(d=>({name:d.name,url:d.url,format:d.format}))),Object.keys(l).length>0&&(a.extra=l)}else c&&Object.keys(c).length>0&&(a.extra=c);return a}function Wr(e,t){let r={parse:0,url:[],error:String(e??"\u64AD\u653E\u5931\u8D25")};return t&&typeof t=="object"?{...r,...t}:r}var san,ian,y0=ae(()=>{san="\u5916\u6302\u5B57\u5E55",ian="srt"});function ILt(e,t){let r=PT[e];if(!r)return[];let n=new Set(r),s=new Set,i=[];for(let a of Array.isArray(t)?t:[])!n.has(a)||s.has(a)||(s.add(a),i.push(a));for(let a of r)s.has(a)||(s.add(a),i.push(a));return i}function RLt(e){return(Array.isArray(e)?e:[]).map(t=>PT[t?.key]?{...t,routeOrder:ILt(t.key,t.routeOrder)}:{...t})}function aan(e,t=xi()){let r=(Array.isArray(t)?t:[]).find(n=>n?.key===e);return ILt(e,r?.routeOrder)}function hj(e,t,r=xi()){let n=aan(e,r),s=n.indexOf(t);return s>=0?s:n.length}function Zd(e,t){return(Array.isArray(t)?t:[]).filter(r=>r?.from&&r?.url).map(r=>({...r,routeKey:e}))}function oan(e,t,r=xi()){return(Array.isArray(t)?t:[]).map((n,s)=>({route:n,index:s})).filter(({route:n})=>n?.from&&n?.url).sort((n,s)=>hj(e,n.route.routeKey,r)-hj(e,s.route.routeKey,r)||n.index-s.index).map(({route:n})=>n)}function ip(e,t,r=xi()){let n=oan(e,t,r);return{routes:n,from:n.map(s=>s.from).join("$$$"),url:n.map(s=>s.url).join("$$$")}}var ir,PT,eSs,qg=ae(()=>{wi();ir=Object.freeze({ali:Object.freeze({original:"ali.original",rapid115:"ali.rapid115"}),123:Object.freeze({direct:"123.direct",original:"123.original"}),115:Object.freeze({original:"115.original",rapid123:"115.rapid123"}),uc:Object.freeze({unlimited:"uc.unlimited",original:"uc.original"})}),PT=Object.freeze({ali:Object.freeze([ir.ali.original,ir.ali.rapid115]),123:Object.freeze([ir[123].direct,ir[123].original]),115:Object.freeze([ir[115].original,ir[115].rapid123]),uc:Object.freeze([ir.uc.unlimited,ir.uc.original])}),eSs=Object.freeze({[ir.ali.original]:"\u963F\u91CC",[ir.ali.rapid115]:"\u79D2\u4F20115",[ir[123].direct]:"123\u65E0\u9650",[ir[123].original]:"P123",[ir[115].original]:"P115",[ir[115].rapid123]:"\u79D2\u4F20123",[ir.uc.unlimited]:"UC\u65E0\u9650",[ir.uc.original]:"UC"})});function dx(e,t){let r=String(e||"").trim(),n=/^bytes=(\d*)-(\d*)$/i.exec(r);if(!n)return null;let s=n[1]===""?null:Number(n[1]),i=n[2]===""?null:Number(n[2]);if(s===null&&i===null)return null;if(s===null){let a=Number(i);if(!Number.isFinite(a)||a<=0)return null;s=Math.max(t-a,0),i=t-1}else if(!Number.isFinite(s)||s<0||(i===null&&(i=t-1),!Number.isFinite(i)||i=t?{unsatisfied:!0}:(i=Math.min(i,t-1),{start:s,end:i})}var pj=ae(()=>{});function mj(e,t,r,n){let s=Number(e);if(!Number.isFinite(s))return t;let i=Math.floor(s);return i_s.maxChunkSize||e.poolSize<_s.minPoolSize||e.poolSize>_s.maxPoolSize)return null;let n=zi(e,t);if(r.requireEnableFast){if(typeof e.enableFast!="boolean")return null;n.enableFast=e.enableFast}return n}var can,_s,Zu=ae(()=>{can={chunkSize:524288,poolSize:4,useMultithread:!0},_s={minChunkSize:1024,maxChunkSize:10*1024*1024,minPoolSize:1,maxPoolSize:200,minTimeout:1e3,maxTimeout:120*1e3,minRetries:1,maxRetries:10}});async function uan(e,t={}){let r=await Xe.get(e,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},t)}).catch(n=>n.response||{status:500,data:{}});if(r?.data&&typeof r.data.destroy=="function"&&r.data.destroy(),r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",s=r.headers["content-range"],i=parseInt(r.headers["content-length"]),a=n||!!s||i===1,o=s?parseInt(s.split("/")[1]):i;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}async function NLt(e){try{if(ui.default.existsSync(e)){let t=await ui.default.promises.readdir(e);await Promise.all(t.map(async r=>{let n=`${e}/${r}`;(await ui.default.promises.stat(n)).isDirectory()?await NLt(n):await ui.default.promises.unlink(n)})),await ui.default.promises.rmdir(e)}}catch{}}function OLt(e){if(!e||(DE.get(e)||0)>0)return Promise.resolve();let t=E4.get(e);if(t)return t;let r=ui.default.promises.rm((0,fx.join)(LT,e),{recursive:!0,force:!0}).catch(()=>{}).finally(()=>{E4.get(e)===r&&E4.delete(e)});return E4.set(e,r),r}async function dan(e){let t=E4.get(e);t&&await t.catch(()=>{})}function fan(){try{ui.default.readdir(LT,(e,t)=>{if(t)for(let r of t){if(DE.has(r)&&DE.get(r)>0)continue;let n=(0,fx.join)(LT,r);ui.default.stat(n,(s,i)=>{i&&i.isDirectory()&&OLt(r)})}})}catch{}}function han(e){DE.set(e,(DE.get(e)||0)+1);let t=!1;return()=>{if(t)return;t=!0;let r=(DE.get(e)||1)-1;r<=0?DE.delete(e):DE.set(e,r)}}async function Y1e(e){let t=await ui.default.promises.stat(e).catch(()=>null);return t&&t.isFile()?t.size:-1}async function pan(e,t,r,n,s,i,a=null,o=!1,c=0){await lan,n=Q1e.default.enc.Hex.stringify(Q1e.default.MD5(n||r)).toString();let u=han(n);await dan(n);let l=i&&typeof i=="object"?i:{},d=typeof l.resolveUrl=="function"?l.resolveUrl:null,f=typeof l.disposeUrlResolver=="function"?l.disposeUrlResolver:null,h=!1,p=async()=>{h||!f||(h=!0,await f())};fan();try{s=s||{},c=Math.max(Number(c)||0,0);let m=Number(a);(!Number.isFinite(m)||m<=0)&&(m=null);let _=CLt.get(n);if(!m||!o){if(!_){let[Te,xe]=await uan(r,s);if(!Te||!xe?.["content-length"]){await p().catch(()=>{}),u(),t.redirect(r);return}CLt.set(n,xe),_=xe}m||(m=parseInt(_["content-length"]))}if(!Number.isFinite(m)||m<=0){await p().catch(()=>{}),u(),t.redirect(r);return}await ui.default.promises.mkdir((0,fx.join)(LT,n),{recursive:!0});let g=0,y=m-1,A={"accept-ranges":"bytes","cache-control":"no-store"};if(e.headers.range){let Te=dx(e.headers.range,m);if(!Te||Te.unsatisfied){await p().catch(()=>{}),u(),t.code(416).headers({"content-range":`bytes */${m}`,"accept-ranges":"bytes"});return}g=Te.start,y=Te.end,Object.assign(A,_||{}),A["accept-ranges"]="bytes",A["cache-control"]="no-store",A["content-length"]=(y-g+1).toString(),A["content-range"]=`bytes ${g}-${y}/${m}`,t.code(206)}else Object.assign(A,_||{}),A["accept-ranges"]="bytes",A["cache-control"]="no-store",A["content-length"]=m.toString(),t.code(200);let E=Number(l.maxCacheBytes),v=Number.isFinite(E)?Math.max(1024*1024,Math.min(xLt,Math.floor(E))):xLt;i=zi(l,{chunkSize:1024*256,poolSize:5,timeout:1e3*10,maxRetries:4});let b=i.chunkSize,I=i.poolSize,T=i.timeout,x=i.maxRetries,w=Number(l.initialChunkSize),D=Number.isFinite(w)?Math.max(1024,Math.min(b,Math.floor(w))):b,M=D=I,te=!1,Q=null,Z=new Set,de=new Set,B=new Set,k=new Set,W={},P={},H={},j=new wLt.PassThrough,q=()=>{for(let Te of k)Te.source&&typeof Te.source.destroy=="function"&&Te.source.destroy(),Te.writer&&typeof Te.writer.destroy=="function"&&Te.writer.destroy();k.clear()},Y=e?.raw,X=t?.raw,ie=()=>{te=!0,q(),j.destroyed||j.destroy()};Y&&typeof Y.once=="function"&&Y.once("aborted",ie),X&&typeof X.once=="function"&&X.once("close",ie);let ne=()=>{Y&&typeof Y.removeListener=="function"&&Y.removeListener("aborted",ie),X&&typeof X.removeListener=="function"&&X.removeListener("close",ie)},se=Te=>(0,fx.join)(LT,n,`${e.id}-${c}-${m}-${b}-${Te}.p`),J=Te=>(0,fx.join)(LT,n,`${e.id}-${Te}-${Date.now()}.dl`),ce=Te=>{if(M){let Ae=Te===0?g:g+U+(Te-1)*b,pe=Math.min(y,Ae+(Te===0?U:b)-1);return{downloadByteStart:Ae,downloadByteEnd:pe,readFileStart:0,readLength:pe-Ae+1}}let xe=Te*b,Fe=Math.min(m-1,(Te+1)*b-1),Ee=Math.max(g,xe),me=Math.min(y,Fe);return{downloadByteStart:xe,downloadByteEnd:Fe,readFileStart:Ee-xe,readLength:me-Ee+1}},ge=(Te,xe)=>{if(Q||te)return;let Fe=Number(xe?.response?.status||xe?.statusCode||xe?.status||0),Ee=(W[Te]||0)+1;if(W[Te]=Ee,!(!d&&(Fe===401||Fe===403||Fe===404)||Ee>=x))return;let Ae=Fe?` status=${Fe}`:"",pe=xe?.message?` ${xe.message}`:"";Q=new Error(`chunk ${Te} failed after ${Ee} attempts.${Ae}${pe}`.trim()),Fe&&(Q.statusCode=Fe),te=!0,j.destroy(Q)},be=Te=>{Q||te||(Q=Te instanceof Error?Te:new Error(String(Te||"chunk stream failed")),te=!0,j.destroy(Q))};for(let Te=0;Te{(async function Ee(me){if(te||Q||me===void 0&&$>=G){Fe();return}if(me===void 0&&!le&&xe>=oe){setTimeout(Ee,5);return}if(me===void 0&&($-K)*b>=v){setTimeout(Ee,5);return}let Ae=me??$++,pe=se(Ae),Se=ce(Ae),Ie=Se.downloadByteEnd-Se.downloadByteStart+1,Le=null,we=!1,He=async(Ge={})=>{we||(we=!0,typeof Le?.release=="function"&&await Le.release(Ge))};try{let Ge=await Y1e(pe);if(Ge=0&&await ui.default.promises.rm(pe).catch(()=>{});let ke=Se.downloadByteStart+c,Qe=Se.downloadByteEnd+c;Le=d?await d({chunkIndex:Ae,byteStart:ke,byteEnd:Qe,attempt:W[Ae]||0,previousStatus:P[Ae]||0,previousSource:H[Ae]||null}):{url:r,headers:s};let It=String(Le?.url||"").trim();if(!It)throw new Error(`chunk ${Ae} source url is empty`);H[Ae]={signatureKey:Le?.signatureKey||"",hostKey:Le?.hostKey||""};let ze=await Xe.get(It,{responseType:"stream",timeout:T,...d?{validateStatus:()=>!0}:{},maxContentLength:1/0,maxBodyLength:1/0,headers:Object.assign({Range:`bytes=${ke}-${Qe}`},s,Le?.headers||{})});if(d&&Number(ze.status)!==206){ze.data&&typeof ze.data.destroy=="function"&&ze.data.destroy();let yt=new Error(`chunk source returned HTTP ${ze.status}`);throw yt.statusCode=Number(ze.status)||502,yt}let ot=J(Ae);de.add(ot);let lt=ui.default.createWriteStream(ot),_t={source:ze.data,writer:lt};k.add(_t);let mr=setTimeout(()=>{lt.destroy(new Error(`${e.id}-${Ae} read timeout`))},T),Ht=new Promise(yt=>{let vs=!1,kn=async Ns=>{vs||(vs=!0,clearTimeout(mr),k.delete(_t),de.delete(ot),yt(Ns))};lt.on("finish",async()=>{if(te){await ui.default.promises.rm(ot).catch(()=>{}),await kn({ok:!1,error:Q});return}try{if(await ui.default.promises.rename(ot,pe),d&&await Y1e(pe)!==Ie){await ui.default.promises.rm(pe).catch(()=>{});let qs=new Error(`chunk ${Ae} length mismatch`);qs.statusCode=502,await kn({ok:!1,error:qs});return}await kn({ok:!0})}catch(Ns){let qs=await Y1e(pe);await ui.default.promises.rm(ot).catch(()=>{}),await kn({ok:qs>=Ie,error:Ns})}}),lt.on("error",async Ns=>{await kn({ok:!1,error:Ns}),await ui.default.promises.rm(ot).catch(()=>{})}),lt.on("close",async()=>{vs||(await ui.default.promises.rm(ot).catch(()=>{}),await kn({ok:!1,error:new Error(`chunk ${Ae} download canceled`)}))}),ze.data.on("error",Ns=>{lt.destroy(Ns)})});ze.data.pipe(lt);let it=await Ht;if(await He({status:Number(ze.status)||0,ok:it.ok}),!it.ok){if(ge(Ae,it.error),te||Q){Fe();return}setTimeout(()=>{Ee(Ae)},15);return}}B.add(pe),Z.add(Ae),Ae===ee&&(le=!0),setTimeout(Ee,5)}catch(Ge){let ke=Number(Ge?.response?.status||Ge?.statusCode||Ge?.status||0);if(P[Ae]=ke,Ge?.response?.data&&typeof Ge.response.data.destroy=="function"&&Ge.response.data.destroy(),await He({status:ke,ok:!1,error:Ge}).catch(()=>{}),ge(Ae,Ge),te||Q){Fe();return}let Qe=ke===503?Math.min(750,100*(W[Ae]||1)):15;setTimeout(()=>{Ee(Ae)},Qe)}})()})}return t.headers(A),new Promise(Te=>{let xe=!0;(async function Fe(){try{if(Q){Te();return}if(K>=G||te){j.end(),Te();return}if(!xe){setTimeout(Fe,5);return}if(!Z.has(K)){setTimeout(Fe,5);return}Z.delete(K);let Ee=ce(K),me=se(K),Ae=await ui.default.promises.open(me,"r"),pe=Ee.readLength;if(pe<=0){await Ae.close().catch(()=>{}),B.delete(me),await ui.default.promises.rm(me).catch(()=>{}),K++,setTimeout(Fe,5);return}let Se=Buffer.alloc(pe);await Ae.read(Se,0,pe,Ee.readFileStart),await Ae.close().catch(()=>{}),B.delete(me),await ui.default.promises.rm(me).catch(()=>{}),xe=j.write(Se),xe||j.once("drain",()=>{xe=!0}),K++,setTimeout(Fe,5)}catch(Ee){be(Ee),Te()}})()}),j.on("close",async()=>{te=!0,ne(),q();for(let Te of de)ui.default.rm(Te,{recursive:!0},()=>{});de.clear();for(let Te of B)ui.default.rm(Te,{recursive:!0},()=>{});B.clear(),await p().catch(()=>{}),u(),await OLt(n)}),j}catch(m){throw await p().catch(()=>{}),u(),m}}var Q1e,fx,ui,wLt,CLt,DE,E4,LT,xLt,lan,ac,PE=ae(()=>{Hr();Q1e=Ne(Gi(),1),fx=require("path"),ui=Ne(require("fs"),1),wLt=require("stream");g0();pj();Zu();CLt=es("chunk.urlHead",{maxSize:200,ttl:30*60*1e3}),DE=new Map,E4=new Map,LT=(process.env.NODE_PATH||".")+"/vod_cache",xLt=1024*1024*100;lan=NLt(LT).catch(()=>{});ac=pan});var W1e=S((uSs,DLt)=>{DLt.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var LE=S(MT=>{var X1e,man=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];MT.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};MT.getSymbolTotalCodewords=function(t){return man[t]};MT.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};MT.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');X1e=t};MT.isKanjiModeEnabled=function(){return typeof X1e<"u"};MT.toSJIS=function(t){return X1e(t)}});var gj=S(ef=>{ef.L={bit:1};ef.M={bit:0};ef.Q={bit:3};ef.H={bit:2};function gan(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"l":case"low":return ef.L;case"m":case"medium":return ef.M;case"q":case"quartile":return ef.Q;case"h":case"high":return ef.H;default:throw new Error("Unknown EC Level: "+e)}}ef.isValid=function(t){return t&&typeof t.bit<"u"&&t.bit>=0&&t.bit<4};ef.from=function(t,r){if(ef.isValid(t))return t;try{return gan(t)}catch{return r}}});var MLt=S((fSs,LLt)=>{function PLt(){this.buffer=[],this.length=0}PLt.prototype={get:function(e){let t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){let t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};LLt.exports=PLt});var BLt=S((hSs,kLt)=>{function y4(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}y4.prototype.set=function(e,t,r,n){let s=e*this.size+t;this.data[s]=r,n&&(this.reservedBit[s]=!0)};y4.prototype.get=function(e,t){return this.data[e*this.size+t]};y4.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};y4.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};kLt.exports=y4});var ULt=S(_j=>{var _an=LE().getSymbolSize;_j.getRowColCoords=function(t){if(t===1)return[];let r=Math.floor(t/7)+2,n=_an(t),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a{var Aan=LE().getSymbolSize,FLt=7;$Lt.getPositions=function(t){let r=Aan(t);return[[0,0],[r-FLt,0],[0,r-FLt]]}});var HLt=S(ks=>{ks.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var kT={N1:3,N2:3,N3:40,N4:10};ks.isValid=function(t){return t!=null&&t!==""&&!isNaN(t)&&t>=0&&t<=7};ks.from=function(t){return ks.isValid(t)?parseInt(t,10):void 0};ks.getPenaltyN1=function(t){let r=t.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c=5&&(n+=kT.N1+(s-5)),a=l,s=1),l=t.get(u,c),l===o?i++:(i>=5&&(n+=kT.N1+(i-5)),o=l,i=1)}s>=5&&(n+=kT.N1+(s-5)),i>=5&&(n+=kT.N1+(i-5))}return n};ks.getPenaltyN2=function(t){let r=t.size,n=0;for(let s=0;s=10&&(s===1488||s===93)&&n++,i=i<<1&2047|t.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*kT.N3};ks.getPenaltyN4=function(t){let r=0,n=t.data.length;for(let i=0;i{var ME=gj(),Aj=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],Ej=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];J1e.getBlocksCount=function(t,r){switch(r){case ME.L:return Aj[(t-1)*4+0];case ME.M:return Aj[(t-1)*4+1];case ME.Q:return Aj[(t-1)*4+2];case ME.H:return Aj[(t-1)*4+3];default:return}};J1e.getTotalCodewordsCount=function(t,r){switch(r){case ME.L:return Ej[(t-1)*4+0];case ME.M:return Ej[(t-1)*4+1];case ME.Q:return Ej[(t-1)*4+2];case ME.H:return Ej[(t-1)*4+3];default:return}}});var VLt=S(vj=>{var v4=new Uint8Array(512),yj=new Uint8Array(256);(function(){let t=1;for(let r=0;r<255;r++)v4[r]=t,yj[t]=r,t<<=1,t&256&&(t^=285);for(let r=255;r<512;r++)v4[r]=v4[r-255]})();vj.log=function(t){if(t<1)throw new Error("log("+t+")");return yj[t]};vj.exp=function(t){return v4[t]};vj.mul=function(t,r){return t===0||r===0?0:v4[yj[t]+yj[r]]}});var jLt=S(S4=>{var eIe=VLt();S4.mul=function(t,r){let n=new Uint8Array(t.length+r.length-1);for(let s=0;s=0;){let s=n[0];for(let a=0;a{var KLt=jLt();function tIe(e){this.genPoly=void 0,this.degree=e,this.degree&&this.initialize(this.degree)}tIe.prototype.initialize=function(t){this.degree=t,this.genPoly=KLt.generateECPolynomial(this.degree)};tIe.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(t.length+this.degree);r.set(t);let n=KLt.mod(r,this.genPoly),s=this.degree-n.length;if(s>0){let i=new Uint8Array(this.degree);return i.set(n,s),i}return n};GLt.exports=tIe});var rIe=S(YLt=>{YLt.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}});var nIe=S(Hg=>{var QLt="[0-9]+",yan="[A-Z $%*+\\-./:]+",T4="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";T4=T4.replace(/u/g,"\\u");var van="(?:(?![A-Z0-9 $%*+\\-./:]|"+T4+`)(?:.|[\r -]))+`;Hg.KANJI=new RegExp(T4,"g");Hg.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");Hg.BYTE=new RegExp(van,"g");Hg.NUMERIC=new RegExp(QLt,"g");Hg.ALPHANUMERIC=new RegExp(yan,"g");var San=new RegExp("^"+T4+"$"),Tan=new RegExp("^"+QLt+"$"),ban=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Hg.testKanji=function(t){return San.test(t)};Hg.testNumeric=function(t){return Tan.test(t)};Hg.testAlphanumeric=function(t){return ban.test(t)}});var kE=S(la=>{var Ian=rIe(),sIe=nIe();la.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};la.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};la.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};la.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};la.MIXED={bit:-1};la.getCharCountIndicator=function(t,r){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!Ian.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?t.ccBits[0]:r<27?t.ccBits[1]:t.ccBits[2]};la.getBestModeForData=function(t){return sIe.testNumeric(t)?la.NUMERIC:sIe.testAlphanumeric(t)?la.ALPHANUMERIC:sIe.testKanji(t)?la.KANJI:la.BYTE};la.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")};la.isValid=function(t){return t&&t.bit&&t.ccBits};function Ran(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return la.NUMERIC;case"alphanumeric":return la.ALPHANUMERIC;case"kanji":return la.KANJI;case"byte":return la.BYTE;default:throw new Error("Unknown mode: "+e)}}la.from=function(t,r){if(la.isValid(t))return t;try{return Ran(t)}catch{return r}}});var eMt=S(BT=>{var Sj=LE(),Can=Z1e(),WLt=gj(),BE=kE(),iIe=rIe(),JLt=7973,XLt=Sj.getBCHDigit(JLt);function xan(e,t,r){for(let n=1;n<=40;n++)if(t<=BT.getCapacity(n,r,e))return n}function ZLt(e,t){return BE.getCharCountIndicator(e,t)+4}function wan(e,t){let r=0;return e.forEach(function(n){let s=ZLt(n.mode,t);r+=s+n.getBitsLength()}),r}function Nan(e,t){for(let r=1;r<=40;r++)if(wan(e,r)<=BT.getCapacity(r,t,BE.MIXED))return r}BT.from=function(t,r){return iIe.isValid(t)?parseInt(t,10):r};BT.getCapacity=function(t,r,n){if(!iIe.isValid(t))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=BE.BYTE);let s=Sj.getSymbolTotalCodewords(t),i=Can.getTotalCodewordsCount(t,r),a=(s-i)*8;if(n===BE.MIXED)return a;let o=a-ZLt(n,t);switch(n){case BE.NUMERIC:return Math.floor(o/10*3);case BE.ALPHANUMERIC:return Math.floor(o/11*2);case BE.KANJI:return Math.floor(o/13);case BE.BYTE:default:return Math.floor(o/8)}};BT.getBestVersionForData=function(t,r){let n,s=WLt.from(r,WLt.M);if(Array.isArray(t)){if(t.length>1)return Nan(t,s);if(t.length===0)return 1;n=t[0]}else n=t;return xan(n.mode,n.getLength(),s)};BT.getEncodedBits=function(t){if(!iIe.isValid(t)||t<7)throw new Error("Invalid QR Code version");let r=t<<12;for(;Sj.getBCHDigit(r)-XLt>=0;)r^=JLt<{var aIe=LE(),rMt=1335,Oan=21522,tMt=aIe.getBCHDigit(rMt);nMt.getEncodedBits=function(t,r){let n=t.bit<<3|r,s=n<<10;for(;aIe.getBCHDigit(s)-tMt>=0;)s^=rMt<{var Dan=kE();function hx(e){this.mode=Dan.NUMERIC,this.data=e.toString()}hx.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)};hx.prototype.getLength=function(){return this.data.length};hx.prototype.getBitsLength=function(){return hx.getBitsLength(this.data.length)};hx.prototype.write=function(t){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),t.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),t.put(s,i*3+1))};iMt.exports=hx});var cMt=S((CSs,oMt)=>{var Pan=kE(),oIe=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function px(e){this.mode=Pan.ALPHANUMERIC,this.data=e}px.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};px.prototype.getLength=function(){return this.data.length};px.prototype.getBitsLength=function(){return px.getBitsLength(this.data.length)};px.prototype.write=function(t){let r;for(r=0;r+2<=this.data.length;r+=2){let n=oIe.indexOf(this.data[r])*45;n+=oIe.indexOf(this.data[r+1]),t.put(n,11)}this.data.length%2&&t.put(oIe.indexOf(this.data[r]),6)};oMt.exports=px});var lMt=S((xSs,uMt)=>{var Lan=kE();function mx(e){this.mode=Lan.BYTE,typeof e=="string"?this.data=new TextEncoder().encode(e):this.data=new Uint8Array(e)}mx.getBitsLength=function(t){return t*8};mx.prototype.getLength=function(){return this.data.length};mx.prototype.getBitsLength=function(){return mx.getBitsLength(this.data.length)};mx.prototype.write=function(e){for(let t=0,r=this.data.length;t{var Man=kE(),kan=LE();function gx(e){this.mode=Man.KANJI,this.data=e}gx.getBitsLength=function(t){return t*13};gx.prototype.getLength=function(){return this.data.length};gx.prototype.getBitsLength=function(){return gx.getBitsLength(this.data.length)};gx.prototype.write=function(e){let t;for(t=0;t=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` -Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),e.put(r,13)}};dMt.exports=gx});var hMt=S((NSs,cIe)=>{"use strict";var b4={single_source_shortest_paths:function(e,t,r){var n={},s={};s[t]=0;var i=b4.PriorityQueue.make();i.push(t,0);for(var a,o,c,u,l,d,f,h,p;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=e[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,h=s[c],p=typeof s[c]>"u",(p||h>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var m=["Could not find a path from ",t," to ",r,"."].join("");throw new Error(m)}return n},extract_shortest_path_from_predecessor_list:function(e,t){for(var r=[],n=t,s;n;)r.push(n),s=e[n],n=e[n];return r.reverse(),r},find_path:function(e,t,r){var n=b4.single_source_shortest_paths(e,t,r);return b4.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(e){var t=b4.PriorityQueue,r={},n;e=e||{};for(n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);return r.queue=[],r.sorter=e.sorter||t.default_sorter,r},default_sorter:function(e,t){return e.cost-t.cost},push:function(e,t){var r={value:e,cost:t};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof cIe<"u"&&(cIe.exports=b4)});var vMt=S(_x=>{var Qn=kE(),gMt=aMt(),_Mt=cMt(),AMt=lMt(),EMt=fMt(),I4=nIe(),Tj=LE(),Ban=hMt();function pMt(e){return unescape(encodeURIComponent(e)).length}function R4(e,t,r){let n=[],s;for(;(s=e.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:t,length:s[0].length});return n}function yMt(e){let t=R4(I4.NUMERIC,Qn.NUMERIC,e),r=R4(I4.ALPHANUMERIC,Qn.ALPHANUMERIC,e),n,s;return Tj.isKanjiModeEnabled()?(n=R4(I4.BYTE,Qn.BYTE,e),s=R4(I4.KANJI,Qn.KANJI,e)):(n=R4(I4.BYTE_KANJI,Qn.BYTE,e),s=[]),t.concat(r,n,s).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function uIe(e,t){switch(t){case Qn.NUMERIC:return gMt.getBitsLength(e);case Qn.ALPHANUMERIC:return _Mt.getBitsLength(e);case Qn.KANJI:return EMt.getBitsLength(e);case Qn.BYTE:return AMt.getBitsLength(e)}}function Uan(e){return e.reduce(function(t,r){let n=t.length-1>=0?t[t.length-1]:null;return n&&n.mode===r.mode?(t[t.length-1].data+=r.data,t):(t.push(r),t)},[])}function Fan(e){let t=[];for(let r=0;r{var Ij=LE(),lIe=gj(),qan=MLt(),Han=BLt(),Van=ULt(),jan=qLt(),hIe=HLt(),pIe=Z1e(),Kan=zLt(),bj=eMt(),Gan=sMt(),zan=kE(),dIe=vMt();function Yan(e,t){let r=e.size,n=jan.getPositions(t);for(let s=0;s=0&&o<=6&&(c===0||c===6)||c>=0&&c<=6&&(o===0||o===6)||o>=2&&o<=4&&c>=2&&c<=4?e.set(i+o,a+c,!0,!0):e.set(i+o,a+c,!1,!0))}}function Qan(e){let t=e.size;for(let r=8;r>o&1)===1,e.set(s,i,a,!0),e.set(i,s,a,!0)}function fIe(e,t,r){let n=e.size,s=Gan.getEncodedBits(t,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?e.set(i,8,a,!0):i<8?e.set(i+1,8,a,!0):e.set(n-15+i,8,a,!0),i<8?e.set(8,n-i-1,a,!0):i<9?e.set(8,15-i-1+1,a,!0):e.set(8,15-i-1,a,!0);e.set(n-8,8,1,!0)}function Jan(e,t){let r=e.size,n=-1,s=r-1,i=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let c=0;c<2;c++)if(!e.isReserved(s,o-c)){let u=!1;a>>i&1)===1),e.set(s,o-c,u),i--,i===-1&&(a++,i=7)}if(s+=n,s<0||r<=s){s-=n,n=-n;break}}}function Zan(e,t,r){let n=new qan;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),zan.getCharCountIndicator(c.mode,e)),c.write(n)});let s=Ij.getSymbolTotalCodewords(e),i=pIe.getTotalCodewordsCount(e,t),a=(s-i)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let c=0;c=7&&Xan(c,t),Jan(c,a),isNaN(n)&&(n=hIe.getBestMask(c,fIe.bind(null,c,r))),hIe.applyMask(n,c),fIe(c,r,n),{modules:c,version:t,errorCorrectionLevel:r,maskPattern:n,segments:s}}SMt.create=function(t,r){if(typeof t>"u"||t==="")throw new Error("No input text");let n=lIe.M,s,i;return typeof r<"u"&&(n=lIe.from(r.errorCorrectionLevel,lIe.M),s=bj.from(r.version),i=hIe.from(r.maskPattern),r.toSJISFunc&&Ij.setToSJISFunction(r.toSJISFunc)),ton(t,s,n,i)}});var gIe=S((PSs,bMt)=>{"use strict";var ron=require("util"),TMt=require("stream"),v0=bMt.exports=function(){TMt.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};ron.inherits(v0,TMt);v0.prototype.read=function(e,t){this._reads.push({length:Math.abs(e),allowLess:e<0,func:t}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};v0.prototype.write=function(e,t){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(e)?r=e:r=Buffer.from(e,t||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};v0.prototype.end=function(e,t){e&&this.write(e,t),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};v0.prototype.destroySoon=v0.prototype.end;v0.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};v0.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};v0.prototype._processReadAllowingLess=function(e){this._reads.shift();let t=this._buffers[0];t.length>e.length?(this._buffered-=e.length,this._buffers[0]=t.slice(e.length),e.func.call(this,t.slice(0,e.length))):(this._buffered-=t.length,this._buffers.shift(),e.func.call(this,t))};v0.prototype._processRead=function(e){this._reads.shift();let t=0,r=0,n=Buffer.alloc(e.length);for(;t0&&this._buffers.splice(0,r),this._buffered-=e.length,e.func.call(this,n)};v0.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let e=this._reads[0];if(e.allowLess)this._processReadAllowingLess(e);else if(this._buffered>=e.length)this._processRead(e);else break}this._buffers&&!this.writable&&this._end()}catch(e){this.emit("error",e)}}});var AIe=S(_Ie=>{"use strict";var UE=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];_Ie.getImagePasses=function(e,t){let r=[],n=e%8,s=t%8,i=(e-n)/8,a=(t-s)/8;for(let o=0;o0&&l>0&&r.push({width:u,height:l,index:o})}return r};_Ie.getInterlaceIterator=function(e){return function(t,r,n){let s=t%UE[n].x.length,i=(t-s)/UE[n].x.length*8+UE[n].x[s],a=r%UE[n].y.length,o=(r-a)/UE[n].y.length*8+UE[n].y[a];return i*4+o*e*4}}});var EIe=S((MSs,IMt)=>{"use strict";IMt.exports=function(t,r,n){let s=t+r-n,i=Math.abs(s-t),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?t:a<=o?r:n}});var yIe=S((kSs,CMt)=>{"use strict";var non=AIe(),son=EIe();function RMt(e,t,r){let n=e*t;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Ax=CMt.exports=function(e,t){let r=e.width,n=e.height,s=e.interlace,i=e.bpp,a=e.depth;if(this.read=t.read,this.write=t.write,this.complete=t.complete,this._imageIndex=0,this._images=[],s){let o=non.getImagePasses(r,n);for(let c=0;cs?t[i-n]:0;t[i]=a+o}};Ax.prototype._unFilterType2=function(e,t,r){let n=this._lastLine;for(let s=0;ss?t[a-n]:0,l=Math.floor((u+c)/2);t[a]=o+l}};Ax.prototype._unFilterType4=function(e,t,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;as?t[a-n]:0,l=a>s&&i?i[a-n]:0,d=son(u,c,l);t[a]=o+d}};Ax.prototype._reverseFilterLine=function(e){let t=e[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(t===0)r=e.slice(1,s+1);else switch(r=Buffer.alloc(s),t){case 1:this._unFilterType1(e,r,s);break;case 2:this._unFilterType2(e,r,s);break;case 3:this._unFilterType3(e,r,s);break;case 4:this._unFilterType4(e,r,s);break;default:throw new Error("Unrecognised filter type - "+t)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var NMt=S((BSs,wMt)=>{"use strict";var ion=require("util"),xMt=gIe(),aon=yIe(),oon=wMt.exports=function(e){xMt.call(this);let t=[],r=this;this._filter=new aon(e,{read:this.read.bind(this),write:function(n){t.push(n)},complete:function(){r.emit("complete",Buffer.concat(t))}}),this._filter.start()};ion.inherits(oon,xMt)});var Ex=S((USs,OMt)=>{"use strict";OMt.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var TIe=S((FSs,DMt)=>{"use strict";var vIe=[];(function(){for(let e=0;e<256;e++){let t=e;for(let r=0;r<8;r++)t&1?t=3988292384^t>>>1:t=t>>>1;vIe[e]=t}})();var SIe=DMt.exports=function(){this._crc=-1};SIe.prototype.write=function(e){for(let t=0;t>>8;return!0};SIe.prototype.crc32=function(){return this._crc^-1};SIe.crc32=function(e){let t=-1;for(let r=0;r>>8;return t^-1}});var bIe=S(($Ss,PMt)=>{"use strict";var Ia=Ex(),con=TIe(),Wa=PMt.exports=function(e,t){this._options=e,e.checkCRC=e.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ia.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ia.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ia.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ia.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ia.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ia.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=t.read,this.error=t.error,this.metadata=t.metadata,this.gamma=t.gamma,this.transColor=t.transColor,this.palette=t.palette,this.parsed=t.parsed,this.inflateData=t.inflateData,this.finished=t.finished,this.simpleTransparency=t.simpleTransparency,this.headersFinished=t.headersFinished||function(){}};Wa.prototype.start=function(){this.read(Ia.PNG_SIGNATURE.length,this._parseSignature.bind(this))};Wa.prototype._parseSignature=function(e){let t=Ia.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let t=0;t0?this._handleIDAT(r):this._handleChunkEnd()};Wa.prototype._handleIEND=function(e){this.read(e,this._parseIEND.bind(this))};Wa.prototype._parseIEND=function(e){this._crc.write(e),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var IIe=S(MMt=>{"use strict";var LMt=AIe(),uon=[function(){},function(e,t,r,n){if(n===t.length)throw new Error("Ran out of data");let s=t[n];e[r]=s,e[r+1]=s,e[r+2]=s,e[r+3]=255},function(e,t,r,n){if(n+1>=t.length)throw new Error("Ran out of data");let s=t[n];e[r]=s,e[r+1]=s,e[r+2]=s,e[r+3]=t[n+1]},function(e,t,r,n){if(n+2>=t.length)throw new Error("Ran out of data");e[r]=t[n],e[r+1]=t[n+1],e[r+2]=t[n+2],e[r+3]=255},function(e,t,r,n){if(n+3>=t.length)throw new Error("Ran out of data");e[r]=t[n],e[r+1]=t[n+1],e[r+2]=t[n+2],e[r+3]=t[n+3]}],lon=[function(){},function(e,t,r,n){let s=t[0];e[r]=s,e[r+1]=s,e[r+2]=s,e[r+3]=n},function(e,t,r){let n=t[0];e[r]=n,e[r+1]=n,e[r+2]=n,e[r+3]=t[1]},function(e,t,r,n){e[r]=t[0],e[r+1]=t[1],e[r+2]=t[2],e[r+3]=n},function(e,t,r){e[r]=t[0],e[r+1]=t[1],e[r+2]=t[2],e[r+3]=t[3]}];function don(e,t){let r=[],n=0;function s(){if(n===e.length)throw new Error("Ran out of data");let i=e[n];n++;let a,o,c,u,l,d,f,h;switch(t){default:throw new Error("unrecognised depth");case 16:f=e[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,h=i>>4,r.push(h,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,h=i>>6&3,r.push(h,f,d,l);break;case 1:a=i&1,o=i>>1&1,c=i>>2&1,u=i>>3&1,l=i>>4&1,d=i>>5&1,f=i>>6&1,h=i>>7&1,r.push(h,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length{"use strict";function pon(e,t,r,n,s){let i=0;for(let a=0;a{"use strict";var _on=require("util"),CIe=require("zlib"),BMt=gIe(),Aon=NMt(),Eon=bIe(),yon=IIe(),von=RIe(),ap=UMt.exports=function(e){BMt.call(this),this._parser=new Eon(e,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=e,this.writable=!0,this._parser.start()};_on.inherits(ap,BMt);ap.prototype._handleError=function(e){this.emit("error",e),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};ap.prototype._inflateData=function(e){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=CIe.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,CIe.Z_MIN_CHUNK);this._inflate=CIe.createInflate({chunkSize:n});let s=r,i=this.emit.bind(this,"error");this._inflate.on("error",function(o){s&&i(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){s&&(o.length>s&&(o=o.slice(0,s)),s-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(e)};ap.prototype._handleMetaData=function(e){this._metaData=e,this._bitmapInfo=Object.create(e),this._filter=new Aon(this._bitmapInfo)};ap.prototype._handleTransColor=function(e){this._bitmapInfo.transColor=e};ap.prototype._handlePalette=function(e){this._bitmapInfo.palette=e};ap.prototype._simpleTransparency=function(){this._metaData.alpha=!0};ap.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};ap.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};ap.prototype._complete=function(e){if(this.errord)return;let t;try{let r=yon.dataToBitMap(e,this._bitmapInfo);t=von(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",t)}});var qMt=S((jSs,$Mt)=>{"use strict";var tf=Ex();$Mt.exports=function(e,t,r,n){let s=[tf.COLORTYPE_COLOR_ALPHA,tf.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let p=function(){let m=new ArrayBuffer(2);return new DataView(m).setInt16(0,256,!0),new Int16Array(m)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&p)return e}let i=n.bitDepth!==16?e:new Uint16Array(e.buffer),a=255,o=tf.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=tf.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(t*r*c),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function h(){let p,m,_,g=a;switch(n.inputColorType){case tf.COLORTYPE_COLOR_ALPHA:g=i[l+3],p=i[l],m=i[l+1],_=i[l+2];break;case tf.COLORTYPE_COLOR:p=i[l],m=i[l+1],_=i[l+2];break;case tf.COLORTYPE_ALPHA:g=i[l+1],p=i[l],m=p,_=p;break;case tf.COLORTYPE_GRAYSCALE:p=i[l],m=p,_=p;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,p=Math.min(Math.max(Math.round((1-g)*f.red+g*p),0),a),m=Math.min(Math.max(Math.round((1-g)*f.green+g*m),0),a),_=Math.min(Math.max(Math.round((1-g)*f.blue+g*_),0),a))),{red:p,green:m,blue:_,alpha:g}}for(let p=0;p{"use strict";var HMt=EIe();function Son(e,t,r,n,s){for(let i=0;i=i?e[t+a-i]:0,c=e[t+a]-o;n[s+a]=c}}function Ion(e,t,r,n){let s=0;for(let i=0;i=n?e[t+i-n]:0,o=e[t+i]-a;s+=Math.abs(o)}return s}function Ron(e,t,r,n,s){for(let i=0;i0?e[t+i-r]:0,o=e[t+i]-a;n[s+i]=o}}function Con(e,t,r){let n=0,s=t+r;for(let i=t;i0?e[i-r]:0,o=e[i]-a;n+=Math.abs(o)}return n}function xon(e,t,r,n,s,i){for(let a=0;a=i?e[t+a-i]:0,c=t>0?e[t+a-r]:0,u=e[t+a]-(o+c>>1);n[s+a]=u}}function won(e,t,r,n){let s=0;for(let i=0;i=n?e[t+i-n]:0,o=t>0?e[t+i-r]:0,c=e[t+i]-(a+o>>1);s+=Math.abs(c)}return s}function Non(e,t,r,n,s,i){for(let a=0;a=i?e[t+a-i]:0,c=t>0?e[t+a-r]:0,u=t>0&&a>=i?e[t+a-(r+i)]:0,l=e[t+a]-HMt(o,c,u);n[s+a]=l}}function Oon(e,t,r,n){let s=0;for(let i=0;i=n?e[t+i-n]:0,o=t>0?e[t+i-r]:0,c=t>0&&i>=n?e[t+i-(r+n)]:0,u=e[t+i]-HMt(a,o,c);s+=Math.abs(u)}return s}var Don={0:Son,1:bon,2:Ron,3:xon,4:Non},Pon={0:Ton,1:Ion,2:Con,3:won,4:Oon};VMt.exports=function(e,t,r,n,s){let i;if(!("filterType"in n)||n.filterType===-1)i=[0,1,2,3,4];else if(typeof n.filterType=="number")i=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(s*=2);let a=t*s,o=0,c=0,u=Buffer.alloc((a+1)*r),l=i[0];for(let d=0;d1){let f=1/0;for(let h=0;h{"use strict";var oc=Ex(),Lon=TIe(),Mon=qMt(),kon=jMt(),Bon=require("zlib"),FE=KMt.exports=function(e){if(this._options=e,e.deflateChunkSize=e.deflateChunkSize||32*1024,e.deflateLevel=e.deflateLevel!=null?e.deflateLevel:9,e.deflateStrategy=e.deflateStrategy!=null?e.deflateStrategy:3,e.inputHasAlpha=e.inputHasAlpha!=null?e.inputHasAlpha:!0,e.deflateFactory=e.deflateFactory||Bon.createDeflate,e.bitDepth=e.bitDepth||8,e.colorType=typeof e.colorType=="number"?e.colorType:oc.COLORTYPE_COLOR_ALPHA,e.inputColorType=typeof e.inputColorType=="number"?e.inputColorType:oc.COLORTYPE_COLOR_ALPHA,[oc.COLORTYPE_GRAYSCALE,oc.COLORTYPE_COLOR,oc.COLORTYPE_COLOR_ALPHA,oc.COLORTYPE_ALPHA].indexOf(e.colorType)===-1)throw new Error("option color type:"+e.colorType+" is not supported at present");if([oc.COLORTYPE_GRAYSCALE,oc.COLORTYPE_COLOR,oc.COLORTYPE_COLOR_ALPHA,oc.COLORTYPE_ALPHA].indexOf(e.inputColorType)===-1)throw new Error("option input color type:"+e.inputColorType+" is not supported at present");if(e.bitDepth!==8&&e.bitDepth!==16)throw new Error("option bit depth:"+e.bitDepth+" is not supported at present")};FE.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};FE.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};FE.prototype.filterData=function(e,t,r){let n=Mon(e,t,r,this._options),s=oc.COLORTYPE_TO_BPP_MAP[this._options.colorType];return kon(n,t,r,this._options,s)};FE.prototype._packChunk=function(e,t){let r=t?t.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(e,4),t&&t.copy(n,8),n.writeInt32BE(Lon.crc32(n.slice(4,n.length-4)),n.length-4),n};FE.prototype.packGAMA=function(e){let t=Buffer.alloc(4);return t.writeUInt32BE(Math.floor(e*oc.GAMMA_DIVISION),0),this._packChunk(oc.TYPE_gAMA,t)};FE.prototype.packIHDR=function(e,t){let r=Buffer.alloc(13);return r.writeUInt32BE(e,0),r.writeUInt32BE(t,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(oc.TYPE_IHDR,r)};FE.prototype.packIDAT=function(e){return this._packChunk(oc.TYPE_IDAT,e)};FE.prototype.packIEND=function(){return this._packChunk(oc.TYPE_IEND,null)}});var QMt=S((zSs,YMt)=>{"use strict";var Uon=require("util"),GMt=require("stream"),Fon=Ex(),$on=xIe(),zMt=YMt.exports=function(e){GMt.call(this);let t=e||{};this._packer=new $on(t),this._deflate=this._packer.createDeflate(),this.readable=!0};Uon.inherits(zMt,GMt);zMt.prototype.pack=function(e,t,r,n){this.emit("data",Buffer.from(Fon.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(t,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(e,t,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(i){this.emit("data",this._packer.packIDAT(i))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(s)}});var tkt=S((C4,ekt)=>{"use strict";var WMt=require("assert").ok,yx=require("zlib"),qon=require("util"),XMt=require("buffer").kMaxLength;function UT(e){if(!(this instanceof UT))return new UT(e);e&&e.chunkSize=0,"have should not go down"),_>0){let g=n._buffer.slice(n._offset,n._offset+_);if(n._offset+=_,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(m===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),m===0?(o+=s-p,s=p,!0):!1}WMt(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(t,e,o,s,this._buffer,this._offset,i),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(u>=XMt)throw JMt(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+XMt.toString(16)+" bytes");let h=Buffer.concat(c,u);return JMt(this),h};qon.inherits(UT,yx.Inflate);function Von(e,t){if(typeof t=="string"&&(t=Buffer.from(t)),!(t instanceof Buffer))throw new TypeError("Not a string or buffer");let r=e._finishFlushFlag;return r==null&&(r=yx.Z_FINISH),e._processChunk(t,r)}function ZMt(e,t){return Von(new UT(t),e)}ekt.exports=C4=ZMt;C4.Inflate=UT;C4.createInflate=Hon;C4.inflateSync=ZMt});var wIe=S((YSs,nkt)=>{"use strict";var rkt=nkt.exports=function(e){this._buffer=e,this._reads=[]};rkt.prototype.read=function(e,t){this._reads.push({length:Math.abs(e),allowLess:e<0,func:t})};rkt.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let e=this._reads[0];if(this._buffer.length&&(this._buffer.length>=e.length||e.allowLess)){this._reads.shift();let t=this._buffer;this._buffer=t.slice(e.length),e.func.call(this,t.slice(0,e.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var ikt=S(skt=>{"use strict";var jon=wIe(),Kon=yIe();skt.process=function(e,t){let r=[],n=new jon(e);return new Kon(t,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var ukt=S((WSs,ckt)=>{"use strict";var akt=!0,okt=require("zlib"),Gon=tkt();okt.deflateSync||(akt=!1);var zon=wIe(),Yon=ikt(),Qon=bIe(),Won=IIe(),Xon=RIe();ckt.exports=function(e,t){if(!akt)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(E){r=E}let s;function i(E){s=E}function a(E){s.transColor=E}function o(E){s.palette=E}function c(){s.alpha=!0}let u;function l(E){u=E}let d=[];function f(E){d.push(E)}let h=new zon(e);if(new Qon(t,{read:h.read.bind(h),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),h.process(),r)throw r;let m=Buffer.concat(d);d.length=0;let _;if(s.interlace)_=okt.inflateSync(m);else{let v=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;_=Gon(m,{chunkSize:v,maxLength:v})}if(m=null,!_||!_.length)throw new Error("bad png - invalid inflate data response");let g=Yon.process(_,s);m=null;let y=Won.dataToBitMap(g,s);g=null;let A=Xon(y,s);return s.data=A,s.gamma=u||0,s}});var hkt=S((XSs,fkt)=>{"use strict";var lkt=!0,dkt=require("zlib");dkt.deflateSync||(lkt=!1);var Jon=Ex(),Zon=xIe();fkt.exports=function(e,t){if(!lkt)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=t||{},n=new Zon(r),s=[];s.push(Buffer.from(Jon.PNG_SIGNATURE)),s.push(n.packIHDR(e.width,e.height)),e.gamma&&s.push(n.packGAMA(e.gamma));let i=n.filterData(e.data,e.width,e.height),a=dkt.deflateSync(i,n.getDeflateOptions());if(i=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return s.push(n.packIDAT(a)),s.push(n.packIEND()),Buffer.concat(s)}});var pkt=S(NIe=>{"use strict";var ecn=ukt(),tcn=hkt();NIe.read=function(e,t){return ecn(e,t||{})};NIe.write=function(e,t){return tcn(e,t)}});var OIe=S(gkt=>{"use strict";var rcn=require("util"),mkt=require("stream"),ncn=FMt(),scn=QMt(),icn=pkt(),Jc=gkt.PNG=function(e){mkt.call(this),e=e||{},this.width=e.width|0,this.height=e.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,e.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new ncn(e),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new scn(e),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};rcn.inherits(Jc,mkt);Jc.sync=icn;Jc.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};Jc.prototype.parse=function(e,t){if(t){let r,n;r=function(s){this.removeListener("error",n),this.data=s,t(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),t(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(e),this};Jc.prototype.write=function(e){return this._parser.write(e),!0};Jc.prototype.end=function(e){this._parser.end(e)};Jc.prototype._metadata=function(e){this.width=e.width,this.height=e.height,this.emit("metadata",e)};Jc.prototype._gamma=function(e){this.gamma=e};Jc.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};Jc.bitblt=function(e,t,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>e.width||n>e.height||r+s>e.width||n+i>e.height)throw new Error("bitblt reading outside image");if(a>t.width||o>t.height||a+s>t.width||o+i>t.height)throw new Error("bitblt writing outside image");for(let c=0;c{function _kt(e){if(typeof e=="number"&&(e=e.toString()),typeof e!="string")throw new Error("Color should be defined as hex string");let t=e.slice().replace("#","").split("");if(t.length<3||t.length===5||t.length>8)throw new Error("Invalid hex color: "+e);(t.length===3||t.length===4)&&(t=Array.prototype.concat.apply([],t.map(function(n){return[n,n]}))),t.length===6&&t.push("F","F");let r=parseInt(t.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+t.slice(0,6).join("")}}FT.getOptions=function(t){t||(t={}),t.color||(t.color={});let r=typeof t.margin>"u"||t.margin===null||t.margin<0?4:t.margin,n=t.width&&t.width>=21?t.width:void 0,s=t.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:_kt(t.color.dark||"#000000ff"),light:_kt(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}};FT.getScale=function(t,r){return r.width&&r.width>=t+r.margin*2?r.width/(t+r.margin*2):r.scale};FT.getImageWidth=function(t,r){let n=FT.getScale(t,r);return Math.floor((t+r.margin*2)*n)};FT.qrToImageData=function(t,r,n){let s=r.modules.size,i=r.modules.data,a=FT.getScale(s,n),o=Math.floor((s+n.margin*2)*a),c=n.margin*a,u=[n.color.light,n.color.dark];for(let l=0;l=c&&d>=c&&l{var acn=require("fs"),ocn=OIe().PNG,DIe=x4();op.render=function(t,r){let n=DIe.getOptions(r),s=n.rendererOpts,i=DIe.getImageWidth(t.modules.size,n);s.width=i,s.height=i;let a=new ocn(s);return DIe.qrToImageData(a.data,t,n),a};op.renderToDataURL=function(t,r,n){typeof n>"u"&&(n=r,r=void 0),op.renderToBuffer(t,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};op.renderToBuffer=function(t,r,n){typeof n>"u"&&(n=r,r=void 0);let s=op.render(t,r),i=[];s.on("error",n),s.on("data",function(a){i.push(a)}),s.on("end",function(){n(null,Buffer.concat(i))}),s.pack()};op.renderToFile=function(t,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=acn.createWriteStream(t);o.on("error",a),o.on("close",a),op.renderToFileStream(o,r,n)};op.renderToFileStream=function(t,r,n){op.render(r,n).pack().pipe(t)}});var Ekt=S(Rj=>{var ccn=x4(),ucn={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},lcn={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function dcn(e,t,r){return e&&t?r.BB:e&&!t?r.BW:!e&&t?r.WB:r.WW}Rj.render=function(e,t,r){let n=ccn.getOptions(t),s=ucn;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=lcn);let i=e.modules.size,a=e.modules.data,o="",c=Array(i+n.margin*2+1).join(s.WW);c=Array(n.margin/2+1).join(c+` -`);let u=Array(n.margin+1).join(s.WW);o+=c;for(let l=0;l"u"&&(s=n,n=void 0);let i=require("fs"),a=Rj.render(r,n);i.writeFile(t,a,s)}});var vkt=S(ykt=>{ykt.render=function(e,t,r){let n=e.modules.size,s=e.modules.data,i="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",c=Array(n+3).join(a),u=Array(2).join(a);o+=c+` -`;for(let l=0;l{var fcn="\x1B[47m",hcn="\x1B[40m",PIe="\x1B[37m",LIe="\x1B[30m",$T="\x1B[0m",pcn=fcn+LIe,mcn=hcn+PIe,gcn=function(e,t,r){return{"00":$T+" "+e,"01":$T+t+"\u2584"+e,"02":$T+r+"\u2584"+e,10:$T+t+"\u2580"+e,11:" ",12:"\u2584",20:$T+r+"\u2580"+e,21:"\u2580",22:"\u2588"}},Skt=function(e,t,r,n){let s=t+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=t||n>=t||n<0||r<0)return"1";let i=n*t+r;return e[i]?"2":"1"},Tkt=function(e,t,r,n){return Skt(e,t,r,n)+Skt(e,t,r,n+1)};bkt.render=function(e,t,r){let n=e.modules.size,s=e.modules.data,i=!!(t&&t.inverse),a=t&&t.inverse?mcn:pcn,u=gcn(a,i?LIe:PIe,i?PIe:LIe),l=$T+` -`+a,d=a;for(let f=-1;f{var _cn=vkt(),Acn=Ikt();Rkt.render=function(e,t,r){return t&&t.small?Acn.render(e,t,r):_cn.render(e,t,r)}});var kIe=S(wkt=>{var Ecn=x4();function xkt(e,t){let r=e.a/255,n=t+'="'+e.hex+'"';return r<1?n+" "+t+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function MIe(e,t,r){let n=e+t;return typeof r<"u"&&(n+=" "+r),n}function ycn(e,t,r){let n="",s=0,i=!1,a=0;for(let o=0;o0&&c>0&&e[o-1]||(n+=i?MIe("M",c+r,.5+u+r):MIe("m",s,0),s=0,i=!1),c+1':"",u="',l='viewBox="0 0 '+o+" "+o+'"',f=''+c+u+` -`;return typeof n=="function"&&n(null,f),f}});var Nkt=S(Cj=>{var vcn=kIe();Cj.render=vcn.render;Cj.renderToFile=function(t,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o=''+Cj.render(r,n);i.writeFile(t,o,s)}});var Okt=S(xj=>{var BIe=x4();function Scn(e,t,r){e.clearRect(0,0,t.width,t.height),t.style||(t.style={}),t.height=r,t.width=r,t.style.height=r+"px",t.style.width=r+"px"}function Tcn(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}xj.render=function(t,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=Tcn()),s=BIe.getOptions(s);let a=BIe.getImageWidth(t.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return BIe.qrToImageData(c.data,t,s),Scn(o,i,a),o.putImageData(c,0,0),i};xj.renderToDataURL=function(t,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=xj.render(t,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var Pkt=S(w4=>{var bcn=W1e(),UIe=mIe(),Dkt=Okt(),Icn=kIe();function FIe(e,t,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!bcn())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(s=r,r=t,t=n=void 0):a===3&&(t.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=t,t=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=t,t=n=void 0):a===2&&!t.getContext&&(n=r,r=t,t=void 0),new Promise(function(c,u){try{let l=UIe.create(r,n);c(e(l,t,n))}catch(l){u(l)}})}try{let c=UIe.create(r,n);s(null,e(c,t,n))}catch(c){s(c)}}w4.create=UIe.create;w4.toCanvas=FIe.bind(null,Dkt.render);w4.toDataURL=FIe.bind(null,Dkt.renderToDataURL);w4.toString=FIe.bind(null,function(e,t,r){return Icn.render(e,r)})});var Bkt=S($E=>{var Lkt=W1e(),$Ie=mIe(),Rcn=Akt(),Mkt=Ekt(),Ccn=Ckt(),kkt=Nkt();function N4(e,t,r){if(typeof e>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=t,t={}),typeof r!="function")if(Lkt())t=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:t,cb:r}}function xcn(e){return e.slice((e.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function wj(e){switch(e){case"svg":return kkt;case"txt":case"utf8":return Mkt;case"png":case"image/png":default:return Rcn}}function wcn(e){switch(e){case"svg":return kkt;case"terminal":return Ccn;case"utf8":default:return Mkt}}function O4(e,t,r){if(!r.cb)return new Promise(function(n,s){try{let i=$Ie.create(t,r.opts);return e(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=$Ie.create(t,r.opts);return e(n,r.opts,r.cb)}catch(n){r.cb(n)}}$E.create=$Ie.create;$E.toCanvas=Pkt().toCanvas;$E.toString=function(t,r,n){let s=N4(t,r,n),i=s.opts?s.opts.type:void 0,a=wcn(i);return O4(a.render,t,s)};$E.toDataURL=function(t,r,n){let s=N4(t,r,n),i=wj(s.opts.type);return O4(i.renderToDataURL,t,s)};$E.toBuffer=function(t,r,n){let s=N4(t,r,n),i=wj(s.opts.type);return O4(i.renderToBuffer,t,s)};$E.toFile=function(t,r,n,s){if(typeof t!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!Lkt())throw new Error("Too few arguments provided");let i=N4(r,n,s),a=i.opts.type||xcn(t),c=wj(a).renderToFile.bind(null,t);return O4(c,r,i)};$E.toFileStream=function(t,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=N4(r,n,t.emit.bind(t,"error")),a=wj("png").renderToFileStream.bind(null,t);O4(a,r,s)}});var qE=S((dTs,Ukt)=>{Ukt.exports=Bkt()});function St(e){return String(e??"").trim()}function Lcn(e=""){let t=St(e);return t?t.length<=12?`${t.slice(0,3)}***`:`${t.slice(0,6)}...${t.slice(-4)}`:""}function qkt(e=""){let t=St(e);return t?HIe.default.createHash("sha256").update(t).digest("hex").slice(0,16):""}function HE(){return St(process.env.PAN123_OPEN_OAUTH_SERVER||process.env.LITEPAN_OAUTH_SERVER)||Dcn}function M4(e={}){let t=[e,e?.data,e?.data?.token_data,e?.token_data,e?.result,e?.data?.result].filter(r=>r&&typeof r=="object");for(let r of t){let n=St(r.access_token||r.accessToken||r.token);if(n)return{access_token:n,refresh_token:St(r.refresh_token||r.refreshToken),expires_in:Number(r.expires_in||r.expiresIn||0),token_type:St(r.token_type||r.tokenType||"Bearer")||"Bearer"}}return null}async function GIe(e){try{let t=await e?.db?.getObjectDefault?.(jIe,{});return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return{}}}async function el(e){let t=await GIe(e);return{...t,enabled:t.enabled===!0||String(process.env.PAN123_OPEN_TRANSFER_ENABLED||"").toLowerCase()==="true",access_token:St(t.access_token||process.env.PAN123_OPEN_ACCESS_TOKEN||process.env.PAN123_OPEN_TOKEN),refresh_token:St(t.refresh_token||process.env.PAN123_OPEN_REFRESH_TOKEN),target_parent_id:St(t.target_parent_id||process.env.PAN123_OPEN_TRANSFER_PARENT_ID||"0")||"0",target_parent_name:St(t.target_parent_name||"\u6839\u76EE\u5F55")||"\u6839\u76EE\u5F55",oauth_server:St(t.oauth_server||HE())||HE()}}async function zIe(e,t={}){let n={...await GIe(e),...t,updated_at:new Date().toISOString()};return await e.db.push(jIe,n),n}async function k4(e,t={},r={}){let n=M4(t);if(!n?.access_token)throw new Error("123 Open \u54CD\u5E94\u4E2D\u6CA1\u6709 access_token");let s=await GIe(e),i=n.refresh_token||St(s.refresh_token),a={...s,access_token:n.access_token,refresh_token:i,token_type:n.token_type,expires_in:n.expires_in,...n.expires_in>0?{expires_at:Date.now()+n.expires_in*1e3}:{},...r,updated_at:new Date().toISOString()};return await e.db.push(jIe,a),a}function Mcn(e){let t=Number(e?.status||0),r=e?.data||{},n=String(r?.code??""),s=St(r?.message||r?.msg).toLowerCase();return t===401||n.startsWith("401")||s.includes("\u672A\u6388\u6743")||s.includes("access_token")||s.includes("token")&&(s.includes("\u8FC7\u671F")||s.includes("invalid")||s.includes("\u5931\u6548"))}function kcn(e){let t=Number(e?.status||0),r=e?.data||{},n=String(r?.code??r?.data?.code??""),s=St(r?.message||r?.msg||r?.data?.message||r?.data?.msg).toLowerCase();return t===401||n==="401"||n==="401401"||s.includes("unauthorized")||s.includes("\u672A\u767B\u5F55")||s.includes("token")&&(s.includes("\u8FC7\u671F")||s.includes("\u5931\u6548")||s.includes("invalid"))}function YIe(e=""){return{"User-Agent":Ocn,Accept:"application/json, text/plain, */*",platform:"android","App-Version":"43",...e?{Authorization:`Bearer ${e}`}:{}}}async function Hkt(e){try{let t=await e?.db?.getObjectDefault?.("/pan123",{});return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return{}}}async function Fkt(e){if(P4)return P4;P4=(async()=>{let t=await Hkt(e),r=St(t.pan_passport||e?.config?.pan123?.username),n=St(t.pan_password||e?.config?.pan123?.password);if(!r||!n)throw new Error("\u8BF7\u5148\u4FDD\u5B58123\u8D26\u53F7\u548C\u5BC6\u7801\uFF0C\u4EE5\u521B\u5EFA\u4E34\u65F6123\u65E0\u9650\u5206\u4EAB");let s=await ve.post(Ncn,{passport:r,password:n,remember:!0},{headers:{...YIe(),"Content-Type":"application/json",Referer:"https://login.123pan.com/centerlogin?redirect_url=https%3A%2F%2Fwww.123684.com&source_page=website"},timeout:KIe,validateStatus:()=>!0}),i=St(s.data?.data?.token);if(s.status!==200||Number(s.data?.code||0)!==0||!i)throw new Error(s.data?.message||s.data?.msg||"123\u8D26\u53F7\u767B\u5F55\u5931\u8D25");return await e.db.push("/pan123/pan_auth",i),i})();try{return await P4}finally{P4=null}}async function QIe(e,t,r,n={},s=!1){let i=await Hkt(e),a=St(i.pan_auth)||await Fkt(e),o=await ve.request({method:t,url:`${$kt}${r}`,params:n.params,data:n.data,headers:{...YIe(a),...n.headers||{}},timeout:KIe,validateStatus:()=>!0});if(!s&&kcn(o))return await Fkt(e),QIe(e,t,r,n,!0);let c=o.data&&typeof o.data=="object"?o.data:{},u=Number(c.code??c.data?.code??0);if(o.status!==200||u!==0){let l=new Error(c.message||c.msg||c.data?.message||c.data?.msg||`123\u7F51\u9875\u63A5\u53E3\u5931\u8D25 (${o.status})`);throw l.statusCode=o.status>=400?o.status:502,l.code=c.code??c.data?.code,l}return c.data??c}function Bcn(e){let t=-e.getTimezoneOffset(),r=t>=0?"+":"-",n=s=>String(Math.floor(Math.abs(s))).padStart(2,"0");return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())}T${n(e.getHours())}:${n(e.getMinutes())}:${n(e.getSeconds())}${r}${n(t/60)}:${n(t%60)}`}function Vkt(e){let t=St(e),r=/^\d+$/.test(t)?Number(t):NaN;return Number.isSafeInteger(r)?r:t}async function B4(e,t,r,n={}){let s=await el(e),i=St(s.oauth_server||HE()).replace(/\/+$/,""),a=await ve.request({method:t,url:`${i}${r}`,headers:{Accept:"application/json",...n.headers||{}},params:n.params,data:n.data,timeout:Pcn,validateStatus:()=>!0});if(a.status>=400){let o=new Error(a.data?.message||a.data?.detail||`OAuth\u670D\u52A1\u8BF7\u6C42\u5931\u8D25 (${a.status})`);throw o.statusCode=a.status,o.code=a.data?.code,o}return a.data||{}}function qIe(){return{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/140 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:"https://yun.123pan.com",Referer:"https://yun.123pan.com/"}}async function Ucn(e,t,r=40){for(let n=0;nsetTimeout(a,500))}throw new Error("123 Open\u6388\u6743\u8D85\u65F6\uFF0C\u8BF7\u91CD\u8BD5")}async function jkt(e,t={}){let r=St(t.passport||t.username),n=St(t.password);if(!r||!n)throw new Error("\u8BF7\u5148\u4FDD\u5B58123\u8D26\u53F7\u548C\u5BC6\u7801");let s=await B4(e,"POST","/api/oauth/quick-auth",{params:{driver_type:VIe,server_use:!0}}),i=s?.data&&typeof s.data=="object"?s.data:s,a=St(i?.session_id||i?.sessionId),o=St(i?.oauth_url||i?.url);if(!a||!o)throw new Error("OAuth\u4EE3\u7406\u672A\u8FD4\u56DE\u6388\u6743\u4F1A\u8BDD");let c=new URL(o),u=St(c.searchParams.get("client_id")),l=St(c.searchParams.get("redirect_uri")),d=St(c.searchParams.get("scope")),f=St(c.searchParams.get("state")||a);if(!u||!l||!d)throw new Error("OAuth\u4EE3\u7406\u8FD4\u56DE\u7684\u6388\u6743\u53C2\u6570\u4E0D\u5B8C\u6574");let h=await ve.post(`${Nj}/api/v1/oauth2/app/verify`,{appId:u,redirectUri:l,scope:d},{headers:qIe(),timeout:L4,validateStatus:()=>!0});if(h.status!==200||Number(h.data?.code||0)!==0)throw new Error(h.data?.message||"123 Open\u5E94\u7528\u9A8C\u8BC1\u5931\u8D25");let p=/^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(r)?2:1,m=await ve.post("https://api.123278.com/api/restful/goapi/v1/oauth2/user/login",{passport:r,password:n,loginType:p,appId:u},{headers:qIe(),timeout:L4,validateStatus:()=>!0}),_=St(m.data?.data?.accessToken);if(m.status!==200||Number(m.data?.code||0)!==0||!_)throw new Error(m.data?.message||"123\u8D26\u53F7\u5BC6\u7801\u6388\u6743\u767B\u5F55\u5931\u8D25");let g=await ve.get(`${Nj}/api/v1/oauth2/user/authorize`,{params:{redirect_uri:l,response_type:"code",client_id:u,scope:d,state:f,accessToken:_},headers:{...qIe(),"Content-Type":void 0},timeout:L4,maxRedirects:10,validateStatus:A=>A>=200&&A<400});if(g.status>=400)throw new Error(`123 Open\u6388\u6743\u786E\u8BA4\u5931\u8D25 (${g.status})`);let{token:y}=await Ucn(e,a);await k4(e,y,{oauth_session_id:a});try{await XIe(e,a)}catch{}return await el(e)}async function Kkt(e,t={}){let r=await el(e),n=St(t.oauthServer||r.oauth_server||HE()).replace(/\/+$/,"");return await B4(e,"POST","/api/oauth/start",{headers:{"Content-Type":"application/json"},data:{driver_type:VIe,callback_url:St(t.callbackUrl)||`${n}/callback-popup`}})}function WIe(e,t){return B4(e,"GET",`/api/oauth/status/${encodeURIComponent(St(t))}`)}function XIe(e,t){return B4(e,"POST",`/api/oauth/confirm-received/${encodeURIComponent(St(t))}`)}function Fcn(e,t){return B4(e,"POST","/api/oauth/refresh",{headers:{"Content-Type":"application/json"},data:{driver_type:VIe,refresh_token:St(t)}})}async function JIe(e){if(D4)return D4;D4=(async()=>{let t=await el(e);if(!t.refresh_token)throw new Error("\u672A\u4FDD\u5B58123 Open refresh_token");let r=await Fcn(e,t.refresh_token),n=M4(r);if(!n?.access_token)throw new Error("OAuth\u5237\u65B0\u6210\u529F\u4F46\u6CA1\u6709\u8FD4\u56DE access_token");return n.refresh_token||(n.refresh_token=t.refresh_token),await k4(e,n)})();try{return await D4}finally{D4=null}}async function U4(e,t,r,n={},s=!1){let i=await el(e);if(!i.access_token)throw new Error("\u672A\u914D\u7F6E123 Open access_token");let a=await ve.request({method:t,url:`${Nj}${r}`,params:n.params,data:n.data,headers:{Authorization:`Bearer ${i.access_token}`,Accept:"application/json",Platform:"open_platform","User-Agent":"CatPawOpen/123Open",...n.headers||{}},timeout:L4,validateStatus:()=>!0});if(!s&&Mcn(a))return await JIe(e),U4(e,t,r,n,!0);let o=a.data&&typeof a.data=="object"?a.data:{},c=Number(o.code||0);if(a.status!==200||c!==0){let u=new Error(o.message||o.msg||`123 Open\u63A5\u53E3\u5931\u8D25 (${a.status})`);throw u.statusCode=a.status>=400?a.status:502,u.code=o.code,u}return o.data??o}async function Gkt(e){return{configured:!0,data:await U4(e,"GET","/api/v1/user/info")}}async function zkt(e){let t=St(e);if(!t)throw new Error("access_token is required");let r=await ve.get(`${Nj}/api/v1/user/info`,{headers:{Authorization:`Bearer ${t}`,Accept:"application/json",Platform:"open_platform","User-Agent":"CatPawOpen/123Open"},timeout:L4,validateStatus:()=>!0}),n=r.data&&typeof r.data=="object"?r.data:{};if(r.status!==200||Number(n.code||0)!==0)throw new Error(n.message||n.msg||`123 Open Token\u9A8C\u8BC1\u5931\u8D25 (${r.status})`);return n.data??n}async function Ykt(e,t="0"){let r=[],n="";for(let s=0;s<100;s+=1){let i={parentFileId:St(t||"0"),limit:100};n&&n!=="-1"&&(i.lastFileId=n);let a=await U4(e,"GET","/api/v2/file/list",{params:i}),o=[a?.fileList,a?.file_list,a?.list].find(Array.isArray)||[];for(let u of o)(Number(u?.type??u?.Type??u?.fileType)===1||String(u?.type||"").toLowerCase()==="folder")&&r.push({id:St(u.fileId||u.FileId||u.file_id||u.id),name:St(u.filename||u.fileName||u.FileName||u.name||"\u672A\u547D\u540D\u76EE\u5F55")});let c=St(a?.lastFileId??a?.last_file_id??"-1");if(!c||c==="-1"||c===n||o.length===0)break;n=c}return r.filter(s=>s.id)}async function Qkt(e,t,r="0"){let n=await U4(e,"POST","/upload/v2/file/sha1_reuse",{headers:{"Content-Type":"application/json"},data:{parentFileID:Vkt(r),filename:St(t.name),sha1:St(t.sha1).toLowerCase(),size:Number(t.size),duplicate:1}});return{reuse:n?.reuse===!0||n?.Reuse===!0||Number(n?.reuse||n?.Reuse)===1,fileId:St(n?.fileID||n?.fileId||n?.FileID)}}async function Wkt(e,t={}){let r=St(t.fileId||t.file_id||t.id);if(!r)throw new Error("\u521B\u5EFA123\u65E0\u9650\u4E34\u65F6\u5206\u4EAB\u7F3A\u5C11\u6587\u4EF6ID");let n=`CatPawOpen-${Date.now()}-${HIe.default.randomBytes(3).toString("hex")}`,s=await QIe(e,"POST","/share/create",{headers:{"Content-Type":"application/json;charset=UTF-8"},data:{driveId:0,expiration:Bcn(new Date(Date.now()+24*60*60*1e3)),fileIdList:r,shareName:n,sharePwd:"",fileNum:1,renameVisible:!0,shareModality:1,trafficSwitch:1,fillPwdSwitch:0}}),i=s?.data&&typeof s.data=="object"?s.data:s,a=St(i?.ShareId||i?.shareId),o=i?.shareLinkList?.list||i?.ShareLinkList?.list||[],c=Array.isArray(o)?St(o[0]):St(o||i?.shareLink),u=c.match(/\/(?:s|123pan)\/([^/?#]+)/i),l=St(u?.[1]);if(!a||!l)throw new Error("123\u4E34\u65F6\u5206\u4EAB\u672A\u8FD4\u56DE\u53EF\u7528\u7684\u5206\u4EAB\u6807\u8BC6");return{shareId:a,shareKey:l,sharePwd:"",shareLink:c}}async function Xkt(e={},t={}){let r=St(e.shareKey||e.share_key);if(!r)throw new Error("123\u65E0\u9650\u53D6\u94FE\u7F3A\u5C11shareKey");let n=await ve.get(`${$kt}/share/get`,{params:{limit:"100",next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:r,SharePwd:St(e.sharePwd||e.share_pwd),ParentFileId:"0",Page:"1"},headers:YIe(),timeout:KIe,validateStatus:()=>!0}),s=n.data&&typeof n.data=="object"?n.data:{};if(n.status!==200||Number(s.code||0)!==0)throw new Error(s.message||s.msg||`123\u65E0\u9650\u5206\u4EAB\u5217\u8868\u8BF7\u6C42\u5931\u8D25 (${n.status})`);let i=Array.isArray(s.data?.InfoList)?s.data.InfoList:[],a=St(t.fileId||t.file_id||t.id),o=Number(t.size||t.file_size||0),c=St(t.name||t.file_name),u=i.find(d=>a&&St(d?.FileId||d?.fileId)===a)||i.find(d=>o>0&&Number(d?.Size||d?.size||0)===o&&(!c||St(d?.FileName||d?.filename)===c))||i[0],l=St(u?.DownloadUrl||u?.DownloadURL||u?.downloadUrl||u?.download_url);if(!l){let d=u?.Category??u?.category;throw new Error(d==null?"123\u65E0\u9650\u5206\u4EAB\u5217\u8868\u672A\u8FD4\u56DEDownloadUrl":`123\u65E0\u9650\u672A\u63D0\u4F9B\u8BE5\u6587\u4EF6\u7C7B\u578B\u7684DownloadUrl (Category=${d})`)}return l}async function Jkt(e,t){let r=St(t);return r?(await QIe(e,"POST","/share/delete",{headers:{"Content-Type":"application/json;charset=UTF-8"},data:{driveId:0,shareInfoList:[{shareId:Vkt(r)}],isPayShare:0}}),!0):!1}async function Zkt(e,t=[]){let r=[...new Set((Array.isArray(t)?t:[t]).map(n=>St(n)).filter(Boolean))];return r.length?(await U4(e,"POST","/api/v1/file/trash",{headers:{"Content-Type":"application/json"},data:{fileIDs:r.map(n=>{let s=/^\d+$/.test(n)?Number(n):NaN;return Number.isSafeInteger(s)?s:n})}}),r.length):0}function qT(e={}){return{enabled:e.enabled===!0,configured:!!e.access_token,access_token_masked:Lcn(e.access_token),has_refresh_token:!!e.refresh_token,expires_at:Number(e.expires_at||0),target_parent_id:St(e.target_parent_id||"0")||"0",target_parent_name:St(e.target_parent_name||"\u6839\u76EE\u5F55")||"\u6839\u76EE\u5F55",oauth_server:St(e.oauth_server||HE()),updated_at:St(e.updated_at)}}var HIe,Nj,$kt,Ncn,Ocn,Dcn,VIe,jIe,L4,Pcn,KIe,D4,P4,ZIe=ae(()=>{Pr();HIe=Ne(require("node:crypto"),1),Nj="https://open-api.123pan.com",$kt="https://www.123684.com/b/api",Ncn="https://login.123pan.com/api/user/sign_in",Ocn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Dcn="https://oauth.litepan.top",VIe="123\u4E91\u76D8Open",jIe="/pan123_open",L4=Math.max(5e3,Number(process.env.PAN123_OPEN_TIMEOUT_MS||2e4)),Pcn=Math.max(5e3,Number(process.env.PAN123_OPEN_OAUTH_TIMEOUT_MS||15e3)),KIe=Math.max(5e3,Number(process.env.PAN123_WEB_TIMEOUT_MS||15e3)),D4=null,P4=null});function Vg(e){return String(e??"").trim()}function Vcn(e){let t=0,r=0,n=[];for(let s of e.toUpperCase()){let i=Hcn.indexOf(s);if(i<0)return null;t=t<<5|i,r+=5,r>=8&&(r-=8,n.push(t>>r&255))}return n.length===20?Buffer.from(n):null}function rf(e=""){let t=Vg(e);if($cn.test(t))return t.toLowerCase();if(!qcn.test(t))return"";let r=Vcn(t);return r?r.toString("hex"):""}function jcn(e={}){let t=rf(e.sha1||e.sha||e.file_sha1||e.fileSha1||e.hash),r=Number(e.size||e.file_size||e.fileSize||0),n=Vg(e.name||e.file_name||e.fileName),s=Vg(e.fileId||e.file_id||e.fid||e.id),i=Vg(e.pickCode||e.pick_code||e.pickcode||e.pc);return{name:n,size:r,sha1:t,fileId:s,pickCode:i}}function Kcn(e,t){let r=[qkt(e.access_token),Vg(e.target_parent_id||"0"),t.sha1,String(t.size)].join(":");return t4t.default.createHash("sha256").update(r).digest("hex")}async function Gcn(e,t){try{return await e?.db?.getObjectDefault?.(`/pan123_open/rapid_mappings/${t}`,null)}catch{return null}}async function zcn(e,t,r){await e.db.push(`/pan123_open/rapid_mappings/${t}`,r)}async function Ycn(e,t){try{await e?.db?.delete?.(`/pan123_open/rapid_mappings/${t}`)}catch{}}async function eRe(e,t,r={}){let n=Vg(r.shareId||r.share_id),s=Vg(r.fileId||r.file_id),i=!n,a=!s;if(n)try{await Jkt(e,n),i=!0}catch(c){console.warn("[115-to-123] \u5DF2\u83B7\u53D6123\u65E0\u9650\u64AD\u653E\u94FE\u63A5\uFF0C\u4F46\u64A4\u9500\u4E34\u65F6\u5206\u4EAB\u5931\u8D25:",c?.message||c)}if(s)try{await Zkt(e,[s]),a=!0}catch(c){console.warn("[115-to-123] \u5DF2\u83B7\u53D6123\u65E0\u9650\u64AD\u653E\u94FE\u63A5\uFF0C\u4F46\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",c?.message||c)}let o=i&&a;return o&&await Ycn(e,t),{cleaned:o,shareCleaned:i,fileCleaned:a}}async function e4t(e,t,r,n,s,i){i.cleaned||await zcn(e,t,{file_id:i.fileCleaned?"":Vg(s.fileId||s.file_id),share_id:i.shareCleaned?"":Vg(s.shareId||s.share_id),parent_file_id:r.target_parent_id,name:n.name,size:n.size,sha1:n.sha1,updated_at:new Date().toISOString()})}async function VE(e){let t=await el(e);return t.enabled===!0&&!!t.access_token}async function jE(e,t={}){let r=await el(e);if(r.enabled!==!0)return{success:!1,mode:"disabled",downloaded:!1,uploaded:!1,message:"\u79D2\u4F20123\u672A\u542F\u7528"};if(!r.access_token)return{success:!1,mode:"not_configured",downloaded:!1,uploaded:!1,message:"\u672A\u914D\u7F6E123 Open access_token"};let n=jcn(t);if(!n.name||!Number.isSafeInteger(n.size)||n.size<=0||!n.sha1)return{success:!1,mode:"invalid_metadata",downloaded:!1,uploaded:!1,message:"115\u6587\u4EF6\u7F3A\u5C11\u53EF\u7528\u7684\u6587\u4EF6\u540D\u3001\u5927\u5C0F\u6216SHA1\uFF0C\u672A\u8C03\u7528115\u64AD\u653E\uFF0C\u4E5F\u672A\u6267\u884C\u4E0B\u8F7D\u6216\u4E0A\u4F20"};let s=Kcn(r,n);if(F4.has(s))return await F4.get(s);let i=(async()=>{let a=await Gcn(e,s);if((a?.file_id||a?.share_id)&&!(await eRe(e,s,a)).cleaned)return{success:!1,mode:"cleanup_pending",downloaded:!1,uploaded:!1,file:n,message:"\u4E0A\u6B21\u79D2\u4F20123\u4E34\u65F6\u6587\u4EF6\u6216\u5206\u4EAB\u5C1A\u672A\u6E05\u7406\u5B8C\u6210\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"};let o=await Qkt(e,n,r.target_parent_id);if(!o.reuse||!o.fileId)return{success:!1,mode:"miss",downloaded:!1,uploaded:!1,file:n,message:"123\u672A\u547D\u4E2DSHA1\u79D2\u4F20\uFF0C\u672A\u6267\u884C\u4E0B\u8F7D\u6216\u4E0A\u4F20"};let c=null,u="";try{c=await Wkt(e,{fileId:o.fileId,name:n.name,size:n.size}),u=await Xkt(c,{fileId:o.fileId,name:n.name,size:n.size})}catch(d){let f=await eRe(e,s,{fileId:o.fileId,shareId:c?.shareId});return await e4t(e,s,r,n,{fileId:o.fileId,shareId:c?.shareId},f),{success:!1,mode:"unlimited_direct_failed",downloaded:!1,uploaded:!1,file:n,message:`\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u53D6\u94FE\u5931\u8D25: ${d?.message||d}`}}let l=await eRe(e,s,{fileId:o.fileId,shareId:c.shareId});return await e4t(e,s,r,n,{fileId:o.fileId,shareId:c.shareId},l),{success:!0,mode:"rapid",downloaded:!1,uploaded:!1,file:n,target:{parentFileId:r.target_parent_id,fileId:o.fileId},downloadUrl:u,cleaned:l.cleaned}})();F4.set(s,i);try{return await i}finally{F4.get(s)===i&&F4.delete(s)}}var t4t,F4,$cn,qcn,Hcn,Oj=ae(()=>{t4t=Ne(require("node:crypto"),1);ZIe();F4=new Map;$cn=/^[a-f0-9]{40}$/i,qcn=/^[a-z2-7]{32}$/i,Hcn="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"});function r4t(e){return Buffer.from(e,"base64").toString("utf8")}function s4t(e){let t=Number(e?.code),r=String(e?.message||e?.msg||"").toLowerCase();return t===401||t===401401||r.includes("token")||r.includes("unauthorized")||r.includes("\u767B\u5F55")||r.includes("auth")}function HT(e=""){let t=String(e||"").trim();if(!t)return"";try{t=decodeURIComponent(t)}catch{}try{let r=new URL(t);r.pathname=r.pathname.replace(/_24_24(?=\/|$)/g,"");for(let n of["w","h","trade_key","type"])r.searchParams.delete(n);return r.toString()}catch{return""}}function Kg(e){let t=Number(e);return Number.isSafeInteger(t)&&t>0?t:0}function eun(e=""){let t=String(e||"").match(/^bytes\s+(?:\d+-\d+|\*)\/(\d+|\*)$/i);return!t||t[1]==="*"?0:Kg(t[1])}function tun(e=""){let t=String(e||"").toLowerCase().replace(/\.$/,"");return/(?:^|\.)123[a-z0-9-]*\.(?:com|cn)$/.test(t)}function i4t(e,t){if(vx.set(e,{...t,timestamp:Date.now()}),vx.size<=Jcn)return;let r=vx.keys().next().value;r!==void 0&&vx.delete(r)}async function run(e,t){let r=Kg(t);if(!e||!r)return{mismatch:!1,expectedSize:r,actualSize:0};let n=`${r}:${e}`,s=vx.get(n);if(s&&Date.now()-s.timestampl>=200&&l<500});let a=eun(i.headers?.["content-range"]),o=i.status===200?Kg(i.headers?.["content-length"]):0,c=a||o,u={mismatch:c>0&&c=r)return{ok:!1,reason:"range start out of bounds"};if(o!==null&&(!Number.isSafeInteger(o)||o=o4t&&KE.delete(i);for(;KE.size>Zcn;){let i=KE.keys().next().value;if(i===void 0)break;KE.delete(i)}return n}function aun(e=""){let t=String(e||"").trim().toLowerCase();if(!/^[a-f0-9]{32}$/.test(t))return null;let r=KE.get(t);return r?Date.now()-r.timestamp>=o4t?(KE.delete(t),null):(r.timestamp=Date.now(),r):null}function oun(e,t,r){let n=iun(t,r);return`${$g(e,"123")}/src/direct/_/${n}/.mp4`}function kj(e="",t=0){let r=HT(e);return r?Ot(["direct",r,Kg(t)],{structured:!0}):""}function VT(e=""){let t=HT(e);return t?{parse:0,url:["\u539F\u753B",t]}:null}async function Bj(e,t="",r=0){let n=VT(t);if(!n)return null;let s=Kg(r);if(!e||!s)return n;let i=n.url[1],a=await run(i,s);return a.mismatch?(console.warn("[123\u65E0\u9650] CDN\u9996\u6BB5\u957F\u5EA6\u5F02\u5E38\uFF0C\u542F\u7528Range\u4FEE\u590D\u4EE3\u7406 expected=%s actual=%s",a.expectedSize,a.actualSize),{parse:0,url:["\u539F\u753B",oun(e,i,s)]}):n}async function cun(e,t,r="",n=0){let s=HT(r),i=Kg(n);if(!s||!i)return t.code(400),{error:"123\u65E0\u9650\u4EE3\u7406\u53C2\u6570\u65E0\u6548"};let a=await lT(s);if(!a.ok||!tun(a.parsed?.hostname||a.host))return t.code(403),{error:"123\u65E0\u9650\u4EE3\u7406\u5730\u5740\u4E0D\u53D7\u4FE1\u4EFB"};if(t.header("Accept-Ranges","bytes").header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges, Content-Type"),String(e.method||"").toUpperCase()==="HEAD")return t.hijack(),t.raw.statusCode=200,t.raw.setHeader("Content-Type","video/mp4"),t.raw.setHeader("Content-Length",String(i)),t.raw.setHeader("Accept-Ranges","bytes"),t.raw.setHeader("Access-Control-Allow-Origin","*"),t.raw.setHeader("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges, Content-Type"),t.raw.end(),t;let o=nun(e.headers?.range,i);if(!o.ok)return t.header("Content-Range",`bytes */${i}`),t.code(416).send(o.reason);let c;try{c=await ve.get(s,{headers:{Range:o.range,Accept:e.headers?.accept||"*/*","User-Agent":e.headers?.["user-agent"]||Lj},responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:p=>p>=200&&p<500});let u=c.headers?.["content-range"],l=sun(u,i),d=c.headers?.["content-length"];l&&t.header("Content-Range",l),d&&t.header("Content-Length",d);let f=String(c.headers?.["content-type"]||"").trim();t.header("Content-Type",!f||f==="application/octet-stream"?"video/mp4":f),c.headers?.["cache-control"]&&t.header("Cache-Control",c.headers["cache-control"]),c.headers?.["last-modified"]&&t.header("Last-Modified",c.headers["last-modified"]);let h=()=>{try{c?.data?.destroy?.()}catch{}};return e.raw?.once?.("close",h),c.data?.once?.("close",()=>e.raw?.off?.("close",h)),t.code(c.status).send(c.data)}catch(u){try{c?.data?.destroy?.()}catch{}return console.warn("[123\u65E0\u9650] Range\u4FEE\u590D\u4EE3\u7406\u5931\u8D25:",u?.message||u),t.code(502).send("123\u65E0\u9650\u4EE3\u7406\u8BF7\u6C42\u5931\u8D25")}}async function c4t(e,t,r=""){let n=aun(r);return n?cun(e,t,n.downloadUrl,n.expectedSize):t.code(404).send("123\u65E0\u9650\u4EE3\u7406\u5730\u5740\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u64AD\u653E")}function uun(e){let t=String(e||"").trim();if(!t)return"";if(t.includes("\u539F\u753B")||t.includes("\u539F\u6587\u4EF6"))return"\u539F\u753B";if(t.includes("\u8D85\u6E05"))return"\u8D85\u6E05";if(t.includes("\u84DD\u5149"))return"\u84DD\u5149";if(t.includes("\u9AD8\u6E05"))return"\u9AD8\u6E05";if(t.includes("\u6807\u6E05"))return"\u6807\u6E05";if(t.includes("\u666E\u753B"))return"\u666E\u753B";if(t.includes("\u6781\u901F")||t.includes("\u6D41\u7545"))return"\u6781\u901F";let r=t.toLowerCase().replace(/\s+/g,"").replace(/[_-]+/g,"");return a4t[r]?a4t[r]:/(?:^|[^\d])2160p?(?:$|[^\d])|4k|uhd/.test(r)?"\u8D85\u6E05":/(?:^|[^\d])1440p?(?:$|[^\d])|2k|qhd/.test(r)?"\u84DD\u5149":/(?:^|[^\d])1080p?(?:$|[^\d])|super|fullhd|fhd/.test(r)?"\u9AD8\u6E05":/(?:^|[^\d])720p?(?:$|[^\d])|high|hd/.test(r)?"\u6807\u6E05":/(?:^|[^\d])480p?(?:$|[^\d])|low|sd/.test(r)?"\u666E\u753B":/(?:^|[^\d])360p?(?:$|[^\d])|normal|smooth|ld/.test(r)?"\u6781\u901F":t}async function u4t(e,t){t&&await S0(t);let r=tl.getShareData(e);if(!r)return[];let n=await tl.getFilesByShareUrl(r);if(!n?.length)return[];let s=await ht("123"),i=n.filter(u=>u?.vod_direct_id).map(u=>({...u,vod_id:u.vod_direct_id})),a=Fg(Sx,i),o=Zd(ir[123].direct,a?[a]:[]),c=Zd(ir[123].original,Ta(s,n));return[...o,...c]}var Pj,Sx,Qcn,n4t,Lj,Wcn,Xcn,Jcn,vx,o4t,Zcn,KE,a4t,Mj,tRe,Dj,S0,jg,tl,$4=ae(()=>{Pr();Pj=Ne(Gi(),1);ua();Wc();Hd();Xc();wi();$l();qg();wH();Sx="123\u65E0\u9650",Qcn=100,n4t="https://www.123684.com/b/api",Lj="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Wcn=Math.max(3e3,Number(process.env.PAN123_DIRECT_PROBE_TIMEOUT_MS||1e4)),Xcn=10*60*1e3,Jcn=100,vx=new Map,o4t=2*60*60*1e3,Zcn=256,KE=new Map;a4t={"4k":"\u8D85\u6E05","2160p":"\u8D85\u6E05",2160:"\u8D85\u6E05",uhd:"\u8D85\u6E05","2k":"\u84DD\u5149","1440p":"\u84DD\u5149",1440:"\u84DD\u5149",qhd:"\u84DD\u5149",super:"\u9AD8\u6E05","1080p":"\u9AD8\u6E05",1080:"\u9AD8\u6E05",fhd:"\u9AD8\u6E05",fullhd:"\u9AD8\u6E05",high:"\u6807\u6E05","720p":"\u6807\u6E05",720:"\u6807\u6E05",hd:"\u6807\u6E05",low:"\u666E\u753B","480p":"\u666E\u753B",480:"\u666E\u753B",sd:"\u666E\u753B",normal:"\u6781\u901F","360p":"\u6781\u901F",360:"\u6781\u901F",ld:"\u6781\u901F",smooth:"\u6781\u901F"};tRe={},Dj={async set(e,t){tRe[e]=t,Mj&&await Mj.push(`/pan123/${e}`,t)},get(e){return tRe[e]}},S0=async e=>{Mj=e.server.db,tRe=await Mj.getObjectDefault("/pan123",{})};jg=class{constructor(){this.regex=/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)([^/?#\s]+)/i,this.api="https://www.123684.com/b/api/share/",this.loginUrl="https://login.123pan.com/api/user/sign_in",this.cate="",this.SharePwd=""}async init(){if(!this.auth){await this.login();return}try{let t=JSON.parse(Pj.default.enc.Base64.parse(this.auth.split(".")[1]).toString(Pj.default.enc.Utf8));(!t.exp||t.exp<=Math.floor(Date.now()/1e3))&&await this.login()}catch{await this.login()}}get passport(){return Dj.get("pan_passport")}get password(){return Dj.get("pan_password")}get auth(){return Dj.get("pan_auth")}async login(){let t=JSON.stringify({passport:this.passport,password:this.password,remember:!0}),r={method:"POST",url:this.loginUrl,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36","Content-Type":"application/json","App-Version":"43",Referer:"https://login.123pan.com/centerlogin?redirect_url=https%3A%2F%2Fwww.123684.com&source_page=website"},data:t};try{let s=(await ve.request(r)).data;if(s?.data?.token)await Dj.set("pan_auth",s.data.token);else throw new Error("\u767B\u5F55\u5931\u8D25")}catch(n){throw console.error("\u767B\u5F55\u5931\u8D25:",n),en.toast("123\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),n}}getShareData(t){t=decodeURIComponent(t);let r=this.regex.exec(t);if(!r||r.length<2)return console.error("\u65E0\u6CD5\u5339\u914D123\u7F51\u76D8URL:",t),null;let n=r[1],s="",a=/[?&](?:pwd|password|提取码|passcode|SharePwd)(?:=|:|:)([^&#\s]+)/i.exec(t);return a&&a[1]&&(s=a[1]),{shareKey:n,sharePwd:s}}async getFilesByShareUrl(t){try{let r=[],n=typeof t=="string"?t:t.shareKey,s=typeof t=="object"&&t.sharePwd||"",i={scanCalls:0,folderVisits:0},a=Date.now(),o=async(u,l)=>{let d=[],f=[],h=[],p=1,m=100;for(;;){let _=await ve.get(this.api+"get",{params:{limit:String(m),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:n,SharePwd:s,ParentFileId:u,Page:p.toString()},timeout:1e4});if(l&&(l.scanCalls+=1),_.status!==200||_.data.code===5103)break;let g=_.data.data||{},y=g.InfoList||[];for(let E of y)if(E.Category===0)d.push({filename:E.FileName,shareKey:n,SharePwd:s,next:g.Next||"0",fileId:E.FileId});else if(E.Category===2){let v=HT(E.DownloadUrl||E.DownloadURL||"");f.push({ShareKey:n,FileId:E.FileId,S3KeyFlag:E.S3KeyFlag,Size:E.Size,Etag:E.Etag,FileName:E.FileName,DownloadUrl:v})}else E.Category!==0&&vt(E.FileName)&&h.push({ShareKey:n,FileId:E.FileId,S3KeyFlag:E.S3KeyFlag,Size:E.Size,Etag:E.Etag,FileName:E.FileName});let A=Number(g?.Total||g?.total||0);if(y.length0&&p*m>=A)break;p++}for(let _ of f){let g=Ir(_.FileName,h,y=>y.FileName);g?.FileId&&(_.subtitle={FileId:g.FileId,S3KeyFlag:g.S3KeyFlag,Size:g.Size,Etag:g.Etag,FileName:g.FileName})}return{folders:d,videos:f}},c=async(u=0,l="")=>{i.folderVisits+=1;try{let d=await o(u,i),f=d?.videos||[];if(f.length>0){let p=Kt(f);r.push(...p)}let h=d?.folders||[];if(h.length===0)return;for(let p of h)await c(p.fileId||p.FileId,l+(l?"/":"")+(p.filename||p.FileName))}catch(d){console.error(`[123\u7F51\u76D8] \u5904\u7406\u6587\u4EF6\u5939\u5931\u8D25 parentFileId=${u}:`,d.message)}};return await c(0,""),console.log("[123 detail] perf",JSON.stringify({shareKey:n,ms:Date.now()-a,videos:r.length,...i})),r.map(u=>({vod_id:Ot([u.ShareKey,u.FileId,u.S3KeyFlag,u.Size,u.Etag,u.subtitle?.FileId||"",u.subtitle?.S3KeyFlag||"",u.subtitle?.Size||"",u.subtitle?.Etag||""],{structured:!0}),vod_direct_id:kj(u.DownloadUrl||"",u.Size),vod_name:u.FileName,vod_size:u.Size}))}catch(r){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u6587\u4EF6\u5931\u8D25:",r),[]}}async getShareInfo(t,r,n,s,i){try{let a=[],o=1,c=100;for(;;){let u=await ve.get(this.api+"get",{params:{limit:String(c),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:t,SharePwd:r,ParentFileId:s,Page:o.toString()},timeout:1e4});if(i&&(i.infoCalls+=1),u.status===200&&u.data.code!==5103){let l=u.data.data,d=l.InfoList||[],f=d.filter(p=>p.Category===0);a.push(...f.map(p=>({filename:p.FileName,shareKey:t,SharePwd:r,next:l.Next||"0",fileId:p.FileId})));let h=Number(l?.Total||l?.total||0);if(d.length0&&o*c>=h)break;o++}else break}return a}catch(a){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",a.message),[]}}async getShareList(t,r,n,s,i){try{let a=[],o=[],c=1,u=100;for(;;){let l=await ve.get(this.api+"get",{params:{limit:String(u),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:t,SharePwd:r,ParentFileId:s,Page:c.toString()},timeout:1e4});i&&(i.listCalls+=1);let d=l.data.data,f=d?.InfoList||[];f.forEach(p=>{if(p.Category===2){let m=HT(p.DownloadUrl||p.DownloadURL||"");a.push({ShareKey:t,FileId:p.FileId,S3KeyFlag:p.S3KeyFlag,Size:p.Size,Etag:p.Etag,FileName:p.FileName,DownloadUrl:m})}else p.Category!==0&&vt(p.FileName)&&o.push({ShareKey:t,FileId:p.FileId,S3KeyFlag:p.S3KeyFlag,Size:p.Size,Etag:p.Etag,FileName:p.FileName})});let h=Number(d?.Total||d?.total||0);if(f.length0&&c*u>=h)break;c++}for(let l of a){let d=Ir(l.FileName,o,f=>f.FileName);d?.FileId&&(l.subtitle={FileId:d.FileId,S3KeyFlag:d.S3KeyFlag,Size:d.Size,Etag:d.Etag,FileName:d.FileName})}return a}catch(a){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u5217\u8868\u5931\u8D25:",a),[]}}async listShareFilesOneLayer(t,r="0",n={}){let s=typeof t=="string"?t:t?.shareKey,i=typeof t=="object"&&(t.sharePwd||t.SharePwd)||"";if(!s)return[];let a=Math.max(0,Number.parseInt(n.page||n.pg,10)||0),o=a>0,c=Math.max(1,Math.min(Qcn,Number(n.batchSize)||100)),u=Math.max(0,Math.min(1e4,Number(n.batchIntervalMs)||0)),l=Math.max(1e4,Math.min(18e4,Number(n.timeoutMs)||6e4)),d=[],f=o?a:1,h=0,p=!1;for(;;){let m=await ve.get(this.api+"get",{params:{limit:String(c),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:s,SharePwd:i,ParentFileId:String(r||"0"),Page:f.toString()},timeout:l});if(m.status!==200||m.data.code===5103)break;let _=m.data.data||{},g=Array.isArray(_.InfoList)?_.InfoList:[];if(d.push(...g.map(y=>({...y,ShareKey:s,SharePwd:i}))),h=Number(_?.Total||_?.total||h||0),p=g.length>=c&&!(h>0&&f*c>=h),o||!p)break;f+=1,u>0&&await new Promise(y=>setTimeout(y,u))}return o?{items:d,paged:!0,page:a,pageSize:c,total:h>0?h:(a-1)*c+d.length+(p?c:0)}:d}async getDownload(t,r,n,s,i){await this.init();let a=JSON.stringify({ShareKey:t,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),o={method:"POST",url:`${this.api}download/info`,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android"},data:a,timeout:15e3};try{let c=await ve.request(o),u=c.data?.data,l=String(u?.DownloadURL||u?.DownloadUrl||"").trim();if(!l)return console.warn("[123 share][down] \u7A7A\u54CD\u5E94, code=%s msg=%s",c.data?.code,c.data?.message),"";let d=new URL(l).searchParams.get("params");return d?r4t(d):l}catch(c){throw console.error("\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25:",c),c}}async getLiveTranscoding(t,r,n,s,i){await this.init();let a={method:"GET",url:"https://www.123684.com/b/api/video/play/info",headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android"},params:{etag:i,size:s,from:"1",shareKey:t},timeout:15e3};try{let c=(await ve.request(a)).data.data?.video_play_info||[],u=[];return c.forEach(l=>{l.url&&u.push({name:uun(l.resolution),url:l.url})}),u}catch(o){return console.error("\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\u5931\u8D25:",o),[]}}async listOwnFiles(t="0",r=1,n=100){await this.init();let s=Math.max(1,Number.parseInt(r,10)||1),i={method:"GET",url:`${n4t}/file/list/new`,headers:{"User-Agent":Lj,Authorization:`Bearer ${this.auth}`,platform:"android","App-Version":"43"},params:{driveId:"0",limit:String(n),next:"0",orderBy:"file_id",orderDirection:"desc",parentFileId:String(t||"0"),trashed:"false",SearchData:"",Page:String(s)},timeout:15e3};try{let a=await ve.request(i);s4t(a.data)&&(await this.login(),i.headers.Authorization=`Bearer ${this.auth}`,a=await ve.request(i)),Number(a.data?.code)!==0&&a.data?.code!==void 0&&console.warn("[123 own] listOwnFiles empty, code=%s msg=%s",a.data?.code,a.data?.message||a.data?.msg||"");let o=a.data?.data||{},c=Array.isArray(o.InfoList)?o.InfoList:[],u=[],l=[];return c.forEach(d=>{Number(d.Type)===1?u.push(d):l.push(d)}),{folderList:u,fileList:l,count:Number(o.Total||c.length||0),next:String(o.Next||"0")}}catch(a){return console.error("[123 own] listOwnFiles \u5931\u8D25:",a?.message||a),{folderList:[],fileList:[],count:0,next:"0"}}}async getOwnDownload(t,r,n,s,i=""){await this.init();let a={driveId:0,FileID:Number(t)||t,S3KeyFlag:r,Size:Number(n)||n,Etag:s};i&&(a.FileName=i);let o={method:"POST",url:`${n4t}/file/download_info`,headers:{"User-Agent":Lj,Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android","App-Version":"43"},data:JSON.stringify(a),timeout:15e3};try{let c=await ve.request(o);s4t(c.data)&&(await this.login(),o.headers.Authorization=`Bearer ${this.auth}`,c=await ve.request(o));let u=c.data?.data,l=String(u?.DownloadUrl||u?.DownloadURL||"").trim();if(!l)return console.warn("[123 own][down] empty url, code=%s msg=%s",c.data?.code,c.data?.message),"";try{let d=new URL(l).searchParams.get("params");if(d){let f=r4t(d);if(f.startsWith("http"))return f}}catch{}return l}catch(c){return console.error("[123 own] getOwnDownload \u5931\u8D25:",c?.message||c),""}}},tl={getShareData:e=>new jg().getShareData(e),getFilesByShareUrl:async e=>await new jg().getFilesByShareUrl(e),listShareFilesOneLayer:async(e,t,r)=>await new jg().listShareFilesOneLayer(e,t,r),getDownload:async(e,t,r,n,s)=>await new jg().getDownload(e,t,r,n,s),getLiveTranscoding:async(e,t,r,n,s)=>await new jg().getLiveTranscoding(e,t,r,n,s),listOwnFiles:async(e,t,r)=>await new jg().listOwnFiles(e,t,r),getOwnDownload:async(e,t,r,n,s)=>await new jg().getOwnDownload(e,t,r,n,s)}});function dun(e){let t=lun.exec(e);return t?{shareCode:t[1],receiveCode:t[2]}:null}function l4t(e){if(!e)return!1;let t=e.lastIndexOf(".");if(t===-1)return!1;let r=e.slice(t+1).toLowerCase();return fun.has(r)}async function hun(e,t="GET",r=null,n=null){let s=new URL(e);await ASe();let i=!1,a=()=>{if(!i){i=!0;try{ESe()}catch{}}};try{return await new Promise((o,c)=>{let u={hostname:s.hostname,path:`${s.pathname}${s.search}`,method:t,headers:r},d=(s.protocol==="https:"?g4t.request:m4t.request)(u,f=>{let h="";f.on("data",p=>{h+=p}),f.on("end",()=>{a();try{o(JSON.parse(h))}catch{c(h)}})});d.on("error",f=>{a(),c(f)}),d.setTimeout(1e4,()=>{d.destroy(),a(),c(new Error("\u8BF7\u6C42\u8D85\u65F6"))}),n&&d.write(n),d.end()})}catch(o){throw a(),o}}function E4t(e,t){t==null&&(t=Math.ceil(e.toString(16).length/2));let r=new Uint8Array(t),n=e;for(let s=t-1;s>=0;s--)r[s]=Number(n&0xffn),n>>=8n;return r}function y4t(e){let t=0n;for(let r of e)t=t<<8n|BigInt(r);return t}function*rRe(e,t,r=1){for(let n=e+r;n0n;)t&1n&&(n=n*e%r),t>>=1n,e=e*e%r;return n}function S4t(e){(typeof e=="string"||e instanceof String)&&(e=new TextEncoder().encode(e));let t=new Uint8Array(16+e.length);t.set(Uj(Uj(e,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(t.length/117)*128),n=0;for(let[s,i]of rRe(0,t.length,117)){let a=t.subarray(s,i),o=v4t(mun(a),A4t,_4t);r.set(E4t(o,128),n),n+=128}return Buffer.from(r).toString("base64")}function T4t(e){let t=new Uint8Array(Buffer.from(e,"base64")),r=[];for(let[i,a]of rRe(0,t.length,128)){let o=v4t(y4t(t.subarray(i,a)),A4t,_4t),c=E4t(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=pun(r.subarray(0,16),12),s=Uj(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(Uj(s,new Uint8Array([141,165,165,141])))}async function Fj(e,t,r,n=""){if(!e||!t||!n)return[];let s=await ve.get("https://proapi.115.com/android/2.0/share/snap",{params:{share_code:e,receive_code:t,cid:r&&String(r)!==String(e)?String(r):0,limit:1e3,offset:0},headers:{...gun,Cookie:n},timeout:15e3,validateStatus:()=>!0}),i=s?.data;if(s.status>=400||i?.state===!1)throw new Error(i?.error||i?.message||`115 app share snap status=${s.status}`);return(Array.isArray(i?.data?.list)?i.data.list:[]).map(o=>({fid:String(o?.fid||o?.file_id||""),name:String(o?.fn||o?.file_name||o?.name||""),size:Number(o?.fs||o?.file_size||o?.size||0),sha1:rf(o?.sha1||o?.sha||o?.file_sha1),raw:o})).filter(o=>o.fid)}async function _un({shareCode:e,receiveCode:t,dirID:r=""},n=""){let s=[],i=async(a,o="")=>{try{let c=0,u=9999,l=[];for(;;){let A=(await ve.get("https://webapi.115.com/share/snap",{params:{share_code:e,receive_code:t,cid:a,limit:String(u),offset:String(c)},timeout:15e3})).data?.data?.list||[];if(A.length===0||(l.push(...A),A.lengthl4t(y?.n)&&!rf(y?.sha1||y?.sha||y?.file_sha1)))try{let y=await Fj(e,t,a,n),A=new Map(y.map(E=>[String(E.fid),E]));for(let E of l){let v=A.get(String(E?.fid||E?.file_id||""));v&&(!E.n&&v.name&&(E.n=v.name),!E.s&&v.size&&(E.s=v.size),rf(E.sha1||E.sha||E.file_sha1)||(E.sha1=v.sha1))}}catch(y){console.warn("[115 share][app snap] SHA1 metadata supplement failed:",y?.message||y)}let f=[],h=[];for(let y of l)y.fc===1?f.push(y):y.fc===0&&h.push(y);let p=[],m=[];for(let y of f)l4t(y.n)?p.push({...y,shareCode:e,receiveCode:t,parentCid:String(a||"")}):vt(y.n)&&m.push(y);for(let y of p){let A=Ir(y.n,m,E=>E.n);A?.fid&&(y.subtitle={fid:A.fid})}let _=Kt(p);s.push(..._);let g=h.map(y=>i(y.cid,o+(o?"/":"")+y.n));await Promise.all(g)}catch(c){console.error("\u83B7\u53D6115\u6587\u4EF6\u5217\u8868\u5931\u8D25:",c.message)}};return await i(r||e,""),s}async function cp(e){h4t||(h4t=!0)}async function b4t(e,t){try{t&&await cp(t);let r=dun(e);if(!r)return[];let n=t?await Xa(t.server):"",s=await _un(r,n);if(!s?.length)return[];let i=await ht("115"),a=s.map(c=>({vod_id:Ot([r.shareCode,r.receiveCode,c.fid,c.subtitle?.fid||""],{structured:!0}),vod_name:c.n,vod_size:c.s})),o=Zd(ir[115].original,Ta(i,a));if(t&&await VE(t.server)){let c=s.map(l=>({vod_id:Ot(["rapid-share",r.shareCode,r.receiveCode,l.fid,l.subtitle?.fid||"","bin",l.n,l.s,rf(l.sha1||l.sha||l.file_sha1),l.pc||l.pick_code||"",l.parentCid||""],{structured:!0}),vod_name:l.n,vod_size:l.s})),u=Fg("\u79D2\u4F20123",c);u&&o.push(...Zd(ir[115].rapid123,[u]))}return o}catch(r){return console.error("115\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",r),[]}}async function nRe(e,t){try{await cp(e);let r=e.body.id,n=await Xa(e.server),s=Mr(r);if(s[0]==="rapid-share"){let[,d,f,h,,,p,m,_,g,y]=s,A=await jE(e.server,{fileId:h,name:p,size:Number(m||0),sha1:_,pickCode:g});if(A.mode==="invalid_metadata"&&y)try{let I=(await Fj(d,f,y,n)).find(T=>String(T.fid)===String(h));I&&(A=await jE(e.server,{fileId:h,name:p||I.name,size:Number(m||I.size||0),sha1:_||I.sha1,pickCode:g}))}catch(b){console.warn("[115 share][downlist] rapid metadata lookup failed:",b?.message||b)}if(!A.success||!A.downloadUrl)return Wr(A.message||"115\u2192\u79D2\u4F20123\u5931\u8D25",{mode:A.mode,downloaded:!1,uploaded:!1});let E=[],v=VT(A.downloadUrl);return v?Xs({parse:v.parse,urls:v.url,subtitles:E,extra:{rapidTransfer:{mode:A.mode,downloaded:!1,uploaded:!1,cleaned:A.cleaned===!0}}}):Wr("\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u64AD\u653E\u5730\u5740\u65E0\u6548")}let{shareCode:i,receiveCode:a,fileId:o,subtitleId:c=""}=Mr(r,{fieldOrder:["shareCode","receiveCode","fileId","subtitleId"]}),u=await R4t(i,a,o,n);if(!u)return Wr("115 \u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25");let l=[];if(c){let d=encodeURIComponent(Ot([a,c],{structured:!0})),f=lx(e,"115","subt",i,d,".bin");l.push(z1e({url:f,name:"\u5916\u6302\u5B57\u5E55",format:"bin"}))}return Xs({parse:0,urls:["\u539F\u753B",u],subtitles:l,header:{"User-Agent":sRe,Cookie:n,Referer:"https://115.com/",Origin:"https://115.com"}})}catch(r){return console.error("115\u64AD\u653E\u5931\u8D25:",r),console.error("\u9519\u8BEF\u8BE6\u60C5:",r.stack),Wr("115 \u64AD\u653E\u5931\u8D25")}}async function I4t(e,t){try{await cp(e);let{site:r,flag:n,shareId:s,fileId:i}=e.params;if(r!=="115"||n!=="subt")return;let{receiveCode:a,subtitleFileId:o}=Mr(String(i||""),{fieldOrder:["receiveCode","subtitleFileId"]});if(!s||!a||!o)return t.code(400),"Invalid subtitle parameters";let c=await Xa(e.server),u=await R4t(s,a,o,c);if(!u)return t.code(404),"Subtitle not found";t.redirect(u)}catch(r){return console.error("115\u5B57\u5E55\u4EE3\u7406\u5931\u8D25:",r),t.code(500),"Subtitle proxy error"}}async function R4t(e,t,r,n){return await $j(e,t,r,n,{legacyString:!0})}async function $j(e,t,r,n,s={}){if(!n)return s.legacyString?null:{url:"",msg:"115 Cookie \u7F3A\u5931"};if(!e||!t||!r)return s.legacyString?null:{url:"",msg:"115 \u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let i=`data=${encodeURIComponent(S4t(`{"share_code":"${e}","receive_code":"${t}","file_id":"${r}"}`))}`,a=await hun("https://proapi.115.com/app/share/downurl","POST",{"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(i),Cookie:n,"User-Agent":sRe,Referer:"https://115.com/",Origin:"https://115.com"},i);if(a?.error)return a.error.includes?.("\u767B\u5F55")&&en.toast("115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),s.legacyString?null:{url:"",msg:a.error};if(!a||typeof a!="object")return s.legacyString?null:{url:"",msg:"115 \u5206\u4EAB\u63A5\u53E3\u54CD\u5E94\u5F02\u5E38"};if(!a.data){let f=a?.msg||a?.message||a?.error_msg||a?.errno||a?.errcode||"115 \u5206\u4EAB\u63A5\u53E3\u672A\u8FD4\u56DE data \u5B57\u6BB5";return console.warn("[115 share][down] missing data, raw=%s",JSON.stringify(a).slice(0,300)),s.legacyString?null:{url:"",msg:String(f)}}let o=JSON.parse(T4t(a.data)),c=o&&typeof o=="object"?Object.keys(o).find(f=>/^\d+$/.test(f)):"",u=c?o[c]:o,l=u?.url?.url||o?.url?.url||"";if(!l)return console.error("115\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25:",o),s.legacyString?null:{url:"",msg:o?.error||"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"};let d={url:l,cookie:n,fileId:c||String(u?.file_id||u?.fid||r||""),fileName:String(u?.file_name||u?.name||""),fileSize:Number(u?.file_size||u?.size||0),pickCode:String(u?.pick_code||u?.pickcode||u?.pc||""),sha1:String(u?.sha1||u?.sha||u?.file_sha1||"").toLowerCase()};return s.legacyString?l:d}catch(i){return console.error("[115 share][down] error:",i?.message||i),s.legacyString?null:{url:"",msg:`115 \u5206\u4EAB\u63A5\u53E3\u5F02\u5E38: ${i?.message||i}`}}}async function Tx(e,t="0",r=1){if(!e)return{list:[],count:0};let s=(Math.max(1,Number.parseInt(r,10)||1)-1)*p4t,i=`https://webapi.115.com/files?aid=&cid=${encodeURIComponent(t||"0")}&o=user_ptime&asc=0&offset=${s}&show_dir=1&limit=${p4t}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let o=(await ve.get(i,{headers:{...Aun,Cookie:e},timeout:15e3}))?.data;if(o?.state)return{list:Array.isArray(o.data)?o.data:[],count:Number.parseInt(o.count,10)||0};console.warn("[115 own][list] non-state response, raw=%s",JSON.stringify(o).slice(0,300))}catch(a){console.error("[115 own] list error:",a?.message||a)}return{list:[],count:0}}async function bx(e,t){let r=String(t||"").trim();if(!e)return{url:"",msg:"115 Cookie \u7F3A\u5931"};if(!r)return{url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,s=`data=${encodeURIComponent(S4t(JSON.stringify({pickcode:r})))}`;try{let i=await ve.post(n,s,{headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":sRe,Referer:"https://115.com/",Origin:"https://115.com",Cookie:e},timeout:15e3,validateStatus:()=>!0}),a=i?.data;if(!a||a.error)return{url:"",msg:a?.error||`115 \u63A5\u53E3\u8FD4\u56DE status=${i?.status}`};if(typeof a!="object"||!a.data)return{url:"",msg:a?.msg||a?.message||a?.error_msg||"115 \u63A5\u53E3\u672A\u8FD4\u56DE data \u5B57\u6BB5"};let o;try{o=JSON.parse(T4t(a.data))}catch(h){return console.warn("[115 own][down] decrypt failed:",h?.message),{url:"",msg:"115 \u89E3\u5BC6\u5931\u8D25"}}let c=o&&typeof o=="object"?Object.keys(o)[0]:"",u=c?o[c]:null,l=u?.url?.url||o?.url?.url||"";if(!l)return console.warn("[115 own][down] decoded missing url, raw=%s",JSON.stringify(o).slice(0,300)),{url:"",msg:"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"};let d=Eun(e,i.headers?.["set-cookie"]),f=c&&/^\d+$/.test(c)?c:"";return{url:l,cookie:d,fileId:f,fileName:String(u?.file_name||u?.name||""),fileSize:Number(u?.file_size||u?.size||0),pickCode:String(u?.pick_code||u?.pickcode||u?.pc||r),sha1:String(u?.sha1||u?.sha||u?.file_sha1||"").toLowerCase()}}catch(i){return console.error("[115 own][down] error:",i?.message||i),{url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${i?.message||i}`}}}function Eun(e,t){if(!t)return e;let r=Array.isArray(t)?t:[t],n=new Map;for(let s of String(e||"").split(";").map(i=>i.trim()).filter(Boolean)){let i=s.indexOf("=");i>0&&n.set(s.slice(0,i).trim(),s.slice(i+1))}for(let s of r){let i=String(s||"").split(";")[0].trim(),a=i.indexOf("=");if(a<=0)continue;let o=i.slice(0,a).trim(),c=i.slice(a+1);if(o){if(/expires=thu, 01 jan 1970/i.test(String(s))){n.delete(o);continue}n.set(o,c)}}return Array.from(n.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}async function C4t(e){if(!e)throw new Error("115 Cookie required");let t="https://proapi.115.com/app/uploadinfo";try{let n=(await ve.post(t,"",{headers:{Cookie:e,"User-Agent":"Mozilla/5.0 115disk/27.0.5.7","Content-Type":"application/x-www-form-urlencoded"},timeout:1e4}))?.data;if(!n||n.state===!1)throw new Error(n?.error||"\u83B7\u53D6 userkey \u5931\u8D25");return{userId:n.user_id,userKey:n.userkey}}catch(r){throw console.error("[115][getUserKey] error:",r?.message||r),r}}async function x4t(e,t){let r=await bx(e,t);if(!r.url)throw new Error(r.msg||"\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25");return{url:r.url,cookie:r.cookie,fileId:r.fileId}}async function iRe(e,t){if(!e||!t)return;let r="https://webapi.115.com/rb/delete",n=`fid=${t}`;try{let i=(await ve.post(r,n,{headers:{Cookie:e,"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 115disk/27.0.5.7"},timeout:1e4}))?.data;(!i||!i.state)&&console.warn("[115][deleteFile] failed:",i?.error||"unknown")}catch(s){console.warn("[115][deleteFile] error:",s?.message||s)}}var m4t,g4t,lun,fun,d4t,_4t,A4t,gun,h4t,Aun,sRe,p4t,GE=ae(()=>{ws();Pr();jT();m4t=require("http"),g4t=require("https");Hr();ua();Wc();Hd();wi();Xc();$l();y0();Oj();$4();qg();lun=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/;fun=new Set(["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso","rmvb","rm","m4v","f4v","m4a"]);d4t=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),_4t=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,A4t=0x10001n;gun={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};h4t=!1;Aun={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"},sRe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",p4t=115});function Hj(e){return{"User-Agent":yun,Cookie:e,Referer:"https://115.com/",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"}}function L4t(e){if(!e)return"";let t=String(e).match(/UID=([^;\s]+)/i);if(!t)return"";let r=t[1],n=r.match(/^(\d+)/);return n?n[1]:r}function M4t(e){if(!e)return"";let t=String(e).match(/xt=urn:btih:([A-Za-z0-9]+)/i);return t?t[1].toLowerCase():""}function Iun(e){if(!e)return"";let t=String(e).match(/[&?]dn=([^&]+)/i);if(!t)return"";try{return decodeURIComponent(t[1])}catch{return t[1]}}function Run(e){return String(e||"").trim()}async function k4t(e){let t=await ve.get(vun,{headers:Hj(e),timeout:15e3,validateStatus:()=>!0}),r=t?.data;if(!r||r.state===!1)throw new Error(`115 \u79BB\u7EBF space \u5931\u8D25: ${r?.error||r?.error_msg||t?.status}`);let n=r.sign||r.data?.sign,s=r.time||r.data?.time;if(!n||!s)throw new Error("115 \u79BB\u7EBF space \u54CD\u5E94\u7F3A\u5C11 sign/time");return{sign:n,time:String(s)}}async function Cun(e,t){let r=`${bun}?aid=&cid=${encodeURIComponent(t||"0")}&o=user_ptime&asc=0&offset=0&show_dir=1&limit=115&snap=0&natsort=1&format=json`,s=(await ve.get(r,{headers:Hj(e),timeout:15e3,validateStatus:()=>!0}))?.data;return s?.state?Array.isArray(s.data)?s.data:[]:[]}async function B4t(e,t="0"){if(!e)return[];let r=await Cun(e,t),n=[];for(let s of r){if(Number(s?.iv)===1||Number(s?.fc)!==0)continue;let i=String(s.cid||"");i&&n.push({cid:i,name:String(s.n||s.name||i),has_children:Number(s?.ns)>0||Number(s?.fc)===0})}return n}async function U4t(e,t,r={}){let{savePath:n="0",pollAttempts:s=6,pollIntervalMs:i=1500}=r;if(!e)throw new Error("115 cookie \u7F3A\u5931");let a=L4t(e);if(!a)throw new Error("cookie \u4E2D\u6CA1\u6709 UID \u5B57\u6BB5");console.log(`[115-offline] \u5F00\u59CB\u6DFB\u52A0\u79BB\u7EBF\u4EFB\u52A1\uFF0CsavePath=${n}, pollAttempts=${s}`);let{sign:o,time:c}=await k4t(e),u=new URLSearchParams;u.set("url",Run(t)),u.set("uid",a),u.set("sign",o),u.set("time",c),u.set("wp_path_id",String(n||"0"));let l=async()=>(await ve.post(Sun,u.toString(),{headers:{...Hj(e),"Content-Type":"application/x-www-form-urlencoded"},timeout:3e4,validateStatus:()=>!0}))?.data,d=await l();if(!d)throw new Error("115 \u79BB\u7EBF\u6DFB\u52A0\u65E0\u54CD\u5E94");let f=Number(d.errcode)===10008||/任务已存在/i.test(String(d.error_msg||d.error||""));if(d.state===!1&&!f)throw new Error(`115 \u79BB\u7EBF\u6DFB\u52A0\u5931\u8D25: ${d.error_msg||d.error||d.errcode}`);if(console.log(`[115-offline] \u79BB\u7EBF\u4EFB\u52A1\u6DFB\u52A0\u6210\u529F\uFF0Cstate=${d.state}, isDuplicate=${f}, files\u6570\u91CF=${d.files?.length||0}`),d.files&&d.files.length>0){let p=O4t(d.files);console.log(`[115-offline] \u7B2C\u4E00\u6B21\u8C03\u7528\u5373\u8FD4\u56DE ${d.files.length} \u4E2A\u6587\u4EF6\uFF0C\u79CD\u5B50\u76EE\u5F55\u540D: "${p}"`),N4t("\u7B2C\u4E00\u6B21\u8FD4\u56DE",d.files);let m=await aRe(e,n,p,{...r,magnet:t,taskFiles:d.files});if(m.length>0)return console.log(`[115-offline] \u7ACB\u5373\u627E\u5230 ${m.length} \u4E2A\u5A92\u4F53\u6587\u4EF6`),m}console.log(`[115-offline] files\u4E3A\u7A7A\uFF0C\u5F00\u59CB\u8F6E\u8BE2 add_task_url \u63A5\u53E3 ${s} \u6B21\uFF0C\u95F4\u9694 ${i}ms`);for(let p=0;p0){let m=O4t(d.files);console.log(`[115-offline] \u8F6E\u8BE2\u6210\u529F\uFF0C\u63A5\u53E3\u8FD4\u56DE ${d.files.length} \u4E2A\u6587\u4EF6\uFF0C\u79CD\u5B50\u76EE\u5F55\u540D: "${m}"`),N4t("\u8F6E\u8BE2\u8FD4\u56DE",d.files);let _=await aRe(e,n,m,{...r,magnet:t,taskFiles:d.files});if(_.length>0)return console.log(`[115-offline] \u627E\u5230 ${_.length} \u4E2A\u5A92\u4F53\u6587\u4EF6`),_}let h=!!r.allowFallbackScan;if((n||n==="0")&&h){console.log(`[115-offline] \u8F6E\u8BE2 ${s} \u6B21\u540E\u4ECD\u672A\u83B7\u53D6\u5230\u6587\u4EF6\u5217\u8868\uFF0C\u5C1D\u8BD5\u626B\u63CF savePath=${n}`);let p=await aRe(e,n,"",{...r,magnet:t});if(p.length>0)return p}return console.warn(`[115-offline] \u8F6E\u8BE2 ${s} \u6B21\u540E\u4ECD\u672A\u83B7\u53D6\u5230\u6587\u4EF6\u5217\u8868${h?"":"\uFF0C\u8DF3\u8FC7 savePath \u9012\u5F52\u626B\u63CF"}`),[]}function xun(e){return Array.isArray(e)?e.slice(0,5).map(t=>{let r={};for(let n of["name","n","file_name","file_size","size","s","pick_code","pc","cid","fid","file_id","wanted","path","wp_path","sha1"])t?.[n]!==void 0&&(r[n]=t[n]);return r}):[]}function N4t(e,t){if(!(!Array.isArray(t)||t.length===0))try{let r=Object.keys(t[0]||{}).join(",");console.log(`[115-offline] ${e} files[0] keys=${r}, sample=${JSON.stringify(xun(t))}`)}catch{}}function O4t(e){if(!Array.isArray(e))return"";let t="";for(let r of e){let n=String(r?.name||r?.n||r?.file_name||"");if(!n)continue;let s=n.indexOf("/");if(s>0)return n.slice(0,s);let i=Vj(n);!t&&Ix(i)&&(t=i)}return t}function wun(e){let t=Iun(e);return t?Vj(t).replace(/\.[^.]+$/,"").trim():""}function D4t(e){return String(e||"").trim().toLowerCase().replace(/[\s._-]+/g,"").replace(/[\[\]【】()()]/g,"")}function Nun(e,t){let r=D4t(e),n=D4t(t);return!!(r&&n&&(r===n||r.includes(n)||n.includes(r)))}function Ix(e){if(!e)return!1;let t=e.lastIndexOf(".");return t<0?!1:Oun.has(e.slice(t+1).toLowerCase())}function Vj(e){let t=String(e||"").trim();if(!t)return"";let r=t.split("/").filter(Boolean);return r.length?r[r.length-1]:t}function Dun(e){let t=Number(e?.file_size??e?.size??e?.s??0);return Number.isFinite(t)&&t>0?t:0}function Pun(e){if(!Array.isArray(e))return[];let t=[],r=new Set;for(let n of e){let s=Vj(n?.name||n?.n||n?.file_name);if(!Ix(s))continue;let i=Dun(n),a=`${s}::${i||""}`;r.has(a)||(r.add(a),t.push({name:s,size:i}))}return t}function P4t(e,t){if(!t?.length)return null;let r=Vj(e?.n||e?.name||e?.file_name),n=Number(e?.s||e?.size||e?.file_size||0);return t.find(s=>s.name===r&&(!s.size||!n||Number(s.size)===Number(n)))||null}function Lun(e){return[...e].sort((t,r)=>{let n=Number(t?.upt||t?.te||t?.tp||t?.user_ptime||t?.ptime||t?.mtime||0);return Number(r?.upt||r?.te||r?.tp||r?.user_ptime||r?.ptime||r?.mtime||0)-n})}async function Mun(e,t,r){if(!r?.length||!t?.length)return null;let n=null,s=Lun(t);for(let i of s){let a=String(i?.cid||"");if(!a)continue;let o=await F4t(e,[],r,[a]);if(!o.length)continue;let c=o.length;if((!n||c>n.score)&&(n={dir:i,found:o,score:c},c>=r.length))break}return n}async function F4t(e,t,r,n=[]){if(!r?.length)return[];let s=new Map,i=Array.isArray(n)?[...n].filter(Boolean):[];for(let o of t){if(Number(o?.fc)===0){o?.cid&&i.push(String(o.cid));continue}if(Number(o?.fc)===1&&Ix(String(o?.n||""))){let c=P4t(o,r);if(c){let u=`${c.name}::${c.size||""}`;if(!s.has(u)){let l=qj(o);l.pick_code&&s.set(u,l)}}}}let a=new Set;for(;i.length>0&&s.sizes.get(`${o.name}::${o.size||""}`)).filter(Boolean)}async function aRe(e,t,r,n={}){let s=await cRe(e,t);if(s.length===0)return console.log(`[115-offline] savePath=${t} \u4E0B\u6CA1\u6709\u4EFB\u4F55\u6587\u4EF6\u6216\u76EE\u5F55`),[];let i=s.filter(d=>Number(d?.fc)===0);console.log(`[115-offline] savePath=${t} \u4E0B\u5171\u6709 ${i.length} \u4E2A\u76EE\u5F55`);let a="";if(r){let d=s.find(f=>Number(f?.fc)===0&&String(f?.n||"").trim()===r);d?(a=String(d.cid||""),console.log(`[115-offline] \u7CBE\u786E\u5339\u914D\u5230\u76EE\u5F55: "${d.n||d.name}", cid=${a}`)):console.log(`[115-offline] \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D\u7684\u76EE\u5F55: "${r}"`)}if(a)return await oRe(e,a);let o=wun(n.magnet);if(o){let d=i.filter(f=>Nun(f?.n||f?.name,o));if(d.length>0){let f=d[0];console.log(`[115-offline] \u6309\u78C1\u529B dn \u5339\u914D\u5230\u76EE\u5F55: "${f.n||f.name}", cid=${f.cid}`);let h=await oRe(e,String(f.cid||""));if(h.length>0)return h}else console.log(`[115-offline] \u672A\u6309\u78C1\u529B dn \u5339\u914D\u5230\u76EE\u5F55: "${o}"`)}let c=Pun(n.taskFiles);if(c.length>0){console.log(`[115-offline] \u672A\u627E\u5230\u79CD\u5B50\u76EE\u5F55\uFF0C\u6309\u63A5\u53E3\u6587\u4EF6\u540D\u53CD\u63A8\u771F\u5B9E\u76EE\u5F55 ${c.length} \u4E2A\u5A92\u4F53\u6587\u4EF6`);let d=await Mun(e,i,c);if(d?.found?.length)return console.log(`[115-offline] \u6309\u63A5\u53E3\u6587\u4EF6\u540D\u5339\u914D\u5230\u76EE\u5F55: "${d.dir.n||d.dir.name}", \u547D\u4E2D ${d.found.length}/${c.length}`),d.found;let f=await F4t(e,s,c);return f.length>0?f:(console.log("[115-offline] \u6309\u63A5\u53E3\u6587\u4EF6\u540D\u7CBE\u786E\u67E5\u627E\u672A\u547D\u4E2D\uFF0C\u4E0D\u626B\u63CF\u65E0\u5173\u76EE\u5F55"),[])}if(!n.allowFallbackScan)return console.log("[115-offline] \u672A\u627E\u5230\u79CD\u5B50\u76EE\u5F55\u4E14\u65E0\u63A5\u53E3\u6587\u4EF6\u540D\uFF0C\u8DF3\u8FC7\u9012\u5F52\u67E5\u627E\u5A92\u4F53\u6587\u4EF6"),[];console.log("[115-offline] \u672A\u627E\u5230\u79CD\u5B50\u76EE\u5F55\u4E14\u65E0\u63A5\u53E3\u6587\u4EF6\u540D\uFF0C\u5C1D\u8BD5\u9012\u5F52\u67E5\u627E\u5A92\u4F53\u6587\u4EF6");let u=s.filter(d=>Number(d?.fc)===1&&Ix(String(d?.n||"")));if(u.length>0)return u.map(qj).filter(d=>d.pick_code);let l=i.map(d=>String(d.cid||"")).filter(Boolean);for(let d of l){let f=await oRe(e,d);if(f.length>0)return f}return console.log("[115-offline] \u9012\u5F52\u626B\u63CF\u6240\u6709\u5B50\u76EE\u5F55\u540E\u4ECD\u672A\u627E\u5230\u5A92\u4F53\u6587\u4EF6"),[]}async function oRe(e,t){let r=[t],n=[],s=new Set;for(;r.length>0;){let i=r.shift();if(s.has(i))continue;s.add(i);let a=await cRe(e,i);for(let o of a){if(Number(o?.fc)===0){o?.cid&&r.push(String(o.cid));continue}if(Number(o?.fc)===1&&Ix(String(o?.n||""))){let c=qj(o);c.pick_code&&n.push(c)}}}return n}async function cRe(e,t){let r=[];for(let n=1;n<=30;n++){let{list:s,count:i}=await Tx(e,t,n);if(!Array.isArray(s)||s.length===0||(r.push(...s),r.length>=i))break}return r}function qj(e){return{file_id:String(e?.fid||e?.cid||e?.file_id||""),file_name:String(e?.n||e?.name||e?.file_name||""),file_size:Number(e?.s||e?.size||e?.file_size||0),pick_code:String(e?.pc||e?.pick_code||"")}}function kun(e){return new Promise(t=>setTimeout(t,Math.max(0,e)))}async function $4t(e,{deleteSource:t=!1}={}){if(!e)throw new Error("115 cookie \u7F3A\u5931");let r=L4t(e);if(!r)throw new Error("cookie \u4E2D\u6CA1\u6709 UID \u5B57\u6BB5");let{sign:n,time:s}=await k4t(e),i=new URLSearchParams;i.set("flag",t?"5":"0"),i.set("uid",r),i.set("sign",n),i.set("time",s);let a=await ve.post(Tun,i.toString(),{headers:{...Hj(e),"Content-Type":"application/x-www-form-urlencoded"},timeout:3e4,validateStatus:()=>!0}),o=a?.data;if(!o)throw new Error(`115 \u6E05\u7A7A\u79BB\u7EBF\u65E0\u54CD\u5E94 status=${a?.status}`);if(o.state===!1)throw new Error(`115 \u6E05\u7A7A\u79BB\u7EBF\u5931\u8D25: ${o.error_msg||o.error||o.errcode}`);return{ok:!0}}var yun,vun,Sun,Tun,bun,Oun,uRe=ae(()=>{Pr();GE();yun="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",vun="https://115.com/?ct=offline&ac=space",Sun="https://115.com/web/lixian/?ct=lixian&ac=add_task_url",Tun="https://115.com/web/lixian/?ct=lixian&ac=task_clear",bun="https://webapi.115.com/files";Oun=new Set(["mp4","mkv","mov","avi","wmv","flv","webm","m2ts","ts","rmvb","rm","m4v","f4v","3gp","mpeg","iso"])});function $un(e){return{Cookie:e,"User-Agent":"Mozilla/5.0 115disk/27.0.5.7",Referer:"https://115.com/",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded"}}async function V4t(e,t,r){let n=await ve.post(t,r,{headers:$un(e),timeout:3e4,validateStatus:()=>!0}),s=n?.data;if(!s||typeof s!="object")throw new Error(`115 \u56DE\u6536\u7AD9\u63A5\u53E3\u54CD\u5E94\u5F02\u5E38 status=${n?.status}`);if(!s.state)throw new Error(s.error||s.error_msg||`115 \u56DE\u6536\u7AD9\u64CD\u4F5C\u5931\u8D25 (errcode=${s.errcode})`);return s}async function j4t(e,t){let r=[];for(let n=1;n<=Fun;n++){let{list:s,count:i}=await Tx(e,t,n);if(!Array.isArray(s)||s.length===0||(r.push(...s),r.length>=i))break}return r}async function qun(e){let r=(await j4t(e,"0")).find(n=>n.fid===void 0&&String(n.n||"")===H4t);return r?{cid:String(r.cid),name:String(r.n)}:null}async function Hun(e,t){let r=[String(t)],n=new Set,s=[];for(;r.length>0;){let i=r.shift();if(n.has(i))continue;n.add(i);let a=await j4t(e,i);for(let o of a)o.fid!==void 0?s.push(String(o.fid)):o.cid&&r.push(String(o.cid))}return s}async function Vun(e,t){let r=0;for(let n=0;ni.set(`fid[${o}]`,a));try{await V4t(e,Bun,i.toString())}catch(a){throw new Error(`\u79FB\u5165\u56DE\u6536\u7AD9\u5931\u8D25 (\u5DF2\u6210\u529F ${r}/${t.length}): ${a?.message||a}`)}r+=s.length}return r}async function K4t(e,{doRecent:t=!1,doRecycle:r=!1}={}){if(!e)throw new Error("115 cookie \u7F3A\u5931");if(!t&&!r)throw new Error("\u672A\u9009\u62E9\u6E05\u7406\u9879");let n=null;if(t){let i=await qun(e);if(!i)n={found:!1,name:H4t,moved:0};else{let a=await Hun(e,i.cid),o=a.length?await Vun(e,a):0;n={found:!0,name:i.name,moved:o}}}let s=null;return r&&(await V4t(e,Uun,""),s={cleared:!0}),{recent:n,recycle:s}}var Bun,Uun,H4t,q4t,Fun,G4t=ae(()=>{Pr();GE();Bun="https://webapi.115.com/rb/delete",Uun="https://webapi.115.com/rb/clean",H4t="\u6700\u8FD1\u63A5\u6536",q4t=50,Fun=50});function jun(e,t){let r=zi(e,{...t,useMultithread:!0,timeout:3e4,maxRetries:6});return{chunkSize:r.chunkSize,poolSize:r.poolSize}}function Y4t(e={}){let t=e&&typeof e=="object"?e:{},r=t.stable&&typeof t.stable=="object"?t.stable:t;return jun(r,z4t)}function Kun(e){return!(!e||typeof e!="object"||typeof e.chunkSize!="number"||!Number.isFinite(e.chunkSize)||typeof e.poolSize!="number"||!Number.isFinite(e.poolSize)||!Number.isInteger(e.chunkSize)||!Number.isInteger(e.poolSize)||e.chunkSize<_s.minChunkSize||e.chunkSize>_s.maxChunkSize||e.poolSize<_s.minPoolSize||e.poolSize>_s.maxPoolSize)}function Q4t(e={}){return Kun(e)?Y4t(e):null}async function jj(e){let t=await e.db.getObjectDefault(lRe,z4t);return Y4t(t)}var lRe,z4t,dRe=ae(()=>{Zu();lRe="/guangya_proxy_settings",z4t=Object.freeze({chunkSize:1024*1024,poolSize:16})});function Wj(e){let t=qe(e).toLowerCase().replace(/^wdi10\./,"").replace(/x+$/g,"").replace(/[^0-9a-f]/g,"");return t.length===32?t:""}function Jun(){try{return V4.default.randomBytes(16).toString("hex")}catch{return gRe}}function _Re(e){let t=Wj(e)||gRe;return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Yj,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}function lBt(e="",t=""){let r={Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:"https://www.guangyapan.com",Referer:"https://www.guangyapan.com/",Did:Wj(t)||gRe,Dt:"4"};return e&&(r.Authorization=`Bearer ${e}`),r}async function zE(e){let t=await e.db.getObjectDefault("/guangya",{});return{accessToken:qe(t?.accessToken),refreshToken:qe(t?.refreshToken),deviceId:Wj(t?.deviceId)||Jun(),updatedAt:qe(t?.updatedAt)}}async function ARe(e,{reveal:t=!1}={}){let r=await zE(e);return t?r:{deviceId:r.deviceId,updatedAt:r.updatedAt,loggedIn:!!(r.accessToken||r.refreshToken)}}async function j4(e,t={}){let r=await zE(e),n={accessToken:qe(t.accessToken??t.access_token??r.accessToken),refreshToken:qe(t.refreshToken??t.refresh_token??t.cookie??r.refreshToken),deviceId:Wj(t.deviceId??t.device_id??r.deviceId)||r.deviceId,updatedAt:new Date().toISOString()};return await e.db.push("/guangya",n),n}async function dBt(e){let t=await zE(e),r=await Xe.post(`${mRe}/v1/auth/device/code`,{scope:"user",client_id:Yj},{headers:_Re(t.deviceId),validateStatus:()=>!0}),n=r?.data||{};if(r.status<200||r.status>=300||!n.device_code)throw new Error(qe(n.error_description||n.message||`HTTP ${r.status}`));return{deviceCode:qe(n.device_code),verificationUrl:qe(n.verification_uri_complete||n.verification_url),expiresIn:Number(n.expires_in||120),interval:Math.max(1,Number(n.interval||2)||2),deviceId:t.deviceId}}function Zun(e={}){let t=e?.data||{},r=qe(t.access_token||t.accessToken),n=qe(t.refresh_token||t.refreshToken);if(Number(e?.status)>=200&&Number(e?.status)<300&&(r||n))return{status:"CONFIRMED",message:"\u626B\u7801\u6210\u529F",accessToken:r,refreshToken:n};let s=qe(t.error||t.code).toLowerCase(),i=qe(t.error_description||t.message||t.msg);return s==="authorization_pending"||s==="slow_down"?{status:"NEW",message:s==="slow_down"?"\u7B49\u5F85\u626B\u7801\u786E\u8BA4\uFF0C\u8BF7\u7A0D\u5019":"\u7B49\u5F85\u626B\u7801\u786E\u8BA4"}:s==="access_denied"?{status:"CANCELED",message:i||"\u5DF2\u53D6\u6D88\u767B\u5F55"}:s==="expired_token"||s==="invalid_grant"||s.includes("expired")?{status:"EXPIRED",message:i||"\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F"}:{status:"FAILED",message:i||s||`\u5149\u9E2D\u767B\u5F55\u72B6\u6001\u68C0\u67E5\u5931\u8D25 HTTP ${e?.status||500}`}}async function fBt(e,t={},{persist:r=!0}={}){let n=await Xe.post(`${mRe}/v1/auth/token`,{grant_type:Gun,device_code:qe(t.deviceCode),client_id:Yj},{headers:_Re(t.deviceId),validateStatus:()=>!0}),s=Zun(n);if(s.status==="CONFIRMED")return r&&await j4(e,{accessToken:s.accessToken,refreshToken:s.refreshToken,deviceId:t.deviceId}),{status:s.status,message:r?"\u767B\u5F55\u6210\u529F\uFF0C\u8D26\u53F7\u4FE1\u606F\u5DF2\u4FDD\u5B58":"\u626B\u7801\u6210\u529F\uFF0C\u8BF7\u70B9\u51FB\u5165\u5E93\u4FDD\u5B58",accessToken:s.accessToken,refreshToken:s.refreshToken,deviceId:qe(t.deviceId)};if(s.status==="FAILED")throw new Error(s.message);return s}async function J4t(e){let t=await zE(e);if(!t.refreshToken)throw new Error("\u8BF7\u5148\u5728\u7F51\u76D8\u914D\u7F6E\u4E2D\u767B\u5F55\u5149\u9E2D");let n=(await Xe.post(`${mRe}/v1/auth/token`,{client_id:Yj,grant_type:"refresh_token",refresh_token:t.refreshToken},{headers:_Re(t.deviceId),validateStatus:()=>!0}))?.data||{},s=qe(n.access_token||n.accessToken);if(!s)throw new Error(qe(n.error_description||n.message||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"));return await j4(e,{accessToken:s,refreshToken:qe(n.refresh_token||n.refreshToken)||t.refreshToken,deviceId:t.deviceId}),s}async function rl(e,t,r,n=!0){let s=await zE(e);s.accessToken||(await J4t(e),s=await zE(e));let i=await Xe.post(`${sBt}${t}`,r,{headers:lBt(s.accessToken,s.deviceId),validateStatus:()=>!0}),a=i?.data||{},o=qe(a.msg||a.message||a.error);if((i.status===401||i.status===403||Number(a.code)===401||Number(a.code)===403||/token|unauthorized/i.test(o))&&n)return await J4t(e),rl(e,t,r,!1);if(i.status<200||i.status>=300||a.code!=null&&Number(a.code)!==0){let u=new Error(o||`\u5149\u9E2D\u63A5\u53E3\u5931\u8D25 HTTP ${i.status}`);throw u.name="GuangyaApiError",u.code=Number.isFinite(Number(a.code))?Number(a.code):0,u.httpStatus=Number(i.status||0),u.apiPath=t,u}return a.data||{}}function Rx(e){return Number(e?.resType)===2}function ERe(e){if(Number(e?.resType)!==1)return!1;let t=qe(e?.fileName||e?.name||e?.vod_name).toLowerCase(),r=qe(e?.ext).toLowerCase(),n=qe(e?.mineType||e?.mimeType).toLowerCase();return Number(e?.fileType)===2||n.startsWith("video/")||oBt.some(s=>r===s||t.endsWith(s))}function eln(e){return Number(e?.resType)!==1?!1:vt(qe(e?.fileName||e?.name||e?.vod_name))}function Xj(e={},t={}){let r=qe(e?.fileId||e?.id||e?.resId),n=qe(e?.fileName||e?.name||e?.vod_name)||"\u672A\u77E5",s=Number(e?.fileSize||e?.size||e?.vod_size||0)||0,i=qe(t.parentId??e?.parentId),a=qe(t.currentPath),o=qe(t.path)||[a,n].filter(Boolean).join("/"),c={...e,fileId:r,fileName:n,fileSize:s,name:n,vod_name:n,vod_size:s,parentId:i,path:o};return c.isFolder=Rx(c),c.isSubtitle=eln(c),c.isVideo=!c.isSubtitle&&ERe(c),c.subtitleExt=c.isSubtitle?tr(n):"",c}async function KT(e,t="",r=1,n=200){let s=Math.max(1,Number(r)||1),i={parentId:qe(t),pageSize:n,orderBy:3,sortType:1,fileTypes:[]};s>1&&(i.cursor=(s-1)*n);let a=await rl(e,"/nd.bizuserres.s/v1/file/get_file_list",i);return{list:(Array.isArray(a.list)?a.list:[]).map(c=>Xj(c,{parentId:qe(t)})),total:Number(a.total||0),cursor:qe(a.cursor),nextCursor:qe(a.nextCursor||a.next_cursor||a.cursor)}}async function hBt(e,t){let r=await rl(e,"/nd.bizuserres.s/v1/get_res_download_url",{fileId:qe(t)});return qe(r.signedURL||r.downloadUrl||r.url)}function tln(e={}){let t=qe(e?.signedURL||e?.signedUrl||e?.downloadUrl||e?.url);if(t)return t;let r=[e?.downloadInfo,e?.fileInfo,e?.resource,e?.normal,e?.data];for(let s of r){let i=qe(s?.signedURL||s?.signedUrl||s?.downloadUrl||s?.url);if(i)return i}let n=[e?.list,e?.urls,e?.downloadUrls,e?.resources];for(let s of n)if(Array.isArray(s))for(let i of s){let a=qe(typeof i=="string"?i:i?.signedURL||i?.signedUrl||i?.downloadUrl||i?.url);if(a)return a}return""}async function rln(e,t){let r=await rl(e,"/userres/v1/get_res_download_url",{fileId:qe(t)}),n=tln(r);if(!n)throw new Error("\u5149\u9E2D\u666E\u901A\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DE\u7B7E\u540D\u5730\u5740");return n}function Kj(e=""){return qe(e).toLowerCase().replace(/\.[a-z0-9]{2,6}$/i,"").replace(/[\s\[\]()()【】._\-]+/g,"")}async function nln(e,t=iBt,r=""){let s=(await KT(e,r,1,200)).list.find(c=>Rx(c)&&qe(c?.fileName)===t);if(s?.fileId)return qe(s.fileId);let i=[["/userres/v1/file/create_dir",{parentId:r,dirName:t}],["/userres/v1/file/create_dir",{parentId:r,fileName:t}],["/userres/v1/file/create_dir",{parentId:r,name:t}],["/nd.bizuserres.s/v1/file/create_dir",{parentId:r,dirName:t}]];for(let[c,u]of i)try{let l=await rl(e,c,u),d=qe(l.fileId||l.id||l.folderId||l.resId);if(d)return d}catch{}let o=(await KT(e,r,1,200)).list.find(c=>Rx(c)&&qe(c?.fileName)===t);if(o?.fileId)return qe(o.fileId);throw new Error(`\u521B\u5EFA\u5149\u9E2D\u8F6C\u5B58\u76EE\u5F55\u5931\u8D25: ${t}`)}async function Gj(e,t="",r=5e3){let n=[],s="",i=new Set;for(let a=0;a<100&&n.lengthXj(f,{parentId:qe(t)})));let l=qe(c.nextCursor||c.next_cursor||c.cursor||(Number(c.total||0)>n.length?n.length:"")),d=Number(c.total||0);if(!u.length||d>0&&n.length>=d||!l||i.has(l))break;i.add(l),s=l}return n.slice(0,r)}async function sln(e,t,{attempts:r=30,intervalMs:n=500}={}){if(t){for(let s=0;s0&&await new Promise(o=>setTimeout(o,n));let i=await rl(e,"/userres/v1/get_task_status",{taskId:qe(t)}),a=Number(i.status);if(a===2)return;if(a===3)throw new Error(qe(i?.detail?.msg||i?.message||"\u5149\u9E2D\u6587\u4EF6\u5220\u9664\u4EFB\u52A1\u5931\u8D25"))}throw new Error("\u5149\u9E2D\u6587\u4EF6\u5220\u9664\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6")}}async function pBt(e,t=[]){let r=[...new Set((Array.isArray(t)?t:[]).map(qe).filter(Boolean))],n=0;for(let s=0;sn?.fileId))}async function aln(e,t=aBt){let r=[],n="",s=new Set;for(let i=0;i<100;i+=1){let a={pageSize:100,status:t};n&&(a.cursor=n);let o=await rl(e,"/cloudcollection/v1/list_task",a),c=Array.isArray(o.list)?o.list:[];r.push(...c);let u=qe(o.nextCursor||o.next_cursor||o.cursor||(Number(o.total||0)>r.length?r.length:"")),l=Number(o.total||0);if(!c.length||l>0&&r.length>=l||!u||s.has(u))break;s.add(u),n=u}return r}async function mBt(e,{deleteFiles:t=!1}={}){let r=await aln(e),n=t?r.filter(i=>i?.fileDeleted!==!0).flatMap(i=>[i?.fileId,i?.targetFileId,...Array.isArray(i?.fileIds)?i.fileIds:[]]):[];r.length&&await rl(e,"/cloudcollection/v2/delete_task",{status:aBt});let s=t?await pBt(e,n):0;return{taskCount:r.length,fileCount:s}}function Z4t(e,t){let r=qe(t?.fileName),n=e.find(i=>qe(i?.fileName)===r);if(n)return n;let s=Kj(r);return s&&e.find(i=>{let a=Kj(i?.fileName);return a===s||a.includes(s)||s.includes(a)})||null}async function oln(e,t=[]){let r=(Array.isArray(t)?t:[]).map(f=>({shareId:qe(f?.shareId),fileId:qe(f?.fileId),code:qe(f?.code),fileName:qe(f?.fileName),fileSize:Number(f?.fileSize||0)||0,ext:qe(f?.ext||tr(f?.fileName))})).filter(f=>f.shareId&&f.fileId&&f.fileName);if(!r.length)throw new Error("\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u53C2\u6570\u4E0D\u5B8C\u6574");let n=r[0].shareId,s=r[0].code;if(r.some(f=>f.shareId!==n||f.code!==s))throw new Error("\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u6587\u4EF6\u4E0D\u5C5E\u4E8E\u540C\u4E00\u5206\u4EAB");let i=await nln(e,iBt);await iln(e,i);let a=await pRe({shareId:n,code:s}),o=await rl(e,"/userres/v1/restore_share",{accessToken:a,fileIds:[...new Set(r.map(f=>f.fileId))],parentId:i}),c=qe(o.taskId||o.task_id),u=[];for(let f=0;f<24;f+=1){if(f>0&&await new Promise(p=>setTimeout(p,500)),c)try{let p=await rl(e,"/userres/v1/get_task_status",{taskId:c});if(Number(p?.status)===3)throw new Error(qe(p?.detail?.msg||p?.message||"\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u4EFB\u52A1\u5931\u8D25"))}catch(p){if(f>=23)throw p}if(u=await Gj(e,i,5e3),r.filter(p=>Z4t(u,p)).length>=r.length)break}let l=u.slice(),d=r.map(f=>{let h=Z4t(l,f);if(h){let p=l.indexOf(h);p>=0&&l.splice(p,1)}return h?{...f,ownFile:Xj(h,{parentId:i})}:{...f,ownFile:null}});return{parentId:i,results:d}}function cln(e){let t=eBt.then(e,e);return eBt=t.catch(()=>{}),t}function tBt(e){let r=qe(e).match(Yun);if(!r)return null;let n="";try{let s=new URL(r[0]);n=qe(s.searchParams.get("code")||s.searchParams.get("pwd")),!n&&s.hash&&(n=qe(new URLSearchParams(s.hash.slice(1)).get("code")||s.hash.slice(1)))}catch{}return{url:r[0],shareId:r[1],code:n}}function yRe(e){if(typeof e=="string")return tBt(e);let t=qe(e?.shareId);return t?{url:qe(e?.url),shareId:t,code:qe(e?.code||e?.pwd||e?.password)}:tBt(e?.url||"")}async function zj(e,t,r=3){let n=await Xe.post(`${sBt}${e}`,t,{headers:lBt(),validateStatus:()=>!0}),s=n?.data||{};if(n.status<200||n.status>=300||Number(s.code||0)!==0){if(r>1&&(n.status===400||n.status===429||n.status>=500))return await new Promise(i=>setTimeout(i,150*(4-r))),zj(e,t,r-1);throw new Error(qe(s.msg||s.message||`\u5149\u9E2D\u5206\u4EAB\u63A5\u53E3\u5931\u8D25 HTTP ${n.status}`))}return s.data||{}}function uln(e){return V4.default.createHash("sha256").update(`${e.shareId} -${e.code||""}`).digest("hex").slice(0,32)}async function pRe(e,t=!1){let r=uln(e);if(!t){let a=W4t.get(r);if(a)return a}let n={shareId:e.shareId};e.code&&(n.code=e.code);let s=await zj("/userres/v1/get_share_access_token",n),i=qe(s.accessToken);return i&&W4t.set(r,i),i}async function K4(e,t="",r={}){let n=yRe(e);if(!n)throw new Error("\u5149\u9E2D\u5206\u4EAB\u94FE\u63A5\u65E0\u6548");let s=await pRe(n),i=Math.max(1,Number(r.page)||1),a=Math.max(1,Math.min(200,Number(r.pageSize)||200)),o=qe(r.currentPath),c={accessToken:s,parentId:qe(t),pageSize:a,orderBy:0,sortType:0},u=qe(r.cursor||(i>1?(i-1)*a:""));u&&(c.cursor=u);let l;try{l=await zj("/userres/v1/get_share_page_files_list",c)}catch(_){if(!/token|access|授权|登录/i.test(_?.message||""))throw _;let g=await pRe(n,!0);l=await zj("/userres/v1/get_share_page_files_list",{...c,accessToken:g})}let d=(Array.isArray(l.list)?l.list:[]).map(_=>Xj(_,{parentId:qe(t),currentPath:o})),f=Number(l.total||0),h=qe(l.nextCursor||l.next_cursor||l.cursor),p=(i-1)*a+d.length,m=d.length>0&&(f>0?p0?f:p+(m?a:0),nextCursor:m?h:"",hasMore:m,parentId:qe(t),currentPath:o}}async function lln(e,t=Wun,r=Xun){let n=yRe(e);if(!n)throw new Error("\u5149\u9E2D\u5206\u4EAB\u94FE\u63A5\u65E0\u6548");let s=[],i=[],a=[],o=[],c=new Set,u=!1;async function l(d="",f=0,h=""){if(f>t||s.length>=r||c.has(d||"__root__")){(f>t||s.length>=r)&&(u=!0);return}c.add(d||"__root__");let p=[],m=1;for(;m<=100;m+=1){let A=await K4(n,d,{page:m,pageSize:200,currentPath:h});if(p.push(...A.items),!A.hasMore||A.items.length===0)break}let _=p.filter(A=>A.isVideo),g=p.filter(A=>A.isSubtitle),y=p.filter(A=>A.isFolder);i.push(...g),a.push(...y);for(let A of Kt(_)){let E=ic(A.fileName,g,v=>v.fileName);if(s.push({...A,subtitles:E}),s.length>=r){u=!0;break}}s.length>=r||!y.length||await _0(y,async A=>{try{await l(A.fileId,f+1,A.path||[h,A.fileName].filter(Boolean).join("/"))}catch(E){o.push({path:A.path||A.fileName,message:E?.message||String(E)})}return!0},3)}return await l("",0,""),{matched:n,videos:Kt(s),subtitles:i,folders:a,truncated:u,errors:o}}function vRe(e=[]){return(Array.isArray(e)?e:[]).map(t=>({fileId:qe(t?.fileId||t?.id),fileName:qe(t?.fileName||t?.name),fileSize:Number(t?.fileSize||t?.size||0)||0,ext:qe(t?.ext||t?.subtitleExt||tr(t?.fileName||t?.name))})).filter(t=>t.fileId&&t.fileName)}function Jj(e,t,r=t?.subtitles||[]){let n=yRe(e);if(!n||!t?.fileId)return"";let s=JSON.stringify({v:2,ss:vRe(r)});return Ot([n.shareId,qe(t.fileId),n.code,qe(t.fileName||t.name),Number(t.fileSize||t.vod_size||0)||0,s],{structured:!0})}function dln(e){let t=Mr(e),r=[];if(t[5])try{let n=JSON.parse(t[5]);r=vRe(n?.ss||n?.subtitles||[])}catch{}return{shareId:qe(t[0]),fileId:qe(t[1]),code:qe(t[2]),fileName:qe(t[3]),fileSize:Number(t[4]||0)||0,subtitles:r}}function fln(e,t=[]){return t.length?Ta("\u5149\u9E2D",t.map((r,n)=>({vod_id:Jj(e,r,r.subtitles),vod_name:qe(r.fileName)||`\u89C6\u9891${n+1}`,vod_size:Number(r.fileSize||0)||0}))):[]}async function gBt(e){let{matched:t,videos:r}=await lln(e);return fln(t,r)}async function hln(e,t={}){let r={shareId:qe(t.shareId),fileId:qe(t.fileId),code:qe(t.code),fileName:qe(t.fileName),fileSize:Number(t.fileSize||0)||0};if(!e||!r.shareId||!r.fileId||!r.fileName)throw new Error("\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u4E0D\u5B8C\u6574");let n=vRe(t.subtitles).map(s=>({...s,shareId:r.shareId,code:r.code}));return cln(async()=>{let s=await oln(e,[r,...n]),i=s.results[0]?.ownFile;if(!i?.fileId)throw new Error(`\u5149\u9E2D\u8F6C\u5B58\u540E\u672A\u627E\u5230\u6587\u4EF6: ${r.fileName}`);let a=s.results.slice(1).map(o=>o.ownFile?{...o.ownFile,ext:o.ext||tr(o.fileName)}:null).filter(Boolean);return{video:i,subtitles:a}})}function pln(e="",t="\u78C1\u529B\u4E91\u6DFB\u52A0"){return(qe(e).replace(/[\\/:*?"<>|]/g," ").replace(/\s+/g," ").trim()||t).slice(0,120)}function mln(e={}){let t=[e],r=new Set,n=[];for(;t.length&&r.size<200&&!n.length;){let s=t.shift();if(!(!s||typeof s!="object"||r.has(s))){if(r.add(s),Array.isArray(s)){s.some(i=>i&&typeof i=="object"&&(i.fileName||i.name||i.file_name||i.path))&&(n=s);continue}for(let i of Object.values(s))i&&typeof i=="object"&&t.push(i)}}return n.map((s,i)=>({index:Number.isFinite(Number(s?.fileIndex??s?.file_index??s?.index??s?.idx??s?.id))?Number(s.fileIndex??s.file_index??s.index??s.idx??s.id):i,name:qe(s?.fileName||s?.name||s?.file_name||s?.filename||s?.path||`\u6587\u4EF6${i+1}`),size:Number(s?.fileSize||s?.size||s?.length||0)||0,raw:s})).filter(s=>s.name)}function gln(e={}){let t=qe(e?.name).toLowerCase(),r=t.includes(".")?`.${t.split(".").pop().split(/[?#]/)[0]}`:"",n=qe(e?.raw?.mineType||e?.raw?.mimeType||e?.raw?.contentType).toLowerCase();return Number(e?.raw?.fileType)===2||n.startsWith("video/")||oBt.includes(r)}function _ln(e=""){let t=qe(e).toLowerCase();return/(?:^|[\\/._\-\s])(sample|samples|trailer|preview|teaser|promo)(?:$|[\\/._\-\s])/i.test(t)||/(?:样片|预告|花絮|试看|宣传片)/.test(t)}function Aln(e=[]){let t=Array.isArray(e)?e.filter(c=>c?.name):[],r=t.filter(gln),n=r.filter(c=>!_ln(c.name)),s=n.length?n:r;if(!s.length)return[];let i=t.filter(c=>{let u=qe(c.name).toLowerCase().split(/[?#]/)[0];return zun.some(l=>u.endsWith(l))}),a=[...s,...i],o=new Set;return a.filter(c=>{let u=String(c.index);return o.has(u)?!1:(o.add(u),!0)})}function _Bt(e=Date.now()){let t=new Intl.DateTimeFormat("en-US",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(e)),r=Object.fromEntries(t.map(c=>[c.type,c.value])),n=Number(r.year),s=Number(r.month),i=Number(r.day),a=`${String(n).padStart(4,"0")}-${String(s).padStart(2,"0")}-${String(i).padStart(2,"0")}`,o=Date.UTC(n,s-1,i+1)-8*60*60*1e3;return{day:a,resetAt:o}}function ABt(e={}){let t=qe(e.refreshToken||e.accessToken||e.deviceId||"anonymous");return V4.default.createHash("sha256").update(t).digest("hex").slice(0,24)}function SRe(e){return new Intl.DateTimeFormat("zh-CN",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).format(new Date(e))}function q4(e={}){let t=e.resetText||SRe(e.resetAt),r=new Error(`\u5149\u9E2D\u7F51\u9875\u4E91\u6DFB\u52A0\u989D\u5EA6\u5DF2\u7528\u5B8C\uFF0C\u5C06\u4E8E ${t}\uFF08\u5317\u4EAC\u65F6\u95F4\uFF09\u5237\u65B0\uFF1B\u5B98\u65B9 App \u4F7F\u7528\u72EC\u7ACB\u4E91\u6DFB\u52A0\u94FE\u8DEF\uFF0CApp \u53EF\u7528\u4E0D\u4EE3\u8868\u7F51\u9875\u63A5\u53E3\u4ECD\u6709\u989D\u5EA6`);return r.name="GuangyaCloudQuotaError",r.code=Qj,r.quotaLimited=!0,r.blockedUntil=Number(e.resetAt||0),r}function Eln(e){return Number(e?.code)===Qj||e?.quotaLimited===!0||/云添加次数超限|云添加额度已用完|下个自然日刷新/.test(qe(e?.message))}async function TRe(e,{now:t=Date.now()}={}){let r=await zE(e),n=ABt(r),s=_Bt(t),i=hRe.get(n);if((!i||i.day!==s.day||Number(i?.blockedUntil||0)<=t)&&e?.db?.getObjectDefault)try{i=await e.db.getObjectDefault(cBt,{})}catch{i=null}let a=i?.accountKey===n&&i?.day===s.day&&Number(i?.blockedUntil||0)>t,o={limited:a,day:s.day,resetAt:a?Number(i.blockedUntil):s.resetAt,resetText:SRe(a?Number(i.blockedUntil):s.resetAt)};return a&&(o.code=Qj,o.message=q4(o).message,hRe.set(n,{...i,...o,accountKey:n})),o}async function rBt(e,t,r=Date.now()){if(!Eln(t))return null;let n=await zE(e),s=ABt(n),i=_Bt(r),a={accountKey:s,limited:!0,code:Qj,day:i.day,blockedUntil:i.resetAt,resetAt:i.resetAt,resetText:SRe(i.resetAt),updatedAt:new Date(r).toISOString()};if(a.message=q4(a).message,hRe.set(s,a),e?.db?.push)try{await e.db.push(cBt,a)}catch{}return a}async function nBt(e,t,r,n=[]){let s=await Gj(e,t,1e4),i=s.find(d=>Rx(d)&&qe(d?.fileName)===r),a=i?.fileId?qe(i.fileId):t,o=[],c=new Set;async function u(d,f=0){if(f>20||c.has(d||"__root__")||o.length>=1e4)return;c.add(d||"__root__");let h=d===t&&!i?.fileId?s:await Gj(e,d,1e4);o.push(...h.filter(m=>m.isVideo));let p=h.filter(m=>m.isFolder&&m.fileId);await _0(p,async m=>(await u(m.fileId,f+1),!0),3)}await u(a,0);let l=Kt(o);return n.length?l.filter(d=>n.some(f=>{let h=Kj(d?.fileName),p=Kj(f?.name);return h&&p&&(h===p||h.includes(p)||p.includes(h))})):l}async function EBt(e,t,r={}){let n=qe(t);if(!/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i.test(n))throw new Error("\u5149\u9E2D\u4E91\u8F6C\u5B58\u4EC5\u652F\u6301 magnet \u94FE\u63A5");let s;try{s=await rl(e,"/cloudcollection/v1/resolve_res",{url:n})}catch(d){let f=await rBt(e,d);throw f?q4(f):d}let i=mln(s);if(!i.length)throw new Error("\u5149\u9E2D\u78C1\u529B\u89E3\u6790\u672A\u8FD4\u56DE\u6587\u4EF6");let a=Aln(i);if(!a.length)throw new Error("\u5149\u9E2D\u78C1\u529B\u5185\u672A\u53D1\u73B0\u53EF\u64AD\u653E\u89C6\u9891\uFF0C\u5DF2\u53D6\u6D88\u521B\u5EFA\u4E91\u6DFB\u52A0\u4EFB\u52A1");let o=qe(r.savePath||"root"),c=!o||o==="root"||o==="auto"?"":o,u=pln(r.name||s.name||s.title||a[0]?.name||"\u78C1\u529B\u4E91\u6DFB\u52A0"),l=await nBt(e,c,u,a);if(!l.length){let d=await TRe(e);if(d.limited)throw q4(d);try{await rl(e,"/cloudcollection/v1/create_task",{fileIndexes:a.map(p=>p.index),url:n,parentId:c,newName:u})}catch(p){let m=await rBt(e,p);throw m?q4(m):p}let f=Math.max(1,Math.min(50,Number(r.pollAttempts||20))),h=Math.max(200,Math.min(1e4,Number(r.pollIntervalMs||1500)));for(let p=0;p0&&await new Promise(m=>setTimeout(m,h)),l=await nBt(e,c,u,a).catch(()=>[]),!l.length);p+=1);}if(!l.length)throw new Error("\u5149\u9E2D\u4E91\u8F6C\u5B58\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u751F\u6210\u53EF\u64AD\u653E\u6587\u4EF6");return l.map(d=>({fileId:qe(d?.fileId),fileName:qe(d?.fileName),fileSize:Number(d?.fileSize||d?.size||0)||0,name:qe(d?.fileName),vod_name:qe(d?.fileName),vod_size:Number(d?.fileSize||d?.size||0)||0})).filter(d=>d.fileId)}function H4(e=""){let t=qe(e).toLowerCase().match(/\.([a-z0-9]+)(?:$|\?)/);return t?t[1]:""}function yBt(e=""){let t=qe(e).replace(/^\./,"").toLowerCase(),r=uBt[t]?t:tr(e)||H4(e)||"srt";return r==="ass"||r==="ssa"?"srt":r}function yln(e){e.header("Access-Control-Allow-Origin","*"),e.header("Access-Control-Allow-Headers","Range, Content-Type, Origin, Accept"),e.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges, Content-Type"),e.header("Cache-Control","no-store")}function vln(e,t,r={}){let n=Math.max(_s.minPoolSize,Math.min(_s.maxPoolSize,Number(r.poolSize)||24)),s=5,i=11,a=Math.min(12,Math.max(4,Math.ceil(n/s)+2)),o=[],c=new Map,u=new Set,l=typeof r.resolveDownload=="function"?r.resolveDownload:rln,d=!1,f=0,h=null,p=T=>V4.default.createHash("sha1").update(T).digest("hex"),m=()=>o.filter(T=>!T.invalid),_=()=>{for(let T of u)T();u.clear()},g=async()=>{d||await new Promise(T=>{let x=setTimeout(()=>{u.delete(w),T()},250),w=()=>{clearTimeout(x),u.delete(w),T()};u.add(w)})},y=async()=>{if(d)return null;f+=1;try{let T=qe(await l(e,t));if(!T)throw new Error("\u5149\u9E2D\u7B7E\u540D\u5730\u5740\u4E3A\u7A7A");let x=new URL(T).host,w=p(T),D=o.find(L=>!L.invalid&&L.signatureKey===w);if(D)return D;let M={url:T,hostKey:x,signatureKey:w,active:0,invalid:!1};return o.push(M),h=null,M}catch(T){return h=T,null}finally{f=Math.max(0,f-1),_()}},A=()=>{if(d)return;let T=a-m().length-f;for(let x=0;x{let x=m().filter(M=>M.activeL.signatureKey!==w);M.length&&(x=M)}if(Number(T.previousStatus)===503&&D){let M=x.filter(L=>L.hostKey===D);M.length&&(x=M)}return x.sort((M,L)=>{let U=(c.get(M.hostKey)||0)-(c.get(L.hostKey)||0);return U!==0?U:M.active-L.active}),x[0]||null};return{signatureLimit:s,hostLimit:i,initialize:async()=>{let T=m()[0]||null;if(T||(T=await y()),!T)throw h||new Error("\u5149\u9E2D\u7B7E\u540D\u6C60\u521D\u59CB\u5316\u5931\u8D25");return A(),T.url},acquire:async(T={})=>{for(;!d;){let x=E(T);if(x){x.active+=1,c.set(x.hostKey,(c.get(x.hostKey)||0)+1);let w=!1;return{url:x.url,signatureKey:x.signatureKey,hostKey:x.hostKey,release:async(D={})=>{if(w)return;w=!0,x.active=Math.max(0,x.active-1);let M=Math.max(0,(c.get(x.hostKey)||1)-1);M>0?c.set(x.hostKey,M):c.delete(x.hostKey);let L=Number(D.status||0);[401,403,404,410,503].includes(L)&&(x.invalid=!0),A(),_()}}}if(!(m().length+f{d=!0;for(let T of o)T.invalid=!0;_()}}}async function fRe(e,t,r,n={}){let s=n.resolveDownload||hBt,i=null;for(let a=0;a<2;a+=1){let o=await s(e.server,t);if(!o)throw new Error("\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let c={...GT,Accept:n.accept||"*/*","Accept-Encoding":"identity"};n.range&&(c.Range=n.range);let u=await Xe.get(o,{responseType:r,headers:c,timeout:3e4,maxRedirects:5,maxContentLength:n.maxContentLength??1/0,maxBodyLength:n.maxContentLength??1/0,validateStatus:()=>!0});if(u.__guangyaDownloadUrl=o,i=u,![401,403,404,410].includes(Number(u.status))||a>0)return u;u.data&&typeof u.data.destroy=="function"&&u.data.destroy()}return i}function Sln(e,t){let r=String(e||"");if(!r.includes("#EXTM3U"))return r;let n=s=>{let i=String(s||"").trim();if(!i||/^(?:https?:|data:|blob:)/i.test(i))return i;try{return new URL(i,t).toString()}catch{return i}};return r.split(/\r?\n/).map(s=>{let i=s.trim();return i?i.startsWith("#")?s.replace(/URI="([^"]+)"/gi,(a,o)=>`URI="${n(o)}"`):n(i):s}).join(` -`)}async function bRe(e,t,r={}){let n=qe(r.fileId),s=qe(r.fileName),i=Number(r.fileSize||0)||0,a=qe(r.mode||"down");if(!n)return t.code(400),"\u5149\u9E2D\u6587\u4EF6\u53C2\u6570\u65E0\u6548";yln(t);try{if(a==="redirect"){let l=await(r.resolveDownload||hBt)(e.server,n);return l?t.redirect(l):(t.code(404),"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740")}if(a==="subt"){let u=tr(s)||qe(r.format)||"srt",l=yBt(r.end||s||u),d=await fRe(e,n,"arraybuffer",{resolveDownload:r.resolveDownload,accept:"text/plain,text/vtt,*/*",maxContentLength:Qun});if(d.status<200||d.status>=400)return t.code(d.status||502),`\u5149\u9E2D\u5B57\u5E55\u83B7\u53D6\u5931\u8D25: ${d.status||502}`;let f=Buffer.isBuffer(d.data)?d.data:Buffer.from(d.data||"");return(u==="ass"||u==="ssa")&&l==="srt"&&(f=Buffer.from(DT(f.toString("utf8")),"utf8")),t.code(200),t.header("Content-Type",uBt[l]||"text/plain; charset=utf-8"),t.header("Content-Length",String(f.length)),f}let o=qe(e?.headers?.range);if(H4(s)==="m3u8"&&!o){let u=await fRe(e,n,"text",{resolveDownload:r.resolveDownload,accept:"application/vnd.apple.mpegurl,application/x-mpegURL,text/plain,*/*",maxContentLength:4194304});if(u.status<200||u.status>=400||!String(u.data||"").includes("#EXTM3U"))return t.code(u.status>=400?u.status:502),"\u5149\u9E2D HLS \u64AD\u653E\u5217\u8868\u83B7\u53D6\u5931\u8D25";let l=u?.request?.res?.responseUrl||u.__guangyaDownloadUrl||"",d=Sln(u.data,l);return t.code(200),t.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8"),t.header("Content-Length",String(Buffer.byteLength(d))),d}if(i>0){let u=null;try{let l=await jj(e.server);u=vln(e.server,n,{poolSize:l.poolSize,resolveDownload:r.resolveChunkDownload});let d=await u.initialize();return t.header("Content-Type",X4t[H4(s)]||"application/octet-stream"),await ac(e,t,d,`guangya_${n}`,GT,{chunkSize:l.chunkSize,poolSize:l.poolSize,initialChunkSize:Math.min(l.chunkSize,128*1024),startupPoolSize:1,timeout:60*1e3,maxRetries:6,maxCacheBytes:64*1024*1024,resolveUrl:f=>u.acquire(f),disposeUrlResolver:()=>u.dispose()},i,!0)}catch(l){if(u&&await u.dispose().catch(()=>{}),t.sent)throw l;console.warn("[guangya proxy] dynamic chunk startup failed, using direct stream:",l?.message||l)}}let c=await fRe(e,n,"stream",{resolveDownload:r.resolveDownload,range:o});return c.status<200||c.status>=400?(c.data&&typeof c.data.destroy=="function"&&c.data.destroy(),t.code(c.status||502),`\u5149\u9E2D\u5A92\u4F53\u83B7\u53D6\u5931\u8D25: ${c.status||502}`):(t.code(c.status||(o?206:200)),t.header("Accept-Ranges",c.headers?.["accept-ranges"]||"bytes"),t.header("Content-Type",c.headers?.["content-type"]||X4t[H4(s)]||"application/octet-stream"),c.headers?.["content-length"]&&t.header("Content-Length",c.headers["content-length"]),c.headers?.["content-range"]&&t.header("Content-Range",c.headers["content-range"]),c.headers?.etag&&t.header("ETag",c.headers.etag),c.headers?.["last-modified"]&&t.header("Last-Modified",c.headers["last-modified"]),t.send(c.data))}catch(o){return t.sent||t.code(502),`\u5149\u9E2D\u4EE3\u7406\u5931\u8D25: ${o?.message||o}`}}function Tln(e,t={},r={}){let n=t.video;if(!n?.fileId)return Wr("\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u6587\u4EF6\u65E0\u6548");let s=encodeURIComponent(Ot([n.fileId,n.fileName,n.fileSize||r.fileSize||0],{structured:!0})),i=`.${H4(n.fileName)||"bin"}`,a=[...ba(e,"guangya","\u4EE3\u7406","down","own",s,i),...ba(e,"guangya","\u539F\u753B","redirect","own",s,i)],o=(Array.isArray(t.subtitles)?t.subtitles:[]).map(c=>{let u=tr(c.fileName)||c.ext||"srt",l=yBt(u),d=encodeURIComponent(Ot([c.fileId,c.fileName,c.fileSize||0,u],{structured:!0}));return E0(e,"guangya","own",d,`.${l}`,{name:c.fileName||"\u5916\u6302\u5B57\u5E55",format:l})}).filter(c=>c.url);return Xs({parse:0,urls:a,subtitles:o,header:GT})}async function Zj(e){let t=dln(e?.body?.id||"");if(!t.shareId||!t.fileId||!t.fileName||!e?.server)return Wr("\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");try{let r=await hln(e.server,t);return Tln(e,r,t)}catch(r){return Wr(`\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u5931\u8D25: ${r?.message||r}`)}}async function vBt(e,t){if(qe(e?.params?.what)!=="src")return t.code(404),{error:"\u4E0D\u652F\u6301\u7684\u5149\u9E2D\u4EE3\u7406\u7C7B\u578B"};let r=qe(e?.params?.fileId);try{r=decodeURIComponent(r)}catch{}let n=Mr(r),s=qe(n[0]),i=qe(n[1]),a=Number(n[2]||0)||0,o=qe(n[3]);return bRe(e,t,{fileId:s,fileName:i,fileSize:a,format:o,mode:qe(e?.params?.flag),end:qe(e?.params?.end)})}var V4,mRe,sBt,Yj,Gun,gRe,iBt,aBt,oBt,zun,Yun,Qun,Wun,Xun,W4t,hRe,cBt,Qj,X4t,uBt,qe,eBt,GT,Cx=ae(()=>{V4=Ne(require("crypto"),1);Hr();Xc();ua();Wc();$l();y0();g0();PE();dRe();Zu();mRe="https://account.guangyapan.com",sBt="https://api.guangyapan.com",Yj="aMe-8VSlkrbQXpUR",Gun="urn:ietf:params:oauth:grant-type:device_code",gRe="0123456789abcdef0123456789abcdef",iBt="CatPawOpen",aBt=[0,1,2,3,4,5],oBt=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".mts",".3gp",".rm",".rmvb",".iso",".vob",".asf",".divx",".m3u8",".f4v",".mxf",".ogv",".ogm"],zun=[".srt",".ass",".ssa",".vtt",".sub",".idx",".smi"],Yun=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([a-zA-Z0-9_-]+)(?:\?[^\s#]*)?(?:#[^\s]*)?/i,Qun=4*1024*1024,Wun=20,Xun=5e3,W4t=es("guangya.shareToken",{maxSize:500,ttl:10*60*1e3}),hRe=es("guangya.cloudQuota",{maxSize:20,ttl:26*60*60*1e3}),cBt="/guangya_cloud_quota",Qj=354,X4t={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",webm:"video/webm",avi:"video/x-msvideo",mov:"video/quicktime",flv:"video/x-flv",wmv:"video/x-ms-wmv",ts:"video/mp2t",m2ts:"video/mp2t",mts:"video/mp2t",m3u8:"application/vnd.apple.mpegurl",f4v:"video/mp4"},uBt={srt:"application/x-subrip; charset=utf-8",ass:"text/x-ssa; charset=utf-8",ssa:"text/x-ssa; charset=utf-8",vtt:"text/vtt; charset=utf-8",sub:"text/plain; charset=utf-8",idx:"text/plain; charset=utf-8",smi:"text/plain; charset=utf-8",txt:"text/plain; charset=utf-8"},qe=e=>String(e??"").trim();eBt=Promise.resolve();GT={Referer:"https://www.guangyapan.com/",Origin:"https://www.guangyapan.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/147.0.0.0 Safari/537.36"}});function IRe(e,t=Date.now()){let r=nf.get(e);return r?(Number(r.expiresAt||0)>0?tn?.key==="magnet")?.enable===!0;return e.find(n=>n?.key==="magnet_guangya")?.enable===!0?"guangya":t?"115":""}async function TBt(e,t){if(!e?.db)return null;try{return(await e.db.getObjectDefault("/y115_offline",{}))?.[t]||null}catch{return null}}async function bBt(e,t,r){if(e?.db)try{await e.db.push(`/y115_offline/${t}`,r)}catch(n){console.warn("[magnet] persist offline cache failed:",n?.message)}}async function Nln(e){let t=e?.config?.y115?.offline||{},r={savePath:t.savePath||"0",pollAttempts:t.pollAttempts??20,pollIntervalMs:t.pollIntervalMs??1500};if(!e?.db?.getObjectDefault)return r;try{let n=await e.db.getObjectDefault("/y115_settings",r);return{...r,...n||{}}}catch{return r}}async function Oln(e){let t={savePath:"root",pollAttempts:20,pollIntervalMs:1500};if(!e?.db?.getObjectDefault)return t;try{let r=await e.db.getObjectDefault("/guangya_cloud_settings",t),n={...t,...r||{}};return(!n.savePath||n.savePath==="auto")&&(n.savePath="root"),n}catch{return t}}function Dln(e){return/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i.test(String(e||""))}function Pln(e){return/^ed2k:\/\//i.test(String(e||""))}function Lln(e){let t=String(e||"").split("|");return t.length>=5?t[4].toLowerCase():""}function T0(e){return[{from:"\u78C1\u529B",url:`${e}$`}]}function RRe(e){let t=e.filter(r=>r.pick_code).map(r=>{let n=String(r.file_name||"unknown"),s=n.replace(/\.[^.]+$/,""),i=r.file_size?Ju(r.file_size):"";return`${i?`${s} [${i}]`:n}$own*${r.pick_code}`});return t.length===0?[]:[{from:"\u78C1\u529B",url:t.join("#")}]}function tK(e){let r=Kt((e||[]).map(n=>({...n,vod_name:n.vod_name||n.fileName||n.name||"",vod_size:Number(n.vod_size||n.fileSize||0)||0}))).filter(n=>n.fileId).map(n=>{let s=String(n.fileName||"unknown"),i=s.replace(/\.[^.]+$/,""),a=n.fileSize?Ju(n.fileSize):"";return`${a?`${i} [${a}]`:s}$gyown*${n.fileId}*${encodeURIComponent(s)}*${Number(n.fileSize||n.vod_size||0)||0}`});return r.length?[{from:"\u78C1\u529B",url:r.join("#")}]:[]}async function IBt(e,t){let r=Pln(e);if(!r&&!Dln(e))return[];let n=t?.server||t?.raw?.server||t?.routeOptions?.config?.server||globalThis.server;if(!n)return T0("\u274C \u7F3A\u5C11 server \u4E0A\u4E0B\u6587");let s=wln();if(!s)return T0("\u274C 115\u4E91\u8F6C\u5B58\u548C\u5149\u9E2D\u4E91\u8F6C\u5B58\u5747\u672A\u5F00\u542F");let i=r?Lln(e):M4t(e);if(!i)return T0(r?"\u274C ed2k \u94FE\u63A5\u7F3A\u5C11 hash":"\u274C \u78C1\u529B\u94FE\u63A5\u7F3A\u5C11 btih");if(s==="guangya"){if(r)return T0("\u274C \u5149\u9E2D\u4E91\u8F6C\u5B58\u6682\u4E0D\u652F\u6301 ed2k");let m=SBt("guangya",i,"guangya"),_=Date.now(),g=IRe(m,_);return g?g.error?T0(g.error):tK(g.files||[]):Cln(m,async()=>{let y=Date.now(),A=IRe(m,y);if(A)return A.error?T0(A.error):tK(A.files||[]);let E=await TBt(n,m);if(E?.files?.length&&E.version===G4)return nf.set(m,{ts:y,files:E.files}),tK(E.files);try{let v=await Oln(n),b=await EBt(n,e,v),I=Date.now();return nf.set(m,{ts:I,files:b}),await bBt(n,m,{files:b,ts:I,version:G4,provider:"guangya"}),tK(b)}catch(v){let b=Date.now(),I=`\u274C \u5149\u9E2D\u4E91\u8F6C\u5B58\u5931\u8D25\uFF1A${v?.message||v}`,T={ts:b,error:I};return Number(v?.blockedUntil||0)>b&&(T.expiresAt=Number(v.blockedUntil)),nf.set(m,T),T0(I)}})}let a=await Xa(n);if(!a)return T0("\u274C \u672A\u914D\u7F6E 115 cookie");let o=SBt(a,i,"115"),c=Date.now(),u=IRe(o,c);if(u)return u.error?T0(u.error):RRe(u.files||[]);let l=await TBt(n,o);if(l?.files?.length&&l.version===G4)return nf.set(o,{ts:c,files:l.files}),RRe(l.files);let d=await Nln(n),f=r?1:d.pollAttempts||20,h=r?3e3:d.pollIntervalMs||1500;console.log(`[magnet] \u5F00\u59CB\u8F6C\u5B58 ${i} (${r?"ed2k":"magnet"}), pollAttempts=${f}, pollIntervalMs=${h}`);let p=[];try{p=await U4t(a,e,{savePath:d.savePath||"0",pollAttempts:f,pollIntervalMs:h,magnet:e,allowFallbackScan:r}),console.log(`[magnet] \u8F6C\u5B58\u5B8C\u6210 ${i}\uFF0C\u83B7\u5F97 ${p.length} \u4E2A\u6587\u4EF6`)}catch(m){let _=`\u274C \u79BB\u7EBF\u5931\u8D25\uFF1A${m?.message||"\u672A\u77E5\u9519\u8BEF"}`;return console.error(`[magnet] \u8F6C\u5B58\u5931\u8D25 ${i}:`,m?.message),nf.set(o,{ts:c,error:_}),T0(_)}if(!p.length){let m="\u274C \u79BB\u7EBF\u5931\u8D25\uFF1A\u672A\u6293\u5230\u4E0B\u8F7D\u6587\u4EF6\uFF0C\u53EF\u80FD\u4ECD\u5728 115 \u540E\u53F0\u8F6C\u5B58\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5";return console.warn(`[magnet] \u672A\u83B7\u53D6\u5230\u6587\u4EF6 ${i}\uFF0C\u5DF2\u8F6E\u8BE2 ${f} \u6B21`),nf.set(o,{ts:c,error:m}),T0(m)}return nf.set(o,{ts:c,files:p}),await bBt(n,o,{files:p,ts:c,version:G4}),RRe(p)}async function RBt(e,t){let r=String(e.body?.id||"").split("*");if(!["own","gyown"].includes(r[0])||!r[1])return Wr("\u78C1\u529B\u64AD\u653E\u53C2\u6570\u9519\u8BEF",{msg:"\u78C1\u529B\u64AD\u653E\u53C2\u6570\u9519\u8BEF"});let n=e.server||e.raw?.server||e.routeOptions?.config?.server||globalThis.server;if(!n)return Wr("\u7F3A\u5C11 server \u4E0A\u4E0B\u6587",{msg:"\u7F3A\u5C11 server \u4E0A\u4E0B\u6587"});if(r[0]==="gyown"){let a="";try{a=decodeURIComponent(r[2]||"")}catch{a=String(r[2]||"")}let o=encodeURIComponent(Ot([r[1],a,Number(r[3]||0)||0],{structured:!0})),c=a.includes(".")?`.${a.split(".").pop()}`:".bin";return Xs({parse:0,urls:[...ba(e,"guangya","\u4EE3\u7406","down","own",o,c),...ba(e,"guangya","\u539F\u753B","redirect","own",o,c)],header:GT})}let s=await Xa(n);if(!s)return Wr("\u672A\u914D\u7F6E 115 cookie",{msg:"\u672A\u914D\u7F6E 115 cookie"});let i=await bx(s,r[1]);if(!i?.url){let a=i?.msg||"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740";return Wr(a,{msg:a})}return Xs({parse:0,urls:["\u539F\u753B",i.url],header:{"User-Agent":bln,Cookie:i.cookie||s,Referer:"https://115.com/",Origin:"https://115.com"}})}async function CBt(e){if(nf.clear(),!!e?.db)try{await e.db.delete("/y115_offline")}catch(t){console.warn("[magnet] clear /y115_offline failed:",t?.message)}}async function xRe(e){for(let t of nf.keys())t.includes(":guangya:")&&nf.delete(t);if(e?.db)try{let t=await e.db.getObjectDefault("/y115_offline",{}),r=Object.fromEntries(Object.entries(t||{}).filter(([n])=>!n.includes(":guangya:")));await e.db.push("/y115_offline",r)}catch(t){console.warn("[magnet] clear guangya offline cache failed:",t?.message)}}var CRe,bln,Iln,G4,Rln,nf,eK,rK=ae(()=>{CRe=Ne(Gi(),1);jT();GE();uRe();ws();wi();Cx();ua();y0();$l();Xc();bln="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Iln=30*60*1e3,G4=5,Rln=60*1e3,nf=new Map,eK=new Map});var NBt={};Ft(NBt,{default:()=>nK,getCache:()=>Xa,setCache:()=>wBt});async function nK(e){e.get("/qrcode",async(t,r)=>{xx=(await ve.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{"User-Agent":wRe,referer:"https://115.com/"})).data.data;let s=await xBt.default.toBuffer(xx.qrcode,{width:300,height:300});r.send(s)}),e.post("/cookie",(t,r)=>{ve.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${xx.sign}&time=${xx.time}&uid=${xx.uid}`,{"User-Agent":wRe,referer:"https://115.com/"}).then(n=>n.data.data.status===2?Promise.resolve():Promise.reject(new Error(`\u626B\u7801\u72B6\u6001\u68C0\u6D4B\u5931\u8D25: ${n.data.message}`))).then(async()=>{let n=new URLSearchParams({account:xx.uid,app:"android"}),s=await ve.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",n,{headers:{"User-Agent":wRe,referer:"https://115.com/"}});if(s.data.state===1)r.send({code:0,data:p0(s.headers["set-cookie"]).join("")});else return Promise.reject(new Error(`\u767B\u5F55\u5931\u8D25\uFF1A${s.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await Xa(t.server)})}),e.put("/cookie",async(t,r)=>{await wBt(t.server,t.body.cookie),r.send({code:0})}),e.get("/folders",async(t,r)=>{try{let n=await Xa(t.server);if(!n)return r.send({code:-1,message:"\u672A\u914D\u7F6E 115 cookie"});let s=String(t.query?.cid||"0"),i=await B4t(n,s);return r.send({code:0,data:i})}catch(n){return console.error("[115/folders]",n?.message),r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u76EE\u5F55\u5931\u8D25"})}}),e.get("/offline/settings",async(t,r)=>{let n={savePath:"0",pollAttempts:20,pollIntervalMs:1500},s=await t.server.db.getObjectDefault("/y115_settings",n);r.send({code:0,data:{...n,...s||{}}})}),e.post("/offline/settings",async(t,r)=>{let n=t.body||{},s={savePath:String(n.savePath||"0"),pollAttempts:Math.max(0,Math.min(50,Number(n.pollAttempts)||20)),pollIntervalMs:Math.max(200,Math.min(1e4,Number(n.pollIntervalMs)||1500))};await t.server.db.push("/y115_settings",s),r.send({code:0,data:s})}),e.post("/offline/clear",async(t,r)=>{try{let n=await Xa(t.server);if(!n)return r.send({code:-1,message:"\u672A\u914D\u7F6E 115 cookie"});let s=!!t.body?.deleteSource;return await $4t(n,{deleteSource:s}),await CBt(t.server),r.send({code:0,data:{deleteSource:s}})}catch(n){return console.error("[115/offline/clear]",n?.message),r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u79BB\u7EBF\u5217\u8868\u5931\u8D25"})}}),e.post("/files/clean",async(t,r)=>{try{let n=await Xa(t.server);if(!n)return r.send({code:-1,message:"\u672A\u914D\u7F6E 115 cookie"});let s=!!t.body?.recent,i=!!t.body?.recycle;if(!s&&!i)return r.send({code:-1,message:"\u672A\u9009\u62E9\u6E05\u7406\u9879"});let a=await K4t(n,{doRecent:s,doRecycle:i});return r.send({code:0,data:a})}catch(n){return console.error("[115/files/clean]",n?.message),r.send({code:-1,message:n?.message||"\u6E05\u7406 115 \u6587\u4EF6\u5931\u8D25"})}})}var xBt,z4,wRe,xx,Xa,wBt,jT=ae(()=>{Pr();xBt=Ne(qE(),1),z4=Ne(Gi(),1);ws();uRe();G4t();rK();wRe="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",xx={},Xa=async e=>{let t=String(e.config?.y115?.cookie||""),r=z4.default.enc.Hex.stringify(z4.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/y115",{});return n[r]?n[r]:t?(await e.db.push(`/y115/${r}`,t),t):""},wBt=async(e,t)=>{let r=z4.default.enc.Hex.stringify(z4.default.MD5(e.config.y115.cookie)).toString();await e.db.push(`/y115/${r}`,t)}});function MBt(e){let t=4294967295;for(let r=0;r>>1^3988292384&-(t&1)}return(t^4294967295)>>>0}function kBt(e,t=8192){let r=0,n=Buffer.alloc(t),s=0;for(;r>4;if(a===15){let u;do{if(r>=e.length)throw new Error("LZ4 literal length overflow");u=e[r++],a+=u}while(u===255)}if(a>0){if(r+a>e.length)throw new Error("LZ4 literal out of bounds");if(s+a>n.length)throw new Error("LZ4 literal exceeds output");e.copy(n,s,r,r+a),r+=a,s+=a}if(r>=e.length)break;if(r+2>e.length)throw new Error("LZ4 missing match offset");let o=e[r]|e[r+1]<<8;if(r+=2,o<=0||o>s)throw new Error(`LZ4 invalid match offset: ${o}`);let c=i&15;if(c===15){let u;do{if(r>=e.length)throw new Error("LZ4 match length overflow");u=e[r++],c+=u}while(u===255)}if(c+=4,s+c>n.length)throw new Error("LZ4 match exceeds output");for(let u=0;u{YE=Ne(require("crypto"),1),kln=Buffer.from([87,162,146,87,205,35,32,229,214,209,67,50,47,164,187,138,60,249,211,204,98,62,245,237,172,98,183,103,138,137,201,26,131,186,128,13,97,41,245,34,208,52,200,149,221,36,101,36,58,221,194,80,149,59,238,186]),NRe=28,LBt="^j>WD3Kr?J2gLFjD4W2y@",OBt=Buffer.from([251,26,25,214,82,245,170,247,188,101,29,15,105,191,66,47]),DBt=Buffer.from([105,191,66,47,73,150,5,80,160,173,68,236,52,70,203,76]),PBt=Buffer.from([29,3,14,128,161,120,220,238,206,205,163,119,222,18,141,142,217,221,207,85,174,97,237,70,234,18,26,28,252,129]);sK=class{static encodeToken(t){let r=Buffer.alloc(48),n=0;PBt.slice(0,15).copy(r,n),n+=15,r[n++]=0,r[n++]=115,r[n++]=0,r[n++]=0,r[n++]=0,r.writeUInt32LE(t,n),n+=4,PBt.slice(15).copy(r,n),n+=15,r[n++]=0,r[n++]=1,r[n++]=0,r[n++]=0,r[n++]=0;let s=MBt(Buffer.concat([Buffer.from(LBt),r.slice(0,44)]));return r.writeUInt32LE(s,n),r.toString("base64")}static encrypt(t){let r=Buffer.from(t),n=(16-r.length%16)%16,s=n?Buffer.concat([r,Buffer.alloc(n,n)]):r,i=YE.default.createCipheriv("aes-128-cbc",OBt,DBt);return i.setAutoPadding(!1),Buffer.concat([i.update(s),i.final()])}static decrypt(t){let r=t.length-t.length%16,n=YE.default.createDecipheriv("aes-128-cbc",OBt,DBt);n.setAutoPadding(!1);let s=Buffer.concat([n.update(t.slice(0,r)),n.final()]);if(s.length>=2){let a=s[0]|s[1]<<8;if(a>0&&a<=s.length-2)try{return kBt(s.slice(2,a+2))}catch(o){console.warn("[115-cipher] static LZ4 decompression failed, using raw decrypted data:",o?.message||o)}}let i=s[s.length-1];return i>0&&i<=16&&s.slice(-i).every(a=>a===i)&&(s=s.slice(0,-i)),s}},iK=class e{constructor(){this.key=null,this.iv=null,this.pubKey=null}static create(){let t=new e,r=YE.default.createECDH("secp224r1");r.generateKeys();let n=r.getPublicKey(),s=Buffer.concat([Buffer.from([4]),kln]),i=r.computeSecret(s);t.key=i.slice(0,16),t.iv=i.slice(i.length-16);let a=n.slice(1,NRe+1),o=n.slice(NRe+1),u=(o[o.length-1]&1)===1?3:2;return t.pubKey=Buffer.concat([Buffer.from([NRe+1,u]),a]),t}encrypt(t){let r=Bln(Buffer.from(t),16),n=Buffer.alloc(r.length),s=Buffer.from(this.iv),i=YE.default.createCipheriv("aes-128-ecb",this.key,null);i.setAutoPadding(!1);for(let a=0;a=2){let o=a[0]|a[1]<<8;if(o>0&&o<=a.length-2)try{return kBt(a.slice(2,o+2))}catch(c){console.warn("[115-cipher] LZ4 decompression failed, using raw decrypted data:",c?.message||c)}}return a}encodeToken(t){let r=YE.default.randomBytes(1)[0],n=YE.default.randomBytes(1)[0],s=Buffer.alloc(48),i=Buffer.alloc(4);i.writeUInt32BE(t,0);let a=0;for(let l=0;l<15;l++)s[a++]=this.pubKey[l]^r;s[a++]=r,s[a++]=115^r;for(let l=0;l<3;l++)s[a++]=r;for(let l=0;l<4;l++)s[a++]=r^i[3-l];for(let l=15;ls||s>=e.length)throw new Error(`Range ${t} out of bounds for buffer size ${e.length}`);let i=e.slice(n,s+1);return zT.default.createHash("sha1").update(i).digest("hex").toUpperCase()}async function FBt(e){let{cookie:t,userId:r,userKey:n,fileName:s,fileSize:i,fileID:a,preID:o,dirID:c="0",buffer:u=null,readRangeBytes:l=null}=e,d=`U_1_${c}`,f=i.toString(),h=r.toString(),p=process.env.PAN115_RAPID_DYNAMIC_ECDH?iK.create():sK,m="",_="",g=!0;for(;g;){let y=Math.floor(Date.now()/1e3),A=y.toString(),E=p.encodeToken(y),v=[["appid",PRe==="0"?"":PRe],["appversion",UBt],["userid",h],["userkey",n],["filename",s],["filesize",f],["fileid",a],["target",d],["sig",qln(n,h,a,d)],["t",A],["token",Hln(h,a,f,A,m,_,o)],["topupload",process.env.PAN115_RAPID_TOPUPLOAD||"true"],["sign_key",m],["sign_val",_]],b=new URLSearchParams(v.filter(([,G])=>G).sort(([G],[$])=>G.localeCompare($))).toString(),I=p.encrypt(b),T=`${Fln}?k_ec=${encodeURIComponent(E)}`,x=await fetch(T,{method:"POST",headers:{Cookie:t,"Content-Type":"application/x-www-form-urlencoded","User-Agent":$ln},body:I});if(!x.ok)throw new Error(`HTTP ${x.status}: ${x.statusText}`);let w=Buffer.from(await x.arrayBuffer()),D=p.decrypt(w),M=(()=>{let G=D.indexOf(123),$=D.indexOf(91);return G===-1?$:$===-1?G:Math.min(G,$)})();if(M<0)throw new Error(`115 API returned non-JSON response: ${D.slice(0,32).toString("hex")}`);let L=D.slice(M).toString("utf8").trim(),U;try{U=JSON.parse(L)}catch(G){throw new Error(`115 API JSON parse failed: ${G.message}; text=${L.slice(0,160)}; hex=${D.slice(0,96).toString("hex")}`)}if(U.status===7&&U.sign_key&&U.sign_check){if(m=U.sign_key,u)_=Vln(u,U.sign_check);else if(typeof l=="function"){let G=Buffer.from(await l(U.sign_check));_=zT.default.createHash("sha1").update(G).digest("hex").toUpperCase()}else throw new Error("Status 7 requires file buffer or readRangeBytes for sign_val, but neither was provided");continue}if(U.statuscode&&U.statuscode!==0)throw new Error(`115 API error ${U.statuscode}: ${U.statusmsg||"Unknown error"}`);if(U.status===7)throw new Error("Status 7 missing sign_key/sign_check");return g=!1,{pickCode:U.pickcode,status:U.status,fileID:U.fileid,target:U.target,sha1:a}}}var zT,Fln,ORe,PRe,UBt,$ln,DRe,$Bt=ae(()=>{zT=Ne(require("crypto"),1);BBt();Fln=process.env.PAN115_RAPID_INIT_URL||"https://uplb.115.com/4.0/initupload.php",ORe="Qclm8MGWUv59TnrR0XPg",PRe=process.env.PAN115_RAPID_APP_ID||"0",UBt=process.env.PAN115_RAPID_APP_VERSION||"99.99.99.99",$ln=process.env.PAN115_RAPID_UA||"Mozilla/5.0 115disk/99.99.99.99 115Browser/99.99.99.99 115wangpan_android/99.99.99.99",DRe=process.env.PAN115_RAPID_TOKEN_VERSION||UBt});var HBt={};Ft(HBt,{aliTo115:()=>qBt,aliTo115FullFlow:()=>Yln,cancelAllCleanups:()=>Qln});function Gln(e,t,r){let n=setTimeout(async()=>{try{await iRe(e,t),console.log(`[ali-to-115] Cleaned up 115 temp file: ${t}`)}catch(s){console.warn(`[ali-to-115] 115 cleanup failed for ${t}:`,s?.message)}finally{aK.delete(n)}},r);return aK.add(n),n}function zln(e){LRe(e).then(()=>console.log(`[ali-to-115] Cleaned up Ali temp file: ${e}`),t=>console.warn(`[ali-to-115] Ali cleanup failed for ${e}:`,t?.message))}async function qBt(e){let{shareUrl:t,fileId:r,fileName:n,fileSize:s,cookie115:i}=e;console.log(`[ali-to-115] Starting: ${n} (${s} bytes)`);let a=null,o=null;try{let c=QE(t);if(!c)throw new Error("Invalid Aliyun share URL");console.log(`[ali-to-115] Step 1: Parsed share ${c.shareId}`),a=await jBt(c.shareId,r),console.log(`[ali-to-115] Step 2: Saved to Aliyun drive: ${a}`);let u=await KBt(a);if(!u.contentHash)throw new Error("Aliyun did not return content_hash");console.log(`[ali-to-115] Step 3: Got content_hash: ${u.contentHash}`);let l=await C4t(i);console.log(`[ali-to-115] Step 4: Got 115 user info: ${l.userId}`);let d="0";console.log(`[ali-to-115] Step 5: Using 115 target dir: ${d} (root)`);let f=async m=>{let _=await fetch(u.url,{headers:{Range:`bytes=${m}`,"User-Agent":"Mozilla/5.0"},redirect:"follow"});if(!_.ok&&_.status!==206)throw new Error(`Aliyun range fetch failed: HTTP ${_.status}`);return Buffer.from(await _.arrayBuffer())},h=await FBt({cookie:i,userId:l.userId,userKey:l.userKey,fileName:n,fileSize:s,fileID:u.contentHash,preID:jln,dirID:d,readRangeBytes:f});o=h.fileID,console.log(`[ali-to-115] Step 6: Rapid upload success! pickCode: ${h.pickCode}`);let p=await x4t(i,h.pickCode);return p.fileId&&(o=p.fileId),console.log(`[ali-to-115] Step 7: Got 115 direct URL, fileId=${o||"(unknown)"}`),o?Gln(i,o,Kln):console.warn("[ali-to-115] Step 8: skipping 115 cleanup \u2014 no file_id resolved"),zln(a),a=null,{pickCode:h.pickCode,contentHash:u.contentHash,url:p.url,cookie:p.cookie}}catch(c){throw console.error(`[ali-to-115] Failed for ${n}:`,c?.message||c),a&&LRe(a).catch(u=>console.warn("[ali-to-115] Ali error-cleanup failed:",u?.message)),o&&iRe(i,o).catch(u=>console.warn("[ali-to-115] 115 error-cleanup failed:",u?.message)),c}}function Qln(){for(let e of aK)clearTimeout(e);aK.clear(),console.log("[ali-to-115] All cleanup tasks cancelled")}var jln,Kln,aK,Yln,VBt=ae(()=>{wx();GE();$Bt();jln="2EF7BDE608CE5404E97D5F042F95F89F1C232871",Kln=30*1e3,aK=new Set;Yln=qBt});function QE(e){let t=Wln.exec(e);return t?{shareId:t[1]||t[4],folderId:t[3]||t[6]||"root"}:null}async function Yg(e){if(zBt&&XE)return;XE=e.server.db;let t=e.server.config?.ali||{},r=String(t?.token||"").trim();JE=zg.default.enc.Hex.stringify(zg.default.MD5(r)).toString();let n=await XE.getObjectDefault(ZBt,{});n[JE]?QT=n[JE]:r?QT=r:QT="",zBt=!0}async function hK(e,t=3,r=1e3){for(let n=0;n{let i=await Xe.post(`${Xln}/${e}`,t,{headers:r}).catch(a=>(console.error(a),a.response||{status:500,data:{}}));return i.status===429&&(n||3)>0?(await zt(1e3),await XT(e,t,r,(n||3)-1)):i.data||{}},3,1e3)}async function sf(e,t,r,n){return r=r||{},Object.assign(r,{Authorization:Ja.auth}),hK(async()=>{let i=await Xe.post(`${Jln}/${e}`,t,{headers:r}).catch(a=>(console.error(a),a.response||{status:500,data:{}}));return i.status===429&&(n||3)>0?(await zt(1e3),await sf(e,t,r,(n||3)-1)):i.data||{}},3,1e3)}async function Y4(){if(!QT){Gn={};return}if(!Gn.user_id||Gn.expire_time-(0,Gg.default)().unix()<120){let e=await Xe.post("https://auth.aliyundrive.com/v2/account/token",{refresh_token:QT,grant_type:"refresh_token"},{headers:BRe}).catch(t=>t.response||{status:500,data:{}});e.status===200&&(Gn=e.data,Gn.expire_time=(0,Gg.default)(e.data.expire_time).unix(),Gn.auth=`${Gn.token_type} ${Gn.access_token}`,QT=Gn.refresh_token,await XE.push(ZBt+"/"+JE,Gn.refresh_token))}}function t3t(e={}){if(!e?.access_token)return null;let t={...e};if(!t.expire_time)try{let r=String(t.access_token||"").split(".")[1],n=JSON.parse(zg.default.enc.Base64.parse(r).toString(zg.default.enc.Utf8));t.expire_time=Number(n.exp||0)}catch{t.expire_time=(0,Gg.default)().unix()+Math.max(Number(t.expires_in||7200)-60,300)}return t.token_type=t.token_type||"Bearer",t.auth=`${t.token_type} ${t.access_token}`,t.expire_time>(0,Gg.default)().unix()?t:null}async function Zln(){if(!XE||!JE)return null;let e=await XE.getObjectDefault(`${e3t}/${JE}`,null),t=t3t(e);return t&&t.expire_time-(0,Gg.default)().unix()>120?(Ja=t,Ja):null}async function r3t(e){let t=t3t(e);return t?(Ja=t,XE&&JE&&await XE.push(`${e3t}/${JE}`,t),Ja):null}async function n3t(e){let t=await hK(()=>Xe.post("https://aliyundrive-oauth.messense.me/oauth/access_token",e,{timeout:15e3,headers:{"Content-Type":"application/json"}}),2,1200);return t?.status===200?t.data:null}async function edn(){if(!Ja?.refresh_token)return null;try{let e=await n3t({refresh_token:Ja.refresh_token,grant_type:"refresh_token"});return await r3t(e)}catch(e){return console.warn("[ali] OpenAPI refresh_token \u5237\u65B0\u5931\u8D25\uFF0C\u51C6\u5907\u56DE\u9000\u4E8C\u7EF4\u7801\u6388\u6743:",e?.message||e),null}}async function tdn(){let e=await hK(()=>Xe.post("https://aliyundrive-oauth.messense.me/oauth/authorize/qrcode",{scopes:["user:base","file:all:read","file:all:write"],width:300,height:300},{timeout:15e3,headers:{"Content-Type":"application/json"}}),2,1200);if(!e.data?.sid)return console.error("\u83B7\u53D6sid\u5931\u8D25"),null;let t=e.data.sid;if(!(await Xe.post(`https://open.aliyundrive.com/oauth/users/qrcode/authorize?sid=${t}`,{authorize:1,scope:"user:base,file:all:read,file:all:write",drives:["backup","resource"],scopes:["user:base","file:all:read","file:all:write"],sid:t},{timeout:15e3,headers:{authorization:Gn.auth}})).data?.result)return console.error("\u83B7\u53D6\u6388\u6743flag\u5931\u8D25"),null;let n=null;for(let i=0;i<30;i++){await zt(1e3);let a=await Xe.get(`https://openapi.aliyundrive.com/oauth/qrcode/${t}/status`,{timeout:1e4});if(a.data?.status==="LoginSuccess"){n=a.data.authCode;break}}if(!n)return console.error("\u83B7\u53D6\u6388\u6743code\u8D85\u65F6"),null;let s=await n3t({code:n,grant_type:"authorization_code"});return await r3t(s)}async function rdn(){if(Ja?.access_token&&Ja.expire_time-(0,Gg.default)().unix()>120||await Zln())return Ja;if(await Y4(),!Gn.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6\u7528\u6237\u6388\u6743"),null;if(await edn())return Ja;try{return await tdn()}catch(e){return console.error("driveAuth\u5931\u8D25:",e?.message||e),null}}async function Q4(){return oK||(oK=rdn().finally(()=>{oK=null})),await oK}async function QBt(){let e=await sf("openFile/list",{drive_id:Gn.drive.resource_drive_id,parent_file_id:WE,limit:100,order_by:"updated_at",order_direction:"DESC"});if(e.items){let t=e.items.map(r=>sf("openFile/delete",{drive_id:Gn.drive.resource_drive_id,file_id:r.file_id}));await Promise.all(t)}}async function s3t(e){if(!Gn.device_id)return;if(WE){e&&await QBt();return}if(await Q4(),!Ja.auth){console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743");return}let t=await sf("user/getDriveInfo",{});if(t.resource_drive_id){Gn.drive=t;let r=t.resource_drive_id,n=await sf("openFile/list",{drive_id:r,parent_file_id:"root",limit:100,order_by:"updated_at",order_direction:"DESC"});if(n.items){for(let s of n.items)if(s.name===YBt){WE=s.file_id,await QBt();break}if(!WE){let s=await sf("openFile/create",{check_name_mode:"refuse",drive_id:r,name:YBt,parent_file_id:"root",type:"folder"});s.file_id&&(WE=s.file_id)}}}}async function pK(e){let t=e.shareId,r=YT.get(t);if(!r||r.expire_time-(0,Gg.default)().unix()<120){if(cK.has(t)){await cK.get(t);return}let n=(async()=>{try{YT.delete(t);let s=await XT("v2/share_link/get_share_token",{share_id:e.shareId,share_pwd:e.sharePwd||""});s?.expire_time?(s.expire_time=(0,Gg.default)(s.expire_time).unix(),YT.set(t,s)):console.warn("[ali detail] get_share_token empty",JSON.stringify({shareId:e.shareId,folderId:e.folderId||"root",hasToken:!!s?.share_token,code:s?.code??null,message:s?.message||""}))}finally{cK.delete(t)}})();cK.set(t,n),await n}}async function i3t(e,t,r={}){let n=typeof e=="string"?QE(e):e;if(!n)return[];await pK(n);let s=YT.get(n.shareId);if(!s)return console.warn("[ali share] no cached share token",JSON.stringify({shareId:n.shareId,folderId:t||n.folderId||"root"})),[];let i=[],a=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),o=a>0,c=Math.max(1,Math.min(200,Number(r.pageLimit||r.perPage||r.batchSize)||200)),u=Math.max(1,Number(r.batchSize)||500),l=Math.max(0,Number(r.batchIntervalMs)||0),d="",f=0,h=1,p=0,m=0;do{let _=await XT("adrive/v2/file/list_by_share",{share_id:n.shareId,parent_file_id:t||n.folderId||"root",limit:c,order_by:"name",order_direction:"ASC",marker:d},{"X-Share-Token":s.share_token}),g=Array.isArray(_?.items)?_.items:[];if(m+=g.length,(!o||h===a)&&i.push(...g),f+=g.length,p=Number(_?.total||_?.total_count||p||0),d=_?.next_marker||"",o&&h>=a){let y=p>0?p:(a-1)*c+g.length+(d?c:0);return{items:i,paged:!0,page:a,pageSize:c,total:Math.max(y,(a-1)*c+i.length)}}d&&l>0&&f>=u&&(f=0,await zt(l)),h+=1}while(d);if(o){let _=p>0?p:m;return{items:i,paged:!0,page:a,pageSize:c,total:_}}return i}async function a3t(e){let t=typeof e=="string"?QE(e):e;if(!t)return[];await pK(t);let r=YT.get(t.shareId);if(!r)return console.warn("[ali detail] no cached share token",JSON.stringify({shareId:t.shareId,folderId:t.folderId||"root"})),[];let n=[],s=async(i,a,o="",c)=>{let u=await XT("adrive/v2/file/list_by_share",{share_id:i,parent_file_id:a,limit:200,order_by:"name",order_direction:"ASC",marker:c||""},{"X-Share-Token":r.share_token}),l=u.items;if(!l){console.warn("[ali detail] list items empty",JSON.stringify({shareId:i,folderId:a,currentPath:o,nextMarker:c||"",code:u?.code??null,message:u?.message||""}));return}let d=[],f=[],h=[];for(let _ of l)_.type==="folder"?h.push({item:_,path:o+(o?"/":"")+_.name}):_.type==="file"&&_.category==="video"?(_.name=_.name.replace(/玩偶哥.*【神秘的哥哥们】/g,""),_.fullPath=o+(o?"/":"")+_.name,d.push(_)):_.type==="file"&&vt(_.name)&&f.push(_);for(let _ of d){let g=Ir(_.name,f,y=>y.name);g?.file_id&&(_.subtitle={file_id:g.file_id})}let p=Kt(d);n.push(...p);let m=h.map(_=>s(i,_.item.file_id,_.path));await Promise.all(m),u.next_marker&&await s(i,a,o,u.next_marker)};return await s(t.shareId,t.folderId,""),n}function ndn(e,t){let n=(uK.get(e)||Promise.resolve()).catch(()=>{}).then(()=>t()),s=n.catch(()=>{});return uK.set(e,s),s.finally(()=>{uK.get(e)===s&&uK.delete(e)}),n}async function o3t(e,t,r){return ndn(e,()=>sdn(e,t,r))}async function sdn(e,t,r){if(await Y4(),await s3t(r),r&&WT.clear(),!WE)return null;await pK({shareId:e});let n=YT.get(e);return n?(await XT("adrive/v2/file/copy",{file_id:t,share_id:e,auto_rename:!0,to_parent_file_id:WE,to_drive_id:Gn.drive.resource_drive_id},{"X-Share-Token":n.share_token})).file_id||!1:null}async function c3t(e,t){if(!WT.has(t)){let s=await o3t(e,t,!0);if(!s)return null;WT.set(t,s)}if(await Q4(),!Ja.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743\uFF0C\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F"),null;let n=(await sf("openFile/getVideoPreviewPlayInfo",{file_id:WT.get(t),drive_id:Gn.drive.resource_drive_id,category:"live_transcoding",url_expire_sec:"14400"}))?.video_preview_play_info;return n?.quick_video_list??n?.live_transcoding_task_list}async function idn(e,t){if(!WT.has(t)){let n=await o3t(e,t,!0);if(!n)return null;WT.set(t,n)}if(await Q4(),!Ja.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743\uFF0C\u65E0\u6CD5\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5"),null;let r=await sf("openFile/getDownloadUrl",{file_id:WT.get(t),drive_id:Gn.drive.resource_drive_id});return r.url?r:null}async function u3t(e,t){if(t&&await Yg(t),await mLt(e)){let r=QE(e);if(r){let n=await a3t(r);if(n?.length>0){let s=await ht("ali"),i=n.map(c=>({vod_id:Ot([c.share_id,c.file_id,c.subtitle?.file_id||""],{structured:!0}),vod_name:c.name,vod_size:c.size})),a=Zd(ir.ali.original,Ta(s,i)),o=Zd(ir.ali.rapid115,Ta("\u79D2\u4F20115",n.map(c=>({vod_id:Ot([r.shareId,c.file_id,c.subtitle?.file_id||"",e,c.name||"",c.size??""],{structured:!0}),vod_name:c.name,vod_size:c.size}))));return[...a,...o]}}}return[]}function ddn(e){let t=WBt.get(e);return t||(t=new kRe(l3t),WBt.set(e,t)),t}function fdn(e){let t=String(e||"").match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z$/);return t?Date.UTC(Number(t[1]),Number(t[2])-1,Number(t[3]),Number(t[4]),Number(t[5]),Number(t[6])):0}function hdn(e){try{let t=new URL(e),r=fdn(t.searchParams.get("x-oss-date")),n=Number(t.searchParams.get("x-oss-expires")||0);if(r>0&&Number.isFinite(n)&&n>0)return r+n*1e3;let s=Number(t.searchParams.get("Expires")||t.searchParams.get("expires")||0);if(Number.isFinite(s)&&s>1e9)return s*1e3}catch{}return 0}function dK(e,t=ldn){let r=hdn(e);return r>0&&r-Date.now()<=t}function URe(e){let t=String(e?.server?.config?.ali?.token||"");return zg.default.enc.Hex.stringify(zg.default.MD5(t)).toString()}async function pdn(e){let t=URe(e),r=await e.server.db.getObjectDefault(`/ali/settings/${t}`,XBt),n=zi(r,XBt);return n.poolSize=Math.min(l3t,n.poolSize),n}function d3t(e,t,r){return`${URe(e)}:${t}:${r}`}async function FRe(e,t,r,n=!1){let s=d3t(e,t,r),i=n?null:Nx.get(s);return i?.url&&dK(i.url)&&(Nx.delete(s),i=null),i||(i=await idn(t,r),i?.url&&Nx.set(s,i)),{cacheKey:s,down:i}}function mdn(e,t,r,n){let s=URe(e),i=d3t(e,t,r),a=ddn(s),o={disposed:!1},c=n,u=null,l=0,d=async()=>(u||(u=FRe(e,t,r,!0).then(f=>{if(c=f.down,!c?.url)throw new Error("\u65E0\u6CD5\u5237\u65B0\u963F\u91CC\u4E0B\u8F7D\u94FE\u63A5");return c}).finally(()=>{u=null})),u);return{async resolve(f={}){if(o.disposed)throw new Error("ali source resolver disposed");let h=Number(f.previousStatus||0),p=Number(f.attempt||0),m=!c?.url||dK(c.url),_=[401,404,410].includes(h)||h===403&&(m||p>=2);m||_?(Nx.delete(i),await d()):h===403&&l>Date.now()&&await zt(l-Date.now());let g=await a.acquire(o);if(o.disposed)throw g(),new Error("ali source resolver disposed");let y=c.url,A="";try{A=new URL(y).host}catch{}let E=zg.default.enc.Hex.stringify(zg.default.MD5(y)).toString();return{url:y,hostKey:A,signatureKey:E,release(v={}){let b=Number(v.status||0);[401,404,410].includes(b)||b===403&&dK(y)?(Nx.delete(i),c?.url===y&&(c=null)):b===403&&(a.penalize(),l=Math.max(l,Date.now()+250)),g()}}},dispose(){o.disposed||(o.disposed=!0,a.cancel(o))}}}async function JBt(e){if(e.plist)return e.plist;let t=await Xe.get(e.url,{headers:{"User-Agent":ax}}),r=fK.parse(t.data);return r.segments.forEach((n,s)=>{let i=n.uri.startsWith("http")?n.uri:new URL(n.uri,e.url).toString();n.suri=i,n.uri=`${s}.ts`}),e.plist=r,r}async function f3t(e,t){await Yg(e);let r=e.params.site,n=e.params.what,s=e.params.shareId,i=e.params.fileId;if(r!=="ali")return;let a=e.params.flag,o=e.params.end;if(n==="trans"){let c=lK.get(i);if(c){let l=c.find(d=>d.template_id.toLowerCase()===a)?.url;l&&dK(l,15*1e3)&&(lK.delete(i),c=null)}if(!c){if(c=await c3t(s,i),!c)return t.code(500),"\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\uFF0C\u8BF7\u68C0\u67E5\u6388\u6743";lK.set(i,c)}let u=c.find(l=>l.template_id.toLowerCase()===a);if(!u?.url)return t.code(404),"\u6307\u5B9A\u7684\u963F\u91CC\u8F6C\u7801\u683C\u5F0F\u6682\u65E0\u53EF\u7528\u5730\u5740";if(o?.endsWith(".ts")){await JBt(u);let l=Number.parseInt(o.replace(/\.ts$/i,""),10),d=u.plist.segments[l];if(d?.suri){t.redirect(d.suri);return}return t.code(404),"\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u963F\u91CC\u8F6C\u7801\u5206\u7247"}else{await JBt(u);let l=fK.stringify(u.plist);return t.code(200).headers({"content-type":"audio/x-mpegurl","content-length":l.length.toString()}),l}}else{let c=await FRe(e,s,i),u=c.down;if(!u)return t.code(500),"\u65E0\u6CD5\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\uFF0C\u8BF7\u68C0\u67E5\u6388\u6743";if(a==="subt"){t.redirect(u.url);return}if(a==="redirect"){t.redirect(u.url);return}if(a==="down"){let l=await pdn(e);if(!l.useMultithread){t.redirect(u.url);return}let d=Number(u.size||u.file_size||u.fileSize||0),f=d>0?d:null,h=mdn(e,s,i,u);try{return await ac(e,t,u.url,c.cacheKey,{},{chunkSize:l.chunkSize,poolSize:l.poolSize,timeout:cdn,maxRetries:udn,initialChunkSize:Math.min(adn,l.chunkSize),startupPoolSize:1,maxCacheBytes:64*1024*1024,resolveUrl:p=>h.resolve(p),disposeUrlResolver:()=>h.dispose()},f,!0)}catch(p){console.error("[ali proxy] chunkStream error, clearing cache:",p.message),Nx.delete(c.cacheKey),t.sent||t.code(503).send({error:"stream error, please retry"});return}}t.sent||t.code(400).send({error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"})}}async function W4(e,t){await Yg(e);let r=e.body.flag,n=e.body.id;if(r.startsWith("\u79D2\u4F20115")){let s;try{s=Mr(n,{minLength:3,fieldOrder:[...GBt,"shareUrl","fileName","fileSize"]})}catch{return Wr("\u79D2\u4F20115\u64AD\u653E\u53C2\u6570\u65E0\u6548")}let{shareId:i,fileId:a,shareUrl:o,fileName:c="",fileSize:u=""}=s,l=QE(o);if(!l)return Wr("\u65E0\u6548\u7684\u963F\u91CC\u4E91\u76D8\u5206\u4EAB\u94FE\u63A5");let d=c,f=u;if(!d){let p=(await a3t(l)).find(m=>m.file_id===a);if(!p)return Wr("\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u6587\u4EF6");d=p.name,f=p.size}console.log(`[ali-to-115] Play request: ${d}`);try{let{getCache:h}=await Promise.resolve().then(()=>(jT(),NBt)),p=await h(e.server);if(!p)return Wr("115 Cookie \u672A\u914D\u7F6E\uFF0C\u8BF7\u5148\u914D\u7F6E115\u8D26\u53F7");let{aliTo115FullFlow:m}=await Promise.resolve().then(()=>(VBt(),HBt)),_=await m({shareUrl:o,fileId:a,fileName:d,fileSize:f,cookie115:p});return console.log(`[ali-to-115] Success: ${d}`),Xs({parse:0,urls:["\u539F\u753B",_.url],header:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Cookie:_.cookie||p,Referer:"https://115.com/",Origin:"https://115.com"}})}catch(h){return console.error(`[ali-to-115] Play failed for ${d}:`,h?.message||h),Wr(`\u79D2\u4F20115\u5931\u8D25: ${h?.message||"\u672A\u77E5\u9519\u8BEF"}`)}}if(r.startsWith(await ht("ali"))){let s;try{s=Mr(n,{minLength:2,fieldOrder:GBt})}catch{return Wr("\u963F\u91CC\u4E91\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}let{shareId:i,fileId:a,subtitleFileId:o=""}=s,u=(await FRe(e,i,a)).down?.url||"",l=[...ba(e,"ali","\u4EE3\u7406","down",i,a,".bin"),...u?["\u539F\u753B",u]:ba(e,"ali","\u539F\u753B","redirect",i,a,".bin")],d=[];o&&d.push(E0(e,"ali",i,o,".bin",{name:"\u5916\u6302\u5B57\u5E55",format:"bin"}));let f=await c3t(i,a);if(f){lK.set(a,f),f.sort((g,y)=>y.template_width-g.template_width);let h={QHD:"\u8D85\u6E05",FHD:"\u9AD8\u6E05",HD:"\u6807\u6E05",SD:"\u666E\u753B",LD:"\u6781\u901F"},p=f.filter(g=>{if(!g?.url)return!1;try{let y=new URL(g.url);return y.protocol==="http:"||y.protocol==="https:"}catch{return!1}}),m=f.some(g=>String(g?.template_id).toUpperCase()==="QHD"),_=p.some(g=>String(g.template_id).toUpperCase()==="QHD");m&&!_&&u&&l.push("\u8D85\u6E05",u),p.forEach(g=>{let y=h[g.template_id]||g.template_id;l.push(y,bLt(e,"ali",g.template_id.toLowerCase(),i,a,".m3u8"))})}else console.warn("[ali play] \u8F6C\u7801\u4FE1\u606F\u83B7\u53D6\u5931\u8D25\uFF0C\u964D\u7EA7\u4E3A\u4EE3\u7406/\u539F\u753B\u7EBF\u8DEF");return Xs({parse:0,urls:l,subtitles:d,header:BRe})}}async function h3t(){if(await Y4(),!Gn.auth||(await Q4(),!Ja.auth))return null;if(!Gn.drive?.resource_drive_id){let e=await sf("user/getDriveInfo",{});e?.resource_drive_id&&(Gn.drive=e)}return Gn.drive?.resource_drive_id||Gn.drive?.default_drive_id||""}async function p3t(e="root",t=""){let r=await h3t();if(!r)return{items:[],next_marker:"",drive_id:""};let n=await sf("openFile/list",{drive_id:r,parent_file_id:e||"root",limit:200,order_by:"name",order_direction:"ASC",marker:t||""});return{items:Array.isArray(n?.items)?n.items:[],next_marker:String(n?.next_marker||""),drive_id:r}}async function $Re(e){let t=await h3t();if(!t||!e)return"";let r=await sf("openFile/getDownloadUrl",{drive_id:t,file_id:e});return String(r?.url||"").trim()}async function jBt(e,t,r=null){if(await Y4(),r||(await s3t(!1),r=WE),!r){let i={hasToken:!!QT,hasUser:!!Gn.user_id,hasDeviceId:!!Gn.device_id,hasOauth:!!Ja.auth,hasDrive:!!Gn.drive?.resource_drive_id};throw console.error("[ali][saveShareFile] \u65E0\u6CD5\u521B\u5EFA\u4FDD\u5B58\u76EE\u5F55\uFF0C\u8C03\u8BD5\u4FE1\u606F:",JSON.stringify(i)),new Error(`\u65E0\u6CD5\u521B\u5EFA\u4FDD\u5B58\u76EE\u5F55: ${JSON.stringify(i)}`)}await pK({shareId:e});let n=YT.get(e);if(!n)throw new Error("\u65E0\u6CD5\u83B7\u53D6\u5206\u4EAB token");let s=await XT("adrive/v2/file/copy",{file_id:t,share_id:e,auto_rename:!0,to_parent_file_id:r,to_drive_id:Gn.drive.resource_drive_id},{"X-Share-Token":n.share_token});if(!s.file_id)throw new Error("\u4FDD\u5B58\u6587\u4EF6\u5931\u8D25");return s.file_id}async function KBt(e){if(await Q4(),!Ja.auth)throw new Error("\u65E0\u6CD5\u83B7\u53D6 OpenAPI \u6388\u6743");let t=await sf("openFile/getDownloadUrl",{file_id:e,drive_id:Gn.drive.resource_drive_id});if(!t.url)throw new Error("\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25");return{url:t.url,contentHash:t.content_hash||null,size:t.size||0,expiration:t.expiration||null}}async function LRe(e){if(e){await Y4();try{await XT("adrive/v2/recyclebin/trash",{drive_id:Gn.drive.resource_drive_id,file_id:e})}catch(t){console.warn("[ali][deleteFile] failed:",t?.message||t)}}}var Gg,zg,fK,GBt,Wln,Xln,Jln,YT,Gn,Ja,XE,zBt,ZBt,YBt,WE,JE,QT,oK,e3t,BRe,cK,WT,uK,lK,Nx,adn,odn,l3t,cdn,udn,ldn,kRe,WBt,XBt,wx=ae(()=>{Gg=Ne(m4(),1),zg=Ne(Gi(),1);ws();Hr();fK=Ne(uLt(),1);ua();NE();Wc();wi();Xc();$l();y0();g0();qg();PE();Zu();GBt=["shareId","fileId","subtitleFileId"],Wln=/https:\/\/www\.alipan\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?|https:\/\/www\.aliyundrive\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?/;Xln="https://api.aliyundrive.com",Jln="https://open.aliyundrive.com/adrive/v1.0",YT=es("ali.shareToken",{maxSize:200,ttl:30*60*1e3}),Gn={},Ja={},XE=null,zBt=!1,ZBt="/ali",YBt="CatVodOpen",WE=null,JE="",QT="",oK=null,e3t="/ali/oauth",BRe={"User-Agent":ax,Referer:"https://www.aliyundrive.com/"};cK=new Map;WT=es("ali.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),uK=new Map;lK=es("ali.transcoding",{maxSize:500,ttl:30*60*1e3}),Nx=es("ali.downloading",{maxSize:500,ttl:60*60*1e3}),adn=128*1024,odn=6,l3t=_s.maxPoolSize,cdn=15*1e3,udn=4,ldn=2*60*1e3,kRe=class{constructor(t){this.maxActive=t,this.active=0,this.waiting=[],this.penaltyUntil=0}getEffectiveMax(){return Date.now(){this.waiting.push({owner:t,resolve:r,reject:n})})}createRelease(){let t=!1;return()=>{t||(t=!0,this.active=Math.max(0,this.active-1),this.drain())}}cancel(t){let r=[];for(let n of this.waiting)n.owner===t?n.reject(new Error("ali source resolver disposed")):r.push(n);this.waiting=r}drain(){for(;this.active0;){let t=this.waiting.shift();if(t.owner.disposed){t.reject(new Error("ali source resolver disposed"));continue}this.active+=1,t.resolve(this.createRelease())}}},WBt=new Map;XBt={chunkSize:512*1024,poolSize:odn,useMultithread:!0}});async function Z4(e){if(e.includes("pan.qoark.cn"))try{let r=m3t.exec(e);if(r&&r[1])return{shareId:r[1],folderId:"0"};let n=await ve.get(e,{maxRedirects:2,timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"}}),s=n.request?.res?.responseUrl||n.headers?.location||e;if(s.startsWith("/")){let i=new URL(e);s=`${i.protocol}//${i.host}${s}`}e=s}catch(r){console.error("\u5938\u514B\u77ED\u94FE\u63A5\u91CD\u5B9A\u5411\u5931\u8D25:",r);let n=m3t.exec(e);return n&&n[1]?{shareId:n[1],folderId:"0"}:null}let t=gdn.exec(e);return t?{shareId:t[1],folderId:"0"}:null}async function up(e){let r=(e?.server?.config?.quark||{}).cookie||"",n=eb.default.enc.Hex.stringify(eb.default.MD5(r)).toString();if((!g3t||!Ox||JT!==n||!Ai)&&(Ox=e.server.db,Ai=r,JT=n),Ox){let s=await Ox.getObjectDefault("/quark",{});s[JT]&&s[JT]!==Ai&&(Ai=s[JT])}g3t=!0}async function Hl(e,t,r,n,s){return r=r||{},Object.assign(r,ZE),Object.assign(r,{Cookie:Ai||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await Xe.get(`${_3t}/${e}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&en.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await Xe.post(`${_3t}/${e}`,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&en.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&Ai.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(Ai=Ai.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Ox.push(`/quark/${JT}`,Ai))}return a.status===429&&(s||3)>0?(await zt(1e3),await Hl(e,t,r,n,(s||3)-1)):a.data||{}})()}async function jRe(e,t,r,n,s){return r=r||{},Object.assign(r,ZE),Object.assign(r,{Cookie:Ai||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await Xe.get(e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&en.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await Xe.post(e,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&en.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&Ai.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(Ai=Ai.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Ox.push(`/quark/${JT}`,Ai))}return a.status===429&&(s||3)>0?(await zt(1e3),await jRe(e,t,r,n,(s||3)-1)):a.data||{}})()}async function y3t(){let e=await Hl(`file/sort?${ql}&pdir_fid=${ZT}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data?.list?.length>0){let t=e.data.list.map(r=>Hl(`file/delete?${ql}`,{action_type:2,filelist:[r.fid],exclude_fids:[]}));await Promise.all(t)}}async function _dn(e){if(ZT){e&&await y3t();return}let t=await Hl(`file/sort?${ql}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data?.list){for(let r of t.data.list)if(r.file_name===E3t){ZT=r.fid,await y3t();break}}if(!ZT){let r=await Hl(`file?${ql}`,{pdir_fid:"0",file_name:E3t,dir_path:"",dir_init_lock:!1});r.data?.fid&&(ZT=r.data.fid)}}function Edn(e){if(e?.file!==!0)return!1;if(e.obj_category==="video")return!0;let t=String(e.file_name||"").toLowerCase();return Adn.some(r=>t.endsWith(r))}async function J4(e){let t=`${e.shareId}_${e.sharePwd||""}`,r=A3t.get(t);if(r)return r;if(mK.has(t))return await mK.get(t);let n=(async()=>{try{let s=await Hl(`share/sharepage/token?${ql}`,{pwd_id:e.shareId,passcode:e.sharePwd||""});return s.data?.stoken?(A3t.set(t,s.data),s.data):null}finally{mK.delete(t)}})();return mK.set(t,n),await n}async function b3t(e,t,r={}){let n=typeof e=="string"?await Z4(e):e;if(!n)return[];let s=await J4(n);if(!s)return[];let i=[],a=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),o=a>0,c=Math.max(1,Math.min(200,Number(r.pageLimit||r.perPage||200)||200)),u=Math.max(1,Number(r.batchSize)||1e3),l=Math.max(0,Number(r.batchIntervalMs)||0),d=o?a:1,f=1,h=0,p=0,m=!1;do{let g=await Hl(`share/sharepage/detail?${ql}&pwd_id=${n.shareId}&stoken=${encodeURIComponent(s.stoken)}&pdir_fid=${t||n.folderId||"0"}&force=0&_page=${d}&_size=${c}&_sort=file_type:asc,file_name:asc`,{},{},"get"),y=Array.isArray(g?.data?.list)?g.data.list:[];i.push(...y),p+=y.length;let A=Number(g?.metadata?._total||g?.data?._total||g?.data?.total||0);if(A>0&&(h=A),m=A>0?d*c=c,f=A>0?Math.max(1,Math.ceil(A/c)):m?d+1:d,o)break;m&&l>0&&p>=u&&(p=0,await zt(l)),d+=1}while(d<=f);let _=i.map(g=>({...g,stoken:s.stoken,share_fid_token:g?.share_fid_token||g?.fid_token||g?.file_token||g?.share_file_token||g?.obj_token||"",size:Number(g?.size||g?.file_size||g?.fileSize||g?.file?.size||0)}));return o?{items:_,paged:!0,page:a,pageSize:c,total:h>0?h:(a-1)*c+_.length+(m?c:0)}:_}async function ydn(e){let t=typeof e=="string"?await Z4(e):e;if(!t)return[];let r=await J4(t);if(!r)return[];let n=[],s=async(i,a,o="",c=1)=>{let l=await Hl(`share/sharepage/detail?${ql}&pwd_id=${i}&stoken=${encodeURIComponent(r.stoken)}&pdir_fid=${a}&force=0&_page=${c}&_size=100&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!l.data)return;let d=l.data.list;if(!d)return;let f=[],h=[],p=[];for(let g of d)g.dir===!0?f.push({item:g,path:o+(o?"/":"")+g.file_name}):Edn(g)?(g.stoken=r.stoken,h.push(g)):g.file===!0&&vt(g.file_name)&&p.push(g);for(let g of h){let y=Ir(g.file_name,p,E=>E.file_name),A=y?.share_fid_token||y?.fid_token||"";y?.fid&&A&&(g.subtitle={fid:y.fid,share_fid_token:A,ext:tr(y.file_name)})}let m=Kt(h);n.push(...m),cs(i,g.item.fid,g.path));await Promise.all(_)};return await s(t.shareId,t.folderId,""),n}function vdn(e,t){let n=(gK.get(e)||Promise.resolve()).catch(()=>{}).then(()=>t()),s=n.catch(()=>{});return gK.set(e,s),s.finally(()=>{gK.get(e)===s&&gK.delete(e)}),n}async function Sdn(){let e=Date.now();if(X4.token&&e-X4.ts<55*1e3)return X4.token;let t={conversation_id:`300000${e}`,conversation_type:3,msg_id:`${e}000`},n=await jRe("https://drive-social-api.quark.cn/1/clouddrive/chat/conv/file/acquire_dl_token?pr=ucpro&fr=pc&sys=darwin&ve=3.19",t,{"Content-Type":"application/json"}),s=n?.status===200&&n?.code===0?n?.data?.token:"";return s&&(X4.token=s,X4.ts=e),s||""}async function Tdn(e,t,r,n){if(!e||!r||!n)return null;let s=t;s||(s=(await J4({shareId:e,sharePwd:""}))?.stoken||"");let i={fids:[r],fids_token:[n],pwd_id:e,stoken:s||"",speedup_session:""},a=await Sdn();a&&(i.token=a);let c=(await jRe(`https://drive-pc.quark.cn/1/clouddrive/file/download?${ql}`,i))?.data?.[0];return c?.download_url?c:null}async function bdn(e,t,r,n,s){return vdn(e,()=>Idn(e,t,r,n,s))}async function Idn(e,t,r,n,s){if(await _dn(s),s&&_K.clear(),!ZT)return null;let i=t;if(!i&&(i=(await J4({shareId:e,sharePwd:""}))?.stoken||"",!i))return null;let a=async c=>await Hl(`share/sharepage/save?${ql}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:ZT,pwd_id:e,stoken:c,pdir_fid:"0",scene:"link"}),o=await a(i);if(!o?.data?.task_id){let u=(await J4({shareId:e,sharePwd:""}))?.stoken||"";if(!u)return!1;o=await a(u)}if(o.data?.task_id){let c=0;for(;c<=5;){let u=await Hl(`task?${ql}&task_id=${o.data.task_id}&retry_index=${c}`,{},{},"get");if(u.data?.save_as?.save_as_top_fids?.length>0)return u.data.save_as.save_as_top_fids[0];c++,await zt(1e3)}}return!1}async function v3t(e,t,r,n,s){if(!_K.has(r)){let a=await bdn(e,t,r,n,s);if(!a)return null;_K.set(r,a)}return(await Hl(`file/download?${ql}`,{fids:[_K.get(r)]})).data?.[0]||null}function Rdn(e){if(!e||e.length<16||!e.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])))return!1;let r=e.subarray(8,12).equals(Buffer.from([26,69,223,163])),n=e.subarray(12,16).equals(Buffer.from("ftyp"));return r||n}async function S3t(e,t){if(!e)return!1;if(qRe.has(t))return qRe.get(t);try{let r=await ve.get(e,{headers:{Cookie:Ai,...ZE,Range:"bytes=0-15"},responseType:"arraybuffer",timeout:2e4,validateStatus:s=>s===200||s===206}),n=Rdn(r.data||Buffer.alloc(0));return qRe.set(t,n),n}catch{return!1}}async function T3t(e,t,r,n,s,i){let a=Number(n?.size||n?.file_size||n?.fileSize||0),o=Math.max(a-8,0);if(o<=0){t.sent||t.code(502).send({error:"invalid disguised media size"});return}return dx(e.headers.range,o)?.unsatisfied?(t.code(416).headers({"content-range":`bytes */${o}`,"accept-ranges":"bytes","cache-control":"no-store"}),""):await ac(e,t,r,i,{Cookie:Ai,...ZE},{chunkSize:s.chunkSize,poolSize:s.poolSize,timeout:1e3*10},o,!0,8)}async function I3t(e,t){if(t&&await up(t),await gLt(e)){let r=await Z4(e);if(r){let n=await ydn(r);if(n?.length>0){let s=await ht("quark"),i=n.map(a=>({vod_id:Ot([r.shareId,a.stoken,a.fid,a.share_fid_token,a.subtitle?.fid||"",a.subtitle?.share_fid_token||"",a.subtitle?.ext||""],{structured:!0}),vod_name:a.file_name,vod_size:a.size}));return Ta(s,i)}}}return[]}async function R3t(e,t){try{await up(e);let r=e.params.site,n=e.params.what,s=e.params.shareId,i=e.params.fileId;if(r!=="quark")return;let a=Mr(i,{fieldOrder:["stoken","fid","shareFidToken"]}),o=e.params.flag,c=eb.default.enc.Hex.stringify(eb.default.MD5(e.server.config.quark.cookie)).toString(),u=zi(await e.server.db.getObjectDefault(`/quark/settings/${c}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1});if(n==="trans"){t.sent||t.code(404).send({error:"quark transcoding disabled"});return}else{if(o==="subt"){let d=await v3t(s,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,!1);if(!d?.download_url){t.sent||t.code(404).send({error:"subtitle not found"});return}let f=await xdn(d.download_url);if(!f){t.sent||t.code(502).send({error:"subtitle fetch failed"});return}let h=f;if(String(e.params.end||"").toLowerCase().endsWith(".srt")&&Ndn(f)){let _=DT(f.toString("utf8"));h=Buffer.from(_,"utf8")}let m=wdn(h,e.params.end);return t.code(200).headers({"content-type":m,"content-length":String(h.length),"cache-control":"no-store"}),h}if(o==="fast"){if(!u.enableFast){t.sent||t.code(403).send({error:"fast disabled"});return}let d=Date.now(),f=VRe.get(a.fid),h=f&&d-f.ts0?m:null;if(!u.useMultithread){t.redirect(h.download_url);return}try{return await ac(e,t,h.download_url,`fast_${a.fid}`,{Cookie:Ai,...ZE},{chunkSize:u.chunkSize,poolSize:u.poolSize,timeout:1e3*10},_,!0)}catch(g){console.error("[quark fast] chunkStream error, clearing cache:",g.message),VRe.delete(a.fid),t.sent||t.code(503).send({error:"fast stream error, please retry"})}}return}let l=HRe.get(a.fid);if(l||(l=await v3t(s,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,o==="down"),l&&HRe.set(a.fid,l)),l?.download_url){if(o==="redirect"||!u.useMultithread){t.redirect(l.download_url);return}if(await S3t(l.download_url,a.fid))return await T3t(e,t,l.download_url,l,u,a.fid);let f=Number(l.size||l.file_size||l.fileSize||0),h=f>0?f:null;try{return await ac(e,t,l.download_url,a.fid,{Cookie:Ai,...ZE},{chunkSize:u.chunkSize,poolSize:u.poolSize,timeout:1e3*10},h,!0)}catch(p){console.error("[quark proxy] chunkStream error, clearing cache:",p.message),HRe.delete(a.fid),t.sent||t.code(503).send({error:"stream error, please retry"})}}}}catch(r){console.error("[quark proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function AK(e,t){await up(e);let r=e.body.flag,n=e.body.id;if(r.startsWith(await ht("quark"))){let{shareId:s,stoken:i,fid:a,shareFidToken:o,subtitleFid:c="",subtitleShareFidToken:u="",subtitleExt:l=""}=Mr(n,{fieldOrder:["shareId","stoken","fid","shareFidToken","subtitleFid","subtitleShareFidToken","subtitleExt"]}),d=eb.default.enc.Hex.stringify(eb.default.MD5(e.server.config.quark.cookie)).toString(),f=zi(await e.server.db.getObjectDefault(`/quark/settings/${d}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),h=encodeURIComponent(Ot([i,a,o],{structured:!0})),p=[],m=ba(e,"quark","\u5FEB\u4F20","fast",s,h,".bin"),_=ba(e,"quark","\u4EE3\u7406","down",s,h,".bin"),g=ba(e,"quark","\u539F\u753B","redirect",s,h,".bin");f.enableFast?p.push(...m,..._,...g):p.push(..._,...g);let y=[],A={Cookie:Ai,...ZE};if(c){let E=Odn(l||"")||"srt",v=encodeURIComponent(Ot([i,c,u,E],{structured:!0}));y.push(E0(e,"quark",s,v,`.${E}`,{name:"\u5916\u6302\u5B57\u5E55",format:E}))}return Xs({parse:0,urls:p,subtitles:y,header:A})}return Wr("\u5938\u514B\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}async function xdn(e){if(!e)return null;let t={Cookie:Ai,...ZE};try{let r=await ve.get(e,{headers:t,responseType:"arraybuffer",maxRedirects:0,timeout:2e4,validateStatus:a=>a>=200&&a<400});if(r.status===200&&r.data)return r.data;let n=r.headers?.location;if(r.data=null,!n)return null;let s=new URL(n,e).toString(),i=await ve.get(s,{headers:t,responseType:"arraybuffer",timeout:3e4,validateStatus:a=>a===200});try{return i.data||null}finally{i.data&&(i.data=null)}}catch{return null}}function wdn(e,t=""){let r=String(t||"").toLowerCase();if(r.endsWith(".ass")||r.endsWith(".ssa"))return"text/x-ssa; charset=utf-8";if(r.endsWith(".vtt"))return"text/vtt; charset=utf-8";if(r.endsWith(".srt"))return"application/x-subrip; charset=utf-8";let n=Buffer.from(e).subarray(0,4096).toString("utf8").toLowerCase();return n.includes("[script info]")?"text/x-ssa; charset=utf-8":n.includes("webvtt")?"text/vtt; charset=utf-8":n.includes("-->")?"application/x-subrip; charset=utf-8":"text/plain; charset=utf-8"}function Ndn(e){let t=Buffer.from(e).subarray(0,8192).toString("utf8").toLowerCase();return t.includes("[script info]")||t.includes("[events]")||t.includes("dialogue:")}function Odn(e=""){let t=tr(e);if(t)return t;let r=String(e||"").replace(/^\./,"").toLowerCase();return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}async function C3t(e="0",t=1,r=200){let n=Math.max(1,Number.parseInt(t,10)||1),s=`file/sort?${ql}&pdir_fid=${encodeURIComponent(e||"0")}&_page=${n}&_size=${r}&_sort=file_type:asc,updated_at:desc`,i=await Hl(s,{},{},"get"),a=Array.isArray(i?.data?.list)?i.data.list:[],o=[],c=[];return a.forEach(u=>{u?.dir===!0||u?.dir===1||u?.file_type===0?o.push(u):c.push(u)}),{folderList:o,fileList:c,count:Number(i?.metadata?._total||a.length||0)}}async function EK(e){return e&&(await Hl(`file/download?${ql}`,{fids:[e]}))?.data?.[0]||null}var eb,m3t,gdn,ql,ZE,Ox,JT,g3t,_3t,Ai,A3t,E3t,ZT,mK,Adn,_K,gK,X4,qRe,HRe,VRe,Cdn,eB=ae(()=>{Hr();Pr();PE();eb=Ne(Gi(),1);ws();ua();NE();Wc();Hd();wi();g0();pj();Xc();$l();y0();Zu();m3t=/pan\.qoark\.cn\/s\/([^\/?#]+)/,gdn=/https:\/\/pan\.quark\.cn\/s\/([^\/?#]+)/;ql="pr=ucpro&fr=pc",ZE={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) quark-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://pan.quark.cn"},Ox=null,JT=null,g3t=!1,_3t="https://drive.quark.cn/1/clouddrive/",Ai="",A3t=es("quark.shareToken",{maxSize:200,ttl:30*60*1e3}),E3t="CatVodOpen",ZT=null;mK=new Map,Adn=[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".m4v",".mpg",".mpeg",".3gp",".f4v",".vob",".rm",".iso",".asf",".divx"];_K=es("quark.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),gK=new Map;X4={token:"",ts:0};qRe=es("quark.disguisedHeader",{maxSize:500,ttl:60*60*1e3});HRe=es("quark.downloading",{maxSize:500,ttl:5*60*1e3}),VRe=es("quark.fast",{maxSize:500,ttl:60*1e3}),Cdn=60*1e3});async function QRe(e){e.get("/qrcode",async(t,r)=>{let n=await ve.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":KRe,referer:"https://drive.uc.cn"}});w3t=p0(n.headers["set-cookie"]),GRe=n.data.data.members.token;let s=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${GRe}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,i=await N3t.default.toBuffer(s,{width:300,height:300});r.send(i)}),e.post("/cookie",(t,r)=>{ve.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${GRe}&client_id=381&v=1.2&request_id=${Date.now()}`).then(n=>n.data.status===2e6?{data:n.data.data,cookies:w3t}:Promise.reject(new Error(`service_ticket\u83B7\u53D6\u5931\u8D25: ${n.data.message}`))).then(async({data:n,cookies:s})=>{let i=await ve.get(`https://drive.uc.cn/account/info?st=${n.members.service_ticket}&fr=pc&platform=pc`,{headers:{"User-Agent":KRe,Cookie:s.join(""),referer:"https://drive.uc.cn"}});return i.headers["set-cookie"]?s.concat(p0(i.headers["set-cookie"])):Promise.reject(new Error(`\u4E2A\u4EBAPus\u83B7\u53D6\u5931\u8D25\uFF1A${i.data.message}`))}).then(async n=>{let s=await ve.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":KRe,Cookie:n.join("")}});if(s.headers["set-cookie"])r.send({code:0,data:n.concat(p0(s.headers["set-cookie"])).join("")});else return Promise.reject(new Error(`\u4E2A\u4EBAPuus\u83B7\u53D6\u5931\u8D25\uFF1A${s.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await Ddn(t.server)})}),e.put("/cookie",async(t,r)=>{await Pdn(t.server,t.body.cookie),r.send({code:0})}),e.get("/ut",async(t,r)=>{r.send({code:0,data:await zRe(t.server)})}),e.put("/ut",async(t,r)=>{await YRe(t.server,t.body.ut),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=Qg.default.enc.Hex.stringify(Qg.default.MD5(t.server.config.uc.cookie)).toString(),s={chunkSize:64*1024,poolSize:16,useMultithread:!0},i=await t.server.db.getObjectDefault(`/uc/settings/${n}`,s),a=zi(i,s),o={chunkSize:a.chunkSize,poolSize:a.poolSize,useMultithread:a.useMultithread};r.send({code:0,data:o})}catch(n){console.error("\u83B7\u53D6UC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=OE(t.body,{chunkSize:65536,poolSize:16,useMultithread:!0});if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let s=Qg.default.enc.Hex.stringify(Qg.default.MD5(t.server.config.uc.cookie)).toString();await t.server.db.push(`/uc/settings/${s}`,n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58UC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var N3t,Qg,KRe,yK,vK,w3t,GRe,Ddn,Pdn,zRe,YRe,WRe=ae(()=>{Pr();N3t=Ne(qE(),1),Qg=Ne(Gi(),1);ws();Zu();KRe="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",yK="cookie",vK="ut",w3t=[],GRe=null,Ddn=async e=>{let t=String(e.config?.uc?.cookie||""),r=Qg.default.enc.Hex.stringify(Qg.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[yK]?n[yK]:n[r]?n[r]:t?(await e.db.push(`/uc/${yK}`,t),t):""},Pdn=async(e,t)=>{await e.db.push(`/uc/${yK}`,t)},zRe=async e=>{let t=String(e.config?.uc?.ut||""),r=Qg.default.enc.Hex.stringify(Qg.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[vK]?n[vK]:n[r]?n[r]:t?(await e.db.push(`/uc/${vK}`,t),t):""},YRe=async(e,t)=>{await e.db.push(`/uc/${vK}`,t)}});function Dx(e,t){let r=t?e:Zc.DeviceID,n=t||e;return b0.default.MD5(r+n).toString().slice(0,16)}function xK(e,t,r,n){return b0.default.SHA256((e||"GET")+"&"+(t||"/file")+"&"+r+"&"+(n||li.signKey)).toString()}function nB(e){let t=Ldn.exec(e);if(!t)return null;let r="";try{let n=new URL(String(e||""));r=n.searchParams.get("pwd")||n.searchParams.get("password")||n.searchParams.get("passcode")||""}catch{}return{shareId:t[1],sharePwd:r,folderId:"0",url:String(e||"")}}function $3t(){return{Cookie:af||"","User-Agent":NK["User-Agent"]}}async function dp(e){let t=e.server.config.uc,r=b0.default.enc.Hex.stringify(b0.default.MD5(t.cookie)).toString(),n=b0.default.enc.Hex.stringify(b0.default.MD5(t.token)).toString(),s=b0.default.enc.Hex.stringify(b0.default.MD5(t.ut)).toString();if(O3t&&lp&&tB===r&&eCe===n&&tCe===s)return;lp=e.server.db,af=t.cookie,rCe=String(t.token||""),tB=r,eCe=n,tCe=s;let i=await lp.getObjectDefault("/uc",{});if(i[nCe]?af=i[nCe]:i[tB]&&(af=i[tB]),SK=await zRe(e.server),!SK)try{await Xe.get(`${RK}/file`)}catch(a){a?.response?.data&&(SK=a.response.data,YRe(e.server,SK))}O3t=!0}async function Vl(e,t,r,n,s){return r=r||{},Object.assign(r,NK),Object.assign(r,{Cookie:af||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await Xe.get(`${RK}/${e}`,{headers:r}).catch(o=>(console.error("[uc api] request failed:",n.toUpperCase(),e,o?.response?.status||o?.code||o?.message),o?.response?.status===401&&en.toast("UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await Xe.post(`${RK}/${e}`,t,{headers:r}).catch(o=>(console.error("[uc api] request failed:",n.toUpperCase(),e,o?.response?.status||o?.code||o?.message),o?.response?.status===401&&en.toast("UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&af.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(af=af.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await lp.push(`/uc/${nCe}`,af))}return a.status===429&&(s||3)>0?(await zt(1e3),await Vl(e,t,r,n,(s||3)-1)):a.data||{}})()}async function L3t(){let e=await Vl(`file/sort?${eu}&pdir_fid=${tb}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data?.list?.length>0){let t=e.data.list.map(r=>Vl(`file/delete?${eu}`,{action_type:2,filelist:[r.fid],exclude_fids:[]}));await Promise.all(t)}}async function Bdn(e){if(tb){e&&await L3t();return}let t=await Vl(`file/sort?${eu}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data?.list){for(let r of t.data.list)if(r.file_name===P3t){tb=r.fid,await L3t();break}}if(!tb){let r=await Vl(`file?${eu}`,{pdir_fid:"0",file_name:P3t,dir_path:"",dir_init_lock:!1});r.data?.fid&&(tb=r.data.fid)}}async function CK(e){let t=`${e.shareId}_${e.sharePwd||""}`,r=D3t.get(t);if(r)return r;if(TK.has(t))return await TK.get(t);let n=(async()=>{try{let s=await Vl(`share/sharepage/token?${eu}`,{pwd_id:e.shareId,passcode:e.sharePwd||""});return s.data?.stoken?(D3t.set(t,s.data),s.data):null}finally{TK.delete(t)}})();return TK.set(t,n),await n}async function Udn(e){let t=typeof e=="string"?nB(e):e;if(!t)return[];let r=await CK(t);if(!r)return[];let n=[],s=async(i,a,o="",c=1)=>{let l=await Vl(`share/sharepage/detail?${eu}&pwd_id=${i}&stoken=${encodeURIComponent(r.stoken)}&pdir_fid=${a}&force=0&_page=${c}&_size=100&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!l.data)return;let d=l.data.list;if(!d)return;let f=[],h=[],p=[];for(let g of d)g.dir===!0?f.push({item:g,path:o+(o?"/":"")+g.file_name}):g.file===!0&&g.obj_category==="video"?(g.stoken=r.stoken,g.pdir_fid=a,h.push(g)):g.file===!0&&vt(g.file_name)&&p.push(g);for(let g of h){let y=Ir(g.file_name,p,E=>E.file_name),A=y?.share_fid_token||y?.fid_token||"";y?.fid&&A&&(g.subtitle={fid:y.fid,share_fid_token:A,ext:tr(y.file_name),pdir_fid:a,size:y.size||y.file_size||0})}let m=Kt(h);n.push(...m),cs(i,g.item.fid,g.path));await Promise.all(_)};return await s(t.shareId,t.folderId,""),n}async function q3t(e,t="0",r={}){let n=typeof e=="string"?nB(e):e;if(!n?.shareId)return{items:[],stoken:""};let s=await CK(n);if(!s?.stoken)return{items:[],stoken:""};let i=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),a=i>0,o=Math.max(1,Math.min(1e3,Number(r.batchSize)||200)),c=Math.max(0,Math.min(1e4,Number(r.batchIntervalMs)||0)),u=String(t||n.folderId||"0"),l=[],d=a?i:1,f=0,h=!1;for(;;){let p=await Vl(`share/sharepage/detail?${eu}&pwd_id=${n.shareId}&stoken=${encodeURIComponent(s.stoken)}&pdir_fid=${u}&force=0&_page=${d}&_size=${o}&_sort=file_type:asc,file_name:asc`,{},{},"get"),m=Array.isArray(p?.data?.list)?p.data.list:[];if(m.forEach(_=>{_.stoken=s.stoken}),l.push(...m),f=Number(p?.metadata?._total||p?.data?._total||p?.data?.total||f||0),h=m.length>=o&&!(f>0&&d*o>=f),a||!h)break;d+=1,c>0&&await zt(c)}return a?{items:l,stoken:s.stoken,paged:!0,page:i,pageSize:o,total:f>0?f:(i-1)*o+l.length+(h?o:0)}:{items:l,stoken:s.stoken}}function Fdn(e,t){let n=(bK.get(e)||Promise.resolve()).catch(()=>{}).then(()=>t()),s=n.catch(()=>{});return bK.set(e,s),s.finally(()=>{bK.get(e)===s&&bK.delete(e)}),n}async function $dn(e,t,r,n,s){return Fdn(e,()=>qdn(e,t,r,n,s))}async function qdn(e,t,r,n,s){if(await Bdn(s),s&&rB.clear(),!tb)return null;let i=t;if(!i&&(i=(await CK({shareId:e,sharePwd:""}))?.stoken||"",!i))return null;let a=async c=>await Vl(`share/sharepage/save?${eu}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:tb,pwd_id:e,stoken:c,pdir_fid:"0",scene:"link"}),o=await a(i);if(!o?.data?.task_id){let u=(await CK({shareId:e,sharePwd:""}))?.stoken||"";if(!u)return!1;o=await a(u)}if(o.data?.task_id){let c=0;for(;c<=5;){let u=await Vl(`task?${eu}&task_id=${o.data.task_id}&retry_index=${c}`,{},{},"get");if(u.data?.save_as?.save_as_top_fids?.length>0)return u.data.save_as.save_as_top_fids[0];c++,await zt(1e3)}}return!1}async function Hdn(){if(!lp)return null;let e=String(await lp.getObjectDefault("/uc/refresh_token","")||"").trim();if(!e)return null;let t=Math.floor(Date.now()/1e3).toString()+"000",n={req_id:Dx(Zc.DeviceID,t),app_ver:li.appVer,device_id:Zc.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:li.channel,refresh_token:e};try{let i=(await ve.post(`${li.codeApi}/token`,n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"},timeout:1e4}))?.data;if(i?.code===200&&i.data?.access_token)return await lp.push("/uc/token",i.data.access_token),i.data.refresh_token&&await lp.push("/uc/refresh_token",i.data.refresh_token),console.log("[uc] access_token \u5DF2\u81EA\u52A8\u5237\u65B0"),i.data.access_token;console.warn("[uc] refresh \u54CD\u5E94\u5F02\u5E38:",JSON.stringify(i||{}).slice(0,200))}catch(s){console.error("[uc] refreshAccessToken \u5931\u8D25:",s?.response?.data?JSON.stringify(s.response.data).slice(0,200):s?.message)}return null}function Vdn(e){if(!e)return!1;if(e.status===-1&&(e.errno===10001||e.errno===11001))return!0;let t=String(e.error_info||"").toLowerCase();return t.includes("access token")||t.includes("access_token")||t.includes("token\u65E0\u6548")||t.includes("token \u65E0\u6548")}async function sCe(){let e=await lp.getObjectDefault("/uc",{});return e[Mdn]||(rCe?e[eCe]||rCe:"")}async function M3t(e,t,r,n,s,i={}){let a=i?.mode||"auto",o=a==="cookie"?"":await sCe();if(a==="token"&&!o)return null;if(!rB.has(r)){let l=await $dn(e,t,r,n,s);if(!l)return null;rB.set(r,l)}let c=await lp.getObjectDefault("/uc",{}),u=c[kdn]||c[tCe];if(o){let l=f=>{let h=Math.floor(Date.now()/1e3).toString()+"000",p=Dx(h),m=xK("GET","/file",h,li.signKey);return{method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:p,access_token:f,app_ver:li.appVer,device_id:Zc.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:li.channel,method:"streaming",group_by:"source",fid:rB.get(r),resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":h,"x-pan-token":m,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":li.clientID},timeout:15e3}},d=o;for(let f=0;f<2;f++)try{let h=await ve.request(l(d));if(h.status===200){let p=h.data.data?.video_info?.filter(m=>m.accessable)?.[0];if(p)return p.download_url=p.url,p}break}catch(h){if(f===0&&Vdn(h?.response?.data)){let p=await Hdn();if(p){d=p;continue}}break}if(a==="token")return null}if(a==="token")return null;{let l=`file/download?${eu}`;return u&&(l+=`&ut=${u}`),(await Vl(l,{fids:[rB.get(r)]})).data?.[0]||null}return null}async function H3t(e,t){if(t&&await dp(t),await _Lt(e)){let r=nB(e);if(r){let n=await Udn(r);if(n?.length>0){let s=await ht("uc"),i=n.map(u=>({vod_id:Ot([r.shareId,u.stoken,u.fid,u.share_fid_token,u.subtitle?.fid||"",u.subtitle?.share_fid_token||"",u.subtitle?.ext||"",r.sharePwd||"",u.pdir_fid||"0",u.size||u.file_size||0,u.subtitle?.pdir_fid||u.pdir_fid||"0",u.subtitle?.size||0],{structured:!0}),vod_name:u.file_name,vod_size:u.size})),a=Fg(wK,i),o=Zd(ir.uc.unlimited,a?[a]:[]),c=Zd(ir.uc.original,Ta(s,i));return[...o,...c]}}}return[]}async function jdn(e){let t=tB||b0.default.enc.Hex.stringify(b0.default.MD5(e.config.uc.cookie)).toString(),r=await e.db.getObjectDefault(`/uc/settings/${t}`,k3t),n=zi(r,k3t);return{chunkSize:n.chunkSize,poolSize:n.poolSize,useMultithread:n.useMultithread}}function Kdn(e){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}async function iCe(e,t={},r="post"){return(await ve.request({method:r,url:`${RK}${e}`,data:r==="get"?void 0:t,headers:{...NK,"Content-Type":"application/json"},timeout:2e4,validateStatus:s=>s>=200&&s<500}))?.data||{}}async function B3t(e,t="",r=!1){let n=`${e}_${t||""}`;r&&JRe.delete(n);let s=JRe.get(n);if(s?.stoken)return s;let a=(await iCe(`share/sharepage/token?${eu}`,{pwd_id:e,passcode:t||""}))?.data;return a?.stoken?(JRe.set(n,a),a):null}async function Gdn(e,t,r,n=1){return iCe(`share/sharepage/detail?${eu}&pwd_id=${encodeURIComponent(e)}&stoken=${encodeURIComponent(t)}&pdir_fid=${encodeURIComponent(r||"0")}&force=0&_page=${n}&_size=100&_sort=file_type:asc,file_name:asc`,{},"get")}async function zdn(e,t,r,n=""){let s=[];n&&n!=="0"&&s.push(String(n)),s.push("0");let i=new Set;for(;s.length>0&&i.size<2e3;){let a=s.shift();if(i.has(a))continue;i.add(a);let o=1;for(;o<=100;){let c=await Gdn(e,t,a,o),u=Array.isArray(c?.data?.list)?c.data.list:[];for(let d of u){if(d?.file===!0&&String(d.fid)===String(r))return d;d?.dir===!0&&d.fid&&s.push(String(d.fid))}let l=Number(c?.metadata?._total||c?.data?.metadata?._total||u.length||0);if(u.length===0||o*100>=l)break;o+=1}}return null}async function U3t(e,t,r,n){if(!e||!t||!r||!n)return null;let i=(await iCe(`file/download?${eu}`,{fids:[r],fids_token:[n],pwd_id:e,stoken:t,speedup_session:""}))?.data?.[0];return i?.download_url?i:null}function V3t(e,t){return`${e}:${t}`}async function Ydn(e,t=!1){let{shareId:r,fileId:n,sharePwd:s="",parentFid:i="",size:a=0}=e||{};if(!r||!n)return null;let o=V3t(r,n);t&&IK.delete(o);let c=IK.get(o);if(c?.download_url)return c;let u=Kdn(e?.stoken),l=e?.fileToken||"";u||(u=(await B3t(r,s))?.stoken||"");let d=await U3t(r,u,n,l);if(!d){u=(await B3t(r,s,!0))?.stoken||"";let p=u?await zdn(r,u,n,i):null;l=p?.share_fid_token||p?.fid_token||"",d=await U3t(r,u,n,l)}if(!d?.download_url)return null;let f={...d,size:Number(d.size||d.file_size||d.fileSize||a||0)};return IK.set(o,f),f}function Qdn(e,t=""){let r={"User-Agent":NK["User-Agent"],Referer:`${e}\\ `,"Accept-Encoding":"identity"};return t&&(r.Range=t),r}async function Wdn(e,{range:t="",responseType:r="stream"}={}){let n=Qdn(e,t);return ve.request({method:"get",url:e,headers:n,responseType:r,timeout:3e4,maxRedirects:5,maxBodyLength:1/0,maxContentLength:1/0,decompress:!1,beforeRedirect:s=>{s.headers={...s.headers||{},...n},delete s.headers.Cookie,delete s.headers.cookie},validateStatus:s=>s===200||s===206||s===416})}function Xdn(e){return Mr(e,{fieldOrder:["stoken","fid","shareFidToken","sharePwd","parentFid","size"]})}function Jdn(e){let t=String(e||"").match(/\/([0-9]+)$/);return t?Number(t[1]):0}function ZRe(e,t=0){let r=e?.headers||{},n={"accept-ranges":"bytes","cache-control":"no-store"};for(let s of["content-type","content-length","content-range","etag","last-modified"])r[s]!==void 0&&(n[s]=String(r[s]));return n["content-type"]||(n["content-type"]="application/octet-stream"),!n["content-length"]&&Number(t)>0&&(n["content-length"]=String(Number(t))),n}function Zdn(e,t,r){let n=!1,s=()=>{e.raw?.removeListener("aborted",a),t.raw?.removeListener("close",a)},i=()=>{n=!0,s()},a=()=>{!n&&r&&!r.destroyed&&r.destroy(),s()};return e.raw?.once("aborted",a),t.raw?.once("close",a),r.once("end",i),r.once("close",i),r.once("error",i),r}async function j3t(e,t,r){let n=null;for(let s=0;s<2;s+=1){let i=await Ydn({shareId:t,stoken:e.stoken,fileId:e.fid,fileToken:e.shareFidToken,sharePwd:e.sharePwd,parentFid:e.parentFid,size:e.size},s>0);if(!i?.download_url)return{response:null,downloadInfo:null};try{return{response:await Wdn(i.download_url,r),downloadInfo:i}}catch(a){n=a;let o=Number(a?.response?.status||0);if(s===0&&(o===401||o===403||o===404||o===410)){IK.delete(V3t(t,e.fid));continue}break}}if(n)throw n;return{response:null,downloadInfo:null}}async function efn(e,t,r,n){let{response:s}=await j3t(r,n,{responseType:"arraybuffer"});if(!s||s.status!==200||!s.data){t.sent||t.code(404).send({error:"UC\u65E0\u9650\u5B57\u5E55\u83B7\u53D6\u5931\u8D25"});return}let i=Buffer.from(s.data);return String(e.params.end||"").toLowerCase().endsWith(".srt")&&z3t(i)&&(i=Buffer.from(DT(i.toString("utf8")),"utf8")),t.code(200).headers({"content-type":G3t(i,e.params.end),"content-length":String(i.length),"cache-control":"no-store"}),i}async function tfn(e,t,r,n){let s=String(e.method||"").toUpperCase()==="HEAD",i=s?"bytes=0-0":String(e.headers?.range||""),{response:a,downloadInfo:o}=await j3t(r,n,{range:i,responseType:"stream"});if(!a||!o){t.sent||t.code(404).send({error:"UC\u65E0\u9650\u64AD\u653E\u5730\u5740\u83B7\u53D6\u5931\u8D25"});return}if(a.status===416){a.data?.destroy?.(),t.code(416).headers(ZRe(a)),t.send();return}if(s){let u=Jdn(a.headers?.["content-range"])||Number(o.size||r.size||0),l=ZRe(a,u);delete l["content-range"],u>0&&(l["content-length"]=String(u)),a.data?.destroy?.(),t.hijack(),t.raw.writeHead(200,l),t.raw.end();return}let c=ZRe(a,o.size||r.size);return t.code(a.status===206?206:200).headers(c),Zdn(e,t,a.data)}async function K3t(e,t){try{let r=e.params.site,n=e.params.what,s=e.params.shareId,i=e.params.fileId,a=e.params.flag;if(r!=="uc")return;if(a==="unlimited"||a==="unlimited_subt"){let l=Xdn(i);return a==="unlimited_subt"?await efn(e,t,l,s):await tfn(e,t,l,s)}if(a==="fast"){t.sent||t.code(404).send({error:"UC\u5FEB\u4F20\u5DF2\u5220\u9664"});return}await dp(e);let o=Mr(i,{fieldOrder:["stoken","fid","shareFidToken"]}),c=await jdn(e.server),u=await sCe();if(n==="trans"){t.sent||t.code(404).send({error:"uc transcoding disabled"});return}else{if(a==="subt"){let h=await M3t(s,decodeURIComponent(o.stoken),o.fid,o.shareFidToken,!1,{mode:u?"token":"cookie"});if(!h?.download_url){t.sent||t.code(404).send({error:"subtitle not found"});return}let p=await rfn(h.download_url);if(!p){t.sent||t.code(502).send({error:"subtitle fetch failed"});return}let m=p;if(String(e.params.end||"").toLowerCase().endsWith(".srt")&&z3t(p)){let y=DT(p.toString("utf8"));m=Buffer.from(y,"utf8")}let g=G3t(m,e.params.end);return t.code(200).headers({"content-type":g,"content-length":String(m.length),"cache-control":"no-store"}),m}let l=u?"auto":"cookie",d=`${l}_${o.fid}`,f=XRe.get(d);if(f||(f=await M3t(s,decodeURIComponent(o.stoken),o.fid,o.shareFidToken,a==="down"||a==="cookie"||a==="token",{mode:l}),f&&XRe.set(d,f)),f?.download_url){if(a==="redirect"||!c.useMultithread){t.redirect(f.download_url);return}let h=f.size;try{return await ac(e,t,f.download_url,o.fid,$3t(),{chunkSize:c.chunkSize,poolSize:c.poolSize,timeout:1e3*10},h,!0)}catch(p){console.error("[uc proxy] chunkStream error, clearing cache:",p.message),XRe.delete(d),t.sent||t.code(503).send({error:"stream error, please retry"})}}}}catch(r){console.error("[uc proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function sB(e,t){let r=String(e.body?.flag||""),n=String(e.body?.id||""),{shareId:s,stoken:i,fid:a,shareFidToken:o,subtitleFid:c="",subtitleShareFidToken:u="",subtitleExt:l="",sharePwd:d="",parentFid:f="0",size:h=0,subtitleParentFid:p="0",subtitleSize:m=0}=Mr(n,{fieldOrder:["shareId","stoken","fid","shareFidToken","subtitleFid","subtitleShareFidToken","subtitleExt","sharePwd","parentFid","size","subtitleParentFid","subtitleSize"]});if(r.startsWith(wK)){let _=encodeURIComponent(Ot([i,a,o,d,f,h],{structured:!0})),g=ba(e,"uc","\u539F\u753B","unlimited",s,_,".bin"),y=[];if(c){let A=F3t(l||"")||"srt",E=encodeURIComponent(Ot([i,c,u,d,p||f,m],{structured:!0})),v=E0(e,"uc",s,E,`.${A}`,{name:"\u5916\u6302\u5B57\u5E55",format:A});v.url=v.url.replace("/src/subt/","/src/unlimited_subt/"),y.push(v)}return Xs({parse:0,urls:g,subtitles:y})}if(await dp(e),r.startsWith(await ht("uc"))){let _=await sCe(),g=encodeURIComponent(Ot([i,a,o],{structured:!0})),y=[];y.push(...ba(e,"uc","\u4EE3\u7406",_?"token":"cookie",s,g,".bin")),y.push(...ba(e,"uc","\u539F\u753B","redirect",s,g,".bin"));let A=[];if(c){let E=F3t(l||"")||"srt",v=encodeURIComponent(Ot([i,c,u,E],{structured:!0}));A.push(E0(e,"uc",s,v,`.${E}`,{name:"\u5916\u6302\u5B57\u5E55",format:E}))}return Xs({parse:0,urls:y,subtitles:A})}return Wr("UC \u7F51\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}async function rfn(e){if(!e)return null;let t=$3t();try{let r=await ve.get(e,{headers:t,responseType:"arraybuffer",maxRedirects:0,timeout:2e4,validateStatus:a=>a>=200&&a<400});if(r.status===200&&r.data)return r.data;let n=r.headers?.location;if(r.data=null,!n)return null;let s=new URL(n,e).toString(),i=await ve.get(s,{headers:t,responseType:"arraybuffer",timeout:3e4,validateStatus:a=>a===200});try{return i.data||null}finally{i.data&&(i.data=null)}}catch{return null}}function G3t(e,t=""){let r=String(t||"").toLowerCase();if(r.endsWith(".ass")||r.endsWith(".ssa"))return"text/x-ssa; charset=utf-8";if(r.endsWith(".vtt"))return"text/vtt; charset=utf-8";if(r.endsWith(".srt"))return"application/x-subrip; charset=utf-8";let n=(Buffer.isBuffer(e)?e:Buffer.from(e)).subarray(0,4096).toString("utf8").toLowerCase();return n.includes("[script info]")?"text/x-ssa; charset=utf-8":n.includes("webvtt")?"text/vtt; charset=utf-8":n.includes("-->")?"application/x-subrip; charset=utf-8":"text/plain; charset=utf-8"}function z3t(e){let t=(Buffer.isBuffer(e)?e:Buffer.from(e)).subarray(0,8192).toString("utf8").toLowerCase();return t.includes("[script info]")||t.includes("[events]")||t.includes("dialogue:")}function F3t(e=""){let t=tr(e);if(t)return t;let r=String(e||"").replace(/^\./,"").toLowerCase();return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}async function Y3t(e="0",t=1,r=200){let n=Math.max(1,Number.parseInt(t,10)||1),s=`file/sort?${eu}&pdir_fid=${encodeURIComponent(e||"0")}&_page=${n}&_size=${r}&_sort=file_type:asc,updated_at:desc`,i=await Vl(s,{},{},"get"),a=Array.isArray(i?.data?.list)?i.data.list:[],o=[],c=[];return a.forEach(u=>{u?.dir===!0||u?.dir===1||u?.file_type===0?o.push(u):c.push(u)}),{folderList:o,fileList:c,count:Number(i?.metadata?._total||a.length||0)}}async function OK(e){return e&&(await Vl(`file/download?${eu}`,{fids:[e]}))?.data?.[0]||null}var b0,Zc,li,Ldn,eu,wK,NK,lp,tB,O3t,RK,af,eCe,tCe,rCe,nCe,Mdn,kdn,D3t,P3t,tb,SK,TK,rB,bK,XRe,k3t,JRe,IK,iB=ae(()=>{Hr();PE();b0=Ne(Gi(),1);ws();Pr();ua();NE();WRe();Wc();Hd();Xc();$l();y0();g0();Zu();wi();qg();Zc={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},li={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};Ldn=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/;eu="pr=UCBrowser&fr=pc",wK="UC\u65E0\u9650",NK={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"};lp=null,tB=null,O3t=!1,RK="https://pc-api.uc.cn/1/clouddrive/",af="",eCe="",tCe="",rCe="",nCe="cookie",Mdn="token",kdn="ut",D3t=es("uc.shareToken",{maxSize:200,ttl:30*60*1e3}),P3t="CatVodOpen",tb=null,SK="";TK=new Map;rB=es("uc.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),bK=new Map;XRe=es("uc.downloading",{maxSize:500,ttl:5*60*1e3}),k3t={chunkSize:64*1024,poolSize:16,useMultithread:!0};JRe=es("uc.unlimited.token",{maxSize:200,ttl:30*60*1e3}),IK=es("uc.unlimited.download",{maxSize:500,ttl:5*60*1e3})});function aB(e){return e?sfn.test(e):!1}var aCe,sfn,DK=ae(()=>{aCe=new Set(["mp4","mkv","avi","mov","flv","wmv","m3u8","ts","rmvb","webm","m4v","mpg","mpeg","3gp","f4v","vob","rm","iso","asf","divx","m2ts"]),sfn=new RegExp(`\\.(${[...aCe].join("|")})$`,"i")});var Px,oCe=ae(()=>{Px=class{constructor(t=200){this.limit=Math.max(1,t),this.items=[]}push(t){this.items.push(t),this.items.length>this.limit&&this.items.splice(0,this.items.length-this.limit)}toArray(){return this.items.slice()}recent(t=this.items.length){return this.items.slice(-Math.max(0,t))}clear(){this.items.length=0}get length(){return this.items.length}}});async function Fx(e={}){for(let[t,r]of Object.entries(e))await Ze.set(t,r)}function vfn(e={}){mCe.push({ts:new Date().toISOString(),...e})}function _Ut(){return mCe.toArray()}function AUt(){mCe.clear()}async function tu(e){if(X3t&&oB)return;oB=e.server.db,kx=await oB.getObjectDefault("/xunlei",{});let t=e.server.config?.xunlei||{username:"",password:""};Js={username:kx.username||t.username||"",password:kx.password||t.password||""},X3t=!0}function EUt(){jl=null,kK.clear()}function yUt(e=""){try{let t=new URL(String(e||"").trim()),r=Number(t.searchParams.get("e")||0);return!Number.isFinite(r)||r<=0?0:r*1e3}catch{return 0}}function vUt(e={}){let t=String(e?.label||"").trim().toUpperCase(),r=String(e?.usage||"").trim().toUpperCase();return t&&t!=="\u539F\u6587\u4EF6"&&t!=="\u7F51\u9875\u4E0B\u8F7D"&&t!=="\u4E0B\u8F7D\u94FE\u63A5"?0:r==="PLAY"?1:r==="CONSUME"?2:r==="DEFAULT"?3:r==="FETCH"?4:3}function $x(e={}){let t={url:String(e?.url||"").trim(),label:String(e?.label||"\u539F\u753B").trim(),usage:String(e?.usage||"").trim().toUpperCase(),expiresAt:Number(e?.expiresAt||yUt(e?.url||"")),probeMs:Number(e?.probeMs||0)};return t.priority=Number.isFinite(Number(e?.priority))?Number(e.priority):vUt(t),t}function Sfn(e=""){let t=BK.get(e);if(!t)return null;if(typeof t=="string"){let n=$x({url:t,label:"\u539F\u753B"}),s={url:t,candidates:[n],expiresAt:n.expiresAt};return BK.set(e,s),s}if(!t?.url&&!Array.isArray(t?.candidates))return null;let r=Array.isArray(t.candidates)&&t.candidates.length>0?t.candidates:t.url?[{url:t.url,label:t.label||"\u539F\u753B"}]:[];return{...t,url:String(t.url||r[0]?.url||"").trim(),candidates:r.map(n=>$x(n)).filter(n=>n.url)}}function uCe(e=""){BK.delete(e)}function Tfn(e="",t=[]){let r=t.map(n=>$x(n)).filter(n=>n.url).slice(0,pCe);!e||r.length===0||BK.set(e,{url:r[0].url,label:r[0].label,candidates:r,expiresAt:r[0].expiresAt})}function bfn(e){if(Array.isArray(e?.candidates)&&e.candidates.length>0)return!e.candidates.some(r=>{let n=Number(r?.expiresAt||yUt(r?.url||""));return!n||n>Date.now()+Ux});let t=Number(e?.expiresAt||0);return t>0&&t<=Date.now()+Ux}async function Ifn(e="",t={},r=0){let n=String(e||"").trim();if(!n)return{ok:!1,status:0};let s=Date.now();try{let i=await Xe.get(n,{responseType:"stream",timeout:1e4,headers:{Range:"bytes=0-0",...t},validateStatus:()=>!0});i?.data?.destroy?.();let a=String(i?.headers?.["content-range"]||""),o=Number(a.match(/\/([0-9]+)$/)?.[1]||i?.headers?.["content-length"]||0);return{ok:i.status===206&&(!r||!o||o===Number(r))||i.status===200&&!r,status:Number(i.status||0),totalSize:o,probeMs:Date.now()-s}}catch(i){return i?.response?.data?.destroy?.(),{ok:!1,status:Number(i?.response?.status||0),message:i?.message||String(i),probeMs:Date.now()-s}}}async function lB(e,{username:t="",password:r=""}={}){await tu(e);let n={username:String(t||"").trim(),password:String(r||"").trim()},s=n.username!==Js.username||n.password!==Js.password;Js={...n},await Fx({username:Js.username,password:Js.password}),s&&await SUt(!0)}async function SUt(e=!1,t={}){let r=!!t.preserveReviewSmsToken;await Fx({auth:"",appAuth:"",refreshToken:"",userId:"",...r?{}:{reviewSmsToken:"",reviewSmsExpiresAt:""}}),e&&await Fx({creditKey:"",reviewUserId:"",reviewMainHost:"",reviewMobile:"",reviewUrl:"",reviewQuery:"",reviewCookie:"",reviewCsrfToken:"",reviewActiveHost:""}),EUt()}function Wg(e){if(!e)return!1;let t=e.lastIndexOf(".");if(t<0)return!1;let r=e.slice(t+1).toLowerCase();return aCe.has(r)}function Rfn(e=""){let t=String(e||"").lastIndexOf(".");if(t<0)return"application/octet-stream";switch(e.slice(t+1).toLowerCase()){case"mkv":return"video/x-matroska";case"mp4":case"m4v":case"mov":return"video/mp4";case"webm":return"video/webm";case"avi":return"video/x-msvideo";case"flv":return"video/x-flv";case"wmv":case"asf":return"video/x-ms-wmv";case"ts":return"video/mp2t";case"m3u8":return"application/vnd.apple.mpegurl";case"mpg":case"mpeg":case"vob":return"video/mpeg";case"3gp":return"video/3gpp";default:return"application/octet-stream"}}function TUt(e){try{let r=(e.includes(" ")?e.split(" ")[1]:e).split(".");if(r.length<2)return null;let n=r[1].replace(/-/g,"+").replace(/_/g,"/"),s=Buffer.from(n,"base64").toString("utf8");return JSON.parse(s)}catch{return null}}function Cfn(e){if(!e)return!1;let t=TUt(e);if(!t?.exp)return!1;let r=Math.floor(Date.now()/1e3);return t.exp>r+Afn}function Ei(e=""){return String(TUt(e)?.aud||"").trim()}function xfn(e=""){return Cfn(e)&&Ei(e)===ry}function ey(e=""){return xfn(e)}function qK(e){return Lx.default.MD5(e).toString()}function HK(e){return typeof e=="string"&&e.includes("@")}function wfn(e){let t=String(e||"").trim();if(!t)return"";if(t.startsWith("+"))return t;let r=t.replace(/\D/g,"");return r?r.length===11&&!r.startsWith("86")?`+86 ${r}`:r.startsWith("86")?`+${r}`:`+${r}`:t}function cf(e){let t=String(e||"").trim();if(!t)return{account:"",captchaMeta:{}};if(HK(t))return{account:t,captchaMeta:{email:t}};let r=wfn(t);return{account:r,captchaMeta:{phone_number:r}}}function Nfn(e){let t=String(e||"").trim();if(!t||HK(t))return t;let r=t.replace(/\D/g,"");return r.length===13&&r.startsWith("86")?r.slice(2):r||t}function ty(e){let t=e?.response?.data;return t?t?.details?.find(n=>n?.message)?.message||t.error_description||t.message||e?.message||String(e):e?.message||String(e)}function cc(e,t={}){let r=new Error(e);return r.data=t,r}function ts(e,t={}){try{let r=JSON.stringify(t,null,2);console.error(`[\u8FC5\u96F7\u8C03\u8BD5] ${e}: ${r}`)}catch{console.error(`[\u8FC5\u96F7\u8C03\u8BD5] ${e}:`,t)}}function fp(e){return{message:e?.message||String(e),response:e?.response?.data||e?.data?.response||e?.data||null}}function pp(){let e=String(Js.username||"").trim(),t=String(Js.password||"").trim(),r=e||t?`${e}${t}`:"CatVodOpenXunlei";return qK(r)}function bUt(e=pp(),t=UK){return`div101.${e}${qK(Lx.default.SHA1(`${e}${t}${FK}${ufn}`).toString())}`}function Ofn(e=pp()){let t=String(Date.now()),r=`${qx}${nb}${UK}${e}${t}`;for(let n of pfn)r=qK(r+n);return{timestamp:t,sign:`1.${r}`}}function Dfn(e=Mx){let t=String(Date.now()),r=`${lCe}${mUt}${pUt}${e}${t}`;for(let n of gfn)r=qK(r+n);return{timestamp:t,sign:`1.${r}`}}function IUt(e=""){return Ei(e)===of?{kind:"web",clientId:of,deviceId:Hx,userAgent:Vx,clientVersionHeader:uUt}:{kind:"app",clientId:qx,deviceId:pp(),userAgent:sb,clientVersionHeader:nb}}function gCe({authorization:e="",captchaToken:t="",contentType:r="application/json",userAgent:n,acceptLanguage:s="zh-cn",clientId:i,deviceId:a,clientVersion:o,extra:c={}}={}){let u=e?IUt(e):null,l=i||u?.clientId||qx,d=a||u?.deviceId||pp(),f=n||u?.userAgent||sb,h=o!==void 0?o:u?.clientVersionHeader??nb,p={"User-Agent":f,Accept:"application/json;charset=UTF-8","x-client-id":l,"x-device-id":d,...c};return h&&(p["x-client-version"]=h),r&&(p["Content-Type"]=r),s&&(p["accept-language"]=s),e&&(p.authorization=e),t&&(p["x-captcha-token"]=t),p}function ib({authorization:e="",captchaToken:t="",contentType:r="application/json",userAgent:n,acceptLanguage:s,clientVersion:i,extra:a={}}={}){let o=e?IUt(e):null,c=o?.clientId||ry,u=o?.deviceId||pp(),l=n||o?.userAgent||fUt,d=i!==void 0?i:o?.clientVersionHeader??nb,f=s!==void 0?s:o?.kind==="web"?"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6":"zh-cn",h={"User-Agent":l,"x-client-id":c,"x-device-id":u,...a};return d&&(h["x-client-version"]=d),r&&(h["Content-Type"]=r),f&&(h["accept-language"]=f),e&&(h.authorization=e),t&&(h["x-captcha-token"]=t),h}function fCe(){return String(Ze.get("reviewActiveHost")||Ze.get("reviewMainHost")||"xluser-ssl.xunlei.com").split(",").find(Boolean)||"xluser-ssl.xunlei.com"}function Pfn(){return`https://${fCe()}`}function Lfn(){return String(Ze.get("reviewMainHost")||"xluser-ssl.xunlei.com").split(",").map(e=>String(e||"").trim()).filter(Boolean)}function RUt(){return String(Ze.get("reviewUrl")||"").trim()}function Mfn(){return RUt()||"https://i.xunlei.com/xlcaptcha/vertifyPhone.html"}function kfn(e=[]){return(Array.isArray(e)?e:[e]).map(t=>String(t||"").split(";")[0]?.trim()).filter(Boolean).join("; ")}function J3t(e=[]){let t=Array.isArray(e)?e:[e],r={};for(let n of t){let s=String(n||"").split(";")[0]?.trim();if(!s)continue;let i=s.indexOf("=");if(i<=0)continue;let a=s.slice(0,i).trim(),o=s.slice(i+1).trim();a&&(r[a]=decodeURIComponent(o||""))}return r}function Bfn(...e){return Object.assign({},...e.filter(t=>t&&typeof t=="object"))}function Z3t(e={}){return Object.entries(e).map(([t,r])=>`${t}=${r}`).join("; ")}function CUt(e="",t=""){if(!e||!t)return"";let r=new RegExp(`(?:^|;\\s*)${t}=([^;]*)`),n=String(e).match(r);return n?decodeURIComponent(n[1]):""}function xUt(){return String(Ze.get("reviewCookie")||"").trim()}function Ufn(){return String(Ze.get("reviewCsrfToken")||"").trim()}function wUt(){try{let e=String(Ze.get("reviewQuery")||"").trim();return e?JSON.parse(e):{}}catch{return{}}}function cB(){return{creditKey:String(Ze.get("creditKey")||"").trim(),reviewUrl:String(Ze.get("reviewUrl")||"").trim(),reviewQuery:String(Ze.get("reviewQuery")||"").trim(),reviewMainHost:String(Ze.get("reviewMainHost")||"").trim(),reviewUserId:String(Ze.get("reviewUserId")||"").trim(),reviewMobile:String(Ze.get("reviewMobile")||"").trim(),reviewActiveHost:String(Ze.get("reviewActiveHost")||"").trim(),reviewCookie:String(Ze.get("reviewCookie")||"").trim(),reviewCsrfToken:String(Ze.get("reviewCsrfToken")||"").trim(),reviewSmsToken:String(Ze.get("reviewSmsToken")||"").trim(),reviewSmsExpiresAt:String(Ze.get("reviewSmsExpiresAt")||"").trim()}}function Ffn(){let e=cB();return!!(e.creditKey&&(e.reviewUrl||e.reviewMainHost))}async function NUt(e,t={}){!t||typeof t!="object"||await Fx({creditKey:String(t.creditKey||"").trim(),reviewUrl:String(t.reviewUrl||"").trim(),reviewQuery:String(t.reviewQuery||"").trim(),reviewMainHost:String(t.reviewMainHost||"").trim(),reviewUserId:String(t.reviewUserId||"").trim(),reviewMobile:String(t.reviewMobile||"").trim(),reviewActiveHost:String(t.reviewActiveHost||"").trim(),reviewCookie:String(t.reviewCookie||"").trim(),reviewCsrfToken:String(t.reviewCsrfToken||"").trim(),reviewSmsToken:String(t.reviewSmsToken||"").trim(),reviewSmsExpiresAt:String(t.reviewSmsExpiresAt||"").trim()})}function $fn(e=""){let t=String(e||"").replace(/\D/g,"");return t.length<7?t:`${t.slice(0,3)}****${t.slice(-4)}`}function qfn(e="",t=""){if(t&&Ze.set("creditKey",t),!!e)try{let r=new URL(e);Ze.set("reviewUrl",e),Ze.set("reviewQuery",JSON.stringify(Object.fromEntries(r.searchParams.entries())));let n=r.searchParams.get("mainHost")||"",s=r.searchParams.get("userID")||"",i=r.searchParams.get("mobile")||"";n&&Ze.set("reviewMainHost",n),s&&Ze.set("reviewUserId",s),i&&Ze.set("reviewMobile",i)}catch{}}function VK(e=""){let t=String(e||"").trim();if(t){Ze.set("creditKey",t);try{let r=String(Ze.get("reviewUrl")||"").trim();if(r){let n=new URL(r);n.searchParams.set("creditkey",t),Ze.set("reviewUrl",n.toString()),Ze.set("reviewQuery",JSON.stringify(Object.fromEntries(n.searchParams.entries())));return}}catch{}try{let r=wUt();Object.keys(r).length>0&&(r.creditkey=t,Ze.set("reviewQuery",JSON.stringify(r)))}catch{}}}function OUt(e={}){let t=cf(Js.username).account,r=wUt(),n=String(r.platformVersion||PK||"").trim();return{appid:r.appid||FK,appName:r.appName||dUt,clientVersion:r.clientVersion||nb,event:r.event||"login3",platformVersion:n||PK,protocolVersion:r.protocolVersion||lUt,providerName:r.providerName||"NONE",OSVersion:r.OSVersion||"NONE",deviceName:r.deviceName||"NONE",deviceModel:r.deviceModel||"NONE",netWorkType:r.netWorkType||"NONE",userID:r.userID||Ze.get("reviewUserId")||"",mobile:r.mobile||Ze.get("reviewMobile")||$fn(t),creditkey:Ze.get("creditKey")||"",smsEvent:r.smsEvent||"34",trigger:r.trigger||"0",privateStyle:r.privateStyle||"",deviceid:pp(),devicesign:bUt(),fromPlatformVersion:n||PK,sdkVersion:"1.0",hl:r.hl||"",timestamp:Date.now(),...e}}async function Hfn(e,t={},r={}){let n=`jsonp_${Date.now()}_${Math.random().toString(36).slice(2,10)}`,s=await Xe.get(e,{params:{...t,callback:n},headers:r,timeout:15e3,responseType:"text",transformResponse:[o=>o]}),a=String(s.data||"").trim().match(/^[^(]+\(([\s\S]*)\)\s*;?\s*$/);return a?JSON.parse(a[1]):typeof s.data=="string"?JSON.parse(s.data):s.data}async function Vfn(e,t={},r={}){let n=new aUt.default;for(let[f,h]of Object.entries(t))n.append(f,h==null?"":String(h));let s=Bfn(J3t(xUt().split(/,(?=[^;]+?=)/))),i=e,a="post",o="https://i.xunlei.com/xlcaptcha/vertifyPhone.html",c=n,u=null,l="";for(let f=0;f<5;f++){let h=Z3t(s),p={Referer:o,"User-Agent":sb,...a==="post"?n.getHeaders():{},...h?{Cookie:h}:{},...r};u=a==="post"?await Xe.post(i,c,{headers:p,timeout:15e3,maxRedirects:0,validateStatus:()=>!0,responseType:"text",transformResponse:[g=>g]}):await Xe.get(i,{headers:p,timeout:15e3,maxRedirects:0,validateStatus:()=>!0,responseType:"text",transformResponse:[g=>g]}),Object.assign(s,J3t(u?.headers?.["set-cookie"]||[])),l=String(u?.data||"").trim();let m=Z3t(s);if(m){Ze.set("reviewCookie",m);let g=CUt(m,"csrf_token");g&&Ze.set("reviewCsrfToken",g)}let _=String(u?.headers?.location||"").trim();if(!_)break;i=/^https?:\/\//i.test(_)?_:new URL(_,i).toString(),o=i,a="get",c=void 0}let d=l.match(/\{[\s\S]*?\}/);return d?{...JSON.parse(d[0]),...s,response:l}:{...s,response:l}}async function _Ce(){let e=RUt();if(e)try{let t=await Xe.get(e,{headers:{Referer:"https://i.xunlei.com/xlcaptcha/vertifyPhone.html","User-Agent":sb},timeout:15e3,maxRedirects:5}),r=kfn(t?.headers?.["set-cookie"]||[]);if(r){Ze.set("reviewCookie",r);let n=CUt(r,"csrf_token");n&&Ze.set("reviewCsrfToken",n)}}catch{}}function DUt(e={}){let t=xUt();return{Referer:Mfn(),"User-Agent":sb,...t?{Cookie:t}:{},...e}}function PUt(e={}){let t=Ufn();return{...t?{csrf_token:t}:{},...e}}function jfn(e=[]){if(!e.length)return null;let t=e.find(s=>String(s?.payload?.errorCode)==="0"&&s?.payload?.token);if(t)return t;let r=e.find(s=>["51","28"].includes(String(s?.payload?.errorCode)));if(r)return r;let n=e.find(s=>["33","12","13"].includes(String(s?.payload?.errorCode)));return n||e[0]}async function LUt(e,t={},r={}){let n=Lfn(),s=[];for(let a of n.length?n:[fCe()]){let o=await Hfn(`https://${a}${e}`,PUt(t),DUt(r));if(s.push({host:a,payload:o}),String(o?.errorCode)==="0"&&o?.token)return Ze.set("reviewActiveHost",a),{host:a,payload:o,attempts:s}}let i=jfn(s)||{host:fCe(),payload:{}};return i?.host&&Ze.set("reviewActiveHost",i.host),{host:i.host,payload:i.payload,attempts:s}}async function Kl(e,t,r={},n=2){try{let s=await Xe.post(e,t,{headers:r,timeout:15e3});return s.status===429&&n>0?(await zt(1e3),await Kl(e,t,r,n-1)):s}catch(s){if(s?.response?.status===429&&n>0)return await zt(1e3),await Kl(e,t,r,n-1);throw s}}async function hp(e,t={},r=2){try{let n=await Xe.get(e,{headers:t,timeout:15e3});return n.status===429&&r>0?(await zt(1e3),await hp(e,t,r-1)):n}catch(n){if(n?.response?.status===429&&r>0)return await zt(1e3),await hp(e,t,r-1);throw n}}async function MUt(e="GET:drive/v1/files",t={}){let r=pp(),{timestamp:n,sign:s}=Ofn(r),i={client_id:qx,action:e,device_id:r,captcha_token:"",meta:{client_version:nb,package_name:UK,timestamp:n,captcha_sign:s,user_id:Ze.get("userId")||"",...t},redirect_uri:mfn},a=gCe();try{let c=(await Kl(`${ny}v1/shield/captcha/init`,i,a)).data||{};return{token:c.captcha_token||"",url:c.url||"",expiresIn:c.expires_in||0,raw:c}}catch(o){throw ts("getAppActionCaptchaInfo error",{action:e,message:o?.message||String(o),response:o?.response?.data||null,data:i}),o}}async function Kfn(e){let t=cf(e);return t.account?await MUt("POST:/v1/auth/signin/token",t.captchaMeta):{token:"",url:"",expiresIn:0,raw:{}}}async function Gfn(e){let t=cf(e);if(!t.account)return{token:"",url:"",expiresIn:0,raw:{}};let r={client_id:of,action:"POST:/v1/auth/signin",device_id:Hx,captcha_token:"",meta:t.captchaMeta},s=(await Kl(`${ny}v1/shield/captcha/init`,r,{"User-Agent":Vx,"Content-Type":"application/json"})).data||{};return{token:s.captcha_token||"",url:s.url||"",expiresIn:s.expires_in||0,raw:s}}async function kUt(){await _Ce();let{payload:e}=await LUt("/xluser.core.login/v3/sendsms",OUt()),t=ECe(cf(Js.username).account);if(["28","51"].includes(String(e?.errorCode||"").trim())&&t?.verificationId)return{...e,token:t.verificationId,reviewState:t.reviewState||cB(),reused:!0};if(String(e?.errorCode)!=="0"||!e?.token){let n=e?.reviewurl?`https://i.xunlei.com${e.reviewurl}`:"";throw cc(e?.errorDesc||e?.error_description||e?.error||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",{verifyUrl:n,response:e})}e.creditkey&&VK(e.creditkey);let r=Date.now()+Number(e.expires_in||e.expiresIn||300)*1e3;return e.token&&(await Ze.set("reviewSmsToken",e.token),await Ze.set("reviewSmsExpiresAt",String(r))),{...e,expiresAt:r,reviewState:{...cB(),creditKey:String(e.creditkey||Ze.get("creditKey")||"").trim(),reviewSmsToken:String(e.token||"").trim(),reviewSmsExpiresAt:String(r)}}}function ACe(e,t={}){let r=Number(t.expiresAt||Ze.get("reviewSmsExpiresAt")||0);return{phone:e,verificationId:t.token||"",expiresAt:r,expiresIn:r>Date.now()?Math.max(0,Math.ceil((r-Date.now())/1e3)):Number(t.expiresIn||300),selectedChannel:"sms",remaining:null,reviewState:t.reviewState||cB()}}function ECe(e=""){let t=String(Ze.get("reviewSmsToken")||"").trim(),r=Number(Ze.get("reviewSmsExpiresAt")||0);if(!t||r>0&&r<=Date.now())return null;let n=cB();return n.creditKey&&(n.reviewUrl||n.reviewMainHost)?ACe(e,{token:t,expiresAt:r,reviewState:n}):null}function zfn(e){let t=String(e?.data?.response?.errorCode||"").trim();return t==="12"||t==="13"}async function Yfn(e,t={}){if(!!!t.forceSend){let s=ECe(e);if(s)return s}let n=await kUt();return ACe(e,n)}async function Qfn(e,t){await _Ce();let r=await Vfn(`${Pfn()}/xluser.core.login/v3/checksms`,PUt(OUt({token:t,smsCode:String(e||"").trim()})),DUt());if(ts("checksms payload",r),(r?.creditkey||r?.creditKey)&&VK(r.creditkey||r.creditKey),!(String(r?.blogresult||"").trim()==="0"||String(r?.errorCode||"").trim()==="0"||String(r?.error||"").trim().toLowerCase()==="success"))throw cc(r?.msg||r?.errorDesc||"\u9A8C\u8BC1\u7801\u6821\u9A8C\u5931\u8D25",{response:r});let s=String(r?.userid||r?.userID||"").trim();s&&await Ze.set("reviewUserId",s);let i=String(r?.securitytoken||r?.securityToken||"").trim();return i&&await Ze.set("reviewSecurityToken",i),r}async function Wfn(e){await _Ce();let{payload:t}=await LUt("/credit/v1/report",{deviceid:pp(),creditkey:Ze.get("creditKey")||"",type:"sms",scene:"34",userid:Ze.get("reviewUserId")||"",data:e,result:"0",appid:FK});return Number(t?.code)===200&&t?.creditkey&&VK(t.creditkey),t}async function yCe(e,t,r=Ze.get("creditKey")||""){if(!cf(e).account)return"";let s=Nfn(e),a=(await Kl(`${ny}xluser.core.login/v3/login`,{protocolVersion:lUt,sequenceNo:"1000012",platformVersion:PK,isCompressed:"0",appid:FK,clientVersion:nb,peerID:"00000000000000000000000000000000",appName:dUt,sdkVersion:lfn,devicesign:bUt(),netWorkType:"WIFI",providerName:"NONE",deviceModel:"M2004J7AC",deviceName:"Xiaomi_M2004j7ac",OSVersion:"12",creditkey:r,hl:"zh-CN",userName:s,passWord:t,verifyKey:"",verifyCode:"",isMd5Pwd:"0"},gCe({userAgent:dfn,acceptLanguage:""}))).data||{};if(ts("coreLogin response",{creditKey:r,data:a}),a?.error==="review_panel")throw qfn(a.reviewurl||"",a.creditkey||r),cc(a.error_description||a.errorDesc||"\u9700\u8981\u5B89\u5168\u9A8C\u8BC1",{verifyUrl:a.reviewurl||"",reviewUrl:a.reviewurl||"",creditKey:a.creditkey||r||"",reviewUserId:Ze.get("reviewUserId")||"",response:a});if(!a?.sessionID)throw cc(a?.error_description||a?.errorDesc||a?.error||"\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:a});return a.sessionID}async function vCe(e,t){let r=cf(e),n=await Kfn(r.account);if(!n.token)throw cc("\u83B7\u53D6\u767B\u5F55\u9A8C\u8BC1\u7801\u4EE4\u724C\u5931\u8D25",{verifyUrl:n.url||""});let i=(await Kl(`${ny}v1/auth/signin/token`,{client_id:qx,client_secret:cUt,provider:"access_end_point_token",signin_token:t},gCe({captchaToken:n.token}))).data||{};return ts("signInWithSessionToken response",i),i}async function Xfn(e,t){let r=cf(e),n=await Gfn(r.account);if(!n.token)throw cc("\u83B7\u53D6\u7F51\u9875\u767B\u5F55\u9A8C\u8BC1\u7801\u4EE4\u724C\u5931\u8D25",{verifyUrl:n.url||"",response:n.raw||null});let i=(await Kl(`${ny}v1/auth/signin`,{username:r.account,password:t,client_id:of},{"User-Agent":Vx,"Content-Type":"application/json","accept-language":"zh-cn","x-captcha-token":n.token,"x-client-id":of,"x-device-id":Hx})).data||{};return ts("signInWithWebCredentials response",i),i}async function jK(e={}){if(!(e.token_type&&e.access_token))return"";let t=`${e.token_type} ${e.access_token}`,r=Ei(t);return await Fx({auth:t,appAuth:r===ry?t:"",userId:e.user_id||"",refreshToken:e.refresh_token||"",reviewSmsToken:"",reviewSmsExpiresAt:""}),EUt(),t}function Jfn(){return{auth:String(Ze.get("auth")||"").trim(),appAuth:String(Ze.get("appAuth")||"").trim(),refreshToken:String(Ze.get("refreshToken")||"").trim(),userId:String(Ze.get("userId")||"").trim()}}function KK(e="\u8FC5\u96F7\u767B\u5F55\u6001\u672A\u5B8C\u6574\u4FDD\u5B58",t={}){let r=t.requireAppAuth!==!1,n=Jfn();if(!(r?n.auth&&n.appAuth&&n.refreshToken&&n.userId:n.auth&&n.refreshToken&&n.userId))throw cc(e,{state:n});return n}async function dB(e){let t=String(e||Ze.get("appAuth")||Ze.get("auth")||"").trim();if(!t)throw cc("\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u4E3A\u7A7A");let r=await ob(t,"GET:drive/v1/files"),n=ib({authorization:t,captchaToken:r}),s=new URLSearchParams({parent_id:"",limit:"1",with_audit:"true",thumbnail_size:"SIZE_SMALL"});try{await hp(`${I0}drive/v1/files?${s.toString()}`,n,0)}catch(i){throw ts("validatePanAuthState error",i?.response?.data||{message:i?.message||""}),cc(ty(i)||"\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u6821\u9A8C\u5931\u8D25",{response:i?.response?.data||null})}}async function Zfn(e){let t=[],r=String(Ze.get("creditKey")||"").trim();r&&t.push(r),t.push("");let n=null;for(let s of[...new Set(t)])try{let i=await yCe(e,Js.password,s),a=await vCe(e,i);if(!await jK(a))throw cc("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:a});let c=KK("\u8FC5\u96F7\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93");return await dB(c.appAuth),c}catch(i){n=i}throw n||cc("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25")}async function SCe(){if(!String(Ze.get("refreshToken")||"").trim())return"";try{let t=await Bx(ry,MK,rb);if(t)return t}catch(t){console.error("[\u8FC5\u96F7] \u5237\u65B0Pan\u8BA4\u8BC1\u5931\u8D25:",ty(t))}try{let t=await Bx(of,oUt,$K);t&&await Ze.set("auth",t)}catch(t){console.error("[\u8FC5\u96F7] \u5237\u65B0\u7F51\u9875\u767B\u5F55\u8BA4\u8BC1\u5931\u8D25:",ty(t))}try{let t=await Bx(ry,MK,rb);if(t)return t}catch(t){console.error("[\u8FC5\u96F7] \u4F7F\u7528\u6700\u65B0\u5237\u65B0\u4EE4\u724C\u91CD\u8BD5Pan\u8BA4\u8BC1\u5931\u8D25:",ty(t))}return""}async function eUt(e=Js.username,t=Js.password){let r=cf(e);if(!r.account||!t)return"";try{let n=await GK(r.account,t);ts("recoverPanAuthWithWebSignin web state",{userId:n.userId,audience:Ei(n.auth),hasRefreshToken:!!n.refreshToken});let s=await SCe(),i=ey(s)?s:ey(n.auth)?n.auth:"";if(!i)throw cc("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6210\u529F\uFF0C\u4F46\u672A\u80FD\u6362\u53D6\u7F51\u76D8\u767B\u5F55\u6001");return await Ze.set("appAuth",i),await dB(i),i}catch(n){return console.error("[\u8FC5\u96F7] \u91CD\u65B0\u7F51\u9875\u767B\u5F55\u6362\u53D6Pan\u8BA4\u8BC1\u5931\u8D25:",ty(n)),""}}async function e0n(e,t=Js.password){let r=await GK(e,t);ts("bootstrapPanAuthFromWebSignin web state",{userId:r.userId,audience:Ei(r.auth),hasRefreshToken:!!r.refreshToken});let n=await SCe(),s=ey(n)?n:ey(r.auth)?r.auth:"";if(!s)throw cc("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6210\u529F\uFF0C\u4F46\u672A\u80FD\u6362\u53D6\u7F51\u76D8\u767B\u5F55\u6001");await Ze.set("appAuth",s);let i=KK("\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u6362\u53D6\u7ED3\u679C\u672A\u843D\u5E93");return await dB(s),{...i,appAuth:s}}async function GK(e,t=Js.password){let r=await Xfn(e,t);if(!await jK(r))throw cc(ty({response:{data:r}})||"\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:r});return KK("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93",{requireAppAuth:!1})}async function BUt(e,t,r={}){await tu(e);let n=!!r.forceSend,s=cf(t);if(!s.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(HK(s.account))throw new Error("\u9A8C\u8BC1\u7801\u767B\u5F55\u4EC5\u652F\u6301\u624B\u673A\u53F7");if(!Js.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");if(!n){let i=ECe(s.account);if(i)return i}if(Ffn())try{return await Yfn(s.account,{forceSend:n})}catch(i){if(!zfn(i))throw i;await Fx({reviewSmsToken:"",reviewCookie:"",reviewCsrfToken:"",reviewActiveHost:""})}try{let i=await yCe(s.account,Js.password),a=await vCe(s.account,i);if(!await jK(a))throw cc("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25\uFF0C\u672A\u83B7\u53D6\u5230\u767B\u5F55\u6001",{response:a});let c=KK("\u8FC5\u96F7\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93");return await dB(c.appAuth),{autoLoggedIn:!0,userId:c.userId,hasRefreshToken:!!c.refreshToken}}catch(i){if(i?.data?.verifyUrl||i?.data?.reviewUrl||i?.data?.response?.error==="review_panel"){let a=await kUt();return ACe(s.account,a)}throw i}}async function UUt(e,{username:t="",password:r=""}={}){await lB(e,{username:t,password:r});let n=cf(Js.username);if(!n.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(!Js.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");let s=await GK(n.account,Js.password);return{userId:s.userId,hasRefreshToken:!!s.refreshToken,audience:Ei(s.auth)}}async function FUt(e,{username:t="",password:r="",verificationId:n="",verificationCode:s=""}={}){await lB(e,{username:t,password:r});let i=cf(Js.username);if(!i.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(HK(i.account))throw new Error("\u9A8C\u8BC1\u7801\u767B\u5F55\u4EC5\u652F\u6301\u624B\u673A\u53F7");if(!Js.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");let a=String(n||"").trim()||String(Ze.get("reviewSmsToken")||"").trim();if(!a)throw new Error("\u8BF7\u5148\u53D1\u9001\u9A8C\u8BC1\u7801");if(!String(s||"").trim())throw new Error("\u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801");try{let o=await Qfn(String(s||"").trim(),a);if(o?.securitytoken)try{await Wfn(o.securitytoken)}catch{}(o?.creditkey||o?.creditKey)&&VK(o.creditkey||o.creditKey);try{let u=await e0n(i.account,Js.password);return{userId:u.userId,hasRefreshToken:!!u.refreshToken}}catch(u){ts("verified web signin fallback",{message:ty(u),response:u?.response?.data||u?.data?.response||null})}let c=await Zfn(i.account);return{userId:c.userId,hasRefreshToken:!!c.refreshToken}}catch(o){await SUt(!1,{preserveReviewSmsToken:!0});let c=ty(o);throw cc(c==="\u64CD\u4F5C\u6210\u529F"?"\u77ED\u4FE1\u9A8C\u8BC1\u7801\u5DF2\u6821\u9A8C\uFF0C\u4F46\u8FC5\u96F7\u6CA1\u6709\u8FD4\u56DE\u53EF\u7528\u767B\u5F55\u6001":c,{verifyUrl:o?.data?.verifyUrl||o?.data?.reviewUrl||"",response:o?.data?.response||null})}}async function Bx(e,t,r=sb){let n=Ze.get("refreshToken");if(!n)return"";let s={client_id:e,client_secret:t,grant_type:"refresh_token",refresh_token:n},a=(await Kl(`${ny}v1/auth/token`,s,{"User-Agent":r,"Content-Type":"application/json","x-client-id":e,"x-device-id":e===of?Hx:pp()})).data||{};return a.refresh_token&&await Ze.set("refreshToken",a.refresh_token),a.token_type&&a.access_token?`${a.token_type} ${a.access_token}`:""}async function t0n(){let e=Ze.get("refreshToken");if(!e)return await eUt();if(!e)return"";let t=await SCe();return ey(t)?(await Ze.set("appAuth",t),t):await eUt()}async function ab(){let e=Ze.get("appAuth");if(ey(e))return ts("getAppAuth cached appAuth",{audience:Ei(e),userId:Ze.get("userId")||""}),e;let t=Ze.get("auth");if(ey(t))return await Ze.set("appAuth",t),ts("getAppAuth promote auth",{audience:Ei(t),userId:Ze.get("userId")||""}),t;let r=await t0n();return ey(r)?(await Ze.set("appAuth",r),ts("getAppAuth refreshed",{audience:Ei(r),userId:Ze.get("userId")||""}),r):""}async function $Ut(e,t){let{timestamp:r,sign:n}=Dfn(Mx),s={client_id:lCe,action:`${t}:${e}`,device_id:Mx,captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:hfn,client_version:mUt,captcha_sign:n,timestamp:r,user_id:Ze.get("userId")||""}},i={"User-Agent":Vx,"Content-Type":"application/json","x-client-id":lCe,"x-device-id":Mx};return(await Kl(`${ny}v1/shield/captcha/init`,s,i)).data?.captcha_token||""}async function qUt(e="GET:drive/v1/files"){let t={client_id:of,action:e,device_id:Hx,captcha_token:"",meta:{package_name:afn,client_version:e==="GET:CAPTCHA_TOKEN"?ifn:uUt,captcha_sign:e==="GET:CAPTCHA_TOKEN"?cfn:ofn,timestamp:String(Date.now()),user_id:Ze.get("userId")||""}};return(await Kl(`${ny}v1/shield/captcha/init`,t,{"User-Agent":e==="GET:CAPTCHA_TOKEN"?$K:Vx,"Content-Type":"application/json",...e==="GET:CAPTCHA_TOKEN"?{"Accept-Encoding":"gzip, deflate, br"}:{}})).data?.captcha_token||""}async function HUt(e="GET:drive/v1/files"){return(await MUt(e)).token||""}async function ob(e="",t="GET:drive/v1/files"){return Ei(e)===of?await qUt(t==="GET:CAPTCHA_TOKEN"?"GET:CAPTCHA_TOKEN":t):await HUt(t)}async function r0n(){let e=String(Ze.get("appAuth")||Ze.get("auth")||"").trim();return Ei(e)===of?await qUt("GET:CAPTCHA_TOKEN"):await HUt("GET:CAPTCHA_TOKEN")}function VUt(e){if(!e||typeof e!="string")return null;try{let t=new URL(e);if(!t.hostname.includes("pan.xunlei.com"))return null;let r=t.pathname.split("/").filter(Boolean).pop();if(!r)return null;let n=t.searchParams.get("pwd")||t.searchParams.get("passcode")||t.searchParams.get("password")||"";return{shareId:r,passCode:n}}catch{let r=_fn.exec(e);return r?{shareId:r[1],passCode:r[2]||""}:null}}function jUt(e=[]){return e.map(t=>({id:t.id,name:t.name,parentId:t.parent_id||t.parentId||"",size:t.size||0,isDirectory:!t.mime_type}))}async function n0n(e,t,r=""){let s={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36","accept-language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6","x-captcha-token":await $Ut("/drive/v1/share","GET"),"x-client-id":hCe,"x-device-id":Mx},i=`${I0}drive/v1/share?share_id=${e}&pass_code=${t||""}&limit=100&page_token=${r||""}&thumbnail_size=SIZE_SMALL`,o=(await hp(i,s)).data||{};return{files:jUt(o.files||[]),passCodeToken:o.pass_code_token||"",nextPageToken:o.next_page_token||o.nextPageToken||o.page_token||""}}async function s0n(e,t,r,n=""){let i={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36","accept-language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6","x-captcha-token":await $Ut("/drive/v1/share","GET"),"x-client-id":hCe,"x-device-id":Mx},a=`${I0}drive/v1/share/detail?share_id=${e}&parent_id=${r||""}&pass_code_token=${encodeURIComponent(t||"")}&limit=100&page_token=${n||""}&thumbnail_size=SIZE_SMALL`,c=(await hp(a,i)).data||{};return{files:jUt(c.files||[]),nextPageToken:c.next_page_token||c.nextPageToken||c.page_token||""}}async function i0n(e,t){let r="",n="",s=[];do{let{files:i,passCodeToken:a,nextPageToken:o}=await n0n(e,t,r);a&&(n=a),s.push(...i),r=o}while(r);return{files:s,passCodeToken:n}}async function a0n(e,t,r){let n="",s=[];do{let{files:i,nextPageToken:a}=await s0n(e,t,r,n);s.push(...i),n=a}while(n);return s}function tUt(e={}){if(!e?.link?.url||e?.is_visible===!1)return Number.NEGATIVE_INFINITY;let t=0;e?.is_origin&&(t+=1e7);let r=String(e?.resolution_name||e?.media_name||"").trim().toUpperCase(),n=r.match(/(\d+(?:\.\d+)?)\s*K/);n&&(t+=Math.round(Number(n[1])*1e6));let s=r.match(/(\d{3,4})\s*P/);s&&(t+=Number(s[1])*1e4),r.includes("\u539F\u753B")&&(t+=1e7),r.includes("\u84DD\u5149")&&(t+=3e6),r.includes("\u8D85\u6E05")&&(t+=108e4),r.includes("\u9AD8\u6E05")&&(t+=72e4),r.includes("\u6807\u6E05")&&(t+=48e4);let i=e?.video||{},a=Number.isFinite(Number(i?.width))?Number(i.width):0,o=Number.isFinite(Number(i?.height))?Number(i.height):0,c=Number.isFinite(Number(i?.bit_rate))?Number(i.bit_rate):0,u=Number.isFinite(Number(i?.frame_rate))?Number(i.frame_rate):0,l=Number.isFinite(Number(e?.priority))?Number(e.priority):999;return t+=Math.max(a,o)*100,t+=Math.min(a,o),t+=Math.round(c/100),t+=u*10,t+=Math.max(0,1e3-l),t}function TCe(e=[]){return e.filter(t=>t?.is_visible!==!1&&t?.link?.url).sort((t,r)=>tUt(r)-tUt(t))}function o0n(e={}){let t=TCe(Array.isArray(e.medias)?e.medias:[]);if(t.length>0)return t[0].link.url||"";let r=e?.links?.["application/octet-stream"]?.url;if(r)return r;let n=Object.values(e?.links||{}).find(s=>s?.url)?.url;return n||e?.web_content_link||""}function c0n(e=""){let t=String(e||"").toLowerCase();return t.includes("video_x_matroska")||t.includes("matroska")||t.includes("fext=mkv")||/\.mkv(?:[?#]|$)/.test(t)}function rUt(e=""){let t=String(e||"").toLowerCase();return t.includes("fext=mp4")||t.includes("video_mp4")||/\.mp4(?:[?#]|$)/.test(t)||/\.m3u8(?:[?#]|$)/.test(t)}function uB(e="",t=""){let r=l0n(e);rUt(t)&&(r+=1e7),c0n(t)&&(r-=1e7);let n=String(e||"").trim().toUpperCase();return(n==="\u539F\u753B"||n==="\u539F\u6587\u4EF6")&&!rUt(t)&&(r-=1e5),r}function bCe(e={},t=""){let r=[],n=new Set,s=(a,o)=>{!a||!o||n.has(o)||(n.add(o),r.push(a,o))};if(Wg(t)){let a=TCe(Array.isArray(e.medias)?e.medias:[]).sort((o,c)=>uB(LK(c,e,"\u539F\u753B"),c?.link?.url||"")-uB(LK(o,e,"\u539F\u753B"),o?.link?.url||""));for(let o of a)s(LK(o,e,"\u539F\u753B"),o?.link?.url||"")}let i=e?.links?.["application/octet-stream"]?.url;i&&s("\u539F\u6587\u4EF6",i),e?.web_content_link&&s(Wg(t)?"\u539F\u6587\u4EF6":"\u7F51\u9875\u4E0B\u8F7D",e.web_content_link);for(let a of Object.values(e?.links||{}))a?.url&&s(Wg(t)?"\u539F\u6587\u4EF6":"\u4E0B\u8F7D\u94FE\u63A5",a.url);return r.length>0?r:u0n(e,t)}function LK(e={},t={},r="\u539F\u753B"){if(e?.is_origin)return"\u539F\u753B";let n=String(e?.resolution_name||"").trim();if(n)return n.toUpperCase();let s=String(e?.media_name||"").trim();return s?s.replace(/\s+/g," "):t?.mime_type?.startsWith("video/")?r:"\u539F\u6587\u4EF6"}function u0n(e={},t=""){let r=[],n=new Set,s=(o,c)=>{!o||!c||n.has(c)||(n.add(c),r.push(o,c))},i=TCe(Array.isArray(e.medias)?e.medias:[]);for(let o of i)s(LK(o,e,Wg(t)?"\u539F\u753B":"\u539F\u6587\u4EF6"),o.link.url);if(r.length>0)return r;let a=o0n(e);return a&&s(Wg(t)?"\u539F\u753B":"\u539F\u6587\u4EF6",a),r}function l0n(e=""){let t=String(e||"").trim().toUpperCase();if(!t)return 0;if(t==="\u539F\u753B"||t==="\u539F\u6587\u4EF6")return 1e4;let r=t.match(/(\d+(?:\.\d+)?)\s*K/);if(r)return Math.round(Number(r[1])*1e3);let n=t.match(/(\d{3,4})\s*P/);return n?Number(n[1]):t.includes("\u84DD\u5149")?3e3:t.includes("\u8D85\u6E05")?1080:t.includes("\u9AD8\u6E05")?720:t.includes("\u6807\u6E05")?480:1}function KUt(e=[],t=[],r=""){let n=[],s=new Set,i=new Set,a=(c,u)=>{!c||!u||s.has(u)||Wg(r)&&i.has(String(c||"").trim().toUpperCase())||(s.add(u),Wg(r)&&i.add(String(c||"").trim().toUpperCase()),n.push(c,u))};for(let c=0;cu.score-c.score),o.flatMap(c=>[c.label,c.url])}function GUt(e=[]){let t=[];for(let r=0;r{let s=String(n.label||"").trim().toUpperCase();return s==="\u539F\u753B"||s==="\u539F\u6587\u4EF6"});return r.sort((n,s)=>{let i=a=>String(a.label||"").trim().toUpperCase()==="\u539F\u753B"?2:1;return i(s)-i(n)||uB(s.label,s.url)-uB(n.label,n.url)}),r[0]||null}function f0n({shareId:e="",fileId:t="",passCodeToken:r="",fileName:n="",fileSize:s=""}={}){return[e,t,r,n,s].join("*")}async function ICe(e,t=""){if(!e)return null;let r=await ab();if(!r)return null;let n=Ei(r)===of,s=t==="FETCH",i=s&&!n?await r0n():await ob(r,"GET:drive/v1/files"),a=s?n?{"User-Agent":$K,Accept:"*/*","Accept-Encoding":"gzip, deflate, br",authorization:r,"content-type":"application/json","x-device-id":Hx,"x-captcha-token":i}:{"User-Agent":rb,Accept:"*/*","Accept-Encoding":"gzip, deflate, br",authorization:r,"content-type":"application/json","x-client-id":ry,"x-device-id":pp(),"x-captcha-token":i}:ib({authorization:r,captchaToken:i,userAgent:n?Vx:fUt,acceptLanguage:n?"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6":"zh-cn"}),o=new URLSearchParams({space:"","with[0]":"public_share_tag"});t&&o.set("usage",t);let c;try{c=await hp(`${I0}drive/v1/files/${e}?${o.toString()}`,a),ts("fetchDriveFileInfo response",{fileId:e,usage:t,hasLinks:!!c?.data?.links,linkTypes:Object.keys(c?.data?.links||{}),hasWebContentLink:!!c?.data?.web_content_link,mediaCount:Array.isArray(c?.data?.medias)?c.data.medias.length:0})}catch(u){throw ts("fetchDriveFileInfo error",{fileId:e,usage:t,message:u?.message||String(u),response:u?.response?.data||null}),u}return c.data||null}function h0n(e=""){let t=String(e??"").trim();return!t||t==="0"||t==="/"||t.toLowerCase()==="root"?"":t}function nUt(e={}){return String(e?.kind||"").toLowerCase().includes("folder")}async function zUt(e,t="",r=1,n=100){await tu(e);let s=await ab();if(!s)return{page:1,pagecount:1,limit:n,total:0,count:0,list:[],folderList:[],fileList:[],nextPageToken:""};let i=Math.max(1,Number.parseInt(r,10)||1),a=Math.min(200,Math.max(1,Number.parseInt(n,10)||100)),o=await ob(s,"GET:drive/v1/files"),c=ib({authorization:s,captchaToken:o}),u="",l={};for(let _=1;_<=i;_+=1){let g=new URLSearchParams({parent_id:h0n(t),page_token:u,space:"",with_audit:"true",thumbnail_size:"SIZE_SMALL",limit:String(a),filters:'{"phase":{"eq":"PHASE_TYPE_COMPLETE"},"trashed":{"eq":false}}'});if(l=(await hp(`${I0}drive/v1/files?${g.toString()}`,c)).data||{},_>=i||(u=String(l.next_page_token||l.nextPageToken||l.page_token||"").trim(),!u))break}let d=Array.isArray(l.files)?l.files:[],f=String(l.next_page_token||l.nextPageToken||l.page_token||"").trim(),h=d.filter(nUt),p=d.filter(_=>!nUt(_)),m=(i-1)*a+d.length+(f?a:0);return{page:i,pagecount:f?i+1:i,limit:a,total:Number(l.count||m||d.length||0),count:Number(l.count||m||d.length||0),list:d,folderList:h,fileList:p,nextPageToken:f}}async function RCe(e,t="",r=""){if(await tu(e),!t)return[];let n=[];for(let s of["FETCH","","CONSUME","PLAY","DISPLAY"])try{let i=await ICe(t,s),a=bCe(i||{},r);a.length>0&&(n=KUt(n,a,r))}catch(i){console.error(`[\u8FC5\u96F7] \u83B7\u53D6\u81EA\u6709\u6587\u4EF6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25(${s||"DEFAULT"}):`,i.message||i)}return n}async function YUt(e,t="",r=""){let n=await RCe(e,t,r);return{url:n[1]||"",entries:n}}async function QUt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i,allEntries:a=!1}){let o=f0n({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s}),c=kK.get(o)||"";if(!c){if(ts("getSavedFileEntries save start",{shareId:e,fileId:t,fileName:n,fileSize:s,clean:i}),c=await XUt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i}),!c)return[];kK.set(o,c)}ts("getSavedFileEntries saved file",{cacheKey:o,savedFileId:c});let u=[],l=[],d=new Set;for(let f of["FETCH","","CONSUME","PLAY","DISPLAY"])try{ts("getSavedFileEntries fetch usage",{savedFileId:c,usage:f});let h=await ICe(c,f),p=bCe(h||{},n);for(let m=0;m0&&(u=KUt(u,p,n))}catch(h){console.error(`[\u8FC5\u96F7] \u901A\u8FC7\u8F6C\u5B58\u6587\u4EF6\u83B7\u53D6\u94FE\u63A5\u5931\u8D25(${f||"DEFAULT"}):`,h.message||h)}return a?l:u}function p0n({shareId:e,fileId:t,passCodeToken:r,size:n,name:s,subtitle:i}){let a=[e,t,r||"",n||0,encodeURIComponent(s||"")];return i?.id&&a.push(i.id,i.size||0,encodeURIComponent(i.name||""),i.ext||""),Ot(a,{structured:!0})}async function m0n(e){let t=typeof e=="string"?VUt(e):e;if(!t?.shareId)return[];let{files:r,passCodeToken:n}=await i0n(t.shareId,t.passCode||"");if(!n)return[];let s=[],i=(o,c="")=>{if(!o?.length)return;let u=[],l=[],d=[];for(let h of o)h.isDirectory?u.push({id:h.id,path:c+(c?"/":"")+h.name}):Wg(h.name)?l.push(h):vt(h.name)&&d.push(h);let f=Kt(l.map(h=>({vod_id:h.id,vod_name:h.name,vod_size:h.size,raw:h})));for(let h of f){let p=h.raw,m=Ir(p.name,d,g=>g.name),_=m?{id:m.id,size:m.size,name:m.name,ext:tr(m.name)}:null;s.push({vod_id:p0n({shareId:t.shareId,fileId:p.id,passCodeToken:n,size:p.size,name:p.name,subtitle:_}),vod_name:p.name,vod_size:p.size})}return u},a=async(o,c)=>{let u=i(o,c)||[];u.length!==0&&await _0(u,async l=>{let d=await a0n(t.shareId,n,l.id);await a(d,l.path)},3)};return await a(r,""),s}async function sUt(){if(!jl)return;let e=await ab();if(!e)return;let t=await ob(e,"GET:drive/v1/files"),r=ib({authorization:e,captchaToken:t}),n=`${I0}drive/v1/files?parent_id=${jl}&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,s;try{s=await hp(n,r)}catch(c){throw ts("clearSaveDir list error",{message:c?.message||String(c),response:c?.response?.data||null}),c}let i=s.data?.files||[];if(!i.length)return;let o={ids:i.map(c=>c.id),space:""};try{await Kl(`${I0}drive/v1/files:batchDelete`,o,r)}catch(c){throw ts("clearSaveDir delete error",{message:c?.message||String(c),response:c?.response?.data||null,body:o}),c}}async function g0n(e){if(jl){e&&await sUt();return}let t=await ab();if(!t)return;let r=await ob(t,"GET:drive/v1/files"),n=ib({authorization:t,captchaToken:r}),s=`${I0}drive/v1/files?parent_id=&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,i;try{i=await hp(s,n)}catch(u){throw ts("createSaveDir list error",{message:u?.message||String(u),response:u?.response?.data||null}),u}let a=i.data?.files||[];for(let u of a)if(u?.name===Q3t){jl=u.id,ts("createSaveDir reuse",{saveDirId:jl,clean:e}),e&&await sUt();return}let o={parent_id:"",name:Q3t,kind:"drive#folder",space:""},c;try{c=await Kl(`${I0}drive/v1/files`,o,n)}catch(u){throw ts("createSaveDir create error",{message:u?.message||String(u),response:u?.response?.data||null,body:o}),u}c.data?.file?.id&&(jl=c.data.file.id,ts("createSaveDir created",{saveDirId:jl,clean:e}))}async function WUt(){if(!jl)return[];let e=await ab();if(!e)return[];let t=await ob(e,"GET:drive/v1/files"),r=ib({authorization:e,captchaToken:t}),n=`${I0}drive/v1/files?parent_id=${jl}&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,s;try{s=await hp(n,r)}catch(i){throw ts("listFolderFiles error",{message:i?.message||String(i),response:i?.response?.data||null,saveDirId:jl}),i}return s.data?.files||[]}async function _0n(e,t){let r=await WUt();if(ts("findSavedFileId list",{expectedName:e,expectedSize:t,files:r.map(i=>({id:i?.id,name:i?.name,size:i?.size,phase:i?.phase}))}),!r.length)return"";let n=Number(t||0),s=r.find(i=>i.name===e&&(!n||i.size===n));return s||(s=r.find(i=>i.name===e),s)||n&&(s=r.find(i=>i.size===n),s)?s.id:r[0]?.id||""}async function XUt({fileId:e,shareId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i}){if(await g0n(i),i&&kK.clear(),!jl)return"";let a=await ab();if(!a)return"";let o=await ob(a,"POST:drive/v1/share/restore"),c=ib({authorization:a,captchaToken:o}),u={parent_id:jl,share_id:t,pass_code_token:r,ancestor_ids:[],file_ids:[e],specify_parent_id:!0},l;try{l=await Kl(`${I0}drive/v1/share/restore`,u,c)}catch(h){return ts("share restore error",{message:h?.message||String(h),response:h?.response?.data||null,body:u}),console.error("[\u8FC5\u96F7] \u8F6C\u5B58\u5931\u8D25:",h.message||h),""}let d=l.data||{};ts("share restore response",{data:d,expectedName:n,expectedSize:s});let f=d?.file?.id||d?.file_id||d?.files?.[0]?.id||"";for(let h=0;h<5;h++){await zt(1e3*(h+1));let p=await _0n(n,s);if(p)return p}return f}async function JUt(e,t,r,n,s,i=!0){return!e||!t?"":(await CCe(e,t,r,n,s,i))[1]||""}async function CCe(e,t,r,n,s,i=!0){if(!e||!t)return[];try{return await QUt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i})}catch(a){console.error("[\u8FC5\u96F7] \u901A\u8FC7\u8F6C\u5B58\u6587\u4EF6\u83B7\u53D6\u76F4\u94FE\u5931\u8D25:",a.message||a)}return[]}async function A0n(e,t,r,n,s,i=!0){if(!e||!t)return[];try{return await QUt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i,allEntries:!0})}catch(a){console.error("[\u8FC5\u96F7] \u83B7\u53D6\u5019\u9009\u76F4\u94FE\u5931\u8D25:",a.message||a)}return[]}async function iUt(e=[],t={},r=0){let n=new Set,s=e.map(a=>$x(a)).filter(a=>!a.url||n.has(a.url)?!1:(n.add(a.url),!a.expiresAt||a.expiresAt>Date.now()+Ux));return(await Promise.all(s.map(async a=>{let o=await Ifn(a.url,t,r);return o.ok?{...a,priority:vUt(a),probeMs:o.probeMs,totalSize:o.totalSize}:null}))).filter(Boolean).sort((a,o)=>a.priority-o.priority||a.probeMs-o.probeMs||a.usage.localeCompare(o.usage)).slice(0,pCe)}function E0n(e=[],t=null){let r=e.map((o,c)=>({...$x(o),index:c,active:0,invalid:!1})),n=null,s=!1,i={disposed:!1},a=async()=>{s||typeof t!="function"||(n||(n=Promise.resolve(t()).then(o=>{for(let c of o||[]){if(!c?.url)continue;let u=$x(c),l=r.find(d=>d.url===c.url);if(l){Object.assign(l,u,{invalid:!1});continue}r.push({...u,index:r.length,active:0,invalid:!1})}}).finally(()=>{n=null})),await n)};return{async resolve(o={}){if(i.disposed)throw new Error("xunlei candidate pool disposed");let c=r.filter(d=>!d.invalid&&(!d.expiresAt||d.expiresAt>Date.now()+Ux));if(c.length===0&&(await a(),c=r.filter(d=>!d.invalid&&(!d.expiresAt||d.expiresAt>Date.now()+Ux))),c.length===0){let d=new Error(`chunk ${o.chunkIndex??0} has no usable \u8FC5\u96F7 download URL`);throw d.statusCode=502,d}let u=Math.min(...c.map(d=>Number(d.priority||0)));c=c.filter(d=>Number(d.priority||0)===u);let l=await cCe.acquire(i);if(i.disposed)throw l(),new Error("xunlei candidate pool disposed");try{let d=String(o.previousSource?.signatureKey||"").trim();c.sort((p,m)=>{let _=Lx.default.SHA1(p.url).toString(),g=Lx.default.SHA1(m.url).toString(),y=d&&_===d?1:0,A=d&&g===d?1:0;return p.active+y-(m.active+A)||p.index-m.index});let f=c[0];f.active+=1;let h=!1;return{url:f.url,headers:{},label:f.label,hostKey:(()=>{try{return new URL(f.url).host}catch{return""}})(),signatureKey:Lx.default.SHA1(f.url).toString(),release:async({status:p=0}={})=>{if(h)return;h=!0,f.active=Math.max(0,f.active-1);let m=Number(p);[401,403,404,410].includes(m)&&(f.invalid=!0),m===503&&cCe.penalize(),l()}}}catch(d){throw l(),d}},async dispose(){s=!0,i.disposed=!0,cCe.cancel(i);for(let o of r)o.active=0}}}async function ZUt(e,t){let r={reqId:String(e.id||""),method:String(e.method||"").toUpperCase(),url:String(e.url||""),routeFlag:String(e.params?.flag||""),range:String(e.headers?.range||""),userAgent:String(e.headers?.["user-agent"]||""),referer:String(e.headers?.referer||""),cacheHit:!1,downloadUrlSource:"",downloadUrlAudience:"",candidateCount:0,statusCode:0,elapsedMs:0,error:""},n=Date.now();try{await tu(e);let s=e.params.site,i=e.params.what;if(s!=="xunlei"||i!=="src")return;let a;try{a=Mr(String(e.params.fileId||""),{decodeUri:!0,minLength:4,fieldOrder:["fileId","passCodeToken","fileSize","encodedFileName"]})}catch{t.sent||t.code(400).send({error:"\u53C2\u6570\u65E0\u6548"});return}let o=String(e.params.shareId||"").trim(),c=String(a.fileId||"").trim(),u=String(a.passCodeToken||"").trim(),l=String(a.fileSize||"").trim(),d="";try{d=decodeURIComponent(a.encodedFileName||"")}catch{d=String(a.encodedFileName||"").trim()}let f=[o,c,u,l,d].join("*"),h={"User-Agent":rb,Accept:"*/*","Accept-Encoding":"identity"},p=Number(l||0),m=Number.isFinite(p)&&p>0?p:0,_=[],g=Sfn(f);if(g&&!bfn(g)){let b=g.candidates.filter(I=>!I.expiresAt||I.expiresAt>Date.now()+Ux);_=String(e.params.flag||"").trim()==="redirect"?await iUt(b,h,m):b.slice(0,pCe),_.length>0?(r.cacheHit=!0,r.downloadUrlSource="cache"):(ts("proxy cached original url invalid",{cacheKey:f,expiresAt:g.expiresAt||0}),uCe(f))}else g&&uCe(f);let y=async()=>{let b=await A0n(o,c,u,d,l,!1),I=await iUt(b,h,m);return I.length>0&&Tfn(f,I),I};_.length===0&&(_=await y(),_.length>0&&(r.downloadUrlSource="fresh"));let A=String(_[0]?.url||"").trim();if(!A){r.statusCode=404,r.error="\u539F\u753B\u5730\u5740\u83B7\u53D6\u5931\u8D25",t.sent||t.code(404).send({error:"\u539F\u753B\u5730\u5740\u83B7\u53D6\u5931\u8D25"});return}if(r.candidateCount=_.length,r.downloadUrlAudience=Ei(String(Ze.get("appAuth")||Ze.get("auth")||"")),String(e.params.flag||"").trim()==="redirect"){r.statusCode=302,t.redirect(A);return}let E=zi(await e.server.db.getObjectDefault("/xunlei/settings",{chunkSize:512*1024,poolSize:W3t,useMultithread:!0,timeout:1e3*60}),{chunkSize:512*1024,poolSize:W3t,useMultithread:!0,timeout:1e3*60});if(!E.useMultithread){t.redirect(A);return}let v=E0n(_,y);try{return t.headers({"accept-ranges":"bytes","cache-control":"no-store","content-type":Rfn(d)}),await ac(e,t,A,f,h,{chunkSize:E.chunkSize,poolSize:Math.min(gUt,E.poolSize),timeout:E.timeout,maxRetries:6,initialChunkSize:Math.min(Efn,E.chunkSize),startupPoolSize:1,maxCacheBytes:64*1024*1024,resolveUrl:b=>v.resolve(b),disposeUrlResolver:()=>v.dispose()},Number.isFinite(p)&&p>0?p:null,!0)}catch(b){r.error=b?.message||String(b),console.error("[xunlei proxy] chunkStream error, clearing cache:",b.message||b),uCe(f),t.sent||t.redirect(A)}}catch(s){r.error=s?.message||String(s),console.error("[xunlei proxy] error:",s.message||s),t.sent||t.code(500).send({error:s.message||"xunlei proxy error"})}finally{r.elapsedMs=Date.now()-n,r.statusCode=r.statusCode||Number(t?.statusCode||0),vfn(r)}}async function eFt(e,{shareId:t="",fileId:r="",passCodeToken:n="",fileName:s="",fileSize:i="",clean:a=!0}={}){await tu(e);let o={shareId:t,fileId:r,fileName:s,fileSize:i,authAudience:Ei(Ze.get("auth")),appAuthAudience:Ei(Ze.get("appAuth")),userId:Ze.get("userId")||"",hasRefreshToken:!!Ze.get("refreshToken")},c="";try{c=await ab(),o.resolvedAppAuthAudience=Ei(c),o.hasResolvedAppAuth=!!c}catch(l){return o.getAppAuthError=fp(l),o}if(!c){let l=!1;try{let d=await Bx(ry,MK,rb);o.appRefreshAttempt={ok:!!d,audience:Ei(d)}}catch(d){o.appRefreshAttempt={ok:!1,error:fp(d)}}try{let d=await Bx(of,oUt,$K);o.webRefreshAttempt={ok:!!d,audience:Ei(d)},l=!!d}catch(d){o.webRefreshAttempt={ok:!1,error:fp(d)}}if(l)try{let d=await Bx(ry,MK,rb);o.appRefreshAfterWebAttempt={ok:!!d,audience:Ei(d)}}catch(d){o.appRefreshAfterWebAttempt={ok:!1,error:fp(d)}}}let u="";try{u=await XUt({shareId:t,fileId:r,passCodeToken:n,fileName:s,fileSize:i,clean:a}),o.savedFileId=u}catch(l){return o.saveError=fp(l),o}try{o.folderFiles=(await WUt()).map(l=>({id:l?.id||"",name:l?.name||"",size:l?.size||0,phase:l?.phase||""}))}catch(l){o.listFolderFilesError=fp(l)}if(!u)return o;o.usages=[];for(let l of["FETCH","","CONSUME","PLAY","DISPLAY"])try{let d=await ICe(u,l),f=bCe(d||{},s),h=GUt(f),p=d0n(f);o.usages.push({usage:l||"DEFAULT",linkTypes:Object.keys(d?.links||{}),links:Object.fromEntries(Object.entries(d?.links||{}).map(([m,_])=>[m,{url:_?.url||""}])),hasWebContentLink:!!d?.web_content_link,webContentLink:d?.web_content_link||"",mediaCount:Array.isArray(d?.medias)?d.medias.length:0,medias:Array.isArray(d?.medias)?d.medias.map(m=>({resolutionName:m?.resolution_name||"",mediaName:m?.media_name||"",isOrigin:!!m?.is_origin,width:Number(m?.video?.width||0),height:Number(m?.video?.height||0),codec:m?.video?.codec||"",linkUrl:m?.link?.url||""})):[],entryCount:f.length/2,labels:f.filter((m,_)=>_%2===0),entries:h,pickedOriginalEntry:p})}catch(d){o.usages.push({usage:l||"DEFAULT",error:fp(d)})}return o}async function tFt(e){await tu(e);let t=String(Js.username||"").trim(),r=String(Js.password||"").trim(),n=cf(t),s={username:n.account,hasPassword:!!r,authAudience:Ei(Ze.get("auth")),appAuthAudience:Ei(Ze.get("appAuth")),userId:Ze.get("userId")||"",hasRefreshToken:!!Ze.get("refreshToken"),creditKey:String(Ze.get("creditKey")||"").trim()};try{let o=await GK(n.account,r);s.webSignin={ok:!0,audience:Ei(o.auth),userId:o.userId,hasRefreshToken:!!o.refreshToken}}catch(o){s.webSignin={ok:!1,error:fp(o)}}s.appSigninAttempts=[];let i=[],a=String(Ze.get("creditKey")||"").trim();a&&i.push(a),i.push("");for(let o of[...new Set(i)]){let c={creditKey:o};try{let u=await yCe(n.account,r,o);c.coreLogin={ok:!0,sessionId:u};let l=await vCe(n.account,u),d=await jK(l);c.signInWithSessionToken={ok:!!d,audience:Ei(d)};try{await dB(d),c.validatePanAuthState={ok:!0}}catch(f){c.validatePanAuthState={ok:!1,error:fp(f)}}}catch(u){c.error=fp(u)}s.appSigninAttempts.push(c)}return s}async function rFt(e,t){t&&await tu(t);let r=VUt(e);if(!r)return[];let n=await m0n(r);if(!n?.length)return[];let s=await ht("xunlei");return Ta(s,n)}var Lx,aUt,ny,I0,qx,of,oUt,hCe,Mx,Hx,cUt,nb,uUt,ifn,UK,afn,ofn,cfn,FK,ufn,lUt,PK,lfn,dUt,sb,dfn,ffn,Vx,$K,ry,MK,fUt,rb,hUt,pUt,mUt,lCe,hfn,pfn,Q3t,mfn,gfn,_fn,Afn,Ux,F1s,W3t,gUt,pCe,Efn,yfn,oB,kx,X3t,Js,jl,kK,BK,mCe,Ze,dCe,cCe,zK=ae(()=>{Hr();Lx=Ne(Gi(),1),aUt=Ne(Rue(),1);PE();ws();ua();Wc();wi();Xc();$l();g0();DK();oCe();Zu();ny="https://xluser-ssl.xunlei.com/",I0="https://api-pan.xunlei.com/",qx="Xp6vsxz_7IYVw2BB",of="XW-G4v1H72tgfJym",oUt="Qbaferw2knfQKqxa25EYJGtZ2_6755CMwzXBN3ctW54",hCe="Xqp0kJBXWhwaTpB6",Mx="1bf91caf40093318e8040916eb7ad16a",Hx="652c6bb3cacdb4b80e852dfc3cb3cca4",cUt="Xp6vsy4tN9toTVdMSpomVdXpRmES",nb="8.31.0.9726",uUt="3.1.5",ifn="3.1.1",UK="com.xunlei.downloadprovider",afn="ThunderPanPlugin",ofn="1.ee2cef5f061a7cdf4374df81b370d2ec",cfn="1.0eada0deeeaac52a6376f2e167fa9f29",FK="40",ufn="34a062aaa22f906fca4fefe9fb3a3021",lUt="301",PK="10",lfn="512000",dUt=`ANDROID-${UK}`,sb="ANDROID-com.xunlei.downloadprovider/8.31.0.9726 netWorkType/5G appid/40 deviceName/Xiaomi_M2004j7ac deviceModel/M2004J7AC OSVersion/12 protocolVersion/301 platformVersion/10 sdkVersion/512000 Oauth2Client/0.9 (Linux 4_14_186-perf-gddfs8vbb238b) (JAVA 0)",dfn="android-ok-http-client/xl-acc-sdk/version-5.0.12.512000",ffn="Dalvik/2.1.0 (Linux; U; Android 12; M2004J7AC Build/SP1A.210812.016)",Vx="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",$K="thunder/12.4.4.3740 Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.215 XDASKernel/22.3.27 Safari/537.36",ry=qx,MK=cUt,fUt=sb,rb=ffn,hUt={"User-Agent":rb},pUt="pan.xunlei.com",mUt="1.92.9",lCe=hCe,hfn=pUt,pfn=["9uJNVj/wLmdwKrJaVj/omlQ","Oz64Lp0GigmChHMf/6TNfxx7O9PyopcczMsnf","Eb+L7Ce+Ej48u","jKY0","ASr0zCl6v8W4aidjPK5KHd1Lq3t+vBFf41dqv5+fnOd","wQlozdg6r1qxh0eRmt3QgNXOvSZO6q/GXK","gmirk+ciAvIgA/cxUUCema47jr/YToixTT+Q6O","5IiCoM9B1/788ntB","P07JH0h6qoM6TSUAK2aL9T5s2QBVeY9JWvalf","+oK0AN"],Q3t="CatVodOpen",mfn="xlaccsdk01://xunlei.com/callback?state=harbor",gfn=["QG3/GhopO+5+T","1Sv94+ANND3lDmmw","q2eTxRva8b3B5d","m2","VIc5CZRBMU71ENfbOh0+RgWIuzLy","66M8Wpw6nkBEekOtL6e","N0rucK7S8W/vrRkfPto5urIJJS8dVY0S","oLAR7pdUVUAp9xcuHWzrU057aUhdCJrt","6lxcykBSsfI//GR9","r50cz+1I4gbU/fk8","tdwzrTc4SNFC4marNGTgf05flC85A","qvNVUDFjfsOMqvdi2gB8gCvtaJAIqxXs"],_fn=/https?:\/\/pan\.xunlei\.com\/s\/([^?#/]+)(?:\?[^#]*?(?:pwd|passcode|password)=([^&#]+))?/i,Afn=60,Ux=60*1e3,F1s=64*1024,W3t=10,gUt=_s.maxPoolSize,pCe=4,Efn=256*1024,yfn=8,oB=null,kx={},X3t=!1,Js={username:"",password:""},jl=null,kK=es("xunlei.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),BK=es("xunlei.downloading",{maxSize:500,ttl:5*60*1e3}),mCe=new Px(200),Ze={get(e){return kx[e]||""},set(e,t){return kx[e]=t||"",oB?oB.push(`/xunlei/${e}`,kx[e]):Promise.resolve()}};dCe=class{constructor(t){this.maxActive=t,this.active=0,this.waiting=[],this.penaltyUntil=0}getEffectiveMax(){return Date.now(){this.waiting.push({owner:t,resolve:r,reject:n})})}createRelease(){let t=!1;return()=>{t||(t=!0,this.active=Math.max(0,this.active-1),this.drain())}}cancel(t){let r=[];for(let n of this.waiting)n.owner===t?n.reject(new Error("xunlei candidate pool disposed")):r.push(n);this.waiting=r}drain(){for(;this.active0;){let t=this.waiting.shift();if(t.owner.disposed){t.reject(new Error("xunlei candidate pool disposed"));continue}this.active+=1,t.resolve(this.createRelease())}}},cCe=new dCe(gUt)});var xCe=S((nFt,YK)=>{(function(e){"use strict";var t,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",a=i+"Number primitive has more than 15 significant digits: ",o=1e14,c=14,u=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function h(v){var b,I,T,x=Q.prototype={constructor:Q,toString:null,valueOf:null},w=new Q(1),D=20,M=4,L=-7,U=21,G=-1e7,$=1e7,K=!1,ee=1,z=0,oe={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},le="0123456789abcdefghijklmnopqrstuvwxyz",te=!0;function Q(P,H){var j,q,Y,X,ie,ne,se,J,ce=this;if(!(ce instanceof Q))return new Q(P,H);if(H==null){if(P&&P._isBigNumber===!0){ce.s=P.s,!P.c||P.e>$?ce.c=ce.e=null:P.e=10;ie/=10,X++);X>$?ce.c=ce.e=null:(ce.e=X,ce.c=[P]);return}J=String(P)}else{if(!r.test(J=String(P)))return T(ce,J,ne);ce.s=J.charCodeAt(0)==45?(J=J.slice(1),-1):1}(X=J.indexOf("."))>-1&&(J=J.replace(".","")),(ie=J.search(/e/i))>0?(X<0&&(X=ie),X+=+J.slice(ie+1),J=J.substring(0,ie)):X<0&&(X=J.length)}else{if(g(H,2,le.length,"Base"),H==10&&te)return ce=new Q(P),k(ce,D+ce.e+1,M);if(J=String(P),ne=typeof P=="number"){if(P*0!=0)return T(ce,J,ne,H);if(ce.s=1/P<0?(J=J.slice(1),-1):1,Q.DEBUG&&J.replace(/^0\.0*|\./,"").length>15)throw Error(a+P)}else ce.s=J.charCodeAt(0)===45?(J=J.slice(1),-1):1;for(j=le.slice(0,H),X=ie=0,se=J.length;ieX){X=se;continue}}else if(!Y&&(J==J.toUpperCase()&&(J=J.toLowerCase())||J==J.toLowerCase()&&(J=J.toUpperCase()))){Y=!0,ie=-1,X=0;continue}return T(ce,String(P),ne,H)}ne=!1,J=I(J,H,10,ce.s),(X=J.indexOf("."))>-1?J=J.replace(".",""):X=J.length}for(ie=0;J.charCodeAt(ie)===48;ie++);for(se=J.length;J.charCodeAt(--se)===48;);if(J=J.slice(ie,++se)){if(se-=ie,ne&&Q.DEBUG&&se>15&&(P>u||P!==s(P)))throw Error(a+ce.s*P);if((X=X-ie-1)>$)ce.c=ce.e=null;else if(X=-f&&Y<=f&&Y===s(Y)){if(q[0]===0){if(Y===0&&q.length===1)return!0;break e}if(H=(Y+1)%c,H<1&&(H+=c),String(q[0]).length==H){for(H=0;H=o||j!==s(j))break e;if(j!==0)return!0}}}else if(q===null&&Y===null&&(X===null||X===1||X===-1))return!0;throw Error(i+"Invalid BigNumber: "+P)},Q.maximum=Q.max=function(){return de(arguments,-1)},Q.minimum=Q.min=function(){return de(arguments,1)},Q.random=function(){var P=9007199254740992,H=Math.random()*P&2097151?function(){return s(Math.random()*P)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(j){var q,Y,X,ie,ne,se=0,J=[],ce=new Q(w);if(j==null?j=D:g(j,0,f),ie=n(j/c),K)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ie*=2));se>>11),ne>=9e15?(Y=crypto.getRandomValues(new Uint32Array(2)),q[se]=Y[0],q[se+1]=Y[1]):(J.push(ne%1e14),se+=2);se=ie/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ie*=7);se=9e15?crypto.randomBytes(7).copy(q,se):(J.push(ne%1e14),se+=7);se=ie/7}else throw K=!1,Error(i+"crypto unavailable");if(!K)for(;se=10;ne/=10,se++);seY-1&&(ne[ie+1]==null&&(ne[ie+1]=0),ne[ie+1]+=ne[ie]/Y|0,ne[ie]%=Y)}return ne.reverse()}return function(j,q,Y,X,ie){var ne,se,J,ce,ge,be,Te,xe,Fe=j.indexOf("."),Ee=D,me=M;for(Fe>=0&&(ce=z,z=0,j=j.replace(".",""),xe=new Q(q),be=xe.pow(j.length-Fe),z=ce,xe.c=H(E(m(be.c),be.e,"0"),10,Y,P),xe.e=xe.c.length),Te=H(j,q,Y,ie?(ne=le,P):(ne=P,le)),J=ce=Te.length;Te[--ce]==0;Te.pop());if(!Te[0])return ne.charAt(0);if(Fe<0?--J:(be.c=Te,be.e=J,be.s=X,be=b(be,xe,Ee,me,Y),Te=be.c,ge=be.r,J=be.e),se=J+Ee+1,Fe=Te[se],ce=Y/2,ge=ge||se<0||Te[se+1]!=null,ge=me<4?(Fe!=null||ge)&&(me==0||me==(be.s<0?3:2)):Fe>ce||Fe==ce&&(me==4||ge||me==6&&Te[se-1]&1||me==(be.s<0?8:7)),se<1||!Te[0])j=ge?E(ne.charAt(1),-Ee,ne.charAt(0)):ne.charAt(0);else{if(Te.length=se,ge)for(--Y;++Te[--se]>Y;)Te[se]=0,se||(++J,Te=[1].concat(Te));for(ce=Te.length;!Te[--ce];);for(Fe=0,j="";Fe<=ce;j+=ne.charAt(Te[Fe++]));j=E(j,J,ne.charAt(0))}return j}}(),b=function(){function P(q,Y,X){var ie,ne,se,J,ce=0,ge=q.length,be=Y%d,Te=Y/d|0;for(q=q.slice();ge--;)se=q[ge]%d,J=q[ge]/d|0,ie=Te*se+J*be,ne=be*se+ie%d*d+ce,ce=(ne/X|0)+(ie/d|0)+Te*J,q[ge]=ne%X;return ce&&(q=[ce].concat(q)),q}function H(q,Y,X,ie){var ne,se;if(X!=ie)se=X>ie?1:-1;else for(ne=se=0;neY[ne]?1:-1;break}return se}function j(q,Y,X,ie){for(var ne=0;X--;)q[X]-=ne,ne=q[X]1;q.splice(0,1));}return function(q,Y,X,ie,ne){var se,J,ce,ge,be,Te,xe,Fe,Ee,me,Ae,pe,Se,Ie,Le,we,He,Ge=q.s==Y.s?1:-1,ke=q.c,Qe=Y.c;if(!ke||!ke[0]||!Qe||!Qe[0])return new Q(!q.s||!Y.s||(ke?Qe&&ke[0]==Qe[0]:!Qe)?NaN:ke&&ke[0]==0||!Qe?Ge*0:Ge/0);for(Fe=new Q(Ge),Ee=Fe.c=[],J=q.e-Y.e,Ge=X+J+1,ne||(ne=o,J=p(q.e/c)-p(Y.e/c),Ge=Ge/c|0),ce=0;Qe[ce]==(ke[ce]||0);ce++);if(Qe[ce]>(ke[ce]||0)&&J--,Ge<0)Ee.push(1),ge=!0;else{for(Ie=ke.length,we=Qe.length,ce=0,Ge+=2,be=s(ne/(Qe[0]+1)),be>1&&(Qe=P(Qe,be,ne),ke=P(ke,be,ne),we=Qe.length,Ie=ke.length),Se=we,me=ke.slice(0,we),Ae=me.length;Ae=ne/2&&Le++;do{if(be=0,se=H(Qe,me,we,Ae),se<0){if(pe=me[0],we!=Ae&&(pe=pe*ne+(me[1]||0)),be=s(pe/Le),be>1)for(be>=ne&&(be=ne-1),Te=P(Qe,be,ne),xe=Te.length,Ae=me.length;H(Te,me,xe,Ae)==1;)be--,j(Te,we=10;Ge/=10,ce++);k(Fe,X+(Fe.e=ce+J*c-1)+1,ie,ge)}else Fe.e=J,Fe.r=+ge;return Fe}}();function Z(P,H,j,q){var Y,X,ie,ne,se;if(j==null?j=M:g(j,0,8),!P.c)return P.toString();if(Y=P.c[0],ie=P.e,H==null)se=m(P.c),se=q==1||q==2&&(ie<=L||ie>=U)?A(se,ie):E(se,ie,"0");else if(P=k(new Q(P),H,j),X=P.e,se=m(P.c),ne=se.length,q==1||q==2&&(H<=X||X<=L)){for(;neie),se=E(se,X,"0"),X+1>ne){if(--H>0)for(se+=".";H--;se+="0");}else if(H+=X-ne,H>0)for(X+1==ne&&(se+=".");H--;se+="0");return P.s<0&&Y?"-"+se:se}function de(P,H){for(var j,q,Y=1,X=new Q(P[0]);Y=10;Y/=10,q++);return(j=q+j*c-1)>$?P.c=P.e=null:j=10;ne/=10,Y++);if(X=H-Y,X<0)X+=c,ie=H,se=ge[J=0],ce=s(se/be[Y-ie-1]%10);else if(J=n((X+1)/c),J>=ge.length)if(q){for(;ge.length<=J;ge.push(0));se=ce=0,Y=1,X%=c,ie=X-c+1}else break e;else{for(se=ne=ge[J],Y=1;ne>=10;ne/=10,Y++);X%=c,ie=X-c+Y,ce=ie<0?0:s(se/be[Y-ie-1]%10)}if(q=q||H<0||ge[J+1]!=null||(ie<0?se:se%be[Y-ie-1]),q=j<4?(ce||q)&&(j==0||j==(P.s<0?3:2)):ce>5||ce==5&&(j==4||q||j==6&&(X>0?ie>0?se/be[Y-ie]:0:ge[J-1])%10&1||j==(P.s<0?8:7)),H<1||!ge[0])return ge.length=0,q?(H-=P.e+1,ge[0]=be[(c-H%c)%c],P.e=-H||0):ge[0]=P.e=0,P;if(X==0?(ge.length=J,ne=1,J--):(ge.length=J+1,ne=be[c-X],ge[J]=ie>0?s(se/be[Y-ie]%be[ie])*ne:0),q)for(;;)if(J==0){for(X=1,ie=ge[0];ie>=10;ie/=10,X++);for(ie=ge[0]+=ne,ne=1;ie>=10;ie/=10,ne++);X!=ne&&(P.e++,ge[0]==o&&(ge[0]=1));break}else{if(ge[J]+=ne,ge[J]!=o)break;ge[J--]=0,ne=1}for(X=ge.length;ge[--X]===0;ge.pop());}P.e>$?P.c=P.e=null:P.e=U?A(H,j):E(H,j,"0"),P.s<0?"-"+H:H)}return x.absoluteValue=x.abs=function(){var P=new Q(this);return P.s<0&&(P.s=1),P},x.comparedTo=function(P,H){return _(this,new Q(P,H))},x.decimalPlaces=x.dp=function(P,H){var j,q,Y,X=this;if(P!=null)return g(P,0,f),H==null?H=M:g(H,0,8),k(new Q(X),P+X.e+1,H);if(!(j=X.c))return null;if(q=((Y=j.length-1)-p(this.e/c))*c,Y=j[Y])for(;Y%10==0;Y/=10,q--);return q<0&&(q=0),q},x.dividedBy=x.div=function(P,H){return b(this,new Q(P,H),D,M)},x.dividedToIntegerBy=x.idiv=function(P,H){return b(this,new Q(P,H),0,1)},x.exponentiatedBy=x.pow=function(P,H){var j,q,Y,X,ie,ne,se,J,ce,ge=this;if(P=new Q(P),P.c&&!P.isInteger())throw Error(i+"Exponent not an integer: "+W(P));if(H!=null&&(H=new Q(H)),ne=P.e>14,!ge.c||!ge.c[0]||ge.c[0]==1&&!ge.e&&ge.c.length==1||!P.c||!P.c[0])return ce=new Q(Math.pow(+W(ge),ne?P.s*(2-y(P)):+W(P))),H?ce.mod(H):ce;if(se=P.s<0,H){if(H.c?!H.c[0]:!H.s)return new Q(NaN);q=!se&&ge.isInteger()&&H.isInteger(),q&&(ge=ge.mod(H))}else{if(P.e>9&&(ge.e>0||ge.e<-1||(ge.e==0?ge.c[0]>1||ne&&ge.c[1]>=24e7:ge.c[0]<8e13||ne&&ge.c[0]<=9999975e7)))return X=ge.s<0&&y(P)?-0:0,ge.e>-1&&(X=1/X),new Q(se?1/X:X);z&&(X=n(z/c+2))}for(ne?(j=new Q(.5),se&&(P.s=1),J=y(P)):(Y=Math.abs(+W(P)),J=Y%2),ce=new Q(w);;){if(J){if(ce=ce.times(ge),!ce.c)break;X?ce.c.length>X&&(ce.c.length=X):q&&(ce=ce.mod(H))}if(Y){if(Y=s(Y/2),Y===0)break;J=Y%2}else if(P=P.times(j),k(P,P.e+1,1),P.e>14)J=y(P);else{if(Y=+W(P),Y===0)break;J=Y%2}ge=ge.times(ge),X?ge.c&&ge.c.length>X&&(ge.c.length=X):q&&(ge=ge.mod(H))}return q?ce:(se&&(ce=w.div(ce)),H?ce.mod(H):X?k(ce,z,M,ie):ce)},x.integerValue=function(P){var H=new Q(this);return P==null?P=M:g(P,0,8),k(H,H.e+1,P)},x.isEqualTo=x.eq=function(P,H){return _(this,new Q(P,H))===0},x.isFinite=function(){return!!this.c},x.isGreaterThan=x.gt=function(P,H){return _(this,new Q(P,H))>0},x.isGreaterThanOrEqualTo=x.gte=function(P,H){return(H=_(this,new Q(P,H)))===1||H===0},x.isInteger=function(){return!!this.c&&p(this.e/c)>this.c.length-2},x.isLessThan=x.lt=function(P,H){return _(this,new Q(P,H))<0},x.isLessThanOrEqualTo=x.lte=function(P,H){return(H=_(this,new Q(P,H)))===-1||H===0},x.isNaN=function(){return!this.s},x.isNegative=function(){return this.s<0},x.isPositive=function(){return this.s>0},x.isZero=function(){return!!this.c&&this.c[0]==0},x.minus=function(P,H){var j,q,Y,X,ie=this,ne=ie.s;if(P=new Q(P,H),H=P.s,!ne||!H)return new Q(NaN);if(ne!=H)return P.s=-H,ie.plus(P);var se=ie.e/c,J=P.e/c,ce=ie.c,ge=P.c;if(!se||!J){if(!ce||!ge)return ce?(P.s=-H,P):new Q(ge?ie:NaN);if(!ce[0]||!ge[0])return ge[0]?(P.s=-H,P):new Q(ce[0]?ie:M==3?-0:0)}if(se=p(se),J=p(J),ce=ce.slice(),ne=se-J){for((X=ne<0)?(ne=-ne,Y=ce):(J=se,Y=ge),Y.reverse(),H=ne;H--;Y.push(0));Y.reverse()}else for(q=(X=(ne=ce.length)<(H=ge.length))?ne:H,ne=H=0;H0)for(;H--;ce[j++]=0);for(H=o-1;q>ne;){if(ce[--q]=0;){for(j=0,be=pe[Y]%Ee,Te=pe[Y]/Ee|0,ie=se,X=Y+ie;X>Y;)J=Ae[--ie]%Ee,ce=Ae[ie]/Ee|0,ne=Te*J+ce*be,J=be*J+ne%Ee*Ee+xe[X]+j,j=(J/Fe|0)+(ne/Ee|0)+Te*ce,xe[X--]=J%Fe;xe[X]=j}return j?++q:xe.splice(0,1),B(P,xe,q)},x.negated=function(){var P=new Q(this);return P.s=-P.s||null,P},x.plus=function(P,H){var j,q=this,Y=q.s;if(P=new Q(P,H),H=P.s,!Y||!H)return new Q(NaN);if(Y!=H)return P.s=-H,q.minus(P);var X=q.e/c,ie=P.e/c,ne=q.c,se=P.c;if(!X||!ie){if(!ne||!se)return new Q(Y/0);if(!ne[0]||!se[0])return se[0]?P:new Q(ne[0]?q:Y*0)}if(X=p(X),ie=p(ie),ne=ne.slice(),Y=X-ie){for(Y>0?(ie=X,j=se):(Y=-Y,j=ne),j.reverse();Y--;j.push(0));j.reverse()}for(Y=ne.length,H=se.length,Y-H<0&&(j=se,se=ne,ne=j,H=Y),Y=0;H;)Y=(ne[--H]=ne[H]+se[H]+Y)/o|0,ne[H]=o===ne[H]?0:ne[H]%o;return Y&&(ne=[Y].concat(ne),++ie),B(P,ne,ie)},x.precision=x.sd=function(P,H){var j,q,Y,X=this;if(P!=null&&P!==!!P)return g(P,1,f),H==null?H=M:g(H,0,8),k(new Q(X),P,H);if(!(j=X.c))return null;if(Y=j.length-1,q=Y*c+1,Y=j[Y]){for(;Y%10==0;Y/=10,q--);for(Y=j[0];Y>=10;Y/=10,q++);}return P&&X.e+1>q&&(q=X.e+1),q},x.shiftedBy=function(P){return g(P,-u,u),this.times("1e"+P)},x.squareRoot=x.sqrt=function(){var P,H,j,q,Y,X=this,ie=X.c,ne=X.s,se=X.e,J=D+4,ce=new Q("0.5");if(ne!==1||!ie||!ie[0])return new Q(!ne||ne<0&&(!ie||ie[0])?NaN:ie?X:1/0);if(ne=Math.sqrt(+W(X)),ne==0||ne==1/0?(H=m(ie),(H.length+se)%2==0&&(H+="0"),ne=Math.sqrt(+H),se=p((se+1)/2)-(se<0||se%2),ne==1/0?H="5e"+se:(H=ne.toExponential(),H=H.slice(0,H.indexOf("e")+1)+se),j=new Q(H)):j=new Q(ne+""),j.c[0]){for(se=j.e,ne=se+J,ne<3&&(ne=0);;)if(Y=j,j=ce.times(Y.plus(b(X,Y,J,1))),m(Y.c).slice(0,ne)===(H=m(j.c)).slice(0,ne))if(j.e0&&xe>0){for(X=xe%ne||ne,ce=Te.substr(0,X);X0&&(ce+=J+Te.slice(X)),be&&(ce="-"+ce)}q=ge?ce+(j.decimalSeparator||"")+((se=+j.fractionGroupSize)?ge.replace(new RegExp("\\d{"+se+"}\\B","g"),"$&"+(j.fractionGroupSeparator||"")):ge):ce}return(j.prefix||"")+q+(j.suffix||"")},x.toFraction=function(P){var H,j,q,Y,X,ie,ne,se,J,ce,ge,be,Te=this,xe=Te.c;if(P!=null&&(ne=new Q(P),!ne.isInteger()&&(ne.c||ne.s!==1)||ne.lt(w)))throw Error(i+"Argument "+(ne.isInteger()?"out of range: ":"not an integer: ")+W(ne));if(!xe)return new Q(Te);for(H=new Q(w),J=j=new Q(w),q=se=new Q(w),be=m(xe),X=H.e=be.length-Te.e-1,H.c[0]=l[(ie=X%c)<0?c+ie:ie],P=!P||ne.comparedTo(H)>0?X>0?H:J:ne,ie=$,$=1/0,ne=new Q(be),se.c[0]=0;ce=b(ne,H,0,1),Y=j.plus(ce.times(q)),Y.comparedTo(P)!=1;)j=q,q=Y,J=se.plus(ce.times(Y=J)),se=Y,H=ne.minus(ce.times(Y=H)),ne=Y;return Y=b(P.minus(j),q,0,1),se=se.plus(Y.times(J)),j=j.plus(Y.times(q)),se.s=J.s=Te.s,X=X*2,ge=b(J,q,X,M).minus(Te).abs().comparedTo(b(se,j,X,M).minus(Te).abs())<1?[J,q]:[se,j],$=ie,ge},x.toNumber=function(){return+W(this)},x.toPrecision=function(P,H){return P!=null&&g(P,1,f),Z(this,P,H,2)},x.toString=function(P){var H,j=this,q=j.s,Y=j.e;return Y===null?q?(H="Infinity",q<0&&(H="-"+H)):H="NaN":(P==null?H=Y<=L||Y>=U?A(m(j.c),Y):E(m(j.c),Y,"0"):P===10&&te?(j=k(new Q(j),D+Y+1,M),H=E(m(j.c),j.e,"0")):(g(P,2,le.length,"Base"),H=I(E(m(j.c),Y,"0"),10,P,q,!0)),q<0&&j.c[0]&&(H="-"+H)),H},x.valueOf=x.toJSON=function(){return W(this)},x._isBigNumber=!0,v!=null&&Q.set(v),Q}function p(v){var b=v|0;return v>0||v===b?b:b-1}function m(v){for(var b,I,T=1,x=v.length,w=v[0]+"";TU^I?1:-1;for(M=(L=x.length)<(U=w.length)?L:U,D=0;Dw[D]^I?1:-1;return L==U?0:L>U^I?1:-1}function g(v,b,I,T){if(vI||v!==s(v))throw Error(i+(T||"Argument")+(typeof v=="number"?vI?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function y(v){var b=v.c.length-1;return p(v.e/c)==b&&v.c[b]%2!=0}function A(v,b){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(b<0?"e":"e+")+b}function E(v,b,I){var T,x;if(b<0){for(x=I+".";++b;x+=I);v=x+v}else if(T=v.length,++b>T){for(x=I,b-=T;--b;x+=I);v+=x}else b{var sFt=xCe(),iFt=aFt.exports;(function(){"use strict";function e(u){return u<10?"0"+u:u}var t=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(u){return r.lastIndex=0,r.test(u)?'"'+u.replace(r,function(l){var d=i[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function c(u,l){var d,f,h,p,m=n,_,g=l[u],y=g!=null&&(g instanceof sFt||sFt.isBigNumber(g));switch(g&&typeof g=="object"&&typeof g.toJSON=="function"&&(g=g.toJSON(u)),typeof a=="function"&&(g=a.call(l,u,g)),typeof g){case"string":return y?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=s,_=[],Object.prototype.toString.apply(g)==="[object Array]"){for(p=g.length,d=0;d{var QK=null,v0n=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,S0n=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,T0n=function(e){"use strict";var t={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(e!=null){if(e.strict===!0&&(t.strict=!0),e.storeAsString===!0&&(t.storeAsString=!0),t.alwaysParseAsBig=e.alwaysParseAsBig===!0?e.alwaysParseAsBig:!1,t.useNativeBigInt=e.useNativeBigInt===!0?e.useNativeBigInt:!1,typeof e.constructorAction<"u")if(e.constructorAction==="error"||e.constructorAction==="ignore"||e.constructorAction==="preserve")t.constructorAction=e.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${e.constructorAction}`);if(typeof e.protoAction<"u")if(e.protoAction==="error"||e.protoAction==="ignore"||e.protoAction==="preserve")t.protoAction=e.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${e.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` -`,r:"\r",t:" "},i,a=function(m){throw{name:"SyntaxError",message:m,at:r,text:i}},o=function(m){return m&&m!==n&&a("Expected '"+m+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var m,_="";for(n==="-"&&(_="-",o("-"));n>="0"&&n<="9";)_+=n,o();if(n===".")for(_+=".";o()&&n>="0"&&n<="9";)_+=n;if(n==="e"||n==="E")for(_+=n,o(),(n==="-"||n==="+")&&(_+=n,o());n>="0"&&n<="9";)_+=n,o();if(m=+_,!isFinite(m))a("Bad number");else return QK==null&&(QK=xCe()),_.length>15?t.storeAsString?_:t.useNativeBigInt?BigInt(_):new QK(_):t.alwaysParseAsBig?t.useNativeBigInt?BigInt(m):new QK(m):m},u=function(){var m,_,g="",y;if(n==='"')for(var A=r;o();){if(n==='"')return r-1>A&&(g+=i.substring(A,r-1)),o(),g;if(n==="\\"){if(r-1>A&&(g+=i.substring(A,r-1)),o(),n==="u"){for(y=0,_=0;_<4&&(m=parseInt(o(),16),!!isFinite(m));_+=1)y=y*16+m;g+=String.fromCharCode(y)}else if(typeof s[n]=="string")g+=s[n];else break;A=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,h=function(){var m=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),m;for(;n;){if(m.push(f()),l(),n==="]")return o("]"),m;o(","),l()}}a("Bad array")},p=function(){var m,_=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),_;for(;n;){if(m=u(),l(),o(":"),t.strict===!0&&Object.hasOwnProperty.call(_,m)&&a('Duplicate key "'+m+'"'),v0n.test(m)===!0?t.protoAction==="error"?a("Object contains forbidden prototype property"):t.protoAction==="ignore"?f():_[m]=f():S0n.test(m)===!0?t.constructorAction==="error"?a("Object contains forbidden constructor property"):t.constructorAction==="ignore"?f():_[m]=f():_[m]=f(),l(),n==="}")return o("}"),_;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return p();case"[":return h();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(m,_){var g;return i=m+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof _=="function"?function y(A,E){var v,b,I=A[E];return I&&typeof I=="object"&&Object.keys(I).forEach(function(T){b=y(I,T),b!==void 0?I[T]=b:delete I[T]}),_.call(A,E,I)}({"":g},""):g}};cFt.exports=T0n});var fFt=S((H1s,WK)=>{var lFt=oFt().stringify,dFt=uFt();WK.exports=function(e){return{parse:dFt(e),stringify:lFt}};WK.exports.parse=dFt();WK.exports.stringify=lFt});var XK=S(wCe=>{(function(){wCe.defaults={"0.1":{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},"0.2":{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:` -`},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(wCe)});var mp=S((hFt,sy)=>{(function(){var e,t,r,n,s,i,a,o=[].slice,c={}.hasOwnProperty;e=function(){var u,l,d,f,h,p;if(p=arguments[0],h=2<=arguments.length?o.call(arguments,1):[],s(Object.assign))Object.assign.apply(null,arguments);else for(u=0,d=h.length;u{(function(){var e;mFt.exports=e=function(){function t(){}return t.prototype.hasFeature=function(r,n){return!0},t.prototype.createDocumentType=function(r,n,s){throw new Error("This DOM method is not implemented.")},t.prototype.createDocument=function(r,n,s){throw new Error("This DOM method is not implemented.")},t.prototype.createHTMLDocument=function(r){throw new Error("This DOM method is not implemented.")},t.prototype.getFeature=function(r,n){throw new Error("This DOM method is not implemented.")},t}()}).call(pFt)});var AFt=S((gFt,_Ft)=>{(function(){var e;_Ft.exports=e=function(){function t(){}return t.prototype.handleError=function(r){throw new Error(r)},t}()}).call(gFt)});var vFt=S((EFt,yFt)=>{(function(){var e;yFt.exports=e=function(){function t(r){this.arr=r||[]}return Object.defineProperty(t.prototype,"length",{get:function(){return this.arr.length}}),t.prototype.item=function(r){return this.arr[r]||null},t.prototype.contains=function(r){return this.arr.indexOf(r)!==-1},t}()}).call(EFt)});var bFt=S((SFt,TFt)=>{(function(){var e,t,r;t=AFt(),r=vFt(),TFt.exports=e=function(){function n(){var s;this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=s=Object.create(this.defaultParams)}return Object.defineProperty(n.prototype,"parameterNames",{get:function(){return new r(Object.keys(this.defaultParams))}}),n.prototype.getParameter=function(s){return this.params.hasOwnProperty(s)?this.params[s]:null},n.prototype.canSetParameter=function(s,i){return!0},n.prototype.setParameter=function(s,i){return i!=null?this.params[s]=i:delete this.params[s]},n}()}).call(SFt)});var Yi=S((IFt,RFt)=>{(function(){RFt.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(IFt)});var OCe=S((CFt,xFt)=>{(function(){var e,t,r;e=Yi(),r=Gl(),xFt.exports=t=function(){function n(s,i,a){if(this.parent=s,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),i==null)throw new Error("Missing attribute name. "+this.debugInfo(i));this.name=this.stringify.name(i),this.value=this.stringify.attValue(a),this.type=e.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(n.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(n.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(n.prototype,"textContent",{get:function(){return this.value},set:function(s){return this.value=s||""}}),Object.defineProperty(n.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(n.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(n.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(n.prototype,"specified",{get:function(){return!0}}),n.prototype.clone=function(){return Object.create(this)},n.prototype.toString=function(s){return this.options.writer.attribute(this,this.options.writer.filterOptions(s))},n.prototype.debugInfo=function(s){return s=s||this.name,s==null?"parent: <"+this.parent.name+">":"attribute: {"+s+"}, parent: <"+this.parent.name+">"},n.prototype.isEqualNode=function(s){return!(s.namespaceURI!==this.namespaceURI||s.prefix!==this.prefix||s.localName!==this.localName||s.value!==this.value)},n}()}).call(CFt)});var JK=S((wFt,NFt)=>{(function(){var e;NFt.exports=e=function(){function t(r){this.nodes=r}return Object.defineProperty(t.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.getNamedItem=function(r){return this.nodes[r]},t.prototype.setNamedItem=function(r){var n;return n=this.nodes[r.nodeName],this.nodes[r.nodeName]=r,n||null},t.prototype.removeNamedItem=function(r){var n;return n=this.nodes[r],delete this.nodes[r],n||null},t.prototype.item=function(r){return this.nodes[Object.keys(this.nodes)[r]]||null},t.prototype.getNamedItemNS=function(r,n){throw new Error("This DOM method is not implemented.")},t.prototype.setNamedItemNS=function(r){throw new Error("This DOM method is not implemented.")},t.prototype.removeNamedItemNS=function(r,n){throw new Error("This DOM method is not implemented.")},t}()}).call(wFt)});var ZK=S((OFt,DFt)=>{(function(){var e,t,r,n,s,i,a,o,c,u=function(d,f){for(var h in f)l.call(f,h)&&(d[h]=f[h]);function p(){this.constructor=d}return p.prototype=f.prototype,d.prototype=new p,d.__super__=f.prototype,d},l={}.hasOwnProperty;c=mp(),o=c.isObject,a=c.isFunction,i=c.getValue,s=Gl(),e=Yi(),t=OCe(),n=JK(),DFt.exports=r=function(d){u(f,d);function f(h,p,m){var _,g,y,A;if(f.__super__.constructor.call(this,h),p==null)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(p),this.type=e.Element,this.attribs={},this.schemaTypeInfo=null,m!=null&&this.attribute(m),h.type===e.Document&&(this.isRoot=!0,this.documentObject=h,h.rootObject=this,h.children)){for(A=h.children,g=0,y=A.length;g=_;p=0<=_?++m:--m)if(!this.attribs[p].isEqualNode(h.attribs[p]))return!1;return!0},f}(s)}).call(OFt)});var fB=S((PFt,LFt)=>{(function(){var e,t,r=function(s,i){for(var a in i)n.call(i,a)&&(s[a]=i[a]);function o(){this.constructor=s}return o.prototype=i.prototype,s.prototype=new o,s.__super__=i.prototype,s},n={}.hasOwnProperty;t=Gl(),LFt.exports=e=function(s){r(i,s);function i(a){i.__super__.constructor.call(this,a),this.value=""}return Object.defineProperty(i.prototype,"data",{get:function(){return this.value},set:function(a){return this.value=a||""}}),Object.defineProperty(i.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(i.prototype,"textContent",{get:function(){return this.value},set:function(a){return this.value=a||""}}),i.prototype.clone=function(){return Object.create(this)},i.prototype.substringData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.appendData=function(a){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.insertData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.deleteData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.replaceData=function(a,o,c){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.isEqualNode=function(a){return!(!i.__super__.isEqualNode.apply(this,arguments).isEqualNode(a)||a.data!==this.data)},i}(t)}).call(PFt)});var eG=S((MFt,kFt)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Yi(),r=fB(),kFt.exports=t=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=e.CData,this.value=this.stringify.cdata(c)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.cdata(this,this.options.writer.filterOptions(o))},a}(r)}).call(MFt)});var tG=S((BFt,UFt)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Yi(),t=fB(),UFt.exports=r=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=e.Comment,this.value=this.stringify.comment(c)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.comment(this,this.options.writer.filterOptions(o))},a}(t)}).call(BFt)});var rG=S((FFt,$Ft)=>{(function(){var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;n=mp().isObject,r=Gl(),e=Yi(),$Ft.exports=t=function(a){s(o,a);function o(c,u,l,d){var f;o.__super__.constructor.call(this,c),n(u)&&(f=u,u=f.version,l=f.encoding,d=f.standalone),u||(u="1.0"),this.type=e.Declaration,this.version=this.stringify.xmlVersion(u),l!=null&&(this.encoding=this.stringify.xmlEncoding(l)),d!=null&&(this.standalone=this.stringify.xmlStandalone(d))}return o.prototype.toString=function(c){return this.options.writer.declaration(this,this.options.writer.filterOptions(c))},o}(r)}).call(FFt)});var nG=S((qFt,HFt)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Gl(),e=Yi(),HFt.exports=t=function(i){n(a,i);function a(o,c,u,l,d,f){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing DTD element name. "+this.debugInfo());if(u==null)throw new Error("Missing DTD attribute name. "+this.debugInfo(c));if(!l)throw new Error("Missing DTD attribute type. "+this.debugInfo(c));if(!d)throw new Error("Missing DTD attribute default. "+this.debugInfo(c));if(d.indexOf("#")!==0&&(d="#"+d),!d.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(c));if(f&&!d.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(c));this.elementName=this.stringify.name(c),this.type=e.AttributeDeclaration,this.attributeName=this.stringify.name(u),this.attributeType=this.stringify.dtdAttType(l),f&&(this.defaultValue=this.stringify.dtdAttDefault(f)),this.defaultValueType=d}return a.prototype.toString=function(o){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(o))},a}(r)}).call(qFt)});var sG=S((VFt,jFt)=>{(function(){var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;n=mp().isObject,r=Gl(),e=Yi(),jFt.exports=t=function(a){s(o,a);function o(c,u,l,d){if(o.__super__.constructor.call(this,c),l==null)throw new Error("Missing DTD entity name. "+this.debugInfo(l));if(d==null)throw new Error("Missing DTD entity value. "+this.debugInfo(l));if(this.pe=!!u,this.name=this.stringify.name(l),this.type=e.EntityDeclaration,!n(d))this.value=this.stringify.dtdEntityValue(d),this.internal=!0;else{if(!d.pubID&&!d.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(l));if(d.pubID&&!d.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(l));if(this.internal=!1,d.pubID!=null&&(this.pubID=this.stringify.dtdPubID(d.pubID)),d.sysID!=null&&(this.sysID=this.stringify.dtdSysID(d.sysID)),d.nData!=null&&(this.nData=this.stringify.dtdNData(d.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(l))}}return Object.defineProperty(o.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(o.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(o.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(o.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(o.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(o.prototype,"xmlVersion",{get:function(){return null}}),o.prototype.toString=function(c){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(c))},o}(r)}).call(VFt)});var iG=S((KFt,GFt)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Gl(),e=Yi(),GFt.exports=t=function(i){n(a,i);function a(o,c,u){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing DTD element name. "+this.debugInfo());u||(u="(#PCDATA)"),Array.isArray(u)&&(u="("+u.join(",")+")"),this.name=this.stringify.name(c),this.type=e.ElementDeclaration,this.value=this.stringify.dtdElementValue(u)}return a.prototype.toString=function(o){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(o))},a}(r)}).call(KFt)});var aG=S((zFt,YFt)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Gl(),e=Yi(),YFt.exports=t=function(i){n(a,i);function a(o,c,u){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing DTD notation name. "+this.debugInfo(c));if(!u.pubID&&!u.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(c));this.name=this.stringify.name(c),this.type=e.NotationDeclaration,u.pubID!=null&&(this.pubID=this.stringify.dtdPubID(u.pubID)),u.sysID!=null&&(this.sysID=this.stringify.dtdSysID(u.sysID))}return Object.defineProperty(a.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(a.prototype,"systemId",{get:function(){return this.sysID}}),a.prototype.toString=function(o){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(o))},a}(r)}).call(zFt)});var oG=S((QFt,WFt)=>{(function(){var e,t,r,n,s,i,a,o,c,u=function(d,f){for(var h in f)l.call(f,h)&&(d[h]=f[h]);function p(){this.constructor=d}return p.prototype=f.prototype,d.prototype=new p,d.__super__=f.prototype,d},l={}.hasOwnProperty;c=mp().isObject,o=Gl(),e=Yi(),t=nG(),n=sG(),r=iG(),s=aG(),a=JK(),WFt.exports=i=function(d){u(f,d);function f(h,p,m){var _,g,y,A,E,v;if(f.__super__.constructor.call(this,h),this.type=e.DocType,h.children){for(A=h.children,g=0,y=A.length;g{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Yi(),t=Gl(),JFt.exports=r=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing raw text. "+this.debugInfo());this.type=e.Raw,this.value=this.stringify.raw(c)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.raw(this,this.options.writer.filterOptions(o))},a}(t)}).call(XFt)});var uG=S((ZFt,e6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Yi(),t=fB(),e6t.exports=r=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=e.Text,this.value=this.stringify.text(c)}return Object.defineProperty(a.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"wholeText",{get:function(){var o,c,u;for(u="",c=this.previousSibling;c;)u=c.data+u,c=c.previousSibling;for(u+=this.data,o=this.nextSibling;o;)u=u+o.data,o=o.nextSibling;return u}}),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.text(this,this.options.writer.filterOptions(o))},a.prototype.splitText=function(o){throw new Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.replaceWholeText=function(o){throw new Error("This DOM method is not implemented."+this.debugInfo())},a}(t)}).call(ZFt)});var lG=S((t6t,r6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Yi(),t=fB(),r6t.exports=r=function(i){n(a,i);function a(o,c,u){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing instruction target. "+this.debugInfo());this.type=e.ProcessingInstruction,this.target=this.stringify.insTarget(c),this.name=this.target,u&&(this.value=this.stringify.insValue(u))}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(o))},a.prototype.isEqualNode=function(o){return!(!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(o)||o.target!==this.target)},a}(t)}).call(t6t)});var DCe=S((n6t,s6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Gl(),e=Yi(),s6t.exports=t=function(i){n(a,i);function a(o){a.__super__.constructor.call(this,o),this.type=e.Dummy}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return""},a}(r)}).call(n6t)});var o6t=S((i6t,a6t)=>{(function(){var e;a6t.exports=e=function(){function t(r){this.nodes=r}return Object.defineProperty(t.prototype,"length",{get:function(){return this.nodes.length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.item=function(r){return this.nodes[r]||null},t}()}).call(i6t)});var l6t=S((c6t,u6t)=>{(function(){u6t.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(c6t)});var Gl=S((d6t,f6t)=>{(function(){var e,t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y,A={}.hasOwnProperty;y=mp(),g=y.isObject,_=y.isFunction,m=y.isEmpty,p=y.getValue,o=null,r=null,n=null,s=null,i=null,f=null,h=null,d=null,a=null,t=null,l=null,c=null,e=null,f6t.exports=u=function(){function E(v){this.parent=v,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,o||(o=ZK(),r=eG(),n=tG(),s=rG(),i=oG(),f=cG(),h=uG(),d=lG(),a=DCe(),t=Yi(),l=o6t(),c=JK(),e=l6t())}return Object.defineProperty(E.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(E.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(E.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(E.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(E.prototype,"childNodes",{get:function(){return(!this.childNodeList||!this.childNodeList.nodes)&&(this.childNodeList=new l(this.children)),this.childNodeList}}),Object.defineProperty(E.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(E.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(E.prototype,"previousSibling",{get:function(){var v;return v=this.parent.children.indexOf(this),this.parent.children[v-1]||null}}),Object.defineProperty(E.prototype,"nextSibling",{get:function(){var v;return v=this.parent.children.indexOf(this),this.parent.children[v+1]||null}}),Object.defineProperty(E.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(E.prototype,"textContent",{get:function(){var v,b,I,T,x;if(this.nodeType===t.Element||this.nodeType===t.DocumentFragment){for(x="",T=this.children,b=0,I=T.length;b":(I=this.parent)!=null&&I.name?"node: <"+v+">, parent: <"+this.parent.name+">":"node: <"+v+">"},E.prototype.ele=function(v,b,I){return this.element(v,b,I)},E.prototype.nod=function(v,b,I){return this.node(v,b,I)},E.prototype.txt=function(v){return this.text(v)},E.prototype.dat=function(v){return this.cdata(v)},E.prototype.com=function(v){return this.comment(v)},E.prototype.ins=function(v,b){return this.instruction(v,b)},E.prototype.doc=function(){return this.document()},E.prototype.dec=function(v,b,I){return this.declaration(v,b,I)},E.prototype.e=function(v,b,I){return this.element(v,b,I)},E.prototype.n=function(v,b,I){return this.node(v,b,I)},E.prototype.t=function(v){return this.text(v)},E.prototype.d=function(v){return this.cdata(v)},E.prototype.c=function(v){return this.comment(v)},E.prototype.r=function(v){return this.raw(v)},E.prototype.i=function(v,b){return this.instruction(v,b)},E.prototype.u=function(){return this.up()},E.prototype.importXMLBuilder=function(v){return this.importDocument(v)},E.prototype.replaceChild=function(v,b){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.removeChild=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.appendChild=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.hasChildNodes=function(){return this.children.length!==0},E.prototype.cloneNode=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.isSupported=function(v,b){return!0},E.prototype.hasAttributes=function(){return this.attribs.length!==0},E.prototype.compareDocumentPosition=function(v){var b,I;return b=this,b===v?0:this.document()!==v.document()?(I=e.Disconnected|e.ImplementationSpecific,Math.random()<.5?I|=e.Preceding:I|=e.Following,I):b.isAncestor(v)?e.Contains|e.Preceding:b.isDescendant(v)?e.Contains|e.Following:b.isPreceding(v)?e.Preceding:e.Following},E.prototype.isSameNode=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.lookupPrefix=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.isDefaultNamespace=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.lookupNamespaceURI=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.isEqualNode=function(v){var b,I,T;if(v.nodeType!==this.nodeType||v.children.length!==this.children.length)return!1;for(b=I=0,T=this.children.length-1;0<=T?I<=T:I>=T;b=0<=T?++I:--I)if(!this.children[b].isEqualNode(v.children[b]))return!1;return!0},E.prototype.getFeature=function(v,b){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.setUserData=function(v,b,I){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.getUserData=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.contains=function(v){return v?v===this||this.isDescendant(v):!1},E.prototype.isDescendant=function(v){var b,I,T,x,w;for(w=this.children,T=0,x=w.length;TI},E.prototype.treePosition=function(v){var b,I;return I=0,b=!1,this.foreachTreeNode(this.document(),function(T){if(I++,!b&&T===v)return b=!0}),b?I:-1},E.prototype.foreachTreeNode=function(v,b){var I,T,x,w,D;for(v||(v=this.document()),w=v.children,T=0,x=w.length;T{(function(){var e,t=function(n,s){return function(){return n.apply(s,arguments)}},r={}.hasOwnProperty;p6t.exports=e=function(){function n(s){this.assertLegalName=t(this.assertLegalName,this),this.assertLegalChar=t(this.assertLegalChar,this);var i,a,o;s||(s={}),this.options=s,this.options.version||(this.options.version="1.0"),a=s.stringify||{};for(i in a)r.call(a,i)&&(o=a[i],this[i]=o)}return n.prototype.name=function(s){return this.options.noValidation?s:this.assertLegalName(""+s||"")},n.prototype.text=function(s){return this.options.noValidation?s:this.assertLegalChar(this.textEscape(""+s||""))},n.prototype.cdata=function(s){return this.options.noValidation?s:(s=""+s||"",s=s.replace("]]>","]]]]>"),this.assertLegalChar(s))},n.prototype.comment=function(s){if(this.options.noValidation)return s;if(s=""+s||"",s.match(/--/))throw new Error("Comment text cannot contain double-hypen: "+s);return this.assertLegalChar(s)},n.prototype.raw=function(s){return this.options.noValidation?s:""+s||""},n.prototype.attValue=function(s){return this.options.noValidation?s:this.assertLegalChar(this.attEscape(s=""+s||""))},n.prototype.insTarget=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.insValue=function(s){if(this.options.noValidation)return s;if(s=""+s||"",s.match(/\?>/))throw new Error("Invalid processing instruction value: "+s);return this.assertLegalChar(s)},n.prototype.xmlVersion=function(s){if(this.options.noValidation)return s;if(s=""+s||"",!s.match(/1\.[0-9]+/))throw new Error("Invalid version number: "+s);return s},n.prototype.xmlEncoding=function(s){if(this.options.noValidation)return s;if(s=""+s||"",!s.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+s);return this.assertLegalChar(s)},n.prototype.xmlStandalone=function(s){return this.options.noValidation?s:s?"yes":"no"},n.prototype.dtdPubID=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdSysID=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdElementValue=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdAttType=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdAttDefault=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdEntityValue=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdNData=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.convertAttKey="@",n.prototype.convertPIKey="?",n.prototype.convertTextKey="#text",n.prototype.convertCDataKey="#cdata",n.prototype.convertCommentKey="#comment",n.prototype.convertRawKey="#raw",n.prototype.assertLegalChar=function(s){var i,a;if(this.options.noValidation)return s;if(i="",this.options.version==="1.0"){if(i=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,a=s.match(i))throw new Error("Invalid character in string: "+s+" at index "+a.index)}else if(this.options.version==="1.1"&&(i=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,a=s.match(i)))throw new Error("Invalid character in string: "+s+" at index "+a.index);return s},n.prototype.assertLegalName=function(s){var i;if(this.options.noValidation)return s;if(this.assertLegalChar(s),i=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!s.match(i))throw new Error("Invalid character in name");return s},n.prototype.textEscape=function(s){var i;return this.options.noValidation?s:(i=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,s.replace(i,"&").replace(//g,">").replace(/\r/g," "))},n.prototype.attEscape=function(s){var i;return this.options.noValidation?s:(i=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,s.replace(i,"&").replace(/{(function(){g6t.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(m6t)});var LCe=S((_6t,A6t)=>{(function(){var e,t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g={}.hasOwnProperty;_=mp().assign,e=Yi(),c=rG(),u=oG(),r=eG(),n=tG(),d=ZK(),h=cG(),p=uG(),f=lG(),l=DCe(),s=nG(),i=iG(),a=sG(),o=aG(),t=hB(),A6t.exports=m=function(){function y(A){var E,v,b;A||(A={}),this.options=A,v=A.writer||{};for(E in v)g.call(v,E)&&(b=v[E],this["_"+E]=this[E],this[E]=b)}return y.prototype.filterOptions=function(A){var E,v,b,I,T,x,w,D;return A||(A={}),A=_({},this.options,A),E={writer:this},E.pretty=A.pretty||!1,E.allowEmpty=A.allowEmpty||!1,E.indent=(v=A.indent)!=null?v:" ",E.newline=(b=A.newline)!=null?b:` -`,E.offset=(I=A.offset)!=null?I:0,E.dontPrettyTextNodes=(T=(x=A.dontPrettyTextNodes)!=null?x:A.dontprettytextnodes)!=null?T:0,E.spaceBeforeSlash=(w=(D=A.spaceBeforeSlash)!=null?D:A.spacebeforeslash)!=null?w:"",E.spaceBeforeSlash===!0&&(E.spaceBeforeSlash=" "),E.suppressPrettyCount=0,E.user={},E.state=t.None,E},y.prototype.indent=function(A,E,v){var b;return!E.pretty||E.suppressPrettyCount?"":E.pretty&&(b=(v||0)+E.offset+1,b>0)?new Array(b).join(E.indent):""},y.prototype.endline=function(A,E,v){return!E.pretty||E.suppressPrettyCount?"":E.newline},y.prototype.attribute=function(A,E,v){var b;return this.openAttribute(A,E,v),b=" "+A.name+'="'+A.value+'"',this.closeAttribute(A,E,v),b},y.prototype.cdata=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.comment=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.declaration=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+"",b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.docType=function(A,E,v){var b,I,T,x,w;if(v||(v=0),this.openNode(A,E,v),E.state=t.OpenTag,x=this.indent(A,E,v),x+="0){for(x+=" [",x+=this.endline(A,E,v),E.state=t.InsideTag,w=A.children,I=0,T=w.length;I",x+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),x},y.prototype.element=function(A,E,v){var b,I,T,x,w,D,M,L,U,G,$,K,ee,z;v||(v=0),G=!1,$="",this.openNode(A,E,v),E.state=t.OpenTag,$+=this.indent(A,E,v)+"<"+A.name,K=A.attribs;for(U in K)g.call(K,U)&&(b=K[U],$+=this.attribute(b,E,v));if(T=A.children.length,x=T===0?null:A.children[0],T===0||A.children.every(function(oe){return(oe.type===e.Text||oe.type===e.Raw)&&oe.value===""}))E.allowEmpty?($+=">",E.state=t.CloseTag,$+=""+this.endline(A,E,v)):(E.state=t.CloseTag,$+=E.spaceBeforeSlash+"/>"+this.endline(A,E,v));else if(E.pretty&&T===1&&(x.type===e.Text||x.type===e.Raw)&&x.value!=null)$+=">",E.state=t.InsideTag,E.suppressPrettyCount++,G=!0,$+=this.writeChildNode(x,E,v+1),E.suppressPrettyCount--,G=!1,E.state=t.CloseTag,$+=""+this.endline(A,E,v);else{if(E.dontPrettyTextNodes){for(ee=A.children,w=0,M=ee.length;w"+this.endline(A,E,v),E.state=t.InsideTag,z=A.children,D=0,L=z.length;D",G&&E.suppressPrettyCount--,$+=this.endline(A,E,v),E.state=t.None}return this.closeNode(A,E,v),$},y.prototype.writeChildNode=function(A,E,v){switch(A.type){case e.CData:return this.cdata(A,E,v);case e.Comment:return this.comment(A,E,v);case e.Element:return this.element(A,E,v);case e.Raw:return this.raw(A,E,v);case e.Text:return this.text(A,E,v);case e.ProcessingInstruction:return this.processingInstruction(A,E,v);case e.Dummy:return"";case e.Declaration:return this.declaration(A,E,v);case e.DocType:return this.docType(A,E,v);case e.AttributeDeclaration:return this.dtdAttList(A,E,v);case e.ElementDeclaration:return this.dtdElement(A,E,v);case e.EntityDeclaration:return this.dtdEntity(A,E,v);case e.NotationDeclaration:return this.dtdNotation(A,E,v);default:throw new Error("Unknown XML node type: "+A.constructor.name)}},y.prototype.processingInstruction=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+"",b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.raw=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v),E.state=t.InsideTag,b+=A.value,E.state=t.CloseTag,b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.text=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v),E.state=t.InsideTag,b+=A.value,E.state=t.CloseTag,b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdAttList=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdElement=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdEntity=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdNotation=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.openNode=function(A,E,v){},y.prototype.closeNode=function(A,E,v){},y.prototype.openAttribute=function(A,E,v){},y.prototype.closeAttribute=function(A,E,v){},y}()}).call(_6t)});var dG=S((E6t,y6t)=>{(function(){var e,t,r=function(s,i){for(var a in i)n.call(i,a)&&(s[a]=i[a]);function o(){this.constructor=s}return o.prototype=i.prototype,s.prototype=new o,s.__super__=i.prototype,s},n={}.hasOwnProperty;t=LCe(),y6t.exports=e=function(s){r(i,s);function i(a){i.__super__.constructor.call(this,a)}return i.prototype.document=function(a,o){var c,u,l,d,f;for(o=this.filterOptions(o),d="",f=a.children,u=0,l=f.length;u{(function(){var e,t,r,n,s,i,a,o,c=function(l,d){for(var f in d)u.call(d,f)&&(l[f]=d[f]);function h(){this.constructor=l}return h.prototype=d.prototype,l.prototype=new h,l.__super__=d.prototype,l},u={}.hasOwnProperty;o=mp().isPlainObject,r=NCe(),t=bFt(),s=Gl(),e=Yi(),a=PCe(),i=dG(),S6t.exports=n=function(l){c(d,l);function d(f){d.__super__.constructor.call(this,null),this.name="#document",this.type=e.Document,this.documentURI=null,this.domConfig=new t,f||(f={}),f.writer||(f.writer=new i),this.options=f,this.stringify=new a(f)}return Object.defineProperty(d.prototype,"implementation",{value:new r}),Object.defineProperty(d.prototype,"doctype",{get:function(){var f,h,p,m;for(m=this.children,h=0,p=m.length;h{(function(){var e,t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,_,g,y,A,E,v,b,I,T={}.hasOwnProperty;I=mp(),v=I.isObject,E=I.isFunction,b=I.isPlainObject,A=I.getValue,e=Yi(),d=MCe(),h=ZK(),n=eG(),s=tG(),m=cG(),y=uG(),p=lG(),u=rG(),l=oG(),i=nG(),o=sG(),a=iG(),c=aG(),r=OCe(),g=PCe(),_=dG(),t=hB(),b6t.exports=f=function(){function x(w,D,M){var L;this.name="?xml",this.type=e.Document,w||(w={}),L={},w.writer?b(w.writer)&&(L=w.writer,w.writer=new _):w.writer=new _,this.options=w,this.writer=w.writer,this.writerOptions=this.writer.filterOptions(L),this.stringify=new g(w),this.onDataCallback=D||function(){},this.onEndCallback=M||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return x.prototype.createChildNode=function(w){var D,M,L,U,G,$,K,ee;switch(w.type){case e.CData:this.cdata(w.value);break;case e.Comment:this.comment(w.value);break;case e.Element:L={},K=w.attribs;for(M in K)T.call(K,M)&&(D=K[M],L[M]=D.value);this.node(w.name,L);break;case e.Dummy:this.dummy();break;case e.Raw:this.raw(w.value);break;case e.Text:this.text(w.value);break;case e.ProcessingInstruction:this.instruction(w.target,w.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+w.constructor.name)}for(ee=w.children,G=0,$=ee.length;G<$;G++)U=ee[G],this.createChildNode(U),U.type===e.Element&&this.up();return this},x.prototype.dummy=function(){return this},x.prototype.node=function(w,D,M){var L;if(w==null)throw new Error("Missing node name.");if(this.root&&this.currentLevel===-1)throw new Error("Document can only have one root node. "+this.debugInfo(w));return this.openCurrent(),w=A(w),D==null&&(D={}),D=A(D),v(D)||(L=[D,M],M=L[0],D=L[1]),this.currentNode=new h(this,w,D),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,M!=null&&this.text(M),this},x.prototype.element=function(w,D,M){var L,U,G,$,K,ee;if(this.currentNode&&this.currentNode.type===e.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(w)||v(w)||E(w))for($=this.options.noValidation,this.options.noValidation=!0,ee=new d(this.options).element("TEMP_ROOT"),ee.element(w),this.options.noValidation=$,K=ee.children,U=0,G=K.length;U=0;)this.up();return this.onEnd()},x.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},x.prototype.openNode=function(w){var D,M,L,U;if(!w.isOpen){if(!this.root&&this.currentLevel===0&&w.type===e.Element&&(this.root=w),M="",w.type===e.Element){this.writerOptions.state=t.OpenTag,M=this.writer.indent(w,this.writerOptions,this.currentLevel)+"<"+w.name,U=w.attribs;for(L in U)T.call(U,L)&&(D=U[L],M+=this.writer.attribute(D,this.writerOptions,this.currentLevel));M+=(w.children?">":"/>")+this.writer.endline(w,this.writerOptions,this.currentLevel),this.writerOptions.state=t.InsideTag}else this.writerOptions.state=t.OpenTag,M=this.writer.indent(w,this.writerOptions,this.currentLevel)+""),M+=this.writer.endline(w,this.writerOptions,this.currentLevel);return this.onData(M,this.currentLevel),w.isOpen=!0}},x.prototype.closeNode=function(w){var D;if(!w.isClosed)return D="",this.writerOptions.state=t.CloseTag,w.type===e.Element?D=this.writer.indent(w,this.writerOptions,this.currentLevel)+""+this.writer.endline(w,this.writerOptions,this.currentLevel):D=this.writer.indent(w,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(w,this.writerOptions,this.currentLevel),this.writerOptions.state=t.None,this.onData(D,this.currentLevel),w.isClosed=!0},x.prototype.onData=function(w,D){return this.documentStarted=!0,this.onDataCallback(w,D+1)},x.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},x.prototype.debugInfo=function(w){return w==null?"":"node: <"+w+">"},x.prototype.ele=function(){return this.element.apply(this,arguments)},x.prototype.nod=function(w,D,M){return this.node(w,D,M)},x.prototype.txt=function(w){return this.text(w)},x.prototype.dat=function(w){return this.cdata(w)},x.prototype.com=function(w){return this.comment(w)},x.prototype.ins=function(w,D){return this.instruction(w,D)},x.prototype.dec=function(w,D,M){return this.declaration(w,D,M)},x.prototype.dtd=function(w,D,M){return this.doctype(w,D,M)},x.prototype.e=function(w,D,M){return this.element(w,D,M)},x.prototype.n=function(w,D,M){return this.node(w,D,M)},x.prototype.t=function(w){return this.text(w)},x.prototype.d=function(w){return this.cdata(w)},x.prototype.c=function(w){return this.comment(w)},x.prototype.r=function(w){return this.raw(w)},x.prototype.i=function(w,D){return this.instruction(w,D)},x.prototype.att=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},x.prototype.a=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},x.prototype.ent=function(w,D){return this.entity(w,D)},x.prototype.pent=function(w,D){return this.pEntity(w,D)},x.prototype.not=function(w,D){return this.notation(w,D)},x}()}).call(T6t)});var x6t=S((R6t,C6t)=>{(function(){var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;e=Yi(),n=LCe(),t=hB(),C6t.exports=r=function(a){s(o,a);function o(c,u){this.stream=c,o.__super__.constructor.call(this,u)}return o.prototype.endline=function(c,u,l){return c.isLastRootNode&&u.state===t.CloseTag?"":o.__super__.endline.call(this,c,u,l)},o.prototype.document=function(c,u){var l,d,f,h,p,m,_,g,y;for(_=c.children,d=f=0,p=_.length;f0){for(this.stream.write(" ["),this.stream.write(this.endline(c,u,l)),u.state=t.InsideTag,p=c.children,f=0,h=p.length;f"),this.stream.write(this.endline(c,u,l)),u.state=t.None,this.closeNode(c,u,l)},o.prototype.element=function(c,u,l){var d,f,h,p,m,_,g,y,A,E;l||(l=0),this.openNode(c,u,l),u.state=t.OpenTag,this.stream.write(this.indent(c,u,l)+"<"+c.name),A=c.attribs;for(g in A)i.call(A,g)&&(d=A[g],this.attribute(d,u,l));if(h=c.children.length,p=h===0?null:c.children[0],h===0||c.children.every(function(v){return(v.type===e.Text||v.type===e.Raw)&&v.value===""}))u.allowEmpty?(this.stream.write(">"),u.state=t.CloseTag,this.stream.write("")):(u.state=t.CloseTag,this.stream.write(u.spaceBeforeSlash+"/>"));else if(u.pretty&&h===1&&(p.type===e.Text||p.type===e.Raw)&&p.value!=null)this.stream.write(">"),u.state=t.InsideTag,u.suppressPrettyCount++,y=!0,this.writeChildNode(p,u,l+1),u.suppressPrettyCount--,y=!1,u.state=t.CloseTag,this.stream.write("");else{for(this.stream.write(">"+this.endline(c,u,l)),u.state=t.InsideTag,E=c.children,m=0,_=E.length;m<_;m++)f=E[m],this.writeChildNode(f,u,l+1);u.state=t.CloseTag,this.stream.write(this.indent(c,u,l)+"")}return this.stream.write(this.endline(c,u,l)),u.state=t.None,this.closeNode(c,u,l)},o.prototype.processingInstruction=function(c,u,l){return this.stream.write(o.__super__.processingInstruction.call(this,c,u,l))},o.prototype.raw=function(c,u,l){return this.stream.write(o.__super__.raw.call(this,c,u,l))},o.prototype.text=function(c,u,l){return this.stream.write(o.__super__.text.call(this,c,u,l))},o.prototype.dtdAttList=function(c,u,l){return this.stream.write(o.__super__.dtdAttList.call(this,c,u,l))},o.prototype.dtdElement=function(c,u,l){return this.stream.write(o.__super__.dtdElement.call(this,c,u,l))},o.prototype.dtdEntity=function(c,u,l){return this.stream.write(o.__super__.dtdEntity.call(this,c,u,l))},o.prototype.dtdNotation=function(c,u,l){return this.stream.write(o.__super__.dtdNotation.call(this,c,u,l))},o}(n)}).call(R6t)});var N6t=S((w6t,iy)=>{(function(){var e,t,r,n,s,i,a,o,c,u;u=mp(),o=u.assign,c=u.isFunction,r=NCe(),n=MCe(),s=I6t(),a=dG(),i=x6t(),e=Yi(),t=hB(),iy.exports.create=function(l,d,f,h){var p,m;if(l==null)throw new Error("Root element needs a name.");return h=o({},d,f,h),p=new n(h),m=p.element(l),h.headless||(p.declaration(h),(h.pubID!=null||h.sysID!=null)&&p.dtd(h)),m},iy.exports.begin=function(l,d,f){var h;return c(l)&&(h=[l,d],d=h[0],f=h[1],l={}),d?new s(l,d,f):new n(l)},iy.exports.stringWriter=function(l){return new a(l)},iy.exports.streamWriter=function(l,d){return new i(l,d)},iy.exports.implementation=new r,iy.exports.nodeType=e,iy.exports.writerState=t}).call(w6t)});var O6t=S(kCe=>{(function(){"use strict";var e,t,r,n,s,i={}.hasOwnProperty;e=N6t(),t=XK().defaults,n=function(a){return typeof a=="string"&&(a.indexOf("&")>=0||a.indexOf(">")>=0||a.indexOf("<")>=0)},s=function(a){return""},r=function(a){return a.replace("]]>","]]]]>")},kCe.Builder=function(){function a(o){var c,u,l;this.options={},u=t["0.2"];for(c in u)i.call(u,c)&&(l=u[c],this.options[c]=l);for(c in o)i.call(o,c)&&(l=o[c],this.options[c]=l)}return a.prototype.buildObject=function(o){var c,u,l,d,f;return c=this.options.attrkey,u=this.options.charkey,Object.keys(o).length===1&&this.options.rootName===t["0.2"].rootName?(f=Object.keys(o)[0],o=o[f]):f=this.options.rootName,l=function(h){return function(p,m){var _,g,y,A,E,v;if(typeof m!="object")h.options.cdata&&n(m)?p.raw(s(m)):p.txt(m);else if(Array.isArray(m)){for(A in m)if(i.call(m,A)){g=m[A];for(E in g)y=g[E],p=l(p.ele(E),y).up()}}else for(E in m)if(i.call(m,E))if(g=m[E],E===c){if(typeof g=="object")for(_ in g)v=g[_],p=p.att(_,v)}else if(E===u)h.options.cdata&&n(g)?p=p.raw(s(g)):p=p.txt(g);else if(Array.isArray(g))for(A in g)i.call(g,A)&&(y=g[A],typeof y=="string"?h.options.cdata&&n(y)?p=p.ele(E).raw(s(y)).up():p=p.ele(E,y).up():p=l(p.ele(E),y).up());else typeof g=="object"?p=l(p.ele(E),g).up():typeof g=="string"&&h.options.cdata&&n(g)?p=p.ele(E).raw(s(g)).up():(g==null&&(g=""),p=p.ele(E,g.toString()).up());return p}}(this),d=e.create(f,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),l(d,o).end(this.options.renderOpts)},a}()}).call(kCe)});var D6t=S(fG=>{(function(e){e.parser=function(B,k){return new r(B,k)},e.SAXParser=r,e.SAXStream=u,e.createStream=c,e.MAX_BUFFER_LENGTH=64*1024;var t=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"];function r(B,k){if(!(this instanceof r))return new r(B,k);var W=this;s(W),W.q=W.c="",W.bufferCheckPosition=e.MAX_BUFFER_LENGTH,W.opt=k||{},W.opt.lowercase=W.opt.lowercase||W.opt.lowercasetags,W.looseCase=W.opt.lowercase?"toLowerCase":"toUpperCase",W.tags=[],W.closed=W.closedRoot=W.sawRoot=!1,W.tag=W.error=null,W.strict=!!B,W.noscript=!!(B||W.opt.noscript),W.state=T.BEGIN,W.strictEntities=W.opt.strictEntities,W.ENTITIES=W.strictEntities?Object.create(e.XML_ENTITIES):Object.create(e.ENTITIES),W.attribList=[],W.opt.xmlns&&(W.ns=Object.create(p)),W.opt.unquotedAttributeValues===void 0&&(W.opt.unquotedAttributeValues=!B),W.trackPosition=W.opt.position!==!1,W.trackPosition&&(W.position=W.line=W.column=0),w(W,"onready")}Object.create||(Object.create=function(B){function k(){}k.prototype=B;var W=new k;return W}),Object.keys||(Object.keys=function(B){var k=[];for(var W in B)B.hasOwnProperty(W)&&k.push(W);return k});function n(B){for(var k=Math.max(e.MAX_BUFFER_LENGTH,10),W=0,P=0,H=t.length;Pk)switch(t[P]){case"textNode":M(B);break;case"cdata":D(B,"oncdata",B.cdata),B.cdata="";break;case"script":D(B,"onscript",B.script),B.script="";break;default:U(B,"Max buffer length exceeded: "+t[P])}W=Math.max(W,j)}var q=e.MAX_BUFFER_LENGTH-W;B.bufferCheckPosition=q+B.position}function s(B){for(var k=0,W=t.length;k"||A(B)}function b(B,k){return B.test(k)}function I(B,k){return!b(B,k)}var T=0;e.STATE={BEGIN:T++,BEGIN_WHITESPACE:T++,TEXT:T++,TEXT_ENTITY:T++,OPEN_WAKA:T++,SGML_DECL:T++,SGML_DECL_QUOTED:T++,DOCTYPE:T++,DOCTYPE_QUOTED:T++,DOCTYPE_DTD:T++,DOCTYPE_DTD_QUOTED:T++,COMMENT_STARTING:T++,COMMENT:T++,COMMENT_ENDING:T++,COMMENT_ENDED:T++,CDATA:T++,CDATA_ENDING:T++,CDATA_ENDING_2:T++,PROC_INST:T++,PROC_INST_BODY:T++,PROC_INST_ENDING:T++,OPEN_TAG:T++,OPEN_TAG_SLASH:T++,ATTRIB:T++,ATTRIB_NAME:T++,ATTRIB_NAME_SAW_WHITE:T++,ATTRIB_VALUE:T++,ATTRIB_VALUE_QUOTED:T++,ATTRIB_VALUE_CLOSED:T++,ATTRIB_VALUE_UNQUOTED:T++,ATTRIB_VALUE_ENTITY_Q:T++,ATTRIB_VALUE_ENTITY_U:T++,CLOSE_TAG:T++,CLOSE_TAG_SAW_WHITE:T++,SCRIPT:T++,SCRIPT_ENDING:T++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach(function(B){var k=e.ENTITIES[B],W=typeof k=="number"?String.fromCharCode(k):k;e.ENTITIES[B]=W});for(var x in e.STATE)e.STATE[e.STATE[x]]=x;T=e.STATE;function w(B,k,W){B[k]&&B[k](W)}function D(B,k,W){B.textNode&&M(B),w(B,k,W)}function M(B){B.textNode=L(B.opt,B.textNode),B.textNode&&w(B,"ontext",B.textNode),B.textNode=""}function L(B,k){return B.trim&&(k=k.trim()),B.normalize&&(k=k.replace(/\s+/g," ")),k}function U(B,k){return M(B),B.trackPosition&&(k+=` -Line: `+B.line+` -Column: `+B.column+` -Char: `+B.c),k=new Error(k),B.error=k,w(B,"onerror",k),B}function G(B){return B.sawRoot&&!B.closedRoot&&$(B,"Unclosed root tag"),B.state!==T.BEGIN&&B.state!==T.BEGIN_WHITESPACE&&B.state!==T.TEXT&&U(B,"Unexpected end"),M(B),B.c="",B.closed=!0,w(B,"onend"),r.call(B,B.strict,B.opt),B}function $(B,k){if(typeof B!="object"||!(B instanceof r))throw new Error("bad call to strictFail");B.strict&&U(B,k)}function K(B){B.strict||(B.tagName=B.tagName[B.looseCase]());var k=B.tags[B.tags.length-1]||B,W=B.tag={name:B.tagName,attributes:{}};B.opt.xmlns&&(W.ns=k.ns),B.attribList.length=0,D(B,"onopentagstart",W)}function ee(B,k){var W=B.indexOf(":"),P=W<0?["",B]:B.split(":"),H=P[0],j=P[1];return k&&B==="xmlns"&&(H="xmlns",j=""),{prefix:H,local:j}}function z(B){if(B.strict||(B.attribName=B.attribName[B.looseCase]()),B.attribList.indexOf(B.attribName)!==-1||B.tag.attributes.hasOwnProperty(B.attribName)){B.attribName=B.attribValue="";return}if(B.opt.xmlns){var k=ee(B.attribName,!0),W=k.prefix,P=k.local;if(W==="xmlns")if(P==="xml"&&B.attribValue!==f)$(B,"xml: prefix must be bound to "+f+` -Actual: `+B.attribValue);else if(P==="xmlns"&&B.attribValue!==h)$(B,"xmlns: prefix must be bound to "+h+` -Actual: `+B.attribValue);else{var H=B.tag,j=B.tags[B.tags.length-1]||B;H.ns===j.ns&&(H.ns=Object.create(j.ns)),H.ns[P]=B.attribValue}B.attribList.push([B.attribName,B.attribValue])}else B.tag.attributes[B.attribName]=B.attribValue,D(B,"onattribute",{name:B.attribName,value:B.attribValue});B.attribName=B.attribValue=""}function oe(B,k){if(B.opt.xmlns){var W=B.tag,P=ee(B.tagName);W.prefix=P.prefix,W.local=P.local,W.uri=W.ns[P.prefix]||"",W.prefix&&!W.uri&&($(B,"Unbound namespace prefix: "+JSON.stringify(B.tagName)),W.uri=P.prefix);var H=B.tags[B.tags.length-1]||B;W.ns&&H.ns!==W.ns&&Object.keys(W.ns).forEach(function(be){D(B,"onopennamespace",{prefix:be,uri:W.ns[be]})});for(var j=0,q=B.attribList.length;j",B.tagName="",B.state=T.SCRIPT;return}D(B,"onscript",B.script),B.script=""}var k=B.tags.length,W=B.tagName;B.strict||(W=W[B.looseCase]());for(var P=W;k--;){var H=B.tags[k];if(H.name!==P)$(B,"Unexpected close tag");else break}if(k<0){$(B,"Unmatched closing tag: "+B.tagName),B.textNode+="",B.state=T.TEXT;return}B.tagName=W;for(var j=B.tags.length;j-- >k;){var q=B.tag=B.tags.pop();B.tagName=B.tag.name,D(B,"onclosetag",B.tagName);var Y={};for(var X in q.ns)Y[X]=q.ns[X];var ie=B.tags[B.tags.length-1]||B;B.opt.xmlns&&q.ns!==ie.ns&&Object.keys(q.ns).forEach(function(ne){var se=q.ns[ne];D(B,"onclosenamespace",{prefix:ne,uri:se})})}k===0&&(B.closedRoot=!0),B.tagName=B.attribValue=B.attribName="",B.attribList.length=0,B.state=T.TEXT}function te(B){var k=B.entity,W=k.toLowerCase(),P,H="";return B.ENTITIES[k]?B.ENTITIES[k]:B.ENTITIES[W]?B.ENTITIES[W]:(k=W,k.charAt(0)==="#"&&(k.charAt(1)==="x"?(k=k.slice(2),P=parseInt(k,16),H=P.toString(16)):(k=k.slice(1),P=parseInt(k,10),H=P.toString(10))),k=k.replace(/^0+/,""),isNaN(P)||H.toLowerCase()!==k||P<0||P>1114111?($(B,"Invalid character entity"),"&"+B.entity+";"):String.fromCodePoint(P))}function Q(B,k){k==="<"?(B.state=T.OPEN_WAKA,B.startTagPosition=B.position):A(k)||($(B,"Non-whitespace before first tag."),B.textNode=k,B.state=T.TEXT)}function Z(B,k){var W="";return k"?(D(k,"onsgmldeclaration",k.sgmlDecl),k.sgmlDecl="",k.state=T.TEXT):(E(P)&&(k.state=T.SGML_DECL_QUOTED),k.sgmlDecl+=P);continue;case T.SGML_DECL_QUOTED:P===k.q&&(k.state=T.SGML_DECL,k.q=""),k.sgmlDecl+=P;continue;case T.DOCTYPE:P===">"?(k.state=T.TEXT,D(k,"ondoctype",k.doctype),k.doctype=!0):(k.doctype+=P,P==="["?k.state=T.DOCTYPE_DTD:E(P)&&(k.state=T.DOCTYPE_QUOTED,k.q=P));continue;case T.DOCTYPE_QUOTED:k.doctype+=P,P===k.q&&(k.q="",k.state=T.DOCTYPE);continue;case T.DOCTYPE_DTD:P==="]"?(k.doctype+=P,k.state=T.DOCTYPE):P==="<"?(k.state=T.OPEN_WAKA,k.startTagPosition=k.position):E(P)?(k.doctype+=P,k.state=T.DOCTYPE_DTD_QUOTED,k.q=P):k.doctype+=P;continue;case T.DOCTYPE_DTD_QUOTED:k.doctype+=P,P===k.q&&(k.state=T.DOCTYPE_DTD,k.q="");continue;case T.COMMENT:P==="-"?k.state=T.COMMENT_ENDING:k.comment+=P;continue;case T.COMMENT_ENDING:P==="-"?(k.state=T.COMMENT_ENDED,k.comment=L(k.opt,k.comment),k.comment&&D(k,"oncomment",k.comment),k.comment=""):(k.comment+="-"+P,k.state=T.COMMENT);continue;case T.COMMENT_ENDED:P!==">"?($(k,"Malformed comment"),k.comment+="--"+P,k.state=T.COMMENT):k.doctype&&k.doctype!==!0?k.state=T.DOCTYPE_DTD:k.state=T.TEXT;continue;case T.CDATA:for(var j=W-1;P&&P!=="]";)P=Z(B,W++),P&&k.trackPosition&&(k.position++,P===` -`?(k.line++,k.column=0):k.column++);k.cdata+=B.substring(j,W-1),P==="]"&&(k.state=T.CDATA_ENDING);continue;case T.CDATA_ENDING:P==="]"?k.state=T.CDATA_ENDING_2:(k.cdata+="]"+P,k.state=T.CDATA);continue;case T.CDATA_ENDING_2:P===">"?(k.cdata&&D(k,"oncdata",k.cdata),D(k,"onclosecdata"),k.cdata="",k.state=T.TEXT):P==="]"?k.cdata+="]":(k.cdata+="]]"+P,k.state=T.CDATA);continue;case T.PROC_INST:P==="?"?k.state=T.PROC_INST_ENDING:A(P)?k.state=T.PROC_INST_BODY:k.procInstName+=P;continue;case T.PROC_INST_BODY:if(!k.procInstBody&&A(P))continue;P==="?"?k.state=T.PROC_INST_ENDING:k.procInstBody+=P;continue;case T.PROC_INST_ENDING:P===">"?(D(k,"onprocessinginstruction",{name:k.procInstName,body:k.procInstBody}),k.procInstName=k.procInstBody="",k.state=T.TEXT):(k.procInstBody+="?"+P,k.state=T.PROC_INST_BODY);continue;case T.OPEN_TAG:b(_,P)?k.tagName+=P:(K(k),P===">"?oe(k):P==="/"?k.state=T.OPEN_TAG_SLASH:(A(P)||$(k,"Invalid character in tag name"),k.state=T.ATTRIB));continue;case T.OPEN_TAG_SLASH:P===">"?(oe(k,!0),le(k)):($(k,"Forward-slash in opening tag not followed by >"),k.state=T.ATTRIB);continue;case T.ATTRIB:if(A(P))continue;P===">"?oe(k):P==="/"?k.state=T.OPEN_TAG_SLASH:b(m,P)?(k.attribName=P,k.attribValue="",k.state=T.ATTRIB_NAME):$(k,"Invalid attribute name");continue;case T.ATTRIB_NAME:P==="="?k.state=T.ATTRIB_VALUE:P===">"?($(k,"Attribute without value"),k.attribValue=k.attribName,z(k),oe(k)):A(P)?k.state=T.ATTRIB_NAME_SAW_WHITE:b(_,P)?k.attribName+=P:$(k,"Invalid attribute name");continue;case T.ATTRIB_NAME_SAW_WHITE:if(P==="=")k.state=T.ATTRIB_VALUE;else{if(A(P))continue;$(k,"Attribute without value"),k.tag.attributes[k.attribName]="",k.attribValue="",D(k,"onattribute",{name:k.attribName,value:""}),k.attribName="",P===">"?oe(k):b(m,P)?(k.attribName=P,k.state=T.ATTRIB_NAME):($(k,"Invalid attribute name"),k.state=T.ATTRIB)}continue;case T.ATTRIB_VALUE:if(A(P))continue;E(P)?(k.q=P,k.state=T.ATTRIB_VALUE_QUOTED):(k.opt.unquotedAttributeValues||U(k,"Unquoted attribute value"),k.state=T.ATTRIB_VALUE_UNQUOTED,k.attribValue=P);continue;case T.ATTRIB_VALUE_QUOTED:if(P!==k.q){P==="&"?k.state=T.ATTRIB_VALUE_ENTITY_Q:k.attribValue+=P;continue}z(k),k.q="",k.state=T.ATTRIB_VALUE_CLOSED;continue;case T.ATTRIB_VALUE_CLOSED:A(P)?k.state=T.ATTRIB:P===">"?oe(k):P==="/"?k.state=T.OPEN_TAG_SLASH:b(m,P)?($(k,"No whitespace between attributes"),k.attribName=P,k.attribValue="",k.state=T.ATTRIB_NAME):$(k,"Invalid attribute name");continue;case T.ATTRIB_VALUE_UNQUOTED:if(!v(P)){P==="&"?k.state=T.ATTRIB_VALUE_ENTITY_U:k.attribValue+=P;continue}z(k),P===">"?oe(k):k.state=T.ATTRIB;continue;case T.CLOSE_TAG:if(k.tagName)P===">"?le(k):b(_,P)?k.tagName+=P:k.script?(k.script+=""?le(k):$(k,"Invalid characters in closing tag");continue;case T.TEXT_ENTITY:case T.ATTRIB_VALUE_ENTITY_Q:case T.ATTRIB_VALUE_ENTITY_U:var q,Y;switch(k.state){case T.TEXT_ENTITY:q=T.TEXT,Y="textNode";break;case T.ATTRIB_VALUE_ENTITY_Q:q=T.ATTRIB_VALUE_QUOTED,Y="attribValue";break;case T.ATTRIB_VALUE_ENTITY_U:q=T.ATTRIB_VALUE_UNQUOTED,Y="attribValue";break}if(P===";"){var X=te(k);k.opt.unparsedEntities&&!Object.values(e.XML_ENTITIES).includes(X)?(k.entity="",k.state=q,k.write(X)):(k[Y]+=X,k.entity="",k.state=q)}else b(k.entity.length?y:g,P)?k.entity+=P:($(k,"Invalid character in entity name"),k[Y]+="&"+k.entity+P,k.entity="",k.state=q);continue;default:throw new Error(k,"Unknown state: "+k.state)}return k.position>=k.bufferCheckPosition&&n(k),k}String.fromCodePoint||function(){var B=String.fromCharCode,k=Math.floor,W=function(){var P=16384,H=[],j,q,Y=-1,X=arguments.length;if(!X)return"";for(var ie="";++Y1114111||k(ne)!==ne)throw RangeError("Invalid code point: "+ne);ne<=65535?H.push(ne):(ne-=65536,j=(ne>>10)+55296,q=ne%1024+56320,H.push(j,q)),(Y+1===X||H.length>P)&&(ie+=B.apply(null,H),H.length=0)}return ie};Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:W,configurable:!0,writable:!0}):String.fromCodePoint=W}()})(typeof fG>"u"?fG.sax={}:fG)});var P6t=S(BCe=>{(function(){"use strict";BCe.stripBOM=function(e){return e[0]==="\uFEFF"?e.substring(1):e}}).call(BCe)});var UCe=S(cb=>{(function(){"use strict";var e;e=new RegExp(/(?!xmlns)^.*:/),cb.normalize=function(t){return t.toLowerCase()},cb.firstCharLowerCase=function(t){return t.charAt(0).toLowerCase()+t.slice(1)},cb.stripPrefix=function(t){return t.replace(e,"")},cb.parseNumbers=function(t){return isNaN(t)||(t=t%1===0?parseInt(t,10):parseFloat(t)),t},cb.parseBooleans=function(t){return/^(?:true|false)$/i.test(t)&&(t=t.toLowerCase()==="true"),t}}).call(cb)});var L6t=S(Xg=>{(function(){"use strict";var e,t,r,n,s,i,a,o,c,u=function(f,h){return function(){return f.apply(h,arguments)}},l=function(f,h){for(var p in h)d.call(h,p)&&(f[p]=h[p]);function m(){this.constructor=f}return m.prototype=h.prototype,f.prototype=new m,f.__super__=h.prototype,f},d={}.hasOwnProperty;o=D6t(),n=require("events"),e=P6t(),a=UCe(),c=require("timers").setImmediate,t=XK().defaults,s=function(f){return typeof f=="object"&&f!=null&&Object.keys(f).length===0},i=function(f,h,p){var m,_,g;for(m=0,_=f.length;m<_;m++)g=f[m],h=g(h,p);return h},r=function(f,h,p){var m;return m=Object.create(null),m.value=p,m.writable=!0,m.enumerable=!0,m.configurable=!0,Object.defineProperty(f,h,m)},Xg.Parser=function(f){l(h,f);function h(p){this.parseStringPromise=u(this.parseStringPromise,this),this.parseString=u(this.parseString,this),this.reset=u(this.reset,this),this.assignOrPush=u(this.assignOrPush,this),this.processAsync=u(this.processAsync,this);var m,_,g;if(!(this instanceof Xg.Parser))return new Xg.Parser(p);this.options={},_=t["0.2"];for(m in _)d.call(_,m)&&(g=_[m],this.options[m]=g);for(m in p)d.call(p,m)&&(g=p[m],this.options[m]=g);this.options.xmlns&&(this.options.xmlnskey=this.options.attrkey+"ns"),this.options.normalizeTags&&(this.options.tagNameProcessors||(this.options.tagNameProcessors=[]),this.options.tagNameProcessors.unshift(a.normalize)),this.reset()}return h.prototype.processAsync=function(){var p,m;try{return this.remaining.length<=this.options.chunkSize?(p=this.remaining,this.remaining="",this.saxParser=this.saxParser.write(p),this.saxParser.close()):(p=this.remaining.substr(0,this.options.chunkSize),this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length),this.saxParser=this.saxParser.write(p),c(this.processAsync))}catch(_){if(m=_,!this.saxParser.errThrown)return this.saxParser.errThrown=!0,this.emit(m)}},h.prototype.assignOrPush=function(p,m,_){return m in p?(p[m]instanceof Array||r(p,m,[p[m]]),p[m].push(_)):this.options.explicitArray?r(p,m,[_]):r(p,m,_)},h.prototype.reset=function(){var p,m,_,g;return this.removeAllListeners(),this.saxParser=o.parser(this.options.strict,{trim:!1,normalize:!1,xmlns:this.options.xmlns}),this.saxParser.errThrown=!1,this.saxParser.onerror=function(y){return function(A){if(y.saxParser.resume(),!y.saxParser.errThrown)return y.saxParser.errThrown=!0,y.emit("error",A)}}(this),this.saxParser.onend=function(y){return function(){if(!y.saxParser.ended)return y.saxParser.ended=!0,y.emit("end",y.resultObject)}}(this),this.saxParser.ended=!1,this.EXPLICIT_CHARKEY=this.options.explicitCharkey,this.resultObject=null,g=[],p=this.options.attrkey,m=this.options.charkey,this.saxParser.onopentag=function(y){return function(A){var E,v,b,I,T;if(b={},b[m]="",!y.options.ignoreAttrs){T=A.attributes;for(E in T)d.call(T,E)&&(!(p in b)&&!y.options.mergeAttrs&&(b[p]={}),v=y.options.attrValueProcessors?i(y.options.attrValueProcessors,A.attributes[E],E):A.attributes[E],I=y.options.attrNameProcessors?i(y.options.attrNameProcessors,E):E,y.options.mergeAttrs?y.assignOrPush(b,I,v):r(b[p],I,v))}return b["#name"]=y.options.tagNameProcessors?i(y.options.tagNameProcessors,A.name):A.name,y.options.xmlns&&(b[y.options.xmlnskey]={uri:A.uri,local:A.local}),g.push(b)}}(this),this.saxParser.onclosetag=function(y){return function(){var A,E,v,b,I,T,x,w,D,M;if(T=g.pop(),I=T["#name"],(!y.options.explicitChildren||!y.options.preserveChildrenOrder)&&delete T["#name"],T.cdata===!0&&(A=T.cdata,delete T.cdata),D=g[g.length-1],T[m].match(/^\s*$/)&&!A?(E=T[m],delete T[m]):(y.options.trim&&(T[m]=T[m].trim()),y.options.normalize&&(T[m]=T[m].replace(/\s{2,}/g," ").trim()),T[m]=y.options.valueProcessors?i(y.options.valueProcessors,T[m],I):T[m],Object.keys(T).length===1&&m in T&&!y.EXPLICIT_CHARKEY&&(T=T[m])),s(T)&&(typeof y.options.emptyTag=="function"?T=y.options.emptyTag():T=y.options.emptyTag!==""?y.options.emptyTag:E),y.options.validator!=null&&(M="/"+function(){var L,U,G;for(G=[],L=0,U=g.length;L0&&(b[y.options.childkey]=T),T=b;else if(D){D[y.options.childkey]=D[y.options.childkey]||[],x={};for(v in T)d.call(T,v)&&r(x,v,T[v]);D[y.options.childkey].push(x),delete T["#name"],Object.keys(T).length===1&&m in T&&!y.EXPLICIT_CHARKEY&&(T=T[m])}}return g.length>0?y.assignOrPush(D,I,T):(y.options.explicitRoot&&(w=T,T={},r(T,I,w)),y.resultObject=T,y.saxParser.ended=!0,y.emit("end",y.resultObject))}}(this),_=function(y){return function(A){var E,v;if(v=g[g.length-1],v)return v[m]+=A,y.options.explicitChildren&&y.options.preserveChildrenOrder&&y.options.charsAsChildren&&(y.options.includeWhiteChars||A.replace(/\\n/g,"").trim()!=="")&&(v[y.options.childkey]=v[y.options.childkey]||[],E={"#name":"__text__"},E[m]=A,y.options.normalize&&(E[m]=E[m].replace(/\s{2,}/g," ").trim()),v[y.options.childkey].push(E)),v}}(this),this.saxParser.ontext=_,this.saxParser.oncdata=function(y){return function(A){var E;if(E=_(A),E)return E.cdata=!0}}(this)},h.prototype.parseString=function(p,m){var _;m!=null&&typeof m=="function"&&(this.on("end",function(g){return this.reset(),m(null,g)}),this.on("error",function(g){return this.reset(),m(g)}));try{return p=p.toString(),p.trim()===""?(this.emit("end",null),!0):(p=e.stripBOM(p),this.options.async?(this.remaining=p,c(this.processAsync),this.saxParser):this.saxParser.write(p).close())}catch(g){if(_=g,this.saxParser.errThrown||this.saxParser.ended){if(this.saxParser.ended)throw _}else return this.emit("error",_),this.saxParser.errThrown=!0}},h.prototype.parseStringPromise=function(p){return new Promise(function(m){return function(_,g){return m.parseString(p,function(y,A){return y?g(y):_(A)})}}(this))},h}(n),Xg.parseString=function(f,h,p){var m,_,g;return p!=null?(typeof p=="function"&&(m=p),typeof h=="object"&&(_=h)):(typeof h=="function"&&(m=h),_={}),g=new Xg.Parser(_),g.parseString(f,m)},Xg.parseStringPromise=function(f,h){var p,m;return typeof h=="object"&&(p=h),m=new Xg.Parser(p),m.parseStringPromise(f)}}).call(Xg)});var M6t=S(Jg=>{(function(){"use strict";var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;t=XK(),e=O6t(),r=L6t(),n=UCe(),Jg.defaults=t.defaults,Jg.processors=n,Jg.ValidationError=function(a){s(o,a);function o(c){this.message=c}return o}(Error),Jg.Builder=e.Builder,Jg.Parser=r.Parser,Jg.parseString=r.parseString,Jg.parseStringPromise=r.parseStringPromise}).call(Jg)});function G6t(e){return e===400||e===401||e===403}function z6t(e,t=300){if(e==null)return"empty";if(typeof e=="string")return e.slice(0,t).replace(/\s+/g," ");try{return JSON.stringify(e).slice(0,t)}catch{return"[unserializable]"}}function U6t(e,t){let r=z6t(e,500),n=r.toLowerCase(),s=/invalidsessionkey|cookieusersession is null or invalid|usersessionbo is null/.test(n),i=/check ip error|cookiesip=|curip=/.test(n),a=/permissiondenied|file type error or not support|forbidden|access denied|无权限/.test(n),o=G6t(t)||s||i||a,c="unknown",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=o,d="refresh_share_cookie";return i?(c="ip_mismatch",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u7F51\u7EDC\u51FA\u53E3\u53D8\u5316\u5BFC\u81F4\u4F1A\u8BDD\u5931\u6548\uFF0C\u5DF2\u5C1D\u8BD5\u5207\u6362 IPv4 \u4F1A\u8BDD",l=!0,d="force_share_login_ipv4_once"):s?(c="invalid_session",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5DF2\u5931\u6548\uFF0C\u5DF2\u5C1D\u8BD5\u81EA\u52A8\u5237\u65B0",l=!0,d="refresh_share_cookie"):a?(c="access_denied",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u5206\u4EAB\u4F1A\u8BDD\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=!1,d="no_retry"):o&&(c="auth",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=!0,d="refresh_share_cookie"),{authFailure:o,category:c,detail:r,message:u,retryable:l,retryAdvice:d}}function I0n(e){switch(e){case"ip_mismatch":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u7F51\u7EDC\u51FA\u53E3\u53D8\u5316\u5BFC\u81F4\u4F1A\u8BDD\u5931\u6548\uFF0C\u5DF2\u81EA\u52A8\u91CD\u5EFA IPv4 \u4F1A\u8BDD\uFF1B\u82E5\u4ECD\u5931\u8D25\u8BF7\u7A0D\u540E\u91CD\u8BD5";case"invalid_session":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u6548\uFF0C\u5DF2\u81EA\u52A8\u91CD\u8BD5\uFF1B\u82E5\u4ECD\u5931\u8D25\u8BF7\u7A0D\u540E\u518D\u8BD5";case"access_denied":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u5206\u4EAB\u4F1A\u8BDD\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5";default:return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"}}function gp(e={}){let t={...e||{}};return t.httpAgent=t.httpAgent||R0n,t.httpsAgent=t.httpsAgent||C0n,t.family=4,t}function ub(e){return Array.isArray(e)?e.map(t=>String(t||"").split(";")[0].trim()).filter(Boolean):[]}function jx(e){let t=new Map;return e.forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&t.set(s,`${s}=${i}`)}),Array.from(t.values())}function F6t(e,t={}){return e?.toUrl||e?.data?.toUrl||e?.returnUrl||e?.data?.returnUrl||e?.redirectUrl||e?.data?.redirectUrl||t?.location||""}function FCe(e=""){return/\.cas$/i.test(String(e||""))}function mB(e=""){return String(e||"").replace(/\.cas$/i,"")}function jCe(e=""){let t=String(e||"").trim();if(!t||/[\\/]/.test(t))throw new Error(`\u65E0\u6548\u7684\u6E90\u6587\u4EF6\u540D: ${e}`);return t}function x0n(e={}){let t=JSON.stringify(e||{});return HCe+Buffer.from(t,"utf8").toString("base64url")}function Y6t(e=""){let t=String(e||"");if(!t.startsWith(HCe))return null;try{let r=Buffer.from(t.slice(HCe.length),"base64url").toString("utf8"),n=JSON.parse(r);return n&&typeof n=="object"?n:null}catch{return null}}function Q6t(e=""){return!!Y6t(e)}function w0n(e=""){let t=jCe(e||`video-${Date.now()}.cas`),r=t.lastIndexOf("."),n=`${Date.now()}_${Math.floor(Math.random()*1e5)}`;return r<=0?`${t}.${n}`:`${t.slice(0,r)}.${n}${t.slice(r)}`}function N0n(){return hn.TEMP_DIR_NAME}function Kx(e){return e==null?"":typeof e=="string"?e.trim():String(typeof e=="number"||typeof e=="boolean"?e:typeof e=="object"?e.code||e.errorCode||e.message||e.errorMsg||JSON.stringify(e):e)}function $Ce(e){if(!e)return"";let t=typeof e=="string"?mG(e):e;if(!t||typeof t!="object")return"";let r=t.res_code;return typeof r=="number"&&r!==0?`res_code: ${r} ${Kx(t.res_message)}`.trim():typeof r=="string"&&r?`res_code: ${r} ${Kx(t.res_message)}`.trim():t.code&&t.code!=="SUCCESS"?`code: ${t.code} ${Kx(t.msg||t.message)}`.trim():t.errorCode?`err_code: ${t.errorCode} ${Kx(t.errorMsg)}`.trim():t.error?`error: ${Kx(t.error)} ${Kx(t.message)}`.trim():""}function mG(e=""){try{return JSON.parse(String(e||""))}catch{return null}}function qCe(){return{clientType:hn.PC,version:hn.VERSION,channelId:hn.CHANNEL_ID,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function O0n(){return new Date().toUTCString()}function D0n(){return Date.now()}function hG(e="",t){return String(e||"").match(t)?.[1]||""}function ay(e={}){if(!e||typeof e!="object")return{};for(let t of P0n)if(e[t]&&typeof e[t]=="object")return e[t];return e}function gB(e){return Array.isArray(e)?e:e?[e]:[]}function VCe(e={},t={}){let r=ay(e);return{...t,accessToken:String(r?.accessToken||t?.accessToken||""),refreshToken:String(r?.refreshToken||t?.refreshToken||""),sessionKey:String(r?.sessionKey||t?.sessionKey||""),sessionSecret:String(r?.sessionSecret||t?.sessionSecret||""),familySessionKey:String(r?.familySessionKey||t?.familySessionKey||""),familySessionSecret:String(r?.familySessionSecret||t?.familySessionSecret||""),loginName:String(r?.loginName||t?.loginName||"")}}async function $6t(e){let t=await W6t(e);return VCe(t)}async function W6t(e){if(e&&typeof e=="object")return e;let t=String(e||"").trim();if(!t)return{};if(t.startsWith("{")||t.startsWith("["))return mG(t)||{};if(!t.startsWith("<"))return{};try{return await(0,K6t.parseStringPromise)(t,{explicitArray:!1,trim:!0})||{}}catch{return{}}}function L0n(e,t,r,n,s,i=""){let a=new URL(n).pathname,o=db.default.createHmac("sha1",e),c=`SessionKey=${t}&Operate=${r}&RequestURI=${a}&Date=${s}`;return i&&(c+=`¶ms=${i}`),o.update(c),o.digest("hex").toUpperCase()}function M0n(e,t){let r=e.length%t,n=r===0?t:t-r;return Buffer.concat([e,Buffer.alloc(n,n)])}function k0n(e,t){let r=Buffer.from(String(t||"").slice(0,16),"utf8"),n=db.default.createCipheriv("aes-128-ecb",r,null);n.setAutoPadding(!1);let s=M0n(Buffer.from(String(e||""),"utf8"),16);return Buffer.concat([n.update(s),n.final()]).toString("hex").toUpperCase()}function B0n(e={},t=""){let n=Object.entries(e||{}).filter(([,s])=>s!=null&&s!=="").sort(([s],[i])=>s.localeCompare(i)).map(([s,i])=>`${s}=${i}`).join("&");return n?k0n(n,t):""}function U0n(e){return e>10485760*2*999?Math.max(Math.ceil(e/1999/10485760),5)*10485760:e>10485760*999?10485760*2:10485760}function F0n(e){let t=Buffer.from(e||[]).toString("utf8").replace(/^\uFEFF/,"").trim();if(!t)throw new Error("\u7A7A\u7684 .cas \u6587\u4EF6");let r=null;if(t.startsWith("{")&&t.endsWith("}")&&(r=mG(t)),!r){let s=Buffer.from(t,"base64").toString("utf8");r=mG(s)}if(!r||typeof r!="object")throw new Error("\u89E3\u6790 .cas \u5931\u8D25");let n={name:jCe(r.name||""),size:Number(r.size||0),md5:String(r.md5||"").trim(),sliceMd5:String(r.sliceMd5||r.slice_md5||"").trim(),createTime:String(r.create_time||"").trim()};if(!n.md5||!n.sliceMd5||!Number.isFinite(n.size)||n.size<0)throw new Error("\u65E0\u6548\u7684 .cas \u5143\u6570\u636E");return n}function q6t(e=""){return String(e||"").trim().toUpperCase()}var H6t,V6t,lb,j6t,K6t,db,oy,lc,hn,HCe,pB,Za,b0n,uc,k6t,B6t,pG,fb,R0n,C0n,P0n,Gx,cy,KCe=ae(()=>{Pr();H6t=Ne(require("http"),1),V6t=Ne(require("https"),1),lb=Ne(sx(),1),j6t=Ne(fFt(),1),K6t=Ne(M6t(),1),db=Ne(require("crypto"),1);ua();Wc();Hd();Xc();wi();$l();lc={},hn={WEB_URL:"https://cloud.189.cn",API_URL:"https://api.cloud.189.cn",UPLOAD_URL:"https://upload.cloud.189.cn",PC:"TELEPC",VERSION:"6.2",CHANNEL_ID:"web_cloud.189.cn",APP_ID:"8025431004",ACCOUNT_TYPE:"02",LOGIN_CLIENT_TYPE:"10020",RETURN_URL:"https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",ROOT_FOLDER_ID:"-11",TEMP_DIR_NAME:"CatVodOpen",TEMP_DIR_PREFIX:"CatVodOpen-cas-",DELETE_DELAY_MS:2*60*60*1e3},HCe="!tycas1!",pB="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Za={legacy:"cloud_cookie",private:"cloud_cookie_private",share:"cloud_cookie_share"},b0n=2,uc={set(e,t){if(lc[e]=t,!oy)return Promise.resolve();let r=oy.push(`/tyi/${e}`,t);return r&&typeof r.catch=="function"&&r.catch(n=>console.warn(`[cloud] db.push /tyi/${e} \u5931\u8D25:`,n.message)),r},get(e){return lc[e]}},k6t=(e,t={})=>{let r=t.method||"GET",n=t.headers||{};return ve({method:r,url:e,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},B6t=(0,j6t.default)({storeAsString:!0}),pG=class{publicKey=null;setPublicKey(t){this.publicKey=t}encrypt(t){let r=Buffer.from(t,"utf8");return db.default.publicEncrypt({key:this.publicKey,padding:db.default.constants.RSA_PKCS1_PADDING},r).toString("base64")}},fb=async e=>{oy=e.server.db,lc=await oy.getObjectDefault("/tyi",{});let t=String(e?.server?.config?.tianyi?.username||""),r=String(e?.server?.config?.tianyi?.password||"");!lc.cloud_account&&t&&(lc.cloud_account=t,await oy.push("/tyi/cloud_account",t)),!lc.cloud_password&&r&&(lc.cloud_password=r,await oy.push("/tyi/cloud_password",r));let n=String(lc[Za.legacy]||"").trim(),s=String(lc[Za.private]||"").trim(),i=String(lc[Za.share]||"").trim();n&&(s||(lc[Za.private]=n,await oy.push(`/tyi/${Za.private}`,n)),i||(lc[Za.share]=n,await oy.push(`/tyi/${Za.share}`,n))),console.log(`[Tianyi] initCloud account=${lc.cloud_account?"set":"empty"} password=${lc.cloud_password?"set":"empty"} privateCookie=${String(lc[Za.private]||n).trim()?"set":"empty"} shareCookie=${String(lc[Za.share]||n).trim()?"set":"empty"}`)};R0n=new H6t.default.Agent({keepAlive:!0,family:4}),C0n=new V6t.default.Agent({keepAlive:!0,family:4});P0n=["data","userSession","folder","listFiles","fileDownload","commitMultiUploadFile","initMultiUpload","TaskIdResp","taskState","batchTask"];Gx=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this._privateCookie=String(uc.get(Za.private)||uc.get(Za.legacy)||"").trim(),this._shareCookie=String(uc.get(Za.share)||"").trim(),this._shareAuthRetryCount=0,this._shareAuthLastError=null}get account(){return uc.get("cloud_account")}get password(){return uc.get("cloud_password")}get cookie(){return this.privateCookie}set cookie(t){this.privateCookie=t}get privateCookie(){return String(this._privateCookie||uc.get(Za.private)||uc.get(Za.legacy)||"").trim()}set privateCookie(t){this._privateCookie=String(t||"").trim(),uc.set(Za.private,this._privateCookie),uc.set(Za.legacy,this._privateCookie)}get shareCookie(){return String(this._shareCookie||uc.get(Za.share)||"").trim()}set shareCookie(t){this._shareCookie=String(t||"").trim(),uc.set(Za.share,this._shareCookie)}get tokenInfo(){return uc.get("cloud_token_info")||null}set tokenInfo(t){t&&typeof t=="object"?uc.set("cloud_token_info",t):uc.set("cloud_token_info",null)}get tempDirId(){return uc.get("cloud_temp_dir_id")||""}set tempDirId(t){uc.set("cloud_temp_dir_id",String(t||""))}hasCookie(){return this.hasPrivateCookie()}hasPrivateCookie(){return!!String(this.privateCookie||"").trim()}hasShareCookie(){return!!String(this.shareCookie||"").trim()}hasTokenInfo(){let t=this.tokenInfo;return!!(t?.sessionKey&&t?.sessionSecret)}async ensureLogin(){if(!this.account||!this.password)throw new Error("\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\u4E3A\u7A7A\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u586B\u5199");(!this.hasPrivateCookie()||!this.hasTokenInfo())&&await this.login(this.account,this.password)}clearAuthState(){this.clearPrivateAuthState()}clearPrivateAuthState(){this.privateCookie="",this.tokenInfo=null}clearShareAuthState(){this.shareCookie=""}resetShareAuthRetryState(){this._shareAuthRetryCount=0,this._shareAuthLastError=null}rememberShareAuthError(t){this._shareAuthLastError=t||null}flushShareAuthFailure(t={}){let r=t?.silentAuthFailure===!0,n=this._shareAuthLastError;this.resetShareAuthRetryState(),!(r||!n)&&en.toast(I0n(n.authCategory),{duration:5})}buildShareAuthError(t,r,n="\u5929\u7FFC\u64AD\u653E\u9274\u6743\u5931\u8D25"){let s=U6t(r,t),i=new Error(`${n} status=${t||"unknown"} body=${s.detail}`);return i.isAuthFailure=s.authFailure,i.authCategory=s.category,i.userMessage=s.message,i.response={status:t,data:r},i}getSessionHeader(t,r,n="",s=!1){let i=this.tokenInfo;if(!i)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD");let a=s?i.familySessionKey:i.sessionKey,o=s?i.familySessionSecret:i.sessionSecret;if(!a||!o)throw new Error("\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u4E0D\u5B8C\u6574");let c=O0n();return{Date:c,SessionKey:a,"X-Request-ID":db.default.randomUUID(),Signature:L0n(o,a,r,t,c,n)}}encryptPrivateParams(t={},r=!1){let n=this.tokenInfo;if(!n)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD");let s=r?n.familySessionSecret:n.sessionSecret;if(!s)throw new Error("\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u5BC6\u94A5\u7F3A\u5931");return B0n(t,s)}async refreshSession(){let t=this.tokenInfo;if(!t?.accessToken)throw new Error("\u7F3A\u5C11 accessToken\uFF0C\u65E0\u6CD5\u5237\u65B0\u4F1A\u8BDD");let r=await ve.get(`${hn.API_URL}/getSessionForPC.action`,{params:{...qCe(),appId:hn.APP_ID,accessToken:t.accessToken},headers:{"User-Agent":pB,"X-Request-ID":db.default.randomUUID(),...this.hasPrivateCookie()?{Cookie:String(this.privateCookie||"").trim()}:{}},validateStatus:null}),n=$Ce(r.data);if(n)throw new Error(n);let s=VCe(await $6t(r.data),t);if(!s.sessionKey||!s.sessionSecret)throw new Error("\u5237\u65B0\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u5931\u8D25\uFF1A\u672A\u8FD4\u56DE sessionKey");return this.tokenInfo=s,s}async requestPrivateApi(t,r="GET",n={},{isFamily:s=!1,form:i=null,encryptedParams:a=null}={}){await this.ensureLogin();let o=async()=>{let c=a?this.encryptPrivateParams(a,s):"",u={...qCe(),...Object.fromEntries(Object.entries(n||{}).filter(([,m])=>m!=null&&m!==""))};c&&(u.params=c);let l={"User-Agent":pB,Referer:hn.WEB_URL,...this.getSessionHeader(t,r,c,s)},d={method:r,url:t,params:u,headers:l,validateStatus:null};i&&(d.headers["Content-Type"]="application/x-www-form-urlencoded",d.data=lb.default.stringify(Object.fromEntries(Object.entries(i).filter(([,m])=>m!=null&&m!==""))));let f=await ve(d),h=await W6t(f.data),p=$Ce(h);if(typeof f.data=="string"&&/InvalidSessionKey|userSessionBO is null/.test(f.data)){let m=new Error("InvalidSessionKey");throw m.code="INVALID_SESSION_KEY",m}if(p){let m=new Error(p);throw/UserInvalidOpenToken|InvalidSessionKey/i.test(p)&&(m.code="INVALID_SESSION_KEY"),m}return h};try{return await o()}catch(c){if(c?.code==="INVALID_SESSION_KEY")return await this.refreshSession(),await o();throw c}}async createTempDir(t=!1){let r={id:hn.ROOT_FOLDER_ID,name:"root"};try{await this.makeDir(r,hn.TEMP_DIR_NAME)}catch{}let s=(await this.getPrivateFiles(hn.ROOT_FOLDER_ID,!1,"filename","asc",50)).find(i=>i.isFolder&&i.name===hn.TEMP_DIR_NAME);if(!s?.id)throw new Error("\u521B\u5EFA\u5929\u7FFC\u4E34\u65F6\u76EE\u5F55\u5931\u8D25");return this.tempDirId=s.id,t&&await this.clearTempDir(s.id),s.id}async ensureTempDir(t=!1){await this.ensureLogin();let r=this.tempDirId||await this.createTempDir(t);return console.log(`[Tianyi][temp] ensureTempDir dirId=${r} clean=${t?1:0}`),t&&await this.clearTempDir(r),r}async clearTempDir(t=""){let r=String(t||this.tempDirId||"");if(!r)return;let n=await this.getPrivateFiles(r,!1,"filename","asc",200);if(console.log(`[Tianyi][temp] \u6E05\u7406\u4E34\u65F6\u76EE\u5F55 dirId=${r} fileCount=${n.length}`),!!n.length){for(let s of n)console.log(`[Tianyi][temp] \u5220\u9664\u4E34\u65F6\u6587\u4EF6 id=${s.id} name=${s.name} isFolder=${s.isFolder?1:0} size=${s.size||0}`),await this.deletePrivateFile(s.id,s.name,s.isFolder,{wait:!0});for(let s=1;s<=10;s++){let i=await this.getPrivateFiles(r,!1,"filename","asc",200);if(console.log(`[Tianyi][temp] \u6E05\u7406\u540E\u5269\u4F59 dirId=${r} remain=${i.length} attempt=${s}`),!i.length)return;await new Promise(a=>setTimeout(a,500*s))}}}async makeDir(t,r){let n=await this.requestPrivateApi(`${hn.API_URL}/createFolder.action`,"POST",{folderName:r,relativePath:"",parentFolderId:t.id}),s=n?.folder||n;return{id:String(s?.id||""),name:r,isFolder:!0}}async getPrivateFiles(t,r=!1,n="filename",s="asc",i=1e3){let a=[];for(let o=1;;o++){let c=`${hn.API_URL}${r?"/family/file":""}/listFiles.action`,u=await this.requestPrivateApi(c,"GET",{folderId:t,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(o),pageSize:String(i),recursive:r?void 0:"0",orderBy:n,descending:s==="desc"?"true":"false"},{isFamily:r}),l=ay(u),d=l?.fileListAO||l?.fileList||l,f=d?.folderList||d?.folder||[],h=d?.fileList||d?.file||[],p=gB(f),m=gB(h),_=p.length>0||m.length>0,g=Number(d?.count||(_?p.length+m.length:0)||0);if(!_&&!g||(p.forEach(y=>{a.push({id:String(y.id||""),name:String(y.name||""),isFolder:!0})}),m.forEach(y=>{a.push({id:String(y.id||""),name:String(y.name||""),size:Number(y.size||0),md5:String(y.md5||""),isFolder:!1})}),!_||g!i.isFolder&&i.name===r)||null}async findPrivateFileByPredicate(t,r,n=!1,s="filename",i="asc",a=200){return(await this.getPrivateFiles(t,n,s,i,a)).find(c=>{try{return!!r(c)}catch{return!1}})||null}async createBatchTask(t,r,n,s={},i=[]){let a={type:t,taskInfos:JSON.stringify(i),...s};n&&(a.targetFolderId=n),r&&(a.familyId=r);let o=await this.requestPrivateApi(`${hn.API_URL}/batch/createBatchTask.action`,"POST",{},{isFamily:!!r,form:a}),c=ay(o);return{...c,taskId:String(c?.taskId||"")}}async checkBatchTask(t,r){let n=await this.requestPrivateApi(`${hn.API_URL}/batch/checkBatchTask.action`,"POST",{},{form:{type:t,taskId:r}}),s=ay(n),i=s?.TaskResultResp||s?.taskResultResp||s;return{...s,TaskResultResp:i,taskId:String(i?.taskId||s?.taskId||r||""),taskStatus:Number(i?.taskStatus||s?.taskStatus||0),successedCount:Number(i?.successedCount||s?.successedCount||0),failedCount:Number(i?.failedCount||s?.failedCount||0),skipCount:Number(i?.skipCount||s?.skipCount||0),errorCode:String(i?.errorCode||s?.errorCode||"")}}async getConflictTaskInfo(t,r){let n=await this.requestPrivateApi(`${hn.API_URL}/batch/getConflictTaskInfo.action`,"POST",{},{form:{type:t,taskId:r}});return ay(n)||{}}async manageBatchTask(t,r,n,s=[]){await this.requestPrivateApi(`${hn.API_URL}/batch/manageBatchTask.action`,"POST",{},{form:{type:t,taskId:r,targetFolderId:String(n||""),taskInfos:JSON.stringify(s||[])}})}async waitBatchTask(t,r,n=1e3,s=0){let i=0;for(;;){i+=1;let a=await this.checkBatchTask(t,r);if(console.log(`[Tianyi][task] type=${t} taskId=${r} poll=${i} status=${Number(a?.taskStatus||0)} failed=${Number(a?.failedCount||0)} errorCode=${a?.errorCode||""}`),Number(a?.taskStatus)===2){let o=new Error("there is a conflict with the target object");throw o.code="TASK_CONFLICT",o}if(Number(a?.taskStatus)===4){if(Number(a?.failedCount||0)>0){let o=new Error(a?.errorCode||`batch task failed type=${t} taskId=${r}`);throw o.code=a?.errorCode||"TASK_FAILED",o.taskState=a,o}return}if(s>0&&i>=s){let o=new Error(`batch task timeout type=${t} taskId=${r} status=${Number(a?.taskStatus||0)}`);throw o.code="TASK_TIMEOUT",o.taskStatus=Number(a?.taskStatus||0),o}await new Promise(o=>setTimeout(o,n))}}async ensureCasTempDir(t=!1){await this.ensureLogin();let r={id:hn.ROOT_FOLDER_ID,name:"root"},n=N0n();try{await this.makeDir(r,n)}catch{}let i=(await this.getPrivateFiles(hn.ROOT_FOLDER_ID,!1,"filename","asc",200)).find(o=>o.isFolder&&o.name===n),a=String(i?.id||"");if(!a)throw new Error("\u521B\u5EFA\u5929\u7FFC CAS \u4E34\u65F6\u76EE\u5F55\u5931\u8D25");return t&&await this.clearTempDir(a),console.log(`[Tianyi][cas] ensureCasTempDir dirId=${a} name=${n} clean=${t?1:0}`),{id:a,name:n}}async transferShareFile(t,r,n,s={}){let i=String(s?.targetDirId||"")||await this.ensureTempDir(!0),a={fileId:String(r),fileName:n,isFolder:0},o=mB(String(n||"")),c=o?o.replace(/\.\d{13,}_[0-9]+$/,""):"",u=Array.from(new Set([String(n||"").trim(),o?`${o}.cas`:"",o,c?`${c}.cas`:"",c].filter(Boolean))),l;console.log(`[Tianyi][share-save] start shareId=${t} fileId=${r} tempDirId=${i} fileName=${n}`);try{l=await this.createBatchTask("SHARE_SAVE","",i,{shareId:String(t)},[a]),console.log(`[Tianyi][share-save] created taskId=${l?.taskId||""} shareId=${t} fileId=${r}`)}catch(p){let m=String(p?.message||"");if(p?.code!=="TASK_CONFLICT"&&p?.code!=="FileAlreadyExists"&&!/conflict/i.test(m)&&!/FileAlreadyExists/i.test(m)&&!/ShareSaveTaskIsAlreadyExist|already exist/i.test(m))throw p;console.warn("[Tianyi] \u590D\u7528\u5DF2\u6709\u8F6C\u5B58\u4EFB\u52A1:",m||"share save task already exists")}let d=async()=>{let p=await this.findPrivateFileByName(i,n,!1);return p?.id?p:(await this.getPrivateFiles(i,!1,"lastOpTime","desc",200)).find(g=>{if(!g||g.isFolder)return!1;let y=String(g.name||"").trim();return y?!!(u.includes(y)||FCe(y)&&o&&mB(y)===o||FCe(y)&&c&&mB(y)===c):!1})||null},f=async()=>{for(let p=1;p<=24;p++){let m=await d();if(console.log(`[Tianyi][share-save] lookup attempt=${p} tempDirId=${i} found=${m?.id?1:0} fileId=${m?.id||""} name=${m?.name||""}`),m?.id)return m;if(l?.taskId)try{let _=await this.checkBatchTask("SHARE_SAVE",l.taskId);if(console.log(`[Tianyi][share-save] taskState attempt=${p} taskId=${l.taskId} status=${Number(_?.taskStatus||0)} failed=${Number(_?.failedCount||0)} errorCode=${_?.errorCode||""}`),Number(_?.taskStatus)===2){let g=new Error("there is a conflict with the target object");throw g.code="TASK_CONFLICT",g}if(Number(_?.taskStatus)===4&&Number(_?.failedCount||0)>0){let g=new Error(_?.errorCode||"share save failed");throw g.code=_?.errorCode||"TASK_FAILED",g.taskState=_,g}}catch(_){if(_?.code==="TASK_CONFLICT"||_?.code==="FileAlreadyExists")throw _;console.warn(`[Tianyi][share-save] check task failed attempt=${p} taskId=${l.taskId} reason=${_?.message||_}`)}await new Promise(_=>setTimeout(_,1e3))}return null},h=async()=>{if(!l?.taskId)return null;try{let p=await this.getConflictTaskInfo("SHARE_SAVE",l.taskId),m=gB(p?.taskInfos||p?.taskInfo||p?.data?.taskInfos||[]);if(m.length)try{await this.manageBatchTask("SHARE_SAVE",l.taskId,i,m)}catch(_){console.warn(`[Tianyi][share-save] manageBatchTask failed taskId=${l.taskId} reason=${_?.message||_}`)}}catch(p){console.warn(`[Tianyi][share-save] getConflictTaskInfo failed taskId=${l?.taskId||""} reason=${p?.message||p}`)}return await d()};try{let p=await f();if(!p?.id)throw new Error("\u6587\u4EF6\u8F6C\u5B58\u5931\u8D25");return p}catch(p){let m=String(p?.message||"");if(p?.code!=="TASK_CONFLICT"&&p?.code!=="FileAlreadyExists"&&!/conflict/i.test(m)&&!/FileAlreadyExists/i.test(m)&&!/ShareSaveTaskIsAlreadyExist|already exist/i.test(m))throw p;console.warn("[Tianyi] \u590D\u7528\u5DF2\u6709\u8F6C\u5B58\u7ED3\u679C:",m||"share save task already exists");let _=await h();if(_?.id)return _;let g=await d();if(!g?.id)throw new Error("\u6587\u4EF6\u8F6C\u5B58\u5931\u8D25");return g}}async getPrivateDownloadLink(t,r=!1){let n=`${hn.API_URL}${r?"/family/file":""}/getFileDownloadUrl.action`,s=r?{fileId:String(t),familyId:this.tokenInfo?.familyId||""}:{fileId:String(t),dt:"3",flag:"1"},i=await this.requestPrivateApi(n,"GET",s,{isFamily:r}),a=ay(i),o=String(a?.fileDownloadUrl||a?.url||"").replaceAll("&","&").replace(/^http:\/\//i,"https://");if(console.log(`[Tianyi][private] getPrivateDownloadLink fileId=${t} isFamily=${r?1:0} hasUrl=${o?1:0}`),!o)throw console.warn("[Tianyi][private] getPrivateDownloadLink raw=",JSON.stringify(i).slice(0,500)),new Error("\u83B7\u53D6\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u5730\u5740\u5931\u8D25");let c=async()=>{console.log(`[Tianyi][private] rawDownloadUrl=${o}`);let u=await ve.get(o,{maxRedirects:0,validateStatus:null}),l=typeof u.data=="string"?u.data.slice(0,300).replace(/\s+/g," "):JSON.stringify(u.data).slice(0,300);if(console.log(`[Tianyi][private] rawDownloadResp status=${u.status} location=${u.headers.location||""} body=${l}`),u.status>=300&&u.status<400&&u.headers.location)return u.headers.location;if(u.status>=200&&u.status<300)return o;let d=new Error(`\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u8DF3\u8F6C\u5931\u8D25 status=${u.status}`);throw d.status=u.status,d.bodyText=l,d};for(let u=0;u<6;u++)try{return await c()}catch(l){let d=`${l?.message||""} ${l?.bodyText||""}`;if(!/FileNotFound/i.test(d)||u>=5)throw l;let h=1e3*(u+1);console.warn(`[Tianyi][private] \u4E0B\u8F7D\u8282\u70B9\u672A\u5C31\u7EEA\uFF0C\u7B49\u5F85\u91CD\u8BD5 attempt=${u+1} waitMs=${h} fileId=${t}`),await new Promise(p=>setTimeout(p,h))}throw new Error("\u83B7\u53D6\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}async deletePrivateFile(t,r,n=!1,s={}){let i=s?.wait!==!1;try{let a={fileId:String(t),fileName:r,isFolder:n?1:0},o=await this.createBatchTask("DELETE","","",{},[a]);console.log(`[Tianyi][temp] \u5220\u9664\u4EFB\u52A1\u5DF2\u521B\u5EFA taskId=${o?.taskId||""} fileId=${t} name=${r} wait=${i?1:0}`),i&&o?.taskId&&await this.waitBatchTask("DELETE",o.taskId,200,50)}catch(a){console.warn("[Tianyi] \u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",a?.message||a)}}scheduleDeletePrivateFile(t,r){setTimeout(()=>{this.deletePrivateFile(t,r).catch(n=>{console.warn("[Tianyi] \u5EF6\u8FDF\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",n?.message||n)})},hn.DELETE_DELAY_MS)}async restoreSourceFromCASInfo(t,r){let n=await this.ensureTempDir(!1),s=jCe(t?.name||mB(r)),i=`${hn.UPLOAD_URL}/person/initMultiUpload`,a=await this.requestPrivateApi(i,"GET",{},{encryptedParams:{parentFolderId:n,fileName:encodeURIComponent(s),fileSize:String(t.size),sliceSize:String(U0n(t.size)),fileMd5:q6t(t.md5),sliceMd5:q6t(t.sliceMd5)}}),o=ay(a),c=o?.data||o||{};if(Number(c?.fileDataExists)!==1)throw new Error(`restore from .cas failed: source data for ${s} was not found in 189CloudPC`);let u=await this.requestPrivateApi(`${hn.UPLOAD_URL}/person/commitMultiUploadFile`,"GET",{},{encryptedParams:{uploadFileId:String(c?.uploadFileId||c?.uploadFileID||""),isLog:"0",opertype:"3"}}),l=ay(u),d=l?.file||l||{};if(!d.userFileId)throw new Error("\u63D0\u4EA4 .cas \u8FD8\u539F\u5931\u8D25");return{id:String(d.userFileId),name:String(d.fileName||s),size:Number(d.fileSize||t.size||0),isFolder:!1}}async downloadShareFileBuffer(t,r){console.log(`[Tianyi][cas] \u5F00\u59CB\u5206\u4EAB\u4FA7\u4E0B\u8F7D .cas shareId=${r} fileId=${t}`);let n=await this.getShareUrl(t,r,{rawOnly:!0,disablePrivateFallback:!0,silentAuthFailure:!0});console.log(`[Tianyi][cas] \u5206\u4EAB\u4FA7 .cas \u4E0B\u8F7D\u5730\u5740\u5DF2\u83B7\u53D6 shareId=${r} fileId=${t} url=${n}`);let s=await ve.get(n,{responseType:"arraybuffer",maxRedirects:5,validateStatus:i=>i>=200&&i<300});return console.log(`[Tianyi][cas] \u5206\u4EAB\u4FA7 .cas \u4E0B\u8F7D\u6210\u529F shareId=${r} fileId=${t} bytes=${Number(s?.data?.byteLength||s?.data?.length||0)}`),s.data||Buffer.alloc(0)}async restoreShareCAS(t,r,n,s={}){let i=await this.ensureCasTempDir(!1),a=w0n(n||"video.cas"),o=await this.transferShareFile(t,r,a,{targetDirId:i.id}),c,u=s?.preferPrivate!==!1,l=u?"private":"share";if(u)console.log(`[Tianyi][cas] \u76F4\u63A5\u4F18\u5148\u79C1\u6709\u76D8\u6062\u590D shareId=${t} fileId=${r}`),c=await ve.get(await this.getPrivateDownloadLink(o.id,!1),gp({responseType:"arraybuffer",maxRedirects:5,validateStatus:h=>h>=200&&h<300})).then(h=>h.data||Buffer.alloc(0));else try{c=await this.downloadShareFileBuffer(r,t)}catch(h){l="private",console.warn(`[Tianyi][cas] \u5206\u4EAB\u4FA7\u4E0B\u8F7D .cas \u5931\u8D25\uFF0C\u56DE\u9000\u79C1\u6709\u76D8\u4E0B\u8F7D shareId=${t} fileId=${r} reason=${h?.message||h}`),c=await ve.get(await this.getPrivateDownloadLink(o.id,!1),gp({responseType:"arraybuffer",maxRedirects:5,validateStatus:p=>p>=200&&p<300})).then(p=>p.data||Buffer.alloc(0))}let d=F0n(c),f=await this.restoreSourceFromCASInfo(d,n);return this.scheduleDeletePrivateFile(o.id,o.name),this.scheduleDeletePrivateFile(f.id,f.name),console.log(`[Tianyi][cas] .cas \u89E3\u6790\u4E0E\u6062\u590D\u5B8C\u6210 source=${l} shareId=${t} fileId=${r} restoredId=${f.id}`),await this.getPrivateDownloadLink(f.id,!1)}async loginForNormalShare(t,r){try{console.log("[Tianyi] \u5F00\u59CB\u6267\u884C\u666E\u901A\u5206\u4EAB\u767B\u5F55\u6D41\u7A0B"),this.clearShareAuthState();let n=await ve.get("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud",gp({validateStatus:null})),s=String(n?.data?.data?.pubKey||"");if(!s)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u672A\u8FD4\u56DE RSA \u516C\u94A5");n=await ve.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action",gp({validateStatus:null}));let i=String(n?.request?.path||""),a=(i.match(/reqId=(\w+)/)||[])[1]||"",o=(i.match(/lt=(\w+)/)||[])[1]||"";if(!a||!o)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u9875\u53C2\u6570\u63D0\u53D6\u5931\u8D25");let c={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:o,Reqid:a},u={version:"2.0",appKey:"cloud"};n=await ve.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",lb.default.stringify(u),gp({headers:c,validateStatus:null}));let l=String(n?.data?.data?.returnUrl||""),d=String(n?.data?.data?.paramId||"");if(!l||!d)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55 appConf \u8FD4\u56DE\u4E0D\u5B8C\u6574");let f=`-----BEGIN PUBLIC KEY----- -${s} ------END PUBLIC KEY-----`,h=new pG;h.setPublicKey(f);let p=h.encrypt(t),m=h.encrypt(r);if(!p||!m)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55 RSA \u52A0\u5BC6\u5931\u8D25");u={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:l,paramId:d,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${Buffer.from(p,"base64").toString("hex")}`,password:`{NRP}${Buffer.from(m,"base64").toString("hex")}`},n=await ve.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",lb.default.stringify(u),gp({headers:c,validateStatus:null}));let _=F6t(n?.data,n?.headers),g=n?.data,y=g?typeof g=="string"?g.slice(0,120).replace(/\s+/g," "):JSON.stringify({msg:g?.msg||g?.message||"",result:g?.result||g?.resultCode||"",errorCode:g?.errorCode||""}):"empty",E=[...ub(n?.headers?.["set-cookie"])];if(_){let b=_;for(let I=0;I<3&&b;I++){let T=jx(E).join("; "),x=await ve.get(b,gp({headers:{...this.headers,Cookie:T},maxRedirects:0,validateStatus:null})),w=ub(x?.headers?.["set-cookie"]);if(w.length>0&&E.push(...w),x.status>=300&&x.status<400&&x.headers?.location)b=new URL(x.headers.location,b).toString();else break}}else if(E.length>0){let b=await ve.get("https://cloud.189.cn/web/main.action",gp({headers:{...this.headers,Cookie:jx(E).join("; ")},maxRedirects:0,validateStatus:null})),I=ub(b?.headers?.["set-cookie"]);I.length>0&&E.push(...I)}else throw new Error(`\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u8FD4\u56DE\u53EF\u7528 cookie (${y})`);let v=jx(E).join("; ").trim();if(!v)throw new Error(`\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u83B7\u53D6\u5230\u6709\u6548 cookie (${y})`);this.shareCookie=v,console.log(`[Tianyi] \u666E\u901A\u5206\u4EAB\u767B\u5F55\u6210\u529F\uFF0Ccookie length=${v.length}`)}catch(n){console.error("[Tianyi] \u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25:",n);let s=new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25");throw s.isAuthFailure=!0,s.cause=n,s}}async login(t,r){try{console.log("[Tianyi] \u5F00\u59CB\u6267\u884C\u767B\u5F55\u6D41\u7A0B"),this.clearPrivateAuthState(),this.tempDirId="";let n=await ve.get("https://cloud.189.cn/api/portal/unifyLoginForPC.action",{params:{appId:hn.APP_ID,clientType:hn.LOGIN_CLIENT_TYPE,returnURL:hn.RETURN_URL,timeStamp:String(D0n())},headers:{"User-Agent":pB,Referer:hn.WEB_URL},validateStatus:null}),s=String(n?.data||""),i=hG(s,/'captchaToken' value='(.+?)'/),a=hG(s,/lt = "(.+?)"/),o=hG(s,/reqId = "(.+?)"/),c=hG(s,/paramId = "(.+?)"/);if(!i||!a||!o||!c)throw new Error("\u5929\u7FFC\u767B\u5F55\u9875\u53C2\u6570\u63D0\u53D6\u5931\u8D25");let u={"Content-Type":"application/x-www-form-urlencoded","User-Agent":pB,Referer:"https://open.e.189.cn/",lt:a,REQID:o},l=await ve.post("https://open.e.189.cn/api/logbox/config/encryptConf.do",lb.default.stringify({appId:hn.APP_ID}),{headers:u,validateStatus:null}),d=String(l?.data?.data?.pubKey||""),f=String(l?.data?.data?.pre||"{NRP}");if(!d)throw new Error("\u5929\u7FFC\u767B\u5F55\u672A\u8FD4\u56DE RSA \u516C\u94A5");let h=`-----BEGIN PUBLIC KEY----- -${d} ------END PUBLIC KEY-----`,p=new pG;p.setPublicKey(h);let m=f+Buffer.from(p.encrypt(t),"base64").toString("hex").toUpperCase(),_=f+Buffer.from(p.encrypt(r),"base64").toString("hex").toUpperCase();l=await ve.post("https://open.e.189.cn/api/logbox/oauth2/needcaptcha.do",lb.default.stringify({appKey:hn.APP_ID,accountType:hn.ACCOUNT_TYPE,userName:m}),{headers:u,validateStatus:null});let g=String(l?.data||"").trim();if(g&&g!=="0")throw new Error("\u5F53\u524D\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");l=await ve.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",lb.default.stringify({appKey:hn.APP_ID,accountType:hn.ACCOUNT_TYPE,userName:m,password:_,validateCode:"",captchaToken:i,returnUrl:hn.RETURN_URL,dynamicCheck:"FALSE",clientType:hn.LOGIN_CLIENT_TYPE,cb_SaveName:"1",isOauth2:"false",state:"",paramId:c}),{headers:u,validateStatus:null});let y=F6t(l?.data,l?.headers),A=l?.data,E=A?typeof A=="string"?A.slice(0,160).replace(/\s+/g," "):JSON.stringify({msg:A?.msg||A?.message||"",result:A?.result||A?.resultCode||"",errorCode:A?.errorCode||""}):"empty",v=ub(n?.headers?.["set-cookie"]).concat(ub(l?.headers?.["set-cookie"]));if(y){let w=y;for(let D=0;D<3&&w;D++){let M=jx(v).join("; "),L=await ve.get(w,{headers:{...this.headers,Cookie:M},maxRedirects:0,validateStatus:null}),U=ub(L?.headers?.["set-cookie"]);if(U.length>0&&v.push(...U),L.status>=300&&L.status<400&&L.headers?.location)w=new URL(L.headers.location,w).toString();else break}}else if(console.warn(`[Tianyi] \u767B\u5F55\u54CD\u5E94\u672A\u63D0\u4F9B\u8DF3\u8F6C\u5730\u5740\uFF0Ccookies=${v.length}, data=${E}`),v.length>0){let w=await ve.get("https://cloud.189.cn/web/main.action",{headers:{...this.headers,Cookie:jx(v).join("; ")},maxRedirects:0,validateStatus:null}),D=ub(w?.headers?.["set-cookie"]);D.length>0&&v.push(...D)}let b=jx(v).join("; ").trim();if(!b)throw new Error(`\u5929\u7FFC\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u83B7\u53D6\u5230\u6709\u6548 cookie (${E})`);if(this.privateCookie=b,!y){this.tokenInfo=null,console.log(`[Tianyi] \u767B\u5F55\u6210\u529F\uFF08cookie-only\uFF09\uFF0Ccookie length=${b.length}`);return}let I=await ve.post(`${hn.API_URL}/getSessionForPC.action`,null,{params:{...qCe(),redirectURL:y},headers:{"User-Agent":pB,Cookie:b},validateStatus:null}),T=$Ce(I.data);if(T)throw new Error(`\u5929\u7FFC\u4F1A\u8BDD\u521D\u59CB\u5316\u5931\u8D25: ${T}`);let x=VCe(await $6t(I.data));if(!x.accessToken||!x.refreshToken||!x.sessionKey||!x.sessionSecret)throw new Error(`\u5929\u7FFC\u4F1A\u8BDD\u521D\u59CB\u5316\u5931\u8D25\uFF1A\u8FD4\u56DE\u5B57\u6BB5\u4E0D\u5B8C\u6574 ${JSON.stringify(I.data||{})}`);this.privateCookie=b,this.tokenInfo=x,console.log(`[Tianyi] \u767B\u5F55\u6210\u529F\uFF0Ccookie length=${b.length}`)}catch(n){console.error("[Tianyi] \u767B\u5F55\u5931\u8D25:",n);let s=new Error("\u5929\u7FFC\u767B\u5F55\u5931\u8D25");throw s.isAuthFailure=!0,s.cause=n,s}}async getShareID(t,r){let n=this.regex.exec(t);if(n&&n[1]){this.shareCode=n[1];let s=this.shareCode.match(/访问码:([a-zA-Z0-9]+)/);this.accessCode=s?s[1]:""}else{let s=t.match(/https?:\/\/cloud\.189\.cn\/t\/([^&]+)/);this.shareCode=s?s[1]:null;let i=this.shareCode.match(/访问码:([a-zA-Z0-9]+)/);this.accessCode=i?i[1]:""}r&&(this.accessCode=r)}async getShareData(t,r){let n=[],s=await this.getShareInfo(t,r);if(s){let i=await this.getShareList(s),a=await this.getShareFile(s);if(a?.length>0){let o=Kt(a);n.push(...o)}Array.isArray(i)&&i.length>0&&(await _0(i,async u=>await this.getShareFile(u.id)||[],5)).forEach(u=>{if(u?.length>0){let l=Kt(u);n.push(...l)}})}return n.map(i=>({vod_id:Ot([i.cas?x0n({fileId:i.fileId,fileName:i.sourceName||`${i.name}.cas`,shareId:i.shareId}):i.fileId,i.shareId,i.name||"",i.subtitle?.fileId||""],{structured:!0}),vod_name:i.name,vod_size:i.size}))}async getShareInfo(t,r){t.startsWith("http")?await this.getShareID(t,r):this.shareCode=t;try{if(r){let i=await ve.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${this.shareCode}&accessCode=${this.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});i.status===200&&(this.shareId=i.data.shareId)}let n=await ve.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${this.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),s=n.data.fileId;return this.shareId=n.data.shareId||this.shareId,this.shareMode=n.data.shareMode,this.isFolder=n.data.isFolder,s}catch(n){return console.error("\u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",n),null}}async getShareList(t){try{let r=[],n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},s=async(l,d=1)=>{let f=await k6t(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=${d}&pageSize=200&fileId=${l}&shareDirFileId=${l}&isFolder=${this.isFolder}&shareId=${this.shareId}&shareMode=${this.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${this.accessCode}&noCache=${Math.random()}`,{method:"GET",headers:n});return B6t.parse(await f.text())?.fileListAO||{}},i=[],a=1;for(;;){let l=await s(t,a),d=gB(l?.folderList||l?.folder||[]);if(d.length===0)break;i.push(...d);let f=Number(l?.count||d.length||0);if(d.length<200||f>0&&i.length>=f)break;a+=1}if(i.length===0)return null;i.forEach(l=>{r.push({name:l.name,id:l.id,type:"folder"})});let o=async l=>{try{return await this.getShareList(l)}catch{return null}},u=(await _0(i.map(l=>l.id),o,3)).filter(l=>l!=null);return[...r,...u.flat()]}catch(r){return console.error("\u83B7\u53D6\u5206\u4EAB\u5217\u8868\u5931\u8D25:",r),null}}async getShareFile(t){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},n=async(c,u=1)=>{let l=await k6t(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=${u}&pageSize=200&fileId=${c}&shareDirFileId=${c}&isFolder=${this.isFolder}&shareId=${this.shareId}&shareMode=${this.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${this.accessCode}&noCache=${Math.random()}`,{method:"GET",headers:r});return B6t.parse(await l.text())?.fileListAO||{}},s=[],i=[],a=[],o=1;for(;;){let c=await n(t,o),u=gB(c?.fileList||c?.file||[]);if(u.length===0)break;a.push(...u);let l=Number(c?.count||c?.fileListSize||u.length||0);if(u.length<200||l>0&&a.length>=l)break;o+=1}if(a.length===0)return null;for(let c of a){let u=c?.name||"",l=c?.id;c.mediaType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(u)?s.push({name:u,fileId:l,shareId:this.shareId,size:c.size}):FCe(u)?s.push({name:mB(u),fileId:l,shareId:this.shareId,size:c.size,cas:!0,sourceName:u}):vt(u)&&i.push({name:u,fileId:l,shareId:this.shareId,size:c.size})}for(let c of s){let u=Ir(c.name,i,l=>l.name);u?.fileId&&(c.subtitle={fileId:u.fileId,shareId:this.shareId,size:u.size,name:u.name})}return s}catch(r){return console.error("\u83B7\u53D6\u5206\u4EAB\u6587\u4EF6\u5931\u8D25:",r),null}}async getShareUrlNormal(t,r,n={}){let s={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd",Referer:"https://cloud.189.cn/web/main/file",Origin:"https://cloud.189.cn","X-Requested-With":"XMLHttpRequest"},i=n?.silentAuthFailure===!0;for(this.resetShareAuthRetryState();;)try{if(!this.hasShareCookie()){if(!this.account||!this.password)throw new Error("\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\u4E3A\u7A7A\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u586B\u5199");if(await this.loginForNormalShare(this.account,this.password),!this.hasShareCookie()){let u=this.buildShareAuthError(0,"share cookie empty after login","\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u540E\u4ECD\u672A\u62FF\u5230 cookie");throw this.rememberShareAuthError(u),u}}s.Cookie=String(this.shareCookie||"").trim();let a=await ve.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${t}&type=4&key=noCache`,gp({headers:s,validateStatus:null}));if(!a?.data?.normal?.url)throw this.buildShareAuthError(a?.status,a?.data);let o=await ve.get(a.data.normal.url,gp({maxRedirects:0,validateStatus:u=>u>=200&&u<400})),c="";return o.status>=300&&o.status<400&&o.headers.location?c=o.headers.location:c=a.data.normal.url,this.resetShareAuthRetryState(),c}catch(a){let o=a?.response?.status,c=a?.isAuthFailure||G6t(o),u=c?U6t(a?.response?.data,o):{authFailure:!1,category:"unknown",detail:z6t(a?.response?.data||a?.message||""),message:a?.message||"\u83B7\u53D6\u5206\u4EABURL\u5931\u8D25",retryable:!1,retryAdvice:"none"};c&&(a.authCategory=a?.authCategory||u.category,a.userMessage=a?.userMessage||u.message,a.retryable=u.retryable,a.retryAdvice=u.retryAdvice,this.rememberShareAuthError(a));let l=u.retryAdvice==="force_share_login_ipv4_once"?1:b0n;if(c&&u.retryable&&this.account&&this.password&&this._shareAuthRetryCountawait new Gx().getShareData(e,t),getShareUrl:async(e,t,r={})=>{let n=new Gx;return n.shareId=t,await n.getShareUrl(e,t,r)},listOwnFiles:async(e="-11",{isFamily:t=!1,orderBy:r="filename",orderDirection:n="asc",pageSize:s=200}={})=>await new Gx().getPrivateFiles(String(e||"-11"),t,r,n,s),getOwnDownload:async(e,{isFamily:t=!1}={})=>e?await new Gx().getPrivateDownloadLink(String(e),t):""}});function $0n(e=""){let t=String(e||"").trim();return!t||t==="root"}async function Z6t(e,t="root",r={}){let n=new zx,s=typeof e=="string"?e:String(e?.url||""),i=typeof e=="object"?String(e?.linkID||""):"";if(s?await n.getShareID(s):n.linkID=i,!n.linkID)return{items:[],linkID:""};let a=$0n(t)?"root":String(t||"root"),o=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),c=o>0,u=Math.max(1,Math.min(J6t,Number(r.batchSize)||200)),l=Math.max(0,Math.min(1e4,Number(r.batchIntervalMs)||0)),d=Math.max(1e4,Math.min(18e4,Number(r.timeoutMs)||6e4)),f=[],h=[],p=c?o:1,m=!1,_=0;for(;;){let g=await n.getShareInfo(a,{pageNum:p,pageSize:u,timeoutMs:d});if(!g)break;let y=Math.max(0,Number(g.caLength||0)),A=Math.max(0,Number(g.coLength||0));if(_=y+A,p===1&&Array.isArray(g.caLst)){let b=/App|活动中心|免费|1T空间|免流/;f.push(...g.caLst.filter(I=>I?.caName&&!b.test(I.caName)).map(I=>({...I,itemType:"folder"})))}let E=(p-1)*u,v=c&&p>1&&A>0&&E>=A?[]:Array.isArray(g.coLst)?g.coLst:[];if(h.push(...v.map(b=>({...b,itemType:"file"}))),m=A>0?p*u=u,c||v.length0&&await new Promise(b=>setTimeout(b,l))}return{items:[...f,...h],linkID:n.linkID,...c?{paged:!0,page:o,pageSize:u,total:_||(o-1)*u+h.length+f.length+(m?u:0)}:{}}}var Qi,X6t,J6t,zx,hb,GCe=ae(()=>{Pr();Qi=Ne(Gi(),1);ua();Wc();Xc();wi();$l();g0();DK();X6t=cx("yun.shareInfo",{maxSize:200,ttl:5*60*1e3}),J6t=200,zx=class{constructor(){this.regexs=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&]+)/],this.x=Qi.default.enc.Utf8.parse("PVGDwmcvfs1uV3d1"),this.baseUrl="https://share-kd-njs.yun.139.com/yun-share/richlifeApp/devapp/IOutLink/",this.baseHeader={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json","hcy-cool-flag":"1","x-deviceinfo":"||3|12.27.0|chrome|131.0.0.0|5c7c68368f048245e1ce47f1c0f8f2d0||windows 10|1536X695|zh-CN|||"},this.linkID="",this.passwd=""}encrypt(t){let r=Qi.default.lib.WordArray.random(16),n;if(typeof t=="string"){let s=Qi.default.enc.Utf8.parse(t);n=Qi.default.AES.encrypt(s,this.x,{iv:r,mode:Qi.default.mode.CBC,padding:Qi.default.pad.Pkcs7})}else if(typeof t=="object"&&t!==null){let s=Qi.default.enc.Utf8.parse(JSON.stringify(t));n=Qi.default.AES.encrypt(s,this.x,{iv:r,mode:Qi.default.mode.CBC,padding:Qi.default.pad.Pkcs7})}else throw new Error("Invalid data type");return Qi.default.enc.Base64.stringify(r.concat(n.ciphertext))}decrypt(t){let r=Qi.default.enc.Base64.parse(t),n=r.clone(),s=n.words.splice(4);n.init(n.words),r.init(s);let i=Qi.default.enc.Base64.stringify(r);return Qi.default.AES.decrypt(i,this.x,{iv:n,mode:Qi.default.mode.CBC,padding:Qi.default.pad.Pkcs7}).toString(Qi.default.enc.Utf8)}md5(t){return Qi.default.MD5(String(t||"")).toString()}base64Utf8(t){return Qi.default.enc.Base64.stringify(Qi.default.enc.Utf8.parse(String(t||"")))}randomString(t=16){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n="";for(let s=0;sString(s).padStart(2,"0");return[`${r.getFullYear()}-${n(r.getMonth()+1)}-${n(r.getDate())}`,`${n(r.getHours())}:${n(r.getMinutes())}:${n(r.getSeconds())}`].join(" ")}getMcloudSign(t,r,n){let s="";t&&typeof t=="object"&&(s=encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""));let i=this.md5(this.base64Utf8(s)),a=this.md5(`${r}:${n}`);return this.md5(i+a).toUpperCase()}buildSignedHeaders(t){let r=this.randomString(16),n=this.formatSignTime(),s=this.getMcloudSign(t,n,r);return{...this.baseHeader,"X-Requested-With":"XMLHttpRequest","CMS-DEVICE":"default","x-yun-channel-source":"10230043","x-huawei-channelSrc":"10230043","x-yun-svc-type":"1","x-SvcType":"1","x-m4c-caller":"PC","x-m4c-src":"10002","x-inner-ntwk":"2","mcloud-route":"001","mcloud-version":"12.27.0","mcloud-channel":"1000101","mcloud-client":"1001000021","mcloud-sign":`${n},${r},${s}`,"INNER-HCY-ROUTER-HTTPS":"1","x-yun-module-type":"100","x-yun-api-version":"v1","x-yun-app-channel":"10230043","x-yun-client-info":"||9|12.27.0|chrome|131.0.0.0|visitor||windows 10||zh-CN|||Y2hyb21l||",Referer:"https://yun.139.com/shareweb/"}}parseMaybeEncryptedResponse(t){if(typeof t!="string")return t;try{return JSON.parse(this.decrypt(t))}catch{return t}}pickPreviewUrl(t={}){return String(t?.presentUURL||t?.presentHURL||t?.presentURL||t?.presentLURL||"").trim()}buildFilePathFromContentInfo(t={}){let r=String(t?.contentID||t?.contentId||"").trim(),n=String(t?.parentCatalogId||t?.parentCatalogID||"").trim();return!r||!n?"":`${n}/${r}`}extractDownloadUrl(t={}){let r=t?.data??t;if(typeof r=="string"&&/^https?:\/\//i.test(r))return r;if(!r||typeof r!="object")return"";let n=r.extInfo&&typeof r.extInfo=="object"?r.extInfo:{},i=(Array.isArray(n.item)?n.item:[]).find(a=>a?.key==="cdnDownloadUrl"&&a?.value);return String(n.cdnDownloadUrl||i?.value||r.downloadURL||r.downloadUrl||r.redrUrl||r.url||"").trim()}downloadErrorMessage(t={}){let r=String(t?.resultCode||t?.code||t?.status||t?.mcsCode||"").trim(),n=String(t?.desc||t?.message||t?.resultDesc||"").trim();return r&&r!=="0"&&r!=="0000"?n?`\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u5F02\u5E38 ${r}: ${n}`:`\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u5F02\u5E38 ${r}`:n||""}async getShareID(t){for(let r of this.regexs){let n=r.exec(t);if(n&&n[1]){this.linkID=n[1];break}}}async getShareInfo(t,r={}){if(!this.linkID)return console.error("linkID is not set"),null;let n=Math.max(1,Number(r.pageNum||1)),s=Math.max(1,Math.min(J6t,Number(r.pageSize||200))),i=Math.max(1e4,Math.min(18e4,Number(r.timeoutMs)||6e4)),a=`${this.linkID}-${t}-${n}-${s}`,o=X6t.get(a);if(o)return o;let c=JSON.stringify(this.encrypt(JSON.stringify({getOutLinkInfoReq:{account:"",linkID:this.linkID,passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:n,pCaID:t,eNum:s},commonAccountInfo:{account:"",accountType:1}})));try{let u=await ve.post(this.baseUrl+"getOutLinkInfoV6",c,{headers:this.baseHeader,timeout:i});if(u.status!==200)return null;let l=JSON.parse(this.decrypt(u.data)).data;return X6t.set(a,l),l}catch(u){return console.error("\u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",u),null}}async getShareData(t){if(!t)return[];let r=t.startsWith("http"),n=r?"root":t;return r&&await this.getShareID(t),await this.getFilesWithFolderSort(n)}async getFilesWithFolderSort(t){try{let r=[],n={shareInfoCalls:0,folderVisits:0},s=Date.now(),i=async(o,c)=>{let u=[],l=[],d=[],f=1,h=200;for(;;){let p=await this.getShareInfo(o,{pageNum:f,pageSize:h});if(c&&(c.shareInfoCalls+=1),f===1){let _=Array.isArray(p?.caLst)?p.caLst:[],g=/App|活动中心|免费|1T空间|免流/;d.push(..._.filter(y=>!g.test(y.caName)))}let m=Array.isArray(p?.coLst)?p.coLst:[];if(m.length===0)break;for(let _ of m){if(!_?.coName)continue;let g={name:_.coName,contentId:_.coID,linkID:this.linkID,size:_.coSize,path:_.path};_.coType===3||aB(_.coName)?u.push(g):vt(_.coName)&&l.push(g)}if(m.length_.name);m?.contentId&&(p.subtitle={contentId:m.contentId,name:m.name,path:m.path})}return{videos:u,folders:d}},a=async o=>{n.folderVisits+=1;let c=await i(o,n);if(c.videos?.length>0){let u=Kt(c.videos);r.push(...u)}c.folders?.length>0&&await _0(c.folders,async u=>{await a(u.caID)},5)};return await a(t),console.log("[139 detail] perf",JSON.stringify({linkID:this.linkID,ms:Date.now()-s,videos:r.length,...n})),r.map(o=>({vod_name:o.name,vod_id:Ot([o.contentId,o.linkID,o.subtitle?.contentId||"",o.path||"",o.subtitle?.path||""],{structured:!0}),vod_size:o.size}))}catch(r){return console.error("\u83B7\u53D6\u6587\u4EF6\u5931\u8D25:",r),[]}}async getCurrentDirFiles(t,r){try{let n=[],s=[],i=1,a=200;for(;;){let o=await this.getShareInfo(t,{pageNum:i,pageSize:a});r&&(r.shareInfoCalls+=1);let c=Array.isArray(o?.coLst)?o.coLst:[];if(c.length===0)break;for(let u of c){if(!u?.coName)continue;let l={name:u.coName,contentId:u.coID,linkID:this.linkID,size:u.coSize,path:u.path};u.coType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(u.coName)?n.push(l):vt(u.coName)&&s.push(l)}if(c.lengthu.name);c?.contentId&&(o.subtitle={contentId:c.contentId,name:c.name,path:c.path})}return n}catch(n){return console.error("\u83B7\u53D6\u5F53\u524D\u76EE\u5F55\u6587\u4EF6\u5931\u8D25:",n),[]}}async processSubFolders(t,r,n){try{let s=await this.getShareInfo(t);if(n&&(n.shareInfoCalls+=1),!s||!s.caLst)return;let i=s.caLst,a=/App|活动中心|免费|1T空间|免流/,o=i.filter(u=>!a.test(u.caName));await _0(o,async u=>{n&&(n.folderVisits+=1);try{let l=await this.getCurrentDirFiles(u.caID,n);if(l?.length>0){let d=Kt(l);r.push(...d)}await this.processSubFolders(u.caID,r,n)}catch(l){console.error(`\u5904\u7406\u5B50\u6587\u4EF6\u5939\u5931\u8D25 ${u.caName}:`,l)}},5)}catch(s){console.error("\u5904\u7406\u5B50\u6587\u4EF6\u5939\u5931\u8D25:",s)}}async getShareDownload(t,r){let n=String(t||"").trim();if(!n||!r)return{url:"",error:"\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u53C2\u6570\u7F3A\u5C11\u6587\u4EF6\u8DEF\u5F84"};let s=[{linkID:r,coIDLst:{items:[n]},caIDLst:{items:[]}},{dlFromOutLinkReqV3:{linkID:r,account:"",coIDLst:{item:[n]}}}],i="";for(let a of s)try{let o=await ve.post(this.baseUrl+"dlFromOutLinkV3",this.encrypt(a),{headers:this.buildSignedHeaders(a),timeout:15e3,validateStatus:()=>!0});if(o.status!==200){i=`\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3 HTTP ${o.status}`;continue}let c=this.parseMaybeEncryptedResponse(o.data),u=this.extractDownloadUrl(c);if(u)return{url:u,source:"download"};i=this.downloadErrorMessage(c)||"\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}catch(o){i=o?.message||String(o)}return{url:"",error:i||"\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async getSharePlayInfo(t,r,n=""){let s={getContentInfoFromOutLinkReq:{contentId:t,linkID:r,account:""},commonAccountInfo:{account:"",accountType:1}};try{let i=await ve.post(this.baseUrl+"getContentInfoFromOutLink",s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br, zstd","Content-Type":"application/json"},timeout:15e3});if(i.status===200&&i.data.data){let a=i.data.data.contentInfo||{},o=this.pickPreviewUrl(a);if(o)return{url:o,source:"preview"};let c=String(n||"").trim()||this.buildFilePathFromContentInfo(a);if(c){let u=await this.getShareDownload(c,r);return u?.url?u:{url:"",source:"download",error:u?.error||"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u9884\u89C8\u5730\u5740\uFF0C\u4E0B\u8F7D\u63A5\u53E3\u4E5F\u672A\u8FD4\u56DE\u5730\u5740"}}return{url:"",source:"preview",error:"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u9884\u89C8\u5730\u5740\uFF0C\u4E14\u65E0\u6CD5\u786E\u5B9A\u6587\u4EF6\u8DEF\u5F84"}}}catch(i){throw console.error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25:",i),i}return{url:"",error:"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u64AD\u653E\u4FE1\u606F"}}async getSharePlay(t,r,n=""){let s=await this.getSharePlayInfo(t,r,n);return!s?.url&&s?.error&&console.warn("[139 play] no playable url:",s.error),s?.url||null}};hb={async getShareData(e){let t=new zx;if(!e)return[];let r=e.startsWith("http"),n=r?"root":e;return r?await t.getShareID(e):t.linkID=e,t.getFilesWithFolderSort(n)},async getSharePlay(e,t,r=""){let n=new zx;return n.linkID=t,n.getSharePlay(e,t,r)},async getSharePlayInfo(e,t,r=""){let n=new zx;return n.linkID=t,n.getSharePlayInfo(e,t,r)}}});function ru(e="",t=16){return e_.default.SHA256(String(e||"")).toString(e_.default.enc.Hex).slice(0,t)}function m8t(e="",t=""){let r=String(t||"").trim().toLowerCase();return String(e||"").split(";").map(n=>n.trim()).filter(Boolean).filter(n=>String(n.split("=",1)[0]||"").trim().toLowerCase()!==r).join("; ")}function e8t(e="",t="",r=""){let n=m8t(e,t),s=`${String(t||"").trim()}=${String(r||"")}`;return n?`${n}; ${s}`:s}function g8t(){return String(nl.get("baidu_cookie")||"")}function _8t(){return m8t(g8t(),"BDCLND")}function R0(e=_8t()){return ru(e||"anonymous-baidu-account",24)}function SG({surl:e="",pwd:t="",accountKey:r=R0()}={}){return`${r}:${ru(`${e}\0${t}`,24)}`}function z0n({surl:e="",shareid:t="",fsid:r="",accountKey:n=R0()}={}){return`${n}:${ru(`${e}\0${t}\0${r}`,32)}`}async function YCe(e,t,r){let n=e.get(t);if(n)return await n;let s=Promise.resolve().then(r);e.set(t,s);try{return await s}finally{e.get(t)===s&&e.delete(t)}}function A8t(e={}){let t=SG(e),r=EB.get(t);return r?(r.expiresAt||0)<=Date.now()?(EB.delete(t),null):r:null}function t8t(e={},t=""){if(!e.surl||!t)return null;let r=e.accountKey||R0(),n=SG({...e,accountKey:r}),s={accountKey:r,surl:String(e.surl||""),pwdHash:ru(e.pwd||"",16),randsk:String(t||""),createdAt:Date.now(),expiresAt:Date.now()+V0n};return EB.set(n,s),s}function r8t(e={}){let t=SG(e);return EB.delete(t)}function _G(e){if(!e?.surl||e.randsk)return e?.randsk||"";let t=A8t({surl:e.surl,pwd:e.pwd,accountKey:e.accountKey});return t?.randsk&&(e.randsk=t.randsk),e.randsk||""}function Y0n(e,t={}){let r=String(t.surl||e||"");if(!r)return null;let n={surl:r,pwd:String(t.pwd||""),uk:String(t.uk||""),shareid:String(t.shareid||""),accountKey:t.accountKey||R0(),updatedAt:Date.now(),expiresAt:Date.now()+j0n};return AG.set(String(e||r),n),n}function Q0n(e){let t=String(e||""),r=AG.get(t);return r?(r.expiresAt||0)<=Date.now()||r.accountKey!==R0()?(AG.delete(t),null):r:null}function W0n(e="",t=Date.now()){try{let r=new URL(String(e||"")),n=String(r.searchParams.get("expires")||"").trim().toLowerCase(),s=Number(r.searchParams.get("dstime")||0),i=s>1e9?s*1e3:t;if(/^\d{10,13}$/.test(n)){let c=Number(n);return c>1e12?c:c*1e3}let a=/^(\d+)([smhd])$/.exec(n);if(!a)return 0;let o=a[2]==="s"?1e3:a[2]==="m"?60*1e3:a[2]==="h"?60*60*1e3:24*60*60*1e3;return i+Number(a[1])*o}catch{return 0}}function nxe(e){let r=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/.exec(e);return r&&r[1]?{shareId:r[1],sharePwd:r[2]||"",url:String(e||"")}:null}function QCe(e="",t=""){let r=String(t||"").trim();if(!r)return"";let n=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),s=String(e||"").match(new RegExp(`(?:^|;\\s*)${n}=([^;]*)`));return s?s[1]:""}function E8t({sha1:e,bduss:t,uid:r,time:n}){return e(e(t)+r+H0n+n+rxe+q0n)}function y8t(e={}){return Array.isArray(e?.list)?e.list:Array.isArray(e?.info)?e.info:[]}function X0n(e=""){let t=String(e||"").trim();return!t||t==="/"||t==="root"}function n8t(e){let t=String(e?.shareId||"").trim(),r=String(e?.sharePwd||"").trim();return t?`https://pan.baidu.com/s/${t}${r?`?pwd=${encodeURIComponent(r)}`:""}`:""}async function WCe(e,t,r,n=6e4){return(await ve.get(`${e.api}/share/list?web=5&app_id=${e.app_id}&desc=1&showempty=0&page=${t}&num=${r}&order=time&shorturl=${e.shorturl}&root=1&view_mode=${e.view_mode}&channel=${e.channel}&web=1&clienttype=0`,{headers:e.headers,timeout:n})).data||{}}async function J0n(e,t=6e4){if(e.uk&&e.shareid)return;let r=await WCe(e,1,1,t);Number(r?.errno)===0&&(e.uk=r?.uk||e.uk||"",e.shareid=r?.share_id||r?.shareid||e.shareid||"")}function gG(e={}){return Number(e.has_more||e.hasMore||e.records?.has_more||0)===1}function s8t(e={}){return Number(e?.total||e?.records?.total||0)}async function v8t(e,t="/",r={}){let n=typeof e=="string"?nxe(e):e;if(!n?.shareId)return{items:[],meta:{}};let s=new Qx;await s.getSurl(n.url||n8t(n)),s.surl||(s.surl=String(n.shareId||""),s.shorturl=s.surl?s.surl.slice(1):"",s.pwd=String(n.sharePwd||""),s.link=n8t(n));let i=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),a=i>0,o=Math.max(1,Math.min(500,Number(r.batchSize)||100)),c=Math.max(0,Math.min(1e4,Number(r.batchIntervalMs)||0)),u=Math.max(1e4,Math.min(18e4,Number(r.timeoutMs)||6e4));await s.getRandsk(u),s.headers.cookie=s.shareCookie;let l=[],d=a?i:1,f=!1,h=0;if(X0n(t))for(;;){let m=await WCe(s,d,o,u);if(Number(m?.errno)!==0||!Array.isArray(m.list))break;s.uk=m?.uk||s.uk||"",s.shareid=m?.share_id||m?.shareid||s.shareid||"";let _=m.list;if(h=s8t(m)||h,f=gG(m),a&&d>1&&h<=0&&!f&&_.length0&&await new Promise(g=>setTimeout(g,c))}else{if(await J0n(s,u),!s.uk||!s.shareid)return{items:[],meta:{surl:s.surl,pwd:s.pwd}};let m=String(t||"/");for(;;){let g=(await ve.get(`${s.api}/share/list?is_from_web=true&uk=${s.uk}&shareid=${s.shareid}&order=name&desc=0&showempty=0&view_mode=${s.view_mode}&web=1&page=${d}&num=${o}&dir=${encodeURIComponent(m)}&channel=${s.channel}&web=1&app_id=${s.app_id}`,{headers:s.headers,timeout:u})).data||{};if(Number(g?.errno)!==0||!Array.isArray(g.list))break;let y=g.list;if(h=s8t(g)||h,f=gG(g),a&&d>1&&h<=0&&!f&&y.length0&&await new Promise(A=>setTimeout(A,c))}}let p={uk:s.uk||"",shareid:s.shareid||"",surl:s.surl||"",pwd:s.pwd||""};for(let m of l){let _=m?.fs_id||m?.fsid;_&&AB.set(`${s.surl}_${_}`,m.size)}if(a){let m=h>0?h:(i-1)*o+l.length+(f?o:0);return{items:l,meta:p,paged:!0,page:i,pageSize:o,total:m}}return{items:l,meta:p}}function chn(){EB.clear(),AG.clear(),_B.clear(),f8t.clear(),h8t.clear(),p8t.clear();for(let e of Object.keys(uy))delete uy[e]}function TG(e=""){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}function uhn(e=""){if(Mr(e).length>=7){let n=Mr(e,{fieldOrder:["path","uk","shareid","fsid","surl","encodedPwd","subtitleFsid"]});return{path:n.path||"",uk:n.uk||"",shareid:n.shareid||"",fsid:n.fsid||"",surl:n.surl||"",pwd:TG(n.encodedPwd||""),subtitleFsid:n.subtitleFsid||""}}let r=Mr(e,{fieldOrder:["path","uk","shareid","fsid","surl","subtitleFsid"]});return{path:r.path||"",uk:r.uk||"",shareid:r.shareid||"",fsid:r.fsid||"",surl:r.surl||"",pwd:"",subtitleFsid:r.subtitleFsid||""}}function lhn(e){return e&&nl.get(`baidu_share_${e}`)||null}function b8t(e={},t=""){let r=lhn(t);return{surl:e.surl||r?.surl||"",pwd:e.pwd||r?.pwd||"",uk:e.uk||r?.uk||"",shareid:e.shareid||r?.shareid||"",link:e.link||r?.link||""}}function dhn(e,{surl:t="",pwd:r="",uk:n="",shareid:s=""}){e.surl=t,e.shorturl=e.surl?e.surl.slice(1):"",e.pwd=r,e.link=e.surl?`https://pan.baidu.com/s/${e.surl}${e.pwd?`?pwd=${e.pwd}`:""}`:"",e.uk=n,e.shareid=s,_G(e)}function fhn(e,t={},r=""){let n=b8t(t,r);return dhn(e,n),n.link&&(e.link=n.link),n}function sxe(e={},t=""){let r=new Qx,n=fhn(r,e,t);return{drive:r,shareContext:n}}async function ixe({drive:e,path:t,uk:r,shareid:n,fsid:s,surl:i}){let a=e.accountKey,o=z0n({surl:i,shareid:n,fsid:s,accountKey:a});return await YCe(p8t,o,async()=>{let c=Date.now(),u=await e.getAppShareUrl(t,r,n,s);return console.log("[baidu play] dlink",JSON.stringify({shareKey:ru(i,12),fileKey:ru(s,12),ok:!!u,ms:Date.now()-c})),u})}function hhn(e=""){let r=TG(e).split("*");if(r.length<4)return null;let n=r.pop()||"",s=r.pop()||"",i=r.pop()||"",a=r.join("*");return!a||!i||!s||!n?null:{path:a,uk:i,shareid:s,fsid:n,fileId:`${a}*${i}*${s}*${n}`}}function phn(e){return!e?.cacheEntry?.directUrl||e.kind!==nu||e.cacheEntry.source!==SB||e.cacheEntry.accountKey&&e.cacheEntry.accountKey!==R0()||oxe(e)||x8t(e)?!1:(e.expiresAt||0)>Date.now()}async function mhn({shareId:e,fileId:t}){let r=Q0n(e),n=hhn(t);if(!r||!n)return{statusCode:410,error:"\u64AD\u653E\u5730\u5740\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u8BF7\u6C42\u64AD\u653E\u5730\u5740"};let{drive:s}=sxe({surl:r.surl,pwd:r.pwd,uk:n.uk||r.uk,shareid:n.shareid||r.shareid},e);try{let i=await ixe({drive:s,path:n.path,uk:n.uk,shareid:n.shareid,fsid:n.fsid,surl:r.surl});if(!i)return{statusCode:503,error:"\u767E\u5EA6\u7F51\u76D8\u6682\u672A\u8FD4\u56DE\u539F\u753B\u5730\u5740\uFF0C\u8BF7\u91CD\u8BD5"};let a=I8t({fileId:n.fileId,fileSize:AB.get(`${r.surl}_${n.fsid}`),directUrl:i,accountKey:s.accountKey});return uxe(e,a,n.fileId),{cacheEntry:a,recovered:!0}}catch(i){return console.warn("[baidu proxy] handoff recovery failed",{shareKey:ru(e,12),fileKey:ru(n.fsid,12),code:String(i?.code||""),message:String(i?.message||"").slice(0,120)}),{statusCode:503,error:"\u767E\u5EA6\u539F\u753B\u5730\u5740\u5237\u65B0\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5"}}}function I8t({fileId:e,fileSize:t,directUrl:r,accountKey:n=R0()}){return{kind:nu,source:SB,directUrl:r,fileId:e,fileSize:t,accountKey:n,requestHeaders:{"User-Agent":vG,Referer:"https://pan.baidu.com/"}}}function ghn({fileId:e,directUrl:t,accountKey:r=R0()}){return{kind:Zg,source:SB,directUrl:t,fileId:e,accountKey:r,requestHeaders:{"User-Agent":vG,Referer:"https://pan.baidu.com/"}}}function XCe(e){return!!e&&typeof e=="object"&&typeof e.source=="string"}function _hn(e){return e?.kind===Zg?Zg:nu}function bG(e){return!e||typeof e!="object"||XCe(e)?!1:!!(e.recordsByPrimaryKey||e.primaryKeyByFileAlias||e.entriesByFileId||e.latestEntry||e.latestPrimaryKey)}function axe(e=""){let t=String(e||""),r=[],n=new Set,s=i=>{let a=String(i||"");!a||n.has(a)||(n.add(a),r.push(a))};s(t),s(TG(t));try{s(encodeURIComponent(t))}catch{}return r}function JCe(){return{latestPrimaryKey:"",recordsByPrimaryKey:Object.create(null),primaryKeyByFileAlias:Object.create(null)}}function R8t(e,t){let r={...e,kind:_hn(e)},n=axe(t||e.fileId),s=n[0]||String(e.fileId||""),i=Date.now(),a=e.directUrl?W0n(e.directUrl,i):0,o=a>i?Math.min(i+i8t,a-G0n):i+i8t;return{kind:r.kind,primaryFileKey:s,fileKeys:n,cacheEntry:r,createdAt:i,lastAccessAt:i,upstreamExpiresAt:a,expiresAt:Math.max(i+1e3,o)}}function TB(e,t){let r=e.recordsByPrimaryKey[t];if(r){for(let n of r.fileKeys||[])e.primaryKeyByFileAlias[n]===t&&delete e.primaryKeyByFileAlias[n];delete e.recordsByPrimaryKey[t],e.latestPrimaryKey===t&&(e.latestPrimaryKey="")}}function C8t(e,t){e.recordsByPrimaryKey[t.primaryFileKey]=t;for(let r of t.fileKeys)e.primaryKeyByFileAlias[r]=t.primaryFileKey;e.latestPrimaryKey=t.primaryFileKey}function a8t(e){let t=Date.now();e.lastAccessAt=t;let r=bB(e);return r?.disposition===vB?e.expiresAt=Math.min(e.expiresAt||1/0,t+shn):r?.disposition===Xx&&(e.expiresAt=Math.min(e.expiresAt||1/0,t+ihn)),e}function bB(e){let t=e?.failureState;return!t?.observedAt||Date.now()-t.observedAt>nhn?null:t}function oxe(e){let t=bB(e);return t?t.disposition===vB:!1}function x8t(e){let t=bB(e);return t?t.disposition===Xx:!1}function Ahn(e){let t=bB(e);return t?t.disposition===Wx||t.disposition===vB:!1}function Ehn(e){let t=bB(e);return t?t.disposition===Xx:!1}function yhn(e){let t=Number(e?.lastProbeAt||0);return!t||Date.now()-t>=ohn}function o8t(e,t){return e&&(e.lastProbeAt=Date.now(),t&&delete e.failureState,e)}function Jx(e,t=""){let r=Object.values(e.recordsByPrimaryKey||{});return t?r.filter(n=>n.kind===t):r}function vhn(e){let t=Date.now(),r=R0();for(let n of Jx(e)){let s=n?.cacheEntry?.accountKey;((n.expiresAt||0)<=t||s&&s!==r)&&TB(e,n.primaryFileKey)}}function Shn(e){let t=(n,s)=>{let i=Jx(e,n).sort((a,o)=>(o.lastAccessAt||0)-(a.lastAccessAt||0));for(let a=s;a(s.lastAccessAt||0)-(n.lastAccessAt||0));(!e.latestPrimaryKey||!e.recordsByPrimaryKey[e.latestPrimaryKey])&&(e.latestPrimaryKey=r[0]?.primaryFileKey||"")}function c8t(e,t){let r=[];for(let[n,s]of Object.entries(uy))if(bG(s)){IB(s);for(let i of Jx(s,e))r.push({shareId:n,bucket:s,record:i})}r.sort((n,s)=>(s.record.lastAccessAt||0)-(n.record.lastAccessAt||0));for(let n=t;n{!XCe(i)||r.has(i)||(r.add(i),n.push(i))};if(XCe(e))s(e);else if(bG(e)){if(e.entriesByFileId&&typeof e.entriesByFileId=="object")for(let i of Object.values(e.entriesByFileId))s(i);s(e.latestEntry)}for(let i of n)C8t(t,R8t(i,i.fileId));return IB(t)}function w8t(e){let t=uy[e];if(bG(t)&&t.recordsByPrimaryKey&&t.primaryKeyByFileAlias){let n=IB(t);if(cxe(n)){let s=JCe();return uy[e]=s,s}return n}let r=t?Thn(t):JCe();return uy[e]=r,r}function uxe(e,t,r){let n=w8t(e),s=R8t(t,r);return TB(n,s.primaryFileKey),C8t(n,s),IB(n),c8t(nu,thn),c8t(Zg,rhn),s}function bhn(e,t,r=nu){let n=Jx(e,r).filter(s=>!oxe(s));return n.length!==1||t&&axe(t).length>0?null:n[0]||null}function N8t(e,t,r=nu){let n=axe(t),s=null;for(let i of n){let a=e.primaryKeyByFileAlias[i],o=a?e.recordsByPrimaryKey[a]:null;if(o&&o.kind===r){if(oxe(o))continue;if(x8t(o)){s=s||o;continue}return o}}return s}function Zx(e,t,r=nu){let n=w8t(e);if(cxe(n))return EG(e,n),null;let s=N8t(n,t,r);if(s)return n.latestPrimaryKey=s.primaryFileKey,a8t(s);let i=bhn(n,t,r);return i?(n.latestPrimaryKey=i.primaryFileKey,a8t(i)):null}function Ihn(e,t){let r=Zx(e,t,nu);return r?r.cacheEntry:null}function Rhn(e,t){let r=Zx(e,t,Zg);return r?r.cacheEntry:null}function Chn(e,t,r=nu){let n=uy[e];if(!n||!bG(n))return!1;IB(n);let s=N8t(n,t,r);return s?(TB(n,s.primaryFileKey),EG(e,n),!0):(EG(e,n),!1)}function xhn(e,t,r,n){return n.source===SB?[...ba(e,"baidu","\u539F\u753B","redirect",t,r,".bin")]:n.source===S8t?n.qualityUrls.flatMap(s=>[s.name,lx(e,"baidu",s.name,t,r,".bin")]):[]}function u8t(e,{shareId:t,encodedFileId:r,cacheEntry:n,subtitleRef:s=null,skipReuse:i=!1}){return i||uxe(t,n,n.fileId),Xs({parse:0,urls:xhn(e,t,r,n),subtitles:s?[s]:[],extra:{header:{}}})}function whn(e,t){if(!e)return{statusCode:404,error:"\u64AD\u653EURL\u672A\u627E\u5230"};if(e.source===SB)return{targetUrl:e.directUrl,requestHeaders:e.requestHeaders,contentLength:e.fileSize};if(e.source===S8t){let r=e.qualityUrls.find(n=>n.name===t);return r?{targetUrl:r.url,requestHeaders:e.requestHeaders,contentLength:e.fileSize}:{statusCode:404,error:"\u753B\u8D28\u672A\u627E\u5230"}}return{statusCode:500,error:"\u65E0\u6548\u7684\u7F13\u5B58\u7C7B\u578B"}}async function Nhn(e){let t=e_.default.enc.Hex.stringify(e_.default.MD5(e.server.config.baidu.cookie)).toString(),r=await e.server.db.getObjectDefault(`/baidu/settings/${t}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0});return zi(r,{chunkSize:512*1024,poolSize:8,useMultithread:!0})}function Ohn(e){return e.useMultithread?T8t:yB}function ZCe(e){e.header("Cache-Control","no-store, no-cache, must-revalidate"),e.header("Pragma","no-cache"),e.header("Expires","0")}async function Dhn(e,t={}){try{let r=await ve.head(e,{headers:t,timeout:ahn,maxRedirects:0,validateStatus:()=>!0});return{ok:r.status>=200&&r.status<400,statusCode:r.status,response:r}}catch(r){return{ok:!1,error:r}}}async function exe({shareId:e,fileId:t,expectedKind:r,targetUrl:n,requestHeaders:s,force:i=!1}){let a=Zx(e,t,r);if(!a||!i&&!Ahn(a)||!yhn(a))return null;let o=await Dhn(n,s);if(o.ok)return o8t(a,!0),{action:"retain",probe:o};o8t(a,!1);let c=yG(e,t,r,o.error||{response:{status:o.statusCode},message:`redirect probe failed with status ${o.statusCode||0}`},{stage:i?"redirect_retain_probe":"redirect_probe",deliveryMode:yB});return{action:c.disposition,probe:o,failure:c}}async function Phn(e,t,{targetUrl:r,fileId:n,requestHeaders:s,contentLength:i,settings:a}){let o=e.params.flag===yB?yB:Ohn(a),c=Zx(e.params.shareId,n,nu);if(o===T8t)try{return await ac(e,t,r,n,s,{chunkSize:a.chunkSize,poolSize:a.poolSize,timeout:1e3*10},i,!0)}catch(d){console.error("[baidu proxy] chunkStream error:",d.message),yG(e.params.shareId,n,nu,d,{stage:"chunk_stream",deliveryMode:o}),t.sent||t.code(503).send({error:"stream error, please retry"});return}let u=c&&Ehn(c)?await exe({shareId:e.params.shareId,fileId:n,expectedKind:nu,targetUrl:r,requestHeaders:s,force:!0}):null;if(u?.failure?.disposition===Wx){t.sent||t.code(503).send({error:"redirect target unavailable, please retry"});return}if((u||await exe({shareId:e.params.shareId,fileId:n,expectedKind:nu,targetUrl:r,requestHeaders:s}))?.failure?.disposition===Wx){t.sent||t.code(503).send({error:"redirect target unavailable, please retry"});return}ZCe(t),t.redirect(r)}function Lhn(e,{path:t,uk:r,shareid:n,subtitleFsid:s,surl:i,pwd:a}){if(!s)return null;let o=encodeURIComponent(Ot([t,r,n,s,i,encodeURIComponent(a||"")],{structured:!0}));return{fileId:o,ref:E0(e,"baidu",i,o,".srt",{name:"\u5916\u6302\u5B57\u5E55",format:"srt"})}}function Mhn(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||t==="ESOCKETTIMEDOUT"||r.includes("timeout")}function khn(e){let t=String(e?.code||"").toUpperCase();return t==="ECONNRESET"||t==="EAI_AGAIN"||t==="ENOTFOUND"||t==="ECONNREFUSED"||t==="EPIPE"}function Bhn(e=null){return{statusCode:Number(e?.response?.status||e?.statusCode||0)||0,code:String(e?.code||""),message:String(e?.message||""),name:String(e?.name||"")}}function Uhn(e,t={}){let r=Bhn(e);return r.statusCode>=400&&r.statusCode<500?{disposition:Wx,category:"upstream_4xx",...r,...t}:r.statusCode>=500?{disposition:Xx,category:"upstream_5xx",...r,...t}:Mhn(e)?{disposition:Xx,category:"timeout",...r,...t}:khn(e)?{disposition:vB,category:"network_error",...r,...t}:{disposition:vB,category:"uncertain_failure",...r,...t}}function Fhn(e,t){return e&&(e.failureState={category:t.category,disposition:t.disposition,statusCode:t.statusCode||0,code:t.code||"",message:t.message||"",stage:t.stage||"",deliveryMode:t.deliveryMode||"",observedAt:Date.now()},e)}function yG(e,t,r,n,s={}){let i=Uhn(n,{expectedKind:r,...s});if(i.disposition===Wx){let c=Chn(e,t,r);return console.warn("[baidu proxy] invalidate handoff record:",i.category,{shareId:e,expectedKind:r,invalidated:c,statusCode:i.statusCode,code:i.code,stage:i.stage}),i}let a=Zx(e,t,r);a&&Fhn(a,i);let o=i.disposition===Xx?"warn":"info";return console[o]("[baidu proxy] keep handoff record:",i.category,{shareId:e,expectedKind:r,statusCode:i.statusCode,code:i.code,stage:i.stage}),i}async function O8t(e,t){await t_(t);let r=await ht("baidu");if(Array.isArray(e)){let n=[];for(let s of e)try{let i=new Qx;await i.getSurl(s);let a=await i.getShareList();if(!a)continue;let o=Fg(r,a);o?.from&&o?.url&&n.push(o)}catch(i){console.error(`\u5904\u7406\u767E\u5EA6\u94FE\u63A5\u5931\u8D25: ${s}`,i.message)}return n}else try{let n=new Qx;await n.getSurl(e);let s=await n.getShareList();return s?Ta(r,s):[]}catch(n){return console.error("\u5904\u7406\u767E\u5EA6\u94FE\u63A5\u5931\u8D25:",e,n.message),[]}}async function IG(e,t){let r=Date.now();await t_(e);let{path:n,uk:s,shareid:i,fsid:a,surl:o,pwd:c,subtitleFsid:u}=uhn(e.body.id),l=b8t({surl:o,pwd:c,uk:s,shareid:i},o),d=l.surl||o,f=l.uk||s,h=l.shareid||i;if(!n||!d||!f||!h||!a)return Wr("\u767E\u5EA6\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u4E0D\u5B8C\u6574");let p=`${n}*${f}*${h}*${a}`,m=encodeURIComponent(p),_=d,g=AB.get(`${d}_${a}`),y=R0();Y0n(_,{surl:d,pwd:l.pwd,uk:f,shareid:h,accountKey:y});let A=u?Lhn(e,{path:n,uk:f,shareid:h,subtitleFsid:u,surl:d,pwd:l.pwd}):null,E=A?A.ref:null,v=Zx(_,p,nu);if(phn(v))return console.log("[baidu play] perf",JSON.stringify({shareKey:ru(_,12),fileKey:ru(a,12),cacheHit:!0,handoffAgeMs:Date.now()-Number(v.createdAt||Date.now()),handoffRemainingMs:Math.max(0,Number(v.expiresAt||0)-Date.now()),totalMs:Date.now()-r})),u8t(e,{shareId:_,encodedFileId:m,cacheEntry:v.cacheEntry,subtitleRef:E,skipReuse:!0});let{drive:b}=sxe({surl:d,pwd:l.pwd,uk:f,shareid:h},d);try{let I=await ixe({drive:b,path:n,uk:f,shareid:h,fsid:a,surl:d});if(I){let T=I8t({fileId:p,fileSize:g,directUrl:I,accountKey:b.accountKey}),x=u8t(e,{shareId:_,encodedFileId:m,cacheEntry:T,subtitleRef:E});return console.log("[baidu play] perf",JSON.stringify({shareKey:ru(_,12),fileKey:ru(a,12),cacheHit:!1,totalMs:Date.now()-r})),x}}catch(I){console.debug("[baidu play] app dlink failed:",String(I?.message||I).slice(0,160))}return console.error("\u83B7\u53D6\u767E\u5EA6\u539F\u753B\u76F4\u94FE\u5931\u8D25"),Wr("\u767E\u5EA6\u7F51\u76D8\u83B7\u53D6\u539F\u753B\u76F4\u94FE\u5931\u8D25")}async function D8t(e,t){try{let r=e.params.site,n=e.params.shareId,s=e.params.fileId,i=e.params.flag;if(r!=="baidu")return t.status(400).send({error:"\u65E0\u6548\u7684\u7AD9\u70B9"});if(i==="subt"){let u=Rhn(n,s);if(u?.directUrl){if((await exe({shareId:n,fileId:s,expectedKind:Zg,targetUrl:u.directUrl,requestHeaders:u.requestHeaders}))?.failure?.disposition===Wx)return t.status(503).send({error:"\u5B57\u5E55\u5730\u5740\u6682\u4E0D\u53EF\u7528\uFF0C\u8BF7\u91CD\u8BD5"});ZCe(t),t.redirect(u.directUrl);return}let l=Mr(decodeURIComponent(String(s||"")),{fieldOrder:["subPath","subUk","subShareId","subFsid","subSurl","encodedPwd"]});if(!l.subPath||!l.subUk||!l.subShareId||!l.subFsid)return t.status(400).send({error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"});let{subPath:d,subUk:f,subShareId:h,subFsid:p,subSurl:m="",encodedPwd:_=""}=l,{drive:g}=sxe({surl:m,pwd:_?TG(_):"",uk:f,shareid:h},m||n),y=null;try{y=await ixe({drive:g,path:d,uk:f,shareid:h,fsid:p,surl:m||n})}catch(A){throw yG(n,s,Zg,A,{stage:"subtitle_fetch",deliveryMode:"redirect"}),A}if(!y)return yG(n,s,Zg,{response:{status:404},message:"subtitle direct url empty"},{stage:"subtitle_fetch_empty",deliveryMode:"redirect"}),t.status(404).send({error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"});uxe(n,ghn({fileId:s,directUrl:y}),s),ZCe(t),t.redirect(y);return}let a=Ihn(n,s);if(!a&&(i===yB||i==="down")){let u=await mhn({shareId:n,fileId:s});if(!u.cacheEntry)return t.status(u.statusCode||410).send({error:u.error||"\u64AD\u653E\u5730\u5740\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u8BF7\u6C42\u64AD\u653E\u5730\u5740"});a=u.cacheEntry}let o=whn(a,i);if(!o.targetUrl)return t.status(o.statusCode||500).send({error:o.error||"\u4EE3\u7406\u5931\u8D25"});let c=await Nhn(e);return await Phn(e,t,{targetUrl:o.targetUrl,fileId:s,requestHeaders:o.requestHeaders,contentLength:o.contentLength,settings:c})}catch(r){console.error("[baidu proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function M8t(e="/",t=1,r=100){let n=nl.get("baidu_cookie")||"";if(!n)return console.warn("[baidu own][list] cookie empty"),{folderList:[],fileList:[],count:0};let s=Math.max(1,Number.parseInt(t,10)||1),i="https://pan.baidu.com/api/list";try{let a=await ve.get(i,{headers:{"User-Agent":P8t,Referer:"https://pan.baidu.com/disk/main",cookie:n},params:{order:"time",desc:1,showempty:0,web:5,page:s,num:r,dir:e||"/",clienttype:0,app_id:250528},timeout:1e4});if(Number(a.data?.errno)!==0||!Array.isArray(a.data?.list))return console.warn("[baidu own][list] non-zero errno=%s",a.data?.errno),{folderList:[],fileList:[],count:0};let o=[],c=[];return a.data.list.forEach(u=>{Number(u.isdir)===1?o.push(u):c.push(u)}),{folderList:o,fileList:c,count:a.data.list.length}}catch(a){return console.error("[baidu own] listOwnFiles \u5931\u8D25:",a?.message||a),{folderList:[],fileList:[],count:0}}}async function $hn(e){try{return(await ve.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%5B%22uid%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:{"User-Agent":P8t,cookie:e},timeout:8e3})).data?.data?.fields?.uid||"default_uid"}catch{return"default_uid"}}async function RG(e){let t=nl.get("baidu_cookie")||"";if(!t||!e)return"";let r=QCe(t,"BDUSS");if(!r)return console.warn("[baidu own][download] cookie missing BDUSS"),"";try{let n=await $hn(t),s=String(Date.now()),a=E8t({sha1:u=>e_.default.SHA1(u).toString(e_.default.enc.Hex),bduss:r,uid:n,time:s}),o=`https://pan.baidu.com/api/filemetas?app_id=250528&fsids=%5B${encodeURIComponent(String(e))}%5D&dlink=1&origin=dlna&devuid=${rxe}&clienttype=1&channel=${d8t}&version=${txe}&time=${s}&rand=${a}`,c=await ve.get(o,{headers:{"User-Agent":L8t,Referer:"https://pan.baidu.com/",cookie:t},timeout:1e4});if(Number(c.data?.errno)===0){let u=y8t(c.data);if(u[0]?.dlink)return u[0].dlink}return console.warn("[baidu own][download] errno=%s, body=%s",c.data?.errno,JSON.stringify(c.data||{}).slice(0,200)),""}catch(n){return console.error("[baidu own] getOwnDownload \u5931\u8D25:",n?.message||n),""}}var l8t,e_,zCe,nl,AB,txe,d8t,q0n,vG,rxe,H0n,Yx,V0n,j0n,K0n,G0n,EB,AG,_B,f8t,h8t,p8t,t_,Qx,SB,S8t,yB,T8t,nu,Zg,i8t,Z0n,ehn,thn,rhn,Wx,Xx,vB,nhn,shn,ihn,ahn,ohn,uy,P8t,L8t,k8t,RB=ae(()=>{Pr();l8t=Ne(sx(),1),e_=Ne(Gi(),1);ua();PE();Wc();wi();Xc();$l();y0();g0();Zu();zCe=class{constructor(){this.localData={},this.db=null,this.initialized=!1,this._writeChain=Promise.resolve()}async init(t){this.db=t;try{let r=await this.db.getObjectDefault("/baidu_driver",{});return this.localData=r,this.initialized=!0,!0}catch{return this.localData={},this.initialized=!1,!1}}_enqueue(t){let r=this._writeChain.then(t,t);return this._writeChain=r.catch(()=>{}),r}async set(t,r){return this.db?this._enqueue(async()=>{let n=this.localData[t];this.localData[t]=r;try{let s={};try{s=await this.db.getObjectDefault("/baidu_driver",{})}catch{}let i={...s,...this.localData,[t]:r};return await this.db.push("/baidu_driver",i),t==="baidu_cookie"&&n!==r&&chn(),!0}catch{return!1}}):!1}get(t){return this.localData[t]}async delete(t){return this.db?this._enqueue(async()=>{delete this.localData[t];try{let r=await this.db.getObjectDefault("/baidu_driver",{});delete r[t];let n={...r,...this.localData};return await this.db.push("/baidu_driver",n),!0}catch{return!1}}):!1}getAll(){return{...this.localData}}async clear(){return this._enqueue(async()=>{this.localData={};try{return await this.db.delete("/baidu_driver"),!0}catch{return!1}})}isInitialized(){return this.initialized}},nl=new zCe,AB=es("baidu.fileSize",{maxSize:2e3,ttl:60*60*1e3}),txe="12.0.0",d8t="android_12_zhao_bd-netdisk_1024266h",q0n=`${txe}ae5821440fab5e1a61a025f014bd8972`,vG="netdisk;P2SP;2.2.91.136;android-android;",rxe="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",H0n="ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF",Yx=500,V0n=60*60*1e3,j0n=2*60*60*1e3,K0n=12*60*60*1e3,G0n=5*60*1e3,EB=new Map,AG=new Map,_B=new Map,f8t=new Map,h8t=new Map,p8t=new Map;t_=async e=>{nl.isInitialized()||await nl.init(e.server.db)};Qx=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.randsk=""}get cookie(){return _8t()}get legacyCookie(){return g8t()}get shareCookie(){return this.randsk?e8t(this.cookie,"BDCLND",this.randsk):this.cookie}get accountKey(){return R0(this.cookie)}async getSurl(t){this.link=t;let r=this.regex.exec(t);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.slice(1),this.pwd=r[2]||"",_G(this))}async getSign(){let t={...this.headers,cookie:this.shareCookie},r=await ve.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:t,timeout:8e3});if(!r.data?.data?.sign)throw new Error("\u83B7\u53D6sign\u5931\u8D25");return r.data.data.sign}async getRandsk(t=1e4,r={}){let n=r?.forceRefresh===!0,s={surl:this.surl,pwd:this.pwd,accountKey:this.accountKey};if(n)this.randsk="",r8t(s);else if(_G(this),this.randsk)return this.randsk;let i=SG(s),a=await YCe(f8t,i,async()=>{let o=n?null:A8t(s);if(o?.randsk)return o.randsk;let c=l8t.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),u=this.link;try{u=new URL(this.link).toString()}catch{u=`${this.api}/s/${this.surl}${this.pwd?`?pwd=${encodeURIComponent(this.pwd)}`:""}`}let l=await ve.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,c,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Referer:u},timeout:t});if(!l.data?.randsk){console.warn("[baidu auth] share verify missing randsk",{errno:l.data?.errno,shareKey:ru(this.surl,12),accountKey:this.accountKey.slice(0,12)});let d=new Error("\u83B7\u53D6randsk\u5931\u8D25");throw d.baiduErrno=Number(l.data?.errno),d}return t8t(s,l.data.randsk),l.data.randsk});return this.randsk=a,a}async getShareList(){let t=Date.now();_G(this),this.headers.cookie=this.randsk?this.shareCookie:this.legacyCookie||this.cookie;let r=!1,n=async(a=1,o=[],c={})=>{let l=(await ve.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=${a}&num=${Yx}&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers,timeout:1e4})).data;if(a===1&&(c.uk=l?.uk||c.uk||"",c.shareid=l?.share_id||l?.shareid||c.shareid||"",c.errno=Number(l?.errno),c.hasList=Array.isArray(l?.list)),Number(l?.errno)===-21)return console.warn("[baidu detail] share canceled",JSON.stringify({surl:this.surl,shorturl:this.shorturl})),c.canceled=!0,{items:o,meta:c};if(l.errno!==0||!Array.isArray(l.list)||l.list.length===0)return{items:o,meta:c};o.push(...l.list);let d=Number(l.has_more||l.hasMore||0)===1||Number(l.records?.has_more||0)===1,f=Number(l.num||Yx);return d||l.list.length>=f?await n(a+1,o,c):{items:o,meta:c}},s=await n();if(s.items.length>0&&!this.randsk){let a=QCe(this.legacyCookie,"BDCLND");a&&(this.randsk=a,t8t({surl:this.surl,pwd:this.pwd,accountKey:this.accountKey},a))}!s.meta?.canceled&&s.items.length===0&&(s.meta?.errno!==0||!s.meta?.hasList)&&(await this.getRandsk(),r=!0,this.headers.cookie=this.shareCookie,s=await n(1,[],{retriedAfterVerify:!0}));let i=s.items||[];if(s.meta?.canceled)return[];if(i.length>0){let a=[],o=[];this.uk=s.meta?.uk||i[0]?.uk||this.uk,this.shareid=s.meta?.shareid||i[0]?.share_id||i[0]?.shareid||this.shareid;let c=[],u=[];for(let d of i)if((d.category==="6"||d.category===6)&&o.push(d.path),d.category==="1"||d.category===1)d.name=d.server_filename||d.path.split("/").pop(),c.push(d);else{let f=d.server_filename||d.path?.split("/").pop()||"";vt(f)&&(d.name=f,u.push(d))}let l=Kt(c);for(let d of l){let f=d.fs_id||d.fsid,h=Ir(d.name,u,g=>g.server_filename||g.path?.split("/").pop()||g.name||""),p=h&&(h.fs_id||h.fsid)||"",m=encodeURIComponent(this.pwd||""),_=d.path.replaceAll("#","\0");AB.set(`${this.surl}_${f}`,d.size),a.push({vod_name:d.name,vod_id:Ot([_,this.uk,this.shareid,f,this.surl,m,p],{structured:!0}),vod_size:d.size})}if(o.length>0){let d=Date.now(),f=o.map(p=>this.getSharepath(p));(await Promise.allSettled(f)).forEach(p=>{p.status==="fulfilled"&&p.value?.length>0&&a.push(...p.value)}),console.log("[baidu detail] perf",JSON.stringify({surl:this.surl,rootItems:i.length,rootDirs:o.length,totalVideos:a.length,verifiedForList:r,pageSize:Yx,subdirMs:Date.now()-d,totalMs:Date.now()-t}))}else console.log("[baidu detail] perf",JSON.stringify({surl:this.surl,rootItems:i.length,rootDirs:0,totalVideos:a.length,verifiedForList:r,pageSize:Yx,subdirMs:0,totalMs:Date.now()-t}));return a}return null}async getSharepath(t){this.headers.cookie=this.shareCookie;let r=async(s=1,i=[])=>{let o=(await ve.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=${s}&num=${Yx}&dir=${encodeURIComponent(t)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers,timeout:8e3})).data;if(o.errno!==0||!Array.isArray(o.list)||o.list.length===0)return i;i.push(...o.list);let c=Number(o.has_more||o.hasMore||0)===1||Number(o.records?.has_more||0)===1,u=Number(o.num||Yx);return c||o.list.length>=u?await r(s+1,i):i},n=await r();if(n.length>0){let s=[],i=[],a=[];for(let u of n)if((u.category==="6"||u.category===6)&&s.push(u.path),u.category==="1"||u.category===1)u.name=u.server_filename||u.path.split("/").pop(),i.push(u);else{let l=u.server_filename||u.path?.split("/").pop()||"";vt(l)&&(u.name=l,a.push(u))}let o=Kt(i),c=[];for(let u of o){let l=u.fs_id||u.fsid,d=Ir(u.name,a,m=>m.server_filename||m.path?.split("/").pop()||m.name||""),f=d&&(d.fs_id||d.fsid)||"",h=encodeURIComponent(this.pwd||""),p=u.path.replaceAll("#","\0");AB.set(`${this.surl}_${l}`,u.size),c.push({vod_name:u.name,vod_id:Ot([p,this.uk,this.shareid,l,this.surl,h,f],{structured:!0}),vod_size:u.size})}if(s.length>0){let u=s.map(f=>this.getSharepath(f)),d=(await Promise.allSettled(u)).filter(f=>f.status==="fulfilled"&&f.value?.length>0).flatMap(f=>f.value);return[...c,...d]}return c}return[]}sha1(t){return e_.default.SHA1(t).toString(e_.default.enc.Hex)}async getUid(){let t=this.accountKey,r=_B.get(t);return r&&(r.expiresAt||0)>Date.now()?r.uid:(r&&_B.delete(t),await YCe(h8t,t,async()=>{let n=_B.get(t);if(n&&(n.expiresAt||0)>Date.now())return n.uid;let s={...this.headers,cookie:this.cookie},a=(await ve.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:s,timeout:8e3})).data?.data?.fields?.uid;return a?(_B.set(t,{uid:a,createdAt:Date.now(),expiresAt:Date.now()+K0n}),a):"default_uid"}))}async getShareUrl(t,r,n,s){t=t.replaceAll("\0","#");let i=await this.getSign(),a=Math.floor(Date.now()/1e3),o=[];return this.type.forEach(c=>{o.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${a}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),o}async getAppShareUrl(t,r,n,s){t=t.replaceAll("\0","#");let[i,a]=await Promise.all([this.getUid(),this.getRandsk()]),o=a,c=this.cookie,u=QCe(c,"BDUSS");if(!u)return console.warn("[baidu share][app] cookie missing BDUSS"),null;let l=async f=>{let h={...this.headers,"User-Agent":vG,Referer:"https://pan.baidu.com/",cookie:e8t(c,"BDCLND",f)},p=String(Date.now()),m=E8t({sha1:this.sha1.bind(this),bduss:u,uid:i,time:p}),_=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+f+"&origin=dlna&devuid="+rxe+"&clienttype=1&channel="+d8t+"&version="+txe+"&time="+p+"&rand="+m,g=await ve.get(_,{headers:h,timeout:1e4}),y=Number(g.data?.errno)===0?y8t(g.data):[];return{errno:Number(g.data?.errno),directUrl:y[0]?.dlink||"",hasList:Array.isArray(g.data?.list),hasInfo:Array.isArray(g.data?.info)}},d=await l(o);return!d.directUrl&&d.errno===-9&&this.pwd&&(r8t({surl:this.surl,pwd:this.pwd,accountKey:this.accountKey}),o=await this.getRandsk(1e4,{forceRefresh:!0}),d=await l(o)),d.directUrl?d.directUrl:(console.warn("[baidu share][app] no dlink errno=%s hasList=%s hasInfo=%s shareKey=%s fileKey=%s",d.errno,d.hasList,d.hasInfo,ru(this.surl,12),ru(s,12)),null)}};SB="app",S8t="web",yB="redirect",T8t="chunk",nu="play",Zg="subtitle",i8t=30*60*1e3,Z0n=128,ehn=128,thn=1024,rhn=1024,Wx="invalidate",Xx="retain",vB="mark",nhn=5*60*1e3,shn=2*60*1e3,ihn=10*60*1e3,ahn=2500,ohn=60*1e3,uy=Object.create(null);P8t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",L8t=vG;k8t={"User-Agent":L8t,Referer:"https://pan.baidu.com/"}});var dxe={};Ft(dxe,{detail:()=>Bs,getPanInfos:()=>Co,init:()=>Wi,isEmpty:()=>S1e,play:()=>Zs,proxy:()=>Us,test:()=>Yhn,ua:()=>CB});async function Wi(e,t){return{}}function CG(e,t="srt",r="\u5916\u6302\u5B57\u5E55"){return e?[{url:e,name:r,format:t||"srt"}]:[]}async function Khn(e){let t=new Map,r=20;for(let n=0;n{let o=`type_${a}`,c=r_.get(o);if(c&&Date.now()-c.timestamp{try{let a=null;switch(e){case"ali":a=await u3t(t,r);break;case"quark":a=await I3t(t,r);break;case"uc":a=await H3t(t,r);break;case"tianyi":let o=await cy.getShareData(t);if(o?.length>0){let u=await ht("tianyi"),l=Ro(u,o,!1);l&&(a=[l])}break;case"yidong":let c=await hb.getShareData(t);if(c?.length>0){let u=await ht("yidong"),l=Ro(u,c,!1);l&&(a=[l])}break;case"123":a=await u4t(t,r);break;case"115":a=await b4t(t,r);break;case"baidu":a=await O8t(t,r);break;case"xunlei":a=await rFt(t,r);break;case"magnet":a=await IBt(t,r);break;case"guangya":a=await gBt(t);break}if(a=Array.isArray(a)?a:[],s&&r_.set(n,{data:a,timestamp:Date.now()}),r_.size>200){let o=Array.from(r_.keys());for(let c=0;c<50;c++)r_.delete(o[c])}return{data:a,type:e}}catch(a){return console.debug(`\u5904\u7406${e}\u94FE\u63A5\u5931\u8D25:`,t,a.message),{data:[],type:e}}})}function zhn(e,t){let r=new Map,n=[];for(let s=0;sU8t&&r_.delete(y);if(e=Array.isArray(e)?e:[e],e.length===0)return{froms:"",urls:"",links:[]};let n=await Khn(e),s=new Map;for(let[y,A]of e.entries()){let E=n.get(A);E&&(s.has(E)||s.set(E,[]),s.get(E).push({url:A,sourceIndex:y}))}let i=[],a=[],o=Array.from(s.entries()).map(async([y,A])=>{let E=A.map(({url:b,sourceIndex:I})=>Ghn(y,b,t).then(T=>({...T,shareUrl:b,sourceIndex:I})));(await Promise.allSettled(E)).forEach(b=>{if(b.status==="fulfilled"&&b.value.data.length>0){let I=!1;b.value.data.forEach((T,x)=>{T?.from&&T?.url&&(i.push({from:T.from,url:T.url,type:b.value.type,routeKey:T.routeKey||"",sourceIndex:b.value.sourceIndex,routeIndex:x}),I=!0)}),I&&a.push({type:b.value.type,url:b.value.shareUrl,sourceIndex:b.value.sourceIndex})}})});if(await Promise.all(o),i.length===0)return{froms:"",urls:"",links:[]};let c=globalThis.Pans||[],u=new Map;c.forEach((y,A)=>{u.set(y.key,A)});let l=[];for(let y of i){let A=y.type,E=A==="magnet"?c.find(v=>v.key==="magnet"&&v.enable)||c.find(v=>v.key==="magnet_guangya"&&v.enable):c.find(v=>v.key===A);E&&E.enable&&l.push({...y,order:u.get(A)??999,subOrder:hj(A,y.routeKey,c)})}if(l.sort((y,A)=>y.order-A.order||y.sourceIndex-A.sourceIndex||y.subOrder-A.subOrder||y.routeIndex-A.routeIndex),l.length===0)return{froms:"",urls:"",links:[]};let d=l.map(y=>y.from),f=l.map(y=>y.url),h=l.map(y=>y.type),p=zhn(d,h),m=new Set(l.map(y=>y.type)),_=new Map,g=a.filter(y=>m.has(y.type)).sort((y,A)=>(u.get(y.type)??999)-(u.get(A.type)??999)||y.sourceIndex-A.sourceIndex).map(y=>{let A=c.find(v=>v.key===y.type)?.name||ht(y.type)||y.type,E=(_.get(A)||0)+1;return _.set(A,E),{name:E===1?A:`${A}${E}`,url:y.url}});return{froms:p.join("$$$"),urls:f.join("$$$"),links:g}}async function Us(e,t){switch(e.params.site){case"ali":return await f3t(e,t);case"quark":return await R3t(e,t);case"uc":return await K3t(e,t);case"baidu":return await D8t(e,t);case"115":return await I4t(e,t);case"tianyi":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};await fb(e);{let n=await cy.getShareUrl(e.params.fileId,e.params.shareId);if(!n)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(n);return}case"yidong":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};{let n=await hb.getSharePlay(e.params.fileId,e.params.shareId);if(!n)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(n);return}case"123":if(e.params.flag==="direct")return await c4t(e,t,e.params.fileId);if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};await S0(e);{let n=String(e.params.fileId||""),s=n;try{s=decodeURIComponent(n)}catch{}let i=s.split("*");if(i.length<4)return t.code(400),{error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"};let a=await tl.getDownload(e.params.shareId,i[0],i[1],i[2],i[3]);if(!a)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(a);return}case"xunlei":if(e.params.flag==="subt"){await tu(e);{let n=String(e.params.fileId||""),s=Mr(n,{decodeUri:!0});if(s.length<4)return t.code(400),{error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"};let i=await JUt(e.params.shareId,s[0],s[1],s[2],s[3],!1);if(!i)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(i);return}}return await ZUt(e,t);case"guangya":return await vBt(e,t);default:return{error:"\u4E0D\u652F\u6301\u7684\u7AD9\u70B9"}}}async function Zs(e,t){let r=String(e?.body?.flag||""),n=String(e?.body?.id||""),s=["\u78C1\u529B","115\u4E91\u8F6C\u5B58","\u5149\u9E2D\u4E91\u8F6C\u5B58",ht("magnet"),ht("magnet_guangya")].filter(Boolean),i=n.startsWith("gyown*")||s.some(a=>r.startsWith(a));if(r.startsWith("\u79D2\u4F20115"))return await W4(e,t);if(r.startsWith("\u79D2\u4F20123"))return await nRe(e,t);if(r.startsWith(wK))return await sB(e,t);if(i)return await RBt(e,t);if(r.startsWith(await ht("ali")))return await W4(e,t);if(r.startsWith(await ht("quark")))return await AK(e,t);if(r.startsWith(await ht("uc")))return await sB(e,t);if(r.startsWith(await ht("tianyi"))){let a=Mr(n);await fb(e);let o=await cy.getShareUrl(a[0],a[1]),c=$g(e,"tianyi"),u={parse:0,url:Q6t(a[0])?["\u5FEB\u4F20",o]:["\u539F\u753B",o]};if(a[3]){let l=`${c}/src/subt/${a[1]}/${encodeURIComponent(a[3])}/.srt`;return Xs({parse:0,urls:u.url,subtitles:CG(l,"srt")})}return u}else if(r.startsWith(await ht("yidong"))){let a=Mr(n),o;try{o=await hb.getSharePlayInfo(a[0],a[1],a[3]||"")}catch(d){return Wr(`\u79FB\u52A8\u4E91\u76D8\u64AD\u653E\u5931\u8D25: ${d?.message||d}`)}let c=o?.url||"";if(!c)return Wr(o?.error||"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");let u=$g(e,"yidong"),l={parse:0,url:["\u539F\u753B",c]};if(a[2]){let d=`${u}/src/subt/${a[1]}/${encodeURIComponent(a[2])}/.srt`;return Xs({parse:0,urls:l.url,subtitles:CG(d,"srt")})}return l}else{if(r.startsWith(await ht("guangya")))return await Zj(e);if(r.startsWith(Sx)){let a=Mr(n),o=a[0]==="direct"?String(a[1]||"").trim():"";return await Bj(e,o,a[2])||Wr("123\u65E0\u9650\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740")}else if(r.startsWith(await ht("123"))){await S0(e);let a=Mr(n),o=$g(e,"123"),u={parse:0,url:["\u539F\u753B",await tl.getDownload(a[0],a[1],a[2],a[3],a[4])]};if(a[5]&&a[6]&&a[7]&&a[8]){let l=encodeURIComponent([a[5],a[6],a[7],a[8]].join("*")),d=`${o}/src/subt/${a[0]}/${l}/.srt`;return Xs({parse:0,urls:u.url,subtitles:CG(d,"srt")})}return u}else{if(r.startsWith(await ht("115")))return await nRe(e,t);if(r.startsWith(await ht("baidu")))return await IG(e,t);if(r.startsWith(await ht("xunlei"))){await tu(e);let a=Mr(n),o=a[0]||"",c=a[1]||"",u=a[2]||"",l=a[3]||"",d=a[4]?decodeURIComponent(a[4]):"",f=await CCe(o,c,u,d,l,!0),h=$g(e,"xunlei"),p=encodeURIComponent([c,u,l,encodeURIComponent(d||"")].join("*")),m=["\u4EE3\u7406",`${h}/src/down/${a[0]}/${p}/.bin`],_=["\u539F\u753B",`${h}/src/redirect/${a[0]}/${p}/.bin`],g=[...m];for(let A=0;A0){let a=n.home.class[0].type_id,o={};if(n.home.filters?.[a]&&n.home.filters[a].forEach(c=>{let u=c.init;u&&c.value.forEach(l=>{l.v==u&&(o[c.key]=u)})}),s=await e.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),console.debug(s.json()),n.category.list?.length>0){i=!0;let c=n.category.list[0].vod_id;await B8t(e,c,n)}}if(s=await e.server.inject().post(`${r}/search`).payload({wd:"\u6D4B\u8BD5",page:1}),n.search=s.json(),console.debug(s.json()),!i&&n.search.list?.length>0){let a=n.search.list[0].vod_id;await B8t(e,a,n)}return n}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}async function B8t(e,t,r){let n=e.server.prefix,s=await e.server.inject().post(`${n}/detail`).payload({id:t});if(r.detail=s.json(),console.debug(s.json()),r.detail.list?.length>0){r.play=[];for(let i of r.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{ws();wx();eB();iB();zK();rK();KCe();GCe();$4();GE();RB();Cx();ua();NE();Xc();wi();y0();$l();qg();NE();CB=ax,lxe=class{constructor(t=5){this.maxConcurrency=t,this.queue=[],this.running=0}async process(t){return new Promise((r,n)=>{this.queue.push({task:t,resolve:r,reject:n}),this.run()})}async run(){if(this.running>=this.maxConcurrency||this.queue.length===0)return;this.running++;let{task:t,resolve:r,reject:n}=this.queue.shift();try{let s=await t();r(s)}catch(s){n(s)}finally{this.running--,this.run()}}};r_=new Map,U8t=10*60*1e3,Hhn=5*60*1e3,Vhn="subtitle_v2";jhn=new lxe(10);Co=()=>[{key:"yidong",name:ht("yidong"),validator:rj,pic:"https://pp.myapp.com/ma_icon/0/icon_242055_1780279783/256"},{key:"tianyi",name:ht("tianyi"),validator:tj,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"115",name:ht("115"),validator:sj,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"quark",name:ht("quark"),validator:Z7,pic:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTxSZTMZgv4lvF6G3HU0O9yXx59bF4vNJkY_ZvT5lQWog&s=10"},{key:"uc",name:ht("uc"),validator:ej,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0"},{key:"ali",name:ht("ali"),validator:J7,pic:"https://cdn-1.webcatalog.io/catalog/aliyundrive/aliyundrive-icon-filled-256.png?v=1714773187515"},{key:"123",name:ht("123"),validator:nj,pic:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSr7z3sM7s5fyeHphwYvBGwjOroJIEltqMqB9b8W5WFfSXViOzxMRjmgv0&s=10"},{key:"baidu",name:ht("baidu"),validator:ij,pic:"https://p1.ssl.qhimgs1.com/bdr/576__/t0414ace7e627f1689b.jpg"},{key:"xunlei",name:ht("xunlei"),validator:ALt,pic:"https://img.nkzy.com/nkzy/imgfile/20240130/30171032v4el.png"},{key:"guangya",name:ht("guangya"),validator:oj,pic:"https://pp.myapp.com/ma_icon/0/icon_54641066_1783673467/256"},{key:"magnet",name:ht("magnet"),validator:aj,pic:"https://img.icons8.com/fluency/96/magnet.png"}]});var gxe={};Ft(gxe,{buildRequestKey:()=>pb,clearInflightRequests:()=>Whn,getConcurrencyStats:()=>mxe,getInflightStats:()=>q8t,getLimiter:()=>wG,getLimiterStats:()=>$8t,limiterTypeFromSpiderUrl:()=>hxe,resetInflightStats:()=>pxe,withConcurrencyControl:()=>Un,withInflightDedup:()=>ew});function wG(e="default"){return xG[e]||xG.default}function hxe(e){if(typeof e!="string"||!e.startsWith("/spider/"))return null;let t=e.match(/^\/spider\/[^/]+\/[^/]+\/([^/?]+)/);if(!t)return null;let r=t[1];return Object.prototype.hasOwnProperty.call(F8t,r)&&r!=="default"?r:null}function $8t(){return Object.entries(xG).map(([e,t])=>({type:e,...t.stats}))}async function ew(e,t,r=3e4){if(C0.totalRequests++,_p.has(e))return C0.dedupedRequests++,_p.get(e);let n=Promise.race([t(),new Promise((s,i)=>setTimeout(()=>i(new Error(`Request timeout after ${r}ms`)),r))]).finally(()=>{_p.delete(e),C0.activeRequests=_p.size});return _p.set(e,n),C0.activeRequests=_p.size,n}function q8t(){return{count:_p.size,totalRequests:C0.totalRequests,dedupedRequests:C0.dedupedRequests,dedupRate:C0.totalRequests>0?C0.dedupedRequests/C0.totalRequests:0,keys:Array.from(_p.keys())}}function pxe(){C0={totalRequests:0,dedupedRequests:0,activeRequests:_p.size}}async function Un(e,t,r,n,s={}){let{enableDedup:i=!0,timeout:a=3e4,limiterType:o=t}=s,c=wG(o),u=`${e}:${t}:${r}`;return c.run(async()=>i?ew(u,n,a):n())}function pb(e,t={}){let r=Object.entries(t).filter(([n,s])=>s!=null).sort(([n],[s])=>n.localeCompare(s));return r.length===0?e:`${e}:${JSON.stringify(r)}`}function Whn(){_p.clear(),C0.activeRequests=0}function mxe(){return{limiters:$8t(),inflight:q8t()}}var fxe,Qhn,F8t,xG,_p,C0,da=ae(()=>{fxe=class{constructor(t){this.baseConcurrency=t,this.concurrency=t,this.activeCount=0,this.pendingCount=0,this.queue=[],this.memoryPressureMode=!1}adjustConcurrency(){let r=process.memoryUsage().rss,n=200*1024*1024,s=240*1024*1024;r>s?(this.concurrency=Math.max(5,Math.floor(this.baseConcurrency*.2)),this.memoryPressureMode=!0):r>n?(this.concurrency=Math.max(10,Math.floor(this.baseConcurrency*.5)),this.memoryPressureMode=!0):(this.concurrency=this.baseConcurrency,this.memoryPressureMode=!1)}async run(t){return new Promise((r,n)=>{this.queue.push({fn:t,resolve:r,reject:n}),this.pendingCount=this.queue.length,this.tryRun()})}tryRun(){if(this.activeCount%10===0&&this.adjustConcurrency(),this.activeCount>=this.concurrency||this.queue.length===0)return;let{fn:t,resolve:r,reject:n}=this.queue.shift();this.pendingCount=this.queue.length,this.activeCount++,Promise.resolve().then(()=>t()).then(r,n).finally(()=>{this.activeCount--,this.tryRun()})}get stats(){return{activeCount:this.activeCount,pendingCount:this.pendingCount,limit:this.concurrency,baseLimit:this.baseConcurrency,memoryPressure:this.memoryPressureMode}}async acquire(){return new Promise(t=>{this.queue.push({fn:()=>new Promise(r=>t(r)),resolve:()=>{},reject:()=>{}}),this.pendingCount=this.queue.length,this.tryRun()})}},Qhn=parseInt(process.env.SEARCH_CONCURRENCY||"50",10),F8t={home:20,category:30,detail:30,play:40,search:Qhn,default:50},xG={};for(let[e,t]of Object.entries(F8t))xG[e]=new fxe(t);_p=new Map,C0={totalRequests:0,dedupedRequests:0,activeRequests:0}});var Axe={};Ft(Axe,{AD_QUERY_KEY_RE:()=>H8t,isLikelyAdSegment:()=>j8t,normalizeM3U8Content:()=>_xe,sanitizeMediaUrl:()=>mb,stripAivinLeadingAdBlock:()=>K8t});function Jhn(e){if(typeof e!="string")return"";try{return decodeURIComponent(e)}catch{return e}}function V8t(e,t=3){let r=String(e||"").trim();for(let n=0;n0&&t<=2&&/(ad|gg|promo)/i.test(r)):!1}function epn(e,t){let r=String(e||"").trim();return!r||!/URI=/i.test(r)?r:r.replace(/URI=(?:"([^"]+)"|([^,]+))/i,(n,s,i)=>{let a=String(s||i||"").trim();if(!a)return n;let o=mb(NG(V8t(a),t));return/^https?:\/\//i.test(o)?`URI="${o}"`:n})}function tpn(e,t=2){try{let r=new URL(e),s=(r.pathname||"").split("/").filter(Boolean).slice(0,t).join("/");return`${r.host}/${s}`}catch{return""}}function K8t(e,t){let r=e.map(p=>String(p||"").trim()).filter(Boolean),n=NaN,s=[],i=new Map;for(let p=0;po&&(a=p,o=m);if(!a||op.sig===a);if(!c||!u||u.lineIndex<=c.lineIndex)return r;let l=[];for(let p=0;p=0;p--){let m=r[p];if(m){if(!m.startsWith("#"))break;if(m.startsWith("#EXTINF:")||m.startsWith("#EXT-X-KEY")||m.startsWith("#EXT-X-MAP")||m.startsWith("#EXT-X-BYTERANGE")||m==="#EXT-X-DISCONTINUITY"){d=p;continue}break}}let f=r.slice(d);for(;f.length>0&&f[0]==="#EXT-X-DISCONTINUITY";)f.shift();for(;f.length>0&&f[f.length-1]==="#EXT-X-DISCONTINUITY";)f.pop();if(f.length===0)return r;let h=[...l.filter((p,m)=>l.indexOf(p)===m&&!f.includes(p)),...f];return h[0]!=="#EXTM3U"&&h.unshift("#EXTM3U"),h}function _xe(e,t,r=null){let n=Zhn(e);if(!n.includes("#EXTM3U"))return n;let s=n.replace(/\r\n/g,` -`).split(` -`),i=[];for(let c=0;c0&&i[i.length-1]==="#EXT-X-DISCONTINUITY"&&i.pop(),c=p;continue}}}i.push(f);continue}let d=mb(NG(l,t));d&&(d.toLowerCase().includes(".m3u8")&&typeof r=="function"?i.push(r(d)):i.push(d))}let a=K8t(i,t),o=[];for(let c=0;c{Xhn=/^#EXT-(?:X-DATERANGE|X-CUE-OUT|X-CUE-OUT-CONT|X-CUE-IN|X-ASSET|OATCLS-SCTE35|X-SCTE35)/i,H8t=/^(ad|ads|adv|advert|advertise|adtag|adid|adurl|adtoken|gg|popup|pop|commercial)$/i});var UG=S(n_=>{"use strict";Object.defineProperty(n_,"__esModule",{value:!0});n_.DefaultXMLBuilderCBOptions=n_.XMLBuilderOptionKeys=n_.DefaultBuilderOptions=void 0;n_.DefaultBuilderOptions={version:"1.0",encoding:void 0,standalone:void 0,keepNullNodes:!1,keepNullAttributes:!1,ignoreConverters:!1,skipWhitespaceOnlyText:!0,convert:{att:"@",ins:"?",text:"#",cdata:"$",comment:"!"},defaultNamespace:{ele:void 0,att:void 0},namespaceAlias:{html:"http://www.w3.org/1999/xhtml",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"},invalidCharReplacement:void 0,parser:void 0};n_.XMLBuilderOptionKeys=new Set(Object.keys(n_.DefaultBuilderOptions));n_.DefaultXMLBuilderCBOptions={format:"xml",wellFormed:!1,prettyPrint:!1,indent:" ",newline:` -`,offset:0,width:0,allowEmptyTags:!1,spaceBeforeSlash:!1,keepNullNodes:!1,keepNullAttributes:!1,ignoreConverters:!1,convert:{att:"@",ins:"?",text:"#",cdata:"$",comment:"!"},defaultNamespace:{ele:void 0,att:void 0},namespaceAlias:{html:"http://www.w3.org/1999/xhtml",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"}}});var n5t=S(FG=>{"use strict";Object.defineProperty(FG,"__esModule",{value:!0});FG.FixedSizeSet=void 0;var Pxe=class{_limit;_items=new Set;constructor(t=1e3){this._limit=t}add(t){if(this._items.add(t),this._items.size>this._limit){let r=this._items.values().next();r.done||this._items.delete(r.value)}return this}delete(t){return this._items.delete(t)}has(t){return this._items.has(t)}clear(){this._items.clear()}get size(){return this._items.size}forEach(t,r){this._items.forEach(n=>t.call(r,n,n,this))}*keys(){yield*this._items.keys()}*values(){yield*this._items.values()}*entries(){yield*this._items.entries()}*[Symbol.iterator](){yield*this._items}get[Symbol.toStringTag](){return"FixedSizeSet"}};FG.FixedSizeSet=Pxe});var s5t=S($G=>{"use strict";Object.defineProperty($G,"__esModule",{value:!0});$G.ObjectCache=void 0;var Lxe=class{_limit;_items=new Map;constructor(t=1e3){this._limit=t}get(t){return this._items.get(t)}set(t,r){if(this._items.set(t,r),this._items.size>this._limit){let n=this._items.keys().next();n.done||this._items.delete(n.value)}}delete(t){return this._items.delete(t)}has(t){return this._items.has(t)}clear(){this._items.clear()}get size(){return this._items.size}forEach(t,r){this._items.forEach((n,s)=>t.call(r,s,n))}*keys(){yield*this._items.keys()}*values(){yield*this._items.values()}*entries(){yield*this._items.entries()}*[Symbol.iterator](){yield*this._items}get[Symbol.toStringTag](){return"ObjectCache"}};$G.ObjectCache=Lxe});var i5t=S(qG=>{"use strict";Object.defineProperty(qG,"__esModule",{value:!0});qG.CompareCache=void 0;var Mxe=class{_limit;_items=new Map;constructor(t=1e3){this._limit=t}check(t,r){if(this._items.get(t)===r)return!0;if(this._items.get(r)===t)return!1;let n=Math.random()<.5;if(n?this._items.set(t,r):this._items.set(r,t),this._items.size>this._limit){let s=this._items.keys().next();s.done||this._items.delete(s.value)}return n}};qG.CompareCache=Mxe});var a5t=S(HG=>{"use strict";Object.defineProperty(HG,"__esModule",{value:!0});HG.Lazy=void 0;var kxe=class{_initialized=!1;_initFunc;_value;constructor(t){this._value=void 0,this._initFunc=t}get value(){return this._initialized||(this._value=this._initFunc(),this._initialized=!0),this._value}};HG.Lazy=kxe});var o5t=S(VG=>{"use strict";Object.defineProperty(VG,"__esModule",{value:!0});VG.StringWalker=void 0;var Bxe=class{_chars;_length;_pointer=0;_codePoint;_c;_remaining;_substring;constructor(t){this._chars=Array.from(t),this._length=this._chars.length}get eof(){return this._pointer>=this._length}get length(){return this._length}codePoint(){if(this._codePoint===void 0)if(this.eof)this._codePoint=-1;else{let t=this._chars[this._pointer].codePointAt(0);t!==void 0?this._codePoint=t:this._codePoint=-1}return this._codePoint}c(){return this._c===void 0&&(this._c=this.eof?"":this._chars[this._pointer]),this._c}remaining(){return this._remaining===void 0&&(this._remaining=this.eof?"":this._chars.slice(this._pointer+1).join("")),this._remaining}substring(){return this._substring===void 0&&(this._substring=this.eof?"":this._chars.slice(this._pointer).join("")),this._substring}get pointer(){return this._pointer}set pointer(t){t!==this._pointer&&(this._pointer=t,this._codePoint=void 0,this._c=void 0,this._remaining=void 0,this._substring=void 0)}};VG.StringWalker=Bxe});var Wn=S(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.StringWalker=pn.Lazy=pn.CompareCache=pn.ObjectCache=pn.FixedSizeSet=void 0;pn.applyMixin=kpn;pn.applyDefaults=c5t;pn.forEachArray=Bpn;pn.forEachObject=u5t;pn.arrayLength=Upn;pn.objectLength=Fpn;pn.getObjectValue=$pn;pn.removeObjectValue=qpn;pn.clone=jG;pn.isBoolean=Hpn;pn.isNumber=Vpn;pn.isString=jpn;pn.isFunction=Uxe;pn.isObject=Fxe;pn.isArray=$xe;pn.isSet=qxe;pn.isMap=tw;pn.isEmpty=Kpn;pn.isPlainObject=Hxe;pn.isIterable=Gpn;pn.getValue=zpn;pn.utf8Encode=Ypn;pn.utf8Decode=Qpn;var Opn=n5t();Object.defineProperty(pn,"FixedSizeSet",{enumerable:!0,get:function(){return Opn.FixedSizeSet}});var Dpn=s5t();Object.defineProperty(pn,"ObjectCache",{enumerable:!0,get:function(){return Dpn.ObjectCache}});var Ppn=i5t();Object.defineProperty(pn,"CompareCache",{enumerable:!0,get:function(){return Ppn.CompareCache}});var Lpn=a5t();Object.defineProperty(pn,"Lazy",{enumerable:!0,get:function(){return Lpn.Lazy}});var Mpn=o5t();Object.defineProperty(pn,"StringWalker",{enumerable:!0,get:function(){return Mpn.StringWalker}});function kpn(e,t,...r){Object.getOwnPropertyNames(t.prototype).forEach(n=>{if(n!=="constructor"){if(r.indexOf(n)!==-1){let i=Object.getOwnPropertyDescriptor(e.prototype,n);i&&Object.defineProperty(e.prototype,"_"+n,i)}let s=Object.getOwnPropertyDescriptor(t.prototype,n);s&&Object.defineProperty(e.prototype,n,s)}})}function c5t(e,t,r=!1){let n=jG(e||{});return u5t(t,(s,i)=>{Hxe(i)?n[s]=c5t(n[s],i,r):(r||n[s]===void 0)&&(n[s]=i)}),n}function Bpn(e,t,r){e.forEach(t,r)}function u5t(e,t,r){if(tw(e))e.forEach((n,s)=>t.call(r,s,n));else for(let n in e)e.hasOwnProperty(n)&&t.call(r,n,e[n])}function Upn(e){return qxe(e)?e.size:e.length}function Fpn(e){return tw(e)?e.size:Object.keys(e).length}function $pn(e,t){return tw(e)?e.get(t):e[t]}function qpn(e,t){tw(e)?e.delete(t):delete e[t]}function jG(e){if(Uxe(e))return e;if($xe(e)){let t=[];for(let r of e)t.push(jG(r));return t}else if(Hxe(e)){let t={};for(let r in e)if(e.hasOwnProperty(r)){let n=e[r];t[r]=jG(n)}return t}else return e}function Hpn(e){return typeof e=="boolean"}function Vpn(e){return typeof e=="number"}function jpn(e){return typeof e=="string"}function Uxe(e){return!!e&&typeof e=="function"}function Fxe(e){let t=typeof e;return!!e&&(t==="function"||t==="object")}function $xe(e){return Array.isArray(e)}function qxe(e){return e instanceof Set}function tw(e){return e instanceof Map}function Kpn(e){if($xe(e))return!e.length;if(qxe(e))return!e.size;if(tw(e))return!e.size;if(Fxe(e)){for(let t in e)if(e.hasOwnProperty(t))return!1;return!0}return!1}function Hxe(e){if(Fxe(e)){let t=Object.getPrototypeOf(e),r=t.constructor;return t&&r&&typeof r=="function"&&r instanceof r&&Function.prototype.toString.call(r)===Function.prototype.toString.call(Object)}return!1}function Gpn(e){return e&&typeof e[Symbol.iterator]=="function"}function zpn(e){return Uxe(e.valueOf)?e.valueOf():e}function Ypn(e){let t=new Uint8Array(e.length*4),r=0;for(let n=0;n>6|192;else{if(s>55295&&s<56320){if(++n>=e.length)throw new Error("Incomplete surrogate pair.");let i=e.charCodeAt(n);if(i<56320||i>57343)throw new Error("Invalid surrogate character.");s=65536+((s&1023)<<10)+(i&1023),t[r++]=s>>18|240,t[r++]=s>>12&63|128}else t[r++]=s>>12|224;t[r++]=s>>6&63|128}t[r++]=s&63|128}return t.subarray(0,r)}function Qpn(e){let t="",r=0;for(;r127)if(n>191&&n<224){if(r>=e.length)throw new Error("Incomplete 2-byte sequence.");n=(n&31)<<6|e[r++]&63}else if(n>223&&n<240){if(r+1>=e.length)throw new Error("Incomplete 3-byte sequence.");n=(n&15)<<12|(e[r++]&63)<<6|e[r++]&63}else if(n>239&&n<248){if(r+2>=e.length)throw new Error("Incomplete 4-byte sequence.");n=(n&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63}else throw new Error("Unknown multi-byte start.");if(n<=65535)t+=String.fromCharCode(n);else if(n<=1114111)n-=65536,t+=String.fromCharCode(n>>10|55296),t+=String.fromCharCode(n&1023|56320);else throw new Error("Code point exceeds UTF-16 limit.")}return t}});var zn=S(dc=>{"use strict";Object.defineProperty(dc,"__esModule",{value:!0});dc.HowToCompare=dc.WhatToShow=dc.FilterResult=dc.Position=dc.NodeType=dc.EventPhase=dc.BoundaryPosition=void 0;var l5t;(function(e){e[e.Before=0]="Before",e[e.Equal=1]="Equal",e[e.After=2]="After"})(l5t||(dc.BoundaryPosition=l5t={}));var d5t;(function(e){e[e.None=0]="None",e[e.Capturing=1]="Capturing",e[e.AtTarget=2]="AtTarget",e[e.Bubbling=3]="Bubbling"})(d5t||(dc.EventPhase=d5t={}));var f5t;(function(e){e[e.Element=1]="Element",e[e.Attribute=2]="Attribute",e[e.Text=3]="Text",e[e.CData=4]="CData",e[e.EntityReference=5]="EntityReference",e[e.Entity=6]="Entity",e[e.ProcessingInstruction=7]="ProcessingInstruction",e[e.Comment=8]="Comment",e[e.Document=9]="Document",e[e.DocumentType=10]="DocumentType",e[e.DocumentFragment=11]="DocumentFragment",e[e.Notation=12]="Notation"})(f5t||(dc.NodeType=f5t={}));var h5t;(function(e){e[e.SameNode=0]="SameNode",e[e.Disconnected=1]="Disconnected",e[e.Preceding=2]="Preceding",e[e.Following=4]="Following",e[e.Contains=8]="Contains",e[e.ContainedBy=16]="ContainedBy",e[e.ImplementationSpecific=32]="ImplementationSpecific"})(h5t||(dc.Position=h5t={}));var p5t;(function(e){e[e.Accept=1]="Accept",e[e.Reject=2]="Reject",e[e.Skip=3]="Skip"})(p5t||(dc.FilterResult=p5t={}));var m5t;(function(e){e[e.All=4294967295]="All",e[e.Element=1]="Element",e[e.Attribute=2]="Attribute",e[e.Text=4]="Text",e[e.CDataSection=8]="CDataSection",e[e.EntityReference=16]="EntityReference",e[e.Entity=32]="Entity",e[e.ProcessingInstruction=64]="ProcessingInstruction",e[e.Comment=128]="Comment",e[e.Document=256]="Document",e[e.DocumentType=512]="DocumentType",e[e.DocumentFragment=1024]="DocumentFragment",e[e.Notation=2048]="Notation"})(m5t||(dc.WhatToShow=m5t={}));var g5t;(function(e){e[e.StartToStart=0]="StartToStart",e[e.StartToEnd=1]="StartToEnd",e[e.EndToEnd=2]="EndToEnd",e[e.EndToStart=3]="EndToStart"})(g5t||(dc.HowToCompare=g5t={}))});var xB=S(KG=>{"use strict";Object.defineProperty(KG,"__esModule",{value:!0});KG.LocalNameSet=void 0;var Vxe=class{_items={};_nullItems={};set(t,r){t===null?this._nullItems[r]=!0:this._items[t]?this._items[t][r]=!0:(this._items[t]={},this._items[t][r]=!0)}has(t,r){return t===null?this._nullItems[r]===!0:this._items[t]?this._items[t][r]===!0:!1}};KG.LocalNameSet=Vxe});var zG=S(GG=>{"use strict";Object.defineProperty(GG,"__esModule",{value:!0});GG.NamespacePrefixMap=void 0;var jxe=class e{_items={};_nullItems=[];copy(){let t=new e;for(let r in this._items)t._items[r]=this._items[r].slice(0);return t._nullItems=this._nullItems.slice(0),t}get(t,r){let n=r===null?this._nullItems:this._items[r]||null;if(n===null)return null;let s=null;for(let i=0;i{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.ASCIIAlphanumeric=nn.ASCIIAlpha=nn.ASCIILowerAlpha=nn.ASCIIUpperAlpha=nn.ASCIIHexDigit=nn.ASCIILowerHexDigit=nn.ASCIIUpperHexDigit=nn.ASCIIDigit=nn.Control=nn.C0ControlOrSpace=nn.C0Control=nn.ASCIIWhiteSpace=nn.ASCIITabOrNewLine=nn.ASCIICodePoint=nn.NonCharacter=nn.ScalarValue=nn.Surrogate=void 0;nn.Surrogate=/[\uD800-\uDFFF]/;nn.ScalarValue=/[\uD800-\uDFFF]/;nn.NonCharacter=/[\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]/;nn.ASCIICodePoint=/[\u0000-\u007F]/;nn.ASCIITabOrNewLine=/[\t\n\r]/;nn.ASCIIWhiteSpace=/[\t\n\f\r ]/;nn.C0Control=/[\u0000-\u001F]/;nn.C0ControlOrSpace=/[\u0000-\u001F ]/;nn.Control=/[\u0000-\u001F\u007F-\u009F]/;nn.ASCIIDigit=/[0-9]/;nn.ASCIIUpperHexDigit=/[0-9A-F]/;nn.ASCIILowerHexDigit=/[0-9a-f]/;nn.ASCIIHexDigit=/[0-9A-Fa-f]/;nn.ASCIIUpperAlpha=/[A-Z]/;nn.ASCIILowerAlpha=/[a-z]/;nn.ASCIIAlpha=/[A-Za-z]/;nn.ASCIIAlphanumeric=/[0-9A-Za-z]/});var _5t=S(QG=>{"use strict";Object.defineProperty(QG,"__esModule",{value:!0});QG.forgivingBase64Encode=Xpn;QG.forgivingBase64Decode=Jpn;var Wpn=YG();function Xpn(e){return Buffer.from(e).toString("base64")}function Jpn(e){return e===""?"":(e=e.replace(Wpn.ASCIIWhiteSpace,""),e.length%4===0&&(e.endsWith("==")?e=e.substr(0,e.length-2):e.endsWith("=")&&(e=e.substr(0,e.length-1))),e.length%4===1||!/[0-9A-Za-z+/]/.test(e)?null:Buffer.from(e,"base64").toString("utf8"))}});var Gxe=S(Kxe=>{"use strict";Object.defineProperty(Kxe,"__esModule",{value:!0});Kxe.isASCIIByte=Zpn;function Zpn(e){return e>=0&&e<=127}});var zxe=S(s_=>{"use strict";Object.defineProperty(s_,"__esModule",{value:!0});s_.length=emn;s_.byteLowercase=tmn;s_.byteUppercase=rmn;s_.byteCaseInsensitiveMatch=nmn;s_.startsWith=smn;s_.byteLessThan=imn;s_.isomorphicDecode=amn;function emn(e){return e.length}function tmn(e){for(let t=0;t=65&&r<=90&&(e[t]=r+32)}}function rmn(e){for(let t=0;t=97&&r<=122&&(e[t]=r-32)}}function nmn(e,t){if(e.length!==t.length)return!1;for(let r=0;r=65&&n<=90&&(n+=32),s>=65&&s<=90&&(s+=32),n!==s)return!1}return!0}function smn(e,t){let r=0;for(;;){if(r>=e.length)return!1;if(r>=t.length)return!0;if(e[r]!==t[r])return!1;r++}}function imn(e,t){let r=0;for(;;){if(r>=e.length)return!1;if(r>=t.length)return!0;let n=e[r],s=t[r];if(ns)return!1;r++}}function amn(e){return String.fromCodePoint(...e)}});var A5t=S(nw=>{"use strict";Object.defineProperty(nw,"__esModule",{value:!0});nw.parseJSONFromBytes=omn;nw.serializeJSONToBytes=cmn;nw.parseJSONIntoInfraValues=umn;nw.convertAJSONDerivedJavaScriptValueToAnInfraValue=WG;var rw=Wn();function omn(e){let t=(0,rw.utf8Decode)(e);return JSON.parse.call(void 0,t)}function cmn(e){let t=JSON.stringify.call(void 0,e);return(0,rw.utf8Encode)(t)}function umn(e){let t=JSON.parse.call(void 0,e);return WG(t)}function WG(e){if(e===null||(0,rw.isString)(e)||(0,rw.isNumber)(e))return e;if((0,rw.isArray)(e)){let t=new Array;for(let r of e)t.push(WG(r));return t}else if((0,rw.isObject)(e)){let t=new Map;for(let r in e)if(e.hasOwnProperty(r)){let n=e[r];t.set(r,WG(n))}return t}return e}});var E5t=S(fc=>{"use strict";Object.defineProperty(fc,"__esModule",{value:!0});fc.append=lmn;fc.extend=dmn;fc.prepend=fmn;fc.replace=hmn;fc.insert=pmn;fc.remove=mmn;fc.empty=gmn;fc.contains=_mn;fc.size=Amn;fc.isEmpty=Emn;fc.forEach=ymn;fc.clone=vmn;fc.sortInAscendingOrder=Smn;fc.sortInDescendingOrder=Tmn;var Yxe=Wn();function lmn(e,t){e.push(t)}function dmn(e,t){e.push(...t)}function fmn(e,t){e.unshift(t)}function hmn(e,t,r){let n=0;for(let s of e){if((0,Yxe.isFunction)(t))t.call(null,s)&&(e[n]=r);else if(s===t){e[n]=r;return}n++}}function pmn(e,t,r){e.splice(r,0,t)}function mmn(e,t){let r=e.length;for(;r--;){let n=e[r];if((0,Yxe.isFunction)(t))t.call(null,n)&&e.splice(r,1);else if(n===t){e.splice(r,1);return}}}function gmn(e){e.length=0}function _mn(e,t){for(let r of e)if((0,Yxe.isFunction)(t)){if(t.call(null,r))return!0}else if(r===t)return!0;return!1}function Amn(e,t){if(t===void 0)return e.length;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function Emn(e){return e.length===0}function*ymn(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function vmn(e){return new Array(...e)}function Smn(e,t){return e.sort((r,n)=>t.call(null,r,n)?-1:1)}function Tmn(e,t){return e.sort((r,n)=>t.call(null,r,n)?1:-1)}});var v5t=S(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.get=bmn;sl.set=Imn;sl.remove=Rmn;sl.contains=Cmn;sl.keys=xmn;sl.values=wmn;sl.size=Nmn;sl.isEmpty=Omn;sl.forEach=Dmn;sl.clone=Pmn;sl.sortInAscendingOrder=Lmn;sl.sortInDescendingOrder=Mmn;var y5t=Wn();function bmn(e,t){return e.get(t)}function Imn(e,t,r){e.set(t,r)}function Rmn(e,t){if(!(0,y5t.isFunction)(t))e.delete(t);else{let r=[];for(let n of e)t.call(null,n)&&r.push(n[0]);for(let n of r)e.delete(n)}}function Cmn(e,t){if((0,y5t.isFunction)(t)){for(let r of e)if(t.call(null,r))return!0;return!1}else return e.has(t)}function xmn(e){return new Set(e.keys())}function wmn(e){return[...e.values()]}function Nmn(e,t){if(t===void 0)return e.size;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function Omn(e){return e.size===0}function*Dmn(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function Pmn(e){return new Map(e)}function Lmn(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?-1:1),new Map(r)}function Mmn(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?1:-1),new Map(r)}});var S5t=S(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.XLink=il.SVG=il.MathML=il.XMLNS=il.XML=il.HTML=void 0;il.HTML="http://www.w3.org/1999/xhtml";il.XML="http://www.w3.org/XML/1998/namespace";il.XMLNS="http://www.w3.org/2000/xmlns/";il.MathML="http://www.w3.org/1998/Math/MathML";il.SVG="http://www.w3.org/2000/svg";il.XLink="http://www.w3.org/1999/xlink"});var T5t=S(XG=>{"use strict";Object.defineProperty(XG,"__esModule",{value:!0});XG.enqueue=kmn;XG.dequeue=Bmn;function kmn(e,t){e.push(t)}function Bmn(e){return e.shift()||null}});var I5t=S(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.append=Umn;Xi.extend=Fmn;Xi.prepend=$mn;Xi.replace=qmn;Xi.insert=Hmn;Xi.remove=Vmn;Xi.empty=jmn;Xi.contains=Kmn;Xi.size=Gmn;Xi.isEmpty=zmn;Xi.forEach=Ymn;Xi.clone=Qmn;Xi.sortInAscendingOrder=Wmn;Xi.sortInDescendingOrder=Xmn;Xi.isSubsetOf=b5t;Xi.isSupersetOf=Jmn;Xi.intersection=Zmn;Xi.union=egn;Xi.range=tgn;var Qxe=Wn();function Umn(e,t){e.add(t)}function Fmn(e,t){t.forEach(e.add,e)}function $mn(e,t){let r=new Set(e);e.clear(),e.add(t),r.forEach(e.add,e)}function qmn(e,t,r){let n=new Set;for(let s of e)(0,Qxe.isFunction)(t)?t.call(null,s)?n.add(r):n.add(s):s===t?n.add(r):n.add(s);e.clear(),n.forEach(e.add,e)}function Hmn(e,t,r){let n=new Set,s=0;for(let i of e)s===r&&n.add(t),n.add(i),s++;e.clear(),n.forEach(e.add,e)}function Vmn(e,t){if(!(0,Qxe.isFunction)(t))e.delete(t);else{let r=[];for(let n of e)t.call(null,n)&&r.push(n);for(let n of r)e.delete(n)}}function jmn(e){e.clear()}function Kmn(e,t){if((0,Qxe.isFunction)(t)){for(let r of e)if(t.call(null,r))return!0}else return e.has(t);return!1}function Gmn(e,t){if(t===void 0)return e.size;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function zmn(e){return e.size===0}function*Ymn(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function Qmn(e){return new Set(e)}function Wmn(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?-1:1),new Set(r)}function Xmn(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?1:-1),new Set(r)}function b5t(e,t){for(let r of e)if(!t.has(r))return!1;return!0}function Jmn(e,t){return b5t(t,e)}function Zmn(e,t){let r=new Set;for(let n of e)t.has(n)&&r.add(n);return r}function egn(e,t){let r=new Set(e);return t.forEach(r.add,r),r}function tgn(e,t){let r=new Set;for(let n=e;n<=t;n++)r.add(n);return r}});var R5t=S(JG=>{"use strict";Object.defineProperty(JG,"__esModule",{value:!0});JG.push=rgn;JG.pop=ngn;function rgn(e,t){e.push(t)}function ngn(e){return e.pop()||null}});var P5t=S(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.isCodeUnitPrefix=Wxe;Ji.isCodeUnitLessThan=agn;Ji.isomorphicEncode=x5t;Ji.isASCIIString=w5t;Ji.asciiLowercase=Xxe;Ji.asciiUppercase=ogn;Ji.asciiCaseInsensitiveMatch=cgn;Ji.asciiEncode=ugn;Ji.asciiDecode=lgn;Ji.stripNewlines=dgn;Ji.normalizeNewlines=fgn;Ji.stripLeadingAndTrailingASCIIWhitespace=Zxe;Ji.stripAndCollapseASCIIWhitespace=hgn;Ji.collectASequenceOfCodePoints=gb;Ji.skipASCIIWhitespace=Jxe;Ji.strictlySplit=N5t;Ji.splitAStringOnASCIIWhitespace=O5t;Ji.splitAStringOnCommas=D5t;Ji.concatenate=pgn;var C5t=YG(),sgn=zxe(),ign=Gxe(),ZG=Wn();function Wxe(e,t){let r=0;for(;;){let n=r=65&&n<=90?t+=String.fromCodePoint(n+32):t+=r}return t}function ogn(e){let t="";for(let r of e){let n=r.codePointAt(0);n!==void 0&&n>=97&&n<=122?t+=String.fromCodePoint(n-32):t+=r}return t}function cgn(e,t){return Xxe(e)===Xxe(t)}function ugn(e){return console.assert(w5t(e),"asciiEncode requires an ASCII string."),x5t(e)}function lgn(e){for(let t of e)console.assert((0,ign.isASCIIByte)(t),"asciiDecode requires an ASCII byte sequence.");return(0,sgn.isomorphicDecode)(e)}function dgn(e){return e.replace(/[\n\r]/g,"")}function fgn(e){return e.replace(/\r\n/g,` -`).replace(/\r/g,` -`)}function Zxe(e){return e.replace(/^[\t\n\f\r ]+/,"").replace(/[\t\n\f\r ]+$/,"")}function hgn(e){return Zxe(e.replace(/[\t\n\f\r ]{2,}/g," "))}function gb(e,t,r){if(!(0,ZG.isArray)(t))return gb(e,Array.from(t),r);let n="";for(;r.positionC5t.ASCIIWhiteSpace.test(r),e,t)}function N5t(e,t){if(!(0,ZG.isArray)(e))return N5t(Array.from(e),t);let r={position:0},n=[],s=gb(i=>t!==i,e,r);for(n.push(s);r.positiont!==i,e,r),n.push(s);return n}function O5t(e){if(!(0,ZG.isArray)(e))return O5t(Array.from(e));let t={position:0},r=[];for(Jxe(e,t);t.position!C5t.ASCIIWhiteSpace.test(s),e,t);r.push(n),Jxe(e,t)}return r}function D5t(e){if(!(0,ZG.isArray)(e))return D5t(Array.from(e));let t={position:0},r=[];for(;t.positions!==",",e,t);r.push(Zxe(n)),t.position{"use strict";var mgn=Fn&&Fn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ggn=Fn&&Fn.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),uf=Fn&&Fn.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),s=0;s{"use strict";Object.defineProperty(ewe,"__esModule",{value:!0});ewe.idl_defineConst=wgn;function wgn(e,t,r){Object.defineProperty(e,t,{writable:!1,enumerable:!0,configurable:!1,value:r})}});var twe=S(tz=>{"use strict";Object.defineProperty(tz,"__esModule",{value:!0});tz.DOMImplementationImpl=void 0;var Ngn=Zi(),sw=fa(),x0=Dn(),Ogn=hc(),ez=class e{_ID="@oozcitak/dom";_associatedDocument;constructor(t){this._associatedDocument=t||Ngn.dom.window.document}createDocumentType(t,r,n){return(0,x0.namespace_validate)(t),(0,x0.create_documentType)(this._associatedDocument,t,r,n)}createDocument(t,r,n=null){let s=(0,x0.create_xmlDocument)(),i=null;return r&&(i=(0,x0.document_internalCreateElementNS)(s,t,r)),n&&s.appendChild(n),i&&s.appendChild(i),s._origin=this._associatedDocument._origin,t===sw.namespace.HTML?s._contentType="application/xhtml+xml":t===sw.namespace.SVG?s._contentType="image/svg+xml":s._contentType="application/xml",s}createHTMLDocument(t){let r=(0,x0.create_document)();r._type="html",r._contentType="text/html",r.appendChild((0,x0.create_documentType)(r,"html","",""));let n=(0,x0.element_createAnElement)(r,"html",sw.namespace.HTML);r.appendChild(n);let s=(0,x0.element_createAnElement)(r,"head",sw.namespace.HTML);if(n.appendChild(s),t!==void 0){let a=(0,x0.element_createAnElement)(r,"title",sw.namespace.HTML);s.appendChild(a);let o=(0,x0.create_text)(r,t);a.appendChild(o)}let i=(0,x0.element_createAnElement)(r,"body",sw.namespace.HTML);return n.appendChild(i),r._origin=this._associatedDocument._origin,r}hasFeature(){return!0}static _create(t){return new e(t)}};tz.DOMImplementationImpl=ez;(0,Ogn.idl_defineConst)(ez.prototype,"_ID","@oozcitak/dom")});var Ra=S(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.InvalidCharacterError=Dt.SyntaxError=Dt.IndexSizeError=Dt.NotFoundError=Dt.HierarchyRequestError=Dt.NotImplementedError=Dt.DataCloneError=Dt.InvalidNodeTypeError=Dt.TimeoutError=Dt.QuotaExceededError=Dt.URLMismatchError=Dt.AbortError=Dt.NetworkError=Dt.SecurityError=Dt.TypeMismatchError=Dt.ValidationError=Dt.InvalidAccessError=Dt.NamespaceError=Dt.InvalidModificationError=Dt.InvalidStateError=Dt.InUseAttributeError=Dt.NotSupportedError=Dt.NoModificationAllowedError=Dt.NoDataAllowedError=Dt.WrongDocumentError=Dt.DOMStringSizeError=Dt.DOMException=void 0;var rs=class extends Error{name;constructor(t,r=""){super(r),this.name=t}};Dt.DOMException=rs;var rwe=class extends rs{constructor(t=""){super("DOMStringSizeError",t)}};Dt.DOMStringSizeError=rwe;var nwe=class extends rs{constructor(t=""){super("WrongDocumentError","The object is in the wrong document. "+t)}};Dt.WrongDocumentError=nwe;var swe=class extends rs{constructor(t=""){super("NoDataAllowedError",t)}};Dt.NoDataAllowedError=swe;var iwe=class extends rs{constructor(t=""){super("NoModificationAllowedError","The object can not be modified. "+t)}};Dt.NoModificationAllowedError=iwe;var awe=class extends rs{constructor(t=""){super("NotSupportedError","The operation is not supported. "+t)}};Dt.NotSupportedError=awe;var owe=class extends rs{constructor(t=""){super("InUseAttributeError",t)}};Dt.InUseAttributeError=owe;var cwe=class extends rs{constructor(t=""){super("InvalidStateError","The object is in an invalid state. "+t)}};Dt.InvalidStateError=cwe;var uwe=class extends rs{constructor(t=""){super("InvalidModificationError","The object can not be modified in this way. "+t)}};Dt.InvalidModificationError=uwe;var lwe=class extends rs{constructor(t=""){super("NamespaceError","The operation is not allowed by Namespaces in XML. [XMLNS] "+t)}};Dt.NamespaceError=lwe;var dwe=class extends rs{constructor(t=""){super("InvalidAccessError","The object does not support the operation or argument. "+t)}};Dt.InvalidAccessError=dwe;var fwe=class extends rs{constructor(t=""){super("ValidationError",t)}};Dt.ValidationError=fwe;var hwe=class extends rs{constructor(t=""){super("TypeMismatchError",t)}};Dt.TypeMismatchError=hwe;var pwe=class extends rs{constructor(t=""){super("SecurityError","The operation is insecure. "+t)}};Dt.SecurityError=pwe;var mwe=class extends rs{constructor(t=""){super("NetworkError","A network error occurred. "+t)}};Dt.NetworkError=mwe;var gwe=class extends rs{constructor(t=""){super("AbortError","The operation was aborted. "+t)}};Dt.AbortError=gwe;var _we=class extends rs{constructor(t=""){super("URLMismatchError","The given URL does not match another URL. "+t)}};Dt.URLMismatchError=_we;var Awe=class extends rs{constructor(t=""){super("QuotaExceededError","The quota has been exceeded. "+t)}};Dt.QuotaExceededError=Awe;var Ewe=class extends rs{constructor(t=""){super("TimeoutError","The operation timed out. "+t)}};Dt.TimeoutError=Ewe;var ywe=class extends rs{constructor(t=""){super("InvalidNodeTypeError","The supplied node is incorrect or has an incorrect ancestor for this operation. "+t)}};Dt.InvalidNodeTypeError=ywe;var vwe=class extends rs{constructor(t=""){super("DataCloneError","The object can not be cloned. "+t)}};Dt.DataCloneError=vwe;var Swe=class extends rs{constructor(t=""){super("NotImplementedError","The DOM method is not implemented by this module. "+t)}};Dt.NotImplementedError=Swe;var Twe=class extends rs{constructor(t=""){super("HierarchyRequestError","The operation would yield an incorrect node tree. "+t)}};Dt.HierarchyRequestError=Twe;var bwe=class extends rs{constructor(t=""){super("NotFoundError","The object can not be found here. "+t)}};Dt.NotFoundError=bwe;var Iwe=class extends rs{constructor(t=""){super("IndexSizeError","The index is not in the allowed range. "+t)}};Dt.IndexSizeError=Iwe;var Rwe=class extends rs{constructor(t=""){super("SyntaxError","The string did not match the expected pattern. "+t)}};Dt.SyntaxError=Rwe;var Cwe=class extends rs{constructor(t=""){super("InvalidCharacterError","The string contains invalid characters. "+t)}};Dt.InvalidCharacterError=Cwe});var wwe=S(rz=>{"use strict";Object.defineProperty(rz,"__esModule",{value:!0});rz.Guard=void 0;var iu=zn(),xwe=class e{static isNode(t){return!!t&&t._nodeType!==void 0}static isDocumentNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.Document}static isDocumentTypeNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.DocumentType}static isDocumentFragmentNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.DocumentFragment}static isAttrNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.Attribute}static isCharacterDataNode(t){if(!e.isNode(t))return!1;let r=t._nodeType;return r===iu.NodeType.Text||r===iu.NodeType.ProcessingInstruction||r===iu.NodeType.Comment||r===iu.NodeType.CData}static isTextNode(t){return e.isNode(t)&&(t._nodeType===iu.NodeType.Text||t._nodeType===iu.NodeType.CData)}static isExclusiveTextNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.Text}static isCDATASectionNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.CData}static isCommentNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.Comment}static isProcessingInstructionNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.ProcessingInstruction}static isElementNode(t){return e.isNode(t)&&t._nodeType===iu.NodeType.Element}static isCustomElementNode(t){return e.isElementNode(t)&&t._customElementState==="custom"}static isShadowRoot(t){return!!t&&t.host!==void 0}static isMouseEvent(t){return!!t&&t.screenX!==void 0&&t.screenY!=null}static isSlotable(t){return!!t&&t._name!==void 0&&t._assignedSlot!==void 0&&(e.isTextNode(t)||e.isElementNode(t))}static isSlot(t){return!!t&&t._name!==void 0&&t._assignedNodes!==void 0&&e.isElementNode(t)}static isWindow(t){return!!t&&t.navigator!==void 0}static isEventListener(t){return!!t&&t.handleEvent!==void 0}static isRegisteredObserver(t){return!!t&&t.observer!==void 0&&t.options!==void 0}static isTransientRegisteredObserver(t){return!!t&&t.source!==void 0&&e.isRegisteredObserver(t)}};rz.Guard=xwe});var L5t=S(nz=>{"use strict";Object.defineProperty(nz,"__esModule",{value:!0});nz.Cast=void 0;var Dgn=wwe(),Nwe=class{static asNode(t){if(Dgn.Guard.isNode(t))return t;throw new Error("Invalid object. Node expected.")}};nz.Cast=Nwe});var M5t=S(sz=>{"use strict";Object.defineProperty(sz,"__esModule",{value:!0});sz.EmptySet=void 0;var Owe=class{get size(){return 0}add(t){throw new Error("Cannot add to an empty set.")}clear(){}delete(t){return!1}forEach(t,r){}has(t){return!1}[Symbol.iterator](){return new iw}entries(){return new iw}keys(){return new iw}values(){return new iw}get[Symbol.toStringTag](){return"EmptySet"}};sz.EmptySet=Owe;var iw=class{[Symbol.iterator](){return this}next(){return{done:!0,value:null}}}});var As=S(ly=>{"use strict";Object.defineProperty(ly,"__esModule",{value:!0});ly.EmptySet=ly.Guard=ly.Cast=void 0;var Pgn=L5t();Object.defineProperty(ly,"Cast",{enumerable:!0,get:function(){return Pgn.Cast}});var Lgn=wwe();Object.defineProperty(ly,"Guard",{enumerable:!0,get:function(){return Lgn.Guard}});var Mgn=M5t();Object.defineProperty(ly,"EmptySet",{enumerable:!0,get:function(){return Mgn.EmptySet}})});var wB=S(iz=>{"use strict";Object.defineProperty(iz,"__esModule",{value:!0});iz.EventTargetImpl=void 0;var kgn=Ra(),k5t=As(),aw=Dn(),Dwe=class{__eventListenerList;get _eventListenerList(){return this.__eventListenerList||(this.__eventListenerList=[])}__eventHandlerMap;get _eventHandlerMap(){return this.__eventHandlerMap||(this.__eventHandlerMap={})}constructor(){}addEventListener(t,r,n={passive:!1,once:!1,capture:!1}){let[s,i,a]=(0,aw.eventTarget_flattenMore)(n),o;if(r)k5t.Guard.isEventListener(r)?o=r:o={handleEvent:r};else return;(0,aw.eventTarget_addEventListener)(this,{type:t,callback:o,capture:s,passive:i,once:a,removed:!1})}removeEventListener(t,r,n={capture:!1}){let s=(0,aw.eventTarget_flatten)(n);if(r)for(let i=0;i{"use strict";Object.defineProperty(az,"__esModule",{value:!0});az.WindowImpl=void 0;var Bgn=wB(),Ugn=Wn(),Fgn=Dn(),Pwe=class e extends Bgn.EventTargetImpl{_currentEvent;_signalSlots=new Set;_mutationObserverMicrotaskQueued=!1;_mutationObservers=new Set;_associatedDocument;_iteratorList=new Ugn.FixedSizeSet;constructor(){super(),this._associatedDocument=(0,Fgn.create_document)()}get document(){return this._associatedDocument}get event(){return this._currentEvent}static _create(){return new e}};az.WindowImpl=Pwe});var U5t=S(ow=>{"use strict";Object.defineProperty(ow,"__esModule",{value:!0});ow.OpaqueOrigin=ow.ParserState=void 0;var B5t;(function(e){e[e.SchemeStart=0]="SchemeStart",e[e.Scheme=1]="Scheme",e[e.NoScheme=2]="NoScheme",e[e.SpecialRelativeOrAuthority=3]="SpecialRelativeOrAuthority",e[e.PathOrAuthority=4]="PathOrAuthority",e[e.Relative=5]="Relative",e[e.RelativeSlash=6]="RelativeSlash",e[e.SpecialAuthoritySlashes=7]="SpecialAuthoritySlashes",e[e.SpecialAuthorityIgnoreSlashes=8]="SpecialAuthorityIgnoreSlashes",e[e.Authority=9]="Authority",e[e.Host=10]="Host",e[e.Hostname=11]="Hostname",e[e.Port=12]="Port",e[e.File=13]="File",e[e.FileSlash=14]="FileSlash",e[e.FileHost=15]="FileHost",e[e.PathStart=16]="PathStart",e[e.Path=17]="Path",e[e.CannotBeABaseURLPath=18]="CannotBeABaseURLPath",e[e.Query=19]="Query",e[e.Fragment=20]="Fragment"})(B5t||(ow.ParserState=B5t={}));ow.OpaqueOrigin=["","",null,null]});var Gwe=S(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.setValidationErrorCallback=Vgn;hr.newURL=H5t;hr.isSpecialScheme=cw;hr.isSpecial=Ca;hr.defaultPort=kwe;hr.includesCredentials=uz;hr.cannotHaveAUsernamePasswordPort=jgn;hr.urlSerializer=Bwe;hr.hostSerializer=Vwe;hr.iPv4Serializer=V5t;hr.iPv6Serializer=j5t;hr.urlParser=Kgn;hr.basicURLParser=jwe;hr.setTheUsername=Ggn;hr.setThePassword=zgn;hr.isSingleDotPathSegment=Uwe;hr.isDoubleDotPathSegment=K5t;hr.shorten=Fwe;hr.isNormalizedWindowsDriveLetter=Kwe;hr.isWindowsDriveLetter=lz;hr.startsWithAWindowsDriveLetter=$we;hr.hostParser=cz;hr.iPv4NumberParser=G5t;hr.iPv4Parser=z5t;hr.iPv6Parser=Y5t;hr.opaqueHostParser=Q5t;hr.resolveABlobURL=W5t;hr.percentEncode=dz;hr.percentDecode=X5t;hr.stringPercentDecode=J5t;hr.utf8PercentEncode=dy;hr.hostEquals=Ygn;hr.urlEquals=Qgn;hr.urlEncodedStringParser=Wgn;hr.urlEncodedParser=Z5t;hr.urlEncodedByteSerializer=qwe;hr.urlEncodedSerializer=Xgn;hr.origin=e$t;hr.domainToASCII=t$t;hr.domainToUnicode=Jgn;hr.asciiSerializationOfAnOrigin=Zgn;var au=Wn(),at=U5t(),eo=fa(),F5t=require("url"),Mwe,$5t={ftp:21,file:null,http:80,https:443,ws:80,wss:443},q5t=/[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,$gn=/[ "<>`]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,qgn=/[ "<>`#?{}]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Hwe=/[ "<>`#?{}/:;=@\[\]\\\^\|]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,oz=/[0-9A-Za-z!\$&-\/:;=\?@_~\xA0-\uD7FF\uE000-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uD83E\uD840-\uD87E\uD880-\uD8BE\uD8C0-\uD8FE\uD900-\uD93E\uD940-\uD97E\uD980-\uD9BE\uD9C0-\uD9FE\uDA00-\uDA3E\uDA40-\uDA7E\uDA80-\uDABE\uDAC0-\uDAFE\uDB00-\uDB3E\uDB40-\uDB7E\uDB80-\uDBBE\uDBC0-\uDBFE][\uDC00-\uDFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDC00-\uDFFD]/,Hgn=/[\0\t\f\r #%/:?@\[\\\]]/;function Vgn(e){Mwe=e}function wt(e){Mwe!==void 0&&Mwe.call(null,"Validation Error: "+e)}function H5t(){return{scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,_cannotBeABaseURLFlag:!1,_blobURLEntry:null}}function cw(e){return e in $5t}function Ca(e){return cw(e.scheme)}function kwe(e){return $5t[e]||null}function uz(e){return e.username!==""||e.password!==""}function jgn(e){return e.host===null||e.host===""||e._cannotBeABaseURLFlag||e.scheme==="file"}function Bwe(e,t=!1){let r=e.scheme+":";if(e.host!==null?(r+="//",uz(e)&&(r+=e.username,e.password!==""&&(r+=":"+e.password),r+="@"),r+=Vwe(e.host),e.port!==null&&(r+=":"+e.port)):e.host===null&&e.scheme==="file"&&(r+="//"),e._cannotBeABaseURLFlag)r+=e.path[0];else for(let n of e.path)r+="/"+n;return e.query!==null&&(r+="?"+e.query),!t&&e.fragment!==null&&(r+="#"+e.fragment),r}function Vwe(e){return(0,au.isNumber)(e)?V5t(e):(0,au.isArray)(e)?"["+j5t(e)+"]":e}function V5t(e){let t="",r=e;for(let n=1;n<=4;n++)t=(r%256).toString()+t,n!==4&&(t="."+t),r=Math.floor(r/256);return t}function j5t(e){let t="",r=null,n=-1,s=0,i=0;for(let o=0;o<8;o++)if(e[o]===0){s=1;for(let c=o+1;c<8&&e[c]===0;c++)s++;s>i&&(i=s,n=o)}i>1&&(r=n);let a=!1;for(let o=0;o<8;o++)if(!(a&&e[o]===0)){if(a&&(a=!1),r===o){t+=o===0?"::":":",a=!0;continue}t+=e[o].toString(16),o!==7&&(t+=":")}return t}function Kgn(e,t,r){let n=jwe(e,t,r);if(n===null)return null;if(n.scheme!=="blob")return n;let s=W5t(n);return s!==null?n._blobURLEntry=s:n._blobURLEntry=null,n}function jwe(e,t,r,n,s){if(n===void 0){n=H5t();let p=/^[\u0000-\u001F\u0020]+/,m=/[\u0000-\u001F\u0020]+$/;(p.test(e)||m.test(e))&&wt("Input string contains leading or trailing control characters or space."),e=e.replace(p,""),e=e.replace(m,"")}let i=/[\u0009\u000A\u000D]/g;i.test(e)&&wt("Input string contains tab or newline characters."),e=e.replace(i,"");let a=s===void 0?at.ParserState.SchemeStart:s;t===void 0&&(t=null);let o=r===void 0||r==="replacement"||r==="UTF-16BE"||r==="UTF-16LE"?"UTF-8":r,c="",u=!1,l=!1,d=!1,f="",h=new au.StringWalker(e);for(;;){switch(a){case at.ParserState.SchemeStart:if(eo.codePoint.ASCIIAlpha.test(h.c()))c+=h.c().toLowerCase(),a=at.ParserState.Scheme;else if(s===void 0)a=at.ParserState.NoScheme,h.pointer--;else return wt("Invalid scheme start character."),null;break;case at.ParserState.Scheme:if(eo.codePoint.ASCIIAlphanumeric.test(h.c())||h.c()==="+"||h.c()==="-"||h.c()===".")c+=h.c().toLowerCase();else if(h.c()===":"){if(s!==void 0&&(cw(n.scheme)&&!cw(c)||!cw(n.scheme)&&cw(c)||(uz(n)||n.port!==null)&&c==="file"||n.scheme==="file"&&(n.host===""||n.host===null)))return n;if(n.scheme=c,s!==void 0)return n.port===kwe(n.scheme)&&(n.port=null),n;c="",n.scheme==="file"?(h.remaining().startsWith("//")||wt("Invalid file URL scheme, '//' expected."),a=at.ParserState.File):Ca(n)&&t!==null&&t.scheme===n.scheme?a=at.ParserState.SpecialRelativeOrAuthority:Ca(n)?a=at.ParserState.SpecialAuthoritySlashes:h.remaining().startsWith("/")?(a=at.ParserState.PathOrAuthority,h.pointer++):(n._cannotBeABaseURLFlag=!0,n.path.push(""),a=at.ParserState.CannotBeABaseURLPath)}else if(s===void 0){c="",a=at.ParserState.NoScheme,h.pointer=0;continue}else return wt("Invalid input string."),null;break;case at.ParserState.NoScheme:if(t===null||t._cannotBeABaseURLFlag&&h.c()!=="#")return wt("Invalid input string."),null;t._cannotBeABaseURLFlag&&h.c()==="#"?(n.scheme=t.scheme,n.path=eo.list.clone(t.path),n.query=t.query,n.fragment="",n._cannotBeABaseURLFlag=!0,a=at.ParserState.Fragment):t.scheme!=="file"?(a=at.ParserState.Relative,h.pointer--):(a=at.ParserState.File,h.pointer--);break;case at.ParserState.SpecialRelativeOrAuthority:h.c()==="/"&&h.remaining().startsWith("/")?(a=at.ParserState.SpecialAuthorityIgnoreSlashes,h.pointer++):(wt("Invalid input string."),a=at.ParserState.Relative,h.pointer--);break;case at.ParserState.PathOrAuthority:h.c()==="/"?a=at.ParserState.Authority:(a=at.ParserState.Path,h.pointer--);break;case at.ParserState.Relative:if(t===null)throw new Error("Invalid parser state. Base URL is null.");switch(n.scheme=t.scheme,h.c()){case f:n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=eo.list.clone(t.path),n.query=t.query;break;case"/":a=at.ParserState.RelativeSlash;break;case"?":n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=eo.list.clone(t.path),n.query="",a=at.ParserState.Query;break;case"#":n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=eo.list.clone(t.path),n.query=t.query,n.fragment="",a=at.ParserState.Fragment;break;default:Ca(n)&&h.c()==="\\"?(wt("Invalid input string."),a=at.ParserState.RelativeSlash):(n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=eo.list.clone(t.path),n.path.length!==0&&n.path.splice(n.path.length-1,1),a=at.ParserState.Path,h.pointer--);break}break;case at.ParserState.RelativeSlash:if(Ca(n)&&(h.c()==="/"||h.c()==="\\"))h.c()==="\\"&&wt("Invalid input string."),a=at.ParserState.SpecialAuthorityIgnoreSlashes;else if(h.c()==="/")a=at.ParserState.Authority;else{if(t===null)throw new Error("Invalid parser state. Base URL is null.");n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,a=at.ParserState.Path,h.pointer--}break;case at.ParserState.SpecialAuthoritySlashes:h.c()==="/"&&h.remaining().startsWith("/")?(a=at.ParserState.SpecialAuthorityIgnoreSlashes,h.pointer++):(wt("Expected '//'."),a=at.ParserState.SpecialAuthorityIgnoreSlashes,h.pointer--);break;case at.ParserState.SpecialAuthorityIgnoreSlashes:h.c()!=="/"&&h.c()!=="\\"?(a=at.ParserState.Authority,h.pointer--):wt("Unexpected '/' or '\\'.");break;case at.ParserState.Authority:if(h.c()==="@"){wt("Unexpected '@'."),u&&(c="%40"+c),u=!0;for(let p of c){if(p===":"&&!d){d=!0;continue}let m=dy(p,Hwe);d?n.password+=m:n.username+=m}c=""}else if(h.c()===f||h.c()==="/"||h.c()==="?"||h.c()==="#"||Ca(n)&&h.c()==="\\"){if(u&&c==="")return wt("Invalid input string."),null;h.pointer-=c.length+1,c="",a=at.ParserState.Host}else c+=h.c();break;case at.ParserState.Host:case at.ParserState.Hostname:if(s!==void 0&&n.scheme==="file")h.pointer--,a=at.ParserState.FileHost;else if(h.c()===":"&&!l){if(c==="")return wt("Invalid input string."),null;let p=cz(c,!Ca(n));if(p===null)return null;if(n.host=p,c="",a=at.ParserState.Port,s===at.ParserState.Hostname)return n}else if(h.c()===f||h.c()==="/"||h.c()==="?"||h.c()==="#"||Ca(n)&&h.c()==="\\"){if(h.pointer--,Ca(n)&&c==="")return wt("Invalid input string."),null;if(s!==void 0&&c===""&&(uz(n)||n.port!==null))return wt("Invalid input string."),n;let p=cz(c,!Ca(n));if(p===null)return null;if(n.host=p,c="",a=at.ParserState.PathStart,s!==void 0)return n}else h.c()==="["&&(l=!0),h.c()==="]"&&(l=!1),c+=h.c();break;case at.ParserState.Port:if(eo.codePoint.ASCIIDigit.test(h.c()))c+=h.c();else if(h.c()===f||h.c()==="/"||h.c()==="?"||h.c()==="#"||Ca(n)&&h.c()==="\\"||s){if(c!==""&&c!==""){let p=parseInt(c,10);if(p>Math.pow(2,16)-1)return wt("Invalid port number."),null;n.port=p===kwe(n.scheme)?null:p,c=""}if(s!==void 0)return n;a=at.ParserState.PathStart,h.pointer--}else return wt("Invalid input string."),null;break;case at.ParserState.File:if(n.scheme="file",h.c()==="/"||h.c()==="\\")h.c()==="\\"&&wt("Invalid input string."),a=at.ParserState.FileSlash;else if(t!==null&&t.scheme==="file")switch(h.c()){case f:n.host=t.host,n.path=eo.list.clone(t.path),n.query=t.query;break;case"?":n.host=t.host,n.path=eo.list.clone(t.path),n.query="",a=at.ParserState.Query;break;case"#":n.host=t.host,n.path=eo.list.clone(t.path),n.query=t.query,n.fragment="",a=at.ParserState.Fragment;break;default:$we(h.substring())?wt("Unexpected windows drive letter in input string."):(n.host=t.host,n.path=eo.list.clone(t.path),Fwe(n)),a=at.ParserState.Path,h.pointer--;break}else a=at.ParserState.Path,h.pointer--;break;case at.ParserState.FileSlash:h.c()==="/"||h.c()==="\\"?(h.c()==="\\"&&wt("Invalid input string."),a=at.ParserState.FileHost):(t!==null&&t.scheme==="file"&&!$we(h.substring())&&(Kwe(t.path[0])?n.path.push(t.path[0]):n.host=t.host),a=at.ParserState.Path,h.pointer--);break;case at.ParserState.FileHost:if(h.c()===f||h.c()==="/"||h.c()==="\\"||h.c()==="?"||h.c()==="#")if(h.pointer--,s===void 0&&lz(c))wt("Unexpected windows drive letter in input string."),a=at.ParserState.Path;else if(c===""){if(n.host="",s!==void 0)return n;a=at.ParserState.PathStart}else{let p=cz(c,!Ca(n));if(p===null)return null;if(p==="localhost"&&(p=""),n.host=p,s!==void 0)return n;c="",a=at.ParserState.PathStart}else c+=h.c();break;case at.ParserState.PathStart:Ca(n)?(h.c()==="\\"&&wt("Invalid input string."),a=at.ParserState.Path,h.c()!=="/"&&h.c()!=="\\"&&h.pointer--):s===void 0&&h.c()==="?"?(n.query="",a=at.ParserState.Query):s===void 0&&h.c()==="#"?(n.fragment="",a=at.ParserState.Fragment):h.c()!==f&&(a=at.ParserState.Path,h.c()!=="/"&&h.pointer--);break;case at.ParserState.Path:if(h.c()===f||h.c()==="/"||Ca(n)&&h.c()==="\\"||s===void 0&&(h.c()==="?"||h.c()==="#")){if(Ca(n)&&h.c()==="\\"&&wt("Invalid input string."),K5t(c))Fwe(n),h.c()!=="/"&&!(Ca(n)&&h.c()==="\\")&&n.path.push("");else if(Uwe(c)&&h.c()!=="/"&&!(Ca(n)&&h.c()==="\\"))n.path.push("");else if(!Uwe(c)){if(n.scheme==="file"&&n.path.length===0&&lz(c)){n.host!==null&&n.host!==""&&(wt("Invalid input string."),n.host="");let p=Array.from(c);c=p.slice(0,1)+":"+p.slice(2)}n.path.push(c)}if(c="",n.scheme==="file"&&(h.c()===f||h.c()==="?"||h.c()==="#"))for(;n.path.length>1&&n.path[0]==="";)wt("Invalid input string."),n.path.splice(0,1);h.c()==="?"&&(n.query="",a=at.ParserState.Query),h.c()==="#"&&(n.fragment="",a=at.ParserState.Fragment)}else!oz.test(h.c())&&h.c()!=="%"&&wt("Character is not a URL code point or a percent encoded character."),h.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(h.remaining())&&wt("Percent encoded character must be followed by two hex digits."),c+=dy(h.c(),qgn);break;case at.ParserState.CannotBeABaseURLPath:h.c()==="?"?(n.query="",a=at.ParserState.Query):h.c()==="#"?(n.fragment="",a=at.ParserState.Fragment):(h.c()!==f&&!oz.test(h.c())&&h.c()!=="%"&&wt("Character is not a URL code point or a percent encoded character."),h.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(h.remaining())&&wt("Percent encoded character must be followed by two hex digits."),h.c()!==f&&(n.path[0]+=dy(h.c(),q5t)));break;case at.ParserState.Query:if(o!=="UTF-8"&&(!Ca(n)||n.scheme==="ws"||n.scheme==="wss")&&(o="UTF-8"),s===void 0&&h.c()==="#")n.fragment="",a=at.ParserState.Fragment;else if(h.c()!==f){if(!oz.test(h.c())&&h.c()!=="%"&&wt("Character is not a URL code point or a percent encoded character."),h.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(h.remaining())&&wt("Percent encoded character must be followed by two hex digits."),o.toUpperCase()!=="UTF-8")throw new Error("Only UTF-8 encoding is supported.");let p=(0,au.utf8Encode)(h.c());if(p.length>=3&&p[0]===38&&p[1]===35&&p[p.length-1]===59)p=p.subarray(2,p.length-1),n.query+="%26%23"+eo.byteSequence.isomorphicDecode(p)+"%3B";else for(let m of p)m<33||m>126||m===34||m===35||m===60||m===62||m===39&&Ca(n)?n.query+=dz(m):n.query+=String.fromCharCode(m)}break;case at.ParserState.Fragment:h.c()===f||(h.c()==="\0"?wt("NULL character in input string."):(!oz.test(h.c())&&h.c()!=="%"&&wt("Unexpected character in fragment string."),h.c()==="%"&&!/^[A-Za-z0-9][A-Za-z0-9]/.test(h.remaining())&&wt("Unexpected character in fragment string."),n.fragment+=dy(h.c(),$gn)));break}if(h.eof)break;h.pointer++}return n}function Ggn(e,t){let r="";for(let n of t)r+=dy(n,Hwe);e.username=r}function zgn(e,t){let r="";for(let n of t)r+=dy(n,Hwe);e.password=r}function Uwe(e){return e==="."||e.toLowerCase()==="%2e"}function K5t(e){let t=e.toLowerCase();return t===".."||t===".%2e"||t==="%2e."||t==="%2e%2e"}function Fwe(e){let t=e.path;t.length!==0&&(e.scheme==="file"&&t.length===1&&Kwe(t[0])||e.path.splice(e.path.length-1,1))}function Kwe(e){return e.length>=2&&eo.codePoint.ASCIIAlpha.test(e[0])&&e[1]===":"}function lz(e){return e.length>=2&&eo.codePoint.ASCIIAlpha.test(e[0])&&(e[1]===":"||e[1]==="|")}function $we(e){return e.length>=2&&lz(e)&&(e.length===2||e[2]==="/"||e[2]==="\\"||e[2]==="?"||e[2]==="#")}function cz(e,t=!1){if(e.startsWith("["))return e.endsWith("]")?Y5t(e.substring(1,e.length-1)):(wt("Expected ']' after '['."),null);if(t)return Q5t(e);let r=(0,au.utf8Decode)(J5t(e)),n=t$t(r);if(n===null||Hgn.test(n))return wt("Invalid domain."),null;let s=z5t(n);return s===null||(0,au.isNumber)(s)?s:n}function G5t(e,t={value:!1}){let r=10;return e.startsWith("0x")||e.startsWith("0X")?(t.value=!0,e=e.substr(2),r=16):e.length>=2&&e[0]==="0"&&(t.value=!0,e=e.substr(1),r=8),e===""?0:(r===10?/^[0-9]+$/:r===16?/^[0-9A-Fa-f]+$/:/^[0-7]+$/).test(e)?parseInt(e,r):null}function z5t(e){let t={value:!1},r=e.split(".");if(r[r.length-1]===""&&(t.value=!0,r.length>1&&r.pop()),r.length>4)return e;let n=[];for(let a of r){if(a==="")return e;let o=G5t(a,t);if(o===null)return e;n.push(o)}t.value&&wt("Invalid IP v4 address.");for(let a=0;a255&&(wt("Invalid IP v4 address."),a=Math.pow(256,5-n.length))return wt("Invalid IP v4 address."),null;let s=n[n.length-1];n.pop();let i=0;for(let a of n)s+=a*Math.pow(256,3-i),i++;return s}function Y5t(e){let t="",r=[0,0,0,0,0,0,0,0],n=0,s=null,i=new au.StringWalker(e);if(i.c()===":"){if(!i.remaining().startsWith(":"))return wt("Invalid IP v6 address."),null;i.pointer+=2,n+=1,s=n}for(;i.c()!==t;){if(n===8)return wt("Invalid IP v6 address."),null;if(i.c()===":"){if(s!==null)return wt("Invalid IP v6 address."),null;i.pointer++,n++,s=n;continue}let a=0,o=0;for(;o<4&&eo.codePoint.ASCIIHexDigit.test(i.c());)a=a*16+parseInt(i.c(),16),i.pointer++,o++;if(i.c()==="."){if(o===0||(i.pointer-=o,n>6))return wt("Invalid IP v6 address."),null;let c=0;for(;i.c()!==t;){let u=null;if(c>0)if(i.c()==="."&&c<4)i.pointer++;else return wt("Invalid IP v6 address."),null;if(!eo.codePoint.ASCIIDigit.test(i.c()))return wt("Invalid IP v6 address."),null;for(;eo.codePoint.ASCIIDigit.test(i.c());){let l=parseInt(i.c(),10);if(u===null)u=l;else{if(u===0)return wt("Invalid IP v6 address."),null;u=u*10+l}if(u>255)return wt("Invalid IP v6 address."),null;i.pointer++}if(u===null)return wt("Invalid IP v6 address."),null;r[n]=r[n]*256+u,c++,(c===2||c===4)&&n++}if(c!==4)return wt("Invalid IP v6 address."),null;break}else if(i.c()===":"){if(i.pointer++,i.c()===t)return wt("Invalid IP v6 address."),null}else if(i.c()!==t)return wt("Invalid IP v6 address."),null;r[n]=a,n++}if(s!==null){let a=n-s;for(n=7;n!==0&&a>0;)[r[n],r[s+a-1]]=[r[s+a-1],r[n]],n--,a--}else if(s===null&&n!==8)return wt("Invalid IP v6 address."),null;return r}function Q5t(e){if(/[\x00\t\f\r #/:?@\[\\\]]/.test(e))return wt("Invalid host string."),null;let r="";for(let n of e)r+=dy(n,q5t);return r}function W5t(e){return null}function dz(e){return"%"+("00"+e.toString(16).toUpperCase()).slice(-2)}function X5t(e){let t=s=>s>=48&&s<=57||s>=65&&s<=70||s>=97&&s<=102,r=new Uint8Array(e.length),n=0;for(let s=0;s=e.length-2)r[n]=i,n++;else if(i===37&&(!t(e[s+1])||!t(e[s+2])))r[n]=i,n++;else{let a=parseInt((0,au.utf8Decode)(Uint8Array.of(e[s+1],e[s+2])),16);r[n]=a,n++,s+=2}}return r.subarray(0,n)}function J5t(e){return X5t((0,au.utf8Encode)(e))}function dy(e,t){if(!t.test(e))return e;let r=(0,au.utf8Encode)(e),n="";for(let s of r)n+=dz(s);return n}function Ygn(e,t){return e===t}function Qgn(e,t,r=!1){return Bwe(e,r)===Bwe(t,r)}function Wgn(e){return Z5t((0,au.utf8Encode)(e))}function Z5t(e){let t=[],r=[];for(let s of e)s===38?(t.push(Uint8Array.from(r)),r=[]):r.push(s);r.length!==0&&t.push(Uint8Array.from(r));let n=[];for(let s of t){if(s.length===0)continue;let i=s.indexOf(61),a=i!==-1?s.slice(0,i):s,o=i!==-1?s.slice(i+1):new Uint8Array;for(let l=0;l=48&&r<=57||r>=65&&r<=90||r===95||r>=97&&r<=122?t+=String.fromCodePoint(r):t+=dz(r);return t}function Xgn(e,t){if((t===void 0||t==="replacement"||t==="UTF-16BE"||t==="UTF-16LE"?"UTF-8":t).toUpperCase()!=="UTF-8")throw new Error("Only UTF-8 encoding is supported.");let n="";for(let s of e){let i=qwe((0,au.utf8Encode)(s[0])),a=s[1];a=qwe((0,au.utf8Encode)(a)),n!==""&&(n+="&"),n+=i+"="+a}return n}function e$t(e){switch(e.scheme){case"blob":e._blobURLEntry;let t=jwe(e.path[0]);return t===null?at.OpaqueOrigin:e$t(t);case"ftp":case"http":case"https":case"ws":case"wss":return[e.scheme,e.host===null?"":e.host,e.port,null];case"file":return at.OpaqueOrigin;default:return at.OpaqueOrigin}}function t$t(e,t=!1){let r=(0,F5t.domainToASCII)(e);return r===""?(wt("Invalid domain name."),null):r}function Jgn(e,t=!1){let r=(0,F5t.domainToUnicode)(e);return r===""&&wt("Invalid domain name."),r}function Zgn(e){if(e[0]===""&&e[1]===""&&e[2]===null&&e[3]===null)return"null";let t=e[0]+"://"+Vwe(e[1]);return e[2]!==null&&(t+=":"+e[2].toString()),t}});var fy=S(hz=>{"use strict";Object.defineProperty(hz,"__esModule",{value:!0});hz.NodeImpl=void 0;var fz=Zi(),xo=zn(),e_n=wB(),jr=As(),t_n=Ra(),Rr=Dn(),r_n=Gwe(),to=hc(),Ni=class extends e_n.EventTargetImpl{static ELEMENT_NODE=1;static ATTRIBUTE_NODE=2;static TEXT_NODE=3;static CDATA_SECTION_NODE=4;static ENTITY_REFERENCE_NODE=5;static ENTITY_NODE=6;static PROCESSING_INSTRUCTION_NODE=7;static COMMENT_NODE=8;static DOCUMENT_NODE=9;static DOCUMENT_TYPE_NODE=10;static DOCUMENT_FRAGMENT_NODE=11;static NOTATION_NODE=12;static DOCUMENT_POSITION_DISCONNECTED=1;static DOCUMENT_POSITION_PRECEDING=2;static DOCUMENT_POSITION_FOLLOWING=4;static DOCUMENT_POSITION_CONTAINS=8;static DOCUMENT_POSITION_CONTAINED_BY=16;static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;ELEMENT_NODE=1;ATTRIBUTE_NODE=2;TEXT_NODE=3;CDATA_SECTION_NODE=4;ENTITY_REFERENCE_NODE=5;ENTITY_NODE=6;PROCESSING_INSTRUCTION_NODE=7;COMMENT_NODE=8;DOCUMENT_NODE=9;DOCUMENT_TYPE_NODE=10;DOCUMENT_FRAGMENT_NODE=11;NOTATION_NODE=12;DOCUMENT_POSITION_DISCONNECTED=1;DOCUMENT_POSITION_PRECEDING=2;DOCUMENT_POSITION_FOLLOWING=4;DOCUMENT_POSITION_CONTAINS=8;DOCUMENT_POSITION_CONTAINED_BY=16;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;__childNodes;get _childNodes(){return this.__childNodes||(this.__childNodes=(0,Rr.create_nodeList)(this))}_nodeDocumentOverride;get _nodeDocument(){return this._nodeDocumentOverride||fz.dom.window._associatedDocument}set _nodeDocument(t){this._nodeDocumentOverride=t}__registeredObserverList;get _registeredObserverList(){return this.__registeredObserverList||(this.__registeredObserverList=[])}_parent=null;_children=new jr.EmptySet;_firstChild=null;_lastChild=null;_previousSibling=null;_nextSibling=null;constructor(){super()}get nodeType(){return this._nodeType}get nodeName(){return jr.Guard.isElementNode(this)?this._htmlUppercasedQualifiedName:jr.Guard.isAttrNode(this)?this._qualifiedName:jr.Guard.isExclusiveTextNode(this)?"#text":jr.Guard.isCDATASectionNode(this)?"#cdata-section":jr.Guard.isProcessingInstructionNode(this)?this._target:jr.Guard.isCommentNode(this)?"#comment":jr.Guard.isDocumentNode(this)?"#document":jr.Guard.isDocumentTypeNode(this)?this._name:jr.Guard.isDocumentFragmentNode(this)?"#document-fragment":""}get baseURI(){return(0,r_n.urlSerializer)(this._nodeDocument._URL)}get isConnected(){return jr.Guard.isElementNode(this)&&(0,Rr.shadowTree_isConnected)(this)}get ownerDocument(){return this._nodeType===xo.NodeType.Document?null:this._nodeDocument}getRootNode(t){return(0,Rr.tree_rootNode)(this,!!t&&t.composed)}get parentNode(){return this._nodeType===xo.NodeType.Attribute?null:this._parent}get parentElement(){return this._parent&&jr.Guard.isElementNode(this._parent)?this._parent:null}hasChildNodes(){return this._firstChild!==null}get childNodes(){return this._childNodes}get firstChild(){return this._firstChild}get lastChild(){return this._lastChild}get previousSibling(){return this._previousSibling}get nextSibling(){return this._nextSibling}get nodeValue(){return jr.Guard.isAttrNode(this)?this._value:jr.Guard.isCharacterDataNode(this)?this._data:null}set nodeValue(t){t===null&&(t=""),jr.Guard.isAttrNode(this)?(0,Rr.attr_setAnExistingAttributeValue)(this,t):jr.Guard.isCharacterDataNode(this)&&(0,Rr.characterData_replaceData)(this,0,this._data.length,t)}get textContent(){return jr.Guard.isDocumentFragmentNode(this)||jr.Guard.isElementNode(this)?(0,Rr.text_descendantTextContent)(this):jr.Guard.isAttrNode(this)?this._value:jr.Guard.isCharacterDataNode(this)?this._data:null}set textContent(t){t===null&&(t=""),jr.Guard.isDocumentFragmentNode(this)||jr.Guard.isElementNode(this)?(0,Rr.node_stringReplaceAll)(t,this):jr.Guard.isAttrNode(this)?(0,Rr.attr_setAnExistingAttributeValue)(this,t):jr.Guard.isCharacterDataNode(this)&&(0,Rr.characterData_replaceData)(this,0,(0,Rr.tree_nodeLength)(this),t)}normalize(){let t=[],r=(0,Rr.tree_getFirstDescendantNode)(this,!1,!1,n=>jr.Guard.isExclusiveTextNode(n));for(;r!==null;)t.push(r),r=(0,Rr.tree_getNextDescendantNode)(this,r,!1,!1,n=>jr.Guard.isExclusiveTextNode(n));for(let n=0;n{"use strict";Object.defineProperty(gz,"__esModule",{value:!0});gz.DocumentImpl=void 0;var n_n=Zi(),pz=zn(),i_=Ra(),s_n=fy(),NB=As(),zwe=Wn(),i_n=fa(),a_n=Gwe(),Fs=Dn(),o_n=hc(),mz=class extends s_n.NodeImpl{_nodeType=pz.NodeType.Document;_children=new Set;_encoding={name:"UTF-8",labels:["unicode-1-1-utf-8","utf-8","utf8"]};_contentType="application/xml";_URL={scheme:"about",username:"",password:"",host:null,port:null,path:["blank"],query:null,fragment:null,_cannotBeABaseURLFlag:!0,_blobURLEntry:null};_origin=null;_type="xml";_mode="no-quirks";_implementation;_documentElement=null;_hasNamespaces=!1;_nodeDocumentOverwrite=null;get _nodeDocument(){return this._nodeDocumentOverwrite||this}set _nodeDocument(t){this._nodeDocumentOverwrite=t}constructor(){super()}get implementation(){return this._implementation||(this._implementation=(0,Fs.create_domImplementation)(this))}get URL(){return(0,a_n.urlSerializer)(this._URL)}get documentURI(){return this.URL}get origin(){return"null"}get compatMode(){return this._mode==="quirks"?"BackCompat":"CSS1Compat"}get characterSet(){return this._encoding.name}get charset(){return this._encoding.name}get inputEncoding(){return this._encoding.name}get contentType(){return this._contentType}get doctype(){for(let t of this._children)if(NB.Guard.isDocumentTypeNode(t))return t;return null}get documentElement(){return this._documentElement}getElementsByTagName(t){return(0,Fs.node_listOfElementsWithQualifiedName)(t,this)}getElementsByTagNameNS(t,r){return(0,Fs.node_listOfElementsWithNamespace)(t,r,this)}getElementsByClassName(t){return(0,Fs.node_listOfElementsWithClassNames)(t,this)}createElement(t,r){if(!(0,Fs.xml_isName)(t))throw new i_.InvalidCharacterError;this._type==="html"&&(t=t.toLowerCase());let n=null;r!==void 0&&((0,zwe.isString)(r)?n=r:n=r.is);let s=this._type==="html"||this._contentType==="application/xhtml+xml"?i_n.namespace.HTML:null;return(0,Fs.element_createAnElement)(this,t,s,null,n,!0)}createElementNS(t,r,n){return(0,Fs.document_internalCreateElementNS)(this,t,r,n)}createDocumentFragment(){return(0,Fs.create_documentFragment)(this)}createTextNode(t){return(0,Fs.create_text)(this,t)}createCDATASection(t){if(this._type==="html")throw new i_.NotSupportedError;if(t.indexOf("]]>")!==-1)throw new i_.InvalidCharacterError;return(0,Fs.create_cdataSection)(this,t)}createComment(t){return(0,Fs.create_comment)(this,t)}createProcessingInstruction(t,r){if(!(0,Fs.xml_isName)(t))throw new i_.InvalidCharacterError;if(r.indexOf("?>")!==-1)throw new i_.InvalidCharacterError;return(0,Fs.create_processingInstruction)(this,t,r)}importNode(t,r=!1){if(NB.Guard.isDocumentNode(t)||NB.Guard.isShadowRoot(t))throw new i_.NotSupportedError;return(0,Fs.node_clone)(t,this,r)}adoptNode(t){if(NB.Guard.isDocumentNode(t))throw new i_.NotSupportedError;if(NB.Guard.isShadowRoot(t))throw new i_.HierarchyRequestError;return(0,Fs.document_adopt)(t,this),t}createAttribute(t){if(!(0,Fs.xml_isName)(t))throw new i_.InvalidCharacterError;return this._type==="html"&&(t=t.toLowerCase()),(0,Fs.create_attr)(this,t)}createAttributeNS(t,r){let[n,s,i]=(0,Fs.namespace_validateAndExtract)(t,r),a=(0,Fs.create_attr)(this,i);return a._namespace=n,a._namespacePrefix=s,a}createEvent(t){return(0,Fs.event_createLegacyEvent)(t)}createRange(){let t=(0,Fs.create_range)();return t._start=[this,0],t._end=[this,0],t}createNodeIterator(t,r=pz.WhatToShow.All,n=null){let s=(0,Fs.create_nodeIterator)(t,t,!0);return s._whatToShow=r,s._iteratorCollection=(0,Fs.create_nodeList)(t),(0,zwe.isFunction)(n)?(s._filter=(0,Fs.create_nodeFilter)(),s._filter.acceptNode=n):s._filter=n,s}createTreeWalker(t,r=pz.WhatToShow.All,n=null){let s=(0,Fs.create_treeWalker)(t,t);return s._whatToShow=r,(0,zwe.isFunction)(n)?(s._filter=(0,Fs.create_nodeFilter)(),s._filter.acceptNode=n):s._filter=n,s}_getTheParent(t){return t._type==="load"?null:n_n.dom.window}getElementById(t){throw new Error("Mixin: NonElementParentNode not implemented.")}get children(){throw new Error("Mixin: ParentNode not implemented.")}get firstElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get lastElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get childElementCount(){throw new Error("Mixin: ParentNode not implemented.")}prepend(...t){throw new Error("Mixin: ParentNode not implemented.")}append(...t){throw new Error("Mixin: ParentNode not implemented.")}querySelector(t){throw new Error("Mixin: ParentNode not implemented.")}querySelectorAll(t){throw new Error("Mixin: ParentNode not implemented.")}};gz.DocumentImpl=mz;(0,o_n.idl_defineConst)(mz.prototype,"_nodeType",pz.NodeType.Document)});var Qwe=S(Az=>{"use strict";Object.defineProperty(Az,"__esModule",{value:!0});Az.XMLDocumentImpl=void 0;var c_n=_z(),Ywe=class extends c_n.DocumentImpl{constructor(){super()}};Az.XMLDocumentImpl=Ywe});var Xwe=S(Ez=>{"use strict";Object.defineProperty(Ez,"__esModule",{value:!0});Ez.AbortControllerImpl=void 0;var r$t=Dn(),Wwe=class{_signal;constructor(){this._signal=(0,r$t.create_abortSignal)()}get signal(){return this._signal}abort(){(0,r$t.abort_signalAbort)(this._signal)}};Ez.AbortControllerImpl=Wwe});var Zwe=S(yz=>{"use strict";Object.defineProperty(yz,"__esModule",{value:!0});yz.AbortSignalImpl=void 0;var u_n=wB(),n$t=Dn(),Jwe=class e extends u_n.EventTargetImpl{_abortedFlag=!1;_abortAlgorithms=new Set;constructor(){super()}get aborted(){return this._abortedFlag}get onabort(){return(0,n$t.event_getterEventHandlerIDLAttribute)(this,"onabort")}set onabort(t){(0,n$t.event_setterEventHandlerIDLAttribute)(this,"onabort",t)}static _create(){return new e}};yz.AbortSignalImpl=Jwe});var eNe=S(Sz=>{"use strict";Object.defineProperty(Sz,"__esModule",{value:!0});Sz.DocumentTypeImpl=void 0;var s$t=zn(),l_n=fy(),d_n=hc(),vz=class e extends l_n.NodeImpl{_nodeType=s$t.NodeType.DocumentType;_name="";_publicId="";_systemId="";constructor(t,r,n){super(),this._name=t,this._publicId=r,this._systemId=n}get name(){return this._name}get publicId(){return this._publicId}get systemId(){return this._systemId}before(...t){throw new Error("Mixin: ChildNode not implemented.")}after(...t){throw new Error("Mixin: ChildNode not implemented.")}replaceWith(...t){throw new Error("Mixin: ChildNode not implemented.")}remove(){throw new Error("Mixin: ChildNode not implemented.")}static _create(t,r,n="",s=""){let i=new e(r,n,s);return i._nodeDocument=t,i}};Sz.DocumentTypeImpl=vz;(0,d_n.idl_defineConst)(vz.prototype,"_nodeType",s$t.NodeType.DocumentType)});var Iz=S(bz=>{"use strict";Object.defineProperty(bz,"__esModule",{value:!0});bz.ElementImpl=void 0;var i$t=zn(),f_n=fy(),a_=Ra(),OB=fa(),Cr=Dn(),h_n=hc(),Tz=class e extends f_n.NodeImpl{_nodeType=i$t.NodeType.Element;_children=new Set;_namespace=null;_namespacePrefix=null;_localName="";_customElementState="undefined";_customElementDefinition=null;_is=null;_shadowRoot=null;_attributeList=(0,Cr.create_namedNodeMap)(this);_uniqueIdentifier;_attributeChangeSteps=[];_name="";_assignedSlot=null;constructor(){super()}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get tagName(){return this._htmlUppercasedQualifiedName}get id(){return(0,Cr.element_getAnAttributeValue)(this,"id")}set id(t){(0,Cr.element_setAnAttributeValue)(this,"id",t)}get className(){return(0,Cr.element_getAnAttributeValue)(this,"class")}set className(t){(0,Cr.element_setAnAttributeValue)(this,"class",t)}get classList(){let t=(0,Cr.element_getAnAttributeByName)("class",this);return t===null&&(t=(0,Cr.create_attr)(this._nodeDocument,"class")),(0,Cr.create_domTokenList)(this,t)}get slot(){return(0,Cr.element_getAnAttributeValue)(this,"slot")}set slot(t){(0,Cr.element_setAnAttributeValue)(this,"slot",t)}hasAttributes(){return this._attributeList.length!==0}get attributes(){return this._attributeList}getAttributeNames(){let t=[];for(let r of this._attributeList)t.push(r._qualifiedName);return t}getAttribute(t){let r=(0,Cr.element_getAnAttributeByName)(t,this);return r?r._value:null}getAttributeNS(t,r){let n=(0,Cr.element_getAnAttributeByNamespaceAndLocalName)(t,r,this);return n?n._value:null}setAttribute(t,r){if(!(0,Cr.xml_isName)(t))throw new a_.InvalidCharacterError;this._namespace===OB.namespace.HTML&&this._nodeDocument._type==="html"&&(t=t.toLowerCase());let n=null;for(let s=0;s{"use strict";Object.defineProperty(Cz,"__esModule",{value:!0});Cz.DocumentFragmentImpl=void 0;var a$t=zn(),p_n=fy(),m_n=hc(),Rz=class e extends p_n.NodeImpl{_nodeType=a$t.NodeType.DocumentFragment;_children=new Set;_host;constructor(t=null){super(),this._host=t}getElementById(t){throw new Error("Mixin: NonElementParentNode not implemented.")}get children(){throw new Error("Mixin: ParentNode not implemented.")}get firstElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get lastElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get childElementCount(){throw new Error("Mixin: ParentNode not implemented.")}prepend(...t){throw new Error("Mixin: ParentNode not implemented.")}append(...t){throw new Error("Mixin: ParentNode not implemented.")}querySelector(t){throw new Error("Mixin: ParentNode not implemented.")}querySelectorAll(t){throw new Error("Mixin: ParentNode not implemented.")}static _create(t,r=null){let n=new e(r);return n._nodeDocument=t,n}};Cz.DocumentFragmentImpl=Rz;(0,m_n.idl_defineConst)(Rz.prototype,"_nodeType",a$t.NodeType.DocumentFragment)});var rNe=S(wz=>{"use strict";Object.defineProperty(wz,"__esModule",{value:!0});wz.ShadowRootImpl=void 0;var g_n=xz(),__n=Wn(),A_n=Dn(),tNe=class e extends g_n.DocumentFragmentImpl{_host;_mode;constructor(t,r){super(),this._host=t,this._mode=r}get mode(){return this._mode}get host(){return this._host}_getTheParent(t){return!t._composedFlag&&!(0,__n.isEmpty)(t._path)&&(0,A_n.tree_rootNode)(t._path[0].invocationTarget)===this?null:this._host}static _create(t,r){return new e(r,"closed")}};wz.ShadowRootImpl=tNe});var nNe=S(Nz=>{"use strict";Object.defineProperty(Nz,"__esModule",{value:!0});Nz.AttrImpl=void 0;var o$t=zn(),E_n=fy(),y_n=Dn(),c$t=hc(),DB=class e extends E_n.NodeImpl{_nodeType=o$t.NodeType.Attribute;_localName;_namespace=null;_namespacePrefix=null;_element=null;_value="";constructor(t){super(),this._localName=t}specified;get ownerElement(){return this._element}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get name(){return this._qualifiedName}get value(){return this._value}set value(t){(0,y_n.attr_setAnExistingAttributeValue)(this,t)}get _qualifiedName(){return this._namespacePrefix!==null?this._namespacePrefix+":"+this._localName:this._localName}static _create(t,r){let n=new e(r);return n._nodeDocument=t,n}};Nz.AttrImpl=DB;(0,c$t.idl_defineConst)(DB.prototype,"_nodeType",o$t.NodeType.Attribute);(0,c$t.idl_defineConst)(DB.prototype,"specified",!0)});var PB=S(Oz=>{"use strict";Object.defineProperty(Oz,"__esModule",{value:!0});Oz.CharacterDataImpl=void 0;var v_n=fy(),uw=Dn(),sNe=class extends v_n.NodeImpl{_data;constructor(t){super(),this._data=t}get data(){return this._data}set data(t){(0,uw.characterData_replaceData)(this,0,this._data.length,t)}get length(){return this._data.length}substringData(t,r){return(0,uw.characterData_substringData)(this,t,r)}appendData(t){return(0,uw.characterData_replaceData)(this,this._data.length,0,t)}insertData(t,r){(0,uw.characterData_replaceData)(this,t,0,r)}deleteData(t,r){(0,uw.characterData_replaceData)(this,t,r,"")}replaceData(t,r,n){(0,uw.characterData_replaceData)(this,t,r,n)}get previousElementSibling(){throw new Error("Mixin: NonDocumentTypeChildNode not implemented.")}get nextElementSibling(){throw new Error("Mixin: NonDocumentTypeChildNode not implemented.")}before(...t){throw new Error("Mixin: ChildNode not implemented.")}after(...t){throw new Error("Mixin: ChildNode not implemented.")}replaceWith(...t){throw new Error("Mixin: ChildNode not implemented.")}remove(){throw new Error("Mixin: ChildNode not implemented.")}};Oz.CharacterDataImpl=sNe});var Lz=S(Pz=>{"use strict";Object.defineProperty(Pz,"__esModule",{value:!0});Pz.TextImpl=void 0;var l$t=zn(),S_n=PB(),u$t=Dn(),T_n=hc(),Dz=class e extends S_n.CharacterDataImpl{_nodeType=l$t.NodeType.Text;_name="";_assignedSlot=null;constructor(t=""){super(t)}get wholeText(){let t="";for(let r of(0,u$t.text_contiguousTextNodes)(this,!0))t=t+r._data;return t}splitText(t){return(0,u$t.text_split)(this,t)}get assignedSlot(){throw new Error("Mixin: Slotable not implemented.")}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};Pz.TextImpl=Dz;(0,T_n.idl_defineConst)(Dz.prototype,"_nodeType",l$t.NodeType.Text)});var iNe=S(kz=>{"use strict";Object.defineProperty(kz,"__esModule",{value:!0});kz.CDATASectionImpl=void 0;var b_n=Lz(),d$t=zn(),I_n=hc(),Mz=class e extends b_n.TextImpl{_nodeType=d$t.NodeType.CData;constructor(t){super(t)}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};kz.CDATASectionImpl=Mz;(0,I_n.idl_defineConst)(Mz.prototype,"_nodeType",d$t.NodeType.CData)});var aNe=S(Uz=>{"use strict";Object.defineProperty(Uz,"__esModule",{value:!0});Uz.CommentImpl=void 0;var f$t=zn(),R_n=PB(),C_n=hc(),Bz=class e extends R_n.CharacterDataImpl{_nodeType=f$t.NodeType.Comment;constructor(t=""){super(t)}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};Uz.CommentImpl=Bz;(0,C_n.idl_defineConst)(Bz.prototype,"_nodeType",f$t.NodeType.Comment)});var oNe=S($z=>{"use strict";Object.defineProperty($z,"__esModule",{value:!0});$z.ProcessingInstructionImpl=void 0;var h$t=zn(),x_n=PB(),w_n=hc(),Fz=class e extends x_n.CharacterDataImpl{_nodeType=h$t.NodeType.ProcessingInstruction;_target;constructor(t,r){super(r),this._target=t}get target(){return this._target}static _create(t,r,n){let s=new e(r,n);return s._nodeDocument=t,s}};$z.ProcessingInstructionImpl=Fz;(0,w_n.idl_defineConst)(Fz.prototype,"_nodeType",h$t.NodeType.ProcessingInstruction)});var uNe=S(qz=>{"use strict";Object.defineProperty(qz,"__esModule",{value:!0});qz.HTMLCollectionImpl=void 0;var N_n=fa(),o_=Dn(),hy=As(),p$t=Wn(),cNe=class e{_live=!0;_root;_filter;static reservedNames=["_root","_live","_filter","length","item","namedItem","get","set"];constructor(t,r){return this._root=t,this._filter=r,new Proxy(this,this)}get length(){let t=0,r=(0,o_.tree_getFirstDescendantNode)(this._root,!1,!1,n=>hy.Guard.isElementNode(n)&&this._filter(n));for(;r!==null;)t++,r=(0,o_.tree_getNextDescendantNode)(this._root,r,!1,!1,n=>hy.Guard.isElementNode(n)&&this._filter(n));return t}item(t){let r=0,n=(0,o_.tree_getFirstDescendantNode)(this._root,!1,!1,s=>hy.Guard.isElementNode(s)&&this._filter(s));for(;n!==null;){if(r===t)return n;r++,n=(0,o_.tree_getNextDescendantNode)(this._root,n,!1,!1,s=>hy.Guard.isElementNode(s)&&this._filter(s))}return null}namedItem(t){if(t==="")return null;let r=(0,o_.tree_getFirstDescendantNode)(this._root,!1,!1,n=>hy.Guard.isElementNode(n)&&this._filter(n));for(;r!=null;){if(r._uniqueIdentifier===t)return r;if(r._namespace===N_n.namespace.HTML)for(let n=0;nhy.Guard.isElementNode(n)&&this._filter(n))}return null}[Symbol.iterator](){let t=this._root,r=this._filter,n=(0,o_.tree_getFirstDescendantNode)(t,!1,!1,s=>hy.Guard.isElementNode(s)&&r(s));return{next(){if(n===null)return{done:!0,value:null};{let s={done:!1,value:n};return n=(0,o_.tree_getNextDescendantNode)(t,n,!1,!1,i=>hy.Guard.isElementNode(i)&&r(i)),s}}}}get(t,r,n){if(!(0,p$t.isString)(r)||e.reservedNames.indexOf(r)!==-1)return Reflect.get(t,r,n);let s=Number(r);return isNaN(s)?t.namedItem(r)||void 0:t.item(s)||void 0}set(t,r,n,s){if(!(0,p$t.isString)(r)||e.reservedNames.indexOf(r)!==-1)return Reflect.set(t,r,n,s);let i=Number(r),a=isNaN(i)?t.namedItem(r)||void 0:t.item(i)||void 0;return a&&a._parent?((0,o_.mutation_replace)(a,n,a._parent),!0):!1}static _create(t,r=()=>!0){return new e(t,r)}};qz.HTMLCollectionImpl=cNe});var dNe=S(Hz=>{"use strict";Object.defineProperty(Hz,"__esModule",{value:!0});Hz.NodeListImpl=void 0;var O_n=Zi(),m$t=Wn(),D_n=Dn(),lNe=class e{_live=!0;_root;_filter=null;_length=0;constructor(t){return this._root=t,new Proxy(this,this)}get length(){return this._root._children.size}item(t){if(t<0||t>this.length-1)return null;if(t{"use strict";Object.defineProperty(Vz,"__esModule",{value:!0});Vz.NodeListStaticImpl=void 0;var P_n=Zi(),g$t=Wn(),fNe=class e{_live=!1;_root;_filter;_items=[];_length=0;constructor(t){return this._root=t,this._items=[],this._filter=function(r){return!0},new Proxy(this,this)}get length(){return this._items.length}item(t){return t<0||t>this.length-1?null:this._items[t]}keys(){return{[Symbol.iterator]:function(){let t=0;return{next:function(){return t===this.length?{done:!0,value:null}:{done:!1,value:t++}}.bind(this)}}.bind(this)}}values(){return{[Symbol.iterator]:function(){let t=this[Symbol.iterator]();return{next(){return t.next()}}}.bind(this)}}entries(){return{[Symbol.iterator]:function(){let t=this[Symbol.iterator](),r=0;return{next(){let n=t.next();return n.done?{done:!0,value:null}:{done:!1,value:[r++,n.value]}}}}.bind(this)}}[Symbol.iterator](){let t=this._items[Symbol.iterator]();return{next(){return t.next()}}}forEach(t,r){r===void 0&&(r=P_n.dom.window);let n=0;for(let s of this._items)t.call(r,s,n++,this)}get(t,r,n){if(!(0,g$t.isString)(r))return Reflect.get(t,r,n);let s=Number(r);return isNaN(s)?Reflect.get(t,r,n):t._items[s]||void 0}set(t,r,n,s){if(!(0,g$t.isString)(r))return Reflect.set(t,r,n,s);let i=Number(r);return isNaN(i)?Reflect.set(t,r,n,s):i>=0&&i{"use strict";Object.defineProperty(jz,"__esModule",{value:!0});jz.NamedNodeMapImpl=void 0;var _$t=Ra(),lw=Dn(),pNe=class e extends Array{_element;constructor(t){super(),this._element=t,Object.setPrototypeOf(this,e.prototype)}_asArray(){return this}item(t){return this[t]||null}getNamedItem(t){return(0,lw.element_getAnAttributeByName)(t,this._element)}getNamedItemNS(t,r){return(0,lw.element_getAnAttributeByNamespaceAndLocalName)(t||"",r,this._element)}setNamedItem(t){return(0,lw.element_setAnAttribute)(t,this._element)}setNamedItemNS(t){return(0,lw.element_setAnAttribute)(t,this._element)}removeNamedItem(t){let r=(0,lw.element_removeAnAttributeByName)(t,this._element);if(r===null)throw new _$t.NotFoundError;return r}removeNamedItemNS(t,r){let n=(0,lw.element_removeAnAttributeByNamespaceAndLocalName)(t||"",r,this._element);if(n===null)throw new _$t.NotFoundError;return n}static _create(t){return new e(t)}};jz.NamedNodeMapImpl=pNe});var Gz=S(Kz=>{"use strict";Object.defineProperty(Kz,"__esModule",{value:!0});Kz.AbstractRangeImpl=void 0;var gNe=class{get _startNode(){return this._start[0]}get _startOffset(){return this._start[1]}get _endNode(){return this._end[0]}get _endOffset(){return this._end[1]}get _collapsed(){return this._start[0]===this._end[0]&&this._start[1]===this._end[1]}get startContainer(){return this._startNode}get startOffset(){return this._startOffset}get endContainer(){return this._endNode}get endOffset(){return this._endOffset}get collapsed(){return this._collapsed}};Kz.AbstractRangeImpl=gNe});var ANe=S(Yz=>{"use strict";Object.defineProperty(Yz,"__esModule",{value:!0});Yz.RangeImpl=void 0;var _Ne=Zi(),pc=zn(),L_n=Gz(),ou=Ra(),Bt=Dn(),zz=hc(),al=As(),_b=class e extends L_n.AbstractRangeImpl{static START_TO_START=0;static START_TO_END=1;static END_TO_END=2;static END_TO_START=3;START_TO_START=0;START_TO_END=1;END_TO_END=2;END_TO_START=3;_start;_end;constructor(){super();let t=_Ne.dom.window._associatedDocument;this._start=[t,0],this._end=[t,0],_Ne.dom.rangeList.add(this)}get commonAncestorContainer(){let t=this._start[0];for(;!(0,Bt.tree_isAncestorOf)(this._end[0],t,!0);){if(t._parent===null)throw new Error("Parent node is null.");t=t._parent}return t}setStart(t,r){(0,Bt.range_setTheStart)(this,t,r)}setEnd(t,r){(0,Bt.range_setTheEnd)(this,t,r)}setStartBefore(t){let r=t._parent;if(r===null)throw new ou.InvalidNodeTypeError;(0,Bt.range_setTheStart)(this,r,(0,Bt.tree_index)(t))}setStartAfter(t){let r=t._parent;if(r===null)throw new ou.InvalidNodeTypeError;(0,Bt.range_setTheStart)(this,r,(0,Bt.tree_index)(t)+1)}setEndBefore(t){let r=t._parent;if(r===null)throw new ou.InvalidNodeTypeError;(0,Bt.range_setTheEnd)(this,r,(0,Bt.tree_index)(t))}setEndAfter(t){let r=t._parent;if(r===null)throw new ou.InvalidNodeTypeError;(0,Bt.range_setTheEnd)(this,r,(0,Bt.tree_index)(t)+1)}collapse(t){t?this._end=this._start:this._start=this._end}selectNode(t){(0,Bt.range_select)(t,this)}selectNodeContents(t){if(al.Guard.isDocumentTypeNode(t))throw new ou.InvalidNodeTypeError;let r=(0,Bt.tree_nodeLength)(t);this._start=[t,0],this._end=[t,r]}compareBoundaryPoints(t,r){if(t!==pc.HowToCompare.StartToStart&&t!==pc.HowToCompare.StartToEnd&&t!==pc.HowToCompare.EndToEnd&&t!==pc.HowToCompare.EndToStart)throw new ou.NotSupportedError;if((0,Bt.range_root)(this)!==(0,Bt.range_root)(r))throw new ou.WrongDocumentError;let n,s;switch(t){case pc.HowToCompare.StartToStart:n=this._start,s=r._start;break;case pc.HowToCompare.StartToEnd:n=this._end,s=r._start;break;case pc.HowToCompare.EndToEnd:n=this._end,s=r._end;break;case pc.HowToCompare.EndToStart:n=this._start,s=r._end;break;default:throw new ou.NotSupportedError}let i=(0,Bt.boundaryPoint_position)(n,s);return i===pc.BoundaryPosition.Before?-1:i===pc.BoundaryPosition.After?1:0}deleteContents(){if((0,Bt.range_collapsed)(this))return;let t=this._startNode,r=this._startOffset,n=this._endNode,s=this._endOffset;if(t===n&&al.Guard.isCharacterDataNode(t)){(0,Bt.characterData_replaceData)(t,r,s-r,"");return}let i=[];for(let c of(0,Bt.range_getContainedNodes)(this)){let u=c._parent;u!==null&&(0,Bt.range_isContained)(u,this)||i.push(c)}let a,o;if((0,Bt.tree_isAncestorOf)(n,t,!0))a=t,o=r;else{let c=t;for(;c._parent!==null&&!(0,Bt.tree_isAncestorOf)(n,c._parent,!0);)c=c._parent;if(c._parent===null)throw new Error("Parent node is null.");a=c._parent,o=(0,Bt.tree_index)(c)+1}al.Guard.isCharacterDataNode(t)&&(0,Bt.characterData_replaceData)(t,r,(0,Bt.tree_nodeLength)(t)-r,"");for(let c of i)c._parent&&(0,Bt.mutation_remove)(c,c._parent);al.Guard.isCharacterDataNode(n)&&(0,Bt.characterData_replaceData)(n,0,s,""),this._start=[a,o],this._end=[a,o]}extractContents(){return(0,Bt.range_extract)(this)}cloneContents(){return(0,Bt.range_cloneTheContents)(this)}insertNode(t){return(0,Bt.range_insert)(t,this)}surroundContents(t){for(let n of(0,Bt.range_getPartiallyContainedNodes)(this))if(!al.Guard.isTextNode(n))throw new ou.InvalidStateError;if(al.Guard.isDocumentNode(t)||al.Guard.isDocumentTypeNode(t)||al.Guard.isDocumentFragmentNode(t))throw new ou.InvalidNodeTypeError;let r=(0,Bt.range_extract)(this);t._children.size!==0&&(0,Bt.mutation_replaceAll)(null,t),(0,Bt.range_insert)(t,this),(0,Bt.mutation_append)(r,t),(0,Bt.range_select)(t,this)}cloneRange(){return(0,Bt.create_range)(this._start,this._end)}detach(){_Ne.dom.rangeList.delete(this)}isPointInRange(t,r){if((0,Bt.tree_rootNode)(t)!==(0,Bt.range_root)(this))return!1;if(al.Guard.isDocumentTypeNode(t))throw new ou.InvalidNodeTypeError;if(r>(0,Bt.tree_nodeLength)(t))throw new ou.IndexSizeError;let n=[t,r];return!((0,Bt.boundaryPoint_position)(n,this._start)===pc.BoundaryPosition.Before||(0,Bt.boundaryPoint_position)(n,this._end)===pc.BoundaryPosition.After)}comparePoint(t,r){if((0,Bt.tree_rootNode)(t)!==(0,Bt.range_root)(this))throw new ou.WrongDocumentError;if(al.Guard.isDocumentTypeNode(t))throw new ou.InvalidNodeTypeError;if(r>(0,Bt.tree_nodeLength)(t))throw new ou.IndexSizeError;let n=[t,r];return(0,Bt.boundaryPoint_position)(n,this._start)===pc.BoundaryPosition.Before?-1:(0,Bt.boundaryPoint_position)(n,this._end)===pc.BoundaryPosition.After?1:0}intersectsNode(t){if((0,Bt.tree_rootNode)(t)!==(0,Bt.range_root)(this))return!1;let r=t._parent;if(r===null)return!0;let n=(0,Bt.tree_index)(t);return(0,Bt.boundaryPoint_position)([r,n],this._end)===pc.BoundaryPosition.Before&&(0,Bt.boundaryPoint_position)([r,n+1],this._start)===pc.BoundaryPosition.After}toString(){let t="";if(this._startNode===this._endNode&&al.Guard.isTextNode(this._startNode))return this._startNode._data.substring(this._startOffset,this._endOffset);al.Guard.isTextNode(this._startNode)&&(t+=this._startNode._data.substring(this._startOffset));for(let r of(0,Bt.range_getContainedNodes)(this))al.Guard.isTextNode(r)&&(t+=r._data);return al.Guard.isTextNode(this._endNode)&&(t+=this._endNode._data.substring(0,this._endOffset)),t}static _create(t,r){let n=new e;return t&&(n._start=t),r&&(n._end=r),n}};Yz.RangeImpl=_b;(0,zz.idl_defineConst)(_b.prototype,"START_TO_START",0);(0,zz.idl_defineConst)(_b.prototype,"START_TO_END",1);(0,zz.idl_defineConst)(_b.prototype,"END_TO_END",2);(0,zz.idl_defineConst)(_b.prototype,"END_TO_START",3)});var Wz=S(Qz=>{"use strict";Object.defineProperty(Qz,"__esModule",{value:!0});Qz.TraverserImpl=void 0;var M_n=zn(),ENe=class{_activeFlag;_root;_whatToShow;_filter;constructor(t){this._activeFlag=!1,this._root=t,this._whatToShow=M_n.WhatToShow.All,this._filter=null}get root(){return this._root}get whatToShow(){return this._whatToShow}get filter(){return this._filter}};Qz.TraverserImpl=ENe});var vNe=S(Jz=>{"use strict";Object.defineProperty(Jz,"__esModule",{value:!0});Jz.NodeIteratorImpl=void 0;var k_n=Wz(),Xz=Dn(),yNe=class e extends k_n.TraverserImpl{_iteratorCollection;_reference;_pointerBeforeReference;constructor(t,r,n){super(t),this._iteratorCollection=void 0,this._reference=r,this._pointerBeforeReference=n,(0,Xz.nodeIterator_iteratorList)().add(this)}get referenceNode(){return this._reference}get pointerBeforeReferenceNode(){return this._pointerBeforeReference}nextNode(){return(0,Xz.nodeIterator_traverse)(this,!0)}previousNode(){return(0,Xz.nodeIterator_traverse)(this,!1)}detach(){(0,Xz.nodeIterator_iteratorList)().delete(this)}static _create(t,r,n){return new e(t,r,n)}};Jz.NodeIteratorImpl=yNe});var TNe=S(Zz=>{"use strict";Object.defineProperty(Zz,"__esModule",{value:!0});Zz.TreeWalkerImpl=void 0;var py=zn(),B_n=Wz(),Ap=Dn(),SNe=class e extends B_n.TraverserImpl{_current;constructor(t,r){super(t),this._current=r}get currentNode(){return this._current}set currentNode(t){this._current=t}parentNode(){let t=this._current;for(;t!==null&&t!==this._root;)if(t=t._parent,t!==null&&(0,Ap.traversal_filter)(this,t)===py.FilterResult.Accept)return this._current=t,t;return null}firstChild(){return(0,Ap.treeWalker_traverseChildren)(this,!0)}lastChild(){return(0,Ap.treeWalker_traverseChildren)(this,!1)}nextSibling(){return(0,Ap.treeWalker_traverseSiblings)(this,!0)}previousNode(){let t=this._current;for(;t!==this._root;){let r=t._previousSibling;for(;r;){t=r;let n=(0,Ap.traversal_filter)(this,t);for(;n!==py.FilterResult.Reject&&t._lastChild;)t=t._lastChild,n=(0,Ap.traversal_filter)(this,t);if(n===py.FilterResult.Accept)return this._current=t,t;r=t._previousSibling}if(t===this._root||t._parent===null)return null;if(t=t._parent,(0,Ap.traversal_filter)(this,t)===py.FilterResult.Accept)return this._current=t,t}return null}previousSibling(){return(0,Ap.treeWalker_traverseSiblings)(this,!1)}nextNode(){let t=this._current,r=py.FilterResult.Accept;for(;;){for(;r!==py.FilterResult.Reject&&t._firstChild;)if(t=t._firstChild,r=(0,Ap.traversal_filter)(this,t),r===py.FilterResult.Accept)return this._current=t,t;let n=null,s=t;for(;s!==null;){if(s===this._root)return null;if(n=s._nextSibling,n!==null){t=n;break}s=s._parent}if(r=(0,Ap.traversal_filter)(this,t),r===py.FilterResult.Accept)return this._current=t,t}}static _create(t,r){return new e(t,r)}};Zz.TreeWalkerImpl=SNe});var bNe=S(eY=>{"use strict";Object.defineProperty(eY,"__esModule",{value:!0});eY.NodeFilterImpl=void 0;var U_n=zn(),mc=hc(),xa=class e{static FILTER_ACCEPT=1;static FILTER_REJECT=2;static FILTER_SKIP=3;static SHOW_ALL=4294967295;static SHOW_ELEMENT=1;static SHOW_ATTRIBUTE=2;static SHOW_TEXT=4;static SHOW_CDATA_SECTION=8;static SHOW_ENTITY_REFERENCE=16;static SHOW_ENTITY=32;static SHOW_PROCESSING_INSTRUCTION=64;static SHOW_COMMENT=128;static SHOW_DOCUMENT=256;static SHOW_DOCUMENT_TYPE=512;static SHOW_DOCUMENT_FRAGMENT=1024;static SHOW_NOTATION=2048;FILTER_ACCEPT=1;FILTER_REJECT=2;FILTER_SKIP=3;SHOW_ALL=4294967295;SHOW_ELEMENT=1;SHOW_ATTRIBUTE=2;SHOW_TEXT=4;SHOW_CDATA_SECTION=8;SHOW_ENTITY_REFERENCE=16;SHOW_ENTITY=32;SHOW_PROCESSING_INSTRUCTION=64;SHOW_COMMENT=128;SHOW_DOCUMENT=256;SHOW_DOCUMENT_TYPE=512;SHOW_DOCUMENT_FRAGMENT=1024;SHOW_NOTATION=2048;constructor(){}acceptNode(t){return U_n.FilterResult.Accept}static _create(){return new e}};eY.NodeFilterImpl=xa;(0,mc.idl_defineConst)(xa.prototype,"FILTER_ACCEPT",1);(0,mc.idl_defineConst)(xa.prototype,"FILTER_REJECT",2);(0,mc.idl_defineConst)(xa.prototype,"FILTER_SKIP",3);(0,mc.idl_defineConst)(xa.prototype,"SHOW_ALL",4294967295);(0,mc.idl_defineConst)(xa.prototype,"SHOW_ELEMENT",1);(0,mc.idl_defineConst)(xa.prototype,"SHOW_ATTRIBUTE",2);(0,mc.idl_defineConst)(xa.prototype,"SHOW_TEXT",4);(0,mc.idl_defineConst)(xa.prototype,"SHOW_CDATA_SECTION",8);(0,mc.idl_defineConst)(xa.prototype,"SHOW_ENTITY_REFERENCE",16);(0,mc.idl_defineConst)(xa.prototype,"SHOW_ENTITY",32);(0,mc.idl_defineConst)(xa.prototype,"SHOW_PROCESSING_INSTRUCTION",64);(0,mc.idl_defineConst)(xa.prototype,"SHOW_COMMENT",128);(0,mc.idl_defineConst)(xa.prototype,"SHOW_DOCUMENT",256);(0,mc.idl_defineConst)(xa.prototype,"SHOW_DOCUMENT_TYPE",512);(0,mc.idl_defineConst)(xa.prototype,"SHOW_DOCUMENT_FRAGMENT",1024);(0,mc.idl_defineConst)(xa.prototype,"SHOW_NOTATION",2048)});var RNe=S(tY=>{"use strict";Object.defineProperty(tY,"__esModule",{value:!0});tY.MutationRecordImpl=void 0;var INe=class e{_type;_target;_addedNodes;_removedNodes;_previousSibling;_nextSibling;_attributeName;_attributeNamespace;_oldValue;constructor(t,r,n,s,i,a,o,c,u){this._type=t,this._target=r,this._addedNodes=n,this._removedNodes=s,this._previousSibling=i,this._nextSibling=a,this._attributeName=o,this._attributeNamespace=c,this._oldValue=u}get type(){return this._type}get target(){return this._target}get addedNodes(){return this._addedNodes}get removedNodes(){return this._removedNodes}get previousSibling(){return this._previousSibling}get nextSibling(){return this._nextSibling}get attributeName(){return this._attributeName}get attributeNamespace(){return this._attributeNamespace}get oldValue(){return this._oldValue}static _create(t,r,n,s,i,a,o,c,u){return new e(t,r,n,s,i,a,o,c,u)}};tY.MutationRecordImpl=INe});var xNe=S(rY=>{"use strict";Object.defineProperty(rY,"__esModule",{value:!0});rY.DOMTokenListImpl=void 0;var F_n=Zi(),my=Ra(),dw=fa(),w0=Dn(),CNe=class e{_element;_attribute;_tokenSet;constructor(t,r){this._element=t,this._attribute=r,this._tokenSet=new Set;let n=r._localName,s=(0,w0.element_getAnAttributeValue)(t,n),i=this;function a(o,c,u,l,d){c===i._attribute._localName&&d===null&&(l?i._tokenSet=(0,w0.orderedSet_parse)(l):i._tokenSet.clear())}this._element._attributeChangeSteps.push(a),F_n.dom.features.steps&&(0,w0.dom_runAttributeChangeSteps)(t,n,s,s,null)}get length(){return this._tokenSet.size}item(t){let r=0;for(let n of this._tokenSet){if(r===t)return n;r++}return null}contains(t){return this._tokenSet.has(t)}add(...t){for(let r of t){if(r==="")throw new my.SyntaxError("Cannot add an empty token.");if(dw.codePoint.ASCIIWhiteSpace.test(r))throw new my.InvalidCharacterError("Token cannot contain whitespace.");this._tokenSet.add(r)}(0,w0.tokenList_updateSteps)(this)}remove(...t){for(let r of t){if(r==="")throw new my.SyntaxError("Cannot remove an empty token.");if(dw.codePoint.ASCIIWhiteSpace.test(r))throw new my.InvalidCharacterError("Token cannot contain whitespace.");this._tokenSet.delete(r)}(0,w0.tokenList_updateSteps)(this)}toggle(t,r=void 0){if(t==="")throw new my.SyntaxError("Cannot toggle an empty token.");if(dw.codePoint.ASCIIWhiteSpace.test(t))throw new my.InvalidCharacterError("Token cannot contain whitespace.");return this._tokenSet.has(t)?r===void 0||r===!1?(this._tokenSet.delete(t),(0,w0.tokenList_updateSteps)(this),!1):!0:r===void 0||r===!0?(this._tokenSet.add(t),(0,w0.tokenList_updateSteps)(this),!0):!1}replace(t,r){if(t===""||r==="")throw new my.SyntaxError("Cannot replace an empty token.");if(dw.codePoint.ASCIIWhiteSpace.test(t)||dw.codePoint.ASCIIWhiteSpace.test(r))throw new my.InvalidCharacterError("Token cannot contain whitespace.");return this._tokenSet.has(t)?(dw.set.replace(this._tokenSet,t,r),(0,w0.tokenList_updateSteps)(this),!0):!1}supports(t){return(0,w0.tokenList_validationSteps)(this,t)}get value(){return(0,w0.tokenList_serializeSteps)(this)}set value(t){(0,w0.element_setAnAttributeValue)(this._element,this._attribute._localName,t)}[Symbol.iterator](){let t=this._tokenSet[Symbol.iterator]();return{next(){return t.next()}}}static _create(t,r){return new e(t,r)}};rY.DOMTokenListImpl=CNe});var c_=S(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.create_domImplementation=lAn;ns.create_window=dAn;ns.create_xmlDocument=fAn;ns.create_document=hAn;ns.create_abortController=pAn;ns.create_abortSignal=mAn;ns.create_documentType=gAn;ns.create_element=_An;ns.create_htmlElement=AAn;ns.create_htmlUnknownElement=EAn;ns.create_documentFragment=yAn;ns.create_shadowRoot=vAn;ns.create_attr=SAn;ns.create_text=TAn;ns.create_cdataSection=bAn;ns.create_comment=IAn;ns.create_processingInstruction=RAn;ns.create_htmlCollection=CAn;ns.create_nodeList=xAn;ns.create_nodeListStatic=wAn;ns.create_namedNodeMap=NAn;ns.create_range=OAn;ns.create_nodeIterator=DAn;ns.create_treeWalker=PAn;ns.create_nodeFilter=LAn;ns.create_mutationRecord=MAn;ns.create_domTokenList=kAn;var $_n=twe(),q_n=Lwe(),H_n=Qwe(),V_n=_z(),j_n=Xwe(),K_n=Zwe(),G_n=eNe(),wNe=Iz(),z_n=xz(),Y_n=rNe(),Q_n=nNe(),W_n=Lz(),X_n=iNe(),J_n=aNe(),Z_n=oNe(),eAn=uNe(),tAn=dNe(),rAn=hNe(),nAn=mNe(),sAn=ANe(),iAn=vNe(),aAn=TNe(),oAn=bNe(),cAn=RNe(),uAn=xNe();function lAn(e){return $_n.DOMImplementationImpl._create(e)}function dAn(){return q_n.WindowImpl._create()}function fAn(){return new H_n.XMLDocumentImpl}function hAn(){return new V_n.DocumentImpl}function pAn(){return new j_n.AbortControllerImpl}function mAn(){return K_n.AbortSignalImpl._create()}function gAn(e,t,r,n){return G_n.DocumentTypeImpl._create(e,t,r,n)}function _An(e,t,r,n){return wNe.ElementImpl._create(e,t,r,n)}function AAn(e,t,r,n){return wNe.ElementImpl._create(e,t,r,n)}function EAn(e,t,r,n){return wNe.ElementImpl._create(e,t,r,n)}function yAn(e){return z_n.DocumentFragmentImpl._create(e)}function vAn(e,t){return Y_n.ShadowRootImpl._create(e,t)}function SAn(e,t){return Q_n.AttrImpl._create(e,t)}function TAn(e,t){return W_n.TextImpl._create(e,t)}function bAn(e,t){return X_n.CDATASectionImpl._create(e,t)}function IAn(e,t){return J_n.CommentImpl._create(e,t)}function RAn(e,t,r){return Z_n.ProcessingInstructionImpl._create(e,t,r)}function CAn(e,t=()=>!0){return eAn.HTMLCollectionImpl._create(e,t)}function xAn(e){return tAn.NodeListImpl._create(e)}function wAn(e,t){return rAn.NodeListStaticImpl._create(e,t)}function NAn(e){return nAn.NamedNodeMapImpl._create(e)}function OAn(e,t){return sAn.RangeImpl._create(e,t)}function DAn(e,t,r){return iAn.NodeIteratorImpl._create(e,t,r)}function PAn(e,t){return aAn.TreeWalkerImpl._create(e,t)}function LAn(){return oAn.NodeFilterImpl._create()}function MAn(e,t,r,n,s,i,a,o,c){return cAn.MutationRecordImpl._create(e,t,r,n,s,i,a,o,c)}function kAn(e,t){return uAn.DOMTokenListImpl._create(e,t)}});var Zi=S(nY=>{"use strict";Object.defineProperty(nY,"__esModule",{value:!0});nY.dom=void 0;var NNe=Wn(),BAn=c_(),ONe=class e{static _instance;_features={mutationObservers:!0,customElements:!0,slots:!0,steps:!0};_window=null;_compareCache;_rangeList;constructor(){this._compareCache=new NNe.CompareCache,this._rangeList=new NNe.FixedSizeSet}setFeatures(t){if(t===void 0&&(t=!0),(0,NNe.isObject)(t))for(let r in t)this._features[r]=t[r]||!1;else for(let r in this._features)this._features[r]=t}get features(){return this._features}get window(){return this._window===null&&(this._window=(0,BAn.create_window)()),this._window}get compareCache(){return this._compareCache}get rangeList(){return this._rangeList}static get instance(){return e._instance||(e._instance=new e),e._instance}};nY.dom=ONe.instance});var aY=S(iY=>{"use strict";Object.defineProperty(iY,"__esModule",{value:!0});iY.EventImpl=void 0;var UAn=zn(),DNe=Dn(),sY=hc(),Ab=class{static NONE=0;static CAPTURING_PHASE=1;static AT_TARGET=2;static BUBBLING_PHASE=3;NONE=0;CAPTURING_PHASE=1;AT_TARGET=2;BUBBLING_PHASE=3;_target=null;_relatedTarget=null;_touchTargetList=[];_path=[];_currentTarget=null;_eventPhase=UAn.EventPhase.None;_stopPropagationFlag=!1;_stopImmediatePropagationFlag=!1;_canceledFlag=!1;_inPassiveListenerFlag=!1;_composedFlag=!1;_initializedFlag=!1;_dispatchFlag=!1;_isTrusted=!1;_type;_bubbles=!1;_cancelable=!1;_timeStamp;constructor(t,r){this._type=t,r&&(this._bubbles=r.bubbles||!1,this._cancelable=r.cancelable||!1,this._composedFlag=r.composed||!1),this._initializedFlag=!0,this._timeStamp=new Date().getTime()}get type(){return this._type}get target(){return this._target}get srcElement(){return this._target}get currentTarget(){return this._currentTarget}composedPath(){let t=[],r=this._path;if(r.length===0)return t;let n=this._currentTarget;if(n===null)throw new Error("Event currentTarget is null.");t.push(n);let s=0,i=0,a=r.length-1;for(;a>=0;){if(r[a].rootOfClosedTree&&i++,r[a].invocationTarget===n){s=a;break}r[a].slotInClosedTree&&i--,a--}let o=i,c=i;for(a=s-1;a>=0;)r[a].rootOfClosedTree&&o++,o<=c&&t.unshift(r[a].invocationTarget),r[a].slotInClosedTree&&(o--,o{"use strict";Object.defineProperty(oY,"__esModule",{value:!0});oY.CustomEventImpl=void 0;var FAn=aY(),$An=Dn(),PNe=class extends FAn.EventImpl{_detail=null;constructor(t,r){super(t,r),this._detail=r&&r.detail||null}get detail(){return this._detail}initCustomEvent(t,r=!1,n=!1,s=null){this._dispatchFlag||((0,$An.event_initialize)(this,t,r,n),this._detail=s)}};oY.CustomEventImpl=PNe});var Yl=S($n=>{"use strict";Object.defineProperty($n,"__esModule",{value:!0});$n.tree_getFirstDescendantNode=MNe;$n.tree_getNextDescendantNode=kNe;$n.tree_getDescendantNodes=A$t;$n.tree_getDescendantElements=qAn;$n.tree_getSiblingNodes=HAn;$n.tree_getFirstAncestorNode=cY;$n.tree_getNextAncestorNode=uY;$n.tree_getAncestorNodes=VAn;$n.tree_getCommonAncestor=jAn;$n.tree_getFollowingNode=KAn;$n.tree_getPrecedingNode=GAn;$n.tree_isConstrained=E$t;$n.tree_nodeLength=y$t;$n.tree_isEmpty=zAn;$n.tree_rootNode=N0;$n.tree_isDescendantOf=YAn;$n.tree_isAncestorOf=BNe;$n.tree_isHostIncludingAncestorOf=v$t;$n.tree_isSiblingOf=QAn;$n.tree_isPreceding=WAn;$n.tree_isFollowing=XAn;$n.tree_isParentOf=JAn;$n.tree_isChildOf=ZAn;$n.tree_previousSibling=eEn;$n.tree_nextSibling=tEn;$n.tree_firstChild=rEn;$n.tree_lastChild=nEn;$n.tree_treePosition=LB;$n.tree_index=sEn;$n.tree_retarget=iEn;var lf=As(),wo=zn();function Eb(e,t,r=!1){if(r&&lf.Guard.isElementNode(t)&&lf.Guard.isShadowRoot(t.shadowRoot)&&t.shadowRoot._firstChild)return t.shadowRoot._firstChild;if(t._firstChild)return t._firstChild;if(t===e)return null;if(t._nextSibling)return t._nextSibling;let n=t._parent;for(;n&&n!==e;){if(n._nextSibling)return n._nextSibling;n=n._parent}return null}function lY(){return{[Symbol.iterator]:()=>({next:()=>({done:!0,value:null})})}}function MNe(e,t=!1,r=!1,n){let s=t?e:Eb(e,e,r);for(;s&&n&&!n(s);)s=Eb(e,s,r);return s}function kNe(e,t,r=!1,n=!1,s){let i=Eb(e,t,n);for(;i&&s&&!s(i);)i=Eb(e,i,n);return i}function A$t(e,t=!1,r=!1,n){return!t&&e._children.size===0?lY():{[Symbol.iterator]:()=>{let s=t?e:Eb(e,e,r);return{next:()=>{for(;s&&n&&!n(s);)s=Eb(e,s,r);if(s===null)return{done:!0,value:null};{let i={done:!1,value:s};return s=Eb(e,s,r),i}}}}}}function qAn(e,t=!1,r=!1,n){return!t&&e._children.size===0?lY():{[Symbol.iterator]:()=>{let s=A$t(e,t,r,a=>lf.Guard.isElementNode(a))[Symbol.iterator](),i=s.next().value;return{next(){for(;i&&n&&!n(i);)i=s.next().value;if(i===null)return{done:!0,value:null};{let a={done:!1,value:i};return i=s.next().value,a}}}}}}function HAn(e,t=!1,r){return!e._parent||e._parent._children.size===0?lY():{[Symbol.iterator](){let n=e._parent?e._parent._firstChild:null;return{next(){for(;n&&(r&&!r(n)||!t&&n===e);)n=n._nextSibling;if(n===null)return{done:!0,value:null};{let s={done:!1,value:n};return n=n._nextSibling,s}}}}}}function cY(e,t=!1,r){let n=t?e:e._parent;for(;n&&r&&!r(n);)n=n._parent;return n}function uY(e,t,r=!1,n){let s=t._parent;for(;s&&n&&!n(s);)s=s._parent;return s}function VAn(e,t=!1,r){return!t&&!e._parent?lY():{[Symbol.iterator](){let n=cY(e,t,r);return{next(){if(n===null)return{done:!0,value:null};{let s={done:!1,value:n};return n=uY(e,n,t,r),s}}}}}}function jAn(e,t){if(e===t)return e._parent;let r=[],n=[],s=cY(e,!0);for(;s!==null;)r.push(s),s=uY(e,s,!0);let i=cY(t,!0);for(;i!==null;)n.push(i),i=uY(t,i,!0);let a=r.length,o=n.length,c=null;for(let u=Math.min(a,o);u>0;u--){let l=r[--a],d=n[--o];if(l!==d)break;c=l}return c}function KAn(e,t){if(t._firstChild)return t._firstChild;if(t._nextSibling)return t._nextSibling;for(;;){let r=t._parent;if(r===null||r===e)return null;if(r._nextSibling)return r._nextSibling;t=r}}function GAn(e,t){return t===e?null:t._previousSibling?(t=t._previousSibling,t._lastChild?t._lastChild:t):t._parent}function E$t(e){switch(e._nodeType){case wo.NodeType.Document:let t=!1,r=!1;for(let n of e._children)switch(n._nodeType){case wo.NodeType.ProcessingInstruction:case wo.NodeType.Comment:break;case wo.NodeType.DocumentType:if(t||r)return!1;t=!0;break;case wo.NodeType.Element:if(r)return!1;r=!0;break;default:return!1}break;case wo.NodeType.DocumentFragment:case wo.NodeType.Element:for(let n of e._children)switch(n._nodeType){case wo.NodeType.Element:case wo.NodeType.Text:case wo.NodeType.ProcessingInstruction:case wo.NodeType.CData:case wo.NodeType.Comment:break;default:return!1}break;case wo.NodeType.DocumentType:case wo.NodeType.Text:case wo.NodeType.ProcessingInstruction:case wo.NodeType.CData:case wo.NodeType.Comment:return!e.hasChildNodes()}for(let t of e._children)if(!E$t(t))return!1;return!0}function y$t(e){return lf.Guard.isDocumentTypeNode(e)?0:lf.Guard.isCharacterDataNode(e)?e._data.length:e._children.size}function zAn(e){return y$t(e)===0}function N0(e,t=!1){if(t){let r=N0(e,!1);return lf.Guard.isShadowRoot(r)?N0(r._host,!0):r}else return e._parent?N0(e._parent):e}function YAn(e,t,r=!1,n=!1){let s=MNe(e,r,n);for(;s!==null;){if(s===t)return!0;s=kNe(e,s,r,n)}return!1}function BNe(e,t,r=!1,n=!1){let s=r?e:n&&lf.Guard.isShadowRoot(e)?e._host:e._parent;for(;s!==null;){if(s===t)return!0;s=n&&lf.Guard.isShadowRoot(s)?s._host:s._parent}return!1}function v$t(e,t,r=!1){if(BNe(e,t,r))return!0;let n=N0(e);return!!(lf.Guard.isDocumentFragmentNode(n)&&n._host!==null&&v$t(n._host,t,r))}function QAn(e,t,r=!1){if(e===t){if(r)return!0}else return e._parent!==null&&e._parent===t._parent;return!1}function WAn(e,t){let r=LB(e),n=LB(t);return r===-1||n===-1||N0(e)!==N0(t)?!1:nr}function JAn(e,t){return e._parent===t}function ZAn(e,t){return t._parent===e}function eEn(e){return e._previousSibling}function tEn(e){return e._nextSibling}function rEn(e){return e._firstChild}function nEn(e){return e._lastChild}function LB(e){let t=N0(e),r=0,n=MNe(t);for(;n!==null;){if(r++,n===e)return r;n=kNe(t,n)}return-1}function sEn(e){let t=0;for(;e._previousSibling!==null;)t++,e=e._previousSibling;return t}function iEn(e,t){for(;;){if(!e||!lf.Guard.isNode(e))return e;let r=N0(e);if(!lf.Guard.isShadowRoot(r)||t&&lf.Guard.isNode(t)&&BNe(r,t,!0,!0))return e;e=r.host}}});var fw=S(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});vb.observer_queueAMutationObserverMicrotask=T$t;vb.observer_notifyMutationObservers=b$t;vb.observer_queueMutationRecord=$Ne;vb.observer_queueTreeMutationRecord=cEn;vb.observer_queueAttributeMutationRecord=uEn;var FNe=Zi(),aEn=As(),yb=fa(),UNe=c_(),S$t=Yl(),oEn=dY();function T$t(){let e=FNe.dom.window;e._mutationObserverMicrotaskQueued||(e._mutationObserverMicrotaskQueued=!0,Promise.resolve().then(()=>{b$t()}))}function b$t(){let e=FNe.dom.window;e._mutationObserverMicrotaskQueued=!1;let t=yb.set.clone(e._mutationObservers),r=yb.set.clone(e._signalSlots);yb.set.empty(e._signalSlots);for(let n of t){let s=yb.list.clone(n._recordQueue);yb.list.empty(n._recordQueue);for(let i=0;iaEn.Guard.isTransientRegisteredObserver(o)&&o.observer===n)}if(!yb.list.isEmpty(s))try{n._callback.call(n,s,n)}catch{}}if(FNe.dom.features.slots)for(let n of r)(0,oEn.event_fireAnEvent)("slotchange",n,void 0,{bubbles:!0})}function $Ne(e,t,r,n,s,i,a,o,c){let u=new Map,l=(0,S$t.tree_getFirstAncestorNode)(t,!0);for(;l!==null;){for(let d=0;d{"use strict";Object.defineProperty(O0,"__esModule",{value:!0});O0.shadowTree_signalASlotChange=I$t;O0.shadowTree_isConnected=hEn;O0.shadowTree_isAssigned=pEn;O0.shadowTree_findASlot=qNe;O0.shadowTree_findSlotables=HNe;O0.shadowTree_findFlattenedSlotables=R$t;O0.shadowTree_assignSlotables=VNe;O0.shadowTree_assignSlotablesForATree=mEn;O0.shadowTree_assignASlot=gEn;var lEn=Zi(),df=As(),dEn=Wn(),gy=Yl(),fEn=fw();function I$t(e){lEn.dom.window._signalSlots.add(e),(0,fEn.observer_queueAMutationObserverMicrotask)()}function hEn(e){return df.Guard.isDocumentNode((0,gy.tree_rootNode)(e,!0))}function pEn(e){return e._assignedSlot!==null}function qNe(e,t=!1){let n=df.Cast.asNode(e)._parent;if(n===null)return null;let s=n._shadowRoot||null;if(s===null||t&&s._mode!=="open")return null;let i=(0,gy.tree_getFirstDescendantNode)(s,!1,!0,a=>df.Guard.isSlot(a));for(;i!==null;){if(i._name===e._name)return i;i=(0,gy.tree_getNextDescendantNode)(s,i,!1,!0,a=>df.Guard.isSlot(a))}return null}function HNe(e){let t=[],r=(0,gy.tree_rootNode)(e);if(!df.Guard.isShadowRoot(r))return t;let n=r._host;for(let s of n._children)df.Guard.isSlotable(s)&&qNe(s)===e&&t.push(s);return t}function R$t(e){let t=[],r=(0,gy.tree_rootNode)(e);if(!df.Guard.isShadowRoot(r))return t;let n=HNe(e);if((0,dEn.isEmpty)(n))for(let s of e._children)df.Guard.isSlotable(s)&&n.push(s);for(let s of n)if(df.Guard.isSlot(s)&&df.Guard.isShadowRoot((0,gy.tree_rootNode)(s))){let i=R$t(s);t.push(...i)}else t.push(s);return t}function VNe(e){let t=HNe(e);if(t.length===e._assignedNodes.length){let r=!0;for(let n=0;ndf.Guard.isSlot(r));for(;t!==null;)VNe(t),t=(0,gy.tree_getNextDescendantNode)(e,t,!0,!1,r=>df.Guard.isSlot(r))}function gEn(e){let t=qNe(e);t!==null&&VNe(t)}});var u_=S(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});ff.dom_runRemovingSteps=AEn;ff.dom_runCloningSteps=EEn;ff.dom_runAdoptingSteps=yEn;ff.dom_runAttributeChangeSteps=vEn;ff.dom_runInsertionSteps=SEn;ff.dom_runNodeIteratorPreRemovingSteps=TEn;ff.dom_hasSupportedTokens=bEn;ff.dom_getSupportedTokens=IEn;ff.dom_runEventConstructingSteps=REn;ff.dom_runChildTextContentChangeSteps=CEn;var _En=Zi(),Sb=Yl(),C$t=As(),fY=MB(),x$t=new Map;function AEn(e,t){}function EEn(e,t,r,n){}function yEn(e,t){}function vEn(e,t,r,n,s){_En.dom.features.slots&&(NEn.call(e,e,t,r,n,s),wEn.call(e,e,t,r,n,s)),OEn.call(e,e,t,n,s);for(let i of e._attributeChangeSteps)i.call(e,e,t,r,n,s)}function SEn(e){}function TEn(e,t){xEn.call(e,e,t)}function bEn(e){return x$t.has(e)}function IEn(e){return x$t.get(e)||new Set}function REn(e){}function CEn(e){}function xEn(e,t){if(!(t===e._root||!(0,Sb.tree_isAncestorOf)(e._reference,t,!0))){if(e._pointerBeforeReference)for(;;){let r=(0,Sb.tree_getFollowingNode)(e._root,t);if(r!==null&&(0,Sb.tree_isDescendantOf)(e._root,r,!0)&&!(0,Sb.tree_isDescendantOf)(t,r,!0)){e._reference=r;return}else if(r===null){e._pointerBeforeReference=!1;return}}if(t._previousSibling===null)t._parent!==null&&(e._reference=t._parent);else{let r=t._previousSibling,n=(0,Sb.tree_getFirstDescendantNode)(t._previousSibling,!0,!1);for(;n!==null;)n!==null&&(r=n),n=(0,Sb.tree_getNextDescendantNode)(t._previousSibling,n,!0,!1);e._reference=r}}}function wEn(e,t,r,n,s){if(C$t.Guard.isSlot(e)&&t==="name"&&s===null){if(n===r||n===null&&r===""||n===""&&r===null)return;n===null||n===""?e._name="":e._name=n,(0,fY.shadowTree_assignSlotablesForATree)((0,Sb.tree_rootNode)(e))}}function NEn(e,t,r,n,s){if(C$t.Guard.isSlotable(e)&&t==="slot"&&s===null){if(n===r||n===null&&r===""||n===""&&r===null)return;n===null||n===""?e._name="":e._name=n,(0,fY.shadowTree_isAssigned)(e)&&(0,fY.shadowTree_assignSlotables)(e._assignedSlot),(0,fY.shadowTree_assignASlot)(e)}}function OEn(e,t,r,n){t==="id"&&n===null&&(r?e._uniqueIdentifier=r:e._uniqueIdentifier=void 0)}});var dY=S(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});ro.event_setTheCanceledFlag=kEn;ro.event_initialize=BEn;ro.event_createAnEvent=O$t;ro.event_innerEventCreationSteps=D$t;ro.event_dispatch=P$t;ro.event_appendToAnEventPath=hY;ro.event_invoke=jNe;ro.event_innerInvoke=KNe;ro.event_fireAnEvent=UEn;ro.event_createLegacyEvent=FEn;ro.event_getterEventHandlerIDLAttribute=$En;ro.event_setterEventHandlerIDLAttribute=qEn;ro.event_determineTheTargetOfAnEventHandler=GNe;ro.event_getTheCurrentValueOfAnEventHandler=L$t;ro.event_activateAnEventHandler=HEn;ro.event_deactivateAnEventHandler=VEn;var DEn=Zi(),kB=zn(),ea=As(),PEn=LNe(),N$t=aY(),LEn=Ra(),D0=Yl(),w$t=MB(),MEn=u_();function kEn(e){e._cancelable&&!e._inPassiveListenerFlag&&(e._canceledFlag=!0)}function BEn(e,t,r,n){e._initializedFlag=!0,e._stopPropagationFlag=!1,e._stopImmediatePropagationFlag=!1,e._canceledFlag=!1,e._isTrusted=!1,e._target=null,e._type=t,e._bubbles=r,e._cancelable=n}function O$t(e,t=void 0){t===void 0&&(t=null);let n=D$t(e,t,new Date,{});return n._isTrusted=!0,n}function D$t(e,t,r,n){let s=new e("");return s._initializedFlag=!0,s._timeStamp=r.getTime(),Object.assign(s,n),DEn.dom.features.steps&&(0,MEn.dom_runEventConstructingSteps)(s),s}function P$t(e,t,r=!1,n={value:!1}){let s=!1;e._dispatchFlag=!0;let i=t;if(r){let c=t._associatedDocument;ea.Guard.isDocumentNode(c)&&(i=c)}let a=null,o=(0,D0.tree_retarget)(e._relatedTarget,t);if(t!==o||t===e._relatedTarget){let c=[];for(let m of e._touchTargetList)c.push((0,D0.tree_retarget)(m,t));hY(e,t,i,o,c,!1);let u=ea.Guard.isMouseEvent(e)&&e._type==="click";u&&t._activationBehavior!==void 0&&(a=t);let l=ea.Guard.isSlotable(t)&&(0,w$t.shadowTree_isAssigned)(t)?t:null,d=!1,f=t._getTheParent(e);for(;f!==null&&ea.Guard.isNode(f);){if(l!==null){if(!ea.Guard.isSlot(f))throw new Error("Parent node of a slotable should be a slot.");l=null;let m=(0,D0.tree_rootNode)(f,!0);ea.Guard.isShadowRoot(m)&&m._mode==="closed"&&(d=!0)}ea.Guard.isSlotable(f)&&(0,w$t.shadowTree_isAssigned)(f)&&(l=f),o=(0,D0.tree_retarget)(e._relatedTarget,f),c=[];for(let m of e._touchTargetList)c.push((0,D0.tree_retarget)(m,f));ea.Guard.isWindow(f)||ea.Guard.isNode(f)&&ea.Guard.isNode(t)&&(0,D0.tree_isAncestorOf)((0,D0.tree_rootNode)(t,!0),f,!0,!0)?(u&&e._bubbles&&a===null&&f._activationBehavior&&(a=f),hY(e,f,null,o,c,d)):f===o?f=null:(t=f,u&&a===null&&t._activationBehavior&&(a=t),hY(e,f,t,o,c,d)),f!==null&&(f=f._getTheParent(e)),d=!1}let h=null,p=e._path;for(let m=p.length-1;m>=0;m--){let _=p[m];if(_.shadowAdjustedTarget!==null){h=_;break}}if(h!==null)if(ea.Guard.isNode(h.shadowAdjustedTarget)&&ea.Guard.isShadowRoot((0,D0.tree_rootNode)(h.shadowAdjustedTarget,!0)))s=!0;else if(ea.Guard.isNode(h.relatedTarget)&&ea.Guard.isShadowRoot((0,D0.tree_rootNode)(h.relatedTarget,!0)))s=!0;else for(let m=0;m=0;m--){let _=p[m];_.shadowAdjustedTarget!==null?e._eventPhase=kB.EventPhase.AtTarget:e._eventPhase=kB.EventPhase.Capturing,jNe(_,e,"capturing",n)}for(let m=0;m0&&(l=s[i-1],l.shadowAdjustedTarget!==null&&(t._target=l.shadowAdjustedTarget))}if(t._relatedTarget=e.relatedTarget,t._touchTargetList=e.touchTargetList,t._stopPropagationFlag)return;t._currentTarget=e.invocationTarget;let o=t._currentTarget._eventListenerList,c=new Array(...o);if(!KNe(t,c,r,e,n)&&t._isTrusted){let l=t._type;l==="animationend"?t._type="webkitAnimationEnd":l==="animationiteration"?t._type="webkitAnimationIteration":l==="animationstart"?t._type="webkitAnimationStart":l==="transitionend"&&(t._type="webkitTransitionEnd"),KNe(t,c,r,e,n),t._type=l}}function KNe(e,t,r,n,s={value:!1}){let i=!1;for(let a=0;a{"use strict";Object.defineProperty(BB,"__esModule",{value:!0});BB.abort_add=KEn;BB.abort_remove=GEn;BB.abort_signalAbort=zEn;var jEn=dY();function KEn(e,t){t._abortedFlag||t._abortAlgorithms.add(e)}function GEn(e,t){t._abortAlgorithms.delete(e)}function zEn(e){if(!e._abortedFlag){e._abortedFlag=!0;for(let t of e._abortAlgorithms)t.call(e);e._abortAlgorithms.clear(),(0,jEn.event_fireAnEvent)("abort",e)}}});var UB=S(P0=>{"use strict";Object.defineProperty(P0,"__esModule",{value:!0});P0.customElement_isValidCustomElementName=ZEn;P0.customElement_isValidElementName=eyn;P0.customElement_isVoidElementName=tyn;P0.customElement_isValidShadowHostName=ryn;P0.customElement_enqueueACustomElementUpgradeReaction=nyn;P0.customElement_enqueueACustomElementCallbackReaction=syn;P0.customElement_upgrade=iyn;P0.customElement_tryToUpgrade=ayn;P0.customElement_lookUpACustomElementDefinition=oyn;var YEn=/[a-z]([\0-\t\x2D\._a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*-([\0-\t\x2D\._a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*/,QEn=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),WEn=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]),XEn=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]),JEn=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]);function ZEn(e){return!(!YEn.test(e)||QEn.has(e))}function eyn(e){return WEn.has(e)}function tyn(e){return XEn.has(e)}function ryn(e){return JEn.has(e)}function nyn(e,t){}function syn(e,t,r){}function iyn(e,t){}function ayn(e){}function oyn(e,t,r,n){return null}});var pY=S(YNe=>{"use strict";Object.defineProperty(YNe,"__esModule",{value:!0});YNe.traversal_filter=uyn;var zNe=zn(),cyn=Ra();function uyn(e,t){if(e._activeFlag)throw new cyn.InvalidStateError;let n=1<{"use strict";Object.defineProperty(mY,"__esModule",{value:!0});mY.nodeIterator_traverse=hyn;mY.nodeIterator_iteratorList=pyn;var lyn=Zi(),dyn=zn(),fyn=pY(),k$t=Yl();function hyn(e,t){let r=e._reference,n=e._pointerBeforeReference;for(;;){if(t)if(n)n=!1;else{let i=(0,k$t.tree_getFollowingNode)(e._root,r);if(i)r=i;else return null}else if(n){let i=(0,k$t.tree_getPrecedingNode)(e.root,r);if(i)r=i;else return null}else n=!0;if((0,fyn.traversal_filter)(e,r)===dyn.FilterResult.Accept)break}return e._reference=r,e._pointerBeforeReference=n,r}function pyn(){return lyn.dom.window._iteratorList}});var WNe=S(hw=>{"use strict";Object.defineProperty(hw,"__esModule",{value:!0});hw.xml_isName=myn;hw.xml_isQName=gyn;hw.xml_isLegalChar=_yn;hw.xml_isPubidChar=Ayn;function myn(e){for(let t=0;t=97&&r<=122||r>=65&&r<=90||r===58||r===95||r>=192&&r<=214||r>=216&&r<=246||r>=248&&r<=767||r>=880&&r<=893||r>=895&&r<=8191||r>=8204&&r<=8205||r>=8304&&r<=8591||r>=11264&&r<=12271||r>=12289&&r<=55295||r>=63744&&r<=64975||r>=65008&&r<=65533)&&!(t!==0&&(r===45||r===46||r>=48&&r<=57||r===183||r>=768&&r<=879||r>=8255&&r<=8256))){if(r>=55296&&r<=56319&&t=56320&&n<=57343&&(r=(r-55296)*1024+n-56320+65536,t++,r>=65536&&r<=983039))continue}return!1}}return!0}function gyn(e){let t=!1;for(let r=0;r=97&&n<=122||n>=65&&n<=90||n===95||n>=192&&n<=214||n>=216&&n<=246||n>=248&&n<=767||n>=880&&n<=893||n>=895&&n<=8191||n>=8204&&n<=8205||n>=8304&&n<=8591||n>=11264&&n<=12271||n>=12289&&n<=55295||n>=63744&&n<=64975||n>=65008&&n<=65533)){{if(r!==0&&(n===45||n===46||n>=48&&n<=57||n===183||n>=768&&n<=879||n>=8255&&n<=8256))continue;if(r!==0&&n===58){if(t||r===e.length-1)return!1;t=!0;continue}}if(n>=55296&&n<=56319&&r=56320&&s<=57343&&(n=(n-55296)*1024+s-56320+65536,r++,n>=65536&&n<=983039))continue}return!1}}return!0}function _yn(e){for(let t=0;t=32&&r<=55295||r>=57344&&r<=65533)){if(r>=55296&&r<=56319&&t=56320&&n<=57343&&(r=(r-55296)*1024+n-56320+65536,t++,r>=65536&&r<=1114111))continue}return!1}}return!0}function Ayn(e){for(let t=0;t=97&&r<=122||r>=65&&r<=90||r>=39&&r<=59||r===32||r===13||r===10||r>=35&&r<=37||r===33||r===61||r===63||r===64||r===95))return!1}return!0}});var ZNe=S(FB=>{"use strict";Object.defineProperty(FB,"__esModule",{value:!0});FB.namespace_validate=JNe;FB.namespace_validateAndExtract=Eyn;FB.namespace_extractQName=yyn;var pw=Ra(),XNe=fa(),B$t=WNe();function JNe(e){if(!(0,B$t.xml_isName)(e))throw new pw.InvalidCharacterError(`Invalid XML name: ${e}`);if(!(0,B$t.xml_isQName)(e))throw new pw.InvalidCharacterError(`Invalid XML qualified name: ${e}.`)}function Eyn(e,t){e||(e=null),JNe(t);let r=t.split(":"),n=r.length===2?r[0]:null,s=r.length===2?r[1]:t;if(n&&e===null)throw new pw.NamespaceError("Qualified name includes a prefix but the namespace is null.");if(n==="xml"&&e!==XNe.namespace.XML)throw new pw.NamespaceError('Qualified name includes the "xml" prefix but the namespace is not the XML namespace.');if(e!==XNe.namespace.XMLNS&&(n==="xmlns"||t==="xmlns"))throw new pw.NamespaceError('Qualified name includes the "xmlns" prefix but the namespace is not the XMLNS namespace.');if(e===XNe.namespace.XMLNS&&n!=="xmlns"&&t!=="xmlns")throw new pw.NamespaceError('Qualified name does not include the "xmlns" prefix but the namespace is the XMLNS namespace.');return[e,n,s]}function yyn(e){JNe(e);let t=e.split(":"),r=t.length===2?t[0]:null,n=t.length===2?t[1]:e;return[r,n]}});var gY=S($B=>{"use strict";Object.defineProperty($B,"__esModule",{value:!0});$B.document_elementInterface=xyn;$B.document_internalCreateElementNS=wyn;$B.document_adopt=Nyn;var U$t=Zi(),F$t=As(),vyn=Wn(),Syn=Iz(),Tyn=UB(),$$t=Yl(),byn=ZNe(),Iyn=u_(),Ryn=mw(),Cyn=Tb();function xyn(e,t){return Syn.ElementImpl}function wyn(e,t,r,n){let[s,i,a]=(0,byn.namespace_validateAndExtract)(t,r),o=null;return n!==void 0&&((0,vyn.isString)(n)?o=n:o=n.is),(0,Ryn.element_createAnElement)(e,a,s,i,o,!0)}function Nyn(e,t){if(e._nodeDocument===t&&e._parent===null)return;let r=e._nodeDocument;if(e._parent&&(0,Cyn.mutation_remove)(e,e._parent),t!==r){let n=(0,$$t.tree_getFirstDescendantNode)(e,!0,!0);for(;n!==null;){if(n._nodeDocument=t,F$t.Guard.isElementNode(n))for(let s of n._attributeList._asArray())s._nodeDocument=t;U$t.dom.features.customElements&&F$t.Guard.isElementNode(n)&&n._customElementState==="custom"&&(0,Tyn.customElement_enqueueACustomElementCallbackReaction)(n,"adoptedCallback",[r,t]),U$t.dom.features.steps&&(0,Iyn.dom_runAdoptingSteps)(n,r),n=(0,$$t.tree_getNextDescendantNode)(e,n,!0,!0)}}}});var Tb=S(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});Ep.mutation_ensurePreInsertionValidity=H$t;Ep.mutation_preInsert=V$t;Ep.mutation_insert=_Y;Ep.mutation_append=Pyn;Ep.mutation_replace=Lyn;Ep.mutation_replaceAll=Myn;Ep.mutation_preRemove=kyn;Ep.mutation_remove=qB;var Pn=Zi(),qn=Ra(),Et=zn(),ei=As(),eOe=Wn(),q$t=fa(),gw=UB(),ha=Yl(),Oyn=QNe(),Ql=MB(),_w=fw(),_y=u_(),tOe=gY();function H$t(e,t,r){let n=t._nodeType,s=e._nodeType,i=r?r._nodeType:null;if(n!==Et.NodeType.Document&&n!==Et.NodeType.DocumentFragment&&n!==Et.NodeType.Element)throw new qn.HierarchyRequestError(`Only document, document fragment and element nodes can contain child nodes. Parent node is ${t.nodeName}.`);if((0,ha.tree_isHostIncludingAncestorOf)(t,e,!0))throw new qn.HierarchyRequestError(`The node to be inserted cannot be an inclusive ancestor of parent node. Node is ${e.nodeName}, parent node is ${t.nodeName}.`);if(r!==null&&r._parent!==t)throw new qn.NotFoundError(`The reference child node cannot be found under parent node. Child node is ${r.nodeName}, parent node is ${t.nodeName}.`);if(s!==Et.NodeType.DocumentFragment&&s!==Et.NodeType.DocumentType&&s!==Et.NodeType.Element&&s!==Et.NodeType.Text&&s!==Et.NodeType.ProcessingInstruction&&s!==Et.NodeType.CData&&s!==Et.NodeType.Comment)throw new qn.HierarchyRequestError(`Only document fragment, document type, element, text, processing instruction, cdata section or comment nodes can be inserted. Node is ${e.nodeName}.`);if(s===Et.NodeType.Text&&n===Et.NodeType.Document)throw new qn.HierarchyRequestError(`Cannot insert a text node as a child of a document node. Node is ${e.nodeName}.`);if(s===Et.NodeType.DocumentType&&n!==Et.NodeType.Document)throw new qn.HierarchyRequestError(`A document type node can only be inserted under a document node. Parent node is ${t.nodeName}.`);if(n===Et.NodeType.Document){if(s===Et.NodeType.DocumentFragment){let a=0;for(let o of e._children)if(o._nodeType===Et.NodeType.Element)a++;else if(o._nodeType===Et.NodeType.Text)throw new qn.HierarchyRequestError(`Cannot insert text a node as a child of a document node. Node is ${o.nodeName}.`);if(a>1)throw new qn.HierarchyRequestError(`A document node can only have one document element node. Document fragment to be inserted has ${a} element nodes.`);if(a===1){for(let o of t._children)if(o._nodeType===Et.NodeType.Element)throw new qn.HierarchyRequestError("The document node already has a document element node.");if(r){if(i===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError("Cannot insert an element node before a document type node.");let o=r._nextSibling;for(;o;){if(o._nodeType===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError("Cannot insert an element node before a document type node.");o=o._nextSibling}}}}else if(s===Et.NodeType.Element){for(let a of t._children)if(a._nodeType===Et.NodeType.Element)throw new qn.HierarchyRequestError(`Document already has a document element node. Node is ${e.nodeName}.`);if(r){if(i===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${e.nodeName}.`);let a=r._nextSibling;for(;a;){if(a._nodeType===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${e.nodeName}.`);a=a._nextSibling}}}else if(s===Et.NodeType.DocumentType){for(let a of t._children)if(a._nodeType===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError(`Document already has a document type node. Node is ${e.nodeName}.`);if(r){let a=r._previousSibling;for(;a;){if(a._nodeType===Et.NodeType.Element)throw new qn.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${e.nodeName}.`);a=a._previousSibling}}else{let a=t._firstChild;for(;a;){if(a._nodeType===Et.NodeType.Element)throw new qn.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${e.nodeName}.`);a=a._nextSibling}}}}}function V$t(e,t,r){H$t(e,t,r);let n=r;return n===e&&(n=e._nextSibling),(0,tOe.document_adopt)(e,t._nodeDocument),_Y(e,t,n),e}function _Y(e,t,r,n){if(r===null&&e._nodeType!==Et.NodeType.DocumentFragment){Dyn(e,t,n);return}let s=e._nodeType===Et.NodeType.DocumentFragment?e._children.size:1;if(r!==null&&Pn.dom.rangeList.size!==0){let c=(0,ha.tree_index)(r);for(let u of Pn.dom.rangeList)u._start[0]===t&&u._start[1]>c&&(u._start[1]+=s),u._end[0]===t&&u._end[1]>c&&(u._end[1]+=s)}let i=e._nodeType===Et.NodeType.DocumentFragment?new Array(...e._children):[e];if(e._nodeType===Et.NodeType.DocumentFragment)for(;e._firstChild;)qB(e._firstChild,e,!0);Pn.dom.features.mutationObservers&&e._nodeType===Et.NodeType.DocumentFragment&&(0,_w.observer_queueTreeMutationRecord)(e,[],i,null,null);let a=r?r._previousSibling:t._lastChild,o=r===null?-1:(0,ha.tree_index)(r);for(let c=0;c1)throw new qn.HierarchyRequestError(`A document node can only have one document element node. Document fragment to be inserted has ${o} element nodes.`);if(o===1){for(let u of r._children)if(u._nodeType===Et.NodeType.Element&&u!==e)throw new qn.HierarchyRequestError("The document node already has a document element node.");let c=e._nextSibling;for(;c;){if(c._nodeType===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError("Cannot insert an element node before a document type node.");c=c._nextSibling}}}else if(t._nodeType===Et.NodeType.Element){for(let c of r._children)if(c._nodeType===Et.NodeType.Element&&c!==e)throw new qn.HierarchyRequestError(`Document already has a document element node. Node is ${t.nodeName}.`);let o=e._nextSibling;for(;o;){if(o._nodeType===Et.NodeType.DocumentType)throw new qn.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${t.nodeName}.`);o=o._nextSibling}}else if(t._nodeType===Et.NodeType.DocumentType){for(let c of r._children)if(c._nodeType===Et.NodeType.DocumentType&&c!==e)throw new qn.HierarchyRequestError(`Document already has a document type node. Node is ${t.nodeName}.`);let o=e._previousSibling;for(;o;){if(o._nodeType===Et.NodeType.Element)throw new qn.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${t.nodeName}.`);o=o._previousSibling}}}let n=e._nextSibling;n===t&&(n=t._nextSibling);let s=e._previousSibling;(0,tOe.document_adopt)(t,r._nodeDocument);let i=[];e._parent!==null&&(i.push(e),qB(e,e._parent,!0));let a=[];return t._nodeType===Et.NodeType.DocumentFragment?a=Array.from(t._children):a.push(t),_Y(t,r,n,!0),Pn.dom.features.mutationObservers&&(0,_w.observer_queueTreeMutationRecord)(r,a,i,s,n),e}function Myn(e,t){e!==null&&(0,tOe.document_adopt)(e,t._nodeDocument);let r=Array.from(t._children),n=[];e&&e._nodeType===Et.NodeType.DocumentFragment?n=Array.from(e._children):e!==null&&n.push(e);for(let s of r)qB(s,t,!0);e!==null&&_Y(e,t,null,!0),Pn.dom.features.mutationObservers&&(0,_w.observer_queueTreeMutationRecord)(t,n,r,null,null)}function kyn(e,t){if(e._parent!==t)throw new qn.NotFoundError(`The child node cannot be found under parent node. Child node is ${e.nodeName}, parent node is ${t.nodeName}.`);return qB(e,t),e}function qB(e,t,r){if(Pn.dom.rangeList.size!==0){let c=(0,ha.tree_index)(e);for(let u of Pn.dom.rangeList)(0,ha.tree_isDescendantOf)(e,u._start[0],!0)&&(u._start=[t,c]),(0,ha.tree_isDescendantOf)(e,u._end[0],!0)&&(u._end=[t,c]),u._start[0]===t&&u._start[1]>c&&u._start[1]--,u._end[0]===t&&u._end[1]>c&&u._end[1]--;for(let u of Pn.dom.rangeList)u._start[0]===t&&u._start[1]>c&&(u._start[1]-=1),u._end[0]===t&&u._end[1]>c&&(u._end[1]-=1)}if(Pn.dom.features.steps)for(let c of(0,Oyn.nodeIterator_iteratorList)())c._root._nodeDocument===e._nodeDocument&&(0,_y.dom_runNodeIteratorPreRemovingSteps)(c,e);let n=e._previousSibling,s=e._nextSibling;ei.Guard.isDocumentNode(t)&&ei.Guard.isElementNode(e)&&(t._documentElement=null),e._parent=null,t._children.delete(e);let i=e._previousSibling,a=e._nextSibling;e._previousSibling=null,e._nextSibling=null,i&&(i._nextSibling=a),a&&(a._previousSibling=i),i||(t._firstChild=a),a||(t._lastChild=i),Pn.dom.features.slots&&ei.Guard.isSlotable(e)&&e._assignedSlot!==null&&(0,Ql.shadowTree_isAssigned)(e)&&(0,Ql.shadowTree_assignSlotables)(e._assignedSlot),Pn.dom.features.slots&&ei.Guard.isShadowRoot((0,ha.tree_rootNode)(t))&&ei.Guard.isSlot(t)&&(0,eOe.isEmpty)(t._assignedNodes)&&(0,Ql.shadowTree_signalASlotChange)(t),Pn.dom.features.slots&&(0,ha.tree_getFirstDescendantNode)(e,!0,!1,u=>ei.Guard.isSlot(u))!==null&&((0,Ql.shadowTree_assignSlotablesForATree)((0,ha.tree_rootNode)(t)),(0,Ql.shadowTree_assignSlotablesForATree)(e)),Pn.dom.features.steps&&(0,_y.dom_runRemovingSteps)(e,t),Pn.dom.features.customElements&&ei.Guard.isCustomElementNode(e)&&(0,gw.customElement_enqueueACustomElementCallbackReaction)(e,"disconnectedCallback",[]);let o=(0,ha.tree_getFirstDescendantNode)(e,!1,!0);for(;o!==null;)Pn.dom.features.steps&&(0,_y.dom_runRemovingSteps)(o,e),Pn.dom.features.customElements&&ei.Guard.isCustomElementNode(o)&&(0,gw.customElement_enqueueACustomElementCallbackReaction)(o,"disconnectedCallback",[]),o=(0,ha.tree_getNextDescendantNode)(e,o,!1,!0);if(Pn.dom.features.mutationObservers){let c=(0,ha.tree_getFirstAncestorNode)(t,!0);for(;c!==null;){for(let u of c._registeredObserverList)u.options.subtree&&e._registeredObserverList.push({observer:u.observer,options:u.options,source:u});c=(0,ha.tree_getNextAncestorNode)(t,c,!0)}}Pn.dom.features.mutationObservers&&(r||(0,_w.observer_queueTreeMutationRecord)(t,[],[e],n,s)),Pn.dom.features.steps&&ei.Guard.isTextNode(e)&&(0,_y.dom_runChildTextContentChangeSteps)(t)}});var mw=S(gc=>{"use strict";Object.defineProperty(gc,"__esModule",{value:!0});gc.element_has=Byn;gc.element_change=K$t;gc.element_append=rOe;gc.element_remove=nOe;gc.element_replace=G$t;gc.element_getAnAttributeByName=z$t;gc.element_getAnAttributeByNamespaceAndLocalName=HB;gc.element_getAnAttributeValue=Uyn;gc.element_setAnAttribute=Fyn;gc.element_setAnAttributeValue=$yn;gc.element_removeAnAttributeByName=qyn;gc.element_removeAnAttributeByNamespaceAndLocalName=Hyn;gc.element_createAnElement=Vyn;gc.element_insertAdjacent=jyn;var Wl=Zi(),bb=fa(),yY=As(),Ib=Ra(),EY=c_(),l_=UB(),vY=fw(),SY=u_(),AY=Tb(),j$t=gY();function Byn(e,t){return t._attributeList._asArray().indexOf(e)!==-1}function K$t(e,t,r){Wl.dom.features.mutationObservers&&(0,vY.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,e._value),Wl.dom.features.customElements&&yY.Guard.isCustomElementNode(t)&&(0,l_.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,e._value,r,e._namespace]),Wl.dom.features.steps&&(0,SY.dom_runAttributeChangeSteps)(t,e._localName,e._value,r,e._namespace),e._value=r}function rOe(e,t){Wl.dom.features.mutationObservers&&(0,vY.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,null),Wl.dom.features.customElements&&yY.Guard.isCustomElementNode(t)&&(0,l_.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,null,e._value,e._namespace]),Wl.dom.features.steps&&(0,SY.dom_runAttributeChangeSteps)(t,e._localName,null,e._value,e._namespace),t._attributeList._asArray().push(e),e._element=t,!t._nodeDocument._hasNamespaces&&(e._namespace!==null||e._namespacePrefix!==null||e._localName==="xmlns")&&(t._nodeDocument._hasNamespaces=!0)}function nOe(e,t){Wl.dom.features.mutationObservers&&(0,vY.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,e._value),Wl.dom.features.customElements&&yY.Guard.isCustomElementNode(t)&&(0,l_.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,e._value,null,e._namespace]),Wl.dom.features.steps&&(0,SY.dom_runAttributeChangeSteps)(t,e._localName,e._value,null,e._namespace);let r=t._attributeList._asArray().indexOf(e);t._attributeList._asArray().splice(r,1),e._element=null}function G$t(e,t,r){Wl.dom.features.mutationObservers&&(0,vY.observer_queueAttributeMutationRecord)(r,e._localName,e._namespace,e._value),Wl.dom.features.customElements&&yY.Guard.isCustomElementNode(r)&&(0,l_.customElement_enqueueACustomElementCallbackReaction)(r,"attributeChangedCallback",[e._localName,e._value,t._value,e._namespace]),Wl.dom.features.steps&&(0,SY.dom_runAttributeChangeSteps)(r,e._localName,e._value,t._value,e._namespace);let n=r._attributeList._asArray().indexOf(e);n!==-1&&(r._attributeList._asArray()[n]=t),e._element=null,t._element=r,!r._nodeDocument._hasNamespaces&&(t._namespace!==null||t._namespacePrefix!==null||t._localName==="xmlns")&&(r._nodeDocument._hasNamespaces=!0)}function z$t(e,t){return t._namespace===bb.namespace.HTML&&t._nodeDocument._type==="html"&&(e=e.toLowerCase()),t._attributeList._asArray().find(r=>r._qualifiedName===e)||null}function HB(e,t,r){let n=e||null;return r._attributeList._asArray().find(s=>s._namespace===n&&s._localName===t)||null}function Uyn(e,t,r=""){let n=HB(r,t,e);return n===null?"":n._value}function Fyn(e,t){if(e._element!==null&&e._element!==t)throw new Ib.InUseAttributeError(`This attribute already exists in the document: ${e._qualifiedName} as a child of ${e._element._qualifiedName}.`);let r=HB(e._namespace||"",e._localName,t);return r===e?e:(r!==null?G$t(r,e,t):rOe(e,t),r)}function $yn(e,t,r,n=null,s=null){let i=HB(s||"",t,e);if(i===null){let a=(0,EY.create_attr)(e._nodeDocument,t);a._namespace=s,a._namespacePrefix=n,a._value=r,rOe(a,e);return}K$t(i,e,r)}function qyn(e,t){let r=z$t(e,t);return r!==null&&nOe(r,t),r}function Hyn(e,t,r){let n=HB(e,t,r);return n!==null&&nOe(n,r),n}function Vyn(e,t,r,n=null,s=null,i=!1){let a=null;if(!Wl.dom.features.customElements)return a=(0,EY.create_element)(e,t,r,n),a._customElementState="uncustomized",a._customElementDefinition=null,a._is=s,a;let o=(0,l_.customElement_lookUpACustomElementDefinition)(e,r,t,s);if(o!==null&&o.name!==o.localName){let c=(0,j$t.document_elementInterface)(t,bb.namespace.HTML);a=new c,a._localName=t,a._namespace=bb.namespace.HTML,a._namespacePrefix=n,a._customElementState="undefined",a._customElementDefinition=null,a._is=s,a._nodeDocument=e,i?(0,l_.customElement_upgrade)(o,a):(0,l_.customElement_enqueueACustomElementUpgradeReaction)(a,o)}else if(o!==null)if(i)try{let c=o.constructor,u=new c;if(console.assert(u._customElementState!==void 0),console.assert(u._customElementDefinition!==void 0),console.assert(u._namespace===bb.namespace.HTML),u._attributeList.length!==0)throw new Ib.NotSupportedError("Custom element already has attributes.");if(u._children.size!==0)throw new Ib.NotSupportedError("Custom element already has child nodes.");if(u._parent!==null)throw new Ib.NotSupportedError("Custom element already has a parent node.");if(u._nodeDocument!==e)throw new Ib.NotSupportedError("Custom element is already in a document.");if(u._localName!==t)throw new Ib.NotSupportedError("Custom element has a different local name.");u._namespacePrefix=n,u._is=null}catch{a=(0,EY.create_htmlUnknownElement)(e,t,bb.namespace.HTML,n),a._customElementState="failed",a._customElementDefinition=null,a._is=null}else a=(0,EY.create_htmlElement)(e,t,bb.namespace.HTML,n),a._customElementState="undefined",a._customElementDefinition=null,a._is=null,(0,l_.customElement_enqueueACustomElementUpgradeReaction)(a,o);else{let c=(0,j$t.document_elementInterface)(t,r);a=new c,a._localName=t,a._namespace=r,a._namespacePrefix=n,a._customElementState="uncustomized",a._customElementDefinition=null,a._is=s,a._nodeDocument=e,r===bb.namespace.HTML&&(s!==null||(0,l_.customElement_isValidCustomElementName)(t))&&(a._customElementState="undefined")}if(a===null)throw new Error("Unable to create element.");return a}function jyn(e,t,r){switch(t.toLowerCase()){case"beforebegin":return e._parent===null?null:(0,AY.mutation_preInsert)(r,e._parent,e);case"afterbegin":return(0,AY.mutation_preInsert)(r,e,e._firstChild);case"beforeend":return(0,AY.mutation_preInsert)(r,e,null);case"afterend":return e._parent===null?null:(0,AY.mutation_preInsert)(r,e._parent,e._nextSibling);default:throw new Ib.SyntaxError(`Invalid 'where' argument. "beforebegin", "afterbegin", "beforeend" or "afterend" expected`)}}});var Y$t=S(sOe=>{"use strict";Object.defineProperty(sOe,"__esModule",{value:!0});sOe.attr_setAnExistingAttributeValue=Gyn;var Kyn=mw();function Gyn(e,t){e._element===null?e._value=t:(0,Kyn.element_change)(e,e._element,t)}});var aOe=S(iOe=>{"use strict";Object.defineProperty(iOe,"__esModule",{value:!0});iOe.boundaryPoint_position=Q$t;var d_=zn(),Aw=Yl();function Q$t(e,t){let r=e[0],n=e[1],s=t[0],i=t[1];if(console.assert((0,Aw.tree_rootNode)(r)===(0,Aw.tree_rootNode)(s),"Boundary points must share the same root node."),r===s)return n===i?d_.BoundaryPosition.Equal:n{"use strict";Object.defineProperty(TY,"__esModule",{value:!0});TY.characterData_replaceData=Wyn;TY.characterData_substringData=Xyn;var oOe=Zi(),zyn=As(),W$t=Ra(),X$t=Yl(),Yyn=fw(),Qyn=u_();function Wyn(e,t,r,n){let s=(0,X$t.tree_nodeLength)(e);if(t>s)throw new W$t.IndexSizeError(`Offset exceeds character data length. Offset: ${t}, Length: ${s}, Node is ${e.nodeName}.`);t+r>s&&(r=s-t),oOe.dom.features.mutationObservers&&(0,Yyn.observer_queueMutationRecord)("characterData",e,null,null,e._data,[],[],null,null);let i=e._data.substring(0,t)+n+e._data.substring(t+r);e._data=i;for(let a of oOe.dom.rangeList)a._start[0]===e&&a._start[1]>t&&a._start[1]<=t+r&&(a._start[1]=t),a._end[0]===e&&a._end[1]>t&&a._end[1]<=t+r&&(a._end[1]=t),a._start[0]===e&&a._start[1]>t+r&&(a._start[1]+=n.length-r),a._end[0]===e&&a._end[1]>t+r&&(a._end[1]+=n.length-r);oOe.dom.features.steps&&zyn.Guard.isTextNode(e)&&e._parent!==null&&(0,Qyn.dom_runChildTextContentChangeSteps)(e._parent)}function Xyn(e,t,r){let n=(0,X$t.tree_nodeLength)(e);if(t>n)throw new W$t.IndexSizeError(`Offset exceeds character data length. Offset: ${t}, Length: ${n}, Node is ${e.nodeName}.`);return t+r>n?e._data.substr(t):e._data.substr(t,r)}});var IY=S(Ew=>{"use strict";Object.defineProperty(Ew,"__esModule",{value:!0});Ew.orderedSet_parse=J$t;Ew.orderedSet_serialize=Z$t;Ew.orderedSet_sanitize=Zyn;Ew.orderedSet_contains=evn;var Jyn=fa();function J$t(e){let t=Jyn.string.splitAStringOnASCIIWhitespace(e);return new Set(t)}function Z$t(e){return[...e].join(" ")}function Zyn(e){return Z$t(J$t(e))}function evn(e,t,r){for(let n of t){let s=!1;for(let i of e)if(r){if(i===n){s=!0;break}}else if(i.toUpperCase()===n.toUpperCase()){s=!0;break}if(!s)return!1}return!0}});var r9t=S(VB=>{"use strict";Object.defineProperty(VB,"__esModule",{value:!0});VB.tokenList_validationSteps=rvn;VB.tokenList_updateSteps=nvn;VB.tokenList_serializeSteps=svn;var tvn=IY(),e9t=u_(),t9t=mw();function rvn(e,t){if(!(0,e9t.dom_hasSupportedTokens)(e._attribute._localName))throw new TypeError(`There are no supported tokens defined for attribute name: '${e._attribute._localName}'.`);return(0,e9t.dom_getSupportedTokens)(e._attribute._localName).has(t.toLowerCase())}function nvn(e){!e._element.hasAttribute(e._attribute._localName)&&e._tokenSet.size===0||(0,t9t.element_setAnAttributeValue)(e._element,e._attribute._localName,(0,tvn.orderedSet_serialize)(e._tokenSet))}function svn(e){return(0,t9t.element_getAnAttributeValue)(e._element,e._attribute._localName)}});var i9t=S(Rb=>{"use strict";Object.defineProperty(Rb,"__esModule",{value:!0});Rb.eventTarget_flatten=s9t;Rb.eventTarget_flattenMore=ivn;Rb.eventTarget_addEventListener=avn;Rb.eventTarget_removeEventListener=ovn;Rb.eventTarget_removeAllEventListeners=cvn;var n9t=Wn();function s9t(e){return(0,n9t.isBoolean)(e)?e:e.capture||!1}function ivn(e){let t=s9t(e),r=!1,n=!1;return(0,n9t.isBoolean)(e)||(r=e.once||!1,n=e.passive||!1),[t,n,r]}function avn(e,t){if(t.callback!==null){for(let r=0;r{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});yp.node_stringReplaceAll=dvn;yp.node_clone=cOe;yp.node_equals=uOe;yp.node_listOfElementsWithQualifiedName=fvn;yp.node_listOfElementsWithNamespace=hvn;yp.node_listOfElementsWithClassNames=pvn;yp.node_locateANamespacePrefix=u9t;yp.node_locateANamespace=jB;var uvn=Zi(),ss=As(),RY=fa(),no=c_(),a9t=IY(),lvn=u_(),c9t=Tb(),o9t=mw();function dvn(e,t){let r=null;e!==""&&(r=(0,no.create_text)(t._nodeDocument,e)),(0,c9t.mutation_replaceAll)(r,t)}function cOe(e,t=null,r=!1){t===null&&(t=e._nodeDocument);let n;if(ss.Guard.isElementNode(e)){n=(0,o9t.element_createAnElement)(t,e._localName,e._namespace,e._namespacePrefix,e._is,!1);for(let s of e._attributeList){let i=cOe(s,t);(0,o9t.element_append)(i,n)}}else if(ss.Guard.isDocumentNode(e)){let s=(0,no.create_document)();s._encoding=e._encoding,s._contentType=e._contentType,s._URL=e._URL,s._origin=e._origin,s._type=e._type,s._mode=e._mode,n=s}else if(ss.Guard.isDocumentTypeNode(e))n=(0,no.create_documentType)(t,e._name,e._publicId,e._systemId);else if(ss.Guard.isAttrNode(e)){let s=(0,no.create_attr)(t,e.localName);s._namespace=e._namespace,s._namespacePrefix=e._namespacePrefix,s._value=e._value,n=s}else ss.Guard.isExclusiveTextNode(e)?n=(0,no.create_text)(t,e._data):ss.Guard.isCDATASectionNode(e)?n=(0,no.create_cdataSection)(t,e._data):ss.Guard.isCommentNode(e)?n=(0,no.create_comment)(t,e._data):ss.Guard.isProcessingInstructionNode(e)?n=(0,no.create_processingInstruction)(t,e._target,e._data):ss.Guard.isDocumentFragmentNode(e)?n=(0,no.create_documentFragment)(t):n=Object.create(e);if(ss.Guard.isDocumentNode(n)?(n._nodeDocument=n,t=n):n._nodeDocument=t,uvn.dom.features.steps&&(0,lvn.dom_runCloningSteps)(n,e,t,r),r)for(let s of e._children){let i=cOe(s,t,!0);(0,c9t.mutation_append)(i,n)}return n}function uOe(e,t){if(e._nodeType!==t._nodeType)return!1;if(ss.Guard.isDocumentTypeNode(e)&&ss.Guard.isDocumentTypeNode(t)){if(e._name!==t._name||e._publicId!==t._publicId||e._systemId!==t._systemId)return!1}else if(ss.Guard.isElementNode(e)&&ss.Guard.isElementNode(t)){if(e._namespace!==t._namespace||e._namespacePrefix!==t._namespacePrefix||e._localName!==t._localName||e._attributeList.length!==t._attributeList.length)return!1}else if(ss.Guard.isAttrNode(e)&&ss.Guard.isAttrNode(t)){if(e._namespace!==t._namespace||e._localName!==t._localName||e._value!==t._value)return!1}else if(ss.Guard.isProcessingInstructionNode(e)&&ss.Guard.isProcessingInstructionNode(t)){if(e._target!==t._target||e._data!==t._data)return!1}else if(ss.Guard.isCharacterDataNode(e)&&ss.Guard.isCharacterDataNode(t)&&e._data!==t._data)return!1;if(ss.Guard.isElementNode(e)&&ss.Guard.isElementNode(t)){let a={};for(let o of e._attributeList)a[o._localName]=o;for(let o of t._attributeList){let c=a[o._localName];if(!c||!uOe(c,o))return!1}}if(e._children.size!==t._children.size)return!1;let r=e._children[Symbol.iterator](),n=t._children[Symbol.iterator](),s=r.next(),i=n.next();for(;!s.done&&!i.done;){let a=s.value,o=i.value;if(!uOe(a,o))return!1;s=r.next(),i=n.next()}return!0}function fvn(e,t){return e==="*"?(0,no.create_htmlCollection)(t):t._nodeDocument._type==="html"?(0,no.create_htmlCollection)(t,function(r){return r._namespace===RY.namespace.HTML&&r._qualifiedName===e.toLowerCase()?!0:r._namespace!==RY.namespace.HTML&&r._qualifiedName===e}):(0,no.create_htmlCollection)(t,function(r){return r._qualifiedName===e})}function hvn(e,t,r){return e===""&&(e=null),e==="*"&&t==="*"?(0,no.create_htmlCollection)(r):e==="*"?(0,no.create_htmlCollection)(r,function(n){return n._localName===t}):t==="*"?(0,no.create_htmlCollection)(r,function(n){return n._namespace===e}):(0,no.create_htmlCollection)(r,function(n){return n._localName===t&&n._namespace===e})}function pvn(e,t){let r=(0,a9t.orderedSet_parse)(e);if(r.size===0)return(0,no.create_htmlCollection)(t,()=>!1);let n=t._nodeDocument._mode!=="quirks";return(0,no.create_htmlCollection)(t,function(s){let i=s.classList;return(0,a9t.orderedSet_contains)(i._tokenSet,r,n)})}function u9t(e,t){if(e._namespace===t&&e._namespacePrefix!==null)return e._namespacePrefix;for(let r=0;r{"use strict";Object.defineProperty(dOe,"__esModule",{value:!0});dOe.parentNode_convertNodesIntoANode=gvn;var mvn=Wn(),l9t=c_();function gvn(e,t){let r=null;for(let n=0;n{"use strict";Object.defineProperty(yw,"__esModule",{value:!0});yw.text_contiguousTextNodes=vvn;yw.text_contiguousExclusiveTextNodes=Svn;yw.text_descendantTextContent=Tvn;yw.text_split=bvn;var _vn=Zi(),Ay=As(),Avn=Ra(),Evn=c_(),fOe=Yl(),f9t=bY(),yvn=Tb();function vvn(e,t=!1){return{[Symbol.iterator](){let r=e;for(;r&&Ay.Guard.isTextNode(r._previousSibling);)r=r._previousSibling;return{next(){if(r&&!t&&r===e&&(Ay.Guard.isTextNode(r._nextSibling)?r=r._nextSibling:r=null),r===null)return{done:!0,value:null};{let n={done:!1,value:r};return Ay.Guard.isTextNode(r._nextSibling)?r=r._nextSibling:r=null,n}}}}}}function Svn(e,t=!1){return{[Symbol.iterator](){let r=e;for(;r&&Ay.Guard.isExclusiveTextNode(r._previousSibling);)r=r._previousSibling;return{next(){if(r&&!t&&r===e&&(Ay.Guard.isExclusiveTextNode(r._nextSibling)?r=r._nextSibling:r=null),r===null)return{done:!0,value:null};{let n={done:!1,value:r};return Ay.Guard.isExclusiveTextNode(r._nextSibling)?r=r._nextSibling:r=null,n}}}}}}function Tvn(e){let t="",r=(0,fOe.tree_getFirstDescendantNode)(e,!1,!1,n=>Ay.Guard.isTextNode(n));for(;r!==null;)t+=r._data,r=(0,fOe.tree_getNextDescendantNode)(e,r,!1,!1,n=>Ay.Guard.isTextNode(n));return t}function bvn(e,t){let r=e._data.length;if(t>r)throw new Avn.IndexSizeError;let n=r-t,s=(0,f9t.characterData_substringData)(e,t,n),i=(0,Evn.create_text)(e._nodeDocument,s),a=e._parent;if(a!==null){(0,yvn.mutation_insert)(i,a,e._nextSibling);for(let o of _vn.dom.rangeList){o._start[0]===e&&o._start[1]>t&&(o._start[0]=i,o._start[1]-=t),o._end[0]===e&&o._end[1]>t&&(o._end[0]=i,o._end[1]-=t);let c=(0,fOe.tree_index)(e);o._start[0]===a&&o._start[1]===c+1&&o._start[1]++,o._end[0]===a&&o._end[1]===c+1&&o._end[1]++}}return(0,f9t.characterData_replaceData)(e,t,n,""),i}});var p9t=S(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});ol.range_collapsed=NY;ol.range_root=OY;ol.range_isContained=DY;ol.range_isPartiallyContained=Sw;ol.range_setTheStart=Rvn;ol.range_setTheEnd=Cvn;ol.range_select=xvn;ol.range_extract=wY;ol.range_cloneTheContents=h9t;ol.range_insert=wvn;ol.range_getContainedNodes=Nvn;ol.range_getPartiallyContainedNodes=Ovn;var CY=zn(),Ey=Ra(),_c=As(),vw=c_(),Ln=Yl(),xY=aOe(),f_=bY(),L0=lOe(),so=Tb(),Ivn=hOe();function NY(e){return e._startNode===e._endNode&&e._startOffset===e._endOffset}function OY(e){return(0,Ln.tree_rootNode)(e._startNode)}function DY(e,t){return(0,Ln.tree_rootNode)(e)===OY(t)&&(0,xY.boundaryPoint_position)([e,0],t._start)===CY.BoundaryPosition.After&&(0,xY.boundaryPoint_position)([e,(0,Ln.tree_nodeLength)(e)],t._end)===CY.BoundaryPosition.Before}function Sw(e,t){let r=(0,Ln.tree_isAncestorOf)(t._startNode,e,!0),n=(0,Ln.tree_isAncestorOf)(t._endNode,e,!0);return r&&!n||!r&&n}function Rvn(e,t,r){if(_c.Guard.isDocumentTypeNode(t))throw new Ey.InvalidNodeTypeError;if(r>(0,Ln.tree_nodeLength)(t))throw new Ey.IndexSizeError;let n=[t,r];(OY(e)!==(0,Ln.tree_rootNode)(t)||(0,xY.boundaryPoint_position)(n,e._end)===CY.BoundaryPosition.After)&&(e._end=n),e._start=n}function Cvn(e,t,r){if(_c.Guard.isDocumentTypeNode(t))throw new Ey.InvalidNodeTypeError;if(r>(0,Ln.tree_nodeLength)(t))throw new Ey.IndexSizeError;let n=[t,r];(OY(e)!==(0,Ln.tree_rootNode)(t)||(0,xY.boundaryPoint_position)(n,e._start)===CY.BoundaryPosition.Before)&&(e._start=n),e._end=n}function xvn(e,t){let r=e._parent;if(r===null)throw new Ey.InvalidNodeTypeError;let n=(0,Ln.tree_index)(e);t._start=[r,n],t._end=[r,n+1]}function wY(e){let t=(0,vw.create_documentFragment)(e._startNode._nodeDocument);if(NY(e))return t;let r=e._startNode,n=e._startOffset,s=e._endNode,i=e._endOffset;if(r===s&&_c.Guard.isCharacterDataNode(r)){let f=(0,L0.node_clone)(r);return f._data=(0,f_.characterData_substringData)(r,n,i-n),(0,so.mutation_append)(f,t),(0,f_.characterData_replaceData)(r,n,i-n,""),t}let a=r;for(;!(0,Ln.tree_isAncestorOf)(s,a,!0);){if(a._parent===null)throw new Error("Parent node is null.");a=a._parent}let o=null;if(!(0,Ln.tree_isAncestorOf)(s,r,!0)){for(let f of a._children)if(Sw(f,e)){o=f;break}}let c=null;if(!(0,Ln.tree_isAncestorOf)(r,s,!0)){let f=[...a._children];for(let h=f.length-1;h>0;h--){let p=f[h];if(Sw(p,e)){c=p;break}}}let u=[];for(let f of a._children)if(DY(f,e)){if(_c.Guard.isDocumentTypeNode(f))throw new Ey.HierarchyRequestError;u.push(f)}let l,d;if((0,Ln.tree_isAncestorOf)(s,r,!0))l=r,d=n;else{let f=r;for(;f._parent!==null&&!(0,Ln.tree_isAncestorOf)(s,f._parent);)f=f._parent;if(f._parent===null)throw new Error("Parent node is null.");l=f._parent,d=1+(0,Ln.tree_index)(f)}if(_c.Guard.isCharacterDataNode(o)){let f=(0,L0.node_clone)(r);f._data=(0,f_.characterData_substringData)(r,n,(0,Ln.tree_nodeLength)(r)-n),(0,so.mutation_append)(f,t),(0,f_.characterData_replaceData)(r,n,(0,Ln.tree_nodeLength)(r)-n,"")}else if(o!==null){let f=(0,L0.node_clone)(o);(0,so.mutation_append)(f,t);let h=(0,vw.create_range)([r,n],[o,(0,Ln.tree_nodeLength)(o)]),p=wY(h);(0,so.mutation_append)(p,f)}for(let f of u)(0,so.mutation_append)(f,t);if(_c.Guard.isCharacterDataNode(c)){let f=(0,L0.node_clone)(s);f._data=(0,f_.characterData_substringData)(s,0,i),(0,so.mutation_append)(f,t),(0,f_.characterData_replaceData)(s,0,i,"")}else if(c!==null){let f=(0,L0.node_clone)(c);(0,so.mutation_append)(f,t);let h=(0,vw.create_range)([c,0],[s,i]),p=wY(h);(0,so.mutation_append)(p,f)}return e._start=[l,d],e._end=[l,d],t}function h9t(e){let t=(0,vw.create_documentFragment)(e._startNode._nodeDocument);if(NY(e))return t;let r=e._startNode,n=e._startOffset,s=e._endNode,i=e._endOffset;if(r===s&&_c.Guard.isCharacterDataNode(r)){let l=(0,L0.node_clone)(r);l._data=(0,f_.characterData_substringData)(r,n,i-n),(0,so.mutation_append)(l,t)}let a=r;for(;!(0,Ln.tree_isAncestorOf)(s,a,!0);){if(a._parent===null)throw new Error("Parent node is null.");a=a._parent}let o=null;if(!(0,Ln.tree_isAncestorOf)(s,r,!0)){for(let l of a._children)if(Sw(l,e)){o=l;break}}let c=null;if(!(0,Ln.tree_isAncestorOf)(r,s,!0)){let l=[...a._children];for(let d=l.length-1;d>0;d--){let f=l[d];if(Sw(f,e)){c=f;break}}}let u=[];for(let l of a._children)if(DY(l,e)){if(_c.Guard.isDocumentTypeNode(l))throw new Ey.HierarchyRequestError;u.push(l)}if(_c.Guard.isCharacterDataNode(o)){let l=(0,L0.node_clone)(r);l._data=(0,f_.characterData_substringData)(r,n,(0,Ln.tree_nodeLength)(r)-n),(0,so.mutation_append)(l,t)}else if(o!==null){let l=(0,L0.node_clone)(o);(0,so.mutation_append)(l,t);let d=(0,vw.create_range)([r,n],[o,(0,Ln.tree_nodeLength)(o)]),f=h9t(d);(0,so.mutation_append)(f,l)}for(let l of u){let d=(0,L0.node_clone)(l);(0,so.mutation_append)(d,t)}if(_c.Guard.isCharacterDataNode(c)){let l=(0,L0.node_clone)(s);l._data=(0,f_.characterData_substringData)(s,0,i),(0,so.mutation_append)(l,t)}else if(c!==null){let l=(0,L0.node_clone)(c);t.append(l);let d=(0,vw.create_range)([c,0],[s,i]),f=wY(d);(0,so.mutation_append)(f,l)}return t}function wvn(e,t){if(_c.Guard.isProcessingInstructionNode(t._startNode)||_c.Guard.isCommentNode(t._startNode)||_c.Guard.isTextNode(t._startNode)&&t._startNode._parent===null||t._startNode===e)throw new Ey.HierarchyRequestError;let r=null;if(_c.Guard.isTextNode(t._startNode))r=t._startNode;else{let i=0;for(let a of t._startNode._children){if(i===t._startOffset){r=a;break}i++}}let n;if(r===null)n=t._startNode;else{if(r._parent===null)throw new Error("Parent node is null.");n=r._parent}(0,so.mutation_ensurePreInsertionValidity)(e,n,r),_c.Guard.isTextNode(t._startNode)&&(r=(0,Ivn.text_split)(t._startNode,t._startOffset)),e===r&&(r=e._nextSibling),e._parent!==null&&(0,so.mutation_remove)(e,e._parent);let s=r===null?(0,Ln.tree_nodeLength)(n):(0,Ln.tree_index)(r);_c.Guard.isDocumentFragmentNode(e)?s+=(0,Ln.tree_nodeLength)(e):s++,(0,so.mutation_preInsert)(e,n,r),NY(t)&&(t._end=[n,s])}function Nvn(e){return{[Symbol.iterator]:()=>{let t=e.commonAncestorContainer,r=(0,Ln.tree_getFirstDescendantNode)(t);return{next:()=>{for(;r&&!DY(r,e);)r=(0,Ln.tree_getNextDescendantNode)(t,r);if(r===null)return{done:!0,value:null};{let n={done:!1,value:r};return r=(0,Ln.tree_getNextDescendantNode)(t,r),n}}}}}}function Ovn(e){return{[Symbol.iterator]:()=>{let t=e.commonAncestorContainer,r=(0,Ln.tree_getFirstDescendantNode)(t);return{next:()=>{for(;r&&!Sw(r,e);)r=(0,Ln.tree_getNextDescendantNode)(t,r);if(r===null)return{done:!0,value:null};{let n={done:!1,value:r};return r=(0,Ln.tree_getNextDescendantNode)(t,r),n}}}}}}});var m9t=S(pOe=>{"use strict";Object.defineProperty(pOe,"__esModule",{value:!0});pOe.selectors_scopeMatchASelectorsString=Pvn;var Dvn=Ra();function Pvn(e,t){throw new Dvn.NotSupportedError}});var g9t=S(PY=>{"use strict";Object.defineProperty(PY,"__esModule",{value:!0});PY.treeWalker_traverseChildren=Lvn;PY.treeWalker_traverseSiblings=Mvn;var KB=zn(),mOe=pY();function Lvn(e,t){let r=t?e._current._firstChild:e._current._lastChild;for(;r!==null;){let n=(0,mOe.traversal_filter)(e,r);if(n===KB.FilterResult.Accept)return e._current=r,r;if(n===KB.FilterResult.Skip){let s=t?r._firstChild:r._lastChild;if(s!==null){r=s;continue}}for(;r!==null;){let s=t?r._nextSibling:r._previousSibling;if(s!==null){r=s;break}let i=r._parent;if(i===null||i===e._root||i===e._current)return null;r=i}}return null}function Mvn(e,t){let r=e._current;if(r===e._root)return null;for(;;){let n=t?r._nextSibling:r._previousSibling;for(;n!==null;){r=n;let s=(0,mOe.traversal_filter)(e,r);if(s===KB.FilterResult.Accept)return e._current=r,r;n=t?r._firstChild:r._lastChild,(s===KB.FilterResult.Reject||n===null)&&(n=t?r._nextSibling:r._previousSibling)}if(r=r._parent,r===null||r===e._root||(0,mOe.traversal_filter)(e,r)===KB.FilterResult.Accept)return null}}});var Dn=S(bn=>{"use strict";var kvn=bn&&bn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Es=bn&&bn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&kvn(t,e,r)};Object.defineProperty(bn,"__esModule",{value:!0});Es(M$t(),bn);Es(Y$t(),bn);Es(aOe(),bn);Es(bY(),bn);Es(c_(),bn);Es(UB(),bn);Es(gY(),bn);Es(u_(),bn);Es(r9t(),bn);Es(mw(),bn);Es(dY(),bn);Es(i9t(),bn);Es(Tb(),bn);Es(fw(),bn);Es(ZNe(),bn);Es(lOe(),bn);Es(QNe(),bn);Es(IY(),bn);Es(d9t(),bn);Es(p9t(),bn);Es(m9t(),bn);Es(MB(),bn);Es(hOe(),bn);Es(pY(),bn);Es(Yl(),bn);Es(g9t(),bn);Es(hc(),bn);Es(WNe(),bn)});var _9t=S(LY=>{"use strict";Object.defineProperty(LY,"__esModule",{value:!0});LY.nonEntityAmpersandRegex=void 0;LY.nonEntityAmpersandRegex=/&(?![A-Za-z]+;|#\d+;)/g});var Tw=S(MY=>{"use strict";Object.defineProperty(MY,"__esModule",{value:!0});MY.BaseWriter=void 0;var Ac=zn(),Bvn=xB(),Uvn=zG(),h_=fa(),vp=Dn(),A9t=_9t(),gOe=class e{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);_builderOptions;_writerOptions;constructor(t){this._builderOptions=t}declaration(t,r,n){}docType(t,r,n){}comment(t){}text(t){}instruction(t,r){}cdata(t){}openTagBegin(t){}openTagEnd(t,r,n){}closeTag(t){}attributes(t){for(let r of t)this.attribute(r[1]===null?r[2]:r[1]+":"+r[2],r[3])}attribute(t,r){}beginElement(t){}endElement(t){}level=0;currentNode;serializeNode(t,r){let n=t._nodeDocument!==void 0&&t._nodeDocument._hasNamespaces;if(this.level=0,this.currentNode=t,n){let s=null,i=new Uvn.NamespacePrefixMap;i.set("xml",h_.namespace.XML);let a={value:1};this._serializeNodeNS(t,s,i,a,r)}else this._serializeNode(t,r)}_serializeNodeNS(t,r,n,s,i){switch(this.currentNode=t,t.nodeType){case Ac.NodeType.Element:this._serializeElementNS(t,r,n,s,i);break;case Ac.NodeType.Document:this._serializeDocumentNS(t,r,n,s,i);break;case Ac.NodeType.Comment:this._serializeComment(t,i);break;case Ac.NodeType.Text:this._serializeText(t,i);break;case Ac.NodeType.DocumentFragment:this._serializeDocumentFragmentNS(t,r,n,s,i);break;case Ac.NodeType.DocumentType:this._serializeDocumentType(t,i);break;case Ac.NodeType.ProcessingInstruction:this._serializeProcessingInstruction(t,i);break;case Ac.NodeType.CData:this._serializeCData(t,i);break;default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeNode(t,r){switch(this.currentNode=t,t.nodeType){case Ac.NodeType.Element:this._serializeElement(t,r);break;case Ac.NodeType.Document:this._serializeDocument(t,r);break;case Ac.NodeType.Comment:this._serializeComment(t,r);break;case Ac.NodeType.Text:this._serializeText(t,r);break;case Ac.NodeType.DocumentFragment:this._serializeDocumentFragment(t,r);break;case Ac.NodeType.DocumentType:this._serializeDocumentType(t,r);break;case Ac.NodeType.ProcessingInstruction:this._serializeProcessingInstruction(t,r);break;case Ac.NodeType.CData:this._serializeCData(t,r);break;default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeElementNS(t,r,n,s,i){let a=[];if(i&&(t.localName.indexOf(":")!==-1||!(0,vp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let o="",c=!1,u=!1,l=n.copy(),d={},f=this._recordNamespaceInformation(t,l,d),h=r,p=t.namespaceURI;if(h===p)f!==null&&(u=!0),p===h_.namespace.XML?o="xml:"+t.localName:o=t.localName,this.beginElement(o),this.openTagBegin(o);else{let _=t.prefix,g=null;if((_!==null||p!==f)&&(g=l.get(_,p)),_==="xmlns"){if(i)throw new Error("An element cannot have the 'xmlns' prefix (well-formed required).");g=_}g!==null?(o=g+":"+t.localName,f!==null&&f!==h_.namespace.XML&&(h=f||null),this.beginElement(o),this.openTagBegin(o)):_!==null?(_ in d&&(_=this._generatePrefix(p,l,s)),l.set(_,p),o+=_+":"+t.localName,this.beginElement(o),this.openTagBegin(o),a.push([null,"xmlns",_,this._serializeAttributeValue(p,i)]),f!==null&&(h=f||null)):f===null||f!==null&&f!==p?(u=!0,o+=t.localName,h=p,this.beginElement(o),this.openTagBegin(o),a.push([null,null,"xmlns",this._serializeAttributeValue(p,i)])):(o+=t.localName,h=p,this.beginElement(o),this.openTagBegin(o))}a.push(...this._serializeAttributesNS(t,l,s,d,u,i)),this.attributes(a);let m=p===h_.namespace.HTML;if(m&&t.childNodes.length===0&&e._VoidElementNames.has(t.localName)?(this.openTagEnd(o,!0,!0),this.endElement(o),c=!0):!m&&t.childNodes.length===0?(this.openTagEnd(o,!0,!1),this.endElement(o),c=!0):this.openTagEnd(o,!1,!1),!c){if(!(m&&t.localName==="template"))for(let _ of t.childNodes)this.level++,this._serializeNodeNS(_,h,l,s,i),this.level--;this.closeTag(o),this.endElement(o)}}_serializeElement(t,r){if(r&&(t.localName.indexOf(":")!==-1||!(0,vp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let n=!1,s=t.localName;this.beginElement(s),this.openTagBegin(s);let i=this._serializeAttributes(t,r);if(this.attributes(i),t.hasChildNodes()?this.openTagEnd(s,!1,!1):(this.openTagEnd(s,!0,!1),this.endElement(s),n=!0),!n){for(let a of t._children)this.level++,this._serializeNode(a,r),this.level--;this.closeTag(s),this.endElement(s)}}_serializeDocumentNS(t,r,n,s,i){if(i&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");for(let a of t.childNodes)this._serializeNodeNS(a,r,n,s,i)}_serializeDocument(t,r){if(r&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");for(let n of t._children)this._serializeNode(n,r)}_serializeComment(t,r){if(r&&(!(0,vp.xml_isLegalChar)(t.data)||t.data.indexOf("--")!==-1||t.data.endsWith("-")))throw new Error("Comment data contains invalid characters (well-formed required).");this.comment(t.data)}_serializeText(t,r){if(r&&!(0,vp.xml_isLegalChar)(t.data))throw new Error("Text data contains invalid characters (well-formed required).");let n=t.data.replace(A9t.nonEntityAmpersandRegex,"&").replace(//g,">");this.text(n)}_serializeDocumentFragmentNS(t,r,n,s,i){for(let a of t.childNodes)this._serializeNodeNS(a,r,n,s,i)}_serializeDocumentFragment(t,r){for(let n of t._children)this._serializeNode(n,r)}_serializeDocumentType(t,r){if(r&&!(0,vp.xml_isPubidChar)(t.publicId))throw new Error("DocType public identifier does not match PubidChar construct (well-formed required).");if(r&&(!(0,vp.xml_isLegalChar)(t.systemId)||t.systemId.indexOf('"')!==-1&&t.systemId.indexOf("'")!==-1))throw new Error("DocType system identifier contains invalid characters (well-formed required).");this.docType(t.name,t.publicId,t.systemId)}_serializeProcessingInstruction(t,r){if(r&&(t.target.indexOf(":")!==-1||/^xml$/i.test(t.target)))throw new Error("Processing instruction target contains invalid characters (well-formed required).");if(r&&(!(0,vp.xml_isLegalChar)(t.data)||t.data.indexOf("?>")!==-1))throw new Error("Processing instruction data contains invalid characters (well-formed required).");this.instruction(t.target,t.data)}_serializeCData(t,r){if(r&&t.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters (well-formed required).");this.cdata(t.data)}_serializeAttributesNS(t,r,n,s,i,a){let o=[],c=a?new Bvn.LocalNameSet:void 0;for(let u of t.attributes){if(!a&&!i&&u.namespaceURI===null){o.push([null,null,u.localName,this._serializeAttributeValue(u.value,a)]);continue}if(a&&c&&c.has(u.namespaceURI,u.localName))throw new Error("Element contains duplicate attributes (well-formed required).");a&&c&&c.set(u.namespaceURI,u.localName);let l=u.namespaceURI,d=null;if(l!==null)if(d=r.get(u.prefix,l),l===h_.namespace.XMLNS){if(u.value===h_.namespace.XML||u.prefix===null&&i||u.prefix!==null&&(!(u.localName in s)||s[u.localName]!==u.value)&&r.has(u.localName,u.value))continue;if(a&&u.value===h_.namespace.XMLNS)throw new Error("XMLNS namespace is reserved (well-formed required).");if(a&&u.value==="")throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required).");u.prefix==="xmlns"&&(d="xmlns")}else d===null&&(u.prefix!==null&&(!r.hasPrefix(u.prefix)||r.has(u.prefix,l))?d=u.prefix:d=this._generatePrefix(l,r,n),o.push([null,"xmlns",d,this._serializeAttributeValue(l,a)]));let f="";if(d!==null&&(f=d),a&&(u.localName.indexOf(":")!==-1||!(0,vp.xml_isName)(u.localName)||u.localName==="xmlns"&&l===null))throw new Error("Attribute local name contains invalid characters (well-formed required).");o.push([l,d,u.localName,this._serializeAttributeValue(u.value,a)])}return o}_serializeAttributes(t,r){let n=[],s=r?{}:void 0;for(let i of t.attributes){if(!r){n.push([null,null,i.localName,this._serializeAttributeValue(i.value,r)]);continue}if(r&&s&&i.localName in s)throw new Error("Element contains duplicate attributes (well-formed required).");if(r&&s&&(s[i.localName]=!0),r&&(i.localName.indexOf(":")!==-1||!(0,vp.xml_isName)(i.localName)))throw new Error("Attribute local name contains invalid characters (well-formed required).");n.push([null,null,i.localName,this._serializeAttributeValue(i.value,r)])}return n}_recordNamespaceInformation(t,r,n){let s=null;for(let i of t.attributes){let a=i.namespaceURI,o=i.prefix;if(a===h_.namespace.XMLNS)if(o===null){s=i.value;continue}else{let c=i.localName,u=i.value;if(u===h_.namespace.XML||(u===""&&(u=null),r.has(c,u)))continue;r.set(c,u),n[c]=u||""}}return s}_generatePrefix(t,r,n){let s="ns"+n.value.toString();return n.value++,r.set(s,t),s}_serializeAttributeValue(t,r){if(r&&t!==null&&!(0,vp.xml_isLegalChar)(t))throw new Error("Invalid characters in attribute value.");return t===null?"":t.replace(A9t.nonEntityAmpersandRegex,"&").replace(//g,">").replace(/"/g,""")}};MY.BaseWriter=gOe});var GB=S(kY=>{"use strict";Object.defineProperty(kY,"__esModule",{value:!0});kY.ObjectWriter=void 0;var Sp=Wn(),yy=zn(),Fvn=Tw(),_Oe=class extends Fvn.BaseWriter{_currentList;_currentIndex;_listRegister;constructor(t,r){super(t),this._writerOptions=(0,Sp.applyDefaults)(r,{format:"object",wellFormed:!1,group:!1,verbose:!1})}serialize(t){return this._currentList=[],this._currentIndex=0,this._listRegister=[this._currentList],this.serializeNode(t,this._writerOptions.wellFormed),this._process(this._currentList,this._writerOptions)}_process(t,r){if(t.length===0)return{};let n={},s=!1,i=0,a=0,o=0,c=0;for(let p=0;p2)for(let o of t){let c=s+(a++).toString();r[c]=o}else{let o=i>1?s+(a++).toString():s;r[o]=t}return a}beginElement(t){let r=[];if(this._currentList.length===0)this._currentList.push({[t]:r});else{let n=this._currentList[this._currentList.length-1];this._isElementNode(n,t)?n[t].length!==0&&(0,Sp.isArray)(n[t][0])?n[t].push(r):n[t]=[n[t],r]:this._currentList.push({[t]:r})}this._currentIndex++,this._listRegister.length>this._currentIndex?this._listRegister[this._currentIndex]=r:this._listRegister.push(r),this._currentList=r}endElement(){this._currentList=this._listRegister[--this._currentIndex]}attribute(t,r){if(this._currentList.length===0)this._currentList.push({"@":{[t]:r}});else{let n=this._currentList[this._currentList.length-1];this._isAttrNode(n)?n["@"][t]=r:this._currentList.push({"@":{[t]:r}})}}comment(t){if(this._currentList.length===0)this._currentList.push({"!":t});else{let r=this._currentList[this._currentList.length-1];this._isCommentNode(r)?(0,Sp.isArray)(r["!"])?r["!"].push(t):r["!"]=[r["!"],t]:this._currentList.push({"!":t})}}text(t){if(this._currentList.length===0)this._currentList.push({"#":t});else{let r=this._currentList[this._currentList.length-1];this._isTextNode(r)?(0,Sp.isArray)(r["#"])?r["#"].push(t):r["#"]=[r["#"],t]:this._currentList.push({"#":t})}}instruction(t,r){let n=r===""?t:t+" "+r;if(this._currentList.length===0)this._currentList.push({"?":n});else{let s=this._currentList[this._currentList.length-1];this._isInstructionNode(s)?(0,Sp.isArray)(s["?"])?s["?"].push(n):s["?"]=[s["?"],n]:this._currentList.push({"?":n})}}cdata(t){if(this._currentList.length===0)this._currentList.push({$:t});else{let r=this._currentList[this._currentList.length-1];this._isCDATANode(r)?(0,Sp.isArray)(r.$)?r.$.push(t):r.$=[r.$,t]:this._currentList.push({$:t})}}_isAttrNode(t){return"@"in t}_isTextNode(t){return"#"in t}_isCommentNode(t){return"!"in t}_isInstructionNode(t){return"?"in t}_isCDATANode(t){return"$"in t}_isElementNode(t,r){return r in t}_getAttrKey(){return this._builderOptions.convert.att}_getNodeKey(t){switch(t){case yy.NodeType.Comment:return this._builderOptions.convert.comment;case yy.NodeType.Text:return this._builderOptions.convert.text;case yy.NodeType.ProcessingInstruction:return this._builderOptions.convert.ins;case yy.NodeType.CData:return this._builderOptions.convert.cdata;default:throw new Error("Invalid node type.")}}};kY.ObjectWriter=_Oe});var E9t=S(UY=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});UY.MapWriter=void 0;var BY=Wn(),$vn=GB(),qvn=Tw(),AOe=class extends qvn.BaseWriter{constructor(t,r){super(t),this._writerOptions=(0,BY.applyDefaults)(r,{format:"map",wellFormed:!1,group:!1,verbose:!1})}serialize(t){let r=(0,BY.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1,verbose:!1}),s=new $vn.ObjectWriter(this._builderOptions,r).serialize(t);return this._convertObject(s)}_convertObject(t){if((0,BY.isArray)(t)){for(let r=0;r{"use strict";Object.defineProperty(FY,"__esModule",{value:!0});FY.XMLWriter=void 0;var Hvn=Wn(),Vvn=zn(),jvn=Tw(),y9t=As(),EOe=class extends jvn.BaseWriter{_refs;_indentation={};_lengthToLastNewline=0;constructor(t,r){super(t),this._writerOptions=(0,Hvn.applyDefaults)(r,{wellFormed:!1,headless:!1,prettyPrint:!1,indent:" ",newline:` -`,offset:0,width:0,allowEmptyTags:!1,indentTextOnlyNodes:!1,spaceBeforeSlash:!1})}serialize(t){return this._refs={suppressPretty:!1,emptyNode:!1,markup:""},t.nodeType===Vvn.NodeType.Document&&!this._writerOptions.headless&&this.declaration(this._builderOptions.version,this._builderOptions.encoding,this._builderOptions.standalone),this.serializeNode(t,this._writerOptions.wellFormed),this._writerOptions.prettyPrint&&this._refs.markup.slice(-this._writerOptions.newline.length)===this._writerOptions.newline&&(this._refs.markup=this._refs.markup.slice(0,-this._writerOptions.newline.length)),this._refs.markup}declaration(t,r,n){this._beginLine(),this._refs.markup+='",this._endLine()}docType(t,r,n){this._beginLine(),r&&n?this._refs.markup+="':r?this._refs.markup+="':n?this._refs.markup+="':this._refs.markup+="",this._endLine()}openTagBegin(t){this._beginLine(),this._refs.markup+="<"+t}openTagEnd(t,r,n){if(this._refs.suppressPretty=!1,this._refs.emptyNode=!1,this._writerOptions.prettyPrint&&!r&&!n){let s=!0,i=!0,a=this.currentNode.firstChild,o=0,c=0;for(;a;){if(y9t.Guard.isExclusiveTextNode(a))c++;else if(y9t.Guard.isCDATASectionNode(a))o++;else{s=!1,i=!1;break}a.data!==""&&(i=!1),a=a.nextSibling}this._refs.suppressPretty=!this._writerOptions.indentTextOnlyNodes&&s&&(o<=1&&c===0||o===0),this._refs.emptyNode=i}(n||r||this._refs.emptyNode)&&this._writerOptions.allowEmptyTags?this._refs.markup+=">":this._refs.markup+=n?" />":r||this._refs.emptyNode?this._writerOptions.spaceBeforeSlash?" />":"/>":">",this._endLine()}closeTag(t){this._refs.emptyNode||(this._beginLine(),this._refs.markup+=""),this._refs.suppressPretty=!1,this._refs.emptyNode=!1,this._endLine()}attribute(t,r){let n=t+'="'+r+'"';this._writerOptions.prettyPrint&&this._writerOptions.width>0&&this._refs.markup.length-this._lengthToLastNewline+1+n.length>this._writerOptions.width?(this._endLine(),this._beginLine(),this._refs.markup+=this._indent(1)+n):this._refs.markup+=" "+n}text(t){t!==""&&(this._beginLine(),this._refs.markup+=t,this._endLine())}cdata(t){t!==""&&(this._beginLine(),this._refs.markup+="",this._endLine())}comment(t){this._beginLine(),this._refs.markup+="",this._endLine()}instruction(t,r){this._beginLine(),this._refs.markup+="",this._endLine()}_beginLine(){this._writerOptions.prettyPrint&&!this._refs.suppressPretty&&(this._refs.markup+=this._indent(this._writerOptions.offset+this.level))}_endLine(){this._writerOptions.prettyPrint&&!this._refs.suppressPretty&&(this._refs.markup+=this._writerOptions.newline,this._lengthToLastNewline=this._refs.markup.length)}_indent(t){if(t<=0)return"";if(this._indentation[t]!==void 0)return this._indentation[t];{let r=this._writerOptions.indent.repeat(t);return this._indentation[t]=r,r}}};FY.XMLWriter=EOe});var S9t=S($Y=>{"use strict";Object.defineProperty($Y,"__esModule",{value:!0});$Y.JSONWriter=void 0;var Kvn=GB(),Tp=Wn(),Gvn=Tw(),yOe=class extends Gvn.BaseWriter{constructor(t,r){super(t),this._writerOptions=(0,Tp.applyDefaults)(r,{wellFormed:!1,prettyPrint:!1,indent:" ",newline:` -`,offset:0,group:!1,verbose:!1})}serialize(t){let r=(0,Tp.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1}),s=new Kvn.ObjectWriter(this._builderOptions,r).serialize(t);return this._beginLine(this._writerOptions,0)+this._convertObject(s,this._writerOptions)}_convertObject(t,r,n=0){let s="",i=this._isLeafNode(t);if((0,Tp.isArray)(t)){s+="[";let a=t.length,o=0;for(let c of t)s+=this._endLine(r,n+1)+this._beginLine(r,n+1)+this._convertObject(c,r,n+1),o{i&&r.prettyPrint?s+=" ":s+=this._endLine(r,n+1)+this._beginLine(r,n+1),s+=this._key(c),r.prettyPrint&&(s+=" "),s+=this._convertObject(u,r,n+1),o0)return new Array(n).join(t.indent)}else return"";return""}_endLine(t,r){return t.prettyPrint?t.newline:""}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}_isLeafNode(t){return this._descendantCount(t)<=1}_descendantCount(t,r=0){return(0,Tp.isArray)(t)?(0,Tp.forEachArray)(t,n=>r+=this._descendantCount(n,r),this):(0,Tp.isObject)(t)?(0,Tp.forEachObject)(t,(n,s)=>r+=this._descendantCount(s,r),this):r++,r}};$Y.JSONWriter=yOe});var T9t=S(qY=>{"use strict";Object.defineProperty(qY,"__esModule",{value:!0});qY.YAMLWriter=void 0;var zvn=GB(),p_=Wn(),Yvn=Tw(),vOe=class extends Yvn.BaseWriter{constructor(t,r){if(super(t),this._writerOptions=(0,p_.applyDefaults)(r,{wellFormed:!1,indent:" ",newline:` -`,offset:0,group:!1,verbose:!1}),this._writerOptions.indent.length<2)throw new Error("YAML indententation string must be at least two characters long.");if(this._writerOptions.offset<0)throw new Error("YAML offset should be zero or a positive number.")}serialize(t){let r=(0,p_.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1}),s=new zvn.ObjectWriter(this._builderOptions,r).serialize(t),i=this._beginLine(this._writerOptions,0)+"---"+this._endLine(this._writerOptions)+this._convertObject(s,this._writerOptions,0);return i.slice(-this._writerOptions.newline.length)===this._writerOptions.newline&&(i=i.slice(0,-this._writerOptions.newline.length)),i}_convertObject(t,r,n,s=!1){let i="";if((0,p_.isArray)(t))for(let a of t)i+=this._beginLine(r,n,!0),(0,p_.isObject)(a)?(0,p_.isEmpty)(a)?i+='""'+this._endLine(r):i+=this._convertObject(a,r,n,!0):i+=this._val(a)+this._endLine(r);else(0,p_.forEachObject)(t,(a,o)=>{s?(i+=this._key(a),s=!1):i+=this._beginLine(r,n)+this._key(a),!(0,p_.isObject)(o)&&!(0,p_.isArray)(o)?i+=" "+this._val(o)+this._endLine(r):(0,p_.isEmpty)(o)?i+=' ""'+this._endLine(r):i+=this._endLine(r)+this._convertObject(o,r,n+1)},this);return i}_beginLine(t,r,n=!1){let s=t.offset+r+1,i=new Array(s).join(t.indent);return n?i.substr(0,i.length-2)+"-"+i.substr(-1,1):i}_endLine(t){return t.newline}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};qY.YAMLWriter=vOe});var b9t=S(hf=>{"use strict";Object.defineProperty(hf,"__esModule",{value:!0});hf.YAMLWriter=hf.JSONWriter=hf.ObjectWriter=hf.XMLWriter=hf.MapWriter=void 0;var Qvn=E9t();Object.defineProperty(hf,"MapWriter",{enumerable:!0,get:function(){return Qvn.MapWriter}});var Wvn=v9t();Object.defineProperty(hf,"XMLWriter",{enumerable:!0,get:function(){return Wvn.XMLWriter}});var Xvn=GB();Object.defineProperty(hf,"ObjectWriter",{enumerable:!0,get:function(){return Xvn.ObjectWriter}});var Jvn=S9t();Object.defineProperty(hf,"JSONWriter",{enumerable:!0,get:function(){return Jvn.JSONWriter}});var Zvn=T9t();Object.defineProperty(hf,"YAMLWriter",{enumerable:!0,get:function(){return Zvn.YAMLWriter}})});var I9t=S(VY=>{"use strict";Object.defineProperty(VY,"__esModule",{value:!0});VY.ChildNodeImpl=void 0;var HY=As(),vy=Dn(),SOe=class{before(...t){let r=HY.Cast.asNode(this),n=r._parent;if(n===null)return;let s=r._previousSibling,i=!0;for(;i&&s;){i=!1;for(let o=0;o{"use strict";Object.defineProperty(jY,"__esModule",{value:!0});jY.DocumentOrShadowRootImpl=void 0;var TOe=class{};jY.DocumentOrShadowRootImpl=TOe});var C9t=S(KY=>{"use strict";Object.defineProperty(KY,"__esModule",{value:!0});KY.MutationObserverImpl=void 0;var eSn=Zi(),tSn=As(),bOe=fa(),IOe=class{_callback;_nodeList=[];_recordQueue=[];constructor(t){this._callback=t;let r=eSn.dom.window;bOe.set.append(r._mutationObservers,this)}observe(t,r){if(r=r||{childList:!1,subtree:!1},(r.attributeOldValue!==void 0||r.attributeFilter!==void 0)&&r.attributes===void 0&&(r.attributes=!0),r.characterDataOldValue!==void 0&&r.characterData===void 0&&(r.characterData=!0),!r.childList&&!r.attributes&&!r.characterData)throw new TypeError;if(r.attributeOldValue&&!r.attributes)throw new TypeError;if(r.attributeFilter!==void 0&&!r.attributes)throw new TypeError;if(r.characterDataOldValue&&!r.characterData)throw new TypeError;let n=!1,s=r;for(let i of t._registeredObserverList)if(i.observer===this){n=!0;for(let a of this._nodeList)bOe.list.remove(a._registeredObserverList,o=>tSn.Guard.isTransientRegisteredObserver(o)&&o.source===i);i.options=s}n||(t._registeredObserverList.push({observer:this,options:r}),this._nodeList.push(t))}disconnect(){for(let t of this._nodeList)bOe.list.remove(t._registeredObserverList,r=>r.observer===this);this._recordQueue=[]}takeRecords(){let t=this._recordQueue;return this._recordQueue=[],t}};KY.MutationObserverImpl=IOe});var x9t=S(zY=>{"use strict";Object.defineProperty(zY,"__esModule",{value:!0});zY.NonDocumentTypeChildNodeImpl=void 0;var GY=As(),ROe=class{get previousElementSibling(){let t=GY.Cast.asNode(this)._previousSibling;for(;t;){if(GY.Guard.isElementNode(t))return t;t=t._previousSibling}return null}get nextElementSibling(){let t=GY.Cast.asNode(this)._nextSibling;for(;t;){if(GY.Guard.isElementNode(t))return t;t=t._nextSibling}return null}};zY.NonDocumentTypeChildNodeImpl=ROe});var N9t=S(QY=>{"use strict";Object.defineProperty(QY,"__esModule",{value:!0});QY.NonElementParentNodeImpl=void 0;var YY=As(),w9t=Dn(),COe=class{getElementById(t){let r=(0,w9t.tree_getFirstDescendantNode)(YY.Cast.asNode(this),!1,!1,n=>YY.Guard.isElementNode(n));for(;r!==null;){if(r._uniqueIdentifier===t)return r;r=(0,w9t.tree_getNextDescendantNode)(YY.Cast.asNode(this),r,!1,!1,n=>YY.Guard.isElementNode(n))}return null}};QY.NonElementParentNodeImpl=COe});var O9t=S(WY=>{"use strict";Object.defineProperty(WY,"__esModule",{value:!0});WY.ParentNodeImpl=void 0;var M0=As(),Sy=Dn(),xOe=class{get children(){return(0,Sy.create_htmlCollection)(M0.Cast.asNode(this))}get firstElementChild(){let t=M0.Cast.asNode(this)._firstChild;for(;t;){if(M0.Guard.isElementNode(t))return t;t=t._nextSibling}return null}get lastElementChild(){let t=M0.Cast.asNode(this)._lastChild;for(;t;){if(M0.Guard.isElementNode(t))return t;t=t._previousSibling}return null}get childElementCount(){let t=0;for(let r of M0.Cast.asNode(this)._children)M0.Guard.isElementNode(r)&&t++;return t}prepend(...t){let r=M0.Cast.asNode(this),n=(0,Sy.parentNode_convertNodesIntoANode)(t,r._nodeDocument);(0,Sy.mutation_preInsert)(n,r,r._firstChild)}append(...t){let r=M0.Cast.asNode(this),n=(0,Sy.parentNode_convertNodesIntoANode)(t,r._nodeDocument);(0,Sy.mutation_append)(n,r)}querySelector(t){let r=M0.Cast.asNode(this),n=(0,Sy.selectors_scopeMatchASelectorsString)(t,r);return n.length===0?null:n[0]}querySelectorAll(t){let r=M0.Cast.asNode(this),n=(0,Sy.selectors_scopeMatchASelectorsString)(t,r);return(0,Sy.create_nodeListStatic)(r,n)}};WY.ParentNodeImpl=xOe});var D9t=S(XY=>{"use strict";Object.defineProperty(XY,"__esModule",{value:!0});XY.SlotableImpl=void 0;var rSn=Dn(),wOe=class{__name;__assignedSlot;get _name(){return this.__name||""}set _name(t){this.__name=t}get _assignedSlot(){return this.__assignedSlot||null}set _assignedSlot(t){this.__assignedSlot=t}get assignedSlot(){return(0,rSn.shadowTree_findASlot)(this,!0)}};XY.SlotableImpl=wOe});var P9t=S(ZY=>{"use strict";Object.defineProperty(ZY,"__esModule",{value:!0});ZY.StaticRangeImpl=void 0;var nSn=Gz(),sSn=Ra(),JY=As(),NOe=class extends nSn.AbstractRangeImpl{_start;_end;constructor(t){if(super(),JY.Guard.isDocumentTypeNode(t.startContainer)||JY.Guard.isAttrNode(t.startContainer)||JY.Guard.isDocumentTypeNode(t.endContainer)||JY.Guard.isAttrNode(t.endContainer))throw new sSn.InvalidNodeTypeError;this._start=[t.startContainer,t.startOffset],this._end=[t.endContainer,t.endOffset]}};ZY.StaticRangeImpl=NOe});var tQ=S(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.XMLDocument=ct.Window=ct.TreeWalker=ct.Traverser=ct.Text=ct.StaticRange=ct.ShadowRoot=ct.Range=ct.ProcessingInstruction=ct.NodeListStatic=ct.NodeList=ct.NodeIterator=ct.Node=ct.NodeFilter=ct.NamedNodeMap=ct.MutationRecord=ct.MutationObserver=ct.HTMLCollection=ct.EventTarget=ct.Event=ct.Element=ct.DOMTokenList=ct.DOMImplementation=ct.dom=ct.DocumentType=ct.Document=ct.DocumentFragment=ct.CustomEvent=ct.Comment=ct.CharacterData=ct.CDATASection=ct.Attr=ct.AbstractRange=ct.AbortSignal=ct.AbortController=void 0;var cl=Wn(),iSn=Xwe();Object.defineProperty(ct,"AbortController",{enumerable:!0,get:function(){return iSn.AbortControllerImpl}});var aSn=Zwe();Object.defineProperty(ct,"AbortSignal",{enumerable:!0,get:function(){return aSn.AbortSignalImpl}});var oSn=Gz();Object.defineProperty(ct,"AbstractRange",{enumerable:!0,get:function(){return oSn.AbstractRangeImpl}});var cSn=nNe();Object.defineProperty(ct,"Attr",{enumerable:!0,get:function(){return cSn.AttrImpl}});var uSn=iNe();Object.defineProperty(ct,"CDATASection",{enumerable:!0,get:function(){return uSn.CDATASectionImpl}});var OOe=PB();Object.defineProperty(ct,"CharacterData",{enumerable:!0,get:function(){return OOe.CharacterDataImpl}});var DOe=I9t(),lSn=aNe();Object.defineProperty(ct,"Comment",{enumerable:!0,get:function(){return lSn.CommentImpl}});var dSn=LNe();Object.defineProperty(ct,"CustomEvent",{enumerable:!0,get:function(){return dSn.CustomEventImpl}});var POe=xz();Object.defineProperty(ct,"DocumentFragment",{enumerable:!0,get:function(){return POe.DocumentFragmentImpl}});var eQ=_z();Object.defineProperty(ct,"Document",{enumerable:!0,get:function(){return eQ.DocumentImpl}});var L9t=R9t(),M9t=eNe();Object.defineProperty(ct,"DocumentType",{enumerable:!0,get:function(){return M9t.DocumentTypeImpl}});var fSn=Zi();Object.defineProperty(ct,"dom",{enumerable:!0,get:function(){return fSn.dom}});var hSn=twe();Object.defineProperty(ct,"DOMImplementation",{enumerable:!0,get:function(){return hSn.DOMImplementationImpl}});var pSn=xNe();Object.defineProperty(ct,"DOMTokenList",{enumerable:!0,get:function(){return pSn.DOMTokenListImpl}});var zB=Iz();Object.defineProperty(ct,"Element",{enumerable:!0,get:function(){return zB.ElementImpl}});var mSn=aY();Object.defineProperty(ct,"Event",{enumerable:!0,get:function(){return mSn.EventImpl}});var gSn=wB();Object.defineProperty(ct,"EventTarget",{enumerable:!0,get:function(){return gSn.EventTargetImpl}});var _Sn=uNe();Object.defineProperty(ct,"HTMLCollection",{enumerable:!0,get:function(){return _Sn.HTMLCollectionImpl}});var ASn=C9t();Object.defineProperty(ct,"MutationObserver",{enumerable:!0,get:function(){return ASn.MutationObserverImpl}});var ESn=RNe();Object.defineProperty(ct,"MutationRecord",{enumerable:!0,get:function(){return ESn.MutationRecordImpl}});var ySn=mNe();Object.defineProperty(ct,"NamedNodeMap",{enumerable:!0,get:function(){return ySn.NamedNodeMapImpl}});var vSn=bNe();Object.defineProperty(ct,"NodeFilter",{enumerable:!0,get:function(){return vSn.NodeFilterImpl}});var SSn=fy();Object.defineProperty(ct,"Node",{enumerable:!0,get:function(){return SSn.NodeImpl}});var TSn=vNe();Object.defineProperty(ct,"NodeIterator",{enumerable:!0,get:function(){return TSn.NodeIteratorImpl}});var bSn=dNe();Object.defineProperty(ct,"NodeList",{enumerable:!0,get:function(){return bSn.NodeListImpl}});var ISn=hNe();Object.defineProperty(ct,"NodeListStatic",{enumerable:!0,get:function(){return ISn.NodeListStaticImpl}});var k9t=x9t(),B9t=N9t(),LOe=O9t(),RSn=oNe();Object.defineProperty(ct,"ProcessingInstruction",{enumerable:!0,get:function(){return RSn.ProcessingInstructionImpl}});var CSn=ANe();Object.defineProperty(ct,"Range",{enumerable:!0,get:function(){return CSn.RangeImpl}});var U9t=rNe();Object.defineProperty(ct,"ShadowRoot",{enumerable:!0,get:function(){return U9t.ShadowRootImpl}});var F9t=D9t(),xSn=P9t();Object.defineProperty(ct,"StaticRange",{enumerable:!0,get:function(){return xSn.StaticRangeImpl}});var $9t=Lz();Object.defineProperty(ct,"Text",{enumerable:!0,get:function(){return $9t.TextImpl}});var wSn=Wz();Object.defineProperty(ct,"Traverser",{enumerable:!0,get:function(){return wSn.TraverserImpl}});var NSn=TNe();Object.defineProperty(ct,"TreeWalker",{enumerable:!0,get:function(){return NSn.TreeWalkerImpl}});var OSn=Lwe();Object.defineProperty(ct,"Window",{enumerable:!0,get:function(){return OSn.WindowImpl}});var DSn=Qwe();Object.defineProperty(ct,"XMLDocument",{enumerable:!0,get:function(){return DSn.XMLDocumentImpl}});(0,cl.applyMixin)(zB.ElementImpl,DOe.ChildNodeImpl);(0,cl.applyMixin)(OOe.CharacterDataImpl,DOe.ChildNodeImpl);(0,cl.applyMixin)(M9t.DocumentTypeImpl,DOe.ChildNodeImpl);(0,cl.applyMixin)(eQ.DocumentImpl,L9t.DocumentOrShadowRootImpl);(0,cl.applyMixin)(U9t.ShadowRootImpl,L9t.DocumentOrShadowRootImpl);(0,cl.applyMixin)(zB.ElementImpl,k9t.NonDocumentTypeChildNodeImpl);(0,cl.applyMixin)(OOe.CharacterDataImpl,k9t.NonDocumentTypeChildNodeImpl);(0,cl.applyMixin)(eQ.DocumentImpl,B9t.NonElementParentNodeImpl);(0,cl.applyMixin)(POe.DocumentFragmentImpl,B9t.NonElementParentNodeImpl);(0,cl.applyMixin)(eQ.DocumentImpl,LOe.ParentNodeImpl);(0,cl.applyMixin)(POe.DocumentFragmentImpl,LOe.ParentNodeImpl);(0,cl.applyMixin)(zB.ElementImpl,LOe.ParentNodeImpl);(0,cl.applyMixin)($9t.TextImpl,F9t.SlotableImpl);(0,cl.applyMixin)(zB.ElementImpl,F9t.SlotableImpl)});var nQ=S(rQ=>{"use strict";Object.defineProperty(rQ,"__esModule",{value:!0});rQ.TokenType=void 0;var q9t;(function(e){e[e.EOF=0]="EOF",e[e.Declaration=1]="Declaration",e[e.DocType=2]="DocType",e[e.Element=3]="Element",e[e.Text=4]="Text",e[e.CDATA=5]="CDATA",e[e.PI=6]="PI",e[e.Comment=7]="Comment",e[e.ClosingTag=8]="ClosingTag"})(q9t||(rQ.TokenType=q9t={}))});var kOe=S(sQ=>{"use strict";Object.defineProperty(sQ,"__esModule",{value:!0});sQ.XMLStringLexer=void 0;var cu=nQ(),MOe=class e{_str;_index;_length;_options={skipWhitespaceOnlyText:!1};err={line:-1,col:-1,index:-1,str:""};constructor(t,r){this._str=t,this._index=0,this._length=t.length,r&&(this._options.skipWhitespaceOnlyText=r.skipWhitespaceOnlyText||!1)}nextToken(){if(this.eof())return{type:cu.TokenType.EOF};let t=this.skipIfStartsWith("<")?this.openBracket():this.text();return this._options.skipWhitespaceOnlyText&&t.type===cu.TokenType.Text&&e.isWhiteSpaceToken(t)&&(t=this.nextToken()),t}openBracket(){if(this.skipIfStartsWith("?"))return this.skipIfStartsWith("xml")?e.isSpace(this._str[this._index])?this.declaration():(this.seek(-3),this.pi()):this.pi();if(this.skipIfStartsWith("!")){if(this.skipIfStartsWith("--"))return this.comment();if(this.skipIfStartsWith("[CDATA["))return this.cdata();if(this.skipIfStartsWith("DOCTYPE"))return this.doctype();this.throwError("Invalid '!' in opening tag.")}else return this.skipIfStartsWith("/")?this.closeTag():this.openTag()}declaration(){let t="",r="",n="";for(;!this.eof();){if(this.skipSpace(),this.skipIfStartsWith("?>"))return{type:cu.TokenType.Declaration,version:t,encoding:r,standalone:n};{let[s,i]=this.attribute();s==="version"?t=i:s==="encoding"?r=i:s==="standalone"?n=i:this.throwError("Invalid attribute name: "+s)}}this.throwError("Missing declaration end symbol `?>`")}doctype(){let t="",r="";this.skipSpace();let n=this.takeUntil2("[",">",!0);return this.skipSpace(),this.skipIfStartsWith("PUBLIC")?(t=this.quotedString(),r=this.quotedString()):this.skipIfStartsWith("SYSTEM")&&(r=this.quotedString()),this.skipSpace(),this.skipIfStartsWith("[")&&(this.skipUntil("]"),this.skipIfStartsWith("]")||this.throwError("Missing end bracket of DTD internal subset")),this.skipSpace(),this.skipIfStartsWith(">")||this.throwError("Missing doctype end symbol `>`"),{type:cu.TokenType.DocType,name:n,pubId:t,sysId:r}}pi(){let t=this.takeUntilStartsWith("?>",!0);if(this.eof()&&this.throwError("Missing processing instruction end symbol `?>`"),this.skipSpace(),this.skipIfStartsWith("?>"))return{type:cu.TokenType.PI,target:t,data:""};let r=this.takeUntilStartsWith("?>");return this.eof()&&this.throwError("Missing processing instruction end symbol `?>`"),this.seek(2),{type:cu.TokenType.PI,target:t,data:r}}text(){let t=this.takeUntil("<");return{type:cu.TokenType.Text,data:t}}comment(){let t=this.takeUntilStartsWith("-->");return this.eof()&&this.throwError("Missing comment end symbol `-->`"),this.seek(3),{type:cu.TokenType.Comment,data:t}}cdata(){let t=this.takeUntilStartsWith("]]>");return this.eof()&&this.throwError("Missing CDATA end symbol `]>`"),this.seek(3),{type:cu.TokenType.CDATA,data:t}}openTag(){this.skipSpace();let t=this.takeUntil2(">","/",!0);if(this.skipSpace(),this.skipIfStartsWith(">"))return{type:cu.TokenType.Element,name:t,attributes:[],selfClosing:!1};if(this.skipIfStartsWith("/>"))return{type:cu.TokenType.Element,name:t,attributes:[],selfClosing:!0};let r=[];for(;!this.eof();){if(this.skipSpace(),this.skipIfStartsWith(">"))return{type:cu.TokenType.Element,name:t,attributes:r,selfClosing:!1};if(this.skipIfStartsWith("/>"))return{type:cu.TokenType.Element,name:t,attributes:r,selfClosing:!0};let n=this.attribute();r.push(n)}this.throwError("Missing opening element tag end symbol `>`")}closeTag(){this.skipSpace();let t=this.takeUntil(">",!0);return this.skipSpace(),this.skipIfStartsWith(">")||this.throwError("Missing closing element tag end symbol `>`"),{type:cu.TokenType.ClosingTag,name:t}}attribute(){this.skipSpace();let t=this.takeUntil("=",!0);this.skipSpace(),this.skipIfStartsWith("=")||this.throwError("Missing equals sign before attribute value");let r=this.quotedString();return[t,r]}quotedString(){this.skipSpace();let t=this.take(1);e.isQuote(t)||this.throwError("Missing start quote character before quoted value");let r=this.takeUntil(t);return this.skipIfStartsWith(t)||this.throwError("Missing end quote character after quoted value"),r}eof(){return this._index>=this._length}skipIfStartsWith(t){let r=t.length;if(r===1)return this._str[this._index]===t?(this._index++,!0):!1;for(let n=0;nthis._length&&(this._index=this._length)}skipSpace(){for(;!this.eof()&&e.isSpace(this._str[this._index]);)this._index++}take(t){if(t===1)return this._str[this._index++];let r=this._index;return this.seek(t),this._str.slice(r,this._index)}takeUntil(t,r=!1){let n=this._index;for(;this._indexthis._index){a=n.index;break}throw this.err={line:s,col:this._index-i,index:this._index,str:this._str.substring(i,a)},new Error(t+` -Index: `+this.err.index+` -Ln: `+this.err.line+", Col: "+this.err.col+` -Input: `+this.err.str)}[Symbol.iterator](){return this._index=0,{next:function(){let t=this.nextToken();return t.type===cu.TokenType.EOF?{done:!0,value:null}:{done:!1,value:t}}.bind(this)}}};sQ.XMLStringLexer=MOe});var H9t=S(iQ=>{"use strict";Object.defineProperty(iQ,"__esModule",{value:!0});iQ.XMLParserImpl=void 0;var PSn=kOe(),m_=nQ(),BOe=fa(),pf=Dn(),LSn=xB(),UOe=class{parse(t){let r=new PSn.XMLStringLexer(t,{skipWhitespaceOnlyText:!0}),n=(0,pf.create_document)(),s=n,i=r.nextToken();for(;i.type!==m_.TokenType.EOF;){switch(i.type){case m_.TokenType.Declaration:let a=i;if(a.version!=="1.0")throw new Error("Invalid xml version: "+a.version);break;case m_.TokenType.DocType:let o=i;if(!(0,pf.xml_isPubidChar)(o.pubId))throw new Error("DocType public identifier does not match PubidChar construct.");if(!(0,pf.xml_isLegalChar)(o.sysId)||o.sysId.indexOf('"')!==-1&&o.sysId.indexOf("'")!==-1)throw new Error("DocType system identifier contains invalid characters.");s.appendChild(n.implementation.createDocumentType(o.name,o.pubId,o.sysId));break;case m_.TokenType.CDATA:let c=i;if(!(0,pf.xml_isLegalChar)(c.data)||c.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters.");s.appendChild(n.createCDATASection(c.data));break;case m_.TokenType.Comment:let u=i;if(!(0,pf.xml_isLegalChar)(u.data)||u.data.indexOf("--")!==-1||u.data.endsWith("-"))throw new Error("Comment data contains invalid characters.");s.appendChild(n.createComment(u.data));break;case m_.TokenType.PI:let l=i;if(l.target.indexOf(":")!==-1||/^xml$/i.test(l.target))throw new Error("Processing instruction target contains invalid characters.");if(!(0,pf.xml_isLegalChar)(l.data)||l.data.indexOf("?>")!==-1)throw new Error("Processing instruction data contains invalid characters.");s.appendChild(n.createProcessingInstruction(l.target,l.data));break;case m_.TokenType.Text:let d=i;if(!(0,pf.xml_isLegalChar)(d.data))throw new Error("Text data contains invalid characters.");s.appendChild(n.createTextNode(this._decodeText(d.data)));break;case m_.TokenType.Element:let f=i,[h,p]=(0,pf.namespace_extractQName)(f.name);if(p.indexOf(":")!==-1||!(0,pf.xml_isName)(p))throw new Error("Node local name contains invalid characters.");if(h==="xmlns")throw new Error("An element cannot have the 'xmlns' prefix.");let m=s.lookupNamespaceURI(h),_={};for(let[E,v]of f.attributes)if(E==="xmlns")m=v;else{let[b,I]=(0,pf.namespace_extractQName)(E);b==="xmlns"&&(I===h&&(m=v),_[I]=v)}let g=m!==null?n.createElementNS(m,f.name):n.createElement(f.name);s.appendChild(g);let y=new LSn.LocalNameSet;for(let[E,v]of f.attributes){let[b,I]=(0,pf.namespace_extractQName)(E),T=null;if(b==="xmlns"||b===null&&I==="xmlns"?T=BOe.namespace.XMLNS:(T=g.lookupNamespaceURI(b),T!==null&&g.isDefaultNamespace(T)?T=null:T===null&&b!==null&&(T=_[b]||null)),y.has(T,I))throw new Error("Element contains duplicate attributes.");if(y.set(T,I),T===BOe.namespace.XMLNS&&v===BOe.namespace.XMLNS)throw new Error("XMLNS namespace is reserved.");if(I.indexOf(":")!==-1||!(0,pf.xml_isName)(I))throw new Error("Attribute local name contains invalid characters.");if(b==="xmlns"&&v==="")throw new Error("Empty XML namespace is not allowed.");T!==null?g.setAttributeNS(T,E,this._decodeAttributeValue(v)):g.setAttribute(E,this._decodeAttributeValue(v))}f.selfClosing||(s=g);break;case m_.TokenType.ClosingTag:if(i.name!==s.nodeName)throw new Error("Closing tag name does not match opening tag name.");s._parent&&(s=s._parent);break}i=r.nextToken()}return n}_decodeText(t){return t==null?t:t.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}_decodeAttributeValue(t){return t==null?t:t.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}};iQ.XMLParserImpl=UOe});var V9t=S(aQ=>{"use strict";Object.defineProperty(aQ,"__esModule",{value:!0});aQ.DOMParserImpl=void 0;var MSn=Dn(),kSn=H9t(),FOe=class{parseFromString(t,r){if(r==="text/html")throw new Error("HTML parser not implemented.");try{let s=new kSn.XMLParserImpl().parse(t);return s._contentType=r,s}catch(n){let s="http://www.mozilla.org/newlayout/xml/parsererror.xml",i=(0,MSn.create_xmlDocument)(),a=i.createElementNS(s,"parsererror"),o=i.createElementNS(s,"error");return o.setAttribute("message",n.message),a.appendChild(o),i.appendChild(a),i}}};aQ.DOMParserImpl=FOe});var j9t=S(oQ=>{"use strict";Object.defineProperty(oQ,"__esModule",{value:!0});oQ.DOMParser=void 0;var BSn=V9t();Object.defineProperty(oQ,"DOMParser",{enumerable:!0,get:function(){return BSn.DOMParserImpl}})});var G9t=S(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});cQ.XMLSerializerImpl=void 0;var Ec=zn(),USn=xB(),FSn=zG(),K9t=Ra(),g_=fa(),bp=Dn(),$Oe=class e{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);serializeToString(t){return this._xmlSerialization(t,!1)}_xmlSerialization(t,r){if(t._nodeDocument===void 0||t._nodeDocument._hasNamespaces){let s=new FSn.NamespacePrefixMap;s.set("xml",g_.namespace.XML);let i={value:1};try{return this._serializeNodeNS(t,null,s,i,r)}catch{throw new K9t.InvalidStateError}}else try{return this._serializeNode(t,r)}catch{throw new K9t.InvalidStateError}}_serializeNodeNS(t,r,n,s,i){switch(t.nodeType){case Ec.NodeType.Element:return this._serializeElementNS(t,r,n,s,i);case Ec.NodeType.Document:return this._serializeDocumentNS(t,r,n,s,i);case Ec.NodeType.Comment:return this._serializeComment(t,i);case Ec.NodeType.Text:return this._serializeText(t,i);case Ec.NodeType.DocumentFragment:return this._serializeDocumentFragmentNS(t,r,n,s,i);case Ec.NodeType.DocumentType:return this._serializeDocumentType(t,i);case Ec.NodeType.ProcessingInstruction:return this._serializeProcessingInstruction(t,i);case Ec.NodeType.CData:return this._serializeCData(t,i);default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeNode(t,r){switch(t.nodeType){case Ec.NodeType.Element:return this._serializeElement(t,r);case Ec.NodeType.Document:return this._serializeDocument(t,r);case Ec.NodeType.Comment:return this._serializeComment(t,r);case Ec.NodeType.Text:return this._serializeText(t,r);case Ec.NodeType.DocumentFragment:return this._serializeDocumentFragment(t,r);case Ec.NodeType.DocumentType:return this._serializeDocumentType(t,r);case Ec.NodeType.ProcessingInstruction:return this._serializeProcessingInstruction(t,r);case Ec.NodeType.CData:return this._serializeCData(t,r);default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeElementNS(t,r,n,s,i){if(i&&(t.localName.indexOf(":")!==-1||!(0,bp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let a="<",o="",c=!1,u=!1,l=n.copy(),d={},f=this._recordNamespaceInformation(t,l,d),h=r,p=t.namespaceURI;if(h===p)f!==null&&(u=!0),p===g_.namespace.XML?o="xml:"+t.localName:o=t.localName,a+=o;else{let _=t.prefix,g=null;if((_!==null||p!==f)&&(g=l.get(_,p)),_==="xmlns"){if(i)throw new Error("An element cannot have the 'xmlns' prefix (well-formed required).");g=_}g!==null?(o=g+":"+t.localName,f!==null&&f!==g_.namespace.XML&&(h=f||null),a+=o):_!==null?(_ in d&&(_=this._generatePrefix(p,l,s)),l.set(_,p),o+=_+":"+t.localName,a+=o,a+=" xmlns:"+_+'="'+this._serializeAttributeValue(p,i)+'"',f!==null&&(h=f||null)):f===null||f!==null&&f!==p?(u=!0,o+=t.localName,h=p,a+=o,a+=' xmlns="'+this._serializeAttributeValue(p,i)+'"'):(o+=t.localName,h=p,a+=o)}a+=this._serializeAttributesNS(t,l,s,d,u,i);let m=p===g_.namespace.HTML;if(m&&t.childNodes.length===0&&e._VoidElementNames.has(t.localName)?(a+=" /",c=!0):!m&&t.childNodes.length===0&&(a+="/",c=!0),a+=">",c)return a;if(!(m&&t.localName==="template"))for(let _ of t._children||t.childNodes)a+=this._serializeNodeNS(_,h,l,s,i);return a+="",a}_serializeDocumentNS(t,r,n,s,i){if(i&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");let a="";for(let o of t._children||t.childNodes)a+=this._serializeNodeNS(o,r,n,s,i);return a}_serializeComment(t,r){if(r&&(!(0,bp.xml_isLegalChar)(t.data)||t.data.indexOf("--")!==-1||t.data.endsWith("-")))throw new Error("Comment data contains invalid characters (well-formed required).");return""}_serializeText(t,r){if(r&&!(0,bp.xml_isLegalChar)(t.data))throw new Error("Text data contains invalid characters (well-formed required).");let n="";for(let s=0;s"?n+=">":n+=i}return n}_serializeDocumentFragmentNS(t,r,n,s,i){let a="";for(let o of t._children||t.childNodes)a+=this._serializeNodeNS(o,r,n,s,i);return a}_serializeDocumentType(t,r){if(r&&!(0,bp.xml_isPubidChar)(t.publicId))throw new Error("DocType public identifier does not match PubidChar construct (well-formed required).");if(r&&(!(0,bp.xml_isLegalChar)(t.systemId)||t.systemId.indexOf('"')!==-1&&t.systemId.indexOf("'")!==-1))throw new Error("DocType system identifier contains invalid characters (well-formed required).");return t.publicId&&t.systemId?"':t.publicId?"':t.systemId?"':""}_serializeProcessingInstruction(t,r){if(r&&(t.target.indexOf(":")!==-1||/^xml$/i.test(t.target)))throw new Error("Processing instruction target contains invalid characters (well-formed required).");if(r&&(!(0,bp.xml_isLegalChar)(t.data)||t.data.indexOf("?>")!==-1))throw new Error("Processing instruction data contains invalid characters (well-formed required).");return""}_serializeCData(t,r){if(r&&t.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters (well-formed required).");return""}_serializeAttributesNS(t,r,n,s,i,a){let o="",c=a?new USn.LocalNameSet:void 0;for(let u of t.attributes){if(!i&&!a&&u.namespaceURI===null){o+=" "+u.localName+'="'+this._serializeAttributeValue(u.value,a)+'"';continue}if(a&&c&&c.has(u.namespaceURI,u.localName))throw new Error("Element contains duplicate attributes (well-formed required).");a&&c&&c.set(u.namespaceURI,u.localName);let l=u.namespaceURI,d=null;if(l!==null)if(d=r.get(u.prefix,l),l===g_.namespace.XMLNS){if(u.value===g_.namespace.XML||u.prefix===null&&i||u.prefix!==null&&(!(u.localName in s)||s[u.localName]!==u.value)&&r.has(u.localName,u.value))continue;if(a&&u.value===g_.namespace.XMLNS)throw new Error("XMLNS namespace is reserved (well-formed required).");if(a&&u.value==="")throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required).");u.prefix==="xmlns"&&(d="xmlns")}else d===null&&(u.prefix!==null&&(!r.hasPrefix(u.prefix)||r.has(u.prefix,l))?d=u.prefix:d=this._generatePrefix(l,r,n),o+=" xmlns:"+d+'="'+this._serializeAttributeValue(l,a)+'"');if(o+=" ",d!==null&&(o+=d+":"),a&&(u.localName.indexOf(":")!==-1||!(0,bp.xml_isName)(u.localName)||u.localName==="xmlns"&&l===null))throw new Error("Attribute local name contains invalid characters (well-formed required).");o+=u.localName+'="'+this._serializeAttributeValue(u.value,a)+'"'}return o}_recordNamespaceInformation(t,r,n){let s=null;for(let i of t.attributes){let a=i.namespaceURI,o=i.prefix;if(a===g_.namespace.XMLNS)if(o===null){s=i.value;continue}else{let c=i.localName,u=i.value;if(u===g_.namespace.XML||(u===""&&(u=null),r.has(c,u)))continue;r.set(c,u),n[c]=u||""}}return s}_generatePrefix(t,r,n){let s="ns"+n.value;return n.value++,r.set(s,t),s}_serializeAttributeValue(t,r){if(r&&t!==null&&!(0,bp.xml_isLegalChar)(t))throw new Error("Invalid characters in attribute value.");if(t===null)return"";let n="";for(let s=0;s"?n+=">":n+=i}return n}_serializeElement(t,r){if(r&&(t.localName.indexOf(":")!==-1||!(0,bp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let n=!1,s=t.localName,i="<"+s;if(i+=this._serializeAttributes(t,r),t._children.size===0&&(i+="/",n=!0),i+=">",n)return i;for(let a of t._children)i+=this._serializeNode(a,r);return i+="",i}_serializeDocument(t,r){if(r&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");let n="";for(let s of t._children)n+=this._serializeNode(s,r);return n}_serializeDocumentFragment(t,r){let n="";for(let s of t._children)n+=this._serializeNode(s,r);return n}_serializeAttributes(t,r){let n="",s=r?{}:void 0;for(let i of t.attributes){if(r&&s&&i.localName in s)throw new Error("Element contains duplicate attributes (well-formed required).");if(r&&s&&(s[i.localName]=!0),r&&(i.localName.indexOf(":")!==-1||!(0,bp.xml_isName)(i.localName)))throw new Error("Attribute local name contains invalid characters (well-formed required).");n+=" "+i.localName+'="'+this._serializeAttributeValue(i.value,r)+'"'}return n}};cQ.XMLSerializerImpl=$Oe});var z9t=S(uQ=>{"use strict";Object.defineProperty(uQ,"__esModule",{value:!0});uQ.XMLSerializer=void 0;var $Sn=G9t();Object.defineProperty(uQ,"XMLSerializer",{enumerable:!0,get:function(){return $Sn.XMLSerializerImpl}})});var Y9t=S(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});Ty.XMLSerializer=Ty.DOMParser=Ty.DOMImplementation=void 0;var qSn=tQ();qSn.dom.setFeatures(!0);var HSn=tQ();Object.defineProperty(Ty,"DOMImplementation",{enumerable:!0,get:function(){return HSn.DOMImplementation}});var VSn=j9t();Object.defineProperty(Ty,"DOMParser",{enumerable:!0,get:function(){return VSn.DOMParser}});var jSn=z9t();Object.defineProperty(Ty,"XMLSerializer",{enumerable:!0,get:function(){return jSn.XMLSerializer}})});var dQ=S(lQ=>{"use strict";Object.defineProperty(lQ,"__esModule",{value:!0});lQ.createDocument=zSn;lQ.sanitizeInput=YSn;var KSn=Y9t(),GSn=tQ(),Q9t=Wn();GSn.dom.setFeatures(!1);function zSn(){let t=new KSn.DOMImplementation().createDocument(null,"root",null);return t.documentElement&&t.removeChild(t.documentElement),t}function YSn(e,t){if(e==null)return e;if(t===void 0)return e+"";{let r="";e=e+"";for(let n=0;n=32&&s<=55295||s>=57344&&s<=65533)r+=e.charAt(n);else if(s>=55296&&s<=56319&&n=56320&&i<=57343?(s=(s-55296)*1024+i-56320+65536,r+=String.fromCodePoint(s),n++):r+=(0,Q9t.isString)(t)?t:t(e.charAt(n),n,e)}else r+=(0,Q9t.isString)(t)?t:t(e.charAt(n),n,e)}return r}}});var YB=S(fQ=>{"use strict";Object.defineProperty(fQ,"__esModule",{value:!0});fQ.BaseReader=void 0;var QSn=dQ(),qOe=class e{_builderOptions;static _entityTable={lt:"<",gt:">",amp:"&",quot:'"',apos:"'"};constructor(t){this._builderOptions=t,t.parser&&Object.assign(this,t.parser)}_docType(t,r,n,s){return t.dtd({name:r,pubID:n,sysID:s})}_comment(t,r){return t.com(r)}_text(t,r){return t.txt(r)}_instruction(t,r,n){return t.ins(r,n)}_cdata(t,r){return t.dat(r)}_element(t,r,n){return r===void 0?t.ele(n):t.ele(r,n)}_attribute(t,r,n,s){return r===void 0?t.att(n,s):t.att(r,n,s)}_sanitize(t){return(0,QSn.sanitizeInput)(t,this._builderOptions.invalidCharReplacement)}_decodeText(t){return t==null?t:t.replace(/&(quot|amp|apos|lt|gt);/g,(r,n)=>e._entityTable[n]).replace(/&#(?:x([a-fA-F0-9]+)|([0-9]+));/g,(r,n,s)=>String.fromCodePoint(parseInt(n||s,n?16:10)))}_decodeAttributeValue(t){return this._decodeText(t)}parse(t,r){return this._parse(t,r)}docType(t,r,n,s){return this._docType(t,r,n,s)}comment(t,r){return this._comment(t,r)}text(t,r){return this._text(t,r)}instruction(t,r,n){return this._instruction(t,r,n)}cdata(t,r){return this._cdata(t,r)}element(t,r,n){return this._element(t,r,n)}attribute(t,r,n,s){return this._attribute(t,r,n,s)}sanitize(t){return this._sanitize(t)}};fQ.BaseReader=qOe});var W9t=S(hQ=>{"use strict";Object.defineProperty(hQ,"__esModule",{value:!0});hQ.XMLReader=void 0;var WSn=kOe(),__=nQ(),XSn=zn(),JSn=fa(),HOe=Dn(),ZSn=YB(),VOe=class extends ZSn.BaseReader{_parse(t,r){let n=new WSn.XMLStringLexer(r,{skipWhitespaceOnlyText:this._builderOptions.skipWhitespaceOnlyText}),s=t,i=t,a=n.nextToken();for(;a.type!==__.TokenType.EOF;){switch(a.type){case __.TokenType.Declaration:let o=a,c=this.sanitize(o.version);if(c!=="1.0")throw new Error("Invalid xml version: "+c);let u={version:c};o.encoding&&(u.encoding=this.sanitize(o.encoding)),o.standalone&&(u.standalone=this.sanitize(o.standalone)==="yes"),i.set(u);break;case __.TokenType.DocType:let l=a;i=this.docType(i,this.sanitize(l.name),this.sanitize(l.pubId),this.sanitize(l.sysId))||i;break;case __.TokenType.CDATA:let d=a;i=this.cdata(i,this.sanitize(d.data))||i;break;case __.TokenType.Comment:let f=a;i=this.comment(i,this.sanitize(f.data))||i;break;case __.TokenType.PI:let h=a;i=this.instruction(i,this.sanitize(h.target),this.sanitize(h.data))||i;break;case __.TokenType.Text:if(i.node.nodeType===XSn.NodeType.Document)break;let p=a;i=this.text(i,this._decodeText(this.sanitize(p.data)))||i;break;case __.TokenType.Element:let m=a,_=this.sanitize(m.name),[g]=(0,HOe.namespace_extractQName)(_),y=i.node.lookupNamespaceURI(g),A={};for(let[v,b]of m.attributes)if(v=this.sanitize(v),b=this.sanitize(b),v==="xmlns")y=b;else{let[I,T]=(0,HOe.namespace_extractQName)(v);I==="xmlns"&&(T===g&&(y=b),A[T]=b)}let E=y!==null?this.element(i,y,_):this.element(i,void 0,_);if(E===void 0)break;i.node===t.node&&(s=E);for(let[v,b]of m.attributes){v=this.sanitize(v),b=this.sanitize(b);let[I,T]=(0,HOe.namespace_extractQName)(v),x=null;I==="xmlns"||I===null&&T==="xmlns"?x=JSn.namespace.XMLNS:(x=E.node.lookupNamespaceURI(I),x!==null&&E.node.isDefaultNamespace(x)?x=null:x===null&&I!==null&&(x=A[I]||null)),x!==null?this.attribute(E,x,v,this._decodeAttributeValue(b)):this.attribute(E,void 0,v,this._decodeAttributeValue(b))}m.selfClosing||(i=E);break;case __.TokenType.ClosingTag:i.node.parentNode&&(i=i.up());break}a=n.nextToken()}return s}};hQ.XMLReader=VOe});var mQ=S(pQ=>{"use strict";Object.defineProperty(pQ,"__esModule",{value:!0});pQ.ObjectReader=void 0;var sn=Wn(),eTn=YB(),jOe=class extends eTn.BaseReader{_parse(t,r){let n=this._builderOptions,s=null;return(0,sn.isFunction)(r)?s=this.parse(t,r.call(this)):(0,sn.isArray)(r)||(0,sn.isSet)(r)?(0,sn.forEachArray)(r,i=>s=this.parse(t,i),this):(0,sn.isMap)(r)||(0,sn.isObject)(r)?(0,sn.forEachObject)(r,(i,a)=>{if((0,sn.isFunction)(a)&&(a=a.call(this)),!n.ignoreConverters&&i.indexOf(n.convert.att)===0)if(i===n.convert.att){if((0,sn.isArray)(a)||(0,sn.isSet)(a))throw new Error("Invalid attribute: "+a.toString()+". "+t._debugInfo());(0,sn.forEachObject)(a,(o,c)=>{s=this.attribute(t,void 0,this.sanitize(o),this._decodeAttributeValue(this.sanitize(c)))||s})}else s=this.attribute(t,void 0,this.sanitize(i.substring(n.convert.att.length)),this._decodeAttributeValue(this.sanitize(a?.toString())))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.text)===0)(0,sn.isMap)(a)||(0,sn.isObject)(a)?s=this.parse(t,a):s=this.text(t,this._decodeText(this.sanitize(a?.toString())))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.cdata)===0)(0,sn.isArray)(a)||(0,sn.isSet)(a)?(0,sn.forEachArray)(a,o=>s=this.cdata(t,this.sanitize(o))||s,this):s=this.cdata(t,this.sanitize(a?.toString()))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.comment)===0)(0,sn.isArray)(a)||(0,sn.isSet)(a)?(0,sn.forEachArray)(a,o=>s=this.comment(t,this.sanitize(o))||s,this):s=this.comment(t,this.sanitize(a?.toString()))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.ins)===0)if((0,sn.isString)(a)){let o=a.indexOf(" "),c=o===-1?a:a.substr(0,o),u=o===-1?"":a.substr(o+1);s=this.instruction(t,this.sanitize(c),this.sanitize(u))||s}else(0,sn.isArray)(a)||(0,sn.isSet)(a)?(0,sn.forEachArray)(a,o=>{let c=o.indexOf(" "),u=c===-1?o:o.substr(0,c),l=c===-1?"":o.substr(c+1);s=this.instruction(t,this.sanitize(u),this.sanitize(l))||s},this):(0,sn.forEachObject)(a,(o,c)=>s=this.instruction(t,this.sanitize(o),this.sanitize(c))||s,this);else if(!(((0,sn.isArray)(a)||(0,sn.isSet)(a))&&(0,sn.isEmpty)(a))){if(((0,sn.isMap)(a)||(0,sn.isObject)(a))&&(0,sn.isEmpty)(a))s=this.element(t,void 0,this.sanitize(i))||s;else if(!(!n.keepNullNodes&&a==null))if((0,sn.isArray)(a)||(0,sn.isSet)(a))(0,sn.forEachArray)(a,o=>{let c={};c[i]=o,s=this.parse(t,c)},this);else if((0,sn.isMap)(a)||(0,sn.isObject)(a)){let o=this.element(t,void 0,this.sanitize(i));o&&(s=o,this.parse(o,a))}else if(a!=null&&(!(0,sn.isString)(a)||a!=="")){let o=this.element(t,void 0,this.sanitize(i));o&&(s=o,this.text(o,this._decodeText(this.sanitize(a?.toString()))))}else s=this.element(t,void 0,this.sanitize(i))||s}},this):!n.keepNullNodes&&r==null||(s=this.text(t,this._decodeText(this.sanitize(r?.toString())))||s),s||t}};pQ.ObjectReader=jOe});var X9t=S(gQ=>{"use strict";Object.defineProperty(gQ,"__esModule",{value:!0});gQ.JSONReader=void 0;var tTn=mQ(),rTn=YB(),KOe=class extends rTn.BaseReader{_parse(t,r){return new tTn.ObjectReader(this._builderOptions).parse(t,JSON.parse(r))}};gQ.JSONReader=KOe});var bw=S((dxs,Cb)=>{"use strict";function J9t(e){return typeof e>"u"||e===null}function nTn(e){return typeof e=="object"&&e!==null}function sTn(e){return Array.isArray(e)?e:J9t(e)?[]:[e]}function iTn(e,t){var r,n,s,i;if(t)for(i=Object.keys(t),r=0,n=i.length;r{"use strict";function Z9t(e,t){var r="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(r+='in "'+e.mark.name+'" '),r+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(r+=` - -`+e.mark.snippet),n+" "+r):n}function QB(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=Z9t(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}QB.prototype=Object.create(Error.prototype);QB.prototype.constructor=QB;QB.prototype.toString=function(t){return this.name+": "+Z9t(this,t)};eqt.exports=QB});var rqt=S((hxs,tqt)=>{"use strict";var WB=bw();function GOe(e,t,r,n,s){var i="",a="",o=Math.floor(s/2)-1;return n-t>o&&(i=" ... ",t=n-o+i.length),r-n>o&&(a=" ...",r=n+o-a.length),{str:i+e.slice(t,r).replace(/\t/g,"\u2192")+a,pos:n-t+i.length}}function zOe(e,t){return WB.repeat(" ",t-e.length)+e}function cTn(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],s=[],i,a=-1;i=r.exec(e.buffer);)s.push(i.index),n.push(i.index+i[0].length),e.position<=i.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var o="",c,u,l=Math.min(e.line+t.linesAfter,s.length).toString().length,d=t.maxLength-(t.indent+l+3);for(c=1;c<=t.linesBefore&&!(a-c<0);c++)u=GOe(e.buffer,n[a-c],s[a-c],e.position-(n[a]-n[a-c]),d),o=WB.repeat(" ",t.indent)+zOe((e.line-c+1).toString(),l)+" | "+u.str+` -`+o;for(u=GOe(e.buffer,n[a],s[a],e.position,d),o+=WB.repeat(" ",t.indent)+zOe((e.line+1).toString(),l)+" | "+u.str+` -`,o+=WB.repeat("-",t.indent+l+3+u.pos)+`^ -`,c=1;c<=t.linesAfter&&!(a+c>=s.length);c++)u=GOe(e.buffer,n[a+c],s[a+c],e.position-(n[a]-n[a+c]),d),o+=WB.repeat(" ",t.indent)+zOe((e.line+c+1).toString(),l)+" | "+u.str+` -`;return o.replace(/\n$/,"")}tqt.exports=cTn});var yc=S((pxs,sqt)=>{"use strict";var nqt=Iw(),uTn=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],lTn=["scalar","sequence","mapping"];function dTn(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function fTn(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(uTn.indexOf(r)===-1)throw new nqt('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=dTn(t.styleAliases||null),lTn.indexOf(this.kind)===-1)throw new nqt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}sqt.exports=fTn});var WOe=S((mxs,aqt)=>{"use strict";var XB=Iw(),YOe=yc();function iqt(e,t){var r=[];return e[t].forEach(function(n){var s=r.length;r.forEach(function(i,a){i.tag===n.tag&&i.kind===n.kind&&i.multi===n.multi&&(s=a)}),r[s]=n}),r}function hTn(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,r;function n(s){s.multi?(e.multi[s.kind].push(s),e.multi.fallback.push(s)):e[s.kind][s.tag]=e.fallback[s.tag]=s}for(t=0,r=arguments.length;t{"use strict";var pTn=yc();oqt.exports=new pTn("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var JOe=S((_xs,cqt)=>{"use strict";var mTn=yc();cqt.exports=new mTn("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var ZOe=S((Axs,uqt)=>{"use strict";var gTn=yc();uqt.exports=new gTn("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var e2e=S((Exs,lqt)=>{"use strict";var _Tn=WOe();lqt.exports=new _Tn({explicit:[XOe(),JOe(),ZOe()]})});var t2e=S((yxs,dqt)=>{"use strict";var ATn=yc();function ETn(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function yTn(){return null}function vTn(e){return e===null}dqt.exports=new ATn("tag:yaml.org,2002:null",{kind:"scalar",resolve:ETn,construct:yTn,predicate:vTn,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"})});var r2e=S((vxs,fqt)=>{"use strict";var STn=yc();function TTn(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function bTn(e){return e==="true"||e==="True"||e==="TRUE"}function ITn(e){return Object.prototype.toString.call(e)==="[object Boolean]"}fqt.exports=new STn("tag:yaml.org,2002:bool",{kind:"scalar",resolve:TTn,construct:bTn,predicate:ITn,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var n2e=S((Sxs,hqt)=>{"use strict";var RTn=bw(),CTn=yc();function xTn(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function wTn(e){return 48<=e&&e<=55}function NTn(e){return 48<=e&&e<=57}function OTn(e){if(e===null)return!1;var t=e.length,r=0,n=!1,s;if(!t)return!1;if(s=e[r],(s==="-"||s==="+")&&(s=e[++r]),s==="0"){if(r+1===t)return!0;if(s=e[++r],s==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var s2e=S((Txs,mqt)=>{"use strict";var pqt=bw(),LTn=yc(),MTn=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function kTn(e){return!(e===null||!MTn.test(e)||e[e.length-1]==="_")}function BTn(e){var t,r;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:r*parseFloat(t,10)}var UTn=/^[-+]?[0-9]+e/;function FTn(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(pqt.isNegativeZero(e))return"-0.0";return r=e.toString(10),UTn.test(r)?r.replace("e",".e"):r}function $Tn(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||pqt.isNegativeZero(e))}mqt.exports=new LTn("tag:yaml.org,2002:float",{kind:"scalar",resolve:kTn,construct:BTn,predicate:$Tn,represent:FTn,defaultStyle:"lowercase"})});var i2e=S((bxs,gqt)=>{"use strict";gqt.exports=e2e().extend({implicit:[t2e(),r2e(),n2e(),s2e()]})});var a2e=S((Ixs,_qt)=>{"use strict";_qt.exports=i2e()});var o2e=S((Rxs,yqt)=>{"use strict";var qTn=yc(),Aqt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Eqt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function HTn(e){return e===null?!1:Aqt.exec(e)!==null||Eqt.exec(e)!==null}function VTn(e){var t,r,n,s,i,a,o,c=0,u=null,l,d,f;if(t=Aqt.exec(e),t===null&&(t=Eqt.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,s=+t[3],!t[4])return new Date(Date.UTC(r,n,s));if(i=+t[4],a=+t[5],o=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+="0";c=+c}return t[9]&&(l=+t[10],d=+(t[11]||0),u=(l*60+d)*6e4,t[9]==="-"&&(u=-u)),f=new Date(Date.UTC(r,n,s,i,a,o,c)),u&&f.setTime(f.getTime()-u),f}function jTn(e){return e.toISOString()}yqt.exports=new qTn("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:HTn,construct:VTn,instanceOf:Date,represent:jTn})});var c2e=S((Cxs,vqt)=>{"use strict";var KTn=yc();function GTn(e){return e==="<<"||e===null}vqt.exports=new KTn("tag:yaml.org,2002:merge",{kind:"scalar",resolve:GTn})});var l2e=S((xxs,Sqt)=>{"use strict";var zTn=yc(),u2e=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function YTn(e){if(e===null)return!1;var t,r,n=0,s=e.length,i=u2e;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function QTn(e){var t,r,n=e.replace(/[\r\n=]/g,""),s=n.length,i=u2e,a=0,o=[];for(t=0;t>16&255),o.push(a>>8&255),o.push(a&255)),a=a<<6|i.indexOf(n.charAt(t));return r=s%4*6,r===0?(o.push(a>>16&255),o.push(a>>8&255),o.push(a&255)):r===18?(o.push(a>>10&255),o.push(a>>2&255)):r===12&&o.push(a>>4&255),new Uint8Array(o)}function WTn(e){var t="",r=0,n,s,i=e.length,a=u2e;for(n=0;n>18&63],t+=a[r>>12&63],t+=a[r>>6&63],t+=a[r&63]),r=(r<<8)+e[n];return s=i%3,s===0?(t+=a[r>>18&63],t+=a[r>>12&63],t+=a[r>>6&63],t+=a[r&63]):s===2?(t+=a[r>>10&63],t+=a[r>>4&63],t+=a[r<<2&63],t+=a[64]):s===1&&(t+=a[r>>2&63],t+=a[r<<4&63],t+=a[64],t+=a[64]),t}function XTn(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}Sqt.exports=new zTn("tag:yaml.org,2002:binary",{kind:"scalar",resolve:YTn,construct:QTn,predicate:XTn,represent:WTn})});var d2e=S((wxs,Tqt)=>{"use strict";var JTn=yc(),ZTn=Object.prototype.hasOwnProperty,ebn=Object.prototype.toString;function tbn(e){if(e===null)return!0;var t=[],r,n,s,i,a,o=e;for(r=0,n=o.length;r{"use strict";var nbn=yc(),sbn=Object.prototype.toString;function ibn(e){if(e===null)return!0;var t,r,n,s,i,a=e;for(i=new Array(a.length),t=0,r=a.length;t{"use strict";var obn=yc(),cbn=Object.prototype.hasOwnProperty;function ubn(e){if(e===null)return!0;var t,r=e;for(t in r)if(cbn.call(r,t)&&r[t]!==null)return!1;return!0}function lbn(e){return e!==null?e:{}}Iqt.exports=new obn("tag:yaml.org,2002:set",{kind:"mapping",resolve:ubn,construct:lbn})});var _Q=S((Dxs,Rqt)=>{"use strict";Rqt.exports=a2e().extend({implicit:[o2e(),c2e()],explicit:[l2e(),d2e(),f2e(),h2e()]})});var Vqt=S((Pxs,_2e)=>{"use strict";var wb=bw(),Pqt=Iw(),dbn=rqt(),fbn=_Q(),Iy=Object.prototype.hasOwnProperty,AQ=1,Lqt=2,Mqt=3,EQ=4,p2e=1,hbn=2,Cqt=3,pbn=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,mbn=/[\x85\u2028\u2029]/,gbn=/[,\[\]\{\}]/,kqt=/^(?:!|!!|![a-z\-]+!)$/i,Bqt=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function xqt(e){return Object.prototype.toString.call(e)}function Ip(e){return e===10||e===13}function Nb(e){return e===9||e===32}function ul(e){return e===9||e===32||e===10||e===13}function Rw(e){return e===44||e===91||e===93||e===123||e===125}function _bn(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function Abn(e){return e===120?2:e===117?4:e===85?8:0}function Ebn(e){return 48<=e&&e<=57?e-48:-1}function wqt(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` -`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function ybn(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function Uqt(e,t,r){t==="__proto__"?Object.defineProperty(e,t,{configurable:!0,enumerable:!0,writable:!0,value:r}):e[t]=r}var Fqt=new Array(256),$qt=new Array(256);for(xb=0;xb<256;xb++)Fqt[xb]=wqt(xb)?1:0,$qt[xb]=wqt(xb);var xb;function vbn(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||fbn,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function qqt(e,t){var r={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return r.snippet=dbn(r),new Pqt(t,r)}function Pt(e,t){throw qqt(e,t)}function yQ(e,t){e.onWarning&&e.onWarning.call(null,qqt(e,t))}var Nqt={YAML:function(t,r,n){var s,i,a;t.version!==null&&Pt(t,"duplication of %YAML directive"),n.length!==1&&Pt(t,"YAML directive accepts exactly one argument"),s=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),s===null&&Pt(t,"ill-formed argument of the YAML directive"),i=parseInt(s[1],10),a=parseInt(s[2],10),i!==1&&Pt(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=a<2,a!==1&&a!==2&&yQ(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var s,i;n.length!==2&&Pt(t,"TAG directive accepts exactly two arguments"),s=n[0],i=n[1],kqt.test(s)||Pt(t,"ill-formed tag handle (first argument) of the TAG directive"),Iy.call(t.tagMap,s)&&Pt(t,'there is a previously declared suffix for "'+s+'" tag handle'),Bqt.test(i)||Pt(t,"ill-formed tag prefix (second argument) of the TAG directive");try{i=decodeURIComponent(i)}catch{Pt(t,"tag prefix is malformed: "+i)}t.tagMap[s]=i}};function by(e,t,r,n){var s,i,a,o;if(t1&&(e.result+=wb.repeat(` -`,t-1))}function Sbn(e,t,r){var n,s,i,a,o,c,u,l,d=e.kind,f=e.result,h;if(h=e.input.charCodeAt(e.position),ul(h)||Rw(h)||h===35||h===38||h===42||h===33||h===124||h===62||h===39||h===34||h===37||h===64||h===96||(h===63||h===45)&&(s=e.input.charCodeAt(e.position+1),ul(s)||r&&Rw(s)))return!1;for(e.kind="scalar",e.result="",i=a=e.position,o=!1;h!==0;){if(h===58){if(s=e.input.charCodeAt(e.position+1),ul(s)||r&&Rw(s))break}else if(h===35){if(n=e.input.charCodeAt(e.position-1),ul(n))break}else{if(e.position===e.lineStart&&vQ(e)||r&&Rw(h))break;if(Ip(h))if(c=e.line,u=e.lineStart,l=e.lineIndent,pa(e,!1,-1),e.lineIndent>=t){o=!0,h=e.input.charCodeAt(e.position);continue}else{e.position=a,e.line=c,e.lineStart=u,e.lineIndent=l;break}}o&&(by(e,i,a,!1),g2e(e,e.line-c),i=a=e.position,o=!1),Nb(h)||(a=e.position+1),h=e.input.charCodeAt(++e.position)}return by(e,i,a,!1),e.result?!0:(e.kind=d,e.result=f,!1)}function Tbn(e,t){var r,n,s;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=s=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(by(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,s=e.position;else return!0;else Ip(r)?(by(e,n,s,!0),g2e(e,pa(e,!1,t)),n=s=e.position):e.position===e.lineStart&&vQ(e)?Pt(e,"unexpected end of the document within a single quoted scalar"):(e.position++,s=e.position);Pt(e,"unexpected end of the stream within a single quoted scalar")}function bbn(e,t){var r,n,s,i,a,o;if(o=e.input.charCodeAt(e.position),o!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(o=e.input.charCodeAt(e.position))!==0;){if(o===34)return by(e,r,e.position,!0),e.position++,!0;if(o===92){if(by(e,r,e.position,!0),o=e.input.charCodeAt(++e.position),Ip(o))pa(e,!1,t);else if(o<256&&Fqt[o])e.result+=$qt[o],e.position++;else if((a=Abn(o))>0){for(s=a,i=0;s>0;s--)o=e.input.charCodeAt(++e.position),(a=_bn(o))>=0?i=(i<<4)+a:Pt(e,"expected hexadecimal character");e.result+=ybn(i),e.position++}else Pt(e,"unknown escape sequence");r=n=e.position}else Ip(o)?(by(e,r,n,!0),g2e(e,pa(e,!1,t)),r=n=e.position):e.position===e.lineStart&&vQ(e)?Pt(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}Pt(e,"unexpected end of the stream within a double quoted scalar")}function Ibn(e,t){var r=!0,n,s,i,a=e.tag,o,c=e.anchor,u,l,d,f,h,p=Object.create(null),m,_,g,y;if(y=e.input.charCodeAt(e.position),y===91)l=93,h=!1,o=[];else if(y===123)l=125,h=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),y=e.input.charCodeAt(++e.position);y!==0;){if(pa(e,!0,t),y=e.input.charCodeAt(e.position),y===l)return e.position++,e.tag=a,e.anchor=c,e.kind=h?"mapping":"sequence",e.result=o,!0;r?y===44&&Pt(e,"expected the node content, but found ','"):Pt(e,"missed comma between flow collection entries"),_=m=g=null,d=f=!1,y===63&&(u=e.input.charCodeAt(e.position+1),ul(u)&&(d=f=!0,e.position++,pa(e,!0,t))),n=e.line,s=e.lineStart,i=e.position,xw(e,t,AQ,!1,!0),_=e.tag,m=e.result,pa(e,!0,t),y=e.input.charCodeAt(e.position),(f||e.line===n)&&y===58&&(d=!0,y=e.input.charCodeAt(++e.position),pa(e,!0,t),xw(e,t,AQ,!1,!0),g=e.result),h?Cw(e,o,p,_,m,g,n,s,i):d?o.push(Cw(e,null,p,_,m,g,n,s,i)):o.push(m),pa(e,!0,t),y=e.input.charCodeAt(e.position),y===44?(r=!0,y=e.input.charCodeAt(++e.position)):r=!1}Pt(e,"unexpected end of the stream within a flow collection")}function Rbn(e,t){var r,n,s=p2e,i=!1,a=!1,o=t,c=0,u=!1,l,d;if(d=e.input.charCodeAt(e.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)p2e===s?s=d===43?Cqt:hbn:Pt(e,"repeat of a chomping mode identifier");else if((l=Ebn(d))>=0)l===0?Pt(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?Pt(e,"repeat of an indentation width identifier"):(o=t+l-1,a=!0);else break;if(Nb(d)){do d=e.input.charCodeAt(++e.position);while(Nb(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!Ip(d)&&d!==0)}for(;d!==0;){for(m2e(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!a||e.lineIndento&&(o=e.lineIndent),Ip(d)){c++;continue}if(e.lineIndentt)&&c!==0)Pt(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(_&&(a=e.line,o=e.lineStart,c=e.position),xw(e,t,EQ,!0,s)&&(_?p=e.result:m=e.result),_||(Cw(e,d,f,h,p,m,a,o,c),h=p=m=null),pa(e,!0,-1),y=e.input.charCodeAt(e.position)),(e.line===i||e.lineIndent>t)&&y!==0)Pt(e,"bad indentation of a mapping entry");else if(e.lineIndentt?c=1:e.lineIndent===t?c=0:e.lineIndentt?c=1:e.lineIndent===t?c=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),d=0,f=e.implicitTypes.length;d"),e.result!==null&&p.kind!==e.kind&&Pt(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+p.kind+'", not "'+e.kind+'"'),p.resolve(e.result,e.tag)?(e.result=p.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Pt(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||l}function Obn(e){var t=e.position,r,n,s,i=!1,a;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(a=e.input.charCodeAt(e.position))!==0&&(pa(e,!0,-1),a=e.input.charCodeAt(e.position),!(e.lineIndent>0||a!==37));){for(i=!0,a=e.input.charCodeAt(++e.position),r=e.position;a!==0&&!ul(a);)a=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),s=[],n.length<1&&Pt(e,"directive name must not be less than one character in length");a!==0;){for(;Nb(a);)a=e.input.charCodeAt(++e.position);if(a===35){do a=e.input.charCodeAt(++e.position);while(a!==0&&!Ip(a));break}if(Ip(a))break;for(r=e.position;a!==0&&!ul(a);)a=e.input.charCodeAt(++e.position);s.push(e.input.slice(r,e.position))}a!==0&&m2e(e),Iy.call(Nqt,n)?Nqt[n](e,n,s):yQ(e,'unknown document directive "'+n+'"')}if(pa(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,pa(e,!0,-1)):i&&Pt(e,"directives end mark is expected"),xw(e,e.lineIndent-1,EQ,!1,!0),pa(e,!0,-1),e.checkLineBreaks&&mbn.test(e.input.slice(t,e.position))&&yQ(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&vQ(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,pa(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=Hqt(e,r);if(typeof t!="function")return n;for(var s=0,i=n.length;s{"use strict";var bQ=bw(),r3=Iw(),Lbn=_Q(),Jqt=Object.prototype.toString,Zqt=Object.prototype.hasOwnProperty,S2e=65279,Mbn=9,ZB=10,kbn=13,Bbn=32,Ubn=33,Fbn=34,A2e=35,$bn=37,qbn=38,Hbn=39,Vbn=42,eHt=44,jbn=45,SQ=58,Kbn=61,Gbn=62,zbn=63,Ybn=64,tHt=91,rHt=93,Qbn=96,nHt=123,Wbn=124,sHt=125,vc={};vc[0]="\\0";vc[7]="\\a";vc[8]="\\b";vc[9]="\\t";vc[10]="\\n";vc[11]="\\v";vc[12]="\\f";vc[13]="\\r";vc[27]="\\e";vc[34]='\\"';vc[92]="\\\\";vc[133]="\\N";vc[160]="\\_";vc[8232]="\\L";vc[8233]="\\P";var Xbn=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Jbn=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Zbn(e,t){var r,n,s,i,a,o,c;if(t===null)return{};for(r={},n=Object.keys(t),s=0,i=n.length;s=55296&&r<=56319&&t+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function iHt(e){var t=/^\n* /;return t.test(e)}var aHt=1,y2e=2,oHt=3,cHt=4,ww=5;function a1n(e,t,r,n,s,i,a,o){var c,u=0,l=null,d=!1,f=!1,h=n!==-1,p=-1,m=s1n(JB(e,0))&&i1n(JB(e,e.length-1));if(t||a)for(c=0;c=65536?c+=2:c++){if(u=JB(e,c),!t3(u))return ww;m=m&&Gqt(u,l,o),l=u}else{for(c=0;c=65536?c+=2:c++){if(u=JB(e,c),u===ZB)d=!0,h&&(f=f||c-p-1>n&&e[p+1]!==" ",p=c);else if(!t3(u))return ww;m=m&&Gqt(u,l,o),l=u}f=f||h&&c-p-1>n&&e[p+1]!==" "}return!d&&!f?m&&!a&&!s(e)?aHt:i===e3?ww:y2e:r>9&&iHt(e)?ww:a?i===e3?ww:y2e:f?cHt:oHt}function o1n(e,t,r,n,s){e.dump=function(){if(t.length===0)return e.quotingType===e3?'""':"''";if(!e.noCompatMode&&(Xbn.indexOf(t)!==-1||Jbn.test(t)))return e.quotingType===e3?'"'+t+'"':"'"+t+"'";var i=e.indent*Math.max(1,r),a=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-i),o=n||e.flowLevel>-1&&r>=e.flowLevel;function c(u){return n1n(e,u)}switch(a1n(t,o,e.indent,a,c,e.quotingType,e.forceQuotes&&!n,s)){case aHt:return t;case y2e:return"'"+t.replace(/'/g,"''")+"'";case oHt:return"|"+zqt(t,e.indent)+Yqt(jqt(t,i));case cHt:return">"+zqt(t,e.indent)+Yqt(jqt(c1n(t,a),i));case ww:return'"'+u1n(t,a)+'"';default:throw new r3("impossible error: invalid scalar style")}}()}function zqt(e,t){var r=iHt(e)?String(t):"",n=e[e.length-1]===` -`,s=n&&(e[e.length-2]===` -`||e===` -`),i=s?"+":n?"":"-";return r+i+` -`}function Yqt(e){return e[e.length-1]===` -`?e.slice(0,-1):e}function c1n(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var u=e.indexOf(` -`);return u=u!==-1?u:e.length,r.lastIndex=u,Qqt(e.slice(0,u),t)}(),s=e[0]===` -`||e[0]===" ",i,a;a=r.exec(e);){var o=a[1],c=a[2];i=c[0]===" ",n+=o+(!s&&!i&&c!==""?` -`:"")+Qqt(c,t),s=i}return n}function Qqt(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,s=0,i,a=0,o=0,c="";n=r.exec(e);)o=n.index,o-s>t&&(i=a>s?a:o,c+=` -`+e.slice(s,i),s=i+1),a=o;return c+=` -`,e.length-s>t&&a>s?c+=e.slice(s,a)+` -`+e.slice(a+1):c+=e.slice(s),c.slice(1)}function u1n(e){for(var t="",r=0,n,s=0;s=65536?s+=2:s++)r=JB(e,s),n=vc[r],!n&&t3(r)?(t+=e[s],r>=65536&&(t+=e[s+1])):t+=n||e1n(r);return t}function l1n(e,t,r){var n="",s=e.tag,i,a,o;for(i=0,a=r.length;i"u"&&A_(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=s,e.dump="["+n+"]"}function Wqt(e,t,r,n){var s="",i=e.tag,a,o,c;for(a=0,o=r.length;a"u"&&A_(e,t+1,null,!0,!0,!1,!0))&&((!n||s!=="")&&(s+=E2e(e,t)),e.dump&&ZB===e.dump.charCodeAt(0)?s+="-":s+="- ",s+=e.dump);e.tag=i,e.dump=s||"[]"}function d1n(e,t,r){var n="",s=e.tag,i=Object.keys(r),a,o,c,u,l;for(a=0,o=i.length;a1024&&(l+="? "),l+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),A_(e,t,u,!1,!1)&&(l+=e.dump,n+=l));e.tag=s,e.dump="{"+n+"}"}function f1n(e,t,r,n){var s="",i=e.tag,a=Object.keys(r),o,c,u,l,d,f;if(e.sortKeys===!0)a.sort();else if(typeof e.sortKeys=="function")a.sort(e.sortKeys);else if(e.sortKeys)throw new r3("sortKeys must be a boolean or a function");for(o=0,c=a.length;o1024,d&&(e.dump&&ZB===e.dump.charCodeAt(0)?f+="?":f+="? "),f+=e.dump,d&&(f+=E2e(e,t)),A_(e,t+1,l,!0,d)&&(e.dump&&ZB===e.dump.charCodeAt(0)?f+=":":f+=": ",f+=e.dump,s+=f));e.tag=i,e.dump=s||"{}"}function Xqt(e,t,r){var n,s,i,a,o,c;for(s=r?e.explicitTypes:e.implicitTypes,i=0,a=s.length;i tag resolver accepts not "'+c+'" style');e.dump=n}return!0}return!1}function A_(e,t,r,n,s,i,a){e.tag=null,e.dump=r,Xqt(e,r,!1)||Xqt(e,r,!0);var o=Jqt.call(e.dump),c=n,u;n&&(n=e.flowLevel<0||e.flowLevel>t);var l=o==="[object Object]"||o==="[object Array]",d,f;if(l&&(d=e.duplicates.indexOf(r),f=d!==-1),(e.tag!==null&&e.tag!=="?"||f||e.indent!==2&&t>0)&&(s=!1),f&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(l&&f&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),o==="[object Object]")n&&Object.keys(e.dump).length!==0?(f1n(e,t,e.dump,s),f&&(e.dump="&ref_"+d+e.dump)):(d1n(e,t,e.dump),f&&(e.dump="&ref_"+d+" "+e.dump));else if(o==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!a&&t>0?Wqt(e,t-1,e.dump,s):Wqt(e,t,e.dump,s),f&&(e.dump="&ref_"+d+e.dump)):(l1n(e,t,e.dump),f&&(e.dump="&ref_"+d+" "+e.dump));else if(o==="[object String]")e.tag!=="?"&&o1n(e,e.dump,t,i,c);else{if(o==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new r3("unacceptable kind of an object to dump "+o)}e.tag!==null&&e.tag!=="?"&&(u=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",e.dump=u+" "+e.dump)}return!0}function h1n(e,t){var r=[],n=[],s,i;for(v2e(e,r,n),s=0,i=n.length;s{"use strict";var dHt=Vqt(),m1n=lHt();function T2e(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}uu.exports.Type=yc();uu.exports.Schema=WOe();uu.exports.FAILSAFE_SCHEMA=e2e();uu.exports.JSON_SCHEMA=i2e();uu.exports.CORE_SCHEMA=a2e();uu.exports.DEFAULT_SCHEMA=_Q();uu.exports.load=dHt.load;uu.exports.loadAll=dHt.loadAll;uu.exports.dump=m1n.dump;uu.exports.YAMLException=Iw();uu.exports.types={binary:l2e(),float:s2e(),map:ZOe(),null:t2e(),pairs:f2e(),set:h2e(),timestamp:o2e(),bool:r2e(),int:n2e(),merge:c2e(),omap:d2e(),seq:JOe(),str:XOe()};uu.exports.safeLoad=T2e("safeLoad","load");uu.exports.safeLoadAll=T2e("safeLoadAll","loadAll");uu.exports.safeDump=T2e("safeDump","dump")});var hHt=S(IQ=>{"use strict";Object.defineProperty(IQ,"__esModule",{value:!0});IQ.YAMLReader=void 0;var g1n=mQ(),_1n=YB(),A1n=fHt(),b2e=class extends _1n.BaseReader{_parse(t,r){let n=(0,A1n.load)(r);if(n===void 0)throw new Error("Unable to parse YAML document.");return new g1n.ObjectReader(this._builderOptions).parse(t,n)}};IQ.YAMLReader=b2e});var pHt=S(Rp=>{"use strict";Object.defineProperty(Rp,"__esModule",{value:!0});Rp.YAMLReader=Rp.JSONReader=Rp.ObjectReader=Rp.XMLReader=void 0;var E1n=W9t();Object.defineProperty(Rp,"XMLReader",{enumerable:!0,get:function(){return E1n.XMLReader}});var y1n=mQ();Object.defineProperty(Rp,"ObjectReader",{enumerable:!0,get:function(){return y1n.ObjectReader}});var v1n=X9t();Object.defineProperty(Rp,"JSONReader",{enumerable:!0,get:function(){return v1n.JSONReader}});var S1n=hHt();Object.defineProperty(Rp,"YAMLReader",{enumerable:!0,get:function(){return S1n.YAMLReader}})});var gHt=S(CQ=>{"use strict";Object.defineProperty(CQ,"__esModule",{value:!0});CQ.XMLBuilderImpl=void 0;var T1n=UG(),In=Wn(),n3=b9t(),b1n=zn(),E_=As(),y_=Dn(),Sc=dQ(),mHt=fa(),RQ=pHt(),I2e=class e{_domNode;constructor(t){this._domNode=t}get node(){return this._domNode}get options(){return this._options}set(t){return this._options=(0,In.applyDefaults)((0,In.applyDefaults)(this._options,t,!0),T1n.DefaultBuilderOptions),this}ele(t,r,n){let s,i,a;if((0,In.isObject)(t))return new RQ.ObjectReader(this._options).parse(this,t);if((0,In.isString)(t)&&t!==null&&/^\s*this.att(f,h),this),this;t!=null&&(t=(0,In.getValue)(t+"")),r!=null&&(r=(0,In.getValue)(r+"")),n!=null&&(n=(0,In.getValue)(n+""));let s,i,a;if((t===null||(0,In.isString)(t))&&(0,In.isString)(r)&&(n===null||(0,In.isString)(n)))[s,i,a]=[t,r,n];else if((0,In.isString)(t)&&(r==null||(0,In.isString)(r)))[s,i,a]=[void 0,t,r];else throw new Error("Attribute name and value not specified. "+this._debugInfo());if(this._options.keepNullAttributes&&a==null)a="";else if(a==null)return this;if(!E_.Guard.isElementNode(this.node))throw new Error("An attribute can only be assigned to an element node.");let o=this.node;[s,i]=this._extractNamespace(s,i,!1),i=(0,Sc.sanitizeInput)(i,this._options.invalidCharReplacement),s=(0,Sc.sanitizeInput)(s,this._options.invalidCharReplacement),a=(0,Sc.sanitizeInput)(a,this._options.invalidCharReplacement);let[c,u]=(0,y_.namespace_extractQName)(i),[l]=(0,y_.namespace_extractQName)(o.prefix?o.prefix+":"+o.localName:o.localName),d=null;return c==="xmlns"?(s=mHt.namespace.XMLNS,o.namespaceURI===null&&l===u&&(d=a)):c===null&&u==="xmlns"&&l===null&&(s=mHt.namespace.XMLNS,d=a),d!==null&&(this._updateNamespace(d),o=this.node),s!==void 0?o.setAttributeNS(s,i,a):o.setAttribute(i,a),this}removeAtt(t,r){if(!E_.Guard.isElementNode(this.node))throw new Error("An attribute can only be removed from an element node.");t=(0,In.getValue)(t),r!==void 0&&(r=(0,In.getValue)(r));let n,s;if(t!==null&&r===void 0)s=t;else if((t===null||(0,In.isString)(t))&&r!==void 0)n=t,s=r;else throw new Error("Attribute namespace must be a string. "+this._debugInfo());return(0,In.isArray)(s)||(0,In.isSet)(s)?(0,In.forEachArray)(s,i=>n===void 0?this.removeAtt(i):this.removeAtt(n,i),this):n!==void 0?(s=(0,Sc.sanitizeInput)(s,this._options.invalidCharReplacement),n=(0,Sc.sanitizeInput)(n,this._options.invalidCharReplacement),this.node.removeAttributeNS(n,s)):(s=(0,Sc.sanitizeInput)(s,this._options.invalidCharReplacement),this.node.removeAttribute(s)),this}txt(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createTextNode((0,Sc.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}com(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createComment((0,Sc.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}dat(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createCDATASection((0,Sc.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}ins(t,r=""){if(r==null)if(this._options.keepNullNodes)r="";else return this;if((0,In.isArray)(t)||(0,In.isSet)(t))(0,In.forEachArray)(t,n=>{n+="";let s=n.indexOf(" "),i=s===-1?n:n.substr(0,s),a=s===-1?"":n.substr(s+1);this.ins(i,a)},this);else if((0,In.isMap)(t)||(0,In.isObject)(t))(0,In.forEachObject)(t,(n,s)=>this.ins(n,s),this);else{let n=this._doc.createProcessingInstruction((0,Sc.sanitizeInput)(t,this._options.invalidCharReplacement),(0,Sc.sanitizeInput)(r,this._options.invalidCharReplacement));this.node.appendChild(n)}return this}dec(t){return this._options.version=t.version||"1.0",this._options.encoding=t.encoding,this._options.standalone=t.standalone,this}dtd(t){let r=(0,Sc.sanitizeInput)(t&&t.name||(this._doc.documentElement?this._doc.documentElement.tagName:"ROOT"),this._options.invalidCharReplacement),n=(0,Sc.sanitizeInput)(t&&t.pubID||"",this._options.invalidCharReplacement),s=(0,Sc.sanitizeInput)(t&&t.sysID||"",this._options.invalidCharReplacement);if(this._doc.documentElement!==null&&r!==this._doc.documentElement.tagName)throw new Error("DocType name does not match document element name.");let i=this._doc.implementation.createDocumentType(r,n,s);return this._doc.doctype!==null?this._doc.replaceChild(i,this._doc.doctype):this._doc.insertBefore(i,this._doc.documentElement),this}import(t){let r=this._domNode,n=this._doc,s=t.node,i=a=>{if(!a._namespace){let[o]=(0,y_.namespace_extractQName)(a.prefix?a.prefix+":"+a.localName:a.localName),c=r.lookupNamespaceURI(o);new e(a)._updateNamespace(c)}};if(E_.Guard.isDocumentNode(s)){let a=s.documentElement;if(a===null)throw new Error("Imported document has no document element node. "+this._debugInfo());let o=n.importNode(a,!0);r.appendChild(o),i(o)}else if(E_.Guard.isDocumentFragmentNode(s))for(let a of s.childNodes){let o=n.importNode(a,!0);r.appendChild(o),E_.Guard.isElementNode(o)&&i(o)}else{let a=n.importNode(s,!0);r.appendChild(a),E_.Guard.isElementNode(a)&&i(a)}return this}doc(){if(this._doc._isFragment){let t=this.node;for(;t&&t.nodeType!==b1n.NodeType.DocumentFragment;)t=t.parentNode;if(t===null)throw new Error("Node has no parent node while searching for document fragment ancestor. "+this._debugInfo());return new e(t)}else return new e(this._doc)}root(){let t=this._doc.documentElement;if(!t)throw new Error("Document root element is null. "+this._debugInfo());return new e(t)}up(){let t=this._domNode.parentNode;if(!t)throw new Error("Parent node is null. "+this._debugInfo());return new e(t)}prev(){let t=this._domNode.previousSibling;if(!t)throw new Error("Previous sibling node is null. "+this._debugInfo());return new e(t)}next(){let t=this._domNode.nextSibling;if(!t)throw new Error("Next sibling node is null. "+this._debugInfo());return new e(t)}first(){let t=this._domNode.firstChild;if(!t)throw new Error("First child node is null. "+this._debugInfo());return new e(t)}last(){let t=this._domNode.lastChild;if(!t)throw new Error("Last child node is null. "+this._debugInfo());return new e(t)}each(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2]);t.call(s,new e(i[0]),i[1],i[2]),i=a}return this}map(t,r=!1,n=!1,s){let i=[];return this.each((a,o,c)=>i.push(t.call(s,a,o,c)),r,n),i}reduce(t,r,n=!1,s=!1,i){let a=r;return this.each((o,c,u)=>a=t.call(i,a,o,c,u),n,s),a}find(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=new e(i[0]);if(t.call(s,a,i[1],i[2]))return a;i=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2])}}filter(t,r=!1,n=!1,s){let i=[];return this.each((a,o,c)=>{t.call(s,a,o,c)&&i.push(a)},r,n),i}every(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=new e(i[0]);if(!t.call(s,a,i[1],i[2]))return!1;i=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2])}return!0}some(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=new e(i[0]);if(t.call(s,a,i[1],i[2]))return!0;i=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2])}return!1}toArray(t=!1,r=!1){let n=[];return this.each(s=>n.push(s),t,r),n}toString(t){return t=t||{},t.format===void 0&&(t.format="xml"),this._serialize(t)}toObject(t){return t=t||{},t.format===void 0&&(t.format="object"),this._serialize(t)}end(t){return t=t||{},t.format===void 0&&(t.format="xml"),this.doc()._serialize(t)}_getFirstDescendantNode(t,r,n){return r?[this._domNode,0,0]:n?this._getNextDescendantNode(t,t,n,0,0):[this._domNode.firstChild,0,1]}_getNextDescendantNode(t,r,n,s,i){if(n){if(r.firstChild)return[r.firstChild,0,i+1];if(r===t)return[null,-1,-1];if(r.nextSibling)return[r.nextSibling,s+1,i];let a=r.parentNode;for(;a&&a!==t;){if(a.nextSibling)return[a.nextSibling,(0,y_.tree_index)(a.nextSibling),i-1];a=a.parentNode,i--}}else return t===r?[r.firstChild,0,i+1]:[r.nextSibling,s+1,i];return[null,-1,-1]}_serialize(t){if(t.format==="xml")return new n3.XMLWriter(this._options,t).serialize(this.node);if(t.format==="map")return new n3.MapWriter(this._options,t).serialize(this.node);if(t.format==="object")return new n3.ObjectWriter(this._options,t).serialize(this.node);if(t.format==="json")return new n3.JSONWriter(this._options,t).serialize(this.node);if(t.format==="yaml")return new n3.YAMLWriter(this._options,t).serialize(this.node);throw new Error("Invalid writer format: "+t.format+". "+this._debugInfo())}_extractNamespace(t,r,n){let s=r.indexOf("@");if(s>0&&(t===void 0&&(t=r.slice(s+1)),r=r.slice(0,s)),t===void 0)t=n?this._options.defaultNamespace.ele:this._options.defaultNamespace.att;else if(t!==null&&t[0]==="@"){let i=t.slice(1);if(t=this._options.namespaceAlias[i],t===void 0)throw new Error("Namespace alias `"+i+"` is not defined. "+this._debugInfo())}return[t,r]}_updateNamespace(t){let r=this._domNode;if(E_.Guard.isElementNode(r)&&t!==null&&r.namespaceURI!==t){let[n,s]=(0,y_.namespace_extractQName)(r.prefix?r.prefix+":"+r.localName:r.localName),i=(0,y_.create_element)(this._doc,s,t,n);for(let o of r.attributes){let c=o.prefix?o.prefix+":"+o.localName:o.localName,[u]=(0,y_.namespace_extractQName)(c),l=o.namespaceURI;l===null&&u!==null&&(l=r.lookupNamespaceURI(u)),l===null?i.setAttribute(c,o.value):i.setAttributeNS(l,c,o.value)}let a=r.parentNode;if(a===null)throw new Error("Parent node is null."+this._debugInfo());a.replaceChild(i,r),this._domNode=i;for(let o of r.childNodes){let c=o.cloneNode(!0);if(i.appendChild(c),E_.Guard.isElementNode(c)&&!c._namespace){let[u]=(0,y_.namespace_extractQName)(c.prefix?c.prefix+":"+c.localName:c.localName),l=i.lookupNamespaceURI(u);new e(c)._updateNamespace(l)}}}}get _doc(){let t=this.node;if(E_.Guard.isDocumentNode(t))return t;{let r=t.ownerDocument;if(!r)throw new Error("Owner document is null. "+this._debugInfo());return r}}_debugInfo(t){let r=this.node,n=r.parentNode;t=t||r.nodeName;let s=n?n.nodeName:"";return s?"node: <"+t+">, parent: <"+s+">":"node: <"+t+">"}get _options(){let t=this._doc;if(t._xmlBuilderOptions===void 0)throw new Error("Builder options is not set.");return t._xmlBuilderOptions}set _options(t){let r=this._doc;r._xmlBuilderOptions=t}};CQ.XMLBuilderImpl=I2e});var C2e=S(Dw=>{"use strict";Object.defineProperty(Dw,"__esModule",{value:!0});Dw.builder=R1n;Dw.create=AHt;Dw.fragment=C1n;Dw.convert=x1n;var Ow=UG(),xQ=Wn(),I1n=As(),wQ=NQ(),_Ht=dQ();function R1n(e,t){let r=R2e(Nw(e)?e:Ow.DefaultBuilderOptions),n=I1n.Guard.isNode(e)||(0,xQ.isArray)(e)?e:t;if(n===void 0)throw new Error("Invalid arguments.");if((0,xQ.isArray)(n)){let s=[];for(let i=0;i{"use strict";Object.defineProperty(OQ,"__esModule",{value:!0});OQ.BaseCBWriter=void 0;var x2e=class{_builderOptions;_writerOptions;level=0;hasData;constructor(t){this._builderOptions=t,this._writerOptions=t}};OQ.BaseCBWriter=x2e});var yHt=S(PQ=>{"use strict";Object.defineProperty(PQ,"__esModule",{value:!0});PQ.XMLCBWriter=void 0;var w1n=DQ(),w2e=class extends w1n.BaseCBWriter{_lineLength=0;constructor(t){super(t)}frontMatter(){return""}declaration(t,r,n){let s=this._beginLine()+"",s}docType(t,r,n){let s=this._beginLine();return r&&n?s+="':r?s+="':n?s+="':s+="",s}comment(t){return this._beginLine()+""}text(t){return t}instruction(t,r){return r?this._beginLine()+"":this._beginLine()+""}cdata(t){return this._beginLine()+""}openTagBegin(t){return this._lineLength+=1+t.length,this._beginLine()+"<"+t}openTagEnd(t,r,n){return n?" />":r?this._writerOptions.allowEmptyTags?">":this._writerOptions.spaceBeforeSlash?" />":"/>":">"}closeTag(t,r){return(r?"":this._beginLine())+""}attribute(t,r){let n=t+'="'+r+'"';return this._writerOptions.prettyPrint&&this._writerOptions.width>0&&this._lineLength+1+n.length>this._writerOptions.width?(n=this._beginLine()+this._indent(1)+n,this._lineLength=n.length,n):(this._lineLength+=1+n.length," "+n)}beginElement(t){}endElement(t){}_beginLine(){if(this._writerOptions.prettyPrint){let t=(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level);return this._lineLength=t.length,t}else return""}_indent(t){return t<=0?"":this._writerOptions.indent.repeat(t)}};PQ.XMLCBWriter=w2e});var vHt=S(LQ=>{"use strict";Object.defineProperty(LQ,"__esModule",{value:!0});LQ.JSONCBWriter=void 0;var N1n=DQ(),N2e=class extends N1n.BaseCBWriter{_hasChildren=[];_additionalLevel=0;constructor(t){super(t)}frontMatter(){return""}declaration(t,r,n){return""}docType(t,r,n){return""}comment(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.comment)+this._sep()+this._val(t)+this._sep()+"}"}text(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.text)+this._sep()+this._val(t)+this._sep()+"}"}instruction(t,r){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.ins)+this._sep()+this._val(r?t+" "+r:t)+this._sep()+"}"}cdata(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.cdata)+this._sep()+this._val(t)+this._sep()+"}"}attribute(t,r){return this._comma()+this._beginLine(1)+"{"+this._sep()+this._key(this._builderOptions.convert.att+t)+this._sep()+this._val(r)+this._sep()+"}"}openTagBegin(t){let r=this._comma()+this._beginLine()+"{"+this._sep()+this._key(t)+this._sep()+"{";return this._additionalLevel++,this.hasData=!0,r+=this._beginLine()+this._key(this._builderOptions.convert.text)+this._sep()+"[",this._hasChildren.push(!1),r}openTagEnd(t,r,n){if(r){let s=this._sep()+"]";return this._additionalLevel--,s+=this._beginLine()+"}"+this._sep()+"}",s}else return""}closeTag(t){let r=this._beginLine()+"]";return this._additionalLevel--,r+=this._beginLine()+"}"+this._sep()+"}",r}beginElement(t){}endElement(t){this._hasChildren.pop()}_beginLine(t=0){return this._writerOptions.prettyPrint?(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level+t):""}_indent(t){return t+this._additionalLevel<=0?"":this._writerOptions.indent.repeat(t+this._additionalLevel)}_comma(){let t=this._hasChildren[this._hasChildren.length-1]?",":"";return this._hasChildren.length>0&&(this._hasChildren[this._hasChildren.length-1]=!0),t}_sep(){return this._writerOptions.prettyPrint?" ":""}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};LQ.JSONCBWriter=N2e});var SHt=S(MQ=>{"use strict";Object.defineProperty(MQ,"__esModule",{value:!0});MQ.YAMLCBWriter=void 0;var O1n=DQ(),O2e=class extends O1n.BaseCBWriter{_rootWritten=!1;_additionalLevel=0;constructor(t){if(super(t),t.indent.length<2)throw new Error("YAML indententation string must be at least two characters long.");if(t.offset<0)throw new Error("YAML offset should be zero or a positive number.")}frontMatter(){return this._beginLine()+"---"}declaration(t,r,n){return""}docType(t,r,n){return""}comment(t){return this._beginLine()+this._key(this._builderOptions.convert.comment)+" "+this._val(t)}text(t){return this._beginLine()+this._key(this._builderOptions.convert.text)+" "+this._val(t)}instruction(t,r){return this._beginLine()+this._key(this._builderOptions.convert.ins)+" "+this._val(r?t+" "+r:t)}cdata(t){return this._beginLine()+this._key(this._builderOptions.convert.cdata)+" "+this._val(t)}attribute(t,r){this._additionalLevel++;let n=this._beginLine()+this._key(this._builderOptions.convert.att+t)+" "+this._val(r);return this._additionalLevel--,n}openTagBegin(t){let r=this._beginLine()+this._key(t);return this._rootWritten||(this._rootWritten=!0),this.hasData=!0,this._additionalLevel++,r+=this._beginLine(!0)+this._key(this._builderOptions.convert.text),r}openTagEnd(t,r,n){return r?" "+this._val(""):""}closeTag(t){return this._additionalLevel--,""}beginElement(t){}endElement(t){}_beginLine(t=!1){return(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level,t)}_indent(t,r){if(t+this._additionalLevel<=0)return"";{let n=this._writerOptions.indent.repeat(t+this._additionalLevel);return!r&&this._rootWritten?n.substr(0,n.length-2)+"-"+n.substr(-1,1):n}}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};MQ.YAMLCBWriter=O2e});var THt=S(kQ=>{"use strict";Object.defineProperty(kQ,"__esModule",{value:!0});kQ.XMLBuilderCBImpl=void 0;var D1n=UG(),D2e=Wn(),Ry=C2e(),Cy=Dn(),v_=fa(),P1n=zG(),L1n=xB(),s3=As(),M1n=yHt(),k1n=vHt(),B1n=SHt(),U1n=require("events"),P2e=class e extends U1n.EventEmitter{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);_options;_builderOptions;_writer;_fragment;_hasDeclaration=!1;_docTypeName="";_hasDocumentElement=!1;_currentElement;_currentElementSerialized=!1;_openTags=[];_prefixMap;_prefixIndex;_ended=!1;constructor(t,r=!1){super(),this._fragment=r,this._options=(0,D2e.applyDefaults)(t||{},D1n.DefaultXMLBuilderCBOptions),this._builderOptions={defaultNamespace:this._options.defaultNamespace,namespaceAlias:this._options.namespaceAlias},this._options.format==="json"?this._writer=new k1n.JSONCBWriter(this._options):this._options.format==="yaml"?this._writer=new B1n.YAMLCBWriter(this._options):this._writer=new M1n.XMLCBWriter(this._options),this._options.data!==void 0&&this.on("data",this._options.data),this._options.end!==void 0&&this.on("end",this._options.end),this._options.error!==void 0&&this.on("error",this._options.error),this._prefixMap=new P1n.NamespacePrefixMap,this._prefixMap.set("xml",v_.namespace.XML),this._prefixIndex={value:1},this._push(this._writer.frontMatter())}ele(t,r,n){if((0,D2e.isObject)(t)||(0,D2e.isString)(t)&&(/^\s*/g,">");this._push(this._writer.text(n));let s=this._openTags[this._openTags.length-1];return s&&(s[s.length-1]=!0),this}ins(t,r=""){this._serializeOpenTag(!0);let n;try{n=(0,Ry.fragment)(this._builderOptions).ins(t,r).first().node}catch(s){return this.emit("error",s),this}return this._options.wellFormed&&(n.target.indexOf(":")!==-1||/^xml$/i.test(n.target))?(this.emit("error",new Error("Processing instruction target contains invalid characters (well-formed required).")),this):this._options.wellFormed&&!(0,Cy.xml_isLegalChar)(n.data)?(this.emit("error",Error("Processing instruction data contains invalid characters (well-formed required).")),this):(this._push(this._writer.instruction(n.target,n.data)),this)}dat(t){this._serializeOpenTag(!0);let r;try{r=(0,Ry.fragment)(this._builderOptions).dat(t).first().node}catch(n){return this.emit("error",n),this}return this._push(this._writer.cdata(r.data)),this}dec(t={version:"1.0"}){return this._fragment?(this.emit("error",Error("Cannot insert an XML declaration into a document fragment.")),this):this._hasDeclaration?(this.emit("error",Error("XML declaration is already inserted.")),this):(this._push(this._writer.declaration(t.version||"1.0",t.encoding,t.standalone)),this._hasDeclaration=!0,this)}dtd(t){if(this._fragment)return this.emit("error",Error("Cannot insert a DocType declaration into a document fragment.")),this;if(this._docTypeName!=="")return this.emit("error",new Error("DocType declaration is already inserted.")),this;if(this._hasDocumentElement)return this.emit("error",new Error("Cannot insert DocType declaration after document element.")),this;let r;try{r=(0,Ry.create)().dtd(t).first().node}catch(n){return this.emit("error",n),this}return this._options.wellFormed&&!(0,Cy.xml_isPubidChar)(r.publicId)?(this.emit("error",new Error("DocType public identifier does not match PubidChar construct (well-formed required).")),this):this._options.wellFormed&&(!(0,Cy.xml_isLegalChar)(r.systemId)||r.systemId.indexOf('"')!==-1&&r.systemId.indexOf("'")!==-1)?(this.emit("error",new Error("DocType system identifier contains invalid characters (well-formed required).")),this):(this._docTypeName=t.name,this._push(this._writer.docType(t.name,r.publicId,r.systemId)),this)}import(t){let r=(0,Ry.fragment)().set(this._options);try{r.import(t)}catch(n){return this.emit("error",n),this}for(let n of r.node.childNodes)this._fromNode(n);return this}up(){return this._serializeOpenTag(!1),this._serializeCloseTag(),this}end(){for(this._serializeOpenTag(!1);this._openTags.length>0;)this._serializeCloseTag();return this._push(null),this}_serializeOpenTag(t){if(this._currentElementSerialized||this._currentElement===void 0)return;let r=this._currentElement.node;if(this._options.wellFormed&&(r.localName.indexOf(":")!==-1||!(0,Cy.xml_isName)(r.localName))){this.emit("error",new Error("Node local name contains invalid characters (well-formed required)."));return}let n="",s=!1,i=this._prefixMap.copy(),a={},o=this._recordNamespaceInformation(r,i,a),c=this._openTags.length===0?null:this._openTags[this._openTags.length-1][1],u=r.namespaceURI;if(u===null&&(u=c),c===u)o!==null&&(s=!0),u===v_.namespace.XML?n="xml:"+r.localName:n=r.localName,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n));else{let d=r.prefix,f=null;if((d!==null||u!==o)&&(f=i.get(d,u)),d==="xmlns"){if(this._options.wellFormed){this.emit("error",new Error("An element cannot have the 'xmlns' prefix (well-formed required)."));return}f=d}f!==null?(n=f+":"+r.localName,o!==null&&o!==v_.namespace.XML&&(c=o||null),this._writer.beginElement(n),this._push(this._writer.openTagBegin(n))):d!==null?(d in a&&(d=this._generatePrefix(u,i,this._prefixIndex)),i.set(d,u),n+=d+":"+r.localName,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)),this._push(this._writer.attribute("xmlns:"+d,this._serializeAttributeValue(u,this._options.wellFormed))),o!==null&&(c=o||null)):o===null||o!==null&&o!==u?(s=!0,n+=r.localName,c=u,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)),this._push(this._writer.attribute("xmlns",this._serializeAttributeValue(u,this._options.wellFormed)))):(n+=r.localName,c=u,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)))}this._serializeAttributes(r,i,this._prefixIndex,a,s,this._options.wellFormed);let l=u===v_.namespace.HTML;l&&!t&&e._VoidElementNames.has(r.localName)?(this._push(this._writer.openTagEnd(n,!0,!0)),this._writer.endElement(n)):!l&&!t?(this._push(this._writer.openTagEnd(n,!0,!1)),this._writer.endElement(n)):this._push(this._writer.openTagEnd(n,!1,!1)),this._currentElementSerialized=!0,this._openTags.push([n,c,this._prefixMap,t,void 0]),this._isPrefixMapModified(this._prefixMap,i)&&(this._prefixMap=i),this._writer.level++}_serializeCloseTag(){this._writer.level--;let t=this._openTags.pop();if(t===void 0){this.emit("error",new Error("Last element is undefined."));return}let[r,n,s,i,a]=t;this._prefixMap=s,i&&(this._push(this._writer.closeTag(r,a)),this._writer.endElement(r))}_push(t){t===null?(this._ended=!0,this.emit("end")):this._ended?this.emit("error",new Error("Cannot push to ended stream.")):t.length!==0&&(this._writer.hasData=!0,this.emit("data",t,this._writer.level))}_fromNode(t){if(s3.Guard.isElementNode(t)){let r=t.prefix?t.prefix+":"+t.localName:t.localName;t.namespaceURI!==null?this.ele(t.namespaceURI,r):this.ele(r);for(let n of t.attributes){let s=n.prefix?n.prefix+":"+n.localName:n.localName;n.namespaceURI!==null?this.att(n.namespaceURI,s,n.value):this.att(s,n.value)}for(let n of t.childNodes)this._fromNode(n);this.up()}else s3.Guard.isExclusiveTextNode(t)&&t.data?this.txt(t.data):s3.Guard.isCommentNode(t)?this.com(t.data):s3.Guard.isCDATASectionNode(t)?this.dat(t.data):s3.Guard.isProcessingInstructionNode(t)&&this.ins(t.target,t.data)}_serializeAttributes(t,r,n,s,i,a){let o=a?new L1n.LocalNameSet:void 0;for(let c of t.attributes){if(!a&&!i&&c.namespaceURI===null){this._push(this._writer.attribute(c.localName,this._serializeAttributeValue(c.value,this._options.wellFormed)));continue}if(a&&o&&o.has(c.namespaceURI,c.localName)){this.emit("error",new Error("Element contains duplicate attributes (well-formed required)."));return}a&&o&&o.set(c.namespaceURI,c.localName);let u=c.namespaceURI,l=null;if(u!==null)if(l=r.get(c.prefix,u),u===v_.namespace.XMLNS){if(c.value===v_.namespace.XML||c.prefix===null&&i||c.prefix!==null&&(!(c.localName in s)||s[c.localName]!==c.value)&&r.has(c.localName,c.value))continue;if(a&&c.value===v_.namespace.XMLNS){this.emit("error",new Error("XMLNS namespace is reserved (well-formed required)."));return}if(a&&c.value===""){this.emit("error",new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required)."));return}c.prefix==="xmlns"&&(l="xmlns")}else l===null&&(c.prefix!==null&&(!r.hasPrefix(c.prefix)||r.has(c.prefix,u))?l=c.prefix:l=this._generatePrefix(u,r,n),this._push(this._writer.attribute("xmlns:"+l,this._serializeAttributeValue(u,this._options.wellFormed))));if(a&&(c.localName.indexOf(":")!==-1||!(0,Cy.xml_isName)(c.localName)||c.localName==="xmlns"&&u===null)){this.emit("error",new Error("Attribute local name contains invalid characters (well-formed required)."));return}this._push(this._writer.attribute((l!==null?l+":":"")+c.localName,this._serializeAttributeValue(c.value,this._options.wellFormed)))}}_serializeAttributeValue(t,r){return r&&t!==null&&!(0,Cy.xml_isLegalChar)(t)?(this.emit("error",new Error("Invalid characters in attribute value.")),""):t===null?"":t.replace(/(?!&(lt|gt|amp|apos|quot);)&/g,"&").replace(//g,">").replace(/"/g,""")}_recordNamespaceInformation(t,r,n){let s=null;for(let i of t.attributes){let a=i.namespaceURI,o=i.prefix;if(a===v_.namespace.XMLNS)if(o===null){s=i.value;continue}else{let c=i.localName,u=i.value;if(u===v_.namespace.XML||(u===""&&(u=null),r.has(c,u)))continue;r.set(c,u),n[c]=u||""}}return s}_generatePrefix(t,r,n){let s="ns"+n.value;return n.value++,r.set(s,t),s}_isPrefixMapModified(t,r){let n=t._items,s=r._items,i=t._nullItems,a=r._nullItems;for(let o in s){let c=n[o];if(c===void 0)return!0;let u=s[o];if(c.length!==u.length)return!0;for(let l=0;l{"use strict";Object.defineProperty(BQ,"__esModule",{value:!0});BQ.createCB=F1n;BQ.fragmentCB=$1n;var bHt=NQ();function F1n(e){return new bHt.XMLBuilderCBImpl(e)}function $1n(e){return new bHt.XMLBuilderCBImpl(e,!0)}});var NQ=S(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.fragmentCB=io.createCB=io.convert=io.fragment=io.create=io.builder=io.XMLBuilderCBImpl=io.XMLBuilderImpl=void 0;var q1n=gHt();Object.defineProperty(io,"XMLBuilderImpl",{enumerable:!0,get:function(){return q1n.XMLBuilderImpl}});var H1n=THt();Object.defineProperty(io,"XMLBuilderCBImpl",{enumerable:!0,get:function(){return H1n.XMLBuilderCBImpl}});var UQ=C2e();Object.defineProperty(io,"builder",{enumerable:!0,get:function(){return UQ.builder}});Object.defineProperty(io,"create",{enumerable:!0,get:function(){return UQ.create}});Object.defineProperty(io,"fragment",{enumerable:!0,get:function(){return UQ.fragment}});Object.defineProperty(io,"convert",{enumerable:!0,get:function(){return UQ.convert}});var RHt=IHt();Object.defineProperty(io,"createCB",{enumerable:!0,get:function(){return RHt.createCB}});Object.defineProperty(io,"fragmentCB",{enumerable:!0,get:function(){return RHt.fragmentCB}})});var CHt=S(ll=>{"use strict";Object.defineProperty(ll,"__esModule",{value:!0});ll.fragmentCB=ll.createCB=ll.convert=ll.fragment=ll.create=ll.builder=void 0;var Pw=NQ();Object.defineProperty(ll,"builder",{enumerable:!0,get:function(){return Pw.builder}});Object.defineProperty(ll,"create",{enumerable:!0,get:function(){return Pw.create}});Object.defineProperty(ll,"fragment",{enumerable:!0,get:function(){return Pw.fragment}});Object.defineProperty(ll,"convert",{enumerable:!0,get:function(){return Pw.convert}});Object.defineProperty(ll,"createCB",{enumerable:!0,get:function(){return Pw.createCB}});Object.defineProperty(ll,"fragmentCB",{enumerable:!0,get:function(){return Pw.fragmentCB}})});var OHt={};Ft(OHt,{default:()=>oIn});function gf(e){e+=`&udid=${k0.id}&uuid=${k0.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${k0.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let t=new URL(e),r=(0,Lw.default)().unix().toString(),n=k2e.default.HmacSHA1("GET&"+encodeURIComponent(t.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=k2e.default.enc.Base64.stringify(n);return e+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function Cp(e,t){return(await Xe.get(e,{headers:{"User-Agent":t||k0.ua,Referer:"https://frodo.douban.com/"}})).data}function X1n(e,t){return e?`http://127.0.0.1:${t?.server?.address()?.port||9988}/proxy?do=image&url=${encodeURIComponent(e)}&referer=${encodeURIComponent("https://movie.douban.com")}`:""}function o3(e,t){let r="";return e.cover_url?r=e.cover_url:e.pic?typeof e.pic=="string"?r=e.pic:e.pic.normal?r=e.pic.normal:e.pic.large?r=e.pic.large:e.pic.medium&&(r=e.pic.medium):e.images?e.images.normal?r=e.images.normal:e.images.large?r=e.images.large:e.images.medium&&(r=e.images.medium):e.cover&&(r=e.cover),r&&t?X1n(r,t):r||""}function J1n(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function a3(e){if(!e)return"";let t=String(e).trim();return t?t==="all"||t.includes("\u5168\u90E8")?"\u5168\u90E8":t:""}function Z1n(e){let t=a3(e);return t==="\u52A8\u6F2B"?"\u52A8\u753B":t}function eIn(e){let t=(e?.rating&&e.rating.value||"").toString();return t.length>0?`\u8BC4\u5206:${t}`:""}function i3(e,t){return!e||!e.id?null:{vod_id:e.id,vod_name:e.title||"",vod_pic:o3(e,t),vod_remarks:eIn(e)}}function Ob(e,t,r){let n=Number.isFinite(t)?t:r.length,s=Math.max(1,Math.ceil(n/Xl));return{page:e,pagecount:s,total:n,list:r}}async function tIn(e,t){let r=e.server.prefix+"/device";return k0=await e.server.db.getObjectDefault(r,{}),k0.id||(k0.id=Sa(40).toLowerCase(),k0.ua=`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${k0.id} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`,await e.server.db.push(r,k0)),{}}async function rIn(e,t){let r=Yr("douban",e),n=Qr(r);if(n)return n;let s=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],i={t1:[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],t2:[],t4:[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]},{key:"area",name:"",init:"all",value:[{n:"\u534E\u8BED",v:"chinese"},{n:"\u6B27\u7F8E",v:"western"},{n:"\u65E5\u672C",v:"japanese"},{n:"\u97E9\u56FD",v:"korea"}]},{key:"genre",name:"",init:"all",value:[{n:"\u559C\u5267",v:"comedy"},{n:"\u52A8\u4F5C",v:"action"},{n:"\u7231\u60C5",v:"love"},{n:"\u79D1\u5E7B",v:"science_fiction"},{n:"\u52A8\u753B",v:"cartoon"},{n:"\u60AC\u7591",v:"mystery"},{n:"\u60CA\u609A",v:"panic"},{n:"\u6050\u6016",v:"horrible"},{n:"\u72AF\u7F6A",v:"criminal"},{n:"\u540C\u6027",v:"lgbt"},{n:"\u6218\u4E89",v:"war"},{n:"\u5947\u5E7B",v:"fantasy"},{n:"\u60C5\u8272",v:"erotica"},{n:"\u97F3\u4E50",v:"music"},{n:"\u7EAA\u5F55\u7247",v:"documentary"},{n:"\u6CBB\u6108",v:"cure"},{n:"\u827A\u672F",v:"art"},{n:"\u9ED1\u8272\u5E7D\u9ED8",v:"dark_humor"},{n:"\u9752\u6625",v:"youth"},{n:"\u5973\u6027",v:"female"},{n:"\u771F\u5B9E\u4E8B\u4EF6\u6539\u7F16",v:"real_event"},{n:"\u66B4\u529B",v:"violence"},{n:"\u9ED1\u767D",v:"black_white"},{n:"\u7F8E\u98DF",v:"food"},{n:"\u65C5\u884C",v:"travel"},{n:"\u513F\u7AE5",v:"child"},{n:"\u4EBA\u6027",v:"humanity"},{n:"\u5BB6\u5EAD",v:"family"},{n:"\u6587\u827A",v:"literary_art"},{n:"\u5C0F\u8BF4\u6539\u7F16",v:"novel"},{n:"\u611F\u4EBA",v:"moving"},{n:"\u52B1\u5FD7",v:"inspiration"}]}]};try{let o=gf(`${mf}/api/v2/movie/tag?sort=U&start=0&count=${Xl}&q=\u5168\u90E8\u5F62\u5F0F,\u5168\u90E8\u7C7B\u578B,\u5168\u90E8\u5730\u533A,\u5168\u90E8\u5E74\u4EE3&score_range=0,10`),c=await Cp(o),u=Array.isArray(c?.tags)?c.tags:[],l=Array.isArray(c?.sorts)?c.sorts:[],d=[];for(let m of u){if(!m||m.type==="\u7279\u8272"||!Array.isArray(m.data)||m.data.length===0)continue;let _=[...m.data];m.type==="\u5E74\u4EE3"&&_.indexOf((0,Lw.default)().year().toString())<0&&(_.splice(1,0,(0,Lw.default)().year().toString()),_.indexOf(((0,Lw.default)().year()-1).toString())<0&&_.splice(2,0,((0,Lw.default)().year()-1).toString())),d.push({key:m.type,name:"",init:_[0],value:_.map(g=>({n:g.indexOf("\u5168\u90E8")>=0?"\u5168\u90E8":g,v:g}))})}l.length>0&&d.push({key:"sort",name:"",init:l[0].name,value:l.map(m=>({n:m.text,v:m.name}))});let f=[{n:"\u5168\u90E8",v:"\u5168\u90E8"},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}],h=d.findIndex(m=>m.key==="\u5F62\u5F0F"),p={key:"\u5F62\u5F0F",name:"",init:"\u5168\u90E8",value:f};h!==-1?d[h]=p:d.push(p),i.t2=d}catch{}let a={class:s,filters:i};return dn(r,a,Tt.semiStatic),a}async function nIn(e,t){let r=e.body||{},n=r.id||"",s=r.filters||{},i=J1n(r.page),a=(i-1)*Xl;try{if(n==="t1"){let o=gf(`${mf}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${a}&count=${Xl}`),c=await Cp(o),l=(c?.items||c?.subject_collection_items||[]).map(d=>i3(d,e)).filter(Boolean);return Ob(i,c?.total,l)}if(n==="t250"){let o=gf(`${mf}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${a}&count=${Xl}`),c=await Cp(o),l=(c?.items||c?.subject_collection_items||[]).map(d=>i3(d,e)).filter(Boolean);return Ob(i,c?.total,l)}if(n==="t2"){let o=Z1n(s.\u5F62\u5F0F)||"\u5168\u90E8",c=a3(s.\u7C7B\u578B)||"\u5168\u90E8",u=a3(s.\u5730\u533A)||"\u5168\u90E8",l=a3(s.\u5E74\u4EE3)||"\u5168\u90E8",d=a3(s.sort)||"U",f=null,h="",p={},m=[];if(o==="\u7535\u5F71")h="/api/v2/movie/recommend",p={\u5F62\u5F0F:"\u7535\u5F71"},m=["\u7535\u5F71"];else if(o==="\u7535\u89C6\u5267")h="/api/v2/tv/recommend",p={\u5F62\u5F0F:"\u7535\u89C6\u5267"},m=["\u7535\u89C6\u5267"];else if(o==="\u52A8\u753B")h="/api/v2/tv/recommend",p={\u5F62\u5F0F:"\u52A8\u753B"},m=["\u52A8\u753B"];else if(o==="\u7EFC\u827A")h="/api/v2/tv/recommend",p={\u5F62\u5F0F:"\u7EFC\u827A"},m=["\u7EFC\u827A"];else if(o==="\u7EAA\u5F55\u7247")h="/api/v2/movie/recommend",p={\u5F62\u5F0F:"\u7EAA\u5F55\u7247"},m=["\u7EAA\u5F55\u7247"];else if(o==="\u77ED\u7247")h="/api/v2/movie/recommend",p={\u5F62\u5F0F:"\u77ED\u7247"},m=["\u77ED\u7247"];else{let A=[o,c,u,l].filter(v=>v&&v!=="\u5168\u90E8"&&!v.includes("\u5168\u90E8")),E=A.length>0?`&q=${A.join(",")}`:"";f=gf(`${mf}/api/v2/movie/tag?sort=${d}&start=${a}&count=${Xl}${E}&score_range=0,10`)}if(h){o!=="\u52A8\u753B"&&c&&c!=="\u5168\u90E8"&&c!=="all"&&(p.\u7C7B\u578B=c,m.push(c)),u&&u!=="\u5168\u90E8"&&u!=="all"&&(p.\u5730\u533A=u,m.push(u)),l&&l!=="\u5168\u90E8"&&m.push(l);let A=`${mf}${h}?refresh=0&start=${a}&count=${Xl}`;A+=`&selected_categories=${encodeURIComponent(JSON.stringify(p))}`,m.length>0&&(A+=`&tags=${encodeURIComponent(m.join(","))}`),A+=`&uncollect=false&score_range=0%2C10&sort=${d}`,f=gf(A)}if(!f){let A=[o,c,u,l].filter(v=>v&&v!=="\u5168\u90E8"&&!v.includes("\u5168\u90E8")),E=A.length>0?`&q=${A.join(",")}`:"";f=gf(`${mf}/api/v2/movie/tag?sort=${d}&start=${a}&count=${Xl}${E}&score_range=0,10`)}let _=await Cp(f),g=[];_?.items?g=_.items:_?.data?g=_.data:_?.subject_collection_items&&(g=_.subject_collection_items);let y=g.map(A=>i3(A,e)).filter(Boolean);return Ob(i,_?.total,y)}if(n==="t3"){let[o,c]=await Promise.all([Cp(gf(`${mf}/api/v2/movie/category_ranks?count=${Xl}&category=recent_hot`)),Cp(gf(`${mf}/api/v2/tv/category_ranks?count=${Xl}&category=recent_hot`))]),u=[];for(let l of o?.selected_collections||[])u.push({vod_id:`cr_${l.id}`,vod_name:l.short_name||l.title||"",vod_pic:o3(l,e),vod_remarks:"",cate:{}});for(let l of c?.selected_collections||[])u.push({vod_id:`cr_${l.id}`,vod_name:l.short_name||l.title||"",vod_pic:o3(l,e),vod_remarks:"",cate:{}});return Ob(1,u.length,u)}if(n==="t4"){let o=gf(`${mf}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${a}&count=${Xl}`),c=await Cp(o),l=(c?.data?.[0]?.items||[]).map(d=>({vod_id:d.owner?`dl_${d.id}`:`cr_${d.id}`,vod_name:d.title||"",vod_pic:o3(d,e),vod_remarks:"",cate:{}}));return Ob(i,c?.total,l)}if(n.startsWith("cr_")){let o=gf(`${mf}/api/v2/subject_collection/${n.substring(3)}/items?start=${a}&count=${Xl}&updated_at=&items_only=1`),c=await Cp(o),l=(c?.subject_collection_items||[]).map(d=>i3(d,e)).filter(Boolean);return Ob(i,c?.total,l)}if(n.startsWith("dl_")){let o=gf(`${mf}/api/v2/doulist/${n.substring(3)}/posts?start=${a}&count=${Xl}&updated_at=&items_only=1`),c=await Cp(o),u=[];for(let l of c?.items||[]){let d=l?.content?.subject,f=i3(d,e);f&&u.push(f)}return Ob(i,c?.total,u)}}catch{}return{page:i,pagecount:i,total:0,list:[]}}async function sIn(e,t){let r=e.body?.id;if(!r)return{list:[]};let n=pb("detail",{id:r});return Un("douban","detail",n,async()=>{try{let s=gf(`${mf}/api/v2/movie/${r}`),i=await Cp(s),a=Array.isArray(i?.directors)?i.directors.map(u=>u.name).join(","):"",o=Array.isArray(i?.actors)?i.actors.slice(0,5).map(u=>u.name).join(","):"",c=Array.isArray(i?.countries)?i.countries.join(","):"";return{list:[{vod_id:i.id||r,vod_name:i.title||"",vod_pic:o3(i,e),vod_remarks:i.rating?`\u8BC4\u5206:${i.rating.value}`:"",type_name:i.subtype==="tv"?"\u7535\u89C6\u5267":"\u7535\u5F71",vod_year:i.year||"",vod_area:c,vod_actor:o,vod_director:a,vod_content:i.intro||i.card_subtitle||"",vod_play_from:"\u8C46\u74E3",vod_play_url:`\u7B2C1\u96C6$$${r}`}]}}catch{return{list:[]}}},{timeout:3e4})}async function iIn(e,t){let r=e.body?.id;return r?{parse:0,url:`https://movie.douban.com/subject/${r}/`,header:{"User-Agent":k0.ua,Referer:"https://movie.douban.com/"}}:{parse:0,url:""}}async function aIn(e,t){return{...W1n}}var Lw,k2e,mf,k0,Xl,W1n,oIn,DHt=ae(()=>{Hr();ws();Lw=Ne(m4(),1),k2e=Ne(Gi(),1);Nn();da();mf="https://frodo.douban.com",k0={},Xl=30,W1n=Object.freeze({page:1,pagecount:1,limit:0,total:0,list:[]});oIn={meta:{key:"douban",name:"\u{1F3E0} \u8C46\u74E3",type:3,indexs:1,supportSearch:!1},api:async e=>{e.post("/init",tIn),e.post("/home",rIn),e.post("/category",nIn),e.post("/detail",sIn),e.post("/play",iIn),e.post("/search",aIn)}}});var qHt={};Ft(qHt,{default:()=>xIn});async function qQ(e,t,r,n,s,i){let a=e.get(r);return a!==null?a:Un("zhuijurili",t,r,async()=>{let o=await i();return e.set(r,o),o},{timeout:3e4})}async function UHt(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let c=s++;if(c>=e.length)break;n[c]=await r(e[c],c)}},a=Math.min(t,e.length),o=new Array(a);for(let c=0;c{let i=`https://api.themoviedb.org/3/tv/${r}?api_key=${PHt}&language=zh-CN`,a=await Xe.get(i,{timeout:LHt}).catch(()=>null);if(a?.data&&a.data.success!==!1)return a.data;let o=`https://api.themoviedb.org/3/movie/${r}?api_key=${PHt}&language=zh-CN`,c=await Xe.get(o,{timeout:LHt}).catch(()=>null);return c?.data&&c.data.success!==!1?c.data:null});if(!s)return;s.poster_path&&(e.poster_path=s.poster_path),s.vote_average!==void 0&&(e.vote_average=s.vote_average),(s.first_air_date||s.release_date)&&(e.first_air_date=e.first_air_date||s.first_air_date,e.release_date=e.release_date||s.release_date),s.overview&&(e.overview=s.overview||e.overview),s.last_episode_to_air&&(e.last_episode_to_air=s.last_episode_to_air),s.next_episode_to_air&&(e.next_episode_to_air=s.next_episode_to_air),s.number_of_episodes!==void 0&&(e.number_of_episodes=s.number_of_episodes),!e.name&&!e.title&&(s.name||s.title)&&(e.name=s.name||s.title,e.title=s.title||s.name)}catch{}}async function _In(e){return qQ($Q.raw,"default",`raw:${e}`,Tc.raw.ttl,Tc.raw.maxSize,async()=>{try{let t;if(BHt.includes(e))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/${e}`;else if(e.includes("\u4ECA\u5929\u64AD\u51FA\u7684\u56FD\u6F2B")||e.includes("\u660E\u5929\u64AD\u51FA\u7684\u56FD\u6F2B"))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/guoman_${e.includes("\u4ECA\u5929")?"today":"tomorrow"}.json`;else if(e.includes("\u4ECA\u5929\u64AD\u51FA\u7684\u7EFC\u827A")||e.includes("\u660E\u5929\u64AD\u51FA\u7684\u7EFC\u827A"))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/zongyi_${e.includes("\u4ECA\u5929")?"today":"tomorrow"}.json`;else{let n="https://zjrl-1318856176.cos.accelerate.myqcloud.com",s=FHt[e];if(!s)return null;t=`${n}/${s}.json`}let r=await Xe.get(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json"},timeout:cIn});return r&&r.data?r.data:null}catch(t){return console.error("fetchRawData error:",t.message),null}})}function u3(e){return e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:e.images&&e.images.poster?e.images.poster:e.cover_url?e.cover_url:e.cover?e.cover:e.pic&&e.pic.normal?e.pic.normal:""}function HQ(e){if(e.vote_average!==void 0&&e.vote_average!==null&&e.vote_average!==""){let t=Number(e.vote_average);return Number.isNaN(t)?`\u8BC4\u5206: ${e.vote_average}`:`\u8BC4\u5206: ${t.toFixed(1)}`}return e.rating!==void 0?`\u8BC4\u5206: ${e.rating}`:e.t3!==void 0?`\u8BC4\u5206: ${e.t3}`:""}function FQ(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?"":`\u7B2C${t}\u96C6`}function AIn(e,t=""){if(!e||typeof e!="object")return"";let r=e.episode_number||e.episode||e.ep||e.current_episode||e.currentEp,n=FQ(r);if(n)return n;let s=e.next_episode_to_air?.episode_number,i=e.last_episode_to_air?.episode_number,a=t.includes("\u660E\u5929")?s:s||i;return FQ(a)||FQ(i)||FQ(s)}function VQ(e){return e.release_date?e.release_date.split("-")[0]:e.first_air_date?e.first_air_date.split("-")[0]:e.year?e.year.toString():""}function jQ(e){return e.title||e.name||e.t1||""}function EIn(e,t){try{let r=e.find(s=>s.type==="category");if(!r||!r.content)return[];let n=r.content.find(s=>s.title===t);return!n||!n.data?[]:n.data.map(s=>({vod_id:s.id?.toString()||"",vod_name:jQ(s),vod_pic:u3(s),vod_remarks:HQ(s),vod_year:VQ(s),vod_content:s.t2||s.overview||""}))}catch(r){return console.error("parseAreaData error:",r.message),[]}}function yIn(e,t){try{let r;return t==="\u4ECA\u65E5\u63A8\u8350"?r=e.find(n=>n.type==="1s"):r=e.find(n=>n.title===t),!r||!r.content?[]:r.content.map(n=>({vod_id:n.id?.toString()||"",vod_name:jQ(n),vod_pic:u3(n),vod_remarks:HQ(n),vod_year:VQ(n),vod_content:n.overview||n.description||""}))}catch(r){return console.error("parseNormalData error:",r.message),[]}}async function vIn(e,t="All"){try{let r=[];return t==="All"?fIn.forEach(s=>{e[s]&&Array.isArray(e[s])&&(r=r.concat(e[s]))}):r=e[t]||[],await UHt(r,kHt,async s=>(await $Ht(s),{vod_id:s.tmdb_id?.toString()||s.id?.toString()||"",vod_name:jQ(s),vod_pic:u3(s),vod_remarks:HQ(s),vod_year:VQ(s),vod_content:s.overview||""}))}catch(r){return console.error("parseWeekData error:",r.message),[]}}async function SIn(e,t){try{let r=Array.isArray(e)?e.find(s=>s.title===t)?.content||e:[];return Array.isArray(r)?await UHt(r,kHt,async s=>(await $Ht(s,!0),{vod_id:s.id?.toString()||s.tmdb_id?.toString()||"",vod_name:jQ(s),vod_pic:u3(s),vod_remarks:AIn(s,t)||HQ(s),vod_year:VQ(s),vod_content:s.overview||s.description||""})):[]}catch(r){return console.error("parseAiringData error:",r.message),[]}}async function MHt(e,t="All"){let r=`parsed:${e}:${t}`;return qQ($Q.parsed,"default",r,Tc.parsed.ttl,Tc.parsed.maxSize,async()=>{try{let n=await _In(e);return n?BHt.includes(e)?vIn(n,t):e.includes("\u4ECA\u5929\u64AD\u51FA\u7684")||e.includes("\u660E\u5929\u64AD\u51FA\u7684")?SIn(n,e):lIn.includes(e)?EIn(n,e):yIn(n,e):[]}catch(n){return console.error("parseRawData error:",n.message),[]}})}async function TIn(e,t){let r=e.body||{},n=r.id,s=pIn(r.page),i=r.filters||{},a=hIn(n,i),o=i.weekday||"All";if(!n||!a)return{page:1,pagecount:1,limit:c3,total:0,list:[]};let c=`category:${n}:${a}:${o}:${s}`;return qQ($Q.category,"category",c,Tc.category.ttl,Tc.category.maxSize,async()=>{let u=[];try{n==="weekPlay"?u=await MHt(a,o):u=await MHt(a)}catch(h){console.error("category error:",h.message)}let l=(s-1)*c3,d=l+c3,f=u.slice(l,d);return{page:s,pagecount:Math.ceil(u.length/c3)||1,limit:c3,total:u.length,list:f}})}async function bIn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=[];for(let s of r)n.push({vod_id:s,vod_name:`\u8FFD\u5267\u65E5\u5386\u9879\u76EE ${s}`,vod_pic:"",type_name:"\u8FFD\u5267\u65E5\u5386",vod_year:"2026",vod_area:"",vod_remarks:"\u8FFD\u5267\u65E5\u5386\u63A8\u8350",vod_actor:"",vod_director:"",vod_content:"\u8FD9\u662F\u6765\u81EA\u8FFD\u5267\u65E5\u5386\u7684\u63A8\u8350\u5185\u5BB9",vod_play_from:"\u8FFD\u5267\u65E5\u5386",vod_play_url:`\u7B2C1\u96C6$${s}`});return{list:n}}async function IIn(e,t){return{parse:0,url:"",header:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}}async function RIn(e,t){return{page:1,pagecount:1,list:[]}}async function CIn(e,t){try{let r=function(o){o.statusCode&&o.statusCode==500&&console.error(o)},n=e.server.prefix,s={},i=await e.server.inject().post(`${n}/init`),a=i.json();if(s.init=a,r(a),i=await e.server.inject().post(`${n}/home`),a=i.json(),s.home=a,r(a),s.home.class&&s.home.class.length>0){let o=s.home.class.find(u=>u.type_id==="area");o&&(i=await e.server.inject().post(`${n}/category`).payload({id:o.type_id,page:1,filters:{sort_by:"\u56FD\u4EA7\u5267"}}),a=i.json(),s.area_category=a,r(a));let c=s.home.class.find(u=>u.type_id==="todayPlay");c&&(i=await e.server.inject().post(`${n}/category`).payload({id:c.type_id,page:1,filters:{sort_by:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6"}}),a=i.json(),s.today_category=a,r(a))}return i=await e.server.inject().post(`${n}/search`).payload({wd:"\u7231",page:1}),a=i.json(),s.search=a,r(a),s}catch(r){return console.error("Test error:",r),t.code(500),{err:r.message,tip:"check debug console output"}}}var PHt,LHt,cIn,c3,kHt,uIn,lIn,BHt,dIn,fIn,Tc,$Q,FHt,xIn,HHt=ae(()=>{Hr();Nn();ws();da();sa();PHt="f090bb54758cabf231fb605d3e3e0468",LHt=8e3,cIn=1e4,c3=20,kHt=6,uIn={home1:["\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6","\u4ECA\u5929\u64AD\u51FA\u7684\u756A\u5267","\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6","\u660E\u5929\u64AD\u51FA\u7684\u756A\u5267","\u73B0\u6B63\u70ED\u64AD","\u4EBA\u6C14 Top 10","\u65B0\u5267\u96F7\u8FBE","\u70ED\u95E8\u56FD\u6F2B","\u5DF2\u6536\u5B98\u597D\u5267"],home0:["\u534E\u8BED\u70ED\u95E8","\u672C\u5B63\u65B0\u756A","\u4ECA\u65E5\u63A8\u8350","\u56FD\u4EA7\u5267","\u65E5\u5267","\u82F1\u7F8E\u5267","\u756A\u5267","\u97E9\u5267","\u6E2F\u53F0\u5267"]},lIn=["\u56FD\u4EA7\u5267","\u65E5\u5267","\u82F1\u7F8E\u5267","\u756A\u5267","\u97E9\u5267","\u6E2F\u53F0\u5267"],BHt=["juji_week.json","fanju_week.json","guoman_week.json","zongyi_week.json"],dIn={todayPlay:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6",tomorrowPlay:"\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6",weekPlay:"juji_week.json",todayReCommand:"\u4ECA\u65E5\u63A8\u8350",rank:"\u73B0\u6B63\u70ED\u64AD",area:"\u56FD\u4EA7\u5267"},fIn=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Tc={raw:{ttl:5*60*1e3,maxSize:80},parsed:{ttl:3*60*1e3,maxSize:120},category:{ttl:60*1e3,maxSize:200},tmdb:{ttl:24*60*60*1e3,maxSize:2e3}},$Q={raw:new gt(Tc.raw.maxSize,Tc.raw.ttl),parsed:new gt(Tc.parsed.maxSize,Tc.parsed.ttl),category:new gt(Tc.category.maxSize,Tc.category.ttl),tmdb:new gt(Tc.tmdb.maxSize,Tc.tmdb.ttl)};FHt={};Object.entries(uIn).forEach(([e,t])=>{t.forEach(r=>FHt[r]=e)});xIn={meta:{key:"zhuijurili",name:"\u{1F3E0} \u65E5\u5386",type:3,indexs:1},api:async e=>{e.post("/init",mIn),e.post("/home",gIn),e.post("/category",TIn),e.post("/detail",bIn),e.post("/play",IIn),e.post("/search",RIn),e.get("/test",CIn)}}});var VHt,jHt=ae(()=>{VHt=[{moduleId:"mod_1",index:0,title:"\u{1F338} \u52A8\u6F2B\u5168\u5883\u805A\u5408",functionName:"routeAnimeOmni",params:[{name:"anime_source",title:"\u9009\u62E9\u6570\u636E\u6E90",value:"cal",belongTo:null,enumOptions:[{title:"Bangumi \u8FFD\u756A\u65E5\u5386",value:"cal"},{title:"Bilibili \u70ED\u5EA6\u699C\u5355",value:"bili"},{title:"Bangumi \u8FD1\u671F\u70ED\u95E8",value:"hot"},{title:"Bangumi \u5E74\u5B63\u5EA6\u699C",value:"rank"},{title:"Bangumi \u6BCF\u65E5\u653E\u9001",value:"daily"},{title:"TMDB \u70ED\u95E8/\u65B0\u756A",value:"tmdb"},{title:"AniList \u6D41\u884C\u699C\u5355",value:"anilist"},{title:"MAL \u6743\u5A01\u699C\u5355",value:"mal"}]},{name:"cal_day",title:"\u9009\u62E9\u65E5\u671F",value:"today",belongTo:{paramName:"anime_source",value:["cal"]},enumOptions:[{title:"\u{1F4C5} \u4ECA\u65E5\u66F4\u65B0",value:"today"},{title:"\u5468\u4E00 (\u6708)",value:"1"},{title:"\u5468\u4E8C (\u706B)",value:"2"},{title:"\u5468\u4E09 (\u6C34)",value:"3"},{title:"\u5468\u56DB (\u6728)",value:"4"},{title:"\u5468\u4E94 (\u91D1)",value:"5"},{title:"\u5468\u516D (\u571F)",value:"6"},{title:"\u5468\u65E5 (\u65E5)",value:"7"}]},{name:"bili_sort",title:"\u699C\u5355\u5206\u533A",value:"1",belongTo:{paramName:"anime_source",value:["bili"]},enumOptions:[{title:"\u{1F4FA} B\u7AD9\u756A\u5267 (\u65E5\u6F2B)",value:"1"},{title:"\u{1F1E8}\u{1F1F3} B\u7AD9\u56FD\u521B (\u56FD\u6F2B)",value:"4"}]},{name:"hot_cat",title:"\u5206\u7C7B",value:"anime",belongTo:{paramName:"anime_source",value:["hot"]},enumOptions:[{title:"\u52A8\u753B",value:"anime"}]},{name:"rank_cat",title:"\u5206\u7C7B",value:"anime",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u52A8\u753B",value:"anime"},{title:"\u4E09\u6B21\u5143",value:"real"}]},{name:"rank_year",title:"\u5E74\u4EFD",value:"2026",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"2027",value:"2027"},{title:"2026",value:"2026"},{title:"2025",value:"2025"},{title:"2024",value:"2024"},{title:"2023",value:"2023"},{title:"2022",value:"2022"},{title:"2021",value:"2021"},{title:"2020",value:"2020"},{title:"2019",value:"2019"},{title:"2018",value:"2018"},{title:"2017",value:"2017"},{title:"2016",value:"2016"},{title:"2015",value:"2015"},{title:"2014",value:"2014"},{title:"2013",value:"2013"},{title:"2012",value:"2012"},{title:"2011",value:"2011"},{title:"2010",value:"2010"},{title:"2009",value:"2009"},{title:"2008",value:"2008"},{title:"2007",value:"2007"},{title:"2006",value:"2006"},{title:"2005",value:"2005"},{title:"2004",value:"2004"},{title:"2003",value:"2003"},{title:"2002",value:"2002"},{title:"2001",value:"2001"},{title:"2000",value:"2000"},{title:"1999",value:"1999"},{title:"1998",value:"1998"},{title:"1997",value:"1997"},{title:"1996",value:"1996"},{title:"1995",value:"1995"},{title:"1994",value:"1994"},{title:"1993",value:"1993"},{title:"1992",value:"1992"},{title:"1991",value:"1991"},{title:"1990",value:"1990"},{title:"1989",value:"1989"},{title:"1988",value:"1988"},{title:"1987",value:"1987"},{title:"1986",value:"1986"},{title:"1985",value:"1985"},{title:"1984",value:"1984"},{title:"1983",value:"1983"},{title:"1982",value:"1982"},{title:"1981",value:"1981"},{title:"1980",value:"1980"},{title:"1979",value:"1979"},{title:"1978",value:"1978"},{title:"1977",value:"1977"},{title:"1976",value:"1976"},{title:"1975",value:"1975"},{title:"1974",value:"1974"},{title:"1973",value:"1973"},{title:"1972",value:"1972"},{title:"1971",value:"1971"},{title:"1970",value:"1970"},{title:"1969",value:"1969"},{title:"1968",value:"1968"},{title:"1967",value:"1967"},{title:"1966",value:"1966"},{title:"1965",value:"1965"},{title:"1964",value:"1964"},{title:"1963",value:"1963"},{title:"1962",value:"1962"},{title:"1961",value:"1961"},{title:"1960",value:"1960"},{title:"1959",value:"1959"},{title:"1958",value:"1958"},{title:"1957",value:"1957"},{title:"1956",value:"1956"},{title:"1955",value:"1955"},{title:"1954",value:"1954"},{title:"1953",value:"1953"},{title:"1952",value:"1952"},{title:"1951",value:"1951"},{title:"1950",value:"1950"},{title:"1949",value:"1949"},{title:"1948",value:"1948"},{title:"1947",value:"1947"},{title:"1946",value:"1946"},{title:"1945",value:"1945"},{title:"1944",value:"1944"},{title:"1943",value:"1943"},{title:"1942",value:"1942"},{title:"1941",value:"1941"},{title:"1940",value:"1940"}]},{name:"rank_month",title:"\u6708\u4EFD/\u5B63\u5EA6",value:"all",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u5168\u5E74",value:"all"},{title:"\u51AC\u5B63 (1\u6708)",value:"1"},{title:"\u6625\u5B63 (4\u6708)",value:"4"},{title:"\u590F\u5B63 (7\u6708)",value:"7"},{title:"\u79CB\u5B63 (10\u6708)",value:"10"}]},{name:"rank_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"collects",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u6392\u540D",value:"rank"},{title:"\u70ED\u5EA6",value:"trends"},{title:"\u6536\u85CF\u6570",value:"collects"},{title:"\u53D1\u552E\u65E5\u671F",value:"date"},{title:"\u540D\u79F0",value:"title"}]},{name:"daily_filter",title:"\u7B5B\u9009\u8303\u56F4",value:"today",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u4ECA\u65E5\u653E\u9001",value:"today"},{title:"\u6307\u5B9A\u5355\u65E5",value:"specific_day"},{title:"\u672C\u5468\u4E00\u81F3\u56DB",value:"mon_thu"},{title:"\u672C\u5468\u4E94\u81F3\u65E5",value:"fri_sun"},{title:"\u6574\u5468\u653E\u9001",value:"all_week"}]},{name:"daily_weekday",title:"\u6307\u5B9A\u5355\u65E5\u661F\u671F",value:"1",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u661F\u671F\u4E00",value:"1"},{title:"\u661F\u671F\u4E8C",value:"2"},{title:"\u661F\u671F\u4E09",value:"3"},{title:"\u661F\u671F\u56DB",value:"4"},{title:"\u661F\u671F\u4E94",value:"5"},{title:"\u661F\u671F\u516D",value:"6"},{title:"\u661F\u671F\u65E5",value:"7"}]},{name:"daily_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"popularity_rat_bgm",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u70ED\u5EA6(\u8BC4\u5206\u4EBA\u6570)",value:"popularity_rat_bgm"},{title:"\u8BC4\u5206",value:"score_bgm_desc"},{title:"\u653E\u9001\u65E5(\u66F4\u65B0\u65E5\u671F)",value:"airdate_desc"},{title:"\u9ED8\u8BA4",value:"default"}]},{name:"tmdb_sort",title:"\u699C\u5355\u7C7B\u578B",value:"trending",belongTo:{paramName:"anime_source",value:["tmdb"]},enumOptions:[{title:"\u{1F525} \u5B9E\u65F6\u6D41\u884C (Trending)",value:"trending"},{title:"\u{1F4C5} \u6700\u65B0\u9996\u64AD (New)",value:"new"},{title:"\u{1F451} \u9AD8\u5206\u795E\u4F5C (Top Rated)",value:"top"}]},{name:"anilist_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"TRENDING_DESC",belongTo:{paramName:"anime_source",value:["anilist"]},enumOptions:[{title:"\u{1F4C8} \u8FD1\u671F\u8D8B\u52BF (Trending)",value:"TRENDING_DESC"},{title:"\u{1F496} \u5386\u53F2\u4EBA\u6C14 (Popularity)",value:"POPULARITY_DESC"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8 (Score)",value:"SCORE_DESC"}]},{name:"mal_sort",title:"\u699C\u5355\u7C7B\u578B",value:"airing",belongTo:{paramName:"anime_source",value:["mal"]},enumOptions:[{title:"\u{1F525} \u5F53\u524D\u70ED\u64AD Top",value:"airing"},{title:"\u{1F3C6} \u5386\u53F2\u603B\u699C Top",value:"all"},{title:"\u{1F3A5} \u6700\u4F73\u5267\u573A\u7248",value:"movie"},{title:"\u{1F51C} \u5373\u5C06\u4E0A\u6620",value:"upcoming"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_2",index:1,title:"\u{1F3F7}\uFE0F \u5168\u7403\u5F71\u5267\u7C7B\u522B",functionName:"loadGenreRank",params:[{name:"sort_by",title:"\u5F71\u89C6\u7C7B\u578B",value:"all",belongTo:null,enumOptions:[{title:"\u{1F31F} \u5168\u90E8 (\u5F71+\u5267\u6DF7\u5408)",value:"all"},{title:"\u{1F3AC} \u7535\u5F71 (Movie)",value:"movie"},{title:"\u{1F4FA} \u7535\u89C6\u5267 (TV)",value:"tv"}]},{name:"genre",title:"\u9898\u6750\u6D41\u6D3E",value:"all",belongTo:null,enumOptions:[{title:"\u{1F31F} \u5168\u90E8\u9898\u6750 (All)",value:"all"},{title:"\u{1F6F8} \u79D1\u5E7B (Sci-Fi)",value:"scifi"},{title:"\u{1F50D} \u60AC\u7591 (Mystery)",value:"mystery"},{title:"\u{1F47B} \u6050\u6016 (Horror)",value:"horror"},{title:"\u{1F52A} \u72AF\u7F6A (Crime)",value:"crime"},{title:"\u{1F4A5} \u52A8\u4F5C (Action)",value:"action"},{title:"\u{1F602} \u559C\u5267 (Comedy)",value:"comedy"},{title:"\u2764\uFE0F \u7231\u60C5 (Romance)",value:"romance"},{title:"\u{1F3AD} \u5267\u60C5 (Drama)",value:"drama"},{title:"\u{1F409} \u5947\u5E7B (Fantasy)",value:"fantasy"},{title:"\u{1F3A8} \u52A8\u753B (Animation)",value:"animation"},{title:"\u{1F3A5} \u7EAA\u5F55\u7247 (Documentary)",value:"documentary"}]},{name:"region",title:"\u56FD\u5BB6/\u5730\u533A",value:"all",belongTo:null,enumOptions:[{title:"\u{1F30D} \u5168\u7403 (\u6240\u6709\u56FD\u5BB6)",value:"all"},{title:"\u{1F1E8}\u{1F1F3} \u4E2D\u56FD\u5927\u9646",value:"cn"},{title:"\u{1F1ED}\u{1F1F0} \u4E2D\u56FD\u9999\u6E2F",value:"hk"},{title:"\u{1F1F9}\u{1F1FC} \u4E2D\u56FD\u53F0\u6E7E",value:"tw"},{title:"\u{1F3EE} \u6E2F\u53F0 (\u9999\u6E2F+\u53F0\u6E7E)",value:"hktw"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"jp"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"kr"},{title:"\u{1F338} \u65E5\u97E9\u5408\u96C6",value:"jpkr"},{title:"\u{1F1F9}\u{1F1ED} \u6CF0\u56FD",value:"th"},{title:"\u{1F1F8}\u{1F1EC} \u65B0\u52A0\u5761",value:"sg"},{title:"\u{1F1F2}\u{1F1FE} \u9A6C\u6765\u897F\u4E9A",value:"my"},{title:"\u{1F1EE}\u{1F1F3} \u5370\u5EA6",value:"in"},{title:"\u{1F30F} \u4E9A\u592A\u5927\u533A",value:"apac"},{title:"\u{1F1FA}\u{1F1F8} \u7F8E\u56FD",value:"us"},{title:"\u{1F1EC}\u{1F1E7} \u82F1\u56FD",value:"gb"},{title:"\u{1F1E9}\u{1F1EA} \u5FB7\u56FD",value:"de"},{title:"\u{1F1F8}\u{1F1EA} \u745E\u5178",value:"se"},{title:"\u{1F1EA}\u{1F1FA} \u6B27\u6D32\u5168\u5883",value:"europe"},{title:"\u{1F1EA}\u{1F1F8} \u897F\u73ED\u7259",value:"es"},{title:"\u{1F1F2}\u{1F1FD} \u58A8\u897F\u54E5",value:"mx"},{title:"\u{1F483} \u897F\u8BED/\u62C9\u4E01\u7F8E\u6D32",value:"latin"}]},{name:"order_rule",title:"\u6392\u5E8F\u89C4\u5219",value:"popularity",belongTo:null,enumOptions:[{title:"\u{1F525} \u70ED\u95E8\u8D8B\u52BF",value:"popularity"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8",value:"rating"},{title:"\u{1F4C5} \u6700\u65B0\u4E0A\u7EBF",value:"time"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_3",index:2,title:"\u{1F3AC} \u5168\u80FD\u7535\u5F71\u699C\u5355",functionName:"routeMovieOmni",params:[{name:"movie_source",title:"\u699C\u5355\u6A21\u5F0F",value:"general",belongTo:null,enumOptions:[{title:"\u{1F525} \u7535\u5F71\u7EFC\u5408\u699C",value:"general"},{title:"\u{1F3C6} \u5E74\u5EA6\u6700\u4F73\u7535\u5F71",value:"yearly"},{title:"\u{1F3F7}\uFE0F \u6309\u7C7B\u578B\u63A2\u7D22",value:"genre"}]},{name:"general_sort",title:"\u699C\u5355\u5206\u7C7B",value:"popular",belongTo:{paramName:"movie_source",value:["general"]},enumOptions:[{title:"\u{1F525} \u6D41\u884C\u8D8B\u52BF (Popular)",value:"popular"},{title:"\u2B50\uFE0F \u5386\u53F2\u9AD8\u5206 (Top Rated)",value:"top_rated"},{title:"\u{1F4B0} \u5168\u7403\u7968\u623F\u699C (Box Office)",value:"box_office"},{title:"\u{1F3C6} \u5965\u65AF\u5361\u4F73\u7247 (Oscar)",value:"oscar"}]},{name:"yearly_sort",title:"\u9009\u62E9\u5E74\u4EFD",value:"2024",belongTo:{paramName:"movie_source",value:["yearly"]},enumOptions:[{title:"2025\u5E74 \u6700\u4F73",value:"2025"},{title:"2024\u5E74 \u6700\u4F73",value:"2024"},{title:"2023\u5E74 \u6700\u4F73",value:"2023"},{title:"2022\u5E74 \u6700\u4F73",value:"2022"},{title:"2021\u5E74 \u6700\u4F73",value:"2021"},{title:"2020\u5E74 \u6700\u4F73",value:"2020"},{title:"2019\u5E74 \u6700\u4F73",value:"2019"},{title:"2018\u5E74 \u6700\u4F73",value:"2018"},{title:"2017\u5E74 \u6700\u4F73",value:"2017"},{title:"2016\u5E74 \u6700\u4F73",value:"2016"},{title:"2015\u5E74 \u6700\u4F73",value:"2015"}]},{name:"genre_sort",title:"\u9009\u62E9\u7C7B\u578B",value:"878",belongTo:{paramName:"movie_source",value:["genre"]},enumOptions:[{title:"\u{1F6F8} \u79D1\u5E7B (Sci-Fi)",value:"878"},{title:"\u{1F3AD} \u5267\u60C5 (Drama)",value:"18"},{title:"\u{1F92F} \u60AC\u7591 (Mystery)",value:"9648"},{title:"\u{1F4A5} \u52A8\u4F5C (Action)",value:"28"},{title:"\u{1F602} \u559C\u5267 (Comedy)",value:"35"},{title:"\u2764\uFE0F \u7231\u60C5 (Romance)",value:"10749"},{title:"\u{1F47B} \u6050\u6016 (Horror)",value:"27"},{title:"\u{1F52A} \u72AF\u7F6A (Crime)",value:"80"},{title:"\u{1F9D9}\u200D\u2642\uFE0F \u5947\u5E7B (Fantasy)",value:"14"},{title:"\u{1F984} \u52A8\u753B (Animation)",value:"16"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_4",index:3,title:"\u{1F4FA} \u5168\u7403\u7EFC\u827A\u9891\u9053",functionName:"loadVarietyShows",params:[{name:"sort_by",title:"\u56FD\u5BB6/\u5730\u533A",value:"cn",belongTo:null,enumOptions:[{title:"\u{1F1E8}\u{1F1F3} \u4E2D\u56FD\u5927\u9646",value:"cn"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"kr"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"jp"},{title:"\u{1F1F9}\u{1F1FC} \u4E2D\u56FD\u53F0\u6E7E",value:"tw"},{title:"\u{1F1ED}\u{1F1F0} \u4E2D\u56FD\u9999\u6E2F",value:"hk"},{title:"\u{1F1FA}\u{1F1F8} \u6B27\u7F8E\u7EFC\u5408",value:"eu_us"},{title:"\u{1F30D} \u5168\u7403\u7EFC\u5408",value:"all"}]},{name:"list_type",title:"\u6392\u64AD\u4E0E\u699C\u5355",value:"hot",belongTo:null,enumOptions:[{title:"\u{1F525} \u8FD1\u671F\u70ED\u64AD (Hot)",value:"hot"},{title:"\u{1F4C5} \u4ECA\u65E5\u66F4\u65B0 (Today)",value:"today"},{title:"\u{1F51C} \u660E\u65E5\u9884\u544A (Tomorrow)",value:"tomorrow"},{title:"\u{1F4C8} \u6D41\u884C\u8D8B\u52BF (5\u5E74\u5185\u70ED\u699C)",value:"trend"},{title:"\u2B50 \u9AD8\u5206\u795E\u7EA7 (Top Rated)",value:"top"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_5",index:4,title:"\u{1F9ED} \u5F71\u5267\u6D41\u884C\u98CE\u5411",functionName:"routeTrendsHub",params:[{name:"hub_source",title:"\u9009\u62E9\u5E73\u53F0",value:"imdb",belongTo:null,enumOptions:[{title:"\u{1F7E1} IMDb \u6743\u5A01\u699C\u5355",value:"imdb"},{title:"\u{1F345} \u70C2\u756A\u8304\u98CE\u5411\u6807",value:"rt"},{title:"\u{1F30D} Trakt \u8D8B\u52BF\u699C",value:"trakt"},{title:"\u{1F7E2} \u8C46\u74E3 \u56FD\u5185\u98CE\u5411",value:"douban"}]},{name:"imdb_sort",title:"IMDb \u699C\u5355",value:"trending_week",belongTo:{paramName:"hub_source",value:["imdb"]},enumOptions:[{title:"\u{1F4C5} \u672C\u5468\u70ED\u699C (Trending Week)",value:"trending_week"},{title:"\u{1F525} \u4ECA\u65E5\u70ED\u699C (Trending Day)",value:"trending_day"},{title:"\u{1F30A} \u6D41\u884C\u8D8B\u52BF (Popular)",value:"popular"},{title:"\u{1F48E} \u9AD8\u5206\u795E\u4F5C (Top Rated)",value:"top_rated"},{title:"\u{1F1E8}\u{1F1F3} \u56FD\u4EA7\u5267\u70ED\u5EA6(\u6A21\u62DF)",value:"china_tv"},{title:"\u{1F1E8}\u{1F1F3} \u56FD\u4EA7\u7535\u5F71\u70ED\u5EA6(\u6A21\u62DF)",value:"china_movie"}]},{name:"mediaType",title:"\u8303\u56F4 (\u4EC5\u5168\u7403\u699C\u6709\u6548)",value:"all",belongTo:{paramName:"imdb_sort",value:["trending_week","trending_day","popular","top_rated"]},enumOptions:[{title:"\u5168\u90E8 (\u5267\u96C6+\u7535\u5F71)",value:"all"},{title:"\u7535\u5F71",value:"movie"},{title:"\u5267\u96C6",value:"tv"}]},{name:"rt_sort",title:"\u70C2\u756A\u8304 \u699C\u5355",value:"rt_movies_home",belongTo:{paramName:"hub_source",value:["rt"]},enumOptions:[{title:"\u{1F3AC} \u6D41\u5A92\u4F53\u70ED\u6620",value:"rt_movies_home"},{title:"\u{1F37F} \u9662\u7EBF\u70ED\u6620",value:"rt_movies_theater"},{title:"\u{1F48E} \u6700\u4F73\u6D41\u5A92\u4F53",value:"rt_movies_best"},{title:"\u{1F4FA} \u70ED\u95E8\u5267\u96C6",value:"rt_tv_popular"},{title:"\u{1F195} \u6700\u65B0\u4E0A\u7EBF",value:"rt_tv_new"}]},{name:"trakt_sort",title:"Trakt \u699C\u5355",value:"trending",belongTo:{paramName:"hub_source",value:["trakt"]},enumOptions:[{title:"\u{1F525} \u5B9E\u65F6\u70ED\u64AD (Trending)",value:"trending"},{title:"\u{1F30A} \u6700\u53D7\u6B22\u8FCE (Popular)",value:"popular"},{title:"\u2764\uFE0F \u6700\u53D7\u671F\u5F85 (Anticipated)",value:"anticipated"}]},{name:"traktType",title:"Trakt \u7C7B\u578B",value:"all",belongTo:{paramName:"hub_source",value:["trakt"]},enumOptions:[{title:"\u5168\u90E8 (\u5267\u96C6+\u7535\u5F71)",value:"all"},{title:"\u5267\u96C6",value:"shows"},{title:"\u7535\u5F71",value:"movies"}]},{name:"db_sort",title:"\u8C46\u74E3 \u699C\u5355",value:"db_tv_cn",belongTo:{paramName:"hub_source",value:["douban"]},enumOptions:[{title:"\u{1F1E8}\u{1F1F3} \u70ED\u95E8\u56FD\u4EA7\u5267",value:"db_tv_cn"},{title:"\u{1F3A4} \u70ED\u95E8\u7EFC\u827A",value:"db_variety"},{title:"\u{1F3AC} \u70ED\u95E8\u7535\u5F71",value:"db_movie"},{title:"\u{1F1FA}\u{1F1F8} \u70ED\u95E8\u7F8E\u5267",value:"db_tv_us"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_6",index:5,title:"\u{1F500} \u5E73\u53F0\u5206\u6D41\u7247\u5E93",functionName:"loadPlatformMatrix",params:[{name:"sort_by",title:"\u5185\u5BB9\u5206\u7C7B",value:"tv_drama",belongTo:null,enumOptions:[{title:"\u{1F4FA} \u7535\u89C6\u5267",value:"tv_drama"},{title:"\u{1F3A4} \u7EFC\u827A",value:"tv_variety"},{title:"\u{1F432} \u52A8\u6F2B",value:"tv_anime"},{title:"\u{1F3AC} \u7535\u5F71",value:"movie"}]},{name:"platform",title:"\u64AD\u51FA\u5E73\u53F0",value:"2007",belongTo:null,enumOptions:[{title:"\u817E\u8BAF\u89C6\u9891",value:"2007"},{title:"\u7231\u5947\u827A",value:"1330"},{title:"\u4F18\u9177",value:"1419"},{title:"\u8292\u679CTV",value:"1631"},{title:"Bilibili",value:"1605"},{title:"Netflix",value:"213"},{title:"Disney+",value:"2739"},{title:"HBO",value:"49"},{title:"Apple TV+",value:"2552"}]},{name:"sort",title:"\u6392\u5E8F",value:"popularity.desc",belongTo:null,enumOptions:[{title:"\u{1F525} \u70ED\u5EA6\u6700\u9AD8",value:"popularity.desc"},{title:"\u{1F4C5} \u6700\u65B0\u9996\u64AD",value:"first_air_date.desc"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8",value:"vote_average.desc"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_7",index:6,title:"\u{1F947} \u6D41\u5A92\u4F53TOP10",functionName:"loadOfficialTop10",params:[{name:"sort_by",title:"\u699C\u5355\u5730\u533A",value:"united-states",belongTo:null,enumOptions:[{title:"\u{1F1FA}\u{1F1F8} \u7F8E\u56FD",value:"united-states"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"south-korea"},{title:"\u{1F1F9}\u{1F1FC} \u53F0\u6E7E",value:"taiwan"},{title:"\u{1F1ED}\u{1F1F0} \u9999\u6E2F",value:"hong-kong"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"japan"},{title:"\u{1F1EC}\u{1F1E7} \u82F1\u56FD",value:"united-kingdom"},{title:"\u{1F30D} \u5168\u7403",value:"world"}]},{name:"platform",title:"\u6D41\u5A92\u4F53\u5E73\u53F0",value:"netflix",belongTo:null,enumOptions:[{title:"Netflix",value:"netflix"},{title:"HBO",value:"hbo"},{title:"Disney+",value:"disney"},{title:"Apple TV+",value:"apple-tv"},{title:"Amazon Prime",value:"amazon-prime"}]},{name:"mediaType",title:"\u699C\u5355\u7C7B\u578B",value:"tv",belongTo:null,enumOptions:[{title:"\u{1F4FA} \u5267\u96C6 (TV Shows)",value:"tv"},{title:"\u{1F3AC} \u7535\u5F71 (Movies)",value:"movie"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]}]});var sVt={};Ft(sVt,{default:()=>CRn});async function H2e(e,t,r,n){let s=KHt[e]||KHt.category,i=s.get(t);return i!==null?i:Un("zhuijujuhe",e,t,async()=>{let a=await n();return s.set(t,a),a},{timeout:3e4})}function JHt(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}function $2e(e=""){return String(e).replace(/[\u{1F300}-\u{1FAFF}\u{2600}-\u{27BF}]/gu,"").replace(/\s+/g," ").trim()}function ti(e,t=""){return e==null?t:String(e).trim()}function ZHt(e,t){return`${DIn}/${e==="movie"?"movie":"tv"}/${t}`}async function xp(e,t={}){let r={"User-Agent":WHt,...t.headers||{}};return Xe.get(e,{...t,headers:r})}async function ta(e,t={}){let r={api_key:wIn,language:"zh-CN",...t.params||{}};return(await xp(`${OIn}${e}`,{...t,params:r,timeout:t.timeout||15e3}))?.data||{}}function LIn(e){return`mod_${e+1}`}function eVt(){let e=new Map;return VHt.forEach((t,r)=>{e.set(LIn(r),{...t,__index:r})}),e}function GHt(e=[]){return e.filter(t=>t&&t.name!=="page").map(t=>({key:t.name,name:t.title||t.name,init:t.value??"",showWhen:t.belongTo?{key:t.belongTo.paramName,values:Array.isArray(t.belongTo.value)?t.belongTo.value:[t.belongTo.value]}:null,value:Array.isArray(t.enumOptions)?t.enumOptions.map(r=>({n:ti(r.title||r.label||r.value),v:ti(r.value)})):[]}))}function MIn(e){return(e.params||[]).find(t=>t&&!t.belongTo&&t.name!=="page"&&Array.isArray(t.enumOptions)&&t.enumOptions.length>1)}function kIn(e,t,r){return`${e}__${t}__${r}`}function BIn(e){let t=String(e).match(/^(mod_\d+)__([^_]+(?:_[^_]+)*)__(.+)$/);return t?{moduleId:t[1],rootParamName:t[2],rootValue:t[3]}:null}function UIn(){let e=eVt(),t=[],r={};for(let[n,s]of e.entries()){let i=MIn(s),a=qIn(s,i);if(!i||!a){t.push({type_id:n,type_name:$2e(s.title||s.functionName||n)}),r[n]=GHt(s.params||[]);continue}for(let o of i.enumOptions||[]){let c=kIn(n,i.name,ti(o.value)),u=$2e(o.title||o.label||o.value||`${s.title}`),l={[i.name]:ti(o.value)},d=(s.params||[]).filter(f=>!f||f.name==="page"||f.name===i.name?!1:nVt(f,l));t.push({type_id:c,type_name:u}),r[c]=HIn(c,GHt(d).map(f=>({...f,showWhen:null})))}}return{classes:t,filters:r}}async function FIn(e){try{let t=await e?.db?.getObjectDefault("/config/zhuiju",{});return t&&typeof t=="object"?t:{}}catch{return{}}}function $In(e=[],t={},r={}){let n=r?.classes&&typeof r.classes=="object"?r.classes:{},i=e.map((o,c)=>{let u=n[o.type_id]||{};return{...o,type_name:ti(u.name,o.type_name)||o.type_name,__hidden:u.hidden===!0,__order:Number.isFinite(Number(u.order))?Number(u.order):c+1}}).filter(o=>!o.__hidden).sort((o,c)=>o.__order-c.__order||o.type_name.localeCompare(c.type_name,"zh-CN")).map(({__hidden:o,__order:c,...u})=>u),a={};return i.forEach(o=>{a[o.type_id]=t[o.type_id]||[]}),{classes:i,filters:a}}function qIn(e,t){return t?!!new Set(["anime_source","movie_source","hub_source"]).has(t.name):!1}function HIn(e,t=[]){let r=VIn(e);return!r||!Object.keys(r).length?t:t.map(n=>Object.prototype.hasOwnProperty.call(r,n.key)?{...n,init:r[n.key]}:n)}function VIn(e){switch(e){case"mod_5__hub_source__imdb":return{imdb_sort:"trending_week",mediaType:"all"};case"mod_6__sort_by__movie":return{platform:"213",sort:"popularity.desc"};case"mod_7__sort_by__united-kingdom":return{platform:"netflix",mediaType:"tv"};default:return null}}function jIn(e,t=""){let r=ti(e?.tmdbId||e?.id),n=ti(e?.title,"\u672A\u547D\u540D"),s=ti(e?.subTitle||e?.genreTitle||e?.date||e?.releaseDate,t),i=ti(e?.description||e?.desc||e?.overview,"\u6682\u65E0\u7B80\u4ECB"),a=ti(e?.posterPath||e?.poster||e?.cover||e?.image),o=ti(e?.year||(e?.releaseDate||e?.date||"").slice(0,4));return{vod_id:`${e?.mediaType==="movie"?"movie":"tv"}:${r}`,vod_name:n,vod_pic:a,vod_remarks:s,vod_year:o,vod_content:i,vod_tag:ti(e?.genreTitle)}}function B0(e){if(!e||!Array.isArray(e))return"\u5F71\u89C6";let t=e.map(r=>PIn[r]).filter(Boolean);return t.length>0?t.slice(0,2).join(" / "):"\u5F71\u89C6"}function kw({id:e,tmdbId:t,type:r,title:n,date:s,poster:i,backdrop:a,genreText:o,subTitle:c,desc:u}){let l=[s,c].filter(Boolean).join(" \xB7 "),d=u?` -${u}`:` -\u6682\u65E0\u7B80\u4ECB`;return{id:String(e),tmdbId:parseInt(t,10)||parseInt(e,10),type:"tmdb",mediaType:r,title:n,genreTitle:o||(r==="tv"?"\u5267\u96C6":"\u7535\u5F71"),description:l?l+d:u||"\u6682\u65E0\u7B80\u4ECB",releaseDate:s,posterPath:i?String(i).startsWith("http")?String(i):`https://image.tmdb.org/t/p/w500${i}`:"",backdropPath:a?String(a).startsWith("http")?String(a):`https://image.tmdb.org/t/p/w780${a}`:"",subTitle:c}}function zHt(e){return ti(e).replace(/[./]/g,"-")}async function KIn(e,t={},r={}){let n={"User-Agent":WHt,"Content-Type":"application/json",...r.headers||{}};return Xe.post(e,t,{...r,headers:n})}async function f3(e,t,r){async function n(i){if(!i||typeof i!="string")return null;let a=i.replace(/第[一二三四五六七八九十\d]+[季章]/g,"").replace(/Season \d+/i,"").trim();try{let o={query:a,language:"zh-CN",include_adult:!1};r&&(o.first_air_date_year=r);let c=await ta("/search/tv",{params:o}),u=c.results||[];u.length===0&&r&&(delete o.first_air_date_year,c=await ta("/search/tv",{params:o}),u=c.results||[]);let l=u.filter(h=>Array.isArray(h.genre_ids)&&h.genre_ids.includes(16));if(l.length>0)return l.find(h=>h.poster_path)||l[0];let d={query:a,language:"zh-CN",include_adult:!1};r&&(d.primary_release_year=r),c=await ta("/search/movie",{params:d}),u=c.results||[],u.length===0&&r&&(delete d.primary_release_year,c=await ta("/search/movie",{params:d}),u=c.results||[]);let f=u.filter(h=>Array.isArray(h.genre_ids)&&h.genre_ids.includes(16));if(f.length>0)return f.find(h=>h.poster_path)||f[0]}catch{}return null}let s=await n(e);return!s&&t&&e!==t&&(s=await n(t)),s}async function q2e(e){return Array.isArray(e)?(await Promise.all(e.map(async r=>{let n=r.name_cn||r.title||r.name,s=r.title!==n?r.title:null,i=r.releaseDate||r.description||r.air_date||r.info||"",a=ti(i).match(/(\d{4})/),o=a?a[1]:null,c=await f3(n,s,o);return c?{id:String(c.id),tmdbId:parseInt(c.id,10),type:"tmdb",mediaType:c.title?"movie":"tv",title:c.name||c.title||n,genreTitle:B0(c.genre_ids),description:c.first_air_date||c.release_date||zHt(i)||"\u5373\u5C06\u64AD\u51FA",releaseDate:c.first_air_date||c.release_date||zHt(i),posterPath:c.poster_path?`https://image.tmdb.org/t/p/w500${c.poster_path}`:"",backdropPath:c.backdrop_path?`https://image.tmdb.org/t/p/w780${c.backdrop_path}`:"",rating:c.vote_average?c.vote_average.toFixed(1):r.rating||"0.0"}:null}))).filter(Boolean):[]}async function GIn(e={}){let{sort_by:t="today",page:r=1}=e,n=parseInt(t,10);if(t==="today"){let s=new Date().getDay();n=s===0?7:s}try{let i=((await xp("https://api.bgm.tv/calendar")).data||[]).find(u=>u.weekday&&u.weekday.id===n);if(!i)return[];let a=20,o=i.items.slice((r-1)*a,r*a);return(await Promise.all(o.map(async u=>{let l=ti(u.name_cn||u.name).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim(),d=u.air_date?u.air_date.substring(0,4):null,f=await f3(l,u.name,d);return f?kw({id:f.id,tmdbId:f.id,type:"tv",title:f.name||f.title||u.name_cn||u.name,date:f.first_air_date||u.air_date,poster:f.poster_path,backdrop:f.backdrop_path,genreText:B0(f.genre_ids),desc:f.overview||u.summary||"\u6682\u65E0\u7B80\u4ECB"}):null}))).filter(Boolean)}catch{return[]}}async function zIn(e={}){let t=e.category||"anime",r=parseInt(e.page||"1",10),n=20,s=(r-1)*n,i=await H2e("home",`bangumi-hot:${t}`,KQ,async()=>(await xp(NIn,{timeout:15e3}))?.data||{}),o=(t==="anime"?i?.hot_anime||[]:Array.isArray(i?.[t])?i[t]:[]).slice(s,s+n);return o.length?o.map((c,u)=>{let l=ti(c.description).split(` -`),d=l.length>1?l.slice(1).join(` -`):c.description;return kw({id:c.id,tmdbId:c.tmdbId,type:c.mediaType||c.type||"tv",title:c.title,date:c.releaseDate||"",poster:c.posterPath,backdrop:c.backdropPath,genreText:c.genreTitle,subTitle:`\u{1F525} \u70ED\u5EA6 TOP ${s+u+1}`,desc:d||"\u6682\u65E0\u7B80\u4ECB"})}):d3({sort_by:"trending",page:r})}async function YIn(e={}){let t=e.category||"anime",r=e.year||`${new Date().getFullYear()}`,n=e.month||"all",s=e.sort||"collects",i=parseInt(e.page||"1",10),a=`airtime-${t}-${r}-${n}-${s}-${i}`;if(Mw.airtime[a])return q2e(Mw.airtime[a]);let o=`https://bgm.tv/${t}/browser/airtime/${r}/${n}?sort=${s}&page=${i}`,c=await tVt.processBangumiPage(o);if(!c.length)return d3({sort_by:s==="date"?"new":s==="rank"?"top":"trending",page:i});Mw.airtime[a]=c;let u=await q2e(c);return u.length?u:d3({sort_by:s==="date"?"new":s==="rank"?"top":"trending",page:i})}async function QIn(e={}){Mw.daily.length||(Mw.daily=await tVt.processDailyCalendar());let t=Mw.daily||[],{filterType:r="today",specificWeekday:n="1",dailySortOrder:s="popularity_rat_bgm"}=e,i={0:7,1:1,2:2,3:3,4:4,5:5,6:6},a=[];if(r==="all_week")a=t;else{let c=new Date().getDay(),u=new Set;switch(r){case"today":u.add(i[c]);break;case"specific_day":u.add(parseInt(n,10));break;case"mon_thu":[1,2,3,4].forEach(l=>u.add(l));break;case"fri_sun":[5,6,7].forEach(l=>u.add(l));break;default:u.add(i[c])}a=t.filter(l=>l.bgm_weekday_id&&u.has(l.bgm_weekday_id))}let o=[...a];return s!=="default"&&o.sort((c,u)=>s==="popularity_rat_bgm"?(u.bgm_rating_total||0)-(c.bgm_rating_total||0):s==="score_bgm_desc"?(u.bgm_score||0)-(c.bgm_score||0):s==="airdate_desc"?new Date(u.air_date||0).getTime()-new Date(c.air_date||0).getTime():0),q2e(o)}async function WIn(e={}){let{sort_by:t="1",page:r=1}=e,n=`https://api.bilibili.com/pgc/web/rank/list?day=3&season_type=${t}`;try{let s=await xp(n,{headers:{Referer:"https://www.bilibili.com/"}}),i=s.data?.result?.list||s.data?.data?.list||[],a=20,o=i.slice((r-1)*a,r*a);return(await Promise.all(o.map(async u=>{let l=ti(u.title).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim(),d=await f3(l,u.title,null);return d?kw({id:d.id,tmdbId:d.id,type:"tv",title:d.name||d.title,date:d.first_air_date,poster:d.poster_path,backdrop:d.backdrop_path,genreText:B0(d.genre_ids),desc:d.overview,subTitle:u.new_ep?.index_show||"\u70ED\u64AD\u4E2D"}):null}))).filter(Boolean)}catch{return[]}}async function d3(e={}){let{sort_by:t="trending",page:r=1}=e,n={language:"zh-CN",page:r,with_genres:"16",with_original_language:"ja"};t==="trending"?n.sort_by="popularity.desc":t==="new"?n.sort_by="first_air_date.desc":t==="top"&&(n.sort_by="vote_average.desc");try{return((await ta("/discover/tv",{params:n})).results||[]).map(i=>kw({id:i.id,tmdbId:i.id,type:"tv",title:i.name||i.title,date:i.first_air_date,poster:i.poster_path,backdrop:i.backdrop_path,genreText:B0(i.genre_ids),desc:i.overview}))}catch{return[]}}async function XIn(e={}){let{sort_by:t="TRENDING_DESC",page:r=1}=e,n=`query ($page: Int, $perPage: Int) { Page (page: $page, perPage: $perPage) { media (sort: ${t}, type: ANIME) { title { native romaji english } averageScore seasonYear } } }`;try{let i=(await KIn("https://graphql.anilist.co",{query:n,variables:{page:r,perPage:20}})).data?.data?.Page?.media||[];return(await Promise.all(i.map(async o=>{let c=await f3(o.title.native||o.title.romaji,o.title.english,o.seasonYear);return c?kw({id:c.id,tmdbId:c.id,type:"tv",title:c.name||c.title,date:c.first_air_date,poster:c.poster_path,backdrop:c.backdrop_path,genreText:B0(c.genre_ids),desc:c.overview}):null}))).filter(Boolean)}catch{return[]}}async function JIn(e={}){let{sort_by:t="airing",page:r=1}=e,n={page:r};t==="airing"?n.filter="airing":t==="upcoming"&&(n.filter="upcoming");try{let i=(await xp("https://api.jikan.moe/v4/top/anime",{params:n})).data?.data||[];return(await Promise.all(i.map(async o=>{let c=await f3(o.title_japanese||o.title,o.title_english,null);return c?kw({id:c.id,tmdbId:c.id,type:"tv",title:c.name||c.title,date:c.first_air_date,poster:c.poster_path,backdrop:c.backdrop_path,genreText:B0(c.genre_ids),desc:c.overview}):null}))).filter(Boolean)}catch{return d3({sort_by:t==="upcoming"?"new":t==="all"||t==="movie"?"top":"trending",page:r})}}async function ZIn(e){let t=e.anime_source||"cal",r={page:e.page||1};return t==="cal"?(r.sort_by=e.cal_day||"today",GIn(r)):t==="bili"?(r.sort_by=e.bili_sort||"1",WIn(r)):t==="hot"?(r.category=e.hot_cat||"anime",zIn(r)):t==="rank"?(r.category=e.rank_cat||"anime",r.year=e.rank_year||`${new Date().getFullYear()}`,r.month=e.rank_month||"all",r.sort=e.rank_sort||"collects",YIn(r)):t==="daily"?(r.filterType=e.daily_filter||"today",r.specificWeekday=e.daily_weekday||"1",r.dailySortOrder=e.daily_sort||"popularity_rat_bgm",QIn(r)):t==="tmdb"?(r.sort_by=e.tmdb_sort||"trending",d3(r)):t==="anilist"?(r.sort_by=e.anilist_sort||"TRENDING_DESC",XIn(r)):t==="mal"?(r.sort_by=e.mal_sort||"airing",JIn(r)):[]}function Db(e){if(!e)return null;let t=e.release_date||e.first_air_date||"";return{id:String(e.id),tmdbId:parseInt(e.id,10),type:"tmdb",mediaType:e.title?"movie":"tv",title:e.title||e.name,releaseDate:t,genreTitle:B0(e.genre_ids),subTitle:t?t.substring(0,4):"\u672A\u77E5",posterPath:e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",backdropPath:e.backdrop_path?`https://image.tmdb.org/t/p/w780${e.backdrop_path}`:"",description:`${t} -${e.overview||"\u6682\u65E0\u7B80\u4ECB"}`}}async function U2e(e,t,r,n,s){let i=eRn[t]?.[e]||"",a=tRn[r]||"",c={language:"zh-CN",page:s,sort_by:n==="rating"?"vote_average.desc":n==="time"?e==="movie"?"primary_release_date.desc":"first_air_date.desc":"popularity.desc",include_adult:!1,include_video:!1};if(i&&(c.with_genres=i),a&&(c.with_origin_country=a),c["vote_count.gte"]=n==="rating"?200:10,n==="time"){let u=new Date;u.setMonth(u.getMonth()+1);let l=u.toISOString().split("T")[0];e==="movie"?c["primary_release_date.lte"]=l:c["first_air_date.lte"]=l}try{return((await ta(`/discover/${e}`,{params:c})).results||[]).map(l=>({...Db(l),_popularity:l.popularity||0,_date:l.release_date||l.first_air_date||"1970-01-01"}))}catch{return[]}}async function rRn(e={}){let t=parseInt(e.page,10)||1,r=e.sort_by||"all",n=e.genre||"all",s=e.region||"all",i=e.order_rule||"popularity";if(r==="all"){let[a,o]=await Promise.all([U2e("movie",n,s,i,t),U2e("tv",n,s,i,t)]);return[...a,...o].sort((u,l)=>i==="time"?new Date(l._date)-new Date(u._date):l._popularity-u._popularity).slice(0,20)}return U2e(r,n,s,i,t)}async function nRn(e={}){let t=e.sort_by||"popular",r="/movie/popular",n={language:"zh-CN",page:e.page||1};t==="top_rated"?r="/movie/top_rated":t==="box_office"?(r="/discover/movie",n.sort_by="revenue.desc"):t==="oscar"&&(r="/discover/movie",n.with_keywords="818",n.sort_by="vote_average.desc",n["vote_count.gte"]=1e3);try{return((await ta(r,{params:n})).results||[]).map(Db).filter(Boolean)}catch{return[]}}async function sRn(e={}){try{return((await ta("/discover/movie",{params:{language:"zh-CN",page:e.page||1,primary_release_year:e.sort_by||"2024",sort_by:"vote_average.desc","vote_count.gte":500}})).results||[]).map(Db).filter(Boolean)}catch{return[]}}async function iRn(e={}){try{return((await ta("/discover/movie",{params:{language:"zh-CN",page:e.page||1,with_genres:e.sort_by||"878",sort_by:"popularity.desc"}})).results||[]).map(Db).filter(Boolean)}catch{return[]}}async function aRn(e={}){let t=e.movie_source||"general",r={page:e.page||1};return t==="general"?(r.sort_by=e.general_sort||"popular",nRn(r)):t==="yearly"?(r.sort_by=e.yearly_sort||"2024",sRn(r)):t==="genre"?(r.sort_by=e.genre_sort||"878",iRn(r)):[]}async function oRn(e={}){let t=parseInt(e.page,10)||1,r=e.sort_by||"cn",n=e.list_type||"hot",s={all:"",cn:"CN",kr:"KR",jp:"JP",tw:"TW",hk:"HK",eu_us:"US|GB|DE|FR|IT|ES|CA|AU"},i={language:"zh-CN",page:t,with_genres:"10764|10767",include_adult:!1};s[r]&&(i.with_origin_country=s[r]);let a=new Date,o=a.toISOString().split("T")[0],c=new Date(a);c.setDate(c.getDate()+1);let u=c.toISOString().split("T")[0],l=new Date(a);l.setFullYear(l.getFullYear()-5),n==="today"?(i.sort_by="popularity.desc",i["air_date.gte"]=o,i["air_date.lte"]=o):n==="tomorrow"?(i.sort_by="popularity.desc",i["air_date.gte"]=u,i["air_date.lte"]=u):n==="trend"?(i.sort_by="popularity.desc",i["first_air_date.gte"]=l.toISOString().split("T")[0]):n==="top"?(i.sort_by="vote_average.desc",i["vote_count.gte"]=15):i.sort_by="popularity.desc";try{return((await ta("/discover/tv",{params:i})).results||[]).map(f=>({...Db({...f,title:f.name}),mediaType:"tv"})).filter(Boolean)}catch{return[]}}async function YHt(e,t){try{return((await ta(`/discover/${e}`,{params:t})).results||[]).map(Db).filter(Boolean)}catch{return[]}}async function cRn(e={}){let t=e.sort_by||"tv_drama",r=e.platform||"2007",n=e.sort||"popularity.desc",s=e.page||1;if(t==="movie"&&!["213","2739","49","2552"].includes(r))return[];let a={language:"zh-CN",sort_by:n,page:s,include_adult:!1,include_null_first_air_dates:!1};if(t.startsWith("tv_"))return a.with_networks=r,t==="tv_anime"?a.with_genres="16":t==="tv_variety"?a.with_genres="10764|10767":t==="tv_drama"&&(a.without_genres="16,10764,10767"),YHt("tv",a);let o={213:"8",2739:"337",49:"1899|15",2552:"350"};return a.watch_region="US",a.with_watch_providers=o[r]||"8",YHt("movie",a)}async function uRn(e,t,r){let n={netflix:"8",disney:"337",hbo:"1899|118","apple-tv":"350","amazon-prime":"119"},s={"united-states":"US","south-korea":"KR",taiwan:"TW","hong-kong":"HK",japan:"JP","united-kingdom":"GB",world:"US"};try{return((await ta(`/discover/${r}`,{params:{watch_region:s[t]||"US",with_watch_providers:n[e]||"8",sort_by:"popularity.desc",page:1,language:"zh-CN"}})).results||[]).slice(0,10).map((a,o)=>({...Db(a),subTitle:`TOP ${o+1}`}))}catch{return[]}}async function lRn(e={}){return uRn(e.platform||"netflix",e.sort_by||"united-states",e.mediaType||"tv")}function l3(e,t){if(!e)return null;let r=t||e.media_type||(e.title?"movie":"tv"),n=e.release_date||e.first_air_date||"";return{id:String(e.id),tmdbId:parseInt(e.id,10),type:"tmdb",mediaType:r,title:e.title||e.name,subTitle:n||"",description:n?`${n} -${e.overview||"\u6682\u65E0\u7B80\u4ECB"}`:e.overview||"\u6682\u65E0\u7B80\u4ECB",releaseDate:n,posterPath:e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",backdropPath:e.backdrop_path?`https://image.tmdb.org/t/p/w780${e.backdrop_path}`:"",year:n.substring(0,4),genreTitle:B0(e.genre_ids)||(r==="tv"?"\u5267\u96C6":"\u7535\u5F71")}}async function rVt(e="trending_week",t="all",r=1){try{let n=[];if(String(e).startsWith("china_")){let a=e==="china_tv"?"tv":"movie";return((await ta(`/discover/${a}`,{params:{language:"zh-CN",page:r,sort_by:"popularity.desc",with_original_language:"zh","vote_count.gte":2}})).results||[]).map(c=>l3(c,a))}if(String(e).startsWith("trending_"))return n=((await ta(`/trending/${t==="all"?"all":t}/${e==="trending_day"?"day":"week"}`,{params:{language:"zh-CN",page:r}})).results||[]).map(c=>l3(c)),n;if(t==="all"){let[i,a]=await Promise.all([ta(`/movie/${e}`,{params:{language:"zh-CN",page:r}}),ta(`/tv/${e}`,{params:{language:"zh-CN",page:r}})]),o=(i.results||[]).map(u=>l3(u,"movie")),c=(a.results||[]).map(u=>l3(u,"tv"));return[...o,...c].slice(0,20)}return((await ta(`/${t}/${e}`,{params:{language:"zh-CN",page:r}})).results||[]).map(i=>l3(i,t))}catch{return[]}}async function dRn(e){let t=QHt[e]||QHt.rt_movies_home;try{let r=await xp(t),n=er(r.data||""),s=[];return n('[data-qa="discovery-media-list-item"]').each((i,a)=>{let o=n(a),c=o.find('[data-qa="discovery-media-list-item-title"]').text().trim();if(!c)return;let u=o.find("score-pairs");s.push({title:c,tomatoScore:u.attr("critics-score")||"",popcornScore:u.attr("audiencescore")||"",mediaType:String(e).includes("tv")?"tv":"movie"})}),s}catch{return[]}}async function fRn(e,t){try{let r=ti(e.title).replace(/\s\(\d{4}\)$/,""),s=((await ta(`/search/${e.mediaType}`,{params:{query:r,language:"zh-CN"}})).results||[])[0];if(!s)return null;let i=[];e.tomatoScore&&i.push(`\u{1F345} ${e.tomatoScore}%`),e.popcornScore&&i.push(`\u{1F37F} ${e.popcornScore}%`);let a=s.first_air_date||s.release_date||"";return{id:String(s.id),tmdbId:s.id,type:"tmdb",mediaType:e.mediaType,title:`${t}. ${s.name||s.title}`,genreTitle:B0(s.genre_ids)||(e.mediaType==="movie"?"\u7535\u5F71":"\u5267\u96C6"),description:`${a} -\u539F\u540D: ${e.title}`,releaseDate:a,subTitle:i.join(" ")||"\u70C2\u756A\u8304\u8BA4\u8BC1",posterPath:s.poster_path?`https://image.tmdb.org/t/p/w500${s.poster_path}`:"",backdropPath:s.backdrop_path?`https://image.tmdb.org/t/p/w780${s.backdrop_path}`:""}}catch{return null}}async function hRn(e,t=1){let r=await dRn(e);if(!r.length){let o=String(e).includes("tv")?"tv":"movie";return rVt("popular",o,t)}let n=15,s=(t-1)*n,i=r.slice(s,s+n);return(await Promise.all(i.map((o,c)=>fRn(o,s+c+1)))).filter(Boolean)}async function F2e(e,t,r,n){try{return(await xp(`https://api.trakt.tv/${e}/${t}?limit=15&page=${n}`,{headers:{"Content-Type":"application/json","trakt-api-version":"2","trakt-api-key":r}})).data||[]}catch{return[]}}async function pRn(e="trending",t="all",r="95b59922670c84040db3632c7aac6f33704f6ffe5cbf3113a056e37cb45cb482",n=1){let s=[];if(t==="all"){let[a,o]=await Promise.all([F2e("movies",e,r,n),F2e("shows",e,r,n)]);s=[...a,...o].sort((c,u)=>(u.watchers||u.list_count||0)-(c.watchers||c.list_count||0))}else s=await F2e(t,e,r,n);return s.length?(await Promise.all(s.slice(0,20).map(async(a,o)=>{let c=a.show||a.movie||a,u=a.show?"tv":"movie",l=e==="trending"?`\u{1F525} ${a.watchers||0} \u4EBA\u5728\u770B`:e==="anticipated"?`\u2764\uFE0F ${a.list_count||0} \u4EBA\u60F3\u770B`:`No. ${(n-1)*15+o+1}`;if(t==="all"&&(l=`[${u==="tv"?"\u5267":"\u5F71"}] ${l}`),!c?.ids?.tmdb)return null;try{let d=await ta(`/${u}/${c.ids.tmdb}`,{params:{language:"zh-CN"}});return{id:String(d.id),tmdbId:d.id,type:"tmdb",mediaType:u,title:d.name||d.title||c.title,genreTitle:B0((d.genres||[]).map(f=>f.id)),releaseDate:d.first_air_date||d.release_date||"",subTitle:l,description:`${d.first_air_date||d.release_date||""} -${d.overview||"\u6682\u65E0\u7B80\u4ECB"}`,posterPath:d.poster_path?`https://image.tmdb.org/t/p/w500${d.poster_path}`:"",backdropPath:d.backdrop_path?`https://image.tmdb.org/t/p/w780${d.backdrop_path}`:""}}catch{return null}}))).filter(Boolean):[]}async function mRn(e,t){try{let r=ti(e).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim();return((await ta(`/search/${t}`,{params:{query:r,language:"zh-CN"}})).results||[])[0]||null}catch{return null}}function gRn(e,t){e.id=String(t.id),e.tmdbId=t.id,e.posterPath=t.poster_path?`https://image.tmdb.org/t/p/w500${t.poster_path}`:e.posterPath,e.backdropPath=t.backdrop_path?`https://image.tmdb.org/t/p/w780${t.backdrop_path}`:"";let r=t.first_air_date||t.release_date||"";e.genreTitle=B0(t.genre_ids)||(e.mediaType==="tv"?"\u5267\u96C6":"\u7535\u5F71"),e.releaseDate=r,e.description=`${r?`${r} \xB7 `:""}${e.subTitle}${t.overview?` -${t.overview}`:` -\u6682\u65E0\u7B80\u4ECB`}`}async function _Rn(e,t,r=1){let n=(r-1)*20;try{let s=Math.random().toString(36).slice(2,13),i=await xp(`https://movie.douban.com/j/search_subjects?type=${t}&tag=${encodeURIComponent(e)}&sort=recommend&page_limit=20&page_start=${n}`,{headers:{"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X)",Referer:"https://movie.douban.com/explore",Host:"movie.douban.com","X-Requested-With":"XMLHttpRequest",Cookie:`bid=${s};`}}),o=(typeof i.data=="string"?JSON.parse(i.data):i.data||{}).subjects||[];return await Promise.all(o.map(async u=>{let l={id:`db_${u.id}`,type:"tmdb",mediaType:t,title:u.title,subTitle:`\u8C46\u74E3 ${u.rate}`,description:`\u8C46\u74E3 ${u.rate} -\u6682\u65E0\u7B80\u4ECB`,genreTitle:t==="tv"?"\u5267\u96C6":"\u7535\u5F71",posterPath:u.cover},d=await mRn(u.title,t);return d&&gRn(l,d),l}))}catch{return[]}}async function ARn(e={}){let t=e.hub_source||"imdb",r=e.page||1;if(t==="rt")return hRn(e.rt_sort||"rt_movies_home",r);if(t==="imdb")return rVt(e.imdb_sort||"trending_week",e.mediaType||"all",r);if(t==="trakt")return pRn(e.trakt_sort||"trending",e.traktType||"all",e.traktClientId,r);if(t==="douban"){let n=e.db_sort||"db_tv_cn",s="\u70ED\u95E8",i="tv";return n==="db_tv_cn"?(s="\u56FD\u4EA7\u5267",i="tv"):n==="db_variety"?(s="\u7EFC\u827A",i="tv"):n==="db_movie"?(s="\u70ED\u95E8",i="movie"):n==="db_tv_us"&&(s="\u7F8E\u5267",i="tv"),_Rn(s,i,r)}return[]}async function ERn(e,t){return{}}async function yRn(e,t){let r=Yr("zhuijujuhe",arguments[0]||{}),n=Qr(r);if(n)return n;let s=e?.query?.raw==="1"||e?.query?.raw===1||e?.query?.raw===!0,i=UIn();if(s)return{class:i.classes,filters:i.filters};let a=await FIn(e?.server),o=$In(i.classes,i.filters,a),c={class:o.classes,filters:o.filters};return dn(r,c,Tt.semiStatic),c}function nVt(e,t){let r=e?.belongTo;if(!r||!r.paramName)return!0;let n=t?.[r.paramName];return Array.isArray(r.value)?r.value.includes(n):n===r.value}function vRn(e,t={}){let r=t.filters||{},n={};for(let i of e.params||[])!i||i.name==="page"||i.belongTo||(r[i.name]!==void 0&&r[i.name]!==""?n[i.name]=r[i.name]:i.value!==void 0&&(n[i.name]=i.value));let s=!0;for(;s;){s=!1;for(let i of e.params||[]){if(!i||i.name==="page"||!i.belongTo||!nVt(i,n))continue;let a=r[i.name]!==void 0&&r[i.name]!==""?r[i.name]:i.value;a!==void 0&&n[i.name]!==a&&(n[i.name]=a,s=!0)}}return n.page=JHt(t.page),n}async function SRn(e,t){let r=e.body||{},n=ti(r.id),s=JHt(r.page);return n?H2e("category",`category:${n}:${JSON.stringify(r.filters||{})}:p${s}`,KQ,async()=>{let i=eVt(),a=BIn(n),o=a?.moduleId||n,c=i.get(o);if(!c)return{page:1,pagecount:1,limit:20,total:0,list:[]};let u=vRn(c,{...r,filters:{...r.filters||{},...a?{[a.rootParamName]:a.rootValue}:{}}}),l=[];if(c.functionName==="routeAnimeOmni")l=await ZIn(u);else if(c.functionName==="loadGenreRank")l=await rRn(u);else if(c.functionName==="routeMovieOmni")l=await aRn(u);else if(c.functionName==="loadVarietyShows")l=await oRn(u);else if(c.functionName==="loadPlatformMatrix")l=await cRn(u);else if(c.functionName==="loadOfficialTop10")l=await lRn(u);else if(c.functionName==="routeTrendsHub")l=await ARn(u);else throw new Error(`\u672C\u5730\u5B9E\u73B0\u672A\u63A5\u5165: ${c.functionName}`);let d=Array.isArray(l)?l.filter(Boolean).filter(f=>f.type!=="text").map(f=>jIn(f,$2e(c.title||""))):[];return{page:s,pagecount:d.length<20?s:s+1,limit:20,total:d.length,list:d}}):{page:1,pagecount:1,limit:20,total:0,list:[]}}async function TRn(e,t){return H2e("detail",`detail:${e}:${t}`,XHt,async()=>ta(`/${e}/${t}`,{params:{append_to_response:"credits,videos,external_ids"}}))}function bRn(e,t,r){let n=e?.id||r,s=ti(e?.name||e?.title,`TMDB ${n}`),i=ti((e?.first_air_date||e?.release_date||"").slice(0,4)),a=Array.isArray(e?.origin_country)?e.origin_country.join("/"):"",o=Array.isArray(e?.credits?.cast)?e.credits.cast.slice(0,8).map(h=>h.name).join("/"):"",c=Array.isArray(e?.credits?.crew)?e.credits.crew.filter(h=>["Director","Series Director","Writer","Screenplay"].includes(h.job)).slice(0,6).map(h=>h.name).join("/"):"",u=Array.isArray(e?.genres)?e.genres.map(h=>h.name).join("/"):"",l=ti(e?.overview,"\u6682\u65E0\u7B80\u4ECB"),d=ti(e?.vote_average?`TMDB ${Number(e.vote_average).toFixed(1)}`:"TMDB"),f=ZHt(t,n);return{vod_id:`${t}:${n}`,vod_name:s,vod_pic:e?.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",type_name:u,vod_year:i,vod_area:a,vod_remarks:d,vod_actor:o,vod_director:c,vod_content:l,vod_play_from:"TMDB\u8BE6\u60C5",vod_play_url:`\u67E5\u770B\u8BE6\u60C5$${f}`}}async function IRn(e,t){let r=e.body?.id,n=Array.isArray(r)?r:[r],s=[];for(let i of n){let a=ti(i),[o,c]=a.includes(":")?a.split(":"):["tv",a],u=o==="movie"?"movie":"tv";try{let l=await TRn(u,c);s.push(bRn(l,u,c))}catch(l){s.push({vod_id:a,vod_name:`TMDB ${c}`,vod_pic:"",type_name:u==="movie"?"\u7535\u5F71":"\u5267\u96C6",vod_year:"",vod_area:"",vod_remarks:"\u8BE6\u60C5\u62C9\u53D6\u5931\u8D25",vod_actor:"",vod_director:"",vod_content:l.message,vod_play_from:"TMDB\u8BE6\u60C5",vod_play_url:`\u67E5\u770B\u8BE6\u60C5$${ZHt(u,c)}`})}}return{list:s}}async function RRn(e,t){try{let r=e.server.prefix,s=await(await e.server.inject().post(`${r}/home`)).json(),i=s?.class?.[0],a=null;return i&&(a=await(await e.server.inject().post(`${r}/category`).payload({id:i.type_id,page:1,filters:{}})).json()),{home:s,category:a}}catch(r){return t.code(500),{err:r.message}}}var wIn,NIn,OIn,DIn,WHt,KQ,XHt,B2e,PIn,KHt,Mw,tVt,eRn,tRn,QHt,CRn,iVt=ae(()=>{Hr();Nn();Qd();jHt();da();sa();wIn="f090bb54758cabf231fb605d3e3e0468",NIn="https://raw.githubusercontent.com/MakkaPakka518/List/refs/heads/main/data/bangumi-hot.json",OIn="https://api.themoviedb.org/3",DIn="https://www.themoviedb.org",WHt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",KQ=60*1e3,XHt=10*60*1e3,B2e=128,PIn={16:"\u52A8\u753B",10759:"\u52A8\u4F5C\u5192\u9669",35:"\u559C\u5267",18:"\u5267\u60C5",14:"\u5947\u5E7B",878:"\u79D1\u5E7B",9648:"\u60AC\u7591",10749:"\u7231\u60C5",27:"\u6050\u6016",10765:"\u79D1\u5E7B\u5947\u5E7B",80:"\u72AF\u7F6A",99:"\u7EAA\u5F55\u7247",10751:"\u5BB6\u5EAD",36:"\u5386\u53F2",10402:"\u97F3\u4E50",10770:"\u7535\u89C6\u7535\u5F71",53:"\u60CA\u609A",10752:"\u6218\u4E89",37:"\u897F\u90E8",28:"\u52A8\u4F5C",12:"\u5192\u9669"},KHt={home:new gt(B2e,KQ),category:new gt(B2e,KQ),detail:new gt(B2e,XHt)};Mw={airtime:Object.create(null),daily:[]},tVt={parseBangumiListItems(e){let t=er(e||""),r=[];return t("ul#browserItemList li.item").each((n,s)=>{let i=t(s),a=i.attr("id")?.substring(5);if(!a)return;let o=i.find("h3 a.l").text().trim(),c=i.find("p.info.tip").text().trim(),u=i.find("small.fade").text().trim();r.push({id:a,title:o,info:c,rating:u})}),r},async processBangumiPage(e){try{let t=await xp(e);return this.parseBangumiListItems(t.data)}catch{return[]}},async processDailyCalendar(){try{let e=await xp("https://api.bgm.tv/calendar"),t=[];return Array.isArray(e?.data)&&e.data.forEach(r=>{r&&Array.isArray(r.items)&&r.items.forEach(n=>{n.bgm_weekday_id=r.weekday?.id,t.push(n)})}),t}catch{return[]}}};eRn={all:{movie:"",tv:""},scifi:{movie:"878",tv:"10765"},mystery:{movie:"9648",tv:"9648"},horror:{movie:"27",tv:"27"},crime:{movie:"80",tv:"80"},action:{movie:"28",tv:"10759"},comedy:{movie:"35",tv:"35"},romance:{movie:"10749",tv:"10749"},drama:{movie:"18",tv:"18"},fantasy:{movie:"14",tv:"10765"},animation:{movie:"16",tv:"16"},documentary:{movie:"99",tv:"99"}},tRn={all:"",cn:"CN",hk:"HK",tw:"TW",hktw:"HK|TW",jp:"JP",kr:"KR",jpkr:"JP|KR",th:"TH",sg:"SG",my:"MY",in:"IN",apac:"CN|HK|TW|JP|KR|TH|SG|MY|IN",us:"US",gb:"GB",de:"DE",se:"SE",europe:"GB|DE|FR|IT|ES|SE|NO|DK|FI|NL|BE|CH|AT|IE",es:"ES",mx:"MX",latin:"ES|MX|AR|CO|CL|PE|VE"};QHt={rt_movies_theater:"https://www.rottentomatoes.com/browse/movies_in_theaters/sort:popular?minTomato=75",rt_movies_home:"https://www.rottentomatoes.com/browse/movies_at_home/sort:popular?minTomato=75",rt_movies_best:"https://www.rottentomatoes.com/browse/movies_at_home/sort:critic_highest?minTomato=90",rt_tv_popular:"https://www.rottentomatoes.com/browse/tv_series_browse/sort:popular?minTomato=75",rt_tv_new:"https://www.rottentomatoes.com/browse/tv_series_browse/sort:newest?minTomato=75"};CRn={meta:{key:"zhuiju",name:"\u{1F3E0} \u8FFD\u5267",type:3,indexs:1,ext:{configurable:!0}},api:async e=>{e.post("/init",ERn),e.post("/home",yRn),e.post("/category",SRn),e.post("/detail",IRn),e.get("/test",RRn)}}});function Pb(e,t=""){return e==null?t:String(e)}function wRn(e,t=dl.count){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>=0?r:t}function NRn(e,t=!1){if(typeof e=="boolean")return e;if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?!0:["0","false","no","off","n"].includes(r)?!1:t}function aVt(e,t=dl.pancheck_mode){let r=String(e||"").trim().toLowerCase();return["off","detect","pancheck"].includes(r)?r:t}function j2e(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function ORn(e){return Array.from(new Set(j2e(e)))}function DRn(e={}){let t=j2e(e.include),r=j2e(e.exclude);return{include:t,exclude:r}}function K2e(e={}){let t=e&&typeof e=="object"?e:{},r=ORn(t.selected_platforms??t.selectedPlatforms??dl.selected_platforms),n=t.pancheck_enabled!==void 0?NRn(t.pancheck_enabled,dl.pancheck_enabled):aVt(t.pancheck_mode,dl.pancheck_mode)==="pancheck",s=t.pancheck_mode!==void 0?aVt(t.pancheck_mode,dl.pancheck_mode):n?"pancheck":"off";return{api_urls:Pb(t.api_urls,dl.api_urls),count:wRn(t.count,dl.count),pancheck:Pb(t.pancheck,dl.pancheck),pancheck_enabled:n,pancheck_mode:s,channels:Pb(t.channels,dl.channels),plugins:Pb(t.plugins,dl.plugins),cloud_types:Pb(t.cloud_types,dl.cloud_types),include:Pb(t.include,dl.include),exclude:Pb(t.exclude,dl.exclude),selected_platforms:r,selected_platforms_str:r.join(","),filter:DRn(t)}}async function GQ(e){e.get("/config",async(t,r)=>{try{let n=await Bw(t.server);r.send({code:0,data:n})}catch(n){r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:K2e({})})}}),e.put("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault(V2e,{}),s=K2e({...n,...t.body||{}});await t.server.db.push(V2e,s),r.send({code:0,data:s,message:"Pansou\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var V2e,xRn,dl,Bw,G2e,z2e,Y2e,Q2e,W2e,zQ=ae(()=>{V2e="/pansou",xRn="https://pancheck.banye.tech:7777",dl={api_urls:"https://so.hk.111651.xyz",count:0,pancheck:xRn,pancheck_enabled:!1,pancheck_mode:"off",channels:"",plugins:"",cloud_types:"",include:"",exclude:"",selected_platforms:["quark","uc","tianyi","pan123","pan115","cmcc","baidu","aliyun","magnet","xunlei","ed2k","guangya"]};Bw=async e=>{let t=await e.db.getObjectDefault(V2e,{});return K2e(t)},G2e=async e=>(await Bw(e)).api_urls,z2e=async e=>(await Bw(e)).pancheck,Y2e=async e=>(await Bw(e)).pancheck_mode,Q2e=async e=>(await Bw(e)).count,W2e=async e=>{let t=await Bw(e);return{channels:t.channels,plugins:t.plugins,cloud_types:t.cloud_types,selected_platforms:t.selected_platforms,filter:t.filter,include:t.include,exclude:t.exclude}}});var oVt=ae(()=>{zQ();zQ()});var gVt={};Ft(gVt,{default:()=>iCn});function J2e(e){let t=X2e.get(e);return t?Date.now()>t?(X2e.delete(e),!1):!0:!1}function FRn(e){X2e.set(e,Date.now()+URn)}function QQ(){return{page:1,pagecount:1,list:[]}}function qRn(e={}){return JSON.stringify({source:"pansou",mode:"resource",...e})}function HRn(e={}){return JSON.stringify({source:"pansou",mode:"group-category",...e})}function pVt(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="pansou"&&t.mode)return t}catch{}return null}function VRn(e){if(!e)return[];let t=new Set,r=String(e).split(",");for(let n=0;nh3[t]):[]}function mVt(e,t){let r=new Set,n=new Set,s=t.map(i=>h3[i]);for(let i=0;is?.key===r);if(n?.name)return n.name}return String(e||"").trim()||"\u7F51\u76D8"}function p3(e,t=[],r=null){let n=m3(e);if(n){let s=t.find(i=>i?.key===n);if(s?.pic)return zRn(r,s.pic)}return""}function zRn(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}function YRn(){let e=Array.isArray(xi())?xi():[];return new Map(e.map((t,r)=>[String(t?.key||"").trim(),{index:r,enable:!!t?.enable}]))}function QRn(e,t){let r=m3(e);return r?r==="magnet"?!!t?.get("magnet")?.enable||!!t?.get("magnet_guangya")?.enable:t?.has(r)?!!t.get(r)?.enable:!1:!1}function fVt(e,t){let r=m3(e);return r?t?.get(r)?.index??Number.MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER}function WRn(e){return`${e?.note||""} ${e?.url||""}`.match(/(?:提取码|访问码|密码|口令|code|pwd|password)\s*[:: =]?\s*([a-zA-Z0-9]{4,8})/i)?.[1]||""}async function XRn(e,t,r){let n=r.length>0?r:Object.keys(h3),{linksToCheck:s,uncheckedLinks:i}=mVt(t,n);if(s.size===0)return t;let a=[];for(let f=0;fi.has(f.url));let c=(await ve.post(`${e}/api/check/links`,{items:a},{timeout:1e4,headers:{"Content-Type":"application/json"}})).data||{},u=Array.isArray(c?.results)?c.results:Array.isArray(c?.data?.results)?c.data.results:null,l=null;if(Array.isArray(u))l=u.filter(f=>{let h=String(f?.state||"").trim().toLowerCase();return h==="valid"||h==="ok"||h==="good"}).map(f=>f?.url||f?.normalized_url||f?.link||"").filter(Boolean);else{let f=[c?.data?.valid_links,c?.data?.links,c?.valid_links,c?.links,c?.data,c];for(let h=0;htypeof _=="string"?_:_?.url||_?.link||_?.share_url||"").filter(Boolean);if(m.length>0||p.length===0){l=m;break}}}if(!Array.isArray(l))return t;let d=new Set(l);for(let f of i)d.add(f);return t.filter(f=>d.has(f.url))}async function JRn(e,t,r){let n=r.length>0?r:Object.keys(h3),{linksToCheck:s,uncheckedLinks:i}=mVt(t,n);if(r.length>0){if(s.size>0){let c=await ve.post(`${e||cVt}/api/v1/links/check`,{links:Array.from(s),selected_platforms:r},{timeout:1e4,headers:{"Content-Type":"application/json"}});if(Array.isArray(c.data?.valid_links)){let u=new Set(c.data.valid_links);for(let l of i)u.add(l);return t.filter(l=>u.has(l.url))}return t.filter(u=>i.has(u.url))}return t}let a=Array.from(new Set(t.map(c=>c.url))),o=await ve.post(`${e||cVt}/api/v1/links/check`,{links:a,selected_platforms:Object.keys(h3)},{timeout:1e4,headers:{"Content-Type":"application/json"}});if(Array.isArray(o.data?.valid_links)){let c=new Set(o.data.valid_links);return t.filter(u=>c.has(u.url))}return t}async function ZRn(e){if(!Array.isArray(e)||e.length===0)return"";let t=Date.now();if(wp.url&&t-wp.timestamp!J2e(o)),n=r.length>0?r:e;if(n.length===1)return wp={url:n[0],timestamp:t},n[0];let s=new AbortController,i=setTimeout(()=>s.abort(),4e3),a=n.map(async o=>{try{return await ve.get(`${o}/api/health`,{timeout:2500,signal:s.signal}),o}catch(c){throw c}});try{let o=await Promise.any(a);return s.abort(),wp={url:o,timestamp:t},o}catch{return wp={url:"",timestamp:0},n[0]}finally{clearTimeout(i)}}async function eCn(e,t){return await Wi(e,t),{}}async function tCn(e,t){let r=Yr("pansou",arguments[0]||{}),n=Qr(r);return n||{class:[]}}async function rCn(e,t){let r=e.body||{},n=Math.max(1,Number.parseInt(r.pg||r.page||r.pn,10)||1),s=String(r.tid||r.id||r.t||"").trim(),i=pVt(s);if(!i||i.mode!=="group-category")return{page:n,pagecount:1,list:[]};let a=Co(),o=Array.isArray(i.items)?i.items:[],c=String(i.panType||"").trim(),u=Z2e(c,a);return{page:1,pagecount:1,list:o.map(d=>{let f=String(d?.url||"").trim(),h=dVt(d?.note||f)||f,p=String(d?.datetime||"").split("T")[0],m=dVt(d?.source||""),_=[u];return p&&!hVt.test(p)&&_.push(p),m&&_.push(`[${m}]`),{vod_id:qRn({url:f,name:h,pic:d?.images?.[0]||p3(c,a)||"",remarks:_.join(" ")}),vod_name:h,vod_pic:d?.images?.[0]||p3(c,a)||"",vod_remarks:_.join(" "),type_name:`${u}\u8D44\u6E90`}})}}async function nCn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=Co(),s=r.map(async a=>{let o=String(a||""),c=pVt(o);if(c?.mode==="group"||c?.mode==="group-category"){let p=String(c.panType||"").trim(),m=Z2e(p,n);return[{vod_id:o,vod_name:m,vod_pic:p3(p,n)||"",vod_remarks:"\u76EE\u5F55\u9879\uFF0C\u8BF7\u8FDB\u5165\u4E0B\u4E00\u5C42\u67E5\u770B\u8D44\u6E90"}]}let u=o,l=o,d="",f="";if(c?.mode==="resource")u=c.url||o,l=c.name||c.url||o,d=c.pic||"",f=c.remarks||"";else try{let p=JSON.parse(o);u=p.url,l=p.name||p.url,d=p.pic||"",f=p.remarks||""}catch{u=o,l=o}let h={vod_id:o,vod_name:l,vod_pic:d,vod_remarks:f};try{let p=await Bs(u,e);p&&(h.vod_play_from=p.froms,h.vod_play_url=p.urls,Array.isArray(p.links)&&p.links.length>0&&(h.vod_links=p.links))}catch{}return h});return{list:(await Promise.all(s)).flat().filter(Boolean)}}async function sCn(e,t){let{server:r,body:{wd:n}}=e,s=String(n||"").trim();if(!s)return QQ();let[i,a,o,c,u]=await Promise.all([G2e(r),z2e(r),Y2e(r),Q2e(r),W2e(r)]),l=VRn(i);if(l.length===0)return QQ();let d=String(o||"off").trim().toLowerCase(),f=u||{},h=Number.parseInt(c,10),p=Number.isFinite(h)&&h>=0?h:0,m=KRn(s,l,a,d,p,f),_=uVt.get(m);if(_)return _;let y=await Un("pansou","search",m,async()=>{let A=await ZRn(l);if(!A)return QQ();let E=[],v="",b=[A,...l.filter(G=>G!==A&&!J2e(G))],I=null,T="",x=null,w=b.length;for(let G=0;GK.trim().toLowerCase()).filter(Boolean)):null;for(let[K,ee]of Object.entries(I)){if($&&!$.has(K.toLowerCase())||!Array.isArray(ee)||ee.length===0)continue;if(!v)for(let le=0;leYQ(te.datetime)-YQ(le.datetime)),oe=p>0?z.slice(0,p):z;for(let le=0;le0)try{let K=GRn(f.selected_platforms);d==="detect"?E=await XRn(T,G,K):d==="pancheck"?E=await JRn(a,G,K):E=G}catch(K){console.error("[pansou] Pancheck \u9519\u8BEF:",tS(K)),E=G}else E=G;E.sort((K,ee)=>YQ(ee.datetime)-YQ(K.datetime))}}catch(G){console.error("[pansou] \u641C\u7D22\u7ED3\u679C\u5904\u7406\u9519\u8BEF:",tS(G))}if(E.length===0)return QQ();let D=Co(),M=YRn(),L=new Map;for(let G=0;G{let K=fVt(G[0],M)-fVt($[0],M);return K!==0?K:$[1].count-G[1].count}).map(([G,$])=>{let K=HRn({wd:s,panType:G,items:$.items});return{vod_id:K,vod_name:Z2e(G,D),vod_pic:p3(G,D,e)||$.cover||"",vod_remarks:`${$.count} \u6761\u7ED3\u679C`,vod_tag:"folder",type_id:K,type_name:"\u7F51\u76D8\u76EE\u5F55",cate:{}}})}},{timeout:6e4});return uVt.set(m,y),y}var cVt,PRn,hVt,LRn,MRn,kRn,BRn,wp,uVt,lVt,URn,X2e,h3,$Rn,YQ,iCn,_Vt=ae(()=>{su();oVt();Pr();wi();xm();Nn();da();sa();NE();cVt="https://pancheck.banye.tech:7777",PRn=6e5,hVt=/^0001-01-01/,LRn=/<\/?[^>]+(>|$)/g,MRn=2e4,kRn=80,BRn=1e3,wp={url:"",timestamp:0},uVt=new gt(kRn,MRn),lVt=new gt(BRn,Number.POSITIVE_INFINITY),URn=5*60*1e3,X2e=new Map;h3={aliyun:J7,quark:Z7,uc:ej,tianyi:tj,pan123:nj,pan115:sj,baidu:ij,yidong:rj,magnet:aj,guangya:oj},$Rn={aliyun:"ali",ali:"ali",quark:"quark",uc:"uc",tianyi:"tianyi",cloud189:"tianyi",pan123:"123",123:"123",pan115:"115",115:"115",baidu:"baidu",yidong:"yidong",mobile:"yidong",139:"yidong",xunlei:"xunlei",guangya:"guangya",magnet:"magnet",bt:"magnet",torrent:"magnet",\u78C1\u529B:"magnet",\u78C1\u94FE:"magnet",\u79CD\u5B50:"magnet"},YQ=e=>{if(!e||hVt.test(e))return 0;let t=Date.parse(e);return isNaN(t)?0:t};iCn={meta:{key:"pansou",name:"\u{1F50D} \u76D8\u641C",type:3},api:async e=>{e.post("/init",eCn),e.post("/home",tCn),e.post("/category",rCn),e.post("/detail",nCn),e.post("/play",Zs),e.post("/search",sCn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}}});async function sDe(e){e.get("/config",async(t,r)=>{let n=await eDe(t.server),s=await tDe(t.server),i=await rDe(t.server),a=await nDe(t.server);r.send({code:0,data:{url:n,count:Number(s),channelUsername:i.split(","),pic:a}})}),e.put("/config",async(t,r)=>{await WQ(t.server,"url",t.body.url),await WQ(t.server,"count",t.body.count),await WQ(t.server,"channelUsername",t.body.channelUsername.join(",")),await WQ(t.server,"pic",t.body.pic),r.send({code:0})})}var XQ,eDe,tDe,rDe,nDe,WQ,iDe=ae(()=>{XQ=async(e,t,r)=>(await e.db.getObjectDefault("/tgsou",{}))?.[t]||e.config.tgsou[t]||r,eDe=e=>XQ(e,"url","https://tgsou.lmentor.dpdns.org"),tDe=e=>XQ(e,"count",4),rDe=e=>XQ(e,"channelUsername","tgsearchers5,Aliyun_4K_Movies,bdbdndn11,yunpanx,bsbdbfjfjff,yp123pan,sbsbsnsqq,yunpanxunlei,tianyifc,BaiduCloudDisk,txtyzy,peccxinpd,gotopan,PanjClub,kkxlzy,baicaoZY,MCPH01,MCPH02,MCPH03,bdwpzhpd,ysxb48,jdjdn1111,yggpan,MCPH086,zaihuayun,Q66Share,ucwpzy,shareAliyun,alyp_1,dianyingshare,Quark_Movies,XiangxiuNBB,ydypzyfx,ucquark,xx123pan,yingshifenxiang123,zyfb123,tyypzhpd,tianyirigeng,cloudtianyi,hdhhd21,Lsp115,oneonefivewpfx,qixingzhenren,taoxgzy,Channel_Shares_115,tyysypzypd,vip115hot,wp123zy,yunpan139,yunpan189,yunpanuc,yydf_hzl,leoziyuan,Q_dongman,yoyokuakeduanju,TG654TG,WFYSFX02,QukanMovie,yeqingjie_GJG666,movielover8888_film3,Baidu_netdisk,D_wusun,FLMdongtianfudi,KaiPanshare,QQZYDAPP,rjyxfx,btzhi,newproductsourcing,cctv1211,duan_ju,QuarkFree,yunpanNB,kkdj001,xxzlzn,pxyunpanxunlei,jxwpzy,kuakedongman,liangxingzhinan,xiangnikanj,solidsexydoll,guoman4K,zdqxm,kduanju,cilidianying,CBduanju,SharePanFilms,dzsgx,BooksRealm,Oscar_4Kmovies,douerpan,baidu_yppan,Q_jilupian,Netdisk_Movies,yunpanquark,ammmziyuan,ciliziyuanku,cili8888,jzmm_123pan,Q_dianying,domgmingapk,dianying4k,q_dianshiju,tgbokee,ucshare,godupan,gokuapan"),nDe=e=>XQ(e,"pic",!1),WQ=async(e,t,r)=>{await e.db.push(`/tgsou/${t}`,r)}});var bVt={};Ft(bVt,{default:()=>vCn});function fCn(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}async function TVt(e,t,r,n,s){let i=e.get(r);return i!==null?i:Un("tgsou",t,r,async()=>{let a=await s();return e.set(r,a),a},{timeout:3e4})}async function hCn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let c=s++;if(c>=e.length)break;n[c]=await r(e[c],c)}},a=Math.min(t,e.length),o=new Array(a);for(let c=0;cs.validator(e))||null;return EVt.set(e,n),n}async function gCn(e,t){return await Wi(e,t),{}}async function _Cn(e,t){let r=Yr("tgsou",e),n=Qr(r);if(n)return n;let s={};return dn(r,s,Tt.dynamic),s}async function ACn(e,t){return{page:1,pagecount:1,list:[]}}async function ECn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await hCn(r,oCn,async s=>{let i=String(s||""),a=i,o=i;try{let u=JSON.parse(i);a=u.url,o=u.name||u.url}catch{a=i,o=i}let c={vod_name:o,vod_remarks:""};if(!a)return c;try{let u=await TVt(lCn,"detail",`detail:${a}`,yVt,async()=>Bs(a,e));u&&(c.vod_play_from=u.froms,c.vod_play_url=u.urls,Array.isArray(u.links)&&u.links.length>0&&(c.vod_links=u.links))}catch{}return c})}}async function yCn(e,t){let r=String(e.body.wd||"").trim();if(!r)return{page:1,pagecount:1,list:[]};let[n,s,i,a]=await Promise.all([eDe(e.server),tDe(e.server),rDe(e.server),nDe(e.server)]),o=Math.max(1,pCn(s,20));if(!n)return{page:1,pagecount:1,list:[]};let c=`${n}::${a}::${o}::${i}::${r}`;return{page:1,pagecount:1,list:await TVt(dCn,"search",c,vVt,async()=>{try{let l=await uCn.get(n,{params:{pic:a,count:o,channelUsername:i,keyword:r}}),d=Array.isArray(l.data?.results)?l.data.results:[],f=Co(),h=[],p=new Set;for(let m of d){if(!m||typeof m!="string")continue;let[_,g]=m.split("$$$");if(!g)continue;let y=String(_||"").trim(),A=g.split("##"),E=Math.min(A.length,o);for(let v=0;v{Nn();su();iDe();Pr();Hr();da();sa();aCn=12e3,yVt=60*1e3,vVt=20*1e3,SVt=200,oCn=6,cCn=1e3,AVt=Zn(),uCn=ve.create({timeout:aCn,httpAgent:AVt.httpAgent,httpsAgent:AVt.httpsAgent}),lCn=new gt(SVt,yVt),dCn=new gt(SVt,vVt),EVt=new gt(cCn,Number.POSITIVE_INFINITY);vCn={meta:{key:"tgsou",name:"\u{1F50D} TG\u641C",type:3},api:async e=>{e.post("/init",gCn),e.post("/home",_Cn),e.post("/category",ACn),e.post("/detail",ECn),e.post("/play",Zs),e.post("/search",yCn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}}});async function aDe(e){e.get("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{}),s=t.server.config.bilibili_all||{};r.send({code:0,data:{cookie:n.cookie||s.cookie||"",classes_all:n.classes_all||s.classes_all||"",filters_all:n.filters_all||s.filters_all||"",user_info:n.user_info||null,lastUpdate:n.lastUpdate||null}})}catch(n){console.error("\u83B7\u53D6\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25: "+n.message,data:{cookie:"",classes_all:"",filters_all:"",user_info:null,lastUpdate:null}})}}),e.put("/config",async(t,r)=>{try{let{cookie:n,classes_all:s,filters_all:i}=t.body||{},a={},o=null;if(n!==void 0&&typeof n=="string"){let l=n.trim();if(l)try{let f=(await t.server.inject({method:"POST",url:"/spider/bili_all/3/validate-cookie",payload:{cookie:l}})).json();if(f.code!==0||!f.valid||!f.data)return r.send({code:400,message:f.message||"Cookie\u9A8C\u8BC1\u5931\u8D25\uFF0C\u914D\u7F6E\u672A\u4FDD\u5B58",data:{saved:!1,validationFailed:!0}});a.cookie=l,a.user_info=f.data,a.user_info_updated_at=Date.now(),o={success:!0,message:"Cookie\u9A8C\u8BC1\u6210\u529F",userInfo:f.data}}catch(d){return console.error("\u6D4B\u8BD5Cookie\u5931\u8D25:",d),r.send({code:500,message:"Cookie\u9A8C\u8BC1\u5931\u8D25\uFF0C\u914D\u7F6E\u672A\u4FDD\u5B58: "+d.message,data:{saved:!1,validationFailed:!0}})}else a.cookie="",a.user_info=null,a.user_info_updated_at=null}s!==void 0&&typeof s=="string"&&(a.classes_all=s.trim()),i!==void 0&&typeof i=="string"&&(a.filters_all=i.trim());let u={...await t.server.db.getObjectDefault("/bilibili_all",{}),...a,lastUpdate:Date.now()};if(await t.server.db.push("/bilibili_all",u),n!==void 0&&typeof n=="string")try{a.cookie?await t.server.inject({method:"POST",url:"/spider/bili_all/3/set-cookie",payload:{cookie:a.cookie}}):await t.server.inject({method:"POST",url:"/spider/bili_all/3/clear-cookie"})}catch(l){console.warn("\u540C\u6B65\u54D4\u54E9\u5927\u5168\u8FD0\u884C\u65F6Cookie\u5931\u8D25:",l.message)}r.send({code:0,message:"\u4FDD\u5B58\u6210\u529F",data:{updated:Object.keys(a),testResult:o,userInfo:u.user_info||null,lastUpdate:u.lastUpdate}})}catch(n){console.error("\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u4FDD\u5B58\u5931\u8D25: "+n.message})}}),e.delete("/config",async(t,r)=>{try{await t.server.db.push("/bilibili_all",{cookie:"",classes_all:"",filters_all:"",user_info:null,user_info_updated_at:null,lastUpdate:Date.now()});try{await t.server.inject({method:"POST",url:"/spider/bili_all/3/clear-cookie"})}catch{}r.send({code:0,message:"\u914D\u7F6E\u5DF2\u6E05\u9664"})}catch(n){console.error("\u6E05\u9664\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u6E05\u9664\u5931\u8D25: "+n.message})}}),e.post("/test-cookie",async(t,r)=>{try{let{cookie:n}=t.body||{};if(!n||typeof n!="string"||n.trim().length<10)return r.send({code:400,message:"\u65E0\u6548\u7684Cookie\u683C\u5F0F",valid:!1});let s=n.trim(),i=s.includes("SESSDATA"),a=s.includes("bili_jct"),o=s.includes("DedeUserID"),c=i&&a;r.send({code:0,message:c?"Cookie\u683C\u5F0F\u6B63\u786E":"Cookie\u683C\u5F0F\u53EF\u80FD\u4E0D\u5B8C\u6574",valid:c,data:{hasSessdata:i,hasBiliJct:a,hasDedeUserID:o,cookieLength:s.length}})}catch(n){console.error("\u6D4B\u8BD5Cookie\u5931\u8D25:",n),r.send({code:500,message:"\u6D4B\u8BD5\u5931\u8D25: "+n.message,valid:!1})}}),e.get("/status",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{}),s={available:!1};try{let a=(await t.server.inject({method:"GET",url:"/spider/bili_all/3/cookie-status"})).json();a.code===0&&(s={available:!0,...a.data})}catch{}r.send({code:0,data:{config:{hasCookie:!!(n.cookie&&n.cookie.length>0),cookieLength:n.cookie?.length||0,hasClasses:!!(n.classes_all&&n.classes_all.length>0),hasFilters:!!(n.filters_all&&n.filters_all.length>0),lastUpdate:n.lastUpdate||"\u672A\u77E5"},biliAllStatus:s}})}catch(n){console.error("\u83B7\u53D6\u72B6\u6001\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u72B6\u6001\u5931\u8D25: "+n.message})}})}var JQ,RVt,CVt,ZQ=ae(()=>{JQ=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.cookie)return t.cookie;if(e.config?.bilibili_all?.cookie)return e.config.bilibili_all.cookie}catch{}return""},RVt=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.classes_all)return t.classes_all;if(e.config?.bilibili_all?.classes_all)return e.config.bilibili_all.classes_all}catch{}return""},CVt=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.filters_all)return t.filters_all;if(e.config?.bilibili_all?.filters_all)return e.config.bilibili_all.filters_all}catch{}return""}});var eW,oDe,xVt,wVt=ae(()=>{eW=[{type_name:"\u6C99\u96D5\u52A8\u6F2B",type_id:"\u4E00\u53E3\u6C14\u6C99\u96D5\u52A8\u6F2B"},{type_name:"\u7EAA\u5F55\u7247",type_id:"\u7EAA\u5F55\u7247\u8D85\u6E05"},{type_name:"\u6F14\u5531\u4F1A",type_id:"\u6F14\u5531\u4F1A\u8D85\u6E05"},{type_name:"\u7F8E\u98DF",type_id:"\u7F8E\u98DF\u8D85\u6E05"},{type_name:"\u98DF\u8C31",type_id:"\u98DF\u8C31"},{type_name:"\u4F53\u80B2",type_id:"\u4F53\u80B2\u8D85\u6E05"},{type_name:"\u7403\u661F",type_id:"\u7403\u661F"},{type_name:"\u65C5\u6E38",type_id:"\u65C5\u6E38"},{type_name:"\u98CE\u666F",type_id:"\u98CE\u666F4K"},{type_name:"\u8BF4\u6848",type_id:"\u8BF4\u6848"},{type_name:"\u77E5\u540DUP\u4E3B",type_id:"\u77E5\u540DUP\u4E3B"},{type_name:"\u63A2\u7D22\u53D1\u73B0",type_id:"\u63A2\u7D22\u53D1\u73B0\u8D85\u6E05"},{type_name:"\u9B3C\u755C",type_id:"\u9B3C\u755C"},{type_name:"\u641E\u7B11",type_id:"\u641E\u7B11\u8D85\u6E05"},{type_name:"\u513F\u7AE5",type_id:"\u513F\u7AE5\u8D85\u6E05"},{type_name:"\u52A8\u7269\u4E16\u754C",type_id:"\u52A8\u7269\u4E16\u754C\u8D85\u6E05"},{type_name:"\u76F8\u58F0\u5C0F\u54C1",type_id:"\u76F8\u58F0\u5C0F\u54C1\u8D85\u6E05"},{type_name:"\u620F\u66F2",type_id:"\u620F\u66F2"},{type_name:"\u89E3\u8BF4",type_id:"\u89E3\u8BF4"},{type_name:"\u6F14\u8BB2",type_id:"\u6F14\u8BB2"},{type_name:"\u5C0F\u59D0\u59D0",type_id:"\u5C0F\u59D0\u59D0\u8D85\u6E05"},{type_name:"\u8352\u91CE\u6C42\u751F",type_id:"\u8352\u91CE\u6C42\u751F\u8D85\u6E05"},{type_name:"\u5065\u8EAB",type_id:"\u5065\u8EAB"},{type_name:"\u5E15\u6885\u62C9",type_id:"\u5E15\u6885\u62C9"},{type_name:"\u592A\u6781\u62F3",type_id:"\u592A\u6781\u62F3"},{type_name:"\u5E7F\u573A\u821E",type_id:"\u5E7F\u573A\u821E"},{type_name:"\u821E\u8E48",type_id:"\u821E\u8E48"},{type_name:"\u97F3\u4E50",type_id:"\u97F3\u4E50"},{type_name:"\u6B4C\u66F2",type_id:"\u6B4C\u66F2"},{type_name:"MV",type_id:"MV4K"},{type_name:"\u821E\u66F2",type_id:"\u821E\u66F2\u8D85\u6E05"},{type_name:"4K",type_id:"4K"},{type_name:"\u7535\u5F71",type_id:"\u7535\u5F71"},{type_name:"\u7535\u89C6\u5267",type_id:"\u7535\u89C6\u5267"},{type_name:"\u767D\u566A\u97F3",type_id:"\u767D\u566A\u97F3\u8D85\u6E05"},{type_name:"\u8003\u516C\u8003\u8BC1",type_id:"\u8003\u516C\u8003\u8BC1"},{type_name:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66",type_id:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66"},{type_name:"\u8F6F\u4EF6\u6559\u7A0B",type_id:"\u8F6F\u4EF6\u6559\u7A0B"},{type_name:"Windows",type_id:"Windows"},{type_name:"\u9009\u7F8E",type_id:"\u9009\u7F8E"},{type_name:"\u6A21\u7279",type_id:"\u6A21\u7279"},{type_name:"\u6CF3\u88C5\u79C0",type_id:"\u6CF3\u88C5\u79C0"},{type_name:"\u5185\u8863\u79C0",type_id:"\u5185\u8863\u79C0"},{type_name:"4K\u97F3\u4E50",type_id:"4K\u97F3\u4E50"},{type_name:"MV",type_id:"MV"},{type_name:"4K MV",type_id:"4K MV"},{type_name:"\u5973\u56E2",type_id:"\u5973\u56E2"},{type_name:"\u76F4\u64AD\u5E73\u53F0",type_id:"\u76F4\u64AD\u5E73\u53F0"},{type_name:"\u6F14\u5531\u4F1A",type_id:"\u6F14\u5531\u4F1A"},{type_name:"\u8BFE\u7A0B\u8F85\u5BFC",type_id:"\u8BFE\u7A0B\u8F85\u5BFC"},{type_name:"\u98CE\u666F",type_id:"\u98CE\u666F"},{type_name:"\u7F8E\u98DF",type_id:"\u7F8E\u98DF"},{type_name:"\u76F8\u58F0\u5C0F\u54C1",type_id:"\u76F8\u58F0\u5C0F\u54C1"},{type_name:"\u52A8\u7269\u4E16\u754C",type_id:"\u52A8\u7269\u4E16\u754C"},{type_name:"\u513F\u7AE5\u5C11\u513F",type_id:"\u513F\u7AE5\u5C11\u513F"}],oDe={\u8003\u516C\u8003\u8BC1:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u5531\u4F1A\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u963F\u675C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u963F\u675C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"Beyond\u6F14\u5531\u4F1A\u8D85\u6E05",v:"Beyond\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"By2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"By2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"BIGBANG\u6F14\u5531\u4F1A\u8D85\u6E05",v:"BIGBANG\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5742\u4E95\u6CC9\u6C34\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5742\u4E95\u6CC9\u6C34\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8349\u8722\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8349\u8722\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5D14\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5D14\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6234\u8343\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6234\u8343\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E01\u5F53\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E01\u5F53\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5200\u90CE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5200\u90CE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D39\u7FD4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D39\u7FD4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u623F\u4E1C\u7684\u732B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u623F\u4E1C\u7684\u732B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5149\u826F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5149\u826F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u9759\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u9759\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u80E1\u590F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u80E1\u590F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u97E9\u7EA2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u97E9\u7EA2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7ECF\u5178\u8001\u6B4C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7ECF\u5178\u8001\u6B4C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u91D1\u6C60\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u91D1\u6C60\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u739F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u739F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5723\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5723\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6881\u9759\u8339\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6881\u9759\u8339\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u7389\u521A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u7389\u521A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9ECE\u660E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9ECE\u660E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"LadyGaga\u6F14\u5531\u4F1A\u8D85\u6E05",v:"LadyGaga\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6734\u6811\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6734\u6811\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9F50\u79E6\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9F50\u79E6\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"SHE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"SHE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5B59\u6960\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5B59\u6960\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9676\u5586\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9676\u5586\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7530\u9707\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7530\u9707\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u6676\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u6676\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u597D\u58F0\u97F3\u738B\u9756\u96EF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u597D\u58F0\u97F3\u738B\u9756\u96EF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C6A\u5CF0\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C6A\u5CF0\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4F0D\u4F70\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4F0D\u4F70\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u83F2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u83F2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F26\u5B50\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F26\u5B50\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8BB8\u5DCD\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8BB8\u5DCD\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8BB8\u5D69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8BB8\u5D69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8427\u656C\u817E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8427\u656C\u817E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7FBD\u6CC9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7FBD\u6CC9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5764\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5764\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u79C0\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u79C0\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u5B87\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u5B87\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u534E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u534E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6DF1\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6DF1\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D75\u96F7\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D75\u96F7\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6167\u654F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6167\u654F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A\u8D85\u6E05"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u63A2\u7D22\u53D1\u73B0\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7535\u5F71:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u9B3C\u755C:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u4E00\u53E3\u6C14\u6C99\u96D5\u52A8\u6F2B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8BF4\u6848:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u8BF4\u6848",v:"\u8BF4\u6848"},{n:"\u6C64\u5706\u8BF4\u6848",v:"\u6C64\u5706\u8BF4\u6848"},{n:"\u5510\u5510\u8BF4\u6848",v:"\u5510\u5510\u8BF4\u6848"},{n:"\u7F57\u7FD4\u8BF4\u5211\u6CD5",v:"\u7F57\u7FD4\u8BF4\u5211\u6CD5"},{n:"\u4F55\u5BB6\u5F18\u8BF4\u6848",v:"\u4F55\u5BB6\u5F18\u8BF4\u6848"},{n:"\u97E9\u8BFA\u8BF4\u6848",v:"\u97E9\u8BFA\u8BF4\u6848"},{n:"\u8001V\u8BF4\u6848",v:"\u8001V\u8BF4\u6848"},{n:"\u7981\u64AD\u6863\u6848",v:"\u7981\u64AD\u6863\u6848"},{n:"\u8BF4\u6848",v:"\u8BF4\u6848"},{n:"\u7981\u64AD\u6863\u6848",v:"\u7981\u64AD\u6863\u6848"},{n:"4K\u8BF4\u6848",v:"4K\u8BF4\u6848"},{n:"4K\u6C64\u5706\u8BF4\u6848",v:"4K\u6C64\u5706\u8BF4\u6848"},{n:"4K\u5510\u5510\u8BF4\u6848",v:"4K\u5510\u5510\u8BF4\u6848"},{n:"4K\u7F57\u7FD4\u8BF4\u5211\u6CD5",v:"4K\u7F57\u7FD4\u8BF4\u5211\u6CD5"},{n:"4K\u4F55\u5BB6\u5F18\u8BF4\u6848",v:"4K\u4F55\u5BB6\u5F18\u8BF4\u6848"},{n:"4K\u97E9\u8BFA\u8BF4\u6848",v:"4K\u97E9\u8BFA\u8BF4\u6848"},{n:"4K\u8001V\u8BF4\u6848",v:"4K\u8001V\u8BF4\u6848"},{n:"4K\u7981\u64AD\u6863\u6848",v:"4K\u7981\u64AD\u6863\u6848"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u8BB2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8\u6F14\u8BB24K",v:"\u5168\u90E8\u6F14\u8BB24K"},{n:"\u827E\u8DC3\u8FDB\u6F14\u8BB24K",v:"\u827E\u8DC3\u8FDB\u6F14\u8BB24K"},{n:"\u8D85\u7EA7\u6F14\u8BF4\u5BB64K",v:"\u8D85\u7EA7\u6F14\u8BF4\u5BB64K"},{n:"\u7535\u5F71\u6F14\u8BB24K",v:"\u7535\u5F71\u6F14\u8BB24K"},{n:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD4K",v:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD4K"},{n:"\u611F\u52A8\u4E2D\u56FD4K",v:"\u611F\u52A8\u4E2D\u56FD4K"},{n:"\u90ED\u7EE7\u627F\u6F14\u8BB24K",v:"\u90ED\u7EE7\u627F\u6F14\u8BB24K"},{n:"\u534E\u6625\u83B9\u6F14\u8BB24K",v:"\u534E\u6625\u83B9\u6F14\u8BB24K"},{n:"\u96F7\u519B\u6F14\u8BB24K",v:"\u96F7\u519B\u6F14\u8BB24K"},{n:"\u7F57\u7FD4\u6F14\u8BB24K",v:"\u7F57\u7FD4\u6F14\u8BB24K"},{n:"\u4EFB\u6B63\u975E\u6F14\u8BB24K",v:"\u4EFB\u6B63\u975E\u6F14\u8BB24K"},{n:"TED\u6F14\u8BB24K",v:"TED\u6F14\u8BB24K"},{n:"\u6C6A\u6587\u658C\u6F14\u8BB24K",v:"\u6C6A\u6587\u658C\u6F14\u8BB24K"},{n:"\u4E00\u523B\u6F14\u8BB24K",v:"\u4E00\u523B\u6F14\u8BB24K"},{n:"\u8D75\u7ACB\u575A\u6F14\u8BB24K",v:"\u8D75\u7ACB\u575A\u6F14\u8BB24K"},{n:"\u90D1\u5F3A\u6F14\u8BB24K",v:"\u90D1\u5F3A\u6F14\u8BB24K"},{n:"\u6F14\u8BB2",v:"\u6F14\u8BB2"},{n:"\u827E\u8DC3\u8FDB\u6F14\u8BB2",v:"\u827E\u8DC3\u8FDB\u6F14\u8BB2"},{n:"\u8D85\u7EA7\u6F14\u8BF4\u5BB6",v:"\u8D85\u7EA7\u6F14\u8BF4\u5BB6"},{n:"\u7535\u5F71\u6F14\u8BB2",v:"\u7535\u5F71\u6F14\u8BB2"},{n:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD",v:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD"},{n:"\u611F\u52A8\u4E2D\u56FD",v:"\u611F\u52A8\u4E2D\u56FD"},{n:"\u90ED\u7EE7\u627F\u6F14\u8BB2",v:"\u90ED\u7EE7\u627F\u6F14\u8BB2"},{n:"\u534E\u6625\u83B9\u6F14\u8BB2",v:"\u534E\u6625\u83B9\u6F14\u8BB2"},{n:"\u96F7\u519B\u6F14\u8BB2",v:"\u96F7\u519B\u6F14\u8BB2"},{n:"\u7F57\u7FD4\u6F14\u8BB2",v:"\u7F57\u7FD4\u6F14\u8BB2"},{n:"\u4EFB\u6B63\u975E\u6F14\u8BB2",v:"\u4EFB\u6B63\u975E\u6F14\u8BB2"},{n:"TED\u6F14\u8BB2",v:"TED\u6F14\u8BB2"},{n:"\u6C6A\u6587\u658C\u6F14\u8BB2",v:"\u6C6A\u6587\u658C\u6F14\u8BB2"},{n:"\u4E00\u523B\u6F14\u8BB2",v:"\u4E00\u523B\u6F14\u8BB2"},{n:"\u8D75\u7ACB\u575A\u6F14\u8BB2",v:"\u8D75\u7ACB\u575A\u6F14\u8BB2"},{n:"\u90D1\u5F3A\u6F14\u8BB2",v:"\u90D1\u5F3A\u6F14\u8BB2"},{n:"4K\u6F14\u8BB2",v:"4K\u6F14\u8BB2"},{n:"4K\u827E\u8DC3\u8FDB\u6F14\u8BB2",v:"4K\u827E\u8DC3\u8FDB\u6F14\u8BB2"},{n:"4K\u8D85\u7EA7\u6F14\u8BF4\u5BB6",v:"4K\u8D85\u7EA7\u6F14\u8BF4\u5BB6"},{n:"4K\u7535\u5F71\u6F14\u8BB2",v:"4K\u7535\u5F71\u6F14\u8BB2"},{n:"4K\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD",v:"4K\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD"},{n:"4K\u611F\u52A8\u4E2D\u56FD",v:"4K\u611F\u52A8\u4E2D\u56FD"},{n:"4K\u90ED\u7EE7\u627F\u6F14\u8BB2",v:"4K\u90ED\u7EE7\u627F\u6F14\u8BB2"},{n:"4K\u534E\u6625\u83B9\u6F14\u8BB2",v:"4K\u534E\u6625\u83B9\u6F14\u8BB2"},{n:"4K\u96F7\u519B\u6F14\u8BB2",v:"4K\u96F7\u519B\u6F14\u8BB2"},{n:"4K\u7F57\u7FD4\u6F14\u8BB2",v:"4K\u7F57\u7FD4\u6F14\u8BB2"},{n:"4K\u4EFB\u6B63\u975E\u6F14\u8BB2",v:"4K\u4EFB\u6B63\u975E\u6F14\u8BB2"},{n:"4K TED\u6F14\u8BB2",v:"4K TED\u6F14\u8BB2"},{n:"4K\u6C6A\u6587\u658C\u6F14\u8BB2",v:"4K\u6C6A\u6587\u658C\u6F14\u8BB2"},{n:"4K\u4E00\u523B\u6F14\u8BB2",v:"4K\u4E00\u523B\u6F14\u8BB2"},{n:"4K\u8D75\u7ACB\u575A\u6F14\u8BB2",v:"4K\u8D75\u7ACB\u575A\u6F14\u8BB2"},{n:"4K\u90D1\u5F3A\u6F14\u8BB2",v:"4K\u90D1\u5F3A\u6F14\u8BB2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u89E3\u8BF4:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u89E3\u8BF4",v:"\u89E3\u8BF4"},{n:"\u7535\u5F71\u89E3\u8BF4",v:"\u7535\u5F71\u89E3\u8BF4"},{n:"\u7535\u89C6\u89E3\u8BF4",v:"\u7535\u89C6\u89E3\u8BF4"},{n:"\u5386\u53F2\u89E3\u8BF4",v:"\u5386\u53F2\u89E3\u8BF4"},{n:"\u52A8\u6F2B\u89E3\u8BF4",v:"\u52A8\u6F2B\u89E3\u8BF4"},{n:"\u5C0F\u8BF4\u89E3\u8BF4",v:"\u5C0F\u8BF4\u89E3\u8BF4"},{n:"\u89E3\u8BF4",v:"\u89E3\u8BF4"},{n:"4K\u89E3\u8BF4",v:"4K\u89E3\u8BF4"},{n:"4K\u7535\u5F71\u89E3\u8BF4",v:"4K\u7535\u5F71\u89E3\u8BF4"},{n:"4K\u7535\u89C6\u89E3\u8BF4",v:"4K\u7535\u89C6\u89E3\u8BF4"},{n:"4K\u5386\u53F2\u89E3\u8BF4",v:"4K\u5386\u53F2\u89E3\u8BF4"},{n:"4K\u52A8\u6F2B\u89E3\u8BF4",v:"4K\u52A8\u6F2B\u89E3\u8BF4"},{n:"4K\u5C0F\u8BF4\u89E3\u8BF4",v:"4K\u5C0F\u8BF4\u89E3\u8BF4"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98CE\u666F4K:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u98CE\u666F4K",v:"\u98CE\u666F4K"},{n:"\u6FB3\u95E8\u98CE\u666F4K",v:"\u6FB3\u95E8\u98CE\u666F4K"},{n:"\u5B89\u5FBD\u98CE\u666F4K",v:"\u5B89\u5FBD\u98CE\u666F4K"},{n:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F4K",v:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F4K"},{n:"\u5317\u4EAC\u98CE\u666F4K",v:"\u5317\u4EAC\u98CE\u666F4K"},{n:"\u91CD\u5E86\u98CE\u666F4K",v:"\u91CD\u5E86\u98CE\u666F4K"},{n:"\u8349\u539F\u98CE\u666F4K",v:"\u8349\u539F\u98CE\u666F4K"},{n:"\u5927\u6D77\u98CE\u666F4K",v:"\u5927\u6D77\u98CE\u666F4K"},{n:"\u798F\u5EFA\u98CE\u666F4K",v:"\u798F\u5EFA\u98CE\u666F4K"},{n:"\u5E7F\u4E1C\u98CE\u666F4K",v:"\u5E7F\u4E1C\u98CE\u666F4K"},{n:"\u5E7F\u897F\u98CE\u666F4K",v:"\u5E7F\u897F\u98CE\u666F4K"},{n:"\u8D35\u5DDE\u98CE\u666F4K",v:"\u8D35\u5DDE\u98CE\u666F4K"},{n:"\u7518\u8083\u98CE\u666F4K",v:"\u7518\u8083\u98CE\u666F4K"},{n:"\u6D77\u5357\u98CE\u666F4K",v:"\u6D77\u5357\u98CE\u666F4K"},{n:"\u6CB3\u5317\u98CE\u666F4K",v:"\u6CB3\u5317\u98CE\u666F4K"},{n:"\u6CB3\u5357\u98CE\u666F4K",v:"\u6CB3\u5357\u98CE\u666F4K"},{n:"\u6E56\u5317\u98CE\u666F4K",v:"\u6E56\u5317\u98CE\u666F4K"},{n:"\u6E56\u5357\u98CE\u666F4K",v:"\u6E56\u5357\u98CE\u666F4K"},{n:"\u9ED1\u9F99\u6C5F\u98CE\u666F4K",v:"\u9ED1\u9F99\u6C5F\u98CE\u666F4K"},{n:"\u5409\u6797\u98CE\u666F4K",v:"\u5409\u6797\u98CE\u666F4K"},{n:"\u6C5F\u82CF\u98CE\u666F4K",v:"\u6C5F\u82CF\u98CE\u666F4K"},{n:"\u6C5F\u897F\u98CE\u666F4K",v:"\u6C5F\u897F\u98CE\u666F4K"},{n:"\u8FBD\u5B81\u98CE\u666F4K",v:"\u8FBD\u5B81\u98CE\u666F4K"},{n:"\u6C11\u5BBF\u98CE\u666F4K",v:"\u6C11\u5BBF\u98CE\u666F4K"},{n:"\u5185\u8499\u53E4\u98CE\u666F4K",v:"\u5185\u8499\u53E4\u98CE\u666F4K"},{n:"\u5B81\u590F\u98CE\u666F4K",v:"\u5B81\u590F\u98CE\u666F4K"},{n:"\u9752\u6D77\u98CE\u666F4K",v:"\u9752\u6D77\u98CE\u666F4K"},{n:"\u4E0A\u6D77\u98CE\u666F4K",v:"\u4E0A\u6D77\u98CE\u666F4K"},{n:"\u9655\u897F\u98CE\u666F4K",v:"\u9655\u897F\u98CE\u666F4K"},{n:"\u56DB\u5DDD\u98CE\u666F4K",v:"\u56DB\u5DDD\u98CE\u666F4K"},{n:"\u5C71\u897F\u98CE\u666F4K",v:"\u5C71\u897F\u98CE\u666F4K"},{n:"\u5C71\u4E1C\u98CE\u666F4K",v:"\u5C71\u4E1C\u98CE\u666F4K"},{n:"\u5929\u6D25\u98CE\u666F4K",v:"\u5929\u6D25\u98CE\u666F4K"},{n:"\u53F0\u6E7E\u98CE\u666F4K",v:"\u53F0\u6E7E\u98CE\u666F4K"},{n:"\u5929\u7A7A\u98CE\u666F4K",v:"\u5929\u7A7A\u98CE\u666F4K"},{n:"\u897F\u6E56\u98CE\u666F4K",v:"\u897F\u6E56\u98CE\u666F4K"},{n:"\u897F\u85CF\u98CE\u666F4K",v:"\u897F\u85CF\u98CE\u666F4K"},{n:"\u65B0\u7586\u98CE\u666F4K",v:"\u65B0\u7586\u98CE\u666F4K"},{n:"\u9999\u6E2F\u98CE\u666F4K",v:"\u9999\u6E2F\u98CE\u666F4K"},{n:"\u4E91\u5357\u98CE\u666F4K",v:"\u4E91\u5357\u98CE\u666F4K"},{n:"\u6D59\u6C5F\u98CE\u666F4K",v:"\u6D59\u6C5F\u98CE\u666F4K"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],MV4K:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"MV4K",v:"MV4K"},{n:"\u963F\u675CMV4K",v:"\u963F\u675CMV4K"},{n:"\u963F\u9EDB\u5C14MV4K",v:"\u963F\u9EDB\u5C14MV4K"},{n:"BeyondMV4K",v:"BeyondMV4K"},{n:"By2MV4K",v:"By2MV4K"},{n:"BIGBANGMV4K",v:"BIGBANGMV4K"},{n:"\u5E03\u5170\u59AEMV4K",v:"\u5E03\u5170\u59AEMV4K"},{n:"\u9648\u5955\u8FC5MV4K",v:"\u9648\u5955\u8FC5MV4K"},{n:"\u8521\u4F9D\u6797MV4K",v:"\u8521\u4F9D\u6797MV4K"},{n:"\u521D\u97F3\u672A\u6765MV4K",v:"\u521D\u97F3\u672A\u6765MV4K"},{n:"\u8521\u5065\u96C5MV4K",v:"\u8521\u5065\u96C5MV4K"},{n:"\u9648\u5C0F\u6625MV4K",v:"\u9648\u5C0F\u6625MV4K"},{n:"\u8349\u8722MV4K",v:"\u8349\u8722MV4K"},{n:"\u9648\u6167\u5A34MV4K",v:"\u9648\u6167\u5A34MV4K"},{n:"\u5D14\u5065MV4K",v:"\u5D14\u5065MV4K"},{n:"\u4ED3\u6728\u9EBB\u8863MV4K",v:"\u4ED3\u6728\u9EBB\u8863MV4K"},{n:"\u6234\u8343MV4K",v:"\u6234\u8343MV4K"},{n:"\u52A8\u529B\u706B\u8F66MV4K",v:"\u52A8\u529B\u706B\u8F66MV4K"},{n:"\u9093\u4E3D\u541BMV4K",v:"\u9093\u4E3D\u541BMV4K"},{n:"\u4E01\u5F53MV4K",v:"\u4E01\u5F53MV4K"},{n:"\u5200\u90CEMV4K",v:"\u5200\u90CEMV4K"},{n:"\u9093\u7D2B\u68CBMV4K",v:"\u9093\u7D2B\u68CBMV4K"},{n:"\u6234\u4F69\u59AEMV4K",v:"\u6234\u4F69\u59AEMV4K"},{n:"\u9093\u4E3D\u541BMV4K",v:"\u9093\u4E3D\u541BMV4K"},{n:"\u98DE\u513F\u4E50\u961FMV4K",v:"\u98DE\u513F\u4E50\u961FMV4K"},{n:"\u8D39\u7389\u6E05MV4K",v:"\u8D39\u7389\u6E05MV4K"},{n:"\u8D39\u7FD4MV4K",v:"\u8D39\u7FD4MV4K"},{n:"\u65B9\u5927\u540CMV4K",v:"\u65B9\u5927\u540CMV4K"},{n:"\u623F\u4E1C\u7684\u732BMV4K",v:"\u623F\u4E1C\u7684\u732BMV4K"},{n:"\u51E4\u98DE\u98DEMV4K",v:"\u51E4\u98DE\u98DEMV4K"},{n:"\u51E4\u51F0\u4F20\u5947MV4K",v:"\u51E4\u51F0\u4F20\u5947MV4K"},{n:"\u53E4\u98CE\u6B4C\u66F24K",v:"\u53E4\u98CE\u6B4C\u66F24K"},{n:"\u56FD\u4E50\u5927\u51784K",v:"\u56FD\u4E50\u5927\u51784K"},{n:"\u90ED\u91C7\u6D01MV4K",v:"\u90ED\u91C7\u6D01MV4K"},{n:"\u5149\u826FMV4K",v:"\u5149\u826FMV4K"},{n:"\u90ED\u9759MV4K",v:"\u90ED\u9759MV4K"},{n:"\u90ED\u5BCC\u57CEMV4K",v:"\u90ED\u5BCC\u57CEMV4K"},{n:"\u80E1\u5F66\u658CMV4K",v:"\u80E1\u5F66\u658CMV4K"},{n:"\u80E1\u590FMV4K",v:"\u80E1\u590FMV4K"},{n:"\u97E9\u7EA2MV4K",v:"\u97E9\u7EA2MV4K"},{n:"\u9EC4\u54C1\u6E90MV4K",v:"\u9EC4\u54C1\u6E90MV4K"},{n:"\u9EC4\u5C0F\u7425MV4K",v:"\u9EC4\u5C0F\u7425MV4K"},{n:"\u82B1\u513F\u4E50\u961FMV4K",v:"\u82B1\u513F\u4E50\u961FMV4K"},{n:"\u9EC4\u5BB6\u5F3AMV4K",v:"\u9EC4\u5BB6\u5F3AMV4K"},{n:"\u540E\u8857\u7537\u5B69MV4K",v:"\u540E\u8857\u7537\u5B69MV4K"},{n:"\u7ECF\u5178\u8001\u6B4C4K",v:"\u7ECF\u5178\u8001\u6B4C4K"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2FMV4K",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2FMV4K"},{n:"\u91D1\u6C60MV4K",v:"\u91D1\u6C60MV4K"},{n:"\u91D1\u5FD7\u6587MV4K",v:"\u91D1\u5FD7\u6587MV4K"},{n:"\u7126\u8FC8\u5947MV4K",v:"\u7126\u8FC8\u5947MV4K"},{n:"\u7B77\u5B50\u5144\u5F1FMV4K",v:"\u7B77\u5B50\u5144\u5F1FMV4K"},{n:"\u674E\u739FMV4K",v:"\u674E\u739FMV4K"},{n:"\u6797\u5FC6\u83B2MV4K",v:"\u6797\u5FC6\u83B2MV4K"},{n:"\u674E\u514B\u52E4MV4K",v:"\u674E\u514B\u52E4MV4K"},{n:"\u5218\u5BAA\u534EMV4K",v:"\u5218\u5BAA\u534EMV4K"},{n:"\u674E\u5723\u6770MV4K",v:"\u674E\u5723\u6770MV4K"},{n:"\u6797\u5BA5\u5609MV4K",v:"\u6797\u5BA5\u5609MV4K"},{n:"\u6881\u9759\u8339MV4K",v:"\u6881\u9759\u8339MV4K"},{n:"\u674E\u5065MV4K",v:"\u674E\u5065MV4K"},{n:"\u6797\u4FCA\u6770MV4K",v:"\u6797\u4FCA\u6770MV4K"},{n:"\u674E\u7389\u521AMV4K",v:"\u674E\u7389\u521AMV4K"},{n:"\u6797\u5FD7\u70ABMV4K",v:"\u6797\u5FD7\u70ABMV4K"},{n:"\u674E\u8363\u6D69MV4K",v:"\u674E\u8363\u6D69MV4K"},{n:"\u674E\u5B87\u6625MV4K",v:"\u674E\u5B87\u6625MV4K"},{n:"\u6D1B\u5929\u4F9DMV4K",v:"\u6D1B\u5929\u4F9DMV4K"},{n:"\u6797\u5B50\u7965MV4K",v:"\u6797\u5B50\u7965MV4K"},{n:"\u674E\u5B97\u76DBMV4K",v:"\u674E\u5B97\u76DBMV4K"},{n:"\u9ECE\u660EMV4K",v:"\u9ECE\u660EMV4K"},{n:"\u5218\u5FB7\u534EMV4K",v:"\u5218\u5FB7\u534EMV4K"},{n:"\u7F57\u5927\u4F51MV4K",v:"\u7F57\u5927\u4F51MV4K"},{n:"\u6797\u80AF\u516C\u56EDMV4K",v:"\u6797\u80AF\u516C\u56EDMV4K"},{n:"LadyGagaMV4K",v:"LadyGagaMV4K"},{n:"\u65C5\u884C\u56E2\u4E50\u961FMV4K",v:"\u65C5\u884C\u56E2\u4E50\u961FMV4K"},{n:"\u83AB\u6587\u851AMV4K",v:"\u83AB\u6587\u851AMV4K"},{n:"\u6BDB\u4E0D\u6613MV4K",v:"\u6BDB\u4E0D\u6613MV4K"},{n:"\u6885\u8273\u82B3MV4K",v:"\u6885\u8273\u82B3MV4K"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900AMV4K",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900AMV4K"},{n:"\u5357\u62F3\u5988\u5988MV4K",v:"\u5357\u62F3\u5988\u5988MV4K"},{n:"\u6734\u6811MV4K",v:"\u6734\u6811MV4K"},{n:"\u9F50\u79E6MV4K",v:"\u9F50\u79E6MV4K"},{n:"\u9752\u9E1F\u98DE\u9C7CMV4K",v:"\u9752\u9E1F\u98DE\u9C7CMV4K"},{n:"\u5BB9\u7956\u513FMV4K",v:"\u5BB9\u7956\u513FMV4K"},{n:"\u70ED\u6B4CMV4K",v:"\u70ED\u6B4CMV4K"},{n:"\u4EFB\u8D24\u9F50MV4K",v:"\u4EFB\u8D24\u9F50MV4K"},{n:"\u6C34\u6728\u5E74\u534EMV4K",v:"\u6C34\u6728\u5E74\u534EMV4K"},{n:"\u5B59\u71D5\u59FFMV4K",v:"\u5B59\u71D5\u59FFMV4K"},{n:"\u82CF\u6253\u7EFFMV4K",v:"\u82CF\u6253\u7EFFMV4K"},{n:"SHEMV4K",v:"SHEMV4K"},{n:"\u5B59\u6960MV4K",v:"\u5B59\u6960MV4K"},{n:"\u9676\u5586MV4K",v:"\u9676\u5586MV4K"},{n:"\u8C2D\u548F\u9E9FMV4K",v:"\u8C2D\u548F\u9E9FMV4K"},{n:"\u7530\u99A5\u7504MV4K",v:"\u7530\u99A5\u7504MV4K"},{n:"\u8C2D\u7EF4\u7EF4MV4K",v:"\u8C2D\u7EF4\u7EF4MV4K"},{n:"\u9003\u8DD1\u8BA1\u5212MV4K",v:"\u9003\u8DD1\u8BA1\u5212MV4K"},{n:"\u7530\u9707MV4K",v:"\u7530\u9707MV4K"},{n:"\u8C2D\u6676MV4K",v:"\u8C2D\u6676MV4K"},{n:"\u5C60\u6D2A\u521AMV4K",v:"\u5C60\u6D2A\u521AMV4K"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279MV4K",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279MV4K"},{n:"\u738B\u529B\u5B8FMV4K",v:"\u738B\u529B\u5B8FMV4K"},{n:"\u738B\u6770MV4K",v:"\u738B\u6770MV4K"},{n:"\u5434\u514B\u7FA4MV4K",v:"\u5434\u514B\u7FA4MV4K"},{n:"\u738B\u5FC3\u51CCMV4K",v:"\u738B\u5FC3\u51CCMV4K"},{n:"\u6C6A\u5CF0MV4K",v:"\u6C6A\u5CF0MV4K"},{n:"\u4F0D\u4F70MV4K",v:"\u4F0D\u4F70MV4K"},{n:"\u738B\u83F2MV4K",v:"\u738B\u83F2MV4K"},{n:"\u4E94\u6708\u5929MV4K",v:"\u4E94\u6708\u5929MV4K"},{n:"\u6C6A\u82CF\u6CF7MV4K",v:"\u6C6A\u82CF\u6CF7MV4K"},{n:"\u5F90\u4F73\u83B9MV4K",v:"\u5F90\u4F73\u83B9MV4K"},{n:"\u5F26\u5B50MV4K",v:"\u5F26\u5B50MV4K"},{n:"\u8427\u4E9A\u8F69MV4K",v:"\u8427\u4E9A\u8F69MV4K"},{n:"\u8BB8\u5DCDMV4K",v:"\u8BB8\u5DCDMV4K"},{n:"\u859B\u4E4B\u8C26MV4K",v:"\u859B\u4E4B\u8C26MV4K"},{n:"\u8BB8\u5D69MV4K",v:"\u8BB8\u5D69MV4K"},{n:"\u5C0F\u864E\u961FMV4K",v:"\u5C0F\u864E\u961FMV4K"},{n:"\u8427\u656C\u817EMV4K",v:"\u8427\u656C\u817EMV4K"},{n:"\u8C22\u9706\u950BMV4K",v:"\u8C22\u9706\u950BMV4K"},{n:"\u5F90\u5C0F\u51E4MV4K",v:"\u5F90\u5C0F\u51E4MV4K"},{n:"\u4FE1\u4E50\u961FMV4K",v:"\u4FE1\u4E50\u961FMV4K"},{n:"\u591C\u613F\u4E50\u961FMV4K",v:"\u591C\u613F\u4E50\u961FMV4K"},{n:"\u539F\u521B\u97F3\u4E50MV4K",v:"\u539F\u521B\u97F3\u4E50MV4K"},{n:"\u7FBD\u6CC9MV4K",v:"\u7FBD\u6CC9MV4K"},{n:"\u7CA4\u8BEDMV4K",v:"\u7CA4\u8BEDMV4K"},{n:"\u90C1\u53EF\u552FMV4K",v:"\u90C1\u53EF\u552FMV4K"},{n:"\u53F6\u5029\u6587MV4K",v:"\u53F6\u5029\u6587MV4K"},{n:"\u6768\u5764MV4K",v:"\u6768\u5764MV4K"},{n:"\u5EBE\u6F84\u5E86MV4K",v:"\u5EBE\u6F84\u5E86MV4K"},{n:"\u5C24\u957F\u9756MV4K",v:"\u5C24\u957F\u9756MV4K"},{n:"\u6613\u70CA\u5343\u73BAMV4K",v:"\u6613\u70CA\u5343\u73BAMV4K"},{n:"\u8881\u5A05\u7EF4MV4K",v:"\u8881\u5A05\u7EF4MV4K"},{n:"\u6768\u4E1E\u7433MV4K",v:"\u6768\u4E1E\u7433MV4K"},{n:"\u6768\u5343\u5B05MV4K",v:"\u6768\u5343\u5B05MV4K"},{n:"\u6768\u5B97\u7EACMV4K",v:"\u6768\u5B97\u7EACMV4K"},{n:"\u5468\u6770\u4F26MV4K",v:"\u5468\u6770\u4F26MV4K"},{n:"\u5F20\u5B66\u53CBMV4K",v:"\u5F20\u5B66\u53CBMV4K"},{n:"\u5F20\u4FE1\u54F2MV4K",v:"\u5F20\u4FE1\u54F2MV4K"},{n:"\u5F20\u5B87MV4K",v:"\u5F20\u5B87MV4K"},{n:"\u5468\u534E\u5065MV4K",v:"\u5468\u534E\u5065MV4K"},{n:"\u5F20\u97F6\u6DB5MV4K",v:"\u5F20\u97F6\u6DB5MV4K"},{n:"\u5468\u6DF1MV4K",v:"\u5468\u6DF1MV4K"},{n:"\u7EB5\u8D2F\u7EBFMV4K",v:"\u7EB5\u8D2F\u7EBFMV4K"},{n:"\u8D75\u96F7MV4K",v:"\u8D75\u96F7MV4K"},{n:"\u5468\u4F20\u96C4MV4K",v:"\u5468\u4F20\u96C4MV4K"},{n:"\u5F20\u56FD\u8363MV4K",v:"\u5F20\u56FD\u8363MV4K"},{n:"\u5468\u6167\u654FMV4K",v:"\u5468\u6167\u654FMV4K"},{n:"\u5F20\u60E0\u59B9MV4K",v:"\u5F20\u60E0\u59B9MV4K"},{n:"\u5468\u7B14\u7545MV4K",v:"\u5468\u7B14\u7545MV4K"},{n:"\u90D1\u4E2D\u57FAMV4K",v:"\u90D1\u4E2D\u57FAMV4K"},{n:"\u5F20\u827A\u5174MV4K",v:"\u5F20\u827A\u5174MV4K"},{n:"\u5F20\u9707\u5CB3MV4K",v:"\u5F20\u9707\u5CB3MV4K"},{n:"\u4E2D\u56FD\u597D\u58F0\u97F3MV4K",v:"\u4E2D\u56FD\u597D\u58F0\u97F3MV4K"},{n:"\u5F20\u96E8\u751FMV4K",v:"\u5F20\u96E8\u751FMV4K"},{n:"\u90D1\u667A\u5316MV4K",v:"\u90D1\u667A\u5316MV4K"},{n:"\u5353\u4F9D\u5A77MV4K",v:"\u5353\u4F9D\u5A77MV4K"},{n:"\u4E2D\u5C9B\u7F8E\u96EAMV4K",v:"\u4E2D\u5C9B\u7F8E\u96EAMV4K"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E15\u6885\u62C9:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5E15\u6885\u62C9",v:"\u5E15\u6885\u62C9"},{n:"\u5E15\u6885\u62C9\u7626\u817F",v:"\u5E15\u6885\u62C9\u7626\u817F"},{n:"\u5E15\u6885\u62C9\u8179\u90E8",v:"\u5E15\u6885\u62C9\u8179\u90E8"},{n:"\u5E15\u6885\u62C9\u624B\u81C2",v:"\u5E15\u6885\u62C9\u624B\u81C2"},{n:"\u5E15\u6885\u62C9\u70ED\u8EAB",v:"\u5E15\u6885\u62C9\u70ED\u8EAB"},{n:"\u5E15\u6885\u62C9\u821E\u8E48",v:"\u5E15\u6885\u62C9\u821E\u8E48"},{n:"\u5E15\u6885\u62C9\u71C3\u8102",v:"\u5E15\u6885\u62C9\u71C3\u8102"},{n:"\u5E15\u6885\u62C9\u6709\u6C27",v:"\u5E15\u6885\u62C9\u6709\u6C27"},{n:"\u5E15\u6885\u62C9\u62C9\u4F38",v:"\u5E15\u6885\u62C9\u62C9\u4F38"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u77E5\u540DUP\u4E3B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u77E5\u540DUP\u4E3B",v:"\u77E5\u540DUP\u4E3B"},{n:"\u83E0\u841D\u8D5B\u4E1C",v:"\u83E0\u841D\u8D5B\u4E1C"},{n:"\u51AF\u63D0\u83AB",v:"\u51AF\u63D0\u83AB"},{n:"\u6797\u5EF6\u79CB",v:"\u6797\u5EF6\u79CB"},{n:"-LKs-",v:"-LKs-"},{n:"\u5C0F\u7EA6\u7FF0\u53EF\u6C57",v:"\u5C0F\u7EA6\u7FF0\u53EF\u6C57"},{n:"low\u9986\u957F",v:"low\u9986\u957F"},{n:"\u81EA\u8BF4\u81EA\u8BDD\u7684\u603B\u88C1",v:"\u81EA\u8BF4\u81EA\u8BDD\u7684\u603B\u88C1"},{n:"\u6240\u957F\u6797\u8D85",v:"\u6240\u957F\u6797\u8D85"},{n:"\u4E16\u754C\u672A\u89E3\u4E4B\u8C1CM",v:"\u4E16\u754C\u672A\u89E3\u4E4B\u8C1CM"},{n:"\u674E\u6C38\u4E50\u8001\u5E08\u5B98\u65B9",v:"\u674E\u6C38\u4E50\u8001\u5E08\u5B98\u65B9"},{n:"\u7F57\u5179",v:"\u7F57\u5179"},{n:"\u56DE\u52302049",v:"\u56DE\u52302049"},{n:"\u4E8C\u6B21\u5143\u7684\u4E2D\u79D1\u9662\u7269\u7406\u6240",v:"\u4E8C\u6B21\u5143\u7684\u4E2D\u79D1\u9662\u7269\u7406\u6240"},{n:"\u6BD5\u5BFCTHU",v:"\u6BD5\u5BFCTHU"},{n:"\u7F57\u7FD4\u8BB2\u5211\u6CD5",v:"\u7F57\u7FD4\u8BB2\u5211\u6CD5"},{n:"\u6234\u535A\u58EB\u5B9E\u9A8C\u5BA4",v:"\u6234\u535A\u58EB\u5B9E\u9A8C\u5BA4"},{n:"\u82B3\u65AF\u5854\u8299",v:"\u82B3\u65AF\u5854\u8299"},{n:"\u53C2\u8D5B\u8005\u7F51",v:"\u53C2\u8D5B\u8005\u7F51"},{n:"\u4E09\u7EF4\u5730\u56FE\u770B\u4E16\u754C",v:"\u4E09\u7EF4\u5730\u56FE\u770B\u4E16\u754C"},{n:"\u6709\u673A\u793E\u4F1A",v:"\u6709\u673A\u793E\u4F1A"},{n:"\u4E4C\u9E26\u6821\u5C09CaptainWuya",v:"\u4E4C\u9E26\u6821\u5C09CaptainWuya"},{n:"\u679C\u58F3",v:"\u679C\u58F3"},{n:"\u4E25\u4F2F\u94A7",v:"\u4E25\u4F2F\u94A7"},{n:"\u662F\u4F60\u4EEC\u7684\u5EB7\u5EB7",v:"\u662F\u4F60\u4EEC\u7684\u5EB7\u5EB7"},{n:"\u8001\u7238\u8BC4\u6D4B",v:"\u8001\u7238\u8BC4\u6D4B"},{n:"\u786C\u6838\u7684\u534A\u4F5B\u4ED9\u4EBA",v:"\u786C\u6838\u7684\u534A\u4F5B\u4ED9\u4EBA"},{n:"\u76D7\u6708\u793E\u98DF\u9047\u8BB0",v:"\u76D7\u6708\u793E\u98DF\u9047\u8BB0"},{n:"\u6211\u662F\u90ED\u6770\u745E",v:"\u6211\u662F\u90ED\u6770\u745E"},{n:"\u65E0\u7A77\u5C0F\u4EAE\u7684\u79D1\u666E\u65E5\u5E38",v:"\u65E0\u7A77\u5C0F\u4EAE\u7684\u79D1\u666E\u65E5\u5E38"},{n:"papi\u9171",v:"papi\u9171"},{n:"\u8001\u756A\u8304",v:"\u8001\u756A\u8304"},{n:"\u7EF5\u7F8A\u6599\u7406",v:"\u7EF5\u7F8A\u6599\u7406"},{n:"\u8001\u5E08\u597D\u6211\u53EB\u4F55\u540C\u5B66",v:"\u8001\u5E08\u597D\u6211\u53EB\u4F55\u540C\u5B66"},{n:"\u656C\u6C49\u537F",v:"\u656C\u6C49\u537F"},{n:"\u5468\u516D\u91CEZoey",v:"\u5468\u516D\u91CEZoey"},{n:"\u6728\u9C7C\u6C34\u5FC3",v:"\u6728\u9C7C\u6C34\u5FC3"},{n:"\u51C9\u98CEKaze",v:"\u51C9\u98CEKaze"},{n:"\u5C0F\u6F6E\u9662\u957F",v:"\u5C0F\u6F6E\u9662\u957F"},{n:"\u4E2D\u56FDBOY\u8D85\u7EA7\u5927\u7329\u7329",v:"\u4E2D\u56FDBOY\u8D85\u7EA7\u5927\u7329\u7329"},{n:"\u674E\u5B50\u67D2",v:"\u674E\u5B50\u67D2"},{n:"\u6556\u5382\u957F",v:"\u6556\u5382\u957F"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u592A\u6781\u62F3:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u592A\u6781\u62F3",v:"\u592A\u6781\u62F3"},{n:"\u592A\u6781\u62F3\u90B1\u6167\u82B3",v:"\u592A\u6781\u62F3\u90B1\u6167\u82B3"},{n:"\u592A\u6781\u62F3\u9648\u6C0F",v:"\u592A\u6781\u62F3\u9648\u6C0F"},{n:"\u592A\u6781\u62F3\u6B66\u5F53",v:"\u592A\u6781\u62F3\u6B66\u5F53"},{n:"\u592A\u6781\u62F3\u4E8C\u5341\u56DB\u5F0F",v:"\u592A\u6781\u62F3\u4E8C\u5341\u56DB\u5F0F"},{n:"\u592A\u6781\u62F3\u4E09\u5341\u516D\u5F0F",v:"\u592A\u6781\u62F3\u4E09\u5341\u516D\u5F0F"},{n:"\u4E94\u79BD\u620F",v:"\u4E94\u79BD\u620F"},{n:"\u516B\u6BB5\u9526",v:"\u516B\u6BB5\u9526"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u821E\u8E48:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u821E\u8E48",v:"\u821E\u8E48"},{n:"\u5B85\u821E",v:"\u5B85\u821E"},{n:"\u8857\u821E",v:"\u8857\u821E"},{n:"\u4E2D\u56FD\u821E",v:"\u4E2D\u56FD\u821E"},{n:"\u5E7F\u573A\u821E",v:"\u5E7F\u573A\u821E"},{n:"\u4EA4\u8C0A\u821E",v:"\u4EA4\u8C0A\u821E"},{n:"\u821E\u8E48\u6559\u7A0B",v:"\u821E\u8E48\u6559\u7A0B"},{n:"\u821E\u8E48",v:"\u821E\u8E48"},{n:"\u660E\u661F\u821E\u8E48",v:"\u660E\u661F\u821E\u8E48"},{n:"\u97E9\u821E",v:"\u97E9\u821E"},{n:"\u53E4\u5178\u821E",v:"\u53E4\u5178\u821E"},{n:"\u7FFB\u8DF3",v:"\u7FFB\u8DF3"},{n:"\u53E4\u98CE\u821E",v:"\u53E4\u98CE\u821E"},{n:"\u73B0\u4EE3\u821E",v:"\u73B0\u4EE3\u821E"},{n:"\u7235\u58EB\u821E",v:"\u7235\u58EB\u821E"},{n:"\u82AD\u857E",v:"\u82AD\u857E"},{n:"\u7F16\u821E",v:"\u7F16\u821E"},{n:"POPPING",v:"POPPING"},{n:"\u6781\u4E50\u51C0\u571F",v:"\u6781\u4E50\u51C0\u571F"},{n:"\u6843\u6E90\u604B\u6B4C",v:"\u6843\u6E90\u604B\u6B4C"},{n:"\u65B0\u5B9D\u5C9B",v:"\u65B0\u5B9D\u5C9B"},{n:"\u62C9\u4E01\u821E",v:"\u62C9\u4E01\u821E"},{n:"\u8E66\u8FEA",v:"\u8E66\u8FEA"},{n:"\u6C11\u65CF\u821E",v:"\u6C11\u65CF\u821E"},{n:"\u6296\u80A9\u821E",v:"\u6296\u80A9\u821E"},{n:"\u9F50\u821E",v:"\u9F50\u821E"},{n:"\u673A\u68B0\u821E",v:"\u673A\u68B0\u821E"},{n:"BDF",v:"BDF"},{n:"\u7EC3\u4E60\u5BA4",v:"\u7EC3\u4E60\u5BA4"},{n:"\u7F8E\u5973\u821E\u8E48",v:"\u7F8E\u5973\u821E\u8E48"},{n:"\u725B\u4ED4\u88E4",v:"\u725B\u4ED4\u88E4"},{n:"\u9ED1\u4E1D",v:"\u9ED1\u4E1D"},{n:"\u8D85\u77ED\u88E4",v:"\u8D85\u77ED\u88E4"},{n:"\u8D85\u77ED\u88D9",v:"\u8D85\u77ED\u88D9"},{n:"\u821E\u8E48\u7EFC\u5408",v:"\u821E\u8E48\u7EFC\u5408"},{n:"\u821E\u8E48\u6559\u7A0B",v:"\u821E\u8E48\u6559\u7A0B"},{n:"4K\u821E\u8E48",v:"4K\u821E\u8E48"},{n:"4K\u5B85\u821E",v:"4K\u5B85\u821E"},{n:"4K\u8857\u821E",v:"4K\u8857\u821E"},{n:"4K\u660E\u661F\u821E\u8E48",v:"4K\u660E\u661F\u821E\u8E48"},{n:"4K\u97E9\u821E",v:"4K\u97E9\u821E"},{n:"4K\u53E4\u5178\u821E",v:"4K\u53E4\u5178\u821E"},{n:"4K\u7FFB\u8DF3",v:"4K\u7FFB\u8DF3"},{n:"4K\u4E2D\u56FD\u821E",v:"4K\u4E2D\u56FD\u821E"},{n:"4K\u53E4\u98CE\u821E",v:"4K\u53E4\u98CE\u821E"},{n:"4K\u73B0\u4EE3\u821E",v:"4K\u73B0\u4EE3\u821E"},{n:"4K\u7235\u58EB\u821E",v:"4K\u7235\u58EB\u821E"},{n:"4K\u82AD\u857E",v:"4K\u82AD\u857E"},{n:"4K\u7F16\u821E",v:"4K\u7F16\u821E"},{n:"4K POPPING",v:"4K POPPING"},{n:"4K\u6781\u4E50\u51C0\u571F",v:"4K\u6781\u4E50\u51C0\u571F"},{n:"4K\u6843\u6E90\u604B\u6B4C",v:"4K\u6843\u6E90\u604B\u6B4C"},{n:"4K\u65B0\u5B9D\u5C9B",v:"4K\u65B0\u5B9D\u5C9B"},{n:"4K\u62C9\u4E01\u821E",v:"4K\u62C9\u4E01\u821E"},{n:"4K\u8E66\u8FEA",v:"4K\u8E66\u8FEA"},{n:"4K\u6C11\u65CF\u821E",v:"4K\u6C11\u65CF\u821E"},{n:"4K\u6296\u80A9\u821E",v:"4K\u6296\u80A9\u821E"},{n:"4K\u9F50\u821E",v:"4K\u9F50\u821E"},{n:"4K\u673A\u68B0\u821E",v:"4K\u673A\u68B0\u821E"},{n:"4K\u5E7F\u573A\u821E",v:"4K\u5E7F\u573A\u821E"},{n:"4KBDF",v:"4KBDF"},{n:"4K\u7EC3\u4E60\u5BA4",v:"4K\u7EC3\u4E60\u5BA4"},{n:"4K\u7F8E\u5973\u821E\u8E48",v:"4K\u7F8E\u5973\u821E\u8E48"},{n:"4K\u725B\u4ED4\u88E4",v:"4K\u725B\u4ED4\u88E4"},{n:"4K\u9ED1\u4E1D",v:"4K\u9ED1\u4E1D"},{n:"4K\u8D85\u77ED\u88E4",v:"4K\u8D85\u77ED\u88E4"},{n:"4K\u8D85\u77ED\u88D9",v:"4K\u8D85\u77ED\u88D9"},{n:"4K\u821E\u8E48\u7EFC\u5408",v:"4K\u821E\u8E48\u7EFC\u5408"},{n:"4K\u821E\u8E48\u6559\u7A0B",v:"4K\u821E\u8E48\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u97F3\u4E50:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u94A2\u7434\u66F2",v:"\u94A2\u7434\u66F2"},{n:"\u534F\u594F\u66F2r",v:"\u534F\u594F\u66F2r"},{n:"\u4E2D\u56FD\u53E4\u98CE\u97F3\u4E50",v:"\u4E2D\u56FD\u53E4\u98CE\u97F3\u4E50"},{n:"\u80CC\u666F\u97F3\u4E50",v:"\u80CC\u666F\u97F3\u4E50"},{n:"\u52A9\u7720\u97F3\u4E50",v:"\u52A9\u7720\u97F3\u4E50"},{n:"\u80CE\u6559\u97F3\u4E50",v:"\u80CE\u6559\u97F3\u4E50"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u539F\u521B\u97F3\u4E50",v:"\u539F\u521B\u97F3\u4E50"},{n:"\u7FFB\u5531",v:"\u7FFB\u5531"},{n:"\u6F14\u594F",v:"\u6F14\u594F"},{n:"VOCALOID\xB7UTAU",v:"VOCALOID\xB7UTAU"},{n:"\u97F3\u4E50\u73B0\u573A",v:"\u97F3\u4E50\u73B0\u573A"},{n:"\u539F\u58F0\u97F3\u4E50",v:"\u539F\u58F0\u97F3\u4E50"},{n:"\u4E50\u8BC4\u76D8\u70B9",v:"\u4E50\u8BC4\u76D8\u70B9"},{n:"\u97F3\u4E50\u6559\u5B66",v:"\u97F3\u4E50\u6559\u5B66"},{n:"\u97F3\u4E50\u7EFC\u5408",v:"\u97F3\u4E50\u7EFC\u5408"},{n:"\u8BF4\u5531",v:"\u8BF4\u5531"},{n:"HIPHOP",v:"HIPHOP"},{n:"\u4E2D\u56FD\u98CE",v:"\u4E2D\u56FD\u98CE"},{n:"\u53E4\u98CE",v:"\u53E4\u98CE"},{n:"\u7535\u97F3",v:"\u7535\u97F3"},{n:"\u6447\u6EDA",v:"\u6447\u6EDA"},{n:"\u6C11\u8C23",v:"\u6C11\u8C23"},{n:"\u7235\u58EB",v:"\u7235\u58EB"},{n:"\u7EAF\u97F3\u4E50",v:"\u7EAF\u97F3\u4E50"},{n:"BEAT",v:"BEAT"},{n:"REMIX",v:"REMIX"},{n:"\u4EBA\u58F0\u672C\u5BB6",v:"\u4EBA\u58F0\u672C\u5BB6"},{n:"\u56FD\u4EBA\u539F\u521B",v:"\u56FD\u4EBA\u539F\u521B"},{n:"\u539F\u521B\u6B4C\u66F2",v:"\u539F\u521B\u6B4C\u66F2"},{n:"\u7F16\u66F2",v:"\u7F16\u66F2"},{n:"\u6539\u7F16",v:"\u6539\u7F16"},{n:"\u5409\u4ED6",v:"\u5409\u4ED6"},{n:"\u7535\u5B50\u97F3\u4E50",v:"\u7535\u5B50\u97F3\u4E50"},{n:"\u94A2\u7434",v:"\u94A2\u7434"},{n:"\u56FD\u4EBA\u7537\u58F0",v:"\u56FD\u4EBA\u7537\u58F0"},{n:"\u56FD\u4EBA\u5973\u751F",v:"\u56FD\u4EBA\u5973\u751F"},{n:"\u4E2D\u6587\u7FFB\u5531",v:"\u4E2D\u6587\u7FFB\u5531"},{n:"\u82F1\u6587\u7FFB\u5531",v:"\u82F1\u6587\u7FFB\u5531"},{n:"VOCALOID",v:"VOCALOID"},{n:"\u71C3\u5411",v:"\u71C3\u5411"},{n:"\u4E2D\u6587\u586B\u8BCD",v:"\u4E2D\u6587\u586B\u8BCD"},{n:"\u7075\u9B42\u6B4C\u624B",v:"\u7075\u9B42\u6B4C\u624B"},{n:"\u6CBB\u6108\u5411",v:"\u6CBB\u6108\u5411"},{n:"COVER",v:"COVER"},{n:"\u521D\u6295\u7A3F",v:"\u521D\u6295\u7A3F"},{n:"\u5409\u4ED6\u5F39\u5531",v:"\u5409\u4ED6\u5F39\u5531"},{n:"\u539F\u521BPV",v:"\u539F\u521BPV"},{n:"\u9B54\u9053\u7956\u5E08",v:"\u9B54\u9053\u7956\u5E08"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u65B0\u4EBA\u5411",v:"\u65B0\u4EBA\u5411"},{n:"\u798F\u5229\u8033\u673A",v:"\u798F\u5229\u8033\u673A"},{n:"\u521B\u610F\u6F14\u594F",v:"\u521B\u610F\u6F14\u594F"},{n:"\u8857\u5934\u8868\u6F14",v:"\u8857\u5934\u8868\u6F14"},{n:"\u7FFB\u5F39",v:"\u7FFB\u5F39"},{n:"\u4E50\u961F",v:"\u4E50\u961F"},{n:"\u6C11\u4E50",v:"\u6C11\u4E50"},{n:"\u5408\u594F",v:"\u5408\u594F"},{n:"\u6307\u5F39",v:"\u6307\u5F39"},{n:"\u5C0F\u63D0\u7434",v:"\u5C0F\u63D0\u7434"},{n:"\u67B6\u5B50\u9F13",v:"\u67B6\u5B50\u9F13"},{n:"\u6728\u5409\u4ED6",v:"\u6728\u5409\u4ED6"},{n:"BGM",v:"BGM"},{n:"\u5361\u7956\u7B1B",v:"\u5361\u7956\u7B1B"},{n:"\u7535\u5409\u4ED6",v:"\u7535\u5409\u4ED6"},{n:"LAUNCHPAD",v:"LAUNCHPAD"},{n:"\u8D1D\u65AF",v:"\u8D1D\u65AF"},{n:"\u53E3\u7434",v:"\u53E3\u7434"},{n:"\u6307\u5F39\u5409\u4ED6",v:"\u6307\u5F39\u5409\u4ED6"},{n:"\u7435\u7436",v:"\u7435\u7436"},{n:"\u626C\u7434",v:"\u626C\u7434"},{n:"\u53E4\u5178\u97F3\u4E50",v:"\u53E4\u5178\u97F3\u4E50"},{n:"\u53E4\u7B5D",v:"\u53E4\u7B5D"},{n:"\u4E8C\u80E1",v:"\u4E8C\u80E1"},{n:"BEATBOX",v:"BEATBOX"},{n:"\u53E4\u5178",v:"\u53E4\u5178"},{n:"\u6D1B\u5929\u4F9D",v:"\u6D1B\u5929\u4F9D"},{n:"\u4E50\u6B63\u7EEB",v:"\u4E50\u6B63\u7EEB"},{n:"\u8A00\u548C",v:"\u8A00\u548C"},{n:"\u4E50\u6B63\u9F99\u7259",v:"\u4E50\u6B63\u9F99\u7259"},{n:"\u58A8\u6E05\u5F26",v:"\u58A8\u6E05\u5F26"},{n:"\u5FBD\u7FBD\u6469\u67EF",v:"\u5FBD\u7FBD\u6469\u67EF"},{n:"Vsinger",v:"Vsinger"},{n:"\u5FC3\u534E",v:"\u5FC3\u534E"},{n:"\u661F\u5C18",v:"\u661F\u5C18"},{n:"\u5AE3\u6C50",v:"\u5AE3\u6C50"},{n:"\u521D\u97F3\u672A\u6765",v:"\u521D\u97F3\u672A\u6765"},{n:"\u955C\u97F3\u94C3",v:"\u955C\u97F3\u94C3"},{n:"\u5DE1\u97F3\u6D41\u6B4C",v:"\u5DE1\u97F3\u6D41\u6B4C"},{n:"KAITO",v:"KAITO"},{n:"flower",v:"flower"},{n:"\u5143\u7B71",v:"\u5143\u7B71"},{n:"VOCALOID\u4E2D\u6587\u66F2",v:"VOCALOID\u4E2D\u6587\u66F2"},{n:"\u83B2\u534E",v:"\u83B2\u534E"},{n:"\u5357\u5317\u7EC4",v:"\u5357\u5317\u7EC4"},{n:"\u955C\u97F3\u53CC\u5B50",v:"\u955C\u97F3\u53CC\u5B50"},{n:"MUTA\u4E2D\u6587\u66F2",v:"MUTA\u4E2D\u6587\u66F2"},{n:"UTAU\u4E2D\u534E\u7EC4",v:"UTAU\u4E2D\u534E\u7EC4"},{n:"XStudio",v:"XStudio"},{n:"\u521D\u97F3",v:"\u521D\u97F3"},{n:"IA",v:"IA"},{n:"GUMI",v:"GUMI"},{n:"SynthV",v:"SynthV"},{n:"UTAU",v:"UTAU"},{n:"\u5E7B\u6653\u4F0A",v:"\u5E7B\u6653\u4F0A"},{n:"\u4E94\u7EF4\u4ECB\u8D28",v:"\u4E94\u7EF4\u4ECB\u8D28"},{n:"\u53EF\u4E0D",v:"\u53EF\u4E0D"},{n:"ACE\u865A\u62DF\u6B4C\u59EC",v:"ACE\u865A\u62DF\u6B4C\u59EC"},{n:"deepvocal",v:"deepvocal"},{n:"SYNTHV",v:"SYNTHV"},{n:"\u534E\u8BED\u73B0\u573A",v:"\u534E\u8BED\u73B0\u573A"},{n:"\u6B27\u7F8E\u73B0\u573A",v:"\u6B27\u7F8E\u73B0\u573A"},{n:"\u65E5\u8BED\u73B0\u573A",v:"\u65E5\u8BED\u73B0\u573A"},{n:"\u97E9\u8BED\u73B0\u573A",v:"\u97E9\u8BED\u73B0\u573A"},{n:"\u56FD\u8BED\u73B0\u573A",v:"\u56FD\u8BED\u73B0\u573A"},{n:"\u7CA4\u8BED\u73B0\u573A",v:"\u7CA4\u8BED\u73B0\u573A"},{n:"live",v:"live"},{n:"\u97F3\u4E50\u5267",v:"\u97F3\u4E50\u5267"},{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u97F3\u4E50\u8282",v:"\u97F3\u4E50\u8282"},{n:"\u7ECF\u5178\u8001\u6B4C",v:"\u7ECF\u5178\u8001\u6B4C"},{n:"\u7CBE\u9009\u6B4C\u5355",v:"\u7CBE\u9009\u6B4C\u5355"},{n:"\u5F71\u89C6\u97F3\u4E50",v:"\u5F71\u89C6\u97F3\u4E50"},{n:"\u6E38\u620F\u97F3\u4E50",v:"\u6E38\u620F\u97F3\u4E50"},{n:"\u4E2D\u56FD\u620F\u66F2",v:"\u4E2D\u56FD\u620F\u66F2"},{n:"\u9ED1\u80F6\u5531\u7247",v:"\u9ED1\u80F6\u5531\u7247"},{n:"ACG\u97F3\u4E50",v:"ACG\u97F3\u4E50"},{n:"\u4EA4\u54CD\u4E50",v:"\u4EA4\u54CD\u4E50"},{n:"\u5FAA\u73AF\u97F3\u4E50",v:"\u5FAA\u73AF\u97F3\u4E50"},{n:"OST\u97F3\u4E50",v:"OST\u97F3\u4E50"},{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"DJ\u97F3\u4E50",v:"DJ\u97F3\u4E50"},{n:"\u821E\u66F2",v:"\u821E\u66F2"},{n:"\u591C\u5E97\u821E\u66F2",v:"\u591C\u5E97\u821E\u66F2"},{n:"\u56FD\u5916\u821E\u66F2",v:"\u56FD\u5916\u821E\u66F2"},{n:"\u4E9A\u6D32\u821E\u66F2",v:"\u4E9A\u6D32\u821E\u66F2"},{n:"\u6B27\u7F8E\u821E\u66F2",v:"\u6B27\u7F8E\u821E\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6B4C\u66F2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6B4C\u66F2",v:"\u6B4C\u66F2"},{n:"\u9999\u6E2F\u6B4C\u66F2",v:"\u9999\u6E2F\u6B4C\u66F2"},{n:"\u53F0\u6E7E\u6B4C\u66F2",v:"\u53F0\u6E7E\u6B4C\u66F2"},{n:"\u5185\u5730\u6B4C\u66F2",v:"\u5185\u5730\u6B4C\u66F2"},{n:"\u82F1\u6587\u6B4C\u66F2",v:"\u82F1\u6587\u6B4C\u66F2"},{n:"\u65E5\u6587\u6B4C\u66F2",v:"\u65E5\u6587\u6B4C\u66F2"},{n:"\u5C0F\u8BED\u79CD\u6B4C\u66F2",v:"\u5C0F\u8BED\u79CD\u6B4C\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66",v:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66"},{n:"Adobe Photoshop\u6559\u7A0B",v:"Adobe Photoshop\u6559\u7A0B"},{n:"Adobe Illustrator\u6559\u7A0B",v:"Adobe Illustrator\u6559\u7A0B"},{n:"CorelDRAW\u6559\u7A0B",v:"CorelDRAW\u6559\u7A0B"},{n:"Adobe InDesign\u6559\u7A0B",v:"Adobe InDesign\u6559\u7A0B"},{n:"Adobe Pagermaker\u6559\u7A0B",v:"Adobe Pagermaker\u6559\u7A0B"},{n:"SAI\u6559\u7A0B",v:"SAI\u6559\u7A0B"},{n:"Adobe Bridge\u6559\u7A0B",v:"Adobe Bridge\u6559\u7A0B"},{n:"Adobe Pagermake\u6559\u7A0Br",v:"Adobe Pagermake\u6559\u7A0Br"},{n:"3D Studio Max\u6559\u7A0B",v:"3D Studio Max\u6559\u7A0B"},{n:"PR\u6559\u7A0B",v:"PR\u6559\u7A0B"},{n:"AE\u6559\u7A0B",v:"AE\u6559\u7A0B"},{n:"CINEMA 4D\u6559\u7A0B",v:"CINEMA 4D\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8F6F\u4EF6\u6559\u7A0B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u8F6F\u4EF6\u6559\u7A0B",v:"\u8F6F\u4EF6\u6559\u7A0B"},{n:"MT\u7BA1\u7406\u5668",v:"MT\u7BA1\u7406\u5668"},{n:"NP\u7BA1\u7406\u5668",v:"NP\u7BA1\u7406\u5668"},{n:"mixplorer",v:"mixplorer"},{n:"\u8131\u58F3",v:"\u8131\u58F3"},{n:"\u722C\u866B",v:"\u722C\u866B"},{n:"json&jar",v:"json&jar"},{n:"\u7F51\u76D8\u6302\u8F7D",v:"\u7F51\u76D8\u6302\u8F7D"},{n:"alist+WebDav",v:"alist+WebDav"},{n:"TVBox\u4FEE\u6539\u6559\u7A0B",v:"TVBox\u4FEE\u6539\u6559\u7A0B"},{n:"EXCEL\u6559\u7A0B",v:"EXCEL\u6559\u7A0B"},{n:"Git\u5165\u95E8\u5230\u7CBE\u901A",v:"Git\u5165\u95E8\u5230\u7CBE\u901A"},{n:"java\u6559\u7A0B",v:"java\u6559\u7A0B"},{n:"phyton\u6559\u7A0B",v:"phyton\u6559\u7A0B"},{n:"xml\u6559\u7A0B",v:"xml\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],Windows:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5C0F\u59D0\u59D0\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E7F\u573A\u821E\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u821E\u66F2\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u767D\u566A\u97F3\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u641E\u7B11\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u4F53\u80B2\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K":[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8DB3\u7403\u6BD4\u8D5B\u5408\u96C6\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7BEE\u7403\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u52A8\u7269\u4E16\u754C\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u513F\u7AE5\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8352\u91CE\u6C42\u751F\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7EAA\u5F55\u7247\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98DF\u8C31:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u98DF\u8C31",v:"\u98DF\u8C31"},{n:"\u5DDD\u83DC\u98DF\u8C31",v:"\u5DDD\u83DC\u98DF\u8C31"},{n:"\u8C6B\u83DC\u98DF\u8C31",v:"\u8C6B\u83DC\u98DF\u8C31"},{n:"\u6DEE\u626C\u83DC\u98DF\u8C31",v:"\u6DEE\u626C\u83DC\u98DF\u8C31"},{n:"\u6E58\u83DC\u98DF\u8C31",v:"\u6E58\u83DC\u98DF\u8C31"},{n:"\u9C81\u83DC\u98DF\u8C31",v:"\u9C81\u83DC\u98DF\u8C31"},{n:"\u7CA4\u83DC\u98DF\u8C31",v:"\u7CA4\u83DC\u98DF\u8C31"},{n:"\u6F6E\u83DC\u98DF\u8C31",v:"\u6F6E\u83DC\u98DF\u8C31"},{n:"\u6D59\u83DC\u98DF\u8C31",v:"\u6D59\u83DC\u98DF\u8C31"},{n:"\u5FBD\u83DC\u98DF\u8C31",v:"\u5FBD\u83DC\u98DF\u8C31"},{n:"\u95FD\u83DC\u98DF\u8C31",v:"\u95FD\u83DC\u98DF\u8C31"},{n:"\u82CF\u83DC\u98DF\u8C31",v:"\u82CF\u83DC\u98DF\u8C31"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5065\u8EAB:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5065\u8EAB",v:"\u5065\u8EAB"},{n:"\u7626\u817F",v:"\u7626\u817F"},{n:"\u8179\u90E8",v:"\u8179\u90E8"},{n:"\u624B\u81C2",v:"\u624B\u81C2"},{n:"\u70ED\u8EAB",v:"\u70ED\u8EAB"},{n:"\u5E15\u6885\u62C9",v:"\u5E15\u6885\u62C9"},{n:"\u71C3\u8102",v:"\u71C3\u8102"},{n:"\u6709\u6C27",v:"\u6709\u6C27"},{n:"\u62C9\u4F38",v:"\u62C9\u4F38"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7A97\u767D\u566A\u97F3:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7F8E\u98DF\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u7F8E\u98DF\u8D85\u6E05",v:"\u7F8E\u98DF\u8D85\u6E05"},{n:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD\u8D85\u6E05",v:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD\u8D85\u6E05"},{n:"\u8001\u5B57\u53F7\u7F8E\u98DF\u8D85\u6E05",v:"\u8001\u5B57\u53F7\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5BB6\u5E38\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5BB6\u5E38\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u9999\u6E2F\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u9999\u6E2F\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6FB3\u95E8\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6FB3\u95E8\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u4E0A\u6D77\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u4E0A\u6D77\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5317\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5317\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u91CD\u5E86\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u91CD\u5E86\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5357\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5357\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5E7F\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5E7F\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u676D\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u676D\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6210\u90FD\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6210\u90FD\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u82CF\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u82CF\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6B66\u6C49\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6B66\u6C49\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u53F0\u6E7E\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u53F0\u6E7E\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5DDD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5DDD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u8C6B\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u8C6B\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6DEE\u626C\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6DEE\u626C\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6E58\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6E58\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u9C81\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u9C81\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u7CA4\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u7CA4\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6F6E\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6F6E\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6D59\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6D59\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5FBD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5FBD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u95FD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u95FD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u4E1C\u5317\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u4E1C\u5317\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5BA2\u5BB6\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5BA2\u5BB6\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u82CF\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u82CF\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u706B\u9505",v:"\u706B\u9505"},{n:"\u9762\u98DF",v:"\u9762\u98DF"},{n:"\u7092\u83DC",v:"\u7092\u83DC"},{n:"\u70B9\u5FC3",v:"\u70B9\u5FC3"},{n:"\u65E5\u6599",v:"\u65E5\u6599"},{n:"\u5C0F\u5403",v:"\u5C0F\u5403"},{n:"\u7D20\u98DF",v:"\u7D20\u98DF"},{n:"\u84B8\u83DC",v:"\u84B8\u83DC"},{n:"\u51C9\u83DC",v:"\u51C9\u83DC"},{n:"\u65E9\u9910",v:"\u65E9\u9910"},{n:"\u62AB\u8428",v:"\u62AB\u8428"},{n:"\u70E4\u9C7C",v:"\u70E4\u9C7C"},{n:"\u6D77\u9C9C\u7F8E\u98DF\u8D85\u6E05",v:"\u6D77\u9C9C\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6C49\u5821",v:"\u6C49\u5821"},{n:"\u97E9\u56FD\u83DC",v:"\u97E9\u56FD\u83DC"},{n:"\u6CF0\u56FD\u83DC",v:"\u6CF0\u56FD\u83DC"},{n:"\u7A46\u65AF\u6797\u83DC",v:"\u7A46\u65AF\u6797\u83DC"},{n:"\u6CD5\u56FD\u83DC",v:"\u6CD5\u56FD\u83DC"},{n:"\u610F\u5927\u5229\u83DC",v:"\u610F\u5927\u5229\u83DC"},{n:"\u897F\u73ED\u7259\u83DC",v:"\u897F\u73ED\u7259\u83DC"},{n:"\u571F\u8033\u5176\u83DC\u7CFB",v:"\u571F\u8033\u5176\u83DC\u7CFB"},{n:"\u963F\u62C9\u4F2F\u83DC",v:"\u963F\u62C9\u4F2F\u83DC"},{n:"\u5FB7\u56FD\u83DC",v:"\u5FB7\u56FD\u83DC"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E7F\u573A\u821E:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7403\u661F:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u7403\u661F",v:"\u7403\u661F"},{n:"\u6885\u897F",v:"\u6885\u897F"},{n:"C\u7F57",v:"C\u7F57"},{n:"\u5929\u4E0B\u8DB3\u7403",v:"\u5929\u4E0B\u8DB3\u7403"},{n:"\u7F57\u7EB3\u5C14\u591A",v:"\u7F57\u7EB3\u5C14\u591A"},{n:"\u4EA8\u5229",v:"\u4EA8\u5229"},{n:"\u5C0F\u7F57",v:"\u5C0F\u7F57"},{n:"\u9F50\u8FBE\u5185",v:"\u9F50\u8FBE\u5185"},{n:"\u8D1D\u514B\u6C49\u59C6",v:"\u8D1D\u514B\u6C49\u59C6"},{n:"\u5185\u9A6C\u5C14",v:"\u5185\u9A6C\u5C14"},{n:"\u5FB7\u5E03\u52B3\u5185",v:"\u5FB7\u5E03\u52B3\u5185"},{n:"\u6B27\u51A0",v:"\u6B27\u51A0"},{n:"\u4E16\u754C\u676F",v:"\u4E16\u754C\u676F"},{n:"\u897F\u7532",v:"\u897F\u7532"},{n:"\u82F1\u8D85",v:"\u82F1\u8D85"},{n:"\u610F\u7532",v:"\u610F\u7532"},{n:"\u5FB7\u7532",v:"\u5FB7\u7532"},{n:"\u56FD\u7C73",v:"\u56FD\u7C73"},{n:"\u7687\u9A6C",v:"\u7687\u9A6C"},{n:"\u5DF4\u8428",v:"\u5DF4\u8428"},{n:"\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC",v:"\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC"},{n:"\u66FC\u8054",v:"\u66FC\u8054"},{n:"\u66FC\u57CE",v:"\u66FC\u57CE"},{n:"NBA",v:"NBA"},{n:"\u8A79\u59C6\u65AF",v:"\u8A79\u59C6\u65AF"},{n:"\u5E93\u91CC",v:"\u5E93\u91CC"},{n:"\u675C\u5170\u7279",v:"\u675C\u5170\u7279"},{n:"UFC",v:"UFC"},{n:"\u65AF\u8BFA\u514B",v:"\u65AF\u8BFA\u514B"},{n:"\u7F51\u7403",v:"\u7F51\u7403"},{n:"F1",v:"F1"},{n:"\u9AD8\u5C14\u592B",v:"\u9AD8\u5C14\u592B"},{n:"\u7403\u661F",v:"\u7403\u661F"},{n:"\u7BEE\u7403",v:"\u7BEE\u7403"},{n:"\u8DB3\u7403",v:"\u8DB3\u7403"},{n:"4K\u7403\u661F",v:"4K\u7403\u661F"},{n:"4K\u6885\u897F",v:"4K\u6885\u897F"},{n:"4K C\u7F57",v:"4K C\u7F57"},{n:"4K\u5929\u4E0B\u8DB3\u7403",v:"4K\u5929\u4E0B\u8DB3\u7403"},{n:"4K\u7F57\u7EB3\u5C14\u591A",v:"4K\u7F57\u7EB3\u5C14\u591A"},{n:"4K\u4EA8\u5229",v:"4K\u4EA8\u5229"},{n:"4K\u5C0F\u7F57",v:"4K\u5C0F\u7F57"},{n:"4K\u9F50\u8FBE\u5185",v:"4K\u9F50\u8FBE\u5185"},{n:"4K\u8D1D\u514B\u6C49\u59C6",v:"4K\u8D1D\u514B\u6C49\u59C6"},{n:"4K\u5185\u9A6C\u5C14",v:"4K\u5185\u9A6C\u5C14"},{n:"4K\u5FB7\u5E03\u52B3\u5185",v:"4K\u5FB7\u5E03\u52B3\u5185"},{n:"4K\u6B27\u51A0",v:"4K\u6B27\u51A0"},{n:"4K\u4E16\u754C\u676F",v:"4K\u4E16\u754C\u676F"},{n:"4K\u897F\u7532",v:"4K\u897F\u7532"},{n:"4K\u82F1\u8D85",v:"4K\u82F1\u8D85"},{n:"4K\u610F\u7532",v:"4K\u610F\u7532"},{n:"4K\u5FB7\u7532",v:"4K\u5FB7\u7532"},{n:"4K\u56FD\u7C73",v:"4K\u56FD\u7C73"},{n:"4K\u7687\u9A6C",v:"4K\u7687\u9A6C"},{n:"4K\u5DF4\u8428",v:"4K\u5DF4\u8428"},{n:"4K\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC",v:"4K\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC"},{n:"4K\u66FC\u8054",v:"4K\u66FC\u8054"},{n:"4K\u66FC\u57CE",v:"4K\u66FC\u57CE"},{n:"4K NBA",v:"4K NBA"},{n:"4K\u8A79\u59C6\u65AF",v:"4K\u8A79\u59C6\u65AF"},{n:"4K\u5E93\u91CC",v:"4K\u5E93\u91CC"},{n:"4K\u675C\u5170\u7279",v:"4K\u675C\u5170\u7279"},{n:"4K UFC",v:"4K UFC"},{n:"4K\u65AF\u8BFA\u514B",v:"4K\u65AF\u8BFA\u514B"},{n:"4K\u7F51\u7403",v:"4K\u7F51\u7403"},{n:"4K\u7BEE\u7403",v:"4K\u7BEE\u7403"},{n:"4K\u8DB3\u7403",v:"4K\u8DB3\u7403"},{n:"4K F1",v:"4K F1"},{n:"4K\u9AD8\u5C14\u592B",v:"4K\u9AD8\u5C14\u592B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7535\u89C6\u5267:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F8\u58F0\u5C0F\u54C1\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u76F8\u58F0\u5C0F\u54C1",v:"\u76F8\u58F0\u5C0F\u54C1"},{n:"\u5355\u53E3\u76F8\u58F0",v:"\u5355\u53E3\u76F8\u58F0"},{n:"\u7FA4\u53E3\u76F8\u58F0",v:"\u7FA4\u53E3\u76F8\u58F0"},{n:"\u5FB7\u4E91\u793E",v:"\u5FB7\u4E91\u793E"},{n:"\u9752\u66F2\u793E",v:"\u9752\u66F2\u793E"},{n:"\u90ED\u5FB7\u7EB2",v:"\u90ED\u5FB7\u7EB2"},{n:"\u5CB3\u4E91\u9E4F",v:"\u5CB3\u4E91\u9E4F"},{n:"\u66F9\u4E91\u91D1",v:"\u66F9\u4E91\u91D1"},{n:"\u8BC4\u4E66",v:"\u8BC4\u4E66"},{n:"\u5C0F\u66F2",v:"\u5C0F\u66F2"},{n:"\u4E8C\u4EBA\u8F6C",v:"\u4E8C\u4EBA\u8F6C"},{n:"\u6625\u665A\u5C0F\u54C1",v:"\u6625\u665A\u5C0F\u54C1"},{n:"\u8D75\u672C\u5C71",v:"\u8D75\u672C\u5C71"},{n:"\u9648\u4F69\u65AF",v:"\u9648\u4F69\u65AF"},{n:"\u51AF\u5DE9",v:"\u51AF\u5DE9"},{n:"\u5B8B\u5C0F\u5B9D",v:"\u5B8B\u5C0F\u5B9D"},{n:"\u8D75\u4E3D\u84C9",v:"\u8D75\u4E3D\u84C9"},{n:"\u90ED\u8FBE",v:"\u90ED\u8FBE"},{n:"\u6F58\u957F\u6C5F",v:"\u6F58\u957F\u6C5F"},{n:"\u90ED\u51AC\u4E34",v:"\u90ED\u51AC\u4E34"},{n:"\u4E25\u987A\u5F00",v:"\u4E25\u987A\u5F00"},{n:"\u6587\u677E",v:"\u6587\u677E"},{n:"\u5F00\u5FC3\u9EBB\u82B1",v:"\u5F00\u5FC3\u9EBB\u82B1"},{n:"\u5C4C\u4E1D\u7537\u58EB",v:"\u5C4C\u4E1D\u7537\u58EB"},{n:"\u559C\u5267\u7EFC\u827A",v:"\u559C\u5267\u7EFC\u827A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u620F\u66F2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u620F\u66F2",v:"\u620F\u66F2"},{n:"\u4EAC\u5267",v:"\u4EAC\u5267"},{n:"\u8D8A\u5267",v:"\u8D8A\u5267"},{n:"\u9EC4\u6885\u620F",v:"\u9EC4\u6885\u620F"},{n:"\u8BC4\u5267",v:"\u8BC4\u5267"},{n:"\u8C6B\u5267",v:"\u8C6B\u5267"},{n:"\u6606\u66F2",v:"\u6606\u66F2"},{n:"\u9AD8\u8154",v:"\u9AD8\u8154"},{n:"\u6886\u5B50\u8154",v:"\u6886\u5B50\u8154"},{n:"\u6CB3\u5317\u6886\u5B50",v:"\u6CB3\u5317\u6886\u5B50"},{n:"\u664B\u5267",v:"\u664B\u5267"},{n:"\u84B2\u5267",v:"\u84B2\u5267"},{n:"\u96C1\u5267",v:"\u96C1\u5267"},{n:"\u4E0A\u515A\u6886\u5B50",v:"\u4E0A\u515A\u6886\u5B50"},{n:"\u79E6\u8154",v:"\u79E6\u8154"},{n:"\u6B66\u5B89\u5E73\u8C03",v:"\u6B66\u5B89\u5E73\u8C03"},{n:"\u4E8C\u4EBA\u53F0",v:"\u4E8C\u4EBA\u53F0"},{n:"\u5409\u5267",v:"\u5409\u5267"},{n:"\u9F99\u6C5F\u5267",v:"\u9F99\u6C5F\u5267"},{n:"\u8D8A\u8C03",v:"\u8D8A\u8C03"},{n:"\u6CB3\u5357\u66F2\u5267",v:"\u6CB3\u5357\u66F2\u5267"},{n:"\u5C71\u4E1C\u6886\u5B50",v:"\u5C71\u4E1C\u6886\u5B50"},{n:"\u6DEE\u5267",v:"\u6DEE\u5267"},{n:"\u6CAA\u5267",v:"\u6CAA\u5267"},{n:"\u6ED1\u7A3D\u620F",v:"\u6ED1\u7A3D\u620F"},{n:"\u5A7A\u5267",v:"\u5A7A\u5267"},{n:"\u7ECD\u5267",v:"\u7ECD\u5267"},{n:"\u5FBD\u5267",v:"\u5FBD\u5267"},{n:"\u95FD\u5267",v:"\u95FD\u5267"},{n:"\u8386\u4ED9\u620F",v:"\u8386\u4ED9\u620F"},{n:"\u68A8\u56ED\u620F",v:"\u68A8\u56ED\u620F"},{n:"\u9AD8\u7532\u620F",v:"\u9AD8\u7532\u620F"},{n:"\u8D63\u5267",v:"\u8D63\u5267"},{n:"\u91C7\u8336\u620F",v:"\u91C7\u8336\u620F"},{n:"\u6C49\u5267",v:"\u6C49\u5267"},{n:"\u6E58\u5267",v:"\u6E58\u5267"},{n:"\u7941\u5267",v:"\u7941\u5267"},{n:"\u6E56\u5357\u82B1\u9F13\u620F",v:"\u6E56\u5357\u82B1\u9F13\u620F"},{n:"\u7CA4\u5267",v:"\u7CA4\u5267"},{n:"\u6F6E\u5267",v:"\u6F6E\u5267"},{n:"\u6842\u5267",v:"\u6842\u5267"},{n:"\u5F69\u8C03",v:"\u5F69\u8C03"},{n:"\u58EE\u5267",v:"\u58EE\u5267"},{n:"\u5DDD\u5267",v:"\u5DDD\u5267"},{n:"\u9ED4\u5267",v:"\u9ED4\u5267"},{n:"\u6EC7\u5267",v:"\u6EC7\u5267"},{n:"\u50A3\u5267",v:"\u50A3\u5267"},{n:"\u85CF\u5267",v:"\u85CF\u5267"},{n:"\u76AE\u5F71\u620F",v:"\u76AE\u5F71\u620F"},{n:"\u620F\u66F2",v:"\u620F\u66F2"},{n:"4K\u620F\u66F2",v:"4K\u620F\u66F2"},{n:"4K\u4EAC\u5267",v:"4K\u4EAC\u5267"},{n:"4K\u8D8A\u5267",v:"4K\u8D8A\u5267"},{n:"4K\u9EC4\u6885\u620F",v:"4K\u9EC4\u6885\u620F"},{n:"4K\u8BC4\u5267",v:"4K\u8BC4\u5267"},{n:"4K\u8C6B\u5267",v:"4K\u8C6B\u5267"},{n:"4K\u6606\u66F2",v:"4K\u6606\u66F2"},{n:"4K\u9AD8\u8154",v:"4K\u9AD8\u8154"},{n:"4K\u6886\u5B50\u8154",v:"4K\u6886\u5B50\u8154"},{n:"4K\u6CB3\u5317\u6886\u5B50",v:"4K\u6CB3\u5317\u6886\u5B50"},{n:"4K\u664B\u5267",v:"4K\u664B\u5267"},{n:"4K\u84B2\u5267",v:"4K\u84B2\u5267"},{n:"4K\u96C1\u5267",v:"4K\u96C1\u5267"},{n:"4K\u4E0A\u515A\u6886\u5B50",v:"4K\u4E0A\u515A\u6886\u5B50"},{n:"4K\u79E6\u8154",v:"4K\u79E6\u8154"},{n:"4K\u6B66\u5B89\u5E73\u8C03",v:"4K\u6B66\u5B89\u5E73\u8C03"},{n:"4K\u4E8C\u4EBA\u53F0",v:"4K\u4E8C\u4EBA\u53F0"},{n:"4K\u5409\u5267",v:"4K\u5409\u5267"},{n:"4K\u9F99\u6C5F\u5267",v:"4K\u9F99\u6C5F\u5267"},{n:"4K\u8D8A\u8C03",v:"4K\u8D8A\u8C03"},{n:"4K\u6CB3\u5357\u66F2\u5267",v:"4K\u6CB3\u5357\u66F2\u5267"},{n:"4K\u5C71\u4E1C\u6886\u5B50",v:"4K\u5C71\u4E1C\u6886\u5B50"},{n:"4K\u6DEE\u5267",v:"4K\u6DEE\u5267"},{n:"4K\u6CAA\u5267",v:"4K\u6CAA\u5267"},{n:"4K\u6ED1\u7A3D\u620F",v:"4K\u6ED1\u7A3D\u620F"},{n:"4K\u5A7A\u5267",v:"4K\u5A7A\u5267"},{n:"4K\u7ECD\u5267",v:"4K\u7ECD\u5267"},{n:"4K\u5FBD\u5267",v:"4K\u5FBD\u5267"},{n:"4K\u95FD\u5267",v:"4K\u95FD\u5267"},{n:"4K\u8386\u4ED9\u620F",v:"4K\u8386\u4ED9\u620F"},{n:"4K\u68A8\u56ED\u620F",v:"4K\u68A8\u56ED\u620F"},{n:"4K\u9AD8\u7532\u620F",v:"4K\u9AD8\u7532\u620F"},{n:"4K\u8D63\u5267",v:"4K\u8D63\u5267"},{n:"4K\u91C7\u8336\u620F",v:"4K\u91C7\u8336\u620F"},{n:"4K\u6C49\u5267",v:"4K\u6C49\u5267"},{n:"4K\u6E58\u5267",v:"4K\u6E58\u5267"},{n:"4K\u7941\u5267",v:"4K\u7941\u5267"},{n:"4K\u6E56\u5357\u82B1\u9F13\u620F",v:"4K\u6E56\u5357\u82B1\u9F13\u620F"},{n:"4K\u7CA4\u5267",v:"4K\u7CA4\u5267"},{n:"4K\u6F6E\u5267",v:"4K\u6F6E\u5267"},{n:"4K\u6842\u5267",v:"4K\u6842\u5267"},{n:"4K\u5F69\u8C03",v:"4K\u5F69\u8C03"},{n:"4K\u58EE\u5267",v:"4K\u58EE\u5267"},{n:"4K\u5DDD\u5267",v:"4K\u5DDD\u5267"},{n:"4K\u9ED4\u5267",v:"4K\u9ED4\u5267"},{n:"4K\u6EC7\u5267",v:"4K\u6EC7\u5267"},{n:"4K\u50A3\u5267",v:"4K\u50A3\u5267"},{n:"4K\u85CF\u5267",v:"4K\u85CF\u5267"},{n:"4K\u76AE\u5F71\u620F",v:"4K\u76AE\u5F71\u620F"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u65C5\u6E38:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6E38\u6CF3:[{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6CF3\u59FF",v:"\u6CF3\u59FF"},{n:"\u8776\u6CF3",v:"\u8776\u6CF3"},{n:"\u4EF0\u6CF3",v:"\u4EF0\u6CF3"},{n:"\u86D9\u6CF3",v:"\u86D9\u6CF3"},{n:"\u81EA\u7531\u6CF3",v:"\u81EA\u7531\u6CF3"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u9009\u7F8E:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6A21\u7279:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6CF3\u88C5\u79C0:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5185\u8863\u79C0:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7F8E\u98DF:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD",v:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD"},{n:"\u820C\u5C16\u4E0A\u7684\u6E56\u5317",v:"\u820C\u5C16\u4E0A\u7684\u6E56\u5317"},{n:"\u5DDD\u83DC",v:"\u5DDD\u83DC"},{n:"\u6E58\u83DC",v:"\u6E58\u83DC"},{n:"\u82CF\u83DC",v:"\u82CF\u83DC"},{n:"\u7CA4\u83DC",v:"\u7CA4\u83DC"},{n:"\u95FD\u83DC",v:"\u95FD\u83DC"},{n:"\u5FBD\u83DC",v:"\u5FBD\u83DC"},{n:"\u9C81\u83DC",v:"\u9C81\u83DC"},{n:"\u6D59\u83DC",v:"\u6D59\u83DC"},{n:"\u706B\u9505",v:"\u706B\u9505"},{n:"\u5BB6\u5E38\u83DC",v:"\u5BB6\u5E38\u83DC"},{n:"\u4E0B\u9152\u83DC",v:"\u4E0B\u9152\u83DC"},{n:"\u84B8\u83DC",v:"\u84B8\u83DC"},{n:"\u5364\u83DC",v:"\u5364\u83DC"},{n:"\u51C9\u83DC",v:"\u51C9\u83DC"},{n:"\u70B9\u5FC3",v:"\u70B9\u5FC3"},{n:"\u65E5\u6599",v:"\u65E5\u6599"},{n:"\u5C0F\u5403",v:"\u5C0F\u5403"},{n:"\u65E9\u9910\u98DF\u8C31",v:"\u65E9\u9910\u98DF\u8C31"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u7F8E\u98DF",v:"4K\u7F8E\u98DF"},{n:"4K\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD",v:"4K\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD"},{n:"4K\u820C\u5C16\u4E0A\u7684\u6E56\u5317",v:"4K\u820C\u5C16\u4E0A\u7684\u6E56\u5317"},{n:"4K\u5DDD\u83DC",v:"4K\u5DDD\u83DC"},{n:"4K\u6E58\u83DC",v:"4K\u6E58\u83DC"},{n:"4K\u82CF\u83DC",v:"4K\u82CF\u83DC"},{n:"4K\u7CA4\u83DC",v:"4K\u7CA4\u83DC"},{n:"4K\u95FD\u83DC",v:"4K\u95FD\u83DC"},{n:"4K\u5FBD\u83DC",v:"4K\u5FBD\u83DC"},{n:"4K\u9C81\u83DC",v:"4K\u9C81\u83DC"},{n:"4K\u6D59\u83DC",v:"4K\u6D59\u83DC"},{n:"4K\u706B\u9505",v:"4K\u706B\u9505"},{n:"4K\u5BB6\u5E38\u83DC",v:"4K\u5BB6\u5E38\u83DC"},{n:"4K\u4E0B\u9152\u83DC",v:"4K\u4E0B\u9152\u83DC"},{n:"4K\u84B8\u83DC",v:"4K\u84B8\u83DC"},{n:"4K\u5364\u83DC",v:"4K\u5364\u83DC"},{n:"4K\u51C9\u83DC",v:"4K\u51C9\u83DC"},{n:"4K\u70B9\u5FC3",v:"4K\u70B9\u5FC3"},{n:"4K\u65E5\u6599",v:"4K\u65E5\u6599"},{n:"4K\u5C0F\u5403",v:"4K\u5C0F\u5403"},{n:"4K\u65E9\u9910\u98DF\u8C31",v:"4K\u65E9\u9910\u98DF\u8C31"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F4\u64AD\u5E73\u53F0:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u6296\u97F3",v:"\u6296\u97F3"},{n:"\u6296\u97F3\u7F8E\u5973",v:"\u6296\u97F3\u7F8E\u5973"},{n:"\u6296\u97F3\u5C0F\u59D0\u59D0",v:"\u6296\u97F3\u5C0F\u59D0\u59D0"},{n:"\u6296\u97F3\u821E\u8E48",v:"\u6296\u97F3\u821E\u8E48"},{n:"\u6296\u97F3\u97F3\u4E50",v:"\u6296\u97F3\u97F3\u4E50"},{n:"\u6296\u97F3MV",v:"\u6296\u97F3MV"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u6296\u97F3",v:"4K\u6296\u97F3"},{n:"4K\u6296\u97F3\u7F8E\u5973",v:"4K\u6296\u97F3\u7F8E\u5973"},{n:"4K\u6296\u97F3\u5C0F\u59D0\u59D0",v:"4K\u6296\u97F3\u5C0F\u59D0\u59D0"},{n:"4K\u6296\u97F3\u821E\u8E48",v:"4K\u6296\u97F3\u821E\u8E48"},{n:"4K\u6296\u97F3\u97F3\u4E50",v:"4K\u6296\u97F3\u97F3\u4E50"},{n:"4K\u6296\u97F3MV",v:"4K\u6296\u97F3MV"}]},{key:"tidc",name:"\u5206\u7C7B",value:[{n:"\u5FEB\u624B",v:"\u5FEB\u624B"},{n:"\u5FEB\u624B\u7F8E\u5973",v:"\u5FEB\u624B\u7F8E\u5973"},{n:"\u5FEB\u624B\u5C0F\u59D0\u59D0",v:"\u5FEB\u624B\u5C0F\u59D0\u59D0"},{n:"\u5FEB\u624B\u821E\u8E48",v:"\u5FEB\u624B\u821E\u8E48"},{n:"\u5FEB\u624B\u97F3\u4E50",v:"\u5FEB\u624B\u97F3\u4E50"},{n:"\u5FEB\u624BMV",v:"\u5FEB\u624BMV"}]},{key:"tidd",name:"\u5206\u7C7B",value:[{n:"4K\u5FEB\u624B",v:"4K\u5FEB\u624B"},{n:"4K\u5FEB\u624B\u7F8E\u5973",v:"4K\u5FEB\u624B\u7F8E\u5973"},{n:"4K\u5FEB\u624B\u5C0F\u59D0\u59D0",v:"4K\u5FEB\u624B\u5C0F\u59D0\u59D0"},{n:"4K\u5FEB\u624B\u821E\u8E48",v:"4K\u5FEB\u624B\u821E\u8E48"},{n:"4K\u5FEB\u624B\u97F3\u4E50",v:"4K\u5FEB\u624B\u97F3\u4E50"},{n:"4K\u5FEB\u624BMV",v:"4K\u5FEB\u624BMV"}]},{key:"tide",name:"\u5206\u7C7B",value:[{n:"\u6597\u9C7C\u76F4\u64AD",v:"\u6597\u9C7C\u76F4\u64AD"},{n:"\u6597\u9C7C\u7F8E\u5973",v:"\u6597\u9C7C\u7F8E\u5973"},{n:"\u6597\u9C7C\u5C0F\u59D0\u59D0",v:"\u6597\u9C7C\u5C0F\u59D0\u59D0"},{n:"\u6597\u9C7C\u821E\u8E48",v:"\u6597\u9C7C\u821E\u8E48"},{n:"\u6597\u9C7C\u97F3\u4E50",v:"\u6597\u9C7C\u97F3\u4E50"},{n:"\u6597\u9C7CMV",v:"\u6597\u9C7CMV"}]},{key:"tidf",name:"\u5206\u7C7B",value:[{n:"4K\u6597\u9C7C\u76F4\u64AD",v:"4K\u6597\u9C7C\u76F4\u64AD"},{n:"4K\u6597\u9C7C\u7F8E\u5973",v:"4K\u6597\u9C7C\u7F8E\u5973"},{n:"4K\u6597\u9C7C\u5C0F\u59D0\u59D0",v:"4K\u6597\u9C7C\u5C0F\u59D0\u59D0"},{n:"4K\u6597\u9C7C\u821E\u8E48",v:"4K\u6597\u9C7C\u821E\u8E48"},{n:"4K\u6597\u9C7C\u97F3\u4E50",v:"4K\u6597\u9C7C\u97F3\u4E50"},{n:"4K\u6597\u9C7CMV",v:"4K\u6597\u9C7CMV"}]},{key:"tidg",name:"\u5206\u7C7B",value:[{n:"\u817E\u8BAF\u76F4\u64AD",v:"\u817E\u8BAF\u76F4\u64AD"},{n:"\u817E\u8BAF\u6F14\u5531\u4F1A",v:"\u817E\u8BAF\u6F14\u5531\u4F1A"},{n:"\u817E\u8BAF\u97F3\u4E50\u4F1A",v:"\u817E\u8BAF\u97F3\u4E50\u4F1A"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"4K\u817E\u8BAF\u76F4\u64AD",v:"4K\u817E\u8BAF\u76F4\u64AD"},{n:"4K\u817E\u8BAF\u6F14\u5531\u4F1A",v:"4K\u817E\u8BAF\u6F14\u5531\u4F1A"},{n:"4K\u817E\u8BAF\u97F3\u4E50\u4F1A",v:"4K\u817E\u8BAF\u97F3\u4E50\u4F1A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u641E\u7B11:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K\u97F3\u4E50":[{key:"tidy",name:"\u5206\u7C7B",value:[{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"4K\u539F\u521B\u97F3\u4E50",v:"4K\u539F\u521B\u97F3\u4E50"},{n:"4K\u7FFB\u5531",v:"4K\u7FFB\u5531"},{n:"4K\u6F14\u594F",v:"4K\u6F14\u594F"},{n:"4K VOCALOID\xB7UTAU",v:"4K VOCALOID\xB7UTAU"},{n:"4K\u97F3\u4E50\u73B0\u573A",v:"4K\u97F3\u4E50\u73B0\u573A"},{n:"4K\u539F\u58F0\u97F3\u4E50",v:"4K\u539F\u58F0\u97F3\u4E50"},{n:"4K\u4E50\u8BC4\u76D8\u70B9",v:"4K\u4E50\u8BC4\u76D8\u70B9"},{n:"4K\u97F3\u4E50\u6559\u5B66",v:"4K\u97F3\u4E50\u6559\u5B66"},{n:"4K\u97F3\u4E50\u7EFC\u5408",v:"4K\u97F3\u4E50\u7EFC\u5408"}]},{key:"tidc",name:"4K\u539F\u521B\u97F3\u4E50",value:[{n:"4K\u8BF4\u5531",v:"4K\u8BF4\u5531"},{n:"4K HIPHOP",v:"4K HIPHOP"},{n:"4K\u4E2D\u56FD\u98CE",v:"4K\u4E2D\u56FD\u98CE"},{n:"4K\u53E4\u98CE",v:"4K\u53E4\u98CE"},{n:"4K\u7535\u97F3",v:"4K\u7535\u97F3"},{n:"4K\u6447\u6EDA",v:"4K\u6447\u6EDA"},{n:"4K\u6C11\u8C23",v:"4K\u6C11\u8C23"},{n:"4K\u7235\u58EB",v:"4K\u7235\u58EB"},{n:"4K\u7EAF\u97F3\u4E50",v:"4K\u7EAF\u97F3\u4E50"},{n:"4K BEAT",v:"4K BEAT"},{n:"4K REMIX",v:"4K REMIX"},{n:"4K\u4EBA\u58F0\u672C\u5BB6",v:"4K\u4EBA\u58F0\u672C\u5BB6"},{n:"4K\u56FD\u4EBA\u539F\u521B",v:"4K\u56FD\u4EBA\u539F\u521B"},{n:"4K\u539F\u521B\u6B4C\u66F2",v:"4K\u539F\u521B\u6B4C\u66F2"},{n:"4K\u7F16\u66F2",v:"4K\u7F16\u66F2"},{n:"4K\u6539\u7F16",v:"4K\u6539\u7F16"},{n:"4K\u5409\u4ED6",v:"4K\u5409\u4ED6"},{n:"4K\u7535\u5B50\u97F3\u4E50",v:"4K\u7535\u5B50\u97F3\u4E50"},{n:"4K\u94A2\u7434",v:"4K\u94A2\u7434"}]},{key:"tidf",name:"4k\u7FFB\u5531",value:[{n:"4K\u56FD\u4EBA\u7537\u58F0",v:"4K\u56FD\u4EBA\u7537\u58F0"},{n:"4K\u56FD\u4EBA\u5973\u751F",v:"4K\u56FD\u4EBA\u5973\u751F"},{n:"4K\u4E2D\u6587\u7FFB\u5531",v:"4K\u4E2D\u6587\u7FFB\u5531"},{n:"4K\u82F1\u6587\u7FFB\u5531",v:"4K\u82F1\u6587\u7FFB\u5531"},{n:"4K\u53E4\u98CE",v:"4K\u53E4\u98CE"},{n:"4K VOCALOID",v:"4K VOCALOID"},{n:"4K\u71C3\u5411",v:"4K\u71C3\u5411"},{n:"4K\u4E2D\u6587\u586B\u8BCD",v:"4K\u4E2D\u6587\u586B\u8BCD"},{n:"4K\u7075\u9B42\u6B4C\u624B",v:"4K\u7075\u9B42\u6B4C\u624B"},{n:"4K\u6CBB\u6108\u5411",v:"4K\u6CBB\u6108\u5411"},{n:"4K COVER",v:"4K COVER"},{n:"4K\u521D\u6295\u7A3F",v:"4K\u521D\u6295\u7A3F"},{n:"4K\u5409\u4ED6\u5F39\u5531",v:"4K\u5409\u4ED6\u5F39\u5531"},{n:"4K\u539F\u521BPV",v:"4K\u539F\u521BPV"},{n:"4K\u9B54\u9053\u7956\u5E08",v:"4K\u9B54\u9053\u7956\u5E08"},{n:"4K\u6B27\u7F8E",v:"4K\u6B27\u7F8E"},{n:"4K\u65B0\u4EBA\u5411",v:"4K\u65B0\u4EBA\u5411"},{n:"4K\u798F\u5229\u8033\u673A",v:"4K\u798F\u5229\u8033\u673A"}]},{key:"tidz",name:"4K\u6F14\u594F",value:[{n:"4K\u521B\u610F\u6F14\u594F",v:"4K\u521B\u610F\u6F14\u594F"},{n:"4K\u94A2\u7434",v:"4K\u94A2\u7434"},{n:"4K\u8857\u5934\u8868\u6F14",v:"4K\u8857\u5934\u8868\u6F14"},{n:"4K\u7FFB\u5F39",v:"4K\u7FFB\u5F39"},{n:"4K\u4E50\u961F",v:"4K\u4E50\u961F"},{n:"4K\u6C11\u4E50",v:"4K\u6C11\u4E50"},{n:"4K\u5408\u594F",v:"4K\u5408\u594F"},{n:"4K\u5409\u4ED6",v:"4K\u5409\u4ED6"},{n:"4K\u6307\u5F39",v:"4K\u6307\u5F39"},{n:"4K\u5C0F\u63D0\u7434",v:"4K\u5C0F\u63D0\u7434"},{n:"4K\u67B6\u5B50\u9F13",v:"4K\u67B6\u5B50\u9F13"},{n:"4K COVER",v:"4K COVER"},{n:"4K\u6728\u5409\u4ED6",v:"4K\u6728\u5409\u4ED6"},{n:"4K\u94A2\u7434\u66F2",v:"4K\u94A2\u7434\u66F2"},{n:"4K BGM",v:"4K BGM"},{n:"4K\u5361\u7956\u7B1B",v:"4K\u5361\u7956\u7B1B"},{n:"4K\u7535\u5409\u4ED6",v:"4K\u7535\u5409\u4ED6"},{n:"4K LAUNCHPAD",v:"4K LAUNCHPAD"},{n:"4K\u8D1D\u65AF",v:"4K\u8D1D\u65AF"},{n:"4K\u53E3\u7434",v:"4K\u53E3\u7434"},{n:"4K\u6307\u5F39\u5409\u4ED6",v:"4K\u6307\u5F39\u5409\u4ED6"},{n:"4K\u7435\u7436",v:"4K\u7435\u7436"},{n:"4K\u626C\u7434",v:"4K\u626C\u7434"},{n:"4K\u53E4\u5178\u97F3\u4E50",v:"4K\u53E4\u5178\u97F3\u4E50"},{n:"4K\u53E4\u7B5D",v:"4K\u53E4\u7B5D"},{n:"4K\u4E8C\u80E1",v:"4K\u4E8C\u80E1"},{n:"4K BEATBOX",v:"4K BEATBOX"},{n:"4K\u53E4\u5178",v:"4K\u53E4\u5178"}]},{key:"tidv",name:"4k VOCALOID\xB7UTAU",value:[{n:"4K\u6D1B\u5929\u4F9D",v:"4K\u6D1B\u5929\u4F9D"},{n:"4K\u4E50\u6B63\u7EEB",v:"4K\u4E50\u6B63\u7EEB"},{n:"4K\u8A00\u548C",v:"4K\u8A00\u548C"},{n:"4K\u4E50\u6B63\u9F99\u7259",v:"4K\u4E50\u6B63\u9F99\u7259"},{n:"4K\u58A8\u6E05\u5F26",v:"4K\u58A8\u6E05\u5F26"},{n:"4K\u5FBD\u7FBD\u6469\u67EF",v:"4K\u5FBD\u7FBD\u6469\u67EF"},{n:"4K Vsinger",v:"4K Vsinger"},{n:"4K\u5FC3\u534E",v:"4K\u5FC3\u534E"},{n:"4K\u661F\u5C18",v:"4K\u661F\u5C18"},{n:"4K\u5AE3\u6C50",v:"4K\u5AE3\u6C50"},{n:"4K\u521D\u97F3\u672A\u6765",v:"4K\u521D\u97F3\u672A\u6765"},{n:"4K\u955C\u97F3\u94C3",v:"4K\u955C\u97F3\u94C3"},{n:"4K\u5DE1\u97F3\u6D41\u6B4C",v:"4K\u5DE1\u97F3\u6D41\u6B4C"},{n:"4K KAITO",v:"4K KAITO"},{n:"4K flower",v:"4K flower"},{n:"4K\u5143\u7B71",v:"4K\u5143\u7B71"},{n:"4K VOCALOID\u4E2D\u6587\u66F2",v:"4K VOCALOID\u4E2D\u6587\u66F2"},{n:"4K\u83B2\u534E",v:"4K\u83B2\u534E"},{n:"4K\u5357\u5317\u7EC4",v:"4K\u5357\u5317\u7EC4"},{n:"4K\u955C\u97F3\u53CC\u5B50",v:"4K\u955C\u97F3\u53CC\u5B50"},{n:"4K MUTA\u4E2D\u6587\u66F2",v:"4K MUTA\u4E2D\u6587\u66F2"},{n:"4K UTAU\u4E2D\u534E\u7EC4",v:"4K UTAU\u4E2D\u534E\u7EC4"},{n:"4K XStudio",v:"4K XStudio"},{n:"4K\u521D\u97F3",v:"4K\u521D\u97F3"},{n:"4K IA",v:"4K IA"},{n:"4K GUMI",v:"4K GUMI"},{n:"4K SynthV",v:"4K SynthV"},{n:"4K UTAU",v:"4K UTAU"},{n:"4K\u5E7B\u6653\u4F0A",v:"4K\u5E7B\u6653\u4F0A"},{n:"4K\u4E94\u7EF4\u4ECB\u8D28",v:"4K\u4E94\u7EF4\u4ECB\u8D28"},{n:"4K\u53EF\u4E0D",v:"4K\u53EF\u4E0D"},{n:"4K ACE\u865A\u62DF\u6B4C\u59EC",v:"4K ACE\u865A\u62DF\u6B4C\u59EC"},{n:"4K deepvocal",v:"4K deepvocal"},{n:"4K SYNTHV",v:"4K SYNTHV"}]},{key:"tidx",name:"4K\u97F3\u4E50\u73B0\u573A",value:[{n:"4K\u534E\u8BED\u73B0\u573A",v:"4K\u534E\u8BED\u73B0\u573A"},{n:"4K\u6B27\u7F8E\u73B0\u573A",v:"4K\u6B27\u7F8E\u73B0\u573A"},{n:"4K\u65E5\u8BED\u73B0\u573A",v:"4K\u65E5\u8BED\u73B0\u573A"},{n:"4K\u97E9\u8BED\u73B0\u573A",v:"4K\u97E9\u8BED\u73B0\u573A"},{n:"4K\u56FD\u8BED\u73B0\u573A",v:"4K\u56FD\u8BED\u73B0\u573A"},{n:"4K\u7CA4\u8BED\u73B0\u573A",v:"4K\u7CA4\u8BED\u73B0\u573A"},{n:"4K live",v:"4K live"},{n:"4K\u97F3\u4E50\u5267",v:"4K\u97F3\u4E50\u5267"},{n:"4K\u6F14\u5531\u4F1A",v:"4K\u6F14\u5531\u4F1A"},{n:"4K\u97F3\u4E50\u8282",v:"4K\u97F3\u4E50\u8282"}]},{key:"tidh",name:"4K\u97F3\u4E50\u7EFC\u5408",value:[{n:"4K\u7ECF\u5178\u8001\u6B4C",v:"4K\u7ECF\u5178\u8001\u6B4C"},{n:"4K\u7CBE\u9009\u6B4C\u5355",v:"4K\u7CBE\u9009\u6B4C\u5355"},{n:"4K\u5F71\u89C6\u97F3\u4E50",v:"4K\u5F71\u89C6\u97F3\u4E50"},{n:"4K\u6E38\u620F\u97F3\u4E50",v:"4K\u6E38\u620F\u97F3\u4E50"},{n:"4K\u4E2D\u56FD\u620F\u66F2",v:"4K\u4E2D\u56FD\u620F\u66F2"},{n:"4K\u9ED1\u80F6\u5531\u7247",v:"4K\u9ED1\u80F6\u5531\u7247"},{n:"4K ACG\u97F3\u4E50",v:"4K ACG\u97F3\u4E50"},{n:"4K\u97F3\u4E50\u5267",v:"4K\u97F3\u4E50\u5267"},{n:"4K\u4EA4\u54CD\u4E50",v:"4K\u4EA4\u54CD\u4E50"},{n:"4K\u5FAA\u73AF\u97F3\u4E50",v:"4K\u5FAA\u73AF\u97F3\u4E50"},{n:"4K OST\u97F3\u4E50",v:"4K OST\u97F3\u4E50"},{n:"4K BGM\u97F3\u4E50",v:"4K BGM\u97F3\u4E50"},{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"4K DJ\u97F3\u4E50",v:"4K DJ\u97F3\u4E50"},{n:"4K\u7535\u97F3",v:"4K\u7535\u97F3"},{n:"4K\u821E\u66F2",v:"4K\u821E\u66F2"},{n:"4K\u591C\u5E97\u821E\u66F2",v:"4K\u591C\u5E97\u821E\u66F2"},{n:"4K\u56FD\u5916\u821E\u66F2",v:"4K\u56FD\u5916\u821E\u66F2"},{n:"4K\u4E9A\u6D32\u821E\u66F2",v:"4K\u4E9A\u6D32\u821E\u66F2"},{n:"4K\u6B27\u7F8E\u821E\u66F2",v:"4K\u6B27\u7F8E\u821E\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],MV:[{key:"tidm",name:"\u5206\u7C7B",value:[{n:"MV",v:"MV"},{n:"MV\u5408\u96C6",v:"MV\u5408\u96C6"},{n:"\u5168\u7F51\u7B2C\u4E00",v:"\u5168\u7F51\u7B2C\u4E00"},{n:"4K60FPS",v:"4K60FPS"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"\u97E9\u56FD\u5973\u661F MV\u5408\u96C6",v:"\u97E9\u56FD\u5973\u661F MV\u5408\u96C6"},{n:"\u674E\u5B5D\u5229 MV\u5408\u96C6",v:"\u674E\u5B5D\u5229 MV\u5408\u96C6"},{n:"\u674E\u77E5\u6069 MV\u5408\u96C6",v:"\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"\u6797\u5141\u513F MV\u5408\u96C6",v:"\u6797\u5141\u513F MV\u5408\u96C6"},{n:"\u91D1\u6CEB\u96C5 MV\u5408\u96C6",v:"\u91D1\u6CEB\u96C5 MV\u5408\u96C6"},{n:"\u91D1\u6CF0\u598D MV\u5408\u96C6",v:"\u91D1\u6CF0\u598D MV\u5408\u96C6"},{n:"\u674E\u5BA3\u7F8E MV\u5408\u96C6",v:"\u674E\u5BA3\u7F8E MV\u5408\u96C6"},{n:"\u5D14\u96EA\u8389 MV\u5408\u96C6",v:"\u5D14\u96EA\u8389 MV\u5408\u96C6"},{n:"\u5B89\u559C\u5EF6 MV\u5408\u96C6",v:"\u5B89\u559C\u5EF6 MV\u5408\u96C6"},{n:"\u91D1\u4E9A\u8363 MV\u5408\u96C6",v:"\u91D1\u4E9A\u8363 MV\u5408\u96C6"},{n:"\u674E\u77E5\u6069 MV\u5408\u96C6",v:"\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"\u674E\u8D1E\u8D24 MV\u5408\u96C6",v:"\u674E\u8D1E\u8D24 MV\u5408\u96C6"},{n:"\u6D2A\u771F\u82F1 MV\u5408\u96C6",v:"\u6D2A\u771F\u82F1 MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"\u65E5\u672C\u5973\u661F MV\u5408\u96C6",v:"\u65E5\u672C\u5973\u661F MV\u5408\u96C6"},{n:"YUI MV\u5408\u96C6",v:"YUI MV\u5408\u96C6"},{n:"\u5E78\u7530\u6765\u672A MV\u5408\u96C6",v:"\u5E78\u7530\u6765\u672A MV\u5408\u96C6"},{n:"\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6",v:"\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6"},{n:"\u6EE8\u5D0E\u6B65 MV\u5408\u96C6",v:"\u6EE8\u5D0E\u6B65 MV\u5408\u96C6"},{n:"\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6",v:"\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6"},{n:"\u5B87\u591A\u7530\u5149 MV\u5408\u96C6",v:"\u5B87\u591A\u7530\u5149 MV\u5408\u96C6"},{n:"\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6",v:"\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6"},{n:"\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6",v:"\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6"},{n:"\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6",v:"\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6"},{n:"Angela MV\u5408\u96C6",v:"Angela MV\u5408\u96C6"},{n:"\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6",v:"\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"\u5973\u661F MV\u5408\u96C6",v:"\u5973\u661F MV\u5408\u96C6"},{n:"\u6234\u4F69\u59AE MV\u5408\u96C6",v:"\u6234\u4F69\u59AE MV\u5408\u96C6"},{n:"\u9093\u7D2B\u68CB MV\u5408\u96C6",v:"\u9093\u7D2B\u68CB MV\u5408\u96C6"},{n:"\u5F20\u97F6\u6DB5 MV\u5408\u96C6",v:"\u5F20\u97F6\u6DB5 MV\u5408\u96C6"},{n:"\u8521\u5065\u96C5 MV\u5408\u96C6",v:"\u8521\u5065\u96C5 MV\u5408\u96C6"},{n:"\u83AB\u6587\u851A MV\u5408\u96C6",v:"\u83AB\u6587\u851A MV\u5408\u96C6"},{n:"\u5218\u82E5\u82F1 MV\u5408\u96C6",v:"\u5218\u82E5\u82F1 MV\u5408\u96C6"},{n:"\u9093\u4E3D\u541B MV\u5408\u96C6",v:"\u9093\u4E3D\u541B MV\u5408\u96C6"},{n:"\u8521\u4F9D\u6797 MV\u5408\u96C6",v:"\u8521\u4F9D\u6797 MV\u5408\u96C6"},{n:"\u674E\u5B87\u6625 MV\u5408\u96C6",v:"\u674E\u5B87\u6625 MV\u5408\u96C6"},{n:"\u5F90\u4F73\u83B9 MV\u5408\u96C6",v:"\u5F90\u4F73\u83B9 MV\u5408\u96C6"},{n:"\u6768\u5343\u5B05 MV\u5408\u96C6",v:"\u6768\u5343\u5B05 MV\u5408\u96C6"},{n:"\u5F20\u9753\u9896 MV\u5408\u96C6",v:"\u5F20\u9753\u9896 MV\u5408\u96C6"},{n:"\u6768\u4E1E\u7433 MV\u5408\u96C6",v:"\u6768\u4E1E\u7433 MV\u5408\u96C6"},{n:"\u8427\u4E9A\u8F69 MV\u5408\u96C6",v:"\u8427\u4E9A\u8F69 MV\u5408\u96C6"},{n:"\u5BB9\u7956\u513F MV\u5408\u96C6",v:"\u5BB9\u7956\u513F MV\u5408\u96C6"},{n:"\u6885\u8273\u82B3 MV\u5408\u96C6",v:"\u6885\u8273\u82B3 MV\u5408\u96C6"},{n:"\u5B59\u71D5\u59FF MV\u5408\u96C6",v:"\u5B59\u71D5\u59FF MV\u5408\u96C6"},{n:"\u8881\u5A05\u7EF4 MV\u5408\u96C6",v:"\u8881\u5A05\u7EF4 MV\u5408\u96C6"},{n:"\u738B\u83F2 MV\u5408\u96C6",v:"\u738B\u83F2 MV\u5408\u96C6"},{n:"\u6881\u9759\u8339 MV\u5408\u96C6",v:"\u6881\u9759\u8339 MV\u5408\u96C6"},{n:"\u5468\u6167\u654F MV\u5408\u96C6",v:"\u5468\u6167\u654F MV\u5408\u96C6"},{n:"\u5F20\u60E0\u59B9 MV\u5408\u96C6",v:"\u5F20\u60E0\u59B9 MV\u5408\u96C6"},{n:"\u5468\u7B14\u7545 MV\u5408\u96C6",v:"\u5468\u7B14\u7545 MV\u5408\u96C6"},{n:"\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6",v:"\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6"},{n:"\u9648\u6167\u5A34 MV\u5408\u96C6",v:"\u9648\u6167\u5A34 MV\u5408\u96C6"},{n:"\u90ED\u9759 MV\u5408\u96C6",v:"\u90ED\u9759 MV\u5408\u96C6"},{n:"\u90A3\u82F1 MV\u5408\u96C6",v:"\u90A3\u82F1 MV\u5408\u96C6"},{n:"\u97E9\u7EA2 MV\u5408\u96C6",v:"\u97E9\u7EA2 MV\u5408\u96C6"},{n:"\u6797\u5FC6\u83B2 MV\u5408\u96C6",v:"\u6797\u5FC6\u83B2 MV\u5408\u96C6"},{n:"\u674E\u739F MV\u5408\u96C6",v:"\u674E\u739F MV\u5408\u96C6"},{n:"\u5F90\u5C0F\u51E4 MV\u5408\u96C6",v:"\u5F90\u5C0F\u51E4 MV\u5408\u96C6"},{n:"\u5353\u4F9D\u5A77 MV\u5408\u96C6",v:"\u5353\u4F9D\u5A77 MV\u5408\u96C6"},{n:"\u90C1\u53EF\u552F MV\u5408\u96C6",v:"\u90C1\u53EF\u552F MV\u5408\u96C6"},{n:"\u7530\u9707 MV\u5408\u96C6",v:"\u7530\u9707 MV\u5408\u96C6"},{n:"\u51E4\u98DE\u98DE MV\u5408\u96C6",v:"\u51E4\u98DE\u98DE MV\u5408\u96C6"},{n:"\u8C2D\u6676 MV\u5408\u96C6",v:"\u8C2D\u6676 MV\u5408\u96C6"},{n:"\u53F6\u5029\u6587 MV\u5408\u96C6",v:"\u53F6\u5029\u6587 MV\u5408\u96C6"},{n:"\u738B\u5FC3\u51CC MV\u5408\u96C6",v:"\u738B\u5FC3\u51CC MV\u5408\u96C6"},{n:"\u90ED\u91C7\u6D01 MV\u5408\u96C6",v:"\u90ED\u91C7\u6D01 MV\u5408\u96C6"},{n:"\u963F\u9EDB\u5C14 MV\u5408\u96C6",v:"\u963F\u9EDB\u5C14 MV\u5408\u96C6"},{n:"LadyGaga MV\u5408\u96C6",v:"LadyGaga MV\u5408\u96C6"},{n:"\u5E03\u5170\u59AE MV\u5408\u96C6",v:"\u5E03\u5170\u59AE MV\u5408\u96C6"},{n:"\u6D1B\u5929\u4F9D MV\u5408\u96C6",v:"\u6D1B\u5929\u4F9D MV\u5408\u96C6"},{n:"\u521D\u97F3\u672A\u6765 MV\u5408\u96C6",v:"\u521D\u97F3\u672A\u6765 MV\u5408\u96C6"}]},{key:"tidx",name:"\u5206\u7C7B",value:[{n:"\u7537\u661F MV\u5408\u96C6",v:"\u7537\u661F MV\u5408\u96C6"},{n:"\u5468\u6770\u4F26 MV\u5408\u96C6",v:"\u5468\u6770\u4F26 MV\u5408\u96C6"},{n:"\u9648\u5955\u8FC5 MV\u5408\u96C6",v:"\u9648\u5955\u8FC5 MV\u5408\u96C6"},{n:"\u5218\u5FB7\u534E MV\u5408\u96C6",v:"\u5218\u5FB7\u534E MV\u5408\u96C6"},{n:"\u90ED\u5BCC\u57CE MV\u5408\u96C6",v:"\u90ED\u5BCC\u57CE MV\u5408\u96C6"},{n:"\u5F20\u5B66\u53CB MV\u5408\u96C6",v:"\u5F20\u5B66\u53CB MV\u5408\u96C6"},{n:"\u9ECE\u660E MV\u5408\u96C6",v:"\u9ECE\u660E MV\u5408\u96C6"},{n:"\u674E\u5B97\u76DB MV\u5408\u96C6",v:"\u674E\u5B97\u76DB MV\u5408\u96C6"},{n:"\u6734\u6811 MV\u5408\u96C6",v:"\u6734\u6811 MV\u5408\u96C6"},{n:"\u6797\u5B50\u7965 MV\u5408\u96C6",v:"\u6797\u5B50\u7965 MV\u5408\u96C6"},{n:"\u4EFB\u8D24\u9F50 MV\u5408\u96C6",v:"\u4EFB\u8D24\u9F50 MV\u5408\u96C6"},{n:"\u5F20\u4FE1\u54F2 MV\u5408\u96C6",v:"\u5F20\u4FE1\u54F2 MV\u5408\u96C6"},{n:"\u5B59\u6960 MV\u5408\u96C6",v:"\u5B59\u6960 MV\u5408\u96C6"},{n:"\u5F20\u5B87 MV\u5408\u96C6",v:"\u5F20\u5B87 MV\u5408\u96C6"},{n:"\u5468\u534E\u5065 MV\u5408\u96C6",v:"\u5468\u534E\u5065 MV\u5408\u96C6"},{n:"\u859B\u4E4B\u8C26 MV\u5408\u96C6",v:"\u859B\u4E4B\u8C26 MV\u5408\u96C6"},{n:"\u8BB8\u5D69 MV\u5408\u96C6",v:"\u8BB8\u5D69 MV\u5408\u96C6"},{n:"\u5468\u6DF1 MV\u5408\u96C6",v:"\u5468\u6DF1 MV\u5408\u96C6"},{n:"\u6BDB\u4E0D\u6613 MV\u5408\u96C6",v:"\u6BDB\u4E0D\u6613 MV\u5408\u96C6"},{n:"\u6C6A\u82CF\u6CF7 MV\u5408\u96C6",v:"\u6C6A\u82CF\u6CF7 MV\u5408\u96C6"},{n:"\u6768\u5B97\u7EAC MV\u5408\u96C6",v:"\u6768\u5B97\u7EAC MV\u5408\u96C6"},{n:"\u80E1\u5F66\u658C MV\u5408\u96C6",v:"\u80E1\u5F66\u658C MV\u5408\u96C6"},{n:"\u674E\u8363\u6D69 MV\u5408\u96C6",v:"\u674E\u8363\u6D69 MV\u5408\u96C6"},{n:"\u6797\u5FD7\u70AB MV\u5408\u96C6",v:"\u6797\u5FD7\u70AB MV\u5408\u96C6"},{n:"\u9676\u5586 MV\u5408\u96C6",v:"\u9676\u5586 MV\u5408\u96C6"},{n:"\u80E1\u590F MV\u5408\u96C6",v:"\u80E1\u590F MV\u5408\u96C6"},{n:"\u674E\u7389\u521A MV\u5408\u96C6",v:"\u674E\u7389\u521A MV\u5408\u96C6"},{n:"\u5F26\u5B50 MV\u5408\u96C6",v:"\u5F26\u5B50 MV\u5408\u96C6"},{n:"\u9648\u5C0F\u6625 MV\u5408\u96C6",v:"\u9648\u5C0F\u6625 MV\u5408\u96C6"},{n:"\u9E7F\u6657 MV\u5408\u96C6",v:"\u9E7F\u6657 MV\u5408\u96C6"},{n:"\u8BB8\u5DCD MV\u5408\u96C6",v:"\u8BB8\u5DCD MV\u5408\u96C6"},{n:"\u6797\u4FCA\u6770 MV\u5408\u96C6",v:"\u6797\u4FCA\u6770 MV\u5408\u96C6"},{n:"\u8D75\u96F7 MV\u5408\u96C6",v:"\u8D75\u96F7 MV\u5408\u96C6"},{n:"\u8C2D\u548F\u9E9F MV\u5408\u96C6",v:"\u8C2D\u548F\u9E9F MV\u5408\u96C6"},{n:"\u5468\u4F20\u96C4 MV\u5408\u96C6",v:"\u5468\u4F20\u96C4 MV\u5408\u96C6"},{n:"\u5F20\u56FD\u8363 MV\u5408\u96C6",v:"\u5F20\u56FD\u8363 MV\u5408\u96C6"},{n:"\u674E\u5065 MV\u5408\u96C6",v:"\u674E\u5065 MV\u5408\u96C6"},{n:"\u534E\u6668\u5B87 MV\u5408\u96C6",v:"\u534E\u6668\u5B87 MV\u5408\u96C6"},{n:"\u5927\u5F20\u4F1F MV\u5408\u96C6",v:"\u5927\u5F20\u4F1F MV\u5408\u96C6"},{n:"\u738B\u4FCA\u51EF MV\u5408\u96C6",v:"\u738B\u4FCA\u51EF MV\u5408\u96C6"},{n:"\u6613\u70CA\u5343\u73BA MV\u5408\u96C6",v:"\u6613\u70CA\u5343\u73BA MV\u5408\u96C6"},{n:"\u738B\u6E90 MV\u5408\u96C6",v:"\u738B\u6E90 MV\u5408\u96C6"},{n:"\u7530\u99A5\u7504 MV\u5408\u96C6",v:"\u7530\u99A5\u7504 MV\u5408\u96C6"},{n:"\u5C0F\u864E\u961F MV\u5408\u96C6",v:"\u5C0F\u864E\u961F MV\u5408\u96C6"},{n:"\u5F20\u6770 MV\u5408\u96C6",v:"\u5F20\u6770 MV\u5408\u96C6"},{n:"\u4F0D\u4F70 MV\u5408\u96C6",v:"\u4F0D\u4F70 MV\u5408\u96C6"},{n:"\u5200\u90CE MV\u5408\u96C6",v:"\u5200\u90CE MV\u5408\u96C6"},{n:"\u6F58\u73AE\u67CF MV\u5408\u96C6",v:"\u6F58\u73AE\u67CF MV\u5408\u96C6"},{n:"\u6797\u5BA5\u5609 MV\u5408\u96C6",v:"\u6797\u5BA5\u5609 MV\u5408\u96C6"},{n:"\u8521\u5F90\u5764 MV\u5408\u96C6",v:"\u8521\u5F90\u5764 MV\u5408\u96C6"},{n:"\u674E\u5723\u6770 MV\u5408\u96C6",v:"\u674E\u5723\u6770 MV\u5408\u96C6"},{n:"\u8427\u656C\u817E MV\u5408\u96C6",v:"\u8427\u656C\u817E MV\u5408\u96C6"},{n:"\u7126\u8FC8\u5947 MV\u5408\u96C6",v:"\u7126\u8FC8\u5947 MV\u5408\u96C6"},{n:"\u5C24\u957F\u9756 MV\u5408\u96C6",v:"\u5C24\u957F\u9756 MV\u5408\u96C6"},{n:"\u90D1\u4E2D\u57FA MV\u5408\u96C6",v:"\u90D1\u4E2D\u57FA MV\u5408\u96C6"},{n:"\u5F20\u827A\u5174 MV\u5408\u96C6",v:"\u5F20\u827A\u5174 MV\u5408\u96C6"},{n:"\u738B\u5609\u5C14 MV\u5408\u96C6",v:"\u738B\u5609\u5C14 MV\u5408\u96C6"},{n:"\u5218\u5BAA\u534E MV\u5408\u96C6",v:"\u5218\u5BAA\u534E MV\u5408\u96C6"},{n:"\u5F20\u656C\u8F69 MV\u5408\u96C6",v:"\u5F20\u656C\u8F69 MV\u5408\u96C6"},{n:"\u674E\u514B\u52E4 MV\u5408\u96C6",v:"\u674E\u514B\u52E4 MV\u5408\u96C6"},{n:"\u963F\u675C MV\u5408\u96C6",v:"\u963F\u675C MV\u5408\u96C6"},{n:"\u5D14\u5065 MV\u5408\u96C6",v:"\u5D14\u5065 MV\u5408\u96C6"},{n:"\u5EBE\u6F84\u5E86 MV\u5408\u96C6",v:"\u5EBE\u6F84\u5E86 MV\u5408\u96C6"},{n:"\u6C6A\u5CF0 MV\u5408\u96C6",v:"\u6C6A\u5CF0 MV\u5408\u96C6"},{n:"\u6768\u5764 MV\u5408\u96C6",v:"\u6768\u5764 MV\u5408\u96C6"},{n:"\u5F20\u9707\u5CB3 MV\u5408\u96C6",v:"\u5F20\u9707\u5CB3 MV\u5408\u96C6"},{n:"\u9F50\u79E6 MV\u5408\u96C6",v:"\u9F50\u79E6 MV\u5408\u96C6"},{n:"\u5F20\u96E8\u751F MV\u5408\u96C6",v:"\u5F20\u96E8\u751F MV\u5408\u96C6"},{n:"\u9EC4\u54C1\u6E90 MV\u5408\u96C6",v:"\u9EC4\u54C1\u6E90 MV\u5408\u96C6"},{n:"\u4E01\u5F53 MV\u5408\u96C6",v:"\u4E01\u5F53 MV\u5408\u96C6"},{n:"\u90D1\u667A\u5316 MV\u5408\u96C6",v:"\u90D1\u667A\u5316 MV\u5408\u96C6"},{n:"\u8C22\u9706\u950B MV\u5408\u96C6",v:"\u8C22\u9706\u950B MV\u5408\u96C6"},{n:"\u9EC4\u5C0F\u7425 MV\u5408\u96C6",v:"\u9EC4\u5C0F\u7425 MV\u5408\u96C6"},{n:"\u4EFB\u5609\u4F26 MV\u5408\u96C6",v:"\u4EFB\u5609\u4F26 MV\u5408\u96C6"},{n:"\u5B8B\u4E9A\u68EE MV\u5408\u96C6",v:"\u5B8B\u4E9A\u68EE MV\u5408\u96C6"},{n:"\u8D39\u7389\u6E05 MV\u5408\u96C6",v:"\u8D39\u7389\u6E05 MV\u5408\u96C6"},{n:"\u8D39\u7FD4 MV\u5408\u96C6",v:"\u8D39\u7FD4 MV\u5408\u96C6"},{n:"\u91D1\u5FD7\u6587 MV\u5408\u96C6",v:"\u91D1\u5FD7\u6587 MV\u5408\u96C6"},{n:"\u9EC4\u5BB6\u5F3A MV\u5408\u96C6",v:"\u9EC4\u5BB6\u5F3A MV\u5408\u96C6"},{n:"\u65B9\u5927\u540C MV\u5408\u96C6",v:"\u65B9\u5927\u540C MV\u5408\u96C6"},{n:"\u5434\u514B\u7FA4 MV\u5408\u96C6",v:"\u5434\u514B\u7FA4 MV\u5408\u96C6"},{n:"\u7F57\u5927\u4F51 MV\u5408\u96C6",v:"\u7F57\u5927\u4F51 MV\u5408\u96C6"},{n:"\u5149\u826F MV\u5408\u96C6",v:"\u5149\u826F MV\u5408\u96C6"},{n:"\u738B\u6770 MV\u5408\u96C6",v:"\u738B\u6770 MV\u5408\u96C6"},{n:"\u91D1\u6C60 MV\u5408\u96C6",v:"\u91D1\u6C60 MV\u5408\u96C6"},{n:"\u5C60\u6D2A\u521A MV\u5408\u96C6",v:"\u5C60\u6D2A\u521A MV\u5408\u96C6"},{n:"\u6234\u8343 MV\u5408\u96C6",v:"\u6234\u8343 MV\u5408\u96C6"},{n:"\u7F57\u5FD7\u7965 MV\u5408\u96C6",v:"\u7F57\u5FD7\u7965 MV\u5408\u96C6"},{n:"\u738B\u529B\u5B8F MV\u5408\u96C6",v:"\u738B\u529B\u5B8F MV\u5408\u96C6"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6"}]},{key:"tidz",name:"\u8BED\u79CD",value:[{n:"\u534E\u8BED MV\u5408\u96C6",v:"\u534E\u8BED MV\u5408\u96C6"},{n:"\u6B27\u7F8E MV\u5408\u96C6",v:"\u6B27\u7F8E MV\u5408\u96C6"},{n:"\u65E5\u8BED MV\u5408\u96C6",v:"\u65E5\u8BED MV\u5408\u96C6"},{n:"\u97E9\u8BED MV\u5408\u96C6",v:"\u97E9\u8BED MV\u5408\u96C6"},{n:"\u56FD\u8BED MV\u5408\u96C6",v:"\u56FD\u8BED MV\u5408\u96C6"},{n:"\u7CA4\u8BED MV\u5408\u96C6",v:"\u7CA4\u8BED MV\u5408\u96C6"},{n:"\u95FD\u5357\u8BED MV\u5408\u96C6",v:"\u95FD\u5357\u8BED MV\u5408\u96C6"},{n:"\u4E1C\u5357\u4E9A MV\u5408\u96C6",v:"\u4E1C\u5357\u4E9A MV\u5408\u96C6"},{n:"\u82F1\u8BED MV\u5408\u96C6",v:"\u82F1\u8BED MV\u5408\u96C6"},{n:"\u4FC4\u8BED MV\u5408\u96C6",v:"\u4FC4\u8BED MV\u5408\u96C6"},{n:"\u5370\u5EA6 MV\u5408\u96C6",v:"\u5370\u5EA6 MV\u5408\u96C6"},{n:"\u81EA\u5236 MV\u5408\u96C6",v:"\u81EA\u5236 MV\u5408\u96C6"}]},{key:"tidd",name:"\u4E50\u961F\u7EC4\u5408",value:[{n:"\u4E50\u961F MV\u5408\u96C6",v:"\u4E50\u961F MV\u5408\u96C6"},{n:"\u7EC4\u5408 MV\u5408\u96C6",v:"\u7EC4\u5408 MV\u5408\u96C6"},{n:"Beyond MV\u5408\u96C6",v:"Beyond MV\u5408\u96C6"},{n:"\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6",v:"\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6"},{n:"\u7EB5\u8D2F\u7EBF MV\u5408\u96C6",v:"\u7EB5\u8D2F\u7EBF MV\u5408\u96C6"},{n:"\u82CF\u6253\u7EFF MV\u5408\u96C6",v:"\u82CF\u6253\u7EFF MV\u5408\u96C6"},{n:"\u4E94\u6708\u5929 MV\u5408\u96C6",v:"\u4E94\u6708\u5929 MV\u5408\u96C6"},{n:"TFBOYS MV\u5408\u96C6",v:"TFBOYS MV\u5408\u96C6"},{n:"\u7FBD\u6CC9 MV\u5408\u96C6",v:"\u7FBD\u6CC9 MV\u5408\u96C6"},{n:"\u8349\u8722 MV\u5408\u96C6",v:"\u8349\u8722 MV\u5408\u96C6"},{n:"\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6",v:"\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6"},{n:"\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6",v:"\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6"},{n:"\u98DE\u513F\u4E50\u961F MV\u5408\u96C6",v:"\u98DE\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"\u82B1\u513F\u4E50\u961F MV\u5408\u96C6",v:"\u82B1\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"\u5357\u62F3\u5988\u5988 MV\u5408\u96C6",v:"\u5357\u62F3\u5988\u5988 MV\u5408\u96C6"},{n:"\u6C34\u6728\u5E74\u534E MV\u5408\u96C6",v:"\u6C34\u6728\u5E74\u534E MV\u5408\u96C6"},{n:"\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6",v:"\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6"},{n:"\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6",v:"\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6"},{n:"\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6",v:"\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6"},{n:"\u4FE1\u4E50\u961F MV\u5408\u96C6",v:"\u4FE1\u4E50\u961F MV\u5408\u96C6"},{n:"\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6",v:"\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6"},{n:"\u6797\u80AF\u516C\u56ED MV\u5408\u96C6",v:"\u6797\u80AF\u516C\u56ED MV\u5408\u96C6"},{n:"BIGBANG MV\u5408\u96C6",v:"BIGBANG MV\u5408\u96C6"},{n:"\u540E\u8857\u7537\u5B69 MV\u5408\u96C6",v:"\u540E\u8857\u7537\u5B69 MV\u5408\u96C6"},{n:"\u591C\u613F\u4E50\u961F MV\u5408\u96C6",v:"\u591C\u613F\u4E50\u961F MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K MV":[{key:"tidv",name:"\u5206\u7C7B",value:[{n:"4K MV",v:"4K MV"},{n:"4K MV\u5408\u96C6",v:"4K MV\u5408\u96C6"},{n:"4K\u5168\u7F51\u7B2C\u4E00",v:"4K\u5168\u7F51\u7B2C\u4E00"},{n:"4K60FPS",v:"4K60FPS"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"4K\u97E9\u56FD\u5973\u661F MV\u5408\u96C6",v:"4K\u97E9\u56FD\u5973\u661F MV\u5408\u96C6"},{n:"4K\u674E\u5B5D\u5229 MV\u5408\u96C6",v:"4K\u674E\u5B5D\u5229 MV\u5408\u96C6"},{n:"4K\u674E\u77E5\u6069 MV\u5408\u96C6",v:"4K\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"4K\u6797\u5141\u513F MV\u5408\u96C6",v:"4K\u6797\u5141\u513F MV\u5408\u96C6"},{n:"4K\u91D1\u6CEB\u96C5 MV\u5408\u96C6",v:"4K\u91D1\u6CEB\u96C5 MV\u5408\u96C6"},{n:"4K\u91D1\u6CF0\u598D MV\u5408\u96C6",v:"4K\u91D1\u6CF0\u598D MV\u5408\u96C6"},{n:"4K\u674E\u5BA3\u7F8E MV\u5408\u96C6",v:"4K\u674E\u5BA3\u7F8E MV\u5408\u96C6"},{n:"4K\u5D14\u96EA\u8389 MV\u5408\u96C6",v:"4K\u5D14\u96EA\u8389 MV\u5408\u96C6"},{n:"4K\u5B89\u559C\u5EF6 MV\u5408\u96C6",v:"4K\u5B89\u559C\u5EF6 MV\u5408\u96C6"},{n:"4K\u91D1\u4E9A\u8363 MV\u5408\u96C6",v:"4K\u91D1\u4E9A\u8363 MV\u5408\u96C6"},{n:"4K\u674E\u77E5\u6069 MV\u5408\u96C6",v:"4K\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"4K\u674E\u8D1E\u8D24 MV\u5408\u96C6",v:"4K\u674E\u8D1E\u8D24 MV\u5408\u96C6"},{n:"4K\u6D2A\u771F\u82F1 MV\u5408\u96C6",v:"4K\u6D2A\u771F\u82F1 MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"4K\u65E5\u672C\u5973\u661F MV\u5408\u96C6",v:"4K\u65E5\u672C\u5973\u661F MV\u5408\u96C6"},{n:"4K YUI MV\u5408\u96C6",v:"4K YUI MV\u5408\u96C6"},{n:"4K\u5E78\u7530\u6765\u672A MV\u5408\u96C6",v:"4K\u5E78\u7530\u6765\u672A MV\u5408\u96C6"},{n:"4K\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6",v:"4K\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6"},{n:"4K\u6EE8\u5D0E\u6B65 MV\u5408\u96C6",v:"4K\u6EE8\u5D0E\u6B65 MV\u5408\u96C6"},{n:"4K\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6",v:"4K\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6"},{n:"4K\u5B87\u591A\u7530\u5149 MV\u5408\u96C6",v:"4K\u5B87\u591A\u7530\u5149 MV\u5408\u96C6"},{n:"4K\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6",v:"4K\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6"},{n:"4K\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6",v:"4K\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6"},{n:"4K\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6",v:"4K\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6"},{n:"4K Angela MV\u5408\u96C6",v:"4K Angela MV\u5408\u96C6"},{n:"4K\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6",v:"4K\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"4K\u5973\u661F MV\u5408\u96C6",v:"4K\u5973\u661F MV\u5408\u96C6"},{n:"4K\u6234\u4F69\u59AE MV\u5408\u96C6",v:"4K\u6234\u4F69\u59AE MV\u5408\u96C6"},{n:"4K\u9093\u7D2B\u68CB MV\u5408\u96C6",v:"4K\u9093\u7D2B\u68CB MV\u5408\u96C6"},{n:"4K\u5F20\u97F6\u6DB5 MV\u5408\u96C6",v:"4K\u5F20\u97F6\u6DB5 MV\u5408\u96C6"},{n:"4K\u8521\u5065\u96C5 MV\u5408\u96C6",v:"4K\u8521\u5065\u96C5 MV\u5408\u96C6"},{n:"4K\u83AB\u6587\u851A MV\u5408\u96C6",v:"4K\u83AB\u6587\u851A MV\u5408\u96C6"},{n:"4K\u5218\u82E5\u82F1 MV\u5408\u96C6",v:"4K\u5218\u82E5\u82F1 MV\u5408\u96C6"},{n:"4K\u9093\u4E3D\u541B MV\u5408\u96C6",v:"4K\u9093\u4E3D\u541B MV\u5408\u96C6"},{n:"4K\u8521\u4F9D\u6797 MV\u5408\u96C6",v:"4K\u8521\u4F9D\u6797 MV\u5408\u96C6"},{n:"4K\u674E\u5B87\u6625 MV\u5408\u96C6",v:"4K\u674E\u5B87\u6625 MV\u5408\u96C6"},{n:"4K\u5F90\u4F73\u83B9 MV\u5408\u96C6",v:"4K\u5F90\u4F73\u83B9 MV\u5408\u96C6"},{n:"4K\u6768\u5343\u5B05 MV\u5408\u96C6",v:"4K\u6768\u5343\u5B05 MV\u5408\u96C6"},{n:"4K\u5F20\u9753\u9896 MV\u5408\u96C6",v:"4K\u5F20\u9753\u9896 MV\u5408\u96C6"},{n:"4K\u6768\u4E1E\u7433 MV\u5408\u96C6",v:"4K\u6768\u4E1E\u7433 MV\u5408\u96C6"},{n:"4K\u8427\u4E9A\u8F69 MV\u5408\u96C6",v:"4K\u8427\u4E9A\u8F69 MV\u5408\u96C6"},{n:"4K\u5BB9\u7956\u513F MV\u5408\u96C6",v:"4K\u5BB9\u7956\u513F MV\u5408\u96C6"},{n:"4K\u6885\u8273\u82B3 MV\u5408\u96C6",v:"4K\u6885\u8273\u82B3 MV\u5408\u96C6"},{n:"4K\u5B59\u71D5\u59FF MV\u5408\u96C6",v:"4K\u5B59\u71D5\u59FF MV\u5408\u96C6"},{n:"4K\u8881\u5A05\u7EF4 MV\u5408\u96C6",v:"4K\u8881\u5A05\u7EF4 MV\u5408\u96C6"},{n:"4K\u738B\u83F2 MV\u5408\u96C6",v:"4K\u738B\u83F2 MV\u5408\u96C6"},{n:"4K\u6881\u9759\u8339 MV\u5408\u96C6",v:"4K\u6881\u9759\u8339 MV\u5408\u96C6"},{n:"4K\u5468\u6167\u654F MV\u5408\u96C6",v:"4K\u5468\u6167\u654F MV\u5408\u96C6"},{n:"4K\u5F20\u60E0\u59B9 MV\u5408\u96C6",v:"4K\u5F20\u60E0\u59B9 MV\u5408\u96C6"},{n:"4K\u5468\u7B14\u7545 MV\u5408\u96C6",v:"4K\u5468\u7B14\u7545 MV\u5408\u96C6"},{n:"4K\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6",v:"4K\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6"},{n:"4K\u9648\u6167\u5A34 MV\u5408\u96C6",v:"4K\u9648\u6167\u5A34 MV\u5408\u96C6"},{n:"4K\u90ED\u9759 MV\u5408\u96C6",v:"4K\u90ED\u9759 MV\u5408\u96C6"},{n:"4K\u90A3\u82F1 MV\u5408\u96C6",v:"4K\u90A3\u82F1 MV\u5408\u96C6"},{n:"4K\u97E9\u7EA2 MV\u5408\u96C6",v:"4K\u97E9\u7EA2 MV\u5408\u96C6"},{n:"4K\u6797\u5FC6\u83B2 MV\u5408\u96C6",v:"4K\u6797\u5FC6\u83B2 MV\u5408\u96C6"},{n:"4K\u674E\u739F MV\u5408\u96C6",v:"4K\u674E\u739F MV\u5408\u96C6"},{n:"4K\u5F90\u5C0F\u51E4 MV\u5408\u96C6",v:"4K\u5F90\u5C0F\u51E4 MV\u5408\u96C6"},{n:"4K\u5353\u4F9D\u5A77 MV\u5408\u96C6",v:"4K\u5353\u4F9D\u5A77 MV\u5408\u96C6"},{n:"4K\u90C1\u53EF\u552F MV\u5408\u96C6",v:"4K\u90C1\u53EF\u552F MV\u5408\u96C6"},{n:"4K\u7530\u9707 MV\u5408\u96C6",v:"4K\u7530\u9707 MV\u5408\u96C6"},{n:"4K\u51E4\u98DE\u98DE MV\u5408\u96C6",v:"4K\u51E4\u98DE\u98DE MV\u5408\u96C6"},{n:"4K\u8C2D\u6676 MV\u5408\u96C6",v:"4K\u8C2D\u6676 MV\u5408\u96C6"},{n:"4K\u53F6\u5029\u6587 MV\u5408\u96C6",v:"4K\u53F6\u5029\u6587 MV\u5408\u96C6"},{n:"4K\u738B\u5FC3\u51CC MV\u5408\u96C6",v:"4K\u738B\u5FC3\u51CC MV\u5408\u96C6"},{n:"4K\u90ED\u91C7\u6D01 MV\u5408\u96C6",v:"4K\u90ED\u91C7\u6D01 MV\u5408\u96C6"},{n:"4K\u963F\u9EDB\u5C14 MV\u5408\u96C6",v:"4K\u963F\u9EDB\u5C14 MV\u5408\u96C6"},{n:"4K LadyGaga MV\u5408\u96C6",v:"4K LadyGaga MV\u5408\u96C6"},{n:"4K\u5E03\u5170\u59AE MV\u5408\u96C6",v:"4K\u5E03\u5170\u59AE MV\u5408\u96C6"},{n:"4K\u6D1B\u5929\u4F9D MV\u5408\u96C6",v:"4K\u6D1B\u5929\u4F9D MV\u5408\u96C6"},{n:"4K\u521D\u97F3\u672A\u6765 MV\u5408\u96C6",v:"4K\u521D\u97F3\u672A\u6765 MV\u5408\u96C6"}]},{key:"tidx",name:"\u5206\u7C7B",value:[{n:"4K\u7537\u661F MV\u5408\u96C6",v:"4K\u7537\u661F MV\u5408\u96C6"},{n:"4K\u5468\u6770\u4F26 MV\u5408\u96C6",v:"4K\u5468\u6770\u4F26 MV\u5408\u96C6"},{n:"4K\u9648\u5955\u8FC5 MV\u5408\u96C6",v:"4K\u9648\u5955\u8FC5 MV\u5408\u96C6"},{n:"4K\u5218\u5FB7\u534E MV\u5408\u96C6",v:"4K\u5218\u5FB7\u534E MV\u5408\u96C6"},{n:"4K\u90ED\u5BCC\u57CE MV\u5408\u96C6",v:"4K\u90ED\u5BCC\u57CE MV\u5408\u96C6"},{n:"4K\u5F20\u5B66\u53CB MV\u5408\u96C6",v:"4K\u5F20\u5B66\u53CB MV\u5408\u96C6"},{n:"4K\u9ECE\u660E MV\u5408\u96C6",v:"4K\u9ECE\u660E MV\u5408\u96C6"},{n:"4K\u674E\u5B97\u76DB MV\u5408\u96C6",v:"4K\u674E\u5B97\u76DB MV\u5408\u96C6"},{n:"4K\u6734\u6811 MV\u5408\u96C6",v:"4K\u6734\u6811 MV\u5408\u96C6"},{n:"4K\u6797\u5B50\u7965 MV\u5408\u96C6",v:"4K\u6797\u5B50\u7965 MV\u5408\u96C6"},{n:"4K\u4EFB\u8D24\u9F50 MV\u5408\u96C6",v:"4K\u4EFB\u8D24\u9F50 MV\u5408\u96C6"},{n:"4K\u5F20\u4FE1\u54F2 MV\u5408\u96C6",v:"4K\u5F20\u4FE1\u54F2 MV\u5408\u96C6"},{n:"4K\u5B59\u6960 MV\u5408\u96C6",v:"4K\u5B59\u6960 MV\u5408\u96C6"},{n:"4K\u5F20\u5B87 MV\u5408\u96C6",v:"4K\u5F20\u5B87 MV\u5408\u96C6"},{n:"4K\u5468\u534E\u5065 MV\u5408\u96C6",v:"4K\u5468\u534E\u5065 MV\u5408\u96C6"},{n:"4K\u859B\u4E4B\u8C26 MV\u5408\u96C6",v:"4K\u859B\u4E4B\u8C26 MV\u5408\u96C6"},{n:"4K\u8BB8\u5D69 MV\u5408\u96C6",v:"4K\u8BB8\u5D69 MV\u5408\u96C6"},{n:"4K\u5468\u6DF1 MV\u5408\u96C6",v:"4K\u5468\u6DF1 MV\u5408\u96C6"},{n:"4K\u6BDB\u4E0D\u6613 MV\u5408\u96C6",v:"4K\u6BDB\u4E0D\u6613 MV\u5408\u96C6"},{n:"4K\u6C6A\u82CF\u6CF7 MV\u5408\u96C6",v:"4K\u6C6A\u82CF\u6CF7 MV\u5408\u96C6"},{n:"4K\u6768\u5B97\u7EAC MV\u5408\u96C6",v:"4K\u6768\u5B97\u7EAC MV\u5408\u96C6"},{n:"4K\u80E1\u5F66\u658C MV\u5408\u96C6",v:"4K\u80E1\u5F66\u658C MV\u5408\u96C6"},{n:"4K\u674E\u8363\u6D69 MV\u5408\u96C6",v:"4K\u674E\u8363\u6D69 MV\u5408\u96C6"},{n:"4K\u6797\u5FD7\u70AB MV\u5408\u96C6",v:"4K\u6797\u5FD7\u70AB MV\u5408\u96C6"},{n:"4K\u9676\u5586 MV\u5408\u96C6",v:"4K\u9676\u5586 MV\u5408\u96C6"},{n:"4K\u80E1\u590F MV\u5408\u96C6",v:"4K\u80E1\u590F MV\u5408\u96C6"},{n:"4K\u674E\u7389\u521A MV\u5408\u96C6",v:"4K\u674E\u7389\u521A MV\u5408\u96C6"},{n:"4K\u5F26\u5B50 MV\u5408\u96C6",v:"4K\u5F26\u5B50 MV\u5408\u96C6"},{n:"4K\u9648\u5C0F\u6625 MV\u5408\u96C6",v:"4K\u9648\u5C0F\u6625 MV\u5408\u96C6"},{n:"4K\u9E7F\u6657 MV\u5408\u96C6",v:"4K\u9E7F\u6657 MV\u5408\u96C6"},{n:"4K\u8BB8\u5DCD MV\u5408\u96C6",v:"4K\u8BB8\u5DCD MV\u5408\u96C6"},{n:"4K\u6797\u4FCA\u6770 MV\u5408\u96C6",v:"4K\u6797\u4FCA\u6770 MV\u5408\u96C6"},{n:"4K\u8D75\u96F7 MV\u5408\u96C6",v:"4K\u8D75\u96F7 MV\u5408\u96C6"},{n:"4K\u8C2D\u548F\u9E9F MV\u5408\u96C6",v:"4K\u8C2D\u548F\u9E9F MV\u5408\u96C6"},{n:"4K\u5468\u4F20\u96C4 MV\u5408\u96C6",v:"4K\u5468\u4F20\u96C4 MV\u5408\u96C6"},{n:"4K\u5F20\u56FD\u8363 MV\u5408\u96C6",v:"4K\u5F20\u56FD\u8363 MV\u5408\u96C6"},{n:"4K\u674E\u5065 MV\u5408\u96C6",v:"4K\u674E\u5065 MV\u5408\u96C6"},{n:"4K\u534E\u6668\u5B87 MV\u5408\u96C6",v:"4K\u534E\u6668\u5B87 MV\u5408\u96C6"},{n:"4K\u5927\u5F20\u4F1F MV\u5408\u96C6",v:"4K\u5927\u5F20\u4F1F MV\u5408\u96C6"},{n:"4K\u738B\u4FCA\u51EF MV\u5408\u96C6",v:"4K\u738B\u4FCA\u51EF MV\u5408\u96C6"},{n:"4K\u6613\u70CA\u5343\u73BA MV\u5408\u96C6",v:"4K\u6613\u70CA\u5343\u73BA MV\u5408\u96C6"},{n:"4K\u738B\u6E90 MV\u5408\u96C6",v:"4K\u738B\u6E90 MV\u5408\u96C6"},{n:"4K\u7530\u99A5\u7504 MV\u5408\u96C6",v:"4K\u7530\u99A5\u7504 MV\u5408\u96C6"},{n:"4K\u5C0F\u864E\u961F MV\u5408\u96C6",v:"4K\u5C0F\u864E\u961F MV\u5408\u96C6"},{n:"4K\u5F20\u6770 MV\u5408\u96C6",v:"4K\u5F20\u6770 MV\u5408\u96C6"},{n:"4K\u4F0D\u4F70 MV\u5408\u96C6",v:"4K\u4F0D\u4F70 MV\u5408\u96C6"},{n:"4K\u5200\u90CE MV\u5408\u96C6",v:"4K\u5200\u90CE MV\u5408\u96C6"},{n:"4K\u6F58\u73AE\u67CF MV\u5408\u96C6",v:"4K\u6F58\u73AE\u67CF MV\u5408\u96C6"},{n:"4K\u6797\u5BA5\u5609 MV\u5408\u96C6",v:"4K\u6797\u5BA5\u5609 MV\u5408\u96C6"},{n:"4K\u8521\u5F90\u5764 MV\u5408\u96C6",v:"4K\u8521\u5F90\u5764 MV\u5408\u96C6"},{n:"4K\u674E\u5723\u6770 MV\u5408\u96C6",v:"4K\u674E\u5723\u6770 MV\u5408\u96C6"},{n:"4K\u8427\u656C\u817E MV\u5408\u96C6",v:"4K\u8427\u656C\u817E MV\u5408\u96C6"},{n:"4K\u7126\u8FC8\u5947 MV\u5408\u96C6",v:"4K\u7126\u8FC8\u5947 MV\u5408\u96C6"},{n:"4K\u5C24\u957F\u9756 MV\u5408\u96C6",v:"4K\u5C24\u957F\u9756 MV\u5408\u96C6"},{n:"4K\u90D1\u4E2D\u57FA MV\u5408\u96C6",v:"4K\u90D1\u4E2D\u57FA MV\u5408\u96C6"},{n:"4K\u5F20\u827A\u5174 MV\u5408\u96C6",v:"4K\u5F20\u827A\u5174 MV\u5408\u96C6"},{n:"4K\u738B\u5609\u5C14 MV\u5408\u96C6",v:"4K\u738B\u5609\u5C14 MV\u5408\u96C6"},{n:"4K\u5218\u5BAA\u534E MV\u5408\u96C6",v:"4K\u5218\u5BAA\u534E MV\u5408\u96C6"},{n:"4K\u5F20\u656C\u8F69 MV\u5408\u96C6",v:"4K\u5F20\u656C\u8F69 MV\u5408\u96C6"},{n:"4K\u674E\u514B\u52E4 MV\u5408\u96C6",v:"4K\u674E\u514B\u52E4 MV\u5408\u96C6"},{n:"4K\u963F\u675C MV\u5408\u96C6",v:"4K\u963F\u675C MV\u5408\u96C6"},{n:"4K\u5D14\u5065 MV\u5408\u96C6",v:"4K\u5D14\u5065 MV\u5408\u96C6"},{n:"4K\u5EBE\u6F84\u5E86 MV\u5408\u96C6",v:"4K\u5EBE\u6F84\u5E86 MV\u5408\u96C6"},{n:"4K\u6C6A\u5CF0 MV\u5408\u96C6",v:"4K\u6C6A\u5CF0 MV\u5408\u96C6"},{n:"4K\u6768\u5764 MV\u5408\u96C6",v:"4K\u6768\u5764 MV\u5408\u96C6"},{n:"4K\u5F20\u9707\u5CB3 MV\u5408\u96C6",v:"4K\u5F20\u9707\u5CB3 MV\u5408\u96C6"},{n:"4K\u9F50\u79E6 MV\u5408\u96C6",v:"4K\u9F50\u79E6 MV\u5408\u96C6"},{n:"4K\u5F20\u96E8\u751F MV\u5408\u96C6",v:"4K\u5F20\u96E8\u751F MV\u5408\u96C6"},{n:"4K\u9EC4\u54C1\u6E90 MV\u5408\u96C6",v:"4K\u9EC4\u54C1\u6E90 MV\u5408\u96C6"},{n:"4K\u4E01\u5F53 MV\u5408\u96C6",v:"4K\u4E01\u5F53 MV\u5408\u96C6"},{n:"4K\u90D1\u667A\u5316 MV\u5408\u96C6",v:"4K\u90D1\u667A\u5316 MV\u5408\u96C6"},{n:"4K\u8C22\u9706\u950B MV\u5408\u96C6",v:"4K\u8C22\u9706\u950B MV\u5408\u96C6"},{n:"4K\u9EC4\u5C0F\u7425 MV\u5408\u96C6",v:"4K\u9EC4\u5C0F\u7425 MV\u5408\u96C6"},{n:"4K\u4EFB\u5609\u4F26 MV\u5408\u96C6",v:"4K\u4EFB\u5609\u4F26 MV\u5408\u96C6"},{n:"4K\u5B8B\u4E9A\u68EE MV\u5408\u96C6",v:"4K\u5B8B\u4E9A\u68EE MV\u5408\u96C6"},{n:"4K\u8D39\u7389\u6E05 MV\u5408\u96C6",v:"4K\u8D39\u7389\u6E05 MV\u5408\u96C6"},{n:"4K\u8D39\u7FD4 MV\u5408\u96C6",v:"4K\u8D39\u7FD4 MV\u5408\u96C6"},{n:"4K\u91D1\u5FD7\u6587 MV\u5408\u96C6",v:"4K\u91D1\u5FD7\u6587 MV\u5408\u96C6"},{n:"4K\u9EC4\u5BB6\u5F3A MV\u5408\u96C6",v:"4K\u9EC4\u5BB6\u5F3A MV\u5408\u96C6"},{n:"4K\u65B9\u5927\u540C MV\u5408\u96C6",v:"4K\u65B9\u5927\u540C MV\u5408\u96C6"},{n:"4K\u5434\u514B\u7FA4 MV\u5408\u96C6",v:"4K\u5434\u514B\u7FA4 MV\u5408\u96C6"},{n:"4K\u7F57\u5927\u4F51 MV\u5408\u96C6",v:"4K\u7F57\u5927\u4F51 MV\u5408\u96C6"},{n:"4K\u5149\u826F MV\u5408\u96C6",v:"4K\u5149\u826F MV\u5408\u96C6"},{n:"4K\u738B\u6770 MV\u5408\u96C6",v:"4K\u738B\u6770 MV\u5408\u96C6"},{n:"4K\u91D1\u6C60 MV\u5408\u96C6",v:"4K\u91D1\u6C60 MV\u5408\u96C6"},{n:"4K\u5C60\u6D2A\u521A MV\u5408\u96C6",v:"4K\u5C60\u6D2A\u521A MV\u5408\u96C6"},{n:"4K\u6234\u8343 MV\u5408\u96C6",v:"4K\u6234\u8343 MV\u5408\u96C6"},{n:"4K\u7F57\u5FD7\u7965 MV\u5408\u96C6",v:"4K\u7F57\u5FD7\u7965 MV\u5408\u96C6"},{n:"4K\u738B\u529B\u5B8F MV\u5408\u96C6",v:"4K\u738B\u529B\u5B8F MV\u5408\u96C6"},{n:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6",v:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6"},{n:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6",v:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6"},{n:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6",v:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6"}]},{key:"tidy",name:"\u8BED\u79CD",value:[{n:"4K\u534E\u8BED MV\u5408\u96C6",v:"4K\u534E\u8BED MV\u5408\u96C6"},{n:"4K\u6B27\u7F8E MV\u5408\u96C6",v:"4K\u6B27\u7F8E MV\u5408\u96C6"},{n:"4K\u65E5\u8BED MV\u5408\u96C6",v:"4K\u65E5\u8BED MV\u5408\u96C6"},{n:"4K\u97E9\u8BED MV\u5408\u96C6",v:"4K\u97E9\u8BED MV\u5408\u96C6"},{n:"4K\u56FD\u8BED MV\u5408\u96C6",v:"4K\u56FD\u8BED MV\u5408\u96C6"},{n:"4K\u7CA4\u8BED MV\u5408\u96C6",v:"4K\u7CA4\u8BED MV\u5408\u96C6"},{n:"4K\u95FD\u5357\u8BED MV\u5408\u96C6",v:"4K\u95FD\u5357\u8BED MV\u5408\u96C6"},{n:"4K\u4E1C\u5357\u4E9A MV\u5408\u96C6",v:"4K\u4E1C\u5357\u4E9A MV\u5408\u96C6"},{n:"4K\u82F1\u8BED MV\u5408\u96C6",v:"4K\u82F1\u8BED MV\u5408\u96C6"},{n:"4K\u4FC4\u8BED MV\u5408\u96C6",v:"4K\u4FC4\u8BED MV\u5408\u96C6"},{n:"4K\u5370\u5EA6 MV\u5408\u96C6",v:"4K\u5370\u5EA6 MV\u5408\u96C6"},{n:"4K\u81EA\u5236 MV\u5408\u96C6",v:"4K\u81EA\u5236 MV\u5408\u96C6"}]},{key:"tidd",name:"\u4E50\u961F\u7EC4\u5408",value:[{n:"4K\u4E50\u961F MV\u5408\u96C6",v:"4K\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u7EC4\u5408 MV\u5408\u96C6",v:"4K\u7EC4\u5408 MV\u5408\u96C6"},{n:"4K Beyond MV\u5408\u96C6",v:"4K Beyond MV\u5408\u96C6"},{n:"4K\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6",v:"4K\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6"},{n:"4K\u7EB5\u8D2F\u7EBF MV\u5408\u96C6",v:"4K\u7EB5\u8D2F\u7EBF MV\u5408\u96C6"},{n:"4K\u82CF\u6253\u7EFF MV\u5408\u96C6",v:"4K\u82CF\u6253\u7EFF MV\u5408\u96C6"},{n:"4K\u4E94\u6708\u5929 MV\u5408\u96C6",v:"4K\u4E94\u6708\u5929 MV\u5408\u96C6"},{n:"4K TFBOYS MV\u5408\u96C6",v:"4K TFBOYS MV\u5408\u96C6"},{n:"4K\u7FBD\u6CC9 MV\u5408\u96C6",v:"4K\u7FBD\u6CC9 MV\u5408\u96C6"},{n:"4K\u8349\u8722 MV\u5408\u96C6",v:"4K\u8349\u8722 MV\u5408\u96C6"},{n:"4K\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6",v:"4K\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6"},{n:"4K\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6",v:"4K\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6"},{n:"4K\u98DE\u513F\u4E50\u961F MV\u5408\u96C6",v:"4K\u98DE\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u82B1\u513F\u4E50\u961F MV\u5408\u96C6",v:"4K\u82B1\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u5357\u62F3\u5988\u5988 MV\u5408\u96C6",v:"4K\u5357\u62F3\u5988\u5988 MV\u5408\u96C6"},{n:"4K\u6C34\u6728\u5E74\u534E MV\u5408\u96C6",v:"4K\u6C34\u6728\u5E74\u534E MV\u5408\u96C6"},{n:"4K\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6",v:"4K\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6"},{n:"4K\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6",v:"4K\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6"},{n:"4K\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6",v:"4K\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u4FE1\u4E50\u961F MV\u5408\u96C6",v:"4K\u4FE1\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6",v:"4K\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u6797\u80AF\u516C\u56ED MV\u5408\u96C6",v:"4K\u6797\u80AF\u516C\u56ED MV\u5408\u96C6"},{n:"4K BIGBANG MV\u5408\u96C6",v:"4K BIGBANG MV\u5408\u96C6"},{n:"4K\u540E\u8857\u7537\u5B69 MV\u5408\u96C6",v:"4K\u540E\u8857\u7537\u5B69 MV\u5408\u96C6"},{n:"4K\u591C\u613F\u4E50\u961F MV\u5408\u96C6",v:"4K\u591C\u613F\u4E50\u961F MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5973\u56E2:[{key:"tidt",name:"\u5206\u7C7B",value:[{n:"\u5973\u56E2",v:"\u5973\u56E2"},{n:"\u5973\u56E2\u5408\u96C6",v:"\u5973\u56E2\u5408\u96C6"}]},{key:"tidz",name:"\u5206\u7C7B",value:[{n:"\u4E2D\u56FD\u5973\u56E2",v:"\u4E2D\u56FD\u5973\u56E2"},{n:"\u4E2D\u56FD\u5973\u56E2\u5408\u96C6",v:"\u4E2D\u56FD\u5973\u56E2\u5408\u96C6"},{n:"SNH48 MV\u5408\u96C6",v:"SNH48 MV\u5408\u96C6"},{n:"S.H.E MV\u5408\u96C6",v:"S.H.E MV\u5408\u96C6"},{n:"Twins MV\u5408\u96C6",v:"Twins MV\u5408\u96C6"},{n:"\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6",v:"\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6"},{n:"BY2 MV\u5408\u96C6",v:"BY2 MV\u5408\u96C6"},{n:"S.I.N.G MV\u5408\u96C6",v:"S.I.N.G MV\u5408\u96C6"},{n:"3unshine MV\u5408\u96C6",v:"3unshine MV\u5408\u96C6"},{n:"\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6",v:"\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6"},{n:"\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6",v:"\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6"},{n:"GNZ48 MV\u5408\u96C6",v:"GNZ48 MV\u5408\u96C6"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"\u97E9\u56FD\u5973\u56E2",v:"\u97E9\u56FD\u5973\u56E2"},{n:"\u97E9\u56FD\u5973\u56E2\u5408\u96C6",v:"\u97E9\u56FD\u5973\u56E2\u5408\u96C6"},{n:"TWICE MV\u5408\u96C6",v:"TWICE MV\u5408\u96C6"},{n:"4MINUTE MV\u5408\u96C6",v:"4MINUTE MV\u5408\u96C6"},{n:"EXID MV\u5408\u96C6",v:"EXID MV\u5408\u96C6"},{n:"KARA MV\u5408\u96C6",v:"KARA MV\u5408\u96C6"},{n:"TARA MV\u5408\u96C6",v:"TARA MV\u5408\u96C6"},{n:"BLACKPINK MV\u5408\u96C6",v:"BLACKPINK MV\u5408\u96C6"},{n:"LOONA MV\u5408\u96C6",v:"LOONA MV\u5408\u96C6"},{n:"ITZY MV\u5408\u96C6",v:"ITZY MV\u5408\u96C6"},{n:"RedVelvet MV\u5408\u96C6",v:"RedVelvet MV\u5408\u96C6"},{n:"Everglow MV\u5408\u96C6",v:"Everglow MV\u5408\u96C6"},{n:"Mamamoo MV\u5408\u96C6",v:"Mamamoo MV\u5408\u96C6"},{n:"\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6",v:"\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6"},{n:"S.E.S MV\u5408\u96C6",v:"S.E.S MV\u5408\u96C6"},{n:"FIN.K.L MV\u5408\u96C6",v:"FIN.K.L MV\u5408\u96C6"},{n:"2NE1 MV\u5408\u96C6",v:"2NE1 MV\u5408\u96C6"},{n:"WonderGirls MV\u5408\u96C6",v:"WonderGirls MV\u5408\u96C6"},{n:"IZ*ONE MV\u5408\u96C6",v:"IZ*ONE MV\u5408\u96C6"},{n:"Sistar MV\u5408\u96C6",v:"Sistar MV\u5408\u96C6"},{n:"Apink MV\u5408\u96C6",v:"Apink MV\u5408\u96C6"},{n:"AOA MV\u5408\u96C6",v:"AOA MV\u5408\u96C6"},{n:"GFRIEND MV\u5408\u96C6",v:"GFRIEND MV\u5408\u96C6"},{n:"f(x) MV\u5408\u96C6",v:"f(x) MV\u5408\u96C6"},{n:"(G)I-DLE MV\u5408\u96C6",v:"(G)I-DLE MV\u5408\u96C6"},{n:"Itzy MV\u5408\u96C6",v:"Itzy MV\u5408\u96C6"},{n:"Oh!GG MV\u5408\u96C6",v:"Oh!GG MV\u5408\u96C6"},{n:"GirlCrush MV\u5408\u96C6",v:"GirlCrush MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"\u65E5\u672C\u5973\u56E2",v:"\u65E5\u672C\u5973\u56E2"},{n:"\u65E5\u672C\u5973\u56E2\u5408\u96C6",v:"\u65E5\u672C\u5973\u56E2\u5408\u96C6"},{n:"AKB48 MV\u5408\u96C6",v:"AKB48 MV\u5408\u96C6"},{n:"SKE48 MV\u5408\u96C6",v:"SKE48 MV\u5408\u96C6"},{n:"NMB48 MV\u5408\u96C6",v:"NMB48 MV\u5408\u96C6"},{n:"JKT48 MV\u5408\u96C6",v:"JKT48 MV\u5408\u96C6"},{n:"HKT48 MV\u5408\u96C6",v:"HKT48 MV\u5408\u96C6"},{n:"AKB48TeamTP MV\u5408\u96C6",v:"AKB48TeamTP MV\u5408\u96C6"},{n:"Perfume MV\u5408\u96C6",v:"Perfume MV\u5408\u96C6"},{n:"\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6",v:"\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6"},{n:"\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6",v:"\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6"},{n:"\u6A31\u574246 MV\u5408\u96C6",v:"\u6A31\u574246 MV\u5408\u96C6"},{n:"\u65E5\u5411\u574246 MV\u5408\u96C6",v:"\u65E5\u5411\u574246 MV\u5408\u96C6"},{n:"E-girls MV\u5408\u96C6",v:"E-girls MV\u5408\u96C6"},{n:"NiziU MV\u5408\u96C6",v:"NiziU MV\u5408\u96C6"},{n:"BiSH MV\u5408\u96C6",v:"BiSH MV\u5408\u96C6"},{n:"\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6",v:"\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"4K\u5973\u56E2",v:"4K\u5973\u56E2"}]},{key:"tidg",name:"\u5206\u7C7B",value:[{n:"4K\u4E2D\u56FD\u5973\u56E2",v:"4K\u4E2D\u56FD\u5973\u56E2"},{n:"4K\u4E2D\u56FD\u5973\u56E2\u5408\u96C6",v:"4K\u4E2D\u56FD\u5973\u56E2\u5408\u96C6"},{n:"4K SNH48 MV\u5408\u96C6",v:"4K SNH48 MV\u5408\u96C6"},{n:"4K S.H.E MV\u5408\u96C6",v:"4K S.H.E MV\u5408\u96C6"},{n:"4K Twins MV\u5408\u96C6",v:"4K Twins MV\u5408\u96C6"},{n:"4K\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6",v:"4K\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6"},{n:"4K BY2 MV\u5408\u96C6",v:"4K BY2 MV\u5408\u96C6"},{n:"4K S.I.N.G MV\u5408\u96C6",v:"4K S.I.N.G MV\u5408\u96C6"},{n:"4K 3unshine MV\u5408\u96C6",v:"4K 3unshine MV\u5408\u96C6"},{n:"4K\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6",v:"4K\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6"},{n:"4K\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6",v:"4K\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6"},{n:"4K GNZ48 MV\u5408\u96C6",v:"4K GNZ48 MV\u5408\u96C6"}]},{key:"tidk",name:"\u5206\u7C7B",value:[{n:"4K\u97E9\u56FD\u5973\u56E2",v:"4K\u97E9\u56FD\u5973\u56E2"},{n:"4K\u97E9\u56FD\u5973\u56E2\u5408\u96C6",v:"4K\u97E9\u56FD\u5973\u56E2\u5408\u96C6"},{n:"4K TWICE MV\u5408\u96C6",v:"4K TWICE MV\u5408\u96C6"},{n:"4K 4MINUTE MV\u5408\u96C6",v:"4K 4MINUTE MV\u5408\u96C6"},{n:"4K EXID MV\u5408\u96C6",v:"4K EXID MV\u5408\u96C6"},{n:"4K KARA MV\u5408\u96C6",v:"4K KARA MV\u5408\u96C6"},{n:"4K TARA MV\u5408\u96C6",v:"4K TARA MV\u5408\u96C6"},{n:"4K BLACKPINK MV\u5408\u96C6",v:"4K BLACKPINK MV\u5408\u96C6"},{n:"4K LOONA MV\u5408\u96C6",v:"4K LOONA MV\u5408\u96C6"},{n:"4K ITZY MV\u5408\u96C6",v:"4K ITZY MV\u5408\u96C6"},{n:"4K RedVelvet MV\u5408\u96C6",v:"4K RedVelvet MV\u5408\u96C6"},{n:"4K Everglow MV\u5408\u96C6",v:"4K Everglow MV\u5408\u96C6"},{n:"4K Mamamoo MV\u5408\u96C6",v:"4K Mamamoo MV\u5408\u96C6"},{n:"4K\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6",v:"4K\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6"},{n:"4K S.E.S MV\u5408\u96C6",v:"4K S.E.S MV\u5408\u96C6"},{n:"4K FIN.K.L MV\u5408\u96C6",v:"4K FIN.K.L MV\u5408\u96C6"},{n:"4K 2NE1 MV\u5408\u96C6",v:"4K 2NE1 MV\u5408\u96C6"},{n:"4K WonderGirls MV\u5408\u96C6",v:"4K WonderGirls MV\u5408\u96C6"},{n:"4K IZ*ONE MV\u5408\u96C6",v:"4K IZ*ONE MV\u5408\u96C6"},{n:"4K Sistar MV\u5408\u96C6",v:"4K Sistar MV\u5408\u96C6"},{n:"4K Apink MV\u5408\u96C6",v:"4K Apink MV\u5408\u96C6"},{n:"4K AOA MV\u5408\u96C6",v:"4K AOA MV\u5408\u96C6"},{n:"4K GFRIEND MV\u5408\u96C6",v:"4K GFRIEND MV\u5408\u96C6"},{n:"4K f(x) MV\u5408\u96C6",v:"4K f(x) MV\u5408\u96C6"},{n:"4K (G)I-DLE MV\u5408\u96C6",v:"4K (G)I-DLE MV\u5408\u96C6"},{n:"4K Itzy MV\u5408\u96C6",v:"4K Itzy MV\u5408\u96C6"},{n:"4K Oh!GG MV\u5408\u96C6",v:"4K Oh!GG MV\u5408\u96C6"},{n:"4K GirlCrush MV\u5408\u96C6",v:"4K GirlCrush MV\u5408\u96C6"}]},{key:"tida",name:"\u5206\u7C7B",value:[{n:"4K\u65E5\u672C\u5973\u56E2",v:"4K\u65E5\u672C\u5973\u56E2"},{n:"4K\u65E5\u672C\u5973\u56E2\u5408\u96C6",v:"4K\u65E5\u672C\u5973\u56E2\u5408\u96C6"},{n:"4K AKB48 MV\u5408\u96C6",v:"4K AKB48 MV\u5408\u96C6"},{n:"4K SKE48 MV\u5408\u96C6",v:"4K SKE48 MV\u5408\u96C6"},{n:"4K NMB48 MV\u5408\u96C6",v:"4K NMB48 MV\u5408\u96C6"},{n:"4K JKT48 MV\u5408\u96C6",v:"4K JKT48 MV\u5408\u96C6"},{n:"4K HKT48 MV\u5408\u96C6",v:"4K HKT48 MV\u5408\u96C6"},{n:"4K AKB48 TeamTP MV\u5408\u96C6",v:"4K AKB48 TeamTP MV\u5408\u96C6"},{n:"4K Perfume MV\u5408\u96C6",v:"4K Perfume MV\u5408\u96C6"},{n:"4K\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6",v:"4K\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6"},{n:"4K\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6",v:"4K\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6"},{n:"4K\u6A31\u574246 MV\u5408\u96C6",v:"4K\u6A31\u574246 MV\u5408\u96C6"},{n:"4K\u65E5\u5411\u574246 MV\u5408\u96C6",v:"4K\u65E5\u5411\u574246 MV\u5408\u96C6"},{n:"4K E-girls MV\u5408\u96C6",v:"4K E-girls MV\u5408\u96C6"},{n:"4K NiziU MV\u5408\u96C6",v:"4K NiziU MV\u5408\u96C6"},{n:"4K BiSH MV\u5408\u96C6",v:"4K BiSH MV\u5408\u96C6"},{n:"4K\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6",v:"4K\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5F71\u89C6MV:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F8\u58F0\u5C0F\u54C1:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u76F8\u58F0\u5C0F\u54C1",v:"\u76F8\u58F0\u5C0F\u54C1"},{n:"\u5355\u53E3\u76F8\u58F0",v:"\u5355\u53E3\u76F8\u58F0"},{n:"\u7FA4\u53E3\u76F8\u58F0",v:"\u7FA4\u53E3\u76F8\u58F0"},{n:"\u5FB7\u4E91\u793E",v:"\u5FB7\u4E91\u793E"},{n:"\u9752\u66F2\u793E",v:"\u9752\u66F2\u793E"},{n:"\u90ED\u5FB7\u7EB2",v:"\u90ED\u5FB7\u7EB2"},{n:"\u5CB3\u4E91\u9E4F",v:"\u5CB3\u4E91\u9E4F"},{n:"\u66F9\u4E91\u91D1",v:"\u66F9\u4E91\u91D1"},{n:"\u8BC4\u4E66",v:"\u8BC4\u4E66"},{n:"\u5C0F\u66F2",v:"\u5C0F\u66F2"},{n:"\u4E8C\u4EBA\u8F6C",v:"\u4E8C\u4EBA\u8F6C"},{n:"\u6625\u665A\u5C0F\u54C1",v:"\u6625\u665A\u5C0F\u54C1"},{n:"\u8D75\u672C\u5C71",v:"\u8D75\u672C\u5C71"},{n:"\u9648\u4F69\u65AF",v:"\u9648\u4F69\u65AF"},{n:"\u51AF\u5DE9",v:"\u51AF\u5DE9"},{n:"\u5B8B\u5C0F\u5B9D",v:"\u5B8B\u5C0F\u5B9D"},{n:"\u8D75\u4E3D\u84C9",v:"\u8D75\u4E3D\u84C9"},{n:"\u90ED\u8FBE",v:"\u90ED\u8FBE"},{n:"\u6F58\u957F\u6C5F",v:"\u6F58\u957F\u6C5F"},{n:"\u90ED\u51AC\u4E34",v:"\u90ED\u51AC\u4E34"},{n:"\u4E25\u987A\u5F00",v:"\u4E25\u987A\u5F00"},{n:"\u6587\u677E",v:"\u6587\u677E"},{n:"\u5F00\u5FC3\u9EBB\u82B1",v:"\u5F00\u5FC3\u9EBB\u82B1"},{n:"\u5C4C\u4E1D\u7537\u58EB",v:"\u5C4C\u4E1D\u7537\u58EB"},{n:"\u559C\u5267\u7EFC\u827A",v:"\u559C\u5267\u7EFC\u827A"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u76F8\u58F0\u5C0F\u54C1",v:"4K\u76F8\u58F0\u5C0F\u54C1"},{n:"4K\u5355\u53E3\u76F8\u58F0",v:"4K\u5355\u53E3\u76F8\u58F0"},{n:"4K\u7FA4\u53E3\u76F8\u58F0",v:"4K\u7FA4\u53E3\u76F8\u58F0"},{n:"4K\u5FB7\u4E91\u793E",v:"4K\u5FB7\u4E91\u793E"},{n:"4K\u9752\u66F2\u793E",v:"4K\u9752\u66F2\u793E"},{n:"4K\u90ED\u5FB7\u7EB2",v:"4K\u90ED\u5FB7\u7EB2"},{n:"4K\u5CB3\u4E91\u9E4F",v:"4K\u5CB3\u4E91\u9E4F"},{n:"4K\u66F9\u4E91\u91D1",v:"4K\u66F9\u4E91\u91D1"},{n:"4K\u8BC4\u4E66",v:"4K\u8BC4\u4E66"},{n:"4K\u5C0F\u66F2",v:"4K\u5C0F\u66F2"},{n:"4K\u4E8C\u4EBA\u8F6C",v:"4K\u4E8C\u4EBA\u8F6C"},{n:"4K\u6625\u665A\u5C0F\u54C1",v:"4K\u6625\u665A\u5C0F\u54C1"},{n:"4K\u8D75\u672C\u5C71",v:"4K\u8D75\u672C\u5C71"},{n:"4K\u9648\u4F69\u65AF",v:"4K\u9648\u4F69\u65AF"},{n:"4K\u51AF\u5DE9",v:"4K\u51AF\u5DE9"},{n:"4K\u5B8B\u5C0F\u5B9D",v:"4K\u5B8B\u5C0F\u5B9D"},{n:"4K\u8D75\u4E3D\u84C9",v:"4K\u8D75\u4E3D\u84C9"},{n:"4K\u90ED\u8FBE",v:"4K\u90ED\u8FBE"},{n:"4K\u6F58\u957F\u6C5F",v:"4K\u6F58\u957F\u6C5F"},{n:"4K\u90ED\u51AC\u4E34",v:"4K\u90ED\u51AC\u4E34"},{n:"4K\u4E25\u987A\u5F00",v:"4K\u4E25\u987A\u5F00"},{n:"4K\u6587\u677E",v:"4K\u6587\u677E"},{n:"4K\u5F00\u5FC3\u9EBB\u82B1",v:"4K\u5F00\u5FC3\u9EBB\u82B1"},{n:"4K\u5C4C\u4E1D\u7537\u58EB",v:"4K\u5C4C\u4E1D\u7537\u58EB"},{n:"4K\u559C\u5267\u7EFC\u827A",v:"4K\u559C\u5267\u7EFC\u827A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u513F\u7AE5\u5C11\u513F:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u513F\u7AE5\u6559\u80B2",v:"\u513F\u7AE5\u6559\u80B2"},{n:"\u513F\u7AE5\u6B4C\u66F2",v:"\u513F\u7AE5\u6B4C\u66F2"},{n:"\u513F\u7AE5\u821E\u8E48",v:"\u513F\u7AE5\u821E\u8E48"},{n:"\u513F\u7AE5\u6210\u8BED\u6545\u4E8B",v:"\u513F\u7AE5\u6210\u8BED\u6545\u4E8B"},{n:"\u513F\u7AE5\u97F3\u4E50",v:"\u513F\u7AE5\u97F3\u4E50"},{n:"\u513F\u7AE5 MV",v:"\u513F\u7AE5 MV"},{n:"\u8D1D\u4E50\u864E",v:"\u8D1D\u4E50\u864E"},{n:"\u5B9D\u5B9D\u5DF4\u58EB",v:"\u5B9D\u5B9D\u5DF4\u58EB"},{n:"\u513F\u6B4C\u591A\u591A",v:"\u513F\u6B4C\u591A\u591A"},{n:"\u8D85\u7EA7\u5B9D\u8D1DJOJO",v:"\u8D85\u7EA7\u5B9D\u8D1DJOJO"},{n:"\u513F\u7AE5\u597D\u58F0\u97F3",v:"\u513F\u7AE5\u597D\u58F0\u97F3"},{n:"3-6\u5C81\u76CA\u667A\u52A8\u753B",v:"3-6\u5C81\u76CA\u667A\u52A8\u753B"},{n:"6-8\u5C81\u5C11\u513F\u9891\u9053",v:"6-8\u5C81\u5C11\u513F\u9891\u9053"},{n:"\u5B66\u800C\u601D\u8BFE\u7A0B",v:"\u5B66\u800C\u601D\u8BFE\u7A0B"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u513F\u7AE5",v:"4K\u513F\u7AE5"},{n:"4K\u513F\u7AE5\u6559\u80B2",v:"4K\u513F\u7AE5\u6559\u80B2"},{n:"4K\u513F\u7AE5\u6B4C\u66F2",v:"4K\u513F\u7AE5\u6B4C\u66F2"},{n:"4K\u513F\u7AE5\u821E\u8E48",v:"4K\u513F\u7AE5\u821E\u8E48"},{n:"4K\u513F\u7AE5\u6210\u8BED\u6545\u4E8B",v:"4K\u513F\u7AE5\u6210\u8BED\u6545\u4E8B"},{n:"4K\u513F\u7AE5\u97F3\u4E50",v:"4K\u513F\u7AE5\u97F3\u4E50"},{n:"4K\u513F\u7AE5 MV",v:"4K\u513F\u7AE5 MV"},{n:"4K\u8D1D\u4E50\u864E",v:"4K\u8D1D\u4E50\u864E"},{n:"4K\u5B9D\u5B9D\u5DF4\u58EB",v:"4K\u5B9D\u5B9D\u5DF4\u58EB"},{n:"4K\u513F\u6B4C\u591A\u591A",v:"4K\u513F\u6B4C\u591A\u591A"},{n:"4K\u8D85\u7EA7\u5B9D\u8D1DJOJO",v:"4K\u8D85\u7EA7\u5B9D\u8D1DJOJO"},{n:"4K\u513F\u7AE5\u597D\u58F0\u97F3",v:"4K\u513F\u7AE5\u597D\u58F0\u97F3"},{n:"4K 3-6\u5C81\u76CA\u667A\u52A8\u753B",v:"4K 3-6\u5C81\u76CA\u667A\u52A8\u753B"},{n:"4K 6-8\u5C81\u5C11\u513F\u9891\u9053",v:"4K 6-8\u5C81\u5C11\u513F\u9891\u9053"},{n:"4K\u5B66\u800C\u601D\u8BFE\u7A0B",v:"4K\u5B66\u800C\u601D\u8BFE\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u52A8\u7269\u4E16\u754C:[{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u52A8\u7269\u4E16\u754C",v:"\u52A8\u7269\u4E16\u754C"},{n:"4K\u52A8\u7269\u4E16\u754C",v:"4K\u52A8\u7269\u4E16\u754C"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u5531\u4F1A:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A",v:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A"},{n:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A",v:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A"},{n:"Beyond\u6F14\u5531\u4F1A",v:"Beyond\u6F14\u5531\u4F1A"},{n:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A",v:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A"},{n:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A",v:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A"},{n:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A",v:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A"},{n:"\u9ECE\u660E\u6F14\u5531\u4F1A",v:"\u9ECE\u660E\u6F14\u5531\u4F1A"},{n:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A",v:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A"},{n:"\u6734\u6811\u6F14\u5531\u4F1A",v:"\u6734\u6811\u6F14\u5531\u4F1A"},{n:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A",v:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A"},{n:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A",v:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A"},{n:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A",v:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A"},{n:"\u5B59\u6960\u6F14\u5531\u4F1A",v:"\u5B59\u6960\u6F14\u5531\u4F1A"},{n:"\u5F20\u5B87\u6F14\u5531\u4F1A",v:"\u5F20\u5B87\u6F14\u5531\u4F1A"},{n:"\u5468\u534E\u5065\u6F14\u5531\u4F1A",v:"\u5468\u534E\u5065\u6F14\u5531\u4F1A"},{n:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A",v:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A"},{n:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A",v:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A"},{n:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A",v:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A"},{n:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A",v:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A"},{n:"\u8BB8\u5D69\u6F14\u5531\u4F1A",v:"\u8BB8\u5D69\u6F14\u5531\u4F1A"},{n:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A",v:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A"},{n:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A",v:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A"},{n:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A",v:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A"},{n:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A",v:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A"},{n:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A",v:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A"},{n:"\u5218\u82E5\u82F1\u6F14\u5531\u4F1A",v:"\u5218\u82E5\u82F1\u6F14\u5531\u4F1A"},{n:"\u5468\u6DF1\u6F14\u5531\u4F1A",v:"\u5468\u6DF1\u6F14\u5531\u4F1A"},{n:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A",v:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A"},{n:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A",v:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A"},{n:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A",v:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A"},{n:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A",v:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A"},{n:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A",v:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A"},{n:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A",v:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A"},{n:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A",v:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A"},{n:"\u5F20\u9753\u9896\u6F14\u5531\u4F1A",v:"\u5F20\u9753\u9896\u6F14\u5531\u4F1A"},{n:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A",v:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A"},{n:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A",v:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A"},{n:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A",v:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A"},{n:"\u9676\u5586\u6F14\u5531\u4F1A",v:"\u9676\u5586\u6F14\u5531\u4F1A"},{n:"\u80E1\u590F\u6F14\u5531\u4F1A",v:"\u80E1\u590F\u6F14\u5531\u4F1A"},{n:"\u674E\u7389\u521A\u6F14\u5531\u4F1A",v:"\u674E\u7389\u521A\u6F14\u5531\u4F1A"},{n:"\u5F26\u5B50\u6F14\u5531\u4F1A",v:"\u5F26\u5B50\u6F14\u5531\u4F1A"},{n:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A",v:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A"},{n:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A",v:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A"},{n:"\u9E7F\u6657\u6F14\u5531\u4F1A",v:"\u9E7F\u6657\u6F14\u5531\u4F1A"},{n:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A",v:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A"},{n:"\u8BB8\u5DCD\u6F14\u5531\u4F1A",v:"\u8BB8\u5DCD\u6F14\u5531\u4F1A"},{n:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A",v:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A"},{n:"\u8D75\u96F7\u6F14\u5531\u4F1A",v:"\u8D75\u96F7\u6F14\u5531\u4F1A"},{n:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A",v:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A"},{n:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A",v:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A"},{n:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A",v:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A"},{n:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A",v:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A"},{n:"SHE\u6F14\u5531\u4F1A",v:"SHE\u6F14\u5531\u4F1A"},{n:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A",v:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A"},{n:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A",v:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A"},{n:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A",v:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A"},{n:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A",v:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A"},{n:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A",v:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A"},{n:"\u674E\u5065\u6F14\u5531\u4F1A",v:"\u674E\u5065\u6F14\u5531\u4F1A"},{n:"\u534E\u6668\u5B87\u6F14\u5531\u4F1A",v:"\u534E\u6668\u5B87\u6F14\u5531\u4F1A"},{n:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A",v:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A"},{n:"\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A",v:"\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A"},{n:"TFBOYS\u6F14\u5531\u4F1A",v:"TFBOYS\u6F14\u5531\u4F1A"},{n:"\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A",v:"\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A"},{n:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A",v:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A"},{n:"\u738B\u6E90\u6F14\u5531\u4F1A",v:"\u738B\u6E90\u6F14\u5531\u4F1A"},{n:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A",v:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A"},{n:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A",v:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A"},{n:"\u5F20\u6770\u6F14\u5531\u4F1A",v:"\u5F20\u6770\u6F14\u5531\u4F1A"},{n:"\u738B\u83F2\u6F14\u5531\u4F1A",v:"\u738B\u83F2\u6F14\u5531\u4F1A"},{n:"\u4F0D\u4F70\u6F14\u5531\u4F1A",v:"\u4F0D\u4F70\u6F14\u5531\u4F1A"},{n:"\u5200\u90CE\u6F14\u5531\u4F1A",v:"\u5200\u90CE\u6F14\u5531\u4F1A"},{n:"\u8349\u8722\u6F14\u5531\u4F1A",v:"\u8349\u8722\u6F14\u5531\u4F1A"},{n:"\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A",v:"\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A"},{n:"\u6881\u9759\u8339\u6F14\u5531\u4F1A",v:"\u6881\u9759\u8339\u6F14\u5531\u4F1A"},{n:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A",v:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A"},{n:"\u8521\u5F90\u5764\u6F14\u5531\u4F1A",v:"\u8521\u5F90\u5764\u6F14\u5531\u4F1A"},{n:"\u5468\u6167\u654F\u6F14\u5531\u4F1A",v:"\u5468\u6167\u654F\u6F14\u5531\u4F1A"},{n:"\u674E\u5723\u6770\u6F14\u5531\u4F1A",v:"\u674E\u5723\u6770\u6F14\u5531\u4F1A"},{n:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A",v:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A"},{n:"\u8427\u656C\u817E\u6F14\u5531\u4F1A",v:"\u8427\u656C\u817E\u6F14\u5531\u4F1A"},{n:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A",v:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A"},{n:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A",v:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A"},{n:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A",v:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A"},{n:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A",v:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A"},{n:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A",v:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A"},{n:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A",v:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A"},{n:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A",v:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A"},{n:"\u738B\u5609\u5C14\u6F14\u5531\u4F1A",v:"\u738B\u5609\u5C14\u6F14\u5531\u4F1A"},{n:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A",v:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A"},{n:"\u5F20\u656C\u8F69\u6F14\u5531\u4F1A",v:"\u5F20\u656C\u8F69\u6F14\u5531\u4F1A"},{n:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A",v:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A"},{n:"\u963F\u675C\u6F14\u5531\u4F1A",v:"\u963F\u675C\u6F14\u5531\u4F1A"},{n:"\u90ED\u9759\u6F14\u5531\u4F1A",v:"\u90ED\u9759\u6F14\u5531\u4F1A"},{n:"\u5D14\u5065\u6F14\u5531\u4F1A",v:"\u5D14\u5065\u6F14\u5531\u4F1A"},{n:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A",v:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A"},{n:"\u6C6A\u5CF0\u6F14\u5531\u4F1A",v:"\u6C6A\u5CF0\u6F14\u5531\u4F1A"},{n:"\u90A3\u82F1\u6F14\u5531\u4F1A",v:"\u90A3\u82F1\u6F14\u5531\u4F1A"},{n:"\u6768\u5764\u6F14\u5531\u4F1A",v:"\u6768\u5764\u6F14\u5531\u4F1A"},{n:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A",v:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A"},{n:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A",v:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A"},{n:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A",v:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A"},{n:"\u97E9\u7EA2\u6F14\u5531\u4F1A",v:"\u97E9\u7EA2\u6F14\u5531\u4F1A"},{n:"\u9F50\u79E6\u6F14\u5531\u4F1A",v:"\u9F50\u79E6\u6F14\u5531\u4F1A"},{n:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A",v:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A"},{n:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A",v:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A"},{n:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A",v:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A"},{n:"\u4E01\u5F53\u6F14\u5531\u4F1A",v:"\u4E01\u5F53\u6F14\u5531\u4F1A"},{n:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A",v:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A"},{n:"\u674E\u739F\u6F14\u5531\u4F1A",v:"\u674E\u739F\u6F14\u5531\u4F1A"},{n:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A",v:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A"},{n:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A",v:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A"},{n:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A",v:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A"},{n:"\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A",v:"\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A"},{n:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A",v:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A"},{n:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A",v:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A"},{n:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A",v:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A"},{n:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A",v:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A"},{n:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A",v:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A"},{n:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A",v:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A"},{n:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A",v:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A"},{n:"\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"By2\u6F14\u5531\u4F1A",v:"By2\u6F14\u5531\u4F1A"},{n:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A",v:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A"},{n:"\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A",v:"\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A"},{n:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A",v:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A"},{n:"\u8D39\u7FD4\u6F14\u5531\u4F1A",v:"\u8D39\u7FD4\u6F14\u5531\u4F1A"},{n:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A",v:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A"},{n:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A",v:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A"},{n:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A",v:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A"},{n:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A",v:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A"},{n:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A",v:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A"},{n:"\u5149\u826F\u6F14\u5531\u4F1A",v:"\u5149\u826F\u6F14\u5531\u4F1A"},{n:"\u7530\u9707\u6F14\u5531\u4F1A",v:"\u7530\u9707\u6F14\u5531\u4F1A"},{n:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A",v:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A"},{n:"\u8C2D\u6676\u6F14\u5531\u4F1A",v:"\u8C2D\u6676\u6F14\u5531\u4F1A"},{n:"\u738B\u6770\u6F14\u5531\u4F1A",v:"\u738B\u6770\u6F14\u5531\u4F1A"},{n:"\u7FBD\u6CC9\u6F14\u5531\u4F1A",v:"\u7FBD\u6CC9\u6F14\u5531\u4F1A"},{n:"\u91D1\u6C60\u6F14\u5531\u4F1A",v:"\u91D1\u6C60\u6F14\u5531\u4F1A"},{n:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A",v:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A"},{n:"\u6234\u8343\u6F14\u5531\u4F1A",v:"\u6234\u8343\u6F14\u5531\u4F1A"},{n:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A",v:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A"},{n:"\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A",v:"\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A"},{n:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A",v:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A"},{n:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A",v:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A"},{n:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A",v:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A"},{n:"BIGBANG\u6F14\u5531\u4F1A",v:"BIGBANG\u6F14\u5531\u4F1A"},{n:"LadyGaga\u6F14\u5531\u4F1A",v:"LadyGaga\u6F14\u5531\u4F1A"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A"},{n:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A",v:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A"},{n:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A",v:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A"},{n:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A",v:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A"},{n:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A",v:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A"},{n:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u6F14\u5531\u4F1A",v:"4K\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6770\u4F26\u6F14\u5531\u4F1A",v:"4K\u5468\u6770\u4F26\u6F14\u5531\u4F1A"},{n:"4K\u9648\u5955\u8FC5\u6F14\u5531\u4F1A",v:"4K\u9648\u5955\u8FC5\u6F14\u5531\u4F1A"},{n:"4 KBeyond\u6F14\u5531\u4F1A",v:"4 KBeyond\u6F14\u5531\u4F1A"},{n:"4K\u5218\u5FB7\u534E\u6F14\u5531\u4F1A",v:"4K\u5218\u5FB7\u534E\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A",v:"4K\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A",v:"4K\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A"},{n:"4K\u9ECE\u660E\u6F14\u5531\u4F1A",v:"4K\u9ECE\u660E\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5B97\u76DB\u6F14\u5531\u4F1A",v:"4K\u674E\u5B97\u76DB\u6F14\u5531\u4F1A"},{n:"4K\u9093\u4E3D\u541B\u6F14\u5531\u4F1A",v:"4K\u9093\u4E3D\u541B\u6F14\u5531\u4F1A"},{n:"4K\u6734\u6811\u6F14\u5531\u4F1A",v:"4K\u6734\u6811\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5B50\u7965\u6F14\u5531\u4F1A",v:"4K\u6797\u5B50\u7965\u6F14\u5531\u4F1A"},{n:"4K\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A",v:"4K\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A",v:"4K\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A"},{n:"4K\u5B59\u6960\u6F14\u5531\u4F1A",v:"4K\u5B59\u6960\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u5B87\u6F14\u5531\u4F1A",v:"4K\u5F20\u5B87\u6F14\u5531\u4F1A"},{n:"4K\u5468\u534E\u5065\u6F14\u5531\u4F1A",v:"4K\u5468\u534E\u5065\u6F14\u5531\u4F1A"},{n:"4K\u8521\u4F9D\u6797\u6F14\u5531\u4F1A",v:"4K\u8521\u4F9D\u6797\u6F14\u5531\u4F1A"},{n:"4K\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A",v:"4K\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A"},{n:"4K\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A",v:"4K\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A"},{n:"4K\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A",v:"4K\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A"},{n:"4K\u8BB8\u5D69\u6F14\u5531\u4F1A",v:"4K\u8BB8\u5D69\u6F14\u5531\u4F1A"},{n:"4K\u6234\u4F69\u59AE\u6F14\u5531\u4F1A",v:"4K\u6234\u4F69\u59AE\u6F14\u5531\u4F1A"},{n:"4K\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A",v:"4K\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A",v:"4K\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A"},{n:"4K\u8521\u5065\u96C5\u6F14\u5531\u4F1A",v:"4K\u8521\u5065\u96C5\u6F14\u5531\u4F1A"},{n:"4K\u83AB\u6587\u851A\u6F14\u5531\u4F1A",v:"4K\u83AB\u6587\u851A\u6F14\u5531\u4F1A"},{n:"4K\u5218\u82E5\u82F1\u6F14\u5531\u4F1A",v:"4K\u5218\u82E5\u82F1\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6DF1\u6F14\u5531\u4F1A",v:"4K\u5468\u6DF1\u6F14\u5531\u4F1A"},{n:"4K\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A",v:"4K\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A"},{n:"4K\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A",v:"4K\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5B87\u6625\u6F14\u5531\u4F1A",v:"4K\u674E\u5B87\u6625\u6F14\u5531\u4F1A"},{n:"4K\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A",v:"4K\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A",v:"4K\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A"},{n:"4K\u80E1\u5F66\u658C\u6F14\u5531\u4F1A",v:"4K\u80E1\u5F66\u658C\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5343\u5B05\u6F14\u5531\u4F1A",v:"4K\u6768\u5343\u5B05\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u9753\u9896\u6F14\u5531\u4F1A",v:"4K\u5F20\u9753\u9896\u6F14\u5531\u4F1A"},{n:"4K\u674E\u8363\u6D69\u6F14\u5531\u4F1A",v:"4K\u674E\u8363\u6D69\u6F14\u5531\u4F1A"},{n:"4K\u6768\u4E1E\u7433\u6F14\u5531\u4F1A",v:"4K\u6768\u4E1E\u7433\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A",v:"4K\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A"},{n:"4K\u9676\u5586\u6F14\u5531\u4F1A",v:"4K\u9676\u5586\u6F14\u5531\u4F1A"},{n:"4K\u80E1\u590F\u6F14\u5531\u4F1A",v:"4K\u80E1\u590F\u6F14\u5531\u4F1A"},{n:"4K\u674E\u7389\u521A\u6F14\u5531\u4F1A",v:"4K\u674E\u7389\u521A\u6F14\u5531\u4F1A"},{n:"4K\u5F26\u5B50\u6F14\u5531\u4F1A",v:"4K\u5F26\u5B50\u6F14\u5531\u4F1A"},{n:"4K\u9648\u5C0F\u6625\u6F14\u5531\u4F1A",v:"4K\u9648\u5C0F\u6625\u6F14\u5531\u4F1A"},{n:"4K\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A",v:"4K\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A"},{n:"4K\u9E7F\u6657\u6F14\u5531\u4F1A",v:"4K\u9E7F\u6657\u6F14\u5531\u4F1A"},{n:"4K\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A",v:"4K\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A"},{n:"4K\u8BB8\u5DCD\u6F14\u5531\u4F1A",v:"4K\u8BB8\u5DCD\u6F14\u5531\u4F1A"},{n:"4K\u6797\u4FCA\u6770\u6F14\u5531\u4F1A",v:"4K\u6797\u4FCA\u6770\u6F14\u5531\u4F1A"},{n:"4K\u8D75\u96F7\u6F14\u5531\u4F1A",v:"4K\u8D75\u96F7\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A",v:"4K\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A"},{n:"4K\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A",v:"4K\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A"},{n:"4K\u5BB9\u7956\u513F\u6F14\u5531\u4F1A",v:"4K\u5BB9\u7956\u513F\u6F14\u5531\u4F1A"},{n:"4K\u5468\u4F20\u96C4\u6F14\u5531\u4F1A",v:"4K\u5468\u4F20\u96C4\u6F14\u5531\u4F1A"},{n:"4K SHE\u6F14\u5531\u4F1A",v:"4K SHE\u6F14\u5531\u4F1A"},{n:"4K\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A",v:"4K\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A"},{n:"4K\u4E94\u6708\u5929\u6F14\u5531\u4F1A",v:"4K\u4E94\u6708\u5929\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u56FD\u8363\u6F14\u5531\u4F1A",v:"4K\u5F20\u56FD\u8363\u6F14\u5531\u4F1A"},{n:"4K\u6885\u8273\u82B3\u6F14\u5531\u4F1A",v:"4K\u6885\u8273\u82B3\u6F14\u5531\u4F1A"},{n:"4K\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A",v:"4K\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5065\u6F14\u5531\u4F1A",v:"4K\u674E\u5065\u6F14\u5531\u4F1A"},{n:"4K\u534E\u6668\u5B87\u6F14\u5531\u4F1A",v:"4K\u534E\u6668\u5B87\u6F14\u5531\u4F1A"},{n:"4K\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A",v:"4K\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A"},{n:"4K\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A",v:"4K\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A"},{n:"4K TFBOYS\u6F14\u5531\u4F1A",v:"4K TFBOYS\u6F14\u5531\u4F1A"},{n:"4K\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A",v:"4K\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A"},{n:"4K\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A",v:"4K\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A"},{n:"4K\u738B\u6E90\u6F14\u5531\u4F1A",v:"4K\u738B\u6E90\u6F14\u5531\u4F1A"},{n:"4K\u7530\u99A5\u7504\u6F14\u5531\u4F1A",v:"4K\u7530\u99A5\u7504\u6F14\u5531\u4F1A"},{n:"4K\u5C0F\u864E\u961F\u6F14\u5531\u4F1A",v:"4K\u5C0F\u864E\u961F\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u6770\u6F14\u5531\u4F1A",v:"4K\u5F20\u6770\u6F14\u5531\u4F1A"},{n:"4K\u738B\u83F2\u6F14\u5531\u4F1A",v:"4K\u738B\u83F2\u6F14\u5531\u4F1A"},{n:"4K\u4F0D\u4F70\u6F14\u5531\u4F1A",v:"4K\u4F0D\u4F70\u6F14\u5531\u4F1A"},{n:"4K\u5200\u90CE\u6F14\u5531\u4F1A",v:"4K\u5200\u90CE\u6F14\u5531\u4F1A"},{n:"4K\u8349\u8722\u6F14\u5531\u4F1A",v:"4K\u8349\u8722\u6F14\u5531\u4F1A"},{n:"4K\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A",v:"4K\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A"},{n:"4K\u6881\u9759\u8339\u6F14\u5531\u4F1A",v:"4K\u6881\u9759\u8339\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5BA5\u5609\u6F14\u5531\u4F1A",v:"4K\u6797\u5BA5\u5609\u6F14\u5531\u4F1A"},{n:"4K\u8521\u5F90\u5764\u6F14\u5531\u4F1A",v:"4K\u8521\u5F90\u5764\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6167\u654F\u6F14\u5531\u4F1A",v:"4K\u5468\u6167\u654F\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5723\u6770\u6F14\u5531\u4F1A",v:"4K\u674E\u5723\u6770\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A",v:"4K\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A"},{n:"4K\u8427\u656C\u817E\u6F14\u5531\u4F1A",v:"4K\u8427\u656C\u817E\u6F14\u5531\u4F1A"},{n:"4K\u5468\u7B14\u7545\u6F14\u5531\u4F1A",v:"4K\u5468\u7B14\u7545\u6F14\u5531\u4F1A"},{n:"4K\u7126\u8FC8\u5947\u6F14\u5531\u4F1A",v:"4K\u7126\u8FC8\u5947\u6F14\u5531\u4F1A"},{n:"4K\u5C24\u957F\u9756\u6F14\u5531\u4F1A",v:"4K\u5C24\u957F\u9756\u6F14\u5531\u4F1A"},{n:"4K\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A",v:"4K\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A",v:"4K\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A"},{n:"4K\u9648\u6167\u5A34\u6F14\u5531\u4F1A",v:"4K\u9648\u6167\u5A34\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u827A\u5174\u6F14\u5531\u4F1A",v:"4K\u5F20\u827A\u5174\u6F14\u5531\u4F1A"},{n:"4K\u738B\u5609\u5C14\u6F14\u5531\u4F1A",v:"4K\u738B\u5609\u5C14\u6F14\u5531\u4F1A"},{n:"4K\u5218\u5BAA\u534E\u6F14\u5531\u4F1A",v:"4K\u5218\u5BAA\u534E\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u656C\u8F69\u6F14\u5531\u4F1A",v:"4K\u5F20\u656C\u8F69\u6F14\u5531\u4F1A"},{n:"4K\u674E\u514B\u52E4\u6F14\u5531\u4F1A",v:"4K\u674E\u514B\u52E4\u6F14\u5531\u4F1A"},{n:"4K\u963F\u675C\u6F14\u5531\u4F1A",v:"4K\u963F\u675C\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u9759\u6F14\u5531\u4F1A",v:"4K\u90ED\u9759\u6F14\u5531\u4F1A"},{n:"4K\u5D14\u5065\u6F14\u5531\u4F1A",v:"4K\u5D14\u5065\u6F14\u5531\u4F1A"},{n:"4K\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A",v:"4K\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A"},{n:"4K\u6C6A\u5CF0\u6F14\u5531\u4F1A",v:"4K\u6C6A\u5CF0\u6F14\u5531\u4F1A"},{n:"4K\u90A3\u82F1\u6F14\u5531\u4F1A",v:"4K\u90A3\u82F1\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5764\u6F14\u5531\u4F1A",v:"4K\u6768\u5764\u6F14\u5531\u4F1A"},{n:"4K\u53F6\u5029\u6587\u6F14\u5531\u4F1A",v:"4K\u53F6\u5029\u6587\u6F14\u5531\u4F1A"},{n:"4K\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A",v:"4K\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A",v:"4K\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A"},{n:"4K\u97E9\u7EA2\u6F14\u5531\u4F1A",v:"4K\u97E9\u7EA2\u6F14\u5531\u4F1A"},{n:"4K\u9F50\u79E6\u6F14\u5531\u4F1A",v:"4K\u9F50\u79E6\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u96E8\u751F\u6F14\u5531\u4F1A",v:"4K\u5F20\u96E8\u751F\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A",v:"4K\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A",v:"4K\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A"},{n:"4K\u4E01\u5F53\u6F14\u5531\u4F1A",v:"4K\u4E01\u5F53\u6F14\u5531\u4F1A"},{n:"4K\u90D1\u667A\u5316\u6F14\u5531\u4F1A",v:"4K\u90D1\u667A\u5316\u6F14\u5531\u4F1A"},{n:"4K\u674E\u739F\u6F14\u5531\u4F1A",v:"4K\u674E\u739F\u6F14\u5531\u4F1A"},{n:"4K\u8C22\u9706\u950B\u6F14\u5531\u4F1A",v:"4K\u8C22\u9706\u950B\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A",v:"4K\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A"},{n:"4K\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A",v:"4K\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A"},{n:"4K\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A",v:"4K\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A"},{n:"4K\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A",v:"4K\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A"},{n:"4K\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A",v:"4K\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A"},{n:"4K\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A",v:"4K\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A"},{n:"4K\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A",v:"4K\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A"},{n:"4K\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A",v:"4K\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A"},{n:"4K\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A",v:"4K\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A"},{n:"4K\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A",v:"4K\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A"},{n:"4K\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K By2\u6F14\u5531\u4F1A",v:"4K By2\u6F14\u5531\u4F1A"},{n:"4K\u90C1\u53EF\u552F\u6F14\u5531\u4F1A",v:"4K\u90C1\u53EF\u552F\u6F14\u5531\u4F1A"},{n:"4K\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A",v:"4K\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A"},{n:"4K\u8D39\u7389\u6E05\u6F14\u5531\u4F1A",v:"4K\u8D39\u7389\u6E05\u6F14\u5531\u4F1A"},{n:"4K\u8D39\u7FD4\u6F14\u5531\u4F1A",v:"4K\u8D39\u7FD4\u6F14\u5531\u4F1A"},{n:"4K\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A",v:"4K\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A",v:"4K\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A"},{n:"4K\u65B9\u5927\u540C\u6F14\u5531\u4F1A",v:"4K\u65B9\u5927\u540C\u6F14\u5531\u4F1A"},{n:"4K\u5434\u514B\u7FA4\u6F14\u5531\u4F1A",v:"4K\u5434\u514B\u7FA4\u6F14\u5531\u4F1A"},{n:"4K\u7F57\u5927\u4F51\u6F14\u5531\u4F1A",v:"4K\u7F57\u5927\u4F51\u6F14\u5531\u4F1A"},{n:"4K\u5149\u826F\u6F14\u5531\u4F1A",v:"4K\u5149\u826F\u6F14\u5531\u4F1A"},{n:"4K\u7530\u9707\u6F14\u5531\u4F1A",v:"4K\u7530\u9707\u6F14\u5531\u4F1A"},{n:"4K\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A",v:"4K\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u6676\u6F14\u5531\u4F1A",v:"4K\u8C2D\u6676\u6F14\u5531\u4F1A"},{n:"4K\u738B\u6770\u6F14\u5531\u4F1A",v:"4K\u738B\u6770\u6F14\u5531\u4F1A"},{n:"4K\u7FBD\u6CC9\u6F14\u5531\u4F1A",v:"4K\u7FBD\u6CC9\u6F14\u5531\u4F1A"},{n:"4K\u91D1\u6C60\u6F14\u5531\u4F1A",v:"4K\u91D1\u6C60\u6F14\u5531\u4F1A"},{n:"4K\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A",v:"4K\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A"},{n:"4K\u6234\u8343\u6F14\u5531\u4F1A",v:"4K\u6234\u8343\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A",v:"4K\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A"},{n:"4K\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A",v:"4K\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A"},{n:"4K\u738B\u529B\u5B8F\u6F14\u5531\u4F1A",v:"4K\u738B\u529B\u5B8F\u6F14\u5531\u4F1A"},{n:"4K\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A",v:"4K\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A"},{n:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A",v:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A"},{n:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A",v:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A"},{n:"4K\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A",v:"4K\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A"},{n:"4K BIGBANG\u6F14\u5531\u4F1A",v:"4K BIGBANG\u6F14\u5531\u4F1A"},{n:"4K LadyGaga\u6F14\u5531\u4F1A",v:"4K LadyGaga\u6F14\u5531\u4F1A"},{n:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A",v:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A"},{n:"4K\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A",v:"4K\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A"},{n:"4K\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A",v:"4K\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A"},{n:"4K\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A",v:"4K\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A"},{n:"4K\u5E03\u5170\u59AE\u6F14\u5531\u4F1A",v:"4K\u5E03\u5170\u59AE\u6F14\u5531\u4F1A"},{n:"4K\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8BFE\u7A0B\u8F85\u5BFC:[{key:"tida",name:"\u82CF\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidb",name:"\u4EBA\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidc",name:"\u6CAA\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidd",name:"\u5317\u5E08\u5927\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98CE\u666F:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u98CE\u666F",v:"\u98CE\u666F"},{n:"\u6FB3\u95E8\u98CE\u666F",v:"\u6FB3\u95E8\u98CE\u666F"},{n:"\u5B89\u5FBD\u98CE\u666F",v:"\u5B89\u5FBD\u98CE\u666F"},{n:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F",v:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F"},{n:"\u5317\u4EAC\u98CE\u666F",v:"\u5317\u4EAC\u98CE\u666F"},{n:"\u91CD\u5E86\u98CE\u666F",v:"\u91CD\u5E86\u98CE\u666F"},{n:"\u8349\u539F\u98CE\u666F",v:"\u8349\u539F\u98CE\u666F"},{n:"\u5927\u6D77\u98CE\u666F",v:"\u5927\u6D77\u98CE\u666F"},{n:"\u798F\u5EFA\u98CE\u666F",v:"\u798F\u5EFA\u98CE\u666F"},{n:"\u5E7F\u4E1C\u98CE\u666F",v:"\u5E7F\u4E1C\u98CE\u666F"},{n:"\u5E7F\u897F\u98CE\u666F",v:"\u5E7F\u897F\u98CE\u666F"},{n:"\u8D35\u5DDE\u98CE\u666F",v:"\u8D35\u5DDE\u98CE\u666F"},{n:"\u7518\u8083\u98CE\u666F",v:"\u7518\u8083\u98CE\u666F"},{n:"\u6D77\u5357\u98CE\u666F",v:"\u6D77\u5357\u98CE\u666F"},{n:"\u6CB3\u5317\u98CE\u666F",v:"\u6CB3\u5317\u98CE\u666F"},{n:"\u6CB3\u5357\u98CE\u666F",v:"\u6CB3\u5357\u98CE\u666F"},{n:"\u6E56\u5317\u98CE\u666F",v:"\u6E56\u5317\u98CE\u666F"},{n:"\u6E56\u5357\u98CE\u666F",v:"\u6E56\u5357\u98CE\u666F"},{n:"\u9ED1\u9F99\u6C5F\u98CE\u666F",v:"\u9ED1\u9F99\u6C5F\u98CE\u666F"},{n:"\u5409\u6797\u98CE\u666F",v:"\u5409\u6797\u98CE\u666F"},{n:"\u6C5F\u82CF\u98CE\u666F",v:"\u6C5F\u82CF\u98CE\u666F"},{n:"\u6C5F\u897F\u98CE\u666F",v:"\u6C5F\u897F\u98CE\u666F"},{n:"\u8FBD\u5B81\u98CE\u666F",v:"\u8FBD\u5B81\u98CE\u666F"},{n:"\u6C11\u5BBF\u98CE\u666F",v:"\u6C11\u5BBF\u98CE\u666F"},{n:"\u5185\u8499\u53E4\u98CE\u666F",v:"\u5185\u8499\u53E4\u98CE\u666F"},{n:"\u5B81\u590F\u98CE\u666F",v:"\u5B81\u590F\u98CE\u666F"},{n:"\u9752\u6D77\u98CE\u666F",v:"\u9752\u6D77\u98CE\u666F"},{n:"\u4E0A\u6D77\u98CE\u666F",v:"\u4E0A\u6D77\u98CE\u666F"},{n:"\u9655\u897F\u98CE\u666F",v:"\u9655\u897F\u98CE\u666F"},{n:"\u56DB\u5DDD\u98CE\u666F",v:"\u56DB\u5DDD\u98CE\u666F"},{n:"\u5C71\u897F\u98CE\u666F",v:"\u5C71\u897F\u98CE\u666F"},{n:"\u5C71\u4E1C\u98CE\u666F",v:"\u5C71\u4E1C\u98CE\u666F"},{n:"\u5929\u6D25\u98CE\u666F",v:"\u5929\u6D25\u98CE\u666F"},{n:"\u53F0\u6E7E\u98CE\u666F",v:"\u53F0\u6E7E\u98CE\u666F"},{n:"\u5929\u7A7A\u98CE\u666F",v:"\u5929\u7A7A\u98CE\u666F"},{n:"\u897F\u6E56\u98CE\u666F",v:"\u897F\u6E56\u98CE\u666F"},{n:"\u897F\u85CF\u98CE\u666F",v:"\u897F\u85CF\u98CE\u666F"},{n:"\u65B0\u7586\u98CE\u666F",v:"\u65B0\u7586\u98CE\u666F"},{n:"\u9999\u6E2F\u98CE\u666F",v:"\u9999\u6E2F\u98CE\u666F"},{n:"\u4E91\u5357\u98CE\u666F",v:"\u4E91\u5357\u98CE\u666F"},{n:"\u6D59\u6C5F\u98CE\u666F",v:"\u6D59\u6C5F\u98CE\u666F"},{n:"\u6CB3\u5357\u536B\u89C6\u56FD\u98CE",v:"\u6CB3\u5357\u536B\u89C6\u56FD\u98CE"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u98CE\u666F",v:"4K\u98CE\u666F"},{n:"4K\u6FB3\u95E8\u98CE\u666F",v:"4K\u6FB3\u95E8\u98CE\u666F"},{n:"4K\u5B89\u5FBD\u98CE\u666F",v:"4K\u5B89\u5FBD\u98CE\u666F"},{n:"4K\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F",v:"4K\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F"},{n:"4K\u5317\u4EAC\u98CE\u666F",v:"4K\u5317\u4EAC\u98CE\u666F"},{n:"4K\u91CD\u5E86\u98CE\u666F",v:"4K\u91CD\u5E86\u98CE\u666F"},{n:"4K\u8349\u539F\u98CE\u666F",v:"4K\u8349\u539F\u98CE\u666F"},{n:"4K\u5927\u6D77\u98CE\u666F",v:"4K\u5927\u6D77\u98CE\u666F"},{n:"4K\u798F\u5EFA\u98CE\u666F",v:"4K\u798F\u5EFA\u98CE\u666F"},{n:"4K\u5E7F\u4E1C\u98CE\u666F",v:"4K\u5E7F\u4E1C\u98CE\u666F"},{n:"4K\u5E7F\u897F\u98CE\u666F",v:"4K\u5E7F\u897F\u98CE\u666F"},{n:"4K\u8D35\u5DDE\u98CE\u666F",v:"4K\u8D35\u5DDE\u98CE\u666F"},{n:"4K\u7518\u8083\u98CE\u666F",v:"4K\u7518\u8083\u98CE\u666F"},{n:"4K\u6D77\u5357\u98CE\u666F",v:"4K\u6D77\u5357\u98CE\u666F"},{n:"4K\u6CB3\u5317\u98CE\u666F",v:"4K\u6CB3\u5317\u98CE\u666F"},{n:"4K\u6CB3\u5357\u98CE\u666F",v:"4K\u6CB3\u5357\u98CE\u666F"},{n:"4K\u6E56\u5317\u98CE\u666F",v:"4K\u6E56\u5317\u98CE\u666F"},{n:"4K\u6E56\u5357\u98CE\u666F",v:"4K\u6E56\u5357\u98CE\u666F"},{n:"4K\u9ED1\u9F99\u6C5F\u98CE\u666F",v:"4K\u9ED1\u9F99\u6C5F\u98CE\u666F"},{n:"4K\u5409\u6797\u98CE\u666F",v:"4K\u5409\u6797\u98CE\u666F"},{n:"4K\u6C5F\u82CF\u98CE\u666F",v:"4K\u6C5F\u82CF\u98CE\u666F"},{n:"4K\u6C5F\u897F\u98CE\u666F",v:"4K\u6C5F\u897F\u98CE\u666F"},{n:"4K\u8FBD\u5B81\u98CE\u666F",v:"4K\u8FBD\u5B81\u98CE\u666F"},{n:"4K\u6C11\u5BBF\u98CE\u666F",v:"4K\u6C11\u5BBF\u98CE\u666F"},{n:"4K\u5185\u8499\u53E4\u98CE\u666F",v:"4K\u5185\u8499\u53E4\u98CE\u666F"},{n:"4K\u5B81\u590F\u98CE\u666F",v:"4K\u5B81\u590F\u98CE\u666F"},{n:"4K\u9752\u6D77\u98CE\u666F",v:"4K\u9752\u6D77\u98CE\u666F"},{n:"4K\u4E0A\u6D77\u98CE\u666F",v:"4K\u4E0A\u6D77\u98CE\u666F"},{n:"4K\u9655\u897F\u98CE\u666F",v:"4K\u9655\u897F\u98CE\u666F"},{n:"4K\u56DB\u5DDD\u98CE\u666F",v:"4K\u56DB\u5DDD\u98CE\u666F"},{n:"4K\u5C71\u897F\u98CE\u666F",v:"4K\u5C71\u897F\u98CE\u666F"},{n:"4K\u5C71\u4E1C\u98CE\u666F",v:"4K\u5C71\u4E1C\u98CE\u666F"},{n:"4K\u5929\u6D25\u98CE\u666F",v:"4K\u5929\u6D25\u98CE\u666F"},{n:"4K\u53F0\u6E7E\u98CE\u666F",v:"4K\u53F0\u6E7E\u98CE\u666F"},{n:"4K\u5929\u7A7A\u98CE\u666F",v:"4K\u5929\u7A7A\u98CE\u666F"},{n:"4K\u897F\u6E56\u98CE\u666F",v:"4K\u897F\u6E56\u98CE\u666F"},{n:"4K\u897F\u85CF\u98CE\u666F",v:"4K\u897F\u85CF\u98CE\u666F"},{n:"4K\u65B0\u7586\u98CE\u666F",v:"4K\u65B0\u7586\u98CE\u666F"},{n:"4K\u9999\u6E2F\u98CE\u666F",v:"4K\u9999\u6E2F\u98CE\u666F"},{n:"4K\u4E91\u5357\u98CE\u666F",v:"4K\u4E91\u5357\u98CE\u666F"},{n:"4K\u6D59\u6C5F\u98CE\u666F",v:"4K\u6D59\u6C5F\u98CE\u666F"},{n:"4K\u6CB3\u5357\u536B\u89C6\u56FD\u98CE",v:"4K\u6CB3\u5357\u536B\u89C6\u56FD\u98CE"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}]},xVt=()=>[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8\u65F6\u957F",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}]});var RDe={};Ft(RDe,{default:()=>lW});async function XVt(e=null,{force:t=!1}={}){if(!e)return bc.hasCookie();let r=Date.now();return t||!bc.hasCookie()||r-LVt>ICn?(rW||(LVt=r,rW=(async()=>{try{let s=await JQ(e);return s&&bc.setCookie(s),bc.hasCookie()}finally{rW=null}})()),rW):bc.hasCookie()}async function Hw(e=null,{forceServerCookie:t=!1}={}){await XVt(e,{force:t}),!((bc.hasCookie()||fl.isValid())&&$w.isValid()&&mDe.isValid())&&(nW||(nW=(async()=>{try{!bc.hasCookie()&&!fl.isValid()&&await fl.refresh(),await Promise.all([JVt(),mDe.ensure()])}finally{nW=null}})()),await nW)}async function JVt(){if($w.isValid())return $w.getKey();try{let e="";bc.hasCookie()?e=bc.getCookie():(fl.isValid()||await fl.refresh(),e=fl.getCookie()||"");let r=(await ve.get("https://api.bilibili.com/x/web-interface/nav",{timeout:EDe,headers:{"User-Agent":I_,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",...e?{Cookie:e}:{}}})).data?.data?.wbi_img;if(r?.img_url&&r?.sub_url){let n=o=>o.split("/").pop().split(".")[0],s=n(r.img_url)+n(r.sub_url),a=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52].map(o=>s[o]||"").join("").slice(0,32);if(a)return $w.setKey(a),a}}catch(e){console.error("\u83B7\u53D6 mixinKey \u5931\u8D25:",e.message)}return"tkk"}async function oW(e){let t=await JVt(),r=Math.floor(Date.now()/1e3),n={...e,wts:r},s=Object.keys(n).sort().map(a=>`${encodeURIComponent(a)}=${encodeURIComponent(n[a])}`).join("&"),i=ADe.default.createHash("md5").update(s+t).digest("hex");return WVt.default.stringify({...n,w_rid:i})}async function vDe({includeBuvid:e=!1}={}){let t="";if(bc.hasCookie()?t=bc.getCookie():(fl.isValid()||await fl.refresh(),t=fl.getCookie()||""),e){let r=await mDe.ensure();if(r){let n=/(?:^|;\s*)buvid3=/.test(t),s=/(?:^|;\s*)buvid4=/.test(t),i=r.split(";").map(a=>a.trim()).filter(a=>a.startsWith("buvid3=")?!n:a.startsWith("buvid4=")?!s:!0);i.length&&(t=[t,i.join("; ")].filter(Boolean).join("; "))}}return t}async function ZVt(e=""){let t=encodeURIComponent(e||""),r=await vDe({includeBuvid:!0});return{headers:{"User-Agent":I_,Referer:`https://search.bilibili.com/all?keyword=${t}`,Origin:"https://search.bilibili.com",Accept:"application/json, text/plain, */*",...r?{Cookie:r}:{}}}}function cW(e){if(e==null||e==="")return 0;if(typeof e=="number")return Number.isFinite(e)?Math.max(0,e):0;if(typeof e!="string")return 0;let t=e.trim();if(!t)return 0;if(!t.includes(":"))return parseFloat(t)||0;let r=t.split(":");return r.length===2?(Number.parseInt(r[0],10)||0)*60+(parseFloat(r[1])||0):r.length===3?(Number.parseInt(r[0],10)||0)*3600+(Number.parseInt(r[1],10)||0)*60+(parseFloat(r[2])||0):0}function e7t(e){return!e||typeof e!="object"?"":e.bvid?e.bvid:e.bvid_str?e.bvid_str:e.aid?`av${e.aid}`:e.id?`av${e.id}`:""}function qCn(e={},t=0){let r=e.play??e.view??e.stat?.view??0,n=e.pubdate||e.created||e.ctime||0;return`${TDe(t)}|${n7t(r)}|${bDe(n)}`}function t7t(e,{encodeId:t=!0,meta:r={}}={}){let n=e7t(e);if(!n)return null;let s=cW(e.duration||e.length||0),i=r7t(e.pic||e.cover||e.first_frame||r.vod_pic),a=r.vod_remarks||qCn(e,s);return{vod_id:t?HCn(n,{vod_pic:i,vod_remarks:a||"\u65E0\u4FE1\u606F"}):n,vod_name:SDe(e.title||e.name||e.show_title),vod_pic:i,vod_remarks:a||"\u65E0\u4FE1\u606F",vod_time:bDe(e.pubdate||e.created||e.ctime),vod_author:e.author||e.owner?.name||e.upper?.name||"",vod_duration:s7t(s)}}function SDe(e){return String(e||"\u672A\u77E5\u6807\u9898").replace(MCn,"").replace(kCn,"").trim()||"\u672A\u77E5\u6807\u9898"}function Fw(e,t){if(!Array.isArray(e)||e.length===0)return null;let r=null,n=-1/0;for(let s of e){let i=t(s);i>n&&(r=s,n=i)}return r}function r7t(e){if(!e||typeof e!="string")return PCn;let t=e.trim();return t.startsWith("//")?t="https:"+t:t.startsWith("http://")&&(t=t.replace("http://","https://")),t.startsWith("https://")||(t="https://"+t),t}function n7t(e){if(!e&&e!==0)return"0";let t=Number.parseInt(e,10);return!Number.isFinite(t)||t<0?"0":t>=1e8?`${(t/1e8).toFixed(1)}\u4EBF`:t>=1e4?`${(t/1e4).toFixed(1)}\u4E07`:`${t}`}function s7t(e){if(!e&&e!==0)return"";let t=cW(e),r=Math.floor(t/3600),n=Math.floor(t%3600/60),s=Math.floor(t%60);return r>0?`${r}:${n.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`:`${n.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`}function TDe(e){if(!e&&e!==0)return"";let t=cW(e),r=Math.floor(t/3600),n=Math.floor(t%3600/60),s=Math.floor(t%60);return r>0?`${r}\u65F6${n}\u5206${s}\u79D2`:n>0?`${n}\u5206${s}\u79D2`:`${s}\u79D2`}function bDe(e){if(!e)return"";let t=new Date(e*1e3),n=Math.floor((new Date-t)/1e3);return n<60?"\u521A\u521A":n<3600?`${Math.floor(n/60)}\u5206\u949F\u524D`:n<86400?`${Math.floor(n/3600)}\u5C0F\u65F6\u524D`:n<2592e3?`${Math.floor(n/86400)}\u5929\u524D`:`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function HCn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function VCn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function i7t(e,t,r="auto",n="auto"){let s=e?.bvid||e?.bvid_str||"",i=e?.aid||e?.avid||"";return`${s}_${i}_${t}_${r}_${n}`}function jCn(e){let t=SDe(e?.title||e?.part||e?.name),r=TDe(e?.duration||e?.length||0);return r?`${t}(${r})`:t}function KCn(e,t="auto",r="auto"){let n=e?.cid||e?.pages?.[0]?.cid||"auto",s=e?.bvid||e?.bvid_str||"",i=e?.aid||e?.avid||"";return!s||!i?"":i7t({bvid:s,aid:i},n,t,r)}function a7t(e,t="auto",r="auto",n=""){if(!Array.isArray(e))return"";let s=String(n||""),i=new Set;return e.map(a=>{let o=a?.bvid||a?.bvid_str||"";if(!o||o===s||i.has(o))return"";i.add(o);let c=KCn(a,t,r);return c?`${jCn(a)}$${c}`:""}).filter(Boolean).join("#")}async function GCn(e,t="auto",r="auto"){try{let n=await qw.get(`https://api.bilibili.com/x/web-interface/archive/related?bvid=${encodeURIComponent(e)}`);return a7t(n.data?.data||[],t,r,e)}catch(n){return console.warn("\u83B7\u53D6\u76F8\u5173\u89C6\u9891\u5931\u8D25:",n.message),""}}async function zCn(e,t="auto",r="auto",n=""){try{if(!e)return"";let s=await oW({mid:e,pn:1,ps:30,tid:0,index:0,keyword:"",special_type:"",order:"pubdate",platform:"web",web_location:"333.1387",order_avoided:!0}),a=(await qw.get(`https://api.bilibili.com/x/space/wbi/arc/search?${s}`,{headers:{Referer:`https://space.bilibili.com/${e}/video`,Origin:"https://space.bilibili.com"}})).data?.data?.list?.vlist||[];return a7t(a,t,r,n)}catch(s){return console.warn("\u83B7\u53D6UP\u4E3B\u6295\u7A3F\u89C6\u9891\u5931\u8D25:",s.message),""}}async function o7t({bvid:e="",aid:t=""}={}){!e&&typeof t=="string"&&t.startsWith("av")&&(t=t.slice(2));let r=e?`bvid:${e}`:`aid:${t}`,n=tW.get(r);if(n)return n;let i=await oW(e?{bvid:e}:{aid:t}),o=(await qw.get(`https://api.bilibili.com/x/web-interface/view?${i}`)).data?.data;if(!o)throw new Jl("\u89C6\u9891\u4FE1\u606F\u83B7\u53D6\u5931\u8D25");return o.bvid&&tW.set(`bvid:${o.bvid}`,o),o.aid&&tW.set(`aid:${o.aid}`,o),tW.set(r,o)}async function Uw({aid:e,cid:t,qn:r=80,fnval:n=4048,force:s=!1}){let i=`${e}:${t}:${r}:${n}`,a=s?null:PVt.get(i);if(a)return a;let c=(await qw.get(`https://api.bilibili.com/x/player/playurl?avid=${e}&cid=${t}&qn=${r}&fnval=${n}&fourk=1`)).data?.data||null;return c&&PVt.set(i,c),c}function cDe(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:`${t}://${e?.hostname||"127.0.0.1"}${e?.port?":"+e.port:""}`}function uDe(e){return e?.server&&typeof e.server.prefix=="string"?e.server.prefix.replace(/\/+$/,""):"/spider/bili_all/3"}function YCn(e=""){return/miraplay|mira|tvbox/i.test(String(e||""))}function c7t(e={}){let t=Number.parseFloat(e.duration||0)*1e3,r=t>0?t+xCn:NVt;return Math.min(wCn,Math.max(NVt,r))}function u7t(){let e=Date.now();for(let[t,r]of S_.entries())(!r||r.expires<=e)&&S_.delete(t)}function QCn(){if(S_.size<=OVt)return;let e=[...S_.entries()].sort((t,r)=>(t[1]?.lastAccess||t[1]?.created||0)-(r[1]?.lastAccess||r[1]?.created||0));for(;S_.size>OVt&&e.length;){let[t]=e.shift();S_.delete(t)}}function WCn(){return ADe.default.randomBytes(16).toString("hex")}function XCn(e={}){u7t();let t=WCn(),r=Date.now(),n=c7t(e);return S_.set(t,{payload:e,created:r,lastAccess:r,expires:r+n,ttl:n}),QCn(),t}function l7t(e,t={}){u7t();let r=S_.get(String(e||""));if(!r?.payload)return null;if(t.touch!==!1){let n=Date.now();r.lastAccess=n,r.expires=n+(r.ttl||c7t(r.payload))}return r.payload}function d7t(e,t=""){let r=String(e||"").slice(0,8);console.warn(`[bili_all] MPD media payload missing route=${t} token=${r} cacheSize=${S_.size}`)}async function JCn(e){try{let t=await RVt(e);if(t&&t.trim()){let r=JSON.parse(t.trim());if(Array.isArray(r)&&r.length)if(typeof r[0]=="string"){let n=r.filter(s=>s&&typeof s=="string").map(s=>({type_id:s,type_name:s}));if(n.length)return n}else{let n=r.filter(s=>s&&typeof s.type_id=="string");if(n.length)return n}}}catch{}return null}async function ZCn(e){try{let t=await CVt(e);if(t&&t.trim()){let r=JSON.parse(t.trim());if(typeof r=="object"&&r!==null)return r}}catch{}return null}function exn(e){if(!e||e<=0)return"PT0S";let t=Math.floor(e/3600),r=Math.floor(e%3600/60),n=e%60,s="PT";return t>0&&(s+=`${t}H`),r>0&&(s+=`${r}M`),s+=`${n.toFixed(3)}S`,s}function _De(e){if(!e)return null;let t,r;if(Array.isArray(e))t=Number.parseInt(e[0],10),r=Number.parseInt(e[1],10);else if(typeof e=="object")t=Number.parseInt(e.start??e.startByte??e.from??e.begin,10),r=Number.parseInt(e.end??e.endByte??e.to??e.finish,10);else{let n=String(e).match(/(\d+)\s*[-,]\s*(\d+)/);n&&(t=Number.parseInt(n[1],10),r=Number.parseInt(n[2],10))}return!Number.isFinite(t)||!Number.isFinite(r)||t<0||r/g,">")}function kVt(e){return String(e||"").replace(/&/g,"&").replace(//g,">")}function txn(e){return String(e||"").replace(/\]\]>/g,"]]]]>")}function BVt(e){return txn(e).replace(/&/g,"&")}function Vw(e){return e&&typeof e=="object"?e:{}}function Zl(e={}){return e=Vw(e),e.url||e.base_url||e.baseUrl||e.backup_url?.[0]||e.backupUrl?.[0]||""}function Lb(e={},t="video/mp4"){return e=Vw(e),e.mime_type||e.mimeType||e.mime||t}function g3(e={},t=""){return e=Vw(e),e.codecs||e.codec||t}function rxn(e={},t=0){e=Vw(e);let r=Number.parseInt(e.bandwidth||e.bandwidth_kbps||e.bandwidthKbps||0,10);return Number.isFinite(r)&&r>0?r:t}function uW(e={}){e=Vw(e);let t=e.segment_base||e.segmentBase||{},r=_De(t.initialization||t.initialization_range||t.init_range||t.initRange||e.initialization||e.initialization_range||e.init_range),n=_De(t.index_range||t.indexRange||t.sidx_range||t.sidxRange||e.index_range||e.indexRange);return{initRange:r,indexRange:n}}function nxn(e,t){let r=Buffer.isBuffer(e)?e:Buffer.from(e||[]),n=_De(t);if(!n||r.length<12||r.toString("ascii",4,8)!=="sidx")return null;let s=r[8],i=12;if(i+8>r.length)return null;i+=4;let a=r.readUInt32BE(i);i+=4;let o=0;if(s===0){if(i+8>r.length)return null;i+=4,o=r.readUInt32BE(i),i+=4}else if(s===1){if(i+16>r.length)return null;i+=8,o=Number(r.readBigUInt64BE(i)),i+=8}else return null;if(!Number.isFinite(a)||a<=0||!Number.isFinite(o)||o<0||i+4>r.length)return null;i+=2;let c=r.readUInt16BE(i);i+=2;let u=[],l=n.end+1+o,d=0;for(let f=0;f>>31,m=h&2147483647,_=r.readUInt32BE(i+4);if(i+=12,p!==0||m<=0||_<=0)return null;let g=l,y=g+m-1;u.push({range:{start:g,end:y},duration:_}),d+=_,l=y+1}return u.length?{timescale:a,totalDuration:d,totalSeconds:d/a,segments:u}:null}function IDe(e={}){return e=Vw(e),e.segment_list||e.segmentList||e._segmentList||null}function sxn(e={},t=""){let r=IDe(e),{initRange:n}=uW(e);if(!r?.segments?.length||!r.timescale||!n)return"";let s=[`${t}`];s.push(`${t} `),s.push(`${t} `);let i=0,a=0,o=()=>{if(!a)return;let c=a>1?` r="${a-1}"`:"";s.push(`${t} `),i=0,a=0};for(let c of r.segments){let u=Number.parseInt(c?.duration,10);if(!Number.isFinite(u)||u<=0){o();continue}u===i?a+=1:(o(),i=u,a=1)}o(),s.push(`${t} `);for(let c of r.segments)c?.range&&s.push(`${t} `);return s.push(`${t}`),s.join(` -`)}function UVt(e={},t=""){let r=sxn(e,t);if(r)return r;let{initRange:n,indexRange:s}=uW(e);if(!n&&!s)return"";let i=s;if(n){let a=i?` indexRange="${b_(i)}"`:"";return`${t}`}return`${t}`}function FVt(e={},t=""){let{initRange:r,indexRange:n}=uW(e);if(!r&&!n)return"";let s=n;if(r){let i=s?` indexRange="${b_(s)}"`:"";return`${t}`}return`${t}`}function aW(e,t={},r=0){let n=[`id="${T_(e)}"`,`bandwidth="${rxn(t,r)}"`],s=Number.parseInt(t.width||0,10),i=Number.parseInt(t.height||0,10);return Number.isFinite(s)&&s>0&&n.push(`width="${s}"`),Number.isFinite(i)&&i>0&&n.push(`height="${i}"`),n.join(" ")}function Mb(e={},t="",r="video"){let n=Zl(e)||t||"";return n?{url:n,id:e.id||e.quality||"",bandwidth:e.bandwidth||0,width:e.width||0,height:e.height||0,mime_type:Lb(e,r==="audio"?"audio/mp4":"video/mp4"),codecs:g3(e,r==="audio"?"mp4a.40.2":"avc1.640028"),segment_base:e.segment_base||e.segmentBase||null,segment_list:IDe(e)}:null}function $Vt(e,t="",r="video"){if(e){for(let n of[e,(()=>{try{return decodeURIComponent(e)}catch{return""}})()])if(n)try{let s=JSON.parse(n);if(s&&typeof s=="object")return Mb(s,t,r)}catch{}}return Mb({},t,r)}function qVt(e,t,r,n){let s=String(t||"").replace(/\/+$/,"")||"/spider/bili_all/3";return`${e}${s}/proxy/media/${encodeURIComponent(r)}/${encodeURIComponent(n)}`}function HVt(e,t,r,n,s,i,a={}){let o=Mb(n,"","video"),c=s?Mb(s,"","audio"):null,u=XCn({mode:r,duration:Number.parseFloat(i||0)||0,aid:String(a.aid||""),cid:String(a.cid||""),qn:String(a.qn||""),videoTrack:o,audioTrack:c}),l=String(t||"").replace(/\/+$/,"")||"/spider/bili_all/3";return`${e}${l}/proxy?do=mpd&mode=${encodeURIComponent(r)}&token=${encodeURIComponent(u)}`}function ixn(e,t=null,r="PT0S"){let n=Zl(e),s=t?Zl(t):"",i=Lb(e,"video/mp4"),a=t?Lb(t,"audio/mp4"):"",o=g3(e,"avc1.640028"),c=t?g3(t,"mp4a.40.2"):"",u=['',''," ",` `,` `,` `,UVt(e," ")," "," "];return t&&s&&u.push(` `,` `,` `,UVt(t," ")," "," "),u.push(" ",""),u.join(` -`)}function axn(e,t=null,r="PT0S"){let n=r&&r!=="PT0S"?r:"PT0S",s=Zl(e),i=t?Zl(t):"",a=Lb(e,"video/mp4"),o=t?Lb(t,"audio/mp4"):"",c=g3(e,"avc1.640028"),u=t?g3(t,"mp4a.40.2"):"",l=[` `,` `,` ${kVt(s)}`,FVt(e," ")," "," "].join(` -`),d=i?[` `,` `,` ${kVt(i)}`,FVt(t," ")," "," "].join(` -`):"";return['','',' '," ",l," ",d," ",""].join(` -`)}async function lDe(e,t={}){let{do:r,video_url:n,audio_url:s,video_track:i,audio_track:a,mode:o,duration:c,token:u}=e;if(r==="mpd"){if(!o||o!=="mira"&&o!=="dash")return[400,"text/plain",Buffer.from('Missing or invalid mode parameter. Must be "mira" or "dash"')];try{let l,d,f=parseFloat(c)||0,h=u?l7t(u):null;if(u&&!h?.videoTrack)return d7t(u,"mpd"),[404,"text/plain",Buffer.from("MPD media payload expired or missing")];if(h?.videoTrack){f=parseFloat(h.duration||c)||0;let _=t.serverUrl||"",g=t.routePrefix||"";l={...h.videoTrack,url:_?qVt(_,g,u,"video"):Zl(h.videoTrack)},d=h.audioTrack?{...h.audioTrack,url:_?qVt(_,g,u,"audio"):Zl(h.audioTrack)}:null}else{let _=n?decodeURIComponent(n):"",g=s?decodeURIComponent(s):"";l=$Vt(i,_,"video"),d=a||g?$Vt(a,g,"audio"):null}let p=exn(f),m=o==="mira"?ixn(l,d,p):axn(l,d,p);return[200,"application/dash+xml",Buffer.from(m)]}catch(l){return console.error("proxy/mpd error:",l),[500,"text/plain",Buffer.from("MPD build error: "+l.message)]}}return[501,"text/plain",Buffer.from("Unsupported proxy action")]}function zVt(e=[],t={},r=null){let n=Array.isArray(e)?e:[];if(!n.length)return null;let s=String(t?.id||t?.quality||""),i=String(t?.codecs||t?.codec||""),a=String(t?.mime_type||t?.mimeType||t?.mime||""),o=n.find(l=>String(l?.id||l?.quality||"")===s&&(!i||String(l?.codecs||l?.codec||"")===i));if(o)return o;let c=n.find(l=>String(l?.id||l?.quality||"")===s);return c||n.find(l=>!(a&&String(l?.mime_type||l?.mimeType||l?.mime||"")!==a||i&&String(l?.codecs||l?.codec||"")!==i))||(r?r(n):n[0])}async function oxn(e={}){if(!e.aid||!e.cid||!e.qn)return!1;let r=(await Uw({aid:e.aid,cid:e.cid,qn:e.qn,fnval:4048,force:!0}))?.dash;if(!r)return!1;let n=zVt(r.video,e.videoTrack,i=>Fw(i,a=>Number(a?.id)||0)),s=e.audioTrack?zVt(r.audio,e.audioTrack,i=>Fw(i,a=>Number(a?.bandwidth)||0)):null;return Zl(n)?(e.videoTrack=Mb(n,"","video"),e.audioTrack=s?Mb(s,"","audio"):null,!0):!1}async function cxn(e,t=""){let r=Zn(),n=await vDe({includeBuvid:!0}).catch(()=>""),s={"User-Agent":I_,Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Encoding":"identity",...t?{Range:t}:{},...n?{Cookie:n}:{}};return ve.get(e,{headers:s,responseType:"arraybuffer",timeout:EDe,httpAgent:r.httpAgent,httpsAgent:r.httpsAgent,validateStatus:()=>!0,maxContentLength:2*1024*1024,maxBodyLength:2*1024*1024})}async function sW(e={}){let t=Mb(e,"",Lb(e).startsWith("audio/")?"audio":"video"),r=Zl(t),{indexRange:n}=uW(t);if(!r||!n||IDe(t)?.segments?.length)return t;try{let s=await cxn(r,`bytes=${b_(n)}`);if(s.status!==200&&s.status!==206)return t;let i=nxn(Buffer.from(s.data||[]),n);return i?.segments?.length?{...t,segment_list:i}:t}catch(s){return console.warn("[bili_all] \u89E3\u6790 sidx \u5206\u6BB5\u5931\u8D25:",s.message),t}}async function YVt(e,t,r=""){let n=Zn(),s=await vDe({includeBuvid:!0}).catch(()=>""),i={"User-Agent":I_,Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Encoding":"identity",...r?{Range:r}:{},...s?{Cookie:s}:{}};return ve.get(e,{headers:i,responseType:"stream",timeout:0,httpAgent:n.httpAgent,httpsAgent:n.httpsAgent,validateStatus:()=>!0,maxContentLength:1/0,maxBodyLength:1/0})}async function uxn(e,t){let r=e?.params?.token,n=String(e?.params?.track||"").trim(),s=l7t(r);if(!s?.videoTrack)return d7t(r,`media:${n||"unknown"}`),t.code(404).header("Content-Type","text/plain; charset=utf-8").send("MPD media payload expired or missing");let i=n==="audio"?s.audioTrack:n==="video"?s.videoTrack:null,a=Zl(i);if(!i||!a)return t.code(400).header("Content-Type","text/plain; charset=utf-8").send("Missing media track");let o=String(e?.headers?.range||"").trim(),c=await YVt(a,n,o);[403,410,416].includes(c.status)&&(console.warn(`[bili_all] refreshing expired media track=${n||"unknown"} status=${c.status}`),c.data?.destroy&&c.data.destroy(),await oxn(s).catch(()=>!1)&&(i=n==="audio"?s.audioTrack:s.videoTrack,a=Zl(i),c=await YVt(a,n,o)));let u=c.data;if(u?.destroy){let l=()=>{u.destroyed||u.destroy()};e?.raw?.on?.("close",l),t?.raw?.on?.("close",l)}return t.code(c.status||502).header("Content-Type",c.headers?.["content-type"]||Lb(i,n==="audio"?"audio/mp4":"video/mp4")).header("Accept-Ranges",c.headers?.["accept-ranges"]||"bytes").header("Cache-Control","no-cache").header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),c.headers?.["content-range"]&&t.header("Content-Range",c.headers["content-range"]),c.headers?.["content-length"]&&t.header("Content-Length",c.headers["content-length"]),t.send(u)}function lxn(e={},t={},r=0){let n=Number.parseInt(e?.id||e?.quality||0,10);if(Number.isFinite(n)&&n>0)return n;let s=Number.parseInt(t?.quality||0,10);if(Number.isFinite(s)&&s>0)return s;let i=Number.parseInt(r||0,10);return Number.isFinite(i)&&i>0?i:0}var ADe,WVt,SCn,TCn,bCn,ICn,RCn,CCn,NVt,xCn,wCn,OVt,NCn,EDe,OCn,Np,I_,DCn,PCn,LCn,MCn,kCn,DVt,BCn,UCn,Jl,dDe,bc,fDe,fl,hDe,$w,pDe,mDe,iW,tW,PVt,S_,yDe,LVt,rW,FCn,MVt,$Cn,gDe,qw,nW,VVt,jVt,KVt,GVt,QVt,lW,dW=ae(()=>{Pr();ADe=Ne(require("crypto"),1),WVt=Ne(require("querystring"),1);Hr();ZQ();wVt();ws();SCn=36e5,TCn=3e5,bCn=864e5,ICn=3e4,RCn=6e4,CCn=45e3,NVt=2*60*60*1e3,xCn=30*60*1e3,wCn=12*60*60*1e3,OVt=200,NCn=3,EDe=15e3,OCn=2,Np=20,I_="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",DCn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",PCn="https://i0.hdslb.com/bfs/archive/404.png",LCn=new Set(["totalrank","click","pubdate","dm","stow"]),MCn=/<[^>]*>/g,kCn=/&[a-z]+;/g,DVt={129:"HDR Vivid",127:"8K\u8D85\u6E05",126:"\u675C\u6BD4\u89C6\u754C",125:"HDR\u771F\u5F69",120:"4K\u8D85\u6E05",116:"1080P\u9AD8\u5E27",112:"1080P\u9AD8\u7801",80:"1080P",64:"720P",32:"480P",16:"360P"},BCn=[129,127,126,125,120,116,112,80],UCn=new Set(BCn),Jl=class extends Error{constructor(t,r="UNKNOWN_ERROR"){super(t),this.name="BiliAPIError",this.code=r}},dDe=class{constructor(){this.cookie="",this.isSet=!1}setCookie(t){return t&&t.trim()?(this.cookie=t.trim(),this.isSet=!0,!0):!1}clearCookie(){this.cookie="",this.isSet=!1}getCookie(){return this.cookie}hasCookie(){return this.isSet&&this.cookie.length>10}getCsrf(){let t=this.cookie.match(/bili_jct=([^;]+)/);return t?t[1]:""}},bc=new dDe,fDe=class{constructor(){this.cache="",this.last=0}isValid(){return this.cache&&Date.now()-this.lastn.split(";")[0].trim()).join("; "),this.last=Date.now(),this.cache}catch{}return""}getCookie(){return this.cache}},fl=new fDe,hDe=class{constructor(){this.key="",this.exp=0}isValid(){return this.key&&Date.now()-this.expthis.ttlMs?(this.map.delete(t),null):r.value:null}set(t,r){if(!t)return r;if(this.map.size>=this.max){let n=this.map.keys().next().value;n&&this.map.delete(n)}return this.map.set(t,{value:r,time:Date.now()}),r}},tW=new iW(RCn,100),PVt=new iW(CCn,200),S_=new Map,yDe="",LVt=0,rW=null,FCn=e=>{let t=Zn(),r=ve.create({timeout:1e4,httpAgent:t.httpAgent,httpsAgent:t.httpsAgent,headers:{"User-Agent":I_,Cookie:e,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com"}});return r.interceptors.response.use(n=>{if(n.data?.code!==void 0&&n.data.code!==0)throw new Error(n.data.message||`API\u9519\u8BEF: ${n.data.code}`);return n},n=>{throw n}),r},MVt=(e={})=>{let t=e.level??e.level_info?.current_level,r=Number(t),n=e.vip?.status??e.vipStatus,s=Number(n),i=Number(e.vip?.type??e.vipType??0),a=n!=null?s>0:i>0;return{nickname:e.name||e.uname||"",face:e.face||"",level:Number.isFinite(r)?r:0,vip:a?"\u5927\u4F1A\u5458":"\u975E\u5927\u4F1A\u5458",mid:e.mid,coins:Number(e.coins??e.money??0)||0,following:Number(e.following??0)||0,follower:Number(e.follower??0)||0}},$Cn=async e=>{let t=null;try{let n=(await e.get("https://api.bilibili.com/x/space/myinfo")).data?.data;if(n?.mid)return MVt(n)}catch(r){t=r}try{let n=(await e.get("https://api.bilibili.com/x/web-interface/nav")).data?.data;return n?.isLogin&&n?.mid?MVt(n):null}catch(r){throw t||r}},gDe=class{constructor(){let t=Zn();this.instance=ve.create({timeout:EDe,maxRedirects:5,httpAgent:t.httpAgent,httpsAgent:t.httpsAgent}),this.instance.interceptors.request.use(async r=>{r.headers&&r.headers["User-Agent"]&&(yDe=r.headers["User-Agent"]),r.headers={"User-Agent":I_,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Connection:"keep-alive",...r.headers};let n="";return bc.hasCookie()?n=bc.getCookie():(fl.isValid()||await fl.refresh(),fl.getCookie()&&(n=fl.getCookie())),n&&(r.headers.Cookie=n),r}),this.instance.interceptors.response.use(r=>{if(r.data?.code!==void 0&&r.data.code!==0)throw new Jl(r.data.message||`API\u9519\u8BEF: ${r.data.code}`,r.data.code);return r},async r=>{throw r.response?.status===412&&$w.clear(),r})}async request(t,r=OCn){try{return await this.instance(t)}catch(n){if(r>0&&!n.response)return await zt(1e3),this.request(t,r-1);throw n}}get(t,r={}){return this.request({...r,method:"GET",url:t})}post(t,r={},n={}){return this.request({...n,method:"POST",url:t,data:r})}},qw=new gDe,nW=null;VVt=async e=>{try{await Hw(e);let r=await JCn(e)||eW,n=await ZCn(e),s={};return r.forEach(i=>{let a=i.type_id;n&&n[a]?s[a]=n[a]:oDe[a]?s[a]=oDe[a]:s[a]=xVt()}),{class:r.map(i=>({type_id:i.type_id,type_name:i.type_name})),filters:s}}catch(t){return console.error("\u83B7\u53D6\u9996\u9875\u5931\u8D25:",t),{class:eW.map(r=>({type_id:r.type_id,type_name:r.type_name})),filters:{}}}},jVt=async({id:e,page:t=1,filters:r={},ext:n={},server:s=null})=>{let i=Math.max(1,Number.parseInt(t,10)||1),a={};if(r&&typeof r=="object"&&Object.keys(r).length>0)a=r;else if(n&&typeof n=="string")try{let d=Buffer.from(n,"base64").toString();a=JSON.parse(d)}catch{try{a=JSON.parse(n)}catch{}}let o=e,c=[];for(let d in a)d!=="order"&&d!=="duration"&&a[d]&&a[d]&&a[d].trim()!==""&&c.push(a[d].trim());c.length>0&&(c.length===1?o=c[0]:(c=[...new Set(c)],o=`(${c.join(" OR ")})`));let u="totalrank";a.order&&LCn.has(a.order)&&(u=a.order);let l=0;a.duration&&(l=Number.parseInt(a.duration,10)||0);try{await Hw(s);let h=`https://api.bilibili.com/x/web-interface/wbi/search/type?${await oW({keyword:o,page:i,search_type:"video",order:u,duration:l,tids:0,page_size:Np})}`,m=(await qw.get(h,await ZVt(o))).data.data;if(!m)return console.error("\u641C\u7D22\u8FD4\u56DE\u6570\u636E\u4E3A\u7A7A"),{page:i,pagecount:1,total:0,limit:Np,list:[]};let _=m.result||[],g=m.numResults||0,y=Math.ceil(g/Np)||1,A=_.map(E=>t7t(E)).filter(E=>E?.vod_id);return{page:i,pagecount:y,total:g,limit:Np,list:A}}catch(d){return console.error("\u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",d.message,d.stack),{page:i,pagecount:1,total:0,limit:Np,list:[]}}},KVt=async({id:e,headers:t={},server:r=null})=>{let n=VCn(e);e=n.id;try{await Hw(r);let s=e.startsWith("BV"),i=await o7t(s?{bvid:e}:{aid:e.replace("av","")}),o=(i.pages||[]).map(g=>({title:SDe(g.part||`P${g.page}`),cid:g.cid})).map(g=>`${g.title}$${i7t(i,g.cid)}`).join("#"),c=["\u54D4\u54E9"],u=[o],[l,d]=await Promise.all([GCn(i.bvid,"auto","auto"),zCn(i.owner?.mid,"auto","auto",i.bvid)]);l&&(c.push("\u76F8\u5173\u89C6\u9891"),u.push(l)),d&&(c.push("UP\u4E3B\u89C6\u9891"),u.push(d));let f=c.join("$$$"),h=u.join("$$$"),p=TDe(i.duration),m=n7t(i.stat?.view||0),_=bDe(i.pubdate);return{list:[{vod_id:i.bvid,vod_name:i.title,vod_pic:n.meta?.vod_pic||r7t(i.pic),vod_content:i.desc||"\u6682\u65E0\u7B80\u4ECB",vod_year:new Date(i.pubdate*1e3).getFullYear().toString(),vod_area:"\u4E2D\u56FD",vod_actor:i.owner?.name||"",vod_director:i.owner?.name||"",vod_tag:i.tname||"",vod_remarks:`${p}|${m}|${_}`,vod_play_from:f,vod_play_url:h,vod_duration:s7t(i.duration)}]}}catch(s){throw console.error("\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25:",s),new Jl("\u83B7\u53D6\u89C6\u9891\u8BE6\u60C5\u5931\u8D25: "+s.message)}},GVt=async({wd:e,page:t=1,server:r=null})=>{try{if(await Hw(r),!e||e.trim()==="")return{page:1,pagecount:1,total:0,list:[]};let n=e.trim(),s=Math.max(1,Number.parseInt(t,10)||1),a=Array.from({length:3},(p,m)=>s+m),o=await Promise.all(a.map(async p=>{let m=await oW({keyword:n,page:p,search_type:"video",order:"totalrank",duration:0,tids:0,page_size:Np});return(await qw.get(`https://api.bilibili.com/x/web-interface/wbi/search/type?${m}`,await ZVt(n))).data?.data})),c=o.find(Boolean);if(!c)return{page:s,pagecount:1,total:0,list:[]};let u=new Set,l=[];for(let p of o)if(p?.result)for(let m of p.result){let _=e7t(m);!_||u.has(_)||(u.add(_),l.push(m))}let d=l.map(p=>t7t(p)).filter(p=>p?.vod_name&&p.vod_name.toLowerCase().includes(n.toLowerCase())),f=c.numResults||d.length,h=Math.max(1,Math.ceil(f/Np));return{page:s,pagecount:h,total:f,limit:Np,list:d}}catch(n){return console.error("\u641C\u7D22\u5931\u8D25:",n.message,n.stack),{page:Math.max(1,Number.parseInt(t,10)||1),pagecount:1,total:0,limit:Np,list:[]}}};QVt=async({id:e,flag:t,serverUrl:r,routePrefix:n="/spider/bili_all/3",headers:s={},server:i=null})=>{try{await Hw(i);let a=e.split("_");if(a.length!==5)throw new Jl("\u53C2\u6570\u9519\u8BEF");let[o,c,u,l,d]=a,f=await o7t({bvid:o,aid:c});if(c=String(f.aid||c),u==="auto"&&(u=String(f.cid||f.pages?.[0]?.cid||""),!u))throw new Jl("\u83B7\u53D6\u89C6\u9891CID\u5931\u8D25");let p=f.pages?.find(g=>String(g.cid)===String(u))?.duration,m=cW(p??f.duration),_=`https://comment.bilibili.com/${u}.xml`;if(l==="auto"||d==="auto"){let g=s["user-agent"]||yDe||"",y=YCn(g)?"mira":"dash",A=[80];try{A=(await Uw({aid:c,cid:u,qn:127,fnval:4048}))?.accept_quality||A}catch{}let E=A.filter(I=>UCn.has(I)),v=(E.length?E:[80]).slice(0,NCn),b=[];for(let I of v)try{let T=await Uw({aid:c,cid:u,qn:I,fnval:4048}),x=T?.dash;if(!x)continue;let w=Fw(x.video,$=>Number($?.id)||0),D=Fw(x.audio,$=>Number($?.bandwidth)||0);if(!Zl(w))continue;let[L,U]=y==="mira"?await Promise.all([sW(w),D?sW(D):null]):[w,D],G=HVt(r,n,y,L,U,m,{aid:c,cid:u,qn:lxn(w,T,I)});b.push(DVt[I]||`${I}P`,G)}catch(T){console.warn(`\u83B7\u53D6 ${DVt[I]||I} \u753B\u8D28\u5931\u8D25:`,T.message)}try{let I=v.includes(80)?80:v[v.length-1],x=(await Uw({aid:c,cid:u,qn:I,fnval:1}))?.durl?.[0];x?.url&&b.push("MP4",x.url)}catch(I){console.warn("\u83B7\u53D6 MP4 \u753B\u8D28\u5931\u8D25:",I.message)}if(!b.length)throw new Jl("\u64AD\u653E\u94FE\u63A5\u83B7\u53D6\u5931\u8D25");return{parse:0,url:b,header:{"User-Agent":I_,Referer:"https://www.bilibili.com/"},subt:_,extra:{format:"application/dash+xml",duration:m,danmaku:_}}}if(d==="mp4"){let y=(await Uw({aid:c,cid:u,qn:l,fnval:1}))?.durl?.[0];if(!y)throw new Jl("MP4 \u94FE\u63A5\u83B7\u53D6\u5931\u8D25");return{parse:0,url:y.url,header:{"User-Agent":I_,Referer:"https://www.bilibili.com"},subt:_,extra:{danmaku:_}}}if(d==="mira"||d==="dash"){let y=(await Uw({aid:c,cid:u,qn:l,fnval:4048}))?.dash;if(!y)throw new Jl("\u65E0\u53EF\u7528\u7684 DASH \u6570\u636E");let A=Fw(y.video,x=>Number(x?.id)||0),E=Fw(y.audio,x=>Number(x?.bandwidth)||0);if(!A)throw new Jl("\u6CA1\u6709\u89C6\u9891\u6D41");if(!Zl(A))throw new Jl("\u89C6\u9891\u6D41URL\u83B7\u53D6\u5931\u8D25");let[b,I]=d==="mira"?await Promise.all([sW(A),E?sW(E):null]):[A,E];return{parse:0,url:HVt(r,n,d,b,I,m,{aid:c,cid:u,qn:l}),header:{Referer:"https://www.bilibili.com/"},extra:{format:"application/dash+xml",duration:m,danmaku:_},subt:_}}throw new Jl("\u4E0D\u652F\u6301\u7684\u64AD\u653E\u7C7B\u578B")}catch(a){throw console.error("\u64AD\u653E\u9519\u8BEF:",a),a}},lW={meta:{key:"bili_all",name:"\u{1F3AC} \u54D4\u54E9",type:3,searchable:1,quickSearch:1,filterable:1,version:"1.0.3",author:"BiliCatpaw",description:"\u54D4\u54E9\u5927\u5168 - \u4F18\u5316\u7248\uFF0C\u652F\u6301\u641C\u7D22\u529F\u80FD\uFF0C\u9ED8\u8BA4\u5206\u7C7B\u4E3A\u7A7A\uFF0C\u4ECE\u524D\u7AEF\u52A0\u8F7D\uFF0C\u652F\u6301\u591A\u7EBF\u8DEF\u64AD\u653E\uFF0C\u65E0\u9700Cookie",homepage:"https://www.bilibili.com"},api:async e=>{e.post("/set-cookie",async(t,r)=>{let{cookie:n}=t.body||{},s=bc.setCookie(n);if(s&&t.server?.db)try{await t.server.db.push("/bilibili_all/cookie",n.trim())}catch{}return r.send({code:s?0:400,message:s?"\u8BBE\u7F6E\u6210\u529F":"\u8BBE\u7F6E\u5931\u8D25"})}),e.post("/clear-cookie",async(t,r)=>{if(bc.clearCookie(),t.server?.db)try{await t.server.db.push("/bilibili_all/cookie","")}catch{}return r.send({code:0,message:"Cookie\u5DF2\u6E05\u9664"})}),e.get("/cookie-status",async(t,r)=>(await XVt(t.server),r.send({code:0,data:{user_cookie_set:bc.hasCookie(),system_cookie_valid:fl.isValid(),mixin_key_valid:$w.isValid(),current_user_agent:yDe||"\u672A\u68C0\u6D4B\u5230"}}))),e.post("/init",async(t,r)=>{try{return await Hw(t.server),r.send({code:0,message:"\u54D4\u54E9\u5927\u5168\u521D\u59CB\u5316\u5B8C\u6210"})}catch(n){return console.error("\u521D\u59CB\u5316\u5931\u8D25:",n),r.send({code:500,message:"\u521D\u59CB\u5316\u5931\u8D25: "+n.message})}}),e.post("/validate-cookie",async(t,r)=>{try{let{cookie:n}=t.body||{};if(!n||n.trim().length<10)return r.send({code:400,message:"Cookie\u683C\u5F0F\u65E0\u6548",valid:!1});let s=n.trim(),i=FCn(s);try{let a=await $Cn(i);return a?r.send({code:0,message:"Cookie\u9A8C\u8BC1\u6210\u529F",valid:!0,data:a}):r.send({code:401,message:"Cookie\u65E0\u6548\uFF0C\u672A\u767B\u5F55",valid:!1})}catch(a){return console.error("API\u9A8C\u8BC1\u5931\u8D25:",a.message),r.send({code:500,message:"\u9A8C\u8BC1\u5931\u8D25: "+a.message,valid:!1})}}catch(n){return console.error("\u9A8C\u8BC1Cookie\u5931\u8D25:",n),r.send({code:500,message:"\u9A8C\u8BC1\u5931\u8D25: "+n.message,valid:!1})}}),e.get("/user-info",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{});return n?.user_info?r.send({code:0,data:n.user_info}):r.send({code:401,message:"\u6682\u65E0\u5DF2\u4FDD\u5B58\u7684\u8D26\u53F7\u4FE1\u606F\uFF0C\u8BF7\u5148\u4FDD\u5B58\u57FA\u7840\u914D\u7F6E",data:null})}catch(n){return console.error("\u83B7\u53D6\u7528\u6237\u4FE1\u606F\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u5931\u8D25: "+n.message,data:null})}}),e.post("/home",async(t,r)=>{try{let n=await VVt(t.server);return r.send(n)}catch(n){return console.error("\u83B7\u53D6\u9996\u9875\u5931\u8D25:",n),r.send({class:eW.map(s=>({type_id:s.type_id,type_name:s.type_name})),filters:{}})}}),e.post("/category",async(t,r)=>{try{let n=await jVt({...t.body||{},server:t.server});return r.send(n)}catch(n){return console.error("\u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",n),r.send({page:t.body?.page||1,pagecount:1,total:0,limit:Np,list:[]})}}),e.post("/detail",async(t,r)=>{try{let n=await KVt({...t.body,headers:t.headers,server:t.server});return r.send(n)}catch(n){return console.error("\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",n),r.send({list:[]})}}),e.post("/search",async(t,r)=>{try{let n=await GVt({...t.body||{},server:t.server});return r.send(n)}catch(n){return console.error("\u641C\u7D22\u5931\u8D25:",n),r.send({page:t.body?.page||1,pagecount:1,total:0,list:[],message:"\u641C\u7D22\u5931\u8D25: "+n.message})}}),e.post("/play",async(t,r)=>{try{let n=cDe(t),s=await QVt({...t.body,serverUrl:n,routePrefix:uDe(t),headers:t.headers,server:t.server});return r.send(s)}catch(n){return console.error("\u64AD\u653E\u9519\u8BEF:",n),r.send({code:500,message:n.message||"\u64AD\u653E\u5931\u8D25",parse:0,url:"",header:{}})}}),e.get("/proxy",async(t,r)=>{try{let[n,s,i]=await lDe(t.query,{serverUrl:cDe(t),routePrefix:uDe(t)});return r.code(n).header("Content-Type",s).send(i)}catch(n){return console.error("proxy error:",n),r.code(500).send("Internal Server Error")}}),e.post("/proxy",async(t,r)=>{try{let[n,s,i]=await lDe(t.body||{},{serverUrl:cDe(t),routePrefix:uDe(t)});return r.code(n).header("Content-Type",s).send(i)}catch(n){return console.error("proxy error:",n),r.code(500).send("Internal Server Error")}}),e.get("/proxy/media/:token/:track",async(t,r)=>{try{return await uxn(t,r)}catch(n){return console.error("media proxy error:",n),r.code(500).send("Internal Server Error")}}),e.options("*",async(t,r)=>{r.header("Access-Control-Allow-Origin","*").header("Access-Control-Allow-Methods","GET,POST,OPTIONS").header("Access-Control-Allow-Headers","Content-Type").send()})},home:VVt,category:jVt,detail:KVt,search:GVt,play:QVt,proxy:lDe}});var N7t={};Ft(N7t,{default:()=>Txn});function pxn(e={}){let t=e.keyword??e.value??e.id??"";return{v:String(t),n:String(e.name||e.title||t)}}function mxn(e={}){let t=String(e.field??"2"),r=String(e.sort??"0");return{v:`${t}:${r}`,n:String(e.name||e.title||t)}}async function gxn(e){let t=String(e||"1"),r=p7t.get(t);if(r)return r;let n=await jw("https://api.bilibili.com/pgc/season/index/condition",{params:{season_type:t,type:1},referer:"https://www.bilibili.com/anime/index/",useCookie:!1});if(n?.code!==0)throw new Error(n?.message||`PGC \u6761\u4EF6\u63A5\u53E3\u9519\u8BEF ${n?.code}`);let s=n?.data||{};return p7t.set(t,s),s}async function _xn(e){let t=await gxn(e),r=(t.filter||[]).filter(n=>n?.field&&Array.isArray(n.values)).map(n=>({key:String(n.field),name:String(n.name||n.field),value:n.values.map(pxn)}));return Array.isArray(t.order)&&t.order.length&&r.unshift({key:"order",name:"\u6392\u5E8F",value:t.order.map(mxn)}),r}async function Axn(){let e=await Promise.all(b7t.map(async t=>{try{return[t.type_id,await _xn(t.type_id)]}catch(r){return console.warn(`[bili_official] \u83B7\u53D6\u7B5B\u9009\u6761\u4EF6\u5931\u8D25 type=${t.type_id}:`,r.message),[t.type_id,[]]}}));return Object.fromEntries(e)}function I7t(e){let t=String(e||"").trim();return t?t.startsWith("//")?"https:"+t:t.startsWith("http://")?t.replace("http://","https://"):t:""}function R7t(e){return String(e||"").replace(/<[^>]*>/g,"").replace(/&[a-z]+;/g,"").trim()}function fW(e){return R7t(e)||"\u672A\u77E5\u6807\u9898"}function C7t(e,t={}){let r=String(e||"").trim();return r?JSON.stringify({source:ODe,id:r,meta:t&&typeof t=="object"?t:{}}):""}function x7t(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);if(r&&typeof r=="object"){let n=String(r.source||"").trim(),s=String(r.id||r.season_id||"").trim();if((!n||n===ODe)&&s)return{id:s,meta:r.meta&&typeof r.meta=="object"?r.meta:{}}}}catch{}return{id:t,meta:{}}}function Exn(e){let t=Math.max(0,Math.floor(Number(e||0)/1e3)),r=Math.floor(t/3600),n=Math.floor(t%3600/60),s=t%60;return r>0?`${String(r).padStart(2,"0")}:${String(n).padStart(2,"0")}:${String(s).padStart(2,"0")}`:`${String(n).padStart(2,"0")}:${String(s).padStart(2,"0")}`}async function yxn(e){try{let t=await JQ(e);return t?String(t).trim():""}catch{return""}}async function vxn(){if(_3&&Date.now()-h7t=400||e.data?.code!==0)return _3;let t=e.data?.data||{},r=t.b_3||t.buvid3||"",n=t.b_4||t.buvid4||"",s=[];r&&s.push(`buvid3=${r}`),n&&s.push(`buvid4=${n}`),s.length&&(_3=s.join("; "),h7t=Date.now())}catch{}return _3}function Sxn(e="",t=""){let r=new Set,n=[];for(let s of[e,t])String(s||"").split(";").map(i=>i.trim()).filter(Boolean).forEach(i=>{let a=i.split("=")[0];!a||r.has(a)||(r.add(a),n.push(i))});return n.join("; ")}async function jw(e,{server:t=null,params:r={},referer:n="https://www.bilibili.com/",origin:s=null,useCookie:i=!0,includeBuvid:a=!1}={}){let o=Sxn(i?await yxn(t):"",a?await vxn():""),c=await T7t.get(e,{params:r,headers:{Referer:n,...s?{Origin:s}:{},...o?{Cookie:o}:{}}});if(c.status>=400)throw new Error(`HTTP ${c.status}`);return c.data}function w7t(e={}){let t=String(e.season_id||e.media_id||"").trim();if(!t)return null;let r=I7t(e.cover||e.media_cover||e.eps?.[0]?.cover||""),n=R7t(e.index_show||e.pubtime||e.desc||e.styles||"")||"\u65E0\u4FE1\u606F";return{vod_id:C7t(t,{vod_pic:r,vod_remarks:n}),vod_name:fW(e.title||e.season_title),vod_pic:r,vod_remarks:n}}function hW(e){return e?.body?e.body:e||{}}function m7t(e,t={}){return t.serverUrl?t.serverUrl:e?.protocol&&e?.hostname?`${e.protocol}://${e.hostname}${e.port?":"+e.port:""}`:dxn}async function g7t(e={}){return{class:b7t,filters:await Axn()}}async function _7t(e={}){return{list:(await NDe({...e,body:{tid:"1",pg:1,extend:{}}})).list||[]}}async function NDe(e={}){let t=hW(e),r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"1").trim(),s=t.extend||t.ext||t.filters||{},i={order:2,sort:0,pagesize:wDe,type:1,st:n,season_type:n,page:r};for(let[a,o]of Object.entries(s||{})){let c=String(o??"").trim();if(!(!c||c==="-1"))if(a==="order"){let[u,l="0"]=c.split(":");u&&(i.order=u),i.sort=l}else i[a]=c}try{let a=await jw("https://api.bilibili.com/pgc/season/index/result",{server:e.server,params:i,referer:"https://www.bilibili.com/anime/index/"});if(a?.code!==0)throw new Error(a?.message||`PGC \u5206\u7C7B\u63A5\u53E3\u9519\u8BEF ${a?.code}`);let o=(a?.data?.list||[]).map(w7t).filter(Boolean);return{page:r,pagecount:a?.data?.has_next===1?r+1:r,limit:o.length,total:o.length,list:o}}catch(a){return console.error("[bili_official] \u5206\u7C7B\u5931\u8D25:",a.message),{page:r,pagecount:1,limit:0,total:0,list:[]}}}async function A7t(e={}){let t=hW(e),r=Array.isArray(t.id)?t.id[0]:t.id||t.ids||t.vod_id||"",n=x7t(r),s=String(n.id||"").split(",")[0].trim();if(!s)return{list:[]};let i=await jw("https://api.bilibili.com/pgc/view/web/season",{server:e.server,params:{season_id:s},referer:`https://www.bilibili.com/bangumi/play/ss${s}`});if(i?.code!==0||!i?.result)throw new Error(i?.message||"PGC \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38");let a=i.result,o=n.meta?.vod_pic||I7t(a.cover||""),c=n.meta?.vod_remarks||a.new_ep?.desc||a.index_show||"",u=(a.episodes||[]).map(l=>{let d=fW(l.share_copy||l.long_title||l.title||`\u7B2C${l.title||""}\u96C6`).replace(/#/g,"-").replace(/\$/g,"*");return`[${Exn(l.duration)}]/${d}$pgc_${l.id}_${l.cid}`}).filter(Boolean).join("#");return{list:[{vod_id:C7t(s,{vod_pic:o,vod_remarks:c}),vod_name:fW(a.title),vod_pic:o,type_name:a.share_sub_title||a.type_name||"",vod_actor:String(a.actors||"").replace(/\n/g,"\uFF0C"),vod_content:fW(a.evaluate||a.new_ep?.desc||""),vod_year:a.publish?.pub_time?String(new Date(a.publish.pub_time).getFullYear()):"",vod_remarks:c,vod_play_from:"\u54D4\u54E9\u89C6\u9891",vod_play_url:u}]}}async function E7t(e={}){let t=hW(e),r=String(t.wd||t.key||t.keyword||"").trim(),n=Math.max(1,Number.parseInt(t.page||t.pg||t.pn,10)||1);if(!r)return{page:n,pagecount:1,total:0,list:[]};try{let s=`https://search.bilibili.com/all?keyword=${encodeURIComponent(r)}`,i=await Promise.all(f7t.map(async l=>{let d={search_type:l,keyword:r,page:n},f;try{f=await jw("https://api.bilibili.com/x/web-interface/search/type",{server:e.server,params:d,referer:s,origin:"https://search.bilibili.com",includeBuvid:!0})}catch(h){if(!String(h.message||"").includes("HTTP 412"))throw h;f=await jw("https://api.bilibili.com/x/web-interface/search/type",{server:e.server,params:d,referer:s,origin:"https://search.bilibili.com",useCookie:!1,includeBuvid:!0})}if(f?.code!==0)throw new Error(f?.message||`\u641C\u7D22\u63A5\u53E3\u9519\u8BEF ${f?.code}`);return f?.data||{}})),a=new Set,o=[],c=0;for(let l of i){c+=Number(l?.numResults||0);for(let d of l?.result||[]){let f=w7t(d);if(!f)continue;let h=x7t(f.vod_id).id||f.vod_id;a.has(h)||(a.add(h),o.push(f))}}let u=wDe*f7t.length;return{page:n,pagecount:Math.max(1,Math.ceil((c||o.length)/u)),total:c||o.length,limit:u,list:o}}catch(s){return console.error("[bili_official] \u641C\u7D22\u5931\u8D25:",s.message),{page:n,pagecount:1,total:0,limit:wDe,list:[]}}}async function y7t({epId:e,cid:t,qn:r=120,server:n=null}){let s=await jw("https://api.bilibili.com/pgc/player/web/playurl",{server:n,params:{ep_id:e,cid:t,qn:r,fnval:4048,fnver:0,fourk:1},referer:`https://www.bilibili.com/bangumi/play/ep${e}`});if(s?.code!==0)throw new Error(s?.message||`PGC \u64AD\u653E\u63A5\u53E3\u9519\u8BEF ${s?.code}`);return s.result||s.data||{}}function v7t(e,t){return!Array.isArray(e)||!e.length?null:e.reduce((r,n)=>t(n)>t(r)?n:r,e[0])}async function S7t(e={}){let t=hW(e),r=String(t.id||"").trim();if(!r)throw new Error("\u53C2\u6570\u9519\u8BEF");if(!r.startsWith("pgc_"))return lW.play({...t,serverUrl:m7t(e,t),headers:e.headers||{},server:e.server});let[,n,s]=r.split("_");if(!n||!s)throw new Error("PGC \u64AD\u653E\u53C2\u6570\u9519\u8BEF");let i=m7t(e,t),o=(e.headers?.["user-agent"]||"").toLowerCase().includes("tvbox")?"mira":"dash",c=`https://comment.bilibili.com/${s}.xml`,u=await y7t({epId:n,cid:s,qn:120,server:e.server}),l=Number(u?.dash?.duration||0);if(u?.dash?.video?.length){let h=(u.accept_quality||[120,116,112,80]).slice(0,4),p=[];for(let m of h)try{let _=m===120?u:await y7t({epId:n,cid:s,qn:m,server:e.server}),g=_?.dash;if(!g?.video?.length)continue;let y=v7t(g.video,b=>Number(b?.id)||0),A=v7t(g.audio,b=>Number(b?.bandwidth)||0),E=y?.backup_url?.[0]||y?.backupUrl?.[0]||y?.base_url||y?.baseUrl||"",v=A?.backup_url?.[0]||A?.backupUrl?.[0]||A?.base_url||A?.baseUrl||"";if(!E)continue;p.push(_.accept_description?.[_.accept_quality?.indexOf(m)]||`${m}P`,`${i}/proxy?do=mpd&mode=${o}&video_url=${encodeURIComponent(E)}${v?`&audio_url=${encodeURIComponent(v)}`:""}&duration=${Number(g.duration||l||0)}`)}catch(_){console.warn("[bili_official] \u83B7\u53D6\u753B\u8D28\u5931\u8D25:",m,_.message)}if(p.length)return{parse:0,url:p,header:{"User-Agent":xDe,Referer:"https://www.bilibili.com/"},subt:c,extra:{format:"application/dash+xml",duration:l,danmaku:c}}}let f=u?.durl?.[0];if(f?.url)return{parse:0,url:f.url,header:{"User-Agent":xDe,Referer:"https://www.bilibili.com/"},subt:c,extra:{danmaku:c}};throw new Error("\u64AD\u653E\u94FE\u63A5\u83B7\u53D6\u5931\u8D25")}async function CDe(e){return lW.proxy(e)}var xDe,wDe,dxn,ODe,fxn,f7t,T7t,_3,h7t,b7t,hxn,p7t,Txn,O7t=ae(()=>{Pr();dW();Hr();ZQ();sa();xDe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",wDe=20,dxn="http://127.0.0.1:3006",ODe="bili_official",fxn=24*60*60*1e3,f7t=["media_bangumi","media_ft"],T7t=ve.create({timeout:15e3,validateStatus:()=>!0,...Zn(),paramsSerializer:{serialize(e={}){return Object.entries(e).filter(([,t])=>t!=null&&String(t)!=="").map(([t,r])=>`${encodeURIComponent(t)}=${encodeURIComponent(String(r))}`).join("&")}},headers:{"User-Agent":xDe,Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}}),_3="",h7t=0,b7t=[{type_id:"5",type_name:"\u7535\u89C6\u5267"},{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"3",type_name:"\u7EAA\u5F55\u7247"},{type_id:"1",type_name:"\u756A\u5267"},{type_id:"4",type_name:"\u56FD\u521B"},{type_id:"7",type_name:"\u7EFC\u827A"},{type_id:"8",type_name:"\u77ED\u5267"}],hxn=6*60*60*1e3,p7t=new gt(20,hxn);Txn={meta:{key:ODe,name:"\u{1F3AC} bili\u5B98",type:3,searchable:1,quickSearch:1,filterable:1,version:"1.0.0",author:"CatPawOpen",description:"\u54D4\u54E9\u54D4\u54E9 PGC \u5B98\u65B9\u5206\u7C7B/\u641C\u7D22\uFF0C\u767B\u5F55\u548C MPD \u6784\u5EFA\u590D\u7528 bili_all",homepage:"https://www.bilibili.com"},api:async e=>{e.post("/init",async(t,r)=>r.send({code:0,message:"bili\u5B98\u521D\u59CB\u5316\u5B8C\u6210"})),e.post("/home",async(t,r)=>r.send(await g7t(t))),e.post("/homeVod",async(t,r)=>r.send(await _7t(t))),e.post("/category",async(t,r)=>r.send(await NDe(t))),e.post("/detail",async(t,r)=>{try{return r.send(await A7t(t))}catch(n){return console.error("[bili_official] \u8BE6\u60C5\u5931\u8D25:",n.message),r.send({list:[]})}}),e.post("/search",async(t,r)=>r.send(await E7t(t))),e.post("/play",async(t,r)=>{try{return r.send(await S7t(t))}catch(n){return console.error("[bili_official] \u64AD\u653E\u5931\u8D25:",n.message),r.send({code:500,message:n.message||"\u64AD\u653E\u5931\u8D25",parse:0,url:"",header:{}})}}),e.get("/proxy",async(t,r)=>{let[n,s,i]=await CDe(t.query||{});r.code(n).header("Content-Type",s).send(i)}),e.post("/proxy",async(t,r)=>{let[n,s,i]=await CDe(t.body||{});r.code(n).header("Content-Type",s).send(i)})},home:g7t,homeVod:_7t,category:NDe,detail:A7t,search:E7t,play:S7t,proxy:CDe}});function P7t(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function xxn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var D7t,bxn,Ixn,Rxn,Cxn,di,_f=ae(()=>{Hr();Qd();su();ua();Nn();da();ws();D7t=15e3,bxn=8e3,Ixn=5*60*1e3,Rxn=500,Cxn=6;di=class{constructor(t,r,n,s){this.siteName=t,this.siteKey=r,this.meta=n,this.getCacheFunction=s,this.baseUrlCache=new Map,this.requestCache=new Map,this.inflightRequests=new Map,this.filterRulesCache=new Map,this.liveStructureCache=null,this.liveStructurePromise=null,this.requestTimeout=D7t,this.requestCacheTTL=Ixn,this.requestCacheMax=Rxn,this.requestRetryCount=1,this.requestRetryDelay=300,this.detailConcurrency=Cxn,this.liveStructureTTL=10*60*1e3,this.useLiveCategoryMetadata=!1,this.validateCategoryPageUrl=!1}async getUrl(t){if(!this.baseUrlCache.has(t)){let r=await this.getCacheFunction(t),n=await this.resolveWorkingUrl(r);if(!n)throw new Error(`[${this.siteName}] \u65E0\u53EF\u7528\u7AD9\u70B9 url\uFF08\u6240\u6709\u5019\u9009\u5747\u8FDE\u4E0D\u4E0A\uFF09`);this.baseUrlCache.set(t,n)}return this.baseUrlCache.get(t)}async resolveWorkingUrl(t){let r=Array.isArray(t)?t:[];if(this.validateCategoryPageUrl){for(let n of r)if(await this.isValidCategoryBaseUrl(n))return n}return await this.firstSuccessfulUrl(r)}async firstSuccessfulUrl(t){return await Q7(t)}async isValidCategoryBaseUrl(t){if(!t)return!1;try{let r=await this.request(`${t}/index.php/vod/show/id/1.html`,!1,{timeout:8e3,retryCount:0});return typeof r=="string"&&/class="library-box/i.test(r)}catch{return!1}}delay(t){return zt(t)}shouldRetryRequest(t){return t?.response?[408,425,429,500,502,503,504].includes(t.response.status):!0}getCachedRequest(t){let r=this.requestCache.get(t);return r?Date.now()-r.timestamp>this.requestCacheTTL?(this.requestCache.delete(t),null):(this.requestCache.delete(t),this.requestCache.set(t,r),r.data):null}setCachedRequest(t,r){if(this.requestCache.size>=this.requestCacheMax){let n=Math.min(50,this.requestCache.size),s=0;for(let i of this.requestCache.keys())if(this.requestCache.delete(i),s++,s>=n)break}this.requestCache.set(t,{data:r,timestamp:Date.now()})}async doRequest(t){let r=new AbortController,n=setTimeout(()=>r.abort(),this.requestTimeout);try{return(await Xe.get(t,{headers:{"User-Agent":CB},signal:r.signal})).data}catch(s){throw s}finally{clearTimeout(n)}}async request(t,r=!1,n={}){let s=t,i=r?this.getCachedRequest(s):null;if(i!==null)return i;let a=Number.isFinite(n.timeout)?n.timeout:this.requestTimeout,o=Number.isFinite(n.retryCount)?n.retryCount:this.requestRetryCount,c=`${r?"cache":"nocache"}:${s}:${a}:${o}`;if(this.inflightRequests.has(c))return this.inflightRequests.get(c);let u=(async()=>{let l=r?this.requestCache.get(s)?.data:null,d=null;for(let f=0;f<=o;f++)try{let h=this.requestTimeout;this.requestTimeout=a;try{let p=this.normalizeHtmlResponse(await this.doRequest(t));return r&&this.setCachedRequest(s,p),p}finally{this.requestTimeout=h}}catch(h){if(d=h,f>=o||!this.shouldRetryRequest(h))break;await this.delay(this.requestRetryDelay*(f+1))}if(l&&!d?.response)return l;throw d})();this.inflightRequests.set(c,u);try{return await u}finally{this.inflightRequests.delete(c)}}normalizePage(t){let r=Number.parseInt(t,10);return Number.isNaN(r)||r<=0?1:r}generateYears(t,r){let n=[];for(let s=r;s>=t;s--)n.push({v:s.toString(),n:s.toString()});return n}normalizeText(t){return String(t||"").replace(/\s+/g," ").trim()}normalizeHtmlResponse(t){if(typeof t!="string")return t;let r=t.indexOf('"n.includes(u)))return{key:o,name:o==="year"?"\u65F6\u95F4":c[0]};let i=this.detectFilterKey(r);return i?{key:i,name:{id:"\u7C7B\u578B",class:"\u5267\u60C5",area:"\u5730\u533A",lang:"\u8BED\u8A00",year:"\u65F6\u95F4",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"}[i]||i}:{key:"",name:""}}detectFilterKey(t=""){return/\/show\/by\//i.test(t)?"by":/\/show\/class\//i.test(t)?"class":/\/show\/area\//i.test(t)?"area":/\/lang\//i.test(t)?"lang":/\/year\//i.test(t)?"year":/\/letter\//i.test(t)?"letter":/\/show\/id\/\d+\.html/i.test(t)?"id":""}extractFilterValue(t="",r=""){let s={by:/\/show\/by\/([^/]+)\/id\//i,class:/\/show\/class\/([^/]+)\/id\//i,area:/\/show\/area\/([^/]+)\/id\//i,lang:/\/lang\/([^/.]+)\.html/i,year:/\/year\/([^/.]+)\.html/i,letter:/\/letter\/([^/.]+)\.html/i,id:/\/show\/id\/(\d+)\.html/i}[r];if(!s)return"";let i=t.match(s);return i?this.decodeFilterValue(i[1]):""}parseLiveClasses(t){let r=er(t),n=[],s=new Set,i=[".page-heading .library-box-first .library-list a",".drop-content-items li",".nav-menu-items li"];for(let a of i)if(r(a).each((o,c)=>{let u=r(c),l=c.tagName==="a"?u:u.find("a").first(),d=l.attr("href")||"";if(!d||!d.includes("/show/")&&!d.includes("/type/"))return;let f=d.match(/\/id\/(\d+)/i)?.[1]||d.match(/\/type\/(\d+)/i)?.[1]||d.match(/(\d+)(?:\.html)?$/i)?.[1];if(!f||s.has(f))return;let h=this.normalizeLiveClassName(l.text()||l.attr("title")||l.attr("alt")||"");h&&(s.add(f),n.push({type_name:h,type_id:f}))}),n.length>0)return n;return n}parseLiveFilters(t,r){let n=er(t),s=[],i={},a=new Set;return n("div.library-box.scroll-box").slice(1).each((o,c)=>{let u=n(c);if(u.find(".library-stat").length>0)return;let l=this.normalizeText(u.find("a.library-item-first").first().text()),d=u.find(".library-list a"),f=d.first().attr("href")||"",h=this.getLiveFilterMeta(l,f);if(!h.key||a.has(h.key)||d.length===0)return;let p=new Set,m=[];d.each((_,g)=>{let y=n(g),A=y.attr("href")||"",E=this.extractFilterValue(A,h.key),v=this.normalizeText(y.text()||y.attr("title")||"");!E||!v||p.has(E)||(p.add(E),m.push({v:E,n:v}))}),m.length!==0&&(a.add(h.key),s.push({name:h.name,key:h.key}),i[`${r}.${h.key}`]=m)}),{rules:s,values:i}}async ensureLiveFilterData(t,r,n=null){if(!this.useLiveCategoryMetadata||!r)return;let s=String(r);if(this.filterData?.[s]?.length>0)return;let i=n||await this.getUrl(t);try{let a=await this.request(`${i}/index.php/vod/show/id/${s}.html`,!0),o=this.parseLiveFilters(a,s);if(o.rules.length===0)return;this.filterData={...this.filterData||{},[s]:o.rules},this.filterValues={...this.filterValues||{},...o.values},this.filterRulesCache.delete(s),this.homeCache=null}catch{}}async ensureLiveCategoryMetadata(t){if(!this.useLiveCategoryMetadata)return;let r=Date.now();if(!(this.liveStructureCache&&r-this.liveStructureCache.timestamp{let n=await this.getUrl(t),s=String(this.classes?.[0]?.type_id||"1"),i=await this.request(`${n}/index.php/vod/show/id/${s}.html`,!0),a=this.parseLiveClasses(i);if(a.length===0)return;let o={},c={},u=new Map([[s,i]]);await this.mapWithConcurrency(a,3,async l=>{let d=String(l.type_id);try{let f=u.get(d)||await this.request(`${n}/index.php/vod/show/id/${d}.html`,!0);u.set(d,f);let h=this.parseLiveFilters(f,d);o[d]=h.rules,Object.assign(c,h.values)}catch{o[d]=this.filterData?.[d]||[]}}),this.classes=a,this.filterData=o,this.filterValues=c,this.filterRulesCache.clear(),this.homeCache=null,this.liveStructureCache={timestamp:Date.now()}})();try{await this.liveStructurePromise}finally{this.liveStructurePromise=null}}}resolveFilterValue(t,r){let n=`${t}.${r}`;return this.filterValues?.[n]||this.filterValues?.[r]||[]}getFilterRules(t){let r=String(t??"");if(this.filterRulesCache.has(r))return this.filterRulesCache.get(r);let s=(this.filterData?.[r]||[]).map(i=>({name:i.name,key:i.key,value:this.resolveFilterValue(r,i.key)}));return this.filterRulesCache.set(r,s),s}async home(t,r){try{this.useLiveCategoryMetadata&&t?.server&&await this.ensureLiveCategoryMetadata(t.server);let n=Yr(this.siteKey,t),s=Qr(n);if(s)return s;let i={};for(let c of Object.keys(this.filterData||{}))i[c]=this.getFilterRules(c);let a={class:this.classes||[],filters:i},o=this.meta?.homeCacheTTL||Tt.static;return dn(n,a,o),a}catch(n){return console.warn(`[${this.siteName}] home \u5931\u8D25:`,n.message),{class:this.classes||[],filters:{}}}}buildDetailUrl(t,r){return r.startsWith("http")?r:r.startsWith("/")?t+r:`${t}/index.php/vod/detail/id/${r}.html`}async mapWithConcurrency(t,r,n){let s=[],i=new Array(t.length),a=0,o=async()=>{for(;;){let u=a++;if(u>=t.length)break;i[u]=await n(t[u],u)}},c=Math.min(r,t.length);for(let u=0;uxxn(o)).filter(o=>o.id);return{list:(await Promise.all(i.map(({id:o,meta:c})=>{let u=pb("detail",{id:o,server:t.server});return Un(this.siteKey,"detail",u,async()=>{try{let l=this.buildDetailUrl(n,o),d=await this.request(l,!0),f=er(d),h={vod_id:o,vod_name:f(".page-title")[0]?.children[0]?.data||"",vod_pic:c?.vod_pic||f(f(".mobile-play")).find(".lazyload")[0]?.attribs["data-src"]||"",vod_remarks:c?.vod_remarks||""},p=f(".video-info-itemtitle");for(let y of p){let A=f(y).text(),v=f(y).next().find("a").map((b,I)=>{let T=f(I).text().trim();return T||null}).get().filter(Boolean).join(", ");A.includes("\u5267\u60C5")?h.vod_content=f(y).next().find("p").text().trim():A.includes("\u5BFC\u6F14")?h.vod_director=v.trim():A.includes("\u4E3B\u6F14")&&(h.vod_actor=v.trim())}let _=f("div.module-row-info p").map((y,A)=>f(A).text().trim()).get().filter(Boolean),g=_.length>0?await Bs(_,t):null;return g&&(h.vod_play_from=g.froms,h.vod_play_url=g.urls,Array.isArray(g.links)&&g.links.length>0&&(h.vod_links=g.links)),h}catch(l){return console.error(`[${this.siteName}] \u83B7\u53D6\u8BE6\u60C5\u5931\u8D25 (id: ${o}):`,l.message),{vod_id:o,vod_name:"\u83B7\u53D6\u5931\u8D25",vod_pic:c?.vod_pic||"",vod_remarks:c?.vod_remarks||"\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25",vod_content:`\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25: ${l.message}`}}},{timeout:D7t})}))).filter(Boolean)}}catch{return{list:[]}}}async search(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server),i=String(t.body.wd||"").trim();if(!i)return{page:n,pagecount:n,list:[]};let a=await this.request(`${s}/index.php/vod/search/wd/${encodeURIComponent(i)}.html`,!0,{timeout:bxn,retryCount:0}),o=er(a),c=o(".module-search-item").map((u,l)=>{let d=o(l),f=d.find(".video-serial"),h=f.length>0?f[0].attribs.href:"",p=this.fixImgUrl(d.find(".module-item-pic > img")[0]?.attribs["data-src"]||""),m=f.length>0?o(f[0]).text():"";return{vod_id:P7t(h,{vod_pic:p,vod_remarks:m}),vod_name:f.length>0?f[0].attribs.title:"",vod_pic:p,vod_remarks:m}}).get();return{page:n,pagecount:c.length<10?n:n+1,list:c}}catch(s){return console.error(`[${this.siteName}] \u641C\u7D22\u5931\u8D25:`,s.message),{page:n,pagecount:n,list:[]}}}buildFilterUrl(t,r,n={}){let s=t.replace(/\/index\.php\/vod\/show\/id\/[^/]+$/i,""),i=String(n.id||r),a=[];return n.area&&a.push(`area/${encodeURIComponent(n.area)}`),n.by&&a.push(`by/${encodeURIComponent(n.by)}`),n.class&&a.push(`class/${encodeURIComponent(n.class)}`),a.push(`id/${encodeURIComponent(i)}`),n.lang&&a.push(`lang/${encodeURIComponent(n.lang)}`),n.letter&&a.push(`letter/${encodeURIComponent(n.letter)}`),n.year&&a.push(`year/${encodeURIComponent(n.year)}`),`${s}/index.php/vod/show/${a.join("/")}`}async parseCategoryVideos(t){return t("#main .module-item").map((n,s)=>{let i=t(s),a=i.find(".module-item-pic a").attr("href"),o=i.find(".module-item-pic img").attr("alt"),c=i.find(".module-item-pic img").attr("data-src"),u=i.find(".module-item-text").text(),l=this.fixImgUrl(c);return{vod_id:P7t(a||"",{vod_pic:l,vod_remarks:u}),vod_name:o,vod_pic:l,vod_remarks:u}}).get()}async category(t,r){let n=this.normalizePage(t.body.page);try{this.useLiveCategoryMetadata&&t?.server&&await this.ensureLiveCategoryMetadata(t.server);let s=await this.getUrl(t.server),i=t.body.id,a=t.body.filters||t.body.extend||t.body.ext||{},o=String(a.id||i);this.useLiveCategoryMetadata&&await this.ensureLiveFilterData(t.server,o,s);let c=`${s}/index.php/vod/show/id/${i}`,u=this.buildFilterUrl(c,i,a)+`/page/${n}.html`,l=await this.request(u,!0),d=er(l);if(this.useLiveCategoryMetadata){let g=this.parseLiveFilters(l,o);g.rules.length>0&&(this.filterData={...this.filterData||{},[o]:g.rules},this.filterValues={...this.filterValues||{},...g.values},this.filterRulesCache.delete(o))}let f=await this.parseCategoryVideos(d),p=d("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?n+1:n,m={page:n,pagecount:p,limit:72,total:72*p,list:f},_=this.getFilterRules(o);return _&&_.length>0&&(m.filter=_),m}catch(s){return console.warn(`[${this.siteName}] category \u5931\u8D25:`,s.message),{page:n,pagecount:n,limit:72,total:0,list:[]}}}createApi(t){t.post("/init",Wi),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Zs),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}getStaticHomeSnapshot(){let t={};for(let r of Object.keys(this.filterData||{}))t[r]=this.getFilterRules(r);return JSON.parse(JSON.stringify({class:this.classes||[],filters:t}))}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),staticHome:()=>this.getStaticHomeSnapshot(),check:async t=>{try{return await this.getUrl(t)}catch{return null}}}}}});function M7t(e){let t=[];Array.isArray(e)?t=e:typeof e=="string"?t=[e]:e&&typeof e=="object"&&(Array.isArray(e.urls)?t=e.urls:typeof e.url=="string"&&(t=[e.url]));let r=[],n=new Set;for(let s of t){let i=String(s??"").trim();!i||n.has(i)||(n.add(i),r.push(i))}return r}function L7t(e,t){let r=e?.config?.[t];return M7t(r)}async function Kw(e,t){if(!e||!t)return[];if(!e.db)return L7t(e,t);let r=[];try{let s=await e.db.getObjectDefault(`/${t}`,{});r=M7t(s?.urls??s)}catch(s){console.error(`[${t}] \u8BFB\u53D6\u6570\u636E\u5E93\u57DF\u540D\u914D\u7F6E\u5931\u8D25:`,s)}if(r.length>0)return r;let n=L7t(e,t);if(n.length===0)return[];try{await e.db.push(`/${t}/urls`,n),console.log(`[${t}] DB\u4E3A\u7A7A\uFF0C\u5DF2\u4ECE index.config.js \u56DE\u586B\u57DF\u540D\u914D\u7F6E\uFF0C\u5171 ${n.length} \u6761`)}catch(s){console.error(`[${t}] \u56DE\u586B index.config.js \u5230\u6570\u636E\u5E93\u5931\u8D25:`,s)}return n}var pW=ae(()=>{});async function PDe(e){e.get("/urls",async(t,r)=>{r.send({code:0,data:await DDe(t.server)})}),e.put("/urls",async(t,r)=>{await wxn(t.server,t.body),r.send({code:0})}),e.delete("/urls",async(t,r)=>{await Nxn(t.server),r.send({code:0})})}var DDe,wxn,Nxn,LDe=ae(()=>{pW();DDe=async e=>Kw(e,"wogg"),wxn=async(e,t)=>{await e.db.push("/wogg/urls",t)},Nxn=async e=>{await e.db.delete("/wogg/urls")}});function MDe(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function Oxn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var Dxn,Pxn,Lxn,Mxn,k7t,B7t,kxn,kDe,Bxn,U7t,F7t=ae(()=>{Hr();su();Qd();_f();LDe();ua();Nn();da();sa();Dxn=15e3,Pxn=10*60*1e3,Lxn=15*1e3,Mxn=30*1e3,k7t=60*1e3,B7t=200,kxn=4,kDe=class extends di{constructor(){super("\u73A9\u5076","wogg",{key:"wogg",name:"\u2601\uFE0F \u73A9\u5076",type:3,homeCacheTTL:Tt.static},DDe),this.urlState={value:"",timestamp:0},this.htmlCache=new Map,this.shareDetailCache=new gt(B7t,k7t),this.detailConcurrency=kxn}getCacheBucket(t,r){if(t instanceof gt)return t;let n=String(r),s=t.get(n);return s||(s=new gt(B7t,r),t.set(n,s)),s}async withCache(t,r,n,s,i){let a=this.getCacheBucket(t,s),o=a.get(n);return o?o.data:Un("wogg",r,n,async()=>{let c=await i();return a.set(n,{data:c}),c},{timeout:3e4})}async getUrl(t,r=!1){let n=Date.now();return!r&&this.urlState.value&&n-this.urlState.timestamp{let s=await this.getCacheFunction(t),i=await Q7(s);return console.log(`[wogg] \u57DF\u540D\u5019\u9009=${Array.isArray(s)?s.length:0}, \u9009\u4E2D=${i||"none"}`),this.urlState.value=i||"",this.urlState.timestamp=Date.now(),this.urlState.value},3e4)}async request(t,r={}){let n=r.ttl==null?Lxn:r.ttl,s=async()=>(await Xe.get(t,{headers:{"User-Agent":CB},timeout:Dxn})).data||"";if(r.noCache||n<=0)return s();let i=`html:${t}`;return this.withCache(this.htmlCache,"html",i,n,s)}async init(t,r){return await Wi(t,r),{}}async home(t,r){let n=await this.getUrl(t.server);if(!n)return{class:[]};let s=await this.request(`${n}/index.php/vodshow/1-----------.html`);return{class:er(s)("div.library-box-first a[href*=/vodshow/]").map((a,o)=>{let c=o.attribs?.href?.match(/vodshow\/(\d+)-----------.html/);return c?{type_id:c[1],type_name:(o.attribs?.title||"").replace(/片库|玩偶/g,"")}:null}).get().filter(Boolean)}}fixImgUrl(t,r=""){if(!t)return"";let n=String(r||"").replace(/\/+$/,"");return t.startsWith("/img.php?url=")?t.substring(13):t.startsWith("/db.php?url=")?n?`${n}${t}`:t:t.startsWith("//")?`https:${t}`:t.startsWith("/")&&n?`${n}${t}`:t}getImgUrl(t,r,n=""){let s=t(r).find("div.module-item-pic img").first(),i=[s.attr("data-src"),s.attr("data-original"),s.attr("data-lazy-src"),s.attr("data-srcset"),s.attr("srcset"),s.attr("src")];for(let a of i){if(!a)continue;let o=String(a).trim();if(!o)continue;let c=o.split(",")[0]?.trim().split(/\s+/)[0]||"";if(c)return this.fixImgUrl(c,n)}return""}getHrefInfoIdx(t){let r=Array.isArray(t)?t:t.split("-");for(let n=1;n div.module-search-item").map((_,g)=>{let y=p(g).find("div.video-info-header h3 a")[0];if(!y?.attribs?.href)return null;let A=y.attribs.href.match(/voddetail\/(.*).html/);return A?{vod_id:MDe(A[1],{vod_pic:this.getImgUrl(p,g,n),vod_remarks:p(g).find("a.video-serial").text()}),vod_name:y.attribs.title||"",vod_pic:this.getImgUrl(p,g,n),vod_remarks:p(g).find("a.video-serial").text()}:null}).get().filter(Boolean);return{page:a,pagecount:m.length<10?a:a+1,list:m}}let o=[],c=null;if(a===1&&Object.keys(i).length===0){let d=await this.request(`${n}/index.php/vodshow/${s}-----------.html`);c=er(d),c("a.library-item-first").map((f,h)=>{let p=c(h.parent).find("div.library-list > a.library-item");if(p.length>0){let m=[],_=0;p.each((g,y)=>{let E=y.attribs.href.match(/vodshow\/(.*).html/)[1].split("-");g===0&&(_=this.getHrefInfoIdx(E),_!==2&&m.push({n:"\u5168\u90E8",v:""})),m.push({n:y.attribs.title.replace(/按|排序/g,""),v:decodeURIComponent(E[_].toString())})}),o.push({key:_.toString(),name:"",init:m[0].v,value:m})}})}if(c===null){let d=[s,"","","","","","","",a,"","",""];Object.keys(i).forEach(h=>{d[Number.parseInt(h,10)]=i[h]});let f=await this.request(`${n}/index.php/vodshow/${d.join("-")}.html`);c=er(f)}let u=c("div.module-items > div.module-item").map((d,f)=>{let h=c(f).find("div.video-name a")[0];if(!h?.attribs?.href)return null;let p=h.attribs.href.match(/voddetail\/(.*).html/);return p?{vod_id:MDe(p[1],{vod_pic:this.getImgUrl(c,f,n),vod_remarks:c(f).find("div.module-item-text").text()}),vod_name:h.attribs.title||"",vod_pic:this.getImgUrl(c,f,n),vod_remarks:c(f).find("div.module-item-text").text()}:null}).get().filter(Boolean),l={page:a,pagecount:u.length<70?a:a+1,list:u};return o.length>0&&(l.filter=o),l}async detail(t,r){let n=await this.getUrl(t.server);if(!n)return{list:[]};let s=Array.isArray(t.body.id)?t.body.id:[t.body.id];return{list:(await this.mapWithConcurrency(s,this.detailConcurrency,async a=>{let o=Oxn(a),c=String(o.id||"").trim();if(!c)return null;try{let u=await this.request(`${n}/index.php/voddetail/${c}.html`,{ttl:Mxn}),l=er(u),d=[],f=[],h="";l("div.video-info-items a[href*=/vodsearch/]").each((_,g)=>{let y=g.attribs?.href?.match(/vodsearch\/(.*).html/);if(!y)return;let A=y[1].split("-"),E=l(g).text().trim(),v=this.getHrefInfoIdx(A);if(v===5){let b={id:"s-5-"+decodeURIComponent(A[5].toString()),name:E};d.push(`[a=cr:${JSON.stringify(b)}/]${E}[/a]`)}else if(v===1){let b={id:"s-1-"+decodeURIComponent(A[1].toString()),name:E};f.push(`[a=cr:${JSON.stringify(b)}/]${E}[/a]`)}else v===13&&(h=E)});let p={vod_name:l(".page-title").first().text().trim()||c,vod_year:h,vod_actor:f.join(", "),vod_director:d.join(", "),vod_content:l("div.video-info-content p[style*=none]").first().text().trim(),vod_pic:o.meta?.vod_pic||this.getImgUrl(l,l.root(),n),vod_remarks:o.meta?.vod_remarks||l("div.video-info-items, div.video-info-item, div.module-info-item, div.module-info-items").find("span.video-serial, a.video-serial, div.module-item-text, span.module-item-note, span.module-item-text").map((_,g)=>l(g).text().trim()).get().filter(Boolean)[0]||""},m=l("div.module-row-info p").map((_,g)=>l(g).text().trim()).get().filter(Boolean);if(m.length>0){let _=`share:${m.join("|")}`,g=await this.withCache(this.shareDetailCache,"detail",_,k7t,async()=>Bs(m,t));g&&(p.vod_play_from=g.froms,p.vod_play_url=g.urls,Array.isArray(g.links)&&g.links.length>0&&(p.vod_links=g.links))}return p}catch{return null}})).filter(Boolean)}}async search(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server);if(!s)return{page:1,pagecount:1,list:[]};let i=String(t.body.wd||"").trim();if(!i)return{page:n,pagecount:1,list:[]};let a=await this.request(`${s}/index.php/vodsearch/-------------.html?wd=${encodeURIComponent(i)}`),o=er(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];if(!d?.attribs?.href)return null;let f=d.attribs.href.match(/voddetail\/(.*).html/);return f?{vod_id:MDe(f[1],{vod_pic:this.getImgUrl(o,l,s),vod_remarks:o(l).find("a.video-serial").text()}),vod_name:d.attribs.title||"",vod_pic:this.getImgUrl(o,l,s),vod_remarks:o(l).find("a.video-serial").text()}:null}).get().filter(Boolean);return{page:n,pagecount:c.length<10?n:n+1,list:c}}catch(s){return console.error("[wogg] \u641C\u7D22\u5931\u8D25:",s.message),{page:n,pagecount:n,list:[]}}}async test(t,r){try{let n=function(c){c.statusCode&&c.statusCode===500&&console.error(c)},s=t.server.prefix,i={},a=await t.server.inject().post(`${s}/init`),o=a.json();if(i.init=o,n(o),a=await t.server.inject().post(`${s}/home`),o=a.json(),i.home=o,n(o),i.home.class.length>0&&(a=await t.server.inject().post(`${s}/category`).payload({id:i.home.class[0].type_id,page:1,filter:!0,filters:{}}),o=a.json(),i.category=o,n(o),i.category.list.length>0&&(a=await t.server.inject().post(`${s}/detail`).payload({id:i.category.list[0].vod_id}),o=a.json(),i.detail=o,n(o),i.detail.list&&i.detail.list.length>0))){i.play=[];for(let c of i.detail.list){let u=c.vod_play_from.split("$$$"),l=c.vod_play_url.split("$$$");for(let d=0;dn.send(await this.init(r,n))),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Zs),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us),t.get("/test",async(r,n)=>n.send(await this.test(r,n)))}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),check:t=>this.getUrl(t)}}},Bxn=new kDe,U7t=Bxn.getExports()});var Oi,U0=ae(()=>{pW();Oi=class{constructor(t){this.siteKey=t}async getCache(t){return Kw(t,this.siteKey)}async setCache(t,r){await t.db.push(`/${this.siteKey}/urls`,r)}async removeCache(t){await t.db.delete(`/${this.siteKey}/urls`)}createRoutes(t){t.get("/urls",async(r,n)=>{n.send({code:0,data:await this.getCache(r.server)})}),t.put("/urls",async(r,n)=>{await this.setCache(r.server,r.body),n.send({code:0})}),t.delete("/urls",async(r,n)=>{await this.removeCache(r.server),n.send({code:0})})}}});async function UDe(e){$7t.createRoutes(e)}var BDe,$7t,q7t,FDe=ae(()=>{U0();BDe=class extends Oi{constructor(){super("muou")}},$7t=new BDe,q7t=e=>$7t.getCache(e)});var $De,Uxn,H7t,V7t=ae(()=>{_f();FDe();Nn();$De=class extends di{constructor(){super("\u6728\u5076","mogg",{key:"muou",name:"\u2601\uFE0F \u6728\u5076",type:3,homeCacheTTL:Tt.static},q7t),this.initFilterData()}initFilterData(){this.classes=[{type_name:"115\u81FB\u4EAB",type_id:"25"},{type_name:"\u6728\u5076\u7535\u5F71",type_id:"1"},{type_name:"\u6728\u5076\u5267\u96C6",type_id:"2"},{type_name:"\u6728\u5076\u52A8\u6F2B",type_id:"3"},{type_name:"\u6728\u5076\u7EFC\u827A",type_id:"29"},{type_name:"\u6728\u5076\u7EAA\u5F55\u7247",type_id:"4"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],25:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],29:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"25.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"25.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"25.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u6B27\u7F8E\u5267"},{v:"15",n:"\u65E5\u97E9\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"},{v:"23",n:"\u6CF0\u5267"},{v:"26",n:"\u5176\u5B83\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.id":[{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u65E5\u672C"},{v:"22",n:"\u6B27\u7F8E"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"29.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"29.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"29.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},Uxn=new $De,H7t=Uxn.getExports()});async function HDe(e){j7t.createRoutes(e)}var qDe,j7t,K7t,VDe=ae(()=>{U0();qDe=class extends Oi{constructor(){super("erxiao")}},j7t=new qDe,K7t=e=>j7t.getCache(e)});var jDe,Fxn,G7t,z7t=ae(()=>{_f();Nn();VDe();jDe=class extends di{constructor(){super("\u4E8C\u5C0F","erxiao",{key:"erxiao",name:"\u2601\uFE0F \u4E8C\u5C0F",type:3,homeCacheTTL:Tt.static},K7t),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u771F\u5F69",type_id:"22"},{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"3"},{type_name:"\u7EFC\u827A",type_id:"21"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],21:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],22:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"22.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"22.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"22.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"21.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"21.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"21.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"21.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"21.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"21.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},Fxn=new jDe,G7t=Fxn.getExports()});async function GDe(e){Y7t.createRoutes(e)}var KDe,Y7t,Q7t,zDe=ae(()=>{U0();KDe=class extends Oi{constructor(){super("zhizhen")}},Y7t=new KDe,Q7t=e=>Y7t.getCache(e)});var YDe,$xn,W7t,X7t=ae(()=>{_f();Nn();zDe();YDe=class extends di{constructor(){super("\u81F3\u81FB","zhizhen",{key:"zhizhen",name:"\u2601\uFE0F \u81F3\u81FB",type:3,homeCacheTTL:Tt.static},Q7t),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u81FB\u5F69\u8BA1\u5212",type_id:"26"},{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u7535\u89C6\u5267",type_id:"2"},{type_name:"\u7EFC\u827A",type_id:"3"},{type_name:"\u52A8\u6F2B",type_id:"4"},{type_name:"\u77ED\u5267\u5403\u5230\u9971",type_id:"27"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],26:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],27:[{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"26.id":[{v:"28",n:"\u81FB\u5F69\u7535\u5F71"},{v:"29",n:"\u81FB\u5F69\u5267\u96C6"},{v:"30",n:"\u81FB\u5F69\u52A8\u6F2B"},{v:"31",n:"\u81FB\u5F69\u7EFC\u827A"}],"26.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"26.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"26.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"27.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"27.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"27.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"27.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},$xn=new YDe,W7t=$xn.getExports()});async function WDe(e){J7t.createRoutes(e)}var QDe,J7t,Z7t,XDe=ae(()=>{U0();QDe=class extends Oi{constructor(){super("ouge")}},J7t=new QDe,Z7t=e=>J7t.getCache(e)});var JDe,qxn,ejt,tjt=ae(()=>{_f();Nn();XDe();JDe=class extends di{constructor(){super("\u6B27\u54E5","ouge",{key:"ouge",name:"\u2601\uFE0F \u6B27\u54E5",type:3,homeCacheTTL:Tt.static},Z7t),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"3"},{type_name:"\u77ED\u5267",type_id:"5"},{type_name:"\u7EFC\u827A",type_id:"4"},{type_name:"\u7EFC\u5408",type_id:"21"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],21:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u5386\u53F2",n:"\u5386\u53F2"}],"1.area":[{v:"+\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u5386\u53F2",n:"\u5386\u53F2"}],"2.area":[{v:"+\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.class":[{v:"+\u7537\u9891",n:"\u7537\u9891"},{v:"\u5973\u9891",n:"\u5973\u9891"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u751C\u5BA0",n:"\u751C\u5BA0"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u7A7F\u8D8A",n:"\u7A7F\u8D8A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u4EB2\u60C5",n:"\u4EB2\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u840C\u5B9D",n:"\u840C\u5B9D"},{v:"\u91CD\u751F",n:"\u91CD\u751F"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u9006\u88AD",n:"\u9006\u88AD"},{v:"\u8650\u604B",n:"\u8650\u604B"},{v:"\u9274\u5B9D",n:"\u9274\u5B9D"},{v:"\u590D\u4EC7",n:"\u590D\u4EC7"},{v:"\u4FEE\u4ED9",n:"\u4FEE\u4ED9"}],"5.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"4.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"21.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"21.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},qxn=new JDe,ejt=qxn.getExports()});async function ePe(e){rjt.createRoutes(e)}var ZDe,rjt,njt,tPe=ae(()=>{U0();ZDe=class extends Oi{constructor(){super("labi")}},rjt=new ZDe,njt=e=>rjt.getCache(e)});var rPe,Hxn,sjt,ijt=ae(()=>{_f();Nn();tPe();rPe=class extends di{constructor(){super("\u8721\u7B14","labi",{key:"labi",name:"\u2601\uFE0F \u8721\u7B14",type:3,homeCacheTTL:Tt.static},njt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u8721\u7B14\u7535\u5F71",type_id:"1"},{type_name:"\u8721\u7B14\u5267\u96C6",type_id:"2"},{type_name:"\u8721\u7B14\u52A8\u6F2B",type_id:"3"},{type_name:"\u8721\u7B14\u7EFC\u827A",type_id:"4"},{type_name:"\u81FB\u5F694K",type_id:"24"},{type_name:"\u8721\u7B14\u81FB\u5F69",type_id:"29"},{type_name:"\u8721\u7B14\u77ED\u5267",type_id:"5"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],24:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],29:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.id":[{v:"6",n:"\u79D1\u5E7B"},{v:"7",n:"\u7231\u60C5"},{v:"8",n:"\u6218\u4E89"},{v:"9",n:"\u6050\u6016"},{v:"10",n:"\u9AD8\u7801"},{v:"11",n:"\u52A8\u753B"},{v:"12",n:"\u52A8\u4F5C"},{v:"23",n:"\u753B\u8D28\u63A7"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u65E5\u97E9\u5267"},{v:"15",n:"\u6B27\u7F8E\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.id":[{v:"22",n:"\u65E5\u97E9"},{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u6B27\u7F8E"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"24.id":[{v:"26",n:"4K\u7535\u5F71"},{v:"27",n:"4K\u5267\u96C6"},{v:"28",n:"4K\u52A8\u6F2B"}],"24.area":[{v:"\u4E2D\u56FD",n:"\u4E2D\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"24.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"}],"24.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"24.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"29.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"29.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"29.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},Hxn=new rPe,sjt=Hxn.getExports()});async function sPe(e){ajt.createRoutes(e)}var nPe,ajt,ojt,iPe=ae(()=>{U0();nPe=class extends Oi{constructor(){super("huban")}},ajt=new nPe,ojt=e=>ajt.getCache(e)});var aPe,Vxn,cjt,ujt=ae(()=>{_f();Nn();iPe();aPe=class extends di{constructor(){super("\u864E\u6591","huban",{key:"huban",name:"\u2601\uFE0F \u864E\u6591",type:3,homeCacheTTL:Tt.static},ojt),this.initFilterData(),this.validateCategoryPageUrl=!0}initFilterData(){this.classes=[{type_name:"\u5C0F\u864E\u6591\u98CE",type_id:"1"},{type_name:"\u5C0F\u864E\u6591\u82B1",type_id:"2"},{type_name:"\u5C0F\u864E\u6591\u96EA",type_id:"3"},{type_name:"\u5C0F\u864E\u6591\u6708",type_id:"4"},{type_name:"\u5C0F\u864E\u6591\u77ED",type_id:"6"},{type_name:"\u5C0F\u864E\u6591\u7CBE",type_id:"5"},{type_name:"115",type_id:"30"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],6:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u4F20\u8BB0",n:"\u4F20\u8BB0"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u4F26\u7406",n:"\u4F26\u7406"},{v:"\u707E\u96BE",n:"\u707E\u96BE"},{v:"\u897F\u90E8",n:"\u897F\u90E8"},{v:"\u9B54\u5E7B",n:"\u9B54\u5E7B"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u8BB0\u5F55",n:"\u8BB0\u5F55"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5076\u50CF",n:"\u5076\u50CF"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u8A00\u60C5",n:"\u8A00\u60C5"},{v:"\u519B\u4E8B",n:"\u519B\u4E8B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u795E\u8BDD",n:"\u795E\u8BDD"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u8C0D\u6218",n:"\u8C0D\u6218"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"},{v:"\u9999\u6E2F\u5730\u533A",n:"\u9999\u6E2F\u5730\u533A"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u771F\u4EBA\u79C0",n:"\u771F\u4EBA\u79C0"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u53E3\u79C0",n:"\u53E3\u79C0"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u6E38\u620F",n:"\u6E38\u620F"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u65F6\u5C1A",n:"\u65F6\u5C1A"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u804C\u573A",n:"\u804C\u573A"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u76DB\u4F1A",n:"\u76DB\u4F1A"}],"3.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.id":[{v:"31",n:"\u65E5\u672C\u52A8\u6F2B"},{v:"32",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"33",n:"\u52A8\u6F2B\u7535\u5F71"},{v:"34",n:"\u6B27\u7F8E\u52A8\u6F2B"}],"4.class":[{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"6.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"6.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.class":[{v:"\u592E\u89C6\u76F4\u64AD",n:"\u592E\u89C6\u76F4\u64AD"},{v:"\u5730\u65B9\u76F4\u64AD",n:"\u5730\u65B9\u76F4\u64AD"},{v:"\u7EFC\u827A\u8282\u76EE",n:"\u7EFC\u827A\u8282\u76EE"},{v:"\u5A31\u4E50\u8D44\u8BAF",n:"\u5A31\u4E50\u8D44\u8BAF"}],"5.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.year":[{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"30.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"30.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},Vxn=new aPe,cjt=Vxn.getExports()});async function cPe(e){ljt.createRoutes(e)}var oPe,ljt,djt,uPe=ae(()=>{U0();oPe=class extends Oi{constructor(){super("kuaiying")}},ljt=new oPe,djt=e=>ljt.getCache(e)});var lPe,jxn,fjt,hjt=ae(()=>{_f();Nn();uPe();lPe=class extends di{constructor(){super("\u5FEB\u6620","kuaiying",{key:"kuaiying",name:"\u2601\uFE0F \u5FEB\u6620",type:3,homeCacheTTL:Tt.static},djt),this.initFilterData(),this.validateCategoryPageUrl=!0}initFilterData(){this.classes=[{type_name:"\u6885",type_id:"1"},{type_name:"\u5170",type_id:"2"},{type_name:"\u7AF9",type_id:"3"},{type_name:"\u83CA",type_id:"4"},{type_name:"\u77ED",type_id:"6"},{type_name:"\u7CBE",type_id:"5"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],6:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u4F20\u8BB0",n:"\u4F20\u8BB0"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u4F26\u7406",n:"\u4F26\u7406"},{v:"\u707E\u96BE",n:"\u707E\u96BE"},{v:"\u897F\u90E8",n:"\u897F\u90E8"},{v:"\u9B54\u5E7B",n:"\u9B54\u5E7B"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u8BB0\u5F55",n:"\u8BB0\u5F55"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5076\u50CF",n:"\u5076\u50CF"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u8A00\u60C5",n:"\u8A00\u60C5"},{v:"\u519B\u4E8B",n:"\u519B\u4E8B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u795E\u8BDD",n:"\u795E\u8BDD"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u8C0D\u6218",n:"\u8C0D\u6218"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"},{v:"\u9999\u6E2F\u5730\u533A",n:"\u9999\u6E2F\u5730\u533A"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u771F\u4EBA\u79C0",n:"\u771F\u4EBA\u79C0"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u53E3\u79C0",n:"\u53E3\u79C0"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u6E38\u620F",n:"\u6E38\u620F"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u65F6\u5C1A",n:"\u65F6\u5C1A"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u804C\u573A",n:"\u804C\u573A"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u76DB\u4F1A",n:"\u76DB\u4F1A"}],"3.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"6.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"6.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.class":[{v:"\u592E\u89C6\u76F4\u64AD",n:"\u592E\u89C6\u76F4\u64AD"},{v:"\u5730\u65B9\u76F4\u64AD",n:"\u5730\u65B9\u76F4\u64AD"},{v:"\u7EFC\u827A\u8282\u76EE",n:"\u7EFC\u827A\u8282\u76EE"},{v:"\u5A31\u4E50\u8D44\u8BAF",n:"\u5A31\u4E50\u8D44\u8BAF"}],"5.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.year":[{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},jxn=new lPe,fjt=jxn.getExports()});async function fPe(e){pjt.createRoutes(e)}var dPe,pjt,mjt,hPe=ae(()=>{U0();dPe=class extends Oi{constructor(){super("duoduo")}},pjt=new dPe,mjt=e=>pjt.getCache(e)});var pPe,Kxn,gjt,_jt=ae(()=>{_f();Nn();hPe();pPe=class extends di{constructor(){super("\u591A\u591A","duoduo",{key:"duoduo",name:"\u2601\uFE0F \u591A\u591A",type:3,homeCacheTTL:Tt.static},mjt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u591A\u591A\u7535\u5F71",type_id:"1"},{type_name:"\u591A\u591A\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"4"},{type_name:"\u77ED\u5267",type_id:"5"},{type_name:"\u7EFC\u827A",type_id:"3"},{type_name:"\u7EAA\u5F55",type_id:"20"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],20:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"20.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"20.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},Kxn=new pPe,gjt=Kxn.getExports()});async function gPe(e){Ajt.createRoutes(e)}var mPe,Ajt,Ejt,_Pe=ae(()=>{U0();mPe=class extends Oi{constructor(){super("shandian")}},Ajt=new mPe,Ejt=e=>Ajt.getCache(e)});var APe,Gxn,yjt,vjt=ae(()=>{_f();Nn();_Pe();APe=class extends di{constructor(){super("\u95EA\u7535","shandian",{key:"shandian",name:"\u2601\uFE0F \u95EA\u7535",type:3,homeCacheTTL:Tt.static},Ejt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u95EA\u7535\u7535\u5F71",type_id:"1"},{type_name:"\u95EA\u7535\u5267\u96C6",type_id:"2"},{type_name:"\u95EA\u7535\u7EFC\u827A",type_id:"3"},{type_name:"\u95EA\u7535\u52A8\u6F2B",type_id:"4"},{type_name:"\u95EA\u7535\u77ED\u5267",type_id:"30"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.id":[{v:"12",n:"\u52A8\u4F5C\u7247"},{v:"102",n:"\u559C\u5267\u7247"},{v:"103",n:"\u7231\u60C5\u7247"},{v:"104",n:"\u79D1\u5E7B\u7247"},{v:"105",n:"\u5267\u60C5\u7247"},{v:"106",n:"\u60AC\u7591\u7247"},{v:"107",n:"\u60CA\u609A\u7247"},{v:"108",n:"\u6050\u6016\u7247"},{v:"109",n:"\u72AF\u7F6A\u7247"},{v:"110",n:"\u6B66\u4FA0\u7247"},{v:"111",n:"\u5192\u9669\u7247"},{v:"112",n:"\u5947\u5E7B\u7247"},{v:"113",n:"\u6218\u4E89\u7247"},{v:"114",n:"\u7EAA\u5F55\u7247"},{v:"115",n:"\u4F26\u7406\u7247"}],"1.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.year":[{v:"2027",n:"2027"},{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"30.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"30.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"30.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"30.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.id":[{v:"401",n:"\u52A8\u753B\u7247"},{v:"402",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"403",n:"\u65E5\u97E9\u52A8\u6F2B"},{v:"404",n:"\u6B27\u7F8E\u52A8\u6F2B"},{v:"405",n:"\u6E2F\u53F0\u52A8\u6F2B"},{v:"406",n:"\u6D77\u5916\u52A8\u6F2B"}],"4.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.id":[{v:"201",n:"\u56FD\u4EA7\u5267"},{v:"202",n:"\u6E2F\u53F0\u5267"},{v:"203",n:"\u6B27\u7F8E\u5267"},{v:"204",n:"\u65E5\u97E9\u5267"},{v:"205",n:"\u6D77\u5916\u5267"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.id":[{v:"301",n:"\u5927\u9646\u7EFC\u827A"},{v:"302",n:"\u6E2F\u53F0\u7EFC\u827A"},{v:"303",n:"\u6B27\u7F8E\u7EFC\u827A"},{v:"304",n:"\u65E5\u97E9\u7EFC\u827A"}],"3.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},Gxn=new APe,yjt=Gxn.getExports()});async function yPe(e){Sjt.createRoutes(e)}var EPe,Sjt,Tjt,vPe=ae(()=>{U0();EPe=class extends Oi{constructor(){super("wouniu")}},Sjt=new EPe,Tjt=e=>Sjt.getCache(e)});function bjt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function Ijt(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function zxn(e){return/(?:115\.com\/s\/|pan\.quark\.cn\/s\/|drive\.uc\.cn\/s\/|aliyundrive\.com\/s\/|alipan\.com\/s\/|pan\.baidu\.com\/s\/|cloud\.189\.cn\/t\/|123pan\.com\/s\/|pan\.xunlei\.com\/s\/)/i.test(String(e||""))}function SPe(e,t=""){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;if(r.startsWith("//"))return`https:${r}`;let n=String(t||"").trim();if(!n)return r;try{return new URL(r,`${n.replace(/\/+$/,"")}/`).toString()}catch{return r}}var A3,POs,LOs,MOs,kOs,BOs,TPe,Yxn,Rjt,Cjt=ae(()=>{Qd();_f();Nn();su();vPe();A3=e=>e.map(t=>Array.isArray(t)?{v:t[0],n:t[1]}:{v:t,n:t}),POs=A3(["4K\u84DD\u5149","1080P\u84DD\u5149","4K WEB","3D","\u56FD\u8BED","CC\u6807\u51C6\u6536\u85CF"]),LOs=A3(["Atmos 7.1","DTS:X 7.1","TrueHD 7.1","DTS-HDMA 7.1"]),MOs=A3(["Dolby Vision"]),kOs=A3([["time","\u65F6\u95F4\u6392\u5E8F"],["hits","\u4EBA\u6C14\u6392\u5E8F"],["score","\u8BC4\u5206\u6392\u5E8F"]]),BOs=A3(["2024","2023","2022","2021","2020","2019","2018","2017","2016","2015","2014"]);TPe=class extends di{constructor(){super("\u8717\u725B","wouniu",{key:"wouniu",name:"\u2601\uFE0F \u8717\u725B",type:3,homeCacheTTL:Tt.static},Tjt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u8FDE\u7EED\u5267",type_id:"2"},{type_name:"\u7EFC\u827A",type_id:"3"},{type_name:"\u52A8\u6F2B",type_id:"4"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5C5E\u6027",key:"level"},{name:"\u97F3\u9891\u7F16\u7801",key:"version"},{name:"\u89C6\u9891\u7F16\u7801",key:"video"},{name:"\u8BC4\u5206\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5C5E\u6027",key:"level"},{name:"\u97F3\u9891\u7F16\u7801",key:"version"},{name:"\u89C6\u9891\u7F16\u7801",key:"video"},{name:"\u8BC4\u5206\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5C5E\u6027",key:"level"},{name:"\u97F3\u9891\u7F16\u7801",key:"version"},{name:"\u89C6\u9891\u7F16\u7801",key:"video"},{name:"\u8BC4\u5206\u6392\u5E8F",key:"by"}],4:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5C5E\u6027",key:"level"},{name:"\u97F3\u9891\u7F16\u7801",key:"version"},{name:"\u89C6\u9891\u7F16\u7801",key:"video"},{name:"\u8BC4\u5206\u6392\u5E8F",key:"by"}]},this.filterValues={"1.id":[{v:"6",n:"\u52A8\u4F5C\u7247"},{v:"7",n:"\u559C\u5267\u7247"},{v:"8",n:"\u7231\u60C5\u7247"},{v:"9",n:"\u79D1\u5E7B\u7247"},{v:"10",n:"\u6050\u6016\u7247"},{v:"11",n:"\u5267\u60C5\u7247"},{v:"12",n:"\u6218\u4E89\u7247"},{v:"19",n:"\u52A8\u753B\u7247"},{v:"20",n:"\u5947\u5E7B\u7247"},{v:"21",n:"\u60AC\u7591\u7247"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.year":[{v:"2025",n:"2025"},{v:"2026",n:"2026"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"}],"1.level":[{v:"4K\u84DD\u5149",n:"4K\u84DD\u5149"},{v:"1080P\u84DD\u5149",n:"1080P\u84DD\u5149"},{v:"4K+WEB",n:"4K WEB"},{v:"3D",n:"3D"},{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"CC\u6807\u51C6\u6536\u85CF",n:"CC\u6807\u51C6\u6536\u85CF"}],"1.version":[{v:"Atmos+7.1",n:"Atmos 7.1"},{v:"DTS:X+7.1",n:"DTS:X 7.1"},{v:"TrueHD+7.1",n:"TrueHD 7.1"},{v:"DTS-HDMA+7.1",n:"DTS-HDMA 7.1"}],"1.video":[{v:"Dolby+Vision",n:"Dolby Vision"}],"1.by":[{v:"time",n:"\u65F6\u95F4"},{v:"hits",n:"\u4EBA\u6C14"},{v:"score",n:"\u8BC4\u5206"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u6E2F\u53F0\u5267"},{v:"15",n:"\u65E5\u97E9\u5267"},{v:"16",n:"\u6B27\u7F8E\u5267"},{v:"23",n:"\u77ED\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.year":[{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"}],"2.level":[{v:"4K\u84DD\u5149",n:"4K\u84DD\u5149"},{v:"1080P\u84DD\u5149",n:"1080P\u84DD\u5149"},{v:"4K+WEB",n:"4K WEB"},{v:"3D",n:"3D"},{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"CC\u6807\u51C6\u6536\u85CF",n:"CC\u6807\u51C6\u6536\u85CF"}],"2.version":[{v:"Atmos+7.1",n:"Atmos 7.1"},{v:"DTS:X+7.1",n:"DTS:X 7.1"},{v:"TrueHD+7.1",n:"TrueHD 7.1"},{v:"DTS-HDMA+7.1",n:"DTS-HDMA 7.1"}],"2.video":[{v:"Dolby+Vision",n:"Dolby Vision"}],"2.by":[{v:"time",n:"\u65F6\u95F4"},{v:"hits",n:"\u4EBA\u6C14"},{v:"score",n:"\u8BC4\u5206"}],"3.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.year":[{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"}],"3.level":[{v:"4K\u84DD\u5149",n:"4K\u84DD\u5149"},{v:"1080P\u84DD\u5149",n:"1080P\u84DD\u5149"},{v:"4K+WEB",n:"4K WEB"},{v:"3D",n:"3D"},{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"CC\u6807\u51C6\u6536\u85CF",n:"CC\u6807\u51C6\u6536\u85CF"}],"3.version":[{v:"Atmos+7.1",n:"Atmos 7.1"},{v:"DTS:X+7.1",n:"DTS:X 7.1"},{v:"TrueHD+7.1",n:"TrueHD 7.1"},{v:"DTS-HDMA+7.1",n:"DTS-HDMA 7.1"}],"3.video":[{v:"Dolby+Vision",n:"Dolby Vision"}],"3.by":[{v:"time",n:"\u65F6\u95F4"},{v:"hits",n:"\u4EBA\u6C14"},{v:"score",n:"\u8BC4\u5206"}],"4.id":[{v:"28",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"29",n:"\u65E5\u97E9\u52A8\u6F2B"},{v:"30",n:"\u6E2F\u53F0\u52A8\u6F2B"},{v:"31",n:"\u6B27\u7F8E\u52A8\u6F2B"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.year":[{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"}],"4.level":[{v:"4K\u84DD\u5149",n:"4K\u84DD\u5149"},{v:"1080P\u84DD\u5149",n:"1080P\u84DD\u5149"},{v:"4K+WEB",n:"4K WEB"},{v:"3D",n:"3D"},{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"CC\u6807\u51C6\u6536\u85CF",n:"CC\u6807\u51C6\u6536\u85CF"}],"4.version":[{v:"Atmos+7.1",n:"Atmos 7.1"},{v:"DTS:X+7.1",n:"DTS:X 7.1"},{v:"TrueHD+7.1",n:"TrueHD 7.1"},{v:"DTS-HDMA+7.1",n:"DTS-HDMA 7.1"}],"4.video":[{v:"Dolby+Vision",n:"Dolby Vision"}],"4.by":[{v:"time",n:"\u65F6\u95F4"},{v:"hits",n:"\u4EBA\u6C14"},{v:"score",n:"\u8BC4\u5206"}]}}buildFilterUrl(t,r,n={}){let s=t.replace(/\/index\.php\/vod\/show\/id\/[^/]+$/i,""),i=new Array(12).fill("");i[0]=String(n.id||r||"1"),i[1]=String(n.area||""),i[2]=String(n.by||""),i[3]=String(n.class||""),i[4]=String(n.lang||""),i[5]=String(n.letter||""),i[9]=String(n.video||""),i[10]=String(n.level||""),i[11]=String(n.year||"");let a=i.map(c=>encodeURIComponent(c)).join("-"),o=String(n.version||"").trim();return o?`${s}/vodshow/${a}/version/${encodeURIComponent(o)}`:`${s}/vodshow/${a}`}async category(t,r){let n=await super.category(t,r);if(!Array.isArray(n?.list)||n.list.length===0)return n;let s="";try{s=await this.getUrl(t.server)}catch{return n}return{...n,list:n.list.map(i=>{let a=Ijt(i?.vod_id),o=SPe(i?.vod_pic,s);return{...i,vod_id:bjt(a.id,{...a.meta,vod_pic:o}),vod_pic:o}})}}async detail(t,r){try{let n=await this.getUrl(t.server),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s){let{id:o,meta:c}=Ijt(a);if(o)try{let u=this.buildDetailUrl(n,o),l=await this.request(u,!0),d=er(l),f={vod_id:o,vod_name:d(".page-title").first().text().trim(),vod_pic:SPe(c.vod_pic||d(".mobile-play img[data-src], .video-cover img[data-src]").first().attr("data-src")||"",n),vod_remarks:c.vod_remarks||"",vod_content:d(".vod_content").first().text().replace(/收起\s*$/u,"").trim()};d(".video-info-items").each((p,m)=>{let _=d(m).find(".video-info-itemtitle").first().text().trim(),g=d(m).find(".video-info-item a").map((y,A)=>d(A).text().trim()).get().filter(Boolean).join(", ");_.includes("\u5BFC\u6F14")&&(f.vod_director=g),_.includes("\u4E3B\u6F14")&&(f.vod_actor=g),_.includes("\u4E0A\u6620")&&(f.vod_year=d(m).find(".video-info-item").text().trim())});let h=new Set;if(d(".module-row-info [data-clipboard-text], .module-row-info a[href]").each((p,m)=>{let _=[d(m).attr("data-clipboard-text"),d(m).attr("href")];for(let g of _){let y=String(g||"").trim();zxn(y)&&h.add(y)}}),h.size>0){let p=await Bs([...h],t).catch(m=>(console.warn(`[${this.siteName}] \u7F51\u76D8\u8BE6\u60C5\u89E3\u6790\u5931\u8D25:`,m.message),null));p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls,Array.isArray(p.links)&&p.links.length>0&&(f.vod_links=p.links))}i.push(f)}catch(u){console.warn(`[${this.siteName}] \u83B7\u53D6\u8BE6\u60C5\u5931\u8D25 (id: ${o}):`,u.message),i.push({vod_id:o,vod_name:"\u83B7\u53D6\u5931\u8D25",vod_pic:c.vod_pic||"",vod_remarks:c.vod_remarks||"\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25",vod_content:`\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25: ${u.message}`})}}return{list:i}}catch(n){return console.warn(`[${this.siteName}] detail \u5931\u8D25:`,n.message),{list:[]}}}async search(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server),i=String(t.body.wd||"").trim();if(!i)return{page:n,pagecount:n,list:[]};let a=await this.request(`${s}/vodsearch/${encodeURIComponent(i)}-------------/page/${n}.html`,!0,{timeout:8e3,retryCount:0}),o=er(a),c=o(".module-search-item").map((l,d)=>{let f=o(d),h=f.find(".video-serial").first(),p=h.attr("href")||"",m=SPe(this.fixImgUrl(f.find(".module-item-pic > img").attr("data-src")||""),s),_=h.text().trim();return{vod_id:bjt(p,{vod_pic:m,vod_remarks:_}),vod_name:h.attr("title")||"",vod_pic:m,vod_remarks:_}}).get().filter(l=>l.vod_name&&l.vod_id),u=o('#page a[title="\u4E0B\u4E00\u9875"], .page-next[title="\u4E0B\u4E00\u9875"]').length>0;return{page:n,pagecount:u?n+1:n,limit:10,total:u?n*10+1:(n-1)*10+c.length,list:c}}catch(s){return console.warn(`[${this.siteName}] search \u5931\u8D25:`,s.message),{page:n,pagecount:n,limit:10,total:0,list:[]}}}},Yxn=new TPe,Rjt=Yxn.getExports()});var Ljt={};Ft(Ljt,{default:()=>lwn});function F0(e){return e.map(t=>Array.isArray(t)?{n:t[0],v:t[1]}:{n:t,v:t})}function Mn(e,t,r=""){return{key:e,name:"",init:r,value:t}}function OPe(e){return e==null?e:JSON.parse(JSON.stringify(e))}function wPe(e,t){return JSON.stringify({site:String(e||"").trim(),id:String(t||"").trim()})}function swn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.site&&t.id)return{site:String(t.site||"").trim(),id:String(t.id||"").trim()}}catch{}return{site:"",id:String(e||"").trim()}}function iwn(e){return String(e.url||"").split("?")[0].replace(/\/(?:init|home|category|detail|play|search)$/i,"")}function awn(e={}){let t=e.filters||e.extend||e.ext||{};return t&&typeof t=="object"?t:{}}function Djt(e){return Array.isArray(e?.class)?e.class.filter(Boolean):[]}function IPe(e,t){let n=(e?.filters||{})?.[String(t||"")];return Array.isArray(n)?OPe(n):[]}function Pjt(e){let t=nwn[e.key];return t?OPe(t):typeof e.spider?.staticHome=="function"?e.spider.staticHome():{class:[],filters:{}}}function own(e,t=""){let r=e.map(n=>({v:String(n?.type_id||"").trim(),n:String(n?.type_name||"").trim()})).filter(n=>n.v&&n.n);return r.length===0?null:{name:"\u5206\u7C7B",key:"cat",init:t||r[0].v,value:r}}function RPe(e,t,r=[]){let n=own(e,t),s=Array.isArray(r)?OPe(r):[];return[...n?[n]:[],...s.filter(i=>i?.key!=="cat")]}function cwn(e,t=""){let r=String(t||"").trim();return r?`${e.name} \xB7 ${r}`:e.name}function CPe(e,t,r={}){if(!t||typeof t!="object")return t;let n=r.sourceId==null?t.vod_id:r.sourceId,s={...t,vod_id:wPe(e.key,n)};return r.withSiteRemark&&(s.vod_remarks=cwn(e,t.vod_remarks)),s}function xPe(e=1){return{page:e,pagecount:e,limit:72,total:0,list:[]}}var xjt,wjt,zw,Njt,Qxn,Ojt,Wxn,Xxn,Jxn,bPe,Zxn,ewn,Gw,twn,xy,wy,rwn,nwn,NPe,uwn,lwn,Mjt=ae(()=>{su();F7t();V7t();z7t();X7t();tjt();ijt();ujt();hjt();_jt();vjt();Cjt();xjt="wanoujuhe",wjt="_wanoujuhe",zw=[{key:"wogg",name:"\u73A9\u5076",spider:U7t},{key:"muou",name:"\u6728\u5076",spider:H7t},{key:"erxiao",name:"\u4E8C\u5C0F",spider:G7t},{key:"zhizhen",name:"\u81F3\u81FB",spider:W7t},{key:"ouge",name:"\u6B27\u6B4C",spider:ejt},{key:"labi",name:"\u8721\u7B14",spider:sjt},{key:"huban",name:"\u864E\u6591",spider:cjt},{key:"kuaiying",name:"\u5FEB\u6620",spider:fjt},{key:"duoduo",name:"\u591A\u591A",spider:gjt},{key:"shandian",name:"\u95EA\u7535",spider:yjt},{key:"wouniu",name:"\u8717\u725B",spider:Rjt}],Njt=new Map(zw.map(e=>[e.key,e]));Qxn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"44",type_name:"\u81FB\u5F69\u89C6\u754C"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55\u7247"},{type_id:"5",type_name:"\u97F3\u4E50"}],Ojt=F0([["\u5168\u90E8",""],"\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u8B66\u532A","\u72AF\u7F6A","\u53E4\u88C5","\u5947\u5E7B","\u6B66\u4FA0","\u5192\u9669","\u67AA\u6218","\u6050\u6016","\u60AC\u7591","\u60CA\u609A","\u7ECF\u5178","\u9752\u6625","\u6587\u827A","\u5FAE\u7535\u5F71","\u5386\u53F2"]),Wxn=F0([["\u5168\u90E8",""],"\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u8B66\u532A","\u72AF\u7F6A","\u53E4\u88C5","\u5947\u5E7B","\u6B66\u4FA0","\u5192\u9669","\u67AA\u6218","\u6050\u6016","\u60AC\u7591","\u60CA\u609A","\u7ECF\u5178","\u9752\u6625","\u6587\u827A","\u5FAE\u7535\u5F71","\u5386\u53F2"]),Xxn=F0([["\u5168\u90E8",""],"\u7537\u9891","\u5973\u9891","\u90FD\u5E02","\u751C\u5BA0","\u5E74\u4EE3","\u7A7F\u8D8A","\u53E4\u88C5","\u4EB2\u60C5","\u5947\u5E7B","\u840C\u5B9D","\u91CD\u751F","\u5192\u9669","\u9006\u88AD","\u8650\u604B","\u9274\u5B9D","\u590D\u4EC7","\u4FEE\u4ED9"]),Jxn=F0([["\u5168\u90E8",""],"\u60C5\u611F","\u79D1\u5E7B","\u70ED\u8840","\u63A8\u7406","\u641E\u7B11","\u5192\u9669","\u841D\u8389","\u6821\u56ED","\u52A8\u4F5C","\u673A\u6218","\u8FD0\u52A8","\u6218\u4E89","\u5C11\u5E74","\u5C11\u5973","\u793E\u4F1A","\u539F\u521B","\u4EB2\u5B50","\u76CA\u667A","\u52B1\u5FD7","\u5176\u4ED6"]),bPe=F0([["\u5168\u90E8",""],"\u4E2D\u56FD\u5927\u9646","\u4E2D\u56FD\u9999\u6E2F","\u4E2D\u56FD\u53F0\u6E7E","\u7F8E\u56FD","\u897F\u73ED\u7259","\u6CD5\u56FD","\u82F1\u56FD","\u65E5\u672C","\u97E9\u56FD","\u6CF0\u56FD","\u5FB7\u56FD","\u5370\u5EA6","\u610F\u5927\u5229","\u52A0\u62FF\u5927","\u5176\u4ED6"]),Zxn=F0([["\u5168\u90E8",""],"\u4E2D\u56FD\u5927\u9646","\u65E5\u672C","\u7F8E\u56FD","\u82F1\u56FD","\u897F\u73ED\u7259","\u6CD5\u56FD","\u82F1\u56FD","\u5176\u4ED6"]),ewn=F0([["\u5168\u90E8",""],"\u4E2D\u56FD\u5927\u9646","\u4E2D\u56FD\u53F0\u6E7E","\u7F8E\u56FD","\u6CD5\u56FD","\u82F1\u56FD","\u65E5\u672C","\u97E9\u56FD"]),Gw=F0([["\u5168\u90E8",""],"2026","2025","2024","2023","2022","2021","2020","2019","2018","2017","2016","2015","2014","2013","2012","2011","2010"]),twn=F0([["\u5168\u90E8",""],"2026","2025","2024","2023","2022","2021"]),xy=F0([["\u5168\u90E8",""],"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",["0-9","0"]]),wy=F0([["\u65F6\u95F4","time"],["\u4EBA\u6C14","hits"],["\u8BC4\u5206","score"]]),rwn={1:[Mn("3",Ojt),Mn("1",bPe),Mn("11",Gw),Mn("5",xy),Mn("2",wy,"time")],2:[Mn("3",Ojt),Mn("1",bPe),Mn("11",Gw),Mn("5",xy),Mn("2",wy,"time")],44:[Mn("3",Wxn),Mn("1",bPe),Mn("11",Gw),Mn("5",xy),Mn("2",wy,"time")],6:[Mn("3",Xxn),Mn("11",twn),Mn("5",xy),Mn("2",wy,"time")],3:[Mn("3",Jxn),Mn("1",Zxn),Mn("11",Gw),Mn("5",xy),Mn("2",wy,"time")],4:[Mn("1",ewn),Mn("11",Gw),Mn("5",xy),Mn("2",wy,"time")],46:[Mn("11",Gw),Mn("5",xy),Mn("2",wy,"time")],5:[Mn("5",xy),Mn("2",wy,"time")]},nwn={wogg:{class:Qxn,filters:rwn}};NPe=class{constructor(){this.meta={key:xjt,name:"\u2601\uFE0F \u73A9\u5076",type:3}}async injectSource(t,r,n,s={}){let a=`${iwn(t)}/${wjt}/${r.key}/${n}`,o=await t.server.inject({method:"POST",url:a,payload:s});if(o.statusCode>=400)throw new Error(`${r.name} ${n} HTTP ${o.statusCode}`);return o.json()}resolveSourceTid(t,r){let n=String(r.cat||"").trim(),s=Pjt(t),i=Djt(s);return{homeResult:s,classes:i,tid:n||String(i[0]?.type_id||"").trim()}}async home(t,r){let n={};for(let s of zw){let i=Pjt(s),a=Djt(i),o=String(a[0]?.type_id||"").trim(),c=o?IPe(i,o):[],u=RPe(a,o,c);u.length>0&&(n[s.key]=u)}return{class:zw.map(s=>({type_id:s.key,type_name:s.name})),filters:n}}async category(t,r){let n=Number.parseInt(t.body?.page,10)>0?Number.parseInt(t.body.page,10):1,s=String(t.body?.id||"").trim(),i=Njt.get(s);if(!i)return xPe(n);let a=awn(t.body),{homeResult:o,classes:c,tid:u}=this.resolveSourceTid(i,a);if(!u)return xPe(n);let l={...a};delete l.cat;let d=IPe(o,u);try{let f=await this.injectSource(t,i,"category",{...t.body||{},id:u,filters:l,extend:l,ext:l});return{...f,page:f?.page||n,pagecount:f?.pagecount||n,list:Array.isArray(f?.list)?f.list.map(h=>CPe(i,h)):[],filter:RPe(c,u,d)}}catch(f){return console.warn(`[\u73A9\u5076\u805A\u5408] ${i.name} category \u5931\u8D25:`,f.message),{...xPe(n),filter:RPe(c,u,IPe(o,u))}}}async detail(t,r){let n=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],s=new Map,i=new Array(n.length).fill(null);return n.forEach((a,o)=>{let c=swn(a),u=Njt.get(c.site);if(!u||!c.id){i[o]={vod_id:String(a||""),vod_name:"\u83B7\u53D6\u5931\u8D25",vod_remarks:"\u65E0\u6548\u7684\u805A\u5408\u8BE6\u60C5 ID"};return}s.has(u.key)||s.set(u.key,{source:u,items:[]}),s.get(u.key).items.push({index:o,id:c.id})}),await Promise.all(Array.from(s.values()).map(async({source:a,items:o})=>{try{let c=await this.injectSource(t,a,"detail",{...t.body||{},id:o.map(l=>l.id)}),u=Array.isArray(c?.list)?c.list:[];o.forEach((l,d)=>{let f=u[d];i[l.index]=f?CPe(a,f,{sourceId:l.id}):{vod_id:wPe(a.key,l.id),vod_name:"\u83B7\u53D6\u5931\u8D25",vod_remarks:`${a.name} \u8BE6\u60C5\u4E3A\u7A7A`}})}catch(c){console.warn(`[\u73A9\u5076\u805A\u5408] ${a.name} detail \u5931\u8D25:`,c.message),o.forEach(u=>{i[u.index]={vod_id:wPe(a.key,u.id),vod_name:"\u83B7\u53D6\u5931\u8D25",vod_remarks:`${a.name} \u8BE6\u60C5\u83B7\u53D6\u5931\u8D25`,vod_content:c.message}})}})),{list:i.filter(Boolean)}}async search(t,r){let n=Number.parseInt(t.body?.page,10)>0?Number.parseInt(t.body.page,10):1;if(!String(t.body?.wd||"").trim())return{page:n,pagecount:n,list:[]};let i=await Promise.all(zw.map(async c=>{try{let u=await this.injectSource(t,c,"search",t.body||{});return{source:c,result:u}}catch(u){return console.warn(`[\u73A9\u5076\u805A\u5408] ${c.name} search \u5931\u8D25:`,u.message),{source:c,result:{page:n,pagecount:n,list:[]}}}})),a=i.flatMap(({source:c,result:u})=>Array.isArray(u?.list)?u.list.map(l=>CPe(c,l,{withSiteRemark:!0})):[]),o=i.reduce((c,{result:u})=>Math.max(c,Number.parseInt(u?.pagecount,10)||n),n);return{page:n,pagecount:o,list:a}}async createApi(t){for(let r of zw)await t.register(r.spider.api,{prefix:`/${wjt}/${r.key}`});t.post("/init",Wi),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Zs),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),check:async t=>(await Promise.allSettled(zw.map(n=>n.spider.check?.(t)))).some(n=>n.status==="fulfilled"&&n.value)?xjt:null}}},uwn=new NPe,lwn=uwn.getExports()});var Ujt=S((XOs,Bjt)=>{var kjt=Array.prototype.slice;Bjt.exports=function(t,r){return function(){var n,s=arguments,i=s.length;return i!==0&&typeof s[i-1]!="function"&&(s=kjt.call(arguments),n=new Promise(function(a,o){s.push(function(c,u){c!=null?o(c):a(r!==void 0?r.apply(this,kjt.call(arguments,1)):u)})})),t.apply(this,s),n}}});var $jt=S((JOs,Fjt)=>{Fjt.exports={request:[["StructureSize",2,24],["Flags",2,0],["Reserved",4,0],["FileId",16]],response:[["StructureSize",2],["Flags",2],["Reserved",4],["CreationTime",8],["LastAccessTime",8],["LastWriteTime",8],["ChangeTime",8],["AllocationSize",8],["EndofFile",8],["FileAttributes",4]]}});var Ic=S((ZOs,qjt)=>{qjt.exports={FILE_SUPERSEDE:0,FILE_OPEN:1,FILE_CREATE:2,FILE_OPEN_IF:3,FILE_OVERWRITE:4,FILE_OVERWRITE_IF:5,MAX_READ_LENGTH:65536,MAX_WRITE_LENGTH:65423,FILE_SHARE_NONE:0,FILE_SHARE_READ:1,FILE_SHARE_WRITE:2,FILE_SHARE_DELETE:4,DELETE:65536,FILE_APPEND_DATA:4,FILE_DELETE_CHILD:64,FILE_READ_ATTRIBUTES:128,FILE_READ_DATA:1,FILE_READ_EA:8,FILE_WRITE_ATTRIBUTES:256,FILE_WRITE_DATA:2,FILE_WRITE_EA:16,READ_CONTROL:131072,SYNCHRONIZE:1048576,WRITE_DAC:262144,DIRECTORY:16}});var Vjt=S((e2s,Hjt)=>{var dwn=Ic();Hjt.exports={request:[["StructureSize",2,57],["SecurityFlags",1,0],["RequestedOplockLevel",1,0],["ImpersonationLevel",4,2],["SmbCreateFlags",8,0],["Reserved",8,0],["DesiredAccess",4,1048705],["FileAttributes",4,0],["ShareAccess",4,7],["CreateDisposition",4,dwn.FILE_OPEN],["CreateOptions",4,32],["NameOffset",2],["NameLength",2],["CreateContextsOffset",4],["CreateContextsLength",4],["Buffer","NameLength"],["Reserved2",2,16896],["CreateContexts","CreateContextsLength",""]],response:[["StructureSize",2],["OplockLevel",1],["Flags",1],["CreateAction",4],["CreationTime",8],["LastAccessTime",8],["LastWriteTime",8],["ChangeTime",8],["AllocationSize",8],["EndofFile",8],["FileAttributes",4],["Reserved2",4],["FileId",16],["CreateContextsOffset",4],["CreateContextsLength",4],["Buffer","CreateContextsLength"]]}});var Kjt=S((t2s,jjt)=>{jjt.exports={request:[["StructureSize",2,36],["DialectCount",2,2],["SecurityMode",2,1],["Reserved",2,0],["Capabilities",4,0],["ClientGuid",16,0],["ClientStartTime",8,0],["Dialects",4,Buffer.from([2,2,16,2])]],response:[["StructureSize",2],["SecurityMode",2],["DialectRevision",2],["Reserved",2],["ServerGuid",16],["Capabilities",4],["MaxTransactSize",4],["MaxReadSize",4],["MaxWriteSize",4],["SystemTime",8],["ServerStartTime",8],["SecurityBufferOffset",2],["SecurityBufferLength",2],["Reserved2",4],["Buffer","SecurityBufferLength"]]}});var zjt=S((r2s,Gjt)=>{Gjt.exports={request:[["StructureSize",2,33],["FileInformationClass",1,37],["Flags",1,0],["FileIndex",4,0],["FileId",16],["FileNameOffset",2,96],["FileNameLength",2],["OutputBufferLength",4,65536],["Buffer","FileNameLength"]],response:[["StructureSize",2],["OutputBufferOffset",2],["OutputBufferLength",4],["Buffer","OutputBufferLength"]]}});var Qjt=S((n2s,Yjt)=>{Yjt.exports={request:[["StructureSize",2,49],["Padding",1,80],["Flags",1,0],["Length",4],["Offset",8],["FileId",16],["MinimumCount",4,0],["Channel",4,0],["RemainingBytes",4,0],["ReadChannelInfoOffset",2,0],["ReadChannelInfoLength",2,0],["Buffer",1,0]],response:[["StructureSize",2],["DataOffset",1],["Reserved",1],["DataLength",4],["DataRemaining",4],["Reserved2",4],["Buffer","DataLength"]]}});var Xjt=S((s2s,Wjt)=>{Wjt.exports={request:[["StructureSize",2,25],["Flags",1,0],["SecurityMode",1,1],["Capabilities",4,1],["Channel",4,0],["SecurityBufferOffset",2,88],["SecurityBufferLength",2],["PreviousSessionId",8,0],["Buffer","SecurityBufferLength"]],response:[["StructureSize",2],["SessionFlags",2],["SecurityBufferOffset",2],["SecurityBufferLength",2],["Buffer","SecurityBufferLength"]]}});var Zjt=S((i2s,Jjt)=>{Jjt.exports={request:[["StructureSize",2,33],["InfoType",1,1],["FileInfoClass",1],["BufferLength",4],["BufferOffset",2,96],["Reserved",2,0],["AdditionalInformation",4,0],["FileId",16],["Buffer","BufferLength"]],response:[["StructureSize",2]]}});var tKt=S((a2s,eKt)=>{eKt.exports={request:[["StructureSize",2,9],["Reserved",2,0],["PathOffset",2,72],["PathLength",2],["Buffer","PathLength"]],response:[["StructureSize",2],["ShareType",1],["Reserved",1],["ShareFlags",4],["Capabilities",4],["MaximalAccess",4]]}});var nKt=S((o2s,rKt)=>{rKt.exports={request:[["StructureSize",2,49],["DataOffset",2,112],["Length",4,0],["Offset",8],["FileId",16],["Channel",4,0],["RemainingBytes",4,0],["WriteChannelInfoOffset",2,0],["WriteChannelInfoLength",2,0],["Flags",4,0],["Buffer","Length"]],response:[["StructureSize",2],["Reserved",2],["Count",4],["Remaining",4],["WriteChannelInfoOffset",2],["WriteChannelInfoLength",2]]}});var lu=S((c2s,fKt)=>{var sKt={close:$jt(),create:Vjt(),negotiate:Kjt(),query_directory:zjt(),read:Qjt(),session_setup:Xjt(),set_info:Zjt(),tree_connect:tKt(),write:nKt()},iKt=Buffer.from([254,83,77,66]),Yw={Command:{NEGOTIATE:0,SESSION_SETUP:1,LOGOFF:2,TREE_CONNECT:3,TREE_DISCONNECT:4,CREATE:5,CLOSE:6,FLUSH:7,READ:8,WRITE:9,LOCK:10,IOCTL:11,CANCEL:12,ECHO:13,QUERY_DIRECTORY:14,CHANGE_NOTIFY:15,QUERY_INFO:16,SET_INFO:17,OPLOCK_BREAK:18}},mW=64,aKt=function(e,t){return[["ProtocolId",4,iKt],["StructureSize",2,mW],["CreditCharge",2,0],["Status",4,0],["Command",2],["Credit",2,126],["Flags",4,0],["NextCommand",4,0],["MessageId",4],["MessageIdHigh",4,0],["ProcessId",4,e],["TreeId",4,0],["SessionId",8,t],["Signature",16,0]]},oKt=function(e,t){return[["ProtocolId",4,iKt],["StructureSize",2,mW],["CreditCharge",2,0],["Status",4,0],["Command",2],["Credit",2,126],["Flags",4,0],["NextCommand",4,0],["MessageId",4],["MessageIdHigh",4,0],["AsyncId",8],["SessionId",8,t],["Signature",16,0]]},fwn=fKt.exports=function(e){this.headers={},e&&e.headers&&this.setHeaders(e.headers),this.request={},e&&e.request&&this.setRequest(e.request),this.response={}},Qw=fwn.prototype={};Qw.setHeaders=function(e){for(var t in e)this.headers[t]=e[t];if(this.structure=sKt[this.headers.Command.toLowerCase()],!this.structure)throw new Error("Unknown SMB2 structure: "+this.headers.Command)};Qw.getHeaders=function(){return this.headers};Qw.setRequest=function(e){this.request=e};Qw.getResponse=function(){return this.response};Qw.getBuffer=function(e){var t=Buffer.allocUnsafe(65535),r=0;this.isMessageIdSetted||(this.isMessageIdSetted=!0,this.headers.MessageId=e.messageId++),r+=_wn(this,t),r+=dKt(this,t,mW);var n=Buffer.allocUnsafe(r);return t.copy(n,0,0,r),n};Qw.parseBuffer=function(e){gwn(this,e),Awn(this,e,mW)};function hwn(e,t){if(Buffer.isBuffer(e))return e;if(typeof e=="string")return Buffer.from(e);for(var r=Buffer.allocUnsafe(t),n=0;n>n*8,n);return r}function cKt(e){if(!Buffer.isBuffer(e))return e;for(var t=0,r=0;r{hKt.exports={getStatus:function(e){var t="0x"+("00000000"+e.toString(16)).toUpperCase().substr(-8),r=vwn[t]||Swn[t]||{code:"ERROR_UNRECOGNIZED",message:"Unrecognized error"};r.value=e,r.valueHex=t;var n=e>>16&2047;r.facility=ywn[n]||{code:"FACILITY_UNRECOGNIZED",message:"Unrecognized facility"},r.facility.value=n;var s=e>>30&3;return r.severity=Ewn[s]||{code:"STATUS_UNRECOGNIZED",message:"Unrecognized status"},r.severity.value=s,r},getErrorMessage:function(e){return e.code+" ("+e.valueHex+") : "+e.message}};var Ewn={0:{code:"STATUS_SEVERITY_SUCCESS",message:"Success"},1:{code:"STATUS_SEVERITY_INFORMATIONAL",message:"Informational"},2:{code:"STATUS_SEVERITY_WARNING",message:"Warning"},3:{code:"STATUS_SEVERITY_ERROR",message:"Error"}},ywn={0:{code:"FACILITY_NULL",message:"The default facility code."},1:{code:"FACILITY_RPC",message:"The source of the error code is an RPC subsystem."},2:{code:"FACILITY_DISPATCH",message:"The source of the error code is a COM Dispatch."},3:{code:"FACILITY_STORAGE",message:"The source of the error code is OLE Storage."},4:{code:"FACILITY_ITF",message:"The source of the error code is COM/OLE Interface management."},7:{code:"FACILITY_WIN32",message:"This region is reserved to map undecorated error codes into HRESULTs."},8:{code:"FACILITY_WINDOWS",message:"The source of the error code is the Windows subsystem."},9:{code:"FACILITY_SECURITY",message:"The source of the error code is the Security API layer."},10:{code:"FACILITY_CONTROL",message:"The source of the error code is the control mechanism."},11:{code:"FACILITY_CERT",message:"The source of the error code is a certificate client or server?"},12:{code:"FACILITY_INTERNET",message:"The source of the error code is Wininet related."},13:{code:"FACILITY_MEDIASERVER",message:"The source of the error code is the Windows Media Server."},14:{code:"FACILITY_MSMQ",message:"The source of the error code is the Microsoft Message Queue."},15:{code:"FACILITY_SETUPAPI",message:"The source of the error code is the Setup API."},16:{code:"FACILITY_SCARD",message:"The source of the error code is the Smart-card subsystem."},17:{code:"FACILITY_COMPLUS",message:"The source of the error code is COM+."},18:{code:"FACILITY_AAF",message:"The source of the error code is the Microsoft agent."},19:{code:"FACILITY_URT",message:"The source of the error code is .NET CLR."},20:{code:"FACILITY_ACS",message:"The source of the error code is the audit collection service."},21:{code:"FACILITY_DPLAY",message:"The source of the error code is Direct Play."},22:{code:"FACILITY_UMI",message:"The source of the error code is the ubiquitous memoryintrospection service."},23:{code:"FACILITY_SXS",message:"The source of the error code is Side-by-side servicing."},24:{code:"FACILITY_WINDOWS_CE",message:"The error code is specific to Windows CE."},25:{code:"FACILITY_HTTP",message:"The source of the error code is HTTP support."},26:{code:"FACILITY_USERMODE_COMMONLOG",message:"The source of the error code is common Logging support."},31:{code:"FACILITY_USERMODE_FILTER_MANAGER",message:"The source of the error code is the user mode filter manager."},32:{code:"FACILITY_BACKGROUNDCOPY",message:"The source of the error code is background copy control"},33:{code:"FACILITY_CONFIGURATION",message:"The source of the error code is configuration services."},34:{code:"FACILITY_STATE_MANAGEMENT",message:"The source of the error code is state management services."},35:{code:"FACILITY_METADIRECTORY",message:"The source of the error code is the Microsoft Identity Server."},36:{code:"FACILITY_WINDOWSUPDATE",message:"The source of the error code is a Windows update."},37:{code:"FACILITY_DIRECTORYSERVICE",message:"The source of the error code is Active Directory."},38:{code:"FACILITY_GRAPHICS",message:"The source of the error code is the graphics drivers."},39:{code:"FACILITY_SHELL",message:"The source of the error code is the user Shell."},40:{code:"FACILITY_TPM_SERVICES",message:"The source of the error code is the Trusted Platform Module services."},41:{code:"FACILITY_TPM_SOFTWARE",message:"The source of the error code is the Trusted Platform Module applications."},48:{code:"FACILITY_PLA",message:"The source of the error code is Performance Logs and Alerts"},49:{code:"FACILITY_FVE",message:"The source of the error code is Full volume encryption."},50:{code:"FACILITY_FWP",message:"he source of the error code is the Firewall Platform."},51:{code:"FACILITY_WINRM",message:"The source of the error code is the Windows Resource Manager."},52:{code:"FACILITY_NDIS",message:"The source of the error code is the Network Driver Interface."},53:{code:"FACILITY_USERMODE_HYPERVISOR",message:"The source of the error code is the Usermode Hypervisor components."},54:{code:"FACILITY_CMI",message:"The source of the error code is the Configuration Management Infrastructure."},55:{code:"FACILITY_USERMODE_VIRTUALIZATION",message:"The source of the error code is the user mode virtualization subsystem."},56:{code:"FACILITY_USERMODE_VOLMGR",message:"The source of the error code is the user mode volume manager"},57:{code:"FACILITY_BCD",message:"The source of the error code is the Boot Configuration Database."},58:{code:"FACILITY_USERMODE_VHD",message:"The source of the error code is user mode virtual hard disk support."},60:{code:"FACILITY_SDIAG",message:"The source of the error code is System Diagnostics."},61:{code:"FACILITY_WEBSERVICES",message:"The source of the error code is the Web Services."},80:{code:"FACILITY_WINDOWS_DEFENDER",message:"The source of the error code is a Windows Defender component."},81:{code:"FACILITY_OPC",message:"The source of the error code is the open connectivity service."}},vwn={"0x00000000":{code:"STATUS_SUCCESS",message:"The operation completed successfully."},"0x00000001":{code:"STATUS_WAIT_1",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x00000002":{code:"STATUS_WAIT_2",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x00000003":{code:"STATUS_WAIT_3",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x0000003F":{code:"STATUS_WAIT_63",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x00000080":{code:"STATUS_ABANDONED",message:"The caller attempted to wait for a mutex that has been abandoned."},"0x000000BF":{code:"STATUS_ABANDONED_WAIT_63",message:"The caller attempted to wait for a mutex that has been abandoned."},"0x000000C0":{code:"STATUS_USER_APC",message:"A user-mode APC was delivered before the given Interval expired."},"0x00000101":{code:"STATUS_ALERTED",message:"The delay completed because the thread was alerted."},"0x00000102":{code:"STATUS_TIMEOUT",message:"The given Timeout interval expired."},"0x00000103":{code:"STATUS_PENDING",message:"The operation that was requested is pending completion."},"0x00000104":{code:"STATUS_REPARSE",message:"A reparse should be performed by the Object Manager because the name of the file resulted in a symbolic link."},"0x00000105":{code:"STATUS_MORE_ENTRIES",message:"Returned by enumeration APIs to indicate more information is available to successive calls."},"0x00000106":{code:"STATUS_NOT_ALL_ASSIGNED",message:"Indicates not all privileges or groups that are referenced are assigned to the caller. This allows, for example, all privileges to be disabled without having to know exactly which privileges are assigned."},"0x00000107":{code:"STATUS_SOME_NOT_MAPPED",message:"Some of the information to be translated has not been translated."},"0x00000108":{code:"STATUS_OPLOCK_BREAK_IN_PROGRESS",message:"An open/create operation completed while an opportunistic lock (oplock) break is underway."},"0x00000109":{code:"STATUS_VOLUME_MOUNTED",message:"A new volume has been mounted by a file system."},"0x0000010A":{code:"STATUS_RXACT_COMMITTED",message:"This success level status indicates that the transaction state already exists for the registry subtree but that a transaction commit was previously aborted. The commit has now been completed."},"0x0000010B":{code:"STATUS_NOTIFY_CLEANUP",message:"Indicates that a notify change request has been completed due to closing the handle that made the notify change request."},"0x0000010C":{code:"STATUS_NOTIFY_ENUM_DIR",message:"Indicates that a notify change request is being completed and that the information is not being returned in the caller's buffer. The caller now needs to enumerate the files to find the changes."},"0x0000010D":{code:"STATUS_NO_QUOTAS_FOR_ACCOUNT",message:"{No Quotas} No system quota limits are specifically set for this account."},"0x0000010E":{code:"STATUS_PRIMARY_TRANSPORT_CONNECT_FAILED",message:"{Connect Failure on Primary Transport} An attempt was made to connect to the remote server %hs on the primary transport, but the connection failed. The computer WAS able to connect on a secondary transport."},"0x00000110":{code:"STATUS_PAGE_FAULT_TRANSITION",message:"The page fault was a transition fault."},"0x00000111":{code:"STATUS_PAGE_FAULT_DEMAND_ZERO",message:"The page fault was a demand zero fault."},"0x00000112":{code:"STATUS_PAGE_FAULT_COPY_ON_WRITE",message:"The page fault was a demand zero fault."},"0x00000113":{code:"STATUS_PAGE_FAULT_GUARD_PAGE",message:"The page fault was a demand zero fault."},"0x00000114":{code:"STATUS_PAGE_FAULT_PAGING_FILE",message:"The page fault was satisfied by reading from a secondary storage device."},"0x00000115":{code:"STATUS_CACHE_PAGE_LOCKED",message:"The cached page was locked during operation."},"0x00000116":{code:"STATUS_CRASH_DUMP",message:"The crash dump exists in a paging file."},"0x00000117":{code:"STATUS_BUFFER_ALL_ZEROS",message:"The specified buffer contains all zeros."},"0x00000118":{code:"STATUS_REPARSE_OBJECT",message:"A reparse should be performed by the Object Manager because the name of the file resulted in a symbolic link."},"0x00000119":{code:"STATUS_RESOURCE_REQUIREMENTS_CHANGED",message:"The device has succeeded a query-stop and its resource requirements have changed."},"0x00000120":{code:"STATUS_TRANSLATION_COMPLETE",message:"The translator has translated these resources into the global space and no additional translations should be performed."},"0x00000121":{code:"STATUS_DS_MEMBERSHIP_EVALUATED_LOCALLY",message:"The directory service evaluated group memberships locally, because it was unable to contact a global catalog server."},"0x00000122":{code:"STATUS_NOTHING_TO_TERMINATE",message:"A process being terminated has no threads to terminate."},"0x00000123":{code:"STATUS_PROCESS_NOT_IN_JOB",message:"The specified process is not part of a job."},"0x00000124":{code:"STATUS_PROCESS_IN_JOB",message:"The specified process is part of a job."},"0x00000125":{code:"STATUS_VOLSNAP_HIBERNATE_READY",message:"{Volume Shadow Copy Service} The system is now ready for hibernation."},"0x00000126":{code:"STATUS_FSFILTER_OP_COMPLETED_SUCCESSFULLY",message:"A file system or file system filter driver has successfully completed an FsFilter operation."},"0x00000127":{code:"STATUS_INTERRUPT_VECTOR_ALREADY_CONNECTED",message:"The specified interrupt vector was already connected."},"0x00000128":{code:"STATUS_INTERRUPT_STILL_CONNECTED",message:"The specified interrupt vector is still connected."},"0x00000129":{code:"STATUS_PROCESS_CLONED",message:"The current process is a cloned process."},"0x0000012A":{code:"STATUS_FILE_LOCKED_WITH_ONLY_READERS",message:"The file was locked and all users of the file can only read."},"0x0000012B":{code:"STATUS_FILE_LOCKED_WITH_WRITERS",message:"The file was locked and at least one user of the file can write."},"0x00000202":{code:"STATUS_RESOURCEMANAGER_READ_ONLY",message:"The specified ResourceManager made no changes or updates to the resource under this transaction."},"0x00000367":{code:"STATUS_WAIT_FOR_OPLOCK",message:"An operation is blocked and waiting for an oplock."},"0x00010001":{code:"DBG_EXCEPTION_HANDLED",message:"Debugger handled the exception."},"0x00010002":{code:"DBG_CONTINUE",message:"The debugger continued."},"0x001C0001":{code:"STATUS_FLT_IO_COMPLETE",message:"The IO was completed by a filter."},"0xC0000467":{code:"STATUS_FILE_NOT_AVAILABLE",message:"The file is temporarily unavailable."},"0xC0000721":{code:"STATUS_CALLBACK_RETURNED_THREAD_AFFINITY",message:`A threadpool worker thread entered a callback at thread affinity %p and exited at affinity %p. -This is unexpected, indicating that the callback missed restoring the priority.`},"0x40000000":{code:"STATUS_OBJECT_NAME_EXISTS",message:"{Object Exists} An attempt was made to create an object but the object name already exists."},"0x40000001":{code:"STATUS_THREAD_WAS_SUSPENDED",message:"{Thread Suspended} A thread termination occurred while the thread was suspended. The thread resumed, and termination proceeded."},"0x40000002":{code:"STATUS_WORKING_SET_LIMIT_RANGE",message:"{Working Set Range Error} An attempt was made to set the working set minimum or maximum to values that are outside the allowable range."},"0x40000003":{code:"STATUS_IMAGE_NOT_AT_BASE",message:"{Image Relocated} An image file could not be mapped at the address that is specified in the image file. Local fixes must be performed on this image."},"0x40000004":{code:"STATUS_RXACT_STATE_CREATED",message:"This informational level status indicates that a specified registry subtree transaction state did not yet exist and had to be created."},"0x40000005":{code:"STATUS_SEGMENT_NOTIFICATION",message:"{Segment Load} A virtual DOS machine (VDM) is loading, unloading, or moving an MS-DOS or Win16 program segment image. An exception is raised so that a debugger can load, unload, or track symbols and breakpoints within these 16-bit segments."},"0x40000006":{code:"STATUS_LOCAL_USER_SESSION_KEY",message:"{Local Session Key} A user session key was requested for a local remote procedure call (RPC) connection. The session key that is returned is a constant value and not unique to this connection."},"0x40000007":{code:"STATUS_BAD_CURRENT_DIRECTORY",message:"{Invalid Current Directory} The process cannot switch to the startup current directory %hs. Select OK to set the current directory to %hs, or select CANCEL to exit."},"0x40000008":{code:"STATUS_SERIAL_MORE_WRITES",message:"{Serial IOCTL Complete} A serial I/O operation was completed by another write to a serial port. (The IOCTL_SERIAL_XOFF_COUNTER reached zero.)"},"0x40000009":{code:"STATUS_REGISTRY_RECOVERED",message:"{Registry Recovery} One of the files that contains the system registry data had to be recovered by using a log or alternate copy. The recovery was successful."},"0x4000000A":{code:"STATUS_FT_READ_RECOVERY_FROM_BACKUP",message:"{Redundant Read} To satisfy a read request, the Windows NT fault-tolerant file system successfully read the requested data from a redundant copy. This was done because the file system encountered a failure on a member of the fault-tolerant volume but was unable to reassign the failing area of the device."},"0x4000000B":{code:"STATUS_FT_WRITE_RECOVERY",message:"{Redundant Write} To satisfy a write request, the Windows NT fault-tolerant file system successfully wrote a redundant copy of the information. This was done because the file system encountered a failure on a member of the fault-tolerant volume but was unable to reassign the failing area of the device."},"0x4000000C":{code:"STATUS_SERIAL_COUNTER_TIMEOUT",message:"{Serial IOCTL Timeout} A serial I/O operation completed because the time-out period expired. (The IOCTL_SERIAL_XOFF_COUNTER had not reached zero.)"},"0x4000000D":{code:"STATUS_NULL_LM_PASSWORD",message:"{Password Too Complex} The Windows password is too complex to be converted to a LAN Manager password. The LAN Manager password that returned is a NULL string."},"0x4000000E":{code:"STATUS_IMAGE_MACHINE_TYPE_MISMATCH",message:"{Machine Type Mismatch} The image file %hs is valid but is for a machine type other than the current machine. Select OK to continue, or CANCEL to fail the DLL load."},"0x4000000F":{code:"STATUS_RECEIVE_PARTIAL",message:"{Partial Data Received} The network transport returned partial data to its client. The remaining data will be sent later."},"0x40000010":{code:"STATUS_RECEIVE_EXPEDITED",message:"{Expedited Data Received} The network transport returned data to its client that was marked as expedited by the remote system."},"0x40000011":{code:"STATUS_RECEIVE_PARTIAL_EXPEDITED",message:"{Partial Expedited Data Received} The network transport returned partial data to its client and this data was marked as expedited by the remote system. The remaining data will be sent later."},"0x40000012":{code:"STATUS_EVENT_DONE",message:"{TDI Event Done} The TDI indication has completed successfully."},"0x40000013":{code:"STATUS_EVENT_PENDING",message:"{TDI Event Pending} The TDI indication has entered the pending state."},"0x40000014":{code:"STATUS_CHECKING_FILE_SYSTEM",message:"Checking file system on %wZ."},"0x40000015":{code:"STATUS_FATAL_APP_EXIT",message:"{Fatal Application Exit} %hs"},"0x40000016":{code:"STATUS_PREDEFINED_HANDLE",message:"The specified registry key is referenced by a predefined handle."},"0x40000017":{code:"STATUS_WAS_UNLOCKED",message:"{Page Unlocked} The page protection of a locked page was changed to 'No Access' and the page was unlocked from memory and from the process."},"0x40000018":{code:"STATUS_SERVICE_NOTIFICATION",message:"%hs"},"0x40000019":{code:"STATUS_WAS_LOCKED",message:"{Page Locked} One of the pages to lock was already locked."},"0x4000001A":{code:"STATUS_LOG_HARD_ERROR",message:"Application popup: %1 : %2"},"0x4000001B":{code:"STATUS_ALREADY_WIN32",message:"A Win32 process already exists."},"0x4000001C":{code:"STATUS_WX86_UNSIMULATE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x4000001D":{code:"STATUS_WX86_CONTINUE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x4000001E":{code:"STATUS_WX86_SINGLE_STEP",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x4000001F":{code:"STATUS_WX86_BREAKPOINT",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000020":{code:"STATUS_WX86_EXCEPTION_CONTINUE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000021":{code:"STATUS_WX86_EXCEPTION_LASTCHANCE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000022":{code:"STATUS_WX86_EXCEPTION_CHAIN",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000023":{code:"STATUS_IMAGE_MACHINE_TYPE_MISMATCH_EXE",message:"{Machine Type Mismatch} The image file %hs is valid but is for a machine type other than the current machine."},"0x40000024":{code:"STATUS_NO_YIELD_PERFORMED",message:"A yield execution was performed and no thread was available to run."},"0x40000025":{code:"STATUS_TIMER_RESUME_IGNORED",message:"The resume flag to a timer API was ignored."},"0x40000026":{code:"STATUS_ARBITRATION_UNHANDLED",message:"The arbiter has deferred arbitration of these resources to its parent."},"0x40000027":{code:"STATUS_CARDBUS_NOT_SUPPORTED",message:"The device has detected a CardBus card in its slot."},"0x40000028":{code:"STATUS_WX86_CREATEWX86TIB",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000029":{code:"STATUS_MP_PROCESSOR_MISMATCH",message:"The CPUs in this multiprocessor system are not all the same revision level. To use all processors, the operating system restricts itself to the features of the least capable processor in the system. If problems occur with this system, contact the CPU manufacturer to see if this mix of processors is supported."},"0x4000002A":{code:"STATUS_HIBERNATED",message:"The system was put into hibernation."},"0x4000002B":{code:"STATUS_RESUME_HIBERNATION",message:"The system was resumed from hibernation."},"0x4000002C":{code:"STATUS_FIRMWARE_UPDATED",message:"Windows has detected that the system firmware (BIOS) was updated [previous firmware date = %2, current firmware date %3]."},"0x4000002D":{code:"STATUS_DRIVERS_LEAKING_LOCKED_PAGES",message:"A device driver is leaking locked I/O pages and is causing system degradation. The system has automatically enabled the tracking code to try and catch the culprit."},"0x4000002E":{code:"STATUS_MESSAGE_RETRIEVED",message:"The ALPC message being canceled has already been retrieved from the queue on the other side."},"0x4000002F":{code:"STATUS_SYSTEM_POWERSTATE_TRANSITION",message:"The system power state is transitioning from %2 to %3."},"0x40000030":{code:"STATUS_ALPC_CHECK_COMPLETION_LIST",message:"The receive operation was successful. Check the ALPC completion list for the received message."},"0x40000031":{code:"STATUS_SYSTEM_POWERSTATE_COMPLEX_TRANSITION",message:"The system power state is transitioning from %2 to %3 but could enter %4."},"0x40000032":{code:"STATUS_ACCESS_AUDIT_BY_POLICY",message:"Access to %1 is monitored by policy rule %2."},"0x40000033":{code:"STATUS_ABANDON_HIBERFILE",message:"A valid hibernation file has been invalidated and should be abandoned."},"0x40000034":{code:"STATUS_BIZRULES_NOT_ENABLED",message:"Business rule scripts are disabled for the calling application."},"0x40000294":{code:"STATUS_WAKE_SYSTEM",message:"The system has awoken."},"0x40000370":{code:"STATUS_DS_SHUTTING_DOWN",message:"The directory service is shutting down."},"0x40010001":{code:"DBG_REPLY_LATER",message:"Debugger will reply later."},"0x40010002":{code:"DBG_UNABLE_TO_PROVIDE_HANDLE",message:"Debugger cannot provide a handle."},"0x40010003":{code:"DBG_TERMINATE_THREAD",message:"Debugger terminated the thread."},"0x40010004":{code:"DBG_TERMINATE_PROCESS",message:"Debugger terminated the process."},"0x40010005":{code:"DBG_CONTROL_C",message:"Debugger obtained control of C."},"0x40010006":{code:"DBG_PRINTEXCEPTION_C",message:"Debugger printed an exception on control C."},"0x40010007":{code:"DBG_RIPEXCEPTION",message:"Debugger received a RIP exception."},"0x40010008":{code:"DBG_CONTROL_BREAK",message:"Debugger received a control break."},"0x40010009":{code:"DBG_COMMAND_EXCEPTION",message:"Debugger command communication exception."},"0x40020056":{code:"RPC_NT_UUID_LOCAL_ONLY",message:"A UUID that is valid only on this computer has been allocated."},"0x400200AF":{code:"RPC_NT_SEND_INCOMPLETE",message:"Some data remains to be sent in the request buffer."},"0x400A0004":{code:"STATUS_CTX_CDM_CONNECT",message:"The Client Drive Mapping Service has connected on Terminal Connection."},"0x400A0005":{code:"STATUS_CTX_CDM_DISCONNECT",message:"The Client Drive Mapping Service has disconnected on Terminal Connection."},"0x4015000D":{code:"STATUS_SXS_RELEASE_ACTIVATION_CONTEXT",message:"A kernel mode component is releasing a reference on an activation context."},"0x40190034":{code:"STATUS_RECOVERY_NOT_NEEDED",message:"The transactional resource manager is already consistent. Recovery is not needed."},"0x40190035":{code:"STATUS_RM_ALREADY_STARTED",message:"The transactional resource manager has already been started."},"0x401A000C":{code:"STATUS_LOG_NO_RESTART",message:"The log service encountered a log stream with no restart area."},"0x401B00EC":{code:"STATUS_VIDEO_DRIVER_DEBUG_REPORT_REQUEST",message:"{Display Driver Recovered From Failure} The %hs display driver has detected a failure and recovered from it. Some graphical operations may have failed. The next time you restart the machine, a dialog box appears, giving you an opportunity to upload data about this failure to Microsoft."},"0x401E000A":{code:"STATUS_GRAPHICS_PARTIAL_DATA_POPULATED",message:`The specified buffer is not big enough to contain the entire requested dataset. Partial data is populated up to the size of the buffer. -The caller needs to provide a buffer of the size as specified in the partially populated buffer's content (interface specific).`},"0x401E0117":{code:"STATUS_GRAPHICS_DRIVER_MISMATCH",message:"The kernel driver detected a version mismatch between it and the user mode driver."},"0x401E0307":{code:"STATUS_GRAPHICS_MODE_NOT_PINNED",message:"No mode is pinned on the specified VidPN source/target."},"0x401E031E":{code:"STATUS_GRAPHICS_NO_PREFERRED_MODE",message:"The specified mode set does not specify a preference for one of its modes."},"0x401E034B":{code:"STATUS_GRAPHICS_DATASET_IS_EMPTY",message:"The specified dataset (for example, mode set, frequency range set, descriptor set, or topology) is empty."},"0x401E034C":{code:"STATUS_GRAPHICS_NO_MORE_ELEMENTS_IN_DATASET",message:"The specified dataset (for example, mode set, frequency range set, descriptor set, or topology) does not contain any more elements."},"0x401E0351":{code:"STATUS_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_PINNED",message:"The specified content transformation is not pinned on the specified VidPN present path."},"0x401E042F":{code:"STATUS_GRAPHICS_UNKNOWN_CHILD_STATUS",message:"The child device presence was not reliably detected."},"0x401E0437":{code:"STATUS_GRAPHICS_LEADLINK_START_DEFERRED",message:"Starting the lead adapter in a linked configuration has been temporarily deferred."},"0x401E0439":{code:"STATUS_GRAPHICS_POLLING_TOO_FREQUENTLY",message:"The display adapter is being polled for children too frequently at the same polling level."},"0x401E043A":{code:"STATUS_GRAPHICS_START_DEFERRED",message:"Starting the adapter has been temporarily deferred."},"0x40230001":{code:"STATUS_NDIS_INDICATION_REQUIRED",message:"The request will be completed later by an NDIS status indication."},"0x80000001":{code:"STATUS_GUARD_PAGE_VIOLATION",message:"{EXCEPTION} Guard Page Exception A page of memory that marks the end of a data structure, such as a stack or an array, has been accessed."},"0x80000002":{code:"STATUS_DATATYPE_MISALIGNMENT",message:"{EXCEPTION} Alignment Fault A data type misalignment was detected in a load or store instruction."},"0x80000003":{code:"STATUS_BREAKPOINT",message:"{EXCEPTION} Breakpoint A breakpoint has been reached."},"0x80000004":{code:"STATUS_SINGLE_STEP",message:"{EXCEPTION} Single Step A single step or trace operation has just been completed."},"0x80000005":{code:"STATUS_BUFFER_OVERFLOW",message:"{Buffer Overflow} The data was too large to fit into the specified buffer."},"0x80000006":{code:"STATUS_NO_MORE_FILES",message:"{No More Files} No more files were found which match the file specification."},"0x80000007":{code:"STATUS_WAKE_SYSTEM_DEBUGGER",message:"{Kernel Debugger Awakened} The system debugger was awakened by an interrupt."},"0x8000000A":{code:"STATUS_HANDLES_CLOSED",message:"{Handles Closed} Handles to objects have been automatically closed because of the requested operation."},"0x8000000B":{code:"STATUS_NO_INHERITANCE",message:"{Non-Inheritable ACL} An access control list (ACL) contains no components that can be inherited."},"0x8000000C":{code:"STATUS_GUID_SUBSTITUTION_MADE",message:"{GUID Substitution} During the translation of a globally unique identifier (GUID) to a Windows security ID (SID), no administratively defined GUID prefix was found. A substitute prefix was used, which will not compromise system security. However, this may provide a more restrictive access than intended."},"0x8000000D":{code:"STATUS_PARTIAL_COPY",message:"Because of protection conflicts, not all the requested bytes could be copied."},"0x8000000E":{code:"STATUS_DEVICE_PAPER_EMPTY",message:"{Out of Paper} The printer is out of paper."},"0x8000000F":{code:"STATUS_DEVICE_POWERED_OFF",message:"{Device Power Is Off} The printer power has been turned off."},"0x80000010":{code:"STATUS_DEVICE_OFF_LINE",message:"{Device Offline} The printer has been taken offline."},"0x80000011":{code:"STATUS_DEVICE_BUSY",message:"{Device Busy} The device is currently busy."},"0x80000012":{code:"STATUS_NO_MORE_EAS",message:"{No More EAs} No more extended attributes (EAs) were found for the file."},"0x80000013":{code:"STATUS_INVALID_EA_NAME",message:"{Illegal EA} The specified extended attribute (EA) name contains at least one illegal character."},"0x80000014":{code:"STATUS_EA_LIST_INCONSISTENT",message:"{Inconsistent EA List} The extended attribute (EA) list is inconsistent."},"0x80000015":{code:"STATUS_INVALID_EA_FLAG",message:"{Invalid EA Flag} An invalid extended attribute (EA) flag was set."},"0x80000016":{code:"STATUS_VERIFY_REQUIRED",message:"{Verifying Disk} The media has changed and a verify operation is in progress; therefore, no reads or writes may be performed to the device, except those that are used in the verify operation."},"0x80000017":{code:"STATUS_EXTRANEOUS_INFORMATION",message:"{Too Much Information} The specified access control list (ACL) contained more information than was expected."},"0x80000018":{code:"STATUS_RXACT_COMMIT_NECESSARY",message:"This warning level status indicates that the transaction state already exists for the registry subtree, but that a transaction commit was previously aborted. The commit has NOT been completed but has not been rolled back either; therefore, it may still be committed, if needed."},"0x8000001A":{code:"STATUS_NO_MORE_ENTRIES",message:"{No More Entries} No more entries are available from an enumeration operation."},"0x8000001B":{code:"STATUS_FILEMARK_DETECTED",message:"{Filemark Found} A filemark was detected."},"0x8000001C":{code:"STATUS_MEDIA_CHANGED",message:"{Media Changed} The media may have changed."},"0x8000001D":{code:"STATUS_BUS_RESET",message:"{I/O Bus Reset} An I/O bus reset was detected."},"0x8000001E":{code:"STATUS_END_OF_MEDIA",message:"{End of Media} The end of the media was encountered."},"0x8000001F":{code:"STATUS_BEGINNING_OF_MEDIA",message:"The beginning of a tape or partition has been detected."},"0x80000020":{code:"STATUS_MEDIA_CHECK",message:"{Media Changed} The media may have changed."},"0x80000021":{code:"STATUS_SETMARK_DETECTED",message:"A tape access reached a set mark."},"0x80000022":{code:"STATUS_NO_DATA_DETECTED",message:"During a tape access, the end of the data written is reached."},"0x80000023":{code:"STATUS_REDIRECTOR_HAS_OPEN_HANDLES",message:"The redirector is in use and cannot be unloaded."},"0x80000024":{code:"STATUS_SERVER_HAS_OPEN_HANDLES",message:"The server is in use and cannot be unloaded."},"0x80000025":{code:"STATUS_ALREADY_DISCONNECTED",message:"The specified connection has already been disconnected."},"0x80000026":{code:"STATUS_LONGJUMP",message:"A long jump has been executed."},"0x80000027":{code:"STATUS_CLEANER_CARTRIDGE_INSTALLED",message:"A cleaner cartridge is present in the tape library."},"0x80000028":{code:"STATUS_PLUGPLAY_QUERY_VETOED",message:"The Plug and Play query operation was not successful."},"0x80000029":{code:"STATUS_UNWIND_CONSOLIDATE",message:"A frame consolidation has been executed."},"0x8000002A":{code:"STATUS_REGISTRY_HIVE_RECOVERED",message:"{Registry Hive Recovered} The registry hive (file): %hs was corrupted and it has been recovered. Some data might have been lost."},"0x8000002B":{code:"STATUS_DLL_MIGHT_BE_INSECURE",message:"The application is attempting to run executable code from the module %hs. This may be insecure. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x8000002C":{code:"STATUS_DLL_MIGHT_BE_INCOMPATIBLE",message:"The application is loading executable code from the module %hs. This is secure but may be incompatible with previous releases of the operating system. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x8000002D":{code:"STATUS_STOPPED_ON_SYMLINK",message:"The create operation stopped after reaching a symbolic link."},"0x80000288":{code:"STATUS_DEVICE_REQUIRES_CLEANING",message:"The device has indicated that cleaning is necessary."},"0x80000289":{code:"STATUS_DEVICE_DOOR_OPEN",message:"The device has indicated that its door is open. Further operations require it closed and secured."},"0x80000803":{code:"STATUS_DATA_LOST_REPAIR",message:"Windows discovered a corruption in the file %hs. This file has now been repaired. Check if any data in the file was lost because of the corruption."},"0x80010001":{code:"DBG_EXCEPTION_NOT_HANDLED",message:"Debugger did not handle the exception."},"0x80130001":{code:"STATUS_CLUSTER_NODE_ALREADY_UP",message:"The cluster node is already up."},"0x80130002":{code:"STATUS_CLUSTER_NODE_ALREADY_DOWN",message:"The cluster node is already down."},"0x80130003":{code:"STATUS_CLUSTER_NETWORK_ALREADY_ONLINE",message:"The cluster network is already online."},"0x80130004":{code:"STATUS_CLUSTER_NETWORK_ALREADY_OFFLINE",message:"The cluster network is already offline."},"0x80130005":{code:"STATUS_CLUSTER_NODE_ALREADY_MEMBER",message:"The cluster node is already a member of the cluster."},"0x80190009":{code:"STATUS_COULD_NOT_RESIZE_LOG",message:"The log could not be set to the requested size."},"0x80190029":{code:"STATUS_NO_TXF_METADATA",message:"There is no transaction metadata on the file."},"0x80190031":{code:"STATUS_CANT_RECOVER_WITH_HANDLE_OPEN",message:"The file cannot be recovered because there is a handle still open on it."},"0x80190041":{code:"STATUS_TXF_METADATA_ALREADY_PRESENT",message:"Transaction metadata is already present on this file and cannot be superseded."},"0x80190042":{code:"STATUS_TRANSACTION_SCOPE_CALLBACKS_NOT_SET",message:"A transaction scope could not be entered because the scope handler has not been initialized."},"0x801B00EB":{code:"STATUS_VIDEO_HUNG_DISPLAY_DRIVER_THREAD_RECOVERED",message:"{Display Driver Stopped Responding and recovered} The %hs display driver has stopped working normally. The recovery had been performed."},"0x801C0001":{code:"STATUS_FLT_BUFFER_TOO_SMALL",message:"{Buffer too small} The buffer is too small to contain the entry. No information has been written to the buffer."},"0x80210001":{code:"STATUS_FVE_PARTIAL_METADATA",message:"Volume metadata read or write is incomplete."},"0x80210002":{code:"STATUS_FVE_TRANSIENT_STATE",message:"BitLocker encryption keys were ignored because the volume was in a transient state."},"0xC0000001":{code:"STATUS_UNSUCCESSFUL",message:"{Operation Failed} The requested operation was unsuccessful."},"0xC0000002":{code:"STATUS_NOT_IMPLEMENTED",message:"{Not Implemented} The requested operation is not implemented."},"0xC0000003":{code:"STATUS_INVALID_INFO_CLASS",message:"{Invalid Parameter} The specified information class is not a valid information class for the specified object."},"0xC0000004":{code:"STATUS_INFO_LENGTH_MISMATCH",message:"The specified information record length does not match the length that is required for the specified information class."},"0xC0000005":{code:"STATUS_ACCESS_VIOLATION",message:"The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s."},"0xC0000006":{code:"STATUS_IN_PAGE_ERROR",message:"The instruction at 0x%08lx referenced memory at 0x%08lx. The required data was not placed into memory because of an I/O error status of 0x%08lx."},"0xC0000007":{code:"STATUS_PAGEFILE_QUOTA",message:"The page file quota for the process has been exhausted."},"0xC0000008":{code:"STATUS_INVALID_HANDLE",message:"An invalid HANDLE was specified."},"0xC0000009":{code:"STATUS_BAD_INITIAL_STACK",message:"An invalid initial stack was specified in a call to NtCreateThread."},"0xC000000A":{code:"STATUS_BAD_INITIAL_PC",message:"An invalid initial start address was specified in a call to NtCreateThread."},"0xC000000B":{code:"STATUS_INVALID_CID",message:"An invalid client ID was specified."},"0xC000000C":{code:"STATUS_TIMER_NOT_CANCELED",message:"An attempt was made to cancel or set a timer that has an associated APC and the specified thread is not the thread that originally set the timer with an associated APC routine."},"0xC000000D":{code:"STATUS_INVALID_PARAMETER",message:"An invalid parameter was passed to a service or function."},"0xC000000E":{code:"STATUS_NO_SUCH_DEVICE",message:"A device that does not exist was specified."},"0xC000000F":{code:"STATUS_NO_SUCH_FILE",message:"{File Not Found} The file %hs does not exist."},"0xC0000010":{code:"STATUS_INVALID_DEVICE_REQUEST",message:"The specified request is not a valid operation for the target device."},"0xC0000011":{code:"STATUS_END_OF_FILE",message:"The end-of-file marker has been reached. There is no valid data in the file beyond this marker."},"0xC0000012":{code:"STATUS_WRONG_VOLUME",message:"{Wrong Volume} The wrong volume is in the drive. Insert volume %hs into drive %hs."},"0xC0000013":{code:"STATUS_NO_MEDIA_IN_DEVICE",message:"{No Disk} There is no disk in the drive. Insert a disk into drive %hs."},"0xC0000014":{code:"STATUS_UNRECOGNIZED_MEDIA",message:"{Unknown Disk Format} The disk in drive %hs is not formatted properly. Check the disk, and reformat it, if needed."},"0xC0000015":{code:"STATUS_NONEXISTENT_SECTOR",message:"{Sector Not Found} The specified sector does not exist."},"0xC0000016":{code:"STATUS_MORE_PROCESSING_REQUIRED",message:"{Still Busy} The specified I/O request packet (IRP) cannot be disposed of because the I/O operation is not complete."},"0xC0000017":{code:"STATUS_NO_MEMORY",message:"{Not Enough Quota} Not enough virtual memory or paging file quota is available to complete the specified operation."},"0xC0000018":{code:"STATUS_CONFLICTING_ADDRESSES",message:"{Conflicting Address Range} The specified address range conflicts with the address space."},"0xC0000019":{code:"STATUS_NOT_MAPPED_VIEW",message:"The address range to unmap is not a mapped view."},"0xC000001A":{code:"STATUS_UNABLE_TO_FREE_VM",message:"The virtual memory cannot be freed."},"0xC000001B":{code:"STATUS_UNABLE_TO_DELETE_SECTION",message:"The specified section cannot be deleted."},"0xC000001C":{code:"STATUS_INVALID_SYSTEM_SERVICE",message:"An invalid system service was specified in a system service call."},"0xC000001D":{code:"STATUS_ILLEGAL_INSTRUCTION",message:"{EXCEPTION} Illegal Instruction An attempt was made to execute an illegal instruction."},"0xC000001E":{code:"STATUS_INVALID_LOCK_SEQUENCE",message:"{Invalid Lock Sequence} An attempt was made to execute an invalid lock sequence."},"0xC000001F":{code:"STATUS_INVALID_VIEW_SIZE",message:"{Invalid Mapping} An attempt was made to create a view for a section that is bigger than the section."},"0xC0000020":{code:"STATUS_INVALID_FILE_FOR_SECTION",message:"{Bad File} The attributes of the specified mapping file for a section of memory cannot be read."},"0xC0000021":{code:"STATUS_ALREADY_COMMITTED",message:"{Already Committed} The specified address range is already committed."},"0xC0000022":{code:"STATUS_ACCESS_DENIED",message:"{Access Denied} A process has requested access to an object but has not been granted those access rights."},"0xC0000023":{code:"STATUS_BUFFER_TOO_SMALL",message:"{Buffer Too Small} The buffer is too small to contain the entry. No information has been written to the buffer."},"0xC0000024":{code:"STATUS_OBJECT_TYPE_MISMATCH",message:"{Wrong Type} There is a mismatch between the type of object that is required by the requested operation and the type of object that is specified in the request."},"0xC0000025":{code:"STATUS_NONCONTINUABLE_EXCEPTION",message:"{EXCEPTION} Cannot Continue Windows cannot continue from this exception."},"0xC0000026":{code:"STATUS_INVALID_DISPOSITION",message:"An invalid exception disposition was returned by an exception handler."},"0xC0000027":{code:"STATUS_UNWIND",message:"Unwind exception code."},"0xC0000028":{code:"STATUS_BAD_STACK",message:"An invalid or unaligned stack was encountered during an unwind operation."},"0xC0000029":{code:"STATUS_INVALID_UNWIND_TARGET",message:"An invalid unwind target was encountered during an unwind operation."},"0xC000002A":{code:"STATUS_NOT_LOCKED",message:"An attempt was made to unlock a page of memory that was not locked."},"0xC000002B":{code:"STATUS_PARITY_ERROR",message:"A device parity error on an I/O operation."},"0xC000002C":{code:"STATUS_UNABLE_TO_DECOMMIT_VM",message:"An attempt was made to decommit uncommitted virtual memory."},"0xC000002D":{code:"STATUS_NOT_COMMITTED",message:"An attempt was made to change the attributes on memory that has not been committed."},"0xC000002E":{code:"STATUS_INVALID_PORT_ATTRIBUTES",message:"Invalid object attributes specified to NtCreatePort or invalid port attributes specified to NtConnectPort."},"0xC000002F":{code:"STATUS_PORT_MESSAGE_TOO_LONG",message:"The length of the message that was passed to NtRequestPort or NtRequestWaitReplyPort is longer than the maximum message that is allowed by the port."},"0xC0000030":{code:"STATUS_INVALID_PARAMETER_MIX",message:"An invalid combination of parameters was specified."},"0xC0000031":{code:"STATUS_INVALID_QUOTA_LOWER",message:"An attempt was made to lower a quota limit below the current usage."},"0xC0000032":{code:"STATUS_DISK_CORRUPT_ERROR",message:"{Corrupt Disk} The file system structure on the disk is corrupt and unusable. Run the Chkdsk utility on the volume %hs."},"0xC0000033":{code:"STATUS_OBJECT_NAME_INVALID",message:"The object name is invalid."},"0xC0000034":{code:"STATUS_OBJECT_NAME_NOT_FOUND",message:"The object name is not found."},"0xC0000035":{code:"STATUS_OBJECT_NAME_COLLISION",message:"The object name already exists."},"0xC0000037":{code:"STATUS_PORT_DISCONNECTED",message:"An attempt was made to send a message to a disconnected communication port."},"0xC0000038":{code:"STATUS_DEVICE_ALREADY_ATTACHED",message:"An attempt was made to attach to a device that was already attached to another device."},"0xC0000039":{code:"STATUS_OBJECT_PATH_INVALID",message:"The object path component was not a directory object."},"0xC000003A":{code:"STATUS_OBJECT_PATH_NOT_FOUND",message:"{Path Not Found} The path %hs does not exist."},"0xC000003B":{code:"STATUS_OBJECT_PATH_SYNTAX_BAD",message:"The object path component was not a directory object."},"0xC000003C":{code:"STATUS_DATA_OVERRUN",message:"{Data Overrun} A data overrun error occurred."},"0xC000003D":{code:"STATUS_DATA_LATE_ERROR",message:"{Data Late} A data late error occurred."},"0xC000003E":{code:"STATUS_DATA_ERROR",message:"{Data Error} An error occurred in reading or writing data."},"0xC000003F":{code:"STATUS_CRC_ERROR",message:"{Bad CRC} A cyclic redundancy check (CRC) checksum error occurred."},"0xC0000040":{code:"STATUS_SECTION_TOO_BIG",message:"{Section Too Large} The specified section is too big to map the file."},"0xC0000041":{code:"STATUS_PORT_CONNECTION_REFUSED",message:"The NtConnectPort request is refused."},"0xC0000042":{code:"STATUS_INVALID_PORT_HANDLE",message:"The type of port handle is invalid for the operation that is requested."},"0xC0000043":{code:"STATUS_SHARING_VIOLATION",message:"A file cannot be opened because the share access flags are incompatible."},"0xC0000044":{code:"STATUS_QUOTA_EXCEEDED",message:"Insufficient quota exists to complete the operation."},"0xC0000045":{code:"STATUS_INVALID_PAGE_PROTECTION",message:"The specified page protection was not valid."},"0xC0000046":{code:"STATUS_MUTANT_NOT_OWNED",message:"An attempt to release a mutant object was made by a thread that was not the owner of the mutant object."},"0xC0000047":{code:"STATUS_SEMAPHORE_LIMIT_EXCEEDED",message:"An attempt was made to release a semaphore such that its maximum count would have been exceeded."},"0xC0000048":{code:"STATUS_PORT_ALREADY_SET",message:"An attempt was made to set the DebugPort or ExceptionPort of a process, but a port already exists in the process, or an attempt was made to set the CompletionPort of a file but a port was already set in the file, or an attempt was made to set the associated completion port of an ALPC port but it is already set."},"0xC0000049":{code:"STATUS_SECTION_NOT_IMAGE",message:"An attempt was made to query image information on a section that does not map an image."},"0xC000004A":{code:"STATUS_SUSPEND_COUNT_EXCEEDED",message:"An attempt was made to suspend a thread whose suspend count was at its maximum."},"0xC000004B":{code:"STATUS_THREAD_IS_TERMINATING",message:"An attempt was made to suspend a thread that has begun termination."},"0xC000004C":{code:"STATUS_BAD_WORKING_SET_LIMIT",message:"An attempt was made to set the working set limit to an invalid value (for example, the minimum greater than maximum)."},"0xC000004D":{code:"STATUS_INCOMPATIBLE_FILE_MAP",message:"A section was created to map a file that is not compatible with an already existing section that maps the same file."},"0xC000004E":{code:"STATUS_SECTION_PROTECTION",message:"A view to a section specifies a protection that is incompatible with the protection of the initial view."},"0xC000004F":{code:"STATUS_EAS_NOT_SUPPORTED",message:"An operation involving EAs failed because the file system does not support EAs."},"0xC0000050":{code:"STATUS_EA_TOO_LARGE",message:"An EA operation failed because the EA set is too large."},"0xC0000051":{code:"STATUS_NONEXISTENT_EA_ENTRY",message:"An EA operation failed because the name or EA index is invalid."},"0xC0000052":{code:"STATUS_NO_EAS_ON_FILE",message:"The file for which EAs were requested has no EAs."},"0xC0000053":{code:"STATUS_EA_CORRUPT_ERROR",message:"The EA is corrupt and cannot be read."},"0xC0000054":{code:"STATUS_FILE_LOCK_CONFLICT",message:"A requested read/write cannot be granted due to a conflicting file lock."},"0xC0000055":{code:"STATUS_LOCK_NOT_GRANTED",message:"A requested file lock cannot be granted due to other existing locks."},"0xC0000056":{code:"STATUS_DELETE_PENDING",message:"A non-close operation has been requested of a file object that has a delete pending."},"0xC0000057":{code:"STATUS_CTL_FILE_NOT_SUPPORTED",message:"An attempt was made to set the control attribute on a file. This attribute is not supported in the destination file system."},"0xC0000058":{code:"STATUS_UNKNOWN_REVISION",message:"Indicates a revision number that was encountered or specified is not one that is known by the service. It may be a more recent revision than the service is aware of."},"0xC0000059":{code:"STATUS_REVISION_MISMATCH",message:"Indicates that two revision levels are incompatible."},"0xC000005A":{code:"STATUS_INVALID_OWNER",message:"Indicates a particular security ID may not be assigned as the owner of an object."},"0xC000005B":{code:"STATUS_INVALID_PRIMARY_GROUP",message:"Indicates a particular security ID may not be assigned as the primary group of an object."},"0xC000005C":{code:"STATUS_NO_IMPERSONATION_TOKEN",message:"An attempt has been made to operate on an impersonation token by a thread that is not currently impersonating a client."},"0xC000005D":{code:"STATUS_CANT_DISABLE_MANDATORY",message:"A mandatory group may not be disabled."},"0xC000005E":{code:"STATUS_NO_LOGON_SERVERS",message:"No logon servers are currently available to service the logon request."},"0xC000005F":{code:"STATUS_NO_SUCH_LOGON_SESSION",message:"A specified logon session does not exist. It may already have been terminated."},"0xC0000060":{code:"STATUS_NO_SUCH_PRIVILEGE",message:"A specified privilege does not exist."},"0xC0000061":{code:"STATUS_PRIVILEGE_NOT_HELD",message:"A required privilege is not held by the client."},"0xC0000062":{code:"STATUS_INVALID_ACCOUNT_NAME",message:"The name provided is not a properly formed account name."},"0xC0000063":{code:"STATUS_USER_EXISTS",message:"The specified account already exists."},"0xC0000064":{code:"STATUS_NO_SUCH_USER",message:"The specified account does not exist."},"0xC0000065":{code:"STATUS_GROUP_EXISTS",message:"The specified group already exists."},"0xC0000066":{code:"STATUS_NO_SUCH_GROUP",message:"The specified group does not exist."},"0xC0000067":{code:"STATUS_MEMBER_IN_GROUP",message:"The specified user account is already in the specified group account. Also used to indicate a group cannot be deleted because it contains a member."},"0xC0000068":{code:"STATUS_MEMBER_NOT_IN_GROUP",message:"The specified user account is not a member of the specified group account."},"0xC0000069":{code:"STATUS_LAST_ADMIN",message:"Indicates the requested operation would disable or delete the last remaining administration account. This is not allowed to prevent creating a situation in which the system cannot be administrated."},"0xC000006A":{code:"STATUS_WRONG_PASSWORD",message:"When trying to update a password, this return status indicates that the value provided as the current password is not correct."},"0xC000006B":{code:"STATUS_ILL_FORMED_PASSWORD",message:"When trying to update a password, this return status indicates that the value provided for the new password contains values that are not allowed in passwords."},"0xC000006C":{code:"STATUS_PASSWORD_RESTRICTION",message:"When trying to update a password, this status indicates that some password update rule has been violated. For example, the password may not meet length criteria."},"0xC000006D":{code:"STATUS_LOGON_FAILURE",message:"The attempted logon is invalid. This is either due to a bad username or authentication information."},"0xC000006E":{code:"STATUS_ACCOUNT_RESTRICTION",message:"Indicates a referenced user name and authentication information are valid, but some user account restriction has prevented successful authentication (such as time-of-day restrictions)."},"0xC000006F":{code:"STATUS_INVALID_LOGON_HOURS",message:"The user account has time restrictions and may not be logged onto at this time."},"0xC0000070":{code:"STATUS_INVALID_WORKSTATION",message:"The user account is restricted so that it may not be used to log on from the source workstation."},"0xC0000071":{code:"STATUS_PASSWORD_EXPIRED",message:"The user account password has expired."},"0xC0000072":{code:"STATUS_ACCOUNT_DISABLED",message:"The referenced account is currently disabled and may not be logged on to."},"0xC0000073":{code:"STATUS_NONE_MAPPED",message:"None of the information to be translated has been translated."},"0xC0000074":{code:"STATUS_TOO_MANY_LUIDS_REQUESTED",message:"The number of LUIDs requested may not be allocated with a single allocation."},"0xC0000075":{code:"STATUS_LUIDS_EXHAUSTED",message:"Indicates there are no more LUIDs to allocate."},"0xC0000076":{code:"STATUS_INVALID_SUB_AUTHORITY",message:"Indicates the sub-authority value is invalid for the particular use."},"0xC0000077":{code:"STATUS_INVALID_ACL",message:"Indicates the ACL structure is not valid."},"0xC0000078":{code:"STATUS_INVALID_SID",message:"Indicates the SID structure is not valid."},"0xC0000079":{code:"STATUS_INVALID_SECURITY_DESCR",message:"Indicates the SECURITY_DESCRIPTOR structure is not valid."},"0xC000007A":{code:"STATUS_PROCEDURE_NOT_FOUND",message:"Indicates the specified procedure address cannot be found in the DLL."},"0xC000007B":{code:"STATUS_INVALID_IMAGE_FORMAT",message:"{Bad Image} %hs is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support."},"0xC000007C":{code:"STATUS_NO_TOKEN",message:"An attempt was made to reference a token that does not exist. This is typically done by referencing the token that is associated with a thread when the thread is not impersonating a client."},"0xC000007D":{code:"STATUS_BAD_INHERITANCE_ACL",message:"Indicates that an attempt to build either an inherited ACL or ACE was not successful. This can be caused by a number of things. One of the more probable causes is the replacement of a CreatorId with a SID that did not fit into the ACE or ACL."},"0xC000007E":{code:"STATUS_RANGE_NOT_LOCKED",message:"The range specified in NtUnlockFile was not locked."},"0xC000007F":{code:"STATUS_DISK_FULL",message:"An operation failed because the disk was full."},"0xC0000080":{code:"STATUS_SERVER_DISABLED",message:"The GUID allocation server is disabled at the moment."},"0xC0000081":{code:"STATUS_SERVER_NOT_DISABLED",message:"The GUID allocation server is enabled at the moment."},"0xC0000082":{code:"STATUS_TOO_MANY_GUIDS_REQUESTED",message:"Too many GUIDs were requested from the allocation server at once."},"0xC0000083":{code:"STATUS_GUIDS_EXHAUSTED",message:"The GUIDs could not be allocated because the Authority Agent was exhausted."},"0xC0000084":{code:"STATUS_INVALID_ID_AUTHORITY",message:"The value provided was an invalid value for an identifier authority."},"0xC0000085":{code:"STATUS_AGENTS_EXHAUSTED",message:"No more authority agent values are available for the particular identifier authority value."},"0xC0000086":{code:"STATUS_INVALID_VOLUME_LABEL",message:"An invalid volume label has been specified."},"0xC0000087":{code:"STATUS_SECTION_NOT_EXTENDED",message:"A mapped section could not be extended."},"0xC0000088":{code:"STATUS_NOT_MAPPED_DATA",message:"Specified section to flush does not map a data file."},"0xC0000089":{code:"STATUS_RESOURCE_DATA_NOT_FOUND",message:"Indicates the specified image file did not contain a resource section."},"0xC000008A":{code:"STATUS_RESOURCE_TYPE_NOT_FOUND",message:"Indicates the specified resource type cannot be found in the image file."},"0xC000008B":{code:"STATUS_RESOURCE_NAME_NOT_FOUND",message:"Indicates the specified resource name cannot be found in the image file."},"0xC000008C":{code:"STATUS_ARRAY_BOUNDS_EXCEEDED",message:"{EXCEPTION} Array bounds exceeded."},"0xC000008D":{code:"STATUS_FLOAT_DENORMAL_OPERAND",message:"{EXCEPTION} Floating-point denormal operand."},"0xC000008E":{code:"STATUS_FLOAT_DIVIDE_BY_ZERO",message:"{EXCEPTION} Floating-point division by zero."},"0xC000008F":{code:"STATUS_FLOAT_INEXACT_RESULT",message:"{EXCEPTION} Floating-point inexact result."},"0xC0000090":{code:"STATUS_FLOAT_INVALID_OPERATION",message:"{EXCEPTION} Floating-point invalid operation."},"0xC0000091":{code:"STATUS_FLOAT_OVERFLOW",message:"{EXCEPTION} Floating-point overflow."},"0xC0000092":{code:"STATUS_FLOAT_STACK_CHECK",message:"{EXCEPTION} Floating-point stack check."},"0xC0000093":{code:"STATUS_FLOAT_UNDERFLOW",message:"{EXCEPTION} Floating-point underflow."},"0xC0000094":{code:"STATUS_INTEGER_DIVIDE_BY_ZERO",message:"{EXCEPTION} Integer division by zero."},"0xC0000095":{code:"STATUS_INTEGER_OVERFLOW",message:"{EXCEPTION} Integer overflow."},"0xC0000096":{code:"STATUS_PRIVILEGED_INSTRUCTION",message:"{EXCEPTION} Privileged instruction."},"0xC0000097":{code:"STATUS_TOO_MANY_PAGING_FILES",message:"An attempt was made to install more paging files than the system supports."},"0xC0000098":{code:"STATUS_FILE_INVALID",message:"The volume for a file has been externally altered such that the opened file is no longer valid."},"0xC0000099":{code:"STATUS_ALLOTTED_SPACE_EXCEEDED",message:"When a block of memory is allotted for future updates, such as the memory allocated to hold discretionary access control and primary group information, successive updates may exceed the amount of memory originally allotted. Because a quota may already have been charged to several processes that have handles to the object, it is not reasonable to alter the size of the allocated memory. Instead, a request that requires more memory than has been allotted must fail and the STATUS_ALLOTTED_SPACE_EXCEEDED error returned."},"0xC000009A":{code:"STATUS_INSUFFICIENT_RESOURCES",message:"Insufficient system resources exist to complete the API."},"0xC000009B":{code:"STATUS_DFS_EXIT_PATH_FOUND",message:"An attempt has been made to open a DFS exit path control file."},"0xC000009C":{code:"STATUS_DEVICE_DATA_ERROR",message:"There are bad blocks (sectors) on the hard disk."},"0xC000009D":{code:"STATUS_DEVICE_NOT_CONNECTED",message:"There is bad cabling, non-termination, or the controller is not able to obtain access to the hard disk."},"0xC000009F":{code:"STATUS_FREE_VM_NOT_AT_BASE",message:"Virtual memory cannot be freed because the base address is not the base of the region and a region size of zero was specified."},"0xC00000A0":{code:"STATUS_MEMORY_NOT_ALLOCATED",message:"An attempt was made to free virtual memory that is not allocated."},"0xC00000A1":{code:"STATUS_WORKING_SET_QUOTA",message:"The working set is not big enough to allow the requested pages to be locked."},"0xC00000A2":{code:"STATUS_MEDIA_WRITE_PROTECTED",message:"{Write Protect Error} The disk cannot be written to because it is write-protected. Remove the write protection from the volume %hs in drive %hs."},"0xC00000A3":{code:"STATUS_DEVICE_NOT_READY",message:"{Drive Not Ready} The drive is not ready for use; its door may be open. Check drive %hs and make sure that a disk is inserted and that the drive door is closed."},"0xC00000A4":{code:"STATUS_INVALID_GROUP_ATTRIBUTES",message:"The specified attributes are invalid or are incompatible with the attributes for the group as a whole."},"0xC00000A5":{code:"STATUS_BAD_IMPERSONATION_LEVEL",message:"A specified impersonation level is invalid. Also used to indicate that a required impersonation level was not provided."},"0xC00000A6":{code:"STATUS_CANT_OPEN_ANONYMOUS",message:"An attempt was made to open an anonymous-level token. Anonymous tokens may not be opened."},"0xC00000A7":{code:"STATUS_BAD_VALIDATION_CLASS",message:"The validation information class requested was invalid."},"0xC00000A8":{code:"STATUS_BAD_TOKEN_TYPE",message:"The type of a token object is inappropriate for its attempted use."},"0xC00000A9":{code:"STATUS_BAD_MASTER_BOOT_RECORD",message:"The type of a token object is inappropriate for its attempted use."},"0xC00000AA":{code:"STATUS_INSTRUCTION_MISALIGNMENT",message:"An attempt was made to execute an instruction at an unaligned address and the host system does not support unaligned instruction references."},"0xC00000AB":{code:"STATUS_INSTANCE_NOT_AVAILABLE",message:"The maximum named pipe instance count has been reached."},"0xC00000AC":{code:"STATUS_PIPE_NOT_AVAILABLE",message:"An instance of a named pipe cannot be found in the listening state."},"0xC00000AD":{code:"STATUS_INVALID_PIPE_STATE",message:"The named pipe is not in the connected or closing state."},"0xC00000AE":{code:"STATUS_PIPE_BUSY",message:"The specified pipe is set to complete operations and there are current I/O operations queued so that it cannot be changed to queue operations."},"0xC00000AF":{code:"STATUS_ILLEGAL_FUNCTION",message:"The specified handle is not open to the server end of the named pipe."},"0xC00000B0":{code:"STATUS_PIPE_DISCONNECTED",message:"The specified named pipe is in the disconnected state."},"0xC00000B1":{code:"STATUS_PIPE_CLOSING",message:"The specified named pipe is in the closing state."},"0xC00000B2":{code:"STATUS_PIPE_CONNECTED",message:"The specified named pipe is in the connected state."},"0xC00000B3":{code:"STATUS_PIPE_LISTENING",message:"The specified named pipe is in the listening state."},"0xC00000B4":{code:"STATUS_INVALID_READ_MODE",message:"The specified named pipe is not in message mode."},"0xC00000B5":{code:"STATUS_IO_TIMEOUT",message:"{Device Timeout} The specified I/O operation on %hs was not completed before the time-out period expired."},"0xC00000B6":{code:"STATUS_FILE_FORCED_CLOSED",message:"The specified file has been closed by another process."},"0xC00000B7":{code:"STATUS_PROFILING_NOT_STARTED",message:"Profiling is not started."},"0xC00000B8":{code:"STATUS_PROFILING_NOT_STOPPED",message:"Profiling is not stopped."},"0xC00000B9":{code:"STATUS_COULD_NOT_INTERPRET",message:"The passed ACL did not contain the minimum required information."},"0xC00000BA":{code:"STATUS_FILE_IS_A_DIRECTORY",message:"The file that was specified as a target is a directory, and the caller specified that it could be anything but a directory."},"0xC00000BB":{code:"STATUS_NOT_SUPPORTED",message:"The request is not supported."},"0xC00000BC":{code:"STATUS_REMOTE_NOT_LISTENING",message:"This remote computer is not listening."},"0xC00000BD":{code:"STATUS_DUPLICATE_NAME",message:"A duplicate name exists on the network."},"0xC00000BE":{code:"STATUS_BAD_NETWORK_PATH",message:"The network path cannot be located."},"0xC00000BF":{code:"STATUS_NETWORK_BUSY",message:"The network is busy."},"0xC00000C0":{code:"STATUS_DEVICE_DOES_NOT_EXIST",message:"This device does not exist."},"0xC00000C1":{code:"STATUS_TOO_MANY_COMMANDS",message:"The network BIOS command limit has been reached."},"0xC00000C2":{code:"STATUS_ADAPTER_HARDWARE_ERROR",message:"An I/O adapter hardware error has occurred."},"0xC00000C3":{code:"STATUS_INVALID_NETWORK_RESPONSE",message:"The network responded incorrectly."},"0xC00000C4":{code:"STATUS_UNEXPECTED_NETWORK_ERROR",message:"An unexpected network error occurred."},"0xC00000C5":{code:"STATUS_BAD_REMOTE_ADAPTER",message:"The remote adapter is not compatible."},"0xC00000C6":{code:"STATUS_PRINT_QUEUE_FULL",message:"The print queue is full."},"0xC00000C7":{code:"STATUS_NO_SPOOL_SPACE",message:"Space to store the file that is waiting to be printed is not available on the server."},"0xC00000C8":{code:"STATUS_PRINT_CANCELLED",message:"The requested print file has been canceled."},"0xC00000C9":{code:"STATUS_NETWORK_NAME_DELETED",message:"The network name was deleted."},"0xC00000CA":{code:"STATUS_NETWORK_ACCESS_DENIED",message:"Network access is denied."},"0xC00000CB":{code:"STATUS_BAD_DEVICE_TYPE",message:"{Incorrect Network Resource Type} The specified device type (LPT, for example) conflicts with the actual device type on the remote resource."},"0xC00000CC":{code:"STATUS_BAD_NETWORK_NAME",message:"{Network Name Not Found} The specified share name cannot be found on the remote server."},"0xC00000CD":{code:"STATUS_TOO_MANY_NAMES",message:"The name limit for the network adapter card of the local computer was exceeded."},"0xC00000CE":{code:"STATUS_TOO_MANY_SESSIONS",message:"The network BIOS session limit was exceeded."},"0xC00000CF":{code:"STATUS_SHARING_PAUSED",message:"File sharing has been temporarily paused."},"0xC00000D0":{code:"STATUS_REQUEST_NOT_ACCEPTED",message:"No more connections can be made to this remote computer at this time because the computer has already accepted the maximum number of connections."},"0xC00000D1":{code:"STATUS_REDIRECTOR_PAUSED",message:"Print or disk redirection is temporarily paused."},"0xC00000D2":{code:"STATUS_NET_WRITE_FAULT",message:"A network data fault occurred."},"0xC00000D3":{code:"STATUS_PROFILING_AT_LIMIT",message:"The number of active profiling objects is at the maximum and no more may be started."},"0xC00000D4":{code:"STATUS_NOT_SAME_DEVICE",message:"{Incorrect Volume} The destination file of a rename request is located on a different device than the source of the rename request."},"0xC00000D5":{code:"STATUS_FILE_RENAMED",message:"The specified file has been renamed and thus cannot be modified."},"0xC00000D6":{code:"STATUS_VIRTUAL_CIRCUIT_CLOSED",message:"{Network Request Timeout} The session with a remote server has been disconnected because the time-out interval for a request has expired."},"0xC00000D7":{code:"STATUS_NO_SECURITY_ON_OBJECT",message:"Indicates an attempt was made to operate on the security of an object that does not have security associated with it."},"0xC00000D8":{code:"STATUS_CANT_WAIT",message:"Used to indicate that an operation cannot continue without blocking for I/O."},"0xC00000D9":{code:"STATUS_PIPE_EMPTY",message:"Used to indicate that a read operation was done on an empty pipe."},"0xC00000DA":{code:"STATUS_CANT_ACCESS_DOMAIN_INFO",message:"Configuration information could not be read from the domain controller, either because the machine is unavailable or access has been denied."},"0xC00000DB":{code:"STATUS_CANT_TERMINATE_SELF",message:"Indicates that a thread attempted to terminate itself by default (called NtTerminateThread with NULL) and it was the last thread in the current process."},"0xC00000DC":{code:"STATUS_INVALID_SERVER_STATE",message:"Indicates the Sam Server was in the wrong state to perform the desired operation."},"0xC00000DD":{code:"STATUS_INVALID_DOMAIN_STATE",message:"Indicates the domain was in the wrong state to perform the desired operation."},"0xC00000DE":{code:"STATUS_INVALID_DOMAIN_ROLE",message:"This operation is only allowed for the primary domain controller of the domain."},"0xC00000DF":{code:"STATUS_NO_SUCH_DOMAIN",message:"The specified domain did not exist."},"0xC00000E0":{code:"STATUS_DOMAIN_EXISTS",message:"The specified domain already exists."},"0xC00000E1":{code:"STATUS_DOMAIN_LIMIT_EXCEEDED",message:"An attempt was made to exceed the limit on the number of domains per server for this release."},"0xC00000E2":{code:"STATUS_OPLOCK_NOT_GRANTED",message:"An error status returned when the opportunistic lock (oplock) request is denied."},"0xC00000E3":{code:"STATUS_INVALID_OPLOCK_PROTOCOL",message:"An error status returned when an invalid opportunistic lock (oplock) acknowledgment is received by a file system."},"0xC00000E4":{code:"STATUS_INTERNAL_DB_CORRUPTION",message:"This error indicates that the requested operation cannot be completed due to a catastrophic media failure or an on-disk data structure corruption."},"0xC00000E5":{code:"STATUS_INTERNAL_ERROR",message:"An internal error occurred."},"0xC00000E6":{code:"STATUS_GENERIC_NOT_MAPPED",message:"Indicates generic access types were contained in an access mask which should already be mapped to non-generic access types."},"0xC00000E7":{code:"STATUS_BAD_DESCRIPTOR_FORMAT",message:"Indicates a security descriptor is not in the necessary format (absolute or self-relative)."},"0xC00000E8":{code:"STATUS_INVALID_USER_BUFFER",message:"An access to a user buffer failed at an expected point in time. This code is defined because the caller does not want to accept STATUS_ACCESS_VIOLATION in its filter."},"0xC00000E9":{code:"STATUS_UNEXPECTED_IO_ERROR",message:"If an I/O error that is not defined in the standard FsRtl filter is returned, it is converted to the following error, which is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000EA":{code:"STATUS_UNEXPECTED_MM_CREATE_ERR",message:"If an MM error that is not defined in the standard FsRtl filter is returned, it is converted to one of the following errors, which are guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000EB":{code:"STATUS_UNEXPECTED_MM_MAP_ERROR",message:"If an MM error that is not defined in the standard FsRtl filter is returned, it is converted to one of the following errors, which are guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000EC":{code:"STATUS_UNEXPECTED_MM_EXTEND_ERR",message:"If an MM error that is not defined in the standard FsRtl filter is returned, it is converted to one of the following errors, which are guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000ED":{code:"STATUS_NOT_LOGON_PROCESS",message:"The requested action is restricted for use by logon processes only. The calling process has not registered as a logon process."},"0xC00000EE":{code:"STATUS_LOGON_SESSION_EXISTS",message:"An attempt has been made to start a new session manager or LSA logon session by using an ID that is already in use."},"0xC00000EF":{code:"STATUS_INVALID_PARAMETER_1",message:"An invalid parameter was passed to a service or function as the first argument."},"0xC00000F0":{code:"STATUS_INVALID_PARAMETER_2",message:"An invalid parameter was passed to a service or function as the second argument."},"0xC00000F1":{code:"STATUS_INVALID_PARAMETER_3",message:"An invalid parameter was passed to a service or function as the third argument."},"0xC00000F2":{code:"STATUS_INVALID_PARAMETER_4",message:"An invalid parameter was passed to a service or function as the fourth argument."},"0xC00000F3":{code:"STATUS_INVALID_PARAMETER_5",message:"An invalid parameter was passed to a service or function as the fifth argument."},"0xC00000F4":{code:"STATUS_INVALID_PARAMETER_6",message:"An invalid parameter was passed to a service or function as the sixth argument."},"0xC00000F5":{code:"STATUS_INVALID_PARAMETER_7",message:"An invalid parameter was passed to a service or function as the seventh argument."},"0xC00000F6":{code:"STATUS_INVALID_PARAMETER_8",message:"An invalid parameter was passed to a service or function as the eighth argument."},"0xC00000F7":{code:"STATUS_INVALID_PARAMETER_9",message:"An invalid parameter was passed to a service or function as the ninth argument."},"0xC00000F8":{code:"STATUS_INVALID_PARAMETER_10",message:"An invalid parameter was passed to a service or function as the tenth argument."},"0xC00000F9":{code:"STATUS_INVALID_PARAMETER_11",message:"An invalid parameter was passed to a service or function as the eleventh argument."},"0xC00000FA":{code:"STATUS_INVALID_PARAMETER_12",message:"An invalid parameter was passed to a service or function as the twelfth argument."},"0xC00000FB":{code:"STATUS_REDIRECTOR_NOT_STARTED",message:"An attempt was made to access a network file, but the network software was not yet started."},"0xC00000FC":{code:"STATUS_REDIRECTOR_STARTED",message:"An attempt was made to start the redirector, but the redirector has already been started."},"0xC00000FD":{code:"STATUS_STACK_OVERFLOW",message:"A new guard page for the stack cannot be created."},"0xC00000FE":{code:"STATUS_NO_SUCH_PACKAGE",message:"A specified authentication package is unknown."},"0xC00000FF":{code:"STATUS_BAD_FUNCTION_TABLE",message:"A malformed function table was encountered during an unwind operation."},"0xC0000100":{code:"STATUS_VARIABLE_NOT_FOUND",message:"Indicates the specified environment variable name was not found in the specified environment block."},"0xC0000101":{code:"STATUS_DIRECTORY_NOT_EMPTY",message:"Indicates that the directory trying to be deleted is not empty."},"0xC0000102":{code:"STATUS_FILE_CORRUPT_ERROR",message:"{Corrupt File} The file or directory %hs is corrupt and unreadable. Run the Chkdsk utility."},"0xC0000103":{code:"STATUS_NOT_A_DIRECTORY",message:"A requested opened file is not a directory."},"0xC0000104":{code:"STATUS_BAD_LOGON_SESSION_STATE",message:"The logon session is not in a state that is consistent with the requested operation."},"0xC0000105":{code:"STATUS_LOGON_SESSION_COLLISION",message:"An internal LSA error has occurred. An authentication package has requested the creation of a logon session but the ID of an already existing logon session has been specified."},"0xC0000106":{code:"STATUS_NAME_TOO_LONG",message:"A specified name string is too long for its intended use."},"0xC0000107":{code:"STATUS_FILES_OPEN",message:"The user attempted to force close the files on a redirected drive, but there were opened files on the drive, and the user did not specify a sufficient level of force."},"0xC0000108":{code:"STATUS_CONNECTION_IN_USE",message:"The user attempted to force close the files on a redirected drive, but there were opened directories on the drive, and the user did not specify a sufficient level of force."},"0xC0000109":{code:"STATUS_MESSAGE_NOT_FOUND",message:"RtlFindMessage could not locate the requested message ID in the message table resource."},"0xC000010A":{code:"STATUS_PROCESS_IS_TERMINATING",message:"An attempt was made to duplicate an object handle into or out of an exiting process."},"0xC000010B":{code:"STATUS_INVALID_LOGON_TYPE",message:"Indicates an invalid value has been provided for the LogonType requested."},"0xC000010C":{code:"STATUS_NO_GUID_TRANSLATION",message:"Indicates that an attempt was made to assign protection to a file system file or directory and one of the SIDs in the security descriptor could not be translated into a GUID that could be stored by the file system. This causes the protection attempt to fail, which may cause a file creation attempt to fail."},"0xC000010D":{code:"STATUS_CANNOT_IMPERSONATE",message:"Indicates that an attempt has been made to impersonate via a named pipe that has not yet been read from."},"0xC000010E":{code:"STATUS_IMAGE_ALREADY_LOADED",message:"Indicates that the specified image is already loaded."},"0xC0000117":{code:"STATUS_NO_LDT",message:"Indicates that an attempt was made to change the size of the LDT for a process that has no LDT."},"0xC0000118":{code:"STATUS_INVALID_LDT_SIZE",message:"Indicates that an attempt was made to grow an LDT by setting its size, or that the size was not an even number of selectors."},"0xC0000119":{code:"STATUS_INVALID_LDT_OFFSET",message:"Indicates that the starting value for the LDT information was not an integral multiple of the selector size."},"0xC000011A":{code:"STATUS_INVALID_LDT_DESCRIPTOR",message:"Indicates that the user supplied an invalid descriptor when trying to set up LDT descriptors."},"0xC000011B":{code:"STATUS_INVALID_IMAGE_NE_FORMAT",message:"The specified image file did not have the correct format. It appears to be NE format."},"0xC000011C":{code:"STATUS_RXACT_INVALID_STATE",message:"Indicates that the transaction state of a registry subtree is incompatible with the requested operation. For example, a request has been made to start a new transaction with one already in progress, or a request has been made to apply a transaction when one is not currently in progress."},"0xC000011D":{code:"STATUS_RXACT_COMMIT_FAILURE",message:"Indicates an error has occurred during a registry transaction commit. The database has been left in an unknown, but probably inconsistent, state. The state of the registry transaction is left as COMMITTING."},"0xC000011E":{code:"STATUS_MAPPED_FILE_SIZE_ZERO",message:"An attempt was made to map a file of size zero with the maximum size specified as zero."},"0xC000011F":{code:"STATUS_TOO_MANY_OPENED_FILES",message:"Too many files are opened on a remote server. This error should only be returned by the Windows redirector on a remote drive."},"0xC0000120":{code:"STATUS_CANCELLED",message:"The I/O request was canceled."},"0xC0000121":{code:"STATUS_CANNOT_DELETE",message:"An attempt has been made to remove a file or directory that cannot be deleted."},"0xC0000122":{code:"STATUS_INVALID_COMPUTER_NAME",message:"Indicates a name that was specified as a remote computer name is syntactically invalid."},"0xC0000123":{code:"STATUS_FILE_DELETED",message:"An I/O request other than close was performed on a file after it was deleted, which can only happen to a request that did not complete before the last handle was closed via NtClose."},"0xC0000124":{code:"STATUS_SPECIAL_ACCOUNT",message:"Indicates an operation that is incompatible with built-in accounts has been attempted on a built-in (special) SAM account. For example, built-in accounts cannot be deleted."},"0xC0000125":{code:"STATUS_SPECIAL_GROUP",message:"The operation requested may not be performed on the specified group because it is a built-in special group."},"0xC0000126":{code:"STATUS_SPECIAL_USER",message:"The operation requested may not be performed on the specified user because it is a built-in special user."},"0xC0000127":{code:"STATUS_MEMBERS_PRIMARY_GROUP",message:"Indicates a member cannot be removed from a group because the group is currently the member's primary group."},"0xC0000128":{code:"STATUS_FILE_CLOSED",message:"An I/O request other than close and several other special case operations was attempted using a file object that had already been closed."},"0xC0000129":{code:"STATUS_TOO_MANY_THREADS",message:"Indicates a process has too many threads to perform the requested action. For example, assignment of a primary token may only be performed when a process has zero or one threads."},"0xC000012A":{code:"STATUS_THREAD_NOT_IN_PROCESS",message:"An attempt was made to operate on a thread within a specific process, but the specified thread is not in the specified process."},"0xC000012B":{code:"STATUS_TOKEN_ALREADY_IN_USE",message:"An attempt was made to establish a token for use as a primary token but the token is already in use. A token can only be the primary token of one process at a time."},"0xC000012C":{code:"STATUS_PAGEFILE_QUOTA_EXCEEDED",message:"The page file quota was exceeded."},"0xC000012D":{code:"STATUS_COMMITMENT_LIMIT",message:"{Out of Virtual Memory} Your system is low on virtual memory. To ensure that Windows runs correctly, increase the size of your virtual memory paging file. For more information, see Help."},"0xC000012E":{code:"STATUS_INVALID_IMAGE_LE_FORMAT",message:"The specified image file did not have the correct format: it appears to be LE format."},"0xC000012F":{code:"STATUS_INVALID_IMAGE_NOT_MZ",message:"The specified image file did not have the correct format: it did not have an initial MZ."},"0xC0000130":{code:"STATUS_INVALID_IMAGE_PROTECT",message:"The specified image file did not have the correct format: it did not have a proper e_lfarlc in the MZ header."},"0xC0000131":{code:"STATUS_INVALID_IMAGE_WIN_16",message:"The specified image file did not have the correct format: it appears to be a 16-bit Windows image."},"0xC0000132":{code:"STATUS_LOGON_SERVER_CONFLICT",message:"The Netlogon service cannot start because another Netlogon service running in the domain conflicts with the specified role."},"0xC0000133":{code:"STATUS_TIME_DIFFERENCE_AT_DC",message:"The time at the primary domain controller is different from the time at the backup domain controller or member server by too large an amount."},"0xC0000134":{code:"STATUS_SYNCHRONIZATION_REQUIRED",message:"The SAM database on a Windows Server is significantly out of synchronization with the copy on the domain controller. A complete synchronization is required."},"0xC0000135":{code:"STATUS_DLL_NOT_FOUND",message:"{Unable To Locate Component} This application has failed to start because %hs was not found. Reinstalling the application may fix this problem."},"0xC0000136":{code:"STATUS_OPEN_FAILED",message:"The NtCreateFile API failed. This error should never be returned to an application; it is a place holder for the Windows LAN Manager Redirector to use in its internal error-mapping routines."},"0xC0000137":{code:"STATUS_IO_PRIVILEGE_FAILED",message:"{Privilege Failed} The I/O permissions for the process could not be changed."},"0xC0000138":{code:"STATUS_ORDINAL_NOT_FOUND",message:"{Ordinal Not Found} The ordinal %ld could not be located in the dynamic link library %hs."},"0xC0000139":{code:"STATUS_ENTRYPOINT_NOT_FOUND",message:"{Entry Point Not Found} The procedure entry point %hs could not be located in the dynamic link library %hs."},"0xC000013A":{code:"STATUS_CONTROL_C_EXIT",message:"{Application Exit by CTRL+C} The application terminated as a result of a CTRL+C."},"0xC000013B":{code:"STATUS_LOCAL_DISCONNECT",message:"{Virtual Circuit Closed} The network transport on your computer has closed a network connection. There may or may not be I/O requests outstanding."},"0xC000013C":{code:"STATUS_REMOTE_DISCONNECT",message:"{Virtual Circuit Closed} The network transport on a remote computer has closed a network connection. There may or may not be I/O requests outstanding."},"0xC000013D":{code:"STATUS_REMOTE_RESOURCES",message:"{Insufficient Resources on Remote Computer} The remote computer has insufficient resources to complete the network request. For example, the remote computer may not have enough available memory to carry out the request at this time."},"0xC000013E":{code:"STATUS_LINK_FAILED",message:"{Virtual Circuit Closed} An existing connection (virtual circuit) has been broken at the remote computer. There is probably something wrong with the network software protocol or the network hardware on the remote computer."},"0xC000013F":{code:"STATUS_LINK_TIMEOUT",message:"{Virtual Circuit Closed} The network transport on your computer has closed a network connection because it had to wait too long for a response from the remote computer."},"0xC0000140":{code:"STATUS_INVALID_CONNECTION",message:"The connection handle that was given to the transport was invalid."},"0xC0000141":{code:"STATUS_INVALID_ADDRESS",message:"The address handle that was given to the transport was invalid."},"0xC0000142":{code:"STATUS_DLL_INIT_FAILED",message:"{DLL Initialization Failed} Initialization of the dynamic link library %hs failed. The process is terminating abnormally."},"0xC0000143":{code:"STATUS_MISSING_SYSTEMFILE",message:"{Missing System File} The required system file %hs is bad or missing."},"0xC0000144":{code:"STATUS_UNHANDLED_EXCEPTION",message:"{Application Error} The exception %s (0x%08lx) occurred in the application at location 0x%08lx."},"0xC0000145":{code:"STATUS_APP_INIT_FAILURE",message:"{Application Error} The application failed to initialize properly (0x%lx). Click OK to terminate the application."},"0xC0000146":{code:"STATUS_PAGEFILE_CREATE_FAILED",message:"{Unable to Create Paging File} The creation of the paging file %hs failed (%lx). The requested size was %ld."},"0xC0000147":{code:"STATUS_NO_PAGEFILE",message:"{No Paging File Specified} No paging file was specified in the system configuration."},"0xC0000148":{code:"STATUS_INVALID_LEVEL",message:"{Incorrect System Call Level} An invalid level was passed into the specified system call."},"0xC0000149":{code:"STATUS_WRONG_PASSWORD_CORE",message:"{Incorrect Password to LAN Manager Server} You specified an incorrect password to a LAN Manager 2.x or MS-NET server."},"0xC000014A":{code:"STATUS_ILLEGAL_FLOAT_CONTEXT",message:"{EXCEPTION} A real-mode application issued a floating-point instruction and floating-point hardware is not present."},"0xC000014B":{code:"STATUS_PIPE_BROKEN",message:"The pipe operation has failed because the other end of the pipe has been closed."},"0xC000014C":{code:"STATUS_REGISTRY_CORRUPT",message:"{The Registry Is Corrupt} The structure of one of the files that contains registry data is corrupt; the image of the file in memory is corrupt; or the file could not be recovered because the alternate copy or log was absent or corrupt."},"0xC000014D":{code:"STATUS_REGISTRY_IO_FAILED",message:"An I/O operation initiated by the Registry failed and cannot be recovered. The registry could not read in, write out, or flush one of the files that contain the system's image of the registry."},"0xC000014E":{code:"STATUS_NO_EVENT_PAIR",message:"An event pair synchronization operation was performed using the thread-specific client/server event pair object, but no event pair object was associated with the thread."},"0xC000014F":{code:"STATUS_UNRECOGNIZED_VOLUME",message:"The volume does not contain a recognized file system. Be sure that all required file system drivers are loaded and that the volume is not corrupt."},"0xC0000150":{code:"STATUS_SERIAL_NO_DEVICE_INITED",message:"No serial device was successfully initialized. The serial driver will unload."},"0xC0000151":{code:"STATUS_NO_SUCH_ALIAS",message:"The specified local group does not exist."},"0xC0000152":{code:"STATUS_MEMBER_NOT_IN_ALIAS",message:"The specified account name is not a member of the group."},"0xC0000153":{code:"STATUS_MEMBER_IN_ALIAS",message:"The specified account name is already a member of the group."},"0xC0000154":{code:"STATUS_ALIAS_EXISTS",message:"The specified local group already exists."},"0xC0000155":{code:"STATUS_LOGON_NOT_GRANTED",message:"A requested type of logon (for example, interactive, network, and service) is not granted by the local security policy of the target system. Ask the system administrator to grant the necessary form of logon."},"0xC0000156":{code:"STATUS_TOO_MANY_SECRETS",message:"The maximum number of secrets that may be stored in a single system was exceeded. The length and number of secrets is limited to satisfy U.S. State Department export restrictions."},"0xC0000157":{code:"STATUS_SECRET_TOO_LONG",message:"The length of a secret exceeds the maximum allowable length. The length and number of secrets is limited to satisfy U.S. State Department export restrictions."},"0xC0000158":{code:"STATUS_INTERNAL_DB_ERROR",message:"The local security authority (LSA) database contains an internal inconsistency."},"0xC0000159":{code:"STATUS_FULLSCREEN_MODE",message:"The requested operation cannot be performed in full-screen mode."},"0xC000015A":{code:"STATUS_TOO_MANY_CONTEXT_IDS",message:"During a logon attempt, the user's security context accumulated too many security IDs. This is a very unusual situation. Remove the user from some global or local groups to reduce the number of security IDs to incorporate into the security context."},"0xC000015B":{code:"STATUS_LOGON_TYPE_NOT_GRANTED",message:"A user has requested a type of logon (for example, interactive or network) that has not been granted. An administrator has control over who may logon interactively and through the network."},"0xC000015C":{code:"STATUS_NOT_REGISTRY_FILE",message:"The system has attempted to load or restore a file into the registry, and the specified file is not in the format of a registry file."},"0xC000015D":{code:"STATUS_NT_CROSS_ENCRYPTION_REQUIRED",message:"An attempt was made to change a user password in the security account manager without providing the necessary Windows cross-encrypted password."},"0xC000015E":{code:"STATUS_DOMAIN_CTRLR_CONFIG_ERROR",message:"A Windows Server has an incorrect configuration."},"0xC000015F":{code:"STATUS_FT_MISSING_MEMBER",message:"An attempt was made to explicitly access the secondary copy of information via a device control to the fault tolerance driver and the secondary copy is not present in the system."},"0xC0000160":{code:"STATUS_ILL_FORMED_SERVICE_ENTRY",message:"A configuration registry node that represents a driver service entry was ill-formed and did not contain the required value entries."},"0xC0000161":{code:"STATUS_ILLEGAL_CHARACTER",message:"An illegal character was encountered. For a multibyte character set, this includes a lead byte without a succeeding trail byte. For the Unicode character set this includes the characters 0xFFFF and 0xFFFE."},"0xC0000162":{code:"STATUS_UNMAPPABLE_CHARACTER",message:"No mapping for the Unicode character exists in the target multibyte code page."},"0xC0000163":{code:"STATUS_UNDEFINED_CHARACTER",message:"The Unicode character is not defined in the Unicode character set that is installed on the system."},"0xC0000164":{code:"STATUS_FLOPPY_VOLUME",message:"The paging file cannot be created on a floppy disk."},"0xC0000165":{code:"STATUS_FLOPPY_ID_MARK_NOT_FOUND",message:"{Floppy Disk Error} While accessing a floppy disk, an ID address mark was not found."},"0xC0000166":{code:"STATUS_FLOPPY_WRONG_CYLINDER",message:"{Floppy Disk Error} While accessing a floppy disk, the track address from the sector ID field was found to be different from the track address that is maintained by the controller."},"0xC0000167":{code:"STATUS_FLOPPY_UNKNOWN_ERROR",message:"{Floppy Disk Error} The floppy disk controller reported an error that is not recognized by the floppy disk driver."},"0xC0000168":{code:"STATUS_FLOPPY_BAD_REGISTERS",message:"{Floppy Disk Error} While accessing a floppy-disk, the controller returned inconsistent results via its registers."},"0xC0000169":{code:"STATUS_DISK_RECALIBRATE_FAILED",message:"{Hard Disk Error} While accessing the hard disk, a recalibrate operation failed, even after retries."},"0xC000016A":{code:"STATUS_DISK_OPERATION_FAILED",message:"{Hard Disk Error} While accessing the hard disk, a disk operation failed even after retries."},"0xC000016B":{code:"STATUS_DISK_RESET_FAILED",message:"{Hard Disk Error} While accessing the hard disk, a disk controller reset was needed, but even that failed."},"0xC000016C":{code:"STATUS_SHARED_IRQ_BUSY",message:"An attempt was made to open a device that was sharing an interrupt request (IRQ) with other devices. At least one other device that uses that IRQ was already opened. Two concurrent opens of devices that share an IRQ and only work via interrupts is not supported for the particular bus type that the devices use."},"0xC000016D":{code:"STATUS_FT_ORPHANING",message:"{FT Orphaning} A disk that is part of a fault-tolerant volume can no longer be accessed."},"0xC000016E":{code:"STATUS_BIOS_FAILED_TO_CONNECT_INTERRUPT",message:"The basic input/output system (BIOS) failed to connect a system interrupt to the device or bus for which the device is connected."},"0xC0000172":{code:"STATUS_PARTITION_FAILURE",message:"The tape could not be partitioned."},"0xC0000173":{code:"STATUS_INVALID_BLOCK_LENGTH",message:"When accessing a new tape of a multi-volume partition, the current blocksize is incorrect."},"0xC0000174":{code:"STATUS_DEVICE_NOT_PARTITIONED",message:"The tape partition information could not be found when loading a tape."},"0xC0000175":{code:"STATUS_UNABLE_TO_LOCK_MEDIA",message:"An attempt to lock the eject media mechanism failed."},"0xC0000176":{code:"STATUS_UNABLE_TO_UNLOAD_MEDIA",message:"An attempt to unload media failed."},"0xC0000177":{code:"STATUS_EOM_OVERFLOW",message:"The physical end of tape was detected."},"0xC0000178":{code:"STATUS_NO_MEDIA",message:"{No Media} There is no media in the drive. Insert media into drive %hs."},"0xC000017A":{code:"STATUS_NO_SUCH_MEMBER",message:"A member could not be added to or removed from the local group because the member does not exist."},"0xC000017B":{code:"STATUS_INVALID_MEMBER",message:"A new member could not be added to a local group because the member has the wrong account type."},"0xC000017C":{code:"STATUS_KEY_DELETED",message:"An illegal operation was attempted on a registry key that has been marked for deletion."},"0xC000017D":{code:"STATUS_NO_LOG_SPACE",message:"The system could not allocate the required space in a registry log."},"0xC000017E":{code:"STATUS_TOO_MANY_SIDS",message:"Too many SIDs have been specified."},"0xC000017F":{code:"STATUS_LM_CROSS_ENCRYPTION_REQUIRED",message:"An attempt was made to change a user password in the security account manager without providing the necessary LM cross-encrypted password."},"0xC0000180":{code:"STATUS_KEY_HAS_CHILDREN",message:"An attempt was made to create a symbolic link in a registry key that already has subkeys or values."},"0xC0000181":{code:"STATUS_CHILD_MUST_BE_VOLATILE",message:"An attempt was made to create a stable subkey under a volatile parent key."},"0xC0000182":{code:"STATUS_DEVICE_CONFIGURATION_ERROR",message:"The I/O device is configured incorrectly or the configuration parameters to the driver are incorrect."},"0xC0000183":{code:"STATUS_DRIVER_INTERNAL_ERROR",message:"An error was detected between two drivers or within an I/O driver."},"0xC0000184":{code:"STATUS_INVALID_DEVICE_STATE",message:"The device is not in a valid state to perform this request."},"0xC0000185":{code:"STATUS_IO_DEVICE_ERROR",message:"The I/O device reported an I/O error."},"0xC0000186":{code:"STATUS_DEVICE_PROTOCOL_ERROR",message:"A protocol error was detected between the driver and the device."},"0xC0000187":{code:"STATUS_BACKUP_CONTROLLER",message:"This operation is only allowed for the primary domain controller of the domain."},"0xC0000188":{code:"STATUS_LOG_FILE_FULL",message:"The log file space is insufficient to support this operation."},"0xC0000189":{code:"STATUS_TOO_LATE",message:"A write operation was attempted to a volume after it was dismounted."},"0xC000018A":{code:"STATUS_NO_TRUST_LSA_SECRET",message:"The workstation does not have a trust secret for the primary domain in the local LSA database."},"0xC000018B":{code:"STATUS_NO_TRUST_SAM_ACCOUNT",message:"The SAM database on the Windows Server does not have a computer account for this workstation trust relationship."},"0xC000018C":{code:"STATUS_TRUSTED_DOMAIN_FAILURE",message:"The logon request failed because the trust relationship between the primary domain and the trusted domain failed."},"0xC000018D":{code:"STATUS_TRUSTED_RELATIONSHIP_FAILURE",message:"The logon request failed because the trust relationship between this workstation and the primary domain failed."},"0xC000018E":{code:"STATUS_EVENTLOG_FILE_CORRUPT",message:"The Eventlog log file is corrupt."},"0xC000018F":{code:"STATUS_EVENTLOG_CANT_START",message:"No Eventlog log file could be opened. The Eventlog service did not start."},"0xC0000190":{code:"STATUS_TRUST_FAILURE",message:"The network logon failed. This may be because the validation authority cannot be reached."},"0xC0000191":{code:"STATUS_MUTANT_LIMIT_EXCEEDED",message:"An attempt was made to acquire a mutant such that its maximum count would have been exceeded."},"0xC0000192":{code:"STATUS_NETLOGON_NOT_STARTED",message:"An attempt was made to logon, but the NetLogon service was not started."},"0xC0000193":{code:"STATUS_ACCOUNT_EXPIRED",message:"The user account has expired."},"0xC0000194":{code:"STATUS_POSSIBLE_DEADLOCK",message:"{EXCEPTION} Possible deadlock condition."},"0xC0000195":{code:"STATUS_NETWORK_CREDENTIAL_CONFLICT",message:"Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again."},"0xC0000196":{code:"STATUS_REMOTE_SESSION_LIMIT",message:"An attempt was made to establish a session to a network server, but there are already too many sessions established to that server."},"0xC0000197":{code:"STATUS_EVENTLOG_FILE_CHANGED",message:"The log file has changed between reads."},"0xC0000198":{code:"STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT",message:"The account used is an interdomain trust account. Use your global user account or local user account to access this server."},"0xC0000199":{code:"STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT",message:"The account used is a computer account. Use your global user account or local user account to access this server."},"0xC000019A":{code:"STATUS_NOLOGON_SERVER_TRUST_ACCOUNT",message:"The account used is a server trust account. Use your global user account or local user account to access this server."},"0xC000019B":{code:"STATUS_DOMAIN_TRUST_INCONSISTENT",message:"The name or SID of the specified domain is inconsistent with the trust information for that domain."},"0xC000019C":{code:"STATUS_FS_DRIVER_REQUIRED",message:"A volume has been accessed for which a file system driver is required that has not yet been loaded."},"0xC000019D":{code:"STATUS_IMAGE_ALREADY_LOADED_AS_DLL",message:"Indicates that the specified image is already loaded as a DLL."},"0xC000019E":{code:"STATUS_INCOMPATIBLE_WITH_GLOBAL_SHORT_NAME_REGISTRY_SETTING",message:"Short name settings may not be changed on this volume due to the global registry setting."},"0xC000019F":{code:"STATUS_SHORT_NAMES_NOT_ENABLED_ON_VOLUME",message:"Short names are not enabled on this volume."},"0xC00001A0":{code:"STATUS_SECURITY_STREAM_IS_INCONSISTENT",message:"The security stream for the given volume is in an inconsistent state. Please run CHKDSK on the volume."},"0xC00001A1":{code:"STATUS_INVALID_LOCK_RANGE",message:"A requested file lock operation cannot be processed due to an invalid byte range."},"0xC00001A2":{code:"STATUS_INVALID_ACE_CONDITION",message:"The specified access control entry (ACE) contains an invalid condition."},"0xC00001A3":{code:"STATUS_IMAGE_SUBSYSTEM_NOT_PRESENT",message:"The subsystem needed to support the image type is not present."},"0xC00001A4":{code:"STATUS_NOTIFICATION_GUID_ALREADY_DEFINED",message:"The specified file already has a notification GUID associated with it."},"0xC0000201":{code:"STATUS_NETWORK_OPEN_RESTRICTION",message:"A remote open failed because the network open restrictions were not satisfied."},"0xC0000202":{code:"STATUS_NO_USER_SESSION_KEY",message:"There is no user session key for the specified logon session."},"0xC0000203":{code:"STATUS_USER_SESSION_DELETED",message:"The remote user session has been deleted."},"0xC0000204":{code:"STATUS_RESOURCE_LANG_NOT_FOUND",message:"Indicates the specified resource language ID cannot be found in the image file."},"0xC0000205":{code:"STATUS_INSUFF_SERVER_RESOURCES",message:"Insufficient server resources exist to complete the request."},"0xC0000206":{code:"STATUS_INVALID_BUFFER_SIZE",message:"The size of the buffer is invalid for the specified operation."},"0xC0000207":{code:"STATUS_INVALID_ADDRESS_COMPONENT",message:"The transport rejected the specified network address as invalid."},"0xC0000208":{code:"STATUS_INVALID_ADDRESS_WILDCARD",message:"The transport rejected the specified network address due to invalid use of a wildcard."},"0xC0000209":{code:"STATUS_TOO_MANY_ADDRESSES",message:"The transport address could not be opened because all the available addresses are in use."},"0xC000020A":{code:"STATUS_ADDRESS_ALREADY_EXISTS",message:"The transport address could not be opened because it already exists."},"0xC000020B":{code:"STATUS_ADDRESS_CLOSED",message:"The transport address is now closed."},"0xC000020C":{code:"STATUS_CONNECTION_DISCONNECTED",message:"The transport connection is now disconnected."},"0xC000020D":{code:"STATUS_CONNECTION_RESET",message:"The transport connection has been reset."},"0xC000020E":{code:"STATUS_TOO_MANY_NODES",message:"The transport cannot dynamically acquire any more nodes."},"0xC000020F":{code:"STATUS_TRANSACTION_ABORTED",message:"The transport aborted a pending transaction."},"0xC0000210":{code:"STATUS_TRANSACTION_TIMED_OUT",message:"The transport timed out a request that is waiting for a response."},"0xC0000211":{code:"STATUS_TRANSACTION_NO_RELEASE",message:"The transport did not receive a release for a pending response."},"0xC0000212":{code:"STATUS_TRANSACTION_NO_MATCH",message:"The transport did not find a transaction that matches the specific token."},"0xC0000213":{code:"STATUS_TRANSACTION_RESPONDED",message:"The transport had previously responded to a transaction request."},"0xC0000214":{code:"STATUS_TRANSACTION_INVALID_ID",message:"The transport does not recognize the specified transaction request ID."},"0xC0000215":{code:"STATUS_TRANSACTION_INVALID_TYPE",message:"The transport does not recognize the specified transaction request type."},"0xC0000216":{code:"STATUS_NOT_SERVER_SESSION",message:"The transport can only process the specified request on the server side of a session."},"0xC0000217":{code:"STATUS_NOT_CLIENT_SESSION",message:"The transport can only process the specified request on the client side of a session."},"0xC0000218":{code:"STATUS_CANNOT_LOAD_REGISTRY_FILE",message:"{Registry File Failure} The registry cannot load the hive (file): %hs or its log or alternate. It is corrupt, absent, or not writable."},"0xC0000219":{code:"STATUS_DEBUG_ATTACH_FAILED",message:"{Unexpected Failure in DebugActiveProcess} An unexpected failure occurred while processing a DebugActiveProcess API request. You may choose OK to terminate the process, or Cancel to ignore the error."},"0xC000021A":{code:"STATUS_SYSTEM_PROCESS_TERMINATED",message:"{Fatal System Error} The %hs system process terminated unexpectedly with a status of 0x%08x (0x%08x 0x%08x). The system has been shut down."},"0xC000021B":{code:"STATUS_DATA_NOT_ACCEPTED",message:"{Data Not Accepted} The TDI client could not handle the data received during an indication."},"0xC000021C":{code:"STATUS_NO_BROWSER_SERVERS_FOUND",message:"{Unable to Retrieve Browser Server List} The list of servers for this workgroup is not currently available."},"0xC000021D":{code:"STATUS_VDM_HARD_ERROR",message:"NTVDM encountered a hard error."},"0xC000021E":{code:"STATUS_DRIVER_CANCEL_TIMEOUT",message:"{Cancel Timeout} The driver %hs failed to complete a canceled I/O request in the allotted time."},"0xC000021F":{code:"STATUS_REPLY_MESSAGE_MISMATCH",message:"{Reply Message Mismatch} An attempt was made to reply to an LPC message, but the thread specified by the client ID in the message was not waiting on that message."},"0xC0000220":{code:"STATUS_MAPPED_ALIGNMENT",message:"{Mapped View Alignment Incorrect} An attempt was made to map a view of a file, but either the specified base address or the offset into the file were not aligned on the proper allocation granularity."},"0xC0000221":{code:"STATUS_IMAGE_CHECKSUM_MISMATCH",message:"{Bad Image Checksum} The image %hs is possibly corrupt. The header checksum does not match the computed checksum."},"0xC0000222":{code:"STATUS_LOST_WRITEBEHIND_DATA",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs. The data has been lost. This error may be caused by a failure of your computer hardware or network connection. Try to save this file elsewhere."},"0xC0000223":{code:"STATUS_CLIENT_SERVER_PARAMETERS_INVALID",message:"The parameters passed to the server in the client/server shared memory window were invalid. Too much data may have been put in the shared memory window."},"0xC0000224":{code:"STATUS_PASSWORD_MUST_CHANGE",message:"The user password must be changed before logging on the first time."},"0xC0000225":{code:"STATUS_NOT_FOUND",message:"The object was not found."},"0xC0000226":{code:"STATUS_NOT_TINY_STREAM",message:"The stream is not a tiny stream."},"0xC0000227":{code:"STATUS_RECOVERY_FAILURE",message:"A transaction recovery failed."},"0xC0000228":{code:"STATUS_STACK_OVERFLOW_READ",message:"The request must be handled by the stack overflow code."},"0xC0000229":{code:"STATUS_FAIL_CHECK",message:"A consistency check failed."},"0xC000022A":{code:"STATUS_DUPLICATE_OBJECTID",message:"The attempt to insert the ID in the index failed because the ID is already in the index."},"0xC000022B":{code:"STATUS_OBJECTID_EXISTS",message:"The attempt to set the object ID failed because the object already has an ID."},"0xC000022C":{code:"STATUS_CONVERT_TO_LARGE",message:"Internal OFS status codes indicating how an allocation operation is handled. Either it is retried after the containing oNode is moved or the extent stream is converted to a large stream."},"0xC000022D":{code:"STATUS_RETRY",message:"The request needs to be retried."},"0xC000022E":{code:"STATUS_FOUND_OUT_OF_SCOPE",message:"The attempt to find the object found an object on the volume that matches by ID; however, it is out of the scope of the handle that is used for the operation."},"0xC000022F":{code:"STATUS_ALLOCATE_BUCKET",message:"The bucket array must be grown. Retry the transaction after doing so."},"0xC0000230":{code:"STATUS_PROPSET_NOT_FOUND",message:"The specified property set does not exist on the object."},"0xC0000231":{code:"STATUS_MARSHALL_OVERFLOW",message:"The user/kernel marshaling buffer has overflowed."},"0xC0000232":{code:"STATUS_INVALID_VARIANT",message:"The supplied variant structure contains invalid data."},"0xC0000233":{code:"STATUS_DOMAIN_CONTROLLER_NOT_FOUND",message:"A domain controller for this domain was not found."},"0xC0000234":{code:"STATUS_ACCOUNT_LOCKED_OUT",message:"The user account has been automatically locked because too many invalid logon attempts or password change attempts have been requested."},"0xC0000235":{code:"STATUS_HANDLE_NOT_CLOSABLE",message:"NtClose was called on a handle that was protected from close via NtSetInformationObject."},"0xC0000236":{code:"STATUS_CONNECTION_REFUSED",message:"The transport-connection attempt was refused by the remote system."},"0xC0000237":{code:"STATUS_GRACEFUL_DISCONNECT",message:"The transport connection was gracefully closed."},"0xC0000238":{code:"STATUS_ADDRESS_ALREADY_ASSOCIATED",message:"The transport endpoint already has an address associated with it."},"0xC0000239":{code:"STATUS_ADDRESS_NOT_ASSOCIATED",message:"An address has not yet been associated with the transport endpoint."},"0xC000023A":{code:"STATUS_CONNECTION_INVALID",message:"An operation was attempted on a nonexistent transport connection."},"0xC000023B":{code:"STATUS_CONNECTION_ACTIVE",message:"An invalid operation was attempted on an active transport connection."},"0xC000023C":{code:"STATUS_NETWORK_UNREACHABLE",message:"The remote network is not reachable by the transport."},"0xC000023D":{code:"STATUS_HOST_UNREACHABLE",message:"The remote system is not reachable by the transport."},"0xC000023E":{code:"STATUS_PROTOCOL_UNREACHABLE",message:"The remote system does not support the transport protocol."},"0xC000023F":{code:"STATUS_PORT_UNREACHABLE",message:"No service is operating at the destination port of the transport on the remote system."},"0xC0000240":{code:"STATUS_REQUEST_ABORTED",message:"The request was aborted."},"0xC0000241":{code:"STATUS_CONNECTION_ABORTED",message:"The transport connection was aborted by the local system."},"0xC0000242":{code:"STATUS_BAD_COMPRESSION_BUFFER",message:"The specified buffer contains ill-formed data."},"0xC0000243":{code:"STATUS_USER_MAPPED_FILE",message:"The requested operation cannot be performed on a file with a user mapped section open."},"0xC0000244":{code:"STATUS_AUDIT_FAILED",message:"{Audit Failed} An attempt to generate a security audit failed."},"0xC0000245":{code:"STATUS_TIMER_RESOLUTION_NOT_SET",message:"The timer resolution was not previously set by the current process."},"0xC0000246":{code:"STATUS_CONNECTION_COUNT_LIMIT",message:"A connection to the server could not be made because the limit on the number of concurrent connections for this account has been reached."},"0xC0000247":{code:"STATUS_LOGIN_TIME_RESTRICTION",message:"Attempting to log on during an unauthorized time of day for this account."},"0xC0000248":{code:"STATUS_LOGIN_WKSTA_RESTRICTION",message:"The account is not authorized to log on from this station."},"0xC0000249":{code:"STATUS_IMAGE_MP_UP_MISMATCH",message:"{UP/MP Image Mismatch} The image %hs has been modified for use on a uniprocessor system, but you are running it on a multiprocessor machine. Reinstall the image file."},"0xC0000250":{code:"STATUS_INSUFFICIENT_LOGON_INFO",message:"There is insufficient account information to log you on."},"0xC0000251":{code:"STATUS_BAD_DLL_ENTRYPOINT",message:"{Invalid DLL Entrypoint} The dynamic link library %hs is not written correctly. The stack pointer has been left in an inconsistent state. The entry point should be declared as WINAPI or STDCALL. Select YES to fail the DLL load. Select NO to continue execution. Selecting NO may cause the application to operate incorrectly."},"0xC0000252":{code:"STATUS_BAD_SERVICE_ENTRYPOINT",message:"{Invalid Service Callback Entrypoint} The %hs service is not written correctly. The stack pointer has been left in an inconsistent state. The callback entry point should be declared as WINAPI or STDCALL. Selecting OK will cause the service to continue operation. However, the service process may operate incorrectly."},"0xC0000253":{code:"STATUS_LPC_REPLY_LOST",message:"The server received the messages but did not send a reply."},"0xC0000254":{code:"STATUS_IP_ADDRESS_CONFLICT1",message:"There is an IP address conflict with another system on the network."},"0xC0000255":{code:"STATUS_IP_ADDRESS_CONFLICT2",message:"There is an IP address conflict with another system on the network."},"0xC0000256":{code:"STATUS_REGISTRY_QUOTA_LIMIT",message:"{Low On Registry Space} The system has reached the maximum size that is allowed for the system part of the registry. Additional storage requests will be ignored."},"0xC0000257":{code:"STATUS_PATH_NOT_COVERED",message:"The contacted server does not support the indicated part of the DFS namespace."},"0xC0000258":{code:"STATUS_NO_CALLBACK_ACTIVE",message:"A callback return system service cannot be executed when no callback is active."},"0xC0000259":{code:"STATUS_LICENSE_QUOTA_EXCEEDED",message:"The service being accessed is licensed for a particular number of connections. No more connections can be made to the service at this time because the service has already accepted the maximum number of connections."},"0xC000025A":{code:"STATUS_PWD_TOO_SHORT",message:"The password provided is too short to meet the policy of your user account. Choose a longer password."},"0xC000025B":{code:"STATUS_PWD_TOO_RECENT",message:"The policy of your user account does not allow you to change passwords too frequently. This is done to prevent users from changing back to a familiar, but potentially discovered, password. If you feel your password has been compromised, contact your administrator immediately to have a new one assigned."},"0xC000025C":{code:"STATUS_PWD_HISTORY_CONFLICT",message:"You have attempted to change your password to one that you have used in the past. The policy of your user account does not allow this. Select a password that you have not previously used."},"0xC000025E":{code:"STATUS_PLUGPLAY_NO_DEVICE",message:"You have attempted to load a legacy device driver while its device instance had been disabled."},"0xC000025F":{code:"STATUS_UNSUPPORTED_COMPRESSION",message:"The specified compression format is unsupported."},"0xC0000260":{code:"STATUS_INVALID_HW_PROFILE",message:"The specified hardware profile configuration is invalid."},"0xC0000261":{code:"STATUS_INVALID_PLUGPLAY_DEVICE_PATH",message:"The specified Plug and Play registry device path is invalid."},"0xC0000262":{code:"STATUS_DRIVER_ORDINAL_NOT_FOUND",message:"{Driver Entry Point Not Found} The %hs device driver could not locate the ordinal %ld in driver %hs."},"0xC0000263":{code:"STATUS_DRIVER_ENTRYPOINT_NOT_FOUND",message:"{Driver Entry Point Not Found} The %hs device driver could not locate the entry point %hs in driver %hs."},"0xC0000264":{code:"STATUS_RESOURCE_NOT_OWNED",message:"{Application Error} The application attempted to release a resource it did not own. Click OK to terminate the application."},"0xC0000265":{code:"STATUS_TOO_MANY_LINKS",message:"An attempt was made to create more links on a file than the file system supports."},"0xC0000266":{code:"STATUS_QUOTA_LIST_INCONSISTENT",message:"The specified quota list is internally inconsistent with its descriptor."},"0xC0000267":{code:"STATUS_FILE_IS_OFFLINE",message:"The specified file has been relocated to offline storage."},"0xC0000268":{code:"STATUS_EVALUATION_EXPIRATION",message:"{Windows Evaluation Notification} The evaluation period for this installation of Windows has expired. This system will shutdown in 1 hour. To restore access to this installation of Windows, upgrade this installation by using a licensed distribution of this product."},"0xC0000269":{code:"STATUS_ILLEGAL_DLL_RELOCATION",message:"{Illegal System DLL Relocation} The system DLL %hs was relocated in memory. The application will not run properly. The relocation occurred because the DLL %hs occupied an address range that is reserved for Windows system DLLs. The vendor supplying the DLL should be contacted for a new DLL."},"0xC000026A":{code:"STATUS_LICENSE_VIOLATION",message:"{License Violation} The system has detected tampering with your registered product type. This is a violation of your software license. Tampering with the product type is not permitted."},"0xC000026B":{code:"STATUS_DLL_INIT_FAILED_LOGOFF",message:"{DLL Initialization Failed} The application failed to initialize because the window station is shutting down."},"0xC000026C":{code:"STATUS_DRIVER_UNABLE_TO_LOAD",message:"{Unable to Load Device Driver} %hs device driver could not be loaded. Error Status was 0x%x."},"0xC000026D":{code:"STATUS_DFS_UNAVAILABLE",message:"DFS is unavailable on the contacted server."},"0xC000026E":{code:"STATUS_VOLUME_DISMOUNTED",message:"An operation was attempted to a volume after it was dismounted."},"0xC000026F":{code:"STATUS_WX86_INTERNAL_ERROR",message:"An internal error occurred in the Win32 x86 emulation subsystem."},"0xC0000270":{code:"STATUS_WX86_FLOAT_STACK_CHECK",message:"Win32 x86 emulation subsystem floating-point stack check."},"0xC0000271":{code:"STATUS_VALIDATE_CONTINUE",message:"The validation process needs to continue on to the next step."},"0xC0000272":{code:"STATUS_NO_MATCH",message:"There was no match for the specified key in the index."},"0xC0000273":{code:"STATUS_NO_MORE_MATCHES",message:"There are no more matches for the current index enumeration."},"0xC0000275":{code:"STATUS_NOT_A_REPARSE_POINT",message:"The NTFS file or directory is not a reparse point."},"0xC0000276":{code:"STATUS_IO_REPARSE_TAG_INVALID",message:"The Windows I/O reparse tag passed for the NTFS reparse point is invalid."},"0xC0000277":{code:"STATUS_IO_REPARSE_TAG_MISMATCH",message:"The Windows I/O reparse tag does not match the one that is in the NTFS reparse point."},"0xC0000278":{code:"STATUS_IO_REPARSE_DATA_INVALID",message:"The user data passed for the NTFS reparse point is invalid."},"0xC0000279":{code:"STATUS_IO_REPARSE_TAG_NOT_HANDLED",message:"The layered file system driver for this I/O tag did not handle it when needed."},"0xC0000280":{code:"STATUS_REPARSE_POINT_NOT_RESOLVED",message:"The NTFS symbolic link could not be resolved even though the initial file name is valid."},"0xC0000281":{code:"STATUS_DIRECTORY_IS_A_REPARSE_POINT",message:"The NTFS directory is a reparse point."},"0xC0000282":{code:"STATUS_RANGE_LIST_CONFLICT",message:"The range could not be added to the range list because of a conflict."},"0xC0000283":{code:"STATUS_SOURCE_ELEMENT_EMPTY",message:"The specified medium changer source element contains no media."},"0xC0000284":{code:"STATUS_DESTINATION_ELEMENT_FULL",message:"The specified medium changer destination element already contains media."},"0xC0000285":{code:"STATUS_ILLEGAL_ELEMENT_ADDRESS",message:"The specified medium changer element does not exist."},"0xC0000286":{code:"STATUS_MAGAZINE_NOT_PRESENT",message:"The specified element is contained in a magazine that is no longer present."},"0xC0000287":{code:"STATUS_REINITIALIZATION_NEEDED",message:"The device requires re-initialization due to hardware errors."},"0xC000028A":{code:"STATUS_ENCRYPTION_FAILED",message:"The file encryption attempt failed."},"0xC000028B":{code:"STATUS_DECRYPTION_FAILED",message:"The file decryption attempt failed."},"0xC000028C":{code:"STATUS_RANGE_NOT_FOUND",message:"The specified range could not be found in the range list."},"0xC000028D":{code:"STATUS_NO_RECOVERY_POLICY",message:"There is no encryption recovery policy configured for this system."},"0xC000028E":{code:"STATUS_NO_EFS",message:"The required encryption driver is not loaded for this system."},"0xC000028F":{code:"STATUS_WRONG_EFS",message:"The file was encrypted with a different encryption driver than is currently loaded."},"0xC0000290":{code:"STATUS_NO_USER_KEYS",message:"There are no EFS keys defined for the user."},"0xC0000291":{code:"STATUS_FILE_NOT_ENCRYPTED",message:"The specified file is not encrypted."},"0xC0000292":{code:"STATUS_NOT_EXPORT_FORMAT",message:"The specified file is not in the defined EFS export format."},"0xC0000293":{code:"STATUS_FILE_ENCRYPTED",message:"The specified file is encrypted and the user does not have the ability to decrypt it."},"0xC0000295":{code:"STATUS_WMI_GUID_NOT_FOUND",message:"The GUID passed was not recognized as valid by a WMI data provider."},"0xC0000296":{code:"STATUS_WMI_INSTANCE_NOT_FOUND",message:"The instance name passed was not recognized as valid by a WMI data provider."},"0xC0000297":{code:"STATUS_WMI_ITEMID_NOT_FOUND",message:"The data item ID passed was not recognized as valid by a WMI data provider."},"0xC0000298":{code:"STATUS_WMI_TRY_AGAIN",message:"The WMI request could not be completed and should be retried."},"0xC0000299":{code:"STATUS_SHARED_POLICY",message:"The policy object is shared and can only be modified at the root."},"0xC000029A":{code:"STATUS_POLICY_OBJECT_NOT_FOUND",message:"The policy object does not exist when it should."},"0xC000029B":{code:"STATUS_POLICY_ONLY_IN_DS",message:"The requested policy information only lives in the Ds."},"0xC000029C":{code:"STATUS_VOLUME_NOT_UPGRADED",message:"The volume must be upgraded to enable this feature."},"0xC000029D":{code:"STATUS_REMOTE_STORAGE_NOT_ACTIVE",message:"The remote storage service is not operational at this time."},"0xC000029E":{code:"STATUS_REMOTE_STORAGE_MEDIA_ERROR",message:"The remote storage service encountered a media error."},"0xC000029F":{code:"STATUS_NO_TRACKING_SERVICE",message:"The tracking (workstation) service is not running."},"0xC00002A0":{code:"STATUS_SERVER_SID_MISMATCH",message:"The server process is running under a SID that is different from the SID that is required by client."},"0xC00002A1":{code:"STATUS_DS_NO_ATTRIBUTE_OR_VALUE",message:"The specified directory service attribute or value does not exist."},"0xC00002A2":{code:"STATUS_DS_INVALID_ATTRIBUTE_SYNTAX",message:"The attribute syntax specified to the directory service is invalid."},"0xC00002A3":{code:"STATUS_DS_ATTRIBUTE_TYPE_UNDEFINED",message:"The attribute type specified to the directory service is not defined."},"0xC00002A4":{code:"STATUS_DS_ATTRIBUTE_OR_VALUE_EXISTS",message:"The specified directory service attribute or value already exists."},"0xC00002A5":{code:"STATUS_DS_BUSY",message:"The directory service is busy."},"0xC00002A6":{code:"STATUS_DS_UNAVAILABLE",message:"The directory service is unavailable."},"0xC00002A7":{code:"STATUS_DS_NO_RIDS_ALLOCATED",message:"The directory service was unable to allocate a relative identifier."},"0xC00002A8":{code:"STATUS_DS_NO_MORE_RIDS",message:"The directory service has exhausted the pool of relative identifiers."},"0xC00002A9":{code:"STATUS_DS_INCORRECT_ROLE_OWNER",message:"The requested operation could not be performed because the directory service is not the master for that type of operation."},"0xC00002AA":{code:"STATUS_DS_RIDMGR_INIT_ERROR",message:"The directory service was unable to initialize the subsystem that allocates relative identifiers."},"0xC00002AB":{code:"STATUS_DS_OBJ_CLASS_VIOLATION",message:"The requested operation did not satisfy one or more constraints that are associated with the class of the object."},"0xC00002AC":{code:"STATUS_DS_CANT_ON_NON_LEAF",message:"The directory service can perform the requested operation only on a leaf object."},"0xC00002AD":{code:"STATUS_DS_CANT_ON_RDN",message:"The directory service cannot perform the requested operation on the Relatively Defined Name (RDN) attribute of an object."},"0xC00002AE":{code:"STATUS_DS_CANT_MOD_OBJ_CLASS",message:"The directory service detected an attempt to modify the object class of an object."},"0xC00002AF":{code:"STATUS_DS_CROSS_DOM_MOVE_FAILED",message:"An error occurred while performing a cross domain move operation."},"0xC00002B0":{code:"STATUS_DS_GC_NOT_AVAILABLE",message:"Unable to contact the global catalog server."},"0xC00002B1":{code:"STATUS_DIRECTORY_SERVICE_REQUIRED",message:"The requested operation requires a directory service, and none was available."},"0xC00002B2":{code:"STATUS_REPARSE_ATTRIBUTE_CONFLICT",message:"The reparse attribute cannot be set because it is incompatible with an existing attribute."},"0xC00002B3":{code:"STATUS_CANT_ENABLE_DENY_ONLY",message:'A group marked "use for deny only" cannot be enabled.'},"0xC00002B4":{code:"STATUS_FLOAT_MULTIPLE_FAULTS",message:"{EXCEPTION} Multiple floating-point faults."},"0xC00002B5":{code:"STATUS_FLOAT_MULTIPLE_TRAPS",message:"{EXCEPTION} Multiple floating-point traps."},"0xC00002B6":{code:"STATUS_DEVICE_REMOVED",message:"The device has been removed."},"0xC00002B7":{code:"STATUS_JOURNAL_DELETE_IN_PROGRESS",message:"The volume change journal is being deleted."},"0xC00002B8":{code:"STATUS_JOURNAL_NOT_ACTIVE",message:"The volume change journal is not active."},"0xC00002B9":{code:"STATUS_NOINTERFACE",message:"The requested interface is not supported."},"0xC00002C1":{code:"STATUS_DS_ADMIN_LIMIT_EXCEEDED",message:"A directory service resource limit has been exceeded."},"0xC00002C2":{code:"STATUS_DRIVER_FAILED_SLEEP",message:"{System Standby Failed} The driver %hs does not support standby mode. Updating this driver may allow the system to go to standby mode."},"0xC00002C3":{code:"STATUS_MUTUAL_AUTHENTICATION_FAILED",message:"Mutual Authentication failed. The server password is out of date at the domain controller."},"0xC00002C4":{code:"STATUS_CORRUPT_SYSTEM_FILE",message:"The system file %1 has become corrupt and has been replaced."},"0xC00002C5":{code:"STATUS_DATATYPE_MISALIGNMENT_ERROR",message:"{EXCEPTION} Alignment Error A data type misalignment error was detected in a load or store instruction."},"0xC00002C6":{code:"STATUS_WMI_READ_ONLY",message:"The WMI data item or data block is read-only."},"0xC00002C7":{code:"STATUS_WMI_SET_FAILURE",message:"The WMI data item or data block could not be changed."},"0xC00002C8":{code:"STATUS_COMMITMENT_MINIMUM",message:"{Virtual Memory Minimum Too Low} Your system is low on virtual memory. Windows is increasing the size of your virtual memory paging file. During this process, memory requests for some applications may be denied. For more information, see Help."},"0xC00002C9":{code:"STATUS_REG_NAT_CONSUMPTION",message:"{EXCEPTION} Register NaT consumption faults. A NaT value is consumed on a non-speculative instruction."},"0xC00002CA":{code:"STATUS_TRANSPORT_FULL",message:"The transport element of the medium changer contains media, which is causing the operation to fail."},"0xC00002CB":{code:"STATUS_DS_SAM_INIT_FAILURE",message:"Security Accounts Manager initialization failed because of the following error: %hs Error Status: 0x%x. Click OK to shut down this system and restart in Directory Services Restore Mode. Check the event log for more detailed information."},"0xC00002CC":{code:"STATUS_ONLY_IF_CONNECTED",message:"This operation is supported only when you are connected to the server."},"0xC00002CD":{code:"STATUS_DS_SENSITIVE_GROUP_VIOLATION",message:"Only an administrator can modify the membership list of an administrative group."},"0xC00002CE":{code:"STATUS_PNP_RESTART_ENUMERATION",message:"A device was removed so enumeration must be restarted."},"0xC00002CF":{code:"STATUS_JOURNAL_ENTRY_DELETED",message:"The journal entry has been deleted from the journal."},"0xC00002D0":{code:"STATUS_DS_CANT_MOD_PRIMARYGROUPID",message:"Cannot change the primary group ID of a domain controller account."},"0xC00002D1":{code:"STATUS_SYSTEM_IMAGE_BAD_SIGNATURE",message:"{Fatal System Error} The system image %s is not properly signed. The file has been replaced with the signed file. The system has been shut down."},"0xC00002D2":{code:"STATUS_PNP_REBOOT_REQUIRED",message:"The device will not start without a reboot."},"0xC00002D3":{code:"STATUS_POWER_STATE_INVALID",message:"The power state of the current device cannot support this request."},"0xC00002D4":{code:"STATUS_DS_INVALID_GROUP_TYPE",message:"The specified group type is invalid."},"0xC00002D5":{code:"STATUS_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN",message:"In a mixed domain, no nesting of a global group if the group is security enabled."},"0xC00002D6":{code:"STATUS_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN",message:"In a mixed domain, cannot nest local groups with other local groups, if the group is security enabled."},"0xC00002D7":{code:"STATUS_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER",message:"A global group cannot have a local group as a member."},"0xC00002D8":{code:"STATUS_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER",message:"A global group cannot have a universal group as a member."},"0xC00002D9":{code:"STATUS_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER",message:"A universal group cannot have a local group as a member."},"0xC00002DA":{code:"STATUS_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER",message:"A global group cannot have a cross-domain member."},"0xC00002DB":{code:"STATUS_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER",message:"A local group cannot have another cross-domain local group as a member."},"0xC00002DC":{code:"STATUS_DS_HAVE_PRIMARY_MEMBERS",message:"Cannot change to a security-disabled group because primary members are in this group."},"0xC00002DD":{code:"STATUS_WMI_NOT_SUPPORTED",message:"The WMI operation is not supported by the data block or method."},"0xC00002DE":{code:"STATUS_INSUFFICIENT_POWER",message:"There is not enough power to complete the requested operation."},"0xC00002DF":{code:"STATUS_SAM_NEED_BOOTKEY_PASSWORD",message:"The Security Accounts Manager needs to get the boot password."},"0xC00002E0":{code:"STATUS_SAM_NEED_BOOTKEY_FLOPPY",message:"The Security Accounts Manager needs to get the boot key from the floppy disk."},"0xC00002E1":{code:"STATUS_DS_CANT_START",message:"The directory service cannot start."},"0xC00002E2":{code:"STATUS_DS_INIT_FAILURE",message:"The directory service could not start because of the following error: %hs Error Status: 0x%x. Click OK to shut down this system and restart in Directory Services Restore Mode. Check the event log for more detailed information."},"0xC00002E3":{code:"STATUS_SAM_INIT_FAILURE",message:"The Security Accounts Manager initialization failed because of the following error: %hs Error Status: 0x%x. Click OK to shut down this system and restart in Safe Mode. Check the event log for more detailed information."},"0xC00002E4":{code:"STATUS_DS_GC_REQUIRED",message:"The requested operation can be performed only on a global catalog server."},"0xC00002E5":{code:"STATUS_DS_LOCAL_MEMBER_OF_LOCAL_ONLY",message:"A local group can only be a member of other local groups in the same domain."},"0xC00002E6":{code:"STATUS_DS_NO_FPO_IN_UNIVERSAL_GROUPS",message:"Foreign security principals cannot be members of universal groups."},"0xC00002E7":{code:"STATUS_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED",message:"Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."},"0xC00002E9":{code:"STATUS_CURRENT_DOMAIN_NOT_ALLOWED",message:"This operation cannot be performed on the current domain."},"0xC00002EA":{code:"STATUS_CANNOT_MAKE",message:"The directory or file cannot be created."},"0xC00002EB":{code:"STATUS_SYSTEM_SHUTDOWN",message:"The system is in the process of shutting down."},"0xC00002EC":{code:"STATUS_DS_INIT_FAILURE_CONSOLE",message:"Directory Services could not start because of the following error: %hs Error Status: 0x%x. Click OK to shut down the system. You can use the recovery console to diagnose the system further."},"0xC00002ED":{code:"STATUS_DS_SAM_INIT_FAILURE_CONSOLE",message:"Security Accounts Manager initialization failed because of the following error: %hs Error Status: 0x%x. Click OK to shut down the system. You can use the recovery console to diagnose the system further."},"0xC00002EE":{code:"STATUS_UNFINISHED_CONTEXT_DELETED",message:"A security context was deleted before the context was completed. This is considered a logon failure."},"0xC00002EF":{code:"STATUS_NO_TGT_REPLY",message:"The client is trying to negotiate a context and the server requires user-to-user but did not send a TGT reply."},"0xC00002F0":{code:"STATUS_OBJECTID_NOT_FOUND",message:"An object ID was not found in the file."},"0xC00002F1":{code:"STATUS_NO_IP_ADDRESSES",message:"Unable to accomplish the requested task because the local machine does not have any IP addresses."},"0xC00002F2":{code:"STATUS_WRONG_CREDENTIAL_HANDLE",message:"The supplied credential handle does not match the credential that is associated with the security context."},"0xC00002F3":{code:"STATUS_CRYPTO_SYSTEM_INVALID",message:"The crypto system or checksum function is invalid because a required function is unavailable."},"0xC00002F4":{code:"STATUS_MAX_REFERRALS_EXCEEDED",message:"The number of maximum ticket referrals has been exceeded."},"0xC00002F5":{code:"STATUS_MUST_BE_KDC",message:"The local machine must be a Kerberos KDC (domain controller) and it is not."},"0xC00002F6":{code:"STATUS_STRONG_CRYPTO_NOT_SUPPORTED",message:"The other end of the security negotiation requires strong crypto but it is not supported on the local machine."},"0xC00002F7":{code:"STATUS_TOO_MANY_PRINCIPALS",message:"The KDC reply contained more than one principal name."},"0xC00002F8":{code:"STATUS_NO_PA_DATA",message:"Expected to find PA data for a hint of what etype to use, but it was not found."},"0xC00002F9":{code:"STATUS_PKINIT_NAME_MISMATCH",message:"The client certificate does not contain a valid UPN, or does not match the client name in the logon request. Contact your administrator."},"0xC00002FA":{code:"STATUS_SMARTCARD_LOGON_REQUIRED",message:"Smart card logon is required and was not used."},"0xC00002FB":{code:"STATUS_KDC_INVALID_REQUEST",message:"An invalid request was sent to the KDC."},"0xC00002FC":{code:"STATUS_KDC_UNABLE_TO_REFER",message:"The KDC was unable to generate a referral for the service requested."},"0xC00002FD":{code:"STATUS_KDC_UNKNOWN_ETYPE",message:"The encryption type requested is not supported by the KDC."},"0xC00002FE":{code:"STATUS_SHUTDOWN_IN_PROGRESS",message:"A system shutdown is in progress."},"0xC00002FF":{code:"STATUS_SERVER_SHUTDOWN_IN_PROGRESS",message:"The server machine is shutting down."},"0xC0000300":{code:"STATUS_NOT_SUPPORTED_ON_SBS",message:"This operation is not supported on a computer running Windows Server 2003 for Small Business Server."},"0xC0000301":{code:"STATUS_WMI_GUID_DISCONNECTED",message:"The WMI GUID is no longer available."},"0xC0000302":{code:"STATUS_WMI_ALREADY_DISABLED",message:"Collection or events for the WMI GUID is already disabled."},"0xC0000303":{code:"STATUS_WMI_ALREADY_ENABLED",message:"Collection or events for the WMI GUID is already enabled."},"0xC0000304":{code:"STATUS_MFT_TOO_FRAGMENTED",message:"The master file table on the volume is too fragmented to complete this operation."},"0xC0000305":{code:"STATUS_COPY_PROTECTION_FAILURE",message:"Copy protection failure."},"0xC0000306":{code:"STATUS_CSS_AUTHENTICATION_FAILURE",message:"Copy protection error\u2014DVD CSS Authentication failed."},"0xC0000307":{code:"STATUS_CSS_KEY_NOT_PRESENT",message:"Copy protection error\u2014The specified sector does not contain a valid key."},"0xC0000308":{code:"STATUS_CSS_KEY_NOT_ESTABLISHED",message:"Copy protection error\u2014DVD session key not established."},"0xC0000309":{code:"STATUS_CSS_SCRAMBLED_SECTOR",message:"Copy protection error\u2014The read failed because the sector is encrypted."},"0xC000030A":{code:"STATUS_CSS_REGION_MISMATCH",message:"Copy protection error\u2014The region of the specified DVD does not correspond to the region setting of the drive."},"0xC000030B":{code:"STATUS_CSS_RESETS_EXHAUSTED",message:"Copy protection error\u2014The region setting of the drive may be permanent."},"0xC0000320":{code:"STATUS_PKINIT_FAILURE",message:"The Kerberos protocol encountered an error while validating the KDC certificate during smart card logon. There is more information in the system event log."},"0xC0000321":{code:"STATUS_SMARTCARD_SUBSYSTEM_FAILURE",message:"The Kerberos protocol encountered an error while attempting to use the smart card subsystem."},"0xC0000322":{code:"STATUS_NO_KERB_KEY",message:"The target server does not have acceptable Kerberos credentials."},"0xC0000350":{code:"STATUS_HOST_DOWN",message:"The transport determined that the remote system is down."},"0xC0000351":{code:"STATUS_UNSUPPORTED_PREAUTH",message:"An unsupported pre-authentication mechanism was presented to the Kerberos package."},"0xC0000352":{code:"STATUS_EFS_ALG_BLOB_TOO_BIG",message:"The encryption algorithm that is used on the source file needs a bigger key buffer than the one that is used on the destination file."},"0xC0000353":{code:"STATUS_PORT_NOT_SET",message:"An attempt to remove a processes DebugPort was made, but a port was not already associated with the process."},"0xC0000354":{code:"STATUS_DEBUGGER_INACTIVE",message:"An attempt to do an operation on a debug port failed because the port is in the process of being deleted."},"0xC0000355":{code:"STATUS_DS_VERSION_CHECK_FAILURE",message:"This version of Windows is not compatible with the behavior version of the directory forest, domain, or domain controller."},"0xC0000356":{code:"STATUS_AUDITING_DISABLED",message:"The specified event is currently not being audited."},"0xC0000357":{code:"STATUS_PRENT4_MACHINE_ACCOUNT",message:"The machine account was created prior to Windows NT 4.0. The account needs to be recreated."},"0xC0000358":{code:"STATUS_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER",message:"An account group cannot have a universal group as a member."},"0xC0000359":{code:"STATUS_INVALID_IMAGE_WIN_32",message:"The specified image file did not have the correct format; it appears to be a 32-bit Windows image."},"0xC000035A":{code:"STATUS_INVALID_IMAGE_WIN_64",message:"The specified image file did not have the correct format; it appears to be a 64-bit Windows image."},"0xC000035B":{code:"STATUS_BAD_BINDINGS",message:"The client's supplied SSPI channel bindings were incorrect."},"0xC000035C":{code:"STATUS_NETWORK_SESSION_EXPIRED",message:"The client session has expired; so the client must re-authenticate to continue accessing the remote resources."},"0xC000035D":{code:"STATUS_APPHELP_BLOCK",message:"The AppHelp dialog box canceled; thus preventing the application from starting."},"0xC000035E":{code:"STATUS_ALL_SIDS_FILTERED",message:"The SID filtering operation removed all SIDs."},"0xC000035F":{code:"STATUS_NOT_SAFE_MODE_DRIVER",message:"The driver was not loaded because the system is starting in safe mode."},"0xC0000361":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_DEFAULT",message:"Access to %1 has been restricted by your Administrator by the default software restriction policy level."},"0xC0000362":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_PATH",message:"Access to %1 has been restricted by your Administrator by location with policy rule %2 placed on path %3."},"0xC0000363":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_PUBLISHER",message:"Access to %1 has been restricted by your Administrator by software publisher policy."},"0xC0000364":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_OTHER",message:"Access to %1 has been restricted by your Administrator by policy rule %2."},"0xC0000365":{code:"STATUS_FAILED_DRIVER_ENTRY",message:"The driver was not loaded because it failed its initialization call."},"0xC0000366":{code:"STATUS_DEVICE_ENUMERATION_ERROR",message:"The device encountered an error while applying power or reading the device configuration. This may be caused by a failure of your hardware or by a poor connection."},"0xC0000368":{code:"STATUS_MOUNT_POINT_NOT_RESOLVED",message:"The create operation failed because the name contained at least one mount point that resolves to a volume to which the specified device object is not attached."},"0xC0000369":{code:"STATUS_INVALID_DEVICE_OBJECT_PARAMETER",message:"The device object parameter is either not a valid device object or is not attached to the volume that is specified by the file name."},"0xC000036A":{code:"STATUS_MCA_OCCURED",message:"A machine check error has occurred. Check the system event log for additional information."},"0xC000036B":{code:"STATUS_DRIVER_BLOCKED_CRITICAL",message:"Driver %2 has been blocked from loading."},"0xC000036C":{code:"STATUS_DRIVER_BLOCKED",message:"Driver %2 has been blocked from loading."},"0xC000036D":{code:"STATUS_DRIVER_DATABASE_ERROR",message:"There was error [%2] processing the driver database."},"0xC000036E":{code:"STATUS_SYSTEM_HIVE_TOO_LARGE",message:"System hive size has exceeded its limit."},"0xC000036F":{code:"STATUS_INVALID_IMPORT_OF_NON_DLL",message:"A dynamic link library (DLL) referenced a module that was neither a DLL nor the process's executable image."},"0xC0000371":{code:"STATUS_NO_SECRETS",message:"The local account store does not contain secret material for the specified account."},"0xC0000372":{code:"STATUS_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY",message:"Access to %1 has been restricted by your Administrator by policy rule %2."},"0xC0000373":{code:"STATUS_FAILED_STACK_SWITCH",message:"The system was not able to allocate enough memory to perform a stack switch."},"0xC0000374":{code:"STATUS_HEAP_CORRUPTION",message:"A heap has been corrupted."},"0xC0000380":{code:"STATUS_SMARTCARD_WRONG_PIN",message:"An incorrect PIN was presented to the smart card."},"0xC0000381":{code:"STATUS_SMARTCARD_CARD_BLOCKED",message:"The smart card is blocked."},"0xC0000382":{code:"STATUS_SMARTCARD_CARD_NOT_AUTHENTICATED",message:"No PIN was presented to the smart card."},"0xC0000383":{code:"STATUS_SMARTCARD_NO_CARD",message:"No smart card is available."},"0xC0000384":{code:"STATUS_SMARTCARD_NO_KEY_CONTAINER",message:"The requested key container does not exist on the smart card."},"0xC0000385":{code:"STATUS_SMARTCARD_NO_CERTIFICATE",message:"The requested certificate does not exist on the smart card."},"0xC0000386":{code:"STATUS_SMARTCARD_NO_KEYSET",message:"The requested keyset does not exist."},"0xC0000387":{code:"STATUS_SMARTCARD_IO_ERROR",message:"A communication error with the smart card has been detected."},"0xC0000388":{code:"STATUS_DOWNGRADE_DETECTED",message:"The system detected a possible attempt to compromise security. Ensure that you can contact the server that authenticated you."},"0xC0000389":{code:"STATUS_SMARTCARD_CERT_REVOKED",message:"The smart card certificate used for authentication has been revoked. Contact your system administrator. There may be additional information in the event log."},"0xC000038A":{code:"STATUS_ISSUING_CA_UNTRUSTED",message:"An untrusted certificate authority was detected while processing the smart card certificate that is used for authentication. Contact your system administrator."},"0xC000038B":{code:"STATUS_REVOCATION_OFFLINE_C",message:"The revocation status of the smart card certificate that is used for authentication could not be determined. Contact your system administrator."},"0xC000038C":{code:"STATUS_PKINIT_CLIENT_FAILURE",message:"The smart card certificate used for authentication was not trusted. Contact your system administrator."},"0xC000038D":{code:"STATUS_SMARTCARD_CERT_EXPIRED",message:"The smart card certificate used for authentication has expired. Contact your system administrator."},"0xC000038E":{code:"STATUS_DRIVER_FAILED_PRIOR_UNLOAD",message:"The driver could not be loaded because a previous version of the driver is still in memory."},"0xC000038F":{code:"STATUS_SMARTCARD_SILENT_CONTEXT",message:"The smart card provider could not perform the action because the context was acquired as silent."},"0xC0000401":{code:"STATUS_PER_USER_TRUST_QUOTA_EXCEEDED",message:"The delegated trust creation quota of the current user has been exceeded."},"0xC0000402":{code:"STATUS_ALL_USER_TRUST_QUOTA_EXCEEDED",message:"The total delegated trust creation quota has been exceeded."},"0xC0000403":{code:"STATUS_USER_DELETE_TRUST_QUOTA_EXCEEDED",message:"The delegated trust deletion quota of the current user has been exceeded."},"0xC0000404":{code:"STATUS_DS_NAME_NOT_UNIQUE",message:"The requested name already exists as a unique identifier."},"0xC0000405":{code:"STATUS_DS_DUPLICATE_ID_FOUND",message:"The requested object has a non-unique identifier and cannot be retrieved."},"0xC0000406":{code:"STATUS_DS_GROUP_CONVERSION_ERROR",message:"The group cannot be converted due to attribute restrictions on the requested group type."},"0xC0000407":{code:"STATUS_VOLSNAP_PREPARE_HIBERNATE",message:"{Volume Shadow Copy Service} Wait while the Volume Shadow Copy Service prepares volume %hs for hibernation."},"0xC0000408":{code:"STATUS_USER2USER_REQUIRED",message:"Kerberos sub-protocol User2User is required."},"0xC0000409":{code:"STATUS_STACK_BUFFER_OVERRUN",message:"The system detected an overrun of a stack-based buffer in this application. This overrun could potentially allow a malicious user to gain control of this application."},"0xC000040A":{code:"STATUS_NO_S4U_PROT_SUPPORT",message:"The Kerberos subsystem encountered an error. A service for user protocol request was made against a domain controller which does not support service for user."},"0xC000040B":{code:"STATUS_CROSSREALM_DELEGATION_FAILURE",message:"An attempt was made by this server to make a Kerberos constrained delegation request for a target that is outside the server realm. This action is not supported and the resulting error indicates a misconfiguration on the allowed-to-delegate-to list for this server. Contact your administrator."},"0xC000040C":{code:"STATUS_REVOCATION_OFFLINE_KDC",message:"The revocation status of the domain controller certificate used for smart card authentication could not be determined. There is additional information in the system event log. Contact your system administrator."},"0xC000040D":{code:"STATUS_ISSUING_CA_UNTRUSTED_KDC",message:"An untrusted certificate authority was detected while processing the domain controller certificate used for authentication. There is additional information in the system event log. Contact your system administrator."},"0xC000040E":{code:"STATUS_KDC_CERT_EXPIRED",message:"The domain controller certificate used for smart card logon has expired. Contact your system administrator with the contents of your system event log."},"0xC000040F":{code:"STATUS_KDC_CERT_REVOKED",message:"The domain controller certificate used for smart card logon has been revoked. Contact your system administrator with the contents of your system event log."},"0xC0000410":{code:"STATUS_PARAMETER_QUOTA_EXCEEDED",message:"Data present in one of the parameters is more than the function can operate on."},"0xC0000411":{code:"STATUS_HIBERNATION_FAILURE",message:"The system has failed to hibernate (The error code is %hs). Hibernation will be disabled until the system is restarted."},"0xC0000412":{code:"STATUS_DELAY_LOAD_FAILED",message:"An attempt to delay-load a .dll or get a function address in a delay-loaded .dll failed."},"0xC0000413":{code:"STATUS_AUTHENTICATION_FIREWALL_FAILED",message:"Logon Failure: The machine you are logging onto is protected by an authentication firewall. The specified account is not allowed to authenticate to the machine."},"0xC0000414":{code:"STATUS_VDM_DISALLOWED",message:"%hs is a 16-bit application. You do not have permissions to execute 16-bit applications. Check your permissions with your system administrator."},"0xC0000415":{code:"STATUS_HUNG_DISPLAY_DRIVER_THREAD",message:"{Display Driver Stopped Responding} The %hs display driver has stopped working normally. Save your work and reboot the system to restore full display functionality. The next time you reboot the machine a dialog will be displayed giving you a chance to report this failure to Microsoft."},"0xC0000416":{code:"STATUS_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE",message:"The Desktop heap encountered an error while allocating session memory. There is more information in the system event log."},"0xC0000417":{code:"STATUS_INVALID_CRUNTIME_PARAMETER",message:"An invalid parameter was passed to a C runtime function."},"0xC0000418":{code:"STATUS_NTLM_BLOCKED",message:"The authentication failed because NTLM was blocked."},"0xC0000419":{code:"STATUS_DS_SRC_SID_EXISTS_IN_FOREST",message:"The source object's SID already exists in destination forest."},"0xC000041A":{code:"STATUS_DS_DOMAIN_NAME_EXISTS_IN_FOREST",message:"The domain name of the trusted domain already exists in the forest."},"0xC000041B":{code:"STATUS_DS_FLAT_NAME_EXISTS_IN_FOREST",message:"The flat name of the trusted domain already exists in the forest."},"0xC000041C":{code:"STATUS_INVALID_USER_PRINCIPAL_NAME",message:"The User Principal Name (UPN) is invalid."},"0xC0000420":{code:"STATUS_ASSERTION_FAILURE",message:"There has been an assertion failure."},"0xC0000421":{code:"STATUS_VERIFIER_STOP",message:"Application verifier has found an error in the current process."},"0xC0000423":{code:"STATUS_CALLBACK_POP_STACK",message:"A user mode unwind is in progress."},"0xC0000424":{code:"STATUS_INCOMPATIBLE_DRIVER_BLOCKED",message:"%2 has been blocked from loading due to incompatibility with this system. Contact your software vendor for a compatible version of the driver."},"0xC0000425":{code:"STATUS_HIVE_UNLOADED",message:"Illegal operation attempted on a registry key which has already been unloaded."},"0xC0000426":{code:"STATUS_COMPRESSION_DISABLED",message:"Compression is disabled for this volume."},"0xC0000427":{code:"STATUS_FILE_SYSTEM_LIMITATION",message:"The requested operation could not be completed due to a file system limitation."},"0xC0000428":{code:"STATUS_INVALID_IMAGE_HASH",message:"The hash for image %hs cannot be found in the system catalogs. The image is likely corrupt or the victim of tampering."},"0xC0000429":{code:"STATUS_NOT_CAPABLE",message:"The implementation is not capable of performing the request."},"0xC000042A":{code:"STATUS_REQUEST_OUT_OF_SEQUENCE",message:"The requested operation is out of order with respect to other operations."},"0xC000042B":{code:"STATUS_IMPLEMENTATION_LIMIT",message:"An operation attempted to exceed an implementation-defined limit."},"0xC000042C":{code:"STATUS_ELEVATION_REQUIRED",message:"The requested operation requires elevation."},"0xC000042D":{code:"STATUS_NO_SECURITY_CONTEXT",message:"The required security context does not exist."},"0xC000042E":{code:"STATUS_PKU2U_CERT_FAILURE",message:"The PKU2U protocol encountered an error while attempting to utilize the associated certificates."},"0xC0000432":{code:"STATUS_BEYOND_VDL",message:"The operation was attempted beyond the valid data length of the file."},"0xC0000433":{code:"STATUS_ENCOUNTERED_WRITE_IN_PROGRESS",message:"The attempted write operation encountered a write already in progress for some portion of the range."},"0xC0000434":{code:"STATUS_PTE_CHANGED",message:"The page fault mappings changed in the middle of processing a fault so the operation must be retried."},"0xC0000435":{code:"STATUS_PURGE_FAILED",message:"The attempt to purge this file from memory failed to purge some or all the data from memory."},"0xC0000440":{code:"STATUS_CRED_REQUIRES_CONFIRMATION",message:"The requested credential requires confirmation."},"0xC0000441":{code:"STATUS_CS_ENCRYPTION_INVALID_SERVER_RESPONSE",message:"The remote server sent an invalid response for a file being opened with Client Side Encryption."},"0xC0000442":{code:"STATUS_CS_ENCRYPTION_UNSUPPORTED_SERVER",message:"Client Side Encryption is not supported by the remote server even though it claims to support it."},"0xC0000443":{code:"STATUS_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE",message:"File is encrypted and should be opened in Client Side Encryption mode."},"0xC0000444":{code:"STATUS_CS_ENCRYPTION_NEW_ENCRYPTED_FILE",message:"A new encrypted file is being created and a $EFS needs to be provided."},"0xC0000445":{code:"STATUS_CS_ENCRYPTION_FILE_NOT_CSE",message:"The SMB client requested a CSE FSCTL on a non-CSE file."},"0xC0000446":{code:"STATUS_INVALID_LABEL",message:"Indicates a particular Security ID may not be assigned as the label of an object."},"0xC0000450":{code:"STATUS_DRIVER_PROCESS_TERMINATED",message:"The process hosting the driver for this device has terminated."},"0xC0000451":{code:"STATUS_AMBIGUOUS_SYSTEM_DEVICE",message:"The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria."},"0xC0000452":{code:"STATUS_SYSTEM_DEVICE_NOT_FOUND",message:"The requested system device cannot be found."},"0xC0000453":{code:"STATUS_RESTART_BOOT_APPLICATION",message:"This boot application must be restarted."},"0xC0000454":{code:"STATUS_INSUFFICIENT_NVRAM_RESOURCES",message:"Insufficient NVRAM resources exist to complete the API. A reboot might be required."},"0xC0000460":{code:"STATUS_NO_RANGES_PROCESSED",message:"No ranges for the specified operation were able to be processed."},"0xC0000463":{code:"STATUS_DEVICE_FEATURE_NOT_SUPPORTED",message:"The storage device does not support Offload Write."},"0xC0000464":{code:"STATUS_DEVICE_UNREACHABLE",message:"Data cannot be moved because the source device cannot communicate with the destination device."},"0xC0000465":{code:"STATUS_INVALID_TOKEN",message:"The token representing the data is invalid or expired."},"0xC0000500":{code:"STATUS_INVALID_TASK_NAME",message:"The specified task name is invalid."},"0xC0000501":{code:"STATUS_INVALID_TASK_INDEX",message:"The specified task index is invalid."},"0xC0000502":{code:"STATUS_THREAD_ALREADY_IN_TASK",message:"The specified thread is already joining a task."},"0xC0000503":{code:"STATUS_CALLBACK_BYPASS",message:"A callback has requested to bypass native code."},"0xC0000602":{code:"STATUS_FAIL_FAST_EXCEPTION",message:"A fail fast exception occurred. Exception handlers will not be invoked and the process will be terminated immediately."},"0xC0000603":{code:"STATUS_IMAGE_CERT_REVOKED",message:"Windows cannot verify the digital signature for this file. The signing certificate for this file has been revoked."},"0xC0000700":{code:"STATUS_PORT_CLOSED",message:"The ALPC port is closed."},"0xC0000701":{code:"STATUS_MESSAGE_LOST",message:"The ALPC message requested is no longer available."},"0xC0000702":{code:"STATUS_INVALID_MESSAGE",message:"The ALPC message supplied is invalid."},"0xC0000703":{code:"STATUS_REQUEST_CANCELED",message:"The ALPC message has been canceled."},"0xC0000704":{code:"STATUS_RECURSIVE_DISPATCH",message:"Invalid recursive dispatch attempt."},"0xC0000705":{code:"STATUS_LPC_RECEIVE_BUFFER_EXPECTED",message:"No receive buffer has been supplied in a synchronous request."},"0xC0000706":{code:"STATUS_LPC_INVALID_CONNECTION_USAGE",message:"The connection port is used in an invalid context."},"0xC0000707":{code:"STATUS_LPC_REQUESTS_NOT_ALLOWED",message:"The ALPC port does not accept new request messages."},"0xC0000708":{code:"STATUS_RESOURCE_IN_USE",message:"The resource requested is already in use."},"0xC0000709":{code:"STATUS_HARDWARE_MEMORY_ERROR",message:"The hardware has reported an uncorrectable memory error."},"0xC000070A":{code:"STATUS_THREADPOOL_HANDLE_EXCEPTION",message:"Status 0x%08x was returned, waiting on handle 0x%x for wait 0x%p, in waiter 0x%p."},"0xC000070B":{code:"STATUS_THREADPOOL_SET_EVENT_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to Set event(0x%p) failed with status 0x%08x."},"0xC000070C":{code:"STATUS_THREADPOOL_RELEASE_SEMAPHORE_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to ReleaseSemaphore(0x%p, %d) failed with status 0x%08x."},"0xC000070D":{code:"STATUS_THREADPOOL_RELEASE_MUTEX_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to ReleaseMutex(%p) failed with status 0x%08x."},"0xC000070E":{code:"STATUS_THREADPOOL_FREE_LIBRARY_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to FreeLibrary(%p) failed with status 0x%08x."},"0xC000070F":{code:"STATUS_THREADPOOL_RELEASED_DURING_OPERATION",message:"The thread pool 0x%p was released while a thread was posting a callback to 0x%p(0x%p) to it."},"0xC0000710":{code:"STATUS_CALLBACK_RETURNED_WHILE_IMPERSONATING",message:"A thread pool worker thread is impersonating a client, after a callback to 0x%p(0x%p). This is unexpected, indicating that the callback is missing a call to revert the impersonation."},"0xC0000711":{code:"STATUS_APC_RETURNED_WHILE_IMPERSONATING",message:"A thread pool worker thread is impersonating a client, after executing an APC. This is unexpected, indicating that the APC is missing a call to revert the impersonation."},"0xC0000712":{code:"STATUS_PROCESS_IS_PROTECTED",message:"Either the target process, or the target thread's containing process, is a protected process."},"0xC0000713":{code:"STATUS_MCA_EXCEPTION",message:"A thread is getting dispatched with MCA EXCEPTION because of MCA."},"0xC0000714":{code:"STATUS_CERTIFICATE_MAPPING_NOT_UNIQUE",message:"The client certificate account mapping is not unique."},"0xC0000715":{code:"STATUS_SYMLINK_CLASS_DISABLED",message:"The symbolic link cannot be followed because its type is disabled."},"0xC0000716":{code:"STATUS_INVALID_IDN_NORMALIZATION",message:"Indicates that the specified string is not valid for IDN normalization."},"0xC0000717":{code:"STATUS_NO_UNICODE_TRANSLATION",message:"No mapping for the Unicode character exists in the target multi-byte code page."},"0xC0000718":{code:"STATUS_ALREADY_REGISTERED",message:"The provided callback is already registered."},"0xC0000719":{code:"STATUS_CONTEXT_MISMATCH",message:"The provided context did not match the target."},"0xC000071A":{code:"STATUS_PORT_ALREADY_HAS_COMPLETION_LIST",message:"The specified port already has a completion list."},"0xC000071B":{code:"STATUS_CALLBACK_RETURNED_THREAD_PRIORITY",message:`A threadpool worker thread entered a callback at thread base priority 0x%x and exited at priority 0x%x. -This is unexpected, indicating that the callback missed restoring the priority.`},"0xC000071C":{code:"STATUS_INVALID_THREAD",message:"An invalid thread, handle %p, is specified for this operation. Possibly, a threadpool worker thread was specified."},"0xC000071D":{code:"STATUS_CALLBACK_RETURNED_TRANSACTION",message:`A threadpool worker thread entered a callback, which left transaction state. -This is unexpected, indicating that the callback missed clearing the transaction.`},"0xC000071E":{code:"STATUS_CALLBACK_RETURNED_LDR_LOCK",message:`A threadpool worker thread entered a callback, which left the loader lock held. -This is unexpected, indicating that the callback missed releasing the lock.`},"0xC000071F":{code:"STATUS_CALLBACK_RETURNED_LANG",message:`A threadpool worker thread entered a callback, which left with preferred languages set. -This is unexpected, indicating that the callback missed clearing them.`},"0xC0000720":{code:"STATUS_CALLBACK_RETURNED_PRI_BACK",message:`A threadpool worker thread entered a callback, which left with background priorities set. -This is unexpected, indicating that the callback missed restoring the original priorities.`},"0xC0000800":{code:"STATUS_DISK_REPAIR_DISABLED",message:"The attempted operation required self healing to be enabled."},"0xC0000801":{code:"STATUS_DS_DOMAIN_RENAME_IN_PROGRESS",message:"The directory service cannot perform the requested operation because a domain rename operation is in progress."},"0xC0000802":{code:"STATUS_DISK_QUOTA_EXCEEDED",message:"An operation failed because the storage quota was exceeded."},"0xC0000804":{code:"STATUS_CONTENT_BLOCKED",message:"An operation failed because the content was blocked."},"0xC0000805":{code:"STATUS_BAD_CLUSTERS",message:"The operation could not be completed due to bad clusters on disk."},"0xC0000806":{code:"STATUS_VOLUME_DIRTY",message:"The operation could not be completed because the volume is dirty. Please run the Chkdsk utility and try again."},"0xC0000901":{code:"STATUS_FILE_CHECKED_OUT",message:"This file is checked out or locked for editing by another user."},"0xC0000902":{code:"STATUS_CHECKOUT_REQUIRED",message:"The file must be checked out before saving changes."},"0xC0000903":{code:"STATUS_BAD_FILE_TYPE",message:"The file type being saved or retrieved has been blocked."},"0xC0000904":{code:"STATUS_FILE_TOO_LARGE",message:"The file size exceeds the limit allowed and cannot be saved."},"0xC0000905":{code:"STATUS_FORMS_AUTH_REQUIRED",message:"Access Denied. Before opening files in this location, you must first browse to the e.g. site and select the option to log on automatically."},"0xC0000906":{code:"STATUS_VIRUS_INFECTED",message:"The operation did not complete successfully because the file contains a virus."},"0xC0000907":{code:"STATUS_VIRUS_DELETED",message:"This file contains a virus and cannot be opened. Due to the nature of this virus, the file has been removed from this location."},"0xC0000908":{code:"STATUS_BAD_MCFG_TABLE",message:"The resources required for this device conflict with the MCFG table."},"0xC0000909":{code:"STATUS_CANNOT_BREAK_OPLOCK",message:"The operation did not complete successfully because it would cause an oplock to be broken. The caller has requested that existing oplocks not be broken."},"0xC0009898":{code:"STATUS_WOW_ASSERTION",message:"WOW Assertion Error."},"0xC000A000":{code:"STATUS_INVALID_SIGNATURE",message:"The cryptographic signature is invalid."},"0xC000A001":{code:"STATUS_HMAC_NOT_SUPPORTED",message:"The cryptographic provider does not support HMAC."},"0xC000A010":{code:"STATUS_IPSEC_QUEUE_OVERFLOW",message:"The IPsec queue overflowed."},"0xC000A011":{code:"STATUS_ND_QUEUE_OVERFLOW",message:"The neighbor discovery queue overflowed."},"0xC000A012":{code:"STATUS_HOPLIMIT_EXCEEDED",message:"An Internet Control Message Protocol (ICMP) hop limit exceeded error was received."},"0xC000A013":{code:"STATUS_PROTOCOL_NOT_SUPPORTED",message:"The protocol is not installed on the local machine."},"0xC000A080":{code:"STATUS_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused by network connectivity issues. Try to save this file elsewhere."},"0xC000A081":{code:"STATUS_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error was returned by the server on which the file exists. Try to save this file elsewhere."},"0xC000A082":{code:"STATUS_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused if the device has been removed or the media is write-protected."},"0xC000A083":{code:"STATUS_XML_PARSE_ERROR",message:"Windows was unable to parse the requested XML data."},"0xC000A084":{code:"STATUS_XMLDSIG_ERROR",message:"An error was encountered while processing an XML digital signature."},"0xC000A085":{code:"STATUS_WRONG_COMPARTMENT",message:"This indicates that the caller made the connection request in the wrong routing compartment."},"0xC000A086":{code:"STATUS_AUTHIP_FAILURE",message:"This indicates that there was an AuthIP failure when attempting to connect to the remote host."},"0xC000A087":{code:"STATUS_DS_OID_MAPPED_GROUP_CANT_HAVE_MEMBERS",message:"OID mapped groups cannot have members."},"0xC000A088":{code:"STATUS_DS_OID_NOT_FOUND",message:"The specified OID cannot be found."},"0xC000A100":{code:"STATUS_HASH_NOT_SUPPORTED",message:"Hash generation for the specified version and hash type is not enabled on server."},"0xC000A101":{code:"STATUS_HASH_NOT_PRESENT",message:"The hash requests is not present or not up to date with the current file contents."},"0xC000A2A1":{code:"STATUS_OFFLOAD_READ_FLT_NOT_SUPPORTED",message:"A file system filter on the server has not opted in for Offload Read support."},"0xC000A2A2":{code:"STATUS_OFFLOAD_WRITE_FLT_NOT_SUPPORTED",message:"A file system filter on the server has not opted in for Offload Write support."},"0xC000A2A3":{code:"STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED",message:`Offload read operations cannot be performed on: -Compressed files -Sparse files -Encrypted files -File system metadata files`},"0xC000A2A4":{code:"STATUS_OFFLOAD_WRITE_FILE_NOT_SUPPORTED",message:`Offload write operations cannot be performed on: -Compressed files -Sparse files -Encrypted files -File system metadata files`},"0xC0010001":{code:"DBG_NO_STATE_CHANGE",message:"The debugger did not perform a state change."},"0xC0010002":{code:"DBG_APP_NOT_IDLE",message:"The debugger found that the application is not idle."},"0xC0020001":{code:"RPC_NT_INVALID_STRING_BINDING",message:"The string binding is invalid."},"0xC0020002":{code:"RPC_NT_WRONG_KIND_OF_BINDING",message:"The binding handle is not the correct type."},"0xC0020003":{code:"RPC_NT_INVALID_BINDING",message:"The binding handle is invalid."},"0xC0020004":{code:"RPC_NT_PROTSEQ_NOT_SUPPORTED",message:"The RPC protocol sequence is not supported."},"0xC0020005":{code:"RPC_NT_INVALID_RPC_PROTSEQ",message:"The RPC protocol sequence is invalid."},"0xC0020006":{code:"RPC_NT_INVALID_STRING_UUID",message:"The string UUID is invalid."},"0xC0020007":{code:"RPC_NT_INVALID_ENDPOINT_FORMAT",message:"The endpoint format is invalid."},"0xC0020008":{code:"RPC_NT_INVALID_NET_ADDR",message:"The network address is invalid."},"0xC0020009":{code:"RPC_NT_NO_ENDPOINT_FOUND",message:"No endpoint was found."},"0xC002000A":{code:"RPC_NT_INVALID_TIMEOUT",message:"The time-out value is invalid."},"0xC002000B":{code:"RPC_NT_OBJECT_NOT_FOUND",message:"The object UUID was not found."},"0xC002000C":{code:"RPC_NT_ALREADY_REGISTERED",message:"The object UUID has already been registered."},"0xC002000D":{code:"RPC_NT_TYPE_ALREADY_REGISTERED",message:"The type UUID has already been registered."},"0xC002000E":{code:"RPC_NT_ALREADY_LISTENING",message:"The RPC server is already listening."},"0xC002000F":{code:"RPC_NT_NO_PROTSEQS_REGISTERED",message:"No protocol sequences have been registered."},"0xC0020010":{code:"RPC_NT_NOT_LISTENING",message:"The RPC server is not listening."},"0xC0020011":{code:"RPC_NT_UNKNOWN_MGR_TYPE",message:"The manager type is unknown."},"0xC0020012":{code:"RPC_NT_UNKNOWN_IF",message:"The interface is unknown."},"0xC0020013":{code:"RPC_NT_NO_BINDINGS",message:"There are no bindings."},"0xC0020014":{code:"RPC_NT_NO_PROTSEQS",message:"There are no protocol sequences."},"0xC0020015":{code:"RPC_NT_CANT_CREATE_ENDPOINT",message:"The endpoint cannot be created."},"0xC0020016":{code:"RPC_NT_OUT_OF_RESOURCES",message:"Insufficient resources are available to complete this operation."},"0xC0020017":{code:"RPC_NT_SERVER_UNAVAILABLE",message:"The RPC server is unavailable."},"0xC0020018":{code:"RPC_NT_SERVER_TOO_BUSY",message:"The RPC server is too busy to complete this operation."},"0xC0020019":{code:"RPC_NT_INVALID_NETWORK_OPTIONS",message:"The network options are invalid."},"0xC002001A":{code:"RPC_NT_NO_CALL_ACTIVE",message:"No RPCs are active on this thread."},"0xC002001B":{code:"RPC_NT_CALL_FAILED",message:"The RPC failed."},"0xC002001C":{code:"RPC_NT_CALL_FAILED_DNE",message:"The RPC failed and did not execute."},"0xC002001D":{code:"RPC_NT_PROTOCOL_ERROR",message:"An RPC protocol error occurred."},"0xC002001F":{code:"RPC_NT_UNSUPPORTED_TRANS_SYN",message:"The RPC server does not support the transfer syntax."},"0xC0020021":{code:"RPC_NT_UNSUPPORTED_TYPE",message:"The type UUID is not supported."},"0xC0020022":{code:"RPC_NT_INVALID_TAG",message:"The tag is invalid."},"0xC0020023":{code:"RPC_NT_INVALID_BOUND",message:"The array bounds are invalid."},"0xC0020024":{code:"RPC_NT_NO_ENTRY_NAME",message:"The binding does not contain an entry name."},"0xC0020025":{code:"RPC_NT_INVALID_NAME_SYNTAX",message:"The name syntax is invalid."},"0xC0020026":{code:"RPC_NT_UNSUPPORTED_NAME_SYNTAX",message:"The name syntax is not supported."},"0xC0020028":{code:"RPC_NT_UUID_NO_ADDRESS",message:"No network address is available to construct a UUID."},"0xC0020029":{code:"RPC_NT_DUPLICATE_ENDPOINT",message:"The endpoint is a duplicate."},"0xC002002A":{code:"RPC_NT_UNKNOWN_AUTHN_TYPE",message:"The authentication type is unknown."},"0xC002002B":{code:"RPC_NT_MAX_CALLS_TOO_SMALL",message:"The maximum number of calls is too small."},"0xC002002C":{code:"RPC_NT_STRING_TOO_LONG",message:"The string is too long."},"0xC002002D":{code:"RPC_NT_PROTSEQ_NOT_FOUND",message:"The RPC protocol sequence was not found."},"0xC002002E":{code:"RPC_NT_PROCNUM_OUT_OF_RANGE",message:"The procedure number is out of range."},"0xC002002F":{code:"RPC_NT_BINDING_HAS_NO_AUTH",message:"The binding does not contain any authentication information."},"0xC0020030":{code:"RPC_NT_UNKNOWN_AUTHN_SERVICE",message:"The authentication service is unknown."},"0xC0020031":{code:"RPC_NT_UNKNOWN_AUTHN_LEVEL",message:"The authentication level is unknown."},"0xC0020032":{code:"RPC_NT_INVALID_AUTH_IDENTITY",message:"The security context is invalid."},"0xC0020033":{code:"RPC_NT_UNKNOWN_AUTHZ_SERVICE",message:"The authorization service is unknown."},"0xC0020034":{code:"EPT_NT_INVALID_ENTRY",message:"The entry is invalid."},"0xC0020035":{code:"EPT_NT_CANT_PERFORM_OP",message:"The operation cannot be performed."},"0xC0020036":{code:"EPT_NT_NOT_REGISTERED",message:"No more endpoints are available from the endpoint mapper."},"0xC0020037":{code:"RPC_NT_NOTHING_TO_EXPORT",message:"No interfaces have been exported."},"0xC0020038":{code:"RPC_NT_INCOMPLETE_NAME",message:"The entry name is incomplete."},"0xC0020039":{code:"RPC_NT_INVALID_VERS_OPTION",message:"The version option is invalid."},"0xC002003A":{code:"RPC_NT_NO_MORE_MEMBERS",message:"There are no more members."},"0xC002003B":{code:"RPC_NT_NOT_ALL_OBJS_UNEXPORTED",message:"There is nothing to unexport."},"0xC002003C":{code:"RPC_NT_INTERFACE_NOT_FOUND",message:"The interface was not found."},"0xC002003D":{code:"RPC_NT_ENTRY_ALREADY_EXISTS",message:"The entry already exists."},"0xC002003E":{code:"RPC_NT_ENTRY_NOT_FOUND",message:"The entry was not found."},"0xC002003F":{code:"RPC_NT_NAME_SERVICE_UNAVAILABLE",message:"The name service is unavailable."},"0xC0020040":{code:"RPC_NT_INVALID_NAF_ID",message:"The network address family is invalid."},"0xC0020041":{code:"RPC_NT_CANNOT_SUPPORT",message:"The requested operation is not supported."},"0xC0020042":{code:"RPC_NT_NO_CONTEXT_AVAILABLE",message:"No security context is available to allow impersonation."},"0xC0020043":{code:"RPC_NT_INTERNAL_ERROR",message:"An internal error occurred in the RPC."},"0xC0020044":{code:"RPC_NT_ZERO_DIVIDE",message:"The RPC server attempted to divide an integer by zero."},"0xC0020045":{code:"RPC_NT_ADDRESS_ERROR",message:"An addressing error occurred in the RPC server."},"0xC0020046":{code:"RPC_NT_FP_DIV_ZERO",message:"A floating point operation at the RPC server caused a divide by zero."},"0xC0020047":{code:"RPC_NT_FP_UNDERFLOW",message:"A floating point underflow occurred at the RPC server."},"0xC0020048":{code:"RPC_NT_FP_OVERFLOW",message:"A floating point overflow occurred at the RPC server."},"0xC0020049":{code:"RPC_NT_CALL_IN_PROGRESS",message:"An RPC is already in progress for this thread."},"0xC002004A":{code:"RPC_NT_NO_MORE_BINDINGS",message:"There are no more bindings."},"0xC002004B":{code:"RPC_NT_GROUP_MEMBER_NOT_FOUND",message:"The group member was not found."},"0xC002004C":{code:"EPT_NT_CANT_CREATE",message:"The endpoint mapper database entry could not be created."},"0xC002004D":{code:"RPC_NT_INVALID_OBJECT",message:"The object UUID is the nil UUID."},"0xC002004F":{code:"RPC_NT_NO_INTERFACES",message:"No interfaces have been registered."},"0xC0020050":{code:"RPC_NT_CALL_CANCELLED",message:"The RPC was canceled."},"0xC0020051":{code:"RPC_NT_BINDING_INCOMPLETE",message:"The binding handle does not contain all the required information."},"0xC0020052":{code:"RPC_NT_COMM_FAILURE",message:"A communications failure occurred during an RPC."},"0xC0020053":{code:"RPC_NT_UNSUPPORTED_AUTHN_LEVEL",message:"The requested authentication level is not supported."},"0xC0020054":{code:"RPC_NT_NO_PRINC_NAME",message:"No principal name was registered."},"0xC0020055":{code:"RPC_NT_NOT_RPC_ERROR",message:"The error specified is not a valid Windows RPC error code."},"0xC0020057":{code:"RPC_NT_SEC_PKG_ERROR",message:"A security package-specific error occurred."},"0xC0020058":{code:"RPC_NT_NOT_CANCELLED",message:"The thread was not canceled."},"0xC0020062":{code:"RPC_NT_INVALID_ASYNC_HANDLE",message:"Invalid asynchronous RPC handle."},"0xC0020063":{code:"RPC_NT_INVALID_ASYNC_CALL",message:"Invalid asynchronous RPC call handle for this operation."},"0xC0020064":{code:"RPC_NT_PROXY_ACCESS_DENIED",message:"Access to the HTTP proxy is denied."},"0xC0030001":{code:"RPC_NT_NO_MORE_ENTRIES",message:"The list of RPC servers available for auto-handle binding has been exhausted."},"0xC0030002":{code:"RPC_NT_SS_CHAR_TRANS_OPEN_FAIL",message:"The file designated by DCERPCCHARTRANS cannot be opened."},"0xC0030003":{code:"RPC_NT_SS_CHAR_TRANS_SHORT_FILE",message:"The file containing the character translation table has fewer than 512 bytes."},"0xC0030004":{code:"RPC_NT_SS_IN_NULL_CONTEXT",message:"A null context handle is passed as an [in] parameter."},"0xC0030005":{code:"RPC_NT_SS_CONTEXT_MISMATCH",message:"The context handle does not match any known context handles."},"0xC0030006":{code:"RPC_NT_SS_CONTEXT_DAMAGED",message:"The context handle changed during a call."},"0xC0030007":{code:"RPC_NT_SS_HANDLES_MISMATCH",message:"The binding handles passed to an RPC do not match."},"0xC0030008":{code:"RPC_NT_SS_CANNOT_GET_CALL_HANDLE",message:"The stub is unable to get the call handle."},"0xC0030009":{code:"RPC_NT_NULL_REF_POINTER",message:"A null reference pointer was passed to the stub."},"0xC003000A":{code:"RPC_NT_ENUM_VALUE_OUT_OF_RANGE",message:"The enumeration value is out of range."},"0xC003000B":{code:"RPC_NT_BYTE_COUNT_TOO_SMALL",message:"The byte count is too small."},"0xC003000C":{code:"RPC_NT_BAD_STUB_DATA",message:"The stub received bad data."},"0xC0030059":{code:"RPC_NT_INVALID_ES_ACTION",message:"Invalid operation on the encoding/decoding handle."},"0xC003005A":{code:"RPC_NT_WRONG_ES_VERSION",message:"Incompatible version of the serializing package."},"0xC003005B":{code:"RPC_NT_WRONG_STUB_VERSION",message:"Incompatible version of the RPC stub."},"0xC003005C":{code:"RPC_NT_INVALID_PIPE_OBJECT",message:"The RPC pipe object is invalid or corrupt."},"0xC003005D":{code:"RPC_NT_INVALID_PIPE_OPERATION",message:"An invalid operation was attempted on an RPC pipe object."},"0xC003005E":{code:"RPC_NT_WRONG_PIPE_VERSION",message:"Unsupported RPC pipe version."},"0xC003005F":{code:"RPC_NT_PIPE_CLOSED",message:"The RPC pipe object has already been closed."},"0xC0030060":{code:"RPC_NT_PIPE_DISCIPLINE_ERROR",message:"The RPC call completed before all pipes were processed."},"0xC0030061":{code:"RPC_NT_PIPE_EMPTY",message:"No more data is available from the RPC pipe."},"0xC0040035":{code:"STATUS_PNP_BAD_MPS_TABLE",message:"A device is missing in the system BIOS MPS table. This device will not be used. Contact your system vendor for a system BIOS update."},"0xC0040036":{code:"STATUS_PNP_TRANSLATION_FAILED",message:"A translator failed to translate resources."},"0xC0040037":{code:"STATUS_PNP_IRQ_TRANSLATION_FAILED",message:"An IRQ translator failed to translate resources."},"0xC0040038":{code:"STATUS_PNP_INVALID_ID",message:"Driver %2 returned an invalid ID for a child device (%3)."},"0xC0040039":{code:"STATUS_IO_REISSUE_AS_CACHED",message:"Reissue the given operation as a cached I/O operation"},"0xC00A0001":{code:"STATUS_CTX_WINSTATION_NAME_INVALID",message:"Session name %1 is invalid."},"0xC00A0002":{code:"STATUS_CTX_INVALID_PD",message:"The protocol driver %1 is invalid."},"0xC00A0003":{code:"STATUS_CTX_PD_NOT_FOUND",message:"The protocol driver %1 was not found in the system path."},"0xC00A0006":{code:"STATUS_CTX_CLOSE_PENDING",message:"A close operation is pending on the terminal connection."},"0xC00A0007":{code:"STATUS_CTX_NO_OUTBUF",message:"No free output buffers are available."},"0xC00A0008":{code:"STATUS_CTX_MODEM_INF_NOT_FOUND",message:"The MODEM.INF file was not found."},"0xC00A0009":{code:"STATUS_CTX_INVALID_MODEMNAME",message:"The modem (%1) was not found in the MODEM.INF file."},"0xC00A000A":{code:"STATUS_CTX_RESPONSE_ERROR",message:"The modem did not accept the command sent to it. Verify that the configured modem name matches the attached modem."},"0xC00A000B":{code:"STATUS_CTX_MODEM_RESPONSE_TIMEOUT",message:"The modem did not respond to the command sent to it. Verify that the modem cable is properly attached and the modem is turned on."},"0xC00A000C":{code:"STATUS_CTX_MODEM_RESPONSE_NO_CARRIER",message:"Carrier detection has failed or the carrier has been dropped due to disconnection."},"0xC00A000D":{code:"STATUS_CTX_MODEM_RESPONSE_NO_DIALTONE",message:"A dial tone was not detected within the required time. Verify that the phone cable is properly attached and functional."},"0xC00A000E":{code:"STATUS_CTX_MODEM_RESPONSE_BUSY",message:"A busy signal was detected at a remote site on callback."},"0xC00A000F":{code:"STATUS_CTX_MODEM_RESPONSE_VOICE",message:"A voice was detected at a remote site on callback."},"0xC00A0010":{code:"STATUS_CTX_TD_ERROR",message:"Transport driver error."},"0xC00A0012":{code:"STATUS_CTX_LICENSE_CLIENT_INVALID",message:"The client you are using is not licensed to use this system. Your logon request is denied."},"0xC00A0013":{code:"STATUS_CTX_LICENSE_NOT_AVAILABLE",message:"The system has reached its licensed logon limit. Try again later."},"0xC00A0014":{code:"STATUS_CTX_LICENSE_EXPIRED",message:"The system license has expired. Your logon request is denied."},"0xC00A0015":{code:"STATUS_CTX_WINSTATION_NOT_FOUND",message:"The specified session cannot be found."},"0xC00A0016":{code:"STATUS_CTX_WINSTATION_NAME_COLLISION",message:"The specified session name is already in use."},"0xC00A0017":{code:"STATUS_CTX_WINSTATION_BUSY",message:"The requested operation cannot be completed because the terminal connection is currently processing a connect, disconnect, reset, or delete operation."},"0xC00A0018":{code:"STATUS_CTX_BAD_VIDEO_MODE",message:"An attempt has been made to connect to a session whose video mode is not supported by the current client."},"0xC00A0022":{code:"STATUS_CTX_GRAPHICS_INVALID",message:"The application attempted to enable DOS graphics mode. DOS graphics mode is not supported."},"0xC00A0024":{code:"STATUS_CTX_NOT_CONSOLE",message:"The requested operation can be performed only on the system console. This is most often the result of a driver or system DLL requiring direct console access."},"0xC00A0026":{code:"STATUS_CTX_CLIENT_QUERY_TIMEOUT",message:"The client failed to respond to the server connect message."},"0xC00A0027":{code:"STATUS_CTX_CONSOLE_DISCONNECT",message:"Disconnecting the console session is not supported."},"0xC00A0028":{code:"STATUS_CTX_CONSOLE_CONNECT",message:"Reconnecting a disconnected session to the console is not supported."},"0xC00A002A":{code:"STATUS_CTX_SHADOW_DENIED",message:"The request to control another session remotely was denied."},"0xC00A002B":{code:"STATUS_CTX_WINSTATION_ACCESS_DENIED",message:"A process has requested access to a session, but has not been granted those access rights."},"0xC00A002E":{code:"STATUS_CTX_INVALID_WD",message:"The terminal connection driver %1 is invalid."},"0xC00A002F":{code:"STATUS_CTX_WD_NOT_FOUND",message:"The terminal connection driver %1 was not found in the system path."},"0xC00A0030":{code:"STATUS_CTX_SHADOW_INVALID",message:"The requested session cannot be controlled remotely. You cannot control your own session, a session that is trying to control your session, a session that has no user logged on, or other sessions from the console."},"0xC00A0031":{code:"STATUS_CTX_SHADOW_DISABLED",message:"The requested session is not configured to allow remote control."},"0xC00A0032":{code:"STATUS_RDP_PROTOCOL_ERROR",message:"The RDP protocol component %2 detected an error in the protocol stream and has disconnected the client."},"0xC00A0033":{code:"STATUS_CTX_CLIENT_LICENSE_NOT_SET",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number has not been entered for this copy of the terminal client. Contact your system administrator for help in entering a valid, unique license number for this terminal server client. Click OK to continue."},"0xC00A0034":{code:"STATUS_CTX_CLIENT_LICENSE_IN_USE",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number is currently being used by another user. Contact your system administrator to obtain a new copy of the terminal server client with a valid, unique license number. Click OK to continue."},"0xC00A0035":{code:"STATUS_CTX_SHADOW_ENDED_BY_MODE_CHANGE",message:"The remote control of the console was terminated because the display mode was changed. Changing the display mode in a remote control session is not supported."},"0xC00A0036":{code:"STATUS_CTX_SHADOW_NOT_RUNNING",message:"Remote control could not be terminated because the specified session is not currently being remotely controlled."},"0xC00A0037":{code:"STATUS_CTX_LOGON_DISABLED",message:"Your interactive logon privilege has been disabled. Contact your system administrator."},"0xC00A0038":{code:"STATUS_CTX_SECURITY_LAYER_ERROR",message:"The terminal server security layer detected an error in the protocol stream and has disconnected the client."},"0xC00A0039":{code:"STATUS_TS_INCOMPATIBLE_SESSIONS",message:"The target session is incompatible with the current session."},"0xC00B0001":{code:"STATUS_MUI_FILE_NOT_FOUND",message:"The resource loader failed to find an MUI file."},"0xC00B0002":{code:"STATUS_MUI_INVALID_FILE",message:"The resource loader failed to load an MUI file because the file failed to pass validation."},"0xC00B0003":{code:"STATUS_MUI_INVALID_RC_CONFIG",message:"The RC manifest is corrupted with garbage data, is an unsupported version, or is missing a required item."},"0xC00B0004":{code:"STATUS_MUI_INVALID_LOCALE_NAME",message:"The RC manifest has an invalid culture name."},"0xC00B0005":{code:"STATUS_MUI_INVALID_ULTIMATEFALLBACK_NAME",message:"The RC manifest has and invalid ultimate fallback name."},"0xC00B0006":{code:"STATUS_MUI_FILE_NOT_LOADED",message:"The resource loader cache does not have a loaded MUI entry."},"0xC00B0007":{code:"STATUS_RESOURCE_ENUM_USER_STOP",message:"The user stopped resource enumeration."},"0xC0130001":{code:"STATUS_CLUSTER_INVALID_NODE",message:"The cluster node is not valid."},"0xC0130002":{code:"STATUS_CLUSTER_NODE_EXISTS",message:"The cluster node already exists."},"0xC0130003":{code:"STATUS_CLUSTER_JOIN_IN_PROGRESS",message:"A node is in the process of joining the cluster."},"0xC0130004":{code:"STATUS_CLUSTER_NODE_NOT_FOUND",message:"The cluster node was not found."},"0xC0130005":{code:"STATUS_CLUSTER_LOCAL_NODE_NOT_FOUND",message:"The cluster local node information was not found."},"0xC0130006":{code:"STATUS_CLUSTER_NETWORK_EXISTS",message:"The cluster network already exists."},"0xC0130007":{code:"STATUS_CLUSTER_NETWORK_NOT_FOUND",message:"The cluster network was not found."},"0xC0130008":{code:"STATUS_CLUSTER_NETINTERFACE_EXISTS",message:"The cluster network interface already exists."},"0xC0130009":{code:"STATUS_CLUSTER_NETINTERFACE_NOT_FOUND",message:"The cluster network interface was not found."},"0xC013000A":{code:"STATUS_CLUSTER_INVALID_REQUEST",message:"The cluster request is not valid for this object."},"0xC013000B":{code:"STATUS_CLUSTER_INVALID_NETWORK_PROVIDER",message:"The cluster network provider is not valid."},"0xC013000C":{code:"STATUS_CLUSTER_NODE_DOWN",message:"The cluster node is down."},"0xC013000D":{code:"STATUS_CLUSTER_NODE_UNREACHABLE",message:"The cluster node is not reachable."},"0xC013000E":{code:"STATUS_CLUSTER_NODE_NOT_MEMBER",message:"The cluster node is not a member of the cluster."},"0xC013000F":{code:"STATUS_CLUSTER_JOIN_NOT_IN_PROGRESS",message:"A cluster join operation is not in progress."},"0xC0130010":{code:"STATUS_CLUSTER_INVALID_NETWORK",message:"The cluster network is not valid."},"0xC0130011":{code:"STATUS_CLUSTER_NO_NET_ADAPTERS",message:"No network adapters are available."},"0xC0130012":{code:"STATUS_CLUSTER_NODE_UP",message:"The cluster node is up."},"0xC0130013":{code:"STATUS_CLUSTER_NODE_PAUSED",message:"The cluster node is paused."},"0xC0130014":{code:"STATUS_CLUSTER_NODE_NOT_PAUSED",message:"The cluster node is not paused."},"0xC0130015":{code:"STATUS_CLUSTER_NO_SECURITY_CONTEXT",message:"No cluster security context is available."},"0xC0130016":{code:"STATUS_CLUSTER_NETWORK_NOT_INTERNAL",message:"The cluster network is not configured for internal cluster communication."},"0xC0130017":{code:"STATUS_CLUSTER_POISONED",message:"The cluster node has been poisoned."},"0xC0140001":{code:"STATUS_ACPI_INVALID_OPCODE",message:"An attempt was made to run an invalid AML opcode."},"0xC0140002":{code:"STATUS_ACPI_STACK_OVERFLOW",message:"The AML interpreter stack has overflowed."},"0xC0140003":{code:"STATUS_ACPI_ASSERT_FAILED",message:"An inconsistent state has occurred."},"0xC0140004":{code:"STATUS_ACPI_INVALID_INDEX",message:"An attempt was made to access an array outside its bounds."},"0xC0140005":{code:"STATUS_ACPI_INVALID_ARGUMENT",message:"A required argument was not specified."},"0xC0140006":{code:"STATUS_ACPI_FATAL",message:"A fatal error has occurred."},"0xC0140007":{code:"STATUS_ACPI_INVALID_SUPERNAME",message:"An invalid SuperName was specified."},"0xC0140008":{code:"STATUS_ACPI_INVALID_ARGTYPE",message:"An argument with an incorrect type was specified."},"0xC0140009":{code:"STATUS_ACPI_INVALID_OBJTYPE",message:"An object with an incorrect type was specified."},"0xC014000A":{code:"STATUS_ACPI_INVALID_TARGETTYPE",message:"A target with an incorrect type was specified."},"0xC014000B":{code:"STATUS_ACPI_INCORRECT_ARGUMENT_COUNT",message:"An incorrect number of arguments was specified."},"0xC014000C":{code:"STATUS_ACPI_ADDRESS_NOT_MAPPED",message:"An address failed to translate."},"0xC014000D":{code:"STATUS_ACPI_INVALID_EVENTTYPE",message:"An incorrect event type was specified."},"0xC014000E":{code:"STATUS_ACPI_HANDLER_COLLISION",message:"A handler for the target already exists."},"0xC014000F":{code:"STATUS_ACPI_INVALID_DATA",message:"Invalid data for the target was specified."},"0xC0140010":{code:"STATUS_ACPI_INVALID_REGION",message:"An invalid region for the target was specified."},"0xC0140011":{code:"STATUS_ACPI_INVALID_ACCESS_SIZE",message:"An attempt was made to access a field outside the defined range."},"0xC0140012":{code:"STATUS_ACPI_ACQUIRE_GLOBAL_LOCK",message:"The global system lock could not be acquired."},"0xC0140013":{code:"STATUS_ACPI_ALREADY_INITIALIZED",message:"An attempt was made to reinitialize the ACPI subsystem."},"0xC0140014":{code:"STATUS_ACPI_NOT_INITIALIZED",message:"The ACPI subsystem has not been initialized."},"0xC0140015":{code:"STATUS_ACPI_INVALID_MUTEX_LEVEL",message:"An incorrect mutex was specified."},"0xC0140016":{code:"STATUS_ACPI_MUTEX_NOT_OWNED",message:"The mutex is not currently owned."},"0xC0140017":{code:"STATUS_ACPI_MUTEX_NOT_OWNER",message:"An attempt was made to access the mutex by a process that was not the owner."},"0xC0140018":{code:"STATUS_ACPI_RS_ACCESS",message:"An error occurred during an access to region space."},"0xC0140019":{code:"STATUS_ACPI_INVALID_TABLE",message:"An attempt was made to use an incorrect table."},"0xC0140020":{code:"STATUS_ACPI_REG_HANDLER_FAILED",message:"The registration of an ACPI event failed."},"0xC0140021":{code:"STATUS_ACPI_POWER_REQUEST_FAILED",message:"An ACPI power object failed to transition state."},"0xC0150001":{code:"STATUS_SXS_SECTION_NOT_FOUND",message:"The requested section is not present in the activation context."},"0xC0150002":{code:"STATUS_SXS_CANT_GEN_ACTCTX",message:"Windows was unble to process the application binding information. Refer to the system event log for further information."},"0xC0150003":{code:"STATUS_SXS_INVALID_ACTCTXDATA_FORMAT",message:"The application binding data format is invalid."},"0xC0150004":{code:"STATUS_SXS_ASSEMBLY_NOT_FOUND",message:"The referenced assembly is not installed on the system."},"0xC0150005":{code:"STATUS_SXS_MANIFEST_FORMAT_ERROR",message:"The manifest file does not begin with the required tag and format information."},"0xC0150006":{code:"STATUS_SXS_MANIFEST_PARSE_ERROR",message:"The manifest file contains one or more syntax errors."},"0xC0150007":{code:"STATUS_SXS_ACTIVATION_CONTEXT_DISABLED",message:"The application attempted to activate a disabled activation context."},"0xC0150008":{code:"STATUS_SXS_KEY_NOT_FOUND",message:"The requested lookup key was not found in any active activation context."},"0xC0150009":{code:"STATUS_SXS_VERSION_CONFLICT",message:"A component version required by the application conflicts with another component version that is already active."},"0xC015000A":{code:"STATUS_SXS_WRONG_SECTION_TYPE",message:"The type requested activation context section does not match the query API used."},"0xC015000B":{code:"STATUS_SXS_THREAD_QUERIES_DISABLED",message:"Lack of system resources has required isolated activation to be disabled for the current thread of execution."},"0xC015000C":{code:"STATUS_SXS_ASSEMBLY_MISSING",message:"The referenced assembly could not be found."},"0xC015000E":{code:"STATUS_SXS_PROCESS_DEFAULT_ALREADY_SET",message:"An attempt to set the process default activation context failed because the process default activation context was already set."},"0xC015000F":{code:"STATUS_SXS_EARLY_DEACTIVATION",message:"The activation context being deactivated is not the most recently activated one."},"0xC0150010":{code:"STATUS_SXS_INVALID_DEACTIVATION",message:"The activation context being deactivated is not active for the current thread of execution."},"0xC0150011":{code:"STATUS_SXS_MULTIPLE_DEACTIVATION",message:"The activation context being deactivated has already been deactivated."},"0xC0150012":{code:"STATUS_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY",message:"The activation context of the system default assembly could not be generated."},"0xC0150013":{code:"STATUS_SXS_PROCESS_TERMINATION_REQUESTED",message:"A component used by the isolation facility has requested that the process be terminated."},"0xC0150014":{code:"STATUS_SXS_CORRUPT_ACTIVATION_STACK",message:"The activation context activation stack for the running thread of execution is corrupt."},"0xC0150015":{code:"STATUS_SXS_CORRUPTION",message:"The application isolation metadata for this process or thread has become corrupt."},"0xC0150016":{code:"STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE",message:"The value of an attribute in an identity is not within the legal range."},"0xC0150017":{code:"STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME",message:"The name of an attribute in an identity is not within the legal range."},"0xC0150018":{code:"STATUS_SXS_IDENTITY_DUPLICATE_ATTRIBUTE",message:"An identity contains two definitions for the same attribute."},"0xC0150019":{code:"STATUS_SXS_IDENTITY_PARSE_ERROR",message:"The identity string is malformed. This may be due to a trailing comma, more than two unnamed attributes, a missing attribute name, or a missing attribute value."},"0xC015001A":{code:"STATUS_SXS_COMPONENT_STORE_CORRUPT",message:"The component store has become corrupted."},"0xC015001B":{code:"STATUS_SXS_FILE_HASH_MISMATCH",message:"A component's file does not match the verification information present in the component manifest."},"0xC015001C":{code:"STATUS_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT",message:"The identities of the manifests are identical, but their contents are different."},"0xC015001D":{code:"STATUS_SXS_IDENTITIES_DIFFERENT",message:"The component identities are different."},"0xC015001E":{code:"STATUS_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT",message:"The assembly is not a deployment."},"0xC015001F":{code:"STATUS_SXS_FILE_NOT_PART_OF_ASSEMBLY",message:"The file is not a part of the assembly."},"0xC0150020":{code:"STATUS_ADVANCED_INSTALLER_FAILED",message:"An advanced installer failed during setup or servicing."},"0xC0150021":{code:"STATUS_XML_ENCODING_MISMATCH",message:"The character encoding in the XML declaration did not match the encoding used in the document."},"0xC0150022":{code:"STATUS_SXS_MANIFEST_TOO_BIG",message:"The size of the manifest exceeds the maximum allowed."},"0xC0150023":{code:"STATUS_SXS_SETTING_NOT_REGISTERED",message:"The setting is not registered."},"0xC0150024":{code:"STATUS_SXS_TRANSACTION_CLOSURE_INCOMPLETE",message:"One or more required transaction members are not present."},"0xC0150025":{code:"STATUS_SMI_PRIMITIVE_INSTALLER_FAILED",message:"The SMI primitive installer failed during setup or servicing."},"0xC0150026":{code:"STATUS_GENERIC_COMMAND_FAILED",message:"A generic command executable returned a result that indicates failure."},"0xC0150027":{code:"STATUS_SXS_FILE_HASH_MISSING",message:"A component is missing file verification information in its manifest."},"0xC0190001":{code:"STATUS_TRANSACTIONAL_CONFLICT",message:"The function attempted to use a name that is reserved for use by another transaction."},"0xC0190002":{code:"STATUS_INVALID_TRANSACTION",message:"The transaction handle associated with this operation is invalid."},"0xC0190003":{code:"STATUS_TRANSACTION_NOT_ACTIVE",message:"The requested operation was made in the context of a transaction that is no longer active."},"0xC0190004":{code:"STATUS_TM_INITIALIZATION_FAILED",message:"The transaction manager was unable to be successfully initialized. Transacted operations are not supported."},"0xC0190005":{code:"STATUS_RM_NOT_ACTIVE",message:"Transaction support within the specified file system resource manager was not started or was shut down due to an error."},"0xC0190006":{code:"STATUS_RM_METADATA_CORRUPT",message:"The metadata of the resource manager has been corrupted. The resource manager will not function."},"0xC0190007":{code:"STATUS_TRANSACTION_NOT_JOINED",message:"The resource manager attempted to prepare a transaction that it has not successfully joined."},"0xC0190008":{code:"STATUS_DIRECTORY_NOT_RM",message:"The specified directory does not contain a file system resource manager."},"0xC019000A":{code:"STATUS_TRANSACTIONS_UNSUPPORTED_REMOTE",message:"The remote server or share does not support transacted file operations."},"0xC019000B":{code:"STATUS_LOG_RESIZE_INVALID_SIZE",message:"The requested log size for the file system resource manager is invalid."},"0xC019000C":{code:"STATUS_REMOTE_FILE_VERSION_MISMATCH",message:"The remote server sent mismatching version number or Fid for a file opened with transactions."},"0xC019000F":{code:"STATUS_CRM_PROTOCOL_ALREADY_EXISTS",message:"The resource manager tried to register a protocol that already exists."},"0xC0190010":{code:"STATUS_TRANSACTION_PROPAGATION_FAILED",message:"The attempt to propagate the transaction failed."},"0xC0190011":{code:"STATUS_CRM_PROTOCOL_NOT_FOUND",message:"The requested propagation protocol was not registered as a CRM."},"0xC0190012":{code:"STATUS_TRANSACTION_SUPERIOR_EXISTS",message:"The transaction object already has a superior enlistment, and the caller attempted an operation that would have created a new superior. Only a single superior enlistment is allowed."},"0xC0190013":{code:"STATUS_TRANSACTION_REQUEST_NOT_VALID",message:"The requested operation is not valid on the transaction object in its current state."},"0xC0190014":{code:"STATUS_TRANSACTION_NOT_REQUESTED",message:"The caller has called a response API, but the response is not expected because the transaction manager did not issue the corresponding request to the caller."},"0xC0190015":{code:"STATUS_TRANSACTION_ALREADY_ABORTED",message:"It is too late to perform the requested operation, because the transaction has already been aborted."},"0xC0190016":{code:"STATUS_TRANSACTION_ALREADY_COMMITTED",message:"It is too late to perform the requested operation, because the transaction has already been committed."},"0xC0190017":{code:"STATUS_TRANSACTION_INVALID_MARSHALL_BUFFER",message:"The buffer passed in to NtPushTransaction or NtPullTransaction is not in a valid format."},"0xC0190018":{code:"STATUS_CURRENT_TRANSACTION_NOT_VALID",message:"The current transaction context associated with the thread is not a valid handle to a transaction object."},"0xC0190019":{code:"STATUS_LOG_GROWTH_FAILED",message:"An attempt to create space in the transactional resource manager's log failed. The failure status has been recorded in the event log."},"0xC0190021":{code:"STATUS_OBJECT_NO_LONGER_EXISTS",message:"The object (file, stream, or link) that corresponds to the handle has been deleted by a transaction savepoint rollback."},"0xC0190022":{code:"STATUS_STREAM_MINIVERSION_NOT_FOUND",message:"The specified file miniversion was not found for this transacted file open."},"0xC0190023":{code:"STATUS_STREAM_MINIVERSION_NOT_VALID",message:"The specified file miniversion was found but has been invalidated. The most likely cause is a transaction savepoint rollback."},"0xC0190024":{code:"STATUS_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION",message:"A miniversion may be opened only in the context of the transaction that created it."},"0xC0190025":{code:"STATUS_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT",message:"It is not possible to open a miniversion with modify access."},"0xC0190026":{code:"STATUS_CANT_CREATE_MORE_STREAM_MINIVERSIONS",message:"It is not possible to create any more miniversions for this stream."},"0xC0190028":{code:"STATUS_HANDLE_NO_LONGER_VALID",message:"The handle has been invalidated by a transaction. The most likely cause is the presence of memory mapping on a file or an open handle when the transaction ended or rolled back to savepoint."},"0xC0190030":{code:"STATUS_LOG_CORRUPTION_DETECTED",message:"The log data is corrupt."},"0xC0190032":{code:"STATUS_RM_DISCONNECTED",message:"The transaction outcome is unavailable because the resource manager responsible for it is disconnected."},"0xC0190033":{code:"STATUS_ENLISTMENT_NOT_SUPERIOR",message:"The request was rejected because the enlistment in question is not a superior enlistment."},"0xC0190036":{code:"STATUS_FILE_IDENTITY_NOT_PERSISTENT",message:"The file cannot be opened in a transaction because its identity depends on the outcome of an unresolved transaction."},"0xC0190037":{code:"STATUS_CANT_BREAK_TRANSACTIONAL_DEPENDENCY",message:"The operation cannot be performed because another transaction is depending on this property not changing."},"0xC0190038":{code:"STATUS_CANT_CROSS_RM_BOUNDARY",message:"The operation would involve a single file with two transactional resource managers and is, therefore, not allowed."},"0xC0190039":{code:"STATUS_TXF_DIR_NOT_EMPTY",message:"The $Txf directory must be empty for this operation to succeed."},"0xC019003A":{code:"STATUS_INDOUBT_TRANSACTIONS_EXIST",message:"The operation would leave a transactional resource manager in an inconsistent state and is therefore not allowed."},"0xC019003B":{code:"STATUS_TM_VOLATILE",message:"The operation could not be completed because the transaction manager does not have a log."},"0xC019003C":{code:"STATUS_ROLLBACK_TIMER_EXPIRED",message:"A rollback could not be scheduled because a previously scheduled rollback has already executed or been queued for execution."},"0xC019003D":{code:"STATUS_TXF_ATTRIBUTE_CORRUPT",message:"The transactional metadata attribute on the file or directory %hs is corrupt and unreadable."},"0xC019003E":{code:"STATUS_EFS_NOT_ALLOWED_IN_TRANSACTION",message:"The encryption operation could not be completed because a transaction is active."},"0xC019003F":{code:"STATUS_TRANSACTIONAL_OPEN_NOT_ALLOWED",message:"This object is not allowed to be opened in a transaction."},"0xC0190040":{code:"STATUS_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE",message:"Memory mapping (creating a mapped section) a remote file under a transaction is not supported."},"0xC0190043":{code:"STATUS_TRANSACTION_REQUIRED_PROMOTION",message:"Promotion was required to allow the resource manager to enlist, but the transaction was set to disallow it."},"0xC0190044":{code:"STATUS_CANNOT_EXECUTE_FILE_IN_TRANSACTION",message:"This file is open for modification in an unresolved transaction and may be opened for execute only by a transacted reader."},"0xC0190045":{code:"STATUS_TRANSACTIONS_NOT_FROZEN",message:"The request to thaw frozen transactions was ignored because transactions were not previously frozen."},"0xC0190046":{code:"STATUS_TRANSACTION_FREEZE_IN_PROGRESS",message:"Transactions cannot be frozen because a freeze is already in progress."},"0xC0190047":{code:"STATUS_NOT_SNAPSHOT_VOLUME",message:"The target volume is not a snapshot volume. This operation is valid only on a volume mounted as a snapshot."},"0xC0190048":{code:"STATUS_NO_SAVEPOINT_WITH_OPEN_FILES",message:"The savepoint operation failed because files are open on the transaction, which is not permitted."},"0xC0190049":{code:"STATUS_SPARSE_NOT_ALLOWED_IN_TRANSACTION",message:"The sparse operation could not be completed because a transaction is active on the file."},"0xC019004A":{code:"STATUS_TM_IDENTITY_MISMATCH",message:"The call to create a transaction manager object failed because the Tm Identity that is stored in the log file does not match the Tm Identity that was passed in as an argument."},"0xC019004B":{code:"STATUS_FLOATED_SECTION",message:"I/O was attempted on a section object that has been floated as a result of a transaction ending. There is no valid data."},"0xC019004C":{code:"STATUS_CANNOT_ACCEPT_TRANSACTED_WORK",message:"The transactional resource manager cannot currently accept transacted work due to a transient condition, such as low resources."},"0xC019004D":{code:"STATUS_CANNOT_ABORT_TRANSACTIONS",message:"The transactional resource manager had too many transactions outstanding that could not be aborted. The transactional resource manager has been shut down."},"0xC019004E":{code:"STATUS_TRANSACTION_NOT_FOUND",message:"The specified transaction was unable to be opened because it was not found."},"0xC019004F":{code:"STATUS_RESOURCEMANAGER_NOT_FOUND",message:"The specified resource manager was unable to be opened because it was not found."},"0xC0190050":{code:"STATUS_ENLISTMENT_NOT_FOUND",message:"The specified enlistment was unable to be opened because it was not found."},"0xC0190051":{code:"STATUS_TRANSACTIONMANAGER_NOT_FOUND",message:"The specified transaction manager was unable to be opened because it was not found."},"0xC0190052":{code:"STATUS_TRANSACTIONMANAGER_NOT_ONLINE",message:"The specified resource manager was unable to create an enlistment because its associated transaction manager is not online."},"0xC0190053":{code:"STATUS_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION",message:"The specified transaction manager was unable to create the objects contained in its log file in the Ob namespace. Therefore, the transaction manager was unable to recover."},"0xC0190054":{code:"STATUS_TRANSACTION_NOT_ROOT",message:"The call to create a superior enlistment on this transaction object could not be completed because the transaction object specified for the enlistment is a subordinate branch of the transaction. Only the root of the transaction can be enlisted as a superior."},"0xC0190055":{code:"STATUS_TRANSACTION_OBJECT_EXPIRED",message:"Because the associated transaction manager or resource manager has been closed, the handle is no longer valid."},"0xC0190056":{code:"STATUS_COMPRESSION_NOT_ALLOWED_IN_TRANSACTION",message:"The compression operation could not be completed because a transaction is active on the file."},"0xC0190057":{code:"STATUS_TRANSACTION_RESPONSE_NOT_ENLISTED",message:"The specified operation could not be performed on this superior enlistment because the enlistment was not created with the corresponding completion response in the NotificationMask."},"0xC0190058":{code:"STATUS_TRANSACTION_RECORD_TOO_LONG",message:"The specified operation could not be performed because the record to be logged was too long. This can occur because either there are too many enlistments on this transaction or the combined RecoveryInformation being logged on behalf of those enlistments is too long."},"0xC0190059":{code:"STATUS_NO_LINK_TRACKING_IN_TRANSACTION",message:"The link-tracking operation could not be completed because a transaction is active."},"0xC019005A":{code:"STATUS_OPERATION_NOT_SUPPORTED_IN_TRANSACTION",message:"This operation cannot be performed in a transaction."},"0xC019005B":{code:"STATUS_TRANSACTION_INTEGRITY_VIOLATED",message:"The kernel transaction manager had to abort or forget the transaction because it blocked forward progress."},"0xC0190060":{code:"STATUS_EXPIRED_HANDLE",message:"The handle is no longer properly associated with its transaction. It may have been opened in a transactional resource manager that was subsequently forced to restart. Please close the handle and open a new one."},"0xC0190061":{code:"STATUS_TRANSACTION_NOT_ENLISTED",message:"The specified operation could not be performed because the resource manager is not enlisted in the transaction."},"0xC01A0001":{code:"STATUS_LOG_SECTOR_INVALID",message:"The log service found an invalid log sector."},"0xC01A0002":{code:"STATUS_LOG_SECTOR_PARITY_INVALID",message:"The log service encountered a log sector with invalid block parity."},"0xC01A0003":{code:"STATUS_LOG_SECTOR_REMAPPED",message:"The log service encountered a remapped log sector."},"0xC01A0004":{code:"STATUS_LOG_BLOCK_INCOMPLETE",message:"The log service encountered a partial or incomplete log block."},"0xC01A0005":{code:"STATUS_LOG_INVALID_RANGE",message:"The log service encountered an attempt to access data outside the active log range."},"0xC01A0006":{code:"STATUS_LOG_BLOCKS_EXHAUSTED",message:"The log service user-log marshaling buffers are exhausted."},"0xC01A0007":{code:"STATUS_LOG_READ_CONTEXT_INVALID",message:"The log service encountered an attempt to read from a marshaling area with an invalid read context."},"0xC01A0008":{code:"STATUS_LOG_RESTART_INVALID",message:"The log service encountered an invalid log restart area."},"0xC01A0009":{code:"STATUS_LOG_BLOCK_VERSION",message:"The log service encountered an invalid log block version."},"0xC01A000A":{code:"STATUS_LOG_BLOCK_INVALID",message:"The log service encountered an invalid log block."},"0xC01A000B":{code:"STATUS_LOG_READ_MODE_INVALID",message:"The log service encountered an attempt to read the log with an invalid read mode."},"0xC01A000D":{code:"STATUS_LOG_METADATA_CORRUPT",message:"The log service encountered a corrupted metadata file."},"0xC01A000E":{code:"STATUS_LOG_METADATA_INVALID",message:"The log service encountered a metadata file that could not be created by the log file system."},"0xC01A000F":{code:"STATUS_LOG_METADATA_INCONSISTENT",message:"The log service encountered a metadata file with inconsistent data."},"0xC01A0010":{code:"STATUS_LOG_RESERVATION_INVALID",message:"The log service encountered an attempt to erroneously allocate or dispose reservation space."},"0xC01A0011":{code:"STATUS_LOG_CANT_DELETE",message:"The log service cannot delete the log file or the file system container."},"0xC01A0012":{code:"STATUS_LOG_CONTAINER_LIMIT_EXCEEDED",message:"The log service has reached the maximum allowable containers allocated to a log file."},"0xC01A0013":{code:"STATUS_LOG_START_OF_LOG",message:"The log service has attempted to read or write backward past the start of the log."},"0xC01A0014":{code:"STATUS_LOG_POLICY_ALREADY_INSTALLED",message:"The log policy could not be installed because a policy of the same type is already present."},"0xC01A0015":{code:"STATUS_LOG_POLICY_NOT_INSTALLED",message:"The log policy in question was not installed at the time of the request."},"0xC01A0016":{code:"STATUS_LOG_POLICY_INVALID",message:"The installed set of policies on the log is invalid."},"0xC01A0017":{code:"STATUS_LOG_POLICY_CONFLICT",message:"A policy on the log in question prevented the operation from completing."},"0xC01A0018":{code:"STATUS_LOG_PINNED_ARCHIVE_TAIL",message:"The log space cannot be reclaimed because the log is pinned by the archive tail."},"0xC01A0019":{code:"STATUS_LOG_RECORD_NONEXISTENT",message:"The log record is not a record in the log file."},"0xC01A001A":{code:"STATUS_LOG_RECORDS_RESERVED_INVALID",message:"The number of reserved log records or the adjustment of the number of reserved log records is invalid."},"0xC01A001B":{code:"STATUS_LOG_SPACE_RESERVED_INVALID",message:"The reserved log space or the adjustment of the log space is invalid."},"0xC01A001C":{code:"STATUS_LOG_TAIL_INVALID",message:"A new or existing archive tail or the base of the active log is invalid."},"0xC01A001D":{code:"STATUS_LOG_FULL",message:"The log space is exhausted."},"0xC01A001E":{code:"STATUS_LOG_MULTIPLEXED",message:"The log is multiplexed; no direct writes to the physical log are allowed."},"0xC01A001F":{code:"STATUS_LOG_DEDICATED",message:"The operation failed because the log is dedicated."},"0xC01A0020":{code:"STATUS_LOG_ARCHIVE_NOT_IN_PROGRESS",message:"The operation requires an archive context."},"0xC01A0021":{code:"STATUS_LOG_ARCHIVE_IN_PROGRESS",message:"Log archival is in progress."},"0xC01A0022":{code:"STATUS_LOG_EPHEMERAL",message:"The operation requires a nonephemeral log, but the log is ephemeral."},"0xC01A0023":{code:"STATUS_LOG_NOT_ENOUGH_CONTAINERS",message:"The log must have at least two containers before it can be read from or written to."},"0xC01A0024":{code:"STATUS_LOG_CLIENT_ALREADY_REGISTERED",message:"A log client has already registered on the stream."},"0xC01A0025":{code:"STATUS_LOG_CLIENT_NOT_REGISTERED",message:"A log client has not been registered on the stream."},"0xC01A0026":{code:"STATUS_LOG_FULL_HANDLER_IN_PROGRESS",message:"A request has already been made to handle the log full condition."},"0xC01A0027":{code:"STATUS_LOG_CONTAINER_READ_FAILED",message:"The log service encountered an error when attempting to read from a log container."},"0xC01A0028":{code:"STATUS_LOG_CONTAINER_WRITE_FAILED",message:"The log service encountered an error when attempting to write to a log container."},"0xC01A0029":{code:"STATUS_LOG_CONTAINER_OPEN_FAILED",message:"The log service encountered an error when attempting to open a log container."},"0xC01A002A":{code:"STATUS_LOG_CONTAINER_STATE_INVALID",message:"The log service encountered an invalid container state when attempting a requested action."},"0xC01A002B":{code:"STATUS_LOG_STATE_INVALID",message:"The log service is not in the correct state to perform a requested action."},"0xC01A002C":{code:"STATUS_LOG_PINNED",message:"The log space cannot be reclaimed because the log is pinned."},"0xC01A002D":{code:"STATUS_LOG_METADATA_FLUSH_FAILED",message:"The log metadata flush failed."},"0xC01A002E":{code:"STATUS_LOG_INCONSISTENT_SECURITY",message:"Security on the log and its containers is inconsistent."},"0xC01A002F":{code:"STATUS_LOG_APPENDED_FLUSH_FAILED",message:"Records were appended to the log or reservation changes were made, but the log could not be flushed."},"0xC01A0030":{code:"STATUS_LOG_PINNED_RESERVATION",message:"The log is pinned due to reservation consuming most of the log space. Free some reserved records to make space available."},"0xC01B00EA":{code:"STATUS_VIDEO_HUNG_DISPLAY_DRIVER_THREAD",message:"{Display Driver Stopped Responding} The %hs display driver has stopped working normally. Save your work and reboot the system to restore full display functionality. The next time you reboot the computer, a dialog box will allow you to upload data about this failure to Microsoft."},"0xC01C0001":{code:"STATUS_FLT_NO_HANDLER_DEFINED",message:"A handler was not defined by the filter for this operation."},"0xC01C0002":{code:"STATUS_FLT_CONTEXT_ALREADY_DEFINED",message:"A context is already defined for this object."},"0xC01C0003":{code:"STATUS_FLT_INVALID_ASYNCHRONOUS_REQUEST",message:"Asynchronous requests are not valid for this operation."},"0xC01C0004":{code:"STATUS_FLT_DISALLOW_FAST_IO",message:"This is an internal error code used by the filter manager to determine if a fast I/O operation should be forced down the input/output request packet (IRP) path. Minifilters should never return this value."},"0xC01C0005":{code:"STATUS_FLT_INVALID_NAME_REQUEST",message:"An invalid name request was made. The name requested cannot be retrieved at this time."},"0xC01C0006":{code:"STATUS_FLT_NOT_SAFE_TO_POST_OPERATION",message:"Posting this operation to a worker thread for further processing is not safe at this time because it could lead to a system deadlock."},"0xC01C0007":{code:"STATUS_FLT_NOT_INITIALIZED",message:"The Filter Manager was not initialized when a filter tried to register. Make sure that the Filter Manager is loaded as a driver."},"0xC01C0008":{code:"STATUS_FLT_FILTER_NOT_READY",message:"The filter is not ready for attachment to volumes because it has not finished initializing (FltStartFiltering has not been called)."},"0xC01C0009":{code:"STATUS_FLT_POST_OPERATION_CLEANUP",message:"The filter must clean up any operation-specific context at this time because it is being removed from the system before the operation is completed by the lower drivers."},"0xC01C000A":{code:"STATUS_FLT_INTERNAL_ERROR",message:"The Filter Manager had an internal error from which it cannot recover; therefore, the operation has failed. This is usually the result of a filter returning an invalid value from a pre-operation callback."},"0xC01C000B":{code:"STATUS_FLT_DELETING_OBJECT",message:"The object specified for this action is in the process of being deleted; therefore, the action requested cannot be completed at this time."},"0xC01C000C":{code:"STATUS_FLT_MUST_BE_NONPAGED_POOL",message:"A nonpaged pool must be used for this type of context."},"0xC01C000D":{code:"STATUS_FLT_DUPLICATE_ENTRY",message:"A duplicate handler definition has been provided for an operation."},"0xC01C000E":{code:"STATUS_FLT_CBDQ_DISABLED",message:"The callback data queue has been disabled."},"0xC01C000F":{code:"STATUS_FLT_DO_NOT_ATTACH",message:"Do not attach the filter to the volume at this time."},"0xC01C0010":{code:"STATUS_FLT_DO_NOT_DETACH",message:"Do not detach the filter from the volume at this time."},"0xC01C0011":{code:"STATUS_FLT_INSTANCE_ALTITUDE_COLLISION",message:"An instance already exists at this altitude on the volume specified."},"0xC01C0012":{code:"STATUS_FLT_INSTANCE_NAME_COLLISION",message:"An instance already exists with this name on the volume specified."},"0xC01C0013":{code:"STATUS_FLT_FILTER_NOT_FOUND",message:"The system could not find the filter specified."},"0xC01C0014":{code:"STATUS_FLT_VOLUME_NOT_FOUND",message:"The system could not find the volume specified."},"0xC01C0015":{code:"STATUS_FLT_INSTANCE_NOT_FOUND",message:"The system could not find the instance specified."},"0xC01C0016":{code:"STATUS_FLT_CONTEXT_ALLOCATION_NOT_FOUND",message:"No registered context allocation definition was found for the given request."},"0xC01C0017":{code:"STATUS_FLT_INVALID_CONTEXT_REGISTRATION",message:"An invalid parameter was specified during context registration."},"0xC01C0018":{code:"STATUS_FLT_NAME_CACHE_MISS",message:"The name requested was not found in the Filter Manager name cache and could not be retrieved from the file system."},"0xC01C0019":{code:"STATUS_FLT_NO_DEVICE_OBJECT",message:"The requested device object does not exist for the given volume."},"0xC01C001A":{code:"STATUS_FLT_VOLUME_ALREADY_MOUNTED",message:"The specified volume is already mounted."},"0xC01C001B":{code:"STATUS_FLT_ALREADY_ENLISTED",message:"The specified transaction context is already enlisted in a transaction."},"0xC01C001C":{code:"STATUS_FLT_CONTEXT_ALREADY_LINKED",message:"The specified context is already attached to another object."},"0xC01C0020":{code:"STATUS_FLT_NO_WAITER_FOR_REPLY",message:"No waiter is present for the filter's reply to this message."},"0xC01D0001":{code:"STATUS_MONITOR_NO_DESCRIPTOR",message:"A monitor descriptor could not be obtained."},"0xC01D0002":{code:"STATUS_MONITOR_UNKNOWN_DESCRIPTOR_FORMAT",message:"This release does not support the format of the obtained monitor descriptor."},"0xC01D0003":{code:"STATUS_MONITOR_INVALID_DESCRIPTOR_CHECKSUM",message:"The checksum of the obtained monitor descriptor is invalid."},"0xC01D0004":{code:"STATUS_MONITOR_INVALID_STANDARD_TIMING_BLOCK",message:"The monitor descriptor contains an invalid standard timing block."},"0xC01D0005":{code:"STATUS_MONITOR_WMI_DATABLOCK_REGISTRATION_FAILED",message:"WMI data-block registration failed for one of the MSMonitorClass WMI subclasses."},"0xC01D0006":{code:"STATUS_MONITOR_INVALID_SERIAL_NUMBER_MONDSC_BLOCK",message:"The provided monitor descriptor block is either corrupted or does not contain the monitor's detailed serial number."},"0xC01D0007":{code:"STATUS_MONITOR_INVALID_USER_FRIENDLY_MONDSC_BLOCK",message:"The provided monitor descriptor block is either corrupted or does not contain the monitor's user-friendly name."},"0xC01D0008":{code:"STATUS_MONITOR_NO_MORE_DESCRIPTOR_DATA",message:"There is no monitor descriptor data at the specified (offset or size) region."},"0xC01D0009":{code:"STATUS_MONITOR_INVALID_DETAILED_TIMING_BLOCK",message:"The monitor descriptor contains an invalid detailed timing block."},"0xC01D000A":{code:"STATUS_MONITOR_INVALID_MANUFACTURE_DATE",message:"Monitor descriptor contains invalid manufacture date."},"0xC01E0000":{code:"STATUS_GRAPHICS_NOT_EXCLUSIVE_MODE_OWNER",message:"Exclusive mode ownership is needed to create an unmanaged primary allocation."},"0xC01E0001":{code:"STATUS_GRAPHICS_INSUFFICIENT_DMA_BUFFER",message:"The driver needs more DMA buffer space to complete the requested operation."},"0xC01E0002":{code:"STATUS_GRAPHICS_INVALID_DISPLAY_ADAPTER",message:"The specified display adapter handle is invalid."},"0xC01E0003":{code:"STATUS_GRAPHICS_ADAPTER_WAS_RESET",message:"The specified display adapter and all of its state have been reset."},"0xC01E0004":{code:"STATUS_GRAPHICS_INVALID_DRIVER_MODEL",message:"The driver stack does not match the expected driver model."},"0xC01E0005":{code:"STATUS_GRAPHICS_PRESENT_MODE_CHANGED",message:"Present happened but ended up into the changed desktop mode."},"0xC01E0006":{code:"STATUS_GRAPHICS_PRESENT_OCCLUDED",message:"Nothing to present due to desktop occlusion."},"0xC01E0007":{code:"STATUS_GRAPHICS_PRESENT_DENIED",message:"Not able to present due to denial of desktop access."},"0xC01E0008":{code:"STATUS_GRAPHICS_CANNOTCOLORCONVERT",message:"Not able to present with color conversion."},"0xC01E000B":{code:"STATUS_GRAPHICS_PRESENT_REDIRECTION_DISABLED",message:"Present redirection is disabled (desktop windowing management subsystem is off)."},"0xC01E000C":{code:"STATUS_GRAPHICS_PRESENT_UNOCCLUDED",message:"Previous exclusive VidPn source owner has released its ownership"},"0xC01E0100":{code:"STATUS_GRAPHICS_NO_VIDEO_MEMORY",message:"Not enough video memory is available to complete the operation."},"0xC01E0101":{code:"STATUS_GRAPHICS_CANT_LOCK_MEMORY",message:"Could not probe and lock the underlying memory of an allocation."},"0xC01E0102":{code:"STATUS_GRAPHICS_ALLOCATION_BUSY",message:"The allocation is currently busy."},"0xC01E0103":{code:"STATUS_GRAPHICS_TOO_MANY_REFERENCES",message:"An object being referenced has already reached the maximum reference count and cannot be referenced further."},"0xC01E0104":{code:"STATUS_GRAPHICS_TRY_AGAIN_LATER",message:"A problem could not be solved due to an existing condition. Try again later."},"0xC01E0105":{code:"STATUS_GRAPHICS_TRY_AGAIN_NOW",message:"A problem could not be solved due to an existing condition. Try again now."},"0xC01E0106":{code:"STATUS_GRAPHICS_ALLOCATION_INVALID",message:"The allocation is invalid."},"0xC01E0107":{code:"STATUS_GRAPHICS_UNSWIZZLING_APERTURE_UNAVAILABLE",message:"No more unswizzling apertures are currently available."},"0xC01E0108":{code:"STATUS_GRAPHICS_UNSWIZZLING_APERTURE_UNSUPPORTED",message:"The current allocation cannot be unswizzled by an aperture."},"0xC01E0109":{code:"STATUS_GRAPHICS_CANT_EVICT_PINNED_ALLOCATION",message:"The request failed because a pinned allocation cannot be evicted."},"0xC01E0110":{code:"STATUS_GRAPHICS_INVALID_ALLOCATION_USAGE",message:"The allocation cannot be used from its current segment location for the specified operation."},"0xC01E0111":{code:"STATUS_GRAPHICS_CANT_RENDER_LOCKED_ALLOCATION",message:"A locked allocation cannot be used in the current command buffer."},"0xC01E0112":{code:"STATUS_GRAPHICS_ALLOCATION_CLOSED",message:"The allocation being referenced has been closed permanently."},"0xC01E0113":{code:"STATUS_GRAPHICS_INVALID_ALLOCATION_INSTANCE",message:"An invalid allocation instance is being referenced."},"0xC01E0114":{code:"STATUS_GRAPHICS_INVALID_ALLOCATION_HANDLE",message:"An invalid allocation handle is being referenced."},"0xC01E0115":{code:"STATUS_GRAPHICS_WRONG_ALLOCATION_DEVICE",message:"The allocation being referenced does not belong to the current device."},"0xC01E0116":{code:"STATUS_GRAPHICS_ALLOCATION_CONTENT_LOST",message:"The specified allocation lost its content."},"0xC01E0200":{code:"STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE",message:"A GPU exception was detected on the given device. The device cannot be scheduled."},"0xC01E0300":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY",message:"The specified VidPN topology is invalid."},"0xC01E0301":{code:"STATUS_GRAPHICS_VIDPN_TOPOLOGY_NOT_SUPPORTED",message:"The specified VidPN topology is valid but is not supported by this model of the display adapter."},"0xC01E0302":{code:"STATUS_GRAPHICS_VIDPN_TOPOLOGY_CURRENTLY_NOT_SUPPORTED",message:"The specified VidPN topology is valid but is not currently supported by the display adapter due to allocation of its resources."},"0xC01E0303":{code:"STATUS_GRAPHICS_INVALID_VIDPN",message:"The specified VidPN handle is invalid."},"0xC01E0304":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE",message:"The specified video present source is invalid."},"0xC01E0305":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET",message:"The specified video present target is invalid."},"0xC01E0306":{code:"STATUS_GRAPHICS_VIDPN_MODALITY_NOT_SUPPORTED",message:"The specified VidPN modality is not supported (for example, at least two of the pinned modes are not co-functional)."},"0xC01E0308":{code:"STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET",message:"The specified VidPN source mode set is invalid."},"0xC01E0309":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TARGETMODESET",message:"The specified VidPN target mode set is invalid."},"0xC01E030A":{code:"STATUS_GRAPHICS_INVALID_FREQUENCY",message:"The specified video signal frequency is invalid."},"0xC01E030B":{code:"STATUS_GRAPHICS_INVALID_ACTIVE_REGION",message:"The specified video signal active region is invalid."},"0xC01E030C":{code:"STATUS_GRAPHICS_INVALID_TOTAL_REGION",message:"The specified video signal total region is invalid."},"0xC01E0310":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE_MODE",message:"The specified video present source mode is invalid."},"0xC01E0311":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET_MODE",message:"The specified video present target mode is invalid."},"0xC01E0312":{code:"STATUS_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET",message:"The pinned mode must remain in the set on the VidPN's co-functional modality enumeration."},"0xC01E0313":{code:"STATUS_GRAPHICS_PATH_ALREADY_IN_TOPOLOGY",message:"The specified video present path is already in the VidPN's topology."},"0xC01E0314":{code:"STATUS_GRAPHICS_MODE_ALREADY_IN_MODESET",message:"The specified mode is already in the mode set."},"0xC01E0315":{code:"STATUS_GRAPHICS_INVALID_VIDEOPRESENTSOURCESET",message:"The specified video present source set is invalid."},"0xC01E0316":{code:"STATUS_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET",message:"The specified video present target set is invalid."},"0xC01E0317":{code:"STATUS_GRAPHICS_SOURCE_ALREADY_IN_SET",message:"The specified video present source is already in the video present source set."},"0xC01E0318":{code:"STATUS_GRAPHICS_TARGET_ALREADY_IN_SET",message:"The specified video present target is already in the video present target set."},"0xC01E0319":{code:"STATUS_GRAPHICS_INVALID_VIDPN_PRESENT_PATH",message:"The specified VidPN present path is invalid."},"0xC01E031A":{code:"STATUS_GRAPHICS_NO_RECOMMENDED_VIDPN_TOPOLOGY",message:"The miniport has no recommendation for augmenting the specified VidPN's topology."},"0xC01E031B":{code:"STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGESET",message:"The specified monitor frequency range set is invalid."},"0xC01E031C":{code:"STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE",message:"The specified monitor frequency range is invalid."},"0xC01E031D":{code:"STATUS_GRAPHICS_FREQUENCYRANGE_NOT_IN_SET",message:"The specified frequency range is not in the specified monitor frequency range set."},"0xC01E031F":{code:"STATUS_GRAPHICS_FREQUENCYRANGE_ALREADY_IN_SET",message:"The specified frequency range is already in the specified monitor frequency range set."},"0xC01E0320":{code:"STATUS_GRAPHICS_STALE_MODESET",message:"The specified mode set is stale. Reacquire the new mode set."},"0xC01E0321":{code:"STATUS_GRAPHICS_INVALID_MONITOR_SOURCEMODESET",message:"The specified monitor source mode set is invalid."},"0xC01E0322":{code:"STATUS_GRAPHICS_INVALID_MONITOR_SOURCE_MODE",message:"The specified monitor source mode is invalid."},"0xC01E0323":{code:"STATUS_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN",message:"The miniport does not have a recommendation regarding the request to provide a functional VidPN given the current display adapter configuration."},"0xC01E0324":{code:"STATUS_GRAPHICS_MODE_ID_MUST_BE_UNIQUE",message:"The ID of the specified mode is being used by another mode in the set."},"0xC01E0325":{code:"STATUS_GRAPHICS_EMPTY_ADAPTER_MONITOR_MODE_SUPPORT_INTERSECTION",message:"The system failed to determine a mode that is supported by both the display adapter and the monitor connected to it."},"0xC01E0326":{code:"STATUS_GRAPHICS_VIDEO_PRESENT_TARGETS_LESS_THAN_SOURCES",message:"The number of video present targets must be greater than or equal to the number of video present sources."},"0xC01E0327":{code:"STATUS_GRAPHICS_PATH_NOT_IN_TOPOLOGY",message:"The specified present path is not in the VidPN's topology."},"0xC01E0328":{code:"STATUS_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_SOURCE",message:"The display adapter must have at least one video present source."},"0xC01E0329":{code:"STATUS_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_TARGET",message:"The display adapter must have at least one video present target."},"0xC01E032A":{code:"STATUS_GRAPHICS_INVALID_MONITORDESCRIPTORSET",message:"The specified monitor descriptor set is invalid."},"0xC01E032B":{code:"STATUS_GRAPHICS_INVALID_MONITORDESCRIPTOR",message:"The specified monitor descriptor is invalid."},"0xC01E032C":{code:"STATUS_GRAPHICS_MONITORDESCRIPTOR_NOT_IN_SET",message:"The specified descriptor is not in the specified monitor descriptor set."},"0xC01E032D":{code:"STATUS_GRAPHICS_MONITORDESCRIPTOR_ALREADY_IN_SET",message:"The specified descriptor is already in the specified monitor descriptor set."},"0xC01E032E":{code:"STATUS_GRAPHICS_MONITORDESCRIPTOR_ID_MUST_BE_UNIQUE",message:"The ID of the specified monitor descriptor is being used by another descriptor in the set."},"0xC01E032F":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TARGET_SUBSET_TYPE",message:"The specified video present target subset type is invalid."},"0xC01E0330":{code:"STATUS_GRAPHICS_RESOURCES_NOT_RELATED",message:"Two or more of the specified resources are not related to each other, as defined by the interface semantics."},"0xC01E0331":{code:"STATUS_GRAPHICS_SOURCE_ID_MUST_BE_UNIQUE",message:"The ID of the specified video present source is being used by another source in the set."},"0xC01E0332":{code:"STATUS_GRAPHICS_TARGET_ID_MUST_BE_UNIQUE",message:"The ID of the specified video present target is being used by another target in the set."},"0xC01E0333":{code:"STATUS_GRAPHICS_NO_AVAILABLE_VIDPN_TARGET",message:"The specified VidPN source cannot be used because there is no available VidPN target to connect it to."},"0xC01E0334":{code:"STATUS_GRAPHICS_MONITOR_COULD_NOT_BE_ASSOCIATED_WITH_ADAPTER",message:"The newly arrived monitor could not be associated with a display adapter."},"0xC01E0335":{code:"STATUS_GRAPHICS_NO_VIDPNMGR",message:"The particular display adapter does not have an associated VidPN manager."},"0xC01E0336":{code:"STATUS_GRAPHICS_NO_ACTIVE_VIDPN",message:"The VidPN manager of the particular display adapter does not have an active VidPN."},"0xC01E0337":{code:"STATUS_GRAPHICS_STALE_VIDPN_TOPOLOGY",message:"The specified VidPN topology is stale; obtain the new topology."},"0xC01E0338":{code:"STATUS_GRAPHICS_MONITOR_NOT_CONNECTED",message:"No monitor is connected on the specified video present target."},"0xC01E0339":{code:"STATUS_GRAPHICS_SOURCE_NOT_IN_TOPOLOGY",message:"The specified source is not part of the specified VidPN's topology."},"0xC01E033A":{code:"STATUS_GRAPHICS_INVALID_PRIMARYSURFACE_SIZE",message:"The specified primary surface size is invalid."},"0xC01E033B":{code:"STATUS_GRAPHICS_INVALID_VISIBLEREGION_SIZE",message:"The specified visible region size is invalid."},"0xC01E033C":{code:"STATUS_GRAPHICS_INVALID_STRIDE",message:"The specified stride is invalid."},"0xC01E033D":{code:"STATUS_GRAPHICS_INVALID_PIXELFORMAT",message:"The specified pixel format is invalid."},"0xC01E033E":{code:"STATUS_GRAPHICS_INVALID_COLORBASIS",message:"The specified color basis is invalid."},"0xC01E033F":{code:"STATUS_GRAPHICS_INVALID_PIXELVALUEACCESSMODE",message:"The specified pixel value access mode is invalid."},"0xC01E0340":{code:"STATUS_GRAPHICS_TARGET_NOT_IN_TOPOLOGY",message:"The specified target is not part of the specified VidPN's topology."},"0xC01E0341":{code:"STATUS_GRAPHICS_NO_DISPLAY_MODE_MANAGEMENT_SUPPORT",message:"Failed to acquire the display mode management interface."},"0xC01E0342":{code:"STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE",message:"The specified VidPN source is already owned by a DMM client and cannot be used until that client releases it."},"0xC01E0343":{code:"STATUS_GRAPHICS_CANT_ACCESS_ACTIVE_VIDPN",message:"The specified VidPN is active and cannot be accessed."},"0xC01E0344":{code:"STATUS_GRAPHICS_INVALID_PATH_IMPORTANCE_ORDINAL",message:"The specified VidPN's present path importance ordinal is invalid."},"0xC01E0345":{code:"STATUS_GRAPHICS_INVALID_PATH_CONTENT_GEOMETRY_TRANSFORMATION",message:"The specified VidPN's present path content geometry transformation is invalid."},"0xC01E0346":{code:"STATUS_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_SUPPORTED",message:"The specified content geometry transformation is not supported on the respective VidPN present path."},"0xC01E0347":{code:"STATUS_GRAPHICS_INVALID_GAMMA_RAMP",message:"The specified gamma ramp is invalid."},"0xC01E0348":{code:"STATUS_GRAPHICS_GAMMA_RAMP_NOT_SUPPORTED",message:"The specified gamma ramp is not supported on the respective VidPN present path."},"0xC01E0349":{code:"STATUS_GRAPHICS_MULTISAMPLING_NOT_SUPPORTED",message:"Multisampling is not supported on the respective VidPN present path."},"0xC01E034A":{code:"STATUS_GRAPHICS_MODE_NOT_IN_MODESET",message:"The specified mode is not in the specified mode set."},"0xC01E034D":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY_RECOMMENDATION_REASON",message:"The specified VidPN topology recommendation reason is invalid."},"0xC01E034E":{code:"STATUS_GRAPHICS_INVALID_PATH_CONTENT_TYPE",message:"The specified VidPN present path content type is invalid."},"0xC01E034F":{code:"STATUS_GRAPHICS_INVALID_COPYPROTECTION_TYPE",message:"The specified VidPN present path copy protection type is invalid."},"0xC01E0350":{code:"STATUS_GRAPHICS_UNASSIGNED_MODESET_ALREADY_EXISTS",message:"Only one unassigned mode set can exist at any one time for a particular VidPN source or target."},"0xC01E0352":{code:"STATUS_GRAPHICS_INVALID_SCANLINE_ORDERING",message:"The specified scan line ordering type is invalid."},"0xC01E0353":{code:"STATUS_GRAPHICS_TOPOLOGY_CHANGES_NOT_ALLOWED",message:"The topology changes are not allowed for the specified VidPN."},"0xC01E0354":{code:"STATUS_GRAPHICS_NO_AVAILABLE_IMPORTANCE_ORDINALS",message:"All available importance ordinals are being used in the specified topology."},"0xC01E0355":{code:"STATUS_GRAPHICS_INCOMPATIBLE_PRIVATE_FORMAT",message:"The specified primary surface has a different private-format attribute than the current primary surface."},"0xC01E0356":{code:"STATUS_GRAPHICS_INVALID_MODE_PRUNING_ALGORITHM",message:"The specified mode-pruning algorithm is invalid."},"0xC01E0357":{code:"STATUS_GRAPHICS_INVALID_MONITOR_CAPABILITY_ORIGIN",message:"The specified monitor-capability origin is invalid."},"0xC01E0358":{code:"STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE_CONSTRAINT",message:"The specified monitor-frequency range constraint is invalid."},"0xC01E0359":{code:"STATUS_GRAPHICS_MAX_NUM_PATHS_REACHED",message:"The maximum supported number of present paths has been reached."},"0xC01E035A":{code:"STATUS_GRAPHICS_CANCEL_VIDPN_TOPOLOGY_AUGMENTATION",message:"The miniport requested that augmentation be canceled for the specified source of the specified VidPN's topology."},"0xC01E035B":{code:"STATUS_GRAPHICS_INVALID_CLIENT_TYPE",message:"The specified client type was not recognized."},"0xC01E035C":{code:"STATUS_GRAPHICS_CLIENTVIDPN_NOT_SET",message:"The client VidPN is not set on this adapter (for example, no user mode-initiated mode changes have taken place on this adapter)."},"0xC01E0400":{code:"STATUS_GRAPHICS_SPECIFIED_CHILD_ALREADY_CONNECTED",message:"The specified display adapter child device already has an external device connected to it."},"0xC01E0401":{code:"STATUS_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED",message:"The display adapter child device does not support reporting a descriptor."},"0xC01E0430":{code:"STATUS_GRAPHICS_NOT_A_LINKED_ADAPTER",message:"The display adapter is not linked to any other adapters."},"0xC01E0431":{code:"STATUS_GRAPHICS_LEADLINK_NOT_ENUMERATED",message:"The lead adapter in a linked configuration was not enumerated yet."},"0xC01E0432":{code:"STATUS_GRAPHICS_CHAINLINKS_NOT_ENUMERATED",message:"Some chain adapters in a linked configuration have not yet been enumerated."},"0xC01E0433":{code:"STATUS_GRAPHICS_ADAPTER_CHAIN_NOT_READY",message:"The chain of linked adapters is not ready to start because of an unknown failure."},"0xC01E0434":{code:"STATUS_GRAPHICS_CHAINLINKS_NOT_STARTED",message:"An attempt was made to start a lead link display adapter when the chain links had not yet started."},"0xC01E0435":{code:"STATUS_GRAPHICS_CHAINLINKS_NOT_POWERED_ON",message:"An attempt was made to turn on a lead link display adapter when the chain links were turned off."},"0xC01E0436":{code:"STATUS_GRAPHICS_INCONSISTENT_DEVICE_LINK_STATE",message:"The adapter link was found in an inconsistent state. Not all adapters are in an expected PNP/power state."},"0xC01E0438":{code:"STATUS_GRAPHICS_NOT_POST_DEVICE_DRIVER",message:"The driver trying to start is not the same as the driver for the posted display adapter."},"0xC01E043B":{code:"STATUS_GRAPHICS_ADAPTER_ACCESS_NOT_EXCLUDED",message:"An operation is being attempted that requires the display adapter to be in a quiescent state."},"0xC01E0500":{code:"STATUS_GRAPHICS_OPM_NOT_SUPPORTED",message:"The driver does not support OPM."},"0xC01E0501":{code:"STATUS_GRAPHICS_COPP_NOT_SUPPORTED",message:"The driver does not support COPP."},"0xC01E0502":{code:"STATUS_GRAPHICS_UAB_NOT_SUPPORTED",message:"The driver does not support UAB."},"0xC01E0503":{code:"STATUS_GRAPHICS_OPM_INVALID_ENCRYPTED_PARAMETERS",message:"The specified encrypted parameters are invalid."},"0xC01E0504":{code:"STATUS_GRAPHICS_OPM_PARAMETER_ARRAY_TOO_SMALL",message:"An array passed to a function cannot hold all of the data that the function wants to put in it."},"0xC01E0505":{code:"STATUS_GRAPHICS_OPM_NO_PROTECTED_OUTPUTS_EXIST",message:"The GDI display device passed to this function does not have any active protected outputs."},"0xC01E0506":{code:"STATUS_GRAPHICS_PVP_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME",message:"The PVP cannot find an actual GDI display device that corresponds to the passed-in GDI display device name."},"0xC01E0507":{code:"STATUS_GRAPHICS_PVP_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP",message:"This function failed because the GDI display device passed to it was not attached to the Windows desktop."},"0xC01E0508":{code:"STATUS_GRAPHICS_PVP_MIRRORING_DEVICES_NOT_SUPPORTED",message:"The PVP does not support mirroring display devices because they do not have any protected outputs."},"0xC01E050A":{code:"STATUS_GRAPHICS_OPM_INVALID_POINTER",message:"The function failed because an invalid pointer parameter was passed to it. A pointer parameter is invalid if it is null, is not correctly aligned, or it points to an invalid address or a kernel mode address."},"0xC01E050B":{code:"STATUS_GRAPHICS_OPM_INTERNAL_ERROR",message:"An internal error caused an operation to fail."},"0xC01E050C":{code:"STATUS_GRAPHICS_OPM_INVALID_HANDLE",message:"The function failed because the caller passed in an invalid OPM user-mode handle."},"0xC01E050D":{code:"STATUS_GRAPHICS_PVP_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE",message:"This function failed because the GDI device passed to it did not have any monitors associated with it."},"0xC01E050E":{code:"STATUS_GRAPHICS_PVP_INVALID_CERTIFICATE_LENGTH",message:"A certificate could not be returned because the certificate buffer passed to the function was too small."},"0xC01E050F":{code:"STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED",message:"DxgkDdiOpmCreateProtectedOutput() could not create a protected output because the video present yarget is in spanning mode."},"0xC01E0510":{code:"STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED",message:"DxgkDdiOpmCreateProtectedOutput() could not create a protected output because the video present target is in theater mode."},"0xC01E0511":{code:"STATUS_GRAPHICS_PVP_HFS_FAILED",message:"The function call failed because the display adapter's hardware functionality scan (HFS) failed to validate the graphics hardware."},"0xC01E0512":{code:"STATUS_GRAPHICS_OPM_INVALID_SRM",message:"The HDCP SRM passed to this function did not comply with section 5 of the HDCP 1.1 specification."},"0xC01E0513":{code:"STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_HDCP",message:"The protected output cannot enable the HDCP system because it does not support it."},"0xC01E0514":{code:"STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_ACP",message:"The protected output cannot enable analog copy protection because it does not support it."},"0xC01E0515":{code:"STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_CGMSA",message:"The protected output cannot enable the CGMS-A protection technology because it does not support it."},"0xC01E0516":{code:"STATUS_GRAPHICS_OPM_HDCP_SRM_NEVER_SET",message:"DxgkDdiOPMGetInformation() cannot return the version of the SRM being used because the application never successfully passed an SRM to the protected output."},"0xC01E0517":{code:"STATUS_GRAPHICS_OPM_RESOLUTION_TOO_HIGH",message:"DxgkDdiOPMConfigureProtectedOutput() cannot enable the specified output protection technology because the output's screen resolution is too high."},"0xC01E0518":{code:"STATUS_GRAPHICS_OPM_ALL_HDCP_HARDWARE_ALREADY_IN_USE",message:"DxgkDdiOPMConfigureProtectedOutput() cannot enable HDCP because other physical outputs are using the display adapter's HDCP hardware."},"0xC01E051A":{code:"STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_NO_LONGER_EXISTS",message:"The operating system asynchronously destroyed this OPM-protected output because the operating system state changed. This error typically occurs because the monitor PDO associated with this protected output was removed or stopped, the protected output's session became a nonconsole session, or the protected output's desktop became inactive."},"0xC01E051B":{code:"STATUS_GRAPHICS_OPM_SESSION_TYPE_CHANGE_IN_PROGRESS",message:"OPM functions cannot be called when a session is changing its type. Three types of sessions currently exist: console, disconnected, and remote (RDP or ICA)."},"0xC01E051C":{code:"STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_DOES_NOT_HAVE_COPP_SEMANTICS",message:`The DxgkDdiOPMGetCOPPCompatibleInformation, DxgkDdiOPMGetInformation, or DxgkDdiOPMConfigureProtectedOutput function failed. This error is returned only if a protected output has OPM semantics. -DxgkDdiOPMGetCOPPCompatibleInformation always returns this error if a protected output has OPM semantics. -DxgkDdiOPMGetInformation returns this error code if the caller requested COPP-specific information. -DxgkDdiOPMConfigureProtectedOutput returns this error when the caller tries to use a COPP-specific command.`},"0xC01E051D":{code:"STATUS_GRAPHICS_OPM_INVALID_INFORMATION_REQUEST",message:"The DxgkDdiOPMGetInformation and DxgkDdiOPMGetCOPPCompatibleInformation functions return this error code if the passed-in sequence number is not the expected sequence number or the passed-in OMAC value is invalid."},"0xC01E051E":{code:"STATUS_GRAPHICS_OPM_DRIVER_INTERNAL_ERROR",message:"The function failed because an unexpected error occurred inside a display driver."},"0xC01E051F":{code:"STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_DOES_NOT_HAVE_OPM_SEMANTICS",message:`The DxgkDdiOPMGetCOPPCompatibleInformation, DxgkDdiOPMGetInformation, or DxgkDdiOPMConfigureProtectedOutput function failed. This error is returned only if a protected output has COPP semantics. -DxgkDdiOPMGetCOPPCompatibleInformation returns this error code if the caller requested OPM-specific information. -DxgkDdiOPMGetInformation always returns this error if a protected output has COPP semantics. -DxgkDdiOPMConfigureProtectedOutput returns this error when the caller tries to use an OPM-specific command.`},"0xC01E0520":{code:"STATUS_GRAPHICS_OPM_SIGNALING_NOT_SUPPORTED",message:"The DxgkDdiOPMGetCOPPCompatibleInformation and DxgkDdiOPMConfigureProtectedOutput functions return this error if the display driver does not support the DXGKMDT_OPM_GET_ACP_AND_CGMSA_SIGNALING and DXGKMDT_OPM_SET_ACP_AND_CGMSA_SIGNALING GUIDs."},"0xC01E0521":{code:"STATUS_GRAPHICS_OPM_INVALID_CONFIGURATION_REQUEST",message:"The DxgkDdiOPMConfigureProtectedOutput function returns this error code if the passed-in sequence number is not the expected sequence number or the passed-in OMAC value is invalid."},"0xC01E0580":{code:"STATUS_GRAPHICS_I2C_NOT_SUPPORTED",message:"The monitor connected to the specified video output does not have an I2C bus."},"0xC01E0581":{code:"STATUS_GRAPHICS_I2C_DEVICE_DOES_NOT_EXIST",message:"No device on the I2C bus has the specified address."},"0xC01E0582":{code:"STATUS_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA",message:"An error occurred while transmitting data to the device on the I2C bus."},"0xC01E0583":{code:"STATUS_GRAPHICS_I2C_ERROR_RECEIVING_DATA",message:"An error occurred while receiving data from the device on the I2C bus."},"0xC01E0584":{code:"STATUS_GRAPHICS_DDCCI_VCP_NOT_SUPPORTED",message:"The monitor does not support the specified VCP code."},"0xC01E0585":{code:"STATUS_GRAPHICS_DDCCI_INVALID_DATA",message:"The data received from the monitor is invalid."},"0xC01E0586":{code:"STATUS_GRAPHICS_DDCCI_MONITOR_RETURNED_INVALID_TIMING_STATUS_BYTE",message:"A function call failed because a monitor returned an invalid timing status byte when the operating system used the DDC/CI get timing report and timing message command to get a timing report from a monitor."},"0xC01E0587":{code:"STATUS_GRAPHICS_DDCCI_INVALID_CAPABILITIES_STRING",message:"A monitor returned a DDC/CI capabilities string that did not comply with the ACCESS.bus 3.0, DDC/CI 1.1, or MCCS 2 Revision 1 specification."},"0xC01E0588":{code:"STATUS_GRAPHICS_MCA_INTERNAL_ERROR",message:"An internal error caused an operation to fail."},"0xC01E0589":{code:"STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_COMMAND",message:"An operation failed because a DDC/CI message had an invalid value in its command field."},"0xC01E058A":{code:"STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_LENGTH",message:"This error occurred because a DDC/CI message had an invalid value in its length field."},"0xC01E058B":{code:"STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_CHECKSUM",message:"This error occurred because the value in a DDC/CI message's checksum field did not match the message's computed checksum value. This error implies that the data was corrupted while it was being transmitted from a monitor to a computer."},"0xC01E058C":{code:"STATUS_GRAPHICS_INVALID_PHYSICAL_MONITOR_HANDLE",message:"This function failed because an invalid monitor handle was passed to it."},"0xC01E058D":{code:"STATUS_GRAPHICS_MONITOR_NO_LONGER_EXISTS",message:"The operating system asynchronously destroyed the monitor that corresponds to this handle because the operating system's state changed. This error typically occurs because the monitor PDO associated with this handle was removed or stopped, or a display mode change occurred. A display mode change occurs when Windows sends a WM_DISPLAYCHANGE message to applications."},"0xC01E05E0":{code:"STATUS_GRAPHICS_ONLY_CONSOLE_SESSION_SUPPORTED",message:"This function can be used only if a program is running in the local console session. It cannot be used if a program is running on a remote desktop session or on a terminal server session."},"0xC01E05E1":{code:"STATUS_GRAPHICS_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME",message:"This function cannot find an actual GDI display device that corresponds to the specified GDI display device name."},"0xC01E05E2":{code:"STATUS_GRAPHICS_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP",message:"The function failed because the specified GDI display device was not attached to the Windows desktop."},"0xC01E05E3":{code:"STATUS_GRAPHICS_MIRRORING_DEVICES_NOT_SUPPORTED",message:"This function does not support GDI mirroring display devices because GDI mirroring display devices do not have any physical monitors associated with them."},"0xC01E05E4":{code:"STATUS_GRAPHICS_INVALID_POINTER",message:"The function failed because an invalid pointer parameter was passed to it. A pointer parameter is invalid if it is null, is not correctly aligned, or points to an invalid address or to a kernel mode address."},"0xC01E05E5":{code:"STATUS_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE",message:"This function failed because the GDI device passed to it did not have a monitor associated with it."},"0xC01E05E6":{code:"STATUS_GRAPHICS_PARAMETER_ARRAY_TOO_SMALL",message:"An array passed to the function cannot hold all of the data that the function must copy into the array."},"0xC01E05E7":{code:"STATUS_GRAPHICS_INTERNAL_ERROR",message:"An internal error caused an operation to fail."},"0xC01E05E8":{code:"STATUS_GRAPHICS_SESSION_TYPE_CHANGE_IN_PROGRESS",message:"The function failed because the current session is changing its type. This function cannot be called when the current session is changing its type. Three types of sessions currently exist: console, disconnected, and remote (RDP or ICA)."},"0xC0210000":{code:"STATUS_FVE_LOCKED_VOLUME",message:"The volume must be unlocked before it can be used."},"0xC0210001":{code:"STATUS_FVE_NOT_ENCRYPTED",message:"The volume is fully decrypted and no key is available."},"0xC0210002":{code:"STATUS_FVE_BAD_INFORMATION",message:"The control block for the encrypted volume is not valid."},"0xC0210003":{code:"STATUS_FVE_TOO_SMALL",message:"Not enough free space remains on the volume to allow encryption."},"0xC0210004":{code:"STATUS_FVE_FAILED_WRONG_FS",message:"The partition cannot be encrypted because the file system is not supported."},"0xC0210005":{code:"STATUS_FVE_FAILED_BAD_FS",message:"The file system is inconsistent. Run the Check Disk utility."},"0xC0210006":{code:"STATUS_FVE_FS_NOT_EXTENDED",message:"The file system does not extend to the end of the volume."},"0xC0210007":{code:"STATUS_FVE_FS_MOUNTED",message:"This operation cannot be performed while a file system is mounted on the volume."},"0xC0210008":{code:"STATUS_FVE_NO_LICENSE",message:"BitLocker Drive Encryption is not included with this version of Windows."},"0xC0210009":{code:"STATUS_FVE_ACTION_NOT_ALLOWED",message:"The requested action was denied by the FVE control engine."},"0xC021000A":{code:"STATUS_FVE_BAD_DATA",message:"The data supplied is malformed."},"0xC021000B":{code:"STATUS_FVE_VOLUME_NOT_BOUND",message:"The volume is not bound to the system."},"0xC021000C":{code:"STATUS_FVE_NOT_DATA_VOLUME",message:"The volume specified is not a data volume."},"0xC021000D":{code:"STATUS_FVE_CONV_READ_ERROR",message:"A read operation failed while converting the volume."},"0xC021000E":{code:"STATUS_FVE_CONV_WRITE_ERROR",message:"A write operation failed while converting the volume."},"0xC021000F":{code:"STATUS_FVE_OVERLAPPED_UPDATE",message:"The control block for the encrypted volume was updated by another thread. Try again."},"0xC0210010":{code:"STATUS_FVE_FAILED_SECTOR_SIZE",message:"The volume encryption algorithm cannot be used on this sector size."},"0xC0210011":{code:"STATUS_FVE_FAILED_AUTHENTICATION",message:"BitLocker recovery authentication failed."},"0xC0210012":{code:"STATUS_FVE_NOT_OS_VOLUME",message:"The volume specified is not the boot operating system volume."},"0xC0210013":{code:"STATUS_FVE_KEYFILE_NOT_FOUND",message:"The BitLocker startup key or recovery password could not be read from external media."},"0xC0210014":{code:"STATUS_FVE_KEYFILE_INVALID",message:"The BitLocker startup key or recovery password file is corrupt or invalid."},"0xC0210015":{code:"STATUS_FVE_KEYFILE_NO_VMK",message:"The BitLocker encryption key could not be obtained from the startup key or the recovery password."},"0xC0210016":{code:"STATUS_FVE_TPM_DISABLED",message:"The TPM is disabled."},"0xC0210017":{code:"STATUS_FVE_TPM_SRK_AUTH_NOT_ZERO",message:"The authorization data for the SRK of the TPM is not zero."},"0xC0210018":{code:"STATUS_FVE_TPM_INVALID_PCR",message:"The system boot information changed or the TPM locked out access to BitLocker encryption keys until the computer is restarted."},"0xC0210019":{code:"STATUS_FVE_TPM_NO_VMK",message:"The BitLocker encryption key could not be obtained from the TPM."},"0xC021001A":{code:"STATUS_FVE_PIN_INVALID",message:"The BitLocker encryption key could not be obtained from the TPM and PIN."},"0xC021001B":{code:"STATUS_FVE_AUTH_INVALID_APPLICATION",message:"A boot application hash does not match the hash computed when BitLocker was turned on."},"0xC021001C":{code:"STATUS_FVE_AUTH_INVALID_CONFIG",message:"The Boot Configuration Data (BCD) settings are not supported or have changed because BitLocker was enabled."},"0xC021001D":{code:"STATUS_FVE_DEBUGGER_ENABLED",message:"Boot debugging is enabled. Run Windows Boot Configuration Data Store Editor (bcdedit.exe) to turn it off."},"0xC021001E":{code:"STATUS_FVE_DRY_RUN_FAILED",message:"The BitLocker encryption key could not be obtained."},"0xC021001F":{code:"STATUS_FVE_BAD_METADATA_POINTER",message:"The metadata disk region pointer is incorrect."},"0xC0210020":{code:"STATUS_FVE_OLD_METADATA_COPY",message:"The backup copy of the metadata is out of date."},"0xC0210021":{code:"STATUS_FVE_REBOOT_REQUIRED",message:"No action was taken because a system restart is required."},"0xC0210022":{code:"STATUS_FVE_RAW_ACCESS",message:"No action was taken because BitLocker Drive Encryption is in RAW access mode."},"0xC0210023":{code:"STATUS_FVE_RAW_BLOCKED",message:"BitLocker Drive Encryption cannot enter RAW access mode for this volume."},"0xC0210026":{code:"STATUS_FVE_NO_FEATURE_LICENSE",message:"This feature of BitLocker Drive Encryption is not included with this version of Windows."},"0xC0210027":{code:"STATUS_FVE_POLICY_USER_DISABLE_RDV_NOT_ALLOWED",message:"Group policy does not permit turning off BitLocker Drive Encryption on roaming data volumes."},"0xC0210028":{code:"STATUS_FVE_CONV_RECOVERY_FAILED",message:"Bitlocker Drive Encryption failed to recover from aborted conversion. This could be due to either all conversion logs being corrupted or the media being write-protected."},"0xC0210029":{code:"STATUS_FVE_VIRTUALIZED_SPACE_TOO_BIG",message:"The requested virtualization size is too big."},"0xC0210030":{code:"STATUS_FVE_VOLUME_TOO_SMALL",message:"The drive is too small to be protected using BitLocker Drive Encryption."},"0xC0220001":{code:"STATUS_FWP_CALLOUT_NOT_FOUND",message:"The callout does not exist."},"0xC0220002":{code:"STATUS_FWP_CONDITION_NOT_FOUND",message:"The filter condition does not exist."},"0xC0220003":{code:"STATUS_FWP_FILTER_NOT_FOUND",message:"The filter does not exist."},"0xC0220004":{code:"STATUS_FWP_LAYER_NOT_FOUND",message:"The layer does not exist."},"0xC0220005":{code:"STATUS_FWP_PROVIDER_NOT_FOUND",message:"The provider does not exist."},"0xC0220006":{code:"STATUS_FWP_PROVIDER_CONTEXT_NOT_FOUND",message:"The provider context does not exist."},"0xC0220007":{code:"STATUS_FWP_SUBLAYER_NOT_FOUND",message:"The sublayer does not exist."},"0xC0220008":{code:"STATUS_FWP_NOT_FOUND",message:"The object does not exist."},"0xC0220009":{code:"STATUS_FWP_ALREADY_EXISTS",message:"An object with that GUID or LUID already exists."},"0xC022000A":{code:"STATUS_FWP_IN_USE",message:"The object is referenced by other objects and cannot be deleted."},"0xC022000B":{code:"STATUS_FWP_DYNAMIC_SESSION_IN_PROGRESS",message:"The call is not allowed from within a dynamic session."},"0xC022000C":{code:"STATUS_FWP_WRONG_SESSION",message:"The call was made from the wrong session and cannot be completed."},"0xC022000D":{code:"STATUS_FWP_NO_TXN_IN_PROGRESS",message:"The call must be made from within an explicit transaction."},"0xC022000E":{code:"STATUS_FWP_TXN_IN_PROGRESS",message:"The call is not allowed from within an explicit transaction."},"0xC022000F":{code:"STATUS_FWP_TXN_ABORTED",message:"The explicit transaction has been forcibly canceled."},"0xC0220010":{code:"STATUS_FWP_SESSION_ABORTED",message:"The session has been canceled."},"0xC0220011":{code:"STATUS_FWP_INCOMPATIBLE_TXN",message:"The call is not allowed from within a read-only transaction."},"0xC0220012":{code:"STATUS_FWP_TIMEOUT",message:"The call timed out while waiting to acquire the transaction lock."},"0xC0220013":{code:"STATUS_FWP_NET_EVENTS_DISABLED",message:"The collection of network diagnostic events is disabled."},"0xC0220014":{code:"STATUS_FWP_INCOMPATIBLE_LAYER",message:"The operation is not supported by the specified layer."},"0xC0220015":{code:"STATUS_FWP_KM_CLIENTS_ONLY",message:"The call is allowed for kernel-mode callers only."},"0xC0220016":{code:"STATUS_FWP_LIFETIME_MISMATCH",message:"The call tried to associate two objects with incompatible lifetimes."},"0xC0220017":{code:"STATUS_FWP_BUILTIN_OBJECT",message:"The object is built-in and cannot be deleted."},"0xC0220018":{code:"STATUS_FWP_TOO_MANY_BOOTTIME_FILTERS",message:"The maximum number of boot-time filters has been reached."},"0xC0220019":{code:"STATUS_FWP_NOTIFICATION_DROPPED",message:"A notification could not be delivered because a message queue has reached maximum capacity."},"0xC022001A":{code:"STATUS_FWP_TRAFFIC_MISMATCH",message:"The traffic parameters do not match those for the security association context."},"0xC022001B":{code:"STATUS_FWP_INCOMPATIBLE_SA_STATE",message:"The call is not allowed for the current security association state."},"0xC022001C":{code:"STATUS_FWP_NULL_POINTER",message:"A required pointer is null."},"0xC022001D":{code:"STATUS_FWP_INVALID_ENUMERATOR",message:"An enumerator is not valid."},"0xC022001E":{code:"STATUS_FWP_INVALID_FLAGS",message:"The flags field contains an invalid value."},"0xC022001F":{code:"STATUS_FWP_INVALID_NET_MASK",message:"A network mask is not valid."},"0xC0220020":{code:"STATUS_FWP_INVALID_RANGE",message:"An FWP_RANGE is not valid."},"0xC0220021":{code:"STATUS_FWP_INVALID_INTERVAL",message:"The time interval is not valid."},"0xC0220022":{code:"STATUS_FWP_ZERO_LENGTH_ARRAY",message:"An array that must contain at least one element has a zero length."},"0xC0220023":{code:"STATUS_FWP_NULL_DISPLAY_NAME",message:"The displayData.name field cannot be null."},"0xC0220024":{code:"STATUS_FWP_INVALID_ACTION_TYPE",message:"The action type is not one of the allowed action types for a filter."},"0xC0220025":{code:"STATUS_FWP_INVALID_WEIGHT",message:"The filter weight is not valid."},"0xC0220026":{code:"STATUS_FWP_MATCH_TYPE_MISMATCH",message:"A filter condition contains a match type that is not compatible with the operands."},"0xC0220027":{code:"STATUS_FWP_TYPE_MISMATCH",message:"An FWP_VALUE or FWPM_CONDITION_VALUE is of the wrong type."},"0xC0220028":{code:"STATUS_FWP_OUT_OF_BOUNDS",message:"An integer value is outside the allowed range."},"0xC0220029":{code:"STATUS_FWP_RESERVED",message:"A reserved field is nonzero."},"0xC022002A":{code:"STATUS_FWP_DUPLICATE_CONDITION",message:"A filter cannot contain multiple conditions operating on a single field."},"0xC022002B":{code:"STATUS_FWP_DUPLICATE_KEYMOD",message:"A policy cannot contain the same keying module more than once."},"0xC022002C":{code:"STATUS_FWP_ACTION_INCOMPATIBLE_WITH_LAYER",message:"The action type is not compatible with the layer."},"0xC022002D":{code:"STATUS_FWP_ACTION_INCOMPATIBLE_WITH_SUBLAYER",message:"The action type is not compatible with the sublayer."},"0xC022002E":{code:"STATUS_FWP_CONTEXT_INCOMPATIBLE_WITH_LAYER",message:"The raw context or the provider context is not compatible with the layer."},"0xC022002F":{code:"STATUS_FWP_CONTEXT_INCOMPATIBLE_WITH_CALLOUT",message:"The raw context or the provider context is not compatible with the callout."},"0xC0220030":{code:"STATUS_FWP_INCOMPATIBLE_AUTH_METHOD",message:"The authentication method is not compatible with the policy type."},"0xC0220031":{code:"STATUS_FWP_INCOMPATIBLE_DH_GROUP",message:"The Diffie-Hellman group is not compatible with the policy type."},"0xC0220032":{code:"STATUS_FWP_EM_NOT_SUPPORTED",message:"An IKE policy cannot contain an Extended Mode policy."},"0xC0220033":{code:"STATUS_FWP_NEVER_MATCH",message:"The enumeration template or subscription will never match any objects."},"0xC0220034":{code:"STATUS_FWP_PROVIDER_CONTEXT_MISMATCH",message:"The provider context is of the wrong type."},"0xC0220035":{code:"STATUS_FWP_INVALID_PARAMETER",message:"The parameter is incorrect."},"0xC0220036":{code:"STATUS_FWP_TOO_MANY_SUBLAYERS",message:"The maximum number of sublayers has been reached."},"0xC0220037":{code:"STATUS_FWP_CALLOUT_NOTIFICATION_FAILED",message:"The notification function for a callout returned an error."},"0xC0220038":{code:"STATUS_FWP_INCOMPATIBLE_AUTH_CONFIG",message:"The IPsec authentication configuration is not compatible with the authentication type."},"0xC0220039":{code:"STATUS_FWP_INCOMPATIBLE_CIPHER_CONFIG",message:"The IPsec cipher configuration is not compatible with the cipher type."},"0xC022003C":{code:"STATUS_FWP_DUPLICATE_AUTH_METHOD",message:"A policy cannot contain the same auth method more than once."},"0xC0220100":{code:"STATUS_FWP_TCPIP_NOT_READY",message:"The TCP/IP stack is not ready."},"0xC0220101":{code:"STATUS_FWP_INJECT_HANDLE_CLOSING",message:"The injection handle is being closed by another thread."},"0xC0220102":{code:"STATUS_FWP_INJECT_HANDLE_STALE",message:"The injection handle is stale."},"0xC0220103":{code:"STATUS_FWP_CANNOT_PEND",message:"The classify cannot be pended."},"0xC0230002":{code:"STATUS_NDIS_CLOSING",message:"The binding to the network interface is being closed."},"0xC0230004":{code:"STATUS_NDIS_BAD_VERSION",message:"An invalid version was specified."},"0xC0230005":{code:"STATUS_NDIS_BAD_CHARACTERISTICS",message:"An invalid characteristics table was used."},"0xC0230006":{code:"STATUS_NDIS_ADAPTER_NOT_FOUND",message:"Failed to find the network interface or the network interface is not ready."},"0xC0230007":{code:"STATUS_NDIS_OPEN_FAILED",message:"Failed to open the network interface."},"0xC0230008":{code:"STATUS_NDIS_DEVICE_FAILED",message:"The network interface has encountered an internal unrecoverable failure."},"0xC0230009":{code:"STATUS_NDIS_MULTICAST_FULL",message:"The multicast list on the network interface is full."},"0xC023000A":{code:"STATUS_NDIS_MULTICAST_EXISTS",message:"An attempt was made to add a duplicate multicast address to the list."},"0xC023000B":{code:"STATUS_NDIS_MULTICAST_NOT_FOUND",message:"At attempt was made to remove a multicast address that was never added."},"0xC023000C":{code:"STATUS_NDIS_REQUEST_ABORTED",message:"The network interface aborted the request."},"0xC023000D":{code:"STATUS_NDIS_RESET_IN_PROGRESS",message:"The network interface cannot process the request because it is being reset."},"0xC023000F":{code:"STATUS_NDIS_INVALID_PACKET",message:"An attempt was made to send an invalid packet on a network interface."},"0xC0230010":{code:"STATUS_NDIS_INVALID_DEVICE_REQUEST",message:"The specified request is not a valid operation for the target device."},"0xC0230011":{code:"STATUS_NDIS_ADAPTER_NOT_READY",message:"The network interface is not ready to complete this operation."},"0xC0230014":{code:"STATUS_NDIS_INVALID_LENGTH",message:"The length of the buffer submitted for this operation is not valid."},"0xC0230015":{code:"STATUS_NDIS_INVALID_DATA",message:"The data used for this operation is not valid."},"0xC0230016":{code:"STATUS_NDIS_BUFFER_TOO_SHORT",message:"The length of the submitted buffer for this operation is too small."},"0xC0230017":{code:"STATUS_NDIS_INVALID_OID",message:"The network interface does not support this object identifier."},"0xC0230018":{code:"STATUS_NDIS_ADAPTER_REMOVED",message:"The network interface has been removed."},"0xC0230019":{code:"STATUS_NDIS_UNSUPPORTED_MEDIA",message:"The network interface does not support this media type."},"0xC023001A":{code:"STATUS_NDIS_GROUP_ADDRESS_IN_USE",message:"An attempt was made to remove a token ring group address that is in use by other components."},"0xC023001B":{code:"STATUS_NDIS_FILE_NOT_FOUND",message:"An attempt was made to map a file that cannot be found."},"0xC023001C":{code:"STATUS_NDIS_ERROR_READING_FILE",message:"An error occurred while NDIS tried to map the file."},"0xC023001D":{code:"STATUS_NDIS_ALREADY_MAPPED",message:"An attempt was made to map a file that is already mapped."},"0xC023001E":{code:"STATUS_NDIS_RESOURCE_CONFLICT",message:"An attempt to allocate a hardware resource failed because the resource is used by another component."},"0xC023001F":{code:"STATUS_NDIS_MEDIA_DISCONNECTED",message:"The I/O operation failed because the network media is disconnected or the wireless access point is out of range."},"0xC0230022":{code:"STATUS_NDIS_INVALID_ADDRESS",message:"The network address used in the request is invalid."},"0xC023002A":{code:"STATUS_NDIS_PAUSED",message:"The offload operation on the network interface has been paused."},"0xC023002B":{code:"STATUS_NDIS_INTERFACE_NOT_FOUND",message:"The network interface was not found."},"0xC023002C":{code:"STATUS_NDIS_UNSUPPORTED_REVISION",message:"The revision number specified in the structure is not supported."},"0xC023002D":{code:"STATUS_NDIS_INVALID_PORT",message:"The specified port does not exist on this network interface."},"0xC023002E":{code:"STATUS_NDIS_INVALID_PORT_STATE",message:"The current state of the specified port on this network interface does not support the requested operation."},"0xC023002F":{code:"STATUS_NDIS_LOW_POWER_STATE",message:"The miniport adapter is in a lower power state."},"0xC02300BB":{code:"STATUS_NDIS_NOT_SUPPORTED",message:"The network interface does not support this request."},"0xC023100F":{code:"STATUS_NDIS_OFFLOAD_POLICY",message:"The TCP connection is not offloadable because of a local policy setting."},"0xC0231012":{code:"STATUS_NDIS_OFFLOAD_CONNECTION_REJECTED",message:"The TCP connection is not offloadable by the Chimney offload target."},"0xC0231013":{code:"STATUS_NDIS_OFFLOAD_PATH_REJECTED",message:"The IP Path object is not in an offloadable state."},"0xC0232000":{code:"STATUS_NDIS_DOT11_AUTO_CONFIG_ENABLED",message:"The wireless LAN interface is in auto-configuration mode and does not support the requested parameter change operation."},"0xC0232001":{code:"STATUS_NDIS_DOT11_MEDIA_IN_USE",message:"The wireless LAN interface is busy and cannot perform the requested operation."},"0xC0232002":{code:"STATUS_NDIS_DOT11_POWER_STATE_INVALID",message:"The wireless LAN interface is power down and does not support the requested operation."},"0xC0232003":{code:"STATUS_NDIS_PM_WOL_PATTERN_LIST_FULL",message:"The list of wake on LAN patterns is full."},"0xC0232004":{code:"STATUS_NDIS_PM_PROTOCOL_OFFLOAD_LIST_FULL",message:"The list of low power protocol offloads is full."},"0xC0360001":{code:"STATUS_IPSEC_BAD_SPI",message:"The SPI in the packet does not match a valid IPsec SA."},"0xC0360002":{code:"STATUS_IPSEC_SA_LIFETIME_EXPIRED",message:"The packet was received on an IPsec SA whose lifetime has expired."},"0xC0360003":{code:"STATUS_IPSEC_WRONG_SA",message:"The packet was received on an IPsec SA that does not match the packet characteristics."},"0xC0360004":{code:"STATUS_IPSEC_REPLAY_CHECK_FAILED",message:"The packet sequence number replay check failed."},"0xC0360005":{code:"STATUS_IPSEC_INVALID_PACKET",message:"The IPsec header and/or trailer in the packet is invalid."},"0xC0360006":{code:"STATUS_IPSEC_INTEGRITY_CHECK_FAILED",message:"The IPsec integrity check failed."},"0xC0360007":{code:"STATUS_IPSEC_CLEAR_TEXT_DROP",message:"IPsec dropped a clear text packet."},"0xC0360008":{code:"STATUS_IPSEC_AUTH_FIREWALL_DROP",message:"IPsec dropped an incoming ESP packet in authenticated firewall mode. This drop is benign."},"0xC0360009":{code:"STATUS_IPSEC_THROTTLE_DROP",message:"IPsec dropped a packet due to DOS throttle."},"0xC0368000":{code:"STATUS_IPSEC_DOSP_BLOCK",message:"IPsec Dos Protection matched an explicit block rule."},"0xC0368001":{code:"STATUS_IPSEC_DOSP_RECEIVED_MULTICAST",message:"IPsec Dos Protection received an IPsec specific multicast packet which is not allowed."},"0xC0368002":{code:"STATUS_IPSEC_DOSP_INVALID_PACKET",message:"IPsec Dos Protection received an incorrectly formatted packet."},"0xC0368003":{code:"STATUS_IPSEC_DOSP_STATE_LOOKUP_FAILED",message:"IPsec Dos Protection failed to lookup state."},"0xC0368004":{code:"STATUS_IPSEC_DOSP_MAX_ENTRIES",message:"IPsec Dos Protection failed to create state because there are already maximum number of entries allowed by policy."},"0xC0368005":{code:"STATUS_IPSEC_DOSP_KEYMOD_NOT_ALLOWED",message:"IPsec Dos Protection received an IPsec negotiation packet for a keying module which is not allowed by policy."},"0xC0368006":{code:"STATUS_IPSEC_DOSP_MAX_PER_IP_RATELIMIT_QUEUES",message:"IPsec Dos Protection failed to create per internal IP ratelimit queue because there is already maximum number of queues allowed by policy."},"0xC038005B":{code:"STATUS_VOLMGR_MIRROR_NOT_SUPPORTED",message:"The system does not support mirrored volumes."},"0xC038005C":{code:"STATUS_VOLMGR_RAID5_NOT_SUPPORTED",message:"The system does not support RAID-5 volumes."},"0xC03A0014":{code:"STATUS_VIRTDISK_PROVIDER_NOT_FOUND",message:"A virtual disk support provider for the specified file was not found."},"0xC03A0015":{code:"STATUS_VIRTDISK_NOT_VIRTUAL_DISK",message:"The specified disk is not a virtual disk."},"0xC03A0016":{code:"STATUS_VHD_PARENT_VHD_ACCESS_DENIED",message:"The chain of virtual hard disks is inaccessible. The process has not been granted access rights to the parent virtual hard disk for the differencing disk."},"0xC03A0017":{code:"STATUS_VHD_CHILD_PARENT_SIZE_MISMATCH",message:"The chain of virtual hard disks is corrupted. There is a mismatch in the virtual sizes of the parent virtual hard disk and differencing disk."},"0xC03A0018":{code:"STATUS_VHD_DIFFERENCING_CHAIN_CYCLE_DETECTED",message:"The chain of virtual hard disks is corrupted. A differencing disk is indicated in its own parent chain."},"0xC03A0019":{code:"STATUS_VHD_DIFFERENCING_CHAIN_ERROR_IN_PARENT",message:"The chain of virtual hard disks is inaccessible. There was an error opening a virtual hard disk further up the chain."}},Swn={"0x00000000":{code:"ERROR_SUCCESS",message:"The operation completed successfully."},"0x00000001":{code:"ERROR_INVALID_FUNCTION",message:"Incorrect function."},"0x00000002":{code:"ERROR_FILE_NOT_FOUND",message:"The system cannot find the file specified."},"0x00000003":{code:"ERROR_PATH_NOT_FOUND",message:"The system cannot find the path specified."},"0x00000004":{code:"ERROR_TOO_MANY_OPEN_FILES",message:"The system cannot open the file."},"0x00000005":{code:"ERROR_ACCESS_DENIED",message:"Access is denied."},"0x00000006":{code:"ERROR_INVALID_HANDLE",message:"The handle is invalid."},"0x00000007":{code:"ERROR_ARENA_TRASHED",message:"The storage control blocks were destroyed."},"0x00000008":{code:"ERROR_NOT_ENOUGH_MEMORY",message:"Not enough storage is available to process this command."},"0x00000009":{code:"ERROR_INVALID_BLOCK",message:"The storage control block address is invalid."},"0x0000000A":{code:"ERROR_BAD_ENVIRONMENT",message:"The environment is incorrect."},"0x0000000B":{code:"ERROR_BAD_FORMAT",message:"An attempt was made to load a program with an incorrect format."},"0x0000000C":{code:"ERROR_INVALID_ACCESS",message:"The access code is invalid."},"0x0000000D":{code:"ERROR_INVALID_DATA",message:"The data is invalid."},"0x0000000E":{code:"ERROR_OUTOFMEMORY",message:"Not enough storage is available to complete this operation."},"0x0000000F":{code:"ERROR_INVALID_DRIVE",message:"The system cannot find the drive specified."},"0x00000010":{code:"ERROR_CURRENT_DIRECTORY",message:"The directory cannot be removed."},"0x00000011":{code:"ERROR_NOT_SAME_DEVICE",message:"The system cannot move the file to a different disk drive."},"0x00000012":{code:"ERROR_NO_MORE_FILES",message:"There are no more files."},"0x00000013":{code:"ERROR_WRITE_PROTECT",message:"The media is write-protected."},"0x00000014":{code:"ERROR_BAD_UNIT",message:"The system cannot find the device specified."},"0x00000015":{code:"ERROR_NOT_READY",message:"The device is not ready."},"0x00000016":{code:"ERROR_BAD_COMMAND",message:"The device does not recognize the command."},"0x00000017":{code:"ERROR_CRC",message:"Data error (cyclic redundancy check)."},"0x00000018":{code:"ERROR_BAD_LENGTH",message:"The program issued a command but the command length is incorrect."},"0x00000019":{code:"ERROR_SEEK",message:"The drive cannot locate a specific area or track on the disk."},"0x0000001A":{code:"ERROR_NOT_DOS_DISK",message:"The specified disk cannot be accessed."},"0x0000001B":{code:"ERROR_SECTOR_NOT_FOUND",message:"The drive cannot find the sector requested."},"0x0000001C":{code:"ERROR_OUT_OF_PAPER",message:"The printer is out of paper."},"0x0000001D":{code:"ERROR_WRITE_FAULT",message:"The system cannot write to the specified device."},"0x0000001E":{code:"ERROR_READ_FAULT",message:"The system cannot read from the specified device."},"0x0000001F":{code:"ERROR_GEN_FAILURE",message:"A device attached to the system is not functioning."},"0x00000020":{code:"ERROR_SHARING_VIOLATION",message:"The process cannot access the file because it is being used by another process."},"0x00000021":{code:"ERROR_LOCK_VIOLATION",message:"The process cannot access the file because another process has locked a portion of the file."},"0x00000022":{code:"ERROR_WRONG_DISK",message:"The wrong disk is in the drive. Insert %2 (Volume Serial Number: %3) into drive %1."},"0x00000024":{code:"ERROR_SHARING_BUFFER_EXCEEDED",message:"Too many files opened for sharing."},"0x00000026":{code:"ERROR_HANDLE_EOF",message:"Reached the end of the file."},"0x00000027":{code:"ERROR_HANDLE_DISK_FULL",message:"The disk is full."},"0x00000032":{code:"ERROR_NOT_SUPPORTED",message:"The request is not supported."},"0x00000033":{code:"ERROR_REM_NOT_LIST",message:"Windows cannot find the network path. Verify that the network path is correct and the destination computer is not busy or turned off. If Windows still cannot find the network path, contact your network administrator."},"0x00000034":{code:"ERROR_DUP_NAME",message:"You were not connected because a duplicate name exists on the network. Go to System in Control Panel to change the computer name, and then try again."},"0x00000035":{code:"ERROR_BAD_NETPATH",message:"The network path was not found."},"0x00000036":{code:"ERROR_NETWORK_BUSY",message:"The network is busy."},"0x00000037":{code:"ERROR_DEV_NOT_EXIST",message:"The specified network resource or device is no longer available."},"0x00000038":{code:"ERROR_TOO_MANY_CMDS",message:"The network BIOS command limit has been reached."},"0x00000039":{code:"ERROR_ADAP_HDW_ERR",message:"A network adapter hardware error occurred."},"0x0000003A":{code:"ERROR_BAD_NET_RESP",message:"The specified server cannot perform the requested operation."},"0x0000003B":{code:"ERROR_UNEXP_NET_ERR",message:"An unexpected network error occurred."},"0x0000003C":{code:"ERROR_BAD_REM_ADAP",message:"The remote adapter is not compatible."},"0x0000003D":{code:"ERROR_PRINTQ_FULL",message:"The print queue is full."},"0x0000003E":{code:"ERROR_NO_SPOOL_SPACE",message:"Space to store the file waiting to be printed is not available on the server."},"0x0000003F":{code:"ERROR_PRINT_CANCELLED",message:"Your file waiting to be printed was deleted."},"0x00000040":{code:"ERROR_NETNAME_DELETED",message:"The specified network name is no longer available."},"0x00000041":{code:"ERROR_NETWORK_ACCESS_DENIED",message:"Network access is denied."},"0x00000042":{code:"ERROR_BAD_DEV_TYPE",message:"The network resource type is not correct."},"0x00000043":{code:"ERROR_BAD_NET_NAME",message:"The network name cannot be found."},"0x00000044":{code:"ERROR_TOO_MANY_NAMES",message:"The name limit for the local computer network adapter card was exceeded."},"0x00000045":{code:"ERROR_TOO_MANY_SESS",message:"The network BIOS session limit was exceeded."},"0x00000046":{code:"ERROR_SHARING_PAUSED",message:"The remote server has been paused or is in the process of being started."},"0x00000047":{code:"ERROR_REQ_NOT_ACCEP",message:"No more connections can be made to this remote computer at this time because the computer has accepted the maximum number of connections."},"0x00000048":{code:"ERROR_REDIR_PAUSED",message:"The specified printer or disk device has been paused."},"0x00000050":{code:"ERROR_FILE_EXISTS",message:"The file exists."},"0x00000052":{code:"ERROR_CANNOT_MAKE",message:"The directory or file cannot be created."},"0x00000053":{code:"ERROR_FAIL_I24",message:"Fail on INT 24."},"0x00000054":{code:"ERROR_OUT_OF_STRUCTURES",message:"Storage to process this request is not available."},"0x00000055":{code:"ERROR_ALREADY_ASSIGNED",message:"The local device name is already in use."},"0x00000056":{code:"ERROR_INVALID_PASSWORD",message:"The specified network password is not correct."},"0x00000057":{code:"ERROR_INVALID_PARAMETER",message:"The parameter is incorrect."},"0x00000058":{code:"ERROR_NET_WRITE_FAULT",message:"A write fault occurred on the network."},"0x00000059":{code:"ERROR_NO_PROC_SLOTS",message:"The system cannot start another process at this time."},"0x00000064":{code:"ERROR_TOO_MANY_SEMAPHORES",message:"Cannot create another system semaphore."},"0x00000065":{code:"ERROR_EXCL_SEM_ALREADY_OWNED",message:"The exclusive semaphore is owned by another process."},"0x00000066":{code:"ERROR_SEM_IS_SET",message:"The semaphore is set and cannot be closed."},"0x00000067":{code:"ERROR_TOO_MANY_SEM_REQUESTS",message:"The semaphore cannot be set again."},"0x00000068":{code:"ERROR_INVALID_AT_INTERRUPT_TIME",message:"Cannot request exclusive semaphores at interrupt time."},"0x00000069":{code:"ERROR_SEM_OWNER_DIED",message:"The previous ownership of this semaphore has ended."},"0x0000006A":{code:"ERROR_SEM_USER_LIMIT",message:"Insert the disk for drive %1."},"0x0000006B":{code:"ERROR_DISK_CHANGE",message:"The program stopped because an alternate disk was not inserted."},"0x0000006C":{code:"ERROR_DRIVE_LOCKED",message:"The disk is in use or locked by another process."},"0x0000006D":{code:"ERROR_BROKEN_PIPE",message:"The pipe has been ended."},"0x0000006E":{code:"ERROR_OPEN_FAILED",message:"The system cannot open the device or file specified."},"0x0000006F":{code:"ERROR_BUFFER_OVERFLOW",message:"The file name is too long."},"0x00000070":{code:"ERROR_DISK_FULL",message:"There is not enough space on the disk."},"0x00000071":{code:"ERROR_NO_MORE_SEARCH_HANDLES",message:"No more internal file identifiers are available."},"0x00000072":{code:"ERROR_INVALID_TARGET_HANDLE",message:"The target internal file identifier is incorrect."},"0x00000075":{code:"ERROR_INVALID_CATEGORY",message:"The Input Output Control (IOCTL) call made by the application program is not correct."},"0x00000076":{code:"ERROR_INVALID_VERIFY_SWITCH",message:"The verify-on-write switch parameter value is not correct."},"0x00000077":{code:"ERROR_BAD_DRIVER_LEVEL",message:"The system does not support the command requested."},"0x00000078":{code:"ERROR_CALL_NOT_IMPLEMENTED",message:"This function is not supported on this system."},"0x00000079":{code:"ERROR_SEM_TIMEOUT",message:"The semaphore time-out period has expired."},"0x0000007A":{code:"ERROR_INSUFFICIENT_BUFFER",message:"The data area passed to a system call is too small."},"0x0000007B":{code:"ERROR_INVALID_NAME",message:"The file name, directory name, or volume label syntax is incorrect."},"0x0000007C":{code:"ERROR_INVALID_LEVEL",message:"The system call level is not correct."},"0x0000007D":{code:"ERROR_NO_VOLUME_LABEL",message:"The disk has no volume label."},"0x0000007E":{code:"ERROR_MOD_NOT_FOUND",message:"The specified module could not be found."},"0x0000007F":{code:"ERROR_PROC_NOT_FOUND",message:"The specified procedure could not be found."},"0x00000080":{code:"ERROR_WAIT_NO_CHILDREN",message:"There are no child processes to wait for."},"0x00000081":{code:"ERROR_CHILD_NOT_COMPLETE",message:"The %1 application cannot be run in Win32 mode."},"0x00000082":{code:"ERROR_DIRECT_ACCESS_HANDLE",message:"Attempt to use a file handle to an open disk partition for an operation other than raw disk I/O."},"0x00000083":{code:"ERROR_NEGATIVE_SEEK",message:"An attempt was made to move the file pointer before the beginning of the file."},"0x00000084":{code:"ERROR_SEEK_ON_DEVICE",message:"The file pointer cannot be set on the specified device or file."},"0x00000085":{code:"ERROR_IS_JOIN_TARGET",message:"A JOIN or SUBST command cannot be used for a drive that contains previously joined drives."},"0x00000086":{code:"ERROR_IS_JOINED",message:"An attempt was made to use a JOIN or SUBST command on a drive that has already been joined."},"0x00000087":{code:"ERROR_IS_SUBSTED",message:"An attempt was made to use a JOIN or SUBST command on a drive that has already been substituted."},"0x00000088":{code:"ERROR_NOT_JOINED",message:"The system tried to delete the JOIN of a drive that is not joined."},"0x00000089":{code:"ERROR_NOT_SUBSTED",message:"The system tried to delete the substitution of a drive that is not substituted."},"0x0000008A":{code:"ERROR_JOIN_TO_JOIN",message:"The system tried to join a drive to a directory on a joined drive."},"0x0000008B":{code:"ERROR_SUBST_TO_SUBST",message:"The system tried to substitute a drive to a directory on a substituted drive."},"0x0000008C":{code:"ERROR_JOIN_TO_SUBST",message:"The system tried to join a drive to a directory on a substituted drive."},"0x0000008D":{code:"ERROR_SUBST_TO_JOIN",message:"The system tried to SUBST a drive to a directory on a joined drive."},"0x0000008E":{code:"ERROR_BUSY_DRIVE",message:"The system cannot perform a JOIN or SUBST at this time."},"0x0000008F":{code:"ERROR_SAME_DRIVE",message:"The system cannot join or substitute a drive to or for a directory on the same drive."},"0x00000090":{code:"ERROR_DIR_NOT_ROOT",message:"The directory is not a subdirectory of the root directory."},"0x00000091":{code:"ERROR_DIR_NOT_EMPTY",message:"The directory is not empty."},"0x00000092":{code:"ERROR_IS_SUBST_PATH",message:"The path specified is being used in a substitute."},"0x00000093":{code:"ERROR_IS_JOIN_PATH",message:"Not enough resources are available to process this command."},"0x00000094":{code:"ERROR_PATH_BUSY",message:"The path specified cannot be used at this time."},"0x00000095":{code:"ERROR_IS_SUBST_TARGET",message:"An attempt was made to join or substitute a drive for which a directory on the drive is the target of a previous substitute."},"0x00000096":{code:"ERROR_SYSTEM_TRACE",message:"System trace information was not specified in your CONFIG.SYS file, or tracing is disallowed."},"0x00000097":{code:"ERROR_INVALID_EVENT_COUNT",message:"The number of specified semaphore events for DosMuxSemWait is not correct."},"0x00000098":{code:"ERROR_TOO_MANY_MUXWAITERS",message:"DosMuxSemWait did not execute; too many semaphores are already set."},"0x00000099":{code:"ERROR_INVALID_LIST_FORMAT",message:"The DosMuxSemWait list is not correct."},"0x0000009A":{code:"ERROR_LABEL_TOO_LONG",message:"The volume label you entered exceeds the label character limit of the destination file system."},"0x0000009B":{code:"ERROR_TOO_MANY_TCBS",message:"Cannot create another thread."},"0x0000009C":{code:"ERROR_SIGNAL_REFUSED",message:"The recipient process has refused the signal."},"0x0000009D":{code:"ERROR_DISCARDED",message:"The segment is already discarded and cannot be locked."},"0x0000009E":{code:"ERROR_NOT_LOCKED",message:"The segment is already unlocked."},"0x0000009F":{code:"ERROR_BAD_THREADID_ADDR",message:"The address for the thread ID is not correct."},"0x000000A0":{code:"ERROR_BAD_ARGUMENTS",message:"One or more arguments are not correct."},"0x000000A1":{code:"ERROR_BAD_PATHNAME",message:"The specified path is invalid."},"0x000000A2":{code:"ERROR_SIGNAL_PENDING",message:"A signal is already pending."},"0x000000A4":{code:"ERROR_MAX_THRDS_REACHED",message:"No more threads can be created in the system."},"0x000000A7":{code:"ERROR_LOCK_FAILED",message:"Unable to lock a region of a file."},"0x000000AA":{code:"ERROR_BUSY",message:"The requested resource is in use."},"0x000000AD":{code:"ERROR_CANCEL_VIOLATION",message:"A lock request was not outstanding for the supplied cancel region."},"0x000000AE":{code:"ERROR_ATOMIC_LOCKS_NOT_SUPPORTED",message:"The file system does not support atomic changes to the lock type."},"0x000000B4":{code:"ERROR_INVALID_SEGMENT_NUMBER",message:"The system detected a segment number that was not correct."},"0x000000B6":{code:"ERROR_INVALID_ORDINAL",message:"The operating system cannot run %1."},"0x000000B7":{code:"ERROR_ALREADY_EXISTS",message:"Cannot create a file when that file already exists."},"0x000000BA":{code:"ERROR_INVALID_FLAG_NUMBER",message:"The flag passed is not correct."},"0x000000BB":{code:"ERROR_SEM_NOT_FOUND",message:"The specified system semaphore name was not found."},"0x000000BC":{code:"ERROR_INVALID_STARTING_CODESEG",message:"The operating system cannot run %1."},"0x000000BD":{code:"ERROR_INVALID_STACKSEG",message:"The operating system cannot run %1."},"0x000000BE":{code:"ERROR_INVALID_MODULETYPE",message:"The operating system cannot run %1."},"0x000000BF":{code:"ERROR_INVALID_EXE_SIGNATURE",message:"Cannot run %1 in Win32 mode."},"0x000000C0":{code:"ERROR_EXE_MARKED_INVALID",message:"The operating system cannot run %1."},"0x000000C1":{code:"ERROR_BAD_EXE_FORMAT",message:"%1 is not a valid Win32 application."},"0x000000C2":{code:"ERROR_ITERATED_DATA_EXCEEDS_64k",message:"The operating system cannot run %1."},"0x000000C3":{code:"ERROR_INVALID_MINALLOCSIZE",message:"The operating system cannot run %1."},"0x000000C4":{code:"ERROR_DYNLINK_FROM_INVALID_RING",message:"The operating system cannot run this application program."},"0x000000C5":{code:"ERROR_IOPL_NOT_ENABLED",message:"The operating system is not presently configured to run this application."},"0x000000C6":{code:"ERROR_INVALID_SEGDPL",message:"The operating system cannot run %1."},"0x000000C7":{code:"ERROR_AUTODATASEG_EXCEEDS_64k",message:"The operating system cannot run this application program."},"0x000000C8":{code:"ERROR_RING2SEG_MUST_BE_MOVABLE",message:"The code segment cannot be greater than or equal to 64 KB."},"0x000000C9":{code:"ERROR_RELOC_CHAIN_XEEDS_SEGLIM",message:"The operating system cannot run %1."},"0x000000CA":{code:"ERROR_INFLOOP_IN_RELOC_CHAIN",message:"The operating system cannot run %1."},"0x000000CB":{code:"ERROR_ENVVAR_NOT_FOUND",message:"The system could not find the environment option that was entered."},"0x000000CD":{code:"ERROR_NO_SIGNAL_SENT",message:"No process in the command subtree has a signal handler."},"0x000000CE":{code:"ERROR_FILENAME_EXCED_RANGE",message:"The file name or extension is too long."},"0x000000CF":{code:"ERROR_RING2_STACK_IN_USE",message:"The ring 2 stack is in use."},"0x000000D0":{code:"ERROR_META_EXPANSION_TOO_LONG",message:"The asterisk (*) or question mark (?) global file name characters are entered incorrectly, or too many global file name characters are specified."},"0x000000D1":{code:"ERROR_INVALID_SIGNAL_NUMBER",message:"The signal being posted is not correct."},"0x000000D2":{code:"ERROR_THREAD_1_INACTIVE",message:"The signal handler cannot be set."},"0x000000D4":{code:"ERROR_LOCKED",message:"The segment is locked and cannot be reallocated."},"0x000000D6":{code:"ERROR_TOO_MANY_MODULES",message:"Too many dynamic-link modules are attached to this program or dynamic-link module."},"0x000000D7":{code:"ERROR_NESTING_NOT_ALLOWED",message:"Cannot nest calls to LoadModule."},"0x000000D8":{code:"ERROR_EXE_MACHINE_TYPE_MISMATCH",message:"This version of %1 is not compatible with the version of Windows you're running. Check your computer's system information to see whether you need an x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher."},"0x000000D9":{code:"ERROR_EXE_CANNOT_MODIFY_SIGNED_BINARY",message:"The image file %1 is signed, unable to modify."},"0x000000DA":{code:"ERROR_EXE_CANNOT_MODIFY_STRONG_SIGNED_BINARY",message:"The image file %1 is strong signed, unable to modify."},"0x000000DC":{code:"ERROR_FILE_CHECKED_OUT",message:"This file is checked out or locked for editing by another user."},"0x000000DD":{code:"ERROR_CHECKOUT_REQUIRED",message:"The file must be checked out before saving changes."},"0x000000DE":{code:"ERROR_BAD_FILE_TYPE",message:"The file type being saved or retrieved has been blocked."},"0x000000DF":{code:"ERROR_FILE_TOO_LARGE",message:"The file size exceeds the limit allowed and cannot be saved."},"0x000000E0":{code:"ERROR_FORMS_AUTH_REQUIRED",message:"Access denied. Before opening files in this location, you must first browse to the website and select the option to sign in automatically."},"0x000000E1":{code:"ERROR_VIRUS_INFECTED",message:"Operation did not complete successfully because the file contains a virus."},"0x000000E2":{code:"ERROR_VIRUS_DELETED",message:"This file contains a virus and cannot be opened. Due to the nature of this virus, the file has been removed from this location."},"0x000000E5":{code:"ERROR_PIPE_LOCAL",message:"The pipe is local."},"0x000000E6":{code:"ERROR_BAD_PIPE",message:"The pipe state is invalid."},"0x000000E7":{code:"ERROR_PIPE_BUSY",message:"All pipe instances are busy."},"0x000000E8":{code:"ERROR_NO_DATA",message:"The pipe is being closed."},"0x000000E9":{code:"ERROR_PIPE_NOT_CONNECTED",message:"No process is on the other end of the pipe."},"0x000000EA":{code:"ERROR_MORE_DATA",message:"More data is available."},"0x000000F0":{code:"ERROR_VC_DISCONNECTED",message:"The session was canceled."},"0x000000FE":{code:"ERROR_INVALID_EA_NAME",message:"The specified extended attribute name was invalid."},"0x000000FF":{code:"ERROR_EA_LIST_INCONSISTENT",message:"The extended attributes are inconsistent."},"0x00000102":{code:"WAIT_TIMEOUT",message:"The wait operation timed out."},"0x00000103":{code:"ERROR_NO_MORE_ITEMS",message:"No more data is available."},"0x0000010A":{code:"ERROR_CANNOT_COPY",message:"The copy functions cannot be used."},"0x0000010B":{code:"ERROR_DIRECTORY",message:"The directory name is invalid."},"0x00000113":{code:"ERROR_EAS_DIDNT_FIT",message:"The extended attributes did not fit in the buffer."},"0x00000114":{code:"ERROR_EA_FILE_CORRUPT",message:"The extended attribute file on the mounted file system is corrupt."},"0x00000115":{code:"ERROR_EA_TABLE_FULL",message:"The extended attribute table file is full."},"0x00000116":{code:"ERROR_INVALID_EA_HANDLE",message:"The specified extended attribute handle is invalid."},"0x0000011A":{code:"ERROR_EAS_NOT_SUPPORTED",message:"The mounted file system does not support extended attributes."},"0x00000120":{code:"ERROR_NOT_OWNER",message:"Attempt to release mutex not owned by caller."},"0x0000012A":{code:"ERROR_TOO_MANY_POSTS",message:"Too many posts were made to a semaphore."},"0x0000012B":{code:"ERROR_PARTIAL_COPY",message:"Only part of a ReadProcessMemory or WriteProcessMemory request was completed."},"0x0000012C":{code:"ERROR_OPLOCK_NOT_GRANTED",message:"The oplock request is denied."},"0x0000012D":{code:"ERROR_INVALID_OPLOCK_PROTOCOL",message:"An invalid oplock acknowledgment was received by the system."},"0x0000012E":{code:"ERROR_DISK_TOO_FRAGMENTED",message:"The volume is too fragmented to complete this operation."},"0x0000012F":{code:"ERROR_DELETE_PENDING",message:"The file cannot be opened because it is in the process of being deleted."},"0x0000013D":{code:"ERROR_MR_MID_NOT_FOUND",message:"The system cannot find message text for message number 0x%1 in the message file for %2."},"0x0000013E":{code:"ERROR_SCOPE_NOT_FOUND",message:"The scope specified was not found."},"0x0000015E":{code:"ERROR_FAIL_NOACTION_REBOOT",message:"No action was taken because a system reboot is required."},"0x0000015F":{code:"ERROR_FAIL_SHUTDOWN",message:"The shutdown operation failed."},"0x00000160":{code:"ERROR_FAIL_RESTART",message:"The restart operation failed."},"0x00000161":{code:"ERROR_MAX_SESSIONS_REACHED",message:"The maximum number of sessions has been reached."},"0x00000190":{code:"ERROR_THREAD_MODE_ALREADY_BACKGROUND",message:"The thread is already in background processing mode."},"0x00000191":{code:"ERROR_THREAD_MODE_NOT_BACKGROUND",message:"The thread is not in background processing mode."},"0x00000192":{code:"ERROR_PROCESS_MODE_ALREADY_BACKGROUND",message:"The process is already in background processing mode."},"0x00000193":{code:"ERROR_PROCESS_MODE_NOT_BACKGROUND",message:"The process is not in background processing mode."},"0x000001E7":{code:"ERROR_INVALID_ADDRESS",message:"Attempt to access invalid address."},"0x000001F4":{code:"ERROR_USER_PROFILE_LOAD",message:"User profile cannot be loaded."},"0x00000216":{code:"ERROR_ARITHMETIC_OVERFLOW",message:"Arithmetic result exceeded 32 bits."},"0x00000217":{code:"ERROR_PIPE_CONNECTED",message:"There is a process on the other end of the pipe."},"0x00000218":{code:"ERROR_PIPE_LISTENING",message:"Waiting for a process to open the other end of the pipe."},"0x00000219":{code:"ERROR_VERIFIER_STOP",message:"Application verifier has found an error in the current process."},"0x0000021A":{code:"ERROR_ABIOS_ERROR",message:"An error occurred in the ABIOS subsystem."},"0x0000021B":{code:"ERROR_WX86_WARNING",message:"A warning occurred in the WX86 subsystem."},"0x0000021C":{code:"ERROR_WX86_ERROR",message:"An error occurred in the WX86 subsystem."},"0x0000021D":{code:"ERROR_TIMER_NOT_CANCELED",message:"An attempt was made to cancel or set a timer that has an associated asynchronous procedure call (APC) and the subject thread is not the thread that originally set the timer with an associated APC routine."},"0x0000021E":{code:"ERROR_UNWIND",message:"Unwind exception code."},"0x0000021F":{code:"ERROR_BAD_STACK",message:"An invalid or unaligned stack was encountered during an unwind operation."},"0x00000220":{code:"ERROR_INVALID_UNWIND_TARGET",message:"An invalid unwind target was encountered during an unwind operation."},"0x00000221":{code:"ERROR_INVALID_PORT_ATTRIBUTES",message:"Invalid object attributes specified to NtCreatePort or invalid port attributes specified to NtConnectPort."},"0x00000222":{code:"ERROR_PORT_MESSAGE_TOO_LONG",message:"Length of message passed to NtRequestPort or NtRequestWaitReplyPort was longer than the maximum message allowed by the port."},"0x00000223":{code:"ERROR_INVALID_QUOTA_LOWER",message:"An attempt was made to lower a quota limit below the current usage."},"0x00000224":{code:"ERROR_DEVICE_ALREADY_ATTACHED",message:"An attempt was made to attach to a device that was already attached to another device."},"0x00000225":{code:"ERROR_INSTRUCTION_MISALIGNMENT",message:"An attempt was made to execute an instruction at an unaligned address, and the host system does not support unaligned instruction references."},"0x00000226":{code:"ERROR_PROFILING_NOT_STARTED",message:"Profiling not started."},"0x00000227":{code:"ERROR_PROFILING_NOT_STOPPED",message:"Profiling not stopped."},"0x00000228":{code:"ERROR_COULD_NOT_INTERPRET",message:"The passed ACL did not contain the minimum required information."},"0x00000229":{code:"ERROR_PROFILING_AT_LIMIT",message:"The number of active profiling objects is at the maximum and no more may be started."},"0x0000022A":{code:"ERROR_CANT_WAIT",message:"Used to indicate that an operation cannot continue without blocking for I/O."},"0x0000022B":{code:"ERROR_CANT_TERMINATE_SELF",message:"Indicates that a thread attempted to terminate itself by default (called NtTerminateThread with NULL) and it was the last thread in the current process."},"0x0000022C":{code:"ERROR_UNEXPECTED_MM_CREATE_ERR",message:"If an MM error is returned that is not defined in the standard FsRtl filter, it is converted to one of the following errors that is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0x0000022D":{code:"ERROR_UNEXPECTED_MM_MAP_ERROR",message:"If an MM error is returned that is not defined in the standard FsRtl filter, it is converted to one of the following errors that is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0x0000022E":{code:"ERROR_UNEXPECTED_MM_EXTEND_ERR",message:"If an MM error is returned that is not defined in the standard FsRtl filter, it is converted to one of the following errors that is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0x0000022F":{code:"ERROR_BAD_FUNCTION_TABLE",message:"A malformed function table was encountered during an unwind operation."},"0x00000230":{code:"ERROR_NO_GUID_TRANSLATION",message:"Indicates that an attempt was made to assign protection to a file system file or directory and one of the SIDs in the security descriptor could not be translated into a GUID that could be stored by the file system. This causes the protection attempt to fail, which may cause a file creation attempt to fail."},"0x00000231":{code:"ERROR_INVALID_LDT_SIZE",message:"Indicates that an attempt was made to grow a local domain table (LDT) by setting its size, or that the size was not an even number of selectors."},"0x00000233":{code:"ERROR_INVALID_LDT_OFFSET",message:"Indicates that the starting value for the LDT information was not an integral multiple of the selector size."},"0x00000234":{code:"ERROR_INVALID_LDT_DESCRIPTOR",message:"Indicates that the user supplied an invalid descriptor when trying to set up LDT descriptors."},"0x00000235":{code:"ERROR_TOO_MANY_THREADS",message:"Indicates a process has too many threads to perform the requested action. For example, assignment of a primary token may only be performed when a process has zero or one threads."},"0x00000236":{code:"ERROR_THREAD_NOT_IN_PROCESS",message:"An attempt was made to operate on a thread within a specific process, but the thread specified is not in the process specified."},"0x00000237":{code:"ERROR_PAGEFILE_QUOTA_EXCEEDED",message:"Page file quota was exceeded."},"0x00000238":{code:"ERROR_LOGON_SERVER_CONFLICT",message:"The Netlogon service cannot start because another Netlogon service running in the domain conflicts with the specified role."},"0x00000239":{code:"ERROR_SYNCHRONIZATION_REQUIRED",message:"The Security Accounts Manager (SAM) database on a Windows Server is significantly out of synchronization with the copy on the domain controller. A complete synchronization is required."},"0x0000023A":{code:"ERROR_NET_OPEN_FAILED",message:"The NtCreateFile API failed. This error should never be returned to an application, it is a place holder for the Windows LAN Manager Redirector to use in its internal error mapping routines."},"0x0000023B":{code:"ERROR_IO_PRIVILEGE_FAILED",message:"{Privilege Failed} The I/O permissions for the process could not be changed."},"0x0000023C":{code:"ERROR_CONTROL_C_EXIT",message:"{Application Exit by CTRL+C} The application terminated as a result of a CTRL+C."},"0x0000023D":{code:"ERROR_MISSING_SYSTEMFILE",message:"{Missing System File} The required system file %hs is bad or missing."},"0x0000023E":{code:"ERROR_UNHANDLED_EXCEPTION",message:"{Application Error} The exception %s (0x%08lx) occurred in the application at location 0x%08lx."},"0x0000023F":{code:"ERROR_APP_INIT_FAILURE",message:"{Application Error} The application failed to initialize properly (0x%lx). Click OK to terminate the application."},"0x00000240":{code:"ERROR_PAGEFILE_CREATE_FAILED",message:"{Unable to Create Paging File} The creation of the paging file %hs failed (%lx). The requested size was %ld."},"0x00000241":{code:"ERROR_INVALID_IMAGE_HASH",message:"The hash for the image cannot be found in the system catalogs. The image is likely corrupt or the victim of tampering."},"0x00000242":{code:"ERROR_NO_PAGEFILE",message:"{No Paging File Specified} No paging file was specified in the system configuration."},"0x00000243":{code:"ERROR_ILLEGAL_FLOAT_CONTEXT",message:"{EXCEPTION} A real-mode application issued a floating-point instruction, and floating-point hardware is not present."},"0x00000244":{code:"ERROR_NO_EVENT_PAIR",message:"An event pair synchronization operation was performed using the thread-specific client/server event pair object, but no event pair object was associated with the thread."},"0x00000245":{code:"ERROR_DOMAIN_CTRLR_CONFIG_ERROR",message:"A Windows Server has an incorrect configuration."},"0x00000246":{code:"ERROR_ILLEGAL_CHARACTER",message:"An illegal character was encountered. For a multibyte character set, this includes a lead byte without a succeeding trail byte. For the Unicode character set, this includes the characters 0xFFFF and 0xFFFE."},"0x00000247":{code:"ERROR_UNDEFINED_CHARACTER",message:"The Unicode character is not defined in the Unicode character set installed on the system."},"0x00000248":{code:"ERROR_FLOPPY_VOLUME",message:"The paging file cannot be created on a floppy disk."},"0x00000249":{code:"ERROR_BIOS_FAILED_TO_CONNECT_INTERRUPT",message:"The system bios failed to connect a system interrupt to the device or bus for which the device is connected."},"0x0000024A":{code:"ERROR_BACKUP_CONTROLLER",message:"This operation is only allowed for the primary domain controller (PDC) of the domain."},"0x0000024B":{code:"ERROR_MUTANT_LIMIT_EXCEEDED",message:"An attempt was made to acquire a mutant such that its maximum count would have been exceeded."},"0x0000024C":{code:"ERROR_FS_DRIVER_REQUIRED",message:"A volume has been accessed for which a file system driver is required that has not yet been loaded."},"0x0000024D":{code:"ERROR_CANNOT_LOAD_REGISTRY_FILE",message:"{Registry File Failure} The registry cannot load the hive (file): %hs or its log or alternate. It is corrupt, absent, or not writable."},"0x0000024E":{code:"ERROR_DEBUG_ATTACH_FAILED",message:"{Unexpected Failure in DebugActiveProcess} An unexpected failure occurred while processing a DebugActiveProcess API request. You may choose OK to terminate the process, or Cancel to ignore the error."},"0x0000024F":{code:"ERROR_SYSTEM_PROCESS_TERMINATED",message:"{Fatal System Error} The %hs system process terminated unexpectedly with a status of 0x%08x (0x%08x 0x%08x). The system has been shut down."},"0x00000250":{code:"ERROR_DATA_NOT_ACCEPTED",message:"{Data Not Accepted} The transport driver interface (TDI) client could not handle the data received during an indication."},"0x00000251":{code:"ERROR_VDM_HARD_ERROR",message:"The NT Virtual DOS Machine (NTVDM) encountered a hard error."},"0x00000252":{code:"ERROR_DRIVER_CANCEL_TIMEOUT",message:"{Cancel Timeout} The driver %hs failed to complete a canceled I/O request in the allotted time."},"0x00000253":{code:"ERROR_REPLY_MESSAGE_MISMATCH",message:"{Reply Message Mismatch} An attempt was made to reply to a local procedure call (LPC) message, but the thread specified by the client ID in the message was not waiting on that message."},"0x00000254":{code:"ERROR_LOST_WRITEBEHIND_DATA",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs. The data has been lost. This error may be caused by a failure of your computer hardware or network connection. Try to save this file elsewhere."},"0x00000255":{code:"ERROR_CLIENT_SERVER_PARAMETERS_INVALID",message:"The parameters passed to the server in the client/server shared memory window were invalid. Too much data may have been put in the shared memory window."},"0x00000256":{code:"ERROR_NOT_TINY_STREAM",message:"The stream is not a tiny stream."},"0x00000257":{code:"ERROR_STACK_OVERFLOW_READ",message:"The request must be handled by the stack overflow code."},"0x00000258":{code:"ERROR_CONVERT_TO_LARGE",message:"Internal OFS status codes indicating how an allocation operation is handled. Either it is retried after the containing onode is moved or the extent stream is converted to a large stream."},"0x00000259":{code:"ERROR_FOUND_OUT_OF_SCOPE",message:"The attempt to find the object found an object matching by ID on the volume but it is out of the scope of the handle used for the operation."},"0x0000025A":{code:"ERROR_ALLOCATE_BUCKET",message:"The bucket array must be grown. Retry transaction after doing so."},"0x0000025B":{code:"ERROR_MARSHALL_OVERFLOW",message:"The user/kernel marshaling buffer has overflowed."},"0x0000025C":{code:"ERROR_INVALID_VARIANT",message:"The supplied variant structure contains invalid data."},"0x0000025D":{code:"ERROR_BAD_COMPRESSION_BUFFER",message:"The specified buffer contains ill-formed data."},"0x0000025E":{code:"ERROR_AUDIT_FAILED",message:"{Audit Failed} An attempt to generate a security audit failed."},"0x0000025F":{code:"ERROR_TIMER_RESOLUTION_NOT_SET",message:"The timer resolution was not previously set by the current process."},"0x00000260":{code:"ERROR_INSUFFICIENT_LOGON_INFO",message:"There is insufficient account information to log you on."},"0x00000261":{code:"ERROR_BAD_DLL_ENTRYPOINT",message:"{Invalid DLL Entrypoint} The dynamic link library %hs is not written correctly. The stack pointer has been left in an inconsistent state. The entry point should be declared as WINAPI or STDCALL. Select YES to fail the DLL load. Select NO to continue execution. Selecting NO may cause the application to operate incorrectly."},"0x00000262":{code:"ERROR_BAD_SERVICE_ENTRYPOINT",message:"{Invalid Service Callback Entrypoint} The %hs service is not written correctly. The stack pointer has been left in an inconsistent state. The callback entry point should be declared as WINAPI or STDCALL. Selecting OK will cause the service to continue operation. However, the service process may operate incorrectly."},"0x00000263":{code:"ERROR_IP_ADDRESS_CONFLICT1",message:"There is an IP address conflict with another system on the network."},"0x00000264":{code:"ERROR_IP_ADDRESS_CONFLICT2",message:"There is an IP address conflict with another system on the network."},"0x00000265":{code:"ERROR_REGISTRY_QUOTA_LIMIT",message:"{Low On Registry Space} The system has reached the maximum size allowed for the system part of the registry. Additional storage requests will be ignored."},"0x00000266":{code:"ERROR_NO_CALLBACK_ACTIVE",message:"A callback return system service cannot be executed when no callback is active."},"0x00000267":{code:"ERROR_PWD_TOO_SHORT",message:"The password provided is too short to meet the policy of your user account. Choose a longer password."},"0x00000268":{code:"ERROR_PWD_TOO_RECENT",message:"The policy of your user account does not allow you to change passwords too frequently. This is done to prevent users from changing back to a familiar, but potentially discovered, password. If you feel your password has been compromised, contact your administrator immediately to have a new one assigned."},"0x00000269":{code:"ERROR_PWD_HISTORY_CONFLICT",message:"You have attempted to change your password to one that you have used in the past. The policy of your user account does not allow this. Select a password that you have not previously used."},"0x0000026A":{code:"ERROR_UNSUPPORTED_COMPRESSION",message:"The specified compression format is unsupported."},"0x0000026B":{code:"ERROR_INVALID_HW_PROFILE",message:"The specified hardware profile configuration is invalid."},"0x0000026C":{code:"ERROR_INVALID_PLUGPLAY_DEVICE_PATH",message:"The specified Plug and Play registry device path is invalid."},"0x0000026D":{code:"ERROR_QUOTA_LIST_INCONSISTENT",message:"The specified quota list is internally inconsistent with its descriptor."},"0x0000026E":{code:"ERROR_EVALUATION_EXPIRATION",message:"{Windows Evaluation Notification} The evaluation period for this installation of Windows has expired. This system will shut down in 1 hour. To restore access to this installation of Windows, upgrade this installation using a licensed distribution of this product."},"0x0000026F":{code:"ERROR_ILLEGAL_DLL_RELOCATION",message:"{Illegal System DLL Relocation} The system DLL %hs was relocated in memory. The application will not run properly. The relocation occurred because the DLL %hs occupied an address range reserved for Windows system DLLs. The vendor supplying the DLL should be contacted for a new DLL."},"0x00000270":{code:"ERROR_DLL_INIT_FAILED_LOGOFF",message:"{DLL Initialization Failed} The application failed to initialize because the window station is shutting down."},"0x00000271":{code:"ERROR_VALIDATE_CONTINUE",message:"The validation process needs to continue on to the next step."},"0x00000272":{code:"ERROR_NO_MORE_MATCHES",message:"There are no more matches for the current index enumeration."},"0x00000273":{code:"ERROR_RANGE_LIST_CONFLICT",message:"The range could not be added to the range list because of a conflict."},"0x00000274":{code:"ERROR_SERVER_SID_MISMATCH",message:"The server process is running under a SID different than that required by the client."},"0x00000275":{code:"ERROR_CANT_ENABLE_DENY_ONLY",message:"A group marked use for deny only cannot be enabled."},"0x00000276":{code:"ERROR_FLOAT_MULTIPLE_FAULTS",message:"{EXCEPTION} Multiple floating point faults."},"0x00000277":{code:"ERROR_FLOAT_MULTIPLE_TRAPS",message:"{EXCEPTION} Multiple floating point traps."},"0x00000278":{code:"ERROR_NOINTERFACE",message:"The requested interface is not supported."},"0x00000279":{code:"ERROR_DRIVER_FAILED_SLEEP",message:"{System Standby Failed} The driver %hs does not support standby mode. Updating this driver may allow the system to go to standby mode."},"0x0000027A":{code:"ERROR_CORRUPT_SYSTEM_FILE",message:"The system file %1 has become corrupt and has been replaced."},"0x0000027B":{code:"ERROR_COMMITMENT_MINIMUM",message:"{Virtual Memory Minimum Too Low} Your system is low on virtual memory. Windows is increasing the size of your virtual memory paging file. During this process, memory requests for some applications may be denied. For more information, see Help."},"0x0000027C":{code:"ERROR_PNP_RESTART_ENUMERATION",message:"A device was removed so enumeration must be restarted."},"0x0000027D":{code:"ERROR_SYSTEM_IMAGE_BAD_SIGNATURE",message:"{Fatal System Error} The system image %s is not properly signed. The file has been replaced with the signed file. The system has been shut down."},"0x0000027E":{code:"ERROR_PNP_REBOOT_REQUIRED",message:"Device will not start without a reboot."},"0x0000027F":{code:"ERROR_INSUFFICIENT_POWER",message:"There is not enough power to complete the requested operation."},"0x00000281":{code:"ERROR_SYSTEM_SHUTDOWN",message:"The system is in the process of shutting down."},"0x00000282":{code:"ERROR_PORT_NOT_SET",message:"An attempt to remove a process DebugPort was made, but a port was not already associated with the process."},"0x00000283":{code:"ERROR_DS_VERSION_CHECK_FAILURE",message:"This version of Windows is not compatible with the behavior version of directory forest, domain, or domain controller."},"0x00000284":{code:"ERROR_RANGE_NOT_FOUND",message:"The specified range could not be found in the range list."},"0x00000286":{code:"ERROR_NOT_SAFE_MODE_DRIVER",message:"The driver was not loaded because the system is booting into safe mode."},"0x00000287":{code:"ERROR_FAILED_DRIVER_ENTRY",message:"The driver was not loaded because it failed its initialization call."},"0x00000288":{code:"ERROR_DEVICE_ENUMERATION_ERROR",message:"The device encountered an error while applying power or reading the device configuration. This may be caused by a failure of your hardware or by a poor connection."},"0x00000289":{code:"ERROR_MOUNT_POINT_NOT_RESOLVED",message:"The create operation failed because the name contained at least one mount point that resolves to a volume to which the specified device object is not attached."},"0x0000028A":{code:"ERROR_INVALID_DEVICE_OBJECT_PARAMETER",message:"The device object parameter is either not a valid device object or is not attached to the volume specified by the file name."},"0x0000028B":{code:"ERROR_MCA_OCCURED",message:"A machine check error has occurred. Check the system event log for additional information."},"0x0000028C":{code:"ERROR_DRIVER_DATABASE_ERROR",message:"There was an error [%2] processing the driver database."},"0x0000028D":{code:"ERROR_SYSTEM_HIVE_TOO_LARGE",message:"The system hive size has exceeded its limit."},"0x0000028E":{code:"ERROR_DRIVER_FAILED_PRIOR_UNLOAD",message:"The driver could not be loaded because a previous version of the driver is still in memory."},"0x0000028F":{code:"ERROR_VOLSNAP_PREPARE_HIBERNATE",message:"{Volume Shadow Copy Service} Wait while the Volume Shadow Copy Service prepares volume %hs for hibernation."},"0x00000290":{code:"ERROR_HIBERNATION_FAILURE",message:"The system has failed to hibernate (the error code is %hs). Hibernation will be disabled until the system is restarted."},"0x00000299":{code:"ERROR_FILE_SYSTEM_LIMITATION",message:"The requested operation could not be completed due to a file system limitation."},"0x0000029C":{code:"ERROR_ASSERTION_FAILURE",message:"An assertion failure has occurred."},"0x0000029D":{code:"ERROR_ACPI_ERROR",message:"An error occurred in the Advanced Configuration and Power Interface (ACPI) subsystem."},"0x0000029E":{code:"ERROR_WOW_ASSERTION",message:"WOW assertion error."},"0x0000029F":{code:"ERROR_PNP_BAD_MPS_TABLE",message:"A device is missing in the system BIOS MultiProcessor Specification (MPS) table. This device will not be used. Contact your system vendor for system BIOS update."},"0x000002A0":{code:"ERROR_PNP_TRANSLATION_FAILED",message:"A translator failed to translate resources."},"0x000002A1":{code:"ERROR_PNP_IRQ_TRANSLATION_FAILED",message:"An interrupt request (IRQ) translator failed to translate resources."},"0x000002A2":{code:"ERROR_PNP_INVALID_ID",message:"Driver %2 returned invalid ID for a child device (%3)."},"0x000002A3":{code:"ERROR_WAKE_SYSTEM_DEBUGGER",message:"{Kernel Debugger Awakened} the system debugger was awakened by an interrupt."},"0x000002A4":{code:"ERROR_HANDLES_CLOSED",message:"{Handles Closed} Handles to objects have been automatically closed because of the requested operation."},"0x000002A5":{code:"ERROR_EXTRANEOUS_INFORMATION",message:"{Too Much Information} The specified ACL contained more information than was expected."},"0x000002A6":{code:"ERROR_RXACT_COMMIT_NECESSARY",message:"This warning level status indicates that the transaction state already exists for the registry subtree, but that a transaction commit was previously aborted. The commit has NOT been completed, but it has not been rolled back either (so it may still be committed if desired)."},"0x000002A7":{code:"ERROR_MEDIA_CHECK",message:"{Media Changed} The media may have changed."},"0x000002A8":{code:"ERROR_GUID_SUBSTITUTION_MADE",message:"{GUID Substitution} During the translation of a GUID to a Windows SID, no administratively defined GUID prefix was found. A substitute prefix was used, which will not compromise system security. However, this may provide more restrictive access than intended."},"0x000002A9":{code:"ERROR_STOPPED_ON_SYMLINK",message:"The create operation stopped after reaching a symbolic link."},"0x000002AA":{code:"ERROR_LONGJUMP",message:"A long jump has been executed."},"0x000002AB":{code:"ERROR_PLUGPLAY_QUERY_VETOED",message:"The Plug and Play query operation was not successful."},"0x000002AC":{code:"ERROR_UNWIND_CONSOLIDATE",message:"A frame consolidation has been executed."},"0x000002AD":{code:"ERROR_REGISTRY_HIVE_RECOVERED",message:"{Registry Hive Recovered} Registry hive (file): %hs was corrupted and it has been recovered. Some data might have been lost."},"0x000002AE":{code:"ERROR_DLL_MIGHT_BE_INSECURE",message:"The application is attempting to run executable code from the module %hs. This may be insecure. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x000002AF":{code:"ERROR_DLL_MIGHT_BE_INCOMPATIBLE",message:"The application is loading executable code from the module %hs. This is secure, but may be incompatible with previous releases of the operating system. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x000002B0":{code:"ERROR_DBG_EXCEPTION_NOT_HANDLED",message:"Debugger did not handle the exception."},"0x000002B1":{code:"ERROR_DBG_REPLY_LATER",message:"Debugger will reply later."},"0x000002B2":{code:"ERROR_DBG_UNABLE_TO_PROVIDE_HANDLE",message:"Debugger cannot provide handle."},"0x000002B3":{code:"ERROR_DBG_TERMINATE_THREAD",message:"Debugger terminated thread."},"0x000002B4":{code:"ERROR_DBG_TERMINATE_PROCESS",message:"Debugger terminated process."},"0x000002B5":{code:"ERROR_DBG_CONTROL_C",message:"Debugger got control C."},"0x000002B6":{code:"ERROR_DBG_PRINTEXCEPTION_C",message:"Debugger printed exception on control C."},"0x000002B7":{code:"ERROR_DBG_RIPEXCEPTION",message:"Debugger received Routing Information Protocol (RIP) exception."},"0x000002B8":{code:"ERROR_DBG_CONTROL_BREAK",message:"Debugger received control break."},"0x000002B9":{code:"ERROR_DBG_COMMAND_EXCEPTION",message:"Debugger command communication exception."},"0x000002BA":{code:"ERROR_OBJECT_NAME_EXISTS",message:"{Object Exists} An attempt was made to create an object and the object name already existed."},"0x000002BB":{code:"ERROR_THREAD_WAS_SUSPENDED",message:"{Thread Suspended} A thread termination occurred while the thread was suspended. The thread was resumed and termination proceeded."},"0x000002BC":{code:"ERROR_IMAGE_NOT_AT_BASE",message:"{Image Relocated} An image file could not be mapped at the address specified in the image file. Local fixes must be performed on this image."},"0x000002BD":{code:"ERROR_RXACT_STATE_CREATED",message:"This informational level status indicates that a specified registry subtree transaction state did not yet exist and had to be created."},"0x000002BE":{code:"ERROR_SEGMENT_NOTIFICATION",message:"{Segment Load} A virtual DOS machine (VDM) is loading, unloading, or moving an MS-DOS or Win16 program segment image. An exception is raised so a debugger can load, unload, or track symbols and breakpoints within these 16-bit segments."},"0x000002BF":{code:"ERROR_BAD_CURRENT_DIRECTORY",message:"{Invalid Current Directory} The process cannot switch to the startup current directory %hs. Select OK to set current directory to %hs, or select CANCEL to exit."},"0x000002C0":{code:"ERROR_FT_READ_RECOVERY_FROM_BACKUP",message:"{Redundant Read} To satisfy a read request, the NT fault-tolerant file system successfully read the requested data from a redundant copy. This was done because the file system encountered a failure on a member of the fault-tolerant volume, but it was unable to reassign the failing area of the device."},"0x000002C1":{code:"ERROR_FT_WRITE_RECOVERY",message:"{Redundant Write} To satisfy a write request, the Windows NT fault-tolerant file system successfully wrote a redundant copy of the information. This was done because the file system encountered a failure on a member of the fault-tolerant volume, but it was not able to reassign the failing area of the device."},"0x000002C2":{code:"ERROR_IMAGE_MACHINE_TYPE_MISMATCH",message:"{Machine Type Mismatch} The image file %hs is valid, but is for a machine type other than the current machine. Select OK to continue, or CANCEL to fail the DLL load."},"0x000002C3":{code:"ERROR_RECEIVE_PARTIAL",message:"{Partial Data Received} The network transport returned partial data to its client. The remaining data will be sent later."},"0x000002C4":{code:"ERROR_RECEIVE_EXPEDITED",message:"{Expedited Data Received} The network transport returned data to its client that was marked as expedited by the remote system."},"0x000002C5":{code:"ERROR_RECEIVE_PARTIAL_EXPEDITED",message:"{Partial Expedited Data Received} The network transport returned partial data to its client and this data was marked as expedited by the remote system. The remaining data will be sent later."},"0x000002C6":{code:"ERROR_EVENT_DONE",message:"{TDI Event Done} The TDI indication has completed successfully."},"0x000002C7":{code:"ERROR_EVENT_PENDING",message:"{TDI Event Pending} The TDI indication has entered the pending state."},"0x000002C8":{code:"ERROR_CHECKING_FILE_SYSTEM",message:"Checking file system on %wZ."},"0x000002C9":{code:"ERROR_FATAL_APP_EXIT",message:"{Fatal Application Exit} %hs."},"0x000002CA":{code:"ERROR_PREDEFINED_HANDLE",message:"The specified registry key is referenced by a predefined handle."},"0x000002CB":{code:"ERROR_WAS_UNLOCKED",message:"{Page Unlocked} The page protection of a locked page was changed to 'No Access' and the page was unlocked from memory and from the process."},"0x000002CD":{code:"ERROR_WAS_LOCKED",message:"{Page Locked} One of the pages to lock was already locked."},"0x000002CF":{code:"ERROR_ALREADY_WIN32",message:"The value already corresponds with a Win 32 error code."},"0x000002D0":{code:"ERROR_IMAGE_MACHINE_TYPE_MISMATCH_EXE",message:"{Machine Type Mismatch} The image file %hs is valid, but is for a machine type other than the current machine."},"0x000002D1":{code:"ERROR_NO_YIELD_PERFORMED",message:"A yield execution was performed and no thread was available to run."},"0x000002D2":{code:"ERROR_TIMER_RESUME_IGNORED",message:"The resume flag to a timer API was ignored."},"0x000002D3":{code:"ERROR_ARBITRATION_UNHANDLED",message:"The arbiter has deferred arbitration of these resources to its parent."},"0x000002D4":{code:"ERROR_CARDBUS_NOT_SUPPORTED",message:'The inserted CardBus device cannot be started because of a configuration error on %hs"."'},"0x000002D5":{code:"ERROR_MP_PROCESSOR_MISMATCH",message:"The CPUs in this multiprocessor system are not all the same revision level. To use all processors the operating system restricts itself to the features of the least capable processor in the system. If problems occur with this system, contact the CPU manufacturer to see if this mix of processors is supported."},"0x000002D6":{code:"ERROR_HIBERNATED",message:"The system was put into hibernation."},"0x000002D7":{code:"ERROR_RESUME_HIBERNATION",message:"The system was resumed from hibernation."},"0x000002D8":{code:"ERROR_FIRMWARE_UPDATED",message:"Windows has detected that the system firmware (BIOS) was updated (previous firmware date = %2, current firmware date %3)."},"0x000002D9":{code:"ERROR_DRIVERS_LEAKING_LOCKED_PAGES",message:"A device driver is leaking locked I/O pages, causing system degradation. The system has automatically enabled a tracking code to try and catch the culprit."},"0x000002DA":{code:"ERROR_WAKE_SYSTEM",message:"The system has awoken."},"0x000002DF":{code:"ERROR_ABANDONED_WAIT_0",message:"The call failed because the handle associated with it was closed."},"0x000002E4":{code:"ERROR_ELEVATION_REQUIRED",message:"The requested operation requires elevation."},"0x000002E5":{code:"ERROR_REPARSE",message:"A reparse should be performed by the object manager because the name of the file resulted in a symbolic link."},"0x000002E6":{code:"ERROR_OPLOCK_BREAK_IN_PROGRESS",message:"An open/create operation completed while an oplock break is underway."},"0x000002E7":{code:"ERROR_VOLUME_MOUNTED",message:"A new volume has been mounted by a file system."},"0x000002E8":{code:"ERROR_RXACT_COMMITTED",message:"This success level status indicates that the transaction state already exists for the registry subtree, but that a transaction commit was previously aborted. The commit has now been completed."},"0x000002E9":{code:"ERROR_NOTIFY_CLEANUP",message:"This indicates that a notify change request has been completed due to closing the handle which made the notify change request."},"0x000002EA":{code:"ERROR_PRIMARY_TRANSPORT_CONNECT_FAILED",message:"{Connect Failure on Primary Transport} An attempt was made to connect to the remote server %hs on the primary transport, but the connection failed. The computer was able to connect on a secondary transport."},"0x000002EB":{code:"ERROR_PAGE_FAULT_TRANSITION",message:"Page fault was a transition fault."},"0x000002EC":{code:"ERROR_PAGE_FAULT_DEMAND_ZERO",message:"Page fault was a demand zero fault."},"0x000002ED":{code:"ERROR_PAGE_FAULT_COPY_ON_WRITE",message:"Page fault was a demand zero fault."},"0x000002EE":{code:"ERROR_PAGE_FAULT_GUARD_PAGE",message:"Page fault was a demand zero fault."},"0x000002EF":{code:"ERROR_PAGE_FAULT_PAGING_FILE",message:"Page fault was satisfied by reading from a secondary storage device."},"0x000002F0":{code:"ERROR_CACHE_PAGE_LOCKED",message:"Cached page was locked during operation."},"0x000002F1":{code:"ERROR_CRASH_DUMP",message:"Crash dump exists in paging file."},"0x000002F2":{code:"ERROR_BUFFER_ALL_ZEROS",message:"Specified buffer contains all zeros."},"0x000002F3":{code:"ERROR_REPARSE_OBJECT",message:"A reparse should be performed by the object manager because the name of the file resulted in a symbolic link."},"0x000002F4":{code:"ERROR_RESOURCE_REQUIREMENTS_CHANGED",message:"The device has succeeded a query-stop and its resource requirements have changed."},"0x000002F5":{code:"ERROR_TRANSLATION_COMPLETE",message:"The translator has translated these resources into the global space and no further translations should be performed."},"0x000002F6":{code:"ERROR_NOTHING_TO_TERMINATE",message:"A process being terminated has no threads to terminate."},"0x000002F7":{code:"ERROR_PROCESS_NOT_IN_JOB",message:"The specified process is not part of a job."},"0x000002F8":{code:"ERROR_PROCESS_IN_JOB",message:"The specified process is part of a job."},"0x000002F9":{code:"ERROR_VOLSNAP_HIBERNATE_READY",message:"{Volume Shadow Copy Service} The system is now ready for hibernation."},"0x000002FA":{code:"ERROR_FSFILTER_OP_COMPLETED_SUCCESSFULLY",message:"A file system or file system filter driver has successfully completed an FsFilter operation."},"0x000002FB":{code:"ERROR_INTERRUPT_VECTOR_ALREADY_CONNECTED",message:"The specified interrupt vector was already connected."},"0x000002FC":{code:"ERROR_INTERRUPT_STILL_CONNECTED",message:"The specified interrupt vector is still connected."},"0x000002FD":{code:"ERROR_WAIT_FOR_OPLOCK",message:"An operation is blocked waiting for an oplock."},"0x000002FE":{code:"ERROR_DBG_EXCEPTION_HANDLED",message:"Debugger handled exception."},"0x000002FF":{code:"ERROR_DBG_CONTINUE",message:"Debugger continued."},"0x00000300":{code:"ERROR_CALLBACK_POP_STACK",message:"An exception occurred in a user mode callback and the kernel callback frame should be removed."},"0x00000301":{code:"ERROR_COMPRESSION_DISABLED",message:"Compression is disabled for this volume."},"0x00000302":{code:"ERROR_CANTFETCHBACKWARDS",message:"The data provider cannot fetch backward through a result set."},"0x00000303":{code:"ERROR_CANTSCROLLBACKWARDS",message:"The data provider cannot scroll backward through a result set."},"0x00000304":{code:"ERROR_ROWSNOTRELEASED",message:"The data provider requires that previously fetched data is released before asking for more data."},"0x00000305":{code:"ERROR_BAD_ACCESSOR_FLAGS",message:"The data provider was not able to interpret the flags set for a column binding in an accessor."},"0x00000306":{code:"ERROR_ERRORS_ENCOUNTERED",message:"One or more errors occurred while processing the request."},"0x00000307":{code:"ERROR_NOT_CAPABLE",message:"The implementation is not capable of performing the request."},"0x00000308":{code:"ERROR_REQUEST_OUT_OF_SEQUENCE",message:"The client of a component requested an operation that is not valid given the state of the component instance."},"0x00000309":{code:"ERROR_VERSION_PARSE_ERROR",message:"A version number could not be parsed."},"0x0000030A":{code:"ERROR_BADSTARTPOSITION",message:"The iterator's start position is invalid."},"0x0000030B":{code:"ERROR_MEMORY_HARDWARE",message:"The hardware has reported an uncorrectable memory error."},"0x0000030C":{code:"ERROR_DISK_REPAIR_DISABLED",message:"The attempted operation required self-healing to be enabled."},"0x0000030D":{code:"ERROR_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE",message:"The Desktop heap encountered an error while allocating session memory. There is more information in the system event log."},"0x0000030E":{code:"ERROR_SYSTEM_POWERSTATE_TRANSITION",message:"The system power state is transitioning from %2 to %3."},"0x0000030F":{code:"ERROR_SYSTEM_POWERSTATE_COMPLEX_TRANSITION",message:"The system power state is transitioning from %2 to %3 but could enter %4."},"0x00000310":{code:"ERROR_MCA_EXCEPTION",message:"A thread is getting dispatched with MCA EXCEPTION because of MCA."},"0x00000311":{code:"ERROR_ACCESS_AUDIT_BY_POLICY",message:"Access to %1 is monitored by policy rule %2."},"0x00000312":{code:"ERROR_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY",message:"Access to %1 has been restricted by your administrator by policy rule %2."},"0x00000313":{code:"ERROR_ABANDON_HIBERFILE",message:"A valid hibernation file has been invalidated and should be abandoned."},"0x00000314":{code:"ERROR_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused by network connectivity issues. Try to save this file elsewhere."},"0x00000315":{code:"ERROR_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error was returned by the server on which the file exists. Try to save this file elsewhere."},"0x00000316":{code:"ERROR_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused if the device has been removed or the media is write-protected."},"0x000003E2":{code:"ERROR_EA_ACCESS_DENIED",message:"Access to the extended attribute was denied."},"0x000003E3":{code:"ERROR_OPERATION_ABORTED",message:"The I/O operation has been aborted because of either a thread exit or an application request."},"0x000003E4":{code:"ERROR_IO_INCOMPLETE",message:"Overlapped I/O event is not in a signaled state."},"0x000003E5":{code:"ERROR_IO_PENDING",message:"Overlapped I/O operation is in progress."},"0x000003E6":{code:"ERROR_NOACCESS",message:"Invalid access to memory location."},"0x000003E7":{code:"ERROR_SWAPERROR",message:"Error performing in-page operation."},"0x000003E9":{code:"ERROR_STACK_OVERFLOW",message:"Recursion too deep; the stack overflowed."},"0x000003EA":{code:"ERROR_INVALID_MESSAGE",message:"The window cannot act on the sent message."},"0x000003EB":{code:"ERROR_CAN_NOT_COMPLETE",message:"Cannot complete this function."},"0x000003EC":{code:"ERROR_INVALID_FLAGS",message:"Invalid flags."},"0x000003ED":{code:"ERROR_UNRECOGNIZED_VOLUME",message:"The volume does not contain a recognized file system. Be sure that all required file system drivers are loaded and that the volume is not corrupted."},"0x000003EE":{code:"ERROR_FILE_INVALID",message:"The volume for a file has been externally altered so that the opened file is no longer valid."},"0x000003EF":{code:"ERROR_FULLSCREEN_MODE",message:"The requested operation cannot be performed in full-screen mode."},"0x000003F0":{code:"ERROR_NO_TOKEN",message:"An attempt was made to reference a token that does not exist."},"0x000003F1":{code:"ERROR_BADDB",message:"The configuration registry database is corrupt."},"0x000003F2":{code:"ERROR_BADKEY",message:"The configuration registry key is invalid."},"0x000003F3":{code:"ERROR_CANTOPEN",message:"The configuration registry key could not be opened."},"0x000003F4":{code:"ERROR_CANTREAD",message:"The configuration registry key could not be read."},"0x000003F5":{code:"ERROR_CANTWRITE",message:"The configuration registry key could not be written."},"0x000003F6":{code:"ERROR_REGISTRY_RECOVERED",message:"One of the files in the registry database had to be recovered by use of a log or alternate copy. The recovery was successful."},"0x000003F7":{code:"ERROR_REGISTRY_CORRUPT",message:"The registry is corrupted. The structure of one of the files containing registry data is corrupted, or the system's memory image of the file is corrupted, or the file could not be recovered because the alternate copy or log was absent or corrupted."},"0x000003F8":{code:"ERROR_REGISTRY_IO_FAILED",message:"An I/O operation initiated by the registry failed and cannot be recovered. The registry could not read in, write out, or flush one of the files that contain the system's image of the registry."},"0x000003F9":{code:"ERROR_NOT_REGISTRY_FILE",message:"The system attempted to load or restore a file into the registry, but the specified file is not in a registry file format."},"0x000003FA":{code:"ERROR_KEY_DELETED",message:"Illegal operation attempted on a registry key that has been marked for deletion."},"0x000003FB":{code:"ERROR_NO_LOG_SPACE",message:"System could not allocate the required space in a registry log."},"0x000003FC":{code:"ERROR_KEY_HAS_CHILDREN",message:"Cannot create a symbolic link in a registry key that already has subkeys or values."},"0x000003FD":{code:"ERROR_CHILD_MUST_BE_VOLATILE",message:"Cannot create a stable subkey under a volatile parent key."},"0x000003FE":{code:"ERROR_NOTIFY_ENUM_DIR",message:"A notify change request is being completed and the information is not being returned in the caller's buffer. The caller now needs to enumerate the files to find the changes."},"0x0000041B":{code:"ERROR_DEPENDENT_SERVICES_RUNNING",message:"A stop control has been sent to a service that other running services are dependent on."},"0x0000041C":{code:"ERROR_INVALID_SERVICE_CONTROL",message:"The requested control is not valid for this service."},"0x0000041D":{code:"ERROR_SERVICE_REQUEST_TIMEOUT",message:"The service did not respond to the start or control request in a timely fashion."},"0x0000041E":{code:"ERROR_SERVICE_NO_THREAD",message:"A thread could not be created for the service."},"0x0000041F":{code:"ERROR_SERVICE_DATABASE_LOCKED",message:"The service database is locked."},"0x00000420":{code:"ERROR_SERVICE_ALREADY_RUNNING",message:"An instance of the service is already running."},"0x00000421":{code:"ERROR_INVALID_SERVICE_ACCOUNT",message:"The account name is invalid or does not exist, or the password is invalid for the account name specified."},"0x00000422":{code:"ERROR_SERVICE_DISABLED",message:"The service cannot be started, either because it is disabled or because it has no enabled devices associated with it."},"0x00000423":{code:"ERROR_CIRCULAR_DEPENDENCY",message:"Circular service dependency was specified."},"0x00000424":{code:"ERROR_SERVICE_DOES_NOT_EXIST",message:"The specified service does not exist as an installed service."},"0x00000425":{code:"ERROR_SERVICE_CANNOT_ACCEPT_CTRL",message:"The service cannot accept control messages at this time."},"0x00000426":{code:"ERROR_SERVICE_NOT_ACTIVE",message:"The service has not been started."},"0x00000427":{code:"ERROR_FAILED_SERVICE_CONTROLLER_CONNECT",message:"The service process could not connect to the service controller."},"0x00000428":{code:"ERROR_EXCEPTION_IN_SERVICE",message:"An exception occurred in the service when handling the control request."},"0x00000429":{code:"ERROR_DATABASE_DOES_NOT_EXIST",message:"The database specified does not exist."},"0x0000042A":{code:"ERROR_SERVICE_SPECIFIC_ERROR",message:"The service has returned a service-specific error code."},"0x0000042B":{code:"ERROR_PROCESS_ABORTED",message:"The process terminated unexpectedly."},"0x0000042C":{code:"ERROR_SERVICE_DEPENDENCY_FAIL",message:"The dependency service or group failed to start."},"0x0000042D":{code:"ERROR_SERVICE_LOGON_FAILED",message:"The service did not start due to a logon failure."},"0x0000042E":{code:"ERROR_SERVICE_START_HANG",message:"After starting, the service hung in a start-pending state."},"0x0000042F":{code:"ERROR_INVALID_SERVICE_LOCK",message:"The specified service database lock is invalid."},"0x00000430":{code:"ERROR_SERVICE_MARKED_FOR_DELETE",message:"The specified service has been marked for deletion."},"0x00000431":{code:"ERROR_SERVICE_EXISTS",message:"The specified service already exists."},"0x00000432":{code:"ERROR_ALREADY_RUNNING_LKG",message:"The system is currently running with the last-known-good configuration."},"0x00000433":{code:"ERROR_SERVICE_DEPENDENCY_DELETED",message:"The dependency service does not exist or has been marked for deletion."},"0x00000434":{code:"ERROR_BOOT_ALREADY_ACCEPTED",message:"The current boot has already been accepted for use as the last-known-good control set."},"0x00000435":{code:"ERROR_SERVICE_NEVER_STARTED",message:"No attempts to start the service have been made since the last boot."},"0x00000436":{code:"ERROR_DUPLICATE_SERVICE_NAME",message:"The name is already in use as either a service name or a service display name."},"0x00000437":{code:"ERROR_DIFFERENT_SERVICE_ACCOUNT",message:"The account specified for this service is different from the account specified for other services running in the same process."},"0x00000438":{code:"ERROR_CANNOT_DETECT_DRIVER_FAILURE",message:"Failure actions can only be set for Win32 services, not for drivers."},"0x00000439":{code:"ERROR_CANNOT_DETECT_PROCESS_ABORT",message:"This service runs in the same process as the service control manager. Therefore, the service control manager cannot take action if this service's process terminates unexpectedly."},"0x0000043A":{code:"ERROR_NO_RECOVERY_PROGRAM",message:"No recovery program has been configured for this service."},"0x0000043B":{code:"ERROR_SERVICE_NOT_IN_EXE",message:"The executable program that this service is configured to run in does not implement the service."},"0x0000043C":{code:"ERROR_NOT_SAFEBOOT_SERVICE",message:"This service cannot be started in Safe Mode."},"0x0000044C":{code:"ERROR_END_OF_MEDIA",message:"The physical end of the tape has been reached."},"0x0000044D":{code:"ERROR_FILEMARK_DETECTED",message:"A tape access reached a filemark."},"0x0000044E":{code:"ERROR_BEGINNING_OF_MEDIA",message:"The beginning of the tape or a partition was encountered."},"0x0000044F":{code:"ERROR_SETMARK_DETECTED",message:"A tape access reached the end of a set of files."},"0x00000450":{code:"ERROR_NO_DATA_DETECTED",message:"No more data is on the tape."},"0x00000451":{code:"ERROR_PARTITION_FAILURE",message:"Tape could not be partitioned."},"0x00000452":{code:"ERROR_INVALID_BLOCK_LENGTH",message:"When accessing a new tape of a multivolume partition, the current block size is incorrect."},"0x00000453":{code:"ERROR_DEVICE_NOT_PARTITIONED",message:"Tape partition information could not be found when loading a tape."},"0x00000454":{code:"ERROR_UNABLE_TO_LOCK_MEDIA",message:"Unable to lock the media eject mechanism."},"0x00000455":{code:"ERROR_UNABLE_TO_UNLOAD_MEDIA",message:"Unable to unload the media."},"0x00000456":{code:"ERROR_MEDIA_CHANGED",message:"The media in the drive may have changed."},"0x00000457":{code:"ERROR_BUS_RESET",message:"The I/O bus was reset."},"0x00000458":{code:"ERROR_NO_MEDIA_IN_DRIVE",message:"No media in drive."},"0x00000459":{code:"ERROR_NO_UNICODE_TRANSLATION",message:"No mapping for the Unicode character exists in the target multibyte code page."},"0x0000045A":{code:"ERROR_DLL_INIT_FAILED",message:"A DLL initialization routine failed."},"0x0000045B":{code:"ERROR_SHUTDOWN_IN_PROGRESS",message:"A system shutdown is in progress."},"0x0000045C":{code:"ERROR_NO_SHUTDOWN_IN_PROGRESS",message:"Unable to abort the system shutdown because no shutdown was in progress."},"0x0000045D":{code:"ERROR_IO_DEVICE",message:"The request could not be performed because of an I/O device error."},"0x0000045E":{code:"ERROR_SERIAL_NO_DEVICE",message:"No serial device was successfully initialized. The serial driver will unload."},"0x0000045F":{code:"ERROR_IRQ_BUSY",message:"Unable to open a device that was sharing an IRQ with other devices. At least one other device that uses that IRQ was already opened."},"0x00000460":{code:"ERROR_MORE_WRITES",message:"A serial I/O operation was completed by another write to the serial port. (The IOCTL_SERIAL_XOFF_COUNTER reached zero.)"},"0x00000461":{code:"ERROR_COUNTER_TIMEOUT",message:"A serial I/O operation completed because the time-out period expired. (The IOCTL_SERIAL_XOFF_COUNTER did not reach zero.)"},"0x00000462":{code:"ERROR_FLOPPY_ID_MARK_NOT_FOUND",message:"No ID address mark was found on the floppy disk."},"0x00000463":{code:"ERROR_FLOPPY_WRONG_CYLINDER",message:"Mismatch between the floppy disk sector ID field and the floppy disk controller track address."},"0x00000464":{code:"ERROR_FLOPPY_UNKNOWN_ERROR",message:"The floppy disk controller reported an error that is not recognized by the floppy disk driver."},"0x00000465":{code:"ERROR_FLOPPY_BAD_REGISTERS",message:"The floppy disk controller returned inconsistent results in its registers."},"0x00000466":{code:"ERROR_DISK_RECALIBRATE_FAILED",message:"While accessing the hard disk, a recalibrate operation failed, even after retries."},"0x00000467":{code:"ERROR_DISK_OPERATION_FAILED",message:"While accessing the hard disk, a disk operation failed even after retries."},"0x00000468":{code:"ERROR_DISK_RESET_FAILED",message:"While accessing the hard disk, a disk controller reset was needed, but that also failed."},"0x00000469":{code:"ERROR_EOM_OVERFLOW",message:"Physical end of tape encountered."},"0x0000046A":{code:"ERROR_NOT_ENOUGH_SERVER_MEMORY",message:"Not enough server storage is available to process this command."},"0x0000046B":{code:"ERROR_POSSIBLE_DEADLOCK",message:"A potential deadlock condition has been detected."},"0x0000046C":{code:"ERROR_MAPPED_ALIGNMENT",message:"The base address or the file offset specified does not have the proper alignment."},"0x00000474":{code:"ERROR_SET_POWER_STATE_VETOED",message:"An attempt to change the system power state was vetoed by another application or driver."},"0x00000475":{code:"ERROR_SET_POWER_STATE_FAILED",message:"The system BIOS failed an attempt to change the system power state."},"0x00000476":{code:"ERROR_TOO_MANY_LINKS",message:"An attempt was made to create more links on a file than the file system supports."},"0x0000047E":{code:"ERROR_OLD_WIN_VERSION",message:"The specified program requires a newer version of Windows."},"0x0000047F":{code:"ERROR_APP_WRONG_OS",message:"The specified program is not a Windows or MS-DOS program."},"0x00000480":{code:"ERROR_SINGLE_INSTANCE_APP",message:"Cannot start more than one instance of the specified program."},"0x00000481":{code:"ERROR_RMODE_APP",message:"The specified program was written for an earlier version of Windows."},"0x00000482":{code:"ERROR_INVALID_DLL",message:"One of the library files needed to run this application is damaged."},"0x00000483":{code:"ERROR_NO_ASSOCIATION",message:"No application is associated with the specified file for this operation."},"0x00000484":{code:"ERROR_DDE_FAIL",message:"An error occurred in sending the command to the application."},"0x00000485":{code:"ERROR_DLL_NOT_FOUND",message:"One of the library files needed to run this application cannot be found."},"0x00000486":{code:"ERROR_NO_MORE_USER_HANDLES",message:"The current process has used all of its system allowance of handles for Windows manager objects."},"0x00000487":{code:"ERROR_MESSAGE_SYNC_ONLY",message:"The message can be used only with synchronous operations."},"0x00000488":{code:"ERROR_SOURCE_ELEMENT_EMPTY",message:"The indicated source element has no media."},"0x00000489":{code:"ERROR_DESTINATION_ELEMENT_FULL",message:"The indicated destination element already contains media."},"0x0000048A":{code:"ERROR_ILLEGAL_ELEMENT_ADDRESS",message:"The indicated element does not exist."},"0x0000048B":{code:"ERROR_MAGAZINE_NOT_PRESENT",message:"The indicated element is part of a magazine that is not present."},"0x0000048C":{code:"ERROR_DEVICE_REINITIALIZATION_NEEDED",message:"The indicated device requires re-initialization due to hardware errors."},"0x0000048D":{code:"ERROR_DEVICE_REQUIRES_CLEANING",message:"The device has indicated that cleaning is required before further operations are attempted."},"0x0000048E":{code:"ERROR_DEVICE_DOOR_OPEN",message:"The device has indicated that its door is open."},"0x0000048F":{code:"ERROR_DEVICE_NOT_CONNECTED",message:"The device is not connected."},"0x00000490":{code:"ERROR_NOT_FOUND",message:"Element not found."},"0x00000491":{code:"ERROR_NO_MATCH",message:"There was no match for the specified key in the index."},"0x00000492":{code:"ERROR_SET_NOT_FOUND",message:"The property set specified does not exist on the object."},"0x00000493":{code:"ERROR_POINT_NOT_FOUND",message:"The point passed to GetMouseMovePoints is not in the buffer."},"0x00000494":{code:"ERROR_NO_TRACKING_SERVICE",message:"The tracking (workstation) service is not running."},"0x00000495":{code:"ERROR_NO_VOLUME_ID",message:"The volume ID could not be found."},"0x00000497":{code:"ERROR_UNABLE_TO_REMOVE_REPLACED",message:"Unable to remove the file to be replaced."},"0x00000498":{code:"ERROR_UNABLE_TO_MOVE_REPLACEMENT",message:"Unable to move the replacement file to the file to be replaced. The file to be replaced has retained its original name."},"0x00000499":{code:"ERROR_UNABLE_TO_MOVE_REPLACEMENT_2",message:"Unable to move the replacement file to the file to be replaced. The file to be replaced has been renamed using the backup name."},"0x0000049A":{code:"ERROR_JOURNAL_DELETE_IN_PROGRESS",message:"The volume change journal is being deleted."},"0x0000049B":{code:"ERROR_JOURNAL_NOT_ACTIVE",message:"The volume change journal is not active."},"0x0000049C":{code:"ERROR_POTENTIAL_FILE_FOUND",message:"A file was found, but it may not be the correct file."},"0x0000049D":{code:"ERROR_JOURNAL_ENTRY_DELETED",message:"The journal entry has been deleted from the journal."},"0x000004A6":{code:"ERROR_SHUTDOWN_IS_SCHEDULED",message:"A system shutdown has already been scheduled."},"0x000004A7":{code:"ERROR_SHUTDOWN_USERS_LOGGED_ON",message:"The system shutdown cannot be initiated because there are other users logged on to the computer."},"0x000004B0":{code:"ERROR_BAD_DEVICE",message:"The specified device name is invalid."},"0x000004B1":{code:"ERROR_CONNECTION_UNAVAIL",message:"The device is not currently connected but it is a remembered connection."},"0x000004B2":{code:"ERROR_DEVICE_ALREADY_REMEMBERED",message:"The local device name has a remembered connection to another network resource."},"0x000004B3":{code:"ERROR_NO_NET_OR_BAD_PATH",message:"The network path was either typed incorrectly, does not exist, or the network provider is not currently available. Try retyping the path or contact your network administrator."},"0x000004B4":{code:"ERROR_BAD_PROVIDER",message:"The specified network provider name is invalid."},"0x000004B5":{code:"ERROR_CANNOT_OPEN_PROFILE",message:"Unable to open the network connection profile."},"0x000004B6":{code:"ERROR_BAD_PROFILE",message:"The network connection profile is corrupted."},"0x000004B7":{code:"ERROR_NOT_CONTAINER",message:"Cannot enumerate a noncontainer."},"0x000004B8":{code:"ERROR_EXTENDED_ERROR",message:"An extended error has occurred."},"0x000004B9":{code:"ERROR_INVALID_GROUPNAME",message:"The format of the specified group name is invalid."},"0x000004BA":{code:"ERROR_INVALID_COMPUTERNAME",message:"The format of the specified computer name is invalid."},"0x000004BB":{code:"ERROR_INVALID_EVENTNAME",message:"The format of the specified event name is invalid."},"0x000004BC":{code:"ERROR_INVALID_DOMAINNAME",message:"The format of the specified domain name is invalid."},"0x000004BD":{code:"ERROR_INVALID_SERVICENAME",message:"The format of the specified service name is invalid."},"0x000004BE":{code:"ERROR_INVALID_NETNAME",message:"The format of the specified network name is invalid."},"0x000004BF":{code:"ERROR_INVALID_SHARENAME",message:"The format of the specified share name is invalid."},"0x000004C0":{code:"ERROR_INVALID_PASSWORDNAME",message:"The format of the specified password is invalid."},"0x000004C1":{code:"ERROR_INVALID_MESSAGENAME",message:"The format of the specified message name is invalid."},"0x000004C2":{code:"ERROR_INVALID_MESSAGEDEST",message:"The format of the specified message destination is invalid."},"0x000004C3":{code:"ERROR_SESSION_CREDENTIAL_CONFLICT",message:"Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again."},"0x000004C4":{code:"ERROR_REMOTE_SESSION_LIMIT_EXCEEDED",message:"An attempt was made to establish a session to a network server, but there are already too many sessions established to that server."},"0x000004C5":{code:"ERROR_DUP_DOMAINNAME",message:"The workgroup or domain name is already in use by another computer on the network."},"0x000004C6":{code:"ERROR_NO_NETWORK",message:"The network is not present or not started."},"0x000004C7":{code:"ERROR_CANCELLED",message:"The operation was canceled by the user."},"0x000004C8":{code:"ERROR_USER_MAPPED_FILE",message:"The requested operation cannot be performed on a file with a user-mapped section open."},"0x000004C9":{code:"ERROR_CONNECTION_REFUSED",message:"The remote system refused the network connection."},"0x000004CA":{code:"ERROR_GRACEFUL_DISCONNECT",message:"The network connection was gracefully closed."},"0x000004CB":{code:"ERROR_ADDRESS_ALREADY_ASSOCIATED",message:"The network transport endpoint already has an address associated with it."},"0x000004CC":{code:"ERROR_ADDRESS_NOT_ASSOCIATED",message:"An address has not yet been associated with the network endpoint."},"0x000004CD":{code:"ERROR_CONNECTION_INVALID",message:"An operation was attempted on a nonexistent network connection."},"0x000004CE":{code:"ERROR_CONNECTION_ACTIVE",message:"An invalid operation was attempted on an active network connection."},"0x000004CF":{code:"ERROR_NETWORK_UNREACHABLE",message:"The network location cannot be reached. For information about network troubleshooting, see Windows Help."},"0x000004D0":{code:"ERROR_HOST_UNREACHABLE",message:"The network location cannot be reached. For information about network troubleshooting, see Windows Help."},"0x000004D1":{code:"ERROR_PROTOCOL_UNREACHABLE",message:"The network location cannot be reached. For information about network troubleshooting, see Windows Help."},"0x000004D2":{code:"ERROR_PORT_UNREACHABLE",message:"No service is operating at the destination network endpoint on the remote system."},"0x000004D3":{code:"ERROR_REQUEST_ABORTED",message:"The request was aborted."},"0x000004D4":{code:"ERROR_CONNECTION_ABORTED",message:"The network connection was aborted by the local system."},"0x000004D5":{code:"ERROR_RETRY",message:"The operation could not be completed. A retry should be performed."},"0x000004D6":{code:"ERROR_CONNECTION_COUNT_LIMIT",message:"A connection to the server could not be made because the limit on the number of concurrent connections for this account has been reached."},"0x000004D7":{code:"ERROR_LOGIN_TIME_RESTRICTION",message:"Attempting to log on during an unauthorized time of day for this account."},"0x000004D8":{code:"ERROR_LOGIN_WKSTA_RESTRICTION",message:"The account is not authorized to log on from this station."},"0x000004D9":{code:"ERROR_INCORRECT_ADDRESS",message:"The network address could not be used for the operation requested."},"0x000004DA":{code:"ERROR_ALREADY_REGISTERED",message:"The service is already registered."},"0x000004DB":{code:"ERROR_SERVICE_NOT_FOUND",message:"The specified service does not exist."},"0x000004DC":{code:"ERROR_NOT_AUTHENTICATED",message:"The operation being requested was not performed because the user has not been authenticated."},"0x000004DD":{code:"ERROR_NOT_LOGGED_ON",message:"The operation being requested was not performed because the user has not logged on to the network. The specified service does not exist."},"0x000004DE":{code:"ERROR_CONTINUE",message:"Continue with work in progress."},"0x000004DF":{code:"ERROR_ALREADY_INITIALIZED",message:"An attempt was made to perform an initialization operation when initialization has already been completed."},"0x000004E0":{code:"ERROR_NO_MORE_DEVICES",message:"No more local devices."},"0x000004E1":{code:"ERROR_NO_SUCH_SITE",message:"The specified site does not exist."},"0x000004E2":{code:"ERROR_DOMAIN_CONTROLLER_EXISTS",message:"A domain controller with the specified name already exists."},"0x000004E3":{code:"ERROR_ONLY_IF_CONNECTED",message:"This operation is supported only when you are connected to the server."},"0x000004E4":{code:"ERROR_OVERRIDE_NOCHANGES",message:"The group policy framework should call the extension even if there are no changes."},"0x000004E5":{code:"ERROR_BAD_USER_PROFILE",message:"The specified user does not have a valid profile."},"0x000004E6":{code:"ERROR_NOT_SUPPORTED_ON_SBS",message:"This operation is not supported on a computer running Windows Server 2003 for Small Business Server."},"0x000004E7":{code:"ERROR_SERVER_SHUTDOWN_IN_PROGRESS",message:"The server machine is shutting down."},"0x000004E8":{code:"ERROR_HOST_DOWN",message:"The remote system is not available. For information about network troubleshooting, see Windows Help."},"0x000004E9":{code:"ERROR_NON_ACCOUNT_SID",message:"The security identifier provided is not from an account domain."},"0x000004EA":{code:"ERROR_NON_DOMAIN_SID",message:"The security identifier provided does not have a domain component."},"0x000004EB":{code:"ERROR_APPHELP_BLOCK",message:"AppHelp dialog canceled, thus preventing the application from starting."},"0x000004EC":{code:"ERROR_ACCESS_DISABLED_BY_POLICY",message:"This program is blocked by Group Policy. For more information, contact your system administrator."},"0x000004ED":{code:"ERROR_REG_NAT_CONSUMPTION",message:"A program attempt to use an invalid register value. Normally caused by an uninitialized register. This error is Itanium specific."},"0x000004EE":{code:"ERROR_CSCSHARE_OFFLINE",message:"The share is currently offline or does not exist."},"0x000004EF":{code:"ERROR_PKINIT_FAILURE",message:"The Kerberos protocol encountered an error while validating the KDC certificate during smartcard logon. There is more information in the system event log."},"0x000004F0":{code:"ERROR_SMARTCARD_SUBSYSTEM_FAILURE",message:"The Kerberos protocol encountered an error while attempting to utilize the smartcard subsystem."},"0x000004F1":{code:"ERROR_DOWNGRADE_DETECTED",message:"The system detected a possible attempt to compromise security. Ensure that you can contact the server that authenticated you."},"0x000004F7":{code:"ERROR_MACHINE_LOCKED",message:"The machine is locked and cannot be shut down without the force option."},"0x000004F9":{code:"ERROR_CALLBACK_SUPPLIED_INVALID_DATA",message:"An application-defined callback gave invalid data when called."},"0x000004FA":{code:"ERROR_SYNC_FOREGROUND_REFRESH_REQUIRED",message:"The Group Policy framework should call the extension in the synchronous foreground policy refresh."},"0x000004FB":{code:"ERROR_DRIVER_BLOCKED",message:"This driver has been blocked from loading."},"0x000004FC":{code:"ERROR_INVALID_IMPORT_OF_NON_DLL",message:"A DLL referenced a module that was neither a DLL nor the process's executable image."},"0x000004FD":{code:"ERROR_ACCESS_DISABLED_WEBBLADE",message:"Windows cannot open this program because it has been disabled."},"0x000004FE":{code:"ERROR_ACCESS_DISABLED_WEBBLADE_TAMPER",message:"Windows cannot open this program because the license enforcement system has been tampered with or become corrupted."},"0x000004FF":{code:"ERROR_RECOVERY_FAILURE",message:"A transaction recover failed."},"0x00000500":{code:"ERROR_ALREADY_FIBER",message:"The current thread has already been converted to a fiber."},"0x00000501":{code:"ERROR_ALREADY_THREAD",message:"The current thread has already been converted from a fiber."},"0x00000502":{code:"ERROR_STACK_BUFFER_OVERRUN",message:"The system detected an overrun of a stack-based buffer in this application. This overrun could potentially allow a malicious user to gain control of this application."},"0x00000503":{code:"ERROR_PARAMETER_QUOTA_EXCEEDED",message:"Data present in one of the parameters is more than the function can operate on."},"0x00000504":{code:"ERROR_DEBUGGER_INACTIVE",message:"An attempt to perform an operation on a debug object failed because the object is in the process of being deleted."},"0x00000505":{code:"ERROR_DELAY_LOAD_FAILED",message:"An attempt to delay-load a .dll or get a function address in a delay-loaded .dll failed."},"0x00000506":{code:"ERROR_VDM_DISALLOWED",message:"%1 is a 16-bit application. You do not have permissions to execute 16-bit applications. Check your permissions with your system administrator."},"0x00000507":{code:"ERROR_UNIDENTIFIED_ERROR",message:"Insufficient information exists to identify the cause of failure."},"0x00000508":{code:"ERROR_INVALID_CRUNTIME_PARAMETER",message:"The parameter passed to a C runtime function is incorrect."},"0x00000509":{code:"ERROR_BEYOND_VDL",message:"The operation occurred beyond the valid data length of the file."},"0x0000050A":{code:"ERROR_INCOMPATIBLE_SERVICE_SID_TYPE",message:"The service start failed because one or more services in the same process have an incompatible service SID type setting. A service with a restricted service SID type can only coexist in the same process with other services with a restricted SID type."},"0x0000050B":{code:"ERROR_DRIVER_PROCESS_TERMINATED",message:"The process hosting the driver for this device has been terminated."},"0x0000050C":{code:"ERROR_IMPLEMENTATION_LIMIT",message:"An operation attempted to exceed an implementation-defined limit."},"0x0000050D":{code:"ERROR_PROCESS_IS_PROTECTED",message:"Either the target process, or the target thread's containing process, is a protected process."},"0x0000050E":{code:"ERROR_SERVICE_NOTIFY_CLIENT_LAGGING",message:"The service notification client is lagging too far behind the current state of services in the machine."},"0x0000050F":{code:"ERROR_DISK_QUOTA_EXCEEDED",message:"An operation failed because the storage quota was exceeded."},"0x00000510":{code:"ERROR_CONTENT_BLOCKED",message:"An operation failed because the content was blocked."},"0x00000511":{code:"ERROR_INCOMPATIBLE_SERVICE_PRIVILEGE",message:"A privilege that the service requires to function properly does not exist in the service account configuration. You may use the Services Microsoft Management Console (MMC) snap-in (Services.msc) and the Local Security Settings MMC snap-in (Secpol.msc) to view the service configuration and the account configuration."},"0x00000513":{code:"ERROR_INVALID_LABEL",message:"Indicates a particular SID may not be assigned as the label of an object."},"0x00000514":{code:"ERROR_NOT_ALL_ASSIGNED",message:"Not all privileges or groups referenced are assigned to the caller."},"0x00000515":{code:"ERROR_SOME_NOT_MAPPED",message:"Some mapping between account names and SIDs was not done."},"0x00000516":{code:"ERROR_NO_QUOTAS_FOR_ACCOUNT",message:"No system quota limits are specifically set for this account."},"0x00000517":{code:"ERROR_LOCAL_USER_SESSION_KEY",message:"No encryption key is available. A well-known encryption key was returned."},"0x00000518":{code:"ERROR_NULL_LM_PASSWORD",message:"The password is too complex to be converted to a LAN Manager password. The LAN Manager password returned is a null string."},"0x00000519":{code:"ERROR_UNKNOWN_REVISION",message:"The revision level is unknown."},"0x0000051A":{code:"ERROR_REVISION_MISMATCH",message:"Indicates two revision levels are incompatible."},"0x0000051B":{code:"ERROR_INVALID_OWNER",message:"This SID may not be assigned as the owner of this object."},"0x0000051C":{code:"ERROR_INVALID_PRIMARY_GROUP",message:"This SID may not be assigned as the primary group of an object."},"0x0000051D":{code:"ERROR_NO_IMPERSONATION_TOKEN",message:"An attempt has been made to operate on an impersonation token by a thread that is not currently impersonating a client."},"0x0000051E":{code:"ERROR_CANT_DISABLE_MANDATORY",message:"The group may not be disabled."},"0x0000051F":{code:"ERROR_NO_LOGON_SERVERS",message:"There are currently no logon servers available to service the logon request."},"0x00000520":{code:"ERROR_NO_SUCH_LOGON_SESSION",message:"A specified logon session does not exist. It may already have been terminated."},"0x00000521":{code:"ERROR_NO_SUCH_PRIVILEGE",message:"A specified privilege does not exist."},"0x00000522":{code:"ERROR_PRIVILEGE_NOT_HELD",message:"A required privilege is not held by the client."},"0x00000523":{code:"ERROR_INVALID_ACCOUNT_NAME",message:"The name provided is not a properly formed account name."},"0x00000524":{code:"ERROR_USER_EXISTS",message:"The specified account already exists."},"0x00000525":{code:"ERROR_NO_SUCH_USER",message:"The specified account does not exist."},"0x00000526":{code:"ERROR_GROUP_EXISTS",message:"The specified group already exists."},"0x00000527":{code:"ERROR_NO_SUCH_GROUP",message:"The specified group does not exist."},"0x00000528":{code:"ERROR_MEMBER_IN_GROUP",message:"Either the specified user account is already a member of the specified group, or the specified group cannot be deleted because it contains a member."},"0x00000529":{code:"ERROR_MEMBER_NOT_IN_GROUP",message:"The specified user account is not a member of the specified group account."},"0x0000052A":{code:"ERROR_LAST_ADMIN",message:"The last remaining administration account cannot be disabled or deleted."},"0x0000052B":{code:"ERROR_WRONG_PASSWORD",message:"Unable to update the password. The value provided as the current password is incorrect."},"0x0000052C":{code:"ERROR_ILL_FORMED_PASSWORD",message:"Unable to update the password. The value provided for the new password contains values that are not allowed in passwords."},"0x0000052D":{code:"ERROR_PASSWORD_RESTRICTION",message:"Unable to update the password. The value provided for the new password does not meet the length, complexity, or history requirements of the domain."},"0x0000052E":{code:"ERROR_LOGON_FAILURE",message:"Logon failure: Unknown user name or bad password."},"0x0000052F":{code:"ERROR_ACCOUNT_RESTRICTION",message:"Logon failure: User account restriction. Possible reasons are blank passwords not allowed, logon hour restrictions, or a policy restriction has been enforced."},"0x00000530":{code:"ERROR_INVALID_LOGON_HOURS",message:"Logon failure: Account logon time restriction violation."},"0x00000531":{code:"ERROR_INVALID_WORKSTATION",message:"Logon failure: User not allowed to log on to this computer."},"0x00000532":{code:"ERROR_PASSWORD_EXPIRED",message:"Logon failure: The specified account password has expired."},"0x00000533":{code:"ERROR_ACCOUNT_DISABLED",message:"Logon failure: Account currently disabled."},"0x00000534":{code:"ERROR_NONE_MAPPED",message:"No mapping between account names and SIDs was done."},"0x00000535":{code:"ERROR_TOO_MANY_LUIDS_REQUESTED",message:"Too many local user identifiers (LUIDs) were requested at one time."},"0x00000536":{code:"ERROR_LUIDS_EXHAUSTED",message:"No more LUIDs are available."},"0x00000537":{code:"ERROR_INVALID_SUB_AUTHORITY",message:"The sub-authority part of an SID is invalid for this particular use."},"0x00000538":{code:"ERROR_INVALID_ACL",message:"The ACL structure is invalid."},"0x00000539":{code:"ERROR_INVALID_SID",message:"The SID structure is invalid."},"0x0000053A":{code:"ERROR_INVALID_SECURITY_DESCR",message:"The security descriptor structure is invalid."},"0x0000053C":{code:"ERROR_BAD_INHERITANCE_ACL",message:"The inherited ACL or ACE could not be built."},"0x0000053D":{code:"ERROR_SERVER_DISABLED",message:"The server is currently disabled."},"0x0000053E":{code:"ERROR_SERVER_NOT_DISABLED",message:"The server is currently enabled."},"0x0000053F":{code:"ERROR_INVALID_ID_AUTHORITY",message:"The value provided was an invalid value for an identifier authority."},"0x00000540":{code:"ERROR_ALLOTTED_SPACE_EXCEEDED",message:"No more memory is available for security information updates."},"0x00000541":{code:"ERROR_INVALID_GROUP_ATTRIBUTES",message:"The specified attributes are invalid, or incompatible with the attributes for the group as a whole."},"0x00000542":{code:"ERROR_BAD_IMPERSONATION_LEVEL",message:"Either a required impersonation level was not provided, or the provided impersonation level is invalid."},"0x00000543":{code:"ERROR_CANT_OPEN_ANONYMOUS",message:"Cannot open an anonymous level security token."},"0x00000544":{code:"ERROR_BAD_VALIDATION_CLASS",message:"The validation information class requested was invalid."},"0x00000545":{code:"ERROR_BAD_TOKEN_TYPE",message:"The type of the token is inappropriate for its attempted use."},"0x00000546":{code:"ERROR_NO_SECURITY_ON_OBJECT",message:"Unable to perform a security operation on an object that has no associated security."},"0x00000547":{code:"ERROR_CANT_ACCESS_DOMAIN_INFO",message:"Configuration information could not be read from the domain controller, either because the machine is unavailable, or access has been denied."},"0x00000548":{code:"ERROR_INVALID_SERVER_STATE",message:"The SAM or local security authority (LSA) server was in the wrong state to perform the security operation."},"0x00000549":{code:"ERROR_INVALID_DOMAIN_STATE",message:"The domain was in the wrong state to perform the security operation."},"0x0000054A":{code:"ERROR_INVALID_DOMAIN_ROLE",message:"This operation is only allowed for the PDC of the domain."},"0x0000054B":{code:"ERROR_NO_SUCH_DOMAIN",message:"The specified domain either does not exist or could not be contacted."},"0x0000054C":{code:"ERROR_DOMAIN_EXISTS",message:"The specified domain already exists."},"0x0000054D":{code:"ERROR_DOMAIN_LIMIT_EXCEEDED",message:"An attempt was made to exceed the limit on the number of domains per server."},"0x0000054E":{code:"ERROR_INTERNAL_DB_CORRUPTION",message:"Unable to complete the requested operation because of either a catastrophic media failure or a data structure corruption on the disk."},"0x0000054F":{code:"ERROR_INTERNAL_ERROR",message:"An internal error occurred."},"0x00000550":{code:"ERROR_GENERIC_NOT_MAPPED",message:"Generic access types were contained in an access mask that should already be mapped to nongeneric types."},"0x00000551":{code:"ERROR_BAD_DESCRIPTOR_FORMAT",message:"A security descriptor is not in the right format (absolute or self-relative)."},"0x00000552":{code:"ERROR_NOT_LOGON_PROCESS",message:"The requested action is restricted for use by logon processes only. The calling process has not registered as a logon process."},"0x00000553":{code:"ERROR_LOGON_SESSION_EXISTS",message:"Cannot start a new logon session with an ID that is already in use."},"0x00000554":{code:"ERROR_NO_SUCH_PACKAGE",message:"A specified authentication package is unknown."},"0x00000555":{code:"ERROR_BAD_LOGON_SESSION_STATE",message:"The logon session is not in a state that is consistent with the requested operation."},"0x00000556":{code:"ERROR_LOGON_SESSION_COLLISION",message:"The logon session ID is already in use."},"0x00000557":{code:"ERROR_INVALID_LOGON_TYPE",message:"A logon request contained an invalid logon type value."},"0x00000558":{code:"ERROR_CANNOT_IMPERSONATE",message:"Unable to impersonate using a named pipe until data has been read from that pipe."},"0x00000559":{code:"ERROR_RXACT_INVALID_STATE",message:"The transaction state of a registry subtree is incompatible with the requested operation."},"0x0000055A":{code:"ERROR_RXACT_COMMIT_FAILURE",message:"An internal security database corruption has been encountered."},"0x0000055B":{code:"ERROR_SPECIAL_ACCOUNT",message:"Cannot perform this operation on built-in accounts."},"0x0000055C":{code:"ERROR_SPECIAL_GROUP",message:"Cannot perform this operation on this built-in special group."},"0x0000055D":{code:"ERROR_SPECIAL_USER",message:"Cannot perform this operation on this built-in special user."},"0x0000055E":{code:"ERROR_MEMBERS_PRIMARY_GROUP",message:"The user cannot be removed from a group because the group is currently the user's primary group."},"0x0000055F":{code:"ERROR_TOKEN_ALREADY_IN_USE",message:"The token is already in use as a primary token."},"0x00000560":{code:"ERROR_NO_SUCH_ALIAS",message:"The specified local group does not exist."},"0x00000561":{code:"ERROR_MEMBER_NOT_IN_ALIAS",message:"The specified account name is not a member of the group."},"0x00000562":{code:"ERROR_MEMBER_IN_ALIAS",message:"The specified account name is already a member of the group."},"0x00000563":{code:"ERROR_ALIAS_EXISTS",message:"The specified local group already exists."},"0x00000564":{code:"ERROR_LOGON_NOT_GRANTED",message:"Logon failure: The user has not been granted the requested logon type at this computer."},"0x00000565":{code:"ERROR_TOO_MANY_SECRETS",message:"The maximum number of secrets that may be stored in a single system has been exceeded."},"0x00000566":{code:"ERROR_SECRET_TOO_LONG",message:"The length of a secret exceeds the maximum length allowed."},"0x00000567":{code:"ERROR_INTERNAL_DB_ERROR",message:"The local security authority database contains an internal inconsistency."},"0x00000568":{code:"ERROR_TOO_MANY_CONTEXT_IDS",message:"During a logon attempt, the user's security context accumulated too many SIDs."},"0x00000569":{code:"ERROR_LOGON_TYPE_NOT_GRANTED",message:"Logon failure: The user has not been granted the requested logon type at this computer."},"0x0000056A":{code:"ERROR_NT_CROSS_ENCRYPTION_REQUIRED",message:"A cross-encrypted password is necessary to change a user password."},"0x0000056B":{code:"ERROR_NO_SUCH_MEMBER",message:"A member could not be added to or removed from the local group because the member does not exist."},"0x0000056C":{code:"ERROR_INVALID_MEMBER",message:"A new member could not be added to a local group because the member has the wrong account type."},"0x0000056D":{code:"ERROR_TOO_MANY_SIDS",message:"Too many SIDs have been specified."},"0x0000056E":{code:"ERROR_LM_CROSS_ENCRYPTION_REQUIRED",message:"A cross-encrypted password is necessary to change this user password."},"0x0000056F":{code:"ERROR_NO_INHERITANCE",message:"Indicates an ACL contains no inheritable components."},"0x00000570":{code:"ERROR_FILE_CORRUPT",message:"The file or directory is corrupted and unreadable."},"0x00000571":{code:"ERROR_DISK_CORRUPT",message:"The disk structure is corrupted and unreadable."},"0x00000572":{code:"ERROR_NO_USER_SESSION_KEY",message:"There is no user session key for the specified logon session."},"0x00000573":{code:"ERROR_LICENSE_QUOTA_EXCEEDED",message:"The service being accessed is licensed for a particular number of connections. No more connections can be made to the service at this time because the service has accepted the maximum number of connections."},"0x00000574":{code:"ERROR_WRONG_TARGET_NAME",message:"Logon failure: The target account name is incorrect."},"0x00000575":{code:"ERROR_MUTUAL_AUTH_FAILED",message:"Mutual authentication failed. The server's password is out of date at the domain controller."},"0x00000576":{code:"ERROR_TIME_SKEW",message:"There is a time and/or date difference between the client and server."},"0x00000577":{code:"ERROR_CURRENT_DOMAIN_NOT_ALLOWED",message:"This operation cannot be performed on the current domain."},"0x00000578":{code:"ERROR_INVALID_WINDOW_HANDLE",message:"Invalid window handle."},"0x00000579":{code:"ERROR_INVALID_MENU_HANDLE",message:"Invalid menu handle."},"0x0000057A":{code:"ERROR_INVALID_CURSOR_HANDLE",message:"Invalid cursor handle."},"0x0000057B":{code:"ERROR_INVALID_ACCEL_HANDLE",message:"Invalid accelerator table handle."},"0x0000057C":{code:"ERROR_INVALID_HOOK_HANDLE",message:"Invalid hook handle."},"0x0000057D":{code:"ERROR_INVALID_DWP_HANDLE",message:"Invalid handle to a multiple-window position structure."},"0x0000057E":{code:"ERROR_TLW_WITH_WSCHILD",message:"Cannot create a top-level child window."},"0x0000057F":{code:"ERROR_CANNOT_FIND_WND_CLASS",message:"Cannot find window class."},"0x00000580":{code:"ERROR_WINDOW_OF_OTHER_THREAD",message:"Invalid window; it belongs to other thread."},"0x00000581":{code:"ERROR_HOTKEY_ALREADY_REGISTERED",message:"Hot key is already registered."},"0x00000582":{code:"ERROR_CLASS_ALREADY_EXISTS",message:"Class already exists."},"0x00000583":{code:"ERROR_CLASS_DOES_NOT_EXIST",message:"Class does not exist."},"0x00000584":{code:"ERROR_CLASS_HAS_WINDOWS",message:"Class still has open windows."},"0x00000585":{code:"ERROR_INVALID_INDEX",message:"Invalid index."},"0x00000586":{code:"ERROR_INVALID_ICON_HANDLE",message:"Invalid icon handle."},"0x00000587":{code:"ERROR_PRIVATE_DIALOG_INDEX",message:"Using private DIALOG window words."},"0x00000588":{code:"ERROR_LISTBOX_ID_NOT_FOUND",message:"The list box identifier was not found."},"0x00000589":{code:"ERROR_NO_WILDCARD_CHARACTERS",message:"No wildcards were found."},"0x0000058A":{code:"ERROR_CLIPBOARD_NOT_OPEN",message:"Thread does not have a clipboard open."},"0x0000058B":{code:"ERROR_HOTKEY_NOT_REGISTERED",message:"Hot key is not registered."},"0x0000058C":{code:"ERROR_WINDOW_NOT_DIALOG",message:"The window is not a valid dialog window."},"0x0000058D":{code:"ERROR_CONTROL_ID_NOT_FOUND",message:"Control ID not found."},"0x0000058E":{code:"ERROR_INVALID_COMBOBOX_MESSAGE",message:"Invalid message for a combo box because it does not have an edit control."},"0x0000058F":{code:"ERROR_WINDOW_NOT_COMBOBOX",message:"The window is not a combo box."},"0x00000590":{code:"ERROR_INVALID_EDIT_HEIGHT",message:"Height must be less than 256."},"0x00000591":{code:"ERROR_DC_NOT_FOUND",message:"Invalid device context (DC) handle."},"0x00000592":{code:"ERROR_INVALID_HOOK_FILTER",message:"Invalid hook procedure type."},"0x00000593":{code:"ERROR_INVALID_FILTER_PROC",message:"Invalid hook procedure."},"0x00000594":{code:"ERROR_HOOK_NEEDS_HMOD",message:"Cannot set nonlocal hook without a module handle."},"0x00000595":{code:"ERROR_GLOBAL_ONLY_HOOK",message:"This hook procedure can only be set globally."},"0x00000596":{code:"ERROR_JOURNAL_HOOK_SET",message:"The journal hook procedure is already installed."},"0x00000597":{code:"ERROR_HOOK_NOT_INSTALLED",message:"The hook procedure is not installed."},"0x00000598":{code:"ERROR_INVALID_LB_MESSAGE",message:"Invalid message for single-selection list box."},"0x00000599":{code:"ERROR_SETCOUNT_ON_BAD_LB",message:"LB_SETCOUNT sent to non-lazy list box."},"0x0000059A":{code:"ERROR_LB_WITHOUT_TABSTOPS",message:"This list box does not support tab stops."},"0x0000059B":{code:"ERROR_DESTROY_OBJECT_OF_OTHER_THREAD",message:"Cannot destroy object created by another thread."},"0x0000059C":{code:"ERROR_CHILD_WINDOW_MENU",message:"Child windows cannot have menus."},"0x0000059D":{code:"ERROR_NO_SYSTEM_MENU",message:"The window does not have a system menu."},"0x0000059E":{code:"ERROR_INVALID_MSGBOX_STYLE",message:"Invalid message box style."},"0x0000059F":{code:"ERROR_INVALID_SPI_VALUE",message:"Invalid system-wide (SPI_*) parameter."},"0x000005A0":{code:"ERROR_SCREEN_ALREADY_LOCKED",message:"Screen already locked."},"0x000005A1":{code:"ERROR_HWNDS_HAVE_DIFF_PARENT",message:"All handles to windows in a multiple-window position structure must have the same parent."},"0x000005A2":{code:"ERROR_NOT_CHILD_WINDOW",message:"The window is not a child window."},"0x000005A3":{code:"ERROR_INVALID_GW_COMMAND",message:"Invalid GW_* command."},"0x000005A4":{code:"ERROR_INVALID_THREAD_ID",message:"Invalid thread identifier."},"0x000005A5":{code:"ERROR_NON_MDICHILD_WINDOW",message:"Cannot process a message from a window that is not a multiple document interface (MDI) window."},"0x000005A6":{code:"ERROR_POPUP_ALREADY_ACTIVE",message:"Pop-up menu already active."},"0x000005A7":{code:"ERROR_NO_SCROLLBARS",message:"The window does not have scroll bars."},"0x000005A8":{code:"ERROR_INVALID_SCROLLBAR_RANGE",message:"Scroll bar range cannot be greater than MAXLONG."},"0x000005A9":{code:"ERROR_INVALID_SHOWWIN_COMMAND",message:"Cannot show or remove the window in the way specified."},"0x000005AA":{code:"ERROR_NO_SYSTEM_RESOURCES",message:"Insufficient system resources exist to complete the requested service."},"0x000005AB":{code:"ERROR_NONPAGED_SYSTEM_RESOURCES",message:"Insufficient system resources exist to complete the requested service."},"0x000005AC":{code:"ERROR_PAGED_SYSTEM_RESOURCES",message:"Insufficient system resources exist to complete the requested service."},"0x000005AD":{code:"ERROR_WORKING_SET_QUOTA",message:"Insufficient quota to complete the requested service."},"0x000005AE":{code:"ERROR_PAGEFILE_QUOTA",message:"Insufficient quota to complete the requested service."},"0x000005AF":{code:"ERROR_COMMITMENT_LIMIT",message:"The paging file is too small for this operation to complete."},"0x000005B0":{code:"ERROR_MENU_ITEM_NOT_FOUND",message:"A menu item was not found."},"0x000005B1":{code:"ERROR_INVALID_KEYBOARD_HANDLE",message:"Invalid keyboard layout handle."},"0x000005B2":{code:"ERROR_HOOK_TYPE_NOT_ALLOWED",message:"Hook type not allowed."},"0x000005B3":{code:"ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION",message:"This operation requires an interactive window station."},"0x000005B4":{code:"ERROR_TIMEOUT",message:"This operation returned because the time-out period expired."},"0x000005B5":{code:"ERROR_INVALID_MONITOR_HANDLE",message:"Invalid monitor handle."},"0x000005B6":{code:"ERROR_INCORRECT_SIZE",message:"Incorrect size argument."},"0x000005B7":{code:"ERROR_SYMLINK_CLASS_DISABLED",message:"The symbolic link cannot be followed because its type is disabled."},"0x000005B8":{code:"ERROR_SYMLINK_NOT_SUPPORTED",message:"This application does not support the current operation on symbolic links."},"0x000005DC":{code:"ERROR_EVENTLOG_FILE_CORRUPT",message:"The event log file is corrupted."},"0x000005DD":{code:"ERROR_EVENTLOG_CANT_START",message:"No event log file could be opened, so the event logging service did not start."},"0x000005DE":{code:"ERROR_LOG_FILE_FULL",message:"The event log file is full."},"0x000005DF":{code:"ERROR_EVENTLOG_FILE_CHANGED",message:"The event log file has changed between read operations."},"0x0000060E":{code:"ERROR_INVALID_TASK_NAME",message:"The specified task name is invalid."},"0x0000060F":{code:"ERROR_INVALID_TASK_INDEX",message:"The specified task index is invalid."},"0x00000610":{code:"ERROR_THREAD_ALREADY_IN_TASK",message:"The specified thread is already joining a task."},"0x00000641":{code:"ERROR_INSTALL_SERVICE_FAILURE",message:"The Windows Installer service could not be accessed. This can occur if the Windows Installer is not correctly installed. Contact your support personnel for assistance."},"0x00000642":{code:"ERROR_INSTALL_USEREXIT",message:"User canceled installation."},"0x00000643":{code:"ERROR_INSTALL_FAILURE",message:"Fatal error during installation."},"0x00000644":{code:"ERROR_INSTALL_SUSPEND",message:"Installation suspended, incomplete."},"0x00000645":{code:"ERROR_UNKNOWN_PRODUCT",message:"This action is valid only for products that are currently installed."},"0x00000646":{code:"ERROR_UNKNOWN_FEATURE",message:"Feature ID not registered."},"0x00000647":{code:"ERROR_UNKNOWN_COMPONENT",message:"Component ID not registered."},"0x00000648":{code:"ERROR_UNKNOWN_PROPERTY",message:"Unknown property."},"0x00000649":{code:"ERROR_INVALID_HANDLE_STATE",message:"Handle is in an invalid state."},"0x0000064A":{code:"ERROR_BAD_CONFIGURATION",message:"The configuration data for this product is corrupt. Contact your support personnel."},"0x0000064B":{code:"ERROR_INDEX_ABSENT",message:"Component qualifier not present."},"0x0000064C":{code:"ERROR_INSTALL_SOURCE_ABSENT",message:"The installation source for this product is not available. Verify that the source exists and that you can access it."},"0x0000064D":{code:"ERROR_INSTALL_PACKAGE_VERSION",message:"This installation package cannot be installed by the Windows Installer service. You must install a Windows service pack that contains a newer version of the Windows Installer service."},"0x0000064E":{code:"ERROR_PRODUCT_UNINSTALLED",message:"Product is uninstalled."},"0x0000064F":{code:"ERROR_BAD_QUERY_SYNTAX",message:"SQL query syntax invalid or unsupported."},"0x00000650":{code:"ERROR_INVALID_FIELD",message:"Record field does not exist."},"0x00000651":{code:"ERROR_DEVICE_REMOVED",message:"The device has been removed."},"0x00000652":{code:"ERROR_INSTALL_ALREADY_RUNNING",message:"Another installation is already in progress. Complete that installation before proceeding with this install."},"0x00000653":{code:"ERROR_INSTALL_PACKAGE_OPEN_FAILED",message:"This installation package could not be opened. Verify that the package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer package."},"0x00000654":{code:"ERROR_INSTALL_PACKAGE_INVALID",message:"This installation package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer package."},"0x00000655":{code:"ERROR_INSTALL_UI_FAILURE",message:"There was an error starting the Windows Installer service user interface. Contact your support personnel."},"0x00000656":{code:"ERROR_INSTALL_LOG_FAILURE",message:"Error opening installation log file. Verify that the specified log file location exists and that you can write to it."},"0x00000657":{code:"ERROR_INSTALL_LANGUAGE_UNSUPPORTED",message:"The language of this installation package is not supported by your system."},"0x00000658":{code:"ERROR_INSTALL_TRANSFORM_FAILURE",message:"Error applying transforms. Verify that the specified transform paths are valid."},"0x00000659":{code:"ERROR_INSTALL_PACKAGE_REJECTED",message:"This installation is forbidden by system policy. Contact your system administrator."},"0x0000065A":{code:"ERROR_FUNCTION_NOT_CALLED",message:"Function could not be executed."},"0x0000065B":{code:"ERROR_FUNCTION_FAILED",message:"Function failed during execution."},"0x0000065C":{code:"ERROR_INVALID_TABLE",message:"Invalid or unknown table specified."},"0x0000065D":{code:"ERROR_DATATYPE_MISMATCH",message:"Data supplied is of wrong type."},"0x0000065E":{code:"ERROR_UNSUPPORTED_TYPE",message:"Data of this type is not supported."},"0x0000065F":{code:"ERROR_CREATE_FAILED",message:"The Windows Installer service failed to start. Contact your support personnel."},"0x00000660":{code:"ERROR_INSTALL_TEMP_UNWRITABLE",message:"The Temp folder is on a drive that is full or is inaccessible. Free up space on the drive or verify that you have write permission on the Temp folder."},"0x00000661":{code:"ERROR_INSTALL_PLATFORM_UNSUPPORTED",message:"This installation package is not supported by this processor type. Contact your product vendor."},"0x00000662":{code:"ERROR_INSTALL_NOTUSED",message:"Component not used on this computer."},"0x00000663":{code:"ERROR_PATCH_PACKAGE_OPEN_FAILED",message:"This update package could not be opened. Verify that the update package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer update package."},"0x00000664":{code:"ERROR_PATCH_PACKAGE_INVALID",message:"This update package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer update package."},"0x00000665":{code:"ERROR_PATCH_PACKAGE_UNSUPPORTED",message:"This update package cannot be processed by the Windows Installer service. You must install a Windows service pack that contains a newer version of the Windows Installer service."},"0x00000666":{code:"ERROR_PRODUCT_VERSION",message:"Another version of this product is already installed. Installation of this version cannot continue. To configure or remove the existing version of this product, use Add/Remove Programs in Control Panel."},"0x00000667":{code:"ERROR_INVALID_COMMAND_LINE",message:"Invalid command-line argument. Consult the Windows Installer SDK for detailed command line help."},"0x00000668":{code:"ERROR_INSTALL_REMOTE_DISALLOWED",message:"Only administrators have permission to add, remove, or configure server software during a Terminal Services remote session. If you want to install or configure software on the server, contact your network administrator."},"0x00000669":{code:"ERROR_SUCCESS_REBOOT_INITIATED",message:"The requested operation completed successfully. The system will be restarted so the changes can take effect."},"0x0000066A":{code:"ERROR_PATCH_TARGET_NOT_FOUND",message:"The upgrade cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade may update a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade."},"0x0000066B":{code:"ERROR_PATCH_PACKAGE_REJECTED",message:"The update package is not permitted by a software restriction policy."},"0x0000066C":{code:"ERROR_INSTALL_TRANSFORM_REJECTED",message:"One or more customizations are not permitted by a software restriction policy."},"0x0000066D":{code:"ERROR_INSTALL_REMOTE_PROHIBITED",message:"The Windows Installer does not permit installation from a Remote Desktop Connection."},"0x0000066E":{code:"ERROR_PATCH_REMOVAL_UNSUPPORTED",message:"Uninstallation of the update package is not supported."},"0x0000066F":{code:"ERROR_UNKNOWN_PATCH",message:"The update is not applied to this product."},"0x00000670":{code:"ERROR_PATCH_NO_SEQUENCE",message:"No valid sequence could be found for the set of updates."},"0x00000671":{code:"ERROR_PATCH_REMOVAL_DISALLOWED",message:"Update removal was disallowed by policy."},"0x00000672":{code:"ERROR_INVALID_PATCH_XML",message:"The XML update data is invalid."},"0x00000673":{code:"ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT",message:"Windows Installer does not permit updating of managed advertised products. At least one feature of the product must be installed before applying the update."},"0x00000674":{code:"ERROR_INSTALL_SERVICE_SAFEBOOT",message:"The Windows Installer service is not accessible in Safe Mode. Try again when your computer is not in Safe Mode or you can use System Restore to return your machine to a previous good state."},"0x000006A4":{code:"RPC_S_INVALID_STRING_BINDING",message:"The string binding is invalid."},"0x000006A5":{code:"RPC_S_WRONG_KIND_OF_BINDING",message:"The binding handle is not the correct type."},"0x000006A6":{code:"RPC_S_INVALID_BINDING",message:"The binding handle is invalid."},"0x000006A7":{code:"RPC_S_PROTSEQ_NOT_SUPPORTED",message:"The RPC protocol sequence is not supported."},"0x000006A8":{code:"RPC_S_INVALID_RPC_PROTSEQ",message:"The RPC protocol sequence is invalid."},"0x000006A9":{code:"RPC_S_INVALID_STRING_UUID",message:"The string UUID is invalid."},"0x000006AA":{code:"RPC_S_INVALID_ENDPOINT_FORMAT",message:"The endpoint format is invalid."},"0x000006AB":{code:"RPC_S_INVALID_NET_ADDR",message:"The network address is invalid."},"0x000006AC":{code:"RPC_S_NO_ENDPOINT_FOUND",message:"No endpoint was found."},"0x000006AD":{code:"RPC_S_INVALID_TIMEOUT",message:"The time-out value is invalid."},"0x000006AE":{code:"RPC_S_OBJECT_NOT_FOUND",message:"The object UUID) was not found."},"0x000006AF":{code:"RPC_S_ALREADY_REGISTERED",message:"The object UUID) has already been registered."},"0x000006B0":{code:"RPC_S_TYPE_ALREADY_REGISTERED",message:"The type UUID has already been registered."},"0x000006B1":{code:"RPC_S_ALREADY_LISTENING",message:"The RPC server is already listening."},"0x000006B2":{code:"RPC_S_NO_PROTSEQS_REGISTERED",message:"No protocol sequences have been registered."},"0x000006B3":{code:"RPC_S_NOT_LISTENING",message:"The RPC server is not listening."},"0x000006B4":{code:"RPC_S_UNKNOWN_MGR_TYPE",message:"The manager type is unknown."},"0x000006B5":{code:"RPC_S_UNKNOWN_IF",message:"The interface is unknown."},"0x000006B6":{code:"RPC_S_NO_BINDINGS",message:"There are no bindings."},"0x000006B7":{code:"RPC_S_NO_PROTSEQS",message:"There are no protocol sequences."},"0x000006B8":{code:"RPC_S_CANT_CREATE_ENDPOINT",message:"The endpoint cannot be created."},"0x000006B9":{code:"RPC_S_OUT_OF_RESOURCES",message:"Not enough resources are available to complete this operation."},"0x000006BA":{code:"RPC_S_SERVER_UNAVAILABLE",message:"The RPC server is unavailable."},"0x000006BB":{code:"RPC_S_SERVER_TOO_BUSY",message:"The RPC server is too busy to complete this operation."},"0x000006BC":{code:"RPC_S_INVALID_NETWORK_OPTIONS",message:"The network options are invalid."},"0x000006BD":{code:"RPC_S_NO_CALL_ACTIVE",message:"There are no RPCs active on this thread."},"0x000006BE":{code:"RPC_S_CALL_FAILED",message:"The RPC failed."},"0x000006BF":{code:"RPC_S_CALL_FAILED_DNE",message:"The RPC failed and did not execute."},"0x000006C0":{code:"RPC_S_PROTOCOL_ERROR",message:"An RPC protocol error occurred."},"0x000006C1":{code:"RPC_S_PROXY_ACCESS_DENIED",message:"Access to the HTTP proxy is denied."},"0x000006C2":{code:"RPC_S_UNSUPPORTED_TRANS_SYN",message:"The transfer syntax is not supported by the RPC server."},"0x000006C4":{code:"RPC_S_UNSUPPORTED_TYPE",message:"The UUID type is not supported."},"0x000006C5":{code:"RPC_S_INVALID_TAG",message:"The tag is invalid."},"0x000006C6":{code:"RPC_S_INVALID_BOUND",message:"The array bounds are invalid."},"0x000006C7":{code:"RPC_S_NO_ENTRY_NAME",message:"The binding does not contain an entry name."},"0x000006C8":{code:"RPC_S_INVALID_NAME_SYNTAX",message:"The name syntax is invalid."},"0x000006C9":{code:"RPC_S_UNSUPPORTED_NAME_SYNTAX",message:"The name syntax is not supported."},"0x000006CB":{code:"RPC_S_UUID_NO_ADDRESS",message:"No network address is available to use to construct a UUID."},"0x000006CC":{code:"RPC_S_DUPLICATE_ENDPOINT",message:"The endpoint is a duplicate."},"0x000006CD":{code:"RPC_S_UNKNOWN_AUTHN_TYPE",message:"The authentication type is unknown."},"0x000006CE":{code:"RPC_S_MAX_CALLS_TOO_SMALL",message:"The maximum number of calls is too small."},"0x000006CF":{code:"RPC_S_STRING_TOO_LONG",message:"The string is too long."},"0x000006D0":{code:"RPC_S_PROTSEQ_NOT_FOUND",message:"The RPC protocol sequence was not found."},"0x000006D1":{code:"RPC_S_PROCNUM_OUT_OF_RANGE",message:"The procedure number is out of range."},"0x000006D2":{code:"RPC_S_BINDING_HAS_NO_AUTH",message:"The binding does not contain any authentication information."},"0x000006D3":{code:"RPC_S_UNKNOWN_AUTHN_SERVICE",message:"The authentication service is unknown."},"0x000006D4":{code:"RPC_S_UNKNOWN_AUTHN_LEVEL",message:"The authentication level is unknown."},"0x000006D5":{code:"RPC_S_INVALID_AUTH_IDENTITY",message:"The security context is invalid."},"0x000006D6":{code:"RPC_S_UNKNOWN_AUTHZ_SERVICE",message:"The authorization service is unknown."},"0x000006D7":{code:"EPT_S_INVALID_ENTRY",message:"The entry is invalid."},"0x000006D8":{code:"EPT_S_CANT_PERFORM_OP",message:"The server endpoint cannot perform the operation."},"0x000006D9":{code:"EPT_S_NOT_REGISTERED",message:"There are no more endpoints available from the endpoint mapper."},"0x000006DA":{code:"RPC_S_NOTHING_TO_EXPORT",message:"No interfaces have been exported."},"0x000006DB":{code:"RPC_S_INCOMPLETE_NAME",message:"The entry name is incomplete."},"0x000006DC":{code:"RPC_S_INVALID_VERS_OPTION",message:"The version option is invalid."},"0x000006DD":{code:"RPC_S_NO_MORE_MEMBERS",message:"There are no more members."},"0x000006DE":{code:"RPC_S_NOT_ALL_OBJS_UNEXPORTED",message:"There is nothing to unexport."},"0x000006DF":{code:"RPC_S_INTERFACE_NOT_FOUND",message:"The interface was not found."},"0x000006E0":{code:"RPC_S_ENTRY_ALREADY_EXISTS",message:"The entry already exists."},"0x000006E1":{code:"RPC_S_ENTRY_NOT_FOUND",message:"The entry is not found."},"0x000006E2":{code:"RPC_S_NAME_SERVICE_UNAVAILABLE",message:"The name service is unavailable."},"0x000006E3":{code:"RPC_S_INVALID_NAF_ID",message:"The network address family is invalid."},"0x000006E4":{code:"RPC_S_CANNOT_SUPPORT",message:"The requested operation is not supported."},"0x000006E5":{code:"RPC_S_NO_CONTEXT_AVAILABLE",message:"No security context is available to allow impersonation."},"0x000006E6":{code:"RPC_S_INTERNAL_ERROR",message:"An internal error occurred in an RPC."},"0x000006E7":{code:"RPC_S_ZERO_DIVIDE",message:"The RPC server attempted an integer division by zero."},"0x000006E8":{code:"RPC_S_ADDRESS_ERROR",message:"An addressing error occurred in the RPC server."},"0x000006E9":{code:"RPC_S_FP_DIV_ZERO",message:"A floating-point operation at the RPC server caused a division by zero."},"0x000006EA":{code:"RPC_S_FP_UNDERFLOW",message:"A floating-point underflow occurred at the RPC server."},"0x000006EB":{code:"RPC_S_FP_OVERFLOW",message:"A floating-point overflow occurred at the RPC server."},"0x000006EC":{code:"RPC_X_NO_MORE_ENTRIES",message:"The list of RPC servers available for the binding of auto handles has been exhausted."},"0x000006ED":{code:"RPC_X_SS_CHAR_TRANS_OPEN_FAIL",message:"Unable to open the character translation table file."},"0x000006EE":{code:"RPC_X_SS_CHAR_TRANS_SHORT_FILE",message:"The file containing the character translation table has fewer than 512 bytes."},"0x000006EF":{code:"RPC_X_SS_IN_NULL_CONTEXT",message:"A null context handle was passed from the client to the host during an RPC."},"0x000006F1":{code:"RPC_X_SS_CONTEXT_DAMAGED",message:"The context handle changed during an RPC."},"0x000006F2":{code:"RPC_X_SS_HANDLES_MISMATCH",message:"The binding handles passed to an RPC do not match."},"0x000006F3":{code:"RPC_X_SS_CANNOT_GET_CALL_HANDLE",message:"The stub is unable to get the RPC handle."},"0x000006F4":{code:"RPC_X_NULL_REF_POINTER",message:"A null reference pointer was passed to the stub."},"0x000006F5":{code:"RPC_X_ENUM_VALUE_OUT_OF_RANGE",message:"The enumeration value is out of range."},"0x000006F6":{code:"RPC_X_BYTE_COUNT_TOO_SMALL",message:"The byte count is too small."},"0x000006F7":{code:"RPC_X_BAD_STUB_DATA",message:"The stub received bad data."},"0x000006F8":{code:"ERROR_INVALID_USER_BUFFER",message:"The supplied user buffer is not valid for the requested operation."},"0x000006F9":{code:"ERROR_UNRECOGNIZED_MEDIA",message:"The disk media is not recognized. It may not be formatted."},"0x000006FA":{code:"ERROR_NO_TRUST_LSA_SECRET",message:"The workstation does not have a trust secret."},"0x000006FB":{code:"ERROR_NO_TRUST_SAM_ACCOUNT",message:"The security database on the server does not have a computer account for this workstation trust relationship."},"0x000006FC":{code:"ERROR_TRUSTED_DOMAIN_FAILURE",message:"The trust relationship between the primary domain and the trusted domain failed."},"0x000006FD":{code:"ERROR_TRUSTED_RELATIONSHIP_FAILURE",message:"The trust relationship between this workstation and the primary domain failed."},"0x000006FE":{code:"ERROR_TRUST_FAILURE",message:"The network logon failed."},"0x000006FF":{code:"RPC_S_CALL_IN_PROGRESS",message:"An RPC is already in progress for this thread."},"0x00000700":{code:"ERROR_NETLOGON_NOT_STARTED",message:"An attempt was made to log on, but the network logon service was not started."},"0x00000701":{code:"ERROR_ACCOUNT_EXPIRED",message:"The user's account has expired."},"0x00000702":{code:"ERROR_REDIRECTOR_HAS_OPEN_HANDLES",message:"The redirector is in use and cannot be unloaded."},"0x00000703":{code:"ERROR_PRINTER_DRIVER_ALREADY_INSTALLED",message:"The specified printer driver is already installed."},"0x00000704":{code:"ERROR_UNKNOWN_PORT",message:"The specified port is unknown."},"0x00000705":{code:"ERROR_UNKNOWN_PRINTER_DRIVER",message:"The printer driver is unknown."},"0x00000706":{code:"ERROR_UNKNOWN_PRINTPROCESSOR",message:"The print processor is unknown."},"0x00000707":{code:"ERROR_INVALID_SEPARATOR_FILE",message:"The specified separator file is invalid."},"0x00000708":{code:"ERROR_INVALID_PRIORITY",message:"The specified priority is invalid."},"0x00000709":{code:"ERROR_INVALID_PRINTER_NAME",message:"The printer name is invalid."},"0x0000070A":{code:"ERROR_PRINTER_ALREADY_EXISTS",message:"The printer already exists."},"0x0000070B":{code:"ERROR_INVALID_PRINTER_COMMAND",message:"The printer command is invalid."},"0x0000070C":{code:"ERROR_INVALID_DATATYPE",message:"The specified data type is invalid."},"0x0000070D":{code:"ERROR_INVALID_ENVIRONMENT",message:"The environment specified is invalid."},"0x0000070E":{code:"RPC_S_NO_MORE_BINDINGS",message:"There are no more bindings."},"0x0000070F":{code:"ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT",message:"The account used is an interdomain trust account. Use your global user account or local user account to access this server."},"0x00000710":{code:"ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT",message:"The account used is a computer account. Use your global user account or local user account to access this server."},"0x00000711":{code:"ERROR_NOLOGON_SERVER_TRUST_ACCOUNT",message:"The account used is a server trust account. Use your global user account or local user account to access this server."},"0x00000712":{code:"ERROR_DOMAIN_TRUST_INCONSISTENT",message:"The name or SID of the domain specified is inconsistent with the trust information for that domain."},"0x00000713":{code:"ERROR_SERVER_HAS_OPEN_HANDLES",message:"The server is in use and cannot be unloaded."},"0x00000714":{code:"ERROR_RESOURCE_DATA_NOT_FOUND",message:"The specified image file did not contain a resource section."},"0x00000715":{code:"ERROR_RESOURCE_TYPE_NOT_FOUND",message:"The specified resource type cannot be found in the image file."},"0x00000716":{code:"ERROR_RESOURCE_NAME_NOT_FOUND",message:"The specified resource name cannot be found in the image file."},"0x00000717":{code:"ERROR_RESOURCE_LANG_NOT_FOUND",message:"The specified resource language ID cannot be found in the image file."},"0x00000718":{code:"ERROR_NOT_ENOUGH_QUOTA",message:"Not enough quota is available to process this command."},"0x00000719":{code:"RPC_S_NO_INTERFACES",message:"No interfaces have been registered."},"0x0000071A":{code:"RPC_S_CALL_CANCELLED",message:"The RPC was canceled."},"0x0000071B":{code:"RPC_S_BINDING_INCOMPLETE",message:"The binding handle does not contain all the required information."},"0x0000071C":{code:"RPC_S_COMM_FAILURE",message:"A communications failure occurred during an RPC."},"0x0000071D":{code:"RPC_S_UNSUPPORTED_AUTHN_LEVEL",message:"The requested authentication level is not supported."},"0x0000071E":{code:"RPC_S_NO_PRINC_NAME",message:"No principal name is registered."},"0x0000071F":{code:"RPC_S_NOT_RPC_ERROR",message:"The error specified is not a valid Windows RPC error code."},"0x00000720":{code:"RPC_S_UUID_LOCAL_ONLY",message:"A UUID that is valid only on this computer has been allocated."},"0x00000721":{code:"RPC_S_SEC_PKG_ERROR",message:"A security package-specific error occurred."},"0x00000722":{code:"RPC_S_NOT_CANCELLED",message:"The thread is not canceled."},"0x00000723":{code:"RPC_X_INVALID_ES_ACTION",message:"Invalid operation on the encoding/decoding handle."},"0x00000724":{code:"RPC_X_WRONG_ES_VERSION",message:"Incompatible version of the serializing package."},"0x00000725":{code:"RPC_X_WRONG_STUB_VERSION",message:"Incompatible version of the RPC stub."},"0x00000726":{code:"RPC_X_INVALID_PIPE_OBJECT",message:"The RPC pipe object is invalid or corrupted."},"0x00000727":{code:"RPC_X_WRONG_PIPE_ORDER",message:"An invalid operation was attempted on an RPC pipe object."},"0x00000728":{code:"RPC_X_WRONG_PIPE_VERSION",message:"Unsupported RPC pipe version."},"0x0000076A":{code:"RPC_S_GROUP_MEMBER_NOT_FOUND",message:"The group member was not found."},"0x0000076B":{code:"EPT_S_CANT_CREATE",message:"The endpoint mapper database entry could not be created."},"0x0000076C":{code:"RPC_S_INVALID_OBJECT",message:"The object UUID is the nil UUID."},"0x0000076D":{code:"ERROR_INVALID_TIME",message:"The specified time is invalid."},"0x0000076E":{code:"ERROR_INVALID_FORM_NAME",message:"The specified form name is invalid."},"0x0000076F":{code:"ERROR_INVALID_FORM_SIZE",message:"The specified form size is invalid."},"0x00000770":{code:"ERROR_ALREADY_WAITING",message:"The specified printer handle is already being waited on."},"0x00000771":{code:"ERROR_PRINTER_DELETED",message:"The specified printer has been deleted."},"0x00000772":{code:"ERROR_INVALID_PRINTER_STATE",message:"The state of the printer is invalid."},"0x00000773":{code:"ERROR_PASSWORD_MUST_CHANGE",message:"The user's password must be changed before logging on the first time."},"0x00000774":{code:"ERROR_DOMAIN_CONTROLLER_NOT_FOUND",message:"Could not find the domain controller for this domain."},"0x00000775":{code:"ERROR_ACCOUNT_LOCKED_OUT",message:"The referenced account is currently locked out and may not be logged on to."},"0x00000776":{code:"OR_INVALID_OXID",message:"The object exporter specified was not found."},"0x00000777":{code:"OR_INVALID_OID",message:"The object specified was not found."},"0x00000778":{code:"OR_INVALID_SET",message:"The object set specified was not found."},"0x00000779":{code:"RPC_S_SEND_INCOMPLETE",message:"Some data remains to be sent in the request buffer."},"0x0000077A":{code:"RPC_S_INVALID_ASYNC_HANDLE",message:"Invalid asynchronous RPC handle."},"0x0000077B":{code:"RPC_S_INVALID_ASYNC_CALL",message:"Invalid asynchronous RPC call handle for this operation."},"0x0000077C":{code:"RPC_X_PIPE_CLOSED",message:"The RPC pipe object has already been closed."},"0x0000077D":{code:"RPC_X_PIPE_DISCIPLINE_ERROR",message:"The RPC call completed before all pipes were processed."},"0x0000077E":{code:"RPC_X_PIPE_EMPTY",message:"No more data is available from the RPC pipe."},"0x0000077F":{code:"ERROR_NO_SITENAME",message:"No site name is available for this machine."},"0x00000780":{code:"ERROR_CANT_ACCESS_FILE",message:"The file cannot be accessed by the system."},"0x00000781":{code:"ERROR_CANT_RESOLVE_FILENAME",message:"The name of the file cannot be resolved by the system."},"0x00000782":{code:"RPC_S_ENTRY_TYPE_MISMATCH",message:"The entry is not of the expected type."},"0x00000783":{code:"RPC_S_NOT_ALL_OBJS_EXPORTED",message:"Not all object UUIDs could be exported to the specified entry."},"0x00000784":{code:"RPC_S_INTERFACE_NOT_EXPORTED",message:"The interface could not be exported to the specified entry."},"0x00000785":{code:"RPC_S_PROFILE_NOT_ADDED",message:"The specified profile entry could not be added."},"0x00000786":{code:"RPC_S_PRF_ELT_NOT_ADDED",message:"The specified profile element could not be added."},"0x00000787":{code:"RPC_S_PRF_ELT_NOT_REMOVED",message:"The specified profile element could not be removed."},"0x00000788":{code:"RPC_S_GRP_ELT_NOT_ADDED",message:"The group element could not be added."},"0x00000789":{code:"RPC_S_GRP_ELT_NOT_REMOVED",message:"The group element could not be removed."},"0x0000078A":{code:"ERROR_KM_DRIVER_BLOCKED",message:"The printer driver is not compatible with a policy enabled on your computer that blocks Windows NT 4.0 drivers."},"0x0000078B":{code:"ERROR_CONTEXT_EXPIRED",message:"The context has expired and can no longer be used."},"0x0000078C":{code:"ERROR_PER_USER_TRUST_QUOTA_EXCEEDED",message:"The current user's delegated trust creation quota has been exceeded."},"0x0000078D":{code:"ERROR_ALL_USER_TRUST_QUOTA_EXCEEDED",message:"The total delegated trust creation quota has been exceeded."},"0x0000078E":{code:"ERROR_USER_DELETE_TRUST_QUOTA_EXCEEDED",message:"The current user's delegated trust deletion quota has been exceeded."},"0x0000078F":{code:"ERROR_AUTHENTICATION_FIREWALL_FAILED",message:"Logon failure: The machine you are logging on to is protected by an authentication firewall. The specified account is not allowed to authenticate to the machine."},"0x00000790":{code:"ERROR_REMOTE_PRINT_CONNECTIONS_BLOCKED",message:"Remote connections to the Print Spooler are blocked by a policy set on your machine."},"0x000007D0":{code:"ERROR_INVALID_PIXEL_FORMAT",message:"The pixel format is invalid."},"0x000007D1":{code:"ERROR_BAD_DRIVER",message:"The specified driver is invalid."},"0x000007D2":{code:"ERROR_INVALID_WINDOW_STYLE",message:"The window style or class attribute is invalid for this operation."},"0x000007D3":{code:"ERROR_METAFILE_NOT_SUPPORTED",message:"The requested metafile operation is not supported."},"0x000007D4":{code:"ERROR_TRANSFORM_NOT_SUPPORTED",message:"The requested transformation operation is not supported."},"0x000007D5":{code:"ERROR_CLIPPING_NOT_SUPPORTED",message:"The requested clipping operation is not supported."},"0x000007DA":{code:"ERROR_INVALID_CMM",message:"The specified color management module is invalid."},"0x000007DB":{code:"ERROR_INVALID_PROFILE",message:"The specified color profile is invalid."},"0x000007DC":{code:"ERROR_TAG_NOT_FOUND",message:"The specified tag was not found."},"0x000007DD":{code:"ERROR_TAG_NOT_PRESENT",message:"A required tag is not present."},"0x000007DE":{code:"ERROR_DUPLICATE_TAG",message:"The specified tag is already present."},"0x000007DF":{code:"ERROR_PROFILE_NOT_ASSOCIATED_WITH_DEVICE",message:"The specified color profile is not associated with any device."},"0x000007E0":{code:"ERROR_PROFILE_NOT_FOUND",message:"The specified color profile was not found."},"0x000007E1":{code:"ERROR_INVALID_COLORSPACE",message:"The specified color space is invalid."},"0x000007E2":{code:"ERROR_ICM_NOT_ENABLED",message:"Image Color Management is not enabled."},"0x000007E3":{code:"ERROR_DELETING_ICM_XFORM",message:"There was an error while deleting the color transform."},"0x000007E4":{code:"ERROR_INVALID_TRANSFORM",message:"The specified color transform is invalid."},"0x000007E5":{code:"ERROR_COLORSPACE_MISMATCH",message:"The specified transform does not match the bitmap's color space."},"0x000007E6":{code:"ERROR_INVALID_COLORINDEX",message:"The specified named color index is not present in the profile."},"0x000007E7":{code:"ERROR_PROFILE_DOES_NOT_MATCH_DEVICE",message:"The specified profile is intended for a device of a different type than the specified device."},"0x00000836":{code:"NERR_NetNotStarted",message:"The workstation driver is not installed."},"0x00000837":{code:"NERR_UnknownServer",message:"The server could not be located."},"0x00000838":{code:"NERR_ShareMem",message:"An internal error occurred. The network cannot access a shared memory segment."},"0x00000839":{code:"NERR_NoNetworkResource",message:"A network resource shortage occurred."},"0x0000083A":{code:"NERR_RemoteOnly",message:"This operation is not supported on workstations."},"0x0000083B":{code:"NERR_DevNotRedirected",message:"The device is not connected."},"0x0000083C":{code:"ERROR_CONNECTED_OTHER_PASSWORD",message:"The network connection was made successfully, but the user had to be prompted for a password other than the one originally specified."},"0x0000083D":{code:"ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT",message:"The network connection was made successfully using default credentials."},"0x00000842":{code:"NERR_ServerNotStarted",message:"The Server service is not started."},"0x00000843":{code:"NERR_ItemNotFound",message:"The queue is empty."},"0x00000844":{code:"NERR_UnknownDevDir",message:"The device or directory does not exist."},"0x00000845":{code:"NERR_RedirectedPath",message:"The operation is invalid on a redirected resource."},"0x00000846":{code:"NERR_DuplicateShare",message:"The name has already been shared."},"0x00000847":{code:"NERR_NoRoom",message:"The server is currently out of the requested resource."},"0x00000849":{code:"NERR_TooManyItems",message:"Requested addition of items exceeds the maximum allowed."},"0x0000084A":{code:"NERR_InvalidMaxUsers",message:"The Peer service supports only two simultaneous users."},"0x0000084B":{code:"NERR_BufTooSmall",message:"The API return buffer is too small."},"0x0000084F":{code:"NERR_RemoteErr",message:"A remote API error occurred."},"0x00000853":{code:"NERR_LanmanIniError",message:"An error occurred when opening or reading the configuration file."},"0x00000858":{code:"NERR_NetworkError",message:"A general network error occurred."},"0x00000859":{code:"NERR_WkstaInconsistentState",message:"The Workstation service is in an inconsistent state. Restart the computer before restarting the Workstation service."},"0x0000085A":{code:"NERR_WkstaNotStarted",message:"The Workstation service has not been started."},"0x0000085B":{code:"NERR_BrowserNotStarted",message:"The requested information is not available."},"0x0000085C":{code:"NERR_InternalError",message:"An internal error occurred."},"0x0000085D":{code:"NERR_BadTransactConfig",message:"The server is not configured for transactions."},"0x0000085E":{code:"NERR_InvalidAPI",message:"The requested API is not supported on the remote server."},"0x0000085F":{code:"NERR_BadEventName",message:"The event name is invalid."},"0x00000860":{code:"NERR_DupNameReboot",message:"The computer name already exists on the network. Change it and reboot the computer."},"0x00000862":{code:"NERR_CfgCompNotFound",message:"The specified component could not be found in the configuration information."},"0x00000863":{code:"NERR_CfgParamNotFound",message:"The specified parameter could not be found in the configuration information."},"0x00000865":{code:"NERR_LineTooLong",message:"A line in the configuration file is too long."},"0x00000866":{code:"NERR_QNotFound",message:"The printer does not exist."},"0x00000867":{code:"NERR_JobNotFound",message:"The print job does not exist."},"0x00000868":{code:"NERR_DestNotFound",message:"The printer destination cannot be found."},"0x00000869":{code:"NERR_DestExists",message:"The printer destination already exists."},"0x0000086A":{code:"NERR_QExists",message:"The print queue already exists."},"0x0000086B":{code:"NERR_QNoRoom",message:"No more printers can be added."},"0x0000086C":{code:"NERR_JobNoRoom",message:"No more print jobs can be added."},"0x0000086D":{code:"NERR_DestNoRoom",message:"No more printer destinations can be added."},"0x0000086E":{code:"NERR_DestIdle",message:"This printer destination is idle and cannot accept control operations."},"0x0000086F":{code:"NERR_DestInvalidOp",message:"This printer destination request contains an invalid control function."},"0x00000870":{code:"NERR_ProcNoRespond",message:"The print processor is not responding."},"0x00000871":{code:"NERR_SpoolerNotLoaded",message:"The spooler is not running."},"0x00000872":{code:"NERR_DestInvalidState",message:"This operation cannot be performed on the print destination in its current state."},"0x00000873":{code:"NERR_QinvalidState",message:"This operation cannot be performed on the print queue in its current state."},"0x00000874":{code:"NERR_JobInvalidState",message:"This operation cannot be performed on the print job in its current state."},"0x00000875":{code:"NERR_SpoolNoMemory",message:"A spooler memory allocation failure occurred."},"0x00000876":{code:"NERR_DriverNotFound",message:"The device driver does not exist."},"0x00000877":{code:"NERR_DataTypeInvalid",message:"The data type is not supported by the print processor."},"0x00000878":{code:"NERR_ProcNotFound",message:"The print processor is not installed."},"0x00000884":{code:"NERR_ServiceTableLocked",message:"The service database is locked."},"0x00000885":{code:"NERR_ServiceTableFull",message:"The service table is full."},"0x00000886":{code:"NERR_ServiceInstalled",message:"The requested service has already been started."},"0x00000887":{code:"NERR_ServiceEntryLocked",message:"The service does not respond to control actions."},"0x00000888":{code:"NERR_ServiceNotInstalled",message:"The service has not been started."},"0x00000889":{code:"NERR_BadServiceName",message:"The service name is invalid."},"0x0000088A":{code:"NERR_ServiceCtlTimeout",message:"The service is not responding to the control function."},"0x0000088B":{code:"NERR_ServiceCtlBusy",message:"The service control is busy."},"0x0000088C":{code:"NERR_BadServiceProgName",message:"The configuration file contains an invalid service program name."},"0x0000088D":{code:"NERR_ServiceNotCtrl",message:"The service could not be controlled in its present state."},"0x0000088E":{code:"NERR_ServiceKillProc",message:"The service ended abnormally."},"0x0000088F":{code:"NERR_ServiceCtlNotValid",message:"The requested pause or stop is not valid for this service."},"0x00000890":{code:"NERR_NotInDispatchTbl",message:"The service control dispatcher could not find the service name in the dispatch table."},"0x00000891":{code:"NERR_BadControlRecv",message:"The service control dispatcher pipe read failed."},"0x00000892":{code:"NERR_ServiceNotStarting",message:"A thread for the new service could not be created."},"0x00000898":{code:"NERR_AlreadyLoggedOn",message:"This workstation is already logged on to the LAN."},"0x00000899":{code:"NERR_NotLoggedOn",message:"The workstation is not logged on to the LAN."},"0x0000089A":{code:"NERR_BadUsername",message:"The user name or group name parameter is invalid."},"0x0000089B":{code:"NERR_BadPassword",message:"The password parameter is invalid."},"0x0000089C":{code:"NERR_UnableToAddName_W",message:"The logon processor did not add the message alias."},"0x0000089D":{code:"NERR_UnableToAddName_F",message:"The logon processor did not add the message alias."},"0x0000089E":{code:"NERR_UnableToDelName_W",message:"@W The logoff processor did not delete the message alias."},"0x0000089F":{code:"NERR_UnableToDelName_F",message:"The logoff processor did not delete the message alias."},"0x000008A1":{code:"NERR_LogonsPaused",message:"Network logons are paused."},"0x000008A2":{code:"NERR_LogonServerConflict",message:"A centralized logon server conflict occurred."},"0x000008A3":{code:"NERR_LogonNoUserPath",message:"The server is configured without a valid user path."},"0x000008A4":{code:"NERR_LogonScriptError",message:"An error occurred while loading or running the logon script."},"0x000008A6":{code:"NERR_StandaloneLogon",message:"The logon server was not specified. The computer will be logged on as STANDALONE."},"0x000008A7":{code:"NERR_LogonServerNotFound",message:"The logon server could not be found."},"0x000008A8":{code:"NERR_LogonDomainExists",message:"There is already a logon domain for this computer."},"0x000008A9":{code:"NERR_NonValidatedLogon",message:"The logon server could not validate the logon."},"0x000008AB":{code:"NERR_ACFNotFound",message:"The security database could not be found."},"0x000008AC":{code:"NERR_GroupNotFound",message:"The group name could not be found."},"0x000008AD":{code:"NERR_UserNotFound",message:"The user name could not be found."},"0x000008AE":{code:"NERR_ResourceNotFound",message:"The resource name could not be found."},"0x000008AF":{code:"NERR_GroupExists",message:"The group already exists."},"0x000008B0":{code:"NERR_UserExists",message:"The user account already exists."},"0x000008B1":{code:"NERR_ResourceExists",message:"The resource permission list already exists."},"0x000008B2":{code:"NERR_NotPrimary",message:"This operation is allowed only on the PDC of the domain."},"0x000008B3":{code:"NERR_ACFNotLoaded",message:"The security database has not been started."},"0x000008B4":{code:"NERR_ACFNoRoom",message:"There are too many names in the user accounts database."},"0x000008B5":{code:"NERR_ACFFileIOFail",message:"A disk I/O failure occurred."},"0x000008B6":{code:"NERR_ACFTooManyLists",message:"The limit of 64 entries per resource was exceeded."},"0x000008B7":{code:"NERR_UserLogon",message:"Deleting a user with a session is not allowed."},"0x000008B8":{code:"NERR_ACFNoParent",message:"The parent directory could not be located."},"0x000008B9":{code:"NERR_CanNotGrowSegment",message:"Unable to add to the security database session cache segment."},"0x000008BA":{code:"NERR_SpeGroupOp",message:"This operation is not allowed on this special group."},"0x000008BB":{code:"NERR_NotInCache",message:"This user is not cached in the user accounts database session cache."},"0x000008BC":{code:"NERR_UserInGroup",message:"The user already belongs to this group."},"0x000008BD":{code:"NERR_UserNotInGroup",message:"The user does not belong to this group."},"0x000008BE":{code:"NERR_AccountUndefined",message:"This user account is undefined."},"0x000008BF":{code:"NERR_AccountExpired",message:"This user account has expired."},"0x000008C0":{code:"NERR_InvalidWorkstation",message:"The user is not allowed to log on from this workstation."},"0x000008C1":{code:"NERR_InvalidLogonHours",message:"The user is not allowed to log on at this time."},"0x000008C2":{code:"NERR_PasswordExpired",message:"The password of this user has expired."},"0x000008C3":{code:"NERR_PasswordCantChange",message:"The password of this user cannot change."},"0x000008C4":{code:"NERR_PasswordHistConflict",message:"This password cannot be used now."},"0x000008C5":{code:"NERR_PasswordTooShort",message:"The password does not meet the password policy requirements. Check the minimum password length, password complexity, and password history requirements."},"0x000008C6":{code:"NERR_PasswordTooRecent",message:"The password of this user is too recent to change."},"0x000008C7":{code:"NERR_InvalidDatabase",message:"The security database is corrupted."},"0x000008C8":{code:"NERR_DatabaseUpToDate",message:"No updates are necessary to this replicant network or local security database."},"0x000008C9":{code:"NERR_SyncRequired",message:"This replicant database is outdated; synchronization is required."},"0x000008CA":{code:"NERR_UseNotFound",message:"The network connection could not be found."},"0x000008CB":{code:"NERR_BadAsgType",message:"This asg_type is invalid."},"0x000008CC":{code:"NERR_DeviceIsShared",message:"This device is currently being shared."},"0x000008DE":{code:"NERR_NoComputerName",message:"The computer name could not be added as a message alias. The name may already exist on the network."},"0x000008DF":{code:"NERR_MsgAlreadyStarted",message:"The Messenger service is already started."},"0x000008E0":{code:"NERR_MsgInitFailed",message:"The Messenger service failed to start."},"0x000008E1":{code:"NERR_NameNotFound",message:"The message alias could not be found on the network."},"0x000008E2":{code:"NERR_AlreadyForwarded",message:"This message alias has already been forwarded."},"0x000008E3":{code:"NERR_AddForwarded",message:"This message alias has been added but is still forwarded."},"0x000008E4":{code:"NERR_AlreadyExists",message:"This message alias already exists locally."},"0x000008E5":{code:"NERR_TooManyNames",message:"The maximum number of added message aliases has been exceeded."},"0x000008E6":{code:"NERR_DelComputerName",message:"The computer name could not be deleted."},"0x000008E7":{code:"NERR_LocalForward",message:"Messages cannot be forwarded back to the same workstation."},"0x000008E8":{code:"NERR_GrpMsgProcessor",message:"An error occurred in the domain message processor."},"0x000008E9":{code:"NERR_PausedRemote",message:"The message was sent, but the recipient has paused the Messenger service."},"0x000008EA":{code:"NERR_BadReceive",message:"The message was sent but not received."},"0x000008EB":{code:"NERR_NameInUse",message:"The message alias is currently in use. Try again later."},"0x000008EC":{code:"NERR_MsgNotStarted",message:"The Messenger service has not been started."},"0x000008ED":{code:"NERR_NotLocalName",message:"The name is not on the local computer."},"0x000008EE":{code:"NERR_NoForwardName",message:"The forwarded message alias could not be found on the network."},"0x000008EF":{code:"NERR_RemoteFull",message:"The message alias table on the remote station is full."},"0x000008F0":{code:"NERR_NameNotForwarded",message:"Messages for this alias are not currently being forwarded."},"0x000008F1":{code:"NERR_TruncatedBroadcast",message:"The broadcast message was truncated."},"0x000008F6":{code:"NERR_InvalidDevice",message:"This is an invalid device name."},"0x000008F7":{code:"NERR_WriteFault",message:"A write fault occurred."},"0x000008F9":{code:"NERR_DuplicateName",message:"A duplicate message alias exists on the network."},"0x000008FA":{code:"NERR_DeleteLater",message:"This message alias will be deleted later."},"0x000008FB":{code:"NERR_IncompleteDel",message:"The message alias was not successfully deleted from all networks."},"0x000008FC":{code:"NERR_MultipleNets",message:"This operation is not supported on computers with multiple networks."},"0x00000906":{code:"NERR_NetNameNotFound",message:"This shared resource does not exist."},"0x00000907":{code:"NERR_DeviceNotShared",message:"This device is not shared."},"0x00000908":{code:"NERR_ClientNameNotFound",message:"A session does not exist with that computer name."},"0x0000090A":{code:"NERR_FileIdNotFound",message:"There is not an open file with that identification number."},"0x0000090B":{code:"NERR_ExecFailure",message:"A failure occurred when executing a remote administration command."},"0x0000090C":{code:"NERR_TmpFile",message:"A failure occurred when opening a remote temporary file."},"0x0000090D":{code:"NERR_TooMuchData",message:"The data returned from a remote administration command has been truncated to 64 KB."},"0x0000090E":{code:"NERR_DeviceShareConflict",message:"This device cannot be shared as both a spooled and a nonspooled resource."},"0x0000090F":{code:"NERR_BrowserTableIncomplete",message:"The information in the list of servers may be incorrect."},"0x00000910":{code:"NERR_NotLocalDomain",message:"The computer is not active in this domain."},"0x00000911":{code:"NERR_IsDfsShare",message:"The share must be removed from the Distributed File System (DFS) before it can be deleted."},"0x0000091B":{code:"NERR_DevInvalidOpCode",message:"The operation is invalid for this device."},"0x0000091C":{code:"NERR_DevNotFound",message:"This device cannot be shared."},"0x0000091D":{code:"NERR_DevNotOpen",message:"This device was not open."},"0x0000091E":{code:"NERR_BadQueueDevString",message:"This device name list is invalid."},"0x0000091F":{code:"NERR_BadQueuePriority",message:"The queue priority is invalid."},"0x00000921":{code:"NERR_NoCommDevs",message:"There are no shared communication devices."},"0x00000922":{code:"NERR_QueueNotFound",message:"The queue you specified does not exist."},"0x00000924":{code:"NERR_BadDevString",message:"This list of devices is invalid."},"0x00000925":{code:"NERR_BadDev",message:"The requested device is invalid."},"0x00000926":{code:"NERR_InUseBySpooler",message:"This device is already in use by the spooler."},"0x00000927":{code:"NERR_CommDevInUse",message:"This device is already in use as a communication device."},"0x0000092F":{code:"NERR_InvalidComputer",message:"This computer name is invalid."},"0x00000932":{code:"NERR_MaxLenExceeded",message:"The string and prefix specified are too long."},"0x00000934":{code:"NERR_BadComponent",message:"This path component is invalid."},"0x00000935":{code:"NERR_CantType",message:"Could not determine the type of input."},"0x0000093A":{code:"NERR_TooManyEntries",message:"The buffer for types is not big enough."},"0x00000942":{code:"NERR_ProfileFileTooBig",message:"Profile files cannot exceed 64 KB."},"0x00000943":{code:"NERR_ProfileOffset",message:"The start offset is out of range."},"0x00000944":{code:"NERR_ProfileCleanup",message:"The system cannot delete current connections to network resources."},"0x00000945":{code:"NERR_ProfileUnknownCmd",message:"The system was unable to parse the command line in this file."},"0x00000946":{code:"NERR_ProfileLoadErr",message:"An error occurred while loading the profile file."},"0x00000947":{code:"NERR_ProfileSaveErr",message:"Errors occurred while saving the profile file. The profile was partially saved."},"0x00000949":{code:"NERR_LogOverflow",message:"Log file %1 is full."},"0x0000094A":{code:"NERR_LogFileChanged",message:"This log file has changed between reads."},"0x0000094B":{code:"NERR_LogFileCorrupt",message:"Log file %1 is corrupt."},"0x0000094C":{code:"NERR_SourceIsDir",message:"The source path cannot be a directory."},"0x0000094D":{code:"NERR_BadSource",message:"The source path is illegal."},"0x0000094E":{code:"NERR_BadDest",message:"The destination path is illegal."},"0x0000094F":{code:"NERR_DifferentServers",message:"The source and destination paths are on different servers."},"0x00000951":{code:"NERR_RunSrvPaused",message:"The Run server you requested is paused."},"0x00000955":{code:"NERR_ErrCommRunSrv",message:"An error occurred when communicating with a Run server."},"0x00000957":{code:"NERR_ErrorExecingGhost",message:"An error occurred when starting a background process."},"0x00000958":{code:"NERR_ShareNotFound",message:"The shared resource you are connected to could not be found."},"0x00000960":{code:"NERR_InvalidLana",message:"The LAN adapter number is invalid."},"0x00000961":{code:"NERR_OpenFiles",message:"There are open files on the connection."},"0x00000962":{code:"NERR_ActiveConns",message:"Active connections still exist."},"0x00000963":{code:"NERR_BadPasswordCore",message:"This share name or password is invalid."},"0x00000964":{code:"NERR_DevInUse",message:"The device is being accessed by an active process."},"0x00000965":{code:"NERR_LocalDrive",message:"The drive letter is in use locally."},"0x0000097E":{code:"NERR_AlertExists",message:"The specified client is already registered for the specified event."},"0x0000097F":{code:"NERR_TooManyAlerts",message:"The alert table is full."},"0x00000980":{code:"NERR_NoSuchAlert",message:"An invalid or nonexistent alert name was raised."},"0x00000981":{code:"NERR_BadRecipient",message:"The alert recipient is invalid."},"0x00000982":{code:"NERR_AcctLimitExceeded",message:"A user's session with this server has been deleted."},"0x00000988":{code:"NERR_InvalidLogSeek",message:"The log file does not contain the requested record number."},"0x00000992":{code:"NERR_BadUasConfig",message:"The user accounts database is not configured correctly."},"0x00000993":{code:"NERR_InvalidUASOp",message:"This operation is not permitted when the Net Logon service is running."},"0x00000994":{code:"NERR_LastAdmin",message:"This operation is not allowed on the last administrative account."},"0x00000995":{code:"NERR_DCNotFound",message:"Could not find the domain controller for this domain."},"0x00000996":{code:"NERR_LogonTrackingError",message:"Could not set logon information for this user."},"0x00000997":{code:"NERR_NetlogonNotStarted",message:"The Net Logon service has not been started."},"0x00000998":{code:"NERR_CanNotGrowUASFile",message:"Unable to add to the user accounts database."},"0x00000999":{code:"NERR_TimeDiffAtDC",message:"This server's clock is not synchronized with the PDC's clock."},"0x0000099A":{code:"NERR_PasswordMismatch",message:"A password mismatch has been detected."},"0x0000099C":{code:"NERR_NoSuchServer",message:"The server identification does not specify a valid server."},"0x0000099D":{code:"NERR_NoSuchSession",message:"The session identification does not specify a valid session."},"0x0000099E":{code:"NERR_NoSuchConnection",message:"The connection identification does not specify a valid connection."},"0x0000099F":{code:"NERR_TooManyServers",message:"There is no space for another entry in the table of available servers."},"0x000009A0":{code:"NERR_TooManySessions",message:"The server has reached the maximum number of sessions it supports."},"0x000009A1":{code:"NERR_TooManyConnections",message:"The server has reached the maximum number of connections it supports."},"0x000009A2":{code:"NERR_TooManyFiles",message:"The server cannot open more files because it has reached its maximum number."},"0x000009A3":{code:"NERR_NoAlternateServers",message:"There are no alternate servers registered on this server."},"0x000009A6":{code:"NERR_TryDownLevel",message:"Try the down-level (remote admin protocol) version of API instead."},"0x000009B0":{code:"NERR_UPSDriverNotStarted",message:"The uninterruptible power supply (UPS) driver could not be accessed by the UPS service."},"0x000009B1":{code:"NERR_UPSInvalidConfig",message:"The UPS service is not configured correctly."},"0x000009B2":{code:"NERR_UPSInvalidCommPort",message:"The UPS service could not access the specified Comm Port."},"0x000009B3":{code:"NERR_UPSSignalAsserted",message:"The UPS indicated a line fail or low battery situation. Service not started."},"0x000009B4":{code:"NERR_UPSShutdownFailed",message:"The UPS service failed to perform a system shut down."},"0x000009C4":{code:"NERR_BadDosRetCode",message:"The program below returned an MS-DOS error code."},"0x000009C5":{code:"NERR_ProgNeedsExtraMem",message:"The program below needs more memory."},"0x000009C6":{code:"NERR_BadDosFunction",message:"The program below called an unsupported MS-DOS function."},"0x000009C7":{code:"NERR_RemoteBootFailed",message:"The workstation failed to boot."},"0x000009C8":{code:"NERR_BadFileCheckSum",message:"The file below is corrupt."},"0x000009C9":{code:"NERR_NoRplBootSystem",message:"No loader is specified in the boot-block definition file."},"0x000009CA":{code:"NERR_RplLoadrNetBiosErr",message:"NetBIOS returned an error: The network control blocks (NCBs) and Server Message Block (SMB) are dumped above."},"0x000009CB":{code:"NERR_RplLoadrDiskErr",message:"A disk I/O error occurred."},"0x000009CC":{code:"NERR_ImageParamErr",message:"Image parameter substitution failed."},"0x000009CD":{code:"NERR_TooManyImageParams",message:"Too many image parameters cross disk sector boundaries."},"0x000009CE":{code:"NERR_NonDosFloppyUsed",message:"The image was not generated from an MS-DOS disk formatted with /S."},"0x000009CF":{code:"NERR_RplBootRestart",message:"Remote boot will be restarted later."},"0x000009D0":{code:"NERR_RplSrvrCallFailed",message:"The call to the Remoteboot server failed."},"0x000009D1":{code:"NERR_CantConnectRplSrvr",message:"Cannot connect to the Remoteboot server."},"0x000009D2":{code:"NERR_CantOpenImageFile",message:"Cannot open image file on the Remoteboot server."},"0x000009D3":{code:"NERR_CallingRplSrvr",message:"Connecting to the Remoteboot server."},"0x000009D4":{code:"NERR_StartingRplBoot",message:"Connecting to the Remoteboot server."},"0x000009D5":{code:"NERR_RplBootServiceTerm",message:"Remote boot service was stopped, check the error log for the cause of the problem."},"0x000009D6":{code:"NERR_RplBootStartFailed",message:"Remote boot startup failed; check the error log for the cause of the problem."},"0x000009D7":{code:"NERR_RPL_CONNECTED",message:"A second connection to a Remoteboot resource is not allowed."},"0x000009F6":{code:"NERR_BrowserConfiguredToNotRun",message:"The browser service was configured with MaintainServerList=No."},"0x00000A32":{code:"NERR_RplNoAdaptersStarted",message:"Service failed to start because none of the network adapters started with this service."},"0x00000A33":{code:"NERR_RplBadRegistry",message:"Service failed to start due to bad startup information in the registry."},"0x00000A34":{code:"NERR_RplBadDatabase",message:"Service failed to start because its database is absent or corrupt."},"0x00000A35":{code:"NERR_RplRplfilesShare",message:"Service failed to start because the RPLFILES share is absent."},"0x00000A36":{code:"NERR_RplNotRplServer",message:"Service failed to start because the RPLUSER group is absent."},"0x00000A37":{code:"NERR_RplCannotEnum",message:"Cannot enumerate service records."},"0x00000A38":{code:"NERR_RplWkstaInfoCorrupted",message:"Workstation record information has been corrupted."},"0x00000A39":{code:"NERR_RplWkstaNotFound",message:"Workstation record was not found."},"0x00000A3A":{code:"NERR_RplWkstaNameUnavailable",message:"Workstation name is in use by some other workstation."},"0x00000A3B":{code:"NERR_RplProfileInfoCorrupted",message:"Profile record information has been corrupted."},"0x00000A3C":{code:"NERR_RplProfileNotFound",message:"Profile record was not found."},"0x00000A3D":{code:"NERR_RplProfileNameUnavailable",message:"Profile name is in use by some other profile."},"0x00000A3E":{code:"NERR_RplProfileNotEmpty",message:"There are workstations using this profile."},"0x00000A3F":{code:"NERR_RplConfigInfoCorrupted",message:"Configuration record information has been corrupted."},"0x00000A40":{code:"NERR_RplConfigNotFound",message:"Configuration record was not found."},"0x00000A41":{code:"NERR_RplAdapterInfoCorrupted",message:"Adapter ID record information has been corrupted."},"0x00000A42":{code:"NERR_RplInternal",message:"An internal service error has occurred."},"0x00000A43":{code:"NERR_RplVendorInfoCorrupted",message:"Vendor ID record information has been corrupted."},"0x00000A44":{code:"NERR_RplBootInfoCorrupted",message:"Boot block record information has been corrupted."},"0x00000A45":{code:"NERR_RplWkstaNeedsUserAcct",message:"The user account for this workstation record is missing."},"0x00000A46":{code:"NERR_RplNeedsRPLUSERAcct",message:"The RPLUSER local group could not be found."},"0x00000A47":{code:"NERR_RplBootNotFound",message:"Boot block record was not found."},"0x00000A48":{code:"NERR_RplIncompatibleProfile",message:"Chosen profile is incompatible with this workstation."},"0x00000A49":{code:"NERR_RplAdapterNameUnavailable",message:"Chosen network adapter ID is in use by some other workstation."},"0x00000A4A":{code:"NERR_RplConfigNotEmpty",message:"There are profiles using this configuration."},"0x00000A4B":{code:"NERR_RplBootInUse",message:"There are workstations, profiles, or configurations using this boot block."},"0x00000A4C":{code:"NERR_RplBackupDatabase",message:"Service failed to back up the Remoteboot database."},"0x00000A4D":{code:"NERR_RplAdapterNotFound",message:"Adapter record was not found."},"0x00000A4E":{code:"NERR_RplVendorNotFound",message:"Vendor record was not found."},"0x00000A4F":{code:"NERR_RplVendorNameUnavailable",message:"Vendor name is in use by some other vendor record."},"0x00000A50":{code:"NERR_RplBootNameUnavailable",message:"The boot name or vendor ID is in use by some other boot block record."},"0x00000A51":{code:"NERR_RplConfigNameUnavailable",message:"The configuration name is in use by some other configuration."},"0x00000A64":{code:"NERR_DfsInternalCorruption",message:"The internal database maintained by the DFS service is corrupt."},"0x00000A65":{code:"NERR_DfsVolumeDataCorrupt",message:"One of the records in the internal DFS database is corrupt."},"0x00000A66":{code:"NERR_DfsNoSuchVolume",message:"There is no DFS name whose entry path matches the input entry path."},"0x00000A67":{code:"NERR_DfsVolumeAlreadyExists",message:"A root or link with the given name already exists."},"0x00000A68":{code:"NERR_DfsAlreadyShared",message:"The server share specified is already shared in the DFS."},"0x00000A69":{code:"NERR_DfsNoSuchShare",message:"The indicated server share does not support the indicated DFS namespace."},"0x00000A6A":{code:"NERR_DfsNotALeafVolume",message:"The operation is not valid in this portion of the namespace."},"0x00000A6B":{code:"NERR_DfsLeafVolume",message:"The operation is not valid in this portion of the namespace."},"0x00000A6C":{code:"NERR_DfsVolumeHasMultipleServers",message:"The operation is ambiguous because the link has multiple servers."},"0x00000A6D":{code:"NERR_DfsCantCreateJunctionPoint",message:"Unable to create a link."},"0x00000A6E":{code:"NERR_DfsServerNotDfsAware",message:"The server is not DFS-aware."},"0x00000A6F":{code:"NERR_DfsBadRenamePath",message:"The specified rename target path is invalid."},"0x00000A70":{code:"NERR_DfsVolumeIsOffline",message:"The specified DFS link is offline."},"0x00000A71":{code:"NERR_DfsNoSuchServer",message:"The specified server is not a server for this link."},"0x00000A72":{code:"NERR_DfsCyclicalName",message:"A cycle in the DFS name was detected."},"0x00000A73":{code:"NERR_DfsNotSupportedInServerDfs",message:"The operation is not supported on a server-based DFS."},"0x00000A74":{code:"NERR_DfsDuplicateService",message:"This link is already supported by the specified server share."},"0x00000A75":{code:"NERR_DfsCantRemoveLastServerShare",message:"Cannot remove the last server share supporting this root or link."},"0x00000A76":{code:"NERR_DfsVolumeIsInterDfs",message:"The operation is not supported for an inter-DFS link."},"0x00000A77":{code:"NERR_DfsInconsistent",message:"The internal state of the DFS Service has become inconsistent."},"0x00000A78":{code:"NERR_DfsServerUpgraded",message:"The DFS Service has been installed on the specified server."},"0x00000A79":{code:"NERR_DfsDataIsIdentical",message:"The DFS data being reconciled is identical."},"0x00000A7A":{code:"NERR_DfsCantRemoveDfsRoot",message:"The DFS root cannot be deleted. Uninstall DFS if required."},"0x00000A7B":{code:"NERR_DfsChildOrParentInDfs",message:"A child or parent directory of the share is already in a DFS."},"0x00000A82":{code:"NERR_DfsInternalError",message:"DFS internal error."},"0x00000A83":{code:"NERR_SetupAlreadyJoined",message:"This machine is already joined to a domain."},"0x00000A84":{code:"NERR_SetupNotJoined",message:"This machine is not currently joined to a domain."},"0x00000A85":{code:"NERR_SetupDomainController",message:"This machine is a domain controller and cannot be unjoined from a domain."},"0x00000A86":{code:"NERR_DefaultJoinRequired",message:"The destination domain controller does not support creating machine accounts in organizational units (OUs)."},"0x00000A87":{code:"NERR_InvalidWorkgroupName",message:"The specified workgroup name is invalid."},"0x00000A88":{code:"NERR_NameUsesIncompatibleCodePage",message:"The specified computer name is incompatible with the default language used on the domain controller."},"0x00000A89":{code:"NERR_ComputerAccountNotFound",message:"The specified computer account could not be found."},"0x00000A8A":{code:"NERR_PersonalSku",message:"This version of Windows cannot be joined to a domain."},"0x00000A8D":{code:"NERR_PasswordMustChange",message:"The password must change at the next logon."},"0x00000A8E":{code:"NERR_AccountLockedOut",message:"The account is locked out."},"0x00000A8F":{code:"NERR_PasswordTooLong",message:"The password is too long."},"0x00000A90":{code:"NERR_PasswordNotComplexEnough",message:"The password does not meet the complexity policy."},"0x00000A91":{code:"NERR_PasswordFilterError",message:"The password does not meet the requirements of the password filter DLLs."},"0x00000BB8":{code:"ERROR_UNKNOWN_PRINT_MONITOR",message:"The specified print monitor is unknown."},"0x00000BB9":{code:"ERROR_PRINTER_DRIVER_IN_USE",message:"The specified printer driver is currently in use."},"0x00000BBA":{code:"ERROR_SPOOL_FILE_NOT_FOUND",message:"The spool file was not found."},"0x00000BBB":{code:"ERROR_SPL_NO_STARTDOC",message:"A StartDocPrinter call was not issued."},"0x00000BBC":{code:"ERROR_SPL_NO_ADDJOB",message:"An AddJob call was not issued."},"0x00000BBD":{code:"ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED",message:"The specified print processor has already been installed."},"0x00000BBE":{code:"ERROR_PRINT_MONITOR_ALREADY_INSTALLED",message:"The specified print monitor has already been installed."},"0x00000BBF":{code:"ERROR_INVALID_PRINT_MONITOR",message:"The specified print monitor does not have the required functions."},"0x00000BC0":{code:"ERROR_PRINT_MONITOR_IN_USE",message:"The specified print monitor is currently in use."},"0x00000BC1":{code:"ERROR_PRINTER_HAS_JOBS_QUEUED",message:"The requested operation is not allowed when there are jobs queued to the printer."},"0x00000BC2":{code:"ERROR_SUCCESS_REBOOT_REQUIRED",message:"The requested operation is successful. Changes will not be effective until the system is rebooted."},"0x00000BC3":{code:"ERROR_SUCCESS_RESTART_REQUIRED",message:"The requested operation is successful. Changes will not be effective until the service is restarted."},"0x00000BC4":{code:"ERROR_PRINTER_NOT_FOUND",message:"No printers were found."},"0x00000BC5":{code:"ERROR_PRINTER_DRIVER_WARNED",message:"The printer driver is known to be unreliable."},"0x00000BC6":{code:"ERROR_PRINTER_DRIVER_BLOCKED",message:"The printer driver is known to harm the system."},"0x00000BC7":{code:"ERROR_PRINTER_DRIVER_PACKAGE_IN_USE",message:"The specified printer driver package is currently in use."},"0x00000BC8":{code:"ERROR_CORE_DRIVER_PACKAGE_NOT_FOUND",message:"Unable to find a core driver package that is required by the printer driver package."},"0x00000BC9":{code:"ERROR_FAIL_REBOOT_REQUIRED",message:"The requested operation failed. A system reboot is required to roll back changes made."},"0x00000BCA":{code:"ERROR_FAIL_REBOOT_INITIATED",message:"The requested operation failed. A system reboot has been initiated to roll back changes made."},"0x00000F6E":{code:"ERROR_IO_REISSUE_AS_CACHED",message:"Reissue the given operation as a cached I/O operation."},"0x00000FA0":{code:"ERROR_WINS_INTERNAL",message:"Windows Internet Name Service (WINS) encountered an error while processing the command."},"0x00000FA1":{code:"ERROR_CAN_NOT_DEL_LOCAL_WINS",message:"The local WINS cannot be deleted."},"0x00000FA2":{code:"ERROR_STATIC_INIT",message:"The importation from the file failed."},"0x00000FA3":{code:"ERROR_INC_BACKUP",message:"The backup failed. Was a full backup done before?"},"0x00000FA4":{code:"ERROR_FULL_BACKUP",message:"The backup failed. Check the directory to which you are backing the database."},"0x00000FA5":{code:"ERROR_REC_NON_EXISTENT",message:"The name does not exist in the WINS database."},"0x00000FA6":{code:"ERROR_RPL_NOT_ALLOWED",message:"Replication with a nonconfigured partner is not allowed."},"0x00000FD2":{code:"PEERDIST_ERROR_CONTENTINFO_VERSION_UNSUPPORTED",message:"The version of the supplied content information is not supported."},"0x00000FD3":{code:"PEERDIST_ERROR_CANNOT_PARSE_CONTENTINFO",message:"The supplied content information is malformed."},"0x00000FD4":{code:"PEERDIST_ERROR_MISSING_DATA",message:"The requested data cannot be found in local or peer caches."},"0x00000FD5":{code:"PEERDIST_ERROR_NO_MORE",message:"No more data is available or required."},"0x00000FD6":{code:"PEERDIST_ERROR_NOT_INITIALIZED",message:"The supplied object has not been initialized."},"0x00000FD7":{code:"PEERDIST_ERROR_ALREADY_INITIALIZED",message:"The supplied object has already been initialized."},"0x00000FD8":{code:"PEERDIST_ERROR_SHUTDOWN_IN_PROGRESS",message:"A shutdown operation is already in progress."},"0x00000FD9":{code:"PEERDIST_ERROR_INVALIDATED",message:"The supplied object has already been invalidated."},"0x00000FDA":{code:"PEERDIST_ERROR_ALREADY_EXISTS",message:"An element already exists and was not replaced."},"0x00000FDB":{code:"PEERDIST_ERROR_OPERATION_NOTFOUND",message:"Can not cancel the requested operation as it has already been completed."},"0x00000FDC":{code:"PEERDIST_ERROR_ALREADY_COMPLETED",message:"Can not perform the reqested operation because it has already been carried out."},"0x00000FDD":{code:"PEERDIST_ERROR_OUT_OF_BOUNDS",message:"An operation accessed data beyond the bounds of valid data."},"0x00000FDE":{code:"PEERDIST_ERROR_VERSION_UNSUPPORTED",message:"The requested version is not supported."},"0x00000FDF":{code:"PEERDIST_ERROR_INVALID_CONFIGURATION",message:"A configuration value is invalid."},"0x00000FE0":{code:"PEERDIST_ERROR_NOT_LICENSED",message:"The SKU is not licensed."},"0x00000FE1":{code:"PEERDIST_ERROR_SERVICE_UNAVAILABLE",message:"PeerDist Service is still initializing and will be available shortly."},"0x00001004":{code:"ERROR_DHCP_ADDRESS_CONFLICT",message:"The Dynamic Host Configuration Protocol (DHCP) client has obtained an IP address that is already in use on the network. The local interface will be disabled until the DHCP client can obtain a new address."},"0x00001068":{code:"ERROR_WMI_GUID_NOT_FOUND",message:"The GUID passed was not recognized as valid by a WMI data provider."},"0x00001069":{code:"ERROR_WMI_INSTANCE_NOT_FOUND",message:"The instance name passed was not recognized as valid by a WMI data provider."},"0x0000106A":{code:"ERROR_WMI_ITEMID_NOT_FOUND",message:"The data item ID passed was not recognized as valid by a WMI data provider."},"0x0000106B":{code:"ERROR_WMI_TRY_AGAIN",message:"The WMI request could not be completed and should be retried."},"0x0000106C":{code:"ERROR_WMI_DP_NOT_FOUND",message:"The WMI data provider could not be located."},"0x0000106D":{code:"ERROR_WMI_UNRESOLVED_INSTANCE_REF",message:"The WMI data provider references an instance set that has not been registered."},"0x0000106E":{code:"ERROR_WMI_ALREADY_ENABLED",message:"The WMI data block or event notification has already been enabled."},"0x0000106F":{code:"ERROR_WMI_GUID_DISCONNECTED",message:"The WMI data block is no longer available."},"0x00001070":{code:"ERROR_WMI_SERVER_UNAVAILABLE",message:"The WMI data service is not available."},"0x00001071":{code:"ERROR_WMI_DP_FAILED",message:"The WMI data provider failed to carry out the request."},"0x00001072":{code:"ERROR_WMI_INVALID_MOF",message:"The WMI Managed Object Format (MOF) information is not valid."},"0x00001073":{code:"ERROR_WMI_INVALID_REGINFO",message:"The WMI registration information is not valid."},"0x00001074":{code:"ERROR_WMI_ALREADY_DISABLED",message:"The WMI data block or event notification has already been disabled."},"0x00001075":{code:"ERROR_WMI_READ_ONLY",message:"The WMI data item or data block is read-only."},"0x00001076":{code:"ERROR_WMI_SET_FAILURE",message:"The WMI data item or data block could not be changed."},"0x000010CC":{code:"ERROR_INVALID_MEDIA",message:"The media identifier does not represent a valid medium."},"0x000010CD":{code:"ERROR_INVALID_LIBRARY",message:"The library identifier does not represent a valid library."},"0x000010CE":{code:"ERROR_INVALID_MEDIA_POOL",message:"The media pool identifier does not represent a valid media pool."},"0x000010CF":{code:"ERROR_DRIVE_MEDIA_MISMATCH",message:"The drive and medium are not compatible, or they exist in different libraries."},"0x000010D0":{code:"ERROR_MEDIA_OFFLINE",message:"The medium currently exists in an offline library and must be online to perform this operation."},"0x000010D1":{code:"ERROR_LIBRARY_OFFLINE",message:"The operation cannot be performed on an offline library."},"0x000010D2":{code:"ERROR_EMPTY",message:"The library, drive, or media pool is empty."},"0x000010D3":{code:"ERROR_NOT_EMPTY",message:"The library, drive, or media pool must be empty to perform this operation."},"0x000010D4":{code:"ERROR_MEDIA_UNAVAILABLE",message:"No media is currently available in this media pool or library."},"0x000010D5":{code:"ERROR_RESOURCE_DISABLED",message:"A resource required for this operation is disabled."},"0x000010D6":{code:"ERROR_INVALID_CLEANER",message:"The media identifier does not represent a valid cleaner."},"0x000010D7":{code:"ERROR_UNABLE_TO_CLEAN",message:"The drive cannot be cleaned or does not support cleaning."},"0x000010D8":{code:"ERROR_OBJECT_NOT_FOUND",message:"The object identifier does not represent a valid object."},"0x000010D9":{code:"ERROR_DATABASE_FAILURE",message:"Unable to read from or write to the database."},"0x000010DA":{code:"ERROR_DATABASE_FULL",message:"The database is full."},"0x000010DB":{code:"ERROR_MEDIA_INCOMPATIBLE",message:"The medium is not compatible with the device or media pool."},"0x000010DC":{code:"ERROR_RESOURCE_NOT_PRESENT",message:"The resource required for this operation does not exist."},"0x000010DD":{code:"ERROR_INVALID_OPERATION",message:"The operation identifier is not valid."},"0x000010DE":{code:"ERROR_MEDIA_NOT_AVAILABLE",message:"The media is not mounted or ready for use."},"0x000010DF":{code:"ERROR_DEVICE_NOT_AVAILABLE",message:"The device is not ready for use."},"0x000010E0":{code:"ERROR_REQUEST_REFUSED",message:"The operator or administrator has refused the request."},"0x000010E1":{code:"ERROR_INVALID_DRIVE_OBJECT",message:"The drive identifier does not represent a valid drive."},"0x000010E2":{code:"ERROR_LIBRARY_FULL",message:"Library is full. No slot is available for use."},"0x000010E3":{code:"ERROR_MEDIUM_NOT_ACCESSIBLE",message:"The transport cannot access the medium."},"0x000010E4":{code:"ERROR_UNABLE_TO_LOAD_MEDIUM",message:"Unable to load the medium into the drive."},"0x000010E5":{code:"ERROR_UNABLE_TO_INVENTORY_DRIVE",message:"Unable to retrieve the drive status."},"0x000010E6":{code:"ERROR_UNABLE_TO_INVENTORY_SLOT",message:"Unable to retrieve the slot status."},"0x000010E7":{code:"ERROR_UNABLE_TO_INVENTORY_TRANSPORT",message:"Unable to retrieve status about the transport."},"0x000010E8":{code:"ERROR_TRANSPORT_FULL",message:"Cannot use the transport because it is already in use."},"0x000010E9":{code:"ERROR_CONTROLLING_IEPORT",message:"Unable to open or close the inject/eject port."},"0x000010EA":{code:"ERROR_UNABLE_TO_EJECT_MOUNTED_MEDIA",message:"Unable to eject the medium because it is in a drive."},"0x000010EB":{code:"ERROR_CLEANER_SLOT_SET",message:"A cleaner slot is already reserved."},"0x000010EC":{code:"ERROR_CLEANER_SLOT_NOT_SET",message:"A cleaner slot is not reserved."},"0x000010ED":{code:"ERROR_CLEANER_CARTRIDGE_SPENT",message:"The cleaner cartridge has performed the maximum number of drive cleanings."},"0x000010EE":{code:"ERROR_UNEXPECTED_OMID",message:"Unexpected on-medium identifier."},"0x000010EF":{code:"ERROR_CANT_DELETE_LAST_ITEM",message:"The last remaining item in this group or resource cannot be deleted."},"0x000010F0":{code:"ERROR_MESSAGE_EXCEEDS_MAX_SIZE",message:"The message provided exceeds the maximum size allowed for this parameter."},"0x000010F1":{code:"ERROR_VOLUME_CONTAINS_SYS_FILES",message:"The volume contains system or paging files."},"0x000010F2":{code:"ERROR_INDIGENOUS_TYPE",message:"The media type cannot be removed from this library because at least one drive in the library reports it can support this media type."},"0x000010F3":{code:"ERROR_NO_SUPPORTING_DRIVES",message:"This offline media cannot be mounted on this system because no enabled drives are present that can be used."},"0x000010F4":{code:"ERROR_CLEANER_CARTRIDGE_INSTALLED",message:"A cleaner cartridge is present in the tape library."},"0x000010F5":{code:"ERROR_IEPORT_FULL",message:"Cannot use the IEport because it is not empty."},"0x000010FE":{code:"ERROR_FILE_OFFLINE",message:"The remote storage service was not able to recall the file."},"0x000010FF":{code:"ERROR_REMOTE_STORAGE_NOT_ACTIVE",message:"The remote storage service is not operational at this time."},"0x00001100":{code:"ERROR_REMOTE_STORAGE_MEDIA_ERROR",message:"The remote storage service encountered a media error."},"0x00001126":{code:"ERROR_NOT_A_REPARSE_POINT",message:"The file or directory is not a reparse point."},"0x00001127":{code:"ERROR_REPARSE_ATTRIBUTE_CONFLICT",message:"The reparse point attribute cannot be set because it conflicts with an existing attribute."},"0x00001128":{code:"ERROR_INVALID_REPARSE_DATA",message:"The data present in the reparse point buffer is invalid."},"0x00001129":{code:"ERROR_REPARSE_TAG_INVALID",message:"The tag present in the reparse point buffer is invalid."},"0x0000112A":{code:"ERROR_REPARSE_TAG_MISMATCH",message:"There is a mismatch between the tag specified in the request and the tag present in the reparse point."},"0x00001194":{code:"ERROR_VOLUME_NOT_SIS_ENABLED",message:"Single Instance Storage (SIS) is not available on this volume."},"0x00001389":{code:"ERROR_DEPENDENT_RESOURCE_EXISTS",message:"The operation cannot be completed because other resources depend on this resource."},"0x0000138A":{code:"ERROR_DEPENDENCY_NOT_FOUND",message:"The cluster resource dependency cannot be found."},"0x0000138B":{code:"ERROR_DEPENDENCY_ALREADY_EXISTS",message:"The cluster resource cannot be made dependent on the specified resource because it is already dependent."},"0x0000138C":{code:"ERROR_RESOURCE_NOT_ONLINE",message:"The cluster resource is not online."},"0x0000138D":{code:"ERROR_HOST_NODE_NOT_AVAILABLE",message:"A cluster node is not available for this operation."},"0x0000138E":{code:"ERROR_RESOURCE_NOT_AVAILABLE",message:"The cluster resource is not available."},"0x0000138F":{code:"ERROR_RESOURCE_NOT_FOUND",message:"The cluster resource could not be found."},"0x00001390":{code:"ERROR_SHUTDOWN_CLUSTER",message:"The cluster is being shut down."},"0x00001391":{code:"ERROR_CANT_EVICT_ACTIVE_NODE",message:"A cluster node cannot be evicted from the cluster unless the node is down or it is the last node."},"0x00001392":{code:"ERROR_OBJECT_ALREADY_EXISTS",message:"The object already exists."},"0x00001393":{code:"ERROR_OBJECT_IN_LIST",message:"The object is already in the list."},"0x00001394":{code:"ERROR_GROUP_NOT_AVAILABLE",message:"The cluster group is not available for any new requests."},"0x00001395":{code:"ERROR_GROUP_NOT_FOUND",message:"The cluster group could not be found."},"0x00001396":{code:"ERROR_GROUP_NOT_ONLINE",message:"The operation could not be completed because the cluster group is not online."},"0x00001397":{code:"ERROR_HOST_NODE_NOT_RESOURCE_OWNER",message:"The operation failed because either the specified cluster node is not the owner of the resource, or the node is not a possible owner of the resource."},"0x00001398":{code:"ERROR_HOST_NODE_NOT_GROUP_OWNER",message:"The operation failed because either the specified cluster node is not the owner of the group, or the node is not a possible owner of the group."},"0x00001399":{code:"ERROR_RESMON_CREATE_FAILED",message:"The cluster resource could not be created in the specified resource monitor."},"0x0000139A":{code:"ERROR_RESMON_ONLINE_FAILED",message:"The cluster resource could not be brought online by the resource monitor."},"0x0000139B":{code:"ERROR_RESOURCE_ONLINE",message:"The operation could not be completed because the cluster resource is online."},"0x0000139C":{code:"ERROR_QUORUM_RESOURCE",message:"The cluster resource could not be deleted or brought offline because it is the quorum resource."},"0x0000139D":{code:"ERROR_NOT_QUORUM_CAPABLE",message:"The cluster could not make the specified resource a quorum resource because it is not capable of being a quorum resource."},"0x0000139E":{code:"ERROR_CLUSTER_SHUTTING_DOWN",message:"The cluster software is shutting down."},"0x0000139F":{code:"ERROR_INVALID_STATE",message:"The group or resource is not in the correct state to perform the requested operation."},"0x000013A0":{code:"ERROR_RESOURCE_PROPERTIES_STORED",message:"The properties were stored but not all changes will take effect until the next time the resource is brought online."},"0x000013A1":{code:"ERROR_NOT_QUORUM_CLASS",message:"The cluster could not make the specified resource a quorum resource because it does not belong to a shared storage class."},"0x000013A2":{code:"ERROR_CORE_RESOURCE",message:"The cluster resource could not be deleted because it is a core resource."},"0x000013A3":{code:"ERROR_QUORUM_RESOURCE_ONLINE_FAILED",message:"The quorum resource failed to come online."},"0x000013A4":{code:"ERROR_QUORUMLOG_OPEN_FAILED",message:"The quorum log could not be created or mounted successfully."},"0x000013A5":{code:"ERROR_CLUSTERLOG_CORRUPT",message:"The cluster log is corrupt."},"0x000013A6":{code:"ERROR_CLUSTERLOG_RECORD_EXCEEDS_MAXSIZE",message:"The record could not be written to the cluster log because it exceeds the maximum size."},"0x000013A7":{code:"ERROR_CLUSTERLOG_EXCEEDS_MAXSIZE",message:"The cluster log exceeds its maximum size."},"0x000013A8":{code:"ERROR_CLUSTERLOG_CHKPOINT_NOT_FOUND",message:"No checkpoint record was found in the cluster log."},"0x000013A9":{code:"ERROR_CLUSTERLOG_NOT_ENOUGH_SPACE",message:"The minimum required disk space needed for logging is not available."},"0x000013AA":{code:"ERROR_QUORUM_OWNER_ALIVE",message:"The cluster node failed to take control of the quorum resource because the resource is owned by another active node."},"0x000013AB":{code:"ERROR_NETWORK_NOT_AVAILABLE",message:"A cluster network is not available for this operation."},"0x000013AC":{code:"ERROR_NODE_NOT_AVAILABLE",message:"A cluster node is not available for this operation."},"0x000013AD":{code:"ERROR_ALL_NODES_NOT_AVAILABLE",message:"All cluster nodes must be running to perform this operation."},"0x000013AE":{code:"ERROR_RESOURCE_FAILED",message:"A cluster resource failed."},"0x000013AF":{code:"ERROR_CLUSTER_INVALID_NODE",message:"The cluster node is not valid."},"0x000013B0":{code:"ERROR_CLUSTER_NODE_EXISTS",message:"The cluster node already exists."},"0x000013B1":{code:"ERROR_CLUSTER_JOIN_IN_PROGRESS",message:"A node is in the process of joining the cluster."},"0x000013B2":{code:"ERROR_CLUSTER_NODE_NOT_FOUND",message:"The cluster node was not found."},"0x000013B3":{code:"ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND",message:"The cluster local node information was not found."},"0x000013B4":{code:"ERROR_CLUSTER_NETWORK_EXISTS",message:"The cluster network already exists."},"0x000013B5":{code:"ERROR_CLUSTER_NETWORK_NOT_FOUND",message:"The cluster network was not found."},"0x000013B6":{code:"ERROR_CLUSTER_NETINTERFACE_EXISTS",message:"The cluster network interface already exists."},"0x000013B7":{code:"ERROR_CLUSTER_NETINTERFACE_NOT_FOUND",message:"The cluster network interface was not found."},"0x000013B8":{code:"ERROR_CLUSTER_INVALID_REQUEST",message:"The cluster request is not valid for this object."},"0x000013B9":{code:"ERROR_CLUSTER_INVALID_NETWORK_PROVIDER",message:"The cluster network provider is not valid."},"0x000013BA":{code:"ERROR_CLUSTER_NODE_DOWN",message:"The cluster node is down."},"0x000013BB":{code:"ERROR_CLUSTER_NODE_UNREACHABLE",message:"The cluster node is not reachable."},"0x000013BC":{code:"ERROR_CLUSTER_NODE_NOT_MEMBER",message:"The cluster node is not a member of the cluster."},"0x000013BD":{code:"ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS",message:"A cluster join operation is not in progress."},"0x000013BE":{code:"ERROR_CLUSTER_INVALID_NETWORK",message:"The cluster network is not valid."},"0x000013C0":{code:"ERROR_CLUSTER_NODE_UP",message:"The cluster node is up."},"0x000013C1":{code:"ERROR_CLUSTER_IPADDR_IN_USE",message:"The cluster IP address is already in use."},"0x000013C2":{code:"ERROR_CLUSTER_NODE_NOT_PAUSED",message:"The cluster node is not paused."},"0x000013C3":{code:"ERROR_CLUSTER_NO_SECURITY_CONTEXT",message:"No cluster security context is available."},"0x000013C4":{code:"ERROR_CLUSTER_NETWORK_NOT_INTERNAL",message:"The cluster network is not configured for internal cluster communication."},"0x000013C5":{code:"ERROR_CLUSTER_NODE_ALREADY_UP",message:"The cluster node is already up."},"0x000013C6":{code:"ERROR_CLUSTER_NODE_ALREADY_DOWN",message:"The cluster node is already down."},"0x000013C7":{code:"ERROR_CLUSTER_NETWORK_ALREADY_ONLINE",message:"The cluster network is already online."},"0x000013C8":{code:"ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE",message:"The cluster network is already offline."},"0x000013C9":{code:"ERROR_CLUSTER_NODE_ALREADY_MEMBER",message:"The cluster node is already a member of the cluster."},"0x000013CA":{code:"ERROR_CLUSTER_LAST_INTERNAL_NETWORK",message:"The cluster network is the only one configured for internal cluster communication between two or more active cluster nodes. The internal communication capability cannot be removed from the network."},"0x000013CB":{code:"ERROR_CLUSTER_NETWORK_HAS_DEPENDENTS",message:"One or more cluster resources depend on the network to provide service to clients. The client access capability cannot be removed from the network."},"0x000013CC":{code:"ERROR_INVALID_OPERATION_ON_QUORUM",message:"This operation cannot be performed on the cluster resource because it is the quorum resource. You may not bring the quorum resource offline or modify its possible owners list."},"0x000013CD":{code:"ERROR_DEPENDENCY_NOT_ALLOWED",message:"The cluster quorum resource is not allowed to have any dependencies."},"0x000013CE":{code:"ERROR_CLUSTER_NODE_PAUSED",message:"The cluster node is paused."},"0x000013CF":{code:"ERROR_NODE_CANT_HOST_RESOURCE",message:"The cluster resource cannot be brought online. The owner node cannot run this resource."},"0x000013D0":{code:"ERROR_CLUSTER_NODE_NOT_READY",message:"The cluster node is not ready to perform the requested operation."},"0x000013D1":{code:"ERROR_CLUSTER_NODE_SHUTTING_DOWN",message:"The cluster node is shutting down."},"0x000013D2":{code:"ERROR_CLUSTER_JOIN_ABORTED",message:"The cluster join operation was aborted."},"0x000013D3":{code:"ERROR_CLUSTER_INCOMPATIBLE_VERSIONS",message:"The cluster join operation failed due to incompatible software versions between the joining node and its sponsor."},"0x000013D4":{code:"ERROR_CLUSTER_MAXNUM_OF_RESOURCES_EXCEEDED",message:"This resource cannot be created because the cluster has reached the limit on the number of resources it can monitor."},"0x000013D5":{code:"ERROR_CLUSTER_SYSTEM_CONFIG_CHANGED",message:"The system configuration changed during the cluster join or form operation. The join or form operation was aborted."},"0x000013D6":{code:"ERROR_CLUSTER_RESOURCE_TYPE_NOT_FOUND",message:"The specified resource type was not found."},"0x000013D7":{code:"ERROR_CLUSTER_RESTYPE_NOT_SUPPORTED",message:"The specified node does not support a resource of this type. This may be due to version inconsistencies or due to the absence of the resource DLL on this node."},"0x000013D8":{code:"ERROR_CLUSTER_RESNAME_NOT_FOUND",message:"The specified resource name is not supported by this resource DLL. This may be due to a bad (or changed) name supplied to the resource DLL."},"0x000013D9":{code:"ERROR_CLUSTER_NO_RPC_PACKAGES_REGISTERED",message:"No authentication package could be registered with the RPC server."},"0x000013DA":{code:"ERROR_CLUSTER_OWNER_NOT_IN_PREFLIST",message:"You cannot bring the group online because the owner of the group is not in the preferred list for the group. To change the owner node for the group, move the group."},"0x000013DB":{code:"ERROR_CLUSTER_DATABASE_SEQMISMATCH",message:"The join operation failed because the cluster database sequence number has changed or is incompatible with the locker node. This may happen during a join operation if the cluster database was changing during the join."},"0x000013DC":{code:"ERROR_RESMON_INVALID_STATE",message:"The resource monitor will not allow the fail operation to be performed while the resource is in its current state. This may happen if the resource is in a pending state."},"0x000013DD":{code:"ERROR_CLUSTER_GUM_NOT_LOCKER",message:"A non-locker code received a request to reserve the lock for making global updates."},"0x000013DE":{code:"ERROR_QUORUM_DISK_NOT_FOUND",message:"The quorum disk could not be located by the cluster service."},"0x000013DF":{code:"ERROR_DATABASE_BACKUP_CORRUPT",message:"The backed-up cluster database is possibly corrupt."},"0x000013E0":{code:"ERROR_CLUSTER_NODE_ALREADY_HAS_DFS_ROOT",message:"A DFS root already exists in this cluster node."},"0x000013E1":{code:"ERROR_RESOURCE_PROPERTY_UNCHANGEABLE",message:"An attempt to modify a resource property failed because it conflicts with another existing property."},"0x00001702":{code:"ERROR_CLUSTER_MEMBERSHIP_INVALID_STATE",message:"An operation was attempted that is incompatible with the current membership state of the node."},"0x00001703":{code:"ERROR_CLUSTER_QUORUMLOG_NOT_FOUND",message:"The quorum resource does not contain the quorum log."},"0x00001704":{code:"ERROR_CLUSTER_MEMBERSHIP_HALT",message:"The membership engine requested shutdown of the cluster service on this node."},"0x00001705":{code:"ERROR_CLUSTER_INSTANCE_ID_MISMATCH",message:"The join operation failed because the cluster instance ID of the joining node does not match the cluster instance ID of the sponsor node."},"0x00001706":{code:"ERROR_CLUSTER_NETWORK_NOT_FOUND_FOR_IP",message:"A matching cluster network for the specified IP address could not be found."},"0x00001707":{code:"ERROR_CLUSTER_PROPERTY_DATA_TYPE_MISMATCH",message:"The actual data type of the property did not match the expected data type of the property."},"0x00001708":{code:"ERROR_CLUSTER_EVICT_WITHOUT_CLEANUP",message:"The cluster node was evicted from the cluster successfully, but the node was not cleaned up. To determine what clean-up steps failed and how to recover, see the Failover Clustering application event log using Event Viewer."},"0x00001709":{code:"ERROR_CLUSTER_PARAMETER_MISMATCH",message:"Two or more parameter values specified for a resource's properties are in conflict."},"0x0000170A":{code:"ERROR_NODE_CANNOT_BE_CLUSTERED",message:"This computer cannot be made a member of a cluster."},"0x0000170B":{code:"ERROR_CLUSTER_WRONG_OS_VERSION",message:"This computer cannot be made a member of a cluster because it does not have the correct version of Windows installed."},"0x0000170C":{code:"ERROR_CLUSTER_CANT_CREATE_DUP_CLUSTER_NAME",message:"A cluster cannot be created with the specified cluster name because that cluster name is already in use. Specify a different name for the cluster."},"0x0000170D":{code:"ERROR_CLUSCFG_ALREADY_COMMITTED",message:"The cluster configuration action has already been committed."},"0x0000170E":{code:"ERROR_CLUSCFG_ROLLBACK_FAILED",message:"The cluster configuration action could not be rolled back."},"0x0000170F":{code:"ERROR_CLUSCFG_SYSTEM_DISK_DRIVE_LETTER_CONFLICT",message:"The drive letter assigned to a system disk on one node conflicted with the drive letter assigned to a disk on another node."},"0x00001710":{code:"ERROR_CLUSTER_OLD_VERSION",message:"One or more nodes in the cluster are running a version of Windows that does not support this operation."},"0x00001711":{code:"ERROR_CLUSTER_MISMATCHED_COMPUTER_ACCT_NAME",message:"The name of the corresponding computer account does not match the network name for this resource."},"0x00001712":{code:"ERROR_CLUSTER_NO_NET_ADAPTERS",message:"No network adapters are available."},"0x00001713":{code:"ERROR_CLUSTER_POISONED",message:"The cluster node has been poisoned."},"0x00001714":{code:"ERROR_CLUSTER_GROUP_MOVING",message:"The group is unable to accept the request because it is moving to another node."},"0x00001715":{code:"ERROR_CLUSTER_RESOURCE_TYPE_BUSY",message:"The resource type cannot accept the request because it is too busy performing another operation."},"0x00001716":{code:"ERROR_RESOURCE_CALL_TIMED_OUT",message:"The call to the cluster resource DLL timed out."},"0x00001717":{code:"ERROR_INVALID_CLUSTER_IPV6_ADDRESS",message:"The address is not valid for an IPv6 Address resource. A global IPv6 address is required, and it must match a cluster network. Compatibility addresses are not permitted."},"0x00001718":{code:"ERROR_CLUSTER_INTERNAL_INVALID_FUNCTION",message:"An internal cluster error occurred. A call to an invalid function was attempted."},"0x00001719":{code:"ERROR_CLUSTER_PARAMETER_OUT_OF_BOUNDS",message:"A parameter value is out of acceptable range."},"0x0000171A":{code:"ERROR_CLUSTER_PARTIAL_SEND",message:"A network error occurred while sending data to another node in the cluster. The number of bytes transmitted was less than required."},"0x0000171B":{code:"ERROR_CLUSTER_REGISTRY_INVALID_FUNCTION",message:"An invalid cluster registry operation was attempted."},"0x0000171C":{code:"ERROR_CLUSTER_INVALID_STRING_TERMINATION",message:"An input string of characters is not properly terminated."},"0x0000171D":{code:"ERROR_CLUSTER_INVALID_STRING_FORMAT",message:"An input string of characters is not in a valid format for the data it represents."},"0x0000171E":{code:"ERROR_CLUSTER_DATABASE_TRANSACTION_IN_PROGRESS",message:"An internal cluster error occurred. A cluster database transaction was attempted while a transaction was already in progress."},"0x0000171F":{code:"ERROR_CLUSTER_DATABASE_TRANSACTION_NOT_IN_PROGRESS",message:"An internal cluster error occurred. There was an attempt to commit a cluster database transaction while no transaction was in progress."},"0x00001720":{code:"ERROR_CLUSTER_NULL_DATA",message:"An internal cluster error occurred. Data was not properly initialized."},"0x00001721":{code:"ERROR_CLUSTER_PARTIAL_READ",message:"An error occurred while reading from a stream of data. An unexpected number of bytes was returned."},"0x00001722":{code:"ERROR_CLUSTER_PARTIAL_WRITE",message:"An error occurred while writing to a stream of data. The required number of bytes could not be written."},"0x00001723":{code:"ERROR_CLUSTER_CANT_DESERIALIZE_DATA",message:"An error occurred while deserializing a stream of cluster data."},"0x00001724":{code:"ERROR_DEPENDENT_RESOURCE_PROPERTY_CONFLICT",message:"One or more property values for this resource are in conflict with one or more property values associated with its dependent resources."},"0x00001725":{code:"ERROR_CLUSTER_NO_QUORUM",message:"A quorum of cluster nodes was not present to form a cluster."},"0x00001726":{code:"ERROR_CLUSTER_INVALID_IPV6_NETWORK",message:"The cluster network is not valid for an IPv6 address resource, or it does not match the configured address."},"0x00001727":{code:"ERROR_CLUSTER_INVALID_IPV6_TUNNEL_NETWORK",message:"The cluster network is not valid for an IPv6 tunnel resource. Check the configuration of the IP Address resource on which the IPv6 tunnel resource depends."},"0x00001728":{code:"ERROR_QUORUM_NOT_ALLOWED_IN_THIS_GROUP",message:"Quorum resource cannot reside in the available storage group."},"0x00001770":{code:"ERROR_ENCRYPTION_FAILED",message:"The specified file could not be encrypted."},"0x00001771":{code:"ERROR_DECRYPTION_FAILED",message:"The specified file could not be decrypted."},"0x00001772":{code:"ERROR_FILE_ENCRYPTED",message:"The specified file is encrypted and the user does not have the ability to decrypt it."},"0x00001773":{code:"ERROR_NO_RECOVERY_POLICY",message:"There is no valid encryption recovery policy configured for this system."},"0x00001774":{code:"ERROR_NO_EFS",message:"The required encryption driver is not loaded for this system."},"0x00001775":{code:"ERROR_WRONG_EFS",message:"The file was encrypted with a different encryption driver than is currently loaded."},"0x00001776":{code:"ERROR_NO_USER_KEYS",message:"There are no Encrypting File System (EFS) keys defined for the user."},"0x00001777":{code:"ERROR_FILE_NOT_ENCRYPTED",message:"The specified file is not encrypted."},"0x00001778":{code:"ERROR_NOT_EXPORT_FORMAT",message:"The specified file is not in the defined EFS export format."},"0x00001779":{code:"ERROR_FILE_READ_ONLY",message:"The specified file is read-only."},"0x0000177A":{code:"ERROR_DIR_EFS_DISALLOWED",message:"The directory has been disabled for encryption."},"0x0000177B":{code:"ERROR_EFS_SERVER_NOT_TRUSTED",message:"The server is not trusted for remote encryption operation."},"0x0000177C":{code:"ERROR_BAD_RECOVERY_POLICY",message:"Recovery policy configured for this system contains invalid recovery certificate."},"0x0000177D":{code:"ERROR_EFS_ALG_BLOB_TOO_BIG",message:"The encryption algorithm used on the source file needs a bigger key buffer than the one on the destination file."},"0x0000177E":{code:"ERROR_VOLUME_NOT_SUPPORT_EFS",message:"The disk partition does not support file encryption."},"0x0000177F":{code:"ERROR_EFS_DISABLED",message:"This machine is disabled for file encryption."},"0x00001780":{code:"ERROR_EFS_VERSION_NOT_SUPPORT",message:"A newer system is required to decrypt this encrypted file."},"0x00001781":{code:"ERROR_CS_ENCRYPTION_INVALID_SERVER_RESPONSE",message:"The remote server sent an invalid response for a file being opened with client-side encryption."},"0x00001782":{code:"ERROR_CS_ENCRYPTION_UNSUPPORTED_SERVER",message:"Client-side encryption is not supported by the remote server even though it claims to support it."},"0x00001783":{code:"ERROR_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE",message:"File is encrypted and should be opened in client-side encryption mode."},"0x00001784":{code:"ERROR_CS_ENCRYPTION_NEW_ENCRYPTED_FILE",message:"A new encrypted file is being created and a $EFS needs to be provided."},"0x00001785":{code:"ERROR_CS_ENCRYPTION_FILE_NOT_CSE",message:"The SMB client requested a client-side extension (CSE) file system control (FSCTL) on a non-CSE file."},"0x000017E6":{code:"ERROR_NO_BROWSER_SERVERS_FOUND",message:"The list of servers for this workgroup is not currently available"},"0x00001838":{code:"SCHED_E_SERVICE_NOT_LOCALSYSTEM",message:"The Task Scheduler service must be configured to run in the System account to function properly. Individual tasks may be configured to run in other accounts."},"0x000019C8":{code:"ERROR_LOG_SECTOR_INVALID",message:"The log service encountered an invalid log sector."},"0x000019C9":{code:"ERROR_LOG_SECTOR_PARITY_INVALID",message:"The log service encountered a log sector with invalid block parity."},"0x000019CA":{code:"ERROR_LOG_SECTOR_REMAPPED",message:"The log service encountered a remapped log sector."},"0x000019CB":{code:"ERROR_LOG_BLOCK_INCOMPLETE",message:"The log service encountered a partial or incomplete log block."},"0x000019CC":{code:"ERROR_LOG_INVALID_RANGE",message:"The log service encountered an attempt to access data outside the active log range."},"0x000019CD":{code:"ERROR_LOG_BLOCKS_EXHAUSTED",message:"The log service user marshaling buffers are exhausted."},"0x000019CE":{code:"ERROR_LOG_READ_CONTEXT_INVALID",message:"The log service encountered an attempt to read from a marshaling area with an invalid read context."},"0x000019CF":{code:"ERROR_LOG_RESTART_INVALID",message:"The log service encountered an invalid log restart area."},"0x000019D0":{code:"ERROR_LOG_BLOCK_VERSION",message:"The log service encountered an invalid log block version."},"0x000019D1":{code:"ERROR_LOG_BLOCK_INVALID",message:"The log service encountered an invalid log block."},"0x000019D2":{code:"ERROR_LOG_READ_MODE_INVALID",message:"The log service encountered an attempt to read the log with an invalid read mode."},"0x000019D3":{code:"ERROR_LOG_NO_RESTART",message:"The log service encountered a log stream with no restart area."},"0x000019D4":{code:"ERROR_LOG_METADATA_CORRUPT",message:"The log service encountered a corrupted metadata file."},"0x000019D5":{code:"ERROR_LOG_METADATA_INVALID",message:"The log service encountered a metadata file that could not be created by the log file system."},"0x000019D6":{code:"ERROR_LOG_METADATA_INCONSISTENT",message:"The log service encountered a metadata file with inconsistent data."},"0x000019D7":{code:"ERROR_LOG_RESERVATION_INVALID",message:"The log service encountered an attempt to erroneous allocate or dispose reservation space."},"0x000019D8":{code:"ERROR_LOG_CANT_DELETE",message:"The log service cannot delete a log file or file system container."},"0x000019D9":{code:"ERROR_LOG_CONTAINER_LIMIT_EXCEEDED",message:"The log service has reached the maximum allowable containers allocated to a log file."},"0x000019DA":{code:"ERROR_LOG_START_OF_LOG",message:"The log service has attempted to read or write backward past the start of the log."},"0x000019DB":{code:"ERROR_LOG_POLICY_ALREADY_INSTALLED",message:"The log policy could not be installed because a policy of the same type is already present."},"0x000019DC":{code:"ERROR_LOG_POLICY_NOT_INSTALLED",message:"The log policy in question was not installed at the time of the request."},"0x000019DD":{code:"ERROR_LOG_POLICY_INVALID",message:"The installed set of policies on the log is invalid."},"0x000019DE":{code:"ERROR_LOG_POLICY_CONFLICT",message:"A policy on the log in question prevented the operation from completing."},"0x000019DF":{code:"ERROR_LOG_PINNED_ARCHIVE_TAIL",message:"Log space cannot be reclaimed because the log is pinned by the archive tail."},"0x000019E0":{code:"ERROR_LOG_RECORD_NONEXISTENT",message:"The log record is not a record in the log file."},"0x000019E1":{code:"ERROR_LOG_RECORDS_RESERVED_INVALID",message:"The number of reserved log records or the adjustment of the number of reserved log records is invalid."},"0x000019E2":{code:"ERROR_LOG_SPACE_RESERVED_INVALID",message:"The reserved log space or the adjustment of the log space is invalid."},"0x000019E3":{code:"ERROR_LOG_TAIL_INVALID",message:"A new or existing archive tail or base of the active log is invalid."},"0x000019E4":{code:"ERROR_LOG_FULL",message:"The log space is exhausted."},"0x000019E5":{code:"ERROR_COULD_NOT_RESIZE_LOG",message:"The log could not be set to the requested size."},"0x000019E6":{code:"ERROR_LOG_MULTIPLEXED",message:"The log is multiplexed; no direct writes to the physical log are allowed."},"0x000019E7":{code:"ERROR_LOG_DEDICATED",message:"The operation failed because the log is a dedicated log."},"0x000019E8":{code:"ERROR_LOG_ARCHIVE_NOT_IN_PROGRESS",message:"The operation requires an archive context."},"0x000019E9":{code:"ERROR_LOG_ARCHIVE_IN_PROGRESS",message:"Log archival is in progress."},"0x000019EA":{code:"ERROR_LOG_EPHEMERAL",message:"The operation requires a non-ephemeral log, but the log is ephemeral."},"0x000019EB":{code:"ERROR_LOG_NOT_ENOUGH_CONTAINERS",message:"The log must have at least two containers before it can be read from or written to."},"0x000019EC":{code:"ERROR_LOG_CLIENT_ALREADY_REGISTERED",message:"A log client has already registered on the stream."},"0x000019ED":{code:"ERROR_LOG_CLIENT_NOT_REGISTERED",message:"A log client has not been registered on the stream."},"0x000019EE":{code:"ERROR_LOG_FULL_HANDLER_IN_PROGRESS",message:"A request has already been made to handle the log full condition."},"0x000019EF":{code:"ERROR_LOG_CONTAINER_READ_FAILED",message:"The log service encountered an error when attempting to read from a log container."},"0x000019F0":{code:"ERROR_LOG_CONTAINER_WRITE_FAILED",message:"The log service encountered an error when attempting to write to a log container."},"0x000019F1":{code:"ERROR_LOG_CONTAINER_OPEN_FAILED",message:"The log service encountered an error when attempting to open a log container."},"0x000019F2":{code:"ERROR_LOG_CONTAINER_STATE_INVALID",message:"The log service encountered an invalid container state when attempting a requested action."},"0x000019F3":{code:"ERROR_LOG_STATE_INVALID",message:"The log service is not in the correct state to perform a requested action."},"0x000019F4":{code:"ERROR_LOG_PINNED",message:"The log space cannot be reclaimed because the log is pinned."},"0x000019F5":{code:"ERROR_LOG_METADATA_FLUSH_FAILED",message:"The log metadata flush failed."},"0x000019F6":{code:"ERROR_LOG_INCONSISTENT_SECURITY",message:"Security on the log and its containers is inconsistent."},"0x000019F7":{code:"ERROR_LOG_APPENDED_FLUSH_FAILED",message:"Records were appended to the log or reservation changes were made, but the log could not be flushed."},"0x000019F8":{code:"ERROR_LOG_PINNED_RESERVATION",message:"The log is pinned due to reservation consuming most of the log space. Free some reserved records to make space available."},"0x00001A2C":{code:"ERROR_INVALID_TRANSACTION",message:"The transaction handle associated with this operation is not valid."},"0x00001A2D":{code:"ERROR_TRANSACTION_NOT_ACTIVE",message:"The requested operation was made in the context of a transaction that is no longer active."},"0x00001A2E":{code:"ERROR_TRANSACTION_REQUEST_NOT_VALID",message:"The requested operation is not valid on the transaction object in its current state."},"0x00001A2F":{code:"ERROR_TRANSACTION_NOT_REQUESTED",message:"The caller has called a response API, but the response is not expected because the transaction manager did not issue the corresponding request to the caller."},"0x00001A30":{code:"ERROR_TRANSACTION_ALREADY_ABORTED",message:"It is too late to perform the requested operation because the transaction has already been aborted."},"0x00001A31":{code:"ERROR_TRANSACTION_ALREADY_COMMITTED",message:"It is too late to perform the requested operation because the transaction has already been committed."},"0x00001A32":{code:"ERROR_TM_INITIALIZATION_FAILED",message:"The transaction manager was unable to be successfully initialized. Transacted operations are not supported."},"0x00001A33":{code:"ERROR_RESOURCEMANAGER_READ_ONLY",message:"The specified resource manager made no changes or updates to the resource under this transaction."},"0x00001A34":{code:"ERROR_TRANSACTION_NOT_JOINED",message:"The resource manager has attempted to prepare a transaction that it has not successfully joined."},"0x00001A35":{code:"ERROR_TRANSACTION_SUPERIOR_EXISTS",message:"The transaction object already has a superior enlistment, and the caller attempted an operation that would have created a new superior. Only a single superior enlistment is allowed."},"0x00001A36":{code:"ERROR_CRM_PROTOCOL_ALREADY_EXISTS",message:"The resource manager tried to register a protocol that already exists."},"0x00001A37":{code:"ERROR_TRANSACTION_PROPAGATION_FAILED",message:"The attempt to propagate the transaction failed."},"0x00001A38":{code:"ERROR_CRM_PROTOCOL_NOT_FOUND",message:"The requested propagation protocol was not registered as a CRM."},"0x00001A39":{code:"ERROR_TRANSACTION_INVALID_MARSHALL_BUFFER",message:"The buffer passed in to PushTransaction or PullTransaction is not in a valid format."},"0x00001A3A":{code:"ERROR_CURRENT_TRANSACTION_NOT_VALID",message:"The current transaction context associated with the thread is not a valid handle to a transaction object."},"0x00001A3B":{code:"ERROR_TRANSACTION_NOT_FOUND",message:"The specified transaction object could not be opened because it was not found."},"0x00001A3C":{code:"ERROR_RESOURCEMANAGER_NOT_FOUND",message:"The specified resource manager object could not be opened because it was not found."},"0x00001A3D":{code:"ERROR_ENLISTMENT_NOT_FOUND",message:"The specified enlistment object could not be opened because it was not found."},"0x00001A3E":{code:"ERROR_TRANSACTIONMANAGER_NOT_FOUND",message:"The specified transaction manager object could not be opened because it was not found."},"0x00001A3F":{code:"ERROR_TRANSACTIONMANAGER_NOT_ONLINE",message:"The specified resource manager was unable to create an enlistment because its associated transaction manager is not online."},"0x00001A40":{code:"ERROR_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION",message:"The specified transaction manager was unable to create the objects contained in its log file in the ObjectB namespace. Therefore, the transaction manager was unable to recover."},"0x00001A90":{code:"ERROR_TRANSACTIONAL_CONFLICT",message:"The function attempted to use a name that is reserved for use by another transaction."},"0x00001A91":{code:"ERROR_RM_NOT_ACTIVE",message:"Transaction support within the specified file system resource manager is not started or was shut down due to an error."},"0x00001A92":{code:"ERROR_RM_METADATA_CORRUPT",message:"The metadata of the resource manager has been corrupted. The resource manager will not function."},"0x00001A93":{code:"ERROR_DIRECTORY_NOT_RM",message:"The specified directory does not contain a resource manager."},"0x00001A95":{code:"ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE",message:"The remote server or share does not support transacted file operations."},"0x00001A96":{code:"ERROR_LOG_RESIZE_INVALID_SIZE",message:"The requested log size is invalid."},"0x00001A97":{code:"ERROR_OBJECT_NO_LONGER_EXISTS",message:"The object (file, stream, link) corresponding to the handle has been deleted by a transaction savepoint rollback."},"0x00001A98":{code:"ERROR_STREAM_MINIVERSION_NOT_FOUND",message:"The specified file miniversion was not found for this transacted file open."},"0x00001A99":{code:"ERROR_STREAM_MINIVERSION_NOT_VALID",message:"The specified file miniversion was found but has been invalidated. The most likely cause is a transaction savepoint rollback."},"0x00001A9A":{code:"ERROR_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION",message:"A miniversion may only be opened in the context of the transaction that created it."},"0x00001A9B":{code:"ERROR_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT",message:"It is not possible to open a miniversion with modify access."},"0x00001A9C":{code:"ERROR_CANT_CREATE_MORE_STREAM_MINIVERSIONS",message:"It is not possible to create any more miniversions for this stream."},"0x00001A9E":{code:"ERROR_REMOTE_FILE_VERSION_MISMATCH",message:"The remote server sent mismatching version numbers or FID for a file opened with transactions."},"0x00001A9F":{code:"ERROR_HANDLE_NO_LONGER_VALID",message:"The handle has been invalidated by a transaction. The most likely cause is the presence of memory mapping on a file, or an open handle when the transaction ended or rolled back to savepoint."},"0x00001AA0":{code:"ERROR_NO_TXF_METADATA",message:"There is no transaction metadata on the file."},"0x00001AA1":{code:"ERROR_LOG_CORRUPTION_DETECTED",message:"The log data is corrupt."},"0x00001AA2":{code:"ERROR_CANT_RECOVER_WITH_HANDLE_OPEN",message:"The file cannot be recovered because a handle is still open on it."},"0x00001AA3":{code:"ERROR_RM_DISCONNECTED",message:"The transaction outcome is unavailable because the resource manager responsible for it is disconnected."},"0x00001AA4":{code:"ERROR_ENLISTMENT_NOT_SUPERIOR",message:"The request was rejected because the enlistment in question is not a superior enlistment."},"0x00001AA5":{code:"ERROR_RECOVERY_NOT_NEEDED",message:"The transactional resource manager is already consistent. Recovery is not needed."},"0x00001AA6":{code:"ERROR_RM_ALREADY_STARTED",message:"The transactional resource manager has already been started."},"0x00001AA7":{code:"ERROR_FILE_IDENTITY_NOT_PERSISTENT",message:"The file cannot be opened in a transaction because its identity depends on the outcome of an unresolved transaction."},"0x00001AA8":{code:"ERROR_CANT_BREAK_TRANSACTIONAL_DEPENDENCY",message:"The operation cannot be performed because another transaction is depending on the fact that this property will not change."},"0x00001AA9":{code:"ERROR_CANT_CROSS_RM_BOUNDARY",message:"The operation would involve a single file with two transactional resource managers and is therefore not allowed."},"0x00001AAA":{code:"ERROR_TXF_DIR_NOT_EMPTY",message:"The $Txf directory must be empty for this operation to succeed."},"0x00001AAB":{code:"ERROR_INDOUBT_TRANSACTIONS_EXIST",message:"The operation would leave a transactional resource manager in an inconsistent state and is, therefore, not allowed."},"0x00001AAC":{code:"ERROR_TM_VOLATILE",message:"The operation could not be completed because the transaction manager does not have a log."},"0x00001AAD":{code:"ERROR_ROLLBACK_TIMER_EXPIRED",message:"A rollback could not be scheduled because a previously scheduled rollback has already been executed or is queued for execution."},"0x00001AAE":{code:"ERROR_TXF_ATTRIBUTE_CORRUPT",message:"The transactional metadata attribute on the file or directory is corrupt and unreadable."},"0x00001AAF":{code:"ERROR_EFS_NOT_ALLOWED_IN_TRANSACTION",message:"The encryption operation could not be completed because a transaction is active."},"0x00001AB0":{code:"ERROR_TRANSACTIONAL_OPEN_NOT_ALLOWED",message:"This object is not allowed to be opened in a transaction."},"0x00001AB1":{code:"ERROR_LOG_GROWTH_FAILED",message:"An attempt to create space in the transactional resource manager's log failed. The failure status has been recorded in the event log."},"0x00001AB2":{code:"ERROR_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE",message:"Memory mapping (creating a mapped section) to a remote file under a transaction is not supported."},"0x00001AB3":{code:"ERROR_TXF_METADATA_ALREADY_PRESENT",message:"Transaction metadata is already present on this file and cannot be superseded."},"0x00001AB4":{code:"ERROR_TRANSACTION_SCOPE_CALLBACKS_NOT_SET",message:"A transaction scope could not be entered because the scope handler has not been initialized."},"0x00001AB5":{code:"ERROR_TRANSACTION_REQUIRED_PROMOTION",message:"Promotion was required to allow the resource manager to enlist, but the transaction was set to disallow it."},"0x00001AB6":{code:"ERROR_CANNOT_EXECUTE_FILE_IN_TRANSACTION",message:"This file is open for modification in an unresolved transaction and may be opened for execution only by a transacted reader."},"0x00001AB7":{code:"ERROR_TRANSACTIONS_NOT_FROZEN",message:"The request to thaw frozen transactions was ignored because transactions were not previously frozen."},"0x00001AB8":{code:"ERROR_TRANSACTION_FREEZE_IN_PROGRESS",message:"Transactions cannot be frozen because a freeze is already in progress."},"0x00001AB9":{code:"ERROR_NOT_SNAPSHOT_VOLUME",message:"The target volume is not a snapshot volume. This operation is only valid on a volume mounted as a snapshot."},"0x00001ABA":{code:"ERROR_NO_SAVEPOINT_WITH_OPEN_FILES",message:"The savepoint operation failed because files are open on the transaction. This is not permitted."},"0x00001ABB":{code:"ERROR_DATA_LOST_REPAIR",message:"Windows has discovered corruption in a file, and that file has since been repaired. Data loss may have occurred."},"0x00001ABC":{code:"ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION",message:"The sparse operation could not be completed because a transaction is active on the file."},"0x00001ABD":{code:"ERROR_TM_IDENTITY_MISMATCH",message:"The call to create a transaction manager object failed because the Tm Identity stored in the logfile does not match the Tm Identity that was passed in as an argument."},"0x00001ABE":{code:"ERROR_FLOATED_SECTION",message:"I/O was attempted on a section object that has been floated as a result of a transaction ending. There is no valid data."},"0x00001ABF":{code:"ERROR_CANNOT_ACCEPT_TRANSACTED_WORK",message:"The transactional resource manager cannot currently accept transacted work due to a transient condition, such as low resources."},"0x00001AC0":{code:"ERROR_CANNOT_ABORT_TRANSACTIONS",message:"The transactional resource manager had too many transactions outstanding that could not be aborted. The transactional resource manager has been shut down."},"0x00001B59":{code:"ERROR_CTX_WINSTATION_NAME_INVALID",message:"The specified session name is invalid."},"0x00001B5A":{code:"ERROR_CTX_INVALID_PD",message:"The specified protocol driver is invalid."},"0x00001B5B":{code:"ERROR_CTX_PD_NOT_FOUND",message:"The specified protocol driver was not found in the system path."},"0x00001B5C":{code:"ERROR_CTX_WD_NOT_FOUND",message:"The specified terminal connection driver was not found in the system path."},"0x00001B5D":{code:"ERROR_CTX_CANNOT_MAKE_EVENTLOG_ENTRY",message:"A registry key for event logging could not be created for this session."},"0x00001B5E":{code:"ERROR_CTX_SERVICE_NAME_COLLISION",message:"A service with the same name already exists on the system."},"0x00001B5F":{code:"ERROR_CTX_CLOSE_PENDING",message:"A close operation is pending on the session."},"0x00001B60":{code:"ERROR_CTX_NO_OUTBUF",message:"There are no free output buffers available."},"0x00001B61":{code:"ERROR_CTX_MODEM_INF_NOT_FOUND",message:"The MODEM.INF file was not found."},"0x00001B62":{code:"ERROR_CTX_INVALID_MODEMNAME",message:"The modem name was not found in the MODEM.INF file."},"0x00001B63":{code:"ERROR_CTX_MODEM_RESPONSE_ERROR",message:"The modem did not accept the command sent to it. Verify that the configured modem name matches the attached modem."},"0x00001B64":{code:"ERROR_CTX_MODEM_RESPONSE_TIMEOUT",message:"The modem did not respond to the command sent to it. Verify that the modem is properly cabled and turned on."},"0x00001B65":{code:"ERROR_CTX_MODEM_RESPONSE_NO_CARRIER",message:"Carrier detect has failed or carrier has been dropped due to disconnect."},"0x00001B66":{code:"ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE",message:"Dial tone not detected within the required time. Verify that the phone cable is properly attached and functional."},"0x00001B67":{code:"ERROR_CTX_MODEM_RESPONSE_BUSY",message:"Busy signal detected at remote site on callback."},"0x00001B68":{code:"ERROR_CTX_MODEM_RESPONSE_VOICE",message:"Voice detected at remote site on callback."},"0x00001B69":{code:"ERROR_CTX_TD_ERROR",message:"Transport driver error."},"0x00001B6E":{code:"ERROR_CTX_WINSTATION_NOT_FOUND",message:"The specified session cannot be found."},"0x00001B6F":{code:"ERROR_CTX_WINSTATION_ALREADY_EXISTS",message:"The specified session name is already in use."},"0x00001B70":{code:"ERROR_CTX_WINSTATION_BUSY",message:"The requested operation cannot be completed because the terminal connection is currently busy processing a connect, disconnect, reset, or delete operation."},"0x00001B71":{code:"ERROR_CTX_BAD_VIDEO_MODE",message:"An attempt has been made to connect to a session whose video mode is not supported by the current client."},"0x00001B7B":{code:"ERROR_CTX_GRAPHICS_INVALID",message:"The application attempted to enable DOS graphics mode. DOS graphics mode is not supported."},"0x00001B7D":{code:"ERROR_CTX_LOGON_DISABLED",message:"Your interactive logon privilege has been disabled. Contact your administrator."},"0x00001B7E":{code:"ERROR_CTX_NOT_CONSOLE",message:"The requested operation can be performed only on the system console. This is most often the result of a driver or system DLL requiring direct console access."},"0x00001B80":{code:"ERROR_CTX_CLIENT_QUERY_TIMEOUT",message:"The client failed to respond to the server connect message."},"0x00001B81":{code:"ERROR_CTX_CONSOLE_DISCONNECT",message:"Disconnecting the console session is not supported."},"0x00001B82":{code:"ERROR_CTX_CONSOLE_CONNECT",message:"Reconnecting a disconnected session to the console is not supported."},"0x00001B84":{code:"ERROR_CTX_SHADOW_DENIED",message:"The request to control another session remotely was denied."},"0x00001B85":{code:"ERROR_CTX_WINSTATION_ACCESS_DENIED",message:"The requested session access is denied."},"0x00001B89":{code:"ERROR_CTX_INVALID_WD",message:"The specified terminal connection driver is invalid."},"0x00001B8A":{code:"ERROR_CTX_SHADOW_INVALID",message:"The requested session cannot be controlled remotely. This may be because the session is disconnected or does not currently have a user logged on."},"0x00001B8B":{code:"ERROR_CTX_SHADOW_DISABLED",message:"The requested session is not configured to allow remote control."},"0x00001B8C":{code:"ERROR_CTX_CLIENT_LICENSE_IN_USE",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number is currently being used by another user. Call your system administrator to obtain a unique license number."},"0x00001B8D":{code:"ERROR_CTX_CLIENT_LICENSE_NOT_SET",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number has not been entered for this copy of the terminal server client. Contact your system administrator."},"0x00001B8E":{code:"ERROR_CTX_LICENSE_NOT_AVAILABLE",message:"The number of connections to this computer is limited and all connections are in use right now. Try connecting later or contact your system administrator."},"0x00001B8F":{code:"ERROR_CTX_LICENSE_CLIENT_INVALID",message:"The client you are using is not licensed to use this system. Your logon request is denied."},"0x00001B90":{code:"ERROR_CTX_LICENSE_EXPIRED",message:"The system license has expired. Your logon request is denied."},"0x00001B91":{code:"ERROR_CTX_SHADOW_NOT_RUNNING",message:"Remote control could not be terminated because the specified session is not currently being remotely controlled."},"0x00001B92":{code:"ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE",message:"The remote control of the console was terminated because the display mode was changed. Changing the display mode in a remote control session is not supported."},"0x00001B93":{code:"ERROR_ACTIVATION_COUNT_EXCEEDED",message:"Activation has already been reset the maximum number of times for this installation. Your activation timer will not be cleared."},"0x00001B94":{code:"ERROR_CTX_WINSTATIONS_DISABLED",message:"Remote logons are currently disabled."},"0x00001B95":{code:"ERROR_CTX_ENCRYPTION_LEVEL_REQUIRED",message:"You do not have the proper encryption level to access this session."},"0x00001B96":{code:"ERROR_CTX_SESSION_IN_USE",message:"The user %s\\%s is currently logged on to this computer. Only the current user or an administrator can log on to this computer."},"0x00001B97":{code:"ERROR_CTX_NO_FORCE_LOGOFF",message:"The user %s\\%s is already logged on to the console of this computer. You do not have permission to log in at this time. To resolve this issue, contact %s\\%s and have them log off."},"0x00001B98":{code:"ERROR_CTX_ACCOUNT_RESTRICTION",message:"Unable to log you on because of an account restriction."},"0x00001B99":{code:"ERROR_RDP_PROTOCOL_ERROR",message:"The RDP component %2 detected an error in the protocol stream and has disconnected the client."},"0x00001B9A":{code:"ERROR_CTX_CDM_CONNECT",message:"The Client Drive Mapping Service has connected on terminal connection."},"0x00001B9B":{code:"ERROR_CTX_CDM_DISCONNECT",message:"The Client Drive Mapping Service has disconnected on terminal connection."},"0x00001B9C":{code:"ERROR_CTX_SECURITY_LAYER_ERROR",message:"The terminal server security layer detected an error in the protocol stream and has disconnected the client."},"0x00001B9D":{code:"ERROR_TS_INCOMPATIBLE_SESSIONS",message:"The target session is incompatible with the current session."},"0x00001F41":{code:"FRS_ERR_INVALID_API_SEQUENCE",message:"The file replication service API was called incorrectly."},"0x00001F42":{code:"FRS_ERR_STARTING_SERVICE",message:"The file replication service cannot be started."},"0x00001F43":{code:"FRS_ERR_STOPPING_SERVICE",message:"The file replication service cannot be stopped."},"0x00001F44":{code:"FRS_ERR_INTERNAL_API",message:"The file replication service API terminated the request. The event log may have more information."},"0x00001F45":{code:"FRS_ERR_INTERNAL",message:"The file replication service terminated the request. The event log may have more information."},"0x00001F46":{code:"FRS_ERR_SERVICE_COMM",message:"The file replication service cannot be contacted. The event log may have more information."},"0x00001F47":{code:"FRS_ERR_INSUFFICIENT_PRIV",message:"The file replication service cannot satisfy the request because the user has insufficient privileges. The event log may have more information."},"0x00001F48":{code:"FRS_ERR_AUTHENTICATION",message:"The file replication service cannot satisfy the request because authenticated RPC is not available. The event log may have more information."},"0x00001F49":{code:"FRS_ERR_PARENT_INSUFFICIENT_PRIV",message:"The file replication service cannot satisfy the request because the user has insufficient privileges on the domain controller. The event log may have more information."},"0x00001F4A":{code:"FRS_ERR_PARENT_AUTHENTICATION",message:"The file replication service cannot satisfy the request because authenticated RPC is not available on the domain controller. The event log may have more information."},"0x00001F4B":{code:"FRS_ERR_CHILD_TO_PARENT_COMM",message:"The file replication service cannot communicate with the file replication service on the domain controller. The event log may have more information."},"0x00001F4C":{code:"FRS_ERR_PARENT_TO_CHILD_COMM",message:"The file replication service on the domain controller cannot communicate with the file replication service on this computer. The event log may have more information."},"0x00001F4D":{code:"FRS_ERR_SYSVOL_POPULATE",message:"The file replication service cannot populate the system volume because of an internal error. The event log may have more information."},"0x00001F4E":{code:"FRS_ERR_SYSVOL_POPULATE_TIMEOUT",message:"The file replication service cannot populate the system volume because of an internal time-out. The event log may have more information."},"0x00001F4F":{code:"FRS_ERR_SYSVOL_IS_BUSY",message:"The file replication service cannot process the request. The system volume is busy with a previous request."},"0x00001F50":{code:"FRS_ERR_SYSVOL_DEMOTE",message:"The file replication service cannot stop replicating the system volume because of an internal error. The event log may have more information."},"0x00001F51":{code:"FRS_ERR_INVALID_SERVICE_PARAMETER",message:"The file replication service detected an invalid parameter."},"0x00002008":{code:"ERROR_DS_NOT_INSTALLED",message:"An error occurred while installing the directory service. For more information, see the event log."},"0x00002009":{code:"ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY",message:"The directory service evaluated group memberships locally."},"0x0000200A":{code:"ERROR_DS_NO_ATTRIBUTE_OR_VALUE",message:"The specified directory service attribute or value does not exist."},"0x0000200B":{code:"ERROR_DS_INVALID_ATTRIBUTE_YNTAX",message:"The attribute syntax specified to the directory service is invalid."},"0x0000200C":{code:"ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED",message:"The attribute type specified to the directory service is not defined."},"0x0000200D":{code:"ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS",message:"The specified directory service attribute or value already exists."},"0x0000200E":{code:"ERROR_DS_BUSY",message:"The directory service is busy."},"0x0000200F":{code:"ERROR_DS_UNAVAILABLE",message:"The directory service is unavailable."},"0x00002010":{code:"ERROR_DS_NO_RIDS_ALLOCATED",message:"The directory service was unable to allocate a relative identifier."},"0x00002011":{code:"ERROR_DS_NO_MORE_RIDS",message:"The directory service has exhausted the pool of relative identifiers."},"0x00002012":{code:"ERROR_DS_INCORRECT_ROLE_OWNER",message:"The requested operation could not be performed because the directory service is not the master for that type of operation."},"0x00002013":{code:"ERROR_DS_RIDMGR_INIT_ERROR",message:"The directory service was unable to initialize the subsystem that allocates relative identifiers."},"0x00002014":{code:"ERROR_DS_OBJ_CLASS_VIOLATION",message:"The requested operation did not satisfy one or more constraints associated with the class of the object."},"0x00002015":{code:"ERROR_DS_CANT_ON_NON_LEAF",message:"The directory service can perform the requested operation only on a leaf object."},"0x00002016":{code:"ERROR_DS_CANT_ON_RDN",message:"The directory service cannot perform the requested operation on the relative distinguished name (RDN) attribute of an object."},"0x00002017":{code:"ERROR_DS_CANT_MOD_OBJ_CLASS",message:"The directory service detected an attempt to modify the object class of an object."},"0x00002018":{code:"ERROR_DS_CROSS_DOM_MOVE_ERROR",message:"The requested cross-domain move operation could not be performed."},"0x00002019":{code:"ERROR_DS_GC_NOT_AVAILABLE",message:"Unable to contact the global catalog (GC) server."},"0x0000201A":{code:"ERROR_SHARED_POLICY",message:"The policy object is shared and can only be modified at the root."},"0x0000201B":{code:"ERROR_POLICY_OBJECT_NOT_FOUND",message:"The policy object does not exist."},"0x0000201C":{code:"ERROR_POLICY_ONLY_IN_DS",message:"The requested policy information is only in the directory service."},"0x0000201D":{code:"ERROR_PROMOTION_ACTIVE",message:"A domain controller promotion is currently active."},"0x0000201E":{code:"ERROR_NO_PROMOTION_ACTIVE",message:"A domain controller promotion is not currently active."},"0x00002020":{code:"ERROR_DS_OPERATIONS_ERROR",message:"An operations error occurred."},"0x00002021":{code:"ERROR_DS_PROTOCOL_ERROR",message:"A protocol error occurred."},"0x00002022":{code:"ERROR_DS_TIMELIMIT_EXCEEDED",message:"The time limit for this request was exceeded."},"0x00002023":{code:"ERROR_DS_SIZELIMIT_EXCEEDED",message:"The size limit for this request was exceeded."},"0x00002024":{code:"ERROR_DS_ADMIN_LIMIT_EXCEEDED",message:"The administrative limit for this request was exceeded."},"0x00002025":{code:"ERROR_DS_COMPARE_FALSE",message:"The compare response was false."},"0x00002026":{code:"ERROR_DS_COMPARE_TRUE",message:"The compare response was true."},"0x00002027":{code:"ERROR_DS_AUTH_METHOD_NOT_SUPPORTED",message:"The requested authentication method is not supported by the server."},"0x00002028":{code:"ERROR_DS_STRONG_AUTH_REQUIRED",message:"A more secure authentication method is required for this server."},"0x00002029":{code:"ERROR_DS_INAPPROPRIATE_AUTH",message:"Inappropriate authentication."},"0x0000202A":{code:"ERROR_DS_AUTH_UNKNOWN",message:"The authentication mechanism is unknown."},"0x0000202B":{code:"ERROR_DS_REFERRAL",message:"A referral was returned from the server."},"0x0000202C":{code:"ERROR_DS_UNAVAILABLE_CRIT_EXTENSION",message:"The server does not support the requested critical extension."},"0x0000202D":{code:"ERROR_DS_CONFIDENTIALITY_REQUIRED",message:"This request requires a secure connection."},"0x0000202E":{code:"ERROR_DS_INAPPROPRIATE_MATCHING",message:"Inappropriate matching."},"0x0000202F":{code:"ERROR_DS_CONSTRAINT_VIOLATION",message:"A constraint violation occurred."},"0x00002030":{code:"ERROR_DS_NO_SUCH_OBJECT",message:"There is no such object on the server."},"0x00002031":{code:"ERROR_DS_ALIAS_PROBLEM",message:"There is an alias problem."},"0x00002032":{code:"ERROR_DS_INVALID_DN_SYNTAX",message:"An invalid dn syntax has been specified."},"0x00002033":{code:"ERROR_DS_IS_LEAF",message:"The object is a leaf object."},"0x00002034":{code:"ERROR_DS_ALIAS_DEREF_PROBLEM",message:"There is an alias dereferencing problem."},"0x00002035":{code:"ERROR_DS_UNWILLING_TO_PERFORM",message:"The server is unwilling to process the request."},"0x00002036":{code:"ERROR_DS_LOOP_DETECT",message:"A loop has been detected."},"0x00002037":{code:"ERROR_DS_NAMING_VIOLATION",message:"There is a naming violation."},"0x00002038":{code:"ERROR_DS_OBJECT_RESULTS_TOO_LARGE",message:"The result set is too large."},"0x00002039":{code:"ERROR_DS_AFFECTS_MULTIPLE_DSAS",message:"The operation affects multiple DSAs."},"0x0000203A":{code:"ERROR_DS_SERVER_DOWN",message:"The server is not operational."},"0x0000203B":{code:"ERROR_DS_LOCAL_ERROR",message:"A local error has occurred."},"0x0000203C":{code:"ERROR_DS_ENCODING_ERROR",message:"An encoding error has occurred."},"0x0000203D":{code:"ERROR_DS_DECODING_ERROR",message:"A decoding error has occurred."},"0x0000203E":{code:"ERROR_DS_FILTER_UNKNOWN",message:"The search filter cannot be recognized."},"0x0000203F":{code:"ERROR_DS_PARAM_ERROR",message:"One or more parameters are illegal."},"0x00002040":{code:"ERROR_DS_NOT_SUPPORTED",message:"The specified method is not supported."},"0x00002041":{code:"ERROR_DS_NO_RESULTS_RETURNED",message:"No results were returned."},"0x00002042":{code:"ERROR_DS_CONTROL_NOT_FOUND",message:"The specified control is not supported by the server."},"0x00002043":{code:"ERROR_DS_CLIENT_LOOP",message:"A referral loop was detected by the client."},"0x00002044":{code:"ERROR_DS_REFERRAL_LIMIT_EXCEEDED",message:"The preset referral limit was exceeded."},"0x00002045":{code:"ERROR_DS_SORT_CONTROL_MISSING",message:"The search requires a SORT control."},"0x00002046":{code:"ERROR_DS_OFFSET_RANGE_ERROR",message:"The search results exceed the offset range specified."},"0x0000206D":{code:"ERROR_DS_ROOT_MUST_BE_NC",message:"The root object must be the head of a naming context. The root object cannot have an instantiated parent."},"0x0000206E":{code:"ERROR_DS_ADD_REPLICA_INHIBITED",message:"The add replica operation cannot be performed. The naming context must be writable to create the replica."},"0x0000206F":{code:"ERROR_DS_ATT_NOT_DEF_IN_SCHEMA",message:"A reference to an attribute that is not defined in the schema occurred."},"0x00002070":{code:"ERROR_DS_MAX_OBJ_SIZE_EXCEEDED",message:"The maximum size of an object has been exceeded."},"0x00002071":{code:"ERROR_DS_OBJ_STRING_NAME_EXISTS",message:"An attempt was made to add an object to the directory with a name that is already in use."},"0x00002072":{code:"ERROR_DS_NO_RDN_DEFINED_IN_SCHEMA",message:"An attempt was made to add an object of a class that does not have an RDN defined in the schema."},"0x00002073":{code:"ERROR_DS_RDN_DOESNT_MATCH_SCHEMA",message:"An attempt was made to add an object using an RDN that is not the RDN defined in the schema."},"0x00002074":{code:"ERROR_DS_NO_REQUESTED_ATTS_FOUND",message:"None of the requested attributes were found on the objects."},"0x00002075":{code:"ERROR_DS_USER_BUFFER_TO_SMALL",message:"The user buffer is too small."},"0x00002076":{code:"ERROR_DS_ATT_IS_NOT_ON_OBJ",message:"The attribute specified in the operation is not present on the object."},"0x00002077":{code:"ERROR_DS_ILLEGAL_MOD_OPERATION",message:"Illegal modify operation. Some aspect of the modification is not permitted."},"0x00002078":{code:"ERROR_DS_OBJ_TOO_LARGE",message:"The specified object is too large."},"0x00002079":{code:"ERROR_DS_BAD_INSTANCE_TYPE",message:"The specified instance type is not valid."},"0x0000207A":{code:"ERROR_DS_MASTERDSA_REQUIRED",message:"The operation must be performed at a master DSA."},"0x0000207B":{code:"ERROR_DS_OBJECT_CLASS_REQUIRED",message:"The object class attribute must be specified."},"0x0000207C":{code:"ERROR_DS_MISSING_REQUIRED_ATT",message:"A required attribute is missing."},"0x0000207D":{code:"ERROR_DS_ATT_NOT_DEF_FOR_CLASS",message:"An attempt was made to modify an object to include an attribute that is not legal for its class."},"0x0000207E":{code:"ERROR_DS_ATT_ALREADY_EXISTS",message:"The specified attribute is already present on the object."},"0x00002080":{code:"ERROR_DS_CANT_ADD_ATT_VALUES",message:"The specified attribute is not present, or has no values."},"0x00002081":{code:"ERROR_DS_SINGLE_VALUE_CONSTRAINT",message:"Multiple values were specified for an attribute that can have only one value."},"0x00002082":{code:"ERROR_DS_RANGE_CONSTRAINT",message:"A value for the attribute was not in the acceptable range of values."},"0x00002083":{code:"ERROR_DS_ATT_VAL_ALREADY_EXISTS",message:"The specified value already exists."},"0x00002084":{code:"ERROR_DS_CANT_REM_MISSING_ATT",message:"The attribute cannot be removed because it is not present on the object."},"0x00002085":{code:"ERROR_DS_CANT_REM_MISSING_ATT_VAL",message:"The attribute value cannot be removed because it is not present on the object."},"0x00002086":{code:"ERROR_DS_ROOT_CANT_BE_SUBREF",message:"The specified root object cannot be a subreference."},"0x00002087":{code:"ERROR_DS_NO_CHAINING",message:"Chaining is not permitted."},"0x00002088":{code:"ERROR_DS_NO_CHAINED_EVAL",message:"Chained evaluation is not permitted."},"0x00002089":{code:"ERROR_DS_NO_PARENT_OBJECT",message:"The operation could not be performed because the object's parent is either uninstantiated or deleted."},"0x0000208A":{code:"ERROR_DS_PARENT_IS_AN_ALIAS",message:"Having a parent that is an alias is not permitted. Aliases are leaf objects."},"0x0000208B":{code:"ERROR_DS_CANT_MIX_MASTER_AND_REPS",message:"The object and parent must be of the same type, either both masters or both replicas."},"0x0000208C":{code:"ERROR_DS_CHILDREN_EXIST",message:"The operation cannot be performed because child objects exist. This operation can only be performed on a leaf object."},"0x0000208D":{code:"ERROR_DS_OBJ_NOT_FOUND",message:"Directory object not found."},"0x0000208E":{code:"ERROR_DS_ALIASED_OBJ_MISSING",message:"The aliased object is missing."},"0x0000208F":{code:"ERROR_DS_BAD_NAME_SYNTAX",message:"The object name has bad syntax."},"0x00002090":{code:"ERROR_DS_ALIAS_POINTS_TO_ALIAS",message:"An alias is not permitted to refer to another alias."},"0x00002091":{code:"ERROR_DS_CANT_DEREF_ALIAS",message:"The alias cannot be dereferenced."},"0x00002092":{code:"ERROR_DS_OUT_OF_SCOPE",message:"The operation is out of scope."},"0x00002093":{code:"ERROR_DS_OBJECT_BEING_REMOVED",message:"The operation cannot continue because the object is in the process of being removed."},"0x00002094":{code:"ERROR_DS_CANT_DELETE_DSA_OBJ",message:"The DSA object cannot be deleted."},"0x00002095":{code:"ERROR_DS_GENERIC_ERROR",message:"A directory service error has occurred."},"0x00002096":{code:"ERROR_DS_DSA_MUST_BE_INT_MASTER",message:"The operation can only be performed on an internal master DSA object."},"0x00002097":{code:"ERROR_DS_CLASS_NOT_DSA",message:"The object must be of class DSA."},"0x00002098":{code:"ERROR_DS_INSUFF_ACCESS_RIGHTS",message:"Insufficient access rights to perform the operation."},"0x00002099":{code:"ERROR_DS_ILLEGAL_SUPERIOR",message:"The object cannot be added because the parent is not on the list of possible superiors."},"0x0000209A":{code:"ERROR_DS_ATTRIBUTE_OWNED_BY_SAM",message:"Access to the attribute is not permitted because the attribute is owned by the SAM."},"0x0000209B":{code:"ERROR_DS_NAME_TOO_MANY_PARTS",message:"The name has too many parts."},"0x0000209C":{code:"ERROR_DS_NAME_TOO_LONG",message:"The name is too long."},"0x0000209D":{code:"ERROR_DS_NAME_VALUE_TOO_LONG",message:"The name value is too long."},"0x0000209E":{code:"ERROR_DS_NAME_UNPARSEABLE",message:"The directory service encountered an error parsing a name."},"0x0000209F":{code:"ERROR_DS_NAME_TYPE_UNKNOWN",message:"The directory service cannot get the attribute type for a name."},"0x000020A0":{code:"ERROR_DS_NOT_AN_OBJECT",message:"The name does not identify an object; the name identifies a phantom."},"0x000020A1":{code:"ERROR_DS_SEC_DESC_TOO_SHORT",message:"The security descriptor is too short."},"0x000020A2":{code:"ERROR_DS_SEC_DESC_INVALID",message:"The security descriptor is invalid."},"0x000020A3":{code:"ERROR_DS_NO_DELETED_NAME",message:"Failed to create name for deleted object."},"0x000020A4":{code:"ERROR_DS_SUBREF_MUST_HAVE_PARENT",message:"The parent of a new subreference must exist."},"0x000020A5":{code:"ERROR_DS_NCNAME_MUST_BE_NC",message:"The object must be a naming context."},"0x000020A6":{code:"ERROR_DS_CANT_ADD_SYSTEM_ONLY",message:"It is not permitted to add an attribute that is owned by the system."},"0x000020A7":{code:"ERROR_DS_CLASS_MUST_BE_CONCRETE",message:"The class of the object must be structural; you cannot instantiate an abstract class."},"0x000020A8":{code:"ERROR_DS_INVALID_DMD",message:"The schema object could not be found."},"0x000020A9":{code:"ERROR_DS_OBJ_GUID_EXISTS",message:"A local object with this GUID (dead or alive) already exists."},"0x000020AA":{code:"ERROR_DS_NOT_ON_BACKLINK",message:"The operation cannot be performed on a back link."},"0x000020AB":{code:"ERROR_DS_NO_CROSSREF_FOR_NC",message:"The cross-reference for the specified naming context could not be found."},"0x000020AC":{code:"ERROR_DS_SHUTTING_DOWN",message:"The operation could not be performed because the directory service is shutting down."},"0x000020AD":{code:"ERROR_DS_UNKNOWN_OPERATION",message:"The directory service request is invalid."},"0x000020AE":{code:"ERROR_DS_INVALID_ROLE_OWNER",message:"The role owner attribute could not be read."},"0x000020AF":{code:"ERROR_DS_COULDNT_CONTACT_FSMO",message:"The requested Flexible Single Master Operations (FSMO) operation failed. The current FSMO holder could not be contacted."},"0x000020B0":{code:"ERROR_DS_CROSS_NC_DN_RENAME",message:"Modification of a distinguished name across a naming context is not permitted."},"0x000020B1":{code:"ERROR_DS_CANT_MOD_SYSTEM_ONLY",message:"The attribute cannot be modified because it is owned by the system."},"0x000020B2":{code:"ERROR_DS_REPLICATOR_ONLY",message:"Only the replicator can perform this function."},"0x000020B3":{code:"ERROR_DS_OBJ_CLASS_NOT_DEFINED",message:"The specified class is not defined."},"0x000020B4":{code:"ERROR_DS_OBJ_CLASS_NOT_SUBCLASS",message:"The specified class is not a subclass."},"0x000020B5":{code:"ERROR_DS_NAME_REFERENCE_INVALID",message:"The name reference is invalid."},"0x000020B6":{code:"ERROR_DS_CROSS_REF_EXISTS",message:"A cross-reference already exists."},"0x000020B7":{code:"ERROR_DS_CANT_DEL_MASTER_CROSSREF",message:"It is not permitted to delete a master cross-reference."},"0x000020B8":{code:"ERROR_DS_SUBTREE_NOTIFY_NOT_NC_HEAD",message:"Subtree notifications are only supported on naming context (NC) heads."},"0x000020B9":{code:"ERROR_DS_NOTIFY_FILTER_TOO_COMPLEX",message:"Notification filter is too complex."},"0x000020BA":{code:"ERROR_DS_DUP_RDN",message:"Schema update failed: Duplicate RDN."},"0x000020BB":{code:"ERROR_DS_DUP_OID",message:"Schema update failed: Duplicate OID."},"0x000020BC":{code:"ERROR_DS_DUP_MAPI_ID",message:"Schema update failed: Duplicate Message Application Programming Interface (MAPI) identifier."},"0x000020BD":{code:"ERROR_DS_DUP_SCHEMA_ID_GUID",message:"Schema update failed: Duplicate schema ID GUID."},"0x000020BE":{code:"ERROR_DS_DUP_LDAP_DISPLAY_NAME",message:"Schema update failed: Duplicate LDAP display name."},"0x000020BF":{code:"ERROR_DS_SEMANTIC_ATT_TEST",message:"Schema update failed: Range-Lower less than Range-Upper."},"0x000020C0":{code:"ERROR_DS_SYNTAX_MISMATCH",message:"Schema update failed: Syntax mismatch."},"0x000020C1":{code:"ERROR_DS_EXISTS_IN_MUST_HAVE",message:"Schema deletion failed: Attribute is used in the Must-Contain list."},"0x000020C2":{code:"ERROR_DS_EXISTS_IN_MAY_HAVE",message:"Schema deletion failed: Attribute is used in the May-Contain list."},"0x000020C3":{code:"ERROR_DS_NONEXISTENT_MAY_HAVE",message:"Schema update failed: Attribute in May-Contain list does not exist."},"0x000020C4":{code:"ERROR_DS_NONEXISTENT_MUST_HAVE",message:"Schema update failed: Attribute in the Must-Contain list does not exist."},"0x000020C5":{code:"ERROR_DS_AUX_CLS_TEST_FAIL",message:"Schema update failed: Class in the Aux Class list does not exist or is not an auxiliary class."},"0x000020C6":{code:"ERROR_DS_NONEXISTENT_POSS_SUP",message:"Schema update failed: Class in the Poss-Superiors list does not exist."},"0x000020C7":{code:"ERROR_DS_SUB_CLS_TEST_FAIL",message:"Schema update failed: Class in the subclass of the list does not exist or does not satisfy hierarchy rules."},"0x000020C8":{code:"ERROR_DS_BAD_RDN_ATT_ID_SYNTAX",message:"Schema update failed: Rdn-Att-Id has wrong syntax."},"0x000020C9":{code:"ERROR_DS_EXISTS_IN_AUX_CLS",message:"Schema deletion failed: Class is used as an auxiliary class."},"0x000020CA":{code:"ERROR_DS_EXISTS_IN_SUB_CLS",message:"Schema deletion failed: Class is used as a subclass."},"0x000020CB":{code:"ERROR_DS_EXISTS_IN_POSS_SUP",message:"Schema deletion failed: Class is used as a Poss-Superior."},"0x000020CC":{code:"ERROR_DS_RECALCSCHEMA_FAILED",message:"Schema update failed in recalculating validation cache."},"0x000020CD":{code:"ERROR_DS_TREE_DELETE_NOT_FINISHED",message:"The tree deletion is not finished. The request must be made again to continue deleting the tree."},"0x000020CE":{code:"ERROR_DS_CANT_DELETE",message:"The requested delete operation could not be performed."},"0x000020CF":{code:"ERROR_DS_ATT_SCHEMA_REQ_ID",message:"Cannot read the governs class identifier for the schema record."},"0x000020D0":{code:"ERROR_DS_BAD_ATT_SCHEMA_SYNTAX",message:"The attribute schema has bad syntax."},"0x000020D1":{code:"ERROR_DS_CANT_CACHE_ATT",message:"The attribute could not be cached."},"0x000020D2":{code:"ERROR_DS_CANT_CACHE_CLASS",message:"The class could not be cached."},"0x000020D3":{code:"ERROR_DS_CANT_REMOVE_ATT_CACHE",message:"The attribute could not be removed from the cache."},"0x000020D4":{code:"ERROR_DS_CANT_REMOVE_CLASS_CACHE",message:"The class could not be removed from the cache."},"0x000020D5":{code:"ERROR_DS_CANT_RETRIEVE_DN",message:"The distinguished name attribute could not be read."},"0x000020D6":{code:"ERROR_DS_MISSING_SUPREF",message:"No superior reference has been configured for the directory service. The directory service is, therefore, unable to issue referrals to objects outside this forest."},"0x000020D7":{code:"ERROR_DS_CANT_RETRIEVE_INSTANCE",message:"The instance type attribute could not be retrieved."},"0x000020D8":{code:"ERROR_DS_CODE_INCONSISTENCY",message:"An internal error has occurred."},"0x000020D9":{code:"ERROR_DS_DATABASE_ERROR",message:"A database error has occurred."},"0x000020DA":{code:"ERROR_DS_GOVERNSID_MISSING",message:"The governsID attribute is missing."},"0x000020DB":{code:"ERROR_DS_MISSING_EXPECTED_ATT",message:"An expected attribute is missing."},"0x000020DC":{code:"ERROR_DS_NCNAME_MISSING_CR_REF",message:"The specified naming context is missing a cross-reference."},"0x000020DD":{code:"ERROR_DS_SECURITY_CHECKING_ERROR",message:"A security checking error has occurred."},"0x000020DE":{code:"ERROR_DS_SCHEMA_NOT_LOADED",message:"The schema is not loaded."},"0x000020DF":{code:"ERROR_DS_SCHEMA_ALLOC_FAILED",message:"Schema allocation failed. Check if the machine is running low on memory."},"0x000020E0":{code:"ERROR_DS_ATT_SCHEMA_REQ_SYNTAX",message:"Failed to obtain the required syntax for the attribute schema."},"0x000020E1":{code:"ERROR_DS_GCVERIFY_ERROR",message:"The GC verification failed. The GC is not available or does not support the operation. Some part of the directory is currently not available."},"0x000020E2":{code:"ERROR_DS_DRA_SCHEMA_MISMATCH",message:"The replication operation failed because of a schema mismatch between the servers involved."},"0x000020E3":{code:"ERROR_DS_CANT_FIND_DSA_OBJ",message:"The DSA object could not be found."},"0x000020E4":{code:"ERROR_DS_CANT_FIND_EXPECTED_NC",message:"The naming context could not be found."},"0x000020E5":{code:"ERROR_DS_CANT_FIND_NC_IN_CACHE",message:"The naming context could not be found in the cache."},"0x000020E6":{code:"ERROR_DS_CANT_RETRIEVE_CHILD",message:"The child object could not be retrieved."},"0x000020E7":{code:"ERROR_DS_SECURITY_ILLEGAL_MODIFY",message:"The modification was not permitted for security reasons."},"0x000020E8":{code:"ERROR_DS_CANT_REPLACE_HIDDEN_REC",message:"The operation cannot replace the hidden record."},"0x000020E9":{code:"ERROR_DS_BAD_HIERARCHY_FILE",message:"The hierarchy file is invalid."},"0x000020EA":{code:"ERROR_DS_BUILD_HIERARCHY_TABLE_FAILED",message:"The attempt to build the hierarchy table failed."},"0x000020EB":{code:"ERROR_DS_CONFIG_PARAM_MISSING",message:"The directory configuration parameter is missing from the registry."},"0x000020EC":{code:"ERROR_DS_COUNTING_AB_INDICES_FAILED",message:"The attempt to count the address book indices failed."},"0x000020ED":{code:"ERROR_DS_HIERARCHY_TABLE_MALLOC_FAILED",message:"The allocation of the hierarchy table failed."},"0x000020EE":{code:"ERROR_DS_INTERNAL_FAILURE",message:"The directory service encountered an internal failure."},"0x000020EF":{code:"ERROR_DS_UNKNOWN_ERROR",message:"The directory service encountered an unknown failure."},"0x000020F0":{code:"ERROR_DS_ROOT_REQUIRES_CLASS_TOP",message:'A root object requires a class of "top".'},"0x000020F1":{code:"ERROR_DS_REFUSING_FSMO_ROLES",message:"This directory server is shutting down, and cannot take ownership of new floating single-master operation roles."},"0x000020F2":{code:"ERROR_DS_MISSING_FSMO_SETTINGS",message:"The directory service is missing mandatory configuration information and is unable to determine the ownership of floating single-master operation roles."},"0x000020F3":{code:"ERROR_DS_UNABLE_TO_SURRENDER_ROLES",message:"The directory service was unable to transfer ownership of one or more floating single-master operation roles to other servers."},"0x000020F4":{code:"ERROR_DS_DRA_GENERIC",message:"The replication operation failed."},"0x000020F5":{code:"ERROR_DS_DRA_INVALID_PARAMETER",message:"An invalid parameter was specified for this replication operation."},"0x000020F6":{code:"ERROR_DS_DRA_BUSY",message:"The directory service is too busy to complete the replication operation at this time."},"0x000020F7":{code:"ERROR_DS_DRA_BAD_DN",message:"The DN specified for this replication operation is invalid."},"0x000020F8":{code:"ERROR_DS_DRA_BAD_NC",message:"The naming context specified for this replication operation is invalid."},"0x000020F9":{code:"ERROR_DS_DRA_DN_EXISTS",message:"The DN specified for this replication operation already exists."},"0x000020FA":{code:"ERROR_DS_DRA_INTERNAL_ERROR",message:"The replication system encountered an internal error."},"0x000020FB":{code:"ERROR_DS_DRA_INCONSISTENT_DIT",message:"The replication operation encountered a database inconsistency."},"0x000020FC":{code:"ERROR_DS_DRA_CONNECTION_FAILED",message:"The server specified for this replication operation could not be contacted."},"0x000020FD":{code:"ERROR_DS_DRA_BAD_INSTANCE_TYPE",message:"The replication operation encountered an object with an invalid instance type."},"0x000020FE":{code:"ERROR_DS_DRA_OUT_OF_MEM",message:"The replication operation failed to allocate memory."},"0x000020FF":{code:"ERROR_DS_DRA_MAIL_PROBLEM",message:"The replication operation encountered an error with the mail system."},"0x00002100":{code:"ERROR_DS_DRA_REF_ALREADY_EXISTS",message:"The replication reference information for the target server already exists."},"0x00002101":{code:"ERROR_DS_DRA_REF_NOT_FOUND",message:"The replication reference information for the target server does not exist."},"0x00002102":{code:"ERROR_DS_DRA_OBJ_IS_REP_SOURCE",message:"The naming context cannot be removed because it is replicated to another server."},"0x00002103":{code:"ERROR_DS_DRA_DB_ERROR",message:"The replication operation encountered a database error."},"0x00002104":{code:"ERROR_DS_DRA_NO_REPLICA",message:"The naming context is in the process of being removed or is not replicated from the specified server."},"0x00002105":{code:"ERROR_DS_DRA_ACCESS_DENIED",message:"Replication access was denied."},"0x00002106":{code:"ERROR_DS_DRA_NOT_SUPPORTED",message:"The requested operation is not supported by this version of the directory service."},"0x00002107":{code:"ERROR_DS_DRA_RPC_CANCELLED",message:"The replication RPC was canceled."},"0x00002108":{code:"ERROR_DS_DRA_SOURCE_DISABLED",message:"The source server is currently rejecting replication requests."},"0x00002109":{code:"ERROR_DS_DRA_SINK_DISABLED",message:"The destination server is currently rejecting replication requests."},"0x0000210A":{code:"ERROR_DS_DRA_NAME_COLLISION",message:"The replication operation failed due to a collision of object names."},"0x0000210B":{code:"ERROR_DS_DRA_SOURCE_REINSTALLED",message:"The replication source has been reinstalled."},"0x0000210C":{code:"ERROR_DS_DRA_MISSING_PARENT",message:"The replication operation failed because a required parent object is missing."},"0x0000210D":{code:"ERROR_DS_DRA_PREEMPTED",message:"The replication operation was preempted."},"0x0000210E":{code:"ERROR_DS_DRA_ABANDON_SYNC",message:"The replication synchronization attempt was abandoned because of a lack of updates."},"0x0000210F":{code:"ERROR_DS_DRA_SHUTDOWN",message:"The replication operation was terminated because the system is shutting down."},"0x00002110":{code:"ERROR_DS_DRA_INCOMPATIBLE_PARTIAL_SET",message:"A synchronization attempt failed because the destination DC is currently waiting to synchronize new partial attributes from the source. This condition is normal if a recent schema change modified the partial attribute set. The destination partial attribute set is not a subset of the source partial attribute set."},"0x00002111":{code:"ERROR_DS_DRA_SOURCE_IS_PARTIAL_REPLICA",message:"The replication synchronization attempt failed because a master replica attempted to sync from a partial replica."},"0x00002112":{code:"ERROR_DS_DRA_EXTN_CONNECTION_FAILED",message:"The server specified for this replication operation was contacted, but that server was unable to contact an additional server needed to complete the operation."},"0x00002113":{code:"ERROR_DS_INSTALL_SCHEMA_MISMATCH",message:"The version of the directory service schema of the source forest is not compatible with the version of the directory service on this computer."},"0x00002114":{code:"ERROR_DS_DUP_LINK_ID",message:"Schema update failed: An attribute with the same link identifier already exists."},"0x00002115":{code:"ERROR_DS_NAME_ERROR_RESOLVING",message:"Name translation: Generic processing error."},"0x00002116":{code:"ERROR_DS_NAME_ERROR_NOT_FOUND",message:"Name translation: Could not find the name or insufficient right to see name."},"0x00002117":{code:"ERROR_DS_NAME_ERROR_NOT_UNIQUE",message:"Name translation: Input name mapped to more than one output name."},"0x00002118":{code:"ERROR_DS_NAME_ERROR_NO_MAPPING",message:"Name translation: The input name was found but not the associated output format."},"0x00002119":{code:"ERROR_DS_NAME_ERROR_DOMAIN_ONLY",message:"Name translation: Unable to resolve completely, only the domain was found."},"0x0000211A":{code:"ERROR_DS_NAME_ERROR_NO_SYNTACTICAL_MAPPING",message:"Name translation: Unable to perform purely syntactical mapping at the client without going out to the wire."},"0x0000211B":{code:"ERROR_DS_CONSTRUCTED_ATT_MOD",message:"Modification of a constructed attribute is not allowed."},"0x0000211C":{code:"ERROR_DS_WRONG_OM_OBJ_CLASS",message:"The OM-Object-Class specified is incorrect for an attribute with the specified syntax."},"0x0000211D":{code:"ERROR_DS_DRA_REPL_PENDING",message:"The replication request has been posted; waiting for a reply."},"0x0000211E":{code:"ERROR_DS_DS_REQUIRED",message:"The requested operation requires a directory service, and none was available."},"0x0000211F":{code:"ERROR_DS_INVALID_LDAP_DISPLAY_NAME",message:"The LDAP display name of the class or attribute contains non-ASCII characters."},"0x00002120":{code:"ERROR_DS_NON_BASE_SEARCH",message:"The requested search operation is only supported for base searches."},"0x00002121":{code:"ERROR_DS_CANT_RETRIEVE_ATTS",message:"The search failed to retrieve attributes from the database."},"0x00002122":{code:"ERROR_DS_BACKLINK_WITHOUT_LINK",message:"The schema update operation tried to add a backward link attribute that has no corresponding forward link."},"0x00002123":{code:"ERROR_DS_EPOCH_MISMATCH",message:"The source and destination of a cross-domain move do not agree on the object's epoch number. Either the source or the destination does not have the latest version of the object."},"0x00002124":{code:"ERROR_DS_SRC_NAME_MISMATCH",message:"The source and destination of a cross-domain move do not agree on the object's current name. Either the source or the destination does not have the latest version of the object."},"0x00002125":{code:"ERROR_DS_SRC_AND_DST_NC_IDENTICAL",message:"The source and destination for the cross-domain move operation are identical. The caller should use a local move operation instead of a cross-domain move operation."},"0x00002126":{code:"ERROR_DS_DST_NC_MISMATCH",message:"The source and destination for a cross-domain move do not agree on the naming contexts in the forest. Either the source or the destination does not have the latest version of the Partitions container."},"0x00002127":{code:"ERROR_DS_NOT_AUTHORITIVE_FOR_DST_NC",message:"The destination of a cross-domain move is not authoritative for the destination naming context."},"0x00002128":{code:"ERROR_DS_SRC_GUID_MISMATCH",message:"The source and destination of a cross-domain move do not agree on the identity of the source object. Either the source or the destination does not have the latest version of the source object."},"0x00002129":{code:"ERROR_DS_CANT_MOVE_DELETED_OBJECT",message:"The object being moved across domains is already known to be deleted by the destination server. The source server does not have the latest version of the source object."},"0x0000212A":{code:"ERROR_DS_PDC_OPERATION_IN_PROGRESS",message:"Another operation that requires exclusive access to the PDC FSMO is already in progress."},"0x0000212B":{code:"ERROR_DS_CROSS_DOMAIN_CLEANUP_REQD",message:"A cross-domain move operation failed because two versions of the moved object exist\u2014one each in the source and destination domains. The destination object needs to be removed to restore the system to a consistent state."},"0x0000212C":{code:"ERROR_DS_ILLEGAL_XDOM_MOVE_OPERATION",message:"This object may not be moved across domain boundaries either because cross-domain moves for this class are not allowed, or the object has some special characteristics, for example, a trust account or a restricted relative identifier (RID), that prevent its move."},"0x0000212D":{code:"ERROR_DS_CANT_WITH_ACCT_GROUP_MEMBERSHPS",message:"Cannot move objects with memberships across domain boundaries because, once moved, this violates the membership conditions of the account group. Remove the object from any account group memberships and retry."},"0x0000212E":{code:"ERROR_DS_NC_MUST_HAVE_NC_PARENT",message:"A naming context head must be the immediate child of another naming context head, not of an interior node."},"0x0000212F":{code:"ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE",message:"The directory cannot validate the proposed naming context name because it does not hold a replica of the naming context above the proposed naming context. Ensure that the domain naming master role is held by a server that is configured as a GC server, and that the server is up-to-date with its replication partners. (Applies only to Windows 2000 domain naming masters.)"},"0x00002130":{code:"ERROR_DS_DST_DOMAIN_NOT_NATIVE",message:"Destination domain must be in native mode."},"0x00002131":{code:"ERROR_DS_MISSING_INFRASTRUCTURE_CONTAINER",message:"The operation cannot be performed because the server does not have an infrastructure container in the domain of interest."},"0x00002132":{code:"ERROR_DS_CANT_MOVE_ACCOUNT_GROUP",message:"Cross-domain moves of nonempty account groups is not allowed."},"0x00002133":{code:"ERROR_DS_CANT_MOVE_RESOURCE_GROUP",message:"Cross-domain moves of nonempty resource groups is not allowed."},"0x00002134":{code:"ERROR_DS_INVALID_SEARCH_FLAG",message:"The search flags for the attribute are invalid. The ambiguous name resolution (ANR) bit is valid only on attributes of Unicode or Teletex strings."},"0x00002135":{code:"ERROR_DS_NO_TREE_DELETE_ABOVE_NC",message:"Tree deletions starting at an object that has an NC head as a descendant are not allowed."},"0x00002136":{code:"ERROR_DS_COULDNT_LOCK_TREE_FOR_DELETE",message:"The directory service failed to lock a tree in preparation for a tree deletion because the tree was in use."},"0x00002137":{code:"ERROR_DS_COULDNT_IDENTIFY_OBJECTS_FOR_TREE_DELETE",message:"The directory service failed to identify the list of objects to delete while attempting a tree deletion."},"0x00002138":{code:"ERROR_DS_SAM_INIT_FAILURE",message:"SAM initialization failed because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system and reboot into Directory Services Restore Mode. Check the event log for detailed information."},"0x00002139":{code:"ERROR_DS_SENSITIVE_GROUP_VIOLATION",message:"Only an administrator can modify the membership list of an administrative group."},"0x0000213A":{code:"ERROR_DS_CANT_MOD_PRIMARYGROUPID",message:"Cannot change the primary group ID of a domain controller account."},"0x0000213B":{code:"ERROR_DS_ILLEGAL_BASE_SCHEMA_MOD",message:"An attempt was made to modify the base schema."},"0x0000213C":{code:"ERROR_DS_NONSAFE_SCHEMA_CHANGE",message:"Adding a new mandatory attribute to an existing class, deleting a mandatory attribute from an existing class, or adding an optional attribute to the special class Top that is not a backlink attribute (directly or through inheritance, for example, by adding or deleting an auxiliary class) is not allowed."},"0x0000213D":{code:"ERROR_DS_SCHEMA_UPDATE_DISALLOWED",message:"Schema update is not allowed on this DC because the DC is not the schema FSMO role owner."},"0x0000213E":{code:"ERROR_DS_CANT_CREATE_UNDER_SCHEMA",message:"An object of this class cannot be created under the schema container. You can only create Attribute-Schema and Class-Schema objects under the schema container."},"0x0000213F":{code:"ERROR_DS_INSTALL_NO_SRC_SCH_VERSION",message:"The replica or child install failed to get the objectVersion attribute on the schema container on the source DC. Either the attribute is missing on the schema container or the credentials supplied do not have permission to read it."},"0x00002140":{code:"ERROR_DS_INSTALL_NO_SCH_VERSION_IN_INIFILE",message:"The replica or child install failed to read the objectVersion attribute in the SCHEMA section of the file schema.ini in the System32 directory."},"0x00002141":{code:"ERROR_DS_INVALID_GROUP_TYPE",message:"The specified group type is invalid."},"0x00002142":{code:"ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN",message:"You cannot nest global groups in a mixed domain if the group is security-enabled."},"0x00002143":{code:"ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN",message:"You cannot nest local groups in a mixed domain if the group is security-enabled."},"0x00002144":{code:"ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER",message:"A global group cannot have a local group as a member."},"0x00002145":{code:"ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER",message:"A global group cannot have a universal group as a member."},"0x00002146":{code:"ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER",message:"A universal group cannot have a local group as a member."},"0x00002147":{code:"ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER",message:"A global group cannot have a cross-domain member."},"0x00002148":{code:"ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER",message:"A local group cannot have another cross domain local group as a member."},"0x00002149":{code:"ERROR_DS_HAVE_PRIMARY_MEMBERS",message:"A group with primary members cannot change to a security-disabled group."},"0x0000214A":{code:"ERROR_DS_STRING_SD_CONVERSION_FAILED",message:"The schema cache load failed to convert the string default security descriptor (SD) on a class-schema object."},"0x0000214B":{code:"ERROR_DS_NAMING_MASTER_GC",message:"Only DSAs configured to be GC servers should be allowed to hold the domain naming master FSMO role. (Applies only to Windows 2000 servers.)"},"0x0000214C":{code:"ERROR_DS_DNS_LOOKUP_FAILURE",message:"The DSA operation is unable to proceed because of a DNS lookup failure."},"0x0000214D":{code:"ERROR_DS_COULDNT_UPDATE_SPNS",message:"While processing a change to the DNS host name for an object, the SPN values could not be kept in sync."},"0x0000214E":{code:"ERROR_DS_CANT_RETRIEVE_SD",message:"The Security Descriptor attribute could not be read."},"0x0000214F":{code:"ERROR_DS_KEY_NOT_UNIQUE",message:"The object requested was not found, but an object with that key was found."},"0x00002150":{code:"ERROR_DS_WRONG_LINKED_ATT_SYNTAX",message:"The syntax of the linked attribute being added is incorrect. Forward links can only have syntax 2.5.5.1, 2.5.5.7, and 2.5.5.14, and backlinks can only have syntax 2.5.5.1."},"0x00002151":{code:"ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD",message:"SAM needs to get the boot password."},"0x00002152":{code:"ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY",message:"SAM needs to get the boot key from the floppy disk."},"0x00002153":{code:"ERROR_DS_CANT_START",message:"Directory Service cannot start."},"0x00002154":{code:"ERROR_DS_INIT_FAILURE",message:"Directory Services could not start."},"0x00002155":{code:"ERROR_DS_NO_PKT_PRIVACY_ON_CONNECTION",message:"The connection between client and server requires packet privacy or better."},"0x00002156":{code:"ERROR_DS_SOURCE_DOMAIN_IN_FOREST",message:"The source domain may not be in the same forest as the destination."},"0x00002157":{code:"ERROR_DS_DESTINATION_DOMAIN_NOT_IN_FOREST",message:"The destination domain must be in the forest."},"0x00002158":{code:"ERROR_DS_DESTINATION_AUDITING_NOT_ENABLED",message:"The operation requires that destination domain auditing be enabled."},"0x00002159":{code:"ERROR_DS_CANT_FIND_DC_FOR_SRC_DOMAIN",message:"The operation could not locate a DC for the source domain."},"0x0000215A":{code:"ERROR_DS_SRC_OBJ_NOT_GROUP_OR_USER",message:"The source object must be a group or user."},"0x0000215B":{code:"ERROR_DS_SRC_SID_EXISTS_IN_FOREST",message:"The source object's SID already exists in the destination forest."},"0x0000215C":{code:"ERROR_DS_SRC_AND_DST_OBJECT_CLASS_MISMATCH",message:"The source and destination object must be of the same type."},"0x0000215D":{code:"ERROR_SAM_INIT_FAILURE",message:"SAM initialization failed because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system and reboot into Safe Mode. Check the event log for detailed information."},"0x0000215E":{code:"ERROR_DS_DRA_SCHEMA_INFO_SHIP",message:"Schema information could not be included in the replication request."},"0x0000215F":{code:"ERROR_DS_DRA_SCHEMA_CONFLICT",message:"The replication operation could not be completed due to a schema incompatibility."},"0x00002160":{code:"ERROR_DS_DRA_EARLIER_SCHEMA_CONFLICT",message:"The replication operation could not be completed due to a previous schema incompatibility."},"0x00002161":{code:"ERROR_DS_DRA_OBJ_NC_MISMATCH",message:"The replication update could not be applied because either the source or the destination has not yet received information regarding a recent cross-domain move operation."},"0x00002162":{code:"ERROR_DS_NC_STILL_HAS_DSAS",message:"The requested domain could not be deleted because there exist domain controllers that still host this domain."},"0x00002163":{code:"ERROR_DS_GC_REQUIRED",message:"The requested operation can be performed only on a GC server."},"0x00002164":{code:"ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY",message:"A local group can only be a member of other local groups in the same domain."},"0x00002165":{code:"ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS",message:"Foreign security principals cannot be members of universal groups."},"0x00002166":{code:"ERROR_DS_CANT_ADD_TO_GC",message:"The attribute is not allowed to be replicated to the GC because of security reasons."},"0x00002167":{code:"ERROR_DS_NO_CHECKPOINT_WITH_PDC",message:"The checkpoint with the PDC could not be taken because too many modifications are currently being processed."},"0x00002168":{code:"ERROR_DS_SOURCE_AUDITING_NOT_ENABLED",message:"The operation requires that source domain auditing be enabled."},"0x00002169":{code:"ERROR_DS_CANT_CREATE_IN_NONDOMAIN_NC",message:"Security principal objects can only be created inside domain naming contexts."},"0x0000216A":{code:"ERROR_DS_INVALID_NAME_FOR_SPN",message:"An SPN could not be constructed because the provided host name is not in the necessary format."},"0x0000216B":{code:"ERROR_DS_FILTER_USES_CONTRUCTED_ATTRS",message:"A filter was passed that uses constructed attributes."},"0x0000216C":{code:"ERROR_DS_UNICODEPWD_NOT_IN_QUOTES",message:"The unicodePwd attribute value must be enclosed in quotation marks."},"0x0000216D":{code:"ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED",message:"Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."},"0x0000216E":{code:"ERROR_DS_MUST_BE_RUN_ON_DST_DC",message:"For security reasons, the operation must be run on the destination DC."},"0x0000216F":{code:"ERROR_DS_SRC_DC_MUST_BE_SP4_OR_GREATER",message:"For security reasons, the source DC must be NT4SP4 or greater."},"0x00002170":{code:"ERROR_DS_CANT_TREE_DELETE_CRITICAL_OBJ",message:"Critical directory service system objects cannot be deleted during tree deletion operations. The tree deletion may have been partially performed."},"0x00002171":{code:"ERROR_DS_INIT_FAILURE_CONSOLE",message:"Directory Services could not start because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system. You can use the Recovery Console to further diagnose the system."},"0x00002172":{code:"ERROR_DS_SAM_INIT_FAILURE_CONSOLE",message:"SAM initialization failed because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system. You can use the Recovery Console to further diagnose the system."},"0x00002173":{code:"ERROR_DS_FOREST_VERSION_TOO_HIGH",message:"The version of the operating system installed is incompatible with the current forest functional level. You must upgrade to a new version of the operating system before this server can become a domain controller in this forest."},"0x00002174":{code:"ERROR_DS_DOMAIN_VERSION_TOO_HIGH",message:"The version of the operating system installed is incompatible with the current domain functional level. You must upgrade to a new version of the operating system before this server can become a domain controller in this domain."},"0x00002175":{code:"ERROR_DS_FOREST_VERSION_TOO_LOW",message:"The version of the operating system installed on this server no longer supports the current forest functional level. You must raise the forest functional level before this server can become a domain controller in this forest."},"0x00002176":{code:"ERROR_DS_DOMAIN_VERSION_TOO_LOW",message:"The version of the operating system installed on this server no longer supports the current domain functional level. You must raise the domain functional level before this server can become a domain controller in this domain."},"0x00002177":{code:"ERROR_DS_INCOMPATIBLE_VERSION",message:"The version of the operating system installed on this server is incompatible with the functional level of the domain or forest."},"0x00002178":{code:"ERROR_DS_LOW_DSA_VERSION",message:"The functional level of the domain (or forest) cannot be raised to the requested value because one or more domain controllers in the domain (or forest) are at a lower, incompatible functional level."},"0x00002179":{code:"ERROR_DS_NO_BEHAVIOR_VERSION_IN_MIXEDDOMAIN",message:"The forest functional level cannot be raised to the requested value because one or more domains are still in mixed-domain mode. All domains in the forest must be in native mode for you to raise the forest functional level."},"0x0000217A":{code:"ERROR_DS_NOT_SUPPORTED_SORT_ORDER",message:"The sort order requested is not supported."},"0x0000217B":{code:"ERROR_DS_NAME_NOT_UNIQUE",message:"The requested name already exists as a unique identifier."},"0x0000217C":{code:"ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4",message:"The machine account was created before Windows NT 4.0. The account needs to be re-created."},"0x0000217D":{code:"ERROR_DS_OUT_OF_VERSION_STORE",message:"The database is out of version store."},"0x0000217E":{code:"ERROR_DS_INCOMPATIBLE_CONTROLS_USED",message:"Unable to continue operation because multiple conflicting controls were used."},"0x0000217F":{code:"ERROR_DS_NO_REF_DOMAIN",message:"Unable to find a valid security descriptor reference domain for this partition."},"0x00002180":{code:"ERROR_DS_RESERVED_LINK_ID",message:"Schema update failed: The link identifier is reserved."},"0x00002181":{code:"ERROR_DS_LINK_ID_NOT_AVAILABLE",message:"Schema update failed: There are no link identifiers available."},"0x00002182":{code:"ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER",message:"An account group cannot have a universal group as a member."},"0x00002183":{code:"ERROR_DS_MODIFYDN_DISALLOWED_BY_INSTANCE_TYPE",message:"Rename or move operations on naming context heads or read-only objects are not allowed."},"0x00002184":{code:"ERROR_DS_NO_OBJECT_MOVE_IN_SCHEMA_NC",message:"Move operations on objects in the schema naming context are not allowed."},"0x00002185":{code:"ERROR_DS_MODIFYDN_DISALLOWED_BY_FLAG",message:"A system flag has been set on the object that does not allow the object to be moved or renamed."},"0x00002186":{code:"ERROR_DS_MODIFYDN_WRONG_GRANDPARENT",message:"This object is not allowed to change its grandparent container. Moves are not forbidden on this object, but are restricted to sibling containers."},"0x00002187":{code:"ERROR_DS_NAME_ERROR_TRUST_REFERRAL",message:"Unable to resolve completely; a referral to another forest was generated."},"0x00002188":{code:"ERROR_NOT_SUPPORTED_ON_STANDARD_SERVER",message:"The requested action is not supported on a standard server."},"0x00002189":{code:"ERROR_DS_CANT_ACCESS_REMOTE_PART_OF_AD",message:"Could not access a partition of the directory service located on a remote server. Make sure at least one server is running for the partition in question."},"0x0000218A":{code:"ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE_V2",message:"The directory cannot validate the proposed naming context (or partition) name because it does not hold a replica, nor can it contact a replica of the naming context above the proposed naming context. Ensure that the parent naming context is properly registered in the DNS, and at least one replica of this naming context is reachable by the domain naming master."},"0x0000218B":{code:"ERROR_DS_THREAD_LIMIT_EXCEEDED",message:"The thread limit for this request was exceeded."},"0x0000218C":{code:"ERROR_DS_NOT_CLOSEST",message:"The GC server is not in the closest site."},"0x0000218D":{code:"ERROR_DS_CANT_DERIVE_SPN_WITHOUT_SERVER_REF",message:"The directory service cannot derive an SPN with which to mutually authenticate the target server because the corresponding server object in the local DS database has no serverReference attribute."},"0x0000218E":{code:"ERROR_DS_SINGLE_USER_MODE_FAILED",message:"The directory service failed to enter single-user mode."},"0x0000218F":{code:"ERROR_DS_NTDSCRIPT_SYNTAX_ERROR",message:"The directory service cannot parse the script because of a syntax error."},"0x00002190":{code:"ERROR_DS_NTDSCRIPT_PROCESS_ERROR",message:"The directory service cannot process the script because of an error."},"0x00002191":{code:"ERROR_DS_DIFFERENT_REPL_EPOCHS",message:"The directory service cannot perform the requested operation because the servers involved are of different replication epochs (which is usually related to a domain rename that is in progress)."},"0x00002192":{code:"ERROR_DS_DRS_EXTENSIONS_CHANGED",message:"The directory service binding must be renegotiated due to a change in the server extensions information."},"0x00002193":{code:"ERROR_DS_REPLICA_SET_CHANGE_NOT_ALLOWED_ON_DISABLED_CR",message:"The operation is not allowed on a disabled cross-reference."},"0x00002194":{code:"ERROR_DS_NO_MSDS_INTID",message:"Schema update failed: No values for msDS-IntId are available."},"0x00002195":{code:"ERROR_DS_DUP_MSDS_INTID",message:"Schema update failed: Duplicate msDS-IntId. Retry the operation."},"0x00002196":{code:"ERROR_DS_EXISTS_IN_RDNATTID",message:"Schema deletion failed: Attribute is used in rDNAttID."},"0x00002197":{code:"ERROR_DS_AUTHORIZATION_FAILED",message:"The directory service failed to authorize the request."},"0x00002198":{code:"ERROR_DS_INVALID_SCRIPT",message:"The directory service cannot process the script because it is invalid."},"0x00002199":{code:"ERROR_DS_REMOTE_CROSSREF_OP_FAILED",message:"The remote create cross-reference operation failed on the domain naming master FSMO. The operation's error is in the extended data."},"0x0000219A":{code:"ERROR_DS_CROSS_REF_BUSY",message:"A cross-reference is in use locally with the same name."},"0x0000219B":{code:"ERROR_DS_CANT_DERIVE_SPN_FOR_DELETED_DOMAIN",message:"The directory service cannot derive an SPN with which to mutually authenticate the target server because the server's domain has been deleted from the forest."},"0x0000219C":{code:"ERROR_DS_CANT_DEMOTE_WITH_WRITEABLE_NC",message:"Writable NCs prevent this DC from demoting."},"0x0000219D":{code:"ERROR_DS_DUPLICATE_ID_FOUND",message:"The requested object has a nonunique identifier and cannot be retrieved."},"0x0000219E":{code:"ERROR_DS_INSUFFICIENT_ATTR_TO_CREATE_OBJECT",message:"Insufficient attributes were given to create an object. This object may not exist because it may have been deleted and the garbage already collected."},"0x0000219F":{code:"ERROR_DS_GROUP_CONVERSION_ERROR",message:"The group cannot be converted due to attribute restrictions on the requested group type."},"0x000021A0":{code:"ERROR_DS_CANT_MOVE_APP_BASIC_GROUP",message:"Cross-domain moves of nonempty basic application groups is not allowed."},"0x000021A1":{code:"ERROR_DS_CANT_MOVE_APP_QUERY_GROUP",message:"Cross-domain moves of nonempty query-based application groups is not allowed."},"0x000021A2":{code:"ERROR_DS_ROLE_NOT_VERIFIED",message:"The FSMO role ownership could not be verified because its directory partition did not replicate successfully with at least one replication partner."},"0x000021A3":{code:"ERROR_DS_WKO_CONTAINER_CANNOT_BE_SPECIAL",message:"The target container for a redirection of a well-known object container cannot already be a special container."},"0x000021A4":{code:"ERROR_DS_DOMAIN_RENAME_IN_PROGRESS",message:"The directory service cannot perform the requested operation because a domain rename operation is in progress."},"0x000021A5":{code:"ERROR_DS_EXISTING_AD_CHILD_NC",message:"The directory service detected a child partition below the requested partition name. The partition hierarchy must be created in a top down method."},"0x000021A6":{code:"ERROR_DS_REPL_LIFETIME_EXCEEDED",message:"The directory service cannot replicate with this server because the time since the last replication with this server has exceeded the tombstone lifetime."},"0x000021A7":{code:"ERROR_DS_DISALLOWED_IN_SYSTEM_CONTAINER",message:"The requested operation is not allowed on an object under the system container."},"0x000021A8":{code:"ERROR_DS_LDAP_SEND_QUEUE_FULL",message:"The LDAP server's network send queue has filled up because the client is not processing the results of its requests fast enough. No more requests will be processed until the client catches up. If the client does not catch up then it will be disconnected."},"0x000021A9":{code:"ERROR_DS_DRA_OUT_SCHEDULE_WINDOW",message:"The scheduled replication did not take place because the system was too busy to execute the request within the schedule window. The replication queue is overloaded. Consider reducing the number of partners or decreasing the scheduled replication frequency."},"0x000021AA":{code:"ERROR_DS_POLICY_NOT_KNOWN",message:"At this time, it cannot be determined if the branch replication policy is available on the hub domain controller. Retry at a later time to account for replication latencies."},"0x000021AB":{code:"ERROR_NO_SITE_SETTINGS_OBJECT",message:"The site settings object for the specified site does not exist."},"0x000021AC":{code:"ERROR_NO_SECRETS",message:"The local account store does not contain secret material for the specified account."},"0x000021AD":{code:"ERROR_NO_WRITABLE_DC_FOUND",message:"Could not find a writable domain controller in the domain."},"0x000021AE":{code:"ERROR_DS_NO_SERVER_OBJECT",message:"The server object for the domain controller does not exist."},"0x000021AF":{code:"ERROR_DS_NO_NTDSA_OBJECT",message:"The NTDS Settings object for the domain controller does not exist."},"0x000021B0":{code:"ERROR_DS_NON_ASQ_SEARCH",message:"The requested search operation is not supported for attribute scoped query (ASQ) searches."},"0x000021B1":{code:"ERROR_DS_AUDIT_FAILURE",message:"A required audit event could not be generated for the operation."},"0x000021B2":{code:"ERROR_DS_INVALID_SEARCH_FLAG_SUBTREE",message:"The search flags for the attribute are invalid. The subtree index bit is valid only on single-valued attributes."},"0x000021B3":{code:"ERROR_DS_INVALID_SEARCH_FLAG_TUPLE",message:"The search flags for the attribute are invalid. The tuple index bit is valid only on attributes of Unicode strings."},"0x000021C2":{code:"ERROR_DS_HIGH_DSA_VERSION",message:"The functional level of the domain (or forest) cannot be lowered to the requested value."},"0x000021C7":{code:"ERROR_DS_SPN_VALUE_NOT_UNIQUE_IN_FOREST",message:"The operation failed because the SPN value provided for addition/modification is not unique forest-wide."},"0x000021C8":{code:"ERROR_DS_UPN_VALUE_NOT_UNIQUE_IN_FOREST",message:"The operation failed because the UPN value provided for addition/modification is not unique forest-wide."},"0x00002329":{code:"DNS_ERROR_RCODE_FORMAT_ERROR",message:"DNS server unable to interpret format."},"0x0000232A":{code:"DNS_ERROR_RCODE_SERVER_FAILURE",message:"DNS server failure."},"0x0000232B":{code:"DNS_ERROR_RCODE_NAME_ERROR",message:"DNS name does not exist."},"0x0000232C":{code:"DNS_ERROR_RCODE_NOT_IMPLEMENTED",message:"DNS request not supported by name server."},"0x0000232D":{code:"DNS_ERROR_RCODE_REFUSED",message:"DNS operation refused."},"0x0000232E":{code:"DNS_ERROR_RCODE_YXDOMAIN",message:"DNS name that should not exist, does exist."},"0x0000232F":{code:"DNS_ERROR_RCODE_YXRRSET",message:"DNS resource record (RR) set that should not exist, does exist."},"0x00002330":{code:"DNS_ERROR_RCODE_NXRRSET",message:"DNS RR set that should to exist, does not exist."},"0x00002331":{code:"DNS_ERROR_RCODE_NOTAUTH",message:"DNS server not authoritative for zone."},"0x00002332":{code:"DNS_ERROR_RCODE_NOTZONE",message:"DNS name in update or prereq is not in zone."},"0x00002338":{code:"DNS_ERROR_RCODE_BADSIG",message:"DNS signature failed to verify."},"0x00002339":{code:"DNS_ERROR_RCODE_BADKEY",message:"DNS bad key."},"0x0000233A":{code:"DNS_ERROR_RCODE_BADTIME",message:"DNS signature validity expired."},"0x0000251D":{code:"DNS_INFO_NO_RECORDS",message:"No records found for given DNS query."},"0x0000251E":{code:"DNS_ERROR_BAD_PACKET",message:"Bad DNS packet."},"0x0000251F":{code:"DNS_ERROR_NO_PACKET",message:"No DNS packet."},"0x00002520":{code:"DNS_ERROR_RCODE",message:"DNS error, check rcode."},"0x00002521":{code:"DNS_ERROR_UNSECURE_PACKET",message:"Unsecured DNS packet."},"0x0000254F":{code:"DNS_ERROR_INVALID_TYPE",message:"Invalid DNS type."},"0x00002550":{code:"DNS_ERROR_INVALID_IP_ADDRESS",message:"Invalid IP address."},"0x00002551":{code:"DNS_ERROR_INVALID_PROPERTY",message:"Invalid property."},"0x00002552":{code:"DNS_ERROR_TRY_AGAIN_LATER",message:"Try DNS operation again later."},"0x00002553":{code:"DNS_ERROR_NOT_UNIQUE",message:"Record for given name and type is not unique."},"0x00002554":{code:"DNS_ERROR_NON_RFC_NAME",message:"DNS name does not comply with RFC specifications."},"0x00002555":{code:"DNS_STATUS_FQDN",message:"DNS name is a fully qualified DNS name."},"0x00002556":{code:"DNS_STATUS_DOTTED_NAME",message:"DNS name is dotted (multilabel)."},"0x00002557":{code:"DNS_STATUS_SINGLE_PART_NAME",message:"DNS name is a single-part name."},"0x00002558":{code:"DNS_ERROR_INVALID_NAME_CHAR",message:"DNS name contains an invalid character."},"0x00002559":{code:"DNS_ERROR_NUMERIC_NAME",message:"DNS name is entirely numeric."},"0x0000255A":{code:"DNS_ERROR_NOT_ALLOWED_ON_ROOT_SERVER",message:"The operation requested is not permitted on a DNS root server."},"0x0000255B":{code:"DNS_ERROR_NOT_ALLOWED_UNDER_DELEGATION",message:"The record could not be created because this part of the DNS namespace has been delegated to another server."},"0x0000255C":{code:"DNS_ERROR_CANNOT_FIND_ROOT_HINTS",message:"The DNS server could not find a set of root hints."},"0x0000255D":{code:"DNS_ERROR_INCONSISTENT_ROOT_HINTS",message:"The DNS server found root hints but they were not consistent across all adapters."},"0x0000255E":{code:"DNS_ERROR_DWORD_VALUE_TOO_SMALL",message:"The specified value is too small for this parameter."},"0x0000255F":{code:"DNS_ERROR_DWORD_VALUE_TOO_LARGE",message:"The specified value is too large for this parameter."},"0x00002560":{code:"DNS_ERROR_BACKGROUND_LOADING",message:"This operation is not allowed while the DNS server is loading zones in the background. Try again later."},"0x00002561":{code:"DNS_ERROR_NOT_ALLOWED_ON_RODC",message:"The operation requested is not permitted on against a DNS server running on a read-only DC."},"0x00002581":{code:"DNS_ERROR_ZONE_DOES_NOT_EXIST",message:"DNS zone does not exist."},"0x00002582":{code:"DNS_ERROR_NO_ZONE_INFO",message:"DNS zone information not available."},"0x00002583":{code:"DNS_ERROR_INVALID_ZONE_OPERATION",message:"Invalid operation for DNS zone."},"0x00002584":{code:"DNS_ERROR_ZONE_CONFIGURATION_ERROR",message:"Invalid DNS zone configuration."},"0x00002585":{code:"DNS_ERROR_ZONE_HAS_NO_SOA_RECORD",message:"DNS zone has no start of authority (SOA) record."},"0x00002586":{code:"DNS_ERROR_ZONE_HAS_NO_NS_RECORDS",message:"DNS zone has no Name Server (NS) record."},"0x00002587":{code:"DNS_ERROR_ZONE_LOCKED",message:"DNS zone is locked."},"0x00002588":{code:"DNS_ERROR_ZONE_CREATION_FAILED",message:"DNS zone creation failed."},"0x00002589":{code:"DNS_ERROR_ZONE_ALREADY_EXISTS",message:"DNS zone already exists."},"0x0000258A":{code:"DNS_ERROR_AUTOZONE_ALREADY_EXISTS",message:"DNS automatic zone already exists."},"0x0000258B":{code:"DNS_ERROR_INVALID_ZONE_TYPE",message:"Invalid DNS zone type."},"0x0000258C":{code:"DNS_ERROR_SECONDARY_REQUIRES_MASTER_IP",message:"Secondary DNS zone requires master IP address."},"0x0000258D":{code:"DNS_ERROR_ZONE_NOT_SECONDARY",message:"DNS zone not secondary."},"0x0000258E":{code:"DNS_ERROR_NEED_SECONDARY_ADDRESSES",message:"Need secondary IP address."},"0x0000258F":{code:"DNS_ERROR_WINS_INIT_FAILED",message:"WINS initialization failed."},"0x00002590":{code:"DNS_ERROR_NEED_WINS_SERVERS",message:"Need WINS servers."},"0x00002591":{code:"DNS_ERROR_NBSTAT_INIT_FAILED",message:"NBTSTAT initialization call failed."},"0x00002592":{code:"DNS_ERROR_SOA_DELETE_INVALID",message:"Invalid delete of SOA."},"0x00002593":{code:"DNS_ERROR_FORWARDER_ALREADY_EXISTS",message:"A conditional forwarding zone already exists for that name."},"0x00002594":{code:"DNS_ERROR_ZONE_REQUIRES_MASTER_IP",message:"This zone must be configured with one or more master DNS server IP addresses."},"0x00002595":{code:"DNS_ERROR_ZONE_IS_SHUTDOWN",message:"The operation cannot be performed because this zone is shut down."},"0x000025B3":{code:"DNS_ERROR_PRIMARY_REQUIRES_DATAFILE",message:"The primary DNS zone requires a data file."},"0x000025B4":{code:"DNS_ERROR_INVALID_DATAFILE_NAME",message:"Invalid data file name for the DNS zone."},"0x000025B5":{code:"DNS_ERROR_DATAFILE_OPEN_FAILURE",message:"Failed to open the data file for the DNS zone."},"0x000025B6":{code:"DNS_ERROR_FILE_WRITEBACK_FAILED",message:"Failed to write the data file for the DNS zone."},"0x000025B7":{code:"DNS_ERROR_DATAFILE_PARSING",message:"Failure while reading datafile for DNS zone."},"0x000025E5":{code:"DNS_ERROR_RECORD_DOES_NOT_EXIST",message:"DNS record does not exist."},"0x000025E6":{code:"DNS_ERROR_RECORD_FORMAT",message:"DNS record format error."},"0x000025E7":{code:"DNS_ERROR_NODE_CREATION_FAILED",message:"Node creation failure in DNS."},"0x000025E8":{code:"DNS_ERROR_UNKNOWN_RECORD_TYPE",message:"Unknown DNS record type."},"0x000025E9":{code:"DNS_ERROR_RECORD_TIMED_OUT",message:"DNS record timed out."},"0x000025EA":{code:"DNS_ERROR_NAME_NOT_IN_ZONE",message:"Name not in DNS zone."},"0x000025EB":{code:"DNS_ERROR_CNAME_LOOP",message:"CNAME loop detected."},"0x000025EC":{code:"DNS_ERROR_NODE_IS_CNAME",message:"Node is a CNAME DNS record."},"0x000025ED":{code:"DNS_ERROR_CNAME_COLLISION",message:"A CNAME record already exists for the given name."},"0x000025EE":{code:"DNS_ERROR_RECORD_ONLY_AT_ZONE_ROOT",message:"Record is only at DNS zone root."},"0x000025EF":{code:"DNS_ERROR_RECORD_ALREADY_EXISTS",message:"DNS record already exists."},"0x000025F0":{code:"DNS_ERROR_SECONDARY_DATA",message:"Secondary DNS zone data error."},"0x000025F1":{code:"DNS_ERROR_NO_CREATE_CACHE_DATA",message:"Could not create DNS cache data."},"0x000025F2":{code:"DNS_ERROR_NAME_DOES_NOT_EXIST",message:"DNS name does not exist."},"0x000025F3":{code:"DNS_WARNING_PTR_CREATE_FAILED",message:"Could not create pointer (PTR) record."},"0x000025F4":{code:"DNS_WARNING_DOMAIN_UNDELETED",message:"DNS domain was undeleted."},"0x000025F5":{code:"DNS_ERROR_DS_UNAVAILABLE",message:"The directory service is unavailable."},"0x000025F6":{code:"DNS_ERROR_DS_ZONE_ALREADY_EXISTS",message:"DNS zone already exists in the directory service."},"0x000025F7":{code:"DNS_ERROR_NO_BOOTFILE_IF_DS_ZONE",message:"DNS server not creating or reading the boot file for the directory service integrated DNS zone."},"0x00002617":{code:"DNS_INFO_AXFR_COMPLETE",message:"DNS AXFR (zone transfer) complete."},"0x00002618":{code:"DNS_ERROR_AXFR",message:"DNS zone transfer failed."},"0x00002619":{code:"DNS_INFO_ADDED_LOCAL_WINS",message:"Added local WINS server."},"0x00002649":{code:"DNS_STATUS_CONTINUE_NEEDED",message:"Secure update call needs to continue update request."},"0x0000267B":{code:"DNS_ERROR_NO_TCPIP",message:"TCP/IP network protocol not installed."},"0x0000267C":{code:"DNS_ERROR_NO_DNS_SERVERS",message:"No DNS servers configured for local system."},"0x000026AD":{code:"DNS_ERROR_DP_DOES_NOT_EXIST",message:"The specified directory partition does not exist."},"0x000026AE":{code:"DNS_ERROR_DP_ALREADY_EXISTS",message:"The specified directory partition already exists."},"0x000026AF":{code:"DNS_ERROR_DP_NOT_ENLISTED",message:"This DNS server is not enlisted in the specified directory partition."},"0x000026B0":{code:"DNS_ERROR_DP_ALREADY_ENLISTED",message:"This DNS server is already enlisted in the specified directory partition."},"0x000026B1":{code:"DNS_ERROR_DP_NOT_AVAILABLE",message:"The directory partition is not available at this time. Wait a few minutes and try again."},"0x000026B2":{code:"DNS_ERROR_DP_FSMO_ERROR",message:"The application directory partition operation failed. The domain controller holding the domain naming master role is down or unable to service the request or is not running Windows Server 2003."},"0x00002714":{code:"WSAEINTR",message:"A blocking operation was interrupted by a call to WSACancelBlockingCall."},"0x00002719":{code:"WSAEBADF",message:"The file handle supplied is not valid."},"0x0000271D":{code:"WSAEACCES",message:"An attempt was made to access a socket in a way forbidden by its access permissions."},"0x0000271E":{code:"WSAEFAULT",message:"The system detected an invalid pointer address in attempting to use a pointer argument in a call."},"0x00002726":{code:"WSAEINVAL",message:"An invalid argument was supplied."},"0x00002728":{code:"WSAEMFILE",message:"Too many open sockets."},"0x00002733":{code:"WSAEWOULDBLOCK",message:"A nonblocking socket operation could not be completed immediately."},"0x00002734":{code:"WSAEINPROGRESS",message:"A blocking operation is currently executing."},"0x00002735":{code:"WSAEALREADY",message:"An operation was attempted on a nonblocking socket that already had an operation in progress."},"0x00002736":{code:"WSAENOTSOCK",message:"An operation was attempted on something that is not a socket."},"0x00002737":{code:"WSAEDESTADDRREQ",message:"A required address was omitted from an operation on a socket."},"0x00002738":{code:"WSAEMSGSIZE",message:"A message sent on a datagram socket was larger than the internal message buffer or some other network limit, or the buffer used to receive a datagram into was smaller than the datagram itself."},"0x00002739":{code:"WSAEPROTOTYPE",message:"A protocol was specified in the socket function call that does not support the semantics of the socket type requested."},"0x0000273A":{code:"WSAENOPROTOOPT",message:"An unknown, invalid, or unsupported option or level was specified in a getsockopt or setsockopt call."},"0x0000273B":{code:"WSAEPROTONOSUPPORT",message:"The requested protocol has not been configured into the system, or no implementation for it exists."},"0x0000273C":{code:"WSAESOCKTNOSUPPORT",message:"The support for the specified socket type does not exist in this address family."},"0x0000273D":{code:"WSAEOPNOTSUPP",message:"The attempted operation is not supported for the type of object referenced."},"0x0000273E":{code:"WSAEPFNOSUPPORT",message:"The protocol family has not been configured into the system or no implementation for it exists."},"0x0000273F":{code:"WSAEAFNOSUPPORT",message:"An address incompatible with the requested protocol was used."},"0x00002740":{code:"WSAEADDRINUSE",message:"Only one usage of each socket address (protocol/network address/port) is normally permitted."},"0x00002741":{code:"WSAEADDRNOTAVAIL",message:"The requested address is not valid in its context."},"0x00002742":{code:"WSAENETDOWN",message:"A socket operation encountered a dead network."},"0x00002743":{code:"WSAENETUNREACH",message:"A socket operation was attempted to an unreachable network."},"0x00002744":{code:"WSAENETRESET",message:"The connection has been broken due to keep-alive activity detecting a failure while the operation was in progress."},"0x00002745":{code:"WSAECONNABORTED",message:"An established connection was aborted by the software in your host machine."},"0x00002746":{code:"WSAECONNRESET",message:"An existing connection was forcibly closed by the remote host."},"0x00002747":{code:"WSAENOBUFS",message:"An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full."},"0x00002748":{code:"WSAEISCONN",message:"A connect request was made on an already connected socket."},"0x00002749":{code:"WSAENOTCONN",message:"A request to send or receive data was disallowed because the socket is not connected and (when sending on a datagram socket using a sendto call) no address was supplied."},"0x0000274A":{code:"WSAESHUTDOWN",message:"A request to send or receive data was disallowed because the socket had already been shut down in that direction with a previous shutdown call."},"0x0000274B":{code:"WSAETOOMANYREFS",message:"Too many references to a kernel object."},"0x0000274C":{code:"WSAETIMEDOUT",message:"A connection attempt failed because the connected party did not properly respond after a period of time, or the established connection failed because the connected host failed to respond."},"0x0000274D":{code:"WSAECONNREFUSED",message:"No connection could be made because the target machine actively refused it."},"0x0000274E":{code:"WSAELOOP",message:"Cannot translate name."},"0x0000274F":{code:"WSAENAMETOOLONG",message:"Name or name component was too long."},"0x00002750":{code:"WSAEHOSTDOWN",message:"A socket operation failed because the destination host was down."},"0x00002751":{code:"WSAEHOSTUNREACH",message:"A socket operation was attempted to an unreachable host."},"0x00002752":{code:"WSAENOTEMPTY",message:"Cannot remove a directory that is not empty."},"0x00002753":{code:"WSAEPROCLIM",message:"A Windows Sockets implementation may have a limit on the number of applications that may use it simultaneously."},"0x00002754":{code:"WSAEUSERS",message:"Ran out of quota."},"0x00002755":{code:"WSAEDQUOT",message:"Ran out of disk quota."},"0x00002756":{code:"WSAESTALE",message:"File handle reference is no longer available."},"0x00002757":{code:"WSAEREMOTE",message:"Item is not available locally."},"0x0000276B":{code:"WSASYSNOTREADY",message:"WSAStartup cannot function at this time because the underlying system it uses to provide network services is currently unavailable."},"0x0000276C":{code:"WSAVERNOTSUPPORTED",message:"The Windows Sockets version requested is not supported."},"0x0000276D":{code:"WSANOTINITIALISED",message:"Either the application has not called WSAStartup, or WSAStartup failed."},"0x00002775":{code:"WSAEDISCON",message:"Returned by WSARecv or WSARecvFrom to indicate that the remote party has initiated a graceful shutdown sequence."},"0x00002776":{code:"WSAENOMORE",message:"No more results can be returned by WSALookupServiceNext."},"0x00002777":{code:"WSAECANCELLED",message:"A call to WSALookupServiceEnd was made while this call was still processing. The call has been canceled."},"0x00002778":{code:"WSAEINVALIDPROCTABLE",message:"The procedure call table is invalid."},"0x00002779":{code:"WSAEINVALIDPROVIDER",message:"The requested service provider is invalid."},"0x0000277A":{code:"WSAEPROVIDERFAILEDINIT",message:"The requested service provider could not be loaded or initialized."},"0x0000277B":{code:"WSASYSCALLFAILURE",message:"A system call that should never fail has failed."},"0x0000277C":{code:"WSASERVICE_NOT_FOUND",message:"No such service is known. The service cannot be found in the specified namespace."},"0x0000277D":{code:"WSATYPE_NOT_FOUND",message:"The specified class was not found."},"0x0000277E":{code:"WSA_E_NO_MORE",message:"No more results can be returned by WSALookupServiceNext."},"0x0000277F":{code:"WSA_E_CANCELLED",message:"A call to WSALookupServiceEnd was made while this call was still processing. The call has been canceled."},"0x00002780":{code:"WSAEREFUSED",message:"A database query failed because it was actively refused."},"0x00002AF9":{code:"WSAHOST_NOT_FOUND",message:"No such host is known."},"0x00002AFA":{code:"WSATRY_AGAIN",message:"This is usually a temporary error during host name resolution and means that the local server did not receive a response from an authoritative server."},"0x00002AFB":{code:"WSANO_RECOVERY",message:"A nonrecoverable error occurred during a database lookup."},"0x00002AFC":{code:"WSANO_DATA",message:"The requested name is valid, but no data of the requested type was found."},"0x00002AFD":{code:"WSA_QOS_RECEIVERS",message:"At least one reserve has arrived."},"0x00002AFE":{code:"WSA_QOS_SENDERS",message:"At least one path has arrived."},"0x00002AFF":{code:"WSA_QOS_NO_SENDERS",message:"There are no senders."},"0x00002B00":{code:"WSA_QOS_NO_RECEIVERS",message:"There are no receivers."},"0x00002B01":{code:"WSA_QOS_REQUEST_CONFIRMED",message:"Reserve has been confirmed."},"0x00002B02":{code:"WSA_QOS_ADMISSION_FAILURE",message:"Error due to lack of resources."},"0x00002B03":{code:"WSA_QOS_POLICY_FAILURE",message:"Rejected for administrative reasons\u2014bad credentials."},"0x00002B04":{code:"WSA_QOS_BAD_STYLE",message:"Unknown or conflicting style."},"0x00002B05":{code:"WSA_QOS_BAD_OBJECT",message:"There is a problem with some part of the filterspec or provider-specific buffer in general."},"0x00002B06":{code:"WSA_QOS_TRAFFIC_CTRL_ERROR",message:"There is a problem with some part of the flowspec."},"0x00002B07":{code:"WSA_QOS_GENERIC_ERROR",message:"General quality of serve (QOS) error."},"0x00002B08":{code:"WSA_QOS_ESERVICETYPE",message:"An invalid or unrecognized service type was found in the flowspec."},"0x00002B09":{code:"WSA_QOS_EFLOWSPEC",message:"An invalid or inconsistent flowspec was found in the QOS structure."},"0x00002B0A":{code:"WSA_QOS_EPROVSPECBUF",message:"Invalid QOS provider-specific buffer."},"0x00002B0B":{code:"WSA_QOS_EFILTERSTYLE",message:"An invalid QOS filter style was used."},"0x00002B0C":{code:"WSA_QOS_EFILTERTYPE",message:"An invalid QOS filter type was used."},"0x00002B0D":{code:"WSA_QOS_EFILTERCOUNT",message:"An incorrect number of QOS FILTERSPECs were specified in the FLOWDESCRIPTOR."},"0x00002B0E":{code:"WSA_QOS_EOBJLENGTH",message:"An object with an invalid ObjectLength field was specified in the QOS provider-specific buffer."},"0x00002B0F":{code:"WSA_QOS_EFLOWCOUNT",message:"An incorrect number of flow descriptors was specified in the QOS structure."},"0x00002B10":{code:"WSA_QOS_EUNKOWNPSOBJ",message:"An unrecognized object was found in the QOS provider-specific buffer."},"0x00002B11":{code:"WSA_QOS_EPOLICYOBJ",message:"An invalid policy object was found in the QOS provider-specific buffer."},"0x00002B12":{code:"WSA_QOS_EFLOWDESC",message:"An invalid QOS flow descriptor was found in the flow descriptor list."},"0x00002B13":{code:"WSA_QOS_EPSFLOWSPEC",message:"An invalid or inconsistent flowspec was found in the QOS provider-specific buffer."},"0x00002B14":{code:"WSA_QOS_EPSFILTERSPEC",message:"An invalid FILTERSPEC was found in the QOS provider-specific buffer."},"0x00002B15":{code:"WSA_QOS_ESDMODEOBJ",message:"An invalid shape discard mode object was found in the QOS provider-specific buffer."},"0x00002B16":{code:"WSA_QOS_ESHAPERATEOBJ",message:"An invalid shaping rate object was found in the QOS provider-specific buffer."},"0x00002B17":{code:"WSA_QOS_RESERVED_PETYPE",message:"A reserved policy element was found in the QOS provider-specific buffer."},"0x000032C8":{code:"ERROR_IPSEC_QM_POLICY_EXISTS",message:"The specified quick mode policy already exists."},"0x000032C9":{code:"ERROR_IPSEC_QM_POLICY_NOT_FOUND",message:"The specified quick mode policy was not found."},"0x000032CA":{code:"ERROR_IPSEC_QM_POLICY_IN_USE",message:"The specified quick mode policy is being used."},"0x000032CB":{code:"ERROR_IPSEC_MM_POLICY_EXISTS",message:"The specified main mode policy already exists."},"0x000032CC":{code:"ERROR_IPSEC_MM_POLICY_NOT_FOUND",message:"The specified main mode policy was not found."},"0x000032CD":{code:"ERROR_IPSEC_MM_POLICY_IN_USE",message:"The specified main mode policy is being used."},"0x000032CE":{code:"ERROR_IPSEC_MM_FILTER_EXISTS",message:"The specified main mode filter already exists."},"0x000032CF":{code:"ERROR_IPSEC_MM_FILTER_NOT_FOUND",message:"The specified main mode filter was not found."},"0x000032D0":{code:"ERROR_IPSEC_TRANSPORT_FILTER_EXISTS",message:"The specified transport mode filter already exists."},"0x000032D1":{code:"ERROR_IPSEC_TRANSPORT_FILTER_NOT_FOUND",message:"The specified transport mode filter does not exist."},"0x000032D2":{code:"ERROR_IPSEC_MM_AUTH_EXISTS",message:"The specified main mode authentication list exists."},"0x000032D3":{code:"ERROR_IPSEC_MM_AUTH_NOT_FOUND",message:"The specified main mode authentication list was not found."},"0x000032D4":{code:"ERROR_IPSEC_MM_AUTH_IN_USE",message:"The specified main mode authentication list is being used."},"0x000032D5":{code:"ERROR_IPSEC_DEFAULT_MM_POLICY_NOT_FOUND",message:"The specified default main mode policy was not found."},"0x000032D6":{code:"ERROR_IPSEC_DEFAULT_MM_AUTH_NOT_FOUND",message:"The specified default main mode authentication list was not found."},"0x000032D7":{code:"ERROR_IPSEC_DEFAULT_QM_POLICY_NOT_FOUND",message:"The specified default quick mode policy was not found."},"0x000032D8":{code:"ERROR_IPSEC_TUNNEL_FILTER_EXISTS",message:"The specified tunnel mode filter exists."},"0x000032D9":{code:"ERROR_IPSEC_TUNNEL_FILTER_NOT_FOUND",message:"The specified tunnel mode filter was not found."},"0x000032DA":{code:"ERROR_IPSEC_MM_FILTER_PENDING_DELETION",message:"The main mode filter is pending deletion."},"0x000032DB":{code:"ERROR_IPSEC_TRANSPORT_FILTER_ENDING_DELETION",message:"The transport filter is pending deletion."},"0x000032DC":{code:"ERROR_IPSEC_TUNNEL_FILTER_PENDING_DELETION",message:"The tunnel filter is pending deletion."},"0x000032DD":{code:"ERROR_IPSEC_MM_POLICY_PENDING_ELETION",message:"The main mode policy is pending deletion."},"0x000032DE":{code:"ERROR_IPSEC_MM_AUTH_PENDING_DELETION",message:"The main mode authentication bundle is pending deletion."},"0x000032DF":{code:"ERROR_IPSEC_QM_POLICY_PENDING_DELETION",message:"The quick mode policy is pending deletion."},"0x000032E0":{code:"WARNING_IPSEC_MM_POLICY_PRUNED",message:"The main mode policy was successfully added, but some of the requested offers are not supported."},"0x000032E1":{code:"WARNING_IPSEC_QM_POLICY_PRUNED",message:"The quick mode policy was successfully added, but some of the requested offers are not supported."},"0x000035E8":{code:"ERROR_IPSEC_IKE_NEG_STATUS_BEGIN",message:"Starts the list of frequencies of various IKE Win32 error codes encountered during negotiations."},"0x000035E9":{code:"ERROR_IPSEC_IKE_AUTH_FAIL",message:"The IKE authentication credentials are unacceptable."},"0x000035EA":{code:"ERROR_IPSEC_IKE_ATTRIB_FAIL",message:"The IKE security attributes are unacceptable."},"0x000035EB":{code:"ERROR_IPSEC_IKE_NEGOTIATION_PENDING",message:"The IKE negotiation is in progress."},"0x000035EC":{code:"ERROR_IPSEC_IKE_GENERAL_PROCESSING_ERROR",message:"General processing error."},"0x000035ED":{code:"ERROR_IPSEC_IKE_TIMED_OUT",message:"Negotiation timed out."},"0x000035EE":{code:"ERROR_IPSEC_IKE_NO_CERT",message:"The IKE failed to find a valid machine certificate. Contact your network security administrator about installing a valid certificate in the appropriate certificate store."},"0x000035EF":{code:"ERROR_IPSEC_IKE_SA_DELETED",message:"The IKE security association (SA) was deleted by a peer before it was completely established."},"0x000035F0":{code:"ERROR_IPSEC_IKE_SA_REAPED",message:"The IKE SA was deleted before it was completely established."},"0x000035F1":{code:"ERROR_IPSEC_IKE_MM_ACQUIRE_DROP",message:"The negotiation request sat in the queue too long."},"0x000035F2":{code:"ERROR_IPSEC_IKE_QM_ACQUIRE_DROP",message:"The negotiation request sat in the queue too long."},"0x000035F3":{code:"ERROR_IPSEC_IKE_QUEUE_DROP_MM",message:"The negotiation request sat in the queue too long."},"0x000035F4":{code:"ERROR_IPSEC_IKE_QUEUE_DROP_NO_MM",message:"The negotiation request sat in the queue too long."},"0x000035F5":{code:"ERROR_IPSEC_IKE_DROP_NO_RESPONSE",message:"There was no response from a peer."},"0x000035F6":{code:"ERROR_IPSEC_IKE_MM_DELAY_DROP",message:"The negotiation took too long."},"0x000035F7":{code:"ERROR_IPSEC_IKE_QM_DELAY_DROP",message:"The negotiation took too long."},"0x000035F8":{code:"ERROR_IPSEC_IKE_ERROR",message:"An unknown error occurred."},"0x000035F9":{code:"ERROR_IPSEC_IKE_CRL_FAILED",message:"The certificate revocation check failed."},"0x000035FA":{code:"ERROR_IPSEC_IKE_INVALID_KEY_USAGE",message:"Invalid certificate key usage."},"0x000035FB":{code:"ERROR_IPSEC_IKE_INVALID_CERT_TYPE",message:"Invalid certificate type."},"0x000035FC":{code:"ERROR_IPSEC_IKE_NO_PRIVATE_KEY",message:"The IKE negotiation failed because the machine certificate used does not have a private key. IPsec certificates require a private key. Contact your network security administrator about a certificate that has a private key."},"0x000035FE":{code:"ERROR_IPSEC_IKE_DH_FAIL",message:"There was a failure in the Diffie-Hellman computation."},"0x00003600":{code:"ERROR_IPSEC_IKE_INVALID_HEADER",message:"Invalid header."},"0x00003601":{code:"ERROR_IPSEC_IKE_NO_POLICY",message:"No policy configured."},"0x00003602":{code:"ERROR_IPSEC_IKE_INVALID_SIGNATURE",message:"Failed to verify signature."},"0x00003603":{code:"ERROR_IPSEC_IKE_KERBEROS_ERROR",message:"Failed to authenticate using Kerberos."},"0x00003604":{code:"ERROR_IPSEC_IKE_NO_PUBLIC_KEY",message:"The peer's certificate did not have a public key."},"0x00003605":{code:"ERROR_IPSEC_IKE_PROCESS_ERR",message:"Error processing the error payload."},"0x00003606":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_SA",message:"Error processing the SA payload."},"0x00003607":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_PROP",message:"Error processing the proposal payload."},"0x00003608":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_TRANS",message:"Error processing the transform payload."},"0x00003609":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_KE",message:"Error processing the key exchange payload."},"0x0000360A":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_ID",message:"Error processing the ID payload."},"0x0000360B":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_CERT",message:"Error processing the certification payload."},"0x0000360C":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_CERT_REQ",message:"Error processing the certificate request payload."},"0x0000360D":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_HASH",message:"Error processing the hash payload."},"0x0000360E":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_SIG",message:"Error processing the signature payload."},"0x0000360F":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_NONCE",message:"Error processing the nonce payload."},"0x00003610":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_NOTIFY",message:"Error processing the notify payload."},"0x00003611":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_DELETE",message:"Error processing the delete payload."},"0x00003612":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_VENDOR",message:"Error processing the VendorId payload."},"0x00003613":{code:"ERROR_IPSEC_IKE_INVALID_PAYLOAD",message:"Invalid payload received."},"0x00003614":{code:"ERROR_IPSEC_IKE_LOAD_SOFT_SA",message:"Soft SA loaded."},"0x00003615":{code:"ERROR_IPSEC_IKE_SOFT_SA_TORN_DOWN",message:"Soft SA torn down."},"0x00003616":{code:"ERROR_IPSEC_IKE_INVALID_COOKIE",message:"Invalid cookie received."},"0x00003617":{code:"ERROR_IPSEC_IKE_NO_PEER_CERT",message:"Peer failed to send valid machine certificate."},"0x00003618":{code:"ERROR_IPSEC_IKE_PEER_CRL_FAILED",message:"Certification revocation check of peer's certificate failed."},"0x00003619":{code:"ERROR_IPSEC_IKE_POLICY_CHANGE",message:"New policy invalidated SAs formed with the old policy."},"0x0000361A":{code:"ERROR_IPSEC_IKE_NO_MM_POLICY",message:"There is no available main mode IKE policy."},"0x0000361B":{code:"ERROR_IPSEC_IKE_NOTCBPRIV",message:"Failed to enabled trusted computer base (TCB) privilege."},"0x0000361C":{code:"ERROR_IPSEC_IKE_SECLOADFAIL",message:"Failed to load SECURITY.DLL."},"0x0000361D":{code:"ERROR_IPSEC_IKE_FAILSSPINIT",message:"Failed to obtain the security function table dispatch address from the SSPI."},"0x0000361E":{code:"ERROR_IPSEC_IKE_FAILQUERYSSP",message:"Failed to query the Kerberos package to obtain the max token size."},"0x0000361F":{code:"ERROR_IPSEC_IKE_SRVACQFAIL",message:"Failed to obtain the Kerberos server credentials for the Internet Security Association and Key Management Protocol (ISAKMP)/ERROR_IPSEC_IKE service. Kerberos authentication will not function. The most likely reason for this is lack of domain membership. This is normal if your computer is a member of a workgroup."},"0x00003620":{code:"ERROR_IPSEC_IKE_SRVQUERYCRED",message:"Failed to determine the SSPI principal name for ISAKMP/ERROR_IPSEC_IKE service (QueryCredentialsAttributes)."},"0x00003621":{code:"ERROR_IPSEC_IKE_GETSPIFAIL",message:"Failed to obtain a new service provider interface (SPI) for the inbound SA from the IPsec driver. The most common cause for this is that the driver does not have the correct filter. Check your policy to verify the filters."},"0x00003622":{code:"ERROR_IPSEC_IKE_INVALID_FILTER",message:"Given filter is invalid."},"0x00003623":{code:"ERROR_IPSEC_IKE_OUT_OF_MEMORY",message:"Memory allocation failed."},"0x00003624":{code:"ERROR_IPSEC_IKE_ADD_UPDATE_KEY_FAILED",message:"Failed to add an SA to the IPSec driver. The most common cause for this is if the IKE negotiation took too long to complete. If the problem persists, reduce the load on the faulting machine."},"0x00003625":{code:"ERROR_IPSEC_IKE_INVALID_POLICY",message:"Invalid policy."},"0x00003626":{code:"ERROR_IPSEC_IKE_UNKNOWN_DOI",message:"Invalid digital object identifier (DOI)."},"0x00003627":{code:"ERROR_IPSEC_IKE_INVALID_SITUATION",message:"Invalid situation."},"0x00003628":{code:"ERROR_IPSEC_IKE_DH_FAILURE",message:"Diffie-Hellman failure."},"0x00003629":{code:"ERROR_IPSEC_IKE_INVALID_GROUP",message:"Invalid Diffie-Hellman group."},"0x0000362A":{code:"ERROR_IPSEC_IKE_ENCRYPT",message:"Error encrypting payload."},"0x0000362B":{code:"ERROR_IPSEC_IKE_DECRYPT",message:"Error decrypting payload."},"0x0000362C":{code:"ERROR_IPSEC_IKE_POLICY_MATCH",message:"Policy match error."},"0x0000362D":{code:"ERROR_IPSEC_IKE_UNSUPPORTED_ID",message:"Unsupported ID."},"0x0000362E":{code:"ERROR_IPSEC_IKE_INVALID_HASH",message:"Hash verification failed."},"0x0000362F":{code:"ERROR_IPSEC_IKE_INVALID_HASH_ALG",message:"Invalid hash algorithm."},"0x00003630":{code:"ERROR_IPSEC_IKE_INVALID_HASH_SIZE",message:"Invalid hash size."},"0x00003631":{code:"ERROR_IPSEC_IKE_INVALID_ENCRYPT_ALG",message:"Invalid encryption algorithm."},"0x00003632":{code:"ERROR_IPSEC_IKE_INVALID_AUTH_ALG",message:"Invalid authentication algorithm."},"0x00003633":{code:"ERROR_IPSEC_IKE_INVALID_SIG",message:"Invalid certificate signature."},"0x00003634":{code:"ERROR_IPSEC_IKE_LOAD_FAILED",message:"Load failed."},"0x00003635":{code:"ERROR_IPSEC_IKE_RPC_DELETE",message:"Deleted by using an RPC call."},"0x00003636":{code:"ERROR_IPSEC_IKE_BENIGN_REINIT",message:"A temporary state was created to perform reinitialization. This is not a real failure."},"0x00003637":{code:"ERROR_IPSEC_IKE_INVALID_RESPONDER_LIFETIME_NOTIFY",message:"The lifetime value received in the Responder Lifetime Notify is below the Windows 2000 configured minimum value. Fix the policy on the peer machine."},"0x00003639":{code:"ERROR_IPSEC_IKE_INVALID_CERT_KEYLEN",message:"Key length in the certificate is too small for configured security requirements."},"0x0000363A":{code:"ERROR_IPSEC_IKE_MM_LIMIT",message:"Maximum number of established MM SAs to peer exceeded."},"0x0000363B":{code:"ERROR_IPSEC_IKE_NEGOTIATION_DISABLED",message:"The IKE received a policy that disables negotiation."},"0x0000363C":{code:"ERROR_IPSEC_IKE_QM_LIMIT",message:"Reached maximum quick mode limit for the main mode. New main mode will be started."},"0x0000363D":{code:"ERROR_IPSEC_IKE_MM_EXPIRED",message:"Main mode SA lifetime expired or the peer sent a main mode delete."},"0x0000363E":{code:"ERROR_IPSEC_IKE_PEER_MM_ASSUMED_INVALID",message:"Main mode SA assumed to be invalid because peer stopped responding."},"0x0000363F":{code:"ERROR_IPSEC_IKE_CERT_CHAIN_POLICY_MISMATCH",message:"Certificate does not chain to a trusted root in IPsec policy."},"0x00003640":{code:"ERROR_IPSEC_IKE_UNEXPECTED_MESSAGE_ID",message:"Received unexpected message ID."},"0x00003641":{code:"ERROR_IPSEC_IKE_INVALID_UMATTS",message:"Received invalid AuthIP user mode attributes."},"0x00003642":{code:"ERROR_IPSEC_IKE_DOS_COOKIE_SENT",message:"Sent DOS cookie notify to initiator."},"0x00003643":{code:"ERROR_IPSEC_IKE_SHUTTING_DOWN",message:"The IKE service is shutting down."},"0x00003644":{code:"ERROR_IPSEC_IKE_CGA_AUTH_FAILED",message:"Could not verify the binding between the color graphics adapter (CGA) address and the certificate."},"0x00003645":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_NATOA",message:"Error processing the NatOA payload."},"0x00003646":{code:"ERROR_IPSEC_IKE_INVALID_MM_FOR_QM",message:"The parameters of the main mode are invalid for this quick mode."},"0x00003647":{code:"ERROR_IPSEC_IKE_QM_EXPIRED",message:"The quick mode SA was expired by the IPsec driver."},"0x00003648":{code:"ERROR_IPSEC_IKE_TOO_MANY_FILTERS",message:"Too many dynamically added IKEEXT filters were detected."},"0x00003649":{code:"ERROR_IPSEC_IKE_NEG_STATUS_END",message:"Ends the list of frequencies of various IKE Win32 error codes encountered during negotiations."},"0x000036B0":{code:"ERROR_SXS_SECTION_NOT_FOUND",message:"The requested section was not present in the activation context."},"0x000036B1":{code:"ERROR_SXS_CANT_GEN_ACTCTX",message:"The application has failed to start because its side-by-side configuration is incorrect. See the application event log for more detail."},"0x000036B2":{code:"ERROR_SXS_INVALID_ACTCTXDATA_FORMAT",message:"The application binding data format is invalid."},"0x000036B3":{code:"ERROR_SXS_ASSEMBLY_NOT_FOUND",message:"The referenced assembly is not installed on your system."},"0x000036B4":{code:"ERROR_SXS_MANIFEST_FORMAT_ERROR",message:"The manifest file does not begin with the required tag and format information."},"0x000036B5":{code:"ERROR_SXS_MANIFEST_PARSE_ERROR",message:"The manifest file contains one or more syntax errors."},"0x000036B6":{code:"ERROR_SXS_ACTIVATION_CONTEXT_DISABLED",message:"The application attempted to activate a disabled activation context."},"0x000036B7":{code:"ERROR_SXS_KEY_NOT_FOUND",message:"The requested lookup key was not found in any active activation context."},"0x000036B8":{code:"ERROR_SXS_VERSION_CONFLICT",message:"A component version required by the application conflicts with another active component version."},"0x000036B9":{code:"ERROR_SXS_WRONG_SECTION_TYPE",message:"The type requested activation context section does not match the query API used."},"0x000036BA":{code:"ERROR_SXS_THREAD_QUERIES_DISABLED",message:"Lack of system resources has required isolated activation to be disabled for the current thread of execution."},"0x000036BB":{code:"ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET",message:"An attempt to set the process default activation context failed because the process default activation context was already set."},"0x000036BC":{code:"ERROR_SXS_UNKNOWN_ENCODING_GROUP",message:"The encoding group identifier specified is not recognized."},"0x000036BD":{code:"ERROR_SXS_UNKNOWN_ENCODING",message:"The encoding requested is not recognized."},"0x000036BE":{code:"ERROR_SXS_INVALID_XML_NAMESPACE_URI",message:"The manifest contains a reference to an invalid URI."},"0x000036BF":{code:"ERROR_SXS_ROOT_MANIFEST_DEPENDENCY_OT_INSTALLED",message:"The application manifest contains a reference to a dependent assembly that is not installed."},"0x000036C0":{code:"ERROR_SXS_LEAF_MANIFEST_DEPENDENCY_NOT_INSTALLED",message:"The manifest for an assembly used by the application has a reference to a dependent assembly that is not installed."},"0x000036C1":{code:"ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE",message:"The manifest contains an attribute for the assembly identity that is not valid."},"0x000036C2":{code:"ERROR_SXS_MANIFEST_MISSING_REQUIRED_DEFAULT_NAMESPACE",message:"The manifest is missing the required default namespace specification on the assembly element."},"0x000036C3":{code:"ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE",message:'The manifest has a default namespace specified on the assembly element but its value is not urn:schemas-microsoft-com:asm.v1"."'},"0x000036C4":{code:"ERROR_SXS_PRIVATE_MANIFEST_CROSS_PATH_WITH_REPARSE_POINT",message:"The private manifest probed has crossed the reparse-point-associated path."},"0x000036C5":{code:"ERROR_SXS_DUPLICATE_DLL_NAME",message:"Two or more components referenced directly or indirectly by the application manifest have files by the same name."},"0x000036C6":{code:"ERROR_SXS_DUPLICATE_WINDOWCLASS_NAME",message:"Two or more components referenced directly or indirectly by the application manifest have window classes with the same name."},"0x000036C7":{code:"ERROR_SXS_DUPLICATE_CLSID",message:"Two or more components referenced directly or indirectly by the application manifest have the same COM server CLSIDs."},"0x000036C8":{code:"ERROR_SXS_DUPLICATE_IID",message:"Two or more components referenced directly or indirectly by the application manifest have proxies for the same COM interface IIDs."},"0x000036C9":{code:"ERROR_SXS_DUPLICATE_TLBID",message:"Two or more components referenced directly or indirectly by the application manifest have the same COM type library TLBIDs."},"0x000036CA":{code:"ERROR_SXS_DUPLICATE_PROGID",message:"Two or more components referenced directly or indirectly by the application manifest have the same COM ProgIDs."},"0x000036CB":{code:"ERROR_SXS_DUPLICATE_ASSEMBLY_NAME",message:"Two or more components referenced directly or indirectly by the application manifest are different versions of the same component, which is not permitted."},"0x000036CC":{code:"ERROR_SXS_FILE_HASH_MISMATCH",message:"A component's file does not match the verification information present in the component manifest."},"0x000036CD":{code:"ERROR_SXS_POLICY_PARSE_ERROR",message:"The policy manifest contains one or more syntax errors."},"0x000036CE":{code:"ERROR_SXS_XML_E_MISSINGQUOTE",message:"Manifest Parse Error: A string literal was expected, but no opening quotation mark was found."},"0x000036CF":{code:"ERROR_SXS_XML_E_COMMENTSYNTAX",message:"Manifest Parse Error: Incorrect syntax was used in a comment."},"0x000036D0":{code:"ERROR_SXS_XML_E_BADSTARTNAMECHAR",message:"Manifest Parse Error: A name started with an invalid character."},"0x000036D1":{code:"ERROR_SXS_XML_E_BADNAMECHAR",message:"Manifest Parse Error: A name contained an invalid character."},"0x000036D2":{code:"ERROR_SXS_XML_E_BADCHARINSTRING",message:"Manifest Parse Error: A string literal contained an invalid character."},"0x000036D3":{code:"ERROR_SXS_XML_E_XMLDECLSYNTAX",message:"Manifest Parse Error: Invalid syntax for an XML declaration."},"0x000036D4":{code:"ERROR_SXS_XML_E_BADCHARDATA",message:"Manifest Parse Error: An Invalid character was found in text content."},"0x000036D5":{code:"ERROR_SXS_XML_E_MISSINGWHITESPACE",message:"Manifest Parse Error: Required white space was missing."},"0x000036D6":{code:"ERROR_SXS_XML_E_EXPECTINGTAGEND",message:"Manifest Parse Error: The angle bracket (>) character was expected."},"0x000036D7":{code:"ERROR_SXS_XML_E_MISSINGSEMICOLON",message:"Manifest Parse Error: A semicolon (;) was expected."},"0x000036D8":{code:"ERROR_SXS_XML_E_UNBALANCEDPAREN",message:"Manifest Parse Error: Unbalanced parentheses."},"0x000036D9":{code:"ERROR_SXS_XML_E_INTERNALERROR",message:"Manifest Parse Error: Internal error."},"0x000036DA":{code:"ERROR_SXS_XML_E_UNEXPECTED_WHITESPACE",message:"Manifest Parse Error: Whitespace is not allowed at this location."},"0x000036DB":{code:"ERROR_SXS_XML_E_INCOMPLETE_ENCODING",message:"Manifest Parse Error: End of file reached in invalid state for current encoding."},"0x000036DC":{code:"ERROR_SXS_XML_E_MISSING_PAREN",message:"Manifest Parse Error: Missing parenthesis."},"0x000036DD":{code:"ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE",message:`Manifest Parse Error: A single (') or double (") quotation mark is missing.`},"0x000036DE":{code:"ERROR_SXS_XML_E_MULTIPLE_COLONS",message:"Manifest Parse Error: Multiple colons are not allowed in a name."},"0x000036DF":{code:"ERROR_SXS_XML_E_INVALID_DECIMAL",message:"Manifest Parse Error: Invalid character for decimal digit."},"0x000036E0":{code:"ERROR_SXS_XML_E_INVALID_HEXIDECIMAL",message:"Manifest Parse Error: Invalid character for hexadecimal digit."},"0x000036E1":{code:"ERROR_SXS_XML_E_INVALID_UNICODE",message:"Manifest Parse Error: Invalid Unicode character value for this platform."},"0x000036E2":{code:"ERROR_SXS_XML_E_WHITESPACEORQUESTIONMARK",message:"Manifest Parse Error: Expecting whitespace or question mark (?)."},"0x000036E3":{code:"ERROR_SXS_XML_E_UNEXPECTEDENDTAG",message:"Manifest Parse Error: End tag was not expected at this location."},"0x000036E4":{code:"ERROR_SXS_XML_E_UNCLOSEDTAG",message:"Manifest Parse Error: The following tags were not closed: %1."},"0x000036E5":{code:"ERROR_SXS_XML_E_DUPLICATEATTRIBUTE",message:"Manifest Parse Error: Duplicate attribute."},"0x000036E6":{code:"ERROR_SXS_XML_E_MULTIPLEROOTS",message:"Manifest Parse Error: Only one top-level element is allowed in an XML document."},"0x000036E7":{code:"ERROR_SXS_XML_E_INVALIDATROOTLEVEL",message:"Manifest Parse Error: Invalid at the top level of the document."},"0x000036E8":{code:"ERROR_SXS_XML_E_BADXMLDECL",message:"Manifest Parse Error: Invalid XML declaration."},"0x000036E9":{code:"ERROR_SXS_XML_E_MISSINGROOT",message:"Manifest Parse Error: XML document must have a top-level element."},"0x000036EA":{code:"ERROR_SXS_XML_E_UNEXPECTEDEOF",message:"Manifest Parse Error: Unexpected end of file."},"0x000036EB":{code:"ERROR_SXS_XML_E_BADPEREFINSUBSET",message:"Manifest Parse Error: Parameter entities cannot be used inside markup declarations in an internal subset."},"0x000036EC":{code:"ERROR_SXS_XML_E_UNCLOSEDSTARTTAG",message:"Manifest Parse Error: Element was not closed."},"0x000036ED":{code:"ERROR_SXS_XML_E_UNCLOSEDENDTAG",message:"Manifest Parse Error: End element was missing the angle bracket (>) character."},"0x000036EE":{code:"ERROR_SXS_XML_E_UNCLOSEDSTRING",message:"Manifest Parse Error: A string literal was not closed."},"0x000036EF":{code:"ERROR_SXS_XML_E_UNCLOSEDCOMMENT",message:"Manifest Parse Error: A comment was not closed."},"0x000036F0":{code:"ERROR_SXS_XML_E_UNCLOSEDDECL",message:"Manifest Parse Error: A declaration was not closed."},"0x000036F1":{code:"ERROR_SXS_XML_E_UNCLOSEDCDATA",message:"Manifest Parse Error: A CDATA section was not closed."},"0x000036F2":{code:"ERROR_SXS_XML_E_RESERVEDNAMESPACE",message:'Manifest Parse Error: The namespace prefix is not allowed to start with the reserved string xml"."'},"0x000036F3":{code:"ERROR_SXS_XML_E_INVALIDENCODING",message:"Manifest Parse Error: System does not support the specified encoding."},"0x000036F4":{code:"ERROR_SXS_XML_E_INVALIDSWITCH",message:"Manifest Parse Error: Switch from current encoding to specified encoding not supported."},"0x000036F5":{code:"ERROR_SXS_XML_E_BADXMLCASE",message:'Manifest Parse Error: The name "xml" is reserved and must be lowercase.'},"0x000036F6":{code:"ERROR_SXS_XML_E_INVALID_STANDALONE",message:'Manifest Parse Error: The stand-alone attribute must have the value "yes" or "no".'},"0x000036F7":{code:"ERROR_SXS_XML_E_UNEXPECTED_STANDALONE",message:"Manifest Parse Error: The stand-alone attribute cannot be used in external entities."},"0x000036F8":{code:"ERROR_SXS_XML_E_INVALID_VERSION",message:"Manifest Parse Error: Invalid version number."},"0x000036F9":{code:"ERROR_SXS_XML_E_MISSINGEQUALS",message:"Manifest Parse Error: Missing equal sign (=) between the attribute and the attribute value."},"0x000036FA":{code:"ERROR_SXS_PROTECTION_RECOVERY_FAILED",message:"Assembly Protection Error: Unable to recover the specified assembly."},"0x000036FB":{code:"ERROR_SXS_PROTECTION_PUBLIC_KEY_OO_SHORT",message:"Assembly Protection Error: The public key for an assembly was too short to be allowed."},"0x000036FC":{code:"ERROR_SXS_PROTECTION_CATALOG_NOT_VALID",message:"Assembly Protection Error: The catalog for an assembly is not valid, or does not match the assembly's manifest."},"0x000036FD":{code:"ERROR_SXS_UNTRANSLATABLE_HRESULT",message:"An HRESULT could not be translated to a corresponding Win32 error code."},"0x000036FE":{code:"ERROR_SXS_PROTECTION_CATALOG_FILE_MISSING",message:"Assembly Protection Error: The catalog for an assembly is missing."},"0x000036FF":{code:"ERROR_SXS_MISSING_ASSEMBLY_IDENTITY_ATTRIBUTE",message:"The supplied assembly identity is missing one or more attributes that must be present in this context."},"0x00003700":{code:"ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME",message:"The supplied assembly identity has one or more attribute names that contain characters not permitted in XML names."},"0x00003701":{code:"ERROR_SXS_ASSEMBLY_MISSING",message:"The referenced assembly could not be found."},"0x00003702":{code:"ERROR_SXS_CORRUPT_ACTIVATION_STACK",message:"The activation context activation stack for the running thread of execution is corrupt."},"0x00003703":{code:"ERROR_SXS_CORRUPTION",message:"The application isolation metadata for this process or thread has become corrupt."},"0x00003704":{code:"ERROR_SXS_EARLY_DEACTIVATION",message:"The activation context being deactivated is not the most recently activated one."},"0x00003705":{code:"ERROR_SXS_INVALID_DEACTIVATION",message:"The activation context being deactivated is not active for the current thread of execution."},"0x00003706":{code:"ERROR_SXS_MULTIPLE_DEACTIVATION",message:"The activation context being deactivated has already been deactivated."},"0x00003707":{code:"ERROR_SXS_PROCESS_TERMINATION_REQUESTED",message:"A component used by the isolation facility has requested to terminate the process."},"0x00003708":{code:"ERROR_SXS_RELEASE_ACTIVATION_ONTEXT",message:"A kernel mode component is releasing a reference on an activation context."},"0x00003709":{code:"ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY",message:"The activation context of the system default assembly could not be generated."},"0x0000370A":{code:"ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE",message:"The value of an attribute in an identity is not within the legal range."},"0x0000370B":{code:"ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME",message:"The name of an attribute in an identity is not within the legal range."},"0x0000370C":{code:"ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE",message:"An identity contains two definitions for the same attribute."},"0x0000370D":{code:"ERROR_SXS_IDENTITY_PARSE_ERROR",message:"The identity string is malformed. This may be due to a trailing comma, more than two unnamed attributes, a missing attribute name, or a missing attribute value."},"0x0000370E":{code:"ERROR_MALFORMED_SUBSTITUTION_STRING",message:"A string containing localized substitutable content was malformed. Either a dollar sign ($) was followed by something other than a left parenthesis or another dollar sign, or a substitution's right parenthesis was not found."},"0x0000370F":{code:"ERROR_SXS_INCORRECT_PUBLIC_KEY_OKEN",message:"The public key token does not correspond to the public key specified."},"0x00003710":{code:"ERROR_UNMAPPED_SUBSTITUTION_STRING",message:"A substitution string had no mapping."},"0x00003711":{code:"ERROR_SXS_ASSEMBLY_NOT_LOCKED",message:"The component must be locked before making the request."},"0x00003712":{code:"ERROR_SXS_COMPONENT_STORE_CORRUPT",message:"The component store has been corrupted."},"0x00003713":{code:"ERROR_ADVANCED_INSTALLER_FAILED",message:"An advanced installer failed during setup or servicing."},"0x00003714":{code:"ERROR_XML_ENCODING_MISMATCH",message:"The character encoding in the XML declaration did not match the encoding used in the document."},"0x00003715":{code:"ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT",message:"The identities of the manifests are identical, but the contents are different."},"0x00003716":{code:"ERROR_SXS_IDENTITIES_DIFFERENT",message:"The component identities are different."},"0x00003717":{code:"ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT",message:"The assembly is not a deployment."},"0x00003718":{code:"ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY",message:"The file is not a part of the assembly."},"0x00003719":{code:"ERROR_SXS_MANIFEST_TOO_BIG",message:"The size of the manifest exceeds the maximum allowed."},"0x0000371A":{code:"ERROR_SXS_SETTING_NOT_REGISTERED",message:"The setting is not registered."},"0x0000371B":{code:"ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE",message:"One or more required members of the transaction are not present."},"0x00003A98":{code:"ERROR_EVT_INVALID_CHANNEL_PATH",message:"The specified channel path is invalid."},"0x00003A99":{code:"ERROR_EVT_INVALID_QUERY",message:"The specified query is invalid."},"0x00003A9A":{code:"ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND",message:"The publisher metadata cannot be found in the resource."},"0x00003A9B":{code:"ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND",message:"The template for an event definition cannot be found in the resource (error = %1)."},"0x00003A9C":{code:"ERROR_EVT_INVALID_PUBLISHER_NAME",message:"The specified publisher name is invalid."},"0x00003A9D":{code:"ERROR_EVT_INVALID_EVENT_DATA",message:"The event data raised by the publisher is not compatible with the event template definition in the publisher's manifest."},"0x00003A9F":{code:"ERROR_EVT_CHANNEL_NOT_FOUND",message:"The specified channel could not be found. Check channel configuration."},"0x00003AA0":{code:"ERROR_EVT_MALFORMED_XML_TEXT",message:"The specified XML text was not well-formed. See extended error for more details."},"0x00003AA1":{code:"ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL",message:"The caller is trying to subscribe to a direct channel which is not allowed. The events for a direct channel go directly to a log file and cannot be subscribed to."},"0x00003AA2":{code:"ERROR_EVT_CONFIGURATION_ERROR",message:"Configuration error."},"0x00003AA3":{code:"ERROR_EVT_QUERY_RESULT_STALE",message:"The query result is stale or invalid. This may be due to the log being cleared or rolling over after the query result was created. Users should handle this code by releasing the query result object and reissuing the query."},"0x00003AA4":{code:"ERROR_EVT_QUERY_RESULT_INVALID_POSITION",message:"Query result is currently at an invalid position."},"0x00003AA5":{code:"ERROR_EVT_NON_VALIDATING_MSXML",message:"Registered Microsoft XML (MSXML) does not support validation."},"0x00003AA6":{code:"ERROR_EVT_FILTER_ALREADYSCOPED",message:"An expression can only be followed by a change-of-scope operation if it itself evaluates to a node set and is not already part of some other change-of-scope operation."},"0x00003AA7":{code:"ERROR_EVT_FILTER_NOTELTSET",message:"Cannot perform a step operation from a term that does not represent an element set."},"0x00003AA8":{code:"ERROR_EVT_FILTER_INVARG",message:"Left side arguments to binary operators must be either attributes, nodes, or variables and right side arguments must be constants."},"0x00003AA9":{code:"ERROR_EVT_FILTER_INVTEST",message:"A step operation must involve either a node test or, in the case of a predicate, an algebraic expression against which to test each node in the node set identified by the preceding node set can be evaluated."},"0x00003AAA":{code:"ERROR_EVT_FILTER_INVTYPE",message:"This data type is currently unsupported."},"0x00003AAB":{code:"ERROR_EVT_FILTER_PARSEERR",message:"A syntax error occurred at position %1!d!"},"0x00003AAC":{code:"ERROR_EVT_FILTER_UNSUPPORTEDOP",message:"This operator is unsupported by this implementation of the filter."},"0x00003AAD":{code:"ERROR_EVT_FILTER_UNEXPECTEDTOKEN",message:"The token encountered was unexpected."},"0x00003AAE":{code:"ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL",message:"The requested operation cannot be performed over an enabled direct channel. The channel must first be disabled before performing the requested operation."},"0x00003AAF":{code:"ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE",message:"Channel property %1!s! contains an invalid value. The value has an invalid type, is outside the valid range, cannot be updated, or is not supported by this type of channel."},"0x00003AB0":{code:"ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE",message:"Publisher property %1!s! contains an invalid value. The value has an invalid type, is outside the valid range, cannot be updated, or is not supported by this type of publisher."},"0x00003AB1":{code:"ERROR_EVT_CHANNEL_CANNOT_ACTIVATE",message:"The channel fails to activate."},"0x00003AB2":{code:"ERROR_EVT_FILTER_TOO_COMPLEX",message:"The xpath expression exceeded supported complexity. Simplify it or split it into two or more simple expressions."},"0x00003AB3":{code:"ERROR_EVT_MESSAGE_NOT_FOUND",message:"The message resource is present but the message is not found in the string or message table."},"0x00003AB4":{code:"ERROR_EVT_MESSAGE_ID_NOT_FOUND",message:"The message ID for the desired message could not be found."},"0x00003AB5":{code:"ERROR_EVT_UNRESOLVED_VALUE_INSERT",message:"The substitution string for the insert index (%1) could not be found."},"0x00003AB6":{code:"ERROR_EVT_UNRESOLVED_PARAMETER_INSERT",message:"The description string for the parameter reference (%1) could not be found."},"0x00003AB7":{code:"ERROR_EVT_MAX_INSERTS_REACHED",message:"The maximum number of replacements has been reached."},"0x00003AB8":{code:"ERROR_EVT_EVENT_DEFINITION_NOT_OUND",message:"The event definition could not be found for the event ID (%1)."},"0x00003AB9":{code:"ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND",message:"The locale-specific resource for the desired message is not present."},"0x00003ABA":{code:"ERROR_EVT_VERSION_TOO_OLD",message:"The resource is too old to be compatible."},"0x00003ABB":{code:"ERROR_EVT_VERSION_TOO_NEW",message:"The resource is too new to be compatible."},"0x00003ABC":{code:"ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY",message:"The channel at index %1 of the query cannot be opened."},"0x00003ABD":{code:"ERROR_EVT_PUBLISHER_DISABLED",message:"The publisher has been disabled and its resource is not available. This usually occurs when the publisher is in the process of being uninstalled or upgraded."},"0x00003AE8":{code:"ERROR_EC_SUBSCRIPTION_CANNOT_ACTIVATE",message:"The subscription fails to activate."},"0x00003AE9":{code:"ERROR_EC_LOG_DISABLED",message:"The log of the subscription is in a disabled state and events cannot be forwarded to it. The log must first be enabled before the subscription can be activated."},"0x00003AFC":{code:"ERROR_MUI_FILE_NOT_FOUND",message:"The resource loader failed to find the Multilingual User Interface (MUI) file."},"0x00003AFD":{code:"ERROR_MUI_INVALID_FILE",message:"The resource loader failed to load the MUI file because the file failed to pass validation."},"0x00003AFE":{code:"ERROR_MUI_INVALID_RC_CONFIG",message:"The release candidate (RC) manifest is corrupted with garbage data, is an unsupported version, or is missing a required item."},"0x00003AFF":{code:"ERROR_MUI_INVALID_LOCALE_NAME",message:"The RC manifest has an invalid culture name."},"0x00003B00":{code:"ERROR_MUI_INVALID_ULTIMATEFALLBACK_NAME",message:"The RC Manifest has an invalid ultimate fallback name."},"0x00003B01":{code:"ERROR_MUI_FILE_NOT_LOADED",message:"The resource loader cache does not have a loaded MUI entry."},"0x00003B02":{code:"ERROR_RESOURCE_ENUM_USER_STOP",message:"The user stopped resource enumeration."},"0x00003B03":{code:"ERROR_MUI_INTLSETTINGS_UILANG_NOT_INSTALLED",message:"User interface language installation failed."},"0x00003B04":{code:"ERROR_MUI_INTLSETTINGS_INVALID_LOCALE_NAME",message:"Locale installation failed."},"0x00003B60":{code:"ERROR_MCA_INVALID_CAPABILITIES_STRING",message:"The monitor returned a DDC/CI capabilities string that did not comply with the ACCESS.bus 3.0, DDC/CI 1.1, or MCCS 2 Revision 1 specification."},"0x00003B61":{code:"ERROR_MCA_INVALID_VCP_VERSION",message:"The monitor's VCP version (0xDF) VCP code returned an invalid version value."},"0x00003B62":{code:"ERROR_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION",message:"The monitor does not comply with the MCCS specification it claims to support."},"0x00003B63":{code:"ERROR_MCA_MCCS_VERSION_MISMATCH",message:"The MCCS version in a monitor's mccs_ver capability does not match the MCCS version the monitor reports when the VCP version (0xDF) VCP code is used."},"0x00003B64":{code:"ERROR_MCA_UNSUPPORTED_MCCS_VERSION",message:"The monitor configuration API works only with monitors that support the MCCS 1.0, MCCS 2.0, or MCCS 2.0 Revision 1 specifications."},"0x00003B65":{code:"ERROR_MCA_INTERNAL_ERROR",message:"An internal monitor configuration API error occurred."},"0x00003B66":{code:"ERROR_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED",message:"The monitor returned an invalid monitor technology type. CRT, plasma, and LCD (TFT) are examples of monitor technology types. This error implies that the monitor violated the MCCS 2.0 or MCCS 2.0 Revision 1 specification."},"0x00003B67":{code:"ERROR_MCA_UNSUPPORTED_COLOR_TEMPERATURE",message:"The SetMonitorColorTemperature() caller passed a color temperature to it that the current monitor did not support. CRT, plasma, and LCD (TFT) are examples of monitor technology types. This error implies that the monitor violated the MCCS 2.0 or MCCS 2.0 Revision 1 specification."},"0x00003B92":{code:"ERROR_AMBIGUOUS_SYSTEM_DEVICE",message:"The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria."},"0x00003BC3":{code:"ERROR_SYSTEM_DEVICE_NOT_FOUND",message:"The requested system device cannot be found."}}});var hl=S((l2s,mKt)=>{var is=mKt.exports=function(e,t){if(is.isBigInt(e))this.buffer=Buffer.allocUnsafe(e.buffer.length),e.buffer.copy(this.buffer,0),this.sign=e.sign;else if(this.buffer=Buffer.alloc(e),this.sign=1,t=t||0,t!==0){t<0&&(this.sign=-1,t=-t),t=t.toString(16);for(var r=Math.ceil(t.length/2),n=r*2-t.length,s=0;s"u"?1:t;var r=new is(0);return r.sign=t,r.buffer=e,r};is.prototype.add=function(e){if(is.isBigInt(e)||(e=is.toBigInt(this.buffer.length,e)),this.sign!==e.sign)return this.neg().sub(e);for(var t=0,r=Math.max(e.buffer.length,this.buffer.length),n=new is(r),s=0;s>8}return n.sign=this.sign,n};is.prototype.neg=function(){var e=new is(this);return e.sign*=-1,e};is.prototype.abs=function(){var e=new is(this);return e.sign=1,e};is.prototype.sub=function(e){if(is.isBigInt(e)||(e=is.toBigInt(this.buffer.length,e)),this.sign!==e.sign)return this.add(e.neg());var t=0,r=new is(this),n=new is(e),s=Math.max(r.buffer.length,n.buffer.length),i=new is(s),a=this.sign;if(r.abs().lt(n.abs())){var o=r;r=n,n=o,a*=-1}for(var c=0;c>8)+d}return i.sign=a,i};is.prototype.toBuffer=function(){return this.buffer};is.prototype.toNumber=function(){for(var e=Buffer.allocUnsafe(this.buffer.length),t=0;te.sign)return 1;if(this.sign=0;r--){var n=rs?this.sign:-this.sign}return 0};is.prototype.lt=function(e){return this.compare(e)<0};is.prototype.le=function(e){return this.compare(e)<=0};is.prototype.gt=function(e){return this.compare(e)>0};is.prototype.ge=function(e){return this.compare(e)>=0}});var pl=S((d2s,AKt)=>{var gKt=pKt(),Twn=hl(),_Kt={successCode:"STATUS_SUCCESS",parse:function(e,t,r){var n=this;return function(s){var i=s.getHeaders(),a=gKt.getStatus(Twn.fromBuffer(i.Status).toNumber());a.code===n.successCode?(n.onSuccess&&n.onSuccess(e,s),t&&t(null,n.parseResponse&&n.parseResponse(s))):(r.message=gKt.getErrorMessage(a),r.code=a.code,t&&t(r))}},parseResponse:function(e){return e.getResponse()}};AKt.exports=function(e){for(var t in _Kt)e[t]=e[t]||_Kt[t];return e}});var yKt=S((f2s,EKt)=>{var bwn=lu(),Iwn=pl();EKt.exports=Iwn({generate:function(e,t){return new bwn({headers:{Command:"CLOSE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId}})}})});var SKt=S((h2s,vKt)=>{var Rwn=lu(),Cwn=pl(),ml=Ic(),xwn=ml.DELETE|ml.FILE_APPEND_DATA|ml.FILE_DELETE_CHILD|ml.FILE_READ_ATTRIBUTES|ml.FILE_READ_DATA|ml.FILE_READ_EA|ml.FILE_WRITE_ATTRIBUTES|ml.FILE_WRITE_DATA|ml.FILE_WRITE_EA|ml.READ_CONTROL|ml.SYNCHRONIZE|ml.WRITE_DAC;vKt.exports=Cwn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2"),n=t.createDisposition,s=t.shareAccess;return n>=0&&n<=5||(n=ml.FILE_OVERWRITE_IF),s>=0&&s<=7||(s=ml.FILE_SHARE_NONE),new Rwn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,DesiredAccess:xwn,FileAttributes:128,ShareAccess:s,CreateDisposition:n,CreateOptions:68,NameOffset:120,CreateContextsOffset:122+r.length}})}})});var bKt=S((p2s,TKt)=>{var wwn=lu(),Nwn=pl(),ed=Ic(),Own=ed.DELETE|ed.FILE_APPEND_DATA|ed.FILE_DELETE_CHILD|ed.FILE_READ_ATTRIBUTES|ed.FILE_READ_DATA|ed.FILE_READ_EA|ed.FILE_WRITE_ATTRIBUTES|ed.FILE_WRITE_DATA|ed.FILE_WRITE_EA|ed.READ_CONTROL|ed.SYNCHRONIZE|ed.WRITE_DAC;TKt.exports=Nwn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2");return new wwn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,DesiredAccess:Own,FileAttributes:0,ShareAccess:0,CreateDisposition:ed.FILE_CREATE,CreateOptions:33,NameOffset:120,CreateContextsOffset:122+r.length}})}})});var RKt=S((m2s,IKt)=>{var Dwn=lu(),Pwn=pl();IKt.exports=Pwn({generate:function(e){return new Dwn({headers:{Command:"NEGOTIATE",ProcessId:e.ProcessId}})}})});var xKt=S((g2s,CKt)=>{var Lwn=lu(),Mwn=pl();CKt.exports=Mwn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2");return new Lwn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,NameOffset:120,CreateContextsOffset:122+r.length,DesiredAccess:t.desiredAccess}})}})});var NKt=S((_2s,wKt)=>{var kwn=lu(),Bwn=pl(),td=Ic(),Uwn=td.DELETE|td.FILE_APPEND_DATA|td.FILE_DELETE_CHILD|td.FILE_READ_ATTRIBUTES|td.FILE_READ_DATA|td.FILE_READ_EA|td.FILE_WRITE_ATTRIBUTES|td.FILE_WRITE_DATA|td.FILE_WRITE_EA|td.READ_CONTROL|td.SYNCHRONIZE|td.WRITE_DAC;wKt.exports=Bwn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2");return new kwn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,DesiredAccess:Uwn,FileAttributes:0,ShareAccess:7,CreateDisposition:td.FILE_OPEN,CreateOptions:2097185,NameOffset:120,CreateContextsOffset:122+r.length}})}})});var DKt=S((A2s,OKt)=>{var Fwn=lu(),$wn=pl();OKt.exports=$wn({generate:function(e,t){return new Fwn({headers:{Command:"QUERY_DIRECTORY",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId,Buffer:Buffer.from("*","ucs2")}})},parseResponse:function(e){return qwn(e.getResponse().Buffer)}});function qwn(e){for(var t=[],r=0,n=-1;n!==0;)n=e.readUInt32LE(r),t.push(Hwn(e.slice(r+4,n?r+n:e.length))),r+=n;return t}function Hwn(e){var t={},r=0;return t.Index=e.readUInt32LE(r),r+=4,t.CreationTime=e.slice(r,r+8),r+=8,t.LastAccessTime=e.slice(r,r+8),r+=8,t.LastWriteTime=e.slice(r,r+8),r+=8,t.ChangeTime=e.slice(r,r+8),r+=8,t.EndofFile=e.slice(r,r+8),r+=8,t.AllocationSize=e.slice(r,r+8),r+=8,t.FileAttributes=e.readUInt32LE(r),r+=4,t.FilenameLength=e.readUInt32LE(r),r+=4,t.EASize=e.readUInt32LE(r),r+=4,t.ShortNameLength=e.readUInt8(r),r+=1,t.FileId=e.slice(r,r+8),r+=8,r+=27,t.Filename=e.slice(r,r+t.FilenameLength).toString("ucs2"),r+=t.FilenameLength,t}});var LKt=S((E2s,PKt)=>{var Vwn=lu(),jwn=pl();PKt.exports=jwn({generate:function(e,t){return new Vwn({headers:{Command:"READ",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId,Length:t.Length,Offset:t.Offset}})},parseResponse:function(e){return e.getResponse().Buffer}})});var DPe=S((v2s,E3)=>{var y2s=require("crypto");function MKt(e,t){for(;e.length>n&1))%2;e[t]|=r&1}return e}function Gwn(e){var t=new Buffer(8);return t[0]=e[0]&254,t[1]=e[0]<<7&255|e[1]>>1,t[2]=e[1]<<6&255|e[2]>>2,t[3]=e[2]<<5&255|e[3]>>3,t[4]=e[3]<<4&255|e[4]>>4,t[5]=e[4]<<3&255|e[5]>>5,t[6]=e[5]<<2&255|e[6]>>6,t[7]=e[6]<<1&255,t}function zwn(e){var t=Buffer.isBuffer(t)?t:new Buffer(e,"binary"),r=t.toString("hex").toUpperCase();return MKt(r,32)}E3.exports.zeroextend=MKt;E3.exports.oddpar=Kwn;E3.exports.expandkey=Gwn;E3.exports.bintohex=zwn});var gW=S((S2s,y3)=>{var kKt=require("crypto"),Ww=DPe();function BKt(e){var t=e.substring(0,14).toUpperCase(),r=Buffer.byteLength(t,"ascii"),n=new Buffer(14);n.write(t,0,r,"ascii"),n.fill(0,r);var s=[Ww.oddpar(Ww.expandkey(n.slice(0,7))),Ww.oddpar(Ww.expandkey(n.slice(7,14)))],i=new Buffer(16),a=0,o=s.forEach(function(c){var u=kKt.createCipheriv("DES-ECB",c,""),l=u.update("KGS!@#$%","binary","binary");i.write(l,a,a+8,"binary"),a+=8});return i}function UKt(e){var t=new Buffer(e,"ucs2"),r=kKt.createHash("md4");return r.update(t),new Buffer(r.digest("binary"),"binary")}function Ywn(e){return Ww.bintohex(BKt(e))}function Qwn(e){return Ww.bintohex(UKt(e))}y3.exports.nthashbuf=UKt;y3.exports.lmhashbuf=BKt;y3.exports.nthash=Qwn;y3.exports.lmhash=Ywn});var PPe=S(Op=>{var Wwn=require("crypto"),FKt=DPe(),Xwn=gW().lmhashbuf,Jwn=gW().nthashbuf;function Zwn(e,t){e=e.toUpperCase(),t=t.toUpperCase();var r=Buffer.byteLength(e,"ascii"),n=Buffer.byteLength(t,"ascii"),s=0,i=new Buffer(32+r+n);i.write("NTLMSSP",s,7,"ascii"),s+=7,i.writeUInt8(0,s),s++,i.writeUInt8(1,s),s++,i.fill(0,s,s+3),s+=3,i.writeUInt16LE(45571,s),s+=2,i.fill(0,s,s+2),s+=2,i.writeUInt16LE(n,s),s+=2,i.writeUInt16LE(n,s),s+=2;var a=32+r;return i.writeUInt16LE(a,s),s+=2,i.fill(0,s,s+2),s+=2,i.writeUInt16LE(r,s),s+=2,i.writeUInt16LE(r,s),s+=2,i.writeUInt16LE(32,s),s+=2,i.fill(0,s,s+2),s+=2,i.write(e,32,r,"ascii"),i.write(t,a,n,"ascii"),i}function eNn(e){var t=e.toString("ascii",0,7);if(e[7]!==0||t!=="NTLMSSP")throw new Error("magic was not NTLMSSP");var r=e.readUInt8(8);if(r!==2)throw new Error("message was not NTLMSSP type 0x02");var n=e.slice(24,32);return n}function tNn(e,t,r,n,s){t=t.toUpperCase(),r=r.toUpperCase();var i=new Buffer(21);Xwn(s).copy(i),i.fill(0,16);var a=new Buffer(21);Jwn(s).copy(a),a.fill(0,16);var o=$Kt(i,n),c=$Kt(a,n),u=Buffer.byteLength(e,"ucs2"),l=Buffer.byteLength(t,"ucs2"),d=Buffer.byteLength(r,"ucs2"),f=24,h=24,p=64,m=p+d,_=m+u,g=_+l,y=g+f,A=0,E=64+d+u+l+f+h,v=new Buffer(E);return v.write("NTLMSSP",A,7,"ascii"),A+=7,v.writeUInt8(0,A),A++,v.writeUInt8(3,A),A++,v.fill(0,A,A+3),A+=3,v.writeUInt16LE(f,A),A+=2,v.writeUInt16LE(f,A),A+=2,v.writeUInt16LE(g,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(h,A),A+=2,v.writeUInt16LE(h,A),A+=2,v.writeUInt16LE(y,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(d,A),A+=2,v.writeUInt16LE(d,A),A+=2,v.writeUInt16LE(p,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(u,A),A+=2,v.writeUInt16LE(u,A),A+=2,v.writeUInt16LE(m,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(l,A),A+=2,v.writeUInt16LE(l,A),A+=2,v.writeUInt16LE(_,A),A+=2,v.fill(0,A,A+6),A+=6,v.writeUInt16LE(E,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(33281,A),A+=2,v.fill(0,A,A+2),A+=2,v.write(r,p,d,"ucs2"),v.write(e,m,u,"ucs2"),v.write(t,_,l,"ucs2"),o.copy(v,g,0,f),c.copy(v,y,0,h),v}function $Kt(e,t){for(var r=new Buffer(24),n=0;n<3;n++){var s=FKt.oddpar(FKt.expandkey(e.slice(n*7,n*7+7))),i=Wwn.createCipheriv("DES-ECB",s,""),a=i.update(t.toString("binary"),"binary","binary");r.write(a,n*8,n*8+8,"binary")}return r}Op.encodeType1=Zwn;Op.decodeType2=eNn;Op.encodeType3=tNn;Op.challengeHeader=function(e,t){return"NTLM "+Op.encodeType1(e,t).toString("base64")};Op.responseHeader=function(e,t,r,n,s){var i=new Buffer((e.headers["www-authenticate"].match(/^NTLM\s+(.+?)(,|\s+|$)/)||[])[1],"base64"),a=require("url").parse(t).hostname;return"NTLM "+Op.encodeType3(n,a,r,Op.decodeType2(i),s).toString("base64")};Op.smbhash=gW()});var VKt=S((b2s,HKt)=>{var rNn=lu(),nNn=pl(),qKt=PPe();HKt.exports=nNn({generate:function(e){return new rNn({headers:{Command:"SESSION_SETUP",ProcessId:e.ProcessId},request:{Buffer:qKt.encodeType1(e.ip,e.domain)}})},successCode:"STATUS_MORE_PROCESSING_REQUIRED",onSuccess:function(e,t){var r=t.getHeaders();e.SessionId=r.SessionId,e.nonce=qKt.decodeType2(t.getResponse().Buffer)}})});var KKt=S((I2s,jKt)=>{var sNn=lu(),iNn=pl(),aNn=PPe();jKt.exports=iNn({generate:function(e){return new sNn({headers:{Command:"SESSION_SETUP",SessionId:e.SessionId,ProcessId:e.ProcessId},request:{Buffer:aNn.encodeType3(e.username,e.ip,e.domain,e.nonce,e.password)}})}})});var zKt=S((R2s,GKt)=>{var oNn=lu(),cNn=pl(),uNn={FileAllocationInformation:19,FileBasicInformation:4,FileDispositionInformation:13,FileEndOfFileInformation:20,FileFullEaInformation:15,FileLinkInformation:11,FileModeInformation:16,FilePipeInformation:23,FilePositionInformation:14,FileRenameInformation:10,FileShortNameInformation:40,FileValidDataLengthInformation:39};GKt.exports=cNn({generate:function(e,t){return new oNn({headers:{Command:"SET_INFO",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileInfoClass:uNn[t.FileInfoClass],FileId:t.FileId,Buffer:t.Buffer}})}})});var QKt=S((C2s,YKt)=>{var lNn=lu(),dNn=pl();YKt.exports=dNn({generate:function(e){return new lNn({headers:{Command:"TREE_CONNECT",SessionId:e.SessionId,ProcessId:e.ProcessId},request:{Buffer:Buffer.from(e.fullPath,"ucs2")}})},onSuccess:function(e,t){var r=t.getHeaders();e.TreeId=r.TreeId}})});var XKt=S((x2s,WKt)=>{var fNn=lu(),hNn=pl();WKt.exports=hNn({generate:function(e,t){return new fNn({headers:{Command:"WRITE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId,Offset:t.Offset,Buffer:t.Buffer}})},parseResponse:function(e){return e.getResponse().Buffer}})});var wa=S((w2s,ZKt)=>{var pNn=lu(),mNn={close:yKt(),create:SKt(),create_folder:bKt(),negotiate:RKt(),open:xKt(),open_folder:NKt(),query_directory:DKt(),read:LKt(),session_setup_step1:VKt(),session_setup_step2:KKt(),set_info:zKt(),tree_connect:QKt(),write:XKt()},JKt=ZKt.exports={};JKt.request=function(e,t,r,n){var s=mNn[e];if(!s)throw new Error("Unknown SMB2 message: "+e);var i=s.generate(r,t);gNn(r,i);var a=new Error;a.messageName=e,a.params=t,_Nn(r,i.getHeaders().MessageId,s.parse(r,n,a))};JKt.response=function(e){return e.responses={},e.responsesCB={},e.responseBuffer=Buffer.allocUnsafe(0),function(t){e.responseBuffer=Buffer.concat([e.responseBuffer,t]);for(var r=!0;r;)if(r=!1,e.responseBuffer.length>=4){var n=(e.responseBuffer.readUInt8(1)<<16)+e.responseBuffer.readUInt16BE(2);if(e.responseBuffer.length>=n+4){r=!0;var s=e.responseBuffer.slice(4,n+4),i=new pNn;i.parseBuffer(s),e.debug&&(console.log("--response"),console.log(s.toString("hex")));var a=i.getHeaders().MessageId.toString("hex");e.responsesCB[a]?(e.responsesCB[a](i),delete e.responsesCB[a]):e.responses[a]=i,e.responseBuffer=e.responseBuffer.slice(n+4)}}}};function gNn(e,t){var r=t.getBuffer(e);e.debug&&(console.log("--request"),console.log(r.toString("hex")));var n=Buffer.allocUnsafe(r.length+4);return n.writeUInt8(0,0),n.writeUInt8((16711680&r.length)>>16,1),n.writeUInt16BE(65535&r.length,2),r.copy(n,4,0,r.length),e.newResponse=!1,e.socket.write(n),!0}function _Nn(e,t,r){var n=Buffer.allocUnsafe(4);n.writeUInt32LE(t,0),n=n.toString("hex"),e.responses[n]?(r(e.responses[n]),delete e.responses[n]):e.responsesCB[n]=r}});var MPe=S((N2s,rGt)=>{var ANn=require("net"),eGt=wa(),_W=eGt.request,AW=rGt.exports={};AW.close=function(e){LPe(e),e.connected&&(e.connected=!1,e.socket.end())};AW.requireConnect=function(e){return function(){var t=this,r=Array.prototype.slice.call(arguments);ENn(t,function(n){var s=r.pop();typeof s!="function"&&(r.push(s),s=function(i){if(i)throw i instanceof Error||(i=new Error(String(i))),i}),s=tGt(t,s),r.push(s),n?s(n):e.apply(t,r)})}};AW.init=function(e){e.connected=!1,e.socket=new ANn.Socket({allowHalfOpen:!0}),e.socket.on("data",eGt.response(e)),e.errorHandler=[],e.socket.on("error",function(t){e.errorHandler.length>0&&e.errorHandler[0].call(null,t),e.debug&&(console.log("-- error"),console.log(arguments))})};function ENn(e,t){if(e.connected){t&&t(null);return}t=tGt(e,t),e.messageId=0,e.SessionId=Math.floor(Math.random()*256)&255,e.socket.connect(e.port,e.ip),_W("negotiate",{},e,function(r){r?t&&t(r):_W("session_setup_step1",{},e,function(n){n?t&&t(n):_W("session_setup_step2",{},e,function(s){s?t&&t(s):_W("tree_connect",{},e,function(i){i?t&&t(i):(e.connected=!0,t&&t(null))})})})})}function LPe(e){e.scheduledAutoClose&&(clearTimeout(e.scheduledAutoClose),e.scheduledAutoClose=null)}function yNn(e){LPe(e),e.autoCloseTimeout!==0&&(e.scheduledAutoClose=setTimeout(function(){AW.close(e)},e.autoCloseTimeout))}function tGt(e,t){return vNn(e,t),LPe(e),function(){SNn(e),yNn(e),t.apply(null,arguments)}}function vNn(e,t){e.errorHandler.unshift(t)}function SNn(e){e.errorHandler.shift()}});var sGt=S((O2s,nGt)=>{var TNn=MPe();nGt.exports=function(){TNn.close(this)}});var oGt=S((D2s,aGt)=>{var bNn=wa(),iGt=bNn.request;aGt.exports=function(t,r){var n=this;iGt("open",{path:t},n,function(s,i){if(s!=null)return s.code==="STATUS_OBJECT_NAME_NOT_FOUND"||s.code==="STATUS_OBJECT_PATH_NOT_FOUND"?r&&r(null,!1):r&&r(s);iGt("close",i,n,function(){r&&r(null,!0)})})}});var dGt=S((P2s,lGt)=>{var EW=hl(),yW=wa().request,cGt=Ic();lGt.exports=function(t,r,n,s){typeof n=="function"&&(s=n,n={});var i=this;yW("open_folder",{path:t},i,function(a,o){a?yW("create",{path:t,createDisposition:cGt.FILE_OPEN,shareAccess:cGt.FILE_SHARE_DELETE},i,function(c,u){c?s&&s(c):uGt(i,u,r,n,s)}):uGt(i,o,r,n,s)})};function uGt(e,t,r,n,s){yW("set_info",{FileId:t.FileId,FileInfoClass:"FileRenameInformation",Buffer:INn(r,n)},e,function(i){yW("close",t,e,function(){i?s&&s(i):s&&s(null)})})}function INn(e,t){var r=Buffer.from(e,"ucs2");return Buffer.concat([new EW(1,t.replace?1:0).toBuffer(),new EW(7,0).toBuffer(),new EW(8,0).toBuffer(),new EW(4,r.length).toBuffer(),r])}});var pGt=S((L2s,hGt)=>{var RNn=wa(),kPe=RNn.request,CNn=hl(),fGt=Ic().MAX_READ_LENGTH;hGt.exports=function(t,r,n){var s=this;typeof r=="function"&&(n=r,r={}),kPe("open",{path:t},s,function(i,a){if(i)n&&n(i);else{for(var o=0,c=new CNn(8),u=!1,l=0,d=0;d{var xNn=require("stream").Readable,mGt=hl(),BPe=wa().request,wNn=Ic().MAX_READ_LENGTH;gGt.exports=function(t,r,n){typeof r=="function"?(n=r,r={}):r==null&&(r={});var s=this,i=r.fd,a=i!=null,o=!a||r.autoClose==null||r.autoClose;function c(u,l){if(u!=null)return n(u);var d=r.start||0,f=mGt.fromBuffer(l.EndofFile).toNumber(),h=f;r.end=h)return o?p(function(){m.push(null)}):m.push(null);_=!0,BPe("read",{FileId:l.FileId,Length:Math.min(wNn,g,h-d),Offset:new mGt(8,d).toBuffer()},s,function(y,A){if(_=!1,y!=null)return process.nextTick(m.emit.bind(m,"error",y));d+=A.length,m.push(A)})}},n(null,m)}a?c(null,i):BPe("open",{path:t},s,c)}});var SW=S((k2s,AGt)=>{var vW=Ic();AGt.exports=function(t){for(var r={__proto__:null},n=0,s=t.length;n{var NNn=require("stream").Writable,ONn=hl(),DNn=Ic(),PNn=SW(),UPe=wa().request;EGt.exports=function(t,r,n){typeof r=="function"&&(n=r,r={});var s=this,i=r.fd,a=i!=null,o=!a||r.autoClose==null||r.autoClose;function c(u,l){if(u!=null)return n(u);var d=new ONn(8,r!=null&&r.start||0);function f(m,_,g){var y=_+DNn.MAX_WRITE_LENGTH,A=m.slice(_,y);UPe("write",{Buffer:A,FileId:l.FileId,Offset:d.toBuffer()},s,function(E){if(E!=null)return g(E);if(d=d.add(A.length),y{var LNn=wa(),TW=LNn.request,FPe=hl(),MNn=Ic(),kNn=SW();vGt.exports=function(t,r,n,s){typeof n=="function"&&(s=n,n={}),n.encoding=n.encoding||"utf8";var i=this,a,o=Buffer.isBuffer(r)?r:Buffer.from(r,n.encoding),c=new FPe(8,o.length);function u(h){TW("create",{createDisposition:kNn(n!=null&&(n.flags||n.flag)||"wx"),path:t},i,function(p,m){p?s&&s(p):(a=m,h())})}function l(h){TW("close",a,i,function(p){p?s&&s(p):(a=null,h())})}function d(h){TW("set_info",{FileId:a.FileId,FileInfoClass:"FileEndOfFileInformation",Buffer:c.toBuffer()},i,function(p){p?s&&s(p):h()})}function f(h){var p=new FPe(8),m=!1,_=0,g=new FPe(8,MNn.MAX_WRITE_LENGTH);function y(){return function(v){m||(v?(s&&s(v),m=!0):(_--,A()))}}function A(){m||(E(),_===0&&p.ge(c)&&h())}function E(){for(;_{var BNn=wa(),$Pe=BNn.request,UNn=hl(),FNn=Ic();TGt.exports=function(t,r){var n=this;$Pe("create",{path:t,shareAccess:FNn.FILE_SHARE_DELETE},n,function(s,i){s?r&&r(s):$Pe("set_info",{FileId:i.FileId,FileInfoClass:"FileDispositionInformation",Buffer:new UNn(1,1).toBuffer()},n,function(a,o){$Pe("close",i,n,function(){a?r&&r(a):r&&r(null,o)})})})}});var RGt=S(($2s,IGt)=>{var $Nn=1e7,qNn=11644473600;IGt.exports=function(t){var r=t/$Nn-qNn;return new Date(r*1e3)}});var qPe=S((q2s,xGt)=>{var bW=RGt(),Xw=hl(),CGt=Ic().DIRECTORY;xGt.exports=function(t){return{birthtime:bW(Xw.fromBuffer(t.CreationTime).toNumber()),atime:bW(Xw.fromBuffer(t.LastAccessTime).toNumber()),mtime:bW(Xw.fromBuffer(t.LastWriteTime).toNumber()),ctime:bW(Xw.fromBuffer(t.ChangeTime).toNumber()),size:Xw.fromBuffer(t.EndofFile).toNumber(),isDirectory:function(){var r=t.FileAttributes;return typeof r!="number"&&(r=Xw.fromBuffer(r).toNumber()),(r&CGt)==CGt}}}});var NGt=S((H2s,wGt)=>{var HNn=wa(),HPe=HNn.request,VNn=qPe();wGt.exports=function(t,r,n){var s=this;typeof r=="function"&&(n=r,r={});var i=r.stats?function(u){var l=VNn(u);return l.name=u.Filename,l}:function(u){return u.Filename};function a(u,l,d,f){HPe("query_directory",l,d,function(h,p){h?h.code==="STATUS_NO_MORE_FILES"?f(null,u):f(h):(u.push(p.filter(function(m){return m.Filename!=="."&&m.Filename!==".."}).map(i)),a(u,l,d,f))})}function o(u,l,d){HPe("open",{path:u},l,function(f,h){if(f)d(f);else return d(null,h)})}function c(u,l,d){HPe("close",u,l,function(f,h){f&&f.code!=="STATUS_FILE_CLOSED"&&d(f),d(null,h)})}o(t,s,function(u,l){var d=[],f=[];u?n(u):a(f,l,s,function(h,p){h?n(h):c(p,s,function(m,_){m?n(m):(d=[].concat(...f),n(null,d))})})})}});var DGt=S((V2s,OGt)=>{var jNn=wa(),VPe=jNn.request,KNn=hl();OGt.exports=function(t,r){var n=this;VPe("open_folder",{path:t},n,function(s,i){s?r&&r(s):VPe("set_info",{FileId:i.FileId,FileInfoClass:"FileDispositionInformation",Buffer:new KNn(1,1).toBuffer()},n,function(a,o){VPe("close",i,n,function(){if(a)return r(a);r(null,o)})})})}});var MGt=S((j2s,LGt)=>{var GNn=wa(),PGt=GNn.request;LGt.exports=function(t,r,n){typeof r=="function"&&(n=r,r="0777");var s=this;PGt("create_folder",{path:t},s,function(i,a){i?n&&n(i):PGt("close",a,s,function(){n&&n(null)})})}});var UGt=S((K2s,BGt)=>{var zNn=hl(),kGt=wa().request;BGt.exports=function(t,r){var n=this;kGt("open",{path:t},n,function(s,i){if(s!=null)return r(s);kGt("close",i,n,function(){r(null,zNn.fromBuffer(i.EndofFile).toNumber())})})}});var qGt=S((G2s,$Gt)=>{var YNn=qPe(),FGt=wa().request;$Gt.exports=function(t,r){var n=this;FGt("open",{path:t},n,function(s,i){if(s!=null)return r(s);FGt("close",i,n,function(){r(null,YNn(i))})})}});var VGt=S((z2s,HGt)=>{var QNn=SW(),WNn=wa().request;HGt.exports=function(t,r,n){typeof r=="function"&&(n=r,r=void 0),WNn("create",{createDisposition:QNn(r||"r"),path:t},this,n)}});var GGt=S((Y2s,KGt)=>{var XNn=require("assert"),jGt=hl(),JNn=wa().request,ZNn=Ic().MAX_READ_LENGTH;KGt.exports=function(t,r,n,s,i,a){XNn(i!==null,"null pos is not supported");var o=this,c=Math.min(i+s,jGt.fromBuffer(t.EndofFile).toNumber()),u=i;function l(f,h){if(f!=null)return a(f,u-i,r);h.copy(r,n);var p=h.length;n+=p,u+=p,d()}function d(){if(u>=c)return a(null,u-i,r);JNn("read",{FileId:t.FileId,Length:Math.min(ZNn,c-u),Offset:new jGt(8,u).toBuffer()},o,l)}process.nextTick(d)}});var YGt=S((Q2s,zGt)=>{var kb=require("assert"),eOn=hl(),tOn=wa().request,rOn=Ic().MAX_WRITE_LENGTH;zGt.exports=function(t,r,n,s,i,a){kb(Buffer.isBuffer(r)),n==null?n=0:(kb.strictEqual(typeof n,"number"),kb(n>0),kb(n0),s=Math.min(s,r.length-n)),kb.strictEqual(typeof i,"number");var o=this,c=i,u;function l(f){if(f!=null)return a(f,c-i,r);s-=u,n+=u,c+=u,d()}function d(){if(s<=0)return a(null,c-i,r);u=Math.min(rOn,s),tOn("write",{Buffer:r.slice(n,n+u),FileId:t.FileId,Offset:new eOn(8,c).toBuffer()},o,l)}process.nextTick(d)}});var WGt=S((W2s,QGt)=>{var nOn=wa().request;QGt.exports=function(t,r){nOn("close",t,this,r)}});var JGt=S((X2s,XGt)=>{var sOn=wa(),jPe=sOn.request,iOn=hl(),aOn=Ic().FILE_WRITE_DATA;function oOn(e,t,r,n){jPe("set_info",{FileId:e.FileId,FileInfoClass:"FileEndOfFileInformation",Buffer:t.toBuffer()},r,n)}XGt.exports=function(t,r,n){var s=this;jPe("open",{path:t,desiredAccess:aOn},s,function(i,a){if(i!=null)return n(i);oOn(a,new iOn(8,r),s,function(o){jPe("close",a,s,function(){n(o)})})})}});var ezt=S((J2s,ZGt)=>{var cOn=/\\\\([^\\]*)\\([^\\]*)\\?/,uOn=445,lOn=20,dOn=1e4,No=Ujt(),du=MPe(),fOn=ZGt.exports=function(e){e=e||{};var t;if(!e.share||!(t=e.share.match(cOn)))throw new Error("the share is not valid");this.ip=t[1],this.port=e.port||uOn,this.share=t[2],this.fullPath=e.share,this.packetConcurrency=e.packetConcurrency||lOn,e.autoCloseTimeout!==void 0?this.autoCloseTimeout=e.autoCloseTimeout:this.autoCloseTimeout=dOn,this.domain=e.domain,this.username=e.username,this.password=e.password,this.ProcessId=Buffer.from([Math.floor(Math.random()*256)&255,Math.floor(Math.random()*256)&255,Math.floor(Math.random()*256)&255,Math.floor(Math.random()*256)&254]),this.debug=e.debug,du.init(this)},ao=fOn.prototype={};ao.disconnect=sGt();ao.exists=No(du.requireConnect(oGt()));ao.rename=No(du.requireConnect(dGt()));ao.readFile=No(du.requireConnect(pGt()));ao.createReadStream=No(du.requireConnect(_Gt()));ao.createWriteStream=No(du.requireConnect(yGt()));ao.writeFile=No(du.requireConnect(SGt()));ao.unlink=No(du.requireConnect(bGt()));ao.readdir=No(du.requireConnect(NGt()));ao.rmdir=No(du.requireConnect(DGt()));ao.mkdir=No(du.requireConnect(MGt()));ao.getSize=No(du.requireConnect(UGt()));ao.stat=No(du.requireConnect(qGt()));ao.open=No(du.requireConnect(VGt()));ao.read=No(GGt(),function(e,t){return{bytesRead:e,buffer:t}});ao.write=No(YGt(),function(e,t){return{bytesWritten:e,buffer:t}});ao.close=No(WGt());ao.truncate=No(du.requireConnect(JGt()))});function R_(e){let t=tzt.get(e)||IW[2];return{batchTierKey:t.key,defaultBatchSize:t.defaultBatchSize,maxBatchSize:t.maxBatchSize,defaultBatchIntervalMs:t.defaultBatchIntervalMs,defaultTimeoutMs:t.timeoutMs||6e4}}function Bb(e){let t=String(e||"").trim();return t&&(hOn.get(t)||rzt.get(t.toLowerCase()))||null}function gOn(e){let t=String(e||"").trim();return!t||t===C_||t==="/"||t.toLowerCase()==="root"?[]:t.replace(/^\/+|\/+$/g,"").split("/").map(r=>r.trim()).filter(r=>r&&r!==".")}function _On(e){return Array.isArray(e)&&e.length?e.join("/"):C_}function nzt(e){return String(e||"").split(/\r?\n/).map(t=>t.trim()).filter(t=>t&&!t.startsWith("//"))}function AOn(e,t){let r=Bb(e);return r?nzt(t).filter(n=>!n.startsWith("#")).map(n=>`${r.label} ${n}`).join(` -`):""}function KPe(e,t={}){let r=t.providerKey?Bb(t.providerKey)?.key:"",n=[],s=[],i=0;for(let a of nzt(e)){if(a.startsWith("#")&&!/^\S+\s+#\s+(?:https?:\/\/|smb:\/\/)/i.test(a))continue;let o=/((?:https?:\/\/|smb:\/\/)\S+)\s*$/i.exec(a);if(!o){s.push({line:a,message:"\u7F3A\u5C11\u94FE\u63A5"});continue}let c=o[1].trim(),l=a.slice(0,o.index).trim().split(/\s+/).filter(Boolean),d=Bb(l.shift()),f=l.join(" ").trim();if(!d){s.push({line:a,message:"\u672A\u77E5\u6302\u8F7D\u540D\u79F0"});continue}if(!f){s.push({line:a,message:"\u7F3A\u5C11\u5F52\u7C7B"});continue}if(d.key==="smb"&&!/^smb:\/\//i.test(c)){s.push({line:a,message:"SMB\u5408\u96C6\u5FC5\u987B\u4F7F\u7528 smb:// \u94FE\u63A5"});continue}if(d.key!=="smb"&&!/^https?:\/\//i.test(c)){s.push({line:a,message:`${d.label} \u5FC5\u987B\u4F7F\u7528 http(s) \u94FE\u63A5`});continue}if(r&&d.key!==r)continue;let h=gOn(f);n.push({id:String(n.length),sourceOrder:i,providerKey:d.key,providerLabel:d.label,mountPath:_On(h),pathSegments:h,direct:h.length===0,url:c,raw:a}),i+=1}return{entries:n,errors:s}}async function EOn(e,t){let r=String(e?.config?.[t.key]?.text||""),n="";try{let s=await e.db.getObjectDefault(`/config/${t.key}`,null);n=typeof s?.text=="string"?s.text:""}catch{}return n||r}async function yOn(e){let t=[];for(let r of RW){let n=await EOn(e,r),s=AOn(r.key,n);s&&t.push(s)}return t.join(` -`)}async function vOn(e,t){if(typeof e?.text=="string"&&e.text.length>0)return e.text;let r=String(t?.config?.sharemount?.text||"");if(r)return r;let n=await yOn(t);return n||mOn}function Dp(e,t,r,n){return Math.max(r,Math.min(n,Number(e)||t))}function GPe(){return Object.fromEntries(IW.map(e=>[e.key,{batchSize:e.defaultBatchSize,batchIntervalMs:e.defaultBatchIntervalMs,timeoutMs:e.timeoutMs||6e4}]))}function izt(){return IW.map(e=>({key:e.key,label:e.label,providerKeys:e.providerKeys,providerLabels:e.providerLabels,defaultBatchSize:e.defaultBatchSize,maxBatchSize:e.maxBatchSize,defaultBatchIntervalMs:e.defaultBatchIntervalMs,timeoutMs:e.timeoutMs||6e4,fixed:!0}))}function azt(e){let t=e.tierAli||e.tier115Baidu||e.tierOthers||{};return{batchSize:t.batchSize||500,batchIntervalMs:t.batchIntervalMs??800,timeoutMs:t.timeoutMs||6e4}}function ozt(){return RW.map(({key:e,label:t,aliases:r,batchTierKey:n,defaultBatchSize:s,maxBatchSize:i,defaultBatchIntervalMs:a,defaultTimeoutMs:o})=>({key:e,label:t,aliases:r,batchTierKey:n,defaultBatchSize:s,maxBatchSize:i,defaultBatchIntervalMs:a,defaultTimeoutMs:o}))}function Jw(e,t){let r=Bb(t),n=tzt.get(r?.key||""),s=GPe(e?.batchTiers),i=n?s[n.key]:null,a=i?.batchSize||r?.defaultBatchSize||500,o=r?.maxBatchSize||n?.maxBatchSize||5e3,c=i?.batchIntervalMs??r?.defaultBatchIntervalMs??1e3;return{...e,batchSize:Dp(i?.batchSize,a,1,o),batchIntervalMs:Dp(i?.batchIntervalMs,c,0,1e4),timeoutMs:6e4}}async function $0(e){e.get("/settings",async(t,r)=>{r.send({code:0,data:await CW(t.server)})}),e.post("/settings",async(t,r)=>{let n=await SOn(t.server,t.body||{});r.send({code:0,data:n})})}var C_,IW,tzt,RW,hOn,rzt,pOn,mOn,szt,CW,SOn,zPe=ae(()=>{C_="#",IW=[{key:"tier115Baidu",label:"115/\u767E\u5EA6\u5408\u96C6",providerKeys:["115share","baidushare"],providerLabels:["115\u5408\u96C6","\u767E\u5EA6\u5408\u96C6"],defaultBatchSize:500,maxBatchSize:500,defaultBatchIntervalMs:100,timeoutMs:6e4},{key:"tierAli",label:"\u963F\u91CC\u5408\u96C6",providerKeys:["alishare"],providerLabels:["\u963F\u91CC\u5408\u96C6"],defaultBatchSize:800,maxBatchSize:800,defaultBatchIntervalMs:100,timeoutMs:6e4},{key:"tierOthers",label:"\u5176\u5B83\u5408\u96C6",providerKeys:["123share","139share","ucshare","quarkshare","guangyashare","smb"],providerLabels:["123\u5408\u96C6","139\u5408\u96C6","UC\u5408\u96C6","\u5938\u514B\u5408\u96C6","\u5149\u9E2D\u5408\u96C6","SMB\u5408\u96C6"],defaultBatchSize:1e3,maxBatchSize:1e3,defaultBatchIntervalMs:10,timeoutMs:6e4}],tzt=new Map(IW.flatMap(e=>e.providerKeys.map(t=>[t,e])));RW=[{key:"115share",label:"115\u5408\u96C6",aliases:["115\u5408\u96C6","115","115share"],...R_("115share")},{key:"alishare",label:"\u963F\u91CC\u5408\u96C6",aliases:["\u963F\u91CC\u5408\u96C6","\u963F\u91CC","ali","alishare"],...R_("alishare")},{key:"123share",label:"123\u5408\u96C6",aliases:["123\u5408\u96C6","123","123share"],...R_("123share")},{key:"139share",label:"139\u5408\u96C6",aliases:["139\u5408\u96C6","139","\u79FB\u52A8\u5408\u96C6","\u79FB\u52A8","139share"],...R_("139share")},{key:"ucshare",label:"UC\u5408\u96C6",aliases:["UC\u5408\u96C6","uc\u5408\u96C6","UC","uc","ucshare"],...R_("ucshare")},{key:"baidushare",label:"\u767E\u5EA6\u5408\u96C6",aliases:["\u767E\u5EA6\u5408\u96C6","\u767E\u5EA6","baidu","baidushare"],...R_("baidushare")},{key:"quarkshare",label:"\u5938\u514B\u5408\u96C6",aliases:["\u5938\u514B\u5408\u96C6","\u5938\u514B","quark","quarkshare"],...R_("quarkshare")},{key:"guangyashare",label:"\u5149\u9E2D\u5408\u96C6",aliases:["\u5149\u9E2D\u5408\u96C6","\u5149\u9E2D","guangya","guangyapan","guangyashare"],...R_("guangyashare")},{key:"smb",label:"SMB\u5408\u96C6",aliases:["SMB\u5408\u96C6","smb\u5408\u96C6","SMB","smb"],...R_("smb")}],hOn=new Map(RW.map(e=>[e.key,e])),rzt=new Map;for(let e of RW)for(let t of e.aliases)rzt.set(String(t).trim().toLowerCase(),e);pOn=["\u539F\u76D8/600T\u84DD\u5149\u539F\u76D8\u7535\u5F71 https://115.com/s/sw6xz303321?password=6668#","\u539F\u76D8/BD\u539F\u76D8 https://115.com/s/sw622f53nn3?password=pcb1#","\u539F\u76D8/SGNB \u7279\u65484K\u539F\u76D8\uFF08\u6574\u7406\u7248\uFF09 https://115.com/s/swzp2vf3h9s?password=5089#","\u539F\u76D8/SGNB\u7279\u6548563\u90E8 https://115.com/s/sw313rp3zx1?password=w146","\u539F\u76D8/SGNB\u7279\u6548\u5B57\u5E554k\u539F\u76D8\u7535\u5F71 https://115.com/s/swzwwqg3hls?password=e241#","\u539F\u76D8/SGNB\u7279\u6548\u5B57\u5E554K\u539F\u76D8\u7535\u5F71\u96C6 https://115.com/s/sw6283733l6?password=z484#","\u539F\u76D8/UHD\u539F\u76D8 https://115.com/s/sw6u5nq3nn3?password=r495#","\u539F\u76D8/\u5408\u96C6\u6574\u7406 https://115cdn.com/s/sww7pbf3zxx?password=1234&","\u539F\u76D8/\u5468\u661F\u9A70 https://115.com/s/swzp2vb3h9s?password=5089#","\u539F\u76D8/\u6B27\u7F8E\u5267 https://115.com/s/swz4wm23wsp?password=z1d9#","\u539F\u76D8/\u6E2F\u7247\u7ECF\u5178\u84DD\u5149\u539F\u76D8 https://115.com/s/sw6c6wa3nn3?password=aaa0#","\u539F\u76D8/\u6E2F\u7247\u84DD\u5149\u539F\u76D8 https://115.com/s/sw69nao3h3b?password=a548","\u539F\u76D8/\u6F14\u5531\u4F1A https://115.com/s/swzp25d3h9s?password=5089#","\u539F\u76D8/\u6F2B\u5A01 https://115.com/s/sw6865s3nn3?password=ja76#","\u539F\u76D8/\u6F2B\u5A014k https://115.com/s/swzew4m3nc6?password=i0d7#","\u539F\u76D8/\u7535\u5F71\u5927\u5408\u96C6 https://115.com/s/swzlcya3wsp?password=bab4","\u539F\u76D8/\u7535\u89C6\u5267 https://115.com/s/swz7aq33nan?password=2580","\u539F\u76D8/\u7EAA\u5F55\u7247 https://115.com/s/swzmg533697?password=6688#","\u539F\u76D8/\u8718\u86DB\u4FA0 https://115.com/s/swhlzsc3nm7?password=y399#","\u539F\u76D8/\u8C46\u74E3TOP250 https://115.com/s/swzp25u3h9s?password=5089#","\u539F\u76D8/\u97E9\u56FD https://115cdn.com/s/swhid5x3wfa?password=xdf9","\u539F\u76D8/79\u90E8 https://115.com/s/swzhrkr3nn3?password=x663#","\u5408\u96C6/2026\u5E742\u6708 https://115cdn.com/s/swfm52v3h5u?password=hce0#","\u5408\u96C6/Netflix https://115.com/s/swzqpxd369v?password=ka72","\u5408\u96C6/Netflix2 https://115.com/s/swzgtc93h4y?password=5296#","\u5408\u96C6/TVB https://115.com/s/swz69un3fwo?password=8888","\u5408\u96C6/\u4E16\u754C\u676F https://115.com/s/swzcaxo3nrl?password=v1a6#","\u5408\u96C6/\u7CBE\u5FC3\u6574\u7406\u5F71\u89C6\u5267 https://115.com/s/swzr6d73697?password=2618#","\u7535\u5F71/2267\u90E8 https://115.com/s/swzjffn3h4y?password=k880#","\u7535\u5F71/REMUX https://115.com/s/swzhs093nn3?password=w768#","\u7535\u5F71/\u5168\u7403TOP250 https://115cdn.com/s/swwluyb3z1g?password=e950#","\u7535\u5F71/\u5168\u7403\u4E27\u5C38TOP100 https://115cdn.com/s/swflzjj3nd3?password=2022#","\u7535\u5F71/\u522E\u524A\u5B8C\u7535\u5F71 https://115.com/s/swz5xxr3697?password=2618#","\u7535\u5F71/\u52A8\u753B\u7535\u5F71 https://115.com/s/swz6gml3fwo?password=8888#","\u7535\u5F71/\u675C\u6BD471\u90E8 https://115cdn.com/s/swffkgd3hqd?password=f1c5#","\u7535\u5F71/\u753B\u8D28\u63A7 https://115cdn.com/s/swh9oc13zpx?password=ayss#","\u7535\u5F71/\u97E9\u56FD https://115.com/s/sw680gn3nn3?password=ee84#","\u7535\u89C6\u5267/\u52A8\u6F2B https://115.com/s/swzkkkk3hqx?password=zba9#","\u7535\u89C6\u5267/\u52A8\u6F2B\u5408\u96C6 https://115.com/s/swzc4ek3z75?password=2268#","\u7535\u89C6\u5267/\u534E\u8BED https://115.com/s/sw69s7y3nn3?password=d269#","\u7535\u89C6\u5267/\u5DF2\u6574\u7406 https://115.com/s/swzywe13wn9?password=c318#","\u7535\u89C6\u5267/\u6B27\u7F8E https://115.com/s/swz75dj3697?password=d717#","\u7535\u89C6\u5267/\u6B27\u7F8E2 https://115.com/s/swzyj6836ku?password=dda7#","\u7535\u89C6\u5267/\u7ECF\u5178\u6E2F\u5267 https://115cdn.com/s/swfnolz3h4y?password=hzys#","\u97F3\u4E50/\u97F3\u4E50\u5305 https://115.com/s/swz6sih3fwo?password=8888#"],mOn=[...pOn.map(e=>`115\u5408\u96C6 ${e}`),"\u963F\u91CC\u5408\u96C6 \u7535\u5F71 https://www.alipan.com/s/ZHNChQfiPfk","123\u5408\u96C6 \u7535\u5F71 https://123684.com/s/oec7Vv-rIYWh?\u63D0\u53D6\u7801:ZY4K","139\u5408\u96C6 \u7535\u5F71 https://yun.139.com/shareweb/#/w/i/2uh8ZHDm2NUqh","UC\u5408\u96C6 \u7535\u5F71 https://drive.uc.cn/s/e36c3fca7f234?public=1","\u767E\u5EA6\u5408\u96C6 \u7535\u5F71 https://pan.baidu.com/s/1e7s-XDuJlqG-IesgY3Vt5Q?pwd=x6l4","\u5938\u514B\u5408\u96C6 \u7535\u5F71 https://pan.quark.cn/s/d19c4ebe1ff7","SMB\u5408\u96C6 \u7535\u5F71 smb://192.168.1.10/Videos"].join(` -`);szt=Number.MAX_SAFE_INTEGER;CW=async e=>{let t={text:String(e.config?.sharemount?.text||""),batchTiers:e.config?.sharemount?.batchTiers||{},searchLimit:Number(e.config?.sharemount?.searchLimit)||30,searchMaxShares:Number(e.config?.sharemount?.searchMaxShares)||10,searchIntervalMs:Number(e.config?.sharemount?.searchIntervalMs)||600,searchCacheTtlMs:Number(e.config?.sharemount?.searchCacheTtlMs)||6e5},r=await e.db.getObjectDefault("/config/sharemount",t),n=GPe(r?.batchTiers);return{text:await vOn(r,e),...azt(n),batchTiers:n,batchTierOptions:izt(),searchLimit:Dp(r?.searchLimit,30,1,100),searchMaxShares:Dp(r?.searchMaxShares,10,1,szt),searchIntervalMs:Dp(r?.searchIntervalMs,600,0,5e3),searchCacheTtlMs:Dp(r?.searchCacheTtlMs,10*60*1e3,0,60*60*1e3),providers:ozt(),directMountToken:C_}};SOn=async(e,t={})=>{let r=GPe(),n={text:String(t.text||""),...azt(r),batchTiers:r,searchLimit:Dp(t.searchLimit,30,1,100),searchMaxShares:Dp(t.searchMaxShares,10,1,szt),searchIntervalMs:Dp(t.searchIntervalMs,600,0,5e3),searchCacheTtlMs:Dp(t.searchCacheTtlMs,10*60*1e3,0,60*60*1e3)};return await e.db.push("/config/sharemount",n),{...n,batchTierOptions:izt(),providers:ozt(),directMountToken:C_}}});var $zt={};Ft($zt,{createShareMountSpider:()=>D2n,createUnifiedShareMountSpider:()=>Fzt,default:()=>P2n});function x3(e){return Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}function w3(e){try{return JSON.parse(Buffer.from(String(e||""),"base64url").toString("utf8"))}catch{return null}}function N3(e,t){return`${e}@@@${x3(t)}`}function Pp(e,t){let r=`${t}@@@`;return String(e||"").startsWith(r)?w3(String(e).slice(r.length)):null}function bzt(e,t=["pwd","password","share_pwd","passcode"]){try{let r=new URL(e);for(let n of t){let s=r.searchParams.get(n);if(s)return s}}catch{}return""}function eN(e,t=LW){let r=String(e||"").toLowerCase();return t.some(n=>r.endsWith(n))}function POn(e){return String(e||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function Lp(e,t=0){let r=POn(e),n=Number(t||0);return n>0?`${r} [${Ju(n)}]`:r}function MW(e,t="srt",r="\u5916\u6302\u5B57\u5E55"){if(!e)return{};let n={url:e,name:r,format:t||"srt"};return{subt:e,subtitle:e,subs_urls:[e],subs:[n],extra:{subt:e,subtitle:e,subs_urls:[e],subs:[n]}}}function gl(e,t={}){return Wr(e,{msg:e,...t})}function Izt(e=""){let t=tr(e);if(t)return t;let r=String(e||"").replace(/^\./,"").toLowerCase();return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}function LOn(e){let t=String(e||"").split(".").pop()?.toLowerCase();return t&&t!==String(e||"").toLowerCase()?t:""}function YPe(e){let t=LOn(e);return!!t&&bOn.has(t)}function MOn(e){let t=String(e||"").trim(),r=/https?:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)(?:\?([^\s#]+))?/i.exec(t);if(!r)return null;let n=new URLSearchParams(r[2]||""),s=n.get("password")||n.get("pwd")||"";return s?{shareCode:r[1],receiveCode:s,url:t}:null}async function kOn(e,t,r){let n=[],s=r.batchSize,i=Math.max(1e4,Number(r.timeoutMs)||6e4),a=t||e.shareCode,o=Math.max(0,Number.parseInt(r.page,10)||0),c=o>0?(o-1)*s:0;for(;;){let u=await ve.get(lzt,{params:{share_code:e.shareCode,receive_code:e.receiveCode,cid:a,limit:String(s),offset:String(c)},timeout:i,validateStatus:()=>!0}),l=u?.data;if(u.status>=400||l?.state===!1)throw new Error(l?.error||l?.message||`115 share snap status=${u.status}`);let d=Array.isArray(l?.data?.list)?l.data.list:[];if(d=d.map(f=>({...f,_shareParentCid:String(a||"")})),o>0){let h=Number(l?.data?.count)||0;if(h<=0&&(h=c+d.length,d.length===0&&o>1)){let p=Math.max(0,c-s),m=await ve.get(lzt,{params:{share_code:e.shareCode,receive_code:e.receiveCode,cid:a,limit:String(s),offset:String(p)},timeout:i,validateStatus:()=>!0}),_=m?.data;if(m.status<400&&_?.state!==!1){let g=Array.isArray(_?.data?.list)?_.data.list:[];g.length0&&await zt(r.batchIntervalMs)}return n}function BOn(e){let t=eLe.get(e);return t?t.expiresAt<=Date.now()?(eLe.delete(e),null):t.value:null}function UOn(e,t,r){r<=0||eLe.set(e,{value:t,expiresAt:Date.now()+r})}function FOn(e){let t=[e?.data?.list,e?.data?.items,e?.data,e?.list,e?.items];for(let r of t)if(Array.isArray(r))return r;return[]}function $On(e,t=""){let r=Number(e?.errno??e?.errNo??e?.code??0),n=String(t||e?.error||e?.message||e?.msg||"");return r===990001||/登录|login/i.test(n)}async function qOn(e,t,r,n,s=""){let i=n.searchLimit,a=(r-1)*i,o=await ve.get(xOn,{params:{share_code:e.shareCode,receive_code:e.receiveCode,cid:0,limit:String(i),offset:String(a),search_value:t,type:0},headers:{...wOn,Referer:`https://115.com/s/${e.shareCode}?password=${e.receiveCode}`,...s?{Cookie:s}:{}},timeout:15e3,validateStatus:()=>!0}),c=o?.data;if(o.status>=400||c?.state===!1){let u=c?.error||c?.message||`115 share search status=${o.status}`,l=new Error(u);throw l.auth=$On(c,u),l}return FOn(c)}function HOn(e,t){let r=String(e||"").trim().toLowerCase(),n=String(t||"").trim().toLowerCase();return!!n&&r.includes(n)}function xW(e,t,r="",n="",s={},i="share"){return Ot([i,e.shareCode,e.receiveCode,t||"",r||"",Izt(n),s.name||"",Number(s.size||0),s.sha1||"",s.pickCode||"",s.parentCid||""],{structured:!0})}function VOn(e){let t=String(e||"").trim(),r=[/https?:\/\/yun\.139\.com\/shareweb\/#\/w\/i\/([^?&#\s]+)/i,/https?:\/\/caiyun\.139\.com\/m\/i\?([^?&#\s]+)/i,/https?:\/\/caiyun\.139\.com\/w\/i\/([^?&#\s]+)/i];for(let n of r){let s=n.exec(t);if(s?.[1])return{url:t,linkID:s[1]}}return null}function dzt(e){let t=[];for(let r=0;r>>2]|=e[r]<<24-r%4*8;return I3.default.lib.WordArray.create(t,e.length)}function jOn(e){let{words:t,sigBytes:r}=e,n=Buffer.alloc(r);for(let s=0;s>>2]>>>24-s%4*8&255;return n}function KOn(e){return{update(t,r,n){let s=Buffer.isBuffer(t)?t:Buffer.from(String(t||""),r==="binary"?"latin1":r),i=I3.default.DES.encrypt(dzt(s),dzt(Buffer.from(e)),{mode:I3.default.mode.ECB,padding:I3.default.pad.NoPadding}),a=jOn(i.ciphertext);return n==="binary"?a.toString("latin1"):a},final(t){return t==="binary"?"":Buffer.alloc(0)}}}function GOn(e){let t=Buffer.isBuffer(e)?e:Buffer.from(e||""),r=BigInt(t.length)*8n,n=(56-(t.length+1)%64+64)%64,s=Buffer.concat([t,Buffer.from([128]),Buffer.alloc(n),Buffer.alloc(8)]);s.writeUInt32LE(Number(r&0xffffffffn),s.length-8),s.writeUInt32LE(Number(r>>32n&0xffffffffn),s.length-4);let i=1732584193,a=4023233417,o=2562383102,c=271733878,u=new Array(16),l=(_,g,y)=>(_&g|~_&y)>>>0,d=(_,g,y)=>(_&g|_&y|g&y)>>>0,f=(_,g,y)=>(_^g^y)>>>0,h=(_,g)=>(_<>>32-g)>>>0,p=(..._)=>_.reduce((g,y)=>g+y>>>0,0);for(let _=0;_{i=h(p(i,l(a,o,c),u[v]),3),c=h(p(c,l(i,a,o),u[v+1]),7),o=h(p(o,l(c,i,a),u[v+2]),11),a=h(p(a,l(o,c,i),u[v+3]),19)}),[0,1,2,3].forEach(v=>{i=h(p(i,d(a,o,c),u[v],1518500249),3),c=h(p(c,d(i,a,o),u[v+4],1518500249),5),o=h(p(o,d(c,i,a),u[v+8],1518500249),9),a=h(p(a,d(o,c,i),u[v+12],1518500249),13)}),[0,2,1,3].forEach(v=>{i=h(p(i,f(a,o,c),u[v],1859775393),3),c=h(p(c,f(i,a,o),u[v+8],1859775393),9),o=h(p(o,f(c,i,a),u[v+4],1859775393),11),a=h(p(a,f(o,c,i),u[v+12],1859775393),15)}),i=p(i,g),a=p(a,y),o=p(o,A),c=p(c,E)}let m=Buffer.alloc(16);return m.writeUInt32LE(i,0),m.writeUInt32LE(a,4),m.writeUInt32LE(o,8),m.writeUInt32LE(c,12),m}function zOn(){let e=[];return{update(t,r){return e.push(Buffer.isBuffer(t)?t:Buffer.from(String(t||""),r)),this},digest(t){let r=GOn(Buffer.concat(e));return t==="hex"?r.toString("hex"):t==="binary"?r.toString("latin1"):t?r.toString(t):r}}}function YOn(){let e=Af.default.createCipheriv,t=Af.default.createHash,r=!1;try{e.call(Af.default,"DES-ECB",Buffer.alloc(8),"")}catch{r=!0}let n=!1;try{t.call(Af.default,"md4")}catch{n=!0}if(r&&!Af.default.__catpawSmbDesEcbPatched&&(Af.default.createCipheriv=function(i,a,o,c){return String(i).toLowerCase()==="des-ecb"?KOn(a):e.call(this,i,a,o,c)},Af.default.__catpawSmbDesEcbPatched=!0),n&&!Af.default.__catpawSmbMd4Patched){let s=Af.default.createHash;Af.default.createHash=function(a,o){return String(a).toLowerCase()==="md4"?zOn():s.call(this,a,o)},Af.default.__catpawSmbMd4Patched=!0}}function ma(...e){let t=[];for(let r of e)for(let n of String(r||"").split(/[\\/]+/)){let s=n.trim();if(!(!s||s===".")){if(s===".."){t.pop();continue}t.push(s)}}return t.join("\\")}function R3(e){return String(e||"").split(/[\\/]+/).filter(Boolean).pop()||""}function kW(e){let t=String(e||"").split(".").pop()?.toLowerCase();return t&&t!==String(e||"").toLowerCase()?t:""}function QOn(e){let t=kW(e);return!!t&&OOn.has(t)}function WOn(e){let t=String(e||"").trim();if(!/^smb:\/\//i.test(t))return null;let r;try{r=new URL(t)}catch{return null}let n=r.pathname.split("/").filter(Boolean).map(c=>{try{return decodeURIComponent(c)}catch{return c}});if(!r.hostname||!n.length)return null;let s=r.searchParams,i=s.get("username")||s.get("user")||decodeURIComponent(r.username||""),a=s.get("password")||s.get("pass")||decodeURIComponent(r.password||""),o=s.get("domain")||s.get("workgroup")||"";if(i.includes(";")){let c=i.split(";");o=o||c.shift(),i=c.join(";")}else if(i.includes("\\")){let c=i.split("\\");o=o||c.shift(),i=c.join("\\")}return{host:r.hostname,port:Number(r.port||s.get("port")||tLe)||tLe,share:n.shift(),rootPath:ma(n.join("\\")),username:i,password:a,domain:o||Tzt,url:t}}function Rzt(e){return new Azt.default({share:`\\\\${e.host}\\${e.share}`,domain:e.domain||Tzt,username:e.username||"",password:e.password||"",port:e.port||tLe,packetConcurrency:8,autoCloseTimeout:1e4})}async function Czt(e,t){let r=Rzt(e);try{return await t(r)}finally{try{r.disconnect()}catch{}}}async function XOn(e,t,r){let n=ma(t||e.rootPath||"");return await Czt(e,async s=>{let i=await s.readdir(n,{stats:!0}),a=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),o=Math.max(1,Number(r.batchSize)||1e3);if(r.batchIntervalMs>0&&i.length>r.batchSize&&await zt(r.batchIntervalMs),a>0){let c=(a-1)*o;return{items:i.slice(c,c+o),paged:!0,page:a,pageSize:o,total:i.length}}return i.slice(0,o)})}async function JOn(e,t){return await Czt(e,async r=>r.stat(ma(t)))}function ZOn(e,t,r=""){let n=x3({e:e.id,p:ma(t),n:r||R3(t),exp:Date.now()+NOn});return C3.set(n,!0),n}function e2n(e){if(!C3.has(e))return null;let t=w3(e);return!t||Number(t.exp||0)String(r||"").trim()).filter(Boolean)}}function u2n(e){let t=Dzt(e);return t?t.segments:null}function nLe(e,t,r="",n=""){return N3("mount",{k:e.key,e:t.id,...e.mountPayload(t,r,n),n:n||t.dirName||t.category})}function Pzt(e,t,r,n,s){return N3("file",{k:e.key,...e.filePayload(t,r,n,s)})}function l2n(e,t,r="",n=""){return N3("playlist",{k:e.key,e:t.id,...e.playlistPayload(t,r,n),n:n||t.dirName||t.category||"\u64AD\u653E\u5217\u8868"})}function Lzt(e,t){if(e.lengthE.name).slice(0,20);return{vod_id:i,vod_name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`,vod_pic:x_,vod_remarks:y.length?`${y.length}\u4E2A\u5B50\u76EE\u5F55`:"\u76EE\u5F55",vod_content:[`\u76EE\u5F55: ${c.join(" / ")||o||""}`,`\u6765\u6E90: ${$s(n)}`,A.length?`\u5B50\u76EE\u5F55: ${A.join("\u3001")}${y.length>A.length?"...":""}`:"\u672A\u53D1\u73B0\u53EF\u64AD\u653E\u89C6\u9891"].join(` -`),cate:{id:i,name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`}}}return{vod_id:i,vod_name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`,vod_pic:x_,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55\u5C42\u7EA7\u8FC7\u6DF1\uFF0C\u8BF7\u4ECE\u76EE\u5F55\u5165\u53E3\u7EE7\u7EED\u8FDB\u5165 -\u6765\u6E90: ${$s(n)}`,cate:{id:i,name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`}}}async function $W(e,t,r,n,s,i,a={}){await Mp(t,e);let o=t.categoryPaging&&a.page?{...r,page:Math.max(1,Number.parseInt(a.page,10)||1)}:r,c=await t.list(n,s,o),u=BW(t,c),l=UW(t,c,n,s),d=d2n(c),f=[],h=[],p=[];for(let y of u){let A=t.fileName(y);if(t.isFolder(y,A)){let E=t.folderLocator(n,y,l),v=nLe(t,n,E,A);f.push({vod_id:v,type_id:v,type_name:A,vod_name:A,vod_pic:x_,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:v,name:A},ratio:1.33})}else(t.isSubtitle?t.isSubtitle(y,A):vt(A))?p.push(y):t.isVideo(y,A)&&h.push(y)}let m=Kt(h),_=f,g=a.playlistName||`${i||n.dirName||n.category||"\u672C\u5C42"} \u64AD\u653E\u5217\u8868`;(!d||d.page===1)&&m.length>1&&_.push({vod_id:l2n(t,n,s,g),vod_name:a.shortPlaylistName||"\u64AD\u653E\u5217\u8868",vod_pic:TOn,vod_remarks:`${m.length}\u4E2A\u89C6\u9891`,ratio:1.33});for(let y of m){let A=t.fileName(y),E=t.multiSubtitle?ic(A,p,t.fileName):Ir(A,p,t.fileName);_.push({vod_id:Pzt(t,n,y,E,l),vod_name:A,vod_pic:Ezt,vod_remarks:Ju(t.itemSize(y)),ratio:1.33})}return d&&Object.defineProperty(_,"pageMeta",{value:d,enumerable:!1}),_}async function Mp(e,t){return e.init&&await e.init(t),{}}async function kzt(e,t){let{entries:r}=await tN(t.server,e),n=new Set,s=[];for(let i of r){let a=i.pathSegments[0]||C_;n.has(a)||(n.add(a),s.push({type_id:o2n(a),type_name:a===C_?PW:a}))}return{class:s}}async function mzt(e,t,r,n,s,i){let a=new Map,o=[];for(let f of n){if(!Lzt(f.pathSegments,s))continue;if(f.pathSegments.length===s.length){o.push(f);continue}let h=f.pathSegments[s.length];a.has(h)||a.set(h,[...s,h])}let c=[];for(let[f,h]of a){let p=Ozt(h);c.push({vod_id:p,type_id:p,type_name:f,vod_name:f,vod_pic:x_,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:p,name:f},ratio:1.33})}let u=[],l=null;for(let f=0;f1?`${t.shortName}${f+1} \u64AD\u653E\u5217\u8868`:`${p} \u64AD\u653E\u5217\u8868`,_=await $W(e,t,r,h,t.rootLocator(h),p,{playlistName:m,shortPlaylistName:o.length>1?`${t.shortName}${f+1} \u64AD\u653E\u5217\u8868`:"\u64AD\u653E\u5217\u8868",page:i});a.size===0&&o.length===1&&_.pageMeta&&(l=_.pageMeta),c.push(..._)}catch(p){u.push(`${$s(h)}: ${p?.message||p}`),console.error(`[${t.key}] category failed:`,p?.message||p)}}l&&Object.defineProperty(c,"pageMeta",{value:l,enumerable:!1});let d=FW(i,c,s.join("/")||PW);return u.length&&(d.msg=u.slice(0,3).join(` -`)),d}async function h2n(e,t){await Mp(e,t);let{settings:r,entries:n}=await tN(t.server,e),s=String(t.body?.id||DW),i=Math.max(1,Number.parseInt(t.body?.page||t.body?.pg,10)||1);if(s===DW){let u=await kzt(e,t);return{page:1,pagecount:1,limit:u.class.length,total:u.class.length,list:u.class.map(l=>({vod_id:l.type_id,type_id:l.type_id,type_name:l.type_name,vod_name:l.type_name,vod_pic:x_,vod_remarks:"\u5206\u7C7B",vod_tag:"folder",cate:{id:l.type_id,name:l.type_name},ratio:1.33}))}}let a=u2n(s);if(a)return await mzt(t,e,r,n,a,i);let o=c2n(s);if(o)return await mzt(t,e,r,n,o,i);let c=Pp(s,"mount");if(c){let u=n.find(d=>d.id===String(c.e));if(!u)return{page:1,pagecount:1,limit:0,total:0,list:[]};let l=String(c.n||u.dirName||u.category||e.shortName);try{let d=await $W(t,e,r,u,e.locatorFromMount(c,u),l,{page:i});return FW(i,d,l)}catch(d){return console.error(`[${e.key}] category failed:`,d?.message||d),{page:1,pagecount:1,limit:0,total:0,list:[],msg:d?.message||`\u8BFB\u53D6${e.shortName}\u5931\u8D25`}}}return{page:1,pagecount:1,limit:0,total:0,list:[]}}async function p2n(e,t){let{settings:r,entries:n}=await tN(t.server,e),s=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],i=[];for(let a of s){let o=Pp(a,"file");if(o){let l=n.find(d=>d.id===String(o.e));if(!l){i.push({vod_id:a,vod_name:o.n||`${e.shortName}\u8D44\u6E90`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}i.push(await e.fileDetail(t,l,o,a));continue}let c=Pp(a,"playlist");if(c){let l=n.find(d=>d.id===String(c.e));if(!l){i.push({vod_id:a,vod_name:c.n||"\u64AD\u653E\u5217\u8868",vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{let d=e.locatorFromPlaylist(c,l),f=await e.list(l,d,r),h=BW(e,f),p=UW(e,f,l,d),{videos:m,subtitles:_}=sLe(e,h);i.push(await e.playlistDetail(t,l,c,Kt(m),_,p,a))}catch(d){console.error(`[${e.key}] playlist detail failed:`,d?.message||d),i.push({vod_id:a,vod_name:c.n||"\u64AD\u653E\u5217\u8868",vod_content:d?.message||`\u8BFB\u53D6${e.shortName}\u64AD\u653E\u5217\u8868\u5931\u8D25`})}continue}let u=Pp(a,"mount");if(u){let l=n.find(d=>d.id===String(u.e));if(!l){i.push({vod_id:a,vod_name:u.n||`${e.shortName}\u76EE\u5F55`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{i.push(await Mzt(t,e,r,l,u,a))}catch(d){console.error(`[${e.key}] mount detail failed:`,d?.message||d),i.push({vod_id:a,vod_name:u.n||`${e.shortName}\u76EE\u5F55`,vod_content:d?.message||`\u8BFB\u53D6${e.shortName}\u76EE\u5F55\u5931\u8D25`})}continue}i.push({vod_id:a,vod_name:`${e.shortName}\u76EE\u5F55`,vod_remarks:"\u76EE\u5F55"})}return{list:i}}async function m2n(){return{page:1,pagecount:1,list:[]}}async function g2n(e,t,r){try{let n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);s.init=i.json(),i=await t.server.inject().post(`${n}/home`),s.home=i.json();let a=s.home?.class?.[0];return a&&(i=await t.server.inject().post(`${n}/category`).payload({id:a.type_id,page:1}),s.category=i.json()),s}catch(n){return console.error(n),r.code(500),{err:n.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}function gzt(e){let t=e==="quarkshare";return{key:e,shortName:t?"\u5938\u514B\u5206\u4EAB":"UC\u5206\u4EAB",metaName:t?"\u{1F4E6} \u5938\u514B\u5408\u96C6":"\u{1F4E6} UC\u5408\u96C6",searchable:!1,init:t?up:dp,async parseShare(r){let n=t?await Z4(r):nB(r);return n?.shareId?{url:r,...n,sharePwd:n.sharePwd||bzt(r,["pwd","password","passcode"])}:null},rootLocator:r=>r.folderId||"0",list:t?b3t:q3t,categoryPaging:!0,items:r=>Array.isArray(r?.items)?r.items:Array.isArray(r)?r:[],fileName:xzt,itemSize:wW,isFolder(r,n){return rLe(r,n)},isSubtitle:(r,n)=>!rLe(r,n)&&vt(n),isVideo:(r,n)=>r2n(r,t?yzt:LW)&&wW(r)>=ZPe&&v3(r),folderLocator:(r,n)=>S3(n),mountPayload:(r,n="")=>({f:n||r.folderId||"0"}),locatorFromMount:(r,n)=>String(r.f||n.folderId||"0"),playlistPayload:(r,n="")=>({l:n||""}),locatorFromPlaylist:(r,n)=>String(r.l||n.folderId||"0"),filePayload(r,n,s,i={}){return{e:r.id,n:this.fileName(n),f:S3(n),ft:v3(n),st:String(n?.stoken||i?.stoken||""),sf:S3(s),sft:v3(s),se:s?tr(this.fileName(s)):"",sz:wW(n)}},async fileDetail(r,n,s,i){let a=await ht(t?"quark":"uc"),o=Ot([n.shareId,s.st||"",s.f||"",s.ft||"",s.sf||"",s.sft||"",s.se||""],{structured:!0});if(!t)return{vod_id:i,vod_name:s.n||"UC\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${s.n||""} -\u6765\u6E90: ${$s(n)}`,vod_play_from:a,vod_play_url:`${Lp(s.n,s.sz)}$${o}`};let c=Ro(a,[{vod_id:o,vod_name:s.n||"\u5938\u514B\u5206\u4EAB\u8D44\u6E90",vod_size:Number(s.sz||0)}]);return{vod_id:i,vod_name:s.n||"\u5938\u514B\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${s.n||""} -\u6765\u6E90: ${$s(n)}`,vod_play_from:c?.from||a,vod_play_url:c?.url||""}},async playlistDetail(r,n,s,i,a,o,c){let u=await ht(t?"quark":"uc"),l=i.map(f=>{let h=this.fileName(f),p=Ir(h,a,this.fileName);return{vod_id:Ot([n.shareId,String(f?.stoken||o?.stoken||""),S3(f),v3(f),S3(p),v3(p),p?tr(this.fileName(p)):""],{structured:!0}),vod_name:h,vod_size:wW(f)}}),d=Ro(u,l,!1);return{vod_id:c,vod_name:s.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${l.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(n)}`,vod_play_from:d?.from||u,vod_play_url:d?.url||""}},play:t?(r,n)=>AK(r,n):(r,n)=>sB(r,n)}}function E2n(e="",t=""){return!e&&!t?"":`gy:${x3({f:String(e||""),p:String(t||"")})}`}function XPe(e=""){let t=String(e||"");if(!t)return{fileId:"",path:""};if(!t.startsWith("gy:"))return{fileId:t,path:""};let r=w3(t.slice(3))||{};return{fileId:String(r.f||""),path:String(r.p||"")}}async function Bzt(e,t){let r=String(e.params?.token||"").replace(/\.[^.]+$/,""),n=e2n(r);if(!n)return t.code(403).send("SMB proxy token expired");let{entries:s}=await tN(e.server,iLe),i=s.find(p=>p.id===String(n.e));if(!i)return t.code(404).send("SMB config not found");let a=ma(n.p),o=String(n.n||R3(a)||"file"),c;try{c=await JOn(i,a)}catch(p){return t.code(404).send(p?.message||"SMB file not found")}if(typeof c?.isDirectory=="function"&&c.isDirectory())return t.code(400).send("SMB path is a directory");let u=Number(c?.size||0),l=kW(o),d=DOn[l]||"application/octet-stream",f=dx(e.headers?.range,u);if(f?.unsatisfied)return t.code(416),t.header("Content-Range",`bytes */${u}`),t.send("");let h=Rzt(i);try{let p=f?{start:f.start,end:f.end}:{},m=await h.createReadStream(a,p),_=()=>{try{h.disconnect()}catch{}};return m.on("close",_),m.on("end",_),m.on("error",_),t.header("Content-Type",d),t.header("Accept-Ranges","bytes"),t.header("Access-Control-Allow-Origin","*"),t.header("Access-Control-Allow-Headers","Range, Content-Type"),t.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),t.header("Cache-Control","no-store"),f?(t.code(206),t.header("Content-Range",`bytes ${f.start}-${f.end}/${u}`),t.header("Content-Length",String(f.end-f.start+1))):u>0&&t.header("Content-Length",String(u)),t.send(m)}catch(p){try{h.disconnect()}catch{}return t.code(502).send(p?.message||"SMB proxy failed")}}function b3(e){return Bb(e.key)?.label||e.shortName}async function aLe(e){let t=await CW(e),r=KPe(t.text),n=new Map,s=[];for(let i of r.entries){let a=Rc[i.providerKey];if(!a)continue;let o=await a.parseShare(i.url);if(!o)continue;n.has(a.key)||(n.set(a.key,[]),s.push(a));let c=n.get(a.key);c.push({...i,id:String(c.length),category:i.pathSegments[0]||PW,dirName:i.pathSegments.slice(1).join("/")||"",namePath:i.mountPath,...o})}return{settings:t,entriesByProvider:n,orderedProviders:s,errors:r.errors}}function T2n(e){return`cat@@@${e.key}`}function b2n(e){if(!String(e||"").startsWith("cat@@@"))return null;let t=String(e).slice(6);return Rc[t]?t:null}async function Uzt(e){let{entriesByProvider:t,orderedProviders:r}=await aLe(e.server),n=[];for(let s of r){let i=t.get(s.key)||[];i.length&&n.push({type_id:T2n(s),type_name:i[0]?.providerLabel||b3(s)})}return{class:n}}async function _zt(e,t,r,n,s,i){await Mp(t,e);let a=Jw(r,t.key),o=new Map,c=[];for(let h of n){if(!Lzt(h.pathSegments,s))continue;if(h.pathSegments.length===s.length){c.push(h);continue}let p=h.pathSegments[s.length];o.has(p)||o.set(p,[...s,p])}let u=[];for(let[h,p]of o){let m=Ozt(p,t.key);u.push({vod_id:m,type_id:m,type_name:h,vod_name:h,vod_pic:x_,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:m,name:h},ratio:1.33})}let l=[],d=null;for(let h=0;h1?`${b3(t)}${h+1} \u64AD\u653E\u5217\u8868`:`${m} \u64AD\u653E\u5217\u8868`,g=await $W(e,t,a,p,t.rootLocator(p),m,{playlistName:_,shortPlaylistName:c.length>1?`${b3(t)}${h+1} \u64AD\u653E\u5217\u8868`:"\u64AD\u653E\u5217\u8868",page:i});o.size===0&&c.length===1&&g.pageMeta&&(d=g.pageMeta),u.push(...g)}catch(m){l.push(`${$s(p)}: ${m?.message||m}`),console.error(`[sharemount:${t.key}] category failed:`,m?.message||m)}}d&&Object.defineProperty(u,"pageMeta",{value:d,enumerable:!1});let f=FW(i,u,s.join("/")||b3(t));return l.length&&(f.msg=l.slice(0,3).join(` -`)),f}async function I2n(e){let{settings:t,entriesByProvider:r}=await aLe(e.server),n=String(e.body?.id||DW),s=Math.max(1,Number.parseInt(e.body?.page||e.body?.pg,10)||1);if(n===DW){let c=await Uzt(e);return{page:1,pagecount:1,limit:c.class.length,total:c.class.length,list:c.class.map(u=>({vod_id:u.type_id,type_id:u.type_id,type_name:u.type_name,vod_name:u.type_name,vod_pic:x_,vod_remarks:"\u5206\u7C7B",vod_tag:"folder",cate:{id:u.type_id,name:u.type_name},ratio:1.33}))}}let i=b2n(n);if(i){let c=Rc[i];return await _zt(e,c,t,r.get(c.key)||[],[],s)}let a=Dzt(n);if(a?.providerKey&&Rc[a.providerKey]){let c=Rc[a.providerKey];return await _zt(e,c,t,r.get(c.key)||[],a.segments,s)}let o=Pp(n,"mount");if(o?.k&&Rc[o.k]){let c=Rc[o.k],l=(r.get(c.key)||[]).find(f=>f.id===String(o.e));if(!l)return{page:1,pagecount:1,limit:0,total:0,list:[]};let d=String(o.n||l.dirName||l.category||c.shortName);try{await Mp(c,e);let f=Jw(t,c.key),h=await $W(e,c,f,l,c.locatorFromMount(o,l),d,{page:s});return FW(s,h,d)}catch(f){return console.error(`[sharemount:${c.key}] category failed:`,f?.message||f),{page:1,pagecount:1,limit:0,total:0,list:[],msg:f?.message||`\u8BFB\u53D6${c.shortName}\u5931\u8D25`}}}return{page:1,pagecount:1,limit:0,total:0,list:[]}}function R2n(e,t){return N3("play",{k:e,id:String(t||"")})}function C2n(e,t){return String(e||"").split("$$$").map(r=>r.split("#").map(n=>{let s=n.indexOf("$");return s<0?n:`${n.slice(0,s+1)}${R2n(t,n.slice(s+1))}`}).join("#")).join("$$$")}function JPe(e,t){return e?.vod_play_url?{...e,vod_play_url:C2n(e.vod_play_url,t)}:e}async function x2n(e){let{settings:t,entriesByProvider:r}=await aLe(e.server),n=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],s=[];for(let i of n){let a=Pp(i,"file");if(a?.k&&Rc[a.k]){let u=Rc[a.k],l=(r.get(u.key)||[]).find(d=>d.id===String(a.e));if(!l){s.push({vod_id:i,vod_name:a.n||`${u.shortName}\u8D44\u6E90`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}await Mp(u,e),s.push(JPe(await u.fileDetail(e,l,a,i),u.key));continue}let o=Pp(i,"playlist");if(o?.k&&Rc[o.k]){let u=Rc[o.k],d=(r.get(u.key)||[]).find(f=>f.id===String(o.e));if(!d){s.push({vod_id:i,vod_name:o.n||"\u64AD\u653E\u5217\u8868",vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{await Mp(u,e);let f=Jw(t,u.key),h=u.locatorFromPlaylist(o,d),p=await u.list(d,h,f),m=BW(u,p),_=UW(u,p,d,h),{videos:g,subtitles:y}=sLe(u,m),A=await u.playlistDetail(e,d,o,Kt(g),y,_,i);s.push(JPe(A,u.key))}catch(f){console.error(`[sharemount:${u.key}] playlist detail failed:`,f?.message||f),s.push({vod_id:i,vod_name:o.n||"\u64AD\u653E\u5217\u8868",vod_content:f?.message||`\u8BFB\u53D6${u.shortName}\u64AD\u653E\u5217\u8868\u5931\u8D25`})}continue}let c=Pp(i,"mount");if(c?.k&&Rc[c.k]){let u=Rc[c.k],d=(r.get(u.key)||[]).find(f=>f.id===String(c.e));if(!d){s.push({vod_id:i,vod_name:c.n||`${u.shortName}\u76EE\u5F55`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{let f=Jw(t,u.key),h=await Mzt(e,u,f,d,c,i);s.push(JPe(h,u.key))}catch(f){console.error(`[sharemount:${u.key}] mount detail failed:`,f?.message||f),s.push({vod_id:i,vod_name:c.n||`${u.shortName}\u76EE\u5F55`,vod_content:f?.message||`\u8BFB\u53D6${u.shortName}\u76EE\u5F55\u5931\u8D25`})}continue}s.push({vod_id:i,vod_name:"\u5408\u96C6\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"})}return{list:s}}async function w2n(e,t){let r=Pp(e.body?.id,"play");if(!r?.k||!Rc[r.k])return gl("\u5408\u96C6\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=Rc[r.k];await Mp(n,e);let s=e.body;e.body={...s||{},id:r.id||""};try{return await n.play(e,t)}finally{e.body=s}}async function N2n(e){return await Mp(q0,e),await q0.search(e)}async function O2n(e,t){try{let r=e.server.prefix,n={},s=await e.server.inject().post(`${r}/init`);n.init=s.json(),s=await e.server.inject().post(`${r}/home`),n.home=s.json();let i=n.home?.class?.[0];return i&&(s=await e.server.inject().post(`${r}/category`).payload({id:i.type_id,page:1}),n.category=s.json()),n}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}function Fzt(){return{meta:{key:"sharemount",name:"\u{1F4E6} \u7F51\u76D8",type:3,searchable:!0},api:async e=>{e.post("/init",async()=>({})),e.post("/home",Uzt),e.post("/category",I2n),e.post("/detail",x2n),e.post("/play",w2n),e.post("/search",N2n),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us),e.get("/proxy/media/:token",Bzt),e.get("/test",O2n)}}}function D2n(e){let t=Rc[e];if(!t||!Bb(e))throw new Error(`Unknown sharemount provider: ${e}`);return{meta:{key:t.key,name:t.metaName,type:3,searchable:t.searchable},api:async r=>{r.post("/init",n=>Mp(t,n)),r.post("/home",n=>kzt(t,n)),r.post("/category",n=>h2n(t,n)),r.post("/detail",n=>p2n(t,n)),r.post("/play",(n,s)=>t.play(n,s)),r.post("/search",t.search?n=>t.search(n):m2n),["alishare","quarkshare","ucshare","123share","baidushare"].includes(t.key)&&r.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us),t.key==="smb"&&r.get("/proxy/media/:token",Bzt),r.get("/test",(n,s)=>g2n(t,n,s))}}}var Azt,Af,I3,x_,Ezt,TOn,DW,PW,ZPe,LW,yzt,bOn,IOn,ROn,COn,vzt,czt,uzt,lzt,xOn,Szt,wOn,eLe,tLe,Tzt,NOn,OOn,DOn,C3,q0,_2n,A2n,y2n,v2n,S2n,iLe,Rc,P2n,qzt=ae(()=>{Pr();Azt=Ne(ezt(),1),Af=Ne(require("node:crypto"),1),I3=Ne(Gi(),1);GE();jT();wx();wx();eB();eB();iB();$4();GCe();RB();su();Cx();ws();wi();Xc();y0();qg();Wc();ua();DK();pj();sa();Oj();zPe();x_="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Ezt="https://img.icons8.com/color/48/video.png",TOn="https://img.icons8.com/fluency/96/playlist.png",DW="root",PW="\u76F4\u6302",ZPe=5*1024*1024,LW=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],yzt=[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".m4v",".mpg",".mpeg",".3gp",".f4v",".vob",".rm",".iso",".asf",".divx"],bOn=new Set(["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","mpg","3gp","ts","m2ts","mp3","wav","aac","iso","rmvb","rm","m4v","f4v","m4a","vob"]),IOn=30,ROn=10,COn=600,vzt=10*60*1e3,czt=2*60*1e3,uzt=6,lzt="https://webapi.115.com/share/snap",xOn="https://webapi.115.com/share/search",Szt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",wOn={"User-Agent":Szt,"X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"},eLe=new gt(200,vzt),tLe=445,Tzt="WORKGROUP",NOn=6*60*60*1e3,OOn=new Set(["mp4","mkv","webm","avi","wmv","flv","mov","mpeg","mpg","m4v","ts","m2ts","3gp","rm","rmvb","iso","vob","f4v","m3u8"]),DOn={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",webm:"video/webm",avi:"video/x-msvideo",mov:"video/quicktime",ts:"video/mp2t",m2ts:"video/mp2t",m3u8:"application/vnd.apple.mpegurl",vtt:"text/vtt; charset=utf-8",srt:"text/plain; charset=utf-8",ass:"text/plain; charset=utf-8",ssa:"text/plain; charset=utf-8"},C3=new Map;YOn();q0={key:"115share",shortName:"115\u5206\u4EAB",metaName:"\u{1F4E6} 115\u5408\u96C6",searchable:!0,init:cp,parseShare:MOn,rootLocator:()=>"",list:kOn,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:e=>String(e?.n||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5",itemSize:e=>Number(e?.s||e?.size||0),isFolder(e,t){return YPe(t)||vt(t)||e?.fid||e?.file_id?!1:Number(e?.fc)===0||!!e?.cid},isVideo:(e,t)=>YPe(t),folderLocator:(e,t)=>String(t.cid||""),mountPayload:(e,t="")=>({c:t||""}),locatorFromMount:e=>String(e.c||""),playlistPayload:(e,t="")=>({c:t||""}),locatorFromPlaylist:e=>String(e.c||""),filePayload(e,t,r){return{e:e.id,n:this.fileName(t),f:String(t?.fid||t?.file_id||""),sf:String(r?.fid||r?.file_id||""),se:r?Izt(this.fileName(r)):"",sz:this.itemSize(t),sh:rf(t?.sha1||t?.sha||t?.file_sha1),pc:String(t?.pc||t?.pick_code||t?.pickcode||""),p:String(t?._shareParentCid||"")}},async fileDetail(e,t,r,n){let s=await ht("115"),i={name:r.n,size:r.sz,sha1:r.sh,pickCode:r.pc,parentCid:r.p},a=xW(t,r.f||"",r.sf||"",r.se||"",i,"share"),c=await VE(e.server)?xW(t,r.f||"",r.sf||"",r.se||"",i,"rapid-share"):"",u=Lp(r.n,r.sz),l=ip("115",[{routeKey:ir[115].original,from:s,url:`${u}$${a}`},c?{routeKey:ir[115].rapid123,from:"\u79D2\u4F20123",url:`${u}$${c}`}:null]);return{vod_id:n,vod_name:r.n||"115\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:l.from,vod_play_url:l.url}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("115"),c=n.map(f=>{let h=this.fileName(f),p=Ir(h,s,this.fileName);return`${Lp(h,this.itemSize(f))}$${xW(t,String(f?.fid||f?.file_id||""),String(p?.fid||p?.file_id||""),p?this.fileName(p):"",{name:h,size:this.itemSize(f),sha1:rf(f?.sha1||f?.sha||f?.file_sha1),pickCode:String(f?.pc||f?.pick_code||f?.pickcode||""),parentCid:String(f?._shareParentCid||"")},"share")}`}),l=await VE(e.server)?n.map(f=>{let h=this.fileName(f),p=Ir(h,s,this.fileName);return`${Lp(h,this.itemSize(f))}$${xW(t,String(f?.fid||f?.file_id||""),String(p?.fid||p?.file_id||""),p?this.fileName(p):"",{name:h,size:this.itemSize(f),sha1:rf(f?.sha1||f?.sha||f?.file_sha1),pickCode:String(f?.pc||f?.pick_code||f?.pickcode||""),parentCid:String(f?._shareParentCid||"")},"rapid-share")}`}):[],d=ip("115",[{routeKey:ir[115].original,from:o,url:c.join("#")},l.length?{routeKey:ir[115].rapid123,from:"\u79D2\u4F20123",url:l.join("#")}:null]);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:d.from,vod_play_url:d.url}},async play(e){await cp(e);let t=Mr(e.body?.id||"");if(!["share","rapid-share"].includes(t[0])||!t[1]||!t[2]||!t[3])return gl("115\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let r=await Xa(e.server);if(t[0]==="rapid-share"){let i=await jE(e.server,{fileId:t[3],name:t[6],size:Number(t[7]||0),sha1:t[8],pickCode:t[9]});if(i.mode==="invalid_metadata"&&t[10])try{let c=(await Fj(t[1],t[2],t[10],r)).find(u=>String(u.fid)===String(t[3]));c&&(i=await jE(e.server,{fileId:t[3],name:t[6]||c.name,size:Number(t[7]||c.size||0),sha1:t[8]||c.sha1,pickCode:t[9]}))}catch(o){console.warn("[115 share mount][downlist] rapid metadata lookup failed:",o?.message||o)}if(!i.success||!i.downloadUrl)return gl(i.message||"115\u2192\u79D2\u4F20123\u5931\u8D25",{mode:i.mode,downloaded:!1,uploaded:!1});let a=VT(i.downloadUrl);return a?(a.extra={rapidTransfer:{mode:i.mode,downloaded:!1,uploaded:!1,cleaned:i.cleaned===!0}},a):gl("\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u64AD\u653E\u5730\u5740\u65E0\u6548")}let n=await $j(t[1],t[2],t[3],r);if(!n?.url)return gl(n?.msg||"115\u5206\u4EAB\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n.url],header:{"User-Agent":Szt,Cookie:n.cookie||r,Referer:"https://115.com/",Origin:"https://115.com"}};if(t[4]){let i=await $j(t[1],t[2],t[4],r);if(i?.url){let a=t[5]||"srt";Object.assign(s,MW(i.url,a))}}return s},async search(e){let t=String(e.body?.wd||e.body?.keyword||e.body?.searchword||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page||e.body?.pg,10)||1);if(!t)return{page:r,pagecount:1,limit:0,total:0,list:[]};let{settings:n,entries:s}=await tN(e.server,q0);n.searchLimit=Math.max(1,Math.min(100,Number(n.searchLimit)||IOn)),n.searchMaxShares=Math.max(1,Math.floor(Number(n.searchMaxShares)||ROn)),n.searchIntervalMs=Math.max(0,Math.min(5e3,Number(n.searchIntervalMs)||COn)),n.searchCacheTtlMs=Math.max(0,Math.min(60*60*1e3,Number(n.searchCacheTtlMs)||vzt));let i=await Xa(e.server),a=s.slice(0,n.searchMaxShares),o=n.searchLimit,c=JSON.stringify({v:12,q:t,p:r,m:n.searchMaxShares,l:n.searchLimit}),u=BOn(c);if(u)return u;let l=[],d=new Set,f=[],h=!1;for(let m=0;m=o);m+=1){let _=a[m];if(_.pathSegments?.some(g=>HOn(g,t))){let g=nLe(q0,_,q0.rootLocator(_),_.pathSegments.at(-1)||_.category),y=`${_.id}:config:${_.mountPath}`;!d.has(y)&&l.length=o)break;try{let g=Math.max(1,Math.min(n.searchLimit,o-l.length)),y=await qOn(_,t,r,{...n,searchLimit:g},i);for(let A of y){if(l.length>=o)break;let E=this.fileName(A);if(this.isFolder(A,E)){let I=this.folderLocator(_,A,{});if(!I)continue;let T=nLe(q0,_,I,E),x=`${_.id}:dir:${I}`;if(d.has(x))continue;d.add(x),l.push({vod_id:T,type_id:T,type_name:E,vod_name:E,vod_pic:x_,vod_remarks:`${$s(_)} \xB7 \u76EE\u5F55`,vod_tag:"folder",cate:{id:T,name:E},ratio:1.33});continue}let v=String(A?.fid||A?.file_id||"");if(!v||this.isFolder(A,E)||!YPe(E))continue;let b=`${_.id}:${v}`;d.has(b)||(d.add(b),l.push({vod_id:Pzt(q0,_,A,null,{}),vod_name:E,vod_pic:Ezt,vod_remarks:`${$s(_)}${A?.s||A?.size?` \xB7 ${Ju(Number(A?.s||A?.size||0))}`:""}`,ratio:1.33}))}}catch(g){g?.auth&&(h=!0),f.push(`${$s(_)}: ${g?.message||g}`),console.warn("[115share] search failed:",$s(_),g?.message||g)}m0&&await zt(n.searchIntervalMs)}let p={page:r,pagecount:l.length>=n.searchLimit?r+1:r,limit:n.searchLimit,total:l.length,list:l};return!l.length&&f.length&&(p.msg=f.slice(0,3).join(` -`)),h||UOn(c,p,l.length?n.searchCacheTtlMs:Math.min(n.searchCacheTtlMs||czt,czt)),p}},_2n={key:"alishare",shortName:"\u963F\u91CC\u5206\u4EAB",metaName:"\u{1F4E6} \u963F\u91CC\u5408\u96C6",searchable:!1,init:Yg,parseShare(e){let t=QE(e);return t?.shareId?{url:e,...t,sharePwd:t.sharePwd||bzt(e)}:null},rootLocator:e=>e.folderId||"root",list:i3t,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:e=>String(e?.name||e?.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",itemSize:e=>Number(e?.size||0),isFolder(e,t){return this.isVideo(e,t)||vt(t)?!1:e?.type==="folder"||e?.category==="folder"},folderLocator:(e,t)=>String(t.file_id||""),mountPayload:(e,t="")=>({f:t||e.folderId||"root"}),locatorFromMount:(e,t)=>String(e.f||t.folderId||"root"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:(e,t)=>String(e.l||t.folderId||"root"),filePayload(e,t,r){return{e:e.id,n:this.fileName(t),f:String(t?.file_id||""),sf:String(r?.file_id||""),sz:Number(t?.size||0),se:r?tr(this.fileName(r)):""}},isVideo:function(t,r){if(t?.category==="video")return Number(t?.size||0)>=ZPe;let n=`.${String(t?.file_extension||"").toLowerCase()}`;return Number(t?.size||0)>=ZPe&&(LW.includes(n)||eN(r))},async fileDetail(e,t,r,n){let s=await ht("ali"),i=[{vod_id:Ot([t.shareId,r.f||"",r.sf||""],{structured:!0}),vod_name:r.n||"\u963F\u91CC\u5206\u4EAB\u8D44\u6E90",vod_size:Number(r.sz||0)}],a=Ro(s,i),o=[{vod_id:Ot([t.shareId,r.f||"",r.sf||"",t.url||""],{structured:!0}),vod_name:r.n||"\u963F\u91CC\u5206\u4EAB\u8D44\u6E90",vod_size:Number(r.sz||0)}],c=Ro("\u79D2\u4F20115",o),u=ip("ali",[{routeKey:ir.ali.original,from:a?.from,url:a?.url},{routeKey:ir.ali.rapid115,from:c?.from,url:c?.url}]);return{vod_id:n,vod_name:r.n||"\u963F\u91CC\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:u.from,vod_play_url:u.url}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("ali"),c=n.map(h=>{let p=this.fileName(h),m=Ir(p,s,this.fileName);return{vod_id:Ot([t.shareId,String(h?.file_id||""),String(m?.file_id||"")],{structured:!0}),vod_name:p,vod_size:Number(h?.size||0)}}),u=n.map(h=>{let p=this.fileName(h),m=Ir(p,s,this.fileName);return{vod_id:Ot([t.shareId,String(h?.file_id||""),String(m?.file_id||""),t.url||""],{structured:!0}),vod_name:p,vod_size:Number(h?.size||0)}}),l=Ro(o,c),d=Ro("\u79D2\u4F20115",u),f=ip("ali",[{routeKey:ir.ali.original,from:l?.from,url:l?.url},{routeKey:ir.ali.rapid115,from:d?.from,url:d?.url}]);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${n.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:f.from,vod_play_url:f.url}},play:(e,t)=>W4(e,t)};A2n={key:"123share",shortName:"123\u5206\u4EAB",metaName:"\u{1F4E6} 123\u5408\u96C6",searchable:!1,init:S0,parseShare(e){let t=tl.getShareData(e);return t?.shareKey?{url:e,...t}:null},rootLocator:()=>"0",list:(e,t,r)=>tl.listShareFilesOneLayer(e,t||"0",r),categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:n2n,itemSize:Ny,isFolder(e,t){return Nzt(e,t)},isVideo:s2n,folderLocator:(e,t)=>Zw(t),mountPayload:(e,t="")=>({f:t||"0"}),locatorFromMount:e=>String(e.f||"0"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||"0"),filePayload(e,t,r){return{e:e.id,n:this.fileName(t),f:Zw(t),s3:NW(t),sz:Ny(t),et:OW(t),dl:hzt(t),sf:Zw(r),ss3:NW(r),ssz:Ny(r),set:OW(r),se:r?tr(this.fileName(r)):""}},async fileDetail(e,t,r,n){let s=await ht("123"),i=Ot([t.shareKey,r.f||"",r.s3||"",r.sz||"",r.et||"",r.sf||"",r.ss3||"",r.ssz||"",r.set||"",r.se||""],{structured:!0}),a=kj(r.dl||"",r.sz||""),o=Lp(r.n,r.sz),c=ip("123",[a?{routeKey:ir[123].direct,from:Sx,url:`${o}$${a}`}:null,{routeKey:ir[123].original,from:s,url:`${o}$${i}`}]);return{vod_id:n,vod_name:r.n||"123\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:c.from,vod_play_url:c.url}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("123"),c=n.map(h=>{let p=this.fileName(h),m=Ir(p,s,this.fileName);return{vod_id:Ot([t.shareKey,Zw(h),NW(h),Ny(h),OW(h),Zw(m),NW(m),Ny(m),OW(m),m?tr(this.fileName(m)):""],{structured:!0}),vod_name:p,vod_size:Ny(h)}}),u=n.map(h=>{let p=kj(hzt(h),Ny(h));return p?{vod_id:p,vod_name:this.fileName(h),vod_size:Ny(h)}:null}).filter(Boolean),l=Ro(Sx,u,!1),d=Ro(o,c,!1),f=ip("123",[{routeKey:ir[123].direct,from:l?.from,url:l?.url},{routeKey:ir[123].original,from:d?.from||o,url:d?.url}]);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:f.from,vod_play_url:f.url}},async play(e){await S0(e);let t=Mr(e.body?.id||"");if(!t[0]||!t[1])return gl("123\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");try{if(t[0]==="direct"){let s=String(t[1]||"").trim();return s?await Bj(e,s,t[2]):gl("123\u65E0\u9650\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740")}let r=await tl.getDownload(t[0],t[1],t[2],t[3],t[4]);if(!r)return gl("123\u5206\u4EAB\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");let n={parse:0,url:["\u539F\u753B",r]};if(t[5]&&t[6]&&t[7]&&t[8]){let s=await tl.getDownload(t[0],t[5],t[6],t[7],t[8]).catch(()=>"");if(s){let i=t[9]||"srt";Object.assign(n,MW(s,i))}}return n}catch(r){return gl(`123\u5206\u4EAB\u63A5\u53E3\u5F02\u5E38: ${r?.message||r}`)}}};y2n={key:"guangyashare",shortName:"\u5149\u9E2D\u5206\u4EAB",metaName:"\u{1F4E6} \u5149\u9E2D\u5408\u96C6",searchable:!1,multiSubtitle:!0,parseShare(e){let t=String(e||"").match(/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([a-zA-Z0-9_-]+)(?:\?[^\s#]*)?(?:#[^\s]*)?/i);if(!t)return null;let r="";try{let n=new URL(t[0]);r=String(n.searchParams.get("code")||n.searchParams.get("pwd")||"").trim(),!r&&n.hash&&(r=String(new URLSearchParams(n.hash.slice(1)).get("code")||n.hash.slice(1)).trim())}catch{}return{url:t[0],shareId:t[1],code:r}},rootLocator:()=>"",async list(e,t="",r={}){let n=XPe(t);return await K4(e,n.fileId,{page:Math.max(1,Number(r?.page)||1),pageSize:200,currentPath:n.path})},items:e=>Array.isArray(e?.items)?e.items:[],context:e=>({currentPath:String(e?.currentPath||""),page:Number(e?.page||1),pageSize:Number(e?.pageSize||200),total:Number(e?.total||0)}),categoryPaging:!0,fileName:e=>String(e?.fileName||e?.name||e?.vod_name||"\u672A\u77E5").trim()||"\u672A\u77E5",itemSize:e=>Number(e?.fileSize||e?.size||e?.vod_size||0)||0,isFolder:e=>e?.isFolder===!0,isSubtitle:(e,t)=>e?.isSubtitle===!0||vt(t),isVideo:e=>e?.isVideo===!0,folderLocator:(e,t)=>E2n(t?.fileId,t?.path||t?.fileName),mountPayload:(e,t="")=>({f:t||""}),locatorFromMount:e=>String(e.f||""),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||""),filePayload(e,t,r,n={}){let s=(Array.isArray(r)?r:r?[r]:[]).map(i=>({fileId:String(i?.fileId||""),fileName:this.fileName(i),fileSize:this.itemSize(i),ext:tr(this.fileName(i))})).filter(i=>i.fileId);return{e:e.id,n:this.fileName(t),f:String(t?.fileId||""),sz:this.itemSize(t),ss:s,l:String(n?.locator||"")}},async fileDetail(e,t,r,n){let s=await ht("guangya"),i=Array.isArray(r.ss)?r.ss:[];if(r.l)try{let o=XPe(r.l),c=[];for(let d=1;d<=100;d+=1){let f=await K4(t,o.fileId,{page:d,pageSize:200,currentPath:o.path});if(c.push(...f.items.filter(h=>this.isSubtitle(h,this.fileName(h)))),!f.hasMore||f.items.length===0)break}let u=ic(r.n||"",c,this.fileName),l=new Map;for(let d of[...i,...u]){let f=String(d?.fileId||"");f&&l.set(f,{fileId:f,fileName:this.fileName(d),fileSize:this.itemSize(d),ext:tr(this.fileName(d))})}i=[...l.values()]}catch(o){console.warn("[guangyashare] subtitle rescan failed:",o?.message||o)}let a=Jj(t,{fileId:r.f||"",fileName:r.n||"",fileSize:Number(r.sz||0)},i);return{vod_id:n,vod_name:r.n||"\u5149\u9E2D\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:s,vod_play_url:`${Lp(r.n,r.sz)}$${a}`}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("guangya"),c=XPe(i?.locator||""),u=[];for(let p=1;p<=100;p+=1){let m=await K4(t,c.fileId,{page:p,pageSize:200,currentPath:c.path});if(u.push(...m.items),!m.hasMore||m.items.length===0)break}let l=u.filter(p=>this.isVideo(p,this.fileName(p))),d=u.filter(p=>this.isSubtitle(p,this.fileName(p))),f=Kt(l).map(p=>{let m=this.fileName(p),_=ic(m,d,this.fileName);return{vod_id:Jj(t,p,_),vod_name:m,vod_size:this.itemSize(p)}}),h=Ro(o,f,!1);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u5217\u8868: ${f.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:h?.from||o,vod_play_url:h?.url||""}},async play(e){return await Zj(e)}},v2n={key:"139share",shortName:"139\u5206\u4EAB",metaName:"\u{1F4E6} 139\u5408\u96C6",searchable:!1,parseShare:VOn,rootLocator:()=>"root",list:Z6t,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:[],context:(e,t)=>({linkID:e?.linkID||t.linkID||""}),fileName:i2n,itemSize:QPe,isFolder:(e,t)=>!vt(t)&&!aB(t)&&e?.itemType==="folder",isVideo:(e,t)=>e?.itemType!=="folder"&&(Number(e?.coType)===3||aB(t))&&!!e?.coID,folderLocator:(e,t)=>String(t.path||""),mountPayload:(e,t="")=>({f:t||"root"}),locatorFromMount:e=>String(e.f||"root"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||"root"),filePayload(e,t,r,n){return{e:e.id,n:this.fileName(t),c:String(t?.coID||t?.contentId||""),l:n?.linkID||e.linkID||"",sf:String(r?.coID||r?.contentId||""),se:r?tr(this.fileName(r)):"",p:String(t?.path||""),sp:String(r?.path||""),sz:QPe(t)}},async fileDetail(e,t,r,n){let s=await ht("yidong"),i=Ot([r.c||"",r.l||t.linkID||"",r.sf||"",r.se||"",r.p||"",r.sp||""],{structured:!0});return{vod_id:n,vod_name:r.n||"139\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:s,vod_play_url:`${Lp(r.n,r.sz)}$${i}`}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("yidong"),c=n.map(l=>{let d=this.fileName(l),f=Ir(d,s,this.fileName);return{vod_id:Ot([String(l?.coID||l?.contentId||""),i?.linkID||t.linkID||"",String(f?.coID||f?.contentId||""),f?tr(this.fileName(f)):"",String(l?.path||""),String(f?.path||"")],{structured:!0}),vod_name:d,vod_size:QPe(l)}}),u=Ro(o,c,!1);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:u?.from||o,vod_play_url:u?.url||""}},async play(e){let t=Mr(e.body?.id||"");if(!t[0]||!t[1])return gl("139\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");try{let r=await hb.getSharePlayInfo(t[0],t[1],t[4]||""),n=r?.url||"";if(!n)return gl(r?.error||"139\u5206\u4EAB\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n]};if(t[2]){let a=(await hb.getSharePlayInfo(t[2],t[1],t[5]||""))?.url||"";if(a){let o=t[3]||"srt";Object.assign(s,MW(a,o))}}return s}catch(r){return gl(`139\u5206\u4EAB\u63A5\u53E3\u5F02\u5E38: ${r?.message||r}`)}}},S2n={key:"baidushare",shortName:"\u767E\u5EA6\u5206\u4EAB",metaName:"\u{1F4E6} \u767E\u5EA6\u5408\u96C6",searchable:!1,init:t_,parseShare(e){let t=nxe(e);return t?.shareId?{url:e,...t}:null},rootLocator:()=>"/",list:v8t,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:[],context:e=>({meta:e?.meta||{}}),fileName:a2n,itemSize:WPe,isFolder(e,t){if(this.isVideo(e,t)||vt(t))return!1;let r=e?.isdir??e?.is_dir;return r!=null?Number(r)===1:!1},isVideo:(e,t)=>(Number(e?.category)===1||eN(t))&&!!T3(e),folderLocator:(e,t)=>String(t?.path||"/"),mountPayload:(e,t="")=>({p:t||"/"}),locatorFromMount:e=>String(e.p||"/"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||"/"),filePayload(e,t,r,n){let s=n?.meta||{};return{e:e.id,n:this.fileName(t),p:String(t?.path||""),u:String(s?.uk||""),sid:String(s?.shareid||""),f:T3(t),su:String(s?.surl||e.shareId||""),pw:String(s?.pwd||e.sharePwd||""),sf:T3(r),se:r?tr(this.fileName(r)):"",sz:WPe(t)}},async fileDetail(e,t,r,n){let s=await ht("baidu"),i=Ot([String(r.p||"").replaceAll("#","\0"),r.u||"",r.sid||"",r.f||"",r.su||t.shareId||"",encodeURIComponent(r.pw||""),r.sf||""],{structured:!0});return{vod_id:n,vod_name:r.n||"\u767E\u5EA6\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:s,vod_play_url:`${Lp(r.n,r.sz)}$${i}`}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("baidu"),c=i?.meta||{},u=n.map(d=>{let f=this.fileName(d),h=Ir(f,s,this.fileName);return{vod_id:Ot([String(d?.path||"").replaceAll("#","\0"),String(c?.uk||""),String(c?.shareid||""),T3(d),String(c?.surl||t.shareId||""),encodeURIComponent(String(c?.pwd||t.sharePwd||"")),T3(h)],{structured:!0}),vod_name:f,vod_size:WPe(d)}}),l=Ro(o,u,!1);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${u.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:l?.from||o,vod_play_url:l?.url||""}},play:(e,t)=>IG(e,t)},iLe={key:"smb",shortName:"SMB",metaName:"\u{1F5C4}\uFE0F SMB\u6302\u8F7D",searchable:!1,parseShare:WOn,rootLocator:e=>ma(e.rootPath||""),list:XOn,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:pzt,itemSize:e=>Number(e?.size||0),isFolder:e=>typeof e?.isDirectory=="function"?e.isDirectory():!!e?.directory,isVideo:(e,t)=>QOn(t),folderLocator:(e,t,r)=>ma(r?.locator||e.rootPath||"",pzt(t)),mountPayload:(e,t="")=>({p:ma(t||e.rootPath||"")}),locatorFromMount:(e,t)=>ma(e.p||t.rootPath||""),playlistPayload:(e,t="")=>({p:ma(t||e.rootPath||"")}),locatorFromPlaylist:(e,t)=>ma(e.p||t.rootPath||""),filePayload(e,t,r,n){let s=this.fileName(t),i=ma(n?.locator||e.rootPath||"",s),a=r?ma(n?.locator||e.rootPath||"",this.fileName(r)):"";return{e:e.id,p:i,n:s,sz:Number(t?.size||0),sp:a}},async fileDetail(e,t,r,n){let s=x3({e:t.id,p:ma(r.p),n:r.n||R3(r.p),sp:ma(r.sp||"")});return{vod_id:n,vod_name:r.n||"SMB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} -\u6765\u6E90: ${$s(t)}`,vod_play_from:"SMB",vod_play_url:`${Lp(r.n,r.sz)}$${s}`}},async playlistDetail(e,t,r,n,s,i,a){let o=ma(i?.locator||t.rootPath||""),c=n.map(u=>{let l=this.fileName(u),d=Ir(l,s,this.fileName),f=x3({e:t.id,p:ma(o,l),n:l,sz:Number(u?.size||0),sp:d?ma(o,this.fileName(d)):""});return`${Lp(l,u?.size)}$${f}`}).join("#");return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${n.length}\u4E2A\u89C6\u9891 -\u6765\u6E90: ${$s(t)}`,vod_play_from:"SMB",vod_play_url:c}},async play(e){let t=w3(e.body?.id);if(!t)return gl("\u65E0\u6548\u7684SMB\u64AD\u653EID");let{entries:r}=await tN(e.server,iLe),n=r.find(c=>c.id===String(t.e));if(!n)return gl("SMB\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728");let s=ma(t.p),i=String(t.n||R3(s)||"video"),a=fzt(e,n,s,i),o=t.sp?fzt(e,n,ma(t.sp),R3(t.sp)):"";return{parse:0,url:a,header:{},subt:o,...MW(o,kW(t.sp)||"srt")}}};Rc={"115share":q0,alishare:_2n,quarkshare:gzt("quarkshare"),ucshare:gzt("ucshare"),"123share":A2n,"139share":v2n,baidushare:S2n,guangyashare:y2n,smb:iLe};P2n=Fzt()});async function cLe(e){e.get("/settings",async(t,r)=>{r.send({code:0,data:await oLe(t.server)})}),e.post("/settings",async(t,r)=>{let n=await M2n(t.server,t.body||{});r.send({code:0,data:n})})}var Hzt,qW,L2n,oLe,M2n,uLe=ae(()=>{Hzt=["\u6211\u7684\u767E\u5EA6 0","\u6211\u7684\u5938\u514B 0","\u6211\u7684\u963F\u91CC 0","\u6211\u7684115 0","\u6211\u7684123 0","\u6211\u7684\u5929\u7FFC 0","\u6211\u7684UC 0","\u6211\u7684\u8FC5\u96F7 0"].join(` -`),qW=e=>String(e||"").trim(),L2n=(e,t)=>{let r=qW(e?.text);if(r)return r;let n=qW(t?.config?.mycloud?.text);return n||Hzt},oLe=async e=>{let t={text:qW(e.config?.mycloud?.text)},r=await e.db.getObjectDefault("/config/mycloud",t);return{text:L2n(r,e)}},M2n=async(e,t={})=>{let r={text:qW(t.text)};return await e.db.push("/config/mycloud",r),{text:r.text||Hzt}}});var pYt={};Ft(pYt,{default:()=>KDn});function Oy(e,t){return`${e}@@@${Buffer.from(JSON.stringify(t)).toString("base64url")}`}function KW(e){let t=String(e||""),r=t.indexOf("@@@");if(r<0)return null;try{return{kind:t.slice(0,r),data:JSON.parse(Buffer.from(t.slice(r+3),"base64url").toString("utf8"))}}catch{return null}}function rYt(e=""){return Buffer.from(String(e||""),"utf8").toString("base64url")}function nYt(e=""){return Buffer.from(String(e||""),"base64url").toString("utf8")}function Gzt(e=""){return rYt(e)}function zzt(e=""){if(!e)return"";try{return nYt(e)}catch{try{return decodeURIComponent(e)}catch{return String(e||"")}}}function W2n(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:e?.server?.address?.()?.url||""}function X2n(e){return String(e?.server?.prefix||"").replace(/\/$/,"")}function jW(e=""){let t=String(e||"").toLowerCase().match(/\.([a-z0-9]+)$/);return t?t[1]:""}function J2n(e=""){return z2n[jW(e)]||"application/octet-stream"}function Z2n(e=""){let t=String(e||"").replace(/^\./,"").toLowerCase()||"srt";return Y2n[t]||"text/plain; charset=utf-8"}function eDn(e={}){return rYt(JSON.stringify({...e,exp:Date.now()+j2n}))}function tDn(e=""){let t=String(e||"").replace(/\.[a-z0-9]+$/i,"");try{let r=JSON.parse(nYt(t));return!r||typeof r!="object"||Number(r.exp||0)t.endsWith(r))}function _Le(e){return e!=null&&e!==""&&Number.isFinite(Number(e))}function Yzt(e){return String(e||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function gLe(e,t=0){let r=Number(t||0);return r>0?`${Yzt(e)} [${Ju(r)}]`:Yzt(e)}function Ub(e,t="srt",r="\u5916\u6302\u5B57\u5E55"){if(!e)return{};let n={url:e,name:r,format:t||"srt"};return{subt:e,subtitle:e,subs_urls:[e],subs:[n],extra:{subt:e,subtitle:e,subs_urls:[e],subs:[n]}}}function ga(e,t={}){return Wr(e,{msg:e,...t})}function iDn(e,t){let r=String(t??"").trim();return!r||r==="0"?kp[e].rootId:r}function aDn(e){let t=String(e||"").toLowerCase();for(let r of Q2n)if(kp[r].aliases.some(s=>t.includes(String(s).toLowerCase())))return r;return""}function oDn(e,t){let r=String(e||"").trim();if(!r)return null;let n=r.match(/^(.+?)\s+(\S.*)$/),s=String(n?.[1]||r).trim(),i=String(n?.[2]||"0").trim(),a=aDn(s);if(!a)return null;let o=iDn(a,i);return{index:t,provider:a,displayName:s||kp[a].fallbackName,baseDisplayName:s||kp[a].fallbackName,inputFolderId:i||"0",folderId:o}}function Qzt(e){let t=String(e||"").trim();if(!t||t==="0")return"\u6839\u76EE\u5F55";let r=t.split("/").map(n=>n.trim()).filter(Boolean);return r[r.length-1]||t}function cDn(e){return String(e||"").split(/\r?\n|[、,,;]/).map((t,r)=>oDn(t,r)).filter(Boolean)}async function ALe(e){let t=await oLe(e);return cDn(t.text)}function iYt(e){let t=[],r=new Map;for(let n of e){let s=n.baseDisplayName||n.displayName,i=`${n.provider}@@@${s}`,a=r.get(i);a||(a={provider:n.provider,displayName:s,typeId:Oy("group",{provider:n.provider,displayName:s}),mounts:[]},r.set(i,a),t.push(a)),a.mounts.push(n)}return t}function uDn(e){let t=new Map;return e.forEach(r=>{let n=Qzt(r.inputFolderId);t.set(n,(t.get(n)||0)+1)}),e.map(r=>{let n=Qzt(r.inputFolderId);return{n:(t.get(n)||0)>1?`${n} (${r.inputFolderId||"0"})`:n,v:String(r.index)}})}function lDn(e){let t={};for(let r of e)r.mounts.length<=1||(t[r.typeId]=[{key:"mount",name:"\u76EE\u5F55",init:String(r.mounts[0].index),value:uDn(r.mounts)}]);return t}function dDn(e={}){return e.extend||e.filters||e.ext||{}}function Dy(e,t,r,n){let s=Oy("folder",{provider:e,name:t,folderId:r,mountName:n?.displayName||""});return{vod_id:s,type_id:s,type_name:t,vod_name:t,vod_pic:k2n,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:s,name:t},ratio:1.33}}function Py(e,t,r,n){let s=Number(n||0);return{vod_id:Oy("file",{provider:e,name:t,playId:r,size:s}),vod_name:t,vod_pic:B2n,vod_remarks:Ju(s),ratio:1.33}}function aYt(e=""){let t=Mr(e);return t[0]!=="own"?"":(t[0]="rapid-own",Ot(t,{structured:!0}))}function fDn(e,t,r,n,s){let i=t||n?.displayName||"\u672C\u5C42\u64AD\u653E\u5217\u8868";return{vod_id:Oy("playlist",{provider:e,name:i,folderId:r,mountName:n?.displayName||"",inputFolderId:n?.inputFolderId||""}),vod_name:"\u64AD\u653E\u5217\u8868",vod_pic:U2n,vod_remarks:`${s}\u4E2A\u89C6\u9891`,ratio:1.33}}function Ly(e,t,r,n,s,i={}){if(i.includePlaylist===!1||!Array.isArray(s)||s.length<=1)return;let a=i.playlistName||`${n?.displayName||"\u672C\u5C42"} \u64AD\u653E\u5217\u8868`;e.push(fDn(t,a,r,n,s.length))}function rN(e){return String(e?.FileName||e?.file_name||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function O3(e){return String(e?.FileId||e?.fileId||e?.file_id||"")}function pLe(e){return Number(e?.Size||e?.size||0)}function oYt(e,t){return!e||vt(t)||_l(t)?!1:_Le(e?.fc)?Number(e.fc)===0:!1}function hDn(e,t){return!e||oYt(e,t)||vt(t)?!1:_l(t)}function cYt(e,t){return!e||vt(t)||_l(t)?!1:_Le(e?.Type)?Number(e.Type)===1:!1}function pDn(e){let t=rN(e);return!e||cYt(e,t)||vt(t)?!1:(Number(e?.Category)===2||_l(t))&&!!O3(e)}function uYt(e,t){return!e||vt(t)||_l(t)?!1:e?.type==="folder"||e?.category==="folder"}function mDn(e,t){if(!e||uYt(e,t)||vt(t))return!1;let r=`.${String(e?.file_extension||"").toLowerCase()}`;return Number(e?.size||0)>=Zzt&&(e?.category==="video"||tYt.includes(r)||_l(t))}function D3(e){return String(e?.server_filename||e?.path?.split("/").pop()||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function lYt(e,t){if(!e||vt(t)||_l(t))return!1;let r=e?.isdir??e?.is_dir;return r!=null?Number(r)===1:!1}function gDn(e){let t=D3(e);return!e||lYt(e,t)||vt(t)?!1:(Number(e?.category)===1||_l(t))&&!!String(e?.fs_id||e?.fsid||"")}function nN(e){return String(e?.file_name||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Wzt(e){return Number(e?.size||e?.file_size||e?.fileSize||e?.file?.size||0)}function mLe(e){return String(e?.fid||e?.file_id||e?.fileId||e?.FileId||"")}function dYt(e,t){return!e||vt(t)||_l(t)?!1:!!(e?.dir===!0||e?.dir===1||e?.type==="folder"||e?.kind==="folder"||_Le(e?.file_type)&&Number(e.file_type)===0)}function _Dn(e,t=nN(e)){return!e||dYt(e,t)||vt(t)?!1:e?.obj_category==="video"||e?.category==="video"?!0:_l(t)}function ADn(e,t){return!e||vt(t)||_l(t)?!1:e.isFolder===!0||e.type==="folder"||e.kind==="folder"}function sN(e){return String(e?.name||e?.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function VW(e){return String(e?.id||e?.file_id||e?.fileId||"")}function EDn(e){return Number(e?.size||e?.file_size||e?.fileSize||0)}function fYt(e,t){return!e||vt(t)||_l(t)?!1:String(e?.kind||"").toLowerCase().includes("folder")||e?.isDirectory===!0||e?.is_dir===!0}function yDn(e,t=sN(e)){return!e||fYt(e,t)||vt(t)?!1:_l(t)&&!!VW(e)}async function vDn(e,t,r,n,s={}){await cp(e);let i=await Xa(e.server),{list:a,count:o}=await Tx(i,r,n),c=[],u=[],l=[];for(let h of a||[]){let p=String(h?.n||h?.name||"\u672A\u77E5").trim()||"\u672A\u77E5";if(oYt(h,p)){let m=String(h.cid||"");c.push(Dy("115",p,m,t))}else vt(p)?l.push(h):hDn(h,p)&&u.push(h)}let d=c,f=Kt(u);Ly(d,"115",r,t,f,s);for(let h of f){let p=String(h?.n||h?.name||"\u672A\u77E5").trim()||"\u672A\u77E5",m=String(h.pc||h.pick_code||"");if(!m)continue;let _=Ir(p,l,A=>String(A?.n||A?.name||"")),g=["own",m],y=String(_?.pc||_?.pick_code||"");for(y&&g.push(y,tr(String(_?.n||_?.name||"")));g.length<4;)g.push("");g.push(p,String(Number(h.s||h.size||0)),rf(h.sha1||h.sha||h.file_sha1)),d.push(Py("115",p,Ot(g,{structured:!0}),Number(h.s||h.size||0)))}return{page:n,pagecount:Math.max(1,Math.ceil(Number(o||0)/Vzt)),limit:Vzt,total:Number(o||0),list:d}}async function SDn(e,t,r,n,s={}){await S0(e);let i=await tl.listOwnFiles(r,n,lLe),a=[],o=[],c=[];for(let f of[...i?.folderList||[],...i?.fileList||[]]){let h=rN(f),p=O3(f);O3(f)&&(cYt(f,h)?a.push(Dy("123",h,p,t)):vt(h)?c.push(f):pDn(f)&&o.push(f))}let u=a,l=Kt(o);Ly(u,"123",r,t,l,s);for(let f of l){let h=rN(f),p=Ir(h,c,rN),m=["own",O3(f),String(f?.S3KeyFlag||f?.s3KeyFlag||""),String(pLe(f)),String(f?.Etag||f?.etag||""),encodeURIComponent(h)];p&&m.push(O3(p),String(p?.S3KeyFlag||p?.s3KeyFlag||""),String(pLe(p)),String(p?.Etag||p?.etag||""),encodeURIComponent(rN(p)),tr(rN(p))),u.push(Py("123",h,m.join("*"),pLe(f)))}let d=Number(i?.count||u.length||0);return{page:n,pagecount:Math.max(1,Math.ceil(d/lLe)),limit:lLe,total:Math.max(d,u.length),list:u}}async function TDn(e,t,r,n,s={}){await Yg(e);let i="",a={items:[],next_marker:""},o=1;for(let p=1;p<=n&&(a=await p3t(r,i),o=p,!(p===n||(i=a.next_marker,i||(a={items:[],next_marker:""}),!i)));p+=1);let c=Array.isArray(a?.items)?a.items:[],u=String(a?.next_marker||""),l=[],d=[],f=[];for(let p of c){let m=String(p?.name||"\u672A\u77E5").trim()||"\u672A\u77E5";uYt(p,m)?l.push(Dy("ali",m,p.file_id,t)):p?.type==="file"&&vt(m)?f.push(p):p?.type==="file"&&mDn(p,m)&&d.push(p)}let h=Kt(d);Ly(l,"ali",r,t,h,s);for(let p of h){let m=String(p.name||"\u672A\u77E5").trim()||"\u672A\u77E5",_=Ir(m,f,y=>y.name),g=["own",p.file_id];_?.file_id&&g.push(_.file_id,tr(_.name)),l.push(Py("ali",m,g.join("*"),Number(p.size||0)))}return{page:n,pagecount:u?n+1:Math.min(n,o),limit:dLe,total:(n-1)*dLe+c.length+(u?dLe:0),list:l}}async function bDn(e,t,r,n,s={}){await t_(e);let i=await M8t(r||"/",n,fLe),a=[],o=[],c=[];for(let f of[...i?.folderList||[],...i?.fileList||[]]){let h=D3(f);if(lYt(f,h)){let p=String(f?.path||"/");a.push(Dy("baidu",h,p,t))}else vt(h)?c.push(f):gDn(f)&&o.push(f)}let u=a,l=Kt(o);Ly(u,"baidu",r,t,l,s);for(let f of l){let h=D3(f),p=String(f?.fs_id||f?.fsid||""),m=String(f?.path||""),_=Ir(h,c,D3),g=["own",p,encodeURIComponent(m)],y=String(_?.fs_id||_?.fsid||"");y&&g.push(y,tr(D3(_))),u.push(Py("baidu",h,g.join("*"),Number(f.size||0)))}let d=Number(i?.count||0);return{page:n,pagecount:d>=fLe?n+1:n,limit:fLe,total:9999,list:u}}async function Xzt(e,t,r,n,s,i={}){let a=s==="uc";a?await dp(e):await up(e);let o=a?await Y3t(r||"0",n,HW):await C3t(r||"0",n,HW),c=[],u=[],l=[];for(let p of[...o?.folderList||[],...o?.fileList||[]]){let m=mLe(p);if(!m)continue;let _=nN(p);dYt(p,_)?c.push(Dy(s,_,m,t)):vt(_)?l.push(p):_Dn(p,_)&&Wzt(p)>=Zzt&&u.push(p)}let d=c,f=Kt(u);Ly(d,s,r,t,f,i);for(let p of f){let m=nN(p),_=Ir(m,l,nN),g=["own2",mLe(p),Gzt(m)],y=mLe(_);y&&g.push(y,tr(nN(_)),Gzt(nN(_))),d.push(Py(s,m,g.join("*"),Wzt(p)))}let h=Number(o?.count||0);return{page:n,pagecount:h>n*HW?n+1:n,limit:HW,total:Math.max(h,d.length),list:d}}async function IDn(e,t,r,n,s={}){await fb(e);let i=await cy.listOwnFiles(r||"-11",{pageSize:F2n}),a=[],o=[],c=[];for(let l of i||[])l?.id&&(ADn(l,l.name)?a.push(Dy("tianyi",l.name,l.id,t)):_l(l.name)?o.push(l):vt(l.name)&&c.push(l));let u=Kt(o);Ly(a,"tianyi",r,t,u,s);for(let l of u){let d=Ir(l.name,c,h=>h.name),f=["own",l.id];d?.id&&f.push(d.id,tr(d.name)),a.push(Py("tianyi",l.name,f.join("*"),Number(l.size||0)))}return{page:n,pagecount:1,limit:a.length,total:a.length,list:a}}async function RDn(e,t,r,n,s={}){await tu(e);let i=await zUt(e,r||"",n,jzt),a=[],o=[],c=[];for(let f of[...i?.folderList||[],...i?.fileList||[]]){let h=VW(f);if(!h)continue;let p=sN(f);fYt(f,p)?a.push(Dy("xunlei",p,h,t)):vt(p)?c.push(f):yDn(f,p)&&o.push(f)}let u=a,l=Kt(o);Ly(u,"xunlei",r,t,l,s);for(let f of l){let h=sN(f),p=Ir(h,c,sN),m=["own",VW(f),encodeURIComponent(h)],_=VW(p);_&&m.push(_,encodeURIComponent(sN(p)),tr(sN(p))),u.push(Py("xunlei",h,m.join("*"),EDn(f)))}let d=Number(i?.count||i?.total||0);return{page:n,pagecount:Number(i?.pagecount||n)||n,limit:jzt,total:Math.max(d,u.length),list:u}}async function CDn(e,t,r,n,s={}){let i=await KT(e.server,r||"",n,P3),a=[],o=[],c=[];for(let f of i.list||[]){let h=String(f?.name||f?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5",p=String(f?.fileId||"");p&&(Rx(f)?a.push(Dy("guangya",h,p,t)):vt(h)?c.push(f):ERe(f)&&o.push(f))}let u=a,l=Kt(o);Ly(u,"guangya",r,t,l,s);for(let f of l){let h=String(f?.name||f?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5",m=ic(h,c,y=>String(y?.name||y?.fileName||"")).map(y=>({fileId:String(y?.fileId||""),fileName:String(y?.name||y?.fileName||""),fileSize:Number(y?.fileSize||y?.size||0)||0,ext:tr(y?.name||y?.fileName||"")})).filter(y=>y.fileId),_=Number(f?.vod_size||f?.fileSize||f?.size||0)||0,g=Ot(["own","v2",String(f.fileId),h,_,JSON.stringify({ss:m}),String(r||"")],{structured:!0});u.push(Py("guangya",h,g,_))}let d=Number(i.total||0);return{page:n,pagecount:d>n*P3?n+1:n,limit:P3,total:Math.max(d,u.length),list:u}}async function hYt(e,t,r,n,s,i={}){return r==="115"?await vDn(e,t,n,s,i):r==="123"?await SDn(e,t,n,s,i):r==="ali"?await TDn(e,t,n,s,i):r==="baidu"?await bDn(e,t,n,s,i):r==="quark"?await Xzt(e,t,n,s,"quark",i):r==="uc"?await Xzt(e,t,n,s,"uc",i):r==="tianyi"?await IDn(e,t,n,s,i):r==="xunlei"?await RDn(e,t,n,s,i):r==="guangya"?await CDn(e,t,n,s,i):{page:s,pagecount:1,limit:0,total:0,list:[]}}async function xDn(e){let t=await ALe(e.server),r=new Set(t.map(s=>s.provider)),n=[];return r.has("115")&&n.push(cp(e)),r.has("123")&&n.push(S0(e)),r.has("ali")&&n.push(Yg(e)),r.has("baidu")&&n.push(t_(e)),r.has("quark")&&n.push(up(e)),r.has("tianyi")&&n.push(fb(e)),r.has("uc")&&n.push(dp(e)),r.has("xunlei")&&n.push(tu(e)),await Promise.allSettled(n),{}}async function wDn(e){let t=await ALe(e.server),r=iYt(t);return{class:r.map(n=>({type_id:n.typeId,type_name:n.displayName})),filters:lDn(r)}}async function NDn(e){let t=e.body||{},r=KW(t.id||t.tid||t.t),n=r?.data||{},s=n.provider;if(!kp[s])return{page:1,pagecount:1,limit:0,total:0,list:[]};let i=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),a=r.kind==="mount"?n:null,o=n.folderId;if(r.kind==="group"){let c=await ALe(e.server),l=iYt(c).find(h=>h.provider===s&&h.displayName===n.displayName),d=dDn(t),f=String(d.mount??"");a=l?.mounts.find(h=>String(h.index)===f)||l?.mounts[0]||null,s=a?.provider||s,o=a?.folderId||kp[s].rootId}try{return await hYt(e,a,s,o,i)}catch(c){console.error(`[mycloud][${s}][category] failed:`,c?.message||c)}return{page:i,pagecount:1,limit:0,total:0,list:[]}}async function ODn(e,t,r,n){let s=[],i=new Set,a=1,o=1;for(;a<=Math.max(o,a)&&a<=eYt;){let c=await hYt(e,n,t,r,a,{includePlaylist:!1}),u=Array.isArray(c?.list)?c.list:[],l=0;for(let d of u){let f=KW(d?.vod_id);if(f?.kind!=="file")continue;let h=f.data||{},p=`${t}@@@${h.playId||d.vod_id}`;i.has(p)||(i.add(p),s.push({...d,data:h,vod_name:h.name||d.vod_name||"\u64AD\u653E"}),l+=1)}if(o=Math.max(o,Number(c?.pagecount||a)||a),a>=o||a>1&&l===0&&u.length===0)break;a+=1}return Kt(s)}async function DDn(e,t,r,n){let s=r.provider,i=r.folderId||kp[s]?.rootId,a=r.name||n.fallbackVodName||"\u64AD\u653E\u5217\u8868",o=await ht(n.panKey||s),c=await ODn(e,s,i,r),u=c.map(_=>{let g=_.data?.name||_.vod_name||"\u64AD\u653E",y=_.data?.playId||"",A=Number(_.data?.size||0);return{name:g,playId:y,size:A}}),l=u.map(({name:_,playId:g,size:y})=>`${gLe(_,y)}$${Oy("play",{provider:s,name:_,playId:g})}`).join("#"),f=s==="115"&&await VE(e.server)?u.map(({name:_,playId:g,size:y})=>`${gLe(_,y)}$${Oy("play",{provider:s,name:_,playId:aYt(g)})}`).join("#"):"",h=n.panKey||s,p=ip(h,[{routeKey:s==="115"?ir[115].original:`${h}.original`,from:o,url:l},f?{routeKey:ir[115].rapid123,from:"\u79D2\u4F20123",url:f}:null]),m=[`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891`,r.mountName?`\u6765\u6E90: ${r.mountName}`:"",r.inputFolderId?`\u76EE\u5F55: ${r.inputFolderId}`:""].filter(Boolean).join(` -`);return{vod_id:t,vod_name:a,vod_content:m,vod_play_from:p.from,vod_play_url:p.url}}async function PDn(e){let t=Array.isArray(e.body.id)?e.body.id:[e.body.id],r=[];for(let n of t){let s=KW(n),i=s?.data||{},a=i.provider,o=kp[a]||{};if(s?.kind==="playlist"&&kp[a]){try{r.push(await DDn(e,n,i,o))}catch(m){console.error(`[mycloud][${a}][playlist] failed:`,m?.message||m),r.push({vod_id:String(n||""),vod_name:i.name||o.fallbackVodName||"\u64AD\u653E\u5217\u8868",vod_content:m?.message||"\u8BFB\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"})}continue}if(s?.kind!=="file"){r.push({vod_id:String(n||""),vod_name:i.name||o.fallbackVodName||"\u7F51\u76D8\u8D44\u6E90",vod_remarks:"\u76EE\u5F55"});continue}let c=i.name||o.fallbackVodName||"\u7F51\u76D8\u8D44\u6E90",u=Number(i.size||0),l=await ht(o.panKey||a),d=a==="115"&&await VE(e.server)?aYt(i.playId||""):"",f=gLe(c,u),h=o.panKey||a,p=ip(h,[{routeKey:a==="115"?ir[115].original:`${h}.original`,from:l,url:`${f}$${Oy("play",{provider:a,name:c,playId:i.playId||""})}`},d?{routeKey:ir[115].rapid123,from:"\u79D2\u4F20123",url:`${f}$${Oy("play",{provider:a,name:c,playId:d})}`}:null]);r.push({vod_id:n,vod_name:c,vod_content:[`\u6587\u4EF6\u540D: ${c}`,u>0?`\u5927\u5C0F: ${Ju(u)}`:""].filter(Boolean).join(` -`),vod_play_from:p.from,vod_play_url:p.url})}return{list:r}}async function LDn(e,t){await cp(e);let r=Mr(t);if(!["own","rapid-own"].includes(r[0])||!r[1])return ga("115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await Xa(e.server);if(r[0]==="rapid-own"){let a=await jE(e.server,{pickCode:r[1],name:r[4],size:Number(r[5]||0),sha1:r[6]});if(!a.success||!a.downloadUrl)return ga(a.message||"115\u2192\u79D2\u4F20123\u5931\u8D25",{mode:a.mode,downloaded:!1,uploaded:!1});let o=VT(a.downloadUrl);return o?(o.extra={rapidTransfer:{mode:a.mode,downloaded:!1,uploaded:!1,cleaned:a.cleaned===!0}},o):ga("\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u64AD\u653E\u5730\u5740\u65E0\u6548")}let s=await bx(n,r[1]);if(!s?.url)return ga(s?.msg||"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let i={parse:0,url:["\u539F\u753B",s.url],header:{"User-Agent":$2n,Cookie:s.cookie||n,Referer:"https://115.com/",Origin:"https://115.com"}};if(r[2]){let o=(await bx(n,r[2]))?.url||"";if(o){let c=r[3]||"srt";Object.assign(i,Ub(o,c))}}return i}async function MDn(e,t){await S0(e);let r=String(t||"").split("*");if(r[0]!=="own"||r.length<5)return ga("123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF");let[,n,s,i,a,o,c,u,l,d,f,h]=r,p="",m="";try{p=decodeURIComponent(o||"")}catch{p=String(o||"")}try{m=decodeURIComponent(f||"")}catch{m=String(f||"")}let _=await tl.getOwnDownload(n,s,i,a,p);if(!_)return ga("123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let g={parse:0,url:["\u539F\u753B",_]};if(c&&u&&l&&d){let y=await tl.getOwnDownload(c,u,l,d,m);if(y){let A=h||tr(m)||"srt";Object.assign(g,Ub(y,A))}}return g}async function kDn(e,t){await Yg(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return ga("\u963F\u91CC\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await $Re(r[1]);if(!n)return ga("\u963F\u91CC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n]};if(r[2]){let i=await $Re(r[2]);if(i){let a=r[3]||"srt";Object.assign(s,Ub(i,a))}}return s}async function BDn(e,t){await t_(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return ga("\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await RG(r[1]);if(!n)return ga("\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n],header:{"User-Agent":q2n}};if(r[3]){let i=await RG(r[3]),a=r[4]||"srt";i&&Object.assign(s,Ub(i,a))}return s}async function Jzt(e,t,r){let n=r==="uc";n?await dp(e):await up(e);let s=String(t||"").split("*"),i="",a="",o="",c="",u="";if(s[0]==="own2"?(i=s[1]||"",a=zzt(s[2]||""),o=s[3]||"",c=s[4]||"",u=zzt(s[5]||"")):s[0]==="own"&&(i=s[1]||"",o=s[2]||"",c=s[3]||""),!i)return ga(`${n?"UC":"\u5938\u514B"}\u64AD\u653E\u53C2\u6570\u9519\u8BEF`);let l=n?await OK(i):await EK(i),d=String(l?.download_url||"").trim();if(!d)return ga(`${n?"UC":"\u5938\u514B"}\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740`);let f={parse:0,url:["\u539F\u753B",d],header:sYt(r)};if(o){let h=n?await OK(o):await EK(o),p=String(h?.download_url||"").trim(),m=c||tr(u)||"srt";p&&Object.assign(f,Ub(p,m,u||"\u5916\u6302\u5B57\u5E55"))}return f}async function UDn(e,t){let r=String(e.params?.provider||""),n=String(e.params?.mode||"");if(!["baidu","quark","uc","guangya"].includes(r)||!["down","redirect","subt"].includes(n))return t.code(404),"not found";let s=tDn(e.params?.token||"");if(!s||s.p!==r||!s.f)return t.code(403),"invalid proxy token";if(r==="guangya")return await bRe(e,t,{fileId:s.f,fileName:String(s.n||""),fileSize:Number(s.s||0)||0,format:String(s.se||""),mode:n,end:String(s.outputExt||jW(e.params?.token||""))});try{r==="baidu"?await t_(e):r==="uc"?await dp(e):await up(e);let i=r==="baidu"?await RG(s.f):r==="uc"?await OK(s.f):await EK(s.f),a=String(r==="baidu"?i:i?.download_url||"").trim();if(!a)return t.code(404),"download url not found";let o=String(s.n||""),c=rDn(r);if(t.header("Access-Control-Allow-Origin","*"),t.header("Access-Control-Allow-Headers","Range, Content-Type"),t.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),t.header("Cache-Control","no-store"),n==="redirect")return t.redirect(a);if(n==="subt"){let d=tr(o)||jW(o)||"srt",f=await Xe.get(a,{responseType:"stream",headers:{...c,Accept:"text/plain,text/vtt,*/*","Accept-Encoding":"identity"},timeout:3e4,maxRedirects:5,validateStatus:()=>!0});return f.status<200||f.status>=400?(f.data&&typeof f.data.destroy=="function"&&f.data.destroy(),t.code(f.status||502),`subtitle fetch failed: ${f.status||502}`):(t.code(f.status||200),t.header("Content-Type",Z2n(d)),f.headers?.["content-length"]&&t.header("Content-Length",f.headers["content-length"]),t.send(f.data))}let u=await sDn(e,r);if(!u.useMultithread)return t.redirect(a);let l=Number(r==="baidu"?s.s||0:i?.size||i?.file_size||i?.fileSize||0);return t.header("Content-Type",J2n(o)),await ac(e,t,a,`mycloud_${r}_${s.f}`,c,{chunkSize:u.chunkSize,poolSize:u.poolSize,timeout:1e3*10},l>0?l:null,!0)}catch(i){return console.error(`[mycloud ${r} proxy] failed:`,i?.message||i),t.sent||t.code(502),`proxy failed: ${i?.message||i}`}}async function FDn(e,t){await fb(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return ga("\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await cy.getOwnDownload(r[1]);if(!n)return ga("\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n],header:{"User-Agent":H2n}};if(r[2]){let i=await cy.getOwnDownload(r[2]);if(i){let a=r[3]||"srt";Object.assign(s,Ub(i,a))}}return s}async function $Dn(e,t){await tu(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return ga("\u8FC5\u96F7\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n="",s="";try{n=decodeURIComponent(r[2]||"")}catch{n=String(r[2]||"")}try{s=decodeURIComponent(r[4]||"")}catch{s=String(r[4]||"")}let i=await RCe(e,r[1],n);if(!i.length)return ga("\u8FC5\u96F7\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let a={parse:0,url:i,header:hUt};if(r[3]){let o=await YUt(e,r[3],s);if(o?.url){let c=r[5]||tr(s)||"srt";Object.assign(a,Ub(o.url,c))}}return a}async function qDn(e,t){let r=Mr(t);if(r[0]!=="own")return ga("\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n="",s="",i=0,a=[],o="";if(r[1]==="v2"){n=String(r[2]||""),s=String(r[3]||""),i=Number(r[4]||0)||0;try{let l=JSON.parse(r[5]||"{}");a=Array.isArray(l?.ss)?l.ss:[]}catch{}o=String(r[6]||"")}else if(n=String(r[1]||""),r[2]){let l=String(r[3]||"srt");a=[{fileId:String(r[2]),fileName:`subtitle.${l}`,ext:l}]}if(!n)return ga("\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF");if(o)try{let l=[];for(let h=1;h<=eYt;h+=1){let p=await KT(e.server,o,h,P3);if(l.push(...(p.list||[]).filter(m=>vt(m?.name||m?.fileName||""))),Number(p.total||0)<=h*P3||!(p.list||[]).length)break}let d=ic(s,l,h=>String(h?.name||h?.fileName||"")),f=new Map;for(let h of[...a,...d]){let p=String(h?.fileId||"");p&&f.set(p,{fileId:p,fileName:String(h?.fileName||h?.name||""),fileSize:Number(h?.fileSize||h?.size||0)||0,ext:String(h?.ext||tr(h?.fileName||h?.name||""))})}a=[...f.values()]}catch(l){console.warn("[mycloud][guangya] subtitle rescan failed:",l?.message||l)}let c=["\u4EE3\u7406",hLe(e,"guangya","down",n,s,{s:i}),"\u539F\u753B",hLe(e,"guangya","redirect",n,s,{s:i})],u=a.filter(l=>String(l?.fileId||"")).map(l=>{let d=String(l?.fileName||l?.name||`subtitle.${l?.ext||"srt"}`),f=tr(d)||String(l?.ext||"srt"),h=f==="ass"||f==="ssa"?"srt":f;return{url:hLe(e,"guangya","subt",String(l?.fileId||""),d,{s:Number(l?.fileSize||0)||0,se:f,outputExt:h}),name:d||"\u5916\u6302\u5B57\u5E55",format:h||"srt"}}).filter(l=>l.url);return Xs({parse:0,urls:c,subtitles:u,header:GT})}async function HDn(e){let t=KW(e.body.id),{provider:r,playId:n}=t?.data||{};try{if(r==="115")return await LDn(e,n);if(r==="123")return await MDn(e,n);if(r==="ali")return await kDn(e,n);if(r==="baidu")return await BDn(e,n);if(r==="quark")return await Jzt(e,n,"quark");if(r==="uc")return await Jzt(e,n,"uc");if(r==="tianyi")return await FDn(e,n);if(r==="xunlei")return await $Dn(e,n);if(r==="guangya")return await qDn(e,n)}catch(s){return ga(`${kp[r]?.fallbackName||"\u7F51\u76D8"}\u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`)}return ga("\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u9519\u8BEF")}async function VDn(){return{page:1,pagecount:1,list:[]}}async function jDn(e,t){try{let r=e.server.prefix,n={},s=await e.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await e.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await e.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await e.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}var L3,k2n,B2n,U2n,Vzt,lLe,dLe,fLe,HW,F2n,jzt,P3,$2n,q2n,H2n,V2n,Zzt,eYt,tYt,j2n,K2n,G2n,Kzt,z2n,Y2n,Q2n,kp,KDn,mYt=ae(()=>{GE();$4();wx();RB();eB();KCe();iB();zK();Cx();Hr();PE();L3=Ne(Gi(),1);uLe();jT();ws();wi();y0();Zu();ua();Wc();Xc();Oj();qg();k2n="https://img.icons8.com/fluency/96/folder-invoices--v1.png",B2n="https://img.icons8.com/color/48/video.png",U2n="https://img.icons8.com/fluency/96/playlist.png",Vzt=115,lLe=100,dLe=200,fLe=100,HW=200,F2n=100,jzt=100,P3=200,$2n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",q2n="netdisk",H2n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",V2n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.160 Safari/537.36",Zzt=5*1024*1024,eYt=50,tYt=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".mts",".3gp",".rm",".rmvb",".iso",".m3u8",".f4v",".vob",".asf",".divx",".mxf",".ogv",".ogm"],j2n=6*60*60*1e3,K2n={chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1},G2n={chunkSize:64*1024,poolSize:16,useMultithread:!0,enableFast:!1},Kzt={chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1},z2n={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",webm:"video/webm",avi:"video/x-msvideo",mov:"video/quicktime",flv:"video/x-flv",wmv:"video/x-ms-wmv",ts:"video/MP2T",m2ts:"video/MP2T",m3u8:"application/vnd.apple.mpegurl"},Y2n={srt:"application/x-subrip; charset=utf-8",ass:"text/x-ssa; charset=utf-8",ssa:"text/x-ssa; charset=utf-8",vtt:"text/vtt; charset=utf-8",sub:"text/plain; charset=utf-8",idx:"text/plain; charset=utf-8",smi:"text/plain; charset=utf-8",txt:"text/plain; charset=utf-8"},Q2n=["baidu","quark","ali","115","123","tianyi","uc","xunlei","guangya"],kp={baidu:{aliases:["\u767E\u5EA6","baidu","bd"],rootId:"/",fallbackName:"\u6211\u7684\u767E\u5EA6",panKey:"baidu",fallbackVodName:"\u767E\u5EA6\u8D44\u6E90"},quark:{aliases:["\u5938\u514B","quark"],rootId:"0",fallbackName:"\u6211\u7684\u5938\u514B",panKey:"quark",fallbackVodName:"\u5938\u514B\u8D44\u6E90"},ali:{aliases:["\u963F\u91CC","ali","alipan"],rootId:"root",fallbackName:"\u6211\u7684\u963F\u91CC",panKey:"ali",fallbackVodName:"\u963F\u91CC\u8D44\u6E90"},115:{aliases:["115"],rootId:"0",fallbackName:"\u6211\u7684115",panKey:"115",fallbackVodName:"115\u8D44\u6E90"},123:{aliases:["123"],rootId:"0",fallbackName:"\u6211\u7684123",panKey:"123",fallbackVodName:"123\u8D44\u6E90"},tianyi:{aliases:["\u5929\u7FFC","tianyi","cloud189","189"],rootId:"-11",fallbackName:"\u6211\u7684\u5929\u7FFC",panKey:"tianyi",fallbackVodName:"\u5929\u7FFC\u8D44\u6E90"},uc:{aliases:["uc"],rootId:"0",fallbackName:"\u6211\u7684UC",panKey:"uc",fallbackVodName:"UC\u8D44\u6E90"},xunlei:{aliases:["\u8FC5\u96F7","xunlei","thunder"],rootId:"",fallbackName:"\u6211\u7684\u8FC5\u96F7",panKey:"xunlei",fallbackVodName:"\u8FC5\u96F7\u8D44\u6E90"},guangya:{aliases:["\u5149\u9E2D","guangya","guangyapan","gy"],rootId:"",fallbackName:"\u6211\u7684\u5149\u9E2D",panKey:"guangya",fallbackVodName:"\u5149\u9E2D\u8D44\u6E90"}};KDn={meta:{key:"mycloud",name:"\u2B50\uFE0F \u6211\u7684",type:3,searchable:!1},api:async e=>{e.post("/init",xDn),e.post("/home",wDn),e.post("/category",NDn),e.post("/detail",PDn),e.post("/play",HDn),e.post("/search",VDn),e.get("/proxy/:provider/:mode/:token",UDn),e.get("/test",jDn)}}});var NYt={};Ft(NYt,{default:()=>NPn,performLogin:()=>B3});function ELe(e=[]){return[{n:"\u5168\u90E8",v:""},...e.map(t=>({n:String(t),v:String(t)}))]}async function rPn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let o=s;if(s+=1,o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>i())),n}function nPn(e){return String(e||"").trim()}function M3(e,t,r){let n=Array.isArray(r)?r.length:0,s=t>0?Math.max(1,Math.ceil(t/k3)):Math.max(1,Number(e)||1);return{page:e,pagecount:s,limit:k3,total:t,list:r,count:n}}function w_(e){return String(e||"").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/\s+/g," ").trim()}async function yYt(e){return await e?.server?.db?.getObjectDefault("/panlian",{})}async function yLe(e){let t=await yYt(e);return String(t?.cookie||"").trim()}async function sPn(e){let t=await yYt(e);return{username:String(t?.username||"").trim(),password:String(t?.password||"").trim()}}async function zW(e,t,r){await e.db.push(`/panlian/${t}`,r)}function iPn(e=[]){let t=new Map,r=Array.isArray(e)?e:[e];for(let n of r){let s=String(n||"").split(";")[0].trim();if(!s||!s.includes("="))continue;let i=s.indexOf("="),a=s.slice(0,i).trim(),o=s.slice(i+1).trim();a&&t.set(a,o)}return t}function aPn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=String(r||"").trim();if(!n||!n.includes("="))return;let s=n.indexOf("="),i=n.slice(0,s).trim(),a=n.slice(s+1).trim();i&&t.set(i,a)}),t}function oPn(e){return[...e.entries()].map(([t,r])=>`${t}=${r}`).join("; ")}function vYt(e="",t=[]){let r=aPn(e);for(let[n,s]of iPn(t).entries())r.set(n,s);return oPn(r).trim()}async function SYt(e,t){let r=t?.headers?.["set-cookie"];if(!r)return await yLe(e);let n=await yLe(e),s=vYt(n,r);return s&&s!==n&&await zW(e.server,"cookie",s),s||n}async function TYt(e,t=`${H0}/all-videos.php`){let r=await yLe(e);return{"User-Agent":TLe,"X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*",Referer:t,Origin:H0,...r?{Cookie:r}:{}}}function cPn(e){let t=String(e?.message||e?.msg||"").trim();return t.includes("\u8BF7\u5148\u767B\u5F55")||e?.code===401||e?.success===!1&&t.includes("\u767B\u5F55")}async function YW(e,t,r={},n,s={}){let{retryAuth:i=!0}=s||{},a=await ILe.get(`${H0}${t}`,{params:r,headers:await TYt(e,n)});await SYt(e,a);let o=a.data;if(a.status===401||cPn(o)){if(i){let{username:u,password:l}=await sPn(e);if(u&&l)return await B3(e,u,l,!0),await YW(e,t,r,n,{...s,retryAuth:!1})}let c=new Error("\u76D8\u94FE\u9700\u8981\u767B\u5F55");throw c.loginRequired=!0,c.response=o,c}if(a.status>=400)throw new Error(`HTTP ${a.status}`);return o}async function uPn(e,t,r={},n=`${H0}/pages/video.php`){let s=await ILe.get(`${H0}${t}`,{params:r,maxRedirects:0,headers:await TYt(e,n)});if(await SYt(e,s),s.status>=400)throw new Error(`HTTP ${s.status}`);return String(s.data||"")}function lPn(e=""){let t=String(e||"").replace(/\\\//g,"/"),r=[Di.pan123,Di.quark,Di.baidu,Di.uc,Di.tianyi,Di.mobile,Di.pan115,Di.xunlei,Di.ali,Di.guangya,Di.magnet];for(let n of r){let s=t.match(n);if(s?.[0])return s[0].replace(/["'<>\\]+$/g,"").trim()}return""}async function dPn(e,t=""){let r=String(t||"").trim();if(!r)return"";if(/^(?:https?:|magnet:|thunder:|ed2k:)/i.test(r))return r;let n=_Yt.get(r);if(n)return n;let s=await uPn(e,"/api/go.php",{t:r},`${H0}/pages/video.php`),i=lPn(s);if(!i)throw new Error("\u76D8\u94FE token \u89E3\u6790\u5931\u8D25");return _Yt.set(r,i),i}function Fb(e={}){return{vod_id:String(e.vod_id||e.id||""),vod_name:w_(e.vod_name||e.title||"\u672A\u77E5\u6807\u9898"),vod_pic:e.vod_pic||e.pic||e.cover||"",vod_remarks:w_(e.vod_remarks||e.state||e.note||""),vod_year:String(e.vod_year||e.year||""),vod_content:w_(e.vod_content||e.content||e.description||""),vod_actor:w_(e.vod_actor||e.actor||""),vod_director:w_(e.vod_director||e.director||""),vod_area:w_(e.vod_area||e.area||""),type_id:String(e.type_id||e.type||""),type_name:String(e.type_name||e.class||"")}}function fPn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.url)return t}catch{}return null}function vLe(e,t=null){let r=String(e||"").trim(),n=t&&typeof t=="object"?{vod_id:r,vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||"",vod_year:t.vod_year||"",vod_content:t.vod_content||"",vod_actor:t.vod_actor||"",vod_director:t.vod_director||"",vod_area:t.vod_area||"",type_id:t.type_id||"",type_name:t.type_name||""}:null;return n?JSON.stringify({source:"panlian",mode:"show",vodId:r,baseVod:n}):`panlian_show|${r}`}function bYt(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="panlian"&&r.mode==="show"&&r.vodId)return{vodId:String(r.vodId),baseVod:r.baseVod&&typeof r.baseVod=="object"?Fb(r.baseVod):null}}catch{}let t=String(e||"").match(/^panlian_show\|(.+)$/);return t?{vodId:t[1],baseVod:null}:null}function hPn(e,t,r=null){let n=String(e||"").trim(),s=String(t||"").trim(),i=r&&typeof r=="object"?{vod_id:n,vod_name:r.vod_name||"",vod_pic:r.vod_pic||"",vod_remarks:r.vod_remarks||"",vod_year:r.vod_year||"",vod_content:r.vod_content||"",vod_actor:r.vod_actor||"",vod_director:r.vod_director||"",vod_area:r.vod_area||"",type_id:r.type_id||"",type_name:r.type_name||""}:null;return i?JSON.stringify({source:"panlian",mode:"group",vodId:n,panType:s,baseVod:i}):`panlian_group|${n}|${s}`}function pPn(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="panlian"&&r.mode==="group"&&r.vodId&&r.panType)return{vodId:String(r.vodId),panType:String(r.panType),baseVod:r.baseVod&&typeof r.baseVod=="object"?Fb(r.baseVod):null}}catch{}let t=String(e||"").match(/^panlian_group\|([^|]+)\|([^|]+)$/);return t?{vodId:t[1],panType:t[2],baseVod:null}:null}function mPn(e){return JSON.stringify({source:"panlian",mode:"resource",...e})}function gPn(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="panlian"&&t.mode==="resource"&&t.url)return t}catch{}return null}function RLe(e={}){let t=String(e?.vod_id||"").trim(),r=vLe(t,e),n=e?.vod_name||"";return{...e,vod_id:r,type_id:r,type_name:n,vod_tag:"folder",cate:{id:r,name:n}}}function CLe(e={}){return QW(e?.pan_type||e?.drive_type||e?.sourceName||e?.groupName||e?.groupKey||e?.type||"")||APn(e?.url||e?.link||e?.token||"")}async function _Pn(e,t={},r={}){let n=String(r.url||r.link||r.token||"").trim(),s=await dPn(e,n).catch(()=>n);if(!s)return null;let i=String(r.password||r.pwd||"").trim(),a=CLe(r);if(!bLe.has(a)||!wLe(a))return null;let o=IYt(a)||w_(r.groupName||r.groupKey||"\u7F51\u76D8"),c=w_(r.note||r.remark||r.title||""),u=w_(r.created_at||r.create_time||r.updated_at||r.update_time||r.time||r.add_time||r.date||""),l=i&&!/([?&])(pwd|password|passcode|code)=/i.test(s)&&["baidu","xunlei","123"].includes(a)?`${s}${s.includes("?")?"&":"?"}pwd=${encodeURIComponent(i)}`:s,d=c||t?.vod_name||"\u8D44\u6E90",f=[o,u].filter(Boolean);return{vod_id:mPn({vodId:String(t?.vod_id||"").trim(),url:l,name:d,sourceName:o,note:c,time:u,pic:t?.vod_pic||"",content:t?.vod_content||"",panType:a,baseVodRemark:t?.vod_remarks||"",baseVodYear:t?.vod_year||"",baseVodActor:t?.vod_actor||"",baseVodDirector:t?.vod_director||"",baseVodArea:t?.vod_area||""}),vod_name:d,vod_pic:t?.vod_pic||CYt(e,RYt(a))||"",vod_remarks:f.join(" \xB7 "),vod_year:t?.vod_year||"",vod_content:t?.vod_content||"",vod_actor:t?.vod_actor||"",vod_director:t?.vod_director||"",vod_area:t?.vod_area||"",type_id:"",type_name:`${o} \u8D44\u6E90`,__panType:a,__time:vPn(u)}}function APn(e=""){let t=String(e||"").trim();return t?Di.magnet.test(t)?"magnet":Di.ali.test(t)?"ali":Di.quark.test(t)?"quark":Di.baidu.test(t)?"baidu":Di.uc.test(t)?"uc":Di.tianyi.test(t)?"tianyi":Di.mobile.test(t)?"yidong":Di.pan123.test(t)?"123":Di.pan115.test(t)?"115":Di.xunlei.test(t)?"xunlei":Di.guangya.test(t)?"guangya":"":""}function QW(e=""){let t=String(e||"").toLowerCase().trim();return t?["quark","\u5938\u514B","\u5938\u514B\u7F51\u76D8"].includes(t)?"quark":["uc","uc\u7F51\u76D8"].includes(t)?"uc":["baidu","\u767E\u5EA6","\u767E\u5EA6\u7F51\u76D8"].includes(t)?"baidu":["tianyi","189","\u5929\u7FFC","\u5929\u7FFC\u7F51\u76D8","cloud189"].includes(t)?"tianyi":["115","115\u7F51\u76D8"].includes(t)?"115":["123","pan123","123\u7F51\u76D8","123\u4E91\u76D8"].includes(t)?"123":["ali","aliyun","alipan","aliyundrive","\u963F\u91CC","\u963F\u91CC\u4E91\u76D8"].includes(t)?"ali":["mobile","139","yidong","caiyun","\u79FB\u52A8","\u79FB\u52A8\u4E91\u76D8","\u79FB\u52A8\u7F51\u76D8"].includes(t)?"yidong":["xunlei","\u8FC5\u96F7","\u8FC5\u96F7\u4E91\u76D8","\u8FC5\u96F7\u7F51\u76D8"].includes(t)?"xunlei":["guangya","guangyapan","gy","\u5149\u9E2D","\u5149\u9E2D\u7F51\u76D8"].includes(t)?"guangya":["magnet","\u78C1\u529B","\u78C1\u94FE","bt","\u79CD\u5B50","torrent"].includes(t)?"magnet":"":""}function xLe(){return Array.isArray(xi())?xi():[]}function EPn(){return new Map(xLe().map((e,t)=>[String(e?.key||"").trim(),t]))}function wLe(e=""){let t=QW(e);return t?wT(t,xLe()):!1}function IYt(e=""){let t=QW(e);if(!t)return"";if(t==="magnet")return"\u78C1\u529B";let r=xLe().find(s=>String(s?.key||"").trim()===t);return r?.name?r.name:Co().find(s=>s?.key===t)?.name||""}function RYt(e=""){let t=QW(e);return t&&Co().find(n=>n?.key===t)?.pic||""}function CYt(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}function yPn(e=[]){let t=EPn();return[...e].sort((r,n)=>(t.get(r?.__panType)??999)-(t.get(n?.__panType)??999))}function vPn(e){if(e==null)return 0;if(typeof e=="number")return Number.isFinite(e)?e:0;let t=String(e).trim();if(!t)return 0;let r=Date.parse(t.replace(/\./g,"-"));if(!Number.isNaN(r))return r;let n=t.match(/(20\d{2})[-/.](\d{1,2})[-/.](\d{1,2})(?:\s+(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?)?/);if(!n)return 0;let[,s,i,a,o="0",c="0",u="0"]=n;return new Date(Number(s),Number(i)-1,Number(a),Number(o),Number(c),Number(u)).getTime()}async function xYt(e){if(GW.data.length&&Date.now()-GW.ts=r))break}if(a.length[]);for(let s of n){let a=(await NLe(e,{t:s?.type_id||0,pg:1}).catch(()=>[])).find(o=>String(o.vod_id)===r);if(a)return a}return null}async function B3(e,t,r,n=!0){let s=new URLSearchParams;s.set("username",String(t||"").trim()),s.set("password",String(r||"").trim()),n&&s.set("remember","on");let i=await ILe.post(`${H0}/api/login.php`,s.toString(),{headers:{"User-Agent":TLe,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",Referer:`${H0}/pages/login.php`,Origin:H0,Accept:"application/json, text/plain, */*"}}),a=i.data||{};if(i.status>=400||a?.success!==!0)throw new Error(a?.message||`\u767B\u5F55\u5931\u8D25 HTTP ${i.status}`);let o=vYt("",i.headers["set-cookie"]||[]);if(!o)throw new Error("\u767B\u5F55\u6210\u529F\u4F46\u672A\u62FF\u5230 Cookie");return await zW(e.server,"cookie",o),await zW(e.server,"username",String(t||"").trim()),await zW(e.server,"password",String(r||"").trim()),{success:!0,message:a?.message||"\u767B\u5F55\u6210\u529F",cookie:o}}async function TPn(e,t){return await Wi(e,t),{}}async function bPn(e){let t=Yr("panlian",arguments[0]||{}),r=Qr(t);if(r)return r;let n=await xYt(e),s=[],i={};for(let o of n){s.push({type_id:String(o.type_id),type_name:o.type_name});let c=[];Array.isArray(o.children)&&o.children.length&&c.push({key:"sc",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:""},...o.children.map(u=>({n:u.type_name,v:String(u.type_id)}))]}),c.push({key:"year",name:"\u5E74\u4EFD",value:ELe(ZDn)},{key:"area",name:"\u5730\u533A",value:ELe(ePn)},{key:"lang",name:"\u8BED\u8A00",value:ELe(tPn)}),i[String(o.type_id)]=c}let a={class:s,filters:i};return dn(t,a,Tt.semiStatic),a}async function IPn(e){return{list:(await NLe(e,{t:0,pg:1})).slice(0,k3).map(r=>RLe(r))}}async function RPn(e){let t=e.body||{},r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"0").trim(),s=t.extend||t.filters||t.ext||{},i=pPn(n);if(i){if(r>1)return M3(r,0,[]);let p=i.vodId,m=i.baseVod||null,g=(Array.isArray(t?.list)?t.list:[]).find(v=>String(v?.vod_id||"")===vLe(p)||String(v?.vod_id||"")===p);g&&(m=Fb({...g,vod_id:p})),m||(m=await AYt(e,p).catch(()=>null)),m||(m=Fb({vod_id:p,vod_name:p}));let y=await SLe(e,m.vod_name||p,p).catch(()=>[]),E=(await Promise.all(y.map(v=>_Pn(e,m,v)))).filter(v=>v&&v.__panType===i.panType).sort((v,b)=>(b.__time||0)-(v.__time||0)).map(({__panType:v,__time:b,...I})=>I);return M3(1,E.length,E)}let a=bYt(n);if(a){if(r>1)return M3(r,0,[]);let p=a.vodId,m=a.baseVod||null,g=(Array.isArray(t?.list)?t.list:[]).find(v=>String(v?.vod_id||"")===n||String(v?.vod_id||"")===vLe(p));g&&(m=Fb({...g,vod_id:p})),m||(m=await AYt(e,p).catch(()=>null)),m||(m=Fb({vod_id:p}));let y=await SLe(e,m.vod_name||p,p).catch(()=>[]),A=new Map;for(let v of y){let b=CLe(v);if(!bLe.has(b)||!wLe(b))continue;let I=A.get(b)||{count:0};I.count+=1,A.set(b,I)}let E=yPn([...A.entries()].map(([v,b])=>{let I=hPn(p,v,m),T=IYt(v);return{vod_id:I,vod_name:T,vod_pic:CYt(e,RYt(v))||"",type_id:I,type_name:T,vod_remarks:`${b.count} \u6761\u8D44\u6E90`,vod_tag:"folder",cate:{id:I,name:T},__panType:v}})).map(({__panType:v,...b})=>b);return M3(1,E.length,E)}let c=String(s.sc||"").trim()||n,u=String(s.year||"").trim(),l=String(s.area||"").trim(),d=String(s.lang||"").trim(),f={t:c,pg:r};u&&(f.year=u),l&&(f.area=l),d&&(f.lang=d);let h=await wYt(e,f);return{page:r,pagecount:h.pagecount,limit:k3,total:h.total,list:h.list.map(p=>RLe(p)),count:h.list.length}}async function CPn(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let s=gPn(n)||fPn(n);if(s?.url){let a=await Bs(s.url,e).catch(()=>({froms:"",urls:"",links:[]})),o={vod_id:String(n||""),vod_name:s.name||s.baseVodName||"\u8D44\u6E90",vod_pic:s.pic||"",vod_remarks:s.baseVodRemark||[s.sourceName,s.note,s.time].filter(Boolean).join(" \xB7 "),vod_year:s.baseVodYear||"",vod_actor:s.baseVodActor||"",vod_director:s.baseVodDirector||"",vod_area:s.baseVodArea||"",vod_content:s.content||"",vod_play_from:a?.froms||"",vod_play_url:a?.urls||""};Array.isArray(a?.links)&&a.links.length>0&&(o.vod_links=a.links),r.push(o);continue}let i=bYt(n);if(i?.baseVod){r.push({...i.baseVod,vod_id:String(n||""),vod_play_from:"",vod_play_url:""});continue}}return{list:r}}async function xPn(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!t)return M3(1,0,[]);let n=nPn(t),s=gYt.get(n),i=null;return s?i=s:(i=await Un("panlian","search",n,async()=>{let a=[];try{a=await SPn(e,t,EYt)}catch(l){if(l?.loginRequired||String(l?.message||"").includes("\u8BF7\u5148\u767B\u5F55"))return console.warn(`[panlian.search] login required, degrade to empty result. keyword=${JSON.stringify(t)}`),[];throw l}let o=[],c=new Set,u=await rPn(a,zDn,async l=>{let f=(await SLe(e,l.vod_name||l.vod_id,l.vod_id).catch(()=>[])).filter(h=>{let p=CLe(h);return bLe.has(p)&&wLe(p)});return{vod:l,enabledLinks:f}});for(let l of u){if(!l?.vod||!Array.isArray(l.enabledLinks)||l.enabledLinks.length===0)continue;let d=l.vod,f=String(d.vod_id||"").trim()||`${d.vod_name||""}|${d.vod_pic||""}`;!f||c.has(f)||(c.add(f),o.push(RLe(d)))}return o},{timeout:3e4}),gYt.set(n,i)),{page:r,pagecount:1,limit:i.length,total:i.length,list:i,count:i.length}}async function wPn(e,t){return Zs(e,t)}var H0,TLe,k3,EYt,GDn,zDn,YDn,QDn,WDn,ZDs,XDn,JDn,bLe,ZDn,ePn,tPn,Di,ILe,GW,gYt,_Yt,NPn,OLe=ae(()=>{Pr();Nn();Hr();wi();su();da();sa();H0="https://pinglian.lol",TLe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",k3=30,EYt=Number.POSITIVE_INFINITY,GDn=Number.POSITIVE_INFINITY,zDn=6,YDn=20*1e3,QDn=80,WDn=15e3,ZDs=10*60*1e3,XDn=60*60*1e3,JDn=60*1e3,bLe=new Set(["quark","uc","baidu","tianyi","115","123","ali","yidong","xunlei","guangya","magnet"]),ZDn=Array.from({length:42},(e,t)=>String(2026-t)),ePn=["\u5927\u9646","\u9999\u6E2F","\u53F0\u6E7E","\u7F8E\u56FD","\u65E5\u672C","\u97E9\u56FD","\u82F1\u56FD","\u6CD5\u56FD","\u5FB7\u56FD","\u5370\u5EA6","\u6CF0\u56FD","\u4FC4\u7F57\u65AF","\u5176\u4ED6"],tPn=["\u56FD\u8BED","\u82F1\u8BED","\u7CA4\u8BED","\u95FD\u5357\u8BED","\u97E9\u8BED","\u65E5\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u4FC4\u8BED","\u6CF0\u8BED","\u897F\u73ED\u7259\u8BED","\u8461\u8404\u7259\u8BED","\u5176\u4ED6"];Di={baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,quark:/https?:\/\/pan\.quark\.cn\/s\/[a-zA-Z0-9]+/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[a-zA-Z0-9]+(?:\?pwd=[a-zA-Z0-9]{4})?(?:#)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+(?:%[0-9A-Fa-f]{2})*(?:([^)]*))?|web\/share\?code=[^&\s]+)/i,uc:/https?:\/\/(?:drive|pan)\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[a-zA-Z0-9_-]+(?:\?[^\s<>"']*)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]{4})?(?:#)?/i,ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9]+(?:\/folder\/[a-zA-Z0-9_-]+)?/i,mobile:/https?:\/\/(?:(?:www\.)?yun\.139\.com\/shareweb\/#\/w\/i\/[a-zA-Z0-9]+|(?:www\.)?caiyun\.139\.com\/(?:w\/i\/[a-zA-Z0-9]+|m\/i\?[a-zA-Z0-9]+)[^\s<>"']*|caiyun\.feixin\.10086\.cn\/[a-zA-Z0-9]+)/i,guangya:/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/i,magnet:/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i},ILe=ve.create({timeout:WDn,validateStatus:()=>!0,httpsAgent:Zn({insecure:!0}).httpsAgent,headers:{"User-Agent":TLe,"X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*"}}),GW={ts:0,data:[]},gYt=new gt(QDn,YDn),_Yt=new gt(300,JDn);NPn={meta:{key:"panlian",name:"\u2601\uFE0F \u76D8\u94FE",type:3},api:async e=>{e.post("/init",TPn),e.post("/home",bPn),e.post("/homeVod",IPn),e.post("/category",RPn),e.post("/detail",CPn),e.post("/play",wPn),e.post("/search",xPn),e.post("/login",async t=>B3(t,t.body?.username,t.body?.password,t.body?.remember!==!1)),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}}});var jLe={};Ft(jLe,{__test:()=>ELn,default:()=>vLn,performLogin:()=>uN});async function UPn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let o=s;if(s+=1,o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>i())),n}function FPn(e){return String(e||"").trim()}function F3(e,t,r){let n=Array.isArray(r)?r.length:0,s=t>0?Math.max(1,Math.ceil(t/aN)):Math.max(1,Number(e)||1);return{page:e,pagecount:s,limit:aN,total:t,list:r,count:n}}function Bp(e){return String(e||"").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/\s+/g," ").trim()}async function kLe(e){return await e?.server?.db?.getObjectDefault("/filejin",{})}async function DLe(e){let t=await kLe(e);return String(t?.cookie||"").trim()}async function FYt(e){let t=await kLe(e);return{username:String(t?.username||"").trim(),password:String(t?.password||"").trim()}}async function Up(e){let t=await kLe(e);return String(t?.site||"").trim().replace(/\/+$/,"")||OPn}async function j0(e,t,r){await e.db.push(`/filejin/${t}`,r)}function $Pn(e=[]){let t=new Map,r=Array.isArray(e)?e:[e];for(let n of r){let s=String(n||"").split(";")[0].trim();if(!s||!s.includes("="))continue;let i=s.indexOf("="),a=s.slice(0,i).trim(),o=s.slice(i+1).trim();a&&t.set(a,o)}return t}function qPn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=String(r||"").trim();if(!n||!n.includes("="))return;let s=n.indexOf("="),i=n.slice(0,s).trim(),a=n.slice(s+1).trim();i&&t.set(i,a)}),t}function HPn(e){return[...e.entries()].map(([t,r])=>`${t}=${r}`).join("; ")}function oN(e="",t=[]){let r=qPn(e);for(let[n,s]of $Pn(t).entries())r.set(n,s);return HPn(r).trim()}async function $Yt(e,t){let r=t?.headers?.["set-cookie"];if(!r)return await DLe(e);let n=await DLe(e),s=oN(n,r);return s&&s!==n&&await j0(e.server,"cookie",s),s||n}function cN(e,t=null){try{return JSON.parse(e)}catch{return t}}function BLe(e="",t=0){let r=String(e||""),n=r[t],s=n==="{"?"}":n==="["?"]":"";if(!s)return"";let i=0,a=!1,o="",c=!1;for(let u=t;u0)return r;let s=[/(?:window\.)?_obj\s*=\s*(\{[\s\S]*?\})\s*;\s*<\/script>/i,/(?:window\.)?_obj\s*=\s*(\{[\s\S]*?\})\s*;?/i];for(let i of s){let a=t.match(i);if(!a?.[1])continue;let o=cN(a[1],null);if(o&&typeof o=="object")return o}return null}function qYt(e,t,r=384){let n=String(e||"").trim(),s=String(t||"").trim();return!n||!s?"":`https://s.tutu.pm/img/${n}/${s}/${r}.webp`}function HYt(e,t){let r=String(e||"").trim(),n=String(t||"").trim();return r&&n?`${r}::${n}`:n}function rd(e=""){let t=String(e||"").trim(),r=t.match(/^(tv|mv|ac)::(.+)$/);return r?{dir:r[1],id:r[2]}:{dir:"",id:t}}function ky(e={},t={}){let r=String(e.dir||e.type||e.type_id||t.dir||"").trim(),n=String(e.id??e.vod_id??e.pf?.db?.id??t.id??"").trim(),s=rd(n);s.dir&&(r=r||s.dir,n=s.id);let i=Bp(e.title||e.vod_name||e.name||t.title||"\u672A\u77E5\u6807\u9898"),a=e.vod_pic||e.pic||e.cover||e.image||t.vod_pic||qYt(r,n,384),o=Bp(e.vod_remarks||e.note||e.state||e.remark||t.vod_remarks||""),c=String(e.vod_year||e.year||e.publish_year||t.vod_year||""),u=Bp(e.vod_content||e.summary||e.desc||e.description||t.vod_content||""),l=Bp(e.vod_actor||e.actor||e.actors||t.vod_actor||""),d=Bp(e.vod_director||e.director||t.vod_director||""),f=Bp(e.vod_area||e.area||e.region||t.vod_area||"");return{vod_id:HYt(r,n),vod_name:i,vod_pic:a,vod_remarks:o,vod_year:c,vod_content:u,vod_actor:l,vod_director:d,vod_area:f,type_id:r,type_name:UYt[r]||String(e.type_name||t.type_name||""),_dir:r,_raw_id:n}}function XW(e={},t){return ky(e,{dir:t,id:e.id,title:e.title,vod_remarks:e.note||"",vod_year:e.year||""})}function VYt(e={},t,r,n=null){let s=e?.pf?.db||{},i={...e,id:String(s?.id||r||e?.id||"").trim(),dir:t||"",title:e?.title||n?.vod_name||"",vod_pic:n?.vod_pic||qYt(t,String(s?.id||r||e?.id||"").trim(),384),vod_remarks:e?.note||e?.year||n?.vod_remarks||"",vod_year:e?.year||n?.vod_year||"",vod_content:e?.intro||e?.summary||n?.vod_content||"",vod_actor:Array.isArray(e?.actors)?e.actors.join("/"):e?.actor||e?.starring||n?.vod_actor||"",vod_director:Array.isArray(e?.director)?e.director.join("/"):e?.director||n?.vod_director||"",vod_area:e?.area||n?.vod_area||""};return ky(i,n||{})}function VPn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.url)return t}catch{}return null}function PLe(e,t=null){let r=String(e||"").trim(),n=t&&typeof t=="object"?{vod_id:r,vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||"",vod_year:t.vod_year||"",vod_content:t.vod_content||"",vod_actor:t.vod_actor||"",vod_director:t.vod_director||"",vod_area:t.vod_area||"",type_id:t.type_id||"",type_name:t.type_name||""}:null;return n?JSON.stringify({source:"filejin",mode:"show",vodId:r,baseVod:n}):`filejin_show|${r}`}function jYt(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="filejin"&&r.mode==="show"&&r.vodId)return{vodId:String(r.vodId),baseVod:r.baseVod&&typeof r.baseVod=="object"?ky(r.baseVod):null}}catch{}let t=String(e||"").match(/^filejin_show\|(.+)$/);return t?{vodId:t[1],baseVod:null}:null}function jPn(e,t,r=null){let n=String(e||"").trim(),s=String(t||"").trim(),i=r&&typeof r=="object"?{vod_id:n,vod_name:r.vod_name||"",vod_pic:r.vod_pic||"",vod_remarks:r.vod_remarks||"",vod_year:r.vod_year||"",vod_content:r.vod_content||"",vod_actor:r.vod_actor||"",vod_director:r.vod_director||"",vod_area:r.vod_area||"",type_id:r.type_id||"",type_name:r.type_name||""}:null;return i?JSON.stringify({source:"filejin",mode:"group",vodId:n,panType:s,baseVod:i}):`filejin_group|${n}|${s}`}function KPn(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="filejin"&&r.mode==="group"&&r.vodId&&r.panType)return{vodId:String(r.vodId),panType:String(r.panType),baseVod:r.baseVod&&typeof r.baseVod=="object"?ky(r.baseVod):null}}catch{}let t=String(e||"").match(/^filejin_group\|([^|]+)\|([^|]+)$/);return t?{vodId:t[1],panType:t[2],baseVod:null}:null}function GPn(e){return JSON.stringify({source:"filejin",mode:"resource",...e})}function KYt(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="filejin"&&t.mode==="resource"&&t.url)return t}catch{}return null}function ULe(e={}){let t=String(e?.vod_id||"").trim(),r=PLe(t,e),n=e?.vod_name||"";return{...e,vod_id:r,type_id:r,type_name:n,vod_tag:"folder",cate:{id:r,name:n}}}function FLe(e={}){return YPn(e?.url||e?.link||"")||ZW(e?.pan_type||e?.drive_type||e?.sourceName||e?.groupName||e?.groupKey||"")}function zPn(e={},t={}){let r=String(t.url||t.link||"").trim();if(!r)return null;let n=String(t.password||t.pwd||t.code||"").trim(),s=FLe(t);if(!MLe.has(s)||!qLe(s))return null;let i=GYt(s)||Bp(t.groupName||t.groupKey||"\u7F51\u76D8"),a=Bp(t.title||t.name||t.file_name||t.filename||e?.vod_name||"\u8D44\u6E90"),o=Bp(t.note||t.remark||t.user||t.username||""),c=Bp(t.created_at||t.create_time||t.updated_at||t.update_time||t.time||t.add_time||t.date||""),u=n&&!/([?&])(pwd|password|passcode|code)=/i.test(r)&&["baidu","xunlei","123"].includes(s)?`${r}${r.includes("?")?"&":"?"}pwd=${encodeURIComponent(n)}`:r,l=[a].filter(Boolean),d=[i,o,c].filter(Boolean);return{vod_id:GPn({vodId:HYt(e?._dir||rd(e?.vod_id||"").dir||e?.type_id||"",e?._raw_id||rd(e?.vod_id||"").id||e?.vod_id||""),url:u,name:l.join(" \xB7 "),sourceName:i,note:o,time:c,pic:e?.vod_pic||"",content:e?.vod_content||"",panType:s,baseVodRemark:e?.vod_remarks||"",baseVodYear:e?.vod_year||"",baseVodActor:e?.vod_actor||"",baseVodDirector:e?.vod_director||"",baseVodArea:e?.vod_area||""}),vod_name:l.join(" \xB7 "),vod_pic:e?.vod_pic||YYt(null,zYt(s))||"",vod_remarks:d.join(" \xB7 "),vod_year:e?.vod_year||"",vod_content:e?.vod_content||"",vod_actor:e?.vod_actor||"",vod_director:e?.vod_director||"",vod_area:e?.vod_area||"",type_id:"",type_name:`${i} \u8D44\u6E90`,__panType:s,__time:XPn(c)}}function YPn(e=""){let t=String(e||"").trim();return t?V0.magnet.test(t)?"magnet":V0.ali.test(t)?"ali":V0.quark.test(t)?"quark":V0.baidu.test(t)?"baidu":V0.uc.test(t)?"uc":V0.tianyi.test(t)?"tianyi":V0.mobile.test(t)?"yidong":V0.pan123.test(t)?"123":V0.pan115.test(t)?"115":V0.xunlei.test(t)?"xunlei":V0.guangya.test(t)?"guangya":"":""}function ZW(e=""){let t=String(e||"").toLowerCase().trim();return t?["quark","\u5938\u514B","\u5938\u514B\u7F51\u76D8"].includes(t)?"quark":["uc","uc\u7F51\u76D8"].includes(t)?"uc":["baidu","\u767E\u5EA6","\u767E\u5EA6\u7F51\u76D8"].includes(t)?"baidu":["tianyi","189","\u5929\u7FFC","\u5929\u7FFC\u7F51\u76D8","cloud189"].includes(t)?"tianyi":["115","115\u7F51\u76D8"].includes(t)?"115":["123","pan123","123\u7F51\u76D8","123\u4E91\u76D8"].includes(t)?"123":["ali","aliyun","alipan","\u963F\u91CC","\u963F\u91CC\u4E91\u76D8"].includes(t)?"ali":["mobile","139","yidong","caiyun","\u79FB\u52A8","\u79FB\u52A8\u4E91\u76D8","\u79FB\u52A8\u7F51\u76D8"].includes(t)?"yidong":["xunlei","\u8FC5\u96F7","\u8FC5\u96F7\u4E91\u76D8","\u8FC5\u96F7\u7F51\u76D8"].includes(t)?"xunlei":["guangya","guangyapan","gy","\u5149\u9E2D","\u5149\u9E2D\u7F51\u76D8"].includes(t)?"guangya":["magnet","\u78C1\u529B","\u78C1\u94FE","bt","\u79CD\u5B50","torrent"].includes(t)?"magnet":"":""}function $Le(){return Array.isArray(xi())?xi():[]}function QPn(){return new Map($Le().map((e,t)=>[String(e?.key||"").trim(),t]))}function qLe(e=""){let t=ZW(e);return t?wT(t,$Le()):!1}function GYt(e=""){let t=ZW(e);if(!t)return"";if(t==="magnet")return"\u78C1\u529B";let r=$Le().find(s=>String(s?.key||"").trim()===t);return r?.name?r.name:Co().find(s=>s?.key===t)?.name||""}function zYt(e=""){let t=ZW(e);return t&&Co().find(n=>n?.key===t)?.pic||""}function YYt(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}function WPn(e=[]){let t=QPn();return[...e].sort((r,n)=>(t.get(r?.__panType)??999)-(t.get(n?.__panType)??999))}function XPn(e){if(e==null)return 0;if(typeof e=="number")return Number.isFinite(e)?e:0;let t=String(e).trim();if(!t)return 0;let r=Date.parse(t.replace(/\./g,"-"));if(!Number.isNaN(r))return r;let n=t.match(/(20\d{2})[-/.](\d{1,2})[-/.](\d{1,2})(?:\s+(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?)?/);if(!n)return 0;let[,s,i,a,o="0",c="0",u="0"]=n;return new Date(Number(s),Number(i)-1,Number(a),Number(o),Number(c),Number(u)).getTime()}function eLn(e,t,r){let n=BigInt("0x"+e),s=BigInt("0x"+t),i=r|0;for(let a=0;asetImmediate(u))}return s.toString(16)}async function WYt(e,t,r){let{Worker:n}=await import("node:worker_threads"),s=new n(ZPn,{eval:!0});try{return await new Promise((i,a)=>{let o=setTimeout(()=>a(new Error(`pow worker timeout ${LYt}ms`)),LYt),c=(u,l)=>{clearTimeout(o),u(l)};s.on("message",u=>{if(u&&u.error)return c(a,new Error(u.error));if(u&&u.y)return c(i,u.y)}),s.on("error",u=>c(a,u)),s.postMessage({N:e,x:t,t:r})})}finally{try{await s.terminate()}catch{}}}async function XYt(e,t,r){try{return await WYt(e,t,r)}catch{return await QYt(e,t,r)}}function tLn(e=""){return/(?:^|;\s*)browser_verified=/.test(String(e||""))}async function rLn(e,t=""){let r=await qb.get(`${e}/res/pow`,{headers:{"User-Agent":$b,Accept:"application/json, text/plain, */*",Referer:`${e}/`,"X-Requested-With":"XMLHttpRequest",...t?{Cookie:t}:{}}}),n=oN(t,r.headers?.["set-cookie"]||[]),s=typeof r.data=="string"?cN(r.data,null):r.data;return{status:r.status,data:s,cookie:n}}async function nLn(e,t=""){let r=`${e}::${String(t||"").trim()||"__noCookie__"}`,n=iN.get(r);if(n!==null)return n;let s=await qb.get(`${e}/`,{headers:{"User-Agent":$b,...t?{Cookie:t}:{}}}),i=oN(t,s.headers?.["set-cookie"]||[]),a=String(s.data||"");if(tLn(i)&&!/浏览器安全验证|\/res\/pow|powSolve/i.test(a))return iN.set(r,i),i;let o=null,c="/",u={};if(/\/res\/pow|powSolve/i.test(a)){let A=await rLn(e,i);i=A.cookie||i,A.status<400&&A.data&&(o=A.data,c="/res/pow")}if(!o){let A=a.match(/const json=(\{.*?\});const jss=/s);A&&(o=cN(A[1],null),c="/",u={action:"verify",id:o?.id})}let{N:l,x:d,t:f}=o||{};if(!l||!d||!f)return iN.set(r,i),i;let h="",p=Date.now();try{h=await XYt(String(l),String(d),Number(f))}catch{return iN.set(r,i),i}let m=Date.now()-p;m<3e3&&await zt(3e3-m);let _=new URLSearchParams;for(let[A,E]of Object.entries(u))E!=null&&E!==""&&_.append(A,String(E));_.append("y",h);let g=await qb.post(`${e}${c}`,_.toString(),{headers:{"User-Agent":$b,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*",Referer:`${e}/`,Origin:e,...i?{Cookie:i}:{}}}),y=oN(i,g.headers?.["set-cookie"]||[]);return iN.set(r,y),y&&iN.set(`${e}::${y}`,y),y}async function JYt(e){let t=await Up(e),r=await DLe(e),n=await nLn(t,r);return n&&n!==r&&await j0(e.server,"cookie",n),n||r}async function ZYt(e,t,r="text/html,application/json,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"){let n=await Up(e),s=await JYt(e);return{"User-Agent":$b,Accept:r,Referer:t||`${n}/`,Origin:n,...s?{Cookie:s}:{}}}function MYt(e=""){let t=String(e||"");return/_obj\.header=.*?\"u\"\s*:\s*\{[^}]*\"n\"\s*:\s*\"[^\"]+/s.test(t)||/_obj\.header=.*?u\s*:\s*\{[^}]*n\s*:/s.test(t)}function sLn(e){let t=String(e?.message||e?.msg||"").trim();return t.includes("\u8BF7\u5148\u767B\u5F55")||e?.code===401||e?.success===!1&&t.includes("\u767B\u5F55")}async function q3(e,t,r,n={}){let{retryAuth:s=!0}=n||{},i=await Up(e),a=await qb.get(`${i}${t}`,{headers:await ZYt(e,r||`${i}/`)});await $Yt(e,a);let o=String(a.data||"");if((a.status===401||/请先登录/.test(o))&&s){let{username:c,password:u}=await FYt(e);if(c&&u)return await uN(e,c,u,!0),await q3(e,t,r,{...n,retryAuth:!1})}if(a.status>=400)throw new Error(`HTTP ${a.status}`);return o}async function HLe(e,t,r={},n,s={}){let{retryAuth:i=!0}=s||{},a=await Up(e),o=await qb.get(`${a}${t}`,{params:r,headers:await ZYt(e,n||`${a}/`,"application/json, text/plain, */*")});await $Yt(e,o);let c=typeof o.data=="string"?cN(o.data,null):o.data;if(o.status===401||sLn(c)){if(i){let{username:l,password:d}=await FYt(e);if(l&&d)return await uN(e,l,d,!0),await HLe(e,t,r,n,{...s,retryAuth:!1})}let u=new Error("Filejin \u9700\u8981\u767B\u5F55");throw u.loginRequired=!0,u.response=c,u}if(o.status>=400)throw new Error(`HTTP ${o.status}`);return c}function U3(e="",t="search",r="title"){let n=String(e||""),s=`_obj.${t}=`,i=n.indexOf(s);if(i<0)return[];let a=`"${r}":[`,o=n.indexOf(a,i);if(o<0)return[];let c=n.indexOf("[",o);if(c<0)return[];let u=BLe(n,c),l=cN(u,[]);return Array.isArray(l)?l:[]}function iLn(e=""){let t=U3(e,"search","title"),r=U3(e,"search","i"),n=U3(e,"search","d"),s=U3(e,"search","info"),i=U3(e,"search","year");return!Array.isArray(r)||r.length===0?[]:r.map((a,o)=>({id:a,dir:n[o]||"",title:t[o]||"",note:s[o]||"",year:i[o]||""}))}function aLn(e={},t=""){if(!e||typeof e!="object"||Array.isArray(e))return[];let r=Array.isArray(e.i)?e.i:[],n=Array.isArray(e.t)?e.t:[],s=Array.isArray(e.g)?e.g:[],i=Array.isArray(e.d)?e.d:[],a=Array.isArray(e.a)?e.a:[],o=Array.isArray(e.q)?e.q:[],c=String(e.ty||t||"").trim();return r.map((u,l)=>{let d=[];s[l]&&d.push(String(s[l]).trim()),i[l]&&d.push(`\u8BC4\u5206 ${i[l]}`);let f=Array.isArray(o[l])?o[l].filter(Boolean).join("/"):"";f&&d.push(f);let h=Array.isArray(a[l])?a[l].filter(p=>p!=null&&String(p).trim()!=="").map(p=>String(p).trim()):[];return h.length>0&&d.push(h.join(" / ")),{id:u,dir:c,title:n[l]||"",note:d.filter(Boolean).join(" \xB7 "),year:Array.isArray(a[l])&&a[l].length>0?String(a[l][0]||""):""}})}function eQt(e){if(Array.isArray(e))return e;if(Array.isArray(e?.list))return e.list;if(Array.isArray(e?.data))return e.data;let t=e?.l&&typeof e.l=="object"?e.l:e;if(t&&Array.isArray(t?.title)&&Array.isArray(t?.i)){let r=t.title||[],n=t.i||[],s=t.d||[],i=t.info||[],a=t.year||[];return n.map((o,c)=>({id:o,dir:s[c]||"",title:r[c]||"",note:i[c]||"",year:a[c]||""}))}return[]}function LLe(e={},t=""){return!e||typeof e!="object"?[]:aLn(e,t)}function oLn(e){let t=N_.includes(String(e||"").trim())?String(e||"").trim():"tv",r=(n,s=n)=>[{n:"\u5168\u90E8",v:""},...n.map((i,a)=>({n:String(i),v:String(s[a]??i)}))];return[{key:"genre",name:"\u7C7B\u578B",value:r(My.genre[t]||[])},{key:"year",name:"\u5E74\u4EE3",value:r(My.year,My.yearValue)},{key:"region",name:"\u5730\u533A",value:r(My.region)},{key:"lang",name:"\u8BED\u8A00",value:r(My.lang)},{key:"sort",name:"\u6392\u5E8F",value:My.sort.map(([n,s])=>({n,v:s}))},{key:"quality",name:"\u753B\u8D28",value:My.quality.map(([n,s])=>({n,v:s}))},{key:"status",name:"\u72B6\u6001",value:My.status.map(([n,s])=>({n,v:s}))}]}function cLn(){return Object.fromEntries(N_.map(e=>[e,oLn(e)]))}function uLn(e,t=1,r={}){let n=N_.includes(String(e||"").trim())?String(e||"").trim():"tv",s=Math.max(1,Number.parseInt(t,10)||1),i=new URLSearchParams,a=["genre","genres","year","region","lang","sort","quality","status","rrange","srange","trange","timetype","imdb","play"];for(let c of a){let u=r?.[c];u!=null&&String(u).trim()!==""&&i.set(c,String(u).trim())}s>1&&i.set("page",String(s));let o=i.toString();return`/${n}${o?`?${o}`:""}`}async function lLn(e){let t=await Up(e),r=await q3(e,"/",`${t}/`),n=$3(r)||{};return LLe(n?.inlist,n?.inlist?.ty||"mv")}async function dLn(e){if(WW.data.length&&Date.now()-WW.ts({type_id:r,type_name:UYt[r]||r}));return WW={ts:Date.now(),data:t},t}async function VLe(e,t,r=1,n={}){let s=N_.includes(String(t||"").trim())?String(t||"").trim():"tv",i=Math.max(1,Number.parseInt(r,10)||1),a=JSON.stringify(n||{}),o=`${s}:${i}:${a}`,c=PYt.get(o);if(c)return c;let u=null,l=Object.keys(n||{}).some(f=>n?.[f]!==void 0&&n?.[f]!==null&&String(n[f]).trim()!==""),d=await Up(e);if(i===1&&!l){let f=await q3(e,`/${s}`,`${d}/`),h=$3(f)||{};u={list:Array.isArray(h?.inlist)?h.inlist:LLe(h?.inlist,s),page:1,pagecount:Number(h?.page?.pages||1)||1,inlineObj:h}}else{let f=await HLe(e,`/res${uLn(s,i,n)}`,{},`${d}/${s}`),h=f?.inlist||f?.list||f?.data||{};u={list:Array.isArray(h)?h:LLe(h,s),page:i,pagecount:Number(f?.page?.pages||i)||i,inlineObj:f}}return PYt.set(o,u),u}async function eX(e,t={}){let r=N_.includes(String(t.t||t.dir||"").trim())?String(t.t||t.dir||"").trim():"tv",n=Math.max(1,Number.parseInt(t.pg||t.page,10)||1),s=await VLe(e,r,n,t.ext||t.extend||{}),i=Array.isArray(s?.list)?s.list:[],a=[];if(i.length>0&&typeof i[0]=="object"&&!Array.isArray(i[0]))a=i.map(o=>XW(o,r));else{let o=s?.inlineObj?.inlist||s?.inlineObj||{},c=Array.isArray(o?.i)?o.i:[],u=Array.isArray(o?.t)?o.t:[],l=Array.isArray(o?.g)?o.g:[],d=Array.isArray(o?.q)?o.q:[];a=c.map((f,h)=>XW({id:f,title:u[h]||"",note:[l[h],Array.isArray(d[h])?d[h].join("/"):""].filter(Boolean).join(" \xB7 ")},r))}return a.filter(o=>o?.vod_id&&o?.vod_name)}async function tQt(e,t,r=BYt){let n=await Up(e),s=await q3(e,`/search?q=${encodeURIComponent(t)}`,`${n}/`),i=$3(s)||{},a=iLn(s),c=(a.length>0?a:eQt(i?.search)).map(l=>{let d=String(l.dir||l.type||l.t||"").trim();return XW(l,d)});if(c.length===0&&/未登录,访问受限/.test(s)){let l=[];for(let f of N_)for(let h=2;h<=DPn;h+=1){let p=await eX(e,{t:f,pg:h}).catch(()=>[]);if(!(!Array.isArray(p)||p.length===0))for(let m of p)String(m.vod_name||"").includes(t)&&l.push(m)}let d=new Set;return l.filter(f=>{let h=String(f.vod_id||"").trim()||`${f.vod_name}|${f.vod_pic}`;return!h||d.has(h)?!1:(d.add(h),!0)})}let u=new Set;return c.filter(l=>{let d=String(l.vod_id||"").trim()||`${l.vod_name}|${l.vod_pic}`;return!d||u.has(d)?!1:(u.add(d),!0)})}function fLn(e){let t=[];if(e?.panlist&&typeof e.panlist=="object"){let n=e.panlist,s=Array.isArray(n.url)?n.url:[];for(let i=0;i0?t:Array.isArray(e)?e:Array.isArray(e?.downlist)?e.downlist:Array.isArray(e?.list)?e.list:Array.isArray(e?.data)?e.data:Array.isArray(e?.urls)?e.urls:e?.data&&typeof e.data=="object"?Object.entries(e.data).flatMap(([n,s])=>Array.isArray(s)?s.map(i=>({...i,groupKey:n})):Array.isArray(s?.links)?s.links.map(i=>({...i,groupKey:n,groupName:s?.name||n})):[]):[]}async function JW(e,t,r){let n=N_.includes(String(t||"").trim())?String(t||"").trim():"tv",s=String(r||"").trim();if(!s)return[];let i=await Up(e),a=await HLe(e,`/res/downurl/${n}/${encodeURIComponent(s)}`,{},`${i}/${n}/${s}`);return fLn(a)}async function kYt(e,t){let r=rd(t);if(!r.dir||!r.id)return null;let n=await rQt(e,r.dir,r.id).catch(()=>null);return n?VYt(n,r.dir,r.id):null}async function rQt(e,t,r){let n=await Up(e),s=await q3(e,`/${t}/${encodeURIComponent(r)}`,`${n}/${t}`);return($3(s)||{})?.d||null}async function uN(e,t,r,n=!0){let s=await Up(e),i=await JYt(e),a=await qb.get(`${s}/user/login`,{headers:{"User-Agent":$b,Referer:`${s}/`,...i?{Cookie:i}:{}}});i=oN(i,a.headers?.["set-cookie"]||[]);let o=String(a.data||""),c=String(a?.request?.res?.responseUrl||"");if(/app_auth=/i.test(i)&&(a.status===301||a.status===302||MYt(o)||c&&!/\/user\/login(?:$|[?#])/.test(c)))return await j0(e.server,"cookie",i),await j0(e.server,"username",String(t||"").trim()),await j0(e.server,"password",String(r||"").trim()),{success:!0,message:"\u5DF2\u767B\u5F55",cookie:i};let u=new URLSearchParams;u.set("username",String(t||"").trim()),u.set("password",String(r||"").trim()),n&&u.set("cookietime","10506240"),u.set("code",""),u.set("dosubmit","1"),u.set("siteid","1");let l=await qb.post(`${s}/user/login`,u.toString(),{headers:{"User-Agent":$b,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",Referer:`${s}/user/login`,Origin:s,Accept:"application/json, text/plain, */*",...i?{Cookie:i}:{}}}),d=typeof l.data=="string"?(()=>{try{return JSON.parse(l.data)}catch{return null}})():l.data||{},f=oN(i,l.headers?.["set-cookie"]||[]),h=typeof l.data=="string"?l.data:"",p=String(l?.request?.res?.responseUrl||"");if(l.status<400&&/app_auth=/i.test(f)&&(d?.code===200||MYt(h)||p&&!/\/user\/login(?:$|[?#])/.test(p)))return await j0(e.server,"cookie",f),await j0(e.server,"username",String(t||"").trim()),await j0(e.server,"password",String(r||"").trim()),{success:!0,message:d?.message||d?.msg||"\u767B\u5F55\u6210\u529F",cookie:f};if(l.status>=400||d?.code!==200)throw new Error(d?.message||d?.msg||`\u767B\u5F55\u5931\u8D25 HTTP ${l.status}`);if(!f||!/app_auth=/i.test(f))throw new Error("\u767B\u5F55\u6210\u529F\u4F46\u672A\u62FF\u5230 app_auth Cookie");return await j0(e.server,"cookie",f),await j0(e.server,"username",String(t||"").trim()),await j0(e.server,"password",String(r||"").trim()),{success:!0,message:d?.message||d?.msg||"\u767B\u5F55\u6210\u529F",cookie:f}}async function hLn(e,t){return await Wi(e,t),{}}async function pLn(e){let t=Yr("filejin",arguments[0]||{}),r=Qr(t);if(r)return r;let i={class:(await dLn(e)).map(a=>({type_id:String(a.type_id),type_name:a.type_name})),filters:cLn()};return dn(t,i,Tt.semiStatic),i}async function mLn(e){let t=await lLn(e).catch(()=>[]);return(!Array.isArray(t)||t.length===0)&&(t=await eX(e,{t:"tv",pg:1})),{list:t.slice(0,aN).map(r=>ULe(r))}}async function gLn(e){let t=e.body||{},r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"tv").trim(),s=t.extend||t.filters||t.ext||{},i=KPn(n);if(i){if(r>1)return F3(r,0,[]);let l=i.vodId,d=i.baseVod||null,h=(Array.isArray(t?.list)?t.list:[]).find(g=>String(g?.vod_id||"")===PLe(l)||String(g?.vod_id||"")===l);if(h&&(d=ky({...h,vod_id:rd(l).id,dir:rd(l).dir})),d||(d=await kYt(e,l).catch(()=>null)),!d){let g=rd(l);d=ky({vod_id:g.id,dir:g.dir,vod_name:l})}let p=rd(l),_=(await JW(e,p.dir,p.id).catch(()=>[])).map(g=>zPn(d,g)).filter(g=>g&&g.__panType===i.panType).sort((g,y)=>(y.__time||0)-(g.__time||0)).map(({__panType:g,__time:y,...A})=>A);return F3(1,_.length,_)}let a=jYt(n);if(a){if(r>1)return F3(r,0,[]);let l=a.vodId,d=a.baseVod||null,h=(Array.isArray(t?.list)?t.list:[]).find(y=>String(y?.vod_id||"")===n||String(y?.vod_id||"")===PLe(l));if(h){let y=rd(l);d=ky({...h,vod_id:y.id,dir:y.dir})}if(d||(d=await kYt(e,l).catch(()=>null)),!d){let y=rd(l);d=ky({vod_id:y.id,dir:y.dir})}let p=rd(l),m=await JW(e,p.dir,p.id).catch(()=>[]),_=new Map;for(let y of m){let A=FLe(y);if(!MLe.has(A)||!qLe(A))continue;let E=_.get(A)||{count:0};E.count+=1,_.set(A,E)}let g=WPn([..._.entries()].map(([y,A])=>{let E=jPn(l,y,d),v=GYt(y);return{vod_id:E,vod_name:v,vod_pic:YYt(e,zYt(y))||"",type_id:E,type_name:v,vod_remarks:`${A.count} \u6761\u8D44\u6E90`,vod_tag:"folder",cate:{id:E,name:v},__panType:y}})).map(({__panType:y,...A})=>A);return F3(1,g.length,g)}let o=N_.includes(String(s.sc||n).trim())?String(s.sc||n).trim():"tv",c=await eX(e,{t:o,pg:r,ext:s}),u=await VLe(e,o,r,s).catch(()=>null);return{page:r,pagecount:u?.pagecount||(c.length>=aN?r+1:r),limit:aN,total:(u?.pagecount||r)*aN,list:c.map(l=>ULe(l)),count:c.length}}async function _Ln(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let s=KYt(n)||VPn(n);if(s?.url){let u=String(n||""),l=OYt.get(u);if(l){r.push(l);continue}let d=await Bs(s.url,e).catch(()=>({froms:"",urls:"",links:[]})),f={vod_id:u,vod_name:s.name||s.baseVodName||"\u8D44\u6E90",vod_pic:s.pic||"",vod_remarks:s.baseVodRemark||[s.sourceName,s.note,s.time].filter(Boolean).join(" \xB7 "),vod_year:s.baseVodYear||"",vod_actor:s.baseVodActor||"",vod_director:s.baseVodDirector||"",vod_area:s.baseVodArea||"",vod_content:s.content||"",vod_play_from:d?.froms||"",vod_play_url:d?.urls||""};Array.isArray(d?.links)&&d.links.length>0&&(f.vod_links=d.links),OYt.set(u,f),r.push(f);continue}let i=jYt(n);if(!i?.vodId)continue;let a=rd(i.vodId);if(!a.dir||!a.id)continue;let o=await rQt(e,a.dir,a.id).catch(()=>null),c=VYt(o||{},a.dir,a.id,i.baseVod||null);r.push({...c,vod_id:n,vod_play_from:"",vod_play_url:""})}return{list:r}}async function ALn(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!t)return F3(1,0,[]);let n=FPn(t),s=DYt.get(n),i=null;return s?i=s:(i=await Un("filejin","search",n,async()=>{let a=await tQt(e,t,BYt),o=[],c=new Set,u=await UPn(a,4,async l=>{let d=rd(l.vod_id),h=(await JW(e,d.dir,d.id).catch(()=>[])).filter(p=>{let m=FLe(p);return MLe.has(m)&&qLe(m)});return{vod:l,enabledLinks:h}});for(let l of u){if(!l?.vod||!Array.isArray(l.enabledLinks)||l.enabledLinks.length===0)continue;let d=l.vod,f=String(d.vod_id||"").trim()||`${d.vod_name||""}|${d.vod_pic||""}`;!f||c.has(f)||(c.add(f),o.push(ULe(d)))}return o},{timeout:3e4}),DYt.set(n,i)),{page:r,pagecount:1,limit:i.length,total:i.length,list:i,count:i.length}}async function yLn(e,t){return Zs(e,t)}var OPn,$b,aN,BYt,DPn,PPn,LPn,MPn,kPn,BPn,N_,UYt,My,MLe,V0,qb,WW,OYt,DYt,PYt,JPn,LYt,iN,ZPn,ELn,vLn,tX=ae(()=>{Pr();Nn();Hr();wi();su();da();ws();sa();OPn="https://www.xn--rhqp87dfoiv9a830g.com",$b="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",aN=20,BYt=Number.POSITIVE_INFINITY,DPn=8,PPn=20*1e3,LPn=80,MPn=15e3,kPn=10*60*1e3,BPn=60*60*1e3,N_=["tv","mv","ac"],UYt={tv:"\u5267\u96C6",mv:"\u7535\u5F71",ac:"\u52A8\u6F2B"},My={genre:{tv:["\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\u72AF\u7F6A","\u60AC\u7591","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u5BB6\u5EAD","\u77ED\u7247","\u6821\u56ED","\u6587\u827A","\u8FD0\u52A8","\u9752\u6625","\u540C\u6027","\u52B1\u5FD7","\u4EBA\u6027","\u7F8E\u98DF","\u5973\u6027","\u6CBB\u6108","\u5386\u53F2","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0"],mv:["\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\u72AF\u7F6A","\u60AC\u7591","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u5BB6\u5EAD","\u77ED\u7247","\u6821\u56ED","\u6587\u827A","\u8FD0\u52A8","\u9752\u6625","\u540C\u6027","\u52B1\u5FD7","\u4EBA\u6027","\u7F8E\u98DF","\u5973\u6027","\u6CBB\u6108","\u5386\u53F2","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0"],ac:["\u5267\u60C5","\u840C\u7CFB","\u79D1\u5E7B","\u65E5\u5E38","\u6218\u6597","\u6218\u4E89","\u70ED\u8840","\u673A\u6218","\u6E38\u620F","\u641E\u7B11","\u604B\u7231","\u540E\u5BAB","\u767E\u5408","\u57FA\u8150","\u5192\u9669","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u6050\u6016","\u60CA\u609A","\u72AF\u7F6A","\u60AC\u7591","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u6CE1\u9762","\u6821\u56ED","\u8FD0\u52A8","\u9752\u6625","\u7F8E\u98DF","\u6CBB\u6108","\u81F4\u90C1","\u52B1\u5FD7","\u5386\u53F2","\u7EAA\u5F55","\u5F02\u4E16\u754C"]},year:["\u8FD1\u4E09\u5E74","2026","2025","2024","2023","2022","2021","2020","20\u5E74\u4EE3","10\u5E74\u4EE3","00\u5E74\u4EE3","90\u5E74\u4EE3","80\u5E74\u4EE3","70\u5E74\u4EE3","60\u5E74\u4EE3","\u66F4\u65E9"],yearValue:["3","2026","2025","2024","2023","2022","2021","2020","120","110","100","90","80","70","60","1"],region:["\u6D77\u5916","\u6B27\u7F8E","\u4E9A\u6D32","\u7F8E\u56FD","\u65E5\u672C","\u97E9\u56FD","\u82F1\u56FD","\u6CD5\u56FD","\u5FB7\u56FD","\u5370\u5EA6","\u6CF0\u56FD","\u745E\u5178","\u5DF4\u897F","\u5927\u9646","\u9999\u6E2F","\u53F0\u6E7E","\u52A0\u62FF\u5927","\u4FC4\u7F57\u65AF","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"],lang:["\u82F1\u8BED","\u6CD5\u8BED","\u56FD\u8BED","\u7CA4\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u5FB7\u8BED","\u4FC4\u8BED","\u95FD\u5357\u8BED","\u4E39\u9EA6\u8BED","\u6CE2\u5170\u8BED","\u745E\u5178\u8BED","\u5370\u5730\u8BED","\u632A\u5A01\u8BED","\u610F\u5927\u5229\u8BED","\u897F\u73ED\u7259\u8BED","\u65E0\u5BF9\u767D"],sort:[["\u6DFB\u52A0\u65F6\u95F4",""],["\u66F4\u65B0\u65F6\u95F4","uptime"],["\u4E0A\u6620/\u9996\u64AD\u65F6\u95F4","date"],["\u8BC4\u5206\u6700\u9AD8","score"],["\u8BC4\u5206\u4EBA\u6570","number"],["\u8BC4\u5206\u603B\u4EBA\u6570","numbers"],["\u7EFC\u5408\u8BC4\u5206","cscore"]],quality:[["\u5168\u90E8",""],["720P","720P"],["1080P","1080P"],["4K","4K"],["3D","3D"],["BD","BD"],["HDR","HDR"],["DV","DV"],["\u539F\u76D8","\u539F\u76D8"]],status:[["\u5168\u90E8",""],["\u9884\u544A","\u9884\u544A"],["\u8FDE\u8F7D/\u62A2\u5148\u7248","\u8FDE\u8F7D"],["\u5B8C\u7ED3","\u5B8C\u7ED3"]]},MLe=new Set(["quark","uc","baidu","tianyi","115","123","ali","yidong","xunlei","guangya","magnet"]),V0={baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,quark:/https?:\/\/pan\.quark\.cn\/s\/[a-zA-Z0-9]+/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[a-zA-Z0-9]+(?:\?pwd=[a-zA-Z0-9]{4})?(?:#)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+(?:%[0-9A-Fa-f]{2})*(?:([^)]*))?|web\/share\?code=[^&\s]+)/i,uc:/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[a-zA-Z0-9_-]+(?:\?[^\s<>"']*)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]{4})?(?:#)?/i,ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9]+(?:\/folder\/[a-zA-Z0-9_-]+)?/i,mobile:/https?:\/\/(?:(?:www\.)?yun\.139\.com\/shareweb\/#\/w\/i\/[a-zA-Z0-9]+|(?:www\.)?caiyun\.139\.com\/(?:w\/i\/[a-zA-Z0-9]+|m\/i\?[a-zA-Z0-9]+)[^\s<>"']*|caiyun\.feixin\.10086\.cn\/[a-zA-Z0-9]+)/i,guangya:/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/i,magnet:/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i},qb=ve.create({timeout:MPn,validateStatus:()=>!0,httpsAgent:Zn({insecure:!0}).httpsAgent,headers:{"User-Agent":$b,Accept:"text/html,application/json,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),WW={ts:0,data:[]},OYt=new gt(200,kPn),DYt=new gt(LPn,PPn),PYt=new gt(80,15*1e3);JPn=90*1e3,LYt=60*1e3,iN=new gt(16,JPn),ZPn=` -(async () => { - const { parentPort } = await import('node:worker_threads'); - parentPort.on('message', (msg) => { - try { - const { N: nHex, x: xHex, t } = msg; - const N = BigInt('0x' + nHex); - let y = BigInt('0x' + xHex); - const steps = t | 0; - for (let i = 0; i < steps; i += 1) y = (y * y) % N; - parentPort.postMessage({ y: y.toString(16) }); - } catch (err) { - parentPort.postMessage({ error: (err && err.message) || String(err) }); - } - }); -})(); -`;ELn={extractBalancedLiteral:BLe,extractInlineObj:$3,getSearchMatchList:eQt,normalizeListItem:XW,fetchSearchVideos:tQt,fetchCategoryPage:VLe,fetchVideos:eX,fetchPanLinks:JW,decodeResourceId:KYt,solveVdfSyncImpl:eLn,solveVdfMainThread:QYt,solveVdfWorker:WYt,solveVdfChallenge:XYt};vLn={meta:{key:"filejin",name:"\u2601\uFE0F \u89C2\u5F71",type:3},api:async e=>{e.post("/init",hLn),e.post("/home",pLn),e.post("/homeVod",mLn),e.post("/category",gLn),e.post("/detail",_Ln),e.post("/play",yLn),e.post("/search",ALn),e.post("/login",async t=>uN(t,t.body?.username,t.body?.password,t.body?.remember!==!1)),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}}});var SQt={};Ft(SQt,{default:()=>vQt});function K0(e=""){return String(e||"").replace(/\s+/g," ").trim()}function QLe(e=""){return String(e||"").replace(//gi," ").replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function pN(e=""){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:t.startsWith("//")?`https:${t}`:new URL(t,`${fN}/`).toString():""}function mQt(e){try{return JSON.parse(Buffer.from(String(e||""),"base64url").toString("utf8"))||null}catch{return null}}function wLn(e){let t=String(e||"");if(t.startsWith("!vod1!"))try{let n=JSON.parse(Buffer.from(t.slice(6),"base64url").toString("utf8"));if(Array.isArray(n)&&n[0]==="pan1"&&/^\d+$/.test(String(n[1]||""))){let s=Number.parseInt(n[2],10),i=Number.parseInt(n[3],10);if(Number.isInteger(s)&&s>=0&&Number.isInteger(i)&&i>=0)return{tid:String(n[1]),lineIndex:s,episodeIndex:i}}}catch{}let r=t.match(/^p1:(\d+):(\d+):(\d+)$/);return r?{tid:r[1],lineIndex:Number.parseInt(r[2],10),episodeIndex:Number.parseInt(r[3],10)}:null}function iX(e){return(e?.body&&Object.keys(e.body).length?e.body:null)||e?.query||{}}function GLe(e,t){let r=Object.create(e||null);return Object.defineProperty(r,"body",{value:t||{},enumerable:!0,configurable:!0,writable:!0}),r}function WLe(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function NLn(e=""){return String(e||"").match(/(?:\?|\/|^)thread-(\d+)\.htm/i)?.[1]||""}function OLn(e=""){return String(e||"").match(/(?:\?|\/|^)forum-(\d+)(?:-\d+)?\.htm/i)?.[1]||""}function XLe(e){return`/?thread-${encodeURIComponent(String(e||""))}.htm`}function DLn(e){return`/?search-${encodeURIComponent(String(e||"").trim())}-1.htm`}function PLn(e={}){let t=[e.quality||"0",e.source||"0",e.hdr||"0",e.genre||"0"].map(r=>String(r||"0").replace(/\D+/g,"")||"0");return t.every(r=>r==="0")?"":t.join("_")}function LLn(e,t=1,r={}){let n=`/?forum-${encodeURIComponent(String(e||"48"))}-${WLe(t)}.htm`,s=new URLSearchParams,i=PLn(r);i&&s.set("tagids",i),r.orderby&&s.set("orderby",String(r.orderby)),r.digest&&s.set("digest",String(r.digest));let a=s.toString();return a?`${n}&${a}`:n}function MLn(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();if(r)return`${t}://${r}`;try{return String(e?.server?.address?.()?.url||"").replace(/\/+$/,"")}catch{return""}}function kLn(e){return String(e?.server?.prefix||"").replace(/\/+$/,"")||`/spider/${hQt}/3`}function gQt(e,t=""){let r=pN(t);if(!r)return"";let n=MLn(e);return n?`${n}${kLn(e)}/proxy/pic/${Buffer.from(r,"utf8").toString("base64url")}.jpg`:r}async function aX(e){let t=await e?.server?.db?.getObjectDefault("/pan1",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:K0(t?.replyMessage||zLe)||zLe}}function BLn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=r.trim(),s=n.indexOf("=");s<=0||t.set(n.slice(0,s).trim(),n.slice(s+1).trim())}),t}function ULn(e="",t=[]){let r=BLn(e);for(let n of Array.isArray(t)?t:[t]){let s=String(n||"").split(";")[0].trim(),i=s.indexOf("=");if(i<=0)continue;let a=s.slice(0,i).trim(),o=s.slice(i+1).trim();!o||o.toLowerCase()==="deleted"?r.delete(a):r.set(a,o)}return[...r.entries()].map(([n,s])=>`${n}=${s}`).join("; ")}async function _Qt(e,t,r){let n=r?.headers?.["set-cookie"];if(!n)return t;let s=ULn(t,n);return s!==t&&await e.server.db.push("/pan1/cookie",s),s}function FLn(e=""){return String(e||"").match(/\bvar\s+uid\s*=\s*(\d+)\s*;/i)?.[1]||"0"}function $Ln(e=""){return/您所在的用户组权限不足|请先登录后操作|登录后体验更多功能/.test(String(e||""))}function qLn(e=""){let t=FLn(e);if(t==="0"||$Ln(e))throw new Error("pan1 Cookie \u672A\u914D\u7F6E\u3001\u5DF2\u5931\u6548\u6216\u7528\u6237\u7EC4\u6743\u9650\u4E0D\u8DB3\uFF0C\u8BF7\u524D\u5F80\u7AD9\u6E90\u914D\u7F6E\u586B\u5199\u8BBA\u575B Cookie");return t}async function mN(e,t,r={}){let n=await aX(e),s=await YLe.get(pN(t),{headers:{"User-Agent":sX,Referer:r.referer||`${fN}/`,...r.noCache?{"Cache-Control":"no-cache",Pragma:"no-cache"}:{},...n.cookie?{Cookie:n.cookie}:{}}});if(await _Qt(e,n.cookie,s),s.status>=400)throw new Error(`pan1 HTTP ${s.status}`);let i=String(s.data||"");return r.auth!==!1&&qLn(i),i}function HLn(e){if(e&&typeof e=="object")return e;try{return JSON.parse(String(e||""))}catch{return{code:-1,message:K0(e)||"\u8FD4\u56DE\u683C\u5F0F\u65E0\u6548"}}}async function VLn(e,t,r,n){let s=await aX(e);if(!s.cookie)throw new Error("pan1 \u81EA\u52A8\u56DE\u590D\u9700\u8981\u5148\u914D\u7F6E\u8BBA\u575B Cookie");let i=await YLe.post(pN(t),fQt.default.stringify(r),{headers:{"User-Agent":sX,Referer:n||`${fN}/`,Origin:fN,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Cookie:s.cookie}});if(await _Qt(e,s.cookie,i),i.status>=400)throw new Error(`pan1 \u56DE\u5E16 HTTP ${i.status}`);return HLn(i.data)}function lN(e){return[{n:"\u5168\u90E8",v:""},...e.map(([t,r])=>({n:t,v:String(r)}))]}function jLn(e=[]){let t=[{key:"orderby",name:"\u6392\u5E8F",value:lN([["\u6700\u65B0\u56DE\u590D","lastpid"],["\u6700\u65B0\u53D1\u5E03","tid"]])},{key:"digest",name:"\u4E3B\u9898",value:lN([["\u7CBE\u534E","1"],["\u70ED\u95E8","5"]])},{key:"quality",name:"\u5206\u8FA8\u7387",value:lN([["480P","22"],["720P","23"],["1080P","24"],["2K","25"],["4K","26"]])},{key:"source",name:"\u7247\u6E90",value:lN([["\u84DD\u5149\u539F\u76D8/ISO","217"],["\u84DD\u5149\u539F\u76D8/REMUX","218"],["BDRip/Encode","219"],["WEB-DL/WEBRip","220"],["HDTV/HDRip","221"]])},{key:"hdr",name:"\u753B\u8D28",value:lN([["\u675C\u6BD4\u89C6\u754C/DV","317"],["HDR","318"],["HQ","319"],["EDR","320"],["HLG","321"],["SDR","322"],["60FPS","323"]])},{key:"genre",name:"\u7C7B\u578B",value:lN([["\u53E4\u88C5","27"],["\u559C\u5267","39"],["\u52A8\u4F5C","38"],["\u6218\u4E89","37"],["\u7231\u60C5","36"],["\u60AC\u7591","35"],["\u5947\u5E7B","34"],["\u5192\u9669","33"],["\u72AF\u7F6A","32"],["\u60CA\u609A","31"],["\u5267\u60C5","30"],["\u5386\u53F2","29"],["\u7EAA\u5F55\u7247","28"],["\u52A8\u753B","40"]])}],r={};for(let n of e)xLn.has(String(n.type_id))&&(r[String(n.type_id)]=t);return r}function KLn(e=""){let t=er(e),r=new Set,n=[];return t("li[fid]").each((s,i)=>{let a=t(i),o=String(a.attr("fid")||"").trim(),u=a.find('a[href*="forum-"]').toArray().map(l=>K0(t(l).find("span").first().text()||t(l).attr("title")||t(l).text())).find(l=>l&&!/主题\s*:|今日\s*:/.test(l))||"";!o||!u||r.has(o)||!pQt.has(o)||(r.add(o),n.push({type_id:o,type_name:u.replace(/主题:.*/,"").trim()}))}),n}function AQt(e=""){return pN(`/upload/forum/${String(e||"48")}.png`)}function JLe(e="",t){let r=er(e),n=[],s=new Set;return r("li.thread[data-tid], li.media.thread[data-tid]").each((i,a)=>{let o=r(a),c=String(o.attr("data-tid")||"").trim();if(!c||s.has(c))return;let u=o.find('.style3_subject a[href*="thread-"]').first().length?o.find('.style3_subject a[href*="thread-"]').first():o.find('a[href*="thread-"]').filter((y,A)=>!String(r(A).attr("href")||"").includes("#comments")).last(),l=K0(u.text());if(!l||/版规|公告:|举报楼|发帖必看/.test(l))return;let d=o.find('a[href*="forum-"]').first(),f=OLn(d.attr("href")||"")||"48";if(!pQt.has(f))return;let h=o.find('a[href*="tagids="]').map((y,A)=>K0(r(A).text())).get().filter(Boolean),p=K0(o.find(".date").first().text()),m=K0(o.find('a[href*="#comments"]').first().text()).replace(/\D+/g,""),_=[...h.slice(0,4),p,m?`${m}\u8BC4`:""].filter(Boolean).join(" \xB7 "),g=gQt(t,AQt(f));s.add(c),n.push({vod_id:c,vod_name:l,vod_pic:g,vod_remarks:_,type_name:K0(d.text())||"123\u8D44\u6E90"})}),n.slice(0,H3)}function GLn(e="",t=1){let r=er(e),n=t;return r(".pagination .page-link").each((s,i)=>{let a=String(r(i).attr("href")||""),o=Number.parseInt(a.match(/forum-\d+-(\d+)\.htm/i)?.[1]||K0(r(i).text()).replace(/\D+/g,""),10);Number.isFinite(o)&&o>n&&o<1e5&&(n=o)}),n}function ZLe(e=""){let t=String(e||"").replace(/&/gi,"&").replace(//|//gi,"/").replace(/:|:/gi,":").replace(/\\u002f|\\x2f/gi,"/").replace(/\\u003a|\\x3a/gi,":").replace(/\\u0026|\\x26/gi,"&").replace(/\\\//g,"/");for(let r=0;r<3&&/%[0-9a-f]{2}/i.test(t);r+=1)try{let n=decodeURIComponent(t);if(n===t)break;t=n}catch{break}return t}function zLn(e=""){let t=[],r=new Set,n=[String(e||"")];for(;n.length>0&&t.length<200;){let s=n.shift(),i=ZLe(s).trim();if(!i||r.has(i))continue;r.add(i),t.push(i);let a=i.match(/(?:https?%3a%2f%2f|%2f%2f)[^\s"'<>]+/ig)||[];n.push(...a);try{let o=new URL(i,fN);for(let[,c]of o.searchParams)n.push(c)}catch{}if(/^[a-zA-Z0-9+/_=-]{16,}$/.test(i))try{let o=Buffer.from(i,"base64url").toString("utf8");/https?:|123(?:684|865|685|912|pan|592)/i.test(o)&&n.push(o)}catch{}}return t}function iQt(e=""){let t=ZLe(e).trim().replace(/^[\s="'(>]+|[\s,。;、\[\]))}"']+$/g,"").replace(/[&#?]+$/g,"");t.startsWith("//")?t=`https:${t}`:/^https?:\/\//i.test(t)||(t=`https://${t}`),dN.lastIndex=0;let r=dN.exec(t);return dN.lastIndex=0,r?.[0]?String(r[0]).replace(/[\s,。;、\[\]))}"']+$/g,""):""}function EQt(e=""){let t=new Set,r=ZLe(e),n=er(r),s=[r,n.root().text()];n("[href], [data-href], [data-url], [data-link], [onclick]").each((i,a)=>{for(let o of["href","data-href","data-url","data-link","onclick"]){let c=n(a).attr(o);c&&s.push(c)}});for(let i of s)for(let a of zLn(i)){dN.lastIndex=0;for(let o of a.matchAll(dN)){let c=iQt(o[0]);c&&t.add(c)}dN.lastIndex=0,KLe.lastIndex=0;for(let o of a.matchAll(KLe)){let c=iQt(o[1]);c&&t.add(c)}KLe.lastIndex=0}return[...t]}function nX(e=""){let t=QLe(e);return/本帖含有特定内容[^。]{0,80}回复后再查看|本帖含有隐藏内容[^。]{0,80}回复后查看|回复\s*后查看|回帖后可见/.test(t)}function YLn(e){return e('.message[isfirst="1"] img[src], .message[isfirst="1"] img[data-original], .message[isfirst="1"] img[data-src]').map((t,r)=>e(r).attr("data-original")||e(r).attr("data-src")||e(r).attr("src")).get().find(t=>t&&!/avatar|logo|loading|emoicon|forum\//i.test(t))||""}function QLn(e="",t={}){let r=er(e),n=K0(r(".card-thread .card-header h4.break-all").first().text()||r("h1").first().text()||t.title||t.tid||"123\u8D44\u6E90"),s=r('.message[isfirst="1"]').first().clone();s.find("script,style,.tt-license,.alert").remove();let i=QLe(s.text()).slice(0,1600)||n,a=YLn(r);return{title:n,content:i,image:a}}async function WLn(e,t){return!!await e?.server?.db?.getObjectDefault(`/pan1/replied/${t}`,0)}async function XLn(e,t){await e?.server?.db?.push(`/pan1/replied/${t}`,Date.now())}async function JLn(e,t,r,n){if(!n.autoReply)return{replied:!1,reason:"disabled"};if(!n.cookie)throw new Error("\u5E16\u5B50\u9700\u8981\u56DE\u590D\uFF0C\u4F46\u5C1A\u672A\u914D\u7F6E pan1 \u8BBA\u575B Cookie");if(await WLn(e,t))return{replied:!1,reason:"already-replied"};let s=er(r),i=s("#quick_reply_form"),a=String(i.attr("action")||`?post-create-${t}-1.htm`).trim();if(!i.length||!a)throw new Error("\u5E16\u5B50\u9700\u8981\u56DE\u590D\uFF0C\u4F46\u672A\u627E\u5230\u5FEB\u901F\u56DE\u5E16\u8868\u5355");let o={doctype:"1",return_html:"1",quotepid:"0",quick_reply_message:"0",message:n.replyMessage||zLe};i.find("input[name], select[name]").each((f,h)=>{let p=String(s(h).attr("name")||"").trim();!p||Object.prototype.hasOwnProperty.call(o,p)||(o[p]=String(s(h).val()??s(h).attr("value")??""))});let c=RLn-(Date.now()-sQt);c>0&&await zt(c);let u=await VLn(e,a,o,pN(XLe(t)));sQt=Date.now();let l=Array.isArray(u)?u[0]:u?.code,d=Array.isArray(u)?u[1]:u?.message;if(String(l)!=="0")throw new Error(`pan1 \u81EA\u52A8\u56DE\u5E16\u5931\u8D25\uFF1A${QLe(d||l||"unknown")}`);return await XLn(e,t),{replied:!0,reason:"success"}}async function ZLn(e,t,r,n){if(!nX(r))return{replied:!1,reason:"not-required"};let s=String(t);if(rX.has(s))return rX.get(s);let i=JLn(e,t,r,n).finally(()=>rX.delete(s));return rX.set(s,i),i}async function eMn(e,t,r=!0){let n=XLe(t),s="",i=[],a=r?CLn:[0];for(let o=0;o0&&await zt(a[o]),s=await mN(e,`${n}&_t=${Date.now()}-${o}`,{referer:pN(n),noCache:!0}),i=EQt(s),!(i.length>0||!nX(s)));o+=1);return{html:s,links:i}}async function tMn(e,t){return Wi(e,t)}async function aQt(e){let t="home",r=hN.get(t);if(r)return r;let n=await mN(e,"/"),s=KLn(n),i={class:s,filters:jLn(s)};return hN.set(t,i),i}async function oQt(e){let t=await mN(e,"/");return{list:JLe(t,e)}}async function cQt(e){let t=iX(e),r=String(t.id||t.tid||"48").replace(/\D+/g,"")||"48",n=WLe(t.page||t.pg),s=t.filters||t.extend||t.ext||t.filter||{},i=`category:${r}:${n}:${JSON.stringify(s)}`,a=hN.get(i);if(a)return a;let o=await mN(e,LLn(r,n,s)),c=JLe(o,e),u=GLn(o,n),l={page:n,pagecount:u,limit:H3,total:u*H3,list:c,count:c.length};return hN.set(i,l),l}async function yQt(e,t,r={}){let n=`detail:${t}`,s=nQt.get(n);if(s)return s;let i=await aX(e),a=await mN(e,XLe(t)),o=EQt(a),c={replied:!1,reason:"not-required"};if(o.length===0&&nX(a)){c=await ZLn(e,t,a,i);let d=c.replied||c.reason==="already-replied";({html:a,links:o}=await eMn(e,t,d))}let u=QLn(a,r),l=gQt(e,u.image||r.pic||AQt(r.fid||"48"));return s={tid:t,title:u.title,content:u.content,pic:l,links:o,locked:nX(a),replyResult:c},(o.length>0||!s.locked)&&nQt.set(n,s),s}async function uQt(e){let t=iX(e),r=Array.isArray(t.id)?t.id:[t.id],n=[];for(let s of r.filter(Boolean)){let i=mQt(s);if(i?.type==="pan"&&i.url){let l=await Bs([i.url],e).catch(()=>null),d={vod_id:String(s),vod_name:i.title||"123\u7F51\u76D8\u8D44\u6E90",vod_pic:i.pic||"",vod_content:i.content||"",vod_remarks:"123\u7F51\u76D8"};l?.froms&&l?.urls&&(d.vod_play_from=l.froms,d.vod_play_url=l.urls),n.push(d);continue}let a=i?.type==="thread"?i:{type:"thread",tid:NLn(String(s))||String(s||"").replace(/\D+/g,"")},o=String(a.tid||"").trim();if(!o)continue;let c=await yQt(e,o,a),u={vod_id:String(s),vod_name:c.title,vod_pic:c.pic||a.pic||"",vod_content:c.content,type_name:"123\u7F51\u76D8\u8D44\u6E90",vod_remarks:c.links.length>0?`${c.links.length} \u6761123\u7F51\u76D8\u8D44\u6E90`:c.locked?"\u5E16\u5B50\u9700\u8981\u56DE\u590D\uFF0C\u5C1A\u672A\u89E3\u9501\u8D44\u6E90":"\u672A\u53D1\u73B0123\u7F51\u76D8\u94FE\u63A5"};if(c.links.length>0){let l=await Bs(c.links,e).catch(()=>null);l?.froms&&l?.urls?(u.vod_play_from=l.froms,u.vod_play_url=l.urls,Array.isArray(l.links)&&l.links.length>0&&(u.vod_links=l.links)):u.vod_remarks="\u53D1\u73B0123\u7F51\u76D8\u94FE\u63A5\uFF0C\u4F46\u672A\u53D6\u5F97\u53EF\u64AD\u653E\u6587\u4EF6"}n.push(u)}return{list:n}}async function lQt(e){let t=iX(e),r=K0(t.wd||t.keyword||""),n=WLe(t.page||t.pg);if(!r||n>1)return{page:n,pagecount:1,limit:H3,total:0,list:[],count:0};let s=`search:${r}`,i=hN.get(s);if(i)return i;let a=await mN(e,DLn(r)),o=JLe(a,e),c={page:1,pagecount:1,limit:H3,total:o.length,list:o,count:o.length};return hN.set(s,c),c}async function dQt(e,t){let r=iX(e),n=wLn(r.id);if(n){let i=await yQt(e,n.tid),a=i.links.length>0?await Bs(i.links,e).catch(()=>null):null,o=String(a?.froms||"").split("$$$")[n.lineIndex]||"",c=String(a?.urls||"").split("$$$")[n.lineIndex]?.split("#")[n.episodeIndex]||"",u=c.indexOf("$"),l=u>=0?c.slice(u+1):"";return o&&l?Zs(GLe(e,{...r,flag:o,id:l}),t):{parse:0,url:[],msg:"\u77ED\u64AD\u653EID\u5BF9\u5E94\u7684123\u8D44\u6E90\u5DF2\u5931\u6548\uFF0C\u8BF7\u5237\u65B0\u8BE6\u60C5\u540E\u91CD\u8BD5"}}let s=mQt(r.id);if(s?.type==="pan"&&s.url){let i=await Bs([s.url],e).catch(()=>null),a=String(i?.froms||"").split("$$$")[0]||"",o=String(i?.urls||"").split("$$$")[0]?.split("#")[0]||"",c=o.indexOf("$"),u=c>=0?o.slice(c+1):"";return a&&u?Zs(GLe(e,{...r,flag:a,id:u}),t):{parse:0,url:[],msg:"\u5DF2\u53D6\u5F97123\u5206\u4EAB\u94FE\u63A5\uFF0C\u4F46\u5F53\u524D\u7F51\u76D8\u672A\u8FD4\u56DE\u53EF\u64AD\u653E\u6587\u4EF6"}}return Zs(GLe(e,r),t)}async function rMn(e,t){let r=String(e.params?.encoded||"").replace(/\.jpg$/i,""),n="";try{n=Buffer.from(r,"base64url").toString("utf8")}catch{}let s="";try{s=new URL(n).hostname}catch{}if(!n||!(s==="pan1.me"||s.endsWith(".pan1.me")))return t.code(400),"bad image url";let i=await aX(e),a=await YLe.get(n,{responseType:"arraybuffer",headers:{"User-Agent":sX,Referer:`${fN}/`,...i.cookie?{Cookie:i.cookie}:{}}});return a.status>=400?(t.code(502),"image fetch failed"):(t.header("Content-Type",a.headers?.["content-type"]||"image/jpeg"),t.header("Cache-Control","public, max-age=86400"),Buffer.from(a.data))}function vQt(){return{meta:{key:hQt,name:SLn,type:3,searchable:1,quickSearch:1,filterable:1},api:async e=>{e.post("/init",tMn),e.post("/home",aQt),e.post("/homeVod",oQt),e.post("/category",cQt),e.post("/detail",uQt),e.post("/search",lQt),e.post("/play",dQt),e.get("/home",aQt),e.get("/homeVod",oQt),e.get("/category",cQt),e.get("/detail",uQt),e.get("/search",lQt),e.get("/play",dQt),e.get("/proxy/pic/:encoded",rMn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)},check:async()=>!0}}var fQt,hQt,SLn,fN,sX,H3,TLn,bLn,ILn,RLn,CLn,zLe,pQt,xLn,dN,KLe,YLe,hN,nQt,rX,sQt,TQt=ae(()=>{Pr();fQt=Ne(sx(),1);Qd();Hr();su();ws();sa();hQt="pan1",SLn="\u2601\uFE0F 123\u793E\u533A",fN="https://pan1.me",sX="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",H3=40,TLn=2e4,bLn=30*1e3,ILn=3*60*1e3,RLn=15*1e3,CLn=[800,1200,2e3,3e3],zLe="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86",pQt=new Set(["2","48","37","52","56","40","51","42","57","58"]),xLn=new Set(["2","48","37","52","56","58"]),dN=/(?:https?:)?\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、\[\]))]*)?/ig,KLe=/(?:^|[^a-zA-Z0-9.-])((?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、\[\]))]*)?|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、\[\]))]*)?)/ig,YLe=ve.create({timeout:TLn,validateStatus:()=>!0,httpAgent:Zn().httpAgent,httpsAgent:Zn().httpsAgent,headers:{"User-Agent":sX,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),hN=new gt(160,bLn),nQt=new gt(160,ILn),rX=new Map,sQt=0});var MQt={};Ft(MQt,{default:()=>LQt});function Al(e=""){return String(e||"").replace(/\s+/g," ").trim()}function dX(e){return(e?.body&&Object.keys(e.body).length?e.body:null)||e?.query||{}}function xQt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function cMn(e){let t=dX(e);return t.filters||t.extend||t.ext||t.filter||{}}function fX(e="",t=`${gN}/`){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;if(r.startsWith("//"))return`https:${r}`;try{return new URL(r,t).toString()}catch{return""}}function V3(e=""){let t=fX(e);return/^https:\/\/guangya\.qsxy\.top\/\d+\.html(?:[?#].*)?$/i.test(t)?t.split(/[?#]/)[0]:""}async function tMe(e){let t=await e?.server?.db?.getObjectDefault("/guangyaqsxy",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:Al(t?.replyMessage||uX)||uX}}function uMn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=r.trim(),s=n.indexOf("=");s<=0||t.set(n.slice(0,s).trim(),n.slice(s+1).trim())}),t}function lMn(e="",t=[]){let r=uMn(e);for(let n of Array.isArray(t)?t:[t]){let s=String(n||"").split(";")[0].trim(),i=s.indexOf("=");if(i<=0)continue;let a=s.slice(0,i).trim(),o=s.slice(i+1).trim();!o||o.toLowerCase()==="deleted"?r.delete(a):r.set(a,o)}return[...r.entries()].map(([n,s])=>`${n}=${s}`).join("; ")}async function wQt(e,t,r){let n=r?.headers?.["set-cookie"];if(!n||!e?.server?.db?.push)return t;let s=lMn(t,n);return s!==t&&await e.server.db.push("/guangyaqsxy/cookie",s),s}function NQt(e=""){return/]*\blogged-in\b/i.test(String(e||""))||/\u9000\u51fa\u767b\u5f55|\u7528\u6237\u4e2d\u5fc3/.test(String(e||""))}function j3(e=""){let t=er(String(e||"")),r=t(".article-content, .wp-posts-content").first(),n=Al((r.length?r:t("body")).text());return/\u5185\u5bb9\u5df2\u9690\u85cf[^\u3002\uff01\uff1b]{0,100}\u8bc4\u8bba\u540e\u5237\u65b0\u9875\u9762\u67e5\u770b|\u8bc4\u8bba\u540e\u53ef\u89c1|\u56de\u590d\u540e\u53ef\u89c1/.test(n)}function dMn(e=""){let t=Al(er(String(e||""))("body").text());return/\u672a\u767b\u5f55\u6e38\u5ba2|\u767b\u5f55\u540e\u4f53\u9a8c\u66f4\u591a\u529f\u80fd|\u8bf7\u5148\u767b\u5f55/.test(t)||j3(e)}async function K3(e,t,r=`${gN}/`,n={}){let s=await tMe(e),i=fX(t),a=await CQt.get(i,{headers:{"User-Agent":rMe,Referer:r,...n.noCache?{"Cache-Control":"no-cache",Pragma:"no-cache"}:{},...s.cookie?{Cookie:s.cookie}:{}}});if(await wQt(e,s.cookie,a),a.status===404&&n.allowNotFound)return"";if(a.status>=400)throw new Error(`\u5149\u9E2D\u81FB\u5F71\u793E HTTP ${a.status}`);return String(a.data||"")}function fMn(e,t){let r=e(t).find("img").first(),n=[r.attr("data-src"),r.attr("data-lazy-src"),r.attr("data-original"),r.attr("src")];return fX(n.find(Boolean)||"")}function hMn(e,t,r){let n=[e(t).find(".item-heading a, .posts-item-title a, h2 a, h3 a").first().attr("title"),e(t).find(".item-heading a, .posts-item-title a, h2 a, h3 a").first().text(),r.attr("title"),r.text(),e(t).find("img").first().attr("alt")];return Al(n.find(s=>Al(s))||"")}function sMe(e=""){let t=er(e),r=[],n=new Set;return t(".posts-item, article.post, article").each((s,i)=>{let a=t(i).find("a[href]").toArray(),o=a.map(f=>t(f).attr("href")).find(f=>V3(f)),c=V3(o);if(!c||n.has(c))return;let u=t(a.find(f=>V3(t(f).attr("href")))||[]),l=hMn(t,i,u);if(!l)return;n.add(c);let d=Al(t(i).find(".item-meta, .item-tags, .posts-text, .meta-right, .post-meta").first().text()).slice(0,80);r.push({vod_id:c,vod_name:l,vod_pic:fMn(t,i),vod_remarks:d})}),r}function pMn(e=""){return!!er(String(e||""))(".next-page a[href], a.next.page-numbers[href]").first().attr("href")}function OQt(e,t=[],r=""){let n=pMn(r),s=Array.isArray(t)?t.length:0,i=Math.max(0,(e-1)*cX),a=s===0&&!n?0:n?Math.max(i+s+1,e*cX+1):i+s;return{page:e,pagecount:n?e+1:e,limit:cX,total:a,list:t,count:s}}function mMn(e,t,r={}){let n=nMe.some(l=>l.type_id===e)?e:"film",s=String(r.area||"").trim(),i=new Set((eMe[n]||[]).map(l=>l[1])),a=s&&i.has(s)?`${n}/${s}`:n,o=t>1?`/page/${t}`:"",c=String(r.orderby||"").trim(),u=["views","comment_count","like","modified"].includes(c)?`?orderby=${encodeURIComponent(c)}`:"";return`/category/${a}${o}${u}`}function gMn(){let e={};for(let t of nMe){let r=[];eMe[t.type_id]&&r.push({key:"area",name:"\u5206\u7C7B",value:eMe[t.type_id].map(([n,s])=>({n,v:s}))}),r.push({key:"orderby",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0",v:""},{n:"\u6D4F\u89C8",v:"views"},{n:"\u8BC4\u8BBA",v:"comment_count"},{n:"\u70B9\u8D5E",v:"like"},{n:"\u6700\u8FD1\u4FEE\u6539",v:"modified"}]}),e[t.type_id]=r}return e}async function _Mn(e){let t="home",r=lX.get(t);if(r)return r;let n=await K3(e,"/"),s={class:nMe,filters:gMn(),list:sMe(n)};return lX.set(t,s),s}async function AMn(e){let t=dX(e),r=xQt(t.page),n=mMn(String(t.id||"film"),r,cMn(e)),s=`category:${n}`,i=lX.get(s);if(i)return i;let a=await K3(e,n,`${gN}/`,{allowNotFound:!0}),o=OQt(r,sMe(a),a);return lX.set(s,o),o}function EMn(e){let t=Al(e(".article-content, .wp-posts-content").first().text()),r=n=>t.match(new RegExp(`${n}\\s*[\uFF1A:]\\s*([^\u2B50\u{1F4C5}\u{1F30D}\u{1F3F7}\u{1F4FA}\u{1F3AC}\u{1F465}\u{1F4DD}\u{1F4E5}]+)`))?.[1]?.trim()||"";return{content:t,year:t.match(/(?:\u65e5\u671f|\u5e74\u4efd)\s*[::]\s*(\d{4})/)?.[1]||"",area:r("(?:\u51FA\u54C1\u56FD\u5BB6|\u5730\u533A)"),director:r("(?:\u4E3B\u521B|\u5BFC\u6F14)"),actor:r("(?:\u4E3B\u8981\u6F14\u5458|\u6F14\u5458)")}}function DQt(e=""){let t=er(e),r=[];t(".article-content a[href], .wp-posts-content a[href]").each((s,i)=>r.push(t(i).attr("href")||"")),r.push(t(".article-content, .wp-posts-content").first().text());let n=r.flatMap(s=>String(s||"").match(oMn)||[]);return[...new Set(n.map(s=>s.replace(/[)\]}>.,;,。;]+$/g,"")))]}function PQt(e=""){return V3(e).match(/\/(\d+)\.html$/)?.[1]||""}function yMn(e){if(e&&typeof e=="object")return e;try{return JSON.parse(String(e||""))}catch{return{error:!0,msg:Al(e)||"\u8FD4\u56DE\u683C\u5F0F\u65E0\u6548"}}}function iMe(e=""){let t=String(e||"").split(";").map(r=>r.trim()).find(r=>/^wordpress_logged_in_/i.test(r));return IQt.default.createHash("sha256").update(t||String(e||"")).digest("hex").slice(0,16)}async function vMn(e,t,r){let n=iMe(r);return!!await e?.server?.db?.getObjectDefault(`/guangyaqsxy/replied/${n}/${t}`,0)}async function SMn(e,t,r){if(!e?.server?.db?.push)return;let n=iMe(r);await e.server.db.push(`/guangyaqsxy/replied/${n}/${t}`,Date.now())}async function TMn(e,t,r,n){let s=PQt(t);if(!s)throw new Error("\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A\u672A\u8BC6\u522B\u6587\u7AE0 ID");if(!n.cookie)throw new Error("\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u89E3\u9501\uFF0C\u4F46\u5C1A\u672A\u914D\u7F6E Cookie");if(!NQt(r))throw new Error("Cookie \u5DF2\u5931\u6548\u6216\u672A\u767B\u5F55\uFF0C\u65E0\u6CD5\u81EA\u52A8\u56DE\u590D");if(await vMn(e,s,n.cookie))return{replied:!1,reason:"already-replied",approved:null};let i=er(String(r||"")),a=i("#commentform").first();if(!a.length)throw new Error("\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u89E3\u9501\uFF0C\u4F46\u672A\u627E\u5230\u8BC4\u8BBA\u8868\u5355");let o=Al(n.replyMessage||uX)||uX;if(o.length<4)throw new Error("\u81EA\u52A8\u56DE\u590D\u5185\u5BB9\u81F3\u5C11\u9700\u8981 4 \u4E2A\u5B57\u7B26");let c={action:"submit_comment",comment:o,comment_post_ID:s,comment_parent:"0"};a.find("input[name], textarea[name], select[name]").each((h,p)=>{let m=String(i(p).attr("name")||"").trim();!m||Object.prototype.hasOwnProperty.call(c,m)||(c[m]=String(i(p).val()??i(p).attr("value")??""))});let u=iMn-(Date.now()-bQt);u>0&&await zt(u);let l=await CQt.post(`${gN}/wp-admin/admin-ajax.php`,new URLSearchParams(c).toString(),{headers:{"User-Agent":rMe,Referer:t,Origin:gN,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Cookie:n.cookie}});if(bQt=Date.now(),await wQt(e,n.cookie,l),l.status>=400)throw new Error(`\u81EA\u52A8\u56DE\u590D HTTP ${l.status}`);let d=yMn(l.data);if(d?.error===!0||d?.error!=null&&String(d.error)!==""&&String(d.error)!=="0"||!d?.html)throw new Error(`\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A${Al(d?.msg||d?.message||"\u7AD9\u70B9\u672A\u8FD4\u56DE\u8BC4\u8BBA\u5185\u5BB9")}`);return await SMn(e,s,n.cookie),{replied:!0,reason:"success",approved:Number(d?.comment?.comment_approved??1)>0}}async function bMn(e,t,r,n){if(!j3(r))return{replied:!1,reason:"not-required",approved:null};if(!n.autoReply)return{replied:!1,reason:"disabled",approved:null};let s=PQt(t);if(!s)throw new Error("\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A\u672A\u8BC6\u522B\u6587\u7AE0 ID");let i=`${iMe(n.cookie)}:${s}`;if(oX.has(i))return oX.get(i);let a=TMn(e,t,r,n).finally(()=>oX.delete(i));return oX.set(i,a),a}function IMn(e,t){let r=new URL(e);return r.searchParams.set("_t",`${Date.now()}-${t}`),r.toString()}async function RMn(e,t,r=!0){let n="",s=[],i=r?aMn:[0];for(let a=0;a0&&await zt(i[a]),n=await K3(e,IMn(t,a),t,{noCache:!0}),s=DQt(n),!(s.length>0||!j3(n)));a+=1);return{html:n,shareLinks:s}}async function CMn(e){let t=dX(e).id,r=(Array.isArray(t)?t:[t]).map(V3).filter(Boolean),n=[];for(let s of r){let i=await tMe(e),a=await K3(e,s,s);i=await tMe(e);let o=DQt(a),c={replied:!1,reason:"not-required",approved:null},u="";if(o.length===0&&j3(a))try{c=await bMn(e,s,a,i),(c.replied||c.reason==="already-replied")&&({html:a,shareLinks:o}=await RMn(e,s,!0))}catch(m){u=Al(m?.message||m)}let l=er(a),d=Al(l("h1").first().text())||Al(l("title").text()).replace(/-\u5149\u9e2d[\s\S]*$/,""),f=l(".article-content, .wp-posts-content").first(),h=EMn(l),p={vod_id:s,vod_name:d,vod_pic:fX(f.find("img").first().attr("data-src")||f.find("img").first().attr("src")||l('meta[property="og:image"]').attr("content")||""),vod_content:h.content,vod_year:h.year,vod_area:h.area,vod_actor:h.actor,vod_director:h.director};if(o.length>0){let m=await Bs(o,e).catch(_=>(console.warn(`[${RQt}] \u7F51\u76D8\u8BE6\u60C5\u89E3\u6790\u5931\u8D25:`,_?.message||_),null));m?.froms&&m?.urls?(p.vod_play_from=m.froms,p.vod_play_url=m.urls,Array.isArray(m.links)&&m.links.length&&(p.vod_links=m.links),c.replied&&(p.vod_remarks="\u5DF2\u81EA\u52A8\u56DE\u590D\u5E76\u89E3\u9501\u8D44\u6E90")):p.vod_content=`${p.vod_content} - -\u5DF2\u63D0\u53D6\u5149\u9E2D\u7F51\u76D8\u94FE\u63A5\uFF0C\u4F46\u5F53\u524D\u7F51\u76D8\u914D\u7F6E\u672A\u8FD4\u56DE\u53EF\u64AD\u653E\u6587\u4EF6\u3002`.trim()}else if(j3(a)){let m="\u5F53\u524D\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u540E\u5237\u65B0\u89E3\u9501\u8D44\u6E90\u3002";u?m=`\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A${u}`:c.reason==="disabled"?m="\u5F53\u524D\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u89E3\u9501\uFF0C\u4F46\u7AD9\u6E90\u914D\u7F6E\u4E2D\u5DF2\u5173\u95ED\u81EA\u52A8\u56DE\u590D\u3002":c.reason==="already-replied"?m="\u8BE5\u6587\u7AE0\u5DF2\u63D0\u4EA4\u8FC7\u81EA\u52A8\u56DE\u590D\uFF0C\u4F46\u7AD9\u70B9\u4ECD\u672A\u8FD4\u56DE\u5DF2\u89E3\u9501\u8D44\u6E90\uFF0C\u53EF\u80FD\u6B63\u5728\u5BA1\u6838\u6216\u7F13\u5B58\u4E2D\u3002":c.replied&&c.approved===!1?m="\u81EA\u52A8\u56DE\u590D\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u8BC4\u8BBA\u6B63\u5728\u5BA1\u6838\uFF0C\u5BA1\u6838\u524D\u8D44\u6E90\u4ECD\u4E0D\u53EF\u89C1\u3002":c.replied&&(m="\u81EA\u52A8\u56DE\u590D\u5DF2\u6210\u529F\uFF0C\u4F46\u8D44\u6E90\u9875\u6682\u672A\u5237\u65B0\u51FA\u94FE\u63A5\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002"),p.vod_remarks="\u9700\u8BC4\u8BBA\u89E3\u9501",p.vod_content=`${p.vod_content} - -${m}`.trim()}else!NQt(a)||dMn(a)?p.vod_content=`${p.vod_content} - -\u8D44\u6E90\u94FE\u63A5\u672A\u89E3\u9501\uFF0C\u8BF7\u5728\u7AD9\u6E90\u914D\u7F6E\u4E2D\u586B\u5199\u6709\u6548 Cookie\u3002`.trim():p.vod_content=`${p.vod_content} - -\u6B63\u6587\u672A\u63D0\u53D6\u5230\u5149\u9E2D\u7F51\u76D8\u5206\u4EAB\u94FE\u63A5\u3002`.trim();n.push(p)}return{list:n}}async function xMn(e){let t=dX(e),r=xQt(t.page),n=Al(t.wd);if(!n)return{page:r,pagecount:r,limit:cX,total:0,list:[],count:0};let s=r>1?`/page/${r}/?s=${encodeURIComponent(n)}`:`/?s=${encodeURIComponent(n)}`,i=await K3(e,s,`${gN}/`,{allowNotFound:!0});return OQt(r,sMe(i),i)}function LQt(){return{meta:{key:RQt,name:nMn,type:3},api:async e=>{e.post("/init",Wi),e.post("/home",_Mn),e.post("/category",AMn),e.post("/detail",CMn),e.post("/play",Zs),e.post("/search",xMn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)},check:async()=>!0}}var IQt,RQt,nMn,gN,rMe,cX,sMn,iMn,aMn,uX,CQt,lX,oX,bQt,oMn,nMe,eMe,kQt=ae(()=>{Pr();IQt=Ne(require("crypto"),1);Qd();Hr();su();ws();sa();RQt="guangyaqsxy",nMn="\u2601\uFE0F \u5149\u9E2D\u81FB\u5F71\u793E",gN="https://guangya.qsxy.top",rMe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",cX=12,sMn=30*1e3,iMn=15*1e3,aMn=[800,1200,2e3,3e3],uX="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86",CQt=ve.create({timeout:2e4,validateStatus:()=>!0,httpAgent:Zn().httpAgent,httpsAgent:Zn().httpsAgent,headers:{"User-Agent":rMe,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),lX=new gt(160,sMn),oX=new Map,bQt=0,oMn=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、]*)?(?:#[^\s<>"',。;、]*)?/ig,nMe=[{type_id:"film",type_name:"\u7535\u5F71"},{type_id:"show",type_name:"\u5267\u96C6"},{type_id:"animation",type_name:"\u52A8\u6F2B"},{type_id:"reality",type_name:"\u7EFC\u827A"},{type_id:"documentary",type_name:"\u7EAA\u5F55\u7247"},{type_id:"music",type_name:"\u97F3\u4E50"},{type_id:"toolware",type_name:"\u5DE5\u5177\u8D44\u6599"}],eMe={film:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic"],["\u6B27\u7F8E","euramerican"],["\u65E5\u97E9","japankorean"],["\u5176\u4ED6","other"]],show:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-show"],["\u6B27\u7F8E","euramerican-show"],["\u65E5\u97E9","japankorean-show"],["\u5176\u4ED6","other-show"]],animation:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-animation"],["\u6B27\u7F8E","euramerican-animation"],["\u65E5\u97E9","japankorean-animation"],["\u5176\u4ED6","other-animation"]],reality:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-reality"],["\u5176\u4ED6","other-reality"]],documentary:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-documentary"],["\u5176\u4ED6","other-documentary"]],toolware:[["\u5168\u90E8",""],["\u8F6F\u4EF6","software"],["\u5C0F\u8BF4","fiction"],["\u6F2B\u753B","comics"],["\u6709\u58F0\u4E66","audiobooks"],["\u5B66\u4E60\u8D44\u6599","resources"]]}});function UQt(e=""){return String(e||"").trim().replace(wMn,"")}function DMn(e=""){let t=UQt(e),r=t.match(/([?&](?:pwd|password|passcode)=)([a-zA-Z0-9]{4,8})/i);return r?{cleanUrl:t,password:r[2]||""}:{cleanUrl:t,password:""}}function PMn(e,t=""){let r=UQt(e),{cleanUrl:n,password:s}=DMn(r),i=s||MMn(t,n),a=n;return i&&/pan\.baidu\.com\/s\//i.test(n)&&!/[?&]pwd=/i.test(n)&&(a=`${n}${n.includes("?")?"&":"?"}pwd=${i}`),{rawUrl:e,cleanUrl:a,password:i,type:LMn(a)}}function LMn(e){let t=String(e||"").toLowerCase();return t.startsWith("ed2k:")?"ed2k":t.startsWith("magnet:")?"magnet":t.includes("pan.baidu.com")?"baidu":t.includes("pan.quark.cn")||t.includes("pan.qoark.cn")?"quark":t.includes("alipan.com")||t.includes("aliyundrive.com")?"ali":t.includes("cloud.189.cn")?"tianyi":t.includes("drive.uc.cn")?"uc":t.includes("yun.139.com")||t.includes("caiyun.139.com")||t.includes("caiyun.feixin.10086.cn")?"yidong":t.includes("115.com")||t.includes("115cdn.com")||t.includes("anxia.com")?"115":t.includes("123684.")||t.includes("123685.")||t.includes("123865.")||t.includes("123912.")||t.includes("123pan.")||t.includes("123592.")?"123":t.includes("pan.xunlei.com")?"xunlei":t.includes("guangyapan.com")?"guangya":null}function MMn(e,t=""){let r=String(e||""),n=String(t||""),s=n.match(BQt);if(s?.[1])return s[1];let i=r.indexOf(n);if(i>=0){let u=r.slice(i,i+n.length+40).match(BQt);if(u?.[1])return u[1]}let a=FQt(r).length,o=[...r.matchAll(NMn)].map(c=>c[1]).filter(Boolean);return a<=1&&o.length===1?o[0]:""}function FQt(e=""){let t=[];for(let r of OMn){let n=e.match(r)||[];t.push(...n)}return t}function kMn(e=[]){let t=new Map;for(let r of e){if(!r?.cleanUrl||!r.type)continue;if(!t.has(r.cleanUrl)){t.set(r.cleanUrl,r);continue}!t.get(r.cleanUrl).password&&r.password&&t.set(r.cleanUrl,r)}return Array.from(t.values())}function _N(e="",t=[]){let r=Array.isArray(t)?t.map(i=>typeof i=="string"?i:i?.href).filter(Boolean):[],n=FQt(e),s=[...r,...n].map(i=>PMn(i,e)).filter(i=>!!i.type);return kMn(s).map(i=>({...i,url:i.cleanUrl}))}var wMn,BQt,NMn,OMn,aMe=ae(()=>{wMn=/[\u{1F300}-\u{1FAFF}\u2600-\u27BF。,、;;!!??)\)】\]」』"'`]+$/gu,BQt=/(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ]\s*([a-zA-Z0-9]{4,8})/i,NMn=/(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ]\s*([a-zA-Z0-9]{4,8})/gi,OMn=[/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9_-]+(?:\/folder\/[a-zA-Z0-9_-]+)?/gi,/https?:\/\/(?:pan\.quark\.cn|pan\.qoark\.cn)\/s\/[a-zA-Z0-9_-]+/gi,/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/gi,/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+|web\/share\?code=[^&\s]+)/gi,/https?:\/\/(?:yun\.139\.com\/shareweb\/#\/w\/i\/|caiyun\.139\.com\/(?:m\/i\?|w\/i\/))[^\s]+/gi,/https?:\/\/(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]+)?/gi,/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/gi,/https?:\/\/pan\.xunlei\.com\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/gi,/magnet:\?xt=urn:[^\s]+/gi,/ed2k:\/\/\|file\|[^\s]+/gi]});function Ef(e=""){return String(e||"").replace(BMn,"").replace(FMn,"").replace(oMe,"").replace(UMn,"").replace(/[::||\-\s]+$/,"").replace(/[((【\[].*$/,"").replace(/\s+/g," ").trim()}function By(e=""){let t=Ef(e);return!(!t||/^[·•\-||]+$/.test(t)||/^(?:描述|简介|大小|标签|via|匿名)$/i.test(t)||G3.test(t))}function $Mn(e=""){let r=String(e||"").split(` -`).map(n=>Ef(n)).filter(n=>By(n)).filter(n=>!oMe.test(n)).filter(n=>!/pan\.|alipan|aliyundrive|drive\.uc|cloud\.189|123pan|115\.com|xunlei|guangyapan/i.test(n));return r[0]?r[0]:""}function qMn(e=""){let t=e.search(/https?:\/\/|magnet:\?|ed2k:\/\//i);return t<=0?"":Ef(e.slice(0,t))}function HMn(e=""){let t=String(e||"").replace(/\s+/g," ").trim();if(!t)return"";let r=t.split(/[\n||]/).map(n=>Ef(n)).filter(n=>By(n)).filter(n=>!/提取码|访问码|密码|口令|code|pwd/i.test(n)).filter(n=>!/pan\.|alipan|aliyundrive|drive\.uc|cloud\.189|123pan|115\.com|xunlei|guangyapan/i.test(n));return r[r.length-1]||""}function VMn(e=[],t=-1,r=""){for(let n=t;n>=0;n--){let s=String(e[n]||""),i=Ef(s);if(By(i)&&!oMe.test(s)&&!G3.test(i))return i}return Ef(r)}function jMn(e="",t=[],r=""){let n=String(e||"").split(` -`),s={},i=Ef(r),a=By(i);if(!t.map(d=>d.cleanUrl||d.url).filter(Boolean).length)return s;let c=[];for(let d=0;df.includes(y.rawUrl||"")||f.includes(y.cleanUrl||y.url||""));if(!h.length)continue;let p=qMn(f),m=p?"":VMn(n,d-1,""),_=Ef(p||m||""),g=By(_)?_:"";h.forEach(y=>{let A=y.cleanUrl||y.url;A&&(g&&(s[A]=g),g&&g!==i&&!G3.test(g)&&c.push(g))})}if(!(Array.from(new Set(c.filter(Boolean))).length>=2)&&a){for(let d of t){let f=d.cleanUrl||d.url;f&&(s[f]=i)}return s}for(let d of t){let f=d.cleanUrl||d.url;if(!f||s[f])continue;let h=d.rawUrl||f,p=String(e||"").replace(/\n+/g,` -`),m=p.indexOf(h);if(m>=0){let _=p.slice(Math.max(0,m-120),m),g=HMn(_);if(By(g)&&!G3.test(g)){s[f]=g;continue}}a&&(s[f]=i)}return s}function KMn(e={}){return Object.values(e||{}).some(t=>{let r=Ef(t||"");return r?G3.test(r)||/^(?:链接|描述|简介|大小|标签|via)$/i.test(r):!0})}function GMn(e={},t=""){let r=Ef(t);if(!By(r))return!1;let n=Object.values(e||{}).map(i=>Ef(i)).filter(Boolean);if(!n.length||KMn(e))return!0;let s=Array.from(new Set(n));return s.length===1&&s[0]===r||s.length<=1}function AN(e="",t={}){let r=_N(e,t.anchors||[]),n=$Mn(e),s=jMn(e,r,n);if(GMn(s,n)){let i=Ef(n);if(By(i)){s={};for(let a of r){let o=a.cleanUrl||a.url;o&&(s[o]=i)}}}return{messageTitle:n,linkTitleMap:s,rawLinks:r.map(i=>i.rawUrl||i.cleanUrl),normalizedLinks:r}}var BMn,UMn,oMe,FMn,G3,$Qt=ae(()=>{aMe();BMn=/^(?:名称|标题|片名|资源名|剧名|电影名|夸克|阿里|百度|天翼|UC|115|123云盘|123盘|迅雷|光鸭|网盘)\s*[::||\-]?\s*/i,UMn=/[\u{1F300}-\u{1FAFF}\u2600-\u27BF]+$/gu,oMe=/(https?:\/\/|magnet:\?|ed2k:\/\/)/i,FMn=/\s*(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ].*$/i,G3=/^(?:描述|简介|大小|标签|via|更新|类型|地区|年份|导演|主演|链接)\b/i});function zMn(e,t=""){return e==null?t:String(e)}function YMn(e,t=z3.count){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>0?r:t}function QMn(e,t=z3.enableImage){if(typeof e=="boolean")return e;if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?!0:["0","false","no","off","n"].includes(r)?!1:t}function qQt(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function WMn(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let t={};for(let[r,n]of Object.entries(e)){let s=String(r||"").trim();s&&(t[s]=String(n||"").trim())}return t}function uMe(e={}){let t=e&&typeof e=="object"?e:{};return{url:zMn(t.url,z3.url),count:YMn(t.count,z3.count),enableImage:QMn(t.enableImage,z3.enableImage),homeChannelUsername:qQt(t.homeChannelUsername),channelUsername:qQt(t.channelUsername),channelRemark:WMn(t.channelRemark)}}async function mX(e){e.get("/config",async(t,r)=>{try{let n=await Hb(t.server);r.send({code:0,data:n})}catch(n){r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:uMe({})})}}),e.put("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault(cMe,{}),s=uMe({...n,...t.body||{}});await t.server.db.push(cMe,s),r.send({code:0,data:s,message:"TGChannel\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var cMe,z3,Hb,Y3,lMe,Q3,dMe,hX,pX,gX=ae(()=>{cMe="/tgchannel",z3={url:"",count:20,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}};Hb=async e=>{let t=await e.db.getObjectDefault(cMe,{});return uMe(t)},Y3=async e=>(await Hb(e)).url,lMe=async e=>(await Hb(e)).count,Q3=async e=>(await Hb(e)).enableImage,dMe=async e=>(await Hb(e)).channelUsername,hX=async e=>(await Hb(e)).homeChannelUsername,pX=async e=>(await Hb(e)).channelRemark});var HQt=ae(()=>{gX();gX()});var fWt={};Ft(fWt,{default:()=>Lkn});function EX(e){let t=String(e&&e.attribs&&e.attribs.class||"");return/tgme_widget_message_inline_button/.test(t)}function dkn(e){if(!e||e.response)return!1;if(lkn.has(e.code))return!0;let t=String(e.message||"");return/before secure TLS connection was established|socket hang up|network socket disconnected/i.test(t)}function fkn(e){try{return new URL(e).hostname}catch{return"unknown-host"}}async function vX(e,t={}){let r=fkn(e),n;for(let s=0;s<4;s++)try{if(s===0)return await jQt.get(e,t);await new Promise(o=>setTimeout(o,250*s)),console.warn(`\u8BBF\u95EE ${r} \u77AC\u65F6\u7F51\u7EDC\u5931\u8D25\uFF0CIPv4 \u65B0\u8FDE\u63A5\u91CD\u8BD5 ${s}/3:`,n.code||n.message);let i=new GQt.default.Agent({keepAlive:!1,family:4}),a=new zQt.default.Agent({keepAlive:!1,family:4});return await jQt.get(e,{...t,proxy:!1,httpAgent:i,httpsAgent:a,headers:{...t.headers||{},Connection:"close"}})}catch(i){if(n=i,!dkn(i))throw i}throw n}async function W3(e,t,r,n,s){let i=e.get(r);return i!==null?i:Un("tgchannel",t,r,async()=>{let a=await s();return a?._skipCache||e.set(r,a),a},{timeout:3e4})}function hMe(e){return String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function mkn(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}async function XQt(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let c=s++;if(c>=e.length)break;n[c]=await r(e[c],c)}},a=Math.min(t,e.length),o=new Array(a);for(let c=0;cs.validator(e))||null;return KQt.set(e,n),n}function gkn(e){let t=e.attr("style");if(!t)return;let r=/background-image:url\('([^']+)'\)/.exec(t);if(r&&r.length>1)return r[1]}function JQt(e){return AN(String(e||"")).messageTitle||String(e||"").trim()}function ZQt(e=[]){return Array.from(e||[]).map(t=>({href:(t&&t.attribs?t.attribs.href:"")||"",text:String(t&&t.children&&t.children.map?t.children.map(r=>r&&r.data||"").join(""):"").trim(),cls:String((t&&t.attribs?t.attribs.class:"")||"")})).filter(t=>t.href)}function eWt(e){return e.find("a").toArray()}function tWt(e=""){return skn.test(String(e||""))}function AMe(e=""){return ikn.test(String(e||""))}function rWt(e=""){let t=String(e||"");return akn.test(t)||okn.test(t)}function _kn(e=""){let t=String(e||"").match(nkn)||[];return Array.from(new Set(t.filter(function(r){return rWt(r)})))}function nWt(e=[]){return ZQt(e).map(t=>t.href)}function sWt(e=""){return String(e||"").trim().replace(/^[^A-Za-z0-9\u4e00-\u9fa5]+/g,"")}function _X(e=""){return String(e||"").toLowerCase().replace(/第\s*\d+\s*[季部集期话篇]/g," ").replace(/[\s\-—_::·•,.,。!!??'"“”‘’()()\[\]【】]/g,"").trim()}function Akn(e,t){let r=_X(t);if(!r)return!0;let n=String(e?.parsed?.messageTitle||"").trim(),s=String(e?.title||"").trim(),i=String(e?.description||"").trim(),a=_X(n),o=_X(s),c=_X(i);return a?a.includes(r):o?o.includes(r):!!(c&&c.includes(r))}function Ekn(e={}){let t=String(e.href||""),r=String(e.text||"").trim(),n=String(e.cls||""),s=sWt(r);return!t||/^\?q=/.test(t)?!0:ckn.test(t)?!(EX({attribs:{class:n}})&&WQt.test(s)):!!(s&&ukn.test(s)||!EX({attribs:{class:n}})&&!_N("",[t]).length)}function iWt(e="",t=[]){let r=ZQt(t).filter(u=>!Ekn(u)),n=r.map(u=>u.href),s=_N(String(e||""),n).map(u=>u.cleanUrl),i=r.filter(u=>EX({attribs:{class:u.cls}})&&tWt(u.href)).map(u=>u.href),a=r.map(u=>u.href).filter(u=>AMe(u)),o=r.filter(u=>EX({attribs:{class:u.cls}})&&WQt.test(sWt(u.text))&&rWt(u.href)).map(u=>u.href),c=_kn(e);return Array.from(new Set([].concat(s,i,a,o,c)))}function aWt(e="",t=[]){return iWt(e,t)}async function oWt(e,t=!0){let r=`${e}::${t?1:0}`;return W3(hkn,"parse",r,YQt,async()=>{try{let n=await vX(e),s=er(n.data);s("br").replaceWith(` -`);let i=s(".tgme_widget_message"),a=Co(),o=[],c=0,u=0;for(let l=0;lT.cleanUrl).filter(T=>_Me(T,a)),I=aWt(_,y);I.length&&o.push({id:I.join("|"),title:v,description:g,cover:m,messageId:h,panLinks:b,parsed:E})}return o._blockCount=i.length,o._newestMessageId=c,o._oldestMessageId=u,o}catch(n){console.error("\u89E3\u6790\u9891\u9053HTML\u5931\u8D25:",n.message);let s=[];return s._skipCache=!0,s}})}async function cWt(e,t=""){let r=`${e}::textfile`;return W3(gMe,"parse",r,yX,async()=>{try{let n=await vX(e,{responseType:"text"}),s=typeof n.data=="string"?n.data:String(n.data||""),i=_N(s,[]).map(a=>a.cleanUrl);return{title:t,description:s,cover:void 0,links:Array.from(new Set(i)),parsed:AN(s)}}catch(n){return console.error("\u89E3\u6790\u6587\u672C\u8D44\u6E90\u6587\u4EF6\u5931\u8D25:",n.message),{title:t,description:"",cover:void 0,links:[],parsed:null}}})}async function vkn(e,t=""){let r=`${e}::telegraph`;return W3(gMe,"parse",r,yX,async()=>{try{let n=await vX(e),s=er(n.data),i=s("h1").first().text().trim()||s('meta[property="og:title"]').attr("content")||t,a=s(".tl_article").first().length?s(".tl_article").first():s.root(),o=a.text()||"",u=iWt(o,a.find("a").toArray());return u.length===1&&AMe(u[0])&&(u=(await cWt(u[0],i)).links||[]),{title:i,description:o,cover:s('meta[property="og:image"]').attr("content")||void 0,links:u,parsed:AN(o)}}catch(n){return console.error("\u89E3\u6790Telegraph\u5931\u8D25:",n.message),{title:t,description:"",cover:void 0,links:[],parsed:null}}})}async function Skn(e,t=!0){let r=`${e}::${t?1:0}`;return W3(gMe,"parse",r,yX,async()=>{try{let n=await vX(e),s=er(n.data),i=s('meta[property="og:description"]').attr("content")||"",a=t?s('meta[property="og:image"]').attr("content"):void 0,o=s(".tgme_widget_message_text").first().text()||i,c=eWt(s(".tgme_widget_message").first().length?s(".tgme_widget_message").first():s.root()),u=nWt(c),l=AN(o||i,{anchors:u}),d=aWt(o||i,c);return{title:l.messageTitle||JQt(o||i),description:o||i,cover:a,links:d,parsed:l}}catch(n){return console.error("\u89E3\u6790\u6D88\u606FHTML\u5931\u8D25:",n.message),{title:"",description:"",cover:void 0,links:[]}}})}async function Tkn(e,t={},r=0){let n=String(e||"").trim(),s=t.url,i=t.enableImage,a=t.fallbackTitle||"";if(!n||r>3)return{title:a,parsed:null,cover:void 0,links:n?[n]:[]};if(ykn(n)){let o=n.replace(/^https?:\/\/t\.me/i,s),c=await Skn(o,i),u=Array.isArray(c.links)?c.links.filter(Boolean):[];if(!u.length||u.length===1&&u[0]===n)return{title:c.title||a,parsed:c.parsed||null,cover:c.cover,links:[]};let l=await pMe(u,{url:s,enableImage:i,fallbackTitle:c.title||a},r+1);return{title:l.title||c.title||a,parsed:l.parsed||c.parsed||null,cover:l.cover||c.cover,links:l.links}}if(tWt(n)){let o=await vkn(n,a),c=Array.isArray(o.links)?o.links.filter(Boolean):[];if(!c.length||c.length===1&&c[0]===n)return{title:o.title||a,parsed:o.parsed||null,cover:o.cover,links:[]};let u=await pMe(c,{url:s,enableImage:i,fallbackTitle:o.title||a},r+1);return{title:u.title||o.title||a,parsed:u.parsed||o.parsed||null,cover:u.cover||o.cover,links:u.links}}if(AMe(n)){let o=await cWt(n,a);return{title:o.title||a,parsed:o.parsed||null,cover:o.cover,links:Array.isArray(o.links)?o.links.filter(Boolean):[]}}return{title:a,parsed:null,cover:void 0,links:[n]}}async function pMe(e=[],t={},r=0){let n=Array.isArray(e)?e:[],s=await Promise.all(n.filter(Boolean).map(function(o){return Tkn(o,t,r)})),i=Array.from(new Set([].concat.apply([],s.map(function(o){return o.links||[]})).filter(Boolean))),a=null;for(let o=0;o{let c=i[o]&&i[o].trim()||o;return{type_id:o,type_name:c}})}}catch(n){console.error("home \u51FD\u6570\u9519\u8BEF:",n);let s={class:[]};return dn(t,s,Tt.semiStatic),s}}function uWt(e){return AX[e]||(AX[e]={1:void 0}),AX[e]}function xkn(e,t,r){let n=r?`${t.includes("?")?"&":"?"}before=${r}`:"";return`${e}/s/${t}${n}`}function wkn(e){let t=Number(e&&e._oldestMessageId)||0;return t>1?t:void 0}async function lWt(e,t,r,n,s=tkn){let i=r,a=[],o,c=0;for(;c0||!o||o===i));)i=o;return{beforeId:i,data:a,nextBeforeId:o,scanned:c}}async function Nkn(e,t,r,n){if(t<=1)return;let s=uWt(e);if(Object.prototype.hasOwnProperty.call(s,t))return s[t];let i=1;Object.keys(s).forEach(o=>{let c=Number.parseInt(o,10);Number.isFinite(c)&&c>i&&c0){s===1&&(Rkn[n]=o[o.length-1].messageId),o.reverse();let l=Co(),d=o.map(f=>{let h;if(f.panLinks.length){let p=_Me(f.panLinks[0],l);h=p?dWt(e,p.pic):void 0}return h||(h=fMe),{vod_name:f.title,vod_id:JSON.stringify({links:f.id,name:f.title,parsed:f.parsed,rawData:f,vod_pic:f.cover||h,vod_remarks:f.parsed?.channelName||f.parsed?.remark||""}),vod_pic:f.cover||h,vod_remarks:f.parsed?.channelName||f.parsed?.remark||"",rawData:f}});return{page:s,pagecount:c&&c!==i?s+1:s,list:d}}else return{page:s,pagecount:c&&c!==i?s+1:s,list:[]}}catch(i){return console.error("category \u9519\u8BEF:",i),{page:s,pagecount:1,list:[]}}}async function Dkn(e,t){try{let[r,n]=await Promise.all([Y3(e.server),Q3(e.server)]),s=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await XQt(s,ZMn,async a=>{try{let o=String(a||""),c=o,u=o;try{let y=JSON.parse(o);c=y.links,u=y.name||y.links}catch{c=o,u=o}let l=String(c||"").split("|").filter(Boolean),d=null;try{let y=JSON.parse(o);d=y&&y.parsed||(y&&y.rawData?y.rawData.parsed:null)||null}catch{}d&&d.normalizedLinks&&d.normalizedLinks.length&&(l=d.normalizedLinks.map(y=>y.cleanUrl).filter(Boolean),u=d.messageTitle||u);let f=await pMe(l,{url:r,enableImage:n,fallbackTitle:u});f.links.length&&(l=f.links),f.parsed&&(d=f.parsed),f.title&&(u=f.title);let h="",p=d?.channelName||d?.remark||"";try{let y=JSON.parse(o);h=y?.vod_pic||"",p=y?.vod_remarks||p}catch{}let m={vod_id:o,vod_name:u,vod_pic:h||"",vod_remarks:p};if(!l.length)return m;let _=l.join("|"),g=await W3(pkn,"detail",_,QQt,async()=>Bs(l,e));return g&&(m.vod_play_from=g.froms,m.vod_play_url=g.urls,Array.isArray(g.links)&&g.links.length>0&&(m.vod_links=g.links)),m}catch{return{vod_id:String(a||""),vod_name:String(a||""),vod_remarks:""}}})}}catch(r){return console.error("detail \u51FD\u6570\u9519\u8BEF:",r),{list:[]}}}async function Pkn(e,t){try{let[r,n,s,i,a,o]=await Promise.all([lMe(e.server),dMe(e.server),hX(e.server),pX(e.server),Y3(e.server),Q3(e.server)]),c=Number.parseInt(r,10)||20,u=i||{},l=String(e.body.wd||"").trim(),d=Array.from(new Set([...hMe(s),...hMe(n)]));if(!l||d.length===0)return{page:1,pagecount:1,list:[]};let f=await XQt(d,ekn,async m=>oWt(`${a}/s/${m}?q=${encodeURIComponent(l)}`,o)),h=Co(),p=[];return f.forEach((m,_)=>{m&&m.length>0&&m.filter(g=>g&&g.panLinks&&g.panLinks.length).filter(g=>Akn(g,l)).slice(0,c).forEach(g=>{let y="",A;g.panLinks.forEach(v=>{let b=_Me(v,h);b&&(y+=y?`|${b.name}`:b.name),A||(A=b?dWt(e,b.pic):void 0)});let E=u[d[_]]&&u[d[_]].trim()||d[_];p.push({vod_id:JSON.stringify({links:g.id,name:g.title,parsed:g.parsed,rawData:g,vod_pic:g.cover||A||fMe,vod_remarks:`${y}:${E}`}),vod_name:g.title,vod_pic:g.cover||A||fMe,vod_remarks:`${y}:${E}`})})}),{page:1,pagecount:1,list:p}}catch(r){return console.error("search \u51FD\u6570\u9519\u8BEF:",r),{page:1,pagecount:1,list:[]}}}var GQt,zQt,fMe,XMn,mMe,JMn,YQt,yX,QQt,ZMn,ekn,tkn,rkn,nkn,skn,ikn,akn,okn,ckn,ukn,WQt,VQt,jQt,lkn,hkn,gMe,pkn,KQt,ykn,Rkn,Ckn,AX,Lkn,hWt=ae(()=>{su();Nn();$Qt();aMe();Pr();GQt=Ne(require("node:http"),1),zQt=Ne(require("node:https"),1);Hr();Qd();HQt();da();sa();fMe="https://telegram.org/img/apple-touch-icon.png",XMn=8e3,mMe=200,JMn=1e3,YQt=20*1e3,yX=30*1e3,QQt=45*1e3,ZMn=6,ekn=4,tkn=30,rkn=/t\.me\/[^/\s]+\/[^/\s]+/i,nkn=/https?:\/\/t\.me\/(?:c\/\d+\/\d+|[^/\s?#]+\/\d+(?:\?single)?)(?:\?[^\s]*)?/gi,skn=/^https?:\/\/(?:telegra\.ph|graph\.org)\//i,ikn=/^https?:\/\/[^\s]+\.(?:txt|text)(?:[?#].*)?$/i,akn=/^https?:\/\/t\.me\/c\/\d+\/\d+(?:\?.*)?$/i,okn=/^https?:\/\/t\.me\/[^/\s?#]+\/\d+(?:\?single)?(?:\?.*)?$/i,ckn=/(?:imdb\.com|movie\.douban\.com|content\.21cn\.com|t\.me)/i,ukn=/^(?:#.+|IMDb|豆瓣|评分|简介|介绍|预告|搜索|标签|资源搜索|查看热播|订阅直达)$/i,WQt=/(?:直达链接|点击下载|在线下载|点击获取(?:夸克|阿里云盘|百度|光鸭)?链接|查看资源|资源|网盘|天翼|夸克|阿里|百度|UC|115|123云盘|迅雷|光鸭|guangya|磁力|magnet)/i;VQt=Zn(),jQt=ve.create({timeout:XMn,httpAgent:VQt.httpAgent,httpsAgent:VQt.httpsAgent,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),lkn=new Set(["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN","ENETUNREACH","EHOSTUNREACH","ECONNREFUSED"]);hkn=new gt(mMe,YQt),gMe=new gt(mMe,yX),pkn=new gt(mMe,QQt),KQt=new gt(JMn,Number.POSITIVE_INFINITY);ykn=e=>rkn.test(e||"");Rkn={},Ckn={},AX={};Lkn={meta:{key:"tgchannel",name:"\u2601\uFE0F \u9891\u9053",type:3},api:async e=>{e.post("/init",bkn),e.post("/home",Ikn),e.post("/category",Okn),e.post("/detail",Dkn),e.post("/play",Zs),e.post("/search",Pkn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}}});var bWt={};Ft(bWt,{default:()=>p4n});function Ukn(){return ys.staticCache.classes||(ys.staticCache.classes=[{type_id:"",type_name:"\u5168\u90E8\u76F4\u64AD"},{type_id:"1",type_name:"\u7BEE\u7403\u76F4\u64AD"},{type_id:"8",type_name:"\u8DB3\u7403\u76F4\u64AD"},{type_id:"21",type_name:"\u5176\u4ED6\u76F4\u64AD"}]),ys.staticCache.classes}function Fkn(){return ys.staticCache.filters||(ys.staticCache.filters={1:[{key:"cateId",name:"\u7C7B\u578B",value:[{n:"NBA",v:"1"},{n:"CBA",v:"2"},{n:"\u7BEE\u7403\u7EFC\u5408",v:"4"},{n:"\u7EAC\u6765\u4F53\u80B2",v:"21"}]}],8:[{key:"cateId",name:"\u7C7B\u578B",value:[{n:"\u82F1\u8D85",v:"8"},{n:"\u897F\u7532",v:"9"},{n:"\u610F\u7532",v:"10"},{n:"\u6B27\u51A0",v:"12"},{n:"\u6B27\u8054",v:"13"},{n:"\u5FB7\u7532",v:"14"},{n:"\u6CD5\u7532",v:"15"},{n:"\u6B27\u56FD\u8054",v:"16"},{n:"\u8DB3\u603B\u676F",v:"27"},{n:"\u56FD\u738B\u676F",v:"33"},{n:"\u4E2D\u8D85",v:"7"},{n:"\u4E9A\u51A0",v:"11"},{n:"\u8DB3\u7403\u7EFC\u5408",v:"23"},{n:"\u6B27\u534F\u8054",v:"28"},{n:"\u7F8E\u804C\u8054",v:"26"}]}]}),ys.staticCache.filters}function $kn(){let e=(0,X3.default)().unix();if(e-ys.lastCleanup>Sr.cleanupInterval){for(let[t,r]of ys.cache.entries())e>r.expire&&ys.cache.delete(t);ys.lastCleanup=e}}function yWt(e){$kn();let t=ys.cache.get(e);return t?(0,X3.default)().unix()>=t.expire?(ys.cache.delete(e),null):t.data:null}function yMe(e,t,r=Sr.cacheTTL){if(ys.cache.size>=Sr.cacheMaxSize){let n=Math.min(50,ys.cache.size),s=0;for(let i of ys.cache.keys())if(ys.cache.delete(i),s++,s>=n)break}ys.cache.set(e,{data:t,expire:(0,X3.default)().unix()+r})}async function SX(e,t=Sr.retryTimes){let r=null;for(let n=0;n<=t;n++)try{return await e()}catch(s){if(r=s,n>=t)break;await zt(1e3*(n+1))}throw r}function qkn(e){if(!e||typeof e!="object"||Array.isArray(e))return JSON.stringify(e);let t=Object.entries(e).sort(([r],[n])=>r.localeCompare(n));return JSON.stringify(Object.fromEntries(t))}async function vWt(e,t,r){let n=Array.isArray(e)?e:[];if(n.length===0)return[];let s=Math.max(1,Math.min(t,n.length)),i=new Array(n.length),a=0,o=async()=>{for(;;){let c=a++;if(c>=n.length)return;i[c]=await r(n[c],c)}};return await Promise.all(Array.from({length:s},()=>o())),i}function SMe(e){let t=String(e||"").trim();try{let r=t.match(/[?&](?:url|liveUrl)=/i),n=r?t.slice(r.index+r[0].length):"";if(!n){let s=new URL(t);n=s.searchParams.get("url")||s.searchParams.get("liveUrl")||t}return n.includes("%")&&(n=decodeURIComponent(n)),n}catch{return t||e}}function Hkn(e){return`${EMe}${Buffer.from(JSON.stringify(e),"utf-8").toString("base64url")}`}function Vkn(e){let t=String(e||"").trim();if(!t.startsWith(EMe))return{url:t,lineName:"",sourceHost:"",wrapperUrl:t};try{let r=t.slice(EMe.length),n=JSON.parse(Buffer.from(r,"base64url").toString("utf-8")),s=String(n?.wrapperUrl||n?.url||"").trim();return{url:String(n?.url||"").trim()||s,lineName:String(n?.lineName||"").trim(),sourceHost:String(n?.sourceHost||"").trim(),wrapperUrl:s}}catch{return{url:t,lineName:"",sourceHost:"",wrapperUrl:t}}}function jkn(e){let t=String(e||"").trim();if(!t)return null;let r=[t.slice(6,-2),t.slice(6),t];for(let n of r)if(n)try{let s=Buffer.from(n,"base64").toString("utf-8");return JSON.parse(s)}catch{}return null}function mWt(e,t){let r=e.length,n=new Array(r&3?(r>>>2)+1:r>>>2).fill(0);for(let s=0;s>>2]|=e.charCodeAt(s)<<((s&3)<<3);return t&&n.push(r),n}function Gkn(e,t){let r=e.length<<2;if(t){let s=e[e.length-1];if(sr-4)return null;r=s}let n=[];for(let s of e)n.push(String.fromCharCode(s&255),String.fromCharCode(s>>>8&255),String.fromCharCode(s>>>16&255),String.fromCharCode(s>>>24&255));return n.join("").slice(0,r)}function gWt(e,t,r,n,s,i){return((r>>>5^t<<2)+(t>>>3^r<<4)^(e^t)+(i[n&3^s]^r))>>>0}function zkn(e,t=Kkn){let r=Buffer.from(String(e||""),"base64").toString("binary");if(!r)return"";let n=mWt(r,!1),s=mWt(t,!1);s.length<4&&(s=[...s,0,0,0,0].slice(0,4));let i=n.length;if(i<2)return r;let a=2654435769,c=Math.floor(6+52/i)*a>>>0,u=n[0];for(;c!==0;){let d=c>>>2&3;for(let h=i-1;h>0;h--){let p=n[h-1];u=n[h]=n[h]-gWt(c,u,p,h,d,s)>>>0}let f=n[i-1];u=n[0]=n[0]-gWt(c,u,f,0,d,s)>>>0,c=c-a>>>0}let l=Gkn(n,!0);return l?Buffer.from(l,"binary").toString("utf-8"):""}function Ykn(e){try{let t=zkn(e),r=JSON.parse(t),n=String(r?.url||"").trim();return/^https?:\/\//i.test(n)?n:""}catch{return""}}async function SWt(e,t={}){let r=String(e||"").trim();if(!/sportsteam368\.com/i.test(r))return"";let n=Number(t.timeout||Sr.timeout),s=Number.isFinite(t.retryTimes)?t.retryTimes:Sr.retryTimes,i=await SX(()=>Xe.get(r,{headers:{...Sr.headers,Referer:Sr.host,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"},timeout:n}),s),o=String(i.data||"").match(/encodedStr\s*=\s*['"]([^'"]+)['"]/i)?.[1];return o?Ykn(o):""}function Qkn(e){let t=String(e||"").trim();if(!t)return"";try{let s=new URL(t,Sr.host).pathname.match(/\/live\/(\d+)\/play\/?/i);if(s)return s[1]}catch{}let r=t.match(/\/live\/(\d+)\/play\/?/i)||t.match(/^(\d+)$/);return r?r[1]:""}function TMe(e){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:new URL(t,Sr.host).toString():""}function Wkn(e){let t=Qkn(e);if(t)return`${Sr.host}/live/${t}/source`;let r=TMe(e);return r?r.replace(/\/play\/?$/i,"/source"):""}function Xkn(e){let t=TMe(e)||Sr.host;return{...Sr.headers,Referer:t,Origin:Sr.host,"X-Requested-With":"XMLHttpRequest"}}function Jkn(e){let t=TT.load(e||""),r=t(".game-info-container .team-name").map((s,i)=>t(i).text().trim()).get().filter(Boolean);return r.length>=2?`${r[0]} vs ${r[1]}`:t("title").text().trim().replace(/_线上看.*$/g,"").trim()||"\u8D5B\u4E8B\u76F4\u64AD"}async function Zkn(e){let t=TMe(e);if(!t)return{links:[],name:"\u8D5B\u4E8B\u76F4\u64AD"};let r=await SX(()=>Xe.get(t,{headers:{...Sr.headers,Referer:Sr.host},timeout:Sr.timeout})),n=TT.load(r.data||""),s=[];return n("#livePlaySource a.videos-url, #livePlaySource a[href]").each((i,a)=>{let o=n(a).text().trim(),c=n(a).attr("href");o&&c&&s.push({name:o,url:c,shareLock:Number(n(a).attr("data-sharelock")||0)})}),{links:s,name:Jkn(r.data)}}async function e4n(e){let t=Wkn(e);if(!t)return{links:[],name:"\u8D5B\u4E8B\u76F4\u64AD"};let r=await SX(()=>Xe.get(t,{headers:Xkn(e),timeout:Sr.timeout})),n=jkn(r.data?.data);return{links:Array.isArray(n?.links)?n.links:[],name:"\u8D5B\u4E8B\u76F4\u64AD"}}function _Wt(e){let t=new Set;return(Array.isArray(e)?e:[]).filter(r=>{let n=String(r?.url||"").trim();return!n||t.has(n)?!1:(t.add(n),!0)})}function AWt(e,t){let r=String(e||"").trim().toLowerCase(),n=String(t||"").trim().toLowerCase();return a4n(r)?0:r.includes("c5")?1:r.includes("c4")?2:r.includes("b1")?3:r.includes("b2")?4:EN.test(SMe(n))?5:n.includes("sportsteam368.com")?20:n.includes("embedsports.top")?21:10}function EWt(e){try{let t=new URL(e);return`${t.protocol}//${t.host}`}catch{return""}}function vMe(e,t,r={}){let n={...Sr.headers,Referer:t||Sr.playerHost,"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"User-Agent, Content-Type, Range","Access-Control-Expose-Headers":"Content-Length, Content-Range",...r},s=EWt(t)||EWt(e);return s&&(n.Origin=s),n}function t4n(e,t){let r=vMe(e,t);for(let n of["Content-Type","Connection","Access-Control-Allow-Origin","Access-Control-Allow-Methods","Access-Control-Allow-Headers","Access-Control-Expose-Headers"])delete r[n];return r}function r4n(e,t=""){let r=String(t||"").toLowerCase();return EN.test(String(e||""))||r.startsWith("video/")||r.includes("mpegurl")||r.includes("octet-stream")}async function n4n(e,t){let r=String(e||"").trim();if(!/^https?:\/\//i.test(r))return{ok:!1,reason:"not-http"};let n=t4n(r,t),s=[{method:"HEAD",headers:n},{method:"GET",headers:{...n,Range:"bytes=0-1023"}}],i={ok:!1,reason:"unknown"};for(let a of s)try{let o=await Xe.request({url:r,method:a.method,headers:a.headers,timeout:Sr.lineProbeTimeout,responseType:"arraybuffer",maxRedirects:5,validateStatus:()=>!0}),c=String(o.request?.res?.responseUrl||o.config?.url||r),u=String(o.headers?.["content-type"]||""),l=Number(o.status||0);if(i={ok:l>0&&l<400&&r4n(c,u),status:l,contentType:u,finalUrl:c,method:a.method},a.method==="GET")return i}catch(o){if(i={ok:!1,reason:o.code||o.message||"request-error"},a.method==="GET")return i}return i}async function s4n(e){let t=String(e?.name||"").trim(),r=String(e?.url||"").trim();if(!r)return null;let n=r.startsWith("http")?r:`${Sr.host}${r}`,s=(()=>{try{return new URL(n).host}catch{return""}})(),i=SMe(n);if(i&&!/^https?:\/\//i.test(i)&&(i=`${Sr.host}${i}`),!EN.test(i)&&/sportsteam368\.com/i.test(n))try{i=await SWt(n,{timeout:Sr.lineProbeTimeout,retryTimes:0})}catch{i=""}if(!EN.test(i))return null;let a=await n4n(i,n);return a.ok?{...e,name:t,url:a.finalUrl||i,wrapperUrl:n,sourceHost:s,probe:a}:null}async function i4n(e){return(await vWt(e,Sr.lineProbeConcurrency,async r=>{try{return await s4n(r)}catch{return null}})).filter(Boolean)}function a4n(e){if(!e)return!1;let t=e.toLowerCase().replace(/\s+/g,"");if(t.includes("d1")&&t.includes("\u7EBF\u8DEF")||t.includes("d1")&&t.includes("line")||/^d1(线路|line)?$/.test(t)||/^(线路|line)d1$/.test(t))return!0;let r=e.toLowerCase();return!!(r.includes("\u7EBF\u8DEF")&&r.includes("d1"))}async function TWt(e,t={}){let r=`category_${e}_${qkn(t)}`,n=yWt(r);if(n)return n;let s=async()=>{let i=t.cateId||e||"",a=i?`/match/${i}/live`:"",o=Sr.host+a,c=await SX(()=>Xe.get(o,{headers:Sr.headers,timeout:Sr.timeout})),u=TT.load(c.data),l=[],d=[];u(".list-group-item").each((p,m)=>{let _=u(m),g=_.find(".btn.btn-primary"),y=_.find(".category-game-time").text().trim()||"",A=_.find(".game-type").text().trim()||"",E=_.find(".team-name"),v="",b="";E.length>=2&&(v=E.first().text().trim(),b=E.last().text().trim());let I="";if(v&&b?I=`${y} ${A} ${v} vs ${b}`.trim():A?I=`${y} ${A}`.trim():I=y.trim(),!I)return;let T=_.find("img").first().attr("src")||ys.staticCache.defaultPic,x=T.startsWith("http")?T:Sr.host+T,w={vod_name:I,vod_pic:x,vod_remarks:""};if(g.length>0)w.vod_id=Sr.host+g.attr("href"),w.vod_remarks=g.text().trim()||"\u76F4\u64AD\u4E2D",l.push(w);else{let D=`${y}-${A}-${v}-${b}`;w.vod_id=`upcoming_${Buffer.from(D).toString("base64")}`,w.vod_remarks=y||"\u672A\u5F00\u64AD",d.push(w)}});let f=[...l,...d],h={list:f,page:1,pagecount:1,limit:f.length,total:f.length};return f.length>0&&yMe(r,h),h};return Un("kanqiu","category",r,async()=>{try{return await s()}catch{return{list:[],page:1,pagecount:1,limit:0,total:0}}},{timeout:3e4})}async function o4n(e){let t=`detail_${e}`,r=yWt(t);if(r)return r;let n=async()=>{if(e.startsWith("upcoming_")){let d={vod_id:e,vod_name:"\u8D5B\u4E8B\u76F4\u64AD",vod_pic:ys.staticCache.defaultPic,type_name:"\u4F53\u80B2\u76F4\u64AD",vod_remarks:"\u672A\u5F00\u64AD",vod_content:"\u6BD4\u8D5B\u5C1A\u672A\u5F00\u59CB\uFF0C\u8BF7\u7B49\u5F85\u5F00\u64AD",vod_play_from:"88\u770B\u7403",vod_play_url:""};return yMe(t,d,Sr.detailCacheTTL),d}if(e===Sr.host)return null;let{links:s}=await e4n(e),i=_Wt(s);if(i.length===0){let d=await Zkn(e);i=_Wt(d.links)}if(i.length===0)return null;let a=[...i].sort((d,f)=>{let h=AWt(d?.name,d?.url)-AWt(f?.name,f?.url);return h!==0?h:String(d?.name||"").localeCompare(String(f?.name||""),"zh-CN")}),o=await i4n(a),c=o.map(d=>{let f=d.wrapperUrl||(d.url.startsWith("http")?d.url:`${Sr.host}${d.url}`),h=Hkn({lineName:String(d.name||"").trim(),sourceHost:d.sourceHost||(()=>{try{return new URL(f).host}catch{return""}})(),wrapperUrl:f,url:d.url||f});return`${d.name}$${h}`}).join("#"),u=o.length>0,l={vod_id:e,vod_name:"\u8D5B\u4E8B\u76F4\u64AD",vod_pic:ys.staticCache.defaultPic,type_name:"\u4F53\u80B2\u76F4\u64AD",vod_remarks:u?"\u5B9E\u65F6\u76F4\u64AD":"\u6682\u65E0\u53EF\u64AD\u653E\u7EBF\u8DEF",vod_content:u?"\u5B9E\u65F6\u4F53\u80B2\u76F4\u64AD":"\u5F53\u524D\u7EBF\u8DEF\u5747\u65E0\u6CD5\u89E3\u51FA\u53EF\u64AD\u653E\u5A92\u4F53\u5730\u5740",vod_play_from:"88\u770B\u7403",vod_play_url:c};return yMe(t,l,u?Sr.detailCacheTTL:Sr.cacheTTL),l};return Un("kanqiu","detail",t,async()=>{try{return await n()}catch{return null}},{timeout:3e4})}async function c4n(e,t){return ys.init||(ys.device=await e.server.db.getObjectDefault(`${e.server.prefix}/device`,{}),ys.device.id||(ys.device=v1e(32),ys.device.id=ys.device.id.toLowerCase(),await e.server.db.push(`${e.server.prefix}/device`,ys.device)),ys.init=!0),{}}async function u4n(e,t){let r=Yr("kanqiu",arguments[0]||{}),n=Qr(r);if(n)return n;let s=await TWt(""),i={class:Ukn(),filters:Fkn(),list:s.list};return dn(r,i,Tt.semiStatic),i}async function l4n(e,t){let r=e.body.id,n=e.body.filters||{};return await TWt(r,n)}async function d4n(e,t){let n=(Array.isArray(e.body.id)?e.body.id:[e.body.id]).map(i=>String(i||"").trim()).filter(Boolean);return{list:(await vWt(n,6,i=>o4n(i))).filter(Boolean)}}function Vb(e="",t=""){return{parse:0,jx:0,url:"",format:"hls",disableSniff:!0,player:"hlsjs",header:Sr.headers,...e?{error:e}:{},...t?{line:t}:{}}}async function f4n(e,t){try{let r=String(e.body?.id||"").trim();if(!r)return Vb();if(r.startsWith("upcoming_"))return Vb("\u6BD4\u8D5B\u5C1A\u672A\u5F00\u59CB\uFF0C\u8BF7\u7B49\u5F85\u5F00\u64AD");let n=decodeURIComponent(r).replace(/\*\*\*/g,"#"),s=Vkn(n),i=s.wrapperUrl||s.url||n,a=s.lineName||String(e.body?.flag||"").trim(),o=s.sourceHost||(()=>{try{return new URL(i).host}catch{return""}})(),c=SMe(s.url||n);c&&!/^https?:/i.test(c)&&(c=`${Sr.host}${c}`);let u=String(e.body?.line||"").trim(),l=Bkn[u]||Sr.playerHost;if(i&&/^https?:\/\//i.test(i))try{let f=new URL(i);l=`${f.protocol}//${f.host}/`}catch{}if(EN.test(c)){let f=e.body.quality||"sd",h=Mkn[f]||kkn,p=pWt.test(c)?c.replace(pWt,`${f}-$2`):c,m=/\.mp4(\?|$)/i.test(p)?"video/mp4":"application/vnd.apple.mpegurl";return{parse:0,jx:0,url:p,format:/m3u8(\?|$)/i.test(p)?"hls":"mp4",type:m,header:vMe(p,l,{"Content-Type":m}),disableSniff:!0,player:/m3u8(\?|$)/i.test(p)?"hlsjs":"ijk",quality:h,line:a||u||"default"}}if(/sportsteam368\.com/i.test(o)||/sportsteam368\.com/i.test(i)){let f=await SWt(i);if(EN.test(f)){let h=/\.mp4(\?|$)/i.test(f)?"video/mp4":"application/vnd.apple.mpegurl";return{parse:0,jx:0,url:f,format:/m3u8(\?|$)/i.test(f)?"hls":"mp4",type:h,header:vMe(f,i,{"Content-Type":h}),disableSniff:!0,player:/m3u8(\?|$)/i.test(f)?"hlsjs":"ijk",line:a||"sportsteam368"}}return Vb("\u672A\u80FD\u89E3\u51FA\u53EF\u64AD\u653E\u5A92\u4F53\u5730\u5740",a||"sportsteam368")}return/embedsports\.top/i.test(o)||/embedsports\.top/i.test(i)?Vb("\u6682\u4E0D\u652F\u6301\u8BE5\u7B2C\u4E09\u65B9\u64AD\u653E\u58F3\u76F4\u94FE\u89E3\u5BC6",a||"embedsports"):(/^https?:\/\//i.test(i),Vb("\u672A\u80FD\u89E3\u51FA\u53EF\u64AD\u653E\u5A92\u4F53\u5730\u5740",a||u||"fallback"))}catch{return Vb("\u64AD\u653E\u5730\u5740\u89E3\u6790\u5931\u8D25")}}async function h4n(e,t){return{list:[],page:1,pagecount:1,total:0}}var X3,Sr,Mkn,kkn,pWt,Bkn,EN,EMe,ys,Kkn,p4n,IWt=ae(()=>{Hr();Nn();ws();X3=Ne(m4(),1);Qd();da();Sr={host:"https://www.88kanqiu.tw",playerHost:"https://play.88player.top",backupHosts:["https://play.88player.top","https://play.88player2.top"],headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive"},cacheTTL:60,detailCacheTTL:300,retryTimes:2,timeout:15e3,lineProbeTimeout:7e3,lineProbeConcurrency:5,cacheMaxSize:500,cleanupInterval:300},Mkn={ld:"240p",sd:"480p",hd:"720p",fhd:"1080p"},kkn="480p",pWt=/(sd|hd|fhd|ld)-(\d+)/,Bkn={default:Sr.playerHost,backup1:Sr.backupHosts[0],backup2:Sr.backupHosts[1]},EN=/^https?:\/\/.*\.(m3u8|mp4|flv|m4s|ts)(\?.*)?$/i,EMe="kanqiu://",ys={init:!1,cache:new Map,device:{},lastCleanup:(0,X3.default)().unix(),staticCache:{classes:null,filters:null,defaultPic:"https://pic.imgdb.cn/item/657673d6c458853aeff94ab9.jpg"}};Kkn="ABCDEFGHIJKLMNOPQRSTUVWX";p4n={meta:{key:"88kanqiu",name:"\u{1F3C0} \u770B\u7403",type:3,searchable:0,quickSearch:0,filterable:1,qualities:["ld","sd","hd","fhd"],lines:["default","backup1","backup2"]},api:async e=>{let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"User-Agent, Content-Type, Range","Access-Control-Expose-Headers":"Content-Length, Content-Range"};e.options("/play",async(r,n)=>{n.headers(t),n.code(204).send()}),e.post("/init",c4n),e.post("/home",u4n),e.post("/category",l4n),e.post("/detail",d4n),e.post("/play",f4n),e.post("/search",h4n)}}});function m4n(e){return Array.isArray(e)?e:e&&typeof e=="object"?Object.values(e):[]}function J3(e,t=""){return e==null?t:String(e).trim()||t}function RWt(e){let t=m4n(e),r=[];for(let n=0;n0)return t;let r=RWt(e?.config?.live);if(r.length===0)return[];try{await e.db.push("/config/live",r),console.log(`[Live] DB\u4E3A\u7A7A\uFF0C\u5DF2\u4ECE index.config.js \u56DE\u586B\u76F4\u64AD\u914D\u7F6E\uFF0C\u5171 ${r.length} \u6761`)}catch(n){console.error("[Live] \u56DE\u586B\u9ED8\u8BA4\u914D\u7F6E\u5230\u6570\u636E\u5E93\u5931\u8D25:",n)}return r}var bMe=ae(()=>{});var NWt={};Ft(NWt,{default:()=>g4n});async function T4n(e){if(!e)return Pi;let t=Date.now();if(yN.loaded&&t-yN.timestamp{s.Referer="https://live.bilibili.com/",s.Origin="https://live.bilibili.com"},"douyin.com":()=>{s.Referer="https://www.douyin.com/",s.Origin="https://www.douyin.com"},"huya.com":()=>{s.Referer="https://www.huya.com/",s.Origin="https://www.huya.com"}};if(i){for(let[o,c]of Object.entries(a))if(i.includes(o)){c();break}s.Referer||(s.Referer=`https://${i}/`)}if(eU.set(r,s),eU.size>100){let o=Array.from(eU.keys());for(let c=0;c<20;c++)eU.delete(o[c])}return s}async function b4n(e){return e.server&&await Kb(e.server),{}}async function I4n(e){let t=Yr("live",arguments[0]||{}),r=Qr(t);if(r)return r;e?.server&&await Kb(e.server);let n={class:Pi.map((s,i)=>({type_id:`${i}`,type_name:s.name,type_image:s.logo}))};return dn(t,n,Tt.semiStatic),n}async function R4n(e){return e?.server&&await Kb(e.server),{list:Pi.map((t,r)=>({vod_id:`${r}_0_${Date.now()}`,vod_name:t.name,vod_pic:t.logo,vod_remarks:"\u76F4\u64AD\u6E90"})),page:{page:1,pagecount:1,limit:Pi.length,total:Pi.length}}}async function C4n(e){await Kb(e.server);let{id:t,page:r=1,limit:n=50}=e.body,s=Number.parseInt(t,10),i=Pi[s];if(!i)return{list:[],page:{page:1,pagecount:1,limit:0,total:0}};let a=await RMe(i),o=a.length,c=Math.ceil(o/n),u=(r-1)*n,l=u+n,d=r>c?[]:a.slice(u,l),f=new Array(d.length);for(let h=0;hh>=200&&h<400});f.status>=300&&f.status<400&&f.headers.location&&(u=new URL(f.headers.location,i).href)}catch(f){let h=f?.response?.headers?.location;h&&(u=new URL(h,i).href)}if(u!==i){let f=bX(u);l={"User-Agent":c.ua||"okhttp/3.15",Accept:"*/*",Connection:"keep-alive",Referer:`https://${f}/`}}}let d={parse:0,url:u,header:l,headers:l};if(jb.set(t,{result:d,timestamp:r}),jb.size>E4n){let f=Math.min(50,jb.size),h=0;for(let p of jb.keys())if(jb.delete(p),h++,h>=f)break}return d}catch(t){return console.error("[Live Play] Error:",t.message),{parse:0,url:""}}}async function N4n(e){let{wd:t,page:r=1,limit:n=30}=e.body;if(!t)return{list:[],page:{page:1,pagecount:1,limit:0,total:0}};let s=t.toLowerCase(),i=Number.parseInt(r,10)||1,a=Number.parseInt(n,10)||30;await Kb(e.server);let o=[],c=Pi.map(m=>RMe(m)),u=await Promise.allSettled(c);for(let m=0;md?[]:o.slice(f,h),page:{page:i,pagecount:d,limit:a,total:l}}}async function RMe(e){if(!e?.url)return[];let t=e.url,r=Date.now(),n=IMe.get(t);if(n&&r-n.timestamp{try{let i=wWt(e,e.url),o=(await Xe(e.url,{method:"GET",headers:i,timeout:8e3})).data;if(Buffer.isBuffer(o)?o=o.toString("utf-8"):typeof o!="string"&&(o=String(o||"")),o){let u=o.split(` -`),l=[];for(let d=0;d0)return IMe.set(t,{data:c,timestamp:r,ttl:30*60*1e3}),c;throw new Error("Empty groups")}catch{let a={data:[],timestamp:r,ttl:6e4};return IMe.set(t,a),[]}})();Z3.set(t,s);try{return await s}finally{Z3.get(t)===s&&Z3.delete(t)}}function O4n(e){if(!e||typeof e!="string")return[];let t=new Map,r=e.split(` -`),n="\u672A\u5206\u7C7B";for(let i=0;i0&&s.push({groupName:i,channels:a});return s}var g4n,Pi,tU,IMe,Z3,yN,_4n,jb,A4n,E4n,CWt,xWt,y4n,v4n,S4n,eU,OWt=ae(()=>{Hr();Nn();bMe();g4n={meta:{key:"live",name:"\u{1F4FA} \u76F4\u64AD",type:3,version:"20260115",author:"Gemini"},api:async e=>{e.post("/init",b4n),e.post("/home",I4n),e.post("/homeVod",R4n),e.post("/category",C4n),e.post("/detail",x4n),e.post("/play",w4n),e.post("/search",N4n)}},Pi=[],tU=new Map,IMe=new Map,Z3=new Map,yN={loaded:!1,timestamp:0,ttl:5*60*1e3},_4n="https://ghp.xptvhelper.link/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg",jb=new Map,A4n=30*1e3,E4n=200,CWt=/\[IDX:(\d+)\]/,xWt=/^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:/\n?]+)/,y4n=/#EXTINF:.*?group-title="([^"]+)".*?,(.+)$/,v4n=/([^,]+)#genre#/,S4n=/^#EXTGRP:(.+)/;eU=new Map});var fu=S((zPs,vN)=>{var GPs=require("crypto");vN.exports.linebrk=function(e,t){for(var r="",n=0;n+t0){if(r>=4)return e.readUIntBE(t,r);for(var n=0,s=t+r,i=0;s>t;s--,i+=2)n+=e[s-1]*Math.pow(16,i);return n}else return NaN};vN.exports._={isObject:function(e){var t=typeof e;return!!e&&(t=="object"||t=="function")},isString:function(e){return typeof e=="string"||e instanceof String},isNumber:function(e){return typeof e=="number"||!isNaN(parseFloat(e))&&isFinite(e)},omit:function(e,t){var r={};for(var n in e)!e.hasOwnProperty(n)||n===t||(r[n]=e[n]);return r}};vN.exports.trimSurroundingText=function(e,t,r){var n=0,s=e.length,i=e.indexOf(t);i>=0&&(n=i+t.length);var a=e.indexOf(r,i);return a>=0&&(s=a),e.substring(n,s)}});var Yb=S((QPs,kWt)=>{var D4n=require("crypto"),P4n=fu()._,SN,L4n=0xdeadbeefcafe,YPs=(L4n&16777215)==15715070;function Ye(e,t){e!=null&&(typeof e=="number"?this.fromNumber(e,t):Buffer.isBuffer(e)?this.fromBuffer(e):t==null&&typeof e!="string"?this.fromByteArray(e):this.fromString(e,t))}function mn(){return new Ye(null)}function M4n(e,t,r,n,s,i){for(var a=t&16383,o=t>>14;--i>=0;){var c=this[e]&16383,u=this[e++]>>14,l=o*c+u*a;c=a*c+((l&16383)<<14)+r[n]+s,s=(c>>28)+(l>>14)+o*u,r[n++]=c&268435455}return s}Ye.prototype.am=M4n;SN=28;Ye.prototype.DB=SN;Ye.prototype.DM=(1<=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s}function U4n(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+DV:this.t=0}function Uy(e){var t=mn();return t.fromInt(e),t}function F4n(e,t,r){var n;switch(t){case 2:n=1;break;case 4:n=2;break;case 8:n=3;break;case 16:n=4;break;case 32:n=5;break;case 256:n=8;break;default:this.fromRadix(e,t);return}this.t=0,this.s=0;for(var s=e.length,i=!1,a=0;--s>=0;){var o=n==8?e[s]&255:DWt(e,s);if(o<0){e.charAt(s)=="-"&&(i=!0);continue}i=!1,a===0?this[this.t++]=o:a+n>this.DB?(this[this.t-1]|=(o&(1<>this.DB-a):this[this.t-1]|=o<=this.DB&&(a-=this.DB)}!r&&n==8&&e[0]&128&&(this.s=-1,a>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==e;)--this.t}function V4n(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<0)for(o>o)>0&&(s=!0,i=CMe(n));a>=0;)o>(o+=this.DB-t)):(n=this[a]>>(o-=t)&r,o<=0&&(o+=this.DB,--a)),n>0&&(s=!0),s&&(i+=CMe(n));return s?i:"0"}function j4n(){var e=mn();return Ye.ZERO.subTo(this,e),e}function K4n(){return this.s<0?this.negate():this}function G4n(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this[r]-e[r])!=0)return t;return 0}function RX(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function z4n(){return this.t<=0?0:this.DB*(this.t-1)+RX(this[this.t-1]^this.s&this.DM)}function Y4n(e,t){var r;for(r=this.t-1;r>=0;--r)t[r+e]=this[r];for(r=e-1;r>=0;--r)t[r]=0;t.t=this.t+e,t.s=this.s}function Q4n(e,t){for(var r=e;r=0;--o)t[o+i+1]=this[o]>>n|a,a=(this[o]&s)<=0;--o)t[o]=0;t[i]=a,t.t=this.t+i+1,t.s=this.s,t.clamp()}function X4n(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,s=this.DB-n,i=(1<>n;for(var a=r+1;a>n;n>0&&(t[this.t-r-1]|=(this.s&i)<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:n>0&&(t[r++]=n),t.t=r,t.clamp()}function Z4n(e,t){var r=this.abs(),n=e.abs(),s=r.t;for(t.t=s+n.t;--s>=0;)t[s]=0;for(s=0;s=0;)e[r]=0;for(r=0;r=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(r,t[r],e,2*r,0,1)),e.s=0,e.clamp()}function tBn(e,t,r){var n=e.abs();if(!(n.t<=0)){var s=this.abs();if(s.t0?(n.lShiftTo(c,i),s.lShiftTo(c,r)):(n.copyTo(i),s.copyTo(r));var u=i.t,l=i[u-1];if(l!==0){var d=l*(1<1?i[u-2]>>this.F2:0),f=this.FV/d,h=(1<=0&&(r[r.t++]=1,r.subTo(g,r)),Ye.ONE.dlShiftTo(u,g),g.subTo(i,i);i.t=0;){var y=r[--m]==l?this.DM:Math.floor(r[m]*f+(r[m-1]+p)*h);if((r[m]+=i.am(0,y,r,_,0,u))0&&r.rShiftTo(c,r),a<0&&Ye.ZERO.subTo(r,r)}}}function rBn(e){var t=mn();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(Ye.ZERO)>0&&e.subTo(t,t),t}function Gb(e){this.m=e}function nBn(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function sBn(e){return e}function iBn(e){e.divRemTo(this.m,null,e)}function aBn(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function oBn(e,t){e.squareTo(t),this.reduce(t)}Gb.prototype.convert=nBn;Gb.prototype.revert=sBn;Gb.prototype.reduce=iBn;Gb.prototype.mulTo=aBn;Gb.prototype.sqrTo=oBn;function cBn(){if(this.t<1)return 0;var e=this[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function zb(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(t,t),t}function lBn(e){var t=mn();return e.copyTo(t),this.reduce(t),t}function dBn(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e[r]+=this.m.am(0,n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function fBn(e,t){e.squareTo(t),this.reduce(t)}function hBn(e,t,r){e.multiplyTo(t,r),this.reduce(r)}zb.prototype.convert=uBn;zb.prototype.revert=lBn;zb.prototype.reduce=dBn;zb.prototype.mulTo=hBn;zb.prototype.sqrTo=fBn;function pBn(){return(this.t>0?this[0]&1:this.s)===0}function mBn(e,t){if(e>4294967295||e<1)return Ye.ONE;var r=mn(),n=mn(),s=t.convert(this),i=RX(e)-1;for(s.copyTo(r);--i>=0;)if(t.sqrTo(r,n),(e&1<0)t.mulTo(n,s,r);else{var a=r;r=n,n=a}return t.revert(r)}function gBn(e,t){var r;return e<256||t.isEven()?r=new Gb(t):r=new zb(t),this.exp(e,r)}function _Bn(){var e=mn();return this.copyTo(e),e}function ABn(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t===0)return-1}else{if(this.t==1)return this[0];if(this.t===0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function yBn(){return this.t==0?this.s:this[0]<<16>>16}function vBn(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function SBn(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function TBn(e){if(e==null&&(e=10),this.signum()===0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=Uy(r),s=mn(),i=mn(),a="";for(this.divRemTo(n,s,i);s.signum()>0;)a=(r+i.intValue()).toString(e).substr(1)+a,s.divRemTo(n,s,i);return i.intValue().toString(e)+a}function bBn(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),s=!1,i=0,a=0,o=0;o=r&&(this.dMultiply(n),this.dAddOffset(a,0),i=0,a=0)}i>0&&(this.dMultiply(Math.pow(t,i)),this.dAddOffset(a,0)),s&&Ye.ZERO.subTo(this,this)}function IBn(e,t){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e),this.testBit(e-1)||this.bitwiseTo(Ye.ONE.shiftLeft(e-1),wMe,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(Ye.ONE.shiftLeft(e-1),this);else{var r=D4n.randomBytes((e>>3)+1),n=e&7;n>0?r[0]&=(1<0)for(r>r)!=(this.s&this.DM)>>r&&(t[s++]=n|this.s<=0;)r<8?(n=(this[e]&(1<>(r+=this.DB-8)):(n=this[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),s===0&&(this.s&128)!=(n&128)&&++s,(s>0||n!=this.s)&&(t[s++]=n);return t}function CBn(e){var t=Buffer.from(this.toByteArray());if(e===!0&&t[0]===0)t=t.slice(1);else if(P4n.isNumber(e)){if(t.length>e){for(var r=0;r0?this:e}function OBn(e,t,r){var n,s,i=Math.min(e.t,this.t);for(n=0;n>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function qBn(){for(var e=0;e=this.t?this.s!=0:(this[t]&1<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[r++]=n:n<-1&&(t[r++]=this.DV+n),t.t=r,t.clamp()}function WBn(e){var t=mn();return this.addTo(e,t),t}function XBn(e){var t=mn();return this.subTo(e,t),t}function JBn(e){var t=mn();return this.multiplyTo(e,t),t}function ZBn(){var e=mn();return this.squareTo(e),e}function e3n(e){var t=mn();return this.divRemTo(e,t,null),t}function t3n(e){var t=mn();return this.divRemTo(e,null,t),t}function r3n(e){var t=mn(),r=mn();return this.divRemTo(e,t,r),new Array(t,r)}function n3n(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function s3n(e,t){if(e!==0){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}}function rU(){}function MWt(e){return e}function i3n(e,t,r){e.multiplyTo(t,r)}function a3n(e,t){e.squareTo(t)}rU.prototype.convert=MWt;rU.prototype.revert=MWt;rU.prototype.mulTo=i3n;rU.prototype.sqrTo=a3n;function o3n(e){return this.exp(e,new rU)}function c3n(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r[--n]=0;var s;for(s=r.t-this.t;n=0;)r[n]=0;for(n=Math.max(t-this.t,0);n2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=mn();return e.copyTo(t),this.reduce(t),t}function d3n(e){return e}function f3n(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function h3n(e,t){e.squareTo(t),this.reduce(t)}function p3n(e,t,r){e.multiplyTo(t,r),this.reduce(r)}bN.prototype.convert=l3n;bN.prototype.revert=d3n;bN.prototype.reduce=f3n;bN.prototype.mulTo=p3n;bN.prototype.sqrTo=h3n;function m3n(e,t){var r=e.bitLength(),n,s=Uy(1),i;if(r<=0)return s;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?i=new Gb(t):t.isEven()?i=new bN(t):i=new zb(t);var a=new Array,o=3,c=n-1,u=(1<1){var l=mn();for(i.sqrTo(a[1],l);o<=u;)a[o]=mn(),i.mulTo(l,a[o-2],a[o]),o+=2}var d=e.t-1,f,h=!0,p=mn(),m;for(r=RX(e[d])-1;d>=0;){for(r>=c?f=e[d]>>r-c&u:(f=(e[d]&(1<0&&(f|=e[d-1]>>this.DB+r-c)),o=n;!(f&1);)f>>=1,--o;if((r-=o)<0&&(r+=this.DB,--d),h)a[f].copyTo(s),h=!1;else{for(;o>1;)i.sqrTo(s,p),i.sqrTo(p,s),o-=2;o>0?i.sqrTo(s,p):(m=s,s=p,p=m),i.mulTo(p,a[f],s)}for(;d>=0&&!(e[d]&1<0&&(t.rShiftTo(i,t),r.rShiftTo(i,r));t.signum()>0;)(s=t.getLowestSetBit())>0&&t.rShiftTo(s,t),(s=r.getLowestSetBit())>0&&r.rShiftTo(s,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return i>0&&r.lShiftTo(i,r),r}function _3n(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t===0)r=this[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this[n])%e;return r}function A3n(e){var t=e.isEven();if(this.isEven()&&t||e.signum()===0)return Ye.ZERO;for(var r=e.clone(),n=this.clone(),s=Uy(1),i=Uy(0),a=Uy(0),o=Uy(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!s.isEven()||!i.isEven())&&(s.addTo(this,s),i.subTo(e,i)),s.rShiftTo(1,s)):i.isEven()||i.subTo(e,i),i.rShiftTo(1,i);for(;n.isEven();)n.rShiftTo(1,n),t?((!a.isEven()||!o.isEven())&&(a.addTo(this,a),o.subTo(e,o)),a.rShiftTo(1,a)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);r.compareTo(n)>=0?(r.subTo(n,r),t&&s.subTo(a,s),i.subTo(o,i)):(n.subTo(r,n),t&&a.subTo(s,a),o.subTo(i,o))}if(n.compareTo(Ye.ONE)!=0)return Ye.ZERO;if(o.compareTo(e)>=0)return o.subtract(e);if(o.signum()<0)o.addTo(e,o);else return o;return o.signum()<0?o.add(e):o}var hu=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],E3n=(1<<26)/hu[hu.length-1];function y3n(e){var t,r=this.abs();if(r.t==1&&r[0]<=hu[hu.length-1]){for(t=0;t>1,e>hu.length&&(e=hu.length);for(var s=mn(),i=0;i{var BWt=Yb(),IN=require("crypto"),CX=require("constants"),S3n={md2:Buffer.from("3020300c06082a864886f70d020205000410","hex"),md5:Buffer.from("3020300c06082a864886f70d020505000410","hex"),sha1:Buffer.from("3021300906052b0e03021a05000414","hex"),sha224:Buffer.from("302d300d06096086480165030402040500041c","hex"),sha256:Buffer.from("3031300d060960864801650304020105000420","hex"),sha384:Buffer.from("3041300d060960864801650304020205000430","hex"),sha512:Buffer.from("3051300d060960864801650304020305000440","hex"),ripemd160:Buffer.from("3021300906052b2403020105000414","hex"),rmd160:Buffer.from("3021300906052b2403020105000414","hex")},UWt={ripemd160:"rmd160"},FWt="sha256";NMe.exports={isEncryption:!0,isSignature:!0};NMe.exports.makeScheme=function(e,t){function r(n,s){this.key=n,this.options=s}return r.prototype.maxMessageLength=function(){return this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==CX.RSA_NO_PADDING?this.key.encryptedDataLength:this.key.encryptedDataLength-11},r.prototype.encPad=function(n,s){s=s||{};var i;if(n.length>this.key.maxMessageLength)throw new Error("Message too long for RSA (n="+this.key.encryptedDataLength+", l="+n.length+")");if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==CX.RSA_NO_PADDING)return i=Buffer.alloc(this.key.maxMessageLength-n.length),i.fill(0),Buffer.concat([i,n]);if(s.type===1)return i=Buffer.alloc(this.key.encryptedDataLength-n.length-1),i.fill(255,0,i.length-1),i[0]=1,i[i.length-1]=0,Buffer.concat([i,n]);i=Buffer.alloc(this.key.encryptedDataLength-n.length),i[0]=0,i[1]=2;for(var a=IN.randomBytes(i.length-3),o=0;o=n.length)return null}else{if(n[0]!==0||n[1]!==2)return null;for(i=3;n[i]!==0;)if(++i>=n.length)return null}return n.slice(i+1,n.length)},r.prototype.sign=function(n){var s=this.options.signingSchemeOptions.hash||FWt;if(this.options.environment==="browser"){s=UWt[s]||s;var i=IN.createHash(s);i.update(n);var a=this.pkcs1pad(i.digest(),s),o=this.key.$doPrivate(new BWt(a)).toBuffer(this.key.encryptedDataLength);return o}else{var c=IN.createSign("RSA-"+s.toUpperCase());return c.update(n),c.sign(this.options.rsaUtils.exportKey("private"))}},r.prototype.verify=function(n,s,i){if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==CX.RSA_NO_PADDING)return!1;var a=this.options.signingSchemeOptions.hash||FWt;if(this.options.environment==="browser"){a=UWt[a]||a,i&&(s=Buffer.from(s,i));var o=IN.createHash(a);o.update(n);var c=this.pkcs1pad(o.digest(),a),u=this.key.$doPublic(new BWt(s));return u.toBuffer().toString("hex")==c.toString("hex")}else{var l=IN.createVerify("RSA-"+a.toUpperCase());return l.update(n),l.verify(this.options.rsaUtils.exportKey("public"),s,i)}},r.prototype.pkcs0pad=function(n){var s=Buffer.alloc(this.key.maxMessageLength-n.length);return s.fill(0),Buffer.concat([s,n])},r.prototype.pkcs0unpad=function(n){var s;return typeof n.lastIndexOf=="function"?s=n.slice(n.lastIndexOf("\0")+1,n.length):s=n.slice(String.prototype.lastIndexOf.call(n,"\0")+1,n.length),s},r.prototype.pkcs1pad=function(n,s){var i=S3n[s];if(!i)throw Error("Unsupported hash algorithm");var a=Buffer.concat([i,n]);if(a.length+10>this.key.encryptedDataLength)throw Error("Key is too short for signing algorithm ("+s+")");var o=Buffer.alloc(this.key.encryptedDataLength-a.length-1);o.fill(255,0,o.length-1),o[0]=1,o[o.length-1]=0;var c=Buffer.concat([o,a]);return c},new r(e,t)}});var qWt=S((JPs,G0)=>{var XPs=Yb(),xX=require("crypto");G0.exports={isEncryption:!0,isSignature:!1};G0.exports.digestLength={md4:16,md5:16,ripemd160:20,rmd160:20,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64};var wX="sha1";G0.exports.eme_oaep_mgf1=function(e,t,r){r=r||wX;for(var n=G0.exports.digestLength[r],s=Math.ceil(t/n),i=Buffer.alloc(n*s),a=Buffer.alloc(4),o=0;oo-2*c-2)throw new Error("Message is too long to encode into an encoded message with a length of "+o+" bytes, increaseemLen to fix this error (minimum value for given parameters and options: "+(o-2*c-2)+")");var u=xX.createHash(s);u.update(a),u=u.digest();var l=Buffer.alloc(o-n.length-2*c-1);l.fill(0),l[l.length-1]=1;for(var d=Buffer.concat([u,l,n]),f=xX.randomBytes(c),h=i(f,d.length,s),p=0;p{var HWt=Yb(),nU=require("crypto");OMe.exports={isEncryption:!1,isSignature:!0};var NX="sha1",VWt=20;OMe.exports.makeScheme=function(e,t){var r=Qb().pkcs1_oaep;function n(s,i){this.key=s,this.options=i}return n.prototype.sign=function(s){var i=nU.createHash(this.options.signingSchemeOptions.hash||NX);i.update(s);var a=this.emsa_pss_encode(i.digest(),this.key.keySize-1);return this.key.$doPrivate(new HWt(a)).toBuffer(this.key.encryptedDataLength)},n.prototype.verify=function(s,i,a){a&&(i=Buffer.from(i,a)),i=new HWt(i);var o=Math.ceil((this.key.keySize-1)/8),c=this.key.$doPublic(i).toBuffer(o),u=nU.createHash(this.options.signingSchemeOptions.hash||NX);return u.update(s),this.emsa_pss_verify(u.digest(),c,this.key.keySize-1)},n.prototype.emsa_pss_encode=function(s,i){var a=this.options.signingSchemeOptions.hash||NX,o=this.options.signingSchemeOptions.mgf||r.eme_oaep_mgf1,c=this.options.signingSchemeOptions.saltLength||VWt,u=r.digestLength[a],l=Math.ceil(i/8);if(l>8-A<<8-A;g[0]=g[0]&E;var v=Buffer.alloc(g.length+h.length+1);return g.copy(v,0),h.copy(v,g.length),v[v.length-1]=188,v},n.prototype.emsa_pss_verify=function(s,i,a){var o=this.options.signingSchemeOptions.hash||NX,c=this.options.signingSchemeOptions.mgf||r.eme_oaep_mgf1,u=this.options.signingSchemeOptions.saltLength||VWt,l=r.digestLength[o],d=Math.ceil(a/8);if(d>8-m<<8-m,f[0]=f[0]&h,p=0;f[p]===0&&p{RN.exports={pkcs1:$Wt(),pkcs1_oaep:qWt(),pss:jWt(),isEncryption:function(e){return RN.exports[e]&&RN.exports[e].isEncryption},isSignature:function(e){return RN.exports[e]&&RN.exports[e].isSignature}}});var PMe=S((tLs,KWt)=>{var DMe=Yb(),T3n=Qb();KWt.exports=function(e,t){var r=T3n.pkcs1.makeScheme(e,t);return{encrypt:function(n,s){var i,a;return s?(i=new DMe(r.encPad(n,{type:1})),a=e.$doPrivate(i)):(i=new DMe(e.encryptionScheme.encPad(n)),a=e.$doPublic(i)),a.toBuffer(e.encryptedDataLength)},decrypt:function(n,s){var i,a=new DMe(n);return s?(i=e.$doPublic(a),r.encUnPad(i.toBuffer(e.encryptedDataLength),{type:1})):(i=e.$doPrivate(a),e.encryptionScheme.encUnPad(i.toBuffer(e.encryptedDataLength)))}}}});var zWt=S((rLs,GWt)=>{var OX=require("crypto"),Fy=require("constants"),b3n=Qb();GWt.exports=function(e,t){var r=b3n.pkcs1.makeScheme(e,t);return{encrypt:function(n,s){var i;if(s)return i=Fy.RSA_PKCS1_PADDING,t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding),OX.privateEncrypt({key:t.rsaUtils.exportKey("private"),padding:i},n);i=Fy.RSA_PKCS1_OAEP_PADDING,t.encryptionScheme==="pkcs1"&&(i=Fy.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding);var a=n;return i===Fy.RSA_NO_PADDING&&(a=r.pkcs0pad(n)),OX.publicEncrypt({key:t.rsaUtils.exportKey("public"),padding:i},a)},decrypt:function(n,s){var i;if(s)return i=Fy.RSA_PKCS1_PADDING,t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding),OX.publicDecrypt({key:t.rsaUtils.exportKey("public"),padding:i},n);i=Fy.RSA_PKCS1_OAEP_PADDING,t.encryptionScheme==="pkcs1"&&(i=Fy.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding);var a=OX.privateDecrypt({key:t.rsaUtils.exportKey("private"),padding:i},n);return i===Fy.RSA_NO_PADDING?r.pkcs0unpad(a):a}}}});var WWt=S((nLs,QWt)=>{var YWt=require("crypto"),CN=require("constants"),I3n=Qb();QWt.exports=function(e,t){var r=PMe()(e,t),n=I3n.pkcs1.makeScheme(e,t);return{encrypt:function(s,i){if(i)return r.encrypt(s,i);var a=CN.RSA_PKCS1_OAEP_PADDING;t.encryptionScheme==="pkcs1"&&(a=CN.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(a=t.encryptionSchemeOptions.padding);var o=s;return a===CN.RSA_NO_PADDING&&(o=n.pkcs0pad(s)),YWt.publicEncrypt({key:t.rsaUtils.exportKey("public"),padding:a},o)},decrypt:function(s,i){if(i)return r.decrypt(s,i);var a=CN.RSA_PKCS1_OAEP_PADDING;t.encryptionScheme==="pkcs1"&&(a=CN.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(a=t.encryptionSchemeOptions.padding);var o=YWt.privateDecrypt({key:t.rsaUtils.exportKey("private"),padding:a},s);return a===CN.RSA_NO_PADDING?n.pkcs0unpad(o):o}}}});var JWt=S((sLs,XWt)=>{var DX=require("crypto");XWt.exports={getEngine:function(e,t){var r=PMe();return t.environment==="node"&&typeof DX.publicEncrypt=="function"&&typeof DX.privateDecrypt=="function"&&(typeof DX.privateEncrypt=="function"&&typeof DX.publicDecrypt=="function"?r=zWt():r=WWt()),r(e,t)}}});var nXt=S((tXt,rXt)=>{var PX=fu()._,iLs=require("crypto"),Na=Yb(),ZWt=fu(),eXt=Qb(),R3n=JWt();tXt.BigInteger=Na;rXt.exports.Key=function(){function e(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return e.prototype.setOptions=function(t){var r=eXt[t.signingScheme],n=eXt[t.encryptionScheme];r===n?this.signingScheme=this.encryptionScheme=n.makeScheme(this,t):(this.encryptionScheme=n.makeScheme(this,t),this.signingScheme=r.makeScheme(this,t)),this.encryptEngine=R3n.getEngine(this,t)},e.prototype.generate=function(t,r){var n=t>>1;this.e=parseInt(r,16);for(var s=new Na(r,16);;){for(;this.p=new Na(t-n,1),!(this.p.subtract(Na.ONE).gcd(s).compareTo(Na.ONE)===0&&this.p.isProbablePrime(10)););for(;this.q=new Na(n,1),!(this.q.subtract(Na.ONE).gcd(s).compareTo(Na.ONE)===0&&this.q.isProbablePrime(10)););if(this.p.compareTo(this.q)<=0){var i=this.p;this.p=this.q,this.q=i}var a=this.p.subtract(Na.ONE),o=this.q.subtract(Na.ONE),c=a.multiply(o);if(c.gcd(s).compareTo(Na.ONE)===0){if(this.n=this.p.multiply(this.q),this.n.bitLength()0&&(PX.isNumber(r)||r.length>0)&&n.length>0)this.n=new Na(t),this.e=PX.isNumber(r)?r:ZWt.get32IntFromBuffer(r,0),this.d=new Na(n),s&&i&&a&&o&&c&&(this.p=new Na(s),this.q=new Na(i),this.dmp1=new Na(a),this.dmq1=new Na(o),this.coeff=new Na(c)),this.$$recalculateCache();else throw Error("Invalid RSA private key")},e.prototype.setPublic=function(t,r){if(t&&r&&t.length>0&&(PX.isNumber(r)||r.length>0))this.n=new Na(t),this.e=PX.isNumber(r)?r:ZWt.get32IntFromBuffer(r,0),this.$$recalculateCache();else throw Error("Invalid RSA public key")},e.prototype.$doPrivate=function(t){if(this.p||this.q)return t.modPow(this.d,this.n);for(var r=t.mod(this.p).modPow(this.dmp1,this.p),n=t.mod(this.q).modPow(this.dmq1,this.q);r.compareTo(n)<0;)r=r.add(this.p);return r.subtract(n).multiply(this.coeff).mod(this.p).multiply(this.q).add(n)},e.prototype.$doPublic=function(t){return t.modPowInt(this.e,this.n)},e.prototype.encrypt=function(t,r){var n=[],s=[],i=t.length,a=Math.ceil(i/this.maxMessageLength)||1,o=Math.ceil(i/a||1);if(a==1)n.push(t);else for(var c=0;c0)throw Error("Incorrect data or key");for(var n=[],s=0,i=0,a=t.length/this.encryptedDataLength,o=0;o>3},e}()});var LX=S((aLs,sXt)=>{sXt.exports={newInvalidAsn1Error:function(e){var t=new Error;return t.name="InvalidAsn1Error",t.message=e||"",t}}});var MX=S((oLs,iXt)=>{iXt.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}});var cXt=S((cLs,oXt)=>{var C3n=require("assert"),aXt=h0().Buffer,sU=MX(),x3n=LX(),xN=x3n.newInvalidAsn1Error;function pu(e){if(!e||!aXt.isBuffer(e))throw new TypeError("data must be a node Buffer");this._buf=e,this._size=e.length,this._len=0,this._offset=0}Object.defineProperty(pu.prototype,"length",{enumerable:!0,get:function(){return this._len}});Object.defineProperty(pu.prototype,"offset",{enumerable:!0,get:function(){return this._offset}});Object.defineProperty(pu.prototype,"remain",{get:function(){return this._size-this._offset}});Object.defineProperty(pu.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}});pu.prototype.readByte=function(e){if(this._size-this._offset<1)return null;var t=this._buf[this._offset]&255;return e||(this._offset+=1),t};pu.prototype.peek=function(){return this.readByte(!0)};pu.prototype.readLength=function(e){if(e===void 0&&(e=this._offset),e>=this._size)return null;var t=this._buf[e++]&255;if(t===null)return null;if((t&128)===128){if(t&=127,t===0)throw xN("Indefinite length not supported");if(t>4)throw xN("encoding too long");if(this._size-ethis._size-n)return null;if(this._offset=n,this.length===0)return t?aXt.alloc(0):"";var s=this._buf.slice(this._offset,this._offset+this.length);return this._offset+=this.length,t?s:s.toString("utf8")};pu.prototype.readOID=function(e){e||(e=sU.OID);var t=this.readString(e,!0);if(t===null)return null;for(var r=[],n=0,s=0;s>0),r.join(".")};pu.prototype._readTag=function(e){C3n.ok(e!==void 0);var t=this.peek();if(t===null)return null;if(t!==e)throw xN("Expected 0x"+e.toString(16)+": got 0x"+t.toString(16));var r=this.readLength(this._offset+1);if(r===null)return null;if(this.length>4)throw xN("Integer too long: "+this.length);if(this.length>this._size-r)return null;this._offset=r;for(var n=this._buf[this._offset],s=0,i=0;i>0};oXt.exports=pu});var lXt=S((uLs,uXt)=>{var $y=require("assert"),kX=h0().Buffer,qy=MX(),w3n=LX(),BX=w3n.newInvalidAsn1Error,N3n={size:1024,growthFactor:8};function O3n(e,t){$y.ok(e),$y.equal(typeof e,"object"),$y.ok(t),$y.equal(typeof t,"object");var r=Object.getOwnPropertyNames(e);return r.forEach(function(n){if(!t[n]){var s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s)}}),t}function Cc(e){e=O3n(N3n,e||{}),this._buf=kX.alloc(e.size||1024),this._size=this._buf.length,this._offset=0,this._options=e,this._seq=[]}Object.defineProperty(Cc.prototype,"buffer",{get:function(){if(this._seq.length)throw BX(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}});Cc.prototype.writeByte=function(e){if(typeof e!="number")throw new TypeError("argument must be a Number");this._ensure(1),this._buf[this._offset++]=e};Cc.prototype.writeInt=function(e,t){if(typeof e!="number")throw new TypeError("argument must be a Number");typeof t!="number"&&(t=qy.Integer);for(var r=4;(!(e&4286578688)||(e&4286578688)===-8388608)&&r>1;)r--,e<<=8;if(r>4)throw BX("BER ints cannot be > 0xffffffff");for(this._ensure(2+r),this._buf[this._offset++]=t,this._buf[this._offset++]=r;r-- >0;)this._buf[this._offset++]=(e&4278190080)>>>24,e<<=8};Cc.prototype.writeNull=function(){this.writeByte(qy.Null),this.writeByte(0)};Cc.prototype.writeEnumeration=function(e,t){if(typeof e!="number")throw new TypeError("argument must be a Number");return typeof t!="number"&&(t=qy.Enumeration),this.writeInt(e,t)};Cc.prototype.writeBoolean=function(e,t){if(typeof e!="boolean")throw new TypeError("argument must be a Boolean");typeof t!="number"&&(t=qy.Boolean),this._ensure(3),this._buf[this._offset++]=t,this._buf[this._offset++]=1,this._buf[this._offset++]=e?255:0};Cc.prototype.writeString=function(e,t){if(typeof e!="string")throw new TypeError("argument must be a string (was: "+typeof e+")");typeof t!="number"&&(t=qy.OctetString);var r=kX.byteLength(e);this.writeByte(t),this.writeLength(r),r&&(this._ensure(r),this._buf.write(e,this._offset),this._offset+=r)};Cc.prototype.writeBuffer=function(e,t){if(typeof t!="number")throw new TypeError("tag must be a number");if(!kX.isBuffer(e))throw new TypeError("argument must be a buffer");this.writeByte(t),this.writeLength(e.length),this._ensure(e.length),e.copy(this._buf,this._offset,0,e.length),this._offset+=e.length};Cc.prototype.writeStringArray=function(e){if(!e instanceof Array)throw new TypeError("argument must be an Array[String]");var t=this;e.forEach(function(r){t.writeString(r)})};Cc.prototype.writeOID=function(e,t){if(typeof e!="string")throw new TypeError("argument must be a string");if(typeof t!="number"&&(t=qy.OID),!/^([0-9]+\.){3,}[0-9]+$/.test(e))throw new Error("argument is not a valid OID string");function r(a,o){o<128?a.push(o):o<16384?(a.push(o>>>7|128),a.push(o&127)):o<2097152?(a.push(o>>>14|128),a.push((o>>>7|128)&255),a.push(o&127)):o<268435456?(a.push(o>>>21|128),a.push((o>>>14|128)&255),a.push((o>>>7|128)&255),a.push(o&127)):(a.push((o>>>28|128)&255),a.push((o>>>21|128)&255),a.push((o>>>14|128)&255),a.push((o>>>7|128)&255),a.push(o&127))}var n=e.split("."),s=[];s.push(parseInt(n[0],10)*40+parseInt(n[1],10)),n.slice(2).forEach(function(a){r(s,parseInt(a,10))});var i=this;this._ensure(2+s.length),this.writeByte(t),this.writeLength(s.length),s.forEach(function(a){i.writeByte(a)})};Cc.prototype.writeLength=function(e){if(typeof e!="number")throw new TypeError("argument must be a Number");if(this._ensure(4),e<=127)this._buf[this._offset++]=e;else if(e<=255)this._buf[this._offset++]=129,this._buf[this._offset++]=e;else if(e<=65535)this._buf[this._offset++]=130,this._buf[this._offset++]=e>>8,this._buf[this._offset++]=e;else if(e<=16777215)this._buf[this._offset++]=131,this._buf[this._offset++]=e>>16,this._buf[this._offset++]=e>>8,this._buf[this._offset++]=e;else throw BX("Length too long (> 4 bytes)")};Cc.prototype.startSequence=function(e){typeof e!="number"&&(e=qy.Sequence|qy.Constructor),this.writeByte(e),this._seq.push(this._offset),this._ensure(3),this._offset+=3};Cc.prototype.endSequence=function(){var e=this._seq.pop(),t=e+3,r=this._offset-t;if(r<=127)this._shift(t,r,-2),this._buf[e]=r;else if(r<=255)this._shift(t,r,-1),this._buf[e]=129,this._buf[e+1]=r;else if(r<=65535)this._buf[e]=130,this._buf[e+1]=r>>8,this._buf[e+2]=r;else if(r<=16777215)this._shift(t,r,1),this._buf[e]=131,this._buf[e+1]=r>>16,this._buf[e+2]=r>>8,this._buf[e+3]=r;else throw BX("Sequence too long")};Cc.prototype._shift=function(e,t,r){$y.ok(e!==void 0),$y.ok(t!==void 0),$y.ok(r),this._buf.copy(this._buf,e+r,e,e+t),this._offset+=r};Cc.prototype._ensure=function(e){if($y.ok(e),this._size-this._offset{var LMe=LX(),MMe=MX(),D3n=cXt(),P3n=lXt();$X.exports={Reader:D3n,Writer:P3n};for(UX in MMe)MMe.hasOwnProperty(UX)&&($X.exports[UX]=MMe[UX]);var UX;for(FX in LMe)LMe.hasOwnProperty(FX)&&($X.exports[FX]=LMe[FX]);var FX});var qX=S((dLs,fXt)=>{var kMe=dXt();fXt.exports={Ber:kMe,BerReader:kMe.Reader,BerWriter:kMe.Writer}});var AXt=S((fLs,jX)=>{var HX=qX().Ber,hXt=fu()._,VX=fu(),pXt="-----BEGIN RSA PRIVATE KEY-----",mXt="-----END RSA PRIVATE KEY-----",gXt="-----BEGIN RSA PUBLIC KEY-----",_Xt="-----END RSA PUBLIC KEY-----";jX.exports={privateExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=e.d.toBuffer(),s=e.p.toBuffer(),i=e.q.toBuffer(),a=e.dmp1.toBuffer(),o=e.dmq1.toBuffer(),c=e.coeff.toBuffer(),u=r.length+n.length+s.length+i.length+a.length+o.length+c.length+512,l=new HX.Writer({size:u});return l.startSequence(),l.writeInt(0),l.writeBuffer(r,2),l.writeInt(e.e),l.writeBuffer(n,2),l.writeBuffer(s,2),l.writeBuffer(i,2),l.writeBuffer(a,2),l.writeBuffer(o,2),l.writeBuffer(c,2),l.endSequence(),t.type==="der"?l.buffer:pXt+` -`+VX.linebrk(l.buffer.toString("base64"),64)+` -`+mXt},privateImport:function(e,t,r){r=r||{};var n;if(r.type!=="der")if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),hXt.isString(t)){var s=VX.trimSurroundingText(t,pXt,mXt).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}else throw Error("Unsupported key format");else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new HX.Reader(n);i.readSequence(),i.readString(2,!0),e.setPrivate(i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0))},publicExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=r.length+512,s=new HX.Writer({size:n});return s.startSequence(),s.writeBuffer(r,2),s.writeInt(e.e),s.endSequence(),t.type==="der"?s.buffer:gXt+` -`+VX.linebrk(s.buffer.toString("base64"),64)+` -`+_Xt},publicImport:function(e,t,r){r=r||{};var n;if(r.type!=="der"){if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),hXt.isString(t)){var s=VX.trimSurroundingText(t,gXt,_Xt).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}}else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new HX.Reader(n);i.readSequence(),e.setPublic(i.readString(2,!0),i.readString(2,!0))},autoImport:function(e,t){return/^[\S\s]*-----BEGIN RSA PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PRIVATE KEY-----[\S\s]*$/g.test(t)?(jX.exports.privateImport(e,t),!0):/^[\S\s]*-----BEGIN RSA PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PUBLIC KEY-----[\S\s]*$/g.test(t)?(jX.exports.publicImport(e,t),!0):!1}}});var bXt=S((hLs,zX)=>{var Fp=qX().Ber,EXt=fu()._,KX="1.2.840.113549.1.1.1",GX=fu(),yXt="-----BEGIN PRIVATE KEY-----",vXt="-----END PRIVATE KEY-----",SXt="-----BEGIN PUBLIC KEY-----",TXt="-----END PUBLIC KEY-----";zX.exports={privateExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=e.d.toBuffer(),s=e.p.toBuffer(),i=e.q.toBuffer(),a=e.dmp1.toBuffer(),o=e.dmq1.toBuffer(),c=e.coeff.toBuffer(),u=r.length+n.length+s.length+i.length+a.length+o.length+c.length+512,l=new Fp.Writer({size:u});l.startSequence(),l.writeInt(0),l.writeBuffer(r,2),l.writeInt(e.e),l.writeBuffer(n,2),l.writeBuffer(s,2),l.writeBuffer(i,2),l.writeBuffer(a,2),l.writeBuffer(o,2),l.writeBuffer(c,2),l.endSequence();var d=new Fp.Writer({size:u});return d.startSequence(),d.writeInt(0),d.startSequence(),d.writeOID(KX),d.writeNull(),d.endSequence(),d.writeBuffer(l.buffer,4),d.endSequence(),t.type==="der"?d.buffer:yXt+` -`+GX.linebrk(d.buffer.toString("base64"),64)+` -`+vXt},privateImport:function(e,t,r){r=r||{};var n;if(r.type!=="der")if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),EXt.isString(t)){var s=GX.trimSurroundingText(t,yXt,vXt).replace("-----END PRIVATE KEY-----","").replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}else throw Error("Unsupported key format");else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new Fp.Reader(n);i.readSequence(),i.readInt(0);var a=new Fp.Reader(i.readString(48,!0));if(a.readOID(6,!0)!==KX)throw Error("Invalid Public key format");var o=new Fp.Reader(i.readString(4,!0));o.readSequence(),o.readString(2,!0),e.setPrivate(o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0))},publicExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=r.length+512,s=new Fp.Writer({size:n});s.writeByte(0),s.startSequence(),s.writeBuffer(r,2),s.writeInt(e.e),s.endSequence();var i=new Fp.Writer({size:n});return i.startSequence(),i.startSequence(),i.writeOID(KX),i.writeNull(),i.endSequence(),i.writeBuffer(s.buffer,3),i.endSequence(),t.type==="der"?i.buffer:SXt+` -`+GX.linebrk(i.buffer.toString("base64"),64)+` -`+TXt},publicImport:function(e,t,r){r=r||{};var n;if(r.type!=="der"){if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),EXt.isString(t)){var s=GX.trimSurroundingText(t,SXt,TXt).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}}else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new Fp.Reader(n);i.readSequence();var a=new Fp.Reader(i.readString(48,!0));if(a.readOID(6,!0)!==KX)throw Error("Invalid Public key format");var o=new Fp.Reader(i.readString(3,!0));o.readByte(),o.readSequence(),e.setPublic(o.readString(2,!0),o.readString(2,!0))},autoImport:function(e,t){return/^[\S\s]*-----BEGIN PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PRIVATE KEY-----[\S\s]*$/g.test(t)?(zX.exports.privateImport(e,t),!0):/^[\S\s]*-----BEGIN PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PUBLIC KEY-----[\S\s]*$/g.test(t)?(zX.exports.publicImport(e,t),!0):!1}}});var IXt=S((gLs,YX)=>{var pLs=fu()._,mLs=fu();YX.exports={privateExport:function(e,t){return{n:e.n.toBuffer(),e:e.e,d:e.d.toBuffer(),p:e.p.toBuffer(),q:e.q.toBuffer(),dmp1:e.dmp1.toBuffer(),dmq1:e.dmq1.toBuffer(),coeff:e.coeff.toBuffer()}},privateImport:function(e,t,r){if(t.n&&t.e&&t.d&&t.p&&t.q&&t.dmp1&&t.dmq1&&t.coeff)e.setPrivate(t.n,t.e,t.d,t.p,t.q,t.dmp1,t.dmq1,t.coeff);else throw Error("Invalid key data")},publicExport:function(e,t){return{n:e.n.toBuffer(),e:e.e}},publicImport:function(e,t,r){if(t.n&&t.e)e.setPublic(t.n,t.e);else throw Error("Invalid key data")},autoImport:function(e,t){return t.n&&t.e?t.d&&t.p&&t.q&&t.dmp1&&t.dmq1&&t.coeff?(YX.exports.privateImport(e,t),!0):(YX.exports.publicImport(e,t),!0):!1}}});var NXt=S((_Ls,QX)=>{var RXt=fu()._,CXt=fu(),iU=Yb(),xXt="-----BEGIN OPENSSH PRIVATE KEY-----",wXt="-----END OPENSSH PRIVATE KEY-----";QX.exports={privateExport:function(e,t){let r=e.n.toBuffer(),n=Buffer.alloc(4);for(n.writeUInt32BE(e.e,0);n[0]===0;)n=n.slice(1);let s=e.d.toBuffer(),i=e.coeff.toBuffer(),a=e.p.toBuffer(),o=e.q.toBuffer(),c;typeof e.sshcomment<"u"?c=Buffer.from(e.sshcomment):c=Buffer.from([]);let u=15+n.byteLength+4+r.byteLength,l=23+r.byteLength+4+n.byteLength+4+s.byteLength+4+i.byteLength+4+a.byteLength+4+o.byteLength+4+c.byteLength,d=43+u+4+l,f=Math.ceil(l/8)*8-l;d+=f;let h=Buffer.alloc(d),p={buf:h,off:0};h.write("openssh-key-v1","utf8"),h.writeUInt8(0,14),p.off+=15,Do(p,Buffer.from("none")),Do(p,Buffer.from("none")),Do(p,Buffer.from("")),p.off=p.buf.writeUInt32BE(1,p.off),p.off=p.buf.writeUInt32BE(u,p.off),Do(p,Buffer.from("ssh-rsa")),Do(p,n),Do(p,r),p.off=p.buf.writeUInt32BE(d-47-u,p.off),p.off+=8,Do(p,Buffer.from("ssh-rsa")),Do(p,r),Do(p,n),Do(p,s),Do(p,i),Do(p,a),Do(p,o),Do(p,c);let m=1;for(;p.off{var ALs=fu()._;function OXt(e){e=e.split("-");for(var t="private",r={type:"default"},n=1;n{var PXt=require("constants"),L3n=nXt(),yLs=require("crypto"),vLs=qX().Ber,nd=fu()._,M3n=fu(),LXt=Qb(),MXt=DXt();typeof PXt.RSA_NO_PADDING>"u"&&(PXt.RSA_NO_PADDING=3);kXt.exports=function(){var e={node10:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],node:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],iojs:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],browser:["md5","ripemd160","sha1","sha256","sha512"]},t="pkcs1_oaep",r="pkcs1",n="private",s={private:"pkcs1-private-pem","private-der":"pkcs1-private-der",public:"pkcs8-public-pem","public-der":"pkcs8-public-der"};function i(a,o,c){if(!(this instanceof i))return new i(a,o,c);nd.isObject(o)&&(c=o,o=void 0),this.$options={signingScheme:r,signingSchemeOptions:{hash:"sha256",saltLength:null},encryptionScheme:t,encryptionSchemeOptions:{hash:"sha1",label:null},environment:M3n.detectEnvironment(),rsaUtils:this},this.keyPair=new L3n.Key,this.$cache={},Buffer.isBuffer(a)||nd.isString(a)?this.importKey(a,o):nd.isObject(a)&&this.generateKeyPair(a.b,a.e),this.setOptions(c)}return i.prototype.setOptions=function(a){if(a=a||{},a.environment&&(this.$options.environment=a.environment),a.signingScheme){if(nd.isString(a.signingScheme)){var o=a.signingScheme.toLowerCase().split("-");o.length==1?e.node.indexOf(o[0])>-1?(this.$options.signingSchemeOptions={hash:o[0]},this.$options.signingScheme=r):(this.$options.signingScheme=o[0],this.$options.signingSchemeOptions={hash:null}):(this.$options.signingSchemeOptions={hash:o[1]},this.$options.signingScheme=o[0])}else nd.isObject(a.signingScheme)&&(this.$options.signingScheme=a.signingScheme.scheme||r,this.$options.signingSchemeOptions=nd.omit(a.signingScheme,"scheme"));if(!LXt.isSignature(this.$options.signingScheme))throw Error("Unsupported signing scheme");if(this.$options.signingSchemeOptions.hash&&e[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash)===-1)throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}if(a.encryptionScheme){if(nd.isString(a.encryptionScheme)?(this.$options.encryptionScheme=a.encryptionScheme.toLowerCase(),this.$options.encryptionSchemeOptions={}):nd.isObject(a.encryptionScheme)&&(this.$options.encryptionScheme=a.encryptionScheme.scheme||t,this.$options.encryptionSchemeOptions=nd.omit(a.encryptionScheme,"scheme")),!LXt.isEncryption(this.$options.encryptionScheme))throw Error("Unsupported encryption scheme");if(this.$options.encryptionSchemeOptions.hash&&e[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash)===-1)throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}this.keyPair.setOptions(this.$options)},i.prototype.generateKeyPair=function(a,o){if(a=a||2048,o=o||65537,a%8!==0)throw Error("Key size must be a multiple of 8.");return this.keyPair.generate(a,o.toString(16)),this.$cache={},this},i.prototype.importKey=function(a,o){if(!a)throw Error("Empty key given");if(o&&(o=s[o]||o),!MXt.detectAndImport(this.keyPair,a,o)&&o===void 0)throw Error("Key format must be specified");return this.$cache={},this},i.prototype.exportKey=function(a){return a=a||n,a=s[a]||a,this.$cache[a]||(this.$cache[a]=MXt.detectAndExport(this.keyPair,a)),this.$cache[a]},i.prototype.isPrivate=function(){return this.keyPair.isPrivate()},i.prototype.isPublic=function(a){return this.keyPair.isPublic(a)},i.prototype.isEmpty=function(a){return!(this.keyPair.n||this.keyPair.e||this.keyPair.d)},i.prototype.encrypt=function(a,o,c){return this.$$encryptKey(!1,a,o,c)},i.prototype.decrypt=function(a,o){return this.$$decryptKey(!1,a,o)},i.prototype.encryptPrivate=function(a,o,c){return this.$$encryptKey(!0,a,o,c)},i.prototype.decryptPublic=function(a,o){return this.$$decryptKey(!0,a,o)},i.prototype.$$encryptKey=function(a,o,c,u){try{var l=this.keyPair.encrypt(this.$getDataForEncrypt(o,u),a);return c=="buffer"||!c?l:l.toString(c)}catch(d){throw Error("Error during encryption. Original error: "+d)}},i.prototype.$$decryptKey=function(a,o,c){try{o=nd.isString(o)?Buffer.from(o,"base64"):o;var u=this.keyPair.decrypt(o,a);if(u===null)throw Error("Key decrypt method returns null.");return this.$getDecryptedData(u,c)}catch(l){throw Error("Error during decryption (probably incorrect key). Original error: "+l)}},i.prototype.sign=function(a,o,c){if(!this.isPrivate())throw Error("This is not private key");var u=this.keyPair.sign(this.$getDataForEncrypt(a,c));return o&&o!="buffer"&&(u=u.toString(o)),u},i.prototype.verify=function(a,o,c,u){if(!this.isPublic())throw Error("This is not public key");return u=!u||u=="buffer"?null:u,this.keyPair.verify(this.$getDataForEncrypt(a,c),o,u)},i.prototype.getKeySize=function(){return this.keyPair.keySize},i.prototype.getMaxMessageSize=function(){return this.keyPair.maxMessageLength},i.prototype.$getDataForEncrypt=function(a,o){if(nd.isString(a)||nd.isNumber(a))return Buffer.from(""+a,o||"utf8");if(Buffer.isBuffer(a))return a;if(nd.isObject(a))return Buffer.from(JSON.stringify(a));throw Error("Unexpected data type")},i.prototype.$getDecryptedData=function(a,o){return o=o||"buffer",o=="buffer"?a:o=="json"?JSON.parse(a.toString()):a.toString(o)},i}()});var HXt={};Ft(HXt,{default:()=>W3n});function $Xt(e){let t=String(e||"").trim();if(!t)return!1;try{let r=new URL(t);return/^app\.wanglaoshi\.(?:xn--fiqs8s|中国)$/i.test(r.hostname)&&/\/hls\/index\.m3u8$/i.test(r.pathname)}catch{return!1}}function qXt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function k3n(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function F3n(e,t){if(!t||typeof t!="object"||Array.isArray(t))return`${e}:${JSON.stringify(t)}`;let r=Object.entries(t).sort(([n],[s])=>n.localeCompare(s));return`${e}:${JSON.stringify(Object.fromEntries(r))}`}function $3n(e){if(!e||typeof e!="object")return[];let t=[];for(let[r,n]of Object.entries(e))n?.param&&t.push({resolution:r,param:n.param,priority:UMe(r)});return t.sort((r,n)=>n.priority-r.priority),t}function UMe(e){if(!e)return 0;let t=e.toLowerCase().replace(/p$/i,"");if(Object.prototype.hasOwnProperty.call(UXt,t))return UXt[t];let r=parseInt(t,10);return isNaN(r)?1:r>=4320?100:r>=2160?90:r>=1440?85:r>=1080?80:r>=720?70:r>=480?50:r>=360?40:30}async function q3n(e){let t=e.server.config?.guazi;return t&&(t.url&&(z0.url=t.url),t.token&&(z0.token=t.token)),{}}async function H3n(){let e=Yr("guazi",arguments[0]||{}),t=Qr(e);if(t)return t;let r={class:B3n,filters:U3n};return dn(e,r,Tt.static),r}function V3n(e){let t=e?.body||{},r=t.filters||t.extend||t.ext||t.filter||{};return r&&typeof r=="object"&&!Array.isArray(r)?r:{}}async function j3n(e){let t=e?.body||{},r=String(t.id||"").trim(),n=Math.max(1,parseInt(t.page,10)||1),s=V3n(e),i=30,a=await cU.request({area:s.area||"0",year:s.year||"0",pageSize:i.toString(),sort:s.sort||"d_id",page:n.toString(),tid:r},oU.INDEX_LIST,"category"),o=(a?.list||[]).map(f=>({vod_id:qXt(f.vod_id,{vod_pic:f.vod_pic||"",vod_remarks:(f.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${f.vod_continu}\u96C6`}),vod_name:f.vod_name||"",vod_pic:f.vod_pic||"",vod_remarks:(f.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${f.vod_continu}\u96C6`})),c=Number(a?.total),u=Number(a?.pageSize)||i,l=Number.isFinite(c)&&c>=0?c:o.length,d=l>0?Math.ceil(l/u):0;return{list:o,page:n,pagecount:d,limit:u,total:l}}async function K3n(e){let r=(Array.isArray(e.body.id)?e.body.id:[e.body.id]).map(async s=>{if(!s)return null;let i=k3n(s),a=String(i.id||"").trim();if(!a)return null;try{let[o,c]=await Promise.all([cU.request({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),token:z0.token},oU.PLAY_INFO,"detail"),cU.request({vurl_cloud_id:"2",vod_d_id:a},oU.VURL_SHOW,"detail")]);if(!o?.vodInfo)return null;let u=o.vodInfo,l={vod_id:a,vod_name:u.vod_name||"",vod_pic:i.meta?.vod_pic||u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_remarks:i.meta?.vod_remarks||(u.vod_continu?`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`:""),vod_content:(u.vod_use_content||"").trim(),vod_play_from:"\u55F7\u545C\u8981\u5403\u74DC"},d=[];return c?.list&&c.list.forEach((f,h)=>{let p=$3n(f?.play);if(p.length===0)return;let m=c.list.length===1?u.vod_name||"":(h+1).toString(),_=p[0].param,g=p.map(A=>A.resolution),y=`${_}||${g.join("@")}`;d.push(`${m}$${y}`)}),l.vod_play_url=d.join("#"),l}catch{return null}});return{list:(await Promise.all(r)).filter(s=>s!==null)}}async function G3n(e){let{id:t}=e.body;try{if(!t)return aU;let r=String(t).split("||");if(r.length<2)return aU;let n=r[0],s=r[1].split("@").filter(Boolean),i=Object.fromEntries(new URLSearchParams(n));if(Object.keys(i).length===0)return aU;s.length>0&&(s.sort((o,c)=>UMe(c)-UMe(o)),i.resolution=s[0]);let a=await cU.request(i,oU.VURL_DETAIL,"play");return a?.url?$Xt(a.url)?{parse:0,url:"",message:"\u74DC\u5B50\u64AD\u653E\u51ED\u8BC1\u5DF2\u5931\u6548\uFF0C\u63A5\u53E3\u8FD4\u56DE\u56FA\u5B9A\u5E7F\u544A\u89C6\u9891"}:{parse:0,url:a.url,header:{"User-Agent":"Lavf/57.83.100"}}:aU}catch{return aU}}async function z3n(e){let{wd:t,page:r=1}=e.body,n=String(t||"").trim();if(!n)return{list:[],page:1,pagecount:0,total:0};let s=await cU.request({keywords:n,order_val:"1",page:r.toString()},oU.FIND_MORE,"search",0),i=s?.list||[];if(i.length>0){let o=n.toLowerCase();i=i.filter(c=>c.vod_name&&c.vod_name.toLowerCase().includes(o))}return{list:i.map(o=>({vod_id:qXt(o.vod_id||"",{vod_pic:o.vod_pic||"",vod_remarks:(o.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${o.vod_continu}\u96C6`}),vod_name:o.vod_name||"",vod_pic:o.vod_pic||"",vod_remarks:(o.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${o.vod_continu}\u96C6`})),page:parseInt(r,10),pagecount:s?.totalPage||9999,limit:30,total:s?.total||999999}}async function Y3n(){return WX.clear(),{success:!0,message:"\u7F13\u5B58\u5DF2\u6E05\u7A7A"}}async function Q3n(){let e=WX.getStats();return{success:!0,stats:e,message:`\u7F13\u5B58\u7EDF\u8BA1\uFF1A\u603B\u8BA1${e.total}\u6761`}}var mu,FXt,z0,oU,aU,B3n,U3n,BMe,WX,UXt,FMe,wN,$Me,cU,W3n,VXt=ae(()=>{Hr();Hr();Nn();mu=Ne(Gi(),1),FXt=Ne(BXt(),1);da();ws();z0={url:"https://apinew.uozvr.com",token:"93dc9bc11f4e25a06f7fecaec15d7586.765e4db48746f95c53cdcee355e4b03ef1526588638bfda463933d481caa7cc37753686b682fdc50f1208ff6109743378bdf8d83ecd5aed38bf4552dc9c2e39dc6ee39838fab59abdea120dfa95d8d87edf68817d0a18a2beff894840d2dbb0c326a8a3222e1319bfa4104813375de8198a1d7ef85c1be518b5b1f026d02e6567ea64cc63c5177576dab66e2375416db.75c122b780e31ab0bfd365fed7c6af34b90ed74553d3c3a32b2e60492c6d249e",privateKey:`-----BEGIN PRIVATE KEY----- -MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1 -ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU -1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK -ZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7 -HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcW -V9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdI -DblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34 -saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVM -iMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUM -WBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8 -jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ -K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b -L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa -t5lYKfpe8k83ZA== ------END PRIVATE KEY-----`},oU={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},aU={parse:0,url:""};B3n=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"},{type_id:"74",type_name:"AI\u6F2B\u5267"},{type_id:"39",type_name:"\u77ED\u5267\u89E3\u8BF4"},{type_id:"73",type_name:"\u7535\u5F71\u89E3\u8BF4"},{type_id:"70",type_name:"\u7535\u7ADE\u89E3\u8BF4"},{type_id:"71",type_name:"\u4F53\u80B2\u89E3\u8BF4"},{type_id:"72",type_name:"\u97F3\u4E50"}],U3n={1:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u9A6C\u6765\u897F\u4E9A",v:"\u9A6C\u6765\u897F\u4E9A"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],74:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],39:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],73:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],70:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],71:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],72:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},BMe=class{constructor(){this.cache=new Map,this.ttlConfig={category:3e5,detail:6e5,play:3e5,search:6e4},this.maxSize=200}get(t){let r=this.cache.get(t);if(!r)return null;let n=this.ttlConfig[r.type]||3e5;return Date.now()-r.timestamp>n?(this.cache.delete(t),null):r.data}set(t,r,n="category"){this.cache.size>=this.maxSize&&this.clearOldest(50),this.cache.set(t,{data:r,timestamp:Date.now(),type:n})}clear(){this.cache.clear()}clearOldest(t=20){let r=Math.min(t,this.cache.size),n=0;for(let s of this.cache.keys())if(this.cache.delete(s),n++,n>=r)break}getStats(){let t={total:this.cache.size,byType:{}};for(let r of this.cache.values())t.byType[r.type]=(t.byType[r.type]||0)+1;return t}},WX=new BMe,UXt={"8k":100,"4k":95,2160:90,1440:85,1080:80,720:70,\u8D85\u6E05:75,\u9AD8\u6E05:65,\u6807\u6E05:55,480:50,360:40,\u6D41\u7545:30,240:20,144:10};FMe=class{constructor(){this.aesKey=mu.default.enc.Utf8.parse("mvXBSW7ekreItNsT"),this.aesIv=mu.default.enc.Utf8.parse("2U3IrJL8szAKp0Fj"),this.staticKeys="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",this.rsa=new FXt.default(z0.privateKey),this.rsa.setOptions({encryptionScheme:"pkcs1"})}md5(t){return mu.default.MD5(t).toString()}aesEncrypt(t){try{return mu.default.AES.encrypt(t,this.aesKey,{iv:this.aesIv,mode:mu.default.mode.CBC,padding:mu.default.pad.Pkcs7}).ciphertext.toString(mu.default.enc.Hex).toUpperCase()}catch{return""}}aesDecrypt(t,r,n){try{let s=mu.default.enc.Utf8.parse(r),i=mu.default.enc.Utf8.parse(n),a=mu.default.enc.Hex.parse(t);return mu.default.AES.decrypt({ciphertext:a},s,{iv:i,mode:mu.default.mode.CBC,padding:mu.default.pad.Pkcs7}).toString(mu.default.enc.Utf8)}catch{return""}}rsaDecrypt(t){try{return this.rsa.decrypt(Buffer.from(t,"base64"),"utf8")}catch{return""}}generateSignature(t,r){let n=`token_id=,token=${z0.token},phone_type=1,request_key=${t},app_id=1,time=${r},keys=${this.staticKeys}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return this.md5(n)}},wN=new FMe,$Me=class{constructor(){let{httpsAgent:t}=Zn({insecure:!0});this.axiosConfig={httpsAgent:t,timeout:1e4,headers:{"Cache-Control":"no-cache",Version:"2605015",PackageName:"com.t8d8f221c5.w83fd19f8e.jab3d285b920260604",Ver:"3.0.4.8","Api-Ver":"3.0.4.8",Code:"GZ0313",Referer:z0.url,"Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},this.retryConfig={maxRetries:2,retryDelay:1e3}}async request(t,r,n="category",s=this.retryConfig.maxRetries){let a=`${wN.md5(`${z0.url}|${z0.token}`).slice(0,16)}:${F3n(r,t)}`;if(n!=="none"){let c=WX.get(a);if(c)return c}let o=`${n}:${a}`;return Un("guazi",n,o,async()=>{let c=null;for(let u=0;u<=s;u++)try{let l=wN.aesEncrypt(JSON.stringify(t));if(!l)throw new Error("AES\u52A0\u5BC6\u5931\u8D25");let d=Math.floor(Date.now()/1e3).toString(),f=wN.generateSignature(l,d),h=new URLSearchParams({token:z0.token,token_id:"",phone_type:"1",time:d,phone_model:"samsung-sm-n9860",keys:wN.staticKeys,request_key:l,signature:f,app_id:"1",ad_version:"1"}).toString(),p=await Xe.post(`${z0.url}${r}`,h,{...this.axiosConfig,headers:{...this.axiosConfig.headers,Referer:z0.url},timeout:8e3+u*2e3});if(p.status!==200||!p.data?.data)throw new Error(`API\u54CD\u5E94\u5F02\u5E38: ${p.status}`);let m=wN.rsaDecrypt(p.data.data.keys);if(!m)throw new Error("RSA\u89E3\u5BC6\u5931\u8D25");let _=JSON.parse(m),g=wN.aesDecrypt(p.data.data.response_key,_.key,_.iv);if(!g)throw new Error("AES\u89E3\u5BC6\u5931\u8D25");let y=JSON.parse(g);return n!=="none"&&y&&!(n==="play"&&$Xt(y.url))&&WX.set(a,y,n),y}catch(l){c=l,u{e.post("/init",q3n),e.post("/home",H3n),e.post("/category",j3n),e.post("/detail",K3n),e.post("/play",G3n),e.post("/search",z3n),e.get("/clear-cache",Y3n),e.get("/cache-stats",Q3n)}}});var dJt={};Ft(dJt,{buildPowMessage:()=>GMe,buildVerifyReadyPayload:()=>lJt,createWGenerator:()=>YMe,detectGapByTemplate:()=>cJt,detectGapX:()=>oJt,fetchGeetestLoad:()=>aJt,fetchVerifyConfig:()=>iJt,initSiteAuth:()=>zMe,prepareChallenge:()=>XMe,solveGeetestChallenge:()=>QMe,solveVerifyToken:()=>EUn,submitAuthVerify:()=>WMe,verifyGeetest:()=>uJt});function oUn(e){return new Promise(t=>setTimeout(t,e))}function cUn(e){let t=String(e?.code||"");return t==="ECONNABORTED"||t==="ETIMEDOUT"||t==="ECONNRESET"||t==="EAI_AGAIN"||t==="ENOTFOUND"}async function eJ(e,t={}){let r=Math.max(0,Number(t.retries??iUn)),n=Math.max(0,Number(t.delayMs??aUn)),s=null;for(let i=0;i<=r;i+=1)try{return await e(i)}catch(a){if(s=a,i>=r||!cUn(a))throw a;await oUn(n*(i+1))}throw s||new Error("request failed")}function VMe(e){let t=String(e||""),r="0x1A2B3C4D5E6F7A8B9C",n="";for(let s=0;si[o]||"").join("");return a=a.replace(/1/g,"i").replace(/0/g,"o").replace(/5/g,"s"),$p.default.createHmac("sha256",String(r||"")).update(a).digest("hex")}function uUn(e){return $p.default.createHash("md5").update(String(e||"")).digest("hex")}function jMe(e=16){return $p.default.randomBytes(e).toString("hex")}function KMe(e){return Buffer.from(e).toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function lUn(e){return KMe(Buffer.from(String(e||""),"utf8"))}function jXt(){return $p.default.randomBytes(8).toString("hex")}function dUn(){let e=X3n.replace(/^00/,""),t=qMe.length%2===0?qMe:`0${qMe}`;return $p.default.createPublicKey({key:{kty:"RSA",n:KMe(Buffer.from(e,"hex")),e:KMe(Buffer.from(t,"hex"))},format:"jwk"})}function KXt(e,t){return $p.default.publicEncrypt({key:e,padding:$p.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t||""),"utf8")).toString("hex")}function fUn(e,t){let r=$p.default.createCipheriv("aes-128-cbc",Buffer.from(String(t||""),"utf8"),Buffer.from(J3n,"utf8"));return Buffer.concat([r.update(String(e||""),"utf8"),r.final()]).toString("hex")}function hUn(e){let t=String(e||"");return t.length<30?{}:{[t.slice(24,28)]:{[t[29]+t[27]+t[15]+t[9]]:t.slice(1,9)}}}function ZXt(e){let t=Number(e);return!Number.isFinite(t)||t<0?0:Math.max(0,Math.round(t))}function pUn(e){return e/Z3n+2}function GMe(e,t,r){return[String(e?.version||1),String(e?.bits||0),String(e?.hashfunc||"md5"),String(e?.datetime||""),String(t||""),String(r||""),"",jMe(8)].join("|")}function eJt(){return HMe=(HMe+1)%1e3,`geetest_${Date.now()}`}function tJt(e){let t=String(e||"").trim(),r=t.indexOf("("),n=t.lastIndexOf(")");if(r<0||n<=r)return null;try{return JSON.parse(t.slice(r+1,n))}catch{return null}}function mUn(e,t=240){let r=String(e||"");return r.length<=t*2?r:`${r.slice(0,t)} ... ${r.slice(-t)}`}async function rJt(e,t={},r={}){let{retries:n,retryDelayMs:s,...i}=r||{},a=await eJ(()=>Xe.get(e,{headers:t,timeout:i.timeout||ZX,validateStatus:()=>!0,...i}),{retries:n,delayMs:s});return{status:Number(a?.status||0),headers:a?.headers||{},text:typeof a?.data=="string"?a.data:JSON.stringify(a?.data||{})}}async function GXt(e,t={}){let r=await eJ(()=>Xe.get(e,{headers:t,timeout:ZX,responseType:"arraybuffer",validateStatus:()=>!0}));return Buffer.from(r.data||[])}async function nJt(e,t={}){return(await rJt(e,t)).text}async function sJt(e,t={}){let r=await nJt(e,t);try{return JSON.parse(r)}catch{return null}}function JX(e){if(!e?.length)return null;try{let t=YXt.PNG.sync.read(e);return{data:t.data,width:Number(t.width||0),height:Number(t.height||0),channels:4,format:"png"}}catch{return null}}function gUn(e){let t=e.width*e.height,r=Buffer.alloc(t);for(let n=0;nXe.get(`${gu}/api/stats/track`,{headers:{...XX,referer:`${gu}/m/index`},timeout:Math.min(ZX,15e3),validateStatus:()=>!0})),t=e.headers?.["set-cookie"]||e.headers?.["Set-Cookie"],r=Array.isArray(t)?t.map(l=>String(l).split(";")[0]).join("; "):"",n=jMe(16),s={...XX,cookie:r,referer:`${gu}/m/index`,"x-client-id":n,"x-verify-token":"","x-timestamp":String(Date.now()),"x-report-id":jMe(32)},a=(await sJt(`${gu}/api/system/config`,s))?.data||{},o=VMe(a.session||""),c=VMe(a.traceId||""),u=VMe(a.reportId||"");return{cookie:r,clientId:n,session:o,traceId:c,reportId:u}}async function _Un(e,t,r={}){let n=`${gu}${e}`,s=r.useChecksumTs?XXt(Date.now()):String(Date.now()),i={...XX,cookie:t.cookie,referer:r.referer||`${gu}/m/index`,"x-client-id":t.clientId,"x-verify-token":t.verifyToken||"","x-timestamp":s};return t.reportId&&t.session&&t.traceId&&(i[t.reportId]=JXt(n,s,t.session,t.traceId)),r.extraHeaders&&Object.assign(i,r.extraHeaders),sJt(n,i)}async function iJt(e){return _Un("/api/auth/verify/config",e,{referer:`${gu}/m/verify`,useChecksumTs:!0})}async function aJt({captchaId:e,challenge:t}){let r=eJt(),n=new URLSearchParams({callback:r,captcha_id:e,challenge:t,client_type:"h5",lang:"zho"}),s=`${QXt}/load?${n.toString()}`,i=await rJt(s,{"User-Agent":uU,referer:`${gu}/`});return{callback:r,url:s,status:i.status,headers:i.headers,raw:i.text,data:tJt(i.text)}}async function zXt(e){let t=JX(e);return t?{width:t.width,height:t.height,channels:t.channels,format:t.format}:null}async function oJt(e,t){let r=JX(e);if(!r)return{bestX:0,bestScore:0,top:[],width:0,height:0,yStart:0,yEnd:0};let n=gUn(r),s=Math.max(0,Math.round(t+8)),i=Math.min(n.height,Math.round(t+52)),a={x:-1,score:-1/0},o=[];for(let c=0;c0?n.data[h*n.width+c-1]:m,g=c0?n.data[(h-1)*n.width+c]:m,A=ha.score&&(a={x:c,score:f})}return o.sort((c,u)=>u.score-c.score),{bestX:a.x,bestScore:a.score,top:o.slice(0,10),width:n.width,height:n.height,yStart:s,yEnd:i}}async function cJt(e,t,r){if(!e?.length||!t?.length)return{bestX:0,bestScore:0,top:[]};let n=JX(e),s=JX(t);if(!n||!s)return{bestX:0,bestScore:0,top:[]};let i=[];for(let c=0;c10&&i.push([u,c,l])}let a={x:0,score:-1/0},o=[];for(let c=0;c<=n.width-s.width;c+=1){let u=0;for(let[l,d,f]of i){let h=r+d;if(h<0||h>=n.height)continue;let p=(h*n.width+(c+l))*4,m=(n.data[p]+n.data[p+1]+n.data[p+2])/3;u+=(255-m)*(f/255)}o.push({x:c,score:u}),u>a.score&&(a={x:c,score:u})}return o.sort((c,u)=>u.score-c.score),{bestX:a.x,bestScore:a.score,top:o.slice(0,10)}}function AUn(e={}){let t=String(e.lotNumber||""),r=ZXt(e.setLeft??e.gapX),n=Number.isFinite(Number(e.passtime))?Number(e.passtime):WXt,s=String(e.powMsg||"");return JSON.stringify({setLeft:r,passtime:n,userresponse:pUn(r),device_id:"",lot_number:t,pow_msg:s,pow_sign:uUn(s),geetest:"captcha",lang:"zh",ep:"123",biht:eUn,[tUn]:rUn,...hUn(t),em:{...nUn}})}function YMe(){let e=dUn();return{supported:!0,reason:"",generate(t={}){let r=AUn(t);if(Number(t.pt||1)!==1)return lUn(r);let s=jXt(),i=KXt(e,s);for(;!i||i.length!==256;)s=jXt(),i=KXt(e,s);return fUn(r,s)+i}}}async function uJt(e){let t=eJt(),r=new URLSearchParams({callback:t,captcha_id:e.captchaId,client_type:e.clientType||"web_mobile",lot_number:e.lotNumber,payload:e.payload,process_token:e.processToken,payload_protocol:String(e.payloadProtocol||1),pt:String(e.pt||1),w:e.w}).toString(),n=await nJt(`${QXt}/verify?${r}`,{"User-Agent":uU,referer:`${gu}/`});return{raw:n,data:tJt(n)}}async function QMe(e,t){let r=e.loadData||{},n=String(r.lot_number||""),s=r.pow_detail||{},i=String(r.payload||""),a=String(r.process_token||""),o=Number(r.payload_protocol||1),c=Number(r.pt||1),u=await cJt(e.bgBuffer,e.sliceBuffer,e.ypos),l=[];for(let d of sUn){let f=ZXt(u.bestX+d),h=GMe(s,e.captchaId,n),p=t.generate({captchaId:e.captchaId,lotNumber:n,payload:i,processToken:a,payloadProtocol:o,pt:c,setLeft:f,passtime:WXt,powMsg:h}),m=await uJt({captchaId:e.captchaId,lotNumber:n,payload:i,processToken:a,payloadProtocol:o,pt:c,w:p}),_=m?.data?.data?.result||m?.data?.result||"";if(l.push({delta:d,setLeft:f,powMsg:h,result:_,verify:m.data||null}),_==="success")return{success:!0,templateGap:u,attempts:l,verify:m.data,selected:{delta:d,setLeft:f,powMsg:h}}}return{success:!1,templateGap:u,attempts:l,verify:l.at(-1)?.verify||null,selected:l.at(-1)?{delta:l.at(-1).delta,setLeft:l.at(-1).setLeft,powMsg:l.at(-1).powMsg}:null}}async function WMe(e,t,r){let n=XXt(Date.now()),s={captchaId:r,captchaOutput:t?.seccode?.captcha_output||"",genTime:Number(t?.seccode?.gen_time||0),lotNumber:t?.seccode?.lot_number||"",passToken:t?.seccode?.pass_token||""},i={...XX,cookie:e.cookie,referer:`${gu}/m/verify`,"x-client-id":e.clientId,"x-verify-token":e.verifyToken||"","Content-Type":"application/json","x-timestamp":n};e.reportId&&e.session&&e.traceId&&(i[e.reportId]=JXt(`${gu}/api/auth/verify`,n,e.session,e.traceId));let a=await eJ(()=>Xe.post(`${gu}/api/auth/verify`,s,{headers:i,timeout:ZX,validateStatus:()=>!0}));return typeof a.data=="string"?JSON.parse(a.data):a.data}async function EUn(e={}){let t=await zMe(),r=await XMe(t,e),n=YMe(),s=await QMe(r,n);if(!s.success)return{success:!1,token:"",auth:t,prepared:r,solved:s,authVerify:null};let i=await WMe(t,s.verify?.data,r.captchaId),a=String(i?.data?.token||"");return a&&(t.verifyToken=a),{success:!!(i?.data?.verified&&a),token:a,auth:t,prepared:r,solved:s,authVerify:i}}async function XMe(e,t={}){let r=await iJt(e),n=r?.data?.captchaId||"";if(!n)throw new Error("\u672A\u83B7\u53D6\u5230 captchaId");let s=t.challenge||$p.default.randomUUID(),i=await aJt({captchaId:n,challenge:s}),a=i?.data?.data||{},o=a.bg?`https://static.geetest.com/${a.bg}`:"",c=a.slice?`https://static.geetest.com/${a.slice}`:"",u=Number(a.ypos||0),[l,d]=await Promise.all([o?GXt(o,{"User-Agent":uU,referer:`${gu}/`}):Buffer.alloc(0),c?GXt(c,{"User-Agent":uU,referer:`${gu}/`}):Buffer.alloc(0)]),[f,h]=await Promise.all([zXt(l),zXt(d)]),p=l.length?await oJt(l,u):null;return{verifyConfig:r,captchaId:n,challenge:s,load:i,loadData:a,bgUrl:o,sliceUrl:c,ypos:u,bgBuffer:l,sliceBuffer:d,bgMeta:f,sliceMeta:h,gap:p}}function lJt(e){let t=e.loadData||{},r=e.templateGap||{},n=Number.isFinite(Number(e.selectedSetLeft))?Number(e.selectedSetLeft):Number(r.bestX||e.gap?.bestX||0),s=String(e.selectedPowMsg||GMe(t.pow_detail||{},e.captchaId,t.lot_number||""));return{captchaId:e.captchaId,challenge:e.challenge,lotNumber:t.lot_number||"",payload:t.payload||"",processToken:t.process_token||"",payloadProtocol:Number(t.payload_protocol||1),pt:Number(t.pt||1),gapX:n,setLeft:n,ypos:e.ypos,powMsg:s,staticPath:t.static_path||"",gctPath:t.gct_path||""}}async function yUn(){let e=await zMe();console.log("SITE_AUTH",JSON.stringify(e,null,2));let t=await XMe(e);if(console.log("VERIFY_CONFIG",JSON.stringify(t.verifyConfig,null,2)),console.log("GEETEST_LOAD",JSON.stringify(t.load.data,null,2)),!t.load.data)throw console.log("GEETEST_LOAD_RAW",JSON.stringify({status:t.load.status,contentType:t.load.headers?.["content-type"]||"",preview:mUn(t.load.raw,360)},null,2)),new Error("GeeTest /load \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790");console.log("IMAGE_INFO",JSON.stringify({bgUrl:t.bgUrl,sliceUrl:t.sliceUrl,ypos:t.ypos,bgBytes:t.bgBuffer.length,sliceBytes:t.sliceBuffer.length,bgMeta:t.bgMeta,sliceMeta:t.sliceMeta},null,2)),console.log("GAP",JSON.stringify(t.gap,null,2));let r=YMe();console.log("W_GENERATOR",JSON.stringify({supported:r.supported,reason:r.reason||""},null,2));let n=await QMe(t,r);if(t.templateGap=n.templateGap,t.selectedSetLeft=n.selected?.setLeft??null,t.selectedPowMsg=n.selected?.powMsg??"",console.log("TEMPLATE_GAP",JSON.stringify(n.templateGap,null,2)),console.log("VERIFY_ATTEMPTS",JSON.stringify(n.attempts.map(i=>({delta:i.delta,setLeft:i.setLeft,result:i.result})),null,2)),console.log("GEETEST_VERIFY",JSON.stringify(n.verify,null,2)),!n.success){console.log("VERIFY_READY_PAYLOAD",JSON.stringify({...lJt(t),note:"\u672A\u547D\u4E2D\u6210\u529F offset\uFF0C\u53EF\u6269\u5927\u626B\u63CF\u533A\u95F4\u7EE7\u7EED\u8C03\u8BD5"},null,2));return}let s=await WMe(e,n.verify?.data,t.captchaId);console.log("AUTH_VERIFY",JSON.stringify(s,null,2))}var $p,YXt,gu,QXt,uU,XX,X3n,qMe,J3n,Z3n,eUn,tUn,rUn,nUn,WXt,sUn,ZX,iUn,aUn,HMe,fJt=ae(()=>{$p=Ne(require("crypto"),1);Hr();YXt=Ne(OIe(),1),gu="https://film.symx.club",QXt="https://gcaptcha4.geevisit.com",uU="Mozilla/5.0 (Linux; Android 13; 23049RAD8C Build/TQ3A.230901.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/124.0.6367.82 Mobile Safari/537.36",XX={"User-Agent":uU,"x-platform":"web"},X3n="00C1E3934D1614465B33053E7F48EE4EC87B14B95EF88947713D25EECBFF7E74C7977D02DC1D9451F79DD5D1C10C29ACB6A9B4D6FB7D0A0279B6719E1772565F09AF627715919221AEF91899CAE08C0D686D748B20A3603BE2318CA6BC2B59706592A9219D0BF05C9F65023A21D2330807252AE0066D59CEEFA5F2748EA80BAB81",qMe="10001",J3n="0000000000000000",Z3n=.8876*340/300,eUn="1426265548",tUn="9zXN",rUn="NYzS",nUn={ph:0,cp:0,ek:"11",wd:1,nt:0,si:0,sc:0},WXt=419,sUn=[-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],ZX=Number.parseInt(process.env.MUXI_VERIFY_TIMEOUT_MS||"",10)||25e3,iUn=Math.max(0,Number.parseInt(process.env.MUXI_VERIFY_RETRIES||"",10)||1),aUn=Math.max(200,Number.parseInt(process.env.MUXI_VERIFY_RETRY_DELAY_MS||"",10)||800),HMe=0;process.argv[1]&&/(^|[\/])muxi-geetest-node\.js$/.test(process.argv[1])&&yUn().catch(e=>{console.error("MUXI_GEETEST_NODE_ERROR",e?.stack||e?.message||String(e)),process.exit(1)})});var TJt={};Ft(TJt,{default:()=>aFn});async function IUn(){return JMe||(JMe=Promise.resolve().then(()=>(fJt(),dJt)).then(e=>typeof e.solveVerifyToken=="function"?e.solveVerifyToken:null).catch(e=>(console.error("[muxi] load verify solver failed:",e?.message||String(e)),null))),JMe}function tke(e=16){return rke.default.randomBytes(e).toString("hex")}function RUn(e,t){let r=eke.get(e);return r?Date.now()-r.ts>t?(eke.delete(e),null):r.data:null}function CUn(e,t){eke.set(e,{ts:Date.now(),data:t})}function gJt(e){return Array.isArray(e)?e.map(t=>String(t).split(";")[0]).join("; "):typeof e=="string"&&e.trim()?e.split(";")[0].trim():""}function _Jt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function xUn(e){if(!e)return{};if(typeof e=="object")return e;if(typeof e!="string")return{};try{return JSON.parse(e)}catch{try{return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return{}}}}function wUn(e){return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${pr.host}${e}`:`${pr.host}/${e}`:""}function nke(e){return/\.m3u8(?:[?#].*)?$/i.test(String(e||"").trim())}function NUn(e){return Buffer.from(JSON.stringify(e||{}),"utf8").toString("base64url")}function AJt(e){try{let t=JSON.parse(Buffer.from(String(e||""),"base64url").toString("utf8"));return t&&typeof t=="object"?t:{}}catch{return{}}}function OUn(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:""}function DUn(e){return e?.server&&typeof e.server.prefix=="string"?e.server.prefix.replace(/\/+$/,""):`/spider/${pr.key}/3`}function ske(e,t,r){let n=OUn(e);return n?`${n}${DUn(e)}${t}?u=${NUn(r)}`:""}function EJt(e){return e?Array.isArray(e)?e.reduce((t,r)=>({...t,...r&&typeof r=="object"?r:{}}),{}):typeof e=="object"?e:{}:{}}function PUn(e){let t=String(e||"").trim();return t?bUn.some(r=>r.test(t)):!1}function ZMe(e){let t=String(e||""),r="0x1A2B3C4D5E6F7A8B9C",n="";for(let s=0;si[o]||"").join("");return a=a.replace(/1/g,"i").replace(/0/g,"o").replace(/5/g,"s"),rke.default.createHmac("sha256",String(r||"")).update(a).digest("hex")}async function ike(e,t={}){let r=String(t.method||"GET").toUpperCase(),n={headers:{...pr.headers,...t.headers||{}},timeout:t.timeout||1e4,validateStatus:()=>!0,maxRedirects:3};t.data!==void 0&&(n.data=t.data);let s=r==="POST"?await Xe.post(e,n.data,n):await Xe.get(e,n);return{data:s?.data,headers:s?.headers||{},status:Number(s?.status||0)}}async function ake(e,t={}){let r=await ike(e,t);return typeof r.data=="string"?r.data:JSON.stringify(r.data||{})}async function lU(e,t={}){let r=await ake(e,t);try{return JSON.parse(r)}catch{return null}}async function dU(e,t,r,n){if(r>0){let s=RUn(t,r);if(s!==null)return s}return Un("muxi",e,t,async()=>{let s=await n();return r>0&&CUn(t,s),s},{timeout:3e4})}async function kUn(e=!1){if(!e&&qt.cookies)return qt.cookies;let t=await ike(`${pr.host}/`,{headers:{referer:`${pr.host}/`},timeout:15e3}).catch(()=>({data:"",headers:{},status:0})),r=t.headers?.["set-cookie"]||t.headers?.["Set-Cookie"],n=gJt(r);return n&&(qt.cookies=n),qt.cookies}async function Xb(e=!1){let t=qt.cookies&&qt.session&&qt.traceId&&qt.reportId&&Date.now()-qt.initedAt{if(!e&&qt.cookies&&qt.session&&qt.traceId&&qt.reportId&&Date.now()-qt.initedAt"");let r=await ike(`${pr.host}/api/stats/track`,{headers:{...qt.cookies?{cookie:qt.cookies}:{},referer:`${pr.host}/m/index`}}).catch(()=>({data:"",headers:{},status:0})),n=r.headers?.["set-cookie"]||r.headers?.["Set-Cookie"],s=gJt(n);s&&(qt.cookies=s);let a=(await lU(`${pr.host}/api/system/config`,{headers:{...qt.cookies?{cookie:qt.cookies}:{},referer:`${pr.host}/`}}).catch(()=>null))?.data||{};return(!qt.clientId||e)&&(qt.clientId=tke(16)),qt.reportId=ZMe(a.reportId||""),qt.session=ZMe(a.session||""),qt.traceId=ZMe(a.traceId||""),(!qt.clientId||e)&&(qt.clientId=tke(16)),qt.initedAt=Date.now(),!!qt.cookies})}function fU(e,t,r=!1){let n=r?LUn(Date.now()):String(Date.now()),s=MUn(e,n,qt.session,qt.traceId),i={...pr.headers,...qt.cookies?{cookie:qt.cookies}:{},referer:t||pr.host,"x-client-id":qt.clientId||tke(16),"x-verify-token":qt.verifyToken||"","x-timestamp":n};return qt.reportId&&s&&(i[qt.reportId]=s),i}function BUn(e={}){e.cookie&&(qt.cookies=String(e.cookie)),e.clientId&&(qt.clientId=String(e.clientId)),e.reportId&&(qt.reportId=String(e.reportId)),e.session&&(qt.session=String(e.session)),e.traceId&&(qt.traceId=String(e.traceId)),e.verifyToken&&(qt.verifyToken=String(e.verifyToken),qt.verifiedAt=Date.now()),qt.initedAt=Date.now()}async function yJt(e=!1){let t=qt.verifyToken&&Date.now()-qt.verifiedAt(console.error("[muxi] solve verify token failed:",i?.message||String(i)),null)),!(n?.success&&n?.token));s+=1)snull);return String(r?.data||"").trim()}function FUn(e){let t=Buffer.isBuffer(e)?e:Buffer.from(e||[]),r=Math.min(t.length,TUn);for(let n=0;n=t.length)break;s+=1,t[o]===71&&(i+=1)}if(s>=3&&i===s||s>=6&&i>=s-1)return n}return-1}function $Un(e,t){let r=String(e||"").trim().match(/^bytes=(\d*)-(\d*)$/i);if(!r)return null;let n=r[1]===""?NaN:Number.parseInt(r[1],10),s=r[2]===""?NaN:Number.parseInt(r[2],10);return!Number.isFinite(n)&&Number.isFinite(s)?(n=Math.max(0,t-s),s=t-1):(Number.isFinite(n)||(n=0),Number.isFinite(s)||(s=t-1)),n<0||n>=t||s{let a=vJt(i,t);if(!a)return s;let o=nke(a)?"/proxy/hls.m3u8":"/proxy/hls-seg.ts",c=ske(r,o,{url:a,header:n,referer:t});return c?`URI="${c}"`:s})}function KUn(e,t,r,n={}){return String(e||"").split(/\r?\n/).map(s=>{let i=s.trim();if(!i)return s;if(i.startsWith("#"))return jUn(s,t,r,n);let a=vJt(i,t);if(!a)return s;let o=nke(a)?"/proxy/hls.m3u8":"/proxy/hls-seg.ts";return ske(r,o,{url:a,header:n,referer:t})||s}).join(` -`)}async function GUn(e,t){let r=AJt(e?.query?.u),n=String(r.url||"").trim(),s=EJt(r.header),i=String(r.referer||"").trim();if(!/^https?:\/\//i.test(n))return t.code(400).send("bad playlist url");let a=await Xe.get(n,{headers:{"User-Agent":pr.headers["User-Agent"],...s,...i?{Referer:i}:{}},timeout:15e3,responseType:"text",validateStatus:()=>!0}),o=typeof a.data=="string"?a.data:String(a.data||"");if(a.status>=400||!o.includes("#EXTM3U"))return t.code(502).send(o||"playlist fetch failed");let c=KUn(o,n,e,s);return t.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8").header("Access-Control-Allow-Origin","*").header("Cache-Control","no-cache").send(c)}async function zUn(e,t){let r=AJt(e?.query?.u),n=String(r.url||"").trim(),s=EJt(r.header),i=String(r.referer||"").trim();if(!/^https?:\/\//i.test(n))return t.code(400).send("bad segment url");let a=await Xe.get(n,{headers:VUn(n,s,i),timeout:2e4,responseType:"arraybuffer",validateStatus:()=>!0});if(a.status>=400)return t.code(502).send(`segment http ${a.status}`);let o=Buffer.from(a.data||[]),c=FUn(o);if(c<0&&/^image\//i.test(String(a.headers?.["content-type"]||"")))return t.code(502).send("segment ts sync not found");let u=c>=0?o.slice(c):o,l=$Un(e?.headers?.range,u.length);if(t.header("Content-Type",qUn(n,a.headers?.["content-type"],c>=0)).header("Accept-Ranges","bytes").header("Access-Control-Allow-Origin","*").header("Cache-Control","public, max-age=3600"),e?.headers?.range){if(!l)return t.code(416).header("Content-Range",`bytes */${u.length}`).send("");let d=u.slice(l.start,l.end+1);return t.code(206).header("Content-Range",`bytes ${l.start}-${l.end}/${u.length}`).header("Content-Length",String(d.length)).send(d)}return t.header("Content-Length",String(u.length)).send(u)}async function YUn({filmId:e,lineId:t,referer:r}){let n=[`${pr.host}/api/system/config`,`${pr.host}/api/stats/track`,`${pr.host}/api/film/detail/play?filmId=${encodeURIComponent(e||"")}`,`${pr.host}/api/category/top`,`${pr.host}/api/issue/new`,`${pr.host}/api/film/search/hot`,`${pr.host}/api/line/play?lineId=${encodeURIComponent(t||"")}`];for(let s of n)await ake(s,{headers:fU(s,r,!0)}).catch(()=>"");await zt(2800)}async function QUn({referer:e}){let t=[`${pr.host}/api/system/config`,`${pr.host}/api/stats/track`,`${pr.host}/api/auth/verify/config`,`${pr.host}/api/category/top`,`${pr.host}/api/film/search/hot`];for(let r of t)await ake(r,{headers:fU(r,e,!0)}).catch(()=>"");await zt(1200)}function WUn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function XUn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function SJt(e){return(Array.isArray(e)?e:[]).map(t=>({vod_id:WUn(String(t?.id||""),{vod_pic:t?.cover||"",vod_remarks:t?.updateStatus||""}),vod_name:t?.name||"",vod_pic:t?.cover||"",vod_remarks:t?.updateStatus||"",vod_content:t?.blurb||""})).filter(t=>t.vod_id&&t.vod_name)}async function JUn(){return await Xb().catch(()=>!1),{}}async function ZUn(){let e=Yr("muxi",arguments[0]||{}),t=Qr(e);if(t)return t;let r={class:pr.class,filters:pr.filters};return dn(e,r,Tt.static),r}async function eFn(){return{list:[]}}async function tFn(e){let t=e?.body||{},r=String(t.id||"1").trim()||"1",n=_Jt(t.page),s=xUn(t.extend||t.filters||t.ext),i={...pr.filterDef[r]||pr.filterDef[1],...s},a=`category:${r}:${n}:${JSON.stringify(i)}`;return dU("category",a,Wb.category,async()=>{await Xb().catch(()=>!1);let o=new URLSearchParams({categoryId:r,language:String(i.lang||""),pageNum:String(n),pageSize:"15",sort:String(i.by||"updateTime"),year:String(i.year||"")}),c=`${pr.host}/api/film/category/list?${o.toString()}`,u=`${pr.host}/m/category?categoryId=${encodeURIComponent(r)}`,l=async()=>{let f=await lU(c,{headers:{...pr.headers,...qt.cookies?{cookie:qt.cookies}:{},referer:u}}).catch(()=>null);return SJt(f?.data?.list||[])},d=await l();return d.length===0&&await Xb(!0)&&(d=await l()),{page:n,pagecount:d.length>=10?n+1:n,limit:15,total:d.length?n*15+d.length:0,list:d}})}async function rFn(e){let t=e?.body||{},n=(Array.isArray(t.id)?t.id:[t.id]).map(i=>XUn(i)).filter(i=>i.id);if(!n.length)return{list:[]};await Xb().catch(()=>!1);let s=[];for(let i of n){let a=i.id,o=`detail:${a}`,c=await dU("detail",o,Wb.detail,async()=>{let u=`${pr.host}/api/film/detail/play?filmId=${encodeURIComponent(a)}`,d=(await lU(u,{headers:fU(u,pr.host,!1)}).catch(()=>null))?.data;if(!d)return null;let f=[],h=[];for(let p of Array.isArray(d.playLineList)?d.playLineList:[]){let m=String(p?.playerName||"\u9ED8\u8BA4").trim()||"\u9ED8\u8BA4";if(PUn(m))continue;let _=(Array.isArray(p?.lines)?p.lines:[]).map(g=>{let y=String(g?.id||"").trim();return y?`${String(g?.name||"\u64AD\u653E").trim()||"\u64AD\u653E"}$${y}@${d.id}@${d.categoryId}`:""}).filter(Boolean);_.length&&(f.push(m),h.push(_.join("#")))}return{vod_id:String(d.id||a),vod_name:d.name||"",type_name:vUn[d.categoryId]||"",vod_pic:i.meta?.vod_pic||d.cover||"",vod_remarks:i.meta?.vod_remarks||d.updateStatus||"",vod_content:d.blurb||"",vod_play_from:f.join("$$$"),vod_play_url:h.join("$$$")}});c&&s.push(c)}return{list:s}}async function nFn(e){let t=String(e?.body?.id||"").trim();if(!t)return{...pJt};let r=`play:${t}`,n=await dU("play",r,Wb.play,async()=>{if(!await Xb())return null;let[c,u,l]=t.split("@");if(!c)return null;let d=`${pr.host}/m/player?cid=${encodeURIComponent(l||"")}&film_id=${encodeURIComponent(u||"")}&line_id=${encodeURIComponent(c||"")}`,f=`${pr.host}/api/line/play/parse?lineId=${encodeURIComponent(c)}`,h=async(_=!1)=>await yJt(_)?(await YUn({filmId:u,lineId:c,referer:d}),UUn(f,d)):"",p=await h(!1);if(p||await Xb(!0)&&(p=await h(!0)),!p)return null;let m={"User-Agent":pr.headers["User-Agent"],Referer:d};return{playUrl:p,playHeader:m,referer:d}});if(!n?.playUrl)return{...pJt};let{playUrl:s,playHeader:i,referer:a}=n;if(nke(s)){let o=ske(e,"/proxy/hls.m3u8",{url:s,header:i,referer:a});if(o)return{parse:0,jx:0,url:o,header:{}}}return{parse:0,jx:0,url:s,header:i}}async function sFn(e){let t=e?.body||{},r=_Jt(t.page),n=String(t.wd||"").trim();if(!n)return{page:r,pagecount:r,limit:10,total:0,list:[]};let s=`search:${r}:${n}`;return dU("search",s,Wb.search,async()=>{let i=wUn(`/api/film/search?keyword=${encodeURIComponent(n)}&pageNum=${r}&pageSize=10`),a=`${pr.host}/m/search?keyword=${encodeURIComponent(n)}`,o=async(u=!1)=>{if(!await Xb(u).catch(()=>!1))return[];if(!await yJt(u).catch(()=>""))return[];await QUn({referer:a}).catch(()=>{});let f=await lU(i,{headers:fU(i,a,!0)}).catch(()=>null);return SJt(f?.data?.list||[])},c=await o(!1);return c.length===0&&(c=await o(!0)),{page:r,pagecount:c.length>0?r+1:r,limit:10,total:c.length,list:c}})}async function iFn(e){e.post("/init",async()=>JUn()),e.post("/home",async()=>ZUn()),e.post("/homeVod",async()=>eFn()),e.post("/category",async t=>tFn(t)),e.post("/detail",async t=>rFn(t)),e.post("/play",async t=>nFn(t)),e.post("/search",async t=>sFn(t)),e.get("/proxy/hls.m3u8",GUn),e.get("/proxy/hls-seg.ts",zUn)}var rke,pr,vUn,Wb,hJt,SUn,TUn,eke,pJt,bUn,qt,JMe,aFn,bJt=ae(()=>{Hr();Nn();rke=Ne(require("crypto"),1);da();ws();pr={title:"\u{1F3AC} \u6728\u516E",key:"muxi",host:"https://film.symx.club",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 13; 23049RAD8C Build/TQ3A.230901.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/124.0.6367.82 Mobile Safari/537.36","x-platform":"web"},class:[{type_id:"1",type_name:"\u7535\u89C6\u5267"},{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{1:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],2:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],3:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],4:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],5:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}]},filterDef:{1:{lang:"",by:"updateTime",year:""},2:{lang:"",by:"updateTime",year:""},3:{lang:"",by:"updateTime",year:""},4:{lang:"",by:"updateTime",year:""},5:{lang:"",by:"updateTime",year:""}}},vUn={1:"\u7535\u89C6\u5267",2:"\u7535\u5F71",3:"\u7EFC\u827A",4:"\u52A8\u6F2B",5:"\u77ED\u5267"},Wb={auth:10*60*1e3,category:30*1e3,detail:2*60*1e3,search:20*1e3,play:15*1e3},hJt=Math.max(0,Number.parseInt(process.env.MUXI_VERIFY_SOLVE_RETRIES||"",10)||1),SUn=Math.max(200,Number.parseInt(process.env.MUXI_VERIFY_SOLVE_RETRY_DELAY_MS||"",10)||1e3),TUn=512*1024,eke=new Map,pJt={parse:0,jx:0,url:""},bUn=[/聚合\s*[-_]?\s*0/i],qt={cookies:"",clientId:"",reportId:"",session:"",traceId:"",verifyToken:"",verifiedAt:0,initedAt:0},JMe=null;aFn={meta:{key:pr.key,name:pr.title,type:3,searchable:2,quickSearch:1,filterable:1},api:iFn}});function tJ(e,t){let r=e[t];if(r===void 0)throw new oo(`varint underflow at offset ${t}`);if(!(r&128))return{value:r,length:1};let n=r&127;for(let s=1;s<8;s++){if(r=e[t+s],r===void 0)throw new oo(`varint underflow at offset ${t+s}`);if(n=n*128+(r&127),!(r&128)){if(n>Number.MAX_SAFE_INTEGER)throw new oo("varint exceeds MAX_SAFE_INTEGER");return{value:n,length:s+1}}}if(r=e[t+8],r===void 0)throw new oo(`varint underflow at offset ${t+8}`);if(n=n*256+r,n>Number.MAX_SAFE_INTEGER)throw new oo("varint exceeds MAX_SAFE_INTEGER");return{value:n,length:9}}function xJt(e){if(e===0)return 0;if(e<=4)return e;if(e===5)return 6;if(e===6||e===7)return 8;if(e===8||e===9)return 0;if(e===10||e===11)throw new oo(`reserved serial type ${e}`);return e%2===0?(e-12)/2:(e-13)/2}function lFn(e){let t="",r=null,n=e.length;for(let s=0;s=u.length)continue;let d=u[l],f;if(d==='"'||d==="`"){let _=u.indexOf(d,l+1);if(_<0)continue;f=u.slice(l+1,_),l=_+1}else if(d==="["){let _=u.indexOf("]",l+1);if(_<0)continue;f=u.slice(l+1,_),l=_+1}else{let _=u.slice(l).match(/^[A-Za-z_][A-Za-z0-9_]*/);if(!_)continue;f=_[0],l+=f.length}if(uFn.has(f.toUpperCase()))continue;let h=u.slice(l).trim(),p=(h.match(/^[A-Za-z_][A-Za-z0-9_]*/)?.[0]||"").toUpperCase(),m=p==="INTEGER"&&/\bPRIMARY\s+KEY\b/i.test(h);c.push({name:f,type:p,isIntegerPrimaryKey:m})}return c}var uke,IJt,oFn,RJt,oke,cFn,CJt,oo,cke,uFn,rJ,wJt=ae(()=>{uke=Ne(require("fs"),1),IJt=100,oFn="SQLite format 3\0",RJt=2,oke=5,cFn=10,CJt=13,oo=class extends Error{constructor(t){super(t),this.name="SqliteFormatError"}};cke=class e{constructor(t){if(Buffer.isBuffer(t)||(t=Buffer.from(t)),t.length65536||n&n-1)throw new oo(`invalid page size ${n}`);let s=t[20],i=t.readUInt32BE(28),a=t.readUInt32BE(56);if(a<1||a>3)throw new oo(`unknown text encoding ${a}`);this.buffer=t,this.pageSize=n,this.pageCount=i,this.textEncoding=a,this.reservedPerPage=s,this.usablePageSize=n-s}static fromPath(t){return new e(uke.default.readFileSync(t))}readPage(t){if(t<1||t>this.pageCount)throw new oo(`page ${t} out of range (1..${this.pageCount})`);let r=(t-1)*this.pageSize;return this.buffer.slice(r,r+this.pageSize)}decodeText(t,r,n){if(this.textEncoding===1)return t.slice(r,r+n).toString("utf8");if(this.textEncoding===2)return t.slice(r,r+n).toString("utf16le");let s=Buffer.allocUnsafe(n);for(let i=0;i+1BigInt(Number.MAX_SAFE_INTEGER)||s=12){let s=xJt(n);return n%2===0?t.slice(r,r+s):this.decodeText(t,r,s)}throw new oo(`unhandled serial type ${n}`)}decodeRecord(t){let r=tJ(t,0),n=[],s=r.length;for(;s0;){let o=this.readPage(s),c=o.readUInt32BE(0),u=Math.min(a,i);n.push(o.slice(4,4+u)),i-=u,s=c}if(i>0)throw new oo(`overflow chain truncated, ${i} bytes missing`);return Buffer.concat(n)}readBTreePageHeader(t,r){let n=r?IJt:0,s=t[n];if(s!==CJt&&s!==oke&&s!==cFn&&s!==RJt)throw new oo(`unknown B-tree page type 0x${s.toString(16)} at offset ${n}`);let i=t.readUInt16BE(n+3),a=t.readUInt16BE(n+5);a===0&&(a=65536);let o=s===oke||s===RJt,c=o?12:8,u=o?t.readUInt32BE(n+8):0;return{type:s,cellCount:i,cellContentStart:a,rightPointer:u,headerSize:c,pageHeaderOffset:n,cellPointerArrayOffset:n+c}}readTableLeafCell(t,r){let n=this.usablePageSize,s=n-35,i=Math.floor((n-12)*32/255)-23,a=tJ(t,r),o=a.value,c=tJ(t,r+a.length),u=r+a.length+c.length;if(o<=s)return{rowid:c.value,payload:t.slice(u,u+o),payloadSize:o};let l=i+(o-i)%(n-4);l>s&&(l=i);let d=t.slice(u,u+l),f=t.readUInt32BE(u+l),h=o-l,p=this.readOverflowChain(f,h);return{rowid:c.value,payload:Buffer.concat([d,p]),payloadSize:o}}walkTable(t,r,n){let s=[t],i=!1;for(;s.length&&!i;){let a=s.pop(),o=this.readPage(a),c=a===1,u=this.readBTreePageHeader(o,c);if(u.type===CJt)for(let l=0;l=0;d--)s.push(l[d])}else throw new oo(`walkTable hit non-table page type 0x${u.type.toString(16)} at page ${a}`)}}},uFn=new Set(["PRIMARY","UNIQUE","CHECK","FOREIGN","CONSTRAINT"]);rJ=class e{constructor(t){this.file=new cke(t),this.schemaCache=null}static fromPath(t){return new e(uke.default.readFileSync(t))}ensureSchema(){if(this.schemaCache)return this.schemaCache;let t=new Map;return this.file.walkTable(1,5,({values:r})=>{let[n,s,,i,a]=r;n==="table"&&s&&i&&t.set(String(s),{name:String(s),rootpage:Number(i),sql:String(a||""),columns:dFn(String(a||""))})}),this.schemaCache={tables:t},this.schemaCache}listTables(){return[...this.ensureSchema().tables.keys()].filter(r=>!r.startsWith("sqlite_"))}tableInfo(t){return this.ensureSchema().tables.get(String(t))||null}tableColumns(t){let r=this.tableInfo(t);return r?r.columns.map(n=>n.name):[]}iterateRows(t,r){let n=this.tableInfo(t);if(!n)throw new Error(`unknown table: ${t}`);this.file.walkTable(n.rootpage,n.columns.length,({rowid:s,values:i})=>{let a={rowid:s};for(let o=0;o{(!r||r(s))&&n++}),n}findRows(t,r,n=1/0){let s=[];return this.iterateRows(t,i=>{if(r(i)&&(s.push(i),s.length>=n))return!1}),s}findOne(t,r){return this.findRows(t,r,1)[0]||null}distinctValues(t,r){let n=new Set;return this.iterateRows(t,s=>{let i=s[r];i!=null&&n.add(String(i))}),[...n]}close(){this.file=null,this.schemaCache=null}}});function NN(){try{Hp.default.mkdirSync(Vy,{recursive:!0})}catch{}}function UJt(){return Vy}function ON(){let e=Number(process.env.DUDB_MAX_UPLOAD_MB||0);if(!Number.isFinite(e)||e<=0)return NJt;let t=Math.floor(e*1024*1024);return t<=0?NJt:Math.min(t,fFn)}function aJ(e=ON()){let t=e/1024/1024;return Number.isInteger(t)?`${t}MB`:`${t.toFixed(1)}MB`}function FJt(e,t=OJt){let r=Math.max(1,Math.floor(Number(t)||OJt));if(e==null||e==="")return r;let n=Number(e);return!Number.isFinite(n)||n<=0?r:Math.max(1,Math.floor(n))}function lke(e={},t={}){return{searchDbLimit:FJt(e?.searchDbLimit,t.searchDbLimit)}}async function oJ(e){let t=lke(e?.config?.dudb||{}),r={};try{r=await e?.db?.getObjectDefault(kJt,{})}catch{}return lke(r&&typeof r=="object"?r:{},t)}async function $Jt(e,t={}){let r=lke(t);return await e.db.push(kJt,r),r}function cJ(e){let t=Hy.default.basename(String(e||""));return!hFn.test(t)||!t.toLowerCase().endsWith(".db")?null:t}function AFn(e){return!e||e<1024?`${e||0}B`:e<1024*1024?`${(e/1024).toFixed(0)}K`:e<1024*1024*1024?`${(e/1024/1024).toFixed(1)}M`:`${(e/1024/1024/1024).toFixed(2)}G`}function qJt(e){return Buffer.from(e,"utf8").toString("base64url")}function HJt(e){try{return Buffer.from(String(e),"base64url").toString("utf8")}catch{return""}}function EFn(e){return String(e||"").replace(/\.db$/i,"")}function iJ(e){let t=String(e??"").trim();return/^https?:\/\//i.test(t)?t:_Fn}function VJt(){NN();let e=[];try{e=Hp.default.readdirSync(Vy,{withFileTypes:!0})}catch{return[]}let t=[];for(let r of e){if(!r.isFile()||!r.name.toLowerCase().endsWith(".db")||r.name.split(".").length!==2)continue;let n=Hy.default.join(Vy,r.name);try{let s=Hp.default.statSync(n);if(s.size[a.name,a])),n=[];try{n=await e.db.getObjectDefault(sJ,[])}catch{}let s=new Set,i=[];if(Array.isArray(n))for(let a of n){let o=r.get(a);o&&!s.has(a)&&(i.push(o),s.add(a))}for(let a of t)s.has(a.name)||i.push(a);return i.map(a=>({...a,key:qJt(a.name)}))}async function jJt(e,t){let r=Array.isArray(t)?t.filter(n=>cJ(n)):[];await e.db.push(sJ,r)}async function KJt(e,t,r={}){let n=cJ(e);if(!n)throw new Error("\u6587\u4EF6\u540D\u975E\u6CD5\u6216\u540E\u7F00\u4E0D\u662F .db");if(!t||typeof t[Symbol.asyncIterator]!="function")throw new Error("\u4E0A\u4F20\u6D41\u65E0\u6548");NN();let s=Number(r.maxBytes||ON()),i=Hy.default.join(Vy,n);if(!(r.overwrite===!0||r.overwrite==="1"||r.overwrite==="true")&&Hp.default.existsSync(i)){t.destroy?.();let l=new Error("\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6");throw l.code="DUDB_UPLOAD_EXISTS",l.name=n,l}let o=Hy.default.join(Vy,`.upload-${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2)}.tmp`),c=0,u=new LJt.Transform({transform(l,d,f){if(c+=l.length,c>s){let h=new Error(`\u6587\u4EF6\u8D85\u8FC7 ${aJ(s)} \u4E0A\u9650`);h.code="DUDB_UPLOAD_TOO_LARGE",f(h);return}f(null,l)}});try{if(await(0,MJt.pipeline)(t,u,Hp.default.createWriteStream(o,{flags:"wx"})),ci!==r))}catch{}return{name:r}}function zJt(e){if(hU===e&&qp){try{qp.close()}catch{}qp=null,hU=""}nJ.delete(e)}function dke(e){let t=cJ(e);if(!t)return null;let r=Hy.default.join(Vy,t);if(!Hp.default.existsSync(r))return null;if(hU===t&&qp)return qp;if(qp){try{qp.close()}catch{}qp=null,hU=""}return qp=rJ.fromPath(r),hU=t,qp}function yFn(e){let t=e.listTables();return t.length===0?null:mFn.find(r=>t.includes(r))||t[0]}function vFn(e,t){let r=pFn,n=[],i=String(t||"").toLowerCase(),a=dke(e.name);if(!a)return n;let o=fke(a,e.name);if(!o)return n;let{table:c,mapping:u}=o,l=u.vod_id,d=u.vod_name,f=u.vod_pic,h=EFn(e.name),p=0;return a.iterateRows(c,m=>{let _=String(m[d]==null?"":m[d]);if(i&&!_.toLowerCase().includes(i))return;let g=l==="rowid"?m.rowid:m[l],y=f?String(m[f]==null?"":m[f]):"";if(n.push({vod_id:`${e.key}#ID#${g}`,vod_name:_,vod_pic:iJ(y),vod_remarks:h}),p++,p>=r)return!1}),n}function fke(e,t){if(nJ.has(t))return nJ.get(t);let r=yFn(e);if(!r)return null;let n=e.tableColumns(r),s=n.map(l=>l.toLowerCase()),i=new Set;for(let l of Object.values(DJt)){for(let d of l)n.includes(d)&&i.add(d);for(let d of n)l.some(f=>d.toLowerCase().includes(f.toLowerCase()))&&i.add(d)}let a=new Map;for(let l of i)a.set(l,[]);e.iterateRows(r,l=>{let d=!0;for(let[f,h]of a){if(h.length>=5)continue;d=!1;let p=l[f];p!=null&&p!==""&&h.push(p)}if(d)return!1});let o={};for(let[l,d]of Object.entries(DJt)){let f=d.filter(m=>n.includes(m));if(f.length===0&&(f=n.filter(m=>d.some(_=>m.toLowerCase().includes(_.toLowerCase())))),f.length===0){l==="category_field"?o[l]=null:l==="vod_id"?o[l]="rowid":o[l]=null;continue}let h=f[0],p=-1;for(let m of f){let _=a.get(m)||[],g=_.length*10;d.includes(m)&&(g+=50),l==="vod_play_url"&&_.length>0&&_.some(y=>/^(https?|rtsp|magnet|ftp):/i.test(String(y||"")))&&(g+=100),g>p&&(p=g,h=m)}o[l]=h}let c=gFn.filter(l=>s.includes(l)),u={table:r,mapping:o,picCols:c};return nJ.set(t,u),u}async function YJt(e){return{class:(await uJ(e)).map(n=>({type_id:n.key,type_name:`\u{1F4C1} ${n.name.replace(/\.db$/i,"")}`}))}}async function QJt(e,t,r){let n=String(t||"").split("$"),s=n[0],i=n.length>1?n[1]:null,a=HJt(s);if(!a)return{list:[]};let o=dke(a);if(!o)return{list:[]};let c=fke(o,a);if(!c)return{list:[]};let{table:u,mapping:l,picCols:d}=c,f=l.category_field;if(i==null){let b=new Map;if(f&&o.iterateRows(u,w=>{let D=String(w[f]==null?"":w[f]);if(D=D.replace(/[()()]/g,"").trim(),!D)return;let M=b.get(D);if(M||(M={cnt:0,pic:""},b.set(D,M)),M.cnt+=1,!M.pic&&d.length>0)for(let L of d){let U=String(w[L]||"").trim();if(U.startsWith("http://")||U.startsWith("https://")){M.pic=U;break}}}),b.size<=1){let w=f?[...b.values()].reduce((L,U)=>L+U.cnt,0):o.countRows(u),D=500,M=[];for(let L=0;Lw.includes(L.toLowerCase()));if(M){let L=o.tableColumns(M),U=L.map(le=>le.toLowerCase()),G=["id","category_id","type_id","cate_id","cat_id","tid"],$=["name","category_name","type_name","cate_name","cat_name","tname","title"],K=G.find(le=>U.includes(le))||"id",ee=$.find(le=>U.includes(le))||"name",z=L[U.indexOf(K)],oe=L[U.indexOf(ee)];z&&oe&&o.iterateRows(M,le=>{let te=le[z];te!=null&&T.set(String(te),le[oe]!=null?String(le[oe]):String(te))})}}let x=[...b.entries()].map(([w,D])=>{let M=`${s}$${w}`,L=T.get(w)||w;return{cnt:D.cnt,vod_id:M,type_id:M,type_name:L,vod_name:L,vod_pic:D.pic||PJt,vod_tag:"folder",vod_remarks:`\u5171${D.cnt}\u6761\u{1F3AC}`,cate:{id:M,name:L}}});return x.sort((w,D)=>D.cnt-w.cnt),{page:1,pagecount:1,limit:999,list:x.map(({cnt:w,...D})=>D)}}let h=20,p=Math.max(1,Number(r)||1),m=(p-1)*h,_=l.vod_id,g=l.vod_name,y=l.vod_pic,A=l.vod_remarks,E=[],v=0;if(i.startsWith("CHUNK_")){let I=(Number(i.replace("CHUNK_",""))||0)+m;o.iterateRows(u,T=>{if(v=h)return!1})}else o.iterateRows(u,b=>{let I=f?b[f]:"\u65E0\u5206\u7C7B";if(String(I??"")!==i)return;if(v=h)return!1});return{page:p,pagecount:p+1,limit:h,list:E}}function SFn(e){let t=String(e||"").trim();return t?(t.includes("\\/")&&(t=t.replace(/\\\//g,"/")),t.includes("$$$")&&(t=t.split("$$$").pop()),t.includes("|")&&(t=t.split("|")[0]),t=t.replace(/t26\.cdn/g,"t33.cdn").replace(/t27\.cdn/g,"t33.cdn"),t):""}async function WJt(e,t){let r=Array.isArray(t)?t[0]:t,n=String(r||"").indexOf("#ID#");if(n<0)return{list:[]};let s=r.slice(0,n),i=r.slice(n+4),a=HJt(s);if(!a)return{list:[]};let o=dke(a);if(!o)return{list:[]};let c=fke(o,a);if(!c)return{list:[]};let{table:u,mapping:l}=c,d=l.vod_id||"rowid",f=null;if(o.iterateRows(u,E=>{let v=d==="rowid"?E.rowid:E[d];if(String(v??"")===i)return f=E,!1}),!f)return{list:[]};let h=E=>{let v=l[E];if(!v)return"";let b=v==="rowid"?f.rowid:f[v];return b==null?"":String(b)},p=VJt().find(E=>E.name===a),m=p?p.size_str:"",_=p?p.path:"",y=[`\u3010\u539F\u59CB\u7B80\u4ECB\u3011: ${h("vod_content")||"\u6682\u65E0\u8BE6\u7EC6\u63CF\u8FF0"}`,"--------------------------",`\u{1F4CA} \u6587\u4EF6\u5927\u5C0F: ${m}`,`\u2705 \u7269\u7406\u4F4D\u7F6E: ${_}`,`\u26A1 \u7D22\u5F15\u6807\u8BC6: ID_${i}`].join(` -`),A=h("vod_play_url");return A||(A=`Play#${i}`),A=SFn(A),A&&!A.includes("$")&&(A=`\u64AD\u653E$${A}`),{list:[{vod_id:r,vod_name:h("vod_name"),vod_pic:iJ(h("vod_pic")),vod_remarks:h("vod_remarks"),vod_actor:h("vod_actor")||"\u5185\u8BE6",vod_content:y,vod_play_from:"DB\u6570\u636E\u5E93",vod_play_url:A}]}}async function XJt(e,t,r={}){let n=FJt(r.searchDbLimit),s=(await uJ(e)).slice(0,n),i=[];for(let a of s)i.push(...vFn(a,t));return{list:i}}var Hp,Hy,LJt,MJt,Vy,sJ,kJt,BJt,NJt,fFn,hFn,OJt,pFn,mFn,DJt,gFn,PJt,_Fn,qp,hU,nJ,lJ=ae(()=>{Hp=Ne(require("fs"),1),Hy=Ne(require("path"),1),LJt=require("stream"),MJt=require("stream/promises");wJt();Vy=Hy.default.join(process.env.NODE_PATH||".","dudb"),sJ="/dudb/order",kJt="/dudb/settings",BJt=1024,NJt=512*1024*1024,fFn=1024*1024*1024,hFn=/^[\w一-龥\-. ()()\[\] ]+\.db$/i,OJt=3,pFn=50,mFn=["videos","vod_unified_data","cj","vod","mac_vod","data","video_detail","list"],DJt={vod_id:["id","vod_id","uuid","guid","vid"],vod_name:["name","vod_name","title","subject","display_name"],vod_pic:["image","vod_pic","pic","thumbnail","img","cover"],vod_play_url:["play_url","vod_play_url","url","link","m3u8_url","vod_url"],vod_remarks:["vod_remarks","remarks","content","desc","note","msg"],vod_actor:["actor","vod_actor","starring","performer"],vod_content:["content","vod_content","summary","description"],category_field:["type_name","category_id","class_name","cate_name","tag"]},gFn=["vod_pic","pic","cover","img","image","poster"],PJt="https://img.icons8.com/color/512/folder-invoices--v1.png",_Fn="https://img.icons8.com/color/512/video-file.png";qp=null,hU="",nJ=new Map});var eZt={};Ft(eZt,{default:()=>PFn});function bFn(e){let t=String(e||"").trim();if(!t)return!1;try{let r=new URL(t);return/\.m3u8$/i.test(r.pathname||"")}catch{return/\.m3u8(\?|$)/i.test(t)&&!/\.php(?:\?|$)/i.test(t)}}function IFn(e){let t=String(e?.headers?.host||"").trim(),r=String(e?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||"http";return t?`${r}://${t}`:"http://127.0.0.1:3006"}function JJt(e,t,r=""){let s=`${IFn(e)}/spider/dudb/3/m3u8-clean?url=${encodeURIComponent(t)}`;return r&&(s+=`&referer=${encodeURIComponent(r)}`),s}function ZJt(e){try{let t=new URL(e);return`${t.protocol}//${t.host}/`}catch{return""}}async function RFn(){return{}}async function CFn(e){let t=Yr("dudb",arguments[0]||{}),r=Qr(t);if(r)return r;let n=YJt(e.server);return dn(t,n,Tt.static),n}async function xFn(e){let t=e.body||{};return QJt(e.server,String(t.id||""),t.page)}async function wFn(e){let t=e.body||{},r=Array.isArray(t.id)?t.id:[t.id];return WJt(e.server,r)}async function NFn(e){let t=e.body||{},r=String(t.id||""),n=mb(r)||r;if(!n)return{parse:0,url:"",header:{"User-Agent":hke}};if(bFn(n)){let s=ZJt(n);return{parse:0,url:JJt(e,n,s),header:{"User-Agent":hke}}}return{parse:0,url:n,header:{"User-Agent":hke}}}async function OFn(e){let t=e.body||{},r=await oJ(e.server);return{...await XJt(e.server,String(t.wd||""),{searchDbLimit:r.searchDbLimit}),page:t.page||1}}async function DFn(e,t){let r=String(e.query?.url||"").trim(),n=String(e.query?.referer||"").trim(),s=mb(r);if(!r)return t.code(400).send("missing url");if(!/^https?:\/\//i.test(s))return t.code(400).send("invalid url");let i={"User-Agent":TFn,Accept:"*/*"},a=n||ZJt(s);a&&(i.Referer=a);try{let o=await Xe.get(s,{headers:i,timeout:1e4,responseType:"text",validateStatus:u=>u>=200&&u<400}),c=_xe(o?.data,s,u=>JJt(e,u,a));return t.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8"),t.header("Access-Control-Allow-Origin","*"),t.header("Cache-Control","public, max-age=15"),t.send(c)}catch(o){return console.warn("[dudb.m3u8-clean] failed:",o?.message||"unknown"),t.redirect(s)}}var hke,TFn,PFn,tZt=ae(()=>{Nn();lJ();Hr();Exe();NN();hke="Dalvik/2.1.0 (Linux; U; Android 9; MIbox PRO Build/PI)",TFn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36";PFn={meta:{key:"dudb",name:"\u{1F4C1} \u672C\u5730DB",type:3},api:async e=>{e.post("/init",RFn),e.post("/home",CFn),e.post("/category",xFn),e.post("/detail",wFn),e.post("/play",NFn),e.post("/search",OFn),e.get("/m3u8-clean",DFn)}}});var rZt={};Ft(rZt,{default:()=>LFn});var LFn,nZt=ae(()=>{LFn={meta:{key:"js",name:"\u{1F4E6} \u672C\u5730JS",type:3},api:async e=>{e.post("/init",async()=>({})),e.post("/home",async()=>({class:[],filters:{}})),e.post("/category",async t=>({page:t?.body?.page||1,pagecount:1,limit:0,total:0,list:[]})),e.post("/detail",async()=>({list:[]})),e.post("/play",async t=>({parse:0,url:t?.body?.id||""})),e.post("/search",async t=>({page:t?.body?.page||1,pagecount:1,limit:0,total:0,list:[]}))}}});var aZt={};Ft(aZt,{default:()=>qFn});function MFn(e){return pU.default.enc.Utf8.stringify(pU.default.enc.Base64.parse(e))}function sZt(e){return pU.default.enc.Base64.stringify(pU.default.enc.Utf8.parse(e))}async function kFn(e,t){return{}}async function BFn(e,t){return{class:[{type_id:"setting",type_name:`${e.server.address().url}/website`}]}}async function UFn(e,t){let r=e.body.id,n=[],s=e.server.address().url+e.server.prefix+"/proxy";return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:String(Math.random()),vod_name:"\u626B\u7801\u914D\u7F6E",vod_pic:s+"/"+sZt(`${e.server.address().url}/website`)},{vod_id:"openInternalWebsite",vod_name:"\u70B9\u51FB\u914D\u7F6E",vod_pic:s+"/"+sZt(`${e.server.address().url}/website`)}]}}async function FFn(e,t){return e.body.id==="openInternalWebsite"?(await en.dispatch("openInternalWebview",{opt:{url:`${e.server.address().url}/website`}}),{list:[{vod_name:"",vod_content:"",vod_remarks:""}]}):{list:[{vod_name:"",vod_content:"",vod_remarks:""}]}}async function $Fn(e,t){let r=e.params.img,n=MFn(r),s=await iZt.default.toBuffer(n,{width:120,height:120,margin:15});t.send(s)}var pU,iZt,qFn,oZt=ae(()=>{pU=Ne(Gi(),1);Nn();iZt=Ne(qE(),1);Hd();qFn={meta:{key:"baseset",name:"\u2699\uFE0F \u914D\u7F6E",type:3},api:async e=>{e.post("/init",kFn),e.post("/home",BFn),e.post("/category",UFn),e.post("/detail",FFn),e.get("/proxy/:img",$Fn)}}});var cZt={};Ft(cZt,{default:()=>YFn});function VFn(e){return{vod_id:e,vod_content:"",vod_name:e,vod_pic:HFn,vod_remarks:""}}async function jFn(e,t){return{}}async function KFn(e,t){let r=String(e?.body?.clip||e?.body?.id||"").trim();return r&&await cj(r)?"true":"false"}async function GFn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await Promise.all(r.map(async s=>{let i=String(s||"").trim(),a=VFn(i);if(!i)return a;let o=pb("detail",{id:i});try{let c=await Un("push","detail",o,()=>Bs(i,e),{timeout:15e3});c&&(a.vod_play_from=c.froms,a.vod_play_url=c.urls,Array.isArray(c.links)&&c.links.length>0&&(a.vod_links=c.links))}catch{}return a}))}}async function zFn(e,t){try{let r=function(o){o.statusCode&&o.statusCode==500&&console.error(o)},n=e.server.prefix,s={},i=await e.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"}),a=i.json();return s.support=a,r(a),i=await e.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),a=i.json(),s.detail=a,r(a),i=await e.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),a=i.json(),s.play=a,r(a),s}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"check debug console output"}}}var HFn,YFn,uZt=ae(()=>{su();NE();da();HFn="https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg";YFn={meta:{key:"push",name:"\u2699\uFE0F \u63A8\u9001",type:4},api:async e=>{e.post("/init",jFn),e.post("/support",KFn),e.post("/detail",GFn),e.post("/play",Zs),e.get("/test",zFn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Us)}}});var kZt={};Ft(kZt,{runWorkerProbe:()=>V6n});function AU(e){return{name:e?.name||"Error",message:e?.message||String(e),code:e?.code,stack:String(e?.stack||"").split(` -`).slice(0,6).join(" | ")}}function MZt(e,t,r=3e4){return new Promise((n,s)=>{let i=setTimeout(()=>s(new Error(`worker timeout ${r}ms`)),r);e.once("message",a=>{clearTimeout(i),n(a)}),e.once("error",a=>{clearTimeout(i),s(a)}),e.once("exit",a=>{clearTimeout(i),s(new Error(`worker exited code=${a} before message`))}),e.postMessage(t)})}async function V6n(){let e={nodeVersion:process.version,platform:process.platform,arch:process.arch,iterations:AJ,cpus:null,parallelism:null,moduleLoad:{ok:!1,error:null,exports:[]},main:{ok:!1,ms:null,sample:null,error:null},workerSingle:{ok:!1,ms:null,workerMs:null,sample:null,error:null},workerParallel:{ok:!1,n:0,ms:null,perWorkerMs:null,error:null},speedup:null};try{let a=await import("node:os");e.cpus=a.cpus()?.length??null,e.parallelism=typeof a.availableParallelism=="function"?a.availableParallelism():null}catch(a){e.cpusError=AU(a)}let t;try{t=await import("node:worker_threads"),e.moduleLoad.ok=!0,e.moduleLoad.exports=Object.keys(t).filter(a=>!a.startsWith("_")&&a!=="default")}catch(a){return e.moduleLoad.error=AU(a),e}let{Worker:r}=t;if(typeof r!="function")return e.moduleLoad.error={message:`Worker is not a constructor (typeof=${typeof r})`},e;try{let a=await import("node:crypto"),o=Date.now(),c="";for(let u=0;unew r(LZt,{eval:!0}));let a=Date.now(),o=await Promise.all(i.map((c,u)=>MZt(c,{iterations:AJ,salt:`${Lke}:${u}`})));e.workerParallel.ms=Date.now()-a,e.workerParallel.n=s,e.workerParallel.perWorkerMs=o.map(c=>c.ms),e.workerParallel.ok=!0}catch(a){e.workerParallel.error=AU(a)}finally{await Promise.all(i.map(async a=>{try{await a.terminate()}catch{}}))}if(e.workerSingle.ok&&e.workerParallel.ok){e.speedup={singleWorkerMs:e.workerSingle.workerMs,parallelTotalMs:e.workerParallel.ms,idealSerialMs:e.workerSingle.workerMs*s,effectiveSpeedup:e.workerParallel.ms>0?Number((e.workerSingle.workerMs*s/e.workerParallel.ms).toFixed(2)):null,verdict:null};let a=e.speedup.effectiveSpeedup;a===null?e.speedup.verdict="unknown":a>=s*.7?e.speedup.verdict=`good (\u2248${a}x of ${s})`:a>=1.5?e.speedup.verdict=`partial (${a}x of ${s}, multi-core but limited)`:e.speedup.verdict=`degenerate (${a}x \u2014 workers likely serialized, not actually parallel)`}return e}var AJ,Lke,LZt,BZt=ae(()=>{AJ=2e5,Lke="probe_2026",LZt=` -(async () => { - const { parentPort } = await import('node:worker_threads'); - const { createHash } = await import('node:crypto'); - parentPort.on('message', (msg) => { - const { iterations, salt } = msg; - const t0 = Date.now(); - let acc = ''; - for (let i = 0; i < iterations; i += 1) { - acc = createHash('sha256').update(String(i) + salt).digest('hex'); - } - parentPort.postMessage({ ms: Date.now() - t0, sample: acc.slice(0, 12) }); - }); -})(); -`});var UZt=S(t1=>{"use strict";Object.defineProperty(t1,"__esModule",{value:!0});t1.removeTrailingChar=t1.merge=void 0;var K6n=(...e)=>{let t={};return e.forEach(function(r){var n;for(n in r)n in t&&t[n]===null?t[n]=r[n]:n in t&&Array.isArray(t[n])?t[n]=t[n].concat(r[n]):n in t&&typeof t[n]=="object"?t[n]=(0,t1.merge)(t[n],r[n]):t[n]=r[n]}),t};t1.merge=K6n;var G6n=(e,t)=>e.length>1&&e.endsWith(t)?e.substring(0,e.length-1):e;t1.removeTrailingChar=G6n});var LN=S(Ky=>{"use strict";Object.defineProperty(Ky,"__esModule",{value:!0});Ky.DataError=Ky.DatabaseError=Ky.NestedError=void 0;var EU=class extends Error{inner;id;constructor(t,r,n){super(t),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let t=this.name+": "+this.message;return this.inner?t+`: -`+this.inner:t}};Ky.NestedError=EU;var kke=class extends EU{};Ky.DatabaseError=kke;var Bke=class extends EU{};Ky.DataError=Bke});var Hke=S(_u=>{"use strict";Object.defineProperty(_u,"__esModule",{value:!0});_u.getArrayIndicies=_u.validateArrayIndex=_u.validateArrayIndicies=_u.isInt=_u.ArrayInfo=_u.arrayRegex=void 0;var SJ=LN(),z6n=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;_u.arrayRegex=z6n;var Uke={},Fke=class e{property;index=0;append=!1;indicies=[];constructor(t,r){this.property=t;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,$ke(n))this.index=parseInt(n);else if(!this.append)throw new SJ.DataError("Only numerical values accepted for array index",200)}static processArray(t){if(typeof t>"u")return null;if(Uke[t])return Uke[t];let n=(0,_u.arrayRegex)().exec(t.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=qke(i);return FZt(a),Uke[t]=new e(s,a)}return null}getIndex(t,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?t:t[this.property];return s.length===0?0:s.length-1}return n}getData(t){if(this.append)throw new SJ.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);return n[r]}setData(t,r){if(this.append){let n=t[this.property];this.indicies.forEach(s=>{s!==""&&(s=+s,s===-1&&(s=n.length-1),n=n[+s])}),n.push(r)}else{let{index:n,dataForProperty:s}=this.getArrayDataAndIndexFromProperty(t);n===-1?s.push(r):s[n]=r}}delete(t){if(this.append)throw new SJ.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);n.splice(r,1)}isValid(t){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(t){let r=0,n=t instanceof Array?t:t[this.property]??t;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s1}};_u.ArrayInfo=Fke;function $ke(e){return!isNaN(e)&&Number(e)==e&&!isNaN(parseInt(e,10))}_u.isInt=$ke;function FZt(e){let t=e.filter(r=>r==="");if(t.length>1)throw Error("Only one append index is supported for nested arrays");if(t.length===1&&e[e.length-1]!=="")throw Error("Append index must be at the end of the nested array")}_u.validateArrayIndicies=FZt;function $Zt(e){if(e.length!==0&&!$ke(e))throw new SJ.DataError("Only numerical values accepted for array index",200)}_u.validateArrayIndex=$Zt;function qke(e){if(e.length===0)return[];if(e.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let t=e.substring(1,e.indexOf("]"));$Zt(t);let r=t.length+2;return[t,...qke(e.substring(r))]}_u.getArrayIndicies=qke});var VZt=S(TJ=>{"use strict";Object.defineProperty(TJ,"__esModule",{value:!0});TJ.DBParentData=void 0;var qZt=Hke(),HZt=LN(),Vke=class{parent;data;db;dataPath;constructor(t,r,n,s){this.parent=s,this.data=t,this.db=r,this.dataPath=n}checkArray(t=!1){let r=qZt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||t)&&!r.isValid(this.data))throw new HZt.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let t=this.checkArray();return t?t.getData(this.data):this.data[this.parent]}setData(t){if(this.parent===void 0){this.db.resetData(t);return}let r=qZt.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new HZt.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,t)}else this.data[this.parent]=t}delete(){if(this.parent===void 0){this.db.resetData({});return}let t=this.checkArray(!0);t?t.delete(this.data):delete this.data[this.parent]}};TJ.DBParentData=Vke});var KZt=S((YMs,jZt)=>{jZt.exports=function(){"use strict";function e(){this.readers=0,this.queue=[]}function t(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new e),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var h=!1;return function(){h||(h=!0,c.readers--,c.queue.length&&c.queue[0]())}}();if(c.readers<0||c.queue.length){var d=!1;if(c.queue.push(function(){!d&&c.readers>=0&&(d=!0,c.queue.shift(),c.readers++,a.call(u,l),c.queue.length&&c.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else c.readers++,a.call(o.scope,l)}function r(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new e),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var h=!1;return function(){h||(h=!0,c.readers=0,c.queue.length&&c.queue[0]())}}();if(c.readers||c.queue.length){var d=!1;if(c.queue.push(function(){d||c.readers||(d=!0,c.queue.shift(),c.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(u))},o.timeout)}}else c.readers=-1,a.call(o.scope,l)}var n=new e,s={};this.readLock=t,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?t(i,function(c){a.call(this,null,c)},o):(a=i,o=a,t(function(c){a.call(this,null,c)},o))},writeLock:function(i,a,o){typeof i!="function"?r(i,function(c){a.call(this,null,c)},o):(a=i,o=a,r(function(c){a.call(this,null,c)},o))}}}});var GZt=S(bJ=>{"use strict";Object.defineProperty(bJ,"__esModule",{value:!0});bJ.TimeoutError=void 0;var Y6n=LN(),jke=class extends Y6n.NestedError{};bJ.TimeoutError=jke});var QZt=S(MN=>{"use strict";Object.defineProperty(MN,"__esModule",{value:!0});MN.writeLockAsync=MN.readLockAsync=void 0;var Q6n=KZt(),zZt=GZt(),YZt=new Q6n,W6n=(e,t=null)=>{let r={};return t!=null&&(r={timeout:t}),new Promise((n,s)=>{YZt.readLock(async i=>{try{let a=await e();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new zZt.TimeoutError("Timeout",100))}})})};MN.readLockAsync=W6n;var X6n=(e,t=null)=>{let r={};return t!=null&&(r={timeout:t}),new Promise((n,s)=>{YZt.writeLock(async i=>{try{let a=await e();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new zZt.TimeoutError("Timeout",100))}})})};MN.writeLockAsync=X6n});var Gke=S(IJ=>{"use strict";Object.defineProperty(IJ,"__esModule",{value:!0});IJ.JsonAdapter=void 0;var Kke=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(t,r=!1){this.adapter=t,this.humanReadable=r}replacer(t,r){return r}reviver(t,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let t=await this.adapter.readAsync();return t==null?(await this.writeAsync({}),{}):JSON.parse(t,this.reviver.bind(this))}writeAsync(t){let r="";return this.humanReadable?r=JSON.stringify(t,this.replacer.bind(this),4):r=JSON.stringify(t,this.replacer.bind(this)),this.adapter.writeAsync(r)}};IJ.JsonAdapter=Kke});var Yke=S(CJ=>{"use strict";Object.defineProperty(CJ,"__esModule",{value:!0});CJ.FileAdapter=void 0;var RJ=require("fs/promises"),J6n=require("path"),zke=class{filename;fsync;constructor(t,r){this.filename=t,this.fsync=r}async readAsync(){try{return await(0,RJ.readFile)(this.filename,{encoding:"utf-8"})}catch(t){if(t.code==="ENOENT")return null;throw t}}async writeAsync(t){let r=null;try{r=await(0,RJ.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=J6n.dirname(this.filename);await(0,RJ.mkdir)(s,{recursive:!0}),r=await(0,RJ.open)(this.filename,"w")}try{await r.writeFile(t,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};CJ.FileAdapter=zke});var WZt=S(kN=>{"use strict";Object.defineProperty(kN,"__esModule",{value:!0});kN.ConfigWithAdapter=kN.Config=void 0;var Z6n=require("path"),e8n=Gke(),t8n=Yke(),Qke=class{adapter;filename;saveOnPush;separator;constructor(t,r=!0,n=!1,s="/",i=!1){this.filename=t,Z6n.extname(t)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new e8n.JsonAdapter(new t8n.FileAdapter(this.filename,i),n)}};kN.Config=Qke;var Wke=class{adapter;saveOnPush;separator;constructor(t,r=!0,n="/"){this.adapter=t,this.saveOnPush=r,this.separator=n}};kN.ConfigWithAdapter=Wke});var eer=S(Nc=>{"use strict";Object.defineProperty(Nc,"__esModule",{value:!0});Nc.JsonDB=Nc.FileAdapter=Nc.JsonAdapter=Nc.DataError=Nc.DatabaseError=Nc.ConfigWithAdapter=Nc.Config=void 0;var XZt=UZt(),wc=LN(),r8n=VZt(),n8n=Hke(),Xke=QZt(),JZt=WZt();Object.defineProperty(Nc,"Config",{enumerable:!0,get:function(){return JZt.Config}});Object.defineProperty(Nc,"ConfigWithAdapter",{enumerable:!0,get:function(){return JZt.ConfigWithAdapter}});var ZZt=LN();Object.defineProperty(Nc,"DatabaseError",{enumerable:!0,get:function(){return ZZt.DatabaseError}});Object.defineProperty(Nc,"DataError",{enumerable:!0,get:function(){return ZZt.DataError}});var s8n=Gke();Object.defineProperty(Nc,"JsonAdapter",{enumerable:!0,get:function(){return s8n.JsonAdapter}});var i8n=Yke();Object.defineProperty(Nc,"FileAdapter",{enumerable:!0,get:function(){return i8n.FileAdapter}});var Jke=class{loaded=!1;data={};config;constructor(t){this.config=t}processDataPath(t){if(t===void 0||!t.trim())throw new wc.DataError("The Data Path can't be empty",6);if(t==this.config.separator)return[];t=(0,XZt.removeTrailingChar)(t,this.config.separator);let r=t.split(this.config.separator);return r.shift(),r}async retrieveData(t,r=!1){await this.load();let n=this,s=(i,a)=>{let o=t[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new wc.DataError(`Can't find dataPath: ${n.config.separator}${t.join(n.config.separator)}. Stopped at ${o}`,5)}let u=n8n.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new wc.DataError(`DataPath: ${n.config.separator}${t.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new wc.DataError(`DataPath: ${n.config.separator}${t.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return t.length==++a?i:s(i,a)};return t.length===0?this.data:s(this.data,0)}async getParentData(t,r){let n=this.processDataPath(t),s=n.pop();return new r8n.DBParentData(await this.retrieveData(n,r),this,t,s)}getData(t){return(0,Xke.readLockAsync)(async()=>{let r=this.processDataPath(t);return this.retrieveData(r,!1)})}getObject(t){return this.getData(t)}async getObjectDefault(t,r){try{return await this.getData(t)}catch(n){if(!(n instanceof wc.DataError)||n.id!=5)throw n;return r}}async exists(t){try{return await this.getData(t),!0}catch(r){if(r instanceof wc.DataError)return!1;throw r}}async count(t){let r=await this.getData(t);if(!Array.isArray(r))throw new wc.DataError(`DataPath: ${t} is not an array.`,11);let n=this.processDataPath(t);return(await this.retrieveData(n,!1)).length}async getIndex(t,r,n="id"){return(await this.getArrayData(t)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(t,r){return(await this.getArrayData(t)).indexOf(r)}async getArrayData(t){let r=await this.getData(t);if(!Array.isArray(r))throw new wc.DataError(`DataPath: ${t} is not an array.`,11);let n=this.processDataPath(t);return this.retrieveData(n,!1)}async filter(t,r){let n=await this.getData(t);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new wc.DataError("The entry at the path ("+t+") needs to be either an Object or an Array",12)}async find(t,r){let n=await this.getData(t);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new wc.DataError("The entry at the path ("+t+") needs to be either an Object or an Array",12)}async push(t,r,n=!0){return(0,Xke.writeLockAsync)(async()=>{let s=await this.getParentData(t,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new wc.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new wc.DataError("Can't merge an Array with an Object",4);i=(0,XZt.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(t){await(0,Xke.writeLockAsync)(async()=>{(await this.getParentData(t,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(t){this.data=t}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(t){throw new wc.DatabaseError("Can't Load Database",1,t)}}async save(t){if(t=t||!1,!t&&!this.loaded)throw new wc.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new wc.DatabaseError("Can't save the database",2,r)}}async fromPath(t,r="id"){let[,...n]=t.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new wc.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};Nc.JsonDB=Jke});var M4e=S((Gks,ber)=>{"use strict";var{EventEmitter:P8n}=require("node:events"),{inherits:L8n}=require("node:util");function s1(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length,r=t-1;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Uint8Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(r);for(var n=0;n=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let c=this._lookbehind_size+a;return c>0&&this.emit("info",!1,this._lookbehind,0,c),this._lookbehind_size-=c,this._lookbehind.copy(this._lookbehind,0,c,this._lookbehind_size),e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(a=e.indexOf(r,a+this._bufpos),a!==-1)return++this.matches,a===0?this.emit("info",!0):this.emit("info",!0,e,this._bufpos,a),this._bufpos=a+n;for(a=t-s,a<0&&(a=0);a!==t&&(e[a]!==r[0]||Buffer.compare(e.subarray(a+1,t),r.subarray(1,t-a))!==0);)++a;return a!==t&&(e.copy(this._lookbehind,0,a,t),this._lookbehind_size=t-a),a!==0&&this.emit("info",!1,e,this._bufpos,a),this._bufpos=t,t};s1.prototype._sbmh_lookup_char=function(e,t){return t<0?this._lookbehind[this._lookbehind_size+t]:e[t]};s1.prototype._sbmh_memcmp=function(e,t,r){for(var n=0;n{"use strict";var M8n=require("node:util").inherits,Ier=require("node:stream").Readable;function k4e(e){Ier.call(this,e)}M8n(k4e,Ier);k4e.prototype._read=function(e){};Rer.exports=k4e});var BJ=S((Yks,xer)=>{"use strict";xer.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var Der=S((Qks,Oer)=>{"use strict";var Ner=require("node:events").EventEmitter,k8n=require("node:util").inherits,wer=BJ(),B8n=M4e(),U8n=Buffer.from(`\r -\r -`),F8n=/\r\n/g,$8n=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function UN(e){Ner.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=wer(e,"maxHeaderPairs",2e3),this.maxHeaderSize=wer(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new B8n(U8n),this.ss.on("info",function(r,n,s,i){n&&!t.maxed&&(t.nread+i-s>=t.maxHeaderSize?(i=t.maxHeaderSize-t.nread+s,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=i-s,t.buffer+=n.toString("binary",s,i)),r&&t._finish()})}k8n(UN,Ner);UN.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};UN.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};UN.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};UN.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(F8n),t=e.length,r,n;for(var s=0;s{"use strict";var B4e=require("node:stream").Writable,q8n=require("node:util").inherits,H8n=M4e(),Per=Cer(),V8n=Der(),j8n=45,K8n=Buffer.from("-"),G8n=Buffer.from(`\r -`),z8n=function(){};function Y0(e){if(!(this instanceof Y0))return new Y0(e);if(B4e.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new V8n(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}q8n(Y0,B4e);Y0.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else B4e.prototype.emit.apply(this,arguments)};Y0.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new Per(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var Mer=new TextDecoder("utf-8"),ker=new Map([["utf-8",Mer],["utf8",Mer]]);function Y8n(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return TU.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return TU.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return TU.utf16le;case"base64":return TU.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return TU.other.bind(e)}}var TU={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),ker.has(F4e.toString()))try{return ker.get(F4e).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function Q8n(e,t,r){return e&&Y8n(r)(e,t)}Ber.exports=Q8n});var q4e=S((Xks,Her)=>{"use strict";var FJ=UJ(),Uer=/%[a-fA-F0-9][a-fA-F0-9]/g,W8n={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` -`,"%0A":` -`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function Fer(e){return W8n[e]}var $J=0,$er=1,$4e=2,qer=3;function X8n(e){let t=[],r=$J,n="",s=!1,i=!1,a=0,o="",c=e.length;for(var u=0;u{"use strict";Ver.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var Yer=S((Zks,zer)=>{"use strict";var{Readable:Ger}=require("node:stream"),{inherits:J8n}=require("node:util"),Z8n=U4e(),Ker=q4e(),e5n=UJ(),t5n=jer(),i1=BJ(),r5n=/^boundary$/i,n5n=/^form-data$/i,s5n=/^charset$/i,i5n=/^filename$/i,a5n=/^name$/i;qJ.detect=/^multipart\/form-data/i;function qJ(e,t){let r,n,s=this,i,a=t.limits,o=t.isPartAFile||((D,M,L)=>M==="application/octet-stream"||L!==void 0),c=t.parsedConType||[],u=t.defCharset||"utf8",l=t.preservePath,d={highWaterMark:t.fileHwm};for(r=0,n=c.length;rg)return s.parser.removeListener("part",D),s.parser.on("part",FN),e.hitPartsLimit=!0,e.emit("partsLimit"),FN(M);if(T){let L=T;L.emit("end"),L.removeAllListeners("end")}M.on("header",function(L){let U,G,$,K,ee,z,oe=0;if(L["content-type"]&&($=Ker(L["content-type"][0]),$[0])){for(U=$[0].toLowerCase(),r=0,n=$.length;rp){let de=p-oe+Z.length;de>0&&Q.push(Z.slice(0,de)),Q.truncated=!0,Q.bytesRead=p,M.removeAllListeners("data"),Q.emit("limit");return}else Q.push(Z)||(s._pause=!0);Q.bytesRead=oe},te=function(){I=void 0,Q.push(null)}}else{if(v===_)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),FN(M);++v,++b;let Q="",Z=!1;T=M,le=function(de){if((oe+=de.length)>h){let B=h-(oe-de.length);Q+=de.toString("binary",0,B),Z=!0,M.removeAllListeners("data")}else Q+=de.toString("binary")},te=function(){T=void 0,Q.length&&(Q=e5n(Q,"binary",K)),e.emit("field",G,Q,!1,Z,ee,U),--b,f()}}M._readableState.sync=!1,M.on("data",le),M.on("end",te)}).on("error",function(L){I&&I.emit("error",L)})}).on("error",function(D){e.emit("error",D)}).on("finish",function(){x=!0,f()})}qJ.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};qJ.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function FN(e){e.resume()}function H4e(e){Ger.call(this,e),this.bytesRead=0,this.truncated=!1}J8n(H4e,Ger);H4e.prototype._read=function(e){};zer.exports=qJ});var Wer=S((e4s,Qer)=>{"use strict";var o5n=/\+/g,c5n=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function V4e(){this.buffer=void 0}V4e.prototype.write=function(e){e=e.replace(o5n," ");let t="",r=0,n=0,s=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var u5n=Wer(),$N=UJ(),j4e=BJ(),l5n=/^charset$/i;HJ.detect=/^application\/x-www-form-urlencoded/i;function HJ(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=j4e(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=j4e(r,"fieldNameSize",100),this.fieldsLimit=j4e(r,"fields",1/0);let s;for(var i=0,a=n.length;ii&&(this._key+=this.decoder.write(e.toString("binary",i,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),i=r+1;else if(n!==void 0){++this._fields;let o,c=this._keyTrunc;if(n>i?o=this._key+=this.decoder.write(e.toString("binary",i,n)):o=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o.length&&this.boy.emit("field",$N(o,"binary",this.charset),"",c,!1),i=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(s>i&&(this._key+=this.decoder.write(e.toString("binary",i,s))),i=s,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(ii&&(this._val+=this.decoder.write(e.toString("binary",i,n))),this.boy.emit("field",$N(this._key,"binary",this.charset),$N(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),i=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(s>i&&(this._val+=this.decoder.write(e.toString("binary",i,s))),i=s,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(i0?this.boy.emit("field",$N(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",$N(this._key,"binary",this.charset),$N(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};Xer.exports=HJ});var ttr=S((r4s,bU)=>{"use strict";var K4e=require("node:stream").Writable,{inherits:d5n}=require("node:util"),f5n=U4e(),Zer=Yer(),etr=Jer(),h5n=q4e();function M_(e){if(!(this instanceof M_))return new M_(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},K4e.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}d5n(M_,K4e);M_.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}K4e.prototype.emit.apply(this,arguments)};M_.prototype.getParserByHeaders=function(e){let t=h5n(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(Zer.detect.test(t[0]))return new Zer(this,r);if(etr.detect.test(t[0]))return new etr(this,r);throw new Error("Unsupported Content-Type.")};M_.prototype._write=function(e,t,r){this._parser.write(e,r)};bU.exports=M_;bU.exports.default=M_;bU.exports.Busboy=M_;bU.exports.Dicer=f5n});var ntr=S((n4s,G4e)=>{"use strict";var p5n=/at\s{1}(?:.*\.)?plugin\s{1}.*\n\s*(.*)/,m5n=/(\w*(\.\w*)*)\..*/;G4e.exports=function(t){if(t.name.length>0)return t.name;let r=Error.stackTraceLimit;Error.stackTraceLimit=10;try{throw new Error("anonymous function")}catch(n){return Error.stackTraceLimit=r,rtr(n.stack)}};function rtr(e){let t=e.match(p5n);return t?t[1].split(/[/\\]/).slice(-1)[0].match(m5n)[1]:"anonymous"}G4e.exports.extractPluginName=rtr});var itr=S((s4s,str)=>{"use strict";str.exports=function(t){return t[0]==="@"&&(t=t.slice(1).replace("/","-")),t.replace(/-(.)/g,function(n,s){return s.toUpperCase()})}});var atr=S((i4s,VJ)=>{"use strict";var g5n=ntr(),_5n=itr(),A5n=0;function z4e(e,t={}){let r=!1;if(typeof e.default<"u"&&(e=e.default),typeof e!="function")throw new TypeError(`fastify-plugin expects a function, instead got a '${typeof e}'`);if(typeof t=="string"&&(t={fastify:t}),typeof t!="object"||Array.isArray(t)||t===null)throw new TypeError("The options object should be an object");if(t.fastify!==void 0&&typeof t.fastify!="string")throw new TypeError(`fastify-plugin expects a version string, instead got '${typeof t.fastify}'`);t.name||(r=!0,t.name=g5n(e)+"-auto-"+A5n++),e[Symbol.for("skip-override")]=t.encapsulate!==!0,e[Symbol.for("fastify.display-name")]=t.name,e[Symbol.for("plugin-meta")]=t,e.default||(e.default=e);let n=_5n(t.name);return!r&&!e[n]&&(e[n]=e),e}VJ.exports=z4e;VJ.exports.default=z4e;VJ.exports.fastifyPlugin=z4e});var utr=S((a4s,ctr)=>{"use strict";var k_=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],a1=Math.random;function otr(){return k_[255*a1()|0]+k_[255*a1()|0]+k_[255*a1()|0]+k_[255*a1()|0]+k_[255*a1()|0]+k_[255*a1()|0]+k_[255*a1()|0]}ctr.exports.generateId=function(){let t=0,r=otr();return function(){return t===255?(r=otr())+k_[t=0]:r+k_[++t]}}()});var ltr=S((o4s,IU)=>{"use strict";var{format:E5n}=require("node:util");function y5n(){return`${this.name} [${this.code}]: ${this.message}`}var jJ=Symbol.for("fastify-error-generic");function qN(e,t,r=500,n=Error,s=qN.captureStackTrace){let i=e===jJ;if(i&&(e="FST_ERR"),!e)throw new Error("Fastify error code must not be empty");if(!t)throw new Error("Fastify error message must not be empty");e=e.toUpperCase(),!r&&(r=void 0);let a=Symbol.for(`fastify-error ${e}`);function o(...c){if(!new.target)return new o(...c);this.code=e,this.name="FastifyError",this.statusCode=r;let u=c.length-1;u!==-1&&c[u]&&typeof c[u]=="object"&&"cause"in c[u]&&(this.cause=c.pop().cause),this.message=E5n(t,...c),Error.stackTraceLimit&&s&&Error.captureStackTrace(this,o)}return o.prototype=Object.create(n.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0},[jJ]:{value:!0,enumerable:!1,writable:!1,configurable:!1},[a]:{value:!0,enumerable:!1,writable:!1,configurable:!1}}),i?Object.defineProperty(o,Symbol.hasInstance,{value(c){return c&&c[jJ]},configurable:!1,writable:!1,enumerable:!1}):Object.defineProperty(o,Symbol.hasInstance,{value(c){return c&&c[a]},configurable:!1,writable:!1,enumerable:!1}),o.prototype[Symbol.toStringTag]="Error",o.prototype.toString=y5n,o}qN.captureStackTrace=!0;var v5n=qN(jJ,"Fastify Error",500,Error);IU.exports=qN;IU.exports.FastifyError=v5n;IU.exports.default=qN;IU.exports.createError=qN});var ftr=S((c4s,dtr)=>{"use strict";dtr.exports=(e,t)=>new Promise((r,n)=>{if(typeof e.resume!="function"||(e.unpipe&&e.unpipe(),e.resume(),e._readableState&&e._readableState.ended)||!e.readable||e.destroyed)return r();function s(){e.removeListener("end",i),e.removeListener("close",i),e.removeListener("error",a)}function i(){s(),r()}function a(o){s(),t?n(o):r()}e.on("end",i),e.on("close",i),e.on("error",a)})});var ptr=S((u4s,KJ)=>{"use strict";var htr=Object.getPrototypeOf({});function Y4e(e){function t(g){return g!=="constructor"&&g!=="prototype"&&g!=="__proto__"}function r(g){let y=0,A=g.length,E=new Array(A);for(y;ytypeof g!="object"||g===null||g instanceof RegExp||g instanceof Date||g instanceof Buffer:g=>typeof g!="object"||g===null||g instanceof RegExp||g instanceof Date,f=e&&typeof e.mergeArray=="function"?e.mergeArray({clone:h,deepmerge:m,getKeys:o,isMergeableObject:u}):s;function h(g){return u(g)?Array.isArray(g)?r(g):n(g):g}function p(g,y){let A={},E=o(g),v=o(y),b,I,T;for(b=0,I=E.length;b{"use strict";var S5n=ttr(),T5n=require("node:os"),b5n=atr(),{createWriteStream:I5n}=require("node:fs"),{unlink:R5n}=require("node:fs/promises"),mtr=require("node:path"),{generateId:C5n}=utr(),x5n=require("node:util"),B_=ltr(),w5n=ftr(),N5n=ptr()({all:!0}),{PassThrough:O5n,pipeline:D5n,Readable:P5n}=require("node:stream"),L5n=x5n.promisify(D5n),M5n=wne(),X4e=Symbol("multipart"),GJ=Symbol("multipartHandler"),gtr=B_("FST_PARTS_LIMIT","reach parts limit",413),_tr=B_("FST_FILES_LIMIT","reach files limit",413),Atr=B_("FST_FIELDS_LIMIT","reach fields limit",413),Q4e=B_("FST_REQ_FILE_TOO_LARGE","request file too large",413),W4e=B_("FST_PROTO_VIOLATION","prototype property is not allowed as field name",400),Etr=B_("FST_INVALID_MULTIPART_CONTENT_TYPE","the request is not multipart",406),ytr=B_("FST_INVALID_JSON_FIELD_ERROR","a request field is not a valid JSON as declared by its Content-Type",406),vtr=B_("FST_FILE_BUFFER_NOT_FOUND","the file buffer was not found",500),k5n=B_("FST_NO_FORM_DATA","FormData is not available",500);function B5n(e,t,r){e[X4e]=!0,r()}function U5n(e){try{return new S5n(e)}catch(t){let r=new O5n;return process.nextTick(function(){r.emit("error",t)}),r}}function J4e(e,t,r){t.limits={...t.limits,parts:t.limits?.parts||1e3,fileSize:t.limits?.fileSize||e.initialConfig.bodyLimit};let n=t.attachFieldsToBody;(n===!0||n==="keyValues")&&(typeof t.sharedSchemaId=="string"&&n===!0&&e.addSchema({$id:t.sharedSchemaId,type:"object",properties:{fieldname:{type:"string"},encoding:{type:"string"},filename:{type:"string"},mimetype:{type:"string"}}}),e.addHook("preValidation",async function(h,p){if(h.isMultipart()){for await(let m of h.parts())h.body=m.fields,m.file&&(t.onFile?await t.onFile.call(h,m):await m.toBuffer());if(n==="keyValues"){let m={};if(h.body){let _=Object.keys(h.body);for(let g=0;g<_.length;++g){let y=_[g],A=h.body[y];if(A.value!==void 0)m[y]=A.value;else if(A._buf)m[y]=A._buf;else if(Array.isArray(A)){let E=[];for(let v=0;v{await h.cleanRequestFiles()});function i(){return this[X4e]}function a(h={}){if(!this.isMultipart())throw new Etr;this.log.debug("starting multipart parsing");let p=[],m=null,_=L=>{m?(m(L),m=null):p.push(L)},g=L=>{if(p.length>0){let U=p[0];p=p.slice(1),L(U)}else m=L},y=()=>new Promise((L,U)=>{g(G=>{G instanceof Error?G.message==="Unexpected end of multipart data"?L(null):U(G):L(G)})}),A={},E=null,v=null,b=this.raw,I=N5n({headers:b.headers},t,h);this.log.trace({busboyOptions:I},"Providing options to busboy");let T=U5n(I);b.on("close",M),b.on("error",M),T.on("field",x).on("file",w).on("end",M).on("finish",M).on("close",M).on("error",M),T.on("partsLimit",function(){let L=new gtr;D(L),process.nextTick(()=>M(L))}),T.on("filesLimit",function(){let L=new _tr;D(L),process.nextTick(()=>M(L))}),T.on("fieldsLimit",function(){let L=new Atr;D(L),process.nextTick(()=>M(L))}),b.pipe(T);function x(L,U,G,$,K,ee){if(L in Object.prototype){D(new W4e);return}if(ee.startsWith("application/json")){if($){D(new ytr);return}try{U=M5n.parse(U),ee="application/json"}catch{D(new ytr);return}}let z={type:"field",fieldname:L,mimetype:ee,encoding:K,value:U,fieldnameTruncated:G,valueTruncated:$,fields:A};A[L]===void 0?A[L]=z:Array.isArray(A[L])?A[L].push(z):A[L]=[A[L],z],_(z)}function w(L,U,G,$,K){if(L in Object.prototype){w5n(U),D(new W4e);return}let ee=typeof h.throwFileSizeLimit=="boolean"?h.throwFileSizeLimit:s,z={type:"file",fieldname:L,filename:G,encoding:$,mimetype:K,file:U,fields:A,_buf:null,async toBuffer(){if(this._buf)return this._buf;let oe=[],le;for await(let te of this.file)oe.push(te),ee&&this.file.truncated&&(le=new Q4e,le.part=this,D(le),oe.length=0);if(le)throw le;return this._buf=Buffer.concat(oe),this._buf}};ee&&U.on("limit",function(){let oe=new Q4e;oe.part=z,D(oe)}),A[L]===void 0?A[L]=z:Array.isArray(A[L])?A[L].push(z):A[L]=[A[L],z],v=U,_(z)}function D(L){E=L,v=null}function M(L){b.unpipe(T),(L||b.aborted)&&v&&(v.destroy(),v=null),_(L||E||null)}return y}async function o(h){if(this.savedRequestFiles)return this.savedRequestFiles;let p;if(n===!0){if(!this.body)return[];p=c.call(this,this.body)}else p=await this.files(h);this.savedRequestFiles=[];let m=h&&h.tmpdir||T5n.tmpdir();this.tmpUploads=[];let _=0;for await(let g of p){let y=mtr.join(m,C5n()+mtr.extname(g.filename||"file"+_++)),A=I5n(y);try{this.tmpUploads.push(y),await L5n(g.file,A),this.savedRequestFiles.push({...g,filepath:y})}catch(E){throw this.log.error({err:E},"save request file"),E}}return this.savedRequestFiles}function*c(h){try{let p=Array.isArray(h)?h:Object.values(h);for(let m=0;m(r.type="string",r.format="binary",delete r.isFile,n=>!!n.file),error:{message:"should be a file"}})}RU.exports=b5n(J4e,{fastify:"4.x",name:"@fastify/multipart"});RU.exports.default=J4e;RU.exports.fastifyMultipart=J4e;RU.exports.ajvFilePlugin=F5n});var X5n={};Ft(X5n,{start:()=>Q5n,stop:()=>W5n});module.exports=unr(X5n);var xtr=Ne(gXe(),1);var EJ=Ne(require("fs"),1),yJ=Ne(require("path"),1);Pr();sa();var sFr=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"];function iFr(e){return String(e).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var aFr=new RegExp(sFr.map(iFr).sort((e,t)=>t.length-e.length).join("|"),"ig"),Cm=new gt(500,60*60*1e3),vle=new gt(1e3,60*60*1e3),_tt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},Att={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function oFr(e){if(!e)return-1;let t=0,r=0,n=0,s=!1;for(let i=0;iString.fromCharCode(parseInt(h,16))).replace(/<[^>]+>/g,"").replace(/&[a-z]+;/gi,"").trim();let a=t.match(/\[([^\]]+)\]/g);if(a&&a.length>=2){let f=t.replace(/\[([^\]]+)\]/g,"").trim();if(!/[\u4e00-\u9fa5]/.test(f))for(let _ of a){let g=_.slice(1,-1);if(/[\u4e00-\u9fa5]/.test(g)&&!/全球|封装|字幕|语言|下载/.test(g)){let y=g;if(y.includes(".")){let A=y.split(".").filter(E=>E.trim());for(let E of A)if(/[\u4e00-\u9fa5]/.test(E)&&!/全\d+季/.test(E)){y=E.trim();break}}return Cm.set(e,y),y}}let p=a[0].slice(1,-1),m=a[1].slice(1,-1);if(/夸克|百度|迅雷|阿里|天翼|115|下载/.test(p)&&/[\u4e00-\u9fa5]/.test(m))return Cm.set(e,m),m}let o=t.indexOf("|"),c=t.lastIndexOf("|");if(o!==-1&&o!==c){let f=t.substring(o+1,c).trim();return Cm.set(e,f),f}t=t.replace(/[/g,"[").replace(/]/g,"]"),t=t.replace(/\[([^\]]*)\]/g,(f,h)=>/第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+/i.test(h)?f:"").trim(),t=t.replace(/[((].*?[))]/g,"").replace(/【.*?】/g,"").trim(),t=t.replace(/\b\d+(\.\d+)?[GMK]B?\b/gi,"").replace(/\b(2160|1080|720|480)[pP]\b/gi,"").replace(/\b(4K|2K|HDR|HD|SD|FHD|UHD)\b/gi,"").replace(/\bx264|x265|H264|HEVC\b/gi,"").replace(/\bAAC|AC3|DTS|FLAC\b/gi,"").replace(/\b(10bit|8bit|60fps|120fps)\b/gi,"").replace(/\bWEB-DL\b/gi,"").replace(/\bWEB-MKV\b/gi,"").replace(/\bWEB-\b/gi,"").replace(/\bWEB\b/gi,"").replace(/\bREMUX\b/gi,"").replace(/S\d+E\d+(-S\d+E\d+)?/gi,"").replace(/完结\s*\d+\s*集/g,"").replace(/更新\s*\d+\s*集/g,"").replace(/更新至\s*\d+\s*集/g,"").replace(/更至\s*\d+\s*集/g,"").replace(/全\s*\d+\s*集/g,"").replace(/第\s*\d+\s*集/g,"").replace(/最新/g,"").replace(/臻彩/g,"").replace(aFr,"").replace(/[\u200E\u200F\u202A-\u202E]/g,"").replace(/\s+/g," ").trim();let u=t.match(/([\u4e00-\u9fa5]{2,})/);if(u){let f=u[1],h=new RegExp(f+"\\d*"+f,"g");t=t.replace(h,f)}if(t=t.replace(/\d{4}$/g,"").trim(),t=t.replace(/[((][))]/g,"").replace(/【】/g,"").replace(/\[\]/g,"").trim(),t.includes(".")){let f=t.split(".").filter(p=>p.trim()),h="";for(let p of f)if(/[\u4e00-\u9fa5]/.test(p)){h=p.trim();break}if(h){let p=h.match(/全\d+季/);if(p)t=h.substring(0,p.index).trim();else{t=h;for(let m of f){let _=m.match(/^S(\d+)$/i);if(_){t=t+" "+_[0];break}}}}}let l=!1;if(t.includes("-")){let f=t.split("-"),h="";for(let p of f)if(/[\u4e00-\u9fa5]/.test(p)){h=p.trim();break}if(h)if(/第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+/i.test(h))t=h,l=!0;else{let p=t.match(/第[一二三四五六七八九十\d]+季|S(\d+)|Season\s*(\d+)/i);if(p)return t=h+" "+p[0],l=!0,Cm.set(e,t),t;t=h,l=!0}}if(t.includes("/")){let f=t.split("/");for(let h of f)if(/[\u4e00-\u9fa5]/.test(h)){t=h.trim();break}}if(!l&&t.includes(" ")){let f=t.split(" ").filter(m=>m.trim());if(f.length>1&&f[0].length===1&&/[a-zA-Z]/.test(f[0])){let m=f.slice(0,2).join(" ");return Cm.set(e,m),m}if(f.length===2&&/[\u4e00-\u9fa5]/.test(f[0])&&/^(第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+)$/i.test(f[1]))return Cm.set(e,t),t;let h=[],p=!1;for(let m=0;m0?t=h.join(" "):f.length>0&&(t=f[0])}t=t.replace(/[::·.。]+$/,"").replace(/\.全\d+季$/,"").replace(/\.第[一二三四五六七八九十\d]+季$/,"").replace(/\.$/,"").replace(/未删减版$/,"").replace(/无删减版$/,"").replace(/删减版$/,"").replace(/完整版$/,"").replace(/\s+$/,"").trim();let d=t||e;return Cm.set(e,d),d}function cFr(e){if(!e)return"";let t=e,r=t.lastIndexOf(".");return r>0&&(t=t.substring(0,r)),t=t.replace(/\[?\d+(\.\d+)?\s*[GMK]B?\]?/gi," "),t=t.replace(/\b(2160|1080|720|480|360)[pP]\b/gi," ").replace(/\b(4K|2K|HD|SD|FHD|UHD)\b/gi," ").replace(/\b(x264|x265|H\.?264|H\.?265|HEVC|AVC)\b/gi," ").replace(/\b(AAC|AC3|DTS|FLAC|MP3)\b/gi," ").replace(/\b(HDR|DV|Dolby|Atmos)\b/gi," ").replace(/\b(BluRay|WEB-DL|DVDRip|BDRip|HDTV)\b/gi," ").replace(/[\-_.,()\[\]【】]+/g," ").replace(/\s+/g," ").trim(),t}function Ett(e,t,r){let n=t;for(;n>0&&/\d/.test(e[n-1]);)n--;return!!(n>1&&e.substring(n-3,n).match(/[0-9]\.[0-9]*$/)||r999||Ett(e,r,n))return!1;let i=e.substring(Math.max(0,r-10),r),a=e.substring(n,Math.min(e.length,n+10)),o=/(ep|episode|集|话|章|回|期)/i.test(i+a),c=/(gb|mb|kb|p|k|fps|bitrate|码率)/i.test(i+a);return o?!0:c?!1:s>=1&&s<=99}function lFr(e,t,r,n){let s=0,i=parseInt(t,10);return i>=1&&i<=99&&(s+=10),r>0&&/[^\w\u4e00-\u9fa5]/.test(e[r-1])&&(s+=5),n=1&&d<=999){let f=u.index+u[0].indexOf(l),h=f+l.length;Ett(t,f,h)||n.push({number:String(d),start:f,end:h,priority:100})}}}let i=/(?:^|[^a-zA-Z0-9\u4e00-\u9fa5])(\d{1,3})(?![a-zA-Z0-9\u4e00-\u9fa5])/g;i.lastIndex=0;let a;for(;(a=i.exec(t))!==null;){let o=a[1],c=a.index+a[0].indexOf(o),u=c+o.length;if(uFr(t,o,c,u)){let l=lFr(t,o,c,u);n.push({number:o,start:c,end:u,priority:l})}}if(n.length===0){let o=/\b(\d{1,3})\b/g;for(o.lastIndex=0;(a=o.exec(r))!==null;){let c=a[1],u=a.index,l=u+c.length,d=parseInt(c,10);d>=1&&d<=999&&!(d>=1900&&d<=2100)&&n.push({number:c,start:u,end:l,priority:1})}}return n.length>0?(n.sort((o,c)=>c.priority-o.priority||c.start-o.start),n[0].number):"-1"}function dFr(e,t){let r=e.length,n=t.length,s=Array(r+1).fill(null).map(()=>Array(n+1).fill(0));for(let i=0;i<=r;i++)s[i][0]=i;for(let i=0;i<=n;i++)s[0][i]=i;for(let i=1;i<=r;i++)for(let a=1;a<=n;a++)e[i-1]===t[a-1]?s[i][a]=s[i-1][a-1]:s[i][a]=Math.min(s[i-1][a]+1,s[i][a-1]+1,s[i-1][a-1]+1);return s[r][n]}function fFr(e,t){let r=e.length,n=t.length,s=0,i=0,a=Array(r+1).fill(null).map(()=>Array(n+1).fill(0));for(let o=1;o<=r;o++)for(let c=1;c<=n;c++)e[o-1]===t[c-1]&&(a[o][c]=a[o-1][c-1]+1,a[o][c]>s&&(s=a[o][c],i=o));return e.substring(i-s,i)}function dR(e,t){if(!e||!t)return 0;let r=p=>String(p||"").toLowerCase().replace(/\s+/g,"").trim(),n=r(e),s=r(t);if(!n||!s)return 0;let i=ns&&(s=l,n=i)}else o>s&&(s=o,n=i)}return{episode:n,similarity:s}}var ytt=new Set(["xml","json"]);function ia(e){let t=String(e||"xml").trim().toLowerCase();return ytt.has(t)?t:"xml"}function hFr(e){let t=[];if(!e)return t.push("\u914D\u7F6E\u4E0D\u80FD\u4E3A\u7A7A"),{valid:!1,errors:t};if(!e.address||typeof e.address!="string")t.push("address \u5B57\u6BB5\u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");else try{let r=new URL(e.address);["http:","https:"].includes(r.protocol)||t.push("address \u5FC5\u987B\u662F http \u6216 https \u534F\u8BAE")}catch{t.push("address \u4E0D\u662F\u6709\u6548\u7684 URL")}return e.name!==void 0&&typeof e.name!="string"&&t.push("name \u5B57\u6BB5\u5FC5\u987B\u662F\u5B57\u7B26\u4E32"),e.enabled!==void 0&&typeof e.enabled!="boolean"&&t.push("enabled \u5B57\u6BB5\u5FC5\u987B\u662F\u5E03\u5C14\u503C"),e.priority!==void 0&&(typeof e.priority!="number"||e.priority<0)&&t.push("priority \u5B57\u6BB5\u5FC5\u987B\u662F\u975E\u8D1F\u6570"),e.timeout!==void 0&&(typeof e.timeout!="number"||e.timeout<1e3||e.timeout>3e4)&&t.push("timeout \u5B57\u6BB5\u5FC5\u987B\u5728 1000-30000 \u4E4B\u95F4"),{valid:t.length===0,errors:t}}function vtt(e){let t=[];if(!e)return t.push("\u914D\u7F6E\u4E0D\u80FD\u4E3A\u7A7A"),{valid:!1,errors:t};if(!e.urls||!Array.isArray(e.urls)?t.push("urls \u5B57\u6BB5\u5FC5\u987B\u662F\u6570\u7EC4"):(e.urls.length===0&&t.push("\u81F3\u5C11\u9700\u8981\u914D\u7F6E\u4E00\u4E2A\u5F39\u5E55\u6E90"),e.urls.forEach((r,n)=>{let s=hFr(r);s.valid||t.push(`\u6E90 #${n+1}: ${s.errors.join(", ")}`)})),e.autoPush!==void 0&&typeof e.autoPush!="boolean"&&t.push("autoPush \u5B57\u6BB5\u5FC5\u987B\u662F\u5E03\u5C14\u503C"),e.format!==void 0){let r=String(e.format||"").trim().toLowerCase();ytt.has(r)||t.push("format \u5B57\u6BB5\u5FC5\u987B\u662F xml \u6216 json")}return e.autoPushBlacklist!==void 0&&(Array.isArray(e.autoPushBlacklist)?e.autoPushBlacklist.forEach((r,n)=>{typeof r!="string"&&t.push(`autoPushBlacklist[${n}] \u5FC5\u987B\u662F\u5B57\u7B26\u4E32`)}):t.push("autoPushBlacklist \u5B57\u6BB5\u5FC5\u987B\u662F\u6570\u7EC4")),{valid:t.length===0,errors:t}}function pFr(e){return{address:e.address.trim().replace(/\/$/,""),name:e.name||new URL(e.address).hostname,enabled:e.enabled!==!1,priority:e.priority||0,timeout:e.timeout||5e3}}function ble(e){let t={urls:e.urls.map(pFr),format:ia(e.format),autoPush:e.autoPush!==!1,autoPushBlacklist:e.autoPushBlacklist||[]};return t.urls.sort((r,n)=>n.priority-r.priority),t}xm();sa();var k$=1e4,Ttt=5*60*1e3,gFr=0,_Fr=.6,AFr=60*60*1e3,btt=50,Itt=200,Rle=new gt(btt,AFr);function UA(e,t,r,n=null){let s=n||bl(e);if(!s)return;if(!r||!Array.isArray(r.episodes)){De.warn(`[DanmuService] \u5C1D\u8BD5\u8BBE\u7F6E\u65E0\u6548\u504F\u597D: anime \u7F3A\u5C11 episodes \u6570\u7EC4\uFF0Ckey=${s}`);return}let i={animeTitle:r.animeTitle,episodes:r.episodes.map(a=>({episodeId:a.episodeId,episodeTitle:a.episodeTitle}))};Rle.set(s,{sourceUrl:t,anime:i}),De.info(`[DanmuService] \u504F\u597D\u5DF2\u8BB0\u5F55/\u5237\u65B0: ${s} -> ${t} (\u7F13\u5B58: ${Rle.size}/${btt})`)}function Stt(e){let t=bl(e);return t?Rle.get(t):null}var Cle=class{constructor(){this.cache=new gt(Itt,Ttt)}_generateKey(t,r,n){return`${encodeURIComponent(n)}:${encodeURIComponent(t)}:${r}`}get(t,r,n){let s=this._generateKey(t,r,n);return this.cache.get(s)}set(t,r,n,s){let i=this._generateKey(t,r,n);this.cache.set(i,s)}cleanup(){return this.cache.cleanup()}clear(){this.cache.clear()}get size(){return this.cache.size}getStats(){return this.cache.getStats()}},WD=new Cle;setInterval(()=>{let e=WD.cleanup();e>0&&De.info(`[DanmuService] \u6E05\u7406\u4E86 ${e} \u4E2A\u8FC7\u671F\u7F13\u5B58\u9879`)},Ttt);async function Rtt(e,t,r={}){let{timeout:n=k$,retries:s=gFr,signal:i}=r,a=Date.now();try{let o=await ve.get(`${e.address}/api/v2/search/episodes`,{params:{anime:t},timeout:n,signal:i,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/json"}}),c=Date.now()-a;return o.data.success&&o.data.animes&&o.data.animes.length>0?{success:!0,source:e.name,sourceUrl:e.address,data:o.data,duration:c,error:null}:{success:!1,source:e.name,sourceUrl:e.address,data:null,duration:c,error:"\u672A\u627E\u5230\u5339\u914D\u7ED3\u679C"}}catch(o){let c=Date.now()-a;if(ve.isCancel(o)){let u=new Error("Aborted");throw u.name="AbortError",u}return s>0&&(o.code==="ECONNABORTED"||o.code==="ETIMEDOUT")?(De.info(`[DanmuService] ${e.name} \u8D85\u65F6\uFF0C\u91CD\u8BD5\u4E2D... (\u5269\u4F59${s}\u6B21)`),Rtt(e,t,{timeout:n,retries:s-1,signal:i})):{success:!1,source:e.name,sourceUrl:e.address,data:null,duration:c,error:o.message||"\u8BF7\u6C42\u5931\u8D25"}}}var Ile=5;async function EFr(e,t,r={}){let{timeout:n=k$,signal:s,onResult:i,shouldStop:a}=r;if(!e||e.length===0)throw new Error("\u6CA1\u6709\u53EF\u7528\u7684\u5F39\u5E55\u6E90");if(!t||!t.trim())throw new Error("\u52A8\u6F2B\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A");De.info(`[DanmuService] \u{1F50D} \u5F00\u59CB\u641C\u7D22: "${t}", \u6E90\u6570\u91CF: ${e.length}, \u5E76\u53D1\u6570: ${Ile}`);let o=new AbortController,c=()=>o.abort();s?.aborted?o.abort():s?.addEventListener&&s.addEventListener("abort",c,{once:!0});let u=[],l=!1;try{for(let h=0;hRtt(g,t,{timeout:n,signal:o.signal}).then(y=>({ok:!0,result:y})).catch(y=>({ok:!1,error:y}))),_=new Set(m.map((g,y)=>y));for(;_.size>0;){let y=await Promise.race(Array.from(_).map(E=>m[E].then(v=>({idx:E,payload:v}))));if(_.delete(y.idx),!y.payload.ok){let E=y.payload.error;if(E?.name==="AbortError"||o.signal.aborted)continue;De.error("[DanmuService] \u274C \u5355\u6E90\u641C\u7D22\u5F02\u5E38:",E?.message||E);continue}let A=y.payload.result;if(u.push(A),typeof i=="function")try{i(A,u)}catch(E){De.error("[DanmuService] \u274C onResult \u56DE\u8C03\u5F02\u5E38:",E?.message||E)}if(typeof a=="function"){let E=!1;try{E=!!a(A,u)}catch(v){De.error("[DanmuService] \u274C shouldStop \u56DE\u8C03\u5F02\u5E38:",v?.message||v)}if(E){l=!0,o.abort();break}}}if(l)break}}finally{s?.removeEventListener&&s.removeEventListener("abort",c)}let d=u.filter(h=>h.success).length,f=u.length-d;return De.info(`[DanmuService] \u{1F4CA} \u641C\u7D22\u5B8C\u6210: \u6210\u529F${d}\u4E2A, \u5931\u8D25${f}\u4E2A${l?" (\u63D0\u524D\u4E2D\u6B62)":""}`),u}async function yFr(e,t,r,n={}){let{timeout:s=k$,useCache:i=!0,minSimilarity:a=_Fr,signal:o}=n,c=bl(e);if(!c||c==="undefined"||e==="undefined")throw De.error(`[DanmuService] \u274C \u6807\u9898\u65E0\u6548: vodName="${e}", title="${c}"`),new Error("\u65E0\u6CD5\u8BC6\u522B\u89C6\u9891\u6807\u9898\uFF0C\u8BF7\u68C0\u67E5\u89C6\u9891\u6E90");De.info(`[DanmuService] \u{1F50D} \u5339\u914D\u5F39\u5E55: vodName="${e}", \u63D0\u53D6\u6807\u9898="${c}", \u96C6\u6570="${t}"`);let u=Stt(c);if(u){De.info(`[DanmuService] \u2B50 \u53D1\u73B0\u504F\u597D\u6E90: ${u.sourceUrl}`);let v=u.anime,b=dR(c,v.animeTitle);if(De.info(`[DanmuService] \u{1F50D} \u504F\u597D\u6E90\u6807\u9898\u76F8\u4F3C\u5EA6: ${b.toFixed(4)} (\u5F53\u524D="${c}", \u504F\u597D="${v.animeTitle}")`),b<.5)De.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u6807\u9898\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\uFF0C\u8DF3\u8FC7\u504F\u597D\u6E90\uFF0C\u56DE\u9000\u5230\u5168\u91CF\u641C\u7D22");else{De.info(`[DanmuService] \u{1F50D} \u5C1D\u8BD5\u5728\u504F\u597D\u6E90\u4E2D\u5339\u914D\u96C6\u6570 (\u5171 ${v.episodes?.length||0} \u96C6)...`);let I=0;for(let D of v.episodes){let M=lR(D.episodeTitle),L=Sle(M),U=Sle(t);if(I++,I<=3&&(De.info(`[DanmuService] [\u7CBE\u786E\u5339\u914D ${I}] "${D.episodeTitle}"`),De.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${M}, \u6807\u51C6\u5316: ${L}, \u76EE\u6807: ${U}`)),L===U)return De.info(`[DanmuService] \u2705 \u504F\u597D\u6E90\u7CBE\u786E\u5339\u914D\u96C6\u6570 ${t} (\u6807\u51C6\u5316: ${L})`),UA(c,u.sourceUrl,v),{success:!0,source:u.sourceUrl,sourceUrl:u.sourceUrl,anime:v,episode:D,similarity:1,fromPreference:!0}}De.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u7CBE\u786E\u5339\u914D\u5931\u8D25\uFF0C\u5C1D\u8BD5\u76F8\u4F3C\u5EA6\u5339\u914D...");let{episode:T,similarity:x,matchDetails:w}=Tle(c,v.episodes,t);if(w&&w.length>0){let D=w.sort((M,L)=>L.score-M.score).slice(0,3);De.info("[DanmuService] \u524D3\u4E2A\u5019\u9009\u96C6 (\u6309\u5F97\u5206\u6392\u5E8F):"),D.forEach((M,L)=>{De.info(`[DanmuService] [${L+1}] "${M.title}"`),De.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${M.extractedNum}, \u76F8\u4F3C\u5EA6: ${M.similarity.toFixed(4)}, \u5F97\u5206: ${M.score.toFixed(4)}`)})}if(T)return De.info(`[DanmuService] \u2705 \u504F\u597D\u6E90\u76F8\u4F3C\u5EA6\u5339\u914D\u6210\u529F: "${T.episodeTitle}", \u76F8\u4F3C\u5EA6=${x.toFixed(4)}`),UA(c,u.sourceUrl,v),{success:!0,source:u.sourceUrl,sourceUrl:u.sourceUrl,anime:v,episode:T,similarity:x,fromPreference:!0};De.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u4E2D\u672A\u627E\u5230\u5339\u914D\uFF0C\u56DE\u9000\u5230\u5168\u91CF\u641C\u7D22")}}if(i)for(let v of r){let b=WD.get(c,t,v.address);if(b){let I=Stt(c);if(I&&I.sourceUrl!==v.address){De.info(`[DanmuService] \u23ED\uFE0F \u7F13\u5B58\u6E90 ${v.address} \u4E0E\u504F\u597D\u6E90 ${I.sourceUrl} \u4E0D\u540C\uFF0C\u8DF3\u8FC7\u7F13\u5B58`);continue}return De.info(`[DanmuService] \u{1F4BE} \u547D\u4E2D\u7F13\u5B58: ${v.name}`),UA(c,v.address,b.anime),{success:!0,source:v.name,sourceUrl:v.address,anime:b.anime,episode:b.episode,similarity:b.similarity,fromCache:!0}}}De.info("[DanmuService] \u{1F310} \u5F00\u59CB\u5168\u91CF\u641C\u7D22...");let l=.8,d=null,f=0,h=null,p=!1,m=null,_=0,g=0,y=0;De.info(`[DanmuService] \u{1F50D} \u5F00\u59CB\u5339\u914D\u5206\u6790 (\u76EE\u6807: "${c}", \u96C6\u6570: "${t}", \u6700\u5C0F\u76F8\u4F3C\u5EA6: ${a}, \u63D0\u524D\u8FD4\u56DE\u9608\u503C: ${l}):`);let A=v=>{if(!(!v.success||!v.data?.animes))for(let b of v.data.animes){_++;let I=b.animeTitle.replace(/\(\d{4}\)/g,"").replace(/【[^】]*】/g,"").replace(/\[[^\]]*\]/g,"").replace(/\s*from\s+\w+/gi,"").replace(/第(\d+)季/g,(L,U)=>{let G=["","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341"],$=parseInt(U);return $<=10?`\u7B2C${G[$]}\u5B63`:L}).trim(),T=dR(c,I);if(De.info(`[DanmuService] [\u5C1D\u8BD5 ${_}] \u6E90="${v.source}", \u52A8\u6F2B="${b.animeTitle}"`),De.info(`[DanmuService] \u6E05\u7406\u540E\u6807\u9898: "${I}"`),De.info(`[DanmuService] \u6807\u9898\u76F8\u4F3C\u5EA6: ${T.toFixed(4)} (\u9608\u503C: ${a})`),T0){let L=D.sort((U,G)=>G.score-U.score).slice(0,5);De.info("[DanmuService] \u524D5\u4E2A\u5019\u9009\u96C6 (\u6309\u5F97\u5206\u6392\u5E8F):"),L.forEach((U,G)=>{De.info(`[DanmuService] [${G+1}] "${U.title}"`),De.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${U.extractedNum}, \u6807\u51C6\u5316: ${U.normalizedNum}, \u76EE\u6807: ${U.normalizedTargetEpisode||"N/A"}`),De.info(`[DanmuService] \u76F8\u4F3C\u5EA6: ${U.similarity.toFixed(4)}, \u5F97\u5206: ${U.score.toFixed(4)}`),U.episodeDiff!==void 0&&De.info(`[DanmuService] \u96C6\u6570\u5DEE: ${U.episodeDiff}, \u5956\u52B1: ${U.episodeBonus}`)})}continue}let M=T*.6+w*.4;if(De.info(`[DanmuService] \u2705 \u627E\u5230\u5339\u914D\u96C6: "${x.episodeTitle}"`),De.info(`[DanmuService] \u96C6\u6570\u76F8\u4F3C\u5EA6: ${w.toFixed(4)}, \u7EFC\u5408\u76F8\u4F3C\u5EA6: ${M.toFixed(4)}`),M>f?(f=M,d={anime:b,episode:x},h=v,De.info("[DanmuService] \u{1F31F} \u5F53\u524D\u6700\u4F73\u5339\u914D\u5DF2\u66F4\u65B0")):De.info(`[DanmuService] \u7EFC\u5408\u76F8\u4F3C\u5EA6\u4F4E\u4E8E\u5F53\u524D\u6700\u4F73 (${f.toFixed(4)})\uFF0C\u8DF3\u8FC7`),M>=l){p=!0,m={source:v.source,sourceUrl:v.sourceUrl,anime:b,episode:x,similarity:M},De.info(`[DanmuService] \u26A1 \u63D0\u524D\u8FD4\u56DE\u89E6\u53D1: source="${v.source}", anime="${b.animeTitle}", episode="${x.episodeTitle}", totalSimilarity=${M.toFixed(4)}`);return}}},E=await EFr(r,c,{timeout:s,signal:o,onResult:v=>{v.success&&v.data?.animes?De.info(`[DanmuService] \u2705 ${v.source}: \u627E\u5230 ${v.data.animes.length} \u4E2A\u52A8\u6F2B`):De.info(`[DanmuService] \u274C ${v.source}: ${v.error||"\u672A\u77E5\u9519\u8BEF"}`),A(v)},shouldStop:()=>p});return De.info(`[DanmuService] \u{1F4CA} \u5339\u914D\u7EDF\u8BA1: \u603B\u5C1D\u8BD5=${_}, \u6807\u9898\u8FC7\u6EE4=${g}, \u96C6\u6570\u8FC7\u6EE4=${y}`),p&&m?(UA(c,m.sourceUrl,m.anime),i&&WD.set(c,t,m.sourceUrl,{anime:m.anime,episode:m.episode,similarity:m.similarity}),De.info(`[DanmuService] \u2705 \u63D0\u524D\u8FD4\u56DE\u6210\u529F: ${m.anime.animeTitle} - ${m.episode.episodeTitle} (\u76F8\u4F3C\u5EA6: ${m.similarity.toFixed(2)})`),{success:!0,source:m.source,sourceUrl:m.sourceUrl,anime:m.anime,episode:m.episode,similarity:m.similarity,fromCache:!1,earlyReturned:!0,searchResults:E}):d?(UA(c,h.sourceUrl,d.anime),i&&WD.set(c,t,h.sourceUrl,{anime:d.anime,episode:d.episode,similarity:f}),De.info(`[DanmuService] \u2705 \u5339\u914D\u6210\u529F: ${d.anime.animeTitle} - ${d.episode.episodeTitle} (\u76F8\u4F3C\u5EA6: ${f.toFixed(2)}, \u7F13\u5B58: ${WD.size}/${Itt})`),{success:!0,source:h.source,sourceUrl:h.sourceUrl,anime:d.anime,episode:d.episode,similarity:f,fromCache:!1}):(De.error("[DanmuService] \u274C \u672A\u627E\u5230\u5339\u914D\u7684\u5F39\u5E55"),De.error(`[DanmuService] \u8F93\u5165\u6458\u8981: vodName="${e}", \u63D0\u53D6\u6807\u9898="${c}", \u96C6\u6570="${t}"`),De.error("[DanmuService] \u53EF\u80FD\u539F\u56E0:"),De.error(`[DanmuService] 1. \u6807\u9898\u76F8\u4F3C\u5EA6\u8FC7\u4F4E (\u8FC7\u6EE4\u4E86 ${g} \u4E2A)`),De.error(`[DanmuService] 2. \u96C6\u6570\u4E0D\u5339\u914D (\u8FC7\u6EE4\u4E86 ${y} \u4E2A)`),De.error("[DanmuService] 3. \u5F39\u5E55\u6E90\u4E2D\u6CA1\u6709\u8BE5\u5267\u96C6"),{success:!1,error:"\u672A\u5339\u914D\u5230\u5F39\u5E55",searchResults:E})}async function Ctt(e,t,r,n={}){let s=await yFr(e,t,r,n);if(!s.success)return s;let i=ia(n.format),a=`${s.sourceUrl}/api/v2/comment/${s.episode.episodeId}?format=${encodeURIComponent(i)}`;return{...s,danmuUrl:a,format:i,matchInfo:{animeTitle:s.anime.animeTitle,episodeTitle:s.episode.episodeTitle,similarity:s.similarity}}}function vFr(e){return ia(e)==="json"?"application/json,text/plain,*/*":"application/xml,text/plain,*/*"}async function xtt(e,t={}){let{timeout:r=k$,signal:n}=t,s=ia(t.format);try{De.info(`[DanmuService] \u{1F4E5} \u83B7\u53D6\u5F39\u5E55\u5185\u5BB9: format=${s}, url=${e}`);let i=await ve.get(e,{responseType:"text",timeout:r,signal:n,headers:{"User-Agent":"CatPaw/1.0",Accept:vFr(s)}});return De.info(`[DanmuService] \u2705 \u5F39\u5E55\u5185\u5BB9\u83B7\u53D6\u6210\u529F: format=${s}`),i.data}catch(i){if(ve.isCancel(i)){let a=new Error("Aborted");throw a.name="AbortError",a}throw De.error(`[DanmuService] \u274C \u83B7\u53D6\u5F39\u5E55\u5185\u5BB9\u5931\u8D25: ${i.message}`),new Error(`\u83B7\u53D6\u5F39\u5E55\u5185\u5BB9\u5931\u8D25: ${i.message}`)}}var B$=new Map,xle=new Map;function wtt(e,t,r=10*60*1e3){B$.set(e,t);let n=xle.get(e);n&&clearTimeout(n);let s=setTimeout(()=>{B$.delete(e),xle.delete(e)},r);typeof s?.unref=="function"&&s.unref(),xle.set(e,s)}function Ntt(){return B$.entries()}function U$(){return B$.size}xm();var YCt=Ne(require("net"),1),cT=Ne(require("path"),1),cSe=Ne(require("fs"),1);xm();var RH=9321,QCt=15e3,cWr=300,uWr=process.env.NODE_PATH?cT.default.resolve(process.env.NODE_PATH):process.cwd();function CH(){return uWr}function lWr(e){if(typeof De?.warn=="function"){De.warn(e);return}if(typeof De?.info=="function"){De.info(e);return}console.warn(e)}function WCt(){return cT.default.join(CH(),"runtime","danmu_api","config",".env")}function dWr(){return cT.default.join(CH(),"runtime","danmu_api","run","danmu_api.status.json")}function XCt(e){let t=dWr();cSe.default.mkdirSync(cT.default.dirname(t),{recursive:!0}),cSe.default.writeFileSync(t,JSON.stringify(e,null,2),"utf8")}function fWr(e){return new Promise(t=>setTimeout(t,e))}async function JCt(e=RH,t="127.0.0.1",r=1200){return await new Promise(n=>{let s=YCt.default.createConnection({host:t,port:e}),i=!1,a=o=>{if(!i){i=!0;try{s.destroy()}catch{}n(o)}};s.setTimeout(r),s.once("connect",()=>a(!0)),s.once("timeout",()=>a(!1)),s.once("error",()=>a(!1))})}async function hWr(e=RH,t=QCt){let r=Date.now();for(;Date.now()-r(zCt(),oWr)),n=r&&typeof r.startDanmuApiServer=="function"?r.startDanmuApiServer:null,s;return n?s=await n({host:"127.0.0.1",proxyHost:"127.0.0.1",port:e}):s={port:e,proxyPort:5321,mode:"side-effect"},XCt({pid:process.pid,port:s?.port||e,proxyPort:s?.proxyPort||5321,envPath:t,startedAt:new Date().toISOString(),entry:cT.default.join(CH(),"vendor","danmu_api","danmu_api","server.js"),state:"running",mode:n?"in-process":"in-process-side-effect"}),s}async function uT(e={}){let t=Number(e.port||RH),r=Number(e.timeoutMs||QCt);return await JCt(t)?(XCt({pid:process.pid,port:t,envPath:WCt(),startedAt:new Date().toISOString(),entry:cT.default.join(CH(),"vendor","danmu_api","danmu_api","server.js"),state:"running",mode:"attached"}),{ok:!0,started:!1,port:t}):(lWr(`[DanmuRuntime] \u68C0\u6D4B\u5230 danmu_api \u672A\u76D1\u542C\uFF0C\u51C6\u5907\u62C9\u8D77: port=${t}`),await pWr(t),await hWr(t,r)?(De.info(`[DanmuRuntime] danmu_api \u5DF2\u5C31\u7EEA: port=${t}`),{ok:!0,started:!0,port:t}):(De.error(`[DanmuRuntime] danmu_api \u542F\u52A8\u540E\u4ECD\u672A\u76D1\u542C: port=${t}, timeout=${r}ms`),{ok:!1,started:!0,port:t}))}Hd();var xH={updatedAt:0,spiderKey:"",flag:"",id:"",episodeKey:"",vodName:"",episodeName:"",episodeNumber:"",title:""};function txt(e={}){return xH={...xH,...e,updatedAt:Date.now()},xH}function lE(){return{...xH}}wH();xm();Hd();function sxt(e){return typeof e!="string"?e:e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g,"")}function bk(e,t="xml"){if(!e||typeof e!="string")return 0;if(ia(t)==="json"){try{let n=JSON.parse(e);if(Array.isArray(n?.comments))return n.comments.length;if(Number.isFinite(n?.count))return n.count;if(Array.isArray(n))return n.length}catch{}return 0}let r=e.match(//g);return r?r.length:0}function Ik(e="xml"){return ia(e)==="json"?"application/json; charset=utf-8":"application/xml; charset=utf-8"}function lSe(e="xml"){return ia(e)==="json"?"application/json,text/plain,*/*":"application/xml,text/plain,*/*"}async function dSe(e,t,r=400,n={}){if(!e.raw.writableEnded){De.error(`[DanmuProxy] Error: ${t}`);try{en.isAvailable()?(De.info(`[DanmuProxy] \u53D1\u9001\u9519\u8BEF\u63D0\u793A: "${t}"`),await en.toast(t,{duration:3})===null?De.warn("[DanmuProxy] \u9519\u8BEF\u63D0\u793A\u53D1\u9001\u5931\u8D25 (host bridge \u8FD4\u56DE null)"):De.info("[DanmuProxy] \u9519\u8BEF\u63D0\u793A\u53D1\u9001\u6210\u529F")):De.error("[DanmuProxy] host bridge unavailable (sendError)")}catch(s){De.error(`[DanmuProxy] \u53D1\u9001\u9519\u8BEF\u63D0\u793A\u5931\u8D25: ${s.message}`)}ia(n.format)==="json"?e.code(r).send({error:t}):e.code(r).header("Content-Type",Ik("xml")).send('')}}Pr();function ixt(e,t="/"){let r=String(e||"").trim(),n=String(t||"/").trim()||"/";if(!r)throw new Error("invalid danmu source");let s;try{s=new URL(r)}catch{throw new Error(`invalid danmu source: ${r}`)}let i=n.startsWith("/")?n:`/${n}`;return new URL(i,`${s.origin}/`).toString()}function CWr(e){if(!e)return"unknown error";let t=e?.code||"",r=e?.response?.status,n=e?.config?.timeout,i=[e?.message||String(e)];return t&&i.push(`code=${t}`),r!==void 0&&i.push(`status=${r}`),n!==void 0&&i.push(`timeout=${n}ms`),i.join(", ")}function xWr(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||r.includes("timeout")?"timeout":t==="ECONNREFUSED"?"conn_refused":t==="ECONNRESET"?"conn_reset":t==="ENOTFOUND"||t==="EAI_AGAIN"?"dns_error":String(e?.name||"")==="AbortError"?"aborted":"other"}async function axt(e,t){let r;try{r=new URL(t)}catch{return{ok:!1,reason:"invalid danmu source url"}}if(r.protocol!=="http:"&&r.protocol!=="https:")return{ok:!1,reason:`protocol not allowed: ${r.protocol}`};let n;try{n=await bh(e)}catch{n=null}let s=new Set(Array.isArray(n?.urls)?n.urls.map(i=>{try{return new URL(i.address).host}catch{return""}}).filter(Boolean):[]);return s.size>0?s.has(r.host)?{ok:!0}:{ok:!1,reason:`danmu source not in allowlist: ${r.host}`}:await lT(t)}function wWr(e){try{return new URL(String(e||""),"http://127.0.0.1").searchParams.get("format")}catch{return""}}var bh=async e=>{let t=await e.db.getObjectDefault("/danmu");return ble(t||e.config.danmu)},_Xe=async(e,t)=>{let r=vtt(t);if(!r.valid)throw new Error(`\u914D\u7F6E\u9A8C\u8BC1\u5931\u8D25: ${r.errors.join("; ")}`);let n=ble(t);await e.db.push("/danmu",n)},AXe=async e=>{await e.db.delete("/danmu")};async function s$(e){e.get("/setting",async(t,r)=>{r.send({code:0,data:await bh(t.server)})}),e.put("/setting",async(t,r)=>{try{await _Xe(t.server,t.body),r.send({code:0,message:"\u914D\u7F6E\u4FDD\u5B58\u6210\u529F"})}catch(n){r.send({code:1,message:n.message})}}),e.delete("/setting",async(t,r)=>{await AXe(t.server),r.send({code:0})}),e.get("/search",async(t,r)=>{let n=Date.now(),{source:s,anime:i}=t.query||{};try{if(!s||!i)return De.warn(`[DanmuManualSearch] \u7F3A\u5C11\u53C2\u6570: source="${s||""}", anime="${i||""}"`),r.code(400).send({success:!1,message:"missing source or anime"});let a=await axt(t.server,s);if(!a.ok)return De.warn(`[DanmuManualSearch] \u88AB\u62D2\u7EDD: ${a.reason}`),r.code(403).send({success:!1,message:a.reason});let o=ixt(s,"/api/v2/search/episodes");await uT(),De.info(`[DanmuManualSearch] \u8BF7\u6C42\u5F00\u59CB: anime="${i}", source="${s}", target="${o}"`);let c=await ve.get(o,{params:{anime:i},timeout:15e3,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/json"}}),u=Array.isArray(c?.data?.animes)?c.data.animes:[],l=u.slice(0,5).map(d=>d?.animeTitle).filter(Boolean);De.info(`[DanmuManualSearch] \u8BF7\u6C42\u6210\u529F: anime="${i}", source="${s}", status=${c.status}, success=${c?.data?.success}, animes=${u.length}, duration=${Date.now()-n}ms, preview=${JSON.stringify(l)}`),r.send(c.data)}catch(a){let o=a?.response?.status||502,c=a?.response?.data;De.error(`[DanmuManualSearch] \u8BF7\u6C42\u5931\u8D25: anime="${i||""}", source="${s||""}", status=${o}, duration=${Date.now()-n}ms, message="${a.message||"danmu search proxy failed"}", response=${typeof c=="string"?c.slice(0,300):JSON.stringify(c||{})}`),r.code(o).send({success:!1,message:a.message||"danmu search proxy failed"})}}),e.get("/comment",async(t,r)=>{let n=Date.now(),{source:s,episodeId:i}=t.query||{},a=ia(t.query?.format);try{if(!s||!i)return De.warn(`[DanmuManualComment] \u7F3A\u5C11\u53C2\u6570: source="${s||""}", episodeId="${i||""}", format="${a}"`),r.code(400).send({code:1,message:"missing source or episodeId"});let o=await axt(t.server,s);if(!o.ok)return De.warn(`[DanmuManualComment] \u88AB\u62D2\u7EDD: ${o.reason}`),r.code(403).send({code:1,message:o.reason});let c=ixt(s,`/api/v2/comment/${i}`);await uT(),De.info(`[DanmuManualComment] \u8BF7\u6C42\u5F00\u59CB: source="${s}", episodeId="${i}", format="${a}", target="${c}"`);let u=await ve.get(c,{params:{format:a},responseType:"text",timeout:1e4,headers:{"User-Agent":"CatPaw/1.0",Accept:lSe(a)}}),l=typeof u.data=="string"?u.data.length:0,d=bk(u.data,a);De.info(`[DanmuManualComment] \u8BF7\u6C42\u6210\u529F: source="${s}", episodeId="${i}", format="${a}", status=${u.status}, contentLength=${l}, danmuCount=${d}, duration=${Date.now()-n}ms`),r.type(Ik(a)).send(u.data)}catch(o){let c=o?.response?.status||502,u=o?.response?.data;De.error(`[DanmuManualComment] \u8BF7\u6C42\u5931\u8D25: source="${s||""}", episodeId="${i||""}", status=${c}, duration=${Date.now()-n}ms, message="${o.message||"danmu comment proxy failed"}", response=${typeof u=="string"?u.slice(0,300):JSON.stringify(u||{})}`),r.code(c).send({code:1,message:o.message||"danmu comment proxy failed"})}}),e.get("/current-play",async(t,r)=>{r.send({code:0,data:lE()})}),e.post("/push",async(t,r)=>{let{url:n,sourceUrl:s,anime:i,title:a,flag:o,id:c}=t.body,u=ia(t.body?.format||wWr(n)),l=Date.now(),d=0;De.info(`[DanmuManualPush] \u6536\u5230\u63A8\u9001\u8BF7\u6C42: title="${a||""}", sourceUrl="${s||""}", animeTitle="${i?.animeTitle||""}", episodes=${i?.episodes?.length||0}, format="${u}", flag="${o||""}", id="${c||""}", url="${n||""}"`),UA(a,s,i,a);let f=U$();if(De.info(`[DanmuManualPush] autoPushContext \u5927\u5C0F: ${f}`),f>0)for(let[p,m]of Ntt()){let _=dR(a,m.rawTitle);_>=.5&&(De.info(`[DanmuManualPush] \u547D\u4E2D autoPushContext: ctxKey="${p}", rawTitle="${m.rawTitle}", autoKey="${m.autoKey}", score=${_.toFixed(4)}`),UA(m.autoKey,s,i))}let h=/^https?:\/\//i.test(n)?n:`http://127.0.0.1:${t.server.address().port}${n.startsWith("/")?n:`/${n}`}`;De.info(`[DanmuDiag][ManualPush] stage=prepare sourceUrl="${s||""}" format="${u}" danmuUrl="${h}" localServerPort=${t.server.address().port}`);try{De.info(`[DanmuDiag][ManualPush] stage=fetch_local_proxy_start timeout=10000 url="${h}"`);let p=Date.now(),m=await ve.get(h,{responseType:"text",timeout:1e4,headers:{"User-Agent":"CatPaw/1.0",Accept:lSe(u)}});De.info(`[DanmuDiag][ManualPush] stage=fetch_local_proxy_ok status=${m.status} duration=${Date.now()-p}ms url="${h}"`);let _=m.data;d=bk(_,u),De.info(`[DanmuManualPush] \u83B7\u53D6\u5F39\u5E55\u6210\u529F: title="${a||""}", sourceUrl="${s||""}", format="${u}", danmuUrl="${h}", danmuCount=${d}, duration=${Date.now()-l}ms`),De.info(`[DanmuManualPushFlow] \u51C6\u5907\u63A8\u9001\u5230\u64AD\u653E\u5668: title="${a||""}", format="${u}", url="${h}", danmuCount=${d}`),De.info(`[DanmuDiag][ManualPush] stage=player_push_start danmuCount=${d} url="${h}"`);let g=await en.pushDanmu(h);De.info(`[DanmuDiag][ManualPush] stage=player_push_done result=${g===null?"null":"ok"} url="${h}"`);let y=await en.toast(`\u5F39\u5E55\u63A8\u9001\u6210\u529F\uFF08${d}\u6761\uFF09`,{duration:2});De.info(`[DanmuDiag][ManualPush] stage=player_toast_done result=${y===null?"null":"ok"} danmuCount=${d}`),De.info(`[DanmuManualPushFlow] \u5DF2\u53D1\u9001 danmuPush/toast: title="${a||""}", danmuCount=${d}`)}catch(p){let m=xWr(p),_=CWr(p),g=p?.response?.status;console.error("[ManualPush] \u83B7\u53D6\u5F39\u5E55\u5931\u8D25:",p.message),De.error(`[DanmuDiag][ManualPush] stage=fetch_local_proxy_fail type=${m} detail="${_}" url="${h}" duration=${Date.now()-l}ms`),De.error(`[DanmuManualPush] \u83B7\u53D6\u5F39\u5E55\u5931\u8D25: title="${a||""}", sourceUrl="${s||""}", format="${u}", danmuUrl="${h}", duration=${Date.now()-l}ms, message="${p.message}"`),De.info(`[DanmuDiag][ManualPush] stage=player_push_fallback_start url="${h}"`);let y=await en.pushDanmu(h);De.info(`[DanmuDiag][ManualPush] stage=player_push_fallback_done result=${y===null?"null":"ok"} url="${h}"`);let A=g===429?"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5":`\u5F39\u5E55\u83B7\u53D6\u5931\u8D25: ${p.message}`,E=await en.toast(A,{duration:2});return De.info(`[DanmuDiag][ManualPush] stage=player_toast_fail_done result=${E===null?"null":"ok"} status=${g||0}`),r.send({code:g===429?429:1,danmuCount:0,message:g===429?"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5":p.message||"\u5F39\u5E55\u83B7\u53D6\u5931\u8D25"})}r.send({code:0,danmuCount:d})}),e.get("/bundle.js",(t,r)=>{r.type("application/javascript; charset=utf-8").send(globalThis.danmuBundle||"")}),e.get("/fe",(t,r)=>{r.type("text/html").send(` - - - - - \u5F39\u5E55\u641C\u7D22 - - - - -
- - - - - - - - - `)})}xm();Hd();function NWr(e){if(!e)return"unknown error";let t=e?.code||"",r=e?.response?.status,n=e?.config?.timeout,i=[e?.message||String(e)];return t&&i.push(`code=${t}`),r!==void 0&&i.push(`status=${r}`),n!==void 0&&i.push(`timeout=${n}ms`),i.join(", ")}function OWr(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||r.includes("timeout")?"timeout":t==="ECONNREFUSED"?"conn_refused":t==="ECONNRESET"?"conn_reset":t==="ENOTFOUND"||t==="EAI_AGAIN"?"dns_error":String(e?.name||"")==="AbortError"?"aborted":"other"}async function NH(e,t,r=400,n="xml"){return dSe(e,t,r,{format:n})}async function DWr(e,t){let r=new AbortController;e.raw.on("aborted",()=>{r.abort(),De.info("[DanmuProxy] Client disconnected, aborting danmu processing.")});let n=Date.now(),s=Number(e?.server?.address?.()?.port||0);try{let{name:i,episodeNumber:a}=e.query,o=ia(e.query?.format);if(!i||!a)return await NH(t,"\u7F3A\u5C11\u5FC5\u8981\u53C2\u6570: name \u548C episodeNumber",400,o);let c=await bh(e.server),u=ia(e.query?.format||c?.format);if(!c?.urls||c.urls.length===0)return await NH(t,"\u6CA1\u6709\u914D\u7F6E\u5F39\u5E55\u6E90",500,u);De.info(`[DanmuDiag][Proxy] stage=request_start name="${i}" extractedTitle="${bl(i)}" episode="${a}" format="${u}" sources=${c.urls.length} localServerPort=${s}`),await uT(),De.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u8BF7\u6C42\u5F00\u59CB: rawName="${i}", extractedTitle="${bl(i)}", episode="${a}", format="${u}", sources=${c.urls.length}`),De.info(`[DanmuDiag][Proxy] stage=match_start timeout=8000 name="${i}" episode="${a}"`);let l=Date.now(),d=await Ctt(i,a,c.urls,{timeout:8e3,useCache:!0,minSimilarity:.5,format:u,signal:r.signal});if(De.info(`[DanmuDiag][Proxy] stage=match_done success=${!!d?.success} duration=${Date.now()-l}ms name="${i}" episode="${a}"`),r.signal.aborted)return;if(!d.success)return De.error(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5339\u914D\u5931\u8D25: rawName="${i}", extractedTitle="${bl(i)}", episode="${a}", error="${d.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55\uFF0C\u8BF7\u624B\u52A8\u63A8\u9001"}"`),De.error(`[DanmuDiag][Proxy] stage=match_fail error="${d.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55"}" duration=${Date.now()-n}ms`),await NH(t,d.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55\uFF0C\u8BF7\u624B\u52A8\u63A8\u9001",404,u);De.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5339\u914D\u6210\u529F: rawName="${i}", extractedTitle="${bl(i)}", episode="${a}", format="${u}", animeTitle="${d.matchInfo?.animeTitle||""}", matchedEpisode="${d.matchInfo?.episodeTitle||""}", sourceUrl="${d.sourceUrl||""}", similarity=${d.similarity}`),De.info(`[DanmuProxy] Match successful: ${d.danmuUrl}`),De.info(`[DanmuDiag][Proxy] stage=fetch_content_start timeout=10000 format="${u}" danmuUrl="${d.danmuUrl}" sourceUrl="${d.sourceUrl||""}"`);let f=Date.now(),h=await xtt(d.danmuUrl,{signal:r.signal,format:u,timeout:1e4});if(De.info(`[DanmuDiag][Proxy] stage=fetch_content_done duration=${Date.now()-f}ms format="${u}" danmuUrl="${d.danmuUrl}"`),r.signal.aborted)return;let p=bk(h,u);De.info(`[DanmuProxy] Danmu loaded: ${p} items`),De.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5F39\u5E55\u52A0\u8F7D\u6210\u529F: rawName="${i}", episode="${a}", format="${u}", danmuCount=${p}, danmuUrl="${d.danmuUrl}"`);let m="";d.fromPreference?m=`\u5F39\u5E55\u5339\u914D(\u504F\u597D): ${d.matchInfo.animeTitle} ${d.matchInfo.episodeTitle} (${p}\u6761)`:d.fromCache?m=`\u5F39\u5E55\u5339\u914D(\u7F13\u5B58): ${d.matchInfo.animeTitle} ${d.matchInfo.episodeTitle} (${p}\u6761)`:m=`\u5F39\u5E55\u5339\u914D: ${d.matchInfo.animeTitle} ${d.matchInfo.episodeTitle} (${p}\u6761)`,De.info(`[DanmuProxy] \u51C6\u5907\u53D1\u9001\u63D0\u793A: "${m}"`);try{en.isAvailable()?(De.info("[DanmuProxy] \u8C03\u7528 hostBridge.toast..."),await en.toast(m,{duration:2})===null?De.info("[DanmuProxy] host bridge \u8FD4\u56DE null (\u53EF\u80FD\u662F Dart \u901A\u4FE1\u5931\u8D25)"):De.info("[DanmuProxy] Toast \u63D0\u793A\u53D1\u9001\u6210\u529F")):De.error("[DanmuProxy] host bridge unavailable")}catch(g){De.error("[DanmuProxy] Toast \u63D0\u793A\u53D1\u9001\u5931\u8D25:",g.message)}let _=u==="xml"?sxt(h):h;De.info(`[DanmuDiag][Proxy] stage=response_send_ok format="${u}" danmuCount=${p} duration=${Date.now()-n}ms`),t.header("Content-Type",Ik(u)).send(_)}catch(i){if(i.name==="AbortError"||r.signal.aborted){De.info("[DanmuProxy] Request was aborted, ignoring further processing."),De.info(`[DanmuDiag][Proxy] stage=aborted duration=${Date.now()-n}ms`);return}let a=OWr(i),o=NWr(i);De.error(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5F02\u5E38: rawName="${e?.query?.name||""}", episode="${e?.query?.episodeNumber||""}", message="${i.message}"`),De.error(`[DanmuDiag][Proxy] stage=failed type=${a} detail="${o}" duration=${Date.now()-n}ms`),await NH(t,`\u5F39\u5E55\u52A0\u8F7D\u5931\u8D25: ${i.message}`,500,ia(e?.query?.format))}}var oxt=DWr;var fSe=async e=>(await e.db.getObjectDefault("/t4",{}))?.list||e.config.t4?.list||[],PWr=async(e,t)=>{await e.db.push("/t4/list",t)},LWr=async e=>{await e.db.delete("/t4/list")};async function hSe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await fSe(t.server)})}),e.put("/list",async(t,r)=>{await PWr(t.server,t.body),r.send({code:0})}),e.delete("/list",async(t,r)=>{await LWr(t.server),r.send({code:0})})}Pr();Hr();sa();function vSe(e,t){let u=Zn(),l=ve.create({baseURL:t,timeout:12e3,httpAgent:u.httpAgent,httpsAgent:u.httpsAgent}),d=new gt(200,3e4),f=new Map,h=new gt(200,1e4),p=new Map,m=new gt(200,2e4),_=new Map,g=new gt(200,1e4),y=new Map,A=new gt(200,8e3),E=new Map;function v(z,oe,le=30){if(z.size<=oe)return;let te=0;for(let Q of z.keys())if(z.delete(Q),te++,te>=le)break}function b(z){return z?.body||{}}function I(z,oe={}){return JSON.stringify({id:String(z||"").trim(),meta:oe&&typeof oe=="object"?oe:{}})}function T(z){try{let oe=JSON.parse(String(z||""));if(oe&&typeof oe=="object"&&oe.id)return{id:String(oe.id||"").trim(),meta:oe.meta&&typeof oe.meta=="object"?oe.meta:{}}}catch{}return{id:String(z||"").trim(),meta:{}}}function x(z){return Array.isArray(z?.list)&&(z.list=z.list.map(oe=>{let le=oe?.vod_pic||"",te=oe?.vod_remarks||"";return{...oe,vod_id:I(oe?.vod_id||"",{vod_pic:le,vod_remarks:te})}})),z}function w(z,oe){let le=Object.entries(oe||{}).sort(([te],[Q])=>te.localeCompare(Q));return`${z}:${JSON.stringify(le)}`}async function D(z,oe,le,te,Q){let Z=z.get(le);if(Z)return Z;if(oe.has(le))return oe.get(le);let de=(async()=>{let B=await Q();return z.set(le,B),B})();oe.set(le,de),v(oe,200);try{return await de}finally{oe.get(le)===de&&oe.delete(le)}}async function M(z,oe){try{let{data:le}=await l.get("",{params:z});return le||oe}catch{return oe}}function L(){return{}}async function U(){let z={filter:!0},oe=w("home",z);return D(d,f,oe,3e4,async()=>M(z,{class:[]}))}async function G(z){let oe=b(z),le={ac:"detail",t:oe.id,pg:oe.page||1},te=w("category",le);return D(h,p,te,1e4,async()=>{let Q=await M(le,{list:[],page:1,pagecount:1,limit:0,total:0});return x(Q)})}async function $(z){let oe=b(z),le=T(oe.id),te={ac:"detail",ids:le.id},Q=w("detail",te);return D(m,_,Q,2e4,async()=>{let Z=await M(te,{list:[]});return Array.isArray(Z?.list)&&(Z.list=Z.list.map(de=>({...de,vod_pic:le.meta?.vod_pic||de?.vod_pic||"",vod_remarks:le.meta?.vod_remarks||de?.vod_remarks||""}))),Z})}async function K(z){let oe=b(z),le=String(oe.id||""),te={play:le,flag:oe.flag},Q=w("play",te),Z=await D(A,E,Q,8e3,async()=>M(te,{}));return!Z?.url&&!Z?.urls&&le.startsWith("http")?{url:le}:Z}async function ee(z){let le={ac:"list",wd:b(z).wd},te=w("search",le);return D(g,y,te,1e4,async()=>{let Q=await M(le,{list:[],page:1,pagecount:1,limit:0,total:0});return x(Q)})}return{meta:{key:e,name:e,type:3,t4:!0},api:async z=>{z.post("/init",L),z.post("/home",U),z.post("/category",G),z.post("/detail",$),z.post("/play",K),z.post("/search",ee)}}}var SSe=async e=>(await e.db.getObjectDefault("/cms",{}))?.list||e.config.cms?.list||[],zWr=async(e,t)=>{await e.db.push("/cms/list",t)},YWr=async e=>{await e.db.delete("/cms/list")};async function TSe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await SSe(t.server)})}),e.put("/list",async(t,r)=>{await zWr(t.server,t.body),r.send({code:0})}),e.delete("/list",async(t,r)=>{await YWr(t.server),r.send({code:0})})}Pr();Nn();Hr();var JWr=1e4,ZWr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"};function OH(e){return e?.body||{}}function gxt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function eXr(){return{class:[],filters:{}}}function DH(e=1){return{page:e,pagecount:e,limit:0,total:0,list:[]}}function _xt(){return{list:[]}}function Axt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function tXr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function rXr(e,t){return e&&typeof e=="object"?e:t}function wSe(e,t){let r=Zn(),n=ve.create({baseURL:t,timeout:JWr,headers:ZWr,httpAgent:r.httpAgent,httpsAgent:r.httpsAgent,validateStatus:f=>f>=200&&f<400});async function s(f,h){try{let{data:p}=await n.get("",{params:f});return rXr(p,h)}catch{return h}}function i(){return{}}async function a(){let f=Yr("cms",arguments[0]||{}),h=Qr(f);if(h)return h;let p=await s({ac:"class"},eXr());return dn(f,p,Tt.semiStatic),p}async function o(f){let h=OH(f),p=gxt(h.page);if(!h.id)return DH(p);let m=await s({ac:"detail",t:h.id,pg:p},DH(p));return Array.isArray(m?.list)&&(m.list=m.list.map(_=>{let g=_?.vod_pic||_?.pic||_?.img||"",y=_?.vod_remarks||_?.remarks||_?.note||"",A=_?.vod_id||_?.id||_?.vid||"";return{..._,vod_id:Axt(A,{vod_pic:g,vod_remarks:y}),vod_pic:g,vod_remarks:y}})),m}async function c(f){let h=OH(f);if(!h.id)return _xt();let p=tXr(h.id),m=await s({ac:"detail",ids:p.id},_xt());return Array.isArray(m?.list)&&(m.list=m.list.map(_=>({..._,vod_pic:p.meta?.vod_pic||_?.vod_pic||_?.pic||_?.img||"",vod_remarks:p.meta?.vod_remarks||_?.vod_remarks||_?.remarks||_?.note||""}))),m}async function u(f){return{parse:0,url:OH(f).id||""}}async function l(f){let h=OH(f),p=gxt(h.page),m=String(h.wd||"").trim();if(!m)return DH(p);let _=await s({ac:"list",wd:m,pg:p},DH(p));return Array.isArray(_?.list)&&(_.list=_.list.map(g=>{let y=g?.vod_pic||g?.pic||g?.img||"",A=g?.vod_remarks||g?.remarks||g?.note||"",E=g?.vod_id||g?.id||g?.vid||"";return{...g,vod_id:Axt(E,{vod_pic:y,vod_remarks:A}),vod_pic:y,vod_remarks:A}})),_}return{meta:{key:e,name:e,type:3,cms:!0},api:async f=>{f.post("/init",i),f.post("/home",a),f.post("/category",o),f.post("/detail",c),f.post("/play",u),f.post("/search",l)}}}var bg=Ne(require("fs"),1),dT=Ne(require("path"),1),yxt=require("stream"),vxt=require("stream/promises"),fT=dT.default.join(process.env.NODE_PATH||".","js"),PH="/js/order",Ext=5*1024*1024,nXr=20*1024*1024,sXr=/[\/\\\0-\x1f\x7f]/;function LH(){try{bg.default.mkdirSync(fT,{recursive:!0})}catch{}}function Sxt(){return fT}function NC(){let e=Number(process.env.JS_MAX_UPLOAD_MB||0);if(!Number.isFinite(e)||e<=0)return Ext;let t=Math.floor(e*1024*1024);return t<=0?Ext:Math.min(t,nXr)}function MH(e=NC()){let t=e/1024/1024;return Number.isInteger(t)?`${t}MB`:`${t.toFixed(1)}MB`}function kH(e){let t=String(e||"").trim(),r=dT.default.basename(t);return!r||r!==t||r==="."||r===".."||sXr.test(r)||!r.toLowerCase().endsWith(".js")?null:r}function Txt(e){return!e||e<1024?`${e||0}B`:e<1024*1024?`${(e/1024).toFixed(0)}K`:`${(e/1024/1024).toFixed(1)}M`}function bxt(e){return String(e||"").replace(/\.js$/i,"").trim().replace(/^nodejs_/,"").replace(/[^a-zA-Z0-9_\-]/g,"_").replace(/^_+|_+$/g,"")||Buffer.from(e,"utf8").toString("base64url")}function iXr(){LH();let e=[];try{e=bg.default.readdirSync(fT,{withFileTypes:!0})}catch{return[]}let t=[];for(let r of e){if(!r.isFile()||!r.name.toLowerCase().endsWith(".js"))continue;let n=kH(r.name);if(!n)continue;let s=dT.default.join(fT,n);try{let i=bg.default.statSync(s);if(i.size<=0)continue;t.push({name:n,path:s,size:i.size,size_str:Txt(i.size),mtime:i.mtimeMs,key:bxt(n)})}catch{}}return t}async function NSe(e){let t=iXr(),r=new Map(t.map(a=>[a.name,a])),n=[];try{n=await e.db.getObjectDefault(PH,[])}catch{}let s=new Set,i=[];if(Array.isArray(n))for(let a of n){let o=r.get(a);o&&!s.has(a)&&(i.push(o),s.add(a))}for(let a of t)s.has(a.name)||i.push(a);return i}async function Ixt(e){return(await NSe(e)).map(r=>({name:r.name.replace(/\.js$/i,""),key:r.key,path:r.path,file:r.name,enabled:!0}))}async function Rxt(e,t){let r=Array.isArray(t)?t.filter(n=>kH(n)):[];await e.db.push(PH,r)}async function Cxt(e,t,r={}){let n=kH(e);if(!n)throw new Error("\u6587\u4EF6\u540D\u975E\u6CD5\u6216\u540E\u7F00\u4E0D\u662F .js");if(!t||typeof t[Symbol.asyncIterator]!="function")throw new Error("\u4E0A\u4F20\u6D41\u65E0\u6548");LH();let s=Number(r.maxBytes||NC()),i=dT.default.join(fT,n);if(!(r.overwrite===!0||r.overwrite==="1"||r.overwrite==="true")&&bg.default.existsSync(i)){t.destroy?.();let l=new Error("\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6");throw l.code="JS_UPLOAD_EXISTS",l.name=n,l}let o=dT.default.join(fT,`.upload-${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2)}.tmp`),c=0,u=new yxt.Transform({transform(l,d,f){if(c+=l.length,c>s){let h=new Error(`\u6587\u4EF6\u8D85\u8FC7 ${MH(s)} \u4E0A\u9650`);h.code="JS_UPLOAD_TOO_LARGE",f(h);return}f(null,l)}});try{if(await(0,vxt.pipeline)(t,u,bg.default.createWriteStream(o,{flags:"wx"})),c<=0)throw new Error("\u6587\u4EF6\u4E3A\u7A7A");return await bg.default.promises.rename(o,i),{name:n,size:c,size_str:Txt(c),key:bxt(n),path:i}}catch(l){t.destroy?.();try{await bg.default.promises.unlink(o)}catch{}throw l}}async function xxt(e,t){let r=kH(t);if(!r)throw new Error("\u6587\u4EF6\u540D\u975E\u6CD5");let n=dT.default.join(fT,r);try{await bg.default.promises.unlink(n)}catch(s){if(s?.code!=="ENOENT")throw s}try{let s=await e.db.getObjectDefault(PH,[]);Array.isArray(s)&&s.includes(r)&&await e.db.push(PH,s.filter(i=>i!==r))}catch{}return{name:r}}var wxt=async e=>await Ixt(e);async function OSe(e){LH(),e.get("/list",async t=>{let r=await NSe(t.server);return{code:0,data:{dir:Sxt(),files:r.map(n=>({name:n.name,size:n.size,size_str:n.size_str,mtime:n.mtime,key:n.key}))}}}),e.post("/upload",async(t,r)=>{let n=NC(),s=null;try{s=await t.file({limits:{fileSize:n}})}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${MH(n)} \u4E0A\u9650`}):r.code(400).send({code:-1,message:"\u4E0A\u4F20\u8BFB\u53D6\u5931\u8D25: "+(i?.message||i)})}if(!s)return r.code(400).send({code:-1,message:"\u672A\u6536\u5230\u6587\u4EF6"});try{let i=t.query?.overwrite==="1"||t.query?.overwrite==="true";return{code:0,data:await Cxt(s.filename,s.file,{maxBytes:n,overwrite:i})}}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"||i?.code==="JS_UPLOAD_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${MH(n)} \u4E0A\u9650`}):i?.code==="JS_UPLOAD_EXISTS"?r.code(409).send({code:-1,message:i?.message||"\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6",data:{exists:!0,name:i?.name||s.filename}}):r.code(400).send({code:-1,message:i?.message||String(i)})}}),e.delete("/file/:name",async(t,r)=>{let n=decodeURIComponent(String(t.params?.name||""));if(!n)return r.code(400).send({code:-1,message:"\u7F3A\u5C11 name"});try{return{code:0,data:await xxt(t.server,n)}}catch(s){return r.code(400).send({code:-1,message:s?.message||String(s)})}}),e.put("/order",async(t,r)=>{let n=t.body||{},s=Array.isArray(n)?n:n.order;if(!Array.isArray(s))return r.code(400).send({code:-1,message:"\u53C2\u6570\u5E94\u4E3A\u6587\u4EF6\u540D\u6570\u7EC4"});try{return await Rxt(t.server,s),{code:0}}catch(i){return r.code(400).send({code:-1,message:i?.message||String(i)})}})}var DG=Ne(require("fs/promises"),1),zl=Ne(require("path"),1),PG=require("url"),OG=Ne(require("crypto"),1);Pr();Qd();var yxe=Ne(Gi(),1),vxe=Ne(HDt(),1),Sxe=Ne(require("http2"),1),Txe=Ne(QDt(),1),bxe=Ne(sx(),1);wi();Hr();var y1e={};Ft(y1e,{jsonpath:()=>_1e,jsoup:()=>E1e,urljoin:()=>g1e});Qd();var jPt=Ne(require("vm"),1),d1e=class{add(t,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(t)?t:[t]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(t,r){this[t]=this[t]||[],this[t].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},f1e=class{constructor(t){this.jsep=t,this.registered={}}register(...t){t.forEach(r=>{if(typeof r!="object"||!r.name||!r.init)throw new Error("Invalid JSEP plugin format");this.registered[r.name]||(r.init(this.jsep),this.registered[r.name]=r)})}},Xu=class e{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+e.version}static addUnaryOp(t){return e.max_unop_len=Math.max(t.length,e.max_unop_len),e.unary_ops[t]=1,e}static addBinaryOp(t,r,n){return e.max_binop_len=Math.max(t.length,e.max_binop_len),e.binary_ops[t]=r,n?e.right_associative.add(t):e.right_associative.delete(t),e}static addIdentifierChar(t){return e.additional_identifier_chars.add(t),e}static addLiteral(t,r){return e.literals[t]=r,e}static removeUnaryOp(t){return delete e.unary_ops[t],t.length===e.max_unop_len&&(e.max_unop_len=e.getMaxKeyLen(e.unary_ops)),e}static removeAllUnaryOps(){return e.unary_ops={},e.max_unop_len=0,e}static removeIdentifierChar(t){return e.additional_identifier_chars.delete(t),e}static removeBinaryOp(t){return delete e.binary_ops[t],t.length===e.max_binop_len&&(e.max_binop_len=e.getMaxKeyLen(e.binary_ops)),e.right_associative.delete(t),e}static removeAllBinaryOps(){return e.binary_ops={},e.max_binop_len=0,e}static removeLiteral(t){return delete e.literals[t],e}static removeAllLiterals(){return e.literals={},e}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(t){this.expr=t,this.index=0}static parse(t){return new e(t).parse()}static getMaxKeyLen(t){return Math.max(0,...Object.keys(t).map(r=>r.length))}static isDecimalDigit(t){return t>=48&&t<=57}static binaryPrecedence(t){return e.binary_ops[t]||0}static isIdentifierStart(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}static isIdentifierPart(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}throwError(t){let r=new Error(t+" at character "+this.index);throw r.index=this.index,r.description=t,r}runHook(t,r){if(e.hooks[t]){let n={context:this,node:r};return e.hooks.run(t,n),n.node}return r}searchHook(t){if(e.hooks[t]){let r={context:this};return e.hooks[t].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let t=this.code;for(;t===e.SPACE_CODE||t===e.TAB_CODE||t===e.LF_CODE||t===e.CR_CODE;)t=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let t=this.gobbleExpressions(),r=t.length===1?t[0]:{type:e.COMPOUND,body:t};return this.runHook("after-all",r)}gobbleExpressions(t){let r=[],n,s;for(;this.index0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.lengthi.right_a&&d.right_a?n>d.prec:n<=d.prec;for(;s.length>2&&l(s[s.length-2]);)o=s.pop(),r=s.pop().value,a=s.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:o},s.push(t);t=this.gobbleToken(),t||this.throwError("Expected expression after "+u),s.push(i,t)}for(c=s.length-1,t=s[c];c>1;)t={type:e.BINARY_EXP,operator:s[c-1].value,left:s[c-2],right:t},c-=2;return t}gobbleToken(){let t,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,e.max_unop_len),n=r.length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}else if(i===e.COMMA_CODE){if(this.index++,s++,s!==r.length){if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(let a=r.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});Xu.max_unop_len=Xu.getMaxKeyLen(Xu.unary_ops);Xu.max_binop_len=Xu.getMaxKeyLen(Xu.binary_ops);var kg=e=>new Xu(e).parse(),msn=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(Xu).filter(e=>!msn.includes(e)&&kg[e]===void 0).forEach(e=>{kg[e]=Xu[e]});kg.Jsep=Xu;var gsn="ConditionalExpression",_sn={name:"ternary",init(e){e.hooks.add("after-expression",function(r){if(r.node&&this.code===e.QUMARK_CODE){this.index++;let n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;let i=this.gobbleExpression();if(i||this.throwError("Expected expression"),r.node={type:gsn,test:n,consequent:s,alternate:i},n.operator&&e.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&e.binary_ops[a.right.operator]<=.9;)a=a.right;r.node.test=a.right,a.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};kg.plugins.register(_sn);var VPt=47,Asn=92,Esn={name:"regex",init(e){e.hooks.add("gobble-token",function(r){if(this.code===VPt){let n=++this.index,s=!1;for(;this.index=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57)a+=this.char;else break}let o;try{o=new RegExp(i,a)}catch(c){this.throwError(c.message)}return r.node={type:e.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===e.OBRACK_CODE?s=!0:s&&this.code===e.CBRACK_CODE&&(s=!1),this.index+=this.code===Asn?2:1}this.throwError("Unclosed Regex")}})}},l1e=43,ysn=45,ix={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[l1e,ysn],assignmentPrecedence:.9,init(e){let t=[e.IDENTIFIER,e.MEMBER_EXP];ix.assignmentOperators.forEach(n=>e.addBinaryOp(n,ix.assignmentPrecedence,!0)),e.hooks.add("gobble-token",function(s){let i=this.code;ix.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:i===l1e?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!t.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),e.hooks.add("after-token",function(s){if(s.node){let i=this.code;ix.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(t.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:i===l1e?"++":"--",argument:s.node,prefix:!1})}}),e.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){ix.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};kg.plugins.register(Esn,ix);kg.addUnaryOp("typeof");kg.addLiteral("null",null);kg.addLiteral("undefined",void 0);var vsn=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),gs={evalAst(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":return gs.evalBinaryExpression(e,t);case"Compound":return gs.evalCompound(e,t);case"ConditionalExpression":return gs.evalConditionalExpression(e,t);case"Identifier":return gs.evalIdentifier(e,t);case"Literal":return gs.evalLiteral(e,t);case"MemberExpression":return gs.evalMemberExpression(e,t);case"UnaryExpression":return gs.evalUnaryExpression(e,t);case"ArrayExpression":return gs.evalArrayExpression(e,t);case"CallExpression":return gs.evalCallExpression(e,t);case"AssignmentExpression":return gs.evalAssignmentExpression(e,t);default:throw SyntaxError("Unexpected expression",e)}},evalBinaryExpression(e,t){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[e.operator](gs.evalAst(e.left,t),()=>gs.evalAst(e.right,t))},evalCompound(e,t){let r;for(let n=0;n-gs.evalAst(n,t),"!":n=>!gs.evalAst(n,t),"~":n=>~gs.evalAst(n,t),"+":n=>+gs.evalAst(n,t),typeof:n=>typeof gs.evalAst(n,t)}[e.operator](e.argument)},evalArrayExpression(e,t){return e.elements.map(r=>gs.evalAst(r,t))},evalCallExpression(e,t){let r=e.arguments.map(s=>gs.evalAst(s,t));return gs.evalAst(e.callee,t)(...r)},evalAssignmentExpression(e,t){if(e.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=e.left.name,n=gs.evalAst(e.right,t);return t[r]=n,t[r]}},h1e=class{constructor(t){this.code=t,this.ast=kg(this.code)}runInNewContext(t){let r=Object.assign(Object.create(null),t);return gs.evalAst(this.ast,r)}};function wE(e,t){return e=e.slice(),e.push(t),e}function p1e(e,t){return t=t.slice(),t.unshift(e),t}var m1e=class extends Error{constructor(t){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=t,this.name="NewError"}};function On(e,t,r,n,s){if(!(this instanceof On))try{return new On(e,t,r,n,s)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof e=="string"&&(s=n,n=r,r=t,t=e,e=null);let i=e&&typeof e=="object";if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=Object.hasOwn(e,"wrap")?e.wrap:!0,this.sandbox=e.sandbox||{},this.eval=e.eval===void 0?"safe":e.eval,this.ignoreEvalErrors=typeof e.ignoreEvalErrors>"u"?!1:e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},e.autostart!==!1){let a={path:i?e.path:t};i?"json"in e&&(a.json=e.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new m1e(o);return o}}On.prototype.evaluate=function(e,t,r,n){let s=this.parent,i=this.parentProperty,{flatten:a,wrap:o}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,e=e||this.path,e&&typeof e=="object"&&!Array.isArray(e)){if(!e.path&&e.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:t}=e),a=Object.hasOwn(e,"flatten")?e.flatten:a,this.currResultType=Object.hasOwn(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=Object.hasOwn(e,"sandbox")?e.sandbox:this.currSandbox,o=Object.hasOwn(e,"wrap")?e.wrap:o,this.currEval=Object.hasOwn(e,"eval")?e.eval:this.currEval,r=Object.hasOwn(e,"callback")?e.callback:r,this.currOtherTypeCallback=Object.hasOwn(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(e,"parent")?e.parent:s,i=Object.hasOwn(e,"parentProperty")?e.parentProperty:i,e=e.path}if(s=s||null,i=i||null,Array.isArray(e)&&(e=On.toPathString(e)),!e&&e!==""||!t)return;let c=On.toPathArray(e);c[0]==="$"&&c.length>1&&c.shift(),this._hasParentSelector=null;let u=this._trace(c,t,["$"],s,i,r).filter(function(l){return l&&!l.isParentSelector});return u.length?!o&&u.length===1&&!u[0].hasArrExpr?this._getPreferredOutput(u[0]):u.reduce((l,d)=>{let f=this._getPreferredOutput(d);return a&&Array.isArray(f)?l=l.concat(f):l.push(f),l},[]):o?[]:void 0};On.prototype._getPreferredOutput=function(e){let t=this.currResultType;switch(t){case"all":{let r=Array.isArray(e.path)?e.path:On.toPathArray(e.path);return e.pointer=On.toPointer(r),e.path=typeof e.path=="string"?e.path:On.toPathString(e.path),e}case"value":case"parent":case"parentProperty":return e[t];case"path":return On.toPathString(e[t]);case"pointer":return On.toPointer(e.path);default:throw new TypeError("Unknown result type")}};On.prototype._handleCallback=function(e,t,r){if(t){let n=this._getPreferredOutput(e);e.path=typeof e.path=="string"?e.path:On.toPathString(e.path),t(n,r,e)}};On.prototype._trace=function(e,t,r,n,s,i,a,o){let c;if(!e.length)return c={path:r,value:t,parent:n,parentProperty:s,hasArrExpr:a},this._handleCallback(c,i,"value"),c;let u=e[0],l=e.slice(1),d=[];function f(h){Array.isArray(h)?h.forEach(p=>{d.push(p)}):d.push(h)}if((typeof u!="string"||o)&&t&&Object.hasOwn(t,u))f(this._trace(l,t[u],wE(r,u),t,u,i,a));else if(u==="*")this._walk(t,h=>{f(this._trace(l,t[h],wE(r,h),t,h,i,!0,!0))});else if(u==="..")f(this._trace(l,t,r,n,s,i,a)),this._walk(t,h=>{typeof t[h]=="object"&&f(this._trace(e.slice(),t[h],wE(r,h),t,h,i,!0))});else{if(u==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(u==="~")return c={path:wE(r,u),value:s,parent:n,parentProperty:null},this._handleCallback(c,i,"property"),c;if(u==="$")f(this._trace(l,t,r,null,null,i,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(u))f(this._slice(u,l,t,r,n,s,i));else if(u.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let h=u.replace(/^\?\((.*?)\)$/u,"$1"),p=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(h);p?this._walk(t,m=>{let _=[p[2]],g=p[1]?t[m][p[1]]:t[m];this._trace(_,g,r,n,s,i,!0).length>0&&f(this._trace(l,t[m],wE(r,m),t,m,i,!0))}):this._walk(t,m=>{this._eval(h,t[m],m,r,n,s)&&f(this._trace(l,t[m],wE(r,m),t,m,i,!0))})}else if(u[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(p1e(this._eval(u,t,r.at(-1),r.slice(0,-1),n,s),l),t,r,n,s,i,a))}else if(u[0]==="@"){let h=!1,p=u.slice(1,-2);switch(p){case"scalar":(!t||!["object","function"].includes(typeof t))&&(h=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===p&&(h=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(h=!0);break;case"number":Number.isFinite(t)&&(h=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(h=!0);break;case"object":t&&typeof t===p&&(h=!0);break;case"array":Array.isArray(t)&&(h=!0);break;case"other":h=this.currOtherTypeCallback(t,r,n,s);break;case"null":t===null&&(h=!0);break;default:throw new TypeError("Unknown value type "+p)}if(h)return c={path:r,value:t,parent:n,parentProperty:s},this._handleCallback(c,i,"value"),c}else if(u[0]==="`"&&t&&Object.hasOwn(t,u.slice(1))){let h=u.slice(1);f(this._trace(l,t[h],wE(r,h),t,h,i,a,!0))}else if(u.includes(",")){let h=u.split(",");for(let p of h)f(this._trace(p1e(p,l),t,r,n,s,i,!0))}else!o&&t&&Object.hasOwn(t,u)&&f(this._trace(l,t[u],wE(r,u),t,u,i,a,!0))}if(this._hasParentSelector)for(let h=0;h{t(r)})};On.prototype._slice=function(e,t,r,n,s,i,a){if(!Array.isArray(r))return;let o=r.length,c=e.split(":"),u=c[2]&&Number.parseInt(c[2])||1,l=c[0]&&Number.parseInt(c[0])||0,d=c[1]&&Number.parseInt(c[1])||o;l=l<0?Math.max(0,l+o):Math.min(o,l),d=d<0?Math.max(0,d+o):Math.min(o,d);let f=[];for(let h=l;h{f.push(m)});return f};On.prototype._eval=function(e,t,r,n,s,i){this.currSandbox._$_parentProperty=i,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=t;let a=e.includes("@path");a&&(this.currSandbox._$_path=On.toPathString(n.concat([r])));let o=this.currEval+"Script:"+e;if(!On.cache[o]){let c=e.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(c=c.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)On.cache[o]=new this.safeVm.Script(c);else if(this.currEval==="native")On.cache[o]=new this.vm.Script(c);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let u=this.currEval;On.cache[o]=new u(c)}else if(typeof this.currEval=="function")On.cache[o]={runInNewContext:u=>this.currEval(c,u)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return On.cache[o].runInNewContext(this.currSandbox)}catch(c){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+c.message+": "+e)}};On.cache={};On.toPathString=function(e){let t=e,r=t.length,n="$";for(let s=1;s{if(e=e||"",t=t||"",!t)return e;if(!e)return t;try{return new URL(t,e).toString()}catch{return t}},_1e={query(e,t){return On.JSONPath({path:t,json:e})}},z7=!0,KPt=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",Ssn="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",Tsn="^(ftp|magnet|thunder|ws):",A1e=class{constructor(t=""){this.MY_URL=t,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(t,r){return!!new RegExp(t,"mi").exec(r)}contains(t,r){return t.indexOf(r)!==-1}parseHikerToJq(t,r=!1){if(this.contains(t,"&&")){let n=t.split("&&"),s=[];for(let i=0;i=n.length-1?s.push(n[i]):s.push(`${n[i]}:eq(0)`)}t=s.join(" ")}else{let n=t.split(" "),s=n[n.length-1];!this.test(KPt,s)&&r&&(t=`${t}:eq(0)`)}return t}getParseInfo(t){let r=[],n=0,s=t;if(this.contains(t,":eq")){s=t.split(":eq")[0];let i=t.split(":eq")[1];this.contains(s,"--")?(r=s.split("--").slice(1),s=s.split("--")[0]):this.contains(i,"--")&&(r=i.split("--").slice(1),i=i.split("--")[0]);try{n=parseInt(i.split("(")[1].split(")")[0])}catch{}}else this.contains(t,"--")&&(s=t.split("--")[0],r=t.split("--").slice(1));return{nparse_rule:s,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(t){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(t))!==null;){let s=`:lt(${n[2]}):gt(${n[1]})`;t=t.substring(0,n.index)+s+t.substring(n.index+n[0].length),r.lastIndex=n.index}return t}parseOneRule(t,r,n){let{nparse_rule:s,nparse_index:i,excludes:a}=this.getParseInfo(r);if(s=this.reorderAdjacentLtAndGt(s),n?n=n.find(s):n=t(s),this.contains(r,":eq")&&(n=n.eq(i)),a.length>0&&n){n=n.clone();for(let o of a)n.find(o).remove()}return n}parseText(t){return t=t.replace(/[\s]+/gm,` -`),t=t.replace(/\n+/g,` -`).replace(/^\s+/,""),t=t.replace(/\n/g," "),t}pdfa(t,r){if(!t||!r)return[];r=this.parseHikerToJq(r);let n;z7&&this.pdfa_html===t&&this.pdfa_doc?n=this.pdfa_doc:(n=er(t),z7&&(this.pdfa_html=t,this.pdfa_doc=n));let s=r.split(" "),i=null;for(let o of s)if(i=this.parseOneRule(n,o,i),!i)return[];return(i?.toArray()??[]).map(o=>{let c=`${n(o)}`;return c||""})}pdfl(t,r,n,s,i){if(!t||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=er(t),c=r.split(" "),u=null;for(let l of c)if(u=this.parseOneRule(o,l,u),!u)return[];return u.each((l,d)=>{a.push(`${o(d)}`)}),a}pdfh(t,r,n=""){if(!t||!r)return"";let s;if(z7&&this.pdfh_html===t&&this.pdfh_doc?s=this.pdfh_doc:(s=er(t),z7&&(this.pdfh_html=t,this.pdfh_doc=s)),r==="body&&Text"||r==="Text")return this.parseText(s.text());if(r==="body&&Html"||r==="Html")return s.html();let i;if(this.contains(r,"&&")){let c=r.split("&&");i=c.pop(),r=c.join("&&")}r=this.parseHikerToJq(r,!0);let a=r.split(" "),o=null;for(let c of a)if(o=this.parseOneRule(s,c,o),!o)return"";if(i)switch(i){case"Text":o=o?this.parseText(o.text()):"";break;case"Html":o=o?o.html():"";break;default:let c=o.clone(),u=i.split("||");for(let l of u){if(o=c?.attr(l)||"",this.contains(l.toLowerCase(),"style")&&this.contains(o,"url("))try{o=o.match(/url\((.*?)\)/)[1],o=o.replace(/^['"]|['"]$/g,"")}catch{}if(o&&n&&this.test(Ssn,l)&&!this.test(Tsn,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):g1e(n,o)),o)break}}else o=`${o}`;return o}pd(t,r,n=""){return n||(n=this.MY_URL),this.pdfh(t,r,n)}pq(t){return er(t)}pjfh(t,r,n=!1){if(!t||!r)return"";try{t=typeof t=="string"?JSON.parse(t):t}catch{return""}r.startsWith("$.")||(r="$."+r);let s="",i=r.split("||");for(let a of i){let o=_1e.query(t,a);if(s=Array.isArray(o)?o[0]||"":o||"",n&&s&&(s=g1e(this.MY_URL,s)),s)break}return s}pj(t,r){return this.pjfh(t,r,!0)}pjfa(t,r){if(!t||!r)return[];try{t=typeof t=="string"?JSON.parse(t):t}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=_1e.query(t,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},E1e=A1e;Nn();su();da();ws();Exe();sa();var Ixe={crypto:{default:OG.default||OG,...OG},axios:{default:ve,...ve},cheerio:{default:TT,...TT},"crypto-js":{default:yxe.default,...yxe.default},"iconv-lite":{default:vxe.default,...vxe.default},http2:{default:Sxe.default,...Sxe.default},"jpeg-js":{default:Txe.default,...Txe.default},qs:{default:bxe.default,...bxe.default},"runtime-context":u1e,req:ySe,htmlParser:y1e,"home-cache":xSe,pan:dxe,"concurrency-limiter":gxe,misc:T1e,"m3u8-ad-cleaner":Axe,"lru-cache":{default:gt}};globalThis.__CAT_JS_UTIL=Ixe;var rpn=`${zl.default.sep}spider${zl.default.sep}video${zl.default.sep}`;function npn(e,t){return e&&typeof e=="object"?{...e}:{name:String(e||"").trim(),path:String(t||"").trim()}}function G8t(e){return String(e||"").trim().replace(/^nodejs_/,"").replace(/[^a-zA-Z0-9_\-]/g,"_").replace(/^_+|_+$/g,"")}function spn(e){let t=String(e||"").trim();if(!t)throw new Error("JS \u6587\u4EF6\u8DEF\u5F84\u4E0D\u80FD\u4E3A\u7A7A");if(/^file:\/\//i.test(t))return(0,PG.fileURLToPath)(new URL(t));let r=t.startsWith("~")?zl.default.join(process.env.HOME||"",t.slice(1)):t;return zl.default.isAbsolute(r)?r:zl.default.resolve(process.env.NODE_PATH||process.cwd(),r)}function ipn(e,t){let r=`globalThis.__CAT_JS_UTIL[${JSON.stringify(t)}]`,n=String(e||"").trim(),s=n.match(/^\*\s+as\s+([A-Za-z_$][\w$]*)$/);if(s)return`const ${s[1]} = ${r};`;let i=[],a=null,o=null,c=n.indexOf("{");if(c===-1)n&&(a=n);else{let u=n.slice(0,c).replace(/,\s*$/,"").trim();u&&(a=u);let l=n.indexOf("}",c);o=n.slice(c+1,l)}if(a&&i.push(`const ${a} = ${r}.default;`),o!=null){let u=o.split(",").map(l=>l.trim()).filter(Boolean).map(l=>{let d=l.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);return d?`${d[1]}: ${d[2]}`:l});u.length&&i.push(`const { ${u.join(", ")} } = ${r};`)}return i.join(` -`)}function apn(e){let t=String(e||"").match(/(?:^|\/)core\/([A-Za-z0-9_-]+)\.js$/);if(t)return{key:t[1],type:"core"};let r=String(e||"").match(/(?:^|\/)util\/([A-Za-z0-9_-]+)\.js$/);return r?{key:r[1],type:"util"}:Object.prototype.hasOwnProperty.call(Ixe,e)?{key:e,type:"package"}:null}function opn(e){let t=[],r=/import\s+(?:[^;]*?\s+from\s+)?(['"])([^'"]+)\1\s*;?/g,n=null;for(;(n=r.exec(e))!==null;)t.push(n[2]);return t}function cpn(e){return e.startsWith("./")||e.startsWith("../")}async function upn(e,t){let r=zl.default.resolve(zl.default.dirname(e),t),n=zl.default.extname(r)?[r]:[r,`${r}.js`,zl.default.join(r,"index.js")];for(let s of n)try{return await DG.default.access(s),!0}catch{}return!1}async function lpn(e,t){if(zl.default.normalize(e).includes(rpn))return!0;let r=opn(t);for(let n of r)if(cpn(n)&&await upn(e,n))return!0;return!1}async function dpn(e){let t=await DG.default.stat(e),r=(0,PG.pathToFileURL)(e);return r.searchParams.set("mtime",String(Math.floor(t.mtimeMs))),await import(r.href)}function fpn(e,t){let r=/import\s+([^;]*?)\s+from\s+(['"])([^'"]+)\2\s*;?/g,n=new Set,s=e.replace(r,(i,a,o,c)=>{let u=apn(c);return u?Object.prototype.hasOwnProperty.call(Ixe,u.key)?ipn(a,u.key):((u.type==="util"||u.type==="core")&&n.add(`${u.type}/${u.key}.js`),i):i});return n.size&&console.error(`[js] ${t}: \u4E0A\u4F20\u811A\u672C\u4F9D\u8D56\u672A\u5185\u7F6E\u7684\u6A21\u5757 ${[...n].join("\u3001")}\uFF1B\u8BBE\u5907 bundle \u65E0 src/ \u6E90\u7801\u6811\uFF0C\u9700\u5728 src/spider/video/js.js \u7684 JS_IMPORT_REGISTRY \u8865\u5145\u5BFC\u51FA\u540E\u91CD\u65B0\u6253\u5305\u3002`),s}async function hpn(e,t){let r=e.path||e.file,n=spn(r),s=await DG.default.readFile(n,"utf8");if(await lpn(n,s)){let u=await dpn(n),l=u.default||u;if(!l)throw new Error("JS \u6A21\u5757\u6CA1\u6709\u53EF\u7528\u5BFC\u51FA");return l}let i=fpn(s,t),o=await import("data:text/javascript;charset=utf-8,"+encodeURIComponent(i)),c=o.default||o;if(!c)throw new Error("JS \u6A21\u5757\u6CA1\u6709\u53EF\u7528\u5BFC\u51FA");return c}function ppn(e,t){if(!e||typeof e!="object")throw new Error("JS \u6A21\u5757\u5BFC\u51FA\u503C\u4E0D\u662F spider \u5BF9\u8C61");if(!e.meta||typeof e.meta!="object")throw new Error("JS \u6A21\u5757\u7F3A\u5C11 meta");if(typeof e.api!="function")throw new Error("JS \u6A21\u5757\u7F3A\u5C11 api(fastify)");let r={...e.meta},n=G8t(r.key||t.key||t.id||t.name),s=String(r.name||t.name||n||"local_js").trim();if(!n)throw new Error("JS spider key \u4E0D\u80FD\u4E3A\u7A7A");return{...e,meta:{...r,key:n,name:s,type:Number(r.type??t.type??3),js:!0}}}function Rxe(e,t){let r=npn(e,t),n=G8t(r.key||r.id||r.name||zl.default.basename(String(r.path||r.file||"local_js"),".js")),s=String(r.name||n||"\u672C\u5730JS").trim(),i=null;async function a(){return i||(i=(async()=>{let o=await hpn(r,s),c=typeof o=="function"?await o(s,r):o;return ppn(c,{...r,key:n,name:s})})()),i}return{meta:{key:n,name:s,type:Number(r.type??3),js:!0},api:async o=>{try{return(await a()).api(o)}catch(c){console.error(`[js] \u52A0\u8F7D ${s} \u5931\u8D25:`,c);let u=async(l,d)=>d.code(500).send({code:-1,message:`JS spider \u52A0\u8F7D\u5931\u8D25: ${c?.message||c}`});o.post("/init",u),o.post("/home",u),o.post("/category",u),o.post("/detail",u),o.post("/play",u),o.post("/search",u)}},check:o=>{a().then(c=>c.check?.(o)).catch(c=>console.error(`[js] \u52A0\u8F7D ${s} \u5931\u8D25:`,c))}}}Hr();Nn();var LG=Ne(require("crypto"),1);da();ws();var xxe=class{constructor(){this.cache={short:new Map,medium:new Map,long:new Map},this.accessOrder={short:new Map,medium:new Map,long:new Map},this.config={short:{max:1e3,ttl:30*1e3},medium:{max:500,ttl:5*60*1e3},long:{max:200,ttl:30*60*1e3}},this.cleanupTimer=null,this.startCleanupInterval()}get(t,r="medium"){let n=this.cache[r],s=this.accessOrder[r];if(!n)return null;let i=n.get(t);return i?Date.now()>i.expiry?(n.delete(t),s?.delete(t),null):(s?.set(t,Date.now()),i.lastAccess=Date.now(),i.accessCount=(i.accessCount||0)+1,i.value):null}set(t,r,n="medium"){let s=this.cache[n],i=this.accessOrder[n];if(!s)return;let a=this.config[n];s.size>=a.max&&this.evictOldest(n),s.set(t,{value:r,expiry:Date.now()+a.ttl,type:n,setTime:Date.now(),accessCount:0,lastAccess:Date.now()}),i?.set(t,Date.now())}evictOldest(t){let r=this.cache[t],n=this.accessOrder[t],s=null,i=1/0;for(let[a]of r.entries()){let o=n?.get(a)||0;o`${a}=${r[a]}`),i=s.length?`${t}?${s.join("&")}`:t;return i.length>256?LG.default.createHash("md5").update(i).digest("hex"):i}catch{return t}}clear(t=null){t?(this.cache[t]?.clear(),this.accessOrder[t]?.clear()):(Object.values(this.cache).forEach(r=>r.clear()),Object.values(this.accessOrder).forEach(r=>r.clear()))}startCleanupInterval(){this.cleanupTimer=setInterval(()=>this.cleanupExpired(),5*60*1e3),typeof this.cleanupTimer.unref=="function"&&this.cleanupTimer.unref()}cleanupExpired(){let t=Date.now();Object.entries(this.cache).forEach(([r,n])=>{let s=this.accessOrder[r];for(let[i,a]of n.entries())t>a.expiry&&(n.delete(i),s?.delete(i))})}};function mpn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function gpn(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}var wxe=class{constructor(t){this.config=t,this.cache=new xxe,this.queue=[],this.activeCount=0,this.maxConcurrent=t.maxConcurrent||6,this.abortControllers=new Map}async schedule(t,r=null){return this.activeCount{this.queue.push({fn:t,resolve:n,reject:s,requestId:r})})}async execute(t,r){try{return await t()}catch(n){throw n}finally{this.activeCount--,r&&this.abortControllers.delete(r),this.processNext()}}processNext(){if(this.queue.length>0&&this.activeCount{let c=this.config.timeout||1e4,u=null;try{return await Promise.race([t(o.signal),new Promise((l,d)=>{u=setTimeout(()=>{o.abort(),d(new Error(`\u8BF7\u6C42\u8D85\u65F6 (${c}ms)`))},c)})])}finally{u&&clearTimeout(u)}},a)}catch(a){if(s=a,i===r||!this.shouldRetry(a))break;await this.sleep(n*Math.pow(2,i))}throw s}shouldRetry(t){if(!t.response)return!0;let r=t.response.status;return[408,429,500,502,503,504].includes(r)}getCachedResponse(t,r="medium"){let s=[r,...["short","medium","long"].filter(i=>i!==r)];for(let i of s){let a=this.cache.get(t,i);if(a)return a}return null}async cachedGet(t,r={},n="medium"){let s=this.cache.generateKey(t,r.params),i=this.getCachedResponse(s,n);if(i)return i;let a=`${n}:${s}`;return ew(`emby:${this.config.id}:${a}`,async()=>{try{let o=await this.retryRequest(c=>Xe.get(t,{...r,signal:c}),this.config.retryCount||2);if(o.data){let u=JSON.stringify(o.data).length>1024*100?"long":n;this.cache.set(s,o,u),u!==n&&this.cache.set(s,o,n)}return o}catch(o){let c=this.getCachedResponse(s,n);if(c&&!o.response)return c;throw o}},(this.config.timeout||1e4)*((this.config.retryCount||2)+1)+2e3)}async post(t,r,n={}){return this.retryRequest(s=>Xe.post(t,r,{...n,signal:s}),this.config.retryCount||1)}abortRequest(t){let r=this.abortControllers.get(t);r&&(r.abort(),this.abortControllers.delete(t))}sleep(t){return zt(t)}},Nxe=class{constructor(t,r,n,s){this.config=t,this.requestManager=r,this.getHeaderProvider=n,this.urlBuilder=s,this.enablePlaybackReport=t.enablePlaybackReport!==!1,this.playSessions=new Map,this.heartbeatTimer=null,this.maxSessionDuration=7200*1e3,this.maxConcurrentReports=5,this.reportQueue=[]}startHeartbeat(){this.heartbeatTimer||!this.enablePlaybackReport||(this.heartbeatTimer=setInterval(()=>this.tick(),1e4))}stopHeartbeat(){this.heartbeatTimer&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null)}async tick(){if(!this.enablePlaybackReport||this.playSessions.size===0){this.playSessions.size===0&&this.stopHeartbeat();return}let t=Date.now(),r=[];for(let[n,s]of this.playSessions.entries()){if(t-s.startTime>this.maxSessionDuration){this.playSessions.delete(n);continue}if(!s.isPaused&&t-s.lastReportTime>=3e4){let i=t-s.startTime-s.totalPausedDuration,a=s.initialPositionTicks+Math.floor(i/1e3)*1e7;if(s.positionTicks=a,s.lastReportTime=t,r.push(this.recordPlaybackProgress(n,a,!1)),r.length>=this.maxConcurrentReports)break}}r.length>0&&await Promise.allSettled(r)}async recordPlaybackStart(t,r,n=0){if(!this.enablePlaybackReport)return null;try{let s=await this.getHeaderProvider(),i=`js_${Date.now()}_${Math.floor(Math.random()*1e4)}`,a=n;if(!a)try{let u=this.urlBuilder(`/Users/${this.config.userId}/Items/${t}`),l=await this.requestManager.cachedGet(u,{headers:s,params:{Fields:"UserData"}},"short");l.data?.UserData&&(a=l.data.UserData.PlaybackPositionTicks||0)}catch(u){console.debug("\u83B7\u53D6\u7528\u6237\u6570\u636E\u5931\u8D25:",u.message)}let o={ItemId:t,MediaSourceId:r.Id||r.mediaSourceId,CanSeek:!0,IsPaused:!1,IsMuted:!1,PositionTicks:a,PlayMethod:"DirectStream",PlaySessionId:i,LiveStreamId:null,AudioStreamIndex:1,SubtitleStreamIndex:-1,VolumeLevel:100,PlaybackStartTimeTicks:Math.floor(Date.now()*1e4)},c=await this.requestManager.post(this.urlBuilder("/Sessions/Playing"),o,{headers:s,timeout:5e3}).catch(()=>null);if(c&&(c.status===200||c.status===204))return this.playSessions.set(i,{itemId:t,mediaSource:r,startTime:Date.now(),lastReportTime:Date.now(),initialPositionTicks:a,positionTicks:a,totalPausedDuration:0,isPaused:!1,lastPauseTime:0}),this.startHeartbeat(),i}catch(s){console.debug("\u64AD\u653E\u5F00\u59CB\u8BB0\u5F55\u5931\u8D25:",s.message)}return null}async recordPlaybackProgress(t,r,n=!1){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let s=this.playSessions.get(t),i=await this.getHeaderProvider();s.isPaused!==n&&(s.isPaused=n,n?s.lastPauseTime=Date.now():s.lastPauseTime>0&&(s.totalPausedDuration+=Date.now()-s.lastPauseTime,s.lastPauseTime=0)),r!==void 0&&(s.positionTicks=r);let a={ItemId:s.itemId,MediaSourceId:s.mediaSource.Id||s.mediaSource.mediaSourceId,PositionTicks:s.positionTicks,IsPaused:n,PlaySessionId:t,EventName:n?"pause":"timeupdate"},o=await this.requestManager.post(this.urlBuilder("/Sessions/Playing/Progress"),a,{headers:i,timeout:5e3}).catch(()=>null);if(o&&(o.status===200||o.status===204))return s.lastReportTime=Date.now(),!0}catch(s){console.debug("\u64AD\u653E\u8FDB\u5EA6\u8BB0\u5F55\u5931\u8D25:",s.message)}return!1}async recordPlaybackStop(t,r=null){if(!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t),s=await this.getHeaderProvider(),i;if(r!==null)i=r;else if(n.positionTicks!==void 0)i=n.positionTicks;else{let c=Date.now(),u=c-n.startTime;n.isPaused&&n.lastPauseTime>0&&(n.totalPausedDuration+=c-n.lastPauseTime),u-=n.totalPausedDuration;let l=Math.floor(u/1e3);i=n.initialPositionTicks+l*1e7}let a={ItemId:n.itemId,MediaSourceId:n.mediaSource.Id||n.mediaSource.mediaSourceId,PositionTicks:i,PlaySessionId:t},o=await this.requestManager.post(this.urlBuilder("/Sessions/Playing/Stopped"),a,{headers:s,timeout:5e3}).catch(()=>null);return this.playSessions.delete(t),this.playSessions.size===0&&this.stopHeartbeat(),o&&(o.status===200||o.status===204)}catch(n){this.playSessions.delete(t),this.playSessions.size===0&&this.stopHeartbeat(),console.debug("\u64AD\u653E\u505C\u6B62\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async recordPlaybackPause(t,r){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t);return n.isPaused=!0,n.lastPauseTime=Date.now(),r!==void 0&&(n.positionTicks=r),await this.recordPlaybackProgress(t,r,!0)}catch(n){console.debug("\u64AD\u653E\u6682\u505C\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async recordPlaybackUnpause(t,r){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t);return n.isPaused&&n.lastPauseTime>0&&(n.totalPausedDuration+=Date.now()-n.lastPauseTime),n.isPaused=!1,n.lastPauseTime=0,r!==void 0&&(n.positionTicks=r),await this.recordPlaybackProgress(t,r,!1)}catch(n){console.debug("\u64AD\u653E\u6062\u590D\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async cleanupAllSessions(){let t=[];for(let r of this.playSessions.keys())t.push(this.recordPlaybackStop(r));return Promise.allSettled(t)}setEnablePlaybackReport(t){this.enablePlaybackReport=t,t||this.cleanupAllSessions()}getSession(t){return this.playSessions.get(t)}},Cxe=(e,t,r,n=null,s=null)=>{let i=new URLSearchParams({UserId:s||e.userId,StartTimeTicks:"0",IsPlayback:"true",AutoOpenLiveStream:"true",MaxStreamingBitrate:"7000000","X-Emby-Client":e.client,"X-Emby-Device-Name":e.deviceName,"X-Emby-Device-Id":e.deviceId,"X-Emby-Client-Version":e.clientVersion,"X-Emby-Token":e.token,reqformat:"json"});return n&&i.set("MediaSourceId",n),`${t(`/Items/${r}/PlaybackInfo`)}?${i.toString()}`},_pn=(e,t)=>t.DirectStreamUrl?t.DirectStreamUrl.startsWith("http")?t.DirectStreamUrl:e.server+t.DirectStreamUrl:t.Path&&t.Path.startsWith("http")?t.Path:e.isJellyfin?`${e.server}/Videos/${t.Id}/stream?static=true&api_key=${e.token}`:`${e.server}/emby/videos/${t.Id}/original?api_key=${e.token}&Static=true`;function z8t(e){let t={id:e.id,name:e.name||`Emby ${e.id.slice(0,8)}`,server:(e.server||"").replace(/\/$/,""),username:e.username||"",password:e.password||"",token:e.token||"",userId:e.userId||"",deviceId:e.deviceId||LG.default.randomUUID(),deviceName:e.deviceName||"iPhone",client:e.client||"SenPlayer",clientVersion:e.clientVersion||"5.6.3",enablePlaybackReport:e.enablePlaybackReport!==!1,enabled:e.enabled!==!1,timeout:e.timeout||1e4,retryCount:e.retryCount||2,cacheViews:e.cacheViews!==!1,maxConcurrent:e.maxConcurrent||6,isJellyfin:e.isJellyfin||!1,serverType:e.isJellyfin?"jellyfin":"emby"},r=`/config/embyInstances/${t.id}`;function n(te){let Q=t.isJellyfin?"":"/emby";return`${t.server}${Q}${te}`}let s={"User-Agent":`${t.client}/${t.clientVersion}`,"X-Emby-Client":t.client,"X-Emby-Device-Name":t.deviceName,"X-Emby-Client-Version":t.clientVersion,"X-Emby-Device-Id":t.deviceId,...t.isJellyfin?{"X-Jellyfin-Client":t.client,"X-Jellyfin-Client-Version":t.clientVersion,"X-Jellyfin-Device-Id":t.deviceId,"X-Jellyfin-Device-Name":t.deviceName}:{}};async function i(){let te={...s};if(t.token){let Q=`MediaBrowser Token="${t.token}", UserId="${t.userId}", Client="${t.client}", Device="${t.deviceName}", DeviceId="${t.deviceId}", Version="${t.clientVersion}"`;te["X-Emby-Authorization"]=Q,te["X-Emby-Token"]=t.token,t.isJellyfin&&(te["X-Jellyfin-Token"]=t.token,te["X-Jellyfin-Authorization"]=Q.replace("MediaBrowser","MediaBrowser"))}return te}let a=new wxe(t),o=new Nxe(t,a,i,n),c=["\u64AD\u653E\u5217\u8868","\u76F8\u673A","Playlists","Collections","Trailers","\u76F4\u64AD"],u=90,l=400,d=30,f=50,h=200,p=3e3;function m(te){let Q=Number.parseInt(te?.IndexNumber,10);return Number.isNaN(Q)?Number.MAX_SAFE_INTEGER:Q}function _(te){if(!te?.IndexNumber)return"";let Q=te.Name||`\u7B2C${te.IndexNumber||0}\u96C6`,Z=te.MediaSources||[];if(Z.length>1){let B=Z.map((k,W)=>{let P=k.Name||`\u7248\u672C${W+1}`,H=`${te.Id}|${k.Id}`;return`${P}$${H}`});return B.length>0?`${Q}@@${B.join("#")}`:""}if(Z.length===1){let B=Z[0],k=B.Name||Q,W=`${te.Id}|${B.Id}`;return`${k}$${W}`}let de=Cxe(t,n,te.Id,null,t.userId);return`${Q}$${de}`}function g(te){if(!Array.isArray(te)||te.length===0)return"";let Q=[],Z=[...te].sort((de,B)=>m(de)-m(B));for(let de of Z){let B=_(de);B&&Q.push(B)}return Q.join("#")}function y(te){let Q=Number.parseInt(te,10);return Number.isNaN(Q)?Number.MAX_SAFE_INTEGER:Q}function A(te){let Q=y(te?.ParentIndexNumber),Z=te?.SeasonName||(Q!==Number.MAX_SAFE_INTEGER?`\u7B2C${Q}\u5B63`:"\u7279\u522B\u7BC7"),de=te?.SeasonId||"";return{groupKey:de||`idx_${Q}_${Z}`,seasonId:de,seasonIndex:Q,seasonName:Z}}async function E(te,Q,Z,de="medium"){let B=[],k=0,W=Number.MAX_SAFE_INTEGER;for(;k0)return k}catch(k){console.debug("\u6309\u5267\u96C6\u63A5\u53E3\u83B7\u53D6\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7528\u6237\u63A5\u53E3:",k.message)}let B=n(`/Users/${t.userId}/Items`);return E(B,{ParentId:te,IncludeItemTypes:"Episode",Recursive:!0,Fields:Z,SortBy:"ParentIndexNumber,IndexNumber",SortOrder:"Ascending"},Q,"medium")}function b(){return!(!t.server||!t.token&&!t.username)}async function I(te){if(!t.username||!t.server)return{success:!1,reason:"\u7F3A\u5C11\u767B\u5F55\u51ED\u8BC1"};let Q=t.isJellyfin?"/Users/AuthenticateByName":"/emby/Users/AuthenticateByName",Z=`${t.server}${Q}`,de={Password:t.password||"",Pw:t.password||"",Username:t.username},B=`MediaBrowser Token="", UserId="", Client="${t.client}", Device="${t.deviceName}", DeviceId="${t.deviceId}", Version="${t.clientVersion}"`,k={Host:t.server.replace(/^https?:\/\//,"").replace(/\/$/,""),"Content-Type":"application/json","X-Emby-Authorization":B,Connection:"keep-alive",Accept:"*/*","User-Agent":`${t.client}/${t.clientVersion}`,"Accept-Language":"zh-CN,zh-Hans;q=0.9","Accept-Encoding":"gzip, deflate",...t.isJellyfin?{"X-Jellyfin-Authorization":B,"X-Jellyfin-Client":t.client,"X-Jellyfin-Device-Name":t.deviceName,"X-Jellyfin-Device-Id":t.deviceId,"X-Jellyfin-Client-Version":t.clientVersion}:{}};try{let W=await Xe.post(Z,de,{headers:k,timeout:5e3});if(W.data?.AccessToken)return t.token=W.data.AccessToken,t.userId=W.data.User.Id,te?.server?.db&&await te.server.db.push(r,{token:t.token,userId:t.userId,deviceId:t.deviceId,deviceName:t.deviceName,client:t.client,clientVersion:t.clientVersion}),{success:!0,token:t.token}}catch(W){console.debug("SenPlayer\u683C\u5F0F\u767B\u5F55\u5931\u8D25:",W.message);try{let H=`${t.server}/emby/Users/AuthenticateByName`,j={"Content-Type":"application/json","X-Emby-Client":t.client,"X-Emby-Device-Name":t.deviceName,"X-Emby-Device-Id":t.deviceId,"X-Emby-Client-Version":t.clientVersion,"User-Agent":"Mozilla/5.0"},q=await Xe.post(H,de,{headers:j,timeout:5e3});if(q.data?.AccessToken)return t.token=q.data.AccessToken,t.userId=q.data.User.Id,te?.server?.db&&await te.server.db.push(r,{token:t.token,userId:t.userId,deviceId:t.deviceId,deviceName:t.deviceName,client:t.client,clientVersion:t.clientVersion}),{success:!0,token:t.token}}catch(P){console.debug("Emby\u6807\u51C6\u683C\u5F0F\u767B\u5F55\u5931\u8D25:",P.message)}}return{success:!1,reason:"\u767B\u5F55\u5931\u8D25"}}async function T(te){if(t.token&&t.userId)try{let Q=await i(),Z=n(`/Users/${t.userId}`);return await a.cachedGet(Z,{headers:Q},"short"),!0}catch(Q){Q.response?.status}return(await I(te)).success}async function x(){try{let te=await i();return!!(await a.cachedGet(n("/System/Info"),{headers:te},"short")).data}catch{return!1}}function w(te,Q,Z={}){if(!Q)return"";let{maxWidth:de=l,quality:B=u,imageType:k="Primary"}=Z,W=`/Items/${te}/Images/${k}`,P=`?maxWidth=${de}&tag=${Q}&quality=${B}`;return t.isJellyfin?`${t.server}${W}${P}`:`${t.server}/emby${W}${P}`}function D(te){let Q=String(te?.headers?.["x-forwarded-proto"]||te?.protocol||"http").split(",")[0].trim()||"http",Z=String(te?.headers?.["x-forwarded-host"]||te?.headers?.host||"").split(",")[0].trim();return Z?`${Q}://${Z}`:""}function M(te,Q,Z={},de=null){if(!Q)return"";let{maxWidth:B=l,quality:k=u,imageType:W="Primary"}=Z,P=D(de);if(!P)return w(te,Q,Z);let H=new URL(`${P}/spider/emby_${t.id}/3/proxy/image`);return H.searchParams.set("itemId",String(te||"")),H.searchParams.set("tag",String(Q||"")),H.searchParams.set("imageType",String(W||"Primary")),H.searchParams.set("maxWidth",String(B)),H.searchParams.set("quality",String(k)),H.toString()}async function L(te,Q){if(!await T(te))return Q.code(401).send("\u767B\u5F55\u5931\u8D25");let Z=String(te?.query?.itemId||"").trim(),de=String(te?.query?.tag||"").trim(),B=String(te?.query?.imageType||"Primary").trim()||"Primary",k=Math.max(1,Number.parseInt(te?.query?.maxWidth,10)||l),W=Math.max(1,Number.parseInt(te?.query?.quality,10)||u);if(!Z||!de)return Q.code(400).send("missing image params");try{let P=await i(),H=w(Z,de,{maxWidth:k,quality:W,imageType:B}),j=await Xe.get(H,{headers:{...P,Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8"},responseType:"stream",timeout:t.timeout||1e4,validateStatus:()=>!0});return(j.status||500)>=400||!j.data?Q.code(j.status||502).send("fetch image failed"):(j.headers["content-type"]&&Q.header("Content-Type",j.headers["content-type"]),j.headers["content-length"]&&Q.header("Content-Length",j.headers["content-length"]),Q.header("Access-Control-Allow-Origin","*"),Q.header("Cache-Control","public, max-age=300"),Q.send(j.data))}catch{return Q.code(502).send("proxy image error")}}async function U(te,Q){try{if(!b())return{success:!1,error:"\u914D\u7F6E\u4E0D\u5B8C\u6574"};if(te?.server?.db){let Z=await te.server.db.getObjectDefault(r,{});Z?.deviceId&&Object.assign(t,Z)}return(!t.token||!t.userId)&&!await T(te)?{success:!1,error:"\u767B\u5F55\u5931\u8D25"}:{success:!0,name:t.name,server:t.server,serverType:t.serverType}}catch(Z){return{success:!1,error:Z.message}}}async function G(te,Q){let Z=Yr("emby",{...arguments[0],cacheKeyExtra:t.id}),de=Qr(Z);if(de)return de;if(!await T(te))return{class:[],error:"\u767B\u5F55\u5931\u8D25"};try{let B=await i(),k=n(`/Users/${t.userId}/Views`),W=t.cacheViews?"long":"short",H=(await a.cachedGet(k,{headers:B},W)).data.Items||[],j=[],q={};H.filter(X=>!c.some(ie=>X.Name.includes(ie))).forEach(X=>{let ie=X.Id.toString();j.push({type_id:ie,type_name:X.Name,type_image:M(X.Id,X.ImageTags?.Primary,{maxWidth:200,imageType:"Thumb"},te)});let ne=[{n:"\u6700\u8FD1\u6DFB\u52A0",v:"dateadded"},{n:"\u6700\u8FD1\u53D1\u884C",v:"premieredate_desc"},{n:"\u6700\u8FD1\u64AD\u653E",v:"dateplayed"},{n:"\u5E74\u4EFD\u65B0\u2192\u65E7",v:"year_desc"},{n:"\u5E74\u4EFD\u65E7\u2192\u65B0",v:"year_asc"},{n:"\u8BC4\u5206\u6700\u9AD8",v:"rating"},{n:"\u540D\u79F0A\u2192Z",v:"name"}],se=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"}];for(let ce=2025;ce>=2010;ce--)se.push({n:String(ce),v:String(ce)});let J=[{n:"\u5168\u90E8",v:""},..."ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("").map(ce=>({n:ce,v:ce}))];q[ie]=[{key:"tid",name:"\u6392\u5E8F",init:"dateadded",value:ne},{key:"year",name:"\u5E74\u4EFD",init:"",value:se},{key:"letter",name:"\u5B57\u6BCD",init:"",value:J}]});let Y={class:j,filters:q};return dn(Z,Y,Tt.semiStatic),Y}catch{return{class:[],error:"\u83B7\u53D6\u9996\u9875\u5931\u8D25"}}}async function $(te,Q){let Z=te.body.id,de=parseInt(te.body.page,10)||1;de<1&&(de=1);let B=d,k=(de-1)*B;if(!await T(te))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let W=await i(),P=n(`/Users/${t.userId}/Items`),H=te.body.filters||{},j=H.tid||"dateadded",q=H.year||"",Y=H.letter||"",X={dateadded:{sortBy:"DateCreated,SortName",sortOrder:"Descending"},premieredate_desc:{sortBy:"PremiereDate,SortName",sortOrder:"Descending"},dateplayed:{sortBy:"DatePlayed,SortName",sortOrder:"Descending"},year_asc:{sortBy:"ProductionYear,SortName",sortOrder:"Ascending"},year_desc:{sortBy:"ProductionYear,SortName",sortOrder:"Descending"},rating:{sortBy:"CommunityRating,SortName",sortOrder:"Descending"},name:{sortBy:"SortName",sortOrder:"Ascending"}},{sortBy:ie,sortOrder:ne}=X[j]||X.dateadded,se={SortBy:ie,SortOrder:ne,ParentId:Z,Recursive:"true",Limit:B,StartIndex:k,Fields:"ProductionYear,Status,DateCreated,CommunityRating,PremiereDate",IncludeItemTypes:"Movie,Series",ImageTypeLimit:1,EnableImageTypes:"Primary,Backdrop",EnableUserData:"true"};if(q){let xe=parseInt(q,10);isNaN(xe)||(se.Years=xe.toString())}Y&&(se.NameStartsWith=Y);let J=await a.cachedGet(P,{headers:W,params:se},"medium"),ce=J.data.Items||[],ge=J.data.TotalRecordCount||0,be=ce.map(xe=>{let Fe=xe.CommunityRating?`\u2B50${xe.CommunityRating.toFixed(1)}`:"",Ee=xe.ProductionYear||"",me=[Fe,Ee].filter(Boolean).join(" ");return{vod_id:mpn(xe.Id,{vod_pic:M(xe.Id,xe.ImageTags?.Primary,{},te),vod_remarks:me}),vod_name:xe.Name,vod_pic:M(xe.Id,xe.ImageTags?.Primary,{},te),vod_remarks:me,vod_year:Ee,vod_score:xe.CommunityRating||0}}),Te=Math.ceil(ge/B);return{list:be,page:de,pagecount:Te,limit:B,total:ge}}catch{return{list:[],error:"\u83B7\u53D6\u5206\u7C7B\u5931\u8D25"}}}async function K(te,Q){let Z=gpn(te.body.id),de=Z.id;if(!await T(te))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let B=await i(),k=n(`/Users/${t.userId}/Items/${de}`),P=(await a.cachedGet(k,{headers:B,params:{Fields:"MediaSources,Overview,Genres,ProductionYear,OfficialRating,RunTimeTicks,People,Studios,Taglines,Type"}},"long")).data,H={vod_id:P.Id,vod_name:P.Name,vod_pic:Z.meta?.vod_pic||M(P.Id,P.ImageTags?.Primary,{},te),vod_type:P.Genres?.join(",")||"",vod_year:P.ProductionYear||"",vod_area:P.ProductionLocation||"",vod_actor:P.People?.filter(Y=>Y.Type==="Actor").map(Y=>Y.Name).join(",")||"",vod_director:P.People?.filter(Y=>Y.Type==="Director").map(Y=>Y.Name).join(",")||"",vod_content:(P.Overview||"").replace(/\r\n/g," "),vod_remarks:Z.meta?.vod_remarks||P.OfficialRating||"",vod_play_from:"",vod_play_url:""},j=[],q=[];if(P.Type==="Series")try{let Y=[];try{let J=n(`/Shows/${de}/Seasons`);Y=(await a.cachedGet(J,{headers:B,params:{UserId:t.userId,Fields:"Id,Name,IndexNumber",EnableTotalRecordCount:!1}},"long")).data?.Items||[]}catch(J){console.debug("\u83B7\u53D6\u5B63\u5217\u8868\u5931\u8D25\uFF0C\u7EE7\u7EED\u5C1D\u8BD5\u6279\u91CF\u83B7\u53D6\u5267\u96C6:",J.message)}let X=await v(de,B),ie=new Map;for(let J of X){let ce=A(J);ie.has(ce.groupKey)||ie.set(ce.groupKey,{...ce,episodes:[]}),ie.get(ce.groupKey).episodes.push(J)}let ne=[...Y].sort((J,ce)=>y(J?.IndexNumber)-y(ce?.IndexNumber));for(let J of ne){let ce=J?.Id||"",ge=ce?ie.get(ce):null;if(!ge||ge.episodes.length===0)continue;let be=g(ge.episodes);be&&(j.push(J.Name||ge.seasonName||`Season ${J.IndexNumber||ce}`),q.push(be),ie.delete(ce))}let se=[...ie.values()].sort((J,ce)=>J.seasonIndex!==ce.seasonIndex?J.seasonIndex-ce.seasonIndex:(J.seasonName||"").localeCompare(ce.seasonName||""));for(let J of se){if(!J.episodes||J.episodes.length===0)continue;let ce=g(J.episodes);ce&&(j.push(J.seasonName||t.name),q.push(ce))}}catch(Y){console.debug("\u83B7\u53D6\u5267\u96C6\u4FE1\u606F\u5931\u8D25:",Y.message)}else{let Y=P.MediaSources||[];if(Y.length>0)Y.forEach(X=>{let ie=X.Name||"\u9ED8\u8BA4\u7EBF\u8DEF";j.push(ie);let ne=Cxe(t,n,de,X.Id,t.userId);q.push(`${P.Name}$${ne}`)});else{j.push(t.name);let X=Cxe(t,n,de,null,t.userId);q.push(`${P.Name}$${X}`)}}return j.length===0||q.length===0?{list:[],error:"\u65E0\u6CD5\u83B7\u53D6\u64AD\u653E\u5217\u8868"}:(H.vod_play_from=j.join("$$$"),H.vod_play_url=q.join("$$$"),{list:[H]})}catch(B){return console.debug("\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25:",B.message),{list:[],error:"\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25"}}}async function ee(te,Q){let Z=te.body.wd?.trim();if(!Z)return{list:[]};if(!await T(te))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let de=await i(),B=n(`/Users/${t.userId}/Items`),k={SearchTerm:Z,IncludeItemTypes:"Movie,Series",Recursive:"true",Limit:f,Fields:"ProductionYear,Type",EnableImageTypes:"Primary",SortBy:"SortName",SortOrder:"Ascending"};return{list:((await a.cachedGet(B,{headers:de,params:k},"short")).data.Items||[]).map(j=>({vod_id:j.Id,vod_name:j.Name,vod_pic:M(j.Id,j.ImageTags?.Primary,{},te),vod_remarks:j.Type==="Series"?"\u5267\u96C6":"\u7535\u5F71",vod_year:j.ProductionYear||""}))}}catch{return{list:[],error:"\u641C\u7D22\u5931\u8D25"}}}async function z(te,Q){let Z=String(te.body?.id||"");if(!Z)return{parse:1,url:"",header:s};if(Z.endsWith("_more")){let k=Z.replace("_more","");return{parse:0,url:`${t.server}/web/index.html#!/details?id=${k}&serverId=${t.server}`,header:s}}let de,B;if(Z.includes("|")){let k=Z.split("|");de=k[0],B=k[1]}else if(Z.includes("/PlaybackInfo?"))try{let k=new URL(Z),W=k.pathname.split("/");de=W[W.length-2],B=k.searchParams.get("MediaSourceId")}catch{return{parse:1,url:Z,header:s}}else return{parse:1,url:Z,header:s};try{let k=await i(),W={DeviceProfile:{MaxStreamingBitrate:14e7,DirectPlayProfiles:[{Container:"mp4,mkv,m4v",Type:"Video"}]}},P=n(`/Items/${de}/PlaybackInfo`),H={UserId:t.userId,MaxStreamingBitrate:14e7};B&&(H.MediaSourceId=B);let q=(await Xe.post(P,W,{headers:{...k,"Content-Type":"application/json"},params:H,timeout:5e3})).data?.MediaSources||[];if(q.length===0)return{error:"\u65E0\u53EF\u7528\u5A92\u4F53\u6E90"};let Y=q.find(se=>se.Id===B)||q[0],X=null;t.enablePlaybackReport&&o.recordPlaybackStart(de,Y).then(se=>{X=se}).catch(()=>{});let ie=oe(Y,X);return ie||{parse:0,url:_pn(t,Y),header:s,extra:{mediaSourceId:Y.Id,playbackSessionId:X}}}catch(k){return console.debug("\u64AD\u653E\u8BF7\u6C42\u5931\u8D25:",k.message),{parse:0,url:t.isJellyfin?`${t.server}/Videos/${de}/stream?api_key=${t.token}`:`${t.server}/emby/videos/${de}/stream?api_key=${t.token}`,header:s}}}function oe(te,Q){return te.DirectStreamUrl?{parse:0,url:te.DirectStreamUrl.startsWith("http")?te.DirectStreamUrl:t.server+te.DirectStreamUrl,header:{...s,Referer:`${t.server}/`,...Q&&{"X-Playback-Session-Id":Q}},extra:{source:te.Name||"\u9ED8\u8BA4",bitrate:te.Bitrate?`${(te.Bitrate/1e6).toFixed(1)}M`:"",mediaSourceId:te.Id,playbackSessionId:Q}}:te.Path&&te.Path.startsWith("http")?{parse:0,url:te.Path,header:s,extra:{mediaSourceId:te.Id,playbackSessionId:Q}}:null}return{meta:{key:`emby_${t.id}`,name:`${t.isJellyfin?"Jellyfin":"Emby"} ${t.name}`,type:3,version:"0.0.3"},api:async te=>{te.get("/proxy/image",L),te.post("/init",U),te.post("/home",G),te.post("/category",$),te.post("/detail",K),te.post("/play",z),te.post("/search",ee)}}}Hr();Nn();Wc();ua();var Oxe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",MG=3e4,Apn=1e4,Epn=new Set(["desktop.ini","thumbs.db","readme.md"]),Dxe=1e3,ypn=5e3,vpn=/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|iso)$/i,Spn="https://img.icons8.com/color/48/folder-invoices.png",Tpn="https://img.icons8.com/fluency/96/video-file.png",bpn="",Y8t="__alist_playlist__",Q8t="https://img.icons8.com/fluency/96/playlist.png",Ipn={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",avi:"video/x-msvideo",mov:"video/quicktime",flv:"video/x-flv",wmv:"video/x-ms-wmv",m3u8:"application/vnd.apple.mpegurl",ts:"video/MP2T",webm:"video/webm",mpg:"video/mpeg",mpeg:"video/mpeg","3gp":"video/3gpp"},Rpn={srt:"text/plain; charset=utf-8",ass:"text/plain; charset=utf-8",ssa:"text/plain; charset=utf-8",sub:"text/plain; charset=utf-8",idx:"text/plain; charset=utf-8",smi:"text/plain; charset=utf-8",txt:"text/plain; charset=utf-8",vtt:"text/vtt; charset=utf-8"};function Cpn(e="",t=""){let r=String(e),n=String(t),s=r.match(/(\d+|\D+)/g)||[],i=n.match(/(\d+|\D+)/g)||[],a=Math.min(s.length,i.length);for(let o=0;oe.compare(t,r)}}catch{}return Cpn}var W8t=xpn();function kG(e=""){try{return decodeURIComponent(e)}catch{return e}}function BG(e=""){let r=String(e).trim().replace(/[?#].*$/,"").replace(/\/+$/,"").split("/").filter(Boolean);return r.length>0?r[r.length-1]:""}function wpn(e="",t=""){let r=kG(String(e).trim()),n=kG(String(t).trim()),s=BG(r);if(s)return s;let i=BG(n);return i||r||n||"\u672A\u77E5\u89C6\u9891"}function X8t(e=""){return Buffer.from(String(e),"utf8").toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function J8t(e=""){let t=String(e||"").replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4);return Buffer.from(r,"base64").toString("utf8")}function Z8t(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:e?.server?.address?.()?.url||""}function e5t(e){return String(e?.server?.prefix||"").replace(/\/+$/,"")}function t5t(e=""){let t=String(e||"").toLowerCase().match(/\.([a-z0-9]+)(?:[?#].*)?$/);return t?t[1]:""}function Npn(e=""){return Ipn[t5t(e)]||"application/octet-stream"}function r5t(e){let t=String(e.id||"unknown"),r=(e.server||"").replace(/\/$/,"");r=r.replace(/:443$/,"").replace(/(:443)\//,"/"),r=r.replace(/^http:\/\/([^:\/]+):80$/,"http://$1"),r=r.replace(/^http:\/\/([^:\/]+):80\//,"http://$1/");let n={id:t,name:e.name||`Alist ${t.slice(0,8)}`,server:r,username:e.username||"",password:e.password||"",token:e.token||"",enabled:e.enabled!==!1},s=n.server,i=null;function a(B,k="",W={}){return JSON.stringify({c:n.id,p:B||"",n:k,...W})}function o(B){try{return JSON.parse(B)}catch{return{c:n.id,p:B||"/",n:""}}}function c(){let B={"Content-Type":"application/json","User-Agent":Oxe};return n.token&&(B.Authorization=n.token),B}async function u(){if(!n.username)return null;if(i)return i;i=(async()=>{try{let B=await Xe.post(`${s}/api/auth/login`,{username:n.username,password:n.password||""},{timeout:MG});if(B.data?.code===200&&B.data?.data?.token)return n.token=B.data.data.token,n.token;console.error(`[Alist\u767B\u5F55] \u767B\u5F55\u5931\u8D25: ${n.name}, \u54CD\u5E94\u7801: ${B.data?.code}`)}catch(B){console.error(`[Alist\u767B\u5F55] \u767B\u5F55\u5F02\u5E38: ${n.name}, \u9519\u8BEF: ${B.message}`)}return null})();try{return await i}finally{i=null}}function l(B,k){let W=B?.data?.code||k?.response?.status,P=String(B?.data?.message||k?.response?.data?.message||"").toLowerCase();return W===401||W===403||P.includes("token")||P.includes("unauthorized")}async function d(B,k){let W=()=>Xe.post(`${s}${B}`,k,{headers:c(),timeout:MG});try{let P=await W();return l(P,null)&&n.username&&await u()?await W():P}catch(P){if(n.username&&l(null,P)&&await u())return await W();throw P}}async function f(){return n.token?!0:n.username?!!await u():!0}async function h(B,k=1,W=Dxe,P={}){let H=Math.max(1,Number.parseInt(k,10)||1),j=Math.min(Dxe,Math.max(1,Number.parseInt(W,10)||Dxe)),q=Math.max(j,Number.parseInt(P.maxItems,10)||ypn),Y=[],X=H,ie=0;try{for(;Y.length0&&Y.length>=ie)break;X+=1}}catch(ne){console.error(`[Alist\u5217\u8868] \u5F02\u5E38: ${B}, \u9519\u8BEF: ${ne.message}`)}return Y.slice(0,q)}async function p(B){try{let k=await d("/api/fs/get",{path:B||"/",password:""});if(k.data?.code===200)return k.data.data;console.error(`[Alist\u6587\u4EF6] \u5931\u8D25: ${B}, \u54CD\u5E94\u7801: ${k.data?.code}, \u6D88\u606F: ${k.data?.message}`)}catch(k){console.error(`[Alist\u6587\u4EF6] \u5F02\u5E38: ${B}, \u9519\u8BEF: ${k.message}`)}return null}function m(B){if(!B)return"";let P=(B.startsWith("/")?B:`/${B}`).split("/").map(H=>H===""?"":encodeURIComponent(H).replace(/%2F/g,"/")).join("/");return`${s}/d${P}`}function _(B,k,W){let P=X8t(JSON.stringify({c:n.id,p:k||"",n:W||""})),H=t5t(W),j=`${e5t(B)}/proxy/media/${P}${H?`.${H}`:""}`,q=Z8t(B);return q?`${q}${j}`:j}function g(B=""){let k=b(B);return Rpn[k]||"text/plain; charset=utf-8"}function y(B,k,W,P=""){let H=b(P||W),j=X8t(JSON.stringify({c:n.id,p:k||"",n:W||"",f:H})),q=`${e5t(B)}/proxy/subtitle/${j}.${H}`,Y=Z8t(B);return Y?`${Y}${q}`:q}function A(B,k){let W=String(B||"/");return W==="/"?`/${k}`:`${W}/${k}`}function E(B){return!!B&&vpn.test(B)}function v(B){return vt(B)}function b(B){return tr(B)||String(B||"").toLowerCase().replace(/^\./,"")||"srt"}function I(B){return String(B||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function T(B,k=0){let W=Number(k||0);return W>0?`${I(B)} [${U(W)}]`:I(B)}function x(B){return String(B||"/").split("/").filter(Boolean).pop()||"\u6839\u76EE\u5F55"}function w(B){let k=Array.isArray(B)?B.filter(P=>P?.url).map(P=>({url:P.url,name:P.name||"\u5916\u6302\u5B57\u5E55",format:b(P.format||P.name)})):[];if(k.length===0)return{};let W=k[0];return{subt:W.url,subtitle:W.url,subs_urls:k.map(P=>P.url),subs:k,extra:{subt:W.url,subtitle:W.url,subs_urls:k.map(P=>P.url),subs:k}}}function D(B,k){let P=(Array.isArray(B)?B:B?[B]:[]).map(H=>{let j=H?.name||"",q=H?.path||(k==="/"?`/${j}`:`${k}/${j}`);return!j||!q?null:{p:q,n:j,e:b(j)}}).filter(Boolean);return P.length===0?{}:{ss:P}}function M(B,k,W,P,H=0){return a(B,k,{...D(W,P),s:Number(H||0)})}async function L(B){let k=await p(B);return k&&k.raw_url?{fileInfo:k,url:k.raw_url,urlSource:"raw_url"}:k&&k.url?{fileInfo:k,url:k.url,urlSource:"url"}:{fileInfo:k,url:m(B),urlSource:"direct_link"}}function U(B){if(!B||B===0)return"0B";let k=1024,W=["B","KB","MB","GB","TB"],P=Math.floor(Math.log(B)/Math.log(k));return parseFloat((B/Math.pow(k,P)).toFixed(2))+W[P]}async function G(B,k){try{if(!n.server)return{success:!1,error:"\u670D\u52A1\u5668\u5730\u5740\u672A\u914D\u7F6E"};if(n.username&&!n.token&&!await f())return{success:!1,error:"\u767B\u5F55\u5931\u8D25"};let W=await d("/api/fs/list",{path:"/",password:"",page:1,per_page:1});return W.data?.code!==200?{success:!1,error:W.data?.message||"\u8FDE\u63A5\u6821\u9A8C\u5931\u8D25",message:`\u8FDE\u63A5\u5931\u8D25: ${W.data?.message||"\u8FDE\u63A5\u6821\u9A8C\u5931\u8D25"}`}:{success:!0,name:n.name,message:`\u8FDE\u63A5\u6210\u529F: ${n.name}`}}catch(W){return{success:!1,error:W.message,message:`\u8FDE\u63A5\u5931\u8D25: ${W.message}`}}}async function $(B,k){let W=Yr("alist",arguments[0]||{}),P=Qr(W);if(P)return P;let H={class:[{type_id:a("/",""),type_name:n.name,type_flag:"alist"}],filters:{}};return dn(W,H,Tt.semiStatic),H}async function K(B,k){let W=B.body||{},P="/",H=null;W.id&&(H=o(W.id),P=H.p||"/");let j=parseInt(W.page)||1,q=50;if(!await f())return{page:1,pagecount:1,limit:q,total:0,list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let X=(await h(P,1,1e3)).filter(me=>{let Ae=me?.name||"";return Ae&&!Ae.startsWith(".")&&!Epn.has(Ae.toLowerCase())}),ie=[],ne=[],se=[];X.forEach(me=>{let Ae=A(P,me.name);me.is_dir?ie.push({...me,path:Ae,type:"folder"}):(ne.push({...me,path:Ae,type:"file",isVideo:E(me.name)}),v(me.name)&&se.push({...me,path:Ae}))}),ie.sort((me,Ae)=>W8t(me.name,Ae.name));let J=Kt(ne.filter(me=>me.isVideo)),ce=new Set(J.map(me=>me.path)),ge=ne.filter(me=>!ce.has(me.path)).sort((me,Ae)=>W8t(me.name,Ae.name)),be=[...ie];J.length>1&&be.push({isPlaylist:!0,path:P,name:"\u64AD\u653E\u5217\u8868",count:J.length}),be.push(...J,...ge);let Te=(j-1)*q,xe=Te+q,Ee=be.slice(Te,xe).map(me=>{if(me.isPlaylist){let Ae=a(me.path,Y8t,{t:`${x(me.path)} \u64AD\u653E\u5217\u8868`});return{vod_id:Ae,vod_name:"\u64AD\u653E\u5217\u8868",vod_pic:Q8t,vod_remarks:`${me.count}\u4E2A\u89C6\u9891`,vod_tag:"playlist",vod_content:"",extend:{id:Ae,path:me.path,type:"playlist"}}}if(me.is_dir){let Ae=a(me.path,"");return{vod_id:Ae,type_id:Ae,type_name:me.name,vod_name:`\u{1F4C1} ${me.name}`,vod_pic:"https://img.icons8.com/color/48/folder-invoices.png",vod_remarks:"\u6587\u4EF6\u5939",vod_tag:"folder",vod_content:"",cate:{id:Ae,name:me.name},extend:{id:Ae,path:me.path,type:"folder"}}}else{let Ae=me.isVideo?ic(me.name,se,Ie=>Ie?.name||""):[],pe=M(me.path,me.name,Ae,P,me.size),Se=[];return me.isVideo&&Se.push("\u{1F3AC}"),me.size&&Se.push(U(me.size)),{vod_id:pe,vod_name:me.name,vod_pic:me.thumb||"",vod_remarks:Se.join(" "),vod_tag:me.isVideo?"video":"file",vod_content:"",extend:{id:pe,path:me.path,type:"file",isVideo:me.isVideo}}}});return{page:j,pagecount:Math.max(1,Math.ceil(be.length/q)),limit:q,total:be.length,list:Ee}}catch(Y){return console.error("Alist\u5206\u7C7B\u5931\u8D25:",Y),{page:1,pagecount:1,limit:q,total:0,list:[],error:Y.message}}}async function ee(B,k){let W=B.body||{};if(!W.id)return{list:[],error:"ID\u53C2\u6570\u7F3A\u5931"};if(!await f())return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let P=o(W.id);if(!P.n)return{list:[],error:"\u76EE\u5F55\u65E0\u6CD5\u67E5\u770B\u8BE6\u60C5\uFF0C\u8BF7\u4F7F\u7528\u5206\u7C7B\u6D4F\u89C8"};let H=P.p;if(P.n===Y8t){let q=await h(H),Y=q.filter(ne=>!ne.is_dir&&v(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})),X=Kt(q.filter(ne=>!ne.is_dir&&E(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})));if(X.length===0)return{list:[],error:"\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let ie=X.map(ne=>{let se=ic(ne.name,Y,ce=>ce?.name||""),J=M(ne.path,ne.name,se,H,ne.size);return`${T(ne.name,ne.size)}$${J}`}).join("#");return{list:[{vod_id:W.id,vod_name:P.t||`${x(H)} \u64AD\u653E\u5217\u8868`,vod_pic:Q8t,vod_content:`\u5F53\u524D\u76EE\u5F55: ${H}`,vod_remarks:`\u5171${X.length}\u4E2A\u89C6\u9891`,vod_play_from:n.name,vod_play_url:ie}]}}let j=await p(H);if(!j)return{list:[],error:"\u6587\u4EF6\u4E0D\u5B58\u5728\u6216\u65E0\u6CD5\u8BBF\u95EE"};if(j.is_dir){let q=await h(H),Y=q.filter(ne=>!ne.is_dir&&v(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})),X=Kt(q.filter(ne=>!ne.is_dir&&E(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})));if(X.length===0)return{list:[],error:"\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let ie=X.map(ne=>{let se=ic(ne.name,Y,ce=>ce?.name||""),J=M(ne.path,ne.name,se,P.p,ne.size);return`${T(ne.name,ne.size)}$${J}`}).join("#");return{list:[{vod_id:W.id,vod_name:P.n,vod_pic:j.thumb||"",vod_content:"",vod_remarks:U(j.size)||"",vod_play_from:n.name,vod_play_url:ie}]}}else{if(!E(j.name))return{list:[],error:"\u4E0D\u662F\u89C6\u9891\u6587\u4EF6"};let q=H.substring(0,H.lastIndexOf("/"))||"/",X=(await h(q)).filter(J=>!J.is_dir&&v(J.name)).map(J=>({...J,path:A(q,J.name)})),ie=ic(P.n,X,J=>J?.name||""),ne=M(H,P.n,ie,q,j.size),se="";return ie.length>0&&(se=`\u5B57\u5E55\u6587\u4EF6: -${ie.map(ce=>ce.name).join(` -`)}`),{list:[{vod_id:W.id,vod_name:P.n,vod_pic:j.thumb||"",vod_content:se,vod_remarks:U(j.size)||"",vod_time:j.modified||"",vod_play_from:n.name,vod_play_url:`${T(P.n,j.size)}$${ne}`}]}}}catch(P){return console.error("Alist\u8BE6\u60C5\u5931\u8D25:",P),{list:[],error:P.message}}}async function z(B,k){let W=B.body||{};if(!W.id)return{error:"ID\u53C2\u6570\u7F3A\u5931"};if(!await f())return{error:"\u767B\u5F55\u5931\u8D25"};try{let P=o(W.id),H=P.n||(P.p?P.p.split("/").pop():"")||"";if(!E(H))return{error:"\u4E0D\u662F\u89C6\u9891\u6587\u4EF6\uFF0C\u65E0\u6CD5\u64AD\u653E"};let j=P.p,{url:q,urlSource:Y}=await L(j);if(!q)throw new Error("\u65E0\u6CD5\u83B7\u53D6\u64AD\u653E\u5730\u5740");let X={parse:0,url:_(B,j,H),header:{},extra:{from:n.name,path:j,urlSource:Y}},ie=Array.isArray(P.ss)&&P.ss.length>0?P.ss.map(ne=>({path:ne?.p||"",name:ne?.n||"\u5916\u6302\u5B57\u5E55",format:ne?.e||ne?.n||"srt"})).filter(ne=>ne.path):P.sp?[{path:P.sp,name:P.sn||"\u5916\u6302\u5B57\u5E55",format:P.se||P.sn||"srt"}]:[];if(ie.length>0)try{let ne=[];for(let ce of ie)try{let ge=y(B,ce.path,ce.name,ce.format);ge&&ne.push({url:ge,name:ce.name||"\u5916\u6302\u5B57\u5E55",format:ce.format||ce.name||"srt"})}catch(ge){console.warn("[Alist\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",ge.message)}let se=w(ne),J={...X.extra||{},...se.extra||{}};Object.assign(X,se),X.extra=J}catch(ne){console.warn("[Alist\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",ne.message)}return X}catch(P){return console.error("[Alist\u64AD\u653E] \u64AD\u653E\u5931\u8D25:",P.message,P.stack),{parse:0,url:"",header:{},error:P.message}}}function oe(B,k={}){let W={"User-Agent":Oxe,...k},P=String(B).startsWith(`${s}/`);return P&&(W.Referer=s),P&&n.token&&(W.Authorization=n.token.startsWith("Bearer ")?n.token:`Bearer ${n.token}`),W}async function le(B,k){let W=String(B.params?.encoded||B.params?.["*"]||"").replace(/\.[a-z0-9]+$/i,""),P=null;try{P=JSON.parse(J8t(W))}catch{return k.code(400),"bad media token"}if(!P||P.c!==n.id||!P.p)return k.code(403),"invalid media token";try{let H=String(P.p||""),j=String(P.n||BG(H)||"video"),{url:q}=await L(H);if(!q)return k.code(404),"media url not found";let Y=oe(q,{Accept:"*/*","Accept-Encoding":"identity",...B.headers?.range?{Range:B.headers.range}:{}}),X=await Xe.get(q,{responseType:"stream",headers:Y,timeout:MG,maxRedirects:5,validateStatus:()=>!0});if(X.status<200||X.status>=400)return X.data&&typeof X.data.destroy=="function"&&X.data.destroy(),k.code(X.status||502),`media fetch failed: ${X.status||502}`;k.code(X.status||200);let ie=["content-type","content-length","content-range","accept-ranges","etag","last-modified"];for(let se of ie){let J=X.headers?.[se];J!=null&&k.header(se,J)}let ne=String(X.headers?.["content-type"]||"").toLowerCase();return(!ne||ne.includes("application/oct-stream")||ne.includes("application/octet-stream"))&&k.header("Content-Type",Npn(j)),k.header("Accept-Ranges",X.headers?.["accept-ranges"]||"bytes"),k.header("Access-Control-Allow-Origin","*"),k.header("Access-Control-Allow-Headers","Range, Content-Type"),k.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),k.header("Cache-Control","no-store"),k.send(X.data)}catch(H){return console.error("[Alist\u4EE3\u7406] \u5A92\u4F53\u4EE3\u7406\u5931\u8D25:",H.message),k.code(502),`media proxy failed: ${H.message}`}}async function te(B,k){let W=String(B.params?.encoded||B.params?.["*"]||"").replace(/\.[a-z0-9]+$/i,""),P=null;try{P=JSON.parse(J8t(W))}catch{return k.code(400),"bad subtitle token"}if(!P||P.c!==n.id||!P.p)return k.code(403),"invalid subtitle token";try{let H=String(P.p||""),j=String(P.n||BG(H)||"subtitle.srt"),q=b(P.f||j),{url:Y}=await L(H);if(!Y)return k.code(404),"subtitle url not found";let X=await Xe.get(Y,{responseType:"stream",headers:oe(Y,{Accept:"text/plain,text/vtt,*/*","Accept-Encoding":"identity"}),timeout:MG,maxRedirects:5,validateStatus:()=>!0});if(X.status<200||X.status>=400)return X.data&&typeof X.data.destroy=="function"&&X.data.destroy(),k.code(X.status||502),`subtitle fetch failed: ${X.status||502}`;k.code(X.status||200);let ie=String(X.headers?.["content-type"]||"").toLowerCase();return k.header("Content-Type",ie&&!ie.includes("application/octet-stream")?X.headers["content-type"]:g(q)),X.headers?.["content-length"]&&k.header("Content-Length",X.headers["content-length"]),k.header("Access-Control-Allow-Origin","*"),k.header("Access-Control-Allow-Headers","Range, Content-Type"),k.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),k.header("Cache-Control","no-store"),k.send(X.data)}catch(H){return console.error("[Alist\u4EE3\u7406] \u5B57\u5E55\u4EE3\u7406\u5931\u8D25:",H.message),k.code(502),`subtitle proxy failed: ${H.message}`}}async function Q(B,k){let W=B.body||{},P=W.wd||"",H=parseInt(W.page,10)||1;if(!P.trim())return{page:1,pagecount:1,limit:0,total:0,list:[]};try{let j=`${s}/search?box=${encodeURIComponent(P)}&type=video`,q=await Xe.get(j,{timeout:Apn,headers:{"User-Agent":Oxe}});if(!q.data)return{page:1,pagecount:1,limit:0,total:0,list:[]};let X=new E1e().pq(q.data),ie=[];X("div ul a").each((se,J)=>{let ce=J.attribs?.href,ge=X(J).text().trim();ce&&ge&&ce.startsWith("/")&&ie.push({path:kG(ce),name:kG(ge)})});let ne=ie.map(se=>{let J=wpn(se.name,se.path),ce=E(J)||E(se.path),ge=a(se.path,ce?J:""),be={vod_id:ge,vod_name:J,vod_pic:ce?Tpn:Spn,vod_remarks:ce?"\u89C6\u9891\u6587\u4EF6":"\u6587\u4EF6\u5939",vod_tag:ce?"video":"folder",vod_content:se.path,extend:{id:ge,path:se.path,type:ce?"file":"folder",isVideo:ce}};return ce?(be.vod_play_from=n.name,be.vod_play_url=`${J}$${ge}`):(be.type_id=ge,be.type_name=J,be.cate={id:ge,name:J}),be});return{page:H,pagecount:1,limit:ne.length,total:ne.length,list:ne}}catch(j){return console.error(`[Alist\u641C\u7D22] ${n.name} - \u5931\u8D25:`,j.message),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function Z(B,k){try{let W=Buffer.from(bpn,"base64");return k.header("Content-Type","image/png"),k.header("Content-Length",W.length),k.send(W)}catch{k.code(500).send({error:"Failed to load image"})}}return{meta:{key:`alist_${n.id}`,name:`Alist ${n.name}`,type:3,version:"2.1.0",author:"\u878D\u5408\u7248\u672C",description:`Alist\u6587\u4EF6\u6D4F\u89C8 - ${n.name}`,supportSearch:!0},api:async B=>{B.post("/init",G),B.post("/home",$),B.post("/category",K),B.post("/detail",ee),B.post("/play",z),B.post("/search",Q),B.get("/icon",Z),B.get("/proxy/media/*",le),B.get("/proxy/subtitle/*",te)}}}Hr();Nn();var xHt=Ne(CHt(),1);da();sa();ua();Wc();function L2e(e){let t=(e.server||"").replace(/\/$/,"");t=t.replace(/:443$/,"").replace(/(:443)\//,"/"),t=t.replace(/^http:\/\/([^:\/]+):80$/,"http://$1"),t=t.replace(/^http:\/\/([^:\/]+):80\//,"http://$1/");let r={id:e.id,name:e.name||`WebDAV ${e.id.slice(0,8)}`,server:t,path:e.path||"/",username:e.username||"",password:e.password||"",enabled:e.enabled!==!1},n=r.server,s=r.path&&r.path!=="/"?r.path.replace(/\/$/,""):"/",i=15*1e3,a=20*1e3,o=10*1e3,c=200,u=50,l=20,d=2*1024*1024,f="1.3.0",h="webdav@@@",p="__webdav_playlist__",m="https://img.icons8.com/color/48/folder-invoices.png",_="https://i2.100024.xyz/2024/01/13/pptcej.webp",g="https://img.icons8.com/fluency/96/playlist.png",y=new gt(c,i),A=new gt(c,a),E=new gt(c,o),v=`webdav:${r.id}`;async function b(Ee,me,Ae,pe,Se){let Ie=Ee.get(Ae);return Ie!==null?Ie:Un(v,me,Ae,async()=>{let Le=await Se();return Ee.set(Ae,Le),Le},{timeout:3e4})}function I(Ee){let me=Number.parseInt(Ee,10);return Number.isNaN(me)||me<=0?1:me}function T(Ee,me="",Ae={}){let pe={c:r.id,p:Ee||"/",n:me||""};if(Ae&&typeof Ae=="object")for(let[Se,Ie]of Object.entries(Ae))["c","p","n"].includes(Se)||Ie==null||Ie===""||(pe[Se]=Ie);return h+Buffer.from(JSON.stringify(pe),"utf8").toString("base64url")}function x(Ee){let me={c:r.id,p:Ee||"/",n:""};try{let Ae=typeof Ee=="string"?Ee:"";if(!Ae)return me;if(Ae.includes("%"))try{Ae=decodeURIComponent(Ae)}catch{}return Ae.startsWith(h)?JSON.parse(Buffer.from(Ae.slice(h.length),"base64url").toString("utf8")):Ae.startsWith("{")?JSON.parse(Ae):me}catch{return me}}let w=r.username?{Authorization:`Basic ${Buffer.from(`${r.username}:${r.password||""}`).toString("base64")}`,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}:{};function D(){return{...w}}function M(Ee){let me=String(Ee||"/").trim();return me.startsWith("/")||(me="/"+me),s&&s!=="/"&&(me===s||me.startsWith(s+"/"))&&(me=me.substring(s.length)||"/"),me.startsWith("/")||(me="/"+me),me.replace(/\/+/g,"/")}function L(){return(0,xHt.create)({version:"1.0",encoding:"UTF-8"}).ele("d:propfind",{"xmlns:d":"DAV:"}).ele("d:prop").ele("d:displayname").up().ele("d:getcontentlength").up().ele("d:getcontenttype").up().ele("d:getlastmodified").up().ele("d:resourcetype").up().up().up().end()}let U=L();function G(Ee,me){let Ae=[];try{let pe=/<[^:>]+:response>([\s\S]*?)<\/[^:>]+:response>/g,Se;for(;(Se=pe.exec(Ee))!==null;){let Ie=Se[1],Le=/<[^:>]+:href>(.*?)<\/[^:>]+:href>/.exec(Ie);if(!Le)continue;let we=Le[1];try{we=decodeURIComponent(we)}catch{}let He=me.replace(/\/$/,"");if(we.replace(/\/$/,"")===He)continue;let ke=/<[^:>]+:displayname>(.*?)<\/[^:>]+:displayname>/.exec(Ie),Qe=ke?ke[1]:we.split("/").filter(Boolean).pop();if(!Qe){let yt=we.split("/").filter(Boolean);Qe=yt[yt.length-1]||"\u672A\u77E5\u6587\u4EF6"}let It=/<[^:>]+:getcontentlength>(.*?)<\/[^:>]+:getcontentlength>/.exec(Ie),ze=It&&Number.parseInt(It[1],10)||0,ot=/<[^:>]+:getlastmodified>(.*?)<\/[^:>]+:getlastmodified>/.exec(Ie),lt=ot?ot[1]:null,_t=/<[^:>]+:collection\s*\/>/.test(Ie)||/<[^:>]+:resourcetype><[^:>]+:collection/.test(Ie),mr=M(we),Ht=!_t&&z(Qe),it=!_t&&oe(Qe);Ae.push({name:Qe,path:mr,size:ze,isDir:_t,isVideo:Ht,isSubtitle:it,lastModified:lt})}}catch(pe){console.error("\u89E3\u6790WebDAV\u54CD\u5E94\u5931\u8D25:",pe.message)}return Ae}async function $(Ee){let me=s==="/"?Ee:s+Ee;me.startsWith("/")||(me="/"+me);let Ae=n+me,pe=await Xe({method:"PROPFIND",url:Ae,headers:{...D(),Depth:"1","Content-Type":"application/xml"},data:U,timeout:3e4});return G(pe.data,me)}async function K(Ee,me={}){let Ae=`dir:${Ee}`;try{let Se=(me.noCache?await $(Ee):await b(y,"category",Ae,i,async()=>$(Ee))).slice();if(me.sortBy==="name"?Se.sort((Ie,Le)=>Ie.isDir&&!Le.isDir?-1:!Ie.isDir&&Le.isDir?1:Ie.name.localeCompare(Le.name)):me.sortBy==="time"&&me.sortOrder==="desc"&&Se.sort((Ie,Le)=>Ie.lastModified&&Le.lastModified?new Date(Le.lastModified)-new Date(Ie.lastModified):0),me.filter==="videos"?Se=Se.filter(Ie=>Ie.isVideo):me.filter==="folders"&&(Se=Se.filter(Ie=>Ie.isDir)),me.page&&me.pageSize){let Ie=(me.page-1)*me.pageSize;Se=Se.slice(Ie,Ie+me.pageSize)}return Se}catch(pe){throw console.error("WebDAV\u5217\u51FA\u76EE\u5F55\u5931\u8D25:",pe.message),pe}}async function ee(Ee){let me=await K(Ee),Ae=me.filter(Le=>Le.isDir),pe=me.filter(Le=>!Le.isDir),Se=pe.filter(Le=>Le.isVideo),Ie=pe.filter(Le=>Le.isSubtitle);return{folders:Ae,files:pe,videoFiles:Se,subtitleFiles:Ie,total:me.length}}function z(Ee){return[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".rm",".mpg",".mpeg",".3gp",".f4v",".vob",".iso"].some(Ae=>Ee.toLowerCase().endsWith(Ae))}function oe(Ee){return[".srt",".ass",".ssa",".sub",".idx",".vtt",".smi",".txt"].some(Ae=>Ee.toLowerCase().endsWith(Ae))}function le(Ee){return/\.[^./\\]+$/.test(String(Ee||""))}function te(Ee){return String(Ee||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function Q(Ee,me=0){let Ae=Number(me||0);return Ae>0?`${te(Ee)} [${ie(Ae)}]`:te(Ee)}function Z(Ee){let me=String(Ee||"").toLowerCase().replace(/^\./,"");return["srt","ass","ssa","sub","idx","vtt","smi","txt"].includes(me)?me:tr(Ee)||"srt"}function de(Ee){let me=Array.isArray(Ee)?Ee.filter(pe=>pe?.url).map(pe=>({url:pe.url,name:pe.name||"\u5916\u6302\u5B57\u5E55",format:Z(pe.format||pe.name)})):[];if(me.length===0)return{};let Ae=me[0];return{subt:Ae.url,subtitle:Ae.url,subs_urls:me.map(pe=>pe.url),subs:me,extra:{subt:Ae.url,subtitle:Ae.url,subs_urls:me.map(pe=>pe.url),subs:me}}}function B(Ee){return Kt(Array.isArray(Ee)?Ee.slice():[])}function k(Ee,me){return ic(Ee?.name,me,Ae=>Ae?.name||"")}function W(Ee,me=[]){let Ae=k(Ee,me),pe=Ae.length>0?{ss:Ae.map(Se=>({p:Se.path,n:Se.name,e:Z(Se.name)}))}:{};return T(Ee.path,Ee.name,pe)}function P(Ee,me=[]){return`${Q(Ee.name,Ee.size)}$${W(Ee,me)}`}function H(Ee,me=[]){return B(Ee).map(Ae=>`${Q(Ae.name,Ae.size)}$${W(Ae,me)}`).join("#")}function j(Ee){return Ee.split("/").filter(Boolean).pop()||"\u6839\u76EE\u5F55"}function q(Ee,me={}){let Ae=s==="/"?Ee:s+Ee;Ae.startsWith("/")||(Ae="/"+Ae);let Se=Ae.split("/").map(Le=>Le===""?"":encodeURIComponent(Le).replace(/%2F/g,"/")).join("/"),Ie=n+Se;if(me.includeCredentialsInUrl&&r.username){let Le=Ie.split("://")[0],we=Ie.split("://")[1];Ie=`${Le}://${encodeURIComponent(r.username)}:${encodeURIComponent(r.password||"")}@${we}`}return{url:Ie,headers:me.includeCredentialsInUrl?{}:D()}}async function Y(Ee,me=""){let Ae=s==="/"?Ee:s+Ee;Ae.startsWith("/")||(Ae="/"+Ae);let Se=Ae.split("/").map(Ge=>Ge===""?"":encodeURIComponent(Ge).replace(/%2F/g,"/")).join("/"),Ie=n+Se,Le=await Xe({method:"GET",url:Ie,headers:D(),responseType:"arraybuffer",transformResponse:[Ge=>Ge],maxContentLength:d,maxBodyLength:d,timeout:15e3}),we=Buffer.from(Le.data).toString("base64");return`data:${Z(me)==="vtt"?"text/vtt":"text/plain"};charset=utf-8;base64,${we}`}async function X(){try{return await K("/",{noCache:!0}),!0}catch(Ee){return console.error("WebDAV\u8FDE\u63A5\u6D4B\u8BD5\u5931\u8D25:",Ee.message),!1}}function ie(Ee){return!Ee||Ee===0?"0B":Ee<1024?Ee+"B":Ee<1024*1024?(Ee/1024).toFixed(2)+"KB":Ee<1024*1024*1024?(Ee/1024/1024).toFixed(2)+"MB":(Ee/1024/1024/1024).toFixed(2)+"GB"}function ne(Ee){if(!Ee)return"";try{let me=new Date(Ee);return me.toLocaleDateString()+" "+me.toLocaleTimeString()}catch{return Ee}}async function se(Ee,me){try{return r.server?await X()?{success:!0,name:r.name,version:f}:{success:!1,error:"\u8FDE\u63A5WebDAV\u670D\u52A1\u5668\u5931\u8D25"}:{success:!1,error:"\u670D\u52A1\u5668\u5730\u5740\u672A\u914D\u7F6E"}}catch(Ae){return{success:!1,error:Ae.message}}}async function J(Ee,me){let Ae=Yr("webdav",arguments[0]||{}),pe=Qr(Ae);if(pe)return pe;let Se={class:[{type_id:T("/"),type_name:r.name}]};return dn(Ae,Se,Tt.semiStatic),Se}async function ce(Ee,me){let Ae=Ee.body||{},pe=I(Ae.pg||Ae.page),Se=u,Ie="/";Ae.id&&(Ie=x(Ae.id).p||"/");try{let{folders:Le,files:we,videoFiles:He}=await ee(Ie),Ge=Le.slice().sort((it,yt)=>it.name.localeCompare(yt.name,"zh-CN")),ke=B(He),Qe=new Set(ke.map(it=>it.path)),It=we.filter(it=>!Qe.has(it.path)).sort((it,yt)=>it.name.localeCompare(yt.name,"zh-CN")),ze=[...Ge.map(it=>({...it,isFolder:!0}))];ke.length>1&&ze.push({isPlaylist:!0,path:Ie,name:"\u64AD\u653E\u5217\u8868",count:ke.length}),ze.push(...ke.map(it=>({...it,isFolder:!1})),...It.map(it=>({...it,isFolder:!1})));let ot=ze.length,lt=Math.ceil(ot/Se)||1,_t=(pe-1)*Se,Ht=ze.slice(_t,_t+Se).map(it=>{if(it.isPlaylist)return{vod_id:T(it.path,p,{t:`${j(it.path)} \u64AD\u653E\u5217\u8868`}),vod_name:"\u64AD\u653E\u5217\u8868",vod_pic:g,vod_remarks:`${it.count}\u4E2A\u89C6\u9891`,vod_tag:"playlist"};if(it.isFolder){let yt=T(it.path);return{vod_id:yt,type_id:yt,type_name:it.name,vod_name:`\u{1F4C1} ${it.name}`,vod_pic:m,vod_remarks:it.lastModified?ne(it.lastModified):"\u6587\u4EF6\u5939",vod_tag:"folder",cate:{id:yt,name:it.name}}}else{let yt=it.isVideo,vs=it.isSubtitle,kn=ie(it.size);return yt&&(kn="\u{1F3AC} "+kn),vs&&(kn="\u{1F4DD} "+kn),{vod_id:T(it.path,it.name,{s:it.size}),vod_name:it.name,vod_pic:yt?_:"",vod_remarks:kn,vod_tag:yt?"video":vs?"subtitle":"file"}}});return{page:pe,pagecount:lt,limit:Se,total:ot,list:Ht}}catch(Le){return console.error("WebDAV\u5206\u7C7B\u5931\u8D25:",Le.message),{page:1,pagecount:1,limit:Se,total:0,list:[],error:Le.message}}}async function ge(Ee,me){let Ae=Ee.body||{};if(!Ae.id)return{list:[]};try{let pe=x(Ae.id),Se=pe.p||"/",Ie=pe.n||"";if(Ie&&z(Ie)){let ze=Se.substring(0,Se.lastIndexOf("/"))||"/",{subtitleFiles:ot}=await ee(ze),lt={name:Ie,path:Se,size:Number(pe.s||0)},_t=P(lt,ot);return{list:[{vod_id:Ae.id,vod_name:te(Ie),vod_pic:_,vod_remarks:lt.size>0?ie(lt.size):"",vod_content:`\u5F53\u524D\u76EE\u5F55: ${ze}`,vod_play_from:r.name,vod_play_url:_t}]}}if(Ie&&oe(Ie))return{list:[{vod_id:Ae.id,vod_name:Ie,vod_pic:"",vod_remarks:"\u5B57\u5E55\u6587\u4EF6",vod_play_from:r.name,vod_play_url:`${te(Ie)}$${Ae.id}`}]};let Le=Se,{videoFiles:we,subtitleFiles:He}=await ee(Le);if(we.length===0)return{list:[],message:"\u8BE5\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let Ge=B(we),ke=H(Ge,He),Qe=Ie===p,It=Qe?pe.t||`${j(Le)} \u64AD\u653E\u5217\u8868`:j(Le);return{list:[{vod_id:Ae.id||T(Le),vod_name:It,vod_pic:Qe?g:_,vod_remarks:we.length>1?`\u5171${we.length}\u4E2A\u89C6\u9891`:"\u5355\u4E2A\u89C6\u9891",vod_content:`\u5F53\u524D\u76EE\u5F55: ${Le}`,vod_play_from:r.name,vod_play_url:ke}]}}catch(pe){return console.error("WebDAV\u8BE6\u60C5\u5931\u8D25:",pe.message),{list:[],error:pe.message}}}async function be(Ee,me){try{return await Xe({method:"HEAD",url:Ee,headers:me,maxRedirects:0,timeout:5e3}),{url:Ee,headers:me}}catch(Ae){let pe=Ae.response?.headers?.location;if(pe)return{url:pe,headers:{}}}try{return await Xe({method:"GET",url:Ee,headers:{...me,Range:"bytes=0-0"},maxRedirects:0,timeout:15e3}),{url:Ee,headers:me}}catch(Ae){let pe=Ae.response?.headers?.location;return pe?{url:pe,headers:{}}:{url:Ee,headers:me}}}async function Te(Ee,me){let Ae=Ee.body||{};if(!Ae.id)return{error:"\u7F3A\u5C11ID\u53C2\u6570"};try{let pe=x(Ae.id),Se=pe.p||"",Ie=pe.n||"";if(Ie&&oe(Ie))return{parse:0,url:await Y(Se,Ie),header:{},contentType:"text/plain; charset=utf-8"};let{url:we,headers:He}=q(Se),Ge=Ie.toLowerCase().endsWith(".m3u8"),ke=`redirect:${we}`,{url:Qe,headers:It}=await b(E,"play",ke,o,async()=>be(we,He)),ze={parse:0,url:Qe,header:It};Ge&&(ze.extra={format:"m3u8","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"});let ot=Array.isArray(pe.ss)&&pe.ss.length>0?pe.ss.map(lt=>({path:lt?.p||"",name:lt?.n||"\u5916\u6302\u5B57\u5E55",format:lt?.e||lt?.n||"srt"})).filter(lt=>lt.path):pe.sp?[{path:pe.sp,name:pe.sn||"\u5916\u6302\u5B57\u5E55",format:pe.se||pe.sn||"srt"}]:[];if(ot.length>0)try{let lt=[];for(let Ht of ot)try{let it=Z(Ht.format||Ht.name),yt=await Y(Ht.path,it);lt.push({url:yt,name:Ht.name||"\u5916\u6302\u5B57\u5E55",format:it})}catch(it){console.warn("[WebDAV\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",it.message)}let _t=de(lt),mr={...ze.extra||{},..._t.extra||{}};Object.assign(ze,_t),Object.keys(mr).length>0&&(ze.extra=mr)}catch(lt){console.warn("[WebDAV\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",lt.message)}return ze}catch(pe){return console.error("[WebDAV\u64AD\u653E] \u64AD\u653E\u5931\u8D25:",pe.message,pe.stack),{parse:0,url:"",header:{},error:"\u64AD\u653E\u5931\u8D25: "+pe.message}}}async function xe(Ee,me){let Ae=Ee.body||{},pe=(Ae.wd||"").trim(),Se=I(Ae.pg||Ae.page),Ie=l;if(!pe)return{page:1,pagecount:1,limit:Ie,total:0,list:[]};try{let Le=`search:${pe}`,we=await b(A,"search",Le,a,async()=>{let ot=`${n}${s==="/"?"":s}/SEARCH/${encodeURIComponent(pe)}`,_t=((await Xe({method:"GET",url:ot,headers:D(),timeout:3e4})).data||"").split(` -`).map(Ht=>Ht.trim()).filter(Boolean),mr=new Map;for(let Ht of _t){let it=Ht.lastIndexOf(" "),yt,vs;it!==-1?(yt=Ht.substring(0,it).trim(),vs=Number.parseInt(Ht.substring(it+1).trim(),10)||0):(yt=Ht.trim(),vs=0),yt&&(yt=M(yt),(!mr.has(yt)||vs>0)&&mr.set(yt,{filePath:yt,size:vs}))}return Array.from(mr.values())}),He=we.length,Ge=Math.ceil(He/Ie)||1,ke=(Se-1)*Ie,It=we.slice(ke,ke+Ie).map(({filePath:ze,size:ot})=>{let lt=ze.split("/").filter(Boolean).pop()||ze,_t=z(lt),mr=oe(lt),Ht=ze.endsWith("/")||ot===0&&!_t&&!mr&&!le(lt),it=T(ze,Ht?"":lt,Ht?{}:{s:ot}),yt={vod_id:it,vod_name:Ht?`\u{1F4C1} ${lt}`:lt,vod_pic:Ht?m:_t?_:"",vod_remarks:Ht?"\u6587\u4EF6\u5939":`${_t?"\u{1F3AC} ":mr?"\u{1F4DD} ":""}${ie(ot)}`,vod_tag:Ht?"folder":_t?"video":mr?"subtitle":"file"};return Ht&&(yt.type_id=it,yt.type_name=lt,yt.cate={id:it,name:lt}),yt});return{page:Se,pagecount:Ge,limit:Ie,total:He,list:It}}catch(Le){return console.error("[WebDAV\u641C\u7D22] \u5931\u8D25:",Le.message),{page:Se,pagecount:1,limit:Ie,total:0,list:[]}}}async function Fe(Ee,me){let Ae=Ee.body||{},pe={server:Ae.server||r.server,path:Ae.path||r.path,username:Ae.username||r.username,password:Ae.password||r.password},Se=L2e({...pe,id:"test"});try{let Ie=null;if(await Se.api({post(we,He){we==="/init"&&(Ie=He)}}),!Ie)throw new Error("WebDAV init route not registered");let Le=await Ie({body:{}},me);return{code:Le.success?0:500,message:Le.success?"\u8FDE\u63A5\u6210\u529F":Le.error||"\u8FDE\u63A5\u5931\u8D25"}}catch(Ie){return{code:500,message:`\u8FDE\u63A5\u5931\u8D25: ${Ie.message}`}}}return{meta:{key:`webdav_${r.id}`,name:`WebDAV ${r.name}`,type:3,version:f,author:"WebDAV\u589E\u5F3A\u7248",description:"\u652F\u6301\u65E0\u9650\u5C42\u7EA7\u6D4F\u89C8\u3001\u5B57\u5E55\u5339\u914D\u3001\u591A\u65B9\u6848\u64AD\u653E\u7684WebDAV\u9A71\u52A8\u6E90",supportSearch:!0},api:async Ee=>{Ee.post("/init",se),Ee.post("/home",J),Ee.post("/category",ce),Ee.post("/detail",ge),Ee.post("/play",Te),Ee.post("/search",xe),Ee.post("/test-connection",Fe),Ee.post("/debug",async(me,Ae)=>{try{let{path:pe="/"}=me.body||{},Se=await K(pe);return{success:!0,config:{name:r.name,server:r.server,basePath:s,hasAuth:!!r.username},currentPath:pe,totalItems:Se.length,items:Se.slice(0,10),videoCount:Se.filter(Ie=>Ie.isVideo).length,subtitleCount:Se.filter(Ie=>Ie.isSubtitle).length,folderCount:Se.filter(Ie=>Ie.isDir).length}}catch(pe){return{success:!1,error:pe.message,stack:pe.stack}}})}}}Hr();var wHt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",V1n=6e4,j1n=/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|iso)$/i,K1n="alist_tvbox",G1n="\u{1F3AC} AT",z1n=new Set(["img1.doubanio.com","img2.doubanio.com","img3.doubanio.com"]);function Y1n(e,t){return e?e.startsWith("http")?e:e.startsWith("/")?`${t}${e}`:`${t}/${e}`:""}function M2e(e,t){if(!e)return"";let r=Y1n(e,t);if(!t||!r.startsWith("http"))return r;try{let n=new URL(r);return z1n.has(n.hostname)?`${t}/images?url=${r}`:r}catch{return r}}function Q1n(e,t){if(!Array.isArray(e))return e;for(let r of e)!r||typeof r!="object"||(r.vod_pic?r.vod_pic=M2e(r.vod_pic,t):r.VodPic&&(r.VodPic=M2e(r.VodPic,t)));return e}function NHt(e){let t=e||{},r=String(t.base_url||"http://127.0.0.1:4567").replace(/\/$/,""),n=String(t.token||""),s=String(t.custom_classes||""),i=String(t.file_base_url||r.replace(/:4567(?=\/|$)/,":5678")).replace(/\/$/,""),a=`/vod1/${n}`,o=`/play/${n}`;function c(Q){return String(Q||"").replace(/\/+/g,"/")}function u(Q){let Z=c(Q);return Z.startsWith("/")?Z:`/${Z}`}function l(Q){let Z=String(Q||"");try{return decodeURIComponent(Z.replace(/\+/g,"%20"))}catch{return Z}}function d(Q){let Z=String(Q||"").trim(),de=Z.split("$");if(de.length<3){let B=l(Z);B!==Z&&(Z=B,de=Z.split("$"))}return de.length<3?null:{raw:Z,drive:de[0],path:u(l(de[1])),type:de[2],parts:de}}function f(Q){let Z=String(Q||"").trim(),de=d(Z);return!de||de.type!=="1"?Z:(de.parts[1]=de.path,de.parts.join("$")||Z)}function h(Q){return j1n.test(String(Q||"").split(/[?#]/)[0])}function p(Q){let Z=c(String(Q||"")).split("/").filter(Boolean);return Z[Z.length-1]||"\u64AD\u653E"}function m(Q){return u(Q).split("/").map(Z=>Z?encodeURIComponent(Z):"").join("/")}function _(Q){return Q?`${i}/d${m(Q)}`:""}function g(Q,Z){let de=p(Z);return{vod_id:Q,vod_name:de,vod_pic:"",vod_tag:"file",vod_remarks:"",vod_content:Z,vod_play_from:"\u4E2B\u4ED9\u5973",vod_play_url:`${de}$${_(Z)}`}}function y(Q){return!Q||typeof Q!="object"?!1:Q.vod_tag==="folder"||Q.vod_remarks==="\u6587\u4EF6\u5939"||/folder\.png(?:$|[?#])/i.test(String(Q.vod_pic||""))}function A(Q){if(!Array.isArray(Q))return Q;for(let Z of Q){if(!y(Z))continue;let de=f(Z.vod_id||Z.type_id);de&&(Z.vod_id=de,Z.type_id=de,Z.type_name=Z.type_name||"AList\u76EE\u5F55",Z.cate=Z.cate||{})}return Q}function E(Q){return Q&&Q.list&&(A(Q.list),Q1n(Q.list,r)),Q}function v(Q){return Q&&typeof Q=="object"&&!Array.isArray(Q)}function b(Q){if(!Q)return{};if(v(Q))return Q;if(typeof Q=="string")try{let Z=JSON.parse(Q);return v(Z)?Z:{}}catch{return{}}return{}}async function I(Q,Z={}){let de={};for(let[k,W]of Object.entries(Z||{}))W==null||W===""||(de[k]=W);return(await Xe.get(`${r}${Q}`,{params:de,timeout:V1n,headers:{"User-Agent":wHt}})).data}function T(){if(!s)return[];try{let Q=JSON.parse(s);return Array.isArray(Q)?Q:[]}catch{return[]}}function x(Q,Z={}){return JSON.stringify({id:String(Q||"").trim(),meta:Z&&typeof Z=="object"?Z:{}})}function w(Q){try{let Z=JSON.parse(String(Q||""));if(Z&&typeof Z=="object"&&Z.id)return Z}catch{}return{id:String(Q||"").trim(),meta:{}}}function D(Q){if(!Q)return Q;let Z=String(Q).trim().replace(/[?&]sign=(&|$)/,(de,B)=>B==="&"?"&":"");return Z=Z.replace(":5234/",":5678/"),Z}function M(Q){return/^https?:\/\//i.test(String(Q||""))}function L(Q){let Z=D(Q);if(!Z||M(Z))return Z||"";try{return new URL(Z,`${r}/`).toString()}catch{return Z}}function U(Q){if(!Q)return{};if(typeof Q=="string")try{let Z=JSON.parse(Q);return Z&&typeof Z=="object"?Z:{}}catch{return{}}return Q&&typeof Q=="object"?Q:{}}function G(Q={}){return{"User-Agent":wHt,Accept:"*/*","Accept-Encoding":"identity",Connection:"keep-alive",Referer:r,...Q}}async function $(Q,Z={}){if(!M(Q))return{ok:!0};try{let de=await Xe.get(Q,{timeout:15e3,responseType:"arraybuffer",maxRedirects:5,headers:{...Z,Range:"bytes=0-1023"},validateStatus:()=>!0}),B=String(de.headers?.["content-type"]||"").toLowerCase(),k=Number(de.status||0),W=Buffer.isBuffer(de.data)?de.data.toString("utf8",0,Math.min(de.data.length,512)):String(de.data||"").slice(0,512),P=B.includes("json")&&/"(?:code|status)"\s*:\s*(?:4|5)\d\d|require login|failed link|proxy not allowed/i.test(W),H=k===206||B.startsWith("video/")||B.includes("octet-stream")||B.includes("mpegurl")||B.includes("mp2t");return k>=200&&k<400&&H&&!P?{ok:!0,status:k,contentType:B}:k>=200&&k<400&&!P&&!B.includes("json")?{ok:!0,status:k,contentType:B}:{ok:!1,status:k,contentType:B,message:W||`HTTP ${k}`}}catch(de){return{ok:!1,message:de.message||String(de)}}}async function K(Q,Z){return{}}async function ee(Q,Z){try{let de=Q.body.page||1,B=await I(a,{ac:"list",pg:String(de)}),k=T();return k.length>0&&(B.class=k),E(B),B}catch(de){return console.error("[AListTvbox] \u9996\u9875\u83B7\u53D6\u5931\u8D25:",de.message),{class:[],list:[]}}}async function z(Q,Z){try{let de=Q.body||{},B=de.id||de.tid||"",k=de.page||1,W=b(de.extend||de.filters||de.ext),P=Object.keys(W).length>0?JSON.stringify(W):"",H=W.sort||de.sort||"";if(!B)return{page:1,pagecount:0,total:0,list:[]};if(W.dir){let q=String(B).split("$"),Y=c(String(W.dir));q.length>=3&&q[2]==="1"&&(q[1]=u(Y),B=q.join("$"))}let j=await I(a,{ac:"videolist",t:String(f(B)),f:P,sort:H,pg:String(k)});return E(j),j}catch(de){return console.error("[AListTvbox] \u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",de.message),{page:1,pagecount:0,total:0,list:[]}}}async function oe(Q,Z){try{let de=Q.body||{},B=de.wd||"",k=de.page||1;if(!B.trim())return{page:1,pagecount:0,total:0,list:[]};let W=await I(a,{ac:"detail",wd:B,pg:String(k)});return E(W),W}catch(de){return console.error("[AListTvbox] \u641C\u7D22\u5931\u8D25:",de.message),{page:1,pagecount:0,total:0,list:[]}}}async function le(Q,Z){try{let de=Q.body||{},B=w(de.id),k=f(B.id||"");if(!k)return{list:[]};let W=await I(a,{ac:"detail",ids:k});if(W&&Array.isArray(W.list)&&W.list.length===0){let P=d(k);P?.type==="1"&&h(P.path)&&(W.list=[g(k,P.path)])}if(W&&W.list){A(W.list);for(let P of W.list)if(P.vod_pic&&(P.vod_pic=M2e(P.vod_pic,r)),P.vod_play_from&&P.vod_play_url){let H=P.vod_play_url.split("$$$").map(q=>q.trim()).filter(Boolean),j=[];for(let q=0;qie.trim()).filter(Boolean),X=[];for(let ie of Y)if(ie.split("$").length>=2)X.push(ie);else if(M(ie)){let se=P.vod_name||P.name||`\u7B2C${X.length+1}\u96C6`;X.push(`${se}$${ie}`)}else X.push(ie);j.push(X.join("#"))}P.vod_play_url=j.join("$$$")}}return W||{list:[]}}catch(de){let B=Q.body||{},k=w(B.id),W=f(k.id||""),P=d(W);return P?.type==="1"&&h(P.path)?{list:[g(W,P.path)]}:(console.error("[AListTvbox] \u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",de.message),{list:[]})}}async function te(Q,Z){try{let de=Q.body||{},k=w(de.id).id||"";if(!k)return{parse:0,url:"",header:{}};if(M(k)){let X=L(k),ie=G(),ne=await $(X,ie);return ne.ok?{parse:0,url:X,header:ie}:{parse:0,url:"",header:{},msg:`AListTvbox \u8FD4\u56DE\u7684\u76F4\u94FE\u4E0D\u53EF\u64AD\u653E\uFF1A${ne.message||ne.status||"unknown"}`}}let W=d(k);if(W?.type==="1"&&h(W.path)){let X=_(W.path),ie=G(),ne=await $(X,ie);return ne.ok?{parse:0,url:X,header:ie}:{parse:0,url:"",header:{},msg:`AListTvbox \u8DEF\u5F84\u76F4\u94FE\u4E0D\u53EF\u64AD\u653E\uFF1A${ne.message||ne.status||"unknown"}`}}let P=await I(o,{id:k}),H=typeof P=="string"?P:P?.url||P?.playUrl||P?.play_url||"",j=L(H),q=G(U(P?.header));if(!j)return{parse:0,url:"",header:{},msg:P?.msg||P?.message||"AListTvbox \u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740"};let Y=await $(j,q);return Y.ok?{parse:0,url:j,header:q}:{parse:0,url:"",header:{},msg:`AListTvbox \u64AD\u653E\u5730\u5740\u4E0D\u53EF\u7528\uFF1A${Y.message||Y.status||"unknown"}`}}catch(de){return console.error("[AListTvbox] \u64AD\u653E\u5730\u5740\u83B7\u53D6\u5931\u8D25:",de.message),{parse:0,url:"",header:{}}}}return{meta:{key:K1n,name:G1n,type:3,version:"1.0.0",description:"AListTvbox",supportSearch:!0},api:async Q=>{Q.post("/init",K),Q.post("/home",ee),Q.post("/category",z),Q.post("/detail",le),Q.post("/play",te),Q.post("/search",oe)}}}function Li(e){return async()=>(await e()).default}function fZt(){return String(process.env.ONLY_SPIDER_KEYS||"").split(",").map(e=>e.trim()).filter(Boolean)}var lZt=[{match:["douban"],load:Li(()=>Promise.resolve().then(()=>(DHt(),OHt)))},{match:["zhuiju"],load:Li(()=>Promise.resolve().then(()=>(HHt(),qHt)))},{match:["zhuijujuhe"],load:Li(()=>Promise.resolve().then(()=>(iVt(),sVt)))},{match:["pansou"],load:Li(()=>Promise.resolve().then(()=>(_Vt(),gVt)))},{match:["tgsou"],load:Li(()=>Promise.resolve().then(()=>(IVt(),bVt)))},{match:["bili_all"],load:Li(()=>Promise.resolve().then(()=>(dW(),RDe)))},{match:["bili_official","bili\u5B98"],load:Li(()=>Promise.resolve().then(()=>(O7t(),N7t)))},{match:["wanoujuhe","\u73A9\u5076\u805A\u5408"],load:Li(()=>Promise.resolve().then(()=>(Mjt(),Ljt)))},{match:["sharemount"],load:Li(()=>Promise.resolve().then(()=>(qzt(),$zt)))},{match:["mycloud"],load:Li(()=>Promise.resolve().then(()=>(mYt(),pYt)))},{match:["panlian"],load:Li(()=>Promise.resolve().then(()=>(OLe(),NYt)))},{match:["filejin"],load:Li(()=>Promise.resolve().then(()=>(tX(),jLe)))},{match:["pan1"],load:async()=>(await Promise.resolve().then(()=>(TQt(),SQt))).default()},{match:["guangyaqsxy"],load:async()=>(await Promise.resolve().then(()=>(kQt(),MQt))).default()},{match:["tgchannel"],load:Li(()=>Promise.resolve().then(()=>(hWt(),fWt)))},{match:["88kanqiu"],load:Li(()=>Promise.resolve().then(()=>(IWt(),bWt)))},{match:["live"],load:Li(()=>Promise.resolve().then(()=>(OWt(),NWt)))},{match:["guazi"],load:Li(()=>Promise.resolve().then(()=>(VXt(),HXt)))},{match:["muxi"],load:Li(()=>Promise.resolve().then(()=>(bJt(),TJt)))},{match:["alist_tvbox"],load:e=>XFn(e,"alist_tvbox",NHt,"AListTvbox")},{match:["dudb"],load:Li(()=>Promise.resolve().then(()=>(tZt(),eZt)))},{match:["js"],load:Li(()=>Promise.resolve().then(()=>(nZt(),rZt)))},{match:["baseset"],load:Li(()=>Promise.resolve().then(()=>(oZt(),aZt)))},{match:["push"],load:Li(()=>Promise.resolve().then(()=>(uZt(),cZt)))}];async function QFn(e){let t=fZt(),r=t.length>0?new Set(t):null,n=r?lZt.filter(s=>s.match.some(i=>r.has(i))):lZt;return(await Promise.all(n.map(s=>s.load(e)))).filter(Boolean)}async function hZt(){return await Li(()=>Promise.resolve().then(()=>(dW(),RDe)))()}var pke="20260719",WFn={meta:{key:pke,name:pke,type:0},api:async e=>{e.get("/",async()=>({code:0,message:`This is the ${pke} spider - always last in the list`,timestamp:new Date().toISOString(),version:"1.0.0"})),e.get("/home",async()=>({code:0,list:[]})),e.get("/category",async()=>({code:0,list:[]})),e.get("/detail",async()=>({code:0,list:[]})),e.get("/play",async()=>({code:0,url:"",header:{},extra:{}})),e.get("/search",async()=>({code:0,list:[]}))},check:()=>{}};function dZt(e){return`${e}_auto_${Date.now()}_${Math.random().toString(36).slice(2)}`}async function mke(e,t,r,n){try{let s=await e.db.getObjectDefault(`/config/${t}`,[]);if(Array.isArray(s)&&s.length>0)return s.filter(a=>a&&a.enabled!==!1).map(a=>(a.id||(a.id=dZt(t)),r(a)));let i=e.config?.[t]||[];if(i.length>0){let a=i.map(o=>(o.id||(o.id=dZt(t)),o));return await e.db.push(`/config/${t}`,a),a.filter(o=>o.enabled!==!1).map(r)}}catch(s){console.error(`\u52A0\u8F7D ${n} \u914D\u7F6E\u5931\u8D25:`,s)}return[]}async function XFn(e,t,r,n){try{let s=await e.db.getObjectDefault(`/config/${t}`,null);if(Array.isArray(s)&&(s=s[0]||null,s?await e.db.push(`/config/${t}`,s):await e.db.delete(`/config/${t}`)),s&&typeof s=="object")return r(s);let i=e.config?.[t];if(i&&typeof i=="object"&&!Array.isArray(i))return await e.db.push(`/config/${t}`,i),r(i)}catch(s){console.error(`\u52A0\u8F7D ${n} \u914D\u7F6E\u5931\u8D25:`,s)}return null}async function dJ(e){let t=await QFn(e);t.push(...await mke(e,"emby",z8t,"Emby")),t.push(...await mke(e,"alist",r5t,"Alist")),t.push(...await mke(e,"webdav",L2e,"WebDAV")),(await fSe(e)).forEach(o=>t.push(vSe(o.name,o.address))),(await SSe(e)).forEach(o=>t.push(wSe(o.name,o.address))),(await wxt(e)).filter(o=>o&&o.enabled!==!1).forEach(o=>t.push(Rxe(o))),t.push(WFn);let i=fZt();if(i.length===0)return t;let a=new Set(i);return t.filter(o=>a.has(String(o?.meta?.key||"").trim()))}var fJ=async e=>(await e.db.getObjectDefault("/sites",{}))?.list||e.config.sites.list,JFn=async(e,t)=>{await e.db.push("/sites/list",t)},ZFn=async e=>{await e.db.delete("/sites/list")};async function gke(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await fJ(t.server)})}),e.put("/list",async(t,r)=>{await JFn(t.server,t.body.list),r.send({code:0})}),e.delete("/list",async(t,r)=>{await ZFn(t.server),r.send({code:0})})}var e6n="/spider";function t6n(e,t){return e<10?t.video.sites:e<20?t.read.sites:e<30?t.comic.sites:e<40?t.music.sites:e<50?t.pan.sites:null}async function pZt(e){let t={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:e.config?.color||[]};return(await dJ(e)).forEach(n=>{let s=Object.assign({},n.meta);s.api=e6n+"/"+s.key+"/"+s.type,s.key="nodejs_"+s.key;let i=t6n(n.meta.type,t);i&&i.push(s)}),t}function mZt(e,t,{includeDisabled:r}){let n={};e.forEach(a=>n[a.key]=a);let s={},i=[];return t.forEach(a=>{let o=a.key;if(s[o]=!0,!n[o])return;let c={...n[o],name:a.name||n[o].name};r?i.push({...c,enable:a.enable,t4:a.t4,cms:a.cms}):a.enable&&i.push(c)}),e.forEach(a=>{s[a.key]||(r?i.push({...a,enable:!0,t4:a.t4,cms:a.cms}):i.push(a))}),i}function _ke(e,{key:t,label:r,allowDelete:n}){e.get(`/website/${t}/config`,async s=>{try{let i=await s.server.db.getObjectDefault(`/config/${t}`,[]);return(!i||i.length===0)&&s.server.config?.[t]&&(i=s.server.config[t]),{code:0,data:i}}catch(i){return console.error(`\u83B7\u53D6 ${r} \u914D\u7F6E\u5931\u8D25:`,i),{code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"}}}),e.put(`/website/${t}/config`,async(s,i)=>{try{await s.server.db.push(`/config/${t}`,s.body),i.send({code:0,message:`${r}\u914D\u7F6E\u4FDD\u5B58\u6210\u529F`})}catch(a){i.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+a.message})}}),n&&e.delete(`/website/${t}/config`,async(s,i)=>{try{await s.server.db.delete(`/config/${t}`),i.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u914D\u7F6E"})}catch(a){i.send({code:1,message:a.message})}})}function r6n(e,{key:t,label:r}){e.get(`/website/${t}/config`,async n=>{try{let s=await n.server.db.getObjectDefault(`/config/${t}`,null);if(Array.isArray(s)&&(s=s[0]||null),!s||typeof s!="object"){let i=n.server.config?.[t];i&&typeof i=="object"&&!Array.isArray(i)?s=i:s={}}return{code:0,data:s}}catch(s){return console.error(`\u83B7\u53D6 ${r} \u914D\u7F6E\u5931\u8D25:`,s),{code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"}}}),e.put(`/website/${t}/config`,async(n,s)=>{try{let i=n.body||{},a={base_url:String(i.base_url||"").trim(),token:String(i.token||"").trim(),custom_classes:String(i.custom_classes||"").trim()};await n.server.db.push(`/config/${t}`,a),s.send({code:0,message:`${r}\u914D\u7F6E\u4FDD\u5B58\u6210\u529F`})}catch(i){s.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+i.message})}}),e.delete(`/website/${t}/config`,async(n,s)=>{try{await n.server.db.delete(`/config/${t}`),s.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u914D\u7F6E"})}catch(i){s.send({code:1,message:i.message})}})}async function Ake(e){e.get("/check",async(t,r)=>{r.send({run:!e.stop,version:"1.0.0",timestamp:new Date().toISOString()})}),e.get("/config",async(t,r)=>{try{let n=await pZt(t.server),s=await fJ(t.server);n.video.sites=mZt(n.video.sites,s,{includeDisabled:!1}),n.video.danmuSearchUrl=`http://127.0.0.1:${t.server.address().port}/website/danmu/fe`,n.video.internalDanmuUiUrl=`http://127.0.0.1:${t.server.address().port}/internal-danmu/ui`,r.send(n)}catch(n){console.error("\u83B7\u53D6\u914D\u7F6E\u5931\u8D25:",n),r.code(500).send({error:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.get("/full-config",async(t,r)=>{try{let n=await pZt(t.server),s=await fJ(t.server);n.video.sites=mZt(n.video.sites,s,{includeDisabled:!0}),r.send(n)}catch(n){console.error("\u83B7\u53D6\u5B8C\u6574\u914D\u7F6E\u5931\u8D25:",n),r.code(500).send({error:"\u83B7\u53D6\u5B8C\u6574\u914D\u7F6E\u5931\u8D25"})}}),_ke(e,{key:"emby",label:"Emby",allowDelete:!1}),_ke(e,{key:"alist",label:"Alist",allowDelete:!0}),_ke(e,{key:"webdav",label:"WebDAV",allowDelete:!0}),r6n(e,{key:"alist_tvbox",label:"AListTvbox"})}Pr();wH();function gZt(e){if(!e)return"";for(let t of[e,(()=>{try{return decodeURIComponent(e)}catch{return""}})()])if(t)try{let r=JSON.parse(t);if(r&&typeof r=="object")return r.url||r.base_url||r.baseUrl||r.backup_url?.[0]||r.backupUrl?.[0]||""}catch{}return""}async function n6n(e,t){try{let{do:r,url:n,referer:s,aid:i,cid:a,qn:o,video_url:c,audio_url:u,video_track:l,audio_track:d,mode:f,duration:h}=e.query;if(!r)return t.code(400).send("Invalid parameters");if(r==="mpd"){let p=await hZt(),m=c?decodeURIComponent(c):"",_=u?decodeURIComponent(u):"",g=gZt(l),y=gZt(d);for(let I of[m,_,g,y]){if(!I)continue;let T=await lT(I);if(!T.ok)return t.code(400).send(`Forbidden upstream: ${T.reason}`)}let{proxy:A}=p,[E,v,b]=await A({do:r,aid:i,cid:a,qn:o,video_url:m,audio_url:_,video_track:l,audio_track:d,mode:f||"dash",duration:h||0});return t.header("Content-Type",v).header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Type,Content-Length").code(E),t.send(b)}if(r==="image"){if(!n)return t.code(400).send("missing url");let p;try{p=decodeURIComponent(n)}catch{return t.code(400).send("invalid url encoding")}let m=await lT(p);if(!m.ok)return t.code(403).send(`Forbidden upstream: ${m.reason}`);let _={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Accept:"image/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};if(s)try{_.Referer=decodeURIComponent(s)}catch{}let g=await ve.get(p,{responseType:"stream",timeout:1e4,maxRedirects:3,headers:_});return g.headers["content-type"]&&t.header("Content-Type",g.headers["content-type"]),g.headers["content-length"]&&t.header("Content-Length",g.headers["content-length"]),g.headers["cache-control"]&&t.header("Cache-Control",g.headers["cache-control"]),t.send(g.data)}return t.code(400).send("Unsupported action")}catch(r){return console.error("\u4EE3\u7406\u9519\u8BEF:",r),t.code(500).send("Proxy error: "+r.message)}}async function Eke(e){e.get("/proxy",n6n)}Pr();var xc=Ne(require("fs"),1),PN=Ne(require("path"),1);Qt();Hd();g0();xm();oCe();var Jb=cx("router.danmu.video",{maxSize:100,ttl:10*60*1e3}),e1=cx("router.danmu.episodeIndex",{maxSize:1e4,ttl:10*60*1e3}),O_=new Map,s6n=8,i6n=800,a6n=400,AZt=12*1e3,vke=new Px(200),_Zt=setInterval(()=>{let e=Date.now();for(let[t,r]of O_.entries())e-(r?.createdAt||0)>AZt*5&&O_.delete(t)},30*1e3);typeof _Zt?.unref=="function"&&_Zt.unref();var Ske={detailRequests:0,playRequests:0,detailCacheStores:0,episodeMappingOverwriteCount:0,episodeIndexHitCount:0,episodeIndexMissCount:0,videoCacheHitCount:0,videoCacheMissCount:0,mappingRebuildCount:0,fallbackUsedCount:0,fallbackSuccessCount:0,fallbackFailedCount:0,danmakuInjectedCount:0,danmakuOverwriteCount:0,invalidTitleSkipCount:0,blacklistSkipCount:0,autoPushDisabledSkipCount:0,proxyRouteSkipCount:0,replySentSkipCount:0,jsonParseErrorCount:0};function ri(e,t=1){Object.prototype.hasOwnProperty.call(Ske,e)&&(Ske[e]+=t)}function jy(e){return String(e?.url||"").match(/\/spider\/([^\/]+)\/\d+\/(detail|play)/)?.[1]||"unknown"}function bke(e){return String(e?.url||"").endsWith("/detail")?"detail":String(e?.url||"").endsWith("/play")?"play":"unknown"}function EZt(e,t,r){return`${jy(e)}:${t}_${r}`}function DN(e,t=""){if(!mJ(e))return"";let r=e?.body||{};return`push:${String(r?.url||r?.vod_id||r?.id||r?.wd||t||"").trim()}`}function Tke(e,t=""){let r=`${String(e?.body?.flag||"")}_${String(e?.body?.id||"")}`,n=DN(e,t);return n?`${n}:${r}`:r}function hJ(e,t=""){let r=`${String(e?.body?.flag||"")}_${String(e?.body?.id||"")}`,n=DN(e,t);return n?`${n}:${r}`:r}function o6n(e,t=bke(e)){let r=jy(e),n=String(e?.body?.flag||""),s=String(e?.body?.id||"");return`${r}:${n}:${s}:${t}`}function c6n(e={}){vke.push({ts:new Date().toISOString(),...e})}function as(e,t={}){let r=t.phase||bke(e);c6n({traceKey:o6n(e,r),spiderKey:jy(e),flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),phase:r,status:t.status||"ok",reason:t.reason||"",...t})}function yZt(){let e=vke.recent(50),t=e.reduce((s,i)=>{let a=String(i?.status||"unknown");return s[a]=(s[a]||0)+1,s},{}),r=e.reduce((s,i)=>{let a=String(i?.reason||i?.action||"unknown");return s[a]=(s[a]||0)+1,s},{}),n=Object.entries(r).sort((s,i)=>i[1]-s[1]).slice(0,10).map(([s,i])=>({reason:s,count:i}));return{cache:{videoCacheSize:Jb.size,episodeIndexCacheSize:e1.size,autoPushContextSize:U$(),pendingAutoPushTaskCount:O_.size},counters:{...Ske},events:{totalBuffered:vke.length,recentCount:e.length,statusBuckets:t,topReasons:n},recentEvents:e}}function vZt(e=""){let t=String(e||"").trim();return t?/^(https?:\/\/|magnet:\?|ed2k:\/\/)/i.test(t)||/(?:pan\.quark\.cn|pan\.baidu\.com|aliyundrive\.com|alipan\.com|115\.com|123pan\.com|cloud\.189\.cn|drive\.uc\.cn)/i.test(t):!1}function Zb(e=""){let t=String(e||"").trim();return!!(!t||t==="undefined"||t==="null"||vZt(t))}function pJ(e=0){return new Promise(t=>setTimeout(t,e))}async function u6n({maxAttempts:e=1,initialDelayMs:t=0,intervalMs:r=0}={}){let n=null,s=0,i=Date.now();t>0&&await pJ(t);for(let a=1;a<=e;a++){s=a;try{let o=await en.getPlayInfo(),c=String(o?.title||"").trim();if(!Zb(c))return{title:c,attempts:s,durationMs:Date.now()-i};n=new Error(`empty title on attempt ${a}`)}catch(o){n=o}a0&&await pJ(r)}throw Object.assign(n||new Error("play title unavailable"),{attempts:s,durationMs:Date.now()-i})}function mJ(e){return jy(e)==="push"}function yke(e="",t=""){let r=String(e||"").trim(),n=String(t||"").trim();return!n||!r||r===n||vZt(r)?!1:bl(r)!==bl(n)}function l6n(e,t={},r=null){let n=String(e?.body?.flag||"").trim(),s=String(e?.body?.id||"").trim(),i=String(t?.flag||"").trim(),a=String(t?.id||"").trim(),o=r||lE(),c=String(o?.flag||"").trim(),u=String(o?.id||"").trim();return i&&a?i===n&&a===s:c&&u?c===n&&u===s:!1}function Da(e,t,r={}){if(!process.env.DEBUG_PUSH_DANMU)return;let n={stage:t,spiderKey:jy(e),isPushSpider:mJ(e),flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),url:String(e?.url||""),...r};De.info(`[PUSH_DANMU_TRACE] ${JSON.stringify(n)}`)}function SZt(e,t,r,n="xml"){let s=ia(n);return`http://127.0.0.1:${e}/danmu-proxy?name=${encodeURIComponent(t)}&episodeNumber=${encodeURIComponent(r)}&format=${encodeURIComponent(s)}`}function TZt(e,t,r){let n=hJ(e,t),s=bl(t);return wtt(n,{rawTitle:t,autoKey:s,episodeNumber:r.episodeNumber}),De.info(`[DanmuAutoPushFlow] \u5DF2\u4FDD\u5B58\u81EA\u52A8\u63A8\u9001\u4E0A\u4E0B\u6587: contextKey="${n}", autoKey="${s}"`),Da(e,"auto_push_context_saved",{contextKey:n,autoKey:s,rawTitle:t,episodeNumber:r?.episodeNumber||""}),{contextKey:n,autoKey:s}}function d6n(e,t="push_detail_reset"){if(jy(e)!=="push")return;let n=DN(e),s=0;for(let[o]of Jb.entries())String(o).startsWith("video_push_")&&(Jb.delete(o),s++);let i=0;for(let[o]of e1.entries())String(o).startsWith("push:")&&(e1.delete(o),i++);let a=0;for(let[o]of O_.entries())(!n||String(o||"").startsWith(n))&&(O_.delete(o),a++);Da(e,"push_state_cleared",{reason:t,pushSessionKey:n,clearedVideoCache:s,clearedEpisodeIndex:i,clearedPendingTasks:a})}function f6n(e,{episodeKey:t,vodName:r,episodeInfo:n,port:s,playContextSnapshot:i=null,danmuFormat:a="xml"}){let o=Tke(e,r),c=mJ(e),u=i?{...i}:null,l=String(u?.title||n?.name||r||"").trim(),d=Date.now(),f=`${o}:${d}:${Math.random().toString(36).slice(2,8)}`;Da(e,"deferred_schedule_enter",{taskKey:o,taskToken:f,episodeKey:t,pushSessionKey:DN(e,r),autoPushContextKey:hJ(e,r),vodName:r,episodeName:n?.episodeName||"",episodeNumber:n?.episodeNumber||"",port:s,snapshotTitle:l,snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||"")}),O_.set(o,{token:f,createdAt:d,episodeKey:t,vodName:r});let h=()=>{let m=O_.get(o);return!m||m.token!==f||Date.now()-d>AZt},p=(async()=>{ri("fallbackUsedCount");try{let m="",_=null,g="",y=s6n,A=i6n,E=a6n;A>0&&await pJ(A);for(let T=1;T<=y;T++){if(h()){as(e,{action:"deferred_push_cancelled",status:"skip",reason:"task_replaced_or_expired",episodeKey:t,vodName:r,taskKey:o,taskToken:f,attempt:T});return}try{let x=await en.getPlayInfo(),w=String(x?.title||"").trim(),D=l6n(e,x,u),M=lE();if(Da(e,"deferred_getPlayInfo_candidate",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,candidateTitle:w,snapshotTitle:l,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),playInfoMatched:D,localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),localEpisodeKey:String(M?.episodeKey||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||"")}),!Zb(w))if(c&&!D){if(!Zb(l)&&!yke(r,l)){m=l,_={attempts:T,durationMs:A+Math.max(0,T-1)*E},g="snapshot_title_on_playinfo_mismatch",Da(e,"deferred_getPlayInfo_accept",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,acceptedTitle:m,acceptReason:g,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l});break}Da(e,"deferred_getPlayInfo_reject_stale",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,candidateTitle:w,rejectReason:"playinfo_mismatch",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l}),as(e,{action:"deferred_push_reject_stale_title",status:"skip",reason:"playinfo_mismatch",episodeKey:t,vodName:r,taskKey:o,rawTitle:w,finalTitle:w,fallbackUsed:!0,fallbackAttempts:T})}else if(c&&yke(r,w)){if(!Zb(l)&&!yke(r,l)){m=l,_={attempts:T,durationMs:A+Math.max(0,T-1)*E},g="snapshot_title_on_stale_playinfo",Da(e,"deferred_getPlayInfo_accept",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,acceptedTitle:m,acceptReason:g,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l});break}Da(e,"deferred_getPlayInfo_reject_stale",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,candidateTitle:w,rejectReason:"stale_title",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l}),as(e,{action:"deferred_push_reject_stale_title",status:"skip",reason:"stale_title",episodeKey:t,vodName:r,taskKey:o,rawTitle:w,finalTitle:w,fallbackUsed:!0,fallbackAttempts:T})}else{let L=lE();m=w||String(L?.title||"").trim(),_={attempts:T,durationMs:A+Math.max(0,T-1)*E},g=w?"playInfo_title":"local_context_title",Da(e,"deferred_getPlayInfo_accept",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,acceptedTitle:m,acceptReason:g,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(L||{}),localFlag:String(L?.flag||""),localId:String(L?.id||""),localTitle:String(L?.title||"")});break}}catch(x){let w=lE();Da(e,"deferred_getPlayInfo_error",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),localContextRaw:JSON.stringify(w||{}),localFlag:String(w?.flag||""),localId:String(w?.id||""),localTitle:String(w?.title||""),error:x?.message||String(x||"")})}T0&&await pJ(E)}if(!m){let T=lE();throw Da(e,"deferred_getPlayInfo_exhausted",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",maxAttempts:y,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),localContextRaw:JSON.stringify(T||{}),localFlag:String(T?.flag||""),localId:String(T?.id||""),localTitle:String(T?.title||""),exhaustedReason:"no_acceptable_title_after_max_attempts"}),Object.assign(new Error(`empty title on attempt ${y}`),{attempts:y,durationMs:A+Math.max(0,y-1)*E})}if(h()){as(e,{action:"deferred_push_cancelled",status:"skip",reason:"task_replaced_before_push",episodeKey:t,vodName:r,taskKey:o,taskToken:f});return}let v=String(m||"").trim();n.name=v;let b=SZt(s,v,n.episodeNumber,a);Da(e,"deferred_push_ready",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",finalName:v,acceptedSource:g,danmuProxyUrl:b,danmuFormat:a}),await en.pushDanmu(b),ri("fallbackSuccessCount");let{autoKey:I}=TZt(e,v,n);De.info(`[DanmuAutoPushFlow] \u540E\u53F0\u8865\u63A8\u5F39\u5E55\u6210\u529F: vodName="${r}", rawTitle="${v}", episodeNumber="${n.episodeNumber}", format="${a}", taskKey="${o}", danmuProxyUrl="${b}"`),as(e,{action:"deferred_push_success",reason:"deferred_push_success",episodeKey:t,vodName:r,rawTitle:v,finalTitle:v,episodeNumber:n.episodeNumber,autoKey:I,taskKey:o,danmuProxyUrl:b,acceptedSource:g,fallbackUsed:!0,fallbackAttempts:_?.attempts||0,fallbackDurationMs:_?.durationMs||0})}catch(m){ri("fallbackFailedCount"),De.error("[AutoPush] \u540E\u53F0\u8865\u63A8\u83B7\u53D6\u6807\u9898\u5931\u8D25:",m.message),as(e,{action:"deferred_push_failed",status:"error",reason:"deferred_push_failed",episodeKey:t,vodName:r,error:m.message,taskKey:o,fallbackUsed:!0,fallbackAttempts:m.attempts||0,fallbackDurationMs:m.durationMs||0,fallbackError:m.message})}finally{O_.get(o)?.token===f&&O_.delete(o)}})();as(e,{action:"deferred_push_scheduled",reason:"deferred_push_scheduled",episodeKey:t,vodName:r,taskKey:o,taskToken:f,episodeNumber:n.episodeNumber})}function h6n(e,t){let r;try{r=JSON.parse(t)}catch(u){return ri("jsonParseErrorCount"),as(e,{action:"detail_skip_json_parse_failed",status:"error",reason:"json_parse_failed",error:u.message}),t}let n=r.list?.[0];if(!n)return as(e,{action:"detail_skip_missing_vodInfo",status:"skip",reason:"missing_vodInfo"}),t;if(!n.vod_play_from||!n.vod_play_url)return as(e,{action:"detail_skip_missing_play_fields",status:"skip",reason:"missing_play_fields",vodName:n.vod_name}),t;let s=n.vod_name,i=jy(e);i==="push"&&d6n(e,"push_detail_enter"),Da(e,"detail_enter",{vodName:s,playFrom:String(n.vod_play_from||""),playUrlPreview:String(n.vod_play_url||"").slice(0,300)});let a=`video_${i}_${s}`,o=new Map,c=n.vod_play_from.split("$$$")||[];return n.vod_play_url.split("$$$").filter(Boolean).forEach((u,l)=>{u.split("#").forEach(d=>{let[f,h]=d.split("$"),p=EZt(e,c[l],h),m=e1.get(p);m&&m!==s&&(ri("episodeMappingOverwriteCount"),De.info(`[DanmuAutoPushFlow] \u8986\u76D6\u65E7\u5267\u96C6\u6620\u5C04: episodeKey="${p}", from="${m}", to="${s}"`),as(e,{action:"episode_mapping_overwrite",reason:"mapping_overwrite",episodeKey:p,vodName:s,previousVodName:m,videoCacheKey:a,mappingOverwrite:!0})),o.set(p,{name:s,episodeNumber:lR(f),episodeName:f}),Da(e,"detail_episode_mapped",{vodName:s,episodeKey:p,line:c[l],episodeName:f,episodeNumber:lR(f),rawId:h}),e1.set(p,s)})}),Jb.set(a,o),ri("detailCacheStores"),De.info(`[DanmuAutoPushFlow] \u5DF2\u7F13\u5B58\u8BE6\u60C5\u5267\u96C6\u6620\u5C04: spiderKey="${i}", vodName="${s}", episodeCount=${o.size}`),as(e,{action:"detail_cache_store",reason:"detail_cache_store",vodName:s,videoCacheKey:a,episodeCount:o.size}),t}async function p6n(e,t,r="xml"){let n;try{n=JSON.parse(t)}catch(_){return ri("jsonParseErrorCount"),as(e,{action:"play_skip_json_parse_failed",status:"error",reason:"json_parse_failed",error:_.message}),t}if(!(n.url||n.url?.length||n.urls?.length))return as(e,{action:"play_skip_no_media_url",status:"skip",reason:"no_media_url"}),t;let s=EZt(e,e.body.flag,e.body.id),i=e1.get(s),a=jy(e);if(Da(e,"play_enter",{episodeKey:s,taskKey:Tke(e,i||""),pushSessionKey:DN(e,i||""),autoPushContextKey:hJ(e,i||""),initialVodName:i||"",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||"")}),i){ri("episodeIndexHitCount");let _=Jb.get(`video_${a}_${i}`);_?.has(s)&&ri("videoCacheHitCount"),_?.has(s)||(De.warn(`[AutoPush] \u53D1\u73B0\u5931\u6548\u5267\u96C6\u6620\u5C04\uFF0C\u51C6\u5907\u91CD\u67E5: episodeKey=${s}, vodName=${i}`),i=null)}else ri("episodeIndexMissCount");if(!i){let _=!1;for(let[g,y]of Jb.entries())if(String(g).startsWith(`video_${a}_`)&&y.has(s)){i=String(g).slice(`video_${a}_`.length),e1.set(s,i),_=!0,ri("mappingRebuildCount"),ri("videoCacheHitCount"),De.info(`[DanmuAutoPushFlow] \u901A\u8FC7\u89C6\u9891\u7F13\u5B58\u91CD\u5EFA\u5267\u96C6\u6620\u5C04: episodeKey="${s}", vodName="${i}"`),as(e,{action:"episode_mapping_rebuild",reason:"mapping_rebuild",episodeKey:s,vodName:i,videoCacheKey:g,mappingRebuilt:!0});break}_||ri("videoCacheMissCount")}if(!i)return De.warn(`[AutoPush] \u672A\u627E\u5230 vodName: episodeKey=${s}`),as(e,{action:"play_skip_missing_vodName",status:"skip",reason:"missing_vodName",episodeKey:s}),t;let o=`video_${a}_${i}`,c=Jb.get(o);if(!c)return ri("videoCacheMissCount"),De.warn(`[AutoPush] \u89C6\u9891\u7F13\u5B58\u7F3A\u5931: vodName=${i}, videoCacheKey=${o}`),as(e,{action:"play_skip_missing_videoCache",status:"skip",reason:"missing_videoCache",episodeKey:s,vodName:i,videoCacheKey:o}),t;let u=c.get(s);if(!u)return De.warn(`[AutoPush] \u672A\u627E\u5230 episodeInfo: episodeKey=${s}, vodName=${i}`),as(e,{action:"play_skip_missing_episodeInfo",status:"skip",reason:"missing_episodeInfo",episodeKey:s,vodName:i}),t;Da(e,"play_episode_resolved",{episodeKey:s,vodName:i,episodeName:u?.episodeName||"",episodeNumber:u?.episodeNumber||"",cachedName:u?.name||""});let l=txt({spiderKey:a,flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),episodeKey:s,vodName:String(i||""),episodeName:String(u?.episodeName||""),episodeNumber:String(u?.episodeNumber||""),title:String(u?.name||i||"")});Da(e,"play_context_updated",{episodeKey:s,taskKey:Tke(e,i||""),pushSessionKey:DN(e,i||""),autoPushContextKey:hJ(e,i||""),vodName:i,localFlag:String(e?.body?.flag||""),localId:String(e?.body?.id||""),localTitle:String(u?.name||i||"")});let d=String(u.name||"").trim(),f=mJ(e);if(!f&&Zb(d)){ri("fallbackUsedCount");try{let _=await u6n();Zb(_.title)||(d=_.title,u.name=_.title,ri("fallbackSuccessCount"),as(e,{action:"title_fallback_success",reason:"fallback_success",episodeKey:s,vodName:i,rawTitle:_.title,finalTitle:_.title,fallbackUsed:!0,fallbackAttempts:_.attempts,fallbackDurationMs:_.durationMs}))}catch(_){ri("fallbackFailedCount"),De.error("[AutoPush] getPlayInfo \u83B7\u53D6\u6807\u9898\u5931\u8D25:",_.message),as(e,{action:"title_fallback_failed",status:"error",reason:"fallback_failed",episodeKey:s,vodName:i,error:_.message,fallbackUsed:!0,fallbackAttempts:_.attempts||0,fallbackDurationMs:_.durationMs||0,fallbackError:_.message})}}if(f||Zb(d)){if(n.extra||(n.extra={}),f){Da(e,"push_clear_stale_danmaku",{episodeKey:s,vodName:i,oldDanmaku:String(n.extra.danmaku||"")});try{await en.clearDanmu()}catch{}n.extra.danmaku=""}return ri("invalidTitleSkipCount"),f6n(e,{episodeKey:s,vodName:i,episodeInfo:u,port:e.server.address().port,playContextSnapshot:l,danmuFormat:r}),as(e,{action:"play_deferred_push_pending_title",status:"skip",reason:f?"push_deferred_only":"invalid_title_deferred",episodeKey:s,vodName:i,rawTitle:d}),t}n.extra||(n.extra={}),n.extra.danmaku&&(ri("danmakuOverwriteCount"),De.info(`[DanmuAutoPushFlow] \u8986\u76D6\u5DF2\u6709 danmaku: episodeKey="${s}", old="${n.extra.danmaku}"`),as(e,{action:"danmaku_overwrite",reason:"danmaku_overwrite",episodeKey:s,vodName:i,oldDanmaku:n.extra.danmaku,overwroteExistingDanmaku:!0}));let h=e.server.address().port,p=SZt(h,d,u.episodeNumber,r);De.info(`[DanmuAutoPushFlow] \u6CE8\u5165\u5F39\u5E55\u4EE3\u7406: vodName="${i}", rawTitle="${d}", episodeNumber="${u.episodeNumber}", format="${r}", flag="${e.body.flag}", id="${e.body.id}", danmuProxyUrl="${p}"`),n.extra.danmaku=p;let{autoKey:m}=TZt(e,d,u);return as(e,{action:"danmaku_injected",reason:"danmaku_injected",episodeKey:s,vodName:i,rawTitle:d,finalTitle:d,episodeNumber:u.episodeNumber,autoKey:m,danmuProxyUrl:p}),JSON.stringify(n)}function Ike(e){e.addHook("onSend",async(t,r,n)=>{try{if(Da(t,"hook_enter",{replySent:!!r?.sent,payloadType:typeof n}),!t.url.includes("/spider/"))return as(t,{action:"hook_skip_non_spider",phase:"unknown",status:"skip",reason:"non_spider_route"}),n;if(t.url.includes("/proxy/"))return ri("proxyRouteSkipCount"),as(t,{action:"hook_skip_proxy_route",status:"skip",reason:"proxy_route"}),n;if(r.sent)return ri("replySentSkipCount"),as(t,{action:"hook_skip_reply_sent",status:"skip",reason:"reply_sent"}),n;let s=bke(t);s==="detail"&&ri("detailRequests"),s==="play"&&ri("playRequests");let i=await bh(t.server);if(!i||!i.autoPush)return ri("autoPushDisabledSkipCount"),as(t,{action:"hook_skip_autoPush_disabled",status:"skip",reason:"autoPush_disabled"}),n;let a=ia(i.format),o=i.autoPushBlacklist||[],c=t.url.match(/\/spider\/([^\/]+)\/\d+\/(detail|play)/);if(c&&o.includes(c[1]))return ri("blacklistSkipCount"),as(t,{action:"hook_skip_blacklisted",status:"skip",reason:"blacklisted"}),n;if(t.url.endsWith("/detail"))return h6n(t,n);if(t.url.endsWith("/play"))return await p6n(t,n,a)}catch(s){as(t,{action:"hook_error",status:"error",reason:"hook_error",error:s.message}),De.error(s)}return n})}var IZt="127.0.0.1",RZt=9321,m6n="87654321",bZt=PN.default.resolve(process.cwd(),"runtime","danmu_api","run","danmu_api.status.json"),CZt=new Set(["LOCALCACHEVALID","REDISVALID","LOCALREDISVALID","AIVALID"]),xZt=new Set(["DEPLOYPLATFORM"]),g6n=new Set([...CZt,...xZt]),_6n={LOCALCACHEVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u672C\u5730\u7F13\u5B58\u53EF\u7528\u6027\u7531\u8FD0\u884C\u65F6\u81EA\u52A8\u63A2\u6D4B\u3002",REDISVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 UPSTASH_REDIS_REST_URL / UPSTASH_REDIS_REST_TOKEN \u6765\u5F71\u54CD Redis \u8FDE\u901A\u6027\u3002",LOCALREDISVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 LOCAL_REDIS_URL \u6765\u5F71\u54CD\u672C\u5730 Redis \u8FDE\u901A\u6027\u3002",AIVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 AI_BASE_URL / AI_MODEL / AI_API_KEY \u540E\u7531\u8FD0\u884C\u65F6\u81EA\u52A8\u9A8C\u8BC1\u3002",DEPLOYPLATFORM:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u5F53\u524D\u503C\u7531\u90E8\u7F72\u73AF\u5883\u51B3\u5B9A\u3002"},A6n=new Set(["PROXY_URL","TMDB_API_KEY","AI_API_KEY","UPSTASH_REDIS_REST_URL","UPSTASH_REDIS_REST_TOKEN","LOCAL_REDIS_URL","DEPLOY_PLATFROM_ACCOUNT","DEPLOY_PLATFROM_PROJECT","DEPLOY_PLATFROM_TOKEN","TOKEN","ADMIN_TOKEN"]);function gJ(e){let t=e?.config||{},r=t.danmuBuiltin?.host||IZt,n=t.danmuBuiltin?.port||RZt;return`http://${r}:${n}`}function E6n(e){return(e?.config||{}).danmuBuiltin?.host||IZt}function y6n(e){return(e?.config||{}).danmuBuiltin?.port||RZt}function Vp(e){return(e?.config||{}).danmuBuiltin?.token||m6n}function wZt(e,t=""){let r=gJ(e),n=Vp(e),s=String(t||"").startsWith("/")?t:`/${t}`;return`${r}/${n}${s}`}var v6n=/^[A-Za-z_][A-Za-z0-9_]*$/;function xke(e){return typeof e=="string"&&v6n.test(e)}function S6n(){let e=PN.default.dirname(resolveInternalDanmuOverridesPath());return xc.default.existsSync(e)||xc.default.mkdirSync(e,{recursive:!0}),e}async function gU(){let e=globalThis.__internalDanmuOverrideDb;if(e&&typeof e.getObjectDefault=="function")try{let r=await e.getObjectDefault("/internalDanmu/overrides",{});return r&&typeof r=="object"?r:{}}catch{return{}}let t=resolveInternalDanmuOverridesPath();if(!xc.default.existsSync(t))return{};try{let r=xc.default.readFileSync(t,"utf8");return r.trim()?JSON.parse(r):{}}catch{return{}}}async function NZt(e){let t=globalThis.__internalDanmuOverrideDb;if(t&&typeof t.push=="function")return await t.push("/internalDanmu/overrides",e,!0),"db:/internalDanmu/overrides";S6n();let r=resolveInternalDanmuOverridesPath();return xc.default.writeFileSync(r,JSON.stringify(e,null,2),"utf8"),r}function T6n(e){if(typeof e!="string")return e;let t=e.trim();if(!t)return e;if(t.startsWith("[")&&t.endsWith("]")||t.startsWith("{")&&t.endsWith("}"))try{return JSON.parse(t)}catch{return e}return t==="true"?!0:t==="false"?!1:/^-?\d+(\.\d+)?$/.test(t)?Number(t):e}function Nke(e){return e==null||e===""?"":Array.isArray(e)?e.join(","):typeof e=="object"?JSON.stringify(e):String(e)}function b6n(e){let t={};if(!e||!xc.default.existsSync(e))return t;let r=xc.default.readFileSync(e,"utf8");for(let n of r.split(/\r?\n/)){let s=n.trim();if(!s||s.startsWith("#"))continue;let i=s.indexOf("=");i!==-1&&(t[s.slice(0,i).trim()]=s.slice(i+1))}return t}function wke(e,t,r){if(!e||!t)return!1;let n=PN.default.dirname(e);xc.default.existsSync(n)||xc.default.mkdirSync(n,{recursive:!0}),xc.default.existsSync(e)||xc.default.writeFileSync(e,"","utf8");let i=xc.default.readFileSync(e,"utf8").split(/\r?\n/),a=r==null||r==="",o=Nke(r),c=!1,u=[];for(let l of i){let d=l.trim();if(!d||d.startsWith("#")){u.push(l);continue}let f=d.match(/^([^=]+)=/);if(f&&f[1].trim()===t){c=!0,a||u.push(`${t}=${o}`);continue}u.push(l)}return!a&&!c&&(u.length&&u[u.length-1]!==""&&u.push(""),u.push(`${t}=${o}`)),xc.default.writeFileSync(e,u.join(` -`),"utf8"),!0}function I6n(){try{if(!xc.default.existsSync(bZt))return null;let e=xc.default.readFileSync(bZt,"utf8"),t=e.trim()?JSON.parse(e):null;return t&&typeof t=="object"?t:null}catch{return null}}function Oke(){let e=PN.default.resolve(process.cwd(),"runtime","danmu_api","config",".env"),t=I6n(),r=typeof t?.envPath=="string"?t.envPath.trim():"";return r&&PN.default.resolve(r)===e?r:e}async function R6n(e){try{let t=Oke(),r=b6n(t),n=new Set(Object.keys(e||{}));for(let i of n)xke(i)&&wke(t,i,e[i]);let s=globalThis.__internalDanmuLastOverrides;if(s&&typeof s=="object")for(let i of Object.keys(s))n.has(i)||Object.prototype.hasOwnProperty.call(r||{},i)&&xke(i)&&wke(t,i,"");return globalThis.__internalDanmuLastOverrides={...e||{}},globalThis.__internalDanmuRuntimeEnvPath=t,t}catch{return null}}async function C6n(e,t,r,n="set"){if(!e||!t)return{ok:!1,skipped:!0,reason:"missing_server_or_key"};let s=n==="del"?"/api/env/del":n==="add"?"/api/env/add":"/api/env/set",i=n==="del"?{key:t}:{key:t,value:Nke(r)};try{let a=await ve({url:wZt(e,s),method:"POST",data:i,responseType:"json",validateStatus:()=>!0,headers:{"content-type":"application/json"},timeout:8e3});return{ok:a.status>=200&&a.status<300&&a.data?.success!==!1,status:a.status,data:a.data}}catch(a){return{ok:!1,error:a}}}async function x6n(e){if(!e)return{ok:!1,skipped:!0,reason:"missing_server"};try{let t=await ve({url:wZt(e,"/api/cache/clear"),method:"POST",data:{},responseType:"json",validateStatus:()=>!0,headers:{"content-type":"application/json"},timeout:8e3});return{ok:t.status>=200&&t.status<300&&t.data?.success!==!1,status:t.status,data:t.data}}catch(t){return{ok:!1,error:t}}}async function _J(){let e=await gU(),t={...Ws.env||{}};for(let[r,n]of Object.entries(e))if(!Dke(r)){if(n==null||n===""){delete t[r];continue}t[r]=Nke(n)}return Ws.env=t,globalThis.__internalDanmuOverrides=e,await R6n(e),Ws.reInit()}async function w6n(e){let t=await gU();if(!e||typeof e!="object"||!Object.keys(t).length)return e;let r={...e};r.envs={...e.envs||{}},r.originalEnvVars={...e.originalEnvVars||{}},r.categorizedEnvVars={...e.categorizedEnvVars||{}};for(let[n,s]of Object.entries(t))if(!Dke(n)){r.envs[n]=s,r.originalEnvVars[n]=s;for(let i of Object.keys(r.categorizedEnvVars)){let a=Array.isArray(r.categorizedEnvVars[i])?r.categorizedEnvVars[i]:[];r.categorizedEnvVars[i]=a.map(o=>o&&o.key===n?{...o,value:s}:o)}}return r}function N6n(){let e=globalThis.__internalDanmuOverrideDb;return e&&typeof e.getObjectDefault=="function"?"db:/internalDanmu/overrides":resolveInternalDanmuOverridesPath()}function O6n(){return globalThis.__internalDanmuRuntimeEnvPath||Oke()}var D6n=new Set(["DANMU_OUTPUT_FORMAT","CONVERT_COLOR","COLOR_POOL","CONVERT_TOP_BOTTOM_TO_SCROLL","DANMU_SIMPLIFIED_TRADITIONAL","DANMU_LIMIT","GROUP_MINUTE","DANMU_OFFSET","LIKE_SWITCH","COMMENT_CACHE_MINUTES","SEARCH_CACHE_MINUTES"]);function P6n(e=""){let t=[];return Ws.searchCache instanceof Map&&(Ws.searchCache=new Map,t.push("searchCache")),Ws.commentCache instanceof Map&&(Ws.commentCache=new Map,t.push("commentCache")),Ws.lastSelectMap instanceof Map&&(Ws.lastSelectMap=new Map,t.push("lastSelectMap")),Ws.requestHistory instanceof Map&&(Ws.requestHistory=new Map,t.push("requestHistory")),t.length&&console.log("[InternalDanmuRoute] cleared runtime caches after env change",{reasonKey:e,cleared:t}),t}function L6n(e){let t=String(e||"").trim().toUpperCase();return!t||!D6n.has(t)?[]:P6n(t)}async function M6n(e){let t=yZt(),r=await gU(),n=await bh(e).catch(()=>null),s={autoPushEnabled:!!(n&&n.autoPush),autoPushBlacklistSize:Array.isArray(n?.autoPushBlacklist)?n.autoPushBlacklist.length:0,internalDanmuHost:E6n(e),internalDanmuPort:y6n(e),internalDanmuOverrideCount:Object.keys(r||{}).length,internalDanmuOverridesStore:N6n(),internalDanmuRuntimeEnvStore:O6n()},i=t?.counters||{},a=t?.cache||{},o=t?.events||{},c=[],u=[];return(i.fallbackFailedCount||0)>0&&(c.push("fallback_failed_detected"),u.push({code:"fallback_failed_detected",severity:"warn",value:i.fallbackFailedCount||0})),(i.jsonParseErrorCount||0)>0&&(c.push("json_parse_errors_detected"),u.push({code:"json_parse_errors_detected",severity:"warn",value:i.jsonParseErrorCount||0})),(i.videoCacheMissCount||0)>(i.videoCacheHitCount||0)&&(i.videoCacheMissCount||0)>3&&(c.push("video_cache_miss_high"),u.push({code:"video_cache_miss_high",severity:"warn",value:i.videoCacheMissCount||0})),(i.episodeIndexMissCount||0)>(i.episodeIndexHitCount||0)&&(i.episodeIndexMissCount||0)>3&&(c.push("episode_index_miss_high"),u.push({code:"episode_index_miss_high",severity:"warn",value:i.episodeIndexMissCount||0})),s.internalDanmuOverrideCount>20&&(c.push("override_count_high"),u.push({code:"override_count_high",severity:"warn",value:s.internalDanmuOverrideCount})),(a.pendingAutoPushTaskCount||0)>5&&(c.push("pending_autopush_tasks_high"),u.push({code:"pending_autopush_tasks_high",severity:"warn",value:a.pendingAutoPushTaskCount||0})),(i.invalidTitleSkipCount||0)>3&&u.push({code:"invalid_title_skip_present",severity:"info",value:i.invalidTitleSkipCount||0}),(i.blacklistSkipCount||0)>0&&u.push({code:"blacklist_skip_present",severity:"info",value:i.blacklistSkipCount||0}),(o.recentCount||0)===0&&u.push({code:"no_recent_events",severity:"info",value:0}),{version:2,enhancer:t,config:s,summary:{requests:{detail:i.detailRequests||0,play:i.playRequests||0},injection:{injected:i.danmakuInjectedCount||0,overwritten:i.danmakuOverwriteCount||0,invalidTitleSkipped:i.invalidTitleSkipCount||0},fallback:{used:i.fallbackUsedCount||0,success:i.fallbackSuccessCount||0,failed:i.fallbackFailedCount||0},cache:a,events:o},health:{status:c.length?"warn":"ok",warnings:c,findings:u}}}async function k6n(e,t){let r=await gU();r[e]=T6n(t);let n=await NZt(r);return await _J(),n}async function B6n(e){let t=await gU();delete t[e];let r=await NZt(t);try{let n=Oke();wke(n,e,""),globalThis.__internalDanmuRuntimeEnvPath=n}catch{}return Ws.env&&typeof Ws.env=="object"&&delete Ws.env[e],await _J(),r}async function Rke(e,t,r){try{let n=e.body||{},s=n.key,i=n.value;if(!s)return t.code(400).send({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"});if(!xke(s))return t.code(400).send({success:!1,message:`\u975E\u6CD5\u73AF\u5883\u53D8\u91CF\u540D\u79F0: ${s}\uFF08\u4EC5\u5141\u8BB8\u5B57\u6BCD/\u6570\u5B57/\u4E0B\u5212\u7EBF\uFF0C\u4E14\u4E0D\u4EE5\u6570\u5B57\u5F00\u5934\uFF09`});if(r!=="del"&&Dke(s))return t.code(400).send({success:!1,readonly:!0,message:$6n(s),key:s});let a=r==="del"?await B6n(s):await k6n(s,i),o=L6n(s),c=await C6n(e.server,s,i,r),u=null;o.length&&(u=await x6n(e.server));let l;if(r==="del")try{l={ok:!0,currentValue:(await OZt(e.server))?.envs?.[s]}}catch(d){l={ok:!1,currentValue:void 0,error:d}}else l=await H6n(e.server,s,i);if(!l.ok){let d=l.reason==="derived_runtime_state"?"\uFF08\u8BE5\u5B57\u6BB5\u5C5E\u4E8E\u8FD0\u884C\u6001\u6D3E\u751F\u72B6\u6001\uFF0Craw config \u4E0D\u4FDD\u8BC1\u76F4\u63A5\u7B49\u4E8E\u8F93\u5165\u503C\uFF09":"";return t.code(202).send({success:!1,pending:!0,message:`\u73AF\u5883\u53D8\u91CF ${s} \u5DF2\u5199\u5165 overrides\uFF0C\u4F46 danmu_api \u8FD0\u884C\u65F6\u5C1A\u672A\u5B8C\u6210\u5237\u65B0${d}`,filePath:a,expectedValue:r==="del"?"":i,currentLiveValue:l.currentValue,liveCheckError:l.error?.message||"",clearedCaches:o,livePush:c,liveCacheClear:u,liveCheckReason:l.reason||""})}return t.send({success:!0,message:r==="del"?`\u73AF\u5883\u53D8\u91CF ${s} \u5220\u9664\u6210\u529F\u5E76\u5DF2\u5B9E\u65F6\u751F\u6548`:`\u73AF\u5883\u53D8\u91CF ${s} ${r==="add"?"\u6DFB\u52A0":"\u8BBE\u7F6E"}\u6210\u529F\u5E76\u5DF2\u5B9E\u65F6\u751F\u6548`,filePath:a,currentLiveValue:l.currentValue,clearedCaches:o,livePush:c,liveCacheClear:u,liveCheckReason:l.reason||""})}catch(n){return t.code(500).send({success:!1,message:`\u73AF\u5883\u53D8\u91CF${r==="del"?"\u5220\u9664":r==="add"?"\u6DFB\u52A0":"\u8BBE\u7F6E"}\u5931\u8D25: ${n.message}`})}}async function mU(e,t){let r=gJ(e.server),n=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"",s=`${r}${t}${n}`,i=e.method||"GET";return await ve({url:s,method:i,data:["GET","HEAD"].includes(i.toUpperCase())?void 0:e.body,responseType:"text",transformResponse:[o=>o],validateStatus:()=>!0,headers:{...e.headers,host:void 0,connection:void 0,"content-length":void 0},timeout:3e4})}async function OZt(e){let t=gJ(e),r=Vp(e),n=await ve({url:`${t}/${r}/api/config`,method:"GET",responseType:"json",validateStatus:()=>!0,timeout:5e3});if(n.status!==200||!n.data||typeof n.data!="object")throw new Error(`\u8BFB\u53D6 danmu live config \u5931\u8D25: HTTP ${n.status}`);return n.data}function _U(e){return String(e||"").trim().toUpperCase()}function U6n(e){return typeof e=="string"&&e.length>0&&/^\*+$/.test(e)}function F6n(e){return A6n.has(_U(e))}function DZt(e){return CZt.has(_U(e))}function PZt(e){return xZt.has(_U(e))}function Dke(e){return g6n.has(_U(e))}function $6n(e){return _6n[_U(e)]||"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\u3002"}function q6n(e,t,r){return t==null||t===""?r==null||r==="":F6n(e)&&U6n(r)?!0:DZt(e)||PZt(e)?!1:String(r)===String(t)}async function H6n(e,t,r,{timeoutMs:n=4e3,intervalMs:s=150}={}){let i=Date.now()+n,a,o=null;for(;Date.now()setTimeout(c,s))}return{ok:!1,currentValue:a,error:o}}async function Cke(e,t,r){try{let n=gJ(e.server),s=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"",i=`${n}${r}${s}`,a=e.method||"GET",o=a.toUpperCase(),c=!["GET","HEAD"].includes(o),u=c&&e.body!==void 0&&e.body!==null&&!(typeof e.body=="string"&&e.body.length===0),l={};for(let[f,h]of Object.entries(e.headers||{})){let p=String(f).toLowerCase();["host","connection","content-length","accept-encoding","content-type"].includes(p)||h!==void 0&&(l[f]=h)}(u||c)&&(l["content-type"]="application/json");let d=await ve({url:i,method:a,data:c?u?e.body:{}:void 0,responseType:"arraybuffer",validateStatus:()=>!0,headers:l,timeout:3e4});return t.code(d.status),Object.entries(d.headers||{}).forEach(([f,h])=>{if(h===void 0)return;let p=String(f).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(p)||t.header(f,h)}),t.header("Cache-Control","no-store"),t.send(d.data||Buffer.alloc(0))}catch(n){return t.code(502).send({code:1,message:`internal danmu proxy failed: ${n.message}`})}}async function Pke(e){e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/ui-inline.js",handler:async(t,r)=>(r.header("Content-Type","application/javascript; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(`(() => { - const patch = () => { - if (typeof window.checkAdminToken !== 'function') return false; - const original = window.checkAdminToken; - window.checkAdminToken = function patchedCheckAdminToken() { - try { - const path = String(window.location && window.location.pathname || ''); - if (path === '/internal-danmu/ui' || path.startsWith('/internal-danmu/ui/')) { - return true; - } - } catch {} - return original.apply(this, arguments); - }; - - if (typeof window.editEnv === 'function' && !window.editEnv.__internalDanmuPatched) { - const originalEditEnv = window.editEnv; - window.editEnv = function patchedEditEnv(index, clickEvent) { - const safeEvent = clickEvent || window.event || { target: null }; - return originalEditEnv.call(this, index, safeEvent); - }; - window.editEnv.__internalDanmuPatched = true; - } - - if (typeof window.deleteEnv === 'function' && !window.deleteEnv.__internalDanmuPatched) { - const originalDeleteEnv = window.deleteEnv; - window.deleteEnv = function patchedDeleteEnv(index, clickEvent) { - const safeEvent = clickEvent || window.event || { target: null }; - return originalDeleteEnv.call(this, index, safeEvent); - }; - window.deleteEnv.__internalDanmuPatched = true; - } - - if (typeof window.renderEnvList === 'function' && !window.renderEnvList.__internalDanmuPatched) { - const originalRenderEnvList = window.renderEnvList; - window.renderEnvList = function patchedRenderEnvList() { - return originalRenderEnvList.apply(this, arguments); - }; - window.renderEnvList.__internalDanmuPatched = true; - try { window.renderEnvList(); } catch {} - } - - if (typeof window.confirmClearCache === 'function' && !window.confirmClearCache.__internalDanmuPatched) { - window.confirmClearCache = async function patchedConfirmClearCache() { - const configCheck = await window.checkDeployPlatformConfig(); - if (!configCheck.success) { - window.hideClearCacheModal(); - window.customAlert(configCheck.message); - return; - } - - window.hideClearCacheModal(); - window.showLoading('\u6B63\u5728\u6E05\u7406\u7F13\u5B58...', '\u6E05\u9664\u4E2D\uFF0C\u8BF7\u7A0D\u5019'); - window.addLog('\u5F00\u59CB\u6E05\u7406\u7F13\u5B58', 'info'); - - try { - const response = await fetch(window.buildApiUrl('/api/cache/clear', true), { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({}) - }); - const result = await response.json(); - if (result.success) { - window.updateLoadingText('\u6E05\u7406\u5B8C\u6210', '\u7F13\u5B58\u5DF2\u6210\u529F\u6E05\u9664'); - window.addLog('\u7F13\u5B58\u6E05\u7406\u5B8C\u6210', 'success'); - window.addLog('\u2705 \u7F13\u5B58\u6E05\u7406\u6210\u529F\uFF01\u5DF2\u6E05\u7406: ' + JSON.stringify(result.clearedItems), 'success'); - } else { - window.updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u8BF7\u67E5\u770B\u65E5\u5FD7\u4E86\u89E3\u8BE6\u60C5'); - window.addLog('\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ' + result.message, 'error'); - } - } catch (error) { - window.updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u7F51\u7EDC\u9519\u8BEF\u6216\u670D\u52A1\u4E0D\u53EF\u7528'); - window.addLog('\u7F13\u5B58\u6E05\u7406\u8BF7\u6C42\u5931\u8D25: ' + error.message, 'error'); - } finally { - setTimeout(() => window.hideLoading(), 10); - } - }; - window.confirmClearCache.__internalDanmuPatched = true; - } - return true; - }; - - if (!patch()) { - let tries = 0; - const timer = setInterval(() => { - tries += 1; - if (patch() || tries > 80) clearInterval(timer); - }, 100); - } -})();`))}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/ui",handler:async(t,r)=>{let n=Vp(t.server);console.log("[InternalDanmuRoute] hit /internal-danmu/ui",{query:t.query||{},token:n});let s=await mU(t,`/${n}`),i=s.data||"";return typeof i=="string"&&(i=i.replaceAll('onclick="editEnv(${index})"','onclick="editEnv(${index}, event)"').replaceAll('onclick="deleteEnv(${index})"','onclick="deleteEnv(${index}, event)"').replace("function editEnv(index) {","function editEnv(index, clickEvent) {").replace("const editButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE","const editButton = clickEvent?.target || event?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE").replace("function deleteEnv(index) {","function deleteEnv(index, clickEvent) {").replace("const deleteButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE","const deleteButton = clickEvent?.target || event?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE"),i.includes("")&&(i=i.replace("",''))),r.code(s.status||200),Object.entries(s.headers||{}).forEach(([a,o])=>{if(o===void 0)return;let c=String(a).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(c)||r.header(a,o)}),r.header("Content-Type","text/html; charset=utf-8"),r.send(i)}}),e.route({method:["POST"],url:"/internal-danmu/api/env/set",handler:async(t,r)=>Rke(t,r,"set")}),e.route({method:["POST"],url:"/internal-danmu/api/env/add",handler:async(t,r)=>Rke(t,r,"add")}),e.route({method:["POST"],url:"/internal-danmu/api/env/del",handler:async(t,r)=>Rke(t,r,"del")}),e.route({method:["GET"],url:"/internal-danmu/api/diagnostics",handler:async(t,r)=>r.send({success:!0,data:await M6n(t.server)})}),e.route({method:["GET"],url:"/internal-danmu/api/config",handler:async(t,r)=>{let n=Vp(t.server),s=await mU(t,`/${n}/api/config`),i=s.data;try{i=JSON.stringify(await w6n(JSON.parse(s.data||"{}")))}catch{}return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([a,o])=>{if(o===void 0)return;let c=String(a).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(c)||r.header(a,o)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(i)}}),e.route({method:["GET"],url:"/internal-danmu/api/logs",handler:async(t,r)=>{let n=Vp(t.server),s=await mU(t,`/${n}/api/logs`);return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([i,a])=>{if(a===void 0)return;let o=String(i).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(o)||r.header(i,a)}),r.header("Content-Type","text/plain; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s.data||"")}}),e.route({method:["POST"],url:"/internal-danmu/api/logs/clear",handler:async(t,r)=>{let n=Vp(t.server),s=await mU(t,`/${n}/api/logs/clear`);return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([i,a])=>{if(a===void 0)return;let o=String(i).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(o)||r.header(i,a)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s.data||"")}}),e.route({method:["POST"],url:"/internal-danmu/api/cache/clear",handler:async(t,r)=>{let n=Vp(t.server),s=await mU(t,`/${n}/api/cache/clear`);return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([i,a])=>{if(a===void 0)return;let o=String(i).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(o)||r.header(i,a)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s.data||"")}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/api",handler:async(t,r)=>{let n=Vp(t.server);return console.log("[InternalDanmuRoute] hit /internal-danmu/api",{method:t.method,token:n}),Cke(t,r,`/${n}/api`)}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/:token/api",handler:async(t,r)=>{let n=Vp(t.server);return(t.params.token||"")!==n?r.code(404).send({message:`Route ${t.method}:${t.raw.url} not found`,error:"Not Found",statusCode:404}):(console.log("[InternalDanmuRoute] hit /:token/api",{method:t.method,token:n}),Cke(t,r,`/${n}/api`))}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/:token/api/*",handler:async(t,r)=>{let n=Vp(t.server);if((t.params.token||"")!==n)return r.code(404).send({message:`Route ${t.method}:${t.raw.url} not found`,error:"Not Found",statusCode:404});let s=t.params["*"]?`/${n}/api/${t.params["*"]}`:`/${n}/api`;return console.log("[InternalDanmuRoute] hit /:token/api/*",{suffix:s,method:t.method,token:n}),Cke(t,r,s)}})}Hr();Nn();da();async function Mke(e){e.get("/internal/http/agent-stats",async()=>{try{let t=gSe();return{code:0,data:{summary:{https:{totalSockets:Object.values(t.https.sockets).reduce((n,s)=>n+s,0),totalFreeSockets:Object.values(t.https.freeSockets).reduce((n,s)=>n+s,0),totalRequests:Object.values(t.https.requests).reduce((n,s)=>n+s,0),hosts:Object.keys(t.https.sockets).length},http:{totalSockets:Object.values(t.http.sockets).reduce((n,s)=>n+s,0),totalFreeSockets:Object.values(t.http.freeSockets).reduce((n,s)=>n+s,0),totalRequests:Object.values(t.http.requests).reduce((n,s)=>n+s,0),hosts:Object.keys(t.http.sockets).length}},details:t}}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/cache/stats",async()=>{try{return{code:0,data:RSe()}}catch(t){return{code:-1,message:t.message}}}),e.post("/internal/cache/clear",async t=>{try{let{spider:r}=t.query;return ISe(r),{code:0,message:r?`Cleared cache for spider: ${r}`:"Cleared all cache"}}catch(r){return{code:-1,message:r.message}}}),e.post("/internal/cache/reset-stats",async()=>{try{return CSe(),{code:0,message:"Cache stats reset successfully"}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/concurrency/stats",async()=>{try{return{code:0,data:mxe()}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/inflight/stats",async()=>{try{return{code:0,data:_Se()}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/probe/filejin-pow",async t=>{try{let r=await Promise.resolve().then(()=>(tX(),jLe)),{solvePowChallenge:n,solvePowSync:s,solvePowParallel:i}=r.__test||{};if(!n||!s||!i)return{code:-1,message:"filejin.__test missing solve* exports"};let a="https://www.xn--rhqp87dfoiv9a830g.com",o="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",c=Date.now(),l=await(await fetch(`${a}/`,{headers:{"User-Agent":o}})).text(),d=Date.now()-c,f=l.match(/const json=(\{.*?\});const jss=/s);if(!f)return{code:-1,message:"no PoW payload in HTML",fetchMs:d,htmlLen:l.length};let h=JSON.parse(f[1]),p=String(t.query?.mode||"both"),m={fetchMs:d,diff:h.diff,challengeLen:h.challenge.length,saltLen:h.salt.length};if(p==="sync"||p==="both"){let _=Date.now(),g=s(h.challenge,h.salt,h.diff);m.sync={ms:Date.now()-_,remainingCount:g.remainingCount,nonce:g.nonce}}if(p==="parallel"||p==="both"){let _=Date.now(),g=await i(h.challenge,h.salt,h.diff,2);m.parallel2={ms:Date.now()-_,remainingCount:g.remainingCount,nonce:g.nonce}}return{code:0,data:m}}catch(r){return{code:-1,message:r?.message||String(r),stack:String(r?.stack||"").split(` -`).slice(0,6).join(" | ")}}}),e.get("/internal/probe/worker-threads",async()=>{try{let{runWorkerProbe:t}=await Promise.resolve().then(()=>(BZt(),kZt));return{code:0,data:await t()}}catch(t){return{code:-1,message:t?.message||String(t),stack:String(t?.stack||"").split(` -`).slice(0,6).join(" | ")}}}),e.post("/internal/concurrency/reset-stats",async()=>{try{return pxe(),{code:0,message:"Concurrency stats reset successfully"}}catch(t){return{code:-1,message:t.message}}})}da();var j6n="/spider";async function vJ(e,{db:t,config:r}){globalThis.__internalDanmuOverrideDb=t,await _J();let n=process.env.DISABLE_SPIDER_BOOT_CHECKS==="1";e.addHook("preHandler",async a=>{let o=hxe(a.url);if(!o)return;let c=await wG(o).acquire();a.__spiderLimiterRelease=c});let s=a=>{let o=a.__spiderLimiterRelease;if(o){a.__spiderLimiterRelease=null;try{o()}catch{}}};e.addHook("onResponse",async a=>{s(a)}),e.addHook("onError",async a=>{s(a)}),e.addHook("onTimeout",async a=>{s(a)}),e.addHook("onRequestAbort",async a=>{s(a)}),(await dJ({db:t,config:r})).forEach(a=>{let o=j6n+"/"+a.meta.key+"/"+a.meta.type;e.register(a.api,{prefix:o}),n||a.check?.(e)}),n&&console.warn("[router] \u5DF2\u7981\u7528\u542F\u52A8\u671F spider.check \u9884\u63A2\u6D3B\uFF08DISABLE_SPIDER_BOOT_CHECKS=1\uFF09"),e.get("/assets/*",async(a,o)=>{let c=String(a.params["*"]||"").replace(/^\/+/,""),u=yJ.default.resolve(process.cwd(),"src/website/assets"),l=yJ.default.resolve(u,c);return!l.startsWith(u+yJ.default.sep)&&l!==u?o.code(403).send({message:"Forbidden"}):!EJ.default.existsSync(l)||!EJ.default.statSync(l).isFile()?o.code(404).send({message:"Not Found"}):o.send(EJ.default.createReadStream(l))}),e.register(Ake),await Eke(e),await Pke(e),await Mke(e),e.get("/danmu-proxy",oxt),Ike(e)}var QJ=Ne(eer(),1);Pr();Pr();var rer=Ne(qE(),1),D_=Ne(Gi(),1);ws();Zu();var Zke="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",ter=[],e4e=null,a8n=async e=>{let t=String(e.config?.quark?.cookie||""),r=D_.default.enc.Hex.stringify(D_.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/quark",{});return n[r]?n[r]:t?(await e.db.push(`/quark/${r}`,t),t):""},o8n=async(e,t)=>{let r=D_.default.enc.Hex.stringify(D_.default.MD5(e.config.quark.cookie)).toString();await e.db.push(`/quark/${r}`,t)};async function t4e(e){e.get("/qrcode",async(t,r)=>{let n=await ve.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":Zke}});ter=p0(n.headers["set-cookie"]),e4e=n.data.data.members.token;let s="https://su.quark.cn/4_eMHBJ?token="+e4e+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",i=await rer.default.toBuffer(s,{width:300,height:300});r.send(i)}),e.post("/cookie",(t,r)=>{ve.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${e4e}`).then(n=>n.data.status===2e6?{data:n.data.data,cookies:ter}:Promise.reject(new Error(`service_ticket\u83B7\u53D6\u5931\u8D25: ${n.data.message}`))).then(async({data:n,cookies:s})=>{let i=await ve.get(`https://pan.quark.cn/account/info?st=${n.members.service_ticket}&fr=pc&platform=pc`,{headers:{"User-Agent":Zke,Cookie:s.join("")}});return i.headers["set-cookie"]?s.concat(p0(i.headers["set-cookie"])):Promise.reject(new Error(`\u4E2A\u4EBAPus\u83B7\u53D6\u5931\u8D25\uFF1A${i.data.message}`))}).then(async n=>{let s=await ve.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":Zke,Cookie:n.join("")}});if(s.headers["set-cookie"])r.send({code:0,data:n.concat(p0(s.headers["set-cookie"])).join("")});else return Promise.reject(new Error(`\u4E2A\u4EBAPuus\u83B7\u53D6\u5931\u8D25\uFF1A${s.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await a8n(t.server)})}),e.put("/cookie",async(t,r)=>{await o8n(t.server,t.body.cookie),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=D_.default.enc.Hex.stringify(D_.default.MD5(t.server.config.quark.cookie)).toString(),s=await t.server.db.getObjectDefault(`/quark/settings/${n}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1});r.send({code:0,data:s})}catch(n){console.error("\u83B7\u53D6\u5938\u514B\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=OE(t.body,{chunkSize:524288,poolSize:8,useMultithread:!0,enableFast:!1},{requireEnableFast:!0});if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let s=D_.default.enc.Hex.stringify(D_.default.MD5(t.server.config.quark.cookie)).toString();await t.server.db.push(`/quark/settings/${s}`,n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u5938\u514B\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}WRe();Pr();var r4e=Ne(Gi(),1);iB();var ner=null,c8n=null,xJ="token",u8n=async e=>{let t=String(e.config?.uc?.token||""),r=r4e.default.enc.Hex.stringify(r4e.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[xJ]?n[xJ]:n[r]?n[r]:t?(await e.db.push(`/uc/${xJ}`,t),t):""},l8n=async(e,t)=>{await e.db.push(`/uc/${xJ}`,t)};async function n4e(e){e.get("/qrcode",async(t,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=Zc.DeviceID,a=Dx(i,s),o=xK("GET",n,s,li.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":li.clientID,...Zc.AccessToken?{Authorization:`Bearer ${Zc.AccessToken}`}:{}},u=await ve.get(`${li.api}${n}`,{params:{req_id:a,access_token:Zc.AccessToken,app_ver:li.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:li.channel,auth_type:"code",client_id:li.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c});if(!u.data)return console.error("[UC Token] No data in response"),r.status(500).send("No data received from API");if(!u.data.qr_data)return console.error("[UC Token] No qr_data in response:",JSON.stringify(u.data)),r.status(500).send("QR code data not available in response");ner=u.data.query_token,c8n=a,r.type("image/png").send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("[UC Token] Error generating QR code:",n.message),n.response&&(console.error("[UC Token] Error response status:",n.response.status),console.error("[UC Token] Error response data:",JSON.stringify(n.response.data))),r.status(500).send(`Failed to generate QR code: ${n.message}`)}}),e.post("/token",async(t,r)=>{let n="/oauth/code",s=Math.floor(Date.now()/1e3).toString()+"000",i=Zc.DeviceID,a=Dx(i,s),o=xK("GET",n,s,li.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":li.clientID,...Zc.AccessToken?{Authorization:`Bearer ${Zc.AccessToken}`}:{}},u=await ve.get(`${li.api}${n}`,{params:{req_id:a,access_token:Zc.AccessToken,app_ver:li.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:li.channel,client_id:li.clientID,scope:"netdisk",query_token:ner},headers:c});if(u.data.status===0){let l="/token",d=Math.floor(Date.now()/1e3).toString()+"000",f=Dx(Zc.DeviceID,d),h=JSON.stringify({req_id:f,app_ver:li.appVer,device_id:Zc.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:li.channel,code:u.data.code}),m=(await ve.post(`${li.codeApi}${l}`,h,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}})).data;m.code===200?(m.data.refresh_token&&await t.server.db.push("/uc/refresh_token",m.data.refresh_token),r.send({code:0,data:m.data.access_token})):r.send({code:-1,message:m.message??"\u83B7\u53D6token\u5931\u8D25"})}else r.send({code:-1,message:u.data.message??"\u67E5\u8BE2\u626B\u7801\u72B6\u6001\u5931\u8D25"})}),e.get("/token",async(t,r)=>{r.send({code:0,data:await u8n(t.server)})}),e.put("/token",async(t,r)=>{await l8n(t.server,t.body.cookie),r.send({code:0})})}jT();zPe();uLe();FDe();var ser=async(e,t)=>{let n=(await e.db.getObjectDefault("/tyi",{}))?.[t]||"";return!n&&e.config.tianyi&&(t==="cloud_account"?n=e.config.tianyi.username||"":t==="cloud_password"&&(n=e.config.tianyi.password||""),n&&await e.db.push(`/tyi/${t}`,n)),n},s4e=async(e,t,r)=>{await e.db.push(`/tyi/${t}`,r)};async function i4e(e){e.get("/account",async(t,r)=>{let n=await ser(t.server,"cloud_account"),s=await ser(t.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),e.put("/account",async(t,r)=>{await s4e(t.server,"cloud_account",t.body.username),await s4e(t.server,"cloud_password",t.body.password),await s4e(t.server,"cloud_cookie",""),r.send({code:0})})}LDe();iDe();ZIe();var wJ=async(e,t)=>{let n=(await e.db.getObjectDefault("/pan123",{}))?.[t]||"";return!n&&e.config.pan123&&(t==="pan_passport"?n=e.config.pan123.username||"":t==="pan_password"&&(n=e.config.pan123.password||""),n&&await e.db.push(`/pan123/${t}`,n)),n},ier=async(e,t,r)=>{await e.db.push(`/pan123/${t}`,r)};function NJ(e){if(Array.isArray(e))return e.map(NJ);if(!e||typeof e!="object")return e;let t={};for(let[r,n]of Object.entries(e))/^(access_?token|refresh_?token|token)$/i.test(r)||(t[r]=NJ(n));return t}function P_(e,t){return e.send({code:-1,message:t?.message||String(t)})}async function a4e(e){e.get("/account",async(t,r)=>{let n=await wJ(t.server,"pan_passport"),s=await wJ(t.server,"pan_password");r.send({code:0,data:{username:n,password:s}})}),e.put("/account",async(t,r)=>{await ier(t.server,"pan_passport",t.body.username),await ier(t.server,"pan_password",t.body.password),r.send({code:0})}),e.get("/open/config",async(t,r)=>{try{let n=await el(t.server);return r.send({code:0,data:qT(n)})}catch(n){return P_(r,n)}}),e.put("/open/token",async(t,r)=>{try{let n=String(t.body?.access_token||t.body?.accessToken||"").trim(),s=String(t.body?.refresh_token||t.body?.refreshToken||"").trim();if(!n)return r.send({code:-1,message:"access_token is required"});await zkt(n),await k4(t.server,{access_token:n,...s?{refresh_token:s}:{}});let i=await el(t.server);return r.send({code:0,data:qT(i)})}catch(n){return P_(r,n)}}),e.put("/open/settings",async(t,r)=>{try{let n={enabled:t.body?.enabled===!0,target_parent_id:String(t.body?.target_parent_id||"0").trim()||"0",target_parent_name:String(t.body?.target_parent_name||"\u6839\u76EE\u5F55").trim()||"\u6839\u76EE\u5F55",oauth_server:String(t.body?.oauth_server||HE()).trim()||HE()};await zIe(t.server,n);let s=await el(t.server);return r.send({code:0,data:qT(s)})}catch(n){return P_(r,n)}}),e.post("/open/check",async(t,r)=>{try{await Gkt(t.server);let n=await el(t.server);return r.send({code:0,data:qT(n)})}catch(n){return P_(r,n)}}),e.post("/open/refresh",async(t,r)=>{try{await JIe(t.server);let n=await el(t.server);return r.send({code:0,data:qT(n)})}catch(n){return P_(r,n)}}),e.get("/open/folders",async(t,r)=>{try{let n=String(t.query?.parentFileId||t.query?.parent||"0").trim()||"0",s=await Ykt(t.server,n);return r.send({code:0,data:s})}catch(n){return P_(r,n)}}),e.post("/open/oauth/start",async(t,r)=>{try{t.body?.oauth_server&&await zIe(t.server,{oauth_server:String(t.body.oauth_server).trim()});let n=await Kkt(t.server,t.body||{});return r.send({code:0,data:NJ(n)})}catch(n){return P_(r,n)}}),e.post("/open/oauth/password",async(t,r)=>{try{let n=await wJ(t.server,"pan_passport"),s=await wJ(t.server,"pan_password"),i=await jkt(t.server,{username:n,password:s});return r.send({code:0,data:qT(i)})}catch(n){return P_(r,n)}}),e.get("/open/oauth/status/:sessionId",async(t,r)=>{try{let n=String(t.params?.sessionId||"").trim();if(!n)return r.send({code:-1,message:"sessionId is required"});let s=await WIe(t.server,n),i=M4(s),a=!1,o=!1;if(i?.access_token){await k4(t.server,i,{oauth_session_id:n}),a=!0;try{await XIe(t.server,n),o=!0}catch{}}return r.send({code:0,data:{...NJ(s),token_saved:a,token_confirmed:o}})}catch(n){return P_(r,n)}})}zK();Zu();var d8n=_s.maxPoolSize,o4e=async(e,t)=>{let n=(await e.db.getObjectDefault("/xunlei",{}))?.[t]||"";return!n&&e.config.xunlei&&(t==="username"?n=e.config.xunlei.username||"":t==="password"&&(n=e.config.xunlei.password||""),n&&await e.db.push(`/xunlei/${t}`,n)),n};var uer=async e=>await e.db.getObjectDefault("/xunlei/verification",{}),f8n=async(e,t={})=>{await e.db.push("/xunlei/verification",t)},h8n=async e=>{await e.db.push("/xunlei/verification",{})},c4e=async e=>{await h8n(e),r1=null},r1=null,u4e=e=>{let t=String(e||"").trim();if(!t)return"";if(t.startsWith("+"))return t;let r=t.replace(/\D/g,"");return r?r.length===11&&!r.startsWith("86")?`+86 ${r}`:r.startsWith("86")?`+${r}`:`+${r}`:t},p8n=(e={})=>{let t=Date.now()+Number(e.expiresIn||300)*1e3;return{phone:e.phone,verificationId:e.verificationId,expiresAt:t,reviewState:e.reviewState||{}}},aer=(e,t="")=>!e?.verificationId||Number(e?.expiresAt||0)<=Date.now()?!1:t?e.phone===u4e(t):!0,m8n=async(e,t="")=>{let r=u4e(t),n=await uer(e),s=aer(r1,r)?r1:null,i=aer(n,r)?n:null;return s||i||null},g8n=(e,t={})=>{let r=Number(e?.expiresAt||0);return{status:"sent",phone:e?.phone||"",verificationId:e?.verificationId||"",expiresAt:r,expiresIn:Math.max(0,Math.ceil((r-Date.now())/1e3)),selectedChannel:"sms",remaining:null,reviewState:e?.reviewState||{},...t}};var oer=e=>{let t=e?.data?.verifyUrl||e?.data?.captchaUrl||"";return t?{status:"verify_required",verifyUrl:t,message:e?.message||"\u9700\u8981\u5148\u5B8C\u6210\u5B89\u5168\u9A8C\u8BC1"}:null},cer=async(e,t)=>{let r=await BUt(e,t,{forceSend:!0});if(r?.autoLoggedIn)return await c4e(e.server),{status:"auto_logged_in",userId:r.userId||"",hasRefreshToken:!!r.hasRefreshToken};if(!r?.verificationId)throw new Error(r?.message||"\u5F53\u524D\u8D26\u53F7\u672A\u8FDB\u5165\u77ED\u4FE1\u9A8C\u8BC1\u7801\u6D41\u7A0B");let n=p8n(r);return await f8n(e.server,n),r1=n,{status:"sent",...r,expiresAt:n.expiresAt}};async function l4e(e){e.get("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/xunlei/settings",{chunkSize:524288,poolSize:10,useMultithread:!0});r.send({code:0,data:n})}catch(n){console.error("\u83B7\u53D6\u8FC5\u96F7\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=OE(t.body,{chunkSize:524288,poolSize:10,useMultithread:!0});if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});n.poolSize=Math.min(d8n,n.poolSize),await t.server.db.push("/xunlei/settings",n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u8FC5\u96F7\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}}),e.get("/verify-callback",async(t,r)=>{r.type("text/html").send(` - - - - - - \u8FC5\u96F7\u5B89\u5168\u9A8C\u8BC1\u5B8C\u6210 - - - -
-

\u5B89\u5168\u9A8C\u8BC1\u5DF2\u8FD4\u56DE

-

\u6B63\u5728\u8865\u53D1\u77ED\u4FE1\u9A8C\u8BC1\u7801\uFF0C\u8BF7\u7A0D\u5019...

- \u8FD4\u56DE\u914D\u7F6E\u9875 -
- - - - `)}),e.get("/account",async(t,r)=>{let n=await o4e(t.server,"username"),s=await o4e(t.server,"password"),i=await m8n(t.server,n);r.send({code:0,data:{username:n,password:s,verification:i?g8n(i):null}})}),e.put("/account",async(t,r)=>{try{await lB(t,{username:t.body.username,password:t.body.password}),await c4e(t.server),r.send({code:0})}catch(n){r.send({code:1,message:n?.message||"\u4FDD\u5B58\u5931\u8D25"})}}),e.post("/verification",async(t,r)=>{try{let n=t.body.username||t.body.phone;await lB(t,{username:n,password:t.body.password});let s=await cer(t,n);r.send({code:0,data:s})}catch(n){let s=oer(n);if(s){r.send({code:0,data:s});return}r.send({code:1,message:n?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",data:n?.data||{}})}}),e.post("/verification/retry",async(t,r)=>{try{let n=await o4e(t.server,"username");if(!n)throw new Error("\u8BF7\u5148\u8F93\u5165\u624B\u673A\u53F7\u548C\u5BC6\u7801\uFF0C\u518D\u91CD\u65B0\u53D1\u9001\u9A8C\u8BC1\u7801");let s=await cer(t,n);r.send({code:0,data:s})}catch(n){let s=oer(n);if(s){r.send({code:0,data:s});return}r.send({code:1,message:n?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",data:n?.data||{}})}}),e.post("/login",async(t,r)=>{try{let n=t.body.username||t.body.phone,s=u4e(n),i=await uer(t.server),a=r1?.phone===s&&Number(r1?.expiresAt||0)>Date.now()?r1:null,o=i?.phone===s&&Number(i?.expiresAt||0)>Date.now()?i:null,c=String(t.body.verificationId||"").trim(),u=(c?[a,o].find(f=>f?.verificationId===c):a||o)||null,l=c||u?.verificationId||"";u?.reviewState&&await NUt(t,u.reviewState);let d=await FUt(t,{username:n,password:t.body.password,verificationId:l,verificationCode:t.body.verificationCode});await c4e(t.server),r.send({code:0,data:d})}catch(n){r.send({code:1,message:n?.message||"\u767B\u5F55\u5931\u8D25",data:n?.data||{}})}}),e.post("/login-web",async(t,r)=>{try{let n=await UUt(t,{username:t.body.username||t.body.phone,password:t.body.password});r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u7F51\u9875\u767B\u5F55\u5931\u8D25",data:n?.data||{}})}}),e.post("/debug-download",async(t,r)=>{try{let n=await eFt(t,t.body||{});r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u8C03\u8BD5\u5931\u8D25",data:n?.data||{}})}}),e.post("/debug-auth",async(t,r)=>{try{let n=await tFt(t);r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u8BA4\u8BC1\u8C03\u8BD5\u5931\u8D25",data:n?.data||{}})}}),e.get("/debug-proxy-trace",async(t,r)=>{r.send({code:0,data:_Ut()})}),e.delete("/debug-proxy-trace",async(t,r)=>{AUt(),r.send({code:0})})}Pr();var fer=Ne(qE(),1),n1=Ne(Gi(),1),her=Ne(sx(),1);Zu();var _8n="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",OJ={},d4e={chunkSize:512*1024,poolSize:6,useMultithread:!0},ler=_s.maxPoolSize;function der(e){return n1.default.enc.Hex.stringify(n1.default.MD5(e.config.ali.token)).toString()}var A8n=async e=>{let t=String(e.config?.ali?.token||""),r=n1.default.enc.Hex.stringify(n1.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/ali",{});return n[r]?n[r]:t?(await e.db.push(`/ali/${r}`,t),t):""},E8n=async(e,t)=>{let r=n1.default.enc.Hex.stringify(n1.default.MD5(e.config.ali.token)).toString();await e.db.push(`/ali/${r}`,t)};async function f4e(e){e.get("/qrcode",async(t,r)=>{OJ=(await ve.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{"User-Agent":_8n})).data.content.data;let s=await fer.default.toBuffer(OJ.codeContent,{width:300,height:300});r.send(s)}),e.post("/token",(t,r)=>{let n="";ve.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",her.default.stringify({t:OJ.t,appName:"aliyun_drive",ck:OJ.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}),{headers:{"content-type":"application/x-www-form-urlencoded"}}).then(async s=>{let i=s.data.content.data;if(i.qrCodeStatus==="CONFIRMED"){let a=decodeURI(atob(i.bizExt)),o=JSON.parse(a).pds_login_result.refreshToken;return o?(n=o,Promise.resolve(o)):Promise.reject(new Error(`\u83B7\u53D6refreshToken\u5931\u8D25: ${s.data.message}`))}else return Promise.reject(new Error(`\u626B\u7801\u72B6\u6001\u68C0\u6D4B\u5931\u8D25: ${s.data.message}`))}).then(async s=>{r.send({code:0,data:{token:s}})}).catch(s=>{console.error(s),r.send({code:-1,message:s?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/token",async(t,r)=>{r.send({code:0,data:{token:await A8n(t.server)}})}),e.put("/token",async(t,r)=>{await E8n(t.server,t.body.data.token),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=der(t.server),s=await t.server.db.getObjectDefault(`/ali/settings/${n}`,d4e);s.poolSize=Math.min(ler,Number(s.poolSize)||d4e.poolSize),r.send({code:0,data:s})}catch(n){console.error("\u83B7\u53D6\u963F\u91CC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=OE(t.body,d4e);if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});n.poolSize=Math.min(ler,n.poolSize);let s=der(t.server);await t.server.db.push(`/ali/settings/${s}`,n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u963F\u91CC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}Pr();var Aks=Ne(qE(),1);ws();RB();var BN="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",yU={},y8n=async e=>{try{let t=String(e.config?.baidu?.cookie||"");nl.isInitialized()||await nl.init(e.db);let r=nl.get("baidu_cookie")||"";return r||(t?(await nl.set("baidu_cookie",t),t):"")}catch(t){return console.error("\u83B7\u53D6\u767E\u5EA6Cookie\u5931\u8D25:",t),""}},h4e=async(e,t)=>{try{if(nl.isInitialized()||await nl.init(e.db),!t||typeof t!="string")throw new Error("\u65E0\u6548\u7684Cookie\u683C\u5F0F");let r=t.replace(/\r\n/g,"").replace(/\n/g,"").replace(/\s+/g," ").trim();if(!r.includes("BDUSS=")||!r.includes("STOKEN="))throw new Error("Cookie\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u5305\u542BBDUSS\u548CSTOKEN");if(!await nl.set("baidu_cookie",r))throw new Error("\u4FDD\u5B58Cookie\u5230\u6570\u636E\u5E93\u5931\u8D25");return r}catch(r){throw console.error("\u4FDD\u5B58\u767E\u5EA6Cookie\u5931\u8D25:",r),r}};function v8n(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}async function p4e(e){e.get("/qrcode",async(t,r)=>{try{let n=v8n(),s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),a=`tangram_guid_${s}`,c=(await ve.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:n,callback:a,apiver:"v3",tt:i,tpl:"netdisk",_:s},headers:{"User-Agent":BN,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',"sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126"',DNT:"1","sec-ch-ua-mobile":"?0","Sec-Fetch-Site":"same-site","Sec-Fetch-Mode":"no-cors","Sec-Fetch-Dest":"script","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}})).data;if(typeof c=="string"){c=c.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let u=JSON.parse(c);if(u.errno===0){yU={sign:u.sign,imgurl:u.imgurl,channel_id:u.channel_id,t1:i,t3:s,requestId:n,callback:a};let l="https://"+u.imgurl,d=await ve.get(l,{responseType:"arraybuffer",headers:{"User-Agent":BN}});r.send(d.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${u.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(n){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",n),r.status(500).send({code:-1,message:n?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),e.post("/cookie",async(t,r)=>{try{if(!yU.sign)throw new Error("\u8BF7\u5148\u83B7\u53D6\u4E8C\u7EF4\u7801");for(let n=0;n<30;n++){let s=new Date().getTime().toString(),i=`tangram_guid_${s}`,o=(await ve.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:yU.sign,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:i,_:s},headers:{"User-Agent":BN,Referer:"https://pan.baidu.com"}})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=JSON.parse(o);if(c.errno===0&&c.channel_v){let u=JSON.parse(c.channel_v);if(u.status===1){await new Promise(l=>setTimeout(l,1e3));continue}if(u.status===0&&u.v){let l=u.v,d=new Date().getTime().toString(),f=Math.floor(new Date().getTime()/1e3).toString(),p=(await ve.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:d,bduss:l,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:d,traceid:"",time:f,alg:"v3",elapsed:"1"},headers:{"User-Agent":BN,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof p=="string"){p=p.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let m=p.match(/"bduss":\s*"([^"]+)"/),_=p.match(/"stoken":\s*"([^"]+)"/),g=p.match(/"ptoken":\s*"([^"]+)"/),y=p.match(/"ubi":\s*"([^"]+)"/);if(m&&_&&g&&y){let A=m[1],E=_[1],v=g[1],b=encodeURIComponent(y[1]),x=(M=>Object.entries(M).map(([L,U])=>`${L}=${U}`).join("; "))({newlogin:"1",UBI:b,STOKEN:E,BDUSS:A,PTOKEN:v,BDUSS_BFESS:A,STOKEN_BFESS:E,PTOKEN_BFESS:v,UBI_BFESS:b}),D=(await ve.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":BN,Referer:"https://pan.baidu.com/",Cookie:x},maxRedirects:0,validateStatus:M=>M===302||M===200})).headers.location;if(D){let L=(await ve.get(D,{headers:{"User-Agent":BN,Referer:"https://pan.baidu.com/",Cookie:x},maxRedirects:0,validateStatus:$=>$===302||$===200})).headers["set-cookie"],U="";if(L){let $=L.find(K=>K.toLowerCase().includes("stoken"));$&&(U=$.split(";")[0])}let G=U?`BDUSS=${A};${U};`:`BDUSS=${A};STOKEN=${E};`;await h4e(t.server,G),r.send({code:0,data:G,message:"\u626B\u7801\u6210\u529F"}),yU={};return}else{let M=`BDUSS=${A};STOKEN=${E};`;await h4e(t.server,M),r.send({code:0,data:M,message:"\u626B\u7801\u6210\u529F"}),yU={};return}}else throw new Error("Cookie\u89E3\u6790\u5931\u8D25: \u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5")}}}else if(c.errno===1){await new Promise(u=>setTimeout(u,1e3));continue}else if(c.errno===2)throw new Error("\u4E8C\u7EF4\u7801\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u83B7\u53D6")}}throw new Error("\u626B\u7801\u8D85\u65F6\uFF0C\u8BF7\u91CD\u8BD5")}catch(n){console.error("\u767E\u5EA6\u626B\u7801\u767B\u5F55\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})}}),e.get("/cookie",async(t,r)=>{try{let n=await y8n(t.server);r.send({code:0,data:n})}catch(n){console.error("\u83B7\u53D6\u767E\u5EA6Cookie\u5931\u8D25:",n),r.send({code:-1,message:"\u83B7\u53D6Cookie\u5931\u8D25"})}}),e.put("/cookie",async(t,r)=>{try{let n=t.body.cookie;if(!n||typeof n!="string")return r.send({code:-1,message:"Cookie\u4E0D\u80FD\u4E3A\u7A7A"});await h4e(t.server,n),r.send({code:0,message:"Cookie\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u767E\u5EA6Cookie\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58Cookie\u5931\u8D25"})}})}gX();wi();qg();var m4e=[{key:"quark",name:"\u5938\u514B",enable:!0},{key:"tianyi",name:"\u5929\u7FFC",enable:!0},{key:"yidong",name:"\u79FB\u52A8",enable:!0},{key:"123",name:"P123",enable:!0,routeOrder:[...PT[123]]},{key:"115",name:"P115",enable:!0,routeOrder:[...PT[115]]},{key:"uc",name:"UC",enable:!0,routeOrder:[...PT.uc]},{key:"baidu",name:"\u767E\u5EA6",enable:!0},{key:"ali",name:"\u963F\u91CC",enable:!0,routeOrder:[...PT.ali]},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0},{key:"guangya",name:"\u5149\u9E2D",enable:!0},{key:"magnet",name:"115\u4E91\u8F6C\u5B58",enable:!0},{key:"magnet_guangya",name:"\u5149\u9E2D\u4E91\u8F6C\u5B58",enable:!1}],per=(e=[])=>{let t=RLt(e);for(let n of t)n?.key==="guangya"&&(n.name="\u5149\u9E2D");let r=t.filter(n=>["magnet","magnet_guangya"].includes(n?.key)&&n.enable!==!1);if(r.length>1){let n=r[r.length-1]?.key;for(let s of t)["magnet","magnet_guangya"].includes(s?.key)&&(s.enable=s.key===n)}return t},g4e=async e=>{let r=(await e.db.getObjectDefault("/pans",{}))?.list||e.config?.pans?.list||[],n=new Set(m4e.map(a=>a.key)),s=new Set,i=[];for(let a of r)!n.has(a.key)||s.has(a.key)||(s.add(a.key),i.push(a));for(let a of m4e)s.has(a.key)||(s.add(a.key),i.push(a));return per(i)},S8n=async(e,t)=>{let r=per(t);return await e.db.push("/pans/list",r),xE(r),r},T8n=async e=>{await e.db.delete("/pans/list"),xE(m4e)};async function _4e(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await g4e(t.server)})}),e.put("/list",async(t,r)=>{let n=await S8n(t.server,t.body.list);r.send({code:0,data:n})}),e.delete("/list",async(t,r)=>{await T8n(t.server),r.send({code:0})})}var mer=Ne(m4(),1);async function A4e(e){e.get("/",async(t,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,mer.default)().format("YYYY-MM-DD")}.json"`);let n=await t.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),e.put("/",async(t,r)=>{await t.server.db.push("/",t.body),r.send({code:0})})}zDe();zQ();OLe();var E4e=async(e,t,r="")=>(await e.db.getObjectDefault("/panlian",{}))?.[t]??r,L_=async(e,t,r)=>{await e.db.push(`/panlian/${t}`,r)};async function y4e(e){e.get("/config",async(t,r)=>{let n=await E4e(t.server,"username",""),s=await E4e(t.server,"password",""),i=await E4e(t.server,"cookie","");r.send({code:0,data:{username:n,password:s,cookie:i,hasCookie:!!String(i||"").trim()}})}),e.put("/config",async(t,r)=>{let n=t.body||{};Object.prototype.hasOwnProperty.call(n,"username")&&await L_(t.server,"username",n.username||""),Object.prototype.hasOwnProperty.call(n,"password")&&await L_(t.server,"password",n.password||""),Object.prototype.hasOwnProperty.call(n,"cookie")&&await L_(t.server,"cookie",n.cookie||""),r.send({code:0,data:!0})}),e.post("/login",async(t,r)=>{try{let n=t.body||{},s=String(n.username||"").trim(),i=String(n.password||"").trim(),a=n.remember!==!1;if(!s||!i)return r.send({code:-1,message:"\u8D26\u53F7\u548C\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A"});let o=await B3(t,s,i,a);await L_(t.server,"username",s),await L_(t.server,"password",i),await L_(t.server,"cookie",o?.cookie||""),r.send({code:0,data:o})}catch(n){r.send({code:-1,message:n?.message||"\u767B\u5F55\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{try{await L_(t.server,"username",""),await L_(t.server,"password",""),await L_(t.server,"cookie",""),r.send({code:0,data:!0})}catch(n){r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u5931\u8D25"})}})}tX();var DJ=async(e,t,r="")=>(await e.db.getObjectDefault("/filejin",{}))?.[t]??r,jp=async(e,t,r)=>{await e.db.push(`/filejin/${t}`,r)};async function v4e(e){e.get("/config",async(t,r)=>{let n=await DJ(t.server,"username",""),s=await DJ(t.server,"password",""),i=await DJ(t.server,"cookie",""),a=await DJ(t.server,"site","");r.send({code:0,data:{username:n,password:s,cookie:i,site:a,hasCookie:!!String(i||"").trim()}})}),e.put("/config",async(t,r)=>{let n=t.body||{};if(Object.prototype.hasOwnProperty.call(n,"username")&&await jp(t.server,"username",n.username||""),Object.prototype.hasOwnProperty.call(n,"password")&&await jp(t.server,"password",n.password||""),Object.prototype.hasOwnProperty.call(n,"cookie")&&await jp(t.server,"cookie",n.cookie||""),Object.prototype.hasOwnProperty.call(n,"site")){let s=String(n.site||"").trim().replace(/\/+$/,"");await jp(t.server,"site",s)}r.send({code:0,data:!0})}),e.post("/login",async(t,r)=>{try{let n=t.body||{},s=String(n.username||"").trim(),i=String(n.password||"").trim(),a=n.remember!==!1;if(!s||!i)return r.send({code:-1,message:"\u8D26\u53F7\u548C\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A"});let o=await uN(t,s,i,a);await jp(t.server,"username",s),await jp(t.server,"password",i),await jp(t.server,"cookie",o?.cookie||""),r.send({code:0,data:o})}catch(n){r.send({code:-1,message:n?.message||"\u767B\u5F55\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{try{await jp(t.server,"username",""),await jp(t.server,"password",""),await jp(t.server,"cookie",""),r.send({code:0,data:!0})}catch(n){r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u5931\u8D25"})}})}Pr();var ger="https://pan1.me",b8n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",S4e="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86";async function _er(e){let t=await e.db.getObjectDefault("/pan1",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:String(t?.replyMessage||S4e).trim()||S4e}}async function PJ(e,t,r){await e.db.push(`/pan1/${t}`,r)}function I8n(e=""){let t=String(e||"").match(/\bvar\s+uid\s*=\s*(\d+)\s*;/i)?.[1]||"0";return{valid:t!=="0"&&!/您所在的用户组权限不足|登录后体验更多功能/.test(String(e||"")),uid:t==="0"?"":t}}async function T4e(e){e.get("/config",async(t,r)=>{let n=await _er(t.server);r.send({code:0,data:{...n,hasCookie:!!n.cookie,cookieLength:n.cookie.length}})}),e.put("/config",async(t,r)=>{let n=t.body||{};if(Object.prototype.hasOwnProperty.call(n,"cookie")&&await PJ(t.server,"cookie",String(n.cookie||"").trim()),Object.prototype.hasOwnProperty.call(n,"autoReply")&&await PJ(t.server,"autoReply",n.autoReply!==!1),Object.prototype.hasOwnProperty.call(n,"replyMessage")){let s=String(n.replyMessage||"").trim()||S4e;await PJ(t.server,"replyMessage",s)}r.send({code:0,data:!0})}),e.post("/validate",async(t,r)=>{try{let n=await _er(t.server);if(!n.cookie)return r.send({code:-1,message:"\u8BF7\u5148\u586B\u5199\u5E76\u4FDD\u5B58\u8BBA\u575B Cookie"});let s=await ve.get(`${ger}/`,{timeout:15e3,validateStatus:()=>!0,headers:{"User-Agent":b8n,Referer:`${ger}/`,Cookie:n.cookie}});if(s.status>=400)return r.send({code:-1,message:`\u8BBA\u575B\u8FD4\u56DE HTTP ${s.status}`});let i=I8n(String(s.data||""));if(!i.valid)return r.send({code:-1,message:"Cookie \u5DF2\u5931\u6548\u6216\u8D26\u53F7\u6CA1\u6709\u8D44\u6E90\u7248\u8BBF\u95EE\u6743\u9650"});r.send({code:0,data:{valid:!0,uid:i.uid}})}catch(n){r.send({code:-1,message:n?.message||"Cookie \u9A8C\u8BC1\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{await PJ(t.server,"cookie",""),r.send({code:0,data:!0})})}Pr();Qd();var b4e="https://guangya.qsxy.top",R8n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",I4e="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86";async function Aer(e){let t=await e.db.getObjectDefault("/guangyaqsxy",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:String(t?.replyMessage||I4e).trim()||I4e}}async function LJ(e,t,r){await e.db.push(`/guangyaqsxy/${t}`,r)}function C8n(e=""){return String(e||"").replace(/\s+/g," ").trim()}function Eer(e=""){let t=String(e||""),r=C8n(er(t)("body").text()),n=/]*\blogged-in\b/i.test(t)||/退出登录|用户中心/.test(t),s=/https?:\/\/(?:www\.)?guangyapan\.com\/s\//i.test(t),i=/内容已隐藏[^。!;]{0,100}评论后刷新页面查看|评论后可见|回复后可见/.test(r),a=t.match(/]*>([^<]+){let i=String(t(s).attr("href")||"").trim();/^https:\/\/guangya\.qsxy\.top\/\d+\.html$/i.test(i)&&!r.includes(i)&&r.push(i)}),r.length===0)for(let n of String(e||"").matchAll(/href=["'](https:\/\/guangya\.qsxy\.top\/\d+\.html)["']/ig))r.includes(n[1])||r.push(n[1]);return r}async function R4e(e){e.get("/config",async(t,r)=>{let n=await Aer(t.server);r.send({code:0,data:{...n,hasCookie:!!n.cookie,cookieLength:n.cookie.length}})}),e.put("/config",async(t,r)=>{let n=t.body||{},s=String(n.replyMessage||"").trim();if(Object.prototype.hasOwnProperty.call(n,"replyMessage")&&s.length<4)return r.send({code:-1,message:"\u81EA\u52A8\u56DE\u590D\u5185\u5BB9\u81F3\u5C11\u9700\u8981 4 \u4E2A\u5B57\u7B26"});if(Object.prototype.hasOwnProperty.call(n,"replyMessage")&&s.length>120)return r.send({code:-1,message:"\u81EA\u52A8\u56DE\u590D\u5185\u5BB9\u4E0D\u80FD\u8D85\u8FC7 120 \u4E2A\u5B57\u7B26"});Object.prototype.hasOwnProperty.call(n,"cookie")&&await LJ(t.server,"cookie",String(n.cookie||"").trim()),Object.prototype.hasOwnProperty.call(n,"autoReply")&&await LJ(t.server,"autoReply",n.autoReply!==!1),Object.prototype.hasOwnProperty.call(n,"replyMessage")&&await LJ(t.server,"replyMessage",s||I4e),r.send({code:0,data:!0})}),e.post("/validate",async(t,r)=>{try{let n=await Aer(t.server);if(!n.cookie)return r.send({code:-1,message:"\u8BF7\u5148\u586B\u5199\u5E76\u4FDD\u5B58 Cookie"});let s={timeout:2e4,validateStatus:()=>!0,headers:{"User-Agent":R8n,Referer:`${b4e}/`,Cookie:n.cookie}},i=await ve.get(`${b4e}/`,s);if(i.status>=400)return r.send({code:-1,message:`\u7AD9\u70B9\u8FD4\u56DE HTTP ${i.status}`});let a=Eer(i.data);if(!a.loggedIn)return r.send({code:-1,message:"Cookie \u5DF2\u5931\u6548\u6216\u672A\u767B\u5F55"});let o=x8n(i.data).slice(0,5),c=!1,u=!1,l=a.username,d=0;for(let p of o){let m=await ve.get(p,{...s,headers:{...s.headers,Referer:`${b4e}/`}});if(m.status===404)continue;if(m.status>=400)return r.send({code:-1,message:`\u8D44\u6E90\u9875\u8FD4\u56DE HTTP ${m.status}`});d+=1;let _=Eer(m.data);if(l||=_.username,_.canReadResource){c=!0;break}_.commentRequired&&(u=!0)}let f=c?"unlocked":u?"comment_required":"unknown",h=c?"\u767B\u5F55\u6709\u6548\uFF0C\u62BD\u68C0\u6587\u7AE0\u8D44\u6E90\u5DF2\u89E3\u9501":u?`\u767B\u5F55\u6709\u6548\uFF0C\u62BD\u68C0\u6587\u7AE0\u9700\u8BC4\u8BBA\u89E3\u9501${n.autoReply?"\uFF0C\u8BE6\u60C5\u9875\u5C06\u81EA\u52A8\u56DE\u590D":""}`:"\u767B\u5F55\u6709\u6548\uFF0C\u4F46\u62BD\u68C0\u6587\u7AE0\u672A\u8BC6\u522B\u5230\u8D44\u6E90\u72B6\u6001";r.send({code:0,data:{valid:!0,loggedIn:!0,canReadResource:c,resourceGate:f,username:l,checkedPostCount:d,autoReply:n.autoReply,message:h}})}catch(n){r.send({code:-1,message:n?.message||"Cookie \u9A8C\u8BC1\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{await LJ(t.server,"cookie",""),r.send({code:0,data:!0})})}ZQ();hPe();VDe();iPe();uPe();tPe();XDe();bMe();async function C4e(e){e.get("/config",async(t,r)=>{try{let n=await TX(t.server);return r.send({code:0,data:Array.isArray(n)?n:[]})}catch{return r.send({code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:[]})}}),e.put("/config",async(t,r)=>{try{let n=t.body;if(!Array.isArray(n))return r.send({code:400,message:"\u914D\u7F6E\u6570\u636E\u683C\u5F0F\u9519\u8BEF"});let s=n.filter(i=>!(!i||typeof i!="object"||!i.name||typeof i.name!="string"||i.name.trim()===""||!i.url||typeof i.url!="string"||i.url.trim()==="")).map(i=>({name:i.name.trim(),url:i.url.trim(),ua:i.ua||"okhttp/3.15",enabled:i.enabled!==!1,logoUrl:i.logoUrl||""}));return await t.server.db.push("/config/live",s),r.send({code:0,message:"\u76F4\u64AD\u6E90\u914D\u7F6E\u4FDD\u5B58\u6210\u529F",data:{count:s.length}})}catch{return r.send({code:500,message:"\u4FDD\u5B58\u5931\u8D25"})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete("/config/live"),r.send({code:0,message:"\u76F4\u64AD\u6E90\u914D\u7F6E\u5DF2\u6E05\u7A7A",data:[]})}catch{return r.send({code:500,message:"\u5220\u9664\u5931\u8D25"})}})}_Pe();vPe();var x4e="/config/zhuiju";function w4e(e){let t=e&&typeof e=="object"?e:{},r=t.classes&&typeof t.classes=="object"?t.classes:{},n={};for(let[s,i]of Object.entries(r))!s||!i||typeof i!="object"||(n[s]={name:typeof i.name=="string"?i.name.trim():"",hidden:i.hidden===!0,order:Number.isFinite(Number(i.order))?Number(i.order):9999});return{classes:n,updatedAt:Number.isFinite(Number(t.updatedAt))?Number(t.updatedAt):0}}async function w8n(e){try{let t=await e.db.getObjectDefault(x4e,{});return w4e(t)}catch{return w4e({})}}async function N8n(e){try{let r=await(await e.inject({method:"POST",url:"/spider/zhuiju/3/home?raw=1",payload:{}})).json();return Array.isArray(r?.class)?r.class:[]}catch{return[]}}async function N4e(e){e.get("/config",async(t,r)=>{try{let n=await w8n(t.server),s=await N8n(t.server);return r.send({code:0,data:{classes:s,config:n}})}catch(n){return r.send({code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25: "+n.message,data:{classes:[],config:{classes:{},updatedAt:0}}})}}),e.put("/config",async(t,r)=>{try{let n=w4e(t.body||{});return n.updatedAt=Date.now(),await t.server.db.push(x4e,n),r.send({code:0,message:"\u8FFD\u5267\u805A\u5408\u5206\u7C7B\u914D\u7F6E\u4FDD\u5B58\u6210\u529F",data:n})}catch(n){return r.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+n.message})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete(x4e),r.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u5206\u7C7B\u914D\u7F6E",data:{classes:{},updatedAt:0}})}catch(n){return r.send({code:1,message:"\u91CD\u7F6E\u5931\u8D25: "+n.message})}})}lJ();async function O4e(e){NN(),e.get("/list",async t=>{let r=await uJ(t.server);return{code:0,data:{dir:UJt(),files:r.map(n=>({name:n.name,size:n.size,size_str:n.size_str,mtime:n.mtime,key:n.key}))}}}),e.post("/upload",async(t,r)=>{let n=ON(),s=null;try{s=await t.file({limits:{fileSize:n}})}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${aJ(n)} \u4E0A\u9650`}):r.code(400).send({code:-1,message:"\u4E0A\u4F20\u8BFB\u53D6\u5931\u8D25: "+(i?.message||i)})}if(!s)return r.code(400).send({code:-1,message:"\u672A\u6536\u5230\u6587\u4EF6"});try{let i=t.query?.overwrite==="1"||t.query?.overwrite==="true";return{code:0,data:await KJt(s.filename,s.file,{maxBytes:n,overwrite:i})}}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"||i?.code==="DUDB_UPLOAD_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${aJ(n)} \u4E0A\u9650`}):i?.code==="DUDB_UPLOAD_EXISTS"?r.code(409).send({code:-1,message:i?.message||"\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6",data:{exists:!0,name:i?.name||s.filename}}):r.code(400).send({code:-1,message:i?.message||String(i)})}}),e.delete("/file/:name",async(t,r)=>{let n=decodeURIComponent(String(t.params?.name||""));if(!n)return r.code(400).send({code:-1,message:"\u7F3A\u5C11 name"});try{return{code:0,data:await GJt(t.server,n)}}catch(s){return r.code(400).send({code:-1,message:s?.message||String(s)})}}),e.put("/order",async(t,r)=>{let n=t.body||{},s=Array.isArray(n)?n:n.order;if(!Array.isArray(s))return r.code(400).send({code:-1,message:"\u53C2\u6570\u5E94\u4E3A\u6587\u4EF6\u540D\u6570\u7EC4"});try{return await jJt(t.server,s),{code:0}}catch(i){return r.code(400).send({code:-1,message:i?.message||String(i)})}}),e.get("/settings",async(t,r)=>{try{return{code:0,data:await oJ(t.server)}}catch(n){return r.code(400).send({code:-1,message:n?.message||String(n)})}}),e.post("/settings",async(t,r)=>{try{return{code:0,data:await $Jt(t.server,t.body||{})}}catch(n){return r.code(400).send({code:-1,message:n?.message||String(n)})}})}var D4e=Ne(qE(),1),kJ=require("crypto");Cx();rK();dRe();var Kp=new Map,SU=new Map,MJ="";function P4e(e=""){return(0,kJ.createHash)("sha256").update(String(e||"")).digest("hex")}function Ser(){let e=Date.now();for(let[t,r]of SU)Number(r?.expiresAt||0)<=e&&SU.delete(t)}function O8n(e={}){let t=String(e.refreshToken||"").trim();if(!t)throw new Error("\u626B\u7801\u6210\u529F\uFF0C\u4F46\u672A\u83B7\u53D6\u5230\u53EF\u4FDD\u5B58\u7684 Cookie");return Ser(),SU.set(P4e(t),{accessToken:String(e.accessToken||"").trim(),refreshToken:t,deviceId:String(e.deviceId||"").trim(),expiresAt:Date.now()+10*60*1e3}),t}function D8n(e=""){Ser();let t=P4e(e);return SU.get(t)||null}function Ter(){let e=Date.now();for(let[t,r]of Kp)Number(r?.expiresAt||0)<=e&&Kp.delete(t);for(;Kp.size>20;){let t=Kp.keys().next().value;if(!t)break;Kp.delete(t)}}async function yer(e){Ter();let t=await dBt(e),r=Date.now(),n=(0,kJ.randomUUID)(),s={...t,sessionId:n,createdAt:r,expiresAt:r+Math.max(30,Number(t.expiresIn||120))*1e3};return Kp.set(n,s),s}function vU(e,t,r,n={}){return{sessionId:e?.sessionId||"",status:t,message:r,expiresAt:Number(e?.expiresAt||0),pollIntervalMs:Math.max(1500,Number(e?.interval||2)*1e3),loggedIn:n?.loggedIn===!0,updatedAt:n?.updatedAt||""}}async function ver(e,t){Ter();let r=Kp.get(String(t||""));if(!r)return vU(null,"EXPIRED","\u767B\u5F55\u4F1A\u8BDD\u4E0D\u5B58\u5728\u6216\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u751F\u6210\u4E8C\u7EF4\u7801");if(r.expiresAt<=Date.now())return Kp.delete(r.sessionId),vU(r,"EXPIRED","\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u751F\u6210");let n=await fBt(e,r,{persist:!1});if(n.status==="CONFIRMED"){Kp.delete(r.sessionId);let s=O8n(n);return{...vU(r,n.status,n.message||"\u626B\u7801\u6210\u529F\uFF0C\u8BF7\u70B9\u51FB\u5165\u5E93\u4FDD\u5B58"),cookie:s}}return(n.status==="EXPIRED"||n.status==="CANCELED")&&Kp.delete(r.sessionId),vU(r,n.status,n.message||"\u7B49\u5F85\u626B\u7801\u786E\u8BA4")}async function L4e(e){e.get("/config",async(t,r)=>{try{r.send({code:0,data:await jj(t.server)})}catch(n){console.error("[guangya/config] load failed:",n?.message||n),r.send({code:-1,message:"\u8BFB\u53D6\u5149\u9E2D\u64AD\u653E\u4EE3\u7406\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=Q4t(t.body);if(!n)return r.send({code:-1,message:"\u64AD\u653E\u4EE3\u7406\u914D\u7F6E\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});await t.server.db.push(lRe,n),r.send({code:0,data:n,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("[guangya/config] save failed:",n?.message||n),r.send({code:-1,message:"\u4FDD\u5B58\u5149\u9E2D\u64AD\u653E\u4EE3\u7406\u914D\u7F6E\u5931\u8D25"})}}),e.post("/login/session",async(t,r)=>{try{let n=await yer(t.server),s=await D4e.default.toDataURL(n.verificationUrl,{width:300,margin:1});r.send({code:0,data:{...vU(n,"NEW","\u8BF7\u4F7F\u7528\u5149\u9E2D\u626B\u63CF\u4E8C\u7EF4\u7801\u5E76\u5728\u624B\u673A\u4E0A\u786E\u8BA4\u767B\u5F55"),qrCode:s}})}catch(n){console.error("[guangya/login/session] create failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u751F\u6210\u5149\u9E2D\u767B\u5F55\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),e.post("/login/status",async(t,r)=>{try{let n=await ver(t.server,t.body?.sessionId);r.send({code:0,data:n})}catch(n){console.error("[guangya/login/status] poll failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u68C0\u67E5\u5149\u9E2D\u767B\u5F55\u72B6\u6001\u5931\u8D25"})}}),e.get("/qrcode",async(t,r)=>{try{let n=await yer(t.server);MJ=n.sessionId;let s=await D4e.default.toBuffer(n.verificationUrl,{width:300,height:300});r.type("image/png").send(s)}catch(n){r.code(500).send({code:-1,message:n?.message||String(n)})}}),e.post("/cookie",async(t,r)=>{if(!MJ)return r.send({code:-1,message:"\u8BF7\u5148\u70B9\u51FB\u4E8C\u7EF4\u7801\u751F\u6210\u767B\u5F55\u4F1A\u8BDD"});try{let n=await ver(t.server,MJ);if(["CONFIRMED","EXPIRED","CANCELED"].includes(n.status)&&(MJ=""),n.status!=="CONFIRMED")return r.send({code:-1,message:n.message||"\u7B49\u5F85\u626B\u7801\u786E\u8BA4"});r.send({code:0,data:n.cookie,message:"\u626B\u7801\u6210\u529F\uFF0C\u8BF7\u70B9\u51FB\u5165\u5E93\u4FDD\u5B58"})}catch(n){console.error("[guangya/cookie] poll failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u68C0\u67E5\u5149\u9E2D\u767B\u5F55\u72B6\u6001\u5931\u8D25"})}}),e.get("/cookie",async(t,r)=>{try{let n=await ARe(t.server,{reveal:!0});r.send({code:0,data:n.refreshToken||""})}catch(n){console.error("[guangya/cookie] load failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u5149\u9E2D Cookie \u5931\u8D25"})}}),e.put("/cookie",async(t,r)=>{let n=String(t.body?.cookie||"").trim();if(!n)return r.send({code:-1,message:"Cookie \u4E0D\u80FD\u4E3A\u7A7A"});try{let s=D8n(n);await j4(t.server,{accessToken:s?.accessToken||"",refreshToken:n,...s?.deviceId?{deviceId:s.deviceId}:{}}),SU.delete(P4e(n)),r.send({code:0,message:"Cookie \u5DF2\u5165\u5E93"})}catch(s){console.error("[guangya/cookie] save failed:",s?.message||s),r.send({code:-1,message:s?.message||"\u4FDD\u5B58\u5149\u9E2D Cookie \u5931\u8D25"})}}),e.get("/account",async(t,r)=>{r.send({code:0,data:await ARe(t.server)})}),e.put("/account",async(t,r)=>{await j4(t.server,t.body||{}),r.send({code:0})}),e.get("/cloud/settings",async(t,r)=>{let n={savePath:"root",savePathName:"\u6839\u76EE\u5F55",pollAttempts:20,pollIntervalMs:1500},s=await t.server.db.getObjectDefault("/guangya_cloud_settings",n),i={...n,...s||{}};(!i.savePath||i.savePath==="auto")&&(i.savePath="root",i.savePathName="\u6839\u76EE\u5F55"),r.send({code:0,data:i})}),e.get("/cloud/quota",async(t,r)=>{try{r.send({code:0,data:await TRe(t.server)})}catch(n){r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u5149\u9E2D\u4E91\u6DFB\u52A0\u989D\u5EA6\u72B6\u6001\u5931\u8D25"})}}),e.post("/cloud/settings",async(t,r)=>{let n=t.body||{},s=String(n.savePath||"root"),i=!s||s==="auto"?"root":s,a={savePath:i,savePathName:i==="root"?"\u6839\u76EE\u5F55":String(n.savePathName||"").slice(0,200),pollAttempts:Math.max(1,Math.min(50,Number(n.pollAttempts)||20)),pollIntervalMs:Math.max(200,Math.min(1e4,Number(n.pollIntervalMs)||1500))};await t.server.db.push("/guangya_cloud_settings",a),await xRe(t.server),r.send({code:0,data:a})}),e.get("/cloud/folders",async(t,r)=>{try{let n=String(t.query?.parentId||""),i=(await KT(t.server,n,1,200)).list.filter(a=>Number(a?.resType)===2&&a?.fileId).map(a=>({fileId:String(a.fileId),name:String(a.fileName||a.fileId)}));r.send({code:0,data:i})}catch(n){r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u5149\u9E2D\u76EE\u5F55\u5931\u8D25"})}}),e.post("/cloud/clear",async(t,r)=>{try{let n=t.body?.deleteFiles===!0,s=await mBt(t.server,{deleteFiles:n});await xRe(t.server),r.send({code:0,data:{...s,deleteFiles:n}})}catch(n){console.error("[guangya/cloud/clear]",n?.message),r.send({code:-1,message:n?.message||"\u6E05\u7406\u5149\u9E2D\u4E91\u8F6C\u5B58\u5931\u8D25"})}})}var Ttr=Ne(Str(),1);lJ();async function Z4e(e){await e.register(Ttr.default,{limits:{fileSize:Math.max(ON(),NC())}}),e.get("/",(t,r)=>{let n=String(globalThis.websiteBundle||"").replace(/<\/script>/gi,"<\\/script>");r.type("text/html").send(` - - - - - - - - MiraPlay - \u914D\u7F6E - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- - - - - - - - - - - `)}),e.register(t4e,{prefix:"/quark"}),e.register(QRe,{prefix:"/uc"}),e.register(n4e,{prefix:"/uc-tv"}),e.register(nK,{prefix:"/115"}),e.register($0,{prefix:"/sharemount"}),e.register($0,{prefix:"/115share"}),e.register($0,{prefix:"/alishare"}),e.register($0,{prefix:"/quarkshare"}),e.register($0,{prefix:"/ucshare"}),e.register($0,{prefix:"/123share"}),e.register($0,{prefix:"/139share"}),e.register($0,{prefix:"/baidushare"}),e.register($0,{prefix:"/smb"}),e.register(cLe,{prefix:"/mycloud"}),e.register(UDe,{prefix:"/muou"}),e.register(i4e,{prefix:"/tianyi"}),e.register(PDe,{prefix:"/wogg"}),e.register(GDe,{prefix:"/zhizhen"}),e.register(sDe,{prefix:"/tgsou"}),e.register(a4e,{prefix:"/pan123"}),e.register(l4e,{prefix:"/xunlei"}),e.register(f4e,{prefix:"/ali"}),e.register(p4e,{prefix:"/baidu"}),e.register(mX,{prefix:"/tgchannel"}),e.register(gke,{prefix:"/sites"}),e.register(_4e,{prefix:"/pans"}),e.register(A4e,{prefix:"/backup"}),e.register(s$,{prefix:"/danmu"}),e.register(hSe,{prefix:"/t4"}),e.register(TSe,{prefix:"/cms"}),e.register(OSe,{prefix:"/js"}),e.register(GQ,{prefix:"/pansou"}),e.register(y4e,{prefix:"/panlian"}),e.register(v4e,{prefix:"/filejin"}),e.register(T4e,{prefix:"/pan1"}),e.register(R4e,{prefix:"/guangyaqsxy"}),e.register(aDe,{prefix:"/bilibili"}),e.register(WDe,{prefix:"/ouge"}),e.register(ePe,{prefix:"/labi"}),e.register(cPe,{prefix:"/kuaiying"}),e.register(sPe,{prefix:"/huban"}),e.register(HDe,{prefix:"/erxiao"}),e.register(fPe,{prefix:"/duoduo"}),e.register(C4e,{prefix:"/live"}),e.register(gPe,{prefix:"/shandian"}),e.register(yPe,{prefix:"/wouniu"}),e.register(N4e,{prefix:"/zhuiju"}),e.register(O4e,{prefix:"/dudb"}),e.register(L4e,{prefix:"/guangya"})}var Itr=Ne(require("os"),1);function $5n(e){return e&&(e.family==="IPv4"||e.family===4)}function q5n(e){if(typeof e!="string")return!1;if(/^10\./.test(e)||/^192\.168\./.test(e)||/^169\.254\./.test(e))return!0;let t=e.match(/^172\.(\d{1,3})\./);if(!t)return!1;let r=Number(t[1]);return Number.isFinite(r)&&r>=16&&r<=31}function H5n(){return["en0","en1","en2","eth0","eth1","eth2","ens33","ens18","ens160","ens192","enp0s3","enp0s8","enp1s0","wlan0","wlan1","wlp2s0","wlp3s0"]}var V5n=/^(lo|docker|br-|veth|virbr|tun|tap|utun|ipsec|pdp_ip|awdl|llw|anpi|bridge|wg|tailscale|zt|ham|gif|stf|ap\d)/i;function j5n(e){return V5n.test(e)}function btr(e){return/^192\.168\./.test(e)?0:/^172\.(?:1[6-9]|2\d|3[01])\./.test(e)?1:/^10\./.test(e)?2:3}var Rtr=function(){let e=Itr.default.networkInterfaces(),t=new Set(H5n()),r=[];for(let n of Object.keys(e)){if(j5n(n))continue;let s=e[n];if(Array.isArray(s))for(let i of s)!$5n(i)||i.internal||q5n(i.address)&&r.push({name:n,address:i.address})}return r.length===0?"127.0.0.1":(r.sort((n,s)=>{let i=btr(n.address),a=btr(s.address);if(i!==a)return i-a;let o=t.has(n.name)?0:1,c=t.has(s.name)?0:1;return o-c}),r[0].address)};var YJ=Ne(require("fs"),1),sBe=Ne(require("path"),1),wtr=Ne(require("util"),1),Ntr=Ne(require("crypto"),1);pW();wi();Hd();xm();Hr();var Yt=null;function eBe(e){return!!e&&typeof e=="object"&&Object.keys(e).length>0}function Ctr(e){return e==null?!0:typeof e=="string"?e.trim()==="":!1}function tBe(e){return Ntr.default.createHash("md5").update(String(e??"")).digest("hex")}async function Q0(e,t,r){if(Ctr(r))return;let n=await e.getObjectDefault(t,"");Ctr(n)&&await e.push(t,r)}async function rBe(e){let t=e?.db,r=e?.config||{};if(!t)return;let n=String(r?.ali?.token||"");await Q0(t,`/ali/${tBe(n)}`,n);let s=String(r?.quark?.cookie||"");await Q0(t,`/quark/${tBe(s)}`,s);let i=String(r?.uc?.cookie||""),a=String(r?.uc?.token||""),o=String(r?.uc?.ut||"");await Q0(t,"/uc/cookie",i),await Q0(t,"/uc/token",a),await Q0(t,"/uc/ut",o);let c=String(r?.baidu?.cookie||"");await Q0(t,"/baidu_driver/baidu_cookie",c);let u=String(r?.y115?.cookie||"");await Q0(t,`/y115/${tBe(u)}`,u);let l=String(r?.pan123?.username||""),d=String(r?.pan123?.password||"");await Q0(t,"/pan123/pan_passport",l),await Q0(t,"/pan123/pan_password",d);let f=String(r?.tianyi?.username||""),h=String(r?.tianyi?.password||"");await Q0(t,"/tyi/cloud_account",f),await Q0(t,"/tyi/cloud_password",h)}var K5n=["duoduo","muou","leijing","wogg","zhizhen","ouge","labi","kuaiying","huban","erxiao","shandian"];async function nBe(e){if(e?.db)for(let r of K5n)await Kw(e,r)}var G5n="cat.log",z5n=()=>{let e=String(G5n||"").trim();return e?sBe.default.join(process.env.NODE_PATH||".",e):""},zJ=!1,xU=null;function CU(e,t){let r=xU;if(!r||r.destroyed||r.writableEnded)return;let n=new Date().toISOString(),s=wtr.default.format(...t);r.write(`[${n}] [${e}] ${s} -`)}function Y5n(){let e=z5n();if(!e){zJ||(console.log("Log file disabled (LOG_FILE_NAME is empty)."),zJ=!0);return}if(xU){try{xU.end()}catch{}xU=null}try{YJ.default.truncateSync(e,0)}catch{}if(xU=YJ.default.createWriteStream(e,{flags:"w"}),!zJ){let t=console.log,r=console.error,n=console.warn;console.log=(...s)=>{CU("INFO",s),t.apply(console,s)},console.error=(...s)=>{CU("ERROR",s),r.apply(console,s)},console.warn=(...s)=>{CU("WARN",s),n.apply(console,s)},process.on("uncaughtException",s=>{CU("FATAL",[s]),r("Uncaught Exception:",s)}),process.on("unhandledRejection",s=>{CU("ERROR",["Unhandled Rejection:",s]),r("Unhandled Rejection:",s)}),zJ=!0}console.log(`Log system initialized. Path: ${e}`)}async function Q5n(e){Y5n(),console.log("\u5F00\u59CB\u542F\u52A8\u670D\u52A1\u5668...");try{if(Yt=(0,xtr.default)({serverFactory:catServerFactory,forceCloseConnections:!0,logger:process.env.NODE_ENV!=="development",maxParamLength:10240}),!Yt)throw new Error("Server initialization failed");Yt.isReady=!1;let t=new Set,r=1500,n=0;globalThis.messageToDart=Yt.messageToDart=async c=>{let u=c?.action||"unknown",l=Number(catDartServerPort()),d=u==="getPlayInfo"?8e3:u==="queryProfile"||u==="saveProfile"?1500:2500;if(!Number.isFinite(l)||l<=0||u!=="getPlayInfo"&&Date.now()0&&f===l){let _=`self:${u}`;return t.has(_)||(console.warn(`[messageToDart] \u8DF3\u8FC7\u81EA\u8C03\u7528: action=${u}, port=${l}`),t.add(_)),null}let h=["127.0.0.1"],p=null,m=!1;for(let _ of h)try{return(await ve.post(`http://${_}:${l}/msg`,c,{timeout:d})).data}catch(g){p=g;let y=g?.response?.status;if(y===400||y===404){let b=`${y}:${u}`;return t.has(b)||(console.warn(`[messageToDart] Dart\u901A\u4FE1\u6682\u672A\u5C31\u7EEA: action=${u}, status=${y}`),t.add(b)),null}let A=g?.code||"",E=g?.message||"";if(A==="ECONNRESET"||A==="ECONNREFUSED"||A==="ECONNABORTED"||E.includes("socket hang up")){m=!0;let b=`transient:${_}:${u}:${A||E}`;t.has(b)||(console.warn(`[messageToDart] Dart\u6865\u63A5\u6682\u4E0D\u53EF\u7528\uFF0C\u5DF2\u964D\u7EA7\u5FFD\u7565: action=${u}, host=${_}, code=${A||"unknown"}, message=${E}`),t.add(b));break}}return m&&(n=Date.now()+r),p&&console.error("[messageToDart] \u5931\u8D25:",p.message),null},typeof Yt.address!="function"&&(Yt.address=function(){if(!this.server)return{port:0,url:"",dynamic:"js2p://_WEB_"};let c=this.server.address();if(!c)return{port:0,url:"",dynamic:"js2p://_WEB_"};let u=Rtr();return c.url=`http://${u}:${c.port}`,c.dynamic="js2p://_WEB_",c}),Yt.addHook("onError",async(c,u,l)=>(console.error("\u670D\u52A1\u5668\u9519\u8BEF:",tS(l)),l.statusCode||(l.statusCode=500),l)),Yt.stop=!1,Yt.config=e;let s=sBe.default.join(process.env.NODE_PATH||".","test0.db.json"),i=(()=>{try{return YJ.default.existsSync(s)}catch{return!1}})();Yt.db=new QJ.JsonDB(new QJ.Config(s,!0,!0,"/",!0)),Yt.firstRun=!i,Yt.userWroteSinceBoot=!1;try{Yt.firstRun&&eBe(e)&&(await Yt.db.push("/",e),console.log("\u9996\u6B21\u542F\u52A8\uFF1A\u5DF2\u7528 index.config.js \u521D\u59CB\u5316 db")),await rBe(Yt),await nBe(Yt)}catch(c){if(console.warn("\u521D\u59CB\u5316 db \u5931\u8D25\uFF0C\u5C1D\u8BD5\u56DE\u9000\u9ED8\u8BA4\u914D\u7F6E:",c.message),eBe(e))try{await Yt.db.push("/",e),await rBe(Yt),await nBe(Yt)}catch(u){console.error("\u4FDD\u5B58\u9ED8\u8BA4\u914D\u7F6E\u5931\u8D25:",u)}}if((()=>{if(!Yt.db)return;let c=Yt.db.push.bind(Yt.db),u=Yt.db.delete.bind(Yt.db),l=null,d="",f=!1,h=!1,p=async()=>{try{let g=await Yt.db.getData("/"),y=JSON.stringify(g);if(y===d)return;d=y,await en.saveProfile(g)}catch(g){console.warn("\u5F02\u6B65\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25:",g.message)}},m=()=>{if(f){h=!0;return}l&&clearTimeout(l),l=setTimeout(async()=>{l=null,f=!0;try{await p()}finally{f=!1,h&&(h=!1,m())}},300)},_=(g,y)=>{let A=g[0];if(typeof A!="string")return g;if(!A)throw new TypeError(`\u6570\u636E\u5E93${y}\u8DEF\u5F84\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u6839\u8DEF\u5F84\u8BF7\u663E\u5F0F\u4F7F\u7528 /`);if(A.startsWith("/"))return g;let E=`/${A}`;return console.warn(`[\u6570\u636E\u5E93${y}] \u5DF2\u5C06\u76F8\u5BF9\u8DEF\u5F84\u89C4\u8303\u4E3A\u7EDD\u5BF9\u8DEF\u5F84:`,A,"->",E),[E,...g.slice(1)]};Yt.db.push=async(...g)=>{try{let y=await c(..._(g,"push"));return Yt.userWroteSinceBoot=!0,m(),y}catch(y){throw console.error("\u6570\u636E\u5E93push\u64CD\u4F5C\u5931\u8D25:",y),y}},Yt.db.delete=async(...g)=>{try{let y=await u(..._(g,"delete"));return Yt.userWroteSinceBoot=!0,m(),y}catch(y){throw console.error("\u6570\u636E\u5E93delete\u64CD\u4F5C\u5931\u8D25:",y),y}}})(),process.env.SKIP_DANMU_API_BOOT!=="1")try{await uT()}catch(c){console.error("\u542F\u52A8 danmu_api \u5931\u8D25:",c)}try{xE(await g4e(Yt))}catch(c){console.warn("\u521D\u59CB\u5316Pans\u7F13\u5B58\u5931\u8D25:",c.message),xE([])}console.log("\u6CE8\u518C\u8DEF\u7531..."),Yt.register(vJ,{db:Yt.db,config:e}),Yt.register(Z4e,{prefix:"/website"});let o=c=>{let u=Number(process.env.DEV_HTTP_PORT||c),l=String(process.env.DEV_HTTP_HOST||"0.0.0.0");if(console.log(`\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668\u5728\u7AEF\u53E3 ${u}...`),!Yt||!Yt.listen){console.error("server \u5BF9\u8C61\u65E0\u6548\uFF0C\u65E0\u6CD5\u542F\u52A8");return}try{Yt.listen({port:u,host:l},(d,f)=>{if(d)if(console.error("\u670D\u52A1\u5668\u542F\u52A8\u9519\u8BEF:",d),d.code==="EADDRINUSE"){if(process.env.DEV_HTTP_PORT){console.error(`\u5F00\u53D1\u7AEF\u53E3 ${u} \u5DF2\u88AB\u5360\u7528\uFF0C\u8BF7\u5148\u91CA\u653E\u540E\u91CD\u8BD5`);return}console.log(`\u7AEF\u53E3 ${u} \u5DF2\u88AB\u5360\u7528\uFF0C\u5C1D\u8BD5\u4E0B\u4E00\u4E2A\u53EF\u7528\u7AEF\u53E3...`),o(c+1)}else setTimeout(()=>{console.log("\u91CD\u65B0\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668..."),o(c)},2e3);else console.log(`\u670D\u52A1\u5668\u542F\u52A8\u6210\u529F: ${f}`),Yt.isReady=!0,setTimeout(async()=>{try{await en.notifyServerStarted(f)}catch(h){console.warn("\u901A\u77E5 Dart \u7AEF\u542F\u52A8\u72B6\u6001\u5931\u8D25:",h.message)}if(Yt.firstRun)try{let h=await en.queryProfile();if(!eBe(h))return;if(Yt.userWroteSinceBoot){console.log("\u542F\u52A8\u540E\u5DF2\u53D1\u751F\u7528\u6237\u5199\u5165\uFF0C\u8DF3\u8FC7 Dart profile \u8986\u76D6");return}await Yt.db.push("/",h),await rBe(Yt),await nBe(Yt),console.log("\u5DF2\u7528 Dart profile \u5B8C\u6210\u9996\u6B21\u540C\u6B65")}catch(h){console.warn("\u9996\u6B21\u540C\u6B65 Dart profile \u5931\u8D25:",h?.message||h)}},500)})}catch(d){console.error("\u76D1\u542C\u7AEF\u53E3\u65F6\u53D1\u751F\u5F02\u5E38:",d),setTimeout(()=>{console.log("\u91CD\u65B0\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668..."),o(c)},2e3)}};o(9988)}catch(t){throw console.error("\u670D\u52A1\u5668\u521D\u59CB\u5316\u5931\u8D25:",t),Yt=null,t}}async function W5n(){if(console.log("\u6B63\u5728\u505C\u6B62\u670D\u52A1\u5668..."),Yt)try{await Yt.close(),console.log("\u670D\u52A1\u5668\u5DF2\u505C\u6B62")}catch(e){console.error("\u505C\u6B62\u670D\u52A1\u5668\u65F6\u51FA\u9519:",e)}finally{Yt.stop=!0,Yt.isReady=!1,Yt=null}else console.warn("server \u5BF9\u8C61\u4E3A null")}0&&(module.exports={start,stop}); -/*! Bundled license information: - -forwarded/index.js: - (*! - * forwarded - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - *) - -proxy-addr/index.js: - (*! - * proxy-addr - * Copyright(c) 2014-2016 Douglas Christopher Wilson - * MIT Licensed - *) - -toad-cache/dist/toad-cache.cjs: - (** - * toad-cache - * - * @copyright 2024 Igor Savin - * @license MIT - * @version 3.7.0 - *) - -cookie/index.js: - (*! - * cookie - * Copyright(c) 2012-2014 Roman Shtylman - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *) - -light-my-request/lib/form-data.js: - (*! formdata-polyfill. MIT License. Jimmy Wärting *) - -mime-db/index.js: - (*! - * mime-db - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015-2022 Douglas Christopher Wilson - * MIT Licensed - *) - -mime-types/index.js: - (*! - * mime-types - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *) - -web-streams-polyfill/dist/ponyfill.es2018.js: - (** - * @license - * web-streams-polyfill v3.3.3 - * Copyright 2024 Mattias Buelens, Diwank Singh Tomer and other contributors. - * This code is released under the MIT license. - * SPDX-License-Identifier: MIT - *) - -fetch-blob/index.js: - (*! fetch-blob. MIT License. Jimmy Wärting *) - -formdata-polyfill/esm.min.js: - (*! formdata-polyfill. MIT License. Jimmy Wärting *) - -node-domexception/index.js: - (*! node-domexception. MIT License. Jimmy Wärting *) - -pako/dist/pako.esm.mjs: - (*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) *) - -chokidar/esm/index.js: - (*! chokidar - MIT License (c) 2012 Paul Miller (paulmillr.com) *) - -crypto-js/ripemd160.js: - (** @preserve - (c) 2012 by Cédric Mesnil. All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - *) - -crypto-js/mode-ctr-gladman.js: - (** @preserve - * Counter block mode compatible with Dr Brian Gladman fileenc.c - * derived from CryptoJS.mode.CTR - * Jan Hruby jhruby.web@gmail.com - *) - -hls-parser/index.js: - (*! Copyright Kuu Miyazaki. SPDX-License-Identifier: MIT *) - -sax/lib/sax.js: - (*! http://mths.be/fromcodepoint v0.1.0 by @mathias *) - -node-rsa/src/NodeRSA.js: - (*! - * RSA library for Node.js - * - * Author: rzcoder - * License MIT - *) - -rwlock/lib/lock.js: - (*! ReadWriteLock - v5.0.0 - 2015-01-16 - * Author: Alberto La Rocca (https://github.com/71104) - * Released under the MIT license - * Copyright (c) 2015 Alberto La Rocca *) -*/ - - if (typeof globalThis.__catpawBootLog === 'function') { - var __catpawExportKeys = []; - try { - if (typeof module !== 'undefined' && module && module.exports) { - __catpawExportKeys = Object.keys(module.exports); - } - } catch (_) {} - globalThis.__catpawBootLog('bundle fully loaded module.exports keys=' + __catpawExportKeys.join(',')); - } -} catch (e) { - if (typeof globalThis.__catpawBootLog === 'function') { - var __catpawErr = e && (e.stack || e.message) ? (e.stack || e.message) : e; - globalThis.__catpawBootLog('FATAL bundle eval: ' + __catpawErr); - } - throw e; -} - diff --git a/catvod/Motorola/index.js.md5 b/catvod/Motorola/index.js.md5 deleted file mode 100644 index 722c4471..00000000 --- a/catvod/Motorola/index.js.md5 +++ /dev/null @@ -1 +0,0 @@ -1eaf53d324d856f1618ae45f89399005 \ No newline at end of file diff --git a/catvod/lmentor/index.config.js b/catvod/lmentor/index.config.js index fd66034f..be85012e 100644 --- a/catvod/lmentor/index.config.js +++ b/catvod/lmentor/index.config.js @@ -34,7 +34,12 @@ var index_config_default = { token: "" }, y115: { - cookie: "" + cookie: "", + offline: { + savePath: "0", + pollAttempts: 6, + pollIntervalMs: 1500 + } }, baidu: { cookie: "" @@ -48,98 +53,58 @@ var index_config_default = { password: "" }, muou: { - urls: [ - "https://123.666291.xyz", - "https://666.666291.xyz", - "https://www.muou.asia", - "https://www.muou.site" - ] + urls: ["https://123.666291.xyz", "https://666.666291.xyz", "https://www.muou.asia", "https://www.muou.site"] }, wogg: { - urls: [ - "https://wogg.333232.xyz", - "https://wogg.xxooo.cf", - "https://woggpan.888484.xyz", - "https://www.wogg.lol", - "https://www.wogg.one" - ] + urls: ["https://wogg.333232.xyz", "https://wogg.xxooo.cf", "https://woggpan.888484.xyz", "https://www.wogg.lol", "https://www.wogg.one"] }, leijing: { - urls: [ - "https://www.leijing1.com", - "https://leijing1.com", - "https://www.leijing.xyz" - ] + urls: ["https://www.leijing1.com", "https://leijing1.com", "https://www.leijing.xyz"] }, duoduo: { - urls: [ - "https://tv.214521.xyz", - "https://tv.yydsys.cc", - "https://tv.yydsys.top" - ] + urls: ["https://tv.214521.xyz", "https://tv.yydsys.cc", "https://tv.yydsys.top"] }, zhizhen: { - urls: [ - "http://www.miqk.cc", - "https://mihdr.top", - "https://www.mihdr.top", - "https://www.miqk.cc", - "https://www.zhizhenpan.fun", - "https://xiaomi666.fun", - "https://xiaomiai.site" - ] + urls: ["http://www.miqk.cc", "https://mihdr.top", "https://www.mihdr.top", "https://www.miqk.cc", "https://www.zhizhenpan.fun", "https://xiaomi666.fun", "https://xiaomiai.site"] }, ouge: { - urls: [ - "https://woog.430520.xyz", - "https://woog.nxog.eu.org", - "https://woog.nxog.fun" - ] + urls: ["https://woog.430520.xyz", "https://woog.nxog.eu.org", "https://woog.nxog.fun"] }, labi: { - urls: [ - "http://feimo.fun", - "http://fmao.shop", - "http://fmao.site", - "http://xiaocge.fun", - "http://xiaocgege.shop", - "https://feimao666.fun" - ] + urls: ["http://feimo.fun", "http://fmao.shop", "http://fmao.site", "http://xiaocge.fun", "http://xiaocgege.shop", "https://feimao666.fun"] }, kuaiying: { - urls: [ - "http://xsayang.fun:12512", - "http://154.201.83.50:12512" - ] + urls: ["http://38.76.197.172:12521", "http://xsayang.fun:12512"] }, huban: { - urls: [ - "http://103.45.162.207:20720", - "http://154.222.27.33:20720", - "http://xhban.xyz:20720" - ] + urls: ["http://38.76.197.172:16969", "http://xhban.xyz:20720"] }, erxiao: { - urls: [ - "https://www.2xiaopan.top/", - "https://2xiaopan.top/", - "https://www.erxiaozhan.top/", - "https://www.2xiaozhan.top/", - "https://wexwp.cc/" - ] + urls: ["https://www.2xiaopan.top/", "https://2xiaopan.top/", "https://www.erxiaozhan.top/", "https://www.2xiaozhan.top/", "https://wexwp.cc/"] }, shandian: { - urls: [ - "https://sd.sduc.site" - ] + urls: ["http://shandian.blog", "https://sd.sduc.site"] + }, + wouniu: { + urls: ["https://zmi.kdns.fr"] }, tgsou: { - tgPic: false, + tgPic: true, count: 0, - url: "", - channelUsername: "" + url: "https://tgsou.lmentor.dpdns.org", + channelUsername: "tgsearchers7,Aliyun_4K_Movies,bdbdndn11,yunpanx,bsbdbfjfjff,yp123pan,yunpanxunlei,tianyifc,BaiduCloudDisk,txtyzy,peccxinpd,gotopan,PanjClub,baicaoZY,MCPH01,MCPH02,MCPH03,bdwpzhpd,ysxb48,jdjdn1111,yggpan,MCPH086,zaihuayun,Q66Share,ucwpzy,shareAliyun,alyp_1,dianyingshare,Quark_Movies,ydypzyfx,ucquark,xx123pan,yingshifenxiang123,zyfb123,tyypzhpd,tianyirigeng,cloudtianyi,hdhhd21,Lsp115,oneonefivewpfx,qixingzhenren,taoxgzy,Channel_Shares_115,tyysypzypd,vip115hot,wp123zy,yunpan139,yunpan189,yunpanuc,yydf_hzl,leoziyuan,Q_dongman,yoyokuakeduanju,TG654TG,WFYSFX02,QukanMovie,yeqingjie_GJG666,movielover8888_film3,Baidu_netdisk,D_wusun,FLMdongtianfudi,KaiPanshare,QQZYDAPP,rjyxfx,PikPak_Share_Channel,btzhi,newproductsourcing,cctv1211,duan_ju,QuarkFree,yunpanNB,kkdj001,xxzlzn,pxyunpanxunlei,jxwpzy,kuakedongman,liangxingzhinan,xiangnikanj,guoman4K,zdqxm,kduanju,cilidianying,CBduanju,SharePanFilms,dzsgx,BooksRealm,Oscar_4Kmovies,douerpan,baidu_yppan,Q_jilupian,Netdisk_Movies,yunpanquark,ammmziyuan,ciliziyuanku,cili8888,jzmm_123pan,Q_dianying,domgmingapk,dianying4k,q_dianshiju,tgbokee,ucshare,godupan,gokuapan,gimy115,WFYSFX03,peccxin,Movie888035,xlwpzy,zyywpzy,wydwpzy,gimy100,ucshare,gimy115iso,aliyunys,clouddriveresources,XunLeiPinDao,ydwpzy,a123fxme,WPpindao,kuyupan,djya5,yingshiziyuanpindao,zh_vip,pan_guangya,zyzhpd123,zhenyingsg,gdsharing,weichengduanju666,yingxiangkj,duanjucabian,kuakenetpan,kelea555,tianyiyunpanpindao,PikPakShareChannel,tgyy678,xuexixiaonengshou1,google_yppan,ayzgzf" + }, + tgchannel: { + url: "https://t.me", + count: 4, + enableImage: true, + homeChannelUsername: ["tgsearchers7", "douerpan"], + channelUsername: ["Q66Share", "alyp_TV", "ucpanpan", "ucquark", "tianyirigeng", "hao115", "guaguale115", "ydypzyfx", "tgsearchers6", "NewQuark", "dianyingshare", "XiangxiuNB", "yunpanpan", "kuakeyun", "Quark_Movies", "qixingzhenren", "longzbija", "alyp_4K_Movies", "yunpanshare", "shareAliyun", "alyp_1", "xx123pan"], + channelRemark: { + tgsearchers7: "资源宇宙", + douerpan: "豆儿盘" + } }, - tgchannel: {}, sites: { list: [] }, @@ -159,8 +124,9 @@ var index_config_default = { { address: "http://47.107.188.112:6008/87654321", name: "公益1" }, { address: "http://ecs.dysobo.cn:9321/87654321", name: "公益2" } ], + format: "xml", autoPush: true, - autoPushBlacklist: ["aishangtingshu", "aiting_music", "tingleme", "tingyou", "bili_all", "88kanqiu", "douyu", "fengye_music", "douyinlive", "HuyaLive", "live"] + autoPushBlacklist: ["bili_all", "bili_official", "88kanqiu", "live"] }, t4: { list: [] @@ -169,7 +135,7 @@ var index_config_default = { list: [] }, pansou: { - api_urls: "https://so.252035.xyz", + api_urls: "https://so.hk.111651.xyz", channels: "", plugins: "", cloud_types: "", @@ -221,6 +187,11 @@ var index_config_default = { enabled: true } ], + alist_tvbox: { + base_url: "http://127.0.0.1:4567", + token: "", + custom_classes: "" + }, webdav: [ { name: "亿苯正经", diff --git a/catvod/lmentor/index.config.js.md5 b/catvod/lmentor/index.config.js.md5 index af01f9d9..35dd880a 100644 --- a/catvod/lmentor/index.config.js.md5 +++ b/catvod/lmentor/index.config.js.md5 @@ -1 +1 @@ -d07e3e1dd76caa69a1427ca869296fa2 \ No newline at end of file +43e4c1f017668693c7281731648fc634 \ No newline at end of file diff --git a/catvod/lmentor/index.js b/catvod/lmentor/index.js index 5d7890a6..26b3295d 100644 --- a/catvod/lmentor/index.js +++ b/catvod/lmentor/index.js @@ -1,10 +1,46 @@ +(function(){ + var firstBootLogWrite = true; + var bootLogPath = ''; + function bootSafeString(value) { + try { return String(value); } catch (_) { return '[unstringifiable]'; } + } + function bootBaseDir() { + try { + if (typeof process !== 'undefined' && process && process.env && process.env.NODE_PATH) { + return process.env.NODE_PATH; + } + } catch (_) {} + try { + if (typeof process !== 'undefined' && process && typeof process.cwd === 'function') { + return process.cwd(); + } + } catch (_) {} + return '.'; + } + function bootLog(message) { + try { + var req = eval('require'); + var fs = req('fs'); + var path = req('path'); + if (!bootLogPath) bootLogPath = path.join(bootBaseDir(), 'cat-boot.log'); + var line = '[' + new Date().toISOString() + '] ' + bootSafeString(message) + '\n'; + fs.writeFileSync(bootLogPath, line, { flag: firstBootLogWrite ? 'w' : 'a' }); + firstBootLogWrite = false; + } catch (_) {} + } + globalThis.__catpawBootLog = bootLog; + bootLog('boot banner ran node=' + (typeof process !== 'undefined' && process ? process.version : 'unknown') + ' cwd=' + bootBaseDir()); +})(); + +try { + globalThis.websiteBundle = (() => { return [ '(function() {', ' const exports = {};', ' const module = { exports };', - "var _f=Object.create;var In=Object.defineProperty,Bf=Object.defineProperties,Lf=Object.getOwnPropertyDescriptor,Mf=Object.getOwnPropertyDescriptors,Vf=Object.getOwnPropertyNames,Sr=Object.getOwnPropertySymbols,zf=Object.getPrototypeOf,Qo=Object.prototype.hasOwnProperty,is=Object.prototype.propertyIsEnumerable;var as=(e,t,n)=>t in e?In(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,y=(e,t)=>{for(var n in t||(t={}))Qo.call(t,n)&&as(e,n,t[n]);if(Sr)for(var n of Sr(t))is.call(t,n)&&as(e,n,t[n]);return e},E=(e,t)=>Bf(e,Mf(t));var It=(e,t)=>{var n={};for(var r in e)Qo.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Sr)for(var r of Sr(e))t.indexOf(r)<0&&is.call(e,r)&&(n[r]=e[r]);return n};var fe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),$f=(e,t)=>{for(var n in t)In(e,n,{get:t[n],enumerable:!0})},ss=(e,t,n,r)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of Vf(t))!Qo.call(e,o)&&o!==n&&In(e,o,{get:()=>t[o],enumerable:!(r=Lf(t,o))||r.enumerable});return e};var W=(e,t,n)=>(n=e!=null?_f(zf(e)):{},ss(t||!e||!e.__esModule?In(n,\"default\",{value:e,enumerable:!0}):n,e)),Uf=e=>ss(In({},\"__esModule\",{value:!0}),e);var J=fe((L1,ls)=>{ls.exports=window.React});var Er=fe((M1,ds)=>{ds.exports=window.ReactDOM});var us=fe(ea=>{\"use strict\";var cs=Er();ea.createRoot=cs.createRoot,ea.hydrateRoot=cs.hydrateRoot;var V1});var et=fe(($1,fs)=>{fs.exports=window.antd});var Tt=fe((U1,ps)=>{ps.exports=window.axios});var gs=fe((W1,ms)=>{ms.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r{\"use strict\";var Wf=gs(),hs={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Gf=\"Copy to clipboard: #{key}, Enter\";function Hf(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function qf(e,t){var n,r,o,a,i,s,l=!1;t||(t={}),n=t.debug||!1;try{o=Wf(),a=document.createRange(),i=document.getSelection(),s=document.createElement(\"span\"),s.textContent=e,s.ariaHidden=\"true\",s.style.all=\"unset\",s.style.position=\"fixed\",s.style.top=0,s.style.clip=\"rect(0, 0, 0, 0)\",s.style.whiteSpace=\"pre\",s.style.webkitUserSelect=\"text\",s.style.MozUserSelect=\"text\",s.style.msUserSelect=\"text\",s.style.userSelect=\"text\",s.addEventListener(\"copy\",function(f){if(f.stopPropagation(),t.format)if(f.preventDefault(),typeof f.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=hs[t.format]||hs.default;window.clipboardData.setData(d,e)}else f.clipboardData.clearData(),f.clipboardData.setData(t.format,e);t.onCopy&&(f.preventDefault(),t.onCopy(f.clipboardData))}),document.body.appendChild(s),a.selectNodeContents(s),i.addRange(a);var u=document.execCommand(\"copy\");if(!u)throw new Error(\"copy command was unsuccessful\");l=!0}catch(f){n&&console.error(\"unable to copy using execCommand: \",f),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),l=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),r=Hf(\"message\"in t?t.message:Gf),window.prompt(r,e)}}finally{i&&(typeof i.removeRange==\"function\"?i.removeRange(a):i.removeAllRanges()),s&&document.body.removeChild(s),o()}return l}bs.exports=qf});var Is=fe((mw,Nr)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var o=\"\",a=0;a{\"use strict\";var Jn=J();function Rg(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Yg=typeof Object.is==\"function\"?Object.is:Rg,Kg=Jn.useSyncExternalStore,Xg=Jn.useRef,Jg=Jn.useEffect,Zg=Jn.useMemo,Qg=Jn.useDebugValue;Pd.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var a=Xg(null);if(a.current===null){var i={hasValue:!1,value:null};a.current=i}else i=a.current;a=Zg(function(){function l(m){if(!u){if(u=!0,f=m,m=r(m),o!==void 0&&i.hasValue){var x=i.value;if(o(x,m))return d=x}return d=m}if(x=d,Yg(f,m))return x;var v=r(m);return o!==void 0&&o(x,v)?(f=m,x):(f=m,d=v)}var u=!1,f,d,c=n===void 0?null:n;return[function(){return l(t())},c===null?void 0:function(){return l(c())}]},[t,n,r,o]);var s=Kg(e,a[0],a[1]);return Jg(function(){i.hasValue=!0,i.value=s},[s]),Qg(s),s}});var Ld=fe((RS,Bd)=>{\"use strict\";Bd.exports=_d()});var Ii=fe((y2,Nu)=>{function T0(e){var t=typeof e;return e!=null&&(t==\"object\"||t==\"function\")}Nu.exports=T0});var Au=fe((w2,ku)=>{var N0=typeof global==\"object\"&&global&&global.Object===Object&&global;ku.exports=N0});var Ti=fe((C2,Fu)=>{var k0=Au(),A0=typeof self==\"object\"&&self&&self.Object===Object&&self,F0=k0||A0||Function(\"return this\")();Fu.exports=F0});var _u=fe((O2,Pu)=>{var P0=Ti(),_0=function(){return P0.Date.now()};Pu.exports=_0});var Lu=fe((S2,Bu)=>{var B0=/\\s/;function L0(e){for(var t=e.length;t--&&B0.test(e.charAt(t)););return t}Bu.exports=L0});var Vu=fe((E2,Mu)=>{var M0=Lu(),V0=/^\\s+/;function z0(e){return e&&e.slice(0,M0(e)+1).replace(V0,\"\")}Mu.exports=z0});var Ni=fe((D2,zu)=>{var $0=Ti(),U0=$0.Symbol;zu.exports=U0});var Gu=fe((I2,Wu)=>{var $u=Ni(),Uu=Object.prototype,W0=Uu.hasOwnProperty,G0=Uu.toString,vr=$u?$u.toStringTag:void 0;function H0(e){var t=W0.call(e,vr),n=e[vr];try{e[vr]=void 0;var r=!0}catch(a){}var o=G0.call(e);return r&&(t?e[vr]=n:delete e[vr]),o}Wu.exports=H0});var qu=fe((T2,Hu)=>{var q0=Object.prototype,j0=q0.toString;function R0(e){return j0.call(e)}Hu.exports=R0});var Ku=fe((N2,Yu)=>{var ju=Ni(),Y0=Gu(),K0=qu(),X0=\"[object Null]\",J0=\"[object Undefined]\",Ru=ju?ju.toStringTag:void 0;function Z0(e){return e==null?e===void 0?J0:X0:Ru&&Ru in Object(e)?Y0(e):K0(e)}Yu.exports=Z0});var Ju=fe((k2,Xu)=>{function Q0(e){return e!=null&&typeof e==\"object\"}Xu.exports=Q0});var Qu=fe((A2,Zu)=>{var e1=Ku(),t1=Ju(),n1=\"[object Symbol]\";function r1(e){return typeof e==\"symbol\"||t1(e)&&e1(e)==n1}Zu.exports=r1});var rf=fe((F2,nf)=>{var o1=Vu(),ef=Ii(),a1=Qu(),tf=NaN,i1=/^[-+]0x[0-9a-f]+$/i,s1=/^0b[01]+$/i,l1=/^0o[0-7]+$/i,d1=parseInt;function c1(e){if(typeof e==\"number\")return e;if(a1(e))return tf;if(ef(e)){var t=typeof e.valueOf==\"function\"?e.valueOf():e;e=ef(t)?t+\"\":t}if(typeof e!=\"string\")return e===0?e:+e;e=o1(e);var n=s1.test(e);return n||l1.test(e)?d1(e.slice(2),n?2:8):i1.test(e)?tf:+e}nf.exports=c1});var sf=fe((P2,af)=>{var u1=Ii(),ki=_u(),of=rf(),f1=\"Expected a function\",p1=Math.max,m1=Math.min;function g1(e,t,n){var r,o,a,i,s,l,u=0,f=!1,d=!1,c=!0;if(typeof e!=\"function\")throw new TypeError(f1);t=of(t)||0,u1(n)&&(f=!!n.leading,d=\"maxWait\"in n,a=d?p1(of(n.maxWait)||0,t):a,c=\"trailing\"in n?!!n.trailing:c);function m(D){var P=r,N=o;return r=o=void 0,u=D,i=e.apply(N,P),i}function x(D){return u=D,s=setTimeout(C,t),f?m(D):i}function v(D){var P=D-l,N=D-u,F=t-P;return d?m1(F,a-N):F}function b(D){var P=D-l,N=D-u;return l===void 0||P>=t||P<0||d&&N>=a}function C(){var D=ki();if(b(D))return h(D);s=setTimeout(C,v(D))}function h(D){return s=void 0,c&&r?m(D):(r=o=void 0,i)}function O(){s!==void 0&&clearTimeout(s),u=0,r=l=o=s=void 0}function w(){return s===void 0?i:h(ki())}function S(){var D=ki(),P=b(D);if(r=arguments,o=this,l=D,P){if(s===void 0)return x(l);if(d)return clearTimeout(s),s=setTimeout(C,t),m(l)}return s===void 0&&(s=setTimeout(C,t)),i}return S.cancel=O,S.flush=w,S}af.exports=g1});var _1={};$f(_1,{AccountInfo:()=>qo,AliQrcodeCard:()=>Bi,CMS:()=>Ef,DanmuSetting:()=>Of,EmbyConfigWithSave:()=>ji,Pans:()=>Vi,PansouSetting:()=>Ri,QrcodeCard:()=>_t,QrcodeImage:()=>Ki,SiteDomainSetting:()=>Xe,Sites:()=>qi,T4:()=>Sf,TGChannel:()=>Gi,TGSou:()=>Wi,UCDualQrcodeCard:()=>Mi,UCUt:()=>Hi,XunleiAccountInfo:()=>Li,renderClient:()=>P1});module.exports=Uf(_1);var p=W(J(),1),wf=W(us(),1),g=W(et(),1),wr=W(Tt(),1),Ko=W(xs(),1);var vs=W(J()),jf=(0,vs.createContext)({}),Dr=jf;function K(){return K=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);nparseFloat(o));for(let o=0;o<3;o+=1)r[o]=t(r[o]||0,n[o]||\"\",o);return n[3]?r[3]=n[3].includes(\"%\")?r[3]/100:r[3]:r[3]=1,r}var Ts=(e,t,n)=>n===0?e:e/100;function Tn(e,t){let n=t||255;return e>n?n:e<0?0:e}var Lt=class e{constructor(t){Se(this,\"isValid\",!0),Se(this,\"r\",0),Se(this,\"g\",0),Se(this,\"b\",0),Se(this,\"a\",1),Se(this,\"_h\",void 0),Se(this,\"_s\",void 0),Se(this,\"_l\",void 0),Se(this,\"_v\",void 0),Se(this,\"_max\",void 0),Se(this,\"_min\",void 0),Se(this,\"_brightness\",void 0);function n(r){return r[0]in t&&r[1]in t&&r[2]in t}if(t)if(typeof t==\"string\"){let o=function(a){return r.startsWith(a)},r=t.trim();/^#?[A-F\\d]{3,8}$/i.test(r)?this.fromHexString(r):o(\"rgb\")?this.fromRgbString(r):o(\"hsl\")?this.fromHslString(r):(o(\"hsv\")||o(\"hsb\"))&&this.fromHsvString(r)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=Tn(t.r),this.g=Tn(t.g),this.b=Tn(t.b),this.a=typeof t.a==\"number\"?Tn(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(a){let i=a/255;return i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4)}let n=t(this.r),r=t(this.g),o=t(this.b);return .2126*n+.7152*r+.0722*o}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=Ee(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g\"u\"){let t=this.getMax()-this.getMin();t===0?this._s=0:this._s=t/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(t=10){let n=this.getHue(),r=this.getSaturation(),o=this.getLightness()-t/100;return o<0&&(o=0),this._c({h:n,s:r,l:o,a:this.a})}lighten(t=10){let n=this.getHue(),r=this.getSaturation(),o=this.getLightness()+t/100;return o>1&&(o=1),this._c({h:n,s:r,l:o,a:this.a})}mix(t,n=50){let r=this._c(t),o=n/100,a=s=>(r[s]-this[s])*o+this[s],i={r:Ee(a(\"r\")),g:Ee(a(\"g\")),b:Ee(a(\"b\")),a:Ee(a(\"a\")*100)/100};return this._c(i)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),r=this.a+n.a*(1-this.a),o=a=>Ee((this[a]*this.a+n[a]*n.a*(1-this.a))/r);return this._c({r:o(\"r\"),g:o(\"g\"),b:o(\"b\"),a:r})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let r=(this.g||0).toString(16);t+=r.length===2?r:\"0\"+r;let o=(this.b||0).toString(16);if(t+=o.length===2?o:\"0\"+o,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let a=Ee(this.a*255).toString(16);t+=a.length===2?a:\"0\"+a}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=Ee(this.getSaturation()*100),r=Ee(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(r,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(r,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,r){let o=this.clone();return o[t]=Tn(n,r),o}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function r(o,a){return parseInt(n[o]+n[a||o],16)}n.length<6?(this.r=r(0),this.g=r(1),this.b=r(2),this.a=n[3]?r(3)/255:1):(this.r=r(0,1),this.g=r(2,3),this.b=r(4,5),this.a=n[6]?r(6,7)/255:1)}fromHsl({h:t,s:n,l:r,a:o}){if(this._h=t%360,this._s=n,this._l=r,this.a=typeof o==\"number\"?o:1,n<=0){let c=Ee(r*255);this.r=c,this.g=c,this.b=c}let a=0,i=0,s=0,l=t/60,u=(1-Math.abs(2*r-1))*n,f=u*(1-Math.abs(l%2-1));l>=0&&l<1?(a=u,i=f):l>=1&&l<2?(a=f,i=u):l>=2&&l<3?(i=u,s=f):l>=3&&l<4?(i=f,s=u):l>=4&&l<5?(a=f,s=u):l>=5&&l<6&&(a=u,s=f);let d=r-u/2;this.r=Ee((a+d)*255),this.g=Ee((i+d)*255),this.b=Ee((s+d)*255)}fromHsv({h:t,s:n,v:r,a:o}){this._h=t%360,this._s=n,this._v=r,this.a=typeof o==\"number\"?o:1;let a=Ee(r*255);if(this.r=a,this.g=a,this.b=a,n<=0)return;let i=t/60,s=Math.floor(i),l=i-s,u=Ee(r*(1-n)*255),f=Ee(r*(1-n*l)*255),d=Ee(r*(1-n*(1-l))*255);switch(s){case 0:this.g=d,this.b=u;break;case 1:this.r=f,this.b=u;break;case 2:this.r=u,this.b=d;break;case 3:this.r=u,this.g=f;break;case 4:this.r=d,this.g=u;break;case 5:default:this.g=u,this.b=f;break}}fromHsvString(t){let n=na(t,Ts);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=na(t,Ts);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=na(t,(r,o)=>o.includes(\"%\")?Ee(r/100*255):r);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var kr=2,Ns=.16,Rf=.05,Yf=.05,Kf=.15,Ps=5,_s=4,Xf=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function ks(e,t,n){var r;return Math.round(e.h)>=60&&Math.round(e.h)<=240?r=n?Math.round(e.h)-kr*t:Math.round(e.h)+kr*t:r=n?Math.round(e.h)+kr*t:Math.round(e.h)-kr*t,r<0?r+=360:r>=360&&(r-=360),r}function As(e,t,n){if(e.h===0&&e.s===0)return e.s;var r;return n?r=e.s-Ns*t:t===_s?r=e.s+Ns:r=e.s+Rf*t,r>1&&(r=1),n&&t===Ps&&r>.1&&(r=.1),r<.06&&(r=.06),Math.round(r*100)/100}function Fs(e,t,n){var r;return n?r=e.v+Yf*t:r=e.v-Kf*t,r=Math.max(0,Math.min(1,r)),Math.round(r*100)/100}function Ar(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],r=new Lt(e),o=r.toHsv(),a=Ps;a>0;a-=1){var i=new Lt({h:ks(o,a,!0),s:As(o,a,!0),v:Fs(o,a,!0)});n.push(i)}n.push(r);for(var s=1;s<=_s;s+=1){var l=new Lt({h:ks(o,s),s:As(o,s),v:Fs(o,s)});n.push(l)}return t.theme===\"dark\"?Xf.map(function(u){var f=u.index,d=u.amount;return new Lt(t.backgroundColor||\"#141414\").mix(n[f],d).toHexString()}):n.map(function(u){return u.toHexString()})}var Bs=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];Bs.primary=Bs[5];var Ls=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];Ls.primary=Ls[5];var Ms=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];Ms.primary=Ms[5];var Vs=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];Vs.primary=Vs[5];var zs=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];zs.primary=zs[5];var $s=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];$s.primary=$s[5];var Us=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];Us.primary=Us[5];var Ws=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Ws.primary=Ws[5];var Fr=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];Fr.primary=Fr[5];var Gs=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];Gs.primary=Gs[5];var Hs=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];Hs.primary=Hs[5];var qs=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];qs.primary=qs[5];var js=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];js.primary=js[5];var Rs=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Rs.primary=Rs[5];var Ys=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Ys.primary=Ys[5];var Ks=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];Ks.primary=Ks[5];var Xs=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Xs.primary=Xs[5];var Js=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];Js.primary=Js[5];var Zs=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Zs.primary=Zs[5];var Qs=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Qs.primary=Qs[5];var el=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];el.primary=el[5];var tl=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];tl.primary=tl[5];var nl=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];nl.primary=nl[5];var rl=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];rl.primary=rl[5];var ol=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];ol.primary=ol[5];var al=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];al.primary=al[5];function il(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function He(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Jf}function ia(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Zf(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function sa(e){return Array.from((aa.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function cl(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!ra())return null;var n=t.csp,r=t.prepend,o=t.priority,a=o===void 0?0:o,i=Zf(r),s=i===\"prependQueue\",l=document.createElement(\"style\");l.setAttribute(sl,i),s&&a&&l.setAttribute(ll,\"\".concat(a)),n!=null&&n.nonce&&(l.nonce=n==null?void 0:n.nonce),l.innerHTML=e;var u=ia(t),f=u.firstChild;if(r){if(s){var d=(t.styles||sa(u)).filter(function(c){if(![\"prepend\",\"prependQueue\"].includes(c.getAttribute(sl)))return!1;var m=Number(c.getAttribute(ll)||0);return a>=m});if(d.length)return u.insertBefore(l,d[d.length-1].nextSibling),l}u.insertBefore(l,f)}else u.appendChild(l);return l}function Qf(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=ia(t);return(t.styles||sa(n)).find(function(r){return r.getAttribute(dl(t))===e})}function ep(e,t){var n=aa.get(e);if(!n||!oa(document,n)){var r=cl(\"\",t),o=r.parentNode;aa.set(e,o),e.removeChild(r)}}function ul(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=ia(n),o=sa(r),a=He(He({},n),{},{styles:o});ep(r,a);var i=Qf(t,a);if(i){var s,l;if((s=a.csp)!==null&&s!==void 0&&s.nonce&&i.nonce!==((l=a.csp)===null||l===void 0?void 0:l.nonce)){var u;i.nonce=(u=a.csp)===null||u===void 0?void 0:u.nonce}return i.innerHTML!==e&&(i.innerHTML=e),i}var f=cl(e,a);return f.setAttribute(dl(a),t),f}function fl(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function tp(e){return fl(e)instanceof ShadowRoot}function pl(e){return tp(e)?fl(e):null}var la={},np=[],rp=function(t){np.push(t)};function op(e,t){if(0)var n}function ap(e,t){if(0)var n}function ip(){la={}}function ml(e,t,n){!t&&!la[n]&&(e(!1,n),la[n]=!0)}function Pr(e,t){ml(op,e,t)}function sp(e,t){ml(ap,e,t)}Pr.preMessage=rp;Pr.resetWarned=ip;Pr.noteOnce=sp;var gl=Pr;var Mt=W(J());function lp(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function bl(e,t){gl(e,\"[@ant-design/icons] \".concat(t))}function da(e){return ft(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(ft(e.icon)===\"object\"||typeof e.icon==\"function\")}function hl(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var r=e[n];switch(n){case\"class\":t.className=r,delete t.class;break;default:delete t[n],t[lp(n)]=r}return t},{})}function _r(e,t,n){return n?Mt.default.createElement(e.tag,He(He({key:t},hl(e.attrs)),n),(e.children||[]).map(function(r,o){return _r(r,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(o))})):Mt.default.createElement(e.tag,He({key:t},hl(e.attrs)),(e.children||[]).map(function(r,o){return _r(r,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(o))}))}function ca(e){return Ar(e)[0]}function Br(e){return e?Array.isArray(e)?e:[e]:[]}var dp=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",xl=function(t){var n=(0,Mt.useContext)(Dr),r=n.csp,o=n.prefixCls,a=n.layer,i=dp;o&&(i=i.replace(/anticon/g,o)),a&&(i=\"@layer \".concat(a,\" {\\n\").concat(i,\"\\n}\")),(0,Mt.useEffect)(function(){var s=t.current,l=pl(s);ul(i,\"@ant-design-icons\",{prepend:!a,csp:r,attachTo:l})},[])};var cp=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Nn={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function up(e){var t=e.primaryColor,n=e.secondaryColor;Nn.primaryColor=t,Nn.secondaryColor=n||ca(t),Nn.calculated=!!n}function fp(){return He({},Nn)}var Lr=function(t){var n=t.icon,r=t.className,o=t.onClick,a=t.style,i=t.primaryColor,s=t.secondaryColor,l=Tr(t,cp),u=vl.useRef(),f=Nn;if(i&&(f={primaryColor:i,secondaryColor:s||ca(i)}),xl(u),bl(da(n),\"icon should be icon definiton, but got \".concat(n)),!da(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=He(He({},d),{},{icon:d.icon(f.primaryColor,f.secondaryColor)})),_r(d.icon,\"svg-\".concat(d.name),He(He({className:r,onClick:o,style:a,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},l),{},{ref:u}))};Lr.displayName=\"IconReact\";Lr.getTwoToneColors=fp;Lr.setTwoToneColors=up;var kn=Lr;function ua(e){var t=Br(e),n=Ir(t,2),r=n[0],o=n[1];return kn.setTwoToneColors({primaryColor:r,secondaryColor:o})}function yl(){var e=kn.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var pp=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ua(Fr.primary);var Mr=Vt.forwardRef(function(e,t){var n=e.className,r=e.icon,o=e.spin,a=e.rotate,i=e.tabIndex,s=e.onClick,l=e.twoToneColor,u=Tr(e,pp),f=Vt.useContext(Dr),d=f.prefixCls,c=d===void 0?\"anticon\":d,m=f.rootClassName,x=(0,wl.default)(m,c,Se(Se({},\"\".concat(c,\"-\").concat(r.name),!!r.name),\"\".concat(c,\"-spin\"),!!o||r.name===\"loading\"),n),v=i;v===void 0&&s&&(v=-1);var b=a?{msTransform:\"rotate(\".concat(a,\"deg)\"),transform:\"rotate(\".concat(a,\"deg)\")}:void 0,C=Br(l),h=Ir(C,2),O=h[0],w=h[1];return Vt.createElement(\"span\",K({role:\"img\",\"aria-label\":r.name},u,{ref:t,tabIndex:v,onClick:s,className:x}),Vt.createElement(kn,{icon:r,primaryColor:O,secondaryColor:w,style:b}))});Mr.displayName=\"AntdIcon\";Mr.getTwoToneColor=yl;Mr.setTwoToneColor=ua;var Q=Mr;var Vr=W(J());var mp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M917.7 148.8l-42.4-42.4c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-76.1 76.1a199.27 199.27 0 00-112.1-34.3c-51.2 0-102.4 19.5-141.5 58.6L432.3 308.7a8.03 8.03 0 000 11.3L704 591.7c1.6 1.6 3.6 2.3 5.7 2.3 2 0 4.1-.8 5.7-2.3l101.9-101.9c68.9-69 77-175.7 24.3-253.5l76.1-76.1c3.1-3.2 3.1-8.3 0-11.4zM769.1 441.7l-59.4 59.4-186.8-186.8 59.4-59.4c24.9-24.9 58.1-38.7 93.4-38.7 35.3 0 68.4 13.7 93.4 38.7 24.9 24.9 38.7 58.1 38.7 93.4 0 35.3-13.8 68.4-38.7 93.4zm-190.2 105a8.03 8.03 0 00-11.3 0L501 613.3 410.7 523l66.7-66.7c3.1-3.1 3.1-8.2 0-11.3L441 408.6a8.03 8.03 0 00-11.3 0L363 475.3l-43-43a7.85 7.85 0 00-5.7-2.3c-2 0-4.1.8-5.7 2.3L206.8 534.2c-68.9 69-77 175.7-24.3 253.5l-76.1 76.1a8.03 8.03 0 000 11.3l42.4 42.4c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l76.1-76.1c33.7 22.9 72.9 34.3 112.1 34.3 51.2 0 102.4-19.5 141.5-58.6l101.9-101.9c3.1-3.1 3.1-8.2 0-11.3l-43-43 66.7-66.7c3.1-3.1 3.1-8.2 0-11.3l-36.6-36.2zM441.7 769.1a131.32 131.32 0 01-93.4 38.7c-35.3 0-68.4-13.7-93.4-38.7a131.32 131.32 0 01-38.7-93.4c0-35.3 13.7-68.4 38.7-93.4l59.4-59.4 186.8 186.8-59.4 59.4z\"}}]},name:\"api\",theme:\"outlined\"},Cl=mp;var gp=function(t,n){return Vr.createElement(Q,K({},t,{ref:n,icon:Cl}))},hp=Vr.forwardRef(gp),zr=hp;var $r=W(J());var bp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M862 465.3h-81c-4.6 0-9 2-12.1 5.5L550 723.1V160c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v563.1L255.1 470.8c-3-3.5-7.4-5.5-12.1-5.5h-81c-6.8 0-10.5 8.1-6 13.2L487.9 861a31.96 31.96 0 0048.3 0L868 478.5c4.5-5.2.8-13.2-6-13.2z\"}}]},name:\"arrow-down\",theme:\"outlined\"},Ol=bp;var xp=function(t,n){return $r.createElement(Q,K({},t,{ref:n,icon:Ol}))},vp=$r.forwardRef(xp),fa=vp;var Ur=W(J());var yp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M868 545.5L536.1 163a31.96 31.96 0 00-48.3 0L156 545.5a7.97 7.97 0 006 13.2h81c4.6 0 9-2 12.1-5.5L474 300.9V864c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V300.9l218.9 252.3c3 3.5 7.4 5.5 12.1 5.5h81c6.8 0 10.5-8 6-13.2z\"}}]},name:\"arrow-up\",theme:\"outlined\"},Sl=yp;var wp=function(t,n){return Ur.createElement(Q,K({},t,{ref:n,icon:Sl}))},Cp=Ur.forwardRef(wp),pa=Cp;var Wr=W(J());var Op={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},El=Op;var Sp=function(t,n){return Wr.createElement(Q,K({},t,{ref:n,icon:El}))},Ep=Wr.forwardRef(Sp),An=Ep;var Gr=W(J());var Dp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\"}}]},name:\"delete\",theme:\"outlined\"},Dl=Dp;var Ip=function(t,n){return Gr.createElement(Q,K({},t,{ref:n,icon:Dl}))},Tp=Gr.forwardRef(Ip),xt=Tp;var Hr=W(J());var Np={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\"}}]},name:\"down\",theme:\"outlined\"},Il=Np;var kp=function(t,n){return Hr.createElement(Q,K({},t,{ref:n,icon:Il}))},Ap=Hr.forwardRef(kp),pt=Ap;var qr=W(J());var Fp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},Tl=Fp;var Pp=function(t,n){return qr.createElement(Q,K({},t,{ref:n,icon:Tl}))},_p=qr.forwardRef(Pp),Fn=_p;var jr=W(J());var Bp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z\"}}]},name:\"folder\",theme:\"outlined\"},Nl=Bp;var Lp=function(t,n){return jr.createElement(Q,K({},t,{ref:n,icon:Nl}))},Mp=jr.forwardRef(Lp),ma=Mp;var Rr=W(J());var Vp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M854.4 800.9c.2-.3.5-.6.7-.9C920.6 722.1 960 621.7 960 512s-39.4-210.1-104.8-288c-.2-.3-.5-.5-.7-.8-1.1-1.3-2.1-2.5-3.2-3.7-.4-.5-.8-.9-1.2-1.4l-4.1-4.7-.1-.1c-1.5-1.7-3.1-3.4-4.6-5.1l-.1-.1c-3.2-3.4-6.4-6.8-9.7-10.1l-.1-.1-4.8-4.8-.3-.3c-1.5-1.5-3-2.9-4.5-4.3-.5-.5-1-1-1.6-1.5-1-1-2-1.9-3-2.8-.3-.3-.7-.6-1-1C736.4 109.2 629.5 64 512 64s-224.4 45.2-304.3 119.2c-.3.3-.7.6-1 1-1 .9-2 1.9-3 2.9-.5.5-1 1-1.6 1.5-1.5 1.4-3 2.9-4.5 4.3l-.3.3-4.8 4.8-.1.1c-3.3 3.3-6.5 6.7-9.7 10.1l-.1.1c-1.6 1.7-3.1 3.4-4.6 5.1l-.1.1c-1.4 1.5-2.8 3.1-4.1 4.7-.4.5-.8.9-1.2 1.4-1.1 1.2-2.1 2.5-3.2 3.7-.2.3-.5.5-.7.8C103.4 301.9 64 402.3 64 512s39.4 210.1 104.8 288c.2.3.5.6.7.9l3.1 3.7c.4.5.8.9 1.2 1.4l4.1 4.7c0 .1.1.1.1.2 1.5 1.7 3 3.4 4.6 5l.1.1c3.2 3.4 6.4 6.8 9.6 10.1l.1.1c1.6 1.6 3.1 3.2 4.7 4.7l.3.3c3.3 3.3 6.7 6.5 10.1 9.6 80.1 74 187 119.2 304.5 119.2s224.4-45.2 304.3-119.2a300 300 0 0010-9.6l.3-.3c1.6-1.6 3.2-3.1 4.7-4.7l.1-.1c3.3-3.3 6.5-6.7 9.6-10.1l.1-.1c1.5-1.7 3.1-3.3 4.6-5 0-.1.1-.1.1-.2 1.4-1.5 2.8-3.1 4.1-4.7.4-.5.8-.9 1.2-1.4a99 99 0 003.3-3.7zm4.1-142.6c-13.8 32.6-32 62.8-54.2 90.2a444.07 444.07 0 00-81.5-55.9c11.6-46.9 18.8-98.4 20.7-152.6H887c-3 40.9-12.6 80.6-28.5 118.3zM887 484H743.5c-1.9-54.2-9.1-105.7-20.7-152.6 29.3-15.6 56.6-34.4 81.5-55.9A373.86 373.86 0 01887 484zM658.3 165.5c39.7 16.8 75.8 40 107.6 69.2a394.72 394.72 0 01-59.4 41.8c-15.7-45-35.8-84.1-59.2-115.4 3.7 1.4 7.4 2.9 11 4.4zm-90.6 700.6c-9.2 7.2-18.4 12.7-27.7 16.4V697a389.1 389.1 0 01115.7 26.2c-8.3 24.6-17.9 47.3-29 67.8-17.4 32.4-37.8 58.3-59 75.1zm59-633.1c11 20.6 20.7 43.3 29 67.8A389.1 389.1 0 01540 327V141.6c9.2 3.7 18.5 9.1 27.7 16.4 21.2 16.7 41.6 42.6 59 75zM540 640.9V540h147.5c-1.6 44.2-7.1 87.1-16.3 127.8l-.3 1.2A445.02 445.02 0 00540 640.9zm0-156.9V383.1c45.8-2.8 89.8-12.5 130.9-28.1l.3 1.2c9.2 40.7 14.7 83.5 16.3 127.8H540zm-56 56v100.9c-45.8 2.8-89.8 12.5-130.9 28.1l-.3-1.2c-9.2-40.7-14.7-83.5-16.3-127.8H484zm-147.5-56c1.6-44.2 7.1-87.1 16.3-127.8l.3-1.2c41.1 15.6 85 25.3 130.9 28.1V484H336.5zM484 697v185.4c-9.2-3.7-18.5-9.1-27.7-16.4-21.2-16.7-41.7-42.7-59.1-75.1-11-20.6-20.7-43.3-29-67.8 37.2-14.6 75.9-23.3 115.8-26.1zm0-370a389.1 389.1 0 01-115.7-26.2c8.3-24.6 17.9-47.3 29-67.8 17.4-32.4 37.8-58.4 59.1-75.1 9.2-7.2 18.4-12.7 27.7-16.4V327zM365.7 165.5c3.7-1.5 7.3-3 11-4.4-23.4 31.3-43.5 70.4-59.2 115.4-21-12-40.9-26-59.4-41.8 31.8-29.2 67.9-52.4 107.6-69.2zM165.5 365.7c13.8-32.6 32-62.8 54.2-90.2 24.9 21.5 52.2 40.3 81.5 55.9-11.6 46.9-18.8 98.4-20.7 152.6H137c3-40.9 12.6-80.6 28.5-118.3zM137 540h143.5c1.9 54.2 9.1 105.7 20.7 152.6a444.07 444.07 0 00-81.5 55.9A373.86 373.86 0 01137 540zm228.7 318.5c-39.7-16.8-75.8-40-107.6-69.2 18.5-15.8 38.4-29.7 59.4-41.8 15.7 45 35.8 84.1 59.2 115.4-3.7-1.4-7.4-2.9-11-4.4zm292.6 0c-3.7 1.5-7.3 3-11 4.4 23.4-31.3 43.5-70.4 59.2-115.4 21 12 40.9 26 59.4 41.8a373.81 373.81 0 01-107.6 69.2z\"}}]},name:\"global\",theme:\"outlined\"},kl=Vp;var zp=function(t,n){return Rr.createElement(Q,K({},t,{ref:n,icon:kl}))},$p=Rr.forwardRef(zp),Pn=$p;var Yr=W(J());var Up={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}},{tag:\"path\",attrs:{d:\"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z\"}}]},name:\"info-circle\",theme:\"outlined\"},Al=Up;var Wp=function(t,n){return Yr.createElement(Q,K({},t,{ref:n,icon:Al}))},Gp=Yr.forwardRef(Wp),Nt=Gp;var Kr=W(J());var Hp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M608 112c-167.9 0-304 136.1-304 304 0 70.3 23.9 135 63.9 186.5l-41.1 41.1-62.3-62.3a8.15 8.15 0 00-11.4 0l-39.8 39.8a8.15 8.15 0 000 11.4l62.3 62.3-44.9 44.9-62.3-62.3a8.15 8.15 0 00-11.4 0l-39.8 39.8a8.15 8.15 0 000 11.4l62.3 62.3-65.3 65.3a8.03 8.03 0 000 11.3l42.3 42.3c3.1 3.1 8.2 3.1 11.3 0l253.6-253.6A304.06 304.06 0 00608 720c167.9 0 304-136.1 304-304S775.9 112 608 112zm161.2 465.2C726.2 620.3 668.9 644 608 644c-60.9 0-118.2-23.7-161.2-66.8-43.1-43-66.8-100.3-66.8-161.2 0-60.9 23.7-118.2 66.8-161.2 43-43.1 100.3-66.8 161.2-66.8 60.9 0 118.2 23.7 161.2 66.8 43.1 43 66.8 100.3 66.8 161.2 0 60.9-23.7 118.2-66.8 161.2z\"}}]},name:\"key\",theme:\"outlined\"},Fl=Hp;var qp=function(t,n){return Kr.createElement(Q,K({},t,{ref:n,icon:Fl}))},jp=Kr.forwardRef(qp),Xr=jp;var Jr=W(J());var Rp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},Pl=Rp;var Yp=function(t,n){return Jr.createElement(Q,K({},t,{ref:n,icon:Pl}))},Kp=Jr.forwardRef(Yp),_n=Kp;var Zr=W(J());var Xp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 464h-68V240c0-70.7-57.3-128-128-128H388c-70.7 0-128 57.3-128 128v224h-68c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V496c0-17.7-14.3-32-32-32zM332 240c0-30.9 25.1-56 56-56h248c30.9 0 56 25.1 56 56v224H332V240zm460 600H232V536h560v304zM484 701v53c0 4.4 3.6 8 8 8h40c4.4 0 8-3.6 8-8v-53a48.01 48.01 0 10-56 0z\"}}]},name:\"lock\",theme:\"outlined\"},_l=Xp;var Jp=function(t,n){return Zr.createElement(Q,K({},t,{ref:n,icon:_l}))},Zp=Zr.forwardRef(Jp),Bn=Zp;var Qr=W(J());var Qp={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},Bl=Qp;var em=function(t,n){return Qr.createElement(Q,K({},t,{ref:n,icon:Bl}))},tm=Qr.forwardRef(em),zt=tm;var eo=W(J());var nm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},Ll=nm;var rm=function(t,n){return eo.createElement(Q,K({},t,{ref:n,icon:Ll}))},om=eo.forwardRef(rm),Ae=om;var to=W(J());var am={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z\"}}]},name:\"reload\",theme:\"outlined\"},Ml=am;var im=function(t,n){return to.createElement(Q,K({},t,{ref:n,icon:Ml}))},sm=to.forwardRef(im),ga=sm;var no=W(J());var lm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z\"}}]},name:\"safety-certificate\",theme:\"outlined\"},Vl=lm;var dm=function(t,n){return no.createElement(Q,K({},t,{ref:n,icon:Vl}))},cm=no.forwardRef(dm),ro=cm;var oo=W(J());var um={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M893.3 293.3L730.7 130.7c-7.5-7.5-16.7-13-26.7-16V112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V338.5c0-17-6.7-33.2-18.7-45.2zM384 184h256v104H384V184zm456 656H184V184h136v136c0 17.7 14.3 32 32 32h320c17.7 0 32-14.3 32-32V205.8l136 136V840zM512 442c-79.5 0-144 64.5-144 144s64.5 144 144 144 144-64.5 144-144-64.5-144-144-144zm0 224c-44.2 0-80-35.8-80-80s35.8-80 80-80 80 35.8 80 80-35.8 80-80 80z\"}}]},name:\"save\",theme:\"outlined\"},zl=um;var fm=function(t,n){return oo.createElement(Q,K({},t,{ref:n,icon:zl}))},pm=oo.forwardRef(fm),ha=pm;var ao=W(J());var mm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},$l=mm;var gm=function(t,n){return ao.createElement(Q,K({},t,{ref:n,icon:$l}))},hm=ao.forwardRef(gm),Ln=hm;var io=W(J());var bm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M890.5 755.3L537.9 269.2c-12.8-17.6-39-17.6-51.7 0L133.5 755.3A8 8 0 00140 768h75c5.1 0 9.9-2.5 12.9-6.6L512 369.8l284.1 391.6c3 4.1 7.8 6.6 12.9 6.6h75c6.5 0 10.3-7.4 6.5-12.7z\"}}]},name:\"up\",theme:\"outlined\"},Ul=bm;var xm=function(t,n){return io.createElement(Q,K({},t,{ref:n,icon:Ul}))},vm=io.forwardRef(xm),mt=vm;var so=W(J());var ym={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},Wl=ym;var wm=function(t,n){return so.createElement(Q,K({},t,{ref:n,icon:Wl}))},Cm=so.forwardRef(wm),an=Cm;var k=W(J()),qt=W(Er());var he=W(J());function Hl(){for(var e=arguments.length,t=new Array(e),n=0;nr=>{t.forEach(o=>o(r))},t)}var Mn=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function $t(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function lo(e){return\"nodeType\"in e}function Le(e){var t,n;return e?$t(e)?e:lo(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function co(e){let{Document:t}=Le(e);return e instanceof t}function sn(e){return $t(e)?!1:e instanceof Le(e).HTMLElement}function xa(e){return e instanceof Le(e).SVGElement}function Ut(e){return e?$t(e)?e.document:lo(e)?co(e)?e:sn(e)||xa(e)?e.ownerDocument:document:document:document}var tt=Mn?he.useLayoutEffect:he.useEffect;function uo(e){let t=(0,he.useRef)(e);return tt(()=>{t.current=e}),(0,he.useCallback)(function(){for(var n=arguments.length,r=new Array(n),o=0;o{e.current=setInterval(r,o)},[]),n=(0,he.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function ln(e,t){t===void 0&&(t=[e]);let n=(0,he.useRef)(e);return tt(()=>{n.current!==e&&(n.current=e)},t),n}function dn(e,t){let n=(0,he.useRef)();return(0,he.useMemo)(()=>{let r=e(n.current);return n.current=r,r},[...t])}function Vn(e){let t=uo(e),n=(0,he.useRef)(null),r=(0,he.useCallback)(o=>{o!==n.current&&(t==null||t(o,n.current)),n.current=o},[]);return[n,r]}function fo(e){let t=(0,he.useRef)();return(0,he.useEffect)(()=>{t.current=e},[e]),t.current}var ba={};function Wt(e,t){return(0,he.useMemo)(()=>{if(t)return t;let n=ba[e]==null?0:ba[e]+1;return ba[e]=n,e+\"-\"+n},[e,t])}function jl(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o{let s=Object.entries(i);for(let[l,u]of s){let f=a[l];f!=null&&(a[l]=f+e*u)}return a},y({},t))}}var Gt=jl(1),cn=jl(-1);function Om(e){return\"clientX\"in e&&\"clientY\"in e}function zn(e){if(!e)return!1;let{KeyboardEvent:t}=Le(e.target);return t&&e instanceof t}function Sm(e){if(!e)return!1;let{TouchEvent:t}=Le(e.target);return t&&e instanceof t}function $n(e){if(Sm(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Om(e)?{x:e.clientX,y:e.clientY}:null}var gt=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[gt.Translate.toString(e),gt.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+\" \"+n+\"ms \"+r}}}),Gl=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function Rl(e){return e.matches(Gl)?e:e.querySelector(Gl)}var Ht=W(J()),Em={display:\"none\"};function Yl(e){let{id:t,value:n}=e;return Ht.default.createElement(\"div\",{id:t,style:Em},n)}function Kl(e){let{id:t,announcement:n,ariaLiveType:r=\"assertive\"}=e,o={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return Ht.default.createElement(\"div\",{id:t,style:o,role:\"status\",\"aria-live\":r,\"aria-atomic\":!0},n)}function Xl(){let[e,t]=(0,Ht.useState)(\"\");return{announce:(0,Ht.useCallback)(r=>{r!=null&&t(r)},[]),announcement:e}}var sd=(0,k.createContext)(null);function Dm(e){let t=(0,k.useContext)(sd);(0,k.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function Im(){let[e]=(0,k.useState)(()=>new Set),t=(0,k.useCallback)(r=>(e.add(r),()=>e.delete(r)),[e]);return[(0,k.useCallback)(r=>{let{type:o,event:a}=r;e.forEach(i=>{var s;return(s=i[o])==null?void 0:s.call(i,a)})},[e]),t]}var Tm={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},Nm={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function km(e){let{announcements:t=Nm,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=Tm}=e,{announce:a,announcement:i}=Xl(),s=Wt(\"DndLiveRegion\"),[l,u]=(0,k.useState)(!1);if((0,k.useEffect)(()=>{u(!0)},[]),Dm((0,k.useMemo)(()=>({onDragStart(d){let{active:c}=d;a(t.onDragStart({active:c}))},onDragMove(d){let{active:c,over:m}=d;t.onDragMove&&a(t.onDragMove({active:c,over:m}))},onDragOver(d){let{active:c,over:m}=d;a(t.onDragOver({active:c,over:m}))},onDragEnd(d){let{active:c,over:m}=d;a(t.onDragEnd({active:c,over:m}))},onDragCancel(d){let{active:c,over:m}=d;a(t.onDragCancel({active:c,over:m}))}}),[a,t])),!l)return null;let f=k.default.createElement(k.default.Fragment,null,k.default.createElement(Yl,{id:r,value:o.draggable}),k.default.createElement(Kl,{id:s,announcement:i}));return n?(0,qt.createPortal)(f,n):f}var Ce;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(Ce||(Ce={}));function mo(){}function qn(e,t){return(0,k.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function jn(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(r=>r!=null),[...t])}var st=Object.freeze({x:0,y:0});function Am(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function ld(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Fm(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),i=o-r,s=a-n;if(r{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,o=[];for(let a of r){let{id:i}=a,s=n.get(i);if(s){let l=Fm(s,t);l>0&&o.push({id:i,data:{droppableContainer:a,value:l}})}}return o.sort(Am)};function _m(e,t,n){return E(y({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function dd(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:st}function Bm(e){return function(n){for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;aE(y({},i),{top:i.top+e*s.y,bottom:i.bottom+e*s.y,left:i.left+e*s.x,right:i.right+e*s.x}),y({},n))}}var Lm=Bm(1);function Mm(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Vm(e,t,n){let r=Mm(t);if(!r)return e;let{scaleX:o,scaleY:a,x:i,y:s}=r,l=e.left-i-(1-o)*parseFloat(n),u=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(\" \")+1)),f=o?e.width/o:e.width,d=a?e.height/a:e.height;return{width:f,height:d,top:u,right:l+f,bottom:u+d,left:l}}var zm={ignoreTransform:!1};function Yt(e,t){t===void 0&&(t=zm);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:u,transformOrigin:f}=Le(e).getComputedStyle(e);u&&(n=Vm(n,u,f))}let{top:r,left:o,width:a,height:i,bottom:s,right:l}=n;return{top:r,left:o,width:a,height:i,bottom:s,right:l}}function Jl(e){return Yt(e,{ignoreTransform:!0})}function $m(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Um(e,t){return t===void 0&&(t=Le(e).getComputedStyle(e)),t.position===\"fixed\"}function Wm(e,t){t===void 0&&(t=Le(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(o=>{let a=t[o];return typeof a==\"string\"?n.test(a):!1})}function bo(e,t){let n=[];function r(o){if(t!=null&&n.length>=t||!o)return n;if(co(o)&&o.scrollingElement!=null&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!sn(o)||xa(o)||n.includes(o))return n;let a=Le(e).getComputedStyle(o);return o!==e&&Wm(o,a)&&n.push(o),Um(o,a)?n:r(o.parentNode)}return e?r(e):n}function cd(e){let[t]=bo(e,1);return t!=null?t:null}function va(e){return!Mn||!e?null:$t(e)?e:lo(e)?co(e)||e===Ut(e).scrollingElement?window:sn(e)?e:null:null}function ud(e){return $t(e)?e.scrollX:e.scrollLeft}function fd(e){return $t(e)?e.scrollY:e.scrollTop}function Ca(e){return{x:ud(e),y:fd(e)}}var De;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(De||(De={}));function pd(e){return!Mn||!e?!1:e===document.scrollingElement}function md(e){let t={x:0,y:0},n=pd(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},o=e.scrollTop<=t.y,a=e.scrollLeft<=t.x,i=e.scrollTop>=r.y,s=e.scrollLeft>=r.x;return{isTop:o,isLeft:a,isBottom:i,isRight:s,maxScroll:r,minScroll:t}}var Gm={x:.2,y:.2};function Hm(e,t,n,r,o){let{top:a,left:i,right:s,bottom:l}=n;r===void 0&&(r=10),o===void 0&&(o=Gm);let{isTop:u,isBottom:f,isLeft:d,isRight:c}=md(e),m={x:0,y:0},x={x:0,y:0},v={height:t.height*o.y,width:t.width*o.x};return!u&&a<=t.top+v.height?(m.y=De.Backward,x.y=r*Math.abs((t.top+v.height-a)/v.height)):!f&&l>=t.bottom-v.height&&(m.y=De.Forward,x.y=r*Math.abs((t.bottom-v.height-l)/v.height)),!c&&s>=t.right-v.width?(m.x=De.Forward,x.x=r*Math.abs((t.right-v.width-s)/v.width)):!d&&i<=t.left+v.width&&(m.x=De.Backward,x.x=r*Math.abs((t.left+v.width-i)/v.width)),{direction:m,speed:x}}function qm(e){if(e===document.scrollingElement){let{innerWidth:a,innerHeight:i}=window;return{top:0,left:0,right:a,bottom:i,width:a,height:i}}let{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function gd(e){return e.reduce((t,n)=>Gt(t,Ca(n)),st)}function jm(e){return e.reduce((t,n)=>t+ud(n),0)}function Rm(e){return e.reduce((t,n)=>t+fd(n),0)}function Ym(e,t){if(t===void 0&&(t=Yt),!e)return;let{top:n,left:r,bottom:o,right:a}=t(e);cd(e)&&(o<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Km=[[\"x\",[\"left\",\"right\"],jm],[\"y\",[\"top\",\"bottom\"],Rm]],Wn=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let r=bo(n),o=gd(r);this.rect=y({},t),this.width=t.width,this.height=t.height;for(let[a,i,s]of Km)for(let l of i)Object.defineProperty(this,l,{get:()=>{let u=s(r),f=o[a]-u;return this.rect[l]+f},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},jt=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var r;return(r=this.target)==null?void 0:r.removeEventListener(...n)})},this.target=t}add(t,n,r){var o;(o=this.target)==null||o.addEventListener(t,n,r),this.listeners.push([t,n,r])}};function Xm(e){let{EventTarget:t}=Le(e);return e instanceof t?e:Ut(e)}function ya(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+r**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&r>t.y:\"x\"in t?n>t.x:\"y\"in t?r>t.y:!1}var nt;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(nt||(nt={}));function Zl(e){e.preventDefault()}function Jm(e){e.stopPropagation()}var ae;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(ae||(ae={}));var hd={start:[ae.Space,ae.Enter],cancel:[ae.Esc],end:[ae.Space,ae.Enter,ae.Tab]},Zm=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case ae.Right:return E(y({},n),{x:n.x+25});case ae.Left:return E(y({},n),{x:n.x-25});case ae.Down:return E(y({},n),{y:n.y+25});case ae.Up:return E(y({},n),{y:n.y-25})}},go=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new jt(Ut(n)),this.windowListeners=new jt(Le(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(nt.Resize,this.handleCancel),this.windowListeners.add(nt.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(nt.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,r=t.node.current;r&&Ym(r),n(st)}handleKeyDown(t){if(zn(t)){let{active:n,context:r,options:o}=this.props,{keyboardCodes:a=hd,coordinateGetter:i=Zm,scrollBehavior:s=\"smooth\"}=o,{code:l}=t;if(a.end.includes(l)){this.handleEnd(t);return}if(a.cancel.includes(l)){this.handleCancel(t);return}let{collisionRect:u}=r.current,f=u?{x:u.left,y:u.top}:st;this.referenceCoordinates||(this.referenceCoordinates=f);let d=i(t,{active:n,context:r.current,currentCoordinates:f});if(d){let c=cn(d,f),m={x:0,y:0},{scrollableAncestors:x}=r.current;for(let v of x){let b=t.code,{isTop:C,isRight:h,isLeft:O,isBottom:w,maxScroll:S,minScroll:D}=md(v),P=qm(v),N={x:Math.min(b===ae.Right?P.right-P.width/2:P.right,Math.max(b===ae.Right?P.left:P.left+P.width/2,d.x)),y:Math.min(b===ae.Down?P.bottom-P.height/2:P.bottom,Math.max(b===ae.Down?P.top:P.top+P.height/2,d.y))},F=b===ae.Right&&!h||b===ae.Left&&!O,V=b===ae.Down&&!w||b===ae.Up&&!C;if(F&&N.x!==d.x){let T=v.scrollLeft+c.x,B=b===ae.Right&&T<=S.x||b===ae.Left&&T>=D.x;if(B&&!c.y){v.scrollTo({left:T,behavior:s});return}B?m.x=v.scrollLeft-T:m.x=b===ae.Right?v.scrollLeft-S.x:v.scrollLeft-D.x,m.x&&v.scrollBy({left:-m.x,behavior:s});break}else if(V&&N.y!==d.y){let T=v.scrollTop+c.y,B=b===ae.Down&&T<=S.y||b===ae.Up&&T>=D.y;if(B&&!c.x){v.scrollTo({top:T,behavior:s});return}B?m.y=v.scrollTop-T:m.y=b===ae.Down?v.scrollTop-S.y:v.scrollTop-D.y,m.y&&v.scrollBy({top:-m.y,behavior:s});break}}this.handleMove(t,Gt(cn(d,this.referenceCoordinates),m))}}}handleMove(t,n){let{onMove:r}=this.props;t.preventDefault(),r(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};go.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:r=hd,onActivation:o}=t,{active:a}=n,{code:i}=e.nativeEvent;if(r.start.includes(i)){let s=a.activatorNode.current;return s&&e.target!==s?!1:(e.preventDefault(),o==null||o({event:e.nativeEvent}),!0)}return!1}}];function Ql(e){return!!(e&&\"distance\"in e)}function ed(e){return!!(e&&\"delay\"in e)}var Gn=class{constructor(t,n,r){var o;r===void 0&&(r=Xm(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:a}=t,{target:i}=a;this.props=t,this.events=n,this.document=Ut(i),this.documentListeners=new jt(this.document),this.listeners=new jt(r),this.windowListeners=new jt(Le(i)),this.initialCoordinates=(o=$n(a))!=null?o:st,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:r}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(nt.Resize,this.handleCancel),this.windowListeners.add(nt.DragStart,Zl),this.windowListeners.add(nt.VisibilityChange,this.handleCancel),this.windowListeners.add(nt.ContextMenu,Zl),this.documentListeners.add(nt.Keydown,this.handleKeydown),n){if(r!=null&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(ed(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(Ql(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:r,onPending:o}=this.props;o(r,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(nt.Click,Jm,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(nt.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:r,initialCoordinates:o,props:a}=this,{onMove:i,options:{activationConstraint:s}}=a;if(!o)return;let l=(n=$n(t))!=null?n:st,u=cn(o,l);if(!r&&s){if(Ql(s)){if(s.tolerance!=null&&ya(u,s.tolerance))return this.handleCancel();if(ya(u,s.distance))return this.handleStart()}if(ed(s)&&ya(u,s.tolerance))return this.handleCancel();this.handlePending(s,u);return}t.cancelable&&t.preventDefault(),i(l)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===ae.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},Qm={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},vt=class extends Gn{constructor(t){let{event:n}=t,r=Ut(n.target);super(t,Qm,r)}};vt.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r==null||r({event:n}),!0)}}];var eg={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},Oa;(function(e){e[e.RightClick=2]=\"RightClick\"})(Oa||(Oa={}));var Sa=class extends Gn{constructor(t){super(t,eg,Ut(t.event.target))}};Sa.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button===Oa.RightClick?!1:(r==null||r({event:n}),!0)}}];var wa={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},Ea=class extends Gn{constructor(t){super(t,wa)}static setup(){return window.addEventListener(wa.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(wa.move.name,t)};function t(){}}};Ea.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:o}=n;return o.length>1?!1:(r==null||r({event:n}),!0)}}];var Un;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(Un||(Un={}));var ho;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(ho||(ho={}));function tg(e){let{acceleration:t,activator:n=Un.Pointer,canScroll:r,draggingRect:o,enabled:a,interval:i=5,order:s=ho.TreeOrder,pointerCoordinates:l,scrollableAncestors:u,scrollableAncestorRects:f,delta:d,threshold:c}=e,m=rg({delta:d,disabled:!a}),[x,v]=ql(),b=(0,k.useRef)({x:0,y:0}),C=(0,k.useRef)({x:0,y:0}),h=(0,k.useMemo)(()=>{switch(n){case Un.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case Un.DraggableRect:return o}},[n,o,l]),O=(0,k.useRef)(null),w=(0,k.useCallback)(()=>{let D=O.current;if(!D)return;let P=b.current.x*C.current.x,N=b.current.y*C.current.y;D.scrollBy(P,N)},[]),S=(0,k.useMemo)(()=>s===ho.TreeOrder?[...u].reverse():u,[s,u]);(0,k.useEffect)(()=>{if(!a||!u.length||!h){v();return}for(let D of S){if((r==null?void 0:r(D))===!1)continue;let P=u.indexOf(D),N=f[P];if(!N)continue;let{direction:F,speed:V}=Hm(D,N,h,t,c);for(let T of[\"x\",\"y\"])m[T][F[T]]||(V[T]=0,F[T]=0);if(V.x>0||V.y>0){v(),O.current=D,x(w,i),b.current=V,C.current=F;return}}b.current={x:0,y:0},C.current={x:0,y:0},v()},[t,w,r,v,a,i,JSON.stringify(h),JSON.stringify(m),x,u,S,f,JSON.stringify(c)])}var ng={x:{[De.Backward]:!1,[De.Forward]:!1},y:{[De.Backward]:!1,[De.Forward]:!1}};function rg(e){let{delta:t,disabled:n}=e,r=fo(t);return dn(o=>{if(n||!r||!o)return ng;let a={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[De.Backward]:o.x[De.Backward]||a.x===-1,[De.Forward]:o.x[De.Forward]||a.x===1},y:{[De.Backward]:o.y[De.Backward]||a.y===-1,[De.Forward]:o.y[De.Forward]||a.y===1}}},[n,t,r])}function og(e,t){let n=t!=null?e.get(t):void 0,r=n?n.node.current:null;return dn(o=>{var a;return t==null?null:(a=r!=null?r:o)!=null?a:null},[r,t])}function ag(e,t){return(0,k.useMemo)(()=>e.reduce((n,r)=>{let{sensor:o}=r,a=o.activators.map(i=>({eventName:i.eventName,handler:t(i.handler,r)}));return[...n,...a]},[]),[e,t])}var Hn;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Hn||(Hn={}));var Da;(function(e){e.Optimized=\"optimized\"})(Da||(Da={}));var td=new Map;function ig(e,t){let{dragging:n,dependencies:r,config:o}=t,[a,i]=(0,k.useState)(null),{frequency:s,measure:l,strategy:u}=o,f=(0,k.useRef)(e),d=b(),c=ln(d),m=(0,k.useCallback)(function(C){C===void 0&&(C=[]),!c.current&&i(h=>h===null?C:h.concat(C.filter(O=>!h.includes(O))))},[c]),x=(0,k.useRef)(null),v=dn(C=>{if(d&&!n)return td;if(!C||C===td||f.current!==e||a!=null){let h=new Map;for(let O of e){if(!O)continue;if(a&&a.length>0&&!a.includes(O.id)&&O.rect.current){h.set(O.id,O.rect.current);continue}let w=O.node.current,S=w?new Wn(l(w),w):null;O.rect.current=S,S&&h.set(O.id,S)}return h}return C},[e,a,n,d,l]);return(0,k.useEffect)(()=>{f.current=e},[e]),(0,k.useEffect)(()=>{d||m()},[n,d]),(0,k.useEffect)(()=>{a&&a.length>0&&i(null)},[JSON.stringify(a)]),(0,k.useEffect)(()=>{d||typeof s!=\"number\"||x.current!==null||(x.current=setTimeout(()=>{m(),x.current=null},s))},[s,d,m,...r]),{droppableRects:v,measureDroppableContainers:m,measuringScheduled:a!=null};function b(){switch(u){case Hn.Always:return!1;case Hn.BeforeDragging:return n;default:return!n}}}function bd(e,t){return dn(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function sg(e,t){return bd(e,t)}function lg(e){let{callback:t,disabled:n}=e,r=uo(t),o=(0,k.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:a}=window;return new a(r)},[r,n]);return(0,k.useEffect)(()=>()=>o==null?void 0:o.disconnect(),[o]),o}function xo(e){let{callback:t,disabled:n}=e,r=uo(t),o=(0,k.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:a}=window;return new a(r)},[n]);return(0,k.useEffect)(()=>()=>o==null?void 0:o.disconnect(),[o]),o}function dg(e){return new Wn(Yt(e),e)}function nd(e,t,n){t===void 0&&(t=dg);let[r,o]=(0,k.useState)(null);function a(){o(l=>{if(!e)return null;if(e.isConnected===!1){var u;return(u=l!=null?l:n)!=null?u:null}let f=t(e);return JSON.stringify(l)===JSON.stringify(f)?l:f})}let i=lg({callback(l){if(e)for(let u of l){let{type:f,target:d}=u;if(f===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){a();break}}}}),s=xo({callback:a});return tt(()=>{a(),e?(s==null||s.observe(e),i==null||i.observe(document.body,{childList:!0,subtree:!0})):(s==null||s.disconnect(),i==null||i.disconnect())},[e]),r}function cg(e){let t=bd(e);return dd(e,t)}var rd=[];function ug(e){let t=(0,k.useRef)(e),n=dn(r=>e?r&&r!==rd&&e&&t.current&&e.parentNode===t.current.parentNode?r:bo(e):rd,[e]);return(0,k.useEffect)(()=>{t.current=e},[e]),n}function fg(e){let[t,n]=(0,k.useState)(null),r=(0,k.useRef)(e),o=(0,k.useCallback)(a=>{let i=va(a.target);i&&n(s=>s?(s.set(i,Ca(i)),new Map(s)):null)},[]);return(0,k.useEffect)(()=>{let a=r.current;if(e!==a){i(a);let s=e.map(l=>{let u=va(l);return u?(u.addEventListener(\"scroll\",o,{passive:!0}),[u,Ca(u)]):null}).filter(l=>l!=null);n(s.length?new Map(s):null),r.current=e}return()=>{i(e),i(a)};function i(s){s.forEach(l=>{let u=va(l);u==null||u.removeEventListener(\"scroll\",o)})}},[o,e]),(0,k.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((a,i)=>Gt(a,i),st):gd(e):st,[e,t])}function od(e,t){t===void 0&&(t=[]);let n=(0,k.useRef)(null);return(0,k.useEffect)(()=>{n.current=null},t),(0,k.useEffect)(()=>{let r=e!==st;r&&!n.current&&(n.current=e),!r&&n.current&&(n.current=null)},[e]),n.current?cn(e,n.current):st}function pg(e){(0,k.useEffect)(()=>{if(!Mn)return;let t=e.map(n=>{let{sensor:r}=n;return r.setup==null?void 0:r.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function mg(e,t){return(0,k.useMemo)(()=>e.reduce((n,r)=>{let{eventName:o,handler:a}=r;return n[o]=i=>{a(i,t)},n},{}),[e,t])}function xd(e){return(0,k.useMemo)(()=>e?$m(e):null,[e])}var ad=[];function gg(e,t){t===void 0&&(t=Yt);let[n]=e,r=xd(n?Le(n):null),[o,a]=(0,k.useState)(ad);function i(){a(()=>e.length?e.map(l=>pd(l)?r:new Wn(t(l),l)):ad)}let s=xo({callback:i});return tt(()=>{s==null||s.disconnect(),i(),e.forEach(l=>s==null?void 0:s.observe(l))},[e]),o}function hg(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return sn(t)?t:e}function bg(e){let{measure:t}=e,[n,r]=(0,k.useState)(null),o=(0,k.useCallback)(u=>{for(let{target:f}of u)if(sn(f)){r(d=>{let c=t(f);return d?E(y({},d),{width:c.width,height:c.height}):c});break}},[t]),a=xo({callback:o}),i=(0,k.useCallback)(u=>{let f=hg(u);a==null||a.disconnect(),f&&(a==null||a.observe(f)),r(f?t(f):null)},[t,a]),[s,l]=Vn(i);return(0,k.useMemo)(()=>({nodeRef:s,rect:n,setRef:l}),[n,s,l])}var xg=[{sensor:vt,options:{}},{sensor:go,options:{}}],vg={current:{}},po={draggable:{measure:Jl},droppable:{measure:Jl,strategy:Hn.WhileDragging,frequency:Da.Optimized},dragOverlay:{measure:Yt}},Rt=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,r;return(n=(r=this.get(t))==null?void 0:r.node.current)!=null?n:void 0}},yg={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new Rt,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:mo},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:po,measureDroppableContainers:mo,windowRect:null,measuringScheduled:!1},wg={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:mo,draggableNodes:new Map,over:null,measureDroppableContainers:mo},vo=(0,k.createContext)(wg),vd=(0,k.createContext)(yg);function Cg(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new Rt}}}function Og(e,t){switch(t.type){case Ce.DragStart:return E(y({},e),{draggable:E(y({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case Ce.DragMove:return e.draggable.active==null?e:E(y({},e),{draggable:E(y({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case Ce.DragEnd:case Ce.DragCancel:return E(y({},e),{draggable:E(y({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case Ce.RegisterDroppable:{let{element:n}=t,{id:r}=n,o=new Rt(e.droppable.containers);return o.set(r,n),E(y({},e),{droppable:E(y({},e.droppable),{containers:o})})}case Ce.SetDroppableDisabled:{let{id:n,key:r,disabled:o}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let i=new Rt(e.droppable.containers);return i.set(n,E(y({},a),{disabled:o})),E(y({},e),{droppable:E(y({},e.droppable),{containers:i})})}case Ce.UnregisterDroppable:{let{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;let a=new Rt(e.droppable.containers);return a.delete(n),E(y({},e),{droppable:E(y({},e.droppable),{containers:a})})}default:return e}}function Sg(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:o}=(0,k.useContext)(vo),a=fo(r),i=fo(n==null?void 0:n.id);return(0,k.useEffect)(()=>{if(!t&&!r&&a&&i!=null){if(!zn(a)||document.activeElement===a.target)return;let s=o.get(i);if(!s)return;let{activatorNode:l,node:u}=s;if(!l.current&&!u.current)return;requestAnimationFrame(()=>{for(let f of[l.current,u.current]){if(!f)continue;let d=Rl(f);if(d){d.focus();break}}})}},[r,t,o,i,a]),null}function Eg(e,t){let o=t,{transform:n}=o,r=It(o,[\"transform\"]);return e!=null&&e.length?e.reduce((a,i)=>i(y({transform:a},r)),n):n}function Dg(e){return(0,k.useMemo)(()=>({draggable:y(y({},po.draggable),e==null?void 0:e.draggable),droppable:y(y({},po.droppable),e==null?void 0:e.droppable),dragOverlay:y(y({},po.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function Ig(e){let{activeNode:t,measure:n,initialRect:r,config:o=!0}=e,a=(0,k.useRef)(!1),{x:i,y:s}=typeof o==\"boolean\"?{x:o,y:o}:o;tt(()=>{if(!i&&!s||!t){a.current=!1;return}if(a.current||!r)return;let u=t==null?void 0:t.node.current;if(!u||u.isConnected===!1)return;let f=n(u),d=dd(f,r);if(i||(d.x=0),s||(d.y=0),a.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let c=cd(u);c&&c.scrollBy({top:d.y,left:d.x})}},[t,i,s,r,n])}var yd=(0,k.createContext)(E(y({},st),{scaleX:1,scaleY:1})),kt;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(kt||(kt={}));var Rn=(0,k.memo)(function(t){var n,r,o,a;let os=t,{id:i,accessibility:s,autoScroll:l=!0,children:u,sensors:f=xg,collisionDetection:d=Pm,measuring:c,modifiers:m}=os,x=It(os,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),v=(0,k.useReducer)(Og,void 0,Cg),[b,C]=v,[h,O]=Im(),[w,S]=(0,k.useState)(kt.Uninitialized),D=w===kt.Initialized,{draggable:{active:P,nodes:N,translate:F},droppable:{containers:V}}=b,T=P!=null?N.get(P):null,B=(0,k.useRef)({initial:null,translated:null}),Y=(0,k.useMemo)(()=>{var Pe;return P!=null?{id:P,data:(Pe=T==null?void 0:T.data)!=null?Pe:vg,rect:B}:null},[P,T]),te=(0,k.useRef)(null),[pe,ue]=(0,k.useState)(null),[ge,_e]=(0,k.useState)(null),Je=ln(x,Object.values(x)),yt=Wt(\"DndDescribedBy\",i),wt=(0,k.useMemo)(()=>V.getEnabled(),[V]),Oe=Dg(c),{droppableRects:Be,measureDroppableContainers:lt,measuringScheduled:ht}=ig(wt,{dragging:D,dependencies:[F.x,F.y],config:Oe.droppable}),Ne=og(N,P),Bt=(0,k.useMemo)(()=>ge?$n(ge):null,[ge]),dt=Pf(),ze=sg(Ne,Oe.draggable.measure);Ig({activeNode:P!=null?N.get(P):null,config:dt.layoutShiftCompensation,initialRect:ze,measure:Oe.draggable.measure});let oe=nd(Ne,Oe.draggable.measure,ze),Qt=nd(Ne?Ne.parentElement:null),me=(0,k.useRef)({activatorEvent:null,active:null,activeNode:Ne,collisionRect:null,collisions:null,droppableRects:Be,draggableNodes:N,draggingNode:null,draggingNodeRect:null,droppableContainers:V,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),$e=V.getNodeFor((n=me.current.over)==null?void 0:n.id),Ze=bg({measure:Oe.dragOverlay.measure}),en=(r=Ze.nodeRef.current)!=null?r:Ne,tn=D?(o=Ze.rect)!=null?o:oe:null,Xi=!!(Ze.nodeRef.current&&Ze.rect),Ji=cg(Xi?null:oe),Xo=xd(en?Le(en):null),Ct=ug(D?$e!=null?$e:Ne:null),Cr=gg(Ct),Or=Eg(m,{transform:{x:F.x-Ji.x,y:F.y-Ji.y,scaleX:1,scaleY:1},activatorEvent:ge,active:Y,activeNodeRect:oe,containerNodeRect:Qt,draggingNodeRect:tn,over:me.current.over,overlayNodeRect:Ze.rect,scrollableAncestors:Ct,scrollableAncestorRects:Cr,windowRect:Xo}),Zi=Bt?Gt(Bt,F):null,Qi=fg(Ct),Df=od(Qi),If=od(Qi,[oe]),nn=Gt(Or,Df),rn=tn?Lm(tn,Or):null,On=Y&&rn?d({active:Y,collisionRect:rn,droppableRects:Be,droppableContainers:wt,pointerCoordinates:Zi}):null,es=ld(On,\"id\"),[Ot,ts]=(0,k.useState)(null),Tf=Xi?Or:Gt(Or,If),Nf=_m(Tf,(a=Ot==null?void 0:Ot.rect)!=null?a:null,oe),Jo=(0,k.useRef)(null),ns=(0,k.useCallback)((Pe,Ue)=>{let{sensor:We,options:St}=Ue;if(te.current==null)return;let Qe=N.get(te.current);if(!Qe)return;let Ge=Pe.nativeEvent,ct=new We({active:te.current,activeNode:Qe,event:Ge,options:St,context:me,onAbort(ke){if(!N.get(ke))return;let{onDragAbort:ut}=Je.current,bt={id:ke};ut==null||ut(bt),h({type:\"onDragAbort\",event:bt})},onPending(ke,Et,ut,bt){if(!N.get(ke))return;let{onDragPending:En}=Je.current,Dt={id:ke,constraint:Et,initialCoordinates:ut,offset:bt};En==null||En(Dt),h({type:\"onDragPending\",event:Dt})},onStart(ke){let Et=te.current;if(Et==null)return;let ut=N.get(Et);if(!ut)return;let{onDragStart:bt}=Je.current,Sn={activatorEvent:Ge,active:{id:Et,data:ut.data,rect:B}};(0,qt.unstable_batchedUpdates)(()=>{bt==null||bt(Sn),S(kt.Initializing),C({type:Ce.DragStart,initialCoordinates:ke,active:Et}),h({type:\"onDragStart\",event:Sn}),ue(Jo.current),_e(Ge)})},onMove(ke){C({type:Ce.DragMove,coordinates:ke})},onEnd:on(Ce.DragEnd),onCancel:on(Ce.DragCancel)});Jo.current=ct;function on(ke){return async function(){let{active:ut,collisions:bt,over:Sn,scrollAdjustedTranslate:En}=me.current,Dt=null;if(ut&&En){let{cancelDrop:Dn}=Je.current;Dt={activatorEvent:Ge,active:ut,collisions:bt,delta:En,over:Sn},ke===Ce.DragEnd&&typeof Dn==\"function\"&&await Promise.resolve(Dn(Dt))&&(ke=Ce.DragCancel)}te.current=null,(0,qt.unstable_batchedUpdates)(()=>{C({type:ke}),S(kt.Uninitialized),ts(null),ue(null),_e(null),Jo.current=null;let Dn=ke===Ce.DragEnd?\"onDragEnd\":\"onDragCancel\";if(Dt){let Zo=Je.current[Dn];Zo==null||Zo(Dt),h({type:Dn,event:Dt})}})}}},[N]),kf=(0,k.useCallback)((Pe,Ue)=>(We,St)=>{let Qe=We.nativeEvent,Ge=N.get(St);if(te.current!==null||!Ge||Qe.dndKit||Qe.defaultPrevented)return;let ct={active:Ge};Pe(We,Ue.options,ct)===!0&&(Qe.dndKit={capturedBy:Ue.sensor},te.current=St,ns(We,Ue))},[N,ns]),rs=ag(f,kf);pg(f),tt(()=>{oe&&w===kt.Initializing&&S(kt.Initialized)},[oe,w]),(0,k.useEffect)(()=>{let{onDragMove:Pe}=Je.current,{active:Ue,activatorEvent:We,collisions:St,over:Qe}=me.current;if(!Ue||!We)return;let Ge={active:Ue,activatorEvent:We,collisions:St,delta:{x:nn.x,y:nn.y},over:Qe};(0,qt.unstable_batchedUpdates)(()=>{Pe==null||Pe(Ge),h({type:\"onDragMove\",event:Ge})})},[nn.x,nn.y]),(0,k.useEffect)(()=>{let{active:Pe,activatorEvent:Ue,collisions:We,droppableContainers:St,scrollAdjustedTranslate:Qe}=me.current;if(!Pe||te.current==null||!Ue||!Qe)return;let{onDragOver:Ge}=Je.current,ct=St.get(es),on=ct&&ct.rect.current?{id:ct.id,rect:ct.rect.current,data:ct.data,disabled:ct.disabled}:null,ke={active:Pe,activatorEvent:Ue,collisions:We,delta:{x:Qe.x,y:Qe.y},over:on};(0,qt.unstable_batchedUpdates)(()=>{ts(on),Ge==null||Ge(ke),h({type:\"onDragOver\",event:ke})})},[es]),tt(()=>{me.current={activatorEvent:ge,active:Y,activeNode:Ne,collisionRect:rn,collisions:On,droppableRects:Be,draggableNodes:N,draggingNode:en,draggingNodeRect:tn,droppableContainers:V,over:Ot,scrollableAncestors:Ct,scrollAdjustedTranslate:nn},B.current={initial:tn,translated:rn}},[Y,Ne,On,rn,N,en,tn,Be,V,Ot,Ct,nn]),tg(E(y({},dt),{delta:F,draggingRect:rn,pointerCoordinates:Zi,scrollableAncestors:Ct,scrollableAncestorRects:Cr}));let Af=(0,k.useMemo)(()=>({active:Y,activeNode:Ne,activeNodeRect:oe,activatorEvent:ge,collisions:On,containerNodeRect:Qt,dragOverlay:Ze,draggableNodes:N,droppableContainers:V,droppableRects:Be,over:Ot,measureDroppableContainers:lt,scrollableAncestors:Ct,scrollableAncestorRects:Cr,measuringConfiguration:Oe,measuringScheduled:ht,windowRect:Xo}),[Y,Ne,oe,ge,On,Qt,Ze,N,V,Be,Ot,lt,Ct,Cr,Oe,ht,Xo]),Ff=(0,k.useMemo)(()=>({activatorEvent:ge,activators:rs,active:Y,activeNodeRect:oe,ariaDescribedById:{draggable:yt},dispatch:C,draggableNodes:N,over:Ot,measureDroppableContainers:lt}),[ge,rs,Y,oe,C,yt,N,Ot,lt]);return k.default.createElement(sd.Provider,{value:O},k.default.createElement(vo.Provider,{value:Ff},k.default.createElement(vd.Provider,{value:Af},k.default.createElement(yd.Provider,{value:Nf},u)),k.default.createElement(Sg,{disabled:(s==null?void 0:s.restoreFocus)===!1})),k.default.createElement(km,E(y({},s),{hiddenTextDescribedById:yt})));function Pf(){let Pe=(pe==null?void 0:pe.autoScrollEnabled)===!1,Ue=typeof l==\"object\"?l.enabled===!1:l===!1,We=D&&!Pe&&!Ue;return typeof l==\"object\"?E(y({},l),{enabled:We}):{enabled:We}}}),Tg=(0,k.createContext)(null),id=\"button\",Ng=\"Draggable\";function wd(e){let{id:t,data:n,disabled:r=!1,attributes:o}=e,a=Wt(Ng),{activators:i,activatorEvent:s,active:l,activeNodeRect:u,ariaDescribedById:f,draggableNodes:d,over:c}=(0,k.useContext)(vo),{role:m=id,roleDescription:x=\"draggable\",tabIndex:v=0}=o!=null?o:{},b=(l==null?void 0:l.id)===t,C=(0,k.useContext)(b?yd:Tg),[h,O]=Vn(),[w,S]=Vn(),D=mg(i,t),P=ln(n);tt(()=>(d.set(t,{id:t,key:a,node:h,activatorNode:w,data:P}),()=>{let F=d.get(t);F&&F.key===a&&d.delete(t)}),[d,t]);let N=(0,k.useMemo)(()=>({role:m,tabIndex:v,\"aria-disabled\":r,\"aria-pressed\":b&&m===id?!0:void 0,\"aria-roledescription\":x,\"aria-describedby\":f.draggable}),[r,m,v,b,x,f.draggable]);return{active:l,activatorEvent:s,activeNodeRect:u,attributes:N,isDragging:b,listeners:r?void 0:D,node:h,over:c,setNodeRef:O,setActivatorNodeRef:S,transform:C}}function Cd(){return(0,k.useContext)(vd)}var kg=\"Droppable\",Ag={timeout:25};function Od(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:o}=e,a=Wt(kg),{active:i,dispatch:s,over:l,measureDroppableContainers:u}=(0,k.useContext)(vo),f=(0,k.useRef)({disabled:n}),d=(0,k.useRef)(!1),c=(0,k.useRef)(null),m=(0,k.useRef)(null),{disabled:x,updateMeasurementsFor:v,timeout:b}=y(y({},Ag),o),C=ln(v!=null?v:r),h=(0,k.useCallback)(()=>{if(!d.current){d.current=!0;return}m.current!=null&&clearTimeout(m.current),m.current=setTimeout(()=>{u(Array.isArray(C.current)?C.current:[C.current]),m.current=null},b)},[b]),O=xo({callback:h,disabled:x||!i}),w=(0,k.useCallback)((N,F)=>{O&&(F&&(O.unobserve(F),d.current=!1),N&&O.observe(N))},[O]),[S,D]=Vn(w),P=ln(t);return(0,k.useEffect)(()=>{!O||!S.current||(O.disconnect(),d.current=!1,O.observe(S.current))},[S,O]),(0,k.useEffect)(()=>(s({type:Ce.RegisterDroppable,element:{id:r,key:a,disabled:n,node:S,rect:c,data:P}}),()=>s({type:Ce.UnregisterDroppable,key:a,id:r})),[r]),(0,k.useEffect)(()=>{n!==f.current.disabled&&(s({type:Ce.SetDroppableDisabled,id:r,key:a,disabled:n}),f.current.disabled=n)},[r,a,n,s]),{active:i,rect:c,isOver:(l==null?void 0:l.id)===r,node:S,over:l,setNodeRef:D}}var Yn=e=>{let{transform:t}=e;return E(y({},t),{x:0})};var be=W(J());function qe(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function Fg(e,t){return e.reduce((n,r,o)=>{let a=t.get(r);return a&&(n[o]=a),n},Array(e.length))}function yo(e){return e!==null&&e>=0}function Pg(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n{let{rects:t,activeIndex:n,overIndex:r,index:o}=e,a=qe(t,r,n),i=t[o],s=a[o];return!s||!i?null:{x:s.left-i.left,y:s.top-i.top,scaleX:s.width/i.width,scaleY:s.height/i.height}};var wo={scaleX:1,scaleY:1},Kn=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:a,overIndex:i}=e,s=(t=a[n])!=null?t:r;if(!s)return null;if(o===n){let u=a[i];return u?y({x:0,y:nn&&o<=i?y({x:0,y:-s.height-l},wo):o=i?y({x:0,y:s.height+l},wo):y({x:0,y:0},wo)};function Bg(e,t,n){let r=e[t],o=e[t-1],a=e[t+1];return r?nr.map(D=>typeof D==\"object\"&&\"id\"in D?D.id:D),[r]),x=i!=null,v=i?m.indexOf(i.id):-1,b=u?m.indexOf(u.id):-1,C=(0,be.useRef)(m),h=!Pg(m,C.current),O=b!==-1&&v===-1||h,w=_g(a);tt(()=>{h&&x&&f(m)},[h,m,x,f]),(0,be.useEffect)(()=>{C.current=m},[m]);let S=(0,be.useMemo)(()=>({activeIndex:v,containerId:d,disabled:w,disableTransforms:O,items:m,overIndex:b,useDragOverlay:c,sortedRects:Fg(m,l),strategy:o}),[v,d,w.draggable,w.droppable,O,m,b,l,c,o]);return be.default.createElement(Dd.Provider,{value:S},t)}var Lg=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return qe(n,r,o).indexOf(t)},Mg=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:a,newIndex:i,previousItems:s,previousContainerId:l,transition:u}=e;return!u||!r||s!==a&&o===i?!1:n?!0:i!==o&&t===l},Vg={duration:200,easing:\"ease\"},Id=\"transform\",zg=gt.Transition.toString({property:Id,duration:0,easing:\"linear\"}),$g={roleDescription:\"sortable\"};function Ug(e){let{disabled:t,index:n,node:r,rect:o}=e,[a,i]=(0,be.useState)(null),s=(0,be.useRef)(n);return tt(()=>{if(!t&&n!==s.current&&r.current){let l=o.current;if(l){let u=Yt(r.current,{ignoreTransform:!0}),f={x:l.left-u.left,y:l.top-u.top,scaleX:l.width/u.width,scaleY:l.height/u.height};(f.x||f.y)&&i(f)}}n!==s.current&&(s.current=n)},[t,n,r,o]),(0,be.useEffect)(()=>{a&&i(null)},[a]),a}function Co(e){let{animateLayoutChanges:t=Mg,attributes:n,disabled:r,data:o,getNewIndex:a=Lg,id:i,strategy:s,resizeObserverConfig:l,transition:u=Vg}=e,{items:f,containerId:d,activeIndex:c,disabled:m,disableTransforms:x,sortedRects:v,overIndex:b,useDragOverlay:C,strategy:h}=(0,be.useContext)(Dd),O=Wg(r,m),w=f.indexOf(i),S=(0,be.useMemo)(()=>y({sortable:{containerId:d,index:w,items:f}},o),[d,o,w,f]),D=(0,be.useMemo)(()=>f.slice(f.indexOf(i)),[f,i]),{rect:P,node:N,isOver:F,setNodeRef:V}=Od({id:i,data:S,disabled:O.droppable,resizeObserverConfig:y({updateMeasurementsFor:D},l)}),{active:T,activatorEvent:B,activeNodeRect:Y,attributes:te,setNodeRef:pe,listeners:ue,isDragging:ge,over:_e,setActivatorNodeRef:Je,transform:yt}=wd({id:i,data:S,attributes:y(y({},$g),n),disabled:O.draggable}),wt=Hl(V,pe),Oe=!!T,Be=Oe&&!x&&yo(c)&&yo(b),lt=!C&&ge,ht=lt&&Be?yt:null,Ne=s!=null?s:h,Bt=Be?ht!=null?ht:Ne({rects:v,activeNodeRect:Y,activeIndex:c,overIndex:b,index:w}):null,dt=yo(c)&&yo(b)?a({id:i,items:f,activeIndex:c,overIndex:b}):w,ze=T==null?void 0:T.id,oe=(0,be.useRef)({activeId:ze,items:f,newIndex:dt,containerId:d}),Qt=f!==oe.current.items,me=t({active:T,containerId:d,isDragging:ge,isSorting:Oe,id:i,index:w,items:f,newIndex:oe.current.newIndex,previousItems:oe.current.items,previousContainerId:oe.current.containerId,transition:u,wasDragging:oe.current.activeId!=null}),$e=Ug({disabled:!me,index:w,node:N,rect:P});return(0,be.useEffect)(()=>{Oe&&oe.current.newIndex!==dt&&(oe.current.newIndex=dt),d!==oe.current.containerId&&(oe.current.containerId=d),f!==oe.current.items&&(oe.current.items=f)},[Oe,dt,d,f]),(0,be.useEffect)(()=>{if(ze===oe.current.activeId)return;if(ze!=null&&oe.current.activeId==null){oe.current.activeId=ze;return}let en=setTimeout(()=>{oe.current.activeId=ze},50);return()=>clearTimeout(en)},[ze]),{active:T,activeIndex:c,attributes:te,data:S,rect:P,index:w,newIndex:dt,items:f,isOver:F,isSorting:Oe,isDragging:ge,listeners:ue,node:N,overIndex:b,over:_e,setNodeRef:wt,setActivatorNodeRef:Je,setDroppableNodeRef:V,setDraggableNodeRef:pe,transform:$e!=null?$e:Bt,transition:Ze()};function Ze(){if($e||Qt&&oe.current.newIndex===w)return zg;if(!(lt&&!zn(B)||!u)&&(Oe||me))return gt.Transition.toString(E(y({},u),{property:Id}))}}function Wg(e,t){var n,r;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(r=e==null?void 0:e.droppable)!=null?r:t.droppable}}var $S=[ae.Down,ae.Right,ae.Up,ae.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=':root {\\n --bg-primary: #ffffff;\\n --bg-secondary: #f5f5f5;\\n --bg-tertiary: #fafafa;\\n --text-primary: rgba(0, 0, 0, 0.88);\\n --text-secondary: rgba(0, 0, 0, 0.65);\\n --text-tertiary: rgba(0, 0, 0, 0.45);\\n --border-color: #d9d9d9;\\n --border-color-light: #f0f0f0;\\n --shadow-color: rgba(0, 0, 0, 0.08);\\n --shadow-hover: rgba(0, 0, 0, 0.12);\\n --primary-color: #1890ff;\\n --primary-hover: #40a9ff;\\n --primary-active: #096dd9;\\n --spacing-xs: 4px;\\n --spacing-sm: 8px;\\n --spacing-md: 16px;\\n --spacing-lg: 24px;\\n --spacing-xl: 32px;\\n --radius-sm: 4px;\\n --radius-md: 8px;\\n --radius-lg: 12px;\\n --radius-xl: 16px;\\n --transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);\\n --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);\\n}\\n@media (prefers-color-scheme: dark) {\\n :root {\\n --bg-primary: #141414;\\n --bg-secondary: #1f1f1f;\\n --bg-tertiary: #2a2a2a;\\n --text-primary: rgba(255, 255, 255, 0.85);\\n --text-secondary: rgba(255, 255, 255, 0.65);\\n --text-tertiary: rgba(255, 255, 255, 0.45);\\n --border-color: #424242;\\n --border-color-light: #303030;\\n --shadow-color: rgba(0, 0, 0, 0.45);\\n --shadow-hover: rgba(0, 0, 0, 0.65);\\n }\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav {\\n background: #ffffff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: transparent !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active {\\n background: #ffffff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1890ff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab:hover {\\n color: #40a9ff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-ink-bar {\\n background: #1890ff !important;\\n}\\n.force-light-table-header .ant-table-thead > tr > th {\\n background: #fafafa !important;\\n color: rgba(0, 0, 0, 0.88) !important;\\n border-bottom: 1px solid #f0f0f0 !important;\\n}\\n.force-light-table-header .ant-table-tbody > tr > td {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label {\\n background: #ffffff !important;\\n padding: 16px !important;\\n border-radius: 8px !important;\\n}\\n.force-light-form-label .ant-form-item-label label {\\n color: rgba(0, 0, 0, 0.88) !important;\\n font-weight: 600 !important;\\n font-size: 14px !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-form-item-explain {\\n color: rgba(0, 0, 0, 0.65) !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-input,\\n.force-light-form-label .ant-form-item-control .ant-input-number-input,\\n.force-light-form-label .ant-form-item-control .ant-select-selector,\\n.force-light-form-label .ant-form-item-control .ant-input-textarea {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: #ffffff !important;\\n border-color: #d9d9d9 !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-input::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-input-number-input::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-select-selector::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-input-textarea::placeholder {\\n color: rgba(0, 0, 0, 0.45) !important;\\n}\\n.force-light-form-label .ant-form-item-label > label.ant-form-item-required::before {\\n color: #ff4d4f !important;\\n}\\n.force-light-form-label .ant-switch {\\n background: rgba(0, 0, 0, 0.25) !important;\\n}\\n.force-light-form-label .ant-switch.ant-switch-checked {\\n background: #1890ff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-selection-item {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-arrow {\\n color: rgba(0, 0, 0, 0.45) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown {\\n background: #ffffff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item.ant-select-item-option-selected {\\n background: #e6f7ff !important;\\n color: #1890ff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item:hover {\\n background: #f5f5f5 !important;\\n}\\n.force-light-form-label .ant-btn {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: #ffffff !important;\\n border-color: #d9d9d9 !important;\\n}\\n.force-light-form-label .ant-btn.ant-btn-primary {\\n color: #ffffff !important;\\n background: #1890ff !important;\\n border-color: #1890ff !important;\\n}\\n.force-light-form-label .ant-alert {\\n background: #e6f7ff !important;\\n border: 1px solid #91d5ff !important;\\n}\\n.force-light-form-label .ant-alert .ant-alert-message {\\n color: rgba(0, 0, 0, 0.88) !important;\\n font-weight: 500 !important;\\n}\\n.force-light-form-label .ant-alert .ant-alert-description {\\n color: rgba(0, 0, 0, 0.65) !important;\\n}\\n.force-light-form-label .ant-divider {\\n color: rgba(0, 0, 0, 0.45) !important;\\n border-color: #f0f0f0 !important;\\n}\\n.force-light-form-label .ant-divider .ant-divider-inner-text {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-tabs-tab {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1890ff !important;\\n}\\n* {\\n -webkit-tap-highlight-color: transparent;\\n box-sizing: border-box;\\n}\\nbody {\\n margin: 0;\\n padding: 0;\\n overflow-x: hidden;\\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\nhtml {\\n scroll-behavior: smooth;\\n}\\n@keyframes fadeIn {\\n from {\\n opacity: 0;\\n }\\n to {\\n opacity: 1;\\n }\\n}\\n@keyframes slideInUp {\\n from {\\n opacity: 0;\\n transform: translateY(20px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n@keyframes slideInRight {\\n from {\\n opacity: 0;\\n transform: translateX(20px);\\n }\\n to {\\n opacity: 1;\\n transform: translateX(0);\\n }\\n}\\n@keyframes scaleIn {\\n from {\\n opacity: 0;\\n transform: scale(0.95);\\n }\\n to {\\n opacity: 1;\\n transform: scale(1);\\n }\\n}\\n.app-layout {\\n width: 100vw;\\n min-height: 100vh;\\n box-sizing: border-box;\\n padding: var(--spacing-md);\\n padding-top: max(var(--spacing-md), env(safe-area-inset-top));\\n padding-bottom: max(var(--spacing-md), env(safe-area-inset-bottom));\\n padding-left: max(var(--spacing-md), env(safe-area-inset-left));\\n padding-right: max(var(--spacing-md), env(safe-area-inset-right));\\n max-width: 1200px;\\n margin: 0 auto;\\n background: var(--bg-secondary);\\n}\\n@media (max-width: 575px) {\\n .app-layout {\\n padding: var(--spacing-sm);\\n padding-top: max(var(--spacing-sm), env(safe-area-inset-top));\\n padding-bottom: max(var(--spacing-sm), env(safe-area-inset-bottom));\\n }\\n}\\n@media (min-width: 768px) and (max-width: 991px) {\\n .app-layout {\\n padding: var(--spacing-lg);\\n }\\n}\\n@media (min-width: 992px) and (max-width: 1199px) {\\n .app-layout {\\n padding: var(--spacing-xl);\\n }\\n}\\n@media (min-width: 1200px) {\\n .app-layout {\\n padding: 48px;\\n }\\n}\\n.app-layout .app-header-row {\\n display: flex;\\n justify-content: flex-end;\\n margin-bottom: var(--spacing-md);\\n padding: var(--spacing-sm) var(--spacing-md);\\n background: var(--bg-primary);\\n border-radius: var(--radius-lg);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.app-layout .app-header-row .import-export-buttons {\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 575px) {\\n .app-layout .app-header-row .import-export-buttons {\\n flex-wrap: wrap;\\n justify-content: flex-end;\\n width: 100%;\\n }\\n}\\n@media (max-width: 575px) {\\n .app-layout .app-header-row {\\n margin-bottom: var(--spacing-sm);\\n padding: var(--spacing-xs) var(--spacing-sm);\\n border-radius: var(--radius-md);\\n }\\n}\\n.app-layout .ant-tabs {\\n background: var(--bg-primary);\\n border-radius: var(--radius-lg);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n min-height: calc(100vh - (2 * var(--spacing-md)));\\n display: flex;\\n flex-direction: column;\\n}\\n@media (max-width: 575px) {\\n .app-layout .ant-tabs {\\n border-radius: var(--radius-md);\\n min-height: calc(100vh - (2 * var(--spacing-sm)));\\n }\\n}\\n.app-layout .ant-tabs .ant-tabs-nav .ant-tabs-extra-content {\\n margin-left: auto;\\n display: flex;\\n align-items: center;\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 767px) {\\n .app-layout .ant-tabs .ant-tabs-nav .ant-tabs-extra-content {\\n flex-wrap: wrap;\\n justify-content: flex-end;\\n margin-top: var(--spacing-sm);\\n }\\n}\\n@media (max-width: 767px) {\\n .app-layout .ant-tabs .ant-tabs-nav {\\n padding-bottom: var(--spacing-sm);\\n }\\n}\\n.app-layout .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .app-layout .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-tabs {\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n}\\n.ant-tabs .ant-tabs-content {\\n transition: opacity var(--transition-base);\\n flex: 1;\\n overflow: hidden;\\n}\\n.ant-tabs .ant-tabs-tabpane {\\n animation: fadeIn var(--transition-base);\\n height: 100%;\\n}\\n.ant-tabs .ant-tabs-nav {\\n margin-bottom: 0;\\n padding: var(--spacing-md) var(--spacing-md) 0;\\n flex-shrink: 0;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-nav {\\n padding: var(--spacing-sm) var(--spacing-sm) 0;\\n }\\n}\\n.ant-tabs .ant-tabs-tab {\\n padding: 12px 16px;\\n font-size: 14px;\\n transition: all var(--transition-fast);\\n border-radius: var(--radius-sm) var(--radius-sm) 0 0;\\n}\\n.ant-tabs .ant-tabs-tab:hover {\\n color: var(--primary-hover);\\n}\\n.ant-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: var(--primary-color);\\n font-weight: 600;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-tab {\\n padding: 10px 12px;\\n font-size: 13px;\\n }\\n}\\n.ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-md);\\n overflow-y: auto;\\n overflow-x: hidden;\\n -webkit-overflow-scrolling: touch;\\n flex: 1;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-tabs .ant-tabs-extra-content {\\n display: flex;\\n align-items: center;\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-extra-content {\\n flex-wrap: wrap;\\n }\\n}\\n@media (min-width: 768px) {\\n .ant-tabs .ant-tabs-nav {\\n flex-wrap: nowrap !important;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-tabs .ant-tabs-nav {\\n flex-wrap: wrap;\\n }\\n .ant-tabs .ant-tabs-nav-list {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n flex-wrap: nowrap;\\n }\\n .ant-tabs .ant-tabs-nav-list::-webkit-scrollbar {\\n height: 4px;\\n }\\n .ant-tabs .ant-tabs-nav-list::-webkit-scrollbar-thumb {\\n background: var(--border-color);\\n border-radius: 2px;\\n }\\n}\\n@media (max-width: 767px) and (max-width: 400px) {\\n .container > .ant-card > .ant-card-body > .ant-tabs .ant-tabs-extra-content {\\n flex: 1 1 100%;\\n margin-top: var(--spacing-sm);\\n justify-content: flex-end;\\n }\\n}\\n.qrcodeCard {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n padding: var(--spacing-lg);\\n animation: slideInUp var(--transition-base);\\n}\\n.qrcodeCard img {\\n width: 180px;\\n height: 180px;\\n cursor: pointer;\\n border-radius: var(--radius-md);\\n box-shadow: 0 2px 8px var(--shadow-color);\\n transition: transform var(--transition-base), box-shadow var(--transition-base);\\n}\\n.qrcodeCard img:hover {\\n transform: scale(1.05);\\n box-shadow: 0 4px 16px var(--shadow-hover);\\n}\\n.qrcodeCard img:active {\\n transform: scale(0.98);\\n}\\n@media (max-width: 575px) {\\n .qrcodeCard img {\\n width: 140px;\\n height: 140px;\\n }\\n}\\n@media (min-width: 576px) and (max-width: 767px) {\\n .qrcodeCard img {\\n width: 160px;\\n height: 160px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .qrcodeCard img {\\n width: 200px;\\n height: 200px;\\n }\\n}\\n.qrcodeCard .btns {\\n display: flex;\\n justify-content: space-around;\\n margin-top: var(--spacing-lg);\\n width: 100%;\\n gap: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .qrcodeCard .btns {\\n flex-direction: column;\\n gap: var(--spacing-sm);\\n }\\n .qrcodeCard .btns .ant-btn {\\n width: 100%;\\n margin: 0 !important;\\n justify-content: center;\\n }\\n}\\n@media (min-width: 576px) {\\n .qrcodeCard .btns .ant-btn {\\n flex: 1;\\n margin: 0 !important;\\n }\\n}\\n@media (min-width: 1200px) {\\n .qrcodeCard .btns {\\n gap: var(--spacing-md);\\n margin-top: var(--spacing-xl);\\n }\\n}\\n.ant-form {\\n animation: fadeIn var(--transition-base);\\n}\\n.ant-form .ant-form-item {\\n margin-bottom: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-form .ant-form-item {\\n margin-bottom: var(--spacing-sm);\\n }\\n}\\n.ant-form .ant-form-item-label {\\n padding-bottom: var(--spacing-xs);\\n}\\n.ant-form .ant-form-item-label label {\\n font-weight: 500;\\n}\\n.ant-input,\\n.ant-input-number,\\n.ant-select-selector,\\n.ant-input-textarea {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-input:hover,\\n.ant-input-number:hover,\\n.ant-select-selector:hover,\\n.ant-input-textarea:hover {\\n border-color: var(--primary-hover);\\n}\\n.ant-input:focus,\\n.ant-input-number:focus,\\n.ant-select-selector:focus,\\n.ant-input-textarea:focus,\\n.ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-select-selector.ant-input-focused,\\n.ant-input-textarea.ant-input-focused {\\n border-color: var(--primary-color);\\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 767px) {\\n .ant-input,\\n .ant-input-number-input,\\n .ant-select-selector,\\n .ant-input-textarea {\\n font-size: 16px !important;\\n min-height: 44px;\\n }\\n}\\n.ant-btn {\\n border-radius: var(--radius-sm);\\n font-weight: 500;\\n transition: all var(--transition-fast);\\n}\\n.ant-btn:hover {\\n transform: translateY(-1px);\\n box-shadow: 0 2px 8px var(--shadow-color);\\n}\\n.ant-btn:active {\\n transform: translateY(0);\\n}\\n@media (max-width: 767px) {\\n .ant-btn {\\n min-height: 44px;\\n font-size: 14px;\\n padding: 0 16px;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-btn.ant-btn-lg {\\n min-height: 48px;\\n font-size: 16px;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-btn.ant-btn-sm {\\n min-height: 36px;\\n font-size: 13px;\\n }\\n}\\n.ant-card {\\n border-radius: var(--radius-md);\\n transition: box-shadow var(--transition-base);\\n}\\n.ant-card:hover {\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-card .ant-card-head {\\n border-bottom: 1px solid var(--border-color-light);\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-card .ant-card-head {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-card .ant-card-head .ant-card-head-title {\\n font-weight: 600;\\n}\\n.ant-card .ant-card-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-card .ant-card-body {\\n padding: var(--spacing-md);\\n }\\n}\\n.sites-table,\\n.ant-table-wrapper {\\n animation: fadeIn var(--transition-base);\\n}\\n.sites-table .ant-table,\\n.ant-table-wrapper .ant-table {\\n border-radius: var(--radius-sm);\\n overflow: hidden;\\n}\\n.sites-table .ant-table-thead > tr > th,\\n.ant-table-wrapper .ant-table-thead > tr > th {\\n background: var(--bg-tertiary);\\n font-weight: 600;\\n white-space: nowrap;\\n}\\n.sites-table .ant-table-tbody > tr,\\n.ant-table-wrapper .ant-table-tbody > tr {\\n transition: background var(--transition-fast);\\n}\\n.sites-table .ant-table-tbody > tr:hover,\\n.ant-table-wrapper .ant-table-tbody > tr:hover {\\n background: var(--bg-tertiary);\\n}\\n.sites-table .ant-table-tbody > tr > td,\\n.ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 12px 16px;\\n white-space: nowrap;\\n}\\n@media (max-width: 575px) {\\n .sites-table .ant-table-tbody > tr > td,\\n .ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 8px 12px;\\n font-size: 13px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .sites-table .ant-table-tbody > tr > td,\\n .ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 14px 20px;\\n font-size: 15px;\\n }\\n}\\n@media (max-width: 767px) {\\n .sites-table,\\n .ant-table-wrapper {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n .sites-table .ant-btn,\\n .ant-table-wrapper .ant-btn {\\n padding: 4px 8px;\\n font-size: 12px;\\n min-height: 32px;\\n }\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 var(--spacing-sm);\\n color: var(--text-secondary);\\n font-size: 18px;\\n cursor: pointer;\\n transition: all var(--transition-fast);\\n min-width: 44px;\\n min-height: 44px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: var(--radius-sm);\\n}\\n.dynamic-delete-button:hover {\\n color: var(--text-primary);\\n background: var(--bg-tertiary);\\n}\\n.dynamic-delete-button:active {\\n transform: scale(0.95);\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n@media (max-width: 575px) {\\n .dynamic-delete-button {\\n font-size: 20px;\\n margin: 0 var(--spacing-xs);\\n }\\n}\\n@media (min-width: 1200px) {\\n .dynamic-delete-button {\\n font-size: 22px;\\n min-width: 48px;\\n min-height: 48px;\\n }\\n}\\n@media (max-width: 767px) {\\n .tg-channel-item {\\n display: flex !important;\\n flex-direction: row !important;\\n align-items: flex-start !important;\\n gap: var(--spacing-sm) !important;\\n width: 100%;\\n margin-bottom: var(--spacing-md) !important;\\n }\\n .tg-channel-item .tg-channel-input,\\n .tg-channel-item .tg-remark-input {\\n flex: 1 1 40%;\\n min-width: 0;\\n }\\n .tg-channel-item .tg-channel-input .ant-input,\\n .tg-channel-item .tg-remark-input .ant-input {\\n font-size: 16px !important;\\n min-height: 44px;\\n padding: 8px 11px;\\n border-radius: var(--radius-sm);\\n }\\n .tg-channel-item .tg-delete-btn {\\n flex: 0 0 44px;\\n min-width: 44px;\\n min-height: 44px;\\n }\\n .tg-channel-item .tg-delete-btn .ant-btn {\\n min-width: 44px !important;\\n min-height: 44px !important;\\n padding: 0 !important;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: var(--radius-sm);\\n }\\n}\\n.ant-alert {\\n border-radius: var(--radius-sm);\\n animation: slideInUp var(--transition-base);\\n}\\n@media (max-width: 575px) {\\n .ant-alert {\\n font-size: 13px;\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-alert {\\n font-size: 15px;\\n padding: var(--spacing-md) var(--spacing-lg);\\n }\\n}\\n.ant-switch {\\n transition: all var(--transition-fast);\\n}\\n@media (max-width: 767px) {\\n .ant-switch {\\n min-width: 44px;\\n height: 24px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-switch {\\n min-width: 52px;\\n height: 28px;\\n }\\n}\\n@media (max-width: 575px) {\\n .ant-modal {\\n margin: var(--spacing-sm);\\n max-width: calc(100vw - var(--spacing-md));\\n }\\n}\\n.ant-modal .ant-modal-content {\\n border-radius: var(--radius-md);\\n overflow: hidden;\\n}\\n.ant-modal .ant-modal-header {\\n border-bottom: 1px solid var(--border-color-light);\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (min-width: 1200px) {\\n .ant-modal .ant-modal-header {\\n padding: var(--spacing-lg) var(--spacing-xl);\\n }\\n}\\n.ant-modal .ant-modal-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-modal .ant-modal-body {\\n padding: var(--spacing-md);\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-modal .ant-modal-body {\\n padding: var(--spacing-xl);\\n font-size: 15px;\\n }\\n}\\n.ant-divider {\\n margin: var(--spacing-md) 0;\\n}\\n@media (max-width: 575px) {\\n .ant-divider {\\n margin: var(--spacing-sm) 0;\\n }\\n}\\n.ant-space.ant-space-vertical {\\n width: 100%;\\n}\\n.ant-tag {\\n border-radius: var(--radius-sm);\\n padding: 2px 8px;\\n font-size: 12px;\\n transition: all var(--transition-fast);\\n}\\n.ant-tag:hover {\\n opacity: 0.8;\\n}\\n.ant-list .ant-list-item {\\n padding: var(--spacing-md);\\n transition: background var(--transition-fast);\\n border-radius: var(--radius-sm);\\n}\\n.ant-list .ant-list-item:hover {\\n background: var(--bg-tertiary);\\n}\\n@media (max-width: 575px) {\\n .ant-list .ant-list-item {\\n padding: var(--spacing-sm);\\n }\\n}\\n::-webkit-scrollbar {\\n width: 8px;\\n height: 8px;\\n}\\n::-webkit-scrollbar-track {\\n background: var(--bg-secondary);\\n}\\n::-webkit-scrollbar-thumb {\\n background: var(--border-color);\\n border-radius: 4px;\\n}\\n::-webkit-scrollbar-thumb:hover {\\n background: var(--text-tertiary);\\n}\\n.ant-skeleton {\\n animation: fadeIn var(--transition-base);\\n}\\n.fade-in {\\n animation: fadeIn var(--transition-base);\\n}\\n.slide-in-up {\\n animation: slideInUp var(--transition-base);\\n}\\n.slide-in-right {\\n animation: slideInRight var(--transition-base);\\n}\\n.scale-in {\\n animation: scaleIn var(--transition-base);\\n}\\n.ant-spin .ant-spin-dot {\\n font-size: 24px;\\n}\\n@media (max-width: 575px) {\\n .ant-spin .ant-spin-dot {\\n font-size: 20px;\\n }\\n}\\n.loading-overlay {\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background: rgba(0, 0, 0, 0.45);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n z-index: 9999;\\n backdrop-filter: blur(4px);\\n animation: fadeIn var(--transition-fast);\\n}\\n@media (max-width: 767px) {\\n .ant-btn,\\n .ant-tabs-tab,\\n .ant-list-item,\\n .ant-table-row,\\n .dynamic-delete-button {\\n -webkit-tap-highlight-color: rgba(24, 144, 255, 0.1);\\n }\\n .ant-btn:active,\\n .ant-tabs-tab:active,\\n .ant-list-item:active,\\n .ant-table-row:active,\\n .dynamic-delete-button:active {\\n opacity: 0.8;\\n }\\n .ant-tabs-content,\\n .ant-card-body,\\n .ant-table-wrapper,\\n .ant-modal-body {\\n -webkit-overflow-scrolling: touch;\\n overscroll-behavior: contain;\\n }\\n body {\\n overscroll-behavior-y: contain;\\n }\\n}\\n.ant-btn:focus-visible,\\n.ant-input:focus-visible,\\n.ant-select:focus-visible,\\n.ant-tabs-tab:focus-visible {\\n outline: 2px solid var(--primary-color);\\n outline-offset: 2px;\\n}\\n.ant-btn:focus:not(:focus-visible),\\n.ant-input:focus:not(:focus-visible),\\n.ant-select:focus:not(:focus-visible),\\n.ant-tabs-tab:focus:not(:focus-visible) {\\n outline: none;\\n}\\n.ant-empty {\\n padding: var(--spacing-xl) var(--spacing-md);\\n}\\n.ant-empty .ant-empty-image {\\n height: 100px;\\n margin-bottom: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-empty .ant-empty-image {\\n height: 80px;\\n }\\n}\\n.ant-empty .ant-empty-description {\\n color: var(--text-secondary);\\n font-size: 14px;\\n}\\n@media (max-width: 575px) {\\n .ant-empty .ant-empty-description {\\n font-size: 13px;\\n }\\n}\\n.ant-message {\\n top: 20px;\\n}\\n@media (max-width: 575px) {\\n .ant-message {\\n top: 10px;\\n }\\n}\\n.ant-message .ant-message-notice-content {\\n border-radius: var(--radius-md);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n padding: 12px 16px;\\n}\\n@media (max-width: 575px) {\\n .ant-message .ant-message-notice-content {\\n padding: 10px 14px;\\n font-size: 14px;\\n }\\n}\\n.ant-skeleton .ant-skeleton-content .ant-skeleton-title {\\n height: 20px;\\n border-radius: var(--radius-sm);\\n}\\n.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph > li {\\n height: 16px;\\n border-radius: var(--radius-sm);\\n}\\n.ant-skeleton .ant-skeleton-avatar {\\n border-radius: var(--radius-md);\\n}\\n.ant-skeleton .ant-skeleton-button {\\n border-radius: var(--radius-sm);\\n}\\n.ant-drawer .ant-drawer-content {\\n border-radius: var(--radius-lg) var(--radius-lg) 0 0;\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-content {\\n border-radius: var(--radius-md) var(--radius-md) 0 0;\\n }\\n}\\n.ant-drawer .ant-drawer-header {\\n padding: var(--spacing-md) var(--spacing-lg);\\n border-bottom: 1px solid var(--border-color-light);\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-header {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-drawer .ant-drawer-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-body {\\n padding: var(--spacing-md);\\n }\\n}\\n.ant-popover .ant-popover-inner,\\n.ant-tooltip .ant-popover-inner,\\n.ant-popover .ant-tooltip-inner,\\n.ant-tooltip .ant-tooltip-inner {\\n border-radius: var(--radius-sm);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-badge .ant-badge-count {\\n border-radius: var(--radius-sm);\\n box-shadow: 0 2px 4px var(--shadow-color);\\n}\\n.ant-progress .ant-progress-inner {\\n border-radius: var(--radius-sm);\\n}\\n.ant-progress .ant-progress-bg {\\n border-radius: var(--radius-sm);\\n}\\n.ant-steps .ant-steps-item-icon {\\n border-radius: 50%;\\n transition: all var(--transition-fast);\\n}\\n.ant-steps .ant-steps-item-title {\\n font-weight: 500;\\n}\\n.ant-collapse {\\n border-radius: var(--radius-md);\\n border: 1px solid var(--border-color-light);\\n}\\n.ant-collapse .ant-collapse-item {\\n border-bottom: 1px solid var(--border-color-light);\\n}\\n.ant-collapse .ant-collapse-item:last-child {\\n border-bottom: none;\\n border-radius: 0 0 var(--radius-md) var(--radius-md);\\n}\\n.ant-collapse .ant-collapse-header {\\n padding: var(--spacing-md) var(--spacing-lg);\\n font-weight: 500;\\n transition: background var(--transition-fast);\\n}\\n.ant-collapse .ant-collapse-header:hover {\\n background: var(--bg-tertiary);\\n}\\n@media (max-width: 575px) {\\n .ant-collapse .ant-collapse-header {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-collapse .ant-collapse-content-box {\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-collapse .ant-collapse-content-box {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-timeline .ant-timeline-item-head {\\n border-radius: 50%;\\n}\\n.ant-timeline .ant-timeline-item-content {\\n margin-left: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-timeline .ant-timeline-item-content {\\n margin-left: var(--spacing-md);\\n }\\n}\\n.ant-result {\\n padding: var(--spacing-xl) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-result {\\n padding: var(--spacing-lg) var(--spacing-md);\\n }\\n}\\n.ant-result .ant-result-icon {\\n margin-bottom: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-icon {\\n margin-bottom: var(--spacing-md);\\n }\\n}\\n.ant-result .ant-result-title {\\n font-size: 24px;\\n font-weight: 600;\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-title {\\n font-size: 20px;\\n }\\n}\\n.ant-result .ant-result-subtitle {\\n font-size: 14px;\\n color: var(--text-secondary);\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-subtitle {\\n font-size: 13px;\\n }\\n}\\n.ant-descriptions .ant-descriptions-item-label {\\n font-weight: 500;\\n color: var(--text-primary);\\n}\\n.ant-descriptions .ant-descriptions-item-content {\\n color: var(--text-secondary);\\n}\\n@media (max-width: 575px) {\\n .ant-descriptions .ant-descriptions-item-label,\\n .ant-descriptions .ant-descriptions-item-content {\\n font-size: 13px;\\n }\\n}\\n.ant-statistic .ant-statistic-title {\\n font-size: 14px;\\n color: var(--text-secondary);\\n margin-bottom: var(--spacing-xs);\\n}\\n@media (max-width: 575px) {\\n .ant-statistic .ant-statistic-title {\\n font-size: 13px;\\n }\\n}\\n.ant-statistic .ant-statistic-content {\\n font-size: 24px;\\n font-weight: 600;\\n color: var(--text-primary);\\n}\\n@media (max-width: 575px) {\\n .ant-statistic .ant-statistic-content {\\n font-size: 20px;\\n }\\n}\\n.ant-segmented {\\n border-radius: var(--radius-sm);\\n padding: 2px;\\n background: var(--bg-tertiary);\\n}\\n.ant-segmented .ant-segmented-item {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-segmented .ant-segmented-item:hover {\\n color: var(--primary-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-segmented .ant-segmented-item {\\n padding: 6px 12px;\\n font-size: 13px;\\n }\\n}\\n.ant-segmented .ant-segmented-item-selected {\\n background: var(--bg-primary);\\n box-shadow: 0 2px 4px var(--shadow-color);\\n}\\n.ant-rate .ant-rate-star {\\n transition: all var(--transition-fast);\\n}\\n.ant-rate .ant-rate-star:hover {\\n transform: scale(1.1);\\n}\\n@media (max-width: 575px) {\\n .ant-rate {\\n font-size: 18px;\\n }\\n}\\n.ant-slider .ant-slider-rail {\\n border-radius: var(--radius-sm);\\n}\\n.ant-slider .ant-slider-track {\\n border-radius: var(--radius-sm);\\n}\\n.ant-slider .ant-slider-handle {\\n border-radius: 50%;\\n box-shadow: 0 2px 4px var(--shadow-color);\\n transition: all var(--transition-fast);\\n}\\n.ant-slider .ant-slider-handle:hover,\\n.ant-slider .ant-slider-handle:focus {\\n box-shadow: 0 4px 8px var(--shadow-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-slider .ant-slider-handle {\\n width: 20px;\\n height: 20px;\\n }\\n}\\n.ant-mentions {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-mentions:hover {\\n border-color: var(--primary-hover);\\n}\\n.ant-mentions:focus,\\n.ant-mentions.ant-mentions-focused {\\n border-color: var(--primary-color);\\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 575px) {\\n .ant-mentions {\\n font-size: 16px !important;\\n min-height: 44px;\\n }\\n}\\n.ant-transfer .ant-transfer-list {\\n border-radius: var(--radius-md);\\n border: 1px solid var(--border-color-light);\\n}\\n@media (max-width: 575px) {\\n .ant-transfer .ant-transfer-list {\\n width: 100%;\\n }\\n}\\n.ant-transfer .ant-transfer-list-header {\\n border-radius: var(--radius-md) var(--radius-md) 0 0;\\n background: var(--bg-tertiary);\\n padding: var(--spacing-sm) var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-transfer .ant-transfer-list-body {\\n font-size: 14px;\\n }\\n}\\n.ant-tree .ant-tree-node-content-wrapper {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-tree .ant-tree-node-content-wrapper:hover {\\n background: var(--bg-tertiary);\\n}\\n.ant-tree .ant-tree-node-selected .ant-tree-node-content-wrapper {\\n background: rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 575px) {\\n .ant-tree .ant-tree-title {\\n font-size: 14px;\\n }\\n}\\n.ant-picker-calendar {\\n border-radius: var(--radius-md);\\n}\\n.ant-picker-calendar .ant-picker-calendar-header {\\n padding: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-picker-calendar .ant-picker-calendar-header {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-picker-calendar .ant-picker-cell {\\n border-radius: var(--radius-sm);\\n}\\n.ant-picker-calendar .ant-picker-cell:hover .ant-picker-cell-inner {\\n background: var(--bg-tertiary);\\n}\\n.ant-picker-calendar .ant-picker-cell-selected .ant-picker-cell-inner {\\n background: var(--primary-color);\\n color: white;\\n}\\n.ant-image {\\n border-radius: var(--radius-md);\\n overflow: hidden;\\n}\\n.ant-image img {\\n transition: transform var(--transition-base);\\n}\\n.ant-image:hover img {\\n transform: scale(1.05);\\n}\\n.ant-watermark {\\n opacity: 0.15;\\n}\\n.ant-qrcode {\\n border-radius: var(--radius-md);\\n padding: var(--spacing-md);\\n background: white;\\n box-shadow: 0 2px 8px var(--shadow-color);\\n}\\n.ant-float-btn {\\n border-radius: 50%;\\n box-shadow: 0 4px 12px var(--shadow-color);\\n transition: all var(--transition-fast);\\n}\\n.ant-float-btn:hover {\\n transform: translateY(-2px);\\n box-shadow: 0 6px 16px var(--shadow-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-float-btn {\\n width: 48px;\\n height: 48px;\\n }\\n}\\n.ant-tour .ant-tour-content {\\n border-radius: var(--radius-md);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-tour .ant-tour-arrow::before {\\n background: var(--bg-primary);\\n}\\n@media print {\\n .container {\\n padding: 0;\\n background: white;\\n }\\n .ant-tabs-nav,\\n .ant-btn,\\n .ant-tabs-extra-content {\\n display: none !important;\\n }\\n * {\\n animation: none !important;\\n transition: none !important;\\n }\\n}\\n',document.head.appendChild(e)}var Td=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var I=W(J(),1),M=W(et(),1);var U=W(J()),fr=W(Er());function Me(e){return\"Minified Redux error #\".concat(e,\"; visit https://redux.js.org/Errors?code=\").concat(e,\" for the full message or use the non-minified dev environment for full errors. \")}var Hg=typeof Symbol==\"function\"&&Symbol.observable||\"@@observable\",Nd=Hg,Ia=()=>Math.random().toString(36).substring(7).split(\"\").join(\".\"),qg={INIT:\"@@redux/INIT\".concat(Ia()),REPLACE:\"@@redux/REPLACE\".concat(Ia()),PROBE_UNKNOWN_ACTION:()=>\"@@redux/PROBE_UNKNOWN_ACTION\".concat(Ia())},kd=qg;function jg(e){if(typeof e!=\"object\"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Ta(e,t,n){if(typeof e!=\"function\")throw new Error(Me(2));if(typeof t==\"function\"&&typeof n==\"function\"||typeof n==\"function\"&&typeof arguments[3]==\"function\")throw new Error(Me(0));if(typeof t==\"function\"&&typeof n>\"u\"&&(n=t,t=void 0),typeof n<\"u\"){if(typeof n!=\"function\")throw new Error(Me(1));return n(Ta)(e,t)}let r=e,o=t,a=new Map,i=a,s=0,l=!1;function u(){i===a&&(i=new Map,a.forEach((b,C)=>{i.set(C,b)}))}function f(){if(l)throw new Error(Me(3));return o}function d(b){if(typeof b!=\"function\")throw new Error(Me(4));if(l)throw new Error(Me(5));let C=!0;u();let h=s++;return i.set(h,b),function(){if(C){if(l)throw new Error(Me(6));C=!1,u(),i.delete(h),a=null}}}function c(b){if(!jg(b))throw new Error(Me(7));if(typeof b.type>\"u\")throw new Error(Me(8));if(typeof b.type!=\"string\")throw new Error(Me(17));if(l)throw new Error(Me(9));try{l=!0,o=r(o,b)}finally{l=!1}return(a=i).forEach(h=>{h()}),b}function m(b){if(typeof b!=\"function\")throw new Error(Me(10));r=b,c({type:kd.REPLACE})}function x(){let b=d;return{subscribe(C){if(typeof C!=\"object\"||C===null)throw new Error(Me(11));function h(){let w=C;w.next&&w.next(f())}return h(),{unsubscribe:b(h)}},[Nd](){return this}}}return c({type:kd.INIT}),{dispatch:c,subscribe:d,getState:f,replaceReducer:m,[Nd]:x}}function Ad(e,t){return function(...n){return t(e.apply(this,n))}}function Na(e,t){if(typeof e==\"function\")return Ad(e,t);if(typeof e!=\"object\"||e===null)throw new Error(Me(16));let n={};for(let r in e){let o=e[r];typeof o==\"function\"&&(n[r]=Ad(o,t))}return n}function ka(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function Fd(...e){return t=>(n,r)=>{let o=t(n,r),a=()=>{throw new Error(Me(15))},i={getState:o.getState,dispatch:(l,...u)=>a(l,...u)},s=e.map(l=>l(i));return a=ka(...s)(o.dispatch),E(y({},o),{dispatch:a})}}var X=W(J(),1),jh=W(Ld(),1);var eh=X.version.startsWith(\"19\"),th=Symbol.for(eh?\"react.transitional.element\":\"react.element\"),nh=Symbol.for(\"react.portal\"),rh=Symbol.for(\"react.fragment\"),oh=Symbol.for(\"react.strict_mode\"),ah=Symbol.for(\"react.profiler\"),ih=Symbol.for(\"react.consumer\"),sh=Symbol.for(\"react.context\"),Gd=Symbol.for(\"react.forward_ref\"),lh=Symbol.for(\"react.suspense\"),dh=Symbol.for(\"react.suspense_list\"),La=Symbol.for(\"react.memo\"),ch=Symbol.for(\"react.lazy\");var uh=Gd,fh=La;function ph(e){if(typeof e==\"object\"&&e!==null){let{$$typeof:t}=e;switch(t){case th:switch(e=e.type,e){case rh:case ah:case oh:case lh:case dh:return e;default:switch(e=e&&e.$$typeof,e){case sh:case Gd:case ch:case La:return e;case ih:return e;default:return t}}case nh:return t}}}function mh(e){return ph(e)===La}function gh(e,t,n,r,{areStatesEqual:o,areOwnPropsEqual:a,areStatePropsEqual:i}){let s=!1,l,u,f,d,c;function m(h,O){return l=h,u=O,f=e(l,u),d=t(r,u),c=n(f,d,u),s=!0,c}function x(){return f=e(l,u),t.dependsOnOwnProps&&(d=t(r,u)),c=n(f,d,u),c}function v(){return e.dependsOnOwnProps&&(f=e(l,u)),t.dependsOnOwnProps&&(d=t(r,u)),c=n(f,d,u),c}function b(){let h=e(l,u),O=!i(h,f);return f=h,O&&(c=n(f,d,u)),c}function C(h,O){let w=!a(O,u),S=!o(h,l,O,u);return l=h,u=O,w&&S?x():w?v():S?b():c}return function(O,w){return s?C(O,w):m(O,w)}}function hh(e,a){var i=a,{initMapStateToProps:t,initMapDispatchToProps:n,initMergeProps:r}=i,o=It(i,[\"initMapStateToProps\",\"initMapDispatchToProps\",\"initMergeProps\"]);let s=t(e,o),l=n(e,o),u=r(e,o);return gh(s,l,u,e,o)}function bh(e,t){let n={};for(let r in e){let o=e[r];typeof o==\"function\"&&(n[r]=(...a)=>t(o(...a)))}return n}function _a(e){return function(n){let r=e(n);function o(){return r}return o.dependsOnOwnProps=!1,o}}function Md(e){return e.dependsOnOwnProps?!!e.dependsOnOwnProps:e.length!==1}function Hd(e,t){return function(r,{displayName:o}){let a=function(s,l){return a.dependsOnOwnProps?a.mapToProps(s,l):a.mapToProps(s,void 0)};return a.dependsOnOwnProps=!0,a.mapToProps=function(s,l){a.mapToProps=e,a.dependsOnOwnProps=Md(e);let u=a(s,l);return typeof u==\"function\"&&(a.mapToProps=u,a.dependsOnOwnProps=Md(u),u=a(s,l)),u},a}}function Ma(e,t){return(n,r)=>{throw new Error(\"Invalid value of type \".concat(typeof e,\" for \").concat(t,\" argument when connecting component \").concat(r.wrappedComponentName,\".\"))}}function xh(e){return e&&typeof e==\"object\"?_a(t=>bh(e,t)):e?typeof e==\"function\"?Hd(e,\"mapDispatchToProps\"):Ma(e,\"mapDispatchToProps\"):_a(t=>({dispatch:t}))}function vh(e){return e?typeof e==\"function\"?Hd(e,\"mapStateToProps\"):Ma(e,\"mapStateToProps\"):_a(()=>({}))}function yh(e,t,n){return y(y(y({},n),e),t)}function wh(e){return function(n,{displayName:r,areMergedPropsEqual:o}){let a=!1,i;return function(l,u,f){let d=e(l,u,f);return a?o(d,i)||(i=d):(a=!0,i=d),i}}}function Ch(e){return e?typeof e==\"function\"?wh(e):Ma(e,\"mergeProps\"):()=>yh}function Oh(e){e()}function Sh(){let e=null,t=null;return{clear(){e=null,t=null},notify(){Oh(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){let n=[],r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0,o=t={callback:n,next:null,prev:t};return o.prev?o.prev.next=o:e=o,function(){!r||e===null||(r=!1,o.next?o.next.prev=o.prev:t=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}var Vd={notify(){},get:()=>[]};function qd(e,t){let n,r=Vd,o=0,a=!1;function i(v){f();let b=r.subscribe(v),C=!1;return()=>{C||(C=!0,b(),d())}}function s(){r.notify()}function l(){x.onStateChange&&x.onStateChange()}function u(){return a}function f(){o++,n||(n=t?t.addNestedSub(l):e.subscribe(l),r=Sh())}function d(){o--,n&&o===0&&(n(),n=void 0,r.clear(),r=Vd)}function c(){a||(a=!0,f())}function m(){a&&(a=!1,d())}let x={addNestedSub:i,notifyNestedSubs:s,handleChangeWrapper:l,isSubscribed:u,trySubscribe:c,tryUnsubscribe:m,getListeners:()=>r};return x}var Eh=()=>typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\",Dh=Eh(),Ih=()=>typeof navigator<\"u\"&&navigator.product===\"ReactNative\",Th=Ih(),Nh=()=>Dh||Th?X.useLayoutEffect:X.useEffect,Oo=Nh();function zd(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function Aa(e,t){if(zd(e,t))return!0;if(typeof e!=\"object\"||e===null||typeof t!=\"object\"||t===null)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let o=0;oe(...t),n)}function Uh(e,t,n,r,o,a){e.current=r,n.current=!1,o.current&&(o.current=null,a())}function Wh(e,t,n,r,o,a,i,s,l,u,f){if(!e)return()=>{};let d=!1,c=null,m=()=>{if(d||!s.current)return;let v=t.getState(),b,C;try{b=r(v,o.current)}catch(h){C=h,c=h}C||(c=null),b===a.current?i.current||u():(a.current=b,l.current=b,i.current=!0,f())};return n.onStateChange=m,n.trySubscribe(),m(),()=>{if(d=!0,n.tryUnsubscribe(),n.onStateChange=null,c)throw c}}function Gh(e,t){return e===t}function Hh(e,t,n,{pure:r,areStatesEqual:o=Gh,areOwnPropsEqual:a=Aa,areStatePropsEqual:i=Aa,areMergedPropsEqual:s=Aa,forwardRef:l=!1,context:u=Rd}={}){let f=u,d=vh(e),c=xh(t),m=Ch(n),x=!!e;return b=>{let C=b.displayName||b.name||\"Component\",h=\"Connect(\".concat(C,\")\"),O={shouldHandleStateChanges:x,displayName:h,wrappedComponentName:C,WrappedComponent:b,initMapStateToProps:d,initMapDispatchToProps:c,initMergeProps:m,areStatesEqual:o,areStatePropsEqual:i,areOwnPropsEqual:a,areMergedPropsEqual:s};function w(P){let[N,F,V]=X.useMemo(()=>{let Ze=P,{reactReduxForwardedRef:me}=Ze,$e=It(Ze,[\"reactReduxForwardedRef\"]);return[P.context,me,$e]},[P]),T=X.useMemo(()=>{let me=f;return N!=null&&N.Consumer,me},[N,f]),B=X.useContext(T),Y=!!P.store&&!!P.store.getState&&!!P.store.dispatch,te=!!B&&!!B.store,pe=Y?P.store:B.store,ue=te?B.getServerState:pe.getState,ge=X.useMemo(()=>hh(pe.dispatch,O),[pe]),[_e,Je]=X.useMemo(()=>{if(!x)return zh;let me=qd(pe,Y?void 0:B.subscription),$e=me.notifyNestedSubs.bind(me);return[me,$e]},[pe,Y,B]),yt=X.useMemo(()=>Y?B:E(y({},B),{subscription:_e}),[Y,B,_e]),wt=X.useRef(void 0),Oe=X.useRef(V),Be=X.useRef(void 0),lt=X.useRef(!1),ht=X.useRef(!1),Ne=X.useRef(void 0);Oo(()=>(ht.current=!0,()=>{ht.current=!1}),[]);let Bt=X.useMemo(()=>()=>Be.current&&V===Oe.current?Be.current:ge(pe.getState(),V),[pe,V]),dt=X.useMemo(()=>$e=>_e?Wh(x,pe,_e,ge,Oe,wt,lt,ht,Be,Je,$e):()=>{},[_e]);$h(Uh,[Oe,wt,lt,V,Be,Je]);let ze;try{ze=X.useSyncExternalStore(dt,Bt,ue?()=>ge(ue(),V):Bt)}catch(me){throw Ne.current&&(me.message+=\"\\nThe error may be correlated with this previous error:\\n\".concat(Ne.current.stack,\"\\n\\n\")),me}Oo(()=>{Ne.current=void 0,Be.current=void 0,wt.current=ze});let oe=X.useMemo(()=>X.createElement(b,E(y({},ze),{ref:F})),[F,b,ze]);return X.useMemo(()=>x?X.createElement(T.Provider,{value:yt},oe):oe,[T,oe,yt])}let D=X.memo(w);if(D.WrappedComponent=b,D.displayName=w.displayName=h,l){let N=X.forwardRef(function(V,T){return X.createElement(D,E(y({},V),{reactReduxForwardedRef:T}))});return N.displayName=h,N.WrappedComponent=b,Ba(N,b)}return Ba(D,b)}}var Va=Hh;function qh(e){let{children:t,context:n,serverState:r,store:o}=e,a=X.useMemo(()=>{let l=qd(o);return{store:o,subscription:l,getServerState:r?()=>r:void 0}},[o,r]),i=X.useMemo(()=>o.getState(),[o]);return Oo(()=>{let{subscription:l}=a;return l.onStateChange=l.notifyNestedSubs,l.trySubscribe(),i!==o.getState()&&l.notifyNestedSubs(),()=>{l.tryUnsubscribe(),l.onStateChange=void 0}},[a,i]),X.createElement((n||Rd).Provider,{value:a},t)}var Yd=qh;var Rh=!0,za=\"Invariant failed\";function Kd(e,t){if(!e){if(Rh)throw new Error(za);var n=typeof t==\"function\"?t():t,r=n?\"\".concat(za,\": \").concat(n):za;throw new Error(r)}}var ot=function(t){var n=t.top,r=t.right,o=t.bottom,a=t.left,i=r-a,s=o-n,l={top:n,right:r,bottom:o,left:a,width:i,height:s,x:a,y:n,center:{x:(r+a)/2,y:(o+n)/2}};return l},So=function(t,n){return{top:t.top-n.top,left:t.left-n.left,bottom:t.bottom+n.bottom,right:t.right+n.right}},Xd=function(t,n){return{top:t.top+n.top,left:t.left+n.left,bottom:t.bottom-n.bottom,right:t.right-n.right}},Yh=function(t,n){return{top:t.top+n.y,left:t.left+n.x,bottom:t.bottom+n.y,right:t.right+n.x}},$a={top:0,right:0,bottom:0,left:0},Eo=function(t){var n=t.borderBox,r=t.margin,o=r===void 0?$a:r,a=t.border,i=a===void 0?$a:a,s=t.padding,l=s===void 0?$a:s,u=ot(So(n,o)),f=ot(Xd(n,i)),d=ot(Xd(f,l));return{marginBox:u,borderBox:ot(n),paddingBox:f,contentBox:d,margin:o,border:i,padding:l}},rt=function(t){var n=t.slice(0,-2),r=t.slice(-2);if(r!==\"px\")return 0;var o=Number(n);return isNaN(o)&&Kd(!1),o},Kh=function(){return{x:window.pageXOffset,y:window.pageYOffset}},Zn=function(t,n){var r=t.borderBox,o=t.border,a=t.margin,i=t.padding,s=Yh(r,n);return Eo({borderBox:s,border:o,margin:a,padding:i})},Qn=function(t,n){return n===void 0&&(n=Kh()),Zn(t,n)},Ua=function(t,n){var r={top:rt(n.marginTop),right:rt(n.marginRight),bottom:rt(n.marginBottom),left:rt(n.marginLeft)},o={top:rt(n.paddingTop),right:rt(n.paddingRight),bottom:rt(n.paddingBottom),left:rt(n.paddingLeft)},a={top:rt(n.borderTopWidth),right:rt(n.borderRightWidth),bottom:rt(n.borderBottomWidth),left:rt(n.borderLeftWidth)};return Eo({borderBox:t,margin:r,padding:o,border:a})},Wa=function(t){var n=t.getBoundingClientRect(),r=window.getComputedStyle(t);return Ua(n,r)};var Xh=function(t){var n=[],r=null,o=function(){for(var i=arguments.length,s=new Array(i),l=0;le.replace(Zh,\" \").replace(Qh,\"\").trim(),eb=e=>Jd(\"\\n %c@hello-pangea/dnd\\n\\n %c\".concat(Jd(e),\"\\n\\n %c\\u{1F477}\\u200D This is a development only message. It will be removed in production builds.\\n\")),tb=e=>[eb(e),\"color: #00C584; font-size: 1.2em; font-weight: bold;\",\"line-height: 1.5\",\"color: #723874;\"],nb=\"__@hello-pangea/dnd-disable-dev-warnings\";function Ec(e,t){Jh||typeof window<\"u\"&&window[nb]||console[e](...tb(t))}var a2=Ec.bind(null,\"warn\"),rb=Ec.bind(null,\"error\");function At(){}function ob(e,t){return y(y({},e),t)}function at(e,t,n){let r=t.map(o=>{let a=ob(n,o.options);return e.addEventListener(o.eventName,o.fn,a),function(){e.removeEventListener(o.eventName,o.fn,a)}});return function(){r.forEach(a=>{a()})}}var ab=!0,Zd=\"Invariant failed\",Jt=class extends Error{};Jt.prototype.toString=function(){return this.message};function A(e,t){throw ab?new Jt(Zd):new Jt(\"\".concat(Zd,\": \").concat(t||\"\"))}var Qa=class extends U.default.Component{constructor(...t){super(...t),this.callbacks=null,this.unbind=At,this.onWindowError=n=>{let r=this.getCallbacks();r.isDragging()&&r.tryAbort(),n.error instanceof Jt&&n.preventDefault()},this.getCallbacks=()=>{if(!this.callbacks)throw new Error(\"Unable to find AppCallbacks in \");return this.callbacks},this.setCallbacks=n=>{this.callbacks=n}}componentDidMount(){this.unbind=at(window,[{eventName:\"error\",fn:this.onWindowError}])}componentDidCatch(t){if(t instanceof Jt){this.setState({});return}throw t}componentWillUnmount(){this.unbind()}render(){return this.props.children(this.setCallbacks)}},ib=\"\\n Press space bar to start a drag.\\n When dragging you can use the arrow keys to move the item around and escape to cancel.\\n Some screen readers may require you to be in focus mode or to use your pass through key\\n\",ko=e=>e+1,sb=e=>\"\\n You have lifted an item in position \".concat(ko(e.source.index),\"\\n\"),Dc=(e,t)=>{let n=e.droppableId===t.droppableId,r=ko(e.index),o=ko(t.index);return n?\"\\n You have moved the item from position \".concat(r,\"\\n to position \").concat(o,\"\\n \"):\"\\n You have moved the item from position \".concat(r,\"\\n in list \").concat(e.droppableId,\"\\n to list \").concat(t.droppableId,\"\\n in position \").concat(o,\"\\n \")},Ic=(e,t,n)=>t.droppableId===n.droppableId?\"\\n The item \".concat(e,\"\\n has been combined with \").concat(n.draggableId):\"\\n The item \".concat(e,\"\\n in list \").concat(t.droppableId,\"\\n has been combined with \").concat(n.draggableId,\"\\n in list \").concat(n.droppableId,\"\\n \"),lb=e=>{let t=e.destination;if(t)return Dc(e.source,t);let n=e.combine;return n?Ic(e.draggableId,e.source,n):\"You are over an area that cannot be dropped on\"},Qd=e=>\"\\n The item has returned to its starting position\\n of \".concat(ko(e.index),\"\\n\"),db=e=>{if(e.reason===\"CANCEL\")return\"\\n Movement cancelled.\\n \".concat(Qd(e.source),\"\\n \");let t=e.destination,n=e.combine;return t?\"\\n You have dropped the item.\\n \".concat(Dc(e.source,t),\"\\n \"):n?\"\\n You have dropped the item.\\n \".concat(Ic(e.draggableId,e.source,n),\"\\n \"):\"\\n The item has been dropped while not over a drop area.\\n \".concat(Qd(e.source),\"\\n \")},No={dragHandleUsageInstructions:ib,onDragStart:sb,onDragUpdate:lb,onDragEnd:db};function cb(e,t){return!!(e===t||Number.isNaN(e)&&Number.isNaN(t))}function Tc(e,t){if(e.length!==t.length)return!1;for(let n=0;n({inputs:t,result:e()}))[0],r=(0,U.useRef)(!0),o=(0,U.useRef)(n),i=r.current||!!(t&&o.current.inputs&&Tc(t,o.current.inputs))?o.current:{inputs:t,result:e()};return(0,U.useEffect)(()=>{r.current=!1,o.current=i},[i]),i.result}function j(e,t){return re(()=>e,t)}var Te={x:0,y:0},Fe=(e,t)=>({x:e.x+t.x,y:e.y+t.y}),je=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),Ft=(e,t)=>e.x===t.x&&e.y===t.y,gn=e=>({x:e.x!==0?-e.x:0,y:e.y!==0?-e.y:0}),Zt=(e,t,n=0)=>e===\"x\"?{x:t,y:n}:{x:n,y:t},ar=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2),ec=(e,t)=>Math.min(...t.map(n=>ar(e,n))),Nc=e=>t=>({x:e(t.x),y:e(t.y)}),ub=(e,t)=>{let n=ot({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n},pr=(e,t)=>({top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}),tc=e=>[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}],fb={top:0,right:0,bottom:0,left:0},pb=(e,t)=>t?pr(e,t.scroll.diff.displacement):e,mb=(e,t,n)=>n&&n.increasedBy?E(y({},e),{[t.end]:e[t.end]+n.increasedBy[t.line]}):e,gb=(e,t)=>t&&t.shouldClipSubject?ub(t.pageMarginBox,e):ot(e),fn=({page:e,withPlaceholder:t,axis:n,frame:r})=>{let o=pb(e.marginBox,r),a=mb(o,n,t),i=gb(a,r);return{page:e,withPlaceholder:t,active:i}},si=(e,t)=>{e.frame||A();let n=e.frame,r=je(t,n.scroll.initial),o=gn(r),a=E(y({},n),{scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:o},max:n.scroll.max}}),i=fn({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:a});return E(y({},e),{frame:a,subject:i})};function Ie(e,t=Tc){let n=null;function r(...o){if(n&&n.lastThis===this&&t(o,n.lastArgs))return n.lastResult;let a=e.apply(this,o);return n={lastResult:a,lastArgs:o,lastThis:this},a}return r.clear=function(){n=null},r}var kc=Ie(e=>e.reduce((t,n)=>(t[n.descriptor.id]=n,t),{})),Ac=Ie(e=>e.reduce((t,n)=>(t[n.descriptor.id]=n,t),{})),Po=Ie(e=>Object.values(e)),hb=Ie(e=>Object.values(e)),hn=Ie((e,t)=>hb(t).filter(r=>e===r.descriptor.droppableId).sort((r,o)=>r.descriptor.index-o.descriptor.index));function li(e){return e.at&&e.at.type===\"REORDER\"?e.at.destination:null}function _o(e){return e.at&&e.at.type===\"COMBINE\"?e.at.combine:null}var Bo=Ie((e,t)=>t.filter(n=>n.descriptor.id!==e.descriptor.id)),bb=({isMovingForward:e,draggable:t,destination:n,insideDestination:r,previousImpact:o})=>{if(!n.isCombineEnabled||!li(o))return null;function i(m){let x={type:\"COMBINE\",combine:{draggableId:m,droppableId:n.descriptor.id}};return E(y({},o),{at:x})}let s=o.displaced.all,l=s.length?s[0]:null;if(e)return l?i(l):null;let u=Bo(t,r);if(!l){if(!u.length)return null;let m=u[u.length-1];return i(m.descriptor.id)}let f=u.findIndex(m=>m.descriptor.id===l);f===-1&&A();let d=f-1;if(d<0)return null;let c=u[d];return i(c.descriptor.id)},bn=(e,t)=>e.descriptor.droppableId===t.descriptor.id,Fc={point:Te,value:0},ir={invisible:{},visible:{},all:[]},xb={displaced:ir,displacedBy:Fc,at:null},it=(e,t)=>n=>e<=n&&n<=t,Pc=e=>{let t=it(e.top,e.bottom),n=it(e.left,e.right);return r=>{if(t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right))return!0;let a=t(r.top)||t(r.bottom),i=n(r.left)||n(r.right);if(a&&i)return!0;let l=r.tope.bottom,u=r.lefte.right;return l&&u?!0:l&&i||u&&a}},vb=e=>{let t=it(e.top,e.bottom),n=it(e.left,e.right);return r=>t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right)},di={direction:\"vertical\",line:\"y\",crossAxisLine:\"x\",start:\"top\",end:\"bottom\",size:\"height\",crossAxisStart:\"left\",crossAxisEnd:\"right\",crossAxisSize:\"width\"},_c={direction:\"horizontal\",line:\"x\",crossAxisLine:\"y\",start:\"left\",end:\"right\",size:\"width\",crossAxisStart:\"top\",crossAxisEnd:\"bottom\",crossAxisSize:\"height\"},yb=e=>t=>{let n=it(t.top,t.bottom),r=it(t.left,t.right);return o=>e===di?n(o.top)&&n(o.bottom):r(o.left)&&r(o.right)},wb=(e,t)=>{let n=t.frame?t.frame.scroll.diff.displacement:Te;return pr(e,n)},Cb=(e,t,n)=>t.subject.active?n(t.subject.active)(e):!1,Ob=(e,t,n)=>n(t)(e),ci=({target:e,destination:t,viewport:n,withDroppableDisplacement:r,isVisibleThroughFrameFn:o})=>{let a=r?wb(e,t):e;return Cb(a,t,o)&&Ob(a,n,o)},Sb=e=>ci(E(y({},e),{isVisibleThroughFrameFn:Pc})),Bc=e=>ci(E(y({},e),{isVisibleThroughFrameFn:vb})),Eb=e=>ci(E(y({},e),{isVisibleThroughFrameFn:yb(e.destination.axis)})),Db=(e,t,n)=>{if(typeof n==\"boolean\")return n;if(!t)return!0;let{invisible:r,visible:o}=t;if(r[e])return!1;let a=o[e];return a?a.shouldAnimate:!0};function Ib(e,t){let n=e.page.marginBox,r={top:t.point.y,right:0,bottom:0,left:t.point.x};return ot(So(n,r))}function sr({afterDragging:e,destination:t,displacedBy:n,viewport:r,forceShouldAnimate:o,last:a}){return e.reduce(function(s,l){let u=Ib(l,n),f=l.descriptor.id;if(s.all.push(f),!Sb({target:u,destination:t,viewport:r,withDroppableDisplacement:!0}))return s.invisible[l.descriptor.id]=!0,s;let c=Db(f,a,o),m={draggableId:f,shouldAnimate:c};return s.visible[f]=m,s},{all:[],visible:{},invisible:{}})}function Tb(e,t){if(!e.length)return 0;let n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}function nc({insideDestination:e,inHomeList:t,displacedBy:n,destination:r}){let o=Tb(e,{inHomeList:t});return{displaced:ir,displacedBy:n,at:{type:\"REORDER\",destination:{droppableId:r.descriptor.id,index:o}}}}function Ao({draggable:e,insideDestination:t,destination:n,viewport:r,displacedBy:o,last:a,index:i,forceShouldAnimate:s}){let l=bn(e,n);if(i==null)return nc({insideDestination:t,inHomeList:l,displacedBy:o,destination:n});let u=t.find(x=>x.descriptor.index===i);if(!u)return nc({insideDestination:t,inHomeList:l,displacedBy:o,destination:n});let f=Bo(e,t),d=t.indexOf(u),c=f.slice(d);return{displaced:sr({afterDragging:c,destination:n,displacedBy:o,last:a,viewport:r.frame,forceShouldAnimate:s}),displacedBy:o,at:{type:\"REORDER\",destination:{droppableId:n.descriptor.id,index:i}}}}function Pt(e,t){return!!t.effected[e]}var Nb=({isMovingForward:e,destination:t,draggables:n,combine:r,afterCritical:o})=>{if(!t.isCombineEnabled)return null;let a=r.draggableId,s=n[a].descriptor.index;return Pt(a,o)?e?s:s-1:e?s+1:s},kb=({isMovingForward:e,isInHomeList:t,insideDestination:n,location:r})=>{if(!n.length)return null;let o=r.index,a=e?o+1:o-1,i=n[0].descriptor.index,s=n[n.length-1].descriptor.index,l=t?s:s+1;return al?null:a},Ab=({isMovingForward:e,isInHomeList:t,draggable:n,draggables:r,destination:o,insideDestination:a,previousImpact:i,viewport:s,afterCritical:l})=>{let u=i.at;if(u||A(),u.type===\"REORDER\"){let d=kb({isMovingForward:e,isInHomeList:t,location:u.destination,insideDestination:a});return d==null?null:Ao({draggable:n,insideDestination:a,destination:o,viewport:s,last:i.displaced,displacedBy:i.displacedBy,index:d})}let f=Nb({isMovingForward:e,destination:o,displaced:i.displaced,draggables:r,combine:u.combine,afterCritical:l});return f==null?null:Ao({draggable:n,insideDestination:a,destination:o,viewport:s,last:i.displaced,displacedBy:i.displacedBy,index:f})},Fb=({displaced:e,afterCritical:t,combineWith:n,displacedBy:r})=>{let o=!!(e.visible[n]||e.invisible[n]);return Pt(n,t)?o?Te:gn(r.point):o?r.point:Te},Pb=({afterCritical:e,impact:t,draggables:n})=>{let r=_o(t);r||A();let o=r.draggableId,a=n[o].page.borderBox.center,i=Fb({displaced:t.displaced,afterCritical:e,combineWith:o,displacedBy:t.displacedBy});return Fe(a,i)},Lc=(e,t)=>t.margin[e.start]+t.borderBox[e.size]/2,_b=(e,t)=>t.margin[e.end]+t.borderBox[e.size]/2,ui=(e,t,n)=>t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2,rc=({axis:e,moveRelativeTo:t,isMoving:n})=>Zt(e.line,t.marginBox[e.end]+Lc(e,n),ui(e,t.marginBox,n)),oc=({axis:e,moveRelativeTo:t,isMoving:n})=>Zt(e.line,t.marginBox[e.start]-_b(e,n),ui(e,t.marginBox,n)),Bb=({axis:e,moveInto:t,isMoving:n})=>Zt(e.line,t.contentBox[e.start]+Lc(e,n),ui(e,t.contentBox,n)),Lb=({impact:e,draggable:t,draggables:n,droppable:r,afterCritical:o})=>{let a=hn(r.descriptor.id,n),i=t.page,s=r.axis;if(!a.length)return Bb({axis:s,moveInto:r.page,isMoving:i});let{displaced:l,displacedBy:u}=e,f=l.all[0];if(f){let c=n[f];if(Pt(f,o))return oc({axis:s,moveRelativeTo:c.page,isMoving:i});let m=Zn(c.page,u.point);return oc({axis:s,moveRelativeTo:m,isMoving:i})}let d=a[a.length-1];if(d.descriptor.id===t.descriptor.id)return i.borderBox.center;if(Pt(d.descriptor.id,o)){let c=Zn(d.page,gn(o.displacedBy.point));return rc({axis:s,moveRelativeTo:c,isMoving:i})}return rc({axis:s,moveRelativeTo:d.page,isMoving:i})},ei=(e,t)=>{let n=e.frame;return n?Fe(t,n.scroll.diff.displacement):t},Mb=({impact:e,draggable:t,droppable:n,draggables:r,afterCritical:o})=>{let a=t.page.borderBox.center,i=e.at;return!n||!i?a:i.type===\"REORDER\"?Lb({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:o}):Pb({impact:e,draggables:r,afterCritical:o})},Lo=e=>{let t=Mb(e),n=e.droppable;return n?ei(n,t):t},Mc=(e,t)=>{let n=je(t,e.scroll.initial),r=gn(n);return{frame:ot({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function ac(e,t){return e.map(n=>t[n])}function Vb(e,t){for(let n=0;n{let a=Mc(t,Fe(t.scroll.current,o)),i=n.frame?si(n,Fe(n.frame.scroll.current,o)):n,s=e.displaced,l=sr({afterDragging:ac(s.all,r),destination:n,displacedBy:e.displacedBy,viewport:a.frame,last:s,forceShouldAnimate:!1}),u=sr({afterDragging:ac(s.all,r),destination:i,displacedBy:e.displacedBy,viewport:t.frame,last:s,forceShouldAnimate:!1}),f={},d={},c=[s,l,u];return s.all.forEach(x=>{let v=Vb(x,c);if(v){d[x]=v;return}f[x]=!0}),E(y({},e),{displaced:{all:s.all,invisible:f,visible:d}})},$b=(e,t)=>Fe(e.scroll.diff.displacement,t),fi=({pageBorderBoxCenter:e,draggable:t,viewport:n})=>{let r=$b(n,e),o=je(r,t.page.borderBox.center);return Fe(t.client.borderBox.center,o)},Vc=({draggable:e,destination:t,newPageBorderBoxCenter:n,viewport:r,withDroppableDisplacement:o,onlyOnMainAxis:a=!1})=>{let i=je(n,e.page.borderBox.center),l={target:pr(e.page.borderBox,i),destination:t,withDroppableDisplacement:o,viewport:r};return a?Eb(l):Bc(l)},Ub=({isMovingForward:e,draggable:t,destination:n,draggables:r,previousImpact:o,viewport:a,previousPageBorderBoxCenter:i,previousClientSelection:s,afterCritical:l})=>{if(!n.isEnabled)return null;let u=hn(n.descriptor.id,r),f=bn(t,n),d=bb({isMovingForward:e,draggable:t,destination:n,insideDestination:u,previousImpact:o})||Ab({isMovingForward:e,isInHomeList:f,draggable:t,draggables:r,destination:n,insideDestination:u,previousImpact:o,viewport:a,afterCritical:l});if(!d)return null;let c=Lo({impact:d,draggable:t,droppable:n,draggables:r,afterCritical:l});if(Vc({draggable:t,destination:n,newPageBorderBoxCenter:c,viewport:a.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:fi({pageBorderBoxCenter:c,draggable:t,viewport:a}),impact:d,scrollJumpRequest:null};let x=je(c,i),v=zb({impact:d,viewport:a,destination:n,draggables:r,maxScrollChange:x});return{clientSelection:s,impact:v,scrollJumpRequest:x}},Ve=e=>{let t=e.subject.active;return t||A(),t},Wb=({isMovingForward:e,pageBorderBoxCenter:t,source:n,droppables:r,viewport:o})=>{let a=n.subject.active;if(!a)return null;let i=n.axis,s=it(a[i.start],a[i.end]),l=Po(r).filter(f=>f!==n).filter(f=>f.isEnabled).filter(f=>!!f.subject.active).filter(f=>Pc(o.frame)(Ve(f))).filter(f=>{let d=Ve(f);return e?a[i.crossAxisEnd]{let d=Ve(f),c=it(d[i.start],d[i.end]);return s(d[i.start])||s(d[i.end])||c(a[i.start])||c(a[i.end])}).sort((f,d)=>{let c=Ve(f)[i.crossAxisStart],m=Ve(d)[i.crossAxisStart];return e?c-m:m-c}).filter((f,d,c)=>Ve(f)[i.crossAxisStart]===Ve(c[0])[i.crossAxisStart]);if(!l.length)return null;if(l.length===1)return l[0];let u=l.filter(f=>it(Ve(f)[i.start],Ve(f)[i.end])(t[i.line]));return u.length===1?u[0]:u.length>1?u.sort((f,d)=>Ve(f)[i.start]-Ve(d)[i.start])[0]:l.sort((f,d)=>{let c=ec(t,tc(Ve(f))),m=ec(t,tc(Ve(d)));return c!==m?c-m:Ve(f)[i.start]-Ve(d)[i.start]})[0]},ic=(e,t)=>{let n=e.page.borderBox.center;return Pt(e.descriptor.id,t)?je(n,t.displacedBy.point):n},Gb=(e,t)=>{let n=e.page.borderBox;return Pt(e.descriptor.id,t)?pr(n,gn(t.displacedBy.point)):n},Hb=({pageBorderBoxCenter:e,viewport:t,destination:n,insideDestination:r,afterCritical:o})=>r.filter(i=>Bc({target:Gb(i,o),destination:n,viewport:t.frame,withDroppableDisplacement:!0})).sort((i,s)=>{let l=ar(e,ei(n,ic(i,o))),u=ar(e,ei(n,ic(s,o)));return l{let r=e.axis;if(e.descriptor.mode===\"virtual\")return Zt(r.line,t[r.line]);let o=e.subject.page.contentBox[r.size],l=hn(e.descriptor.id,n).reduce((u,f)=>u+f.client.marginBox[r.size],0)+t[r.line]-o;return l<=0?null:Zt(r.line,l)},zc=(e,t)=>E(y({},e),{scroll:E(y({},e.scroll),{max:t})}),$c=(e,t,n)=>{let r=e.frame;bn(t,e)&&A(),e.subject.withPlaceholder&&A();let o=mr(e.axis,t.displaceBy).point,a=qb(e,o,n),i={placeholderSize:o,increasedBy:a,oldFrameMaxScroll:e.frame?e.frame.scroll.max:null};if(!r){let f=fn({page:e.subject.page,withPlaceholder:i,axis:e.axis,frame:e.frame});return E(y({},e),{subject:f})}let s=a?Fe(r.scroll.max,a):r.scroll.max,l=zc(r,s),u=fn({page:e.subject.page,withPlaceholder:i,axis:e.axis,frame:l});return E(y({},e),{subject:u,frame:l})},jb=e=>{let t=e.subject.withPlaceholder;t||A();let n=e.frame;if(!n){let i=fn({page:e.subject.page,axis:e.axis,frame:null,withPlaceholder:null});return E(y({},e),{subject:i})}let r=t.oldFrameMaxScroll;r||A();let o=zc(n,r),a=fn({page:e.subject.page,axis:e.axis,frame:o,withPlaceholder:null});return E(y({},e),{subject:a,frame:o})},Rb=({previousPageBorderBoxCenter:e,moveRelativeTo:t,insideDestination:n,draggable:r,draggables:o,destination:a,viewport:i,afterCritical:s})=>{if(!t){if(n.length)return null;let d={displaced:ir,displacedBy:Fc,at:{type:\"REORDER\",destination:{droppableId:a.descriptor.id,index:0}}},c=Lo({impact:d,draggable:r,droppable:a,draggables:o,afterCritical:s}),m=bn(r,a)?a:$c(a,r,o);return Vc({draggable:r,destination:m,newPageBorderBoxCenter:c,viewport:i.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0})?d:null}let l=e[a.axis.line]<=t.page.borderBox.center[a.axis.line],u=(()=>{let d=t.descriptor.index;return t.descriptor.id===r.descriptor.id||l?d:d+1})(),f=mr(a.axis,r.displaceBy);return Ao({draggable:r,insideDestination:n,destination:a,viewport:i,displacedBy:f,last:ir,index:u})},Yb=({isMovingForward:e,previousPageBorderBoxCenter:t,draggable:n,isOver:r,draggables:o,droppables:a,viewport:i,afterCritical:s})=>{let l=Wb({isMovingForward:e,pageBorderBoxCenter:t,source:r,droppables:a,viewport:i});if(!l)return null;let u=hn(l.descriptor.id,o),f=Hb({pageBorderBoxCenter:t,viewport:i,destination:l,insideDestination:u,afterCritical:s}),d=Rb({previousPageBorderBoxCenter:t,destination:l,draggable:n,draggables:o,moveRelativeTo:f,insideDestination:u,viewport:i,afterCritical:s});if(!d)return null;let c=Lo({impact:d,draggable:n,droppable:l,draggables:o,afterCritical:s});return{clientSelection:fi({pageBorderBoxCenter:c,draggable:n,viewport:i}),impact:d,scrollJumpRequest:null}},Re=e=>{let t=e.at;return t?t.type===\"REORDER\"?t.destination.droppableId:t.combine.droppableId:null},Kb=(e,t)=>{let n=Re(e);return n?t[n]:null},Xb=({state:e,type:t})=>{let n=Kb(e.impact,e.dimensions.droppables),r=!!n,o=e.dimensions.droppables[e.critical.droppable.id],a=n||o,i=a.axis.direction,s=i===\"vertical\"&&(t===\"MOVE_UP\"||t===\"MOVE_DOWN\")||i===\"horizontal\"&&(t===\"MOVE_LEFT\"||t===\"MOVE_RIGHT\");if(s&&!r)return null;let l=t===\"MOVE_DOWN\"||t===\"MOVE_RIGHT\",u=e.dimensions.draggables[e.critical.draggable.id],f=e.current.page.borderBoxCenter,{draggables:d,droppables:c}=e.dimensions;return s?Ub({isMovingForward:l,previousPageBorderBoxCenter:f,draggable:u,destination:a,draggables:d,viewport:e.viewport,previousClientSelection:e.current.client.selection,previousImpact:e.impact,afterCritical:e.afterCritical}):Yb({isMovingForward:l,previousPageBorderBoxCenter:f,draggable:u,isOver:a,draggables:d,droppables:c,viewport:e.viewport,afterCritical:e.afterCritical})};function Xt(e){return e.phase===\"DRAGGING\"||e.phase===\"COLLECTING\"}function Uc(e){let t=it(e.top,e.bottom),n=it(e.left,e.right);return function(o){return t(o.y)&&n(o.x)}}function Jb(e,t){return e.leftt.left&&e.topt.top}function Zb({pageBorderBox:e,draggable:t,candidates:n}){let r=t.page.borderBox.center,o=n.map(a=>{let i=a.axis,s=Zt(a.axis.line,e.center[i.line],a.page.borderBox.center[i.crossAxisLine]);return{id:a.descriptor.id,distance:ar(r,s)}}).sort((a,i)=>i.distance-a.distance);return o[0]?o[0].id:null}function Qb({pageBorderBox:e,draggable:t,droppables:n}){let r=Po(n).filter(o=>{if(!o.isEnabled)return!1;let a=o.subject.active;if(!a||!Jb(e,a))return!1;if(Uc(a)(e.center))return!0;let i=o.axis,s=a.center[i.crossAxisLine],l=e[i.crossAxisStart],u=e[i.crossAxisEnd],f=it(a[i.crossAxisStart],a[i.crossAxisEnd]),d=f(l),c=f(u);return!d&&!c?!0:d?ls});return r.length?r.length===1?r[0].descriptor.id:Zb({pageBorderBox:e,draggable:t,candidates:r}):null}var Wc=(e,t)=>ot(pr(e,t)),ex=(e,t)=>{let n=e.frame;return n?Wc(t,n.scroll.diff.value):t};function Gc({displaced:e,id:t}){return!!(e.visible[t]||e.invisible[t])}function tx({draggable:e,closest:t,inHomeList:n}){return t?n&&t.descriptor.index>e.descriptor.index?t.descriptor.index-1:t.descriptor.index:null}var nx=({pageBorderBoxWithDroppableScroll:e,draggable:t,destination:n,insideDestination:r,last:o,viewport:a,afterCritical:i})=>{let s=n.axis,l=mr(n.axis,t.displaceBy),u=l.value,f=e[s.start],d=e[s.end],m=Bo(t,r).find(v=>{let b=v.descriptor.id,C=v.page.borderBox.center[s.line],h=Pt(b,i),O=Gc({displaced:o,id:b});return h?O?d<=C:f{if(!r.isCombineEnabled)return null;let i=r.axis,s=mr(r.axis,e.displaceBy),l=s.value,u=t[i.start],f=t[i.end],c=Bo(e,o).find(x=>{let v=x.descriptor.id,b=x.page.borderBox,h=b[i.size]/rx,O=Pt(v,a),w=Gc({displaced:n.displaced,id:v});return O?w?f>b[i.start]+h&&fb[i.start]-l+h&&ub[i.start]+l+h&&fb[i.start]+h&&u{let s=Wc(t.page.borderBox,e),l=Qb({pageBorderBox:s,draggable:t,droppables:r});if(!l)return xb;let u=r[l],f=hn(u.descriptor.id,n),d=ex(u,s);return ox({pageBorderBoxWithDroppableScroll:d,draggable:t,previousImpact:o,destination:u,insideDestination:f,afterCritical:i})||nx({pageBorderBoxWithDroppableScroll:d,draggable:t,destination:u,insideDestination:f,last:o.displaced,viewport:a,afterCritical:i})},pi=(e,t)=>E(y({},e),{[t.descriptor.id]:t}),ax=({previousImpact:e,impact:t,droppables:n})=>{let r=Re(e),o=Re(t);if(!r||r===o)return n;let a=n[r];if(!a.subject.withPlaceholder)return n;let i=jb(a);return pi(n,i)},ix=({draggable:e,draggables:t,droppables:n,previousImpact:r,impact:o})=>{let a=ax({previousImpact:r,impact:o,droppables:n}),i=Re(o);if(!i)return a;let s=n[i];if(bn(e,s)||s.subject.withPlaceholder)return a;let l=$c(s,e,t);return pi(a,l)},rr=({state:e,clientSelection:t,dimensions:n,viewport:r,impact:o,scrollJumpRequest:a})=>{let i=r||e.viewport,s=n||e.dimensions,l=t||e.current.client.selection,u=je(l,e.initial.client.selection),f={offset:u,selection:l,borderBoxCenter:Fe(e.initial.client.borderBoxCenter,u)},d={selection:Fe(f.selection,i.scroll.current),borderBoxCenter:Fe(f.borderBoxCenter,i.scroll.current),offset:Fe(f.offset,i.scroll.diff.value)},c={client:f,page:d};if(e.phase===\"COLLECTING\")return E(y({},e),{dimensions:s,viewport:i,current:c});let m=s.draggables[e.critical.draggable.id],x=o||Hc({pageOffset:d.offset,draggable:m,draggables:s.draggables,droppables:s.droppables,previousImpact:e.impact,viewport:i,afterCritical:e.afterCritical}),v=ix({draggable:m,impact:x,previousImpact:e.impact,draggables:s.draggables,droppables:s.droppables});return E(y({},e),{current:c,dimensions:{draggables:s.draggables,droppables:v},impact:x,viewport:i,scrollJumpRequest:a||null,forceShouldAnimate:a?!1:null})};function sx(e,t){return e.map(n=>t[n])}var qc=({impact:e,viewport:t,draggables:n,destination:r,forceShouldAnimate:o})=>{let a=e.displaced,i=sx(a.all,n),s=sr({afterDragging:i,destination:r,displacedBy:e.displacedBy,viewport:t.frame,forceShouldAnimate:o,last:a});return E(y({},e),{displaced:s})},jc=({impact:e,draggable:t,droppable:n,draggables:r,viewport:o,afterCritical:a})=>{let i=Lo({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:a});return fi({pageBorderBoxCenter:i,draggable:t,viewport:o})},Rc=({state:e,dimensions:t,viewport:n})=>{e.movementMode!==\"SNAP\"&&A();let r=e.impact,o=n||e.viewport,a=t||e.dimensions,{draggables:i,droppables:s}=a,l=i[e.critical.draggable.id],u=Re(r);u||A();let f=s[u],d=qc({impact:r,viewport:o,destination:f,draggables:i}),c=jc({impact:d,draggable:l,droppable:f,draggables:i,viewport:o,afterCritical:e.afterCritical});return rr({impact:d,clientSelection:c,state:e,dimensions:a,viewport:o})},lx=e=>({index:e.index,droppableId:e.droppableId}),Yc=({draggable:e,home:t,draggables:n,viewport:r})=>{let o=mr(t.axis,e.displaceBy),a=hn(t.descriptor.id,n),i=a.indexOf(e);i===-1&&A();let s=a.slice(i+1),l=s.reduce((c,m)=>(c[m.descriptor.id]=!0,c),{}),u={inVirtualList:t.descriptor.mode===\"virtual\",displacedBy:o,effected:l};return{impact:{displaced:sr({afterDragging:s,destination:t,displacedBy:o,last:null,viewport:r.frame,forceShouldAnimate:!1}),displacedBy:o,at:{type:\"REORDER\",destination:lx(e.descriptor)}},afterCritical:u}},dx=(e,t)=>({draggables:e.draggables,droppables:pi(e.droppables,t)}),gr=e=>{},hr=e=>{},cx=({draggable:e,offset:t,initialWindowScroll:n})=>{let r=Zn(e.client,t),o=Qn(r,n);return E(y({},e),{placeholder:E(y({},e.placeholder),{client:r}),client:r,page:o})},ux=e=>{let t=e.frame;return t||A(),t},fx=({additions:e,updatedDroppables:t,viewport:n})=>{let r=n.scroll.diff.value;return e.map(o=>{let a=o.descriptor.droppableId,i=t[a],l=ux(i).scroll.diff.value,u=Fe(r,l);return cx({draggable:o,offset:u,initialWindowScroll:n.scroll.initial})})},px=({state:e,published:t})=>{gr();let n=t.modified.map(C=>{let h=e.dimensions.droppables[C.droppableId];return si(h,C.scroll)}),r=y(y({},e.dimensions.droppables),kc(n)),o=Ac(fx({additions:t.additions,updatedDroppables:r,viewport:e.viewport})),a=y(y({},e.dimensions.draggables),o);t.removals.forEach(C=>{delete a[C]});let i={droppables:r,draggables:a},s=Re(e.impact),l=s?i.droppables[s]:null,u=i.draggables[e.critical.draggable.id],f=i.droppables[e.critical.droppable.id],{impact:d,afterCritical:c}=Yc({draggable:u,home:f,draggables:a,viewport:e.viewport}),m=l&&l.isCombineEnabled?e.impact:d,x=Hc({pageOffset:e.current.page.offset,draggable:i.draggables[e.critical.draggable.id],draggables:i.draggables,droppables:i.droppables,previousImpact:m,viewport:e.viewport,afterCritical:c});hr();let v=E(y({},e),{phase:\"DRAGGING\",impact:x,onLiftImpact:d,dimensions:i,afterCritical:c,forceShouldAnimate:!1});return e.phase===\"COLLECTING\"?v:E(y({},v),{phase:\"DROP_PENDING\",reason:e.reason,isWaiting:!1})},ti=e=>e.movementMode===\"SNAP\",Ga=(e,t,n)=>{let r=dx(e.dimensions,t);return!ti(e)||n?rr({state:e,dimensions:r}):Rc({state:e,dimensions:r})};function Ha(e){return e.isDragging&&e.movementMode===\"SNAP\"?E(y({},e),{scrollJumpRequest:null}):e}var sc={phase:\"IDLE\",completed:null,shouldFlush:!1},mx=(e=sc,t)=>{if(t.type===\"FLUSH\")return E(y({},sc),{shouldFlush:!0});if(t.type===\"INITIAL_PUBLISH\"){e.phase!==\"IDLE\"&&A();let{critical:n,clientSelection:r,viewport:o,dimensions:a,movementMode:i}=t.payload,s=a.draggables[n.draggable.id],l=a.droppables[n.droppable.id],u={selection:r,borderBoxCenter:s.client.borderBox.center,offset:Te},f={client:u,page:{selection:Fe(u.selection,o.scroll.initial),borderBoxCenter:Fe(u.selection,o.scroll.initial),offset:Fe(u.selection,o.scroll.diff.value)}},d=Po(a.droppables).every(v=>!v.isFixedOnPage),{impact:c,afterCritical:m}=Yc({draggable:s,home:l,draggables:a.draggables,viewport:o});return{phase:\"DRAGGING\",isDragging:!0,critical:n,movementMode:i,dimensions:a,initial:f,current:f,isWindowScrollAllowed:d,impact:c,afterCritical:m,onLiftImpact:c,viewport:o,scrollJumpRequest:null,forceShouldAnimate:null}}if(t.type===\"COLLECTION_STARTING\")return e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\"?e:(e.phase!==\"DRAGGING\"&&A(),E(y({},e),{phase:\"COLLECTING\"}));if(t.type===\"PUBLISH_WHILE_DRAGGING\")return e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\"||A(),px({state:e,published:t.payload});if(t.type===\"MOVE\"){if(e.phase===\"DROP_PENDING\")return e;Xt(e)||A();let{client:n}=t.payload;return Ft(n,e.current.client.selection)?e:rr({state:e,clientSelection:n,impact:ti(e)?e.impact:null})}if(t.type===\"UPDATE_DROPPABLE_SCROLL\"){if(e.phase===\"DROP_PENDING\"||e.phase===\"COLLECTING\")return Ha(e);Xt(e)||A();let{id:n,newScroll:r}=t.payload,o=e.dimensions.droppables[n];if(!o)return e;let a=si(o,r);return Ga(e,a,!1)}if(t.type===\"UPDATE_DROPPABLE_IS_ENABLED\"){if(e.phase===\"DROP_PENDING\")return e;Xt(e)||A();let{id:n,isEnabled:r}=t.payload,o=e.dimensions.droppables[n];o||A(),o.isEnabled===r&&A();let a=E(y({},o),{isEnabled:r});return Ga(e,a,!0)}if(t.type===\"UPDATE_DROPPABLE_IS_COMBINE_ENABLED\"){if(e.phase===\"DROP_PENDING\")return e;Xt(e)||A();let{id:n,isCombineEnabled:r}=t.payload,o=e.dimensions.droppables[n];o||A(),o.isCombineEnabled===r&&A();let a=E(y({},o),{isCombineEnabled:r});return Ga(e,a,!0)}if(t.type===\"MOVE_BY_WINDOW_SCROLL\"){if(e.phase===\"DROP_PENDING\"||e.phase===\"DROP_ANIMATING\")return e;Xt(e)||A(),e.isWindowScrollAllowed||A();let n=t.payload.newScroll;if(Ft(e.viewport.scroll.current,n))return Ha(e);let r=Mc(e.viewport,n);return ti(e)?Rc({state:e,viewport:r}):rr({state:e,viewport:r})}if(t.type===\"UPDATE_VIEWPORT_MAX_SCROLL\"){if(!Xt(e))return e;let n=t.payload.maxScroll;if(Ft(n,e.viewport.scroll.max))return e;let r=E(y({},e.viewport),{scroll:E(y({},e.viewport.scroll),{max:n})});return E(y({},e),{viewport:r})}if(t.type===\"MOVE_UP\"||t.type===\"MOVE_DOWN\"||t.type===\"MOVE_LEFT\"||t.type===\"MOVE_RIGHT\"){if(e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\")return e;e.phase!==\"DRAGGING\"&&A();let n=Xb({state:e,type:t.type});return n?rr({state:e,impact:n.impact,clientSelection:n.clientSelection,scrollJumpRequest:n.scrollJumpRequest}):e}if(t.type===\"DROP_PENDING\"){let n=t.payload.reason;return e.phase!==\"COLLECTING\"&&A(),E(y({},e),{phase:\"DROP_PENDING\",isWaiting:!0,reason:n})}if(t.type===\"DROP_ANIMATE\"){let{completed:n,dropDuration:r,newHomeClientOffset:o}=t.payload;return e.phase===\"DRAGGING\"||e.phase===\"DROP_PENDING\"||A(),{phase:\"DROP_ANIMATING\",completed:n,dropDuration:r,newHomeClientOffset:o,dimensions:e.dimensions}}if(t.type===\"DROP_COMPLETE\"){let{completed:n}=t.payload;return{phase:\"IDLE\",completed:n,shouldFlush:!1}}return e};function se(e,t){return e instanceof Object&&\"type\"in e&&e.type===t}var gx=e=>({type:\"BEFORE_INITIAL_CAPTURE\",payload:e}),hx=e=>({type:\"LIFT\",payload:e}),bx=e=>({type:\"INITIAL_PUBLISH\",payload:e}),xx=e=>({type:\"PUBLISH_WHILE_DRAGGING\",payload:e}),vx=()=>({type:\"COLLECTION_STARTING\",payload:null}),yx=e=>({type:\"UPDATE_DROPPABLE_SCROLL\",payload:e}),wx=e=>({type:\"UPDATE_DROPPABLE_IS_ENABLED\",payload:e}),Cx=e=>({type:\"UPDATE_DROPPABLE_IS_COMBINE_ENABLED\",payload:e}),Kc=e=>({type:\"MOVE\",payload:e}),Ox=e=>({type:\"MOVE_BY_WINDOW_SCROLL\",payload:e}),Sx=e=>({type:\"UPDATE_VIEWPORT_MAX_SCROLL\",payload:e}),Ex=()=>({type:\"MOVE_UP\",payload:null}),Dx=()=>({type:\"MOVE_DOWN\",payload:null}),Ix=()=>({type:\"MOVE_RIGHT\",payload:null}),Tx=()=>({type:\"MOVE_LEFT\",payload:null}),mi=()=>({type:\"FLUSH\",payload:null}),Nx=e=>({type:\"DROP_ANIMATE\",payload:e}),gi=e=>({type:\"DROP_COMPLETE\",payload:e}),Xc=e=>({type:\"DROP\",payload:e}),kx=e=>({type:\"DROP_PENDING\",payload:e}),Jc=()=>({type:\"DROP_ANIMATION_FINISHED\",payload:null});var Ax=e=>({getState:t,dispatch:n})=>r=>o=>{if(!se(o,\"LIFT\")){r(o);return}let{id:a,clientSelection:i,movementMode:s}=o.payload,l=t();l.phase===\"DROP_ANIMATING\"&&n(gi({completed:l.completed})),t().phase!==\"IDLE\"&&A(),n(mi()),n(gx({draggableId:a,movementMode:s}));let f={draggableId:a,scrollOptions:{shouldPublishImmediately:s===\"SNAP\"}},{critical:d,dimensions:c,viewport:m}=e.startPublishing(f);n(bx({critical:d,dimensions:c,clientSelection:i,movementMode:s,viewport:m}))},Fx=e=>()=>t=>n=>{se(n,\"INITIAL_PUBLISH\")&&e.dragging(),se(n,\"DROP_ANIMATE\")&&e.dropping(n.payload.completed.result.reason),(se(n,\"FLUSH\")||se(n,\"DROP_COMPLETE\"))&&e.resting(),t(n)},hi={outOfTheWay:\"cubic-bezier(0.2, 0, 0, 1)\",drop:\"cubic-bezier(.2,1,.1,1)\"},lr={opacity:{drop:0,combining:.7},scale:{drop:.75}},Zc={outOfTheWay:.2,minDropTime:.33,maxDropTime:.55},Kt=\"\".concat(Zc.outOfTheWay,\"s \").concat(hi.outOfTheWay),or={fluid:\"opacity \".concat(Kt),snap:\"transform \".concat(Kt,\", opacity \").concat(Kt),drop:e=>{let t=\"\".concat(e,\"s \").concat(hi.drop);return\"transform \".concat(t,\", opacity \").concat(t)},outOfTheWay:\"transform \".concat(Kt),placeholder:\"height \".concat(Kt,\", width \").concat(Kt,\", margin \").concat(Kt)},lc=e=>Ft(e,Te)?void 0:\"translate(\".concat(e.x,\"px, \").concat(e.y,\"px)\"),ni={moveTo:lc,drop:(e,t)=>{let n=lc(e);if(n)return t?\"\".concat(n,\" scale(\").concat(lr.scale.drop,\")\"):n}},{minDropTime:ri,maxDropTime:Qc}=Zc,Px=Qc-ri,dc=1500,_x=.6,Bx=({current:e,destination:t,reason:n})=>{let r=ar(e,t);if(r<=0)return ri;if(r>=dc)return Qc;let o=r/dc,a=ri+Px*o,i=n===\"CANCEL\"?a*_x:a;return Number(i.toFixed(2))},Lx=({impact:e,draggable:t,dimensions:n,viewport:r,afterCritical:o})=>{let{draggables:a,droppables:i}=n,s=Re(e),l=s?i[s]:null,u=i[t.descriptor.droppableId],f=jc({impact:e,draggable:t,draggables:a,afterCritical:o,droppable:l||u,viewport:r});return je(f,t.client.borderBox.center)},Mx=({draggables:e,reason:t,lastImpact:n,home:r,viewport:o,onLiftImpact:a})=>!n.at||t!==\"DROP\"?{impact:qc({draggables:e,impact:a,destination:r,viewport:o,forceShouldAnimate:!0}),didDropInsideDroppable:!1}:n.at.type===\"REORDER\"?{impact:n,didDropInsideDroppable:!0}:{impact:E(y({},n),{displaced:ir}),didDropInsideDroppable:!0},Vx=({getState:e,dispatch:t})=>n=>r=>{if(!se(r,\"DROP\")){n(r);return}let o=e(),a=r.payload.reason;if(o.phase===\"COLLECTING\"){t(kx({reason:a}));return}if(o.phase===\"IDLE\")return;o.phase===\"DROP_PENDING\"&&o.isWaiting&&A(),o.phase===\"DRAGGING\"||o.phase===\"DROP_PENDING\"||A();let s=o.critical,l=o.dimensions,u=l.draggables[o.critical.draggable.id],{impact:f,didDropInsideDroppable:d}=Mx({reason:a,lastImpact:o.impact,afterCritical:o.afterCritical,onLiftImpact:o.onLiftImpact,home:o.dimensions.droppables[o.critical.droppable.id],viewport:o.viewport,draggables:o.dimensions.draggables}),c=d?li(f):null,m=d?_o(f):null,x={index:s.draggable.index,droppableId:s.droppable.id},v={draggableId:u.descriptor.id,type:u.descriptor.type,source:x,reason:a,mode:o.movementMode,destination:c,combine:m},b=Lx({impact:f,draggable:u,dimensions:l,viewport:o.viewport,afterCritical:o.afterCritical}),C={critical:o.critical,afterCritical:o.afterCritical,result:v,impact:f};if(!(!Ft(o.current.client.offset,b)||!!v.combine)){t(gi({completed:C}));return}let O=Bx({current:o.current.client.offset,destination:b,reason:a});t(Nx({newHomeClientOffset:b,dropDuration:O,completed:C}))},eu=()=>({x:window.pageXOffset,y:window.pageYOffset});function zx(e){return{eventName:\"scroll\",options:{passive:!0,capture:!1},fn:t=>{t.target!==window&&t.target!==window.document||e()}}}function $x({onWindowScroll:e}){function t(){e(eu())}let n=un(t),r=zx(n),o=At;function a(){return o!==At}function i(){a()&&A(),o=at(window,[r])}function s(){a()||A(),n.cancel(),o(),o=At}return{start:i,stop:s,isActive:a}}var Ux=e=>se(e,\"DROP_COMPLETE\")||se(e,\"DROP_ANIMATE\")||se(e,\"FLUSH\"),Wx=e=>{let t=$x({onWindowScroll:n=>{e.dispatch(Ox({newScroll:n}))}});return n=>r=>{!t.isActive()&&se(r,\"INITIAL_PUBLISH\")&&t.start(),t.isActive()&&Ux(r)&&t.stop(),n(r)}},Gx=e=>{let t=!1,n=!1,r=setTimeout(()=>{n=!0}),o=a=>{t||n||(t=!0,e(a),clearTimeout(r))};return o.wasCalled=()=>t,o},Hx=()=>{let e=[],t=o=>{let a=e.findIndex(s=>s.timerId===o);a===-1&&A();let[i]=e.splice(a,1);i.callback()};return{add:o=>{let a=setTimeout(()=>t(a)),i={timerId:a,callback:o};e.push(i)},flush:()=>{if(!e.length)return;let o=[...e];e.length=0,o.forEach(a=>{clearTimeout(a.timerId),a.callback()})}}},qx=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.droppableId===t.droppableId&&e.index===t.index,jx=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.draggableId===t.draggableId&&e.droppableId===t.droppableId,Rx=(e,t)=>{if(e===t)return!0;let n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r},er=(e,t)=>{gr(),t(),hr()},Do=(e,t)=>({draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t});function qa(e,t,n,r){if(!e){n(r(t));return}let o=Gx(n);e(t,{announce:o}),o.wasCalled()||n(r(t))}var Yx=(e,t)=>{let n=Hx(),r=null,o=(d,c)=>{r&&A(),er(\"onBeforeCapture\",()=>{let m=e().onBeforeCapture;m&&m({draggableId:d,mode:c})})},a=(d,c)=>{r&&A(),er(\"onBeforeDragStart\",()=>{let m=e().onBeforeDragStart;m&&m(Do(d,c))})},i=(d,c)=>{r&&A();let m=Do(d,c);r={mode:c,lastCritical:d,lastLocation:m.source,lastCombine:null},n.add(()=>{er(\"onDragStart\",()=>qa(e().onDragStart,m,t,No.onDragStart))})},s=(d,c)=>{let m=li(c),x=_o(c);r||A();let v=!Rx(d,r.lastCritical);v&&(r.lastCritical=d);let b=!qx(r.lastLocation,m);b&&(r.lastLocation=m);let C=!jx(r.lastCombine,x);if(C&&(r.lastCombine=x),!v&&!b&&!C)return;let h=E(y({},Do(d,r.mode)),{combine:x,destination:m});n.add(()=>{er(\"onDragUpdate\",()=>qa(e().onDragUpdate,h,t,No.onDragUpdate))})},l=()=>{r||A(),n.flush()},u=d=>{r||A(),r=null,er(\"onDragEnd\",()=>qa(e().onDragEnd,d,t,No.onDragEnd))};return{beforeCapture:o,beforeStart:a,start:i,update:s,flush:l,drop:u,abort:()=>{if(!r)return;let d=E(y({},Do(r.lastCritical,r.mode)),{combine:null,destination:null,reason:\"CANCEL\"});u(d)}}},Kx=(e,t)=>{let n=Yx(e,t);return r=>o=>a=>{if(se(a,\"BEFORE_INITIAL_CAPTURE\")){n.beforeCapture(a.payload.draggableId,a.payload.movementMode);return}if(se(a,\"INITIAL_PUBLISH\")){let s=a.payload.critical;n.beforeStart(s,a.payload.movementMode),o(a),n.start(s,a.payload.movementMode);return}if(se(a,\"DROP_COMPLETE\")){let s=a.payload.completed.result;n.flush(),o(a),n.drop(s);return}if(o(a),se(a,\"FLUSH\")){n.abort();return}let i=r.getState();i.phase===\"DRAGGING\"&&n.update(i.critical,i.impact)}},Xx=e=>t=>n=>{if(!se(n,\"DROP_ANIMATION_FINISHED\")){t(n);return}let r=e.getState();r.phase!==\"DROP_ANIMATING\"&&A(),e.dispatch(gi({completed:r.completed}))},Jx=e=>{let t=null,n=null;function r(){n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)}return o=>a=>{if((se(a,\"FLUSH\")||se(a,\"DROP_COMPLETE\")||se(a,\"DROP_ANIMATION_FINISHED\"))&&r(),o(a),!se(a,\"DROP_ANIMATE\"))return;let i={eventName:\"scroll\",options:{capture:!0,passive:!1,once:!0},fn:function(){e.getState().phase===\"DROP_ANIMATING\"&&e.dispatch(Jc())}};n=requestAnimationFrame(()=>{n=null,t=at(window,[i])})}},Zx=e=>()=>t=>n=>{(se(n,\"DROP_COMPLETE\")||se(n,\"FLUSH\")||se(n,\"DROP_ANIMATE\"))&&e.stopPublishing(),t(n)},Qx=e=>{let t=!1;return()=>n=>r=>{if(se(r,\"INITIAL_PUBLISH\")){t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),e.tryRestoreFocusRecorded();return}if(n(r),!!t){if(se(r,\"FLUSH\")){t=!1,e.tryRestoreFocusRecorded();return}if(se(r,\"DROP_COMPLETE\")){t=!1;let o=r.payload.completed.result;o.combine&&e.tryShiftRecord(o.draggableId,o.combine.draggableId),e.tryRestoreFocusRecorded()}}}},ev=e=>se(e,\"DROP_COMPLETE\")||se(e,\"DROP_ANIMATE\")||se(e,\"FLUSH\"),tv=e=>t=>n=>r=>{if(ev(r)){e.stop(),n(r);return}if(se(r,\"INITIAL_PUBLISH\")){n(r);let o=t.getState();o.phase!==\"DRAGGING\"&&A(),e.start(o);return}n(r),e.scroll(t.getState())},nv=e=>t=>n=>{if(t(n),!se(n,\"PUBLISH_WHILE_DRAGGING\"))return;let r=e.getState();r.phase===\"DROP_PENDING\"&&(r.isWaiting||e.dispatch(Xc({reason:r.reason})))},rv=ka,ov=({dimensionMarshal:e,focusMarshal:t,styleMarshal:n,getResponders:r,announce:o,autoScroller:a})=>Ta(mx,rv(Fd(Fx(n),Zx(e),Ax(e),Vx,Xx,Jx,nv,tv(a),Wx,Qx(t),Kx(r,o)))),ja=()=>({additions:{},removals:{},modified:{}});function av({registry:e,callbacks:t}){let n=ja(),r=null,o=()=>{r||(t.collectionStarting(),r=requestAnimationFrame(()=>{r=null,gr();let{additions:l,removals:u,modified:f}=n,d=Object.keys(l).map(x=>e.draggable.getById(x).getDimension(Te)).sort((x,v)=>x.descriptor.index-v.descriptor.index),c=Object.keys(f).map(x=>{let b=e.droppable.getById(x).callbacks.getScrollWhileDragging();return{droppableId:x,scroll:b}}),m={additions:d,removals:Object.keys(u),modified:c};n=ja(),hr(),t.publish(m)}))};return{add:l=>{let u=l.descriptor.id;n.additions[u]=l,n.modified[l.descriptor.droppableId]=!0,n.removals[u]&&delete n.removals[u],o()},remove:l=>{let u=l.descriptor;n.removals[u.id]=!0,n.modified[u.droppableId]=!0,n.additions[u.id]&&delete n.additions[u.id],o()},stop:()=>{r&&(cancelAnimationFrame(r),r=null,n=ja())}}}var tu=({scrollHeight:e,scrollWidth:t,height:n,width:r})=>{let o=je({x:t,y:e},{x:r,y:n});return{x:Math.max(0,o.x),y:Math.max(0,o.y)}},nu=()=>{let e=document.documentElement;return e||A(),e},ru=()=>{let e=nu();return tu({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},iv=()=>{let e=eu(),t=ru(),n=e.y,r=e.x,o=nu(),a=o.clientWidth,i=o.clientHeight,s=r+a,l=n+i;return{frame:ot({top:n,left:r,right:s,bottom:l}),scroll:{initial:e,current:e,max:t,diff:{value:Te,displacement:Te}}}},sv=({critical:e,scrollOptions:t,registry:n})=>{gr();let r=iv(),o=r.scroll.current,a=e.droppable,i=n.droppable.getAllByType(a.type).map(f=>f.callbacks.getDimensionAndWatchScroll(o,t)),s=n.draggable.getAllByType(e.draggable.type).map(f=>f.getDimension(o)),l={draggables:Ac(s),droppables:kc(i)};return hr(),{dimensions:l,critical:e,viewport:r}};function cc(e,t,n){return!(n.descriptor.id===t.id||n.descriptor.type!==t.type||e.droppable.getById(n.descriptor.droppableId).descriptor.mode!==\"virtual\")}var lv=(e,t)=>{let n=null,r=av({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),o=(c,m)=>{e.droppable.exists(c)||A(),n&&t.updateDroppableIsEnabled({id:c,isEnabled:m})},a=(c,m)=>{n&&(e.droppable.exists(c)||A(),t.updateDroppableIsCombineEnabled({id:c,isCombineEnabled:m}))},i=(c,m)=>{n&&(e.droppable.exists(c)||A(),t.updateDroppableScroll({id:c,newScroll:m}))},s=(c,m)=>{n&&e.droppable.getById(c).callbacks.scroll(m)},l=()=>{if(!n)return;r.stop();let c=n.critical.droppable;e.droppable.getAllByType(c.type).forEach(m=>m.callbacks.dragStopped()),n.unsubscribe(),n=null},u=c=>{n||A();let m=n.critical.draggable;c.type===\"ADDITION\"&&cc(e,m,c.value)&&r.add(c.value),c.type===\"REMOVAL\"&&cc(e,m,c.value)&&r.remove(c.value)};return{updateDroppableIsEnabled:o,updateDroppableIsCombineEnabled:a,scrollDroppable:s,updateDroppableScroll:i,startPublishing:c=>{n&&A();let m=e.draggable.getById(c.draggableId),x=e.droppable.getById(m.descriptor.droppableId),v={draggable:m.descriptor,droppable:x.descriptor},b=e.subscribe(u);return n={critical:v,unsubscribe:b},sv({critical:v,registry:e,scrollOptions:c.scrollOptions})},stopPublishing:l}},ou=(e,t)=>e.phase===\"IDLE\"?!0:e.phase!==\"DROP_ANIMATING\"||e.completed.result.draggableId===t?!1:e.completed.result.reason===\"DROP\",dv=e=>{window.scrollBy(e.x,e.y)},cv=Ie(e=>Po(e).filter(t=>!(!t.isEnabled||!t.frame))),uv=(e,t)=>cv(t).find(r=>(r.frame||A(),Uc(r.frame.pageMarginBox)(e)))||null,fv=({center:e,destination:t,droppables:n})=>{if(t){let o=n[t];return o.frame?o:null}return uv(e,n)},dr={startFromPercentage:.25,maxScrollAtPercentage:.05,maxPixelScroll:28,ease:e=>e**2,durationDampening:{stopDampeningAt:1200,accelerateAt:360},disabled:!1},pv=(e,t,n=()=>dr)=>{let r=n(),o=e[t.size]*r.startFromPercentage,a=e[t.size]*r.maxScrollAtPercentage;return{startScrollingFrom:o,maxScrollValueAt:a}},au=({startOfRange:e,endOfRange:t,current:n})=>{let r=t-e;return r===0?0:(n-e)/r},bi=1,mv=(e,t,n=()=>dr)=>{let r=n();if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return r.maxPixelScroll;if(e===t.startScrollingFrom)return bi;let a=1-au({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),i=r.maxPixelScroll*r.ease(a);return Math.ceil(i)},gv=(e,t,n)=>{let r=n(),o=r.durationDampening.accelerateAt,a=r.durationDampening.stopDampeningAt,i=t,s=a,u=Date.now()-i;if(u>=a)return e;if(u{let a=mv(e,t,o);return a===0?0:r?Math.max(gv(a,n,o),bi):a},fc=({container:e,distanceToEdges:t,dragStartTime:n,axis:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=pv(e,r,a);return t[r.end]{let r=t.height>e.height,o=t.width>e.width;return!o&&!r?n:o&&r?null:{x:o?0:n.x,y:r?0:n.y}},bv=Nc(e=>e===0?0:e),iu=({dragStartTime:e,container:t,subject:n,center:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i={top:r.y-t.top,right:t.right-r.x,bottom:t.bottom-r.y,left:r.x-t.left},s=fc({container:t,distanceToEdges:i,dragStartTime:e,axis:di,shouldUseTimeDampening:o,getAutoScrollerOptions:a}),l=fc({container:t,distanceToEdges:i,dragStartTime:e,axis:_c,shouldUseTimeDampening:o,getAutoScrollerOptions:a}),u=bv({x:l,y:s});if(Ft(u,Te))return null;let f=hv({container:t,subject:n,proposedScroll:u});return f?Ft(f,Te)?null:f:null},xv=Nc(e=>e===0?0:e>0?1:-1),xi=(()=>{let e=(t,n)=>t<0?t:t>n?t-n:0;return({current:t,max:n,change:r})=>{let o=Fe(t,r),a={x:e(o.x,n.x),y:e(o.y,n.y)};return Ft(a,Te)?null:a}})(),su=({max:e,current:t,change:n})=>{let r={x:Math.max(t.x,e.x),y:Math.max(t.y,e.y)},o=xv(n),a=xi({max:r,current:t,change:o});return!a||o.x!==0&&a.x===0||o.y!==0&&a.y===0},vi=(e,t)=>su({current:e.scroll.current,max:e.scroll.max,change:t}),vv=(e,t)=>{if(!vi(e,t))return null;let n=e.scroll.max,r=e.scroll.current;return xi({current:r,max:n,change:t})},yi=(e,t)=>{let n=e.frame;return n?su({current:n.scroll.current,max:n.scroll.max,change:t}):!1},yv=(e,t)=>{let n=e.frame;return!n||!yi(e,t)?null:xi({current:n.scroll.current,max:n.scroll.max,change:t})},wv=({viewport:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=iu({dragStartTime:r,container:e.frame,subject:t,center:n,shouldUseTimeDampening:o,getAutoScrollerOptions:a});return i&&vi(e,i)?i:null},Cv=({droppable:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=e.frame;if(!i)return null;let s=iu({dragStartTime:r,container:i.pageMarginBox,subject:t,center:n,shouldUseTimeDampening:o,getAutoScrollerOptions:a});return s&&yi(e,s)?s:null},pc=({state:e,dragStartTime:t,shouldUseTimeDampening:n,scrollWindow:r,scrollDroppable:o,getAutoScrollerOptions:a})=>{let i=e.current.page.borderBoxCenter,l=e.dimensions.draggables[e.critical.draggable.id].page.marginBox;if(e.isWindowScrollAllowed){let d=e.viewport,c=wv({dragStartTime:t,viewport:d,subject:l,center:i,shouldUseTimeDampening:n,getAutoScrollerOptions:a});if(c){r(c);return}}let u=fv({center:i,destination:Re(e.impact),droppables:e.dimensions.droppables});if(!u)return;let f=Cv({dragStartTime:t,droppable:u,subject:l,center:i,shouldUseTimeDampening:n,getAutoScrollerOptions:a});f&&o(u.descriptor.id,f)},Ov=({scrollWindow:e,scrollDroppable:t,getAutoScrollerOptions:n=()=>dr})=>{let r=un(e),o=un(t),a=null,i=u=>{a||A();let{shouldUseTimeDampening:f,dragStartTime:d}=a;pc({state:u,scrollWindow:r,scrollDroppable:o,dragStartTime:d,shouldUseTimeDampening:f,getAutoScrollerOptions:n})};return{start:u=>{gr(),a&&A();let f=Date.now(),d=!1,c=()=>{d=!0};pc({state:u,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:c,scrollDroppable:c,getAutoScrollerOptions:n}),a={dragStartTime:f,shouldUseTimeDampening:d},hr(),d&&i(u)},stop:()=>{a&&(r.cancel(),o.cancel(),a=null)},scroll:i}},Sv=({move:e,scrollDroppable:t,scrollWindow:n})=>{let r=(s,l)=>{let u=Fe(s.current.client.selection,l);e({client:u})},o=(s,l)=>{if(!yi(s,l))return l;let u=yv(s,l);if(!u)return t(s.descriptor.id,l),null;let f=je(l,u);return t(s.descriptor.id,f),je(l,f)},a=(s,l,u)=>{if(!s||!vi(l,u))return u;let f=vv(l,u);if(!f)return n(u),null;let d=je(u,f);return n(d),je(u,d)};return s=>{let l=s.scrollJumpRequest;if(!l)return;let u=Re(s.impact);u||A();let f=o(s.dimensions.droppables[u],l);if(!f)return;let d=s.viewport,c=a(s.isWindowScrollAllowed,d,f);c&&r(s,c)}},Ev=({scrollDroppable:e,scrollWindow:t,move:n,getAutoScrollerOptions:r})=>{let o=Ov({scrollWindow:t,scrollDroppable:e,getAutoScrollerOptions:r}),a=Sv({move:n,scrollWindow:t,scrollDroppable:e});return{scroll:l=>{if(!(r().disabled||l.phase!==\"DRAGGING\")){if(l.movementMode===\"FLUID\"){o.scroll(l);return}l.scrollJumpRequest&&a(l)}},start:o.start,stop:o.stop}},pn=\"data-rfd\",mn=(()=>{let e=\"\".concat(pn,\"-drag-handle\");return{base:e,draggableId:\"\".concat(e,\"-draggable-id\"),contextId:\"\".concat(e,\"-context-id\")}})(),oi=(()=>{let e=\"\".concat(pn,\"-draggable\");return{base:e,contextId:\"\".concat(e,\"-context-id\"),id:\"\".concat(e,\"-id\")}})(),Dv=(()=>{let e=\"\".concat(pn,\"-droppable\");return{base:e,contextId:\"\".concat(e,\"-context-id\"),id:\"\".concat(e,\"-id\")}})(),mc={contextId:\"\".concat(pn,\"-scroll-container-context-id\")},Iv=e=>t=>\"[\".concat(t,'=\"').concat(e,'\"]'),tr=(e,t)=>e.map(n=>{let r=n.styles[t];return r?\"\".concat(n.selector,\" { \").concat(r,\" }\"):\"\"}).join(\" \"),Tv=\"pointer-events: none;\",Nv=e=>{let t=Iv(e),n=(()=>{let s=\"\\n cursor: -webkit-grab;\\n cursor: grab;\\n \";return{selector:t(mn.contextId),styles:{always:\"\\n -webkit-touch-callout: none;\\n -webkit-tap-highlight-color: rgba(0,0,0,0);\\n touch-action: manipulation;\\n \",resting:s,dragging:Tv,dropAnimating:s}}})(),r=(()=>{let s=\"\\n transition: \".concat(or.outOfTheWay,\";\\n \");return{selector:t(oi.contextId),styles:{dragging:s,dropAnimating:s,userCancel:s}}})(),o={selector:t(Dv.contextId),styles:{always:\"overflow-anchor: none;\"}},i=[r,n,o,{selector:\"body\",styles:{dragging:\"\\n cursor: grabbing;\\n cursor: -webkit-grabbing;\\n user-select: none;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n overflow-anchor: none;\\n \"}}];return{always:tr(i,\"always\"),resting:tr(i,\"resting\"),dragging:tr(i,\"dragging\"),dropAnimating:tr(i,\"dropAnimating\"),userCancel:tr(i,\"userCancel\")}},Ye=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\"?U.useLayoutEffect:U.useEffect,Ra=()=>{let e=document.querySelector(\"head\");return e||A(),e},gc=e=>{let t=document.createElement(\"style\");return e&&t.setAttribute(\"nonce\",e),t.type=\"text/css\",t};function kv(e,t){let n=re(()=>Nv(e),[e]),r=(0,U.useRef)(null),o=(0,U.useRef)(null),a=j(Ie(d=>{let c=o.current;c||A(),c.textContent=d}),[]),i=j(d=>{let c=r.current;c||A(),c.textContent=d},[]);Ye(()=>{!r.current&&!o.current||A();let d=gc(t),c=gc(t);return r.current=d,o.current=c,d.setAttribute(\"\".concat(pn,\"-always\"),e),c.setAttribute(\"\".concat(pn,\"-dynamic\"),e),Ra().appendChild(d),Ra().appendChild(c),i(n.always),a(n.resting),()=>{let m=x=>{let v=x.current;v||A(),Ra().removeChild(v),x.current=null};m(r),m(o)}},[t,i,a,n.always,n.resting,e]);let s=j(()=>a(n.dragging),[a,n.dragging]),l=j(d=>{if(d===\"DROP\"){a(n.dropAnimating);return}a(n.userCancel)},[a,n.dropAnimating,n.userCancel]),u=j(()=>{o.current&&a(n.resting)},[a,n.resting]);return re(()=>({dragging:s,dropping:l,resting:u}),[s,l,u])}function lu(e,t){return Array.from(e.querySelectorAll(t))}var du=e=>e&&e.ownerDocument&&e.ownerDocument.defaultView?e.ownerDocument.defaultView:window;function br(e){return e instanceof du(e).HTMLElement}function cu(e,t){let n=\"[\".concat(mn.contextId,'=\"').concat(e,'\"]'),r=lu(document,n);if(!r.length)return null;let o=r.find(a=>a.getAttribute(mn.draggableId)===t);return!o||!br(o)?null:o}function Av(e){let t=(0,U.useRef)({}),n=(0,U.useRef)(null),r=(0,U.useRef)(null),o=(0,U.useRef)(!1),a=j(function(c,m){let x={id:c,focus:m};return t.current[c]=x,function(){let b=t.current;b[c]!==x&&delete b[c]}},[]),i=j(function(c){let m=cu(e,c);m&&m!==document.activeElement&&m.focus()},[e]),s=j(function(c,m){n.current===c&&(n.current=m)},[]),l=j(function(){r.current||o.current&&(r.current=requestAnimationFrame(()=>{r.current=null;let c=n.current;c&&i(c)}))},[i]),u=j(function(c){n.current=null;let m=document.activeElement;m&&m.getAttribute(mn.draggableId)===c&&(n.current=c)},[]);return Ye(()=>(o.current=!0,function(){o.current=!1;let c=r.current;c&&cancelAnimationFrame(c)}),[]),re(()=>({register:a,tryRecordFocus:u,tryRestoreFocusRecorded:l,tryShiftRecord:s}),[a,u,l,s])}function Fv(){let e={draggables:{},droppables:{}},t=[];function n(d){return t.push(d),function(){let m=t.indexOf(d);m!==-1&&t.splice(m,1)}}function r(d){t.length&&t.forEach(c=>c(d))}function o(d){return e.draggables[d]||null}function a(d){let c=o(d);return c||A(),c}let i={register:d=>{e.draggables[d.descriptor.id]=d,r({type:\"ADDITION\",value:d})},update:(d,c)=>{let m=e.draggables[c.descriptor.id];m&&m.uniqueId===d.uniqueId&&(delete e.draggables[c.descriptor.id],e.draggables[d.descriptor.id]=d)},unregister:d=>{let c=d.descriptor.id,m=o(c);m&&d.uniqueId===m.uniqueId&&(delete e.draggables[c],e.droppables[d.descriptor.droppableId]&&r({type:\"REMOVAL\",value:d}))},getById:a,findById:o,exists:d=>!!o(d),getAllByType:d=>Object.values(e.draggables).filter(c=>c.descriptor.type===d)};function s(d){return e.droppables[d]||null}function l(d){let c=s(d);return c||A(),c}let u={register:d=>{e.droppables[d.descriptor.id]=d},unregister:d=>{let c=s(d.descriptor.id);c&&d.uniqueId===c.uniqueId&&delete e.droppables[d.descriptor.id]},getById:l,findById:s,exists:d=>!!s(d),getAllByType:d=>Object.values(e.droppables).filter(c=>c.descriptor.type===d)};function f(){e.draggables={},e.droppables={},t.length=0}return{draggable:i,droppable:u,subscribe:n,clean:f}}function Pv(){let e=re(Fv,[]);return(0,U.useEffect)(()=>function(){e.clean()},[e]),e}var wi=U.default.createContext(null),cr=()=>{let e=document.body;return e||A(),e},_v={position:\"absolute\",width:\"1px\",height:\"1px\",margin:\"-1px\",border:\"0\",padding:\"0\",overflow:\"hidden\",clip:\"rect(0 0 0 0)\",\"clip-path\":\"inset(100%)\"},Bv=e=>\"rfd-announcement-\".concat(e);function Lv(e){let t=re(()=>Bv(e),[e]),n=(0,U.useRef)(null);return(0,U.useEffect)(function(){let a=document.createElement(\"div\");return n.current=a,a.id=t,a.setAttribute(\"aria-live\",\"assertive\"),a.setAttribute(\"aria-atomic\",\"true\"),K(a.style,_v),cr().appendChild(a),function(){setTimeout(function(){let l=cr();l.contains(a)&&l.removeChild(a),a===n.current&&(n.current=null)})}},[t]),j(o=>{let a=n.current;if(a){a.textContent=o;return}},[])}var Mv={separator:\"::\"};function Ci(e,t=Mv){let n=U.default.useId();return re(()=>\"\".concat(e).concat(t.separator).concat(n),[t.separator,e,n])}function Vv({contextId:e,uniqueId:t}){return\"rfd-hidden-text-\".concat(e,\"-\").concat(t)}function zv({contextId:e,text:t}){let n=Ci(\"hidden-text\",{separator:\"-\"}),r=re(()=>Vv({contextId:e,uniqueId:n}),[n,e]);return(0,U.useEffect)(function(){let a=document.createElement(\"div\");return a.id=r,a.textContent=t,a.style.display=\"none\",cr().appendChild(a),function(){let s=cr();s.contains(a)&&s.removeChild(a)}},[r,t]),r}var Mo=U.default.createContext(null),$v={react:\"^18.0.0 || ^19.0.0\"},Uv=/(\\d+)\\.(\\d+)\\.(\\d+)/,hc=e=>{let t=Uv.exec(e);t==null&&A();let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]);return{major:n,minor:r,patch:o,raw:e}},Wv=(e,t)=>t.major>e.major?!0:t.majore.minor?!0:t.minor=e.patch,Gv=(e,t)=>{let n=hc(e),r=hc(t);Wv(n,r)};var Hv=e=>{let t=e.doctype;t&&(t.name.toLowerCase(),t.publicId)};function xr(e,t){}function qv(){xr(()=>{Gv($v.react,U.default.version),Hv(document)},[])}function Oi(e){let t=(0,U.useRef)(e);return(0,U.useEffect)(()=>{t.current=e}),t}function jv(){let e=null;function t(){return!!e}function n(i){return i===e}function r(i){e&&A();let s={abandon:i};return e=s,s}function o(){e||A(),e=null}function a(){e&&(e.abandon(),o())}return{isClaimed:t,isActive:n,claim:r,release:o,tryAbandon:a}}function ur(e){return e.phase===\"IDLE\"||e.phase===\"DROP_ANIMATING\"?!1:e.isDragging}var Rv=9,Yv=13,Si=27,uu=32,Kv=33,Xv=34,Jv=35,Zv=36,Qv=37,ey=38,ty=39,ny=40,ry={[Yv]:!0,[Rv]:!0},fu=e=>{ry[e.keyCode]&&e.preventDefault()},Vo=(()=>{let e=\"visibilitychange\";return typeof document>\"u\"?e:[e,\"ms\".concat(e),\"webkit\".concat(e),\"moz\".concat(e),\"o\".concat(e)].find(r=>\"on\".concat(r)in document)||e})(),pu=0,bc=5;function oy(e,t){return Math.abs(t.x-e.x)>=bc||Math.abs(t.y-e.y)>=bc}var xc={type:\"IDLE\"};function ay({cancel:e,completed:t,getPhase:n,setPhase:r}){return[{eventName:\"mousemove\",fn:o=>{let{button:a,clientX:i,clientY:s}=o;if(a!==pu)return;let l={x:i,y:s},u=n();if(u.type===\"DRAGGING\"){o.preventDefault(),u.actions.move(l);return}u.type!==\"PENDING\"&&A();let f=u.point;if(!oy(f,l))return;o.preventDefault();let d=u.actions.fluidLift(l);r({type:\"DRAGGING\",actions:d})}},{eventName:\"mouseup\",fn:o=>{let a=n();if(a.type!==\"DRAGGING\"){e();return}o.preventDefault(),a.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:\"mousedown\",fn:o=>{n().type===\"DRAGGING\"&&o.preventDefault(),e()}},{eventName:\"keydown\",fn:o=>{if(n().type===\"PENDING\"){e();return}if(o.keyCode===Si){o.preventDefault(),e();return}fu(o)}},{eventName:\"resize\",fn:e},{eventName:\"scroll\",options:{passive:!0,capture:!1},fn:()=>{n().type===\"PENDING\"&&e()}},{eventName:\"webkitmouseforcedown\",fn:o=>{let a=n();if(a.type===\"IDLE\"&&A(),a.actions.shouldRespectForcePress()){e();return}o.preventDefault()}},{eventName:Vo,fn:e}]}function iy(e){let t=(0,U.useRef)(xc),n=(0,U.useRef)(At),r=re(()=>({eventName:\"mousedown\",fn:function(d){if(d.defaultPrevented||d.button!==pu||d.ctrlKey||d.metaKey||d.shiftKey||d.altKey)return;let c=e.findClosestDraggableId(d);if(!c)return;let m=e.tryGetLock(c,i,{sourceEvent:d});if(!m)return;d.preventDefault();let x={x:d.clientX,y:d.clientY};n.current(),u(m,x)}}),[e]),o=re(()=>({eventName:\"webkitmouseforcewillbegin\",fn:f=>{if(f.defaultPrevented)return;let d=e.findClosestDraggableId(f);if(!d)return;let c=e.findOptionsForDraggable(d);c&&(c.shouldRespectForcePress||e.canGetLock(d)&&f.preventDefault())}}),[e]),a=j(function(){let d={passive:!1,capture:!0};n.current=at(window,[o,r],d)},[o,r]),i=j(()=>{t.current.type!==\"IDLE\"&&(t.current=xc,n.current(),a())},[a]),s=j(()=>{let f=t.current;i(),f.type===\"DRAGGING\"&&f.actions.cancel({shouldBlockNextClick:!0}),f.type===\"PENDING\"&&f.actions.abort()},[i]),l=j(function(){let d={capture:!0,passive:!1},c=ay({cancel:s,completed:i,getPhase:()=>t.current,setPhase:m=>{t.current=m}});n.current=at(window,c,d)},[s,i]),u=j(function(d,c){t.current.type!==\"IDLE\"&&A(),t.current={type:\"PENDING\",point:c,actions:d},l()},[l]);Ye(function(){return a(),function(){n.current()}},[a])}function sy(){}var ly={[Xv]:!0,[Kv]:!0,[Zv]:!0,[Jv]:!0};function dy(e,t){function n(){t(),e.cancel()}function r(){t(),e.drop()}return[{eventName:\"keydown\",fn:o=>{if(o.keyCode===Si){o.preventDefault(),n();return}if(o.keyCode===uu){o.preventDefault(),r();return}if(o.keyCode===ny){o.preventDefault(),e.moveDown();return}if(o.keyCode===ey){o.preventDefault(),e.moveUp();return}if(o.keyCode===ty){o.preventDefault(),e.moveRight();return}if(o.keyCode===Qv){o.preventDefault(),e.moveLeft();return}if(ly[o.keyCode]){o.preventDefault();return}fu(o)}},{eventName:\"mousedown\",fn:n},{eventName:\"mouseup\",fn:n},{eventName:\"click\",fn:n},{eventName:\"touchstart\",fn:n},{eventName:\"resize\",fn:n},{eventName:\"wheel\",fn:n,options:{passive:!0}},{eventName:Vo,fn:n}]}function cy(e){let t=(0,U.useRef)(sy),n=re(()=>({eventName:\"keydown\",fn:function(a){if(a.defaultPrevented||a.keyCode!==uu)return;let i=e.findClosestDraggableId(a);if(!i)return;let s=e.tryGetLock(i,f,{sourceEvent:a});if(!s)return;a.preventDefault();let l=!0,u=s.snapLift();t.current();function f(){l||A(),l=!1,t.current(),r()}t.current=at(window,dy(u,f),{capture:!0,passive:!1})}}),[e]),r=j(function(){let a={passive:!1,capture:!0};t.current=at(window,[n],a)},[n]);Ye(function(){return r(),function(){t.current()}},[r])}var Ya={type:\"IDLE\"},uy=120,fy=.15;function py({cancel:e,getPhase:t}){return[{eventName:\"orientationchange\",fn:e},{eventName:\"resize\",fn:e},{eventName:\"contextmenu\",fn:n=>{n.preventDefault()}},{eventName:\"keydown\",fn:n=>{if(t().type!==\"DRAGGING\"){e();return}n.keyCode===Si&&n.preventDefault(),e()}},{eventName:Vo,fn:e}]}function my({cancel:e,completed:t,getPhase:n}){return[{eventName:\"touchmove\",options:{capture:!1},fn:r=>{let o=n();if(o.type!==\"DRAGGING\"){e();return}o.hasMoved=!0;let{clientX:a,clientY:i}=r.touches[0],s={x:a,y:i};r.preventDefault(),o.actions.move(s)}},{eventName:\"touchend\",fn:r=>{let o=n();if(o.type!==\"DRAGGING\"){e();return}r.preventDefault(),o.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:\"touchcancel\",fn:r=>{if(n().type!==\"DRAGGING\"){e();return}r.preventDefault(),e()}},{eventName:\"touchforcechange\",fn:r=>{let o=n();o.type===\"IDLE\"&&A();let a=r.touches[0];if(!a||!(a.force>=fy))return;let s=o.actions.shouldRespectForcePress();if(o.type===\"PENDING\"){s&&e();return}if(s){if(o.hasMoved){r.preventDefault();return}e();return}r.preventDefault()}},{eventName:Vo,fn:e}]}function gy(e){let t=(0,U.useRef)(Ya),n=(0,U.useRef)(At),r=j(function(){return t.current},[]),o=j(function(m){t.current=m},[]),a=re(()=>({eventName:\"touchstart\",fn:function(m){if(m.defaultPrevented)return;let x=e.findClosestDraggableId(m);if(!x)return;let v=e.tryGetLock(x,s,{sourceEvent:m});if(!v)return;let b=m.touches[0],{clientX:C,clientY:h}=b,O={x:C,y:h};n.current(),d(v,O)}}),[e]),i=j(function(){let m={capture:!0,passive:!1};n.current=at(window,[a],m)},[a]),s=j(()=>{let c=t.current;c.type!==\"IDLE\"&&(c.type===\"PENDING\"&&clearTimeout(c.longPressTimerId),o(Ya),n.current(),i())},[i,o]),l=j(()=>{let c=t.current;s(),c.type===\"DRAGGING\"&&c.actions.cancel({shouldBlockNextClick:!0}),c.type===\"PENDING\"&&c.actions.abort()},[s]),u=j(function(){let m={capture:!0,passive:!1},x={cancel:l,completed:s,getPhase:r},v=at(window,my(x),m),b=at(window,py(x),m);n.current=function(){v(),b()}},[l,r,s]),f=j(function(){let m=r();m.type!==\"PENDING\"&&A();let x=m.actions.fluidLift(m.point);o({type:\"DRAGGING\",actions:x,hasMoved:!1})},[r,o]),d=j(function(m,x){r().type!==\"IDLE\"&&A();let v=setTimeout(f,uy);o({type:\"PENDING\",point:x,actions:m,longPressTimerId:v}),u()},[u,r,o,f]);Ye(function(){return i(),function(){n.current();let x=r();x.type===\"PENDING\"&&(clearTimeout(x.longPressTimerId),o(Ya))}},[r,i,o]),Ye(function(){return at(window,[{eventName:\"touchmove\",fn:()=>{},options:{capture:!1,passive:!1}}])},[])}function hy(e){}var by=[\"input\",\"button\",\"textarea\",\"select\",\"option\",\"optgroup\",\"video\",\"audio\"];function mu(e,t){if(t==null)return!1;if(by.includes(t.tagName.toLowerCase()))return!0;let r=t.getAttribute(\"contenteditable\");return r===\"true\"||r===\"\"?!0:t===e?!1:mu(e,t.parentElement)}function xy(e,t){let n=t.target;return br(n)?mu(e,n):!1}var vy=e=>ot(e.getBoundingClientRect()).center;function yy(e){return e instanceof du(e).Element}var wy=(()=>{let e=\"matches\";return typeof document>\"u\"?e:[e,\"msMatchesSelector\",\"webkitMatchesSelector\"].find(r=>r in Element.prototype)||e})();function gu(e,t){return e==null?null:e[wy](t)?e:gu(e.parentElement,t)}function Cy(e,t){return e.closest?e.closest(t):gu(e,t)}function Oy(e){return\"[\".concat(mn.contextId,'=\"').concat(e,'\"]')}function Sy(e,t){let n=t.target;if(!yy(n))return null;let r=Oy(e),o=Cy(n,r);return!o||!br(o)?null:o}function Ey(e,t){let n=Sy(e,t);return n?n.getAttribute(mn.draggableId):null}function Dy(e,t){let n=\"[\".concat(oi.contextId,'=\"').concat(e,'\"]'),o=lu(document,n).find(a=>a.getAttribute(oi.id)===t);return!o||!br(o)?null:o}function Iy(e){e.preventDefault()}function Io({expected:e,phase:t,isLockActive:n,shouldWarn:r}){return!(!n()||e!==t)}function hu({lockAPI:e,store:t,registry:n,draggableId:r}){if(e.isClaimed())return!1;let o=n.draggable.findById(r);return!(!o||!o.options.isEnabled||!ou(t.getState(),r))}function Ty({lockAPI:e,contextId:t,store:n,registry:r,draggableId:o,forceSensorStop:a,sourceEvent:i}){if(!hu({lockAPI:e,store:n,registry:r,draggableId:o}))return null;let l=r.draggable.getById(o),u=Dy(t,l.descriptor.id);if(!u||i&&!l.options.canDragInteractiveElements&&xy(u,i))return null;let f=e.claim(a||At),d=\"PRE_DRAG\";function c(){return l.options.shouldRespectForcePress}function m(){return e.isActive(f)}function x(S,D){Io({expected:S,phase:d,isLockActive:m,shouldWarn:!0})&&n.dispatch(D())}let v=x.bind(null,\"DRAGGING\");function b(S){function D(){e.release(),d=\"COMPLETED\"}d!==\"PRE_DRAG\"&&(D(),A()),n.dispatch(hx(S.liftActionArgs)),d=\"DRAGGING\";function P(N,F={shouldBlockNextClick:!1}){if(S.cleanup(),F.shouldBlockNextClick){let V=at(window,[{eventName:\"click\",fn:Iy,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(V)}D(),n.dispatch(Xc({reason:N}))}return y({isActive:()=>Io({expected:\"DRAGGING\",phase:d,isLockActive:m,shouldWarn:!1}),shouldRespectForcePress:c,drop:N=>P(\"DROP\",N),cancel:N=>P(\"CANCEL\",N)},S.actions)}function C(S){let D=un(N=>{v(()=>Kc({client:N}))}),P=b({liftActionArgs:{id:o,clientSelection:S,movementMode:\"FLUID\"},cleanup:()=>D.cancel(),actions:{move:D}});return E(y({},P),{move:D})}function h(){let S={moveUp:()=>v(Ex),moveRight:()=>v(Ix),moveDown:()=>v(Dx),moveLeft:()=>v(Tx)};return b({liftActionArgs:{id:o,clientSelection:vy(u),movementMode:\"SNAP\"},cleanup:At,actions:S})}function O(){Io({expected:\"PRE_DRAG\",phase:d,isLockActive:m,shouldWarn:!0})&&e.release()}return{isActive:()=>Io({expected:\"PRE_DRAG\",phase:d,isLockActive:m,shouldWarn:!1}),shouldRespectForcePress:c,fluidLift:C,snapLift:h,abort:O}}var Ny=[iy,cy,gy];function ky({contextId:e,store:t,registry:n,customSensors:r,enableDefaultSensors:o}){let a=[...o?Ny:[],...r||[]],i=(0,U.useState)(()=>jv())[0],s=j(function(b,C){ur(b)&&!ur(C)&&i.tryAbandon()},[i]);Ye(function(){let b=t.getState();return t.subscribe(()=>{let h=t.getState();s(b,h),b=h})},[i,t,s]),Ye(()=>i.tryAbandon,[i.tryAbandon]);let l=j(v=>hu({lockAPI:i,registry:n,store:t,draggableId:v}),[i,n,t]),u=j((v,b,C)=>Ty({lockAPI:i,registry:n,contextId:e,store:t,draggableId:v,forceSensorStop:b||null,sourceEvent:C&&C.sourceEvent?C.sourceEvent:null}),[e,i,n,t]),f=j(v=>Ey(e,v),[e]),d=j(v=>{let b=n.draggable.findById(v);return b?b.options:null},[n.draggable]),c=j(function(){i.isClaimed()&&(i.tryAbandon(),t.getState().phase!==\"IDLE\"&&t.dispatch(mi()))},[i,t]),m=j(()=>i.isClaimed(),[i]),x=re(()=>({canGetLock:l,tryGetLock:u,findClosestDraggableId:f,findOptionsForDraggable:d,tryReleaseLock:c,isLockClaimed:m}),[l,u,f,d,c,m]);hy(a);for(let v=0;v({onBeforeCapture:t=>{(0,fr.flushSync)(()=>{e.onBeforeCapture&&e.onBeforeCapture(t)})},onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragEnd:e.onDragEnd,onDragUpdate:e.onDragUpdate}),Fy=e=>E(y(y({},dr),e.autoScrollerOptions),{durationDampening:y(y({},dr.durationDampening),e.autoScrollerOptions)});function nr(e){return e.current||A(),e.current}function Py(e){let{contextId:t,setCallbacks:n,sensors:r,nonce:o,dragHandleUsageInstructions:a}=e,i=(0,U.useRef)(null);qv();let s=Oi(e),l=j(()=>Ay(s.current),[s]),u=j(()=>Fy(s.current),[s]),f=Lv(t),d=zv({contextId:t,text:a}),c=kv(t,o),m=j(V=>{nr(i).dispatch(V)},[]),x=re(()=>Na({publishWhileDragging:xx,updateDroppableScroll:yx,updateDroppableIsEnabled:wx,updateDroppableIsCombineEnabled:Cx,collectionStarting:vx},m),[m]),v=Pv(),b=re(()=>lv(v,x),[v,x]),C=re(()=>Ev(y({scrollWindow:dv,scrollDroppable:b.scrollDroppable,getAutoScrollerOptions:u},Na({move:Kc},m))),[b.scrollDroppable,m,u]),h=Av(t),O=re(()=>ov({announce:f,autoScroller:C,dimensionMarshal:b,focusMarshal:h,getResponders:l,styleMarshal:c}),[f,C,b,h,l,c]);i.current=O;let w=j(()=>{let V=nr(i);V.getState().phase!==\"IDLE\"&&V.dispatch(mi())},[]),S=j(()=>{let V=nr(i).getState();return V.phase===\"DROP_ANIMATING\"?!0:V.phase===\"IDLE\"?!1:V.isDragging},[]),D=re(()=>({isDragging:S,tryAbort:w}),[S,w]);n(D);let P=j(V=>ou(nr(i).getState(),V),[]),N=j(()=>Xt(nr(i).getState()),[]),F=re(()=>({marshal:b,focus:h,contextId:t,canLift:P,isMovementAllowed:N,dragHandleUsageInstructionsId:d,registry:v}),[t,b,d,h,P,N,v]);return ky({contextId:t,store:O,registry:v,customSensors:r||null,enableDefaultSensors:e.enableDefaultSensors!==!1}),(0,U.useEffect)(()=>w,[w]),U.default.createElement(Mo.Provider,{value:F},U.default.createElement(Yd,{context:wi,store:O},e.children))}function _y(){return U.default.useId()}function zo(e){let t=_y(),n=e.dragHandleUsageInstructions||No.dragHandleUsageInstructions;return U.default.createElement(Qa,null,r=>U.default.createElement(Py,{nonce:e.nonce,contextId:t,setCallbacks:r,dragHandleUsageInstructions:n,enableDefaultSensors:e.enableDefaultSensors,sensors:e.sensors,onBeforeCapture:e.onBeforeCapture,onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragUpdate:e.onDragUpdate,onDragEnd:e.onDragEnd,autoScrollerOptions:e.autoScrollerOptions},e.children))}var vc={dragging:5e3,dropAnimating:4500},By=(e,t)=>t?or.drop(t.duration):e?or.snap:or.fluid,Ly=(e,t)=>{if(e)return t?lr.opacity.drop:lr.opacity.combining},My=e=>e.forceShouldAnimate!=null?e.forceShouldAnimate:e.mode===\"SNAP\";function Vy(e){let n=e.dimension.client,{offset:r,combineWith:o,dropping:a}=e,i=!!o,s=My(e),l=!!a,u=l?ni.drop(r,i):ni.moveTo(r);return{position:\"fixed\",top:n.marginBox.top,left:n.marginBox.left,boxSizing:\"border-box\",width:n.borderBox.width,height:n.borderBox.height,transition:By(s,a),transform:u,opacity:Ly(i,l),zIndex:l?vc.dropAnimating:vc.dragging,pointerEvents:\"none\"}}function zy(e){return{transform:ni.moveTo(e.offset),transition:e.shouldAnimateDisplacement?void 0:\"none\"}}function $y(e){return e.type===\"DRAGGING\"?Vy(e):zy(e)}function Uy(e,t,n=Te){let r=window.getComputedStyle(t),o=t.getBoundingClientRect(),a=Ua(o,r),i=Qn(a,n),s={client:a,tagName:t.tagName.toLowerCase(),display:r.display},l={x:a.marginBox.width,y:a.marginBox.height};return{descriptor:e,placeholder:s,displaceBy:l,client:a,page:i}}function Wy(e){let t=Ci(\"draggable\"),{descriptor:n,registry:r,getDraggableRef:o,canDragInteractiveElements:a,shouldRespectForcePress:i,isEnabled:s}=e,l=re(()=>({canDragInteractiveElements:a,shouldRespectForcePress:i,isEnabled:s}),[a,s,i]),u=j(m=>{let x=o();return x||A(),Uy(n,x,m)},[n,o]),f=re(()=>({uniqueId:t,descriptor:n,options:l,getDimension:u}),[n,u,l,t]),d=(0,U.useRef)(f),c=(0,U.useRef)(!0);Ye(()=>(r.draggable.register(d.current),()=>r.draggable.unregister(d.current)),[r.draggable]),Ye(()=>{if(c.current){c.current=!1;return}let m=d.current;d.current=f,r.draggable.update(f,m)},[f,r.draggable])}var Ei=U.default.createContext(null);function bu(e){e&&br(e)||A()}function Gy(e,t,n){xr(()=>{function r(a){return\"Draggable[id: \".concat(a,\"]: \")}let o=e.draggableId;o||A(!1),typeof o!=\"string\"&&A(!1),Number.isInteger(e.index)||A(!1),e.mapped.type!==\"DRAGGING\"&&(bu(n()),e.isEnabled&&(cu(t,o)||A(!1)))})}function Hy(e){}function Fo(e){let t=(0,U.useContext)(e);return t||A(),t}function qy(e){e.preventDefault()}var jy=e=>{let t=(0,U.useRef)(null),n=j((D=null)=>{t.current=D},[]),r=j(()=>t.current,[]),{contextId:o,dragHandleUsageInstructionsId:a,registry:i}=Fo(Mo),{type:s,droppableId:l}=Fo(Ei),u=re(()=>({id:e.draggableId,index:e.index,type:s,droppableId:l}),[e.draggableId,e.index,s,l]),{children:f,draggableId:d,isEnabled:c,shouldRespectForcePress:m,canDragInteractiveElements:x,isClone:v,mapped:b,dropAnimationFinished:C}=e;if(Gy(e,o,r),Hy(v),!v){let D=re(()=>({descriptor:u,registry:i,getDraggableRef:r,canDragInteractiveElements:x,shouldRespectForcePress:m,isEnabled:c}),[u,i,r,x,m,c]);Wy(D)}let h=re(()=>c?{tabIndex:0,role:\"button\",\"aria-describedby\":a,\"data-rfd-drag-handle-draggable-id\":d,\"data-rfd-drag-handle-context-id\":o,draggable:!1,onDragStart:qy}:null,[o,a,d,c]),O=j(D=>{b.type===\"DRAGGING\"&&b.dropping&&D.propertyName===\"transform\"&&(0,fr.flushSync)(C)},[C,b]),w=re(()=>{let D=$y(b),P=b.type===\"DRAGGING\"&&b.dropping?O:void 0;return{innerRef:n,draggableProps:{\"data-rfd-draggable-context-id\":o,\"data-rfd-draggable-id\":d,style:D,onTransitionEnd:P},dragHandleProps:h}},[o,h,d,b,O,n]),S=re(()=>({draggableId:u.id,type:u.type,source:{index:u.index,droppableId:u.droppableId}}),[u.droppableId,u.id,u.index,u.type]);return U.default.createElement(U.default.Fragment,null,f(w,b.snapshot,S))},xu=(e,t)=>e===t,vu=e=>{let{combine:t,destination:n}=e;return n?n.droppableId:t?t.droppableId:null},Ry=e=>e.combine?e.combine.draggableId:null,Yy=e=>e.at&&e.at.type===\"COMBINE\"?e.at.combine.draggableId:null;function Ky(){let e=Ie((o,a)=>({x:o,y:a})),t=Ie((o,a,i=null,s=null,l=null)=>({isDragging:!0,isClone:a,isDropAnimating:!!l,dropAnimation:l,mode:o,draggingOver:i,combineWith:s,combineTargetFor:null})),n=Ie((o,a,i,s,l=null,u=null,f=null)=>({mapped:{type:\"DRAGGING\",dropping:null,draggingOver:l,combineWith:u,mode:a,offset:o,dimension:i,forceShouldAnimate:f,snapshot:t(a,s,l,u,null)}}));return(o,a)=>{if(ur(o)){if(o.critical.draggable.id!==a.draggableId)return null;let i=o.current.client.offset,s=o.dimensions.draggables[a.draggableId],l=Re(o.impact),u=Yy(o.impact),f=o.forceShouldAnimate;return n(e(i.x,i.y),o.movementMode,s,a.isClone,l,u,f)}if(o.phase===\"DROP_ANIMATING\"){let i=o.completed;if(i.result.draggableId!==a.draggableId)return null;let s=a.isClone,l=o.dimensions.draggables[a.draggableId],u=i.result,f=u.mode,d=vu(u),c=Ry(u),x={duration:o.dropDuration,curve:hi.drop,moveTo:o.newHomeClientOffset,opacity:c?lr.opacity.drop:null,scale:c?lr.scale.drop:null};return{mapped:{type:\"DRAGGING\",offset:o.newHomeClientOffset,dimension:l,dropping:x,draggingOver:d,combineWith:c,mode:f,forceShouldAnimate:null,snapshot:t(f,s,d,c,x)}}}return null}}function yu(e=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:e,combineWith:null}}var Xy={mapped:{type:\"SECONDARY\",offset:Te,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:yu(null)}};function Jy(){let e=Ie((i,s)=>({x:i,y:s})),t=Ie(yu),n=Ie((i,s=null,l)=>({mapped:{type:\"SECONDARY\",offset:i,combineTargetFor:s,shouldAnimateDisplacement:l,snapshot:t(s)}})),r=i=>i?n(Te,i,!0):null,o=(i,s,l,u)=>{let f=l.displaced.visible[i],d=!!(u.inVirtualList&&u.effected[i]),c=_o(l),m=c&&c.draggableId===i?s:null;if(!f){if(!d)return r(m);if(l.displaced.invisible[i])return null;let b=gn(u.displacedBy.point),C=e(b.x,b.y);return n(C,m,!0)}if(d)return r(m);let x=l.displacedBy.point,v=e(x.x,x.y);return n(v,m,f.shouldAnimate)};return(i,s)=>{if(ur(i))return i.critical.draggable.id===s.draggableId?null:o(s.draggableId,i.critical.draggable.id,i.impact,i.afterCritical);if(i.phase===\"DROP_ANIMATING\"){let l=i.completed;return l.result.draggableId===s.draggableId?null:o(s.draggableId,l.result.draggableId,l.impact,l.afterCritical)}return null}}var Zy=()=>{let e=Ky(),t=Jy();return(r,o)=>e(r,o)||t(r,o)||Xy},Qy={dropAnimationFinished:Jc},e0=Va(Zy,Qy,null,{context:wi,areStatePropsEqual:xu})(jy);function wu(e){return Fo(Ei).isUsingCloneFor===e.draggableId&&!e.isClone?null:U.default.createElement(e0,e)}function $o(e){let t=typeof e.isDragDisabled==\"boolean\"?!e.isDragDisabled:!0,n=!!e.disableInteractiveElementBlocking,r=!!e.shouldRespectForcePress;return U.default.createElement(wu,K({},e,{isClone:!1,isEnabled:t,canDragInteractiveElements:n,shouldRespectForcePress:r}))}var Di=e=>t=>e===t,t0=Di(\"scroll\"),n0=Di(\"auto\"),r0=Di(\"visible\"),yc=(e,t)=>t(e.overflowX)||t(e.overflowY),o0=(e,t)=>t(e.overflowX)&&t(e.overflowY),Cu=e=>{let t=window.getComputedStyle(e),n={overflowX:t.overflowX,overflowY:t.overflowY};return yc(n,t0)||yc(n,n0)},a0=()=>!1,Ou=e=>e==null?null:e===document.body?a0()?e:null:e===document.documentElement?null:Cu(e)?e:Ou(e.parentElement);var ai=e=>({x:e.scrollLeft,y:e.scrollTop}),Su=e=>e?window.getComputedStyle(e).position===\"fixed\"?!0:Su(e.parentElement):!1,i0=e=>{let t=Ou(e),n=Su(e);return{closestScrollable:t,isFixedOnPage:n}},s0=({descriptor:e,isEnabled:t,isCombineEnabled:n,isFixedOnPage:r,direction:o,client:a,page:i,closest:s})=>{let l=(()=>{if(!s)return null;let{scrollSize:c,client:m}=s,x=tu({scrollHeight:c.scrollHeight,scrollWidth:c.scrollWidth,height:m.paddingBox.height,width:m.paddingBox.width});return{pageMarginBox:s.page.marginBox,frameClient:m,scrollSize:c,shouldClipSubject:s.shouldClipSubject,scroll:{initial:s.scroll,current:s.scroll,max:x,diff:{value:Te,displacement:Te}}}})(),u=o===\"vertical\"?di:_c,f=fn({page:i,withPlaceholder:null,axis:u,frame:l});return{descriptor:e,isCombineEnabled:n,isFixedOnPage:r,axis:u,isEnabled:t,client:a,page:i,frame:l,subject:f}},l0=(e,t)=>{let n=Wa(e);if(!t||e!==t)return n;let r=n.paddingBox.top-t.scrollTop,o=n.paddingBox.left-t.scrollLeft,a=r+t.scrollHeight,i=o+t.scrollWidth,l=So({top:r,right:i,bottom:a,left:o},n.border);return Eo({borderBox:l,margin:n.margin,border:n.border,padding:n.padding})},d0=({ref:e,descriptor:t,env:n,windowScroll:r,direction:o,isDropDisabled:a,isCombineEnabled:i,shouldClipSubject:s})=>{let l=n.closestScrollable,u=l0(e,l),f=Qn(u,r),d=(()=>{if(!l)return null;let m=Wa(l),x={scrollHeight:l.scrollHeight,scrollWidth:l.scrollWidth};return{client:m,page:Qn(m,r),scroll:ai(l),scrollSize:x,shouldClipSubject:s}})();return s0({descriptor:t,isEnabled:!a,isCombineEnabled:i,isFixedOnPage:n.isFixedOnPage,direction:o,client:u,page:f,closest:d})},c0={passive:!1},u0={passive:!0},wc=e=>e.shouldPublishImmediately?c0:u0,To=e=>e&&e.env.closestScrollable||null;function f0(e){let t=(0,U.useRef)(null),n=Fo(Mo),r=Ci(\"droppable\"),{registry:o,marshal:a}=n,i=Oi(e),s=re(()=>({id:e.droppableId,type:e.type,mode:e.mode}),[e.droppableId,e.mode,e.type]),l=(0,U.useRef)(s),u=re(()=>Ie((w,S)=>{t.current||A();let D={x:w,y:S};a.updateDroppableScroll(s.id,D)}),[s.id,a]),f=j(()=>{let w=t.current;return!w||!w.env.closestScrollable?Te:ai(w.env.closestScrollable)},[]),d=j(()=>{let w=f();u(w.x,w.y)},[f,u]),c=re(()=>un(d),[d]),m=j(()=>{let w=t.current,S=To(w);if(w&&S||A(),w.scrollOptions.shouldPublishImmediately){d();return}c()},[c,d]),x=j((w,S)=>{t.current&&A();let D=i.current,P=D.getDroppableRef();P||A();let N=i0(P),F={ref:P,descriptor:s,env:N,scrollOptions:S};t.current=F;let V=d0({ref:P,descriptor:s,env:N,windowScroll:w,direction:D.direction,isDropDisabled:D.isDropDisabled,isCombineEnabled:D.isCombineEnabled,shouldClipSubject:!D.ignoreContainerClipping}),T=N.closestScrollable;return T&&(T.setAttribute(mc.contextId,n.contextId),T.addEventListener(\"scroll\",m,wc(F.scrollOptions))),V},[n.contextId,s,m,i]),v=j(()=>{let w=t.current,S=To(w);return w&&S||A(),ai(S)},[]),b=j(()=>{let w=t.current;w||A();let S=To(w);t.current=null,S&&(c.cancel(),S.removeAttribute(mc.contextId),S.removeEventListener(\"scroll\",m,wc(w.scrollOptions)))},[m,c]),C=j(w=>{let S=t.current;S||A();let D=To(S);D||A(),D.scrollTop+=w.y,D.scrollLeft+=w.x},[]),h=re(()=>({getDimensionAndWatchScroll:x,getScrollWhileDragging:v,dragStopped:b,scroll:C}),[b,x,v,C]),O=re(()=>({uniqueId:r,descriptor:s,callbacks:h}),[h,s,r]);Ye(()=>(l.current=O.descriptor,o.droppable.register(O),()=>{t.current&&b(),o.droppable.unregister(O)}),[h,s,b,O,a,o.droppable]),Ye(()=>{t.current&&a.updateDroppableIsEnabled(l.current.id,!e.isDropDisabled)},[e.isDropDisabled,a]),Ye(()=>{t.current&&a.updateDroppableIsCombineEnabled(l.current.id,e.isCombineEnabled)},[e.isCombineEnabled,a])}function Ka(){}var Cc={width:0,height:0,margin:fb},p0=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>e||n===\"close\"?Cc:{height:t.client.borderBox.height,width:t.client.borderBox.width,margin:t.client.margin},m0=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>{let r=p0({isAnimatingOpenOnMount:e,placeholder:t,animate:n});return{display:t.display,boxSizing:\"border-box\",width:r.width,height:r.height,marginTop:r.margin.top,marginRight:r.margin.right,marginBottom:r.margin.bottom,marginLeft:r.margin.left,flexShrink:\"0\",flexGrow:\"0\",pointerEvents:\"none\",transition:n!==\"none\"?or.placeholder:null}},g0=e=>{let t=(0,U.useRef)(null),n=j(()=>{t.current&&(clearTimeout(t.current),t.current=null)},[]),{animate:r,onTransitionEnd:o,onClose:a,contextId:i}=e,[s,l]=(0,U.useState)(e.animate===\"open\");(0,U.useEffect)(()=>s?r!==\"open\"?(n(),l(!1),Ka):t.current?Ka:(t.current=setTimeout(()=>{t.current=null,l(!1)}),n):Ka,[r,s,n]);let u=j(d=>{d.propertyName===\"height\"&&(o(),r===\"close\"&&a())},[r,a,o]),f=m0({isAnimatingOpenOnMount:s,animate:e.animate,placeholder:e.placeholder});return U.default.createElement(e.placeholder.tagName,{style:f,\"data-rfd-placeholder-context-id\":i,onTransitionEnd:u,ref:e.innerRef})},h0=U.default.memo(g0);function Xa(e){return typeof e==\"boolean\"}function Ja(e,t){t.forEach(n=>n(e))}var b0=[function({props:t}){t.droppableId||A(),typeof t.droppableId!=\"string\"&&A()},function({props:t}){Xa(t.isDropDisabled)||A(),Xa(t.isCombineEnabled)||A(),Xa(t.ignoreContainerClipping)||A()},function({getDroppableRef:t}){bu(t())}],x0=[function({props:t,getPlaceholderRef:n}){!t.placeholder||n()}],v0=[function({props:t}){t.renderClone||A()},function({getPlaceholderRef:t}){t()&&A()}];function y0(e){xr(()=>{Ja(e,b0),e.props.mode===\"standard\"&&Ja(e,x0),e.props.mode===\"virtual\"&&Ja(e,v0)})}var ii=class extends U.default.PureComponent{constructor(...t){super(...t),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?\"open\":\"none\"},this.onClose=()=>{this.state.animate===\"close\"&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(t,n){return t.shouldAnimate?t.on?{isVisible:!0,data:t.on,animate:\"open\"}:n.isVisible?{isVisible:!0,data:n.data,animate:\"close\"}:{isVisible:!1,animate:\"close\",data:null}:{isVisible:!!t.on,data:t.on,animate:\"none\"}}render(){if(!this.state.isVisible)return null;let t={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(t)}},w0=e=>{let t=(0,U.useContext)(Mo);t||A();let{contextId:n,isMovementAllowed:r}=t,o=(0,U.useRef)(null),a=(0,U.useRef)(null),{children:i,droppableId:s,type:l,mode:u,direction:f,ignoreContainerClipping:d,isDropDisabled:c,isCombineEnabled:m,snapshot:x,useClone:v,updateViewportMaxScroll:b,getContainerForClone:C}=e,h=j(()=>o.current,[]),O=j((B=null)=>{o.current=B},[]),w=j(()=>a.current,[]),S=j((B=null)=>{a.current=B},[]);y0({props:e,getDroppableRef:h,getPlaceholderRef:w});let D=j(()=>{r()&&b({maxScroll:ru()})},[r,b]);f0({droppableId:s,type:l,mode:u,direction:f,isDropDisabled:c,isCombineEnabled:m,ignoreContainerClipping:d,getDroppableRef:h});let P=re(()=>U.default.createElement(ii,{on:e.placeholder,shouldAnimate:e.shouldAnimatePlaceholder},({onClose:B,data:Y,animate:te})=>U.default.createElement(h0,{placeholder:Y,onClose:B,innerRef:S,animate:te,contextId:n,onTransitionEnd:D})),[n,D,e.placeholder,e.shouldAnimatePlaceholder,S]),N=re(()=>({innerRef:O,placeholder:P,droppableProps:{\"data-rfd-droppable-id\":s,\"data-rfd-droppable-context-id\":n}}),[n,s,P,O]),F=v?v.dragging.draggableId:null,V=re(()=>({droppableId:s,type:l,isUsingCloneFor:F}),[s,F,l]);function T(){if(!v)return null;let{dragging:B,render:Y}=v,te=U.default.createElement(wu,{draggableId:B.draggableId,index:B.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(pe,ue)=>Y(pe,ue,B));return fr.default.createPortal(te,C())}return U.default.createElement(Ei.Provider,{value:V},i(N,x),T())};function C0(){return document.body||A(),document.body}var Oc={mode:\"standard\",type:\"DEFAULT\",direction:\"vertical\",isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:C0},Eu=e=>{let t=y({},e),n;for(n in Oc)e[n]===void 0&&(t=E(y({},t),{[n]:Oc[n]}));return t},Za=(e,t)=>e===t.droppable.type,Sc=(e,t)=>t.draggables[e.draggable.id],O0=()=>{let e={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},t=E(y({},e),{shouldAnimatePlaceholder:!1}),n=Ie(a=>({draggableId:a.id,type:a.type,source:{index:a.index,droppableId:a.droppableId}})),r=Ie((a,i,s,l,u,f)=>{let d=u.descriptor.id;if(u.descriptor.droppableId===a){let x=f?{render:f,dragging:n(u.descriptor)}:null,v={isDraggingOver:s,draggingOverWith:s?d:null,draggingFromThisWith:d,isUsingPlaceholder:!0};return{placeholder:u.placeholder,shouldAnimatePlaceholder:!1,snapshot:v,useClone:x}}if(!i)return t;if(!l)return e;let m={isDraggingOver:s,draggingOverWith:d,draggingFromThisWith:null,isUsingPlaceholder:!0};return{placeholder:u.placeholder,shouldAnimatePlaceholder:!0,snapshot:m,useClone:null}});return(a,i)=>{let s=Eu(i),l=s.droppableId,u=s.type,f=!s.isDropDisabled,d=s.renderClone;if(ur(a)){let c=a.critical;if(!Za(u,c))return t;let m=Sc(c,a.dimensions),x=Re(a.impact)===l;return r(l,f,x,x,m,d)}if(a.phase===\"DROP_ANIMATING\"){let c=a.completed;if(!Za(u,c.critical))return t;let m=Sc(c.critical,a.dimensions);return r(l,f,vu(c.result)===l,Re(c.impact)===l,m,d)}if(a.phase===\"IDLE\"&&a.completed&&!a.shouldFlush){let c=a.completed;if(!Za(u,c.critical))return t;let m=Re(c.impact)===l,x=!!(c.impact.at&&c.impact.at.type===\"COMBINE\"),v=c.critical.droppable.id===l;return m?x?e:t:v?e:t}return t}},S0={updateViewportMaxScroll:Sx},Uo=Va(O0,S0,(e,t,n)=>y(y(y({},Eu(n)),e),t),{context:wi,areStatePropsEqual:xu})(w0);var{Title:E0,Text:ye}=M.Typography,{Panel:Wo}=M.Collapse,{Option:m2}=M.Select,xn=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function D0({config:e,updateConfig:t}){let n={name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",userId:\"\",deviceName:\"Hills Windows\",client:\"Hills Windows\",clientVersion:\"0.2.2\",deviceId:\"\",enabled:!0,cacheViews:!0,enablePlaybackReport:!0,timeout:15e3,retryCount:3,maxConcurrent:5,isJellyfin:!1},[r,o]=(0,I.useState)(()=>{let C=(e==null?void 0:e.emby)||[];return C.length===0?[E(y({},n),{name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",id:xn()}),E(y({},n),{name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",id:xn()})]:C.map(h=>E(y(y({},n),h),{id:h.id||xn(),enablePlaybackReport:h.enablePlaybackReport!==!1,isJellyfin:h.isJellyfin||!1}))}),[a,i]=(0,I.useState)([]),s=(0,I.useCallback)(C=>{if(!C.destination)return;let h=Array.from(r),[O]=h.splice(C.source.index,1);h.splice(C.destination.index,0,O),o(h)},[r]),l=(0,I.useCallback)(()=>\"\\u65B0\\u670D\\u52A1\\u5668 \".concat(r.length+1),[r.length]),u=(0,I.useCallback)(()=>{let C=xn(),h=E(y({},n),{name:l(),id:C,deviceId:\"\"});o([...r,h]),i(O=>[...O,C]),M.message.success(\"\\u5DF2\\u6DFB\\u52A0\\u65B0\\u670D\\u52A1\\u5668\")},[r,l]),f=(0,I.useCallback)(C=>{if(r.length<=1){M.message.warning(\"\\u81F3\\u5C11\\u9700\\u8981\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\");return}o(h=>h.filter(O=>O.id!==C)),i(h=>h.filter(O=>O!==C)),M.message.success(\"\\u670D\\u52A1\\u5668\\u5DF2\\u5220\\u9664\")},[r]),d=(0,I.useCallback)(C=>{let h=r.find(S=>S.id===C);if(!h)return;let O=xn(),w=E(y({},h),{name:\"\".concat(h.name,\" (\\u526F\\u672C)\"),id:O,deviceId:\"\"});o([...r,w]),i(S=>[...S,O]),M.message.success(\"\\u670D\\u52A1\\u5668\\u5DF2\\u590D\\u5236\")},[r]),c=(0,I.useCallback)((C,h,O)=>{o(w=>w.map(S=>S.id===C?E(y({},S),{[h]:O}):S))},[]),m=(0,I.useCallback)((C,h)=>{let O=r.findIndex(D=>D.id===C);if(h===\"up\"&&O===0||h===\"down\"&&O===r.length-1)return;let w=h===\"up\"?O-1:O+1,S=[...r];[S[O],S[w]]=[S[w],S[O]],o(S)},[r]),x=(0,I.useCallback)(C=>{i(h=>h.includes(C)?h.filter(O=>O!==C):[...h,C])},[]),v=(0,I.useCallback)(C=>C?!C.startsWith(\"http://\")&&!C.startsWith(\"https://\")?\"\\u670D\\u52A1\\u5668\\u5730\\u5740\\u5FC5\\u987B\\u4EE5 http:// \\u6216 https:// \\u5F00\\u5934\":null:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\\u4E0D\\u80FD\\u4E3A\\u7A7A\",[]),b=(0,I.useCallback)(C=>C?I.default.createElement(M.Tag,{color:\"green\",style:{fontSize:11,marginLeft:4}},I.default.createElement(zr,null),\" Jellyfin\"):I.default.createElement(M.Tag,{color:\"blue\",style:{fontSize:11,marginLeft:4}},\"Emby\"),[]);return(0,I.useEffect)(()=>{t&&t(E(y({},e),{emby:r}))},[r,e,t]),I.default.createElement(\"div\",{className:\"emby-config-container\"},I.default.createElement(\"div\",{style:{marginBottom:16,padding:\"16px 20px\",background:\"#fff\",borderRadius:8,boxShadow:\"0 2px 8px rgba(0,0,0,0.06)\",display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},I.default.createElement(E0,{level:4,style:{margin:0,display:\"flex\",alignItems:\"center\",gap:8}},I.default.createElement(Ln,null)),I.default.createElement(M.Tag,{color:\"blue\",style:{fontSize:14}},\"\\u5171 \",r.length,\" \\u4E2A\\u670D\\u52A1\\u5668\")),I.default.createElement(M.Space,null,I.default.createElement(M.Button,{type:\"primary\",onClick:u,icon:I.default.createElement(Ae,null),size:\"large\"},\"\\u65B0\\u589E\\u670D\\u52A1\\u5668\"))),I.default.createElement(zo,{onDragEnd:s},I.default.createElement(Uo,{droppableId:\"emby-servers\"},C=>I.default.createElement(\"div\",E(y({},C.droppableProps),{ref:C.innerRef}),r.map((h,O)=>{let w=a.includes(h.id),S=h.isJellyfin?\"#52c41a\":\"#1890ff\",D=v(h.server);return I.default.createElement($o,{key:h.id,draggableId:h.id,index:O},P=>I.default.createElement(\"div\",E(y({ref:P.innerRef},P.draggableProps),{style:{marginBottom:12}}),I.default.createElement(M.Card,{size:\"small\",style:y({borderRadius:8,borderLeft:\"4px solid \".concat(S)},D&&!w&&{borderColor:\"#ff4d4f\"})},I.default.createElement(\"div\",E(y({},P.dragHandleProps),{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",cursor:\"pointer\",paddingLeft:8,minHeight:48,gap:8},onClick:()=>x(h.id)}),I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12,flex:1,minWidth:0}},I.default.createElement(\"div\",{style:{flex:1,minWidth:0}},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:4,flexWrap:\"wrap\"}},I.default.createElement(ye,{strong:!0,style:{fontSize:14,wordBreak:\"break-word\"}},h.name||\"\\u672A\\u547D\\u540D\\u670D\\u52A1\\u5668\"),I.default.createElement(M.Tag,{color:\"default\",style:{fontSize:10,marginLeft:4}},\"ID: \",h.id.slice(0,8)),b(h.isJellyfin),!h.enabled&&I.default.createElement(M.Tag,{color:\"default\"},\"\\u5DF2\\u7981\\u7528\"),D&&!w&&I.default.createElement(M.Tag,{color:\"error\",style:{fontSize:11}},\"\\u914D\\u7F6E\\u9519\\u8BEF\")),I.default.createElement(\"div\",null,I.default.createElement(ye,{type:\"secondary\",style:{fontSize:12,wordBreak:\"break-all\"}},h.server||\"\\u672A\\u8BBE\\u7F6E\\u670D\\u52A1\\u5668\\u5730\\u5740\")))),I.default.createElement(M.Space,{onClick:N=>N.stopPropagation(),style:{flexShrink:0,alignSelf:\"flex-start\",marginTop:4}},I.default.createElement(M.Tooltip,{title:\"\\u590D\\u5236\\u670D\\u52A1\\u5668\"},I.default.createElement(M.Button,{type:\"text\",size:\"small\",icon:I.default.createElement(An,null),onClick:()=>d(h.id)})),I.default.createElement(M.Tooltip,{title:\"\\u4E0A\\u79FB\"},I.default.createElement(M.Button,{type:\"text\",size:\"small\",icon:I.default.createElement(pa,null),disabled:O===0,onClick:()=>m(h.id,\"up\")})),I.default.createElement(M.Tooltip,{title:\"\\u4E0B\\u79FB\"},I.default.createElement(M.Button,{type:\"text\",size:\"small\",icon:I.default.createElement(fa,null),disabled:O===r.length-1,onClick:()=>m(h.id,\"down\")})),r.length>1&&I.default.createElement(M.Popconfirm,{title:\"\\u786E\\u5B9A\\u8981\\u5220\\u9664\\u8FD9\\u4E2A\\u670D\\u52A1\\u5668\\u5417\\uFF1F\",onConfirm:()=>f(h.id),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",placement:\"topRight\"},I.default.createElement(M.Tooltip,{title:\"\\u5220\\u9664\"},I.default.createElement(M.Button,{type:\"text\",danger:!0,size:\"small\",icon:I.default.createElement(xt,null)}))))),w&&I.default.createElement(I.default.Fragment,null,I.default.createElement(M.Divider,{style:{margin:\"12px 0\"}}),I.default.createElement(M.Collapse,{defaultActiveKey:[\"basic\",\"playback\"],ghost:!0},I.default.createElement(Wo,{header:\"\\u57FA\\u7840\\u914D\\u7F6E\",key:\"basic\"},I.default.createElement(M.Row,{gutter:[16,12]},I.default.createElement(M.Col,{span:24},I.default.createElement(ye,{type:\"secondary\"},\"\\u5B9E\\u4F8B\\u540D\\u79F0\"),I.default.createElement(M.Input,{placeholder:\"\\u5982\\uFF1A\\u6211\\u7684\\u5916\\u7F51\\u670D\",value:h.name,onChange:N=>c(h.id,\"name\",N.target.value),status:h.name?\"\":\"warning\"})),I.default.createElement(M.Col,{span:24},I.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",marginBottom:4}},I.default.createElement(ye,{type:\"secondary\"},\"\\u670D\\u52A1\\u5668\\u5730\\u5740\"),D&&I.default.createElement(ye,{type:\"danger\",style:{fontSize:12}},D)),I.default.createElement(M.Input,{placeholder:\"http://example.com:8096\",value:h.server,onChange:N=>c(h.id,\"server\",N.target.value),status:D?\"error\":\"\"}),I.default.createElement(ye,{type:\"secondary\",style:{fontSize:12,marginTop:4}},\"\\u793A\\u4F8B: http://192.168.1.100:8096 \\u6216 https://emby.example.com\")),I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"\\u7528\\u6237\\u540D\"),I.default.createElement(M.Input,{placeholder:\"Username\",value:h.username,onChange:N=>c(h.id,\"username\",N.target.value)})),I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"\\u5BC6\\u7801\"),I.default.createElement(M.Input.Password,{placeholder:\"Password\",value:h.password,onChange:N=>c(h.id,\"password\",N.target.value)})),I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"Token\"),I.default.createElement(M.Input,{placeholder:\"\\u53EF\\u9009\\uFF0C\\u76F4\\u63A5\\u586B\\u5199Token\",value:h.token,onChange:N=>c(h.id,\"token\",N.target.value)})),I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"User ID\"),I.default.createElement(M.Input,{placeholder:\"\\u53EF\\u9009\\uFF0C\\u7528\\u6237ID\",value:h.userId,onChange:N=>c(h.id,\"userId\",N.target.value)})))),I.default.createElement(Wo,{header:\"\\u5BA2\\u6237\\u7AEF\\u4FE1\\u606F\",key:\"client\"},I.default.createElement(M.Row,{gutter:[16,12]},I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"\\u8BBE\\u5907\\u540D\\u79F0\"),I.default.createElement(M.Input,{placeholder:\"\\u5982: Hills Windows\",value:h.deviceName,onChange:N=>c(h.id,\"deviceName\",N.target.value)})),I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"\\u5BA2\\u6237\\u7AEF\\u7C7B\\u578B\"),I.default.createElement(M.Input,{placeholder:\"\\u5982: Hills Windows\",value:h.client,onChange:N=>c(h.id,\"client\",N.target.value)})),I.default.createElement(M.Col,{span:12},I.default.createElement(ye,{type:\"secondary\"},\"\\u5BA2\\u6237\\u7AEF\\u7248\\u672C\"),I.default.createElement(M.Input,{placeholder:\"\\u5982: 4.8.0.50\",value:h.clientVersion,onChange:N=>c(h.id,\"clientVersion\",N.target.value)})),I.default.createElement(M.Col,{span:12},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\"}},I.default.createElement(ye,{type:\"secondary\"},\"\\u8BBE\\u5907ID\"),I.default.createElement(M.Button,{type:\"link\",size:\"small\",onClick:()=>c(h.id,\"deviceId\",xn())},\"\\u91CD\\u65B0\\u751F\\u6210\")),I.default.createElement(M.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u751F\\u6210\",value:h.deviceId,onChange:N=>c(h.id,\"deviceId\",N.target.value)}),I.default.createElement(ye,{type:\"secondary\",style:{fontSize:12,marginTop:4}},\"\\u6807\\u51C6UUID\\u683C\\u5F0F\\uFF0C\\u5982: 550e8400-e29b-41d4-a716-446655440000\")))),I.default.createElement(Wo,{header:\"\\u529F\\u80FD\\u5F00\\u5173\",key:\"features\"},I.default.createElement(M.Row,{gutter:[16,12]},I.default.createElement(M.Col,{span:8},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},I.default.createElement(M.Switch,{size:\"small\",checked:h.enabled,onChange:N=>c(h.id,\"enabled\",N)}),I.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u542F\\u7528\\u72B6\\u6001\"))),I.default.createElement(M.Col,{span:8},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},I.default.createElement(M.Switch,{size:\"small\",checked:h.cacheViews,onChange:N=>c(h.id,\"cacheViews\",N)}),I.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u7F13\\u5B58\\u89C6\\u56FE\"))),I.default.createElement(M.Col,{span:8},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},I.default.createElement(M.Switch,{size:\"small\",checked:h.enablePlaybackReport,onChange:N=>c(h.id,\"enablePlaybackReport\",N)}),I.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u64AD\\u653E\\u8FDB\\u5EA6\\u540C\\u6B65\")))),I.default.createElement(M.Row,{gutter:[16,12]},I.default.createElement(M.Col,{span:24},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:\"8px 12px\",background:\"#f6ffed\",borderRadius:4,border:\"1px solid #b7eb8f\"}},I.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},I.default.createElement(zr,{style:{marginRight:8,color:\"#52c41a\"}}),I.default.createElement(\"div\",null,I.default.createElement(ye,{strong:!0},\"\\u670D\\u52A1\\u5668\\u7C7B\\u578B\"),I.default.createElement(\"div\",{style:{fontSize:12,color:\"#666\"}},h.isJellyfin?\"Jellyfin \\u662F\\u4E00\\u4E2A\\u5F00\\u6E90\\u7684\\u5A92\\u4F53\\u670D\\u52A1\\u5668\\uFF0C\\u4E0E Emby \\u517C\\u5BB9\":\"Emby \\u662F\\u4E00\\u4E2A\\u5A92\\u4F53\\u670D\\u52A1\\u5668\\uFF0C\\u652F\\u6301\\u672C\\u5730\\u548C\\u8FDC\\u7A0B\\u6D41\\u5A92\\u4F53\"))),I.default.createElement(M.Switch,{checked:h.isJellyfin,onChange:N=>c(h.id,\"isJellyfin\",N),checkedChildren:\"Jellyfin\",unCheckedChildren:\"Emby\"}))))),I.default.createElement(Wo,{header:\"\\u8BF7\\u6C42\\u914D\\u7F6E\",key:\"request\"},I.default.createElement(M.Row,{gutter:[16,12]},I.default.createElement(M.Col,{span:8},I.default.createElement(ye,{type:\"secondary\"},\"\\u8D85\\u65F6\\u65F6\\u95F4(ms)\"),I.default.createElement(M.InputNumber,{style:{width:\"100%\"},min:1e3,max:6e4,step:1e3,value:h.timeout,onChange:N=>c(h.id,\"timeout\",N)})),I.default.createElement(M.Col,{span:8},I.default.createElement(ye,{type:\"secondary\"},\"\\u91CD\\u8BD5\\u6B21\\u6570\"),I.default.createElement(M.InputNumber,{style:{width:\"100%\"},min:0,max:10,value:h.retryCount,onChange:N=>c(h.id,\"retryCount\",N)})),I.default.createElement(M.Col,{span:8},I.default.createElement(ye,{type:\"secondary\"},\"\\u6700\\u5927\\u5E76\\u53D1\\u6570\"),I.default.createElement(M.InputNumber,{style:{width:\"100%\"},min:1,max:20,value:h.maxConcurrent,onChange:N=>c(h.id,\"maxConcurrent\",N)})))))))))}),C.placeholder))),r.length>0&&I.default.createElement(\"div\",{style:{marginTop:20,padding:\"16px\",background:\"#fafafa\",borderRadius:8}},I.default.createElement(ye,{type:\"secondary\",style:{fontSize:12}},\"\\u63D0\\u793A\\uFF1A\\u914D\\u7F6E\\u4FEE\\u6539\\u540E\\u8BF7\\u624B\\u52A8\\u4FDD\\u5B58\")))}var Du=I.default.memo(D0);var $=W(J(),1),H=W(et(),1);var Go=W(Tt(),1);var{Text:Ke}=H.Typography,{TabPane:Iu}=H.Tabs,yn=Go.default.create({baseURL:\"/website\"});yn.interceptors.response.use(e=>{if(e.data.code!==0)throw H.message.error(e.data.message),new Error(e.data.message);return e.data.data},e=>Promise.reject(e));var vn=[\"\\u4E00\\u53E3\\u6C14\\u6C99\\u96D5\\u52A8\\u6F2B\",\"\\u7EAA\\u5F55\\u7247\\u8D85\\u6E05\",\"\\u6F14\\u5531\\u4F1A\\u8D85\\u6E05\",\"\\u7F8E\\u98DF\\u8D85\\u6E05\",\"\\u98DF\\u8C31\",\"\\u4F53\\u80B2\\u8D85\\u6E05\",\"\\u7403\\u661F\",\"\\u65C5\\u6E38\",\"\\u98CE\\u666F4K\",\"\\u8BF4\\u6848\",\"\\u77E5\\u540DUP\\u4E3B\",\"\\u63A2\\u7D22\\u53D1\\u73B0\\u8D85\\u6E05\",\"\\u9B3C\\u755C\",\"\\u641E\\u7B11\\u8D85\\u6E05\",\"\\u513F\\u7AE5\\u8D85\\u6E05\",\"\\u52A8\\u7269\\u4E16\\u754C\\u8D85\\u6E05\",\"\\u76F8\\u58F0\\u5C0F\\u54C1\\u8D85\\u6E05\",\"\\u620F\\u66F2\",\"\\u89E3\\u8BF4\",\"\\u6F14\\u8BB2\",\"\\u5C0F\\u59D0\\u59D0\\u8D85\\u6E05\",\"\\u8352\\u91CE\\u6C42\\u751F\\u8D85\\u6E05\",\"\\u5065\\u8EAB\",\"\\u5E15\\u6885\\u62C9\",\"\\u592A\\u6781\\u62F3\",\"\\u5E7F\\u573A\\u821E\",\"\\u821E\\u8E48\",\"\\u97F3\\u4E50\",\"\\u6B4C\\u66F2\",\"MV4K\",\"\\u821E\\u66F2\\u8D85\\u6E05\",\"4K\",\"\\u7535\\u5F71\",\"\\u7535\\u89C6\\u5267\",\"\\u767D\\u566A\\u97F3\\u8D85\\u6E05\",\"\\u8003\\u516C\\u8003\\u8BC1\",\"\\u5E73\\u9762\\u8BBE\\u8BA1\\u6559\\u5B66\",\"\\u8F6F\\u4EF6\\u6559\\u7A0B\",\"Windows\",\"\\u9009\\u7F8E\",\"\\u6A21\\u7279\",\"\\u6CF3\\u88C5\\u79C0\",\"\\u5185\\u8863\\u79C0\",\"4K\\u97F3\\u4E50\",\"MV\",\"4K MV\",\"\\u5973\\u56E2\",\"\\u76F4\\u64AD\\u5E73\\u53F0\",\"\\u6F14\\u5531\\u4F1A\",\"\\u8BFE\\u7A0B\\u8F85\\u5BFC\",\"\\u98CE\\u666F\",\"\\u7F8E\\u98DF\",\"\\u76F8\\u58F0\\u5C0F\\u54C1\",\"\\u52A8\\u7269\\u4E16\\u754C\",\"\\u513F\\u7AE5\\u5C11\\u513F\"];function I0(){let[e]=H.Form.useForm(),[t,n]=(0,$.useState)(!1),[r,o]=(0,$.useState)(!1),[a,i]=(0,$.useState)({hasCookie:!1,cookieLength:0,lastUpdate:\"\\u672A\\u77E5\"}),[s,l]=(0,$.useState)(null),[u,f]=(0,$.useState)(null),[d,c]=(0,$.useState)(\"basic\"),[m,x]=(0,$.useState)([]),v=async()=>{var T;try{let B=await yn.get(\"/bilibili/config\"),Y=\"\",te=!1;if(B.classes_all&&B.classes_all.trim())try{let ue=JSON.parse(B.classes_all.trim());if(Array.isArray(ue)){if(typeof ue[0]==\"string\")x(ue),Y=JSON.stringify(ue,null,2);else{let ge=ue.filter(_e=>_e&&_e.type_id).map(_e=>_e.type_id);x(ge),Y=JSON.stringify(ge,null,2)}te=!0}}catch(ue){console.warn(\"\\u89E3\\u6790classes_all\\u5931\\u8D25:\",ue)}if(!te){console.log(\"\\u6570\\u636E\\u5E93\\u4E2D\\u6CA1\\u6709\\u5206\\u7C7B\\u6570\\u636E\\uFF0C\\u4F7F\\u7528\\u5E76\\u4FDD\\u5B58\\u9ED8\\u8BA4\\u5206\\u7C7B\"),x(vn),Y=JSON.stringify(vn,null,2);try{let ge={cookie:e.getFieldsValue().cookie||B.cookie||\"\",classes_all:JSON.stringify(vn)};await yn.put(\"/bilibili/config\",ge),console.log(\"\\u9ED8\\u8BA4\\u5206\\u7C7B\\u5DF2\\u4FDD\\u5B58\\u5230\\u6570\\u636E\\u5E93\")}catch(ue){console.error(\"\\u4FDD\\u5B58\\u9ED8\\u8BA4\\u5206\\u7C7B\\u5931\\u8D25:\",ue)}}let pe={cookie:B.cookie||\"\",classes_all:Y};e.getFieldValue(\"cookie\")||e.setFieldsValue(pe),i({hasCookie:!!(B.cookie&&B.cookie.length>0),cookieLength:((T=B.cookie)==null?void 0:T.length)||0,lastUpdate:new Date().toLocaleString()});try{let ue=await Go.default.get(\"/spider/bili_all/3/user-info\");ue.data.code===0&&ue.data.data?(l(ue.data.data),f(null)):l(null)}catch(ue){l(null)}}catch(B){console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25:\",B),H.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"),x(vn)}},b=async()=>{var T,B;try{o(!0),f(null);let{cookie:Y}=e.getFieldsValue([\"cookie\"]);if(!Y||Y.trim().length<50){H.message.warning(\"\\u8BF7\\u8F93\\u5165\\u5B8C\\u6574\\u7684Cookie\");return}let te=await Go.default.post(\"/spider/bili_all/3/validate-cookie\",{cookie:Y.trim()});te.data.code===0?(f(te.data.data),H.message.success(\"Cookie\\u9A8C\\u8BC1\\u6210\\u529F\\uFF01\")):H.message.warning(te.data.message||\"Cookie\\u65E0\\u6548\\u6216\\u5DF2\\u8FC7\\u671F\")}catch(Y){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",Y),H.message.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25: \"+(((B=(T=Y.response)==null?void 0:T.data)==null?void 0:B.message)||Y.message))}finally{o(!1)}},C=async()=>{var T;try{n(!0);let Y={cookie:(await e.validateFields()).cookie||\"\",classes_all:e.getFieldValue(\"classes_all\")||JSON.stringify(m)},te=await yn.put(\"/bilibili/config\",Y);(T=te.testResult)!=null&&T.success?H.message.success(\"Cookie\\u4FDD\\u5B58\\u6210\\u529F\\uFF0C\\u5DF2\\u751F\\u6548\"):te.testResult?H.message.warning(\"Cookie\\u5DF2\\u4FDD\\u5B58\\uFF0C\\u4F46\\u53EF\\u80FD\\u65E0\\u6548: \"+te.testResult.message):H.message.success(\"Cookie\\u4FDD\\u5B58\\u6210\\u529F\"),f(null),await v()}catch(B){H.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+(B.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{n(!1)}},h=async()=>{try{n(!0);let T=JSON.stringify(m.filter(Y=>Y&&Y.trim()!==\"\")),B={cookie:e.getFieldValue(\"cookie\")||\"\",classes_all:T};await yn.put(\"/bilibili/config\",B),H.message.success(\"\\u5206\\u7C7B\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),e.setFieldsValue({classes_all:T}),await v()}catch(T){H.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+(T.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{n(!1)}},O=async()=>{try{await yn.delete(\"/bilibili/config\"),H.message.success(\"\\u914D\\u7F6E\\u5DF2\\u6E05\\u9664\"),f(null),x(vn),await v()}catch(T){H.message.error(\"\\u6E05\\u9664\\u5931\\u8D25: \"+(T.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}},w=()=>{let T=[...m,\"\\u65B0\\u5206\\u7C7B\"];x(T)},S=(T,B)=>{let Y=[...m];Y[T]=B,x(Y)},D=T=>{let B=[...m];B.splice(T,1),x(B)},P=()=>{x([]),H.message.success(\"\\u5DF2\\u6E05\\u7A7A\\u6240\\u6709\\u5206\\u7C7B\")},N=T=>{if(!T.destination)return;let B=Array.from(m),[Y]=B.splice(T.source.index,1);B.splice(T.destination.index,0,Y),x(B)},F=()=>{x(vn),H.message.success(\"\\u5DF2\\u52A0\\u8F7D\\u9ED8\\u8BA4\\u5206\\u7C7B\")};(0,$.useEffect)(()=>{v()},[]);let V=s||u;return $.default.createElement(H.Card,null,$.default.createElement(H.Tabs,{activeKey:d,onChange:c,tabBarStyle:{marginBottom:16,whiteSpace:\"nowrap\",overflowX:\"auto\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"},tabBarGutter:8},$.default.createElement(Iu,{tab:\"\\u57FA\\u7840\\u914D\\u7F6E\",key:\"basic\"},$.default.createElement(H.Row,{gutter:24},$.default.createElement(H.Col,{span:24},$.default.createElement(H.Card,{size:\"small\",title:\"\\u5F53\\u524D\\u767B\\u5F55\\u4FE1\\u606F\",style:{marginBottom:16}},V?$.default.createElement(H.Row,{gutter:16,align:\"middle\"},$.default.createElement(H.Col,null,$.default.createElement(H.Avatar,{src:V.face,size:64})),$.default.createElement(H.Col,null,$.default.createElement(Ke,{strong:!0,style:{fontSize:16}},V.nickname),$.default.createElement(\"br\",null),$.default.createElement(Ke,{type:\"secondary\"},\"\\u7B49\\u7EA7 LV\",V.level||\"?\"),$.default.createElement(\"br\",null),$.default.createElement(Ke,{type:\"success\",strong:!0},V.vip),u&&!s&&$.default.createElement(Ke,{type:\"warning\",style:{marginLeft:8}},\"(\\u4EC5\\u6D4B\\u8BD5\\uFF0C\\u672A\\u4FDD\\u5B58)\"))):$.default.createElement(Ke,{type:\"warning\"},\"\\u672A\\u767B\\u5F55\\u6216Cookie\\u65E0\\u6548\")),$.default.createElement(H.Card,{size:\"small\",style:{marginBottom:16}},$.default.createElement(H.Row,{gutter:16},$.default.createElement(H.Col,{span:8},$.default.createElement(Ke,{strong:!0},\"Cookie\\u72B6\\u6001: \"),$.default.createElement(Ke,{type:a.hasCookie?\"success\":\"warning\"},a.hasCookie?\"\\u5DF2\\u8BBE\\u7F6E\":\"\\u672A\\u8BBE\\u7F6E\")),$.default.createElement(H.Col,{span:8},$.default.createElement(Ke,{strong:!0},\"\\u957F\\u5EA6: \"),$.default.createElement(Ke,null,a.cookieLength,\" \\u5B57\\u7B26\")),$.default.createElement(H.Col,{span:8},$.default.createElement(Ke,{strong:!0},\"\\u6700\\u540E\\u66F4\\u65B0: \"),$.default.createElement(Ke,null,a.lastUpdate)))),$.default.createElement(H.Form,{form:e,layout:\"vertical\"},$.default.createElement(H.Form.Item,{label:\"\\u7528\\u6237 Cookie\",name:\"cookie\",rules:[{validator:(T,B)=>B&&B.trim().length>0&&B.trim().length<50?Promise.reject(new Error(\"Cookie\\u592A\\u77ED\\uFF0C\\u8BF7\\u68C0\\u67E5\\u683C\\u5F0F\")):Promise.resolve()}]},$.default.createElement(H.Input.TextArea,{rows:4,placeholder:\"SESSDATA=xxx; bili_jct=xxx; DedeUserID=xxx; ...\"})),$.default.createElement(H.Form.Item,null,$.default.createElement(H.Space,null,$.default.createElement(H.Button,{onClick:b,loading:r,type:\"default\"},\"\\u9A8C\\u8BC1 Cookie\"),$.default.createElement(H.Button,{onClick:O,danger:!0},\"\\u6E05\\u9664\\u6240\\u6709\\u914D\\u7F6E\"))),$.default.createElement(H.Form.Item,null,$.default.createElement(H.Button,{type:\"primary\",onClick:C,loading:t,block:!0,size:\"large\"},\"\\u4FDD\\u5B58\\u57FA\\u7840\\u914D\\u7F6E\"))),$.default.createElement(H.Input.TextArea,{name:\"classes_all\",hidden:!0})))),$.default.createElement(Iu,{tab:\"\\u5206\\u7C7B\\u914D\\u7F6E\",key:\"classes\"},$.default.createElement(H.Row,{gutter:24},$.default.createElement(H.Col,{span:24},$.default.createElement(\"div\",{style:{marginBottom:16}},$.default.createElement(Ke,{type:\"secondary\"},\"\\u5206\\u7C7B\\u5C06\\u4F5C\\u4E3A\\u641C\\u7D22\\u5173\\u952E\\u8BCD\\u4F7F\\u7528\\u3002\\u62D6\\u52A8\\u5206\\u7C7B\\u53EF\\u4EE5\\u91CD\\u65B0\\u6392\\u5E8F\\u3002\")),$.default.createElement(zo,{onDragEnd:N},$.default.createElement(Uo,{droppableId:\"classes\"},T=>$.default.createElement(\"div\",E(y({},T.droppableProps),{ref:T.innerRef,style:{minHeight:200}}),m.map((B,Y)=>$.default.createElement($o,{key:Y,draggableId:Y.toString(),index:Y},te=>$.default.createElement(\"div\",E(y(y({ref:te.innerRef},te.draggableProps),te.dragHandleProps),{style:E(y({},te.draggableProps.style),{marginBottom:8,padding:8,border:\"1px solid #d9d9d9\",borderRadius:4,backgroundColor:\"#fff\",display:\"flex\",alignItems:\"center\"})}),$.default.createElement(\"div\",{style:{marginRight:8,cursor:\"move\"}},$.default.createElement(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},$.default.createElement(\"path\",{d:\"M8 7H16M8 12H16M8 17H16\",stroke:\"#999\",strokeWidth:\"2\",strokeLinecap:\"round\"}))),$.default.createElement(H.Input,{value:B,onChange:pe=>S(Y,pe.target.value),style:{flex:1},placeholder:\"\\u8F93\\u5165\\u5206\\u7C7B\\u540D\\u79F0\"}),$.default.createElement(H.Button,{danger:!0,onClick:()=>D(Y),style:{marginLeft:8}},\"\\u5220\\u9664\")))),T.placeholder))),m.length===0&&$.default.createElement(Ke,{type:\"secondary\",style:{display:\"block\",textAlign:\"center\",padding:\"20px\"}},'\\u6682\\u65E0\\u5206\\u7C7B\\uFF0C\\u70B9\\u51FB\"\\u6DFB\\u52A0\\u5206\\u7C7B\"\\u6309\\u94AE\\u6DFB\\u52A0'),$.default.createElement(\"div\",{style:{marginTop:16,display:\"flex\",justifyContent:\"space-between\"}},$.default.createElement(H.Button,{type:\"dashed\",onClick:w},\"\\u6DFB\\u52A0\\u5206\\u7C7B\"),$.default.createElement(H.Button,{type:\"dashed\",onClick:F},\"\\u52A0\\u8F7D\\u9ED8\\u8BA4\\u5206\\u7C7B\"),$.default.createElement(H.Button,{danger:!0,onClick:P},\"\\u6E05\\u7A7A\\u5206\\u7C7B\")),$.default.createElement(\"div\",{style:{marginTop:24}},$.default.createElement(H.Button,{type:\"primary\",onClick:h,loading:t,block:!0,size:\"large\"},\"\\u4FDD\\u5B58\\u5206\\u7C7B\\u914D\\u7F6E\")))))))}var Tu=I0;var _=W(J(),1),z=W(et(),1);var df=W(Tt(),1),cf=W(sf(),1);var{Text:Ho,Title:B2}=z.Typography,h1=e=>{let t=df.default.create({baseURL:e});return t.interceptors.response.use(n=>{if(n.data.code!==0)throw z.message.error(n.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),new Error(n.data.message);return n.data.data},n=>{var r,o;return z.message.error(((o=(r=n.response)==null?void 0:r.data)==null?void 0:o.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),Promise.reject(n)}),t},Ai=h1(\"/website/live\"),lf={name:\"\\u65B0\\u76F4\\u64AD\\u6E90_\".concat(Date.now().toString().slice(-4)),url:\"\",ua:\"okhttp/3.15\",enabled:!0,logoUrl:\"\"},uf=_.default.memo(({field:e,remove:t,fieldsCount:n,onCopy:r,index:o})=>{let m=e,{key:a,name:i,fieldKey:s}=m,l=It(m,[\"key\",\"name\",\"fieldKey\"]),[u,f]=(0,_.useState)(!1),d=z.Form.useFormInstance(),c=z.Form.useWatch([\"liveSources\",i],d)||{};return _.default.createElement(z.Card,{size:\"small\",style:{marginBottom:12,borderLeft:\"4px solid #1890ff\",borderRadius:8},bodyStyle:{padding:16}},_.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",marginBottom:u?12:0,cursor:\"pointer\",gap:8},onClick:()=>f(!u)},_.default.createElement(\"div\",{style:{flex:1,minWidth:0}},_.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:4,flexWrap:\"wrap\"}},_.default.createElement(Ho,{strong:!0,style:{color:\"#1890ff\",fontSize:14}},c.name||\"\\u76F4\\u64AD\\u6E90 #\".concat(o+1)),c.enabled!==!1&&_.default.createElement(z.Tag,{color:\"green\",style:{fontSize:10}},\"\\u5DF2\\u542F\\u7528\"),c.enabled===!1&&_.default.createElement(z.Tag,{color:\"default\",style:{fontSize:10}},\"\\u5DF2\\u7981\\u7528\")),_.default.createElement(\"div\",null,_.default.createElement(Ho,{type:\"secondary\",style:{fontSize:12,wordBreak:\"break-all\"}},c.url||\"\\u672A\\u8BBE\\u7F6E\\u5730\\u5740\"))),_.default.createElement(z.Space,{onClick:x=>x.stopPropagation(),style:{flexShrink:0,alignSelf:\"flex-start\"}},_.default.createElement(z.Tooltip,{title:\"\\u590D\\u5236\\u914D\\u7F6E\"},_.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:_.default.createElement(An,null),onClick:()=>r(e.name),style:{minWidth:36,minHeight:36}})),n>1&&_.default.createElement(z.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664\\u8BE5\\u914D\\u7F6E\\u5417\\uFF1F\",onConfirm:()=>t(i),okText:\"\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",placement:\"topRight\"},_.default.createElement(z.Button,{type:\"text\",danger:!0,size:\"small\",icon:_.default.createElement(xt,null),style:{minWidth:36,minHeight:36}})))),u&&_.default.createElement(_.default.Fragment,null,_.default.createElement(\"div\",{style:{height:12}}),_.default.createElement(z.Row,{gutter:[16,12]},_.default.createElement(z.Col,{xs:24,md:12},_.default.createElement(z.Form.Item,E(y({},l),{name:[i,\"name\"],label:_.default.createElement(z.Space,{size:\"small\"},_.default.createElement(\"span\",null,\"\\u76F4\\u64AD\\u6E90\\u540D\\u79F0\"),_.default.createElement(z.Tooltip,{title:\"\\u5FC5\\u586B\\uFF0C\\u7528\\u4E8E\\u6807\\u8BC6\\u76F4\\u64AD\\u6E90\"},_.default.createElement(Nt,{style:{color:\"#999\",fontSize:\"12px\"}}))),rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"},{max:50,message:\"\\u540D\\u79F0\\u4E0D\\u80FD\\u8D85\\u8FC750\\u4E2A\\u5B57\\u7B26\"}]}),_.default.createElement(z.Input,{placeholder:\"\\u5982\\uFF1A\\u80A5\\u7F8A\\u76F4\\u64AD\",maxLength:50,showCount:!0}))),_.default.createElement(z.Col,{xs:24,md:12},_.default.createElement(z.Form.Item,E(y({},l),{name:[i,\"url\"],label:_.default.createElement(z.Space,{size:\"small\"},_.default.createElement(\"span\",null,\"\\u76F4\\u64AD\\u6E90\\u5730\\u5740\"),_.default.createElement(z.Tooltip,{title:\"\\u5FC5\\u586B\\uFF0C\\u652F\\u6301\\u6DFB\\u52A0\\u81EA\\u5B9A\\u4E49\\u8BF7\\u6C42\\u5934\\uFF0C\\u5982\\uFF1Ahttp://example.com/live.m3u|Referer=xxx&Origin=xxx\"},_.default.createElement(Nt,{style:{color:\"#999\",fontSize:\"12px\"}}))),rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5730\\u5740\"},{type:\"url\",message:\"\\u8BF7\\u8F93\\u5165\\u6709\\u6548\\u7684URL\\u5730\\u5740\"}]}),_.default.createElement(z.Input,{placeholder:\"https://xxx.com/live.m3u\"})))),_.default.createElement(z.Row,{gutter:[16,12]},_.default.createElement(z.Col,{xs:24,md:12},_.default.createElement(z.Form.Item,E(y({},l),{name:[i,\"ua\"],label:\"User-Agent\",initialValue:\"okhttp/3.15\"}),_.default.createElement(z.Input,{placeholder:\"\\u4E0D\\u586B\\u9ED8\\u8BA4\\u4E3A: okhttp/3.15\",suffix:_.default.createElement(z.Tooltip,{title:\"\\u9ED8\\u8BA4\\u503C\\uFF1Aokhttp/3.15\"},_.default.createElement(Nt,{style:{color:\"#999\"}}))}))),_.default.createElement(z.Col,{xs:24,md:12},_.default.createElement(z.Form.Item,E(y({},l),{name:[i,\"logoUrl\"],label:_.default.createElement(z.Space,{size:\"small\"},_.default.createElement(\"span\",null,\"Logo\\u5730\\u5740\"),_.default.createElement(z.Tooltip,{title:\"\\u7559\\u7A7A\\u5C06\\u4F7F\\u7528\\u9ED8\\u8BA4logo\\uFF0C\\u5EFA\\u8BAE\\u4F7F\\u7528100\\xD7100\\u50CF\\u7D20\\u7684\\u56FE\\u7247\"},_.default.createElement(Nt,{style:{color:\"#999\",fontSize:\"12px\"}})))}),_.default.createElement(z.Input,{placeholder:\"https://xxx.com/logo.png\",suffix:_.default.createElement(z.Tooltip,{title:\"\\u5EFA\\u8BAE\\u4F7F\\u7528HTTPS\\u94FE\\u63A5\"},_.default.createElement(Nt,{style:{color:\"#999\"}}))})))),_.default.createElement(z.Row,{justify:\"space-between\",align:\"middle\"},_.default.createElement(z.Col,null,_.default.createElement(z.Form.Item,E(y({},l),{name:[i,\"enabled\"],valuePropName:\"checked\",initialValue:!0,label:\"\\u72B6\\u6001\",style:{marginBottom:0}}),_.default.createElement(z.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"default\"}))))))});uf.displayName=\"LiveSourceItem\";function b1(){let[e]=z.Form.useForm(),[t,n]=(0,_.useState)(!1),[r,o]=(0,_.useState)(!1),a=(0,_.useCallback)(async()=>{try{n(!0);let f=await Ai.get(\"/config\"),d=Array.isArray(f)?f.map(c=>E(y({},c),{ua:c.ua||\"okhttp/3.15\",logoUrl:c.logoUrl||\"\"})):[];e.setFieldsValue({liveSources:d})}catch(f){console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25:\",f),z.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{n(!1)}},[e]),i=(0,_.useCallback)((0,cf.default)(async f=>{try{o(!0);let d=(f.liveSources||[]).filter(c=>{var m,x;return((m=c.name)==null?void 0:m.trim())&&((x=c.url)==null?void 0:x.trim())}).map(c=>E(y({},c),{ua:c.ua||\"okhttp/3.15\",logoUrl:c.logoUrl||\"\"}));if(d.length===0){z.message.warning(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u6709\\u6548\\u7684\\u76F4\\u64AD\\u6E90\");return}await Ai.put(\"/config\",d),z.message.success(\"\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),await a()}catch(d){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",d),z.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\")}finally{o(!1)}},300),[a]),s=async()=>{try{let f=await e.validateFields();await i(f)}catch(f){console.error(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u5931\\u8D25:\",f)}},l=async()=>{try{await Ai.delete(\"/config\"),z.message.success(\"\\u6240\\u6709\\u914D\\u7F6E\\u5DF2\\u6E05\\u7A7A\"),await a()}catch(f){console.error(\"\\u6E05\\u9664\\u914D\\u7F6E\\u5931\\u8D25:\",f),z.message.error(\"\\u6E05\\u9664\\u914D\\u7F6E\\u5931\\u8D25\")}},u=(0,_.useCallback)(f=>{let d=e.getFieldValue(\"liveSources\")||[],c=d[f];if(c){let m=E(y({},c),{name:\"\".concat(c.name,\"_\\u526F\\u672C\").concat(Date.now().toString().slice(-4))}),x=[...d,m];e.setFieldsValue({liveSources:x}),z.message.success(\"\\u914D\\u7F6E\\u9879\\u5DF2\\u590D\\u5236\")}},[e]);return(0,_.useEffect)(()=>{a()},[a]),_.default.createElement(z.Spin,{spinning:t,tip:\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u4E2D...\"},_.default.createElement(z.Card,{title:\"\\u76F4\\u64AD\\u6E90\\u914D\\u7F6E\",extra:_.default.createElement(Ho,{type:\"secondary\"},\"\\u6700\\u540E\\u66F4\\u65B0: \",new Date().toLocaleDateString()),style:{borderRadius:8},headStyle:{borderBottom:\"1px solid #f0f0f0\"}},_.default.createElement(z.Alert,{message:null,description:_.default.createElement(\"div\",{style:{fontSize:\"13px\"}},_.default.createElement(\"p\",null,\"1. UA\\u7559\\u7A7A\\u65F6\\uFF0C\\u5C06\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C\\uFF1Aokhttp/3.15\"),_.default.createElement(\"p\",null,\"2. \\u53EF\\u5728URL\\u540E\\u6DFB\\u52A0\\u81EA\\u5B9A\\u4E49\\u8BF7\\u6C42\\u5934\\uFF0C\\u683C\\u5F0F\\uFF1Ahttp://example.com/live.m3u|Referer=xxx&Origin=xxx\")),type:\"info\",showIcon:!0,icon:_.default.createElement(Nt,null),style:{marginBottom:20}}),_.default.createElement(z.Form,{form:e,layout:\"vertical\",initialValues:{liveSources:[]},size:\"middle\"},_.default.createElement(z.Form.List,{name:\"liveSources\"},(f,{add:d,remove:c})=>_.default.createElement(_.default.Fragment,null,_.default.createElement(\"div\",{style:{marginBottom:16,display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},_.default.createElement(Ho,{strong:!0},\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868 (\",f.length,\")\"),_.default.createElement(z.Space,null,_.default.createElement(z.Button,{type:\"dashed\",onClick:()=>d(lf),icon:_.default.createElement(Ae,null),size:\"middle\"},\"\\u65B0\\u589E\\u76F4\\u64AD\\u6E90\"),f.length>0&&_.default.createElement(z.Popconfirm,{title:\"\\u786E\\u5B9A\\u6E05\\u7A7A\\u6240\\u6709\\u76F4\\u64AD\\u6E90\\u5417\\uFF1F\",onConfirm:l,okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\"},_.default.createElement(z.Button,{danger:!0,size:\"middle\"},\"\\u6E05\\u7A7A\\u5168\\u90E8\")))),f.length===0?_.default.createElement(z.Empty,{description:\"\\u6682\\u65E0\\u76F4\\u64AD\\u6E90\\u914D\\u7F6E\",image:z.Empty.PRESENTED_IMAGE_SIMPLE,style:{margin:\"40px 0\"}},_.default.createElement(z.Button,{type:\"primary\",onClick:()=>d(lf),icon:_.default.createElement(Ae,null)},\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\")):_.default.createElement(\"div\",{style:{paddingRight:8}},f.map((m,x)=>_.default.createElement(uf,{key:m.key,field:m,remove:c,fieldsCount:f.length,onCopy:u,index:x}))),f.length>0&&_.default.createElement(\"div\",{style:{background:\"#fff\",padding:\"16px 0\",borderTop:\"1px solid #f0f0f0\",marginTop:16}},_.default.createElement(z.Space,{size:\"middle\"},_.default.createElement(z.Button,{type:\"primary\",icon:_.default.createElement(ha,null),onClick:s,loading:r,size:\"large\",style:{minWidth:120}},r?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),_.default.createElement(z.Button,{onClick:()=>window.location.reload(),size:\"large\"},\"\\u5237\\u65B0\\u9875\\u9762\"))))))))}var ff=_.default.memo(b1);var L=W(J(),1),q=W(et(),1);var{Title:U2,Text:x1,Paragraph:W2}=q.Typography,{useToken:v1}=q.theme,Fi=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function y1(){let[e]=q.Form.useForm(),[t,n]=(0,L.useState)({}),[r,o]=(0,L.useState)(!1),[a,i]=(0,L.useState)({}),{token:s}=v1(),l=\"/website/alist/config\",u=async()=>{o(!0);try{let x=await(await fetch(l)).json();if(x.code===0&&x.data){let v=(Array.isArray(x.data)?x.data:[]).map(h=>E(y({},h),{id:h.id||Fi()}));e.setFieldsValue({servers:v});let b={},C={};v.forEach(h=>{b[h.id]=!1,C[h.id]=h.token?\"token\":\"password\"}),n(b),i(C)}}catch(m){console.error(\"\\u52A0\\u8F7DAlist\\u914D\\u7F6E\\u5931\\u8D25:\",m),q.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{o(!1)}},f=m=>{n(x=>E(y({},x),{[m]:!x[m]}))},d=async()=>{o(!0);try{let v=((await e.validateFields()).servers||[]).map(h=>E(y({},h),{id:h.id||Fi(),timeout:3e4})),C=await(await fetch(l,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(v)})).json();if(C.code===0)q.message.success({content:\"Alist\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\",style:{marginTop:\"50vh\"}});else throw new Error(C.message)}catch(m){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",m),q.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(m.message))}finally{o(!1)}};(0,L.useEffect)(()=>{u()},[]);let c={background:\"linear-gradient(135deg, \".concat(s.colorPrimaryBg,\" 0%, \").concat(s.colorBgContainer,\" 100%)\"),borderRadius:s.borderRadiusLG,padding:\"16px 20px\",margin:\"-1px -1px 0 -1px\",borderBottom:\"1px solid \".concat(s.colorBorderSecondary)};return L.default.createElement(q.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#722ed1\"},components:{Card:{paddingLG:20},Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},L.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},L.default.createElement(\"div\",{style:{marginBottom:24}},L.default.createElement(q.Alert,{message:\"\\u8BA4\\u8BC1\\u65B9\\u5F0F\\u8BF4\\u660E\",description:L.default.createElement(\"div\",null,L.default.createElement(\"p\",null,\"\\u2022 \",L.default.createElement(\"strong\",null,\"\\u7528\\u6237\\u540D/\\u5BC6\\u7801\\u8BA4\\u8BC1\"),\"\\uFF1A\\u4F7F\\u7528 Alist \\u7BA1\\u7406\\u5458\\u7684\\u8D26\\u53F7\\u5BC6\\u7801\\u767B\\u5F55\"),L.default.createElement(\"p\",null,\"\\u2022 \",L.default.createElement(\"strong\",null,\"Token \\u8BA4\\u8BC1\"),\"\\uFF1A\\u5728 Alist \\u540E\\u53F0\\u751F\\u6210\\u7684\\u8BBF\\u95EE\\u4EE4\\u724C\\uFF0C\\u66F4\\u5B89\\u5168\"),L.default.createElement(\"p\",null,\"\\u2022 \\u4E24\\u79CD\\u8BA4\\u8BC1\\u65B9\\u5F0F\\u9009\\u62E9\\u4E00\\u79CD\\u5373\\u53EF\\uFF0CToken \\u8BA4\\u8BC1\\u4F18\\u5148\\u7EA7\\u66F4\\u9AD8\")),type:\"info\",showIcon:!0,icon:L.default.createElement(Xr,null),style:{background:s.colorPrimaryBg,border:\"1px solid \".concat(s.colorPrimaryBorder),borderRadius:s.borderRadiusLG,marginBottom:24}})),L.default.createElement(q.Form,{form:e,layout:\"vertical\"},L.default.createElement(q.Form.List,{name:\"servers\"},(m,{add:x,remove:v})=>{let b=()=>{let O=Fi(),w={id:O,name:\"Alist\\u670D\\u52A1\\u5668 \".concat(m.length+1),server:\"\",username:\"\",password:\"\",token:\"\",enabled:!0};x(w),n(S=>E(y({},S),{[O]:!0})),i(S=>E(y({},S),{[O]:\"password\"}))},C=O=>{if(m.length<=1){q.message.warning(\"\\u81F3\\u5C11\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}let w=m.findIndex(S=>{let D=e.getFieldValue([\"servers\",S.name]);return D&&D.id===O});w!==-1&&(v(w),n(S=>{let D=y({},S);return delete D[O],D}),i(S=>{let D=y({},S);return delete D[O],D}))},h=(O,w)=>{i(S=>E(y({},S),{[O]:w}))};return L.default.createElement(\"div\",{style:{marginBottom:24}},m.map(O=>{let w=e.getFieldValue([\"servers\",O.name,\"id\"]),S=e.getFieldValue([\"servers\",O.name,\"name\"])||\"Alist\\u670D\\u52A1\\u5668 \".concat(O.name+1),D=e.getFieldValue([\"servers\",O.name,\"enabled\"])!==!1,P=a[w]||\"password\",N=t[w]||!1;return L.default.createElement(q.Card,{key:O.key,style:{marginBottom:16,borderRadius:s.borderRadiusLG,border:\"1px solid \".concat(D?\"#722ed1\":s.colorBorderSecondary),boxShadow:\"0 2px 8px rgba(114,46,209,0.08)\",overflow:\"hidden\",transition:\"all 0.3s\"},bodyStyle:{padding:0}},L.default.createElement(\"div\",{style:E(y({},c),{borderLeft:D?\"4px solid #722ed1\":\"4px solid transparent\"})},L.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},L.default.createElement(q.Badge,{color:D?\"#722ed1\":\"default\",text:L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8}},L.default.createElement(\"span\",{style:{fontWeight:500,fontSize:15,color:s.colorTextHeading}},S),!D&&L.default.createElement(q.Tag,{color:\"default\",style:{fontSize:11}},\"\\u5DF2\\u7981\\u7528\"),L.default.createElement(q.Tag,{color:\"purple\",style:{fontSize:11,background:\"rgba(114,46,209,0.1)\"}},\"Alist\"))})),L.default.createElement(q.Space,null,L.default.createElement(q.Form.Item,E(y({},O),{name:[O.name,\"enabled\"],valuePropName:\"checked\",noStyle:!0}),L.default.createElement(q.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"small\",style:{background:D?\"#722ed1\":void 0}})),L.default.createElement(q.Button,{type:\"text\",size:\"small\",icon:N?L.default.createElement(mt,null):L.default.createElement(pt,null),onClick:()=>f(w),style:{color:s.colorTextSecondary}}),m.length>1&&L.default.createElement(q.Tooltip,{title:\"\\u5220\\u9664\\u670D\\u52A1\\u5668\"},L.default.createElement(q.Button,{type:\"text\",size:\"small\",danger:!0,icon:L.default.createElement(xt,null),onClick:()=>C(w)}))))),N&&L.default.createElement(\"div\",{style:{padding:\"24px 20px\",background:s.colorBgLayout}},L.default.createElement(q.Row,{gutter:[24,16]},L.default.createElement(q.Col,{span:24},L.default.createElement(q.Form.Item,E(y({},O),{label:L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},L.default.createElement(_n,{style:{fontSize:12}}),L.default.createElement(\"span\",null,\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\")),name:[O.name,\"name\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]}),L.default.createElement(q.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684Alist\\u670D\\u52A1\\u5668\",size:\"middle\"}))),L.default.createElement(q.Col,{span:24},L.default.createElement(q.Form.Item,E(y({},O),{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:[O.name,\"server\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u5730\\u5740\"},{pattern:/^https?:\\/\\/.+/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684URL\\uFF08\\u5305\\u542Bhttp://\\u6216https://\\uFF09\"}],tooltip:\"Alist\\u9ED8\\u8BA4\\u7AEF\\u53E3\\u4E3A5244\\uFF0C\\u5982\\uFF1Ahttp://192.168.1.100:5244\"}),L.default.createElement(q.Input,{placeholder:\"http://example.com:5244\",prefix:L.default.createElement(Pn,{style:{color:s.colorTextQuaternary}}),size:\"middle\"}))),L.default.createElement(q.Col,{span:24},L.default.createElement(\"div\",{style:{marginBottom:16}},L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:12}},L.default.createElement(Xr,{style:{color:\"#722ed1\"}}),L.default.createElement(x1,{strong:!0,style:{fontSize:14}},\"\\u9009\\u62E9\\u8BA4\\u8BC1\\u65B9\\u5F0F\")),L.default.createElement(q.Segmented,{options:[{label:L.default.createElement(\"div\",{style:{padding:\"4px 8px\"}},L.default.createElement(an,{style:{marginRight:6}}),\"\\u7528\\u6237\\u540D/\\u5BC6\\u7801\"),value:\"password\"},{label:L.default.createElement(\"div\",{style:{padding:\"4px 8px\"}},L.default.createElement(ro,{style:{marginRight:6}}),\"Token\\u8BA4\\u8BC1\"),value:\"token\"}],value:P,onChange:F=>h(w,F),block:!0}))),P===\"password\"?L.default.createElement(L.default.Fragment,null,L.default.createElement(q.Col,{span:12},L.default.createElement(q.Form.Item,E(y({},O),{label:\"\\u7528\\u6237\\u540D\",name:[O.name,\"username\"]}),L.default.createElement(q.Input,{placeholder:\"Alist\\u7BA1\\u7406\\u5458\\u8D26\\u53F7\",prefix:L.default.createElement(an,{style:{color:s.colorTextQuaternary}}),size:\"middle\"}))),L.default.createElement(q.Col,{span:12},L.default.createElement(q.Form.Item,E(y({},O),{label:\"\\u5BC6\\u7801\",name:[O.name,\"password\"]}),L.default.createElement(q.Input.Password,{placeholder:\"\\u7BA1\\u7406\\u5458\\u5BC6\\u7801\",prefix:L.default.createElement(Bn,{style:{color:s.colorTextQuaternary}}),size:\"middle\"})))):L.default.createElement(q.Col,{span:24},L.default.createElement(q.Form.Item,E(y({},O),{label:L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},L.default.createElement(ro,null),L.default.createElement(\"span\",null,\"Token\\u4EE4\\u724C\")),name:[O.name,\"token\"],tooltip:L.default.createElement(\"div\",null,L.default.createElement(\"p\",null,\"\\u5728Alist\\u540E\\u53F0\\u751F\\u6210\\uFF1A\\u8BBE\\u7F6E \\u2192 \\u8D26\\u53F7\\u8BBE\\u7F6E \\u2192 \\u4EE4\\u724C\"),L.default.createElement(\"p\",null,\"\\u6216\\u901A\\u8FC7API\\u83B7\\u53D6\\uFF1A/api/auth/login\"))}),L.default.createElement(q.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165Alist Token\",rows:3,style:{fontFamily:\"monospace\",fontSize:13}}))))))}),L.default.createElement(q.Button,{type:\"dashed\",onClick:b,block:!0,icon:L.default.createElement(Ae,null),size:\"large\",style:{height:56,borderRadius:s.borderRadiusLG,borderStyle:\"dashed\",borderWidth:2,fontSize:15,borderColor:\"#722ed1\",color:\"#722ed1\"}},\"\\u6DFB\\u52A0\\u65B0\\u7684 Alist \\u670D\\u52A1\\u5668\"))}),L.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:s.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(s.colorBorderSecondary),marginTop:24,zIndex:10}},L.default.createElement(q.Space,{size:\"middle\"},L.default.createElement(q.Button,{type:\"primary\",onClick:d,loading:r,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(114,46,209,0.2)\",background:\"#722ed1\",borderColor:\"#722ed1\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),L.default.createElement(q.Button,{onClick:async()=>{o(!0);try{let x=await(await fetch(l,{method:\"DELETE\"})).json();if(x.code===0)q.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await u();else throw new Error(x.message)}catch(m){q.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+m.message)}finally{o(!1)}},loading:r,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var pf=y1;var G=W(J(),1),R=W(et(),1);var{Title:K2,Text:X2,Paragraph:J2}=R.Typography,{useToken:w1}=R.theme,Pi=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function C1(){let[e]=R.Form.useForm(),[t,n]=(0,G.useState)({}),[r,o]=(0,G.useState)(!1),{token:a}=w1(),i=\"/website/webdav/config\",s=async()=>{o(!0);try{let c=await(await fetch(i)).json();if(c.code===0&&c.data){let m=(Array.isArray(c.data)?c.data:[]).map(v=>E(y({},v),{id:v.id||Pi()}));e.setFieldsValue({servers:m});let x={};m.forEach(v=>{x[v.id]=!1}),n(x)}}catch(d){console.error(\"\\u52A0\\u8F7DWebDAV\\u914D\\u7F6E\\u5931\\u8D25:\",d),R.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{o(!1)}},l=d=>{n(c=>E(y({},c),{[d]:!c[d]}))},u=async()=>{o(!0);try{let m=((await e.validateFields()).servers||[]).map(b=>E(y({},b),{id:b.id||Pi(),timeout:3e4})),v=await(await fetch(i,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(m)})).json();if(v.code===0)R.message.success({content:\"\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\",style:{marginTop:\"50vh\"}});else throw new Error(v.message)}catch(d){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",d),R.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(d.message))}finally{o(!1)}};(0,G.useEffect)(()=>{s()},[]);let f={background:\"linear-gradient(135deg, \".concat(a.colorPrimaryBg,\" 0%, \").concat(a.colorBgContainer,\" 100%)\"),borderRadius:a.borderRadiusLG,padding:\"16px 20px\",margin:\"-1px -1px 0 -1px\",borderBottom:\"1px solid \".concat(a.colorBorderSecondary)};return G.default.createElement(R.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#1890ff\"},components:{Card:{paddingLG:20},Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},G.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},G.default.createElement(R.Form,{form:e,layout:\"vertical\"},G.default.createElement(R.Form.List,{name:\"servers\"},(d,{add:c,remove:m})=>{let x=()=>{let b=Pi(),C={id:b,name:\"WebDAV\\u670D\\u52A1\\u5668 \".concat(d.length+1),server:\"\",path:\"/\",username:\"\",password:\"\",enabled:!0};c(C),n(h=>E(y({},h),{[b]:!0}))},v=b=>{if(d.length<=1){R.message.warning(\"\\u81F3\\u5C11\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}let C=d.findIndex(h=>{let O=e.getFieldValue([\"servers\",h.name]);return O&&O.id===b});C!==-1&&(m(C),n(h=>{let O=y({},h);return delete O[b],O}))};return G.default.createElement(\"div\",{style:{marginBottom:24}},d.map(b=>{let C=e.getFieldValue([\"servers\",b.name,\"id\"]),h=e.getFieldValue([\"servers\",b.name,\"name\"])||\"\\u670D\\u52A1\\u5668 \".concat(b.name+1),O=e.getFieldValue([\"servers\",b.name,\"enabled\"])!==!1,w=t[C]||!1;return G.default.createElement(R.Card,{key:b.key,style:{marginBottom:16,borderRadius:a.borderRadiusLG,border:\"1px solid \".concat(O?a.colorBorder:a.colorBorderSecondary),boxShadow:\"0 2px 8px rgba(0,0,0,0.06)\",overflow:\"hidden\",transition:\"all 0.3s\"},bodyStyle:{padding:0}},G.default.createElement(\"div\",{style:f},G.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},G.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},G.default.createElement(R.Badge,{status:O?\"success\":\"default\",text:G.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8}},G.default.createElement(\"span\",{style:{fontWeight:500,fontSize:15,color:a.colorTextHeading}},h),!O&&G.default.createElement(R.Tag,{color:\"default\",style:{fontSize:11}},\"\\u5DF2\\u7981\\u7528\"))})),G.default.createElement(R.Space,null,G.default.createElement(R.Form.Item,E(y({},b),{name:[b.name,\"enabled\"],valuePropName:\"checked\",noStyle:!0}),G.default.createElement(R.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"small\"})),G.default.createElement(R.Button,{type:\"text\",size:\"small\",icon:w?G.default.createElement(mt,null):G.default.createElement(pt,null),onClick:()=>l(C),style:{color:a.colorTextSecondary}}),d.length>1&&G.default.createElement(R.Tooltip,{title:\"\\u5220\\u9664\\u670D\\u52A1\\u5668\"},G.default.createElement(R.Button,{type:\"text\",size:\"small\",danger:!0,icon:G.default.createElement(xt,null),onClick:()=>v(C)}))))),w&&G.default.createElement(\"div\",{style:{padding:\"24px 20px\",background:a.colorBgLayout}},G.default.createElement(R.Row,{gutter:[24,16]},G.default.createElement(R.Col,{span:24},G.default.createElement(R.Form.Item,E(y({},b),{label:G.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},G.default.createElement(_n,{style:{fontSize:12}}),G.default.createElement(\"span\",null,\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\")),name:[b.name,\"name\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]}),G.default.createElement(R.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684WebDAV\\u670D\\u52A1\\u5668\",size:\"middle\"}))),G.default.createElement(R.Col,{span:24},G.default.createElement(R.Form.Item,E(y({},b),{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:[b.name,\"server\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u5730\\u5740\"},{pattern:/^https?:\\/\\/.+/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684URL\\uFF08\\u5305\\u542Bhttp://\\u6216https://\\uFF09\"}],tooltip:\"\\u5305\\u542B\\u534F\\u8BAE\\u548C\\u7AEF\\u53E3\\uFF0C\\u5982\\uFF1Ahttps://example.com:5244\"}),G.default.createElement(R.Input,{placeholder:\"http://example.com:5244\",prefix:G.default.createElement(Pn,{style:{color:a.colorTextQuaternary}}),size:\"middle\"}))),G.default.createElement(R.Col,{span:24},G.default.createElement(R.Form.Item,E(y({},b),{label:G.default.createElement(R.Tooltip,{title:\"WebDAV\\u670D\\u52A1\\u5668\\u4E0A\\u7684\\u8DEF\\u5F84\"},G.default.createElement(\"span\",null,\"\\u8BBF\\u95EE\\u8DEF\\u5F84\")),name:[b.name,\"path\"],initialValue:\"/\"}),G.default.createElement(R.Input,{placeholder:\"/\",prefix:G.default.createElement(ma,{style:{color:a.colorTextQuaternary}}),size:\"middle\"}))),G.default.createElement(R.Col,{span:12},G.default.createElement(R.Form.Item,E(y({},b),{label:G.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},G.default.createElement(an,{style:{fontSize:12}}),G.default.createElement(\"span\",null,\"\\u7528\\u6237\\u540D\")),name:[b.name,\"username\"]}),G.default.createElement(R.Input,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9700\\u8981\\u8BA4\\u8BC1\",size:\"middle\"}))),G.default.createElement(R.Col,{span:12},G.default.createElement(R.Form.Item,E(y({},b),{label:G.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},G.default.createElement(Bn,{style:{fontSize:12}}),G.default.createElement(\"span\",null,\"\\u5BC6\\u7801\")),name:[b.name,\"password\"]}),G.default.createElement(R.Input.Password,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9700\\u8981\\u5BC6\\u7801\",size:\"middle\"}))))))}),G.default.createElement(R.Button,{type:\"dashed\",onClick:x,block:!0,icon:G.default.createElement(Ae,null),size:\"large\",style:{height:56,borderRadius:a.borderRadiusLG,borderStyle:\"dashed\",borderWidth:2,fontSize:15,color:a.colorTextSecondary}},\"\\u6DFB\\u52A0\\u65B0\\u7684 WebDAV \\u670D\\u52A1\\u5668\"))}),G.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:a.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(a.colorBorderSecondary),marginTop:24,zIndex:10}},G.default.createElement(R.Space,{size:\"middle\"},G.default.createElement(R.Button,{type:\"primary\",onClick:u,loading:r,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(0,0,0,0.1)\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),G.default.createElement(R.Button,{onClick:async()=>{o(!0);try{let c=await(await fetch(i,{method:\"DELETE\"})).json();if(c.code===0)R.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await s();else throw new Error(c.message)}catch(d){R.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+d.message)}finally{o(!1)}},loading:r,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var mf=C1;var Z=W(J(),1),de=W(et(),1);var gf=W(Tt(),1),_i=gf.default.create({baseURL:\"/website\"});_i.interceptors.response.use(function(e){if(e.data.code!==0)throw de.message.error(e.data.message),new Error(e.data);return e.data.data},function(e){return Promise.reject(e)});var O1=({driveKey:e})=>{let t=e.startsWith(\"nodejs_\")?e.substring(7):e;switch((o=>o.startsWith(\"pan123_\")?\"pan123\":o)(t)){case\"quark\":return Z.default.createElement(_t,{qrcodeUrl:\"/website/quark/qrcode\",cacheUrl:\"/quark/cookie\"});case\"uc\":return Z.default.createElement(Mi,null);case\"115\":return Z.default.createElement(_t,{qrcodeUrl:\"/website/115/qrcode\",cacheUrl:\"/115/cookie\"});case\"baidu\":return Z.default.createElement(_t,{qrcodeUrl:\"/website/baidu/qrcode\",cacheUrl:\"/baidu/cookie\"});case\"tianyi\":return Z.default.createElement(qo,{api:\"/tianyi/account\"});case\"123\":return Z.default.createElement(qo,{api:\"/pan123/account\"});case\"xunlei\":return Z.default.createElement(Li,{api:\"/xunlei/account\"});case\"ali\":return Z.default.createElement(Bi,null);case\"uc-tv\":return Z.default.createElement(_t,{qrcodeUrl:\"/website/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\"});default:return Z.default.createElement(\"p\",null,\"\\u76F4\\u63A5\\u89C2\\u770B\\uFF0C\\u4E0D\\u9700\\u8981cookie\")}},S1=()=>{let[e,t]=(0,Z.useState)(!1),[n,r]=(0,Z.useState)(null),[o,a]=(0,Z.useState)(.5),[i,s]=(0,Z.useState)(32),[l,u]=(0,Z.useState)(!0),[f,d]=(0,Z.useState)(!1),[c,m]=(0,Z.useState)(!1),x=h=>h==null?void 0:h.replace(\"nodejs_\",\"\"),v=h=>{let O=x(h.key);a(O===\"baidu\"?1:.5),s(O===\"baidu\"?8:32),u(!0),d(!1),r(h),t(!0)},b=()=>{t(!1),r(null),a(.5),s(32),u(!0),d(!1),m(!1)};(0,Z.useEffect)(()=>{if(!n)return;let h=x(n.key);[\"quark\",\"uc\",\"baidu\",\"xunlei\"].includes(h)&&(m(!0),_i.get(\"/\".concat(h,\"/config\")).then(O=>{let w=O.chunkSize/1048576;a(w>0?w:h===\"baidu\"?1:.5),s(O.poolSize>0?O.poolSize:h===\"baidu\"?8:h===\"xunlei\"?4:32),u(O.useMultithread!==!1),d(h===\"quark\"?O.enableFast===!0:!1)}).catch(O=>{console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\",O),de.message.warning(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C\"),a(h===\"baidu\"?1:.5),s(h===\"baidu\"?8:h===\"xunlei\"?4:32),u(!0),d(!1)}).finally(()=>m(!1)))},[n]);let C=(0,Z.useMemo)(()=>[{title:\"\\u626B\\u7801\",key:\"action\",render:(h,O)=>Z.default.createElement(de.Space,{size:\"middle\"},Z.default.createElement(de.Button,{type:\"primary\",size:\"small\",icon:Z.default.createElement(Fn,null),onClick:()=>v(O)})),width:100,align:\"center\"}],[]);return Z.default.createElement(Z.default.Fragment,null,Z.default.createElement(Vi,{extraColumns:C}),Z.default.createElement(de.Modal,{title:n?\"\\u4FEE\\u6539 \".concat(n.name,\" \\u914D\\u7F6E\"):\"\\u4FEE\\u6539\\u914D\\u7F6E\",open:e,onCancel:b,footer:null,destroyOnClose:!0,className:\"force-light-form-label\"},Z.default.createElement(O1,{driveKey:n==null?void 0:n.key}),n&&[\"quark\",\"uc\",\"baidu\",\"xunlei\"].includes(n.key.replace(\"nodejs_\",\"\"))&&Z.default.createElement(\"div\",{style:{marginTop:16}},Z.default.createElement(de.Divider,null,\"\\u4EE3\\u7406\\u8BBE\\u7F6E\"),Z.default.createElement(de.Form,{layout:\"vertical\"},Z.default.createElement(de.Form.Item,{label:\"\\u542F\\u7528\\u4EE3\\u7406\\u52A0\\u901F\"},Z.default.createElement(de.Switch,{checked:l,onChange:u,disabled:c})),n.key.replace(\"nodejs_\",\"\")===\"quark\"&&Z.default.createElement(de.Form.Item,{label:\"\\u542F\\u7528\\u5FEB\\u4F20\"},Z.default.createElement(de.Switch,{checked:f,onChange:d,disabled:c})),Z.default.createElement(de.Form.Item,{label:\"\\u7EBF\\u7A0B\\u6570\"},Z.default.createElement(de.InputNumber,{min:1,max:100,value:i,onChange:s,style:{width:\"100%\"},disabled:c})),Z.default.createElement(de.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (MB)\"},Z.default.createElement(de.InputNumber,{min:.01,max:10,value:o,onChange:a,style:{width:\"100%\"},disabled:c})),Z.default.createElement(de.Button,{type:\"primary\",onClick:async()=>{let h=n.key.replace(\"nodejs_\",\"\");try{let O={chunkSize:o*1024*1024,poolSize:i,useMultithread:l};h===\"quark\"&&(O.enableFast=f),await _i.put(\"/\".concat(h,\"/config\"),O),de.message.success(\"\\u4EE3\\u7406\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(O){de.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\")}},loading:c,block:!0},\"\\u4FDD\\u5B58\\u4EE3\\u7406\\u914D\\u7F6E\")))))},hf=S1;var ne=W(J(),1),wn=W(et(),1);var we=W(J(),1),xe=W(et(),1),bf=W(Tt(),1),jo=bf.default.create({baseURL:\"/website\"});jo.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});function zi(){let[e]=xe.Form.useForm(),[t,n]=(0,we.useState)({hasCookie:!1,cookieLength:0}),[r,o]=(0,we.useState)(!1),a=async()=>{let l=await jo.get(\"/panlian/config\");e.setFieldsValue({username:l.username||\"\",password:l.password||\"\",cookie:l.cookie||\"\"}),n({hasCookie:!!l.hasCookie,cookieLength:String(l.cookie||\"\").trim().length})};(0,we.useEffect)(()=>{a()},[]);let i=async()=>{o(!0);try{await jo.post(\"/panlian/clear\"),await a(),xe.message.success(\"\\u76D8\\u94FE\\u8D26\\u53F7\\u6570\\u636E\\u5DF2\\u6E05\\u7A7A\")}finally{o(!1)}},s=async()=>{o(!0);try{let l=await e.validateFields([\"username\",\"password\"]),u=await jo.post(\"/panlian/login\",l);await a(),xe.message.success(\"\\u76D8\\u94FE\\u767B\\u5F55\\u6210\\u529F\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u5DF2\\u5199\\u5165 Cookie\"))}finally{o(!1)}};return we.default.createElement(xe.Card,{variant:\"borderless\"},we.default.createElement(\"div\",{style:{marginBottom:12,display:\"flex\",gap:8,flexWrap:\"wrap\"}},we.default.createElement(xe.Tag,{color:t.hasCookie?\"success\":\"default\"},t.hasCookie?\"\\u5DF2\\u5199\\u5165 Cookie\":\"\\u672A\\u5199\\u5165 Cookie\"),we.default.createElement(xe.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",t.cookieLength)),we.default.createElement(xe.Form,{form:e,layout:\"vertical\"},we.default.createElement(xe.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},we.default.createElement(xe.Input,{placeholder:\"\\u76D8\\u94FE\\u8D26\\u53F7\"})),we.default.createElement(xe.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},we.default.createElement(xe.Input.Password,{placeholder:\"\\u76D8\\u94FE\\u5BC6\\u7801\"})),we.default.createElement(xe.Form.Item,{label:\"\\u5F53\\u524D Cookie\",name:\"cookie\"},we.default.createElement(xe.Input.TextArea,{rows:4,readOnly:!0,placeholder:\"\\u767B\\u5F55\\u6210\\u529F\\u540E\\u4F1A\\u81EA\\u52A8\\u56DE\\u586B Cookie\"})),we.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},we.default.createElement(xe.Button,{type:\"primary\",onClick:s,loading:r},\"\\u767B\\u5F55\"),we.default.createElement(xe.Button,{danger:!0,onClick:i,loading:r},\"\\u6E05\\u7A7A\"))))}var le=W(J(),1),ve=W(et(),1),xf=W(Tt(),1);var Ro=xf.default.create({baseURL:\"/website\"});Ro.interceptors.response.use(e=>{if(e.data.code!==0){let t=new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");throw t.responseData=e.data,t}return e.data.data});var E1=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:o,transition:a,isDragging:i}=Co({id:e[\"data-row-key\"]}),s=y(E(y({},e.style),{transform:gt.Translate.toString(o),transition:a,cursor:\"move\"}),i?{position:\"relative\",zIndex:9999}:{});return le.default.createElement(\"tr\",y(y(E(y({},e),{ref:r,style:s}),t),n))};function D1(e=[],t={}){let n=(t==null?void 0:t.classes)||{};return e.map((r,o)=>{let a=n[r.type_id]||{},i=Number.isFinite(Number(a.order))?Number(a.order):o+1;return{key:r.type_id,type_id:r.type_id,origin_name:r.type_name,custom_name:typeof a.name==\"string\"?a.name:\"\",hidden:a.hidden===!0,order:i}}).sort((r,o)=>r.order-o.order||r.origin_name.localeCompare(o.origin_name,\"zh-CN\"))}function I1(e=[]){let t={};return e.forEach((n,r)=>{t[n.type_id]={name:(n.custom_name||\"\").trim(),hidden:n.hidden===!0,order:r+1}}),{classes:t,updatedAt:Date.now()}}function $i(){let[e,t]=(0,le.useState)([]),[n,r]=(0,le.useState)(!1),[o,a]=(0,le.useState)(!1),i=jn(qn(vt,{activationConstraint:{distance:1}})),s=async()=>{r(!0);try{let c=await Ro.get(\"/zhuiju/config\");t(D1((c==null?void 0:c.classes)||[],(c==null?void 0:c.config)||{}))}catch(c){console.error(c),ve.message.error(\"\\u52A0\\u8F7D\\u5931\\u8D25\\uFF1A\".concat((c==null?void 0:c.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{r(!1)}};(0,le.useEffect)(()=>{s()},[]);let l=({active:c,over:m})=>{!m||c.id===m.id||t(x=>{let v=x.findIndex(C=>C.key===c.id),b=x.findIndex(C=>C.key===m.id);return v<0||b<0?x:qe(x,v,b).map((C,h)=>E(y({},C),{order:h+1}))})},u=(0,le.useMemo)(()=>[{title:\"\\u5206\\u7C7B\\u540D\",dataIndex:\"origin_name\",render:(c,m)=>{var x;return le.default.createElement(\"div\",null,le.default.createElement(\"div\",{style:{fontWeight:600}},((x=m.custom_name)==null?void 0:x.trim())||m.origin_name),le.default.createElement(\"div\",{style:{fontSize:12,opacity:.65}},m.origin_name))}},{title:\"\\u91CD\\u547D\\u540D\",dataIndex:\"custom_name\",render:(c,m,x)=>le.default.createElement(ve.Input,{placeholder:m.origin_name,value:c,onChange:v=>{let b=[...e];b[x].custom_name=v.target.value,t(b)}}),width:220},{title:\"\\u5C4F\\u853D\",dataIndex:\"hidden\",width:80,align:\"center\",render:(c,m,x)=>le.default.createElement(ve.Switch,{checked:c,onChange:v=>{let b=[...e];b[x].hidden=v,t(b)}})},{title:\"\\u6392\\u5E8F\",dataIndex:\"order\",width:90,align:\"center\",render:(c,m,x)=>le.default.createElement(ve.Space,{size:2},le.default.createElement(ve.Button,{icon:le.default.createElement(mt,null),size:\"small\",type:\"text\",disabled:x===0,onClick:()=>t(v=>qe(v,x,x-1).map((b,C)=>E(y({},b),{order:C+1})))}),le.default.createElement(ve.Button,{icon:le.default.createElement(pt,null),size:\"small\",type:\"text\",disabled:x===e.length-1,onClick:()=>t(v=>qe(v,x,x+1).map((b,C)=>E(y({},b),{order:C+1})))}))}],[e]),f=async()=>{a(!0);try{await Ro.put(\"/zhuiju/config\",I1(e)),ve.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\\uFF0Czhuiju \\u5206\\u7C7B\\u81EA\\u5B9A\\u4E49\\u5DF2\\u5165\\u5E93\"),await s()}catch(c){console.error(c),ve.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((c==null?void 0:c.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{a(!1)}},d=async()=>{a(!0);try{await Ro.delete(\"/zhuiju/config\"),ve.message.success(\"\\u5DF2\\u91CD\\u7F6E\\u4E3A\\u9ED8\\u8BA4\\u5206\\u7C7B\"),await s()}catch(c){console.error(c),ve.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((c==null?void 0:c.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{a(!1)}};return le.default.createElement(\"div\",null,le.default.createElement(\"div\",{className:\"force-light-table-header\"},le.default.createElement(Rn,{sensors:i,modifiers:[Yn],onDragEnd:l},le.default.createElement(Xn,{items:e.map(c=>c.key),strategy:Kn},le.default.createElement(ve.Table,{components:{body:{row:E1}},rowKey:\"key\",loading:n,columns:u,dataSource:e,pagination:!1,size:\"small\",scroll:{x:\"max-content\",y:420}})))),le.default.createElement(ve.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},le.default.createElement(ve.Button,{icon:le.default.createElement(ga,null),block:!0,onClick:s,disabled:o},\"\\u5237\\u65B0\\u5206\\u7C7B\\u5217\\u8868\"),le.default.createElement(ve.Button,{type:\"primary\",block:!0,loading:o,onClick:f},\"\\u4FDD\\u5B58\"),le.default.createElement(ve.Button,{danger:!0,block:!0,loading:o,onClick:d},\"\\u91CD\\u7F6E\")))}var ce=W(J(),1),ie=W(et(),1),vf=W(Tt(),1),Yo=vf.default.create({baseURL:\"/website\"});Yo.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});function Ui(){let[e]=ie.Form.useForm(),[t,n]=(0,ce.useState)(!1),r=async()=>{let i=await Yo.get(\"/yingchao/config\");e.setFieldsValue({tmdb_api_key:i.tmdb_api_key||\"\",tmdb_bearer_token:i.tmdb_bearer_token||\"\",tmdb_auth_mode:i.tmdb_auth_mode||\"\",tmdb_language:i.tmdb_language||\"zh-CN\",tmdb_region:i.tmdb_region||\"CN\",hdhive_api_base_url:i.hdhive_api_base_url||\"https://hdhive.com/api/open\",hdhive_api_key:i.hdhive_api_key||\"\",hdhive_proxy_url:i.hdhive_proxy_url||\"\",billing_mode:i.billing_mode||\"all\",hide_invalid:i.hide_invalid!==!1})};(0,ce.useEffect)(()=>{r()},[]);let o=async()=>{n(!0);try{let i=await e.validateFields();await Yo.put(\"/yingchao/config\",i),ie.message.success(\"\\u5F71\\u5DE2\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\"),await r()}finally{n(!1)}},a=async()=>{n(!0);try{await Yo.delete(\"/yingchao/config\"),ie.message.success(\"\\u5F71\\u5DE2\\u914D\\u7F6E\\u5DF2\\u91CD\\u7F6E\"),await r()}finally{n(!1)}};return ce.default.createElement(ie.Card,{variant:\"borderless\"},ce.default.createElement(ie.Form,{form:e,layout:\"vertical\"},ce.default.createElement(ie.Form.Item,{label:\"TMDB API Key\",name:\"tmdb_api_key\"},ce.default.createElement(ie.Input,{placeholder:\"\\u672A\\u586B\\u5219\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C TMDB_API_KEY\"})),ce.default.createElement(ie.Form.Item,{label:\"HDHive API \\u5730\\u5740\",name:\"hdhive_api_base_url\"},ce.default.createElement(ie.Input,{placeholder:\"https://hdhive.com/api/open\"})),ce.default.createElement(ie.Form.Item,{label:\"HDHive API Key\",name:\"hdhive_api_key\"},ce.default.createElement(ie.Input.Password,{placeholder:\"\\u5FC5\\u586B HDHIVE_API_KEY\"})),ce.default.createElement(ie.Form.Item,{label:\"HDHive \\u4EE3\\u7406 URL\",name:\"hdhive_proxy_url\"},ce.default.createElement(ie.Input,{placeholder:\"\\u4F8B\\u5982 http://127.0.0.1:7890 \\u6216 http://user:pass@host:port\"})),ce.default.createElement(ie.Form.Item,{label:\"\\u8D44\\u6E90\\u8FC7\\u6EE4\",name:\"billing_mode\"},ce.default.createElement(ie.Radio.Group,null,ce.default.createElement(ie.Space,{direction:\"vertical\"},ce.default.createElement(ie.Radio,{value:\"all\"},\"\\u5168\\u90E8\\u663E\\u793A\"),ce.default.createElement(ie.Radio,{value:\"free_only\"},\"\\u4EC5\\u514D\\u8D39\\u8D44\\u6E90\"),ce.default.createElement(ie.Radio,{value:\"paid_only\"},\"\\u4EC5\\u4ED8\\u8D39\\u8D44\\u6E90\")))),ce.default.createElement(ie.Form.Item,{label:\"\\u9690\\u85CF\\u65E0\\u6548\\u8D44\\u6E90\",name:\"hide_invalid\",valuePropName:\"checked\"},ce.default.createElement(ie.Switch,null)),ce.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},ce.default.createElement(ie.Button,{type:\"primary\",onClick:o,loading:t},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),ce.default.createElement(ie.Button,{danger:!0,onClick:a,loading:t},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))}var T1=e=>{let t=e.startsWith(\"nodejs_\")?e.substring(7):e,r=(a=>a.startsWith(\"emby_\")?\"emby\":a.startsWith(\"alist_\")?\"alist\":a.startsWith(\"webdav_\")?\"webdav\":a)(t);return[\"bili_all\",\"tgchannel\",\"tgsou\",\"pansou\",\"panlian\",\"live\",\"zhuiju\",\"yingchao\",\"emby\",\"alist\",\"webdav\",\"uc-tv\",\"duoduo\",\"muou\",\"leijing\",\"wogg\",\"zhizhen\",\"ouge\",\"labi\",\"kuaiying\",\"huban\",\"erxiao\",\"shandian\"].includes(r)},N1=({sourceKey:e,sourceName:t})=>{let n=e.startsWith(\"nodejs_\")?e.substring(7):e;switch((a=>a.startsWith(\"emby_\")?\"emby\":a.startsWith(\"alist_\")?\"alist\":a.startsWith(\"webdav_\")?\"webdav\":a)(n)){case\"bili_all\":return ne.default.createElement(Tu,null);case\"tgchannel\":return ne.default.createElement(Gi,null);case\"tgsou\":return ne.default.createElement(Wi,null);case\"pansou\":return ne.default.createElement(Ri,null);case\"panlian\":return ne.default.createElement(zi,null);case\"live\":return ne.default.createElement(ff,null);case\"zhuiju\":return ne.default.createElement($i,null);case\"yingchao\":return ne.default.createElement(Ui,null);case\"emby\":return ne.default.createElement(ji,null);case\"alist\":return ne.default.createElement(pf,null);case\"webdav\":return ne.default.createElement(mf,null);case\"uc-tv\":return ne.default.createElement(Hi,null);case\"duoduo\":return ne.default.createElement(Xe,{api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"});case\"muou\":return ne.default.createElement(Xe,{api:\"/muou/urls\",name:\"\\u6728\\u5076\"});case\"leijing\":return ne.default.createElement(Xe,{api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"});case\"wogg\":return ne.default.createElement(Xe,{api:\"/wogg/urls\",name:\"\\u73A9\\u5076\"});case\"zhizhen\":return ne.default.createElement(Xe,{api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"});case\"ouge\":return ne.default.createElement(Xe,{api:\"/ouge/urls\",name:\"\\u6B27\\u54E5\"});case\"labi\":return ne.default.createElement(Xe,{api:\"/labi/urls\",name:\"\\u8721\\u7B14\"});case\"kuaiying\":return ne.default.createElement(Xe,{api:\"/kuaiying/urls\",name:\"\\u5FEB\\u6620\"});case\"huban\":return ne.default.createElement(Xe,{api:\"/huban/urls\",name:\"\\u864E\\u6591\"});case\"erxiao\":return ne.default.createElement(Xe,{api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"});case\"shandian\":return ne.default.createElement(Xe,{api:\"/shandian/urls\",name:\"\\u95EA\\u7535\"});default:return ne.default.createElement(\"p\",null,\"\\u65E0\\u914D\\u7F6E\\u754C\\u9762\")}},k1=()=>{let[e,t]=(0,ne.useState)(!1),[n,r]=(0,ne.useState)(null),o=s=>{r(s),t(!0)},a=()=>{t(!1),r(null)},i=(0,ne.useMemo)(()=>[{title:\"\\u914D\\u7F6E\",key:\"action\",render:(s,l)=>T1(l.key)?ne.default.createElement(wn.Space,{size:\"middle\"},ne.default.createElement(wn.Button,{type:\"primary\",size:\"small\",icon:ne.default.createElement(Fn,null),onClick:()=>o(l)})):null,width:80,align:\"center\"}],[]);return ne.default.createElement(ne.default.Fragment,null,ne.default.createElement(qi,{extraColumns:i}),ne.default.createElement(wn.Modal,{title:n?\"\\u4FEE\\u6539 \".concat(n.name,\" \\u914D\\u7F6E\"):\"\\u4FEE\\u6539\\u914D\\u7F6E\",open:e,onCancel:a,footer:null,destroyOnClose:!0,width:800,className:\"force-light-form-label\"},n&&ne.default.createElement(N1,{sourceKey:n.key,sourceName:n.name})))},yf=k1;var{TabPane:Cn}=g.Tabs,ee=wr.default.create({baseURL:\"/website\"});ee.interceptors.response.use(function(e){if(e.data.code!==0){g.message.error(e.data.message);let t=new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");throw t.responseData=e.data,t}else return e.data.data},function(e){return Promise.reject(e)});g.message.config({top:\"40%\"});function Ki({src:e}){let[t,n]=p.default.useState(!1);return p.default.createElement(\"img\",{src:t?e:Td,onClick:()=>n(!0)})}function _t({qrcodeUrl:e,cacheUrl:t}){let[n,r]=p.default.useState(\"\"),o=async()=>{let s=await ee.post(t);r(s)},a=async()=>{await ee.put(t,{cookie:n}),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},i=s=>{(0,Ko.default)(s),g.message.success(\"\\u590D\\u5236\\u6210\\u529F\")};return(0,p.useEffect)(()=>{ee.get(t).then(s=>{r(s)})},[]),p.default.createElement(\"div\",{className:\"qrcodeCard\"},p.default.createElement(Ki,{src:e}),p.default.createElement(g.Divider,null,p.default.createElement(g.Button,{onClick:o},\"\\u626B\\u7801\\u540E\\u70B9\\u6211\")),p.default.createElement(g.Input.TextArea,{value:n,onChange:s=>r(s.target.value),rows:4}),p.default.createElement(\"div\",{className:\"btns\"},p.default.createElement(g.Button,{onClick:()=>i(n),color:\"cyan\",variant:\"solid\",style:{marginRight:24},size:\"large\"},\"\\u590D\\u5236\"),p.default.createElement(g.Button,{onClick:a,type:\"primary\",size:\"large\"},\"\\u5165\\u5E93\")))}function Bi(){let[e,t]=p.default.useState({token:\"\"}),n=\"/ali/token\",r=async()=>{let i=await ee.post(n);t(i)},o=async()=>{await ee.put(n,{data:e}),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},a=i=>{(0,Ko.default)(i.token||\"\"),g.message.success(\"\\u590D\\u5236\\u6210\\u529F\")};return(0,p.useEffect)(()=>{ee.get(n).then(i=>{t(i)})},[]),p.default.createElement(\"div\",{className:\"qrcodeCard\"},p.default.createElement(Ki,{src:\"/website/ali/qrcode\"}),p.default.createElement(g.Divider,null,p.default.createElement(g.Button,{onClick:r},\"\\u626B\\u7801\\u540E\\u70B9\\u6211\")),p.default.createElement(g.Input.TextArea,{value:e.token||\"\",onChange:i=>t(E(y({},e),{token:i.target.value})),rows:4}),p.default.createElement(\"div\",{className:\"btns\"},p.default.createElement(g.Button,{onClick:()=>a(e),color:\"cyan\",variant:\"solid\",style:{marginRight:24},size:\"large\"},\"\\u590D\\u5236\"),p.default.createElement(g.Button,{onClick:o,type:\"primary\",size:\"large\"},\"\\u5165\\u5E93\")))}function Xe({api:e,name:t}){let[n]=g.Form.useForm(),r={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},o={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},a=async()=>{let l=await ee.get(e);n.setFieldsValue({urls:l})},i=async()=>{let l=await n.validateFields();try{await ee.put(e,l.urls),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(u){console.error(u),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(u==null?void 0:u.message))}},s=async()=>{try{await ee.delete(e),a(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(l){console.error(l),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}};return(0,p.useEffect)(()=>{a()},[]),p.default.createElement(g.Form,y({form:n},r),p.default.createElement(g.Alert,{message:\"\\u542F\\u52A8\\u65F6\\u5C06\\u81EA\\u52A8\\u9009\\u62E9\\u901F\\u5EA6\\u6700\\u5FEB\\u7684\\u57DF\\u540D\",type:\"info\",style:{marginBottom:12}}),p.default.createElement(g.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(l,{add:u,remove:f},{errors:d})=>p.default.createElement(p.default.Fragment,null,l.map((c,m)=>p.default.createElement(g.Form.Item,E(y({label:m===0?\"\\u57DF\\u540D\\u5217\\u8868\":\"\",required:!1,key:c.key},m===0?r:o),{style:{marginBottom:12}}),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,E(y({},c),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\".concat(t,\"\\u57DF\\u540D\")}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\".concat(t,\"\\u57DF\\u540D\"),style:{width:\"100%\"}})),l.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(zt,null),onClick:()=>f(c.name)})))),p.default.createElement(g.Form.Item,y({label:\"\"},o),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>u(),block:!0,icon:p.default.createElement(Ae,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),p.default.createElement(g.Form.ErrorList,{errors:d})))),p.default.createElement(g.Form.Item,y({label:null},o),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:i,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:s,block:!0},\"\\u91CD\\u7F6E\"))))}function qo({api:e}){let[t]=g.Form.useForm(),n=async()=>{try{let r=await t.validateFields();await ee.put(e,r),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(r){console.error(r),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(r==null?void 0:r.message))}};return(0,p.useEffect)(()=>{ee.get(e).then(r=>{t.setFieldsValue(r)})},[]),p.default.createElement(g.Form,{form:t,layout:\"vertical\"},p.default.createElement(g.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},p.default.createElement(g.Input,null)),p.default.createElement(g.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},p.default.createElement(g.Input.Password,null)),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Button,{type:\"primary\",onClick:n,block:!0},\"\\u4FDD\\u5B58\")))}var Yi=e=>{if(!e)return\"\";try{let t=new URL(e);return t.searchParams.get(\"redirect_uri\")||t.searchParams.set(\"redirect_uri\",\"\".concat(window.location.origin,\"/website/xunlei/verify-callback\")),t.toString()}catch(t){return e}};function Li({api:e}){let[t]=g.Form.useForm(),[n,r]=p.default.useState(!1),[o,a]=p.default.useState(!1),[i,s]=p.default.useState(\"\"),[l,u]=p.default.useState({verificationId:\"\",expiryAt:0,remaining:null}),[f,d]=p.default.useState(0),[c,m]=p.default.useState(\"\"),[x,v]=p.default.useState(!1),b=p.default.useRef(null),C=()=>{s(\"\"),u({verificationId:\"\",expiryAt:0,remaining:null}),t.setFieldValue(\"verificationCode\",\"\"),m(\"\"),v(!1)},h=async()=>{var V,T,B;let F=await ee.get(e);if(t.setFieldsValue({phone:F.username||\"\",password:F.password||\"\",verificationCode:\"\"}),(V=F==null?void 0:F.verification)!=null&&V.verificationId){u({verificationId:F.verification.verificationId,expiryAt:Number(F.verification.expiresAt||0)||0,remaining:(T=F.verification.remaining)!=null?T:null}),v(!1),m(\"\"),s(((B=F==null?void 0:F.verification)==null?void 0:B.message)||\"\\u5DF2\\u6062\\u590D\\u4E0A\\u4E00\\u6B21\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u4F1A\\u8BDD\\uFF0C\\u53EF\\u76F4\\u63A5\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\");return}u({verificationId:\"\",expiryAt:0,remaining:null})},O=()=>{b.current&&!b.current.closed&&b.current.close(),b.current=null},w=(F,V)=>{v(!1),m(\"\"),s(\"\"),O(),u({verificationId:F.verificationId,expiryAt:Number(F.expiresAt||0)||Date.now()+Number(F.expiresIn||300)*1e3,remaining:F.remaining}),t.setFieldValue(\"verificationCode\",\"\"),g.message.success(V)},S=F=>{var T;if(!F)return;let V=window.open(F,\"xunlei-security-verify\",\"width=520,height=780\");if(V){b.current=V,(T=V.focus)==null||T.call(V);return}g.message.warning(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u5B89\\u5168\\u9A8C\\u8BC1\\u7A97\\u53E3\\uFF0C\\u8BF7\\u624B\\u52A8\\u6253\\u5F00\\u4E0B\\u65B9\\u94FE\\u63A5\")},D=async({phone:F,password:V})=>{let T=await ee.post(\"/xunlei/verification\",{username:F,password:V});if((T==null?void 0:T.status)===\"verify_required\"){let B=Yi(T.verifyUrl||\"\");s(\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\"),u({verificationId:\"\",expiryAt:0,remaining:null}),t.setFieldValue(\"verificationCode\",\"\"),v(!0),m(B),B?(S(B),g.message.info(\"\\u5DF2\\u6253\\u5F00\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\")):g.message.warning(\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\uFF0C\\u518D\\u7B49\\u5F85\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u4E0B\\u53D1\");return}if((T==null?void 0:T.status)===\"sent\"){w(T,(T==null?void 0:T.message)||(T!=null&&T.reused?\"\\u53D1\\u9001\\u8FC7\\u4E8E\\u9891\\u7E41\\uFF0C\\u7EE7\\u7EED\\u4F7F\\u7528\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\":\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u770B\\u77ED\\u4FE1\"));return}throw new Error((T==null?void 0:T.message)||\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\")},P=async()=>{try{let F=await t.validateFields([\"phone\",\"password\"]);r(!0),await D(F)}catch(F){console.error(F),s(\"\\u53D1\\u9001\\u5931\\u8D25\\uFF1A\".concat((F==null?void 0:F.message)||\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\")),g.message.error(\"\\u53D1\\u9001\\u5931\\u8D25\\uFF1A\".concat(F==null?void 0:F.message))}finally{r(!1)}},N=async()=>{var F,V;try{let T=await t.validateFields([\"phone\",\"password\",\"verificationCode\"]);if(!l.verificationId&&!c&&!x){g.message.warning(\"\\u8BF7\\u5148\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\");return}if(l.verificationId&&f<=0){g.message.warning(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u53D1\\u9001\");return}a(!0),await ee.post(\"/xunlei/login\",{username:T.phone,password:T.password,verificationId:l.verificationId,verificationCode:T.verificationCode}),s(\"\"),g.message.success(\"\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u5DF2\\u4FDD\\u5B58\\u8D26\\u53F7\\u4E0E\\u767B\\u5F55\\u6001\"),C(),O(),await h()}catch(T){console.error(T);let B=Yi(((V=(F=T==null?void 0:T.responseData)==null?void 0:F.data)==null?void 0:V.verifyUrl)||\"\");B&&(v(!0),m(B),S(B)),g.message.error(\"\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{a(!1)}};return(0,p.useEffect)(()=>{let F=V=>{var B,Y,te;if(V.origin!==window.location.origin)return;let T=V.data||{};if(T.type===\"xunlei-verification-sent\"){w(T.data||{},\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5B8C\\u6210\\uFF0C\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\");return}if(T.type===\"xunlei-verification-required\"){let pe=Yi(((B=T==null?void 0:T.data)==null?void 0:B.verifyUrl)||\"\");s(\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5C1A\\u672A\\u901A\\u8FC7\\uFF0C\\u8BF7\\u91CD\\u65B0\\u5B8C\\u6210\\u9A8C\\u8BC1\\u3002\"),v(!0),m(pe),pe&&g.message.warning(\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5C1A\\u672A\\u901A\\u8FC7\\uFF0C\\u8BF7\\u91CD\\u65B0\\u5B8C\\u6210\\u9A8C\\u8BC1\");return}T.type===\"xunlei-verification-error\"&&(v(!1),s(((Y=T==null?void 0:T.data)==null?void 0:Y.message)||\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u540E\\u81EA\\u52A8\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\"),g.message.error(((te=T==null?void 0:T.data)==null?void 0:te.message)||\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u540E\\u81EA\\u52A8\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\"))};return window.addEventListener(\"message\",F),()=>{window.removeEventListener(\"message\",F),O()}},[]),(0,p.useEffect)(()=>{h()},[]),(0,p.useEffect)(()=>{if(!l.verificationId||!l.expiryAt){d(0);return}let F=()=>{let T=Math.max(0,Math.ceil((l.expiryAt-Date.now())/1e3));d(T),T<=0&&(u({remaining:l.remaining,verificationId:\"\",expiryAt:0}),v(!1))};F();let V=setInterval(F,1e3);return()=>clearInterval(V)},[l.verificationId,l.expiryAt]),p.default.createElement(g.Form,{form:t,layout:\"vertical\",onValuesChange:F=>{(Object.prototype.hasOwnProperty.call(F,\"phone\")||Object.prototype.hasOwnProperty.call(F,\"password\"))&&C()}},p.default.createElement(g.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:12},message:\"\\u4EC5\\u4FDD\\u7559\\u624B\\u673A\\u53F7 + \\u5BC6\\u7801 + \\u5B89\\u5168\\u9A8C\\u8BC1 + \\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u8FD9\\u4E00\\u6761\\u767B\\u5F55\\u94FE\\u8DEF\\u3002\\u70B9\\u51FB\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u540E\\uFF0C\\u5982\\u9700\\u98CE\\u63A7\\u9A8C\\u8BC1\\u4F1A\\u81EA\\u52A8\\u62C9\\u8D77\\u9A8C\\u8BC1\\u9875\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u3002\"}),i&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:i}),p.default.createElement(g.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u624B\\u673A\\u53F7\"}]},p.default.createElement(g.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A13800138000\"})),p.default.createElement(g.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},p.default.createElement(g.Input.Password,null)),p.default.createElement(g.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",name:\"verificationCode\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"}],extra:x?\"\\u6B63\\u5728\\u7B49\\u5F85\\u5B89\\u5168\\u9A8C\\u8BC1\\u5B8C\\u6210\\u5E76\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\\u82E5\\u5DF2\\u6536\\u5230\\u77ED\\u4FE1\\uFF0C\\u4E5F\\u53EF\\u4EE5\\u76F4\\u63A5\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\":l.verificationId&&f>0?\"\\u9A8C\\u8BC1\\u7801\\u5269\\u4F59 \".concat(f,\" \\u79D2\\u6709\\u6548\"):\"\\u5148\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\uFF0C\\u518D\\u8F93\\u5165\\u77ED\\u4FE1\\u4E2D\\u7684 6 \\u4F4D\\u9A8C\\u8BC1\\u7801\"},p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",maxLength:6}),p.default.createElement(g.Button,{onClick:P,loading:n},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),l.remaining!==null&&l.verificationId&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:\"\\u4ECA\\u65E5\\u77ED\\u4FE1\\u53D1\\u9001\\u5269\\u4F59\\u6B21\\u6570\\uFF1A\".concat(l.remaining)}),c&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:x?\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\\u5DF2\\u81EA\\u52A8\\u6253\\u5F00\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\":\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\u3002\",description:p.default.createElement(g.Space,{wrap:!0},p.default.createElement(g.Button,{type:\"link\",href:c,target:\"_blank\",rel:\"noreferrer\"},\"\\u6253\\u5F00\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\"),p.default.createElement(g.Button,{onClick:()=>(0,Ko.default)(c)},\"\\u590D\\u5236\\u9A8C\\u8BC1\\u94FE\\u63A5\"))}),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:N,block:!0,loading:o},\"\\u767B\\u5F55\"))))}function Wi(){let[e]=g.Form.useForm(),t={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},n={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},r=async()=>{let o=await e.validateFields();console.log(\"data\",o);try{await ee.put(\"/tgsou/config\",o),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,p.useEffect)(()=>{ee.get(\"/tgsou/config\").then(o=>{e.setFieldsValue(o)})},[]),p.default.createElement(g.Form,y({form:e},t),p.default.createElement(g.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"url\"},p.default.createElement(g.Input,null)),p.default.createElement(g.Form.List,{name:\"channelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(o,{add:a,remove:i},{errors:s})=>p.default.createElement(p.default.Fragment,null,o.map((l,u)=>p.default.createElement(g.Form.Item,E(y({label:u===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:l.key},u===0?t:n),{style:{marginBottom:12}}),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,E(y({},l),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\",style:{width:\"100%\"}})),o.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(zt,null),onClick:()=>i(l.name)})))),p.default.createElement(g.Form.Item,y({label:\"\"},n),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>a(),block:!0,icon:p.default.createElement(Ae,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),p.default.createElement(g.Form.ErrorList,{errors:s})))),p.default.createElement(g.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},p.default.createElement(g.InputNumber,{min:1,style:{width:\"100%\"}})),p.default.createElement(g.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},p.default.createElement(g.Switch,null)),p.default.createElement(g.Form.Item,y({label:null},n),p.default.createElement(g.Button,{type:\"primary\",onClick:r,block:!0},\"\\u4FDD\\u5B58\")))}function Gi(){let[e]=g.Form.useForm(),t={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},n={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},r=\"/tgchannel/config\",[o,a]=(0,p.useState)({}),[i,s]=(0,p.useState)(!1),[l,u]=(0,p.useState)(!1),[f,d]=(0,p.useState)({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),c=(h,O)=>{if(d(w=>y(y({},w),O)),h.homeChannelUsername||h.channelUsername){let w=[...O.homeChannelUsername||[],...O.channelUsername||[]],S=y({},o);Object.keys(S).forEach(D=>{w.includes(D)||delete S[D]}),a(S)}},m=async()=>{if(!i){s(!0);try{let h=await e.validateFields();console.log(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u901A\\u8FC7:\",h);let O=!!h.enableImage;console.log(\"enableImage \\u8F6C\\u6362\\u540E:\",O,\"\\u7C7B\\u578B:\",typeof O);let w={url:h.url||\"\",count:Number(h.count)||1,enableImage:O,homeChannelUsername:Array.isArray(h.homeChannelUsername)?h.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(h.channelUsername)?h.channelUsername.filter(Boolean):[],channelRemark:o};console.log(\"\\u63D0\\u4EA4\\u7684\\u6570\\u636E:\",w);try{await ee.put(r,w),g.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),d({url:w.url,count:w.count,enableImage:w.enableImage,homeChannelUsername:w.homeChannelUsername,channelUsername:w.channelUsername});try{localStorage.setItem(\"tgchannel_config_backup\",JSON.stringify(w)),localStorage.setItem(\"tgchannel_config_time\",new Date().toISOString())}catch(S){console.warn(\"\\u672C\\u5730\\u5B58\\u50A8\\u5907\\u4EFD\\u5931\\u8D25:\",S)}}catch(S){console.error(\"\\u4FDD\\u5B58\\u8BF7\\u6C42\\u5931\\u8D25:\",S),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((S==null?void 0:S.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}}catch(h){console.error(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u5931\\u8D25:\",h),g.message.error(\"\\u8BF7\\u68C0\\u67E5\\u8868\\u5355\\u586B\\u5199\\u662F\\u5426\\u6B63\\u786E\")}finally{s(!1)}}},x=async()=>{s(!0);try{let h=null;try{let S=localStorage.getItem(\"tgchannel_config_backup\");S&&(h=JSON.parse(S),console.log(\"\\u4ECE\\u672C\\u5730\\u5B58\\u50A8\\u6062\\u590D\\u6570\\u636E:\",h))}catch(S){console.warn(\"\\u672C\\u5730\\u5B58\\u50A8\\u6062\\u590D\\u5931\\u8D25:\",S)}let O;try{O=await ee.get(r),console.log(\"\\u670D\\u52A1\\u5668\\u52A0\\u8F7D\\u7684\\u6570\\u636E:\",O)}catch(S){console.error(\"\\u670D\\u52A1\\u5668\\u52A0\\u8F7D\\u5931\\u8D25:\",S),O=h||{url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}}}let w=O||h||{url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}};console.log(\"\\u6700\\u7EC8\\u521D\\u59CB\\u5316\\u6570\\u636E:\",w),console.log(\"enableImage \\u503C:\",w.enableImage,\"\\u7C7B\\u578B:\",typeof w.enableImage),e.setFieldsValue({url:w.url||\"\",count:w.count||1,enableImage:w.enableImage===!0||w.enableImage===\"true\"||w.enableImage===1,homeChannelUsername:Array.isArray(w.homeChannelUsername)?w.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(w.channelUsername)?w.channelUsername.filter(Boolean):[]}),w.channelRemark&&typeof w.channelRemark==\"object\"&&a(w.channelRemark),d({url:w.url||\"\",count:w.count||1,enableImage:w.enableImage===!0||w.enableImage===\"true\"||w.enableImage===1,homeChannelUsername:Array.isArray(w.homeChannelUsername)?w.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(w.channelUsername)?w.channelUsername.filter(Boolean):[]}),u(!0)}catch(h){console.error(\"\\u521D\\u59CB\\u5316\\u5931\\u8D25:\",h),g.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u4F7F\\u7528\\u9ED8\\u8BA4\\u914D\\u7F6E\"),e.setFieldsValue({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),d({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),a({}),u(!0)}finally{s(!1)}},v=(h,O)=>{if(!h||h.trim()===\"\")return;let w=y({},o);O.trim()===\"\"?delete w[h]:w[h]=O.trim(),a(w);try{let S=y({},w);localStorage.setItem(\"tgchannel_remarks_backup\",JSON.stringify(S))}catch(S){console.warn(\"\\u5907\\u6CE8\\u672C\\u5730\\u5B58\\u50A8\\u5931\\u8D25:\",S)}};(0,p.useEffect)(()=>{x()},[]);let b=h=>e.getFieldsValue()[h]||[],C=(h,O,w,S,D)=>p.default.createElement(g.Form.Item,{noStyle:!0,shouldUpdate:(P,N)=>{var T,B;let F=(T=P[D])==null?void 0:T[O],V=(B=N[D])==null?void 0:B[O];return F!==V}},({getFieldValue:P})=>{let N=P([D,O])||\"\";return p.default.createElement(\"div\",{key:h.key,className:\"tg-channel-item\",style:{marginBottom:12,display:\"flex\",gap:\"8px\",alignItems:\"flex-start\"}},p.default.createElement(\"div\",{className:\"tg-channel-input\",style:{flex:\"1 1 40%\",minWidth:0}},p.default.createElement(g.Form.Item,E(y({},h),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u9891\\u9053\\u540D\",style:{width:\"100%\"},onChange:F=>{let V=F.target.value,T=N;if(T&&T!==V&&o[T]){let B=y({},o);B[V]=B[T],delete B[T],a(B)}}}))),p.default.createElement(\"div\",{className:\"tg-remark-input\",style:{flex:\"1 1 40%\",minWidth:0}},p.default.createElement(g.Input,{placeholder:\"\\u5907\\u6CE8\",value:o[N]||\"\",onChange:F=>v(N,F.target.value),onBlur:F=>v(N,F.target.value),style:{width:\"100%\"},disabled:!N||N.trim()===\"\"})),w.length>1&&p.default.createElement(\"div\",{className:\"tg-delete-btn\",style:{flex:\"0 0 auto\"}},p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(zt,null),onClick:()=>{if(N&&o[N]){let F=y({},o);delete F[N],a(F)}S(h.name)},style:{minWidth:\"44px\",minHeight:\"44px\"}})))});return i&&!l?p.default.createElement(g.Card,{loading:!0,style:{minHeight:300}},\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u4E2D...\"):p.default.createElement(g.Form,E(y({form:e},t),{onValuesChange:c}),p.default.createElement(g.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}],extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\"}},\"\\u9700\\u5B8C\\u6574\\u4EE3\\u7406t.me\\u57DF\\u540D\\uFF0C\\u81F3\\u5C11\\u9700\\u8981\\u652F\\u6301\\u4EE5\\u4E0B\\u94FE\\u63A5\",p.default.createElement(\"p\",{style:{margin:\"4px 0\"}},\"1. \\u9891\\u9053\\u9875\\u9762\\uFF1Ahttps://t.me/s/xx\\uFF0C\\u5E76\\u4E14\\u4F1A\\u5E26\\u5206\\u9875\\u53C2\\u6570before=yy\\u3001\\u641C\\u7D22\\u53C2\\u6570q=zz\"),p.default.createElement(\"p\",{style:{margin:\"4px 0\"}},\"2. \\u6D88\\u606F\\u8BE6\\u60C5\\u9875\\uFF1Ahttps://t.me/xx/yy\"))},p.default.createElement(g.Input,null)),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{xs:24,sm:12,md:12,lg:12},p.default.createElement(g.Form.Item,{label:\"\\u83B7\\u53D6\\u56FE\\u7247\",name:\"enableImage\",valuePropName:\"checked\",labelCol:{xs:{span:12},sm:{span:8}},wrapperCol:{xs:{span:12},sm:{span:16}}},p.default.createElement(g.Switch,null))),p.default.createElement(g.Col,{xs:24,sm:12,md:12,lg:12},p.default.createElement(g.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\",labelCol:{xs:{span:12},sm:{span:10}},wrapperCol:{xs:{span:12},sm:{span:14}}},p.default.createElement(g.InputNumber,{min:1,disabled:i,style:{width:\"100%\"}})))),p.default.createElement(g.Divider,{orientation:\"left\"},\"\\u9996\\u9875\"),p.default.createElement(g.Form.List,{name:\"homeChannelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(h,{add:O,remove:w},{errors:S})=>p.default.createElement(p.default.Fragment,null,h.map((D,P)=>C(D,P,h,w,\"homeChannelUsername\")),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>O(),icon:p.default.createElement(Ae,null),disabled:i,style:{width:\"100%\",maxWidth:\"400px\"}},\"\\u6DFB\\u52A0\\u9891\\u9053\")),p.default.createElement(g.Form.ErrorList,{errors:S})))),p.default.createElement(g.Divider,{orientation:\"left\"},\"\\u641C\\u7D22\"),p.default.createElement(g.Form.List,{name:\"channelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(h,{add:O,remove:w},{errors:S})=>p.default.createElement(p.default.Fragment,null,h.map((D,P)=>C(D,P,h,w,\"channelUsername\")),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>O(),icon:p.default.createElement(Ae,null),disabled:i,style:{width:\"100%\",maxWidth:\"400px\"}},\"\\u6DFB\\u52A0\\u9891\\u9053\")),p.default.createElement(g.Form.ErrorList,{errors:S})))),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\",width:\"100%\"}},p.default.createElement(g.Space,{style:{width:\"100%\",maxWidth:\"600px\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:m,loading:i,disabled:!l,block:!0},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Button,{onClick:()=>{window.confirm(\"\\u786E\\u5B9A\\u8981\\u91CD\\u7F6E\\u8868\\u5355\\u5417\\uFF1F\\u8FD9\\u5C06\\u6E05\\u9664\\u6240\\u6709\\u672A\\u4FDD\\u5B58\\u7684\\u4FEE\\u6539\\u3002\")&&x()},disabled:i,style:{flex:1}},\"\\u91CD\\u7F6E\"),p.default.createElement(g.Button,{onClick:()=>{window.confirm(\"\\u786E\\u5B9A\\u8981\\u6E05\\u7A7A\\u6240\\u6709\\u5907\\u6CE8\\u5417\\uFF1F\")&&(a({}),localStorage.removeItem(\"tgchannel_remarks_backup\"),g.message.success(\"\\u5907\\u6CE8\\u5DF2\\u6E05\\u7A7A\"))},disabled:i,style:{flex:1}},\"\\u6E05\\u7A7A\\u5907\\u6CE8\"))))))}function Mi(){return p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{message:\"\\u4F1A\\u5458\\u53EA\\u626B\\u7B2C\\u4E00\\u4E2A\\uFF0C\\u975E\\u4F1A\\u5458\\u4E24\\u4E2A\\u90FD\\u626B\",type:\"info\",style:{marginBottom:16}}),p.default.createElement(g.Card,{title:\"UC \\u7F51\\u76D8\",style:{marginBottom:16}},p.default.createElement(_t,{qrcodeUrl:\"/website/uc/qrcode\",cacheUrl:\"/uc/cookie\"})),p.default.createElement(g.Card,{title:\"UC TV\"},p.default.createElement(_t,{qrcodeUrl:\"/website/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\"})))}function Hi(){let[e,t]=p.default.useState(\"\"),n=\"/uc/ut\",r=async()=>{try{await ee.put(n,{ut:e}),g.message.success(\"\\u8BBE\\u7F6E\\u6210\\u529F\")}catch(o){console.error(o),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(o==null?void 0:o.message))}};return(0,p.useEffect)(()=>{ee.get(n).then(o=>{t(o)})},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{message:\"\\u5173\\u6CE8\\u5FAE\\u4FE1\\u516C\\u4F17\\u53F7\\u201C\\u738B\\u4E8C\\u5C0F\\u653E\\u725B\\u5A03\\u201D\\uFF0C\\u8F93\\u5165\\u201C\\u673A\\u5668\\u7801\\u201D\\u5373\\u53EF\\u83B7\\u5F97\",type:\"info\",style:{marginBottom:16}}),p.default.createElement(g.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165UC\\u673A\\u5668\\u7801\",value:e,onChange:o=>t(o.target.value),rows:4}),p.default.createElement(g.Button,{type:\"primary\",onClick:r,style:{marginTop:16}},\"\\u4FDD\\u5B58\"))}var Cf=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:o,transition:a,isDragging:i}=Co({id:e[\"data-row-key\"]}),s=y(E(y({},e.style),{transform:gt.Translate.toString(o),transition:a,cursor:\"move\"}),i?{position:\"relative\",zIndex:9999}:{});return p.default.createElement(\"tr\",y(y(E(y({},e),{ref:r,style:s}),t),n))};function qi({extraColumns:e=[]}){let[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(null),a=(0,p.useMemo)(()=>{let d=[{title:\"\\u7AD9\\u6E90\",dataIndex:\"key\",render(m,x,v){let b=r===x.key;return p.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},b?p.default.createElement(g.Input,{value:x.name,onChange:C=>{let h=[...t];h[v].name=C.target.value,n(h)},onPressEnter:()=>{o(null)},onBlur:()=>{o(null)},autoFocus:!0,style:{width:\"100%\"}}):p.default.createElement(\"div\",{style:{cursor:\"pointer\",padding:\"4px 8px\",borderRadius:\"4px\",width:\"100%\",minHeight:\"32px\",display:\"flex\",alignItems:\"center\",flexWrap:\"wrap\",gap:\"4px\"},onClick:()=>{o(x.key)},title:\"\\u70B9\\u51FB\\u4FEE\\u6539\\u540D\\u79F0\"},p.default.createElement(\"span\",null,x.name),x.t4&&p.default.createElement(g.Tag,{style:{marginLeft:4},color:\"blue\"},\"T4\"),x.cms&&p.default.createElement(g.Tag,{style:{marginLeft:4},color:\"blue\"},\"CMS\")))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(m,x,v){return p.default.createElement(g.Switch,{checked:m,onChange:b=>{let C=[...t];C[v].enable=b,n(C)}})},width:60,align:\"center\"},{title:\"\\u6392\\u5E8F\",dataIndex:\"op\",render(m,x,v){return p.default.createElement(g.Space,{size:2,style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{icon:p.default.createElement(mt,null),size:\"small\",type:\"text\",disabled:v===0,onClick:()=>{n(b=>qe(b,v,v-1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}),p.default.createElement(g.Button,{icon:p.default.createElement(pt,null),size:\"small\",type:\"text\",disabled:v===t.length-1,onClick:()=>{n(b=>qe(b,v,v+1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}))},width:70,align:\"center\"}];return[...d.slice(0,1),...e.map(m=>E(y({},m),{width:50})),...d.slice(1)]},[t,r,e]),i=jn(qn(vt,{activationConstraint:{distance:1}})),s=({active:d,over:c})=>{d.id!==(c==null?void 0:c.id)&&n(m=>{let x=m.findIndex(b=>b.key===d.id),v=m.findIndex(b=>b.key===(c==null?void 0:c.id));return qe(m,x,v)})},l=async()=>{let c=(await wr.default.get(\"/full-config\")).data.video.sites,m=await ee.get(\"/sites/list\"),x={},v={};c.forEach(C=>{v[C.key]=C});let b=m.filter(C=>(x[C.key]=!0,v[C.key]));c.forEach(C=>{x[C.key]||b.push({key:C.key,name:C.name,enable:!0,t4:C.t4,cms:C.cms})}),console.log(\"dataSource\",b,m,c),n(b)},u=async()=>{try{o(null),await ee.put(\"/sites/list\",{list:t}),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u7AD9\\u6E90\\u540D\\u79F0\\u5DF2\\u66F4\\u65B0\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(d){console.error(d),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{await ee.delete(\"/sites/list\"),l(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}};return(0,p.useEffect)(()=>{l()},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{description:\"\\u70B9\\u51FB\\u7AD9\\u6E90\\u540D\\u79F0\\u53EF\\u7F16\\u8F91\\uFF0C\\u62D6\\u52A8\\u884C\\u6216\\u4F7F\\u7528\\u4E0A\\u4E0B\\u6309\\u94AE\\u8C03\\u6574\\u987A\\u5E8F\",type:\"info\",style:{marginBottom:16},closable:!0}),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(Rn,{sensors:i,modifiers:[Yn],onDragEnd:s},p.default.createElement(Xn,{items:t.map(d=>d.key),strategy:Kn},p.default.createElement(g.Table,{components:{body:{row:Cf}},rowKey:\"key\",columns:a,dataSource:t,pagination:!1,className:\"sites-table\",size:\"small\",scroll:{x:\"max-content\"}})))),p.default.createElement(g.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",block:!0,onClick:u},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,block:!0,onClick:f},\"\\u91CD\\u7F6E\")))}function Vi({extraColumns:e=[]}){let[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(null),a=(0,p.useMemo)(()=>{let d=[{title:\"\\u7F51\\u76D8\",dataIndex:\"key\",render(m,x,v){let b=r===x.key;return p.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},b?p.default.createElement(g.Input,{value:x.name,onChange:C=>{let h=[...t];h[v].name=C.target.value,n(h)},onPressEnter:()=>o(null),onBlur:()=>o(null),autoFocus:!0,style:{width:\"100%\"}}):p.default.createElement(\"div\",{style:{cursor:\"pointer\",padding:\"4px 8px\",borderRadius:\"4px\",width:\"100%\",minHeight:\"32px\",display:\"flex\",alignItems:\"center\"},onClick:()=>o(x.key),title:\"\\u70B9\\u51FB\\u4FEE\\u6539\\u540D\\u79F0\"},x.name))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(m,x,v){return p.default.createElement(g.Switch,{checked:m,onChange:b=>{t[v].enable=b,n([...t])}})},width:60,align:\"center\"},{title:\"\\u6392\\u5E8F\",dataIndex:\"op\",render(m,x,v){return p.default.createElement(g.Space,{size:2,style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{icon:p.default.createElement(mt,null),size:\"small\",type:\"text\",disabled:v===0,onClick:()=>{n(b=>qe(b,v,v-1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}),p.default.createElement(g.Button,{icon:p.default.createElement(pt,null),size:\"small\",type:\"text\",disabled:v===t.length-1,onClick:()=>{n(b=>qe(b,v,v+1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}))},width:70,align:\"center\"}];return[...d.slice(0,1),...e.map(m=>E(y({},m),{width:50})),...d.slice(1)]},[t,r,e]),i=jn(qn(vt,{activationConstraint:{distance:1}})),s=({active:d,over:c})=>{d.id!==(c==null?void 0:c.id)&&n(m=>{let x=m.findIndex(b=>b.key===d.id),v=m.findIndex(b=>b.key===(c==null?void 0:c.id));return qe(m,x,v)})},l=async()=>{let d=await ee.get(\"/pans/list\");n(d)},u=async()=>{try{await ee.put(\"/pans/list\",{list:t}),g.message.success(\"\\u8BBE\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{await ee.delete(\"/pans/list\"),l(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}};return(0,p.useEffect)(()=>{l()},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{description:\"\\u62D6\\u52A8\\u884C\\u6216\\u4F7F\\u7528\\u4E0A\\u4E0B\\u6309\\u94AE\\u8C03\\u6574\\u7F51\\u76D8\\u987A\\u5E8F\\uFF0C\\u5173\\u95ED\\u7684\\u7F51\\u76D8\\u4E0D\\u4F1A\\u663E\\u793A\\u5728\\u64AD\\u653E\\u7EBF\\u8DEF\\u4E2D\",type:\"info\",style:{marginBottom:16},closable:!0}),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(Rn,{sensors:i,modifiers:[Yn],onDragEnd:s},p.default.createElement(Xn,{items:t.map(d=>d.key),strategy:Kn},p.default.createElement(g.Table,{components:{body:{row:Cf}},rowKey:\"key\",columns:a,dataSource:t,pagination:!1,size:\"small\",scroll:{x:\"max-content\"}})))),p.default.createElement(g.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",block:!0,onClick:u},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,block:!0,onClick:f},\"\\u91CD\\u7F6E\")))}function Of(){let[e]=g.Form.useForm(),[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(!1),a={labelCol:{xs:{span:24},sm:{span:4}},wrapperCol:{xs:{span:24},sm:{span:20}}},i={wrapperCol:{xs:{span:24,offset:0},sm:{span:20,offset:4}}},s=\"/danmu/setting\",l=async()=>{var c;o(!0);try{let x=((c=(await wr.default.get(\"/full-config\")).data.video)==null?void 0:c.sites)||[],b=[...new Set(x.map(C=>({key:C.key.replace(\"nodejs_\",\"\"),name:C.name})).filter(C=>C.key&&C.name))].map(C=>({label:\"\".concat(C.name),value:C.key}));n(b)}catch(m){console.error(\"\\u52A0\\u8F7D\\u722C\\u866B\\u5217\\u8868\\u5931\\u8D25:\",m),g.message.error(\"\\u52A0\\u8F7D\\u722C\\u866B\\u5217\\u8868\\u5931\\u8D25\")}finally{o(!1)}},u=async()=>{await l();let c=await ee.get(s);e.setFieldsValue(c)},f=async()=>{let c=await e.validateFields();try{await ee.put(s,c),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(m){console.error(m),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(m==null?void 0:m.message))}},d=async()=>{try{await ee.delete(s),u(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}};return(0,p.useEffect)(()=>{u()},[]),p.default.createElement(g.Form,E(y({form:e},a),{className:\"force-light-form-label\"}),p.default.createElement(g.Alert,{message:\"\\u5F00\\u542F\\u81EA\\u52A8\\u63A8\\u9001\\u65F6\\uFF0C\\u81EA\\u52A8\\u9009\\u53D6\\u6700\\u5FEB\\u54CD\\u5E94\\u7684API\",type:\"info\",style:{marginBottom:12}}),p.default.createElement(g.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(c,{add:m,remove:x},{errors:v})=>p.default.createElement(p.default.Fragment,null,c.map((b,C)=>p.default.createElement(g.Form.Item,E(y({label:C===0?\"API\\u5217\\u8868\":\"\",required:!1,key:b.key},C===0?a:i),{style:{marginBottom:12}}),p.default.createElement(g.Space,{direction:\"vertical\",style:{width:\"100%\"}},p.default.createElement(g.Form.Item,E(y({},b),{name:[b.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\",style:{width:\"100%\"}})),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,E(y({},b),{name:[b.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u522B\\u540D\",style:{width:\"100%\"}})),c.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(zt,null),onClick:()=>x(b.name)}))))),p.default.createElement(g.Form.Item,y({label:\"\"},i),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>m(),block:!0,icon:p.default.createElement(Ae,null)},\"\\u6DFB\\u52A0API\"),p.default.createElement(g.Form.ErrorList,{errors:v})))),p.default.createElement(g.Form.Item,y({label:null},i),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(A1,null))),p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\"},p.default.createElement(g.Switch,null)),p.default.createElement(g.Form.Item,{label:\"\\u63A8\\u9001\\u9ED1\\u540D\\u5355\",name:\"autoPushBlacklist\",tooltip:\"\\u9ED1\\u540D\\u5355\\u4E2D\\u7684\\u7AD9\\u70B9\\u4E0D\\u4F1A\\u81EA\\u52A8\\u63A8\\u9001\\u5F39\\u5E55\"},p.default.createElement(g.Select,{mode:\"multiple\",placeholder:\"\\u9009\\u62E9\\u4E0D\\u9700\\u8981\\u81EA\\u52A8\\u63A8\\u9001\\u5F39\\u5E55\\u7684\\u7AD9\\u70B9\",style:{width:\"100%\"},options:t,loading:r,showSearch:!1,virtual:!1,dropdownMatchSelectWidth:!1,dropdownRender:c=>p.default.createElement(\"div\",null,p.default.createElement(\"div\",{style:{padding:\"4px 8px\",color:\"#666\",fontSize:\"12px\"}},\"\\u70B9\\u51FB\\u9009\\u62E9\\u9ED1\\u540D\\u5355\\u7AD9\\u70B9\"),c)})),p.default.createElement(g.Form.Item,y({label:null},i),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:f,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:d,block:!0},\"\\u91CD\\u7F6E\"),p.default.createElement(g.Button,{onClick:l,loading:r,block:!0,type:\"default\"},\"\\u5237\\u65B0\\u7AD9\\u70B9\\u5217\\u8868\"))))}function A1(){let e=p.default.useCallback(()=>{try{window.location.href=\"/internal-danmu/ui\"}catch(t){console.error(t),g.message.error(\"\\u6253\\u5F00\\u5B8C\\u6574\\u5F39\\u5E55UI\\u5931\\u8D25\")}},[]);return p.default.createElement(g.Button,{icon:p.default.createElement(Ln,null),block:!0,onClick:e},\"\\u5185\\u7F6E\\u5F39\\u5E55UI\")}function Sf(){let[e]=g.Form.useForm(),t={labelCol:{span:0},wrapperCol:{span:24}},n={wrapperCol:{span:24,offset:0}},r=\"/t4/list\",o=async()=>{let s=await ee.get(r);e.setFieldsValue({list:s})},a=async()=>{let s=await e.validateFields();try{await ee.put(r,s.list),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u4FDD\\u5B58\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(l){console.error(l),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},i=async()=>{try{await ee.delete(r),o(),g.message.success(\"\\u6E05\\u7A7A\\u6210\\u529F\")}catch(s){console.error(s),g.message.error(\"\\u6E05\\u7A7A\\u5931\\u8D25\\uFF1A\".concat(s==null?void 0:s.message))}};return(0,p.useEffect)(()=>{o()},[]),p.default.createElement(g.Form,E(y({form:e},t),{className:\"force-light-form-label\"}),p.default.createElement(g.Form.List,{name:\"list\"},(s,{add:l,remove:u},{errors:f})=>p.default.createElement(p.default.Fragment,null,s.map((d,c)=>p.default.createElement(g.Form.Item,E(y({required:!1,key:d.key},t),{style:{marginBottom:12}}),p.default.createElement(g.Space,{direction:\"vertical\",style:{width:\"100%\"}},p.default.createElement(g.Form.Item,E(y({},d),{name:[d.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165T4\\u63A5\\u53E3\\u5730\\u5740\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165T4\\u63A5\\u53E3\\u5730\\u5740\",style:{width:\"100%\"}})),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,E(y({},d),{name:[d.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],noStyle:!0,rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]}),p.default.createElement(g.Input,{placeholder:\"\\u540D\\u79F0\",style:{width:\"100%\"}})),p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(zt,null),onClick:()=>u(d.name)}))))),p.default.createElement(g.Form.Item,y({label:\"\"},n),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:p.default.createElement(Ae,null)},\"\\u6DFB\\u52A0T4\\u63A5\\u53E3\"),p.default.createElement(g.Form.ErrorList,{errors:f})))),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:a,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:i,block:!0},\"\\u6E05\\u7A7A\"))))}function Ef(){let e=\"/cms/list\",[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(\"\"),[a,i]=(0,p.useState)([]),[s,l]=(0,p.useState)({}),u=[{title:\"\\u540D\\u79F0\",dataIndex:\"name\",key:\"name\"},{title:\"API\",dataIndex:\"address\",key:\"address\",render:w=>w.startsWith(\"csp_\")?p.default.createElement(g.Tag,{color:\"red\"},\"\\u5DF2\\u8FC7\\u6EE4: \",w):w},{title:\"\\u64CD\\u4F5C\",key:\"action\",width:80,render:(w,S)=>S.address.startsWith(\"csp_\")?p.default.createElement(g.Tag,{color:\"default\"},\"\\u5DF2\\u81EA\\u52A8\\u8FC7\\u6EE4\"):p.default.createElement(g.Button,{type:\"link\",danger:!0,onClick:()=>b(S.key)},\"\\u5220\\u9664\")}],f=w=>w.filter(S=>!(S.api||S.address||\"\").startsWith(\"csp_\")),d=async()=>{let w=await ee.get(e),S=f(w);i(S);let D=[...new Set(S.map(P=>{try{if(P.address&&P.address.startsWith(\"http\")){let N=new URL(P.address);return\"\".concat(N.protocol,\"//\").concat(N.host)}}catch(N){}return null}).filter(Boolean))];D.length>0&&n(D)},c=()=>{if(!r.trim()){g.message.error(\"\\u8BF7\\u8F93\\u5165CMS\\u63A5\\u53E3\\u5730\\u5740\");return}let w=r.trim();w.startsWith(\"http\")||(w=\"http://\"+w);try{new URL(w),t.includes(w)?g.message.warning(\"\\u8BE5\\u5730\\u5740\\u5DF2\\u5B58\\u5728\"):(n([...t,w]),o(\"\"))}catch(S){g.message.error(\"\\u8BF7\\u8F93\\u5165\\u6709\\u6548\\u7684URL\\u5730\\u5740\")}},m=w=>{let S=[...t];S.splice(w,1),n(S)},x=async(w,S)=>{l(E(y({},s),{[S]:!0}));try{let{data:D}=await wr.default.get(w.trim(),{timeout:1e4});if(D.sites&&D.sites.length){let P=f(D.sites),N=P.map(T=>({key:\"\".concat(w,\"-\").concat(T.api||T.name),name:T.name,address:T.api||w}));i(T=>{let B=new Set(T.map(te=>te.key)),Y=N.filter(te=>!B.has(te.key));return[...T,...Y]});let F=D.sites.length-P.length,V=\"\".concat(w,\" \\u89E3\\u6790\\u6210\\u529F\\uFF0C\\u65B0\\u589E\").concat(N.length,\"\\u4E2A\\u7AD9\\u70B9\");F>0&&(V+=\"\\uFF0C\\u81EA\\u52A8\\u8FC7\\u6EE4\".concat(F,\"\\u4E2Acsp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\")),g.message.success(V)}else g.message.warning(\"\".concat(w,\" \\u6CA1\\u6709\\u627E\\u5230\\u53EF\\u7528\\u7684\\u7AD9\\u70B9\\u6570\\u636E\"))}catch(D){console.error(D),g.message.error(\"\".concat(w,\" \\u63A5\\u53E3\\u89E3\\u6790\\u5931\\u8D25: \").concat(D.message))}finally{let D=y({},s);delete D[S],l(D)}},v=async()=>{if(t.length===0){g.message.error(\"\\u8BF7\\u5148\\u6DFB\\u52A0CMS\\u63A5\\u53E3\\u5730\\u5740\");return}window.confirm(\"\\u662F\\u5426\\u6E05\\u7A7A\\u73B0\\u6709\\u7AD9\\u70B9\\u6570\\u636E\\uFF0C\\u91CD\\u65B0\\u4ECE\\u6240\\u6709CMS\\u63A5\\u53E3\\u89E3\\u6790\\uFF1F\")&&i([]);let S=0;for(let D=0;D{i(a.filter(S=>S.key!==w))},C=()=>{i([])},h=async()=>{let w=f(a);try{await ee.put(e,w),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u4FDD\\u5B58\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u5171\\u4FDD\\u5B58\\u4E86\",w.length,\"\\u4E2A\\u7AD9\\u70B9\",p.default.createElement(\"br\",null),a.length-w.length>0&&\"\\u5DF2\\u81EA\\u52A8\\u8FC7\\u6EE4\".concat(a.length-w.length,\"\\u4E2Acsp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\"),p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(S){console.error(S),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(S==null?void 0:S.message))}},O=async()=>{try{await ee.delete(e),i([]),n([]),o(\"\"),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(w){console.error(w),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(w==null?void 0:w.message))}};return(0,p.useEffect)(()=>{d()},[]),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(g.Card,{title:\"CMS\\u63A5\\u53E3\\u5730\\u5740\\u7BA1\\u7406\",style:{marginBottom:16}},p.default.createElement(g.Space.Compact,{style:{width:\"100%\",marginBottom:12}},p.default.createElement(g.Input,{placeholder:\"\\u8F93\\u5165XPTV CMS\\u63A5\\u53E3\\u5730\\u5740 (\\u5982: http://example.com/api.php)\",value:r,onChange:w=>o(w.target.value),onPressEnter:c}),p.default.createElement(g.Button,{type:\"primary\",onClick:c},\"\\u6DFB\\u52A0\")),t.length>0&&p.default.createElement(\"div\",{style:{marginBottom:16}},p.default.createElement(g.Divider,null,\"\\u5DF2\\u6DFB\\u52A0\\u7684CMS\\u63A5\\u53E3\\u5730\\u5740 (\",t.length,\"\\u4E2A)\"),p.default.createElement(g.List,{size:\"small\",dataSource:t,renderItem:(w,S)=>p.default.createElement(g.List.Item,{actions:[p.default.createElement(g.Button,{key:\"parse\",type:\"link\",loading:s[S],onClick:()=>x(w,S)},\"\\u89E3\\u6790\"),p.default.createElement(g.Button,{key:\"delete\",type:\"link\",danger:!0,onClick:()=>m(S)},\"\\u5220\\u9664\")]},p.default.createElement(g.Tag,{color:\"blue\"},w))}),p.default.createElement(\"div\",{style:{marginTop:16,display:\"flex\",gap:\"8px\",flexWrap:\"wrap\"}},p.default.createElement(g.Button,{type:\"primary\",onClick:v,loading:Object.values(s).some(Boolean)},\"\\u6279\\u91CF\\u89E3\\u6790\\u6240\\u6709CMS\\u63A5\\u53E3\"),p.default.createElement(g.Button,{danger:!0,onClick:C},\"\\u6E05\\u7A7A\\u6240\\u6709\\u7AD9\\u70B9\")))),p.default.createElement(g.Card,{title:\"\\u89E3\\u6790\\u51FA\\u7684\\u7AD9\\u70B9\\u5217\\u8868\"},p.default.createElement(g.Alert,{message:\"\\u5DF2\\u89E3\\u6790\\u51FA \".concat(a.length,\" \\u4E2A\\u7AD9\\u70B9\\uFF0C\\u7CFB\\u7EDF\\u4F1A\\u81EA\\u52A8\\u8FC7\\u6EE4csp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\"),type:\"info\",showIcon:!0,style:{marginBottom:12}}),p.default.createElement(g.Table,{columns:u,dataSource:a,pagination:!1,rowKey:\"key\",scroll:{y:300},locale:{emptyText:\"\\u6682\\u65E0\\u7AD9\\u70B9\\u6570\\u636E\\uFF0C\\u8BF7\\u5148\\u6DFB\\u52A0CMS\\u63A5\\u53E3\\u5E76\\u89E3\\u6790\"}}),p.default.createElement(\"div\",{style:{marginTop:16,textAlign:\"center\"}},p.default.createElement(g.Button,{type:\"primary\",onClick:h,style:{marginRight:8}},\"\\u4FDD\\u5B58\\u7AD9\\u70B9\\u914D\\u7F6E (\",a.length,\"\\u4E2A)\"),p.default.createElement(g.Button,{danger:!0,onClick:O},\"\\u91CD\\u7F6E\\u6240\\u6709\\u914D\\u7F6E\"))))}var yr=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function ji(){let[e,t]=(0,p.useState)([]),[n,r]=(0,p.useState)(!1),[o,a]=(0,p.useState)(!1);(0,p.useEffect)(()=>{r(!0),ee.get(\"/emby/config\").then(s=>{let l=Array.isArray(s)?s:[];l.length===0?l=[{id:yr(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",server:\"\",enabled:!0,username:\"\",password:\"\",token:\"\",isJellyfin:!1,playStrategies:\"custom\",playStrategyOrder:[\"stream\",\"direct\",\"directPlay\",\"transcoding\",\"master\"]},{id:yr(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",server:\"\",enabled:!0,username:\"\",password:\"\",token:\"\",isJellyfin:!1,playStrategies:\"custom\",playStrategyOrder:[\"stream\",\"direct\",\"directPlay\",\"transcoding\",\"master\"]}]:l=l.map(u=>E(y({},u),{id:u.id?String(u.id):yr()})),t(l)}).catch(s=>{console.error(\"\\u52A0\\u8F7DEmby\\u914D\\u7F6E\\u51FA\\u9519:\",s),t([{id:yr(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",server:\"\",enabled:!0,isJellyfin:!1,playStrategies:\"custom\"},{id:yr(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",server:\"\",enabled:!0,isJellyfin:!1,playStrategies:\"custom\"}])}).finally(()=>{r(!1),a(!0)})},[]);let i=async()=>{r(!0);try{await ee.put(\"/emby/config\",e),g.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(s){g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+s.message)}finally{r(!1)}};return o?p.default.createElement(g.Card,{bordered:!1},p.default.createElement(Du,{config:{emby:e},updateConfig:s=>t(s.emby)}),p.default.createElement(g.Divider,null),p.default.createElement(g.Button,{type:\"primary\",block:!0,size:\"large\",onClick:i,loading:n},\"\\u4FDD\\u5B58\\u914D\\u7F6E\")):p.default.createElement(g.Card,{loading:!0,bordered:!1})}function Ri(){let[e]=g.Form.useForm(),t=\"/pansou/config\",n=g.Form.useWatch(\"pancheck_mode\",e)||\"off\",r=async()=>{let a=await ee.get(t),i=E(y({},a),{pancheck_mode:a.pancheck_mode||(a.pancheck_enabled?\"pancheck\":\"off\"),selected_platforms:a.selected_platforms_str||(Array.isArray(a.selected_platforms)?a.selected_platforms.join(\",\"):\"\")});e.setFieldsValue(i)},o=async()=>{let a=await e.validateFields();await ee.put(t,a),g.message.success(\"Pansou\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\")};return(0,p.useEffect)(()=>{r()},[]),p.default.createElement(g.Card,{variant:\"borderless\"},p.default.createElement(g.Form,{form:e,layout:\"vertical\"},p.default.createElement(g.Form.Item,{label:\"\\u76D8\\u641C API (\\u591A\\u4E2A\\u4EE5\\u9017\\u53F7\\u5206\\u9694)\",name:\"api_urls\"},p.default.createElement(g.Input.TextArea,{rows:2})),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u9891\\u9053\",name:\"channels\"},p.default.createElement(g.Input,{placeholder:\"\\u7559\\u7A7A\\u641C\\u7D22\\u5168\\u90E8\\u9891\\u9053\"}))),p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u63D2\\u4EF6\",name:\"plugins\"},p.default.createElement(g.Input,{placeholder:\"\\u7559\\u7A7A\\u641C\\u7D22\\u5168\\u90E8\\u63D2\\u4EF6\"})))),p.default.createElement(g.Form.Item,{label:\"\\u641C\\u7D22\\u7684\\u7F51\\u76D8\\u7C7B\\u578B\",name:\"cloud_types\",extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\",color:\"#666\"}},\"\\u7559\\u7A7A\\u9ED8\\u8BA4\\u641C\\u7D22\\uFF1Abaidu,aliyun,quark,tianyi,uc,mobile,115,123\",p.default.createElement(\"br\",null),\"\\u591A\\u4E2A\\u7528\\u9017\\u53F7\\u5206\\u9694\")},p.default.createElement(g.Input,{placeholder:\"baidu,aliyun,quark,tianyi,uc,mobile,115,123\"})),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u5305\\u542B\\u8BCD (Include)\",name:\"include\"},p.default.createElement(g.Input,{placeholder:\"\\u591A\\u4E2A\\u9017\\u53F7\\u5206\\u9694\"}))),p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u6392\\u9664\\u8BCD (Exclude)\",name:\"exclude\"},p.default.createElement(g.Input,{placeholder:\"\\u591A\\u4E2A\\u9017\\u53F7\\u5206\\u9694\"})))),p.default.createElement(g.Form.Item,{label:\"\\u68C0\\u6D4B\\u6A21\\u5F0F\",name:\"pancheck_mode\",initialValue:\"off\",extra:\"\\u5173\\u95ED\\uFF1A\\u4E0D\\u68C0\\u6D4B\\uFF1B\\u68C0\\u6D4B\\uFF1A\\u590D\\u7528 pansou \\u81EA\\u5E26\\u68C0\\u6D4B\\u63A5\\u53E3\\uFF1Bpancheck\\uFF1A\\u4F7F\\u7528\\u5916\\u90E8 pancheck \\u670D\\u52A1\"},p.default.createElement(g.Radio.Group,null,p.default.createElement(g.Radio.Button,{value:\"off\"},\"\\u5173\\u95ED\"),p.default.createElement(g.Radio.Button,{value:\"detect\"},\"\\u68C0\\u6D4B\"),p.default.createElement(g.Radio.Button,{value:\"pancheck\"},\"pancheck\"))),p.default.createElement(g.Form.Item,{label:\"\\u68C0\\u6D4B\\u7684\\u7F51\\u76D8\\u7C7B\\u578B\",name:\"selected_platforms\",extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\",color:\"#666\"}},\"\\u7559\\u7A7A\\u9ED8\\u8BA4\\u68C0\\u6D4B\\uFF1Aquark,uc,tianyi,pan123,pan115,cmcc,baidu,aliyun\",p.default.createElement(\"br\",null),\"\\u591A\\u4E2A\\u7528\\u9017\\u53F7\\u5206\\u9694\")},p.default.createElement(g.Input,{placeholder:\"quark,uc,tianyi,pan123,pan115,cmcc,baidu,aliyun\"})),n===\"pancheck\"?p.default.createElement(g.Form.Item,{label:\"Pancheck \\u670D\\u52A1\\u5730\\u5740\",name:\"pancheck\"},p.default.createElement(g.Input,{placeholder:\"https://vyzdeslmqkfx.ap-northeast-1.clawcloudrun.com\"})):null,p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:8},p.default.createElement(g.Form.Item,{label:\"\\u6BCF\\u7C7B\\u7F51\\u76D8\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\",extra:\"0 \\u4E3A\\u4E0D\\u9650\\u5236\\uFF0C\\u9ED8\\u8BA4 0\"},p.default.createElement(g.InputNumber,{min:0,style:{width:\"100%\"}})))),p.default.createElement(g.Form.Item,null,p.default.createElement(g.Button,{type:\"primary\",onClick:o,block:!0},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"))))}function F1(){let[e,t]=(0,p.useState)(!1);return(0,p.useEffect)(()=>{let r=()=>{t(window.innerWidth<768)};return r(),window.addEventListener(\"resize\",r),()=>window.removeEventListener(\"resize\",r)},[]),p.default.createElement(\"div\",{className:\"app-layout\"},p.default.createElement(\"div\",{className:\"app-header-row\"},p.default.createElement(g.Space,{className:\"import-export-buttons\"},p.default.createElement(g.Upload,y({},{accept:\".json\",showUploadList:!1,beforeUpload(r){let o=new FileReader;return o.onload=async a=>{try{let i=JSON.parse(a.target.result);console.log(\"Parsed JSON data:\",i),await ee.put(\"/backup\",i),g.message.success(\"\".concat(r.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(i){g.message.error(\"\".concat(r.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(i.message)),console.error(\"Error parsing JSON:\",i)}},o.readAsText(r),!1}}),p.default.createElement(g.Button,{type:\"primary\",size:\"small\"},\"\\u5BFC\\u5165\")),p.default.createElement(g.Button,{type:\"default\",size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\"))),p.default.createElement(g.Tabs,{defaultActiveKey:\"cloud_drives\",centered:e,tabPosition:\"top\",style:{minHeight:\"100vh\"},className:\"force-light-tabs\"},p.default.createElement(Cn,{tab:\"\\u7F51\\u76D8\",key:\"cloud_drives\"},p.default.createElement(hf,null)),p.default.createElement(Cn,{tab:\"\\u7AD9\\u6E90\",key:\"sources\"},p.default.createElement(yf,null)),p.default.createElement(Cn,{tab:\"\\u5F39\\u5E55\",key:\"danmu\"},p.default.createElement(Of,null)),p.default.createElement(Cn,{tab:\"T4/CMS\",key:\"t4_cms\"},p.default.createElement(g.Tabs,{animated:{inkBar:!0,tabPane:!0},destroyInactiveTabPane:!0,tabPosition:e?\"top\":\"left\",tabBarStyle:{width:e?\"auto\":120,marginBottom:16,whiteSpace:\"nowrap\",overflowX:\"auto\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"},className:\"force-light-tabs\"},p.default.createElement(Cn,{tab:\"T4\\u63A5\\u53E3\",key:\"t4\"},p.default.createElement(Sf,null)),p.default.createElement(Cn,{tab:\"CMS\\u63A5\\u53E3\",key:\"cms\"},p.default.createElement(Ef,null))))))}function P1(){(0,wf.createRoot)(document.getElementById(\"app\")).render(p.default.createElement(F1,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n\nuse-sync-external-store/cjs/use-sync-external-store-with-selector.production.js:\n (**\n * @license React\n * use-sync-external-store-with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n", + "var bm=Object.create;var gr=Object.defineProperty,xm=Object.defineProperties,vm=Object.getOwnPropertyDescriptor,ym=Object.getOwnPropertyDescriptors,wm=Object.getOwnPropertyNames,wo=Object.getOwnPropertySymbols,Cm=Object.getPrototypeOf,oi=Object.prototype.hasOwnProperty,hl=Object.prototype.propertyIsEnumerable;var gl=(e,t,n)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,C=(e,t)=>{for(var n in t||(t={}))oi.call(t,n)&&gl(e,n,t[n]);if(wo)for(var n of wo(t))hl.call(t,n)&&gl(e,n,t[n]);return e},I=(e,t)=>xm(e,ym(t));var $t=(e,t)=>{var n={};for(var r in e)oi.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&wo)for(var r of wo(e))t.indexOf(r)<0&&hl.call(e,r)&&(n[r]=e[r]);return n};var Pe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Sm=(e,t)=>{for(var n in t)gr(e,n,{get:t[n],enumerable:!0})},bl=(e,t,n,r)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let o of wm(t))!oi.call(e,o)&&o!==n&&gr(e,o,{get:()=>t[o],enumerable:!(r=vm(t,o))||r.enumerable});return e};var _=(e,t,n)=>(n=e!=null?bm(Cm(e)):{},bl(t||!e||!e.__esModule?gr(n,\"default\",{value:e,enumerable:!0}):n,e)),Om=e=>bl(gr({},\"__esModule\",{value:!0}),e);var J=Pe((JC,xl)=>{xl.exports=window.React});var Co=Pe((QC,vl)=>{vl.exports=window.ReactDOM});var wl=Pe(ai=>{\"use strict\";var yl=Co();ai.createRoot=yl.createRoot,ai.hydrateRoot=yl.hydrateRoot;var ZC});var _e=Pe((eS,Cl)=>{Cl.exports=window.antd});var Je=Pe((tS,Sl)=>{Sl.exports=window.axios});var Dl=Pe((nS,Ol)=>{Ol.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r{\"use strict\";var Dm=Dl(),Il={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Im=\"Copy to clipboard: #{key}, Enter\";function Em(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function Tm(e,t){var n,r,o,a,i,s,l=!1;t||(t={}),n=t.debug||!1;try{o=Dm(),a=document.createRange(),i=document.getSelection(),s=document.createElement(\"span\"),s.textContent=e,s.ariaHidden=\"true\",s.style.all=\"unset\",s.style.position=\"fixed\",s.style.top=0,s.style.clip=\"rect(0, 0, 0, 0)\",s.style.whiteSpace=\"pre\",s.style.webkitUserSelect=\"text\",s.style.MozUserSelect=\"text\",s.style.msUserSelect=\"text\",s.style.userSelect=\"text\",s.addEventListener(\"copy\",function(f){if(f.stopPropagation(),t.format)if(f.preventDefault(),typeof f.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Il[t.format]||Il.default;window.clipboardData.setData(d,e)}else f.clipboardData.clearData(),f.clipboardData.setData(t.format,e);t.onCopy&&(f.preventDefault(),t.onCopy(f.clipboardData))}),document.body.appendChild(s),a.selectNodeContents(s),i.addRange(a);var c=document.execCommand(\"copy\");if(!c)throw new Error(\"copy command was unsuccessful\");l=!0}catch(f){n&&console.error(\"unable to copy using execCommand: \",f),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),l=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),r=Em(\"message\"in t?t.message:Im),window.prompt(r,e)}}finally{i&&(typeof i.removeRange==\"function\"?i.removeRange(a):i.removeAllRanges()),s&&document.body.removeChild(s),o()}return l}El.exports=Tm});var Ml=Pe((TS,Io)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var o=\"\",a=0;a{\"use strict\";var Vr=J();function zb(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var $b=typeof Object.is==\"function\"?Object.is:zb,Ub=Vr.useSyncExternalStore,Wb=Vr.useRef,Gb=Vr.useEffect,jb=Vr.useMemo,Hb=Vr.useDebugValue;qc.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var a=Wb(null);if(a.current===null){var i={hasValue:!1,value:null};a.current=i}else i=a.current;a=jb(function(){function l(m){if(!c){if(c=!0,f=m,m=r(m),o!==void 0&&i.hasValue){var h=i.value;if(o(h,m))return d=h}return d=m}if(h=d,$b(f,m))return h;var x=r(m);return o!==void 0&&o(h,x)?(f=m,h):(f=m,d=x)}var c=!1,f,d,u=n===void 0?null:n;return[function(){return l(t())},u===null?void 0:function(){return l(u())}]},[t,n,r,o]);var s=Ub(e,a[0],a[1]);return Gb(function(){i.hasValue=!0,i.value=s},[s]),Hb(s),s}});var Xc=Pe((DI,Kc)=>{\"use strict\";Kc.exports=Yc()});var Es=Pe((ZI,Gf)=>{function yw(e){var t=typeof e;return e!=null&&(t==\"object\"||t==\"function\")}Gf.exports=yw});var Hf=Pe((RI,jf)=>{var ww=typeof global==\"object\"&&global&&global.Object===Object&&global;jf.exports=ww});var Ts=Pe((eE,qf)=>{var Cw=Hf(),Sw=typeof self==\"object\"&&self&&self.Object===Object&&self,Ow=Cw||Sw||Function(\"return this\")();qf.exports=Ow});var Kf=Pe((tE,Yf)=>{var Dw=Ts(),Iw=function(){return Dw.Date.now()};Yf.exports=Iw});var Jf=Pe((nE,Xf)=>{var Ew=/\\s/;function Tw(e){for(var t=e.length;t--&&Ew.test(e.charAt(t)););return t}Xf.exports=Tw});var Zf=Pe((rE,Qf)=>{var kw=Jf(),Nw=/^\\s+/;function Fw(e){return e&&e.slice(0,kw(e)+1).replace(Nw,\"\")}Qf.exports=Fw});var ks=Pe((oE,Rf)=>{var Aw=Ts(),Pw=Aw.Symbol;Rf.exports=Pw});var rp=Pe((aE,np)=>{var ep=ks(),tp=Object.prototype,_w=tp.hasOwnProperty,Bw=tp.toString,io=ep?ep.toStringTag:void 0;function Lw(e){var t=_w.call(e,io),n=e[io];try{e[io]=void 0;var r=!0}catch(a){}var o=Bw.call(e);return r&&(t?e[io]=n:delete e[io]),o}np.exports=Lw});var ap=Pe((iE,op)=>{var Mw=Object.prototype,Vw=Mw.toString;function zw(e){return Vw.call(e)}op.exports=zw});var dp=Pe((sE,lp)=>{var ip=ks(),$w=rp(),Uw=ap(),Ww=\"[object Null]\",Gw=\"[object Undefined]\",sp=ip?ip.toStringTag:void 0;function jw(e){return e==null?e===void 0?Gw:Ww:sp&&sp in Object(e)?$w(e):Uw(e)}lp.exports=jw});var up=Pe((lE,cp)=>{function Hw(e){return e!=null&&typeof e==\"object\"}cp.exports=Hw});var pp=Pe((dE,fp)=>{var qw=dp(),Yw=up(),Kw=\"[object Symbol]\";function Xw(e){return typeof e==\"symbol\"||Yw(e)&&qw(e)==Kw}fp.exports=Xw});var bp=Pe((cE,hp)=>{var Jw=Zf(),mp=Es(),Qw=pp(),gp=NaN,Zw=/^[-+]0x[0-9a-f]+$/i,Rw=/^0b[01]+$/i,eC=/^0o[0-7]+$/i,tC=parseInt;function nC(e){if(typeof e==\"number\")return e;if(Qw(e))return gp;if(mp(e)){var t=typeof e.valueOf==\"function\"?e.valueOf():e;e=mp(t)?t+\"\":t}if(typeof e!=\"string\")return e===0?e:+e;e=Jw(e);var n=Rw.test(e);return n||eC.test(e)?tC(e.slice(2),n?2:8):Zw.test(e)?gp:+e}hp.exports=nC});var yp=Pe((uE,vp)=>{var rC=Es(),Ns=Kf(),xp=bp(),oC=\"Expected a function\",aC=Math.max,iC=Math.min;function sC(e,t,n){var r,o,a,i,s,l,c=0,f=!1,d=!1,u=!0;if(typeof e!=\"function\")throw new TypeError(oC);t=xp(t)||0,rC(n)&&(f=!!n.leading,d=\"maxWait\"in n,a=d?aC(xp(n.maxWait)||0,t):a,u=\"trailing\"in n?!!n.trailing:u);function m(O){var F=r,T=o;return r=o=void 0,c=O,i=e.apply(T,F),i}function h(O){return c=O,s=setTimeout(y,t),f?m(O):i}function x(O){var F=O-l,T=O-c,P=t-F;return d?iC(P,a-T):P}function v(O){var F=O-l,T=O-c;return l===void 0||F>=t||F<0||d&&T>=a}function y(){var O=Ns();if(v(O))return b(O);s=setTimeout(y,x(O))}function b(O){return s=void 0,u&&r?m(O):(r=o=void 0,i)}function S(){s!==void 0&&clearTimeout(s),c=0,r=l=o=s=void 0}function w(){return s===void 0?i:b(Ns())}function D(){var O=Ns(),F=v(O);if(r=arguments,o=this,l=O,F){if(s===void 0)return h(l);if(d)return clearTimeout(s),s=setTimeout(y,t),m(l)}return s===void 0&&(s=setTimeout(y,t)),i}return D.cancel=S,D.flush=w,D}vp.exports=sC});var KC={};Sm(KC,{AccountInfo:()=>zs,AliQrcodeCard:()=>Vs,CMS:()=>lm,DanmuSetting:()=>im,EmbyConfigWithSave:()=>tl,Pans:()=>Ws,PansouSetting:()=>nl,QrcodeCard:()=>Kt,QrcodeImage:()=>al,SiteDomainSetting:()=>Ra,Sites:()=>el,T4:()=>sm,TGChannel:()=>Zs,TGSou:()=>Qs,UCDualQrcodeCard:()=>Us,UCUt:()=>Rs,XunleiAccountInfo:()=>$s,renderClient:()=>YC});module.exports=Om(KC);var p=_(J(),1),rm=_(wl(),1),g=_(_e(),1),xo=_(Je(),1),ei=_(Tl(),1);var kl=_(J()),km=(0,kl.createContext)({}),So=km;function R(){return R=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);nparseFloat(o));for(let o=0;o<3;o+=1)r[o]=t(r[o]||0,n[o]||\"\",o);return n[3]?r[3]=n[3].includes(\"%\")?r[3]/100:r[3]:r[3]=1,r}var Vl=(e,t,n)=>n===0?e:e/100;function hr(e,t){let n=t||255;return e>n?n:e<0?0:e}var pn=class e{constructor(t){Qe(this,\"isValid\",!0),Qe(this,\"r\",0),Qe(this,\"g\",0),Qe(this,\"b\",0),Qe(this,\"a\",1),Qe(this,\"_h\",void 0),Qe(this,\"_s\",void 0),Qe(this,\"_l\",void 0),Qe(this,\"_v\",void 0),Qe(this,\"_max\",void 0),Qe(this,\"_min\",void 0),Qe(this,\"_brightness\",void 0);function n(r){return r[0]in t&&r[1]in t&&r[2]in t}if(t)if(typeof t==\"string\"){let o=function(a){return r.startsWith(a)},r=t.trim();/^#?[A-F\\d]{3,8}$/i.test(r)?this.fromHexString(r):o(\"rgb\")?this.fromRgbString(r):o(\"hsl\")?this.fromHslString(r):(o(\"hsv\")||o(\"hsb\"))&&this.fromHsvString(r)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=hr(t.r),this.g=hr(t.g),this.b=hr(t.b),this.a=typeof t.a==\"number\"?hr(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(a){let i=a/255;return i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4)}let n=t(this.r),r=t(this.g),o=t(this.b);return .2126*n+.7152*r+.0722*o}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=Ze(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g\"u\"){let t=this.getMax()-this.getMin();t===0?this._s=0:this._s=t/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(t=10){let n=this.getHue(),r=this.getSaturation(),o=this.getLightness()-t/100;return o<0&&(o=0),this._c({h:n,s:r,l:o,a:this.a})}lighten(t=10){let n=this.getHue(),r=this.getSaturation(),o=this.getLightness()+t/100;return o>1&&(o=1),this._c({h:n,s:r,l:o,a:this.a})}mix(t,n=50){let r=this._c(t),o=n/100,a=s=>(r[s]-this[s])*o+this[s],i={r:Ze(a(\"r\")),g:Ze(a(\"g\")),b:Ze(a(\"b\")),a:Ze(a(\"a\")*100)/100};return this._c(i)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),r=this.a+n.a*(1-this.a),o=a=>Ze((this[a]*this.a+n[a]*n.a*(1-this.a))/r);return this._c({r:o(\"r\"),g:o(\"g\"),b:o(\"b\"),a:r})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let r=(this.g||0).toString(16);t+=r.length===2?r:\"0\"+r;let o=(this.b||0).toString(16);if(t+=o.length===2?o:\"0\"+o,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let a=Ze(this.a*255).toString(16);t+=a.length===2?a:\"0\"+a}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=Ze(this.getSaturation()*100),r=Ze(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(r,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(r,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,r){let o=this.clone();return o[t]=hr(n,r),o}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function r(o,a){return parseInt(n[o]+n[a||o],16)}n.length<6?(this.r=r(0),this.g=r(1),this.b=r(2),this.a=n[3]?r(3)/255:1):(this.r=r(0,1),this.g=r(2,3),this.b=r(4,5),this.a=n[6]?r(6,7)/255:1)}fromHsl({h:t,s:n,l:r,a:o}){if(this._h=t%360,this._s=n,this._l=r,this.a=typeof o==\"number\"?o:1,n<=0){let u=Ze(r*255);this.r=u,this.g=u,this.b=u}let a=0,i=0,s=0,l=t/60,c=(1-Math.abs(2*r-1))*n,f=c*(1-Math.abs(l%2-1));l>=0&&l<1?(a=c,i=f):l>=1&&l<2?(a=f,i=c):l>=2&&l<3?(i=c,s=f):l>=3&&l<4?(i=f,s=c):l>=4&&l<5?(a=f,s=c):l>=5&&l<6&&(a=c,s=f);let d=r-c/2;this.r=Ze((a+d)*255),this.g=Ze((i+d)*255),this.b=Ze((s+d)*255)}fromHsv({h:t,s:n,v:r,a:o}){this._h=t%360,this._s=n,this._v=r,this.a=typeof o==\"number\"?o:1;let a=Ze(r*255);if(this.r=a,this.g=a,this.b=a,n<=0)return;let i=t/60,s=Math.floor(i),l=i-s,c=Ze(r*(1-n)*255),f=Ze(r*(1-n*l)*255),d=Ze(r*(1-n*(1-l))*255);switch(s){case 0:this.g=d,this.b=c;break;case 1:this.r=f,this.b=c;break;case 2:this.r=c,this.b=d;break;case 3:this.r=c,this.g=f;break;case 4:this.r=d,this.g=c;break;case 5:default:this.g=c,this.b=f;break}}fromHsvString(t){let n=si(t,Vl);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=si(t,Vl);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=si(t,(r,o)=>o.includes(\"%\")?Ze(r/100*255):r);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var Eo=2,zl=.16,Nm=.05,Fm=.05,Am=.15,Gl=5,jl=4,Pm=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function $l(e,t,n){var r;return Math.round(e.h)>=60&&Math.round(e.h)<=240?r=n?Math.round(e.h)-Eo*t:Math.round(e.h)+Eo*t:r=n?Math.round(e.h)+Eo*t:Math.round(e.h)-Eo*t,r<0?r+=360:r>=360&&(r-=360),r}function Ul(e,t,n){if(e.h===0&&e.s===0)return e.s;var r;return n?r=e.s-zl*t:t===jl?r=e.s+zl:r=e.s+Nm*t,r>1&&(r=1),n&&t===Gl&&r>.1&&(r=.1),r<.06&&(r=.06),Math.round(r*100)/100}function Wl(e,t,n){var r;return n?r=e.v+Fm*t:r=e.v-Am*t,r=Math.max(0,Math.min(1,r)),Math.round(r*100)/100}function To(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],r=new pn(e),o=r.toHsv(),a=Gl;a>0;a-=1){var i=new pn({h:$l(o,a,!0),s:Ul(o,a,!0),v:Wl(o,a,!0)});n.push(i)}n.push(r);for(var s=1;s<=jl;s+=1){var l=new pn({h:$l(o,s),s:Ul(o,s),v:Wl(o,s)});n.push(l)}return t.theme===\"dark\"?Pm.map(function(c){var f=c.index,d=c.amount;return new pn(t.backgroundColor||\"#141414\").mix(n[f],d).toHexString()}):n.map(function(c){return c.toHexString()})}var Hl=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];Hl.primary=Hl[5];var ql=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];ql.primary=ql[5];var Yl=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];Yl.primary=Yl[5];var Kl=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];Kl.primary=Kl[5];var Xl=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];Xl.primary=Xl[5];var Jl=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Jl.primary=Jl[5];var Ql=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];Ql.primary=Ql[5];var Zl=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Zl.primary=Zl[5];var ko=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];ko.primary=ko[5];var Rl=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];Rl.primary=Rl[5];var ed=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];ed.primary=ed[5];var td=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];td.primary=td[5];var nd=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];nd.primary=nd[5];var rd=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];rd.primary=rd[5];var od=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];od.primary=od[5];var ad=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];ad.primary=ad[5];var id=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];id.primary=id[5];var sd=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];sd.primary=sd[5];var ld=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];ld.primary=ld[5];var dd=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];dd.primary=dd[5];var cd=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];cd.primary=cd[5];var ud=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];ud.primary=ud[5];var fd=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];fd.primary=fd[5];var pd=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];pd.primary=pd[5];var md=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];md.primary=md[5];var gd=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];gd.primary=gd[5];function hd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function yt(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):_m}function ui(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Bm(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function fi(e){return Array.from((ci.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function yd(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!li())return null;var n=t.csp,r=t.prepend,o=t.priority,a=o===void 0?0:o,i=Bm(r),s=i===\"prependQueue\",l=document.createElement(\"style\");l.setAttribute(bd,i),s&&a&&l.setAttribute(xd,\"\".concat(a)),n!=null&&n.nonce&&(l.nonce=n==null?void 0:n.nonce),l.innerHTML=e;var c=ui(t),f=c.firstChild;if(r){if(s){var d=(t.styles||fi(c)).filter(function(u){if(![\"prepend\",\"prependQueue\"].includes(u.getAttribute(bd)))return!1;var m=Number(u.getAttribute(xd)||0);return a>=m});if(d.length)return c.insertBefore(l,d[d.length-1].nextSibling),l}c.insertBefore(l,f)}else c.appendChild(l);return l}function Lm(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=ui(t);return(t.styles||fi(n)).find(function(r){return r.getAttribute(vd(t))===e})}function Mm(e,t){var n=ci.get(e);if(!n||!di(document,n)){var r=yd(\"\",t),o=r.parentNode;ci.set(e,o),e.removeChild(r)}}function wd(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=ui(n),o=fi(r),a=yt(yt({},n),{},{styles:o});Mm(r,a);var i=Lm(t,a);if(i){var s,l;if((s=a.csp)!==null&&s!==void 0&&s.nonce&&i.nonce!==((l=a.csp)===null||l===void 0?void 0:l.nonce)){var c;i.nonce=(c=a.csp)===null||c===void 0?void 0:c.nonce}return i.innerHTML!==e&&(i.innerHTML=e),i}var f=yd(e,a);return f.setAttribute(vd(a),t),f}function Cd(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Vm(e){return Cd(e)instanceof ShadowRoot}function Sd(e){return Vm(e)?Cd(e):null}var pi={},zm=[],$m=function(t){zm.push(t)};function Um(e,t){if(0)var n}function Wm(e,t){if(0)var n}function Gm(){pi={}}function Od(e,t,n){!t&&!pi[n]&&(e(!1,n),pi[n]=!0)}function No(e,t){Od(Um,e,t)}function jm(e,t){Od(Wm,e,t)}No.preMessage=$m;No.resetWarned=Gm;No.noteOnce=jm;var Dd=No;var mn=_(J());function Hm(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ed(e,t){Dd(e,\"[@ant-design/icons] \".concat(t))}function mi(e){return Ut(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ut(e.icon)===\"object\"||typeof e.icon==\"function\")}function Id(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var r=e[n];switch(n){case\"class\":t.className=r,delete t.class;break;default:delete t[n],t[Hm(n)]=r}return t},{})}function Fo(e,t,n){return n?mn.default.createElement(e.tag,yt(yt({key:t},Id(e.attrs)),n),(e.children||[]).map(function(r,o){return Fo(r,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(o))})):mn.default.createElement(e.tag,yt({key:t},Id(e.attrs)),(e.children||[]).map(function(r,o){return Fo(r,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(o))}))}function gi(e){return To(e)[0]}function Ao(e){return e?Array.isArray(e)?e:[e]:[]}var qm=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",Td=function(t){var n=(0,mn.useContext)(So),r=n.csp,o=n.prefixCls,a=n.layer,i=qm;o&&(i=i.replace(/anticon/g,o)),a&&(i=\"@layer \".concat(a,\" {\\n\").concat(i,\"\\n}\")),(0,mn.useEffect)(function(){var s=t.current,l=Sd(s);wd(i,\"@ant-design-icons\",{prepend:!a,csp:r,attachTo:l})},[])};var Ym=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],br={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Km(e){var t=e.primaryColor,n=e.secondaryColor;br.primaryColor=t,br.secondaryColor=n||gi(t),br.calculated=!!n}function Xm(){return yt({},br)}var Po=function(t){var n=t.icon,r=t.className,o=t.onClick,a=t.style,i=t.primaryColor,s=t.secondaryColor,l=Do(t,Ym),c=kd.useRef(),f=br;if(i&&(f={primaryColor:i,secondaryColor:s||gi(i)}),Td(c),Ed(mi(n),\"icon should be icon definiton, but got \".concat(n)),!mi(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=yt(yt({},d),{},{icon:d.icon(f.primaryColor,f.secondaryColor)})),Fo(d.icon,\"svg-\".concat(d.name),yt(yt({className:r,onClick:o,style:a,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},l),{},{ref:c}))};Po.displayName=\"IconReact\";Po.getTwoToneColors=Xm;Po.setTwoToneColors=Km;var xr=Po;function hi(e){var t=Ao(e),n=Oo(t,2),r=n[0],o=n[1];return xr.setTwoToneColors({primaryColor:r,secondaryColor:o})}function Nd(){var e=xr.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Jm=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];hi(ko.primary);var _o=gn.forwardRef(function(e,t){var n=e.className,r=e.icon,o=e.spin,a=e.rotate,i=e.tabIndex,s=e.onClick,l=e.twoToneColor,c=Do(e,Jm),f=gn.useContext(So),d=f.prefixCls,u=d===void 0?\"anticon\":d,m=f.rootClassName,h=(0,Fd.default)(m,u,Qe(Qe({},\"\".concat(u,\"-\").concat(r.name),!!r.name),\"\".concat(u,\"-spin\"),!!o||r.name===\"loading\"),n),x=i;x===void 0&&s&&(x=-1);var v=a?{msTransform:\"rotate(\".concat(a,\"deg)\"),transform:\"rotate(\".concat(a,\"deg)\")}:void 0,y=Ao(l),b=Oo(y,2),S=b[0],w=b[1];return gn.createElement(\"span\",R({role:\"img\",\"aria-label\":r.name},c,{ref:t,tabIndex:x,onClick:s,className:h}),gn.createElement(xr,{icon:r,primaryColor:S,secondaryColor:w,style:v}))});_o.displayName=\"AntdIcon\";_o.getTwoToneColor=Nd;_o.setTwoToneColor=hi;var oe=_o;var Bo=_(J());var Qm={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M917.7 148.8l-42.4-42.4c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-76.1 76.1a199.27 199.27 0 00-112.1-34.3c-51.2 0-102.4 19.5-141.5 58.6L432.3 308.7a8.03 8.03 0 000 11.3L704 591.7c1.6 1.6 3.6 2.3 5.7 2.3 2 0 4.1-.8 5.7-2.3l101.9-101.9c68.9-69 77-175.7 24.3-253.5l76.1-76.1c3.1-3.2 3.1-8.3 0-11.4zM769.1 441.7l-59.4 59.4-186.8-186.8 59.4-59.4c24.9-24.9 58.1-38.7 93.4-38.7 35.3 0 68.4 13.7 93.4 38.7 24.9 24.9 38.7 58.1 38.7 93.4 0 35.3-13.8 68.4-38.7 93.4zm-190.2 105a8.03 8.03 0 00-11.3 0L501 613.3 410.7 523l66.7-66.7c3.1-3.1 3.1-8.2 0-11.3L441 408.6a8.03 8.03 0 00-11.3 0L363 475.3l-43-43a7.85 7.85 0 00-5.7-2.3c-2 0-4.1.8-5.7 2.3L206.8 534.2c-68.9 69-77 175.7-24.3 253.5l-76.1 76.1a8.03 8.03 0 000 11.3l42.4 42.4c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l76.1-76.1c33.7 22.9 72.9 34.3 112.1 34.3 51.2 0 102.4-19.5 141.5-58.6l101.9-101.9c3.1-3.1 3.1-8.2 0-11.3l-43-43 66.7-66.7c3.1-3.1 3.1-8.2 0-11.3l-36.6-36.2zM441.7 769.1a131.32 131.32 0 01-93.4 38.7c-35.3 0-68.4-13.7-93.4-38.7a131.32 131.32 0 01-38.7-93.4c0-35.3 13.7-68.4 38.7-93.4l59.4-59.4 186.8 186.8-59.4 59.4z\"}}]},name:\"api\",theme:\"outlined\"},Ad=Qm;var Zm=function(t,n){return Bo.createElement(oe,R({},t,{ref:n,icon:Ad}))},Rm=Bo.forwardRef(Zm),Lo=Rm;var Mo=_(J());var eg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M862 465.3h-81c-4.6 0-9 2-12.1 5.5L550 723.1V160c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v563.1L255.1 470.8c-3-3.5-7.4-5.5-12.1-5.5h-81c-6.8 0-10.5 8.1-6 13.2L487.9 861a31.96 31.96 0 0048.3 0L868 478.5c4.5-5.2.8-13.2-6-13.2z\"}}]},name:\"arrow-down\",theme:\"outlined\"},Pd=eg;var tg=function(t,n){return Mo.createElement(oe,R({},t,{ref:n,icon:Pd}))},ng=Mo.forwardRef(tg),hn=ng;var Vo=_(J());var rg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M868 545.5L536.1 163a31.96 31.96 0 00-48.3 0L156 545.5a7.97 7.97 0 006 13.2h81c4.6 0 9-2 12.1-5.5L474 300.9V864c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V300.9l218.9 252.3c3 3.5 7.4 5.5 12.1 5.5h81c6.8 0 10.5-8 6-13.2z\"}}]},name:\"arrow-up\",theme:\"outlined\"},_d=rg;var og=function(t,n){return Vo.createElement(oe,R({},t,{ref:n,icon:_d}))},ag=Vo.forwardRef(og),bn=ag;var zo=_(J());var ig={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"defs\",attrs:{},children:[{tag:\"style\",attrs:{}}]},{tag:\"path\",attrs:{d:\"M899.1 869.6l-53-305.6H864c14.4 0 26-11.6 26-26V346c0-14.4-11.6-26-26-26H618V138c0-14.4-11.6-26-26-26H432c-14.4 0-26 11.6-26 26v182H160c-14.4 0-26 11.6-26 26v192c0 14.4 11.6 26 26 26h17.9l-53 305.6a25.95 25.95 0 0025.6 30.4h723c1.5 0 3-.1 4.4-.4a25.88 25.88 0 0021.2-30zM204 390h272V182h72v208h272v104H204V390zm468 440V674c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v156H416V674c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v156H202.8l45.1-260H776l45.1 260H672z\"}}]},name:\"clear\",theme:\"outlined\"},Bd=ig;var sg=function(t,n){return zo.createElement(oe,R({},t,{ref:n,icon:Bd}))},lg=zo.forwardRef(sg),jn=lg;var $o=_(J());var dg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},Ld=dg;var cg=function(t,n){return $o.createElement(oe,R({},t,{ref:n,icon:Ld}))},ug=$o.forwardRef(cg),vr=ug;var Uo=_(J());var fg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z\"}}]},name:\"delete\",theme:\"outlined\"},Md=fg;var pg=function(t,n){return Uo.createElement(oe,R({},t,{ref:n,icon:Md}))},mg=Uo.forwardRef(pg),qe=mg;var Wo=_(J());var gg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\"}}]},name:\"down\",theme:\"outlined\"},Vd=gg;var hg=function(t,n){return Wo.createElement(oe,R({},t,{ref:n,icon:Vd}))},bg=Wo.forwardRef(hg),Pt=bg;var Go=_(J());var xg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},zd=xg;var vg=function(t,n){return Go.createElement(oe,R({},t,{ref:n,icon:zd}))},yg=Go.forwardRef(vg),yr=yg;var jo=_(J());var wg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z\"}}]},name:\"folder-open\",theme:\"outlined\"},$d=wg;var Cg=function(t,n){return jo.createElement(oe,R({},t,{ref:n,icon:$d}))},Sg=jo.forwardRef(Cg),xn=Sg;var Ho=_(J());var Og={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z\"}}]},name:\"folder\",theme:\"outlined\"},Ud=Og;var Dg=function(t,n){return Ho.createElement(oe,R({},t,{ref:n,icon:Ud}))},Ig=Ho.forwardRef(Dg),bi=Ig;var qo=_(J());var Eg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M854.4 800.9c.2-.3.5-.6.7-.9C920.6 722.1 960 621.7 960 512s-39.4-210.1-104.8-288c-.2-.3-.5-.5-.7-.8-1.1-1.3-2.1-2.5-3.2-3.7-.4-.5-.8-.9-1.2-1.4l-4.1-4.7-.1-.1c-1.5-1.7-3.1-3.4-4.6-5.1l-.1-.1c-3.2-3.4-6.4-6.8-9.7-10.1l-.1-.1-4.8-4.8-.3-.3c-1.5-1.5-3-2.9-4.5-4.3-.5-.5-1-1-1.6-1.5-1-1-2-1.9-3-2.8-.3-.3-.7-.6-1-1C736.4 109.2 629.5 64 512 64s-224.4 45.2-304.3 119.2c-.3.3-.7.6-1 1-1 .9-2 1.9-3 2.9-.5.5-1 1-1.6 1.5-1.5 1.4-3 2.9-4.5 4.3l-.3.3-4.8 4.8-.1.1c-3.3 3.3-6.5 6.7-9.7 10.1l-.1.1c-1.6 1.7-3.1 3.4-4.6 5.1l-.1.1c-1.4 1.5-2.8 3.1-4.1 4.7-.4.5-.8.9-1.2 1.4-1.1 1.2-2.1 2.5-3.2 3.7-.2.3-.5.5-.7.8C103.4 301.9 64 402.3 64 512s39.4 210.1 104.8 288c.2.3.5.6.7.9l3.1 3.7c.4.5.8.9 1.2 1.4l4.1 4.7c0 .1.1.1.1.2 1.5 1.7 3 3.4 4.6 5l.1.1c3.2 3.4 6.4 6.8 9.6 10.1l.1.1c1.6 1.6 3.1 3.2 4.7 4.7l.3.3c3.3 3.3 6.7 6.5 10.1 9.6 80.1 74 187 119.2 304.5 119.2s224.4-45.2 304.3-119.2a300 300 0 0010-9.6l.3-.3c1.6-1.6 3.2-3.1 4.7-4.7l.1-.1c3.3-3.3 6.5-6.7 9.6-10.1l.1-.1c1.5-1.7 3.1-3.3 4.6-5 0-.1.1-.1.1-.2 1.4-1.5 2.8-3.1 4.1-4.7.4-.5.8-.9 1.2-1.4a99 99 0 003.3-3.7zm4.1-142.6c-13.8 32.6-32 62.8-54.2 90.2a444.07 444.07 0 00-81.5-55.9c11.6-46.9 18.8-98.4 20.7-152.6H887c-3 40.9-12.6 80.6-28.5 118.3zM887 484H743.5c-1.9-54.2-9.1-105.7-20.7-152.6 29.3-15.6 56.6-34.4 81.5-55.9A373.86 373.86 0 01887 484zM658.3 165.5c39.7 16.8 75.8 40 107.6 69.2a394.72 394.72 0 01-59.4 41.8c-15.7-45-35.8-84.1-59.2-115.4 3.7 1.4 7.4 2.9 11 4.4zm-90.6 700.6c-9.2 7.2-18.4 12.7-27.7 16.4V697a389.1 389.1 0 01115.7 26.2c-8.3 24.6-17.9 47.3-29 67.8-17.4 32.4-37.8 58.3-59 75.1zm59-633.1c11 20.6 20.7 43.3 29 67.8A389.1 389.1 0 01540 327V141.6c9.2 3.7 18.5 9.1 27.7 16.4 21.2 16.7 41.6 42.6 59 75zM540 640.9V540h147.5c-1.6 44.2-7.1 87.1-16.3 127.8l-.3 1.2A445.02 445.02 0 00540 640.9zm0-156.9V383.1c45.8-2.8 89.8-12.5 130.9-28.1l.3 1.2c9.2 40.7 14.7 83.5 16.3 127.8H540zm-56 56v100.9c-45.8 2.8-89.8 12.5-130.9 28.1l-.3-1.2c-9.2-40.7-14.7-83.5-16.3-127.8H484zm-147.5-56c1.6-44.2 7.1-87.1 16.3-127.8l.3-1.2c41.1 15.6 85 25.3 130.9 28.1V484H336.5zM484 697v185.4c-9.2-3.7-18.5-9.1-27.7-16.4-21.2-16.7-41.7-42.7-59.1-75.1-11-20.6-20.7-43.3-29-67.8 37.2-14.6 75.9-23.3 115.8-26.1zm0-370a389.1 389.1 0 01-115.7-26.2c8.3-24.6 17.9-47.3 29-67.8 17.4-32.4 37.8-58.4 59.1-75.1 9.2-7.2 18.4-12.7 27.7-16.4V327zM365.7 165.5c3.7-1.5 7.3-3 11-4.4-23.4 31.3-43.5 70.4-59.2 115.4-21-12-40.9-26-59.4-41.8 31.8-29.2 67.9-52.4 107.6-69.2zM165.5 365.7c13.8-32.6 32-62.8 54.2-90.2 24.9 21.5 52.2 40.3 81.5 55.9-11.6 46.9-18.8 98.4-20.7 152.6H137c3-40.9 12.6-80.6 28.5-118.3zM137 540h143.5c1.9 54.2 9.1 105.7 20.7 152.6a444.07 444.07 0 00-81.5 55.9A373.86 373.86 0 01137 540zm228.7 318.5c-39.7-16.8-75.8-40-107.6-69.2 18.5-15.8 38.4-29.7 59.4-41.8 15.7 45 35.8 84.1 59.2 115.4-3.7-1.4-7.4-2.9-11-4.4zm292.6 0c-3.7 1.5-7.3 3-11 4.4 23.4-31.3 43.5-70.4 59.2-115.4 21 12 40.9 26 59.4 41.8a373.81 373.81 0 01-107.6 69.2z\"}}]},name:\"global\",theme:\"outlined\"},Wd=Eg;var Tg=function(t,n){return qo.createElement(oe,R({},t,{ref:n,icon:Wd}))},kg=qo.forwardRef(Tg),vn=kg;var Yo=_(J());var Ng={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}},{tag:\"path\",attrs:{d:\"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z\"}}]},name:\"info-circle\",theme:\"outlined\"},Gd=Ng;var Fg=function(t,n){return Yo.createElement(oe,R({},t,{ref:n,icon:Gd}))},Ag=Yo.forwardRef(Fg),nn=Ag;var Ko=_(J());var Pg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M608 112c-167.9 0-304 136.1-304 304 0 70.3 23.9 135 63.9 186.5l-41.1 41.1-62.3-62.3a8.15 8.15 0 00-11.4 0l-39.8 39.8a8.15 8.15 0 000 11.4l62.3 62.3-44.9 44.9-62.3-62.3a8.15 8.15 0 00-11.4 0l-39.8 39.8a8.15 8.15 0 000 11.4l62.3 62.3-65.3 65.3a8.03 8.03 0 000 11.3l42.3 42.3c3.1 3.1 8.2 3.1 11.3 0l253.6-253.6A304.06 304.06 0 00608 720c167.9 0 304-136.1 304-304S775.9 112 608 112zm161.2 465.2C726.2 620.3 668.9 644 608 644c-60.9 0-118.2-23.7-161.2-66.8-43.1-43-66.8-100.3-66.8-161.2 0-60.9 23.7-118.2 66.8-161.2 43-43.1 100.3-66.8 161.2-66.8 60.9 0 118.2 23.7 161.2 66.8 43.1 43 66.8 100.3 66.8 161.2 0 60.9-23.7 118.2-66.8 161.2z\"}}]},name:\"key\",theme:\"outlined\"},jd=Pg;var _g=function(t,n){return Ko.createElement(oe,R({},t,{ref:n,icon:jd}))},Bg=Ko.forwardRef(_g),Hn=Bg;var Xo=_(J());var Lg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},Hd=Lg;var Mg=function(t,n){return Xo.createElement(oe,R({},t,{ref:n,icon:Hd}))},Vg=Xo.forwardRef(Mg),wr=Vg;var Jo=_(J());var zg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 464h-68V240c0-70.7-57.3-128-128-128H388c-70.7 0-128 57.3-128 128v224h-68c-17.7 0-32 14.3-32 32v384c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V496c0-17.7-14.3-32-32-32zM332 240c0-30.9 25.1-56 56-56h248c30.9 0 56 25.1 56 56v224H332V240zm460 600H232V536h560v304zM484 701v53c0 4.4 3.6 8 8 8h40c4.4 0 8-3.6 8-8v-53a48.01 48.01 0 10-56 0z\"}}]},name:\"lock\",theme:\"outlined\"},qd=zg;var $g=function(t,n){return Jo.createElement(oe,R({},t,{ref:n,icon:qd}))},Ug=Jo.forwardRef($g),Cr=Ug;var Qo=_(J());var Wg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},Yd=Wg;var Gg=function(t,n){return Qo.createElement(oe,R({},t,{ref:n,icon:Yd}))},jg=Qo.forwardRef(Gg),yn=jg;var Zo=_(J());var Hg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},Kd=Hg;var qg=function(t,n){return Zo.createElement(oe,R({},t,{ref:n,icon:Kd}))},Yg=Zo.forwardRef(qg),ot=Yg;var Ro=_(J());var Kg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z\"}}]},name:\"reload\",theme:\"outlined\"},Xd=Kg;var Xg=function(t,n){return Ro.createElement(oe,R({},t,{ref:n,icon:Xd}))},Jg=Ro.forwardRef(Xg),wn=Jg;var ea=_(J());var Qg={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z\"}}]},name:\"safety-certificate\",theme:\"outlined\"},Jd=Qg;var Zg=function(t,n){return ea.createElement(oe,R({},t,{ref:n,icon:Jd}))},Rg=ea.forwardRef(Zg),qn=Rg;var ta=_(J());var eh={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M893.3 293.3L730.7 130.7c-7.5-7.5-16.7-13-26.7-16V112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V338.5c0-17-6.7-33.2-18.7-45.2zM384 184h256v104H384V184zm456 656H184V184h136v136c0 17.7 14.3 32 32 32h320c17.7 0 32-14.3 32-32V205.8l136 136V840zM512 442c-79.5 0-144 64.5-144 144s64.5 144 144 144 144-64.5 144-144-64.5-144-144-144zm0 224c-44.2 0-80-35.8-80-80s35.8-80 80-80 80 35.8 80 80-35.8 80-80 80z\"}}]},name:\"save\",theme:\"outlined\"},Qd=eh;var th=function(t,n){return ta.createElement(oe,R({},t,{ref:n,icon:Qd}))},nh=ta.forwardRef(th),rn=nh;var na=_(J());var rh={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},Zd=rh;var oh=function(t,n){return na.createElement(oe,R({},t,{ref:n,icon:Zd}))},ah=na.forwardRef(oh),Sr=ah;var ra=_(J());var ih={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M890.5 755.3L537.9 269.2c-12.8-17.6-39-17.6-51.7 0L133.5 755.3A8 8 0 00140 768h75c5.1 0 9.9-2.5 12.9-6.6L512 369.8l284.1 391.6c3 4.1 7.8 6.6 12.9 6.6h75c6.5 0 10.3-7.4 6.5-12.7z\"}}]},name:\"up\",theme:\"outlined\"},Rd=ih;var sh=function(t,n){return ra.createElement(oe,R({},t,{ref:n,icon:Rd}))},lh=ra.forwardRef(sh),_t=lh;var oa=_(J());var dh={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z\"}}]},name:\"upload\",theme:\"outlined\"},ec=dh;var ch=function(t,n){return oa.createElement(oe,R({},t,{ref:n,icon:ec}))},uh=oa.forwardRef(ch),Or=uh;var aa=_(J());var fh={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},tc=fh;var ph=function(t,n){return aa.createElement(oe,R({},t,{ref:n,icon:tc}))},mh=aa.forwardRef(ph),Yn=mh;var A=_(J()),En=_(Co());var Ve=_(J());function rc(){for(var e=arguments.length,t=new Array(e),n=0;nr=>{t.forEach(o=>o(r))},t)}var Dr=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Cn(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function ia(e){return\"nodeType\"in e}function dt(e){var t,n;return e?Cn(e)?e:ia(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function sa(e){let{Document:t}=dt(e);return e instanceof t}function Kn(e){return Cn(e)?!1:e instanceof dt(e).HTMLElement}function vi(e){return e instanceof dt(e).SVGElement}function Sn(e){return e?Cn(e)?e.document:ia(e)?sa(e)?e:Kn(e)||vi(e)?e.ownerDocument:document:document:document}var Et=Dr?Ve.useLayoutEffect:Ve.useEffect;function la(e){let t=(0,Ve.useRef)(e);return Et(()=>{t.current=e}),(0,Ve.useCallback)(function(){for(var n=arguments.length,r=new Array(n),o=0;o{e.current=setInterval(r,o)},[]),n=(0,Ve.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function Xn(e,t){t===void 0&&(t=[e]);let n=(0,Ve.useRef)(e);return Et(()=>{n.current!==e&&(n.current=e)},t),n}function Jn(e,t){let n=(0,Ve.useRef)();return(0,Ve.useMemo)(()=>{let r=e(n.current);return n.current=r,r},[...t])}function Ir(e){let t=la(e),n=(0,Ve.useRef)(null),r=(0,Ve.useCallback)(o=>{o!==n.current&&(t==null||t(o,n.current)),n.current=o},[]);return[n,r]}function da(e){let t=(0,Ve.useRef)();return(0,Ve.useEffect)(()=>{t.current=e},[e]),t.current}var xi={};function On(e,t){return(0,Ve.useMemo)(()=>{if(t)return t;let n=xi[e]==null?0:xi[e]+1;return xi[e]=n,e+\"-\"+n},[e,t])}function ac(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o{let s=Object.entries(i);for(let[l,c]of s){let f=a[l];f!=null&&(a[l]=f+e*c)}return a},C({},t))}}var Dn=ac(1),Qn=ac(-1);function gh(e){return\"clientX\"in e&&\"clientY\"in e}function Er(e){if(!e)return!1;let{KeyboardEvent:t}=dt(e.target);return t&&e instanceof t}function hh(e){if(!e)return!1;let{TouchEvent:t}=dt(e.target);return t&&e instanceof t}function Tr(e){if(hh(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return gh(e)?{x:e.clientX,y:e.clientY}:null}var Wt=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[Wt.Translate.toString(e),Wt.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+\" \"+n+\"ms \"+r}}}),nc=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ic(e){return e.matches(nc)?e:e.querySelector(nc)}var In=_(J()),bh={display:\"none\"};function sc(e){let{id:t,value:n}=e;return In.default.createElement(\"div\",{id:t,style:bh},n)}function lc(e){let{id:t,announcement:n,ariaLiveType:r=\"assertive\"}=e,o={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return In.default.createElement(\"div\",{id:t,style:o,role:\"status\",\"aria-live\":r,\"aria-atomic\":!0},n)}function dc(){let[e,t]=(0,In.useState)(\"\");return{announce:(0,In.useCallback)(r=>{r!=null&&t(r)},[]),announcement:e}}var yc=(0,A.createContext)(null);function xh(e){let t=(0,A.useContext)(yc);(0,A.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function vh(){let[e]=(0,A.useState)(()=>new Set),t=(0,A.useCallback)(r=>(e.add(r),()=>e.delete(r)),[e]);return[(0,A.useCallback)(r=>{let{type:o,event:a}=r;e.forEach(i=>{var s;return(s=i[o])==null?void 0:s.call(i,a)})},[e]),t]}var yh={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},wh={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function Ch(e){let{announcements:t=wh,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=yh}=e,{announce:a,announcement:i}=dc(),s=On(\"DndLiveRegion\"),[l,c]=(0,A.useState)(!1);if((0,A.useEffect)(()=>{c(!0)},[]),xh((0,A.useMemo)(()=>({onDragStart(d){let{active:u}=d;a(t.onDragStart({active:u}))},onDragMove(d){let{active:u,over:m}=d;t.onDragMove&&a(t.onDragMove({active:u,over:m}))},onDragOver(d){let{active:u,over:m}=d;a(t.onDragOver({active:u,over:m}))},onDragEnd(d){let{active:u,over:m}=d;a(t.onDragEnd({active:u,over:m}))},onDragCancel(d){let{active:u,over:m}=d;a(t.onDragCancel({active:u,over:m}))}}),[a,t])),!l)return null;let f=A.default.createElement(A.default.Fragment,null,A.default.createElement(sc,{id:r,value:o.draggable}),A.default.createElement(lc,{id:s,announcement:i}));return n?(0,En.createPortal)(f,n):f}var Ye;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(Ye||(Ye={}));function ua(){}function an(e,t){return(0,A.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function Pr(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(r=>r!=null),[...t])}var Bt=Object.freeze({x:0,y:0});function Sh(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function wc(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Oh(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),i=o-r,s=a-n;if(r{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,o=[];for(let a of r){let{id:i}=a,s=n.get(i);if(s){let l=Oh(s,t);l>0&&o.push({id:i,data:{droppableContainer:a,value:l}})}}return o.sort(Sh)};function Ih(e,t,n){return I(C({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Cc(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Bt}function Eh(e){return function(n){for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;aI(C({},i),{top:i.top+e*s.y,bottom:i.bottom+e*s.y,left:i.left+e*s.x,right:i.right+e*s.x}),C({},n))}}var Th=Eh(1);function kh(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Nh(e,t,n){let r=kh(t);if(!r)return e;let{scaleX:o,scaleY:a,x:i,y:s}=r,l=e.left-i-(1-o)*parseFloat(n),c=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(\" \")+1)),f=o?e.width/o:e.width,d=a?e.height/a:e.height;return{width:f,height:d,top:c,right:l+f,bottom:c+d,left:l}}var Fh={ignoreTransform:!1};function Nn(e,t){t===void 0&&(t=Fh);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:c,transformOrigin:f}=dt(e).getComputedStyle(e);c&&(n=Nh(n,c,f))}let{top:r,left:o,width:a,height:i,bottom:s,right:l}=n;return{top:r,left:o,width:a,height:i,bottom:s,right:l}}function cc(e){return Nn(e,{ignoreTransform:!0})}function Ah(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Ph(e,t){return t===void 0&&(t=dt(e).getComputedStyle(e)),t.position===\"fixed\"}function _h(e,t){t===void 0&&(t=dt(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(o=>{let a=t[o];return typeof a==\"string\"?n.test(a):!1})}function ga(e,t){let n=[];function r(o){if(t!=null&&n.length>=t||!o)return n;if(sa(o)&&o.scrollingElement!=null&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!Kn(o)||vi(o)||n.includes(o))return n;let a=dt(e).getComputedStyle(o);return o!==e&&_h(o,a)&&n.push(o),Ph(o,a)?n:r(o.parentNode)}return e?r(e):n}function Sc(e){let[t]=ga(e,1);return t!=null?t:null}function yi(e){return!Dr||!e?null:Cn(e)?e:ia(e)?sa(e)||e===Sn(e).scrollingElement?window:Kn(e)?e:null:null}function Oc(e){return Cn(e)?e.scrollX:e.scrollLeft}function Dc(e){return Cn(e)?e.scrollY:e.scrollTop}function Si(e){return{x:Oc(e),y:Dc(e)}}var Re;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(Re||(Re={}));function Ic(e){return!Dr||!e?!1:e===document.scrollingElement}function Ec(e){let t={x:0,y:0},n=Ic(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},o=e.scrollTop<=t.y,a=e.scrollLeft<=t.x,i=e.scrollTop>=r.y,s=e.scrollLeft>=r.x;return{isTop:o,isLeft:a,isBottom:i,isRight:s,maxScroll:r,minScroll:t}}var Bh={x:.2,y:.2};function Lh(e,t,n,r,o){let{top:a,left:i,right:s,bottom:l}=n;r===void 0&&(r=10),o===void 0&&(o=Bh);let{isTop:c,isBottom:f,isLeft:d,isRight:u}=Ec(e),m={x:0,y:0},h={x:0,y:0},x={height:t.height*o.y,width:t.width*o.x};return!c&&a<=t.top+x.height?(m.y=Re.Backward,h.y=r*Math.abs((t.top+x.height-a)/x.height)):!f&&l>=t.bottom-x.height&&(m.y=Re.Forward,h.y=r*Math.abs((t.bottom-x.height-l)/x.height)),!u&&s>=t.right-x.width?(m.x=Re.Forward,h.x=r*Math.abs((t.right-x.width-s)/x.width)):!d&&i<=t.left+x.width&&(m.x=Re.Backward,h.x=r*Math.abs((t.left+x.width-i)/x.width)),{direction:m,speed:h}}function Mh(e){if(e===document.scrollingElement){let{innerWidth:a,innerHeight:i}=window;return{top:0,left:0,right:a,bottom:i,width:a,height:i}}let{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function Tc(e){return e.reduce((t,n)=>Dn(t,Si(n)),Bt)}function Vh(e){return e.reduce((t,n)=>t+Oc(n),0)}function zh(e){return e.reduce((t,n)=>t+Dc(n),0)}function $h(e,t){if(t===void 0&&(t=Nn),!e)return;let{top:n,left:r,bottom:o,right:a}=t(e);Sc(e)&&(o<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Uh=[[\"x\",[\"left\",\"right\"],Vh],[\"y\",[\"top\",\"bottom\"],zh]],Nr=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let r=ga(n),o=Tc(r);this.rect=C({},t),this.width=t.width,this.height=t.height;for(let[a,i,s]of Uh)for(let l of i)Object.defineProperty(this,l,{get:()=>{let c=s(r),f=o[a]-c;return this.rect[l]+f},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},Tn=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var r;return(r=this.target)==null?void 0:r.removeEventListener(...n)})},this.target=t}add(t,n,r){var o;(o=this.target)==null||o.addEventListener(t,n,r),this.listeners.push([t,n,r])}};function Wh(e){let{EventTarget:t}=dt(e);return e instanceof t?e:Sn(e)}function wi(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+r**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&r>t.y:\"x\"in t?n>t.x:\"y\"in t?r>t.y:!1}var Tt;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(Tt||(Tt={}));function uc(e){e.preventDefault()}function Gh(e){e.stopPropagation()}var Ce;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(Ce||(Ce={}));var kc={start:[Ce.Space,Ce.Enter],cancel:[Ce.Esc],end:[Ce.Space,Ce.Enter,Ce.Tab]},jh=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case Ce.Right:return I(C({},n),{x:n.x+25});case Ce.Left:return I(C({},n),{x:n.x-25});case Ce.Down:return I(C({},n),{y:n.y+25});case Ce.Up:return I(C({},n),{y:n.y-25})}},fa=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new Tn(Sn(n)),this.windowListeners=new Tn(dt(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(Tt.Resize,this.handleCancel),this.windowListeners.add(Tt.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(Tt.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,r=t.node.current;r&&$h(r),n(Bt)}handleKeyDown(t){if(Er(t)){let{active:n,context:r,options:o}=this.props,{keyboardCodes:a=kc,coordinateGetter:i=jh,scrollBehavior:s=\"smooth\"}=o,{code:l}=t;if(a.end.includes(l)){this.handleEnd(t);return}if(a.cancel.includes(l)){this.handleCancel(t);return}let{collisionRect:c}=r.current,f=c?{x:c.left,y:c.top}:Bt;this.referenceCoordinates||(this.referenceCoordinates=f);let d=i(t,{active:n,context:r.current,currentCoordinates:f});if(d){let u=Qn(d,f),m={x:0,y:0},{scrollableAncestors:h}=r.current;for(let x of h){let v=t.code,{isTop:y,isRight:b,isLeft:S,isBottom:w,maxScroll:D,minScroll:O}=Ec(x),F=Mh(x),T={x:Math.min(v===Ce.Right?F.right-F.width/2:F.right,Math.max(v===Ce.Right?F.left:F.left+F.width/2,d.x)),y:Math.min(v===Ce.Down?F.bottom-F.height/2:F.bottom,Math.max(v===Ce.Down?F.top:F.top+F.height/2,d.y))},P=v===Ce.Right&&!b||v===Ce.Left&&!S,V=v===Ce.Down&&!w||v===Ce.Up&&!y;if(P&&T.x!==d.x){let E=x.scrollLeft+u.x,N=v===Ce.Right&&E<=D.x||v===Ce.Left&&E>=O.x;if(N&&!u.y){x.scrollTo({left:E,behavior:s});return}N?m.x=x.scrollLeft-E:m.x=v===Ce.Right?x.scrollLeft-D.x:x.scrollLeft-O.x,m.x&&x.scrollBy({left:-m.x,behavior:s});break}else if(V&&T.y!==d.y){let E=x.scrollTop+u.y,N=v===Ce.Down&&E<=D.y||v===Ce.Up&&E>=O.y;if(N&&!u.x){x.scrollTo({top:E,behavior:s});return}N?m.y=x.scrollTop-E:m.y=v===Ce.Down?x.scrollTop-D.y:x.scrollTop-O.y,m.y&&x.scrollBy({top:-m.y,behavior:s});break}}this.handleMove(t,Dn(Qn(d,this.referenceCoordinates),m))}}}handleMove(t,n){let{onMove:r}=this.props;t.preventDefault(),r(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};fa.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:r=kc,onActivation:o}=t,{active:a}=n,{code:i}=e.nativeEvent;if(r.start.includes(i)){let s=a.activatorNode.current;return s&&e.target!==s?!1:(e.preventDefault(),o==null||o({event:e.nativeEvent}),!0)}return!1}}];function fc(e){return!!(e&&\"distance\"in e)}function pc(e){return!!(e&&\"delay\"in e)}var Fr=class{constructor(t,n,r){var o;r===void 0&&(r=Wh(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:a}=t,{target:i}=a;this.props=t,this.events=n,this.document=Sn(i),this.documentListeners=new Tn(this.document),this.listeners=new Tn(r),this.windowListeners=new Tn(dt(i)),this.initialCoordinates=(o=Tr(a))!=null?o:Bt,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:r}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(Tt.Resize,this.handleCancel),this.windowListeners.add(Tt.DragStart,uc),this.windowListeners.add(Tt.VisibilityChange,this.handleCancel),this.windowListeners.add(Tt.ContextMenu,uc),this.documentListeners.add(Tt.Keydown,this.handleKeydown),n){if(r!=null&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(pc(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(fc(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:r,onPending:o}=this.props;o(r,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(Tt.Click,Gh,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(Tt.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:r,initialCoordinates:o,props:a}=this,{onMove:i,options:{activationConstraint:s}}=a;if(!o)return;let l=(n=Tr(t))!=null?n:Bt,c=Qn(o,l);if(!r&&s){if(fc(s)){if(s.tolerance!=null&&wi(c,s.tolerance))return this.handleCancel();if(wi(c,s.distance))return this.handleStart()}if(pc(s)&&wi(c,s.tolerance))return this.handleCancel();this.handlePending(s,c);return}t.cancelable&&t.preventDefault(),i(l)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===Ce.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},Hh={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},pa=class extends Fr{constructor(t){let{event:n}=t,r=Sn(n.target);super(t,Hh,r)}};pa.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r==null||r({event:n}),!0)}}];var qh={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},Oi;(function(e){e[e.RightClick=2]=\"RightClick\"})(Oi||(Oi={}));var qt=class extends Fr{constructor(t){super(t,qh,Sn(t.event.target))}};qt.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button===Oi.RightClick?!1:(r==null||r({event:n}),!0)}}];var Ci={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},Yt=class extends Fr{constructor(t){super(t,Ci)}static setup(){return window.addEventListener(Ci.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(Ci.move.name,t)};function t(){}}};Yt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:o}=n;return o.length>1?!1:(r==null||r({event:n}),!0)}}];var kr;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(kr||(kr={}));var ma;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(ma||(ma={}));function Yh(e){let{acceleration:t,activator:n=kr.Pointer,canScroll:r,draggingRect:o,enabled:a,interval:i=5,order:s=ma.TreeOrder,pointerCoordinates:l,scrollableAncestors:c,scrollableAncestorRects:f,delta:d,threshold:u}=e,m=Xh({delta:d,disabled:!a}),[h,x]=oc(),v=(0,A.useRef)({x:0,y:0}),y=(0,A.useRef)({x:0,y:0}),b=(0,A.useMemo)(()=>{switch(n){case kr.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case kr.DraggableRect:return o}},[n,o,l]),S=(0,A.useRef)(null),w=(0,A.useCallback)(()=>{let O=S.current;if(!O)return;let F=v.current.x*y.current.x,T=v.current.y*y.current.y;O.scrollBy(F,T)},[]),D=(0,A.useMemo)(()=>s===ma.TreeOrder?[...c].reverse():c,[s,c]);(0,A.useEffect)(()=>{if(!a||!c.length||!b){x();return}for(let O of D){if((r==null?void 0:r(O))===!1)continue;let F=c.indexOf(O),T=f[F];if(!T)continue;let{direction:P,speed:V}=Lh(O,T,b,t,u);for(let E of[\"x\",\"y\"])m[E][P[E]]||(V[E]=0,P[E]=0);if(V.x>0||V.y>0){x(),S.current=O,h(w,i),v.current=V,y.current=P;return}}v.current={x:0,y:0},y.current={x:0,y:0},x()},[t,w,r,x,a,i,JSON.stringify(b),JSON.stringify(m),h,c,D,f,JSON.stringify(u)])}var Kh={x:{[Re.Backward]:!1,[Re.Forward]:!1},y:{[Re.Backward]:!1,[Re.Forward]:!1}};function Xh(e){let{delta:t,disabled:n}=e,r=da(t);return Jn(o=>{if(n||!r||!o)return Kh;let a={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[Re.Backward]:o.x[Re.Backward]||a.x===-1,[Re.Forward]:o.x[Re.Forward]||a.x===1},y:{[Re.Backward]:o.y[Re.Backward]||a.y===-1,[Re.Forward]:o.y[Re.Forward]||a.y===1}}},[n,t,r])}function Jh(e,t){let n=t!=null?e.get(t):void 0,r=n?n.node.current:null;return Jn(o=>{var a;return t==null?null:(a=r!=null?r:o)!=null?a:null},[r,t])}function Qh(e,t){return(0,A.useMemo)(()=>e.reduce((n,r)=>{let{sensor:o}=r,a=o.activators.map(i=>({eventName:i.eventName,handler:t(i.handler,r)}));return[...n,...a]},[]),[e,t])}var Ar;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Ar||(Ar={}));var Di;(function(e){e.Optimized=\"optimized\"})(Di||(Di={}));var mc=new Map;function Zh(e,t){let{dragging:n,dependencies:r,config:o}=t,[a,i]=(0,A.useState)(null),{frequency:s,measure:l,strategy:c}=o,f=(0,A.useRef)(e),d=v(),u=Xn(d),m=(0,A.useCallback)(function(y){y===void 0&&(y=[]),!u.current&&i(b=>b===null?y:b.concat(y.filter(S=>!b.includes(S))))},[u]),h=(0,A.useRef)(null),x=Jn(y=>{if(d&&!n)return mc;if(!y||y===mc||f.current!==e||a!=null){let b=new Map;for(let S of e){if(!S)continue;if(a&&a.length>0&&!a.includes(S.id)&&S.rect.current){b.set(S.id,S.rect.current);continue}let w=S.node.current,D=w?new Nr(l(w),w):null;S.rect.current=D,D&&b.set(S.id,D)}return b}return y},[e,a,n,d,l]);return(0,A.useEffect)(()=>{f.current=e},[e]),(0,A.useEffect)(()=>{d||m()},[n,d]),(0,A.useEffect)(()=>{a&&a.length>0&&i(null)},[JSON.stringify(a)]),(0,A.useEffect)(()=>{d||typeof s!=\"number\"||h.current!==null||(h.current=setTimeout(()=>{m(),h.current=null},s))},[s,d,m,...r]),{droppableRects:x,measureDroppableContainers:m,measuringScheduled:a!=null};function v(){switch(c){case Ar.Always:return!1;case Ar.BeforeDragging:return n;default:return!n}}}function Nc(e,t){return Jn(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function Rh(e,t){return Nc(e,t)}function eb(e){let{callback:t,disabled:n}=e,r=la(t),o=(0,A.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:a}=window;return new a(r)},[r,n]);return(0,A.useEffect)(()=>()=>o==null?void 0:o.disconnect(),[o]),o}function ha(e){let{callback:t,disabled:n}=e,r=la(t),o=(0,A.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:a}=window;return new a(r)},[n]);return(0,A.useEffect)(()=>()=>o==null?void 0:o.disconnect(),[o]),o}function tb(e){return new Nr(Nn(e),e)}function gc(e,t,n){t===void 0&&(t=tb);let[r,o]=(0,A.useState)(null);function a(){o(l=>{if(!e)return null;if(e.isConnected===!1){var c;return(c=l!=null?l:n)!=null?c:null}let f=t(e);return JSON.stringify(l)===JSON.stringify(f)?l:f})}let i=eb({callback(l){if(e)for(let c of l){let{type:f,target:d}=c;if(f===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){a();break}}}}),s=ha({callback:a});return Et(()=>{a(),e?(s==null||s.observe(e),i==null||i.observe(document.body,{childList:!0,subtree:!0})):(s==null||s.disconnect(),i==null||i.disconnect())},[e]),r}function nb(e){let t=Nc(e);return Cc(e,t)}var hc=[];function rb(e){let t=(0,A.useRef)(e),n=Jn(r=>e?r&&r!==hc&&e&&t.current&&e.parentNode===t.current.parentNode?r:ga(e):hc,[e]);return(0,A.useEffect)(()=>{t.current=e},[e]),n}function ob(e){let[t,n]=(0,A.useState)(null),r=(0,A.useRef)(e),o=(0,A.useCallback)(a=>{let i=yi(a.target);i&&n(s=>s?(s.set(i,Si(i)),new Map(s)):null)},[]);return(0,A.useEffect)(()=>{let a=r.current;if(e!==a){i(a);let s=e.map(l=>{let c=yi(l);return c?(c.addEventListener(\"scroll\",o,{passive:!0}),[c,Si(c)]):null}).filter(l=>l!=null);n(s.length?new Map(s):null),r.current=e}return()=>{i(e),i(a)};function i(s){s.forEach(l=>{let c=yi(l);c==null||c.removeEventListener(\"scroll\",o)})}},[o,e]),(0,A.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((a,i)=>Dn(a,i),Bt):Tc(e):Bt,[e,t])}function bc(e,t){t===void 0&&(t=[]);let n=(0,A.useRef)(null);return(0,A.useEffect)(()=>{n.current=null},t),(0,A.useEffect)(()=>{let r=e!==Bt;r&&!n.current&&(n.current=e),!r&&n.current&&(n.current=null)},[e]),n.current?Qn(e,n.current):Bt}function ab(e){(0,A.useEffect)(()=>{if(!Dr)return;let t=e.map(n=>{let{sensor:r}=n;return r.setup==null?void 0:r.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function ib(e,t){return(0,A.useMemo)(()=>e.reduce((n,r)=>{let{eventName:o,handler:a}=r;return n[o]=i=>{a(i,t)},n},{}),[e,t])}function Fc(e){return(0,A.useMemo)(()=>e?Ah(e):null,[e])}var xc=[];function sb(e,t){t===void 0&&(t=Nn);let[n]=e,r=Fc(n?dt(n):null),[o,a]=(0,A.useState)(xc);function i(){a(()=>e.length?e.map(l=>Ic(l)?r:new Nr(t(l),l)):xc)}let s=ha({callback:i});return Et(()=>{s==null||s.disconnect(),i(),e.forEach(l=>s==null?void 0:s.observe(l))},[e]),o}function lb(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return Kn(t)?t:e}function db(e){let{measure:t}=e,[n,r]=(0,A.useState)(null),o=(0,A.useCallback)(c=>{for(let{target:f}of c)if(Kn(f)){r(d=>{let u=t(f);return d?I(C({},d),{width:u.width,height:u.height}):u});break}},[t]),a=ha({callback:o}),i=(0,A.useCallback)(c=>{let f=lb(c);a==null||a.disconnect(),f&&(a==null||a.observe(f)),r(f?t(f):null)},[t,a]),[s,l]=Ir(i);return(0,A.useMemo)(()=>({nodeRef:s,rect:n,setRef:l}),[n,s,l])}var cb=[{sensor:pa,options:{}},{sensor:fa,options:{}}],ub={current:{}},ca={draggable:{measure:cc},droppable:{measure:cc,strategy:Ar.WhileDragging,frequency:Di.Optimized},dragOverlay:{measure:Nn}},kn=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,r;return(n=(r=this.get(t))==null?void 0:r.node.current)!=null?n:void 0}},fb={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new kn,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:ua},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:ca,measureDroppableContainers:ua,windowRect:null,measuringScheduled:!1},pb={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:ua,draggableNodes:new Map,over:null,measureDroppableContainers:ua},ba=(0,A.createContext)(pb),Ac=(0,A.createContext)(fb);function mb(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new kn}}}function gb(e,t){switch(t.type){case Ye.DragStart:return I(C({},e),{draggable:I(C({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case Ye.DragMove:return e.draggable.active==null?e:I(C({},e),{draggable:I(C({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case Ye.DragEnd:case Ye.DragCancel:return I(C({},e),{draggable:I(C({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case Ye.RegisterDroppable:{let{element:n}=t,{id:r}=n,o=new kn(e.droppable.containers);return o.set(r,n),I(C({},e),{droppable:I(C({},e.droppable),{containers:o})})}case Ye.SetDroppableDisabled:{let{id:n,key:r,disabled:o}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let i=new kn(e.droppable.containers);return i.set(n,I(C({},a),{disabled:o})),I(C({},e),{droppable:I(C({},e.droppable),{containers:i})})}case Ye.UnregisterDroppable:{let{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;let a=new kn(e.droppable.containers);return a.delete(n),I(C({},e),{droppable:I(C({},e.droppable),{containers:a})})}default:return e}}function hb(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:o}=(0,A.useContext)(ba),a=da(r),i=da(n==null?void 0:n.id);return(0,A.useEffect)(()=>{if(!t&&!r&&a&&i!=null){if(!Er(a)||document.activeElement===a.target)return;let s=o.get(i);if(!s)return;let{activatorNode:l,node:c}=s;if(!l.current&&!c.current)return;requestAnimationFrame(()=>{for(let f of[l.current,c.current]){if(!f)continue;let d=ic(f);if(d){d.focus();break}}})}},[r,t,o,i,a]),null}function bb(e,t){let o=t,{transform:n}=o,r=$t(o,[\"transform\"]);return e!=null&&e.length?e.reduce((a,i)=>i(C({transform:a},r)),n):n}function xb(e){return(0,A.useMemo)(()=>({draggable:C(C({},ca.draggable),e==null?void 0:e.draggable),droppable:C(C({},ca.droppable),e==null?void 0:e.droppable),dragOverlay:C(C({},ca.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function vb(e){let{activeNode:t,measure:n,initialRect:r,config:o=!0}=e,a=(0,A.useRef)(!1),{x:i,y:s}=typeof o==\"boolean\"?{x:o,y:o}:o;Et(()=>{if(!i&&!s||!t){a.current=!1;return}if(a.current||!r)return;let c=t==null?void 0:t.node.current;if(!c||c.isConnected===!1)return;let f=n(c),d=Cc(f,r);if(i||(d.x=0),s||(d.y=0),a.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let u=Sc(c);u&&u.scrollBy({top:d.y,left:d.x})}},[t,i,s,r,n])}var Pc=(0,A.createContext)(I(C({},Bt),{scaleX:1,scaleY:1})),on;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(on||(on={}));var _r=(0,A.memo)(function(t){var n,r,o,a;let ml=t,{id:i,accessibility:s,autoScroll:l=!0,children:c,sensors:f=cb,collisionDetection:d=Dh,measuring:u,modifiers:m}=ml,h=$t(ml,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),x=(0,A.useReducer)(gb,void 0,mb),[v,y]=x,[b,S]=vh(),[w,D]=(0,A.useState)(on.Uninitialized),O=w===on.Initialized,{draggable:{active:F,nodes:T,translate:P},droppable:{containers:V}}=v,E=F!=null?T.get(F):null,N=(0,A.useRef)({initial:null,translated:null}),U=(0,A.useMemo)(()=>{var it;return F!=null?{id:F,data:(it=E==null?void 0:E.data)!=null?it:ub,rect:N}:null},[F,E]),K=(0,A.useRef)(null),[de,ve]=(0,A.useState)(null),[Oe,Ke]=(0,A.useState)(null),Ge=Xn(h,Object.values(h)),Xt=On(\"DndDescribedBy\",i),Jt=(0,A.useMemo)(()=>V.getEnabled(),[V]),Xe=xb(u),{droppableRects:lt,measureDroppableContainers:Lt,measuringScheduled:jt}=Zh(Jt,{dragging:O,dependencies:[P.x,P.y],config:Xe.droppable}),nt=Jh(T,F),fn=(0,A.useMemo)(()=>Oe?Tr(Oe):null,[Oe]),Mt=hm(),gt=Rh(nt,Xe.draggable.measure);vb({activeNode:F!=null?T.get(F):null,config:Mt.layoutShiftCompensation,initialRect:gt,measure:Xe.draggable.measure});let we=gc(nt,Xe.draggable.measure,gt),Vn=gc(nt?nt.parentElement:null),Le=(0,A.useRef)({activatorEvent:null,active:null,activeNode:nt,collisionRect:null,collisions:null,droppableRects:lt,draggableNodes:T,draggingNode:null,draggingNodeRect:null,droppableContainers:V,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ht=V.getNodeFor((n=Le.current.over)==null?void 0:n.id),Dt=db({measure:Xe.dragOverlay.measure}),zn=(r=Dt.nodeRef.current)!=null?r:nt,$n=O?(o=Dt.rect)!=null?o:we:null,il=!!(Dt.nodeRef.current&&Dt.rect),sl=nb(il?null:we),ti=Fc(zn?dt(zn):null),Qt=rb(O?ht!=null?ht:nt:null),vo=sb(Qt),yo=bb(m,{transform:{x:P.x-sl.x,y:P.y-sl.y,scaleX:1,scaleY:1},activatorEvent:Oe,active:U,activeNodeRect:we,containerNodeRect:Vn,draggingNodeRect:$n,over:Le.current.over,overlayNodeRect:Dt.rect,scrollableAncestors:Qt,scrollableAncestorRects:vo,windowRect:ti}),ll=fn?Dn(fn,P):null,dl=ob(Qt),dm=bc(dl),cm=bc(dl,[we]),Un=Dn(yo,dm),Wn=$n?Th($n,yo):null,ur=U&&Wn?d({active:U,collisionRect:Wn,droppableRects:lt,droppableContainers:Jt,pointerCoordinates:ll}):null,cl=wc(ur,\"id\"),[Zt,ul]=(0,A.useState)(null),um=il?yo:Dn(yo,cm),fm=Ih(um,(a=Zt==null?void 0:Zt.rect)!=null?a:null,we),ni=(0,A.useRef)(null),fl=(0,A.useCallback)((it,bt)=>{let{sensor:xt,options:Rt}=bt;if(K.current==null)return;let It=T.get(K.current);if(!It)return;let vt=it.nativeEvent,Vt=new xt({active:K.current,activeNode:It,event:vt,options:Rt,context:Le,onAbort(rt){if(!T.get(rt))return;let{onDragAbort:zt}=Ge.current,Ht={id:rt};zt==null||zt(Ht),b({type:\"onDragAbort\",event:Ht})},onPending(rt,en,zt,Ht){if(!T.get(rt))return;let{onDragPending:pr}=Ge.current,tn={id:rt,constraint:en,initialCoordinates:zt,offset:Ht};pr==null||pr(tn),b({type:\"onDragPending\",event:tn})},onStart(rt){let en=K.current;if(en==null)return;let zt=T.get(en);if(!zt)return;let{onDragStart:Ht}=Ge.current,fr={activatorEvent:vt,active:{id:en,data:zt.data,rect:N}};(0,En.unstable_batchedUpdates)(()=>{Ht==null||Ht(fr),D(on.Initializing),y({type:Ye.DragStart,initialCoordinates:rt,active:en}),b({type:\"onDragStart\",event:fr}),ve(ni.current),Ke(vt)})},onMove(rt){y({type:Ye.DragMove,coordinates:rt})},onEnd:Gn(Ye.DragEnd),onCancel:Gn(Ye.DragCancel)});ni.current=Vt;function Gn(rt){return async function(){let{active:zt,collisions:Ht,over:fr,scrollAdjustedTranslate:pr}=Le.current,tn=null;if(zt&&pr){let{cancelDrop:mr}=Ge.current;tn={activatorEvent:vt,active:zt,collisions:Ht,delta:pr,over:fr},rt===Ye.DragEnd&&typeof mr==\"function\"&&await Promise.resolve(mr(tn))&&(rt=Ye.DragCancel)}K.current=null,(0,En.unstable_batchedUpdates)(()=>{y({type:rt}),D(on.Uninitialized),ul(null),ve(null),Ke(null),ni.current=null;let mr=rt===Ye.DragEnd?\"onDragEnd\":\"onDragCancel\";if(tn){let ri=Ge.current[mr];ri==null||ri(tn),b({type:mr,event:tn})}})}}},[T]),pm=(0,A.useCallback)((it,bt)=>(xt,Rt)=>{let It=xt.nativeEvent,vt=T.get(Rt);if(K.current!==null||!vt||It.dndKit||It.defaultPrevented)return;let Vt={active:vt};it(xt,bt.options,Vt)===!0&&(It.dndKit={capturedBy:bt.sensor},K.current=Rt,fl(xt,bt))},[T,fl]),pl=Qh(f,pm);ab(f),Et(()=>{we&&w===on.Initializing&&D(on.Initialized)},[we,w]),(0,A.useEffect)(()=>{let{onDragMove:it}=Ge.current,{active:bt,activatorEvent:xt,collisions:Rt,over:It}=Le.current;if(!bt||!xt)return;let vt={active:bt,activatorEvent:xt,collisions:Rt,delta:{x:Un.x,y:Un.y},over:It};(0,En.unstable_batchedUpdates)(()=>{it==null||it(vt),b({type:\"onDragMove\",event:vt})})},[Un.x,Un.y]),(0,A.useEffect)(()=>{let{active:it,activatorEvent:bt,collisions:xt,droppableContainers:Rt,scrollAdjustedTranslate:It}=Le.current;if(!it||K.current==null||!bt||!It)return;let{onDragOver:vt}=Ge.current,Vt=Rt.get(cl),Gn=Vt&&Vt.rect.current?{id:Vt.id,rect:Vt.rect.current,data:Vt.data,disabled:Vt.disabled}:null,rt={active:it,activatorEvent:bt,collisions:xt,delta:{x:It.x,y:It.y},over:Gn};(0,En.unstable_batchedUpdates)(()=>{ul(Gn),vt==null||vt(rt),b({type:\"onDragOver\",event:rt})})},[cl]),Et(()=>{Le.current={activatorEvent:Oe,active:U,activeNode:nt,collisionRect:Wn,collisions:ur,droppableRects:lt,draggableNodes:T,draggingNode:zn,draggingNodeRect:$n,droppableContainers:V,over:Zt,scrollableAncestors:Qt,scrollAdjustedTranslate:Un},N.current={initial:$n,translated:Wn}},[U,nt,ur,Wn,T,zn,$n,lt,V,Zt,Qt,Un]),Yh(I(C({},Mt),{delta:P,draggingRect:Wn,pointerCoordinates:ll,scrollableAncestors:Qt,scrollableAncestorRects:vo}));let mm=(0,A.useMemo)(()=>({active:U,activeNode:nt,activeNodeRect:we,activatorEvent:Oe,collisions:ur,containerNodeRect:Vn,dragOverlay:Dt,draggableNodes:T,droppableContainers:V,droppableRects:lt,over:Zt,measureDroppableContainers:Lt,scrollableAncestors:Qt,scrollableAncestorRects:vo,measuringConfiguration:Xe,measuringScheduled:jt,windowRect:ti}),[U,nt,we,Oe,ur,Vn,Dt,T,V,lt,Zt,Lt,Qt,vo,Xe,jt,ti]),gm=(0,A.useMemo)(()=>({activatorEvent:Oe,activators:pl,active:U,activeNodeRect:we,ariaDescribedById:{draggable:Xt},dispatch:y,draggableNodes:T,over:Zt,measureDroppableContainers:Lt}),[Oe,pl,U,we,y,Xt,T,Zt,Lt]);return A.default.createElement(yc.Provider,{value:S},A.default.createElement(ba.Provider,{value:gm},A.default.createElement(Ac.Provider,{value:mm},A.default.createElement(Pc.Provider,{value:fm},c)),A.default.createElement(hb,{disabled:(s==null?void 0:s.restoreFocus)===!1})),A.default.createElement(Ch,I(C({},s),{hiddenTextDescribedById:Xt})));function hm(){let it=(de==null?void 0:de.autoScrollEnabled)===!1,bt=typeof l==\"object\"?l.enabled===!1:l===!1,xt=O&&!it&&!bt;return typeof l==\"object\"?I(C({},l),{enabled:xt}):{enabled:xt}}}),yb=(0,A.createContext)(null),vc=\"button\",wb=\"Draggable\";function _c(e){let{id:t,data:n,disabled:r=!1,attributes:o}=e,a=On(wb),{activators:i,activatorEvent:s,active:l,activeNodeRect:c,ariaDescribedById:f,draggableNodes:d,over:u}=(0,A.useContext)(ba),{role:m=vc,roleDescription:h=\"draggable\",tabIndex:x=0}=o!=null?o:{},v=(l==null?void 0:l.id)===t,y=(0,A.useContext)(v?Pc:yb),[b,S]=Ir(),[w,D]=Ir(),O=ib(i,t),F=Xn(n);Et(()=>(d.set(t,{id:t,key:a,node:b,activatorNode:w,data:F}),()=>{let P=d.get(t);P&&P.key===a&&d.delete(t)}),[d,t]);let T=(0,A.useMemo)(()=>({role:m,tabIndex:x,\"aria-disabled\":r,\"aria-pressed\":v&&m===vc?!0:void 0,\"aria-roledescription\":h,\"aria-describedby\":f.draggable}),[r,m,x,v,h,f.draggable]);return{active:l,activatorEvent:s,activeNodeRect:c,attributes:T,isDragging:v,listeners:r?void 0:O,node:b,over:u,setNodeRef:S,setActivatorNodeRef:D,transform:y}}function Bc(){return(0,A.useContext)(Ac)}var Cb=\"Droppable\",Sb={timeout:25};function Lc(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:o}=e,a=On(Cb),{active:i,dispatch:s,over:l,measureDroppableContainers:c}=(0,A.useContext)(ba),f=(0,A.useRef)({disabled:n}),d=(0,A.useRef)(!1),u=(0,A.useRef)(null),m=(0,A.useRef)(null),{disabled:h,updateMeasurementsFor:x,timeout:v}=C(C({},Sb),o),y=Xn(x!=null?x:r),b=(0,A.useCallback)(()=>{if(!d.current){d.current=!0;return}m.current!=null&&clearTimeout(m.current),m.current=setTimeout(()=>{c(Array.isArray(y.current)?y.current:[y.current]),m.current=null},v)},[v]),S=ha({callback:b,disabled:h||!i}),w=(0,A.useCallback)((T,P)=>{S&&(P&&(S.unobserve(P),d.current=!1),T&&S.observe(T))},[S]),[D,O]=Ir(w),F=Xn(t);return(0,A.useEffect)(()=>{!S||!D.current||(S.disconnect(),d.current=!1,S.observe(D.current))},[D,S]),(0,A.useEffect)(()=>(s({type:Ye.RegisterDroppable,element:{id:r,key:a,disabled:n,node:D,rect:u,data:F}}),()=>s({type:Ye.UnregisterDroppable,key:a,id:r})),[r]),(0,A.useEffect)(()=>{n!==f.current.disabled&&(s({type:Ye.SetDroppableDisabled,id:r,key:a,disabled:n}),f.current.disabled=n)},[r,a,n,s]),{active:i,rect:u,isOver:(l==null?void 0:l.id)===r,node:D,over:l,setNodeRef:O}}var Br=e=>{let{transform:t}=e;return I(C({},t),{x:0})};var ze=_(J());function ct(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function Ob(e,t){return e.reduce((n,r,o)=>{let a=t.get(r);return a&&(n[o]=a),n},Array(e.length))}function xa(e){return e!==null&&e>=0}function Db(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n{let{rects:t,activeIndex:n,overIndex:r,index:o}=e,a=ct(t,r,n),i=t[o],s=a[o];return!s||!i?null:{x:s.left-i.left,y:s.top-i.top,scaleX:s.width/i.width,scaleY:s.height/i.height}};var va={scaleX:1,scaleY:1},Lr=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:a,overIndex:i}=e,s=(t=a[n])!=null?t:r;if(!s)return null;if(o===n){let c=a[i];return c?C({x:0,y:nn&&o<=i?C({x:0,y:-s.height-l},va):o=i?C({x:0,y:s.height+l},va):C({x:0,y:0},va)};function Eb(e,t,n){let r=e[t],o=e[t-1],a=e[t+1];return r?nr.map(O=>typeof O==\"object\"&&\"id\"in O?O.id:O),[r]),h=i!=null,x=i?m.indexOf(i.id):-1,v=c?m.indexOf(c.id):-1,y=(0,ze.useRef)(m),b=!Db(m,y.current),S=v!==-1&&x===-1||b,w=Ib(a);Et(()=>{b&&h&&f(m)},[b,m,h,f]),(0,ze.useEffect)(()=>{y.current=m},[m]);let D=(0,ze.useMemo)(()=>({activeIndex:x,containerId:d,disabled:w,disableTransforms:S,items:m,overIndex:v,useDragOverlay:u,sortedRects:Ob(m,l),strategy:o}),[x,d,w.draggable,w.droppable,S,m,v,l,u,o]);return ze.default.createElement(zc.Provider,{value:D},t)}var Tb=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return ct(n,r,o).indexOf(t)},kb=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:a,newIndex:i,previousItems:s,previousContainerId:l,transition:c}=e;return!c||!r||s!==a&&o===i?!1:n?!0:i!==o&&t===l},Nb={duration:200,easing:\"ease\"},$c=\"transform\",Fb=Wt.Transition.toString({property:$c,duration:0,easing:\"linear\"}),Ab={roleDescription:\"sortable\"};function Pb(e){let{disabled:t,index:n,node:r,rect:o}=e,[a,i]=(0,ze.useState)(null),s=(0,ze.useRef)(n);return Et(()=>{if(!t&&n!==s.current&&r.current){let l=o.current;if(l){let c=Nn(r.current,{ignoreTransform:!0}),f={x:l.left-c.left,y:l.top-c.top,scaleX:l.width/c.width,scaleY:l.height/c.height};(f.x||f.y)&&i(f)}}n!==s.current&&(s.current=n)},[t,n,r,o]),(0,ze.useEffect)(()=>{a&&i(null)},[a]),a}function ya(e){let{animateLayoutChanges:t=kb,attributes:n,disabled:r,data:o,getNewIndex:a=Tb,id:i,strategy:s,resizeObserverConfig:l,transition:c=Nb}=e,{items:f,containerId:d,activeIndex:u,disabled:m,disableTransforms:h,sortedRects:x,overIndex:v,useDragOverlay:y,strategy:b}=(0,ze.useContext)(zc),S=_b(r,m),w=f.indexOf(i),D=(0,ze.useMemo)(()=>C({sortable:{containerId:d,index:w,items:f}},o),[d,o,w,f]),O=(0,ze.useMemo)(()=>f.slice(f.indexOf(i)),[f,i]),{rect:F,node:T,isOver:P,setNodeRef:V}=Lc({id:i,data:D,disabled:S.droppable,resizeObserverConfig:C({updateMeasurementsFor:O},l)}),{active:E,activatorEvent:N,activeNodeRect:U,attributes:K,setNodeRef:de,listeners:ve,isDragging:Oe,over:Ke,setActivatorNodeRef:Ge,transform:Xt}=_c({id:i,data:D,attributes:C(C({},Ab),n),disabled:S.draggable}),Jt=rc(V,de),Xe=!!E,lt=Xe&&!h&&xa(u)&&xa(v),Lt=!y&&Oe,jt=Lt&<?Xt:null,nt=s!=null?s:b,fn=lt?jt!=null?jt:nt({rects:x,activeNodeRect:U,activeIndex:u,overIndex:v,index:w}):null,Mt=xa(u)&&xa(v)?a({id:i,items:f,activeIndex:u,overIndex:v}):w,gt=E==null?void 0:E.id,we=(0,ze.useRef)({activeId:gt,items:f,newIndex:Mt,containerId:d}),Vn=f!==we.current.items,Le=t({active:E,containerId:d,isDragging:Oe,isSorting:Xe,id:i,index:w,items:f,newIndex:we.current.newIndex,previousItems:we.current.items,previousContainerId:we.current.containerId,transition:c,wasDragging:we.current.activeId!=null}),ht=Pb({disabled:!Le,index:w,node:T,rect:F});return(0,ze.useEffect)(()=>{Xe&&we.current.newIndex!==Mt&&(we.current.newIndex=Mt),d!==we.current.containerId&&(we.current.containerId=d),f!==we.current.items&&(we.current.items=f)},[Xe,Mt,d,f]),(0,ze.useEffect)(()=>{if(gt===we.current.activeId)return;if(gt!=null&&we.current.activeId==null){we.current.activeId=gt;return}let zn=setTimeout(()=>{we.current.activeId=gt},50);return()=>clearTimeout(zn)},[gt]),{active:E,activeIndex:u,attributes:K,data:D,rect:F,index:w,newIndex:Mt,items:f,isOver:P,isSorting:Xe,isDragging:Oe,listeners:ve,node:T,overIndex:v,over:Ke,setNodeRef:Jt,setActivatorNodeRef:Ge,setDroppableNodeRef:V,setDraggableNodeRef:de,transform:ht!=null?ht:fn,transition:Dt()};function Dt(){if(ht||Vn&&we.current.newIndex===w)return Fb;if(!(Lt&&!Er(N)||!c)&&(Xe||Le))return Wt.Transition.toString(I(C({},c),{property:$c}))}}function _b(e,t){var n,r;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(r=e==null?void 0:e.droppable)!=null?r:t.droppable}}var xI=[Ce.Down,Ce.Right,Ce.Up,Ce.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=':root {\\n --bg-primary: #ffffff;\\n --bg-secondary: #f5f5f5;\\n --bg-tertiary: #fafafa;\\n --text-primary: rgba(0, 0, 0, 0.88);\\n --text-secondary: rgba(0, 0, 0, 0.65);\\n --text-tertiary: rgba(0, 0, 0, 0.45);\\n --border-color: #d9d9d9;\\n --border-color-light: #f0f0f0;\\n --shadow-color: rgba(0, 0, 0, 0.08);\\n --shadow-hover: rgba(0, 0, 0, 0.12);\\n --primary-color: #1890ff;\\n --primary-hover: #40a9ff;\\n --primary-active: #096dd9;\\n --spacing-xs: 4px;\\n --spacing-sm: 8px;\\n --spacing-md: 16px;\\n --spacing-lg: 24px;\\n --spacing-xl: 32px;\\n --radius-sm: 4px;\\n --radius-md: 8px;\\n --radius-lg: 12px;\\n --radius-xl: 16px;\\n --transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);\\n --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);\\n --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);\\n}\\n@media (prefers-color-scheme: dark) {\\n :root {\\n --bg-primary: #141414;\\n --bg-secondary: #1f1f1f;\\n --bg-tertiary: #2a2a2a;\\n --text-primary: rgba(255, 255, 255, 0.85);\\n --text-secondary: rgba(255, 255, 255, 0.65);\\n --text-tertiary: rgba(255, 255, 255, 0.45);\\n --border-color: #424242;\\n --border-color-light: #303030;\\n --shadow-color: rgba(0, 0, 0, 0.45);\\n --shadow-hover: rgba(0, 0, 0, 0.65);\\n }\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav {\\n background: #ffffff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: transparent !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active {\\n background: #ffffff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1890ff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab:hover {\\n color: #40a9ff !important;\\n}\\n.force-light-tabs.ant-tabs .ant-tabs-nav .ant-tabs-ink-bar {\\n background: #1890ff !important;\\n}\\n.force-light-table-header .ant-table-thead > tr > th {\\n background: #fafafa !important;\\n color: rgba(0, 0, 0, 0.88) !important;\\n border-bottom: 1px solid #f0f0f0 !important;\\n}\\n.force-light-table-header .ant-table-tbody > tr > td {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label {\\n background: #ffffff !important;\\n padding: 16px !important;\\n border-radius: 8px !important;\\n}\\n.force-light-form-label .ant-form-item-label label {\\n color: rgba(0, 0, 0, 0.88) !important;\\n font-weight: 600 !important;\\n font-size: 14px !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-form-item-explain {\\n color: rgba(0, 0, 0, 0.65) !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-input,\\n.force-light-form-label .ant-form-item-control .ant-input-number-input,\\n.force-light-form-label .ant-form-item-control .ant-select-selector,\\n.force-light-form-label .ant-form-item-control .ant-input-textarea {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: #ffffff !important;\\n border-color: #d9d9d9 !important;\\n}\\n.force-light-form-label .ant-form-item-control .ant-input::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-input-number-input::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-select-selector::placeholder,\\n.force-light-form-label .ant-form-item-control .ant-input-textarea::placeholder {\\n color: rgba(0, 0, 0, 0.45) !important;\\n}\\n.force-light-form-label .ant-form-item-label > label.ant-form-item-required::before {\\n color: #ff4d4f !important;\\n}\\n.force-light-form-label .ant-switch {\\n background: rgba(0, 0, 0, 0.25) !important;\\n}\\n.force-light-form-label .ant-switch.ant-switch-checked {\\n background: #1890ff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-selection-item {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-arrow {\\n color: rgba(0, 0, 0, 0.45) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown {\\n background: #ffffff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item.ant-select-item-option-selected {\\n background: #e6f7ff !important;\\n color: #1890ff !important;\\n}\\n.force-light-form-label .ant-select .ant-select-dropdown .ant-select-item:hover {\\n background: #f5f5f5 !important;\\n}\\n.force-light-form-label .ant-btn {\\n color: rgba(0, 0, 0, 0.88) !important;\\n background: #ffffff !important;\\n border-color: #d9d9d9 !important;\\n}\\n.force-light-form-label .ant-btn.ant-btn-primary {\\n color: #ffffff !important;\\n background: #1890ff !important;\\n border-color: #1890ff !important;\\n}\\n.force-light-form-label .ant-alert {\\n background: #e6f7ff !important;\\n border: 1px solid #91d5ff !important;\\n}\\n.force-light-form-label .ant-alert .ant-alert-message {\\n color: rgba(0, 0, 0, 0.88) !important;\\n font-weight: 500 !important;\\n}\\n.force-light-form-label .ant-alert .ant-alert-description {\\n color: rgba(0, 0, 0, 0.65) !important;\\n}\\n.force-light-form-label .ant-divider {\\n color: rgba(0, 0, 0, 0.45) !important;\\n border-color: #f0f0f0 !important;\\n}\\n.force-light-form-label .ant-divider .ant-divider-inner-text {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-tabs-tab {\\n color: rgba(0, 0, 0, 0.88) !important;\\n}\\n.force-light-form-label .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1890ff !important;\\n}\\n* {\\n -webkit-tap-highlight-color: transparent;\\n box-sizing: border-box;\\n}\\nbody {\\n margin: 0;\\n padding: 0;\\n overflow-x: hidden;\\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\nhtml {\\n scroll-behavior: smooth;\\n}\\n@keyframes fadeIn {\\n from {\\n opacity: 0;\\n }\\n to {\\n opacity: 1;\\n }\\n}\\n@keyframes slideInUp {\\n from {\\n opacity: 0;\\n transform: translateY(20px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n@keyframes slideInRight {\\n from {\\n opacity: 0;\\n transform: translateX(20px);\\n }\\n to {\\n opacity: 1;\\n transform: translateX(0);\\n }\\n}\\n@keyframes scaleIn {\\n from {\\n opacity: 0;\\n transform: scale(0.95);\\n }\\n to {\\n opacity: 1;\\n transform: scale(1);\\n }\\n}\\n.app-layout {\\n width: 100vw;\\n min-height: 100vh;\\n box-sizing: border-box;\\n padding: var(--spacing-md);\\n padding-top: max(var(--spacing-md), env(safe-area-inset-top));\\n padding-bottom: max(var(--spacing-md), env(safe-area-inset-bottom));\\n padding-left: max(var(--spacing-md), env(safe-area-inset-left));\\n padding-right: max(var(--spacing-md), env(safe-area-inset-right));\\n max-width: 1200px;\\n margin: 0 auto;\\n background: var(--bg-secondary);\\n}\\n@media (max-width: 575px) {\\n .app-layout {\\n padding: var(--spacing-sm);\\n padding-top: max(var(--spacing-sm), env(safe-area-inset-top));\\n padding-bottom: max(var(--spacing-sm), env(safe-area-inset-bottom));\\n }\\n}\\n@media (min-width: 768px) and (max-width: 991px) {\\n .app-layout {\\n padding: var(--spacing-lg);\\n }\\n}\\n@media (min-width: 992px) and (max-width: 1199px) {\\n .app-layout {\\n padding: var(--spacing-xl);\\n }\\n}\\n@media (min-width: 1200px) {\\n .app-layout {\\n padding: 48px;\\n }\\n}\\n.app-layout .app-header-row {\\n display: flex;\\n justify-content: flex-end;\\n margin-bottom: var(--spacing-md);\\n padding: var(--spacing-sm) var(--spacing-md);\\n background: var(--bg-primary);\\n border-radius: var(--radius-lg);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.app-layout .app-header-row .import-export-buttons {\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 575px) {\\n .app-layout .app-header-row .import-export-buttons {\\n flex-wrap: wrap;\\n justify-content: flex-end;\\n width: 100%;\\n }\\n}\\n@media (max-width: 575px) {\\n .app-layout .app-header-row {\\n margin-bottom: var(--spacing-sm);\\n padding: var(--spacing-xs) var(--spacing-sm);\\n border-radius: var(--radius-md);\\n }\\n}\\n.app-layout .ant-tabs {\\n background: var(--bg-primary);\\n border-radius: var(--radius-lg);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n min-height: calc(100vh - (2 * var(--spacing-md)));\\n display: flex;\\n flex-direction: column;\\n}\\n@media (max-width: 575px) {\\n .app-layout .ant-tabs {\\n border-radius: var(--radius-md);\\n min-height: calc(100vh - (2 * var(--spacing-sm)));\\n }\\n}\\n.app-layout .ant-tabs .ant-tabs-nav .ant-tabs-extra-content {\\n margin-left: auto;\\n display: flex;\\n align-items: center;\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 767px) {\\n .app-layout .ant-tabs .ant-tabs-nav .ant-tabs-extra-content {\\n flex-wrap: wrap;\\n justify-content: flex-end;\\n margin-top: var(--spacing-sm);\\n }\\n}\\n@media (max-width: 767px) {\\n .app-layout .ant-tabs .ant-tabs-nav {\\n padding-bottom: var(--spacing-sm);\\n }\\n}\\n.app-layout .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .app-layout .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-tabs {\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n}\\n.ant-tabs .ant-tabs-content {\\n transition: opacity var(--transition-base);\\n flex: 1;\\n overflow: hidden;\\n}\\n.ant-tabs .ant-tabs-tabpane {\\n animation: fadeIn var(--transition-base);\\n height: 100%;\\n}\\n.ant-tabs .ant-tabs-nav {\\n margin-bottom: 0;\\n padding: var(--spacing-md) var(--spacing-md) 0;\\n flex-shrink: 0;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-nav {\\n padding: var(--spacing-sm) var(--spacing-sm) 0;\\n }\\n}\\n.ant-tabs .ant-tabs-tab {\\n padding: 12px 16px;\\n font-size: 14px;\\n transition: all var(--transition-fast);\\n border-radius: var(--radius-sm) var(--radius-sm) 0 0;\\n}\\n.ant-tabs .ant-tabs-tab:hover {\\n color: var(--primary-hover);\\n}\\n.ant-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: var(--primary-color);\\n font-weight: 600;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-tab {\\n padding: 10px 12px;\\n font-size: 13px;\\n }\\n}\\n.ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-md);\\n overflow-y: auto;\\n overflow-x: hidden;\\n -webkit-overflow-scrolling: touch;\\n flex: 1;\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-content-holder {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-tabs .ant-tabs-extra-content {\\n display: flex;\\n align-items: center;\\n gap: var(--spacing-sm);\\n}\\n@media (max-width: 575px) {\\n .ant-tabs .ant-tabs-extra-content {\\n flex-wrap: wrap;\\n }\\n}\\n@media (min-width: 768px) {\\n .ant-tabs .ant-tabs-nav {\\n flex-wrap: nowrap !important;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-tabs .ant-tabs-nav {\\n flex-wrap: wrap;\\n }\\n .ant-tabs .ant-tabs-nav-list {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n flex-wrap: nowrap;\\n }\\n .ant-tabs .ant-tabs-nav-list::-webkit-scrollbar {\\n height: 4px;\\n }\\n .ant-tabs .ant-tabs-nav-list::-webkit-scrollbar-thumb {\\n background: var(--border-color);\\n border-radius: 2px;\\n }\\n}\\n@media (max-width: 767px) and (max-width: 400px) {\\n .container > .ant-card > .ant-card-body > .ant-tabs .ant-tabs-extra-content {\\n flex: 1 1 100%;\\n margin-top: var(--spacing-sm);\\n justify-content: flex-end;\\n }\\n}\\n.qrcodeCard {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n padding: var(--spacing-lg);\\n animation: slideInUp var(--transition-base);\\n}\\n.qrcodeCard img {\\n width: 180px;\\n height: 180px;\\n cursor: pointer;\\n border-radius: var(--radius-md);\\n box-shadow: 0 2px 8px var(--shadow-color);\\n transition: transform var(--transition-base), box-shadow var(--transition-base);\\n}\\n.qrcodeCard img:hover {\\n transform: scale(1.05);\\n box-shadow: 0 4px 16px var(--shadow-hover);\\n}\\n.qrcodeCard img:active {\\n transform: scale(0.98);\\n}\\n@media (max-width: 575px) {\\n .qrcodeCard img {\\n width: 140px;\\n height: 140px;\\n }\\n}\\n@media (min-width: 576px) and (max-width: 767px) {\\n .qrcodeCard img {\\n width: 160px;\\n height: 160px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .qrcodeCard img {\\n width: 200px;\\n height: 200px;\\n }\\n}\\n.qrcodeCard .btns {\\n display: flex;\\n justify-content: space-around;\\n margin-top: var(--spacing-lg);\\n width: 100%;\\n gap: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .qrcodeCard .btns {\\n flex-direction: column;\\n gap: var(--spacing-sm);\\n }\\n .qrcodeCard .btns .ant-btn {\\n width: 100%;\\n margin: 0 !important;\\n justify-content: center;\\n }\\n}\\n@media (min-width: 576px) {\\n .qrcodeCard .btns .ant-btn {\\n flex: 1;\\n margin: 0 !important;\\n }\\n}\\n@media (min-width: 1200px) {\\n .qrcodeCard .btns {\\n gap: var(--spacing-md);\\n margin-top: var(--spacing-xl);\\n }\\n}\\n.guangya-proxy-settings {\\n --guangya-blue: #002fa7;\\n --guangya-rule: #d8dce5;\\n color: #111111;\\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\\n}\\n.guangya-proxy-settings .ant-divider {\\n color: #111111 !important;\\n border-color: var(--guangya-rule) !important;\\n}\\n.guangya-proxy-form {\\n display: grid;\\n grid-template-columns: repeat(2, minmax(0, 1fr));\\n gap: 16px;\\n margin: 0;\\n padding: 18px 0;\\n border-top: 1px solid var(--guangya-rule);\\n border-bottom: 1px solid var(--guangya-rule);\\n}\\n.guangya-proxy-form .ant-form-item {\\n margin-bottom: 0;\\n}\\n.guangya-proxy-form .ant-input-number {\\n border-radius: 0;\\n}\\n@media (max-width: 720px) {\\n .guangya-proxy-form {\\n grid-template-columns: 1fr;\\n }\\n}\\n.ant-form {\\n animation: fadeIn var(--transition-base);\\n}\\n.ant-form .ant-form-item {\\n margin-bottom: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-form .ant-form-item {\\n margin-bottom: var(--spacing-sm);\\n }\\n}\\n.ant-form .ant-form-item-label {\\n padding-bottom: var(--spacing-xs);\\n}\\n.ant-form .ant-form-item-label label {\\n font-weight: 500;\\n}\\n.ant-input,\\n.ant-input-number,\\n.ant-select-selector,\\n.ant-input-textarea {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-input:hover,\\n.ant-input-number:hover,\\n.ant-select-selector:hover,\\n.ant-input-textarea:hover {\\n border-color: var(--primary-hover);\\n}\\n.ant-input:focus,\\n.ant-input-number:focus,\\n.ant-select-selector:focus,\\n.ant-input-textarea:focus,\\n.ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-select-selector.ant-input-focused,\\n.ant-input-textarea.ant-input-focused {\\n border-color: var(--primary-color);\\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 767px) {\\n .ant-input,\\n .ant-input-number-input,\\n .ant-select-selector,\\n .ant-input-textarea {\\n font-size: 16px !important;\\n min-height: 44px;\\n }\\n}\\n.ant-btn {\\n border-radius: var(--radius-sm);\\n font-weight: 500;\\n transition: all var(--transition-fast);\\n}\\n.ant-btn:hover {\\n transform: translateY(-1px);\\n box-shadow: 0 2px 8px var(--shadow-color);\\n}\\n.ant-btn:active {\\n transform: translateY(0);\\n}\\n@media (max-width: 767px) {\\n .ant-btn {\\n min-height: 44px;\\n font-size: 14px;\\n padding: 0 16px;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-btn.ant-btn-lg {\\n min-height: 48px;\\n font-size: 16px;\\n }\\n}\\n@media (max-width: 767px) {\\n .ant-btn.ant-btn-sm {\\n min-height: 36px;\\n font-size: 13px;\\n }\\n}\\n.ant-card {\\n border-radius: var(--radius-md);\\n transition: box-shadow var(--transition-base);\\n}\\n.ant-card:hover {\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-card .ant-card-head {\\n border-bottom: 1px solid var(--border-color-light);\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-card .ant-card-head {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-card .ant-card-head .ant-card-head-title {\\n font-weight: 600;\\n}\\n.ant-card .ant-card-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-card .ant-card-body {\\n padding: var(--spacing-md);\\n }\\n}\\n.sites-table,\\n.ant-table-wrapper {\\n animation: fadeIn var(--transition-base);\\n}\\n.sites-table .ant-table,\\n.ant-table-wrapper .ant-table {\\n border-radius: var(--radius-sm);\\n overflow: hidden;\\n}\\n.sites-table .ant-table-thead > tr > th,\\n.ant-table-wrapper .ant-table-thead > tr > th {\\n background: var(--bg-tertiary);\\n font-weight: 600;\\n white-space: nowrap;\\n}\\n.sites-table .ant-table-tbody > tr,\\n.ant-table-wrapper .ant-table-tbody > tr {\\n transition: background var(--transition-fast);\\n}\\n.sites-table .ant-table-tbody > tr:hover,\\n.ant-table-wrapper .ant-table-tbody > tr:hover {\\n background: var(--bg-tertiary);\\n}\\n.sites-table .ant-table-tbody > tr > td,\\n.ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 12px 16px;\\n white-space: nowrap;\\n}\\n@media (max-width: 575px) {\\n .sites-table .ant-table-tbody > tr > td,\\n .ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 8px 12px;\\n font-size: 13px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .sites-table .ant-table-tbody > tr > td,\\n .ant-table-wrapper .ant-table-tbody > tr > td {\\n padding: 14px 20px;\\n font-size: 15px;\\n }\\n}\\n@media (max-width: 767px) {\\n .sites-table,\\n .ant-table-wrapper {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n .sites-table .ant-btn,\\n .ant-table-wrapper .ant-btn {\\n padding: 4px 8px;\\n font-size: 12px;\\n min-height: 32px;\\n }\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 var(--spacing-sm);\\n color: var(--text-secondary);\\n font-size: 18px;\\n cursor: pointer;\\n transition: all var(--transition-fast);\\n min-width: 44px;\\n min-height: 44px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: var(--radius-sm);\\n}\\n.dynamic-delete-button:hover {\\n color: var(--text-primary);\\n background: var(--bg-tertiary);\\n}\\n.dynamic-delete-button:active {\\n transform: scale(0.95);\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n@media (max-width: 575px) {\\n .dynamic-delete-button {\\n font-size: 20px;\\n margin: 0 var(--spacing-xs);\\n }\\n}\\n@media (min-width: 1200px) {\\n .dynamic-delete-button {\\n font-size: 22px;\\n min-width: 48px;\\n min-height: 48px;\\n }\\n}\\n@media (max-width: 767px) {\\n .tg-channel-item {\\n display: flex !important;\\n flex-direction: row !important;\\n align-items: flex-start !important;\\n gap: var(--spacing-sm) !important;\\n width: 100%;\\n margin-bottom: var(--spacing-md) !important;\\n }\\n .tg-channel-item .tg-channel-input,\\n .tg-channel-item .tg-remark-input {\\n flex: 1 1 40%;\\n min-width: 0;\\n }\\n .tg-channel-item .tg-channel-input .ant-input,\\n .tg-channel-item .tg-remark-input .ant-input {\\n font-size: 16px !important;\\n min-height: 44px;\\n padding: 8px 11px;\\n border-radius: var(--radius-sm);\\n }\\n .tg-channel-item .tg-delete-btn {\\n flex: 0 0 44px;\\n min-width: 44px;\\n min-height: 44px;\\n }\\n .tg-channel-item .tg-delete-btn .ant-btn {\\n min-width: 44px !important;\\n min-height: 44px !important;\\n padding: 0 !important;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: var(--radius-sm);\\n }\\n}\\n.ant-alert {\\n border-radius: var(--radius-sm);\\n animation: slideInUp var(--transition-base);\\n}\\n@media (max-width: 575px) {\\n .ant-alert {\\n font-size: 13px;\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-alert {\\n font-size: 15px;\\n padding: var(--spacing-md) var(--spacing-lg);\\n }\\n}\\n.ant-switch {\\n transition: all var(--transition-fast);\\n}\\n@media (max-width: 767px) {\\n .ant-switch {\\n min-width: 44px;\\n height: 24px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-switch {\\n min-width: 52px;\\n height: 28px;\\n }\\n}\\n@media (max-width: 575px) {\\n .ant-modal {\\n margin: var(--spacing-sm);\\n max-width: calc(100vw - var(--spacing-md));\\n }\\n}\\n.ant-modal .ant-modal-content {\\n border-radius: var(--radius-md);\\n overflow: hidden;\\n}\\n.ant-modal .ant-modal-header {\\n border-bottom: 1px solid var(--border-color-light);\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (min-width: 1200px) {\\n .ant-modal .ant-modal-header {\\n padding: var(--spacing-lg) var(--spacing-xl);\\n }\\n}\\n.ant-modal .ant-modal-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-modal .ant-modal-body {\\n padding: var(--spacing-md);\\n }\\n}\\n@media (min-width: 1200px) {\\n .ant-modal .ant-modal-body {\\n padding: var(--spacing-xl);\\n font-size: 15px;\\n }\\n}\\n.ant-divider {\\n margin: var(--spacing-md) 0;\\n}\\n@media (max-width: 575px) {\\n .ant-divider {\\n margin: var(--spacing-sm) 0;\\n }\\n}\\n.ant-space.ant-space-vertical {\\n width: 100%;\\n}\\n.ant-tag {\\n border-radius: var(--radius-sm);\\n padding: 2px 8px;\\n font-size: 12px;\\n transition: all var(--transition-fast);\\n}\\n.ant-tag:hover {\\n opacity: 0.8;\\n}\\n.ant-list .ant-list-item {\\n padding: var(--spacing-md);\\n transition: background var(--transition-fast);\\n border-radius: var(--radius-sm);\\n}\\n.ant-list .ant-list-item:hover {\\n background: var(--bg-tertiary);\\n}\\n@media (max-width: 575px) {\\n .ant-list .ant-list-item {\\n padding: var(--spacing-sm);\\n }\\n}\\n::-webkit-scrollbar {\\n width: 8px;\\n height: 8px;\\n}\\n::-webkit-scrollbar-track {\\n background: var(--bg-secondary);\\n}\\n::-webkit-scrollbar-thumb {\\n background: var(--border-color);\\n border-radius: 4px;\\n}\\n::-webkit-scrollbar-thumb:hover {\\n background: var(--text-tertiary);\\n}\\n.ant-skeleton {\\n animation: fadeIn var(--transition-base);\\n}\\n.fade-in {\\n animation: fadeIn var(--transition-base);\\n}\\n.slide-in-up {\\n animation: slideInUp var(--transition-base);\\n}\\n.slide-in-right {\\n animation: slideInRight var(--transition-base);\\n}\\n.scale-in {\\n animation: scaleIn var(--transition-base);\\n}\\n.ant-spin .ant-spin-dot {\\n font-size: 24px;\\n}\\n@media (max-width: 575px) {\\n .ant-spin .ant-spin-dot {\\n font-size: 20px;\\n }\\n}\\n.loading-overlay {\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background: rgba(0, 0, 0, 0.45);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n z-index: 9999;\\n backdrop-filter: blur(4px);\\n animation: fadeIn var(--transition-fast);\\n}\\n@media (max-width: 767px) {\\n .ant-btn,\\n .ant-tabs-tab,\\n .ant-list-item,\\n .ant-table-row,\\n .dynamic-delete-button {\\n -webkit-tap-highlight-color: rgba(24, 144, 255, 0.1);\\n }\\n .ant-btn:active,\\n .ant-tabs-tab:active,\\n .ant-list-item:active,\\n .ant-table-row:active,\\n .dynamic-delete-button:active {\\n opacity: 0.8;\\n }\\n .ant-tabs-content,\\n .ant-card-body,\\n .ant-table-wrapper,\\n .ant-modal-body {\\n -webkit-overflow-scrolling: touch;\\n overscroll-behavior: contain;\\n }\\n body {\\n overscroll-behavior-y: contain;\\n }\\n html.platform-android .ant-tabs-content-holder,\\n html.platform-android .ant-tabs-content {\\n height: auto;\\n overflow-y: visible;\\n overscroll-behavior-y: auto;\\n }\\n html.platform-android .ant-table-wrapper {\\n overscroll-behavior-y: auto;\\n }\\n}\\n.ant-btn:focus-visible,\\n.ant-input:focus-visible,\\n.ant-select:focus-visible,\\n.ant-tabs-tab:focus-visible {\\n outline: 2px solid var(--primary-color);\\n outline-offset: 2px;\\n}\\n.ant-btn:focus:not(:focus-visible),\\n.ant-input:focus:not(:focus-visible),\\n.ant-select:focus:not(:focus-visible),\\n.ant-tabs-tab:focus:not(:focus-visible) {\\n outline: none;\\n}\\n.ant-empty {\\n padding: var(--spacing-xl) var(--spacing-md);\\n}\\n.ant-empty .ant-empty-image {\\n height: 100px;\\n margin-bottom: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-empty .ant-empty-image {\\n height: 80px;\\n }\\n}\\n.ant-empty .ant-empty-description {\\n color: var(--text-secondary);\\n font-size: 14px;\\n}\\n@media (max-width: 575px) {\\n .ant-empty .ant-empty-description {\\n font-size: 13px;\\n }\\n}\\n.ant-message {\\n top: 20px;\\n}\\n@media (max-width: 575px) {\\n .ant-message {\\n top: 10px;\\n }\\n}\\n.ant-message .ant-message-notice-content {\\n border-radius: var(--radius-md);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n padding: 12px 16px;\\n}\\n@media (max-width: 575px) {\\n .ant-message .ant-message-notice-content {\\n padding: 10px 14px;\\n font-size: 14px;\\n }\\n}\\n.ant-skeleton .ant-skeleton-content .ant-skeleton-title {\\n height: 20px;\\n border-radius: var(--radius-sm);\\n}\\n.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph > li {\\n height: 16px;\\n border-radius: var(--radius-sm);\\n}\\n.ant-skeleton .ant-skeleton-avatar {\\n border-radius: var(--radius-md);\\n}\\n.ant-skeleton .ant-skeleton-button {\\n border-radius: var(--radius-sm);\\n}\\n.ant-drawer .ant-drawer-content {\\n border-radius: var(--radius-lg) var(--radius-lg) 0 0;\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-content {\\n border-radius: var(--radius-md) var(--radius-md) 0 0;\\n }\\n}\\n.ant-drawer .ant-drawer-header {\\n padding: var(--spacing-md) var(--spacing-lg);\\n border-bottom: 1px solid var(--border-color-light);\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-header {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-drawer .ant-drawer-body {\\n padding: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-drawer .ant-drawer-body {\\n padding: var(--spacing-md);\\n }\\n}\\n.ant-popover .ant-popover-inner,\\n.ant-tooltip .ant-popover-inner,\\n.ant-popover .ant-tooltip-inner,\\n.ant-tooltip .ant-tooltip-inner {\\n border-radius: var(--radius-sm);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-badge .ant-badge-count {\\n border-radius: var(--radius-sm);\\n box-shadow: 0 2px 4px var(--shadow-color);\\n}\\n.ant-progress .ant-progress-inner {\\n border-radius: var(--radius-sm);\\n}\\n.ant-progress .ant-progress-bg {\\n border-radius: var(--radius-sm);\\n}\\n.ant-steps .ant-steps-item-icon {\\n border-radius: 50%;\\n transition: all var(--transition-fast);\\n}\\n.ant-steps .ant-steps-item-title {\\n font-weight: 500;\\n}\\n.ant-collapse {\\n border-radius: var(--radius-md);\\n border: 1px solid var(--border-color-light);\\n}\\n.ant-collapse .ant-collapse-item {\\n border-bottom: 1px solid var(--border-color-light);\\n}\\n.ant-collapse .ant-collapse-item:last-child {\\n border-bottom: none;\\n border-radius: 0 0 var(--radius-md) var(--radius-md);\\n}\\n.ant-collapse .ant-collapse-header {\\n padding: var(--spacing-md) var(--spacing-lg);\\n font-weight: 500;\\n transition: background var(--transition-fast);\\n}\\n.ant-collapse .ant-collapse-header:hover {\\n background: var(--bg-tertiary);\\n}\\n@media (max-width: 575px) {\\n .ant-collapse .ant-collapse-header {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-collapse .ant-collapse-content-box {\\n padding: var(--spacing-md) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-collapse .ant-collapse-content-box {\\n padding: var(--spacing-sm) var(--spacing-md);\\n }\\n}\\n.ant-timeline .ant-timeline-item-head {\\n border-radius: 50%;\\n}\\n.ant-timeline .ant-timeline-item-content {\\n margin-left: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-timeline .ant-timeline-item-content {\\n margin-left: var(--spacing-md);\\n }\\n}\\n.ant-result {\\n padding: var(--spacing-xl) var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-result {\\n padding: var(--spacing-lg) var(--spacing-md);\\n }\\n}\\n.ant-result .ant-result-icon {\\n margin-bottom: var(--spacing-lg);\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-icon {\\n margin-bottom: var(--spacing-md);\\n }\\n}\\n.ant-result .ant-result-title {\\n font-size: 24px;\\n font-weight: 600;\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-title {\\n font-size: 20px;\\n }\\n}\\n.ant-result .ant-result-subtitle {\\n font-size: 14px;\\n color: var(--text-secondary);\\n}\\n@media (max-width: 575px) {\\n .ant-result .ant-result-subtitle {\\n font-size: 13px;\\n }\\n}\\n.ant-descriptions .ant-descriptions-item-label {\\n font-weight: 500;\\n color: var(--text-primary);\\n}\\n.ant-descriptions .ant-descriptions-item-content {\\n color: var(--text-secondary);\\n}\\n@media (max-width: 575px) {\\n .ant-descriptions .ant-descriptions-item-label,\\n .ant-descriptions .ant-descriptions-item-content {\\n font-size: 13px;\\n }\\n}\\n.ant-statistic .ant-statistic-title {\\n font-size: 14px;\\n color: var(--text-secondary);\\n margin-bottom: var(--spacing-xs);\\n}\\n@media (max-width: 575px) {\\n .ant-statistic .ant-statistic-title {\\n font-size: 13px;\\n }\\n}\\n.ant-statistic .ant-statistic-content {\\n font-size: 24px;\\n font-weight: 600;\\n color: var(--text-primary);\\n}\\n@media (max-width: 575px) {\\n .ant-statistic .ant-statistic-content {\\n font-size: 20px;\\n }\\n}\\n.ant-segmented {\\n border-radius: var(--radius-sm);\\n padding: 2px;\\n background: var(--bg-tertiary);\\n}\\n.ant-segmented .ant-segmented-item {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-segmented .ant-segmented-item:hover {\\n color: var(--primary-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-segmented .ant-segmented-item {\\n padding: 6px 12px;\\n font-size: 13px;\\n }\\n}\\n.ant-segmented .ant-segmented-item-selected {\\n background: var(--bg-primary);\\n box-shadow: 0 2px 4px var(--shadow-color);\\n}\\n.ant-rate .ant-rate-star {\\n transition: all var(--transition-fast);\\n}\\n.ant-rate .ant-rate-star:hover {\\n transform: scale(1.1);\\n}\\n@media (max-width: 575px) {\\n .ant-rate {\\n font-size: 18px;\\n }\\n}\\n.ant-slider .ant-slider-rail {\\n border-radius: var(--radius-sm);\\n}\\n.ant-slider .ant-slider-track {\\n border-radius: var(--radius-sm);\\n}\\n.ant-slider .ant-slider-handle {\\n border-radius: 50%;\\n box-shadow: 0 2px 4px var(--shadow-color);\\n transition: all var(--transition-fast);\\n}\\n.ant-slider .ant-slider-handle:hover,\\n.ant-slider .ant-slider-handle:focus {\\n box-shadow: 0 4px 8px var(--shadow-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-slider .ant-slider-handle {\\n width: 20px;\\n height: 20px;\\n }\\n}\\n.ant-mentions {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-mentions:hover {\\n border-color: var(--primary-hover);\\n}\\n.ant-mentions:focus,\\n.ant-mentions.ant-mentions-focused {\\n border-color: var(--primary-color);\\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 575px) {\\n .ant-mentions {\\n font-size: 16px !important;\\n min-height: 44px;\\n }\\n}\\n.ant-transfer .ant-transfer-list {\\n border-radius: var(--radius-md);\\n border: 1px solid var(--border-color-light);\\n}\\n@media (max-width: 575px) {\\n .ant-transfer .ant-transfer-list {\\n width: 100%;\\n }\\n}\\n.ant-transfer .ant-transfer-list-header {\\n border-radius: var(--radius-md) var(--radius-md) 0 0;\\n background: var(--bg-tertiary);\\n padding: var(--spacing-sm) var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-transfer .ant-transfer-list-body {\\n font-size: 14px;\\n }\\n}\\n.ant-tree .ant-tree-node-content-wrapper {\\n border-radius: var(--radius-sm);\\n transition: all var(--transition-fast);\\n}\\n.ant-tree .ant-tree-node-content-wrapper:hover {\\n background: var(--bg-tertiary);\\n}\\n.ant-tree .ant-tree-node-selected .ant-tree-node-content-wrapper {\\n background: rgba(24, 144, 255, 0.1);\\n}\\n@media (max-width: 575px) {\\n .ant-tree .ant-tree-title {\\n font-size: 14px;\\n }\\n}\\n.ant-picker-calendar {\\n border-radius: var(--radius-md);\\n}\\n.ant-picker-calendar .ant-picker-calendar-header {\\n padding: var(--spacing-md);\\n}\\n@media (max-width: 575px) {\\n .ant-picker-calendar .ant-picker-calendar-header {\\n padding: var(--spacing-sm);\\n }\\n}\\n.ant-picker-calendar .ant-picker-cell {\\n border-radius: var(--radius-sm);\\n}\\n.ant-picker-calendar .ant-picker-cell:hover .ant-picker-cell-inner {\\n background: var(--bg-tertiary);\\n}\\n.ant-picker-calendar .ant-picker-cell-selected .ant-picker-cell-inner {\\n background: var(--primary-color);\\n color: white;\\n}\\n.ant-image {\\n border-radius: var(--radius-md);\\n overflow: hidden;\\n}\\n.ant-image img {\\n transition: transform var(--transition-base);\\n}\\n.ant-image:hover img {\\n transform: scale(1.05);\\n}\\n.ant-watermark {\\n opacity: 0.15;\\n}\\n.ant-qrcode {\\n border-radius: var(--radius-md);\\n padding: var(--spacing-md);\\n background: white;\\n box-shadow: 0 2px 8px var(--shadow-color);\\n}\\n.ant-float-btn {\\n border-radius: 50%;\\n box-shadow: 0 4px 12px var(--shadow-color);\\n transition: all var(--transition-fast);\\n}\\n.ant-float-btn:hover {\\n transform: translateY(-2px);\\n box-shadow: 0 6px 16px var(--shadow-hover);\\n}\\n@media (max-width: 575px) {\\n .ant-float-btn {\\n width: 48px;\\n height: 48px;\\n }\\n}\\n.ant-tour .ant-tour-content {\\n border-radius: var(--radius-md);\\n box-shadow: 0 4px 12px var(--shadow-color);\\n}\\n.ant-tour .ant-tour-arrow::before {\\n background: var(--bg-primary);\\n}\\n@media print {\\n .container {\\n padding: 0;\\n background: white;\\n }\\n .ant-tabs-nav,\\n .ant-btn,\\n .ant-tabs-extra-content {\\n display: none !important;\\n }\\n * {\\n animation: none !important;\\n transition: none !important;\\n }\\n}\\n',document.head.appendChild(e)}var Uc=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var k=_(J(),1),z=_(_e(),1);var G=_(J()),Rr=_(Co());function ut(e){return\"Minified Redux error #\".concat(e,\"; visit https://redux.js.org/Errors?code=\").concat(e,\" for the full message or use the non-minified dev environment for full errors. \")}var Lb=typeof Symbol==\"function\"&&Symbol.observable||\"@@observable\",Wc=Lb,Ii=()=>Math.random().toString(36).substring(7).split(\"\").join(\".\"),Mb={INIT:\"@@redux/INIT\".concat(Ii()),REPLACE:\"@@redux/REPLACE\".concat(Ii()),PROBE_UNKNOWN_ACTION:()=>\"@@redux/PROBE_UNKNOWN_ACTION\".concat(Ii())},Gc=Mb;function Vb(e){if(typeof e!=\"object\"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function Ei(e,t,n){if(typeof e!=\"function\")throw new Error(ut(2));if(typeof t==\"function\"&&typeof n==\"function\"||typeof n==\"function\"&&typeof arguments[3]==\"function\")throw new Error(ut(0));if(typeof t==\"function\"&&typeof n>\"u\"&&(n=t,t=void 0),typeof n<\"u\"){if(typeof n!=\"function\")throw new Error(ut(1));return n(Ei)(e,t)}let r=e,o=t,a=new Map,i=a,s=0,l=!1;function c(){i===a&&(i=new Map,a.forEach((v,y)=>{i.set(y,v)}))}function f(){if(l)throw new Error(ut(3));return o}function d(v){if(typeof v!=\"function\")throw new Error(ut(4));if(l)throw new Error(ut(5));let y=!0;c();let b=s++;return i.set(b,v),function(){if(y){if(l)throw new Error(ut(6));y=!1,c(),i.delete(b),a=null}}}function u(v){if(!Vb(v))throw new Error(ut(7));if(typeof v.type>\"u\")throw new Error(ut(8));if(typeof v.type!=\"string\")throw new Error(ut(17));if(l)throw new Error(ut(9));try{l=!0,o=r(o,v)}finally{l=!1}return(a=i).forEach(b=>{b()}),v}function m(v){if(typeof v!=\"function\")throw new Error(ut(10));r=v,u({type:Gc.REPLACE})}function h(){let v=d;return{subscribe(y){if(typeof y!=\"object\"||y===null)throw new Error(ut(11));function b(){let w=y;w.next&&w.next(f())}return b(),{unsubscribe:v(b)}},[Wc](){return this}}}return u({type:Gc.INIT}),{dispatch:u,subscribe:d,getState:f,replaceReducer:m,[Wc]:h}}function jc(e,t){return function(...n){return t(e.apply(this,n))}}function Ti(e,t){if(typeof e==\"function\")return jc(e,t);if(typeof e!=\"object\"||e===null)throw new Error(ut(16));let n={};for(let r in e){let o=e[r];typeof o==\"function\"&&(n[r]=jc(o,t))}return n}function ki(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function Hc(...e){return t=>(n,r)=>{let o=t(n,r),a=()=>{throw new Error(ut(15))},i={getState:o.getState,dispatch:(l,...c)=>a(l,...c)},s=e.map(l=>l(i));return a=ki(...s)(o.dispatch),I(C({},o),{dispatch:a})}}var le=_(J(),1),Vx=_(Xc(),1);var qb=le.version.startsWith(\"19\"),Yb=Symbol.for(qb?\"react.transitional.element\":\"react.element\"),Kb=Symbol.for(\"react.portal\"),Xb=Symbol.for(\"react.fragment\"),Jb=Symbol.for(\"react.strict_mode\"),Qb=Symbol.for(\"react.profiler\"),Zb=Symbol.for(\"react.consumer\"),Rb=Symbol.for(\"react.context\"),nu=Symbol.for(\"react.forward_ref\"),ex=Symbol.for(\"react.suspense\"),tx=Symbol.for(\"react.suspense_list\"),Bi=Symbol.for(\"react.memo\"),nx=Symbol.for(\"react.lazy\");var rx=nu,ox=Bi;function ax(e){if(typeof e==\"object\"&&e!==null){let{$$typeof:t}=e;switch(t){case Yb:switch(e=e.type,e){case Xb:case Qb:case Jb:case ex:case tx:return e;default:switch(e=e&&e.$$typeof,e){case Rb:case nu:case nx:case Bi:return e;case Zb:return e;default:return t}}case Kb:return t}}}function ix(e){return ax(e)===Bi}function sx(e,t,n,r,{areStatesEqual:o,areOwnPropsEqual:a,areStatePropsEqual:i}){let s=!1,l,c,f,d,u;function m(b,S){return l=b,c=S,f=e(l,c),d=t(r,c),u=n(f,d,c),s=!0,u}function h(){return f=e(l,c),t.dependsOnOwnProps&&(d=t(r,c)),u=n(f,d,c),u}function x(){return e.dependsOnOwnProps&&(f=e(l,c)),t.dependsOnOwnProps&&(d=t(r,c)),u=n(f,d,c),u}function v(){let b=e(l,c),S=!i(b,f);return f=b,S&&(u=n(f,d,c)),u}function y(b,S){let w=!a(S,c),D=!o(b,l,S,c);return l=b,c=S,w&&D?h():w?x():D?v():u}return function(S,w){return s?y(S,w):m(S,w)}}function lx(e,a){var i=a,{initMapStateToProps:t,initMapDispatchToProps:n,initMergeProps:r}=i,o=$t(i,[\"initMapStateToProps\",\"initMapDispatchToProps\",\"initMergeProps\"]);let s=t(e,o),l=n(e,o),c=r(e,o);return sx(s,l,c,e,o)}function dx(e,t){let n={};for(let r in e){let o=e[r];typeof o==\"function\"&&(n[r]=(...a)=>t(o(...a)))}return n}function Pi(e){return function(n){let r=e(n);function o(){return r}return o.dependsOnOwnProps=!1,o}}function Jc(e){return e.dependsOnOwnProps?!!e.dependsOnOwnProps:e.length!==1}function ru(e,t){return function(r,{displayName:o}){let a=function(s,l){return a.dependsOnOwnProps?a.mapToProps(s,l):a.mapToProps(s,void 0)};return a.dependsOnOwnProps=!0,a.mapToProps=function(s,l){a.mapToProps=e,a.dependsOnOwnProps=Jc(e);let c=a(s,l);return typeof c==\"function\"&&(a.mapToProps=c,a.dependsOnOwnProps=Jc(c),c=a(s,l)),c},a}}function Li(e,t){return(n,r)=>{throw new Error(\"Invalid value of type \".concat(typeof e,\" for \").concat(t,\" argument when connecting component \").concat(r.wrappedComponentName,\".\"))}}function cx(e){return e&&typeof e==\"object\"?Pi(t=>dx(e,t)):e?typeof e==\"function\"?ru(e,\"mapDispatchToProps\"):Li(e,\"mapDispatchToProps\"):Pi(t=>({dispatch:t}))}function ux(e){return e?typeof e==\"function\"?ru(e,\"mapStateToProps\"):Li(e,\"mapStateToProps\"):Pi(()=>({}))}function fx(e,t,n){return C(C(C({},n),e),t)}function px(e){return function(n,{displayName:r,areMergedPropsEqual:o}){let a=!1,i;return function(l,c,f){let d=e(l,c,f);return a?o(d,i)||(i=d):(a=!0,i=d),i}}}function mx(e){return e?typeof e==\"function\"?px(e):Li(e,\"mergeProps\"):()=>fx}function gx(e){e()}function hx(){let e=null,t=null;return{clear(){e=null,t=null},notify(){gx(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){let n=[],r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0,o=t={callback:n,next:null,prev:t};return o.prev?o.prev.next=o:e=o,function(){!r||e===null||(r=!1,o.next?o.next.prev=o.prev:t=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}var Qc={notify(){},get:()=>[]};function ou(e,t){let n,r=Qc,o=0,a=!1;function i(x){f();let v=r.subscribe(x),y=!1;return()=>{y||(y=!0,v(),d())}}function s(){r.notify()}function l(){h.onStateChange&&h.onStateChange()}function c(){return a}function f(){o++,n||(n=t?t.addNestedSub(l):e.subscribe(l),r=hx())}function d(){o--,n&&o===0&&(n(),n=void 0,r.clear(),r=Qc)}function u(){a||(a=!0,f())}function m(){a&&(a=!1,d())}let h={addNestedSub:i,notifyNestedSubs:s,handleChangeWrapper:l,isSubscribed:c,trySubscribe:u,tryUnsubscribe:m,getListeners:()=>r};return h}var bx=()=>typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\",xx=bx(),vx=()=>typeof navigator<\"u\"&&navigator.product===\"ReactNative\",yx=vx(),wx=()=>xx||yx?le.useLayoutEffect:le.useEffect,wa=wx();function Zc(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function Ni(e,t){if(Zc(e,t))return!0;if(typeof e!=\"object\"||e===null||typeof t!=\"object\"||t===null)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let o=0;oe(...t),n)}function Px(e,t,n,r,o,a){e.current=r,n.current=!1,o.current&&(o.current=null,a())}function _x(e,t,n,r,o,a,i,s,l,c,f){if(!e)return()=>{};let d=!1,u=null,m=()=>{if(d||!s.current)return;let x=t.getState(),v,y;try{v=r(x,o.current)}catch(b){y=b,u=b}y||(u=null),v===a.current?i.current||c():(a.current=v,l.current=v,i.current=!0,f())};return n.onStateChange=m,n.trySubscribe(),m(),()=>{if(d=!0,n.tryUnsubscribe(),n.onStateChange=null,u)throw u}}function Bx(e,t){return e===t}function Lx(e,t,n,{pure:r,areStatesEqual:o=Bx,areOwnPropsEqual:a=Ni,areStatePropsEqual:i=Ni,areMergedPropsEqual:s=Ni,forwardRef:l=!1,context:c=iu}={}){let f=c,d=ux(e),u=cx(t),m=mx(n),h=!!e;return v=>{let y=v.displayName||v.name||\"Component\",b=\"Connect(\".concat(y,\")\"),S={shouldHandleStateChanges:h,displayName:b,wrappedComponentName:y,WrappedComponent:v,initMapStateToProps:d,initMapDispatchToProps:u,initMergeProps:m,areStatesEqual:o,areStatePropsEqual:i,areOwnPropsEqual:a,areMergedPropsEqual:s};function w(F){let[T,P,V]=le.useMemo(()=>{let Dt=F,{reactReduxForwardedRef:Le}=Dt,ht=$t(Dt,[\"reactReduxForwardedRef\"]);return[F.context,Le,ht]},[F]),E=le.useMemo(()=>{let Le=f;return T!=null&&T.Consumer,Le},[T,f]),N=le.useContext(E),U=!!F.store&&!!F.store.getState&&!!F.store.dispatch,K=!!N&&!!N.store,de=U?F.store:N.store,ve=K?N.getServerState:de.getState,Oe=le.useMemo(()=>lx(de.dispatch,S),[de]),[Ke,Ge]=le.useMemo(()=>{if(!h)return Fx;let Le=ou(de,U?void 0:N.subscription),ht=Le.notifyNestedSubs.bind(Le);return[Le,ht]},[de,U,N]),Xt=le.useMemo(()=>U?N:I(C({},N),{subscription:Ke}),[U,N,Ke]),Jt=le.useRef(void 0),Xe=le.useRef(V),lt=le.useRef(void 0),Lt=le.useRef(!1),jt=le.useRef(!1),nt=le.useRef(void 0);wa(()=>(jt.current=!0,()=>{jt.current=!1}),[]);let fn=le.useMemo(()=>()=>lt.current&&V===Xe.current?lt.current:Oe(de.getState(),V),[de,V]),Mt=le.useMemo(()=>ht=>Ke?_x(h,de,Ke,Oe,Xe,Jt,Lt,jt,lt,Ge,ht):()=>{},[Ke]);Ax(Px,[Xe,Jt,Lt,V,lt,Ge]);let gt;try{gt=le.useSyncExternalStore(Mt,fn,ve?()=>Oe(ve(),V):fn)}catch(Le){throw nt.current&&(Le.message+=\"\\nThe error may be correlated with this previous error:\\n\".concat(nt.current.stack,\"\\n\\n\")),Le}wa(()=>{nt.current=void 0,lt.current=void 0,Jt.current=gt});let we=le.useMemo(()=>le.createElement(v,I(C({},gt),{ref:P})),[P,v,gt]);return le.useMemo(()=>h?le.createElement(E.Provider,{value:Xt},we):we,[E,we,Xt])}let O=le.memo(w);if(O.WrappedComponent=v,O.displayName=w.displayName=b,l){let T=le.forwardRef(function(V,E){return le.createElement(O,I(C({},V),{reactReduxForwardedRef:E}))});return T.displayName=b,T.WrappedComponent=v,_i(T,v)}return _i(O,v)}}var Mi=Lx;function Mx(e){let{children:t,context:n,serverState:r,store:o}=e,a=le.useMemo(()=>{let l=ou(o);return{store:o,subscription:l,getServerState:r?()=>r:void 0}},[o,r]),i=le.useMemo(()=>o.getState(),[o]);return wa(()=>{let{subscription:l}=a;return l.onStateChange=l.notifyNestedSubs,l.trySubscribe(),i!==o.getState()&&l.notifyNestedSubs(),()=>{l.tryUnsubscribe(),l.onStateChange=void 0}},[a,i]),le.createElement((n||iu).Provider,{value:a},t)}var su=Mx;var zx=!0,Vi=\"Invariant failed\";function lu(e,t){if(!e){if(zx)throw new Error(Vi);var n=typeof t==\"function\"?t():t,r=n?\"\".concat(Vi,\": \").concat(n):Vi;throw new Error(r)}}var Nt=function(t){var n=t.top,r=t.right,o=t.bottom,a=t.left,i=r-a,s=o-n,l={top:n,right:r,bottom:o,left:a,width:i,height:s,x:a,y:n,center:{x:(r+a)/2,y:(o+n)/2}};return l},Ca=function(t,n){return{top:t.top-n.top,left:t.left-n.left,bottom:t.bottom+n.bottom,right:t.right+n.right}},du=function(t,n){return{top:t.top+n.top,left:t.left+n.left,bottom:t.bottom-n.bottom,right:t.right-n.right}},$x=function(t,n){return{top:t.top+n.y,left:t.left+n.x,bottom:t.bottom+n.y,right:t.right+n.x}},zi={top:0,right:0,bottom:0,left:0},Sa=function(t){var n=t.borderBox,r=t.margin,o=r===void 0?zi:r,a=t.border,i=a===void 0?zi:a,s=t.padding,l=s===void 0?zi:s,c=Nt(Ca(n,o)),f=Nt(du(n,i)),d=Nt(du(f,l));return{marginBox:c,borderBox:Nt(n),paddingBox:f,contentBox:d,margin:o,border:i,padding:l}},kt=function(t){var n=t.slice(0,-2),r=t.slice(-2);if(r!==\"px\")return 0;var o=Number(n);return isNaN(o)&&lu(!1),o},Ux=function(){return{x:window.pageXOffset,y:window.pageYOffset}},zr=function(t,n){var r=t.borderBox,o=t.border,a=t.margin,i=t.padding,s=$x(r,n);return Sa({borderBox:s,border:o,margin:a,padding:i})},$r=function(t,n){return n===void 0&&(n=Ux()),zr(t,n)},$i=function(t,n){var r={top:kt(n.marginTop),right:kt(n.marginRight),bottom:kt(n.marginBottom),left:kt(n.marginLeft)},o={top:kt(n.paddingTop),right:kt(n.paddingRight),bottom:kt(n.paddingBottom),left:kt(n.paddingLeft)},a={top:kt(n.borderTopWidth),right:kt(n.borderRightWidth),bottom:kt(n.borderBottomWidth),left:kt(n.borderLeftWidth)};return Sa({borderBox:t,margin:r,padding:o,border:a})},Ui=function(t){var n=t.getBoundingClientRect(),r=window.getComputedStyle(t);return $i(n,r)};var Wx=function(t){var n=[],r=null,o=function(){for(var i=arguments.length,s=new Array(i),l=0;le.replace(jx,\" \").replace(Hx,\"\").trim(),qx=e=>cu(\"\\n %c@hello-pangea/dnd\\n\\n %c\".concat(cu(e),\"\\n\\n %c\\u{1F477}\\u200D This is a development only message. It will be removed in production builds.\\n\")),Yx=e=>[qx(e),\"color: #00C584; font-size: 1.2em; font-weight: bold;\",\"line-height: 1.5\",\"color: #723874;\"],Kx=\"__@hello-pangea/dnd-disable-dev-warnings\";function Vu(e,t){Gx||typeof window<\"u\"&&window[Kx]||console[e](...Yx(t))}var MI=Vu.bind(null,\"warn\"),Xx=Vu.bind(null,\"error\");function sn(){}function Jx(e,t){return C(C({},e),t)}function Ft(e,t,n){let r=t.map(o=>{let a=Jx(n,o.options);return e.addEventListener(o.eventName,o.fn,a),function(){e.removeEventListener(o.eventName,o.fn,a)}});return function(){r.forEach(a=>{a()})}}var Qx=!0,uu=\"Invariant failed\",Pn=class extends Error{};Pn.prototype.toString=function(){return this.message};function B(e,t){throw Qx?new Pn(uu):new Pn(\"\".concat(uu,\": \").concat(t||\"\"))}var Zi=class extends G.default.Component{constructor(...t){super(...t),this.callbacks=null,this.unbind=sn,this.onWindowError=n=>{let r=this.getCallbacks();r.isDragging()&&r.tryAbort(),n.error instanceof Pn&&n.preventDefault()},this.getCallbacks=()=>{if(!this.callbacks)throw new Error(\"Unable to find AppCallbacks in \");return this.callbacks},this.setCallbacks=n=>{this.callbacks=n}}componentDidMount(){this.unbind=Ft(window,[{eventName:\"error\",fn:this.onWindowError}])}componentDidCatch(t){if(t instanceof Pn){this.setState({});return}throw t}componentWillUnmount(){this.unbind()}render(){return this.props.children(this.setCallbacks)}},Zx=\"\\n Press space bar to start a drag.\\n When dragging you can use the arrow keys to move the item around and escape to cancel.\\n Some screen readers may require you to be in focus mode or to use your pass through key\\n\",Ta=e=>e+1,Rx=e=>\"\\n You have lifted an item in position \".concat(Ta(e.source.index),\"\\n\"),zu=(e,t)=>{let n=e.droppableId===t.droppableId,r=Ta(e.index),o=Ta(t.index);return n?\"\\n You have moved the item from position \".concat(r,\"\\n to position \").concat(o,\"\\n \"):\"\\n You have moved the item from position \".concat(r,\"\\n in list \").concat(e.droppableId,\"\\n to list \").concat(t.droppableId,\"\\n in position \").concat(o,\"\\n \")},$u=(e,t,n)=>t.droppableId===n.droppableId?\"\\n The item \".concat(e,\"\\n has been combined with \").concat(n.draggableId):\"\\n The item \".concat(e,\"\\n in list \").concat(t.droppableId,\"\\n has been combined with \").concat(n.draggableId,\"\\n in list \").concat(n.droppableId,\"\\n \"),ev=e=>{let t=e.destination;if(t)return zu(e.source,t);let n=e.combine;return n?$u(e.draggableId,e.source,n):\"You are over an area that cannot be dropped on\"},fu=e=>\"\\n The item has returned to its starting position\\n of \".concat(Ta(e.index),\"\\n\"),tv=e=>{if(e.reason===\"CANCEL\")return\"\\n Movement cancelled.\\n \".concat(fu(e.source),\"\\n \");let t=e.destination,n=e.combine;return t?\"\\n You have dropped the item.\\n \".concat(zu(e.source,t),\"\\n \"):n?\"\\n You have dropped the item.\\n \".concat($u(e.draggableId,e.source,n),\"\\n \"):\"\\n The item has been dropped while not over a drop area.\\n \".concat(fu(e.source),\"\\n \")},Ea={dragHandleUsageInstructions:Zx,onDragStart:Rx,onDragUpdate:ev,onDragEnd:tv};function nv(e,t){return!!(e===t||Number.isNaN(e)&&Number.isNaN(t))}function Uu(e,t){if(e.length!==t.length)return!1;for(let n=0;n({inputs:t,result:e()}))[0],r=(0,G.useRef)(!0),o=(0,G.useRef)(n),i=r.current||!!(t&&o.current.inputs&&Uu(t,o.current.inputs))?o.current:{inputs:t,result:e()};return(0,G.useEffect)(()=>{r.current=!1,o.current=i},[i]),i.result}function Q(e,t){return ye(()=>e,t)}var tt={x:0,y:0},at=(e,t)=>({x:e.x+t.x,y:e.y+t.y}),wt=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),ln=(e,t)=>e.x===t.x&&e.y===t.y,nr=e=>({x:e.x!==0?-e.x:0,y:e.y!==0?-e.y:0}),_n=(e,t,n=0)=>e===\"x\"?{x:t,y:n}:{x:n,y:t},qr=(e,t)=>Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2),pu=(e,t)=>Math.min(...t.map(n=>qr(e,n))),Wu=e=>t=>({x:e(t.x),y:e(t.y)}),rv=(e,t)=>{let n=Nt({top:Math.max(t.top,e.top),right:Math.min(t.right,e.right),bottom:Math.min(t.bottom,e.bottom),left:Math.max(t.left,e.left)});return n.width<=0||n.height<=0?null:n},eo=(e,t)=>({top:e.top+t.y,left:e.left+t.x,bottom:e.bottom+t.y,right:e.right+t.x}),mu=e=>[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.left,y:e.bottom},{x:e.right,y:e.bottom}],ov={top:0,right:0,bottom:0,left:0},av=(e,t)=>t?eo(e,t.scroll.diff.displacement):e,iv=(e,t,n)=>n&&n.increasedBy?I(C({},e),{[t.end]:e[t.end]+n.increasedBy[t.line]}):e,sv=(e,t)=>t&&t.shouldClipSubject?rv(t.pageMarginBox,e):Nt(e),Rn=({page:e,withPlaceholder:t,axis:n,frame:r})=>{let o=av(e.marginBox,r),a=iv(o,n,t),i=sv(a,r);return{page:e,withPlaceholder:t,active:i}},is=(e,t)=>{e.frame||B();let n=e.frame,r=wt(t,n.scroll.initial),o=nr(r),a=I(C({},n),{scroll:{initial:n.scroll.initial,current:t,diff:{value:r,displacement:o},max:n.scroll.max}}),i=Rn({page:e.subject.page,withPlaceholder:e.subject.withPlaceholder,axis:e.axis,frame:a});return I(C({},e),{frame:a,subject:i})};function et(e,t=Uu){let n=null;function r(...o){if(n&&n.lastThis===this&&t(o,n.lastArgs))return n.lastResult;let a=e.apply(this,o);return n={lastResult:a,lastArgs:o,lastThis:this},a}return r.clear=function(){n=null},r}var Gu=et(e=>e.reduce((t,n)=>(t[n.descriptor.id]=n,t),{})),ju=et(e=>e.reduce((t,n)=>(t[n.descriptor.id]=n,t),{})),Fa=et(e=>Object.values(e)),lv=et(e=>Object.values(e)),rr=et((e,t)=>lv(t).filter(r=>e===r.descriptor.droppableId).sort((r,o)=>r.descriptor.index-o.descriptor.index));function ss(e){return e.at&&e.at.type===\"REORDER\"?e.at.destination:null}function Aa(e){return e.at&&e.at.type===\"COMBINE\"?e.at.combine:null}var Pa=et((e,t)=>t.filter(n=>n.descriptor.id!==e.descriptor.id)),dv=({isMovingForward:e,draggable:t,destination:n,insideDestination:r,previousImpact:o})=>{if(!n.isCombineEnabled||!ss(o))return null;function i(m){let h={type:\"COMBINE\",combine:{draggableId:m,droppableId:n.descriptor.id}};return I(C({},o),{at:h})}let s=o.displaced.all,l=s.length?s[0]:null;if(e)return l?i(l):null;let c=Pa(t,r);if(!l){if(!c.length)return null;let m=c[c.length-1];return i(m.descriptor.id)}let f=c.findIndex(m=>m.descriptor.id===l);f===-1&&B();let d=f-1;if(d<0)return null;let u=c[d];return i(u.descriptor.id)},or=(e,t)=>e.descriptor.droppableId===t.descriptor.id,Hu={point:tt,value:0},Yr={invisible:{},visible:{},all:[]},cv={displaced:Yr,displacedBy:Hu,at:null},At=(e,t)=>n=>e<=n&&n<=t,qu=e=>{let t=At(e.top,e.bottom),n=At(e.left,e.right);return r=>{if(t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right))return!0;let a=t(r.top)||t(r.bottom),i=n(r.left)||n(r.right);if(a&&i)return!0;let l=r.tope.bottom,c=r.lefte.right;return l&&c?!0:l&&i||c&&a}},uv=e=>{let t=At(e.top,e.bottom),n=At(e.left,e.right);return r=>t(r.top)&&t(r.bottom)&&n(r.left)&&n(r.right)},ls={direction:\"vertical\",line:\"y\",crossAxisLine:\"x\",start:\"top\",end:\"bottom\",size:\"height\",crossAxisStart:\"left\",crossAxisEnd:\"right\",crossAxisSize:\"width\"},Yu={direction:\"horizontal\",line:\"x\",crossAxisLine:\"y\",start:\"left\",end:\"right\",size:\"width\",crossAxisStart:\"top\",crossAxisEnd:\"bottom\",crossAxisSize:\"height\"},fv=e=>t=>{let n=At(t.top,t.bottom),r=At(t.left,t.right);return o=>e===ls?n(o.top)&&n(o.bottom):r(o.left)&&r(o.right)},pv=(e,t)=>{let n=t.frame?t.frame.scroll.diff.displacement:tt;return eo(e,n)},mv=(e,t,n)=>t.subject.active?n(t.subject.active)(e):!1,gv=(e,t,n)=>n(t)(e),ds=({target:e,destination:t,viewport:n,withDroppableDisplacement:r,isVisibleThroughFrameFn:o})=>{let a=r?pv(e,t):e;return mv(a,t,o)&&gv(a,n,o)},hv=e=>ds(I(C({},e),{isVisibleThroughFrameFn:qu})),Ku=e=>ds(I(C({},e),{isVisibleThroughFrameFn:uv})),bv=e=>ds(I(C({},e),{isVisibleThroughFrameFn:fv(e.destination.axis)})),xv=(e,t,n)=>{if(typeof n==\"boolean\")return n;if(!t)return!0;let{invisible:r,visible:o}=t;if(r[e])return!1;let a=o[e];return a?a.shouldAnimate:!0};function vv(e,t){let n=e.page.marginBox,r={top:t.point.y,right:0,bottom:0,left:t.point.x};return Nt(Ca(n,r))}function Kr({afterDragging:e,destination:t,displacedBy:n,viewport:r,forceShouldAnimate:o,last:a}){return e.reduce(function(s,l){let c=vv(l,n),f=l.descriptor.id;if(s.all.push(f),!hv({target:c,destination:t,viewport:r,withDroppableDisplacement:!0}))return s.invisible[l.descriptor.id]=!0,s;let u=xv(f,a,o),m={draggableId:f,shouldAnimate:u};return s.visible[f]=m,s},{all:[],visible:{},invisible:{}})}function yv(e,t){if(!e.length)return 0;let n=e[e.length-1].descriptor.index;return t.inHomeList?n:n+1}function gu({insideDestination:e,inHomeList:t,displacedBy:n,destination:r}){let o=yv(e,{inHomeList:t});return{displaced:Yr,displacedBy:n,at:{type:\"REORDER\",destination:{droppableId:r.descriptor.id,index:o}}}}function ka({draggable:e,insideDestination:t,destination:n,viewport:r,displacedBy:o,last:a,index:i,forceShouldAnimate:s}){let l=or(e,n);if(i==null)return gu({insideDestination:t,inHomeList:l,displacedBy:o,destination:n});let c=t.find(h=>h.descriptor.index===i);if(!c)return gu({insideDestination:t,inHomeList:l,displacedBy:o,destination:n});let f=Pa(e,t),d=t.indexOf(c),u=f.slice(d);return{displaced:Kr({afterDragging:u,destination:n,displacedBy:o,last:a,viewport:r.frame,forceShouldAnimate:s}),displacedBy:o,at:{type:\"REORDER\",destination:{droppableId:n.descriptor.id,index:i}}}}function dn(e,t){return!!t.effected[e]}var wv=({isMovingForward:e,destination:t,draggables:n,combine:r,afterCritical:o})=>{if(!t.isCombineEnabled)return null;let a=r.draggableId,s=n[a].descriptor.index;return dn(a,o)?e?s:s-1:e?s+1:s},Cv=({isMovingForward:e,isInHomeList:t,insideDestination:n,location:r})=>{if(!n.length)return null;let o=r.index,a=e?o+1:o-1,i=n[0].descriptor.index,s=n[n.length-1].descriptor.index,l=t?s:s+1;return al?null:a},Sv=({isMovingForward:e,isInHomeList:t,draggable:n,draggables:r,destination:o,insideDestination:a,previousImpact:i,viewport:s,afterCritical:l})=>{let c=i.at;if(c||B(),c.type===\"REORDER\"){let d=Cv({isMovingForward:e,isInHomeList:t,location:c.destination,insideDestination:a});return d==null?null:ka({draggable:n,insideDestination:a,destination:o,viewport:s,last:i.displaced,displacedBy:i.displacedBy,index:d})}let f=wv({isMovingForward:e,destination:o,displaced:i.displaced,draggables:r,combine:c.combine,afterCritical:l});return f==null?null:ka({draggable:n,insideDestination:a,destination:o,viewport:s,last:i.displaced,displacedBy:i.displacedBy,index:f})},Ov=({displaced:e,afterCritical:t,combineWith:n,displacedBy:r})=>{let o=!!(e.visible[n]||e.invisible[n]);return dn(n,t)?o?tt:nr(r.point):o?r.point:tt},Dv=({afterCritical:e,impact:t,draggables:n})=>{let r=Aa(t);r||B();let o=r.draggableId,a=n[o].page.borderBox.center,i=Ov({displaced:t.displaced,afterCritical:e,combineWith:o,displacedBy:t.displacedBy});return at(a,i)},Xu=(e,t)=>t.margin[e.start]+t.borderBox[e.size]/2,Iv=(e,t)=>t.margin[e.end]+t.borderBox[e.size]/2,cs=(e,t,n)=>t[e.crossAxisStart]+n.margin[e.crossAxisStart]+n.borderBox[e.crossAxisSize]/2,hu=({axis:e,moveRelativeTo:t,isMoving:n})=>_n(e.line,t.marginBox[e.end]+Xu(e,n),cs(e,t.marginBox,n)),bu=({axis:e,moveRelativeTo:t,isMoving:n})=>_n(e.line,t.marginBox[e.start]-Iv(e,n),cs(e,t.marginBox,n)),Ev=({axis:e,moveInto:t,isMoving:n})=>_n(e.line,t.contentBox[e.start]+Xu(e,n),cs(e,t.contentBox,n)),Tv=({impact:e,draggable:t,draggables:n,droppable:r,afterCritical:o})=>{let a=rr(r.descriptor.id,n),i=t.page,s=r.axis;if(!a.length)return Ev({axis:s,moveInto:r.page,isMoving:i});let{displaced:l,displacedBy:c}=e,f=l.all[0];if(f){let u=n[f];if(dn(f,o))return bu({axis:s,moveRelativeTo:u.page,isMoving:i});let m=zr(u.page,c.point);return bu({axis:s,moveRelativeTo:m,isMoving:i})}let d=a[a.length-1];if(d.descriptor.id===t.descriptor.id)return i.borderBox.center;if(dn(d.descriptor.id,o)){let u=zr(d.page,nr(o.displacedBy.point));return hu({axis:s,moveRelativeTo:u,isMoving:i})}return hu({axis:s,moveRelativeTo:d.page,isMoving:i})},Ri=(e,t)=>{let n=e.frame;return n?at(t,n.scroll.diff.displacement):t},kv=({impact:e,draggable:t,droppable:n,draggables:r,afterCritical:o})=>{let a=t.page.borderBox.center,i=e.at;return!n||!i?a:i.type===\"REORDER\"?Tv({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:o}):Dv({impact:e,draggables:r,afterCritical:o})},_a=e=>{let t=kv(e),n=e.droppable;return n?Ri(n,t):t},Ju=(e,t)=>{let n=wt(t,e.scroll.initial),r=nr(n);return{frame:Nt({top:t.y,bottom:t.y+e.frame.height,left:t.x,right:t.x+e.frame.width}),scroll:{initial:e.scroll.initial,max:e.scroll.max,current:t,diff:{value:n,displacement:r}}}};function xu(e,t){return e.map(n=>t[n])}function Nv(e,t){for(let n=0;n{let a=Ju(t,at(t.scroll.current,o)),i=n.frame?is(n,at(n.frame.scroll.current,o)):n,s=e.displaced,l=Kr({afterDragging:xu(s.all,r),destination:n,displacedBy:e.displacedBy,viewport:a.frame,last:s,forceShouldAnimate:!1}),c=Kr({afterDragging:xu(s.all,r),destination:i,displacedBy:e.displacedBy,viewport:t.frame,last:s,forceShouldAnimate:!1}),f={},d={},u=[s,l,c];return s.all.forEach(h=>{let x=Nv(h,u);if(x){d[h]=x;return}f[h]=!0}),I(C({},e),{displaced:{all:s.all,invisible:f,visible:d}})},Av=(e,t)=>at(e.scroll.diff.displacement,t),us=({pageBorderBoxCenter:e,draggable:t,viewport:n})=>{let r=Av(n,e),o=wt(r,t.page.borderBox.center);return at(t.client.borderBox.center,o)},Qu=({draggable:e,destination:t,newPageBorderBoxCenter:n,viewport:r,withDroppableDisplacement:o,onlyOnMainAxis:a=!1})=>{let i=wt(n,e.page.borderBox.center),l={target:eo(e.page.borderBox,i),destination:t,withDroppableDisplacement:o,viewport:r};return a?bv(l):Ku(l)},Pv=({isMovingForward:e,draggable:t,destination:n,draggables:r,previousImpact:o,viewport:a,previousPageBorderBoxCenter:i,previousClientSelection:s,afterCritical:l})=>{if(!n.isEnabled)return null;let c=rr(n.descriptor.id,r),f=or(t,n),d=dv({isMovingForward:e,draggable:t,destination:n,insideDestination:c,previousImpact:o})||Sv({isMovingForward:e,isInHomeList:f,draggable:t,draggables:r,destination:n,insideDestination:c,previousImpact:o,viewport:a,afterCritical:l});if(!d)return null;let u=_a({impact:d,draggable:t,droppable:n,draggables:r,afterCritical:l});if(Qu({draggable:t,destination:n,newPageBorderBoxCenter:u,viewport:a.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0}))return{clientSelection:us({pageBorderBoxCenter:u,draggable:t,viewport:a}),impact:d,scrollJumpRequest:null};let h=wt(u,i),x=Fv({impact:d,viewport:a,destination:n,draggables:r,maxScrollChange:h});return{clientSelection:s,impact:x,scrollJumpRequest:h}},ft=e=>{let t=e.subject.active;return t||B(),t},_v=({isMovingForward:e,pageBorderBoxCenter:t,source:n,droppables:r,viewport:o})=>{let a=n.subject.active;if(!a)return null;let i=n.axis,s=At(a[i.start],a[i.end]),l=Fa(r).filter(f=>f!==n).filter(f=>f.isEnabled).filter(f=>!!f.subject.active).filter(f=>qu(o.frame)(ft(f))).filter(f=>{let d=ft(f);return e?a[i.crossAxisEnd]{let d=ft(f),u=At(d[i.start],d[i.end]);return s(d[i.start])||s(d[i.end])||u(a[i.start])||u(a[i.end])}).sort((f,d)=>{let u=ft(f)[i.crossAxisStart],m=ft(d)[i.crossAxisStart];return e?u-m:m-u}).filter((f,d,u)=>ft(f)[i.crossAxisStart]===ft(u[0])[i.crossAxisStart]);if(!l.length)return null;if(l.length===1)return l[0];let c=l.filter(f=>At(ft(f)[i.start],ft(f)[i.end])(t[i.line]));return c.length===1?c[0]:c.length>1?c.sort((f,d)=>ft(f)[i.start]-ft(d)[i.start])[0]:l.sort((f,d)=>{let u=pu(t,mu(ft(f))),m=pu(t,mu(ft(d)));return u!==m?u-m:ft(f)[i.start]-ft(d)[i.start]})[0]},vu=(e,t)=>{let n=e.page.borderBox.center;return dn(e.descriptor.id,t)?wt(n,t.displacedBy.point):n},Bv=(e,t)=>{let n=e.page.borderBox;return dn(e.descriptor.id,t)?eo(n,nr(t.displacedBy.point)):n},Lv=({pageBorderBoxCenter:e,viewport:t,destination:n,insideDestination:r,afterCritical:o})=>r.filter(i=>Ku({target:Bv(i,o),destination:n,viewport:t.frame,withDroppableDisplacement:!0})).sort((i,s)=>{let l=qr(e,Ri(n,vu(i,o))),c=qr(e,Ri(n,vu(s,o)));return l{let r=e.axis;if(e.descriptor.mode===\"virtual\")return _n(r.line,t[r.line]);let o=e.subject.page.contentBox[r.size],l=rr(e.descriptor.id,n).reduce((c,f)=>c+f.client.marginBox[r.size],0)+t[r.line]-o;return l<=0?null:_n(r.line,l)},Zu=(e,t)=>I(C({},e),{scroll:I(C({},e.scroll),{max:t})}),Ru=(e,t,n)=>{let r=e.frame;or(t,e)&&B(),e.subject.withPlaceholder&&B();let o=to(e.axis,t.displaceBy).point,a=Mv(e,o,n),i={placeholderSize:o,increasedBy:a,oldFrameMaxScroll:e.frame?e.frame.scroll.max:null};if(!r){let f=Rn({page:e.subject.page,withPlaceholder:i,axis:e.axis,frame:e.frame});return I(C({},e),{subject:f})}let s=a?at(r.scroll.max,a):r.scroll.max,l=Zu(r,s),c=Rn({page:e.subject.page,withPlaceholder:i,axis:e.axis,frame:l});return I(C({},e),{subject:c,frame:l})},Vv=e=>{let t=e.subject.withPlaceholder;t||B();let n=e.frame;if(!n){let i=Rn({page:e.subject.page,axis:e.axis,frame:null,withPlaceholder:null});return I(C({},e),{subject:i})}let r=t.oldFrameMaxScroll;r||B();let o=Zu(n,r),a=Rn({page:e.subject.page,axis:e.axis,frame:o,withPlaceholder:null});return I(C({},e),{subject:a,frame:o})},zv=({previousPageBorderBoxCenter:e,moveRelativeTo:t,insideDestination:n,draggable:r,draggables:o,destination:a,viewport:i,afterCritical:s})=>{if(!t){if(n.length)return null;let d={displaced:Yr,displacedBy:Hu,at:{type:\"REORDER\",destination:{droppableId:a.descriptor.id,index:0}}},u=_a({impact:d,draggable:r,droppable:a,draggables:o,afterCritical:s}),m=or(r,a)?a:Ru(a,r,o);return Qu({draggable:r,destination:m,newPageBorderBoxCenter:u,viewport:i.frame,withDroppableDisplacement:!1,onlyOnMainAxis:!0})?d:null}let l=e[a.axis.line]<=t.page.borderBox.center[a.axis.line],c=(()=>{let d=t.descriptor.index;return t.descriptor.id===r.descriptor.id||l?d:d+1})(),f=to(a.axis,r.displaceBy);return ka({draggable:r,insideDestination:n,destination:a,viewport:i,displacedBy:f,last:Yr,index:c})},$v=({isMovingForward:e,previousPageBorderBoxCenter:t,draggable:n,isOver:r,draggables:o,droppables:a,viewport:i,afterCritical:s})=>{let l=_v({isMovingForward:e,pageBorderBoxCenter:t,source:r,droppables:a,viewport:i});if(!l)return null;let c=rr(l.descriptor.id,o),f=Lv({pageBorderBoxCenter:t,viewport:i,destination:l,insideDestination:c,afterCritical:s}),d=zv({previousPageBorderBoxCenter:t,destination:l,draggable:n,draggables:o,moveRelativeTo:f,insideDestination:c,viewport:i,afterCritical:s});if(!d)return null;let u=_a({impact:d,draggable:n,droppable:l,draggables:o,afterCritical:s});return{clientSelection:us({pageBorderBoxCenter:u,draggable:n,viewport:i}),impact:d,scrollJumpRequest:null}},Ct=e=>{let t=e.at;return t?t.type===\"REORDER\"?t.destination.droppableId:t.combine.droppableId:null},Uv=(e,t)=>{let n=Ct(e);return n?t[n]:null},Wv=({state:e,type:t})=>{let n=Uv(e.impact,e.dimensions.droppables),r=!!n,o=e.dimensions.droppables[e.critical.droppable.id],a=n||o,i=a.axis.direction,s=i===\"vertical\"&&(t===\"MOVE_UP\"||t===\"MOVE_DOWN\")||i===\"horizontal\"&&(t===\"MOVE_LEFT\"||t===\"MOVE_RIGHT\");if(s&&!r)return null;let l=t===\"MOVE_DOWN\"||t===\"MOVE_RIGHT\",c=e.dimensions.draggables[e.critical.draggable.id],f=e.current.page.borderBoxCenter,{draggables:d,droppables:u}=e.dimensions;return s?Pv({isMovingForward:l,previousPageBorderBoxCenter:f,draggable:c,destination:a,draggables:d,viewport:e.viewport,previousClientSelection:e.current.client.selection,previousImpact:e.impact,afterCritical:e.afterCritical}):$v({isMovingForward:l,previousPageBorderBoxCenter:f,draggable:c,isOver:a,draggables:d,droppables:u,viewport:e.viewport,afterCritical:e.afterCritical})};function An(e){return e.phase===\"DRAGGING\"||e.phase===\"COLLECTING\"}function ef(e){let t=At(e.top,e.bottom),n=At(e.left,e.right);return function(o){return t(o.y)&&n(o.x)}}function Gv(e,t){return e.leftt.left&&e.topt.top}function jv({pageBorderBox:e,draggable:t,candidates:n}){let r=t.page.borderBox.center,o=n.map(a=>{let i=a.axis,s=_n(a.axis.line,e.center[i.line],a.page.borderBox.center[i.crossAxisLine]);return{id:a.descriptor.id,distance:qr(r,s)}}).sort((a,i)=>i.distance-a.distance);return o[0]?o[0].id:null}function Hv({pageBorderBox:e,draggable:t,droppables:n}){let r=Fa(n).filter(o=>{if(!o.isEnabled)return!1;let a=o.subject.active;if(!a||!Gv(e,a))return!1;if(ef(a)(e.center))return!0;let i=o.axis,s=a.center[i.crossAxisLine],l=e[i.crossAxisStart],c=e[i.crossAxisEnd],f=At(a[i.crossAxisStart],a[i.crossAxisEnd]),d=f(l),u=f(c);return!d&&!u?!0:d?ls});return r.length?r.length===1?r[0].descriptor.id:jv({pageBorderBox:e,draggable:t,candidates:r}):null}var tf=(e,t)=>Nt(eo(e,t)),qv=(e,t)=>{let n=e.frame;return n?tf(t,n.scroll.diff.value):t};function nf({displaced:e,id:t}){return!!(e.visible[t]||e.invisible[t])}function Yv({draggable:e,closest:t,inHomeList:n}){return t?n&&t.descriptor.index>e.descriptor.index?t.descriptor.index-1:t.descriptor.index:null}var Kv=({pageBorderBoxWithDroppableScroll:e,draggable:t,destination:n,insideDestination:r,last:o,viewport:a,afterCritical:i})=>{let s=n.axis,l=to(n.axis,t.displaceBy),c=l.value,f=e[s.start],d=e[s.end],m=Pa(t,r).find(x=>{let v=x.descriptor.id,y=x.page.borderBox.center[s.line],b=dn(v,i),S=nf({displaced:o,id:v});return b?S?d<=y:f{if(!r.isCombineEnabled)return null;let i=r.axis,s=to(r.axis,e.displaceBy),l=s.value,c=t[i.start],f=t[i.end],u=Pa(e,o).find(h=>{let x=h.descriptor.id,v=h.page.borderBox,b=v[i.size]/Xv,S=dn(x,a),w=nf({displaced:n.displaced,id:x});return S?w?f>v[i.start]+b&&fv[i.start]-l+b&&cv[i.start]+l+b&&fv[i.start]+b&&c{let s=tf(t.page.borderBox,e),l=Hv({pageBorderBox:s,draggable:t,droppables:r});if(!l)return cv;let c=r[l],f=rr(c.descriptor.id,n),d=qv(c,s);return Jv({pageBorderBoxWithDroppableScroll:d,draggable:t,previousImpact:o,destination:c,insideDestination:f,afterCritical:i})||Kv({pageBorderBoxWithDroppableScroll:d,draggable:t,destination:c,insideDestination:f,last:o.displaced,viewport:a,afterCritical:i})},fs=(e,t)=>I(C({},e),{[t.descriptor.id]:t}),Qv=({previousImpact:e,impact:t,droppables:n})=>{let r=Ct(e),o=Ct(t);if(!r||r===o)return n;let a=n[r];if(!a.subject.withPlaceholder)return n;let i=Vv(a);return fs(n,i)},Zv=({draggable:e,draggables:t,droppables:n,previousImpact:r,impact:o})=>{let a=Qv({previousImpact:r,impact:o,droppables:n}),i=Ct(o);if(!i)return a;let s=n[i];if(or(e,s)||s.subject.withPlaceholder)return a;let l=Ru(s,e,t);return fs(a,l)},jr=({state:e,clientSelection:t,dimensions:n,viewport:r,impact:o,scrollJumpRequest:a})=>{let i=r||e.viewport,s=n||e.dimensions,l=t||e.current.client.selection,c=wt(l,e.initial.client.selection),f={offset:c,selection:l,borderBoxCenter:at(e.initial.client.borderBoxCenter,c)},d={selection:at(f.selection,i.scroll.current),borderBoxCenter:at(f.borderBoxCenter,i.scroll.current),offset:at(f.offset,i.scroll.diff.value)},u={client:f,page:d};if(e.phase===\"COLLECTING\")return I(C({},e),{dimensions:s,viewport:i,current:u});let m=s.draggables[e.critical.draggable.id],h=o||rf({pageOffset:d.offset,draggable:m,draggables:s.draggables,droppables:s.droppables,previousImpact:e.impact,viewport:i,afterCritical:e.afterCritical}),x=Zv({draggable:m,impact:h,previousImpact:e.impact,draggables:s.draggables,droppables:s.droppables});return I(C({},e),{current:u,dimensions:{draggables:s.draggables,droppables:x},impact:h,viewport:i,scrollJumpRequest:a||null,forceShouldAnimate:a?!1:null})};function Rv(e,t){return e.map(n=>t[n])}var of=({impact:e,viewport:t,draggables:n,destination:r,forceShouldAnimate:o})=>{let a=e.displaced,i=Rv(a.all,n),s=Kr({afterDragging:i,destination:r,displacedBy:e.displacedBy,viewport:t.frame,forceShouldAnimate:o,last:a});return I(C({},e),{displaced:s})},af=({impact:e,draggable:t,droppable:n,draggables:r,viewport:o,afterCritical:a})=>{let i=_a({impact:e,draggable:t,draggables:r,droppable:n,afterCritical:a});return us({pageBorderBoxCenter:i,draggable:t,viewport:o})},sf=({state:e,dimensions:t,viewport:n})=>{e.movementMode!==\"SNAP\"&&B();let r=e.impact,o=n||e.viewport,a=t||e.dimensions,{draggables:i,droppables:s}=a,l=i[e.critical.draggable.id],c=Ct(r);c||B();let f=s[c],d=of({impact:r,viewport:o,destination:f,draggables:i}),u=af({impact:d,draggable:l,droppable:f,draggables:i,viewport:o,afterCritical:e.afterCritical});return jr({impact:d,clientSelection:u,state:e,dimensions:a,viewport:o})},ey=e=>({index:e.index,droppableId:e.droppableId}),lf=({draggable:e,home:t,draggables:n,viewport:r})=>{let o=to(t.axis,e.displaceBy),a=rr(t.descriptor.id,n),i=a.indexOf(e);i===-1&&B();let s=a.slice(i+1),l=s.reduce((u,m)=>(u[m.descriptor.id]=!0,u),{}),c={inVirtualList:t.descriptor.mode===\"virtual\",displacedBy:o,effected:l};return{impact:{displaced:Kr({afterDragging:s,destination:t,displacedBy:o,last:null,viewport:r.frame,forceShouldAnimate:!1}),displacedBy:o,at:{type:\"REORDER\",destination:ey(e.descriptor)}},afterCritical:c}},ty=(e,t)=>({draggables:e.draggables,droppables:fs(e.droppables,t)}),no=e=>{},ro=e=>{},ny=({draggable:e,offset:t,initialWindowScroll:n})=>{let r=zr(e.client,t),o=$r(r,n);return I(C({},e),{placeholder:I(C({},e.placeholder),{client:r}),client:r,page:o})},ry=e=>{let t=e.frame;return t||B(),t},oy=({additions:e,updatedDroppables:t,viewport:n})=>{let r=n.scroll.diff.value;return e.map(o=>{let a=o.descriptor.droppableId,i=t[a],l=ry(i).scroll.diff.value,c=at(r,l);return ny({draggable:o,offset:c,initialWindowScroll:n.scroll.initial})})},ay=({state:e,published:t})=>{no();let n=t.modified.map(y=>{let b=e.dimensions.droppables[y.droppableId];return is(b,y.scroll)}),r=C(C({},e.dimensions.droppables),Gu(n)),o=ju(oy({additions:t.additions,updatedDroppables:r,viewport:e.viewport})),a=C(C({},e.dimensions.draggables),o);t.removals.forEach(y=>{delete a[y]});let i={droppables:r,draggables:a},s=Ct(e.impact),l=s?i.droppables[s]:null,c=i.draggables[e.critical.draggable.id],f=i.droppables[e.critical.droppable.id],{impact:d,afterCritical:u}=lf({draggable:c,home:f,draggables:a,viewport:e.viewport}),m=l&&l.isCombineEnabled?e.impact:d,h=rf({pageOffset:e.current.page.offset,draggable:i.draggables[e.critical.draggable.id],draggables:i.draggables,droppables:i.droppables,previousImpact:m,viewport:e.viewport,afterCritical:u});ro();let x=I(C({},e),{phase:\"DRAGGING\",impact:h,onLiftImpact:d,dimensions:i,afterCritical:u,forceShouldAnimate:!1});return e.phase===\"COLLECTING\"?x:I(C({},x),{phase:\"DROP_PENDING\",reason:e.reason,isWaiting:!1})},es=e=>e.movementMode===\"SNAP\",Wi=(e,t,n)=>{let r=ty(e.dimensions,t);return!es(e)||n?jr({state:e,dimensions:r}):sf({state:e,dimensions:r})};function Gi(e){return e.isDragging&&e.movementMode===\"SNAP\"?I(C({},e),{scrollJumpRequest:null}):e}var yu={phase:\"IDLE\",completed:null,shouldFlush:!1},iy=(e=yu,t)=>{if(t.type===\"FLUSH\")return I(C({},yu),{shouldFlush:!0});if(t.type===\"INITIAL_PUBLISH\"){e.phase!==\"IDLE\"&&B();let{critical:n,clientSelection:r,viewport:o,dimensions:a,movementMode:i}=t.payload,s=a.draggables[n.draggable.id],l=a.droppables[n.droppable.id],c={selection:r,borderBoxCenter:s.client.borderBox.center,offset:tt},f={client:c,page:{selection:at(c.selection,o.scroll.initial),borderBoxCenter:at(c.selection,o.scroll.initial),offset:at(c.selection,o.scroll.diff.value)}},d=Fa(a.droppables).every(x=>!x.isFixedOnPage),{impact:u,afterCritical:m}=lf({draggable:s,home:l,draggables:a.draggables,viewport:o});return{phase:\"DRAGGING\",isDragging:!0,critical:n,movementMode:i,dimensions:a,initial:f,current:f,isWindowScrollAllowed:d,impact:u,afterCritical:m,onLiftImpact:u,viewport:o,scrollJumpRequest:null,forceShouldAnimate:null}}if(t.type===\"COLLECTION_STARTING\")return e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\"?e:(e.phase!==\"DRAGGING\"&&B(),I(C({},e),{phase:\"COLLECTING\"}));if(t.type===\"PUBLISH_WHILE_DRAGGING\")return e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\"||B(),ay({state:e,published:t.payload});if(t.type===\"MOVE\"){if(e.phase===\"DROP_PENDING\")return e;An(e)||B();let{client:n}=t.payload;return ln(n,e.current.client.selection)?e:jr({state:e,clientSelection:n,impact:es(e)?e.impact:null})}if(t.type===\"UPDATE_DROPPABLE_SCROLL\"){if(e.phase===\"DROP_PENDING\"||e.phase===\"COLLECTING\")return Gi(e);An(e)||B();let{id:n,newScroll:r}=t.payload,o=e.dimensions.droppables[n];if(!o)return e;let a=is(o,r);return Wi(e,a,!1)}if(t.type===\"UPDATE_DROPPABLE_IS_ENABLED\"){if(e.phase===\"DROP_PENDING\")return e;An(e)||B();let{id:n,isEnabled:r}=t.payload,o=e.dimensions.droppables[n];o||B(),o.isEnabled===r&&B();let a=I(C({},o),{isEnabled:r});return Wi(e,a,!0)}if(t.type===\"UPDATE_DROPPABLE_IS_COMBINE_ENABLED\"){if(e.phase===\"DROP_PENDING\")return e;An(e)||B();let{id:n,isCombineEnabled:r}=t.payload,o=e.dimensions.droppables[n];o||B(),o.isCombineEnabled===r&&B();let a=I(C({},o),{isCombineEnabled:r});return Wi(e,a,!0)}if(t.type===\"MOVE_BY_WINDOW_SCROLL\"){if(e.phase===\"DROP_PENDING\"||e.phase===\"DROP_ANIMATING\")return e;An(e)||B(),e.isWindowScrollAllowed||B();let n=t.payload.newScroll;if(ln(e.viewport.scroll.current,n))return Gi(e);let r=Ju(e.viewport,n);return es(e)?sf({state:e,viewport:r}):jr({state:e,viewport:r})}if(t.type===\"UPDATE_VIEWPORT_MAX_SCROLL\"){if(!An(e))return e;let n=t.payload.maxScroll;if(ln(n,e.viewport.scroll.max))return e;let r=I(C({},e.viewport),{scroll:I(C({},e.viewport.scroll),{max:n})});return I(C({},e),{viewport:r})}if(t.type===\"MOVE_UP\"||t.type===\"MOVE_DOWN\"||t.type===\"MOVE_LEFT\"||t.type===\"MOVE_RIGHT\"){if(e.phase===\"COLLECTING\"||e.phase===\"DROP_PENDING\")return e;e.phase!==\"DRAGGING\"&&B();let n=Wv({state:e,type:t.type});return n?jr({state:e,impact:n.impact,clientSelection:n.clientSelection,scrollJumpRequest:n.scrollJumpRequest}):e}if(t.type===\"DROP_PENDING\"){let n=t.payload.reason;return e.phase!==\"COLLECTING\"&&B(),I(C({},e),{phase:\"DROP_PENDING\",isWaiting:!0,reason:n})}if(t.type===\"DROP_ANIMATE\"){let{completed:n,dropDuration:r,newHomeClientOffset:o}=t.payload;return e.phase===\"DRAGGING\"||e.phase===\"DROP_PENDING\"||B(),{phase:\"DROP_ANIMATING\",completed:n,dropDuration:r,newHomeClientOffset:o,dimensions:e.dimensions}}if(t.type===\"DROP_COMPLETE\"){let{completed:n}=t.payload;return{phase:\"IDLE\",completed:n,shouldFlush:!1}}return e};function De(e,t){return e instanceof Object&&\"type\"in e&&e.type===t}var sy=e=>({type:\"BEFORE_INITIAL_CAPTURE\",payload:e}),ly=e=>({type:\"LIFT\",payload:e}),dy=e=>({type:\"INITIAL_PUBLISH\",payload:e}),cy=e=>({type:\"PUBLISH_WHILE_DRAGGING\",payload:e}),uy=()=>({type:\"COLLECTION_STARTING\",payload:null}),fy=e=>({type:\"UPDATE_DROPPABLE_SCROLL\",payload:e}),py=e=>({type:\"UPDATE_DROPPABLE_IS_ENABLED\",payload:e}),my=e=>({type:\"UPDATE_DROPPABLE_IS_COMBINE_ENABLED\",payload:e}),df=e=>({type:\"MOVE\",payload:e}),gy=e=>({type:\"MOVE_BY_WINDOW_SCROLL\",payload:e}),hy=e=>({type:\"UPDATE_VIEWPORT_MAX_SCROLL\",payload:e}),by=()=>({type:\"MOVE_UP\",payload:null}),xy=()=>({type:\"MOVE_DOWN\",payload:null}),vy=()=>({type:\"MOVE_RIGHT\",payload:null}),yy=()=>({type:\"MOVE_LEFT\",payload:null}),ps=()=>({type:\"FLUSH\",payload:null}),wy=e=>({type:\"DROP_ANIMATE\",payload:e}),ms=e=>({type:\"DROP_COMPLETE\",payload:e}),cf=e=>({type:\"DROP\",payload:e}),Cy=e=>({type:\"DROP_PENDING\",payload:e}),uf=()=>({type:\"DROP_ANIMATION_FINISHED\",payload:null});var Sy=e=>({getState:t,dispatch:n})=>r=>o=>{if(!De(o,\"LIFT\")){r(o);return}let{id:a,clientSelection:i,movementMode:s}=o.payload,l=t();l.phase===\"DROP_ANIMATING\"&&n(ms({completed:l.completed})),t().phase!==\"IDLE\"&&B(),n(ps()),n(sy({draggableId:a,movementMode:s}));let f={draggableId:a,scrollOptions:{shouldPublishImmediately:s===\"SNAP\"}},{critical:d,dimensions:u,viewport:m}=e.startPublishing(f);n(dy({critical:d,dimensions:u,clientSelection:i,movementMode:s,viewport:m}))},Oy=e=>()=>t=>n=>{De(n,\"INITIAL_PUBLISH\")&&e.dragging(),De(n,\"DROP_ANIMATE\")&&e.dropping(n.payload.completed.result.reason),(De(n,\"FLUSH\")||De(n,\"DROP_COMPLETE\"))&&e.resting(),t(n)},gs={outOfTheWay:\"cubic-bezier(0.2, 0, 0, 1)\",drop:\"cubic-bezier(.2,1,.1,1)\"},Xr={opacity:{drop:0,combining:.7},scale:{drop:.75}},ff={outOfTheWay:.2,minDropTime:.33,maxDropTime:.55},Fn=\"\".concat(ff.outOfTheWay,\"s \").concat(gs.outOfTheWay),Hr={fluid:\"opacity \".concat(Fn),snap:\"transform \".concat(Fn,\", opacity \").concat(Fn),drop:e=>{let t=\"\".concat(e,\"s \").concat(gs.drop);return\"transform \".concat(t,\", opacity \").concat(t)},outOfTheWay:\"transform \".concat(Fn),placeholder:\"height \".concat(Fn,\", width \").concat(Fn,\", margin \").concat(Fn)},wu=e=>ln(e,tt)?void 0:\"translate(\".concat(e.x,\"px, \").concat(e.y,\"px)\"),ts={moveTo:wu,drop:(e,t)=>{let n=wu(e);if(n)return t?\"\".concat(n,\" scale(\").concat(Xr.scale.drop,\")\"):n}},{minDropTime:ns,maxDropTime:pf}=ff,Dy=pf-ns,Cu=1500,Iy=.6,Ey=({current:e,destination:t,reason:n})=>{let r=qr(e,t);if(r<=0)return ns;if(r>=Cu)return pf;let o=r/Cu,a=ns+Dy*o,i=n===\"CANCEL\"?a*Iy:a;return Number(i.toFixed(2))},Ty=({impact:e,draggable:t,dimensions:n,viewport:r,afterCritical:o})=>{let{draggables:a,droppables:i}=n,s=Ct(e),l=s?i[s]:null,c=i[t.descriptor.droppableId],f=af({impact:e,draggable:t,draggables:a,afterCritical:o,droppable:l||c,viewport:r});return wt(f,t.client.borderBox.center)},ky=({draggables:e,reason:t,lastImpact:n,home:r,viewport:o,onLiftImpact:a})=>!n.at||t!==\"DROP\"?{impact:of({draggables:e,impact:a,destination:r,viewport:o,forceShouldAnimate:!0}),didDropInsideDroppable:!1}:n.at.type===\"REORDER\"?{impact:n,didDropInsideDroppable:!0}:{impact:I(C({},n),{displaced:Yr}),didDropInsideDroppable:!0},Ny=({getState:e,dispatch:t})=>n=>r=>{if(!De(r,\"DROP\")){n(r);return}let o=e(),a=r.payload.reason;if(o.phase===\"COLLECTING\"){t(Cy({reason:a}));return}if(o.phase===\"IDLE\")return;o.phase===\"DROP_PENDING\"&&o.isWaiting&&B(),o.phase===\"DRAGGING\"||o.phase===\"DROP_PENDING\"||B();let s=o.critical,l=o.dimensions,c=l.draggables[o.critical.draggable.id],{impact:f,didDropInsideDroppable:d}=ky({reason:a,lastImpact:o.impact,afterCritical:o.afterCritical,onLiftImpact:o.onLiftImpact,home:o.dimensions.droppables[o.critical.droppable.id],viewport:o.viewport,draggables:o.dimensions.draggables}),u=d?ss(f):null,m=d?Aa(f):null,h={index:s.draggable.index,droppableId:s.droppable.id},x={draggableId:c.descriptor.id,type:c.descriptor.type,source:h,reason:a,mode:o.movementMode,destination:u,combine:m},v=Ty({impact:f,draggable:c,dimensions:l,viewport:o.viewport,afterCritical:o.afterCritical}),y={critical:o.critical,afterCritical:o.afterCritical,result:x,impact:f};if(!(!ln(o.current.client.offset,v)||!!x.combine)){t(ms({completed:y}));return}let S=Ey({current:o.current.client.offset,destination:v,reason:a});t(wy({newHomeClientOffset:v,dropDuration:S,completed:y}))},mf=()=>({x:window.pageXOffset,y:window.pageYOffset});function Fy(e){return{eventName:\"scroll\",options:{passive:!0,capture:!1},fn:t=>{t.target!==window&&t.target!==window.document||e()}}}function Ay({onWindowScroll:e}){function t(){e(mf())}let n=Zn(t),r=Fy(n),o=sn;function a(){return o!==sn}function i(){a()&&B(),o=Ft(window,[r])}function s(){a()||B(),n.cancel(),o(),o=sn}return{start:i,stop:s,isActive:a}}var Py=e=>De(e,\"DROP_COMPLETE\")||De(e,\"DROP_ANIMATE\")||De(e,\"FLUSH\"),_y=e=>{let t=Ay({onWindowScroll:n=>{e.dispatch(gy({newScroll:n}))}});return n=>r=>{!t.isActive()&&De(r,\"INITIAL_PUBLISH\")&&t.start(),t.isActive()&&Py(r)&&t.stop(),n(r)}},By=e=>{let t=!1,n=!1,r=setTimeout(()=>{n=!0}),o=a=>{t||n||(t=!0,e(a),clearTimeout(r))};return o.wasCalled=()=>t,o},Ly=()=>{let e=[],t=o=>{let a=e.findIndex(s=>s.timerId===o);a===-1&&B();let[i]=e.splice(a,1);i.callback()};return{add:o=>{let a=setTimeout(()=>t(a)),i={timerId:a,callback:o};e.push(i)},flush:()=>{if(!e.length)return;let o=[...e];e.length=0,o.forEach(a=>{clearTimeout(a.timerId),a.callback()})}}},My=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.droppableId===t.droppableId&&e.index===t.index,Vy=(e,t)=>e==null&&t==null?!0:e==null||t==null?!1:e.draggableId===t.draggableId&&e.droppableId===t.droppableId,zy=(e,t)=>{if(e===t)return!0;let n=e.draggable.id===t.draggable.id&&e.draggable.droppableId===t.draggable.droppableId&&e.draggable.type===t.draggable.type&&e.draggable.index===t.draggable.index,r=e.droppable.id===t.droppable.id&&e.droppable.type===t.droppable.type;return n&&r},Ur=(e,t)=>{no(),t(),ro()},Oa=(e,t)=>({draggableId:e.draggable.id,type:e.droppable.type,source:{droppableId:e.droppable.id,index:e.draggable.index},mode:t});function ji(e,t,n,r){if(!e){n(r(t));return}let o=By(n);e(t,{announce:o}),o.wasCalled()||n(r(t))}var $y=(e,t)=>{let n=Ly(),r=null,o=(d,u)=>{r&&B(),Ur(\"onBeforeCapture\",()=>{let m=e().onBeforeCapture;m&&m({draggableId:d,mode:u})})},a=(d,u)=>{r&&B(),Ur(\"onBeforeDragStart\",()=>{let m=e().onBeforeDragStart;m&&m(Oa(d,u))})},i=(d,u)=>{r&&B();let m=Oa(d,u);r={mode:u,lastCritical:d,lastLocation:m.source,lastCombine:null},n.add(()=>{Ur(\"onDragStart\",()=>ji(e().onDragStart,m,t,Ea.onDragStart))})},s=(d,u)=>{let m=ss(u),h=Aa(u);r||B();let x=!zy(d,r.lastCritical);x&&(r.lastCritical=d);let v=!My(r.lastLocation,m);v&&(r.lastLocation=m);let y=!Vy(r.lastCombine,h);if(y&&(r.lastCombine=h),!x&&!v&&!y)return;let b=I(C({},Oa(d,r.mode)),{combine:h,destination:m});n.add(()=>{Ur(\"onDragUpdate\",()=>ji(e().onDragUpdate,b,t,Ea.onDragUpdate))})},l=()=>{r||B(),n.flush()},c=d=>{r||B(),r=null,Ur(\"onDragEnd\",()=>ji(e().onDragEnd,d,t,Ea.onDragEnd))};return{beforeCapture:o,beforeStart:a,start:i,update:s,flush:l,drop:c,abort:()=>{if(!r)return;let d=I(C({},Oa(r.lastCritical,r.mode)),{combine:null,destination:null,reason:\"CANCEL\"});c(d)}}},Uy=(e,t)=>{let n=$y(e,t);return r=>o=>a=>{if(De(a,\"BEFORE_INITIAL_CAPTURE\")){n.beforeCapture(a.payload.draggableId,a.payload.movementMode);return}if(De(a,\"INITIAL_PUBLISH\")){let s=a.payload.critical;n.beforeStart(s,a.payload.movementMode),o(a),n.start(s,a.payload.movementMode);return}if(De(a,\"DROP_COMPLETE\")){let s=a.payload.completed.result;n.flush(),o(a),n.drop(s);return}if(o(a),De(a,\"FLUSH\")){n.abort();return}let i=r.getState();i.phase===\"DRAGGING\"&&n.update(i.critical,i.impact)}},Wy=e=>t=>n=>{if(!De(n,\"DROP_ANIMATION_FINISHED\")){t(n);return}let r=e.getState();r.phase!==\"DROP_ANIMATING\"&&B(),e.dispatch(ms({completed:r.completed}))},Gy=e=>{let t=null,n=null;function r(){n&&(cancelAnimationFrame(n),n=null),t&&(t(),t=null)}return o=>a=>{if((De(a,\"FLUSH\")||De(a,\"DROP_COMPLETE\")||De(a,\"DROP_ANIMATION_FINISHED\"))&&r(),o(a),!De(a,\"DROP_ANIMATE\"))return;let i={eventName:\"scroll\",options:{capture:!0,passive:!1,once:!0},fn:function(){e.getState().phase===\"DROP_ANIMATING\"&&e.dispatch(uf())}};n=requestAnimationFrame(()=>{n=null,t=Ft(window,[i])})}},jy=e=>()=>t=>n=>{(De(n,\"DROP_COMPLETE\")||De(n,\"FLUSH\")||De(n,\"DROP_ANIMATE\"))&&e.stopPublishing(),t(n)},Hy=e=>{let t=!1;return()=>n=>r=>{if(De(r,\"INITIAL_PUBLISH\")){t=!0,e.tryRecordFocus(r.payload.critical.draggable.id),n(r),e.tryRestoreFocusRecorded();return}if(n(r),!!t){if(De(r,\"FLUSH\")){t=!1,e.tryRestoreFocusRecorded();return}if(De(r,\"DROP_COMPLETE\")){t=!1;let o=r.payload.completed.result;o.combine&&e.tryShiftRecord(o.draggableId,o.combine.draggableId),e.tryRestoreFocusRecorded()}}}},qy=e=>De(e,\"DROP_COMPLETE\")||De(e,\"DROP_ANIMATE\")||De(e,\"FLUSH\"),Yy=e=>t=>n=>r=>{if(qy(r)){e.stop(),n(r);return}if(De(r,\"INITIAL_PUBLISH\")){n(r);let o=t.getState();o.phase!==\"DRAGGING\"&&B(),e.start(o);return}n(r),e.scroll(t.getState())},Ky=e=>t=>n=>{if(t(n),!De(n,\"PUBLISH_WHILE_DRAGGING\"))return;let r=e.getState();r.phase===\"DROP_PENDING\"&&(r.isWaiting||e.dispatch(cf({reason:r.reason})))},Xy=ki,Jy=({dimensionMarshal:e,focusMarshal:t,styleMarshal:n,getResponders:r,announce:o,autoScroller:a})=>Ei(iy,Xy(Hc(Oy(n),jy(e),Sy(e),Ny,Wy,Gy,Ky,Yy(a),_y,Hy(t),Uy(r,o)))),Hi=()=>({additions:{},removals:{},modified:{}});function Qy({registry:e,callbacks:t}){let n=Hi(),r=null,o=()=>{r||(t.collectionStarting(),r=requestAnimationFrame(()=>{r=null,no();let{additions:l,removals:c,modified:f}=n,d=Object.keys(l).map(h=>e.draggable.getById(h).getDimension(tt)).sort((h,x)=>h.descriptor.index-x.descriptor.index),u=Object.keys(f).map(h=>{let v=e.droppable.getById(h).callbacks.getScrollWhileDragging();return{droppableId:h,scroll:v}}),m={additions:d,removals:Object.keys(c),modified:u};n=Hi(),ro(),t.publish(m)}))};return{add:l=>{let c=l.descriptor.id;n.additions[c]=l,n.modified[l.descriptor.droppableId]=!0,n.removals[c]&&delete n.removals[c],o()},remove:l=>{let c=l.descriptor;n.removals[c.id]=!0,n.modified[c.droppableId]=!0,n.additions[c.id]&&delete n.additions[c.id],o()},stop:()=>{r&&(cancelAnimationFrame(r),r=null,n=Hi())}}}var gf=({scrollHeight:e,scrollWidth:t,height:n,width:r})=>{let o=wt({x:t,y:e},{x:r,y:n});return{x:Math.max(0,o.x),y:Math.max(0,o.y)}},hf=()=>{let e=document.documentElement;return e||B(),e},bf=()=>{let e=hf();return gf({scrollHeight:e.scrollHeight,scrollWidth:e.scrollWidth,width:e.clientWidth,height:e.clientHeight})},Zy=()=>{let e=mf(),t=bf(),n=e.y,r=e.x,o=hf(),a=o.clientWidth,i=o.clientHeight,s=r+a,l=n+i;return{frame:Nt({top:n,left:r,right:s,bottom:l}),scroll:{initial:e,current:e,max:t,diff:{value:tt,displacement:tt}}}},Ry=({critical:e,scrollOptions:t,registry:n})=>{no();let r=Zy(),o=r.scroll.current,a=e.droppable,i=n.droppable.getAllByType(a.type).map(f=>f.callbacks.getDimensionAndWatchScroll(o,t)),s=n.draggable.getAllByType(e.draggable.type).map(f=>f.getDimension(o)),l={draggables:ju(s),droppables:Gu(i)};return ro(),{dimensions:l,critical:e,viewport:r}};function Su(e,t,n){return!(n.descriptor.id===t.id||n.descriptor.type!==t.type||e.droppable.getById(n.descriptor.droppableId).descriptor.mode!==\"virtual\")}var e0=(e,t)=>{let n=null,r=Qy({callbacks:{publish:t.publishWhileDragging,collectionStarting:t.collectionStarting},registry:e}),o=(u,m)=>{e.droppable.exists(u)||B(),n&&t.updateDroppableIsEnabled({id:u,isEnabled:m})},a=(u,m)=>{n&&(e.droppable.exists(u)||B(),t.updateDroppableIsCombineEnabled({id:u,isCombineEnabled:m}))},i=(u,m)=>{n&&(e.droppable.exists(u)||B(),t.updateDroppableScroll({id:u,newScroll:m}))},s=(u,m)=>{n&&e.droppable.getById(u).callbacks.scroll(m)},l=()=>{if(!n)return;r.stop();let u=n.critical.droppable;e.droppable.getAllByType(u.type).forEach(m=>m.callbacks.dragStopped()),n.unsubscribe(),n=null},c=u=>{n||B();let m=n.critical.draggable;u.type===\"ADDITION\"&&Su(e,m,u.value)&&r.add(u.value),u.type===\"REMOVAL\"&&Su(e,m,u.value)&&r.remove(u.value)};return{updateDroppableIsEnabled:o,updateDroppableIsCombineEnabled:a,scrollDroppable:s,updateDroppableScroll:i,startPublishing:u=>{n&&B();let m=e.draggable.getById(u.draggableId),h=e.droppable.getById(m.descriptor.droppableId),x={draggable:m.descriptor,droppable:h.descriptor},v=e.subscribe(c);return n={critical:x,unsubscribe:v},Ry({critical:x,registry:e,scrollOptions:u.scrollOptions})},stopPublishing:l}},xf=(e,t)=>e.phase===\"IDLE\"?!0:e.phase!==\"DROP_ANIMATING\"||e.completed.result.draggableId===t?!1:e.completed.result.reason===\"DROP\",t0=e=>{window.scrollBy(e.x,e.y)},n0=et(e=>Fa(e).filter(t=>!(!t.isEnabled||!t.frame))),r0=(e,t)=>n0(t).find(r=>(r.frame||B(),ef(r.frame.pageMarginBox)(e)))||null,o0=({center:e,destination:t,droppables:n})=>{if(t){let o=n[t];return o.frame?o:null}return r0(e,n)},Jr={startFromPercentage:.25,maxScrollAtPercentage:.05,maxPixelScroll:28,ease:e=>e**2,durationDampening:{stopDampeningAt:1200,accelerateAt:360},disabled:!1},a0=(e,t,n=()=>Jr)=>{let r=n(),o=e[t.size]*r.startFromPercentage,a=e[t.size]*r.maxScrollAtPercentage;return{startScrollingFrom:o,maxScrollValueAt:a}},vf=({startOfRange:e,endOfRange:t,current:n})=>{let r=t-e;return r===0?0:(n-e)/r},hs=1,i0=(e,t,n=()=>Jr)=>{let r=n();if(e>t.startScrollingFrom)return 0;if(e<=t.maxScrollValueAt)return r.maxPixelScroll;if(e===t.startScrollingFrom)return hs;let a=1-vf({startOfRange:t.maxScrollValueAt,endOfRange:t.startScrollingFrom,current:e}),i=r.maxPixelScroll*r.ease(a);return Math.ceil(i)},s0=(e,t,n)=>{let r=n(),o=r.durationDampening.accelerateAt,a=r.durationDampening.stopDampeningAt,i=t,s=a,c=Date.now()-i;if(c>=a)return e;if(c{let a=i0(e,t,o);return a===0?0:r?Math.max(s0(a,n,o),hs):a},Du=({container:e,distanceToEdges:t,dragStartTime:n,axis:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=a0(e,r,a);return t[r.end]{let r=t.height>e.height,o=t.width>e.width;return!o&&!r?n:o&&r?null:{x:o?0:n.x,y:r?0:n.y}},d0=Wu(e=>e===0?0:e),yf=({dragStartTime:e,container:t,subject:n,center:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i={top:r.y-t.top,right:t.right-r.x,bottom:t.bottom-r.y,left:r.x-t.left},s=Du({container:t,distanceToEdges:i,dragStartTime:e,axis:ls,shouldUseTimeDampening:o,getAutoScrollerOptions:a}),l=Du({container:t,distanceToEdges:i,dragStartTime:e,axis:Yu,shouldUseTimeDampening:o,getAutoScrollerOptions:a}),c=d0({x:l,y:s});if(ln(c,tt))return null;let f=l0({container:t,subject:n,proposedScroll:c});return f?ln(f,tt)?null:f:null},c0=Wu(e=>e===0?0:e>0?1:-1),bs=(()=>{let e=(t,n)=>t<0?t:t>n?t-n:0;return({current:t,max:n,change:r})=>{let o=at(t,r),a={x:e(o.x,n.x),y:e(o.y,n.y)};return ln(a,tt)?null:a}})(),wf=({max:e,current:t,change:n})=>{let r={x:Math.max(t.x,e.x),y:Math.max(t.y,e.y)},o=c0(n),a=bs({max:r,current:t,change:o});return!a||o.x!==0&&a.x===0||o.y!==0&&a.y===0},xs=(e,t)=>wf({current:e.scroll.current,max:e.scroll.max,change:t}),u0=(e,t)=>{if(!xs(e,t))return null;let n=e.scroll.max,r=e.scroll.current;return bs({current:r,max:n,change:t})},vs=(e,t)=>{let n=e.frame;return n?wf({current:n.scroll.current,max:n.scroll.max,change:t}):!1},f0=(e,t)=>{let n=e.frame;return!n||!vs(e,t)?null:bs({current:n.scroll.current,max:n.scroll.max,change:t})},p0=({viewport:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=yf({dragStartTime:r,container:e.frame,subject:t,center:n,shouldUseTimeDampening:o,getAutoScrollerOptions:a});return i&&xs(e,i)?i:null},m0=({droppable:e,subject:t,center:n,dragStartTime:r,shouldUseTimeDampening:o,getAutoScrollerOptions:a})=>{let i=e.frame;if(!i)return null;let s=yf({dragStartTime:r,container:i.pageMarginBox,subject:t,center:n,shouldUseTimeDampening:o,getAutoScrollerOptions:a});return s&&vs(e,s)?s:null},Iu=({state:e,dragStartTime:t,shouldUseTimeDampening:n,scrollWindow:r,scrollDroppable:o,getAutoScrollerOptions:a})=>{let i=e.current.page.borderBoxCenter,l=e.dimensions.draggables[e.critical.draggable.id].page.marginBox;if(e.isWindowScrollAllowed){let d=e.viewport,u=p0({dragStartTime:t,viewport:d,subject:l,center:i,shouldUseTimeDampening:n,getAutoScrollerOptions:a});if(u){r(u);return}}let c=o0({center:i,destination:Ct(e.impact),droppables:e.dimensions.droppables});if(!c)return;let f=m0({dragStartTime:t,droppable:c,subject:l,center:i,shouldUseTimeDampening:n,getAutoScrollerOptions:a});f&&o(c.descriptor.id,f)},g0=({scrollWindow:e,scrollDroppable:t,getAutoScrollerOptions:n=()=>Jr})=>{let r=Zn(e),o=Zn(t),a=null,i=c=>{a||B();let{shouldUseTimeDampening:f,dragStartTime:d}=a;Iu({state:c,scrollWindow:r,scrollDroppable:o,dragStartTime:d,shouldUseTimeDampening:f,getAutoScrollerOptions:n})};return{start:c=>{no(),a&&B();let f=Date.now(),d=!1,u=()=>{d=!0};Iu({state:c,dragStartTime:0,shouldUseTimeDampening:!1,scrollWindow:u,scrollDroppable:u,getAutoScrollerOptions:n}),a={dragStartTime:f,shouldUseTimeDampening:d},ro(),d&&i(c)},stop:()=>{a&&(r.cancel(),o.cancel(),a=null)},scroll:i}},h0=({move:e,scrollDroppable:t,scrollWindow:n})=>{let r=(s,l)=>{let c=at(s.current.client.selection,l);e({client:c})},o=(s,l)=>{if(!vs(s,l))return l;let c=f0(s,l);if(!c)return t(s.descriptor.id,l),null;let f=wt(l,c);return t(s.descriptor.id,f),wt(l,f)},a=(s,l,c)=>{if(!s||!xs(l,c))return c;let f=u0(l,c);if(!f)return n(c),null;let d=wt(c,f);return n(d),wt(c,d)};return s=>{let l=s.scrollJumpRequest;if(!l)return;let c=Ct(s.impact);c||B();let f=o(s.dimensions.droppables[c],l);if(!f)return;let d=s.viewport,u=a(s.isWindowScrollAllowed,d,f);u&&r(s,u)}},b0=({scrollDroppable:e,scrollWindow:t,move:n,getAutoScrollerOptions:r})=>{let o=g0({scrollWindow:t,scrollDroppable:e,getAutoScrollerOptions:r}),a=h0({move:n,scrollWindow:t,scrollDroppable:e});return{scroll:l=>{if(!(r().disabled||l.phase!==\"DRAGGING\")){if(l.movementMode===\"FLUID\"){o.scroll(l);return}l.scrollJumpRequest&&a(l)}},start:o.start,stop:o.stop}},er=\"data-rfd\",tr=(()=>{let e=\"\".concat(er,\"-drag-handle\");return{base:e,draggableId:\"\".concat(e,\"-draggable-id\"),contextId:\"\".concat(e,\"-context-id\")}})(),rs=(()=>{let e=\"\".concat(er,\"-draggable\");return{base:e,contextId:\"\".concat(e,\"-context-id\"),id:\"\".concat(e,\"-id\")}})(),x0=(()=>{let e=\"\".concat(er,\"-droppable\");return{base:e,contextId:\"\".concat(e,\"-context-id\"),id:\"\".concat(e,\"-id\")}})(),Eu={contextId:\"\".concat(er,\"-scroll-container-context-id\")},v0=e=>t=>\"[\".concat(t,'=\"').concat(e,'\"]'),Wr=(e,t)=>e.map(n=>{let r=n.styles[t];return r?\"\".concat(n.selector,\" { \").concat(r,\" }\"):\"\"}).join(\" \"),y0=\"pointer-events: none;\",w0=e=>{let t=v0(e),n=(()=>{let s=\"\\n cursor: -webkit-grab;\\n cursor: grab;\\n \";return{selector:t(tr.contextId),styles:{always:\"\\n -webkit-touch-callout: none;\\n -webkit-tap-highlight-color: rgba(0,0,0,0);\\n touch-action: manipulation;\\n \",resting:s,dragging:y0,dropAnimating:s}}})(),r=(()=>{let s=\"\\n transition: \".concat(Hr.outOfTheWay,\";\\n \");return{selector:t(rs.contextId),styles:{dragging:s,dropAnimating:s,userCancel:s}}})(),o={selector:t(x0.contextId),styles:{always:\"overflow-anchor: none;\"}},i=[r,n,o,{selector:\"body\",styles:{dragging:\"\\n cursor: grabbing;\\n cursor: -webkit-grabbing;\\n user-select: none;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none;\\n overflow-anchor: none;\\n \"}}];return{always:Wr(i,\"always\"),resting:Wr(i,\"resting\"),dragging:Wr(i,\"dragging\"),dropAnimating:Wr(i,\"dropAnimating\"),userCancel:Wr(i,\"userCancel\")}},St=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\"?G.useLayoutEffect:G.useEffect,qi=()=>{let e=document.querySelector(\"head\");return e||B(),e},Tu=e=>{let t=document.createElement(\"style\");return e&&t.setAttribute(\"nonce\",e),t.type=\"text/css\",t};function C0(e,t){let n=ye(()=>w0(e),[e]),r=(0,G.useRef)(null),o=(0,G.useRef)(null),a=Q(et(d=>{let u=o.current;u||B(),u.textContent=d}),[]),i=Q(d=>{let u=r.current;u||B(),u.textContent=d},[]);St(()=>{!r.current&&!o.current||B();let d=Tu(t),u=Tu(t);return r.current=d,o.current=u,d.setAttribute(\"\".concat(er,\"-always\"),e),u.setAttribute(\"\".concat(er,\"-dynamic\"),e),qi().appendChild(d),qi().appendChild(u),i(n.always),a(n.resting),()=>{let m=h=>{let x=h.current;x||B(),qi().removeChild(x),h.current=null};m(r),m(o)}},[t,i,a,n.always,n.resting,e]);let s=Q(()=>a(n.dragging),[a,n.dragging]),l=Q(d=>{if(d===\"DROP\"){a(n.dropAnimating);return}a(n.userCancel)},[a,n.dropAnimating,n.userCancel]),c=Q(()=>{o.current&&a(n.resting)},[a,n.resting]);return ye(()=>({dragging:s,dropping:l,resting:c}),[s,l,c])}function Cf(e,t){return Array.from(e.querySelectorAll(t))}var Sf=e=>e&&e.ownerDocument&&e.ownerDocument.defaultView?e.ownerDocument.defaultView:window;function oo(e){return e instanceof Sf(e).HTMLElement}function Of(e,t){let n=\"[\".concat(tr.contextId,'=\"').concat(e,'\"]'),r=Cf(document,n);if(!r.length)return null;let o=r.find(a=>a.getAttribute(tr.draggableId)===t);return!o||!oo(o)?null:o}function S0(e){let t=(0,G.useRef)({}),n=(0,G.useRef)(null),r=(0,G.useRef)(null),o=(0,G.useRef)(!1),a=Q(function(u,m){let h={id:u,focus:m};return t.current[u]=h,function(){let v=t.current;v[u]!==h&&delete v[u]}},[]),i=Q(function(u){let m=Of(e,u);m&&m!==document.activeElement&&m.focus()},[e]),s=Q(function(u,m){n.current===u&&(n.current=m)},[]),l=Q(function(){r.current||o.current&&(r.current=requestAnimationFrame(()=>{r.current=null;let u=n.current;u&&i(u)}))},[i]),c=Q(function(u){n.current=null;let m=document.activeElement;m&&m.getAttribute(tr.draggableId)===u&&(n.current=u)},[]);return St(()=>(o.current=!0,function(){o.current=!1;let u=r.current;u&&cancelAnimationFrame(u)}),[]),ye(()=>({register:a,tryRecordFocus:c,tryRestoreFocusRecorded:l,tryShiftRecord:s}),[a,c,l,s])}function O0(){let e={draggables:{},droppables:{}},t=[];function n(d){return t.push(d),function(){let m=t.indexOf(d);m!==-1&&t.splice(m,1)}}function r(d){t.length&&t.forEach(u=>u(d))}function o(d){return e.draggables[d]||null}function a(d){let u=o(d);return u||B(),u}let i={register:d=>{e.draggables[d.descriptor.id]=d,r({type:\"ADDITION\",value:d})},update:(d,u)=>{let m=e.draggables[u.descriptor.id];m&&m.uniqueId===d.uniqueId&&(delete e.draggables[u.descriptor.id],e.draggables[d.descriptor.id]=d)},unregister:d=>{let u=d.descriptor.id,m=o(u);m&&d.uniqueId===m.uniqueId&&(delete e.draggables[u],e.droppables[d.descriptor.droppableId]&&r({type:\"REMOVAL\",value:d}))},getById:a,findById:o,exists:d=>!!o(d),getAllByType:d=>Object.values(e.draggables).filter(u=>u.descriptor.type===d)};function s(d){return e.droppables[d]||null}function l(d){let u=s(d);return u||B(),u}let c={register:d=>{e.droppables[d.descriptor.id]=d},unregister:d=>{let u=s(d.descriptor.id);u&&d.uniqueId===u.uniqueId&&delete e.droppables[d.descriptor.id]},getById:l,findById:s,exists:d=>!!s(d),getAllByType:d=>Object.values(e.droppables).filter(u=>u.descriptor.type===d)};function f(){e.draggables={},e.droppables={},t.length=0}return{draggable:i,droppable:c,subscribe:n,clean:f}}function D0(){let e=ye(O0,[]);return(0,G.useEffect)(()=>function(){e.clean()},[e]),e}var ys=G.default.createContext(null),Qr=()=>{let e=document.body;return e||B(),e},I0={position:\"absolute\",width:\"1px\",height:\"1px\",margin:\"-1px\",border:\"0\",padding:\"0\",overflow:\"hidden\",clip:\"rect(0 0 0 0)\",\"clip-path\":\"inset(100%)\"},E0=e=>\"rfd-announcement-\".concat(e);function T0(e){let t=ye(()=>E0(e),[e]),n=(0,G.useRef)(null);return(0,G.useEffect)(function(){let a=document.createElement(\"div\");return n.current=a,a.id=t,a.setAttribute(\"aria-live\",\"assertive\"),a.setAttribute(\"aria-atomic\",\"true\"),R(a.style,I0),Qr().appendChild(a),function(){setTimeout(function(){let l=Qr();l.contains(a)&&l.removeChild(a),a===n.current&&(n.current=null)})}},[t]),Q(o=>{let a=n.current;if(a){a.textContent=o;return}},[])}var k0={separator:\"::\"};function ws(e,t=k0){let n=G.default.useId();return ye(()=>\"\".concat(e).concat(t.separator).concat(n),[t.separator,e,n])}function N0({contextId:e,uniqueId:t}){return\"rfd-hidden-text-\".concat(e,\"-\").concat(t)}function F0({contextId:e,text:t}){let n=ws(\"hidden-text\",{separator:\"-\"}),r=ye(()=>N0({contextId:e,uniqueId:n}),[n,e]);return(0,G.useEffect)(function(){let a=document.createElement(\"div\");return a.id=r,a.textContent=t,a.style.display=\"none\",Qr().appendChild(a),function(){let s=Qr();s.contains(a)&&s.removeChild(a)}},[r,t]),r}var Ba=G.default.createContext(null),A0={react:\"^18.0.0 || ^19.0.0\"},P0=/(\\d+)\\.(\\d+)\\.(\\d+)/,ku=e=>{let t=P0.exec(e);t==null&&B();let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]);return{major:n,minor:r,patch:o,raw:e}},_0=(e,t)=>t.major>e.major?!0:t.majore.minor?!0:t.minor=e.patch,B0=(e,t)=>{let n=ku(e),r=ku(t);_0(n,r)};var L0=e=>{let t=e.doctype;t&&(t.name.toLowerCase(),t.publicId)};function ao(e,t){}function M0(){ao(()=>{B0(A0.react,G.default.version),L0(document)},[])}function Cs(e){let t=(0,G.useRef)(e);return(0,G.useEffect)(()=>{t.current=e}),t}function V0(){let e=null;function t(){return!!e}function n(i){return i===e}function r(i){e&&B();let s={abandon:i};return e=s,s}function o(){e||B(),e=null}function a(){e&&(e.abandon(),o())}return{isClaimed:t,isActive:n,claim:r,release:o,tryAbandon:a}}function Zr(e){return e.phase===\"IDLE\"||e.phase===\"DROP_ANIMATING\"?!1:e.isDragging}var z0=9,$0=13,Ss=27,Df=32,U0=33,W0=34,G0=35,j0=36,H0=37,q0=38,Y0=39,K0=40,X0={[$0]:!0,[z0]:!0},If=e=>{X0[e.keyCode]&&e.preventDefault()},La=(()=>{let e=\"visibilitychange\";return typeof document>\"u\"?e:[e,\"ms\".concat(e),\"webkit\".concat(e),\"moz\".concat(e),\"o\".concat(e)].find(r=>\"on\".concat(r)in document)||e})(),Ef=0,Nu=5;function J0(e,t){return Math.abs(t.x-e.x)>=Nu||Math.abs(t.y-e.y)>=Nu}var Fu={type:\"IDLE\"};function Q0({cancel:e,completed:t,getPhase:n,setPhase:r}){return[{eventName:\"mousemove\",fn:o=>{let{button:a,clientX:i,clientY:s}=o;if(a!==Ef)return;let l={x:i,y:s},c=n();if(c.type===\"DRAGGING\"){o.preventDefault(),c.actions.move(l);return}c.type!==\"PENDING\"&&B();let f=c.point;if(!J0(f,l))return;o.preventDefault();let d=c.actions.fluidLift(l);r({type:\"DRAGGING\",actions:d})}},{eventName:\"mouseup\",fn:o=>{let a=n();if(a.type!==\"DRAGGING\"){e();return}o.preventDefault(),a.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:\"mousedown\",fn:o=>{n().type===\"DRAGGING\"&&o.preventDefault(),e()}},{eventName:\"keydown\",fn:o=>{if(n().type===\"PENDING\"){e();return}if(o.keyCode===Ss){o.preventDefault(),e();return}If(o)}},{eventName:\"resize\",fn:e},{eventName:\"scroll\",options:{passive:!0,capture:!1},fn:()=>{n().type===\"PENDING\"&&e()}},{eventName:\"webkitmouseforcedown\",fn:o=>{let a=n();if(a.type===\"IDLE\"&&B(),a.actions.shouldRespectForcePress()){e();return}o.preventDefault()}},{eventName:La,fn:e}]}function Z0(e){let t=(0,G.useRef)(Fu),n=(0,G.useRef)(sn),r=ye(()=>({eventName:\"mousedown\",fn:function(d){if(d.defaultPrevented||d.button!==Ef||d.ctrlKey||d.metaKey||d.shiftKey||d.altKey)return;let u=e.findClosestDraggableId(d);if(!u)return;let m=e.tryGetLock(u,i,{sourceEvent:d});if(!m)return;d.preventDefault();let h={x:d.clientX,y:d.clientY};n.current(),c(m,h)}}),[e]),o=ye(()=>({eventName:\"webkitmouseforcewillbegin\",fn:f=>{if(f.defaultPrevented)return;let d=e.findClosestDraggableId(f);if(!d)return;let u=e.findOptionsForDraggable(d);u&&(u.shouldRespectForcePress||e.canGetLock(d)&&f.preventDefault())}}),[e]),a=Q(function(){let d={passive:!1,capture:!0};n.current=Ft(window,[o,r],d)},[o,r]),i=Q(()=>{t.current.type!==\"IDLE\"&&(t.current=Fu,n.current(),a())},[a]),s=Q(()=>{let f=t.current;i(),f.type===\"DRAGGING\"&&f.actions.cancel({shouldBlockNextClick:!0}),f.type===\"PENDING\"&&f.actions.abort()},[i]),l=Q(function(){let d={capture:!0,passive:!1},u=Q0({cancel:s,completed:i,getPhase:()=>t.current,setPhase:m=>{t.current=m}});n.current=Ft(window,u,d)},[s,i]),c=Q(function(d,u){t.current.type!==\"IDLE\"&&B(),t.current={type:\"PENDING\",point:u,actions:d},l()},[l]);St(function(){return a(),function(){n.current()}},[a])}function R0(){}var e1={[W0]:!0,[U0]:!0,[j0]:!0,[G0]:!0};function t1(e,t){function n(){t(),e.cancel()}function r(){t(),e.drop()}return[{eventName:\"keydown\",fn:o=>{if(o.keyCode===Ss){o.preventDefault(),n();return}if(o.keyCode===Df){o.preventDefault(),r();return}if(o.keyCode===K0){o.preventDefault(),e.moveDown();return}if(o.keyCode===q0){o.preventDefault(),e.moveUp();return}if(o.keyCode===Y0){o.preventDefault(),e.moveRight();return}if(o.keyCode===H0){o.preventDefault(),e.moveLeft();return}if(e1[o.keyCode]){o.preventDefault();return}If(o)}},{eventName:\"mousedown\",fn:n},{eventName:\"mouseup\",fn:n},{eventName:\"click\",fn:n},{eventName:\"touchstart\",fn:n},{eventName:\"resize\",fn:n},{eventName:\"wheel\",fn:n,options:{passive:!0}},{eventName:La,fn:n}]}function n1(e){let t=(0,G.useRef)(R0),n=ye(()=>({eventName:\"keydown\",fn:function(a){if(a.defaultPrevented||a.keyCode!==Df)return;let i=e.findClosestDraggableId(a);if(!i)return;let s=e.tryGetLock(i,f,{sourceEvent:a});if(!s)return;a.preventDefault();let l=!0,c=s.snapLift();t.current();function f(){l||B(),l=!1,t.current(),r()}t.current=Ft(window,t1(c,f),{capture:!0,passive:!1})}}),[e]),r=Q(function(){let a={passive:!1,capture:!0};t.current=Ft(window,[n],a)},[n]);St(function(){return r(),function(){t.current()}},[r])}var Yi={type:\"IDLE\"},r1=120,o1=.15;function a1({cancel:e,getPhase:t}){return[{eventName:\"orientationchange\",fn:e},{eventName:\"resize\",fn:e},{eventName:\"contextmenu\",fn:n=>{n.preventDefault()}},{eventName:\"keydown\",fn:n=>{if(t().type!==\"DRAGGING\"){e();return}n.keyCode===Ss&&n.preventDefault(),e()}},{eventName:La,fn:e}]}function i1({cancel:e,completed:t,getPhase:n}){return[{eventName:\"touchmove\",options:{capture:!1},fn:r=>{let o=n();if(o.type!==\"DRAGGING\"){e();return}o.hasMoved=!0;let{clientX:a,clientY:i}=r.touches[0],s={x:a,y:i};r.preventDefault(),o.actions.move(s)}},{eventName:\"touchend\",fn:r=>{let o=n();if(o.type!==\"DRAGGING\"){e();return}r.preventDefault(),o.actions.drop({shouldBlockNextClick:!0}),t()}},{eventName:\"touchcancel\",fn:r=>{if(n().type!==\"DRAGGING\"){e();return}r.preventDefault(),e()}},{eventName:\"touchforcechange\",fn:r=>{let o=n();o.type===\"IDLE\"&&B();let a=r.touches[0];if(!a||!(a.force>=o1))return;let s=o.actions.shouldRespectForcePress();if(o.type===\"PENDING\"){s&&e();return}if(s){if(o.hasMoved){r.preventDefault();return}e();return}r.preventDefault()}},{eventName:La,fn:e}]}function s1(e){let t=(0,G.useRef)(Yi),n=(0,G.useRef)(sn),r=Q(function(){return t.current},[]),o=Q(function(m){t.current=m},[]),a=ye(()=>({eventName:\"touchstart\",fn:function(m){if(m.defaultPrevented)return;let h=e.findClosestDraggableId(m);if(!h)return;let x=e.tryGetLock(h,s,{sourceEvent:m});if(!x)return;let v=m.touches[0],{clientX:y,clientY:b}=v,S={x:y,y:b};n.current(),d(x,S)}}),[e]),i=Q(function(){let m={capture:!0,passive:!1};n.current=Ft(window,[a],m)},[a]),s=Q(()=>{let u=t.current;u.type!==\"IDLE\"&&(u.type===\"PENDING\"&&clearTimeout(u.longPressTimerId),o(Yi),n.current(),i())},[i,o]),l=Q(()=>{let u=t.current;s(),u.type===\"DRAGGING\"&&u.actions.cancel({shouldBlockNextClick:!0}),u.type===\"PENDING\"&&u.actions.abort()},[s]),c=Q(function(){let m={capture:!0,passive:!1},h={cancel:l,completed:s,getPhase:r},x=Ft(window,i1(h),m),v=Ft(window,a1(h),m);n.current=function(){x(),v()}},[l,r,s]),f=Q(function(){let m=r();m.type!==\"PENDING\"&&B();let h=m.actions.fluidLift(m.point);o({type:\"DRAGGING\",actions:h,hasMoved:!1})},[r,o]),d=Q(function(m,h){r().type!==\"IDLE\"&&B();let x=setTimeout(f,r1);o({type:\"PENDING\",point:h,actions:m,longPressTimerId:x}),c()},[c,r,o,f]);St(function(){return i(),function(){n.current();let h=r();h.type===\"PENDING\"&&(clearTimeout(h.longPressTimerId),o(Yi))}},[r,i,o]),St(function(){return Ft(window,[{eventName:\"touchmove\",fn:()=>{},options:{capture:!1,passive:!1}}])},[])}function l1(e){}var d1=[\"input\",\"button\",\"textarea\",\"select\",\"option\",\"optgroup\",\"video\",\"audio\"];function Tf(e,t){if(t==null)return!1;if(d1.includes(t.tagName.toLowerCase()))return!0;let r=t.getAttribute(\"contenteditable\");return r===\"true\"||r===\"\"?!0:t===e?!1:Tf(e,t.parentElement)}function c1(e,t){let n=t.target;return oo(n)?Tf(e,n):!1}var u1=e=>Nt(e.getBoundingClientRect()).center;function f1(e){return e instanceof Sf(e).Element}var p1=(()=>{let e=\"matches\";return typeof document>\"u\"?e:[e,\"msMatchesSelector\",\"webkitMatchesSelector\"].find(r=>r in Element.prototype)||e})();function kf(e,t){return e==null?null:e[p1](t)?e:kf(e.parentElement,t)}function m1(e,t){return e.closest?e.closest(t):kf(e,t)}function g1(e){return\"[\".concat(tr.contextId,'=\"').concat(e,'\"]')}function h1(e,t){let n=t.target;if(!f1(n))return null;let r=g1(e),o=m1(n,r);return!o||!oo(o)?null:o}function b1(e,t){let n=h1(e,t);return n?n.getAttribute(tr.draggableId):null}function x1(e,t){let n=\"[\".concat(rs.contextId,'=\"').concat(e,'\"]'),o=Cf(document,n).find(a=>a.getAttribute(rs.id)===t);return!o||!oo(o)?null:o}function v1(e){e.preventDefault()}function Da({expected:e,phase:t,isLockActive:n,shouldWarn:r}){return!(!n()||e!==t)}function Nf({lockAPI:e,store:t,registry:n,draggableId:r}){if(e.isClaimed())return!1;let o=n.draggable.findById(r);return!(!o||!o.options.isEnabled||!xf(t.getState(),r))}function y1({lockAPI:e,contextId:t,store:n,registry:r,draggableId:o,forceSensorStop:a,sourceEvent:i}){if(!Nf({lockAPI:e,store:n,registry:r,draggableId:o}))return null;let l=r.draggable.getById(o),c=x1(t,l.descriptor.id);if(!c||i&&!l.options.canDragInteractiveElements&&c1(c,i))return null;let f=e.claim(a||sn),d=\"PRE_DRAG\";function u(){return l.options.shouldRespectForcePress}function m(){return e.isActive(f)}function h(D,O){Da({expected:D,phase:d,isLockActive:m,shouldWarn:!0})&&n.dispatch(O())}let x=h.bind(null,\"DRAGGING\");function v(D){function O(){e.release(),d=\"COMPLETED\"}d!==\"PRE_DRAG\"&&(O(),B()),n.dispatch(ly(D.liftActionArgs)),d=\"DRAGGING\";function F(T,P={shouldBlockNextClick:!1}){if(D.cleanup(),P.shouldBlockNextClick){let V=Ft(window,[{eventName:\"click\",fn:v1,options:{once:!0,passive:!1,capture:!0}}]);setTimeout(V)}O(),n.dispatch(cf({reason:T}))}return C({isActive:()=>Da({expected:\"DRAGGING\",phase:d,isLockActive:m,shouldWarn:!1}),shouldRespectForcePress:u,drop:T=>F(\"DROP\",T),cancel:T=>F(\"CANCEL\",T)},D.actions)}function y(D){let O=Zn(T=>{x(()=>df({client:T}))}),F=v({liftActionArgs:{id:o,clientSelection:D,movementMode:\"FLUID\"},cleanup:()=>O.cancel(),actions:{move:O}});return I(C({},F),{move:O})}function b(){let D={moveUp:()=>x(by),moveRight:()=>x(vy),moveDown:()=>x(xy),moveLeft:()=>x(yy)};return v({liftActionArgs:{id:o,clientSelection:u1(c),movementMode:\"SNAP\"},cleanup:sn,actions:D})}function S(){Da({expected:\"PRE_DRAG\",phase:d,isLockActive:m,shouldWarn:!0})&&e.release()}return{isActive:()=>Da({expected:\"PRE_DRAG\",phase:d,isLockActive:m,shouldWarn:!1}),shouldRespectForcePress:u,fluidLift:y,snapLift:b,abort:S}}var w1=[Z0,n1,s1];function C1({contextId:e,store:t,registry:n,customSensors:r,enableDefaultSensors:o}){let a=[...o?w1:[],...r||[]],i=(0,G.useState)(()=>V0())[0],s=Q(function(v,y){Zr(v)&&!Zr(y)&&i.tryAbandon()},[i]);St(function(){let v=t.getState();return t.subscribe(()=>{let b=t.getState();s(v,b),v=b})},[i,t,s]),St(()=>i.tryAbandon,[i.tryAbandon]);let l=Q(x=>Nf({lockAPI:i,registry:n,store:t,draggableId:x}),[i,n,t]),c=Q((x,v,y)=>y1({lockAPI:i,registry:n,contextId:e,store:t,draggableId:x,forceSensorStop:v||null,sourceEvent:y&&y.sourceEvent?y.sourceEvent:null}),[e,i,n,t]),f=Q(x=>b1(e,x),[e]),d=Q(x=>{let v=n.draggable.findById(x);return v?v.options:null},[n.draggable]),u=Q(function(){i.isClaimed()&&(i.tryAbandon(),t.getState().phase!==\"IDLE\"&&t.dispatch(ps()))},[i,t]),m=Q(()=>i.isClaimed(),[i]),h=ye(()=>({canGetLock:l,tryGetLock:c,findClosestDraggableId:f,findOptionsForDraggable:d,tryReleaseLock:u,isLockClaimed:m}),[l,c,f,d,u,m]);l1(a);for(let x=0;x({onBeforeCapture:t=>{(0,Rr.flushSync)(()=>{e.onBeforeCapture&&e.onBeforeCapture(t)})},onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragEnd:e.onDragEnd,onDragUpdate:e.onDragUpdate}),O1=e=>I(C(C({},Jr),e.autoScrollerOptions),{durationDampening:C(C({},Jr.durationDampening),e.autoScrollerOptions)});function Gr(e){return e.current||B(),e.current}function D1(e){let{contextId:t,setCallbacks:n,sensors:r,nonce:o,dragHandleUsageInstructions:a}=e,i=(0,G.useRef)(null);M0();let s=Cs(e),l=Q(()=>S1(s.current),[s]),c=Q(()=>O1(s.current),[s]),f=T0(t),d=F0({contextId:t,text:a}),u=C0(t,o),m=Q(V=>{Gr(i).dispatch(V)},[]),h=ye(()=>Ti({publishWhileDragging:cy,updateDroppableScroll:fy,updateDroppableIsEnabled:py,updateDroppableIsCombineEnabled:my,collectionStarting:uy},m),[m]),x=D0(),v=ye(()=>e0(x,h),[x,h]),y=ye(()=>b0(C({scrollWindow:t0,scrollDroppable:v.scrollDroppable,getAutoScrollerOptions:c},Ti({move:df},m))),[v.scrollDroppable,m,c]),b=S0(t),S=ye(()=>Jy({announce:f,autoScroller:y,dimensionMarshal:v,focusMarshal:b,getResponders:l,styleMarshal:u}),[f,y,v,b,l,u]);i.current=S;let w=Q(()=>{let V=Gr(i);V.getState().phase!==\"IDLE\"&&V.dispatch(ps())},[]),D=Q(()=>{let V=Gr(i).getState();return V.phase===\"DROP_ANIMATING\"?!0:V.phase===\"IDLE\"?!1:V.isDragging},[]),O=ye(()=>({isDragging:D,tryAbort:w}),[D,w]);n(O);let F=Q(V=>xf(Gr(i).getState(),V),[]),T=Q(()=>An(Gr(i).getState()),[]),P=ye(()=>({marshal:v,focus:b,contextId:t,canLift:F,isMovementAllowed:T,dragHandleUsageInstructionsId:d,registry:x}),[t,v,d,b,F,T,x]);return C1({contextId:t,store:S,registry:x,customSensors:r||null,enableDefaultSensors:e.enableDefaultSensors!==!1}),(0,G.useEffect)(()=>w,[w]),G.default.createElement(Ba.Provider,{value:P},G.default.createElement(su,{context:ys,store:S},e.children))}function I1(){return G.default.useId()}function Ma(e){let t=I1(),n=e.dragHandleUsageInstructions||Ea.dragHandleUsageInstructions;return G.default.createElement(Zi,null,r=>G.default.createElement(D1,{nonce:e.nonce,contextId:t,setCallbacks:r,dragHandleUsageInstructions:n,enableDefaultSensors:e.enableDefaultSensors,sensors:e.sensors,onBeforeCapture:e.onBeforeCapture,onBeforeDragStart:e.onBeforeDragStart,onDragStart:e.onDragStart,onDragUpdate:e.onDragUpdate,onDragEnd:e.onDragEnd,autoScrollerOptions:e.autoScrollerOptions},e.children))}var Au={dragging:5e3,dropAnimating:4500},E1=(e,t)=>t?Hr.drop(t.duration):e?Hr.snap:Hr.fluid,T1=(e,t)=>{if(e)return t?Xr.opacity.drop:Xr.opacity.combining},k1=e=>e.forceShouldAnimate!=null?e.forceShouldAnimate:e.mode===\"SNAP\";function N1(e){let n=e.dimension.client,{offset:r,combineWith:o,dropping:a}=e,i=!!o,s=k1(e),l=!!a,c=l?ts.drop(r,i):ts.moveTo(r);return{position:\"fixed\",top:n.marginBox.top,left:n.marginBox.left,boxSizing:\"border-box\",width:n.borderBox.width,height:n.borderBox.height,transition:E1(s,a),transform:c,opacity:T1(i,l),zIndex:l?Au.dropAnimating:Au.dragging,pointerEvents:\"none\"}}function F1(e){return{transform:ts.moveTo(e.offset),transition:e.shouldAnimateDisplacement?void 0:\"none\"}}function A1(e){return e.type===\"DRAGGING\"?N1(e):F1(e)}function P1(e,t,n=tt){let r=window.getComputedStyle(t),o=t.getBoundingClientRect(),a=$i(o,r),i=$r(a,n),s={client:a,tagName:t.tagName.toLowerCase(),display:r.display},l={x:a.marginBox.width,y:a.marginBox.height};return{descriptor:e,placeholder:s,displaceBy:l,client:a,page:i}}function _1(e){let t=ws(\"draggable\"),{descriptor:n,registry:r,getDraggableRef:o,canDragInteractiveElements:a,shouldRespectForcePress:i,isEnabled:s}=e,l=ye(()=>({canDragInteractiveElements:a,shouldRespectForcePress:i,isEnabled:s}),[a,s,i]),c=Q(m=>{let h=o();return h||B(),P1(n,h,m)},[n,o]),f=ye(()=>({uniqueId:t,descriptor:n,options:l,getDimension:c}),[n,c,l,t]),d=(0,G.useRef)(f),u=(0,G.useRef)(!0);St(()=>(r.draggable.register(d.current),()=>r.draggable.unregister(d.current)),[r.draggable]),St(()=>{if(u.current){u.current=!1;return}let m=d.current;d.current=f,r.draggable.update(f,m)},[f,r.draggable])}var Os=G.default.createContext(null);function Ff(e){e&&oo(e)||B()}function B1(e,t,n){ao(()=>{function r(a){return\"Draggable[id: \".concat(a,\"]: \")}let o=e.draggableId;o||B(!1),typeof o!=\"string\"&&B(!1),Number.isInteger(e.index)||B(!1),e.mapped.type!==\"DRAGGING\"&&(Ff(n()),e.isEnabled&&(Of(t,o)||B(!1)))})}function L1(e){}function Na(e){let t=(0,G.useContext)(e);return t||B(),t}function M1(e){e.preventDefault()}var V1=e=>{let t=(0,G.useRef)(null),n=Q((O=null)=>{t.current=O},[]),r=Q(()=>t.current,[]),{contextId:o,dragHandleUsageInstructionsId:a,registry:i}=Na(Ba),{type:s,droppableId:l}=Na(Os),c=ye(()=>({id:e.draggableId,index:e.index,type:s,droppableId:l}),[e.draggableId,e.index,s,l]),{children:f,draggableId:d,isEnabled:u,shouldRespectForcePress:m,canDragInteractiveElements:h,isClone:x,mapped:v,dropAnimationFinished:y}=e;if(B1(e,o,r),L1(x),!x){let O=ye(()=>({descriptor:c,registry:i,getDraggableRef:r,canDragInteractiveElements:h,shouldRespectForcePress:m,isEnabled:u}),[c,i,r,h,m,u]);_1(O)}let b=ye(()=>u?{tabIndex:0,role:\"button\",\"aria-describedby\":a,\"data-rfd-drag-handle-draggable-id\":d,\"data-rfd-drag-handle-context-id\":o,draggable:!1,onDragStart:M1}:null,[o,a,d,u]),S=Q(O=>{v.type===\"DRAGGING\"&&v.dropping&&O.propertyName===\"transform\"&&(0,Rr.flushSync)(y)},[y,v]),w=ye(()=>{let O=A1(v),F=v.type===\"DRAGGING\"&&v.dropping?S:void 0;return{innerRef:n,draggableProps:{\"data-rfd-draggable-context-id\":o,\"data-rfd-draggable-id\":d,style:O,onTransitionEnd:F},dragHandleProps:b}},[o,b,d,v,S,n]),D=ye(()=>({draggableId:c.id,type:c.type,source:{index:c.index,droppableId:c.droppableId}}),[c.droppableId,c.id,c.index,c.type]);return G.default.createElement(G.default.Fragment,null,f(w,v.snapshot,D))},Af=(e,t)=>e===t,Pf=e=>{let{combine:t,destination:n}=e;return n?n.droppableId:t?t.droppableId:null},z1=e=>e.combine?e.combine.draggableId:null,$1=e=>e.at&&e.at.type===\"COMBINE\"?e.at.combine.draggableId:null;function U1(){let e=et((o,a)=>({x:o,y:a})),t=et((o,a,i=null,s=null,l=null)=>({isDragging:!0,isClone:a,isDropAnimating:!!l,dropAnimation:l,mode:o,draggingOver:i,combineWith:s,combineTargetFor:null})),n=et((o,a,i,s,l=null,c=null,f=null)=>({mapped:{type:\"DRAGGING\",dropping:null,draggingOver:l,combineWith:c,mode:a,offset:o,dimension:i,forceShouldAnimate:f,snapshot:t(a,s,l,c,null)}}));return(o,a)=>{if(Zr(o)){if(o.critical.draggable.id!==a.draggableId)return null;let i=o.current.client.offset,s=o.dimensions.draggables[a.draggableId],l=Ct(o.impact),c=$1(o.impact),f=o.forceShouldAnimate;return n(e(i.x,i.y),o.movementMode,s,a.isClone,l,c,f)}if(o.phase===\"DROP_ANIMATING\"){let i=o.completed;if(i.result.draggableId!==a.draggableId)return null;let s=a.isClone,l=o.dimensions.draggables[a.draggableId],c=i.result,f=c.mode,d=Pf(c),u=z1(c),h={duration:o.dropDuration,curve:gs.drop,moveTo:o.newHomeClientOffset,opacity:u?Xr.opacity.drop:null,scale:u?Xr.scale.drop:null};return{mapped:{type:\"DRAGGING\",offset:o.newHomeClientOffset,dimension:l,dropping:h,draggingOver:d,combineWith:u,mode:f,forceShouldAnimate:null,snapshot:t(f,s,d,u,h)}}}return null}}function _f(e=null){return{isDragging:!1,isDropAnimating:!1,isClone:!1,dropAnimation:null,mode:null,draggingOver:null,combineTargetFor:e,combineWith:null}}var W1={mapped:{type:\"SECONDARY\",offset:tt,combineTargetFor:null,shouldAnimateDisplacement:!0,snapshot:_f(null)}};function G1(){let e=et((i,s)=>({x:i,y:s})),t=et(_f),n=et((i,s=null,l)=>({mapped:{type:\"SECONDARY\",offset:i,combineTargetFor:s,shouldAnimateDisplacement:l,snapshot:t(s)}})),r=i=>i?n(tt,i,!0):null,o=(i,s,l,c)=>{let f=l.displaced.visible[i],d=!!(c.inVirtualList&&c.effected[i]),u=Aa(l),m=u&&u.draggableId===i?s:null;if(!f){if(!d)return r(m);if(l.displaced.invisible[i])return null;let v=nr(c.displacedBy.point),y=e(v.x,v.y);return n(y,m,!0)}if(d)return r(m);let h=l.displacedBy.point,x=e(h.x,h.y);return n(x,m,f.shouldAnimate)};return(i,s)=>{if(Zr(i))return i.critical.draggable.id===s.draggableId?null:o(s.draggableId,i.critical.draggable.id,i.impact,i.afterCritical);if(i.phase===\"DROP_ANIMATING\"){let l=i.completed;return l.result.draggableId===s.draggableId?null:o(s.draggableId,l.result.draggableId,l.impact,l.afterCritical)}return null}}var j1=()=>{let e=U1(),t=G1();return(r,o)=>e(r,o)||t(r,o)||W1},H1={dropAnimationFinished:uf},q1=Mi(j1,H1,null,{context:ys,areStatePropsEqual:Af})(V1);function Bf(e){return Na(Os).isUsingCloneFor===e.draggableId&&!e.isClone?null:G.default.createElement(q1,e)}function Va(e){let t=typeof e.isDragDisabled==\"boolean\"?!e.isDragDisabled:!0,n=!!e.disableInteractiveElementBlocking,r=!!e.shouldRespectForcePress;return G.default.createElement(Bf,R({},e,{isClone:!1,isEnabled:t,canDragInteractiveElements:n,shouldRespectForcePress:r}))}var Ds=e=>t=>e===t,Y1=Ds(\"scroll\"),K1=Ds(\"auto\"),X1=Ds(\"visible\"),Pu=(e,t)=>t(e.overflowX)||t(e.overflowY),J1=(e,t)=>t(e.overflowX)&&t(e.overflowY),Lf=e=>{let t=window.getComputedStyle(e),n={overflowX:t.overflowX,overflowY:t.overflowY};return Pu(n,Y1)||Pu(n,K1)},Q1=()=>!1,Mf=e=>e==null?null:e===document.body?Q1()?e:null:e===document.documentElement?null:Lf(e)?e:Mf(e.parentElement);var os=e=>({x:e.scrollLeft,y:e.scrollTop}),Vf=e=>e?window.getComputedStyle(e).position===\"fixed\"?!0:Vf(e.parentElement):!1,Z1=e=>{let t=Mf(e),n=Vf(e);return{closestScrollable:t,isFixedOnPage:n}},R1=({descriptor:e,isEnabled:t,isCombineEnabled:n,isFixedOnPage:r,direction:o,client:a,page:i,closest:s})=>{let l=(()=>{if(!s)return null;let{scrollSize:u,client:m}=s,h=gf({scrollHeight:u.scrollHeight,scrollWidth:u.scrollWidth,height:m.paddingBox.height,width:m.paddingBox.width});return{pageMarginBox:s.page.marginBox,frameClient:m,scrollSize:u,shouldClipSubject:s.shouldClipSubject,scroll:{initial:s.scroll,current:s.scroll,max:h,diff:{value:tt,displacement:tt}}}})(),c=o===\"vertical\"?ls:Yu,f=Rn({page:i,withPlaceholder:null,axis:c,frame:l});return{descriptor:e,isCombineEnabled:n,isFixedOnPage:r,axis:c,isEnabled:t,client:a,page:i,frame:l,subject:f}},ew=(e,t)=>{let n=Ui(e);if(!t||e!==t)return n;let r=n.paddingBox.top-t.scrollTop,o=n.paddingBox.left-t.scrollLeft,a=r+t.scrollHeight,i=o+t.scrollWidth,l=Ca({top:r,right:i,bottom:a,left:o},n.border);return Sa({borderBox:l,margin:n.margin,border:n.border,padding:n.padding})},tw=({ref:e,descriptor:t,env:n,windowScroll:r,direction:o,isDropDisabled:a,isCombineEnabled:i,shouldClipSubject:s})=>{let l=n.closestScrollable,c=ew(e,l),f=$r(c,r),d=(()=>{if(!l)return null;let m=Ui(l),h={scrollHeight:l.scrollHeight,scrollWidth:l.scrollWidth};return{client:m,page:$r(m,r),scroll:os(l),scrollSize:h,shouldClipSubject:s}})();return R1({descriptor:t,isEnabled:!a,isCombineEnabled:i,isFixedOnPage:n.isFixedOnPage,direction:o,client:c,page:f,closest:d})},nw={passive:!1},rw={passive:!0},_u=e=>e.shouldPublishImmediately?nw:rw,Ia=e=>e&&e.env.closestScrollable||null;function ow(e){let t=(0,G.useRef)(null),n=Na(Ba),r=ws(\"droppable\"),{registry:o,marshal:a}=n,i=Cs(e),s=ye(()=>({id:e.droppableId,type:e.type,mode:e.mode}),[e.droppableId,e.mode,e.type]),l=(0,G.useRef)(s),c=ye(()=>et((w,D)=>{t.current||B();let O={x:w,y:D};a.updateDroppableScroll(s.id,O)}),[s.id,a]),f=Q(()=>{let w=t.current;return!w||!w.env.closestScrollable?tt:os(w.env.closestScrollable)},[]),d=Q(()=>{let w=f();c(w.x,w.y)},[f,c]),u=ye(()=>Zn(d),[d]),m=Q(()=>{let w=t.current,D=Ia(w);if(w&&D||B(),w.scrollOptions.shouldPublishImmediately){d();return}u()},[u,d]),h=Q((w,D)=>{t.current&&B();let O=i.current,F=O.getDroppableRef();F||B();let T=Z1(F),P={ref:F,descriptor:s,env:T,scrollOptions:D};t.current=P;let V=tw({ref:F,descriptor:s,env:T,windowScroll:w,direction:O.direction,isDropDisabled:O.isDropDisabled,isCombineEnabled:O.isCombineEnabled,shouldClipSubject:!O.ignoreContainerClipping}),E=T.closestScrollable;return E&&(E.setAttribute(Eu.contextId,n.contextId),E.addEventListener(\"scroll\",m,_u(P.scrollOptions))),V},[n.contextId,s,m,i]),x=Q(()=>{let w=t.current,D=Ia(w);return w&&D||B(),os(D)},[]),v=Q(()=>{let w=t.current;w||B();let D=Ia(w);t.current=null,D&&(u.cancel(),D.removeAttribute(Eu.contextId),D.removeEventListener(\"scroll\",m,_u(w.scrollOptions)))},[m,u]),y=Q(w=>{let D=t.current;D||B();let O=Ia(D);O||B(),O.scrollTop+=w.y,O.scrollLeft+=w.x},[]),b=ye(()=>({getDimensionAndWatchScroll:h,getScrollWhileDragging:x,dragStopped:v,scroll:y}),[v,h,x,y]),S=ye(()=>({uniqueId:r,descriptor:s,callbacks:b}),[b,s,r]);St(()=>(l.current=S.descriptor,o.droppable.register(S),()=>{t.current&&v(),o.droppable.unregister(S)}),[b,s,v,S,a,o.droppable]),St(()=>{t.current&&a.updateDroppableIsEnabled(l.current.id,!e.isDropDisabled)},[e.isDropDisabled,a]),St(()=>{t.current&&a.updateDroppableIsCombineEnabled(l.current.id,e.isCombineEnabled)},[e.isCombineEnabled,a])}function Ki(){}var Bu={width:0,height:0,margin:ov},aw=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>e||n===\"close\"?Bu:{height:t.client.borderBox.height,width:t.client.borderBox.width,margin:t.client.margin},iw=({isAnimatingOpenOnMount:e,placeholder:t,animate:n})=>{let r=aw({isAnimatingOpenOnMount:e,placeholder:t,animate:n});return{display:t.display,boxSizing:\"border-box\",width:r.width,height:r.height,marginTop:r.margin.top,marginRight:r.margin.right,marginBottom:r.margin.bottom,marginLeft:r.margin.left,flexShrink:\"0\",flexGrow:\"0\",pointerEvents:\"none\",transition:n!==\"none\"?Hr.placeholder:null}},sw=e=>{let t=(0,G.useRef)(null),n=Q(()=>{t.current&&(clearTimeout(t.current),t.current=null)},[]),{animate:r,onTransitionEnd:o,onClose:a,contextId:i}=e,[s,l]=(0,G.useState)(e.animate===\"open\");(0,G.useEffect)(()=>s?r!==\"open\"?(n(),l(!1),Ki):t.current?Ki:(t.current=setTimeout(()=>{t.current=null,l(!1)}),n):Ki,[r,s,n]);let c=Q(d=>{d.propertyName===\"height\"&&(o(),r===\"close\"&&a())},[r,a,o]),f=iw({isAnimatingOpenOnMount:s,animate:e.animate,placeholder:e.placeholder});return G.default.createElement(e.placeholder.tagName,{style:f,\"data-rfd-placeholder-context-id\":i,onTransitionEnd:c,ref:e.innerRef})},lw=G.default.memo(sw);function Xi(e){return typeof e==\"boolean\"}function Ji(e,t){t.forEach(n=>n(e))}var dw=[function({props:t}){t.droppableId||B(),typeof t.droppableId!=\"string\"&&B()},function({props:t}){Xi(t.isDropDisabled)||B(),Xi(t.isCombineEnabled)||B(),Xi(t.ignoreContainerClipping)||B()},function({getDroppableRef:t}){Ff(t())}],cw=[function({props:t,getPlaceholderRef:n}){!t.placeholder||n()}],uw=[function({props:t}){t.renderClone||B()},function({getPlaceholderRef:t}){t()&&B()}];function fw(e){ao(()=>{Ji(e,dw),e.props.mode===\"standard\"&&Ji(e,cw),e.props.mode===\"virtual\"&&Ji(e,uw)})}var as=class extends G.default.PureComponent{constructor(...t){super(...t),this.state={isVisible:!!this.props.on,data:this.props.on,animate:this.props.shouldAnimate&&this.props.on?\"open\":\"none\"},this.onClose=()=>{this.state.animate===\"close\"&&this.setState({isVisible:!1})}}static getDerivedStateFromProps(t,n){return t.shouldAnimate?t.on?{isVisible:!0,data:t.on,animate:\"open\"}:n.isVisible?{isVisible:!0,data:n.data,animate:\"close\"}:{isVisible:!1,animate:\"close\",data:null}:{isVisible:!!t.on,data:t.on,animate:\"none\"}}render(){if(!this.state.isVisible)return null;let t={onClose:this.onClose,data:this.state.data,animate:this.state.animate};return this.props.children(t)}},pw=e=>{let t=(0,G.useContext)(Ba);t||B();let{contextId:n,isMovementAllowed:r}=t,o=(0,G.useRef)(null),a=(0,G.useRef)(null),{children:i,droppableId:s,type:l,mode:c,direction:f,ignoreContainerClipping:d,isDropDisabled:u,isCombineEnabled:m,snapshot:h,useClone:x,updateViewportMaxScroll:v,getContainerForClone:y}=e,b=Q(()=>o.current,[]),S=Q((N=null)=>{o.current=N},[]),w=Q(()=>a.current,[]),D=Q((N=null)=>{a.current=N},[]);fw({props:e,getDroppableRef:b,getPlaceholderRef:w});let O=Q(()=>{r()&&v({maxScroll:bf()})},[r,v]);ow({droppableId:s,type:l,mode:c,direction:f,isDropDisabled:u,isCombineEnabled:m,ignoreContainerClipping:d,getDroppableRef:b});let F=ye(()=>G.default.createElement(as,{on:e.placeholder,shouldAnimate:e.shouldAnimatePlaceholder},({onClose:N,data:U,animate:K})=>G.default.createElement(lw,{placeholder:U,onClose:N,innerRef:D,animate:K,contextId:n,onTransitionEnd:O})),[n,O,e.placeholder,e.shouldAnimatePlaceholder,D]),T=ye(()=>({innerRef:S,placeholder:F,droppableProps:{\"data-rfd-droppable-id\":s,\"data-rfd-droppable-context-id\":n}}),[n,s,F,S]),P=x?x.dragging.draggableId:null,V=ye(()=>({droppableId:s,type:l,isUsingCloneFor:P}),[s,P,l]);function E(){if(!x)return null;let{dragging:N,render:U}=x,K=G.default.createElement(Bf,{draggableId:N.draggableId,index:N.source.index,isClone:!0,isEnabled:!0,shouldRespectForcePress:!1,canDragInteractiveElements:!0},(de,ve)=>U(de,ve,N));return Rr.default.createPortal(K,y())}return G.default.createElement(Os.Provider,{value:V},i(T,h),E())};function mw(){return document.body||B(),document.body}var Lu={mode:\"standard\",type:\"DEFAULT\",direction:\"vertical\",isDropDisabled:!1,isCombineEnabled:!1,ignoreContainerClipping:!1,renderClone:null,getContainerForClone:mw},zf=e=>{let t=C({},e),n;for(n in Lu)e[n]===void 0&&(t=I(C({},t),{[n]:Lu[n]}));return t},Qi=(e,t)=>e===t.droppable.type,Mu=(e,t)=>t.draggables[e.draggable.id],gw=()=>{let e={placeholder:null,shouldAnimatePlaceholder:!0,snapshot:{isDraggingOver:!1,draggingOverWith:null,draggingFromThisWith:null,isUsingPlaceholder:!1},useClone:null},t=I(C({},e),{shouldAnimatePlaceholder:!1}),n=et(a=>({draggableId:a.id,type:a.type,source:{index:a.index,droppableId:a.droppableId}})),r=et((a,i,s,l,c,f)=>{let d=c.descriptor.id;if(c.descriptor.droppableId===a){let h=f?{render:f,dragging:n(c.descriptor)}:null,x={isDraggingOver:s,draggingOverWith:s?d:null,draggingFromThisWith:d,isUsingPlaceholder:!0};return{placeholder:c.placeholder,shouldAnimatePlaceholder:!1,snapshot:x,useClone:h}}if(!i)return t;if(!l)return e;let m={isDraggingOver:s,draggingOverWith:d,draggingFromThisWith:null,isUsingPlaceholder:!0};return{placeholder:c.placeholder,shouldAnimatePlaceholder:!0,snapshot:m,useClone:null}});return(a,i)=>{let s=zf(i),l=s.droppableId,c=s.type,f=!s.isDropDisabled,d=s.renderClone;if(Zr(a)){let u=a.critical;if(!Qi(c,u))return t;let m=Mu(u,a.dimensions),h=Ct(a.impact)===l;return r(l,f,h,h,m,d)}if(a.phase===\"DROP_ANIMATING\"){let u=a.completed;if(!Qi(c,u.critical))return t;let m=Mu(u.critical,a.dimensions);return r(l,f,Pf(u.result)===l,Ct(u.impact)===l,m,d)}if(a.phase===\"IDLE\"&&a.completed&&!a.shouldFlush){let u=a.completed;if(!Qi(c,u.critical))return t;let m=Ct(u.impact)===l,h=!!(u.impact.at&&u.impact.at.type===\"COMBINE\"),x=u.critical.droppable.id===l;return m?h?e:t:x?e:t}return t}},hw={updateViewportMaxScroll:hy},za=Mi(gw,hw,(e,t,n)=>C(C(C({},zf(n)),e),t),{context:ys,areStatePropsEqual:Af})(pw);var{Title:bw,Text:je}=z.Typography,{Panel:$a}=z.Collapse,{Option:qI}=z.Select,ar=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function xw({config:e,updateConfig:t}){let n={name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",userId:\"\",deviceName:\"Hills Windows\",client:\"Hills Windows\",clientVersion:\"0.2.2\",deviceId:\"\",enabled:!0,cacheViews:!0,enablePlaybackReport:!0,timeout:15e3,retryCount:3,maxConcurrent:5,isJellyfin:!1},[r,o]=(0,k.useState)(()=>{let y=(e==null?void 0:e.emby)||[];return y.length===0?[I(C({},n),{name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",id:ar()}),I(C({},n),{name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",id:ar()})]:y.map(b=>I(C(C({},n),b),{id:b.id||ar(),enablePlaybackReport:b.enablePlaybackReport!==!1,isJellyfin:b.isJellyfin||!1}))}),[a,i]=(0,k.useState)([]),s=(0,k.useCallback)(y=>{if(!y.destination)return;let b=Array.from(r),[S]=b.splice(y.source.index,1);b.splice(y.destination.index,0,S),o(b)},[r]),l=(0,k.useCallback)(()=>\"\\u65B0\\u670D\\u52A1\\u5668 \".concat(r.length+1),[r.length]),c=(0,k.useCallback)(()=>{let y=ar(),b=I(C({},n),{name:l(),id:y,deviceId:\"\"});o([...r,b]),i(S=>[...S,y]),z.message.success(\"\\u5DF2\\u6DFB\\u52A0\\u65B0\\u670D\\u52A1\\u5668\")},[r,l]),f=(0,k.useCallback)(y=>{if(r.length<=1){z.message.warning(\"\\u81F3\\u5C11\\u9700\\u8981\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\");return}o(b=>b.filter(S=>S.id!==y)),i(b=>b.filter(S=>S!==y)),z.message.success(\"\\u670D\\u52A1\\u5668\\u5DF2\\u5220\\u9664\")},[r]),d=(0,k.useCallback)(y=>{let b=r.find(D=>D.id===y);if(!b)return;let S=ar(),w=I(C({},b),{name:\"\".concat(b.name,\" (\\u526F\\u672C)\"),id:S,deviceId:\"\"});o([...r,w]),i(D=>[...D,S]),z.message.success(\"\\u670D\\u52A1\\u5668\\u5DF2\\u590D\\u5236\")},[r]),u=(0,k.useCallback)((y,b,S)=>{o(w=>w.map(D=>D.id===y?I(C({},D),{[b]:S}):D))},[]),m=(0,k.useCallback)((y,b)=>{let S=r.findIndex(O=>O.id===y);if(b===\"up\"&&S===0||b===\"down\"&&S===r.length-1)return;let w=b===\"up\"?S-1:S+1,D=[...r];[D[S],D[w]]=[D[w],D[S]],o(D)},[r]),h=(0,k.useCallback)(y=>{i(b=>b.includes(y)?b.filter(S=>S!==y):[...b,y])},[]),x=(0,k.useCallback)(y=>y?!y.startsWith(\"http://\")&&!y.startsWith(\"https://\")?\"\\u670D\\u52A1\\u5668\\u5730\\u5740\\u5FC5\\u987B\\u4EE5 http:// \\u6216 https:// \\u5F00\\u5934\":null:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\\u4E0D\\u80FD\\u4E3A\\u7A7A\",[]),v=(0,k.useCallback)(y=>y?k.default.createElement(z.Tag,{color:\"green\",style:{fontSize:11,marginLeft:4}},k.default.createElement(Lo,null),\" Jellyfin\"):k.default.createElement(z.Tag,{color:\"blue\",style:{fontSize:11,marginLeft:4}},\"Emby\"),[]);return(0,k.useEffect)(()=>{t&&t(I(C({},e),{emby:r}))},[r,e,t]),k.default.createElement(\"div\",{className:\"emby-config-container\"},k.default.createElement(\"div\",{style:{marginBottom:16,padding:\"16px 20px\",background:\"#fff\",borderRadius:8,boxShadow:\"0 2px 8px rgba(0,0,0,0.06)\",display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},k.default.createElement(bw,{level:4,style:{margin:0,display:\"flex\",alignItems:\"center\",gap:8}},k.default.createElement(Sr,null)),k.default.createElement(z.Tag,{color:\"blue\",style:{fontSize:14}},\"\\u5171 \",r.length,\" \\u4E2A\\u670D\\u52A1\\u5668\")),k.default.createElement(z.Space,null,k.default.createElement(z.Button,{type:\"primary\",onClick:c,icon:k.default.createElement(ot,null),size:\"large\"},\"\\u65B0\\u589E\\u670D\\u52A1\\u5668\"))),k.default.createElement(Ma,{onDragEnd:s},k.default.createElement(za,{droppableId:\"emby-servers\"},y=>k.default.createElement(\"div\",I(C({},y.droppableProps),{ref:y.innerRef}),r.map((b,S)=>{let w=a.includes(b.id),D=b.isJellyfin?\"#52c41a\":\"#1890ff\",O=x(b.server);return k.default.createElement(Va,{key:b.id,draggableId:b.id,index:S},F=>k.default.createElement(\"div\",I(C({ref:F.innerRef},F.draggableProps),{style:{marginBottom:12}}),k.default.createElement(z.Card,{size:\"small\",style:C({borderRadius:8,borderLeft:\"4px solid \".concat(D)},O&&!w&&{borderColor:\"#ff4d4f\"})},k.default.createElement(\"div\",I(C({},F.dragHandleProps),{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",cursor:\"pointer\",paddingLeft:8,minHeight:48,gap:8},onClick:()=>h(b.id)}),k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12,flex:1,minWidth:0}},k.default.createElement(\"div\",{style:{flex:1,minWidth:0}},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:4,flexWrap:\"wrap\"}},k.default.createElement(je,{strong:!0,style:{fontSize:14,wordBreak:\"break-word\"}},b.name||\"\\u672A\\u547D\\u540D\\u670D\\u52A1\\u5668\"),k.default.createElement(z.Tag,{color:\"default\",style:{fontSize:10,marginLeft:4}},\"ID: \",b.id.slice(0,8)),v(b.isJellyfin),!b.enabled&&k.default.createElement(z.Tag,{color:\"default\"},\"\\u5DF2\\u7981\\u7528\"),O&&!w&&k.default.createElement(z.Tag,{color:\"error\",style:{fontSize:11}},\"\\u914D\\u7F6E\\u9519\\u8BEF\")),k.default.createElement(\"div\",null,k.default.createElement(je,{type:\"secondary\",style:{fontSize:12,wordBreak:\"break-all\"}},b.server||\"\\u672A\\u8BBE\\u7F6E\\u670D\\u52A1\\u5668\\u5730\\u5740\")))),k.default.createElement(z.Space,{onClick:T=>T.stopPropagation(),style:{flexShrink:0,alignSelf:\"flex-start\",marginTop:4}},k.default.createElement(z.Tooltip,{title:\"\\u590D\\u5236\\u670D\\u52A1\\u5668\"},k.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:k.default.createElement(vr,null),onClick:()=>d(b.id)})),k.default.createElement(z.Tooltip,{title:\"\\u4E0A\\u79FB\"},k.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:k.default.createElement(bn,null),disabled:S===0,onClick:()=>m(b.id,\"up\")})),k.default.createElement(z.Tooltip,{title:\"\\u4E0B\\u79FB\"},k.default.createElement(z.Button,{type:\"text\",size:\"small\",icon:k.default.createElement(hn,null),disabled:S===r.length-1,onClick:()=>m(b.id,\"down\")})),r.length>1&&k.default.createElement(z.Popconfirm,{title:\"\\u786E\\u5B9A\\u8981\\u5220\\u9664\\u8FD9\\u4E2A\\u670D\\u52A1\\u5668\\u5417\\uFF1F\",onConfirm:()=>f(b.id),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",placement:\"topRight\"},k.default.createElement(z.Tooltip,{title:\"\\u5220\\u9664\"},k.default.createElement(z.Button,{type:\"text\",danger:!0,size:\"small\",icon:k.default.createElement(qe,null)}))))),w&&k.default.createElement(k.default.Fragment,null,k.default.createElement(z.Divider,{style:{margin:\"12px 0\"}}),k.default.createElement(z.Collapse,{defaultActiveKey:[\"basic\",\"playback\"],ghost:!0},k.default.createElement($a,{header:\"\\u57FA\\u7840\\u914D\\u7F6E\",key:\"basic\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:24},k.default.createElement(je,{type:\"secondary\"},\"\\u5B9E\\u4F8B\\u540D\\u79F0\"),k.default.createElement(z.Input,{placeholder:\"\\u5982\\uFF1A\\u6211\\u7684\\u5916\\u7F51\\u670D\",value:b.name,onChange:T=>u(b.id,\"name\",T.target.value),status:b.name?\"\":\"warning\"})),k.default.createElement(z.Col,{span:24},k.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\",marginBottom:4}},k.default.createElement(je,{type:\"secondary\"},\"\\u670D\\u52A1\\u5668\\u5730\\u5740\"),O&&k.default.createElement(je,{type:\"danger\",style:{fontSize:12}},O)),k.default.createElement(z.Input,{placeholder:\"http://example.com:8096\",value:b.server,onChange:T=>u(b.id,\"server\",T.target.value),status:O?\"error\":\"\"}),k.default.createElement(je,{type:\"secondary\",style:{fontSize:12,marginTop:4}},\"\\u793A\\u4F8B: http://192.168.1.100:8096 \\u6216 https://emby.example.com\")),k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"\\u7528\\u6237\\u540D\"),k.default.createElement(z.Input,{placeholder:\"Username\",value:b.username,onChange:T=>u(b.id,\"username\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"\\u5BC6\\u7801\"),k.default.createElement(z.Input.Password,{placeholder:\"Password\",value:b.password,onChange:T=>u(b.id,\"password\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"Token\"),k.default.createElement(z.Input,{placeholder:\"\\u53EF\\u9009\\uFF0C\\u76F4\\u63A5\\u586B\\u5199Token\",value:b.token,onChange:T=>u(b.id,\"token\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"User ID\"),k.default.createElement(z.Input,{placeholder:\"\\u53EF\\u9009\\uFF0C\\u7528\\u6237ID\",value:b.userId,onChange:T=>u(b.id,\"userId\",T.target.value)})))),k.default.createElement($a,{header:\"\\u5BA2\\u6237\\u7AEF\\u4FE1\\u606F\",key:\"client\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"\\u8BBE\\u5907\\u540D\\u79F0\"),k.default.createElement(z.Input,{placeholder:\"\\u5982: Hills Windows\",value:b.deviceName,onChange:T=>u(b.id,\"deviceName\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"\\u5BA2\\u6237\\u7AEF\\u7C7B\\u578B\"),k.default.createElement(z.Input,{placeholder:\"\\u5982: Hills Windows\",value:b.client,onChange:T=>u(b.id,\"client\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(je,{type:\"secondary\"},\"\\u5BA2\\u6237\\u7AEF\\u7248\\u672C\"),k.default.createElement(z.Input,{placeholder:\"\\u5982: 4.8.0.50\",value:b.clientVersion,onChange:T=>u(b.id,\"clientVersion\",T.target.value)})),k.default.createElement(z.Col,{span:12},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\"}},k.default.createElement(je,{type:\"secondary\"},\"\\u8BBE\\u5907ID\"),k.default.createElement(z.Button,{type:\"link\",size:\"small\",onClick:()=>u(b.id,\"deviceId\",ar())},\"\\u91CD\\u65B0\\u751F\\u6210\")),k.default.createElement(z.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u751F\\u6210\",value:b.deviceId,onChange:T=>u(b.id,\"deviceId\",T.target.value)}),k.default.createElement(je,{type:\"secondary\",style:{fontSize:12,marginTop:4}},\"\\u6807\\u51C6UUID\\u683C\\u5F0F\\uFF0C\\u5982: 550e8400-e29b-41d4-a716-446655440000\")))),k.default.createElement($a,{header:\"\\u529F\\u80FD\\u5F00\\u5173\",key:\"features\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:8},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},k.default.createElement(z.Switch,{size:\"small\",checked:b.enabled,onChange:T=>u(b.id,\"enabled\",T)}),k.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u542F\\u7528\\u72B6\\u6001\"))),k.default.createElement(z.Col,{span:8},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},k.default.createElement(z.Switch,{size:\"small\",checked:b.cacheViews,onChange:T=>u(b.id,\"cacheViews\",T)}),k.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u7F13\\u5B58\\u89C6\\u56FE\"))),k.default.createElement(z.Col,{span:8},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",marginBottom:8}},k.default.createElement(z.Switch,{size:\"small\",checked:b.enablePlaybackReport,onChange:T=>u(b.id,\"enablePlaybackReport\",T)}),k.default.createElement(\"span\",{style:{marginLeft:8}},\"\\u64AD\\u653E\\u8FDB\\u5EA6\\u540C\\u6B65\")))),k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:24},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:\"8px 12px\",background:\"#f6ffed\",borderRadius:4,border:\"1px solid #b7eb8f\"}},k.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},k.default.createElement(Lo,{style:{marginRight:8,color:\"#52c41a\"}}),k.default.createElement(\"div\",null,k.default.createElement(je,{strong:!0},\"\\u670D\\u52A1\\u5668\\u7C7B\\u578B\"),k.default.createElement(\"div\",{style:{fontSize:12,color:\"#666\"}},b.isJellyfin?\"Jellyfin \\u662F\\u4E00\\u4E2A\\u5F00\\u6E90\\u7684\\u5A92\\u4F53\\u670D\\u52A1\\u5668\\uFF0C\\u4E0E Emby \\u517C\\u5BB9\":\"Emby \\u662F\\u4E00\\u4E2A\\u5A92\\u4F53\\u670D\\u52A1\\u5668\\uFF0C\\u652F\\u6301\\u672C\\u5730\\u548C\\u8FDC\\u7A0B\\u6D41\\u5A92\\u4F53\"))),k.default.createElement(z.Switch,{checked:b.isJellyfin,onChange:T=>u(b.id,\"isJellyfin\",T),checkedChildren:\"Jellyfin\",unCheckedChildren:\"Emby\"}))))),k.default.createElement($a,{header:\"\\u8BF7\\u6C42\\u914D\\u7F6E\",key:\"request\"},k.default.createElement(z.Row,{gutter:[16,12]},k.default.createElement(z.Col,{span:8},k.default.createElement(je,{type:\"secondary\"},\"\\u8D85\\u65F6\\u65F6\\u95F4(ms)\"),k.default.createElement(z.InputNumber,{style:{width:\"100%\"},min:1e3,max:6e4,step:1e3,value:b.timeout,onChange:T=>u(b.id,\"timeout\",T)})),k.default.createElement(z.Col,{span:8},k.default.createElement(je,{type:\"secondary\"},\"\\u91CD\\u8BD5\\u6B21\\u6570\"),k.default.createElement(z.InputNumber,{style:{width:\"100%\"},min:0,max:10,value:b.retryCount,onChange:T=>u(b.id,\"retryCount\",T)})),k.default.createElement(z.Col,{span:8},k.default.createElement(je,{type:\"secondary\"},\"\\u6700\\u5927\\u5E76\\u53D1\\u6570\"),k.default.createElement(z.InputNumber,{style:{width:\"100%\"},min:1,max:20,value:b.maxConcurrent,onChange:T=>u(b.id,\"maxConcurrent\",T)})))))))))}),y.placeholder))),r.length>0&&k.default.createElement(\"div\",{style:{marginTop:20,padding:\"16px\",background:\"#fafafa\",borderRadius:8}},k.default.createElement(je,{type:\"secondary\",style:{fontSize:12}},\"\\u63D0\\u793A\\uFF1A\\u914D\\u7F6E\\u4FEE\\u6539\\u540E\\u8BF7\\u624B\\u52A8\\u4FDD\\u5B58\")))}var $f=k.default.memo(xw);var W=_(J(),1),X=_(_e(),1);var Is=_(Je(),1);var{Text:Ot}=X.Typography,{TabPane:Uf}=X.Tabs,sr=Is.default.create({baseURL:\"/website\"});sr.interceptors.response.use(e=>{if(e.data.code!==0){let t=new Error(e.data.message);throw t.responseData=e.data,t}return e.data.data},e=>Promise.reject(e));var ir=[\"\\u4E00\\u53E3\\u6C14\\u6C99\\u96D5\\u52A8\\u6F2B\",\"\\u7EAA\\u5F55\\u7247\\u8D85\\u6E05\",\"\\u6F14\\u5531\\u4F1A\\u8D85\\u6E05\",\"\\u7F8E\\u98DF\\u8D85\\u6E05\",\"\\u98DF\\u8C31\",\"\\u4F53\\u80B2\\u8D85\\u6E05\",\"\\u7403\\u661F\",\"\\u65C5\\u6E38\",\"\\u98CE\\u666F4K\",\"\\u8BF4\\u6848\",\"\\u77E5\\u540DUP\\u4E3B\",\"\\u63A2\\u7D22\\u53D1\\u73B0\\u8D85\\u6E05\",\"\\u9B3C\\u755C\",\"\\u641E\\u7B11\\u8D85\\u6E05\",\"\\u513F\\u7AE5\\u8D85\\u6E05\",\"\\u52A8\\u7269\\u4E16\\u754C\\u8D85\\u6E05\",\"\\u76F8\\u58F0\\u5C0F\\u54C1\\u8D85\\u6E05\",\"\\u620F\\u66F2\",\"\\u89E3\\u8BF4\",\"\\u6F14\\u8BB2\",\"\\u5C0F\\u59D0\\u59D0\\u8D85\\u6E05\",\"\\u8352\\u91CE\\u6C42\\u751F\\u8D85\\u6E05\",\"\\u5065\\u8EAB\",\"\\u5E15\\u6885\\u62C9\",\"\\u592A\\u6781\\u62F3\",\"\\u5E7F\\u573A\\u821E\",\"\\u821E\\u8E48\",\"\\u97F3\\u4E50\",\"\\u6B4C\\u66F2\",\"MV4K\",\"\\u821E\\u66F2\\u8D85\\u6E05\",\"4K\",\"\\u7535\\u5F71\",\"\\u7535\\u89C6\\u5267\",\"\\u767D\\u566A\\u97F3\\u8D85\\u6E05\",\"\\u8003\\u516C\\u8003\\u8BC1\",\"\\u5E73\\u9762\\u8BBE\\u8BA1\\u6559\\u5B66\",\"\\u8F6F\\u4EF6\\u6559\\u7A0B\",\"Windows\",\"\\u9009\\u7F8E\",\"\\u6A21\\u7279\",\"\\u6CF3\\u88C5\\u79C0\",\"\\u5185\\u8863\\u79C0\",\"4K\\u97F3\\u4E50\",\"MV\",\"4K MV\",\"\\u5973\\u56E2\",\"\\u76F4\\u64AD\\u5E73\\u53F0\",\"\\u6F14\\u5531\\u4F1A\",\"\\u8BFE\\u7A0B\\u8F85\\u5BFC\",\"\\u98CE\\u666F\",\"\\u7F8E\\u98DF\",\"\\u76F8\\u58F0\\u5C0F\\u54C1\",\"\\u52A8\\u7269\\u4E16\\u754C\",\"\\u513F\\u7AE5\\u5C11\\u513F\"];function vw(){let[e]=X.Form.useForm(),[t,n]=(0,W.useState)(!1),[r,o]=(0,W.useState)(!1),[a,i]=(0,W.useState)({hasCookie:!1,cookieLength:0,lastUpdate:\"\\u672A\\u77E5\"}),[s,l]=(0,W.useState)(null),[c,f]=(0,W.useState)(null),[d,u]=(0,W.useState)(\"basic\"),[m,h]=(0,W.useState)([]),x=async()=>{var E;try{let N=await sr.get(\"/bilibili/config\"),U=\"\",K=!1;if(N.classes_all&&N.classes_all.trim())try{let ve=JSON.parse(N.classes_all.trim());if(Array.isArray(ve)){if(typeof ve[0]==\"string\")h(ve),U=JSON.stringify(ve,null,2);else{let Oe=ve.filter(Ke=>Ke&&Ke.type_id).map(Ke=>Ke.type_id);h(Oe),U=JSON.stringify(Oe,null,2)}K=!0}}catch(ve){console.warn(\"\\u89E3\\u6790classes_all\\u5931\\u8D25:\",ve)}if(!K){console.log(\"\\u6570\\u636E\\u5E93\\u4E2D\\u6CA1\\u6709\\u5206\\u7C7B\\u6570\\u636E\\uFF0C\\u4F7F\\u7528\\u5E76\\u4FDD\\u5B58\\u9ED8\\u8BA4\\u5206\\u7C7B\"),h(ir),U=JSON.stringify(ir,null,2);try{let ve={classes_all:JSON.stringify(ir)};await sr.put(\"/bilibili/config\",ve),console.log(\"\\u9ED8\\u8BA4\\u5206\\u7C7B\\u5DF2\\u4FDD\\u5B58\\u5230\\u6570\\u636E\\u5E93\")}catch(ve){console.error(\"\\u4FDD\\u5B58\\u9ED8\\u8BA4\\u5206\\u7C7B\\u5931\\u8D25:\",ve)}}let de={cookie:N.cookie||\"\",classes_all:U};e.getFieldValue(\"cookie\")||e.setFieldsValue(de),i({hasCookie:!!(N.cookie&&N.cookie.length>0),cookieLength:((E=N.cookie)==null?void 0:E.length)||0,lastUpdate:N.lastUpdate?new Date(N.lastUpdate).toLocaleString():\"\\u672A\\u77E5\"}),l(N.user_info||null),f(null)}catch(N){console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25:\",N),X.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"),h(ir)}},v=async()=>{var E,N;try{o(!0),f(null);let{cookie:U}=e.getFieldsValue([\"cookie\"]);if(!U||U.trim().length<50){X.message.warning(\"\\u8BF7\\u8F93\\u5165\\u5B8C\\u6574\\u7684Cookie\");return}let K=await Is.default.post(\"/spider/bili_all/3/validate-cookie\",{cookie:U.trim()});K.data.code===0?(f(K.data.data),X.message.success(\"Cookie\\u9A8C\\u8BC1\\u6210\\u529F\\uFF01\")):X.message.warning(K.data.message||\"Cookie\\u65E0\\u6548\\u6216\\u5DF2\\u8FC7\\u671F\")}catch(U){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",U),X.message.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25: \"+(((N=(E=U.response)==null?void 0:E.data)==null?void 0:N.message)||U.message))}finally{o(!1)}},y=async()=>{var E,N,U,K;try{n(!0);let ve={cookie:(await e.validateFields()).cookie||\"\",classes_all:e.getFieldValue(\"classes_all\")||JSON.stringify(m)},Oe=await sr.put(\"/bilibili/config\",ve);(E=Oe.testResult)!=null&&E.success?X.message.success(\"Cookie\\u4FDD\\u5B58\\u6210\\u529F\\uFF0C\\u5DF2\\u751F\\u6548\"):X.message.success(\"\\u57FA\\u7840\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),l(Oe.userInfo||null),f(null),i({hasCookie:!!ve.cookie,cookieLength:((N=ve.cookie)==null?void 0:N.length)||0,lastUpdate:Oe.lastUpdate?new Date(Oe.lastUpdate).toLocaleString():new Date().toLocaleString()})}catch(de){(K=(U=de.responseData)==null?void 0:U.data)!=null&&K.validationFailed?X.message.warning(de.message||\"Cookie\\u65E0\\u6548\\uFF0C\\u914D\\u7F6E\\u672A\\u4FDD\\u5B58\"):X.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+(de.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{n(!1)}},b=async()=>{try{n(!0);let E=JSON.stringify(m.filter(U=>U&&U.trim()!==\"\")),N={classes_all:E};await sr.put(\"/bilibili/config\",N),X.message.success(\"\\u5206\\u7C7B\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),e.setFieldsValue({classes_all:E}),await x()}catch(E){X.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+(E.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{n(!1)}},S=async()=>{try{await sr.delete(\"/bilibili/config\"),X.message.success(\"\\u914D\\u7F6E\\u5DF2\\u6E05\\u9664\"),f(null),h(ir),await x()}catch(E){X.message.error(\"\\u6E05\\u9664\\u5931\\u8D25: \"+(E.message||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}},w=()=>{let E=[...m,\"\\u65B0\\u5206\\u7C7B\"];h(E)},D=(E,N)=>{let U=[...m];U[E]=N,h(U)},O=E=>{let N=[...m];N.splice(E,1),h(N)},F=()=>{h([]),X.message.success(\"\\u5DF2\\u6E05\\u7A7A\\u6240\\u6709\\u5206\\u7C7B\")},T=E=>{if(!E.destination)return;let N=Array.from(m),[U]=N.splice(E.source.index,1);N.splice(E.destination.index,0,U),h(N)},P=()=>{h(ir),X.message.success(\"\\u5DF2\\u52A0\\u8F7D\\u9ED8\\u8BA4\\u5206\\u7C7B\")};(0,W.useEffect)(()=>{x()},[]);let V=c||s;return W.default.createElement(X.Card,null,W.default.createElement(X.Tabs,{activeKey:d,onChange:u,tabBarStyle:{marginBottom:16,whiteSpace:\"nowrap\",overflowX:\"auto\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"},tabBarGutter:8},W.default.createElement(Uf,{tab:\"\\u57FA\\u7840\\u914D\\u7F6E\",key:\"basic\"},W.default.createElement(X.Row,{gutter:24},W.default.createElement(X.Col,{span:24},W.default.createElement(X.Card,{size:\"small\",title:\"\\u5F53\\u524D\\u767B\\u5F55\\u4FE1\\u606F\",style:{marginBottom:16}},V?W.default.createElement(X.Row,{gutter:16,align:\"middle\"},W.default.createElement(X.Col,null,W.default.createElement(X.Avatar,{src:V.face,size:64})),W.default.createElement(X.Col,null,W.default.createElement(Ot,{strong:!0,style:{fontSize:16}},V.nickname),W.default.createElement(\"br\",null),W.default.createElement(Ot,{type:\"secondary\"},\"\\u7B49\\u7EA7 LV\",V.level||\"?\"),W.default.createElement(\"br\",null),W.default.createElement(Ot,{type:\"success\",strong:!0},V.vip),c&&W.default.createElement(Ot,{type:\"warning\",style:{marginLeft:8}},\"(\\u4EC5\\u6D4B\\u8BD5\\uFF0C\\u672A\\u4FDD\\u5B58)\"))):W.default.createElement(Ot,{type:\"warning\"},\"\\u672A\\u767B\\u5F55\\u6216Cookie\\u65E0\\u6548\")),W.default.createElement(X.Card,{size:\"small\",style:{marginBottom:16}},W.default.createElement(X.Row,{gutter:16},W.default.createElement(X.Col,{span:8},W.default.createElement(Ot,{strong:!0},\"Cookie\\u72B6\\u6001: \"),W.default.createElement(Ot,{type:a.hasCookie?\"success\":\"warning\"},a.hasCookie?\"\\u5DF2\\u8BBE\\u7F6E\":\"\\u672A\\u8BBE\\u7F6E\")),W.default.createElement(X.Col,{span:8},W.default.createElement(Ot,{strong:!0},\"\\u957F\\u5EA6: \"),W.default.createElement(Ot,null,a.cookieLength,\" \\u5B57\\u7B26\")),W.default.createElement(X.Col,{span:8},W.default.createElement(Ot,{strong:!0},\"\\u6700\\u540E\\u66F4\\u65B0: \"),W.default.createElement(Ot,null,a.lastUpdate)))),W.default.createElement(X.Form,{form:e,layout:\"vertical\"},W.default.createElement(X.Form.Item,{label:\"\\u7528\\u6237 Cookie\",name:\"cookie\",rules:[{validator:(E,N)=>N&&N.trim().length>0&&N.trim().length<50?Promise.reject(new Error(\"Cookie\\u592A\\u77ED\\uFF0C\\u8BF7\\u68C0\\u67E5\\u683C\\u5F0F\")):Promise.resolve()}]},W.default.createElement(X.Input.TextArea,{rows:4,placeholder:\"SESSDATA=xxx; bili_jct=xxx; DedeUserID=xxx; ...\"})),W.default.createElement(X.Form.Item,null,W.default.createElement(X.Space,null,W.default.createElement(X.Button,{onClick:v,loading:r,type:\"default\"},\"\\u9A8C\\u8BC1 Cookie\"),W.default.createElement(X.Button,{onClick:S,danger:!0},\"\\u6E05\\u9664\\u6240\\u6709\\u914D\\u7F6E\"))),W.default.createElement(X.Form.Item,null,W.default.createElement(X.Button,{type:\"primary\",onClick:y,loading:t,block:!0,size:\"large\"},\"\\u4FDD\\u5B58\\u57FA\\u7840\\u914D\\u7F6E\"))),W.default.createElement(X.Input.TextArea,{name:\"classes_all\",hidden:!0})))),W.default.createElement(Uf,{tab:\"\\u5206\\u7C7B\\u914D\\u7F6E\",key:\"classes\"},W.default.createElement(X.Row,{gutter:24},W.default.createElement(X.Col,{span:24},W.default.createElement(\"div\",{style:{marginBottom:16}},W.default.createElement(Ot,{type:\"secondary\"},\"\\u5206\\u7C7B\\u5C06\\u4F5C\\u4E3A\\u641C\\u7D22\\u5173\\u952E\\u8BCD\\u4F7F\\u7528\\u3002\\u62D6\\u52A8\\u5206\\u7C7B\\u53EF\\u4EE5\\u91CD\\u65B0\\u6392\\u5E8F\\u3002\")),W.default.createElement(Ma,{onDragEnd:T},W.default.createElement(za,{droppableId:\"classes\"},E=>W.default.createElement(\"div\",I(C({},E.droppableProps),{ref:E.innerRef,style:{minHeight:200}}),m.map((N,U)=>W.default.createElement(Va,{key:U,draggableId:U.toString(),index:U},K=>W.default.createElement(\"div\",I(C(C({ref:K.innerRef},K.draggableProps),K.dragHandleProps),{style:I(C({},K.draggableProps.style),{marginBottom:8,padding:8,border:\"1px solid #d9d9d9\",borderRadius:4,backgroundColor:\"#fff\",display:\"flex\",alignItems:\"center\"})}),W.default.createElement(\"div\",{style:{marginRight:8,cursor:\"move\"}},W.default.createElement(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\"},W.default.createElement(\"path\",{d:\"M8 7H16M8 12H16M8 17H16\",stroke:\"#999\",strokeWidth:\"2\",strokeLinecap:\"round\"}))),W.default.createElement(X.Input,{value:N,onChange:de=>D(U,de.target.value),style:{flex:1},placeholder:\"\\u8F93\\u5165\\u5206\\u7C7B\\u540D\\u79F0\"}),W.default.createElement(X.Button,{danger:!0,onClick:()=>O(U),style:{marginLeft:8}},\"\\u5220\\u9664\")))),E.placeholder))),m.length===0&&W.default.createElement(Ot,{type:\"secondary\",style:{display:\"block\",textAlign:\"center\",padding:\"20px\"}},'\\u6682\\u65E0\\u5206\\u7C7B\\uFF0C\\u70B9\\u51FB\"\\u6DFB\\u52A0\\u5206\\u7C7B\"\\u6309\\u94AE\\u6DFB\\u52A0'),W.default.createElement(\"div\",{style:{marginTop:16,display:\"flex\",justifyContent:\"space-between\"}},W.default.createElement(X.Button,{type:\"dashed\",onClick:w},\"\\u6DFB\\u52A0\\u5206\\u7C7B\"),W.default.createElement(X.Button,{type:\"dashed\",onClick:P},\"\\u52A0\\u8F7D\\u9ED8\\u8BA4\\u5206\\u7C7B\"),W.default.createElement(X.Button,{danger:!0,onClick:F},\"\\u6E05\\u7A7A\\u5206\\u7C7B\")),W.default.createElement(\"div\",{style:{marginTop:24}},W.default.createElement(X.Button,{type:\"primary\",onClick:b,loading:t,block:!0,size:\"large\"},\"\\u4FDD\\u5B58\\u5206\\u7C7B\\u914D\\u7F6E\")))))))}var Wf=vw;var L=_(J(),1),$=_(_e(),1);var Cp=_(Je(),1),Sp=_(yp(),1);var{Text:Ua,Title:pE}=$.Typography,lC=e=>{let t=Cp.default.create({baseURL:e});return t.interceptors.response.use(n=>{if(n.data.code!==0)throw $.message.error(n.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),new Error(n.data.message);return n.data.data},n=>{var r,o;return $.message.error(((o=(r=n.response)==null?void 0:r.data)==null?void 0:o.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),Promise.reject(n)}),t},Fs=lC(\"/website/live\"),wp={name:\"\\u65B0\\u76F4\\u64AD\\u6E90_\".concat(Date.now().toString().slice(-4)),url:\"\",ua:\"okhttp/3.15\",enabled:!0,logoUrl:\"\"},Op=L.default.memo(({field:e,remove:t,fieldsCount:n,onCopy:r,index:o})=>{let m=e,{key:a,name:i,fieldKey:s}=m,l=$t(m,[\"key\",\"name\",\"fieldKey\"]),[c,f]=(0,L.useState)(!1),d=$.Form.useFormInstance(),u=$.Form.useWatch([\"liveSources\",i],d)||{};return L.default.createElement($.Card,{size:\"small\",style:{marginBottom:12,borderLeft:\"4px solid #1890ff\",borderRadius:8},bodyStyle:{padding:16}},L.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",marginBottom:c?12:0,cursor:\"pointer\",gap:8},onClick:()=>f(!c)},L.default.createElement(\"div\",{style:{flex:1,minWidth:0}},L.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:4,flexWrap:\"wrap\"}},L.default.createElement(Ua,{strong:!0,style:{color:\"#1890ff\",fontSize:14}},u.name||\"\\u76F4\\u64AD\\u6E90 #\".concat(o+1)),u.enabled!==!1&&L.default.createElement($.Tag,{color:\"green\",style:{fontSize:10}},\"\\u5DF2\\u542F\\u7528\"),u.enabled===!1&&L.default.createElement($.Tag,{color:\"default\",style:{fontSize:10}},\"\\u5DF2\\u7981\\u7528\")),L.default.createElement(\"div\",null,L.default.createElement(Ua,{type:\"secondary\",style:{fontSize:12,wordBreak:\"break-all\"}},u.url||\"\\u672A\\u8BBE\\u7F6E\\u5730\\u5740\"))),L.default.createElement($.Space,{onClick:h=>h.stopPropagation(),style:{flexShrink:0,alignSelf:\"flex-start\"}},L.default.createElement($.Tooltip,{title:\"\\u590D\\u5236\\u914D\\u7F6E\"},L.default.createElement($.Button,{type:\"text\",size:\"small\",icon:L.default.createElement(vr,null),onClick:()=>r(e.name),style:{minWidth:36,minHeight:36}})),n>1&&L.default.createElement($.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664\\u8BE5\\u914D\\u7F6E\\u5417\\uFF1F\",onConfirm:()=>t(i),okText:\"\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",placement:\"topRight\"},L.default.createElement($.Button,{type:\"text\",danger:!0,size:\"small\",icon:L.default.createElement(qe,null),style:{minWidth:36,minHeight:36}})))),c&&L.default.createElement(L.default.Fragment,null,L.default.createElement(\"div\",{style:{height:12}}),L.default.createElement($.Row,{gutter:[16,12]},L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"name\"],label:L.default.createElement($.Space,{size:\"small\"},L.default.createElement(\"span\",null,\"\\u76F4\\u64AD\\u6E90\\u540D\\u79F0\"),L.default.createElement($.Tooltip,{title:\"\\u5FC5\\u586B\\uFF0C\\u7528\\u4E8E\\u6807\\u8BC6\\u76F4\\u64AD\\u6E90\"},L.default.createElement(nn,{style:{color:\"#999\",fontSize:\"12px\"}}))),rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"},{max:50,message:\"\\u540D\\u79F0\\u4E0D\\u80FD\\u8D85\\u8FC750\\u4E2A\\u5B57\\u7B26\"}]}),L.default.createElement($.Input,{placeholder:\"\\u5982\\uFF1A\\u80A5\\u7F8A\\u76F4\\u64AD\",maxLength:50,showCount:!0}))),L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"url\"],label:L.default.createElement($.Space,{size:\"small\"},L.default.createElement(\"span\",null,\"\\u76F4\\u64AD\\u6E90\\u5730\\u5740\"),L.default.createElement($.Tooltip,{title:\"\\u5FC5\\u586B\\uFF0C\\u652F\\u6301\\u6DFB\\u52A0\\u81EA\\u5B9A\\u4E49\\u8BF7\\u6C42\\u5934\\uFF0C\\u5982\\uFF1Ahttp://example.com/live.m3u|Referer=xxx&Origin=xxx\"},L.default.createElement(nn,{style:{color:\"#999\",fontSize:\"12px\"}}))),rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5730\\u5740\"},{type:\"url\",message:\"\\u8BF7\\u8F93\\u5165\\u6709\\u6548\\u7684URL\\u5730\\u5740\"}]}),L.default.createElement($.Input,{placeholder:\"https://xxx.com/live.m3u\"})))),L.default.createElement($.Row,{gutter:[16,12]},L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"ua\"],label:\"User-Agent\",initialValue:\"okhttp/3.15\"}),L.default.createElement($.Input,{placeholder:\"\\u4E0D\\u586B\\u9ED8\\u8BA4\\u4E3A: okhttp/3.15\",suffix:L.default.createElement($.Tooltip,{title:\"\\u9ED8\\u8BA4\\u503C\\uFF1Aokhttp/3.15\"},L.default.createElement(nn,{style:{color:\"#999\"}}))}))),L.default.createElement($.Col,{xs:24,md:12},L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"logoUrl\"],label:L.default.createElement($.Space,{size:\"small\"},L.default.createElement(\"span\",null,\"Logo\\u5730\\u5740\"),L.default.createElement($.Tooltip,{title:\"\\u7559\\u7A7A\\u5C06\\u4F7F\\u7528\\u9ED8\\u8BA4logo\\uFF0C\\u5EFA\\u8BAE\\u4F7F\\u7528100\\xD7100\\u50CF\\u7D20\\u7684\\u56FE\\u7247\"},L.default.createElement(nn,{style:{color:\"#999\",fontSize:\"12px\"}})))}),L.default.createElement($.Input,{placeholder:\"https://xxx.com/logo.png\",suffix:L.default.createElement($.Tooltip,{title:\"\\u5EFA\\u8BAE\\u4F7F\\u7528HTTPS\\u94FE\\u63A5\"},L.default.createElement(nn,{style:{color:\"#999\"}}))})))),L.default.createElement($.Row,{justify:\"space-between\",align:\"middle\"},L.default.createElement($.Col,null,L.default.createElement($.Form.Item,I(C({},l),{name:[i,\"enabled\"],valuePropName:\"checked\",initialValue:!0,label:\"\\u72B6\\u6001\",style:{marginBottom:0}}),L.default.createElement($.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"default\"}))))))});Op.displayName=\"LiveSourceItem\";function dC(){let[e]=$.Form.useForm(),[t,n]=(0,L.useState)(!1),[r,o]=(0,L.useState)(!1),a=(0,L.useCallback)(async()=>{try{n(!0);let f=await Fs.get(\"/config\"),d=Array.isArray(f)?f.map(u=>I(C({},u),{ua:u.ua||\"okhttp/3.15\",logoUrl:u.logoUrl||\"\"})):[];e.setFieldsValue({liveSources:d})}catch(f){console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25:\",f),$.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{n(!1)}},[e]),i=(0,L.useCallback)((0,Sp.default)(async f=>{try{o(!0);let d=(f.liveSources||[]).filter(u=>{var m,h;return((m=u.name)==null?void 0:m.trim())&&((h=u.url)==null?void 0:h.trim())}).map(u=>I(C({},u),{ua:u.ua||\"okhttp/3.15\",logoUrl:u.logoUrl||\"\"}));if(d.length===0){$.message.warning(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u6709\\u6548\\u7684\\u76F4\\u64AD\\u6E90\");return}await Fs.put(\"/config\",d),$.message.success(\"\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\"),await a()}catch(d){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",d),$.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\")}finally{o(!1)}},300),[a]),s=async()=>{try{let f=await e.validateFields();await i(f)}catch(f){console.error(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u5931\\u8D25:\",f)}},l=async()=>{try{await Fs.delete(\"/config\"),$.message.success(\"\\u6240\\u6709\\u914D\\u7F6E\\u5DF2\\u6E05\\u7A7A\"),await a()}catch(f){console.error(\"\\u6E05\\u9664\\u914D\\u7F6E\\u5931\\u8D25:\",f),$.message.error(\"\\u6E05\\u9664\\u914D\\u7F6E\\u5931\\u8D25\")}},c=(0,L.useCallback)(f=>{let d=e.getFieldValue(\"liveSources\")||[],u=d[f];if(u){let m=I(C({},u),{name:\"\".concat(u.name,\"_\\u526F\\u672C\").concat(Date.now().toString().slice(-4))}),h=[...d,m];e.setFieldsValue({liveSources:h}),$.message.success(\"\\u914D\\u7F6E\\u9879\\u5DF2\\u590D\\u5236\")}},[e]);return(0,L.useEffect)(()=>{a()},[a]),L.default.createElement($.Spin,{spinning:t,tip:\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u4E2D...\"},L.default.createElement($.Card,{title:\"\\u76F4\\u64AD\\u6E90\\u914D\\u7F6E\",extra:L.default.createElement(Ua,{type:\"secondary\"},\"\\u6700\\u540E\\u66F4\\u65B0: \",new Date().toLocaleDateString()),style:{borderRadius:8},headStyle:{borderBottom:\"1px solid #f0f0f0\"}},L.default.createElement($.Alert,{message:null,description:L.default.createElement(\"div\",{style:{fontSize:\"13px\"}},L.default.createElement(\"p\",null,\"1. UA\\u7559\\u7A7A\\u65F6\\uFF0C\\u5C06\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C\\uFF1Aokhttp/3.15\"),L.default.createElement(\"p\",null,\"2. \\u53EF\\u5728URL\\u540E\\u6DFB\\u52A0\\u81EA\\u5B9A\\u4E49\\u8BF7\\u6C42\\u5934\\uFF0C\\u683C\\u5F0F\\uFF1Ahttp://example.com/live.m3u|Referer=xxx&Origin=xxx\")),type:\"info\",showIcon:!0,icon:L.default.createElement(nn,null),style:{marginBottom:20}}),L.default.createElement($.Form,{form:e,layout:\"vertical\",initialValues:{liveSources:[]},size:\"middle\"},L.default.createElement($.Form.List,{name:\"liveSources\"},(f,{add:d,remove:u})=>L.default.createElement(L.default.Fragment,null,L.default.createElement(\"div\",{style:{marginBottom:16,display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},L.default.createElement(Ua,{strong:!0},\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868 (\",f.length,\")\"),L.default.createElement($.Space,null,L.default.createElement($.Button,{type:\"dashed\",onClick:()=>d(wp),icon:L.default.createElement(ot,null),size:\"middle\"},\"\\u65B0\\u589E\\u76F4\\u64AD\\u6E90\"),f.length>0&&L.default.createElement($.Popconfirm,{title:\"\\u786E\\u5B9A\\u6E05\\u7A7A\\u6240\\u6709\\u76F4\\u64AD\\u6E90\\u5417\\uFF1F\",onConfirm:l,okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\"},L.default.createElement($.Button,{danger:!0,size:\"middle\"},\"\\u6E05\\u7A7A\\u5168\\u90E8\")))),f.length===0?L.default.createElement($.Empty,{description:\"\\u6682\\u65E0\\u76F4\\u64AD\\u6E90\\u914D\\u7F6E\",image:$.Empty.PRESENTED_IMAGE_SIMPLE,style:{margin:\"40px 0\"}},L.default.createElement($.Button,{type:\"primary\",onClick:()=>d(wp),icon:L.default.createElement(ot,null)},\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\")):L.default.createElement(\"div\",{style:{paddingRight:8}},f.map((m,h)=>L.default.createElement(Op,{key:m.key,field:m,remove:u,fieldsCount:f.length,onCopy:c,index:h}))),f.length>0&&L.default.createElement(\"div\",{style:{background:\"#fff\",padding:\"16px 0\",borderTop:\"1px solid #f0f0f0\",marginTop:16}},L.default.createElement($.Space,{size:\"middle\"},L.default.createElement($.Button,{type:\"primary\",icon:L.default.createElement(rn,null),onClick:s,loading:r,size:\"large\",style:{minWidth:120}},r?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),L.default.createElement($.Button,{onClick:()=>window.location.reload(),size:\"large\"},\"\\u5237\\u65B0\\u9875\\u9762\"))))))))}var Dp=L.default.memo(dC);var M=_(J(),1),q=_(_e(),1);var{Title:vE,Text:cC,Paragraph:yE}=q.Typography,{useToken:uC}=q.theme,As=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function fC(){let[e]=q.Form.useForm(),[t,n]=(0,M.useState)({}),[r,o]=(0,M.useState)(!1),[a,i]=(0,M.useState)({}),{token:s}=uC(),l=\"/website/alist/config\",c=async()=>{o(!0);try{let h=await(await fetch(l)).json();if(h.code===0&&h.data){let x=(Array.isArray(h.data)?h.data:[]).map(b=>I(C({},b),{id:b.id||As()}));e.setFieldsValue({servers:x});let v={},y={};x.forEach(b=>{v[b.id]=!1,y[b.id]=b.token?\"token\":\"password\"}),n(v),i(y)}}catch(m){console.error(\"\\u52A0\\u8F7DAlist\\u914D\\u7F6E\\u5931\\u8D25:\",m),q.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{o(!1)}},f=m=>{n(h=>I(C({},h),{[m]:!h[m]}))},d=async()=>{o(!0);try{let x=((await e.validateFields()).servers||[]).map(b=>I(C({},b),{id:b.id||As(),timeout:3e4})),y=await(await fetch(l,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(x)})).json();if(y.code===0)q.message.success({content:\"Alist\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\",style:{marginTop:\"50vh\"}});else throw new Error(y.message)}catch(m){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",m),q.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(m.message))}finally{o(!1)}};(0,M.useEffect)(()=>{c()},[]);let u={background:\"linear-gradient(135deg, \".concat(s.colorPrimaryBg,\" 0%, \").concat(s.colorBgContainer,\" 100%)\"),borderRadius:s.borderRadiusLG,padding:\"16px 20px\",margin:\"-1px -1px 0 -1px\",borderBottom:\"1px solid \".concat(s.colorBorderSecondary)};return M.default.createElement(q.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#722ed1\"},components:{Card:{paddingLG:20},Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},M.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},M.default.createElement(\"div\",{style:{marginBottom:24}},M.default.createElement(q.Alert,{message:\"\\u8BA4\\u8BC1\\u65B9\\u5F0F\\u8BF4\\u660E\",description:M.default.createElement(\"div\",null,M.default.createElement(\"p\",null,\"\\u2022 \",M.default.createElement(\"strong\",null,\"\\u7528\\u6237\\u540D/\\u5BC6\\u7801\\u8BA4\\u8BC1\"),\"\\uFF1A\\u4F7F\\u7528 Alist \\u7BA1\\u7406\\u5458\\u7684\\u8D26\\u53F7\\u5BC6\\u7801\\u767B\\u5F55\"),M.default.createElement(\"p\",null,\"\\u2022 \",M.default.createElement(\"strong\",null,\"Token \\u8BA4\\u8BC1\"),\"\\uFF1A\\u5728 Alist \\u540E\\u53F0\\u751F\\u6210\\u7684\\u8BBF\\u95EE\\u4EE4\\u724C\\uFF0C\\u66F4\\u5B89\\u5168\"),M.default.createElement(\"p\",null,\"\\u2022 \\u4E24\\u79CD\\u8BA4\\u8BC1\\u65B9\\u5F0F\\u9009\\u62E9\\u4E00\\u79CD\\u5373\\u53EF\\uFF0CToken \\u8BA4\\u8BC1\\u4F18\\u5148\\u7EA7\\u66F4\\u9AD8\")),type:\"info\",showIcon:!0,icon:M.default.createElement(Hn,null),style:{background:s.colorPrimaryBg,border:\"1px solid \".concat(s.colorPrimaryBorder),borderRadius:s.borderRadiusLG,marginBottom:24}})),M.default.createElement(q.Form,{form:e,layout:\"vertical\"},M.default.createElement(q.Form.List,{name:\"servers\"},(m,{add:h,remove:x})=>{let v=()=>{let S=As(),w={id:S,name:\"Alist\\u670D\\u52A1\\u5668 \".concat(m.length+1),server:\"\",username:\"\",password:\"\",token:\"\",enabled:!0};h(w),n(D=>I(C({},D),{[S]:!0})),i(D=>I(C({},D),{[S]:\"password\"}))},y=S=>{if(m.length<=1){q.message.warning(\"\\u81F3\\u5C11\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}let w=m.findIndex(D=>{let O=e.getFieldValue([\"servers\",D.name]);return O&&O.id===S});w!==-1&&(x(w),n(D=>{let O=C({},D);return delete O[S],O}),i(D=>{let O=C({},D);return delete O[S],O}))},b=(S,w)=>{i(D=>I(C({},D),{[S]:w}))};return M.default.createElement(\"div\",{style:{marginBottom:24}},m.map(S=>{let w=e.getFieldValue([\"servers\",S.name,\"id\"]),D=e.getFieldValue([\"servers\",S.name,\"name\"])||\"Alist\\u670D\\u52A1\\u5668 \".concat(S.name+1),O=e.getFieldValue([\"servers\",S.name,\"enabled\"])!==!1,F=a[w]||\"password\",T=t[w]||!1;return M.default.createElement(q.Card,{key:S.key,style:{marginBottom:16,borderRadius:s.borderRadiusLG,border:\"1px solid \".concat(O?\"#722ed1\":s.colorBorderSecondary),boxShadow:\"0 2px 8px rgba(114,46,209,0.08)\",overflow:\"hidden\",transition:\"all 0.3s\"},bodyStyle:{padding:0}},M.default.createElement(\"div\",{style:I(C({},u),{borderLeft:O?\"4px solid #722ed1\":\"4px solid transparent\"})},M.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},M.default.createElement(q.Badge,{color:O?\"#722ed1\":\"default\",text:M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8}},M.default.createElement(\"span\",{style:{fontWeight:500,fontSize:15,color:s.colorTextHeading}},D),!O&&M.default.createElement(q.Tag,{color:\"default\",style:{fontSize:11}},\"\\u5DF2\\u7981\\u7528\"),M.default.createElement(q.Tag,{color:\"purple\",style:{fontSize:11,background:\"rgba(114,46,209,0.1)\"}},\"Alist\"))})),M.default.createElement(q.Space,null,M.default.createElement(q.Form.Item,I(C({},S),{name:[S.name,\"enabled\"],valuePropName:\"checked\",noStyle:!0}),M.default.createElement(q.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"small\",style:{background:O?\"#722ed1\":void 0}})),M.default.createElement(q.Button,{type:\"text\",size:\"small\",icon:T?M.default.createElement(_t,null):M.default.createElement(Pt,null),onClick:()=>f(w),style:{color:s.colorTextSecondary}}),m.length>1&&M.default.createElement(q.Tooltip,{title:\"\\u5220\\u9664\\u670D\\u52A1\\u5668\"},M.default.createElement(q.Button,{type:\"text\",size:\"small\",danger:!0,icon:M.default.createElement(qe,null),onClick:()=>y(w)}))))),T&&M.default.createElement(\"div\",{style:{padding:\"24px 20px\",background:s.colorBgLayout}},M.default.createElement(q.Row,{gutter:[24,16]},M.default.createElement(q.Col,{span:24},M.default.createElement(q.Form.Item,I(C({},S),{label:M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},M.default.createElement(wr,{style:{fontSize:12}}),M.default.createElement(\"span\",null,\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\")),name:[S.name,\"name\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]}),M.default.createElement(q.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684Alist\\u670D\\u52A1\\u5668\",size:\"middle\"}))),M.default.createElement(q.Col,{span:24},M.default.createElement(q.Form.Item,I(C({},S),{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:[S.name,\"server\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u5730\\u5740\"},{pattern:/^https?:\\/\\/.+/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684URL\\uFF08\\u5305\\u542Bhttp://\\u6216https://\\uFF09\"}],tooltip:\"Alist\\u9ED8\\u8BA4\\u7AEF\\u53E3\\u4E3A5244\\uFF0C\\u5982\\uFF1Ahttp://192.168.1.100:5244\"}),M.default.createElement(q.Input,{placeholder:\"http://example.com:5244\",prefix:M.default.createElement(vn,{style:{color:s.colorTextQuaternary}}),size:\"middle\"}))),M.default.createElement(q.Col,{span:24},M.default.createElement(\"div\",{style:{marginBottom:16}},M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,marginBottom:12}},M.default.createElement(Hn,{style:{color:\"#722ed1\"}}),M.default.createElement(cC,{strong:!0,style:{fontSize:14}},\"\\u9009\\u62E9\\u8BA4\\u8BC1\\u65B9\\u5F0F\")),M.default.createElement(q.Segmented,{options:[{label:M.default.createElement(\"div\",{style:{padding:\"4px 8px\"}},M.default.createElement(Yn,{style:{marginRight:6}}),\"\\u7528\\u6237\\u540D/\\u5BC6\\u7801\"),value:\"password\"},{label:M.default.createElement(\"div\",{style:{padding:\"4px 8px\"}},M.default.createElement(qn,{style:{marginRight:6}}),\"Token\\u8BA4\\u8BC1\"),value:\"token\"}],value:F,onChange:P=>b(w,P),block:!0}))),F===\"password\"?M.default.createElement(M.default.Fragment,null,M.default.createElement(q.Col,{span:12},M.default.createElement(q.Form.Item,I(C({},S),{label:\"\\u7528\\u6237\\u540D\",name:[S.name,\"username\"]}),M.default.createElement(q.Input,{placeholder:\"Alist\\u7BA1\\u7406\\u5458\\u8D26\\u53F7\",prefix:M.default.createElement(Yn,{style:{color:s.colorTextQuaternary}}),size:\"middle\"}))),M.default.createElement(q.Col,{span:12},M.default.createElement(q.Form.Item,I(C({},S),{label:\"\\u5BC6\\u7801\",name:[S.name,\"password\"]}),M.default.createElement(q.Input.Password,{placeholder:\"\\u7BA1\\u7406\\u5458\\u5BC6\\u7801\",prefix:M.default.createElement(Cr,{style:{color:s.colorTextQuaternary}}),size:\"middle\"})))):M.default.createElement(q.Col,{span:24},M.default.createElement(q.Form.Item,I(C({},S),{label:M.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},M.default.createElement(qn,null),M.default.createElement(\"span\",null,\"Token\\u4EE4\\u724C\")),name:[S.name,\"token\"],tooltip:M.default.createElement(\"div\",null,M.default.createElement(\"p\",null,\"\\u5728Alist\\u540E\\u53F0\\u751F\\u6210\\uFF1A\\u8BBE\\u7F6E \\u2192 \\u8D26\\u53F7\\u8BBE\\u7F6E \\u2192 \\u4EE4\\u724C\"),M.default.createElement(\"p\",null,\"\\u6216\\u901A\\u8FC7API\\u83B7\\u53D6\\uFF1A/api/auth/login\"))}),M.default.createElement(q.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165Alist Token\",rows:3,style:{fontFamily:\"monospace\",fontSize:13}}))))))}),M.default.createElement(q.Button,{type:\"dashed\",onClick:v,block:!0,icon:M.default.createElement(ot,null),size:\"large\",style:{height:56,borderRadius:s.borderRadiusLG,borderStyle:\"dashed\",borderWidth:2,fontSize:15,borderColor:\"#722ed1\",color:\"#722ed1\"}},\"\\u6DFB\\u52A0\\u65B0\\u7684 Alist \\u670D\\u52A1\\u5668\"))}),M.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:s.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(s.colorBorderSecondary),marginTop:24,zIndex:10}},M.default.createElement(q.Space,{size:\"middle\"},M.default.createElement(q.Button,{type:\"primary\",onClick:d,loading:r,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(114,46,209,0.2)\",background:\"#722ed1\",borderColor:\"#722ed1\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),M.default.createElement(q.Button,{onClick:async()=>{o(!0);try{let h=await(await fetch(l,{method:\"DELETE\"})).json();if(h.code===0)q.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await c();else throw new Error(h.message)}catch(m){q.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+m.message)}finally{o(!1)}},loading:r,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var Ip=fC;var H=_(J(),1),Z=_(_e(),1);var{Title:EE,Text:TE,Paragraph:kE}=Z.Typography,{useToken:pC}=Z.theme,Ps=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function mC(){let[e]=Z.Form.useForm(),[t,n]=(0,H.useState)({}),[r,o]=(0,H.useState)(!1),{token:a}=pC(),i=\"/website/webdav/config\",s=async()=>{o(!0);try{let u=await(await fetch(i)).json();if(u.code===0&&u.data){let m=(Array.isArray(u.data)?u.data:[]).map(x=>I(C({},x),{id:x.id||Ps()}));e.setFieldsValue({servers:m});let h={};m.forEach(x=>{h[x.id]=!1}),n(h)}}catch(d){console.error(\"\\u52A0\\u8F7DWebDAV\\u914D\\u7F6E\\u5931\\u8D25:\",d),Z.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{o(!1)}},l=d=>{n(u=>I(C({},u),{[d]:!u[d]}))},c=async()=>{o(!0);try{let m=((await e.validateFields()).servers||[]).map(v=>I(C({},v),{id:v.id||Ps(),timeout:3e4})),x=await(await fetch(i,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(m)})).json();if(x.code===0)Z.message.success({content:\"\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\",style:{marginTop:\"50vh\"}});else throw new Error(x.message)}catch(d){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",d),Z.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(d.message))}finally{o(!1)}};(0,H.useEffect)(()=>{s()},[]);let f={background:\"linear-gradient(135deg, \".concat(a.colorPrimaryBg,\" 0%, \").concat(a.colorBgContainer,\" 100%)\"),borderRadius:a.borderRadiusLG,padding:\"16px 20px\",margin:\"-1px -1px 0 -1px\",borderBottom:\"1px solid \".concat(a.colorBorderSecondary)};return H.default.createElement(Z.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#1890ff\"},components:{Card:{paddingLG:20},Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},H.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},H.default.createElement(Z.Form,{form:e,layout:\"vertical\"},H.default.createElement(Z.Form.List,{name:\"servers\"},(d,{add:u,remove:m})=>{let h=()=>{let v=Ps(),y={id:v,name:\"WebDAV\\u670D\\u52A1\\u5668 \".concat(d.length+1),server:\"\",path:\"/\",username:\"\",password:\"\",enabled:!0};u(y),n(b=>I(C({},b),{[v]:!0}))},x=v=>{if(d.length<=1){Z.message.warning(\"\\u81F3\\u5C11\\u4FDD\\u7559\\u4E00\\u4E2A\\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}let y=d.findIndex(b=>{let S=e.getFieldValue([\"servers\",b.name]);return S&&S.id===v});y!==-1&&(m(y),n(b=>{let S=C({},b);return delete S[v],S}))};return H.default.createElement(\"div\",{style:{marginBottom:24}},d.map(v=>{let y=e.getFieldValue([\"servers\",v.name,\"id\"]),b=e.getFieldValue([\"servers\",v.name,\"name\"])||\"\\u670D\\u52A1\\u5668 \".concat(v.name+1),S=e.getFieldValue([\"servers\",v.name,\"enabled\"])!==!1,w=t[y]||!1;return H.default.createElement(Z.Card,{key:v.key,style:{marginBottom:16,borderRadius:a.borderRadiusLG,border:\"1px solid \".concat(S?a.colorBorder:a.colorBorderSecondary),boxShadow:\"0 2px 8px rgba(0,0,0,0.06)\",overflow:\"hidden\",transition:\"all 0.3s\"},bodyStyle:{padding:0}},H.default.createElement(\"div\",{style:f},H.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"center\"}},H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:12}},H.default.createElement(Z.Badge,{status:S?\"success\":\"default\",text:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8}},H.default.createElement(\"span\",{style:{fontWeight:500,fontSize:15,color:a.colorTextHeading}},b),!S&&H.default.createElement(Z.Tag,{color:\"default\",style:{fontSize:11}},\"\\u5DF2\\u7981\\u7528\"))})),H.default.createElement(Z.Space,null,H.default.createElement(Z.Form.Item,I(C({},v),{name:[v.name,\"enabled\"],valuePropName:\"checked\",noStyle:!0}),H.default.createElement(Z.Switch,{checkedChildren:\"\\u542F\\u7528\",unCheckedChildren:\"\\u7981\\u7528\",size:\"small\"})),H.default.createElement(Z.Button,{type:\"text\",size:\"small\",icon:w?H.default.createElement(_t,null):H.default.createElement(Pt,null),onClick:()=>l(y),style:{color:a.colorTextSecondary}}),d.length>1&&H.default.createElement(Z.Tooltip,{title:\"\\u5220\\u9664\\u670D\\u52A1\\u5668\"},H.default.createElement(Z.Button,{type:\"text\",size:\"small\",danger:!0,icon:H.default.createElement(qe,null),onClick:()=>x(y)}))))),w&&H.default.createElement(\"div\",{style:{padding:\"24px 20px\",background:a.colorBgLayout}},H.default.createElement(Z.Row,{gutter:[24,16]},H.default.createElement(Z.Col,{span:24},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},H.default.createElement(wr,{style:{fontSize:12}}),H.default.createElement(\"span\",null,\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\")),name:[v.name,\"name\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]}),H.default.createElement(Z.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684WebDAV\\u670D\\u52A1\\u5668\",size:\"middle\"}))),H.default.createElement(Z.Col,{span:24},H.default.createElement(Z.Form.Item,I(C({},v),{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:[v.name,\"server\"],rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u5730\\u5740\"},{pattern:/^https?:\\/\\/.+/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684URL\\uFF08\\u5305\\u542Bhttp://\\u6216https://\\uFF09\"}],tooltip:\"\\u5305\\u542B\\u534F\\u8BAE\\u548C\\u7AEF\\u53E3\\uFF0C\\u5982\\uFF1Ahttps://example.com:5244\"}),H.default.createElement(Z.Input,{placeholder:\"http://example.com:5244\",prefix:H.default.createElement(vn,{style:{color:a.colorTextQuaternary}}),size:\"middle\"}))),H.default.createElement(Z.Col,{span:24},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(Z.Tooltip,{title:\"WebDAV\\u670D\\u52A1\\u5668\\u4E0A\\u7684\\u8DEF\\u5F84\"},H.default.createElement(\"span\",null,\"\\u8BBF\\u95EE\\u8DEF\\u5F84\")),name:[v.name,\"path\"],initialValue:\"/\"}),H.default.createElement(Z.Input,{placeholder:\"/\",prefix:H.default.createElement(bi,{style:{color:a.colorTextQuaternary}}),size:\"middle\"}))),H.default.createElement(Z.Col,{span:12},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},H.default.createElement(Yn,{style:{fontSize:12}}),H.default.createElement(\"span\",null,\"\\u7528\\u6237\\u540D\")),name:[v.name,\"username\"]}),H.default.createElement(Z.Input,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9700\\u8981\\u8BA4\\u8BC1\",size:\"middle\"}))),H.default.createElement(Z.Col,{span:12},H.default.createElement(Z.Form.Item,I(C({},v),{label:H.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:6}},H.default.createElement(Cr,{style:{fontSize:12}}),H.default.createElement(\"span\",null,\"\\u5BC6\\u7801\")),name:[v.name,\"password\"]}),H.default.createElement(Z.Input.Password,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9700\\u8981\\u5BC6\\u7801\",size:\"middle\"}))))))}),H.default.createElement(Z.Button,{type:\"dashed\",onClick:h,block:!0,icon:H.default.createElement(ot,null),size:\"large\",style:{height:56,borderRadius:a.borderRadiusLG,borderStyle:\"dashed\",borderWidth:2,fontSize:15,color:a.colorTextSecondary}},\"\\u6DFB\\u52A0\\u65B0\\u7684 WebDAV \\u670D\\u52A1\\u5668\"))}),H.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:a.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(a.colorBorderSecondary),marginTop:24,zIndex:10}},H.default.createElement(Z.Space,{size:\"middle\"},H.default.createElement(Z.Button,{type:\"primary\",onClick:c,loading:r,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(0,0,0,0.1)\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),H.default.createElement(Z.Button,{onClick:async()=>{o(!0);try{let u=await(await fetch(i,{method:\"DELETE\"})).json();if(u.code===0)Z.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await s();else throw new Error(u.message)}catch(d){Z.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+d.message)}finally{o(!1)}},loading:r,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var Ep=mC;var re=_(J(),1),Ne=_(_e(),1);var Y=_(J(),1),ie=_(_e(),1);var Tp=_(Je(),1);var{Text:_s}=ie.Typography,Bn=Tp.default.create({baseURL:\"/website/115\"});Bn.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw ie.message.error(r),new Error(r)}return e.data.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return ie.message.error(t),Promise.reject(e)});function gC({value:e,onChange:t}){let[n,r]=(0,Y.useState)(!1),[o,a]=(0,Y.useState)([]),[i,s]=(0,Y.useState)(!1),[l,c]=(0,Y.useState)(\"\"),f=(0,Y.useCallback)(x=>({title:x.name,key:String(x.cid),isLeaf:!x.has_children}),[]),d=(0,Y.useCallback)(async()=>{s(!0);try{let x=await Bn.get(\"/folders\",{params:{cid:\"0\"}});a([{title:\"\\u6839\\u76EE\\u5F55 (/)\",key:\"0\",children:(x||[]).map(f),isLeaf:(x||[]).length===0}])}finally{s(!1)}},[f]);(0,Y.useEffect)(()=>{n&&o.length===0&&d()},[n,o.length,d]);let u=(0,Y.useCallback)(async x=>{if(!(x!=null&&x.key)||x.key===\"0\")return;let y=(await Bn.get(\"/folders\",{params:{cid:x.key}})||[]).map(f);a(b=>kp(b,x.key,y))},[f]),m=(x,v)=>{let y=x==null?void 0:x[0];y&&(c(v.node.title===\"\\u6839\\u76EE\\u5F55 (/)\"?\"\\u6839\\u76EE\\u5F55\":String(v.node.title||\"\")),t==null||t(String(y)))},h=e&&e!==\"0\"?\"\".concat(l||\"\\u5DF2\\u9009\\u76EE\\u5F55\",\" (cid=\").concat(e,\")\"):\"\\u6839\\u76EE\\u5F55 (cid=0)\";return Y.default.createElement(Y.default.Fragment,null,Y.default.createElement(ie.Space.Compact,{style:{width:\"100%\"}},Y.default.createElement(ie.Button,{icon:Y.default.createElement(xn,null),onClick:()=>r(!0),style:{flex:1,textAlign:\"left\"}},h)),Y.default.createElement(ie.Modal,{title:\"\\u9009\\u62E9 \\u78C1\\u529B \\u8F6C\\u5B58\\u76EE\\u5F55\",open:n,onCancel:()=>r(!1),onOk:()=>r(!1),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",destroyOnClose:!0,width:520},Y.default.createElement(ie.Spin,{spinning:i},Y.default.createElement(ie.Tree,{treeData:o,loadData:u,onSelect:m,selectedKeys:e?[String(e)]:[],height:420,blockNode:!0})),Y.default.createElement(\"div\",{style:{marginTop:8}},Y.default.createElement(_s,{type:\"secondary\"},\"\\u70B9\\u51FB\\u6587\\u4EF6\\u5939\\u5C55\\u5F00\\uFF0C\\u5355\\u51FB\\u9009\\u4E2D\\u5373\\u4F5C\\u4E3A\\u8F6C\\u5B58\\u4F4D\\u7F6E\\uFF1B\\u4E0D\\u9009\\u9ED8\\u8BA4\\u6839\\u76EE\\u5F55\\u3002\"))))}function kp(e,t,n){return e.map(r=>String(r.key)===String(t)?I(C({},r),{children:n}):r.children?I(C({},r),{children:kp(r.children,t,n)}):r)}function Bs(){let[e,t]=(0,Y.useState)(\"0\"),[n,r]=(0,Y.useState)(20),[o,a]=(0,Y.useState)(1500),[i,s]=(0,Y.useState)(!1),[l,c]=(0,Y.useState)(!1),[f,d]=(0,Y.useState)(null),[u,m]=(0,Y.useState)(null);(0,Y.useEffect)(()=>{s(!0),Bn.get(\"/offline/settings\").then(y=>{var b,S,w;y&&(t(String((b=y.savePath)!=null?b:\"0\")),r(Number((S=y.pollAttempts)!=null?S:20)),a(Number((w=y.pollIntervalMs)!=null?w:1500)))}).catch(()=>{}).finally(()=>s(!1))},[]);let h=async()=>{c(!0);try{await Bn.post(\"/offline/settings\",{savePath:e,pollAttempts:n,pollIntervalMs:o}),ie.message.success(\"\\u78C1\\u529B\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(y){}finally{c(!1)}},x=async y=>{d(y?\"delete\":\"keep\");try{await Bn.post(\"/offline/clear\",{deleteSource:y}),ie.message.success(y?\"\\u5DF2\\u6E05\\u7A7A\\u79BB\\u7EBF\\u5217\\u8868\\u5E76\\u5220\\u9664\\u6E90\\u6587\\u4EF6\":\"\\u5DF2\\u6E05\\u7A7A\\u79BB\\u7EBF\\u5217\\u8868\\uFF08\\u7F51\\u76D8\\u6587\\u4EF6\\u4FDD\\u7559\\uFF09\")}catch(b){}finally{d(null)}},v=async(y,b,S)=>{var w;m(S);try{let D=await Bn.post(\"/files/clean\",{recent:y,recycle:b}),O=[];D!=null&&D.recent&&O.push(D.recent.found?\"\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u5DF2\\u6E05\\u7406 \".concat(D.recent.moved,\" \\u4E2A\\u6587\\u4EF6\").concat(b?\"\\uFF08\\u5DF2\\u6C38\\u4E45\\u5220\\u9664\\uFF09\":\"\\uFF08\\u5DF2\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\uFF0C\\u53EF\\u6062\\u590D\\uFF09\"):\"\\u672A\\u627E\\u5230\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u76EE\\u5F55\"),(w=D==null?void 0:D.recycle)!=null&&w.cleared&&O.push(\"\\u56DE\\u6536\\u7AD9\\u5DF2\\u6E05\\u7A7A\"),ie.message.success(O.join(\"\\uFF1B\")||\"\\u64CD\\u4F5C\\u5B8C\\u6210\")}catch(D){}finally{m(null)}};return Y.default.createElement(ie.Spin,{spinning:i},Y.default.createElement(ie.Form,{layout:\"vertical\"},Y.default.createElement(ie.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:16},message:\"\\u6D88\\u8017 115 \\u79BB\\u7EBF\\u6B21\\u6570\\u64AD\\u653E\\u78C1\\u529B\\u94FE\\u63A5\",description:\"\\u6BCF\\u6761\\u65B0\\u78C1\\u529B\\u90FD\\u4F1A\\u6D88\\u8017\\u4E00\\u6B21 115 \\u79BB\\u7EBF\\u914D\\u989D\\u3002\"}),Y.default.createElement(ie.Form.Item,{label:\"\\u78C1\\u529B \\u8F6C\\u5B58\\u76EE\\u5F55\",help:\"\\u78C1\\u529B\\u8F6C\\u5B58\\u7684\\u76EE\\u6807\\u6587\\u4EF6\\u5939\\u3002115 \\u79BB\\u7EBF\\u628A\\u6BCF\\u4E2A\\u79CD\\u5B50\\u8F6C\\u6210\\u6B64\\u76EE\\u5F55\\u4E0B\\u7684\\u4E00\\u4E2A\\u65B0\\u5B50\\u6587\\u4EF6\\u5939\\u3002\"},Y.default.createElement(gC,{value:e,onChange:t})),Y.default.createElement(ie.Form.Item,{label:\"\\u8F6C\\u5B58\\u8F6E\\u8BE2\\u6B21\\u6570\",help:\"\\u78C1\\u529B \\u8F6C\\u5B58\\u540E\\u672A\\u7ACB\\u5373\\u8FD4\\u56DE\\u5B8C\\u6574\\u6587\\u4EF6\\u65F6\\uFF0C\\u626B\\u63CF\\u8F6C\\u5B58\\u76EE\\u5F55\\u7684\\u6700\\u5927\\u6B21\\u6570\\u3002\"},Y.default.createElement(ie.InputNumber,{min:0,max:50,value:n,onChange:y=>r(Number(y)||0),style:{width:\"100%\"}})),Y.default.createElement(ie.Form.Item,{label:\"\\u8F6E\\u8BE2\\u95F4\\u9694 (ms)\"},Y.default.createElement(ie.InputNumber,{min:200,max:1e4,step:100,value:o,onChange:y=>a(Number(y)||1500),style:{width:\"100%\"}})),Y.default.createElement(ie.Button,{type:\"primary\",onClick:h,loading:l,block:!0},\"\\u4FDD\\u5B58\\u78C1\\u529B\\u914D\\u7F6E\"),Y.default.createElement(ie.Divider,{style:{margin:\"24px 0 12px\"}},\"\\u6E05\\u7A7A 115 \\u79BB\\u7EBF\\u5217\\u8868\"),Y.default.createElement(_s,{type:\"secondary\",style:{display:\"block\",marginBottom:12,fontSize:12}},\"\\u6CE8\\u610F\\uFF1A\",Y.default.createElement(\"b\",null,\"\\u8FDB\\u884C\\u4E2D\"),\" \\u7684\\u4EFB\\u52A1 115 \\u534F\\u8BAE\\u4E0D\\u5141\\u8BB8\\u6E05\\uFF0C\\u9700\\u5230 115 \\u7F51\\u9875\\u7AEF\\u624B\\u52A8\\u5220\\uFF1B\\u6E05\\u4EFB\\u52A1\\u8BB0\\u5F55\\u4E0D\\u4F1A\\u91CA\\u653E\\u79BB\\u7EBF\\u914D\\u989D\\u3002\"),Y.default.createElement(ie.Space,{direction:\"vertical\",style:{width:\"100%\"},size:8},Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A\\u79BB\\u7EBF\\u5217\\u8868\",description:\"\\u6E05\\u6389\\u5DF2\\u5B8C\\u6210 / \\u5931\\u8D25\\u7684\\u4EFB\\u52A1\\u8BB0\\u5F55\\uFF0C\\u5DF2\\u8F6C\\u5B58\\u5230\\u7F51\\u76D8\\u7684\\u89C6\\u9891\\u6587\\u4EF6\\u4FDD\\u7559\\u3002\",okText:\"\\u786E\\u8BA4\\u6E05\\u7A7A\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>x(!1)},Y.default.createElement(ie.Button,{icon:Y.default.createElement(jn,null),loading:f===\"keep\",disabled:f===\"delete\",block:!0},\"\\u6E05\\u7A7A\\uFF08\\u4FDD\\u7559\\u7F51\\u76D8\\u6587\\u4EF6\\uFF09\")),Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A + \\u5220\\u9664\\u6E90\\u6587\\u4EF6\",description:\"\\u6E05\\u6389\\u5DF2\\u5B8C\\u6210 / \\u5931\\u8D25\\u7684\\u4EFB\\u52A1\\u8BB0\\u5F55\\uFF0C\\u5E76\\u5220\\u9664\\u5DF2\\u8F6C\\u5B58\\u5230\\u7F51\\u76D8\\u7684\\u6E90\\u6587\\u4EF6\\u3002\\u4E0D\\u53EF\\u9006\\uFF0C\\u8BF7\\u786E\\u8BA4\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u5168\\u90E8\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>x(!0)},Y.default.createElement(ie.Button,{icon:Y.default.createElement(qe,null),danger:!0,loading:f===\"delete\",disabled:f===\"keep\",block:!0},\"\\u6E05\\u7A7A\\uFF08\\u8FDE\\u540C\\u5220\\u9664\\u6E90\\u6587\\u4EF6\\uFF09\"))),Y.default.createElement(ie.Divider,{style:{margin:\"24px 0 12px\"}},\"\\u6E05\\u7406 115 \\u6587\\u4EF6\"),Y.default.createElement(_s,{type:\"secondary\",style:{display:\"block\",marginBottom:12,fontSize:12}},\"\\u6CE8\\u610F\\uFF1A\\u4F1A\\u9012\\u5F52\\u5220\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u91CC\\u6240\\u6709\\u6587\\u4EF6\\uFF0C\\u5220\\u7A7A\\u540E\\u7684\\u7A7A\\u6587\\u4EF6\\u5939\\u5916\\u58F3\\u53EF\\u80FD\\u6B8B\\u7559\\u3002\"),Y.default.createElement(ie.Space,{direction:\"vertical\",style:{width:\"100%\"},size:8},Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536\",description:\"\\u628A\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u91CC\\u7684\\u6240\\u6709\\u6587\\u4EF6\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\uFF08\\u53EF\\u5728\\u56DE\\u6536\\u7AD9\\u6062\\u590D\\uFF09\\u3002\",okText:\"\\u786E\\u8BA4\\u6E05\\u7A7A\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>v(!0,!1,\"recent\")},Y.default.createElement(ie.Button,{icon:Y.default.createElement(jn,null),loading:u===\"recent\",disabled:!!u&&u!==\"recent\",block:!0},\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536\\uFF08\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\uFF09\")),Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A \\u56DE\\u6536\\u7AD9\",description:\"\\u6C38\\u4E45\\u6E05\\u7A7A\\u6574\\u4E2A\\u56DE\\u6536\\u7AD9\\uFF0C\\u4E0D\\u53EF\\u6062\\u590D\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u6C38\\u4E45\\u6E05\\u7A7A\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>v(!1,!0,\"recycle\")},Y.default.createElement(ie.Button,{icon:Y.default.createElement(qe,null),danger:!0,loading:u===\"recycle\",disabled:!!u&&u!==\"recycle\",block:!0},\"\\u6E05\\u7A7A \\u56DE\\u6536\\u7AD9\\uFF08\\u6C38\\u4E45\\u5220\\u9664\\uFF09\")),Y.default.createElement(ie.Popconfirm,{title:\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536 + \\u56DE\\u6536\\u7AD9\",description:\"\\u628A\\u300C\\u6700\\u8FD1\\u63A5\\u6536\\u300D\\u79FB\\u5165\\u56DE\\u6536\\u7AD9\\u540E\\u7ACB\\u5373\\u6C38\\u4E45\\u6E05\\u7A7A\\uFF0C\\u5F7B\\u5E95\\u5220\\u9664\\uFF0C\\u4E0D\\u53EF\\u9006\\uFF0C\\u8BF7\\u786E\\u8BA4\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u5168\\u90E8\\u6C38\\u4E45\\u5220\\u9664\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>v(!0,!0,\"both\")},Y.default.createElement(ie.Button,{icon:Y.default.createElement(qe,null),danger:!0,loading:u===\"both\",disabled:!!u&&u!==\"both\",block:!0},\"\\u6E05\\u7A7A \\u6700\\u8FD1\\u63A5\\u6536 + \\u56DE\\u6536\\u7AD9\\uFF08\\u6C38\\u4E45\\u5220\\u9664\\uFF09\")))))}var ae=_(J(),1),be=_(_e(),1);var Np=_(Je(),1);var{Text:Fp}=be.Typography,Ln=Np.default.create({baseURL:\"/website/guangya\"});Ln.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw be.message.error(r),new Error(r)}return e.data.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return be.message.error(t),Promise.reject(e)});function Ap(e,t,n){return e.map(r=>String(r.key)===String(t)?I(C({},r),{children:n,isLeaf:n.length===0}):r.children?I(C({},r),{children:Ap(r.children,t,n)}):r)}function hC({value:e,valueName:t,onChange:n}){let[r,o]=(0,ae.useState)(!1),[a,i]=(0,ae.useState)([]),[s,l]=(0,ae.useState)(!1),c=(0,ae.useCallback)(h=>({title:h.name,key:String(h.fileId),isLeaf:!1}),[]),f=(0,ae.useCallback)(async()=>{l(!0);try{let h=await Ln.get(\"/cloud/folders\",{params:{parentId:\"\"}});i([{title:\"\\u6839\\u76EE\\u5F55 (/)\",key:\"root\",children:(h||[]).map(c),isLeaf:!1}])}finally{l(!1)}},[c]);(0,ae.useEffect)(()=>{r&&a.length===0&&f()},[r,f,a.length]);let d=(0,ae.useCallback)(async h=>{if(!(h!=null&&h.key)||String(h.key)===\"root\")return;let x=await Ln.get(\"/cloud/folders\",{params:{parentId:h.key}});i(v=>Ap(v,h.key,(x||[]).map(c)))},[c]),u=(h,x)=>{let v=String((h==null?void 0:h[0])||\"\");if(!v)return;let y=v===\"root\"?\"\\u6839\\u76EE\\u5F55\":String(x.node.title||v);n==null||n(v,y)},m=t||(e===\"root\"?\"\\u6839\\u76EE\\u5F55\":String(e||\"\\u6839\\u76EE\\u5F55\"));return ae.default.createElement(ae.default.Fragment,null,ae.default.createElement(be.Button,{icon:ae.default.createElement(xn,null),onClick:()=>o(!0),block:!0,style:{textAlign:\"left\"}},e&&e!==\"root\"?\"\".concat(m,\" (fileId=\").concat(e,\")\"):m),ae.default.createElement(be.Modal,{title:\"\\u9009\\u62E9\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u76EE\\u5F55\",open:r,onCancel:()=>o(!1),onOk:()=>o(!1),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",destroyOnClose:!0,width:520},ae.default.createElement(be.Spin,{spinning:s},ae.default.createElement(be.Tree,{treeData:a,loadData:d,onSelect:u,selectedKeys:e?[String(e)]:[\"root\"],height:420,blockNode:!0})),ae.default.createElement(Fp,{type:\"secondary\",style:{display:\"block\",marginTop:8}},\"\\u9ED8\\u8BA4\\u4F7F\\u7528\\u5149\\u9E2D\\u6839\\u76EE\\u5F55\\uFF0C\\u4E5F\\u53EF\\u9009\\u62E9\\u4EFB\\u610F\\u5B50\\u76EE\\u5F55\\u3002\")))}function Ls(){let[e,t]=(0,ae.useState)(\"root\"),[n,r]=(0,ae.useState)(\"\\u6839\\u76EE\\u5F55\"),[o,a]=(0,ae.useState)(20),[i,s]=(0,ae.useState)(1500),[l,c]=(0,ae.useState)(!1),[f,d]=(0,ae.useState)(!1),[u,m]=(0,ae.useState)(null),[h,x]=(0,ae.useState)(null);(0,ae.useEffect)(()=>{c(!0),Promise.all([Ln.get(\"/cloud/settings\"),Ln.get(\"/cloud/quota\").catch(()=>null)]).then(([b,S])=>{let w=!(b!=null&&b.savePath)||b.savePath===\"auto\"?\"root\":String(b.savePath);t(w),r(w===\"root\"?\"\\u6839\\u76EE\\u5F55\":String((b==null?void 0:b.savePathName)||w)),a(Number((b==null?void 0:b.pollAttempts)||20)),s(Number((b==null?void 0:b.pollIntervalMs)||1500)),x(S)}).catch(()=>{}).finally(()=>c(!1))},[]);let v=async()=>{d(!0);try{await Ln.post(\"/cloud/settings\",{savePath:e,savePathName:n,pollAttempts:o,pollIntervalMs:i}),be.message.success(\"\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(b){}finally{d(!1)}},y=async b=>{m(b?\"files\":\"tasks\");try{let S=await Ln.post(\"/cloud/clear\",{deleteFiles:b}),w=\"\\u5DF2\\u6E05\\u7406 \".concat(Number((S==null?void 0:S.taskCount)||0),\" \\u4E2A\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\"),D=b?\"\\uFF0C\\u5DF2\\u5220\\u9664 \".concat(Number((S==null?void 0:S.fileCount)||0),\" \\u4E2A\\u8F6C\\u5B58\\u6587\\u4EF6\\u6216\\u76EE\\u5F55\"):\"\";be.message.success(\"\".concat(w).concat(D))}catch(S){}finally{m(null)}};return ae.default.createElement(be.Spin,{spinning:l},ae.default.createElement(be.Form,{layout:\"vertical\"},(h==null?void 0:h.limited)&&ae.default.createElement(be.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:16},message:\"\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u989D\\u5EA6\\u4ECA\\u65E5\\u5DF2\\u7528\\u5B8C\"}),ae.default.createElement(be.Form.Item,{label:\"\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u76EE\\u5F55\",help:\"\\u6BCF\\u4E2A\\u78C1\\u529B\\u4EFB\\u52A1\\u4F1A\\u5728\\u8BE5\\u76EE\\u5F55\\u4E2D\\u751F\\u6210\\u5BF9\\u5E94\\u7684\\u8F6C\\u5B58\\u6587\\u4EF6\\u6216\\u5B50\\u76EE\\u5F55\\u3002\"},ae.default.createElement(hC,{value:e,valueName:n,onChange:(b,S)=>{t(b),r(S)}})),ae.default.createElement(be.Form.Item,{label:\"\\u8F6C\\u5B58\\u8F6E\\u8BE2\\u6B21\\u6570\",help:\"\\u4EFB\\u52A1\\u63D0\\u4EA4\\u540E\\u626B\\u63CF\\u8F6C\\u5B58\\u76EE\\u5F55\\u7684\\u6700\\u5927\\u6B21\\u6570\\u3002\"},ae.default.createElement(be.InputNumber,{min:1,max:50,value:o,onChange:b=>a(Number(b)||20),style:{width:\"100%\"}})),ae.default.createElement(be.Form.Item,{label:\"\\u8F6E\\u8BE2\\u95F4\\u9694 (ms)\"},ae.default.createElement(be.InputNumber,{min:200,max:1e4,step:100,value:i,onChange:b=>s(Number(b)||1500),style:{width:\"100%\"}})),ae.default.createElement(be.Button,{type:\"primary\",onClick:v,loading:f,block:!0},\"\\u4FDD\\u5B58\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u914D\\u7F6E\"),ae.default.createElement(be.Divider,{style:{margin:\"24px 0 12px\"}},\"\\u6E05\\u7406\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\"),ae.default.createElement(Fp,{type:\"secondary\",style:{display:\"block\",marginBottom:12,fontSize:12}},\"\\u6E05\\u7406\\u4EFB\\u52A1\\u53EA\\u5220\\u9664\\u4E91\\u8F6C\\u5B58\\u8BB0\\u5F55\\uFF1B\\u540C\\u65F6\\u6E05\\u7406\\u6587\\u4EF6\\u4F1A\\u5220\\u9664\\u4EFB\\u52A1\\u5BF9\\u5E94\\u7684\\u8F6C\\u5B58\\u6587\\u4EF6\\u6216\\u76EE\\u5F55\\uFF0C\\u6587\\u4EF6\\u6309\\u5149\\u9E2D\\u89C4\\u5219\\u8FDB\\u5165\\u56DE\\u6536\\u7AD9\\u3002\"),ae.default.createElement(be.Space,{direction:\"vertical\",style:{width:\"100%\"},size:8},ae.default.createElement(be.Popconfirm,{title:\"\\u6E05\\u7406\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\",description:\"\\u6E05\\u7406\\u8FDB\\u884C\\u4E2D\\u3001\\u5931\\u8D25\\u3001\\u53D6\\u6D88\\u548C\\u5DF2\\u5B8C\\u6210\\u7684\\u5149\\u9E2D\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\\u8BB0\\u5F55\\uFF0C\\u5DF2\\u8F6C\\u5B58\\u6587\\u4EF6\\u4FDD\\u7559\\u3002\",okText:\"\\u786E\\u8BA4\\u6E05\\u7406\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>y(!1)},ae.default.createElement(be.Button,{icon:ae.default.createElement(jn,null),loading:u===\"tasks\",disabled:u===\"files\",block:!0},\"\\u6E05\\u7406\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\")),ae.default.createElement(be.Popconfirm,{title:\"\\u6E05\\u7406\\u4EFB\\u52A1\\u548C\\u4E91\\u8F6C\\u5B58\\u6587\\u4EF6\",description:\"\\u6E05\\u7406\\u5168\\u90E8\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\\uFF0C\\u5E76\\u5220\\u9664\\u8FD9\\u4E9B\\u4EFB\\u52A1\\u5BF9\\u5E94\\u7684\\u5149\\u9E2D\\u6587\\u4EF6\\u6216\\u76EE\\u5F55\\u3002\\u8BF7\\u786E\\u8BA4\\u540E\\u7EE7\\u7EED\\u3002\",okText:\"\\u6211\\u6E05\\u695A\\uFF0C\\u7EE7\\u7EED\\u6E05\\u7406\",cancelText:\"\\u53D6\\u6D88\",okButtonProps:{danger:!0},onConfirm:()=>y(!0)},ae.default.createElement(be.Button,{icon:ae.default.createElement(qe,null),danger:!0,loading:u===\"files\",disabled:u===\"tasks\",block:!0},\"\\u6E05\\u7406\\u4E91\\u8F6C\\u5B58\\u4EFB\\u52A1\\u548C\\u4E91\\u8F6C\\u5B58\\u6587\\u4EF6\")))))}var pt=_(J(),1),mt=_(_e(),1);var Wa={chunkSize:1,poolSize:16},bC=200;function Pp(e={}){let t=e!=null&&e.stable&&typeof e.stable==\"object\"?e.stable:e;return{chunkSize:Number(t==null?void 0:t.chunkSize)>0?Number(t.chunkSize)/(1024*1024):Wa.chunkSize,poolSize:Number(t==null?void 0:t.poolSize)>0?Number(t.poolSize):Wa.poolSize}}var xC=({http:e})=>{let[t,n]=(0,pt.useState)(Wa),[r,o]=(0,pt.useState)(!0),[a,i]=(0,pt.useState)(!1);(0,pt.useEffect)(()=>{let c=!0;return o(!0),e.get(\"/guangya/config\").then(f=>{c&&n(Pp(f))}).catch(()=>{c&&(n(Wa),mt.message.warning(\"\\u8BFB\\u53D6\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u5DF2\\u663E\\u793A\\u9ED8\\u8BA4\\u503C\"))}).finally(()=>{c&&o(!1)}),()=>{c=!1}},[e]);let s=(c,f)=>{f!=null&&n(d=>I(C({},d),{[c]:f}))},l=async()=>{i(!0);try{let c={chunkSize:Math.round(t.chunkSize*1024*1024),poolSize:Math.round(t.poolSize)},f=await e.put(\"/guangya/config\",c);n(Pp(f||c)),mt.message.success(\"\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\")}catch(c){mt.message.error(\"\\u4FDD\\u5B58\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\\u5931\\u8D25\")}finally{i(!1)}};return pt.default.createElement(\"section\",{className:\"guangya-proxy-settings\"},pt.default.createElement(mt.Divider,null,\"\\u4EE3\\u7406\\u8BBE\\u7F6E\"),pt.default.createElement(mt.Form,{layout:\"vertical\",className:\"guangya-proxy-form\"},pt.default.createElement(mt.Form.Item,{label:\"\\u7EBF\\u7A0B\\u6570\\uFF08\\u63A8\\u8350 16\\uFF09\"},pt.default.createElement(mt.InputNumber,{min:1,max:bC,precision:0,value:t.poolSize,onChange:c=>s(\"poolSize\",c),disabled:r||a,style:{width:\"100%\"}})),pt.default.createElement(mt.Form.Item,{label:\"\\u6301\\u7EED\\u5206\\u7247\\u5927\\u5C0F (MiB)\",extra:\"\\u8D77\\u64AD\\u548C\\u6BCF\\u6B21\\u62D6\\u52A8\\u4F1A\\u4F18\\u5148\\u62C9\\u53D6 128 KiB \\u9996\\u7247\\uFF0C\\u540E\\u7EED\\u518D\\u6309\\u6B64\\u5927\\u5C0F\\u5E76\\u53D1\\u3002\"},pt.default.createElement(mt.InputNumber,{min:.01,max:10,step:.25,value:t.chunkSize,onChange:c=>s(\"chunkSize\",c),disabled:r||a,style:{width:\"100%\"}}))),pt.default.createElement(mt.Button,{type:\"primary\",block:!0,loading:r||a,onClick:l},\"\\u4FDD\\u5B58\\u5149\\u9E2D\\u64AD\\u653E\\u4EE3\\u7406\\u914D\\u7F6E\"))},_p=xC;var ne=_(J(),1),ee=_(_e(),1);var Bp=_(Je(),1);var{Text:vC}=ee.Typography,Gt=Bp.default.create({baseURL:\"/website\"});Gt.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0)throw new Error(((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});function Lp(e,t,n){return e.map(r=>String(r.key)===String(t)?I(C({},r),{children:n,isLeaf:n.length===0}):r.children?I(C({},r),{children:Lp(r.children,t,n)}):r)}function yC({value:e,valueName:t,onChange:n,disabled:r}){let[o,a]=(0,ne.useState)(!1),[i,s]=(0,ne.useState)([]),[l,c]=(0,ne.useState)(!1),f=(0,ne.useCallback)(x=>({title:x.name,key:String(x.id),isLeaf:!1}),[]),d=(0,ne.useCallback)(async()=>{c(!0);try{let x=await Gt.get(\"/pan123/open/folders\",{params:{parentFileId:\"0\"}});s([{title:\"\\u6839\\u76EE\\u5F55 (/)\",key:\"0\",children:(x||[]).map(f),isLeaf:!1}])}finally{c(!1)}},[f]);(0,ne.useEffect)(()=>{o&&i.length===0&&d().catch(x=>ee.message.error(x.message))},[o,d,i.length]);let u=(0,ne.useCallback)(async x=>{if(!(x!=null&&x.key)||String(x.key)===\"0\")return;let v=await Gt.get(\"/pan123/open/folders\",{params:{parentFileId:x.key}});s(y=>Lp(y,x.key,(v||[]).map(f)))},[f]),m=(x,v)=>{let y=String((x==null?void 0:x[0])||\"\");if(!y)return;let b=y===\"0\"?\"\\u6839\\u76EE\\u5F55\":String(v.node.title||y);n==null||n(y,b)},h=t||(e===\"0\"?\"\\u6839\\u76EE\\u5F55\":String(e||\"\\u6839\\u76EE\\u5F55\"));return ne.default.createElement(ne.default.Fragment,null,ne.default.createElement(ee.Button,{icon:ne.default.createElement(xn,null),onClick:()=>a(!0),disabled:r,block:!0,style:{textAlign:\"left\"}},e&&e!==\"0\"?\"\".concat(h,\" (fileId=\").concat(e,\")\"):\"\\u6839\\u76EE\\u5F55 (fileId=0)\"),ne.default.createElement(ee.Modal,{title:\"\\u9009\\u62E9\\u79D2\\u4F20123\\u76EE\\u6807\\u76EE\\u5F55\",open:o,onCancel:()=>a(!1),onOk:()=>a(!1),okText:\"\\u786E\\u5B9A\",cancelText:\"\\u53D6\\u6D88\",destroyOnClose:!0,width:520},ne.default.createElement(ee.Spin,{spinning:l},ne.default.createElement(ee.Tree,{treeData:i,loadData:u,onSelect:m,selectedKeys:[String(e||\"0\")],height:420,blockNode:!0})),ne.default.createElement(vC,{type:\"secondary\",style:{display:\"block\",marginTop:8}},\"\\u9ED8\\u8BA4\\u4F7F\\u7528123\\u6839\\u76EE\\u5F55\\uFF0C\\u4E5F\\u53EF\\u5C55\\u5F00\\u5E76\\u9009\\u62E9\\u4EFB\\u610F\\u5B50\\u76EE\\u5F55\\u3002\")))}function Ms(){let[e]=ee.Form.useForm(),[t]=ee.Form.useForm(),[n,r]=(0,ne.useState)({}),[o,a]=(0,ne.useState)(!1),[i,s]=(0,ne.useState)(\"0\"),[l,c]=(0,ne.useState)(\"\\u6839\\u76EE\\u5F55\"),f=async()=>{let[h,x]=await Promise.all([Gt.get(\"/pan123/account\"),Gt.get(\"/pan123/open/config\")]);e.setFieldsValue(h||{}),t.setFieldsValue({oauth_server:(x==null?void 0:x.oauth_server)||\"https://oauth.litepan.top\"}),r(x||{}),s(String((x==null?void 0:x.target_parent_id)||\"0\")),c((x==null?void 0:x.target_parent_name)||\"\\u6839\\u76EE\\u5F55\")};(0,ne.useEffect)(()=>{f().catch(h=>ee.message.error(h.message))},[]);let d=async()=>{let h=await e.validateFields();await Gt.put(\"/pan123/account\",h),ee.message.success(\"123\\u7F51\\u9875\\u8D26\\u53F7\\u5DF2\\u4FDD\\u5B58\")},u=async(h={})=>{var b,S,w,D,O;let x=String((S=(b=h.target_parent_id)!=null?b:i)!=null?S:\"0\"),v=(D=(w=h.target_parent_name)!=null?w:l)!=null?D:\"\\u6839\\u76EE\\u5F55\",y=await Gt.put(\"/pan123/open/settings\",{enabled:(O=h.enabled)!=null?O:n.enabled===!0,target_parent_id:x,target_parent_name:v,oauth_server:t.getFieldValue(\"oauth_server\")||n.oauth_server});r(y||{}),s(String((y==null?void 0:y.target_parent_id)||x)),c((y==null?void 0:y.target_parent_name)||v),ee.message.success(\"123 Open\\u8BBE\\u7F6E\\u5DF2\\u4FDD\\u5B58\")},m=async()=>{a(!0);try{let h=t.getFieldValue(\"oauth_server\")||n.oauth_server;await Gt.put(\"/pan123/open/settings\",{enabled:n.enabled===!0,target_parent_id:n.target_parent_id||\"0\",target_parent_name:n.target_parent_name||\"\\u6839\\u76EE\\u5F55\",oauth_server:h});let x=await Gt.post(\"/pan123/open/oauth/password\");r(x||{}),ee.message.success(\"123\\u8D26\\u53F7\\u5BC6\\u7801\\u6388\\u6743\\u6210\\u529F\")}finally{a(!1)}};return ne.default.createElement(ee.Space,{direction:\"vertical\",style:{width:\"100%\"},size:\"middle\"},ne.default.createElement(ee.Divider,null,\"123\\u7F51\\u9875\\u8D26\\u53F7\"),ne.default.createElement(ee.Form,{form:e,layout:\"vertical\"},ne.default.createElement(ee.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},ne.default.createElement(ee.Input,null)),ne.default.createElement(ee.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},ne.default.createElement(ee.Input.Password,null)),ne.default.createElement(ee.Button,{type:\"primary\",onClick:()=>d().catch(h=>ee.message.error(h.message)),block:!0},\"\\u4FDD\\u5B58\\u7F51\\u9875\\u8D26\\u53F7\")),ne.default.createElement(ee.Divider,null,\"123 Open\"),ne.default.createElement(ee.Space,{wrap:!0},ne.default.createElement(ee.Tag,{color:n.configured?\"green\":\"red\"},n.configured?\"Open\\u5DF2\\u914D\\u7F6E\":\"Open\\u672A\\u914D\\u7F6E\"),ne.default.createElement(ee.Tag,null,n.access_token_masked||\"\\u65E0Token\"),ne.default.createElement(ee.Tag,{color:n.has_refresh_token?\"blue\":\"default\"},n.has_refresh_token?\"\\u53EF\\u5237\\u65B0\":\"\\u65E0refresh token\")),ne.default.createElement(ee.Form,{form:t,layout:\"vertical\"},ne.default.createElement(ee.Form.Item,{label:\"OAuth\\u4EE3\\u7406\\u670D\\u52A1\",name:\"oauth_server\"},ne.default.createElement(ee.Input,null)),ne.default.createElement(ee.Space,{style:{width:\"100%\"},direction:\"vertical\"},ne.default.createElement(ee.Button,{type:\"primary\",loading:o,onClick:()=>m().catch(h=>ee.message.error(h.message)),block:!0},\"\\u4F7F\\u7528123\\u8D26\\u53F7\\u5BC6\\u7801\\u76F4\\u63A5\\u6388\\u6743\"),ne.default.createElement(ee.Button,{onClick:async()=>{try{r(await Gt.post(\"/pan123/open/refresh\")),ee.message.success(\"123 Open Token\\u5237\\u65B0\\u6210\\u529F\")}catch(h){ee.message.error(h.message)}},block:!0},\"\\u5237\\u65B0Token\"))),ne.default.createElement(ee.Divider,null,\"\\u79D2\\u4F20\\u8BBE\\u7F6E\"),ne.default.createElement(ee.Space,null,ne.default.createElement(\"span\",null,\"\\u542F\\u7528115\\u2192\\u79D2\\u4F20123\"),ne.default.createElement(ee.Switch,{checked:n.enabled===!0,disabled:!n.configured,onChange:h=>u({enabled:h}).catch(x=>ee.message.error(x.message))})),ne.default.createElement(ee.Form,{layout:\"vertical\"},ne.default.createElement(ee.Form.Item,{label:\"\\u79D2\\u4F20123\\u76EE\\u6807\\u76EE\\u5F55\",help:\"SHA1\\u547D\\u4E2D\\u540E\\uFF0C\\u6587\\u4EF6\\u4F1A\\u4FDD\\u5B58\\u5230\\u6240\\u9009123\\u4E2A\\u4EBA\\u76D8\\u76EE\\u5F55\\u3002\"},ne.default.createElement(yC,{value:i,valueName:l,disabled:!n.configured,onChange:(h,x)=>{s(h),c(x)}})),ne.default.createElement(ee.Button,{type:\"primary\",loading:o,disabled:!n.configured,onClick:()=>u().catch(h=>ee.message.error(h.message)),block:!0},\"\\u4FDD\\u5B58\\u79D2\\u4F20\\u8BBE\\u7F6E\")))}var Mp=_(Je(),1),Ga=Mp.default.create({baseURL:\"/website\"}),wC=[\"quark\",\"uc\",\"xunlei\",\"ali\"],CC=200;Ga.interceptors.response.use(function(e){if(e.data.code!==0)throw Ne.message.error(e.data.message),new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data},function(e){return Promise.reject(e)});var SC=({driveKey:e})=>{let t=e.startsWith(\"nodejs_\")?e.substring(7):e;switch((o=>o.startsWith(\"pan123_\")?\"pan123\":o)(t)){case\"quark\":return re.default.createElement(Kt,{qrcodeUrl:\"/website/quark/qrcode\",cacheUrl:\"/quark/cookie\"});case\"uc\":return re.default.createElement(Us,null);case\"115\":return re.default.createElement(Kt,{qrcodeUrl:\"/website/115/qrcode\",cacheUrl:\"/115/cookie\"});case\"baidu\":return re.default.createElement(Kt,{qrcodeUrl:\"/website/baidu/qrcode\",cacheUrl:\"/baidu/cookie\"});case\"tianyi\":return re.default.createElement(zs,{api:\"/tianyi/account\"});case\"123\":return re.default.createElement(Ms,null);case\"xunlei\":return re.default.createElement($s,{api:\"/xunlei/account\"});case\"ali\":return re.default.createElement(Vs,null);case\"guangya\":return re.default.createElement(re.default.Fragment,null,re.default.createElement(Kt,{qrcodeUrl:\"/website/guangya/qrcode\",cacheUrl:\"/guangya/cookie\"}),re.default.createElement(_p,{http:Ga}));case\"uc-tv\":return re.default.createElement(Kt,{qrcodeUrl:\"/website/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\"});case\"magnet\":return re.default.createElement(Bs,null);case\"magnet_guangya\":return re.default.createElement(Ls,null);default:return re.default.createElement(\"p\",null,\"\\u76F4\\u63A5\\u89C2\\u770B\\uFF0C\\u4E0D\\u9700\\u8981cookie\")}},OC=()=>{let[e,t]=(0,re.useState)(!1),[n,r]=(0,re.useState)(null),[o,a]=(0,re.useState)(.5),[i,s]=(0,re.useState)(32),[l,c]=(0,re.useState)(!0),[f,d]=(0,re.useState)(!1),[u,m]=(0,re.useState)(!1),h=O=>O==null?void 0:O.replace(\"nodejs_\",\"\"),x=O=>O===\"quark\",v=O=>wC.includes(O),y=O=>O===\"uc\"?.0625:.5,b=O=>O===\"uc\"?16:O===\"ali\"?6:O===\"xunlei\"?10:32,S=O=>{let F=h(O.key);a(y(F)),s(b(F)),c(!0),d(!1),r(O),t(!0)},w=()=>{t(!1),r(null),a(.5),s(32),c(!0),d(!1),m(!1)};(0,re.useEffect)(()=>{if(!n)return;let O=h(n.key);v(O)&&(m(!0),Ga.get(\"/\".concat(O,\"/config\")).then(F=>{let T=F.chunkSize/1048576;a(T>0?T:y(O)),s(F.poolSize>0?F.poolSize:b(O));let P=x(O)?F.enableFast===!0:!1;c(O===\"quark\"&&P?!1:F.useMultithread!==!1),d(P)}).catch(F=>{console.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\",F),Ne.message.warning(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C\"),a(y(O)),s(b(O)),c(!0),d(!1)}).finally(()=>m(!1)))},[n]);let D=(0,re.useMemo)(()=>[{title:\"\\u626B\\u7801\",key:\"action\",render:(O,F)=>re.default.createElement(Ne.Space,{size:\"middle\"},re.default.createElement(Ne.Button,{type:\"primary\",size:\"small\",icon:re.default.createElement(yr,null),onClick:()=>S(F)})),width:100,align:\"center\"}],[]);return re.default.createElement(re.default.Fragment,null,re.default.createElement(Ws,{extraColumns:D}),re.default.createElement(Ne.Modal,{title:n?\"\\u4FEE\\u6539 \".concat(n.name,\" \\u914D\\u7F6E\"):\"\\u4FEE\\u6539\\u914D\\u7F6E\",open:e,onCancel:w,footer:null,destroyOnClose:!0,className:\"force-light-form-label\",width:h(n==null?void 0:n.key)===\"guangya\"?620:void 0},re.default.createElement(SC,{driveKey:n==null?void 0:n.key}),n&&v(n.key.replace(\"nodejs_\",\"\"))&&re.default.createElement(\"div\",{style:{marginTop:16}},re.default.createElement(Ne.Divider,null,\"\\u4EE3\\u7406\\u8BBE\\u7F6E\"),re.default.createElement(Ne.Form,{layout:\"vertical\"},re.default.createElement(Ne.Form.Item,{label:\"\\u542F\\u7528\\u4EE3\\u7406\\u52A0\\u901F\",extra:n.key.replace(\"nodejs_\",\"\")===\"quark\"&&f?\"\\u5DF2\\u542F\\u7528\\u5FEB\\u4F20\\uFF0C\\u4EE3\\u7406\\u52A0\\u901F\\u4F1A\\u5931\\u6548\\uFF1B\\u5173\\u95ED\\u201C\\u542F\\u7528\\u5FEB\\u4F20\\u201D\\u540E\\u624D\\u80FD\\u6253\\u5F00\\u4EE3\\u7406\\u52A0\\u901F\\u3002\":void 0},re.default.createElement(Ne.Switch,{checked:l,onChange:c,disabled:u||n.key.replace(\"nodejs_\",\"\")===\"quark\"&&f})),x(n.key.replace(\"nodejs_\",\"\"))&&re.default.createElement(Ne.Form.Item,{label:\"\\u542F\\u7528\\u5FEB\\u4F20\"},re.default.createElement(Ne.Switch,{checked:f,onChange:O=>{d(O),n.key.replace(\"nodejs_\",\"\")===\"quark\"&&O&&c(!1)},disabled:u})),re.default.createElement(Ne.Form.Item,{label:\"\\u7EBF\\u7A0B\\u6570\"},re.default.createElement(Ne.InputNumber,{min:1,max:CC,value:i,onChange:s,style:{width:\"100%\"},disabled:u})),re.default.createElement(Ne.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (MB)\"},re.default.createElement(Ne.InputNumber,{min:.01,max:10,value:o,onChange:a,style:{width:\"100%\"},disabled:u})),re.default.createElement(Ne.Button,{type:\"primary\",onClick:async()=>{let O=n.key.replace(\"nodejs_\",\"\"),F=O===\"quark\"&&f?!1:l;try{let T={chunkSize:o*1024*1024,poolSize:i,useMultithread:F};x(O)&&(T.enableFast=f),await Ga.put(\"/\".concat(O,\"/config\"),T),Ne.message.success(\"\\u4EE3\\u7406\\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\")}catch(T){Ne.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\")}},loading:u,block:!0},\"\\u4FDD\\u5B58\\u4EE3\\u7406\\u914D\\u7F6E\")))))},Vp=OC;var fe=_(J(),1),un=_(_e(),1);var He=_(J(),1),$e=_(_e(),1),zp=_(Je(),1),ja=zp.default.create({baseURL:\"/website\"});ja.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});function Gs({prefix:e=\"/panlian\",title:t=\"\\u76D8\\u94FE\"}){let[n]=$e.Form.useForm(),[r,o]=(0,He.useState)({hasCookie:!1,cookieLength:0}),[a,i]=(0,He.useState)(!1),s=async()=>{let f=await ja.get(\"\".concat(e,\"/config\"));n.setFieldsValue({username:f.username||\"\",password:f.password||\"\",cookie:f.cookie||\"\"}),o({hasCookie:!!f.hasCookie,cookieLength:String(f.cookie||\"\").trim().length})};(0,He.useEffect)(()=>{s()},[e]);let l=async()=>{i(!0);try{await ja.post(\"\".concat(e,\"/clear\")),await s(),$e.message.success(\"\".concat(t,\"\\u8D26\\u53F7\\u6570\\u636E\\u5DF2\\u6E05\\u7A7A\"))}finally{i(!1)}},c=async()=>{i(!0);try{let f=await n.validateFields([\"username\",\"password\"]),d=await ja.post(\"\".concat(e,\"/login\"),f);await s(),$e.message.success(\"\".concat(t,\"\\u767B\\u5F55\\u6210\\u529F\\uFF1A\").concat((d==null?void 0:d.message)||\"\\u5DF2\\u5199\\u5165 Cookie\"))}finally{i(!1)}};return He.default.createElement($e.Card,{variant:\"borderless\"},He.default.createElement(\"div\",{style:{marginBottom:12,display:\"flex\",gap:8,flexWrap:\"wrap\"}},He.default.createElement($e.Tag,{color:r.hasCookie?\"success\":\"default\"},r.hasCookie?\"\\u5DF2\\u5199\\u5165 Cookie\":\"\\u672A\\u5199\\u5165 Cookie\"),He.default.createElement($e.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",r.cookieLength)),He.default.createElement($e.Form,{form:n,layout:\"vertical\"},He.default.createElement($e.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},He.default.createElement($e.Input,{placeholder:\"\".concat(t,\"\\u8D26\\u53F7\")})),He.default.createElement($e.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},He.default.createElement($e.Input.Password,{placeholder:\"\".concat(t,\"\\u5BC6\\u7801\")})),He.default.createElement($e.Form.Item,{label:\"\\u5F53\\u524D Cookie\",name:\"cookie\"},He.default.createElement($e.Input.TextArea,{rows:4,readOnly:!0,placeholder:\"\\u767B\\u5F55\\u6210\\u529F\\u540E\\u4F1A\\u81EA\\u52A8\\u56DE\\u586B Cookie\"})),He.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},He.default.createElement($e.Button,{type:\"primary\",onClick:c,loading:a},\"\\u767B\\u5F55\"),He.default.createElement($e.Button,{danger:!0,onClick:l,loading:a},\"\\u6E05\\u7A7A\"))))}var Be=_(J(),1),Fe=_(_e(),1),$p=_(Je(),1),lr=$p.default.create({baseURL:\"/website\"});lr.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var so=\"/filejin\";function js(){let[e]=Fe.Form.useForm(),[t,n]=(0,Be.useState)({hasCookie:!1,cookieLength:0,site:\"\"}),[r,o]=(0,Be.useState)(!1),a=async()=>{let c=await lr.get(\"\".concat(so,\"/config\"));e.setFieldsValue({site:c.site||\"\",username:c.username||\"\",password:c.password||\"\",cookie:c.cookie||\"\"}),n({hasCookie:!!c.hasCookie,cookieLength:String(c.cookie||\"\").trim().length,site:c.site||\"\"})};(0,Be.useEffect)(()=>{a()},[]);let i=async()=>{o(!0);try{let{site:c}=await e.validateFields([\"site\"]);await lr.put(\"\".concat(so,\"/config\"),{site:String(c||\"\").trim()}),await a(),Fe.message.success(\"\\u89C2\\u5F71\\u7F51\\u5740\\u5DF2\\u4FDD\\u5B58\")}finally{o(!1)}},s=async()=>{o(!0);try{await lr.post(\"\".concat(so,\"/clear\")),await a(),Fe.message.success(\"\\u89C2\\u5F71\\u8D26\\u53F7\\u6570\\u636E\\u5DF2\\u6E05\\u7A7A\")}finally{o(!1)}},l=async()=>{o(!0);try{let c=await e.validateFields([\"site\",\"username\",\"password\"]);await lr.put(\"\".concat(so,\"/config\"),{site:String(c.site||\"\").trim()});let f=await lr.post(\"\".concat(so,\"/login\"),{username:c.username,password:c.password});await a(),Fe.message.success(\"\\u89C2\\u5F71\\u767B\\u5F55\\u6210\\u529F\\uFF1A\".concat((f==null?void 0:f.message)||\"\\u5DF2\\u5199\\u5165 Cookie\"))}finally{o(!1)}};return Be.default.createElement(Fe.Card,{variant:\"borderless\"},Be.default.createElement(\"div\",{style:{marginBottom:12,display:\"flex\",gap:8,flexWrap:\"wrap\"}},Be.default.createElement(Fe.Tag,{color:t.hasCookie?\"success\":\"default\"},t.hasCookie?\"\\u5DF2\\u5199\\u5165 Cookie\":\"\\u672A\\u5199\\u5165 Cookie\"),Be.default.createElement(Fe.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",t.cookieLength),Be.default.createElement(Fe.Tag,{color:t.site?\"geekblue\":\"default\"},t.site?\"\\u81EA\\u5B9A\\u4E49\\u7F51\\u5740\\uFF1A\".concat(t.site):\"\\u4F7F\\u7528\\u9ED8\\u8BA4\\u7F51\\u5740\")),Be.default.createElement(Fe.Form,{form:e,layout:\"vertical\"},Be.default.createElement(Fe.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u7F51\\u5740\",name:\"site\",extra:\"\\u7559\\u7A7A\\u5219\\u4F7F\\u7528\\u5185\\u7F6E\\u9ED8\\u8BA4\\u7F51\\u5740\\u3002\\u7F51\\u5740\\u53D8\\u52A8\\u65F6\\u5728\\u6B64\\u4FEE\\u6539\\uFF0C\\u65E0\\u9700\\u6539\\u4EE3\\u7801\\u3002\\u793A\\u4F8B\\uFF1Ahttps://www.example.com\"},Be.default.createElement(Fe.Input,{placeholder:\"\\u4F8B\\u5982 https://www.example.com\",allowClear:!0})),Be.default.createElement(Fe.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},Be.default.createElement(Fe.Input,{placeholder:\"\\u89C2\\u5F71\\u8D26\\u53F7\"})),Be.default.createElement(Fe.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},Be.default.createElement(Fe.Input.Password,{placeholder:\"\\u89C2\\u5F71\\u5BC6\\u7801\"})),Be.default.createElement(Fe.Form.Item,{label:\"\\u5F53\\u524D Cookie\",name:\"cookie\"},Be.default.createElement(Fe.Input.TextArea,{rows:4,readOnly:!0,placeholder:\"\\u767B\\u5F55\\u6210\\u529F\\u540E\\u4F1A\\u81EA\\u52A8\\u56DE\\u586B Cookie\"})),Be.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},Be.default.createElement(Fe.Button,{onClick:i,loading:r},\"\\u4FDD\\u5B58\\u7F51\\u5740\"),Be.default.createElement(Fe.Button,{type:\"primary\",onClick:l,loading:r},\"\\u767B\\u5F55\"),Be.default.createElement(Fe.Button,{danger:!0,onClick:s,loading:r},\"\\u6E05\\u7A7A\"))))}var Me=_(J(),1),Ee=_(_e(),1),Up=_(Je(),1);var lo=Up.default.create({baseURL:\"/website\"});lo.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var Ha=\"/pan1\";function Hs(){let[e]=Ee.Form.useForm(),[t,n]=(0,Me.useState)(!1),[r,o]=(0,Me.useState)({hasCookie:!1,cookieLength:0,valid:null,uid:\"\"}),a=async()=>{let l=await lo.get(\"\".concat(Ha,\"/config\"));e.setFieldsValue({cookie:l.cookie||\"\",autoReply:l.autoReply!==!1,replyMessage:l.replyMessage||\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"}),o(c=>I(C({},c),{hasCookie:!!l.hasCookie,cookieLength:Number(l.cookieLength||0)}))};(0,Me.useEffect)(()=>{a()},[]);let i=async(l=!1)=>{n(!0);try{let c=await e.validateFields();await lo.put(\"\".concat(Ha,\"/config\"),c);let f={valid:null,uid:\"\"};if(l){let d=await lo.post(\"\".concat(Ha,\"/validate\"));f={valid:!0,uid:(d==null?void 0:d.uid)||\"\"},Ee.message.success(\"\\u8BBA\\u575B Cookie \\u6709\\u6548\\uFF0C\\u8D44\\u6E90\\u7248\\u8BBF\\u95EE\\u6B63\\u5E38\")}else Ee.message.success(\"pan1 \\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\");await a(),o(d=>C(C({},d),f))}finally{n(!1)}},s=async()=>{n(!0);try{await lo.post(\"\".concat(Ha,\"/clear\")),await a(),o(l=>I(C({},l),{valid:null,uid:\"\"})),Ee.message.success(\"\\u8BBA\\u575B Cookie \\u5DF2\\u6E05\\u7A7A\")}finally{n(!1)}};return Me.default.createElement(Ee.Card,null,Me.default.createElement(Ee.Space,{wrap:!0,style:{marginBottom:12}},Me.default.createElement(Ee.Tag,{color:r.hasCookie?\"success\":\"default\"},r.hasCookie?\"\\u5DF2\\u586B\\u5199 Cookie\":\"\\u672A\\u586B\\u5199 Cookie\"),Me.default.createElement(Ee.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",r.cookieLength),r.valid===!0&&Me.default.createElement(Ee.Tag,{color:\"success\"},\"\\u9A8C\\u8BC1\\u6210\\u529F\",r.uid?\" \\xB7 UID \".concat(r.uid):\"\")),Me.default.createElement(Ee.Form,{form:e,layout:\"vertical\",initialValues:{autoReply:!0}},Me.default.createElement(Ee.Form.Item,{label:\"\\u8BBA\\u575B Cookie\",name:\"cookie\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 pan1.me \\u767B\\u5F55 Cookie\"}],extra:\"\\u4ECE\\u6D4F\\u89C8\\u5668\\u767B\\u5F55 pan1.me \\u540E\\u590D\\u5236\\u5B8C\\u6574 Cookie\\u3002\\u81F3\\u5C11\\u5E94\\u5305\\u542B bbs_sid \\u548C bbs_token\\u3002\"},Me.default.createElement(Ee.Input.TextArea,{autoSize:{minRows:4,maxRows:8},placeholder:\"bbs_sid=...; bbs_token=...\"})),Me.default.createElement(Ee.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u9690\\u85CF\\u5E16\",name:\"autoReply\",valuePropName:\"checked\"},Me.default.createElement(Ee.Switch,{checkedChildren:\"\\u5F00\\u542F\",unCheckedChildren:\"\\u5173\\u95ED\"})),Me.default.createElement(Ee.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\",name:\"replyMessage\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\"}]},Me.default.createElement(Ee.Input,{maxLength:120,showCount:!0,placeholder:\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"})),Me.default.createElement(Ee.Space,{wrap:!0},Me.default.createElement(Ee.Button,{type:\"primary\",loading:t,onClick:()=>i(!0)},\"\\u4FDD\\u5B58\\u5E76\\u9A8C\\u8BC1\"),Me.default.createElement(Ee.Button,{loading:t,onClick:()=>i(!1)},\"\\u4EC5\\u4FDD\\u5B58\"),Me.default.createElement(Ee.Button,{danger:!0,loading:t,onClick:s},\"\\u6E05\\u7A7A Cookie\"))))}var Ae=_(J(),1),xe=_(_e(),1),Wp=_(Je(),1);var co=Wp.default.create({baseURL:\"/website\"});co.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var qa=\"/guangyaqsxy\";function qs(){let[e]=xe.Form.useForm(),[t,n]=(0,Ae.useState)(!1),[r,o]=(0,Ae.useState)({hasCookie:!1,cookieLength:0,valid:null,username:\"\",canReadResource:null,resourceGate:\"\"}),a=async()=>{let l=await co.get(\"\".concat(qa,\"/config\"));e.setFieldsValue({cookie:l.cookie||\"\",autoReply:l.autoReply!==!1,replyMessage:l.replyMessage||\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"}),o(c=>I(C({},c),{hasCookie:!!l.hasCookie,cookieLength:Number(l.cookieLength||0)}))};(0,Ae.useEffect)(()=>{a()},[]);let i=async(l=!1)=>{n(!0);try{let c=await e.validateFields();await co.put(\"\".concat(qa,\"/config\"),c);let f={valid:null,username:\"\",canReadResource:null,resourceGate:\"\"};if(l){let d=await co.post(\"\".concat(qa,\"/validate\"));f={valid:(d==null?void 0:d.loggedIn)===!0,username:(d==null?void 0:d.username)||\"\",canReadResource:(d==null?void 0:d.canReadResource)===!0,resourceGate:(d==null?void 0:d.resourceGate)||\"\"},d!=null&&d.canReadResource?xe.message.success((d==null?void 0:d.message)||\"Cookie \\u767B\\u5F55\\u6709\\u6548\\uFF0C\\u8D44\\u6E90\\u94FE\\u63A5\\u5DF2\\u89E3\\u9501\"):(d==null?void 0:d.resourceGate)===\"comment_required\"?xe.message.warning((d==null?void 0:d.message)||\"Cookie \\u767B\\u5F55\\u6709\\u6548\\uFF0C\\u8BE6\\u60C5\\u9875\\u9700\\u8BC4\\u8BBA\\u89E3\\u9501\"):xe.message.info((d==null?void 0:d.message)||\"Cookie \\u767B\\u5F55\\u6709\\u6548\\uFF0C\\u4F46\\u672A\\u8BC6\\u522B\\u5230\\u8D44\\u6E90\\u72B6\\u6001\")}else xe.message.success(\"\\u5149\\u9E2D\\u81FB\\u5F71\\u793E Cookie \\u5DF2\\u4FDD\\u5B58\");await a(),o(d=>C(C({},d),f))}catch(c){xe.message.error((c==null?void 0:c.message)||\"\\u4FDD\\u5B58\\u5931\\u8D25\")}finally{n(!1)}},s=async()=>{n(!0);try{await co.post(\"\".concat(qa,\"/clear\")),await a(),o(l=>I(C({},l),{valid:null,username:\"\",canReadResource:null,resourceGate:\"\"})),xe.message.success(\"Cookie \\u5DF2\\u6E05\\u7A7A\")}catch(l){xe.message.error((l==null?void 0:l.message)||\"\\u6E05\\u7A7A\\u5931\\u8D25\")}finally{n(!1)}};return Ae.default.createElement(xe.Card,null,Ae.default.createElement(xe.Space,{wrap:!0,style:{marginBottom:12}},Ae.default.createElement(xe.Tag,{color:r.hasCookie?\"success\":\"default\"},r.hasCookie?\"\\u5DF2\\u586B\\u5199 Cookie\":\"\\u672A\\u586B\\u5199 Cookie\"),Ae.default.createElement(xe.Tag,{color:\"blue\"},\"\\u957F\\u5EA6 \",r.cookieLength),r.valid===!0&&Ae.default.createElement(xe.Tag,{color:\"success\"},\"Cookie \\u767B\\u5F55\\u6709\\u6548\",r.username?\" \\xB7 \".concat(r.username):\"\"),r.resourceGate===\"unlocked\"&&Ae.default.createElement(xe.Tag,{color:\"success\"},\"\\u62BD\\u68C0\\u8D44\\u6E90\\u5DF2\\u89E3\\u9501\"),r.resourceGate===\"comment_required\"&&Ae.default.createElement(xe.Tag,{color:\"warning\"},\"\\u8D44\\u6E90\\u9700\\u8BC4\\u8BBA\\u89E3\\u9501\"),r.resourceGate===\"unknown\"&&Ae.default.createElement(xe.Tag,{color:\"default\"},\"\\u8D44\\u6E90\\u72B6\\u6001\\u672A\\u77E5\")),Ae.default.createElement(xe.Form,{form:e,layout:\"vertical\",initialValues:{autoReply:!0}},Ae.default.createElement(xe.Form.Item,{label:\"\\u7AD9\\u70B9 Cookie\",name:\"cookie\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 guangya.qsxy.top \\u767B\\u5F55 Cookie\"}],extra:\"\\u5728\\u6D4F\\u89C8\\u5668\\u767B\\u5F55 guangya.qsxy.top \\u540E\\uFF0C\\u590D\\u5236\\u5B8C\\u6574 Cookie\\u3002Cookie \\u5931\\u6548\\u540E\\u9700\\u91CD\\u65B0\\u586B\\u5199\\u3002\"},Ae.default.createElement(xe.Input.TextArea,{autoSize:{minRows:5,maxRows:10},placeholder:\"wordpress_logged_in_...=...; PHPSESSID=...\"})),Ae.default.createElement(xe.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u89E3\\u9501\\u8D44\\u6E90\",name:\"autoReply\",valuePropName:\"checked\"},Ae.default.createElement(xe.Switch,{checkedChildren:\"\\u5F00\\u542F\",unCheckedChildren:\"\\u5173\\u95ED\"})),Ae.default.createElement(xe.Form.Item,{label:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\",name:\"replyMessage\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\"},{min:4,message:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\\u81F3\\u5C11\\u9700\\u8981 4 \\u4E2A\\u5B57\\u7B26\"},{max:120,message:\"\\u81EA\\u52A8\\u56DE\\u590D\\u5185\\u5BB9\\u4E0D\\u80FD\\u8D85\\u8FC7 120 \\u4E2A\\u5B57\\u7B26\"}]},Ae.default.createElement(xe.Input,{maxLength:120,showCount:!0,placeholder:\"\\u611F\\u8C22\\u5206\\u4EAB\\uFF0C\\u8F9B\\u82E6\\u6574\\u7406\\u4E86\"})),Ae.default.createElement(xe.Space,{wrap:!0},Ae.default.createElement(xe.Button,{type:\"primary\",loading:t,onClick:()=>i(!0)},\"\\u4FDD\\u5B58\\u5E76\\u9A8C\\u8BC1\"),Ae.default.createElement(xe.Button,{loading:t,onClick:()=>i(!1)},\"\\u4EC5\\u4FDD\\u5B58\"),Ae.default.createElement(xe.Button,{danger:!0,loading:t,onClick:s},\"\\u6E05\\u7A7A Cookie\"))))}var Ue=_(J(),1),Te=_(_e(),1),Gp=_(Je(),1);var uo=Gp.default.create({baseURL:\"/website\"});uo.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data.data});var Ya=\"/jying\";function Ys(){let[e]=Te.Form.useForm(),[t,n]=(0,Ue.useState)(!1),[r,o]=(0,Ue.useState)({usernameConfigured:!1,passwordConfigured:!1,valid:null,username:\"\",level:0}),a=async()=>{let l=await uo.get(\"\".concat(Ya,\"/config\"));e.setFieldsValue({username:l.username||\"\",password:\"\"}),o(c=>I(C({},c),{usernameConfigured:l.usernameConfigured===!0,passwordConfigured:l.passwordConfigured===!0,username:l.username||c.username}))};(0,Ue.useEffect)(()=>{a()},[]);let i=async l=>{n(!0);try{let c=await e.validateFields(),f={username:String(c.username||\"\").trim()};if(String(c.password||\"\").trim()&&(f.password=String(c.password).trim()),l){let d=await uo.post(\"\".concat(Ya,\"/validate\"),I(C({},f),{save:!0}));o(u=>I(C({},u),{valid:(d==null?void 0:d.valid)===!0,username:(d==null?void 0:d.username)||f.username,level:Number((d==null?void 0:d.level)||0)})),Te.message.success(\"\\u805A\\u5F71\\u8D26\\u53F7\\u9A8C\\u8BC1\\u6210\\u529F\\uFF0C\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\")}else await uo.put(\"\".concat(Ya,\"/config\"),f),o(d=>I(C({},d),{valid:null})),Te.message.success(\"\\u805A\\u5F71\\u8D26\\u53F7\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\");await a()}catch(c){o(f=>I(C({},f),{valid:!1})),Te.message.error((c==null?void 0:c.message)||\"\\u805A\\u5F71\\u914D\\u7F6E\\u4FDD\\u5B58\\u5931\\u8D25\")}finally{n(!1)}},s=async()=>{n(!0);try{await uo.post(\"\".concat(Ya,\"/clear\")),await a(),o({usernameConfigured:!1,passwordConfigured:!1,valid:null,username:\"\",level:0}),Te.message.success(\"\\u805A\\u5F71\\u8D26\\u53F7\\u914D\\u7F6E\\u5DF2\\u6E05\\u7A7A\")}catch(l){Te.message.error((l==null?void 0:l.message)||\"\\u6E05\\u7A7A\\u5931\\u8D25\")}finally{n(!1)}};return Ue.default.createElement(Te.Card,null,Ue.default.createElement(Te.Space,{wrap:!0,style:{marginBottom:12}},Ue.default.createElement(Te.Tag,{color:r.usernameConfigured?\"success\":\"default\"},r.usernameConfigured?\"\\u5DF2\\u586B\\u5199\\u8D26\\u53F7\":\"\\u672A\\u586B\\u5199\\u8D26\\u53F7\"),Ue.default.createElement(Te.Tag,{color:r.passwordConfigured?\"success\":\"default\"},r.passwordConfigured?\"\\u5DF2\\u586B\\u5199\\u5BC6\\u7801\":\"\\u672A\\u586B\\u5199\\u5BC6\\u7801\"),r.valid===!0&&Ue.default.createElement(Te.Tag,{color:\"success\"},\"\\u767B\\u5F55\\u6709\\u6548\",r.username?\" \\xB7 \".concat(r.username):\"\",r.level?\" \\xB7 Lv.\".concat(r.level):\"\"),r.valid===!1&&Ue.default.createElement(Te.Tag,{color:\"error\"},\"\\u672A\\u901A\\u8FC7\\u9A8C\\u8BC1\")),Ue.default.createElement(Te.Form,{form:e,layout:\"vertical\"},Ue.default.createElement(Te.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 jying.top \\u8D26\\u53F7\\u6216\\u90AE\\u7BB1\"}]},Ue.default.createElement(Te.Input,{placeholder:\"jying.top \\u7528\\u6237\\u540D\\u6216\\u90AE\\u7BB1\",autoComplete:\"username\"})),Ue.default.createElement(Te.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{validator:(l,c)=>r.passwordConfigured||String(c||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165 jying.top \\u5BC6\\u7801\"))}]},Ue.default.createElement(Te.Input.Password,{placeholder:r.passwordConfigured?\"\\u5DF2\\u914D\\u7F6E\\uFF0C\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u4FEE\\u6539\":\"\\u8BF7\\u8F93\\u5165 jying.top \\u5BC6\\u7801\",autoComplete:\"new-password\"})),Ue.default.createElement(Te.Space,{wrap:!0},Ue.default.createElement(Te.Button,{type:\"primary\",loading:t,onClick:()=>i(!0)},\"\\u4FDD\\u5B58\\u5E76\\u9A8C\\u8BC1\"),Ue.default.createElement(Te.Button,{loading:t,onClick:()=>i(!1)},\"\\u4EC5\\u4FDD\\u5B58\"),Ue.default.createElement(Te.Button,{danger:!0,loading:t,onClick:s},\"\\u6E05\\u7A7A\\u8D26\\u53F7\\u914D\\u7F6E\"))))}var Ie=_(J(),1),We=_(_e(),1),jp=_(Je(),1);var Ka=jp.default.create({baseURL:\"/website\"});Ka.interceptors.response.use(e=>{if(e.data.code!==0){let t=new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");throw t.responseData=e.data,t}return e.data.data});var DC=[\"button\",\"input\",\"textarea\",\"select\",\"option\",\"a\",'[contenteditable=\"true\"]','[role=\"button\"]','[role=\"switch\"]','[role=\"checkbox\"]','[role=\"combobox\"]'].join(\",\"),Hp=({nativeEvent:e,currentTarget:t})=>{let n=e==null?void 0:e.target,r=n instanceof Element?n.closest(DC):null;return!r||r===t},Xa=class extends qt{};Xa.activators=qt.activators.map(e=>I(C({},e),{handler:(t,n)=>Hp(t)&&e.handler(t,n)}));var Ja=class extends Yt{};Ja.activators=Yt.activators.map(e=>I(C({},e),{handler:(t,n)=>Hp(t)&&e.handler(t,n)}));var IC=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:o,transition:a,isDragging:i}=ya({id:e[\"data-row-key\"]}),s=C(I(C({},e.style),{transform:Wt.Translate.toString(o),transition:a,cursor:\"move\"}),i?{position:\"relative\",zIndex:9999}:{});return Ie.default.createElement(\"tr\",C(C(I(C({},e),{ref:r,style:s}),t),n))};function EC(e=[],t={}){let n=(t==null?void 0:t.classes)||{};return e.map((r,o)=>{let a=n[r.type_id]||{},i=Number.isFinite(Number(a.order))?Number(a.order):o+1;return{key:r.type_id,type_id:r.type_id,origin_name:r.type_name,custom_name:typeof a.name==\"string\"?a.name:\"\",hidden:a.hidden===!0,order:i}}).sort((r,o)=>r.order-o.order||r.origin_name.localeCompare(o.origin_name,\"zh-CN\"))}function TC(e=[]){let t={};return e.forEach((n,r)=>{t[n.type_id]={name:(n.custom_name||\"\").trim(),hidden:n.hidden===!0,order:r+1}}),{classes:t,updatedAt:Date.now()}}function Ks(){let[e,t]=(0,Ie.useState)([]),[n,r]=(0,Ie.useState)(!1),[o,a]=(0,Ie.useState)(!1),i=Pr(an(Xa,{activationConstraint:{distance:4}}),an(Ja,{activationConstraint:{delay:200,tolerance:6}})),s=async()=>{r(!0);try{let u=await Ka.get(\"/zhuiju/config\");t(EC((u==null?void 0:u.classes)||[],(u==null?void 0:u.config)||{}))}catch(u){console.error(u),We.message.error(\"\\u52A0\\u8F7D\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{r(!1)}};(0,Ie.useEffect)(()=>{s()},[]);let l=({active:u,over:m})=>{!m||u.id===m.id||t(h=>{let x=h.findIndex(y=>y.key===u.id),v=h.findIndex(y=>y.key===m.id);return x<0||v<0?h:ct(h,x,v).map((y,b)=>I(C({},y),{order:b+1}))})},c=(0,Ie.useMemo)(()=>[{title:\"\\u5206\\u7C7B\\u540D\",dataIndex:\"origin_name\",render:(u,m)=>{var h;return Ie.default.createElement(\"div\",null,Ie.default.createElement(\"div\",{style:{fontWeight:600}},((h=m.custom_name)==null?void 0:h.trim())||m.origin_name),Ie.default.createElement(\"div\",{style:{fontSize:12,opacity:.65}},m.origin_name))}},{title:\"\\u91CD\\u547D\\u540D\",dataIndex:\"custom_name\",render:(u,m,h)=>Ie.default.createElement(We.Input,{placeholder:m.origin_name,value:u,onChange:x=>{let v=[...e];v[h].custom_name=x.target.value,t(v)}}),width:220},{title:\"\\u5C4F\\u853D\",dataIndex:\"hidden\",width:80,align:\"center\",render:(u,m,h)=>Ie.default.createElement(We.Switch,{checked:u,onChange:x=>{let v=[...e];v[h].hidden=x,t(v)}})},{title:\"\\u6392\\u5E8F\",dataIndex:\"order\",width:90,align:\"center\",render:(u,m,h)=>Ie.default.createElement(We.Space,{size:2},Ie.default.createElement(We.Button,{icon:Ie.default.createElement(_t,null),size:\"small\",type:\"text\",disabled:h===0,onClick:()=>t(x=>ct(x,h,h-1).map((v,y)=>I(C({},v),{order:y+1})))}),Ie.default.createElement(We.Button,{icon:Ie.default.createElement(Pt,null),size:\"small\",type:\"text\",disabled:h===e.length-1,onClick:()=>t(x=>ct(x,h,h+1).map((v,y)=>I(C({},v),{order:y+1})))}))}],[e]),f=async()=>{a(!0);try{await Ka.put(\"/zhuiju/config\",TC(e)),We.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\\uFF0Czhuiju \\u5206\\u7C7B\\u81EA\\u5B9A\\u4E49\\u5DF2\\u5165\\u5E93\"),await s()}catch(u){console.error(u),We.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{a(!1)}},d=async()=>{a(!0);try{await Ka.delete(\"/zhuiju/config\"),We.message.success(\"\\u5DF2\\u91CD\\u7F6E\\u4E3A\\u9ED8\\u8BA4\\u5206\\u7C7B\"),await s()}catch(u){console.error(u),We.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}finally{a(!1)}};return Ie.default.createElement(\"div\",null,Ie.default.createElement(\"div\",{className:\"force-light-table-header\"},Ie.default.createElement(_r,{sensors:i,modifiers:[Br],onDragEnd:l},Ie.default.createElement(Mr,{items:e.map(u=>u.key),strategy:Lr},Ie.default.createElement(We.Table,{components:{body:{row:IC}},rowKey:\"key\",loading:n,columns:c,dataSource:e,pagination:!1,size:\"small\",scroll:{x:\"max-content\",y:420}})))),Ie.default.createElement(We.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},Ie.default.createElement(We.Button,{icon:Ie.default.createElement(wn,null),block:!0,onClick:s,disabled:o},\"\\u5237\\u65B0\\u5206\\u7C7B\\u5217\\u8868\"),Ie.default.createElement(We.Button,{type:\"primary\",block:!0,loading:o,onClick:f},\"\\u4FDD\\u5B58\"),Ie.default.createElement(We.Button,{danger:!0,block:!0,loading:o,onClick:d},\"\\u91CD\\u7F6E\")))}var ge=_(J(),1),ce=_(_e(),1),qp=_(Je(),1),fo=qp.default.create({baseURL:\"/website\"});fo.interceptors.response.use(e=>{if(e.data.code!==0)throw new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return e.data},e=>Promise.reject(e));function Xs(){let[e]=ce.Form.useForm(),[t,n]=(0,ge.useState)(!1),[r,o]=(0,ge.useState)(!1),[a,i]=(0,ge.useState)(null),s=async()=>{let{data:d}=await fo.get(\"/yingchao/config\");e.setFieldsValue({tmdb_api_key:d.tmdb_api_key||\"\",tmdb_bearer_token:d.tmdb_bearer_token||\"\",tmdb_auth_mode:d.tmdb_auth_mode||\"\",tmdb_language:d.tmdb_language||\"zh-CN\",tmdb_region:d.tmdb_region||\"CN\",hdhive_api_base_url:d.hdhive_api_base_url||\"https://hdhive.com/api/open\",hdhive_api_key:d.hdhive_api_key||\"\",hdhive_proxy_url:d.hdhive_proxy_url||\"\",hdhive_username:d.hdhive_username||\"\",hdhive_password:\"\",billing_mode:d.billing_mode||\"all\",hide_invalid:d.hide_invalid!==!1})};(0,ge.useEffect)(()=>{s()},[]);let l=async()=>{n(!0);try{let d=await e.validateFields();await fo.put(\"/yingchao/config\",d),ce.message.success(\"\\u5F71\\u5DE2\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\"),await s()}finally{n(!1)}},c=async()=>{n(!0);try{await fo.delete(\"/yingchao/config\"),ce.message.success(\"\\u5F71\\u5DE2\\u914D\\u7F6E\\u5DF2\\u91CD\\u7F6E\"),await s()}finally{n(!1)}},f=async d=>{var u;o(!0),i(null);try{let m=await fo.post(\"/yingchao/checkin\",{gamble:d});ce.message.success(m.message||\"\\u7B7E\\u5230\\u6210\\u529F\"),i({type:\"success\",message:m.message,logs:((u=m.data)==null?void 0:u.logs)||[]})}catch(m){ce.message.error(m.message||\"\\u7B7E\\u5230\\u5931\\u8D25\"),i({type:\"error\",message:m.message||\"\\u7B7E\\u5230\\u5931\\u8D25\",logs:[]})}finally{o(!1)}};return ge.default.createElement(ce.Card,{variant:\"borderless\"},ge.default.createElement(ce.Form,{form:e,layout:\"vertical\"},ge.default.createElement(ce.Form.Item,{label:\"TMDB API Key\",name:\"tmdb_api_key\"},ge.default.createElement(ce.Input,{placeholder:\"\\u672A\\u586B\\u5219\\u4F7F\\u7528\\u9ED8\\u8BA4\\u503C TMDB_API_KEY\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive API \\u5730\\u5740\",name:\"hdhive_api_base_url\"},ge.default.createElement(ce.Input,{placeholder:\"https://hdhive.com/api/open\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive API Key\",name:\"hdhive_api_key\"},ge.default.createElement(ce.Input.Password,{placeholder:\"\\u5FC5\\u586B HDHIVE_API_KEY\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive \\u4EE3\\u7406 URL\",name:\"hdhive_proxy_url\"},ge.default.createElement(ce.Input,{placeholder:\"\\u4F8B\\u5982 http://127.0.0.1:7890 \\u6216 http://user:pass@host:port\\uFF08\\u7B7E\\u5230\\u4E5F\\u4F1A\\u590D\\u7528\\uFF09\"})),ge.default.createElement(ce.Card,{size:\"small\",type:\"inner\",title:\"\\u6BCF\\u65E5\\u7B7E\\u5230\",style:{marginBottom:16}},ge.default.createElement(ce.Form.Item,{label:\"HDHive \\u7528\\u6237\\u540D\",name:\"hdhive_username\"},ge.default.createElement(ce.Input,{placeholder:\"HDHive \\u7F51\\u7AD9\\u8D26\\u53F7\",autoComplete:\"username\"})),ge.default.createElement(ce.Form.Item,{label:\"HDHive \\u5BC6\\u7801\",name:\"hdhive_password\",extra:\"\\u51FA\\u4E8E\\u5B89\\u5168\\u8003\\u8651\\uFF0C\\u5BC6\\u7801\\u4E0D\\u56DE\\u663E\\uFF1B\\u7559\\u7A7A\\u4FDD\\u5B58\\u8868\\u793A\\u6CBF\\u7528\\u5DF2\\u5B58\\u5BC6\\u7801\"},ge.default.createElement(ce.Input.Password,{placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u4FEE\\u6539\",autoComplete:\"new-password\"})),ge.default.createElement(ce.Space,{wrap:!0},ge.default.createElement(ce.Button,{onClick:()=>f(!1),loading:r},\"\\u7ACB\\u5373\\u7B7E\\u5230\"),ge.default.createElement(ce.Button,{onClick:()=>f(!0),loading:r,danger:!0},\"\\u8D4C\\u72D7\\u7B7E\\u5230\")),a&&ge.default.createElement(ce.Alert,{style:{marginTop:12},type:a.type,showIcon:!0,message:a.message,description:a.logs&&a.logs.length>0?ge.default.createElement(\"pre\",{style:{margin:0,whiteSpace:\"pre-wrap\",fontSize:12}},a.logs.join(\"\\n\")):null})),ge.default.createElement(ce.Form.Item,{label:\"\\u8D44\\u6E90\\u8FC7\\u6EE4\",name:\"billing_mode\"},ge.default.createElement(ce.Radio.Group,null,ge.default.createElement(ce.Space,{direction:\"vertical\"},ge.default.createElement(ce.Radio,{value:\"all\"},\"\\u5168\\u90E8\\u663E\\u793A\"),ge.default.createElement(ce.Radio,{value:\"free_only\"},\"\\u4EC5\\u514D\\u8D39\\u8D44\\u6E90\"),ge.default.createElement(ce.Radio,{value:\"paid_only\"},\"\\u4EC5\\u4ED8\\u8D39\\u8D44\\u6E90\")))),ge.default.createElement(ce.Form.Item,{label:\"\\u9690\\u85CF\\u65E0\\u6548\\u8D44\\u6E90\",name:\"hide_invalid\",valuePropName:\"checked\"},ge.default.createElement(ce.Switch,null)),ge.default.createElement(\"div\",{style:{display:\"flex\",gap:8,flexWrap:\"wrap\"}},ge.default.createElement(ce.Button,{type:\"primary\",onClick:l,loading:t},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),ge.default.createElement(ce.Button,{danger:!0,onClick:c,loading:t},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))}var j=_(J(),1),se=_(_e(),1);var Yp=_(Je(),1),{Text:cn}=se.Typography,Mn=Yp.default.create({baseURL:\"/website/dudb\"}),Kp=3;Mn.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw se.message.error(r),new Error(r)}return e.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return se.message.error(t),Promise.reject(e)});function kC(e){if(!e)return\"-\";try{return new Date(Number(e)).toLocaleString()}catch(t){return\"-\"}}function Qa(e){let t=Number(e);return!Number.isFinite(t)||t<=0?Kp:Math.max(1,Math.floor(t))}function NC(){let[e,t]=(0,j.useState)(!1),[n,r]=(0,j.useState)(!1),[o,a]=(0,j.useState)(!1),[i,s]=(0,j.useState)(!1),[l,c]=(0,j.useState)([]),[f,d]=(0,j.useState)(\"\"),[u,m]=(0,j.useState)(!1),[h,x]=(0,j.useState)(!1),[v,y]=(0,j.useState)(Kp),b=(0,j.useCallback)(async()=>{var N,U,K;try{t(!0);let[de,ve]=await Promise.all([Mn.get(\"/list\"),Mn.get(\"/settings\")]);c(((N=de.data)==null?void 0:N.files)||[]),d(((U=de.data)==null?void 0:U.dir)||\"\"),y(Qa((K=ve.data)==null?void 0:K.searchDbLimit)),m(!1),x(!1)}catch(de){}finally{t(!1)}},[]);(0,j.useEffect)(()=>{b()},[b]);let S=(0,j.useCallback)((N,U)=>{c(K=>{let de=[...K],ve=N+U;return ve<0||ve>=de.length?K:([de[N],de[ve]]=[de[ve],de[N]],de)}),m(!0)},[]),w=(0,j.useCallback)(async()=>{try{r(!0),await Mn.put(\"/order\",{order:l.map(N=>N.name)}),m(!1),se.message.success(\"\\u6392\\u5E8F\\u5DF2\\u4FDD\\u5B58\")}catch(N){}finally{r(!1)}},[l]),D=(0,j.useCallback)(async()=>{var U;let N=Qa(v);try{a(!0);let K=await Mn.post(\"/settings\",{searchDbLimit:N});y(Qa((U=K.data)==null?void 0:U.searchDbLimit)),x(!1),se.message.success(\"\\u641C\\u7D22\\u8BBE\\u7F6E\\u5DF2\\u4FDD\\u5B58\")}catch(K){}finally{a(!1)}},[v]),O=(0,j.useCallback)(N=>{y(Qa(N)),x(!0)},[]),F=(0,j.useCallback)(async N=>{try{await Mn.delete(\"/file/\".concat(encodeURIComponent(N))),se.message.success(\"\\u5DF2\\u5220\\u9664 \".concat(N)),await b()}catch(U){}},[b]),T=(0,j.useCallback)(N=>new Promise(U=>{se.Modal.confirm({title:\"\\u8986\\u76D6\\u5DF2\\u6709\\u6587\\u4EF6 \".concat(N,\"?\"),content:\"\\u540C\\u540D .db \\u6587\\u4EF6\\u5DF2\\u5B58\\u5728\\uFF0C\\u7EE7\\u7EED\\u4E0A\\u4F20\\u4F1A\\u66FF\\u6362\\u78C1\\u76D8\\u4E0A\\u7684\\u539F\\u6587\\u4EF6\\u3002\",okText:\"\\u8986\\u76D6\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\",onOk:()=>U(!0),onCancel:()=>U(!1)})}),[]),P=(0,j.useCallback)(async({file:N,onSuccess:U,onError:K,onProgress:de})=>{let ve=l.some(Ge=>Ge.name===N.name),Oe=!1;if(ve&&(Oe=await T(N.name),!Oe)){K==null||K(new Error(\"\\u7528\\u6237\\u53D6\\u6D88\\u8986\\u76D6\"));return}let Ke=new FormData;Ke.append(\"file\",N);try{s(!0),await Mn.post(\"/upload\".concat(Oe?\"?overwrite=1\":\"\"),Ke,{headers:{\"Content-Type\":\"multipart/form-data\"},onUploadProgress:Ge=>{Ge.total&&(de==null||de({percent:Math.round(Ge.loaded/Ge.total*100)}))}}),se.message.success(\"\".concat(Oe?\"\\u8986\\u76D6\":\"\\u4E0A\\u4F20\",\"\\u6210\\u529F: \").concat(N.name)),U==null||U({},N),await b()}catch(Ge){K==null||K(Ge)}finally{s(!1)}},[T,l,b]),V=(0,j.useCallback)(N=>/\\.db$/i.test(N.name)?!0:(se.message.error(\"\\u53EA\\u80FD\\u4E0A\\u4F20 .db \\u6587\\u4EF6\"),se.Upload.LIST_IGNORE),[]),E=(0,j.useMemo)(()=>[{title:\"#\",width:50,responsive:[\"sm\"],render:(N,U,K)=>j.default.createElement(cn,{type:\"secondary\"},K+1)},{title:\"\\u6587\\u4EF6\\u540D\",dataIndex:\"name\",render:N=>j.default.createElement(cn,{strong:!0,style:{wordBreak:\"break-all\"}},N)},{title:\"\\u5927\\u5C0F\",dataIndex:\"size_str\",width:90,responsive:[\"sm\"],render:N=>j.default.createElement(se.Tag,{color:\"blue\"},N)},{title:\"\\u4FEE\\u6539\\u65F6\\u95F4\",dataIndex:\"mtime\",width:180,responsive:[\"md\"],render:N=>j.default.createElement(cn,{type:\"secondary\",style:{fontSize:12}},kC(N))},{title:\"\\u64CD\\u4F5C\",width:132,fixed:\"right\",align:\"center\",render:(N,U,K)=>j.default.createElement(se.Space,{size:4},j.default.createElement(se.Tooltip,{title:\"\\u4E0A\\u79FB\"},j.default.createElement(se.Button,{size:\"small\",icon:j.default.createElement(bn,null),disabled:K===0,onClick:()=>S(K,-1)})),j.default.createElement(se.Tooltip,{title:\"\\u4E0B\\u79FB\"},j.default.createElement(se.Button,{size:\"small\",icon:j.default.createElement(hn,null),disabled:K===l.length-1,onClick:()=>S(K,1)})),j.default.createElement(se.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664 \".concat(U.name,\"?\"),description:\"\\u6587\\u4EF6\\u4F1A\\u4ECE\\u78C1\\u76D8\\u6C38\\u4E45\\u79FB\\u9664\",onConfirm:()=>F(U.name),okText:\"\\u5220\\u9664\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\"},j.default.createElement(se.Button,{size:\"small\",danger:!0,icon:j.default.createElement(qe,null)})))}],[l.length,S,F]);return j.default.createElement(se.Spin,{spinning:e,tip:\"\\u52A0\\u8F7D\\u4E2D...\"},j.default.createElement(se.Card,{title:\"\\u672C\\u5730 DB \\u6587\\u4EF6\\u7BA1\\u7406\",extra:j.default.createElement(se.Space,{wrap:!0},j.default.createElement(se.Upload,{customRequest:P,beforeUpload:V,accept:\".db\",showUploadList:!1,multiple:!0},j.default.createElement(se.Button,{type:\"primary\",icon:j.default.createElement(Or,null),loading:i},\"\\u4E0A\\u4F20 DB\")),j.default.createElement(se.Button,{icon:j.default.createElement(wn,null),onClick:b},\"\\u5237\\u65B0\"),j.default.createElement(se.Button,{type:\"primary\",ghost:!0,icon:j.default.createElement(rn,null),loading:n,disabled:!u,onClick:w},\"\\u4FDD\\u5B58\\u6392\\u5E8F\"))},j.default.createElement(se.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:16},message:j.default.createElement(cn,{style:{fontSize:13}},\"\\u4E0A\\u4F20\\u5230\\u56FA\\u5B9A\\u76EE\\u5F55\\uFF1A\",j.default.createElement(cn,{code:!0,copyable:!0},f||\"(\\u672A\\u52A0\\u8F7D)\")),description:j.default.createElement(\"div\",{style:{fontSize:12}},j.default.createElement(\"p\",{style:{margin:0}},\"1. \\u4EC5\\u8BC6\\u522B .db \\u6587\\u4EF6\\uFF0C\\u4E14\\u6587\\u4EF6\\u5927\\u5C0F \\u2265 1KB\"),j.default.createElement(\"p\",{style:{margin:0}},'2. \\u6392\\u5E8F\\u901A\\u8FC7 \\u2191\\u2193 \\u8C03\\u6574\\uFF0C\\u8C03\\u6574\\u540E\\u70B9\"\\u4FDD\\u5B58\\u6392\\u5E8F\"\\u6301\\u4E45\\u5316'),j.default.createElement(\"p\",{style:{margin:0}},\"3. \\u5220\\u9664\\u4F1A\\u7ACB\\u5373\\u4ECE\\u78C1\\u76D8\\u79FB\\u9664\\uFF0C\\u4E0D\\u53EF\\u6062\\u590D\"))}),j.default.createElement(se.Space,{wrap:!0,align:\"center\",style:{marginBottom:16}},j.default.createElement(cn,{strong:!0},\"\\u641C\\u7D22\\u8BBE\\u7F6E\"),j.default.createElement(cn,{type:\"secondary\"},\"\\u53EA\\u641C\\u7D22\\u6392\\u5E8F\\u524D\"),j.default.createElement(se.InputNumber,{min:1,step:1,precision:0,value:v,onChange:O,style:{width:120}}),j.default.createElement(cn,{type:\"secondary\"},\"\\u4E2A DB \\u6587\\u4EF6\"),j.default.createElement(se.Button,{icon:j.default.createElement(rn,null),loading:o,disabled:!h,onClick:D},\"\\u4FDD\\u5B58\\u8BBE\\u7F6E\")),l.length===0?j.default.createElement(se.Empty,{description:\"\\u8FD8\\u6CA1\\u6709 DB \\u6587\\u4EF6\\uFF0C\\u70B9\\u4E0A\\u4F20\\u5F00\\u59CB\"}):j.default.createElement(se.Table,{rowKey:\"name\",size:\"small\",dataSource:l,columns:E,pagination:!1,scroll:{x:420}})))}var Xp=j.default.memo(NC);var te=_(J(),1),ue=_(_e(),1);var Jp=_(Je(),1),{Text:dr}=ue.Typography,po=Jp.default.create({baseURL:\"/website/js\"});po.interceptors.response.use(e=>{var t,n;if(((t=e.data)==null?void 0:t.code)!==0){let r=((n=e.data)==null?void 0:n.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\";throw ue.message.error(r),new Error(r)}return e.data},e=>{var n,r;let t=((r=(n=e.response)==null?void 0:n.data)==null?void 0:r.message)||e.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\";return ue.message.error(t),Promise.reject(e)});function FC(e){if(!e)return\"-\";try{return new Date(Number(e)).toLocaleString()}catch(t){return\"-\"}}function AC(){let[e,t]=(0,te.useState)(!1),[n,r]=(0,te.useState)(!1),[o,a]=(0,te.useState)(!1),[i,s]=(0,te.useState)([]),[l,c]=(0,te.useState)(\"\"),[f,d]=(0,te.useState)(!1),u=(0,te.useCallback)(async()=>{var w,D;try{t(!0);let O=await po.get(\"/list\");s(((w=O.data)==null?void 0:w.files)||[]),c(((D=O.data)==null?void 0:D.dir)||\"\"),d(!1)}catch(O){}finally{t(!1)}},[]);(0,te.useEffect)(()=>{u()},[u]);let m=(0,te.useCallback)((w,D)=>{s(O=>{let F=[...O],T=w+D;return T<0||T>=F.length?O:([F[w],F[T]]=[F[T],F[w]],F)}),d(!0)},[]),h=(0,te.useCallback)(async()=>{try{r(!0),await po.put(\"/order\",{order:i.map(w=>w.name)}),d(!1),ue.message.success(\"\\u6392\\u5E8F\\u5DF2\\u4FDD\\u5B58\")}catch(w){}finally{r(!1)}},[i]),x=(0,te.useCallback)(async w=>{try{await po.delete(\"/file/\".concat(encodeURIComponent(w))),ue.message.success(\"\\u5DF2\\u5220\\u9664 \".concat(w)),await u()}catch(D){}},[u]),v=(0,te.useCallback)(w=>new Promise(D=>{ue.Modal.confirm({title:\"\\u8986\\u76D6\\u5DF2\\u6709\\u6587\\u4EF6 \".concat(w,\"?\"),content:\"\\u540C\\u540D .js \\u6587\\u4EF6\\u5DF2\\u5B58\\u5728\\uFF0C\\u7EE7\\u7EED\\u4E0A\\u4F20\\u4F1A\\u66FF\\u6362\\u78C1\\u76D8\\u4E0A\\u7684\\u539F\\u6587\\u4EF6\\u3002\",okText:\"\\u8986\\u76D6\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\",onOk:()=>D(!0),onCancel:()=>D(!1)})}),[]),y=(0,te.useCallback)(async({file:w,onSuccess:D,onError:O,onProgress:F})=>{let T=i.some(E=>E.name===w.name),P=!1;if(T&&(P=await v(w.name),!P)){O==null||O(new Error(\"\\u7528\\u6237\\u53D6\\u6D88\\u8986\\u76D6\"));return}let V=new FormData;V.append(\"file\",w);try{a(!0),await po.post(\"/upload\".concat(P?\"?overwrite=1\":\"\"),V,{headers:{\"Content-Type\":\"multipart/form-data\"},onUploadProgress:E=>{E.total&&(F==null||F({percent:Math.round(E.loaded/E.total*100)}))}}),ue.message.success(\"\".concat(P?\"\\u8986\\u76D6\":\"\\u4E0A\\u4F20\",\"\\u6210\\u529F: \").concat(w.name)),D==null||D({},w),await u()}catch(E){O==null||O(E)}finally{a(!1)}},[v,i,u]),b=(0,te.useCallback)(w=>/\\.js$/i.test(w.name)?!0:(ue.message.error(\"\\u53EA\\u80FD\\u4E0A\\u4F20 .js \\u6587\\u4EF6\"),ue.Upload.LIST_IGNORE),[]),S=(0,te.useMemo)(()=>[{title:\"#\",width:50,responsive:[\"sm\"],render:(w,D,O)=>te.default.createElement(dr,{type:\"secondary\"},O+1)},{title:\"\\u6587\\u4EF6\\u540D\",dataIndex:\"name\",render:(w,D)=>te.default.createElement(\"div\",null,te.default.createElement(dr,{strong:!0,style:{wordBreak:\"break-all\"}},w),te.default.createElement(\"br\",null),te.default.createElement(dr,{type:\"secondary\",style:{fontSize:12}},\"key: \",D.key))},{title:\"\\u5927\\u5C0F\",dataIndex:\"size_str\",width:90,responsive:[\"sm\"],render:w=>te.default.createElement(ue.Tag,{color:\"blue\"},w)},{title:\"\\u4FEE\\u6539\\u65F6\\u95F4\",dataIndex:\"mtime\",width:180,responsive:[\"md\"],render:w=>te.default.createElement(dr,{type:\"secondary\",style:{fontSize:12}},FC(w))},{title:\"\\u64CD\\u4F5C\",width:132,fixed:\"right\",align:\"center\",render:(w,D,O)=>te.default.createElement(ue.Space,{size:4},te.default.createElement(ue.Tooltip,{title:\"\\u4E0A\\u79FB\"},te.default.createElement(ue.Button,{size:\"small\",icon:te.default.createElement(bn,null),disabled:O===0,onClick:()=>m(O,-1)})),te.default.createElement(ue.Tooltip,{title:\"\\u4E0B\\u79FB\"},te.default.createElement(ue.Button,{size:\"small\",icon:te.default.createElement(hn,null),disabled:O===i.length-1,onClick:()=>m(O,1)})),te.default.createElement(ue.Popconfirm,{title:\"\\u786E\\u5B9A\\u5220\\u9664 \".concat(D.name,\"?\"),description:\"\\u6587\\u4EF6\\u4F1A\\u4ECE\\u78C1\\u76D8\\u6C38\\u4E45\\u79FB\\u9664\",onConfirm:()=>x(D.name),okText:\"\\u5220\\u9664\",okType:\"danger\",cancelText:\"\\u53D6\\u6D88\"},te.default.createElement(ue.Button,{size:\"small\",danger:!0,icon:te.default.createElement(qe,null)})))}],[i.length,m,x]);return te.default.createElement(ue.Spin,{spinning:e,tip:\"\\u52A0\\u8F7D\\u4E2D...\"},te.default.createElement(ue.Card,{title:\"\\u672C\\u5730 JS \\u6587\\u4EF6\\u7BA1\\u7406\",extra:te.default.createElement(ue.Space,{wrap:!0},te.default.createElement(ue.Upload,{customRequest:y,beforeUpload:b,accept:\"\",showUploadList:!1,multiple:!0},te.default.createElement(ue.Button,{type:\"primary\",icon:te.default.createElement(Or,null),loading:o},\"\\u4E0A\\u4F20 JS\")),te.default.createElement(ue.Button,{icon:te.default.createElement(wn,null),onClick:u},\"\\u5237\\u65B0\"),te.default.createElement(ue.Button,{type:\"primary\",ghost:!0,icon:te.default.createElement(rn,null),loading:n,disabled:!f,onClick:h},\"\\u4FDD\\u5B58\\u6392\\u5E8F\"))},te.default.createElement(ue.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:16},message:te.default.createElement(dr,{style:{fontSize:13}},\"\\u4E0A\\u4F20\\u5230\\u56FA\\u5B9A\\u76EE\\u5F55\\uFF1A\",te.default.createElement(dr,{code:!0,copyable:!0},l||\"(\\u672A\\u52A0\\u8F7D)\")),description:te.default.createElement(\"div\",{style:{fontSize:12}},te.default.createElement(\"p\",{style:{margin:0}},\"\\u4EC5\\u8BC6\\u522B .js \\u6587\\u4EF6\\uFF1B\\u6587\\u4EF6\\u540D\\u4F1A\\u4F5C\\u4E3A\\u7AD9\\u70B9 key \\u7684\\u57FA\\u7840\\u503C\"))}),i.length===0?te.default.createElement(ue.Empty,{description:\"\\u8FD8\\u6CA1\\u6709 JS \\u6587\\u4EF6\\uFF0C\\u70B9\\u4E0A\\u4F20\\u5F00\\u59CB\"}):te.default.createElement(ue.Table,{rowKey:\"name\",size:\"small\",dataSource:i,columns:S,pagination:!1,scroll:{x:420}})))}var Qp=te.default.memo(AC);var Se=_(J(),1),ke=_(_e(),1);var{useToken:PC}=ke.theme,Js=\"/website/alist_tvbox/config\";function _C(){let[e]=ke.Form.useForm(),[t,n]=(0,Se.useState)(!1),{token:r}=PC(),o=async()=>{n(!0);try{let l=await(await fetch(Js)).json();if(l.code===0){let c=l.data||{};e.setFieldsValue({base_url:c.base_url||\"\",token:c.token||\"\",custom_classes:c.custom_classes||\"\"})}}catch(s){console.error(\"\\u52A0\\u8F7D AListTvbox \\u914D\\u7F6E\\u5931\\u8D25:\",s),ke.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\")}finally{n(!1)}},a=async()=>{n(!0);try{let s=await e.validateFields(),l={base_url:String(s.base_url||\"\").trim(),token:String(s.token||\"\").trim(),custom_classes:String(s.custom_classes||\"\").trim()},f=await(await fetch(Js,{method:\"PUT\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(l)})).json();if(f.code===0)ke.message.success(\"AListTvbox \\u914D\\u7F6E\\u4FDD\\u5B58\\u6210\\u529F\");else throw new Error(f.message||\"\\u4FDD\\u5B58\\u5931\\u8D25\")}catch(s){console.error(\"\\u4FDD\\u5B58\\u5931\\u8D25:\",s),ke.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \".concat(s.message))}finally{n(!1)}},i=async()=>{n(!0);try{let l=await(await fetch(Js,{method:\"DELETE\"})).json();if(l.code===0)ke.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\"),await o();else throw new Error(l.message)}catch(s){ke.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25: \"+s.message)}finally{n(!1)}};return(0,Se.useEffect)(()=>{o()},[]),Se.default.createElement(ke.ConfigProvider,{theme:{token:{borderRadius:8,colorPrimary:\"#1677ff\"},components:{Form:{labelFontSize:13,verticalLabelPadding:\"0 0 6px\"}}}},Se.default.createElement(\"div\",{style:{maxWidth:1200,margin:\"0 auto\"}},Se.default.createElement(\"div\",{style:{marginBottom:24}},Se.default.createElement(ke.Alert,{message:\"AListTvbox \\u8BF4\\u660E\",description:Se.default.createElement(\"div\",null,Se.default.createElement(\"p\",null,\"\\u2022 \",Se.default.createElement(\"strong\",null,\"BASE_URL\"),\"\\uFF1AAList Tvbox \\u670D\\u52A1\\u5730\\u5740\\uFF0C\\u9ED8\\u8BA4 http://127.0.0.1:4567\"),Se.default.createElement(\"p\",null,\"\\u2022 \",Se.default.createElement(\"strong\",null,\"Token\"),\"\\uFF1AAList\\u7AD9\\u70B9 \\u2192 \\u7F16\\u8F91 \\u2192 \\u8BA4\\u8BC1Token\"),Se.default.createElement(\"p\",null,\"\\u2022 \",Se.default.createElement(\"strong\",null,\"\\u81EA\\u5B9A\\u4E49\\u5206\\u7C7B\"),'\\uFF1AJSON \\u6570\\u7EC4\\uFF0C\\u5982 [{\"type_id\":\"1\",\"type_name\":\"\\u7535\\u5F71\"}]\\uFF0C\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4\\u5206\\u7C7B')),type:\"info\",showIcon:!0,icon:Se.default.createElement(Hn,null),style:{background:r.colorPrimaryBg,border:\"1px solid \".concat(r.colorPrimaryBorder),borderRadius:r.borderRadiusLG,marginBottom:24}})),Se.default.createElement(ke.Form,{form:e,layout:\"vertical\"},Se.default.createElement(ke.Form.Item,{label:Se.default.createElement(\"span\",null,Se.default.createElement(vn,{style:{marginRight:6}}),\"BASE_URL\"),name:\"base_url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 BASE_URL\"}],tooltip:\"AList Tvbox \\u63A5\\u53E3\\u5730\\u5740\\uFF0C\\u5982 http://127.0.0.1:4567\"},Se.default.createElement(ke.Input,{placeholder:\"http://127.0.0.1:4567\"})),Se.default.createElement(ke.Form.Item,{label:Se.default.createElement(\"span\",null,Se.default.createElement(qn,{style:{marginRight:6}}),\"Token (XIAOYA_TOKEN)\"),name:\"token\",tooltip:\"AListTvbox \\u8BA4\\u8BC1Token\"},Se.default.createElement(ke.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165 AListTvbox Token\",rows:2,style:{fontFamily:\"monospace\",fontSize:13}})),Se.default.createElement(ke.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u5206\\u7C7B (JSON)\",name:\"custom_classes\",tooltip:'JSON \\u6570\\u7EC4\\uFF0C\\u5982 [{\"type_id\":\"1\",\"type_name\":\"\\u7535\\u5F71\"}]\\uFF0C\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4\\u5206\\u7C7B'},Se.default.createElement(ke.Input.TextArea,{rows:4,placeholder:'[{\"type_id\":\"1\",\"type_name\":\"\\u7535\\u5F71\"}]',style:{fontFamily:\"monospace\",fontSize:12}})),Se.default.createElement(\"div\",{style:{position:\"sticky\",bottom:0,background:r.colorBgContainer,padding:\"16px 0\",borderTop:\"1px solid \".concat(r.colorBorderSecondary),marginTop:24,zIndex:10}},Se.default.createElement(ke.Space,{size:\"middle\"},Se.default.createElement(ke.Button,{type:\"primary\",onClick:a,loading:t,size:\"large\",style:{minWidth:120,height:40,boxShadow:\"0 2px 6px rgba(22,119,255,0.2)\"}},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),Se.default.createElement(ke.Button,{onClick:i,loading:t,size:\"large\",style:{height:40}},\"\\u91CD\\u7F6E\\u9ED8\\u8BA4\"))))))}var Zp=_C;var he=_(J(),1),me=_(_e(),1),Rp=_(Je(),1);var{Paragraph:BC,Text:Za}=me.Typography,LC=new Set([\"sharemount\",\"115share\",\"alishare\",\"quarkshare\",\"ucshare\",\"123share\",\"139share\",\"baidushare\",\"smb\"]),MC={title:\"\\u5408\\u96C6\\u6302\\u8F7D\\u914D\\u7F6E\",baseURL:\"/website/sharemount\",success:\"\\u5408\\u96C6\\u6302\\u8F7D\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\",maxBatchSize:5e3,label:\"\\u6302\\u8F7D\\u5217\\u8868\",example:\"115\\u5408\\u96C6 \\u539F\\u76D8 https://115.com/s/example?password=1234\",example2:\"\\u963F\\u91CC\\u5408\\u96C6 \\u539F\\u76D8/\\u7EAA\\u5F55\\u7247 https://www.alipan.com/s/example\",example3:\"SMB\\u5408\\u96C6 # smb://192.168.1.10/Videos\"},VC={mycloud:{title:\"\\u6211\\u7684\\u7F51\\u76D8\",baseURL:\"/website/mycloud\",success:\"\\u6211\\u7684\\u7F51\\u76D8\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\",label:\"\\u7F51\\u76D8\\u5206\\u7C7B\\u5217\\u8868\",hideBatch:!0,example:\"\\u6211\\u7684\\u767E\\u5EA6 0\\u3001\\u6211\\u7684\\u5938\\u514B 0\\u3001\\u6211\\u7684\\u963F\\u91CC 0\\u3001\\u6211\\u7684115 0\\u3001\\u6211\\u7684123 0\\u3001\\u6211\\u7684\\u5929\\u7FFC 0\\u3001\\u6211\\u7684UC 0\\u3001\\u6211\\u7684\\u8FC5\\u96F7 0\\u3001\\u6211\\u7684\\u5149\\u9E2D 0\",example2:\"\\u6211\\u7684\\u767E\\u5EA6 /\\u7535\\u5F71\\u3001\\u6211\\u7684\\u5938\\u514B 63f8xxxx\\u3001\\u6211\\u7684\\u963F\\u91CC 642fxxxx\\u3001\\u6211\\u7684115 258xxxx\\u3001\\u6211\\u7684123 123456\\u3001\\u6211\\u7684\\u5929\\u7FFC 67890\\u3001\\u6211\\u7684UC 63f8xxxx\\u3001\\u6211\\u7684\\u8FC5\\u96F7 VODxxxxx\",desc:\"\\u6309\\u987A\\u5E8F\\u586B\\u5199\\u5206\\u7C7B\\uFF0C\\u683C\\u5F0F\\u4E3A\\u201C\\u5206\\u7C7B\\u540D\\u79F0 \\u76EE\\u5F55\\u6807\\u8BC6\\u201D\\uFF0C\\u652F\\u6301\\u6362\\u884C\\u3001\\u987F\\u53F7\\u6216\\u9017\\u53F7\\u5206\\u9694\\uFF1B0 \\u8868\\u793A\\u6302\\u8F7D\\u6839\\u76EE\\u5F55\\u3002\\u767E\\u5EA6\\u56FA\\u5B9A\\u76EE\\u5F55\\u586B\\u5199\\u76EE\\u5F55\\u8DEF\\u5F84\\uFF0C\\u5982 /\\u7535\\u5F71\\uFF1B\\u5176\\u4ED6\\u7F51\\u76D8\\u586B\\u5199\\u76EE\\u5F55 ID\\uFF1A\\u963F\\u91CC file_id\\uFF0C\\u5938\\u514B\\u548C UC \\u586B fid\\uFF0C115 \\u586B cid\\uFF0C123 \\u586B FileId\\uFF0C\\u5929\\u7FFC\\u586B\\u76EE\\u5F55 id\\uFF0C\\u8FC5\\u96F7\\u548C\\u5149\\u9E2D\\u586B\\u6587\\u4EF6\\u5939 id\\u3002\\u9700\\u8981\\u6302\\u8F7D\\u591A\\u4E2A\\u76EE\\u5F55\\u65F6\\u91CD\\u590D\\u586B\\u5199\\u540C\\u4E00\\u5206\\u7C7B\\u540D\\uFF0C\\u4F8B\\u5982\\u201C\\u6211\\u7684\\u767E\\u5EA6 /\\u7535\\u5F71\\u3001\\u6211\\u7684\\u767E\\u5EA6 /\\u7535\\u89C6\\u5267\\u201D\\uFF1B\\u5206\\u7C7B\\u5217\\u8868\\u53EA\\u663E\\u793A\\u4E00\\u4E2A\\u201C\\u6211\\u7684\\u767E\\u5EA6\\u201D\\uFF0C\\u76EE\\u5F55\\u901A\\u8FC7\\u8BE5\\u5206\\u7C7B\\u4E0B\\u7684\\u201C\\u76EE\\u5F55\\u201D\\u7B5B\\u9009\\u5207\\u6362\\u3002\"}};function mo({type:e}){let t=e===\"mycloud\"?VC.mycloud:MC,n=Rp.default.create({baseURL:t.baseURL});n.interceptors.response.use(u=>{if(u.data.code!==0)throw me.message.error(u.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\"),new Error(u.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");return u.data.data});let[r]=me.Form.useForm(),[o,a]=(0,he.useState)(!1),[i,s]=(0,he.useState)(!1),l=LC.has(e)||!e,c=async()=>{a(!0);try{let u=await n.get(\"/settings\");r.setFieldsValue(u?C({},u):{text:\"\",searchLimit:30,searchMaxShares:10,searchIntervalMs:600,searchCacheTtlMs:6e5})}catch(u){console.error(\"[\".concat(e,\"] load settings failed\"),u),me.message.error(\"\\u52A0\\u8F7D\\u5931\\u8D25\\uFF1A\".concat((u==null?void 0:u.message)||u))}finally{a(!1)}},f=async()=>{let u=await r.validateFields(),m=l?(b=>{var S=b,{batchTiers:h,batchSize:x,batchIntervalMs:v}=S,y=$t(S,[\"batchTiers\",\"batchSize\",\"batchIntervalMs\"]);return y})(u):u;s(!0);try{let h=await n.post(\"/settings\",m);r.setFieldsValue(h),me.message.success(t.success)}catch(h){console.error(\"[\".concat(e,\"] save settings failed\"),h),me.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((h==null?void 0:h.message)||h))}finally{s(!1)}};(0,he.useEffect)(()=>{c()},[e]);let d=he.default.createElement(me.Space,{direction:\"vertical\",size:4},he.default.createElement(Za,null,\"\\u5206\\u7C7B\\u548C\\u76EE\\u5F55\\u987A\\u5E8F\\u6309\\u914D\\u7F6E\\u884C\\u9996\\u6B21\\u51FA\\u73B0\\u7684\\u987A\\u5E8F\\u751F\\u6210\\uFF1BSMB\\u5408\\u96C6\\u4F7F\\u7528 smb:// \\u94FE\\u63A5\\uFF0C\\u5176\\u5B83\\u5408\\u96C6\\u4F7F\\u7528 http(s) \\u94FE\\u63A5\\u3002\"));return he.default.createElement(me.Form,{form:r,layout:\"vertical\",disabled:o},he.default.createElement(me.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:12},message:t.title,description:l?d:t.desc}),he.default.createElement(me.Form.Item,{name:\"text\",label:t.label||\"\\u5206\\u4EAB\\u94FE\\u63A5\\u5217\\u8868\",rules:[{required:!1}],extra:he.default.createElement(me.Space,{direction:\"vertical\",size:2},he.default.createElement(Za,{type:\"secondary\"},\"\\u793A\\u4F8B\\uFF1A\",t.example),he.default.createElement(Za,{type:\"secondary\"},\"\\u793A\\u4F8B\\uFF1A\",t.example2),l&&he.default.createElement(Za,{type:\"secondary\"},\"\\u793A\\u4F8B\\uFF1A\",t.example3))},he.default.createElement(me.Input.TextArea,{rows:l?14:10,placeholder:l?\"\".concat(t.example,\"\\n\").concat(t.example2,\"\\n\").concat(t.example3):\"\".concat(t.example,\"\\n\").concat(t.example2)})),!t.hideBatch&&(l?he.default.createElement(he.default.Fragment,null,he.default.createElement(me.Divider,{orientation:\"left\",plain:!0},\"115\\u641C\\u7D22\"),he.default.createElement(BC,{type:\"secondary\",style:{marginBottom:12}},\"\\u4EC5 115\\u5408\\u96C6 \\u4F7F\\u7528\\u8FD9\\u4E9B\\u641C\\u7D22\\u53C2\\u6570\\uFF1B\\u5176\\u5B83\\u5408\\u96C6\\u4FDD\\u6301\\u4E0D\\u53EF\\u641C\\u7D22\\u3002\"),he.default.createElement(me.Space,{align:\"start\",wrap:!0},he.default.createElement(me.Form.Item,{name:\"searchLimit\",label:\"\\u6BCF\\u6B21\\u641C\\u7D22\\u6570\\u91CF\",initialValue:30,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u6BCF\\u6B21\\u641C\\u7D22\\u6570\\u91CF\"}]},he.default.createElement(me.InputNumber,{min:1,max:100,style:{width:160}})),he.default.createElement(me.Form.Item,{name:\"searchMaxShares\",label:\"\\u641C\\u7D22\\u94FE\\u63A5\\u6570\\u91CF\",initialValue:10,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u94FE\\u63A5\\u6570\\u91CF\"}]},he.default.createElement(me.InputNumber,{min:1,style:{width:160}})),he.default.createElement(me.Form.Item,{name:\"searchIntervalMs\",label:\"\\u641C\\u7D22\\u95F4\\u9694\\uFF08\\u6BEB\\u79D2\\uFF09\",initialValue:600,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u95F4\\u9694\"}]},he.default.createElement(me.InputNumber,{min:0,max:5e3,step:100,style:{width:180}})),he.default.createElement(me.Form.Item,{name:\"searchCacheTtlMs\",label:\"\\u641C\\u7D22\\u7F13\\u5B58\\uFF08\\u6BEB\\u79D2\\uFF09\",initialValue:6e5,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u7F13\\u5B58\\u65F6\\u95F4\"}]},he.default.createElement(me.InputNumber,{min:0,max:36e5,step:6e4,style:{width:180}})))):he.default.createElement(me.Space,{align:\"start\",wrap:!0},he.default.createElement(me.Form.Item,{name:\"batchSize\",label:\"\\u6BCF\\u6279\\u8BFB\\u53D6\\u6570\\u91CF\",initialValue:500,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u6BCF\\u6279\\u8BFB\\u53D6\\u6570\\u91CF\"}]},he.default.createElement(me.InputNumber,{min:1,max:t.maxBatchSize,style:{width:160}})),he.default.createElement(me.Form.Item,{name:\"batchIntervalMs\",label:\"\\u6279\\u6B21\\u95F4\\u9694\\uFF08\\u6BEB\\u79D2\\uFF09\",initialValue:1e3,rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u6279\\u6B21\\u95F4\\u9694\"}]},he.default.createElement(me.InputNumber,{min:0,max:1e4,step:100,style:{width:180}})))),he.default.createElement(\"div\",{style:{marginTop:8}},he.default.createElement(me.Space,null,he.default.createElement(me.Button,{type:\"primary\",onClick:f,loading:i},\"\\u4FDD\\u5B58\"),he.default.createElement(me.Button,{onClick:c,loading:o},\"\\u91CD\\u65B0\\u52A0\\u8F7D\"))))}var zC=[{key:\"wogg\",name:\"\\u73A9\\u5076\",api:\"/wogg/urls\"},{key:\"muou\",name:\"\\u6728\\u5076\",api:\"/muou/urls\"},{key:\"erxiao\",name:\"\\u4E8C\\u5C0F\",api:\"/erxiao/urls\"},{key:\"zhizhen\",name:\"\\u81F3\\u81FB\",api:\"/zhizhen/urls\"},{key:\"ouge\",name:\"\\u6B27\\u6B4C\",api:\"/ouge/urls\"},{key:\"labi\",name:\"\\u8721\\u7B14\",api:\"/labi/urls\"},{key:\"huban\",name:\"\\u864E\\u6591\",api:\"/huban/urls\"},{key:\"kuaiying\",name:\"\\u5FEB\\u6620\",api:\"/kuaiying/urls\"},{key:\"duoduo\",name:\"\\u591A\\u591A\",api:\"/duoduo/urls\"},{key:\"shandian\",name:\"\\u95EA\\u7535\",api:\"/shandian/urls\"},{key:\"wouniu\",name:\"\\u8717\\u725B\",api:\"/wouniu/urls\"}],$C=()=>fe.default.createElement(un.Collapse,{defaultActiveKey:[\"wogg\"],items:zC.map(e=>({key:e.key,label:e.name,children:fe.default.createElement(Ra,{api:e.api,name:e.name})}))}),UC=e=>{let t=e.startsWith(\"nodejs_\")?e.substring(7):e,r=(a=>a===\"alist_tvbox\"||a.startsWith(\"alist_tvbox_\")?\"alist_tvbox\":a.startsWith(\"emby_\")?\"emby\":a.startsWith(\"alist_\")?\"alist\":a.startsWith(\"webdav_\")?\"webdav\":a===\"sharemount\"?\"sharemount\":a===\"115share\"?\"115share\":a===\"alishare\"?\"alishare\":a===\"quarkshare\"?\"quarkshare\":a===\"ucshare\"?\"ucshare\":a===\"123share\"?\"123share\":a===\"139share\"?\"139share\":a===\"baidushare\"?\"baidushare\":a===\"smb\"?\"smb\":a===\"mycloud\"?\"mycloud\":a)(t);return[\"bili_all\",\"tgchannel\",\"tgsou\",\"pansou\",\"panlian\",\"filejin\",\"pan1\",\"guangyaqsxy\",\"jying\",\"live\",\"zhuiju\",\"yingchao\",\"emby\",\"alist\",\"webdav\",\"alist_tvbox\",\"sharemount\",\"115share\",\"alishare\",\"quarkshare\",\"ucshare\",\"123share\",\"139share\",\"baidushare\",\"smb\",\"mycloud\",\"uc-tv\",\"dudb\",\"js\",\"wanoujuhe\",\"leijing\"].includes(r)},WC=({sourceKey:e,sourceName:t})=>{let n=e.startsWith(\"nodejs_\")?e.substring(7):e,o=(a=>a===\"alist_tvbox\"||a.startsWith(\"alist_tvbox_\")?\"alist_tvbox\":a.startsWith(\"emby_\")?\"emby\":a.startsWith(\"alist_\")?\"alist\":a.startsWith(\"webdav_\")?\"webdav\":a===\"sharemount\"?\"sharemount\":a===\"115share\"?\"115share\":a===\"alishare\"?\"alishare\":a===\"quarkshare\"?\"quarkshare\":a===\"ucshare\"?\"ucshare\":a===\"123share\"?\"123share\":a===\"139share\"?\"139share\":a===\"baidushare\"?\"baidushare\":a===\"smb\"?\"smb\":a===\"mycloud\"?\"mycloud\":a)(n);switch(o){case\"bili_all\":return fe.default.createElement(Wf,null);case\"tgchannel\":return fe.default.createElement(Zs,null);case\"tgsou\":return fe.default.createElement(Qs,null);case\"pansou\":return fe.default.createElement(nl,null);case\"panlian\":return fe.default.createElement(Gs,null);case\"filejin\":return fe.default.createElement(js,null);case\"pan1\":return fe.default.createElement(Hs,null);case\"guangyaqsxy\":return fe.default.createElement(qs,null);case\"jying\":return fe.default.createElement(Ys,null);case\"live\":return fe.default.createElement(Dp,null);case\"zhuiju\":return fe.default.createElement(Ks,null);case\"yingchao\":return fe.default.createElement(Xs,null);case\"emby\":return fe.default.createElement(tl,null);case\"alist\":return fe.default.createElement(Ip,null);case\"webdav\":return fe.default.createElement(Ep,null);case\"alist_tvbox\":return fe.default.createElement(Zp,null);case\"sharemount\":return fe.default.createElement(mo,{type:\"sharemount\"});case\"alishare\":case\"quarkshare\":case\"ucshare\":case\"123share\":case\"139share\":case\"baidushare\":case\"smb\":case\"115share\":return fe.default.createElement(mo,{type:o});case\"mycloud\":return fe.default.createElement(mo,{type:\"mycloud\"});case\"uc-tv\":return fe.default.createElement(Rs,null);case\"dudb\":return fe.default.createElement(Xp,null);case\"js\":return fe.default.createElement(Qp,null);case\"wanoujuhe\":return fe.default.createElement($C,null);case\"leijing\":return fe.default.createElement(Ra,{api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"});default:return fe.default.createElement(\"p\",null,\"\\u65E0\\u914D\\u7F6E\\u754C\\u9762\")}},GC=()=>{let[e,t]=(0,fe.useState)(!1),[n,r]=(0,fe.useState)(null),o=s=>{r(s),t(!0)},a=()=>{t(!1),r(null)},i=(0,fe.useMemo)(()=>[{title:\"\\u914D\\u7F6E\",key:\"action\",render:(s,l)=>UC(l.key)?fe.default.createElement(un.Space,{size:\"middle\"},fe.default.createElement(un.Button,{type:\"primary\",size:\"small\",icon:fe.default.createElement(yr,null),onClick:()=>o(l)})):null,width:80,align:\"center\"}],[]);return fe.default.createElement(fe.default.Fragment,null,fe.default.createElement(el,{extraColumns:i}),fe.default.createElement(un.Modal,{title:n?\"\\u4FEE\\u6539 \".concat(n.name,\" \\u914D\\u7F6E\"):\"\\u4FEE\\u6539\\u914D\\u7F6E\",open:e,onCancel:a,footer:null,destroyOnClose:!0,width:800,className:\"force-light-form-label\"},n&&fe.default.createElement(WC,{sourceKey:n.key,sourceName:n.name})))},em=GC;var st=Object.freeze({ali:Object.freeze({original:\"ali.original\",rapid115:\"ali.rapid115\"}),123:Object.freeze({direct:\"123.direct\",original:\"123.original\"}),115:Object.freeze({original:\"115.original\",rapid123:\"115.rapid123\"}),uc:Object.freeze({unlimited:\"uc.unlimited\",original:\"uc.original\"})}),rl=Object.freeze({ali:Object.freeze([st.ali.original,st.ali.rapid115]),123:Object.freeze([st[123].direct,st[123].original]),115:Object.freeze([st[115].original,st[115].rapid123]),uc:Object.freeze([st.uc.unlimited,st.uc.original])}),tm=Object.freeze({[st.ali.original]:\"\\u963F\\u91CC\",[st.ali.rapid115]:\"\\u79D2\\u4F20115\",[st[123].direct]:\"123\\u65E0\\u9650\",[st[123].original]:\"P123\",[st[115].original]:\"P115\",[st[115].rapid123]:\"\\u79D2\\u4F20123\",[st.uc.unlimited]:\"UC\\u65E0\\u9650\",[st.uc.original]:\"UC\"});function nm(e,t){let n=rl[e];if(!n)return[];let r=new Set(n),o=new Set,a=[];for(let i of Array.isArray(t)?t:[])!r.has(i)||o.has(i)||(o.add(i),a.push(i));for(let i of n)o.has(i)||(o.add(i),a.push(i));return a}var{TabPane:cr}=g.Tabs,jC=[\"button\",\"input\",\"textarea\",\"select\",\"option\",\"a\",'[contenteditable=\"true\"]','[role=\"button\"]','[role=\"switch\"]','[role=\"checkbox\"]','[role=\"combobox\"]'].join(\",\"),om=({nativeEvent:e,currentTarget:t})=>{let n=e==null?void 0:e.target,r=n instanceof Element?n.closest(jC):null;return!r||r===t},ho=class extends qt{};ho.activators=qt.activators.map(e=>I(C({},e),{handler:(t,n)=>om(t)&&e.handler(t,n)}));var bo=class extends Yt{};bo.activators=Yt.activators.map(e=>I(C({},e),{handler:(t,n)=>om(t)&&e.handler(t,n)}));var pe=xo.default.create({baseURL:\"/website\"});pe.interceptors.response.use(function(e){if(e.data.code!==0){g.message.error(e.data.message);let t=new Error(e.data.message||\"\\u8BF7\\u6C42\\u5931\\u8D25\");throw t.responseData=e.data,t}else return e.data.data},function(e){return Promise.reject(e)});g.message.config({top:\"40%\"});function al({src:e}){let[t,n]=p.default.useState(\"\"),r=t?\"\".concat(e).concat(e.includes(\"?\")?\"&\":\"?\",\"_qr=\").concat(encodeURIComponent(t)):Uc;return p.default.createElement(\"img\",{src:r,alt:\"\\u70B9\\u51FB\\u5237\\u65B0\\u4E8C\\u7EF4\\u7801\",title:\"\\u70B9\\u51FB\\u5237\\u65B0\\u4E8C\\u7EF4\\u7801\",onClick:()=>{n(\"\".concat(Date.now(),\"-\").concat(Math.random().toString(36).slice(2)))}})}function Kt({qrcodeUrl:e,cacheUrl:t}){let[n,r]=p.default.useState(\"\"),o=async()=>{let s=await pe.post(t);r(s)},a=async()=>{await pe.put(t,{cookie:n}),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},i=s=>{(0,ei.default)(s),g.message.success(\"\\u590D\\u5236\\u6210\\u529F\")};return(0,p.useEffect)(()=>{pe.get(t).then(s=>{r(s)})},[]),p.default.createElement(\"div\",{className:\"qrcodeCard\"},p.default.createElement(al,{src:e}),p.default.createElement(g.Divider,null,p.default.createElement(g.Button,{onClick:o},\"\\u626B\\u7801\\u540E\\u70B9\\u6211\")),p.default.createElement(g.Input.TextArea,{value:n,onChange:s=>r(s.target.value),rows:4}),p.default.createElement(\"div\",{className:\"btns\"},p.default.createElement(g.Button,{onClick:()=>i(n),color:\"cyan\",variant:\"solid\",style:{marginRight:24},size:\"large\"},\"\\u590D\\u5236\"),p.default.createElement(g.Button,{onClick:a,type:\"primary\",size:\"large\"},\"\\u5165\\u5E93\")))}function Vs(){let[e,t]=p.default.useState({token:\"\"}),n=\"/ali/token\",r=async()=>{let i=await pe.post(n);t(i)},o=async()=>{await pe.put(n,{data:e}),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},a=i=>{(0,ei.default)(i.token||\"\"),g.message.success(\"\\u590D\\u5236\\u6210\\u529F\")};return(0,p.useEffect)(()=>{pe.get(n).then(i=>{t(i)})},[]),p.default.createElement(\"div\",{className:\"qrcodeCard\"},p.default.createElement(al,{src:\"/website/ali/qrcode\"}),p.default.createElement(g.Divider,null,p.default.createElement(g.Button,{onClick:r},\"\\u626B\\u7801\\u540E\\u70B9\\u6211\")),p.default.createElement(g.Input.TextArea,{value:e.token||\"\",onChange:i=>t(I(C({},e),{token:i.target.value})),rows:4}),p.default.createElement(\"div\",{className:\"btns\"},p.default.createElement(g.Button,{onClick:()=>a(e),color:\"cyan\",variant:\"solid\",style:{marginRight:24},size:\"large\"},\"\\u590D\\u5236\"),p.default.createElement(g.Button,{onClick:o,type:\"primary\",size:\"large\"},\"\\u5165\\u5E93\")))}function Ra({api:e,name:t}){let[n]=g.Form.useForm(),r={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},o={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},a=async()=>{let l=await pe.get(e);n.setFieldsValue({urls:l})},i=async()=>{let l=await n.validateFields();try{await pe.put(e,l.urls),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(c){console.error(c),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},s=async()=>{try{await pe.delete(e),a(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(l){console.error(l),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}};return(0,p.useEffect)(()=>{a()},[]),p.default.createElement(g.Form,C({form:n},r),p.default.createElement(g.Alert,{message:\"\\u542F\\u52A8\\u65F6\\u5C06\\u81EA\\u52A8\\u9009\\u62E9\\u901F\\u5EA6\\u6700\\u5FEB\\u7684\\u57DF\\u540D\",type:\"info\",style:{marginBottom:12}}),p.default.createElement(g.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(l,{add:c,remove:f},{errors:d})=>p.default.createElement(p.default.Fragment,null,l.map((u,m)=>p.default.createElement(g.Form.Item,I(C({label:m===0?\"\\u57DF\\u540D\\u5217\\u8868\":\"\",required:!1,key:u.key},m===0?r:o),{style:{marginBottom:12}}),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},u),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\".concat(t,\"\\u57DF\\u540D\")}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\".concat(t,\"\\u57DF\\u540D\"),style:{width:\"100%\"}})),l.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(yn,null),onClick:()=>f(u.name)})))),p.default.createElement(g.Form.Item,C({label:\"\"},o),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>c(),block:!0,icon:p.default.createElement(ot,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),p.default.createElement(g.Form.ErrorList,{errors:d})))),p.default.createElement(g.Form.Item,C({label:null},o),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:i,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:s,block:!0},\"\\u91CD\\u7F6E\"))))}function zs({api:e}){let[t]=g.Form.useForm(),n=async()=>{try{let r=await t.validateFields();await pe.put(e,r),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(r){console.error(r),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(r==null?void 0:r.message))}};return(0,p.useEffect)(()=>{pe.get(e).then(r=>{t.setFieldsValue(r)})},[]),p.default.createElement(g.Form,{form:t,layout:\"vertical\"},p.default.createElement(g.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},p.default.createElement(g.Input,null)),p.default.createElement(g.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},p.default.createElement(g.Input.Password,null)),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Button,{type:\"primary\",onClick:n,block:!0},\"\\u4FDD\\u5B58\")))}var ol=e=>{if(!e)return\"\";try{let t=new URL(e);return t.searchParams.get(\"redirect_uri\")||t.searchParams.set(\"redirect_uri\",\"\".concat(window.location.origin,\"/website/xunlei/verify-callback\")),t.toString()}catch(t){return e}};function $s({api:e}){let[t]=g.Form.useForm(),[n,r]=p.default.useState(!1),[o,a]=p.default.useState(!1),[i,s]=p.default.useState(\"\"),[l,c]=p.default.useState({verificationId:\"\",expiryAt:0,remaining:null}),[f,d]=p.default.useState(0),[u,m]=p.default.useState(\"\"),[h,x]=p.default.useState(!1),v=p.default.useRef(null),y=()=>{s(\"\"),c({verificationId:\"\",expiryAt:0,remaining:null}),t.setFieldValue(\"verificationCode\",\"\"),m(\"\"),x(!1)},b=async()=>{var V,E,N;let P=await pe.get(e);if(t.setFieldsValue({phone:P.username||\"\",password:P.password||\"\",verificationCode:\"\"}),(V=P==null?void 0:P.verification)!=null&&V.verificationId){c({verificationId:P.verification.verificationId,expiryAt:Number(P.verification.expiresAt||0)||0,remaining:(E=P.verification.remaining)!=null?E:null}),x(!1),m(\"\"),s(((N=P==null?void 0:P.verification)==null?void 0:N.message)||\"\\u5DF2\\u6062\\u590D\\u4E0A\\u4E00\\u6B21\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u4F1A\\u8BDD\\uFF0C\\u53EF\\u76F4\\u63A5\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\");return}c({verificationId:\"\",expiryAt:0,remaining:null})},S=()=>{v.current&&!v.current.closed&&v.current.close(),v.current=null},w=(P,V)=>{x(!1),m(\"\"),s(\"\"),S(),c({verificationId:P.verificationId,expiryAt:Number(P.expiresAt||0)||Date.now()+Number(P.expiresIn||300)*1e3,remaining:P.remaining}),t.setFieldValue(\"verificationCode\",\"\"),g.message.success(V)},D=P=>{var E;if(!P)return;let V=window.open(P,\"xunlei-security-verify\",\"width=520,height=780\");if(V){v.current=V,(E=V.focus)==null||E.call(V);return}g.message.warning(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u5B89\\u5168\\u9A8C\\u8BC1\\u7A97\\u53E3\\uFF0C\\u8BF7\\u624B\\u52A8\\u6253\\u5F00\\u4E0B\\u65B9\\u94FE\\u63A5\")},O=async({phone:P,password:V})=>{let E=await pe.post(\"/xunlei/verification\",{username:P,password:V});if((E==null?void 0:E.status)===\"auto_logged_in\"){y(),S(),g.message.success(\"\\u8D26\\u53F7\\u65E0\\u9700\\u77ED\\u4FE1\\u9A8C\\u8BC1\\uFF0C\\u5DF2\\u76F4\\u63A5\\u767B\\u5F55\\u6210\\u529F\"),await b();return}if((E==null?void 0:E.status)===\"verify_required\"){let N=ol(E.verifyUrl||\"\");s(\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\"),c({verificationId:\"\",expiryAt:0,remaining:null}),t.setFieldValue(\"verificationCode\",\"\"),x(!0),m(N),N?(D(N),g.message.info(\"\\u5DF2\\u6253\\u5F00\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\")):g.message.warning(\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\uFF0C\\u518D\\u7B49\\u5F85\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u4E0B\\u53D1\");return}if((E==null?void 0:E.status)===\"sent\"){w(E,(E==null?void 0:E.message)||(E!=null&&E.reused?\"\\u53D1\\u9001\\u8FC7\\u4E8E\\u9891\\u7E41\\uFF0C\\u7EE7\\u7EED\\u4F7F\\u7528\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\":\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u770B\\u77ED\\u4FE1\"));return}throw new Error((E==null?void 0:E.message)||\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\")},F=async()=>{try{let P=await t.validateFields([\"phone\",\"password\"]);r(!0),await O(P)}catch(P){console.error(P),s(\"\\u53D1\\u9001\\u5931\\u8D25\\uFF1A\".concat((P==null?void 0:P.message)||\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\")),g.message.error(\"\\u53D1\\u9001\\u5931\\u8D25\\uFF1A\".concat(P==null?void 0:P.message))}finally{r(!1)}},T=async()=>{var P,V;try{let E=await t.validateFields([\"phone\",\"password\",\"verificationCode\"]);if(!l.verificationId&&!u&&!h){g.message.warning(\"\\u8BF7\\u5148\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\");return}if(l.verificationId&&f<=0){g.message.warning(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u53D1\\u9001\");return}a(!0),await pe.post(\"/xunlei/login\",{username:E.phone,password:E.password,verificationId:l.verificationId,verificationCode:E.verificationCode}),s(\"\"),g.message.success(\"\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u5DF2\\u4FDD\\u5B58\\u8D26\\u53F7\\u4E0E\\u767B\\u5F55\\u6001\"),y(),S(),await b()}catch(E){console.error(E);let N=ol(((V=(P=E==null?void 0:E.responseData)==null?void 0:P.data)==null?void 0:V.verifyUrl)||\"\");N&&(x(!0),m(N),D(N)),g.message.error(\"\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(E==null?void 0:E.message))}finally{a(!1)}};return(0,p.useEffect)(()=>{let P=V=>{var N,U,K;if(V.origin!==window.location.origin)return;let E=V.data||{};if(E.type===\"xunlei-verification-sent\"){w(E.data||{},\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5B8C\\u6210\\uFF0C\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\");return}if(E.type===\"xunlei-verification-required\"){let de=ol(((N=E==null?void 0:E.data)==null?void 0:N.verifyUrl)||\"\");s(\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5C1A\\u672A\\u901A\\u8FC7\\uFF0C\\u8BF7\\u91CD\\u65B0\\u5B8C\\u6210\\u9A8C\\u8BC1\\u3002\"),x(!0),m(de),de&&g.message.warning(\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u5C1A\\u672A\\u901A\\u8FC7\\uFF0C\\u8BF7\\u91CD\\u65B0\\u5B8C\\u6210\\u9A8C\\u8BC1\");return}E.type===\"xunlei-verification-error\"&&(x(!1),s(((U=E==null?void 0:E.data)==null?void 0:U.message)||\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u540E\\u81EA\\u52A8\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\"),g.message.error(((K=E==null?void 0:E.data)==null?void 0:K.message)||\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u540E\\u81EA\\u52A8\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\"))};return window.addEventListener(\"message\",P),()=>{window.removeEventListener(\"message\",P),S()}},[]),(0,p.useEffect)(()=>{b()},[]),(0,p.useEffect)(()=>{if(!l.verificationId||!l.expiryAt){d(0);return}let P=()=>{let E=Math.max(0,Math.ceil((l.expiryAt-Date.now())/1e3));d(E),E<=0&&(c({remaining:l.remaining,verificationId:\"\",expiryAt:0}),x(!1))};P();let V=setInterval(P,1e3);return()=>clearInterval(V)},[l.verificationId,l.expiryAt]),p.default.createElement(g.Form,{form:t,layout:\"vertical\",onValuesChange:P=>{(Object.prototype.hasOwnProperty.call(P,\"phone\")||Object.prototype.hasOwnProperty.call(P,\"password\"))&&y()}},p.default.createElement(g.Alert,{type:\"info\",showIcon:!0,style:{marginBottom:12},message:\"\\u4EC5\\u4FDD\\u7559\\u624B\\u673A\\u53F7 + \\u5BC6\\u7801 + \\u5B89\\u5168\\u9A8C\\u8BC1 + \\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u8FD9\\u4E00\\u6761\\u767B\\u5F55\\u94FE\\u8DEF\\u3002\\u70B9\\u51FB\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u540E\\uFF0C\\u5982\\u9700\\u98CE\\u63A7\\u9A8C\\u8BC1\\u4F1A\\u81EA\\u52A8\\u62C9\\u8D77\\u9A8C\\u8BC1\\u9875\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u3002\"}),i&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:i}),p.default.createElement(g.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u624B\\u673A\\u53F7\"}]},p.default.createElement(g.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A13800138000\"})),p.default.createElement(g.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},p.default.createElement(g.Input.Password,null)),p.default.createElement(g.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",name:\"verificationCode\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"}],extra:h?\"\\u6B63\\u5728\\u7B49\\u5F85\\u5B89\\u5168\\u9A8C\\u8BC1\\u5B8C\\u6210\\u5E76\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\\u82E5\\u5DF2\\u6536\\u5230\\u77ED\\u4FE1\\uFF0C\\u4E5F\\u53EF\\u4EE5\\u76F4\\u63A5\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\":l.verificationId&&f>0?\"\\u9A8C\\u8BC1\\u7801\\u5269\\u4F59 \".concat(f,\" \\u79D2\\u6709\\u6548\"):\"\\u5148\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\uFF0C\\u518D\\u8F93\\u5165\\u77ED\\u4FE1\\u4E2D\\u7684 6 \\u4F4D\\u9A8C\\u8BC1\\u7801\"},p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",maxLength:6}),p.default.createElement(g.Button,{onClick:F,loading:n},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),l.remaining!==null&&l.verificationId&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:\"\\u4ECA\\u65E5\\u77ED\\u4FE1\\u53D1\\u9001\\u5269\\u4F59\\u6B21\\u6570\\uFF1A\".concat(l.remaining)}),u&&p.default.createElement(g.Alert,{type:\"warning\",showIcon:!0,style:{marginBottom:12},message:h?\"\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\\u5DF2\\u81EA\\u52A8\\u6253\\u5F00\\uFF0C\\u9A8C\\u8BC1\\u5B8C\\u6210\\u540E\\u4F1A\\u81EA\\u52A8\\u8865\\u53D1\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\\u3002\":\"\\u9700\\u8981\\u5148\\u5B8C\\u6210\\u5B89\\u5168\\u9A8C\\u8BC1\\u3002\",description:p.default.createElement(g.Space,{wrap:!0},p.default.createElement(g.Button,{type:\"link\",href:u,target:\"_blank\",rel:\"noreferrer\"},\"\\u6253\\u5F00\\u5B89\\u5168\\u9A8C\\u8BC1\\u9875\"),p.default.createElement(g.Button,{onClick:()=>(0,ei.default)(u)},\"\\u590D\\u5236\\u9A8C\\u8BC1\\u94FE\\u63A5\"))}),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:T,block:!0,loading:o},\"\\u767B\\u5F55\"))))}function Qs(){let[e]=g.Form.useForm(),t={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},n={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},r=async()=>{let o=await e.validateFields();console.log(\"data\",o);try{await pe.put(\"/tgsou/config\",o),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,p.useEffect)(()=>{pe.get(\"/tgsou/config\").then(o=>{e.setFieldsValue(o)})},[]),p.default.createElement(g.Form,C({form:e},t),p.default.createElement(g.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"url\"},p.default.createElement(g.Input,null)),p.default.createElement(g.Form.List,{name:\"channelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(o,{add:a,remove:i},{errors:s})=>p.default.createElement(p.default.Fragment,null,o.map((l,c)=>p.default.createElement(g.Form.Item,I(C({label:c===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:l.key},c===0?t:n),{style:{marginBottom:12}}),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},l),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\",style:{width:\"100%\"}})),o.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(yn,null),onClick:()=>i(l.name)})))),p.default.createElement(g.Form.Item,C({label:\"\"},n),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>a(),block:!0,icon:p.default.createElement(ot,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),p.default.createElement(g.Form.ErrorList,{errors:s})))),p.default.createElement(g.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},p.default.createElement(g.InputNumber,{min:1,style:{width:\"100%\"}})),p.default.createElement(g.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},p.default.createElement(g.Switch,null)),p.default.createElement(g.Form.Item,C({label:null},n),p.default.createElement(g.Button,{type:\"primary\",onClick:r,block:!0},\"\\u4FDD\\u5B58\")))}function Zs(){let[e]=g.Form.useForm(),t={labelCol:{xs:{span:24},sm:{span:6}},wrapperCol:{xs:{span:24},sm:{span:18}}},n={wrapperCol:{xs:{span:24,offset:0},sm:{span:18,offset:6}}},r=\"/tgchannel/config\",[o,a]=(0,p.useState)({}),[i,s]=(0,p.useState)(!1),[l,c]=(0,p.useState)(!1),[f,d]=(0,p.useState)({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),u=(b,S)=>{if(d(w=>C(C({},w),S)),b.homeChannelUsername||b.channelUsername){let w=[...S.homeChannelUsername||[],...S.channelUsername||[]],D=C({},o);Object.keys(D).forEach(O=>{w.includes(O)||delete D[O]}),a(D)}},m=async()=>{if(!i){s(!0);try{let b=await e.validateFields();console.log(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u901A\\u8FC7:\",b);let S=!!b.enableImage;console.log(\"enableImage \\u8F6C\\u6362\\u540E:\",S,\"\\u7C7B\\u578B:\",typeof S);let w={url:b.url||\"\",count:Number(b.count)||1,enableImage:S,homeChannelUsername:Array.isArray(b.homeChannelUsername)?b.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(b.channelUsername)?b.channelUsername.filter(Boolean):[],channelRemark:o};console.log(\"\\u63D0\\u4EA4\\u7684\\u6570\\u636E:\",w);try{await pe.put(r,w),g.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),d({url:w.url,count:w.count,enableImage:w.enableImage,homeChannelUsername:w.homeChannelUsername,channelUsername:w.channelUsername});try{localStorage.setItem(\"tgchannel_config_backup\",JSON.stringify(w)),localStorage.setItem(\"tgchannel_config_time\",new Date().toISOString())}catch(D){console.warn(\"\\u672C\\u5730\\u5B58\\u50A8\\u5907\\u4EFD\\u5931\\u8D25:\",D)}}catch(D){console.error(\"\\u4FDD\\u5B58\\u8BF7\\u6C42\\u5931\\u8D25:\",D),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((D==null?void 0:D.message)||\"\\u672A\\u77E5\\u9519\\u8BEF\"))}}catch(b){console.error(\"\\u8868\\u5355\\u9A8C\\u8BC1\\u5931\\u8D25:\",b),g.message.error(\"\\u8BF7\\u68C0\\u67E5\\u8868\\u5355\\u586B\\u5199\\u662F\\u5426\\u6B63\\u786E\")}finally{s(!1)}}},h=async()=>{s(!0);try{let b=null;try{let D=localStorage.getItem(\"tgchannel_config_backup\");D&&(b=JSON.parse(D),console.log(\"\\u4ECE\\u672C\\u5730\\u5B58\\u50A8\\u6062\\u590D\\u6570\\u636E:\",b))}catch(D){console.warn(\"\\u672C\\u5730\\u5B58\\u50A8\\u6062\\u590D\\u5931\\u8D25:\",D)}let S;try{S=await pe.get(r),console.log(\"\\u670D\\u52A1\\u5668\\u52A0\\u8F7D\\u7684\\u6570\\u636E:\",S)}catch(D){console.error(\"\\u670D\\u52A1\\u5668\\u52A0\\u8F7D\\u5931\\u8D25:\",D),S=b||{url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}}}let w=S||b||{url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}};console.log(\"\\u6700\\u7EC8\\u521D\\u59CB\\u5316\\u6570\\u636E:\",w),console.log(\"enableImage \\u503C:\",w.enableImage,\"\\u7C7B\\u578B:\",typeof w.enableImage),e.setFieldsValue({url:w.url||\"\",count:w.count||1,enableImage:w.enableImage===!0||w.enableImage===\"true\"||w.enableImage===1,homeChannelUsername:Array.isArray(w.homeChannelUsername)?w.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(w.channelUsername)?w.channelUsername.filter(Boolean):[]}),w.channelRemark&&typeof w.channelRemark==\"object\"&&a(w.channelRemark),d({url:w.url||\"\",count:w.count||1,enableImage:w.enableImage===!0||w.enableImage===\"true\"||w.enableImage===1,homeChannelUsername:Array.isArray(w.homeChannelUsername)?w.homeChannelUsername.filter(Boolean):[],channelUsername:Array.isArray(w.channelUsername)?w.channelUsername.filter(Boolean):[]}),c(!0)}catch(b){console.error(\"\\u521D\\u59CB\\u5316\\u5931\\u8D25:\",b),g.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\\uFF0C\\u4F7F\\u7528\\u9ED8\\u8BA4\\u914D\\u7F6E\"),e.setFieldsValue({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),d({url:\"\",count:1,enableImage:!0,homeChannelUsername:[],channelUsername:[]}),a({}),c(!0)}finally{s(!1)}},x=(b,S)=>{if(!b||b.trim()===\"\")return;let w=C({},o);S.trim()===\"\"?delete w[b]:w[b]=S.trim(),a(w);try{let D=C({},w);localStorage.setItem(\"tgchannel_remarks_backup\",JSON.stringify(D))}catch(D){console.warn(\"\\u5907\\u6CE8\\u672C\\u5730\\u5B58\\u50A8\\u5931\\u8D25:\",D)}};(0,p.useEffect)(()=>{h()},[]);let v=b=>e.getFieldsValue()[b]||[],y=(b,S,w,D,O)=>p.default.createElement(g.Form.Item,{noStyle:!0,shouldUpdate:(F,T)=>{var E,N;let P=(E=F[O])==null?void 0:E[S],V=(N=T[O])==null?void 0:N[S];return P!==V}},({getFieldValue:F})=>{let T=F([O,S])||\"\";return p.default.createElement(\"div\",{key:b.key,className:\"tg-channel-item\",style:{marginBottom:12,display:\"flex\",gap:\"8px\",alignItems:\"flex-start\"}},p.default.createElement(\"div\",{className:\"tg-channel-input\",style:{flex:\"1 1 40%\",minWidth:0}},p.default.createElement(g.Form.Item,I(C({},b),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053\\u540D\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u9891\\u9053\\u540D\",style:{width:\"100%\"},onChange:P=>{let V=P.target.value,E=T;if(E&&E!==V&&o[E]){let N=C({},o);N[V]=N[E],delete N[E],a(N)}}}))),p.default.createElement(\"div\",{className:\"tg-remark-input\",style:{flex:\"1 1 40%\",minWidth:0}},p.default.createElement(g.Input,{placeholder:\"\\u5907\\u6CE8\",value:o[T]||\"\",onChange:P=>x(T,P.target.value),onBlur:P=>x(T,P.target.value),style:{width:\"100%\"},disabled:!T||T.trim()===\"\"})),w.length>1&&p.default.createElement(\"div\",{className:\"tg-delete-btn\",style:{flex:\"0 0 auto\"}},p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(yn,null),onClick:()=>{if(T&&o[T]){let P=C({},o);delete P[T],a(P)}D(b.name)},style:{minWidth:\"44px\",minHeight:\"44px\"}})))});return i&&!l?p.default.createElement(g.Card,{loading:!0,style:{minHeight:300}},\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u4E2D...\"):p.default.createElement(g.Form,I(C({form:e},t),{onValuesChange:u}),p.default.createElement(g.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}],extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\"}},\"\\u9700\\u5B8C\\u6574\\u4EE3\\u7406t.me\\u57DF\\u540D\\uFF0C\\u81F3\\u5C11\\u9700\\u8981\\u652F\\u6301\\u4EE5\\u4E0B\\u94FE\\u63A5\",p.default.createElement(\"p\",{style:{margin:\"4px 0\"}},\"1. \\u9891\\u9053\\u9875\\u9762\\uFF1Ahttps://t.me/s/xx\\uFF0C\\u5E76\\u4E14\\u4F1A\\u5E26\\u5206\\u9875\\u53C2\\u6570before=yy\\u3001\\u641C\\u7D22\\u53C2\\u6570q=zz\"),p.default.createElement(\"p\",{style:{margin:\"4px 0\"}},\"2. \\u6D88\\u606F\\u8BE6\\u60C5\\u9875\\uFF1Ahttps://t.me/xx/yy\"))},p.default.createElement(g.Input,null)),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{xs:24,sm:12,md:12,lg:12},p.default.createElement(g.Form.Item,{label:\"\\u83B7\\u53D6\\u56FE\\u7247\",name:\"enableImage\",valuePropName:\"checked\",labelCol:{xs:{span:12},sm:{span:8}},wrapperCol:{xs:{span:12},sm:{span:16}}},p.default.createElement(g.Switch,null))),p.default.createElement(g.Col,{xs:24,sm:12,md:12,lg:12},p.default.createElement(g.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\",labelCol:{xs:{span:12},sm:{span:10}},wrapperCol:{xs:{span:12},sm:{span:14}}},p.default.createElement(g.InputNumber,{min:1,disabled:i,style:{width:\"100%\"}})))),p.default.createElement(g.Divider,{orientation:\"left\"},\"\\u9996\\u9875\"),p.default.createElement(g.Form.List,{name:\"homeChannelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(b,{add:S,remove:w},{errors:D})=>p.default.createElement(p.default.Fragment,null,b.map((O,F)=>y(O,F,b,w,\"homeChannelUsername\")),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>S(),icon:p.default.createElement(ot,null),disabled:i,style:{width:\"100%\",maxWidth:\"400px\"}},\"\\u6DFB\\u52A0\\u9891\\u9053\")),p.default.createElement(g.Form.ErrorList,{errors:D})))),p.default.createElement(g.Divider,{orientation:\"left\"},\"\\u641C\\u7D22\"),p.default.createElement(g.Form.List,{name:\"channelUsername\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u9891\\u9053\"}]},(b,{add:S,remove:w},{errors:D})=>p.default.createElement(p.default.Fragment,null,b.map((O,F)=>y(O,F,b,w,\"channelUsername\")),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>S(),icon:p.default.createElement(ot,null),disabled:i,style:{width:\"100%\",maxWidth:\"400px\"}},\"\\u6DFB\\u52A0\\u9891\\u9053\")),p.default.createElement(g.Form.ErrorList,{errors:D})))),p.default.createElement(g.Form.Item,null,p.default.createElement(\"div\",{style:{display:\"flex\",justifyContent:\"center\",width:\"100%\"}},p.default.createElement(g.Space,{style:{width:\"100%\",maxWidth:\"600px\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:m,loading:i,disabled:!l,block:!0},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Button,{onClick:()=>{window.confirm(\"\\u786E\\u5B9A\\u8981\\u91CD\\u7F6E\\u8868\\u5355\\u5417\\uFF1F\\u8FD9\\u5C06\\u6E05\\u9664\\u6240\\u6709\\u672A\\u4FDD\\u5B58\\u7684\\u4FEE\\u6539\\u3002\")&&h()},disabled:i,style:{flex:1}},\"\\u91CD\\u7F6E\"),p.default.createElement(g.Button,{onClick:()=>{window.confirm(\"\\u786E\\u5B9A\\u8981\\u6E05\\u7A7A\\u6240\\u6709\\u5907\\u6CE8\\u5417\\uFF1F\")&&(a({}),localStorage.removeItem(\"tgchannel_remarks_backup\"),g.message.success(\"\\u5907\\u6CE8\\u5DF2\\u6E05\\u7A7A\"))},disabled:i,style:{flex:1}},\"\\u6E05\\u7A7A\\u5907\\u6CE8\"))))))}function Us(){return p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{message:\"\\u4F1A\\u5458\\u53EA\\u626B\\u7B2C\\u4E00\\u4E2A\\uFF0C\\u975E\\u4F1A\\u5458\\u4E24\\u4E2A\\u90FD\\u626B\",type:\"info\",style:{marginBottom:16}}),p.default.createElement(g.Card,{title:\"UC \\u7F51\\u76D8\",style:{marginBottom:16}},p.default.createElement(Kt,{qrcodeUrl:\"/website/uc/qrcode\",cacheUrl:\"/uc/cookie\"})),p.default.createElement(g.Card,{title:\"UC TV\"},p.default.createElement(Kt,{qrcodeUrl:\"/website/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\"})))}function Rs(){let[e,t]=p.default.useState(\"\"),n=\"/uc/ut\",r=async()=>{try{await pe.put(n,{ut:e}),g.message.success(\"\\u8BBE\\u7F6E\\u6210\\u529F\")}catch(o){console.error(o),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(o==null?void 0:o.message))}};return(0,p.useEffect)(()=>{pe.get(n).then(o=>{t(o)})},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{message:\"\\u5173\\u6CE8\\u5FAE\\u4FE1\\u516C\\u4F17\\u53F7\\u201C\\u738B\\u4E8C\\u5C0F\\u653E\\u725B\\u5A03\\u201D\\uFF0C\\u8F93\\u5165\\u201C\\u673A\\u5668\\u7801\\u201D\\u5373\\u53EF\\u83B7\\u5F97\",type:\"info\",style:{marginBottom:16}}),p.default.createElement(g.Input.TextArea,{placeholder:\"\\u8BF7\\u8F93\\u5165UC\\u673A\\u5668\\u7801\",value:e,onChange:o=>t(o.target.value),rows:4}),p.default.createElement(g.Button,{type:\"primary\",onClick:r,style:{marginTop:16}},\"\\u4FDD\\u5B58\"))}var am=e=>{let{attributes:t,listeners:n,setNodeRef:r,transform:o,transition:a,isDragging:i}=ya({id:e[\"data-row-key\"]}),s=C(I(C({},e.style),{transform:Wt.Translate.toString(o),transition:a,cursor:\"move\"}),i?{position:\"relative\",zIndex:9999}:{});return p.default.createElement(\"tr\",C(C(I(C({},e),{ref:r,style:s}),t),n))};function el({extraColumns:e=[]}){let[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(null),a=(0,p.useMemo)(()=>{let d=[{title:\"\\u7AD9\\u6E90\",dataIndex:\"key\",render(m,h,x){let v=r===h.key;return p.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},v?p.default.createElement(g.Input,{value:h.name,onChange:y=>{let b=[...t];b[x].name=y.target.value,n(b)},onPressEnter:()=>{o(null)},onBlur:()=>{o(null)},autoFocus:!0,style:{width:\"100%\"}}):p.default.createElement(\"div\",{style:{cursor:\"pointer\",padding:\"4px 8px\",borderRadius:\"4px\",width:\"100%\",minHeight:\"32px\",display:\"flex\",alignItems:\"center\",flexWrap:\"wrap\",gap:\"4px\"},onClick:()=>{o(h.key)},title:\"\\u70B9\\u51FB\\u4FEE\\u6539\\u540D\\u79F0\"},p.default.createElement(\"span\",null,h.name),h.t4&&p.default.createElement(g.Tag,{style:{marginLeft:4},color:\"blue\"},\"T4\"),h.cms&&p.default.createElement(g.Tag,{style:{marginLeft:4},color:\"blue\"},\"CMS\")))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(m,h,x){return p.default.createElement(g.Switch,{checked:m,onChange:v=>{let y=[...t];y[x].enable=v,n(y)}})},width:60,align:\"center\"},{title:\"\\u6392\\u5E8F\",dataIndex:\"op\",render(m,h,x){return p.default.createElement(g.Space,{size:2,style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{icon:p.default.createElement(_t,null),size:\"small\",type:\"text\",disabled:x===0,onClick:()=>{n(v=>ct(v,x,x-1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}),p.default.createElement(g.Button,{icon:p.default.createElement(Pt,null),size:\"small\",type:\"text\",disabled:x===t.length-1,onClick:()=>{n(v=>ct(v,x,x+1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}))},width:70,align:\"center\"}];return[...d.slice(0,1),...e.map(m=>I(C({},m),{width:50})),...d.slice(1)]},[t,r,e]),i=Pr(an(ho,{activationConstraint:{distance:4}}),an(bo,{activationConstraint:{delay:200,tolerance:6}})),s=({active:d,over:u})=>{d.id!==(u==null?void 0:u.id)&&n(m=>{let h=m.findIndex(v=>v.key===d.id),x=m.findIndex(v=>v.key===(u==null?void 0:u.id));return ct(m,h,x)})},l=async()=>{let u=(await xo.default.get(\"/full-config\")).data.video.sites,m=await pe.get(\"/sites/list\"),h={},x={};u.forEach(y=>{x[y.key]=y});let v=m.filter(y=>(h[y.key]=!0,x[y.key]));u.forEach(y=>{h[y.key]||v.push({key:y.key,name:y.name,enable:!0,t4:y.t4,cms:y.cms})}),console.log(\"dataSource\",v,m,u),n(v)},c=async()=>{try{o(null),await pe.put(\"/sites/list\",{list:t}),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u7AD9\\u6E90\\u540D\\u79F0\\u5DF2\\u66F4\\u65B0\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(d){console.error(d),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{await pe.delete(\"/sites/list\"),l(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}};return(0,p.useEffect)(()=>{l()},[]),p.default.createElement(\"div\",null,p.default.createElement(g.Alert,{description:\"\\u70B9\\u51FB\\u7AD9\\u6E90\\u540D\\u79F0\\u53EF\\u7F16\\u8F91\\uFF0C\\u62D6\\u52A8\\u884C\\u6216\\u4F7F\\u7528\\u4E0A\\u4E0B\\u6309\\u94AE\\u8C03\\u6574\\u987A\\u5E8F\",type:\"info\",style:{marginBottom:16},closable:!0}),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(_r,{sensors:i,modifiers:[Br],onDragEnd:s},p.default.createElement(Mr,{items:t.map(d=>d.key),strategy:Lr},p.default.createElement(g.Table,{components:{body:{row:am}},rowKey:\"key\",columns:a,dataSource:t,pagination:!1,className:\"sites-table\",size:\"small\",scroll:{x:\"max-content\"}})))),p.default.createElement(g.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",block:!0,onClick:c},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,block:!0,onClick:f},\"\\u91CD\\u7F6E\")))}function Ws({extraColumns:e=[]}){let[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(null),a=(0,p.useMemo)(()=>{let d=[{title:\"\\u7F51\\u76D8\",dataIndex:\"key\",render(m,h,x){let v=r===h.key;return p.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\"}},v?p.default.createElement(g.Input,{value:h.name,onChange:y=>{let b=[...t];b[x].name=y.target.value,n(b)},onPressEnter:()=>o(null),onBlur:()=>o(null),autoFocus:!0,style:{width:\"100%\"}}):p.default.createElement(\"div\",{style:{cursor:\"pointer\",padding:\"4px 8px\",borderRadius:\"4px\",width:\"100%\",minHeight:\"32px\",display:\"flex\",alignItems:\"center\"},onClick:()=>o(h.key),title:\"\\u70B9\\u51FB\\u4FEE\\u6539\\u540D\\u79F0\"},h.name))}},{title:\"\\u7EBF\\u8DEF\\u987A\\u5E8F\",dataIndex:\"routeOrder\",render(m,h){if(!rl[h.key])return p.default.createElement(\"span\",{style:{color:\"#8c8c8c\"}},\"\\u5355\\u7EBF\\u8DEF\");let x=nm(h.key,m);return p.default.createElement(g.Space,{direction:\"vertical\",size:2,onPointerDown:v=>v.stopPropagation(),onClick:v=>v.stopPropagation()},x.map((v,y)=>{let b=v===\"\".concat(h.key,\".original\")?h.name:tm[v]||v;return p.default.createElement(g.Space,{key:v,size:2,style:{display:\"flex\"}},p.default.createElement(g.Tag,{color:y===0?\"blue\":void 0,style:{margin:0,minWidth:88,borderRadius:2}},y+1,\". \",b),p.default.createElement(g.Button,{icon:p.default.createElement(_t,null),size:\"small\",type:\"text\",disabled:y===0,title:\"\\u7EBF\\u8DEF\\u4E0A\\u79FB\",onClick:()=>{n(S=>S.map(w=>w.key===h.key?I(C({},w),{routeOrder:ct(x,y,y-1)}):w))},style:{padding:\"2px\",minWidth:22,height:22}}),p.default.createElement(g.Button,{icon:p.default.createElement(Pt,null),size:\"small\",type:\"text\",disabled:y===x.length-1,title:\"\\u7EBF\\u8DEF\\u4E0B\\u79FB\",onClick:()=>{n(S=>S.map(w=>w.key===h.key?I(C({},w),{routeOrder:ct(x,y,y+1)}):w))},style:{padding:\"2px\",minWidth:22,height:22}}))}))},width:170},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(m,h,x){return p.default.createElement(g.Switch,{checked:m,onChange:v=>{let y=t.map((b,S)=>S===x?I(C({},b),{enable:v}):C({},b));if(v&&[\"magnet\",\"magnet_guangya\"].includes(h.key))for(let b of y)b.key!==h.key&&[\"magnet\",\"magnet_guangya\"].includes(b.key)&&(b.enable=!1);n(y)}})},width:60,align:\"center\"},{title:\"\\u6392\\u5E8F\",dataIndex:\"op\",render(m,h,x){return p.default.createElement(g.Space,{size:2,style:{display:\"flex\",justifyContent:\"center\"}},p.default.createElement(g.Button,{icon:p.default.createElement(_t,null),size:\"small\",type:\"text\",disabled:x===0,onClick:()=>{n(v=>ct(v,x,x-1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}),p.default.createElement(g.Button,{icon:p.default.createElement(Pt,null),size:\"small\",type:\"text\",disabled:x===t.length-1,onClick:()=>{n(v=>ct(v,x,x+1))},style:{padding:\"4px\",minWidth:\"24px\",height:\"24px\"}}))},width:70,align:\"center\"}];return[...d.slice(0,1),...e.map(m=>I(C({},m),{width:50})),...d.slice(1)]},[t,r,e]),i=Pr(an(ho,{activationConstraint:{distance:4}}),an(bo,{activationConstraint:{delay:200,tolerance:6}})),s=({active:d,over:u})=>{d.id!==(u==null?void 0:u.id)&&n(m=>{let h=m.findIndex(v=>v.key===d.id),x=m.findIndex(v=>v.key===(u==null?void 0:u.id));return ct(m,h,x)})},l=async()=>{let d=await pe.get(\"/pans/list\");n(d)},c=async()=>{try{await pe.put(\"/pans/list\",{list:t}),g.message.success(\"\\u8BBE\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{await pe.delete(\"/pans/list\"),l(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(d){console.error(d),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}};return(0,p.useEffect)(()=>{l()},[]),p.default.createElement(\"div\",null,p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(_r,{sensors:i,modifiers:[Br],onDragEnd:s},p.default.createElement(Mr,{items:t.map(d=>d.key),strategy:Lr},p.default.createElement(g.Table,{components:{body:{row:am}},rowKey:\"key\",columns:a,dataSource:t,pagination:!1,size:\"small\",scroll:{x:\"max-content\"}})))),p.default.createElement(g.Space,{style:{marginTop:16,width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",block:!0,onClick:c},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,block:!0,onClick:f},\"\\u91CD\\u7F6E\")))}function im(){let[e]=g.Form.useForm(),[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(!1),a={labelCol:{xs:{span:24},sm:{span:4}},wrapperCol:{xs:{span:24},sm:{span:20}}},i={wrapperCol:{xs:{span:24,offset:0},sm:{span:20,offset:4}}},s=\"/danmu/setting\",l=async()=>{var u;o(!0);try{let h=((u=(await xo.default.get(\"/full-config\")).data.video)==null?void 0:u.sites)||[],v=[...new Set(h.map(y=>({key:y.key.replace(\"nodejs_\",\"\"),name:y.name})).filter(y=>y.key&&y.name))].map(y=>({label:\"\".concat(y.name),value:y.key}));n(v)}catch(m){console.error(\"\\u52A0\\u8F7D\\u722C\\u866B\\u5217\\u8868\\u5931\\u8D25:\",m),g.message.error(\"\\u52A0\\u8F7D\\u722C\\u866B\\u5217\\u8868\\u5931\\u8D25\")}finally{o(!1)}},c=async()=>{await l();let u=await pe.get(s);e.setFieldsValue(u)},f=async()=>{let u=await e.validateFields();try{await pe.put(s,u),g.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(m){console.error(m),g.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(m==null?void 0:m.message))}},d=async()=>{try{await pe.delete(s),c(),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(u){console.error(u),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(u==null?void 0:u.message))}};return(0,p.useEffect)(()=>{c()},[]),p.default.createElement(g.Form,I(C({form:e},a),{className:\"force-light-form-label\"}),p.default.createElement(g.Alert,{message:\"\\u5F00\\u542F\\u81EA\\u52A8\\u63A8\\u9001\\u65F6\\uFF0C\\u81EA\\u52A8\\u9009\\u53D6\\u6700\\u5FEB\\u54CD\\u5E94\\u7684API\",type:\"info\",style:{marginBottom:12}}),p.default.createElement(g.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(u,{add:m,remove:h},{errors:x})=>p.default.createElement(p.default.Fragment,null,u.map((v,y)=>p.default.createElement(g.Form.Item,I(C({label:y===0?\"API\\u5217\\u8868\":\"\",required:!1,key:v.key},y===0?a:i),{style:{marginBottom:12}}),p.default.createElement(g.Space,{direction:\"vertical\",style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},v),{name:[v.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\",style:{width:\"100%\"}})),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},v),{name:[v.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u522B\\u540D\",style:{width:\"100%\"}})),u.length>1&&p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(yn,null),onClick:()=>h(v.name)}))))),p.default.createElement(g.Form.Item,C({label:\"\"},i),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>m(),block:!0,icon:p.default.createElement(ot,null)},\"\\u6DFB\\u52A0API\"),p.default.createElement(g.Form.ErrorList,{errors:x})))),p.default.createElement(g.Form.Item,C({label:null},i),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(HC,null))),p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\"},p.default.createElement(g.Switch,null)),p.default.createElement(g.Form.Item,{label:\"\\u5F39\\u5E55\\u683C\\u5F0F\",name:\"format\",initialValue:\"xml\",tooltip:\"\\u63A7\\u5236\\u81EA\\u52A8\\u5F39\\u5E55\\u548C\\u624B\\u52A8\\u5F39\\u5E55\\u7684\\u8F93\\u51FA\\u683C\\u5F0F\"},p.default.createElement(g.Select,{options:[{label:\"XML\",value:\"xml\"},{label:\"JSON\",value:\"json\"}]})),p.default.createElement(g.Form.Item,{label:\"\\u63A8\\u9001\\u9ED1\\u540D\\u5355\",name:\"autoPushBlacklist\",tooltip:\"\\u9ED1\\u540D\\u5355\\u4E2D\\u7684\\u7AD9\\u70B9\\u4E0D\\u4F1A\\u81EA\\u52A8\\u63A8\\u9001\\u5F39\\u5E55\"},p.default.createElement(g.Select,{mode:\"multiple\",placeholder:\"\\u9009\\u62E9\\u4E0D\\u9700\\u8981\\u81EA\\u52A8\\u63A8\\u9001\\u5F39\\u5E55\\u7684\\u7AD9\\u70B9\",style:{width:\"100%\"},options:t,loading:r,showSearch:!1,virtual:!1,dropdownMatchSelectWidth:!1,dropdownRender:u=>p.default.createElement(\"div\",null,p.default.createElement(\"div\",{style:{padding:\"4px 8px\",color:\"#666\",fontSize:\"12px\"}},\"\\u70B9\\u51FB\\u9009\\u62E9\\u9ED1\\u540D\\u5355\\u7AD9\\u70B9\"),u)})),p.default.createElement(g.Form.Item,C({label:null},i),p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:f,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:d,block:!0},\"\\u91CD\\u7F6E\"),p.default.createElement(g.Button,{onClick:l,loading:r,block:!0,type:\"default\"},\"\\u5237\\u65B0\\u7AD9\\u70B9\\u5217\\u8868\"))))}function HC(){let e=p.default.useCallback(()=>{try{window.location.href=\"/internal-danmu/ui\"}catch(t){console.error(t),g.message.error(\"\\u6253\\u5F00\\u5B8C\\u6574\\u5F39\\u5E55UI\\u5931\\u8D25\")}},[]);return p.default.createElement(g.Button,{icon:p.default.createElement(Sr,null),block:!0,onClick:e},\"\\u5185\\u7F6E\\u5F39\\u5E55UI\")}function sm(){let[e]=g.Form.useForm(),t={labelCol:{span:0},wrapperCol:{span:24}},n={wrapperCol:{span:24,offset:0}},r=\"/t4/list\",o=async()=>{let s=await pe.get(r);e.setFieldsValue({list:s})},a=async()=>{let s=await e.validateFields();try{await pe.put(r,s.list),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u4FDD\\u5B58\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(l){console.error(l),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},i=async()=>{try{await pe.delete(r),o(),g.message.success(\"\\u6E05\\u7A7A\\u6210\\u529F\")}catch(s){console.error(s),g.message.error(\"\\u6E05\\u7A7A\\u5931\\u8D25\\uFF1A\".concat(s==null?void 0:s.message))}};return(0,p.useEffect)(()=>{o()},[]),p.default.createElement(g.Form,I(C({form:e},t),{className:\"force-light-form-label\"}),p.default.createElement(g.Form.List,{name:\"list\"},(s,{add:l,remove:c},{errors:f})=>p.default.createElement(p.default.Fragment,null,s.map((d,u)=>p.default.createElement(g.Form.Item,I(C({required:!1,key:d.key},t),{style:{marginBottom:12}}),p.default.createElement(g.Space,{direction:\"vertical\",style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},d),{name:[d.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165T4\\u63A5\\u53E3\\u5730\\u5740\"}],noStyle:!0}),p.default.createElement(g.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165T4\\u63A5\\u53E3\\u5730\\u5740\",style:{width:\"100%\"}})),p.default.createElement(g.Space.Compact,{style:{width:\"100%\"}},p.default.createElement(g.Form.Item,I(C({},d),{name:[d.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],noStyle:!0,rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]}),p.default.createElement(g.Input,{placeholder:\"\\u540D\\u79F0\",style:{width:\"100%\"}})),p.default.createElement(g.Button,{danger:!0,icon:p.default.createElement(yn,null),onClick:()=>c(d.name)}))))),p.default.createElement(g.Form.Item,C({label:\"\"},n),p.default.createElement(g.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:p.default.createElement(ot,null)},\"\\u6DFB\\u52A0T4\\u63A5\\u53E3\"),p.default.createElement(g.Form.ErrorList,{errors:f})))),p.default.createElement(g.Form.Item,{label:null},p.default.createElement(g.Space,{style:{width:\"100%\"},direction:\"vertical\"},p.default.createElement(g.Button,{type:\"primary\",onClick:a,block:!0},\"\\u4FDD\\u5B58\"),p.default.createElement(g.Button,{danger:!0,onClick:i,block:!0},\"\\u6E05\\u7A7A\"))))}function lm(){let e=\"/cms/list\",[t,n]=(0,p.useState)([]),[r,o]=(0,p.useState)(\"\"),[a,i]=(0,p.useState)([]),[s,l]=(0,p.useState)({}),c=[{title:\"\\u540D\\u79F0\",dataIndex:\"name\",key:\"name\"},{title:\"API\",dataIndex:\"address\",key:\"address\",render:w=>w.startsWith(\"csp_\")?p.default.createElement(g.Tag,{color:\"red\"},\"\\u5DF2\\u8FC7\\u6EE4: \",w):w},{title:\"\\u64CD\\u4F5C\",key:\"action\",width:80,render:(w,D)=>D.address.startsWith(\"csp_\")?p.default.createElement(g.Tag,{color:\"default\"},\"\\u5DF2\\u81EA\\u52A8\\u8FC7\\u6EE4\"):p.default.createElement(g.Button,{type:\"link\",danger:!0,onClick:()=>v(D.key)},\"\\u5220\\u9664\")}],f=w=>w.filter(D=>!(D.api||D.address||\"\").startsWith(\"csp_\")),d=async()=>{let w=await pe.get(e),D=f(w);i(D);let O=[...new Set(D.map(F=>{try{if(F.address&&F.address.startsWith(\"http\")){let T=new URL(F.address);return\"\".concat(T.protocol,\"//\").concat(T.host)}}catch(T){}return null}).filter(Boolean))];O.length>0&&n(O)},u=()=>{if(!r.trim()){g.message.error(\"\\u8BF7\\u8F93\\u5165CMS\\u63A5\\u53E3\\u5730\\u5740\");return}let w=r.trim();w.startsWith(\"http\")||(w=\"http://\"+w);try{new URL(w),t.includes(w)?g.message.warning(\"\\u8BE5\\u5730\\u5740\\u5DF2\\u5B58\\u5728\"):(n([...t,w]),o(\"\"))}catch(D){g.message.error(\"\\u8BF7\\u8F93\\u5165\\u6709\\u6548\\u7684URL\\u5730\\u5740\")}},m=w=>{let D=[...t];D.splice(w,1),n(D)},h=async(w,D)=>{l(I(C({},s),{[D]:!0}));try{let{data:O}=await xo.default.get(w.trim(),{timeout:1e4});if(O.sites&&O.sites.length){let F=f(O.sites),T=F.map(E=>({key:\"\".concat(w,\"-\").concat(E.api||E.name),name:E.name,address:E.api||w}));i(E=>{let N=new Set(E.map(K=>K.key)),U=T.filter(K=>!N.has(K.key));return[...E,...U]});let P=O.sites.length-F.length,V=\"\".concat(w,\" \\u89E3\\u6790\\u6210\\u529F\\uFF0C\\u65B0\\u589E\").concat(T.length,\"\\u4E2A\\u7AD9\\u70B9\");P>0&&(V+=\"\\uFF0C\\u81EA\\u52A8\\u8FC7\\u6EE4\".concat(P,\"\\u4E2Acsp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\")),g.message.success(V)}else g.message.warning(\"\".concat(w,\" \\u6CA1\\u6709\\u627E\\u5230\\u53EF\\u7528\\u7684\\u7AD9\\u70B9\\u6570\\u636E\"))}catch(O){console.error(O),g.message.error(\"\".concat(w,\" \\u63A5\\u53E3\\u89E3\\u6790\\u5931\\u8D25: \").concat(O.message))}finally{let O=C({},s);delete O[D],l(O)}},x=async()=>{if(t.length===0){g.message.error(\"\\u8BF7\\u5148\\u6DFB\\u52A0CMS\\u63A5\\u53E3\\u5730\\u5740\");return}window.confirm(\"\\u662F\\u5426\\u6E05\\u7A7A\\u73B0\\u6709\\u7AD9\\u70B9\\u6570\\u636E\\uFF0C\\u91CD\\u65B0\\u4ECE\\u6240\\u6709CMS\\u63A5\\u53E3\\u89E3\\u6790\\uFF1F\")&&i([]);let D=0;for(let O=0;O{i(a.filter(D=>D.key!==w))},y=()=>{i([])},b=async()=>{let w=f(a);try{await pe.put(e,w),g.message.success({content:p.default.createElement(p.default.Fragment,null,\"\\u4FDD\\u5B58\\u6210\\u529F\",p.default.createElement(\"br\",null),\"\\u5171\\u4FDD\\u5B58\\u4E86\",w.length,\"\\u4E2A\\u7AD9\\u70B9\",p.default.createElement(\"br\",null),a.length-w.length>0&&\"\\u5DF2\\u81EA\\u52A8\\u8FC7\\u6EE4\".concat(a.length-w.length,\"\\u4E2Acsp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\"),p.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",p.default.createElement(\"br\",null)),duration:5})}catch(D){console.error(D),g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(D==null?void 0:D.message))}},S=async()=>{try{await pe.delete(e),i([]),n([]),o(\"\"),g.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(w){console.error(w),g.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(w==null?void 0:w.message))}};return(0,p.useEffect)(()=>{d()},[]),p.default.createElement(\"div\",{className:\"force-light-table-header\"},p.default.createElement(g.Card,{title:\"CMS\\u63A5\\u53E3\\u5730\\u5740\\u7BA1\\u7406\",style:{marginBottom:16}},p.default.createElement(g.Space.Compact,{style:{width:\"100%\",marginBottom:12}},p.default.createElement(g.Input,{placeholder:\"\\u8F93\\u5165XPTV CMS\\u63A5\\u53E3\\u5730\\u5740 (\\u5982: http://example.com/api.php)\",value:r,onChange:w=>o(w.target.value),onPressEnter:u}),p.default.createElement(g.Button,{type:\"primary\",onClick:u},\"\\u6DFB\\u52A0\")),t.length>0&&p.default.createElement(\"div\",{style:{marginBottom:16}},p.default.createElement(g.Divider,null,\"\\u5DF2\\u6DFB\\u52A0\\u7684CMS\\u63A5\\u53E3\\u5730\\u5740 (\",t.length,\"\\u4E2A)\"),p.default.createElement(g.List,{size:\"small\",dataSource:t,renderItem:(w,D)=>p.default.createElement(g.List.Item,{actions:[p.default.createElement(g.Button,{key:\"parse\",type:\"link\",loading:s[D],onClick:()=>h(w,D)},\"\\u89E3\\u6790\"),p.default.createElement(g.Button,{key:\"delete\",type:\"link\",danger:!0,onClick:()=>m(D)},\"\\u5220\\u9664\")]},p.default.createElement(g.Tag,{color:\"blue\"},w))}),p.default.createElement(\"div\",{style:{marginTop:16,display:\"flex\",gap:\"8px\",flexWrap:\"wrap\"}},p.default.createElement(g.Button,{type:\"primary\",onClick:x,loading:Object.values(s).some(Boolean)},\"\\u6279\\u91CF\\u89E3\\u6790\\u6240\\u6709CMS\\u63A5\\u53E3\"),p.default.createElement(g.Button,{danger:!0,onClick:y},\"\\u6E05\\u7A7A\\u6240\\u6709\\u7AD9\\u70B9\")))),p.default.createElement(g.Card,{title:\"\\u89E3\\u6790\\u51FA\\u7684\\u7AD9\\u70B9\\u5217\\u8868\"},p.default.createElement(g.Alert,{message:\"\\u5DF2\\u89E3\\u6790\\u51FA \".concat(a.length,\" \\u4E2A\\u7AD9\\u70B9\\uFF0C\\u7CFB\\u7EDF\\u4F1A\\u81EA\\u52A8\\u8FC7\\u6EE4csp_\\u5F00\\u5934\\u7684\\u7AD9\\u70B9\"),type:\"info\",showIcon:!0,style:{marginBottom:12}}),p.default.createElement(g.Table,{columns:c,dataSource:a,pagination:!1,rowKey:\"key\",scroll:{y:300},locale:{emptyText:\"\\u6682\\u65E0\\u7AD9\\u70B9\\u6570\\u636E\\uFF0C\\u8BF7\\u5148\\u6DFB\\u52A0CMS\\u63A5\\u53E3\\u5E76\\u89E3\\u6790\"}}),p.default.createElement(\"div\",{style:{marginTop:16,textAlign:\"center\"}},p.default.createElement(g.Button,{type:\"primary\",onClick:b,style:{marginRight:8}},\"\\u4FDD\\u5B58\\u7AD9\\u70B9\\u914D\\u7F6E (\",a.length,\"\\u4E2A)\"),p.default.createElement(g.Button,{danger:!0,onClick:S},\"\\u91CD\\u7F6E\\u6240\\u6709\\u914D\\u7F6E\"))))}var go=()=>\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,e=>{let t=Math.random()*16|0;return(e===\"x\"?t:t&3|8).toString(16)});function tl(){let[e,t]=(0,p.useState)([]),[n,r]=(0,p.useState)(!1),[o,a]=(0,p.useState)(!1);(0,p.useEffect)(()=>{r(!0),pe.get(\"/emby/config\").then(s=>{let l=Array.isArray(s)?s:[];l.length===0?l=[{id:go(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",server:\"\",enabled:!0,username:\"\",password:\"\",token:\"\",isJellyfin:!1,playStrategies:\"custom\",playStrategyOrder:[\"stream\",\"direct\",\"directPlay\",\"transcoding\",\"master\"]},{id:go(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",server:\"\",enabled:!0,username:\"\",password:\"\",token:\"\",isJellyfin:!1,playStrategies:\"custom\",playStrategyOrder:[\"stream\",\"direct\",\"directPlay\",\"transcoding\",\"master\"]}]:l=l.map(c=>I(C({},c),{id:c.id?String(c.id):go()})),t(l)}).catch(s=>{console.error(\"\\u52A0\\u8F7DEmby\\u914D\\u7F6E\\u51FA\\u9519:\",s),t([{id:go(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 1\",server:\"\",enabled:!0,isJellyfin:!1,playStrategies:\"custom\"},{id:go(),name:\"\\u9ED8\\u8BA4\\u670D\\u52A1\\u5668 2\",server:\"\",enabled:!0,isJellyfin:!1,playStrategies:\"custom\"}])}).finally(()=>{r(!1),a(!0)})},[]);let i=async()=>{r(!0);try{await pe.put(\"/emby/config\",e),g.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(s){g.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25: \"+s.message)}finally{r(!1)}};return o?p.default.createElement(g.Card,{bordered:!1},p.default.createElement($f,{config:{emby:e},updateConfig:s=>t(s.emby)}),p.default.createElement(g.Divider,null),p.default.createElement(g.Button,{type:\"primary\",block:!0,size:\"large\",onClick:i,loading:n},\"\\u4FDD\\u5B58\\u914D\\u7F6E\")):p.default.createElement(g.Card,{loading:!0,bordered:!1})}function nl(){let[e]=g.Form.useForm(),t=\"/pansou/config\",n=g.Form.useWatch(\"pancheck_mode\",e)||\"off\",r=async()=>{let a=await pe.get(t),i=I(C({},a),{pancheck_mode:a.pancheck_mode||(a.pancheck_enabled?\"pancheck\":\"off\"),selected_platforms:a.selected_platforms_str||(Array.isArray(a.selected_platforms)?a.selected_platforms.join(\",\"):\"\")});e.setFieldsValue(i)},o=async()=>{let a=await e.validateFields();await pe.put(t,a),g.message.success(\"Pansou\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\")};return(0,p.useEffect)(()=>{r()},[]),p.default.createElement(g.Card,{variant:\"borderless\"},p.default.createElement(g.Form,{form:e,layout:\"vertical\"},p.default.createElement(g.Form.Item,{label:\"\\u76D8\\u641C API (\\u591A\\u4E2A\\u4EE5\\u9017\\u53F7\\u5206\\u9694)\",name:\"api_urls\"},p.default.createElement(g.Input.TextArea,{rows:2})),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u9891\\u9053\",name:\"channels\"},p.default.createElement(g.Input,{placeholder:\"\\u7559\\u7A7A\\u641C\\u7D22\\u5168\\u90E8\\u9891\\u9053\"}))),p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u81EA\\u5B9A\\u4E49\\u63D2\\u4EF6\",name:\"plugins\"},p.default.createElement(g.Input,{placeholder:\"\\u7559\\u7A7A\\u641C\\u7D22\\u5168\\u90E8\\u63D2\\u4EF6\"})))),p.default.createElement(g.Form.Item,{label:\"\\u641C\\u7D22\\u7684\\u7F51\\u76D8\\u7C7B\\u578B\",name:\"cloud_types\",extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\",color:\"#666\"}},\"\\u7559\\u7A7A\\u9ED8\\u8BA4\\u641C\\u7D22\\uFF1Abaidu,aliyun,quark,tianyi,uc,mobile,115,123\",p.default.createElement(\"br\",null),\"\\u591A\\u4E2A\\u7528\\u9017\\u53F7\\u5206\\u9694\")},p.default.createElement(g.Input,{placeholder:\"baidu,aliyun,quark,tianyi,uc,mobile,115,123\"})),p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u5305\\u542B\\u8BCD (Include)\",name:\"include\"},p.default.createElement(g.Input,{placeholder:\"\\u591A\\u4E2A\\u9017\\u53F7\\u5206\\u9694\"}))),p.default.createElement(g.Col,{span:12},p.default.createElement(g.Form.Item,{label:\"\\u6392\\u9664\\u8BCD (Exclude)\",name:\"exclude\"},p.default.createElement(g.Input,{placeholder:\"\\u591A\\u4E2A\\u9017\\u53F7\\u5206\\u9694\"})))),p.default.createElement(g.Form.Item,{label:\"\\u68C0\\u6D4B\\u6A21\\u5F0F\",name:\"pancheck_mode\",initialValue:\"off\",extra:\"\\u5173\\u95ED\\uFF1A\\u4E0D\\u68C0\\u6D4B\\uFF1B\\u68C0\\u6D4B\\uFF1A\\u590D\\u7528 pansou \\u81EA\\u5E26\\u68C0\\u6D4B\\u63A5\\u53E3\\uFF1Bpancheck\\uFF1A\\u4F7F\\u7528\\u5916\\u90E8 pancheck \\u670D\\u52A1\"},p.default.createElement(g.Radio.Group,null,p.default.createElement(g.Radio.Button,{value:\"off\"},\"\\u5173\\u95ED\"),p.default.createElement(g.Radio.Button,{value:\"detect\"},\"\\u68C0\\u6D4B\"),p.default.createElement(g.Radio.Button,{value:\"pancheck\"},\"pancheck\"))),p.default.createElement(g.Form.Item,{label:\"\\u68C0\\u6D4B\\u7684\\u7F51\\u76D8\\u7C7B\\u578B\",name:\"selected_platforms\",extra:p.default.createElement(\"div\",{style:{fontSize:\"12px\",color:\"#666\"}},\"\\u7559\\u7A7A\\u9ED8\\u8BA4\\u68C0\\u6D4B\\uFF1Aquark,uc,tianyi,pan123,pan115,cmcc,baidu,aliyun\",p.default.createElement(\"br\",null),\"\\u591A\\u4E2A\\u7528\\u9017\\u53F7\\u5206\\u9694\")},p.default.createElement(g.Input,{placeholder:\"quark,uc,tianyi,pan123,pan115,cmcc,baidu,aliyun\"})),n===\"pancheck\"?p.default.createElement(g.Form.Item,{label:\"Pancheck \\u670D\\u52A1\\u5730\\u5740\",name:\"pancheck\"},p.default.createElement(g.Input,{placeholder:\"https://vyzdeslmqkfx.ap-northeast-1.clawcloudrun.com\"})):null,p.default.createElement(g.Row,{gutter:16},p.default.createElement(g.Col,{span:8},p.default.createElement(g.Form.Item,{label:\"\\u6BCF\\u7C7B\\u7F51\\u76D8\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\",extra:\"0 \\u4E3A\\u4E0D\\u9650\\u5236\\uFF0C\\u9ED8\\u8BA4 0\"},p.default.createElement(g.InputNumber,{min:0,style:{width:\"100%\"}})))),p.default.createElement(g.Form.Item,null,p.default.createElement(g.Button,{type:\"primary\",onClick:o,block:!0},\"\\u4FDD\\u5B58\\u914D\\u7F6E\"))))}function qC(){let[e,t]=(0,p.useState)(!1);return(0,p.useEffect)(()=>{let r=()=>{t(window.innerWidth<768)};return r(),window.addEventListener(\"resize\",r),()=>window.removeEventListener(\"resize\",r)},[]),p.default.createElement(\"div\",{className:\"app-layout\"},p.default.createElement(\"div\",{className:\"app-header-row\"},p.default.createElement(g.Space,{className:\"import-export-buttons\"},p.default.createElement(g.Upload,C({},{accept:\".json\",showUploadList:!1,beforeUpload(r){let o=new FileReader;return o.onload=async a=>{try{let i=JSON.parse(a.target.result);console.log(\"Parsed JSON data:\",i),await pe.put(\"/backup\",i),g.message.success(\"\".concat(r.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(i){g.message.error(\"\".concat(r.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(i.message)),console.error(\"Error parsing JSON:\",i)}},o.readAsText(r),!1}}),p.default.createElement(g.Button,{type:\"primary\",size:\"small\"},\"\\u5BFC\\u5165\")),p.default.createElement(g.Button,{type:\"default\",size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\"))),p.default.createElement(g.Tabs,{defaultActiveKey:\"cloud_drives\",centered:e,tabPosition:\"top\",style:{minHeight:\"100vh\"},className:\"force-light-tabs\"},p.default.createElement(cr,{tab:\"\\u7F51\\u76D8\",key:\"cloud_drives\"},p.default.createElement(Vp,null)),p.default.createElement(cr,{tab:\"\\u7AD9\\u6E90\",key:\"sources\"},p.default.createElement(em,null)),p.default.createElement(cr,{tab:\"\\u5F39\\u5E55\",key:\"danmu\"},p.default.createElement(im,null)),p.default.createElement(cr,{tab:\"T4/CMS\",key:\"t4_cms\"},p.default.createElement(g.Tabs,{animated:{inkBar:!0,tabPane:!0},destroyInactiveTabPane:!0,tabPosition:e?\"top\":\"left\",tabBarStyle:{width:e?\"auto\":120,marginBottom:16,whiteSpace:\"nowrap\",overflowX:\"auto\",overflowY:\"hidden\",WebkitOverflowScrolling:\"touch\"},className:\"force-light-tabs\"},p.default.createElement(cr,{tab:\"T4\\u63A5\\u53E3\",key:\"t4\"},p.default.createElement(sm,null)),p.default.createElement(cr,{tab:\"CMS\\u63A5\\u53E3\",key:\"cms\"},p.default.createElement(lm,null))))))}function YC(){document.documentElement.classList.toggle(\"platform-android\",/Android/i.test(window.navigator.userAgent||\"\")),(0,rm.createRoot)(document.getElementById(\"app\")).render(p.default.createElement(qC,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n\nuse-sync-external-store/cjs/use-sync-external-store-with-selector.production.js:\n (**\n * @license React\n * use-sync-external-store-with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n", ' module.exports.renderClient();', '})();' ].join('\n'); @@ -17,7 +53,7 @@ globalThis.danmuBundle = (() => { '(function() {', ' const exports = {};', ' const module = { exports };', - "var gr=Object.create;var X=Object.defineProperty,Or=Object.defineProperties,Tr=Object.getOwnPropertyDescriptor,br=Object.getOwnPropertyDescriptors,Cr=Object.getOwnPropertyNames,je=Object.getOwnPropertySymbols,wr=Object.getPrototypeOf,Ge=Object.prototype.hasOwnProperty,yr=Object.prototype.propertyIsEnumerable;var We=(t,e,r)=>e in t?X(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Q=(t,e)=>{for(var r in e||(e={}))Ge.call(e,r)&&We(t,r,e[r]);if(je)for(var r of je(e))yr.call(e,r)&&We(t,r,e[r]);return t},Y=(t,e)=>Or(t,br(e));var J=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Sr=(t,e)=>{for(var r in e)X(t,r,{get:e[r],enumerable:!0})},Ke=(t,e,r,o)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of Cr(e))!Ge.call(t,a)&&a!==r&&X(t,a,{get:()=>e[a],enumerable:!(o=Tr(e,a))||o.enumerable});return t};var P=(t,e,r)=>(r=t!=null?gr(wr(t)):{},Ke(e||!t||!t.__esModule?X(r,\"default\",{value:t,enumerable:!0}):r,t)),Fr=t=>Ke(X({},\"__esModule\",{value:!0}),t);var L=J((yo,Ze)=>{Ze.exports=window.React});var Ye=J((So,Qe)=>{Qe.exports=window.ReactDOM});var Xe=J(ye=>{\"use strict\";var Je=Ye();ye.createRoot=Je.createRoot,ye.hydrateRoot=Je.hydrateRoot;var Fo});var tt=J((Do,et)=>{et.exports=window.antd});var dt=J((Jo,ie)=>{(function(){\"use strict\";var t={}.hasOwnProperty;function e(){for(var a=\"\",l=0;l{dr.exports=window.axios});var Co={};Sr(Co,{Danmu:()=>hr,renderDanmu:()=>bo});module.exports=Fr(Co);var s=P(L(),1),xr=P(Xe(),1),h=P(tt(),1);var rt=P(L()),vr=(0,rt.createContext)({}),ae=vr;function R(){return R=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,o=Array(e);rparseFloat(a));for(let a=0;a<3;a+=1)o[a]=e(o[a]||0,r[a]||\"\",a);return r[3]?o[3]=r[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var ut=(t,e,r)=>r===0?t:t/100;function ee(t,e){let r=e||255;return t>r?r:t<0?0:t}var W=class t{constructor(e){D(this,\"isValid\",!0),D(this,\"r\",0),D(this,\"g\",0),D(this,\"b\",0),D(this,\"a\",1),D(this,\"_h\",void 0),D(this,\"_s\",void 0),D(this,\"_l\",void 0),D(this,\"_v\",void 0),D(this,\"_max\",void 0),D(this,\"_min\",void 0),D(this,\"_brightness\",void 0);function r(o){return o[0]in e&&o[1]in e&&o[2]in e}if(e)if(typeof e==\"string\"){let a=function(l){return o.startsWith(l)},o=e.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(e instanceof t)this.r=e.r,this.g=e.g,this.b=e.b,this.a=e.a,this._h=e._h,this._s=e._s,this._l=e._l,this._v=e._v;else if(r(\"rgb\"))this.r=ee(e.r),this.g=ee(e.g),this.b=ee(e.b),this.a=typeof e.a==\"number\"?ee(e.a,1):1;else if(r(\"hsl\"))this.fromHsl(e);else if(r(\"hsv\"))this.fromHsv(e);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(e))}setR(e){return this._sc(\"r\",e)}setG(e){return this._sc(\"g\",e)}setB(e){return this._sc(\"b\",e)}setA(e){return this._sc(\"a\",e,1)}setHue(e){let r=this.toHsv();return r.h=e,this._c(r)}getLuminance(){function e(l){let i=l/255;return i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4)}let r=e(this.r),o=e(this.g),a=e(this.b);return .2126*r+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let e=this.getMax()-this.getMin();e===0?this._h=0:this._h=k(60*(this.r===this.getMax()?(this.g-this.b)/e+(this.g\"u\"){let e=this.getMax()-this.getMin();e===0?this._s=0:this._s=e/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()-e/100;return a<0&&(a=0),this._c({h:r,s:o,l:a,a:this.a})}lighten(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()+e/100;return a>1&&(a=1),this._c({h:r,s:o,l:a,a:this.a})}mix(e,r=50){let o=this._c(e),a=r/100,l=m=>(o[m]-this[m])*a+this[m],i={r:k(l(\"r\")),g:k(l(\"g\")),b:k(l(\"b\")),a:k(l(\"a\")*100)/100};return this._c(i)}tint(e=10){return this.mix({r:255,g:255,b:255,a:1},e)}shade(e=10){return this.mix({r:0,g:0,b:0,a:1},e)}onBackground(e){let r=this._c(e),o=this.a+r.a*(1-this.a),a=l=>k((this[l]*this.a+r[l]*r.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}clone(){return this._c(this)}toHexString(){let e=\"#\",r=(this.r||0).toString(16);e+=r.length===2?r:\"0\"+r;let o=(this.g||0).toString(16);e+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(e+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let l=k(this.a*255).toString(16);e+=l.length===2?l:\"0\"+l}return e}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let e=this.getHue(),r=k(this.getSaturation()*100),o=k(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(e,r,o){let a=this.clone();return a[e]=ee(r,o),a}_c(e){return new this.constructor(e)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(e){let r=e.replace(\"#\",\"\");function o(a,l){return parseInt(r[a]+r[l||a],16)}r.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=r[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=r[6]?o(6,7)/255:1)}fromHsl({h:e,s:r,l:o,a}){if(this._h=e%360,this._s=r,this._l=o,this.a=typeof a==\"number\"?a:1,r<=0){let f=k(o*255);this.r=f,this.g=f,this.b=f}let l=0,i=0,m=0,d=e/60,c=(1-Math.abs(2*o-1))*r,g=c*(1-Math.abs(d%2-1));d>=0&&d<1?(l=c,i=g):d>=1&&d<2?(l=g,i=c):d>=2&&d<3?(i=c,m=g):d>=3&&d<4?(i=g,m=c):d>=4&&d<5?(l=g,m=c):d>=5&&d<6&&(l=c,m=g);let b=o-c/2;this.r=k((l+b)*255),this.g=k((i+b)*255),this.b=k((m+b)*255)}fromHsv({h:e,s:r,v:o,a}){this._h=e%360,this._s=r,this._v=o,this.a=typeof a==\"number\"?a:1;let l=k(o*255);if(this.r=l,this.g=l,this.b=l,r<=0)return;let i=e/60,m=Math.floor(i),d=i-m,c=k(o*(1-r)*255),g=k(o*(1-r*d)*255),b=k(o*(1-r*(1-d))*255);switch(m){case 0:this.g=b,this.b=c;break;case 1:this.r=g,this.b=c;break;case 2:this.r=c,this.b=b;break;case 3:this.r=c,this.g=g;break;case 4:this.r=b,this.g=c;break;case 5:default:this.g=c,this.b=g;break}}fromHsvString(e){let r=Fe(e,ut);this.fromHsv({h:r[0],s:r[1],v:r[2],a:r[3]})}fromHslString(e){let r=Fe(e,ut);this.fromHsl({h:r[0],s:r[1],l:r[2],a:r[3]})}fromRgbString(e){let r=Fe(e,(o,a)=>a.includes(\"%\")?k(o/100*255):o);this.r=r[0],this.g=r[1],this.b=r[2],this.a=r[3]}};var fe=2,mt=.16,Dr=.05,kr=.05,Ar=.15,ht=5,gt=4,Er=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function ct(t,e,r){var o;return Math.round(t.h)>=60&&Math.round(t.h)<=240?o=r?Math.round(t.h)-fe*e:Math.round(t.h)+fe*e:o=r?Math.round(t.h)+fe*e:Math.round(t.h)-fe*e,o<0?o+=360:o>=360&&(o-=360),o}function pt(t,e,r){if(t.h===0&&t.s===0)return t.s;var o;return r?o=t.s-mt*e:e===gt?o=t.s+mt:o=t.s+Dr*e,o>1&&(o=1),r&&e===ht&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function xt(t,e,r){var o;return r?o=t.v+kr*e:o=t.v-Ar*e,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function se(t){for(var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=[],o=new W(t),a=o.toHsv(),l=ht;l>0;l-=1){var i=new W({h:ct(a,l,!0),s:pt(a,l,!0),v:xt(a,l,!0)});r.push(i)}r.push(o);for(var m=1;m<=gt;m+=1){var d=new W({h:ct(a,m),s:pt(a,m),v:xt(a,m)});r.push(d)}return e.theme===\"dark\"?Er.map(function(c){var g=c.index,b=c.amount;return new W(e.backgroundColor||\"#141414\").mix(r[g],b).toHexString()}):r.map(function(c){return c.toHexString()})}var Ot=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];Ot.primary=Ot[5];var Tt=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];Tt.primary=Tt[5];var bt=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];bt.primary=bt[5];var Ct=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];Ct.primary=Ct[5];var wt=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wt.primary=wt[5];var yt=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];yt.primary=yt[5];var St=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];St.primary=St[5];var Ft=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Ft.primary=Ft[5];var de=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];de.primary=de[5];var vt=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];vt.primary=vt[5];var Dt=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];Dt.primary=Dt[5];var kt=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];kt.primary=kt[5];var At=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];At.primary=At[5];var Et=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Et.primary=Et[5];var Pt=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Pt.primary=Pt[5];var Rt=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];Rt.primary=Rt[5];var Mt=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Mt.primary=Mt[5];var It=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];It.primary=It[5];var _t=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];_t.primary=_t[5];var Bt=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Bt.primary=Bt[5];var Lt=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lt.primary=Lt[5];var Nt=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Nt.primary=Nt[5];var Ht=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];Ht.primary=Ht[5];var qt=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];qt.primary=qt[5];var Vt=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];Vt.primary=Vt[5];var zt=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];zt.primary=zt[5];function Ut(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),r.push.apply(r,o)}return r}function I(t){for(var e=1;e0&&arguments[0]!==void 0?arguments[0]:{},e=t.mark;return e?e.startsWith(\"data-\")?e:\"data-\".concat(e):Pr}function Ae(t){if(t.attachTo)return t.attachTo;var e=document.querySelector(\"head\");return e||document.body}function Rr(t){return t===\"queue\"?\"prependQueue\":t?\"prepend\":\"append\"}function Ee(t){return Array.from((ke.get(t)||t).children).filter(function(e){return e.tagName===\"STYLE\"})}function Gt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!ve())return null;var r=e.csp,o=e.prepend,a=e.priority,l=a===void 0?0:a,i=Rr(o),m=i===\"prependQueue\",d=document.createElement(\"style\");d.setAttribute($t,i),m&&l&&d.setAttribute(jt,\"\".concat(l)),r!=null&&r.nonce&&(d.nonce=r==null?void 0:r.nonce),d.innerHTML=t;var c=Ae(e),g=c.firstChild;if(o){if(m){var b=(e.styles||Ee(c)).filter(function(f){if(![\"prepend\",\"prependQueue\"].includes(f.getAttribute($t)))return!1;var p=Number(f.getAttribute(jt)||0);return l>=p});if(b.length)return c.insertBefore(d,b[b.length-1].nextSibling),d}c.insertBefore(d,g)}else c.appendChild(d);return d}function Mr(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=Ae(e);return(e.styles||Ee(r)).find(function(o){return o.getAttribute(Wt(e))===t})}function Ir(t,e){var r=ke.get(t);if(!r||!De(document,r)){var o=Gt(\"\",e),a=o.parentNode;ke.set(t,a),t.removeChild(o)}}function Kt(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=Ae(r),a=Ee(o),l=I(I({},r),{},{styles:a});Ir(o,l);var i=Mr(e,l);if(i){var m,d;if((m=l.csp)!==null&&m!==void 0&&m.nonce&&i.nonce!==((d=l.csp)===null||d===void 0?void 0:d.nonce)){var c;i.nonce=(c=l.csp)===null||c===void 0?void 0:c.nonce}return i.innerHTML!==t&&(i.innerHTML=t),i}var g=Gt(t,l);return g.setAttribute(Wt(l),e),g}function Zt(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}function _r(t){return Zt(t)instanceof ShadowRoot}function Qt(t){return _r(t)?Zt(t):null}var Pe={},Br=[],Lr=function(e){Br.push(e)};function Nr(t,e){if(0)var r}function Hr(t,e){if(0)var r}function qr(){Pe={}}function Yt(t,e,r){!e&&!Pe[r]&&(t(!1,r),Pe[r]=!0)}function ue(t,e){Yt(Nr,t,e)}function Vr(t,e){Yt(Hr,t,e)}ue.preMessage=Lr;ue.resetWarned=qr;ue.noteOnce=Vr;var Jt=ue;var G=P(L());function zr(t){return t.replace(/-(.)/g,function(e,r){return r.toUpperCase()})}function er(t,e){Jt(t,\"[@ant-design/icons] \".concat(e))}function Re(t){return N(t)===\"object\"&&typeof t.name==\"string\"&&typeof t.theme==\"string\"&&(N(t.icon)===\"object\"||typeof t.icon==\"function\")}function Xt(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(t).reduce(function(e,r){var o=t[r];switch(r){case\"class\":e.className=o,delete e.class;break;default:delete e[r],e[zr(r)]=o}return e},{})}function me(t,e,r){return r?G.default.createElement(t.tag,I(I({key:e},Xt(t.attrs)),r),(t.children||[]).map(function(o,a){return me(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))})):G.default.createElement(t.tag,I({key:e},Xt(t.attrs)),(t.children||[]).map(function(o,a){return me(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))}))}function Me(t){return se(t)[0]}function ce(t){return t?Array.isArray(t)?t:[t]:[]}var Ur=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",tr=function(e){var r=(0,G.useContext)(ae),o=r.csp,a=r.prefixCls,l=r.layer,i=Ur;a&&(i=i.replace(/anticon/g,a)),l&&(i=\"@layer \".concat(l,\" {\\n\").concat(i,\"\\n}\")),(0,G.useEffect)(function(){var m=e.current,d=Qt(m);Kt(i,\"@ant-design-icons\",{prepend:!l,csp:o,attachTo:d})},[])};var $r=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],te={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function jr(t){var e=t.primaryColor,r=t.secondaryColor;te.primaryColor=e,te.secondaryColor=r||Me(e),te.calculated=!!r}function Wr(){return I({},te)}var pe=function(e){var r=e.icon,o=e.className,a=e.onClick,l=e.style,i=e.primaryColor,m=e.secondaryColor,d=ne(e,$r),c=rr.useRef(),g=te;if(i&&(g={primaryColor:i,secondaryColor:m||Me(i)}),tr(c),er(Re(r),\"icon should be icon definiton, but got \".concat(r)),!Re(r))return null;var b=r;return b&&typeof b.icon==\"function\"&&(b=I(I({},b),{},{icon:b.icon(g.primaryColor,g.secondaryColor)})),me(b.icon,\"svg-\".concat(b.name),I(I({className:o,onClick:a,style:l,\"data-icon\":b.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},d),{},{ref:c}))};pe.displayName=\"IconReact\";pe.getTwoToneColors=Wr;pe.setTwoToneColors=jr;var re=pe;function Ie(t){var e=ce(t),r=le(e,2),o=r[0],a=r[1];return re.setTwoToneColors({primaryColor:o,secondaryColor:a})}function or(){var t=re.getTwoToneColors();return t.calculated?[t.primaryColor,t.secondaryColor]:t.primaryColor}var Gr=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];Ie(de.primary);var xe=K.forwardRef(function(t,e){var r=t.className,o=t.icon,a=t.spin,l=t.rotate,i=t.tabIndex,m=t.onClick,d=t.twoToneColor,c=ne(t,Gr),g=K.useContext(ae),b=g.prefixCls,f=b===void 0?\"anticon\":b,p=g.rootClassName,w=(0,ar.default)(p,f,D(D({},\"\".concat(f,\"-\").concat(o.name),!!o.name),\"\".concat(f,\"-spin\"),!!a||o.name===\"loading\"),r),S=i;S===void 0&&m&&(S=-1);var O=l?{msTransform:\"rotate(\".concat(l,\"deg)\"),transform:\"rotate(\".concat(l,\"deg)\")}:void 0,C=ce(d),A=le(C,2),E=A[0],y=A[1];return K.createElement(\"span\",R({role:\"img\",\"aria-label\":o.name},c,{ref:e,tabIndex:S,onClick:m,className:w}),K.createElement(re,{icon:o,primaryColor:E,secondaryColor:y,style:O}))});xe.displayName=\"AntdIcon\";xe.getTwoToneColor=or;xe.setTwoToneColor=Ie;var H=xe;var he=P(L());var Kr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},lr=Kr;var Zr=function(e,r){return he.createElement(H,R({},e,{ref:r,icon:lr}))},Qr=he.forwardRef(Zr),_e=Qr;var ge=P(L());var Yr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}},{tag:\"path\",attrs:{d:\"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z\"}}]},name:\"clock-circle\",theme:\"outlined\"},nr=Yr;var Jr=function(e,r){return ge.createElement(H,R({},e,{ref:r,icon:nr}))},Xr=ge.forwardRef(Jr),Be=Xr;var Oe=P(L());var eo={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z\"}}]},name:\"close-circle\",theme:\"outlined\"},ir=eo;var to=function(e,r){return Oe.createElement(H,R({},e,{ref:r,icon:ir}))},ro=Oe.forwardRef(to),Le=ro;var Te=P(L());var oo={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM416 702h-76V172c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v530h-76c-6.7 0-10.5 7.8-6.3 13l112 141.9a8 8 0 0012.6 0l112-141.9c4.1-5.2.4-13-6.3-13z\"}}]},name:\"sort-ascending\",theme:\"outlined\"},fr=oo;var ao=function(e,r){return Te.createElement(H,R({},e,{ref:r,icon:fr}))},lo=Te.forwardRef(ao),Ne=lo;var be=P(L());var no={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM310.3 167.1a8 8 0 00-12.6 0L185.7 309c-4.2 5.3-.4 13 6.3 13h76v530c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V322h76c6.7 0 10.5-7.8 6.3-13l-112-141.9z\"}}]},name:\"sort-descending\",theme:\"outlined\"},sr=no;var io=function(e,r){return be.createElement(H,R({},e,{ref:r,icon:sr}))},fo=be.forwardRef(io),He=fo;var Z=P(ur(),1);var qe=class{constructor(e=100,r=5*60*1e3){this.maxSize=e,this.ttl=r,this.cache=new Map,this.accessOrder=[]}get(e){let r=this.cache.get(e);return r?Date.now()-r.timestamp>this.ttl?(this.delete(e),null):(this._updateAccessOrder(e),r.value):null}set(e,r){if(this.cache.has(e)&&this.delete(e),this.cache.size>=this.maxSize){let o=this.accessOrder[0];o&&this.delete(o)}this.cache.set(e,{value:r,timestamp:Date.now()}),this.accessOrder.push(e)}delete(e){this.cache.delete(e);let r=this.accessOrder.indexOf(e);r>-1&&this.accessOrder.splice(r,1)}_updateAccessOrder(e){let r=this.accessOrder.indexOf(e);r>-1&&(this.accessOrder.splice(r,1),this.accessOrder.push(e))}clear(){this.cache.clear(),this.accessOrder=[]}get size(){return this.cache.size}cleanup(){let e=Date.now(),r=[];for(let[o,a]of this.cache.entries())e-a.timestamp>this.ttl&&r.push(o);return r.forEach(o=>this.delete(o)),r.length}getStats(){return{size:this.cache.size,maxSize:this.maxSize,ttl:this.ttl,utilizationRate:(this.cache.size/this.maxSize*100).toFixed(2)+\"%\"}}*entries(){let e=Date.now(),r=[];for(let[o,a]of this.cache.entries()){if(e-a.timestamp>this.ttl){r.push(o);continue}yield[o,a.value]}r.forEach(o=>this.delete(o))}},Ve=qe;var mr=[\"\\u7F8E\\u5267\",\"\\u97E9\\u5267\",\"\\u65E5\\u5267\",\"\\u53F0\\u5267\",\"\\u6E2F\\u5267\",\"\\u6E2F\\u53F0\\u5267\",\"\\u56FD\\u4EA7\\u5267\",\"\\u5927\\u9646\\u5267\",\"\\u5185\\u5730\\u5267\",\"\\u6CF0\\u5267\",\"\\u82F1\\u5267\",\"\\u7F8E\\u5267\\u7248\",\"\\u82F1\\u5267\\u7248\",\"\\u65E5\\u5267\\u7248\",\"\\u97E9\\u5267\\u7248\",\"\\u53F0\\u5267\\u7248\",\"\\u6E2F\\u5267\\u7248\",\"\\u6CF0\\u5267\\u7248\",\"\\u5F71\\u540E\",\"\\u5F71\\u5E1D\",\"\\u56FD\\u5267\",\"\\u5FAE\\u77ED\\u5267\",\"\\u77ED\\u5267\",\"\\u7535\\u5F71\",\"\\u5267\\u96C6\",\"\\u7EFC\\u827A\",\"\\u72AF\\u7F6A\",\"\\u52A8\\u6F2B\",\"\\u52A8\\u753B\",\"\\u7EAA\\u5F55\\u7247\",\"\\u77ED\\u7247\",\"\\u8FDE\\u7EED\\u5267\",\"\\u7CFB\\u5217\\u5267\",\"\\u7F51\\u7EDC\\u5267\",\"\\u7535\\u89C6\\u5267\"],cr=[\"\\u5F71\\u7247\",\"\\u7247\\u5B50\",\"\\u7247\\u82B1\",\"\\u7247\\u6BB5\",\"\\u9884\\u544A\",\"\\u9884\\u544A\\u7247\",\"\\u82B1\\u7D6E\",\"\\u5E55\\u540E\",\"\\u8BBF\\u8C08\",\"\\u7279\\u522B\\u7BC7\",\"\\u756A\\u5916\\u7BC7\",\"OVA\",\"OAD\",\"SP\",\"TV\\u7248\",\"\\u5267\\u573A\\u7248\",\"\\u7535\\u5F71\\u7248\",\"\\u5F71\\u7248\",\"\\u5267\\u7248\",\"\\u56FD\\u8BED\\u7248\",\"\\u666E\\u901A\\u8BDD\\u7248\",\"\\u7CA4\\u8BED\\u7248\",\"\\u95FD\\u5357\\u8BED\\u7248\",\"\\u5BA2\\u5BB6\\u8BED\\u7248\",\"\\u5434\\u8BED\\u7248\",\"\\u5DDD\\u8BED\\u7248\",\"\\u6E58\\u8BED\\u7248\",\"\\u8D63\\u8BED\\u7248\",\"\\u7CA4\\u8BED\\u914D\\u97F3\\u7248\",\"\\u56FD\\u8BED\\u914D\\u97F3\\u7248\",\"\\u666E\\u901A\\u8BDD\\u914D\\u97F3\\u7248\",\"\\u65B9\\u8A00\\u7248\",\"\\u539F\\u7248\\u914D\\u97F3\",\"\\u539F\\u97F3\\u7248\",\"\\u53F0\\u8BED\\u7248\",\"\\u7CA4\\u8BED\\u4E2D\\u5B57\\u7248\",\"\\u56FD\\u8BED\\u4E2D\\u5B57\\u7248\",\"\\u666E\\u901A\\u8BDD\\u4E2D\\u5B57\\u7248\",\"\\u7CA4\\u8BED\\u539F\\u58F0\\u7248\",\"\\u56FD\\u8BED\\u539F\\u58F0\\u7248\",\"\\u666E\\u901A\\u8BDD\\u539F\\u58F0\\u7248\",\"\\u7CA4\\u8BED\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u56FD\\u8BED\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u666E\\u901A\\u8BDD\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u52A8\\u753B\\u7248\",\"\\u771F\\u4EBA\\u7248\",\"\\u6539\\u7F16\\u7248\",\"\\u91CD\\u5236\\u7248\",\"\\u4FEE\\u590D\\u7248\",\"\\u52A0\\u957F\\u7248\",\"\\u672A\\u5220\\u51CF\\u7248\",\"\\u5B8C\\u6574\\u7248\",\"\\u5BFC\\u6F14\\u526A\\u8F91\\u7248\",\"\\u7EC8\\u6781\\u7248\",\"\\u7279\\u522B\\u7248\",\"\\u9650\\u5B9A\\u7248\",\"\\u6536\\u85CF\\u7248\",\"\\u8C6A\\u534E\\u7248\",\"\\u5178\\u85CF\\u7248\",\"\\u9AD8\\u6E05\\u7248\",\"\\u8D85\\u6E05\\u7248\",\"\\u6807\\u6E05\\u7248\",\"HD\\u7248\",\"UHD\\u7248\",\"4K\\u7248\",\"\\u84DD\\u5149\\u7248\",\"DVD\\u7248\",\"BD\\u7248\",\"WEB\\u7248\",\"TVrip\",\"BDrip\",\"DVDrip\",\"HDrip\",\"WEB-DL\",\"HDTV\",\"DVDRip\",\"BRRip\",\"HDRip\",\"BluRay\",\"TS\",\"TC\",\"CAM\",\"\\u62A2\\u5148\\u7248\",\"\\u67AA\\u7248\",\"\\u5077\\u62CD\\u7248\",\"\\u6CC4\\u9732\\u7248\",\"\\u62A2\\u5148\\u770B\",\"\\u6B63\\u7247\",\"\\u6B63\\u7247\\u7247\\u6BB5\",\"\\u6B63\\u7247\\u7CBE\\u534E\",\"\\u82B1\\u7D6E\\u96C6\\u9526\",\"\\u5E55\\u540E\\u82B1\\u7D6E\",\"\\u5236\\u4F5C\\u7279\\u8F91\",\"\\u8BBF\\u8C08\\u5F55\",\"\\u9996\\u6620\\u793C\",\"\\u7EA2\\u6BEF\\u79C0\",\"\\u8DEF\\u6F14\",\"\\u53D1\\u5E03\\u4F1A\",\"\\u9884\\u544A\\u7247\\u5408\\u96C6\",\"\\u9884\\u544A\\u7247\\u82B1\\u7D6E\",\"\\u7247\\u82B1\\u9884\\u544A\",\"\\u7CBE\\u5F69\\u7247\\u6BB5\",\"\\u7CBE\\u5F69\\u96C6\\u9526\",\"\\u7CBE\\u9009\\u7247\\u6BB5\",\"\\u9AD8\\u80FD\\u7247\\u6BB5\",\"\\u9AD8\\u5149\\u65F6\\u523B\",\"\\u526A\\u8F91\\u7248\",\"\\u6DF7\\u526A\",\"MV\",\"\\u4E3B\\u9898\\u66F2\",\"\\u63D2\\u66F2\",\"\\u7247\\u5C3E\\u66F2\",\"\\u914D\\u4E50\",\"\\u539F\\u58F0\",\"OST\",\"\\u539F\\u58F0\\u5E26\",\"\\u539F\\u58F0\\u5927\\u789F\",\"\\u97F3\\u4E50\\u96C6\",\"\\u97F3\\u4E50\\u4F1A\",\"\\u6F14\\u5531\",\"Live\",\"Live\\u7248\",\"\\u73B0\\u573A\\u7248\",\"\\u73B0\\u573A\\u5F55\\u5236\",\"\\u821E\\u53F0\\u7248\",\"\\u821E\\u53F0\\u5267\",\"\\u8BDD\\u5267\",\"\\u6B4C\\u5267\",\"\\u821E\\u5267\",\"\\u620F\\u66F2\",\"\\u4EAC\\u5267\",\"\\u8D8A\\u5267\",\"\\u7CA4\\u5267\",\"\\u8BC4\\u5267\",\"\\u9EC4\\u6885\\u620F\",\"\\u4E8C\\u4EBA\\u8F6C\",\"\\u76F8\\u58F0\",\"\\u5C0F\\u54C1\",\"\\u7EFC\\u827A\\u79C0\",\"\\u771F\\u4EBA\\u79C0\",\"\\u8131\\u53E3\\u79C0\",\"\\u8BBF\\u8C08\\u8282\\u76EE\",\"\\u7EAA\\u5F55\\u7247\\u7CFB\\u5217\",\"\\u4E13\\u9898\\u7247\",\"\\u79D1\\u6559\\u7247\",\"\\u52A8\\u753B\\u7247\",\"\\u52A8\\u6F2B\\u7247\",\"\\u52A8\\u753B\\u77ED\\u7247\",\"\\u52A8\\u753B\\u7535\\u5F71\",\"\\u52A8\\u753B\\u7CFB\\u5217\",\"\\u52A8\\u753B\\u5267\\u96C6\",\"\\u52A8\\u753B\\u8FDE\\u7EED\\u5267\",\"\\u52A8\\u753BOVA\",\"\\u52A8\\u753BOAD\",\"\\u52A8\\u753BSP\",\"\\u52A8\\u753B\\u7279\\u5178\",\"\\u52A8\\u753B\\u5408\\u96C6\",\"\\u52A8\\u753B\\u7CBE\\u9009\",\"\\u7535\\u5F71\\u5408\\u96C6\",\"\\u5F71\\u7247\\u5408\\u96C6\",\"\\u7CFB\\u5217\\u5408\\u96C6\",\"\\u5408\\u96C6\\u7248\",\"\\u5957\\u88C5\\u7248\",\"\\u5957\\u88C5\\u5408\\u96C6\",\"\\u5168\\u96C6\",\"\\u5168\\u7CFB\\u5217\",\"\\u5168\\u5B63\",\"\\u66F4\\u65B0\\u4E2D\",\"\\u5B8C\\u7ED3\",\"\\u5B8C\\u7ED3\\u7BC7\",\"\\u5B8C\\u7ED3\\u5B63\",\"\\u6700\\u7EC8\\u5B63\",\"\\u6700\\u7EC8\\u7AE0\",\"\\u7EC8\\u7AE0\",\"\\u7EC8\\u7BC7\",\"\\u5927\\u7ED3\\u5C40\",\"\\u5927\\u7D50\\u5C40\",\"\\u7279\\u522B\\u7BC7\\u5B8C\\u7ED3\",\"\\u756A\\u5916\\u5B8C\\u7ED3\",\"OVA\\u5B8C\\u7ED3\",\"OAD\\u5B8C\\u7ED3\",\"SP\\u5B8C\\u7ED3\",\"\\u5168\\u5267\\u7EC8\",\"\\u5B8C\\u7ED3\\u6492\\u82B1\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\",\"\\u5B8C\\u7ED3\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7BC7\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7279\\u8F91\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u8BBF\\u8C08\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u82B1\\u7D6E\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u8BBF\\u8C08\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u7279\\u8F91\\u8BBF\\u8C08\\u82B1\\u7D6E\",\"BD\",\"BDRIP\",\"WEB-DL\",\"HDRip\",\"DVDRip\",\"BDRip\",\"BRRip\",\"Rip\",\"BluRay\",\"IMAX\",\"CAM\",\"HD\",\"HDR\",\"UHD\",\"4K\",\"1080p\",\"720p\",\"2160p\",\"480p\",\"120fps\",\"60fps\",\"x264\",\"x265\",\"H264\",\"HEVC\",\"AAC\",\"dts\",\"ddp\",\"truehd\",\"10bit\",\"8bit\",\"5.1\",\"7.1\",\"\\u56FD\\u8BED\",\"\\u7CA4\\u8BED\",\"\\u82F1\\u8BED\",\"\\u65E5\\u8BED\",\"\\u97E9\\u8BED\",\"\\u6CF0\\u8BED\",\"\\u6CD5\\u8BED\",\"\\u5FB7\\u8BED\",\"\\u897F\\u73ED\\u7259\\u8BED\",\"\\u4FC4\\u8BED\",\"\\u8461\\u8404\\u7259\\u8BED\",\"\\u610F\\u5927\\u5229\\u8BED\",\"\\u81FB\\u5F69\",\"\\u4E2D\\u5B57\",\"\\u7B80\\u4E2D\",\"\\u7E41\\u4E2D\",\"\\u7B80\\u7E41\\u4E2D\\u5B57\",\"\\u4E2D\\u82F1\\u53CC\\u5B57\",\"\\u5185\\u5D4C\",\"\\u5185\\u5C01\",\"\\u675C\\u6BD4\\u5168\\u666F\\u58F0\",\"\\u675C\\u6BD4\\u97F3\\u6548\",\"\\u65E0\\u6C34\\u5370\",\"\\u5B8C\\u6574\\u7248\",\"\\u539F\\u58F0\\u7248\",\"\\u89E3\\u8BF4\\u7248\",\"\\u9884\\u544A\\u7247\",\"\\u672A\\u5220\\u51CF\\u7248\",\"\\u52A0\\u957F\\u7248\",\"\\u84DD\\u5149\",\"\\u62A2\\u5148\\u7248\",\"TC\\u7248\",\"\\u62A2\\u5148\",\"TC\",\"\\u4E24\\u5B63\\u5168\",\"\\u5168\\u5B63\",\"\\u5168\\u96C6\",\"DV\",\"\\u538B\\u5236\",\"HQ\",\"\\u5E27\",\"\\u7535\\u5F71\\u7248\",\"\\u8C46\\u74E3\",\"\\u66F4\\u65B0\",\"\\u66F4\\u65B0\\u5230\",\"\\u63A8\\u8350\",\"\\u52A8\\u4F5C\",\"\\u5192\\u9669\",\"\\u7231\\u60C5\",\"\\u79D1\\u5E7B\",\"\\u60AC\\u7591\",\"\\u60CA\\u609A\",\"\\u6050\\u6016\",\"\\u559C\\u5267\",\"\\u60B2\\u5267\",\"\\u5267\\u60C5\",\"\\u5947\\u5E7B\",\"\\u72AF\\u7F6A\",\"\\u6218\\u4E89\",\"\\u5386\\u53F2\",\"\\u4F20\\u8BB0\",\"\\u97F3\\u4E50\",\"\\u6B4C\\u821E\",\"\\u5BB6\\u5EAD\",\"\\u513F\\u7AE5\",\"\\u4F53\\u80B2\",\"\\u707E\\u96BE\",\"\\u4F26\\u7406\",\"\\u77ED\\u7247\",\"\\u5FAE\\u7535\\u5F71\",\"\\u9AD8\\u6E05\",\"\\u8D85\\u6E05\",\"\\u6807\\u6E05\",\"\\u62A2\\u9C9C\\u770B\",\"\\u9996\\u64AD\",\"\\u72EC\\u64AD\",\"\\u70ED\\u64AD\",\"\\u8FDE\\u8F7D\\u4E2D\",\"\\u6700\\u65B0\",\"\\u7ECF\\u5178\",\"\\u70ED\\u95E8\",\"\\u83B7\\u5956\",\"\\u53E3\\u7891\",\"\\u597D\\u8BC4\",\"\\u9AD8\\u5206\",\"\\u8C46\\u74E3\\u9AD8\\u5206\",\"IMDb\\u9AD8\\u5206\",\"\\u672A\\u5206\\u7EA7\",\"\\u9650\\u5236\\u7EA7\",\"\\u5BFC\\u6F14\\u526A\\u8F91\",\"\\u52A0\\u957F\",\"\\u7279\\u522B\\u52A0\\u957F\",\"\\u7EC8\\u6781\\u526A\\u8F91\",\"\\u6536\\u85CF\",\"\\u8C6A\\u534E\",\"\\u7EAA\\u5FF5\",\"\\u9650\\u5B9A\",\"\\u91CD\\u6620\",\"\\u4FEE\\u590D\",\"\\u6570\\u7801\\u4FEE\\u590D\",\"\\u91CD\\u5236\",\"\\u84DD\\u5149\\u4FEE\\u590D\",\"\\u91CD\\u5236\\u9AD8\\u6E05\",\"\\u9AD8\\u6E05\\u91CD\\u5236\",\"\\u91CD\\u7F16\",\"\\u91CD\\u526A\",\"\\u914D\\u97F3\",\"\\u8BD1\\u5236\",\"\\u539F\\u58F0\",\"\\u53CC\\u8BED\",\"\\u591A\\u8BED\",\"\\u591A\\u58F0\\u9053\",\"\\u73AF\\u7ED5\\u58F0\",\"\\u5168\\u666F\\u58F0\",\"3D\",\"VR\",\"\\u5168\\u666F\",\"360\\u5EA6\",\"8K\",\"\\u539F\\u753B\",\"\\u65E0\\u635F\",\"\\u6709\\u635F\",\"\\u538B\\u7F29\",\"\\u672A\\u538B\\u7F29\",\"\\u9AD8\\u7801\\u7387\",\"\\u4F4E\\u7801\\u7387\",\"\\u91CD\\u7F16\\u7801\",\"\\u591A\\u5B57\\u5E55\",\"\\u591A\\u97F3\\u8F68\",\"\\u53CC\\u97F3\\u8F68\",\"\\u591A\\u7248\\u672C\",\"\\u5408\\u96C6\",\"\\u5957\\u88C5\",\"\\u7CFB\\u5217\",\"\\u5B8C\\u7ED3\\u7248\",\"\\u6700\\u7EC8\\u5B63\",\"\\u6700\\u7EC8\\u7AE0\",\"\\u7EC8\\u7AE0\",\"\\u5927\\u7ED3\\u5C40\",\"\\u7279\\u522B\\u7BC7\",\"\\u756A\\u5916\\u7BC7\",\"OVA\",\"OAD\",\"SP\",\"\\u5267\\u573A\\u7248\",\"\\u7535\\u5F71\\u7248\",\"\\u5F71\\u7248\",\"\\u5267\\u7248\",\"\\u52A8\\u753B\\u7248\",\"\\u771F\\u4EBA\\u7248\",\"\\u6539\\u7F16\\u7248\",\"\\u539F\\u521B\",\"\\u884D\\u751F\",\"\\u756A\\u5916\",\"\\u7EED\\u96C6\",\"\\u524D\\u4F20\",\"\\u540E\\u4F20\",\"\\u91CD\\u542F\",\"\\u7FFB\\u62CD\",\"\\u91CD\\u62CD\",\"\\u81F4\\u656C\",\"\\u7EAA\\u5FF5\",\"\\u732E\\u793C\",\"\\u8D3A\\u5C81\",\"\\u6691\\u671F\\u6863\",\"\\u56FD\\u5E86\\u6863\",\"\\u8D3A\\u5C81\\u6863\",\"\\u6625\\u8282\\u6863\",\"\\u60C5\\u4EBA\\u8282\\u6863\",\"\\u4E2D\\u79CB\\u6863\",\"\\u6863\\u671F\",\"\\u4E0A\\u6620\",\"\\u5B9A\\u6863\",\"\\u9996\\u6620\",\"\\u516C\\u6620\",\"\\u4E0A\\u6620\\u65F6\\u95F4\",\"\\u4E0A\\u6620\\u65E5\\u671F\",\"\\u7968\\u623F\",\"\\u7968\\u623F\\u51A0\\u519B\",\"\\u7968\\u623F\\u699C\",\"\\u53E3\\u7891\\u699C\",\"\\u8BC4\\u5206\\u699C\",\"\\u6392\\u884C\\u699C\",\"\\u699C\\u5355\",\"\\u699C\\u5355\\u7B2C\\u4E00\",\"\\u70ED\\u95E8\\u699C\",\"\\u70ED\\u641C\",\"\\u70ED\\u8BAE\",\"\\u8BDD\\u9898\",\"\\u70ED\\u8BAE\\u8BDD\\u9898\",\"\\u70ED\\u95E8\\u8BDD\\u9898\",\"\\u8BA8\\u8BBA\\u5EA6\",\"\\u5173\\u6CE8\\u5EA6\",\"\\u70ED\\u5EA6\",\"\\u70ED\\u5EA6\\u699C\",\"\\u70ED\\u95E8\\u63A8\\u8350\",\"\\u7CBE\\u9009\",\"\\u529B\\u8350\",\"\\u5F3A\\u70C8\\u63A8\\u8350\",\"\\u5FC5\\u770B\",\"\\u4E0D\\u53EF\\u9519\\u8FC7\",\"\\u7ECF\\u5178\\u4E4B\\u4F5C\",\"\\u795E\\u4F5C\",\"\\u4F73\\u4F5C\",\"\\u9AD8\\u5206\\u4F73\\u4F5C\",\"\\u9AD8\\u5206\\u795E\\u4F5C\",\"\\u70C2\\u7247\",\"\\u5DEE\\u8BC4\",\"\\u4F4E\\u5206\",\"\\u53E3\\u7891\\u7206\\u68DA\",\"\\u53E3\\u7891\\u6251\\u8857\",\"\\u53E3\\u7891\\u4E24\\u6781\",\"\\u53E3\\u7891\\u5206\\u5316\",\"\\u4E89\\u8BAE\",\"\\u70ED\\u8BAE\\u4E0D\\u65AD\",\"\\u5907\\u53D7\\u5173\\u6CE8\",\"\\u4E07\\u4F17\\u671F\\u5F85\",\"\\u671F\\u5F85\\u5DF2\\u4E45\",\"\\u4E07\\u4F17\\u77A9\\u76EE\",\"\\u5E74\\u5EA6\\u6700\\u4F73\",\"\\u5E74\\u5EA6\\u6700\\u5DEE\",\"\\u5E74\\u5EA6\\u4E4B\\u4F5C\",\"\\u5E74\\u5EA6\\u9ED1\\u9A6C\",\"\\u5E74\\u5EA6\\u60CA\\u559C\",\"\\u5E74\\u5EA6\\u5931\\u671B\",\"\\u538B\\u8F74\\u4E4B\\u4F5C\",\"\\u6536\\u5B98\\u4E4B\\u4F5C\",\"\\u6536\\u5B98\",\"\\u6536\\u5B98\\u5B63\",\"\\u6536\\u5B98\\u6218\",\"\\u5927\\u7ED3\\u5C40\\u524D\\u7BC7\",\"\\u5927\\u7ED3\\u5C40\\u540E\\u7BC7\",\"\\u6700\\u7EC8\\u56DE\",\"\\u6700\\u7EC8\\u8BDD\",\"\\u6700\\u7EC8\\u7AE0\\u524D\\u7BC7\",\"\\u6700\\u7EC8\\u7AE0\\u540E\\u7BC7\"],so=[...mr,...cr],vl=new RegExp(so.join(\"|\"),\"ig\"),Dl=new RegExp(mr.join(\"|\"),\"ig\");function uo(t){return String(t).replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}var mo=new RegExp(cr.map(uo).sort((t,e)=>e.length-t.length).join(\"|\"),\"ig\"),q=new Ve(500,60*60*1e3),kl=new Ve(1e3,60*60*1e3);function ze(t){if(!t||!t.trim())return\"\";let e=t.trim(),r=q.get(t);if(r!==null)return r;e=e.replace(new RegExp(\"^[\\\\u{1F300}-\\\\u{1F9FF}\\\\u{2600}-\\\\u{26FF}\\\\u{2700}-\\\\u{27BF}]+\\\\s*\",\"u\"),\"\");let o=e.indexOf(\"\\u300A\"),a=e.indexOf(\"\\u300B\");if(o!==-1&&a!==-1&&oString.fromCharCode(parseInt(p,16))).replace(/<[^>]+>/g,\"\").replace(/&[a-z]+;/gi,\"\").trim();let i=e.match(/\\[([^\\]]+)\\]/g);if(i&&i.length>=2){let f=e.replace(/\\[([^\\]]+)\\]/g,\"\").trim();if(!/[\\u4e00-\\u9fa5]/.test(f))for(let O of i){let C=O.slice(1,-1);if(/[\\u4e00-\\u9fa5]/.test(C)&&!/全球|封装|字幕|语言|下载/.test(C)){let A=C;if(A.includes(\".\")){let E=A.split(\".\").filter(y=>y.trim());for(let y of E)if(/[\\u4e00-\\u9fa5]/.test(y)&&!/全\\d+季/.test(y)){A=y.trim();break}}return q.set(t,A),A}}let w=i[0].slice(1,-1),S=i[1].slice(1,-1);if(/夸克|百度|迅雷|阿里|天翼|115|下载/.test(w)&&/[\\u4e00-\\u9fa5]/.test(S))return q.set(t,S),S}let m=e.indexOf(\"|\"),d=e.lastIndexOf(\"|\");if(m!==-1&&m!==d){let f=e.substring(m+1,d).trim();return q.set(t,f),f}e=e.replace(/[/g,\"[\").replace(/]/g,\"]\"),e=e.replace(/\\[([^\\]]*)\\]/g,(f,p)=>/第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+/i.test(p)?f:\"\").trim(),e=e.replace(/[((].*?[))]/g,\"\").replace(/【.*?】/g,\"\").trim(),e=e.replace(/\\b\\d+(\\.\\d+)?[GMK]B?\\b/gi,\"\").replace(/\\b(2160|1080|720|480)[pP]\\b/gi,\"\").replace(/\\b(4K|2K|HDR|HD|SD|FHD|UHD)\\b/gi,\"\").replace(/\\bx264|x265|H264|HEVC\\b/gi,\"\").replace(/\\bAAC|AC3|DTS|FLAC\\b/gi,\"\").replace(/\\b(10bit|8bit|60fps|120fps)\\b/gi,\"\").replace(/\\bWEB-DL\\b/gi,\"\").replace(/\\bWEB-MKV\\b/gi,\"\").replace(/\\bWEB-\\b/gi,\"\").replace(/\\bWEB\\b/gi,\"\").replace(/\\bREMUX\\b/gi,\"\").replace(/S\\d+E\\d+(-S\\d+E\\d+)?/gi,\"\").replace(/完结\\s*\\d+\\s*集/g,\"\").replace(/更新\\s*\\d+\\s*集/g,\"\").replace(/更新至\\s*\\d+\\s*集/g,\"\").replace(/更至\\s*\\d+\\s*集/g,\"\").replace(/全\\s*\\d+\\s*集/g,\"\").replace(/第\\s*\\d+\\s*集/g,\"\").replace(/最新/g,\"\").replace(/臻彩/g,\"\").replace(mo,\"\").replace(/[\\u200E\\u200F\\u202A-\\u202E]/g,\"\").replace(/\\s+/g,\" \").trim();let c=e.match(/([\\u4e00-\\u9fa5]{2,})/);if(c){let f=c[1],p=new RegExp(f+\"\\\\d*\"+f,\"g\");e=e.replace(p,f)}if(e=e.replace(/\\d{4}$/g,\"\").trim(),e=e.replace(/[((][))]/g,\"\").replace(/【】/g,\"\").replace(/\\[\\]/g,\"\").trim(),e.includes(\".\")){let f=e.split(\".\").filter(w=>w.trim()),p=\"\";for(let w of f)if(/[\\u4e00-\\u9fa5]/.test(w)){p=w.trim();break}if(p){let w=p.match(/全\\d+季/);if(w)e=p.substring(0,w.index).trim();else{e=p;for(let S of f){let O=S.match(/^S(\\d+)$/i);if(O){e=e+\" \"+O[0];break}}}}}let g=!1;if(e.includes(\"-\")){let f=e.split(\"-\"),p=\"\";for(let w of f)if(/[\\u4e00-\\u9fa5]/.test(w)){p=w.trim();break}if(p)if(/第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+/i.test(p))e=p,g=!0;else{let w=e.match(/第[一二三四五六七八九十\\d]+季|S(\\d+)|Season\\s*(\\d+)/i);if(w)return e=p+\" \"+w[0],g=!0,q.set(t,e),e;e=p,g=!0}}if(e.includes(\"/\")){let f=e.split(\"/\");for(let p of f)if(/[\\u4e00-\\u9fa5]/.test(p)){e=p.trim();break}}if(!g&&e.includes(\" \")){let f=e.split(\" \").filter(S=>S.trim());if(f.length>1&&f[0].length===1&&/[a-zA-Z]/.test(f[0])){let S=f.slice(0,2).join(\" \");return q.set(t,S),S}if(f.length===2&&/[\\u4e00-\\u9fa5]/.test(f[0])&&/^(第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+)$/i.test(f[1]))return q.set(t,e),e;let p=[],w=!1;for(let S=0;S0?e=p.join(\" \"):f.length>0&&(e=f[0])}e=e.replace(/[::·.。]+$/,\"\").replace(/\\.全\\d+季$/,\"\").replace(/\\.第[一二三四五六七八九十\\d]+季$/,\"\").replace(/\\.$/,\"\").replace(/未删减版$/,\"\").replace(/无删减版$/,\"\").replace(/删减版$/,\"\").replace(/完整版$/,\"\").replace(/\\s+$/,\"\").trim();let b=e||t;return q.set(t,b),b}if(typeof window<\"u\"){let t=document.createElement(\"style\");t.textContent=\"html,\\nbody,\\n#app {\\n height: 100%;\\n margin: 0;\\n padding: 0;\\n overflow: hidden;\\n}\\n.danmu-container {\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n padding: 20px;\\n box-sizing: border-box;\\n}\\n.danmu-container .main-title {\\n text-align: center;\\n transition: all 0.3s ease-out;\\n max-height: 50px;\\n opacity: 1;\\n margin-bottom: 20px;\\n overflow: hidden;\\n}\\n.danmu-container .main-title.hidden {\\n max-height: 0;\\n opacity: 0;\\n margin: 0;\\n}\\n.danmu-container .search-input {\\n margin-bottom: 20px;\\n}\\n.danmu-container .result-container {\\n flex-grow: 1;\\n overflow: hidden;\\n display: flex;\\n flex-direction: column;\\n}\\n.danmu-container .result-container .spin-container {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 100%;\\n}\\n.danmu-container .result-container > .ant-tabs {\\n flex-grow: 1;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n}\\n.danmu-container .result-container > .ant-tabs .ant-tabs-content-holder {\\n overflow-y: auto;\\n flex-grow: 1;\\n}\\n.drawer {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-mask {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-content-wrapper {\\n left: 0;\\n right: 0;\\n}\\n.drawer .ant-drawer-title {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.drawer .ant-list-item {\\n padding: 16px 24px;\\n}\\n@media (max-width: 768px) {\\n .danmu-container {\\n padding: 10px;\\n }\\n .danmu-container .search-input {\\n margin-bottom: 8px;\\n }\\n .danmu-container .ant-tabs-left > .ant-tabs-nav {\\n width: 80px;\\n }\\n .danmu-container .ant-tabs-nav {\\n margin: 0;\\n }\\n .danmu-container .ant-tabs-tab {\\n font-size: 12px;\\n padding: 8px 12px;\\n }\\n .danmu-container .anime-episode-container {\\n flex-direction: column;\\n }\\n .danmu-container .anime-episode-container .anime-list-col,\\n .danmu-container .anime-episode-container .episode-list-col {\\n width: 100%;\\n border-right: none;\\n max-height: 50vh;\\n }\\n .danmu-container .anime-episode-container .anime-list-col {\\n border-bottom: 1px solid #f0f0f0;\\n }\\n .drawer .ant-drawer-header {\\n padding: 16px 12px;\\n }\\n .drawer .ant-list-item {\\n padding: 12px;\\n }\\n}\\n\",document.head.appendChild(t)}var{Search:co}=h.Input,{Title:po}=h.Typography,Ce=\"danmu_search_cache\",pr=\"danmu_search_order\",xo=5,ho=10*60*1e3,go=t=>{let e=localStorage.getItem(Ce);if(!e)return null;try{let r=JSON.parse(e),o=r[t];return o?Date.now()-o.timestamp>ho?(delete r[t],localStorage.setItem(Ce,JSON.stringify(r)),null):o.data:null}catch(r){return console.error(\"\\u7F13\\u5B58\\u8BFB\\u53D6\\u5931\\u8D25:\",r),null}},Oo=(t,e)=>{let r=[];try{r=JSON.parse(localStorage.getItem(pr)||\"[]\")}catch(a){}let o={};try{o=JSON.parse(localStorage.getItem(Ce)||\"{}\")}catch(a){}if(r=r.filter(a=>a!==t),r.unshift(t),o[t]={data:e,timestamp:Date.now()},r.length>xo){let a=r.pop();delete o[a]}localStorage.setItem(pr,JSON.stringify(r)),localStorage.setItem(Ce,JSON.stringify(o))},Ue=50,To=({animes:t,sourceUrl:e,inputValue:r})=>{var $;let[o,a]=(0,s.useState)(!1),[l,i]=(0,s.useState)(null),[m,d]=(0,s.useState)(!1),[c,g]=(0,s.useState)(\"\"),[b,f]=(0,s.useState)(0),p=(0,s.useRef)(null),w=(r||\"\").trim(),S=async n=>{var u,M,V,z,U,j,B;let F=new AbortController;p.current=F,console.log(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u5F00\\u59CB\",{inputValue:w,sourceUrl:e,animeTitle:l==null?void 0:l.animeTitle,episodeId:n==null?void 0:n.episodeId,episodeTitle:n==null?void 0:n.episodeTitle});let x=\"\",v=\"\";try{let T=await Z.default.get(\"/website/danmu/current-play\",{timeout:3e3}),$e=((u=T==null?void 0:T.data)==null?void 0:u.data)||{};if(x=$e.flag||window.currentPlayFlag||\"\",v=$e.id||window.currentPlayId||\"\",!x||!v){let we=await messageToDart({action:\"getPlayInfo\"});we&&(x=we.flag||\"\",v=we.id||\"\")}}catch(T){console.warn(\"\\u65E0\\u6CD5\\u83B7\\u53D6\\u64AD\\u653E\\u4FE1\\u606F\\uFF0Cflag/id \\u53EF\\u80FD\\u4E3A\\u7A7A\",T)}try{let T=await Z.default.post(\"/website/danmu/push\",{url:\"/website/danmu/comment?source=\".concat(encodeURIComponent(e),\"&episodeId=\").concat(encodeURIComponent(n.episodeId),\"&format=xml\"),sourceUrl:e,anime:l,title:w,flag:x,id:v},{signal:F.signal});if(console.log(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u6210\\u529F\",{inputValue:w,sourceUrl:e,animeTitle:l==null?void 0:l.animeTitle,episodeId:n==null?void 0:n.episodeId,episodeTitle:n==null?void 0:n.episodeTitle,flag:x,id:v}),(M=T==null?void 0:T.data)!=null&&M.code&&T.data.code!==0)throw new Error(((V=T==null?void 0:T.data)==null?void 0:V.message)||\"\\u63A8\\u9001\\u5931\\u8D25\");h.message.success(\"\\u5DF2\\u63A8\\u9001 \".concat((U=(z=T==null?void 0:T.data)==null?void 0:z.danmuCount)!=null?U:0,\" \\u6761\\u5F39\\u5E55\\uFF0C\\u8BF7\\u7B49\\u5F85\\u5F39\\u5E55\\u52A0\\u8F7D\\u5B8C\\u6210\")),a(!1)}catch(T){if(Z.default.isCancel(T)){console.log(\"\\u63A8\\u9001\\u8BF7\\u6C42\\u5DF2\\u53D6\\u6D88\");return}console.error(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u5931\\u8D25\",{inputValue:w,sourceUrl:e,animeTitle:l==null?void 0:l.animeTitle,episodeId:n==null?void 0:n.episodeId,episodeTitle:n==null?void 0:n.episodeTitle,flag:x,id:v,message:T==null?void 0:T.message,status:(j=T==null?void 0:T.response)==null?void 0:j.status,data:(B=T==null?void 0:T.response)==null?void 0:B.data}),console.error(T),h.message.error((T==null?void 0:T.message)||\"\\u63A8\\u9001\\u5931\\u8D25\")}finally{p.current===F&&(p.current=null)}},O=n=>{let F=Array.isArray(n==null?void 0:n.episodes)?n.episodes:[];i(Y(Q({},n),{episodes:F})),g(\"\"),f(0),a(!0),d(!1)},C=()=>{if(l){let n=Array.isArray(l.episodes)?l.episodes:[];i(Y(Q({},l),{episodes:[...n].reverse()})),d(F=>!F)}},A=n=>{var v,u;let F=(u=(v=n==null?void 0:n.episodeNumber)!=null?v:n==null?void 0:n.number)!=null?u:\"?\",x=(n==null?void 0:n.episodeTitle)||(n==null?void 0:n.title)||(n==null?void 0:n.name)||\"\";return x?\"\\u7B2C\".concat(F,\"\\u96C6 - \").concat(x):\"\\u7B2C\".concat(F,\"\\u96C6\")},E=Array.isArray(l==null?void 0:l.episodes)?l.episodes.filter(n=>{var u,M;let F=c.trim().toLowerCase();if(!F)return!0;let x=String((M=(u=n==null?void 0:n.episodeNumber)!=null?u:n==null?void 0:n.number)!=null?M:\"\"),v=A(n).toLowerCase();return x.includes(F)||v.includes(F)}):[],y=Array.from({length:Math.max(1,Math.ceil(E.length/Ue))},(n,F)=>{let x=F*Ue,v=Math.min(E.length,x+Ue);return{key:F,label:\"\".concat(x+1,\"-\").concat(v),items:E.slice(x,v)}}),_=Math.min(b,Math.max(y.length-1,0)),oe=(($=y[_])==null?void 0:$.items)||[];return!t||t.length===0?s.default.createElement(h.Empty,{description:\"\\u8BE5\\u6765\\u6E90\\u4E0B\\u65E0\\u7ED3\\u679C\"}):s.default.createElement(s.default.Fragment,null,s.default.createElement(h.List,{dataSource:t,renderItem:n=>{let F=Array.isArray(n==null?void 0:n.episodes)?n.episodes.length:(n==null?void 0:n.episodeCount)||(n==null?void 0:n.episodesCount)||0;return s.default.createElement(h.List.Item,{onClick:()=>O(n)},s.default.createElement(\"div\",{style:{display:\"flex\",width:\"100%\",justifyContent:\"space-between\",gap:12}},s.default.createElement(\"span\",null,n.animeTitle),s.default.createElement(h.Tag,{color:\"blue\"},F,\"\\u96C6\")))}}),l&&s.default.createElement(h.Drawer,{title:l.animeTitle,placement:\"bottom\",onClose:()=>a(!1),open:o,height:\"80%\",destroyOnClose:!0,closable:!1,bodyStyle:{padding:0},rootClassName:\"drawer\",extra:s.default.createElement(h.Button,{icon:m?s.default.createElement(Ne,null):s.default.createElement(He,null),onClick:C,style:{marginLeft:16}})},s.default.createElement(\"div\",{style:{padding:\"12px 16px\",borderBottom:\"1px solid #f0f0f0\",display:\"flex\",flexDirection:\"column\",gap:12}},s.default.createElement(h.Input,{placeholder:\"\\u8F93\\u5165\\u96C6\\u6570\\u6216\\u6807\\u9898\\u5173\\u952E\\u8BCD\\uFF0C\\u5B9E\\u65F6\\u8FC7\\u6EE4\",value:c,onChange:n=>{g(n.target.value),f(0)},allowClear:!0}),y.length>1&&s.default.createElement(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:8}},y.map(n=>s.default.createElement(h.Tag,{key:n.key,color:_===n.key?\"processing\":\"default\",style:{cursor:\"pointer\",marginInlineEnd:0},onClick:()=>f(n.key)},n.label)))),s.default.createElement(h.List,{dataSource:oe,locale:{emptyText:\"\\u6CA1\\u6709\\u5339\\u914D\\u5230\\u53EF\\u9009\\u5267\\u96C6\"},renderItem:n=>s.default.createElement(h.List.Item,{onClick:()=>S(n)},A(n))})))};function hr(){let[t,e]=(0,s.useState)([]),[r,o]=(0,s.useState)(!1),[a,l]=(0,s.useState)([]),[i,m]=(0,s.useState)({}),[d,c]=(0,s.useState)(!1),[g,b]=(0,s.useState)(()=>{let O=new URLSearchParams(window.location.search).get(\"keyword\")||\"\";return ze(O||\"\").trim()||O.trim()}),f=(0,s.useRef)(null);(0,s.useEffect)(()=>{Z.default.get(\"/website/danmu/setting\").then(O=>{if(O.data.code===0&&O.data.data&&O.data.data.urls){let C=[],A=new Set;O.data.data.urls.forEach(E=>{let y={name:E.name||new URL(E.address).hostname,url:E.address},_=\"\".concat(y.name,\"@@\").concat(y.url);A.has(_)||(A.add(_),C.push(y))}),e(C)}else h.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")}).catch(O=>{console.error(O),h.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")})},[]);let p=(0,s.useCallback)((O,C=!1)=>{let E=(O||\"\").trim(),y=C&&ze(E).trim()||E;if(!y){C||h.message.warning(\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u5173\\u952E\\u8BCD\");return}if(t.length===0&&!C){h.message.error(\"\\u6CA1\\u6709\\u53EF\\u7528\\u7684\\u5F39\\u5E55\\u6E90\");return}if(b(y),!C){let x=new URL(window.location);x.searchParams.set(\"keyword\",y),window.history.pushState({},\"\",x)}if(C){let x=go(y);if(x){l(x),c(!0),o(!1);let v={};x.forEach(u=>{v[u.sourceName]={status:\"success\",fromCache:!0}}),m(v),h.message.success(\"\\u4ECE\\u7F13\\u5B58\\u52A0\\u8F7D\\u4E86\\u7ED3\\u679C\");return}}f.current&&f.current.abort();let _=new AbortController;f.current=_,o(!0),c(!0),l([]),m({});let oe=0,$=[],n=Date.now(),F={};t.forEach(x=>{F[x.name]={status:\"loading\",duration:0}}),m(F),t.forEach(x=>{let v=Date.now();console.log(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u5F00\\u59CB\",{keyword:y,sourceName:x.name,sourceUrl:x.url}),Z.default.get(\"/website/danmu/search\",{params:{source:x.url,anime:y},timeout:1e4,signal:_.signal}).then(u=>{var z,U,j;if(f.current!==_)return;let M=Date.now()-v,V=Array.isArray((z=u==null?void 0:u.data)==null?void 0:z.animes)?u.data.animes:[];if(console.log(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u54CD\\u5E94\",{keyword:y,sourceName:x.name,sourceUrl:x.url,duration:M,status:u==null?void 0:u.status,success:(U=u==null?void 0:u.data)==null?void 0:U.success,animeCount:V.length,preview:V.slice(0,5).map(B=>B==null?void 0:B.animeTitle)}),u.data.success&&u.data.animes&&u.data.animes.length>0){let B={sourceName:x.name,sourceUrl:x.url,data:u.data};$.push(B),l(T=>[...T,B]),m(T=>Y(Q({},T),{[x.name]:{status:\"success\",duration:M,count:u.data.animes.length}}))}else console.warn(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u65E0\\u7ED3\\u679C\\u6216\\u672A\\u6EE1\\u8DB3\\u6210\\u529F\\u5224\\u5B9A\",{keyword:y,sourceName:x.name,sourceUrl:x.url,duration:M,status:u==null?void 0:u.status,success:(j=u==null?void 0:u.data)==null?void 0:j.success,animeCount:V.length,rawData:u==null?void 0:u.data}),m(B=>Y(Q({},B),{[x.name]:{status:\"empty\",duration:M}}))}).catch(u=>{var z,U;if(f.current!==_)return;if(Z.default.isCancel(u)){console.log(\"\\u641C\\u7D22\\u8BF7\\u6C42\\u5DF2\\u53D6\\u6D88: \".concat(x.name));return}let M=Date.now()-v;console.error(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u5931\\u8D25: \".concat(x.name),{keyword:y,sourceName:x.name,sourceUrl:x.url,duration:M,message:u==null?void 0:u.message,code:u==null?void 0:u.code,status:(z=u==null?void 0:u.response)==null?void 0:z.status,data:(U=u==null?void 0:u.response)==null?void 0:U.data});let V=u.code===\"ECONNABORTED\"?\"\\u8D85\\u65F6\":\"\\u5931\\u8D25\";m(j=>Y(Q({},j),{[x.name]:{status:\"error\",duration:M,error:V}}))}).finally(()=>{if(f.current===_&&(oe++,oe===t.length)){o(!1);let u=Date.now()-n;console.log(\"\\u641C\\u7D22\\u5B8C\\u6210\\uFF0C\\u603B\\u8017\\u65F6: \".concat(u,\"ms\")),$.length>0?(Oo(y,$),h.message.success(\"\\u627E\\u5230 \".concat($.length,\" \\u4E2A\\u6E90\\u7684\\u7ED3\\u679C\"))):h.message.warning(\"\\u672A\\u627E\\u5230\\u4EFB\\u4F55\\u7ED3\\u679C\")}})})},[t]);(0,s.useEffect)(()=>{if(t.length>0){let C=new URLSearchParams(window.location.search).get(\"keyword\");C&&p(C,!0)}},[t,p]);let w=O=>{let C=i[O];if(!C)return null;if(C.fromCache)return s.default.createElement(h.Tag,{color:\"blue\",style:{marginLeft:8}},\"\\u7F13\\u5B58\");switch(C.status){case\"loading\":return s.default.createElement(h.Tag,{icon:s.default.createElement(Be,null),color:\"processing\",style:{marginLeft:8}},\"\\u641C\\u7D22\\u4E2D\");case\"success\":return s.default.createElement(h.Tag,{icon:s.default.createElement(_e,null),color:\"success\",style:{marginLeft:8}},C.count,\"\\u4E2A\\u7ED3\\u679C (\",C.duration,\"ms)\");case\"empty\":return s.default.createElement(h.Tag,{color:\"default\",style:{marginLeft:8}},\"\\u65E0\\u7ED3\\u679C (\",C.duration,\"ms)\");case\"error\":return s.default.createElement(h.Tag,{icon:s.default.createElement(Le,null),color:\"error\",style:{marginLeft:8}},C.error,\" (\",C.duration,\"ms)\");default:return null}},S=a.map((O,C)=>({key:\"\".concat(O.sourceName,\"-\").concat(C),label:s.default.createElement(\"span\",null,O.sourceName,w(O.sourceName)),children:s.default.createElement(To,{animes:O.data.animes,sourceUrl:O.sourceUrl,inputValue:g})}));return s.default.createElement(\"div\",{className:\"danmu-container\"},s.default.createElement(po,{level:2,className:\"main-title \".concat(d?\"hidden\":\"\")},\"\\u5F39\\u5E55\\u641C\\u7D22\"),s.default.createElement(\"div\",{style:{display:\"flex\",gap:12,alignItems:\"center\"}},s.default.createElement(co,{placeholder:\"\\u8F93\\u5165\\u5F71\\u89C6\\u540D\\u79F0...\",enterButton:\"\\u641C\\u7D22\",size:\"large\",onSearch:O=>p(O),loading:r,className:\"search-input\",value:g,onChange:O=>b(O.target.value)})),s.default.createElement(\"div\",{className:\"result-container\"},d&&a.length===0&&r&&s.default.createElement(\"div\",{className:\"spin-container\"},s.default.createElement(h.Spin,{size:\"large\"})),a.length>0&&s.default.createElement(h.Tabs,{items:S,size:\"small\"}),d&&a.length===0&&!r&&s.default.createElement(h.Empty,{description:\"\\u672A\\u627E\\u5230\\u76F8\\u5173\\u7ED3\\u679C\"})))}function bo(){(0,xr.createRoot)(document.getElementById(\"app\")).render(s.default.createElement(hr,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n", + "var Or=Object.create;var te=Object.defineProperty,Tr=Object.defineProperties,br=Object.getOwnPropertyDescriptor,Cr=Object.getOwnPropertyDescriptors,wr=Object.getOwnPropertyNames,Ge=Object.getOwnPropertySymbols,yr=Object.getPrototypeOf,Ze=Object.prototype.hasOwnProperty,Sr=Object.prototype.propertyIsEnumerable;var Ke=(t,e,r)=>e in t?te(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,J=(t,e)=>{for(var r in e||(e={}))Ze.call(e,r)&&Ke(t,r,e[r]);if(Ge)for(var r of Ge(e))Sr.call(e,r)&&Ke(t,r,e[r]);return t},X=(t,e)=>Tr(t,Cr(e));var ee=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Fr=(t,e)=>{for(var r in e)te(t,r,{get:e[r],enumerable:!0})},Qe=(t,e,r,o)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of wr(e))!Ze.call(t,a)&&a!==r&&te(t,a,{get:()=>e[a],enumerable:!(o=br(e,a))||o.enumerable});return t};var P=(t,e,r)=>(r=t!=null?Or(yr(t)):{},Qe(e||!t||!t.__esModule?te(r,\"default\",{value:t,enumerable:!0}):r,t)),vr=t=>Qe(te({},\"__esModule\",{value:!0}),t);var H=ee((So,Ye)=>{Ye.exports=window.React});var Xe=ee((Fo,Je)=>{Je.exports=window.ReactDOM});var tt=ee(Fe=>{\"use strict\";var et=Xe();Fe.createRoot=et.createRoot,Fe.hydrateRoot=et.hydrateRoot;var vo});var ot=ee((ko,rt)=>{rt.exports=window.antd});var mt=ee((Xo,de)=>{(function(){\"use strict\";var t={}.hasOwnProperty;function e(){for(var a=\"\",l=0;l{mr.exports=window.axios});var wo={};Fr(wo,{Danmu:()=>gr,renderDanmu:()=>Co});module.exports=vr(wo);var f=P(H(),1),xr=P(tt(),1),h=P(ot(),1);var at=P(H()),Dr=(0,at.createContext)({}),ne=Dr;function M(){return M=Object.assign?Object.assign.bind():function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,o=Array(e);rparseFloat(a));for(let a=0;a<3;a+=1)o[a]=e(o[a]||0,r[a]||\"\",a);return r[3]?o[3]=r[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var ct=(t,e,r)=>r===0?t:t/100;function re(t,e){let r=e||255;return t>r?r:t<0?0:t}var K=class t{constructor(e){D(this,\"isValid\",!0),D(this,\"r\",0),D(this,\"g\",0),D(this,\"b\",0),D(this,\"a\",1),D(this,\"_h\",void 0),D(this,\"_s\",void 0),D(this,\"_l\",void 0),D(this,\"_v\",void 0),D(this,\"_max\",void 0),D(this,\"_min\",void 0),D(this,\"_brightness\",void 0);function r(o){return o[0]in e&&o[1]in e&&o[2]in e}if(e)if(typeof e==\"string\"){let a=function(l){return o.startsWith(l)},o=e.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(e instanceof t)this.r=e.r,this.g=e.g,this.b=e.b,this.a=e.a,this._h=e._h,this._s=e._s,this._l=e._l,this._v=e._v;else if(r(\"rgb\"))this.r=re(e.r),this.g=re(e.g),this.b=re(e.b),this.a=typeof e.a==\"number\"?re(e.a,1):1;else if(r(\"hsl\"))this.fromHsl(e);else if(r(\"hsv\"))this.fromHsv(e);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(e))}setR(e){return this._sc(\"r\",e)}setG(e){return this._sc(\"g\",e)}setB(e){return this._sc(\"b\",e)}setA(e){return this._sc(\"a\",e,1)}setHue(e){let r=this.toHsv();return r.h=e,this._c(r)}getLuminance(){function e(l){let n=l/255;return n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4)}let r=e(this.r),o=e(this.g),a=e(this.b);return .2126*r+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let e=this.getMax()-this.getMin();e===0?this._h=0:this._h=k(60*(this.r===this.getMax()?(this.g-this.b)/e+(this.g\"u\"){let e=this.getMax()-this.getMin();e===0?this._s=0:this._s=e/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()-e/100;return a<0&&(a=0),this._c({h:r,s:o,l:a,a:this.a})}lighten(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()+e/100;return a>1&&(a=1),this._c({h:r,s:o,l:a,a:this.a})}mix(e,r=50){let o=this._c(e),a=r/100,l=c=>(o[c]-this[c])*a+this[c],n={r:k(l(\"r\")),g:k(l(\"g\")),b:k(l(\"b\")),a:k(l(\"a\")*100)/100};return this._c(n)}tint(e=10){return this.mix({r:255,g:255,b:255,a:1},e)}shade(e=10){return this.mix({r:0,g:0,b:0,a:1},e)}onBackground(e){let r=this._c(e),o=this.a+r.a*(1-this.a),a=l=>k((this[l]*this.a+r[l]*r.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}clone(){return this._c(this)}toHexString(){let e=\"#\",r=(this.r||0).toString(16);e+=r.length===2?r:\"0\"+r;let o=(this.g||0).toString(16);e+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(e+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let l=k(this.a*255).toString(16);e+=l.length===2?l:\"0\"+l}return e}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let e=this.getHue(),r=k(this.getSaturation()*100),o=k(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(e,r,o){let a=this.clone();return a[e]=re(r,o),a}_c(e){return new this.constructor(e)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(e){let r=e.replace(\"#\",\"\");function o(a,l){return parseInt(r[a]+r[l||a],16)}r.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=r[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=r[6]?o(6,7)/255:1)}fromHsl({h:e,s:r,l:o,a}){if(this._h=e%360,this._s=r,this._l=o,this.a=typeof a==\"number\"?a:1,r<=0){let d=k(o*255);this.r=d,this.g=d,this.b=d}let l=0,n=0,c=0,m=e/60,u=(1-Math.abs(2*o-1))*r,g=u*(1-Math.abs(m%2-1));m>=0&&m<1?(l=u,n=g):m>=1&&m<2?(l=g,n=u):m>=2&&m<3?(n=u,c=g):m>=3&&m<4?(n=g,c=u):m>=4&&m<5?(l=g,c=u):m>=5&&m<6&&(l=u,c=g);let b=o-u/2;this.r=k((l+b)*255),this.g=k((n+b)*255),this.b=k((c+b)*255)}fromHsv({h:e,s:r,v:o,a}){this._h=e%360,this._s=r,this._v=o,this.a=typeof a==\"number\"?a:1;let l=k(o*255);if(this.r=l,this.g=l,this.b=l,r<=0)return;let n=e/60,c=Math.floor(n),m=n-c,u=k(o*(1-r)*255),g=k(o*(1-r*m)*255),b=k(o*(1-r*(1-m))*255);switch(c){case 0:this.g=b,this.b=u;break;case 1:this.r=g,this.b=u;break;case 2:this.r=u,this.b=b;break;case 3:this.r=u,this.g=g;break;case 4:this.r=b,this.g=u;break;case 5:default:this.g=u,this.b=g;break}}fromHsvString(e){let r=De(e,ct);this.fromHsv({h:r[0],s:r[1],v:r[2],a:r[3]})}fromHslString(e){let r=De(e,ct);this.fromHsl({h:r[0],s:r[1],l:r[2],a:r[3]})}fromRgbString(e){let r=De(e,(o,a)=>a.includes(\"%\")?k(o/100*255):o);this.r=r[0],this.g=r[1],this.b=r[2],this.a=r[3]}};var se=2,pt=.16,kr=.05,Ar=.05,Er=.15,Ot=5,Tt=4,Pr=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function xt(t,e,r){var o;return Math.round(t.h)>=60&&Math.round(t.h)<=240?o=r?Math.round(t.h)-se*e:Math.round(t.h)+se*e:o=r?Math.round(t.h)+se*e:Math.round(t.h)-se*e,o<0?o+=360:o>=360&&(o-=360),o}function ht(t,e,r){if(t.h===0&&t.s===0)return t.s;var o;return r?o=t.s-pt*e:e===Tt?o=t.s+pt:o=t.s+kr*e,o>1&&(o=1),r&&e===Ot&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function gt(t,e,r){var o;return r?o=t.v+Ar*e:o=t.v-Er*e,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function ue(t){for(var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=[],o=new K(t),a=o.toHsv(),l=Ot;l>0;l-=1){var n=new K({h:xt(a,l,!0),s:ht(a,l,!0),v:gt(a,l,!0)});r.push(n)}r.push(o);for(var c=1;c<=Tt;c+=1){var m=new K({h:xt(a,c),s:ht(a,c),v:gt(a,c)});r.push(m)}return e.theme===\"dark\"?Pr.map(function(u){var g=u.index,b=u.amount;return new K(e.backgroundColor||\"#141414\").mix(r[g],b).toHexString()}):r.map(function(u){return u.toHexString()})}var bt=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];bt.primary=bt[5];var Ct=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];Ct.primary=Ct[5];var wt=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];wt.primary=wt[5];var yt=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];yt.primary=yt[5];var St=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];St.primary=St[5];var Ft=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Ft.primary=Ft[5];var vt=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];vt.primary=vt[5];var Dt=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Dt.primary=Dt[5];var me=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];me.primary=me[5];var kt=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];kt.primary=kt[5];var At=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];At.primary=At[5];var Et=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Et.primary=Et[5];var Pt=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Pt.primary=Pt[5];var Mt=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Mt.primary=Mt[5];var Rt=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Rt.primary=Rt[5];var It=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];It.primary=It[5];var _t=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];_t.primary=_t[5];var Bt=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];Bt.primary=Bt[5];var Lt=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Lt.primary=Lt[5];var Nt=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Nt.primary=Nt[5];var Ht=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Ht.primary=Ht[5];var qt=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];qt.primary=qt[5];var Vt=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];Vt.primary=Vt[5];var zt=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];zt.primary=zt[5];var Ut=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];Ut.primary=Ut[5];var $t=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];$t.primary=$t[5];function jt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),r.push.apply(r,o)}return r}function I(t){for(var e=1;e0&&arguments[0]!==void 0?arguments[0]:{},e=t.mark;return e?e.startsWith(\"data-\")?e:\"data-\".concat(e):Mr}function Pe(t){if(t.attachTo)return t.attachTo;var e=document.querySelector(\"head\");return e||document.body}function Rr(t){return t===\"queue\"?\"prependQueue\":t?\"prepend\":\"append\"}function Me(t){return Array.from((Ee.get(t)||t).children).filter(function(e){return e.tagName===\"STYLE\"})}function Zt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!ke())return null;var r=e.csp,o=e.prepend,a=e.priority,l=a===void 0?0:a,n=Rr(o),c=n===\"prependQueue\",m=document.createElement(\"style\");m.setAttribute(Wt,n),c&&l&&m.setAttribute(Gt,\"\".concat(l)),r!=null&&r.nonce&&(m.nonce=r==null?void 0:r.nonce),m.innerHTML=t;var u=Pe(e),g=u.firstChild;if(o){if(c){var b=(e.styles||Me(u)).filter(function(d){if(![\"prepend\",\"prependQueue\"].includes(d.getAttribute(Wt)))return!1;var p=Number(d.getAttribute(Gt)||0);return l>=p});if(b.length)return u.insertBefore(m,b[b.length-1].nextSibling),m}u.insertBefore(m,g)}else u.appendChild(m);return m}function Ir(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=Pe(e);return(e.styles||Me(r)).find(function(o){return o.getAttribute(Kt(e))===t})}function _r(t,e){var r=Ee.get(t);if(!r||!Ae(document,r)){var o=Zt(\"\",e),a=o.parentNode;Ee.set(t,a),t.removeChild(o)}}function Qt(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=Pe(r),a=Me(o),l=I(I({},r),{},{styles:a});_r(o,l);var n=Ir(e,l);if(n){var c,m;if((c=l.csp)!==null&&c!==void 0&&c.nonce&&n.nonce!==((m=l.csp)===null||m===void 0?void 0:m.nonce)){var u;n.nonce=(u=l.csp)===null||u===void 0?void 0:u.nonce}return n.innerHTML!==t&&(n.innerHTML=t),n}var g=Zt(t,l);return g.setAttribute(Kt(l),e),g}function Yt(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}function Br(t){return Yt(t)instanceof ShadowRoot}function Jt(t){return Br(t)?Yt(t):null}var Re={},Lr=[],Nr=function(e){Lr.push(e)};function Hr(t,e){if(0)var r}function qr(t,e){if(0)var r}function Vr(){Re={}}function Xt(t,e,r){!e&&!Re[r]&&(t(!1,r),Re[r]=!0)}function ce(t,e){Xt(Hr,t,e)}function zr(t,e){Xt(qr,t,e)}ce.preMessage=Nr;ce.resetWarned=Vr;ce.noteOnce=zr;var er=ce;var Z=P(H());function Ur(t){return t.replace(/-(.)/g,function(e,r){return r.toUpperCase()})}function rr(t,e){er(t,\"[@ant-design/icons] \".concat(e))}function Ie(t){return q(t)===\"object\"&&typeof t.name==\"string\"&&typeof t.theme==\"string\"&&(q(t.icon)===\"object\"||typeof t.icon==\"function\")}function tr(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(t).reduce(function(e,r){var o=t[r];switch(r){case\"class\":e.className=o,delete e.class;break;default:delete e[r],e[Ur(r)]=o}return e},{})}function pe(t,e,r){return r?Z.default.createElement(t.tag,I(I({key:e},tr(t.attrs)),r),(t.children||[]).map(function(o,a){return pe(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))})):Z.default.createElement(t.tag,I({key:e},tr(t.attrs)),(t.children||[]).map(function(o,a){return pe(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))}))}function _e(t){return ue(t)[0]}function xe(t){return t?Array.isArray(t)?t:[t]:[]}var $r=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",or=function(e){var r=(0,Z.useContext)(ne),o=r.csp,a=r.prefixCls,l=r.layer,n=$r;a&&(n=n.replace(/anticon/g,a)),l&&(n=\"@layer \".concat(l,\" {\\n\").concat(n,\"\\n}\")),(0,Z.useEffect)(function(){var c=e.current,m=Jt(c);Qt(n,\"@ant-design-icons\",{prepend:!l,csp:o,attachTo:m})},[])};var jr=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],oe={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Wr(t){var e=t.primaryColor,r=t.secondaryColor;oe.primaryColor=e,oe.secondaryColor=r||_e(e),oe.calculated=!!r}function Gr(){return I({},oe)}var he=function(e){var r=e.icon,o=e.className,a=e.onClick,l=e.style,n=e.primaryColor,c=e.secondaryColor,m=fe(e,jr),u=ar.useRef(),g=oe;if(n&&(g={primaryColor:n,secondaryColor:c||_e(n)}),or(u),rr(Ie(r),\"icon should be icon definiton, but got \".concat(r)),!Ie(r))return null;var b=r;return b&&typeof b.icon==\"function\"&&(b=I(I({},b),{},{icon:b.icon(g.primaryColor,g.secondaryColor)})),pe(b.icon,\"svg-\".concat(b.name),I(I({className:o,onClick:a,style:l,\"data-icon\":b.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},m),{},{ref:u}))};he.displayName=\"IconReact\";he.getTwoToneColors=Gr;he.setTwoToneColors=Wr;var ae=he;function Be(t){var e=xe(t),r=ie(e,2),o=r[0],a=r[1];return ae.setTwoToneColors({primaryColor:o,secondaryColor:a})}function lr(){var t=ae.getTwoToneColors();return t.calculated?[t.primaryColor,t.secondaryColor]:t.primaryColor}var Kr=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];Be(me.primary);var ge=Q.forwardRef(function(t,e){var r=t.className,o=t.icon,a=t.spin,l=t.rotate,n=t.tabIndex,c=t.onClick,m=t.twoToneColor,u=fe(t,Kr),g=Q.useContext(ne),b=g.prefixCls,d=b===void 0?\"anticon\":b,p=g.rootClassName,C=(0,nr.default)(p,d,D(D({},\"\".concat(d,\"-\").concat(o.name),!!o.name),\"\".concat(d,\"-spin\"),!!a||o.name===\"loading\"),r),w=n;w===void 0&&c&&(w=-1);var A=l?{msTransform:\"rotate(\".concat(l,\"deg)\"),transform:\"rotate(\".concat(l,\"deg)\")}:void 0,_=xe(m),O=ie(_,2),y=O[0],E=O[1];return Q.createElement(\"span\",M({role:\"img\",\"aria-label\":o.name},u,{ref:e,tabIndex:w,onClick:c,className:C}),Q.createElement(ae,{icon:o,primaryColor:y,secondaryColor:E,style:A}))});ge.displayName=\"AntdIcon\";ge.getTwoToneColor=lr;ge.setTwoToneColor=Be;var V=ge;var Oe=P(H());var Zr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},ir=Zr;var Qr=function(e,r){return Oe.createElement(V,M({},e,{ref:r,icon:ir}))},Yr=Oe.forwardRef(Qr),Le=Yr;var Te=P(H());var Jr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}},{tag:\"path\",attrs:{d:\"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z\"}}]},name:\"clock-circle\",theme:\"outlined\"},fr=Jr;var Xr=function(e,r){return Te.createElement(V,M({},e,{ref:r,icon:fr}))},eo=Te.forwardRef(Xr),Ne=eo;var be=P(H());var to={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm0 76c-205.4 0-372 166.6-372 372s166.6 372 372 372 372-166.6 372-372-166.6-372-372-372zm128.01 198.83c.03 0 .05.01.09.06l45.02 45.01a.2.2 0 01.05.09.12.12 0 010 .07c0 .02-.01.04-.05.08L557.25 512l127.87 127.86a.27.27 0 01.05.06v.02a.12.12 0 010 .07c0 .03-.01.05-.05.09l-45.02 45.02a.2.2 0 01-.09.05.12.12 0 01-.07 0c-.02 0-.04-.01-.08-.05L512 557.25 384.14 685.12c-.04.04-.06.05-.08.05a.12.12 0 01-.07 0c-.03 0-.05-.01-.09-.05l-45.02-45.02a.2.2 0 01-.05-.09.12.12 0 010-.07c0-.02.01-.04.06-.08L466.75 512 338.88 384.14a.27.27 0 01-.05-.06l-.01-.02a.12.12 0 010-.07c0-.03.01-.05.05-.09l45.02-45.02a.2.2 0 01.09-.05.12.12 0 01.07 0c.02 0 .04.01.08.06L512 466.75l127.86-127.86c.04-.05.06-.06.08-.06a.12.12 0 01.07 0z\"}}]},name:\"close-circle\",theme:\"outlined\"},dr=to;var ro=function(e,r){return be.createElement(V,M({},e,{ref:r,icon:dr}))},oo=be.forwardRef(ro),He=oo;var Ce=P(H());var ao={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM416 702h-76V172c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v530h-76c-6.7 0-10.5 7.8-6.3 13l112 141.9a8 8 0 0012.6 0l112-141.9c4.1-5.2.4-13-6.3-13z\"}}]},name:\"sort-ascending\",theme:\"outlined\"},sr=ao;var lo=function(e,r){return Ce.createElement(V,M({},e,{ref:r,icon:sr}))},no=Ce.forwardRef(lo),qe=no;var we=P(H());var io={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM310.3 167.1a8 8 0 00-12.6 0L185.7 309c-4.2 5.3-.4 13 6.3 13h76v530c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V322h76c6.7 0 10.5-7.8 6.3-13l-112-141.9z\"}}]},name:\"sort-descending\",theme:\"outlined\"},ur=io;var fo=function(e,r){return we.createElement(V,M({},e,{ref:r,icon:ur}))},so=we.forwardRef(fo),Ve=so;var Y=P(cr(),1);var ze=class{constructor(e=100,r=5*60*1e3){this.maxSize=e,this.ttl=r,this.cache=new Map}get(e){let r=this.cache.get(e);return r?Date.now()-r.timestamp>this.ttl?(this.cache.delete(e),null):(this.cache.delete(e),this.cache.set(e,r),r.value):null}set(e,r){if(this.cache.has(e))this.cache.delete(e);else if(this.cache.size>=this.maxSize){let o=this.cache.keys().next().value;o!==void 0&&this.cache.delete(o)}this.cache.set(e,{value:r,timestamp:Date.now()})}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}get size(){return this.cache.size}cleanup(){let e=Date.now(),r=0;for(let[o,a]of this.cache.entries())e-a.timestamp>this.ttl&&(this.cache.delete(o),r++);return r}getStats(){return{size:this.cache.size,maxSize:this.maxSize,ttl:this.ttl,utilizationRate:(this.cache.size/this.maxSize*100).toFixed(2)+\"%\"}}*entries(){let e=Date.now();for(let[r,o]of[...this.cache.entries()]){if(e-o.timestamp>this.ttl){this.cache.delete(r);continue}yield[r,o.value]}}},Ue=ze;var uo=[\"\\u5F71\\u7247\",\"\\u7247\\u5B50\",\"\\u7247\\u82B1\",\"\\u7247\\u6BB5\",\"\\u9884\\u544A\",\"\\u9884\\u544A\\u7247\",\"\\u82B1\\u7D6E\",\"\\u5E55\\u540E\",\"\\u8BBF\\u8C08\",\"\\u7279\\u522B\\u7BC7\",\"\\u756A\\u5916\\u7BC7\",\"OVA\",\"OAD\",\"SP\",\"TV\\u7248\",\"\\u5267\\u573A\\u7248\",\"\\u7535\\u5F71\\u7248\",\"\\u5F71\\u7248\",\"\\u5267\\u7248\",\"\\u56FD\\u8BED\\u7248\",\"\\u666E\\u901A\\u8BDD\\u7248\",\"\\u7CA4\\u8BED\\u7248\",\"\\u95FD\\u5357\\u8BED\\u7248\",\"\\u5BA2\\u5BB6\\u8BED\\u7248\",\"\\u5434\\u8BED\\u7248\",\"\\u5DDD\\u8BED\\u7248\",\"\\u6E58\\u8BED\\u7248\",\"\\u8D63\\u8BED\\u7248\",\"\\u7CA4\\u8BED\\u914D\\u97F3\\u7248\",\"\\u56FD\\u8BED\\u914D\\u97F3\\u7248\",\"\\u666E\\u901A\\u8BDD\\u914D\\u97F3\\u7248\",\"\\u65B9\\u8A00\\u7248\",\"\\u539F\\u7248\\u914D\\u97F3\",\"\\u539F\\u97F3\\u7248\",\"\\u53F0\\u8BED\\u7248\",\"\\u7CA4\\u8BED\\u4E2D\\u5B57\\u7248\",\"\\u56FD\\u8BED\\u4E2D\\u5B57\\u7248\",\"\\u666E\\u901A\\u8BDD\\u4E2D\\u5B57\\u7248\",\"\\u7CA4\\u8BED\\u539F\\u58F0\\u7248\",\"\\u56FD\\u8BED\\u539F\\u58F0\\u7248\",\"\\u666E\\u901A\\u8BDD\\u539F\\u58F0\\u7248\",\"\\u7CA4\\u8BED\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u56FD\\u8BED\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u666E\\u901A\\u8BDD\\u5185\\u5D4C\\u5B57\\u5E55\\u7248\",\"\\u52A8\\u753B\\u7248\",\"\\u771F\\u4EBA\\u7248\",\"\\u6539\\u7F16\\u7248\",\"\\u91CD\\u5236\\u7248\",\"\\u4FEE\\u590D\\u7248\",\"\\u52A0\\u957F\\u7248\",\"\\u672A\\u5220\\u51CF\\u7248\",\"\\u5B8C\\u6574\\u7248\",\"\\u5BFC\\u6F14\\u526A\\u8F91\\u7248\",\"\\u7EC8\\u6781\\u7248\",\"\\u7279\\u522B\\u7248\",\"\\u9650\\u5B9A\\u7248\",\"\\u6536\\u85CF\\u7248\",\"\\u8C6A\\u534E\\u7248\",\"\\u5178\\u85CF\\u7248\",\"\\u9AD8\\u6E05\\u7248\",\"\\u8D85\\u6E05\\u7248\",\"\\u6807\\u6E05\\u7248\",\"HD\\u7248\",\"UHD\\u7248\",\"4K\\u7248\",\"\\u84DD\\u5149\\u7248\",\"DVD\\u7248\",\"BD\\u7248\",\"WEB\\u7248\",\"TVrip\",\"BDrip\",\"DVDrip\",\"HDrip\",\"WEB-DL\",\"HDTV\",\"DVDRip\",\"BRRip\",\"HDRip\",\"BluRay\",\"TS\",\"TC\",\"CAM\",\"\\u62A2\\u5148\\u7248\",\"\\u67AA\\u7248\",\"\\u5077\\u62CD\\u7248\",\"\\u6CC4\\u9732\\u7248\",\"\\u62A2\\u5148\\u770B\",\"\\u6B63\\u7247\",\"\\u6B63\\u7247\\u7247\\u6BB5\",\"\\u6B63\\u7247\\u7CBE\\u534E\",\"\\u82B1\\u7D6E\\u96C6\\u9526\",\"\\u5E55\\u540E\\u82B1\\u7D6E\",\"\\u5236\\u4F5C\\u7279\\u8F91\",\"\\u8BBF\\u8C08\\u5F55\",\"\\u9996\\u6620\\u793C\",\"\\u7EA2\\u6BEF\\u79C0\",\"\\u8DEF\\u6F14\",\"\\u53D1\\u5E03\\u4F1A\",\"\\u9884\\u544A\\u7247\\u5408\\u96C6\",\"\\u9884\\u544A\\u7247\\u82B1\\u7D6E\",\"\\u7247\\u82B1\\u9884\\u544A\",\"\\u7CBE\\u5F69\\u7247\\u6BB5\",\"\\u7CBE\\u5F69\\u96C6\\u9526\",\"\\u7CBE\\u9009\\u7247\\u6BB5\",\"\\u9AD8\\u80FD\\u7247\\u6BB5\",\"\\u9AD8\\u5149\\u65F6\\u523B\",\"\\u526A\\u8F91\\u7248\",\"\\u6DF7\\u526A\",\"MV\",\"\\u4E3B\\u9898\\u66F2\",\"\\u63D2\\u66F2\",\"\\u7247\\u5C3E\\u66F2\",\"\\u914D\\u4E50\",\"\\u539F\\u58F0\",\"OST\",\"\\u539F\\u58F0\\u5E26\",\"\\u539F\\u58F0\\u5927\\u789F\",\"\\u97F3\\u4E50\\u96C6\",\"\\u97F3\\u4E50\\u4F1A\",\"\\u6F14\\u5531\",\"Live\",\"Live\\u7248\",\"\\u73B0\\u573A\\u7248\",\"\\u73B0\\u573A\\u5F55\\u5236\",\"\\u821E\\u53F0\\u7248\",\"\\u821E\\u53F0\\u5267\",\"\\u8BDD\\u5267\",\"\\u6B4C\\u5267\",\"\\u821E\\u5267\",\"\\u620F\\u66F2\",\"\\u4EAC\\u5267\",\"\\u8D8A\\u5267\",\"\\u7CA4\\u5267\",\"\\u8BC4\\u5267\",\"\\u9EC4\\u6885\\u620F\",\"\\u4E8C\\u4EBA\\u8F6C\",\"\\u76F8\\u58F0\",\"\\u5C0F\\u54C1\",\"\\u7EFC\\u827A\\u79C0\",\"\\u771F\\u4EBA\\u79C0\",\"\\u8131\\u53E3\\u79C0\",\"\\u8BBF\\u8C08\\u8282\\u76EE\",\"\\u7EAA\\u5F55\\u7247\\u7CFB\\u5217\",\"\\u4E13\\u9898\\u7247\",\"\\u79D1\\u6559\\u7247\",\"\\u52A8\\u753B\\u7247\",\"\\u52A8\\u6F2B\\u7247\",\"\\u52A8\\u753B\\u77ED\\u7247\",\"\\u52A8\\u753B\\u7535\\u5F71\",\"\\u52A8\\u753B\\u7CFB\\u5217\",\"\\u52A8\\u753B\\u5267\\u96C6\",\"\\u52A8\\u753B\\u8FDE\\u7EED\\u5267\",\"\\u52A8\\u753BOVA\",\"\\u52A8\\u753BOAD\",\"\\u52A8\\u753BSP\",\"\\u52A8\\u753B\\u7279\\u5178\",\"\\u52A8\\u753B\\u5408\\u96C6\",\"\\u52A8\\u753B\\u7CBE\\u9009\",\"\\u7535\\u5F71\\u5408\\u96C6\",\"\\u5F71\\u7247\\u5408\\u96C6\",\"\\u7CFB\\u5217\\u5408\\u96C6\",\"\\u5408\\u96C6\\u7248\",\"\\u5957\\u88C5\\u7248\",\"\\u5957\\u88C5\\u5408\\u96C6\",\"\\u5168\\u96C6\",\"\\u5168\\u7CFB\\u5217\",\"\\u5168\\u5B63\",\"\\u66F4\\u65B0\\u4E2D\",\"\\u5B8C\\u7ED3\",\"\\u5B8C\\u7ED3\\u7BC7\",\"\\u5B8C\\u7ED3\\u5B63\",\"\\u6700\\u7EC8\\u5B63\",\"\\u6700\\u7EC8\\u7AE0\",\"\\u7EC8\\u7AE0\",\"\\u7EC8\\u7BC7\",\"\\u5927\\u7ED3\\u5C40\",\"\\u5927\\u7D50\\u5C40\",\"\\u7279\\u522B\\u7BC7\\u5B8C\\u7ED3\",\"\\u756A\\u5916\\u5B8C\\u7ED3\",\"OVA\\u5B8C\\u7ED3\",\"OAD\\u5B8C\\u7ED3\",\"SP\\u5B8C\\u7ED3\",\"\\u5168\\u5267\\u7EC8\",\"\\u5B8C\\u7ED3\\u6492\\u82B1\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\",\"\\u5B8C\\u7ED3\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7BC7\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7279\\u8F91\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u8BBF\\u8C08\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u82B1\\u7D6E\\u5408\\u96C6\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u7279\\u8F91\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\\u8BBF\\u8C08\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u7279\\u8F91\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u8BBF\\u8C08\\u82B1\\u7D6E\",\"\\u5B8C\\u7ED3\\u7EAA\\u5FF5\\u5408\\u96C6\\u7279\\u8F91\\u8BBF\\u8C08\\u82B1\\u7D6E\",\"BD\",\"BDRIP\",\"WEB-DL\",\"HDRip\",\"DVDRip\",\"BDRip\",\"BRRip\",\"Rip\",\"BluRay\",\"IMAX\",\"CAM\",\"HD\",\"HDR\",\"UHD\",\"4K\",\"1080p\",\"720p\",\"2160p\",\"480p\",\"120fps\",\"60fps\",\"x264\",\"x265\",\"H264\",\"HEVC\",\"AAC\",\"dts\",\"ddp\",\"truehd\",\"10bit\",\"8bit\",\"5.1\",\"7.1\",\"\\u56FD\\u8BED\",\"\\u7CA4\\u8BED\",\"\\u82F1\\u8BED\",\"\\u65E5\\u8BED\",\"\\u97E9\\u8BED\",\"\\u6CF0\\u8BED\",\"\\u6CD5\\u8BED\",\"\\u5FB7\\u8BED\",\"\\u897F\\u73ED\\u7259\\u8BED\",\"\\u4FC4\\u8BED\",\"\\u8461\\u8404\\u7259\\u8BED\",\"\\u610F\\u5927\\u5229\\u8BED\",\"\\u81FB\\u5F69\",\"\\u4E2D\\u5B57\",\"\\u7B80\\u4E2D\",\"\\u7E41\\u4E2D\",\"\\u7B80\\u7E41\\u4E2D\\u5B57\",\"\\u4E2D\\u82F1\\u53CC\\u5B57\",\"\\u5185\\u5D4C\",\"\\u5185\\u5C01\",\"\\u675C\\u6BD4\\u5168\\u666F\\u58F0\",\"\\u675C\\u6BD4\\u97F3\\u6548\",\"\\u65E0\\u6C34\\u5370\",\"\\u5B8C\\u6574\\u7248\",\"\\u539F\\u58F0\\u7248\",\"\\u89E3\\u8BF4\\u7248\",\"\\u9884\\u544A\\u7247\",\"\\u672A\\u5220\\u51CF\\u7248\",\"\\u52A0\\u957F\\u7248\",\"\\u84DD\\u5149\",\"\\u62A2\\u5148\\u7248\",\"TC\\u7248\",\"\\u62A2\\u5148\",\"TC\",\"\\u4E24\\u5B63\\u5168\",\"\\u5168\\u5B63\",\"\\u5168\\u96C6\",\"DV\",\"\\u538B\\u5236\",\"HQ\",\"\\u5E27\",\"\\u7535\\u5F71\\u7248\",\"\\u8C46\\u74E3\",\"\\u66F4\\u65B0\",\"\\u66F4\\u65B0\\u5230\",\"\\u63A8\\u8350\",\"\\u52A8\\u4F5C\",\"\\u5192\\u9669\",\"\\u7231\\u60C5\",\"\\u79D1\\u5E7B\",\"\\u60AC\\u7591\",\"\\u60CA\\u609A\",\"\\u6050\\u6016\",\"\\u559C\\u5267\",\"\\u60B2\\u5267\",\"\\u5267\\u60C5\",\"\\u5947\\u5E7B\",\"\\u72AF\\u7F6A\",\"\\u6218\\u4E89\",\"\\u5386\\u53F2\",\"\\u4F20\\u8BB0\",\"\\u97F3\\u4E50\",\"\\u6B4C\\u821E\",\"\\u5BB6\\u5EAD\",\"\\u513F\\u7AE5\",\"\\u4F53\\u80B2\",\"\\u707E\\u96BE\",\"\\u4F26\\u7406\",\"\\u77ED\\u7247\",\"\\u5FAE\\u7535\\u5F71\",\"\\u9AD8\\u6E05\",\"\\u8D85\\u6E05\",\"\\u6807\\u6E05\",\"\\u62A2\\u9C9C\\u770B\",\"\\u9996\\u64AD\",\"\\u72EC\\u64AD\",\"\\u70ED\\u64AD\",\"\\u8FDE\\u8F7D\\u4E2D\",\"\\u6700\\u65B0\",\"\\u7ECF\\u5178\",\"\\u70ED\\u95E8\",\"\\u83B7\\u5956\",\"\\u53E3\\u7891\",\"\\u597D\\u8BC4\",\"\\u9AD8\\u5206\",\"\\u8C46\\u74E3\\u9AD8\\u5206\",\"IMDb\\u9AD8\\u5206\",\"\\u672A\\u5206\\u7EA7\",\"\\u9650\\u5236\\u7EA7\",\"\\u5BFC\\u6F14\\u526A\\u8F91\",\"\\u52A0\\u957F\",\"\\u7279\\u522B\\u52A0\\u957F\",\"\\u7EC8\\u6781\\u526A\\u8F91\",\"\\u6536\\u85CF\",\"\\u8C6A\\u534E\",\"\\u7EAA\\u5FF5\",\"\\u9650\\u5B9A\",\"\\u91CD\\u6620\",\"\\u4FEE\\u590D\",\"\\u6570\\u7801\\u4FEE\\u590D\",\"\\u91CD\\u5236\",\"\\u84DD\\u5149\\u4FEE\\u590D\",\"\\u91CD\\u5236\\u9AD8\\u6E05\",\"\\u9AD8\\u6E05\\u91CD\\u5236\",\"\\u91CD\\u7F16\",\"\\u91CD\\u526A\",\"\\u914D\\u97F3\",\"\\u8BD1\\u5236\",\"\\u539F\\u58F0\",\"\\u53CC\\u8BED\",\"\\u591A\\u8BED\",\"\\u591A\\u58F0\\u9053\",\"\\u73AF\\u7ED5\\u58F0\",\"\\u5168\\u666F\\u58F0\",\"3D\",\"VR\",\"\\u5168\\u666F\",\"360\\u5EA6\",\"8K\",\"\\u539F\\u753B\",\"\\u65E0\\u635F\",\"\\u6709\\u635F\",\"\\u538B\\u7F29\",\"\\u672A\\u538B\\u7F29\",\"\\u9AD8\\u7801\\u7387\",\"\\u4F4E\\u7801\\u7387\",\"\\u91CD\\u7F16\\u7801\",\"\\u591A\\u5B57\\u5E55\",\"\\u591A\\u97F3\\u8F68\",\"\\u53CC\\u97F3\\u8F68\",\"\\u591A\\u7248\\u672C\",\"\\u5408\\u96C6\",\"\\u5957\\u88C5\",\"\\u7CFB\\u5217\",\"\\u5B8C\\u7ED3\\u7248\",\"\\u6700\\u7EC8\\u5B63\",\"\\u6700\\u7EC8\\u7AE0\",\"\\u7EC8\\u7AE0\",\"\\u5927\\u7ED3\\u5C40\",\"\\u7279\\u522B\\u7BC7\",\"\\u756A\\u5916\\u7BC7\",\"OVA\",\"OAD\",\"SP\",\"\\u5267\\u573A\\u7248\",\"\\u7535\\u5F71\\u7248\",\"\\u5F71\\u7248\",\"\\u5267\\u7248\",\"\\u52A8\\u753B\\u7248\",\"\\u771F\\u4EBA\\u7248\",\"\\u6539\\u7F16\\u7248\",\"\\u539F\\u521B\",\"\\u884D\\u751F\",\"\\u756A\\u5916\",\"\\u7EED\\u96C6\",\"\\u524D\\u4F20\",\"\\u540E\\u4F20\",\"\\u91CD\\u542F\",\"\\u7FFB\\u62CD\",\"\\u91CD\\u62CD\",\"\\u81F4\\u656C\",\"\\u7EAA\\u5FF5\",\"\\u732E\\u793C\",\"\\u8D3A\\u5C81\",\"\\u6691\\u671F\\u6863\",\"\\u56FD\\u5E86\\u6863\",\"\\u8D3A\\u5C81\\u6863\",\"\\u6625\\u8282\\u6863\",\"\\u60C5\\u4EBA\\u8282\\u6863\",\"\\u4E2D\\u79CB\\u6863\",\"\\u6863\\u671F\",\"\\u4E0A\\u6620\",\"\\u5B9A\\u6863\",\"\\u9996\\u6620\",\"\\u516C\\u6620\",\"\\u4E0A\\u6620\\u65F6\\u95F4\",\"\\u4E0A\\u6620\\u65E5\\u671F\",\"\\u7968\\u623F\",\"\\u7968\\u623F\\u51A0\\u519B\",\"\\u7968\\u623F\\u699C\",\"\\u53E3\\u7891\\u699C\",\"\\u8BC4\\u5206\\u699C\",\"\\u6392\\u884C\\u699C\",\"\\u699C\\u5355\",\"\\u699C\\u5355\\u7B2C\\u4E00\",\"\\u70ED\\u95E8\\u699C\",\"\\u70ED\\u641C\",\"\\u70ED\\u8BAE\",\"\\u8BDD\\u9898\",\"\\u70ED\\u8BAE\\u8BDD\\u9898\",\"\\u70ED\\u95E8\\u8BDD\\u9898\",\"\\u8BA8\\u8BBA\\u5EA6\",\"\\u5173\\u6CE8\\u5EA6\",\"\\u70ED\\u5EA6\",\"\\u70ED\\u5EA6\\u699C\",\"\\u70ED\\u95E8\\u63A8\\u8350\",\"\\u7CBE\\u9009\",\"\\u529B\\u8350\",\"\\u5F3A\\u70C8\\u63A8\\u8350\",\"\\u5FC5\\u770B\",\"\\u4E0D\\u53EF\\u9519\\u8FC7\",\"\\u7ECF\\u5178\\u4E4B\\u4F5C\",\"\\u795E\\u4F5C\",\"\\u4F73\\u4F5C\",\"\\u9AD8\\u5206\\u4F73\\u4F5C\",\"\\u9AD8\\u5206\\u795E\\u4F5C\",\"\\u70C2\\u7247\",\"\\u5DEE\\u8BC4\",\"\\u4F4E\\u5206\",\"\\u53E3\\u7891\\u7206\\u68DA\",\"\\u53E3\\u7891\\u6251\\u8857\",\"\\u53E3\\u7891\\u4E24\\u6781\",\"\\u53E3\\u7891\\u5206\\u5316\",\"\\u4E89\\u8BAE\",\"\\u70ED\\u8BAE\\u4E0D\\u65AD\",\"\\u5907\\u53D7\\u5173\\u6CE8\",\"\\u4E07\\u4F17\\u671F\\u5F85\",\"\\u671F\\u5F85\\u5DF2\\u4E45\",\"\\u4E07\\u4F17\\u77A9\\u76EE\",\"\\u5E74\\u5EA6\\u6700\\u4F73\",\"\\u5E74\\u5EA6\\u6700\\u5DEE\",\"\\u5E74\\u5EA6\\u4E4B\\u4F5C\",\"\\u5E74\\u5EA6\\u9ED1\\u9A6C\",\"\\u5E74\\u5EA6\\u60CA\\u559C\",\"\\u5E74\\u5EA6\\u5931\\u671B\",\"\\u538B\\u8F74\\u4E4B\\u4F5C\",\"\\u6536\\u5B98\\u4E4B\\u4F5C\",\"\\u6536\\u5B98\",\"\\u6536\\u5B98\\u5B63\",\"\\u6536\\u5B98\\u6218\",\"\\u5927\\u7ED3\\u5C40\\u524D\\u7BC7\",\"\\u5927\\u7ED3\\u5C40\\u540E\\u7BC7\",\"\\u6700\\u7EC8\\u56DE\",\"\\u6700\\u7EC8\\u8BDD\",\"\\u6700\\u7EC8\\u7AE0\\u524D\\u7BC7\",\"\\u6700\\u7EC8\\u7AE0\\u540E\\u7BC7\"];function mo(t){return String(t).replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\")}var co=new RegExp(uo.map(mo).sort((t,e)=>e.length-t.length).join(\"|\"),\"ig\"),z=new Ue(500,60*60*1e3),Dl=new Ue(1e3,60*60*1e3);function $e(t){if(!t||!t.trim())return\"\";let e=t.trim(),r=z.get(t);if(r!==null)return r;e=e.replace(new RegExp(\"^[\\\\u{1F300}-\\\\u{1F9FF}\\\\u{2600}-\\\\u{26FF}\\\\u{2700}-\\\\u{27BF}]+\\\\s*\",\"u\"),\"\");let o=e.indexOf(\"\\u300A\"),a=e.indexOf(\"\\u300B\");if(o!==-1&&a!==-1&&oString.fromCharCode(parseInt(p,16))).replace(/<[^>]+>/g,\"\").replace(/&[a-z]+;/gi,\"\").trim();let n=e.match(/\\[([^\\]]+)\\]/g);if(n&&n.length>=2){let d=e.replace(/\\[([^\\]]+)\\]/g,\"\").trim();if(!/[\\u4e00-\\u9fa5]/.test(d))for(let A of n){let _=A.slice(1,-1);if(/[\\u4e00-\\u9fa5]/.test(_)&&!/全球|封装|字幕|语言|下载/.test(_)){let O=_;if(O.includes(\".\")){let y=O.split(\".\").filter(E=>E.trim());for(let E of y)if(/[\\u4e00-\\u9fa5]/.test(E)&&!/全\\d+季/.test(E)){O=E.trim();break}}return z.set(t,O),O}}let C=n[0].slice(1,-1),w=n[1].slice(1,-1);if(/夸克|百度|迅雷|阿里|天翼|115|下载/.test(C)&&/[\\u4e00-\\u9fa5]/.test(w))return z.set(t,w),w}let c=e.indexOf(\"|\"),m=e.lastIndexOf(\"|\");if(c!==-1&&c!==m){let d=e.substring(c+1,m).trim();return z.set(t,d),d}e=e.replace(/[/g,\"[\").replace(/]/g,\"]\"),e=e.replace(/\\[([^\\]]*)\\]/g,(d,p)=>/第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+/i.test(p)?d:\"\").trim(),e=e.replace(/[((].*?[))]/g,\"\").replace(/【.*?】/g,\"\").trim(),e=e.replace(/\\b\\d+(\\.\\d+)?[GMK]B?\\b/gi,\"\").replace(/\\b(2160|1080|720|480)[pP]\\b/gi,\"\").replace(/\\b(4K|2K|HDR|HD|SD|FHD|UHD)\\b/gi,\"\").replace(/\\bx264|x265|H264|HEVC\\b/gi,\"\").replace(/\\bAAC|AC3|DTS|FLAC\\b/gi,\"\").replace(/\\b(10bit|8bit|60fps|120fps)\\b/gi,\"\").replace(/\\bWEB-DL\\b/gi,\"\").replace(/\\bWEB-MKV\\b/gi,\"\").replace(/\\bWEB-\\b/gi,\"\").replace(/\\bWEB\\b/gi,\"\").replace(/\\bREMUX\\b/gi,\"\").replace(/S\\d+E\\d+(-S\\d+E\\d+)?/gi,\"\").replace(/完结\\s*\\d+\\s*集/g,\"\").replace(/更新\\s*\\d+\\s*集/g,\"\").replace(/更新至\\s*\\d+\\s*集/g,\"\").replace(/更至\\s*\\d+\\s*集/g,\"\").replace(/全\\s*\\d+\\s*集/g,\"\").replace(/第\\s*\\d+\\s*集/g,\"\").replace(/最新/g,\"\").replace(/臻彩/g,\"\").replace(co,\"\").replace(/[\\u200E\\u200F\\u202A-\\u202E]/g,\"\").replace(/\\s+/g,\" \").trim();let u=e.match(/([\\u4e00-\\u9fa5]{2,})/);if(u){let d=u[1],p=new RegExp(d+\"\\\\d*\"+d,\"g\");e=e.replace(p,d)}if(e=e.replace(/\\d{4}$/g,\"\").trim(),e=e.replace(/[((][))]/g,\"\").replace(/【】/g,\"\").replace(/\\[\\]/g,\"\").trim(),e.includes(\".\")){let d=e.split(\".\").filter(C=>C.trim()),p=\"\";for(let C of d)if(/[\\u4e00-\\u9fa5]/.test(C)){p=C.trim();break}if(p){let C=p.match(/全\\d+季/);if(C)e=p.substring(0,C.index).trim();else{e=p;for(let w of d){let A=w.match(/^S(\\d+)$/i);if(A){e=e+\" \"+A[0];break}}}}}let g=!1;if(e.includes(\"-\")){let d=e.split(\"-\"),p=\"\";for(let C of d)if(/[\\u4e00-\\u9fa5]/.test(C)){p=C.trim();break}if(p)if(/第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+/i.test(p))e=p,g=!0;else{let C=e.match(/第[一二三四五六七八九十\\d]+季|S(\\d+)|Season\\s*(\\d+)/i);if(C)return e=p+\" \"+C[0],g=!0,z.set(t,e),e;e=p,g=!0}}if(e.includes(\"/\")){let d=e.split(\"/\");for(let p of d)if(/[\\u4e00-\\u9fa5]/.test(p)){e=p.trim();break}}if(!g&&e.includes(\" \")){let d=e.split(\" \").filter(w=>w.trim());if(d.length>1&&d[0].length===1&&/[a-zA-Z]/.test(d[0])){let w=d.slice(0,2).join(\" \");return z.set(t,w),w}if(d.length===2&&/[\\u4e00-\\u9fa5]/.test(d[0])&&/^(第[一二三四五六七八九十\\d]+季|S\\d+|Season\\s*\\d+)$/i.test(d[1]))return z.set(t,e),e;let p=[],C=!1;for(let w=0;w0?e=p.join(\" \"):d.length>0&&(e=d[0])}e=e.replace(/[::·.。]+$/,\"\").replace(/\\.全\\d+季$/,\"\").replace(/\\.第[一二三四五六七八九十\\d]+季$/,\"\").replace(/\\.$/,\"\").replace(/未删减版$/,\"\").replace(/无删减版$/,\"\").replace(/删减版$/,\"\").replace(/完整版$/,\"\").replace(/\\s+$/,\"\").trim();let b=e||t;return z.set(t,b),b}if(typeof window<\"u\"){let t=document.createElement(\"style\");t.textContent=\"html,\\nbody,\\n#app {\\n height: 100%;\\n margin: 0;\\n padding: 0;\\n overflow: hidden;\\n}\\n.danmu-container {\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n padding: 20px;\\n box-sizing: border-box;\\n}\\n.danmu-container .main-title {\\n text-align: center;\\n transition: all 0.3s ease-out;\\n max-height: 50px;\\n opacity: 1;\\n margin-bottom: 20px;\\n overflow: hidden;\\n}\\n.danmu-container .main-title.hidden {\\n max-height: 0;\\n opacity: 0;\\n margin: 0;\\n}\\n.danmu-container .search-input {\\n margin-bottom: 20px;\\n}\\n.danmu-container .result-container {\\n flex-grow: 1;\\n overflow: hidden;\\n display: flex;\\n flex-direction: column;\\n}\\n.danmu-container .result-container .spin-container {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 100%;\\n}\\n.danmu-container .result-container > .ant-tabs {\\n flex-grow: 1;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n}\\n.danmu-container .result-container > .ant-tabs .ant-tabs-content-holder {\\n overflow-y: auto;\\n flex-grow: 1;\\n}\\n.drawer {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-mask {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-content-wrapper {\\n left: 0;\\n right: 0;\\n}\\n.drawer .ant-drawer-title {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.drawer .ant-list-item {\\n padding: 16px 24px;\\n}\\n@media (max-width: 768px) {\\n .danmu-container {\\n padding: 10px;\\n }\\n .danmu-container .search-input {\\n margin-bottom: 8px;\\n }\\n .danmu-container .ant-tabs-left > .ant-tabs-nav {\\n width: 80px;\\n }\\n .danmu-container .ant-tabs-nav {\\n margin: 0;\\n }\\n .danmu-container .ant-tabs-tab {\\n font-size: 12px;\\n padding: 8px 12px;\\n }\\n .danmu-container .anime-episode-container {\\n flex-direction: column;\\n }\\n .danmu-container .anime-episode-container .anime-list-col,\\n .danmu-container .anime-episode-container .episode-list-col {\\n width: 100%;\\n border-right: none;\\n max-height: 50vh;\\n }\\n .danmu-container .anime-episode-container .anime-list-col {\\n border-bottom: 1px solid #f0f0f0;\\n }\\n .drawer .ant-drawer-header {\\n padding: 16px 12px;\\n }\\n .drawer .ant-list-item {\\n padding: 12px;\\n }\\n}\\n\",document.head.appendChild(t)}var{Search:po}=h.Input,{Title:xo}=h.Typography,ye=\"danmu_search_cache\",pr=\"danmu_search_order\",ho=5,go=10*60*1e3,Oo=t=>{let e=localStorage.getItem(ye);if(!e)return null;try{let r=JSON.parse(e),o=r[t];return o?Date.now()-o.timestamp>go?(delete r[t],localStorage.setItem(ye,JSON.stringify(r)),null):o.data:null}catch(r){return console.error(\"\\u7F13\\u5B58\\u8BFB\\u53D6\\u5931\\u8D25:\",r),null}},To=(t,e)=>{let r=[];try{r=JSON.parse(localStorage.getItem(pr)||\"[]\")}catch(a){}let o={};try{o=JSON.parse(localStorage.getItem(ye)||\"{}\")}catch(a){}if(r=r.filter(a=>a!==t),r.unshift(t),o[t]={data:e,timestamp:Date.now()},r.length>ho){let a=r.pop();delete o[a]}localStorage.setItem(pr,JSON.stringify(r)),localStorage.setItem(ye,JSON.stringify(o))},je=50,hr=t=>String(t||\"\").trim().toLowerCase()===\"json\"?\"json\":\"xml\",bo=({animes:t,sourceUrl:e,inputValue:r,danmuFormat:o=\"xml\"})=>{var W;let[a,l]=(0,f.useState)(!1),[n,c]=(0,f.useState)(null),[m,u]=(0,f.useState)(!1),[g,b]=(0,f.useState)(\"\"),[d,p]=(0,f.useState)(0),C=(0,f.useRef)(null),w=(r||\"\").trim(),A=hr(o),_=async i=>{var s,R,U,$,j,G,N;let S=new AbortController;C.current=S,console.log(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u5F00\\u59CB\",{inputValue:w,sourceUrl:e,danmuFormat:A,animeTitle:n==null?void 0:n.animeTitle,episodeId:i==null?void 0:i.episodeId,episodeTitle:i==null?void 0:i.episodeTitle});let x=\"\",F=\"\";try{let T=await Y.default.get(\"/website/danmu/current-play\",{timeout:3e3}),We=((s=T==null?void 0:T.data)==null?void 0:s.data)||{};if(x=We.flag||window.currentPlayFlag||\"\",F=We.id||window.currentPlayId||\"\",!x||!F){let Se=await messageToDart({action:\"getPlayInfo\"});Se&&(x=Se.flag||\"\",F=Se.id||\"\")}}catch(T){console.warn(\"\\u65E0\\u6CD5\\u83B7\\u53D6\\u64AD\\u653E\\u4FE1\\u606F\\uFF0Cflag/id \\u53EF\\u80FD\\u4E3A\\u7A7A\",T)}try{let T=await Y.default.post(\"/website/danmu/push\",{url:\"/website/danmu/comment?source=\".concat(encodeURIComponent(e),\"&episodeId=\").concat(encodeURIComponent(i.episodeId),\"&format=\").concat(encodeURIComponent(A)),sourceUrl:e,anime:n,title:w,format:A,flag:x,id:F},{signal:S.signal});if(console.log(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u6210\\u529F\",{inputValue:w,sourceUrl:e,danmuFormat:A,animeTitle:n==null?void 0:n.animeTitle,episodeId:i==null?void 0:i.episodeId,episodeTitle:i==null?void 0:i.episodeTitle,flag:x,id:F}),(R=T==null?void 0:T.data)!=null&&R.code&&T.data.code!==0)throw new Error(((U=T==null?void 0:T.data)==null?void 0:U.message)||\"\\u63A8\\u9001\\u5931\\u8D25\");h.message.success(\"\\u5DF2\\u63A8\\u9001 \".concat((j=($=T==null?void 0:T.data)==null?void 0:$.danmuCount)!=null?j:0,\" \\u6761\\u5F39\\u5E55\\uFF0C\\u8BF7\\u7B49\\u5F85\\u5F39\\u5E55\\u52A0\\u8F7D\\u5B8C\\u6210\")),l(!1)}catch(T){if(Y.default.isCancel(T)){console.log(\"\\u63A8\\u9001\\u8BF7\\u6C42\\u5DF2\\u53D6\\u6D88\");return}console.error(\"[DanmuFE] \\u624B\\u52A8\\u63A8\\u9001\\u5931\\u8D25\",{inputValue:w,sourceUrl:e,danmuFormat:A,animeTitle:n==null?void 0:n.animeTitle,episodeId:i==null?void 0:i.episodeId,episodeTitle:i==null?void 0:i.episodeTitle,flag:x,id:F,message:T==null?void 0:T.message,status:(G=T==null?void 0:T.response)==null?void 0:G.status,data:(N=T==null?void 0:T.response)==null?void 0:N.data}),console.error(T),h.message.error((T==null?void 0:T.message)||\"\\u63A8\\u9001\\u5931\\u8D25\")}finally{C.current===S&&(C.current=null)}},O=i=>{let S=Array.isArray(i==null?void 0:i.episodes)?i.episodes:[];c(X(J({},i),{episodes:S})),b(\"\"),p(0),l(!0),u(!1)},y=()=>{if(n){let i=Array.isArray(n.episodes)?n.episodes:[];c(X(J({},n),{episodes:[...i].reverse()})),u(S=>!S)}},E=i=>{var F,s;let S=(s=(F=i==null?void 0:i.episodeNumber)!=null?F:i==null?void 0:i.number)!=null?s:\"?\",x=(i==null?void 0:i.episodeTitle)||(i==null?void 0:i.title)||(i==null?void 0:i.name)||\"\";return x?\"\\u7B2C\".concat(S,\"\\u96C6 - \").concat(x):\"\\u7B2C\".concat(S,\"\\u96C6\")},B=Array.isArray(n==null?void 0:n.episodes)?n.episodes.filter(i=>{var s,R;let S=g.trim().toLowerCase();if(!S)return!0;let x=String((R=(s=i==null?void 0:i.episodeNumber)!=null?s:i==null?void 0:i.number)!=null?R:\"\"),F=E(i).toLowerCase();return x.includes(S)||F.includes(S)}):[],v=Array.from({length:Math.max(1,Math.ceil(B.length/je))},(i,S)=>{let x=S*je,F=Math.min(B.length,x+je);return{key:S,label:\"\".concat(x+1,\"-\").concat(F),items:B.slice(x,F)}}),L=Math.min(d,Math.max(v.length-1,0)),le=((W=v[L])==null?void 0:W.items)||[];return!t||t.length===0?f.default.createElement(h.Empty,{description:\"\\u8BE5\\u6765\\u6E90\\u4E0B\\u65E0\\u7ED3\\u679C\"}):f.default.createElement(f.default.Fragment,null,f.default.createElement(h.List,{dataSource:t,renderItem:i=>{let S=Array.isArray(i==null?void 0:i.episodes)?i.episodes.length:(i==null?void 0:i.episodeCount)||(i==null?void 0:i.episodesCount)||0;return f.default.createElement(h.List.Item,{onClick:()=>O(i)},f.default.createElement(\"div\",{style:{display:\"flex\",width:\"100%\",justifyContent:\"space-between\",gap:12}},f.default.createElement(\"span\",null,i.animeTitle),f.default.createElement(h.Tag,{color:\"blue\"},S,\"\\u96C6\")))}}),n&&f.default.createElement(h.Drawer,{title:n.animeTitle,placement:\"bottom\",onClose:()=>l(!1),open:a,height:\"80%\",destroyOnClose:!0,closable:!1,bodyStyle:{padding:0},rootClassName:\"drawer\",extra:f.default.createElement(h.Button,{icon:m?f.default.createElement(qe,null):f.default.createElement(Ve,null),onClick:y,style:{marginLeft:16}})},f.default.createElement(\"div\",{style:{padding:\"12px 16px\",borderBottom:\"1px solid #f0f0f0\",display:\"flex\",flexDirection:\"column\",gap:12}},f.default.createElement(h.Input,{placeholder:\"\\u8F93\\u5165\\u96C6\\u6570\\u6216\\u6807\\u9898\\u5173\\u952E\\u8BCD\\uFF0C\\u5B9E\\u65F6\\u8FC7\\u6EE4\",value:g,onChange:i=>{b(i.target.value),p(0)},allowClear:!0}),v.length>1&&f.default.createElement(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:8}},v.map(i=>f.default.createElement(h.Tag,{key:i.key,color:L===i.key?\"processing\":\"default\",style:{cursor:\"pointer\",marginInlineEnd:0},onClick:()=>p(i.key)},i.label)))),f.default.createElement(h.List,{dataSource:le,locale:{emptyText:\"\\u6CA1\\u6709\\u5339\\u914D\\u5230\\u53EF\\u9009\\u5267\\u96C6\"},renderItem:i=>f.default.createElement(h.List.Item,{onClick:()=>_(i)},E(i))})))};function gr(){let[t,e]=(0,f.useState)([]),[r,o]=(0,f.useState)(\"xml\"),[a,l]=(0,f.useState)(!1),[n,c]=(0,f.useState)([]),[m,u]=(0,f.useState)({}),[g,b]=(0,f.useState)(!1),[d,p]=(0,f.useState)(()=>{let O=new URLSearchParams(window.location.search).get(\"keyword\")||\"\";return $e(O||\"\").trim()||O.trim()}),C=(0,f.useRef)(null);(0,f.useEffect)(()=>{Y.default.get(\"/website/danmu/setting\").then(O=>{if(O.data.code===0&&O.data.data&&O.data.data.urls){o(hr(O.data.data.format));let y=[],E=new Set;O.data.data.urls.forEach(B=>{let v={name:B.name||new URL(B.address).hostname,url:B.address},L=\"\".concat(v.name,\"@@\").concat(v.url);E.has(L)||(E.add(L),y.push(v))}),e(y)}else h.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")}).catch(O=>{console.error(O),h.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")})},[]);let w=(0,f.useCallback)((O,y=!1)=>{let B=(O||\"\").trim(),v=y&&$e(B).trim()||B;if(!v){y||h.message.warning(\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u5173\\u952E\\u8BCD\");return}if(t.length===0&&!y){h.message.error(\"\\u6CA1\\u6709\\u53EF\\u7528\\u7684\\u5F39\\u5E55\\u6E90\");return}if(p(v),!y){let x=new URL(window.location);x.searchParams.set(\"keyword\",v),window.history.pushState({},\"\",x)}if(y){let x=Oo(v);if(x){c(x),b(!0),l(!1);let F={};x.forEach(s=>{F[s.sourceName]={status:\"success\",fromCache:!0}}),u(F),h.message.success(\"\\u4ECE\\u7F13\\u5B58\\u52A0\\u8F7D\\u4E86\\u7ED3\\u679C\");return}}C.current&&C.current.abort();let L=new AbortController;C.current=L,l(!0),b(!0),c([]),u({});let le=0,W=[],i=Date.now(),S={};t.forEach(x=>{S[x.name]={status:\"loading\",duration:0}}),u(S),t.forEach(x=>{let F=Date.now();console.log(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u5F00\\u59CB\",{keyword:v,sourceName:x.name,sourceUrl:x.url}),Y.default.get(\"/website/danmu/search\",{params:{source:x.url,anime:v},timeout:1e4,signal:L.signal}).then(s=>{var $,j,G;if(C.current!==L)return;let R=Date.now()-F,U=Array.isArray(($=s==null?void 0:s.data)==null?void 0:$.animes)?s.data.animes:[];if(console.log(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u54CD\\u5E94\",{keyword:v,sourceName:x.name,sourceUrl:x.url,duration:R,status:s==null?void 0:s.status,success:(j=s==null?void 0:s.data)==null?void 0:j.success,animeCount:U.length,preview:U.slice(0,5).map(N=>N==null?void 0:N.animeTitle)}),s.data.success&&s.data.animes&&s.data.animes.length>0){let N={sourceName:x.name,sourceUrl:x.url,data:s.data};W.push(N),c(T=>[...T,N]),u(T=>X(J({},T),{[x.name]:{status:\"success\",duration:R,count:s.data.animes.length}}))}else console.warn(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u65E0\\u7ED3\\u679C\\u6216\\u672A\\u6EE1\\u8DB3\\u6210\\u529F\\u5224\\u5B9A\",{keyword:v,sourceName:x.name,sourceUrl:x.url,duration:R,status:s==null?void 0:s.status,success:(G=s==null?void 0:s.data)==null?void 0:G.success,animeCount:U.length,rawData:s==null?void 0:s.data}),u(N=>X(J({},N),{[x.name]:{status:\"empty\",duration:R}}))}).catch(s=>{var $,j;if(C.current!==L)return;if(Y.default.isCancel(s)){console.log(\"\\u641C\\u7D22\\u8BF7\\u6C42\\u5DF2\\u53D6\\u6D88: \".concat(x.name));return}let R=Date.now()-F;console.error(\"[DanmuFE] \\u624B\\u52A8\\u641C\\u7D22\\u5931\\u8D25: \".concat(x.name),{keyword:v,sourceName:x.name,sourceUrl:x.url,duration:R,message:s==null?void 0:s.message,code:s==null?void 0:s.code,status:($=s==null?void 0:s.response)==null?void 0:$.status,data:(j=s==null?void 0:s.response)==null?void 0:j.data});let U=s.code===\"ECONNABORTED\"?\"\\u8D85\\u65F6\":\"\\u5931\\u8D25\";u(G=>X(J({},G),{[x.name]:{status:\"error\",duration:R,error:U}}))}).finally(()=>{if(C.current===L&&(le++,le===t.length)){l(!1);let s=Date.now()-i;console.log(\"\\u641C\\u7D22\\u5B8C\\u6210\\uFF0C\\u603B\\u8017\\u65F6: \".concat(s,\"ms\")),W.length>0?(To(v,W),h.message.success(\"\\u627E\\u5230 \".concat(W.length,\" \\u4E2A\\u6E90\\u7684\\u7ED3\\u679C\"))):h.message.warning(\"\\u672A\\u627E\\u5230\\u4EFB\\u4F55\\u7ED3\\u679C\")}})})},[t]);(0,f.useEffect)(()=>{if(t.length>0){let y=new URLSearchParams(window.location.search).get(\"keyword\");y&&w(y,!0)}},[t,w]);let A=O=>{let y=m[O];if(!y)return null;if(y.fromCache)return f.default.createElement(h.Tag,{color:\"blue\",style:{marginLeft:8}},\"\\u7F13\\u5B58\");switch(y.status){case\"loading\":return f.default.createElement(h.Tag,{icon:f.default.createElement(Ne,null),color:\"processing\",style:{marginLeft:8}},\"\\u641C\\u7D22\\u4E2D\");case\"success\":return f.default.createElement(h.Tag,{icon:f.default.createElement(Le,null),color:\"success\",style:{marginLeft:8}},y.count,\"\\u4E2A\\u7ED3\\u679C (\",y.duration,\"ms)\");case\"empty\":return f.default.createElement(h.Tag,{color:\"default\",style:{marginLeft:8}},\"\\u65E0\\u7ED3\\u679C (\",y.duration,\"ms)\");case\"error\":return f.default.createElement(h.Tag,{icon:f.default.createElement(He,null),color:\"error\",style:{marginLeft:8}},y.error,\" (\",y.duration,\"ms)\");default:return null}},_=n.map((O,y)=>({key:\"\".concat(O.sourceName,\"-\").concat(y),label:f.default.createElement(\"span\",null,O.sourceName,A(O.sourceName)),children:f.default.createElement(bo,{animes:O.data.animes,sourceUrl:O.sourceUrl,inputValue:d,danmuFormat:r})}));return f.default.createElement(\"div\",{className:\"danmu-container\"},f.default.createElement(xo,{level:2,className:\"main-title \".concat(g?\"hidden\":\"\")},\"\\u5F39\\u5E55\\u641C\\u7D22\"),f.default.createElement(\"div\",{style:{display:\"flex\",gap:12,alignItems:\"center\"}},f.default.createElement(po,{placeholder:\"\\u8F93\\u5165\\u5F71\\u89C6\\u540D\\u79F0...\",enterButton:\"\\u641C\\u7D22\",size:\"large\",onSearch:O=>w(O),loading:a,className:\"search-input\",value:d,onChange:O=>p(O.target.value)})),f.default.createElement(\"div\",{className:\"result-container\"},g&&n.length===0&&a&&f.default.createElement(\"div\",{className:\"spin-container\"},f.default.createElement(h.Spin,{size:\"large\"})),n.length>0&&f.default.createElement(h.Tabs,{items:_,size:\"small\"}),g&&n.length===0&&!a&&f.default.createElement(h.Empty,{description:\"\\u672A\\u627E\\u5230\\u76F8\\u5173\\u7ED3\\u679C\"})))}function Co(){(0,xr.createRoot)(document.getElementById(\"app\")).render(f.default.createElement(gr,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n", ' module.exports.renderDanmu();', '})();' ].join('\n'); @@ -30,18 +66,319 @@ globalThis.danmuAdvancedBundle = function() { }(); -var DUt=Object.create;var R4=Object.defineProperty;var kUt=Object.getOwnPropertyDescriptor;var OUt=Object.getOwnPropertyNames;var PUt=Object.getPrototypeOf,MUt=Object.prototype.hasOwnProperty;var ve=(e,t)=>()=>(e&&(t=e(e=0)),t);var b=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ys=(e,t)=>{for(var r in t)R4(e,r,{get:t[r],enumerable:!0})},UNe=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of OUt(t))!MUt.call(e,i)&&i!==r&&R4(e,i,{get:()=>t[i],enumerable:!(n=kUt(t,i))||n.enumerable});return e};var Se=(e,t,r)=>(r=e!=null?DUt(PUt(e)):{},UNe(t||!e||!e.__esModule?R4(r,"default",{value:e,enumerable:!0}):r,e)),LUt=e=>UNe(R4({},"__esModule",{value:!0}),e);var jNe=b((Own,qNe)=>{"use strict";function BUt(e){var t=new e,r=t;function n(){var s=t;return s.next?t=s.next:(t=new e,r=t),s.next=null,s}function i(s){r.next=s,r=s}return{get:n,release:i}}qNe.exports=BUt});var KNe=b((Pwn,BQ)=>{"use strict";var $Ut=jNe();function HNe(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=$Ut(FUt),i=null,s=null,a=0,o=null,u={push:m,drain:Xc,saturated:Xc,pause:l,paused:!1,get concurrency(){return r},set concurrency(E){if(!(E>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=E,!u.paused)for(;i&&a=r||u.paused?s?(s.next=C,s=C):(i=C,s=C,u.saturated()):(a++,t.call(e,C.value,C.worked))}function y(E,S){var C=n.get();C.context=e,C.release=g,C.value=E,C.callback=S||Xc,C.errorHandler=o,a>=r||u.paused?i?(C.next=i,i=C):(i=C,s=C,u.saturated()):(a++,t.call(e,C.value,C.worked))}function g(E){E&&n.release(E);var S=i;S&&a<=r?u.paused?a--:(s===i&&(s=null),i=S.next,S.next=null,t.call(e,S.value,S.worked),s===null&&u.empty()):--a===0&&u.drain()}function v(){i=null,s=null,u.drain=Xc}function A(){i=null,s=null,u.drain(),u.drain=Xc}function _(E){o=E}}function Xc(){}function FUt(){this.value=null,this.callback=Xc,this.next=null,this.release=Xc,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var i=e.callback,s=e.errorHandler,a=e.value;e.value=null,e.callback=Xc,e.errorHandler&&s(r,a),i.call(e.context,r,n),e.release(e)}}function UUt(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(l,d){t.call(this,l).then(function(f){d(null,f)},d)}var i=HNe(e,n,r),s=i.push,a=i.unshift;return i.push=o,i.unshift=u,i.drained=c,i;function o(l){var d=new Promise(function(f,p){s(l,function(h,m){if(h){p(h);return}f(m)})});return d.catch(Xc),d}function u(l){var d=new Promise(function(f,p){a(l,function(h,m){if(h){p(h);return}f(m)})});return d.catch(Xc),d}function c(){var l=new Promise(function(d){process.nextTick(function(){if(i.idle())d();else{var f=i.drain;i.drain=function(){typeof f=="function"&&f(),d(),i.drain=f}}})});return l}}BQ.exports=HNe;BQ.exports.promise=UUt});var FQ=b((Mwn,D4)=>{"use strict";var{format:qUt}=require("node:util");function jUt(){return`${this.name} [${this.code}]: ${this.message}`}function $Q(e,t,r=500,n=Error){if(!e)throw new Error("Fastify error code must not be empty");if(!t)throw new Error("Fastify error message must not be empty");e=e.toUpperCase(),!r&&(r=void 0);function i(...s){if(!new.target)return new i(...s);this.code=e,this.name="FastifyError",this.statusCode=r;let a=s.length-1;a!==-1&&s[a]&&typeof s[a]=="object"&&"cause"in s[a]&&(this.cause=s.pop().cause),this.message=qUt(t,...s),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,i)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),i.prototype[Symbol.toStringTag]="Error",i.prototype.toString=jUt,i}D4.exports=$Q;D4.exports.default=$Q;D4.exports.createError=$Q});var k4=b((Lwn,VNe)=>{"use strict";var{createError:Z0}=FQ();VNe.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:Z0("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:Z0("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:Z0("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:Z0("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:Z0("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:Z0("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:Z0("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:Z0("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var r1=b((Bwn,zNe)=>{"use strict";var HUt=Symbol("avvio.Boot"),KUt=Symbol("isOnCloseHandler"),VUt=Symbol("avvio.ThenifyDoNotWrap"),zUt=Symbol("avvio.TimeTree.untrackNode"),QUt=Symbol("avvio.TimeTree.trackNode"),GUt=Symbol("avvio.TimeTree.getParent"),YUt=Symbol("avvio.TimeTree.getNode"),WUt=Symbol("avvio.TimeTree.addNode"),XUt=Symbol.for("plugin-meta");zNe.exports={kAvvio:HUt,kIsOnCloseHandler:KUt,kThenifyDoNotWrap:VUt,kUntrackNode:zUt,kTrackNode:QUt,kGetParent:GUt,kGetNode:YUt,kAddNode:WUt,kPluginMeta:XUt}});var ZNe=b(($wn,JNe)=>{"use strict";var{kUntrackNode:QNe,kTrackNode:UQ,kGetParent:GNe,kGetNode:YNe,kAddNode:WNe}=r1(),qQ=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[UQ](t){this.tableId.set(t.id,t),this.tableLabel.has(t.label)?this.tableLabel.get(t.label).push(t):this.tableLabel.set(t.label,[t])}[QNe](t){this.tableId.delete(t.id);let r=this.tableLabel.get(t.label);r.pop(),r.length===0&&this.tableLabel.delete(t.label)}[GNe](t){if(t===null)return null;if(this.tableLabel.has(t)){let r=this.tableLabel.get(t);return r[r.length-1]}else return null}[YNe](t){return this.tableId.get(t)}[WNe](t,r,n){let i=this[GNe](t);if(i===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[UQ](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:t,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return i.nodes.push(o),this[UQ](o),a}start(t,r,n=Date.now()){return this[WNe](t,r,n)}stop(t,r=Date.now()){let n=this[YNe](t);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[QNe](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return XNe(this.toJSON())}};function XNe(e,t=""){let r=t,n=e.nodes.length,i=n-1;r+=`${e.label} ${e.diff} ms -`;for(let s=0;s{"use strict";var{debuglog:JUt}=require("node:util"),ZUt=JUt("avvio");eRe.exports={debug:ZUt}});var rRe=b((Uwn,tRe)=>{"use strict";function eqt(){let e={resolve:null,reject:null,promise:null};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}tRe.exports={createPromise:eqt}});var iRe=b((qwn,nRe)=>{"use strict";var{kPluginMeta:jQ}=r1();function tqt(e,t){return e[jQ]&&e[jQ].name?e[jQ].name:t&&t.name?t.name:e.name?e.name:e.toString().split(` -`).slice(0,2).map(r=>r.trim()).join(" -- ")}nRe.exports={getPluginName:tqt}});var P4=b((jwn,sRe)=>{"use strict";function rqt(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}sRe.exports={isPromiseLike:rqt}});var oRe=b((Hwn,aRe)=>{"use strict";var{EventEmitter:nqt}=require("node:events"),{inherits:iqt}=require("node:util"),{debug:Ia}=O4(),{createPromise:sqt}=rRe(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:aqt}=k4(),{getPluginName:oqt}=iRe(),{isPromiseLike:uqt}=P4();function n1(e,t,r,n,i){this.queue=e,this.func=t,this.options=r,this.isAfter=n,this.timeout=i,this.started=!1,this.name=oqt(t,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}iqt(n1,nqt);n1.prototype.exec=function(e,t){Ia("exec",this.name),this.server=e;let r=this.func,n=this.name,i=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let s=null,a=u=>{if(i){Ia("loading complete",n);return}this._error=u,Ia(u?"exec errored":"exec completed",n),i=!0,s&&clearTimeout(s),t(u)};this.timeout>0&&(Ia("setting up timeout",n,this.timeout),s=setTimeout(function(){Ia("timed out",n),s=null;let u=new aqt(n);u.fn=r,a(u)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);uqt(o)&&(Ia("exec: resolving promise",n),o.then(()=>process.nextTick(a),u=>process.nextTick(a,u)))};n1.prototype.loadedSoFar=function(){if(Ia("loadedSoFar",this.name),this.loaded)return Promise.resolve();let e=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(Ia("rejecting promise",this.name,r),this._promise.reject(r)):(Ia("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},t;return this._promise?t=Promise.resolve():(this._promise=sqt(),t=this._promise.promise,this.server?e():this.on("start",e)),t};n1.prototype.enqueue=function(e,t){Ia("enqueue",this.name,e.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(e,t)};n1.prototype.finish=function(e,t){Ia("finish",this.name,e);let r=()=>{this.loaded||(Ia("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,t(e))};if(e){this._promise&&(this._promise.reject(e),this._promise=null),r();return}let n=()=>{if(Ia("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let i=()=>{Ia("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(i,i),this._promise=null}else r();else Ia("delayed",this.name),this.queue.drain=()=>{Ia("drain",this.name),this.queue.drain=cqt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function cqt(){}aRe.exports={Plugin:n1}});var cRe=b((Kwn,uRe)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:HQ}=k4();function lqt(e){if(!(e&&(typeof e=="function"||typeof e.then=="function")))throw Array.isArray(e)?new HQ("array"):e===null?new HQ("null"):new HQ(typeof e)}uRe.exports={validatePlugin:lqt}});var dRe=b((Vwn,lRe)=>{"use strict";function dqt(e){return e!==null&&typeof e=="object"&&typeof e.default=="function"}lRe.exports={isBundledOrTypescriptPlugin:dqt}});var hRe=b((zwn,pRe)=>{"use strict";var{debug:fRe}=O4(),{kThenifyDoNotWrap:KQ}=r1();function fqt(){if(this.booted){fRe("thenify returning undefined because we are already booted");return}if(this[KQ]){this[KQ]=!1;return}return fRe("thenify"),(e,t)=>this._loadRegistered().then(()=>(this[KQ]=!0,e(this._server)),t)}pRe.exports={thenify:fqt}});var gRe=b((Qwn,mRe)=>{"use strict";var{isPromiseLike:pqt}=P4(),{kAvvio:hqt}=r1();function mqt(e,t,r){let n=e.apply(e,t);pqt(n)&&!n[hqt]?n.then(()=>process.nextTick(r),i=>process.nextTick(r,i)):r&&process.nextTick(r)}mRe.exports={executeWithThenable:mqt}});var wRe=b((Gwn,zQ)=>{"use strict";var M4=KNe(),gqt=require("node:events").EventEmitter,yqt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:sT,AVV_ERR_CALLBACK_NOT_FN:i1,AVV_ERR_ROOT_PLG_BOOTED:_qt,AVV_ERR_READY_TIMEOUT:Aqt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:vqt}=k4(),{kAvvio:ARe,kIsOnCloseHandler:vRe}=r1(),{TimeTree:bqt}=ZNe(),{Plugin:bRe}=oRe(),{debug:s1}=O4(),{validatePlugin:Eqt}=cRe(),{isBundledOrTypescriptPlugin:Sqt}=dRe(),{isPromiseLike:wqt}=P4(),{thenify:ERe}=hRe(),{executeWithThenable:yRe}=gRe();function Gi(e,t,r){if(typeof e=="function"&&arguments.length===1&&(r=e,t={},e=null),typeof t=="function"&&(r=t,t={}),t=t||{},t.autostart=t.autostart!==!1,t.timeout=Number(t.timeout)||0,t.expose=t.expose||{},!new.target)return new Gi(e,t,r);this._server=e||this,this._opts=t,e&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new bqt,this._readyQ=M4(this,SRe,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=_Re},this._closeQ=M4(this,xqt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=_Re},this._doStart=null;let n=this;this._root=new bRe(M4(this,this._loadPluginNextTick,1),function(s,a,o){n._doStart=o,a.autostart&&n.start()},t,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,i=>{s1("root plugin ready");try{this.emit("preReady"),this._root=null}catch(s){i=i||this._error||s}if(i){if(this._error=i,this._readyQ.length()===0)throw i}else this.booted=!0;this._readyQ.resume()})}yqt(Gi,gqt);Gi.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};Gi.prototype.override=function(e,t,r){return e};Gi.prototype[ARe]=!0;Gi.prototype.use=function(e,t){return this._lastUsed=this._addPlugin(e,t,!1),this};Gi.prototype._loadRegistered=function(){let e=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),e?e.loadedSoFar():Promise.resolve()};Object.defineProperty(Gi.prototype,"then",{get:ERe});Gi.prototype._addPlugin=function(e,t,r){if(Sqt(e)&&(e=e.default),Eqt(e),t=t||{},this.booted)throw new _qt;let n=this._current[0],i=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;i=n.timeout-(a+3)}let s=new bRe(M4(this,this._loadPluginNextTick,1),e,t,r,i);if(this._trackPluginLoading(s),n.loaded)throw new Error(s.name,n.name);return n.enqueue(s,a=>{a&&(this._error=a)}),s};Gi.prototype._expose=function(){let t=this,r=t._server,{use:n="use",after:i="after",ready:s="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new sT(n,"use");if(r[n]=function(u,c){return t.use(u,c),this},r[i])throw new sT(i,"after");if(r[i]=function(u){return typeof u!="function"?t._loadRegistered():(t.after(VQ(u,this)),this)},r[s])throw new sT(s,"ready");if(r[s]=function(u){if(u&&typeof u!="function")throw new i1(s,typeof u);return t.ready(u?VQ(u,this):void 0)},r[a])throw new sT(a,"onClose");if(r[a]=function(u){if(typeof u!="function")throw new i1(a,typeof u);return t.onClose(Cqt(u,this)),this},r[o])throw new sT(o,"close");if(r[o]=function(u){if(u&&typeof u!="function")throw new i1(o,typeof u);return u?(t.close(VQ(u,this)),this):t.close()},r.then)throw new vqt("then");Object.defineProperty(r,"then",{get:ERe.bind(t)}),r[ARe]=!0};Gi.prototype.after=function(e){if(!e)return this._loadRegistered();this._addPlugin(t.bind(this),{},!0);function t(r,n,i){SRe.call(this,e,i)}return this};Gi.prototype.onClose=function(e){if(typeof e!="function")throw new i1("onClose",typeof e);return e[vRe]=!0,this._closeQ.unshift(e,t=>{t&&(this._error=t)}),this};Gi.prototype.close=function(e){let t;if(e){if(typeof e!="function")throw new i1("close",typeof e)}else t=new Promise(function(r,n){e=function(i){if(i)return n(i);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(e),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),t};Gi.prototype.ready=function(e){if(e){if(typeof e!="function")throw new i1("ready",typeof e);this._readyQ.push(e),queueMicrotask(this.start.bind(this));return}return new Promise((t,r)=>{this._readyQ.push(i),this.start();let n=this._current[0].server;function i(s,a,o){s?r(s):t(n),process.nextTick(o)}})};Gi.prototype._trackPluginLoading=function(e){let t=this._current[0]?.name||null;e.once("start",(r,n,i)=>{let s=this.pluginTree.start(t||null,n,i);e.once("loaded",(a,o,u)=>{this.pluginTree.stop(s,u)})})};Gi.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};Gi.prototype.toJSON=function(){return this.pluginTree.toJSON()};Gi.prototype._loadPlugin=function(e,t){let r=this;if(wqt(e.func)){e.func.then(a=>{typeof a.default=="function"&&(a=a.default),e.func=a,this._loadPlugin(e,t)},t);return}let n=r._current[0];if(r._current.unshift(e),r._error&&!e.isAfter){s1("skipping loading of plugin as instance errored and it is not an after",e.name),process.nextTick(s);return}let i=n&&n.server||r._server;if(!e.isAfter)try{i=r.override(i,e.func,e.options)}catch(a){return s1("override errored",e.name),s(a)}e.exec(i,s);function s(a){e.finish(a,o=>{r._current.shift(),t(o)})}};Gi.prototype._loadPluginNextTick=function(e,t){process.nextTick(this._loadPlugin.bind(this),e,t)};function _Re(){}function SRe(e,t){let r=this._server,n=this._error;if(this._error=null,e.length===0)this._error=n,yRe(e,[],t);else if(e.length===1)yRe(e,[n],t);else if(this._opts.timeout===0){let i=s=>{this._error=s,t(this._error)};e.length===2?e(n,i):e(n,r,i)}else Iqt.call(this,e,n,r,t)}function Iqt(e,t,r,n){let i=e.unwrappedName??e.name;s1("setting up ready timeout",i,this._opts.timeout);let s=setTimeout(()=>{s1("timed out",i),s=null;let o=new Aqt(i);o.fn=e,this._error=o,n(o)},this._opts.timeout);e.length===2?e(t,a.bind(this)):e(t,r,a.bind(this));function a(o){s&&(clearTimeout(s),this._error=o,n(this._error))}}function xqt(e,t){let r=this._server,n=e[vRe];if(e.length===0||e.length===1){let i;n?i=e(r):i=e(this._error),i&&typeof i.then=="function"?(s1("resolving close/onClose promise"),i.then(()=>process.nextTick(t),s=>process.nextTick(t,s))):process.nextTick(t)}else e.length===2?e(n?r:this._error,t):n?e(r,t):e(this._error,r,t)}function Cqt(e,t){return r.bind(t);function r(n,i){let s;e.length===0?(s=e(),s&&s.then?s.then(function(){process.nextTick(i)},i):process.nextTick(i)):e.length===1?(s=e(this),s&&s.then?s.then(function(){process.nextTick(i)},i):process.nextTick(i)):e(this,i)}}function VQ(e,t){let r=n.bind(t);return r.unwrappedName=e.name,r;function n(i,s){let a;e?e.length===0?(a=e(),a&&a.then?a.then(function(){process.nextTick(s,i)},s):process.nextTick(s,i)):e.length===1?(a=e(i),a&&a.then?a.then(function(){process.nextTick(s)},s):process.nextTick(s)):e.length===2?e(i,s):e(i,this,s):process.nextTick(s)}}zQ.exports=Gi;zQ.exports.express=function(e){return Gi(e,{expose:{use:"load"}})}});var Vs=b((Ywn,IRe)=>{"use strict";var Tqt={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};IRe.exports=Tqt});var YQ=b((Wwn,L4)=>{"use strict";var{format:QQ}=require("node:util");function Nqt(e){return xRe({...e,name:"DeprecationWarning"})}function xRe({name:e,code:t,message:r,unlimited:n=!1}={}){if(!e)throw new Error("Warning name must not be empty");if(!t)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");t=t.toUpperCase();let i={[e]:function(a,o,u){s.emitted===!0&&s.unlimited!==!0||(s.emitted=!0,process.emitWarning(s.format(a,o,u),s.name,s.code))}};n&&(i={[e]:function(a,o,u){s.emitted=!0,process.emitWarning(s.format(a,o,u),s.name,s.code)}});let s=i[e];return s.emitted=!1,s.message=r,s.unlimited=n,s.code=t,s.format=function(a,o,u){let c;return a&&o&&u?c=QQ(r,a,o,u):a&&o?c=QQ(r,a,o):a?c=QQ(r,a):c=r,c},s}var GQ={createWarning:xRe,createDeprecation:Nqt};L4.exports=GQ;L4.exports.default=GQ;L4.exports.processWarning=GQ});var Eh=b((Xwn,TRe)=>{"use strict";var{createDeprecation:Ya,createWarning:CRe}=YQ(),Rqt=Ya({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),Dqt=Ya({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),kqt=Ya({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),Oqt=Ya({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),Pqt=Ya({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),Mqt=Ya({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),Lqt=Ya({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),Bqt=Ya({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),$qt=Ya({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),Fqt=Ya({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),Uqt=Ya({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),qqt=Ya({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),jqt=Ya({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),Hqt=Ya({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),Kqt=Ya({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),Vqt=Ya({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),zqt=CRe({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),Qqt=CRe({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});TRe.exports={FSTDEP005:Rqt,FSTDEP006:Dqt,FSTDEP007:kqt,FSTDEP008:Oqt,FSTDEP009:Pqt,FSTDEP010:Mqt,FSTDEP011:Lqt,FSTDEP012:Bqt,FSTDEP013:$qt,FSTDEP014:Fqt,FSTDEP015:Uqt,FSTDEP016:qqt,FSTDEP017:jqt,FSTDEP018:Hqt,FSTDEP019:Kqt,FSTDEP020:Vqt,FSTWRN001:zqt,FSTWRN002:Qqt}});var Wa=b((Jwn,B4)=>{"use strict";var ze=FQ(),a1={FST_ERR_NOT_FOUND:ze("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:ze("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:ze("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:ze("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:ze("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:ze("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:ze("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:ze("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:ze("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:ze("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:ze("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:ze("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:ze("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:ze("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:ze("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:ze("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:ze("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:ze("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:ze("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:ze("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:ze("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:ze("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:ze("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:ze("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:ze("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:ze("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:ze("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:ze("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:ze("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:ze("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:ze("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:ze("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:ze("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:ze("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:ze("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:ze("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:ze("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:ze("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:ze("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:ze("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:ze("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:ze("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:ze("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:ze("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:ze("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:ze("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:ze("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:ze("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:ze("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:ze("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:ze("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:ze("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:ze("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:ze("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:ze("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:ze("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:ze("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:ze("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:ze("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:ze("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:ze("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:ze("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:ze("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:ze("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:ze("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:ze("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:ze("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:ze("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:ze("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:ze("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:ze("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:ze("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:ze("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:ze("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:ze("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:ze("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:ze("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:ze("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:ze("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function Gqt(e,t){return t.cause=e,t}B4.exports=a1;B4.exports.appendStackTrace=Gqt;B4.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:a1.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:a1.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:a1.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:a1.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:a1.FST_ERR_PLUGIN_TIMEOUT}});var eg=b((Zwn,BRe)=>{"use strict";var Yqt=["onRoute","onRegister","onReady","onListen","preClose","onClose"],kRe=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],Wqt=kRe.concat(Yqt),{FST_ERR_HOOK_INVALID_TYPE:Xqt,FST_ERR_HOOK_INVALID_HANDLER:Jqt,FST_ERR_SEND_UNDEFINED_ERR:$4,FST_ERR_HOOK_TIMEOUT:Zqt,FST_ERR_HOOK_NOT_SUPPORTED:ejt,AVVIO_ERRORS_MAP:NRe,appendStackTrace:RRe}=Wa(),{kChildren:aT,kHooks:ORe,kRequestPayloadStream:DRe}=Vs();function oT(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}oT.prototype=Object.create(null);oT.prototype.validate=function(e,t){if(typeof e!="string")throw new Xqt;if(Array.isArray(this[e])===!1)throw new ejt(e);if(typeof t!="function")throw new Jqt(e,Object.prototype.toString.call(t))};oT.prototype.add=function(e,t){this.validate(e,t),this[e].push(t)};function tjt(e){let t=new oT;return t.onRequest=e.onRequest.slice(),t.preParsing=e.preParsing.slice(),t.preValidation=e.preValidation.slice(),t.preSerialization=e.preSerialization.slice(),t.preHandler=e.preHandler.slice(),t.onSend=e.onSend.slice(),t.onResponse=e.onResponse.slice(),t.onError=e.onError.slice(),t.onRoute=e.onRoute.slice(),t.onRegister=e.onRegister.slice(),t.onTimeout=e.onTimeout.slice(),t.onRequestAbort=e.onRequestAbort.slice(),t.onReady=[],t.onListen=[],t.preClose=[],t}function PRe(e,t,r,n){let i=r[ORe][e],s=0,a=0;u();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=RRe(l,new Zqt(e)):l=NRe[l.code]!=null?RRe(l,new NRe[l.code](l.message)):l,n(l);return}n()}function u(l){if(l){o(l);return}if(s===i.length&&a===r[aT].length){s===0&&a===0?o():t(function(f,p){o(f),p(f)});return}if(s===i.length&&a{"use strict";var djt=require("node:http"),fjt=require("node:https"),pjt=require("node:dns"),{FSTDEP011:$Re}=Eh(),{kState:Xa,kOptions:hjt,kServerBindings:mjt}=Vs(),{onListenHookRunner:F4}=eg(),{FST_ERR_HTTP2_INVALID_VERSION:gjt,FST_ERR_REOPENED_CLOSE_SERVER:qRe,FST_ERR_REOPENED_SERVER:jRe,FST_ERR_LISTEN_OPTIONS_INVALID:yjt}=Wa();XQ.exports.createServer=_jt;XQ.exports.compileValidateHTTPVersion=vjt;function HRe(e){return`Server listening at ${e}`}function _jt(e,t){let r=VRe(e,t);function n(i,...s){let a=s.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)i=WQ([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")$Re(),i=WQ(Array.from(arguments)),a=i.cb;else if(s.length>1){$Re();let c=i.path?[i.path]:[i.port??0,i.host??"localhost"];Object.assign(i,WQ([...c,...s]))}else i.cb=a;if(i.signal){if(typeof i.signal.on!="function"&&typeof i.signal.addEventListener!="function")throw new yjt("Invalid options.signal");if(i.signal.aborted)this.close();else{let c=()=>{this.close()};i.signal.addEventListener("abort",c,{once:!0})}}let u;if(i.path==null?u=i.host??"localhost":u=i.host,Object.prototype.hasOwnProperty.call(i,"host")===!1&&(i.host=u),u==="localhost"?i.cb=(c,l)=>{if(c){a(c,l);return}FRe.call(this,r,t,e,i,()=>{this[Xa].listening=!0,a(null,l),F4(this)})}:i.cb=(c,l)=>{if(c){a(c,l);return}this[Xa].listening=!0,a(null,l),F4(this)},a===void 0)return Ajt.call(this,r,i).then(l=>new Promise((d,f)=>{u==="localhost"?FRe.call(this,r,t,e,i,()=>{this[Xa].listening=!0,d(l),F4(this)}):(d(l),F4(this))}));this.ready(KRe.call(this,r,i))}return{server:r,listen:n}}function FRe(e,t,r,n,i){this[Xa].listening=!1,pjt.lookup(n.host,{all:!0},(s,a)=>{if(s){i();return}let o=e.listening&&r.serverFactory,u=0,c=0;if(!o){let d=e.address();for(let f of a)if(f.address!==d.address){u++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:y=>{c++,y||this[mjt].push(h),c===u&&i()}}),h=VRe(r,t),m=()=>{h.close(()=>{}),r.forceCloseConnections==="idle"?h.closeIdleConnections():typeof h.closeAllConnections=="function"&&r.forceCloseConnections&&h.closeAllConnections()};h.on("upgrade",e.emit.bind(e,"upgrade")),e.on("unref",m),e.on("close",m),e.on("error",m),this[Xa].listening=!1,KRe.call(this,h,p)()}}if(u===0){i();return}let l=e.unref;e.unref=function(){l.call(e),e.emit("unref")}})}function KRe(e,t){let r=n=>{if(e.removeListener("error",r),n)this[Xa].listening=!1,t.cb(n,null);else{let i=zRe.call(this,e,t.listenTextResolver||HRe);t.cb(null,i)}};return n=>{if(n!=null)return t.cb(n);if(this[Xa].listening&&this[Xa].closing)return t.cb(new qRe,null);if(this[Xa].listening)return t.cb(new jRe,null);e.once("error",r),this[Xa].closing||(e.listen(t,r),this[Xa].listening=!0)}}function Ajt(e,t){return this[Xa].listening&&this[Xa].closing?Promise.reject(new qRe):this[Xa].listening?Promise.reject(new jRe):this.ready().then(()=>{let r,n=new Promise((s,a)=>{r=o=>{this[Xa].listening=!1,a(o)},e.once("error",r)}),i=new Promise((s,a)=>{e.listen(t,()=>{e.removeListener("error",r),s(zRe.call(this,e,t.listenTextResolver||HRe))}),this[Xa].listening=!0});return Promise.race([n,i])})}function vjt(e){let t=!1,r=new Map;return e.serverFactory&&(t=!0),e.http2?(r.set("2.0",!0),e.https&&e.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(i){return t||r.has(i)}}function VRe(e,t){let r=null,n=e.https===!0?{}:e.https;return e.serverFactory?r=e.serverFactory(t,e):e.http2?(typeof n=="object"?r=URe().createSecureServer(n,t):r=URe().createServer(t),r.on("session",Ejt(e.http2SessionTimeout))):(n?r=fjt.createServer(n,t):r=djt.createServer(e.http,t),r.keepAliveTimeout=e.keepAliveTimeout,r.requestTimeout=e.requestTimeout,e.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=e.maxRequestsPerSocket)),e.serverFactory||r.setTimeout(e.connectionTimeout),r}function WQ(e){if(e.length===0)return{port:0,host:"localhost"};let r={cb:typeof e[e.length-1]=="function"?e.pop():void 0},n=e[0],i=e.length,s=e[i-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=i>1?s:void 0):(r.port=i>=1&&Number.isInteger(n)?n:bjt(n),r.host=i>=2&&e[1]?e[1]:"localhost",r.backlog=i>=3?e[2]:void 0),r}function bjt(e){let t=Number(e);return t>=0&&!Number.isNaN(t)&&Number.isInteger(t)?t:0}function zRe(e,t){let r=e.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[hjt].https?"s":"")+"://")+r;let i=t(r);return this.log.info(i),r}function URe(){try{return require("node:http2")}catch{throw new gjt}}function Ejt(e){return function(t){t.setTimeout(e,Sjt)}}function Sjt(){this.close()}});var tG=b((tIn,YRe)=>{"use strict";var{kSchemaHeaders:j4,kSchemaParams:JQ,kSchemaQuerystring:ZQ,kSchemaBody:eG,kSchemaResponse:GRe}=Vs(),wjt=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:Ijt}=Wa(),{FSTWRN001:U4}=Eh();function xjt(e,t){if(!e.schema||!e.schema.response)return;let{method:r,url:n}=e.config||{};e[GRe]=Object.keys(e.schema.response).reduce(function(i,s){let a=e.schema.response[s];if(s=s.toLowerCase(),!wjt.exec(s))throw new Ijt;if(a.content){let o={};for(let u of Object.keys(a.content)){let c=a.content[u].schema;o[u]=t({schema:c,url:n,method:r,httpStatus:s,contentType:u})}i[s]=o}else i[s]=t({schema:a,url:n,method:r,httpStatus:s});return i},{})}function Cjt(e,t,r){let{schema:n}=e;if(!n)return;let{method:i,url:s}=e.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))e[j4]=t({schema:a,method:i,url:s,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(u=>{o[u]=a[u]}),o.required instanceof Array&&(o.required=o.required.map(u=>u.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(u=>{o.properties[u.toLowerCase()]=a.properties[u]})),e[j4]=t({schema:o,method:i,url:s,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&U4("headers",i,s);n.body?e[eG]=t({schema:n.body,method:i,url:s,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&U4("body",i,s),n.querystring?e[ZQ]=t({schema:n.querystring,method:i,url:s,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&U4("querystring",i,s),n.params?e[JQ]=t({schema:n.params,method:i,url:s,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&U4("params",i,s)}function q4(e,t,r){let n=t[r]===void 0,i=e&&e(n?null:t[r]);if(i?.then)return i.then(a=>s(a)).catch(a=>a);return s(i);function s(a){return a===!1?e.errors:a&&a.error?a.error:(a&&a.value&&(t[r]=a.value),!1)}}function H4(e,t,r){let n=r===void 0;if(n||!r.skipParams){let s=q4(e[JQ],t,"params");if(s)return typeof s.then!="function"?tg(s,"params",e.schemaErrorFormatter):Tjt(s,e,t)}if(n||!r.skipBody){let s=q4(e[eG],t,"body");if(s)return typeof s.then!="function"?tg(s,"body",e.schemaErrorFormatter):Njt(s,e,t)}if(n||!r.skipQuery){let s=q4(e[ZQ],t,"query");if(s)return typeof s.then!="function"?tg(s,"querystring",e.schemaErrorFormatter):Rjt(s,e,t)}let i=q4(e[j4],t,"headers");return i?typeof i.then!="function"?tg(i,"headers",e.schemaErrorFormatter):Djt(i,e,t):!1}function Tjt(e,t,r){return e.then(n=>n?tg(n,"params",t.schemaErrorFormatter):H4(t,r,{skipParams:!0}))}function Njt(e,t,r){return e.then(n=>n?tg(n,"body",t.schemaErrorFormatter):H4(t,r,{skipParams:!0,skipBody:!0}))}function Rjt(e,t,r){return e.then(n=>n?tg(n,"querystring",t.schemaErrorFormatter):H4(t,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function Djt(e,t,r){return e.then(n=>n?tg(n,"headers",t.schemaErrorFormatter):!1)}function tg(e,t,r){if(e instanceof Error)return e.statusCode=e.statusCode||400,e.code=e.code||"FST_ERR_VALIDATION",e.validationContext=e.validationContext||t,e;let n=r(e,t);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=e,n.validationContext=t,n}YRe.exports={symbols:{bodySchema:eG,querystringSchema:ZQ,responseSchema:GRe,paramsSchema:JQ,headersSchema:j4},compileSchemasForValidation:Cjt,compileSchemasForSerialization:xjt,validate:H4}});var rG=b((rIn,XRe)=>{"use strict";var{kReplyIsError:WRe,kReplyHijacked:kjt}=Vs();function Ojt(e,t){e.then(function(r){if(t[kjt]!==!0&&(r!==void 0||t.sent===!1&&t.raw.headersSent===!1&&t.request.raw.aborted===!1))try{t.send(r)}catch(n){t[WRe]=!0,t.send(n)}},function(r){if(t.sent===!0){t.log.error({err:r},"Promise errored, but reply.sent = true was set");return}t[WRe]=!0;try{t.send(r)}catch(n){t.send(n)}})}XRe.exports=Ojt});var aG=b((nIn,sG)=>{"use strict";var{validate:Pjt}=tG(),{preValidationHookRunner:Mjt,preHandlerHookRunner:Ljt}=eg(),Bjt=rG(),{kReplyIsError:K4,kRouteContext:ng}=Vs();function $jt(e,t,r){if(r.sent===!0)return;if(e!=null){r[K4]=!0,r.send(e);return}let n=t.raw.method,i=t.headers,s=t[ng];if(n==="GET"||n==="HEAD"){rg(t,r);return}let a=i["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?i["transfer-encoding"]===void 0&&(i["content-length"]==="0"||i["content-length"]===void 0)?rg(t,r):s.contentTypeParser.run("",rg,t,r):s.contentTypeParser.run(a,rg,t,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(i["transfer-encoding"]!==void 0||i["content-length"]!==void 0)?s.contentTypeParser.run(a,rg,t,r):rg(t,r);return}rg(t,r)}function rg(e,t){try{e[ng].preValidation!==null?Mjt(e[ng].preValidation,e,t,nG):nG(null,e,t)}catch(r){nG(r,e,t)}}function nG(e,t,r){if(r.sent===!0)return;if(e!=null){r[K4]=!0,r.send(e);return}let n=Pjt(r[ng],t);if(n&&typeof n.then=="function"||!1){let s=JRe.bind(null,t,r);n.then(s,s)}else JRe(t,r,n)}function JRe(e,t,r){if(r){if(t[ng].attachValidation===!1){t.send(r);return}t.request.validationError=r}e[ng].preHandler!==null?Ljt(e[ng].preHandler,e,t,iG):iG(null,e,t)}function iG(e,t,r){if(r.sent)return;if(e!=null){r[K4]=!0,r.send(e);return}let n;try{n=t[ng].handler(t,r)}catch(i){r[K4]=!0,r.send(i);return}n!==void 0&&(n!==null&&typeof n.then=="function"?Bjt(n,r):r.send(n))}sG.exports=$jt;sG.exports[Symbol.for("internals")]={handler:rg,preHandlerCallback:iG}});var eDe=b((iIn,ZRe)=>{"use strict";function u1(){}var Fjt={fatal:u1,error:u1,warn:u1,info:u1,debug:u1,trace:u1};Object.defineProperty(ZRe,"exports",{get(){return Object.create(Fjt)}})});var uG=b((sIn,nDe)=>{"use strict";var cT=e=>e&&typeof e.message=="string",oG=e=>{if(!e)return;let t=e.cause;if(typeof t=="function"){let r=e.cause();return cT(r)?r:void 0}else return cT(t)?t:void 0},tDe=(e,t)=>{if(!cT(e))return"";let r=e.stack||"";if(t.has(e))return r+` -causes have become circular...`;let n=oG(e);return n?(t.add(e),r+` -caused by: `+tDe(n,t)):r},Ujt=e=>tDe(e,new Set),rDe=(e,t,r)=>{if(!cT(e))return"";let n=r?"":e.message||"";if(t.has(e))return n+": ...";let i=oG(e);if(i){t.add(e);let s=typeof e.cause=="function";return n+(s?"":": ")+rDe(i,t,s)}else return n},qjt=e=>rDe(e,new Set);nDe.exports={isErrorLike:cT,getErrorCause:oG,stackWithCauses:Ujt,messageWithCauses:qjt}});var cG=b((aIn,sDe)=>{"use strict";var jjt=Symbol("circular-ref-tag"),V4=Symbol("pino-raw-err-ref"),iDe=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[V4]},set:function(e){this[V4]=e}}});Object.defineProperty(iDe,V4,{writable:!0,value:{}});sDe.exports={pinoErrProto:iDe,pinoErrorSymbols:{seen:jjt,rawSymbol:V4}}});var uDe=b((oIn,oDe)=>{"use strict";oDe.exports=dG;var{messageWithCauses:Hjt,stackWithCauses:Kjt,isErrorLike:aDe}=uG(),{pinoErrProto:Vjt,pinoErrorSymbols:zjt}=cG(),{seen:lG}=zjt,{toString:Qjt}=Object.prototype;function dG(e){if(!aDe(e))return e;e[lG]=void 0;let t=Object.create(Vjt);t.type=Qjt.call(e.constructor)==="[object Function]"?e.constructor.name:e.name,t.message=Hjt(e),t.stack=Kjt(e),Array.isArray(e.errors)&&(t.aggregateErrors=e.errors.map(r=>dG(r)));for(let r in e)if(t[r]===void 0){let n=e[r];aDe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,lG)&&(t[r]=dG(n)):t[r]=n}return delete e[lG],t.raw=e,t}});var lDe=b((uIn,cDe)=>{"use strict";cDe.exports=Q4;var{isErrorLike:fG}=uG(),{pinoErrProto:Gjt,pinoErrorSymbols:Yjt}=cG(),{seen:z4}=Yjt,{toString:Wjt}=Object.prototype;function Q4(e){if(!fG(e))return e;e[z4]=void 0;let t=Object.create(Gjt);t.type=Wjt.call(e.constructor)==="[object Function]"?e.constructor.name:e.name,t.message=e.message,t.stack=e.stack,Array.isArray(e.errors)&&(t.aggregateErrors=e.errors.map(r=>Q4(r))),fG(e.cause)&&!Object.prototype.hasOwnProperty.call(e.cause,z4)&&(t.cause=Q4(e.cause));for(let r in e)if(t[r]===void 0){let n=e[r];fG(n)?Object.prototype.hasOwnProperty.call(n,z4)||(t[r]=Q4(n)):t[r]=n}return delete e[z4],t.raw=e,t}});var hDe=b((cIn,pDe)=>{"use strict";pDe.exports={mapHttpRequest:Xjt,reqSerializer:fDe};var pG=Symbol("pino-raw-req-ref"),dDe=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[pG]},set:function(e){this[pG]=e}}});Object.defineProperty(dDe,pG,{writable:!0,value:{}});function fDe(e){let t=e.info||e.socket,r=Object.create(dDe);if(r.id=typeof e.id=="function"?e.id():e.id||(e.info?e.info.id:void 0),r.method=e.method,e.originalUrl)r.url=e.originalUrl;else{let n=e.path;r.url=typeof n=="string"?n:e.url?e.url.path||e.url:void 0}return e.query&&(r.query=e.query),e.params&&(r.params=e.params),r.headers=e.headers,r.remoteAddress=t&&t.remoteAddress,r.remotePort=t&&t.remotePort,r.raw=e.raw||e,r}function Xjt(e){return{req:fDe(e)}}});var _De=b((lIn,yDe)=>{"use strict";yDe.exports={mapHttpResponse:Jjt,resSerializer:gDe};var hG=Symbol("pino-raw-res-ref"),mDe=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[hG]},set:function(e){this[hG]=e}}});Object.defineProperty(mDe,hG,{writable:!0,value:{}});function gDe(e){let t=Object.create(mDe);return t.statusCode=e.headersSent?e.statusCode:null,t.headers=e.getHeaders?e.getHeaders():e._headers,t.raw=e,t}function Jjt(e){return{res:gDe(e)}}});var gG=b((dIn,ADe)=>{"use strict";var mG=uDe(),Zjt=lDe(),G4=hDe(),Y4=_De();ADe.exports={err:mG,errWithCause:Zjt,mapHttpRequest:G4.mapHttpRequest,mapHttpResponse:Y4.mapHttpResponse,req:G4.reqSerializer,res:Y4.resSerializer,wrapErrorSerializer:function(t){return t===mG?t:function(n){return t(mG(n))}},wrapRequestSerializer:function(t){return t===G4.reqSerializer?t:function(n){return t(G4.reqSerializer(n))}},wrapResponseSerializer:function(t){return t===Y4.resSerializer?t:function(n){return t(Y4.resSerializer(n))}}}});var yG=b((fIn,vDe)=>{"use strict";function e9t(e,t){return t}vDe.exports=function(){let t=Error.prepareStackTrace;Error.prepareStackTrace=e9t;let r=new Error().stack;if(Error.prepareStackTrace=t,!Array.isArray(r))return;let n=r.slice(2),i=[];for(let s of n)s&&i.push(s.getFileName());return i}});var EDe=b((pIn,bDe)=>{"use strict";bDe.exports=t9t;function t9t(e={}){let{ERR_PATHS_MUST_BE_STRINGS:t=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=e;return function({paths:i}){i.forEach(s=>{if(typeof s!="string")throw Error(t());try{if(/〇/.test(s))throw Error();let a=(s[0]==="["?"":".")+s.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(` + +} catch (e) { + if (typeof globalThis.__catpawBootLog === 'function') { + var __catpawEarlyErr = e && (e.stack || e.message) ? (e.stack || e.message) : e; + globalThis.__catpawBootLog('FATAL pre-banner eval: ' + __catpawEarlyErr); + } + throw e; +} + +(function(){ + var firstBootLogWrite = true; + var bootLogPath = ''; + function bootSafeString(value) { + try { return String(value); } catch (_) { return '[unstringifiable]'; } + } + function bootBaseDir() { + try { + if (typeof process !== 'undefined' && process && process.env && process.env.NODE_PATH) { + return process.env.NODE_PATH; + } + } catch (_) {} + try { + if (typeof process !== 'undefined' && process && typeof process.cwd === 'function') { + return process.cwd(); + } + } catch (_) {} + return '.'; + } + function bootLog(message) { + try { + var req = eval('require'); + var fs = req('fs'); + var path = req('path'); + if (!bootLogPath) bootLogPath = path.join(bootBaseDir(), 'cat-boot.log'); + var line = '[' + new Date().toISOString() + '] ' + bootSafeString(message) + '\n'; + fs.writeFileSync(bootLogPath, line, { flag: firstBootLogWrite ? 'w' : 'a' }); + firstBootLogWrite = false; + } catch (_) {} + } + globalThis.__catpawBootLog = bootLog; + bootLog('boot banner ran node=' + (typeof process !== 'undefined' && process ? process.version : 'unknown') + ' cwd=' + bootBaseDir()); +})(); + +try { + +(function(){ + var injected = false; + var diag = 'before: fetch=' + typeof globalThis.fetch + ' Headers=' + typeof globalThis.Headers + ' Request=' + typeof globalThis.Request; + try { + // eval 绕过 esbuild 静态分析,让 require('undici') 在 iOS 运行期由 nodejs-mobile 解析 + var _require = eval('require'); + var u = _require('undici'); + diag += ' | undici keys=' + (u ? Object.keys(u).length : 'null'); + if (u && u.Request && u.Headers && u.fetch) { + // 必须整套对齐到同一个 undici 实例,否则 fetch 和 Request 类不互认 + globalThis.fetch = u.fetch; + globalThis.Headers = u.Headers; + globalThis.Request = u.Request; + globalThis.Response = u.Response; + if (u.FormData) globalThis.FormData = u.FormData; + if (u.File) globalThis.File = u.File; + if (u.Blob) globalThis.Blob = u.Blob; + injected = true; + } + } catch (e) { + diag += ' | require undici threw: ' + (e && e.message); + } + diag += ' | injected=' + injected; + if (typeof globalThis.__catpawBootLog === 'function') { + globalThis.__catpawBootLog('[webApiGlobalsShim] ' + diag); + } + function ensure(name, ctor){ + try { + if (typeof globalThis[name] === 'undefined') globalThis[name] = ctor; + } catch (_) {} + } + if (!injected) { + // 最坏 fallback:require undici 失败时给个能 new 的 stub,至少让 bundle 加载不报 + // "X is not a constructor"。运行期 fetch 通讯可能仍不工作。 + if (typeof globalThis.Headers !== 'function') { + var H = function Headers(init){ + this._m = Object.create(null); + var setOne = (k, v) => { this._m[String(k).toLowerCase()] = String(v); }; + if (!init) return; + if (typeof init.forEach === 'function' && !Array.isArray(init)) init.forEach((v, k) => setOne(k, v)); + else if (Symbol.iterator in Object(init)) { for (var p of init) setOne(p[0], p[1]); } + else if (typeof init === 'object') { for (var k in init) if (Object.prototype.hasOwnProperty.call(init, k)) setOne(k, init[k]); } + }; + H.prototype.set = function(k, v){ this._m[String(k).toLowerCase()] = String(v); }; + H.prototype.get = function(k){ var n = String(k).toLowerCase(); return Object.prototype.hasOwnProperty.call(this._m, n) ? this._m[n] : null; }; + H.prototype.has = function(k){ return Object.prototype.hasOwnProperty.call(this._m, String(k).toLowerCase()); }; + H.prototype.delete = function(k){ delete this._m[String(k).toLowerCase()]; }; + H.prototype.append = function(k, v){ var n = String(k).toLowerCase(); if (Object.prototype.hasOwnProperty.call(this._m, n)) this._m[n] += ', ' + v; else this._m[n] = String(v); }; + H.prototype.forEach = function(cb, thisArg){ for (var k in this._m) cb.call(thisArg, this._m[k], k, this); }; + H.prototype.entries = function*(){ for (var k in this._m) yield [k, this._m[k]]; }; + H.prototype.keys = function*(){ for (var k in this._m) yield k; }; + H.prototype.values = function*(){ for (var k in this._m) yield this._m[k]; }; + H.prototype[Symbol.iterator] = H.prototype.entries; + globalThis.Headers = H; + } + if (typeof globalThis.Request !== 'function') { + var R = function Request(input, init){ + init = init || {}; + var isReq = input && typeof input === 'object' && typeof input.url !== 'undefined'; + this.url = isReq ? input.url : String(input); + this.method = init.method || (isReq ? input.method : 'GET'); + this.headers = new globalThis.Headers(init.headers || (isReq ? input.headers : undefined)); + this.body = init.body !== undefined ? init.body : (isReq ? input.body : undefined); + this.redirect = init.redirect || (isReq ? input.redirect : 'follow'); + }; + R.prototype.toString = function(){ return this.url; }; + globalThis.Request = R; + } + if (typeof globalThis.Response !== 'function') { + globalThis.Response = function Response(body, init){ + init = init || {}; + this.status = init.status || 200; + this.ok = this.status >= 200 && this.status < 300; + this.headers = new globalThis.Headers(init.headers); + this._body = body; + }; + globalThis.Response.prototype.text = function(){ return Promise.resolve(String(this._body == null ? '' : this._body)); }; + globalThis.Response.prototype.json = function(){ return Promise.resolve(JSON.parse(String(this._body == null ? 'null' : this._body))); }; + } + } + // 这几个无论 undici 路径还是 fallback 路径都补 + ensure('File', class File {}); + ensure('FileList', class FileList {}); + ensure('FileReader', class FileReader {}); + ensure('FormData', class FormData { + constructor(){ this._e = []; } + append(k, v){ this._e.push([String(k), v]); } + get(k){ var e = this._e.find(p => p[0] === String(k)); return e ? e[1] : null; } + has(k){ return this._e.some(p => p[0] === String(k)); } + forEach(cb, thisArg){ this._e.forEach(p => cb.call(thisArg, p[1], p[0], this)); } + *entries(){ for (var e of this._e) yield e; } + [Symbol.iterator](){ return this.entries(); } + }); + + // 终极兜底 fetch:iOS nodejs-mobile 若既没暴露 globalThis.fetch 又没法 require('undici'), + // 用 node:http/https 手写一个最小 fetch。仅满足 youtubei.js HTTPClient 的 POST JSON + 读 body 场景。 + // 不实现 redirect / streaming / fancy body 类型;够 spider 业务用。 + if (typeof globalThis.fetch !== 'function') { + var _req2 = eval('require'); + var http_ = _req2('http'); + var https_ = _req2('https'); + globalThis.fetch = function fetch(input, init){ + init = init || {}; + return new Promise(function(resolve, reject){ + var urlStr = typeof input === 'string' ? input : (input && (input.url || input.toString && input.toString())) || String(input); + var u; + try { u = new URL(urlStr); } catch (e) { reject(new TypeError('Failed to parse URL: ' + urlStr)); return; } + var lib = u.protocol === 'https:' ? https_ : http_; + var headers = {}; + var inHdr = init.headers || (input && input.headers); + if (inHdr) { + if (typeof inHdr.forEach === 'function') inHdr.forEach(function(v,k){ headers[k]=String(v); }); + else if (typeof inHdr === 'object') for (var k in inHdr) headers[k] = String(inHdr[k]); + } + var method = init.method || (input && input.method) || 'GET'; + var body = init.body !== undefined ? init.body : (input && input.body); + var req = lib.request({ + method: method, + hostname: u.hostname, + port: u.port || (u.protocol === 'https:' ? 443 : 80), + path: u.pathname + u.search, + headers: headers, + }, function(res){ + // 简单 redirect: 3xx 跟一次,避免主流接口偶发 redirect 直接挂 + if (res.statusCode >= 300 && res.statusCode < 400 && res.headers.location && (init._redirHops || 0) < 5) { + res.resume(); + var nextUrl = new URL(res.headers.location, urlStr).toString(); + resolve(globalThis.fetch(nextUrl, Object.assign({}, init, { _redirHops: (init._redirHops || 0) + 1 }))); + return; + } + var chunks = []; + res.on('data', function(c){ chunks.push(c); }); + res.on('end', function(){ + var buf = Buffer.concat(chunks); + var bodyStr = null; + resolve({ + ok: res.statusCode >= 200 && res.statusCode < 300, + status: res.statusCode, + statusText: res.statusMessage || '', + url: urlStr, + headers: new globalThis.Headers(res.headers), + text: function(){ if (bodyStr == null) bodyStr = buf.toString('utf8'); return Promise.resolve(bodyStr); }, + json: function(){ return this.text().then(JSON.parse); }, + arrayBuffer: function(){ return Promise.resolve(buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength)); }, + clone: function(){ return this; } + }); + }); + }); + req.on('error', reject); + if (body != null && body !== '') { + if (typeof body === 'string' || Buffer.isBuffer(body) || body instanceof Uint8Array) req.write(body); + else req.write(String(body)); + } + req.end(); + }); + }; + if (typeof globalThis.__catpawBootLog === 'function') { + globalThis.__catpawBootLog('[webApiGlobalsShim] installed http/https-based fetch fallback'); + } + } +})(); + +(function(){ + if (typeof globalThis.Intl !== 'undefined' && globalThis.Intl && typeof globalThis.Intl.DateTimeFormat === 'function') return; + function DateTimeFormat(){ + return { + resolvedOptions: function(){ return { timeZone: 'UTC', locale: 'en-US', calendar: 'gregory', numberingSystem: 'latn' }; }, + format: function(d){ try { return new Date(d == null ? Date.now() : d).toISOString(); } catch(_) { return ''; } }, + formatToParts: function(){ return []; }, + formatRange: function(a, b){ return String(a) + ' - ' + String(b); }, + formatRangeToParts: function(){ return []; } + }; + } + function NumberFormat(){ + return { + resolvedOptions: function(){ return { locale: 'en-US' }; }, + format: function(n){ return String(n); }, + formatToParts: function(){ return []; } + }; + } + function Collator(){ + return { compare: function(a, b){ a = String(a); b = String(b); return a < b ? -1 : a > b ? 1 : 0; } }; + } + function PluralRules(){ return { select: function(){ return 'other'; } }; } + function RelativeTimeFormat(){ + return { + format: function(v, u){ return String(v) + ' ' + String(u); }, + formatToParts: function(){ return []; } + }; + } + function ListFormat(){ + return { format: function(arr){ return (arr || []).join(', '); }, formatToParts: function(){ return []; } }; + } + function DisplayNames(){ + return { of: function(s){ return s; } }; + } + function Segmenter(){ + return { segment: function(s){ return { [Symbol.iterator]: function*(){ for (var ch of String(s || '')) yield { segment: ch, index: 0, input: s }; } }; } }; + } + function Locale(tag){ + var t = String(tag || 'en-US'); + this.baseName = t; + this.language = t.split('-')[0] || 'en'; + this.region = (t.split('-')[1] || '').toUpperCase() || undefined; + } + var IntlObj = globalThis.Intl || {}; + IntlObj.DateTimeFormat = DateTimeFormat; + IntlObj.NumberFormat = NumberFormat; + IntlObj.Collator = Collator; + IntlObj.PluralRules = PluralRules; + IntlObj.RelativeTimeFormat = RelativeTimeFormat; + IntlObj.ListFormat = ListFormat; + IntlObj.DisplayNames = DisplayNames; + IntlObj.Segmenter = Segmenter; + IntlObj.Locale = Locale; + IntlObj.getCanonicalLocales = function(loc){ + if (Array.isArray(loc)) return loc.map(String); + return loc == null ? [] : [String(loc)]; + }; + IntlObj.supportedValuesOf = function(){ return []; }; + globalThis.Intl = IntlObj; +})(); + +(function(){ + if (typeof String.prototype.toWellFormed !== 'function') { + Object.defineProperty(String.prototype, 'toWellFormed', { + value: function toWellFormed(){ return String(this); }, + writable: true, configurable: true, enumerable: false + }); + } + if (typeof String.prototype.isWellFormed !== 'function') { + Object.defineProperty(String.prototype, 'isWellFormed', { + value: function isWellFormed(){ return true; }, + writable: true, configurable: true, enumerable: false + }); + } +})(); + +(function(){ + if (typeof TextDecoder === 'undefined') return; + var _TD = TextDecoder; + function isIcu(e){ return e && (e.code === 'ERR_NO_ICU' || e.code === 'ERR_ENCODING_NOT_SUPPORTED'); } + function SafeTD(label, options){ + if (!(this instanceof SafeTD)) return new SafeTD(label, options); + try { return Reflect.construct(_TD, [label, options]); } + catch (e) { + if (!isIcu(e)) throw e; + var safeLabel = (typeof label === 'string' && /^utf-?8$/i.test(label)) ? label : 'utf-8'; + var safeOpts = options ? Object.assign({}, options, { fatal: false }) : { fatal: false }; + return Reflect.construct(_TD, [safeLabel, safeOpts]); + } + } + SafeTD.prototype = _TD.prototype; + globalThis.TextDecoder = SafeTD; +})(); + +var Tsr=Object.create;var AF=Object.defineProperty;var bsr=Object.getOwnPropertyDescriptor;var Isr=Object.getOwnPropertyNames;var Rsr=Object.getPrototypeOf,Csr=Object.prototype.hasOwnProperty;var ie=(e,t)=>()=>(e&&(t=e(e=0)),t);var S=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),kt=(e,t)=>{for(var r in t)AF(e,r,{get:t[r],enumerable:!0})},U3e=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Isr(t))!Csr.call(e,s)&&s!==r&&AF(e,s,{get:()=>t[s],enumerable:!(n=bsr(t,s))||n.enumerable});return e};var Ne=(e,t,r)=>(r=e!=null?Tsr(Rsr(e)):{},U3e(t||!e||!e.__esModule?AF(r,"default",{value:e,enumerable:!0}):r,e)),xsr=e=>U3e(AF({},"__esModule",{value:!0}),e);var $3e=S((pqn,F3e)=>{"use strict";function wsr(e){var t=new e,r=t;function n(){var i=t;return i.next?t=i.next:(t=new e,r=t),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}F3e.exports=wsr});var H3e=S((mqn,XZ)=>{"use strict";var Nsr=$3e();function q3e(e,t,r){if(typeof e=="function"&&(r=t,t=e,e=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=Nsr(Osr),s=null,i=null,a=0,o=null,c={push:m,drain:ud,saturated:ud,pause:l,paused:!1,get concurrency(){return r},set concurrency(v){if(!(v>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=v,!c.paused)for(;s&&a=r||c.paused?i?(i.next=I,i=I):(s=I,i=I,c.saturated()):(a++,t.call(e,I.value,I.worked))}function g(v,b){var I=n.get();I.context=e,I.release=_,I.value=v,I.callback=b||ud,I.errorHandler=o,a>=r||c.paused?s?(I.next=s,s=I):(s=I,i=I,c.saturated()):(a++,t.call(e,I.value,I.worked))}function _(v){v&&n.release(v);var b=s;b&&a<=r?c.paused?a--:(i===s&&(i=null),s=b.next,b.next=null,t.call(e,b.value,b.worked),i===null&&c.empty()):--a===0&&c.drain()}function y(){s=null,i=null,c.drain=ud}function A(){s=null,i=null,c.drain(),c.drain=ud}function E(v){o=v}}function ud(){}function Osr(){this.value=null,this.callback=ud,this.next=null,this.release=ud,this.context=null,this.errorHandler=null;var e=this;this.worked=function(r,n){var s=e.callback,i=e.errorHandler,a=e.value;e.value=null,e.callback=ud,e.errorHandler&&i(r,a),s.call(e.context,r,n),e.release(e)}}function Dsr(e,t,r){typeof e=="function"&&(r=t,t=e,e=null);function n(l,d){t.call(this,l).then(function(f){d(null,f)},d)}var s=q3e(e,n,r),i=s.push,a=s.unshift;return s.push=o,s.unshift=c,s.drained=u,s;function o(l){var d=new Promise(function(f,h){i(l,function(p,m){if(p){h(p);return}f(m)})});return d.catch(ud),d}function c(l){var d=new Promise(function(f,h){a(l,function(p,m){if(p){h(p);return}f(m)})});return d.catch(ud),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}XZ.exports=q3e;XZ.exports.promise=Dsr});var ZZ=S((gqn,EF)=>{"use strict";var{format:Psr}=require("node:util");function Lsr(){return`${this.name} [${this.code}]: ${this.message}`}function JZ(e,t,r=500,n=Error){if(!e)throw new Error("Fastify error code must not be empty");if(!t)throw new Error("Fastify error message must not be empty");e=e.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=e,this.name="FastifyError",this.statusCode=r;let a=i.length-1;a!==-1&&i[a]&&typeof i[a]=="object"&&"cause"in i[a]&&(this.cause=i.pop().cause),this.message=Psr(t,...i),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,s)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),s.prototype[Symbol.toStringTag]="Error",s.prototype.toString=Lsr,s}EF.exports=JZ;EF.exports.default=JZ;EF.exports.createError=JZ});var yF=S((_qn,V3e)=>{"use strict";var{createError:z_}=ZZ();V3e.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:z_("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:z_("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:z_("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:z_("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:z_("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:z_("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:z_("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:z_("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var b1=S((Aqn,j3e)=>{"use strict";var Msr=Symbol("avvio.Boot"),ksr=Symbol("isOnCloseHandler"),Bsr=Symbol("avvio.ThenifyDoNotWrap"),Usr=Symbol("avvio.TimeTree.untrackNode"),Fsr=Symbol("avvio.TimeTree.trackNode"),$sr=Symbol("avvio.TimeTree.getParent"),qsr=Symbol("avvio.TimeTree.getNode"),Hsr=Symbol("avvio.TimeTree.addNode"),Vsr=Symbol.for("plugin-meta");j3e.exports={kAvvio:Msr,kIsOnCloseHandler:ksr,kThenifyDoNotWrap:Bsr,kUntrackNode:Usr,kTrackNode:Fsr,kGetParent:$sr,kGetNode:qsr,kAddNode:Hsr,kPluginMeta:Vsr}});var X3e=S((Eqn,W3e)=>{"use strict";var{kUntrackNode:K3e,kTrackNode:eee,kGetParent:G3e,kGetNode:z3e,kAddNode:Y3e}=b1(),tee=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[eee](t){this.tableId.set(t.id,t),this.tableLabel.has(t.label)?this.tableLabel.get(t.label).push(t):this.tableLabel.set(t.label,[t])}[K3e](t){this.tableId.delete(t.id);let r=this.tableLabel.get(t.label);r.pop(),r.length===0&&this.tableLabel.delete(t.label)}[G3e](t){if(t===null)return null;if(this.tableLabel.has(t)){let r=this.tableLabel.get(t);return r[r.length-1]}else return null}[z3e](t){return this.tableId.get(t)}[Y3e](t,r,n){let s=this[G3e](t);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[eee](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:t,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[eee](o),a}start(t,r,n=Date.now()){return this[Y3e](t,r,n)}stop(t,r=Date.now()){let n=this[z3e](t);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[K3e](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return Q3e(this.toJSON())}};function Q3e(e,t=""){let r=t,n=e.nodes.length,s=n-1;r+=`${e.label} ${e.diff} ms +`;for(let i=0;i{"use strict";var{debuglog:jsr}=require("node:util"),Ksr=jsr("avvio");J3e.exports={debug:Ksr}});var eUe=S((vqn,Z3e)=>{"use strict";function Gsr(){let e={resolve:null,reject:null,promise:null};return e.promise=new Promise((t,r)=>{e.resolve=t,e.reject=r}),e}Z3e.exports={createPromise:Gsr}});var rUe=S((Sqn,tUe)=>{"use strict";var{kPluginMeta:ree}=b1();function zsr(e,t){return e[ree]&&e[ree].name?e[ree].name:t&&t.name?t.name:e.name?e.name:e.toString().split(` +`).slice(0,2).map(r=>r.trim()).join(" -- ")}tUe.exports={getPluginName:zsr}});var SF=S((Tqn,nUe)=>{"use strict";function Ysr(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}nUe.exports={isPromiseLike:Ysr}});var iUe=S((bqn,sUe)=>{"use strict";var{EventEmitter:Qsr}=require("node:events"),{inherits:Wsr}=require("node:util"),{debug:fo}=vF(),{createPromise:Xsr}=eUe(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:Jsr}=yF(),{getPluginName:Zsr}=rUe(),{isPromiseLike:eir}=SF();function I1(e,t,r,n,s){this.queue=e,this.func=t,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=Zsr(t,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Wsr(I1,Qsr);I1.prototype.exec=function(e,t){fo("exec",this.name),this.server=e;let r=this.func,n=this.name,s=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let i=null,a=c=>{if(s){fo("loading complete",n);return}this._error=c,fo(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),t(c)};this.timeout>0&&(fo("setting up timeout",n,this.timeout),i=setTimeout(function(){fo("timed out",n),i=null;let c=new Jsr(n);c.fn=r,a(c)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);eir(o)&&(fo("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};I1.prototype.loadedSoFar=function(){if(fo("loadedSoFar",this.name),this.loaded)return Promise.resolve();let e=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(fo("rejecting promise",this.name,r),this._promise.reject(r)):(fo("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},t;return this._promise?t=Promise.resolve():(this._promise=Xsr(),t=this._promise.promise,this.server?e():this.on("start",e)),t};I1.prototype.enqueue=function(e,t){fo("enqueue",this.name,e.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(e,t)};I1.prototype.finish=function(e,t){fo("finish",this.name,e);let r=()=>{this.loaded||(fo("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,t(e))};if(e){this._promise&&(this._promise.reject(e),this._promise=null),r();return}let n=()=>{if(fo("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{fo("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else fo("delayed",this.name),this.queue.drain=()=>{fo("drain",this.name),this.queue.drain=tir,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function tir(){}sUe.exports={Plugin:I1}});var oUe=S((Iqn,aUe)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:nee}=yF();function rir(e){if(!(e&&(typeof e=="function"||typeof e.then=="function")))throw Array.isArray(e)?new nee("array"):e===null?new nee("null"):new nee(typeof e)}aUe.exports={validatePlugin:rir}});var uUe=S((Rqn,cUe)=>{"use strict";function nir(e){return e!==null&&typeof e=="object"&&typeof e.default=="function"}cUe.exports={isBundledOrTypescriptPlugin:nir}});var fUe=S((Cqn,dUe)=>{"use strict";var{debug:lUe}=vF(),{kThenifyDoNotWrap:see}=b1();function sir(){if(this.booted){lUe("thenify returning undefined because we are already booted");return}if(this[see]){this[see]=!1;return}return lUe("thenify"),(e,t)=>this._loadRegistered().then(()=>(this[see]=!0,e(this._server)),t)}dUe.exports={thenify:sir}});var pUe=S((xqn,hUe)=>{"use strict";var{isPromiseLike:iir}=SF(),{kAvvio:air}=b1();function oir(e,t,r){let n=e.apply(e,t);iir(n)&&!n[air]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}hUe.exports={executeWithThenable:oir}});var SUe=S((wqn,aee)=>{"use strict";var TF=H3e(),cir=require("node:events").EventEmitter,uir=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:uO,AVV_ERR_CALLBACK_NOT_FN:R1,AVV_ERR_ROOT_PLG_BOOTED:lir,AVV_ERR_READY_TIMEOUT:dir,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:fir}=yF(),{kAvvio:_Ue,kIsOnCloseHandler:AUe}=b1(),{TimeTree:hir}=X3e(),{Plugin:EUe}=iUe(),{debug:C1}=vF(),{validatePlugin:pir}=oUe(),{isBundledOrTypescriptPlugin:mir}=uUe(),{isPromiseLike:gir}=SF(),{thenify:yUe}=fUe(),{executeWithThenable:mUe}=pUe();function Bi(e,t,r){if(typeof e=="function"&&arguments.length===1&&(r=e,t={},e=null),typeof t=="function"&&(r=t,t={}),t=t||{},t.autostart=t.autostart!==!1,t.timeout=Number(t.timeout)||0,t.expose=t.expose||{},!new.target)return new Bi(e,t,r);this._server=e||this,this._opts=t,e&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new hir,this._readyQ=TF(this,vUe,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=gUe},this._closeQ=TF(this,Air,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=gUe},this._doStart=null;let n=this;this._root=new EUe(TF(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},t,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{C1("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){s=s||this._error||i}if(s){if(this._error=s,this._readyQ.length()===0)throw s}else this.booted=!0;this._readyQ.resume()})}uir(Bi,cir);Bi.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};Bi.prototype.override=function(e,t,r){return e};Bi.prototype[_Ue]=!0;Bi.prototype.use=function(e,t){return this._lastUsed=this._addPlugin(e,t,!1),this};Bi.prototype._loadRegistered=function(){let e=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),e?e.loadedSoFar():Promise.resolve()};Object.defineProperty(Bi.prototype,"then",{get:yUe});Bi.prototype._addPlugin=function(e,t,r){if(mir(e)&&(e=e.default),pir(e),t=t||{},this.booted)throw new lir;let n=this._current[0],s=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;s=n.timeout-(a+3)}let i=new EUe(TF(this,this._loadPluginNextTick,1),e,t,r,s);if(this._trackPluginLoading(i),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,a=>{a&&(this._error=a)}),i};Bi.prototype._expose=function(){let t=this,r=t._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new uO(n,"use");if(r[n]=function(c,u){return t.use(c,u),this},r[s])throw new uO(s,"after");if(r[s]=function(c){return typeof c!="function"?t._loadRegistered():(t.after(iee(c,this)),this)},r[i])throw new uO(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new R1(i,typeof c);return t.ready(c?iee(c,this):void 0)},r[a])throw new uO(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new R1(a,typeof c);return t.onClose(Eir(c,this)),this},r[o])throw new uO(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new R1(o,typeof c);return c?(t.close(iee(c,this)),this):t.close()},r.then)throw new fir("then");Object.defineProperty(r,"then",{get:yUe.bind(t)}),r[_Ue]=!0};Bi.prototype.after=function(e){if(!e)return this._loadRegistered();this._addPlugin(t.bind(this),{},!0);function t(r,n,s){vUe.call(this,e,s)}return this};Bi.prototype.onClose=function(e){if(typeof e!="function")throw new R1("onClose",typeof e);return e[AUe]=!0,this._closeQ.unshift(e,t=>{t&&(this._error=t)}),this};Bi.prototype.close=function(e){let t;if(e){if(typeof e!="function")throw new R1("close",typeof e)}else t=new Promise(function(r,n){e=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(e),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),t};Bi.prototype.ready=function(e){if(e){if(typeof e!="function")throw new R1("ready",typeof e);this._readyQ.push(e),queueMicrotask(this.start.bind(this));return}return new Promise((t,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):t(n),process.nextTick(o)}})};Bi.prototype._trackPluginLoading=function(e){let t=this._current[0]?.name||null;e.once("start",(r,n,s)=>{let i=this.pluginTree.start(t||null,n,s);e.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};Bi.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};Bi.prototype.toJSON=function(){return this.pluginTree.toJSON()};Bi.prototype._loadPlugin=function(e,t){let r=this;if(gir(e.func)){e.func.then(a=>{typeof a.default=="function"&&(a=a.default),e.func=a,this._loadPlugin(e,t)},t);return}let n=r._current[0];if(r._current.unshift(e),r._error&&!e.isAfter){C1("skipping loading of plugin as instance errored and it is not an after",e.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!e.isAfter)try{s=r.override(s,e.func,e.options)}catch(a){return C1("override errored",e.name),i(a)}e.exec(s,i);function i(a){e.finish(a,o=>{r._current.shift(),t(o)})}};Bi.prototype._loadPluginNextTick=function(e,t){process.nextTick(this._loadPlugin.bind(this),e,t)};function gUe(){}function vUe(e,t){let r=this._server,n=this._error;if(this._error=null,e.length===0)this._error=n,mUe(e,[],t);else if(e.length===1)mUe(e,[n],t);else if(this._opts.timeout===0){let s=i=>{this._error=i,t(this._error)};e.length===2?e(n,s):e(n,r,s)}else _ir.call(this,e,n,r,t)}function _ir(e,t,r,n){let s=e.unwrappedName??e.name;C1("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{C1("timed out",s),i=null;let o=new dir(s);o.fn=e,this._error=o,n(o)},this._opts.timeout);e.length===2?e(t,a.bind(this)):e(t,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function Air(e,t){let r=this._server,n=e[AUe];if(e.length===0||e.length===1){let s;n?s=e(r):s=e(this._error),s&&typeof s.then=="function"?(C1("resolving close/onClose promise"),s.then(()=>process.nextTick(t),i=>process.nextTick(t,i))):process.nextTick(t)}else e.length===2?e(n?r:this._error,t):n?e(r,t):e(this._error,r,t)}function Eir(e,t){return r.bind(t);function r(n,s){let i;e.length===0?(i=e(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):e.length===1?(i=e(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):e(this,s)}}function iee(e,t){let r=n.bind(t);return r.unwrappedName=e.name,r;function n(s,i){let a;e?e.length===0?(a=e(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):e.length===1?(a=e(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):e.length===2?e(s,i):e(s,this,i):process.nextTick(i)}}aee.exports=Bi;aee.exports.express=function(e){return Bi(e,{expose:{use:"load"}})}});var Ma=S((Nqn,TUe)=>{"use strict";var yir={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};TUe.exports=yir});var uee=S((Oqn,bF)=>{"use strict";var{format:oee}=require("node:util");function vir(e){return bUe({...e,name:"DeprecationWarning"})}function bUe({name:e,code:t,message:r,unlimited:n=!1}={}){if(!e)throw new Error("Warning name must not be empty");if(!t)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");t=t.toUpperCase();let s={[e]:function(a,o,c){i.emitted===!0&&i.unlimited!==!0||(i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code))}};n&&(s={[e]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[e];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=t,i.format=function(a,o,c){let u;return a&&o&&c?u=oee(r,a,o,c):a&&o?u=oee(r,a,o):a?u=oee(r,a):u=r,u},i}var cee={createWarning:bUe,createDeprecation:vir};bF.exports=cee;bF.exports.default=cee;bF.exports.processWarning=cee});var Zp=S((Dqn,RUe)=>{"use strict";var{createDeprecation:ko,createWarning:IUe}=uee(),Sir=ko({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),Tir=ko({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),bir=ko({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),Iir=ko({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),Rir=ko({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),Cir=ko({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),xir=ko({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),wir=ko({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),Nir=ko({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),Oir=ko({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),Dir=ko({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),Pir=ko({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),Lir=ko({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),Mir=ko({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),kir=ko({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),Bir=ko({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),Uir=IUe({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),Fir=IUe({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});RUe.exports={FSTDEP005:Sir,FSTDEP006:Tir,FSTDEP007:bir,FSTDEP008:Iir,FSTDEP009:Rir,FSTDEP010:Cir,FSTDEP011:xir,FSTDEP012:wir,FSTDEP013:Nir,FSTDEP014:Oir,FSTDEP015:Dir,FSTDEP016:Pir,FSTDEP017:Lir,FSTDEP018:Mir,FSTDEP019:kir,FSTDEP020:Bir,FSTWRN001:Uir,FSTWRN002:Fir}});var Bo=S((Pqn,IF)=>{"use strict";var st=ZZ(),x1={FST_ERR_NOT_FOUND:st("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:st("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:st("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:st("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:st("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:st("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:st("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:st("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:st("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:st("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:st("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:st("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:st("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:st("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:st("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:st("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:st("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:st("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:st("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:st("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:st("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:st("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:st("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:st("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:st("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:st("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:st("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:st("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:st("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:st("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:st("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:st("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:st("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:st("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:st("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:st("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:st("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:st("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:st("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:st("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:st("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:st("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:st("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:st("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:st("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:st("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:st("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:st("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:st("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:st("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:st("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:st("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:st("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:st("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:st("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:st("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:st("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:st("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:st("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:st("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:st("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:st("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:st("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:st("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:st("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:st("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:st("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:st("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:st("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:st("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:st("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:st("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:st("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:st("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:st("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:st("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:st("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:st("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:st("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function $ir(e,t){return t.cause=e,t}IF.exports=x1;IF.exports.appendStackTrace=$ir;IF.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:x1.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:x1.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:x1.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:x1.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:x1.FST_ERR_PLUGIN_TIMEOUT}});var Y_=S((Lqn,MUe)=>{"use strict";var qir=["onRoute","onRegister","onReady","onListen","preClose","onClose"],NUe=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],Hir=NUe.concat(qir),{FST_ERR_HOOK_INVALID_TYPE:Vir,FST_ERR_HOOK_INVALID_HANDLER:jir,FST_ERR_SEND_UNDEFINED_ERR:RF,FST_ERR_HOOK_TIMEOUT:Kir,FST_ERR_HOOK_NOT_SUPPORTED:Gir,AVVIO_ERRORS_MAP:CUe,appendStackTrace:xUe}=Bo(),{kChildren:lO,kHooks:OUe,kRequestPayloadStream:wUe}=Ma();function dO(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}dO.prototype=Object.create(null);dO.prototype.validate=function(e,t){if(typeof e!="string")throw new Vir;if(Array.isArray(this[e])===!1)throw new Gir(e);if(typeof t!="function")throw new jir(e,Object.prototype.toString.call(t))};dO.prototype.add=function(e,t){this.validate(e,t),this[e].push(t)};function zir(e){let t=new dO;return t.onRequest=e.onRequest.slice(),t.preParsing=e.preParsing.slice(),t.preValidation=e.preValidation.slice(),t.preSerialization=e.preSerialization.slice(),t.preHandler=e.preHandler.slice(),t.onSend=e.onSend.slice(),t.onResponse=e.onResponse.slice(),t.onError=e.onError.slice(),t.onRoute=e.onRoute.slice(),t.onRegister=e.onRegister.slice(),t.onTimeout=e.onTimeout.slice(),t.onRequestAbort=e.onRequestAbort.slice(),t.onReady=[],t.onListen=[],t.preClose=[],t}function DUe(e,t,r,n){let s=r[OUe][e],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=xUe(l,new Kir(e)):l=CUe[l.code]!=null?xUe(l,new CUe[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[lO].length){i===0&&a===0?o():t(function(f,h){o(f),h(f)});return}if(i===s.length&&a{"use strict";var nar=require("node:http"),sar=require("node:https"),iar=require("node:dns"),{FSTDEP011:kUe}=Zp(),{kState:Uo,kOptions:aar,kServerBindings:oar}=Ma(),{onListenHookRunner:CF}=Y_(),{FST_ERR_HTTP2_INVALID_VERSION:car,FST_ERR_REOPENED_CLOSE_SERVER:FUe,FST_ERR_REOPENED_SERVER:$Ue,FST_ERR_LISTEN_OPTIONS_INVALID:uar}=Bo();dee.exports.createServer=lar;dee.exports.compileValidateHTTPVersion=far;function qUe(e){return`Server listening at ${e}`}function lar(e,t){let r=VUe(e,t);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=lee([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")kUe(),s=lee(Array.from(arguments)),a=s.cb;else if(i.length>1){kUe();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,lee([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new uar("Invalid options.signal");if(s.signal.aborted)this.close();else{let u=()=>{this.close()};s.signal.addEventListener("abort",u,{once:!0})}}let c;if(s.path==null?c=s.host??"localhost":c=s.host,Object.prototype.hasOwnProperty.call(s,"host")===!1&&(s.host=c),c==="localhost"?s.cb=(u,l)=>{if(u){a(u,l);return}BUe.call(this,r,t,e,s,()=>{this[Uo].listening=!0,a(null,l),CF(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Uo].listening=!0,a(null,l),CF(this)},a===void 0)return dar.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?BUe.call(this,r,t,e,s,()=>{this[Uo].listening=!0,d(l),CF(this)}):(d(l),CF(this))}));this.ready(HUe.call(this,r,s))}return{server:r,listen:n}}function BUe(e,t,r,n,s){this[Uo].listening=!1,iar.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=e.listening&&r.serverFactory,c=0,u=0;if(!o){let d=e.address();for(let f of a)if(f.address!==d.address){c++;let h=Object.assign({},n,{host:f.address,port:d.port,cb:g=>{u++,g||this[oar].push(p),u===c&&s()}}),p=VUe(r,t),m=()=>{p.close(()=>{}),r.forceCloseConnections==="idle"?p.closeIdleConnections():typeof p.closeAllConnections=="function"&&r.forceCloseConnections&&p.closeAllConnections()};p.on("upgrade",e.emit.bind(e,"upgrade")),e.on("unref",m),e.on("close",m),e.on("error",m),this[Uo].listening=!1,HUe.call(this,p,h)()}}if(c===0){s();return}let l=e.unref;e.unref=function(){l.call(e),e.emit("unref")}})}function HUe(e,t){let r=n=>{if(e.removeListener("error",r),n)this[Uo].listening=!1,t.cb(n,null);else{let s=jUe.call(this,e,t.listenTextResolver||qUe);t.cb(null,s)}};return n=>{if(n!=null)return t.cb(n);if(this[Uo].listening&&this[Uo].closing)return t.cb(new FUe,null);if(this[Uo].listening)return t.cb(new $Ue,null);e.once("error",r),this[Uo].closing||(e.listen(t,r),this[Uo].listening=!0)}}function dar(e,t){return this[Uo].listening&&this[Uo].closing?Promise.reject(new FUe):this[Uo].listening?Promise.reject(new $Ue):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Uo].listening=!1,a(o)},e.once("error",r)}),s=new Promise((i,a)=>{e.listen(t,()=>{e.removeListener("error",r),i(jUe.call(this,e,t.listenTextResolver||qUe))}),this[Uo].listening=!0});return Promise.race([n,s])})}function far(e){let t=!1,r=new Map;return e.serverFactory&&(t=!0),e.http2?(r.set("2.0",!0),e.https&&e.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(s){return t||r.has(s)}}function VUe(e,t){let r=null,n=e.https===!0?{}:e.https;return e.serverFactory?r=e.serverFactory(t,e):e.http2?(typeof n=="object"?r=UUe().createSecureServer(n,t):r=UUe().createServer(t),r.on("session",par(e.http2SessionTimeout))):(n?r=sar.createServer(n,t):r=nar.createServer(e.http,t),r.keepAliveTimeout=e.keepAliveTimeout,r.requestTimeout=e.requestTimeout,e.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=e.maxRequestsPerSocket)),e.serverFactory||r.setTimeout(e.connectionTimeout),r}function lee(e){if(e.length===0)return{port:0,host:"localhost"};let r={cb:typeof e[e.length-1]=="function"?e.pop():void 0},n=e[0],s=e.length,i=e[s-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=s>1?i:void 0):(r.port=s>=1&&Number.isInteger(n)?n:har(n),r.host=s>=2&&e[1]?e[1]:"localhost",r.backlog=s>=3?e[2]:void 0),r}function har(e){let t=Number(e);return t>=0&&!Number.isNaN(t)&&Number.isInteger(t)?t:0}function jUe(e,t){let r=e.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[aar].https?"s":"")+"://")+r;let s=t(r);return this.log.info(s),r}function UUe(){try{return require("node:http2")}catch{throw new car}}function par(e){return function(t){t.setTimeout(e,mar)}}function mar(){this.close()}});var mee=S((kqn,zUe)=>{"use strict";var{kSchemaHeaders:NF,kSchemaParams:fee,kSchemaQuerystring:hee,kSchemaBody:pee,kSchemaResponse:GUe}=Ma(),gar=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:_ar}=Bo(),{FSTWRN001:xF}=Zp();function Aar(e,t){if(!e.schema||!e.schema.response)return;let{method:r,url:n}=e.config||{};e[GUe]=Object.keys(e.schema.response).reduce(function(s,i){let a=e.schema.response[i];if(i=i.toLowerCase(),!gar.exec(i))throw new _ar;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=t({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=t({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Ear(e,t,r){let{schema:n}=e;if(!n)return;let{method:s,url:i}=e.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))e[NF]=t({schema:a,method:s,url:i,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(c=>{o[c]=a[c]}),o.required instanceof Array&&(o.required=o.required.map(c=>c.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(c=>{o.properties[c.toLowerCase()]=a.properties[c]})),e[NF]=t({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&xF("headers",s,i);n.body?e[pee]=t({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&xF("body",s,i),n.querystring?e[hee]=t({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&xF("querystring",s,i),n.params?e[fee]=t({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&xF("params",s,i)}function wF(e,t,r){let n=t[r]===void 0,s=e&&e(n?null:t[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?e.errors:a&&a.error?a.error:(a&&a.value&&(t[r]=a.value),!1)}}function OF(e,t,r){let n=r===void 0;if(n||!r.skipParams){let i=wF(e[fee],t,"params");if(i)return typeof i.then!="function"?Q_(i,"params",e.schemaErrorFormatter):yar(i,e,t)}if(n||!r.skipBody){let i=wF(e[pee],t,"body");if(i)return typeof i.then!="function"?Q_(i,"body",e.schemaErrorFormatter):Sar(i,e,t)}if(n||!r.skipQuery){let i=wF(e[hee],t,"query");if(i)return typeof i.then!="function"?Q_(i,"querystring",e.schemaErrorFormatter):Tar(i,e,t)}let s=wF(e[NF],t,"headers");return s?typeof s.then!="function"?Q_(s,"headers",e.schemaErrorFormatter):bar(s,e,t):!1}function yar(e,t,r){return e.then(n=>n?Q_(n,"params",t.schemaErrorFormatter):OF(t,r,{skipParams:!0}))}function Sar(e,t,r){return e.then(n=>n?Q_(n,"body",t.schemaErrorFormatter):OF(t,r,{skipParams:!0,skipBody:!0}))}function Tar(e,t,r){return e.then(n=>n?Q_(n,"querystring",t.schemaErrorFormatter):OF(t,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function bar(e,t,r){return e.then(n=>n?Q_(n,"headers",t.schemaErrorFormatter):!1)}function Q_(e,t,r){if(e instanceof Error)return e.statusCode=e.statusCode||400,e.code=e.code||"FST_ERR_VALIDATION",e.validationContext=e.validationContext||t,e;let n=r(e,t);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=e,n.validationContext=t,n}zUe.exports={symbols:{bodySchema:pee,querystringSchema:hee,responseSchema:GUe,paramsSchema:fee,headersSchema:NF},compileSchemasForValidation:Ear,compileSchemasForSerialization:Aar,validate:OF}});var gee=S((Bqn,QUe)=>{"use strict";var{kReplyIsError:YUe,kReplyHijacked:Iar}=Ma();function Rar(e,t){e.then(function(r){if(t[Iar]!==!0&&(r!==void 0||t.sent===!1&&t.raw.headersSent===!1&&t.request.raw.aborted===!1))try{t.send(r)}catch(n){t[YUe]=!0,t.send(n)}},function(r){if(t.sent===!0){t.log.error({err:r},"Promise errored, but reply.sent = true was set");return}t[YUe]=!0;try{t.send(r)}catch(n){t.send(n)}})}QUe.exports=Rar});var yee=S((Uqn,Eee)=>{"use strict";var{validate:Car}=mee(),{preValidationHookRunner:xar,preHandlerHookRunner:war}=Y_(),Nar=gee(),{kReplyIsError:DF,kRouteContext:X_}=Ma();function Oar(e,t,r){if(r.sent===!0)return;if(e!=null){r[DF]=!0,r.send(e);return}let n=t.raw.method,s=t.headers,i=t[X_];if(n==="GET"||n==="HEAD"){W_(t,r);return}let a=s["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?s["transfer-encoding"]===void 0&&(s["content-length"]==="0"||s["content-length"]===void 0)?W_(t,r):i.contentTypeParser.run("",W_,t,r):i.contentTypeParser.run(a,W_,t,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,W_,t,r):W_(t,r);return}W_(t,r)}function W_(e,t){try{e[X_].preValidation!==null?xar(e[X_].preValidation,e,t,_ee):_ee(null,e,t)}catch(r){_ee(r,e,t)}}function _ee(e,t,r){if(r.sent===!0)return;if(e!=null){r[DF]=!0,r.send(e);return}let n=Car(r[X_],t);if(n&&typeof n.then=="function"||!1){let i=WUe.bind(null,t,r);n.then(i,i)}else WUe(t,r,n)}function WUe(e,t,r){if(r){if(t[X_].attachValidation===!1){t.send(r);return}t.request.validationError=r}e[X_].preHandler!==null?war(e[X_].preHandler,e,t,Aee):Aee(null,e,t)}function Aee(e,t,r){if(r.sent)return;if(e!=null){r[DF]=!0,r.send(e);return}let n;try{n=t[X_].handler(t,r)}catch(s){r[DF]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?Nar(n,r):r.send(n))}Eee.exports=Oar;Eee.exports[Symbol.for("internals")]={handler:W_,preHandlerCallback:Aee}});var JUe=S((Fqn,XUe)=>{"use strict";function N1(){}var Dar={fatal:N1,error:N1,warn:N1,info:N1,debug:N1,trace:N1};Object.defineProperty(XUe,"exports",{get(){return Object.create(Dar)}})});var See=S(($qn,tFe)=>{"use strict";var hO=e=>e&&typeof e.message=="string",vee=e=>{if(!e)return;let t=e.cause;if(typeof t=="function"){let r=e.cause();return hO(r)?r:void 0}else return hO(t)?t:void 0},ZUe=(e,t)=>{if(!hO(e))return"";let r=e.stack||"";if(t.has(e))return r+` +causes have become circular...`;let n=vee(e);return n?(t.add(e),r+` +caused by: `+ZUe(n,t)):r},Par=e=>ZUe(e,new Set),eFe=(e,t,r)=>{if(!hO(e))return"";let n=r?"":e.message||"";if(t.has(e))return n+": ...";let s=vee(e);if(s){t.add(e);let i=typeof e.cause=="function";return n+(i?"":": ")+eFe(s,t,i)}else return n},Lar=e=>eFe(e,new Set);tFe.exports={isErrorLike:hO,getErrorCause:vee,stackWithCauses:Par,messageWithCauses:Lar}});var Tee=S((qqn,nFe)=>{"use strict";var Mar=Symbol("circular-ref-tag"),PF=Symbol("pino-raw-err-ref"),rFe=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[PF]},set:function(e){this[PF]=e}}});Object.defineProperty(rFe,PF,{writable:!0,value:{}});nFe.exports={pinoErrProto:rFe,pinoErrorSymbols:{seen:Mar,rawSymbol:PF}}});var aFe=S((Hqn,iFe)=>{"use strict";iFe.exports=Iee;var{messageWithCauses:kar,stackWithCauses:Bar,isErrorLike:sFe}=See(),{pinoErrProto:Uar,pinoErrorSymbols:Far}=Tee(),{seen:bee}=Far,{toString:$ar}=Object.prototype;function Iee(e){if(!sFe(e))return e;e[bee]=void 0;let t=Object.create(Uar);t.type=$ar.call(e.constructor)==="[object Function]"?e.constructor.name:e.name,t.message=kar(e),t.stack=Bar(e),Array.isArray(e.errors)&&(t.aggregateErrors=e.errors.map(r=>Iee(r)));for(let r in e)if(t[r]===void 0){let n=e[r];sFe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,bee)&&(t[r]=Iee(n)):t[r]=n}return delete e[bee],t.raw=e,t}});var cFe=S((Vqn,oFe)=>{"use strict";oFe.exports=MF;var{isErrorLike:Ree}=See(),{pinoErrProto:qar,pinoErrorSymbols:Har}=Tee(),{seen:LF}=Har,{toString:Var}=Object.prototype;function MF(e){if(!Ree(e))return e;e[LF]=void 0;let t=Object.create(qar);t.type=Var.call(e.constructor)==="[object Function]"?e.constructor.name:e.name,t.message=e.message,t.stack=e.stack,Array.isArray(e.errors)&&(t.aggregateErrors=e.errors.map(r=>MF(r))),Ree(e.cause)&&!Object.prototype.hasOwnProperty.call(e.cause,LF)&&(t.cause=MF(e.cause));for(let r in e)if(t[r]===void 0){let n=e[r];Ree(n)?Object.prototype.hasOwnProperty.call(n,LF)||(t[r]=MF(n)):t[r]=n}return delete e[LF],t.raw=e,t}});var fFe=S((jqn,dFe)=>{"use strict";dFe.exports={mapHttpRequest:jar,reqSerializer:lFe};var Cee=Symbol("pino-raw-req-ref"),uFe=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[Cee]},set:function(e){this[Cee]=e}}});Object.defineProperty(uFe,Cee,{writable:!0,value:{}});function lFe(e){let t=e.info||e.socket,r=Object.create(uFe);if(r.id=typeof e.id=="function"?e.id():e.id||(e.info?e.info.id:void 0),r.method=e.method,e.originalUrl)r.url=e.originalUrl;else{let n=e.path;r.url=typeof n=="string"?n:e.url?e.url.path||e.url:void 0}return e.query&&(r.query=e.query),e.params&&(r.params=e.params),r.headers=e.headers,r.remoteAddress=t&&t.remoteAddress,r.remotePort=t&&t.remotePort,r.raw=e.raw||e,r}function jar(e){return{req:lFe(e)}}});var gFe=S((Kqn,mFe)=>{"use strict";mFe.exports={mapHttpResponse:Kar,resSerializer:pFe};var xee=Symbol("pino-raw-res-ref"),hFe=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[xee]},set:function(e){this[xee]=e}}});Object.defineProperty(hFe,xee,{writable:!0,value:{}});function pFe(e){let t=Object.create(hFe);return t.statusCode=e.headersSent?e.statusCode:null,t.headers=e.getHeaders?e.getHeaders():e._headers,t.raw=e,t}function Kar(e){return{res:pFe(e)}}});var Nee=S((Gqn,_Fe)=>{"use strict";var wee=aFe(),Gar=cFe(),kF=fFe(),BF=gFe();_Fe.exports={err:wee,errWithCause:Gar,mapHttpRequest:kF.mapHttpRequest,mapHttpResponse:BF.mapHttpResponse,req:kF.reqSerializer,res:BF.resSerializer,wrapErrorSerializer:function(t){return t===wee?t:function(n){return t(wee(n))}},wrapRequestSerializer:function(t){return t===kF.reqSerializer?t:function(n){return t(kF.reqSerializer(n))}},wrapResponseSerializer:function(t){return t===BF.resSerializer?t:function(n){return t(BF.resSerializer(n))}}}});var Oee=S((zqn,AFe)=>{"use strict";function zar(e,t){return t}AFe.exports=function(){let t=Error.prepareStackTrace;Error.prepareStackTrace=zar;let r=new Error().stack;if(Error.prepareStackTrace=t,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var yFe=S((Yqn,EFe)=>{"use strict";EFe.exports=Yar;function Yar(e={}){let{ERR_PATHS_MUST_BE_STRINGS:t=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=e;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(t());try{if(/〇/.test(i))throw Error();let a=(i[0]==="["?"":".")+i.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(` 'use strict' const o = new Proxy({}, { get: () => o, set: () => { throw Error() } }); const \u3007 = null; o${a} - if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(s))}})}}});var W4=b((hIn,SDe)=>{"use strict";SDe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var IDe=b((mIn,wDe)=>{"use strict";var r9t=W4();wDe.exports=n9t;function n9t({paths:e}){let t=[];var r=0;let n=e.reduce(function(i,s,a){var o=s.match(r9t).map(l=>l.replace(/'|"|`/g,""));let u=s[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let c=o.indexOf("*");if(c>-1){let l=o.slice(0,c),d=l.join("."),f=o.slice(c+1,o.length),p=f.length>0;r++,t.push({before:l,beforeStr:d,after:f,nested:p})}else i[s]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(s),leadingBracket:u};return i},{});return{wildcards:t,wcLen:r,secret:n}}});var CDe=b((gIn,xDe)=>{"use strict";var i9t=W4();xDe.exports=s9t;function s9t({secret:e,serialize:t,wcLen:r,strict:n,isCensorFct:i,censorFctTakesPath:s},a){let o=Function("o",` + if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var UF=S((Qqn,vFe)=>{"use strict";vFe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var TFe=S((Wqn,SFe)=>{"use strict";var Qar=UF();SFe.exports=War;function War({paths:e}){let t=[];var r=0;let n=e.reduce(function(s,i,a){var o=i.match(Qar).map(l=>l.replace(/'|"|`/g,""));let c=i[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let u=o.indexOf("*");if(u>-1){let l=o.slice(0,u),d=l.join("."),f=o.slice(u+1,o.length),h=f.length>0;r++,t.push({before:l,beforeStr:d,after:f,nested:h})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:t,wcLen:r,secret:n}}});var IFe=S((Xqn,bFe)=>{"use strict";var Xar=UF();bFe.exports=Jar;function Jar({secret:e,serialize:t,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",` if (typeof o !== 'object' || o == null) { - ${c9t(n,t)} + ${ror(n,t)} } const { censor, secret } = this const originalSecret = {} @@ -50,33 +387,33 @@ caused by: `+tDe(n,t)):r},Ujt=e=>tDe(e,new Set),rDe=(e,t,r)=>{if(!cT(e))return"" originalSecret[secretKeys[i]] = secret[secretKeys[i]] } - ${a9t(e,i,s)} + ${Zar(e,s,i)} this.compileRestore() - ${o9t(r>0,i,s)} + ${eor(r>0,s,i)} this.secret = originalSecret - ${u9t(t)} - `).bind(a);return o.state=a,t===!1&&(o.restore=u=>a.restore(u)),o}function a9t(e,t,r){return Object.keys(e).map(n=>{let{escPath:i,leadingBracket:s,path:a}=e[n],o=s?1:0,u=s?"":".",c=[];for(var l;(l=i9t.exec(n))!==null;){let[,h]=l,{index:m,input:y}=l;m>o&&c.push(y.substring(0,m-(h?0:1)))}var d=c.map(h=>`o${u}${h}`).join(" && ");d.length===0?d+=`o${u}${n} != null`:d+=` && o${u}${n} != null`;let f=` + ${tor(t)} + `).bind(a);return o.state=a,t===!1&&(o.restore=c=>a.restore(c)),o}function Zar(e,t,r){return Object.keys(e).map(n=>{let{escPath:s,leadingBracket:i,path:a}=e[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=Xar.exec(n))!==null;){let[,p]=l,{index:m,input:g}=l;m>o&&u.push(g.substring(0,m-(p?0:1)))}var d=u.map(p=>`o${c}${p}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=` switch (true) { - ${c.reverse().map(h=>` - case o${u}${h} === censor: - secret[${i}].circle = ${JSON.stringify(h)} + ${u.reverse().map(p=>` + case o${c}${p} === censor: + secret[${s}].circle = ${JSON.stringify(p)} break `).join(` `)} } - `,p=r?`val, ${JSON.stringify(a)}`:"val";return` + `,h=r?`val, ${JSON.stringify(a)}`:"val";return` if (${d}) { - const val = o${u}${n} + const val = o${c}${n} if (val === censor) { - secret[${i}].precensored = true + secret[${s}].precensored = true } else { - secret[${i}].val = val - o${u}${n} = ${t?`censor(${p})`:"censor"} + secret[${s}].val = val + o${c}${n} = ${t?`censor(${h})`:"censor"} ${f} } } `}).join(` -`)}function o9t(e,t,r){return e===!0?` +`)}function eor(e,t,r){return e===!0?` { const { wildcards, wcLen, groupRedact, nestedRedact } = this for (var i = 0; i < wcLen; i++) { @@ -87,16 +424,16 @@ caused by: `+tDe(n,t)):r},Ujt=e=>tDe(e,new Set),rDe=(e,t,r)=>{if(!cT(e))return"" } else secret[beforeStr] = groupRedact(o, before, censor, ${t}, ${r}) } } - `:""}function u9t(e){return e===!1?"return o":` + `:""}function tor(e){return e===!1?"return o":` var s = this.serialize(o) this.restore(o) return s - `}function c9t(e,t){return e===!0?"throw Error('fast-redact: primitives cannot be redacted')":t===!1?"return o":"return this.serialize(o)"}});var AG=b((yIn,RDe)=>{"use strict";RDe.exports={groupRedact:d9t,groupRestore:l9t,nestedRedact:p9t,nestedRestore:f9t};function l9t({keys:e,values:t,target:r}){if(r==null||typeof r=="string")return;let n=e.length;for(var i=0;i0;a--)s=s[n[a]];s[n[0]]=i}}function p9t(e,t,r,n,i,s,a){let o=TDe(t,r);if(o==null)return;let u=Object.keys(o),c=u.length;for(var l=0;l{"use strict";var{groupRestore:g9t,nestedRestore:y9t}=AG();DDe.exports=_9t;function _9t(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:t,wcLen:r}=this,n=Object.keys(t),i=A9t(t,n),s=r>0,a=s?{secret:t,groupRestore:g9t,nestedRestore:y9t}:{secret:t};this.restore=Function("o",v9t(i,n,s)).bind(a),this.restore.state=a}}function A9t(e,t){return t.map(r=>{let{circle:n,escPath:i,leadingBracket:s}=e[r],o=n?`o.${n} = secret[${i}].val`:`o${s?"":"."}${r} = secret[${i}].val`,u=`secret[${i}].val = undefined`;return` - if (secret[${i}].val !== undefined) { + `}function ror(e,t){return e===!0?"throw Error('fast-redact: primitives cannot be redacted')":t===!1?"return o":"return this.serialize(o)"}});var Pee=S((Jqn,xFe)=>{"use strict";xFe.exports={groupRedact:sor,groupRestore:nor,nestedRedact:aor,nestedRestore:ior};function nor({keys:e,values:t,target:r}){if(r==null||typeof r=="string")return;let n=e.length;for(var s=0;s0;a--)i=i[n[a]];i[n[0]]=s}}function aor(e,t,r,n,s,i,a){let o=RFe(t,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l{"use strict";var{groupRestore:uor,nestedRestore:lor}=Pee();wFe.exports=dor;function dor(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:t,wcLen:r}=this,n=Object.keys(t),s=hor(t,n),i=r>0,a=i?{secret:t,groupRestore:uor,nestedRestore:lor}:{secret:t};this.restore=Function("o",por(s,n,i)).bind(a),this.restore.state=a}}function hor(e,t){return t.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=e[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return` + if (secret[${s}].val !== undefined) { try { ${o} } catch (e) {} - ${u} + ${c} } - `}).join("")}function v9t(e,t,r){return` + `}).join("")}function por(e,t,r){return` const secret = this.secret ${r===!0?` const keys = Object.keys(secret) @@ -113,47 +450,47 @@ caused by: `+tDe(n,t)):r},Ujt=e=>tDe(e,new Set),rDe=(e,t,r)=>{if(!cT(e))return"" `:""} ${e} return o - `}});var PDe=b((AIn,ODe)=>{"use strict";ODe.exports=b9t;function b9t(e){let{secret:t,censor:r,compileRestore:n,serialize:i,groupRedact:s,nestedRedact:a,wildcards:o,wcLen:u}=e,c=[{secret:t,censor:r,compileRestore:n}];return i!==!1&&c.push({serialize:i}),u>0&&c.push({groupRedact:s,nestedRedact:a,wildcards:o,wcLen:u}),Object.assign(...c)}});var BDe=b((vIn,LDe)=>{"use strict";var MDe=EDe(),E9t=IDe(),S9t=CDe(),w9t=kDe(),{groupRedact:I9t,nestedRedact:x9t}=AG(),C9t=PDe(),T9t=W4(),N9t=MDe(),vG=e=>e;vG.restore=vG;var R9t="[REDACTED]";bG.rx=T9t;bG.validator=MDe;LDe.exports=bG;function bG(e={}){let t=Array.from(new Set(e.paths||[])),r="serialize"in e&&(e.serialize===!1||typeof e.serialize=="function")?e.serialize:JSON.stringify,n=e.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let i=n===!0?void 0:"censor"in e?e.censor:R9t,s=typeof i=="function",a=s&&i.length>1;if(t.length===0)return r||vG;N9t({paths:t,serialize:r,censor:i});let{wildcards:o,wcLen:u,secret:c}=E9t({paths:t,censor:i}),l=w9t(),d="strict"in e?e.strict:!0;return S9t({secret:c,wcLen:u,serialize:r,strict:d,isCensorFct:s,censorFctTakesPath:a},C9t({secret:c,censor:i,compileRestore:l,serialize:r,groupRedact:I9t,nestedRedact:x9t,wildcards:o,wcLen:u}))}});var c1=b((bIn,$De)=>{"use strict";var D9t=Symbol("pino.setLevel"),k9t=Symbol("pino.getLevel"),O9t=Symbol("pino.levelVal"),P9t=Symbol("pino.levelComp"),M9t=Symbol("pino.useLevelLabels"),L9t=Symbol("pino.useOnlyCustomLevels"),B9t=Symbol("pino.mixin"),$9t=Symbol("pino.lsCache"),F9t=Symbol("pino.chindings"),U9t=Symbol("pino.asJson"),q9t=Symbol("pino.write"),j9t=Symbol("pino.redactFmt"),H9t=Symbol("pino.time"),K9t=Symbol("pino.timeSliceIndex"),V9t=Symbol("pino.stream"),z9t=Symbol("pino.stringify"),Q9t=Symbol("pino.stringifySafe"),G9t=Symbol("pino.stringifiers"),Y9t=Symbol("pino.end"),W9t=Symbol("pino.formatOpts"),X9t=Symbol("pino.messageKey"),J9t=Symbol("pino.errorKey"),Z9t=Symbol("pino.nestedKey"),eHt=Symbol("pino.nestedKeyStr"),tHt=Symbol("pino.mixinMergeStrategy"),rHt=Symbol("pino.msgPrefix"),nHt=Symbol("pino.wildcardFirst"),iHt=Symbol.for("pino.serializers"),sHt=Symbol.for("pino.formatters"),aHt=Symbol.for("pino.hooks"),oHt=Symbol.for("pino.metadata");$De.exports={setLevelSym:D9t,getLevelSym:k9t,levelValSym:O9t,levelCompSym:P9t,useLevelLabelsSym:M9t,mixinSym:B9t,lsCacheSym:$9t,chindingsSym:F9t,asJsonSym:U9t,writeSym:q9t,serializersSym:iHt,redactFmtSym:j9t,timeSym:H9t,timeSliceIndexSym:K9t,streamSym:V9t,stringifySym:z9t,stringifySafeSym:Q9t,stringifiersSym:G9t,endSym:Y9t,formatOptsSym:W9t,messageKeySym:X9t,errorKeySym:J9t,nestedKeySym:Z9t,wildcardFirstSym:nHt,needsMetadataGsym:oHt,useOnlyCustomLevelsSym:L9t,formattersSym:sHt,hooksSym:aHt,nestedKeyStrSym:eHt,mixinMergeStrategySym:tHt,msgPrefixSym:rHt}});var wG=b((EIn,jDe)=>{"use strict";var SG=BDe(),{redactFmtSym:uHt,wildcardFirstSym:X4}=c1(),{rx:EG,validator:cHt}=SG,FDe=cHt({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:e=>`pino \u2013 redact paths array contains an invalid path (${e})`}),UDe="[Redacted]",qDe=!1;function lHt(e,t){let{paths:r,censor:n}=dHt(e),i=r.reduce((o,u)=>{EG.lastIndex=0;let c=EG.exec(u),l=EG.exec(u),d=c[1]!==void 0?c[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):c[0];if(d==="*"&&(d=X4),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${u.substr(f,u.length-1)}`;return o[d]=o[d]||[],d!==X4&&o[d].length===0&&o[d].push(...o[X4]||[]),d===X4&&Object.keys(o).forEach(function(h){o[h]&&o[h].push(p)}),o[d].push(p),o},{}),s={[uHt]:SG({paths:r,censor:n,serialize:t,strict:qDe})},a=(...o)=>t(typeof n=="function"?n(...o):n);return[...Object.keys(i),...Object.getOwnPropertySymbols(i)].reduce((o,u)=>{if(i[u]===null)o[u]=c=>a(c,[u]);else{let c=typeof n=="function"?(l,d)=>n(l,[u,...d]):n;o[u]=SG({paths:i[u],censor:c,serialize:t,strict:qDe})}return o},s)}function dHt(e){if(Array.isArray(e))return e={paths:e,censor:UDe},FDe(e),e;let{paths:t,censor:r=UDe,remove:n}=e;if(Array.isArray(t)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),FDe({paths:t,censor:r}),{paths:t,censor:r}}jDe.exports=lHt});var KDe=b((SIn,HDe)=>{"use strict";var fHt=()=>"",pHt=()=>`,"time":${Date.now()}`,hHt=()=>`,"time":${Math.round(Date.now()/1e3)}`,mHt=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;HDe.exports={nullTime:fHt,epochTime:pHt,unixTime:hHt,isoTime:mHt}});var zDe=b((wIn,VDe)=>{"use strict";function gHt(e){try{return JSON.stringify(e)}catch{return'"[Circular]"'}}VDe.exports=yHt;function yHt(e,t,r){var n=r&&r.stringify||gHt,i=1;if(typeof e=="object"&&e!==null){var s=t.length+i;if(s===1)return e;var a=new Array(s);a[0]=n(e);for(var o=1;o-1?d:0,e.charCodeAt(p+1)){case 100:case 102:if(l>=u||t[l]==null)break;d=u||t[l]==null)break;d=u||t[l]===void 0)break;d",d=p+2,p++;break}c+=n(t[l]),d=p+2,p++;break;case 115:if(l>=u)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));IG.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};IG.exports=e}});var eke=b((xIn,ZDe)=>{"use strict";var Yi=require("fs"),_Ht=require("events"),AHt=require("util").inherits,QDe=require("path"),TG=xG(),J4=100,Z4=Buffer.allocUnsafe(0),vHt=16*1024,GDe="buffer",YDe="utf8";function WDe(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(s,a){if(s){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",s)}):t.emit("error",s);return}let o=t._reopening;t.fd=a,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():o&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",i=t.mode;if(t.sync)try{t.mkdir&&Yi.mkdirSync(QDe.dirname(e),{recursive:!0});let s=Yi.openSync(e,n,i);r(null,s)}catch(s){throw r(s),s}else t.mkdir?Yi.mkdir(QDe.dirname(e),{recursive:!0},s=>{if(s)return r(s);Yi.open(e,n,i,r)}):Yi.open(e,n,i,r)}function dd(e){if(!(this instanceof dd))return new dd(e);let{fd:t,dest:r,minLength:n,maxLength:i,maxWrite:s,sync:a,append:o=!0,mkdir:u,retryEAGAIN:c,fsync:l,contentMode:d,mode:f}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=i||0,this.maxWrite=s||vHt,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=c||(()=>!0),this.mkdir=u||!1;let p,h;if(d===GDe)this._writingBuf=Z4,this.write=SHt,this.flush=IHt,this.flushSync=CHt,this._actualWrite=NHt,p=()=>Yi.writeSync(this.fd,this._writingBuf),h=()=>Yi.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===YDe)this._writingBuf="",this.write=EHt,this.flush=wHt,this.flushSync=xHt,this._actualWrite=THt,p=()=>Yi.writeSync(this.fd,this._writingBuf,"utf8"),h=()=>Yi.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${YDe}" and "${GDe}", but passed ${d}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")WDe(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(m,y)=>{if(m){if((m.code==="EAGAIN"||m.code==="EBUSY")&&this.retryEAGAIN(m,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{TG(J4),this.release(void 0,0)}catch(A){this.release(A)}else setTimeout(h,J4);else this._writing=!1,this.emit("error",m);return}this.emit("write",y);let g=CG(this._writingBuf,this._len,y);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){h();return}try{do{let A=p(),_=CG(this._writingBuf,this._len,A);this._len=_.len,this._writingBuf=_.writingBuf}while(this._writingBuf.length)}catch(A){this.release(A);return}}this._fsync&&Yi.fsyncSync(this.fd);let v=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):v>this.minLength?this._actualWrite():this._ending?v>0?this._actualWrite():(this._writing=!1,eB(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(bHt,this)):this.emit("drain"))},this.on("newListener",function(m){m==="drain"&&(this._asyncDrainScheduled=!1)})}function CG(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function bHt(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}AHt(dd,_Ht);function XDe(e,t){return e.length===0?Z4:e.length===1?e[0]:Buffer.concat(e,t)}function EHt(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):Yi.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function wHt(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&JDe.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function IHt(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&JDe.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}dd.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&Yi.close(t,r=>{if(r)return this.emit("error",r)})}),WDe(this.file,this)};dd.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():eB(this)))};function xHt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=Yi.writeSync(this.fd,e,"utf8"),r=CG(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;TG(J4)}}try{Yi.fsyncSync(this.fd)}catch{}}function CHt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=Z4);let e=Z4;for(;this._bufs.length||e.length;){e.length<=0&&(e=XDe(this._bufs[0],this._lens[0]));try{let t=Yi.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;TG(J4)}}}dd.prototype.destroy=function(){this.destroyed||eB(this)};function THt(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=Yi.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else Yi.write(this.fd,this._writingBuf,"utf8",e)}function NHt(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:XDe(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=Yi.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else Yi.write(this.fd,this._writingBuf,e)}function eB(e){if(e.fd===-1){e.once("ready",eB.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],Yi.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?Yi.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}dd.SonicBoom=dd;dd.default=dd;ZDe.exports=dd});var NG=b((CIn,ske)=>{"use strict";var fd={exit:[],beforeExit:[]},tke={exit:kHt,beforeExit:OHt},l1;function RHt(){l1===void 0&&(l1=new FinalizationRegistry(PHt))}function DHt(e){fd[e].length>0||process.on(e,tke[e])}function rke(e){fd[e].length>0||(process.removeListener(e,tke[e]),fd.exit.length===0&&fd.beforeExit.length===0&&(l1=void 0))}function kHt(){nke("exit")}function OHt(){nke("beforeExit")}function nke(e){for(let t of fd[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}fd[e]=[]}function PHt(e){for(let t of["exit","beforeExit"]){let r=fd[t].indexOf(e);fd[t].splice(r,r+1),rke(t)}}function ike(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");DHt(e);let n=new WeakRef(t);n.fn=r,RHt(),l1.register(t,n),fd[e].push(n)}function MHt(e,t){ike("exit",e,t)}function LHt(e,t){ike("beforeExit",e,t)}function BHt(e){if(l1!==void 0){l1.unregister(e);for(let t of["exit","beforeExit"])fd[t]=fd[t].filter(r=>{let n=r.deref();return n&&n!==e}),rke(t)}}ske.exports={register:MHt,registerBeforeExit:LHt,unregister:BHt}});var ake=b((TIn,$Ht)=>{$Ht.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina ",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var uke=b((NIn,oke)=>{"use strict";function FHt(e,t,r,n,i){let s=Date.now()+n,a=Atomics.load(e,t);if(a===r){i(null,"ok");return}let o=a,u=c=>{Date.now()>s?i(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(e,t),a===o?u(c>=1e3?1e3:c*2):a===r?i(null,"ok"):i(null,"not-equal")},c)};u(1)}function UHt(e,t,r,n,i){let s=Date.now()+n,a=Atomics.load(e,t);if(a!==r){i(null,"ok");return}let o=u=>{Date.now()>s?i(null,"timed-out"):setTimeout(()=>{a=Atomics.load(e,t),a!==r?i(null,"ok"):o(u>=1e3?1e3:u*2)},u)};o(1)}oke.exports={wait:FHt,waitDiff:UHt}});var lke=b((RIn,cke)=>{"use strict";cke.exports={WRITE_INDEX:4,READ_INDEX:8}});var mke=b((DIn,hke)=>{"use strict";var{version:qHt}=ake(),{EventEmitter:jHt}=require("events"),{Worker:HHt}=require("worker_threads"),{join:KHt}=require("path"),{pathToFileURL:VHt}=require("url"),{wait:zHt}=uke(),{WRITE_INDEX:bu,READ_INDEX:Df}=lke(),QHt=require("buffer"),GHt=require("assert"),De=Symbol("kImpl"),YHt=QHt.constants.MAX_STRING_LENGTH,dT=class{constructor(t){this._value=t}deref(){return this._value}},rB=class{register(){}unregister(){}},WHt=process.env.NODE_V8_COVERAGE?rB:global.FinalizationRegistry||rB,XHt=process.env.NODE_V8_COVERAGE?dT:global.WeakRef||dT,dke=new WHt(e=>{e.exited||e.terminate()});function JHt(e,t){let{filename:r,workerData:n}=t,s=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||KHt(__dirname,"lib","worker.js"),a=new HHt(s,{...t.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:VHt(r).href,dataBuf:e[De].dataBuf,stateBuf:e[De].stateBuf,workerData:{$context:{threadStreamVersion:qHt},...n}}});return a.stream=new dT(e),a.on("message",ZHt),a.on("exit",pke),dke.register(e,a),a}function fke(e){GHt(!e[De].sync),e[De].needDrain&&(e[De].needDrain=!1,e.emit("drain"))}function tB(e){let t=Atomics.load(e[De].state,bu),r=e[De].data.length-t;if(r>0){if(e[De].buf.length===0){e[De].flushing=!1,e[De].ending?PG(e):e[De].needDrain&&process.nextTick(fke,e);return}let n=e[De].buf.slice(0,r),i=Buffer.byteLength(n);i<=r?(e[De].buf=e[De].buf.slice(r),nB(e,n,tB.bind(null,e))):e.flush(()=>{if(!e.destroyed){for(Atomics.store(e[De].state,Df,0),Atomics.store(e[De].state,bu,0);i>e[De].data.length;)r=r/2,n=e[De].buf.slice(0,r),i=Buffer.byteLength(n);e[De].buf=e[De].buf.slice(r),nB(e,n,tB.bind(null,e))}})}else if(r===0){if(t===0&&e[De].buf.length===0)return;e.flush(()=>{Atomics.store(e[De].state,Df,0),Atomics.store(e[De].state,bu,0),tB(e)})}else kf(e,new Error("overwritten"))}function ZHt(e){let t=this.stream.deref();if(t===void 0){this.exited=!0,this.terminate();return}switch(e.code){case"READY":this.stream=new XHt(t),t.flush(()=>{t[De].ready=!0,t.emit("ready")});break;case"ERROR":kf(t,e.err);break;case"EVENT":Array.isArray(e.args)?t.emit(e.name,...e.args):t.emit(e.name,e.args);break;case"WARNING":process.emitWarning(e.err);break;default:kf(t,new Error("this should not happen: "+e.code))}}function pke(e){let t=this.stream.deref();t!==void 0&&(dke.unregister(t),t.worker.exited=!0,t.worker.off("exit",pke),kf(t,e!==0?new Error("the worker thread exited"):null))}var DG=class extends jHt{constructor(t={}){if(super(),t.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[De]={},this[De].stateBuf=new SharedArrayBuffer(128),this[De].state=new Int32Array(this[De].stateBuf),this[De].dataBuf=new SharedArrayBuffer(t.bufferSize||4*1024*1024),this[De].data=Buffer.from(this[De].dataBuf),this[De].sync=t.sync||!1,this[De].ending=!1,this[De].ended=!1,this[De].needDrain=!1,this[De].destroyed=!1,this[De].flushing=!1,this[De].ready=!1,this[De].finished=!1,this[De].errored=null,this[De].closed=!1,this[De].buf="",this.worker=JHt(this,t),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(t){if(this[De].destroyed)return kG(this,new Error("the worker has exited")),!1;if(this[De].ending)return kG(this,new Error("the worker is ending")),!1;if(this[De].flushing&&this[De].buf.length+t.length>=YHt)try{RG(this),this[De].flushing=!0}catch(r){return kf(this,r),!1}if(this[De].buf+=t,this[De].sync)try{return RG(this),!0}catch(r){return kf(this,r),!1}return this[De].flushing||(this[De].flushing=!0,setImmediate(tB,this)),this[De].needDrain=this[De].data.length-this[De].buf.length-Atomics.load(this[De].state,bu)<=0,!this[De].needDrain}end(){this[De].destroyed||(this[De].ending=!0,PG(this))}flush(t){if(this[De].destroyed){typeof t=="function"&&process.nextTick(t,new Error("the worker has exited"));return}let r=Atomics.load(this[De].state,bu);zHt(this[De].state,Df,r,1/0,(n,i)=>{if(n){kf(this,n),process.nextTick(t,n);return}if(i==="not-equal"){this.flush(t);return}process.nextTick(t)})}flushSync(){this[De].destroyed||(RG(this),OG(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[De].ready}get destroyed(){return this[De].destroyed}get closed(){return this[De].closed}get writable(){return!this[De].destroyed&&!this[De].ending}get writableEnded(){return this[De].ending}get writableFinished(){return this[De].finished}get writableNeedDrain(){return this[De].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[De].errored}};function kG(e,t){setImmediate(()=>{e.emit("error",t)})}function kf(e,t){e[De].destroyed||(e[De].destroyed=!0,t&&(e[De].errored=t,kG(e,t)),e.worker.exited?setImmediate(()=>{e[De].closed=!0,e.emit("close")}):e.worker.terminate().catch(()=>{}).then(()=>{e[De].closed=!0,e.emit("close")}))}function nB(e,t,r){let n=Atomics.load(e[De].state,bu),i=Buffer.byteLength(t);return e[De].data.write(t,n),Atomics.store(e[De].state,bu,n+i),Atomics.notify(e[De].state,bu),r(),!0}function PG(e){if(!(e[De].ended||!e[De].ending||e[De].flushing)){e[De].ended=!0;try{e.flushSync();let t=Atomics.load(e[De].state,Df);Atomics.store(e[De].state,bu,-1),Atomics.notify(e[De].state,bu);let r=0;for(;t!==-1;){if(Atomics.wait(e[De].state,Df,t,1e3),t=Atomics.load(e[De].state,Df),t===-2){kf(e,new Error("end() failed"));return}if(++r===10){kf(e,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{e[De].finished=!0,e.emit("finish")})}catch(t){kf(e,t)}}}function RG(e){let t=()=>{e[De].ending?PG(e):e[De].needDrain&&process.nextTick(fke,e)};for(e[De].flushing=!1;e[De].buf.length!==0;){let r=Atomics.load(e[De].state,bu),n=e[De].data.length-r;if(n===0){OG(e),Atomics.store(e[De].state,Df,0),Atomics.store(e[De].state,bu,0);continue}else if(n<0)throw new Error("overwritten");let i=e[De].buf.slice(0,n),s=Buffer.byteLength(i);if(s<=n)e[De].buf=e[De].buf.slice(n),nB(e,i,t);else{for(OG(e),Atomics.store(e[De].state,Df,0),Atomics.store(e[De].state,bu,0);s>e[De].buf.length;)n=n/2,i=e[De].buf.slice(0,n),s=Buffer.byteLength(i);e[De].buf=e[De].buf.slice(n),nB(e,i,t)}}}function OG(e){if(e[De].flushing)throw new Error("unable to flush while flushing");let t=Atomics.load(e[De].state,bu),r=0;for(;;){let n=Atomics.load(e[De].state,Df);if(n===-2)throw Error("_flushSync failed");if(n!==t)Atomics.wait(e[De].state,Df,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}hke.exports=DG});var BG=b((kIn,gke)=>{"use strict";var{createRequire:eKt}=require("module"),tKt=yG(),{join:MG,isAbsolute:rKt,sep:nKt}=require("path"),iKt=xG(),LG=NG(),sKt=mke();function aKt(e){LG.register(e,uKt),LG.registerBeforeExit(e,cKt),e.on("close",function(){LG.unregister(e)})}function oKt(e,t,r){let n=new sKt({filename:e,workerData:t,workerOpts:r});n.on("ready",i),n.on("close",function(){process.removeListener("exit",s)}),process.on("exit",s);function i(){process.removeListener("exit",s),n.unref(),r.autoEnd!==!1&&aKt(n)}function s(){n.closed||(n.flushSync(),iKt(100),n.end())}return n}function uKt(e){e.ref(),e.flushSync(),e.end(),e.once("close",function(){e.unref()})}function cKt(e){e.flushSync()}function lKt(e){let{pipeline:t,targets:r,levels:n,dedupe:i,options:s={},worker:a={},caller:o=tKt()}=e,u=typeof o=="string"?[o]:o,c="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=e.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=c["pino-worker"]||MG(__dirname,"worker.js"),s.targets=r.map(f=>({...f,target:d(f.target)}))):t&&(l=c["pino-pipeline-worker"]||MG(__dirname,"worker-pipeline.js"),s.targets=t.map(f=>({...f,target:d(f.target)}))),n&&(s.levels=n),i&&(s.dedupe=i),s.pinoWillSendConfig=!0,oKt(d(l),s,a);function d(f){if(f=c[f]||f,rKt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return MG(__dirname,"..","file.js");let p;for(let h of u)try{let m=h==="node:repl"?process.cwd()+nKt:h;p=eKt(m).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}gke.exports=lKt});var aB=b((OIn,Cke)=>{"use strict";var yke=zDe(),{mapHttpRequest:dKt,mapHttpResponse:fKt}=gG(),FG=eke(),_ke=NG(),{lsCacheSym:pKt,chindingsSym:bke,writeSym:Ake,serializersSym:Eke,formatOptsSym:vke,endSym:hKt,stringifiersSym:Ske,stringifySym:wke,stringifySafeSym:UG,wildcardFirstSym:Ike,nestedKeySym:mKt,formattersSym:xke,messageKeySym:gKt,errorKeySym:yKt,nestedKeyStrSym:_Kt,msgPrefixSym:iB}=c1(),{isMainThread:AKt}=require("worker_threads"),vKt=BG();function d1(){}function bKt(e,t){if(!t)return r;return function(...i){t.call(this,i,r,e)};function r(n,...i){if(typeof n=="object"){let s=n;n!==null&&(n.method&&n.headers&&n.socket?n=dKt(n):typeof n.setHeader=="function"&&(n=fKt(n)));let a;s===null&&i.length===0?a=[null]:(s=i.shift(),a=i),typeof this[iB]=="string"&&s!==void 0&&s!==null&&(s=this[iB]+s),this[Ake](n,yke(s,a,this[vke]),e)}else{let s=n===void 0?i.shift():n;typeof this[iB]=="string"&&s!==void 0&&s!==null&&(s=this[iB]+s),this[Ake](null,yke(s,i,this[vke]),e)}}}function $G(e){let t="",r=0,n=!1,i=255,s=e.length;if(s>100)return JSON.stringify(e);for(var a=0;a=32;a++)i=e.charCodeAt(a),(i===34||i===92)&&(t+=e.slice(r,a)+"\\",r=a,n=!0);return n?t+=e.slice(r):t=e,i<32?JSON.stringify(e):'"'+t+'"'}function EKt(e,t,r,n){let i=this[wke],s=this[UG],a=this[Ske],o=this[hKt],u=this[bke],c=this[Eke],l=this[xke],d=this[gKt],f=this[yKt],p=this[pKt][r]+n;p=p+u;let h;l.log&&(e=l.log(e));let m=a[Ike],y="";for(let v in e)if(h=e[v],Object.prototype.hasOwnProperty.call(e,v)&&h!==void 0){c[v]?h=c[v](h):v===f&&c.err&&(h=c.err(h));let A=a[v]||m;switch(typeof h){case"undefined":case"function":continue;case"number":Number.isFinite(h)===!1&&(h=null);case"boolean":A&&(h=A(h));break;case"string":h=(A||$G)(h);break;default:h=(A||i)(h,s)}if(h===void 0)continue;let _=$G(v);y+=","+_+":"+h}let g="";if(t!==void 0){h=c[d]?c[d](t):t;let v=a[d]||m;switch(typeof h){case"function":break;case"number":Number.isFinite(h)===!1&&(h=null);case"boolean":v&&(h=v(h)),g=',"'+d+'":'+h;break;case"string":h=(v||$G)(h),g=',"'+d+'":'+h;break;default:h=(v||i)(h,s),g=',"'+d+'":'+h}}return this[mKt]&&y?p+this[_Kt]+y.slice(1)+"}"+g+o:p+y+g+o}function SKt(e,t){let r,n=e[bke],i=e[wke],s=e[UG],a=e[Ske],o=a[Ike],u=e[Eke],c=e[xke].bindings;t=c(t);for(let l in t)if(r=t[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&t.hasOwnProperty(l)&&r!==void 0)===!0){if(r=u[l]?u[l](r):r,r=(a[l]||o||i)(r,s),r===void 0)continue;n+=',"'+l+'":'+r}return n}function wKt(e){return e.write!==e.constructor.prototype.write}var IKt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function sB(e){let t=new FG(e);return t.on("error",r),!IKt&&!e.sync&&AKt&&(_ke.register(t,xKt),t.on("close",function(){_ke.unregister(t)})),t;function r(n){if(n.code==="EPIPE"){t.write=d1,t.end=d1,t.flushSync=d1,t.destroy=d1;return}t.removeListener("error",r),t.emit("error",n)}}function xKt(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",function(){e.end()})):e.flushSync())}function CKt(e){return function(r,n,i={},s){if(typeof i=="string")s=sB({dest:i}),i={};else if(typeof s=="string"){if(i&&i.transport)throw Error("only one of option.transport or stream can be specified");s=sB({dest:s})}else if(i instanceof FG||i.writable||i._writableState)s=i,i={};else if(i.transport){if(i.transport instanceof FG||i.transport.writable||i.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(i.transport.targets&&i.transport.targets.length&&i.formatters&&typeof i.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let u;i.customLevels&&(u=i.useOnlyCustomLevels?i.customLevels:Object.assign({},i.levels,i.customLevels)),s=vKt({caller:n,...i.transport,levels:u})}if(i=Object.assign({},e,i),i.serializers=Object.assign({},e.serializers,i.serializers),i.formatters=Object.assign({},e.formatters,i.formatters),i.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=i;return a===!1&&(i.level="silent"),o||(i.onChild=d1),s||(wKt(process.stdout)?s=process.stdout:s=sB({fd:process.stdout.fd||1})),{opts:i,stream:s}}}function TKt(e,t){try{return JSON.stringify(e)}catch{try{return(t||this[UG])(e)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function NKt(e,t,r){return{level:e,bindings:t,log:r}}function RKt(e){let t=Number(e);return typeof e=="string"&&Number.isFinite(t)?t:e===void 0?1:e}Cke.exports={noop:d1,buildSafeSonicBoom:sB,asChindings:SKt,asJson:EKt,genLog:bKt,createArgsNormalizer:CKt,stringify:TKt,buildFormatters:NKt,normalizeDestFileDescriptor:RKt}});var oB=b((PIn,Tke)=>{var DKt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},kKt={ASC:"ASC",DESC:"DESC"};Tke.exports={DEFAULT_LEVELS:DKt,SORTING_ORDER:kKt}});var HG=b((MIn,kke)=>{"use strict";var{lsCacheSym:OKt,levelValSym:qG,useOnlyCustomLevelsSym:PKt,streamSym:MKt,formattersSym:LKt,hooksSym:BKt,levelCompSym:Nke}=c1(),{noop:$Kt,genLog:aA}=aB(),{DEFAULT_LEVELS:Of,SORTING_ORDER:Rke}=oB(),Dke={fatal:e=>{let t=aA(Of.fatal,e);return function(...r){let n=this[MKt];if(t.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:e=>aA(Of.error,e),warn:e=>aA(Of.warn,e),info:e=>aA(Of.info,e),debug:e=>aA(Of.debug,e),trace:e=>aA(Of.trace,e)},jG=Object.keys(Of).reduce((e,t)=>(e[Of[t]]=t,e),{}),FKt=Object.keys(jG).reduce((e,t)=>(e[t]='{"level":'+Number(t),e),{});function UKt(e){let t=e[LKt].level,{labels:r}=e.levels,n={};for(let i in r){let s=t(r[i],Number(i));n[i]=JSON.stringify(s).slice(0,-1)}return e[OKt]=n,e}function qKt(e,t){if(t)return!1;switch(e){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function jKt(e){let{labels:t,values:r}=this.levels;if(typeof e=="number"){if(t[e]===void 0)throw Error("unknown level value"+e);e=t[e]}if(r[e]===void 0)throw Error("unknown level "+e);let n=this[qG],i=this[qG]=r[e],s=this[PKt],a=this[Nke],o=this[BKt].logMethod;for(let u in r){if(a(r[u],i)===!1){this[u]=$Kt;continue}this[u]=qKt(u,s)?Dke[u](o):aA(r[u],o)}this.emit("level-change",e,i,t[n],n,this)}function HKt(e){let{levels:t,levelVal:r}=this;return t&&t.labels?t.labels[r]:""}function KKt(e){let{values:t}=this.levels,r=t[e];return r!==void 0&&this[Nke](r,this[qG])}function VKt(e,t,r){return e===Rke.DESC?t<=r:t>=r}function zKt(e){return typeof e=="string"?VKt.bind(null,e):e}function QKt(e=null,t=!1){let r=e?Object.keys(e).reduce((s,a)=>(s[e[a]]=a,s),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),t?null:jG,r),i=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),t?null:Of,e);return{labels:n,values:i}}function GKt(e,t,r){if(typeof e=="number"){if(![].concat(Object.keys(t||{}).map(s=>t[s]),r?[]:Object.keys(jG).map(s=>+s),1/0).includes(e))throw Error(`default level:${e} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:Of,t);if(!(e in n))throw Error(`default level:${e} must be included in custom levels`)}function YKt(e,t){let{labels:r,values:n}=e;for(let i in t){if(i in n)throw Error("levels cannot be overridden");if(t[i]in r)throw Error("pre-existing level values cannot be used for new levels")}}function WKt(e){if(typeof e!="function"&&!(typeof e=="string"&&Object.values(Rke).includes(e)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}kke.exports={initialLsCache:FKt,genLsCache:UKt,levelMethods:Dke,getLevel:HKt,setLevel:jKt,isLevelEnabled:KKt,mappings:QKt,assertNoLevelCollisions:YKt,assertDefaultLevelFound:GKt,genLevelComparison:zKt,assertLevelComparison:WKt}});var KG=b((LIn,Oke)=>{"use strict";Oke.exports={version:"8.21.0"}});var Kke=b(($In,Hke)=>{"use strict";var{EventEmitter:XKt}=require("events"),{lsCacheSym:JKt,levelValSym:ZKt,setLevelSym:zG,getLevelSym:Pke,chindingsSym:QG,parsedChindingsSym:eVt,mixinSym:tVt,asJsonSym:Fke,writeSym:rVt,mixinMergeStrategySym:nVt,timeSym:iVt,timeSliceIndexSym:sVt,streamSym:Uke,serializersSym:oA,formattersSym:VG,errorKeySym:aVt,messageKeySym:oVt,useOnlyCustomLevelsSym:uVt,needsMetadataGsym:cVt,redactFmtSym:lVt,stringifySym:dVt,formatOptsSym:fVt,stringifiersSym:pVt,msgPrefixSym:Mke}=c1(),{getLevel:hVt,setLevel:mVt,isLevelEnabled:gVt,mappings:yVt,initialLsCache:_Vt,genLsCache:AVt,assertNoLevelCollisions:vVt}=HG(),{asChindings:qke,asJson:bVt,buildFormatters:Lke,stringify:Bke}=aB(),{version:EVt}=KG(),SVt=wG(),wVt=class{},jke={constructor:wVt,child:IVt,bindings:xVt,setBindings:CVt,flush:DVt,isLevelEnabled:gVt,version:EVt,get level(){return this[Pke]()},set level(e){this[zG](e)},get levelVal(){return this[ZKt]},set levelVal(e){throw Error("levelVal is read-only")},[JKt]:_Vt,[rVt]:NVt,[Fke]:bVt,[Pke]:hVt,[zG]:mVt};Object.setPrototypeOf(jke,XKt.prototype);Hke.exports=function(){return Object.create(jke)};var $ke=e=>e;function IVt(e,t){if(!e)throw Error("missing bindings for child Pino");t=t||{};let r=this[oA],n=this[VG],i=Object.create(this);if(t.hasOwnProperty("serializers")===!0){i[oA]=Object.create(null);for(let l in r)i[oA][l]=r[l];let u=Object.getOwnPropertySymbols(r);for(var s=0;s{"use strict";var{hasOwnProperty:fT}=Object.prototype,cA=WG();cA.configure=WG;cA.stringify=cA;cA.default=cA;XG.stringify=cA;XG.configure=WG;Qke.exports=cA;var kVt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function ig(e){return e.length<5e3&&!kVt.test(e)?`"${e}"`:JSON.stringify(e)}function GG(e,t){if(e.length>200||t)return e.sort(t);for(let r=1;rn;)e[i]=e[i-1],i--;e[i]=n}return e}var OVt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function YG(e){return OVt.call(e)!==void 0&&e.length!==0}function Vke(e,t,r){e.length= 1`)}return r===void 0?1/0:r}function uA(e){return e===1?"1 item":`${e} items`}function BVt(e){let t=new Set;for(let r of e)(typeof r=="string"||typeof r=="number")&&t.add(String(r));return t}function $Vt(e){if(fT.call(e,"strict")){let t=e.strict;if(typeof t!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(t)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function WG(e){e={...e};let t=$Vt(e);t&&(e.bigint===void 0&&(e.bigint=!1),"circularValue"in e||(e.circularValue=Error));let r=PVt(e),n=LVt(e,"bigint"),i=MVt(e),s=typeof i=="function"?i:void 0,a=zke(e,"maximumDepth"),o=zke(e,"maximumBreadth");function u(p,h,m,y,g,v){let A=h[p];switch(typeof A=="object"&&A!==null&&typeof A.toJSON=="function"&&(A=A.toJSON(p)),A=y.call(h,p,A),typeof A){case"string":return ig(A);case"object":{if(A===null)return"null";if(m.indexOf(A)!==-1)return r;let _="",E=",",S=v;if(Array.isArray(A)){if(A.length===0)return"[]";if(ao){let Q=A.length-o-1;_+=`${E}"... ${uA(Q)} not stringified"`}return g!==""&&(_+=` -${S}`),m.pop(),`[${_}]`}let C=Object.keys(A),I=C.length;if(I===0)return"{}";if(ao){let O=I-o;_+=`${T}"...":${N}"${uA(O)} not stringified"`,T=E}return g!==""&&T.length>1&&(_=` -${v}${_} -${S}`),m.pop(),`{${_}}`}case"number":return isFinite(A)?String(A):t?t(A):"null";case"boolean":return A===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(A);default:return t?t(A):void 0}}function c(p,h,m,y,g,v){switch(typeof h=="object"&&h!==null&&typeof h.toJSON=="function"&&(h=h.toJSON(p)),typeof h){case"string":return ig(h);case"object":{if(h===null)return"null";if(m.indexOf(h)!==-1)return r;let A=v,_="",E=",";if(Array.isArray(h)){if(h.length===0)return"[]";if(ao){let k=h.length-o-1;_+=`${E}"... ${uA(k)} not stringified"`}return g!==""&&(_+=` -${A}`),m.pop(),`[${_}]`}m.push(h);let S="";g!==""&&(v+=g,E=`, -${v}`,S=" ");let C="";for(let I of y){let N=c(I,h[I],m,y,g,v);N!==void 0&&(_+=`${C}${ig(I)}:${S}${N}`,C=E)}return g!==""&&C.length>1&&(_=` -${v}${_} -${A}`),m.pop(),`{${_}}`}case"number":return isFinite(h)?String(h):t?t(h):"null";case"boolean":return h===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(h);default:return t?t(h):void 0}}function l(p,h,m,y,g){switch(typeof h){case"string":return ig(h);case"object":{if(h===null)return"null";if(typeof h.toJSON=="function"){if(h=h.toJSON(p),typeof h!="object")return l(p,h,m,y,g);if(h===null)return"null"}if(m.indexOf(h)!==-1)return r;let v=g;if(Array.isArray(h)){if(h.length===0)return"[]";if(ao){let $=h.length-o-1;N+=`${T}"... ${uA($)} not stringified"`}return N+=` -${v}`,m.pop(),`[${N}]`}let A=Object.keys(h),_=A.length;if(_===0)return"{}";if(ao){let N=_-o;S+=`${C}"...": "${uA(N)} not stringified"`,C=E}return C!==""&&(S=` -${g}${S} -${v}`),m.pop(),`{${S}}`}case"number":return isFinite(h)?String(h):t?t(h):"null";case"boolean":return h===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(h);default:return t?t(h):void 0}}function d(p,h,m){switch(typeof h){case"string":return ig(h);case"object":{if(h===null)return"null";if(typeof h.toJSON=="function"){if(h=h.toJSON(p),typeof h!="object")return d(p,h,m);if(h===null)return"null"}if(m.indexOf(h)!==-1)return r;let y="",g=h.length!==void 0;if(g&&Array.isArray(h)){if(h.length===0)return"[]";if(ao){let N=h.length-o-1;y+=`,"... ${uA(N)} not stringified"`}return m.pop(),`[${y}]`}let v=Object.keys(h),A=v.length;if(A===0)return"{}";if(ao){let S=A-o;y+=`${_}"...":"${uA(S)} not stringified"`}return m.pop(),`{${y}}`}case"number":return isFinite(h)?String(h):t?t(h):"null";case"boolean":return h===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(h);default:return t?t(h):void 0}}function f(p,h,m){if(arguments.length>1){let y="";if(typeof m=="number"?y=" ".repeat(Math.min(m,10)):typeof m=="string"&&(y=m.slice(0,10)),h!=null){if(typeof h=="function")return u("",{"":p},[],h,y,"");if(Array.isArray(h))return c("",p,[],BVt(h),y,"")}if(y.length!==0)return l("",p,[],y,"")}return d("",p,[])}return f}});var Xke=b((FIn,Wke)=>{"use strict";var JG=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:Yke}=oB(),FVt=Yke.info;function UVt(e,t){let r=0;e=e||[],t=t||{dedupe:!1};let n=Object.create(Yke);n.silent=1/0,t.levels&&typeof t.levels=="object"&&Object.keys(t.levels).forEach(d=>{n[d]=t.levels[d]});let i={write:s,add:u,emit:a,flushSync:o,end:c,minLevel:0,streams:[],clone:l,[JG]:!0,streamLevels:n};return Array.isArray(e)?e.forEach(u,i):u.call(i,e),e=null,i;function s(d){let f,p=this.lastLevel,{streams:h}=this,m=0,y;for(let g=jVt(h.length,t.dedupe);KVt(g,h.length,t.dedupe);g=HVt(g,t.dedupe))if(f=h[g],f.level<=p){if(m!==0&&m!==f.level)break;if(y=f.stream,y[JG]){let{lastTime:v,lastMsg:A,lastObj:_,lastLogger:E}=this;y.lastLevel=p,y.lastTime=v,y.lastMsg=A,y.lastObj=_,y.lastLogger=E}y.write(d),t.dedupe&&(m=f.level)}else if(!t.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function u(d){if(!d)return i;let f=typeof d.write=="function"||d.stream,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:h,streamLevels:m}=this,y;typeof d.levelVal=="number"?y=d.levelVal:typeof d.level=="string"?y=m[d.level]:typeof d.level=="number"?y=d.level:y=FVt;let g={stream:p,level:y,levelVal:void 0,id:r++};return h.unshift(g),h.sort(qVt),this.minLevel=h[0].level,i}function c(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let p=0;p=0:e{"use strict";var VVt=require("os"),sOe=gG(),zVt=yG(),QVt=wG(),aOe=KDe(),GVt=Kke(),oOe=c1(),{configure:YVt}=Gke(),{assertDefaultLevelFound:WVt,mappings:uOe,genLsCache:XVt,genLevelComparison:JVt,assertLevelComparison:ZVt}=HG(),{DEFAULT_LEVELS:e7t,SORTING_ORDER:t7t}=oB(),{createArgsNormalizer:r7t,asChindings:n7t,buildSafeSonicBoom:Jke,buildFormatters:i7t,stringify:ZG,normalizeDestFileDescriptor:Zke,noop:s7t}=aB(),{version:a7t}=KG(),{chindingsSym:eOe,redactFmtSym:o7t,serializersSym:tOe,timeSym:u7t,timeSliceIndexSym:c7t,streamSym:l7t,stringifySym:rOe,stringifySafeSym:eY,stringifiersSym:nOe,setLevelSym:d7t,endSym:f7t,formatOptsSym:p7t,messageKeySym:h7t,errorKeySym:m7t,nestedKeySym:g7t,mixinSym:y7t,levelCompSym:_7t,useOnlyCustomLevelsSym:A7t,formattersSym:iOe,hooksSym:v7t,nestedKeyStrSym:b7t,mixinMergeStrategySym:E7t,msgPrefixSym:S7t}=oOe,{epochTime:cOe,nullTime:w7t}=aOe,{pid:I7t}=process,x7t=VVt.hostname(),C7t=sOe.err,T7t={level:"info",levelComparison:t7t.ASC,levels:e7t,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:I7t,hostname:x7t},serializers:Object.assign(Object.create(null),{err:C7t}),formatters:Object.assign(Object.create(null),{bindings(e){return e},level(e,t){return{level:t}}}),hooks:{logMethod:void 0},timestamp:cOe,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},N7t=r7t(T7t),R7t=Object.assign(Object.create(null),sOe);function tY(...e){let t={},{opts:r,stream:n}=N7t(t,zVt(),...e),{redact:i,crlf:s,serializers:a,timestamp:o,messageKey:u,errorKey:c,nestedKey:l,base:d,name:f,level:p,customLevels:h,levelComparison:m,mixin:y,mixinMergeStrategy:g,useOnlyCustomLevels:v,formatters:A,hooks:_,depthLimit:E,edgeLimit:S,onChild:C,msgPrefix:I}=r,N=YVt({maximumDepth:E,maximumBreadth:S}),T=i7t(A.level,A.bindings,A.log),k=ZG.bind({[eY]:N}),O=i?QVt(i,k):{},P=i?{stringify:O[o7t]}:{stringify:k},$="}"+(s?`\r + `}});var DFe=S((eHn,OFe)=>{"use strict";OFe.exports=mor;function mor(e){let{secret:t,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=e,u=[{secret:t,censor:r,compileRestore:n}];return s!==!1&&u.push({serialize:s}),c>0&&u.push({groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}),Object.assign(...u)}});var MFe=S((tHn,LFe)=>{"use strict";var PFe=yFe(),gor=TFe(),_or=IFe(),Aor=NFe(),{groupRedact:Eor,nestedRedact:yor}=Pee(),vor=DFe(),Sor=UF(),Tor=PFe(),Lee=e=>e;Lee.restore=Lee;var bor="[REDACTED]";Mee.rx=Sor;Mee.validator=PFe;LFe.exports=Mee;function Mee(e={}){let t=Array.from(new Set(e.paths||[])),r="serialize"in e&&(e.serialize===!1||typeof e.serialize=="function")?e.serialize:JSON.stringify,n=e.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let s=n===!0?void 0:"censor"in e?e.censor:bor,i=typeof s=="function",a=i&&s.length>1;if(t.length===0)return r||Lee;Tor({paths:t,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=gor({paths:t,censor:s}),l=Aor(),d="strict"in e?e.strict:!0;return _or({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},vor({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:Eor,nestedRedact:yor,wildcards:o,wcLen:c}))}});var O1=S((rHn,kFe)=>{"use strict";var Ior=Symbol("pino.setLevel"),Ror=Symbol("pino.getLevel"),Cor=Symbol("pino.levelVal"),xor=Symbol("pino.levelComp"),wor=Symbol("pino.useLevelLabels"),Nor=Symbol("pino.useOnlyCustomLevels"),Oor=Symbol("pino.mixin"),Dor=Symbol("pino.lsCache"),Por=Symbol("pino.chindings"),Lor=Symbol("pino.asJson"),Mor=Symbol("pino.write"),kor=Symbol("pino.redactFmt"),Bor=Symbol("pino.time"),Uor=Symbol("pino.timeSliceIndex"),For=Symbol("pino.stream"),$or=Symbol("pino.stringify"),qor=Symbol("pino.stringifySafe"),Hor=Symbol("pino.stringifiers"),Vor=Symbol("pino.end"),jor=Symbol("pino.formatOpts"),Kor=Symbol("pino.messageKey"),Gor=Symbol("pino.errorKey"),zor=Symbol("pino.nestedKey"),Yor=Symbol("pino.nestedKeyStr"),Qor=Symbol("pino.mixinMergeStrategy"),Wor=Symbol("pino.msgPrefix"),Xor=Symbol("pino.wildcardFirst"),Jor=Symbol.for("pino.serializers"),Zor=Symbol.for("pino.formatters"),ecr=Symbol.for("pino.hooks"),tcr=Symbol.for("pino.metadata");kFe.exports={setLevelSym:Ior,getLevelSym:Ror,levelValSym:Cor,levelCompSym:xor,useLevelLabelsSym:wor,mixinSym:Oor,lsCacheSym:Dor,chindingsSym:Por,asJsonSym:Lor,writeSym:Mor,serializersSym:Jor,redactFmtSym:kor,timeSym:Bor,timeSliceIndexSym:Uor,streamSym:For,stringifySym:$or,stringifySafeSym:qor,stringifiersSym:Hor,endSym:Vor,formatOptsSym:jor,messageKeySym:Kor,errorKeySym:Gor,nestedKeySym:zor,wildcardFirstSym:Xor,needsMetadataGsym:tcr,useOnlyCustomLevelsSym:Nor,formattersSym:Zor,hooksSym:ecr,nestedKeyStrSym:Yor,mixinMergeStrategySym:Qor,msgPrefixSym:Wor}});var Uee=S((nHn,$Fe)=>{"use strict";var Bee=MFe(),{redactFmtSym:rcr,wildcardFirstSym:FF}=O1(),{rx:kee,validator:ncr}=Bee,BFe=ncr({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:e=>`pino \u2013 redact paths array contains an invalid path (${e})`}),UFe="[Redacted]",FFe=!1;function scr(e,t){let{paths:r,censor:n}=icr(e),s=r.reduce((o,c)=>{kee.lastIndex=0;let u=kee.exec(c),l=kee.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=FF),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,h=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==FF&&o[d].length===0&&o[d].push(...o[FF]||[]),d===FF&&Object.keys(o).forEach(function(p){o[p]&&o[p].push(h)}),o[d].push(h),o},{}),i={[rcr]:Bee({paths:r,censor:n,serialize:t,strict:FFe})},a=(...o)=>t(typeof n=="function"?n(...o):n);return[...Object.keys(s),...Object.getOwnPropertySymbols(s)].reduce((o,c)=>{if(s[c]===null)o[c]=u=>a(u,[c]);else{let u=typeof n=="function"?(l,d)=>n(l,[c,...d]):n;o[c]=Bee({paths:s[c],censor:u,serialize:t,strict:FFe})}return o},i)}function icr(e){if(Array.isArray(e))return e={paths:e,censor:UFe},BFe(e),e;let{paths:t,censor:r=UFe,remove:n}=e;if(Array.isArray(t)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),BFe({paths:t,censor:r}),{paths:t,censor:r}}$Fe.exports=scr});var HFe=S((sHn,qFe)=>{"use strict";var acr=()=>"",ocr=()=>`,"time":${Date.now()}`,ccr=()=>`,"time":${Math.round(Date.now()/1e3)}`,ucr=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;qFe.exports={nullTime:acr,epochTime:ocr,unixTime:ccr,isoTime:ucr}});var jFe=S((iHn,VFe)=>{"use strict";function lcr(e){try{return JSON.stringify(e)}catch{return'"[Circular]"'}}VFe.exports=dcr;function dcr(e,t,r){var n=r&&r.stringify||lcr,s=1;if(typeof e=="object"&&e!==null){var i=t.length+s;if(i===1)return e;var a=new Array(i);a[0]=n(e);for(var o=1;o-1?d:0,e.charCodeAt(h+1)){case 100:case 102:if(l>=c||t[l]==null)break;d=c||t[l]==null)break;d=c||t[l]===void 0)break;d",d=h+2,h++;break}u+=n(t[l]),d=h+2,h++;break;case 115:if(l>=c)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let t=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(e,0,0,Number(r))},e=new Int32Array(new SharedArrayBuffer(4));Fee.exports=t}else{let e=function(t){if((t>0&&t<1/0)===!1)throw typeof t!="number"&&typeof t!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(t);for(;n>Date.now(););};Fee.exports=e}});var JFe=S((oHn,XFe)=>{"use strict";var Ui=require("fs"),fcr=require("events"),hcr=require("util").inherits,KFe=require("path"),Hee=$ee(),$F=100,qF=Buffer.allocUnsafe(0),pcr=16*1024,GFe="buffer",zFe="utf8";function YFe(e,t){t._opening=!0,t._writing=!0,t._asyncDrainScheduled=!1;function r(i,a){if(i){t._reopening=!1,t._writing=!1,t._opening=!1,t.sync?process.nextTick(()=>{t.listenerCount("error")>0&&t.emit("error",i)}):t.emit("error",i);return}let o=t._reopening;t.fd=a,t.file=e,t._reopening=!1,t._opening=!1,t._writing=!1,t.sync?process.nextTick(()=>t.emit("ready")):t.emit("ready"),!t.destroyed&&(!t._writing&&t._len>t.minLength||t._flushPending?t._actualWrite():o&&process.nextTick(()=>t.emit("drain")))}let n=t.append?"a":"w",s=t.mode;if(t.sync)try{t.mkdir&&Ui.mkdirSync(KFe.dirname(e),{recursive:!0});let i=Ui.openSync(e,n,s);r(null,i)}catch(i){throw r(i),i}else t.mkdir?Ui.mkdir(KFe.dirname(e),{recursive:!0},i=>{if(i)return r(i);Ui.open(e,n,s,r)}):Ui.open(e,n,s,r)}function Cf(e){if(!(this instanceof Cf))return new Cf(e);let{fd:t,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=e||{};t=t||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=s||0,this.maxWrite=i||pcr,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=u||(()=>!0),this.mkdir=c||!1;let h,p;if(d===GFe)this._writingBuf=qF,this.write=_cr,this.flush=Ecr,this.flushSync=vcr,this._actualWrite=Tcr,h=()=>Ui.writeSync(this.fd,this._writingBuf),p=()=>Ui.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===zFe)this._writingBuf="",this.write=gcr,this.flush=Acr,this.flushSync=ycr,this._actualWrite=Scr,h=()=>Ui.writeSync(this.fd,this._writingBuf,"utf8"),p=()=>Ui.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${zFe}" and "${GFe}", but passed ${d}`);if(typeof t=="number")this.fd=t,process.nextTick(()=>this.emit("ready"));else if(typeof t=="string")YFe(t,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(m,g)=>{if(m){if((m.code==="EAGAIN"||m.code==="EBUSY")&&this.retryEAGAIN(m,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{Hee($F),this.release(void 0,0)}catch(A){this.release(A)}else setTimeout(p,$F);else this._writing=!1,this.emit("error",m);return}this.emit("write",g);let _=qee(this._writingBuf,this._len,g);if(this._len=_.len,this._writingBuf=_.writingBuf,this._writingBuf.length){if(!this.sync){p();return}try{do{let A=h(),E=qee(this._writingBuf,this._len,A);this._len=E.len,this._writingBuf=E.writingBuf}while(this._writingBuf.length)}catch(A){this.release(A);return}}this._fsync&&Ui.fsyncSync(this.fd);let y=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):y>this.minLength?this._actualWrite():this._ending?y>0?this._actualWrite():(this._writing=!1,HF(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(mcr,this)):this.emit("drain"))},this.on("newListener",function(m){m==="drain"&&(this._asyncDrainScheduled=!1)})}function qee(e,t,r){return typeof e=="string"&&Buffer.byteLength(e)!==r&&(r=Buffer.from(e).subarray(0,r).toString().length),t=Math.max(t-r,0),e=e.slice(r),{writingBuf:e,len:t}}function mcr(e){e.listenerCount("drain")>0&&(e._asyncDrainScheduled=!1,e.emit("drain"))}hcr(Cf,fcr);function QFe(e,t){return e.length===0?qF:e.length===1?e[0]:Buffer.concat(e,t)}function gcr(e){if(this.destroyed)throw new Error("SonicBoom destroyed");let t=this._len+e.length,r=this._bufs;return this.maxLength&&t>this.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?r.push(""+e):r[r.length-1]+=e,this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",e),this._lenthis.maxWrite?(r.push([e]),n.push(e.length)):(r[r.length-1].push(e),n[n.length-1]+=e.length),this._len=t,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,e()):Ui.fsync(this.fd,n=>{this._flushPending=!1,e(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,e(n),this.off("drain",t)};this.once("drain",t),this.once("error",r)}function Acr(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&WFe.call(this,e),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function Ecr(e){if(e!=null&&typeof e!="function")throw new Error("flush cb must be a function");if(this.destroyed){let t=new Error("SonicBoom destroyed");if(e){e(t);return}throw t}if(this.minLength<=0){e?.();return}e&&WFe.call(this,e),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Cf.prototype.reopen=function(e){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(e)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(e&&(this.file=e),this._reopening=!0,this._writing)return;let t=this.fd;this.once("ready",()=>{t!==this.fd&&Ui.close(t,r=>{if(r)return this.emit("error",r)})}),YFe(this.file,this)};Cf.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():HF(this)))};function ycr(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let e="";for(;this._bufs.length||e;){e.length<=0&&(e=this._bufs[0]);try{let t=Ui.writeSync(this.fd,e,"utf8"),r=qee(e,this._len,t);e=r.writingBuf,this._len=r.len,e.length<=0&&this._bufs.shift()}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;Hee($F)}}try{Ui.fsyncSync(this.fd)}catch{}}function vcr(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=qF);let e=qF;for(;this._bufs.length||e.length;){e.length<=0&&(e=QFe(this._bufs[0],this._lens[0]));try{let t=Ui.writeSync(this.fd,e);e=e.subarray(t),this._len=Math.max(this._len-t,0),e.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(t){if((t.code==="EAGAIN"||t.code==="EBUSY")&&!this.retryEAGAIN(t,e.length,this._len-e.length))throw t;Hee($F)}}}Cf.prototype.destroy=function(){this.destroyed||HF(this)};function Scr(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let t=Ui.writeSync(this.fd,this._writingBuf,"utf8");e(null,t)}catch(t){e(t)}else Ui.write(this.fd,this._writingBuf,"utf8",e)}function Tcr(){let e=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:QFe(this._bufs.shift(),this._lens.shift()),this.sync)try{let t=Ui.writeSync(this.fd,this._writingBuf);e(null,t)}catch(t){e(t)}else Ui.write(this.fd,this._writingBuf,e)}function HF(e){if(e.fd===-1){e.once("ready",HF.bind(null,e));return}e.destroyed=!0,e._bufs=[],e._lens=[],Ui.fsync(e.fd,t);function t(){e.fd!==1&&e.fd!==2?Ui.close(e.fd,r):r()}function r(n){if(n){e.emit("error",n);return}e._ending&&!e._writing&&e.emit("finish"),e.emit("close")}}Cf.SonicBoom=Cf;Cf.default=Cf;XFe.exports=Cf});var Vee=S((cHn,n6e)=>{"use strict";var xf={exit:[],beforeExit:[]},ZFe={exit:Rcr,beforeExit:Ccr},D1;function bcr(){D1===void 0&&(D1=new FinalizationRegistry(xcr))}function Icr(e){xf[e].length>0||process.on(e,ZFe[e])}function e6e(e){xf[e].length>0||(process.removeListener(e,ZFe[e]),xf.exit.length===0&&xf.beforeExit.length===0&&(D1=void 0))}function Rcr(){t6e("exit")}function Ccr(){t6e("beforeExit")}function t6e(e){for(let t of xf[e]){let r=t.deref(),n=t.fn;r!==void 0&&n(r,e)}xf[e]=[]}function xcr(e){for(let t of["exit","beforeExit"]){let r=xf[t].indexOf(e);xf[t].splice(r,r+1),e6e(t)}}function r6e(e,t,r){if(t===void 0)throw new Error("the object can't be undefined");Icr(e);let n=new WeakRef(t);n.fn=r,bcr(),D1.register(t,n),xf[e].push(n)}function wcr(e,t){r6e("exit",e,t)}function Ncr(e,t){r6e("beforeExit",e,t)}function Ocr(e){if(D1!==void 0){D1.unregister(e);for(let t of["exit","beforeExit"])xf[t]=xf[t].filter(r=>{let n=r.deref();return n&&n!==e}),e6e(t)}}n6e.exports={register:wcr,registerBeforeExit:Ncr,unregister:Ocr}});var s6e=S((uHn,Dcr)=>{Dcr.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina ",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var a6e=S((lHn,i6e)=>{"use strict";function Pcr(e,t,r,n,s){let i=Date.now()+n,a=Atomics.load(e,t);if(a===r){s(null,"ok");return}let o=a,c=u=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(e,t),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function Lcr(e,t,r,n,s){let i=Date.now()+n,a=Atomics.load(e,t);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(e,t),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}i6e.exports={wait:Pcr,waitDiff:Lcr}});var c6e=S((dHn,o6e)=>{"use strict";o6e.exports={WRITE_INDEX:4,READ_INDEX:8}});var h6e=S((fHn,f6e)=>{"use strict";var{version:Mcr}=s6e(),{EventEmitter:kcr}=require("events"),{Worker:Bcr}=require("worker_threads"),{join:Ucr}=require("path"),{pathToFileURL:Fcr}=require("url"),{wait:$cr}=a6e(),{WRITE_INDEX:yu,READ_INDEX:eh}=c6e(),qcr=require("buffer"),Hcr=require("assert"),je=Symbol("kImpl"),Vcr=qcr.constants.MAX_STRING_LENGTH,mO=class{constructor(t){this._value=t}deref(){return this._value}},jF=class{register(){}unregister(){}},jcr=process.env.NODE_V8_COVERAGE?jF:global.FinalizationRegistry||jF,Kcr=process.env.NODE_V8_COVERAGE?mO:global.WeakRef||mO,u6e=new jcr(e=>{e.exited||e.terminate()});function Gcr(e,t){let{filename:r,workerData:n}=t,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||Ucr(__dirname,"lib","worker.js"),a=new Bcr(i,{...t.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:Fcr(r).href,dataBuf:e[je].dataBuf,stateBuf:e[je].stateBuf,workerData:{$context:{threadStreamVersion:Mcr},...n}}});return a.stream=new mO(e),a.on("message",zcr),a.on("exit",d6e),u6e.register(e,a),a}function l6e(e){Hcr(!e[je].sync),e[je].needDrain&&(e[je].needDrain=!1,e.emit("drain"))}function VF(e){let t=Atomics.load(e[je].state,yu),r=e[je].data.length-t;if(r>0){if(e[je].buf.length===0){e[je].flushing=!1,e[je].ending?Yee(e):e[je].needDrain&&process.nextTick(l6e,e);return}let n=e[je].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(e[je].buf=e[je].buf.slice(r),KF(e,n,VF.bind(null,e))):e.flush(()=>{if(!e.destroyed){for(Atomics.store(e[je].state,eh,0),Atomics.store(e[je].state,yu,0);s>e[je].data.length;)r=r/2,n=e[je].buf.slice(0,r),s=Buffer.byteLength(n);e[je].buf=e[je].buf.slice(r),KF(e,n,VF.bind(null,e))}})}else if(r===0){if(t===0&&e[je].buf.length===0)return;e.flush(()=>{Atomics.store(e[je].state,eh,0),Atomics.store(e[je].state,yu,0),VF(e)})}else th(e,new Error("overwritten"))}function zcr(e){let t=this.stream.deref();if(t===void 0){this.exited=!0,this.terminate();return}switch(e.code){case"READY":this.stream=new Kcr(t),t.flush(()=>{t[je].ready=!0,t.emit("ready")});break;case"ERROR":th(t,e.err);break;case"EVENT":Array.isArray(e.args)?t.emit(e.name,...e.args):t.emit(e.name,e.args);break;case"WARNING":process.emitWarning(e.err);break;default:th(t,new Error("this should not happen: "+e.code))}}function d6e(e){let t=this.stream.deref();t!==void 0&&(u6e.unregister(t),t.worker.exited=!0,t.worker.off("exit",d6e),th(t,e!==0?new Error("the worker thread exited"):null))}var Kee=class extends kcr{constructor(t={}){if(super(),t.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[je]={},this[je].stateBuf=new SharedArrayBuffer(128),this[je].state=new Int32Array(this[je].stateBuf),this[je].dataBuf=new SharedArrayBuffer(t.bufferSize||4*1024*1024),this[je].data=Buffer.from(this[je].dataBuf),this[je].sync=t.sync||!1,this[je].ending=!1,this[je].ended=!1,this[je].needDrain=!1,this[je].destroyed=!1,this[je].flushing=!1,this[je].ready=!1,this[je].finished=!1,this[je].errored=null,this[je].closed=!1,this[je].buf="",this.worker=Gcr(this,t),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(t){if(this[je].destroyed)return Gee(this,new Error("the worker has exited")),!1;if(this[je].ending)return Gee(this,new Error("the worker is ending")),!1;if(this[je].flushing&&this[je].buf.length+t.length>=Vcr)try{jee(this),this[je].flushing=!0}catch(r){return th(this,r),!1}if(this[je].buf+=t,this[je].sync)try{return jee(this),!0}catch(r){return th(this,r),!1}return this[je].flushing||(this[je].flushing=!0,setImmediate(VF,this)),this[je].needDrain=this[je].data.length-this[je].buf.length-Atomics.load(this[je].state,yu)<=0,!this[je].needDrain}end(){this[je].destroyed||(this[je].ending=!0,Yee(this))}flush(t){if(this[je].destroyed){typeof t=="function"&&process.nextTick(t,new Error("the worker has exited"));return}let r=Atomics.load(this[je].state,yu);$cr(this[je].state,eh,r,1/0,(n,s)=>{if(n){th(this,n),process.nextTick(t,n);return}if(s==="not-equal"){this.flush(t);return}process.nextTick(t)})}flushSync(){this[je].destroyed||(jee(this),zee(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[je].ready}get destroyed(){return this[je].destroyed}get closed(){return this[je].closed}get writable(){return!this[je].destroyed&&!this[je].ending}get writableEnded(){return this[je].ending}get writableFinished(){return this[je].finished}get writableNeedDrain(){return this[je].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[je].errored}};function Gee(e,t){setImmediate(()=>{e.emit("error",t)})}function th(e,t){e[je].destroyed||(e[je].destroyed=!0,t&&(e[je].errored=t,Gee(e,t)),e.worker.exited?setImmediate(()=>{e[je].closed=!0,e.emit("close")}):e.worker.terminate().catch(()=>{}).then(()=>{e[je].closed=!0,e.emit("close")}))}function KF(e,t,r){let n=Atomics.load(e[je].state,yu),s=Buffer.byteLength(t);return e[je].data.write(t,n),Atomics.store(e[je].state,yu,n+s),Atomics.notify(e[je].state,yu),r(),!0}function Yee(e){if(!(e[je].ended||!e[je].ending||e[je].flushing)){e[je].ended=!0;try{e.flushSync();let t=Atomics.load(e[je].state,eh);Atomics.store(e[je].state,yu,-1),Atomics.notify(e[je].state,yu);let r=0;for(;t!==-1;){if(Atomics.wait(e[je].state,eh,t,1e3),t=Atomics.load(e[je].state,eh),t===-2){th(e,new Error("end() failed"));return}if(++r===10){th(e,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{e[je].finished=!0,e.emit("finish")})}catch(t){th(e,t)}}}function jee(e){let t=()=>{e[je].ending?Yee(e):e[je].needDrain&&process.nextTick(l6e,e)};for(e[je].flushing=!1;e[je].buf.length!==0;){let r=Atomics.load(e[je].state,yu),n=e[je].data.length-r;if(n===0){zee(e),Atomics.store(e[je].state,eh,0),Atomics.store(e[je].state,yu,0);continue}else if(n<0)throw new Error("overwritten");let s=e[je].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)e[je].buf=e[je].buf.slice(n),KF(e,s,t);else{for(zee(e),Atomics.store(e[je].state,eh,0),Atomics.store(e[je].state,yu,0);i>e[je].buf.length;)n=n/2,s=e[je].buf.slice(0,n),i=Buffer.byteLength(s);e[je].buf=e[je].buf.slice(n),KF(e,s,t)}}}function zee(e){if(e[je].flushing)throw new Error("unable to flush while flushing");let t=Atomics.load(e[je].state,yu),r=0;for(;;){let n=Atomics.load(e[je].state,eh);if(n===-2)throw Error("_flushSync failed");if(n!==t)Atomics.wait(e[je].state,eh,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}f6e.exports=Kee});var Xee=S((hHn,p6e)=>{"use strict";var{createRequire:Ycr}=require("module"),Qcr=Oee(),{join:Qee,isAbsolute:Wcr,sep:Xcr}=require("path"),Jcr=$ee(),Wee=Vee(),Zcr=h6e();function eur(e){Wee.register(e,rur),Wee.registerBeforeExit(e,nur),e.on("close",function(){Wee.unregister(e)})}function tur(e,t,r){let n=new Zcr({filename:e,workerData:t,workerOpts:r});n.on("ready",s),n.on("close",function(){process.removeListener("exit",i)}),process.on("exit",i);function s(){process.removeListener("exit",i),n.unref(),r.autoEnd!==!1&&eur(n)}function i(){n.closed||(n.flushSync(),Jcr(100),n.end())}return n}function rur(e){e.ref(),e.flushSync(),e.end(),e.once("close",function(){e.unref()})}function nur(e){e.flushSync()}function sur(e){let{pipeline:t,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=Qcr()}=e,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=e.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||Qee(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):t&&(l=u["pino-pipeline-worker"]||Qee(__dirname,"worker-pipeline.js"),i.targets=t.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,tur(d(l),i,a);function d(f){if(f=u[f]||f,Wcr(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return Qee(__dirname,"..","file.js");let h;for(let p of c)try{let m=p==="node:repl"?process.cwd()+Xcr:p;h=Ycr(m).resolve(f);break}catch{continue}if(!h)throw new Error(`unable to determine transport target for "${f}"`);return h}}p6e.exports=sur});var YF=S((pHn,I6e)=>{"use strict";var m6e=jFe(),{mapHttpRequest:iur,mapHttpResponse:aur}=Nee(),Zee=JFe(),g6e=Vee(),{lsCacheSym:our,chindingsSym:E6e,writeSym:_6e,serializersSym:y6e,formatOptsSym:A6e,endSym:cur,stringifiersSym:v6e,stringifySym:S6e,stringifySafeSym:ete,wildcardFirstSym:T6e,nestedKeySym:uur,formattersSym:b6e,messageKeySym:lur,errorKeySym:dur,nestedKeyStrSym:fur,msgPrefixSym:GF}=O1(),{isMainThread:hur}=require("worker_threads"),pur=Xee();function P1(){}function mur(e,t){if(!t)return r;return function(...s){t.call(this,s,r,e)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=iur(n):typeof n.setHeader=="function"&&(n=aur(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[GF]=="string"&&i!==void 0&&i!==null&&(i=this[GF]+i),this[_6e](n,m6e(i,a,this[A6e]),e)}else{let i=n===void 0?s.shift():n;typeof this[GF]=="string"&&i!==void 0&&i!==null&&(i=this[GF]+i),this[_6e](null,m6e(i,s,this[A6e]),e)}}}function Jee(e){let t="",r=0,n=!1,s=255,i=e.length;if(i>100)return JSON.stringify(e);for(var a=0;a=32;a++)s=e.charCodeAt(a),(s===34||s===92)&&(t+=e.slice(r,a)+"\\",r=a,n=!0);return n?t+=e.slice(r):t=e,s<32?JSON.stringify(e):'"'+t+'"'}function gur(e,t,r,n){let s=this[S6e],i=this[ete],a=this[v6e],o=this[cur],c=this[E6e],u=this[y6e],l=this[b6e],d=this[lur],f=this[dur],h=this[our][r]+n;h=h+c;let p;l.log&&(e=l.log(e));let m=a[T6e],g="";for(let y in e)if(p=e[y],Object.prototype.hasOwnProperty.call(e,y)&&p!==void 0){u[y]?p=u[y](p):y===f&&u.err&&(p=u.err(p));let A=a[y]||m;switch(typeof p){case"undefined":case"function":continue;case"number":Number.isFinite(p)===!1&&(p=null);case"boolean":A&&(p=A(p));break;case"string":p=(A||Jee)(p);break;default:p=(A||s)(p,i)}if(p===void 0)continue;let E=Jee(y);g+=","+E+":"+p}let _="";if(t!==void 0){p=u[d]?u[d](t):t;let y=a[d]||m;switch(typeof p){case"function":break;case"number":Number.isFinite(p)===!1&&(p=null);case"boolean":y&&(p=y(p)),_=',"'+d+'":'+p;break;case"string":p=(y||Jee)(p),_=',"'+d+'":'+p;break;default:p=(y||s)(p,i),_=',"'+d+'":'+p}}return this[uur]&&g?h+this[fur]+g.slice(1)+"}"+_+o:h+g+_+o}function _ur(e,t){let r,n=e[E6e],s=e[S6e],i=e[ete],a=e[v6e],o=a[T6e],c=e[y6e],u=e[b6e].bindings;t=u(t);for(let l in t)if(r=t[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&t.hasOwnProperty(l)&&r!==void 0)===!0){if(r=c[l]?c[l](r):r,r=(a[l]||o||s)(r,i),r===void 0)continue;n+=',"'+l+'":'+r}return n}function Aur(e){return e.write!==e.constructor.prototype.write}var Eur=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function zF(e){let t=new Zee(e);return t.on("error",r),!Eur&&!e.sync&&hur&&(g6e.register(t,yur),t.on("close",function(){g6e.unregister(t)})),t;function r(n){if(n.code==="EPIPE"){t.write=P1,t.end=P1,t.flushSync=P1,t.destroy=P1;return}t.removeListener("error",r),t.emit("error",n)}}function yur(e,t){e.destroyed||(t==="beforeExit"?(e.flush(),e.on("drain",function(){e.end()})):e.flushSync())}function vur(e){return function(r,n,s={},i){if(typeof s=="string")i=zF({dest:s}),s={};else if(typeof i=="string"){if(s&&s.transport)throw Error("only one of option.transport or stream can be specified");i=zF({dest:i})}else if(s instanceof Zee||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof Zee||s.transport.writable||s.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(s.transport.targets&&s.transport.targets.length&&s.formatters&&typeof s.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let c;s.customLevels&&(c=s.useOnlyCustomLevels?s.customLevels:Object.assign({},s.levels,s.customLevels)),i=pur({caller:n,...s.transport,levels:c})}if(s=Object.assign({},e,s),s.serializers=Object.assign({},e.serializers,s.serializers),s.formatters=Object.assign({},e.formatters,s.formatters),s.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=s;return a===!1&&(s.level="silent"),o||(s.onChild=P1),i||(Aur(process.stdout)?i=process.stdout:i=zF({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function Sur(e,t){try{return JSON.stringify(e)}catch{try{return(t||this[ete])(e)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function Tur(e,t,r){return{level:e,bindings:t,log:r}}function bur(e){let t=Number(e);return typeof e=="string"&&Number.isFinite(t)?t:e===void 0?1:e}I6e.exports={noop:P1,buildSafeSonicBoom:zF,asChindings:_ur,asJson:gur,genLog:mur,createArgsNormalizer:vur,stringify:Sur,buildFormatters:Tur,normalizeDestFileDescriptor:bur}});var QF=S((mHn,R6e)=>{var Iur={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},Rur={ASC:"ASC",DESC:"DESC"};R6e.exports={DEFAULT_LEVELS:Iur,SORTING_ORDER:Rur}});var nte=S((gHn,N6e)=>{"use strict";var{lsCacheSym:Cur,levelValSym:tte,useOnlyCustomLevelsSym:xur,streamSym:wur,formattersSym:Nur,hooksSym:Our,levelCompSym:C6e}=O1(),{noop:Dur,genLog:iv}=YF(),{DEFAULT_LEVELS:rh,SORTING_ORDER:x6e}=QF(),w6e={fatal:e=>{let t=iv(rh.fatal,e);return function(...r){let n=this[wur];if(t.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:e=>iv(rh.error,e),warn:e=>iv(rh.warn,e),info:e=>iv(rh.info,e),debug:e=>iv(rh.debug,e),trace:e=>iv(rh.trace,e)},rte=Object.keys(rh).reduce((e,t)=>(e[rh[t]]=t,e),{}),Pur=Object.keys(rte).reduce((e,t)=>(e[t]='{"level":'+Number(t),e),{});function Lur(e){let t=e[Nur].level,{labels:r}=e.levels,n={};for(let s in r){let i=t(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return e[Cur]=n,e}function Mur(e,t){if(t)return!1;switch(e){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function kur(e){let{labels:t,values:r}=this.levels;if(typeof e=="number"){if(t[e]===void 0)throw Error("unknown level value"+e);e=t[e]}if(r[e]===void 0)throw Error("unknown level "+e);let n=this[tte],s=this[tte]=r[e],i=this[xur],a=this[C6e],o=this[Our].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=Dur;continue}this[c]=Mur(c,i)?w6e[c](o):iv(r[c],o)}this.emit("level-change",e,s,t[n],n,this)}function Bur(e){let{levels:t,levelVal:r}=this;return t&&t.labels?t.labels[r]:""}function Uur(e){let{values:t}=this.levels,r=t[e];return r!==void 0&&this[C6e](r,this[tte])}function Fur(e,t,r){return e===x6e.DESC?t<=r:t>=r}function $ur(e){return typeof e=="string"?Fur.bind(null,e):e}function qur(e=null,t=!1){let r=e?Object.keys(e).reduce((i,a)=>(i[e[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),t?null:rte,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),t?null:rh,e);return{labels:n,values:s}}function Hur(e,t,r){if(typeof e=="number"){if(![].concat(Object.keys(t||{}).map(i=>t[i]),r?[]:Object.keys(rte).map(i=>+i),1/0).includes(e))throw Error(`default level:${e} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:rh,t);if(!(e in n))throw Error(`default level:${e} must be included in custom levels`)}function Vur(e,t){let{labels:r,values:n}=e;for(let s in t){if(s in n)throw Error("levels cannot be overridden");if(t[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function jur(e){if(typeof e!="function"&&!(typeof e=="string"&&Object.values(x6e).includes(e)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}N6e.exports={initialLsCache:Pur,genLsCache:Lur,levelMethods:w6e,getLevel:Bur,setLevel:kur,isLevelEnabled:Uur,mappings:qur,assertNoLevelCollisions:Vur,assertDefaultLevelFound:Hur,genLevelComparison:$ur,assertLevelComparison:jur}});var ste=S((_Hn,O6e)=>{"use strict";O6e.exports={version:"8.21.0"}});var H6e=S((EHn,q6e)=>{"use strict";var{EventEmitter:Kur}=require("events"),{lsCacheSym:Gur,levelValSym:zur,setLevelSym:ate,getLevelSym:D6e,chindingsSym:ote,parsedChindingsSym:Yur,mixinSym:Qur,asJsonSym:B6e,writeSym:Wur,mixinMergeStrategySym:Xur,timeSym:Jur,timeSliceIndexSym:Zur,streamSym:U6e,serializersSym:av,formattersSym:ite,errorKeySym:elr,messageKeySym:tlr,useOnlyCustomLevelsSym:rlr,needsMetadataGsym:nlr,redactFmtSym:slr,stringifySym:ilr,formatOptsSym:alr,stringifiersSym:olr,msgPrefixSym:P6e}=O1(),{getLevel:clr,setLevel:ulr,isLevelEnabled:llr,mappings:dlr,initialLsCache:flr,genLsCache:hlr,assertNoLevelCollisions:plr}=nte(),{asChindings:F6e,asJson:mlr,buildFormatters:L6e,stringify:M6e}=YF(),{version:glr}=ste(),_lr=Uee(),Alr=class{},$6e={constructor:Alr,child:Elr,bindings:ylr,setBindings:vlr,flush:Ilr,isLevelEnabled:llr,version:glr,get level(){return this[D6e]()},set level(e){this[ate](e)},get levelVal(){return this[zur]},set levelVal(e){throw Error("levelVal is read-only")},[Gur]:flr,[Wur]:Tlr,[B6e]:mlr,[D6e]:clr,[ate]:ulr};Object.setPrototypeOf($6e,Kur.prototype);q6e.exports=function(){return Object.create($6e)};var k6e=e=>e;function Elr(e,t){if(!e)throw Error("missing bindings for child Pino");t=t||{};let r=this[av],n=this[ite],s=Object.create(this);if(t.hasOwnProperty("serializers")===!0){s[av]=Object.create(null);for(let l in r)s[av][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i{"use strict";var{hasOwnProperty:gO}=Object.prototype,cv=lte();cv.configure=lte;cv.stringify=cv;cv.default=cv;dte.stringify=cv;dte.configure=lte;K6e.exports=cv;var Rlr=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function J_(e){return e.length<5e3&&!Rlr.test(e)?`"${e}"`:JSON.stringify(e)}function cte(e,t){if(e.length>200||t)return e.sort(t);for(let r=1;rn;)e[s]=e[s-1],s--;e[s]=n}return e}var Clr=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function ute(e){return Clr.call(e)!==void 0&&e.length!==0}function V6e(e,t,r){e.length= 1`)}return r===void 0?1/0:r}function ov(e){return e===1?"1 item":`${e} items`}function Olr(e){let t=new Set;for(let r of e)(typeof r=="string"||typeof r=="number")&&t.add(String(r));return t}function Dlr(e){if(gO.call(e,"strict")){let t=e.strict;if(typeof t!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(t)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function lte(e){e={...e};let t=Dlr(e);t&&(e.bigint===void 0&&(e.bigint=!1),"circularValue"in e||(e.circularValue=Error));let r=xlr(e),n=Nlr(e,"bigint"),s=wlr(e),i=typeof s=="function"?s:void 0,a=j6e(e,"maximumDepth"),o=j6e(e,"maximumBreadth");function c(h,p,m,g,_,y){let A=p[h];switch(typeof A=="object"&&A!==null&&typeof A.toJSON=="function"&&(A=A.toJSON(h)),A=g.call(p,h,A),typeof A){case"string":return J_(A);case"object":{if(A===null)return"null";if(m.indexOf(A)!==-1)return r;let E="",v=",",b=y;if(Array.isArray(A)){if(A.length===0)return"[]";if(ao){let G=A.length-o-1;E+=`${v}"... ${ov(G)} not stringified"`}return _!==""&&(E+=` +${b}`),m.pop(),`[${E}]`}let I=Object.keys(A),T=I.length;if(T===0)return"{}";if(ao){let M=T-o;E+=`${w}"...":${x}"${ov(M)} not stringified"`,w=v}return _!==""&&w.length>1&&(E=` +${y}${E} +${b}`),m.pop(),`{${E}}`}case"number":return isFinite(A)?String(A):t?t(A):"null";case"boolean":return A===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(A);default:return t?t(A):void 0}}function u(h,p,m,g,_,y){switch(typeof p=="object"&&p!==null&&typeof p.toJSON=="function"&&(p=p.toJSON(h)),typeof p){case"string":return J_(p);case"object":{if(p===null)return"null";if(m.indexOf(p)!==-1)return r;let A=y,E="",v=",";if(Array.isArray(p)){if(p.length===0)return"[]";if(ao){let D=p.length-o-1;E+=`${v}"... ${ov(D)} not stringified"`}return _!==""&&(E+=` +${A}`),m.pop(),`[${E}]`}m.push(p);let b="";_!==""&&(y+=_,v=`, +${y}`,b=" ");let I="";for(let T of g){let x=u(T,p[T],m,g,_,y);x!==void 0&&(E+=`${I}${J_(T)}:${b}${x}`,I=v)}return _!==""&&I.length>1&&(E=` +${y}${E} +${A}`),m.pop(),`{${E}}`}case"number":return isFinite(p)?String(p):t?t(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return t?t(p):void 0}}function l(h,p,m,g,_){switch(typeof p){case"string":return J_(p);case"object":{if(p===null)return"null";if(typeof p.toJSON=="function"){if(p=p.toJSON(h),typeof p!="object")return l(h,p,m,g,_);if(p===null)return"null"}if(m.indexOf(p)!==-1)return r;let y=_;if(Array.isArray(p)){if(p.length===0)return"[]";if(ao){let U=p.length-o-1;x+=`${w}"... ${ov(U)} not stringified"`}return x+=` +${y}`,m.pop(),`[${x}]`}let A=Object.keys(p),E=A.length;if(E===0)return"{}";if(ao){let x=E-o;b+=`${I}"...": "${ov(x)} not stringified"`,I=v}return I!==""&&(b=` +${_}${b} +${y}`),m.pop(),`{${b}}`}case"number":return isFinite(p)?String(p):t?t(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return t?t(p):void 0}}function d(h,p,m){switch(typeof p){case"string":return J_(p);case"object":{if(p===null)return"null";if(typeof p.toJSON=="function"){if(p=p.toJSON(h),typeof p!="object")return d(h,p,m);if(p===null)return"null"}if(m.indexOf(p)!==-1)return r;let g="",_=p.length!==void 0;if(_&&Array.isArray(p)){if(p.length===0)return"[]";if(ao){let x=p.length-o-1;g+=`,"... ${ov(x)} not stringified"`}return m.pop(),`[${g}]`}let y=Object.keys(p),A=y.length;if(A===0)return"{}";if(ao){let b=A-o;g+=`${E}"...":"${ov(b)} not stringified"`}return m.pop(),`{${g}}`}case"number":return isFinite(p)?String(p):t?t(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return t?t(p):void 0}}function f(h,p,m){if(arguments.length>1){let g="";if(typeof m=="number"?g=" ".repeat(Math.min(m,10)):typeof m=="string"&&(g=m.slice(0,10)),p!=null){if(typeof p=="function")return c("",{"":h},[],p,g,"");if(Array.isArray(p))return u("",h,[],Olr(p),g,"")}if(g.length!==0)return l("",h,[],g,"")}return d("",h,[])}return f}});var Q6e=S((yHn,Y6e)=>{"use strict";var fte=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:z6e}=QF(),Plr=z6e.info;function Llr(e,t){let r=0;e=e||[],t=t||{dedupe:!1};let n=Object.create(z6e);n.silent=1/0,t.levels&&typeof t.levels=="object"&&Object.keys(t.levels).forEach(d=>{n[d]=t.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[fte]:!0,streamLevels:n};return Array.isArray(e)?e.forEach(c,s):c.call(s,e),e=null,s;function i(d){let f,h=this.lastLevel,{streams:p}=this,m=0,g;for(let _=klr(p.length,t.dedupe);Ulr(_,p.length,t.dedupe);_=Blr(_,t.dedupe))if(f=p[_],f.level<=h){if(m!==0&&m!==f.level)break;if(g=f.stream,g[fte]){let{lastTime:y,lastMsg:A,lastObj:E,lastLogger:v}=this;g.lastLevel=h,g.lastTime=y,g.lastMsg=A,g.lastObj=E,g.lastLogger=v}g.write(d),t.dedupe&&(m=f.level)}else if(!t.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,h=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:p,streamLevels:m}=this,g;typeof d.levelVal=="number"?g=d.levelVal:typeof d.level=="string"?g=m[d.level]:typeof d.level=="number"?g=d.level:g=Plr;let _={stream:h,level:g,levelVal:void 0,id:r++};return p.unshift(_),p.sort(Mlr),this.minLevel=p[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let h=0;h=0:e{"use strict";var Flr=require("os"),n5e=Nee(),$lr=Oee(),qlr=Uee(),s5e=HFe(),Hlr=H6e(),i5e=O1(),{configure:Vlr}=G6e(),{assertDefaultLevelFound:jlr,mappings:a5e,genLsCache:Klr,genLevelComparison:Glr,assertLevelComparison:zlr}=nte(),{DEFAULT_LEVELS:Ylr,SORTING_ORDER:Qlr}=QF(),{createArgsNormalizer:Wlr,asChindings:Xlr,buildSafeSonicBoom:W6e,buildFormatters:Jlr,stringify:hte,normalizeDestFileDescriptor:X6e,noop:Zlr}=YF(),{version:edr}=ste(),{chindingsSym:J6e,redactFmtSym:tdr,serializersSym:Z6e,timeSym:rdr,timeSliceIndexSym:ndr,streamSym:sdr,stringifySym:e5e,stringifySafeSym:pte,stringifiersSym:t5e,setLevelSym:idr,endSym:adr,formatOptsSym:odr,messageKeySym:cdr,errorKeySym:udr,nestedKeySym:ldr,mixinSym:ddr,levelCompSym:fdr,useOnlyCustomLevelsSym:hdr,formattersSym:r5e,hooksSym:pdr,nestedKeyStrSym:mdr,mixinMergeStrategySym:gdr,msgPrefixSym:_dr}=i5e,{epochTime:o5e,nullTime:Adr}=s5e,{pid:Edr}=process,ydr=Flr.hostname(),vdr=n5e.err,Sdr={level:"info",levelComparison:Qlr.ASC,levels:Ylr,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:Edr,hostname:ydr},serializers:Object.assign(Object.create(null),{err:vdr}),formatters:Object.assign(Object.create(null),{bindings(e){return e},level(e,t){return{level:t}}}),hooks:{logMethod:void 0},timestamp:o5e,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},Tdr=Wlr(Sdr),bdr=Object.assign(Object.create(null),n5e);function mte(...e){let t={},{opts:r,stream:n}=Tdr(t,$lr(),...e),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:h,customLevels:p,levelComparison:m,mixin:g,mixinMergeStrategy:_,useOnlyCustomLevels:y,formatters:A,hooks:E,depthLimit:v,edgeLimit:b,onChild:I,msgPrefix:T}=r,x=Vlr({maximumDepth:v,maximumBreadth:b}),w=Jlr(A.level,A.bindings,A.log),D=hte.bind({[pte]:x}),M=s?qlr(s,D):{},L=s?{stringify:M[tdr]}:{stringify:D},U="}"+(i?`\r `:` -`),Q=n7t.bind(null,{[eOe]:"",[tOe]:a,[nOe]:O,[rOe]:ZG,[eY]:N,[iOe]:T}),j="";d!==null&&(f===void 0?j=Q(d):j=Q(Object.assign({},d,{name:f})));let z=o instanceof Function?o:o?cOe:w7t,X=z().indexOf(":")+1;if(v&&!h)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(y&&typeof y!="function")throw Error(`Unknown mixin type "${typeof y}" - expected "function"`);if(I&&typeof I!="string")throw Error(`Unknown msgPrefix type "${typeof I}" - expected "string"`);WVt(p,h,v);let K=uOe(h,v);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:K,messageKey:u,errorKey:c}}),ZVt(m);let Z=JVt(m);return Object.assign(t,{levels:K,[_7t]:Z,[A7t]:v,[l7t]:n,[u7t]:z,[c7t]:X,[rOe]:ZG,[eY]:N,[nOe]:O,[f7t]:$,[p7t]:P,[h7t]:u,[m7t]:c,[g7t]:l,[b7t]:l?`,${JSON.stringify(l)}:{`:"",[tOe]:a,[y7t]:y,[E7t]:g,[eOe]:j,[iOe]:T,[v7t]:_,silent:s7t,onChild:C,[S7t]:I}),Object.setPrototypeOf(t,GVt()),XVt(t),t[d7t](p),t}Jc.exports=tY;Jc.exports.destination=(e=process.stdout.fd)=>typeof e=="object"?(e.dest=Zke(e.dest||process.stdout.fd),Jke(e)):Jke({dest:Zke(e),minLength:0});Jc.exports.transport=BG();Jc.exports.multistream=Xke();Jc.exports.levels=uOe();Jc.exports.stdSerializers=R7t;Jc.exports.stdTimeFunctions=Object.assign({},aOe);Jc.exports.symbols=oOe;Jc.exports.version=a7t;Jc.exports.default=tY;Jc.exports.pino=tY});var pT=b((qIn,mOe)=>{"use strict";var D7t=eDe(),uB=lOe(),{serializersSym:dOe}=uB.symbols,{FST_ERR_LOG_INVALID_DESTINATION:k7t,FST_ERR_LOG_INVALID_LOGGER:O7t}=Wa();function fOe(e){if(e.stream&&e.file)throw new k7t;e.file&&(e.stream=uB.destination(e.file),delete e.file);let t=e.logger,r=e.genReqId,n=null;return t?(e.logger=void 0,e.genReqId=void 0,t[dOe]&&(e.serializers=Object.assign({},e.serializers,t[dOe])),n=t.child({},e),e.logger=t,e.genReqId=r):n=uB(e,e.stream),n}var rY={req:function(t){return{method:t.method,url:t.url,version:t.headers&&t.headers["accept-version"],hostname:t.hostname,remoteAddress:t.ip,remotePort:t.socket?t.socket.remotePort:void 0}},err:uB.stdSerializers.err,res:function(t){return{statusCode:t.statusCode}}};function P7t(){let e=process.hrtime();return e[0]*1e3+e[1]/1e6}function M7t(e){if(!e.logger){let n=D7t;return n.child=()=>n,{logger:n,hasLogger:!1}}if(pOe(e.logger))return{logger:fOe({logger:e.logger,serializers:Object.assign({},rY,e.logger.serializers)}),hasLogger:!0};let t={};return Object.prototype.toString.call(e.logger)==="[object Object]"&&Reflect.ownKeys(e.logger).forEach(n=>{Object.defineProperty(t,n,{value:e.logger[n],writable:!0,enumerable:!0,configurable:!0})}),t.level=t.level||"info",t.serializers=Object.assign({},rY,t.serializers),e.logger=t,{logger:fOe(e.logger),hasLogger:!0}}function pOe(e,t){let r=["info","error","debug","fatal","warn","trace","child"],n=e?r.filter(i=>!e[i]||typeof e[i]!="function"):r;if(n.length){if(n.length===r.length&&!t)return!1;throw O7t(n.join(","))}else return!0}function L7t(e,t,r,n,i){let s={[e.requestIdLogLabel]:n},a=e.childLoggerFactory.call(e.server,t,s,i||{},r);return e.childLoggerFactory!==hOe&&pOe(a,!0),a}function hOe(e,t,r){return e.child(t,r)}mOe.exports={createLogger:M7t,createChildLogger:L7t,defaultChildLoggerFactory:hOe,serializers:rY,now:P7t}});var cB=b((jIn,gOe)=>{"use strict";gOe.exports=B7t;function f1(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function B7t(e){if(e=e||{},e.circles)return $7t(e);let t=new Map;if(t.set(Date,a=>new Date(a)),t.set(Map,(a,o)=>new Map(n(Array.from(a),o))),t.set(Set,(a,o)=>new Set(n(Array.from(a),o))),e.constructorHandlers)for(let a of e.constructorHandlers)t.set(a[0],a[1]);let r=null;return e.proto?s:i;function n(a,o){let u=Object.keys(a),c=new Array(u.length);for(let l=0;lnew Date(u)),n.set(Map,(u,c)=>new Map(s(Array.from(u),c))),n.set(Set,(u,c)=>new Set(s(Array.from(u),c))),e.constructorHandlers)for(let u of e.constructorHandlers)n.set(u[0],u[1]);let i=null;return e.proto?o:a;function s(u,c){let l=Object.keys(u),d=new Array(l.length);for(let f=0;f{"use strict";var F7t=cB()({circles:!1,proto:!0}),{kSchemaVisited:yOe,kSchemaResponse:U7t}=Vs(),iY=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:q7t,FST_ERR_SCH_ALREADY_PRESENT:j7t,FST_ERR_SCH_DUPLICATE:H7t,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:K7t}=Wa(),AOe=["params","body","querystring","query","headers"];function lB(e){this.store=e||{}}lB.prototype.add=function(e){let t=F7t(e.isFluentSchema||e.isFluentJSONSchema||e[iY]?e.valueOf():e),r=t.$id;if(!r)throw new q7t;if(this.store[r])throw new j7t(r);this.store[r]=t};lB.prototype.getSchemas=function(){return Object.assign({},this.store)};lB.prototype.getSchema=function(e){return this.store[e]};function _Oe(e){return typeof e=="object"&&Object.getPrototypeOf(e)!==Object.prototype}function V7t(e,t){if(e[yOe])return e;if(e.query){if(e.querystring)throw new H7t("querystring");e.querystring=e.query}z7t(e);for(let r of AOe){let n=e[r];n&&!_Oe(n)&&(e[r]=nY(n,t.jsonShorthand))}if(e.response){let r=Object.keys(e.response);for(let n of r){if(_Oe(e.response[n]))continue;let i=e.response[n].content,s=!1;if(i){let a=Object.keys(i);for(let o=0;o{"use strict";var G7t=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;EOe.exports=class bOe{constructor(t){switch(t&&t.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=t}asInteger(t){if(Number.isInteger(t))return""+t;if(typeof t=="bigint")return t.toString();let r=this.parseInteger(t);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${t}" cannot be converted to an integer.`);return""+r}asNumber(t){let r=Number(t);if(r!==r)throw new Error(`The value "${t}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(t){return t&&"true"||"false"}asDateTime(t){if(t===null)return'""';if(t instanceof Date)return'"'+t.toISOString()+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a date-time.`)}asDate(t){if(t===null)return'""';if(t instanceof Date)return'"'+new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a date.`)}asTime(t){if(t===null)return'""';if(t instanceof Date)return'"'+new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a time.`)}asString(t){let r=t.length;if(r<42){let i="",s=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(t);return s===-1&&'"'+t+'"'||'"'+i+t.slice(s)+'"'}else return r<5e3&&G7t.test(t)===!1?'"'+t+'"':JSON.stringify(t)}asUnsafeString(t){return'"'+t+'"'}getState(){return this._options}static restoreFromState(t){return new bOe(t)}}});var yT=b(Vr=>{"use strict";Object.defineProperty(Vr,"__esModule",{value:!0});Vr.regexpCode=Vr.getEsmExportName=Vr.getProperty=Vr.safeStringify=Vr.stringify=Vr.strConcat=Vr.addCodeArg=Vr.str=Vr._=Vr.nil=Vr._Code=Vr.Name=Vr.IDENTIFIER=Vr._CodeOrName=void 0;var mT=class{};Vr._CodeOrName=mT;Vr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var lA=class extends mT{constructor(t){if(super(),!Vr.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Vr.Name=lA;var Zc=class extends mT{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof lA&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Vr._Code=Zc;Vr.nil=new Zc("");function SOe(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});Su.ValueScope=Su.ValueScopeName=Su.Scope=Su.varKinds=Su.UsedValueState=void 0;var Eu=yT(),uY=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},dB;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(dB||(Su.UsedValueState=dB={}));Su.varKinds={const:new Eu.Name("const"),let:new Eu.Name("let"),var:new Eu.Name("var")};var fB=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof Eu.Name?t:this.name(t)}name(t){return new Eu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Su.Scope=fB;var pB=class extends Eu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,Eu._)`.${new Eu.Name(r)}[${n}]`}};Su.ValueScopeName=pB;var nzt=(0,Eu._)`\n`,cY=class extends fB{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?nzt:Eu.nil}}get(){return this._scope}name(t){return new pB(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(t),{prefix:s}=i,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[s];if(o){let l=o.get(a);if(l)return l}else o=this._values[s]=new Map;o.set(a,i);let u=this._scope[s]||(this._scope[s]=[]),c=u.length;return u[c]=r.ref,i.setValue(r,{property:s,itemIndex:c}),i}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Eu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(t,r,n={},i){let s=Eu.nil;for(let a in t){let o=t[a];if(!o)continue;let u=n[a]=n[a]||new Map;o.forEach(c=>{if(u.has(c))return;u.set(c,dB.Started);let l=r(c);if(l){let d=this.opts.es5?Su.varKinds.var:Su.varKinds.const;s=(0,Eu._)`${s}${d} ${c} = ${l};${this.opts._n}`}else if(l=i?.(c))s=(0,Eu._)`${s}${l}${this.opts._n}`;else throw new uY(c);u.set(c,dB.Completed)})}return s}};Su.ValueScope=cY});var Wt=b(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.or=tr.and=tr.not=tr.CodeGen=tr.operators=tr.varKinds=tr.ValueScopeName=tr.ValueScope=tr.Scope=tr.Name=tr.regexpCode=tr.stringify=tr.getProperty=tr.nil=tr.strConcat=tr.str=tr._=void 0;var wr=yT(),pd=lY(),sg=yT();Object.defineProperty(tr,"_",{enumerable:!0,get:function(){return sg._}});Object.defineProperty(tr,"str",{enumerable:!0,get:function(){return sg.str}});Object.defineProperty(tr,"strConcat",{enumerable:!0,get:function(){return sg.strConcat}});Object.defineProperty(tr,"nil",{enumerable:!0,get:function(){return sg.nil}});Object.defineProperty(tr,"getProperty",{enumerable:!0,get:function(){return sg.getProperty}});Object.defineProperty(tr,"stringify",{enumerable:!0,get:function(){return sg.stringify}});Object.defineProperty(tr,"regexpCode",{enumerable:!0,get:function(){return sg.regexpCode}});Object.defineProperty(tr,"Name",{enumerable:!0,get:function(){return sg.Name}});var yB=lY();Object.defineProperty(tr,"Scope",{enumerable:!0,get:function(){return yB.Scope}});Object.defineProperty(tr,"ValueScope",{enumerable:!0,get:function(){return yB.ValueScope}});Object.defineProperty(tr,"ValueScopeName",{enumerable:!0,get:function(){return yB.ValueScopeName}});Object.defineProperty(tr,"varKinds",{enumerable:!0,get:function(){return yB.varKinds}});tr.operators={GT:new wr._Code(">"),GTE:new wr._Code(">="),LT:new wr._Code("<"),LTE:new wr._Code("<="),EQ:new wr._Code("==="),NEQ:new wr._Code("!=="),NOT:new wr._Code("!"),OR:new wr._Code("||"),AND:new wr._Code("&&"),ADD:new wr._Code("+")};var wh=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},dY=class extends wh{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?pd.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=h1(this.rhs,t,r)),this}get names(){return this.rhs instanceof wr._CodeOrName?this.rhs.names:{}}},hB=class extends wh{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof wr.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=h1(this.rhs,t,r),this}get names(){let t=this.lhs instanceof wr.Name?{}:{...this.lhs.names};return gB(t,this.rhs)}},fY=class extends hB{constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},pY=class extends wh{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},hY=class extends wh{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},mY=class extends wh{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},gY=class extends wh{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=h1(this.code,t,r),this}get names(){return this.code instanceof wr._CodeOrName?this.code.names:{}}},_T=class extends wh{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(t,r)||(izt(t,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>pA(t,r.names),{})}},Ih=class extends _T{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},yY=class extends _T{},p1=class extends Ih{};p1.kind="else";var dA=class e extends Ih{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new p1(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(IOe(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=h1(this.condition,t,r),this}get names(){let t=super.names;return gB(t,this.condition),this.else&&pA(t,this.else.names),t}};dA.kind="if";var fA=class extends Ih{};fA.kind="for";var _Y=class extends fA{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=h1(this.iteration,t,r),this}get names(){return pA(super.names,this.iteration.names)}},AY=class extends fA{constructor(t,r,n,i){super(),this.varKind=t,this.name=r,this.from=n,this.to=i}render(t){let r=t.es5?pd.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(t)}get names(){let t=gB(super.names,this.from);return gB(t,this.to)}},mB=class extends fA{constructor(t,r,n,i){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=i}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=h1(this.iterable,t,r),this}get names(){return pA(super.names,this.iterable.names)}},AT=class extends Ih{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};AT.kind="func";var vT=class extends _T{render(t){return"return "+super.render(t)}};vT.kind="return";var vY=class extends Ih{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,i;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(i=this.finally)===null||i===void 0||i.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&pA(t,this.catch.names),this.finally&&pA(t,this.finally.names),t}},bT=class extends Ih{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};bT.kind="catch";var ET=class extends Ih{render(t){return"finally"+super.render(t)}};ET.kind="finally";var bY=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new pd.Scope({parent:t}),this._nodes=[new yY]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new dY(t,s,n)),s}const(t,r,n){return this._def(pd.varKinds.const,t,r,n)}let(t,r,n){return this._def(pd.varKinds.let,t,r,n)}var(t,r,n){return this._def(pd.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new hB(t,r,n))}add(t,r){return this._leafNode(new fY(t,tr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==wr.nil&&this._leafNode(new gY(t)),this}object(...t){let r=["{"];for(let[n,i]of t)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,wr.addCodeArg)(r,i));return r.push("}"),new wr._Code(r)}if(t,r,n){if(this._blockNode(new dA(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new dA(t))}else(){return this._elseNode(new p1)}endIf(){return this._endBlockNode(dA,p1)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new _Y(t),r)}forRange(t,r,n,i,s=this.opts.es5?pd.varKinds.var:pd.varKinds.let){let a=this._scope.toName(t);return this._for(new AY(s,a,r,n),()=>i(a))}forOf(t,r,n,i=pd.varKinds.const){let s=this._scope.toName(t);if(this.opts.es5){let a=r instanceof wr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,wr._)`${a}.length`,o=>{this.var(s,(0,wr._)`${a}[${o}]`),n(s)})}return this._for(new mB("of",i,s,r),()=>n(s))}forIn(t,r,n,i=this.opts.es5?pd.varKinds.var:pd.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,wr._)`Object.keys(${r})`,n);let s=this._scope.toName(t);return this._for(new mB("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(fA)}label(t){return this._leafNode(new pY(t))}break(t){return this._leafNode(new hY(t))}return(t){let r=new vT;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(vT)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new vY;if(this._blockNode(i),this.code(t),r){let s=this.name("e");this._currNode=i.catch=new bT(s),r(s)}return n&&(this._currNode=i.finally=new ET,this.code(n)),this._endBlockNode(bT,ET)}throw(t){return this._leafNode(new mY(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=wr.nil,n,i){return this._blockNode(new AT(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(AT)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof dA))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};tr.CodeGen=bY;function pA(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function gB(e,t){return t instanceof wr._CodeOrName?pA(e,t.names):e}function h1(e,t,r){if(e instanceof wr.Name)return n(e);if(!i(e))return e;return new wr._Code(e._items.reduce((s,a)=>(a instanceof wr.Name&&(a=n(a)),a instanceof wr._Code?s.push(...a._items):s.push(a),s),[]));function n(s){let a=r[s.str];return a===void 0||t[s.str]!==1?s:(delete t[s.str],a)}function i(s){return s instanceof wr._Code&&s._items.some(a=>a instanceof wr.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function izt(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function IOe(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,wr._)`!${EY(e)}`}tr.not=IOe;var szt=xOe(tr.operators.AND);function azt(...e){return e.reduce(szt)}tr.and=azt;var ozt=xOe(tr.operators.OR);function uzt(...e){return e.reduce(ozt)}tr.or=uzt;function xOe(e){return(t,r)=>t===wr.nil?r:r===wr.nil?t:(0,wr._)`${EY(t)} ${e} ${EY(r)}`}function EY(e){return e instanceof wr.Name?e:(0,wr._)`(${e})`}});var Pr=b(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.checkStrictMode=sr.getErrorPath=sr.Type=sr.useFunc=sr.setEvaluated=sr.evaluatedPropsToName=sr.mergeEvaluated=sr.eachItem=sr.unescapeJsonPointer=sr.escapeJsonPointer=sr.escapeFragment=sr.unescapeFragment=sr.schemaRefOrVal=sr.schemaHasRulesButRef=sr.schemaHasRules=sr.checkUnknownRules=sr.alwaysValidSchema=sr.toHash=void 0;var qn=Wt(),czt=yT();function lzt(e){let t={};for(let r of e)t[r]=!0;return t}sr.toHash=lzt;function dzt(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(NOe(e,t),!ROe(t,e.self.RULES.all))}sr.alwaysValidSchema=dzt;function NOe(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let i=n.RULES.keywords;for(let s in t)i[s]||OOe(e,`unknown keyword: "${s}"`)}sr.checkUnknownRules=NOe;function ROe(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}sr.schemaHasRules=ROe;function fzt(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}sr.schemaHasRulesButRef=fzt;function pzt({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,qn._)`${r}`}return(0,qn._)`${e}${t}${(0,qn.getProperty)(n)}`}sr.schemaRefOrVal=pzt;function hzt(e){return DOe(decodeURIComponent(e))}sr.unescapeFragment=hzt;function mzt(e){return encodeURIComponent(wY(e))}sr.escapeFragment=mzt;function wY(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}sr.escapeJsonPointer=wY;function DOe(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}sr.unescapeJsonPointer=DOe;function gzt(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}sr.eachItem=gzt;function COe({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,s,a,o)=>{let u=a===void 0?s:a instanceof qn.Name?(s instanceof qn.Name?e(i,s,a):t(i,s,a),a):s instanceof qn.Name?(t(i,a,s),s):r(s,a);return o===qn.Name&&!(u instanceof qn.Name)?n(i,u):u}}sr.mergeEvaluated={props:COe({mergeNames:(e,t,r)=>e.if((0,qn._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,qn._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,qn._)`${r} || {}`).code((0,qn._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,qn._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,qn._)`${r} || {}`),IY(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:kOe}),items:COe({mergeNames:(e,t,r)=>e.if((0,qn._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,qn._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,qn._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,qn._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function kOe(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,qn._)`{}`);return t!==void 0&&IY(e,r,t),r}sr.evaluatedPropsToName=kOe;function IY(e,t,r){Object.keys(r).forEach(n=>e.assign((0,qn._)`${t}${(0,qn.getProperty)(n)}`,!0))}sr.setEvaluated=IY;var TOe={};function yzt(e,t){return e.scopeValue("func",{ref:t,code:TOe[t.code]||(TOe[t.code]=new czt._Code(t.code))})}sr.useFunc=yzt;var SY;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(SY||(sr.Type=SY={}));function _zt(e,t,r){if(e instanceof qn.Name){let n=t===SY.Num;return r?n?(0,qn._)`"[" + ${e} + "]"`:(0,qn._)`"['" + ${e} + "']"`:n?(0,qn._)`"/" + ${e}`:(0,qn._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,qn.getProperty)(e).toString():"/"+wY(e)}sr.getErrorPath=_zt;function OOe(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}sr.checkStrictMode=OOe});var xh=b(xY=>{"use strict";Object.defineProperty(xY,"__esModule",{value:!0});var Ja=Wt(),Azt={data:new Ja.Name("data"),valCxt:new Ja.Name("valCxt"),instancePath:new Ja.Name("instancePath"),parentData:new Ja.Name("parentData"),parentDataProperty:new Ja.Name("parentDataProperty"),rootData:new Ja.Name("rootData"),dynamicAnchors:new Ja.Name("dynamicAnchors"),vErrors:new Ja.Name("vErrors"),errors:new Ja.Name("errors"),this:new Ja.Name("this"),self:new Ja.Name("self"),scope:new Ja.Name("scope"),json:new Ja.Name("json"),jsonPos:new Ja.Name("jsonPos"),jsonLen:new Ja.Name("jsonLen"),jsonPart:new Ja.Name("jsonPart")};xY.default=Azt});var ST=b(Za=>{"use strict";Object.defineProperty(Za,"__esModule",{value:!0});Za.extendErrors=Za.resetErrorsCount=Za.reportExtraError=Za.reportError=Za.keyword$DataError=Za.keywordError=void 0;var Mr=Wt(),_B=Pr(),Vo=xh();Za.keywordError={message:({keyword:e})=>(0,Mr.str)`must pass "${e}" keyword validation`};Za.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,Mr.str)`"${e}" keyword must be ${t} ($data)`:(0,Mr.str)`"${e}" keyword is invalid ($data)`};function vzt(e,t=Za.keywordError,r,n){let{it:i}=e,{gen:s,compositeRule:a,allErrors:o}=i,u=LOe(e,t,r);n??(a||o)?POe(s,u):MOe(i,(0,Mr._)`[${u}]`)}Za.reportError=vzt;function bzt(e,t=Za.keywordError,r){let{it:n}=e,{gen:i,compositeRule:s,allErrors:a}=n,o=LOe(e,t,r);POe(i,o),s||a||MOe(n,Vo.default.vErrors)}Za.reportExtraError=bzt;function Ezt(e,t){e.assign(Vo.default.errors,t),e.if((0,Mr._)`${Vo.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,Mr._)`${Vo.default.vErrors}.length`,t),()=>e.assign(Vo.default.vErrors,null)))}Za.resetErrorsCount=Ezt;function Szt({gen:e,keyword:t,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",i,Vo.default.errors,o=>{e.const(a,(0,Mr._)`${Vo.default.vErrors}[${o}]`),e.if((0,Mr._)`${a}.instancePath === undefined`,()=>e.assign((0,Mr._)`${a}.instancePath`,(0,Mr.strConcat)(Vo.default.instancePath,s.errorPath))),e.assign((0,Mr._)`${a}.schemaPath`,(0,Mr.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,Mr._)`${a}.schema`,r),e.assign((0,Mr._)`${a}.data`,n))})}Za.extendErrors=Szt;function POe(e,t){let r=e.const("err",t);e.if((0,Mr._)`${Vo.default.vErrors} === null`,()=>e.assign(Vo.default.vErrors,(0,Mr._)`[${r}]`),(0,Mr._)`${Vo.default.vErrors}.push(${r})`),e.code((0,Mr._)`${Vo.default.errors}++`)}function MOe(e,t){let{gen:r,validateName:n,schemaEnv:i}=e;i.$async?r.throw((0,Mr._)`new ${e.ValidationError}(${t})`):(r.assign((0,Mr._)`${n}.errors`,t),r.return(!1))}var hA={keyword:new Mr.Name("keyword"),schemaPath:new Mr.Name("schemaPath"),params:new Mr.Name("params"),propertyName:new Mr.Name("propertyName"),message:new Mr.Name("message"),schema:new Mr.Name("schema"),parentSchema:new Mr.Name("parentSchema")};function LOe(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,Mr._)`{}`:wzt(e,t,r)}function wzt(e,t,r={}){let{gen:n,it:i}=e,s=[Izt(i,r),xzt(e,r)];return Czt(e,t,s),n.object(...s)}function Izt({errorPath:e},{instancePath:t}){let r=t?(0,Mr.str)`${e}${(0,_B.getErrorPath)(t,_B.Type.Str)}`:e;return[Vo.default.instancePath,(0,Mr.strConcat)(Vo.default.instancePath,r)]}function xzt({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let i=n?t:(0,Mr.str)`${t}/${e}`;return r&&(i=(0,Mr.str)`${i}${(0,_B.getErrorPath)(r,_B.Type.Str)}`),[hA.schemaPath,i]}function Czt(e,{params:t,message:r},n){let{keyword:i,data:s,schemaValue:a,it:o}=e,{opts:u,propertyName:c,topSchemaRef:l,schemaPath:d}=o;n.push([hA.keyword,i],[hA.params,typeof t=="function"?t(e):t||(0,Mr._)`{}`]),u.messages&&n.push([hA.message,typeof r=="function"?r(e):r]),u.verbose&&n.push([hA.schema,a],[hA.parentSchema,(0,Mr._)`${l}${d}`],[Vo.default.data,s]),c&&n.push([hA.propertyName,c])}});var $Oe=b(m1=>{"use strict";Object.defineProperty(m1,"__esModule",{value:!0});m1.boolOrEmptySchema=m1.topBoolOrEmptySchema=void 0;var Tzt=ST(),Nzt=Wt(),Rzt=xh(),Dzt={message:"boolean schema is false"};function kzt(e){let{gen:t,schema:r,validateName:n}=e;r===!1?BOe(e,!1):typeof r=="object"&&r.$async===!0?t.return(Rzt.default.data):(t.assign((0,Nzt._)`${n}.errors`,null),t.return(!0))}m1.topBoolOrEmptySchema=kzt;function Ozt(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),BOe(e)):r.var(t,!0)}m1.boolOrEmptySchema=Ozt;function BOe(e,t){let{gen:r,data:n}=e,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,Tzt.reportError)(i,Dzt,void 0,t)}});var CY=b(g1=>{"use strict";Object.defineProperty(g1,"__esModule",{value:!0});g1.getRules=g1.isJSONType=void 0;var Pzt=["string","number","integer","boolean","null","object","array"],Mzt=new Set(Pzt);function Lzt(e){return typeof e=="string"&&Mzt.has(e)}g1.isJSONType=Lzt;function Bzt(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}g1.getRules=Bzt});var TY=b(ag=>{"use strict";Object.defineProperty(ag,"__esModule",{value:!0});ag.shouldUseRule=ag.shouldUseGroup=ag.schemaHasRulesForType=void 0;function $zt({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&FOe(e,n)}ag.schemaHasRulesForType=$zt;function FOe(e,t){return t.rules.some(r=>UOe(e,r))}ag.shouldUseGroup=FOe;function UOe(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}ag.shouldUseRule=UOe});var wT=b(eo=>{"use strict";Object.defineProperty(eo,"__esModule",{value:!0});eo.reportTypeError=eo.checkDataTypes=eo.checkDataType=eo.coerceAndCheckDataType=eo.getJSONTypes=eo.getSchemaTypes=eo.DataType=void 0;var Fzt=CY(),Uzt=TY(),qzt=ST(),Vt=Wt(),qOe=Pr(),y1;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(y1||(eo.DataType=y1={}));function jzt(e){let t=jOe(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}eo.getSchemaTypes=jzt;function jOe(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Fzt.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}eo.getJSONTypes=jOe;function Hzt(e,t){let{gen:r,data:n,opts:i}=e,s=Kzt(t,i.coerceTypes),a=t.length>0&&!(s.length===0&&t.length===1&&(0,Uzt.schemaHasRulesForType)(e,t[0]));if(a){let o=RY(t,n,i.strictNumbers,y1.Wrong);r.if(o,()=>{s.length?Vzt(e,t,s):DY(e)})}return a}eo.coerceAndCheckDataType=Hzt;var HOe=new Set(["string","number","integer","boolean","null"]);function Kzt(e,t){return t?e.filter(r=>HOe.has(r)||t==="array"&&r==="array"):[]}function Vzt(e,t,r){let{gen:n,data:i,opts:s}=e,a=n.let("dataType",(0,Vt._)`typeof ${i}`),o=n.let("coerced",(0,Vt._)`undefined`);s.coerceTypes==="array"&&n.if((0,Vt._)`${a} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,Vt._)`${i}[0]`).assign(a,(0,Vt._)`typeof ${i}`).if(RY(t,i,s.strictNumbers),()=>n.assign(o,i))),n.if((0,Vt._)`${o} !== undefined`);for(let c of r)(HOe.has(c)||c==="array"&&s.coerceTypes==="array")&&u(c);n.else(),DY(e),n.endIf(),n.if((0,Vt._)`${o} !== undefined`,()=>{n.assign(i,o),zzt(e,o)});function u(c){switch(c){case"string":n.elseIf((0,Vt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Vt._)`"" + ${i}`).elseIf((0,Vt._)`${i} === null`).assign(o,(0,Vt._)`""`);return;case"number":n.elseIf((0,Vt._)`${a} == "boolean" || ${i} === null - || (${a} == "string" && ${i} && ${i} == +${i})`).assign(o,(0,Vt._)`+${i}`);return;case"integer":n.elseIf((0,Vt._)`${a} === "boolean" || ${i} === null - || (${a} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(o,(0,Vt._)`+${i}`);return;case"boolean":n.elseIf((0,Vt._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(o,!1).elseIf((0,Vt._)`${i} === "true" || ${i} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Vt._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Vt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${i} === null`).assign(o,(0,Vt._)`[${i}]`)}}}function zzt({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Vt._)`${t} !== undefined`,()=>e.assign((0,Vt._)`${t}[${r}]`,n))}function NY(e,t,r,n=y1.Correct){let i=n===y1.Correct?Vt.operators.EQ:Vt.operators.NEQ,s;switch(e){case"null":return(0,Vt._)`${t} ${i} null`;case"array":s=(0,Vt._)`Array.isArray(${t})`;break;case"object":s=(0,Vt._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=a((0,Vt._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=a();break;default:return(0,Vt._)`typeof ${t} ${i} ${e}`}return n===y1.Correct?s:(0,Vt.not)(s);function a(o=Vt.nil){return(0,Vt.and)((0,Vt._)`typeof ${t} == "number"`,o,r?(0,Vt._)`isFinite(${t})`:Vt.nil)}}eo.checkDataType=NY;function RY(e,t,r,n){if(e.length===1)return NY(e[0],t,r,n);let i,s=(0,qOe.toHash)(e);if(s.array&&s.object){let a=(0,Vt._)`typeof ${t} != "object"`;i=s.null?a:(0,Vt._)`!${t} || ${a}`,delete s.null,delete s.array,delete s.object}else i=Vt.nil;s.number&&delete s.integer;for(let a in s)i=(0,Vt.and)(i,NY(a,t,r,n));return i}eo.checkDataTypes=RY;var Qzt={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Vt._)`{type: ${e}}`:(0,Vt._)`{type: ${t}}`};function DY(e){let t=Gzt(e);(0,qzt.reportError)(t,Qzt)}eo.reportTypeError=DY;function Gzt(e){let{gen:t,data:r,schema:n}=e,i=(0,qOe.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var VOe=b(AB=>{"use strict";Object.defineProperty(AB,"__esModule",{value:!0});AB.assignDefaults=void 0;var _1=Wt(),Yzt=Pr();function Wzt(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)KOe(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,s)=>KOe(e,s,i.default))}AB.assignDefaults=Wzt;function KOe(e,t,r){let{gen:n,compositeRule:i,data:s,opts:a}=e;if(r===void 0)return;let o=(0,_1._)`${s}${(0,_1.getProperty)(t)}`;if(i){(0,Yzt.checkStrictMode)(e,`default is ignored for: ${o}`);return}let u=(0,_1._)`${o} === undefined`;a.useDefaults==="empty"&&(u=(0,_1._)`${u} || ${o} === null || ${o} === ""`),n.if(u,(0,_1._)`${o} = ${(0,_1.stringify)(r)}`)}});var el=b(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.validateUnion=In.validateArray=In.usePattern=In.callValidateCode=In.schemaProperties=In.allSchemaProperties=In.noPropertyInData=In.propertyInData=In.isOwnProperty=In.hasPropFunc=In.reportMissingProp=In.checkMissingProp=In.checkReportMissingProp=void 0;var ri=Wt(),kY=Pr(),og=xh(),Xzt=Pr();function Jzt(e,t){let{gen:r,data:n,it:i}=e;r.if(PY(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,ri._)`${t}`},!0),e.error()})}In.checkReportMissingProp=Jzt;function Zzt({gen:e,data:t,it:{opts:r}},n,i){return(0,ri.or)(...n.map(s=>(0,ri.and)(PY(e,t,s,r.ownProperties),(0,ri._)`${i} = ${s}`)))}In.checkMissingProp=Zzt;function eQt(e,t){e.setParams({missingProperty:t},!0),e.error()}In.reportMissingProp=eQt;function zOe(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ri._)`Object.prototype.hasOwnProperty`})}In.hasPropFunc=zOe;function OY(e,t,r){return(0,ri._)`${zOe(e)}.call(${t}, ${r})`}In.isOwnProperty=OY;function tQt(e,t,r,n){let i=(0,ri._)`${t}${(0,ri.getProperty)(r)} !== undefined`;return n?(0,ri._)`${i} && ${OY(e,t,r)}`:i}In.propertyInData=tQt;function PY(e,t,r,n){let i=(0,ri._)`${t}${(0,ri.getProperty)(r)} === undefined`;return n?(0,ri.or)(i,(0,ri.not)(OY(e,t,r))):i}In.noPropertyInData=PY;function QOe(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}In.allSchemaProperties=QOe;function rQt(e,t){return QOe(t).filter(r=>!(0,kY.alwaysValidSchema)(e,t[r]))}In.schemaProperties=rQt;function nQt({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:a},o,u,c){let l=c?(0,ri._)`${e}, ${t}, ${n}${i}`:t,d=[[og.default.instancePath,(0,ri.strConcat)(og.default.instancePath,s)],[og.default.parentData,a.parentData],[og.default.parentDataProperty,a.parentDataProperty],[og.default.rootData,og.default.rootData]];a.opts.dynamicRef&&d.push([og.default.dynamicAnchors,og.default.dynamicAnchors]);let f=(0,ri._)`${l}, ${r.object(...d)}`;return u!==ri.nil?(0,ri._)`${o}.call(${u}, ${f})`:(0,ri._)`${o}(${f})`}In.callValidateCode=nQt;var iQt=(0,ri._)`new RegExp`;function sQt({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:i}=t.code,s=i(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,ri._)`${i.code==="new RegExp"?iQt:(0,Xzt.useFunc)(e,i)}(${r}, ${n})`})}In.usePattern=sQt;function aQt(e){let{gen:t,data:r,keyword:n,it:i}=e,s=t.name("valid");if(i.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(s,!0),a(()=>t.break()),s;function a(o){let u=t.const("len",(0,ri._)`${r}.length`);t.forRange("i",0,u,c=>{e.subschema({keyword:n,dataProp:c,dataPropType:kY.Type.Num},s),t.if((0,ri.not)(s),o)})}}In.validateArray=aQt;function oQt(e){let{gen:t,schema:r,keyword:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0,kY.alwaysValidSchema)(i,u))&&!i.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((u,c)=>{let l=e.subschema({keyword:n,schemaProp:c,compositeRule:!0},o);t.assign(a,(0,ri._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,ri.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}In.validateUnion=oQt});var WOe=b(Pf=>{"use strict";Object.defineProperty(Pf,"__esModule",{value:!0});Pf.validateKeywordUsage=Pf.validSchemaType=Pf.funcKeywordCode=Pf.macroKeywordCode=void 0;var zo=Wt(),mA=xh(),uQt=el(),cQt=ST();function lQt(e,t){let{gen:r,keyword:n,schema:i,parentSchema:s,it:a}=e,o=t.macro.call(a.self,i,s,a),u=YOe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let c=r.name("valid");e.subschema({schema:o,schemaPath:zo.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:!0},c),e.pass(c,()=>e.error(!0))}Pf.macroKeywordCode=lQt;function dQt(e,t){var r;let{gen:n,keyword:i,schema:s,parentSchema:a,$data:o,it:u}=e;pQt(u,t);let c=!o&&t.compile?t.compile.call(u.self,s,a,u):t.validate,l=YOe(n,i,c),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&GOe(e),y(()=>e.error());else{let g=t.async?p():h();t.modifying&&GOe(e),y(()=>fQt(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>m((0,zo._)`await `),v=>n.assign(d,!1).if((0,zo._)`${v} instanceof ${u.ValidationError}`,()=>n.assign(g,(0,zo._)`${v}.errors`),()=>n.throw(v))),g}function h(){let g=(0,zo._)`${l}.errors`;return n.assign(g,null),m(zo.nil),g}function m(g=t.async?(0,zo._)`await `:zo.nil){let v=u.opts.passContext?mA.default.this:mA.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,zo._)`${g}${(0,uQt.callValidateCode)(e,l,v,A)}`,t.modifying)}function y(g){var v;n.if((0,zo.not)((v=t.valid)!==null&&v!==void 0?v:d),g)}}Pf.funcKeywordCode=dQt;function GOe(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,zo._)`${n.parentData}[${n.parentDataProperty}]`))}function fQt(e,t){let{gen:r}=e;r.if((0,zo._)`Array.isArray(${t})`,()=>{r.assign(mA.default.vErrors,(0,zo._)`${mA.default.vErrors} === null ? ${t} : ${mA.default.vErrors}.concat(${t})`).assign(mA.default.errors,(0,zo._)`${mA.default.vErrors}.length`),(0,cQt.extendErrors)(e)},()=>e.error())}function pQt({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function YOe(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,zo.stringify)(r)})}function hQt(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Pf.validSchemaType=hQt;function mQt({schema:e,opts:t,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let a=i.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${s}: ${a.join(",")}`);if(i.validateSchema&&!i.validateSchema(e[s])){let u=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Pf.validateKeywordUsage=mQt});var JOe=b(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});ug.extendSubschemaMode=ug.extendSubschemaData=ug.getSubschema=void 0;var Mf=Wt(),XOe=Pr();function gQt(e,{keyword:t,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,Mf._)`${e.schemaPath}${(0,Mf.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,Mf._)`${e.schemaPath}${(0,Mf.getProperty)(t)}${(0,Mf.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,XOe.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:a,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}ug.getSubschema=gQt;function yQt(e,t,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:a}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:c,dataPathArr:l,opts:d}=t,f=o.let("data",(0,Mf._)`${t.data}${(0,Mf.getProperty)(r)}`,!0);u(f),e.errorPath=(0,Mf.str)`${c}${(0,XOe.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,Mf._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(i!==void 0){let c=i instanceof Mf.Name?i:o.let("data",i,!0);u(c),a!==void 0&&(e.propertyName=a)}s&&(e.dataTypes=s);function u(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c]}}ug.extendSubschemaData=yQt;function _Qt(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(e.compositeRule=n),i!==void 0&&(e.createErrors=i),s!==void 0&&(e.allErrors=s),e.jtdDiscriminator=t,e.jtdMetadata=r}ug.extendSubschemaMode=_Qt});var tl=b((sxn,ZOe)=>{"use strict";ZOe.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,i,s;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(i=n;i--!==0;)if(!e(t[i],r[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(s=Object.keys(t),n=s.length,n!==Object.keys(r).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=n;i--!==0;){var a=s[i];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r}});var tPe=b((axn,ePe)=>{"use strict";var cg=ePe.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};vB(t,n,i,e,"",e)};cg.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};cg.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};cg.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};cg.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function vB(e,t,r,n,i,s,a,o,u,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,i,s,a,o,u,c);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in cg.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(wu,"__esModule",{value:!0});wu.getSchemaRefs=wu.resolveUrl=wu.normalizeId=wu._getFullPath=wu.getFullPath=wu.inlineRef=void 0;var vQt=Pr(),bQt=tl(),EQt=tPe(),SQt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function wQt(e,t=!0){return typeof e=="boolean"?!0:t===!0?!MY(e):t?rPe(e)<=t:!1}wu.inlineRef=wQt;var IQt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function MY(e){for(let t in e){if(IQt.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(MY)||typeof r=="object"&&MY(r))return!0}return!1}function rPe(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!SQt.has(r)&&(typeof e[r]=="object"&&(0,vQt.eachItem)(e[r],n=>t+=rPe(n)),t===1/0))return 1/0}return t}function nPe(e,t="",r){r!==!1&&(t=A1(t));let n=e.parse(t);return iPe(e,n)}wu.getFullPath=nPe;function iPe(e,t){return e.serialize(t).split("#")[0]+"#"}wu._getFullPath=iPe;var xQt=/#\/?$/;function A1(e){return e?e.replace(xQt,""):""}wu.normalizeId=A1;function CQt(e,t,r){return r=A1(r),e.resolve(t,r)}wu.resolveUrl=CQt;var TQt=/^[a-z_][-a-z0-9._]*$/i;function NQt(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=A1(e[r]||t),s={"":i},a=nPe(n,i,!1),o={},u=new Set;return EQt(e,{allKeys:!0},(d,f,p,h)=>{if(h===void 0)return;let m=a+f,y=s[h];typeof d[r]=="string"&&(y=g.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[f]=y;function g(A){let _=this.opts.uriResolver.resolve;if(A=A1(y?_(y,A):A),u.has(A))throw l(A);u.add(A);let E=this.refs[A];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?c(d,E.schema,A):A!==A1(m)&&(A[0]==="#"?(c(d,o[A],A),o[A]=d):this.refs[A]=m),A}function v(A){if(typeof A=="string"){if(!TQt.test(A))throw new Error(`invalid anchor "${A}"`);g.call(this,`#${A}`)}}}),o;function c(d,f,p){if(f!==void 0&&!bQt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}wu.getSchemaRefs=NQt});var TT=b(lg=>{"use strict";Object.defineProperty(lg,"__esModule",{value:!0});lg.getData=lg.KeywordCxt=lg.validateFunctionCode=void 0;var cPe=$Oe(),sPe=wT(),BY=TY(),bB=wT(),RQt=VOe(),CT=WOe(),LY=JOe(),ut=Wt(),Rt=xh(),DQt=IT(),Ch=Pr(),xT=ST();function kQt(e){if(fPe(e)&&(pPe(e),dPe(e))){MQt(e);return}lPe(e,()=>(0,cPe.topBoolOrEmptySchema)(e))}lg.validateFunctionCode=kQt;function lPe({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},s){i.code.es5?e.func(t,(0,ut._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{e.code((0,ut._)`"use strict"; ${aPe(r,i)}`),PQt(e,i),e.code(s)}):e.func(t,(0,ut._)`${Rt.default.data}, ${OQt(i)}`,n.$async,()=>e.code(aPe(r,i)).code(s))}function OQt(e){return(0,ut._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${e.dynamicRef?(0,ut._)`, ${Rt.default.dynamicAnchors}={}`:ut.nil}}={}`}function PQt(e,t){e.if(Rt.default.valCxt,()=>{e.var(Rt.default.instancePath,(0,ut._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),e.var(Rt.default.parentData,(0,ut._)`${Rt.default.valCxt}.${Rt.default.parentData}`),e.var(Rt.default.parentDataProperty,(0,ut._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),e.var(Rt.default.rootData,(0,ut._)`${Rt.default.valCxt}.${Rt.default.rootData}`),t.dynamicRef&&e.var(Rt.default.dynamicAnchors,(0,ut._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{e.var(Rt.default.instancePath,(0,ut._)`""`),e.var(Rt.default.parentData,(0,ut._)`undefined`),e.var(Rt.default.parentDataProperty,(0,ut._)`undefined`),e.var(Rt.default.rootData,Rt.default.data),t.dynamicRef&&e.var(Rt.default.dynamicAnchors,(0,ut._)`{}`)})}function MQt(e){let{schema:t,opts:r,gen:n}=e;lPe(e,()=>{r.$comment&&t.$comment&&mPe(e),UQt(e),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&LQt(e),hPe(e),HQt(e)})}function LQt(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,ut._)`${r}.evaluated`),t.if((0,ut._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,ut._)`${e.evaluated}.props`,(0,ut._)`undefined`)),t.if((0,ut._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,ut._)`${e.evaluated}.items`,(0,ut._)`undefined`))}function aPe(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,ut._)`/*# sourceURL=${r} */`:ut.nil}function BQt(e,t){if(fPe(e)&&(pPe(e),dPe(e))){$Qt(e,t);return}(0,cPe.boolOrEmptySchema)(e,t)}function dPe({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function fPe(e){return typeof e.schema!="boolean"}function $Qt(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&mPe(e),qQt(e),jQt(e);let s=n.const("_errs",Rt.default.errors);hPe(e,s),n.var(t,(0,ut._)`${s} === ${Rt.default.errors}`)}function pPe(e){(0,Ch.checkUnknownRules)(e),FQt(e)}function hPe(e,t){if(e.opts.jtd)return oPe(e,[],!1,t);let r=(0,sPe.getSchemaTypes)(e.schema),n=(0,sPe.coerceAndCheckDataType)(e,r);oPe(e,r,!n,t)}function FQt(e){let{schema:t,errSchemaPath:r,opts:n,self:i}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,Ch.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function UQt(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ch.checkStrictMode)(e,"default is ignored in the schema root")}function qQt(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,DQt.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function jQt(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function mPe({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)e.code((0,ut._)`${Rt.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let a=(0,ut.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,ut._)`${Rt.default.self}.opts.$comment(${s}, ${a}, ${o}.schema)`)}}function HQt(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=e;r.$async?t.if((0,ut._)`${Rt.default.errors} === 0`,()=>t.return(Rt.default.data),()=>t.throw((0,ut._)`new ${i}(${Rt.default.vErrors})`)):(t.assign((0,ut._)`${n}.errors`,Rt.default.vErrors),s.unevaluated&&KQt(e),t.return((0,ut._)`${Rt.default.errors} === 0`))}function KQt({gen:e,evaluated:t,props:r,items:n}){r instanceof ut.Name&&e.assign((0,ut._)`${t}.props`,r),n instanceof ut.Name&&e.assign((0,ut._)`${t}.items`,n)}function oPe(e,t,r,n){let{gen:i,schema:s,data:a,allErrors:o,opts:u,self:c}=e,{RULES:l}=c;if(s.$ref&&(u.ignoreKeywordsWithRef||!(0,Ch.schemaHasRulesButRef)(s,l))){i.block(()=>yPe(e,"$ref",l.all.$ref.definition));return}u.jtd||VQt(e,t),i.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,BY.shouldUseGroup)(s,f)&&(f.type?(i.if((0,bB.checkDataType)(f.type,a,u.strictNumbers)),uPe(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,bB.reportTypeError)(e)),i.endIf()):uPe(e,f),o||i.if((0,ut._)`${Rt.default.errors} === ${n||0}`))}}function uPe(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,RQt.assignDefaults)(e,t.type),r.block(()=>{for(let s of t.rules)(0,BY.shouldUseRule)(n,s)&&yPe(e,s.keyword,s.definition,t.type)})}function VQt(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(zQt(e,t),e.opts.allowUnionTypes||QQt(e,t),GQt(e,e.dataTypes))}function zQt(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{gPe(e.dataTypes,r)||$Y(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),WQt(e,t)}}function QQt(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&$Y(e,"use allowUnionTypes to allow union type keyword")}function GQt(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,BY.shouldUseRule)(e.schema,i)){let{type:s}=i.definition;s.length&&!s.some(a=>YQt(t,a))&&$Y(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function YQt(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function gPe(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function WQt(e,t){let r=[];for(let n of e.dataTypes)gPe(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function $Y(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Ch.checkStrictMode)(e,t,e.opts.strictTypes)}var EB=class{constructor(t,r,n){if((0,CT.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ch.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",_Pe(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,CT.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",Rt.default.errors))}result(t,r,n){this.failResult((0,ut.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,ut.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,ut._)`${r} !== undefined && (${(0,ut.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?xT.reportExtraError:xT.reportError)(this,this.def.error,r)}$dataError(){(0,xT.reportError)(this,this.def.$dataError||xT.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,xT.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=ut.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=ut.nil,r=ut.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:a}=this;n.if((0,ut.or)((0,ut._)`${i} === undefined`,r)),t!==ut.nil&&n.assign(t,!0),(s.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==ut.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,ut.or)(a(),o());function a(){if(n.length){if(!(r instanceof ut.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return(0,ut._)`${(0,bB.checkDataTypes)(u,r,s.opts.strictNumbers,bB.DataType.Wrong)}`}return ut.nil}function o(){if(i.validateSchema){let u=t.scopeValue("validate$data",{ref:i.validateSchema});return(0,ut._)`!${u}(${r})`}return ut.nil}}subschema(t,r){let n=(0,LY.getSubschema)(this.it,t);(0,LY.extendSubschemaData)(n,this.it,t),(0,LY.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return BQt(i,r),i}mergeEvaluated(t,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=Ch.mergeEvaluated.props(i,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=Ch.mergeEvaluated.items(i,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(t,ut.Name)),!0}};lg.KeywordCxt=EB;function yPe(e,t,r,n){let i=new EB(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,CT.funcKeywordCode)(i,r):"macro"in r?(0,CT.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,CT.funcKeywordCode)(i,r)}var XQt=/^\/(?:[^~]|~0|~1)*$/,JQt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _Pe(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,s;if(e==="")return Rt.default.rootData;if(e[0]==="/"){if(!XQt.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,s=Rt.default.rootData}else{let c=JQt.exec(e);if(!c)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+c[1];if(i=c[2],i==="#"){if(l>=t)throw new Error(u("property/index",l));return n[t-l]}if(l>t)throw new Error(u("data",l));if(s=r[t-l],!i)return s}let a=s,o=i.split("/");for(let c of o)c&&(s=(0,ut._)`${s}${(0,ut.getProperty)((0,Ch.unescapeJsonPointer)(c))}`,a=(0,ut._)`${a} && ${s}`);return a;function u(c,l){return`Cannot access ${c} ${l} levels up, current level is ${t}`}}lg.getData=_Pe});var SB=b(UY=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});var FY=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};UY.default=FY});var NT=b(HY=>{"use strict";Object.defineProperty(HY,"__esModule",{value:!0});var qY=IT(),jY=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,qY.resolveUrl)(t,r,n),this.missingSchema=(0,qY.normalizeId)((0,qY.getFullPath)(t,this.missingRef))}};HY.default=jY});var IB=b(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});rl.resolveSchema=rl.getCompilingSchema=rl.resolveRef=rl.compileSchema=rl.SchemaEnv=void 0;var hd=Wt(),ZQt=SB(),gA=xh(),md=IT(),APe=Pr(),eGt=TT(),v1=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,md.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};rl.SchemaEnv=v1;function VY(e){let t=vPe.call(this,e);if(t)return t;let r=(0,md.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,a=new hd.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),o;e.$async&&(o=a.scopeValue("Error",{ref:ZQt.default,code:(0,hd._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");e.validateName=u;let c={gen:a,allErrors:this.opts.allErrors,data:gA.default.data,parentData:gA.default.parentData,parentDataProperty:gA.default.parentDataProperty,dataNames:[gA.default.data],dataPathArr:[hd.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,hd.stringify)(e.schema)}:{ref:e.schema}),validateName:u,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:hd.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,hd._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,eGt.validateFunctionCode)(c),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(gA.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let p=new Function(`${gA.default.self}`,`${gA.default.scope}`,l)(this,this.scope.get());if(this.scope.value(u,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:u,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:h,items:m}=c;p.evaluated={props:h instanceof hd.Name?void 0:h,items:m instanceof hd.Name?void 0:m,dynamicProps:h instanceof hd.Name,dynamicItems:m instanceof hd.Name},p.source&&(p.source.evaluated=(0,hd.stringify)(p.evaluated))}return e.validate=p,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}rl.compileSchema=VY;function tGt(e,t,r){var n;r=(0,md.resolveUrl)(this.opts.uriResolver,t,r);let i=e.refs[r];if(i)return i;let s=iGt.call(this,e,r);if(s===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(s=new v1({schema:a,schemaId:o,root:e,baseId:t}))}if(s!==void 0)return e.refs[r]=rGt.call(this,s)}rl.resolveRef=tGt;function rGt(e){return(0,md.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:VY.call(this,e)}function vPe(e){for(let t of this._compilations)if(nGt(t,e))return t}rl.getCompilingSchema=vPe;function nGt(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function iGt(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||wB.call(this,e,t)}function wB(e,t){let r=this.opts.uriResolver.parse(t),n=(0,md._getFullPath)(this.opts.uriResolver,r),i=(0,md.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===i)return KY.call(this,r,e);let s=(0,md.normalizeId)(n),a=this.refs[s]||this.schemas[s];if(typeof a=="string"){let o=wB.call(this,e,a);return typeof o?.schema!="object"?void 0:KY.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||VY.call(this,a),s===(0,md.normalizeId)(t)){let{schema:o}=a,{schemaId:u}=this.opts,c=o[u];return c&&(i=(0,md.resolveUrl)(this.opts.uriResolver,i,c)),new v1({schema:o,schemaId:u,root:e,baseId:i})}return KY.call(this,r,a)}}rl.resolveSchema=wB;var sGt=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function KY(e,{baseId:t,schema:r,root:n}){var i;if(((i=e.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0,APe.unescapeFragment)(o)];if(u===void 0)return;r=u;let c=typeof r=="object"&&r[this.opts.schemaId];!sGt.has(o)&&c&&(t=(0,md.resolveUrl)(this.opts.uriResolver,t,c))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,APe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,md.resolveUrl)(this.opts.uriResolver,t,r.$ref);s=wB.call(this,n,o)}let{schemaId:a}=this.opts;if(s=s||new v1({schema:r,schemaId:a,root:n,baseId:t}),s.schema!==s.root.schema)return s}});var bPe=b((fxn,aGt)=>{aGt.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var QY=b((pxn,IPe)=>{"use strict";var oGt=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),SPe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function zY(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var uGt=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function EPe(e){return e.length=0,!0}function cGt(e,t,r){if(e.length){let n=zY(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function lGt(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,a=!1,o=cGt;for(let u=0;u7){r.error=!0;break}u>0&&e[u-1]===":"&&(s=!0),n.push(":");continue}else if(c==="%"){if(!o(i,n,r))break;o=EPe}else{i.push(c);continue}}return i.length&&(o===EPe?r.zone=i.join(""):a?n.push(i.join("")):n.push(zY(i))),r.address=n.join(""),r}function wPe(e){if(dGt(e,":")<2)return{host:e,isIPV6:!1};let t=lGt(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function dGt(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:mGt}=QY(),gGt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,yGt=["http","https","ws","wss","urn","urn:uuid"];function _Gt(e){return yGt.indexOf(e)!==-1}function GY(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function xPe(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function CPe(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function AGt(e){return e.secure=GY(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function vGt(e){if((e.port===(GY(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function bGt(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(gGt);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let i=`${n}:${t.nid||e.nid}`,s=YY(i);e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function EGt(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),i=`${r}:${t.nid||n}`,s=YY(i);s&&(e=s.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function SGt(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!mGt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function wGt(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var TPe={scheme:"http",domainHost:!0,parse:xPe,serialize:CPe},IGt={scheme:"https",domainHost:TPe.domainHost,parse:xPe,serialize:CPe},xB={scheme:"ws",domainHost:!0,parse:AGt,serialize:vGt},xGt={scheme:"wss",domainHost:xB.domainHost,parse:xB.parse,serialize:xB.serialize},CGt={scheme:"urn",parse:bGt,serialize:EGt,skipNormalize:!0},TGt={scheme:"urn:uuid",parse:SGt,serialize:wGt,skipNormalize:!0},CB={http:TPe,https:IGt,ws:xB,wss:xGt,urn:CGt,"urn:uuid":TGt};Object.setPrototypeOf(CB,null);function YY(e){return e&&(CB[e]||CB[e.toLowerCase()])||void 0}NPe.exports={wsIsSecure:GY,SCHEMES:CB,isValidSchemeName:_Gt,getSchemeHandler:YY}});var OPe=b((mxn,NB)=>{"use strict";var{normalizeIPv6:NGt,removeDotSegments:RT,recomposeAuthority:RGt,normalizeComponentEncoding:TB,isIPv4:DGt,nonSimpleDomain:kGt}=QY(),{SCHEMES:OGt,getSchemeHandler:DPe}=RPe();function PGt(e,t){return typeof e=="string"?e=Lf(Th(e,t),t):typeof e=="object"&&(e=Th(Lf(e,t),t)),e}function MGt(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=kPe(Th(e,n),Th(t,n),n,!0);return n.skipEscape=!0,Lf(i,n)}function kPe(e,t,r,n){let i={};return n||(e=Th(Lf(e,r),r),t=Th(Lf(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(i.scheme=t.scheme,i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=RT(t.path||""),i.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=RT(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=RT(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?i.path="/"+t.path:e.path?i.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:i.path=t.path,i.path=RT(i.path)),i.query=t.query):(i.path=e.path,t.query!==void 0?i.query=t.query:i.query=e.query),i.userinfo=e.userinfo,i.host=e.host,i.port=e.port),i.scheme=e.scheme),i.fragment=t.fragment,i}function LGt(e,t,r){return typeof e=="string"?(e=unescape(e),e=Lf(TB(Th(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Lf(TB(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Lf(TB(Th(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Lf(TB(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Lf(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),i=[],s=DPe(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let a=RGt(r);if(a!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(a),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(o=RT(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),i.push(o)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var BGt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Th(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let s=e.match(BGt);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(DGt(n.host)===!1){let u=NGt(n.host);n.host=u.host.toLowerCase(),i=u.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=DPe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&kGt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var WY={SCHEMES:OGt,normalize:PGt,resolve:MGt,resolveComponent:kPe,equal:LGt,serialize:Lf,parse:Th};NB.exports=WY;NB.exports.default=WY;NB.exports.fastUri=WY});var MPe=b(XY=>{"use strict";Object.defineProperty(XY,"__esModule",{value:!0});var PPe=OPe();PPe.code='require("ajv/dist/runtime/uri").default';XY.default=PPe});var HPe=b(xa=>{"use strict";Object.defineProperty(xa,"__esModule",{value:!0});xa.CodeGen=xa.Name=xa.nil=xa.stringify=xa.str=xa._=xa.KeywordCxt=void 0;var $Gt=TT();Object.defineProperty(xa,"KeywordCxt",{enumerable:!0,get:function(){return $Gt.KeywordCxt}});var b1=Wt();Object.defineProperty(xa,"_",{enumerable:!0,get:function(){return b1._}});Object.defineProperty(xa,"str",{enumerable:!0,get:function(){return b1.str}});Object.defineProperty(xa,"stringify",{enumerable:!0,get:function(){return b1.stringify}});Object.defineProperty(xa,"nil",{enumerable:!0,get:function(){return b1.nil}});Object.defineProperty(xa,"Name",{enumerable:!0,get:function(){return b1.Name}});Object.defineProperty(xa,"CodeGen",{enumerable:!0,get:function(){return b1.CodeGen}});var FGt=SB(),UPe=NT(),UGt=CY(),DT=IB(),qGt=Wt(),kT=IT(),RB=wT(),ZY=Pr(),LPe=bPe(),jGt=MPe(),qPe=(e,t)=>new RegExp(e,t);qPe.code="new RegExp";var HGt=["removeAdditional","useDefaults","coerceTypes"],KGt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),VGt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},zGt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},BPe=200;function QGt(e){var t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v,A,_,E,S,C,I,N;let T=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,O=k===!0||k===void 0?1:k||0,P=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:qPe,$=(i=e.uriResolver)!==null&&i!==void 0?i:jGt.default;return{strictSchema:(a=(s=e.strictSchema)!==null&&s!==void 0?s:T)!==null&&a!==void 0?a:!0,strictNumbers:(u=(o=e.strictNumbers)!==null&&o!==void 0?o:T)!==null&&u!==void 0?u:!0,strictTypes:(l=(c=e.strictTypes)!==null&&c!==void 0?c:T)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:T)!==null&&f!==void 0?f:"log",strictRequired:(h=(p=e.strictRequired)!==null&&p!==void 0?p:T)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:O,regExp:P}:{optimize:O,regExp:P},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:BPe,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:BPe,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(v=e.messages)!==null&&v!==void 0?v:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(_=e.schemaId)!==null&&_!==void 0?_:"$id",addUsedSchema:(E=e.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(S=e.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(C=e.validateFormats)!==null&&C!==void 0?C:!0,unicodeRegExp:(I=e.unicodeRegExp)!==null&&I!==void 0?I:!0,int32range:(N=e.int32range)!==null&&N!==void 0?N:!0,uriResolver:$}}var OT=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...QGt(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new qGt.ValueScope({scope:{},prefixes:KGt,es5:r,lines:n}),this.logger=ZGt(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,UGt.getRules)(),$Pe.call(this,VGt,t,"NOT SUPPORTED"),$Pe.call(this,zGt,t,"DEPRECATED","warn"),this._metaOpts=XGt.call(this),t.formats&&YGt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&WGt.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),GGt.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=LPe;n==="id"&&(i={...LPe},i.id=i.$id,delete i.$id),r&&t&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,t,r);async function i(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await i.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof UPe.default))throw d;return o.call(this,d),await u.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function u(l){let d=await c.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function c(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,i=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,i);return this}let s;if(typeof t=="object"){let{schemaId:a}=this.opts;if(s=t[a],s!==void 0&&typeof s!="string")throw new Error(`schema ${a} must be string`)}return r=(0,kT.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,i,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,t);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(t){let r;for(;typeof(r=FPe.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new DT.SchemaEnv({schema:{},schemaId:n});if(r=DT.resolveSchema.call(this,i,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=FPe.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,kT.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(tYt.call(this,n,r),!r)return(0,ZY.eachItem)(n,s=>JY.call(this,s)),this;nYt.call(this,r);let i={...r,type:(0,RB.getJSONTypes)(r.type),schemaType:(0,RB.getJSONTypes)(r.schemaType)};return(0,ZY.eachItem)(n,i.type.length===0?s=>JY.call(this,s,i):s=>i.type.forEach(a=>JY.call(this,s,i,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===t);i>=0&&n.rules.splice(i,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let i of r){let s=i.split("/").slice(1),a=t;for(let o of s)a=a[o];for(let o in n){let u=n[o];if(typeof u!="object")continue;let{$data:c}=u.definition,l=a[o];c&&l&&(a[o]=jPe(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let i=t[n];(!r||r.test(n))&&(typeof i=="string"?delete t[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete t[n]))}}_addSchema(t,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(t);if(u!==void 0)return u;n=(0,kT.normalizeId)(a||n);let c=kT.getSchemaRefs.call(this,t,n);return u=new DT.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:c}),this._cache.set(u.schema,u),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),i&&this.validateSchema(t,!0),u}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):DT.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{DT.compileSchema.call(this,t)}finally{this.opts=r}}};OT.ValidationError=FGt.default;OT.MissingRefError=UPe.default;xa.default=OT;function $Pe(e,t,r,n="error"){for(let i in e){let s=i;s in t&&this.logger[n](`${r}: option ${i}. ${e[s]}`)}}function FPe(e){return e=(0,kT.normalizeId)(e),this.schemas[e]||this.refs[e]}function GGt(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function YGt(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function WGt(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function XGt(){let e={...this.opts};for(let t of HGt)delete e[t];return e}var JGt={log(){},warn(){},error(){}};function ZGt(e){if(e===!1)return JGt;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var eYt=/^[a-z_$][a-z0-9_$:-]*$/i;function tYt(e,t){let{RULES:r}=this;if((0,ZY.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!eYt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function JY(e,t,r){var n;let i=t?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,a=i?s.post:s.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},s.rules.push(a)),s.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,RB.getJSONTypes)(t.type),schemaType:(0,RB.getJSONTypes)(t.schemaType)}};t.before?rYt.call(this,a,o,t.before):a.rules.push(o),s.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u))}function rYt(e,t,r){let n=e.rules.findIndex(i=>i.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function nYt(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=jPe(t)),e.validateSchema=this.compile(t,!0))}var iYt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function jPe(e){return{anyOf:[e,iYt]}}});var KPe=b(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});var sYt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};eW.default=sYt});var GPe=b(yA=>{"use strict";Object.defineProperty(yA,"__esModule",{value:!0});yA.callRef=yA.getValidate=void 0;var aYt=NT(),VPe=el(),Iu=Wt(),E1=xh(),zPe=IB(),DB=Pr(),oYt={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:i,schemaEnv:s,validateName:a,opts:o,self:u}=n,{root:c}=s;if((r==="#"||r==="#/")&&i===c.baseId)return d();let l=zPe.resolveRef.call(u,c,i,r);if(l===void 0)throw new aYt.default(n.opts.uriResolver,i,r);if(l instanceof zPe.SchemaEnv)return f(l);return p(l);function d(){if(s===c)return kB(e,a,s,s.$async);let h=t.scopeValue("root",{ref:c});return kB(e,(0,Iu._)`${h}.validate`,c,c.$async)}function f(h){let m=QPe(e,h);kB(e,m,h,h.$async)}function p(h){let m=t.scopeValue("schema",o.code.source===!0?{ref:h,code:(0,Iu.stringify)(h)}:{ref:h}),y=t.name("valid"),g=e.subschema({schema:h,dataTypes:[],schemaPath:Iu.nil,topSchemaRef:m,errSchemaPath:r},y);e.mergeEvaluated(g),e.ok(y)}}};function QPe(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Iu._)`${r.scopeValue("wrapper",{ref:t})}.validate`}yA.getValidate=QPe;function kB(e,t,r,n){let{gen:i,it:s}=e,{allErrors:a,schemaEnv:o,opts:u}=s,c=u.passContext?E1.default.this:Iu.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let h=i.let("valid");i.try(()=>{i.code((0,Iu._)`await ${(0,VPe.callValidateCode)(e,t,c)}`),p(t),a||i.assign(h,!0)},m=>{i.if((0,Iu._)`!(${m} instanceof ${s.ValidationError})`,()=>i.throw(m)),f(m),a||i.assign(h,!1)}),e.ok(h)}function d(){e.result((0,VPe.callValidateCode)(e,t,c),()=>p(t),()=>f(t))}function f(h){let m=(0,Iu._)`${h}.errors`;i.assign(E1.default.vErrors,(0,Iu._)`${E1.default.vErrors} === null ? ${m} : ${E1.default.vErrors}.concat(${m})`),i.assign(E1.default.errors,(0,Iu._)`${E1.default.vErrors}.length`)}function p(h){var m;if(!s.opts.unevaluated)return;let y=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(s.props=DB.mergeEvaluated.props(i,y.props,s.props));else{let g=i.var("props",(0,Iu._)`${h}.evaluated.props`);s.props=DB.mergeEvaluated.props(i,g,s.props,Iu.Name)}if(s.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(s.items=DB.mergeEvaluated.items(i,y.items,s.items));else{let g=i.var("items",(0,Iu._)`${h}.evaluated.items`);s.items=DB.mergeEvaluated.items(i,g,s.items,Iu.Name)}}}yA.callRef=kB;yA.default=oYt});var YPe=b(tW=>{"use strict";Object.defineProperty(tW,"__esModule",{value:!0});var uYt=KPe(),cYt=GPe(),lYt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",uYt.default,cYt.default];tW.default=lYt});var WPe=b(rW=>{"use strict";Object.defineProperty(rW,"__esModule",{value:!0});var OB=Wt(),dg=OB.operators,PB={maximum:{okStr:"<=",ok:dg.LTE,fail:dg.GT},minimum:{okStr:">=",ok:dg.GTE,fail:dg.LT},exclusiveMaximum:{okStr:"<",ok:dg.LT,fail:dg.GTE},exclusiveMinimum:{okStr:">",ok:dg.GT,fail:dg.LTE}},dYt={message:({keyword:e,schemaCode:t})=>(0,OB.str)`must be ${PB[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,OB._)`{comparison: ${PB[e].okStr}, limit: ${t}}`},fYt={keyword:Object.keys(PB),type:"number",schemaType:"number",$data:!0,error:dYt,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,OB._)`${r} ${PB[t].fail} ${n} || isNaN(${r})`)}};rW.default=fYt});var XPe=b(nW=>{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});var PT=Wt(),pYt={message:({schemaCode:e})=>(0,PT.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,PT._)`{multipleOf: ${e}}`},hYt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:pYt,code(e){let{gen:t,data:r,schemaCode:n,it:i}=e,s=i.opts.multipleOfPrecision,a=t.let("res"),o=s?(0,PT._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${s}`:(0,PT._)`${a} !== parseInt(${a})`;e.fail$data((0,PT._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};nW.default=hYt});var ZPe=b(iW=>{"use strict";Object.defineProperty(iW,"__esModule",{value:!0});function JPe(e){let t=e.length,r=0,n=0,i;for(;n=55296&&i<=56319&&n{"use strict";Object.defineProperty(sW,"__esModule",{value:!0});var _A=Wt(),mYt=Pr(),gYt=ZPe(),yYt={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,_A.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,_A._)`{limit: ${e}}`},_Yt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:yYt,code(e){let{keyword:t,data:r,schemaCode:n,it:i}=e,s=t==="maxLength"?_A.operators.GT:_A.operators.LT,a=i.opts.unicode===!1?(0,_A._)`${r}.length`:(0,_A._)`${(0,mYt.useFunc)(e.gen,gYt.default)}(${r})`;e.fail$data((0,_A._)`${a} ${s} ${n}`)}};sW.default=_Yt});var tMe=b(aW=>{"use strict";Object.defineProperty(aW,"__esModule",{value:!0});var AYt=el(),vYt=Pr(),S1=Wt(),bYt={message:({schemaCode:e})=>(0,S1.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,S1._)`{pattern: ${e}}`},EYt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:bYt,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:s,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:u}=a.opts.code,c=u.code==="new RegExp"?(0,S1._)`new RegExp`:(0,vYt.useFunc)(t,u),l=t.let("valid");t.try(()=>t.assign(l,(0,S1._)`${c}(${s}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,S1._)`!${l}`)}else{let u=(0,AYt.usePattern)(e,i);e.fail$data((0,S1._)`!${u}.test(${r})`)}}};aW.default=EYt});var rMe=b(oW=>{"use strict";Object.defineProperty(oW,"__esModule",{value:!0});var MT=Wt(),SYt={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,MT.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,MT._)`{limit: ${e}}`},wYt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:SYt,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxProperties"?MT.operators.GT:MT.operators.LT;e.fail$data((0,MT._)`Object.keys(${r}).length ${i} ${n}`)}};oW.default=wYt});var nMe=b(uW=>{"use strict";Object.defineProperty(uW,"__esModule",{value:!0});var LT=el(),BT=Wt(),IYt=Pr(),xYt={message:({params:{missingProperty:e}})=>(0,BT.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,BT._)`{missingProperty: ${e}}`},CYt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:xYt,code(e){let{gen:t,schema:r,schemaCode:n,data:i,$data:s,it:a}=e,{opts:o}=a;if(!s&&r.length===0)return;let u=r.length>=o.loopRequired;if(a.allErrors?c():l(),o.strictRequired){let p=e.parentSchema.properties,{definedProperties:h}=e.it;for(let m of r)if(p?.[m]===void 0&&!h.has(m)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${m}" is not defined at "${y}" (strictRequired)`;(0,IYt.checkStrictMode)(a,g,a.opts.strictRequired)}}function c(){if(u||s)e.block$data(BT.nil,d);else for(let p of r)(0,LT.checkReportMissingProp)(e,p)}function l(){let p=t.let("missing");if(u||s){let h=t.let("valid",!0);e.block$data(h,()=>f(p,h)),e.ok(h)}else t.if((0,LT.checkMissingProp)(e,r,p)),(0,LT.reportMissingProp)(e,p),t.else()}function d(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,LT.noPropertyInData)(t,i,p,o.ownProperties),()=>e.error())})}function f(p,h){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(h,(0,LT.propertyInData)(t,i,p,o.ownProperties)),t.if((0,BT.not)(h),()=>{e.error(),t.break()})},BT.nil)}}};uW.default=CYt});var iMe=b(cW=>{"use strict";Object.defineProperty(cW,"__esModule",{value:!0});var $T=Wt(),TYt={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,$T.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,$T._)`{limit: ${e}}`},NYt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:TYt,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxItems"?$T.operators.GT:$T.operators.LT;e.fail$data((0,$T._)`${r}.length ${i} ${n}`)}};cW.default=NYt});var FT=b(lW=>{"use strict";Object.defineProperty(lW,"__esModule",{value:!0});var sMe=tl();sMe.code='require("ajv/dist/runtime/equal").default';lW.default=sMe});var aMe=b(fW=>{"use strict";Object.defineProperty(fW,"__esModule",{value:!0});var dW=wT(),Ca=Wt(),RYt=Pr(),DYt=FT(),kYt={message:({params:{i:e,j:t}})=>(0,Ca.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Ca._)`{i: ${e}, j: ${t}}`},OYt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:kYt,code(e){let{gen:t,data:r,$data:n,schema:i,parentSchema:s,schemaCode:a,it:o}=e;if(!n&&!i)return;let u=t.let("valid"),c=s.items?(0,dW.getSchemaTypes)(s.items):[];e.block$data(u,l,(0,Ca._)`${a} === false`),e.ok(u);function l(){let h=t.let("i",(0,Ca._)`${r}.length`),m=t.let("j");e.setParams({i:h,j:m}),t.assign(u,!0),t.if((0,Ca._)`${h} > 1`,()=>(d()?f:p)(h,m))}function d(){return c.length>0&&!c.some(h=>h==="object"||h==="array")}function f(h,m){let y=t.name("item"),g=(0,dW.checkDataTypes)(c,y,o.opts.strictNumbers,dW.DataType.Wrong),v=t.const("indices",(0,Ca._)`{}`);t.for((0,Ca._)`;${h}--;`,()=>{t.let(y,(0,Ca._)`${r}[${h}]`),t.if(g,(0,Ca._)`continue`),c.length>1&&t.if((0,Ca._)`typeof ${y} == "string"`,(0,Ca._)`${y} += "_"`),t.if((0,Ca._)`typeof ${v}[${y}] == "number"`,()=>{t.assign(m,(0,Ca._)`${v}[${y}]`),e.error(),t.assign(u,!1).break()}).code((0,Ca._)`${v}[${y}] = ${h}`)})}function p(h,m){let y=(0,RYt.useFunc)(t,DYt.default),g=t.name("outer");t.label(g).for((0,Ca._)`;${h}--;`,()=>t.for((0,Ca._)`${m} = ${h}; ${m}--;`,()=>t.if((0,Ca._)`${y}(${r}[${h}], ${r}[${m}])`,()=>{e.error(),t.assign(u,!1).break(g)})))}}};fW.default=OYt});var oMe=b(hW=>{"use strict";Object.defineProperty(hW,"__esModule",{value:!0});var pW=Wt(),PYt=Pr(),MYt=FT(),LYt={message:"must be equal to constant",params:({schemaCode:e})=>(0,pW._)`{allowedValue: ${e}}`},BYt={keyword:"const",$data:!0,error:LYt,code(e){let{gen:t,data:r,$data:n,schemaCode:i,schema:s}=e;n||s&&typeof s=="object"?e.fail$data((0,pW._)`!${(0,PYt.useFunc)(t,MYt.default)}(${r}, ${i})`):e.fail((0,pW._)`${s} !== ${r}`)}};hW.default=BYt});var uMe=b(mW=>{"use strict";Object.defineProperty(mW,"__esModule",{value:!0});var UT=Wt(),$Yt=Pr(),FYt=FT(),UYt={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,UT._)`{allowedValues: ${e}}`},qYt={keyword:"enum",schemaType:"array",$data:!0,error:UYt,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:s,it:a}=e;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let o=i.length>=a.opts.loopEnum,u,c=()=>u??(u=(0,$Yt.useFunc)(t,FYt.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=t.const("vSchema",s);l=(0,UT.or)(...i.map((h,m)=>f(p,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,p=>t.if((0,UT._)`${c()}(${r}, ${p})`,()=>t.assign(l,!0).break()))}function f(p,h){let m=i[h];return typeof m=="object"&&m!==null?(0,UT._)`${c()}(${r}, ${p}[${h}])`:(0,UT._)`${r} === ${m}`}}};mW.default=qYt});var cMe=b(gW=>{"use strict";Object.defineProperty(gW,"__esModule",{value:!0});var jYt=WPe(),HYt=XPe(),KYt=eMe(),VYt=tMe(),zYt=rMe(),QYt=nMe(),GYt=iMe(),YYt=aMe(),WYt=oMe(),XYt=uMe(),JYt=[jYt.default,HYt.default,KYt.default,VYt.default,zYt.default,QYt.default,GYt.default,YYt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},WYt.default,XYt.default];gW.default=JYt});var _W=b(qT=>{"use strict";Object.defineProperty(qT,"__esModule",{value:!0});qT.validateAdditionalItems=void 0;var AA=Wt(),yW=Pr(),ZYt={message:({params:{len:e}})=>(0,AA.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,AA._)`{limit: ${e}}`},eWt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:ZYt,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,yW.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}lMe(e,n)}};function lMe(e,t){let{gen:r,schema:n,data:i,keyword:s,it:a}=e;a.items=!0;let o=r.const("len",(0,AA._)`${i}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,AA._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,yW.alwaysValidSchema)(a,n)){let c=r.var("valid",(0,AA._)`${o} <= ${t.length}`);r.if((0,AA.not)(c),()=>u(c)),e.ok(c)}function u(c){r.forRange("i",t.length,o,l=>{e.subschema({keyword:s,dataProp:l,dataPropType:yW.Type.Num},c),a.allErrors||r.if((0,AA.not)(c),()=>r.break())})}}qT.validateAdditionalItems=lMe;qT.default=eWt});var AW=b(jT=>{"use strict";Object.defineProperty(jT,"__esModule",{value:!0});jT.validateTuple=void 0;var dMe=Wt(),MB=Pr(),tWt=el(),rWt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return fMe(e,"additionalItems",t);r.items=!0,!(0,MB.alwaysValidSchema)(r,t)&&e.ok((0,tWt.validateArray)(e))}};function fMe(e,t,r=e.schema){let{gen:n,parentSchema:i,data:s,keyword:a,it:o}=e;l(i),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=MB.mergeEvaluated.items(n,r.length,o.items));let u=n.name("valid"),c=n.const("len",(0,dMe._)`${s}.length`);r.forEach((d,f)=>{(0,MB.alwaysValidSchema)(o,d)||(n.if((0,dMe._)`${c} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},u)),e.ok(u))});function l(d){let{opts:f,errSchemaPath:p}=o,h=r.length,m=h===d.minItems&&(h===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let y=`"${a}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,MB.checkStrictMode)(o,y,f.strictTuples)}}}jT.validateTuple=fMe;jT.default=rWt});var pMe=b(vW=>{"use strict";Object.defineProperty(vW,"__esModule",{value:!0});var nWt=AW(),iWt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,nWt.validateTuple)(e,"items")};vW.default=iWt});var mMe=b(bW=>{"use strict";Object.defineProperty(bW,"__esModule",{value:!0});var hMe=Wt(),sWt=Pr(),aWt=el(),oWt=_W(),uWt={message:({params:{len:e}})=>(0,hMe.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,hMe._)`{limit: ${e}}`},cWt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:uWt,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,sWt.alwaysValidSchema)(n,t)&&(i?(0,oWt.validateAdditionalItems)(e,i):e.ok((0,aWt.validateArray)(e)))}};bW.default=cWt});var gMe=b(EW=>{"use strict";Object.defineProperty(EW,"__esModule",{value:!0});var nl=Wt(),LB=Pr(),lWt={message:({params:{min:e,max:t}})=>t===void 0?(0,nl.str)`must contain at least ${e} valid item(s)`:(0,nl.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,nl._)`{minContains: ${e}}`:(0,nl._)`{minContains: ${e}, maxContains: ${t}}`},dWt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:lWt,code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:s}=e,a,o,{minContains:u,maxContains:c}=n;s.opts.next?(a=u===void 0?1:u,o=c):a=1;let l=t.const("len",(0,nl._)`${i}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,LB.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,LB.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,LB.alwaysValidSchema)(s,r)){let m=(0,nl._)`${l} >= ${a}`;o!==void 0&&(m=(0,nl._)`${m} && ${l} <= ${o}`),e.pass(m);return}s.items=!0;let d=t.name("valid");o===void 0&&a===1?p(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,nl._)`${i}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),y=t.let("count",0);p(m,()=>t.if(m,()=>h(y)))}function p(m,y){t.forRange("i",0,l,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:LB.Type.Num,compositeRule:!0},m),y()})}function h(m){t.code((0,nl._)`${m}++`),o===void 0?t.if((0,nl._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,nl._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,nl._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};EW.default=dWt});var AMe=b(Bf=>{"use strict";Object.defineProperty(Bf,"__esModule",{value:!0});Bf.validateSchemaDeps=Bf.validatePropertyDeps=Bf.error=void 0;var SW=Wt(),fWt=Pr(),HT=el();Bf.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,SW.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,SW._)`{property: ${e}, +`),G=Xlr.bind(null,{[J6e]:"",[Z6e]:a,[t5e]:M,[e5e]:hte,[pte]:x,[r5e]:w}),$="";d!==null&&(f===void 0?$=G(d):$=G(Object.assign({},d,{name:f})));let K=o instanceof Function?o:o?o5e:Adr,ee=K().indexOf(":")+1;if(y&&!p)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(g&&typeof g!="function")throw Error(`Unknown mixin type "${typeof g}" - expected "function"`);if(T&&typeof T!="string")throw Error(`Unknown msgPrefix type "${typeof T}" - expected "string"`);jlr(h,p,y);let z=a5e(p,y);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:z,messageKey:c,errorKey:u}}),zlr(m);let oe=Glr(m);return Object.assign(t,{levels:z,[fdr]:oe,[hdr]:y,[sdr]:n,[rdr]:K,[ndr]:ee,[e5e]:hte,[pte]:x,[t5e]:M,[adr]:U,[odr]:L,[cdr]:c,[udr]:u,[ldr]:l,[mdr]:l?`,${JSON.stringify(l)}:{`:"",[Z6e]:a,[ddr]:g,[gdr]:_,[J6e]:$,[r5e]:w,[pdr]:E,silent:Zlr,onChild:I,[_dr]:T}),Object.setPrototypeOf(t,Hlr()),Klr(t),t[idr](h),t}ld.exports=mte;ld.exports.destination=(e=process.stdout.fd)=>typeof e=="object"?(e.dest=X6e(e.dest||process.stdout.fd),W6e(e)):W6e({dest:X6e(e),minLength:0});ld.exports.transport=Xee();ld.exports.multistream=Q6e();ld.exports.levels=a5e();ld.exports.stdSerializers=bdr;ld.exports.stdTimeFunctions=Object.assign({},s5e);ld.exports.symbols=i5e;ld.exports.version=edr;ld.exports.default=mte;ld.exports.pino=mte});var _O=S((SHn,h5e)=>{"use strict";var Idr=JUe(),WF=c5e(),{serializersSym:u5e}=WF.symbols,{FST_ERR_LOG_INVALID_DESTINATION:Rdr,FST_ERR_LOG_INVALID_LOGGER:Cdr}=Bo();function l5e(e){if(e.stream&&e.file)throw new Rdr;e.file&&(e.stream=WF.destination(e.file),delete e.file);let t=e.logger,r=e.genReqId,n=null;return t?(e.logger=void 0,e.genReqId=void 0,t[u5e]&&(e.serializers=Object.assign({},e.serializers,t[u5e])),n=t.child({},e),e.logger=t,e.genReqId=r):n=WF(e,e.stream),n}var gte={req:function(t){return{method:t.method,url:t.url,version:t.headers&&t.headers["accept-version"],hostname:t.hostname,remoteAddress:t.ip,remotePort:t.socket?t.socket.remotePort:void 0}},err:WF.stdSerializers.err,res:function(t){return{statusCode:t.statusCode}}};function xdr(){let e=process.hrtime();return e[0]*1e3+e[1]/1e6}function wdr(e){if(!e.logger){let n=Idr;return n.child=()=>n,{logger:n,hasLogger:!1}}if(d5e(e.logger))return{logger:l5e({logger:e.logger,serializers:Object.assign({},gte,e.logger.serializers)}),hasLogger:!0};let t={};return Object.prototype.toString.call(e.logger)==="[object Object]"&&Reflect.ownKeys(e.logger).forEach(n=>{Object.defineProperty(t,n,{value:e.logger[n],writable:!0,enumerable:!0,configurable:!0})}),t.level=t.level||"info",t.serializers=Object.assign({},gte,t.serializers),e.logger=t,{logger:l5e(e.logger),hasLogger:!0}}function d5e(e,t){let r=["info","error","debug","fatal","warn","trace","child"],n=e?r.filter(s=>!e[s]||typeof e[s]!="function"):r;if(n.length){if(n.length===r.length&&!t)return!1;throw Cdr(n.join(","))}else return!0}function Ndr(e,t,r,n,s){let i={[e.requestIdLogLabel]:n},a=e.childLoggerFactory.call(e.server,t,i,s||{},r);return e.childLoggerFactory!==f5e&&d5e(a,!0),a}function f5e(e,t,r){return e.child(t,r)}h5e.exports={createLogger:wdr,createChildLogger:Ndr,defaultChildLoggerFactory:f5e,serializers:gte,now:xdr}});var XF=S((THn,p5e)=>{"use strict";p5e.exports=Odr;function L1(e){return e instanceof Buffer?Buffer.from(e):new e.constructor(e.buffer.slice(),e.byteOffset,e.length)}function Odr(e){if(e=e||{},e.circles)return Ddr(e);let t=new Map;if(t.set(Date,a=>new Date(a)),t.set(Map,(a,o)=>new Map(n(Array.from(a),o))),t.set(Set,(a,o)=>new Set(n(Array.from(a),o))),e.constructorHandlers)for(let a of e.constructorHandlers)t.set(a[0],a[1]);let r=null;return e.proto?i:s;function n(a,o){let c=Object.keys(a),u=new Array(c.length);for(let l=0;lnew Date(c)),n.set(Map,(c,u)=>new Map(i(Array.from(c),u))),n.set(Set,(c,u)=>new Set(i(Array.from(c),u))),e.constructorHandlers)for(let c of e.constructorHandlers)n.set(c[0],c[1]);let s=null;return e.proto?o:a;function i(c,u){let l=Object.keys(c),d=new Array(l.length);for(let f=0;f{"use strict";var Pdr=XF()({circles:!1,proto:!0}),{kSchemaVisited:m5e,kSchemaResponse:Ldr}=Ma(),Ate=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:Mdr,FST_ERR_SCH_ALREADY_PRESENT:kdr,FST_ERR_SCH_DUPLICATE:Bdr,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:Udr}=Bo(),_5e=["params","body","querystring","query","headers"];function JF(e){this.store=e||{}}JF.prototype.add=function(e){let t=Pdr(e.isFluentSchema||e.isFluentJSONSchema||e[Ate]?e.valueOf():e),r=t.$id;if(!r)throw new Mdr;if(this.store[r])throw new kdr(r);this.store[r]=t};JF.prototype.getSchemas=function(){return Object.assign({},this.store)};JF.prototype.getSchema=function(e){return this.store[e]};function g5e(e){return typeof e=="object"&&Object.getPrototypeOf(e)!==Object.prototype}function Fdr(e,t){if(e[m5e])return e;if(e.query){if(e.querystring)throw new Bdr("querystring");e.querystring=e.query}$dr(e);for(let r of _5e){let n=e[r];n&&!g5e(n)&&(e[r]=_te(n,t.jsonShorthand))}if(e.response){let r=Object.keys(e.response);for(let n of r){if(g5e(e.response[n]))continue;let s=e.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o{"use strict";var Hdr=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;y5e.exports=class E5e{constructor(t){switch(t&&t.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=t}asInteger(t){if(Number.isInteger(t))return""+t;if(typeof t=="bigint")return t.toString();let r=this.parseInteger(t);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${t}" cannot be converted to an integer.`);return""+r}asNumber(t){let r=Number(t);if(r!==r)throw new Error(`The value "${t}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(t){return t&&"true"||"false"}asDateTime(t){if(t===null)return'""';if(t instanceof Date)return'"'+t.toISOString()+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a date-time.`)}asDate(t){if(t===null)return'""';if(t instanceof Date)return'"'+new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a date.`)}asTime(t){if(t===null)return'""';if(t instanceof Date)return'"'+new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof t=="string")return'"'+t+'"';throw new Error(`The value "${t}" cannot be converted to a time.`)}asString(t){let r=t.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(t);return i===-1&&'"'+t+'"'||'"'+s+t.slice(i)+'"'}else return r<5e3&&Hdr.test(t)===!1?'"'+t+'"':JSON.stringify(t)}asUnsafeString(t){return'"'+t+'"'}getState(){return this._options}static restoreFromState(t){return new E5e(t)}}});var vO=S(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.regexpCode=xn.getEsmExportName=xn.getProperty=xn.safeStringify=xn.stringify=xn.strConcat=xn.addCodeArg=xn.str=xn._=xn.nil=xn._Code=xn.Name=xn.IDENTIFIER=xn._CodeOrName=void 0;var EO=class{};xn._CodeOrName=EO;xn.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var uv=class extends EO{constructor(t){if(super(),!xn.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};xn.Name=uv;var dd=class extends EO{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof uv&&(r[n.str]=(r[n.str]||0)+1),r),{})}};xn._Code=dd;xn.nil=new dd("");function v5e(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Su,"__esModule",{value:!0});Su.ValueScope=Su.ValueScopeName=Su.Scope=Su.varKinds=Su.UsedValueState=void 0;var vu=vO(),Ste=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},ZF;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(ZF||(Su.UsedValueState=ZF={}));Su.varKinds={const:new vu.Name("const"),let:new vu.Name("let"),var:new vu.Name("var")};var e6=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof vu.Name?t:this.name(t)}name(t){return new vu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Su.Scope=e6;var t6=class extends vu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,vu._)`.${new vu.Name(r)}[${n}]`}};Su.ValueScopeName=t6;var Xdr=(0,vu._)`\n`,Tte=class extends e6{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Xdr:vu.nil}}get(){return this._scope}name(t){return new t6(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,vu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let i=vu.nil;for(let a in t){let o=t[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,ZF.Started);let l=r(u);if(l){let d=this.opts.es5?Su.varKinds.var:Su.varKinds.const;i=(0,vu._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,vu._)`${i}${l}${this.opts._n}`;else throw new Ste(u);c.set(u,ZF.Completed)})}return i}};Su.ValueScope=Tte});var Ir=S(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.or=Dr.and=Dr.not=Dr.CodeGen=Dr.operators=Dr.varKinds=Dr.ValueScopeName=Dr.ValueScope=Dr.Scope=Dr.Name=Dr.regexpCode=Dr.stringify=Dr.getProperty=Dr.nil=Dr.strConcat=Dr.str=Dr._=void 0;var on=vO(),wf=bte(),Z_=vO();Object.defineProperty(Dr,"_",{enumerable:!0,get:function(){return Z_._}});Object.defineProperty(Dr,"str",{enumerable:!0,get:function(){return Z_.str}});Object.defineProperty(Dr,"strConcat",{enumerable:!0,get:function(){return Z_.strConcat}});Object.defineProperty(Dr,"nil",{enumerable:!0,get:function(){return Z_.nil}});Object.defineProperty(Dr,"getProperty",{enumerable:!0,get:function(){return Z_.getProperty}});Object.defineProperty(Dr,"stringify",{enumerable:!0,get:function(){return Z_.stringify}});Object.defineProperty(Dr,"regexpCode",{enumerable:!0,get:function(){return Z_.regexpCode}});Object.defineProperty(Dr,"Name",{enumerable:!0,get:function(){return Z_.Name}});var i6=bte();Object.defineProperty(Dr,"Scope",{enumerable:!0,get:function(){return i6.Scope}});Object.defineProperty(Dr,"ValueScope",{enumerable:!0,get:function(){return i6.ValueScope}});Object.defineProperty(Dr,"ValueScopeName",{enumerable:!0,get:function(){return i6.ValueScopeName}});Object.defineProperty(Dr,"varKinds",{enumerable:!0,get:function(){return i6.varKinds}});Dr.operators={GT:new on._Code(">"),GTE:new on._Code(">="),LT:new on._Code("<"),LTE:new on._Code("<="),EQ:new on._Code("==="),NEQ:new on._Code("!=="),NOT:new on._Code("!"),OR:new on._Code("||"),AND:new on._Code("&&"),ADD:new on._Code("+")};var tm=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Ite=class extends tm{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?wf.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=k1(this.rhs,t,r)),this}get names(){return this.rhs instanceof on._CodeOrName?this.rhs.names:{}}},r6=class extends tm{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof on.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=k1(this.rhs,t,r),this}get names(){let t=this.lhs instanceof on.Name?{}:{...this.lhs.names};return s6(t,this.rhs)}},Rte=class extends r6{constructor(t,r,n,s){super(t,n,s),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Cte=class extends tm{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},xte=class extends tm{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},wte=class extends tm{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Nte=class extends tm{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=k1(this.code,t,r),this}get names(){return this.code instanceof on._CodeOrName?this.code.names:{}}},SO=class extends tm{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(t,r)||(Jdr(t,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>fv(t,r.names),{})}},rm=class extends SO{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Ote=class extends SO{},M1=class extends rm{};M1.kind="else";var lv=class e extends rm{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new M1(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(T5e(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=k1(this.condition,t,r),this}get names(){let t=super.names;return s6(t,this.condition),this.else&&fv(t,this.else.names),t}};lv.kind="if";var dv=class extends rm{};dv.kind="for";var Dte=class extends dv{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=k1(this.iteration,t,r),this}get names(){return fv(super.names,this.iteration.names)}},Pte=class extends dv{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s}render(t){let r=t.es5?wf.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=s6(super.names,this.from);return s6(t,this.to)}},n6=class extends dv{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=k1(this.iterable,t,r),this}get names(){return fv(super.names,this.iterable.names)}},TO=class extends rm{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};TO.kind="func";var bO=class extends SO{render(t){return"return "+super.render(t)}};bO.kind="return";var Lte=class extends rm{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&fv(t,this.catch.names),this.finally&&fv(t,this.finally.names),t}},IO=class extends rm{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};IO.kind="catch";var RO=class extends rm{render(t){return"finally"+super.render(t)}};RO.kind="finally";var Mte=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=t,this._scope=new wf.Scope({parent:t}),this._nodes=[new Ote]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Ite(t,i,n)),i}const(t,r,n){return this._def(wf.varKinds.const,t,r,n)}let(t,r,n){return this._def(wf.varKinds.let,t,r,n)}var(t,r,n){return this._def(wf.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new r6(t,r,n))}add(t,r){return this._leafNode(new Rte(t,Dr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==on.nil&&this._leafNode(new Nte(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,on.addCodeArg)(r,s));return r.push("}"),new on._Code(r)}if(t,r,n){if(this._blockNode(new lv(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new lv(t))}else(){return this._elseNode(new M1)}endIf(){return this._endBlockNode(lv,M1)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Dte(t),r)}forRange(t,r,n,s,i=this.opts.es5?wf.varKinds.var:wf.varKinds.let){let a=this._scope.toName(t);return this._for(new Pte(i,a,r,n),()=>s(a))}forOf(t,r,n,s=wf.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof on.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,on._)`${a}.length`,o=>{this.var(i,(0,on._)`${a}[${o}]`),n(i)})}return this._for(new n6("of",s,i,r),()=>n(i))}forIn(t,r,n,s=this.opts.es5?wf.varKinds.var:wf.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,on._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new n6("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(dv)}label(t){return this._leafNode(new Cte(t))}break(t){return this._leafNode(new xte(t))}return(t){let r=new bO;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(bO)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new Lte;if(this._blockNode(s),this.code(t),r){let i=this.name("e");this._currNode=s.catch=new IO(i),r(i)}return n&&(this._currNode=s.finally=new RO,this.code(n)),this._endBlockNode(IO,RO)}throw(t){return this._leafNode(new wte(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=on.nil,n,s){return this._blockNode(new TO(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(TO)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof lv))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};Dr.CodeGen=Mte;function fv(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function s6(e,t){return t instanceof on._CodeOrName?fv(e,t.names):e}function k1(e,t,r){if(e instanceof on.Name)return n(e);if(!s(e))return e;return new on._Code(e._items.reduce((i,a)=>(a instanceof on.Name&&(a=n(a)),a instanceof on._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function s(i){return i instanceof on._Code&&i._items.some(a=>a instanceof on.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Jdr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function T5e(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,on._)`!${kte(e)}`}Dr.not=T5e;var Zdr=b5e(Dr.operators.AND);function efr(...e){return e.reduce(Zdr)}Dr.and=efr;var tfr=b5e(Dr.operators.OR);function rfr(...e){return e.reduce(tfr)}Dr.or=rfr;function b5e(e){return(t,r)=>t===on.nil?r:r===on.nil?t:(0,on._)`${kte(t)} ${e} ${kte(r)}`}function kte(e){return e instanceof on.Name?e:(0,on._)`(${e})`}});var An=S(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.checkStrictMode=Ur.getErrorPath=Ur.Type=Ur.useFunc=Ur.setEvaluated=Ur.evaluatedPropsToName=Ur.mergeEvaluated=Ur.eachItem=Ur.unescapeJsonPointer=Ur.escapeJsonPointer=Ur.escapeFragment=Ur.unescapeFragment=Ur.schemaRefOrVal=Ur.schemaHasRulesButRef=Ur.schemaHasRules=Ur.checkUnknownRules=Ur.alwaysValidSchema=Ur.toHash=void 0;var Rs=Ir(),nfr=vO();function sfr(e){let t={};for(let r of e)t[r]=!0;return t}Ur.toHash=sfr;function ifr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(C5e(e,t),!x5e(t,e.self.RULES.all))}Ur.alwaysValidSchema=ifr;function C5e(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let i in t)s[i]||O5e(e,`unknown keyword: "${i}"`)}Ur.checkUnknownRules=C5e;function x5e(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Ur.schemaHasRules=x5e;function afr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Ur.schemaHasRulesButRef=afr;function ofr({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Rs._)`${r}`}return(0,Rs._)`${e}${t}${(0,Rs.getProperty)(n)}`}Ur.schemaRefOrVal=ofr;function cfr(e){return w5e(decodeURIComponent(e))}Ur.unescapeFragment=cfr;function ufr(e){return encodeURIComponent(Ute(e))}Ur.escapeFragment=ufr;function Ute(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}Ur.escapeJsonPointer=Ute;function w5e(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Ur.unescapeJsonPointer=w5e;function lfr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Ur.eachItem=lfr;function I5e({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof Rs.Name?(i instanceof Rs.Name?e(s,i,a):t(s,i,a),a):i instanceof Rs.Name?(t(s,a,i),i):r(i,a);return o===Rs.Name&&!(c instanceof Rs.Name)?n(s,c):c}}Ur.mergeEvaluated={props:I5e({mergeNames:(e,t,r)=>e.if((0,Rs._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Rs._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Rs._)`${r} || {}`).code((0,Rs._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Rs._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Rs._)`${r} || {}`),Fte(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:N5e}),items:I5e({mergeNames:(e,t,r)=>e.if((0,Rs._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Rs._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Rs._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Rs._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function N5e(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Rs._)`{}`);return t!==void 0&&Fte(e,r,t),r}Ur.evaluatedPropsToName=N5e;function Fte(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Rs._)`${t}${(0,Rs.getProperty)(n)}`,!0))}Ur.setEvaluated=Fte;var R5e={};function dfr(e,t){return e.scopeValue("func",{ref:t,code:R5e[t.code]||(R5e[t.code]=new nfr._Code(t.code))})}Ur.useFunc=dfr;var Bte;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Bte||(Ur.Type=Bte={}));function ffr(e,t,r){if(e instanceof Rs.Name){let n=t===Bte.Num;return r?n?(0,Rs._)`"[" + ${e} + "]"`:(0,Rs._)`"['" + ${e} + "']"`:n?(0,Rs._)`"/" + ${e}`:(0,Rs._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Rs.getProperty)(e).toString():"/"+Ute(e)}Ur.getErrorPath=ffr;function O5e(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}Ur.checkStrictMode=O5e});var nm=S($te=>{"use strict";Object.defineProperty($te,"__esModule",{value:!0});var Fo=Ir(),hfr={data:new Fo.Name("data"),valCxt:new Fo.Name("valCxt"),instancePath:new Fo.Name("instancePath"),parentData:new Fo.Name("parentData"),parentDataProperty:new Fo.Name("parentDataProperty"),rootData:new Fo.Name("rootData"),dynamicAnchors:new Fo.Name("dynamicAnchors"),vErrors:new Fo.Name("vErrors"),errors:new Fo.Name("errors"),this:new Fo.Name("this"),self:new Fo.Name("self"),scope:new Fo.Name("scope"),json:new Fo.Name("json"),jsonPos:new Fo.Name("jsonPos"),jsonLen:new Fo.Name("jsonLen"),jsonPart:new Fo.Name("jsonPart")};$te.default=hfr});var CO=S($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.extendErrors=$o.resetErrorsCount=$o.reportExtraError=$o.reportError=$o.keyword$DataError=$o.keywordError=void 0;var En=Ir(),a6=An(),Lc=nm();$o.keywordError={message:({keyword:e})=>(0,En.str)`must pass "${e}" keyword validation`};$o.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,En.str)`"${e}" keyword must be ${t} ($data)`:(0,En.str)`"${e}" keyword is invalid ($data)`};function pfr(e,t=$o.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:a,allErrors:o}=s,c=L5e(e,t,r);n??(a||o)?D5e(i,c):P5e(s,(0,En._)`[${c}]`)}$o.reportError=pfr;function mfr(e,t=$o.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:a}=n,o=L5e(e,t,r);D5e(s,o),i||a||P5e(n,Lc.default.vErrors)}$o.reportExtraError=mfr;function gfr(e,t){e.assign(Lc.default.errors,t),e.if((0,En._)`${Lc.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,En._)`${Lc.default.vErrors}.length`,t),()=>e.assign(Lc.default.vErrors,null)))}$o.resetErrorsCount=gfr;function _fr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,Lc.default.errors,o=>{e.const(a,(0,En._)`${Lc.default.vErrors}[${o}]`),e.if((0,En._)`${a}.instancePath === undefined`,()=>e.assign((0,En._)`${a}.instancePath`,(0,En.strConcat)(Lc.default.instancePath,i.errorPath))),e.assign((0,En._)`${a}.schemaPath`,(0,En.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,En._)`${a}.schema`,r),e.assign((0,En._)`${a}.data`,n))})}$o.extendErrors=_fr;function D5e(e,t){let r=e.const("err",t);e.if((0,En._)`${Lc.default.vErrors} === null`,()=>e.assign(Lc.default.vErrors,(0,En._)`[${r}]`),(0,En._)`${Lc.default.vErrors}.push(${r})`),e.code((0,En._)`${Lc.default.errors}++`)}function P5e(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0,En._)`new ${e.ValidationError}(${t})`):(r.assign((0,En._)`${n}.errors`,t),r.return(!1))}var hv={keyword:new En.Name("keyword"),schemaPath:new En.Name("schemaPath"),params:new En.Name("params"),propertyName:new En.Name("propertyName"),message:new En.Name("message"),schema:new En.Name("schema"),parentSchema:new En.Name("parentSchema")};function L5e(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,En._)`{}`:Afr(e,t,r)}function Afr(e,t,r={}){let{gen:n,it:s}=e,i=[Efr(s,r),yfr(e,r)];return vfr(e,t,i),n.object(...i)}function Efr({errorPath:e},{instancePath:t}){let r=t?(0,En.str)`${e}${(0,a6.getErrorPath)(t,a6.Type.Str)}`:e;return[Lc.default.instancePath,(0,En.strConcat)(Lc.default.instancePath,r)]}function yfr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0,En.str)`${t}/${e}`;return r&&(s=(0,En.str)`${s}${(0,a6.getErrorPath)(r,a6.Type.Str)}`),[hv.schemaPath,s]}function vfr(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([hv.keyword,s],[hv.params,typeof t=="function"?t(e):t||(0,En._)`{}`]),c.messages&&n.push([hv.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([hv.schema,a],[hv.parentSchema,(0,En._)`${l}${d}`],[Lc.default.data,i]),u&&n.push([hv.propertyName,u])}});var k5e=S(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.boolOrEmptySchema=B1.topBoolOrEmptySchema=void 0;var Sfr=CO(),Tfr=Ir(),bfr=nm(),Ifr={message:"boolean schema is false"};function Rfr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?M5e(e,!1):typeof r=="object"&&r.$async===!0?t.return(bfr.default.data):(t.assign((0,Tfr._)`${n}.errors`,null),t.return(!0))}B1.topBoolOrEmptySchema=Rfr;function Cfr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),M5e(e)):r.var(t,!0)}B1.boolOrEmptySchema=Cfr;function M5e(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,Sfr.reportError)(s,Ifr,void 0,t)}});var qte=S(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});U1.getRules=U1.isJSONType=void 0;var xfr=["string","number","integer","boolean","null","object","array"],wfr=new Set(xfr);function Nfr(e){return typeof e=="string"&&wfr.has(e)}U1.isJSONType=Nfr;function Ofr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}U1.getRules=Ofr});var Hte=S(eA=>{"use strict";Object.defineProperty(eA,"__esModule",{value:!0});eA.shouldUseRule=eA.shouldUseGroup=eA.schemaHasRulesForType=void 0;function Dfr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&B5e(e,n)}eA.schemaHasRulesForType=Dfr;function B5e(e,t){return t.rules.some(r=>U5e(e,r))}eA.shouldUseGroup=B5e;function U5e(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}eA.shouldUseRule=U5e});var xO=S(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.reportTypeError=qo.checkDataTypes=qo.checkDataType=qo.coerceAndCheckDataType=qo.getJSONTypes=qo.getSchemaTypes=qo.DataType=void 0;var Pfr=qte(),Lfr=Hte(),Mfr=CO(),_r=Ir(),F5e=An(),F1;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(F1||(qo.DataType=F1={}));function kfr(e){let t=$5e(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}qo.getSchemaTypes=kfr;function $5e(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Pfr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}qo.getJSONTypes=$5e;function Bfr(e,t){let{gen:r,data:n,opts:s}=e,i=Ufr(t,s.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,Lfr.schemaHasRulesForType)(e,t[0]));if(a){let o=jte(t,n,s.strictNumbers,F1.Wrong);r.if(o,()=>{i.length?Ffr(e,t,i):Kte(e)})}return a}qo.coerceAndCheckDataType=Bfr;var q5e=new Set(["string","number","integer","boolean","null"]);function Ufr(e,t){return t?e.filter(r=>q5e.has(r)||t==="array"&&r==="array"):[]}function Ffr(e,t,r){let{gen:n,data:s,opts:i}=e,a=n.let("dataType",(0,_r._)`typeof ${s}`),o=n.let("coerced",(0,_r._)`undefined`);i.coerceTypes==="array"&&n.if((0,_r._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,_r._)`${s}[0]`).assign(a,(0,_r._)`typeof ${s}`).if(jte(t,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,_r._)`${o} !== undefined`);for(let u of r)(q5e.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),Kte(e),n.endIf(),n.if((0,_r._)`${o} !== undefined`,()=>{n.assign(s,o),$fr(e,o)});function c(u){switch(u){case"string":n.elseIf((0,_r._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,_r._)`"" + ${s}`).elseIf((0,_r._)`${s} === null`).assign(o,(0,_r._)`""`);return;case"number":n.elseIf((0,_r._)`${a} == "boolean" || ${s} === null + || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,_r._)`+${s}`);return;case"integer":n.elseIf((0,_r._)`${a} === "boolean" || ${s} === null + || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,_r._)`+${s}`);return;case"boolean":n.elseIf((0,_r._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,_r._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,_r._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,_r._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${s} === null`).assign(o,(0,_r._)`[${s}]`)}}}function $fr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,_r._)`${t} !== undefined`,()=>e.assign((0,_r._)`${t}[${r}]`,n))}function Vte(e,t,r,n=F1.Correct){let s=n===F1.Correct?_r.operators.EQ:_r.operators.NEQ,i;switch(e){case"null":return(0,_r._)`${t} ${s} null`;case"array":i=(0,_r._)`Array.isArray(${t})`;break;case"object":i=(0,_r._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,_r._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,_r._)`typeof ${t} ${s} ${e}`}return n===F1.Correct?i:(0,_r.not)(i);function a(o=_r.nil){return(0,_r.and)((0,_r._)`typeof ${t} == "number"`,o,r?(0,_r._)`isFinite(${t})`:_r.nil)}}qo.checkDataType=Vte;function jte(e,t,r,n){if(e.length===1)return Vte(e[0],t,r,n);let s,i=(0,F5e.toHash)(e);if(i.array&&i.object){let a=(0,_r._)`typeof ${t} != "object"`;s=i.null?a:(0,_r._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else s=_r.nil;i.number&&delete i.integer;for(let a in i)s=(0,_r.and)(s,Vte(a,t,r,n));return s}qo.checkDataTypes=jte;var qfr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,_r._)`{type: ${e}}`:(0,_r._)`{type: ${t}}`};function Kte(e){let t=Hfr(e);(0,Mfr.reportError)(t,qfr)}qo.reportTypeError=Kte;function Hfr(e){let{gen:t,data:r,schema:n}=e,s=(0,F5e.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var V5e=S(o6=>{"use strict";Object.defineProperty(o6,"__esModule",{value:!0});o6.assignDefaults=void 0;var $1=Ir(),Vfr=An();function jfr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)H5e(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,i)=>H5e(e,i,s.default))}o6.assignDefaults=jfr;function H5e(e,t,r){let{gen:n,compositeRule:s,data:i,opts:a}=e;if(r===void 0)return;let o=(0,$1._)`${i}${(0,$1.getProperty)(t)}`;if(s){(0,Vfr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let c=(0,$1._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,$1._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,$1._)`${o} = ${(0,$1.stringify)(r)}`)}});var fd=S(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.validateUnion=cs.validateArray=cs.usePattern=cs.callValidateCode=cs.schemaProperties=cs.allSchemaProperties=cs.noPropertyInData=cs.propertyInData=cs.isOwnProperty=cs.hasPropFunc=cs.reportMissingProp=cs.checkMissingProp=cs.checkReportMissingProp=void 0;var js=Ir(),Gte=An(),tA=nm(),Kfr=An();function Gfr(e,t){let{gen:r,data:n,it:s}=e;r.if(Yte(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0,js._)`${t}`},!0),e.error()})}cs.checkReportMissingProp=Gfr;function zfr({gen:e,data:t,it:{opts:r}},n,s){return(0,js.or)(...n.map(i=>(0,js.and)(Yte(e,t,i,r.ownProperties),(0,js._)`${s} = ${i}`)))}cs.checkMissingProp=zfr;function Yfr(e,t){e.setParams({missingProperty:t},!0),e.error()}cs.reportMissingProp=Yfr;function j5e(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,js._)`Object.prototype.hasOwnProperty`})}cs.hasPropFunc=j5e;function zte(e,t,r){return(0,js._)`${j5e(e)}.call(${t}, ${r})`}cs.isOwnProperty=zte;function Qfr(e,t,r,n){let s=(0,js._)`${t}${(0,js.getProperty)(r)} !== undefined`;return n?(0,js._)`${s} && ${zte(e,t,r)}`:s}cs.propertyInData=Qfr;function Yte(e,t,r,n){let s=(0,js._)`${t}${(0,js.getProperty)(r)} === undefined`;return n?(0,js.or)(s,(0,js.not)(zte(e,t,r))):s}cs.noPropertyInData=Yte;function K5e(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}cs.allSchemaProperties=K5e;function Wfr(e,t){return K5e(t).filter(r=>!(0,Gte.alwaysValidSchema)(e,t[r]))}cs.schemaProperties=Wfr;function Xfr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,js._)`${e}, ${t}, ${n}${s}`:t,d=[[tA.default.instancePath,(0,js.strConcat)(tA.default.instancePath,i)],[tA.default.parentData,a.parentData],[tA.default.parentDataProperty,a.parentDataProperty],[tA.default.rootData,tA.default.rootData]];a.opts.dynamicRef&&d.push([tA.default.dynamicAnchors,tA.default.dynamicAnchors]);let f=(0,js._)`${l}, ${r.object(...d)}`;return c!==js.nil?(0,js._)`${o}.call(${c}, ${f})`:(0,js._)`${o}(${f})`}cs.callValidateCode=Xfr;var Jfr=(0,js._)`new RegExp`;function Zfr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,js._)`${s.code==="new RegExp"?Jfr:(0,Kfr.useFunc)(e,s)}(${r}, ${n})`})}cs.usePattern=Zfr;function e0r(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(i,!0),a(()=>t.break()),i;function a(o){let c=t.const("len",(0,js._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:Gte.Type.Num},i),t.if((0,js.not)(i),o)})}}cs.validateArray=e0r;function t0r(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Gte.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);t.assign(a,(0,js._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,js.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}cs.validateUnion=t0r});var Y5e=S(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});nh.validateKeywordUsage=nh.validSchemaType=nh.funcKeywordCode=nh.macroKeywordCode=void 0;var Mc=Ir(),pv=nm(),r0r=fd(),n0r=CO();function s0r(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=e,o=t.macro.call(a.self,s,i,a),c=z5e(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");e.subschema({schema:o,schemaPath:Mc.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}nh.macroKeywordCode=s0r;function i0r(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=e;o0r(c,t);let u=!o&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=z5e(n,s,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&G5e(e),g(()=>e.error());else{let _=t.async?h():p();t.modifying&&G5e(e),g(()=>a0r(e,_))}}function h(){let _=n.let("ruleErrs",null);return n.try(()=>m((0,Mc._)`await `),y=>n.assign(d,!1).if((0,Mc._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Mc._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,Mc._)`${l}.errors`;return n.assign(_,null),m(Mc.nil),_}function m(_=t.async?(0,Mc._)`await `:Mc.nil){let y=c.opts.passContext?pv.default.this:pv.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,Mc._)`${_}${(0,r0r.callValidateCode)(e,l,y,A)}`,t.modifying)}function g(_){var y;n.if((0,Mc.not)((y=t.valid)!==null&&y!==void 0?y:d),_)}}nh.funcKeywordCode=i0r;function G5e(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Mc._)`${n.parentData}[${n.parentDataProperty}]`))}function a0r(e,t){let{gen:r}=e;r.if((0,Mc._)`Array.isArray(${t})`,()=>{r.assign(pv.default.vErrors,(0,Mc._)`${pv.default.vErrors} === null ? ${t} : ${pv.default.vErrors}.concat(${t})`).assign(pv.default.errors,(0,Mc._)`${pv.default.vErrors}.length`),(0,n0r.extendErrors)(e)},()=>e.error())}function o0r({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function z5e(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Mc.stringify)(r)})}function c0r(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}nh.validSchemaType=c0r;function u0r({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}nh.validateKeywordUsage=u0r});var W5e=S(rA=>{"use strict";Object.defineProperty(rA,"__esModule",{value:!0});rA.extendSubschemaMode=rA.extendSubschemaData=rA.getSubschema=void 0;var sh=Ir(),Q5e=An();function l0r(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,sh._)`${e.schemaPath}${(0,sh.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,sh._)`${e.schemaPath}${(0,sh.getProperty)(t)}${(0,sh.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,Q5e.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}rA.getSubschema=l0r;function d0r(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=o.let("data",(0,sh._)`${t.data}${(0,sh.getProperty)(r)}`,!0);c(f),e.errorPath=(0,sh.str)`${u}${(0,Q5e.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,sh._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(s!==void 0){let u=s instanceof sh.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}rA.extendSubschemaData=d0r;function f0r(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}rA.extendSubschemaMode=f0r});var hd=S(($Hn,X5e)=>{"use strict";X5e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!e(t[s],r[s]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!e(t[a],r[a]))return!1}return!0}return t!==t&&r!==r}});var Z5e=S((qHn,J5e)=>{"use strict";var nA=J5e.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};c6(t,n,s,e,"",e)};nA.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};nA.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};nA.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};nA.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function c6(e,t,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in nA.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.getSchemaRefs=Tu.resolveUrl=Tu.normalizeId=Tu._getFullPath=Tu.getFullPath=Tu.inlineRef=void 0;var p0r=An(),m0r=hd(),g0r=Z5e(),_0r=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function A0r(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Qte(e):t?e8e(e)<=t:!1}Tu.inlineRef=A0r;var E0r=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Qte(e){for(let t in e){if(E0r.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Qte)||typeof r=="object"&&Qte(r))return!0}return!1}function e8e(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!_0r.has(r)&&(typeof e[r]=="object"&&(0,p0r.eachItem)(e[r],n=>t+=e8e(n)),t===1/0))return 1/0}return t}function t8e(e,t="",r){r!==!1&&(t=q1(t));let n=e.parse(t);return r8e(e,n)}Tu.getFullPath=t8e;function r8e(e,t){return e.serialize(t).split("#")[0]+"#"}Tu._getFullPath=r8e;var y0r=/#\/?$/;function q1(e){return e?e.replace(y0r,""):""}Tu.normalizeId=q1;function v0r(e,t,r){return r=q1(r),e.resolve(t,r)}Tu.resolveUrl=v0r;var S0r=/^[a-z_][-a-z0-9._]*$/i;function T0r(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=q1(e[r]||t),i={"":s},a=t8e(n,s,!1),o={},c=new Set;return g0r(e,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=a+f,g=i[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),i[f]=g;function _(A){let E=this.opts.uriResolver.resolve;if(A=q1(g?E(g,A):A),c.has(A))throw l(A);c.add(A);let v=this.refs[A];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,A):A!==q1(m)&&(A[0]==="#"?(u(d,o[A],A),o[A]=d):this.refs[A]=m),A}function y(A){if(typeof A=="string"){if(!S0r.test(A))throw new Error(`invalid anchor "${A}"`);_.call(this,`#${A}`)}}}),o;function u(d,f,h){if(f!==void 0&&!m0r(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Tu.getSchemaRefs=T0r});var DO=S(sA=>{"use strict";Object.defineProperty(sA,"__esModule",{value:!0});sA.getData=sA.KeywordCxt=sA.validateFunctionCode=void 0;var o8e=k5e(),n8e=xO(),Xte=Hte(),u6=xO(),b0r=V5e(),OO=Y5e(),Wte=W5e(),Ct=Ir(),nr=nm(),I0r=wO(),sm=An(),NO=CO();function R0r(e){if(l8e(e)&&(d8e(e),u8e(e))){w0r(e);return}c8e(e,()=>(0,o8e.topBoolOrEmptySchema)(e))}sA.validateFunctionCode=R0r;function c8e({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){s.code.es5?e.func(t,(0,Ct._)`${nr.default.data}, ${nr.default.valCxt}`,n.$async,()=>{e.code((0,Ct._)`"use strict"; ${s8e(r,s)}`),x0r(e,s),e.code(i)}):e.func(t,(0,Ct._)`${nr.default.data}, ${C0r(s)}`,n.$async,()=>e.code(s8e(r,s)).code(i))}function C0r(e){return(0,Ct._)`{${nr.default.instancePath}="", ${nr.default.parentData}, ${nr.default.parentDataProperty}, ${nr.default.rootData}=${nr.default.data}${e.dynamicRef?(0,Ct._)`, ${nr.default.dynamicAnchors}={}`:Ct.nil}}={}`}function x0r(e,t){e.if(nr.default.valCxt,()=>{e.var(nr.default.instancePath,(0,Ct._)`${nr.default.valCxt}.${nr.default.instancePath}`),e.var(nr.default.parentData,(0,Ct._)`${nr.default.valCxt}.${nr.default.parentData}`),e.var(nr.default.parentDataProperty,(0,Ct._)`${nr.default.valCxt}.${nr.default.parentDataProperty}`),e.var(nr.default.rootData,(0,Ct._)`${nr.default.valCxt}.${nr.default.rootData}`),t.dynamicRef&&e.var(nr.default.dynamicAnchors,(0,Ct._)`${nr.default.valCxt}.${nr.default.dynamicAnchors}`)},()=>{e.var(nr.default.instancePath,(0,Ct._)`""`),e.var(nr.default.parentData,(0,Ct._)`undefined`),e.var(nr.default.parentDataProperty,(0,Ct._)`undefined`),e.var(nr.default.rootData,nr.default.data),t.dynamicRef&&e.var(nr.default.dynamicAnchors,(0,Ct._)`{}`)})}function w0r(e){let{schema:t,opts:r,gen:n}=e;c8e(e,()=>{r.$comment&&t.$comment&&h8e(e),L0r(e),n.let(nr.default.vErrors,null),n.let(nr.default.errors,0),r.unevaluated&&N0r(e),f8e(e),B0r(e)})}function N0r(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,Ct._)`${r}.evaluated`),t.if((0,Ct._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,Ct._)`${e.evaluated}.props`,(0,Ct._)`undefined`)),t.if((0,Ct._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,Ct._)`${e.evaluated}.items`,(0,Ct._)`undefined`))}function s8e(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,Ct._)`/*# sourceURL=${r} */`:Ct.nil}function O0r(e,t){if(l8e(e)&&(d8e(e),u8e(e))){D0r(e,t);return}(0,o8e.boolOrEmptySchema)(e,t)}function u8e({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function l8e(e){return typeof e.schema!="boolean"}function D0r(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&h8e(e),M0r(e),k0r(e);let i=n.const("_errs",nr.default.errors);f8e(e,i),n.var(t,(0,Ct._)`${i} === ${nr.default.errors}`)}function d8e(e){(0,sm.checkUnknownRules)(e),P0r(e)}function f8e(e,t){if(e.opts.jtd)return i8e(e,[],!1,t);let r=(0,n8e.getSchemaTypes)(e.schema),n=(0,n8e.coerceAndCheckDataType)(e,r);i8e(e,r,!n,t)}function P0r(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,sm.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function L0r(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,sm.checkStrictMode)(e,"default is ignored in the schema root")}function M0r(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,I0r.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function k0r(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function h8e({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code((0,Ct._)`${nr.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,Ct.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,Ct._)`${nr.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function B0r(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;r.$async?t.if((0,Ct._)`${nr.default.errors} === 0`,()=>t.return(nr.default.data),()=>t.throw((0,Ct._)`new ${s}(${nr.default.vErrors})`)):(t.assign((0,Ct._)`${n}.errors`,nr.default.vErrors),i.unevaluated&&U0r(e),t.return((0,Ct._)`${nr.default.errors} === 0`))}function U0r({gen:e,evaluated:t,props:r,items:n}){r instanceof Ct.Name&&e.assign((0,Ct._)`${t}.props`,r),n instanceof Ct.Name&&e.assign((0,Ct._)`${t}.items`,n)}function i8e(e,t,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,sm.schemaHasRulesButRef)(i,l))){s.block(()=>m8e(e,"$ref",l.all.$ref.definition));return}c.jtd||F0r(e,t),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Xte.shouldUseGroup)(i,f)&&(f.type?(s.if((0,u6.checkDataType)(f.type,a,c.strictNumbers)),a8e(e,f),t.length===1&&t[0]===f.type&&r&&(s.else(),(0,u6.reportTypeError)(e)),s.endIf()):a8e(e,f),o||s.if((0,Ct._)`${nr.default.errors} === ${n||0}`))}}function a8e(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0,b0r.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Xte.shouldUseRule)(n,i)&&m8e(e,i.keyword,i.definition,t.type)})}function F0r(e,t){e.schemaEnv.meta||!e.opts.strictTypes||($0r(e,t),e.opts.allowUnionTypes||q0r(e,t),H0r(e,e.dataTypes))}function $0r(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{p8e(e.dataTypes,r)||Jte(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),j0r(e,t)}}function q0r(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Jte(e,"use allowUnionTypes to allow union type keyword")}function H0r(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,Xte.shouldUseRule)(e.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>V0r(t,a))&&Jte(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function V0r(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function p8e(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function j0r(e,t){let r=[];for(let n of e.dataTypes)p8e(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Jte(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,sm.checkStrictMode)(e,t,e.opts.strictTypes)}var l6=class{constructor(t,r,n){if((0,OO.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,sm.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",g8e(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,OO.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",nr.default.errors))}result(t,r,n){this.failResult((0,Ct.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,Ct.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,Ct._)`${r} !== undefined && (${(0,Ct.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?NO.reportExtraError:NO.reportError)(this,this.def.error,r)}$dataError(){(0,NO.reportError)(this,this.def.$dataError||NO.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,NO.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=Ct.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=Ct.nil,r=Ct.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,Ct.or)((0,Ct._)`${s} === undefined`,r)),t!==Ct.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==Ct.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,Ct.or)(a(),o());function a(){if(n.length){if(!(r instanceof Ct.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,Ct._)`${(0,u6.checkDataTypes)(c,r,i.opts.strictNumbers,u6.DataType.Wrong)}`}return Ct.nil}function o(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return(0,Ct._)`!${c}(${r})`}return Ct.nil}}subschema(t,r){let n=(0,Wte.getSubschema)(this.it,t);(0,Wte.extendSubschemaData)(n,this.it,t),(0,Wte.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return O0r(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=sm.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=sm.mergeEvaluated.items(s,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(t,Ct.Name)),!0}};sA.KeywordCxt=l6;function m8e(e,t,r,n){let s=new l6(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0,OO.funcKeywordCode)(s,r):"macro"in r?(0,OO.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,OO.funcKeywordCode)(s,r)}var K0r=/^\/(?:[^~]|~0|~1)*$/,G0r=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function g8e(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return nr.default.rootData;if(e[0]==="/"){if(!K0r.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,i=nr.default.rootData}else{let u=G0r.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,Ct._)`${i}${(0,Ct.getProperty)((0,sm.unescapeJsonPointer)(u))}`,a=(0,Ct._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}sA.getData=g8e});var d6=S(ere=>{"use strict";Object.defineProperty(ere,"__esModule",{value:!0});var Zte=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};ere.default=Zte});var PO=S(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});var tre=wO(),rre=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,tre.resolveUrl)(t,r,n),this.missingSchema=(0,tre.normalizeId)((0,tre.getFullPath)(t,this.missingRef))}};nre.default=rre});var h6=S(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});pd.resolveSchema=pd.getCompilingSchema=pd.resolveRef=pd.compileSchema=pd.SchemaEnv=void 0;var Nf=Ir(),z0r=d6(),mv=nm(),Of=wO(),_8e=An(),Y0r=DO(),H1=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Of.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};pd.SchemaEnv=H1;function ire(e){let t=A8e.call(this,e);if(t)return t;let r=(0,Of.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Nf.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;e.$async&&(o=a.scopeValue("Error",{ref:z0r.default,code:(0,Nf._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:mv.default.data,parentData:mv.default.parentData,parentDataProperty:mv.default.parentDataProperty,dataNames:[mv.default.data],dataPathArr:[Nf.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,Nf.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:Nf.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Nf._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,Y0r.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(mv.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let h=new Function(`${mv.default.self}`,`${mv.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:m}=u;h.evaluated={props:p instanceof Nf.Name?void 0:p,items:m instanceof Nf.Name?void 0:m,dynamicProps:p instanceof Nf.Name,dynamicItems:m instanceof Nf.Name},h.source&&(h.source.evaluated=(0,Nf.stringify)(h.evaluated))}return e.validate=h,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}pd.compileSchema=ire;function Q0r(e,t,r){var n;r=(0,Of.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=J0r.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new H1({schema:a,schemaId:o,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=W0r.call(this,i)}pd.resolveRef=Q0r;function W0r(e){return(0,Of.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:ire.call(this,e)}function A8e(e){for(let t of this._compilations)if(X0r(t,e))return t}pd.getCompilingSchema=A8e;function X0r(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function J0r(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||f6.call(this,e,t)}function f6(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Of._getFullPath)(this.opts.uriResolver,r),s=(0,Of.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return sre.call(this,r,e);let i=(0,Of.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=f6.call(this,e,a);return typeof o?.schema!="object"?void 0:sre.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||ire.call(this,a),i===(0,Of.normalizeId)(t)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Of.resolveUrl)(this.opts.uriResolver,s,u)),new H1({schema:o,schemaId:c,root:e,baseId:s})}return sre.call(this,r,a)}}pd.resolveSchema=f6;var Z0r=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function sre(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,_8e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Z0r.has(o)&&u&&(t=(0,Of.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,_8e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Of.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=f6.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new H1({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var E8e=S((zHn,ehr)=>{ehr.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var ore=S((YHn,T8e)=>{"use strict";var thr=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),v8e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function are(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var rhr=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function y8e(e){return e.length=0,!0}function nhr(e,t,r){if(e.length){let n=are(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function shr(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=nhr;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=y8e}else{s.push(u);continue}}return s.length&&(o===y8e?r.zone=s.join(""):a?n.push(s.join("")):n.push(are(s))),r.address=n.join(""),r}function S8e(e){if(ihr(e,":")<2)return{host:e,isIPV6:!1};let t=shr(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function ihr(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:uhr}=ore(),lhr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,dhr=["http","https","ws","wss","urn","urn:uuid"];function fhr(e){return dhr.indexOf(e)!==-1}function cre(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function b8e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function I8e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function hhr(e){return e.secure=cre(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function phr(e){if((e.port===(cre(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function mhr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(lhr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=ure(s);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function ghr(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=ure(s);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function _hr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!uhr(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Ahr(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var R8e={scheme:"http",domainHost:!0,parse:b8e,serialize:I8e},Ehr={scheme:"https",domainHost:R8e.domainHost,parse:b8e,serialize:I8e},p6={scheme:"ws",domainHost:!0,parse:hhr,serialize:phr},yhr={scheme:"wss",domainHost:p6.domainHost,parse:p6.parse,serialize:p6.serialize},vhr={scheme:"urn",parse:mhr,serialize:ghr,skipNormalize:!0},Shr={scheme:"urn:uuid",parse:_hr,serialize:Ahr,skipNormalize:!0},m6={http:R8e,https:Ehr,ws:p6,wss:yhr,urn:vhr,"urn:uuid":Shr};Object.setPrototypeOf(m6,null);function ure(e){return e&&(m6[e]||m6[e.toLowerCase()])||void 0}C8e.exports={wsIsSecure:cre,SCHEMES:m6,isValidSchemeName:fhr,getSchemeHandler:ure}});var O8e=S((WHn,_6)=>{"use strict";var{normalizeIPv6:Thr,removeDotSegments:LO,recomposeAuthority:bhr,normalizeComponentEncoding:g6,isIPv4:Ihr,nonSimpleDomain:Rhr}=ore(),{SCHEMES:Chr,getSchemeHandler:w8e}=x8e();function xhr(e,t){return typeof e=="string"?e=ih(im(e,t),t):typeof e=="object"&&(e=im(ih(e,t),t)),e}function whr(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=N8e(im(e,n),im(t,n),n,!0);return n.skipEscape=!0,ih(s,n)}function N8e(e,t,r,n){let s={};return n||(e=im(ih(e,r),r),t=im(ih(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=LO(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=LO(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=LO(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=LO(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function Nhr(e,t,r){return typeof e=="string"?(e=unescape(e),e=ih(g6(im(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=ih(g6(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=ih(g6(im(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=ih(g6(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function ih(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=w8e(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=bhr(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=LO(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var Ohr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function im(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(Ohr);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(Ihr(n.host)===!1){let c=Thr(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=w8e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&Rhr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var lre={SCHEMES:Chr,normalize:xhr,resolve:whr,resolveComponent:N8e,equal:Nhr,serialize:ih,parse:im};_6.exports=lre;_6.exports.default=lre;_6.exports.fastUri=lre});var P8e=S(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});var D8e=O8e();D8e.code='require("ajv/dist/runtime/uri").default';dre.default=D8e});var q8e=S(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.CodeGen=ho.Name=ho.nil=ho.stringify=ho.str=ho._=ho.KeywordCxt=void 0;var Dhr=DO();Object.defineProperty(ho,"KeywordCxt",{enumerable:!0,get:function(){return Dhr.KeywordCxt}});var V1=Ir();Object.defineProperty(ho,"_",{enumerable:!0,get:function(){return V1._}});Object.defineProperty(ho,"str",{enumerable:!0,get:function(){return V1.str}});Object.defineProperty(ho,"stringify",{enumerable:!0,get:function(){return V1.stringify}});Object.defineProperty(ho,"nil",{enumerable:!0,get:function(){return V1.nil}});Object.defineProperty(ho,"Name",{enumerable:!0,get:function(){return V1.Name}});Object.defineProperty(ho,"CodeGen",{enumerable:!0,get:function(){return V1.CodeGen}});var Phr=d6(),U8e=PO(),Lhr=qte(),MO=h6(),Mhr=Ir(),kO=wO(),A6=xO(),hre=An(),L8e=E8e(),khr=P8e(),F8e=(e,t)=>new RegExp(e,t);F8e.code="new RegExp";var Bhr=["removeAdditional","useDefaults","coerceTypes"],Uhr=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Fhr={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},$hr={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},M8e=200;function qhr(e){var t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y,A,E,v,b,I,T,x;let w=e.strict,D=(t=e.code)===null||t===void 0?void 0:t.optimize,M=D===!0||D===void 0?1:D||0,L=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:F8e,U=(s=e.uriResolver)!==null&&s!==void 0?s:khr.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:w)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=e.strictNumbers)!==null&&o!==void 0?o:w)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:w)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:w)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:L}:{optimize:M,regExp:L},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:M8e,loopEnum:(g=e.loopEnum)!==null&&g!==void 0?g:M8e,meta:(_=e.meta)!==null&&_!==void 0?_:!0,messages:(y=e.messages)!==null&&y!==void 0?y:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(v=e.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(b=e.validateSchema)!==null&&b!==void 0?b:!0,validateFormats:(I=e.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(T=e.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(x=e.int32range)!==null&&x!==void 0?x:!0,uriResolver:U}}var BO=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...qhr(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Mhr.ValueScope({scope:{},prefixes:Uhr,es5:r,lines:n}),this.logger=zhr(t.logger);let s=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Lhr.getRules)(),k8e.call(this,Fhr,t,"NOT SUPPORTED"),k8e.call(this,$hr,t,"DEPRECATED","warn"),this._metaOpts=Khr.call(this),t.formats&&Vhr.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&jhr.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Hhr.call(this),t.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=L8e;n==="id"&&(s={...L8e},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof U8e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,kO.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,t);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(t){let r;for(;typeof(r=B8e.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new MO.SchemaEnv({schema:{},schemaId:n});if(r=MO.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=B8e.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,kO.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Qhr.call(this,n,r),!r)return(0,hre.eachItem)(n,i=>fre.call(this,i)),this;Xhr.call(this,r);let s={...r,type:(0,A6.getJSONTypes)(r.type),schemaType:(0,A6.getJSONTypes)(r.schemaType)};return(0,hre.eachItem)(n,s.type.length===0?i=>fre.call(this,i,s):i=>s.type.forEach(a=>fre.call(this,i,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===t);s>=0&&n.rules.splice(s,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let i=s.split("/").slice(1),a=t;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=$8e(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]))}}_addSchema(t,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,kO.normalizeId)(a||n);let u=kO.getSchemaRefs.call(this,t,n);return c=new MO.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):MO.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{MO.compileSchema.call(this,t)}finally{this.opts=r}}};BO.ValidationError=Phr.default;BO.MissingRefError=U8e.default;ho.default=BO;function k8e(e,t,r,n="error"){for(let s in e){let i=s;i in t&&this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function B8e(e){return e=(0,kO.normalizeId)(e),this.schemas[e]||this.refs[e]}function Hhr(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function Vhr(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function jhr(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function Khr(){let e={...this.opts};for(let t of Bhr)delete e[t];return e}var Ghr={log(){},warn(){},error(){}};function zhr(e){if(e===!1)return Ghr;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var Yhr=/^[a-z_$][a-z0-9_$:-]*$/i;function Qhr(e,t){let{RULES:r}=this;if((0,hre.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Yhr.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function fre(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,A6.getJSONTypes)(t.type),schemaType:(0,A6.getJSONTypes)(t.schemaType)}};t.before?Whr.call(this,a,o,t.before):a.rules.push(o),i.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function Whr(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function Xhr(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=$8e(t)),e.validateSchema=this.compile(t,!0))}var Jhr={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function $8e(e){return{anyOf:[e,Jhr]}}});var H8e=S(pre=>{"use strict";Object.defineProperty(pre,"__esModule",{value:!0});var Zhr={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};pre.default=Zhr});var G8e=S(gv=>{"use strict";Object.defineProperty(gv,"__esModule",{value:!0});gv.callRef=gv.getValidate=void 0;var epr=PO(),V8e=fd(),bu=Ir(),j1=nm(),j8e=h6(),E6=An(),tpr={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=j8e.resolveRef.call(c,u,s,r);if(l===void 0)throw new epr.default(n.opts.uriResolver,s,r);if(l instanceof j8e.SchemaEnv)return f(l);return h(l);function d(){if(i===u)return y6(e,a,i,i.$async);let p=t.scopeValue("root",{ref:u});return y6(e,(0,bu._)`${p}.validate`,u,u.$async)}function f(p){let m=K8e(e,p);y6(e,m,p,p.$async)}function h(p){let m=t.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,bu.stringify)(p)}:{ref:p}),g=t.name("valid"),_=e.subschema({schema:p,dataTypes:[],schemaPath:bu.nil,topSchemaRef:m,errSchemaPath:r},g);e.mergeEvaluated(_),e.ok(g)}}};function K8e(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,bu._)`${r.scopeValue("wrapper",{ref:t})}.validate`}gv.getValidate=K8e;function y6(e,t,r,n){let{gen:s,it:i}=e,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?j1.default.this:bu.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,bu._)`await ${(0,V8e.callValidateCode)(e,t,u)}`),h(t),a||s.assign(p,!0)},m=>{s.if((0,bu._)`!(${m} instanceof ${i.ValidationError})`,()=>s.throw(m)),f(m),a||s.assign(p,!1)}),e.ok(p)}function d(){e.result((0,V8e.callValidateCode)(e,t,u),()=>h(t),()=>f(t))}function f(p){let m=(0,bu._)`${p}.errors`;s.assign(j1.default.vErrors,(0,bu._)`${j1.default.vErrors} === null ? ${m} : ${j1.default.vErrors}.concat(${m})`),s.assign(j1.default.errors,(0,bu._)`${j1.default.vErrors}.length`)}function h(p){var m;if(!i.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=E6.mergeEvaluated.props(s,g.props,i.props));else{let _=s.var("props",(0,bu._)`${p}.evaluated.props`);i.props=E6.mergeEvaluated.props(s,_,i.props,bu.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=E6.mergeEvaluated.items(s,g.items,i.items));else{let _=s.var("items",(0,bu._)`${p}.evaluated.items`);i.items=E6.mergeEvaluated.items(s,_,i.items,bu.Name)}}}gv.callRef=y6;gv.default=tpr});var z8e=S(mre=>{"use strict";Object.defineProperty(mre,"__esModule",{value:!0});var rpr=H8e(),npr=G8e(),spr=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",rpr.default,npr.default];mre.default=spr});var Y8e=S(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});var v6=Ir(),iA=v6.operators,S6={maximum:{okStr:"<=",ok:iA.LTE,fail:iA.GT},minimum:{okStr:">=",ok:iA.GTE,fail:iA.LT},exclusiveMaximum:{okStr:"<",ok:iA.LT,fail:iA.GTE},exclusiveMinimum:{okStr:">",ok:iA.GT,fail:iA.LTE}},ipr={message:({keyword:e,schemaCode:t})=>(0,v6.str)`must be ${S6[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,v6._)`{comparison: ${S6[e].okStr}, limit: ${t}}`},apr={keyword:Object.keys(S6),type:"number",schemaType:"number",$data:!0,error:ipr,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,v6._)`${r} ${S6[t].fail} ${n} || isNaN(${r})`)}};gre.default=apr});var Q8e=S(_re=>{"use strict";Object.defineProperty(_re,"__esModule",{value:!0});var UO=Ir(),opr={message:({schemaCode:e})=>(0,UO.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,UO._)`{multipleOf: ${e}}`},cpr={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:opr,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,a=t.let("res"),o=i?(0,UO._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,UO._)`${a} !== parseInt(${a})`;e.fail$data((0,UO._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};_re.default=cpr});var X8e=S(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});function W8e(e){let t=e.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(Ere,"__esModule",{value:!0});var _v=Ir(),upr=An(),lpr=X8e(),dpr={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,_v.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,_v._)`{limit: ${e}}`},fpr={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:dpr,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?_v.operators.GT:_v.operators.LT,a=s.opts.unicode===!1?(0,_v._)`${r}.length`:(0,_v._)`${(0,upr.useFunc)(e.gen,lpr.default)}(${r})`;e.fail$data((0,_v._)`${a} ${i} ${n}`)}};Ere.default=fpr});var Z8e=S(yre=>{"use strict";Object.defineProperty(yre,"__esModule",{value:!0});var hpr=fd(),ppr=An(),K1=Ir(),mpr={message:({schemaCode:e})=>(0,K1.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,K1._)`{pattern: ${e}}`},gpr={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:mpr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0,K1._)`new RegExp`:(0,ppr.useFunc)(t,c),l=t.let("valid");t.try(()=>t.assign(l,(0,K1._)`${u}(${i}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,K1._)`!${l}`)}else{let c=(0,hpr.usePattern)(e,s);e.fail$data((0,K1._)`!${c}.test(${r})`)}}};yre.default=gpr});var e$e=S(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});var FO=Ir(),_pr={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,FO.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,FO._)`{limit: ${e}}`},Apr={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:_pr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?FO.operators.GT:FO.operators.LT;e.fail$data((0,FO._)`Object.keys(${r}).length ${s} ${n}`)}};vre.default=Apr});var t$e=S(Sre=>{"use strict";Object.defineProperty(Sre,"__esModule",{value:!0});var $O=fd(),qO=Ir(),Epr=An(),ypr={message:({params:{missingProperty:e}})=>(0,qO.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,qO._)`{missingProperty: ${e}}`},vpr={keyword:"required",type:"object",schemaType:"array",$data:!0,error:ypr,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:a}=e,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let m of r)if(h?.[m]===void 0&&!p.has(m)){let g=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,Epr.checkStrictMode)(a,_,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(qO.nil,d);else for(let h of r)(0,$O.checkReportMissingProp)(e,h)}function l(){let h=t.let("missing");if(c||i){let p=t.let("valid",!0);e.block$data(p,()=>f(h,p)),e.ok(p)}else t.if((0,$O.checkMissingProp)(e,r,h)),(0,$O.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,$O.noPropertyInData)(t,s,h,o.ownProperties),()=>e.error())})}function f(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,$O.propertyInData)(t,s,h,o.ownProperties)),t.if((0,qO.not)(p),()=>{e.error(),t.break()})},qO.nil)}}};Sre.default=vpr});var r$e=S(Tre=>{"use strict";Object.defineProperty(Tre,"__esModule",{value:!0});var HO=Ir(),Spr={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,HO.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,HO._)`{limit: ${e}}`},Tpr={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:Spr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?HO.operators.GT:HO.operators.LT;e.fail$data((0,HO._)`${r}.length ${s} ${n}`)}};Tre.default=Tpr});var VO=S(bre=>{"use strict";Object.defineProperty(bre,"__esModule",{value:!0});var n$e=hd();n$e.code='require("ajv/dist/runtime/equal").default';bre.default=n$e});var s$e=S(Rre=>{"use strict";Object.defineProperty(Rre,"__esModule",{value:!0});var Ire=xO(),po=Ir(),bpr=An(),Ipr=VO(),Rpr={message:({params:{i:e,j:t}})=>(0,po.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,po._)`{i: ${e}, j: ${t}}`},Cpr={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Rpr,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=e;if(!n&&!s)return;let c=t.let("valid"),u=i.items?(0,Ire.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,po._)`${a} === false`),e.ok(c);function l(){let p=t.let("i",(0,po._)`${r}.length`),m=t.let("j");e.setParams({i:p,j:m}),t.assign(c,!0),t.if((0,po._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let g=t.name("item"),_=(0,Ire.checkDataTypes)(u,g,o.opts.strictNumbers,Ire.DataType.Wrong),y=t.const("indices",(0,po._)`{}`);t.for((0,po._)`;${p}--;`,()=>{t.let(g,(0,po._)`${r}[${p}]`),t.if(_,(0,po._)`continue`),u.length>1&&t.if((0,po._)`typeof ${g} == "string"`,(0,po._)`${g} += "_"`),t.if((0,po._)`typeof ${y}[${g}] == "number"`,()=>{t.assign(m,(0,po._)`${y}[${g}]`),e.error(),t.assign(c,!1).break()}).code((0,po._)`${y}[${g}] = ${p}`)})}function h(p,m){let g=(0,bpr.useFunc)(t,Ipr.default),_=t.name("outer");t.label(_).for((0,po._)`;${p}--;`,()=>t.for((0,po._)`${m} = ${p}; ${m}--;`,()=>t.if((0,po._)`${g}(${r}[${p}], ${r}[${m}])`,()=>{e.error(),t.assign(c,!1).break(_)})))}}};Rre.default=Cpr});var i$e=S(xre=>{"use strict";Object.defineProperty(xre,"__esModule",{value:!0});var Cre=Ir(),xpr=An(),wpr=VO(),Npr={message:"must be equal to constant",params:({schemaCode:e})=>(0,Cre._)`{allowedValue: ${e}}`},Opr={keyword:"const",$data:!0,error:Npr,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,Cre._)`!${(0,xpr.useFunc)(t,wpr.default)}(${r}, ${s})`):e.fail((0,Cre._)`${i} !== ${r}`)}};xre.default=Opr});var a$e=S(wre=>{"use strict";Object.defineProperty(wre,"__esModule",{value:!0});var jO=Ir(),Dpr=An(),Ppr=VO(),Lpr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,jO._)`{allowedValues: ${e}}`},Mpr={keyword:"enum",schemaType:"array",$data:!0,error:Lpr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,Dpr.useFunc)(t,Ppr.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",i);l=(0,jO.or)(...s.map((p,m)=>f(h,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,h=>t.if((0,jO._)`${u()}(${r}, ${h})`,()=>t.assign(l,!0).break()))}function f(h,p){let m=s[p];return typeof m=="object"&&m!==null?(0,jO._)`${u()}(${r}, ${h}[${p}])`:(0,jO._)`${r} === ${m}`}}};wre.default=Mpr});var o$e=S(Nre=>{"use strict";Object.defineProperty(Nre,"__esModule",{value:!0});var kpr=Y8e(),Bpr=Q8e(),Upr=J8e(),Fpr=Z8e(),$pr=e$e(),qpr=t$e(),Hpr=r$e(),Vpr=s$e(),jpr=i$e(),Kpr=a$e(),Gpr=[kpr.default,Bpr.default,Upr.default,Fpr.default,$pr.default,qpr.default,Hpr.default,Vpr.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},jpr.default,Kpr.default];Nre.default=Gpr});var Dre=S(KO=>{"use strict";Object.defineProperty(KO,"__esModule",{value:!0});KO.validateAdditionalItems=void 0;var Av=Ir(),Ore=An(),zpr={message:({params:{len:e}})=>(0,Av.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Av._)`{limit: ${e}}`},Ypr={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:zpr,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Ore.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}c$e(e,n)}};function c$e(e,t){let{gen:r,schema:n,data:s,keyword:i,it:a}=e;a.items=!0;let o=r.const("len",(0,Av._)`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Av._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,Ore.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Av._)`${o} <= ${t.length}`);r.if((0,Av.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,o,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:Ore.Type.Num},u),a.allErrors||r.if((0,Av.not)(u),()=>r.break())})}}KO.validateAdditionalItems=c$e;KO.default=Ypr});var Pre=S(GO=>{"use strict";Object.defineProperty(GO,"__esModule",{value:!0});GO.validateTuple=void 0;var u$e=Ir(),T6=An(),Qpr=fd(),Wpr={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return l$e(e,"additionalItems",t);r.items=!0,!(0,T6.alwaysValidSchema)(r,t)&&e.ok((0,Qpr.validateArray)(e))}};function l$e(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=e;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=T6.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,u$e._)`${i}.length`);r.forEach((d,f)=>{(0,T6.alwaysValidSchema)(o,d)||(n.if((0,u$e._)`${u} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},c)),e.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=o,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let g=`"${a}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,T6.checkStrictMode)(o,g,f.strictTuples)}}}GO.validateTuple=l$e;GO.default=Wpr});var d$e=S(Lre=>{"use strict";Object.defineProperty(Lre,"__esModule",{value:!0});var Xpr=Pre(),Jpr={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,Xpr.validateTuple)(e,"items")};Lre.default=Jpr});var h$e=S(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});var f$e=Ir(),Zpr=An(),emr=fd(),tmr=Dre(),rmr={message:({params:{len:e}})=>(0,f$e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,f$e._)`{limit: ${e}}`},nmr={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:rmr,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=!0,!(0,Zpr.alwaysValidSchema)(n,t)&&(s?(0,tmr.validateAdditionalItems)(e,s):e.ok((0,emr.validateArray)(e)))}};Mre.default=nmr});var p$e=S(kre=>{"use strict";Object.defineProperty(kre,"__esModule",{value:!0});var md=Ir(),b6=An(),smr={message:({params:{min:e,max:t}})=>t===void 0?(0,md.str)`must contain at least ${e} valid item(s)`:(0,md.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,md._)`{minContains: ${e}}`:(0,md._)`{minContains: ${e}, maxContains: ${t}}`},imr={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:smr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=t.const("len",(0,md._)`${s}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,b6.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,b6.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,b6.alwaysValidSchema)(i,r)){let m=(0,md._)`${l} >= ${a}`;o!==void 0&&(m=(0,md._)`${m} && ${l} <= ${o}`),e.pass(m);return}i.items=!0;let d=t.name("valid");o===void 0&&a===1?h(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,md._)`${s}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),g=t.let("count",0);h(m,()=>t.if(m,()=>p(g)))}function h(m,g){t.forRange("i",0,l,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:b6.Type.Num,compositeRule:!0},m),g()})}function p(m){t.code((0,md._)`${m}++`),o===void 0?t.if((0,md._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,md._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,md._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};kre.default=imr});var _$e=S(ah=>{"use strict";Object.defineProperty(ah,"__esModule",{value:!0});ah.validateSchemaDeps=ah.validatePropertyDeps=ah.error=void 0;var Bre=Ir(),amr=An(),zO=fd();ah.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Bre.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Bre._)`{property: ${e}, missingProperty: ${n}, depsCount: ${t}, - deps: ${r}}`};var pWt={keyword:"dependencies",type:"object",schemaType:"object",error:Bf.error,code(e){let[t,r]=hWt(e);yMe(e,t),_Me(e,r)}};function hWt({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let i=Array.isArray(e[n])?t:r;i[n]=e[n]}return[t,r]}function yMe(e,t=e.schema){let{gen:r,data:n,it:i}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let u=(0,HT.propertyInData)(r,n,a,i.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),i.allErrors?r.if(u,()=>{for(let c of o)(0,HT.checkReportMissingProp)(e,c)}):(r.if((0,SW._)`${u} && (${(0,HT.checkMissingProp)(e,o,s)})`),(0,HT.reportMissingProp)(e,s),r.else())}}Bf.validatePropertyDeps=yMe;function _Me(e,t=e.schema){let{gen:r,data:n,keyword:i,it:s}=e,a=r.name("valid");for(let o in t)(0,fWt.alwaysValidSchema)(s,t[o])||(r.if((0,HT.propertyInData)(r,n,o,s.opts.ownProperties),()=>{let u=e.subschema({keyword:i,schemaProp:o},a);e.mergeValidEvaluated(u,a)},()=>r.var(a,!0)),e.ok(a))}Bf.validateSchemaDeps=_Me;Bf.default=pWt});var bMe=b(wW=>{"use strict";Object.defineProperty(wW,"__esModule",{value:!0});var vMe=Wt(),mWt=Pr(),gWt={message:"property name must be valid",params:({params:e})=>(0,vMe._)`{propertyName: ${e.propertyName}}`},yWt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:gWt,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,mWt.alwaysValidSchema)(i,r))return;let s=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},s),t.if((0,vMe.not)(s),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(s)}};wW.default=yWt});var xW=b(IW=>{"use strict";Object.defineProperty(IW,"__esModule",{value:!0});var BB=el(),gd=Wt(),_Wt=xh(),$B=Pr(),AWt={message:"must NOT have additional properties",params:({params:e})=>(0,gd._)`{additionalProperty: ${e.additionalProperty}}`},vWt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:AWt,code(e){let{gen:t,schema:r,parentSchema:n,data:i,errsCount:s,it:a}=e;if(!s)throw new Error("ajv implementation error");let{allErrors:o,opts:u}=a;if(a.props=!0,u.removeAdditional!=="all"&&(0,$B.alwaysValidSchema)(a,r))return;let c=(0,BB.allSchemaProperties)(n.properties),l=(0,BB.allSchemaProperties)(n.patternProperties);d(),e.ok((0,gd._)`${s} === ${_Wt.default.errors}`);function d(){t.forIn("key",i,y=>{!c.length&&!l.length?h(y):t.if(f(y),()=>h(y))})}function f(y){let g;if(c.length>8){let v=(0,$B.schemaRefOrVal)(a,n.properties,"properties");g=(0,BB.isOwnProperty)(t,v,y)}else c.length?g=(0,gd.or)(...c.map(v=>(0,gd._)`${y} === ${v}`)):g=gd.nil;return l.length&&(g=(0,gd.or)(g,...l.map(v=>(0,gd._)`${(0,BB.usePattern)(e,v)}.test(${y})`))),(0,gd.not)(g)}function p(y){t.code((0,gd._)`delete ${i}[${y}]`)}function h(y){if(u.removeAdditional==="all"||u.removeAdditional&&r===!1){p(y);return}if(r===!1){e.setParams({additionalProperty:y}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,$B.alwaysValidSchema)(a,r)){let g=t.name("valid");u.removeAdditional==="failing"?(m(y,g,!1),t.if((0,gd.not)(g),()=>{e.reset(),p(y)})):(m(y,g),o||t.if((0,gd.not)(g),()=>t.break()))}}function m(y,g,v){let A={keyword:"additionalProperties",dataProp:y,dataPropType:$B.Type.Str};v===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,g)}}};IW.default=vWt});var wMe=b(TW=>{"use strict";Object.defineProperty(TW,"__esModule",{value:!0});var bWt=TT(),EMe=el(),CW=Pr(),SMe=xW(),EWt={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:s}=e;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&SMe.default.code(new bWt.KeywordCxt(s,SMe.default,"additionalProperties"));let a=(0,EMe.allSchemaProperties)(r);for(let d of a)s.definedProperties.add(d);s.opts.unevaluated&&a.length&&s.props!==!0&&(s.props=CW.mergeEvaluated.props(t,(0,CW.toHash)(a),s.props));let o=a.filter(d=>!(0,CW.alwaysValidSchema)(s,r[d]));if(o.length===0)return;let u=t.name("valid");for(let d of o)c(d)?l(d):(t.if((0,EMe.propertyInData)(t,i,d,s.opts.ownProperties)),l(d),s.allErrors||t.else().var(u,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(u);function c(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},u)}}};TW.default=EWt});var TMe=b(NW=>{"use strict";Object.defineProperty(NW,"__esModule",{value:!0});var IMe=el(),FB=Wt(),xMe=Pr(),CMe=Pr(),SWt={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:i,it:s}=e,{opts:a}=s,o=(0,IMe.allSchemaProperties)(r),u=o.filter(m=>(0,xMe.alwaysValidSchema)(s,r[m]));if(o.length===0||u.length===o.length&&(!s.opts.unevaluated||s.props===!0))return;let c=a.strictSchema&&!a.allowMatchingProperties&&i.properties,l=t.name("valid");s.props!==!0&&!(s.props instanceof FB.Name)&&(s.props=(0,CMe.evaluatedPropsToName)(t,s.props));let{props:d}=s;f();function f(){for(let m of o)c&&p(m),s.allErrors?h(m):(t.var(l,!0),h(m),t.if(l))}function p(m){for(let y in c)new RegExp(m).test(y)&&(0,xMe.checkStrictMode)(s,`property ${y} matches pattern ${m} (use allowMatchingProperties)`)}function h(m){t.forIn("key",n,y=>{t.if((0,FB._)`${(0,IMe.usePattern)(e,m)}.test(${y})`,()=>{let g=u.includes(m);g||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:y,dataPropType:CMe.Type.Str},l),s.opts.unevaluated&&d!==!0?t.assign((0,FB._)`${d}[${y}]`,!0):!g&&!s.allErrors&&t.if((0,FB.not)(l),()=>t.break())})})}}};NW.default=SWt});var NMe=b(RW=>{"use strict";Object.defineProperty(RW,"__esModule",{value:!0});var wWt=Pr(),IWt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,wWt.alwaysValidSchema)(n,r)){e.fail();return}let i=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),e.failResult(i,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};RW.default=IWt});var RMe=b(DW=>{"use strict";Object.defineProperty(DW,"__esModule",{value:!0});var xWt=el(),CWt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:xWt.validateUnion,error:{message:"must match a schema in anyOf"}};DW.default=CWt});var DMe=b(kW=>{"use strict";Object.defineProperty(kW,"__esModule",{value:!0});var UB=Wt(),TWt=Pr(),NWt={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,UB._)`{passingSchemas: ${e.passing}}`},RWt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:NWt,code(e){let{gen:t,schema:r,parentSchema:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,a=t.let("valid",!1),o=t.let("passing",null),u=t.name("_valid");e.setParams({passing:o}),t.block(c),e.result(a,()=>e.reset(),()=>e.error(!0));function c(){s.forEach((l,d)=>{let f;(0,TWt.alwaysValidSchema)(i,l)?t.var(u,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},u),d>0&&t.if((0,UB._)`${u} && ${a}`).assign(a,!1).assign(o,(0,UB._)`[${o}, ${d}]`).else(),t.if(u,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,UB.Name)})})}}};kW.default=RWt});var kMe=b(OW=>{"use strict";Object.defineProperty(OW,"__esModule",{value:!0});var DWt=Pr(),kWt={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=t.name("valid");r.forEach((s,a)=>{if((0,DWt.alwaysValidSchema)(n,s))return;let o=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(o)})}};OW.default=kWt});var MMe=b(PW=>{"use strict";Object.defineProperty(PW,"__esModule",{value:!0});var qB=Wt(),PMe=Pr(),OWt={message:({params:e})=>(0,qB.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,qB._)`{failingKeyword: ${e.ifClause}}`},PWt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:OWt,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,PMe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=OMe(n,"then"),s=OMe(n,"else");if(!i&&!s)return;let a=t.let("valid",!0),o=t.name("_valid");if(u(),e.reset(),i&&s){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,c("then",l),c("else",l))}else i?t.if(o,c("then")):t.if((0,qB.not)(o),c("else"));e.pass(a,()=>e.error(!0));function u(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function c(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,qB._)`${l}`):e.setParams({ifClause:l})}}}};function OMe(e,t){let r=e.schema[t];return r!==void 0&&!(0,PMe.alwaysValidSchema)(e,r)}PW.default=PWt});var LMe=b(MW=>{"use strict";Object.defineProperty(MW,"__esModule",{value:!0});var MWt=Pr(),LWt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,MWt.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};MW.default=LWt});var BMe=b(LW=>{"use strict";Object.defineProperty(LW,"__esModule",{value:!0});var BWt=_W(),$Wt=pMe(),FWt=AW(),UWt=mMe(),qWt=gMe(),jWt=AMe(),HWt=bMe(),KWt=xW(),VWt=wMe(),zWt=TMe(),QWt=NMe(),GWt=RMe(),YWt=DMe(),WWt=kMe(),XWt=MMe(),JWt=LMe();function ZWt(e=!1){let t=[QWt.default,GWt.default,YWt.default,WWt.default,XWt.default,JWt.default,HWt.default,KWt.default,jWt.default,VWt.default,zWt.default];return e?t.push($Wt.default,UWt.default):t.push(BWt.default,FWt.default),t.push(qWt.default),t}LW.default=ZWt});var $Me=b(BW=>{"use strict";Object.defineProperty(BW,"__esModule",{value:!0});var Wi=Wt(),eXt={message:({schemaCode:e})=>(0,Wi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Wi._)`{format: ${e}}`},tXt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:eXt,code(e,t){let{gen:r,data:n,$data:i,schema:s,schemaCode:a,it:o}=e,{opts:u,errSchemaPath:c,schemaEnv:l,self:d}=o;if(!u.validateFormats)return;i?f():p();function f(){let h=r.scopeValue("formats",{ref:d.formats,code:u.code.formats}),m=r.const("fDef",(0,Wi._)`${h}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,Wi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(y,(0,Wi._)`${m}.type || "string"`).assign(g,(0,Wi._)`${m}.validate`),()=>r.assign(y,(0,Wi._)`"string"`).assign(g,m)),e.fail$data((0,Wi.or)(v(),A()));function v(){return u.strictSchema===!1?Wi.nil:(0,Wi._)`${a} && !${g}`}function A(){let _=l.$async?(0,Wi._)`(${m}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Wi._)`${g}(${n})`,E=(0,Wi._)`(typeof ${g} == "function" ? ${_} : ${g}.test(${n}))`;return(0,Wi._)`${g} && ${g} !== true && ${y} === ${t} && !${E}`}}function p(){let h=d.formats[s];if(!h){v();return}if(h===!0)return;let[m,y,g]=A(h);m===t&&e.pass(_());function v(){if(u.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${c}"`}}function A(E){let S=E instanceof RegExp?(0,Wi.regexpCode)(E):u.code.formats?(0,Wi._)`${u.code.formats}${(0,Wi.getProperty)(s)}`:void 0,C=r.scopeValue("formats",{key:s,ref:E,code:S});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,Wi._)`${C}.validate`]:["string",E,C]}function _(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Wi._)`await ${g}(${n})`}return typeof y=="function"?(0,Wi._)`${g}(${n})`:(0,Wi._)`${g}.test(${n})`}}}};BW.default=tXt});var FMe=b($W=>{"use strict";Object.defineProperty($W,"__esModule",{value:!0});var rXt=$Me(),nXt=[rXt.default];$W.default=nXt});var UMe=b(w1=>{"use strict";Object.defineProperty(w1,"__esModule",{value:!0});w1.contentVocabulary=w1.metadataVocabulary=void 0;w1.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];w1.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var jMe=b(FW=>{"use strict";Object.defineProperty(FW,"__esModule",{value:!0});var iXt=YPe(),sXt=cMe(),aXt=BMe(),oXt=FMe(),qMe=UMe(),uXt=[iXt.default,sXt.default,(0,aXt.default)(),oXt.default,qMe.metadataVocabulary,qMe.contentVocabulary];FW.default=uXt});var KMe=b(jB=>{"use strict";Object.defineProperty(jB,"__esModule",{value:!0});jB.DiscrError=void 0;var HMe;(function(e){e.Tag="tag",e.Mapping="mapping"})(HMe||(jB.DiscrError=HMe={}))});var zMe=b(qW=>{"use strict";Object.defineProperty(qW,"__esModule",{value:!0});var I1=Wt(),UW=KMe(),VMe=IB(),cXt=NT(),lXt=Pr(),dXt={message:({params:{discrError:e,tagName:t}})=>e===UW.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,I1._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},fXt={keyword:"discriminator",type:"object",schemaType:"object",error:dXt,code(e){let{gen:t,data:r,schema:n,parentSchema:i,it:s}=e,{oneOf:a}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=t.let("valid",!1),c=t.const("tag",(0,I1._)`${r}${(0,I1.getProperty)(o)}`);t.if((0,I1._)`typeof ${c} == "string"`,()=>l(),()=>e.error(!1,{discrError:UW.DiscrError.Tag,tag:c,tagName:o})),e.ok(u);function l(){let p=f();t.if(!1);for(let h in p)t.elseIf((0,I1._)`${c} === ${h}`),t.assign(u,d(p[h]));t.else(),e.error(!1,{discrError:UW.DiscrError.Mapping,tag:c,tagName:o}),t.endIf()}function d(p){let h=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:p},h);return e.mergeEvaluated(m,I1.Name),h}function f(){var p;let h={},m=g(i),y=!0;for(let _=0;_{pXt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var HW=b((ni,jW)=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.MissingRefError=ni.ValidationError=ni.CodeGen=ni.Name=ni.nil=ni.stringify=ni.str=ni._=ni.KeywordCxt=ni.Ajv=void 0;var hXt=HPe(),mXt=jMe(),gXt=zMe(),GMe=QMe(),yXt=["/properties"],HB="http://json-schema.org/draft-07/schema",x1=class extends hXt.default{_addVocabularies(){super._addVocabularies(),mXt.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(gXt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(GMe,yXt):GMe;this.addMetaSchema(t,HB,!1),this.refs["http://json-schema.org/schema"]=HB}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(HB)?HB:void 0)}};ni.Ajv=x1;jW.exports=ni=x1;jW.exports.Ajv=x1;Object.defineProperty(ni,"__esModule",{value:!0});ni.default=x1;var _Xt=TT();Object.defineProperty(ni,"KeywordCxt",{enumerable:!0,get:function(){return _Xt.KeywordCxt}});var C1=Wt();Object.defineProperty(ni,"_",{enumerable:!0,get:function(){return C1._}});Object.defineProperty(ni,"str",{enumerable:!0,get:function(){return C1.str}});Object.defineProperty(ni,"stringify",{enumerable:!0,get:function(){return C1.stringify}});Object.defineProperty(ni,"nil",{enumerable:!0,get:function(){return C1.nil}});Object.defineProperty(ni,"Name",{enumerable:!0,get:function(){return C1.Name}});Object.defineProperty(ni,"CodeGen",{enumerable:!0,get:function(){return C1.CodeGen}});var AXt=SB();Object.defineProperty(ni,"ValidationError",{enumerable:!0,get:function(){return AXt.default}});var vXt=NT();Object.defineProperty(ni,"MissingRefError",{enumerable:!0,get:function(){return vXt.default}})});var WMe=b((iCn,YMe)=>{"use strict";var bXt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};YMe.exports={HEX:bXt}});var iLe=b((sCn,nLe)=>{"use strict";var{HEX:EXt}=WMe();function eLe(e){if(rLe(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=t;return r?{host:wXt(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function KW(e){let t="",r=!0;for(let n of e){if(n!=="0"&&r===!0&&(r=!1),EXt[n]===void 0)return;r||(t+=n)}return t}function SXt(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,a=!1,o=!1;function u(){if(i.length){if(s===!1){let c=KW(i.join(""));if(c!==void 0)n.push(c);else return r.error=!0,!1}i.length=0}return!0}for(let c=0;c7){r.error=!0;break}c-1>=0&&e[c-1]===":"&&(a=!0);continue}else if(l==="%"){if(!u())break;s=!0}else{i.push(l);continue}}return i.length&&(s?r.zone=i.join(""):o?n.push(i.join("")):n.push(KW(i.join("")))),r.address=n.join(""),r}function tLe(e,t={}){if(rLe(e,":")<2)return{host:e,isIPV6:!1};let r=SXt(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,i=r.address;return r.zone&&(n+="%"+r.zone,i+="%25"+r.zone),{host:n,escapedHost:i,isIPV6:!0}}}function wXt(e,t){let r="",n=!0,i=e.length;for(let s=0;s{"use strict";var NXt=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,RXt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function sLe(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function aLe(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function oLe(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function DXt(e){return e.secure=sLe(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function kXt(e){if((e.port===(sLe(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function OXt(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(RXt);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let i=`${n}:${t.nid||e.nid}`,s=VW[i];e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function PXt(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),i=`${r}:${t.nid||n}`,s=VW[i];s&&(e=s.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function MXt(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!NXt.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function LXt(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var uLe={scheme:"http",domainHost:!0,parse:aLe,serialize:oLe},BXt={scheme:"https",domainHost:uLe.domainHost,parse:aLe,serialize:oLe},KB={scheme:"ws",domainHost:!0,parse:DXt,serialize:kXt},$Xt={scheme:"wss",domainHost:KB.domainHost,parse:KB.parse,serialize:KB.serialize},FXt={scheme:"urn",parse:OXt,serialize:PXt,skipNormalize:!0},UXt={scheme:"urn:uuid",parse:MXt,serialize:LXt,skipNormalize:!0},VW={http:uLe,https:BXt,ws:KB,wss:$Xt,urn:FXt,"urn:uuid":UXt};cLe.exports=VW});var QW=b((oCn,zB)=>{"use strict";var{normalizeIPv6:qXt,normalizeIPv4:jXt,removeDotSegments:KT,recomposeAuthority:HXt,normalizeComponentEncoding:VB}=iLe(),dLe=lLe();function KXt(e,t){return typeof e=="string"?e=$f(Nh(e,t),t):typeof e=="object"&&(e=Nh($f(e,t),t)),e}function VXt(e,t,r){let n=Object.assign({scheme:"null"},r),i=fLe(Nh(e,n),Nh(t,n),n,!0);return $f(i,{...n,skipEscape:!0})}function fLe(e,t,r,n){let i={};return n||(e=Nh($f(e,r),r),t=Nh($f(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(i.scheme=t.scheme,i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=KT(t.path||""),i.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=KT(t.path||""),i.query=t.query):(t.path?(t.path.charAt(0)==="/"?i.path=KT(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?i.path="/"+t.path:e.path?i.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:i.path=t.path,i.path=KT(i.path)),i.query=t.query):(i.path=e.path,t.query!==void 0?i.query=t.query:i.query=e.query),i.userinfo=e.userinfo,i.host=e.host,i.port=e.port),i.scheme=e.scheme),i.fragment=t.fragment,i}function zXt(e,t,r){return typeof e=="string"?(e=unescape(e),e=$f(VB(Nh(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=$f(VB(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=$f(VB(Nh(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=$f(VB(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function $f(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),i=[],s=dLe[(n.scheme||r.scheme||"").toLowerCase()];s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(i.push(r.scheme),i.push(":"));let a=HXt(r,n);if(a!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(a),r.path&&r.path.charAt(0)!=="/"&&i.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(o=KT(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),i.push(o)}return r.query!==void 0&&(i.push("?"),i.push(r.query)),r.fragment!==void 0&&(i.push("#"),i.push(r.fragment)),i.join("")}var QXt=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function GXt(e){let t=0;for(let r=0,n=e.length;r126||QXt[t])return!0;return!1}var YXt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Nh(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=e.indexOf("%")!==-1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let s=e.match(YXt);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host){let o=jXt(n.host);o.isIPV4===!1?n.host=qXt(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=dLe[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&GXt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(i&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),i&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),i&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var zW={normalize:KXt,resolve:VXt,resolveComponents:fLe,equal:zXt,serialize:$f,parse:Nh};zB.exports=zW;zB.exports.default=zW;zB.exports.fastUri=zW});var QB=b(Uf=>{"use strict";Object.defineProperty(Uf,"__esModule",{value:!0});Uf.formatNames=Uf.fastFormats=Uf.fullFormats=void 0;function Ff(e,t){return{validate:e,compare:t}}Uf.fullFormats={date:Ff(gLe,XW),time:Ff(YW(!0),JW),"date-time":Ff(pLe(!0),_Le),"iso-time":Ff(YW(),yLe),"iso-date-time":Ff(pLe(),ALe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:tJt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:uJt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:rJt,int32:{type:"number",validate:sJt},int64:{type:"number",validate:aJt},float:{type:"number",validate:mLe},double:{type:"number",validate:mLe},password:!0,binary:!0};Uf.fastFormats={...Uf.fullFormats,date:Ff(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,XW),time:Ff(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,JW),"date-time":Ff(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,_Le),"iso-time":Ff(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,yLe),"iso-date-time":Ff(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,ALe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Uf.formatNames=Object.keys(Uf.fullFormats);function WXt(e){return e%4===0&&(e%100!==0||e%400===0)}var XXt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,JXt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function gLe(e){let t=XXt.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],i=+t[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&WXt(r)?29:JXt[n])}function XW(e,t){if(e&&t)return e>t?1:e23||l>59||e&&!o)return!1;if(i<=23&&s<=59&&a<60)return!0;let d=s-l*u,f=i-c*u-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&a<61}}function JW(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function yLe(e,t){if(!(e&&t))return;let r=GW.exec(e),n=GW.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=nJt}function aJt(e){return Number.isInteger(e)}function mLe(){return!0}var oJt=/[^\\]\\Z/;function uJt(e){if(oJt.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var vLe=b(T1=>{"use strict";Object.defineProperty(T1,"__esModule",{value:!0});T1.formatLimitDefinition=void 0;var cJt=HW(),yd=Wt(),fg=yd.operators,GB={formatMaximum:{okStr:"<=",ok:fg.LTE,fail:fg.GT},formatMinimum:{okStr:">=",ok:fg.GTE,fail:fg.LT},formatExclusiveMaximum:{okStr:"<",ok:fg.LT,fail:fg.GTE},formatExclusiveMinimum:{okStr:">",ok:fg.GT,fail:fg.LTE}},lJt={message:({keyword:e,schemaCode:t})=>(0,yd.str)`should be ${GB[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,yd._)`{comparison: ${GB[e].okStr}, limit: ${t}}`};T1.formatLimitDefinition={keyword:Object.keys(GB),type:"string",schemaType:"string",$data:!0,error:lJt,code(e){let{gen:t,data:r,schemaCode:n,keyword:i,it:s}=e,{opts:a,self:o}=s;if(!a.validateFormats)return;let u=new cJt.KeywordCxt(s,o.RULES.all.format.definition,"format");u.$data?c():l();function c(){let f=t.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=t.const("fmt",(0,yd._)`${f}[${u.schemaCode}]`);e.fail$data((0,yd.or)((0,yd._)`typeof ${p} != "object"`,(0,yd._)`${p} instanceof RegExp`,(0,yd._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=u.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${i}": format "${f}" does not define "compare" function`);let h=t.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,yd._)`${a.code.formats}${(0,yd.getProperty)(f)}`:void 0});e.fail$data(d(h))}function d(f){return(0,yd._)`${f}.compare(${r}, ${n}) ${GB[i].fail} 0`}},dependencies:["format"]};var dJt=e=>(e.addKeyword(T1.formatLimitDefinition),e);T1.default=dJt});var wLe=b((VT,SLe)=>{"use strict";Object.defineProperty(VT,"__esModule",{value:!0});var N1=QB(),fJt=vLe(),ZW=Wt(),bLe=new ZW.Name("fullFormats"),pJt=new ZW.Name("fastFormats"),eX=(e,t={keywords:!0})=>{if(Array.isArray(t))return ELe(e,t,N1.fullFormats,bLe),e;let[r,n]=t.mode==="fast"?[N1.fastFormats,pJt]:[N1.fullFormats,bLe],i=t.formats||N1.formatNames;return ELe(e,i,r,n),t.keywords&&(0,fJt.default)(e),e};eX.get=(e,t="full")=>{let n=(t==="fast"?N1.fastFormats:N1.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function ELe(e,t,r,n){var i,s;(i=(s=e.opts.code).formats)!==null&&i!==void 0||(s.formats=(0,ZW._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}SLe.exports=VT=eX;Object.defineProperty(VT,"__esModule",{value:!0});VT.default=eX});var rX=b((lCn,ILe)=>{"use strict";var hJt=HW(),mJt=QW(),gJt=wLe(),yJt=cB()({proto:!0}),tX=class e{constructor(t){this.ajv=new hJt({...t,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:mJt}),gJt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=t||{}}addSchema(t,r){let n=t.$id||r;if(t.$id!==void 0&&t.$id[0]==="#"&&(n=r+t.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let i=yJt(t);this.convertSchemaToAjvFormat(i),this.ajv.addSchema(i,n),this._ajvSchemas[n]=t}}validate(t,r){return this.ajv.validate(t,r)}convertSchemaToAjvFormat(t){if(t!==null){t.type==="string"?(t.fjs_type="string",t.type=["string","object"]):Array.isArray(t.type)&&t.type.includes("string")&&!t.type.includes("object")&&(t.fjs_type="string",t.type.push("object"));for(let r in t)typeof t[r]=="object"&&this.convertSchemaToAjvFormat(t[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(t){let r=new e(t.ajvOptions);for(let[n,i]of Object.entries(t.ajvSchemas))r.ajv.addSchema(i,n);return r}};ILe.exports=tX});var iX=b((dCn,nX)=>{"use strict";function _Jt(e,t,r,n){let i="";t.validatorSchemasIds.size>0?(i+=`const Validator = require('fast-json-stringify/lib/validator') -`,i+=`const validatorState = ${JSON.stringify(n.getState())} -`,i+=`const validator = Validator.restoreFromState(validatorState) -`):i+=`const validator = null -`;let{schema:s,...a}=r.getState();return` + deps: ${r}}`};var omr={keyword:"dependencies",type:"object",schemaType:"object",error:ah.error,code(e){let[t,r]=cmr(e);m$e(e,t),g$e(e,r)}};function cmr({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function m$e(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let c=(0,zO.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,zO.checkReportMissingProp)(e,u)}):(r.if((0,Bre._)`${c} && (${(0,zO.checkMissingProp)(e,o,i)})`),(0,zO.reportMissingProp)(e,i),r.else())}}ah.validatePropertyDeps=m$e;function g$e(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,a=r.name("valid");for(let o in t)(0,amr.alwaysValidSchema)(i,t[o])||(r.if((0,zO.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:o},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}ah.validateSchemaDeps=g$e;ah.default=omr});var E$e=S(Ure=>{"use strict";Object.defineProperty(Ure,"__esModule",{value:!0});var A$e=Ir(),umr=An(),lmr={message:"property name must be valid",params:({params:e})=>(0,A$e._)`{propertyName: ${e.propertyName}}`},dmr={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:lmr,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0,umr.alwaysValidSchema)(s,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,A$e.not)(i),()=>{e.error(!0),s.allErrors||t.break()})}),e.ok(i)}};Ure.default=dmr});var $re=S(Fre=>{"use strict";Object.defineProperty(Fre,"__esModule",{value:!0});var I6=fd(),Df=Ir(),fmr=nm(),R6=An(),hmr={message:"must NOT have additional properties",params:({params:e})=>(0,Df._)`{additionalProperty: ${e.additionalProperty}}`},pmr={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:hmr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,R6.alwaysValidSchema)(a,r))return;let u=(0,I6.allSchemaProperties)(n.properties),l=(0,I6.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Df._)`${i} === ${fmr.default.errors}`);function d(){t.forIn("key",s,g=>{!u.length&&!l.length?p(g):t.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let y=(0,R6.schemaRefOrVal)(a,n.properties,"properties");_=(0,I6.isOwnProperty)(t,y,g)}else u.length?_=(0,Df.or)(...u.map(y=>(0,Df._)`${g} === ${y}`)):_=Df.nil;return l.length&&(_=(0,Df.or)(_,...l.map(y=>(0,Df._)`${(0,I6.usePattern)(e,y)}.test(${g})`))),(0,Df.not)(_)}function h(g){t.code((0,Df._)`delete ${s}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(g);return}if(r===!1){e.setParams({additionalProperty:g}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,R6.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(m(g,_,!1),t.if((0,Df.not)(_),()=>{e.reset(),h(g)})):(m(g,_),o||t.if((0,Df.not)(_),()=>t.break()))}}function m(g,_,y){let A={keyword:"additionalProperties",dataProp:g,dataPropType:R6.Type.Str};y===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,_)}}};Fre.default=pmr});var S$e=S(Hre=>{"use strict";Object.defineProperty(Hre,"__esModule",{value:!0});var mmr=DO(),y$e=fd(),qre=An(),v$e=$re(),gmr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&v$e.default.code(new mmr.KeywordCxt(i,v$e.default,"additionalProperties"));let a=(0,y$e.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=qre.mergeEvaluated.props(t,(0,qre.toHash)(a),i.props));let o=a.filter(d=>!(0,qre.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=t.name("valid");for(let d of o)u(d)?l(d):(t.if((0,y$e.propertyInData)(t,s,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Hre.default=gmr});var R$e=S(Vre=>{"use strict";Object.defineProperty(Vre,"__esModule",{value:!0});var T$e=fd(),C6=Ir(),b$e=An(),I$e=An(),_mr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:a}=i,o=(0,T$e.allSchemaProperties)(r),c=o.filter(m=>(0,b$e.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof C6.Name)&&(i.props=(0,I$e.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let m of o)u&&h(m),i.allErrors?p(m):(t.var(l,!0),p(m),t.if(l))}function h(m){for(let g in u)new RegExp(m).test(g)&&(0,b$e.checkStrictMode)(i,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){t.forIn("key",n,g=>{t.if((0,C6._)`${(0,T$e.usePattern)(e,m)}.test(${g})`,()=>{let _=c.includes(m);_||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:I$e.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,C6._)`${d}[${g}]`,!0):!_&&!i.allErrors&&t.if((0,C6.not)(l),()=>t.break())})})}}};Vre.default=_mr});var C$e=S(jre=>{"use strict";Object.defineProperty(jre,"__esModule",{value:!0});var Amr=An(),Emr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,Amr.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};jre.default=Emr});var x$e=S(Kre=>{"use strict";Object.defineProperty(Kre,"__esModule",{value:!0});var ymr=fd(),vmr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:ymr.validateUnion,error:{message:"must match a schema in anyOf"}};Kre.default=vmr});var w$e=S(Gre=>{"use strict";Object.defineProperty(Gre,"__esModule",{value:!0});var x6=Ir(),Smr=An(),Tmr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,x6._)`{passingSchemas: ${e.passing}}`},bmr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Tmr,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),o=t.let("passing",null),c=t.name("_valid");e.setParams({passing:o}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Smr.alwaysValidSchema)(s,l)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,x6._)`${c} && ${a}`).assign(a,!1).assign(o,(0,x6._)`[${o}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,x6.Name)})})}}};Gre.default=bmr});var N$e=S(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});var Imr=An(),Rmr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((i,a)=>{if((0,Imr.alwaysValidSchema)(n,i))return;let o=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(o)})}};zre.default=Rmr});var P$e=S(Yre=>{"use strict";Object.defineProperty(Yre,"__esModule",{value:!0});var w6=Ir(),D$e=An(),Cmr={message:({params:e})=>(0,w6.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,w6._)`{failingKeyword: ${e.ifClause}}`},xmr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Cmr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,D$e.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=O$e(n,"then"),i=O$e(n,"else");if(!s&&!i)return;let a=t.let("valid",!0),o=t.name("_valid");if(c(),e.reset(),s&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,u("then",l),u("else",l))}else s?t.if(o,u("then")):t.if((0,w6.not)(o),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,w6._)`${l}`):e.setParams({ifClause:l})}}}};function O$e(e,t){let r=e.schema[t];return r!==void 0&&!(0,D$e.alwaysValidSchema)(e,r)}Yre.default=xmr});var L$e=S(Qre=>{"use strict";Object.defineProperty(Qre,"__esModule",{value:!0});var wmr=An(),Nmr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,wmr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Qre.default=Nmr});var M$e=S(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});var Omr=Dre(),Dmr=d$e(),Pmr=Pre(),Lmr=h$e(),Mmr=p$e(),kmr=_$e(),Bmr=E$e(),Umr=$re(),Fmr=S$e(),$mr=R$e(),qmr=C$e(),Hmr=x$e(),Vmr=w$e(),jmr=N$e(),Kmr=P$e(),Gmr=L$e();function zmr(e=!1){let t=[qmr.default,Hmr.default,Vmr.default,jmr.default,Kmr.default,Gmr.default,Bmr.default,Umr.default,kmr.default,Fmr.default,$mr.default];return e?t.push(Dmr.default,Lmr.default):t.push(Omr.default,Pmr.default),t.push(Mmr.default),t}Wre.default=zmr});var k$e=S(Xre=>{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});var Fi=Ir(),Ymr={message:({schemaCode:e})=>(0,Fi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Fi._)`{format: ${e}}`},Qmr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Ymr,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,Fi._)`${p}[${a}]`),g=r.let("fType"),_=r.let("format");r.if((0,Fi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,Fi._)`${m}.type || "string"`).assign(_,(0,Fi._)`${m}.validate`),()=>r.assign(g,(0,Fi._)`"string"`).assign(_,m)),e.fail$data((0,Fi.or)(y(),A()));function y(){return c.strictSchema===!1?Fi.nil:(0,Fi._)`${a} && !${_}`}function A(){let E=l.$async?(0,Fi._)`(${m}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Fi._)`${_}(${n})`,v=(0,Fi._)`(typeof ${_} == "function" ? ${E} : ${_}.test(${n}))`;return(0,Fi._)`${_} && ${_} !== true && ${g} === ${t} && !${v}`}}function h(){let p=d.formats[i];if(!p){y();return}if(p===!0)return;let[m,g,_]=A(p);m===t&&e.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function A(v){let b=v instanceof RegExp?(0,Fi.regexpCode)(v):c.code.formats?(0,Fi._)`${c.code.formats}${(0,Fi.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:v,code:b});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,Fi._)`${I}.validate`]:["string",v,I]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Fi._)`await ${_}(${n})`}return typeof g=="function"?(0,Fi._)`${_}(${n})`:(0,Fi._)`${_}.test(${n})`}}}};Xre.default=Qmr});var B$e=S(Jre=>{"use strict";Object.defineProperty(Jre,"__esModule",{value:!0});var Wmr=k$e(),Xmr=[Wmr.default];Jre.default=Xmr});var U$e=S(G1=>{"use strict";Object.defineProperty(G1,"__esModule",{value:!0});G1.contentVocabulary=G1.metadataVocabulary=void 0;G1.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];G1.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var $$e=S(Zre=>{"use strict";Object.defineProperty(Zre,"__esModule",{value:!0});var Jmr=z8e(),Zmr=o$e(),egr=M$e(),tgr=B$e(),F$e=U$e(),rgr=[Jmr.default,Zmr.default,(0,egr.default)(),tgr.default,F$e.metadataVocabulary,F$e.contentVocabulary];Zre.default=rgr});var H$e=S(N6=>{"use strict";Object.defineProperty(N6,"__esModule",{value:!0});N6.DiscrError=void 0;var q$e;(function(e){e.Tag="tag",e.Mapping="mapping"})(q$e||(N6.DiscrError=q$e={}))});var j$e=S(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});var z1=Ir(),ene=H$e(),V$e=h6(),ngr=PO(),sgr=An(),igr={message:({params:{discrError:e,tagName:t}})=>e===ene.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,z1._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},agr={keyword:"discriminator",type:"object",schemaType:"object",error:igr,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,z1._)`${r}${(0,z1.getProperty)(o)}`);t.if((0,z1._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:ene.DiscrError.Tag,tag:u,tagName:o})),e.ok(c);function l(){let h=f();t.if(!1);for(let p in h)t.elseIf((0,z1._)`${u} === ${p}`),t.assign(c,d(h[p]));t.else(),e.error(!1,{discrError:ene.DiscrError.Mapping,tag:u,tagName:o}),t.endIf()}function d(h){let p=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(m,z1.Name),p}function f(){var h;let p={},m=_(s),g=!0;for(let E=0;E{ogr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var nne=S((Ks,rne)=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.MissingRefError=Ks.ValidationError=Ks.CodeGen=Ks.Name=Ks.nil=Ks.stringify=Ks.str=Ks._=Ks.KeywordCxt=Ks.Ajv=void 0;var cgr=q8e(),ugr=$$e(),lgr=j$e(),G$e=K$e(),dgr=["/properties"],O6="http://json-schema.org/draft-07/schema",Y1=class extends cgr.default{_addVocabularies(){super._addVocabularies(),ugr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(lgr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(G$e,dgr):G$e;this.addMetaSchema(t,O6,!1),this.refs["http://json-schema.org/schema"]=O6}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(O6)?O6:void 0)}};Ks.Ajv=Y1;rne.exports=Ks=Y1;rne.exports.Ajv=Y1;Object.defineProperty(Ks,"__esModule",{value:!0});Ks.default=Y1;var fgr=DO();Object.defineProperty(Ks,"KeywordCxt",{enumerable:!0,get:function(){return fgr.KeywordCxt}});var Q1=Ir();Object.defineProperty(Ks,"_",{enumerable:!0,get:function(){return Q1._}});Object.defineProperty(Ks,"str",{enumerable:!0,get:function(){return Q1.str}});Object.defineProperty(Ks,"stringify",{enumerable:!0,get:function(){return Q1.stringify}});Object.defineProperty(Ks,"nil",{enumerable:!0,get:function(){return Q1.nil}});Object.defineProperty(Ks,"Name",{enumerable:!0,get:function(){return Q1.Name}});Object.defineProperty(Ks,"CodeGen",{enumerable:!0,get:function(){return Q1.CodeGen}});var hgr=d6();Object.defineProperty(Ks,"ValidationError",{enumerable:!0,get:function(){return hgr.default}});var pgr=PO();Object.defineProperty(Ks,"MissingRefError",{enumerable:!0,get:function(){return pgr.default}})});var Y$e=S((FVn,z$e)=>{"use strict";var mgr={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};z$e.exports={HEX:mgr}});var r9e=S(($Vn,t9e)=>{"use strict";var{HEX:ggr}=Y$e();function J$e(e){if(e9e(e,".")<3)return{host:e,isIPV4:!1};let t=e.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=t;return r?{host:Agr(r,"."),isIPV4:!0}:{host:e,isIPV4:!1}}function sne(e){let t="",r=!0;for(let n of e){if(n!=="0"&&r===!0&&(r=!1),ggr[n]===void 0)return;r||(t+=n)}return t}function _gr(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=sne(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;u7){r.error=!0;break}u-1>=0&&e[u-1]===":"&&(a=!0);continue}else if(l==="%"){if(!c())break;i=!0}else{s.push(l);continue}}return s.length&&(i?r.zone=s.join(""):o?n.push(s.join("")):n.push(sne(s.join("")))),r.address=n.join(""),r}function Z$e(e,t={}){if(e9e(e,":")<2)return{host:e,isIPV6:!1};let r=_gr(e);if(r.error)return{host:e,isIPV6:!1};{let n=r.address,s=r.address;return r.zone&&(n+="%"+r.zone,s+="%25"+r.zone),{host:n,escapedHost:s,isIPV6:!0}}}function Agr(e,t){let r="",n=!0,s=e.length;for(let i=0;i{"use strict";var Tgr=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,bgr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function n9e(e){return typeof e.secure=="boolean"?e.secure:String(e.scheme).toLowerCase()==="wss"}function s9e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function i9e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function Igr(e){return e.secure=n9e(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Rgr(e){if((e.port===(n9e(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function Cgr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(bgr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=ine[s];e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function xgr(e,t){let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=ine[s];i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function wgr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Tgr.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Ngr(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var a9e={scheme:"http",domainHost:!0,parse:s9e,serialize:i9e},Ogr={scheme:"https",domainHost:a9e.domainHost,parse:s9e,serialize:i9e},D6={scheme:"ws",domainHost:!0,parse:Igr,serialize:Rgr},Dgr={scheme:"wss",domainHost:D6.domainHost,parse:D6.parse,serialize:D6.serialize},Pgr={scheme:"urn",parse:Cgr,serialize:xgr,skipNormalize:!0},Lgr={scheme:"urn:uuid",parse:wgr,serialize:Ngr,skipNormalize:!0},ine={http:a9e,https:Ogr,ws:D6,wss:Dgr,urn:Pgr,"urn:uuid":Lgr};o9e.exports=ine});var one=S((HVn,L6)=>{"use strict";var{normalizeIPv6:Mgr,normalizeIPv4:kgr,removeDotSegments:YO,recomposeAuthority:Bgr,normalizeComponentEncoding:P6}=r9e(),u9e=c9e();function Ugr(e,t){return typeof e=="string"?e=oh(am(e,t),t):typeof e=="object"&&(e=am(oh(e,t),t)),e}function Fgr(e,t,r){let n=Object.assign({scheme:"null"},r),s=l9e(am(e,n),am(t,n),n,!0);return oh(s,{...n,skipEscape:!0})}function l9e(e,t,r,n){let s={};return n||(e=am(oh(e,r),r),t=am(oh(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=YO(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=YO(t.path||""),s.query=t.query):(t.path?(t.path.charAt(0)==="/"?s.path=YO(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=YO(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function $gr(e,t,r){return typeof e=="string"?(e=unescape(e),e=oh(P6(am(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=oh(P6(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=oh(P6(am(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=oh(P6(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function oh(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=u9e[(n.scheme||r.scheme||"").toLowerCase()];i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(s.push(r.scheme),s.push(":"));let a=Bgr(r,n);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path.charAt(0)!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=YO(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),s.push(o)}return r.query!==void 0&&(s.push("?"),s.push(r.query)),r.fragment!==void 0&&(s.push("#"),s.push(r.fragment)),s.join("")}var qgr=Array.from({length:127},(e,t)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(t)));function Hgr(e){let t=0;for(let r=0,n=e.length;r126||qgr[t])return!0;return!1}var Vgr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function am(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=e.indexOf("%")!==-1;r.reference==="suffix"&&(e=(r.scheme?r.scheme+":":"")+"//"+e);let i=e.match(Vgr);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host){let o=kgr(n.host);o.isIPV4===!1?n.host=Mgr(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=u9e[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&Hgr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(s&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),s&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),s&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var ane={normalize:Ugr,resolve:Fgr,resolveComponents:l9e,equal:$gr,serialize:oh,parse:am};L6.exports=ane;L6.exports.default=ane;L6.exports.fastUri=ane});var M6=S(uh=>{"use strict";Object.defineProperty(uh,"__esModule",{value:!0});uh.formatNames=uh.fastFormats=uh.fullFormats=void 0;function ch(e,t){return{validate:e,compare:t}}uh.fullFormats={date:ch(p9e,dne),time:ch(une(!0),fne),"date-time":ch(d9e(!0),g9e),"iso-time":ch(une(),m9e),"iso-date-time":ch(d9e(),_9e),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Qgr,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:r_r,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:Wgr,int32:{type:"number",validate:Zgr},int64:{type:"number",validate:e_r},float:{type:"number",validate:h9e},double:{type:"number",validate:h9e},password:!0,binary:!0};uh.fastFormats={...uh.fullFormats,date:ch(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,dne),time:ch(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,fne),"date-time":ch(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,g9e),"iso-time":ch(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,m9e),"iso-date-time":ch(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,_9e),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};uh.formatNames=Object.keys(uh.fullFormats);function jgr(e){return e%4===0&&(e%100!==0||e%400===0)}var Kgr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Ggr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function p9e(e){let t=Kgr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&jgr(r)?29:Ggr[n])}function dne(e,t){if(e&&t)return e>t?1:e23||l>59||e&&!o)return!1;if(s<=23&&i<=59&&a<60)return!0;let d=i-l*c,f=s-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&a<61}}function fne(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(r&&n)return r-n}function m9e(e,t){if(!(e&&t))return;let r=cne.exec(e),n=cne.exec(t);if(r&&n)return e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t?1:e=Xgr}function e_r(e){return Number.isInteger(e)}function h9e(){return!0}var t_r=/[^\\]\\Z/;function r_r(e){if(t_r.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var A9e=S(W1=>{"use strict";Object.defineProperty(W1,"__esModule",{value:!0});W1.formatLimitDefinition=void 0;var n_r=nne(),Pf=Ir(),aA=Pf.operators,k6={formatMaximum:{okStr:"<=",ok:aA.LTE,fail:aA.GT},formatMinimum:{okStr:">=",ok:aA.GTE,fail:aA.LT},formatExclusiveMaximum:{okStr:"<",ok:aA.LT,fail:aA.GTE},formatExclusiveMinimum:{okStr:">",ok:aA.GT,fail:aA.LTE}},s_r={message:({keyword:e,schemaCode:t})=>(0,Pf.str)`should be ${k6[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,Pf._)`{comparison: ${k6[e].okStr}, limit: ${t}}`};W1.formatLimitDefinition={keyword:Object.keys(k6),type:"string",schemaType:"string",$data:!0,error:s_r,code(e){let{gen:t,data:r,schemaCode:n,keyword:s,it:i}=e,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new n_r.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=t.scopeValue("formats",{ref:o.formats,code:a.code.formats}),h=t.const("fmt",(0,Pf._)`${f}[${c.schemaCode}]`);e.fail$data((0,Pf.or)((0,Pf._)`typeof ${h} != "object"`,(0,Pf._)`${h} instanceof RegExp`,(0,Pf._)`typeof ${h}.compare != "function"`,d(h)))}function l(){let f=c.schema,h=o.formats[f];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let p=t.scopeValue("formats",{key:f,ref:h,code:a.code.formats?(0,Pf._)`${a.code.formats}${(0,Pf.getProperty)(f)}`:void 0});e.fail$data(d(p))}function d(f){return(0,Pf._)`${f}.compare(${r}, ${n}) ${k6[s].fail} 0`}},dependencies:["format"]};var i_r=e=>(e.addKeyword(W1.formatLimitDefinition),e);W1.default=i_r});var S9e=S((QO,v9e)=>{"use strict";Object.defineProperty(QO,"__esModule",{value:!0});var X1=M6(),a_r=A9e(),hne=Ir(),E9e=new hne.Name("fullFormats"),o_r=new hne.Name("fastFormats"),pne=(e,t={keywords:!0})=>{if(Array.isArray(t))return y9e(e,t,X1.fullFormats,E9e),e;let[r,n]=t.mode==="fast"?[X1.fastFormats,o_r]:[X1.fullFormats,E9e],s=t.formats||X1.formatNames;return y9e(e,s,r,n),t.keywords&&(0,a_r.default)(e),e};pne.get=(e,t="full")=>{let n=(t==="fast"?X1.fastFormats:X1.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function y9e(e,t,r,n){var s,i;(s=(i=e.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,hne._)`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}v9e.exports=QO=pne;Object.defineProperty(QO,"__esModule",{value:!0});QO.default=pne});var gne=S((KVn,T9e)=>{"use strict";var c_r=nne(),u_r=one(),l_r=S9e(),d_r=XF()({proto:!0}),mne=class e{constructor(t){this.ajv=new c_r({...t,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:u_r}),l_r(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=t||{}}addSchema(t,r){let n=t.$id||r;if(t.$id!==void 0&&t.$id[0]==="#"&&(n=r+t.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=d_r(t);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=t}}validate(t,r){return this.ajv.validate(t,r)}convertSchemaToAjvFormat(t){if(t!==null){t.type==="string"?(t.fjs_type="string",t.type=["string","object"]):Array.isArray(t.type)&&t.type.includes("string")&&!t.type.includes("object")&&(t.fjs_type="string",t.type.push("object"));for(let r in t)typeof t[r]=="object"&&this.convertSchemaToAjvFormat(t[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(t){let r=new e(t.ajvOptions);for(let[n,s]of Object.entries(t.ajvSchemas))r.ajv.addSchema(s,n);return r}};T9e.exports=mne});var Ane=S((GVn,_ne)=>{"use strict";function f_r(e,t,r,n){let s="";t.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator') +`,s+=`const validatorState = ${JSON.stringify(n.getState())} +`,s+=`const validator = Validator.restoreFromState(validatorState) +`):s+=`const validator = null +`;let{schema:i,...a}=r.getState();return` 'use strict' const Serializer = require('fast-json-stringify/lib/serializer') const serializerState = ${JSON.stringify(a)} const serializer = Serializer.restoreFromState(serializerState) - ${i} + ${s} - module.exports = ${e.toString()}(validator, serializer)`}nX.exports=_Jt;nX.exports.dependencies={Serializer:sY(),Validator:rX()}});var CLe=b((pCn,xLe)=>{"use strict";var{dependencies:AJt}=iX(),{Serializer:vJt,Validator:fCn}=AJt,bJt={mode:"standalone"},EJt=vJt.restoreFromState(bJt),SJt=null;xLe.exports=function(t,r){function n(s){let a=s&&typeof s.toJSON=="function"?s.toJSON():s;if(a===null)return"{}";let o=!1,u="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(u+=","),u+='"statusCode":',u+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(u+=","),u+='"code":',u+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(u+=","),u+='"error":',u+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(u+=","),u+='"message":',u+=r.asString(a.message)),u+"}"}return n}(SJt,EJt)});var zT=b((hCn,DLe)=>{"use strict";var TLe=require("node:http").STATUS_CODES,wJt=rG(),{kReplyHeaders:vA,kReplyNextErrorHandler:YB,kReplyIsRunningOnErrorHook:IJt,kReplyHasStatusCode:xJt,kRouteContext:RLe}=Vs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:CJt,FST_ERR_FAILED_ERROR_SERIALIZATION:TJt}=Wa(),{getSchemaSerializer:NJt}=hT(),sX=CLe(),RJt={func:kJt,toJSON(){return this.func.name.toString()+"()"}};function DJt(e,t,r){e[IJt]=!1;let n=e[RLe];if(e[YB]===!1){NLe(t,e,function(o,u){try{o.raw.writeHead(o.raw.statusCode,o[vA])}catch(c){o.log.warn({req:o.request,res:o,err:c},c&&c.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(u)});return}let i=e[YB]||n.errorHandler;e[YB]=Object.getPrototypeOf(i),delete e[vA]["content-type"],delete e[vA]["content-length"];let s=i.func;if(!s){e[YB]=!1,NLe(t,e,r);return}let a=s(t,e.request,e);a!==void 0&&(a!==null&&typeof a.then=="function"?wJt(a,e):e.send(a))}function kJt(e,t,r){if(PJt(e,r),!r[xJt]||r.statusCode===200){let n=e.statusCode||e.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:e},e&&e.message):r.log.error({req:t,res:r,err:e},e&&e.message),r.send(e)}function NLe(e,t,r){let n=t.raw,i=t.statusCode;t[vA]["content-type"]=t[vA]["content-type"]??"application/json; charset=utf-8";let s;try{let a=NJt(t[RLe],i,t[vA]["content-type"]);s=a===!1?sX({error:TLe[i+""],code:e.code,message:e.message,statusCode:i}):a(Object.create(e,{error:{value:TLe[i+""]},message:{value:e.message},statusCode:{value:i}}))}catch(a){t.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),t.code(500),s=sX(new TJt(a.message,e.message))}typeof s!="string"&&!Buffer.isBuffer(s)&&(s=sX(new CJt(typeof s))),t[vA]["content-length"]=""+Buffer.byteLength(s),r(t,s)}function OJt(e=RJt,t){if(!t)return e;let r=Object.create(e);return r.func=t,r}function PJt(e,t){let r=t.raw,n=r.statusCode;n=n>=400?n:500,e!=null&&(e.headers!==void 0&&t.headers(e.headers),e.status>=400?n=e.status:e.statusCode>=400&&(n=e.statusCode)),r.statusCode=n}DLe.exports={buildErrorHandler:OJt,handleError:DJt}});var t3=b((mCn,e3)=>{"use strict";var cX=require("node:stream").finished,MJt=require("node:stream").Readable,{kFourOhFourContext:kLe,kPublicRouteContext:OLe,kReplyErrorHandlerCalled:qLe,kReplyHijacked:QT,kReplyStartTime:GT,kReplyEndTime:dX,kReplySerializer:Rh,kReplySerializerDefault:XB,kReplyIsError:JB,kReplyHeaders:Yn,kReplyTrailers:zs,kReplyHasStatusCode:fX,kReplyIsRunningOnErrorHook:pX,kReplyNextErrorHandler:LJt,kDisableRequestLogging:jLe,kSchemaResponse:ZB,kReplyCacheSerializeFns:pg,kSchemaController:aX,kOptions:BJt,kRouteContext:ar}=Vs(),{onSendHookRunner:HLe,onResponseHookRunner:$Jt,preHandlerHookRunner:FJt,preSerializationHookRunner:UJt}=eg(),PLe=aG()[Symbol.for("internals")],qJt=pT(),lX=qJt.now,{handleError:MLe}=zT(),{getSchemaSerializer:jJt}=hT(),oX={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:HJt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:KJt,FST_ERR_REP_ALREADY_SENT:KLe,FST_ERR_REP_SENT_VALUE:VJt,FST_ERR_SEND_INSIDE_ONERR:zJt,FST_ERR_BAD_STATUS_CODE:QJt,FST_ERR_BAD_TRAILER_NAME:GJt,FST_ERR_BAD_TRAILER_VALUE:YJt,FST_ERR_MISSING_SERIALIZATION_FN:WJt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:XJt}=Wa(),{FSTDEP010:JJt,FSTDEP013:ZJt,FSTDEP019:eZt,FSTDEP020:tZt}=Eh(),VLe=Object.prototype.toString;function jn(e,t,r){this.raw=e,this[Rh]=null,this[qLe]=!1,this[JB]=!1,this[pX]=!1,this.request=t,this[Yn]={},this[zs]=null,this[fX]=!1,this[GT]=void 0,this.log=r}jn.props=[];Object.defineProperties(jn.prototype,{[ar]:{get(){return this.request[ar]}},context:{get(){return eZt(),this.request[ar]}},elapsedTime:{get(){return this[GT]===void 0?0:(this[dX]||lX())-this[GT]}},server:{get(){return this.request[ar].server}},sent:{enumerable:!0,get(){return(this[QT]||this.raw.writableEnded)===!0},set(e){if(JJt(),e!==!0)throw new VJt;if(this.sent&&this[QT])throw new KLe(this.request.url,this.request.method);this[QT]=!0}},statusCode:{get(){return this.raw.statusCode},set(e){this.code(e)}},[OLe]:{get(){return this.request[OLe]}}});jn.prototype.hijack=function(){return this[QT]=!0,this};jn.prototype.send=function(e){if(this[pX]===!0)throw new zJt;if(this.sent)return this.log.warn({err:new KLe(this.request.url,this.request.method)}),this;if(e instanceof Error||this[JB]===!0)return this[JB]=!1,YT(this,e,bA),this;if(e===void 0)return bA(this,e),this;let t=this.getHeader("content-type"),r=t!==void 0;if(e!==null){if(typeof e.pipe=="function"||typeof e.getReader=="function"||VLe.call(e)==="[object Response]")return bA(this,e),this;if(e?.buffer instanceof ArrayBuffer){r===!1&&(this[Yn]["content-type"]=oX.OCTET);let n=Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength);return bA(this,n),this}if(r===!1&&typeof e=="string")return this[Yn]["content-type"]=oX.PLAIN,bA(this,e),this}if(this[Rh]!==null){if(typeof e!="string")return LLe(this,e),this;e=this[Rh](e)}else if(r===!1||t.indexOf("json")>-1){if(r===!1)this[Yn]["content-type"]=oX.JSON;else if(t.indexOf("charset")===-1){let n=t.trim();n.endsWith(";")?this[Yn]["content-type"]=`${n} charset=utf-8`:this[Yn]["content-type"]=`${n}; charset=utf-8`}if(typeof e!="string")return LLe(this,e),this}return bA(this,e),this};jn.prototype.getHeader=function(e){e=e.toLowerCase();let t=this.raw,r=this[Yn][e];return r===void 0&&t.hasHeader(e)&&(r=t.getHeader(e)),r};jn.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[Yn]}};jn.prototype.hasHeader=function(e){return e=e.toLowerCase(),this[Yn][e]!==void 0||this.raw.hasHeader(e)};jn.prototype.removeHeader=function(e){return delete this[Yn][e.toLowerCase()],this};jn.prototype.header=function(e,t=""){return e=e.toLowerCase(),this[Yn][e]&&e==="set-cookie"?(typeof this[Yn][e]=="string"&&(this[Yn][e]=[this[Yn][e]]),Array.isArray(t)?Array.prototype.push.apply(this[Yn][e],t):this[Yn][e].push(t)):this[Yn][e]=t,this};jn.prototype.headers=function(e){let t=Object.keys(e);for(var r=0;r!==t.length;++r){let n=t[r];this.header(n,e[n])}return this};var rZt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);jn.prototype.trailer=function(e,t){if(e=e.toLowerCase(),rZt.has(e))throw new GJt(e);if(typeof t!="function")throw new YJt(e,typeof t);return this[zs]===null&&(this[zs]={}),this[zs][e]=t,this};jn.prototype.hasTrailer=function(e){return this[zs]?.[e.toLowerCase()]!==void 0};jn.prototype.removeTrailer=function(e){return this[zs]===null?this:(this[zs][e.toLowerCase()]=void 0,this)};jn.prototype.code=function(e){let t=Number(e);if(isNaN(t)||t<100||t>599)throw new QJt(e||String(e));return this.raw.statusCode=t,this[fX]=!0,this};jn.prototype.status=jn.prototype.code;jn.prototype.getSerializationFunction=function(e,t){let r;return typeof e=="string"||typeof e=="number"?typeof t=="string"?r=this[ar][ZB]?.[e]?.[t]:r=this[ar][ZB]?.[e]:typeof e=="object"&&(r=this[ar][pg]?.get(e)),r};jn.prototype.compileSerializationSchema=function(e,t=null,r=null){let{request:n}=this,{method:i,url:s}=n;if(this[ar][pg]?.has(e))return this[ar][pg].get(e);let o=(this[ar].serializerCompiler||this.server[aX].serializerCompiler||this.server[aX].setupSerializer(this.server[BJt])||this.server[aX].serializerCompiler)({schema:e,method:i,url:s,httpStatus:t,contentType:r});return this[ar][pg]==null&&(this[ar][pg]=new WeakMap),this[ar][pg].set(e,o),o};jn.prototype.serializeInput=function(e,t,r,n){let i=r,s;if(r=typeof t=="string"||typeof t=="number"?t:r,n=r&&i!==r?i:n,r!=null){if(n!=null?s=this[ar][ZB]?.[r]?.[n]:s=this[ar][ZB]?.[r],s==null)throw n?new XJt(r,n):new WJt(r)}else this[ar][pg]?.has(t)?s=this[ar][pg].get(t):s=this.compileSerializationSchema(t,r,n);return s(e)};jn.prototype.serialize=function(e){return this[Rh]!==null?this[Rh](e):this[ar]&&this[ar][XB]?this[ar][XB](e,this.raw.statusCode):GLe(this[ar],e,this.raw.statusCode)};jn.prototype.serializer=function(e){return this[Rh]=e,this};jn.prototype.type=function(e){return this[Yn]["content-type"]=e,this};jn.prototype.redirect=function(e,t){return typeof e=="string"&&(t=e,e=this[fX]?this.raw.statusCode:302),this.header("location",t).code(e).send()};jn.prototype.callNotFound=function(){return uZt(this),this};jn.prototype.getResponseTime=function(){return tZt(),this.elapsedTime};jn.prototype.then=function(e,t){if(this.sent){e();return}cX(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?t?t(r):this.log&&this.log.warn("unhandled rejection on reply.then"):e()})};function LLe(e,t){e[ar].preSerialization!==null?UJt(e[ar].preSerialization,e.request,e,t,BLe):BLe(null,e.request,e,t)}function BLe(e,t,r,n){if(e!=null){YT(r,e);return}try{r[Rh]!==null?n=r[Rh](n):r[ar]&&r[ar][XB]?n=r[ar][XB](n,r.raw.statusCode):n=GLe(r[ar],n,r.raw.statusCode,r[Yn]["content-type"])}catch(i){nZt(i,r),YT(r,i);return}bA(r,n)}function nZt(e,t){e.serialization=t[ar].config}function bA(e,t){e[ar].onSend!==null?HLe(e[ar].onSend,e.request,e,t,iZt):zLe(e,t)}function iZt(e,t,r,n){e!=null?YT(r,e):zLe(r,n)}function uX(e,t){let r=e.raw;try{r.writeHead(t,e[Yn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&e.log.warn(`Reply was already sent, did you forget to "return reply" in the "${e.request.raw.url}" (${e.request.raw.method}) route?`),n}}function zLe(e,t){let r=e.raw,n=e.request;if(e[zs]!==null){let a=Object.keys(e[zs]),o="";for(let u of a)typeof e[zs][u]=="function"&&(o+=" ",o+=u);e.header("Transfer-Encoding","chunked"),e.header("Trailer",o.trim())}let i=VLe.call(t)==="[object Response]";i&&typeof t.status=="number"&&e.code(t.status);let s=r.statusCode;if(t==null){s>=200&&s!==204&&s!==304&&n.method!=="HEAD"&&e[zs]===null&&(e[Yn]["content-length"]="0"),uX(e,s),WB(t,r,e);return}if(s>=100&&s<200||s===204){e.removeHeader("content-type"),e.removeHeader("content-length"),uX(e,s),WB(void 0,r,e),typeof t.resume=="function"&&(t.on("error",YLe),t.resume());return}if(typeof t.pipe=="function"){QLe(t,r,e);return}if(typeof t.getReader=="function"){FLe(t,r,e);return}if(i){if(typeof t.headers=="object"&&typeof t.headers.forEach=="function")for(let[a,o]of t.headers)e.header(a,o);if(t.body!=null){if(t.bodyUsed)throw new KJt;FLe(t.body,r,e)}return}if(typeof t!="string"&&!Buffer.isBuffer(t))throw new HJt(typeof t);if(e[zs]===null){let a=e[Yn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(t))&&(e[Yn]["content-length"]=""+Buffer.byteLength(t))}uX(e,s),r.write(t),WB(t,r,e)}function $Le(e,t,r){t.code==="ERR_STREAM_PREMATURE_CLOSE"?e[jLe]||e.info({res:r},"stream closed prematurely"):e.warn({err:t},"response terminated with an error with headers already sent")}function FLe(e,t,r){let n=MJt.fromWeb(e);QLe(n,t,r)}function QLe(e,t,r){let n=!0,i=!1;if(sZt(e,t,r),cX(e,{readable:!0,writable:!1},function(s){n=!1,s!=null&&(t.headersSent||r.request.raw.aborted===!0?(i||(i=!0,$Le(r.log,s,t)),t.destroy()):YT(r,s))}),cX(t,function(s){n&&(s!=null&&t.headersSent&&!i&&(i=!0,$Le(r.log,s,t)),typeof e.destroy=="function"?e.destroy():typeof e.close=="function"?e.close(YLe):typeof e.abort=="function"?e.abort():r.log.warn("stream payload does not end properly"))}),t.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let s in r[Yn])t.setHeader(s,r[Yn][s]);e.pipe(t)}function WB(e,t,r){if(r[zs]===null){t.end(null,null,null);return}let n=Object.keys(r[zs]),i={},s=0,a=!0;function o(){s===0&&(t.addTrailers(i),t.end(null,null,null))}for(let u of n){let c=function(d,f){s++,d?r.log.debug(d):i[u]=f,process.nextTick(o)};if(typeof r[zs][u]!="function")continue;a=!1,s--;let l=r[zs][u](r,e,c);typeof l=="object"&&typeof l.then=="function"?l.then(d=>c(null,d),c):l!=null&&(ZJt(),c(null,l))}a&&t.end(null,null,null)}function sZt(e,t,r){r[zs]!==null&&e.on("end",()=>WB(null,t,r))}function YT(e,t,r){e[ar].onError!==null&&!e[LJt]?(e[pX]=!0,HLe(e[ar].onError,e.request,e,t,()=>MLe(e,t,r))):MLe(e,t,r)}function aZt(e){e[GT]=lX();let t=r=>{e[dX]=lX(),e.raw.removeListener("finish",t),e.raw.removeListener("error",t);let n=e[ar];n&&n.onResponse!==null?$Jt(n.onResponse,e.request,e,ULe):ULe(r,e.request,e)};e.raw.on("finish",t),e.raw.on("error",t)}function ULe(e,t,r){if(r.log[jLe])return;let n=r.elapsedTime;if(e!=null){r.log.error({res:r,err:e,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function oZt(e){let t=e.props.slice();function r(n,i,s){this.raw=n,this[JB]=!1,this[qLe]=!1,this[QT]=!1,this[Rh]=null,this.request=i,this[Yn]={},this[zs]=null,this[GT]=void 0,this[dX]=void 0,this.log=s;for(var a,o=0;o{"use strict";WLe.exports=cZt;function cZt(e){if(!e)throw new TypeError("argument req is required");var t=dZt(e.headers["x-forwarded-for"]||""),r=lZt(e),n=[r].concat(t);return n}function lZt(e){return e.socket?e.socket.remoteAddress:e.connection.remoteAddress}function dZt(e){for(var t=e.length,r=[],n=e.length,i=e.length-1;i>=0;i--)switch(e.charCodeAt(i)){case 32:n===t&&(n=t=i);break;case 44:n!==t&&r.push(e.substring(n,t)),n=t=i;break;default:n=i;break}return n!==t&&r.push(e.substring(n,t)),r}});var ZLe=b((JLe,WT)=>{(function(){var e,t,r,n,i,s,a,o,u;t={},o=this,typeof WT<"u"&&WT!==null&&WT.exports?WT.exports=t:o.ipaddr=t,a=function(c,l,d,f){var p,h;if(c.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(h=d-f,h<0&&(h=0),c[p]>>h!==l[p]>>h)return!1;f-=d,p+=1}return!0},t.subnetMatch=function(c,l,d){var f,p,h,m,y;d==null&&(d="unicast");for(h in l)for(m=l[h],m[0]&&!(m[0]instanceof Array)&&(m=[m]),f=0,p=m.length;f=0;d=f+=-1)if(p=this.octets[d],p in y){if(m=y[p],h&&m!==0)return null;m!==8&&(h=!0),l+=m}else return null;return 32-l},c}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},t.IPv4.parser=function(c){var l,d,f,p,h;if(d=function(m){return m[0]==="0"&&m[1]!=="x"?parseInt(m,8):parseInt(m)},l=c.match(n.fourOctet))return function(){var m,y,g,v;for(g=l.slice(1,6),v=[],m=0,y=g.length;m4294967295||h<0)throw new Error("ipaddr: address outside defined range");return function(){var m,y;for(y=[],p=m=0;m<=24;p=m+=8)y.push(h>>p&255);return y}().reverse()}else return null},t.IPv6=function(){function c(l,d){var f,p,h,m,y,g;if(l.length===16)for(this.parts=[],f=p=0;p<=14;f=p+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,h=0,m=g.length;hd&&(l=f.index,d=f[0].length);return d<0?h:h.substring(0,l)+"::"+h.substring(l+d)},c.prototype.toByteArray=function(){var l,d,f,p,h;for(l=[],h=this.parts,d=0,f=h.length;d>8),l.push(p&255);return l},c.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var p,h,m,y;for(m=this.parts,y=[],p=0,h=m.length;p>8,l&255,d>>8,d&255])},c.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,p,h,m,y;for(y={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,h=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in y){if(m=y[p],h&&m!==0)return null;m!==16&&(h=!0),l+=m}else return null;return 128-l},c}(),i="(?:[0-9a-f]+::?)+",u="%[0-9a-z]{1,}",s={zoneIndex:new RegExp(u,"i"),native:new RegExp("^(::)?("+i+")?([0-9a-f]+)?(::)?("+u+")?$","i"),transitional:new RegExp("^((?:"+i+")|(?:::)(?:"+i+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+u+")?$"),"i")},e=function(c,l){var d,f,p,h,m,y;if(c.indexOf("::")!==c.lastIndexOf("::"))return null;for(y=(c.match(s.zoneIndex)||[])[0],y&&(y=y.substring(1),c=c.replace(/%.+$/,"")),d=0,f=-1;(f=c.indexOf(":",f+1))>=0;)d++;if(c.substr(0,2)==="::"&&d--,c.substr(-2,2)==="::"&&d--,d>l)return null;for(m=l-d,h=":";m--;)h+="0:";return c=c.replace("::",h),c[0]===":"&&(c=c.slice(1)),c[c.length-1]===":"&&(c=c.slice(0,-1)),l=function(){var g,v,A,_;for(A=c.split(":"),_=[],g=0,v=A.length;g=0&&l<=32))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},t.IPv4.subnetMaskFromPrefixLength=function(c){var l,d,f;if(c=parseInt(c),c<0||c>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(f=[0,0,0,0],d=0,l=Math.floor(c/8);d=0&&l<=128))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},t.isValid=function(c){return t.IPv6.isValid(c)||t.IPv4.isValid(c)},t.parse=function(c){if(t.IPv6.isValid(c))return t.IPv6.parse(c);if(t.IPv4.isValid(c))return t.IPv4.parse(c);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},t.parseCIDR=function(c){var l;try{return t.IPv6.parseCIDR(c)}catch(d){l=d;try{return t.IPv4.parseCIDR(c)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},t.fromByteArray=function(c){var l;if(l=c.length,l===4)return new t.IPv4(c);if(l===16)return new t.IPv6(c);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},t.process=function(c){var l;return l=this.parse(c),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(JLe)});var i4e=b((yCn,i3)=>{"use strict";i3.exports=_Zt;i3.exports.all=r4e;i3.exports.compile=n4e;var fZt=XLe(),t4e=ZLe(),pZt=/^[0-9]+$/,r3=t4e.isValid,n3=t4e.parse,e4e={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function r4e(e,t){var r=fZt(e);if(!t)return r;typeof t!="function"&&(t=n4e(t));for(var n=0;ni)throw new TypeError("invalid range on address: "+e);return[n,s]}function yZt(e){var t=n3(e),r=t.kind();return r==="ipv4"?t.prefixLengthFromSubnetMask():null}function _Zt(e,t){if(!e)throw new TypeError("req argument is required");if(!t)throw new TypeError("trust argument is required");var r=r4e(e,t),n=r[r.length-1];return n}function AZt(){return!1}function vZt(e){return function(r){if(!r3(r))return!1;for(var n=n3(r),i,s=n.kind(),a=0;a{"use strict";var EZt="2.0.0",SZt=Number.MAX_SAFE_INTEGER||9007199254740991,wZt=16,IZt=250,xZt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];s4e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:wZt,MAX_SAFE_BUILD_LENGTH:IZt,MAX_SAFE_INTEGER:SZt,RELEASE_TYPES:xZt,SEMVER_SPEC_VERSION:EZt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var JT=b((ACn,a4e)=>{"use strict";var CZt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};a4e.exports=CZt});var R1=b((qf,o4e)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:hX,MAX_SAFE_BUILD_LENGTH:TZt,MAX_LENGTH:NZt}=XT(),RZt=JT();qf=o4e.exports={};var DZt=qf.re=[],kZt=qf.safeRe=[],et=qf.src=[],OZt=qf.safeSrc=[],tt=qf.t={},PZt=0,mX="[a-zA-Z0-9-]",MZt=[["\\s",1],["\\d",NZt],[mX,TZt]],LZt=e=>{for(let[t,r]of MZt)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},Ut=(e,t,r)=>{let n=LZt(t),i=PZt++;RZt(e,i,t),tt[e]=i,et[i]=t,OZt[i]=n,DZt[i]=new RegExp(t,r?"g":void 0),kZt[i]=new RegExp(n,r?"g":void 0)};Ut("NUMERICIDENTIFIER","0|[1-9]\\d*");Ut("NUMERICIDENTIFIERLOOSE","\\d+");Ut("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${mX}*`);Ut("MAINVERSION",`(${et[tt.NUMERICIDENTIFIER]})\\.(${et[tt.NUMERICIDENTIFIER]})\\.(${et[tt.NUMERICIDENTIFIER]})`);Ut("MAINVERSIONLOOSE",`(${et[tt.NUMERICIDENTIFIERLOOSE]})\\.(${et[tt.NUMERICIDENTIFIERLOOSE]})\\.(${et[tt.NUMERICIDENTIFIERLOOSE]})`);Ut("PRERELEASEIDENTIFIER",`(?:${et[tt.NONNUMERICIDENTIFIER]}|${et[tt.NUMERICIDENTIFIER]})`);Ut("PRERELEASEIDENTIFIERLOOSE",`(?:${et[tt.NONNUMERICIDENTIFIER]}|${et[tt.NUMERICIDENTIFIERLOOSE]})`);Ut("PRERELEASE",`(?:-(${et[tt.PRERELEASEIDENTIFIER]}(?:\\.${et[tt.PRERELEASEIDENTIFIER]})*))`);Ut("PRERELEASELOOSE",`(?:-?(${et[tt.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${et[tt.PRERELEASEIDENTIFIERLOOSE]})*))`);Ut("BUILDIDENTIFIER",`${mX}+`);Ut("BUILD",`(?:\\+(${et[tt.BUILDIDENTIFIER]}(?:\\.${et[tt.BUILDIDENTIFIER]})*))`);Ut("FULLPLAIN",`v?${et[tt.MAINVERSION]}${et[tt.PRERELEASE]}?${et[tt.BUILD]}?`);Ut("FULL",`^${et[tt.FULLPLAIN]}$`);Ut("LOOSEPLAIN",`[v=\\s]*${et[tt.MAINVERSIONLOOSE]}${et[tt.PRERELEASELOOSE]}?${et[tt.BUILD]}?`);Ut("LOOSE",`^${et[tt.LOOSEPLAIN]}$`);Ut("GTLT","((?:<|>)?=?)");Ut("XRANGEIDENTIFIERLOOSE",`${et[tt.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Ut("XRANGEIDENTIFIER",`${et[tt.NUMERICIDENTIFIER]}|x|X|\\*`);Ut("XRANGEPLAIN",`[v=\\s]*(${et[tt.XRANGEIDENTIFIER]})(?:\\.(${et[tt.XRANGEIDENTIFIER]})(?:\\.(${et[tt.XRANGEIDENTIFIER]})(?:${et[tt.PRERELEASE]})?${et[tt.BUILD]}?)?)?`);Ut("XRANGEPLAINLOOSE",`[v=\\s]*(${et[tt.XRANGEIDENTIFIERLOOSE]})(?:\\.(${et[tt.XRANGEIDENTIFIERLOOSE]})(?:\\.(${et[tt.XRANGEIDENTIFIERLOOSE]})(?:${et[tt.PRERELEASELOOSE]})?${et[tt.BUILD]}?)?)?`);Ut("XRANGE",`^${et[tt.GTLT]}\\s*${et[tt.XRANGEPLAIN]}$`);Ut("XRANGELOOSE",`^${et[tt.GTLT]}\\s*${et[tt.XRANGEPLAINLOOSE]}$`);Ut("COERCEPLAIN",`(^|[^\\d])(\\d{1,${hX}})(?:\\.(\\d{1,${hX}}))?(?:\\.(\\d{1,${hX}}))?`);Ut("COERCE",`${et[tt.COERCEPLAIN]}(?:$|[^\\d])`);Ut("COERCEFULL",et[tt.COERCEPLAIN]+`(?:${et[tt.PRERELEASE]})?(?:${et[tt.BUILD]})?(?:$|[^\\d])`);Ut("COERCERTL",et[tt.COERCE],!0);Ut("COERCERTLFULL",et[tt.COERCEFULL],!0);Ut("LONETILDE","(?:~>?)");Ut("TILDETRIM",`(\\s*)${et[tt.LONETILDE]}\\s+`,!0);qf.tildeTrimReplace="$1~";Ut("TILDE",`^${et[tt.LONETILDE]}${et[tt.XRANGEPLAIN]}$`);Ut("TILDELOOSE",`^${et[tt.LONETILDE]}${et[tt.XRANGEPLAINLOOSE]}$`);Ut("LONECARET","(?:\\^)");Ut("CARETTRIM",`(\\s*)${et[tt.LONECARET]}\\s+`,!0);qf.caretTrimReplace="$1^";Ut("CARET",`^${et[tt.LONECARET]}${et[tt.XRANGEPLAIN]}$`);Ut("CARETLOOSE",`^${et[tt.LONECARET]}${et[tt.XRANGEPLAINLOOSE]}$`);Ut("COMPARATORLOOSE",`^${et[tt.GTLT]}\\s*(${et[tt.LOOSEPLAIN]})$|^$`);Ut("COMPARATOR",`^${et[tt.GTLT]}\\s*(${et[tt.FULLPLAIN]})$|^$`);Ut("COMPARATORTRIM",`(\\s*)${et[tt.GTLT]}\\s*(${et[tt.LOOSEPLAIN]}|${et[tt.XRANGEPLAIN]})`,!0);qf.comparatorTrimReplace="$1$2$3";Ut("HYPHENRANGE",`^\\s*(${et[tt.XRANGEPLAIN]})\\s+-\\s+(${et[tt.XRANGEPLAIN]})\\s*$`);Ut("HYPHENRANGELOOSE",`^\\s*(${et[tt.XRANGEPLAINLOOSE]})\\s+-\\s+(${et[tt.XRANGEPLAINLOOSE]})\\s*$`);Ut("STAR","(<|>)?=?\\s*\\*");Ut("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Ut("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var s3=b((vCn,u4e)=>{"use strict";var BZt=Object.freeze({loose:!0}),$Zt=Object.freeze({}),FZt=e=>e?typeof e!="object"?BZt:e:$Zt;u4e.exports=FZt});var gX=b((bCn,d4e)=>{"use strict";var c4e=/^[0-9]+$/,l4e=(e,t)=>{if(typeof e=="number"&&typeof t=="number")return e===t?0:el4e(t,e);d4e.exports={compareIdentifiers:l4e,rcompareIdentifiers:UZt}});var to=b((ECn,p4e)=>{"use strict";var a3=JT(),{MAX_LENGTH:f4e,MAX_SAFE_INTEGER:o3}=XT(),{safeRe:u3,t:c3}=R1(),qZt=s3(),{compareIdentifiers:yX}=gX(),_X=class e{constructor(t,r){if(r=qZt(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>f4e)throw new TypeError(`version is longer than ${f4e} characters`);a3("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?u3[c3.LOOSE]:u3[c3.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>o3||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o3||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o3||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(i=>{if(/^[0-9]+$/.test(i)){let s=+i;if(s>=0&&st.major?1:this.minort.minor?1:this.patcht.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],i=t.prerelease[r];if(a3("prerelease compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return yX(n,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let n=this.build[r],i=t.build[r];if(a3("build compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return yX(n,i)}while(++r)}inc(t,r,n){if(t.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let i=`-${r}`.match(this.options.loose?u3[c3.PRERELEASELOOSE]:u3[c3.PRERELEASE]);if(!i||i[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let i=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[i];else{let s=this.prerelease.length;for(;--s>=0;)typeof this.prerelease[s]=="number"&&(this.prerelease[s]++,s=-2);if(s===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(i)}}if(r){let s=[r,i];n===!1&&(s=[r]),yX(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=s):this.prerelease=s}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};p4e.exports=_X});var EA=b((SCn,m4e)=>{"use strict";var h4e=to(),jZt=(e,t,r=!1)=>{if(e instanceof h4e)return e;try{return new h4e(e,t)}catch(n){if(!r)return null;throw n}};m4e.exports=jZt});var y4e=b((wCn,g4e)=>{"use strict";var HZt=EA(),KZt=(e,t)=>{let r=HZt(e,t);return r?r.version:null};g4e.exports=KZt});var A4e=b((ICn,_4e)=>{"use strict";var VZt=EA(),zZt=(e,t)=>{let r=VZt(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};_4e.exports=zZt});var E4e=b((xCn,b4e)=>{"use strict";var v4e=to(),QZt=(e,t,r,n,i)=>{typeof r=="string"&&(i=n,n=r,r=void 0);try{return new v4e(e instanceof v4e?e.version:e,r).inc(t,n,i).version}catch{return null}};b4e.exports=QZt});var I4e=b((CCn,w4e)=>{"use strict";var S4e=EA(),GZt=(e,t)=>{let r=S4e(e,null,!0),n=S4e(t,null,!0),i=r.compare(n);if(i===0)return null;let s=i>0,a=s?r:n,o=s?n:r,u=!!a.prerelease.length;if(!!o.prerelease.length&&!u){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=u?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};w4e.exports=GZt});var C4e=b((TCn,x4e)=>{"use strict";var YZt=to(),WZt=(e,t)=>new YZt(e,t).major;x4e.exports=WZt});var N4e=b((NCn,T4e)=>{"use strict";var XZt=to(),JZt=(e,t)=>new XZt(e,t).minor;T4e.exports=JZt});var D4e=b((RCn,R4e)=>{"use strict";var ZZt=to(),eer=(e,t)=>new ZZt(e,t).patch;R4e.exports=eer});var O4e=b((DCn,k4e)=>{"use strict";var ter=EA(),rer=(e,t)=>{let r=ter(e,t);return r&&r.prerelease.length?r.prerelease:null};k4e.exports=rer});var il=b((kCn,M4e)=>{"use strict";var P4e=to(),ner=(e,t,r)=>new P4e(e,r).compare(new P4e(t,r));M4e.exports=ner});var B4e=b((OCn,L4e)=>{"use strict";var ier=il(),ser=(e,t,r)=>ier(t,e,r);L4e.exports=ser});var F4e=b((PCn,$4e)=>{"use strict";var aer=il(),oer=(e,t)=>aer(e,t,!0);$4e.exports=oer});var l3=b((MCn,q4e)=>{"use strict";var U4e=to(),uer=(e,t,r)=>{let n=new U4e(e,r),i=new U4e(t,r);return n.compare(i)||n.compareBuild(i)};q4e.exports=uer});var H4e=b((LCn,j4e)=>{"use strict";var cer=l3(),ler=(e,t)=>e.sort((r,n)=>cer(r,n,t));j4e.exports=ler});var V4e=b((BCn,K4e)=>{"use strict";var der=l3(),fer=(e,t)=>e.sort((r,n)=>der(n,r,t));K4e.exports=fer});var ZT=b(($Cn,z4e)=>{"use strict";var per=il(),her=(e,t,r)=>per(e,t,r)>0;z4e.exports=her});var d3=b((FCn,Q4e)=>{"use strict";var mer=il(),ger=(e,t,r)=>mer(e,t,r)<0;Q4e.exports=ger});var AX=b((UCn,G4e)=>{"use strict";var yer=il(),_er=(e,t,r)=>yer(e,t,r)===0;G4e.exports=_er});var vX=b((qCn,Y4e)=>{"use strict";var Aer=il(),ver=(e,t,r)=>Aer(e,t,r)!==0;Y4e.exports=ver});var f3=b((jCn,W4e)=>{"use strict";var ber=il(),Eer=(e,t,r)=>ber(e,t,r)>=0;W4e.exports=Eer});var p3=b((HCn,X4e)=>{"use strict";var Ser=il(),wer=(e,t,r)=>Ser(e,t,r)<=0;X4e.exports=wer});var bX=b((KCn,J4e)=>{"use strict";var Ier=AX(),xer=vX(),Cer=ZT(),Ter=f3(),Ner=d3(),Rer=p3(),Der=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return Ier(e,r,n);case"!=":return xer(e,r,n);case">":return Cer(e,r,n);case">=":return Ter(e,r,n);case"<":return Ner(e,r,n);case"<=":return Rer(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};J4e.exports=Der});var eBe=b((VCn,Z4e)=>{"use strict";var ker=to(),Oer=EA(),{safeRe:h3,t:m3}=R1(),Per=(e,t)=>{if(e instanceof ker)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?h3[m3.COERCEFULL]:h3[m3.COERCE]);else{let u=t.includePrerelease?h3[m3.COERCERTLFULL]:h3[m3.COERCERTL],c;for(;(c=u.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||c.index+c[0].length!==r.index+r[0].length)&&(r=c),u.lastIndex=c.index+c[1].length+c[2].length;u.lastIndex=-1}if(r===null)return null;let n=r[2],i=r[3]||"0",s=r[4]||"0",a=t.includePrerelease&&r[5]?`-${r[5]}`:"",o=t.includePrerelease&&r[6]?`+${r[6]}`:"";return Oer(`${n}.${i}.${s}${a}${o}`,t)};Z4e.exports=Per});var rBe=b((zCn,tBe)=>{"use strict";var EX=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let i=this.map.keys().next().value;this.delete(i)}this.map.set(t,r)}return this}};tBe.exports=EX});var sl=b((QCn,aBe)=>{"use strict";var Mer=/\s+/g,SX=class e{constructor(t,r){if(r=Ber(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof wX)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(Mer," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(i=>!iBe(i[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let i of this.set)if(i.length===1&&Ker(i[0])){this.set=[i];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&jer)|(this.options.loose&&Her))+":"+t,i=nBe.get(n);if(i)return i;let s=this.options.loose,a=s?Qo[ro.HYPHENRANGELOOSE]:Qo[ro.HYPHENRANGE];t=t.replace(a,etr(this.options.includePrerelease)),ii("hyphen replace",t),t=t.replace(Qo[ro.COMPARATORTRIM],Fer),ii("comparator trim",t),t=t.replace(Qo[ro.TILDETRIM],Uer),ii("tilde trim",t),t=t.replace(Qo[ro.CARETTRIM],qer),ii("caret trim",t);let o=t.split(" ").map(d=>Ver(d,this.options)).join(" ").split(/\s+/).map(d=>Zer(d,this.options));s&&(o=o.filter(d=>(ii("loose invalid filter",d,this.options),!!d.match(Qo[ro.COMPARATORLOOSE])))),ii("range list",o);let u=new Map,c=o.map(d=>new wX(d,this.options));for(let d of c){if(iBe(d))return[d];u.set(d.value,d)}u.size>1&&u.has("")&&u.delete("");let l=[...u.values()];return nBe.set(n,l),l}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>sBe(n,r)&&t.set.some(i=>sBe(i,r)&&n.every(s=>i.every(a=>s.intersects(a,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new $er(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",Ker=e=>e.value==="",sBe=(e,t)=>{let r=!0,n=e.slice(),i=n.pop();for(;r&&n.length;)r=n.every(s=>i.intersects(s,t)),i=n.pop();return r},Ver=(e,t)=>(e=e.replace(Qo[ro.BUILD],""),ii("comp",e,t),e=Ger(e,t),ii("caret",e),e=zer(e,t),ii("tildes",e),e=Wer(e,t),ii("xrange",e),e=Jer(e,t),ii("stars",e),e),Go=e=>!e||e.toLowerCase()==="x"||e==="*",zer=(e,t)=>e.trim().split(/\s+/).map(r=>Qer(r,t)).join(" "),Qer=(e,t)=>{let r=t.loose?Qo[ro.TILDELOOSE]:Qo[ro.TILDE];return e.replace(r,(n,i,s,a,o)=>{ii("tilde",e,n,i,s,a,o);let u;return Go(i)?u="":Go(s)?u=`>=${i}.0.0 <${+i+1}.0.0-0`:Go(a)?u=`>=${i}.${s}.0 <${i}.${+s+1}.0-0`:o?(ii("replaceTilde pr",o),u=`>=${i}.${s}.${a}-${o} <${i}.${+s+1}.0-0`):u=`>=${i}.${s}.${a} <${i}.${+s+1}.0-0`,ii("tilde return",u),u})},Ger=(e,t)=>e.trim().split(/\s+/).map(r=>Yer(r,t)).join(" "),Yer=(e,t)=>{ii("caret",e,t);let r=t.loose?Qo[ro.CARETLOOSE]:Qo[ro.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(i,s,a,o,u)=>{ii("caret",e,i,s,a,o,u);let c;return Go(s)?c="":Go(a)?c=`>=${s}.0.0${n} <${+s+1}.0.0-0`:Go(o)?s==="0"?c=`>=${s}.${a}.0${n} <${s}.${+a+1}.0-0`:c=`>=${s}.${a}.0${n} <${+s+1}.0.0-0`:u?(ii("replaceCaret pr",u),s==="0"?a==="0"?c=`>=${s}.${a}.${o}-${u} <${s}.${a}.${+o+1}-0`:c=`>=${s}.${a}.${o}-${u} <${s}.${+a+1}.0-0`:c=`>=${s}.${a}.${o}-${u} <${+s+1}.0.0-0`):(ii("no pr"),s==="0"?a==="0"?c=`>=${s}.${a}.${o}${n} <${s}.${a}.${+o+1}-0`:c=`>=${s}.${a}.${o}${n} <${s}.${+a+1}.0-0`:c=`>=${s}.${a}.${o} <${+s+1}.0.0-0`),ii("caret return",c),c})},Wer=(e,t)=>(ii("replaceXRanges",e,t),e.split(/\s+/).map(r=>Xer(r,t)).join(" ")),Xer=(e,t)=>{e=e.trim();let r=t.loose?Qo[ro.XRANGELOOSE]:Qo[ro.XRANGE];return e.replace(r,(n,i,s,a,o,u)=>{ii("xRange",e,n,i,s,a,o,u);let c=Go(s),l=c||Go(a),d=l||Go(o),f=d;return i==="="&&f&&(i=""),u=t.includePrerelease?"-0":"",c?i===">"||i==="<"?n="<0.0.0-0":n="*":i&&f?(l&&(a=0),o=0,i===">"?(i=">=",l?(s=+s+1,a=0,o=0):(a=+a+1,o=0)):i==="<="&&(i="<",l?s=+s+1:a=+a+1),i==="<"&&(u="-0"),n=`${i+s}.${a}.${o}${u}`):l?n=`>=${s}.0.0${u} <${+s+1}.0.0-0`:d&&(n=`>=${s}.${a}.0${u} <${s}.${+a+1}.0-0`),ii("xRange return",n),n})},Jer=(e,t)=>(ii("replaceStars",e,t),e.trim().replace(Qo[ro.STAR],"")),Zer=(e,t)=>(ii("replaceGTE0",e,t),e.trim().replace(Qo[t.includePrerelease?ro.GTE0PRE:ro.GTE0],"")),etr=e=>(t,r,n,i,s,a,o,u,c,l,d,f)=>(Go(n)?r="":Go(i)?r=`>=${n}.0.0${e?"-0":""}`:Go(s)?r=`>=${n}.${i}.0${e?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,Go(c)?u="":Go(l)?u=`<${+c+1}.0.0-0`:Go(d)?u=`<${c}.${+l+1}.0-0`:f?u=`<=${c}.${l}.${d}-${f}`:e?u=`<${c}.${l}.${+d+1}-0`:u=`<=${u}`,`${r} ${u}`.trim()),ttr=(e,t,r)=>{for(let n=0;n0){let i=e[n].semver;if(i.major===t.major&&i.minor===t.minor&&i.patch===t.patch)return!0}return!1}return!0}});var e2=b((GCn,fBe)=>{"use strict";var t2=Symbol("SemVer ANY"),CX=class e{static get ANY(){return t2}constructor(t,r){if(r=oBe(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),xX("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===t2?this.value="":this.value=this.operator+this.semver.version,xX("comp",this)}parse(t){let r=this.options.loose?uBe[cBe.COMPARATORLOOSE]:uBe[cBe.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new lBe(n[2],this.options.loose):this.semver=t2}toString(){return this.value}test(t){if(xX("Comparator.test",t,this.options.loose),this.semver===t2||t===t2)return!0;if(typeof t=="string")try{t=new lBe(t,this.options)}catch{return!1}return IX(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new dBe(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new dBe(this.value,r).test(t.semver):(r=oBe(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||IX(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||IX(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};fBe.exports=CX;var oBe=s3(),{safeRe:uBe,t:cBe}=R1(),IX=bX(),xX=JT(),lBe=to(),dBe=sl()});var r2=b((YCn,pBe)=>{"use strict";var rtr=sl(),ntr=(e,t,r)=>{try{t=new rtr(t,r)}catch{return!1}return t.test(e)};pBe.exports=ntr});var mBe=b((WCn,hBe)=>{"use strict";var itr=sl(),str=(e,t)=>new itr(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));hBe.exports=str});var yBe=b((XCn,gBe)=>{"use strict";var atr=to(),otr=sl(),utr=(e,t,r)=>{let n=null,i=null,s=null;try{s=new otr(t,r)}catch{return null}return e.forEach(a=>{s.test(a)&&(!n||i.compare(a)===-1)&&(n=a,i=new atr(n,r))}),n};gBe.exports=utr});var ABe=b((JCn,_Be)=>{"use strict";var ctr=to(),ltr=sl(),dtr=(e,t,r)=>{let n=null,i=null,s=null;try{s=new ltr(t,r)}catch{return null}return e.forEach(a=>{s.test(a)&&(!n||i.compare(a)===1)&&(n=a,i=new ctr(n,r))}),n};_Be.exports=dtr});var EBe=b((ZCn,bBe)=>{"use strict";var TX=to(),ftr=sl(),vBe=ZT(),ptr=(e,t)=>{e=new ftr(e,t);let r=new TX("0.0.0");if(e.test(r)||(r=new TX("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let o=new TX(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!s||vBe(o,s))&&(s=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),s&&(!r||vBe(r,s))&&(r=s)}return r&&e.test(r)?r:null};bBe.exports=ptr});var wBe=b((eTn,SBe)=>{"use strict";var htr=sl(),mtr=(e,t)=>{try{return new htr(e,t).range||"*"}catch{return null}};SBe.exports=mtr});var g3=b((tTn,TBe)=>{"use strict";var gtr=to(),CBe=e2(),{ANY:ytr}=CBe,_tr=sl(),Atr=r2(),IBe=ZT(),xBe=d3(),vtr=p3(),btr=f3(),Etr=(e,t,r,n)=>{e=new gtr(e,n),t=new _tr(t,n);let i,s,a,o,u;switch(r){case">":i=IBe,s=vtr,a=xBe,o=">",u=">=";break;case"<":i=xBe,s=btr,a=IBe,o="<",u="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Atr(e,t,n))return!1;for(let c=0;c{p.semver===ytr&&(p=new CBe(">=0.0.0")),d=d||p,f=f||p,i(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===u||(!f.operator||f.operator===o)&&s(e,f.semver))return!1;if(f.operator===u&&a(e,f.semver))return!1}return!0};TBe.exports=Etr});var RBe=b((rTn,NBe)=>{"use strict";var Str=g3(),wtr=(e,t,r)=>Str(e,t,">",r);NBe.exports=wtr});var kBe=b((nTn,DBe)=>{"use strict";var Itr=g3(),xtr=(e,t,r)=>Itr(e,t,"<",r);DBe.exports=xtr});var MBe=b((iTn,PBe)=>{"use strict";var OBe=sl(),Ctr=(e,t,r)=>(e=new OBe(e,r),t=new OBe(t,r),e.intersects(t,r));PBe.exports=Ctr});var BBe=b((sTn,LBe)=>{"use strict";var Ttr=r2(),Ntr=il();LBe.exports=(e,t,r)=>{let n=[],i=null,s=null,a=e.sort((l,d)=>Ntr(l,d,r));for(let l of a)Ttr(l,t,r)?(s=l,i||(i=l)):(s&&n.push([i,s]),s=null,i=null);i&&n.push([i,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let u=o.join(" || "),c=typeof t.raw=="string"?t.raw:String(t);return u.length{"use strict";var $Be=sl(),RX=e2(),{ANY:NX}=RX,n2=r2(),DX=il(),Rtr=(e,t,r={})=>{if(e===t)return!0;e=new $Be(e,r),t=new $Be(t,r);let n=!1;e:for(let i of e.set){for(let s of t.set){let a=ktr(i,s,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},Dtr=[new RX(">=0.0.0-0")],FBe=[new RX(">=0.0.0")],ktr=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===NX){if(t.length===1&&t[0].semver===NX)return!0;r.includePrerelease?e=Dtr:e=FBe}if(t.length===1&&t[0].semver===NX){if(r.includePrerelease)return!0;t=FBe}let n=new Set,i,s;for(let p of e)p.operator===">"||p.operator===">="?i=UBe(i,p,r):p.operator==="<"||p.operator==="<="?s=qBe(s,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(i&&s){if(a=DX(i.semver,s.semver,r),a>0)return null;if(a===0&&(i.operator!==">="||s.operator!=="<="))return null}for(let p of n){if(i&&!n2(p,String(i),r)||s&&!n2(p,String(s),r))return null;for(let h of t)if(!n2(p,String(h),r))return!1;return!0}let o,u,c,l,d=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1,f=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1;d&&d.prerelease.length===1&&s.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of t){if(l=l||p.operator===">"||p.operator===">=",c=c||p.operator==="<"||p.operator==="<=",i){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(o=UBe(i,p,r),o===p&&o!==i)return!1}else if(i.operator===">="&&!n2(i.semver,String(p),r))return!1}if(s){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(u=qBe(s,p,r),u===p&&u!==s)return!1}else if(s.operator==="<="&&!n2(s.semver,String(p),r))return!1}if(!p.operator&&(s||i)&&a!==0)return!1}return!(i&&c&&!s&&a!==0||s&&l&&!i&&a!==0||f||d)},UBe=(e,t,r)=>{if(!e)return t;let n=DX(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},qBe=(e,t,r)=>{if(!e)return t;let n=DX(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};jBe.exports=Rtr});var OX=b((oTn,zBe)=>{"use strict";var kX=R1(),KBe=XT(),Otr=to(),VBe=gX(),Ptr=EA(),Mtr=y4e(),Ltr=A4e(),Btr=E4e(),$tr=I4e(),Ftr=C4e(),Utr=N4e(),qtr=D4e(),jtr=O4e(),Htr=il(),Ktr=B4e(),Vtr=F4e(),ztr=l3(),Qtr=H4e(),Gtr=V4e(),Ytr=ZT(),Wtr=d3(),Xtr=AX(),Jtr=vX(),Ztr=f3(),err=p3(),trr=bX(),rrr=eBe(),nrr=e2(),irr=sl(),srr=r2(),arr=mBe(),orr=yBe(),urr=ABe(),crr=EBe(),lrr=wBe(),drr=g3(),frr=RBe(),prr=kBe(),hrr=MBe(),mrr=BBe(),grr=HBe();zBe.exports={parse:Ptr,valid:Mtr,clean:Ltr,inc:Btr,diff:$tr,major:Ftr,minor:Utr,patch:qtr,prerelease:jtr,compare:Htr,rcompare:Ktr,compareLoose:Vtr,compareBuild:ztr,sort:Qtr,rsort:Gtr,gt:Ytr,lt:Wtr,eq:Xtr,neq:Jtr,gte:Ztr,lte:err,cmp:trr,coerce:rrr,Comparator:nrr,Range:irr,satisfies:srr,toComparators:arr,maxSatisfying:orr,minSatisfying:urr,minVersion:crr,validRange:lrr,outside:drr,gtr:frr,ltr:prr,intersects:hrr,simplifyRange:mrr,subset:grr,SemVer:Otr,re:kX.re,src:kX.src,tokens:kX.t,SEMVER_SPEC_VERSION:KBe.SEMVER_SPEC_VERSION,RELEASE_TYPES:KBe.RELEASE_TYPES,compareIdentifiers:VBe.compareIdentifiers,rcompareIdentifiers:VBe.rcompareIdentifiers}});var _3=b((uTn,BX)=>{"use strict";var y3=i4e(),yrr=OX(),{FSTDEP005:_rr,FSTDEP012:Arr,FSTDEP015:vrr,FSTDEP016:brr,FSTDEP017:Err,FSTDEP018:Srr}=Eh(),{kHasBeenDecorated:wrr,kSchemaBody:Irr,kSchemaHeaders:xrr,kSchemaParams:Crr,kSchemaQuerystring:QBe,kSchemaController:PX,kOptions:Trr,kRequestCacheValidateFns:hg,kRouteContext:Xi,kPublicRouteContext:GBe,kRequestOriginalUrl:MX}=Vs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:Nrr}=Wa(),YBe={body:Irr,headers:xrr,params:Crr,querystring:QBe,query:QBe};function LX(e,t,r,n,i,s){this.id=e,this[Xi]=s,this.params=t,this.raw=r,this.query=n,this.log=i,this.body=void 0}LX.props=[];function Rrr(e){if(typeof e=="function")return e;if(e===!0)return function(){return!0};if(typeof e=="number")return function(t,r){return rr.trim());return y3.compile(t)}return y3.compile(e)}function Drr(e,t){return t?krr(e,t):XBe(e)}function XBe(e){let t=e.props.slice();function r(n,i,s,a,o,u){this.id=n,this[Xi]=u,this.params=i,this.raw=s,this.query=a,this.log=o,this.body=void 0;for(var c,l=0;le.config},schema:{get:()=>e.schema}}),Object.freeze(i)}},routerMethod:{get(){return Srr(),this[Xi].config?.method}},routeConfig:{get(){return brr(),this[Xi][GBe]?.config}},routeSchema:{get(){return vrr(),this[Xi][GBe].schema}},is404:{get(){return this[Xi].config?.url===void 0}},connection:{get(){return yrr.gte(process.versions.node,"13.0.0")&&_rr(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(e){this.additionalHeaders=e}},getValidationFunction:{value:function(e){if(typeof e=="string"){let t=YBe[e];return this[Xi][t]}else if(typeof e=="object")return this[Xi][hg]?.get(e)}},compileValidationSchema:{value:function(e,t=null){let{method:r,url:n}=this;if(this[Xi][hg]?.has(e))return this[Xi][hg].get(e);let s=(this[Xi].validatorCompiler||this.server[PX].validatorCompiler||this.server[PX].setupValidator(this.server[Trr])||this.server[PX].validatorCompiler)({schema:e,method:r,url:n,httpPart:t});return this[Xi][hg]==null&&(this[Xi][hg]=new WeakMap),this[Xi][hg].set(e,s),s}},validateInput:{value:function(e,t,r){r=typeof t=="string"?t:r;let n=r!=null&&typeof r=="string"&&YBe[r],i;if(n&&(i=this[Xi][n]),i==null&&(t==null||typeof t!="object"||Array.isArray(t)))throw new Nrr(r);return i==null&&(this[Xi][hg]?.has(t)?i=this[Xi][hg].get(t):i=this.compileValidationSchema(t,r)),i(e)}}});BX.exports=LX;BX.exports.buildRequest=Drr});var A3=b((cTn,JBe)=>{"use strict";var{kFourOhFourContext:Orr,kReplySerializerDefault:Prr,kSchemaErrorFormatter:Mrr,kErrorHandler:Lrr,kChildLoggerFactory:Brr,kOptions:$rr,kReply:Frr,kRequest:Urr,kBodyLimit:qrr,kLogLevel:jrr,kContentTypeParser:Hrr,kRouteByFastify:Krr,kRequestCacheValidateFns:Vrr,kReplyCacheSerializeFns:zrr,kPublicRouteContext:Qrr}=Vs();function Grr({schema:e,handler:t,config:r,requestIdLogLabel:n,childLoggerFactory:i,errorHandler:s,bodyLimit:a,logLevel:o,logSerializers:u,attachValidation:c,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:h,prefixTrailingSlash:m,server:y,isFastify:g}){this.schema=e,this.handler=t,this.Reply=y[Frr],this.Request=y[Urr],this.contentTypeParser=y[Hrr],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=s||y[Lrr],this.requestIdLogLabel=n||y[$rr].requestIdLogLabel,this.childLoggerFactory=i||y[Brr],this._middie=null,this._parserOptions={limit:a||y[qrr]},this.exposeHeadRoute=h,this.prefixTrailingSlash=m,this.logLevel=o||y[jrr],this.logSerializers=u,this[Orr]=null,this.attachValidation=c,this[Prr]=f,this.schemaErrorFormatter=p||y[Mrr]||Wrr,this[Krr]=g,this[Vrr]=null,this[zrr]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[Qrr]=Yrr(this),this.server=y}function Yrr(e){return Object.create(null,{schema:{enumerable:!0,get(){return e.schema}},config:{enumerable:!0,get(){return e.config}}})}function Wrr(e,t){let r="",n=", ";for(var i=0;i!==e.length;++i){let s=e[i];r+=t+(s.instancePath||"")+" "+s.message+n}return new Error(r.slice(0,-n.length))}JBe.exports=Grr});var $X=b((lTn,ZBe)=>{"use strict";ZBe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var HX=b((dTn,n3e)=>{"use strict";var{kReply:FX,kRequest:UX,kState:Xrr,kHasBeenDecorated:Jrr}=Vs(),{FST_ERR_DEC_ALREADY_PRESENT:e3e,FST_ERR_DEC_MISSING_DEPENDENCY:Zrr,FST_ERR_DEC_AFTER_START:enr,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:tnr}=Wa(),{FSTDEP006:rnr}=Eh();function nnr(e,t,r,n){if(Object.prototype.hasOwnProperty.call(e,t))throw new e3e(t);qX(e,t,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(e,t,{get:r.getter,set:r.setter}):e[t]=r}function t3e(e,t,r,n){let i=e.prototype;if(Object.prototype.hasOwnProperty.call(i,t)||b3(e,t))throw new e3e(t);e[Jrr]=!0,qX(e,t,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(i,t,{get:r.getter,set:r.setter}):typeof r=="function"?i[t]=r:e.props.push({key:t,value:r})}function r3e(e,t){typeof t=="object"&&t&&!(typeof t.getter=="function"||typeof t.setter=="function")&&rnr(e)}function inr(e,t,r){return jX(this,e),nnr(this,e,t,r),this}function v3(e,t){return t?t in e||e.prototype&&t in e.prototype||b3(e,t):e in this}function b3(e,t){return e.props?e.props.find(({key:r})=>r===t):!1}function snr(e){return e&&b3(this[UX],e)?!0:v3(this[UX].prototype,e)}function anr(e){return e&&b3(this[FX],e)?!0:v3(this[FX].prototype,e)}function qX(e,t,r){if(r!=null){if(!Array.isArray(r))throw new tnr(t);for(var n=0;n!==r.length;++n)if(!v3(e,r[n]))throw new Zrr(r[n])}}function onr(e,t,r){return jX(this,e),r3e(e,t),t3e(this[FX],e,t,r),this}function unr(e,t,r){return jX(this,e),r3e(e,t),t3e(this[UX],e,t,r),this}function jX(e,t){if(e[Xrr].started)throw new enr(t)}n3e.exports={add:inr,exist:v3,existRequest:snr,existReply:anr,dependencies:qX,decorateReply:onr,decorateRequest:unr}});var s3e=b(jf=>{"use strict";var KX=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=t,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(t){if(this.items.has(t)){let r=this.items.get(t);this.items.delete(t),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;this.items.delete(t.key),this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(this.items.has(t))return this.items.get(t).expiry}get(t){if(this.items.has(t)){let r=this.items.get(t);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items.set(t,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},VX=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=t,this.ttl=r}get size(){return this.items.size}bumpLru(t){if(this.last===t)return;let r=this.last,n=t.next,i=t.prev;this.first===t&&(this.first=n),t.next=null,t.prev=r,r.next=t,i!==null&&(i.next=n),n!==null&&(n.prev=i),this.last=t}clear(){this.items=new Map,this.first=null,this.last=null}delete(t){if(this.items.has(t)){let r=this.items.get(t);this.items.delete(t),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;this.items.delete(t.key),this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(this.items.has(t))return this.items.get(t).expiry}get(t){if(this.items.has(t)){let r=this.items.get(t);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return this.bumpLru(r),r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==i&&this.bumpLru(i);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items.set(t,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},i2=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=t,this.ttl=r}bumpLru(t){if(this.last===t)return;let r=this.last,n=t.next,i=t.prev;this.first===t&&(this.first=n),t.next=null,t.prev=r,r.next=t,i!==null&&(i.next=n),n!==null&&(n.prev=i),this.last=t}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];delete this.items[t],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;delete this.items[t.key],--this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(Object.prototype.hasOwnProperty.call(this.items,t))return this.items[t].expiry}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return this.bumpLru(r),r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==i&&this.bumpLru(i);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items[t]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},E3=class{constructor(){this.records={}}initForCache(t,r){this.records[t]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(t){for(let r of Object.keys(this.records[t]))this.records[t][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function i3e(e){return`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")}`}var zX=class{constructor(t,r,n){this.cacheId=t,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=i3e(this.collectionStart),this.records=n||new E3,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(t){this.archiveIfNeeded(),this.currentRecord.cacheSize=t}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=i3e(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},S3=class extends i2{constructor(t,r,n,i,s){if(super(t||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new zX(n,s!==void 0?s:24,i)}getStatistics(){return this.hitStatistics.getStatistics()}set(t,r){super.set(t,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(t,r=!1){super.delete(t),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},w3=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=t,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];delete this.items[t],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;delete this.items[t.key],--this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(Object.prototype.hasOwnProperty.call(this.items,t))return this.items[t].expiry}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items[t]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};jf.Fifo=w3;jf.FifoMap=KX;jf.FifoObject=w3;jf.HitStatisticsRecord=E3;jf.Lru=i2;jf.LruHitStatistics=S3;jf.LruMap=VX;jf.LruObject=i2;jf.LruObjectHitStatistics=S3});var c3e=b((pTn,s2)=>{"use strict";var C3=function(){};C3.prototype=Object.create(null);var I3=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,x3=/\\([\v\u0020-\u00ff])/gu,a3e=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,SA={type:"",parameters:new C3};Object.freeze(SA.parameters);Object.freeze(SA);function o3e(e){if(typeof e!="string")throw new TypeError("argument header is required and must be a string");let t=e.indexOf(";"),r=t!==-1?e.slice(0,t).trim():e.trim();if(a3e.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new C3};if(t===-1)return n;let i,s,a;for(I3.lastIndex=t;s=I3.exec(e);){if(s.index!==t)throw new TypeError("invalid parameter format");t+=s[0].length,i=s[1].toLowerCase(),a=s[2],a[0]==='"'&&(a=a.slice(1,a.length-1),x3.test(a)&&(a=a.replace(x3,"$1"))),n.parameters[i]=a}if(t!==e.length)throw new TypeError("invalid parameter format");return n}function u3e(e){if(typeof e!="string")return SA;let t=e.indexOf(";"),r=t!==-1?e.slice(0,t).trim():e.trim();if(a3e.test(r)===!1)return SA;let n={type:r.toLowerCase(),parameters:new C3};if(t===-1)return n;let i,s,a;for(I3.lastIndex=t;s=I3.exec(e);){if(s.index!==t)return SA;t+=s[0].length,i=s[1].toLowerCase(),a=s[2],a[0]==='"'&&(a=a.slice(1,a.length-1),x3.test(a)&&(a=a.replace(x3,"$1"))),n.parameters[i]=a}return t!==e.length?SA:n}s2.exports.default={parse:o3e,safeParse:u3e};s2.exports.parse=o3e;s2.exports.safeParse=u3e;s2.exports.defaultContentType=SA});var h3e=b((hTn,D1)=>{"use strict";var cnr=typeof Buffer<"u",l3e=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,d3e=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function f3e(e,t,r){r==null&&t!==null&&typeof t=="object"&&(r=t,t=void 0),cnr&&Buffer.isBuffer(e)&&(e=e.toString()),e&&e.charCodeAt(0)===65279&&(e=e.slice(1));let n=JSON.parse(e,t);if(n===null||typeof n!="object")return n;let i=r&&r.protoAction||"error",s=r&&r.constructorAction||"error";if(i==="ignore"&&s==="ignore")return n;if(i!=="ignore"&&s!=="ignore"){if(l3e.test(e)===!1&&d3e.test(e)===!1)return n}else if(i!=="ignore"&&s==="ignore"){if(l3e.test(e)===!1)return n}else if(d3e.test(e)===!1)return n;return p3e(n,{protoAction:i,constructorAction:s,safe:r&&r.safe})}function p3e(e,{protoAction:t="error",constructorAction:r="error",safe:n}={}){let i=[e];for(;i.length;){let s=i;i=[];for(let a of s){if(t!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(t==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let u=a[o];u&&typeof u=="object"&&i.push(u)}}}return e}function QX(e,t,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return f3e(e,t,r)}finally{Error.stackTraceLimit=n}}function lnr(e,t){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return f3e(e,t,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}D1.exports=QX;D1.exports.default=QX;D1.exports.parse=QX;D1.exports.safeParse=lnr;D1.exports.scan=p3e});var JX=b((mTn,o2)=>{"use strict";var{AsyncResource:dnr}=require("node:async_hooks"),{Fifo:g3e}=s3e(),{safeParse:y3e,defaultContentType:fnr}=c3e(),pnr=h3e(),{kDefaultJsonParse:a2,kContentTypeParser:k1,kBodyLimit:hnr,kRequestPayloadStream:_3e,kState:YX,kTestInternals:mnr,kReplyIsError:A3e,kRouteContext:gnr}=Vs(),{FST_ERR_CTP_INVALID_TYPE:v3e,FST_ERR_CTP_EMPTY_TYPE:ynr,FST_ERR_CTP_ALREADY_PRESENT:_nr,FST_ERR_CTP_INVALID_HANDLER:Anr,FST_ERR_CTP_INVALID_PARSE_TYPE:vnr,FST_ERR_CTP_BODY_TOO_LARGE:m3e,FST_ERR_CTP_INVALID_MEDIA_TYPE:bnr,FST_ERR_CTP_INVALID_CONTENT_LENGTH:Enr,FST_ERR_CTP_EMPTY_JSON_BODY:Snr,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:WX}=Wa();function Dh(e,t,r){this[a2]=E3e(t,r),this.customParsers=new Map,this.customParsers.set("application/json",new GX(!0,!1,e,this[a2])),this.customParsers.set("text/plain",new GX(!0,!1,e,XX)),this.parserList=[new T3("application/json"),new T3("text/plain")],this.parserRegExpList=[],this.cache=new g3e(100)}Dh.prototype.add=function(e,t,r){let n=typeof e=="string";if(!n&&!(e instanceof RegExp))throw new v3e;if(n&&e.length===0)throw new ynr;if(typeof r!="function")throw new Anr;if(this.existingParser(e))throw new _nr(e);if(t.parseAs!==void 0&&t.parseAs!=="string"&&t.parseAs!=="buffer")throw new vnr(t.parseAs);let i=new GX(t.parseAs==="string",t.parseAs==="buffer",t.bodyLimit,r);n&&e==="*"?this.customParsers.set("",i):(n?this.parserList.unshift(new T3(e)):(e.isEssence=e.source.indexOf(";")===-1,this.parserRegExpList.unshift(e)),this.customParsers.set(e.toString(),i))};Dh.prototype.hasParser=function(e){return this.customParsers.has(typeof e=="string"?e:e.toString())};Dh.prototype.existingParser=function(e){return e==="application/json"&&this.customParsers.has(e)?this.customParsers.get(e).fn!==this[a2]:e==="text/plain"&&this.customParsers.has(e)?this.customParsers.get(e).fn!==XX:this.hasParser(e)};Dh.prototype.getParser=function(e){if(this.hasParser(e))return this.customParsers.get(e);let t=this.cache.get(e);if(t!==void 0)return t;let r=y3e(e);if(r===fnr)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let s=this.parserList[n];if(Nnr(r,s)){let a=this.customParsers.get(s.name);return this.cache.set(e,a),a}}for(var i=0;i!==this.parserRegExpList.length;++i){let s=this.parserRegExpList[i];if(Rnr(e,r.type,s)){let a=this.customParsers.get(s.toString());return this.cache.set(e,a),a}}return this.customParsers.get("")};Dh.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new g3e(100)};Dh.prototype.remove=function(e){if(!(typeof e=="string"||e instanceof RegExp))throw new v3e;let t=this.customParsers.delete(e.toString()),r=typeof e=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(i=>i.toString()===e.toString());return n>-1&&r.splice(n,1),t||n>-1};Dh.prototype.run=function(e,t,r,n){let i=this.getParser(e);if(i===void 0){r.is404?t(r,n):n.send(new bnr(e||void 0));return}let s=new dnr("content-type-parser:run",r);if(i.asString===!0||i.asBuffer===!0)b3e(r,n,n[gnr]._parserOptions,i,a);else{let o=i.fn(r,r[_3e],a);o&&typeof o.then=="function"&&o.then(u=>a(null,u),a)}function a(o,u){s.runInAsyncScope(()=>{s.emitDestroy(),o?(n[A3e]=!0,n.send(o)):(r.body=u,t(r,n))})}};function b3e(e,t,r,n,i){let s=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=e.headers["content-length"]===void 0?NaN:Number(e.headers["content-length"]);if(o>a){t.header("connection","close"),t.send(new m3e);return}let u=0,c=s===!0?"":[],l=e[_3e]||e.raw;s===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){u+=p.length;let{receivedEncodedLength:h=0}=l;if(u>a||h>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),t.send(new m3e);return}s===!0?c+=p:c.push(p)}function f(p){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),p!==void 0){typeof p.statusCode=="number"&&p.statusCode>=400||(p.statusCode=400),t[A3e]=!0,t.code(p.statusCode).send(p);return}if(s===!0&&(u=Buffer.byteLength(c)),!Number.isNaN(o)&&(l.receivedEncodedLength||u)!==o){t.header("connection","close"),t.send(new Enr);return}s===!1&&(c=Buffer.concat(c));let h=n.fn(e,c,i);h&&typeof h.then=="function"&&h.then(m=>i(null,m),i)}}function E3e(e,t){return r;function r(n,i,s){if(i===""||i==null||Buffer.isBuffer(i)&&i.length===0)return s(new Snr,void 0);let a;try{a=pnr.parse(i,{protoAction:e,constructorAction:t})}catch(o){return o.statusCode=400,s(o,void 0)}s(null,a)}}function XX(e,t,r){r(null,t)}function GX(e,t,r,n){this.asString=e,this.asBuffer=t,this.bodyLimit=r,this.fn=n}function wnr(e){let t=new Dh;return t[a2]=e[a2],t.customParsers=new Map(e.customParsers.entries()),t.parserList=e.parserList.slice(),t.parserRegExpList=e.parserRegExpList.slice(),t}function Inr(e,t,r){if(this[YX].started)throw new WX("addContentTypeParser");return typeof t=="function"&&(r=t,t={}),t||(t={}),t.bodyLimit||(t.bodyLimit=this[hnr]),Array.isArray(e)?e.forEach(n=>this[k1].add(n,t,r)):this[k1].add(e,t,r),this}function xnr(e){return this[k1].hasParser(e)}function Cnr(e){if(this[YX].started)throw new WX("removeContentTypeParser");if(Array.isArray(e))for(let t of e)this[k1].remove(t);else this[k1].remove(e)}function Tnr(){if(this[YX].started)throw new WX("removeAllContentTypeParsers");this[k1].removeAll()}function Nnr(e,t){if(t.isEssence)return e.type.indexOf(t)!==-1;if(e.type.indexOf(t.type)===-1)return!1;for(let r of t.parameterKeys)if(!(r in e.parameters)||e.parameters[r]!==t.parameters[r])return!1;return!0}function Rnr(e,t,r){return r.isEssence?r.test(t):r.test(e)}function T3(e){this.name=e;let t=y3e(e);if(this.isEssence=e.indexOf(";")===-1,this.isEssence===!1&&t.type===""){let r=e.split(";",1)[0];this.type=r===""?e:r}else this.type=t.type;this.parameters=t.parameters,this.parameterKeys=Object.keys(t.parameters)}T3.prototype.toString=function(){return this.name};o2.exports=Dh;o2.exports.helpers={buildContentTypeParser:wnr,addContentTypeParser:Inr,hasContentTypeParser:xnr,removeContentTypeParser:Cnr,removeAllContentTypeParsers:Tnr};o2.exports.defaultParsers={getDefaultJsonParser:E3e,defaultTextParser:XX};o2.exports[mnr]={rawBody:b3e}});var x3e=b((gTn,I3e)=>{"use strict";var S3e=tl(),Dnr=Symbol.for("json-schema-ref"),ZX=class{#e;#t;#r;#n;#a;constructor(t={}){this.#e={},this.#t={},this.#r=t.insertRefSymbol??!1,this.#n=t.allowEqualDuplicates??!0,this.#a=t.cloneSchemaWithoutRefs??!1}addSchema(t,r){t.$id!==void 0&&t.$id.charAt(0)!=="#"?r=t.$id:this.#l(t,r),this.#i(t,r)}getSchema(t,r="#"){let n=this.#e[t];if(n===void 0)throw new Error(`Cannot resolve ref "${t}${r}". Schema with id "${t}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:w3e(n.schema,r)}hasSchema(t){return this.#e[t]!==void 0}getSchemaRefs(t){let r=this.#e[t];if(r===void 0)throw new Error(`Schema with id "${t}" is not found.`);return r.refs}getSchemaDependencies(t,r={}){let n=this.#e[t];for(let i of n.refs){let s=i.schemaId;r[s]===void 0&&(r[s]=this.getSchema(s),this.getSchemaDependencies(s,r))}return r}derefSchema(t){if(this.#t[t]!==void 0)return;let r=this.#e[t];if(r===void 0)throw new Error(`Schema with id "${t}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[t]={schema:r.schema,anchors:r.anchors});let n=[];this.#s(r.schema,t,n);let i=this.getSchemaDependencies(t);for(let s in i){let a=i[s];this.#s(a,s,n)}for(let s of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(s.ref,s.sourceSchemaId),u=this.getDerefSchema(a,o);if(u===null)throw new Error(`Cannot resolve ref "${s.ref}". Ref "${o}" is not found in schema "${a}".`);s.targetSchema=u,s.targetSchemaId=a}for(let s of n)this.#u(s,n)}getDerefSchema(t,r="#"){let n=this.#t[t];return n===void 0&&(this.derefSchema(t),n=this.#t[t]),n.anchors[r]!==void 0?n.anchors[r]:w3e(n.schema,r)}#o(t,r){let n=t.indexOf("#");return n===-1?{refSchemaId:t,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:t}:{refSchemaId:t.slice(0,n),refJsonPointer:t.slice(n)}}#i(t,r){let n=t.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#m(t,r,n):(this.#l(t,n),r=n));let i=t.$ref;if(i!==void 0&&typeof i=="string"){let{refSchemaId:s,refJsonPointer:a}=this.#o(i,r);this.#e[r].refs.push({schemaId:s,jsonPointer:a})}for(let s in t)typeof t[s]=="object"&&t[s]!==null&&this.#i(t[s],r)}#s(t,r,n=[]){let i=Array.isArray(t)?[...t]:{...t},s=i.$id;s!==void 0&&typeof s=="string"&&(s.charAt(0)==="#"?this.#d(i,r,s):(this.#p(i,s),r=s)),i.$ref!==void 0&&n.push({ref:i.$ref,sourceSchemaId:r,sourceSchema:i});for(let a in i){let o=i[a];typeof o=="object"&&o!==null&&(i[a]=this.#s(o,r,n))}return i}#u(t,r){let{sourceSchema:n,targetSchema:i}=t;if(n.$ref){if(this.#r&&(n[Dnr]=n.$ref),delete n.$ref,i.$ref){let s=r.find(a=>a.sourceSchema===i);this.#u(s,r)}for(let s in i)if(s!=="$id"){if(n[s]!==void 0){if(S3e(n[s],i[s]))continue;throw new Error(`Cannot resolve ref "${t.ref}". Property "${s}" is already exist in schema "${t.sourceSchemaId}".`)}n[s]=i[s]}t.isResolved=!0}}#l(t,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&S3e(t,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:t,anchors:{},refs:[]}}#m(t,r,n){let{anchors:i}=this.#e[r];if(i[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);i[n]=t}#p(t,r){this.#t[r]===void 0&&(this.#t[r]={schema:t,anchors:{}})}#d(t,r,n){let{anchors:i}=this.#t[r];i[n]=t}};function w3e(e,t){let r=t.split("/"),n=e;for(let i of r)if(!(i===""||i==="#")){if(typeof n!="object"||n===null)return null;n=n[i]}return n??null}I3e.exports={RefResolver:ZX}});var T3e=b((yTn,C3e)=>{"use strict";var eJ=class e{constructor(t,r,n="#"){this.schema=t,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(t){return new e(this.schema[t],this.schemaId,this.jsonPointer+"/"+t)}getSchemaRef(){return this.schemaId+this.jsonPointer}};C3e.exports=eJ});var O3e=b((_Tn,rJ)=>{"use strict";rJ.exports=je;rJ.exports.default=je;var knr={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},N3e={enum:["array","boolean","integer","null","number","object","string"]},R3e=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,Onr=QB().fullFormats.uri,D3e=QB().fullFormats.regex;function al(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:i=e}={}){let s=null,a=0,o=a;return typeof e=="number"&&!(e%1)&&!isNaN(e)&&isFinite(e)?a===o&&typeof e=="number"&&isFinite(e)&&(e<0||isNaN(e))?(al.errors=[{instancePath:t,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(al.errors=s,a===0):(al.errors=[{instancePath:t,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var tJ={validate:je};function Yo(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:i=e}={}){let s=null,a=0;if(a===0)if(Array.isArray(e)){if(e.length<1)return Yo.errors=[{instancePath:t,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let u=e.length;for(let c=0;c",limit:0},message:"must be > 0"}],!1}else return je.errors=[{instancePath:t+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=_===a}else var o=!0;if(o){if(e.maximum!==void 0){let A=e.maximum,_=a;if(!(typeof A=="number"&&isFinite(A)))return je.errors=[{instancePath:t+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=_===a}else var o=!0;if(o){if(e.exclusiveMaximum!==void 0){let A=e.exclusiveMaximum,_=a;if(!(typeof A=="number"&&isFinite(A)))return je.errors=[{instancePath:t+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=_===a}else var o=!0;if(o){if(e.minimum!==void 0){let A=e.minimum,_=a;if(!(typeof A=="number"&&isFinite(A)))return je.errors=[{instancePath:t+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=_===a}else var o=!0;if(o){if(e.exclusiveMinimum!==void 0){let A=e.exclusiveMinimum,_=a;if(!(typeof A=="number"&&isFinite(A)))return je.errors=[{instancePath:t+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=_===a}else var o=!0;if(o){if(e.maxLength!==void 0){let A=e.maxLength,_=a,E=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return je.errors=[{instancePath:t+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===E&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return je.errors=[{instancePath:t+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=_===a}else var o=!0;if(o){if(e.minLength!==void 0){let A=a;al(e.minLength,{instancePath:t+"/minLength",parentData:e,parentDataProperty:"minLength",rootData:i})||(s=s===null?al.errors:s.concat(al.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.pattern!==void 0){let A=e.pattern,_=a;if(a===_&&a===_)if(typeof A=="string"){if(!D3e(A))return je.errors=[{instancePath:t+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return je.errors=[{instancePath:t+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=_===a}else var o=!0;if(o){if(e.additionalItems!==void 0){let A=a;je(e.additionalItems,{instancePath:t+"/additionalItems",parentData:e,parentDataProperty:"additionalItems",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.items!==void 0){let A=e.items,_=a,E=a,S=!1,C=a;je(A,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var u=C===a;if(S=S||u,!S){let N=a;Yo(A,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:i})||(s=s===null?Yo.errors:s.concat(Yo.errors),a=s.length);var u=N===a;S=S||u}if(S)a=E,s!==null&&(E?s.length=E:s=null);else{let N={instancePath:t+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return s===null?s=[N]:s.push(N),a++,je.errors=s,!1}var o=_===a}else var o=!0;if(o){if(e.maxItems!==void 0){let A=e.maxItems,_=a,E=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return je.errors=[{instancePath:t+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===E&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return je.errors=[{instancePath:t+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=_===a}else var o=!0;if(o){if(e.minItems!==void 0){let A=a;al(e.minItems,{instancePath:t+"/minItems",parentData:e,parentDataProperty:"minItems",rootData:i})||(s=s===null?al.errors:s.concat(al.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.uniqueItems!==void 0){let A=a;if(typeof e.uniqueItems!="boolean")return je.errors=[{instancePath:t+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=A===a}else var o=!0;if(o){if(e.contains!==void 0){let A=a;je(e.contains,{instancePath:t+"/contains",parentData:e,parentDataProperty:"contains",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.maxProperties!==void 0){let A=e.maxProperties,_=a,E=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return je.errors=[{instancePath:t+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===E&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return je.errors=[{instancePath:t+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=_===a}else var o=!0;if(o){if(e.minProperties!==void 0){let A=a;al(e.minProperties,{instancePath:t+"/minProperties",parentData:e,parentDataProperty:"minProperties",rootData:i})||(s=s===null?al.errors:s.concat(al.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.required!==void 0){let A=e.required,_=a;if(a===a)if(Array.isArray(A)){var c=!0;let C=A.length;for(let I=0;I1){let T={};for(;I--;){let k=A[I];if(typeof k=="string"){if(typeof T[k]=="number"){return N=T[k],je.errors=[{instancePath:t+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:I,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+I+" are identical)"}],!1;break}T[k]=I}}}}}else return je.errors=[{instancePath:t+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=_===a}else var o=!0;if(o){if(e.additionalProperties!==void 0){let A=a;je(e.additionalProperties,{instancePath:t+"/additionalProperties",parentData:e,parentDataProperty:"additionalProperties",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.definitions!==void 0){let A=e.definitions,_=a;if(a===_)if(A&&typeof A=="object"&&!Array.isArray(A))for(let S in A){let C=a;je(A[S],{instancePath:t+"/definitions/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:S,rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var l=C===a;if(!l)break}else return je.errors=[{instancePath:t+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=_===a}else var o=!0;if(o){if(e.properties!==void 0){let A=e.properties,_=a;if(a===_)if(A&&typeof A=="object"&&!Array.isArray(A))for(let S in A){let C=a;je(A[S],{instancePath:t+"/properties/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:S,rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var d=C===a;if(!d)break}else return je.errors=[{instancePath:t+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=_===a}else var o=!0;if(o){if(e.patternProperties!==void 0){let A=e.patternProperties,_=a;if(a===_)if(A&&typeof A=="object"&&!Array.isArray(A)){for(let S in A){let C=a;if(a===C&&typeof S=="string"&&!D3e(S)){let I={instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:S};s===null?s=[I]:s.push(I),a++}var f=C===a;if(!f){let I={instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:S},message:"property name must be valid"};return s===null?s=[I]:s.push(I),a++,je.errors=s,!1;break}}if(f)for(let S in A){let C=a;je(A[S],{instancePath:t+"/patternProperties/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:S,rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var p=C===a;if(!p)break}}else return je.errors=[{instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=_===a}else var o=!0;if(o){if(e.dependencies!==void 0){let A=e.dependencies,_=a;if(a===_)if(A&&typeof A=="object"&&!Array.isArray(A))for(let S in A){let C=A[S],I=a,N=a,T=!1,k=a;je(C,{instancePath:t+"/dependencies/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:S,rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var h=k===a;if(T=T||h,!T){let O=a;if(a===a)if(Array.isArray(C)){var m=!0;let Q=C.length;for(let j=0;j1){let X={};for(;j--;){let K=C[j];if(typeof K=="string"){if(typeof X[K]=="number"){z=X[K];let Z={instancePath:t+"/dependencies/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:j,j:z},message:"must NOT have duplicate items (items ## "+z+" and "+j+" are identical)"};s===null?s=[Z]:s.push(Z),a++;break}X[K]=j}}}}}else{let Q={instancePath:t+"/dependencies/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};s===null?s=[Q]:s.push(Q),a++}var h=O===a;T=T||h}if(T)a=N,s!==null&&(N?s.length=N:s=null);else{let O={instancePath:t+"/dependencies/"+S.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return s===null?s=[O]:s.push(O),a++,je.errors=s,!1}var y=I===a;if(!y)break}else return je.errors=[{instancePath:t+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=_===a}else var o=!0;if(o){if(e.propertyNames!==void 0){let A=a;je(e.propertyNames,{instancePath:t+"/propertyNames",parentData:e,parentDataProperty:"propertyNames",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.enum!==void 0){let A=e.enum,_=a;if(a===_)if(Array.isArray(A)){if(A.length<1)return je.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let S=A.length,C;if(S>1){e:for(;S--;)for(C=S;C--;)if(k3e(A[S],A[C])){return je.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:S,j:C},message:"must NOT have duplicate items (items ## "+C+" and "+S+" are identical)"}],!1;break e}}}}else return je.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=_===a}else var o=!0;if(o){if(e.type!==void 0){let A=e.type,_=a,E=a,S=!1,C=a;if(!(A==="array"||A==="boolean"||A==="integer"||A==="null"||A==="number"||A==="object"||A==="string")){let N={instancePath:t+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:N3e.enum},message:"must be equal to one of the allowed values"};s===null?s=[N]:s.push(N),a++}var g=C===a;if(S=S||g,!S){let N=a;if(a===N)if(Array.isArray(A))if(A.length<1){let k={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};s===null?s=[k]:s.push(k),a++}else{var v=!0;let k=A.length;for(let O=0;O1){e:for(;O--;)for(P=O;P--;)if(k3e(A[O],A[P])){let $={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:O,j:P},message:"must NOT have duplicate items (items ## "+P+" and "+O+" are identical)"};s===null?s=[$]:s.push($),a++;break e}}}}else{let k={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};s===null?s=[k]:s.push(k),a++}var g=N===a;S=S||g}if(S)a=E,s!==null&&(E?s.length=E:s=null);else{let N={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return s===null?s=[N]:s.push(N),a++,je.errors=s,!1}var o=_===a}else var o=!0;if(o){if(e.format!==void 0){let A=a;if(typeof e.format!="string")return je.errors=[{instancePath:t+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.contentMediaType!==void 0){let A=a;if(typeof e.contentMediaType!="string")return je.errors=[{instancePath:t+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.contentEncoding!==void 0){let A=a;if(typeof e.contentEncoding!="string")return je.errors=[{instancePath:t+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.if!==void 0){let A=a;je(e.if,{instancePath:t+"/if",parentData:e,parentDataProperty:"if",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.then!==void 0){let A=a;je(e.then,{instancePath:t+"/then",parentData:e,parentDataProperty:"then",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.else!==void 0){let A=a;je(e.else,{instancePath:t+"/else",parentData:e,parentDataProperty:"else",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.allOf!==void 0){let A=a;Yo(e.allOf,{instancePath:t+"/allOf",parentData:e,parentDataProperty:"allOf",rootData:i})||(s=s===null?Yo.errors:s.concat(Yo.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.anyOf!==void 0){let A=a;Yo(e.anyOf,{instancePath:t+"/anyOf",parentData:e,parentDataProperty:"anyOf",rootData:i})||(s=s===null?Yo.errors:s.concat(Yo.errors),a=s.length);var o=A===a}else var o=!0;if(o){if(e.oneOf!==void 0){let A=a;Yo(e.oneOf,{instancePath:t+"/oneOf",parentData:e,parentDataProperty:"oneOf",rootData:i})||(s=s===null?Yo.errors:s.concat(Yo.errors),a=s.length);var o=A===a}else var o=!0;if(o)if(e.not!==void 0){let A=a;je(e.not,{instancePath:t+"/not",parentData:e,parentDataProperty:"not",rootData:i})||(s=s===null?je.errors:s.concat(je.errors),a=s.length);var o=A===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return je.errors=s,a===0}});var aJ=b((ATn,P3e)=>{"use strict";var nJ=class extends Error{constructor(t,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${t}" keyword schemas.`,this.schemas=r}},iJ=class extends Error{constructor(t,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${t}" keyword not found.`,this.schemas=r}},sJ=class extends Error{constructor(t){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${t}".`}};P3e.exports={MergeError:nJ,ResolverNotFoundError:iJ,InvalidOnConflictOptionError:sJ}});var B3e=b((vTn,L3e)=>{"use strict";var Pnr=tl(),{MergeError:oJ}=aJ();function M3e(e){let t=e[0];for(let r=1;re[r].includes(n));return t}function Mnr(e,t,r){let n=M3e(t);if(n.length===0)throw new oJ(e,t);r[e]=n}function Lnr(e,t,r){for(let i=0;iu?n(u,o%u):o,i=(o,u)=>o*u/n(o,u),s=1;for(let o of t)for(;o*s%1!==0;)s*=10;let a=t[0]*s;for(let o of t)a=i(a,o*s);r[e]=a/s}function qnr(e,t,r){let n=t[0];for(let i=1;i{"use strict";var Vnr=tl(),Ni=B3e(),D3=aJ(),U3e={$id:Ni.skip,type:Ni.hybridArraysIntersection,enum:Ni.arraysIntersection,minLength:Ni.maxNumber,maxLength:Ni.minNumber,minimum:Ni.maxNumber,maximum:Ni.minNumber,multipleOf:Ni.commonMultiple,exclusiveMinimum:Ni.maxNumber,exclusiveMaximum:Ni.minNumber,minItems:Ni.maxNumber,maxItems:Ni.minNumber,maxProperties:Ni.minNumber,minProperties:Ni.maxNumber,const:Ni.allEqual,default:Ni.allEqual,format:Ni.allEqual,required:Ni.arraysUnion,properties:Xnr,patternProperties:R3,additionalProperties:N3,items:Gnr,additionalItems:Ynr,definitions:R3,$defs:R3,nullable:Ni.booleanAnd,oneOf:$3e,anyOf:$3e,allOf:Ni.arraysUnion,not:N3,if:Jnr,then:Ni.skip,else:Ni.skip,dependencies:F3e,dependentRequired:F3e,dependentSchemas:R3,propertyNames:N3,uniqueItems:Ni.booleanOr,contains:N3};function N3(e,t,r,n,i){r[e]=_d(t,i)}function znr(e){let t=[[]];for(let r of e){let n=[];for(let i of t)for(let s of r)n.push([...i,s]);t=n}return t}function $3e(e,t,r,n,i){if(t.length===1){r[e]=t[0];return}let s=znr(t),a=[];for(let o of s)try{let u=_d(o,i);u!==void 0&&a.push(u)}catch(u){if(u instanceof D3.MergeError)continue;throw u}r[e]=a}function Qnr(e,t){let{items:r,additionalItems:n}=e;return Array.isArray(r)?t{"use strict";var{mergeSchemas:eir}=H3e();function tir(e){return eir(e,{onConflict:"skip"})}K3e.exports=tir});var e$e=b((STn,O1)=>{"use strict";var{RefResolver:rir}=x3e(),nir=sY(),iir=rX(),wA=T3e(),z3e=O3e(),sir=V3e(),air=/'/g,k3=2e4,G3e="default",oir=["floor","ceil","round","trunc"],Y3e=["default","json-stringify"],u2=0;function uJ(e,t){if(!z3e(e)){t?t=`"${t}" `:t="";let r=z3e.errors[0],n=new Error(`${t}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=uJ.errors,n}}function c2(e,t){let r=t.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let i=r.slice(0,n)||t.schemaId,s=r.slice(n)||"#",a=e.refResolver.getSchema(i,s);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new wA(a,i,s);return a.$ref!==void 0?c2(e,o):o}function O3(e,t){let r=e.refResolver.getSchema(t,"#");return new wA(r,t,"#")}function Q3e(e,t){return e.$id&&e.$id.charAt(0)!=="#"?e.$id:t}function cJ(e,t){uJ(e),t=t||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:t,refResolver:new rir,rootSchemaId:e.$id||`__fjs_root_${u2++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=Q3e(e,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(e,r.rootSchemaId),t.schema)for(let l in t.schema){let d=t.schema[l],f=Q3e(d,l);r.refResolver.hasSchema(f)||(uJ(d,l),r.refResolver.addSchema(d,l))}if(t.rounding&&!oir.includes(t.rounding))throw new Error(`Unsupported integer rounding method ${t.rounding}`);if(t.largeArrayMechanism)if(Y3e.includes(t.largeArrayMechanism))G3e=t.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${t.largeArrayMechanism}`);if(t.largeArraySize)if(typeof t.largeArraySize=="string"&&Number.isFinite(Number.parseInt(t.largeArraySize,10)))k3=Number.parseInt(t.largeArraySize,10);else if(typeof t.largeArraySize=="number"&&Number.isInteger(t.largeArraySize))k3=t.largeArraySize;else if(typeof t.largeArraySize=="bigint")k3=Number(t.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof t.largeArraySize} with value ${t.largeArraySize}`);let i=new wA(e,r.rootSchemaId),s=yc(r,i,"input"),a=` + module.exports = ${e.toString()}(validator, serializer)`}_ne.exports=f_r;_ne.exports.dependencies={Serializer:Ete(),Validator:gne()}});var I9e=S((YVn,b9e)=>{"use strict";var{dependencies:h_r}=Ane(),{Serializer:p_r,Validator:zVn}=h_r,m_r={mode:"standalone"},g_r=p_r.restoreFromState(m_r),__r=null;b9e.exports=function(t,r){function n(i){let a=i&&typeof i.toJSON=="function"?i.toJSON():i;if(a===null)return"{}";let o=!1,c="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(c+=","),c+='"statusCode":',c+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(c+=","),c+='"code":',c+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(c+=","),c+='"error":',c+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(c+=","),c+='"message":',c+=r.asString(a.message)),c+"}"}return n}(__r,g_r)});var WO=S((QVn,w9e)=>{"use strict";var R9e=require("node:http").STATUS_CODES,A_r=gee(),{kReplyHeaders:Ev,kReplyNextErrorHandler:B6,kReplyIsRunningOnErrorHook:E_r,kReplyHasStatusCode:y_r,kRouteContext:x9e}=Ma(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:v_r,FST_ERR_FAILED_ERROR_SERIALIZATION:S_r}=Bo(),{getSchemaSerializer:T_r}=AO(),Ene=I9e(),b_r={func:R_r,toJSON(){return this.func.name.toString()+"()"}};function I_r(e,t,r){e[E_r]=!1;let n=e[x9e];if(e[B6]===!1){C9e(t,e,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[Ev])}catch(u){o.log.warn({req:o.request,res:o,err:u},u&&u.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(c)});return}let s=e[B6]||n.errorHandler;e[B6]=Object.getPrototypeOf(s),delete e[Ev]["content-type"],delete e[Ev]["content-length"];let i=s.func;if(!i){e[B6]=!1,C9e(t,e,r);return}let a=i(t,e.request,e);a!==void 0&&(a!==null&&typeof a.then=="function"?A_r(a,e):e.send(a))}function R_r(e,t,r){if(x_r(e,r),!r[y_r]||r.statusCode===200){let n=e.statusCode||e.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:e},e&&e.message):r.log.error({req:t,res:r,err:e},e&&e.message),r.send(e)}function C9e(e,t,r){let n=t.raw,s=t.statusCode;t[Ev]["content-type"]=t[Ev]["content-type"]??"application/json; charset=utf-8";let i;try{let a=T_r(t[x9e],s,t[Ev]["content-type"]);i=a===!1?Ene({error:R9e[s+""],code:e.code,message:e.message,statusCode:s}):a(Object.create(e,{error:{value:R9e[s+""]},message:{value:e.message},statusCode:{value:s}}))}catch(a){t.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),t.code(500),i=Ene(new S_r(a.message,e.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=Ene(new v_r(typeof i))),t[Ev]["content-length"]=""+Buffer.byteLength(i),r(t,i)}function C_r(e=b_r,t){if(!t)return e;let r=Object.create(e);return r.func=t,r}function x_r(e,t){let r=t.raw,n=r.statusCode;n=n>=400?n:500,e!=null&&(e.headers!==void 0&&t.headers(e.headers),e.status>=400?n=e.status:e.statusCode>=400&&(n=e.statusCode)),r.statusCode=n}w9e.exports={buildErrorHandler:C_r,handleError:I_r}});var V6=S((WVn,H6)=>{"use strict";var Tne=require("node:stream").finished,w_r=require("node:stream").Readable,{kFourOhFourContext:N9e,kPublicRouteContext:O9e,kReplyErrorHandlerCalled:F9e,kReplyHijacked:XO,kReplyStartTime:JO,kReplyEndTime:Ine,kReplySerializer:om,kReplySerializerDefault:F6,kReplyIsError:$6,kReplyHeaders:ks,kReplyTrailers:ka,kReplyHasStatusCode:Rne,kReplyIsRunningOnErrorHook:Cne,kReplyNextErrorHandler:N_r,kDisableRequestLogging:$9e,kSchemaResponse:q6,kReplyCacheSerializeFns:oA,kSchemaController:yne,kOptions:O_r,kRouteContext:Fr}=Ma(),{onSendHookRunner:q9e,onResponseHookRunner:D_r,preHandlerHookRunner:P_r,preSerializationHookRunner:L_r}=Y_(),D9e=yee()[Symbol.for("internals")],M_r=_O(),bne=M_r.now,{handleError:P9e}=WO(),{getSchemaSerializer:k_r}=AO(),vne={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:B_r,FST_ERR_REP_RESPONSE_BODY_CONSUMED:U_r,FST_ERR_REP_ALREADY_SENT:H9e,FST_ERR_REP_SENT_VALUE:F_r,FST_ERR_SEND_INSIDE_ONERR:$_r,FST_ERR_BAD_STATUS_CODE:q_r,FST_ERR_BAD_TRAILER_NAME:H_r,FST_ERR_BAD_TRAILER_VALUE:V_r,FST_ERR_MISSING_SERIALIZATION_FN:j_r,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:K_r}=Bo(),{FSTDEP010:G_r,FSTDEP013:z_r,FSTDEP019:Y_r,FSTDEP020:Q_r}=Zp(),V9e=Object.prototype.toString;function Cs(e,t,r){this.raw=e,this[om]=null,this[F9e]=!1,this[$6]=!1,this[Cne]=!1,this.request=t,this[ks]={},this[ka]=null,this[Rne]=!1,this[JO]=void 0,this.log=r}Cs.props=[];Object.defineProperties(Cs.prototype,{[Fr]:{get(){return this.request[Fr]}},context:{get(){return Y_r(),this.request[Fr]}},elapsedTime:{get(){return this[JO]===void 0?0:(this[Ine]||bne())-this[JO]}},server:{get(){return this.request[Fr].server}},sent:{enumerable:!0,get(){return(this[XO]||this.raw.writableEnded)===!0},set(e){if(G_r(),e!==!0)throw new F_r;if(this.sent&&this[XO])throw new H9e(this.request.url,this.request.method);this[XO]=!0}},statusCode:{get(){return this.raw.statusCode},set(e){this.code(e)}},[O9e]:{get(){return this.request[O9e]}}});Cs.prototype.hijack=function(){return this[XO]=!0,this};Cs.prototype.send=function(e){if(this[Cne]===!0)throw new $_r;if(this.sent)return this.log.warn({err:new H9e(this.request.url,this.request.method)}),this;if(e instanceof Error||this[$6]===!0)return this[$6]=!1,ZO(this,e,yv),this;if(e===void 0)return yv(this,e),this;let t=this.getHeader("content-type"),r=t!==void 0;if(e!==null){if(typeof e.pipe=="function"||typeof e.getReader=="function"||V9e.call(e)==="[object Response]")return yv(this,e),this;if(e?.buffer instanceof ArrayBuffer){r===!1&&(this[ks]["content-type"]=vne.OCTET);let n=Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength);return yv(this,n),this}if(r===!1&&typeof e=="string")return this[ks]["content-type"]=vne.PLAIN,yv(this,e),this}if(this[om]!==null){if(typeof e!="string")return L9e(this,e),this;e=this[om](e)}else if(r===!1||t.indexOf("json")>-1){if(r===!1)this[ks]["content-type"]=vne.JSON;else if(t.indexOf("charset")===-1){let n=t.trim();n.endsWith(";")?this[ks]["content-type"]=`${n} charset=utf-8`:this[ks]["content-type"]=`${n}; charset=utf-8`}if(typeof e!="string")return L9e(this,e),this}return yv(this,e),this};Cs.prototype.getHeader=function(e){e=e.toLowerCase();let t=this.raw,r=this[ks][e];return r===void 0&&t.hasHeader(e)&&(r=t.getHeader(e)),r};Cs.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[ks]}};Cs.prototype.hasHeader=function(e){return e=e.toLowerCase(),this[ks][e]!==void 0||this.raw.hasHeader(e)};Cs.prototype.removeHeader=function(e){return delete this[ks][e.toLowerCase()],this};Cs.prototype.header=function(e,t=""){return e=e.toLowerCase(),this[ks][e]&&e==="set-cookie"?(typeof this[ks][e]=="string"&&(this[ks][e]=[this[ks][e]]),Array.isArray(t)?Array.prototype.push.apply(this[ks][e],t):this[ks][e].push(t)):this[ks][e]=t,this};Cs.prototype.headers=function(e){let t=Object.keys(e);for(var r=0;r!==t.length;++r){let n=t[r];this.header(n,e[n])}return this};var W_r=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);Cs.prototype.trailer=function(e,t){if(e=e.toLowerCase(),W_r.has(e))throw new H_r(e);if(typeof t!="function")throw new V_r(e,typeof t);return this[ka]===null&&(this[ka]={}),this[ka][e]=t,this};Cs.prototype.hasTrailer=function(e){return this[ka]?.[e.toLowerCase()]!==void 0};Cs.prototype.removeTrailer=function(e){return this[ka]===null?this:(this[ka][e.toLowerCase()]=void 0,this)};Cs.prototype.code=function(e){let t=Number(e);if(isNaN(t)||t<100||t>599)throw new q_r(e||String(e));return this.raw.statusCode=t,this[Rne]=!0,this};Cs.prototype.status=Cs.prototype.code;Cs.prototype.getSerializationFunction=function(e,t){let r;return typeof e=="string"||typeof e=="number"?typeof t=="string"?r=this[Fr][q6]?.[e]?.[t]:r=this[Fr][q6]?.[e]:typeof e=="object"&&(r=this[Fr][oA]?.get(e)),r};Cs.prototype.compileSerializationSchema=function(e,t=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[Fr][oA]?.has(e))return this[Fr][oA].get(e);let o=(this[Fr].serializerCompiler||this.server[yne].serializerCompiler||this.server[yne].setupSerializer(this.server[O_r])||this.server[yne].serializerCompiler)({schema:e,method:s,url:i,httpStatus:t,contentType:r});return this[Fr][oA]==null&&(this[Fr][oA]=new WeakMap),this[Fr][oA].set(e,o),o};Cs.prototype.serializeInput=function(e,t,r,n){let s=r,i;if(r=typeof t=="string"||typeof t=="number"?t:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[Fr][q6]?.[r]?.[n]:i=this[Fr][q6]?.[r],i==null)throw n?new K_r(r,n):new j_r(r)}else this[Fr][oA]?.has(t)?i=this[Fr][oA].get(t):i=this.compileSerializationSchema(t,r,n);return i(e)};Cs.prototype.serialize=function(e){return this[om]!==null?this[om](e):this[Fr]&&this[Fr][F6]?this[Fr][F6](e,this.raw.statusCode):G9e(this[Fr],e,this.raw.statusCode)};Cs.prototype.serializer=function(e){return this[om]=e,this};Cs.prototype.type=function(e){return this[ks]["content-type"]=e,this};Cs.prototype.redirect=function(e,t){return typeof e=="string"&&(t=e,e=this[Rne]?this.raw.statusCode:302),this.header("location",t).code(e).send()};Cs.prototype.callNotFound=function(){return rAr(this),this};Cs.prototype.getResponseTime=function(){return Q_r(),this.elapsedTime};Cs.prototype.then=function(e,t){if(this.sent){e();return}Tne(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?t?t(r):this.log&&this.log.warn("unhandled rejection on reply.then"):e()})};function L9e(e,t){e[Fr].preSerialization!==null?L_r(e[Fr].preSerialization,e.request,e,t,M9e):M9e(null,e.request,e,t)}function M9e(e,t,r,n){if(e!=null){ZO(r,e);return}try{r[om]!==null?n=r[om](n):r[Fr]&&r[Fr][F6]?n=r[Fr][F6](n,r.raw.statusCode):n=G9e(r[Fr],n,r.raw.statusCode,r[ks]["content-type"])}catch(s){X_r(s,r),ZO(r,s);return}yv(r,n)}function X_r(e,t){e.serialization=t[Fr].config}function yv(e,t){e[Fr].onSend!==null?q9e(e[Fr].onSend,e.request,e,t,J_r):j9e(e,t)}function J_r(e,t,r,n){e!=null?ZO(r,e):j9e(r,n)}function Sne(e,t){let r=e.raw;try{r.writeHead(t,e[ks])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&e.log.warn(`Reply was already sent, did you forget to "return reply" in the "${e.request.raw.url}" (${e.request.raw.method}) route?`),n}}function j9e(e,t){let r=e.raw,n=e.request;if(e[ka]!==null){let a=Object.keys(e[ka]),o="";for(let c of a)typeof e[ka][c]=="function"&&(o+=" ",o+=c);e.header("Transfer-Encoding","chunked"),e.header("Trailer",o.trim())}let s=V9e.call(t)==="[object Response]";s&&typeof t.status=="number"&&e.code(t.status);let i=r.statusCode;if(t==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&e[ka]===null&&(e[ks]["content-length"]="0"),Sne(e,i),U6(t,r,e);return}if(i>=100&&i<200||i===204){e.removeHeader("content-type"),e.removeHeader("content-length"),Sne(e,i),U6(void 0,r,e),typeof t.resume=="function"&&(t.on("error",z9e),t.resume());return}if(typeof t.pipe=="function"){K9e(t,r,e);return}if(typeof t.getReader=="function"){B9e(t,r,e);return}if(s){if(typeof t.headers=="object"&&typeof t.headers.forEach=="function")for(let[a,o]of t.headers)e.header(a,o);if(t.body!=null){if(t.bodyUsed)throw new U_r;B9e(t.body,r,e)}return}if(typeof t!="string"&&!Buffer.isBuffer(t))throw new B_r(typeof t);if(e[ka]===null){let a=e[ks]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(t))&&(e[ks]["content-length"]=""+Buffer.byteLength(t))}Sne(e,i),r.write(t),U6(t,r,e)}function k9e(e,t,r){t.code==="ERR_STREAM_PREMATURE_CLOSE"?e[$9e]||e.info({res:r},"stream closed prematurely"):e.warn({err:t},"response terminated with an error with headers already sent")}function B9e(e,t,r){let n=w_r.fromWeb(e);K9e(n,t,r)}function K9e(e,t,r){let n=!0,s=!1;if(Z_r(e,t,r),Tne(e,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(t.headersSent||r.request.raw.aborted===!0?(s||(s=!0,k9e(r.log,i,t)),t.destroy()):ZO(r,i))}),Tne(t,function(i){n&&(i!=null&&t.headersSent&&!s&&(s=!0,k9e(r.log,i,t)),typeof e.destroy=="function"?e.destroy():typeof e.close=="function"?e.close(z9e):typeof e.abort=="function"?e.abort():r.log.warn("stream payload does not end properly"))}),t.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[ks])t.setHeader(i,r[ks][i]);e.pipe(t)}function U6(e,t,r){if(r[ka]===null){t.end(null,null,null);return}let n=Object.keys(r[ka]),s={},i=0,a=!0;function o(){i===0&&(t.addTrailers(s),t.end(null,null,null))}for(let c of n){let u=function(d,f){i++,d?r.log.debug(d):s[c]=f,process.nextTick(o)};if(typeof r[ka][c]!="function")continue;a=!1,i--;let l=r[ka][c](r,e,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(z_r(),u(null,l))}a&&t.end(null,null,null)}function Z_r(e,t,r){r[ka]!==null&&e.on("end",()=>U6(null,t,r))}function ZO(e,t,r){e[Fr].onError!==null&&!e[N_r]?(e[Cne]=!0,q9e(e[Fr].onError,e.request,e,t,()=>P9e(e,t,r))):P9e(e,t,r)}function eAr(e){e[JO]=bne();let t=r=>{e[Ine]=bne(),e.raw.removeListener("finish",t),e.raw.removeListener("error",t);let n=e[Fr];n&&n.onResponse!==null?D_r(n.onResponse,e.request,e,U9e):U9e(r,e.request,e)};e.raw.on("finish",t),e.raw.on("error",t)}function U9e(e,t,r){if(r.log[$9e])return;let n=r.elapsedTime;if(e!=null){r.log.error({res:r,err:e,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function tAr(e){let t=e.props.slice();function r(n,s,i){this.raw=n,this[$6]=!1,this[F9e]=!1,this[XO]=!1,this[om]=null,this.request=s,this[ks]={},this[ka]=null,this[JO]=void 0,this[Ine]=void 0,this.log=i;for(var a,o=0;o{"use strict";Y9e.exports=nAr;function nAr(e){if(!e)throw new TypeError("argument req is required");var t=iAr(e.headers["x-forwarded-for"]||""),r=sAr(e),n=[r].concat(t);return n}function sAr(e){return e.socket?e.socket.remoteAddress:e.connection.remoteAddress}function iAr(e){for(var t=e.length,r=[],n=e.length,s=e.length-1;s>=0;s--)switch(e.charCodeAt(s)){case 32:n===t&&(n=t=s);break;case 44:n!==t&&r.push(e.substring(n,t)),n=t=s;break;default:n=s;break}return n!==t&&r.push(e.substring(n,t)),r}});var X9e=S((W9e,e2)=>{(function(){var e,t,r,n,s,i,a,o,c;t={},o=this,typeof e2<"u"&&e2!==null&&e2.exports?e2.exports=t:o.ipaddr=t,a=function(u,l,d,f){var h,p;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(h=0;f>0;){if(p=d-f,p<0&&(p=0),u[h]>>p!==l[h]>>p)return!1;f-=d,h+=1}return!0},t.subnetMatch=function(u,l,d){var f,h,p,m,g;d==null&&(d="unicast");for(p in l)for(m=l[p],m[0]&&!(m[0]instanceof Array)&&(m=[m]),f=0,h=m.length;f=0;d=f+=-1)if(h=this.octets[d],h in g){if(m=g[h],p&&m!==0)return null;m!==8&&(p=!0),l+=m}else return null;return 32-l},u}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},t.IPv4.parser=function(u){var l,d,f,h,p;if(d=function(m){return m[0]==="0"&&m[1]!=="x"?parseInt(m,8):parseInt(m)},l=u.match(n.fourOctet))return function(){var m,g,_,y;for(_=l.slice(1,6),y=[],m=0,g=_.length;m4294967295||p<0)throw new Error("ipaddr: address outside defined range");return function(){var m,g;for(g=[],h=m=0;m<=24;h=m+=8)g.push(p>>h&255);return g}().reverse()}else return null},t.IPv6=function(){function u(l,d){var f,h,p,m,g,_;if(l.length===16)for(this.parts=[],f=h=0;h<=14;f=h+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(_=this.parts,p=0,m=_.length;pd&&(l=f.index,d=f[0].length);return d<0?p:p.substring(0,l)+"::"+p.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,h,p;for(l=[],p=this.parts,d=0,f=p.length;d>8),l.push(h&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var h,p,m,g;for(m=this.parts,g=[],h=0,p=m.length;h>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,h,p,m,g;for(g={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,p=!1,d=f=7;f>=0;d=f+=-1)if(h=this.parts[d],h in g){if(m=g[h],p&&m!==0)return null;m!==16&&(p=!0),l+=m}else return null;return 128-l},u}(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},e=function(u,l){var d,f,h,p,m,g;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(g=(u.match(i.zoneIndex)||[])[0],g&&(g=g.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(m=l-d,p=":";m--;)p+="0:";return u=u.replace("::",p),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var _,y,A,E;for(A=u.split(":"),E=[],_=0,y=A.length;_=0&&l<=32))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},t.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,f;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(f=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},t.isValid=function(u){return t.IPv6.isValid(u)||t.IPv4.isValid(u)},t.parse=function(u){if(t.IPv6.isValid(u))return t.IPv6.parse(u);if(t.IPv4.isValid(u))return t.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},t.parseCIDR=function(u){var l;try{return t.IPv6.parseCIDR(u)}catch(d){l=d;try{return t.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},t.fromByteArray=function(u){var l;if(l=u.length,l===4)return new t.IPv4(u);if(l===16)return new t.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},t.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(W9e)});var rqe=S((JVn,G6)=>{"use strict";G6.exports=fAr;G6.exports.all=eqe;G6.exports.compile=tqe;var aAr=Q9e(),Z9e=X9e(),oAr=/^[0-9]+$/,j6=Z9e.isValid,K6=Z9e.parse,J9e={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function eqe(e,t){var r=aAr(e);if(!t)return r;typeof t!="function"&&(t=tqe(t));for(var n=0;ns)throw new TypeError("invalid range on address: "+e);return[n,i]}function dAr(e){var t=K6(e),r=t.kind();return r==="ipv4"?t.prefixLengthFromSubnetMask():null}function fAr(e,t){if(!e)throw new TypeError("req argument is required");if(!t)throw new TypeError("trust argument is required");var r=eqe(e,t),n=r[r.length-1];return n}function hAr(){return!1}function pAr(e){return function(r){if(!j6(r))return!1;for(var n=K6(r),s,i=n.kind(),a=0;a{"use strict";var gAr="2.0.0",_Ar=Number.MAX_SAFE_INTEGER||9007199254740991,AAr=16,EAr=250,yAr=["major","premajor","minor","preminor","patch","prepatch","prerelease"];nqe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:AAr,MAX_SAFE_BUILD_LENGTH:EAr,MAX_SAFE_INTEGER:_Ar,RELEASE_TYPES:yAr,SEMVER_SPEC_VERSION:gAr,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var r2=S((e7n,sqe)=>{"use strict";var vAr=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};sqe.exports=vAr});var J1=S((lh,iqe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:xne,MAX_SAFE_BUILD_LENGTH:SAr,MAX_LENGTH:TAr}=t2(),bAr=r2();lh=iqe.exports={};var IAr=lh.re=[],RAr=lh.safeRe=[],dt=lh.src=[],CAr=lh.safeSrc=[],ft=lh.t={},xAr=0,wne="[a-zA-Z0-9-]",wAr=[["\\s",1],["\\d",TAr],[wne,SAr]],NAr=e=>{for(let[t,r]of wAr)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},dr=(e,t,r)=>{let n=NAr(t),s=xAr++;bAr(e,s,t),ft[e]=s,dt[s]=t,CAr[s]=n,IAr[s]=new RegExp(t,r?"g":void 0),RAr[s]=new RegExp(n,r?"g":void 0)};dr("NUMERICIDENTIFIER","0|[1-9]\\d*");dr("NUMERICIDENTIFIERLOOSE","\\d+");dr("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${wne}*`);dr("MAINVERSION",`(${dt[ft.NUMERICIDENTIFIER]})\\.(${dt[ft.NUMERICIDENTIFIER]})\\.(${dt[ft.NUMERICIDENTIFIER]})`);dr("MAINVERSIONLOOSE",`(${dt[ft.NUMERICIDENTIFIERLOOSE]})\\.(${dt[ft.NUMERICIDENTIFIERLOOSE]})\\.(${dt[ft.NUMERICIDENTIFIERLOOSE]})`);dr("PRERELEASEIDENTIFIER",`(?:${dt[ft.NONNUMERICIDENTIFIER]}|${dt[ft.NUMERICIDENTIFIER]})`);dr("PRERELEASEIDENTIFIERLOOSE",`(?:${dt[ft.NONNUMERICIDENTIFIER]}|${dt[ft.NUMERICIDENTIFIERLOOSE]})`);dr("PRERELEASE",`(?:-(${dt[ft.PRERELEASEIDENTIFIER]}(?:\\.${dt[ft.PRERELEASEIDENTIFIER]})*))`);dr("PRERELEASELOOSE",`(?:-?(${dt[ft.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${dt[ft.PRERELEASEIDENTIFIERLOOSE]})*))`);dr("BUILDIDENTIFIER",`${wne}+`);dr("BUILD",`(?:\\+(${dt[ft.BUILDIDENTIFIER]}(?:\\.${dt[ft.BUILDIDENTIFIER]})*))`);dr("FULLPLAIN",`v?${dt[ft.MAINVERSION]}${dt[ft.PRERELEASE]}?${dt[ft.BUILD]}?`);dr("FULL",`^${dt[ft.FULLPLAIN]}$`);dr("LOOSEPLAIN",`[v=\\s]*${dt[ft.MAINVERSIONLOOSE]}${dt[ft.PRERELEASELOOSE]}?${dt[ft.BUILD]}?`);dr("LOOSE",`^${dt[ft.LOOSEPLAIN]}$`);dr("GTLT","((?:<|>)?=?)");dr("XRANGEIDENTIFIERLOOSE",`${dt[ft.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);dr("XRANGEIDENTIFIER",`${dt[ft.NUMERICIDENTIFIER]}|x|X|\\*`);dr("XRANGEPLAIN",`[v=\\s]*(${dt[ft.XRANGEIDENTIFIER]})(?:\\.(${dt[ft.XRANGEIDENTIFIER]})(?:\\.(${dt[ft.XRANGEIDENTIFIER]})(?:${dt[ft.PRERELEASE]})?${dt[ft.BUILD]}?)?)?`);dr("XRANGEPLAINLOOSE",`[v=\\s]*(${dt[ft.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dt[ft.XRANGEIDENTIFIERLOOSE]})(?:\\.(${dt[ft.XRANGEIDENTIFIERLOOSE]})(?:${dt[ft.PRERELEASELOOSE]})?${dt[ft.BUILD]}?)?)?`);dr("XRANGE",`^${dt[ft.GTLT]}\\s*${dt[ft.XRANGEPLAIN]}$`);dr("XRANGELOOSE",`^${dt[ft.GTLT]}\\s*${dt[ft.XRANGEPLAINLOOSE]}$`);dr("COERCEPLAIN",`(^|[^\\d])(\\d{1,${xne}})(?:\\.(\\d{1,${xne}}))?(?:\\.(\\d{1,${xne}}))?`);dr("COERCE",`${dt[ft.COERCEPLAIN]}(?:$|[^\\d])`);dr("COERCEFULL",dt[ft.COERCEPLAIN]+`(?:${dt[ft.PRERELEASE]})?(?:${dt[ft.BUILD]})?(?:$|[^\\d])`);dr("COERCERTL",dt[ft.COERCE],!0);dr("COERCERTLFULL",dt[ft.COERCEFULL],!0);dr("LONETILDE","(?:~>?)");dr("TILDETRIM",`(\\s*)${dt[ft.LONETILDE]}\\s+`,!0);lh.tildeTrimReplace="$1~";dr("TILDE",`^${dt[ft.LONETILDE]}${dt[ft.XRANGEPLAIN]}$`);dr("TILDELOOSE",`^${dt[ft.LONETILDE]}${dt[ft.XRANGEPLAINLOOSE]}$`);dr("LONECARET","(?:\\^)");dr("CARETTRIM",`(\\s*)${dt[ft.LONECARET]}\\s+`,!0);lh.caretTrimReplace="$1^";dr("CARET",`^${dt[ft.LONECARET]}${dt[ft.XRANGEPLAIN]}$`);dr("CARETLOOSE",`^${dt[ft.LONECARET]}${dt[ft.XRANGEPLAINLOOSE]}$`);dr("COMPARATORLOOSE",`^${dt[ft.GTLT]}\\s*(${dt[ft.LOOSEPLAIN]})$|^$`);dr("COMPARATOR",`^${dt[ft.GTLT]}\\s*(${dt[ft.FULLPLAIN]})$|^$`);dr("COMPARATORTRIM",`(\\s*)${dt[ft.GTLT]}\\s*(${dt[ft.LOOSEPLAIN]}|${dt[ft.XRANGEPLAIN]})`,!0);lh.comparatorTrimReplace="$1$2$3";dr("HYPHENRANGE",`^\\s*(${dt[ft.XRANGEPLAIN]})\\s+-\\s+(${dt[ft.XRANGEPLAIN]})\\s*$`);dr("HYPHENRANGELOOSE",`^\\s*(${dt[ft.XRANGEPLAINLOOSE]})\\s+-\\s+(${dt[ft.XRANGEPLAINLOOSE]})\\s*$`);dr("STAR","(<|>)?=?\\s*\\*");dr("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");dr("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var z6=S((t7n,aqe)=>{"use strict";var OAr=Object.freeze({loose:!0}),DAr=Object.freeze({}),PAr=e=>e?typeof e!="object"?OAr:e:DAr;aqe.exports=PAr});var Nne=S((r7n,uqe)=>{"use strict";var oqe=/^[0-9]+$/,cqe=(e,t)=>{if(typeof e=="number"&&typeof t=="number")return e===t?0:ecqe(t,e);uqe.exports={compareIdentifiers:cqe,rcompareIdentifiers:LAr}});var Ho=S((n7n,dqe)=>{"use strict";var Y6=r2(),{MAX_LENGTH:lqe,MAX_SAFE_INTEGER:Q6}=t2(),{safeRe:W6,t:X6}=J1(),MAr=z6(),{compareIdentifiers:One}=Nne(),Dne=class e{constructor(t,r){if(r=MAr(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>lqe)throw new TypeError(`version is longer than ${lqe} characters`);Y6("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?W6[X6.LOOSE]:W6[X6.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>Q6||this.major<0)throw new TypeError("Invalid major version");if(this.minor>Q6||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>Q6||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&it.major?1:this.minort.minor?1:this.patcht.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=t.prerelease[r];if(Y6("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return One(n,s)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let n=this.build[r],s=t.build[r];if(Y6("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return One(n,s)}while(++r)}inc(t,r,n){if(t.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?W6[X6.PRERELEASELOOSE]:W6[X6.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let i=[r,s];n===!1&&(i=[r]),One(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};dqe.exports=Dne});var vv=S((s7n,hqe)=>{"use strict";var fqe=Ho(),kAr=(e,t,r=!1)=>{if(e instanceof fqe)return e;try{return new fqe(e,t)}catch(n){if(!r)return null;throw n}};hqe.exports=kAr});var mqe=S((i7n,pqe)=>{"use strict";var BAr=vv(),UAr=(e,t)=>{let r=BAr(e,t);return r?r.version:null};pqe.exports=UAr});var _qe=S((a7n,gqe)=>{"use strict";var FAr=vv(),$Ar=(e,t)=>{let r=FAr(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};gqe.exports=$Ar});var yqe=S((o7n,Eqe)=>{"use strict";var Aqe=Ho(),qAr=(e,t,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new Aqe(e instanceof Aqe?e.version:e,r).inc(t,n,s).version}catch{return null}};Eqe.exports=qAr});var Tqe=S((c7n,Sqe)=>{"use strict";var vqe=vv(),HAr=(e,t)=>{let r=vqe(e,null,!0),n=vqe(t,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,a=i?r:n,o=i?n:r,c=!!a.prerelease.length;if(!!o.prerelease.length&&!c){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};Sqe.exports=HAr});var Iqe=S((u7n,bqe)=>{"use strict";var VAr=Ho(),jAr=(e,t)=>new VAr(e,t).major;bqe.exports=jAr});var Cqe=S((l7n,Rqe)=>{"use strict";var KAr=Ho(),GAr=(e,t)=>new KAr(e,t).minor;Rqe.exports=GAr});var wqe=S((d7n,xqe)=>{"use strict";var zAr=Ho(),YAr=(e,t)=>new zAr(e,t).patch;xqe.exports=YAr});var Oqe=S((f7n,Nqe)=>{"use strict";var QAr=vv(),WAr=(e,t)=>{let r=QAr(e,t);return r&&r.prerelease.length?r.prerelease:null};Nqe.exports=WAr});var gd=S((h7n,Pqe)=>{"use strict";var Dqe=Ho(),XAr=(e,t,r)=>new Dqe(e,r).compare(new Dqe(t,r));Pqe.exports=XAr});var Mqe=S((p7n,Lqe)=>{"use strict";var JAr=gd(),ZAr=(e,t,r)=>JAr(t,e,r);Lqe.exports=ZAr});var Bqe=S((m7n,kqe)=>{"use strict";var eEr=gd(),tEr=(e,t)=>eEr(e,t,!0);kqe.exports=tEr});var J6=S((g7n,Fqe)=>{"use strict";var Uqe=Ho(),rEr=(e,t,r)=>{let n=new Uqe(e,r),s=new Uqe(t,r);return n.compare(s)||n.compareBuild(s)};Fqe.exports=rEr});var qqe=S((_7n,$qe)=>{"use strict";var nEr=J6(),sEr=(e,t)=>e.sort((r,n)=>nEr(r,n,t));$qe.exports=sEr});var Vqe=S((A7n,Hqe)=>{"use strict";var iEr=J6(),aEr=(e,t)=>e.sort((r,n)=>iEr(n,r,t));Hqe.exports=aEr});var n2=S((E7n,jqe)=>{"use strict";var oEr=gd(),cEr=(e,t,r)=>oEr(e,t,r)>0;jqe.exports=cEr});var Z6=S((y7n,Kqe)=>{"use strict";var uEr=gd(),lEr=(e,t,r)=>uEr(e,t,r)<0;Kqe.exports=lEr});var Pne=S((v7n,Gqe)=>{"use strict";var dEr=gd(),fEr=(e,t,r)=>dEr(e,t,r)===0;Gqe.exports=fEr});var Lne=S((S7n,zqe)=>{"use strict";var hEr=gd(),pEr=(e,t,r)=>hEr(e,t,r)!==0;zqe.exports=pEr});var e5=S((T7n,Yqe)=>{"use strict";var mEr=gd(),gEr=(e,t,r)=>mEr(e,t,r)>=0;Yqe.exports=gEr});var t5=S((b7n,Qqe)=>{"use strict";var _Er=gd(),AEr=(e,t,r)=>_Er(e,t,r)<=0;Qqe.exports=AEr});var Mne=S((I7n,Wqe)=>{"use strict";var EEr=Pne(),yEr=Lne(),vEr=n2(),SEr=e5(),TEr=Z6(),bEr=t5(),IEr=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return EEr(e,r,n);case"!=":return yEr(e,r,n);case">":return vEr(e,r,n);case">=":return SEr(e,r,n);case"<":return TEr(e,r,n);case"<=":return bEr(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};Wqe.exports=IEr});var Jqe=S((R7n,Xqe)=>{"use strict";var REr=Ho(),CEr=vv(),{safeRe:r5,t:n5}=J1(),xEr=(e,t)=>{if(e instanceof REr)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?r5[n5.COERCEFULL]:r5[n5.COERCE]);else{let c=t.includePrerelease?r5[n5.COERCERTLFULL]:r5[n5.COERCERTL],u;for(;(u=c.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",a=t.includePrerelease&&r[5]?`-${r[5]}`:"",o=t.includePrerelease&&r[6]?`+${r[6]}`:"";return CEr(`${n}.${s}.${i}${a}${o}`,t)};Xqe.exports=xEr});var eHe=S((C7n,Zqe)=>{"use strict";var kne=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(t,r)}return this}};Zqe.exports=kne});var _d=S((x7n,sHe)=>{"use strict";var wEr=/\s+/g,Bne=class e{constructor(t,r){if(r=OEr(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof Une)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(wEr," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!rHe(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&UEr(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&kEr)|(this.options.loose&&BEr))+":"+t,s=tHe.get(n);if(s)return s;let i=this.options.loose,a=i?kc[Vo.HYPHENRANGELOOSE]:kc[Vo.HYPHENRANGE];t=t.replace(a,YEr(this.options.includePrerelease)),Gs("hyphen replace",t),t=t.replace(kc[Vo.COMPARATORTRIM],PEr),Gs("comparator trim",t),t=t.replace(kc[Vo.TILDETRIM],LEr),Gs("tilde trim",t),t=t.replace(kc[Vo.CARETTRIM],MEr),Gs("caret trim",t);let o=t.split(" ").map(d=>FEr(d,this.options)).join(" ").split(/\s+/).map(d=>zEr(d,this.options));i&&(o=o.filter(d=>(Gs("loose invalid filter",d,this.options),!!d.match(kc[Vo.COMPARATORLOOSE])))),Gs("range list",o);let c=new Map,u=o.map(d=>new Une(d,this.options));for(let d of u){if(rHe(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return tHe.set(n,l),l}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>nHe(n,r)&&t.set.some(s=>nHe(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new DEr(t,this.options)}catch{return!1}for(let r=0;re.value==="<0.0.0-0",UEr=e=>e.value==="",nHe=(e,t)=>{let r=!0,n=e.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,t)),s=n.pop();return r},FEr=(e,t)=>(e=e.replace(kc[Vo.BUILD],""),Gs("comp",e,t),e=HEr(e,t),Gs("caret",e),e=$Er(e,t),Gs("tildes",e),e=jEr(e,t),Gs("xrange",e),e=GEr(e,t),Gs("stars",e),e),Bc=e=>!e||e.toLowerCase()==="x"||e==="*",$Er=(e,t)=>e.trim().split(/\s+/).map(r=>qEr(r,t)).join(" "),qEr=(e,t)=>{let r=t.loose?kc[Vo.TILDELOOSE]:kc[Vo.TILDE];return e.replace(r,(n,s,i,a,o)=>{Gs("tilde",e,n,s,i,a,o);let c;return Bc(s)?c="":Bc(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:Bc(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(Gs("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,Gs("tilde return",c),c})},HEr=(e,t)=>e.trim().split(/\s+/).map(r=>VEr(r,t)).join(" "),VEr=(e,t)=>{Gs("caret",e,t);let r=t.loose?kc[Vo.CARETLOOSE]:kc[Vo.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(s,i,a,o,c)=>{Gs("caret",e,s,i,a,o,c);let u;return Bc(i)?u="":Bc(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:Bc(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(Gs("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(Gs("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),Gs("caret return",u),u})},jEr=(e,t)=>(Gs("replaceXRanges",e,t),e.split(/\s+/).map(r=>KEr(r,t)).join(" ")),KEr=(e,t)=>{e=e.trim();let r=t.loose?kc[Vo.XRANGELOOSE]:kc[Vo.XRANGE];return e.replace(r,(n,s,i,a,o,c)=>{Gs("xRange",e,n,s,i,a,o,c);let u=Bc(i),l=u||Bc(a),d=l||Bc(o),f=d;return s==="="&&f&&(s=""),c=t.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),Gs("xRange return",n),n})},GEr=(e,t)=>(Gs("replaceStars",e,t),e.trim().replace(kc[Vo.STAR],"")),zEr=(e,t)=>(Gs("replaceGTE0",e,t),e.trim().replace(kc[t.includePrerelease?Vo.GTE0PRE:Vo.GTE0],"")),YEr=e=>(t,r,n,s,i,a,o,c,u,l,d,f)=>(Bc(n)?r="":Bc(s)?r=`>=${n}.0.0${e?"-0":""}`:Bc(i)?r=`>=${n}.${s}.0${e?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,Bc(u)?c="":Bc(l)?c=`<${+u+1}.0.0-0`:Bc(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:e?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),QEr=(e,t,r)=>{for(let n=0;n0){let s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}});var s2=S((w7n,lHe)=>{"use strict";var i2=Symbol("SemVer ANY"),qne=class e{static get ANY(){return i2}constructor(t,r){if(r=iHe(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),$ne("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===i2?this.value="":this.value=this.operator+this.semver.version,$ne("comp",this)}parse(t){let r=this.options.loose?aHe[oHe.COMPARATORLOOSE]:aHe[oHe.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new cHe(n[2],this.options.loose):this.semver=i2}toString(){return this.value}test(t){if($ne("Comparator.test",t,this.options.loose),this.semver===i2||t===i2)return!0;if(typeof t=="string")try{t=new cHe(t,this.options)}catch{return!1}return Fne(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new uHe(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new uHe(this.value,r).test(t.semver):(r=iHe(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||Fne(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||Fne(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};lHe.exports=qne;var iHe=z6(),{safeRe:aHe,t:oHe}=J1(),Fne=Mne(),$ne=r2(),cHe=Ho(),uHe=_d()});var a2=S((N7n,dHe)=>{"use strict";var WEr=_d(),XEr=(e,t,r)=>{try{t=new WEr(t,r)}catch{return!1}return t.test(e)};dHe.exports=XEr});var hHe=S((O7n,fHe)=>{"use strict";var JEr=_d(),ZEr=(e,t)=>new JEr(e,t).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));fHe.exports=ZEr});var mHe=S((D7n,pHe)=>{"use strict";var eyr=Ho(),tyr=_d(),ryr=(e,t,r)=>{let n=null,s=null,i=null;try{i=new tyr(t,r)}catch{return null}return e.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new eyr(n,r))}),n};pHe.exports=ryr});var _He=S((P7n,gHe)=>{"use strict";var nyr=Ho(),syr=_d(),iyr=(e,t,r)=>{let n=null,s=null,i=null;try{i=new syr(t,r)}catch{return null}return e.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new nyr(n,r))}),n};gHe.exports=iyr});var yHe=S((L7n,EHe)=>{"use strict";var Hne=Ho(),ayr=_d(),AHe=n2(),oyr=(e,t)=>{e=new ayr(e,t);let r=new Hne("0.0.0");if(e.test(r)||(r=new Hne("0.0.0-0"),e.test(r)))return r;r=null;for(let n=0;n{let o=new Hne(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||AHe(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||AHe(r,i))&&(r=i)}return r&&e.test(r)?r:null};EHe.exports=oyr});var SHe=S((M7n,vHe)=>{"use strict";var cyr=_d(),uyr=(e,t)=>{try{return new cyr(e,t).range||"*"}catch{return null}};vHe.exports=uyr});var s5=S((k7n,RHe)=>{"use strict";var lyr=Ho(),IHe=s2(),{ANY:dyr}=IHe,fyr=_d(),hyr=a2(),THe=n2(),bHe=Z6(),pyr=t5(),myr=e5(),gyr=(e,t,r,n)=>{e=new lyr(e,n),t=new fyr(t,n);let s,i,a,o,c;switch(r){case">":s=THe,i=pyr,a=bHe,o=">",c=">=";break;case"<":s=bHe,i=myr,a=THe,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(hyr(e,t,n))return!1;for(let u=0;u{h.semver===dyr&&(h=new IHe(">=0.0.0")),d=d||h,f=f||h,s(h.semver,d.semver,n)?d=h:a(h.semver,f.semver,n)&&(f=h)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(e,f.semver))return!1;if(f.operator===c&&a(e,f.semver))return!1}return!0};RHe.exports=gyr});var xHe=S((B7n,CHe)=>{"use strict";var _yr=s5(),Ayr=(e,t,r)=>_yr(e,t,">",r);CHe.exports=Ayr});var NHe=S((U7n,wHe)=>{"use strict";var Eyr=s5(),yyr=(e,t,r)=>Eyr(e,t,"<",r);wHe.exports=yyr});var PHe=S((F7n,DHe)=>{"use strict";var OHe=_d(),vyr=(e,t,r)=>(e=new OHe(e,r),t=new OHe(t,r),e.intersects(t,r));DHe.exports=vyr});var MHe=S(($7n,LHe)=>{"use strict";var Syr=a2(),Tyr=gd();LHe.exports=(e,t,r)=>{let n=[],s=null,i=null,a=e.sort((l,d)=>Tyr(l,d,r));for(let l of a)Syr(l,t,r)?(i=l,s||(s=l)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let c=o.join(" || "),u=typeof t.raw=="string"?t.raw:String(t);return c.length{"use strict";var kHe=_d(),jne=s2(),{ANY:Vne}=jne,o2=a2(),Kne=gd(),byr=(e,t,r={})=>{if(e===t)return!0;e=new kHe(e,r),t=new kHe(t,r);let n=!1;e:for(let s of e.set){for(let i of t.set){let a=Ryr(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},Iyr=[new jne(">=0.0.0-0")],BHe=[new jne(">=0.0.0")],Ryr=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===Vne){if(t.length===1&&t[0].semver===Vne)return!0;r.includePrerelease?e=Iyr:e=BHe}if(t.length===1&&t[0].semver===Vne){if(r.includePrerelease)return!0;t=BHe}let n=new Set,s,i;for(let h of e)h.operator===">"||h.operator===">="?s=UHe(s,h,r):h.operator==="<"||h.operator==="<="?i=FHe(i,h,r):n.add(h.semver);if(n.size>1)return null;let a;if(s&&i){if(a=Kne(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let h of n){if(s&&!o2(h,String(s),r)||i&&!o2(h,String(i),r))return null;for(let p of t)if(!o2(h,String(p),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let h of t){if(l=l||h.operator===">"||h.operator===">=",u=u||h.operator==="<"||h.operator==="<=",s){if(f&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===f.major&&h.semver.minor===f.minor&&h.semver.patch===f.patch&&(f=!1),h.operator===">"||h.operator===">="){if(o=UHe(s,h,r),o===h&&o!==s)return!1}else if(s.operator===">="&&!o2(s.semver,String(h),r))return!1}if(i){if(d&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===d.major&&h.semver.minor===d.minor&&h.semver.patch===d.patch&&(d=!1),h.operator==="<"||h.operator==="<="){if(c=FHe(i,h,r),c===h&&c!==i)return!1}else if(i.operator==="<="&&!o2(i.semver,String(h),r))return!1}if(!h.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},UHe=(e,t,r)=>{if(!e)return t;let n=Kne(e.semver,t.semver,r);return n>0?e:n<0||t.operator===">"&&e.operator===">="?t:e},FHe=(e,t,r)=>{if(!e)return t;let n=Kne(e.semver,t.semver,r);return n<0?e:n>0||t.operator==="<"&&e.operator==="<="?t:e};$He.exports=byr});var zne=S((H7n,jHe)=>{"use strict";var Gne=J1(),HHe=t2(),Cyr=Ho(),VHe=Nne(),xyr=vv(),wyr=mqe(),Nyr=_qe(),Oyr=yqe(),Dyr=Tqe(),Pyr=Iqe(),Lyr=Cqe(),Myr=wqe(),kyr=Oqe(),Byr=gd(),Uyr=Mqe(),Fyr=Bqe(),$yr=J6(),qyr=qqe(),Hyr=Vqe(),Vyr=n2(),jyr=Z6(),Kyr=Pne(),Gyr=Lne(),zyr=e5(),Yyr=t5(),Qyr=Mne(),Wyr=Jqe(),Xyr=s2(),Jyr=_d(),Zyr=a2(),evr=hHe(),tvr=mHe(),rvr=_He(),nvr=yHe(),svr=SHe(),ivr=s5(),avr=xHe(),ovr=NHe(),cvr=PHe(),uvr=MHe(),lvr=qHe();jHe.exports={parse:xyr,valid:wyr,clean:Nyr,inc:Oyr,diff:Dyr,major:Pyr,minor:Lyr,patch:Myr,prerelease:kyr,compare:Byr,rcompare:Uyr,compareLoose:Fyr,compareBuild:$yr,sort:qyr,rsort:Hyr,gt:Vyr,lt:jyr,eq:Kyr,neq:Gyr,gte:zyr,lte:Yyr,cmp:Qyr,coerce:Wyr,Comparator:Xyr,Range:Jyr,satisfies:Zyr,toComparators:evr,maxSatisfying:tvr,minSatisfying:rvr,minVersion:nvr,validRange:svr,outside:ivr,gtr:avr,ltr:ovr,intersects:cvr,simplifyRange:uvr,subset:lvr,SemVer:Cyr,re:Gne.re,src:Gne.src,tokens:Gne.t,SEMVER_SPEC_VERSION:HHe.SEMVER_SPEC_VERSION,RELEASE_TYPES:HHe.RELEASE_TYPES,compareIdentifiers:VHe.compareIdentifiers,rcompareIdentifiers:VHe.rcompareIdentifiers}});var a5=S((V7n,Xne)=>{"use strict";var i5=rqe(),dvr=zne(),{FSTDEP005:fvr,FSTDEP012:hvr,FSTDEP015:pvr,FSTDEP016:mvr,FSTDEP017:gvr,FSTDEP018:_vr}=Zp(),{kHasBeenDecorated:Avr,kSchemaBody:Evr,kSchemaHeaders:yvr,kSchemaParams:vvr,kSchemaQuerystring:KHe,kSchemaController:Yne,kOptions:Svr,kRequestCacheValidateFns:cA,kRouteContext:$i,kPublicRouteContext:GHe,kRequestOriginalUrl:Qne}=Ma(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:Tvr}=Bo(),zHe={body:Evr,headers:yvr,params:vvr,querystring:KHe,query:KHe};function Wne(e,t,r,n,s,i){this.id=e,this[$i]=i,this.params=t,this.raw=r,this.query=n,this.log=s,this.body=void 0}Wne.props=[];function bvr(e){if(typeof e=="function")return e;if(e===!0)return function(){return!0};if(typeof e=="number")return function(t,r){return rr.trim());return i5.compile(t)}return i5.compile(e)}function Ivr(e,t){return t?Rvr(e,t):QHe(e)}function QHe(e){let t=e.props.slice();function r(n,s,i,a,o,c){this.id=n,this[$i]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;le.config},schema:{get:()=>e.schema}}),Object.freeze(s)}},routerMethod:{get(){return _vr(),this[$i].config?.method}},routeConfig:{get(){return mvr(),this[$i][GHe]?.config}},routeSchema:{get(){return pvr(),this[$i][GHe].schema}},is404:{get(){return this[$i].config?.url===void 0}},connection:{get(){return dvr.gte(process.versions.node,"13.0.0")&&fvr(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(e){this.additionalHeaders=e}},getValidationFunction:{value:function(e){if(typeof e=="string"){let t=zHe[e];return this[$i][t]}else if(typeof e=="object")return this[$i][cA]?.get(e)}},compileValidationSchema:{value:function(e,t=null){let{method:r,url:n}=this;if(this[$i][cA]?.has(e))return this[$i][cA].get(e);let i=(this[$i].validatorCompiler||this.server[Yne].validatorCompiler||this.server[Yne].setupValidator(this.server[Svr])||this.server[Yne].validatorCompiler)({schema:e,method:r,url:n,httpPart:t});return this[$i][cA]==null&&(this[$i][cA]=new WeakMap),this[$i][cA].set(e,i),i}},validateInput:{value:function(e,t,r){r=typeof t=="string"?t:r;let n=r!=null&&typeof r=="string"&&zHe[r],s;if(n&&(s=this[$i][n]),s==null&&(t==null||typeof t!="object"||Array.isArray(t)))throw new Tvr(r);return s==null&&(this[$i][cA]?.has(t)?s=this[$i][cA].get(t):s=this.compileValidationSchema(t,r)),s(e)}}});Xne.exports=Wne;Xne.exports.buildRequest=Ivr});var o5=S((j7n,WHe)=>{"use strict";var{kFourOhFourContext:Cvr,kReplySerializerDefault:xvr,kSchemaErrorFormatter:wvr,kErrorHandler:Nvr,kChildLoggerFactory:Ovr,kOptions:Dvr,kReply:Pvr,kRequest:Lvr,kBodyLimit:Mvr,kLogLevel:kvr,kContentTypeParser:Bvr,kRouteByFastify:Uvr,kRequestCacheValidateFns:Fvr,kReplyCacheSerializeFns:$vr,kPublicRouteContext:qvr}=Ma();function Hvr({schema:e,handler:t,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:h,exposeHeadRoute:p,prefixTrailingSlash:m,server:g,isFastify:_}){this.schema=e,this.handler=t,this.Reply=g[Pvr],this.Request=g[Lvr],this.contentTypeParser=g[Bvr],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||g[Nvr],this.requestIdLogLabel=n||g[Dvr].requestIdLogLabel,this.childLoggerFactory=s||g[Ovr],this._middie=null,this._parserOptions={limit:a||g[Mvr]},this.exposeHeadRoute=p,this.prefixTrailingSlash=m,this.logLevel=o||g[kvr],this.logSerializers=c,this[Cvr]=null,this.attachValidation=u,this[xvr]=f,this.schemaErrorFormatter=h||g[wvr]||jvr,this[Uvr]=_,this[Fvr]=null,this[$vr]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[qvr]=Vvr(this),this.server=g}function Vvr(e){return Object.create(null,{schema:{enumerable:!0,get(){return e.schema}},config:{enumerable:!0,get(){return e.config}}})}function jvr(e,t){let r="",n=", ";for(var s=0;s!==e.length;++s){let i=e[s];r+=t+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}WHe.exports=Hvr});var Jne=S((K7n,XHe)=>{"use strict";XHe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var nse=S((G7n,tVe)=>{"use strict";var{kReply:Zne,kRequest:ese,kState:Kvr,kHasBeenDecorated:Gvr}=Ma(),{FST_ERR_DEC_ALREADY_PRESENT:JHe,FST_ERR_DEC_MISSING_DEPENDENCY:zvr,FST_ERR_DEC_AFTER_START:Yvr,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:Qvr}=Bo(),{FSTDEP006:Wvr}=Zp();function Xvr(e,t,r,n){if(Object.prototype.hasOwnProperty.call(e,t))throw new JHe(t);tse(e,t,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(e,t,{get:r.getter,set:r.setter}):e[t]=r}function ZHe(e,t,r,n){let s=e.prototype;if(Object.prototype.hasOwnProperty.call(s,t)||u5(e,t))throw new JHe(t);e[Gvr]=!0,tse(e,t,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,t,{get:r.getter,set:r.setter}):typeof r=="function"?s[t]=r:e.props.push({key:t,value:r})}function eVe(e,t){typeof t=="object"&&t&&!(typeof t.getter=="function"||typeof t.setter=="function")&&Wvr(e)}function Jvr(e,t,r){return rse(this,e),Xvr(this,e,t,r),this}function c5(e,t){return t?t in e||e.prototype&&t in e.prototype||u5(e,t):e in this}function u5(e,t){return e.props?e.props.find(({key:r})=>r===t):!1}function Zvr(e){return e&&u5(this[ese],e)?!0:c5(this[ese].prototype,e)}function eSr(e){return e&&u5(this[Zne],e)?!0:c5(this[Zne].prototype,e)}function tse(e,t,r){if(r!=null){if(!Array.isArray(r))throw new Qvr(t);for(var n=0;n!==r.length;++n)if(!c5(e,r[n]))throw new zvr(r[n])}}function tSr(e,t,r){return rse(this,e),eVe(e,t),ZHe(this[Zne],e,t,r),this}function rSr(e,t,r){return rse(this,e),eVe(e,t),ZHe(this[ese],e,t,r),this}function rse(e,t){if(e[Kvr].started)throw new Yvr(t)}tVe.exports={add:Jvr,exist:c5,existRequest:Zvr,existReply:eSr,dependencies:tse,decorateReply:tSr,decorateRequest:rSr}});var nVe=S(dh=>{"use strict";var sse=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=t,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(t){if(this.items.has(t)){let r=this.items.get(t);this.items.delete(t),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;this.items.delete(t.key),this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(this.items.has(t))return this.items.get(t).expiry}get(t){if(this.items.has(t)){let r=this.items.get(t);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items.set(t,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},ise=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=t,this.ttl=r}get size(){return this.items.size}bumpLru(t){if(this.last===t)return;let r=this.last,n=t.next,s=t.prev;this.first===t&&(this.first=n),t.next=null,t.prev=r,r.next=t,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=t}clear(){this.items=new Map,this.first=null,this.last=null}delete(t){if(this.items.has(t)){let r=this.items.get(t);this.items.delete(t),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;this.items.delete(t.key),this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(this.items.has(t))return this.items.get(t).expiry}get(t){if(this.items.has(t)){let r=this.items.get(t);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return this.bumpLru(r),r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items.set(t,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},c2=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=t,this.ttl=r}bumpLru(t){if(this.last===t)return;let r=this.last,n=t.next,s=t.prev;this.first===t&&(this.first=n),t.next=null,t.prev=r,r.next=t,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=t}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];delete this.items[t],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;delete this.items[t.key],--this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(Object.prototype.hasOwnProperty.call(this.items,t))return this.items[t].expiry}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return this.bumpLru(r),r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items[t]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},l5=class{constructor(){this.records={}}initForCache(t,r){this.records[t]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(t){for(let r of Object.keys(this.records[t]))this.records[t][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function rVe(e){return`${e.getFullYear()}-${(e.getMonth()+1).toString().padStart(2,"0")}-${e.getDate().toString().padStart(2,"0")}`}var ase=class{constructor(t,r,n){this.cacheId=t,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=rVe(this.collectionStart),this.records=n||new l5,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(t){this.archiveIfNeeded(),this.currentRecord.cacheSize=t}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=rVe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},d5=class extends c2{constructor(t,r,n,s,i){if(super(t||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new ase(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(t,r){super.set(t,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(t,r=!1){super.delete(t),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},f5=class{constructor(t=1e3,r=0){if(isNaN(t)||t<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=t,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];delete this.items[t],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(t){for(var r=0;r0){let t=this.first;delete this.items[t.key],--this.size===0?(this.first=null,this.last=null):(this.first=t.next,this.first.prev=null)}}expiresAt(t){if(Object.prototype.hasOwnProperty.call(this.items,t))return this.items[t].expiry}get(t){if(Object.prototype.hasOwnProperty.call(this.items,t)){let r=this.items[t];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(t);return}return r.value}}getMany(t){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:t,prev:this.last,next:null,value:r};this.items[t]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};dh.Fifo=f5;dh.FifoMap=sse;dh.FifoObject=f5;dh.HitStatisticsRecord=l5;dh.Lru=c2;dh.LruHitStatistics=d5;dh.LruMap=ise;dh.LruObject=c2;dh.LruObjectHitStatistics=d5});var oVe=S((Y7n,u2)=>{"use strict";var m5=function(){};m5.prototype=Object.create(null);var h5=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,p5=/\\([\v\u0020-\u00ff])/gu,sVe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,Sv={type:"",parameters:new m5};Object.freeze(Sv.parameters);Object.freeze(Sv);function iVe(e){if(typeof e!="string")throw new TypeError("argument header is required and must be a string");let t=e.indexOf(";"),r=t!==-1?e.slice(0,t).trim():e.trim();if(sVe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new m5};if(t===-1)return n;let s,i,a;for(h5.lastIndex=t;i=h5.exec(e);){if(i.index!==t)throw new TypeError("invalid parameter format");t+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),p5.test(a)&&(a=a.replace(p5,"$1"))),n.parameters[s]=a}if(t!==e.length)throw new TypeError("invalid parameter format");return n}function aVe(e){if(typeof e!="string")return Sv;let t=e.indexOf(";"),r=t!==-1?e.slice(0,t).trim():e.trim();if(sVe.test(r)===!1)return Sv;let n={type:r.toLowerCase(),parameters:new m5};if(t===-1)return n;let s,i,a;for(h5.lastIndex=t;i=h5.exec(e);){if(i.index!==t)return Sv;t+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),p5.test(a)&&(a=a.replace(p5,"$1"))),n.parameters[s]=a}return t!==e.length?Sv:n}u2.exports.default={parse:iVe,safeParse:aVe};u2.exports.parse=iVe;u2.exports.safeParse=aVe;u2.exports.defaultContentType=Sv});var cse=S((Q7n,Z1)=>{"use strict";var nSr=typeof Buffer<"u",cVe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,uVe=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function lVe(e,t,r){r==null&&t!==null&&typeof t=="object"&&(r=t,t=void 0),nSr&&Buffer.isBuffer(e)&&(e=e.toString()),e&&e.charCodeAt(0)===65279&&(e=e.slice(1));let n=JSON.parse(e,t);if(n===null||typeof n!="object")return n;let s=r&&r.protoAction||"error",i=r&&r.constructorAction||"error";if(s==="ignore"&&i==="ignore")return n;if(s!=="ignore"&&i!=="ignore"){if(cVe.test(e)===!1&&uVe.test(e)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(cVe.test(e)===!1)return n}else if(uVe.test(e)===!1)return n;return dVe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function dVe(e,{protoAction:t="error",constructorAction:r="error",safe:n}={}){let s=[e];for(;s.length;){let i=s;s=[];for(let a of i){if(t!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(t==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let c=a[o];c&&typeof c=="object"&&s.push(c)}}}return e}function ose(e,t,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return lVe(e,t,r)}finally{Error.stackTraceLimit=n}}function sSr(e,t){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return lVe(e,t,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}Z1.exports=ose;Z1.exports.default=ose;Z1.exports.parse=ose;Z1.exports.safeParse=sSr;Z1.exports.scan=dVe});var hse=S((W7n,d2)=>{"use strict";var{AsyncResource:iSr}=require("node:async_hooks"),{Fifo:hVe}=nVe(),{safeParse:pVe,defaultContentType:aSr}=oVe(),oSr=cse(),{kDefaultJsonParse:l2,kContentTypeParser:eI,kBodyLimit:cSr,kRequestPayloadStream:mVe,kState:lse,kTestInternals:uSr,kReplyIsError:gVe,kRouteContext:lSr}=Ma(),{FST_ERR_CTP_INVALID_TYPE:_Ve,FST_ERR_CTP_EMPTY_TYPE:dSr,FST_ERR_CTP_ALREADY_PRESENT:fSr,FST_ERR_CTP_INVALID_HANDLER:hSr,FST_ERR_CTP_INVALID_PARSE_TYPE:pSr,FST_ERR_CTP_BODY_TOO_LARGE:fVe,FST_ERR_CTP_INVALID_MEDIA_TYPE:mSr,FST_ERR_CTP_INVALID_CONTENT_LENGTH:gSr,FST_ERR_CTP_EMPTY_JSON_BODY:_Sr,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:dse}=Bo();function cm(e,t,r){this[l2]=EVe(t,r),this.customParsers=new Map,this.customParsers.set("application/json",new use(!0,!1,e,this[l2])),this.customParsers.set("text/plain",new use(!0,!1,e,fse)),this.parserList=[new g5("application/json"),new g5("text/plain")],this.parserRegExpList=[],this.cache=new hVe(100)}cm.prototype.add=function(e,t,r){let n=typeof e=="string";if(!n&&!(e instanceof RegExp))throw new _Ve;if(n&&e.length===0)throw new dSr;if(typeof r!="function")throw new hSr;if(this.existingParser(e))throw new fSr(e);if(t.parseAs!==void 0&&t.parseAs!=="string"&&t.parseAs!=="buffer")throw new pSr(t.parseAs);let s=new use(t.parseAs==="string",t.parseAs==="buffer",t.bodyLimit,r);n&&e==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new g5(e)):(e.isEssence=e.source.indexOf(";")===-1,this.parserRegExpList.unshift(e)),this.customParsers.set(e.toString(),s))};cm.prototype.hasParser=function(e){return this.customParsers.has(typeof e=="string"?e:e.toString())};cm.prototype.existingParser=function(e){return e==="application/json"&&this.customParsers.has(e)?this.customParsers.get(e).fn!==this[l2]:e==="text/plain"&&this.customParsers.has(e)?this.customParsers.get(e).fn!==fse:this.hasParser(e)};cm.prototype.getParser=function(e){if(this.hasParser(e))return this.customParsers.get(e);let t=this.cache.get(e);if(t!==void 0)return t;let r=pVe(e);if(r===aSr)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(TSr(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(e,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(bSr(e,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(e,a),a}}return this.customParsers.get("")};cm.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new hVe(100)};cm.prototype.remove=function(e){if(!(typeof e=="string"||e instanceof RegExp))throw new _Ve;let t=this.customParsers.delete(e.toString()),r=typeof e=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===e.toString());return n>-1&&r.splice(n,1),t||n>-1};cm.prototype.run=function(e,t,r,n){let s=this.getParser(e);if(s===void 0){r.is404?t(r,n):n.send(new mSr(e||void 0));return}let i=new iSr("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)AVe(r,n,n[lSr]._parserOptions,s,a);else{let o=s.fn(r,r[mVe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[gVe]=!0,n.send(o)):(r.body=c,t(r,n))})}};function AVe(e,t,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=e.headers["content-length"]===void 0?NaN:Number(e.headers["content-length"]);if(o>a){t.header("connection","close"),t.send(new fVe);return}let c=0,u=i===!0?"":[],l=e[mVe]||e.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(h){c+=h.length;let{receivedEncodedLength:p=0}=l;if(c>a||p>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),t.send(new fVe);return}i===!0?u+=h:u.push(h)}function f(h){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),h!==void 0){typeof h.statusCode=="number"&&h.statusCode>=400||(h.statusCode=400),t[gVe]=!0,t.code(h.statusCode).send(h);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){t.header("connection","close"),t.send(new gSr);return}i===!1&&(u=Buffer.concat(u));let p=n.fn(e,u,s);p&&typeof p.then=="function"&&p.then(m=>s(null,m),s)}}function EVe(e,t){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new _Sr,void 0);let a;try{a=oSr.parse(s,{protoAction:e,constructorAction:t})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function fse(e,t,r){r(null,t)}function use(e,t,r,n){this.asString=e,this.asBuffer=t,this.bodyLimit=r,this.fn=n}function ASr(e){let t=new cm;return t[l2]=e[l2],t.customParsers=new Map(e.customParsers.entries()),t.parserList=e.parserList.slice(),t.parserRegExpList=e.parserRegExpList.slice(),t}function ESr(e,t,r){if(this[lse].started)throw new dse("addContentTypeParser");return typeof t=="function"&&(r=t,t={}),t||(t={}),t.bodyLimit||(t.bodyLimit=this[cSr]),Array.isArray(e)?e.forEach(n=>this[eI].add(n,t,r)):this[eI].add(e,t,r),this}function ySr(e){return this[eI].hasParser(e)}function vSr(e){if(this[lse].started)throw new dse("removeContentTypeParser");if(Array.isArray(e))for(let t of e)this[eI].remove(t);else this[eI].remove(e)}function SSr(){if(this[lse].started)throw new dse("removeAllContentTypeParsers");this[eI].removeAll()}function TSr(e,t){if(t.isEssence)return e.type.indexOf(t)!==-1;if(e.type.indexOf(t.type)===-1)return!1;for(let r of t.parameterKeys)if(!(r in e.parameters)||e.parameters[r]!==t.parameters[r])return!1;return!0}function bSr(e,t,r){return r.isEssence?r.test(t):r.test(e)}function g5(e){this.name=e;let t=pVe(e);if(this.isEssence=e.indexOf(";")===-1,this.isEssence===!1&&t.type===""){let r=e.split(";",1)[0];this.type=r===""?e:r}else this.type=t.type;this.parameters=t.parameters,this.parameterKeys=Object.keys(t.parameters)}g5.prototype.toString=function(){return this.name};d2.exports=cm;d2.exports.helpers={buildContentTypeParser:ASr,addContentTypeParser:ESr,hasContentTypeParser:ySr,removeContentTypeParser:vSr,removeAllContentTypeParsers:SSr};d2.exports.defaultParsers={getDefaultJsonParser:EVe,defaultTextParser:fse};d2.exports[uSr]={rawBody:AVe}});var TVe=S((X7n,SVe)=>{"use strict";var yVe=hd(),ISr=Symbol.for("json-schema-ref"),pse=class{#e;#t;#r;#n;#a;constructor(t={}){this.#e={},this.#t={},this.#r=t.insertRefSymbol??!1,this.#n=t.allowEqualDuplicates??!0,this.#a=t.cloneSchemaWithoutRefs??!1}addSchema(t,r){t.$id!==void 0&&t.$id.charAt(0)!=="#"?r=t.$id:this.#l(t,r),this.#s(t,r)}getSchema(t,r="#"){let n=this.#e[t];if(n===void 0)throw new Error(`Cannot resolve ref "${t}${r}". Schema with id "${t}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:vVe(n.schema,r)}hasSchema(t){return this.#e[t]!==void 0}getSchemaRefs(t){let r=this.#e[t];if(r===void 0)throw new Error(`Schema with id "${t}" is not found.`);return r.refs}getSchemaDependencies(t,r={}){let n=this.#e[t];for(let s of n.refs){let i=s.schemaId;r[i]===void 0&&(r[i]=this.getSchema(i),this.getSchemaDependencies(i,r))}return r}derefSchema(t){if(this.#t[t]!==void 0)return;let r=this.#e[t];if(r===void 0)throw new Error(`Schema with id "${t}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[t]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,t,n);let s=this.getSchemaDependencies(t);for(let i in s){let a=s[i];this.#i(a,i,n)}for(let i of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(i.ref,i.sourceSchemaId),c=this.getDerefSchema(a,o);if(c===null)throw new Error(`Cannot resolve ref "${i.ref}". Ref "${o}" is not found in schema "${a}".`);i.targetSchema=c,i.targetSchemaId=a}for(let i of n)this.#c(i,n)}getDerefSchema(t,r="#"){let n=this.#t[t];return n===void 0&&(this.derefSchema(t),n=this.#t[t]),n.anchors[r]!==void 0?n.anchors[r]:vVe(n.schema,r)}#o(t,r){let n=t.indexOf("#");return n===-1?{refSchemaId:t,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:t}:{refSchemaId:t.slice(0,n),refJsonPointer:t.slice(n)}}#s(t,r){let n=t.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#m(t,r,n):(this.#l(t,n),r=n));let s=t.$ref;if(s!==void 0&&typeof s=="string"){let{refSchemaId:i,refJsonPointer:a}=this.#o(s,r);this.#e[r].refs.push({schemaId:i,jsonPointer:a})}for(let i in t)typeof t[i]=="object"&&t[i]!==null&&this.#s(t[i],r)}#i(t,r,n=[]){let s=Array.isArray(t)?[...t]:{...t},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#h(s,i),r=i)),s.$ref!==void 0&&n.push({ref:s.$ref,sourceSchemaId:r,sourceSchema:s});for(let a in s){let o=s[a];typeof o=="object"&&o!==null&&(s[a]=this.#i(o,r,n))}return s}#c(t,r){let{sourceSchema:n,targetSchema:s}=t;if(n.$ref){if(this.#r&&(n[ISr]=n.$ref),delete n.$ref,s.$ref){let i=r.find(a=>a.sourceSchema===s);this.#c(i,r)}for(let i in s)if(i!=="$id"){if(n[i]!==void 0){if(yVe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${t.ref}". Property "${i}" is already exist in schema "${t.sourceSchemaId}".`)}n[i]=s[i]}t.isResolved=!0}}#l(t,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&yVe(t,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:t,anchors:{},refs:[]}}#m(t,r,n){let{anchors:s}=this.#e[r];if(s[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);s[n]=t}#h(t,r){this.#t[r]===void 0&&(this.#t[r]={schema:t,anchors:{}})}#d(t,r,n){let{anchors:s}=this.#t[r];s[n]=t}};function vVe(e,t){let r=t.split("/"),n=e;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}SVe.exports={RefResolver:pse}});var IVe=S((J7n,bVe)=>{"use strict";var mse=class e{constructor(t,r,n="#"){this.schema=t,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(t){return new e(this.schema[t],this.schemaId,this.jsonPointer+"/"+t)}getSchemaRef(){return this.schemaId+this.jsonPointer}};bVe.exports=mse});var NVe=S((Z7n,_se)=>{"use strict";_se.exports=et;_se.exports.default=et;var RSr={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},RVe={enum:["array","boolean","integer","null","number","object","string"]},CVe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,CSr=M6().fullFormats.uri,xVe=M6().fullFormats.regex;function Ad(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0,o=a;return typeof e=="number"&&!(e%1)&&!isNaN(e)&&isFinite(e)?a===o&&typeof e=="number"&&isFinite(e)&&(e<0||isNaN(e))?(Ad.errors=[{instancePath:t,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(Ad.errors=i,a===0):(Ad.errors=[{instancePath:t,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var gse={validate:et};function Uc(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0;if(a===0)if(Array.isArray(e)){if(e.length<1)return Uc.errors=[{instancePath:t,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=e.length;for(let u=0;u",limit:0},message:"must be > 0"}],!1}else return et.errors=[{instancePath:t+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.maximum!==void 0){let A=e.maximum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.exclusiveMaximum!==void 0){let A=e.exclusiveMaximum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.minimum!==void 0){let A=e.minimum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.exclusiveMinimum!==void 0){let A=e.exclusiveMinimum,E=a;if(!(typeof A=="number"&&isFinite(A)))return et.errors=[{instancePath:t+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=E===a}else var o=!0;if(o){if(e.maxLength!==void 0){let A=e.maxLength,E=a,v=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return et.errors=[{instancePath:t+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return et.errors=[{instancePath:t+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=E===a}else var o=!0;if(o){if(e.minLength!==void 0){let A=a;Ad(e.minLength,{instancePath:t+"/minLength",parentData:e,parentDataProperty:"minLength",rootData:s})||(i=i===null?Ad.errors:i.concat(Ad.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.pattern!==void 0){let A=e.pattern,E=a;if(a===E&&a===E)if(typeof A=="string"){if(!xVe(A))return et.errors=[{instancePath:t+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return et.errors=[{instancePath:t+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=E===a}else var o=!0;if(o){if(e.additionalItems!==void 0){let A=a;et(e.additionalItems,{instancePath:t+"/additionalItems",parentData:e,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.items!==void 0){let A=e.items,E=a,v=a,b=!1,I=a;et(A,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var c=I===a;if(b=b||c,!b){let x=a;Uc(A,{instancePath:t+"/items",parentData:e,parentDataProperty:"items",rootData:s})||(i=i===null?Uc.errors:i.concat(Uc.errors),a=i.length);var c=x===a;b=b||c}if(b)a=v,i!==null&&(v?i.length=v:i=null);else{let x={instancePath:t+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[x]:i.push(x),a++,et.errors=i,!1}var o=E===a}else var o=!0;if(o){if(e.maxItems!==void 0){let A=e.maxItems,E=a,v=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return et.errors=[{instancePath:t+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return et.errors=[{instancePath:t+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=E===a}else var o=!0;if(o){if(e.minItems!==void 0){let A=a;Ad(e.minItems,{instancePath:t+"/minItems",parentData:e,parentDataProperty:"minItems",rootData:s})||(i=i===null?Ad.errors:i.concat(Ad.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.uniqueItems!==void 0){let A=a;if(typeof e.uniqueItems!="boolean")return et.errors=[{instancePath:t+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=A===a}else var o=!0;if(o){if(e.contains!==void 0){let A=a;et(e.contains,{instancePath:t+"/contains",parentData:e,parentDataProperty:"contains",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.maxProperties!==void 0){let A=e.maxProperties,E=a,v=a;if(!(typeof A=="number"&&!(A%1)&&!isNaN(A)&&isFinite(A)))return et.errors=[{instancePath:t+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof A=="number"&&isFinite(A)&&(A<0||isNaN(A)))return et.errors=[{instancePath:t+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=E===a}else var o=!0;if(o){if(e.minProperties!==void 0){let A=a;Ad(e.minProperties,{instancePath:t+"/minProperties",parentData:e,parentDataProperty:"minProperties",rootData:s})||(i=i===null?Ad.errors:i.concat(Ad.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.required!==void 0){let A=e.required,E=a;if(a===a)if(Array.isArray(A)){var u=!0;let I=A.length;for(let T=0;T1){let w={};for(;T--;){let D=A[T];if(typeof D=="string"){if(typeof w[D]=="number"){return x=w[D],et.errors=[{instancePath:t+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:T,j:x},message:"must NOT have duplicate items (items ## "+x+" and "+T+" are identical)"}],!1;break}w[D]=T}}}}}else return et.errors=[{instancePath:t+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=E===a}else var o=!0;if(o){if(e.additionalProperties!==void 0){let A=a;et(e.additionalProperties,{instancePath:t+"/additionalProperties",parentData:e,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.definitions!==void 0){let A=e.definitions,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A))for(let b in A){let I=a;et(A[b],{instancePath:t+"/definitions/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var l=I===a;if(!l)break}else return et.errors=[{instancePath:t+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.properties!==void 0){let A=e.properties,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A))for(let b in A){let I=a;et(A[b],{instancePath:t+"/properties/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var d=I===a;if(!d)break}else return et.errors=[{instancePath:t+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.patternProperties!==void 0){let A=e.patternProperties,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A)){for(let b in A){let I=a;if(a===I&&typeof b=="string"&&!xVe(b)){let T={instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:b};i===null?i=[T]:i.push(T),a++}var f=I===a;if(!f){let T={instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:b},message:"property name must be valid"};return i===null?i=[T]:i.push(T),a++,et.errors=i,!1;break}}if(f)for(let b in A){let I=a;et(A[b],{instancePath:t+"/patternProperties/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var h=I===a;if(!h)break}}else return et.errors=[{instancePath:t+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.dependencies!==void 0){let A=e.dependencies,E=a;if(a===E)if(A&&typeof A=="object"&&!Array.isArray(A))for(let b in A){let I=A[b],T=a,x=a,w=!1,D=a;et(I,{instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:A,parentDataProperty:b,rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var p=D===a;if(w=w||p,!w){let M=a;if(a===a)if(Array.isArray(I)){var m=!0;let G=I.length;for(let $=0;$1){let ee={};for(;$--;){let z=I[$];if(typeof z=="string"){if(typeof ee[z]=="number"){K=ee[z];let oe={instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:$,j:K},message:"must NOT have duplicate items (items ## "+K+" and "+$+" are identical)"};i===null?i=[oe]:i.push(oe),a++;break}ee[z]=$}}}}}else{let G={instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[G]:i.push(G),a++}var p=M===a;w=w||p}if(w)a=x,i!==null&&(x?i.length=x:i=null);else{let M={instancePath:t+"/dependencies/"+b.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,et.errors=i,!1}var g=T===a;if(!g)break}else return et.errors=[{instancePath:t+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=E===a}else var o=!0;if(o){if(e.propertyNames!==void 0){let A=a;et(e.propertyNames,{instancePath:t+"/propertyNames",parentData:e,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.enum!==void 0){let A=e.enum,E=a;if(a===E)if(Array.isArray(A)){if(A.length<1)return et.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let b=A.length,I;if(b>1){e:for(;b--;)for(I=b;I--;)if(wVe(A[b],A[I])){return et.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:b,j:I},message:"must NOT have duplicate items (items ## "+I+" and "+b+" are identical)"}],!1;break e}}}}else return et.errors=[{instancePath:t+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=E===a}else var o=!0;if(o){if(e.type!==void 0){let A=e.type,E=a,v=a,b=!1,I=a;if(!(A==="array"||A==="boolean"||A==="integer"||A==="null"||A==="number"||A==="object"||A==="string")){let x={instancePath:t+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:RVe.enum},message:"must be equal to one of the allowed values"};i===null?i=[x]:i.push(x),a++}var _=I===a;if(b=b||_,!b){let x=a;if(a===x)if(Array.isArray(A))if(A.length<1){let D={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[D]:i.push(D),a++}else{var y=!0;let D=A.length;for(let M=0;M1){e:for(;M--;)for(L=M;L--;)if(wVe(A[M],A[L])){let U={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:L},message:"must NOT have duplicate items (items ## "+L+" and "+M+" are identical)"};i===null?i=[U]:i.push(U),a++;break e}}}}else{let D={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[D]:i.push(D),a++}var _=x===a;b=b||_}if(b)a=v,i!==null&&(v?i.length=v:i=null);else{let x={instancePath:t+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[x]:i.push(x),a++,et.errors=i,!1}var o=E===a}else var o=!0;if(o){if(e.format!==void 0){let A=a;if(typeof e.format!="string")return et.errors=[{instancePath:t+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.contentMediaType!==void 0){let A=a;if(typeof e.contentMediaType!="string")return et.errors=[{instancePath:t+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.contentEncoding!==void 0){let A=a;if(typeof e.contentEncoding!="string")return et.errors=[{instancePath:t+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=A===a}else var o=!0;if(o){if(e.if!==void 0){let A=a;et(e.if,{instancePath:t+"/if",parentData:e,parentDataProperty:"if",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.then!==void 0){let A=a;et(e.then,{instancePath:t+"/then",parentData:e,parentDataProperty:"then",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.else!==void 0){let A=a;et(e.else,{instancePath:t+"/else",parentData:e,parentDataProperty:"else",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.allOf!==void 0){let A=a;Uc(e.allOf,{instancePath:t+"/allOf",parentData:e,parentDataProperty:"allOf",rootData:s})||(i=i===null?Uc.errors:i.concat(Uc.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.anyOf!==void 0){let A=a;Uc(e.anyOf,{instancePath:t+"/anyOf",parentData:e,parentDataProperty:"anyOf",rootData:s})||(i=i===null?Uc.errors:i.concat(Uc.errors),a=i.length);var o=A===a}else var o=!0;if(o){if(e.oneOf!==void 0){let A=a;Uc(e.oneOf,{instancePath:t+"/oneOf",parentData:e,parentDataProperty:"oneOf",rootData:s})||(i=i===null?Uc.errors:i.concat(Uc.errors),a=i.length);var o=A===a}else var o=!0;if(o)if(e.not!==void 0){let A=a;et(e.not,{instancePath:t+"/not",parentData:e,parentDataProperty:"not",rootData:s})||(i=i===null?et.errors:i.concat(et.errors),a=i.length);var o=A===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return et.errors=i,a===0}});var vse=S((ejn,OVe)=>{"use strict";var Ase=class extends Error{constructor(t,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${t}" keyword schemas.`,this.schemas=r}},Ese=class extends Error{constructor(t,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${t}" keyword not found.`,this.schemas=r}},yse=class extends Error{constructor(t){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${t}".`}};OVe.exports={MergeError:Ase,ResolverNotFoundError:Ese,InvalidOnConflictOptionError:yse}});var LVe=S((tjn,PVe)=>{"use strict";var xSr=hd(),{MergeError:Sse}=vse();function DVe(e){let t=e[0];for(let r=1;re[r].includes(n));return t}function wSr(e,t,r){let n=DVe(t);if(n.length===0)throw new Sse(e,t);r[e]=n}function NSr(e,t,r){for(let s=0;sc?n(c,o%c):o,s=(o,c)=>o*c/n(o,c),i=1;for(let o of t)for(;o*i%1!==0;)i*=10;let a=t[0]*i;for(let o of t)a=s(a,o*i);r[e]=a/i}function MSr(e,t,r){let n=t[0];for(let s=1;s{"use strict";var FSr=hd(),pi=LVe(),E5=vse(),BVe={$id:pi.skip,type:pi.hybridArraysIntersection,enum:pi.arraysIntersection,minLength:pi.maxNumber,maxLength:pi.minNumber,minimum:pi.maxNumber,maximum:pi.minNumber,multipleOf:pi.commonMultiple,exclusiveMinimum:pi.maxNumber,exclusiveMaximum:pi.minNumber,minItems:pi.maxNumber,maxItems:pi.minNumber,maxProperties:pi.minNumber,minProperties:pi.maxNumber,const:pi.allEqual,default:pi.allEqual,format:pi.allEqual,required:pi.arraysUnion,properties:KSr,patternProperties:A5,additionalProperties:_5,items:HSr,additionalItems:VSr,definitions:A5,$defs:A5,nullable:pi.booleanAnd,oneOf:MVe,anyOf:MVe,allOf:pi.arraysUnion,not:_5,if:GSr,then:pi.skip,else:pi.skip,dependencies:kVe,dependentRequired:kVe,dependentSchemas:A5,propertyNames:_5,uniqueItems:pi.booleanOr,contains:_5};function _5(e,t,r,n,s){r[e]=Lf(t,s)}function $Sr(e){let t=[[]];for(let r of e){let n=[];for(let s of t)for(let i of r)n.push([...s,i]);t=n}return t}function MVe(e,t,r,n,s){if(t.length===1){r[e]=t[0];return}let i=$Sr(t),a=[];for(let o of i)try{let c=Lf(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof E5.MergeError)continue;throw c}r[e]=a}function qSr(e,t){let{items:r,additionalItems:n}=e;return Array.isArray(r)?t{"use strict";var{mergeSchemas:YSr}=$Ve();function QSr(e){return YSr(e,{onConflict:"skip"})}qVe.exports=QSr});var XVe=S((sjn,tI)=>{"use strict";var{RefResolver:WSr}=TVe(),XSr=Ete(),JSr=gne(),Tv=IVe(),VVe=NVe(),ZSr=HVe(),eTr=/'/g,y5=2e4,KVe="default",tTr=["floor","ceil","round","trunc"],GVe=["default","json-stringify"],f2=0;function Tse(e,t){if(!VVe(e)){t?t=`"${t}" `:t="";let r=VVe.errors[0],n=new Error(`${t}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=Tse.errors,n}}function h2(e,t){let r=t.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||t.schemaId,i=r.slice(n)||"#",a=e.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new Tv(a,s,i);return a.$ref!==void 0?h2(e,o):o}function v5(e,t){let r=e.refResolver.getSchema(t,"#");return new Tv(r,t,"#")}function jVe(e,t){return e.$id&&e.$id.charAt(0)!=="#"?e.$id:t}function bse(e,t){Tse(e),t=t||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:t,refResolver:new WSr,rootSchemaId:e.$id||`__fjs_root_${f2++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=jVe(e,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(e,r.rootSchemaId),t.schema)for(let l in t.schema){let d=t.schema[l],f=jVe(d,l);r.refResolver.hasSchema(f)||(Tse(d,l),r.refResolver.addSchema(d,l))}if(t.rounding&&!tTr.includes(t.rounding))throw new Error(`Unsupported integer rounding method ${t.rounding}`);if(t.largeArrayMechanism)if(GVe.includes(t.largeArrayMechanism))KVe=t.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${t.largeArrayMechanism}`);if(t.largeArraySize)if(typeof t.largeArraySize=="string"&&Number.isFinite(Number.parseInt(t.largeArraySize,10)))y5=Number.parseInt(t.largeArraySize,10);else if(typeof t.largeArraySize=="number"&&Number.isInteger(t.largeArraySize))y5=t.largeArraySize;else if(typeof t.largeArraySize=="bigint")y5=Number(t.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof t.largeArraySize} with value ${t.largeArraySize}`);let s=new Tv(e,r.rootSchemaId),i=Tl(r,s,"input"),a=` const JSON_STR_BEGIN_OBJECT = '{' const JSON_STR_END_OBJECT = '}' const JSON_STR_BEGIN_ARRAY = '[' @@ -165,7 +502,7 @@ ${v}`),m.pop(),`{${S}}`}case"number":return isFinite(h)?String(h):t?t(h):"null"; const JSON_STR_EMPTY_ARRAY = JSON_STR_BEGIN_ARRAY + JSON_STR_END_ARRAY const JSON_STR_EMPTY_STRING = JSON_STR_QUOTE + JSON_STR_QUOTE const JSON_STR_NULL = 'null' - `;s==="json += anonymous0(input)"?a+=` + `;i==="json += anonymous0(input)"?a+=` ${r.functions.join(` `)} const main = anonymous0 @@ -173,16 +510,16 @@ ${v}`),m.pop(),`{${S}}`}case"number":return isFinite(h)?String(h):t?t(h):"null"; `:a+=` function main (input) { let json = '' - ${s} + ${i} return json } ${r.functions.join(` `)} return main - `;let o=new nir(t),u=new iir(t.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);u.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[p,h]of Object.entries(f))u.addSchema(h,p)}if(t.debugMode&&(t.mode="debug"),t.mode==="debug")return{validator:u,serializer:o,code:`validator + `;let o=new XSr(t),c=new JSr(t.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);c.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[h,p]of Object.entries(f))c.addSchema(p,h)}if(t.debugMode&&(t.mode="debug"),t.mode==="debug")return{validator:c,serializer:o,code:`validator serializer -${a}`,ajv:u.ajv};let c=new Function("validator","serializer",a);return t.mode==="standalone"?iX()(c,r,o,u):c(u,o)}var uir=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],cir=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],lir=["maxLength","minLength","pattern"],dir=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function fir(e){for(var t of uir)if(t in e)return"object";for(var t of cir)if(t in e)return"array";for(var t of lir)if(t in e)return"string";for(var t of dir)if(t in e)return"number";return e.type}function pir(e,t,r){let n=t.schema,i=Object.keys(n.properties||{}),s=` - const propertiesKeys = ${JSON.stringify(i)} +${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return t.mode==="standalone"?Ane()(u,r,o,c):u(c,o)}var rTr=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],nTr=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],sTr=["maxLength","minLength","pattern"],iTr=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function aTr(e){for(var t of rTr)if(t in e)return"object";for(var t of nTr)if(t in e)return"array";for(var t of sTr)if(t in e)return"string";for(var t of iTr)if(t in e)return"number";return e.type}function oTr(e,t,r){let n=t.schema,s=Object.keys(n.properties||{}),i=` + const propertiesKeys = ${JSON.stringify(s)} for (const [key, value] of Object.entries(obj)) { if ( propertiesKeys.includes(key) || @@ -190,98 +527,98 @@ ${a}`,ajv:u.ajv};let c=new Function("validator","serializer",a);return t.mode=== typeof value === 'function' || typeof value === 'symbol' ) continue - `,a=t.getPropertyLocation("patternProperties"),o=a.schema;if(o!==void 0)for(let l in o){let d=a.getPropertyLocation(l);s+=` + `,a=t.getPropertyLocation("patternProperties"),o=a.schema;if(o!==void 0)for(let l in o){let d=a.getPropertyLocation(l);i+=` if (/${l.replace(/\\*\//g,"\\/")}/.test(key)) { ${r} json += serializer.asString(key) + JSON_STR_COLONS - ${yc(e,d,"value")} + ${Tl(e,d,"value")} continue } - `}let c=t.getPropertyLocation("additionalProperties").schema;if(c!==void 0)if(c===!0)s+=` + `}let u=t.getPropertyLocation("additionalProperties").schema;if(u!==void 0)if(u===!0)i+=` ${r} json += serializer.asString(key) + JSON_STR_COLONS + JSON.stringify(value) - `;else{let l=t.getPropertyLocation("additionalProperties");s+=` + `;else{let l=t.getPropertyLocation("additionalProperties");i+=` ${r} json += serializer.asString(key) + JSON_STR_COLONS - ${yc(e,l,"value")} - `}return s+=` + ${Tl(e,l,"value")} + `}return i+=` } - `,s}function hir(e,t){let r=t.schema,n=t.getPropertyLocation("properties"),i=r.required||[],s=Object.keys(r.properties||{}).sort((c,l)=>{let d=i.includes(c),f=i.includes(l);return d===f?0:d?-1:1}),a=i.includes(s[0]),o=`let value -`;for(let c of i)if(!s.includes(c)){let l=JSON.stringify(c);o+=`if (obj[${l}] === undefined) throw new Error('${l.replace(/'/g,"\\'")} is required!') + `,i}function cTr(e,t){let r=t.schema,n=t.getPropertyLocation("properties"),s=r.required||[],i=Object.keys(r.properties||{}).sort((u,l)=>{let d=s.includes(u),f=s.includes(l);return d===f?0:d?-1:1}),a=s.includes(i[0]),o=`let value +`;for(let u of s)if(!i.includes(u)){let l=JSON.stringify(u);o+=`if (obj[${l}] === undefined) throw new Error('${l.replace(/'/g,"\\'")} is required!') `}o+=`let json = JSON_STR_BEGIN_OBJECT -`;let u="";a||(o+=`let addComma = false -`,u="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let c of s){let l=n.getPropertyLocation(c);l.schema.$ref&&(l=c2(e,l));let d=JSON.stringify(c),f=l.schema.default,p=i.includes(c);o+=` +`;let c="";a||(o+=`let addComma = false +`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=h2(e,l));let d=JSON.stringify(u),f=l.schema.default,h=s.includes(u);o+=` value = obj[${d}] if (value !== undefined) { - ${u} + ${c} json += ${JSON.stringify(d+":")} - ${yc(e,l,"value")} + ${Tl(e,l,"value")} }`,f!==void 0?o+=` else { - ${u} + ${c} json += ${JSON.stringify(d+":"+JSON.stringify(f))} } - `:p?o+=` else { + `:h?o+=` else { throw new Error('${d.replace(/'/g,"\\'")} is required!') } `:o+=` -`,a&&(u="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=pir(e,t,u)),o+=` +`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=oTr(e,t,c)),o+=` return json + JSON_STR_END_OBJECT - `,o}function P3(e,t,r){for(let a=0;a ${i.length}) { - throw new Error(\`Item at ${i.length} does not match schema definition.\`) + `,!r.additionalItems&&Array.isArray(s)&&(o+=` + if (arrayLength > ${s.length}) { + throw new Error(\`Item at ${s.length} does not match schema definition.\`) } - `),G3e==="json-stringify"&&(o+=`if (arrayLength >= ${k3}) return JSON.stringify(obj) + `),KVe==="json-stringify"&&(o+=`if (arrayLength >= ${y5}) return JSON.stringify(obj) `),o+=` const arrayEnd = arrayLength - 1 let value let json = '' - `,Array.isArray(i)){for(let c=0;cX3e(i,t)).join(" || ")})`)}return r}function J3e(e){return"anonymous"+e.functionsCounter++}function _ir(e,t,r){let i=t.schema.type.sort(o=>o==="null"?-1:1),s="";i.forEach((o,u)=>{t.schema={...t.schema,type:o};let c=Z3e(e,t,r),l=u===0?"if":"else if";switch(o){case"null":s+=` + )`;break;case"integer":r="Number.isInteger(value)";break;case"number":r="Number.isFinite(value)";break;case"boolean":r="typeof value === 'boolean'";break;case"object":r="value && typeof value === 'object' && value.constructor === Object";break;case"array":r="Array.isArray(value)";break;default:Array.isArray(e)&&(r=`(${e.map(s=>YVe(s,t)).join(" || ")})`)}return r}function QVe(e){return"anonymous"+e.functionsCounter++}function fTr(e,t,r){let s=t.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{t.schema={...t.schema,type:o};let u=WVe(e,t,r),l=c===0?"if":"else if";switch(o){case"null":i+=` ${l} (${r} === null) - ${c} - `;break;case"string":{s+=` + ${u} + `;break;case"string":{i+=` ${l}( typeof ${r} === "string" || ${r} === null || @@ -304,19 +641,19 @@ ${a}`,ajv:u.ajv};let c=new Function("validator","serializer",a);return t.mode=== ${r}.toString !== Object.prototype.toString ) ) - ${c} - `;break}case"array":{s+=` + ${u} + `;break}case"array":{i+=` ${l}(Array.isArray(${r})) - ${c} - `;break}case"integer":{s+=` + ${u} + `;break}case"integer":{i+=` ${l}(Number.isInteger(${r}) || ${r} === null) - ${c} - `;break}default:{s+=` + ${u} + `;break}default:{i+=` ${l}(typeof ${r} === "${o}" || ${r} === null) - ${c} - `;break}}});let a=t.getSchemaRef();return a.startsWith(e.rootSchemaId)&&(a=a.replace(e.rootSchemaId,"")),s+=` + ${u} + `;break}}});let a=t.getSchemaRef();return a.startsWith(e.rootSchemaId)&&(a=a.replace(e.rootSchemaId,"")),i+=` else throw new TypeError(\`The value of '${a}' does not match schema definition.\`) - `,s}function Z3e(e,t,r){let n=t.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:` + `,i}function WVe(e,t,r){let n=t.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:` if (typeof ${r} !== 'string') { if (${r} === null) { json += JSON_STR_EMPTY_STRING @@ -330,122 +667,123 @@ ${a}`,ajv:u.ajv};let c=new Function("validator","serializer",a);return t.mode=== } else { json += serializer.asString(${r}) } - `;case"integer":return`json += serializer.asInteger(${r})`;case"number":return`json += serializer.asNumber(${r})`;case"boolean":return`json += serializer.asBoolean(${r})`;case"object":return`json += ${gir(e,t)}(${r})`;case"array":return`json += ${yir(e,t)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function Air(e,t){let r=e.schema,n=r.type,i=Array.isArray(n)&&n.includes("null"),s="";return i&&(s+=` + `;case"integer":return`json += serializer.asInteger(${r})`;case"number":return`json += serializer.asNumber(${r})`;case"boolean":return`json += serializer.asBoolean(${r})`;case"object":return`json += ${lTr(e,t)}(${r})`;case"array":return`json += ${dTr(e,t)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function hTr(e,t){let r=e.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=` if (${t} === null) { json += JSON_STR_NULL } else { - `),s+=`json += '${JSON.stringify(r.const).replace(air,"\\'")}'`,i&&(s+=` + `),i+=`json += '${JSON.stringify(r.const).replace(eTr,"\\'")}'`,s&&(i+=` } - `),s}function vir(e,t,r){let n=t.schema,i=e.mergedSchemasIds.get(n);if(i){let l=O3(e,i);return yc(e,l,r)}i=`__fjs_merged_${u2++}`,e.mergedSchemasIds.set(n,i);let{allOf:s,...a}=t.schema,o=[new wA(a,t.schemaId,t.jsonPointer)],u=t.getPropertyLocation("allOf");for(let l=0;l{"use strict";var Sir=dJ();function t$e(e={readMode:!0}){if(e.readMode===!0&&typeof e.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(e.readMode!==!0&&typeof e.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(e.readMode===!0)return function(){return function(n){return e.restoreFunction(n)}};let t=Sir();return function(n,i={}){i.mode="standalone";let s=t(n,i);return function(a){let o=s(a);return e.storeFunction(a,o),new Function(o)}}}lJ.exports=t$e;lJ.exports.default=t$e});var dJ=b((ITn,l2)=>{"use strict";var wir=e$e();function fJ(){return function(t,r){let n=Object.assign({},r,{schema:t});return Iir.bind(null,n)}}function Iir(e,{schema:t}){return e.schema&&t.$id&&e.schema[t.$id]&&(e.schema={...e.schema},delete e.schema[t.$id]),wir(t,e)}l2.exports=fJ;l2.exports.default=fJ;l2.exports.SerializerSelector=fJ;l2.exports.StandaloneSerializer=r$e()});var P1=b(zr=>{"use strict";Object.defineProperty(zr,"__esModule",{value:!0});zr.regexpCode=zr.getEsmExportName=zr.getProperty=zr.safeStringify=zr.stringify=zr.strConcat=zr.addCodeArg=zr.str=zr._=zr.nil=zr._Code=zr.Name=zr.IDENTIFIER=zr._CodeOrName=void 0;var d2=class{};zr._CodeOrName=d2;zr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var IA=class extends d2{constructor(t){if(super(),!zr.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};zr.Name=IA;var ol=class extends d2{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof IA&&(r[n.str]=(r[n.str]||0)+1),r),{})}};zr._Code=ol;zr.nil=new ol("");function n$e(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.ValueScope=Cu.ValueScopeName=Cu.Scope=Cu.varKinds=Cu.UsedValueState=void 0;var xu=P1(),mJ=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},M3;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(M3||(Cu.UsedValueState=M3={}));Cu.varKinds={const:new xu.Name("const"),let:new xu.Name("let"),var:new xu.Name("var")};var L3=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof xu.Name?t:this.name(t)}name(t){return new xu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Cu.Scope=L3;var B3=class extends xu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,xu._)`.${new xu.Name(r)}[${n}]`}};Cu.ValueScopeName=B3;var Pir=(0,xu._)`\n`,gJ=class extends L3{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Pir:xu.nil}}get(){return this._scope}name(t){return new B3(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(t),{prefix:s}=i,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[s];if(o){let l=o.get(a);if(l)return l}else o=this._values[s]=new Map;o.set(a,i);let u=this._scope[s]||(this._scope[s]=[]),c=u.length;return u[c]=r.ref,i.setValue(r,{property:s,itemIndex:c}),i}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,xu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(t,r,n={},i){let s=xu.nil;for(let a in t){let o=t[a];if(!o)continue;let u=n[a]=n[a]||new Map;o.forEach(c=>{if(u.has(c))return;u.set(c,M3.Started);let l=r(c);if(l){let d=this.opts.es5?Cu.varKinds.var:Cu.varKinds.const;s=(0,xu._)`${s}${d} ${c} = ${l};${this.opts._n}`}else if(l=i?.(c))s=(0,xu._)`${s}${l}${this.opts._n}`;else throw new mJ(c);u.set(c,M3.Completed)})}return s}};Cu.ValueScope=gJ});var wt=b(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.or=rr.and=rr.not=rr.CodeGen=rr.operators=rr.varKinds=rr.ValueScopeName=rr.ValueScope=rr.Scope=rr.Name=rr.regexpCode=rr.stringify=rr.getProperty=rr.nil=rr.strConcat=rr.str=rr._=void 0;var Ir=P1(),Ad=$3(),mg=P1();Object.defineProperty(rr,"_",{enumerable:!0,get:function(){return mg._}});Object.defineProperty(rr,"str",{enumerable:!0,get:function(){return mg.str}});Object.defineProperty(rr,"strConcat",{enumerable:!0,get:function(){return mg.strConcat}});Object.defineProperty(rr,"nil",{enumerable:!0,get:function(){return mg.nil}});Object.defineProperty(rr,"getProperty",{enumerable:!0,get:function(){return mg.getProperty}});Object.defineProperty(rr,"stringify",{enumerable:!0,get:function(){return mg.stringify}});Object.defineProperty(rr,"regexpCode",{enumerable:!0,get:function(){return mg.regexpCode}});Object.defineProperty(rr,"Name",{enumerable:!0,get:function(){return mg.Name}});var j3=$3();Object.defineProperty(rr,"Scope",{enumerable:!0,get:function(){return j3.Scope}});Object.defineProperty(rr,"ValueScope",{enumerable:!0,get:function(){return j3.ValueScope}});Object.defineProperty(rr,"ValueScopeName",{enumerable:!0,get:function(){return j3.ValueScopeName}});Object.defineProperty(rr,"varKinds",{enumerable:!0,get:function(){return j3.varKinds}});rr.operators={GT:new Ir._Code(">"),GTE:new Ir._Code(">="),LT:new Ir._Code("<"),LTE:new Ir._Code("<="),EQ:new Ir._Code("==="),NEQ:new Ir._Code("!=="),NOT:new Ir._Code("!"),OR:new Ir._Code("||"),AND:new Ir._Code("&&"),ADD:new Ir._Code("+")};var kh=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},yJ=class extends kh{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Ad.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=L1(this.rhs,t,r)),this}get names(){return this.rhs instanceof Ir._CodeOrName?this.rhs.names:{}}},F3=class extends kh{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof Ir.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=L1(this.rhs,t,r),this}get names(){let t=this.lhs instanceof Ir.Name?{}:{...this.lhs.names};return q3(t,this.rhs)}},_J=class extends F3{constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},AJ=class extends kh{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},vJ=class extends kh{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},bJ=class extends kh{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},EJ=class extends kh{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=L1(this.code,t,r),this}get names(){return this.code instanceof Ir._CodeOrName?this.code.names:{}}},p2=class extends kh{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(t,r)||(Mir(t,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>TA(t,r.names),{})}},Oh=class extends p2{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},SJ=class extends p2{},M1=class extends Oh{};M1.kind="else";var xA=class e extends Oh{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new M1(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(s$e(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=L1(this.condition,t,r),this}get names(){let t=super.names;return q3(t,this.condition),this.else&&TA(t,this.else.names),t}};xA.kind="if";var CA=class extends Oh{};CA.kind="for";var wJ=class extends CA{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=L1(this.iteration,t,r),this}get names(){return TA(super.names,this.iteration.names)}},IJ=class extends CA{constructor(t,r,n,i){super(),this.varKind=t,this.name=r,this.from=n,this.to=i}render(t){let r=t.es5?Ad.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(t)}get names(){let t=q3(super.names,this.from);return q3(t,this.to)}},U3=class extends CA{constructor(t,r,n,i){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=i}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=L1(this.iterable,t,r),this}get names(){return TA(super.names,this.iterable.names)}},h2=class extends Oh{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};h2.kind="func";var m2=class extends p2{render(t){return"return "+super.render(t)}};m2.kind="return";var xJ=class extends Oh{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,i;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(i=this.finally)===null||i===void 0||i.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&TA(t,this.catch.names),this.finally&&TA(t,this.finally.names),t}},g2=class extends Oh{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};g2.kind="catch";var y2=class extends Oh{render(t){return"finally"+super.render(t)}};y2.kind="finally";var CJ=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new Ad.Scope({parent:t}),this._nodes=[new SJ]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new yJ(t,s,n)),s}const(t,r,n){return this._def(Ad.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ad.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ad.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new F3(t,r,n))}add(t,r){return this._leafNode(new _J(t,rr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==Ir.nil&&this._leafNode(new EJ(t)),this}object(...t){let r=["{"];for(let[n,i]of t)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,Ir.addCodeArg)(r,i));return r.push("}"),new Ir._Code(r)}if(t,r,n){if(this._blockNode(new xA(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new xA(t))}else(){return this._elseNode(new M1)}endIf(){return this._endBlockNode(xA,M1)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new wJ(t),r)}forRange(t,r,n,i,s=this.opts.es5?Ad.varKinds.var:Ad.varKinds.let){let a=this._scope.toName(t);return this._for(new IJ(s,a,r,n),()=>i(a))}forOf(t,r,n,i=Ad.varKinds.const){let s=this._scope.toName(t);if(this.opts.es5){let a=r instanceof Ir.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ir._)`${a}.length`,o=>{this.var(s,(0,Ir._)`${a}[${o}]`),n(s)})}return this._for(new U3("of",i,s,r),()=>n(s))}forIn(t,r,n,i=this.opts.es5?Ad.varKinds.var:Ad.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,Ir._)`Object.keys(${r})`,n);let s=this._scope.toName(t);return this._for(new U3("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(CA)}label(t){return this._leafNode(new AJ(t))}break(t){return this._leafNode(new vJ(t))}return(t){let r=new m2;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(m2)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new xJ;if(this._blockNode(i),this.code(t),r){let s=this.name("e");this._currNode=i.catch=new g2(s),r(s)}return n&&(this._currNode=i.finally=new y2,this.code(n)),this._endBlockNode(g2,y2)}throw(t){return this._leafNode(new bJ(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=Ir.nil,n,i){return this._blockNode(new h2(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(h2)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof xA))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};rr.CodeGen=CJ;function TA(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function q3(e,t){return t instanceof Ir._CodeOrName?TA(e,t.names):e}function L1(e,t,r){if(e instanceof Ir.Name)return n(e);if(!i(e))return e;return new Ir._Code(e._items.reduce((s,a)=>(a instanceof Ir.Name&&(a=n(a)),a instanceof Ir._Code?s.push(...a._items):s.push(a),s),[]));function n(s){let a=r[s.str];return a===void 0||t[s.str]!==1?s:(delete t[s.str],a)}function i(s){return s instanceof Ir._Code&&s._items.some(a=>a instanceof Ir.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function Mir(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function s$e(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,Ir._)`!${TJ(e)}`}rr.not=s$e;var Lir=a$e(rr.operators.AND);function Bir(...e){return e.reduce(Lir)}rr.and=Bir;var $ir=a$e(rr.operators.OR);function Fir(...e){return e.reduce($ir)}rr.or=Fir;function a$e(e){return(t,r)=>t===Ir.nil?r:r===Ir.nil?t:(0,Ir._)`${TJ(t)} ${e} ${TJ(r)}`}function TJ(e){return e instanceof Ir.Name?e:(0,Ir._)`(${e})`}});var zt=b(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.checkStrictMode=or.getErrorPath=or.Type=or.useFunc=or.setEvaluated=or.evaluatedPropsToName=or.mergeEvaluated=or.eachItem=or.unescapeJsonPointer=or.escapeJsonPointer=or.escapeFragment=or.unescapeFragment=or.schemaRefOrVal=or.schemaHasRulesButRef=or.schemaHasRules=or.checkUnknownRules=or.alwaysValidSchema=or.toHash=void 0;var Hn=wt(),Uir=P1();function qir(e){let t={};for(let r of e)t[r]=!0;return t}or.toHash=qir;function jir(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(c$e(e,t),!l$e(t,e.self.RULES.all))}or.alwaysValidSchema=jir;function c$e(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let i=n.RULES.keywords;for(let s in t)i[s]||p$e(e,`unknown keyword: "${s}"`)}or.checkUnknownRules=c$e;function l$e(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}or.schemaHasRules=l$e;function Hir(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}or.schemaHasRulesButRef=Hir;function Kir({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Hn._)`${r}`}return(0,Hn._)`${e}${t}${(0,Hn.getProperty)(n)}`}or.schemaRefOrVal=Kir;function Vir(e){return d$e(decodeURIComponent(e))}or.unescapeFragment=Vir;function zir(e){return encodeURIComponent(RJ(e))}or.escapeFragment=zir;function RJ(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}or.escapeJsonPointer=RJ;function d$e(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}or.unescapeJsonPointer=d$e;function Qir(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}or.eachItem=Qir;function o$e({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,s,a,o)=>{let u=a===void 0?s:a instanceof Hn.Name?(s instanceof Hn.Name?e(i,s,a):t(i,s,a),a):s instanceof Hn.Name?(t(i,a,s),s):r(s,a);return o===Hn.Name&&!(u instanceof Hn.Name)?n(i,u):u}}or.mergeEvaluated={props:o$e({mergeNames:(e,t,r)=>e.if((0,Hn._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Hn._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Hn._)`${r} || {}`).code((0,Hn._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Hn._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Hn._)`${r} || {}`),DJ(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:f$e}),items:o$e({mergeNames:(e,t,r)=>e.if((0,Hn._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Hn._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Hn._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Hn._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function f$e(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Hn._)`{}`);return t!==void 0&&DJ(e,r,t),r}or.evaluatedPropsToName=f$e;function DJ(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Hn._)`${t}${(0,Hn.getProperty)(n)}`,!0))}or.setEvaluated=DJ;var u$e={};function Gir(e,t){return e.scopeValue("func",{ref:t,code:u$e[t.code]||(u$e[t.code]=new Uir._Code(t.code))})}or.useFunc=Gir;var NJ;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(NJ||(or.Type=NJ={}));function Yir(e,t,r){if(e instanceof Hn.Name){let n=t===NJ.Num;return r?n?(0,Hn._)`"[" + ${e} + "]"`:(0,Hn._)`"['" + ${e} + "']"`:n?(0,Hn._)`"/" + ${e}`:(0,Hn._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Hn.getProperty)(e).toString():"/"+RJ(e)}or.getErrorPath=Yir;function p$e(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}or.checkStrictMode=p$e});var ul=b(kJ=>{"use strict";Object.defineProperty(kJ,"__esModule",{value:!0});var no=wt(),Wir={data:new no.Name("data"),valCxt:new no.Name("valCxt"),instancePath:new no.Name("instancePath"),parentData:new no.Name("parentData"),parentDataProperty:new no.Name("parentDataProperty"),rootData:new no.Name("rootData"),dynamicAnchors:new no.Name("dynamicAnchors"),vErrors:new no.Name("vErrors"),errors:new no.Name("errors"),this:new no.Name("this"),self:new no.Name("self"),scope:new no.Name("scope"),json:new no.Name("json"),jsonPos:new no.Name("jsonPos"),jsonLen:new no.Name("jsonLen"),jsonPart:new no.Name("jsonPart")};kJ.default=Wir});var _2=b(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.extendErrors=io.resetErrorsCount=io.reportExtraError=io.reportError=io.keyword$DataError=io.keywordError=void 0;var Lr=wt(),H3=zt(),Wo=ul();io.keywordError={message:({keyword:e})=>(0,Lr.str)`must pass "${e}" keyword validation`};io.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,Lr.str)`"${e}" keyword must be ${t} ($data)`:(0,Lr.str)`"${e}" keyword is invalid ($data)`};function Xir(e,t=io.keywordError,r,n){let{it:i}=e,{gen:s,compositeRule:a,allErrors:o}=i,u=g$e(e,t,r);n??(a||o)?h$e(s,u):m$e(i,(0,Lr._)`[${u}]`)}io.reportError=Xir;function Jir(e,t=io.keywordError,r){let{it:n}=e,{gen:i,compositeRule:s,allErrors:a}=n,o=g$e(e,t,r);h$e(i,o),s||a||m$e(n,Wo.default.vErrors)}io.reportExtraError=Jir;function Zir(e,t){e.assign(Wo.default.errors,t),e.if((0,Lr._)`${Wo.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,Lr._)`${Wo.default.vErrors}.length`,t),()=>e.assign(Wo.default.vErrors,null)))}io.resetErrorsCount=Zir;function esr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",i,Wo.default.errors,o=>{e.const(a,(0,Lr._)`${Wo.default.vErrors}[${o}]`),e.if((0,Lr._)`${a}.instancePath === undefined`,()=>e.assign((0,Lr._)`${a}.instancePath`,(0,Lr.strConcat)(Wo.default.instancePath,s.errorPath))),e.assign((0,Lr._)`${a}.schemaPath`,(0,Lr.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,Lr._)`${a}.schema`,r),e.assign((0,Lr._)`${a}.data`,n))})}io.extendErrors=esr;function h$e(e,t){let r=e.const("err",t);e.if((0,Lr._)`${Wo.default.vErrors} === null`,()=>e.assign(Wo.default.vErrors,(0,Lr._)`[${r}]`),(0,Lr._)`${Wo.default.vErrors}.push(${r})`),e.code((0,Lr._)`${Wo.default.errors}++`)}function m$e(e,t){let{gen:r,validateName:n,schemaEnv:i}=e;i.$async?r.throw((0,Lr._)`new ${e.ValidationError}(${t})`):(r.assign((0,Lr._)`${n}.errors`,t),r.return(!1))}var NA={keyword:new Lr.Name("keyword"),schemaPath:new Lr.Name("schemaPath"),params:new Lr.Name("params"),propertyName:new Lr.Name("propertyName"),message:new Lr.Name("message"),schema:new Lr.Name("schema"),parentSchema:new Lr.Name("parentSchema")};function g$e(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,Lr._)`{}`:tsr(e,t,r)}function tsr(e,t,r={}){let{gen:n,it:i}=e,s=[rsr(i,r),nsr(e,r)];return isr(e,t,s),n.object(...s)}function rsr({errorPath:e},{instancePath:t}){let r=t?(0,Lr.str)`${e}${(0,H3.getErrorPath)(t,H3.Type.Str)}`:e;return[Wo.default.instancePath,(0,Lr.strConcat)(Wo.default.instancePath,r)]}function nsr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let i=n?t:(0,Lr.str)`${t}/${e}`;return r&&(i=(0,Lr.str)`${i}${(0,H3.getErrorPath)(r,H3.Type.Str)}`),[NA.schemaPath,i]}function isr(e,{params:t,message:r},n){let{keyword:i,data:s,schemaValue:a,it:o}=e,{opts:u,propertyName:c,topSchemaRef:l,schemaPath:d}=o;n.push([NA.keyword,i],[NA.params,typeof t=="function"?t(e):t||(0,Lr._)`{}`]),u.messages&&n.push([NA.message,typeof r=="function"?r(e):r]),u.verbose&&n.push([NA.schema,a],[NA.parentSchema,(0,Lr._)`${l}${d}`],[Wo.default.data,s]),c&&n.push([NA.propertyName,c])}});var _$e=b(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.boolOrEmptySchema=B1.topBoolOrEmptySchema=void 0;var ssr=_2(),asr=wt(),osr=ul(),usr={message:"boolean schema is false"};function csr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?y$e(e,!1):typeof r=="object"&&r.$async===!0?t.return(osr.default.data):(t.assign((0,asr._)`${n}.errors`,null),t.return(!0))}B1.topBoolOrEmptySchema=csr;function lsr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),y$e(e)):r.var(t,!0)}B1.boolOrEmptySchema=lsr;function y$e(e,t){let{gen:r,data:n}=e,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,ssr.reportError)(i,usr,void 0,t)}});var OJ=b($1=>{"use strict";Object.defineProperty($1,"__esModule",{value:!0});$1.getRules=$1.isJSONType=void 0;var dsr=["string","number","integer","boolean","null","object","array"],fsr=new Set(dsr);function psr(e){return typeof e=="string"&&fsr.has(e)}$1.isJSONType=psr;function hsr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}$1.getRules=hsr});var PJ=b(gg=>{"use strict";Object.defineProperty(gg,"__esModule",{value:!0});gg.shouldUseRule=gg.shouldUseGroup=gg.schemaHasRulesForType=void 0;function msr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&A$e(e,n)}gg.schemaHasRulesForType=msr;function A$e(e,t){return t.rules.some(r=>v$e(e,r))}gg.shouldUseGroup=A$e;function v$e(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}gg.shouldUseRule=v$e});var A2=b(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.reportTypeError=so.checkDataTypes=so.checkDataType=so.coerceAndCheckDataType=so.getJSONTypes=so.getSchemaTypes=so.DataType=void 0;var gsr=OJ(),ysr=PJ(),_sr=_2(),Qt=wt(),b$e=zt(),F1;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(F1||(so.DataType=F1={}));function Asr(e){let t=E$e(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}so.getSchemaTypes=Asr;function E$e(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(gsr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}so.getJSONTypes=E$e;function vsr(e,t){let{gen:r,data:n,opts:i}=e,s=bsr(t,i.coerceTypes),a=t.length>0&&!(s.length===0&&t.length===1&&(0,ysr.schemaHasRulesForType)(e,t[0]));if(a){let o=LJ(t,n,i.strictNumbers,F1.Wrong);r.if(o,()=>{s.length?Esr(e,t,s):BJ(e)})}return a}so.coerceAndCheckDataType=vsr;var S$e=new Set(["string","number","integer","boolean","null"]);function bsr(e,t){return t?e.filter(r=>S$e.has(r)||t==="array"&&r==="array"):[]}function Esr(e,t,r){let{gen:n,data:i,opts:s}=e,a=n.let("dataType",(0,Qt._)`typeof ${i}`),o=n.let("coerced",(0,Qt._)`undefined`);s.coerceTypes==="array"&&n.if((0,Qt._)`${a} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,Qt._)`${i}[0]`).assign(a,(0,Qt._)`typeof ${i}`).if(LJ(t,i,s.strictNumbers),()=>n.assign(o,i))),n.if((0,Qt._)`${o} !== undefined`);for(let c of r)(S$e.has(c)||c==="array"&&s.coerceTypes==="array")&&u(c);n.else(),BJ(e),n.endIf(),n.if((0,Qt._)`${o} !== undefined`,()=>{n.assign(i,o),Ssr(e,o)});function u(c){switch(c){case"string":n.elseIf((0,Qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Qt._)`"" + ${i}`).elseIf((0,Qt._)`${i} === null`).assign(o,(0,Qt._)`""`);return;case"number":n.elseIf((0,Qt._)`${a} == "boolean" || ${i} === null - || (${a} == "string" && ${i} && ${i} == +${i})`).assign(o,(0,Qt._)`+${i}`);return;case"integer":n.elseIf((0,Qt._)`${a} === "boolean" || ${i} === null - || (${a} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(o,(0,Qt._)`+${i}`);return;case"boolean":n.elseIf((0,Qt._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(o,!1).elseIf((0,Qt._)`${i} === "true" || ${i} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Qt._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Qt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${i} === null`).assign(o,(0,Qt._)`[${i}]`)}}}function Ssr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Qt._)`${t} !== undefined`,()=>e.assign((0,Qt._)`${t}[${r}]`,n))}function MJ(e,t,r,n=F1.Correct){let i=n===F1.Correct?Qt.operators.EQ:Qt.operators.NEQ,s;switch(e){case"null":return(0,Qt._)`${t} ${i} null`;case"array":s=(0,Qt._)`Array.isArray(${t})`;break;case"object":s=(0,Qt._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=a((0,Qt._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=a();break;default:return(0,Qt._)`typeof ${t} ${i} ${e}`}return n===F1.Correct?s:(0,Qt.not)(s);function a(o=Qt.nil){return(0,Qt.and)((0,Qt._)`typeof ${t} == "number"`,o,r?(0,Qt._)`isFinite(${t})`:Qt.nil)}}so.checkDataType=MJ;function LJ(e,t,r,n){if(e.length===1)return MJ(e[0],t,r,n);let i,s=(0,b$e.toHash)(e);if(s.array&&s.object){let a=(0,Qt._)`typeof ${t} != "object"`;i=s.null?a:(0,Qt._)`!${t} || ${a}`,delete s.null,delete s.array,delete s.object}else i=Qt.nil;s.number&&delete s.integer;for(let a in s)i=(0,Qt.and)(i,MJ(a,t,r,n));return i}so.checkDataTypes=LJ;var wsr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Qt._)`{type: ${e}}`:(0,Qt._)`{type: ${t}}`};function BJ(e){let t=Isr(e);(0,_sr.reportError)(t,wsr)}so.reportTypeError=BJ;function Isr(e){let{gen:t,data:r,schema:n}=e,i=(0,b$e.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var I$e=b(K3=>{"use strict";Object.defineProperty(K3,"__esModule",{value:!0});K3.assignDefaults=void 0;var U1=wt(),xsr=zt();function Csr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)w$e(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,s)=>w$e(e,s,i.default))}K3.assignDefaults=Csr;function w$e(e,t,r){let{gen:n,compositeRule:i,data:s,opts:a}=e;if(r===void 0)return;let o=(0,U1._)`${s}${(0,U1.getProperty)(t)}`;if(i){(0,xsr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let u=(0,U1._)`${o} === undefined`;a.useDefaults==="empty"&&(u=(0,U1._)`${u} || ${o} === null || ${o} === ""`),n.if(u,(0,U1._)`${o} = ${(0,U1.stringify)(r)}`)}});var Ta=b(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.validateUnion=xn.validateArray=xn.usePattern=xn.callValidateCode=xn.schemaProperties=xn.allSchemaProperties=xn.noPropertyInData=xn.propertyInData=xn.isOwnProperty=xn.hasPropFunc=xn.reportMissingProp=xn.checkMissingProp=xn.checkReportMissingProp=void 0;var si=wt(),$J=zt(),yg=ul(),Tsr=zt();function Nsr(e,t){let{gen:r,data:n,it:i}=e;r.if(UJ(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,si._)`${t}`},!0),e.error()})}xn.checkReportMissingProp=Nsr;function Rsr({gen:e,data:t,it:{opts:r}},n,i){return(0,si.or)(...n.map(s=>(0,si.and)(UJ(e,t,s,r.ownProperties),(0,si._)`${i} = ${s}`)))}xn.checkMissingProp=Rsr;function Dsr(e,t){e.setParams({missingProperty:t},!0),e.error()}xn.reportMissingProp=Dsr;function x$e(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,si._)`Object.prototype.hasOwnProperty`})}xn.hasPropFunc=x$e;function FJ(e,t,r){return(0,si._)`${x$e(e)}.call(${t}, ${r})`}xn.isOwnProperty=FJ;function ksr(e,t,r,n){let i=(0,si._)`${t}${(0,si.getProperty)(r)} !== undefined`;return n?(0,si._)`${i} && ${FJ(e,t,r)}`:i}xn.propertyInData=ksr;function UJ(e,t,r,n){let i=(0,si._)`${t}${(0,si.getProperty)(r)} === undefined`;return n?(0,si.or)(i,(0,si.not)(FJ(e,t,r))):i}xn.noPropertyInData=UJ;function C$e(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}xn.allSchemaProperties=C$e;function Osr(e,t){return C$e(t).filter(r=>!(0,$J.alwaysValidSchema)(e,t[r]))}xn.schemaProperties=Osr;function Psr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:a},o,u,c){let l=c?(0,si._)`${e}, ${t}, ${n}${i}`:t,d=[[yg.default.instancePath,(0,si.strConcat)(yg.default.instancePath,s)],[yg.default.parentData,a.parentData],[yg.default.parentDataProperty,a.parentDataProperty],[yg.default.rootData,yg.default.rootData]];a.opts.dynamicRef&&d.push([yg.default.dynamicAnchors,yg.default.dynamicAnchors]);let f=(0,si._)`${l}, ${r.object(...d)}`;return u!==si.nil?(0,si._)`${o}.call(${u}, ${f})`:(0,si._)`${o}(${f})`}xn.callValidateCode=Psr;var Msr=(0,si._)`new RegExp`;function Lsr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:i}=t.code,s=i(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,si._)`${i.code==="new RegExp"?Msr:(0,Tsr.useFunc)(e,i)}(${r}, ${n})`})}xn.usePattern=Lsr;function Bsr(e){let{gen:t,data:r,keyword:n,it:i}=e,s=t.name("valid");if(i.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(s,!0),a(()=>t.break()),s;function a(o){let u=t.const("len",(0,si._)`${r}.length`);t.forRange("i",0,u,c=>{e.subschema({keyword:n,dataProp:c,dataPropType:$J.Type.Num},s),t.if((0,si.not)(s),o)})}}xn.validateArray=Bsr;function $sr(e){let{gen:t,schema:r,keyword:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0,$J.alwaysValidSchema)(i,u))&&!i.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((u,c)=>{let l=e.subschema({keyword:n,schemaProp:c,compositeRule:!0},o);t.assign(a,(0,si._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,si.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}xn.validateUnion=$sr});var R$e=b(Hf=>{"use strict";Object.defineProperty(Hf,"__esModule",{value:!0});Hf.validateKeywordUsage=Hf.validSchemaType=Hf.funcKeywordCode=Hf.macroKeywordCode=void 0;var Xo=wt(),RA=ul(),Fsr=Ta(),Usr=_2();function qsr(e,t){let{gen:r,keyword:n,schema:i,parentSchema:s,it:a}=e,o=t.macro.call(a.self,i,s,a),u=N$e(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let c=r.name("valid");e.subschema({schema:o,schemaPath:Xo.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:!0},c),e.pass(c,()=>e.error(!0))}Hf.macroKeywordCode=qsr;function jsr(e,t){var r;let{gen:n,keyword:i,schema:s,parentSchema:a,$data:o,it:u}=e;Ksr(u,t);let c=!o&&t.compile?t.compile.call(u.self,s,a,u):t.validate,l=N$e(n,i,c),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&T$e(e),y(()=>e.error());else{let g=t.async?p():h();t.modifying&&T$e(e),y(()=>Hsr(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>m((0,Xo._)`await `),v=>n.assign(d,!1).if((0,Xo._)`${v} instanceof ${u.ValidationError}`,()=>n.assign(g,(0,Xo._)`${v}.errors`),()=>n.throw(v))),g}function h(){let g=(0,Xo._)`${l}.errors`;return n.assign(g,null),m(Xo.nil),g}function m(g=t.async?(0,Xo._)`await `:Xo.nil){let v=u.opts.passContext?RA.default.this:RA.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,Xo._)`${g}${(0,Fsr.callValidateCode)(e,l,v,A)}`,t.modifying)}function y(g){var v;n.if((0,Xo.not)((v=t.valid)!==null&&v!==void 0?v:d),g)}}Hf.funcKeywordCode=jsr;function T$e(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Xo._)`${n.parentData}[${n.parentDataProperty}]`))}function Hsr(e,t){let{gen:r}=e;r.if((0,Xo._)`Array.isArray(${t})`,()=>{r.assign(RA.default.vErrors,(0,Xo._)`${RA.default.vErrors} === null ? ${t} : ${RA.default.vErrors}.concat(${t})`).assign(RA.default.errors,(0,Xo._)`${RA.default.vErrors}.length`),(0,Usr.extendErrors)(e)},()=>e.error())}function Ksr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function N$e(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Xo.stringify)(r)})}function Vsr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Hf.validSchemaType=Vsr;function zsr({schema:e,opts:t,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let a=i.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${s}: ${a.join(",")}`);if(i.validateSchema&&!i.validateSchema(e[s])){let u=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Hf.validateKeywordUsage=zsr});var k$e=b(_g=>{"use strict";Object.defineProperty(_g,"__esModule",{value:!0});_g.extendSubschemaMode=_g.extendSubschemaData=_g.getSubschema=void 0;var Kf=wt(),D$e=zt();function Qsr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,Kf._)`${e.schemaPath}${(0,Kf.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,Kf._)`${e.schemaPath}${(0,Kf.getProperty)(t)}${(0,Kf.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,D$e.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:a,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}_g.getSubschema=Qsr;function Gsr(e,t,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:a}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:c,dataPathArr:l,opts:d}=t,f=o.let("data",(0,Kf._)`${t.data}${(0,Kf.getProperty)(r)}`,!0);u(f),e.errorPath=(0,Kf.str)`${c}${(0,D$e.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,Kf._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(i!==void 0){let c=i instanceof Kf.Name?i:o.let("data",i,!0);u(c),a!==void 0&&(e.propertyName=a)}s&&(e.dataTypes=s);function u(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c]}}_g.extendSubschemaData=Gsr;function Ysr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(e.compositeRule=n),i!==void 0&&(e.createErrors=i),s!==void 0&&(e.allErrors=s),e.jtdDiscriminator=t,e.jtdMetadata=r}_g.extendSubschemaMode=Ysr});var P$e=b((UTn,O$e)=>{"use strict";var Ag=O$e.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};V3(t,n,i,e,"",e)};Ag.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ag.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ag.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ag.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function V3(e,t,r,n,i,s,a,o,u,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,i,s,a,o,u,c);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Ag.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.getSchemaRefs=Tu.resolveUrl=Tu.normalizeId=Tu._getFullPath=Tu.getFullPath=Tu.inlineRef=void 0;var Xsr=zt(),Jsr=tl(),Zsr=P$e(),ear=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function tar(e,t=!0){return typeof e=="boolean"?!0:t===!0?!qJ(e):t?M$e(e)<=t:!1}Tu.inlineRef=tar;var rar=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function qJ(e){for(let t in e){if(rar.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(qJ)||typeof r=="object"&&qJ(r))return!0}return!1}function M$e(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!ear.has(r)&&(typeof e[r]=="object"&&(0,Xsr.eachItem)(e[r],n=>t+=M$e(n)),t===1/0))return 1/0}return t}function L$e(e,t="",r){r!==!1&&(t=q1(t));let n=e.parse(t);return B$e(e,n)}Tu.getFullPath=L$e;function B$e(e,t){return e.serialize(t).split("#")[0]+"#"}Tu._getFullPath=B$e;var nar=/#\/?$/;function q1(e){return e?e.replace(nar,""):""}Tu.normalizeId=q1;function iar(e,t,r){return r=q1(r),e.resolve(t,r)}Tu.resolveUrl=iar;var sar=/^[a-z_][-a-z0-9._]*$/i;function aar(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=q1(e[r]||t),s={"":i},a=L$e(n,i,!1),o={},u=new Set;return Zsr(e,{allKeys:!0},(d,f,p,h)=>{if(h===void 0)return;let m=a+f,y=s[h];typeof d[r]=="string"&&(y=g.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[f]=y;function g(A){let _=this.opts.uriResolver.resolve;if(A=q1(y?_(y,A):A),u.has(A))throw l(A);u.add(A);let E=this.refs[A];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?c(d,E.schema,A):A!==q1(m)&&(A[0]==="#"?(c(d,o[A],A),o[A]=d):this.refs[A]=m),A}function v(A){if(typeof A=="string"){if(!sar.test(A))throw new Error(`invalid anchor "${A}"`);g.call(this,`#${A}`)}}}),o;function c(d,f,p){if(f!==void 0&&!Jsr(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Tu.getSchemaRefs=aar});var j1=b(vg=>{"use strict";Object.defineProperty(vg,"__esModule",{value:!0});vg.getData=vg.KeywordCxt=vg.validateFunctionCode=void 0;var j$e=_$e(),$$e=A2(),HJ=PJ(),z3=A2(),oar=I$e(),E2=R$e(),jJ=k$e(),ct=wt(),Dt=ul(),uar=v2(),Ph=zt(),b2=_2();function car(e){if(V$e(e)&&(z$e(e),K$e(e))){far(e);return}H$e(e,()=>(0,j$e.topBoolOrEmptySchema)(e))}vg.validateFunctionCode=car;function H$e({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},s){i.code.es5?e.func(t,(0,ct._)`${Dt.default.data}, ${Dt.default.valCxt}`,n.$async,()=>{e.code((0,ct._)`"use strict"; ${F$e(r,i)}`),dar(e,i),e.code(s)}):e.func(t,(0,ct._)`${Dt.default.data}, ${lar(i)}`,n.$async,()=>e.code(F$e(r,i)).code(s))}function lar(e){return(0,ct._)`{${Dt.default.instancePath}="", ${Dt.default.parentData}, ${Dt.default.parentDataProperty}, ${Dt.default.rootData}=${Dt.default.data}${e.dynamicRef?(0,ct._)`, ${Dt.default.dynamicAnchors}={}`:ct.nil}}={}`}function dar(e,t){e.if(Dt.default.valCxt,()=>{e.var(Dt.default.instancePath,(0,ct._)`${Dt.default.valCxt}.${Dt.default.instancePath}`),e.var(Dt.default.parentData,(0,ct._)`${Dt.default.valCxt}.${Dt.default.parentData}`),e.var(Dt.default.parentDataProperty,(0,ct._)`${Dt.default.valCxt}.${Dt.default.parentDataProperty}`),e.var(Dt.default.rootData,(0,ct._)`${Dt.default.valCxt}.${Dt.default.rootData}`),t.dynamicRef&&e.var(Dt.default.dynamicAnchors,(0,ct._)`${Dt.default.valCxt}.${Dt.default.dynamicAnchors}`)},()=>{e.var(Dt.default.instancePath,(0,ct._)`""`),e.var(Dt.default.parentData,(0,ct._)`undefined`),e.var(Dt.default.parentDataProperty,(0,ct._)`undefined`),e.var(Dt.default.rootData,Dt.default.data),t.dynamicRef&&e.var(Dt.default.dynamicAnchors,(0,ct._)`{}`)})}function far(e){let{schema:t,opts:r,gen:n}=e;H$e(e,()=>{r.$comment&&t.$comment&&G$e(e),yar(e),n.let(Dt.default.vErrors,null),n.let(Dt.default.errors,0),r.unevaluated&&par(e),Q$e(e),bar(e)})}function par(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,ct._)`${r}.evaluated`),t.if((0,ct._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,ct._)`${e.evaluated}.props`,(0,ct._)`undefined`)),t.if((0,ct._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,ct._)`${e.evaluated}.items`,(0,ct._)`undefined`))}function F$e(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,ct._)`/*# sourceURL=${r} */`:ct.nil}function har(e,t){if(V$e(e)&&(z$e(e),K$e(e))){mar(e,t);return}(0,j$e.boolOrEmptySchema)(e,t)}function K$e({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function V$e(e){return typeof e.schema!="boolean"}function mar(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&G$e(e),_ar(e),Aar(e);let s=n.const("_errs",Dt.default.errors);Q$e(e,s),n.var(t,(0,ct._)`${s} === ${Dt.default.errors}`)}function z$e(e){(0,Ph.checkUnknownRules)(e),gar(e)}function Q$e(e,t){if(e.opts.jtd)return U$e(e,[],!1,t);let r=(0,$$e.getSchemaTypes)(e.schema),n=(0,$$e.coerceAndCheckDataType)(e,r);U$e(e,r,!n,t)}function gar(e){let{schema:t,errSchemaPath:r,opts:n,self:i}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,Ph.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function yar(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ph.checkStrictMode)(e,"default is ignored in the schema root")}function _ar(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,uar.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function Aar(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function G$e({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)e.code((0,ct._)`${Dt.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let a=(0,ct.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,ct._)`${Dt.default.self}.opts.$comment(${s}, ${a}, ${o}.schema)`)}}function bar(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=e;r.$async?t.if((0,ct._)`${Dt.default.errors} === 0`,()=>t.return(Dt.default.data),()=>t.throw((0,ct._)`new ${i}(${Dt.default.vErrors})`)):(t.assign((0,ct._)`${n}.errors`,Dt.default.vErrors),s.unevaluated&&Ear(e),t.return((0,ct._)`${Dt.default.errors} === 0`))}function Ear({gen:e,evaluated:t,props:r,items:n}){r instanceof ct.Name&&e.assign((0,ct._)`${t}.props`,r),n instanceof ct.Name&&e.assign((0,ct._)`${t}.items`,n)}function U$e(e,t,r,n){let{gen:i,schema:s,data:a,allErrors:o,opts:u,self:c}=e,{RULES:l}=c;if(s.$ref&&(u.ignoreKeywordsWithRef||!(0,Ph.schemaHasRulesButRef)(s,l))){i.block(()=>W$e(e,"$ref",l.all.$ref.definition));return}u.jtd||Sar(e,t),i.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,HJ.shouldUseGroup)(s,f)&&(f.type?(i.if((0,z3.checkDataType)(f.type,a,u.strictNumbers)),q$e(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,z3.reportTypeError)(e)),i.endIf()):q$e(e,f),o||i.if((0,ct._)`${Dt.default.errors} === ${n||0}`))}}function q$e(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,oar.assignDefaults)(e,t.type),r.block(()=>{for(let s of t.rules)(0,HJ.shouldUseRule)(n,s)&&W$e(e,s.keyword,s.definition,t.type)})}function Sar(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(war(e,t),e.opts.allowUnionTypes||Iar(e,t),xar(e,e.dataTypes))}function war(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{Y$e(e.dataTypes,r)||KJ(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),Tar(e,t)}}function Iar(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&KJ(e,"use allowUnionTypes to allow union type keyword")}function xar(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,HJ.shouldUseRule)(e.schema,i)){let{type:s}=i.definition;s.length&&!s.some(a=>Car(t,a))&&KJ(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Car(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function Y$e(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function Tar(e,t){let r=[];for(let n of e.dataTypes)Y$e(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function KJ(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Ph.checkStrictMode)(e,t,e.opts.strictTypes)}var Q3=class{constructor(t,r,n){if((0,E2.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ph.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",X$e(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,E2.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",Dt.default.errors))}result(t,r,n){this.failResult((0,ct.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,ct.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,ct._)`${r} !== undefined && (${(0,ct.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?b2.reportExtraError:b2.reportError)(this,this.def.error,r)}$dataError(){(0,b2.reportError)(this,this.def.$dataError||b2.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,b2.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=ct.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=ct.nil,r=ct.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:a}=this;n.if((0,ct.or)((0,ct._)`${i} === undefined`,r)),t!==ct.nil&&n.assign(t,!0),(s.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==ct.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,ct.or)(a(),o());function a(){if(n.length){if(!(r instanceof ct.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return(0,ct._)`${(0,z3.checkDataTypes)(u,r,s.opts.strictNumbers,z3.DataType.Wrong)}`}return ct.nil}function o(){if(i.validateSchema){let u=t.scopeValue("validate$data",{ref:i.validateSchema});return(0,ct._)`!${u}(${r})`}return ct.nil}}subschema(t,r){let n=(0,jJ.getSubschema)(this.it,t);(0,jJ.extendSubschemaData)(n,this.it,t),(0,jJ.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return har(i,r),i}mergeEvaluated(t,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=Ph.mergeEvaluated.props(i,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=Ph.mergeEvaluated.items(i,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(t,ct.Name)),!0}};vg.KeywordCxt=Q3;function W$e(e,t,r,n){let i=new Q3(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,E2.funcKeywordCode)(i,r):"macro"in r?(0,E2.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,E2.funcKeywordCode)(i,r)}var Nar=/^\/(?:[^~]|~0|~1)*$/,Rar=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function X$e(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,s;if(e==="")return Dt.default.rootData;if(e[0]==="/"){if(!Nar.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,s=Dt.default.rootData}else{let c=Rar.exec(e);if(!c)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+c[1];if(i=c[2],i==="#"){if(l>=t)throw new Error(u("property/index",l));return n[t-l]}if(l>t)throw new Error(u("data",l));if(s=r[t-l],!i)return s}let a=s,o=i.split("/");for(let c of o)c&&(s=(0,ct._)`${s}${(0,ct.getProperty)((0,Ph.unescapeJsonPointer)(c))}`,a=(0,ct._)`${a} && ${s}`);return a;function u(c,l){return`Cannot access ${c} ${l} levels up, current level is ${t}`}}vg.getData=X$e});var S2=b(zJ=>{"use strict";Object.defineProperty(zJ,"__esModule",{value:!0});var VJ=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};zJ.default=VJ});var Mh=b(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});var QJ=v2(),GJ=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,QJ.resolveUrl)(t,r,n),this.missingSchema=(0,QJ.normalizeId)((0,QJ.getFullPath)(t,this.missingRef))}};YJ.default=GJ});var kA=b(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});cl.resolveSchema=cl.getCompilingSchema=cl.resolveRef=cl.compileSchema=cl.SchemaEnv=void 0;var vd=wt(),Dar=S2(),DA=ul(),bd=v2(),J$e=zt(),kar=j1(),H1=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,bd.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};cl.SchemaEnv=H1;function XJ(e){let t=Z$e.call(this,e);if(t)return t;let r=(0,bd.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,a=new vd.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),o;e.$async&&(o=a.scopeValue("Error",{ref:Dar.default,code:(0,vd._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");e.validateName=u;let c={gen:a,allErrors:this.opts.allErrors,data:DA.default.data,parentData:DA.default.parentData,parentDataProperty:DA.default.parentDataProperty,dataNames:[DA.default.data],dataPathArr:[vd.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,vd.stringify)(e.schema)}:{ref:e.schema}),validateName:u,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:vd.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,vd._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,kar.validateFunctionCode)(c),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(DA.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let p=new Function(`${DA.default.self}`,`${DA.default.scope}`,l)(this,this.scope.get());if(this.scope.value(u,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:u,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:h,items:m}=c;p.evaluated={props:h instanceof vd.Name?void 0:h,items:m instanceof vd.Name?void 0:m,dynamicProps:h instanceof vd.Name,dynamicItems:m instanceof vd.Name},p.source&&(p.source.evaluated=(0,vd.stringify)(p.evaluated))}return e.validate=p,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}cl.compileSchema=XJ;function Oar(e,t,r){var n;r=(0,bd.resolveUrl)(this.opts.uriResolver,t,r);let i=e.refs[r];if(i)return i;let s=Lar.call(this,e,r);if(s===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(s=new H1({schema:a,schemaId:o,root:e,baseId:t}))}if(s!==void 0)return e.refs[r]=Par.call(this,s)}cl.resolveRef=Oar;function Par(e){return(0,bd.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:XJ.call(this,e)}function Z$e(e){for(let t of this._compilations)if(Mar(t,e))return t}cl.getCompilingSchema=Z$e;function Mar(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function Lar(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||G3.call(this,e,t)}function G3(e,t){let r=this.opts.uriResolver.parse(t),n=(0,bd._getFullPath)(this.opts.uriResolver,r),i=(0,bd.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===i)return WJ.call(this,r,e);let s=(0,bd.normalizeId)(n),a=this.refs[s]||this.schemas[s];if(typeof a=="string"){let o=G3.call(this,e,a);return typeof o?.schema!="object"?void 0:WJ.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||XJ.call(this,a),s===(0,bd.normalizeId)(t)){let{schema:o}=a,{schemaId:u}=this.opts,c=o[u];return c&&(i=(0,bd.resolveUrl)(this.opts.uriResolver,i,c)),new H1({schema:o,schemaId:u,root:e,baseId:i})}return WJ.call(this,r,a)}}cl.resolveSchema=G3;var Bar=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function WJ(e,{baseId:t,schema:r,root:n}){var i;if(((i=e.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0,J$e.unescapeFragment)(o)];if(u===void 0)return;r=u;let c=typeof r=="object"&&r[this.opts.schemaId];!Bar.has(o)&&c&&(t=(0,bd.resolveUrl)(this.opts.uriResolver,t,c))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,J$e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,bd.resolveUrl)(this.opts.uriResolver,t,r.$ref);s=G3.call(this,n,o)}let{schemaId:a}=this.opts;if(s=s||new H1({schema:r,schemaId:a,root:n,baseId:t}),s.schema!==s.root.schema)return s}});var e6e=b((zTn,$ar)=>{$ar.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var ZJ=b((QTn,i6e)=>{"use strict";var Far=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),r6e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function JJ(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var Uar=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function t6e(e){return e.length=0,!0}function qar(e,t,r){if(e.length){let n=JJ(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function jar(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,a=!1,o=qar;for(let u=0;u7){r.error=!0;break}u>0&&e[u-1]===":"&&(s=!0),n.push(":");continue}else if(c==="%"){if(!o(i,n,r))break;o=t6e}else{i.push(c);continue}}return i.length&&(o===t6e?r.zone=i.join(""):a?n.push(i.join("")):n.push(JJ(i))),r.address=n.join(""),r}function n6e(e){if(Har(e,":")<2)return{host:e,isIPV6:!1};let t=jar(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function Har(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:Qar}=ZJ(),Gar=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Yar=["http","https","ws","wss","urn","urn:uuid"];function War(e){return Yar.indexOf(e)!==-1}function eZ(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function s6e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function a6e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function Xar(e){return e.secure=eZ(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Jar(e){if((e.port===(eZ(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function Zar(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Gar);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let i=`${n}:${t.nid||e.nid}`,s=tZ(i);e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function eor(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),i=`${r}:${t.nid||n}`,s=tZ(i);s&&(e=s.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function tor(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Qar(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function ror(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var o6e={scheme:"http",domainHost:!0,parse:s6e,serialize:a6e},nor={scheme:"https",domainHost:o6e.domainHost,parse:s6e,serialize:a6e},Y3={scheme:"ws",domainHost:!0,parse:Xar,serialize:Jar},ior={scheme:"wss",domainHost:Y3.domainHost,parse:Y3.parse,serialize:Y3.serialize},sor={scheme:"urn",parse:Zar,serialize:eor,skipNormalize:!0},aor={scheme:"urn:uuid",parse:tor,serialize:ror,skipNormalize:!0},W3={http:o6e,https:nor,ws:Y3,wss:ior,urn:sor,"urn:uuid":aor};Object.setPrototypeOf(W3,null);function tZ(e){return e&&(W3[e]||W3[e.toLowerCase()])||void 0}u6e.exports={wsIsSecure:eZ,SCHEMES:W3,isValidSchemeName:War,getSchemeHandler:tZ}});var f6e=b((YTn,J3)=>{"use strict";var{normalizeIPv6:oor,removeDotSegments:w2,recomposeAuthority:uor,normalizeComponentEncoding:X3,isIPv4:cor,nonSimpleDomain:lor}=ZJ(),{SCHEMES:dor,getSchemeHandler:l6e}=c6e();function por(e,t){return typeof e=="string"?e=Vf(Lh(e,t),t):typeof e=="object"&&(e=Lh(Vf(e,t),t)),e}function hor(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=d6e(Lh(e,n),Lh(t,n),n,!0);return n.skipEscape=!0,Vf(i,n)}function d6e(e,t,r,n){let i={};return n||(e=Lh(Vf(e,r),r),t=Lh(Vf(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(i.scheme=t.scheme,i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=w2(t.path||""),i.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=w2(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=w2(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?i.path="/"+t.path:e.path?i.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:i.path=t.path,i.path=w2(i.path)),i.query=t.query):(i.path=e.path,t.query!==void 0?i.query=t.query:i.query=e.query),i.userinfo=e.userinfo,i.host=e.host,i.port=e.port),i.scheme=e.scheme),i.fragment=t.fragment,i}function mor(e,t,r){return typeof e=="string"?(e=unescape(e),e=Vf(X3(Lh(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Vf(X3(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Vf(X3(Lh(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Vf(X3(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Vf(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),i=[],s=l6e(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let a=uor(r);if(a!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(a),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(o=w2(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),i.push(o)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var gor=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Lh(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let s=e.match(gor);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(cor(n.host)===!1){let u=oor(n.host);n.host=u.host.toLowerCase(),i=u.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=l6e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&lor(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var rZ={SCHEMES:dor,normalize:por,resolve:hor,resolveComponent:d6e,equal:mor,serialize:Vf,parse:Lh};J3.exports=rZ;J3.exports.default=rZ;J3.exports.fastUri=rZ});var h6e=b(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});var p6e=f6e();p6e.code='require("ajv/dist/runtime/uri").default';nZ.default=p6e});var aZ=b(Na=>{"use strict";Object.defineProperty(Na,"__esModule",{value:!0});Na.CodeGen=Na.Name=Na.nil=Na.stringify=Na.str=Na._=Na.KeywordCxt=void 0;var yor=j1();Object.defineProperty(Na,"KeywordCxt",{enumerable:!0,get:function(){return yor.KeywordCxt}});var K1=wt();Object.defineProperty(Na,"_",{enumerable:!0,get:function(){return K1._}});Object.defineProperty(Na,"str",{enumerable:!0,get:function(){return K1.str}});Object.defineProperty(Na,"stringify",{enumerable:!0,get:function(){return K1.stringify}});Object.defineProperty(Na,"nil",{enumerable:!0,get:function(){return K1.nil}});Object.defineProperty(Na,"Name",{enumerable:!0,get:function(){return K1.Name}});Object.defineProperty(Na,"CodeGen",{enumerable:!0,get:function(){return K1.CodeGen}});var _or=S2(),A6e=Mh(),Aor=OJ(),I2=kA(),vor=wt(),x2=v2(),Z3=A2(),sZ=zt(),m6e=e6e(),bor=h6e(),v6e=(e,t)=>new RegExp(e,t);v6e.code="new RegExp";var Eor=["removeAdditional","useDefaults","coerceTypes"],Sor=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),wor={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},Ior={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},g6e=200;function xor(e){var t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v,A,_,E,S,C,I,N;let T=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,O=k===!0||k===void 0?1:k||0,P=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:v6e,$=(i=e.uriResolver)!==null&&i!==void 0?i:bor.default;return{strictSchema:(a=(s=e.strictSchema)!==null&&s!==void 0?s:T)!==null&&a!==void 0?a:!0,strictNumbers:(u=(o=e.strictNumbers)!==null&&o!==void 0?o:T)!==null&&u!==void 0?u:!0,strictTypes:(l=(c=e.strictTypes)!==null&&c!==void 0?c:T)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:T)!==null&&f!==void 0?f:"log",strictRequired:(h=(p=e.strictRequired)!==null&&p!==void 0?p:T)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:O,regExp:P}:{optimize:O,regExp:P},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:g6e,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:g6e,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(v=e.messages)!==null&&v!==void 0?v:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(_=e.schemaId)!==null&&_!==void 0?_:"$id",addUsedSchema:(E=e.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(S=e.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(C=e.validateFormats)!==null&&C!==void 0?C:!0,unicodeRegExp:(I=e.unicodeRegExp)!==null&&I!==void 0?I:!0,int32range:(N=e.int32range)!==null&&N!==void 0?N:!0,uriResolver:$}}var C2=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...xor(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new vor.ValueScope({scope:{},prefixes:Sor,es5:r,lines:n}),this.logger=kor(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,Aor.getRules)(),y6e.call(this,wor,t,"NOT SUPPORTED"),y6e.call(this,Ior,t,"DEPRECATED","warn"),this._metaOpts=Ror.call(this),t.formats&&Tor.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&Nor.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),Cor.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=m6e;n==="id"&&(i={...m6e},i.id=i.$id,delete i.$id),r&&t&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,t,r);async function i(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await i.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof A6e.default))throw d;return o.call(this,d),await u.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function u(l){let d=await c.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function c(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,i=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,i);return this}let s;if(typeof t=="object"){let{schemaId:a}=this.opts;if(s=t[a],s!==void 0&&typeof s!="string")throw new Error(`schema ${a} must be string`)}return r=(0,x2.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,i,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,t);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(t){let r;for(;typeof(r=_6e.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new I2.SchemaEnv({schema:{},schemaId:n});if(r=I2.resolveSchema.call(this,i,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=_6e.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,x2.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Por.call(this,n,r),!r)return(0,sZ.eachItem)(n,s=>iZ.call(this,s)),this;Lor.call(this,r);let i={...r,type:(0,Z3.getJSONTypes)(r.type),schemaType:(0,Z3.getJSONTypes)(r.schemaType)};return(0,sZ.eachItem)(n,i.type.length===0?s=>iZ.call(this,s,i):s=>i.type.forEach(a=>iZ.call(this,s,i,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===t);i>=0&&n.rules.splice(i,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let i of r){let s=i.split("/").slice(1),a=t;for(let o of s)a=a[o];for(let o in n){let u=n[o];if(typeof u!="object")continue;let{$data:c}=u.definition,l=a[o];c&&l&&(a[o]=b6e(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let i=t[n];(!r||r.test(n))&&(typeof i=="string"?delete t[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete t[n]))}}_addSchema(t,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(t);if(u!==void 0)return u;n=(0,x2.normalizeId)(a||n);let c=x2.getSchemaRefs.call(this,t,n);return u=new I2.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:c}),this._cache.set(u.schema,u),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),i&&this.validateSchema(t,!0),u}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):I2.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{I2.compileSchema.call(this,t)}finally{this.opts=r}}};C2.ValidationError=_or.default;C2.MissingRefError=A6e.default;Na.default=C2;function y6e(e,t,r,n="error"){for(let i in e){let s=i;s in t&&this.logger[n](`${r}: option ${i}. ${e[s]}`)}}function _6e(e){return e=(0,x2.normalizeId)(e),this.schemas[e]||this.refs[e]}function Cor(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function Tor(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function Nor(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function Ror(){let e={...this.opts};for(let t of Eor)delete e[t];return e}var Dor={log(){},warn(){},error(){}};function kor(e){if(e===!1)return Dor;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var Oor=/^[a-z_$][a-z0-9_$:-]*$/i;function Por(e,t){let{RULES:r}=this;if((0,sZ.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Oor.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function iZ(e,t,r){var n;let i=t?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,a=i?s.post:s.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},s.rules.push(a)),s.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,Z3.getJSONTypes)(t.type),schemaType:(0,Z3.getJSONTypes)(t.schemaType)}};t.before?Mor.call(this,a,o,t.before):a.rules.push(o),s.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u))}function Mor(e,t,r){let n=e.rules.findIndex(i=>i.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function Lor(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=b6e(t)),e.validateSchema=this.compile(t,!0))}var Bor={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function b6e(e){return{anyOf:[e,Bor]}}});var E6e=b(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});var $or={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};oZ.default=$or});var uZ=b(OA=>{"use strict";Object.defineProperty(OA,"__esModule",{value:!0});OA.callRef=OA.getValidate=void 0;var For=Mh(),S6e=Ta(),Nu=wt(),V1=ul(),w6e=kA(),e$=zt(),Uor={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:i,schemaEnv:s,validateName:a,opts:o,self:u}=n,{root:c}=s;if((r==="#"||r==="#/")&&i===c.baseId)return d();let l=w6e.resolveRef.call(u,c,i,r);if(l===void 0)throw new For.default(n.opts.uriResolver,i,r);if(l instanceof w6e.SchemaEnv)return f(l);return p(l);function d(){if(s===c)return t$(e,a,s,s.$async);let h=t.scopeValue("root",{ref:c});return t$(e,(0,Nu._)`${h}.validate`,c,c.$async)}function f(h){let m=I6e(e,h);t$(e,m,h,h.$async)}function p(h){let m=t.scopeValue("schema",o.code.source===!0?{ref:h,code:(0,Nu.stringify)(h)}:{ref:h}),y=t.name("valid"),g=e.subschema({schema:h,dataTypes:[],schemaPath:Nu.nil,topSchemaRef:m,errSchemaPath:r},y);e.mergeEvaluated(g),e.ok(y)}}};function I6e(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Nu._)`${r.scopeValue("wrapper",{ref:t})}.validate`}OA.getValidate=I6e;function t$(e,t,r,n){let{gen:i,it:s}=e,{allErrors:a,schemaEnv:o,opts:u}=s,c=u.passContext?V1.default.this:Nu.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let h=i.let("valid");i.try(()=>{i.code((0,Nu._)`await ${(0,S6e.callValidateCode)(e,t,c)}`),p(t),a||i.assign(h,!0)},m=>{i.if((0,Nu._)`!(${m} instanceof ${s.ValidationError})`,()=>i.throw(m)),f(m),a||i.assign(h,!1)}),e.ok(h)}function d(){e.result((0,S6e.callValidateCode)(e,t,c),()=>p(t),()=>f(t))}function f(h){let m=(0,Nu._)`${h}.errors`;i.assign(V1.default.vErrors,(0,Nu._)`${V1.default.vErrors} === null ? ${m} : ${V1.default.vErrors}.concat(${m})`),i.assign(V1.default.errors,(0,Nu._)`${V1.default.vErrors}.length`)}function p(h){var m;if(!s.opts.unevaluated)return;let y=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(s.props=e$.mergeEvaluated.props(i,y.props,s.props));else{let g=i.var("props",(0,Nu._)`${h}.evaluated.props`);s.props=e$.mergeEvaluated.props(i,g,s.props,Nu.Name)}if(s.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(s.items=e$.mergeEvaluated.items(i,y.items,s.items));else{let g=i.var("items",(0,Nu._)`${h}.evaluated.items`);s.items=e$.mergeEvaluated.items(i,g,s.items,Nu.Name)}}}OA.callRef=t$;OA.default=Uor});var x6e=b(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});var qor=E6e(),jor=uZ(),Hor=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",qor.default,jor.default];cZ.default=Hor});var C6e=b(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});var r$=wt(),bg=r$.operators,n$={maximum:{okStr:"<=",ok:bg.LTE,fail:bg.GT},minimum:{okStr:">=",ok:bg.GTE,fail:bg.LT},exclusiveMaximum:{okStr:"<",ok:bg.LT,fail:bg.GTE},exclusiveMinimum:{okStr:">",ok:bg.GT,fail:bg.LTE}},Kor={message:({keyword:e,schemaCode:t})=>(0,r$.str)`must be ${n$[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,r$._)`{comparison: ${n$[e].okStr}, limit: ${t}}`},Vor={keyword:Object.keys(n$),type:"number",schemaType:"number",$data:!0,error:Kor,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,r$._)`${r} ${n$[t].fail} ${n} || isNaN(${r})`)}};lZ.default=Vor});var T6e=b(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});var T2=wt(),zor={message:({schemaCode:e})=>(0,T2.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,T2._)`{multipleOf: ${e}}`},Qor={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:zor,code(e){let{gen:t,data:r,schemaCode:n,it:i}=e,s=i.opts.multipleOfPrecision,a=t.let("res"),o=s?(0,T2._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${s}`:(0,T2._)`${a} !== parseInt(${a})`;e.fail$data((0,T2._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};dZ.default=Qor});var R6e=b(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});function N6e(e){let t=e.length,r=0,n=0,i;for(;n=55296&&i<=56319&&n{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});var PA=wt(),Gor=zt(),Yor=R6e(),Wor={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,PA.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,PA._)`{limit: ${e}}`},Xor={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Wor,code(e){let{keyword:t,data:r,schemaCode:n,it:i}=e,s=t==="maxLength"?PA.operators.GT:PA.operators.LT,a=i.opts.unicode===!1?(0,PA._)`${r}.length`:(0,PA._)`${(0,Gor.useFunc)(e.gen,Yor.default)}(${r})`;e.fail$data((0,PA._)`${a} ${s} ${n}`)}};pZ.default=Xor});var k6e=b(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});var Jor=Ta(),Zor=zt(),z1=wt(),eur={message:({schemaCode:e})=>(0,z1.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,z1._)`{pattern: ${e}}`},tur={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:eur,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:s,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:u}=a.opts.code,c=u.code==="new RegExp"?(0,z1._)`new RegExp`:(0,Zor.useFunc)(t,u),l=t.let("valid");t.try(()=>t.assign(l,(0,z1._)`${c}(${s}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,z1._)`!${l}`)}else{let u=(0,Jor.usePattern)(e,i);e.fail$data((0,z1._)`!${u}.test(${r})`)}}};hZ.default=tur});var O6e=b(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});var N2=wt(),rur={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,N2.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,N2._)`{limit: ${e}}`},nur={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:rur,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxProperties"?N2.operators.GT:N2.operators.LT;e.fail$data((0,N2._)`Object.keys(${r}).length ${i} ${n}`)}};mZ.default=nur});var P6e=b(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});var R2=Ta(),D2=wt(),iur=zt(),sur={message:({params:{missingProperty:e}})=>(0,D2.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,D2._)`{missingProperty: ${e}}`},aur={keyword:"required",type:"object",schemaType:"array",$data:!0,error:sur,code(e){let{gen:t,schema:r,schemaCode:n,data:i,$data:s,it:a}=e,{opts:o}=a;if(!s&&r.length===0)return;let u=r.length>=o.loopRequired;if(a.allErrors?c():l(),o.strictRequired){let p=e.parentSchema.properties,{definedProperties:h}=e.it;for(let m of r)if(p?.[m]===void 0&&!h.has(m)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${m}" is not defined at "${y}" (strictRequired)`;(0,iur.checkStrictMode)(a,g,a.opts.strictRequired)}}function c(){if(u||s)e.block$data(D2.nil,d);else for(let p of r)(0,R2.checkReportMissingProp)(e,p)}function l(){let p=t.let("missing");if(u||s){let h=t.let("valid",!0);e.block$data(h,()=>f(p,h)),e.ok(h)}else t.if((0,R2.checkMissingProp)(e,r,p)),(0,R2.reportMissingProp)(e,p),t.else()}function d(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,R2.noPropertyInData)(t,i,p,o.ownProperties),()=>e.error())})}function f(p,h){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(h,(0,R2.propertyInData)(t,i,p,o.ownProperties)),t.if((0,D2.not)(h),()=>{e.error(),t.break()})},D2.nil)}}};gZ.default=aur});var M6e=b(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});var k2=wt(),our={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,k2.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,k2._)`{limit: ${e}}`},uur={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:our,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxItems"?k2.operators.GT:k2.operators.LT;e.fail$data((0,k2._)`${r}.length ${i} ${n}`)}};yZ.default=uur});var i$=b(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});var L6e=tl();L6e.code='require("ajv/dist/runtime/equal").default';_Z.default=L6e});var B6e=b(vZ=>{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});var AZ=A2(),Ra=wt(),cur=zt(),lur=i$(),dur={message:({params:{i:e,j:t}})=>(0,Ra.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Ra._)`{i: ${e}, j: ${t}}`},fur={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:dur,code(e){let{gen:t,data:r,$data:n,schema:i,parentSchema:s,schemaCode:a,it:o}=e;if(!n&&!i)return;let u=t.let("valid"),c=s.items?(0,AZ.getSchemaTypes)(s.items):[];e.block$data(u,l,(0,Ra._)`${a} === false`),e.ok(u);function l(){let h=t.let("i",(0,Ra._)`${r}.length`),m=t.let("j");e.setParams({i:h,j:m}),t.assign(u,!0),t.if((0,Ra._)`${h} > 1`,()=>(d()?f:p)(h,m))}function d(){return c.length>0&&!c.some(h=>h==="object"||h==="array")}function f(h,m){let y=t.name("item"),g=(0,AZ.checkDataTypes)(c,y,o.opts.strictNumbers,AZ.DataType.Wrong),v=t.const("indices",(0,Ra._)`{}`);t.for((0,Ra._)`;${h}--;`,()=>{t.let(y,(0,Ra._)`${r}[${h}]`),t.if(g,(0,Ra._)`continue`),c.length>1&&t.if((0,Ra._)`typeof ${y} == "string"`,(0,Ra._)`${y} += "_"`),t.if((0,Ra._)`typeof ${v}[${y}] == "number"`,()=>{t.assign(m,(0,Ra._)`${v}[${y}]`),e.error(),t.assign(u,!1).break()}).code((0,Ra._)`${v}[${y}] = ${h}`)})}function p(h,m){let y=(0,cur.useFunc)(t,lur.default),g=t.name("outer");t.label(g).for((0,Ra._)`;${h}--;`,()=>t.for((0,Ra._)`${m} = ${h}; ${m}--;`,()=>t.if((0,Ra._)`${y}(${r}[${h}], ${r}[${m}])`,()=>{e.error(),t.assign(u,!1).break(g)})))}}};vZ.default=fur});var $6e=b(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});var bZ=wt(),pur=zt(),hur=i$(),mur={message:"must be equal to constant",params:({schemaCode:e})=>(0,bZ._)`{allowedValue: ${e}}`},gur={keyword:"const",$data:!0,error:mur,code(e){let{gen:t,data:r,$data:n,schemaCode:i,schema:s}=e;n||s&&typeof s=="object"?e.fail$data((0,bZ._)`!${(0,pur.useFunc)(t,hur.default)}(${r}, ${i})`):e.fail((0,bZ._)`${s} !== ${r}`)}};EZ.default=gur});var F6e=b(SZ=>{"use strict";Object.defineProperty(SZ,"__esModule",{value:!0});var O2=wt(),yur=zt(),_ur=i$(),Aur={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,O2._)`{allowedValues: ${e}}`},vur={keyword:"enum",schemaType:"array",$data:!0,error:Aur,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:s,it:a}=e;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let o=i.length>=a.opts.loopEnum,u,c=()=>u??(u=(0,yur.useFunc)(t,_ur.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=t.const("vSchema",s);l=(0,O2.or)(...i.map((h,m)=>f(p,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,p=>t.if((0,O2._)`${c()}(${r}, ${p})`,()=>t.assign(l,!0).break()))}function f(p,h){let m=i[h];return typeof m=="object"&&m!==null?(0,O2._)`${c()}(${r}, ${p}[${h}])`:(0,O2._)`${r} === ${m}`}}};SZ.default=vur});var U6e=b(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});var bur=C6e(),Eur=T6e(),Sur=D6e(),wur=k6e(),Iur=O6e(),xur=P6e(),Cur=M6e(),Tur=B6e(),Nur=$6e(),Rur=F6e(),Dur=[bur.default,Eur.default,Sur.default,wur.default,Iur.default,xur.default,Cur.default,Tur.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Nur.default,Rur.default];wZ.default=Dur});var xZ=b(P2=>{"use strict";Object.defineProperty(P2,"__esModule",{value:!0});P2.validateAdditionalItems=void 0;var MA=wt(),IZ=zt(),kur={message:({params:{len:e}})=>(0,MA.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,MA._)`{limit: ${e}}`},Our={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:kur,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,IZ.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}q6e(e,n)}};function q6e(e,t){let{gen:r,schema:n,data:i,keyword:s,it:a}=e;a.items=!0;let o=r.const("len",(0,MA._)`${i}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,MA._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,IZ.alwaysValidSchema)(a,n)){let c=r.var("valid",(0,MA._)`${o} <= ${t.length}`);r.if((0,MA.not)(c),()=>u(c)),e.ok(c)}function u(c){r.forRange("i",t.length,o,l=>{e.subschema({keyword:s,dataProp:l,dataPropType:IZ.Type.Num},c),a.allErrors||r.if((0,MA.not)(c),()=>r.break())})}}P2.validateAdditionalItems=q6e;P2.default=Our});var CZ=b(M2=>{"use strict";Object.defineProperty(M2,"__esModule",{value:!0});M2.validateTuple=void 0;var j6e=wt(),s$=zt(),Pur=Ta(),Mur={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return H6e(e,"additionalItems",t);r.items=!0,!(0,s$.alwaysValidSchema)(r,t)&&e.ok((0,Pur.validateArray)(e))}};function H6e(e,t,r=e.schema){let{gen:n,parentSchema:i,data:s,keyword:a,it:o}=e;l(i),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=s$.mergeEvaluated.items(n,r.length,o.items));let u=n.name("valid"),c=n.const("len",(0,j6e._)`${s}.length`);r.forEach((d,f)=>{(0,s$.alwaysValidSchema)(o,d)||(n.if((0,j6e._)`${c} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},u)),e.ok(u))});function l(d){let{opts:f,errSchemaPath:p}=o,h=r.length,m=h===d.minItems&&(h===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let y=`"${a}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,s$.checkStrictMode)(o,y,f.strictTuples)}}}M2.validateTuple=H6e;M2.default=Mur});var K6e=b(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});var Lur=CZ(),Bur={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,Lur.validateTuple)(e,"items")};TZ.default=Bur});var z6e=b(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});var V6e=wt(),$ur=zt(),Fur=Ta(),Uur=xZ(),qur={message:({params:{len:e}})=>(0,V6e.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,V6e._)`{limit: ${e}}`},jur={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:qur,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,$ur.alwaysValidSchema)(n,t)&&(i?(0,Uur.validateAdditionalItems)(e,i):e.ok((0,Fur.validateArray)(e)))}};NZ.default=jur});var Q6e=b(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});var ll=wt(),a$=zt(),Hur={message:({params:{min:e,max:t}})=>t===void 0?(0,ll.str)`must contain at least ${e} valid item(s)`:(0,ll.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,ll._)`{minContains: ${e}}`:(0,ll._)`{minContains: ${e}, maxContains: ${t}}`},Kur={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Hur,code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:s}=e,a,o,{minContains:u,maxContains:c}=n;s.opts.next?(a=u===void 0?1:u,o=c):a=1;let l=t.const("len",(0,ll._)`${i}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,a$.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,a$.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,a$.alwaysValidSchema)(s,r)){let m=(0,ll._)`${l} >= ${a}`;o!==void 0&&(m=(0,ll._)`${m} && ${l} <= ${o}`),e.pass(m);return}s.items=!0;let d=t.name("valid");o===void 0&&a===1?p(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,ll._)`${i}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),y=t.let("count",0);p(m,()=>t.if(m,()=>h(y)))}function p(m,y){t.forRange("i",0,l,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:a$.Type.Num,compositeRule:!0},m),y()})}function h(m){t.code((0,ll._)`${m}++`),o===void 0?t.if((0,ll._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,ll._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,ll._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};RZ.default=Kur});var W6e=b(zf=>{"use strict";Object.defineProperty(zf,"__esModule",{value:!0});zf.validateSchemaDeps=zf.validatePropertyDeps=zf.error=void 0;var DZ=wt(),Vur=zt(),L2=Ta();zf.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,DZ.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,DZ._)`{property: ${e}, + `),s}tI.exports=bse;tI.exports.default=bse;tI.exports.build=bse;tI.exports.validLargeArrayMechanisms=GVe;tI.exports.restore=function({code:e,validator:t,serializer:r}){return Function.apply(null,["validator","serializer",e]).apply(null,[t,r])}});var ZVe=S((ijn,Ise)=>{"use strict";var _Tr=Rse();function JVe(e={readMode:!0}){if(e.readMode===!0&&typeof e.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(e.readMode!==!0&&typeof e.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(e.readMode===!0)return function(){return function(n){return e.restoreFunction(n)}};let t=_Tr();return function(n,s={}){s.mode="standalone";let i=t(n,s);return function(a){let o=i(a);return e.storeFunction(a,o),new Function(o)}}}Ise.exports=JVe;Ise.exports.default=JVe});var Rse=S((ajn,p2)=>{"use strict";var ATr=XVe();function Cse(){return function(t,r){let n=Object.assign({},r,{schema:t});return ETr.bind(null,n)}}function ETr(e,{schema:t}){return e.schema&&t.$id&&e.schema[t.$id]&&(e.schema={...e.schema},delete e.schema[t.$id]),ATr(t,e)}p2.exports=Cse;p2.exports.default=Cse;p2.exports.SerializerSelector=Cse;p2.exports.StandaloneSerializer=ZVe()});var rI=S(wn=>{"use strict";Object.defineProperty(wn,"__esModule",{value:!0});wn.regexpCode=wn.getEsmExportName=wn.getProperty=wn.safeStringify=wn.stringify=wn.strConcat=wn.addCodeArg=wn.str=wn._=wn.nil=wn._Code=wn.Name=wn.IDENTIFIER=wn._CodeOrName=void 0;var m2=class{};wn._CodeOrName=m2;wn.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var bv=class extends m2{constructor(t){if(super(),!wn.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};wn.Name=bv;var Ed=class extends m2{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof bv&&(r[n.str]=(r[n.str]||0)+1),r),{})}};wn._Code=Ed;wn.nil=new Ed("");function e7e(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.ValueScope=Ru.ValueScopeName=Ru.Scope=Ru.varKinds=Ru.UsedValueState=void 0;var Iu=rI(),Nse=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},T5;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(T5||(Ru.UsedValueState=T5={}));Ru.varKinds={const:new Iu.Name("const"),let:new Iu.Name("let"),var:new Iu.Name("var")};var b5=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof Iu.Name?t:this.name(t)}name(t){return new Iu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Ru.Scope=b5;var I5=class extends Iu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,Iu._)`.${new Iu.Name(r)}[${n}]`}};Ru.ValueScopeName=I5;var xTr=(0,Iu._)`\n`,Ose=class extends b5{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?xTr:Iu.nil}}get(){return this._scope}name(t){return new I5(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Iu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let i=Iu.nil;for(let a in t){let o=t[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,T5.Started);let l=r(u);if(l){let d=this.opts.es5?Ru.varKinds.var:Ru.varKinds.const;i=(0,Iu._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Iu._)`${i}${l}${this.opts._n}`;else throw new Nse(u);c.set(u,T5.Completed)})}return i}};Ru.ValueScope=Ose});var jt=S(Pr=>{"use strict";Object.defineProperty(Pr,"__esModule",{value:!0});Pr.or=Pr.and=Pr.not=Pr.CodeGen=Pr.operators=Pr.varKinds=Pr.ValueScopeName=Pr.ValueScope=Pr.Scope=Pr.Name=Pr.regexpCode=Pr.stringify=Pr.getProperty=Pr.nil=Pr.strConcat=Pr.str=Pr._=void 0;var cn=rI(),Mf=R5(),uA=rI();Object.defineProperty(Pr,"_",{enumerable:!0,get:function(){return uA._}});Object.defineProperty(Pr,"str",{enumerable:!0,get:function(){return uA.str}});Object.defineProperty(Pr,"strConcat",{enumerable:!0,get:function(){return uA.strConcat}});Object.defineProperty(Pr,"nil",{enumerable:!0,get:function(){return uA.nil}});Object.defineProperty(Pr,"getProperty",{enumerable:!0,get:function(){return uA.getProperty}});Object.defineProperty(Pr,"stringify",{enumerable:!0,get:function(){return uA.stringify}});Object.defineProperty(Pr,"regexpCode",{enumerable:!0,get:function(){return uA.regexpCode}});Object.defineProperty(Pr,"Name",{enumerable:!0,get:function(){return uA.Name}});var N5=R5();Object.defineProperty(Pr,"Scope",{enumerable:!0,get:function(){return N5.Scope}});Object.defineProperty(Pr,"ValueScope",{enumerable:!0,get:function(){return N5.ValueScope}});Object.defineProperty(Pr,"ValueScopeName",{enumerable:!0,get:function(){return N5.ValueScopeName}});Object.defineProperty(Pr,"varKinds",{enumerable:!0,get:function(){return N5.varKinds}});Pr.operators={GT:new cn._Code(">"),GTE:new cn._Code(">="),LT:new cn._Code("<"),LTE:new cn._Code("<="),EQ:new cn._Code("==="),NEQ:new cn._Code("!=="),NOT:new cn._Code("!"),OR:new cn._Code("||"),AND:new cn._Code("&&"),ADD:new cn._Code("+")};var um=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Dse=class extends um{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Mf.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=sI(this.rhs,t,r)),this}get names(){return this.rhs instanceof cn._CodeOrName?this.rhs.names:{}}},C5=class extends um{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof cn.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=sI(this.rhs,t,r),this}get names(){let t=this.lhs instanceof cn.Name?{}:{...this.lhs.names};return w5(t,this.rhs)}},Pse=class extends C5{constructor(t,r,n,s){super(t,n,s),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Lse=class extends um{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},Mse=class extends um{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},kse=class extends um{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Bse=class extends um{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=sI(this.code,t,r),this}get names(){return this.code instanceof cn._CodeOrName?this.code.names:{}}},_2=class extends um{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(t,r)||(wTr(t,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>Cv(t,r.names),{})}},lm=class extends _2{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Use=class extends _2{},nI=class extends lm{};nI.kind="else";var Iv=class e extends lm{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new nI(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(r7e(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=sI(this.condition,t,r),this}get names(){let t=super.names;return w5(t,this.condition),this.else&&Cv(t,this.else.names),t}};Iv.kind="if";var Rv=class extends lm{};Rv.kind="for";var Fse=class extends Rv{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=sI(this.iteration,t,r),this}get names(){return Cv(super.names,this.iteration.names)}},$se=class extends Rv{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s}render(t){let r=t.es5?Mf.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=w5(super.names,this.from);return w5(t,this.to)}},x5=class extends Rv{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=sI(this.iterable,t,r),this}get names(){return Cv(super.names,this.iterable.names)}},A2=class extends lm{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};A2.kind="func";var E2=class extends _2{render(t){return"return "+super.render(t)}};E2.kind="return";var qse=class extends lm{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&Cv(t,this.catch.names),this.finally&&Cv(t,this.finally.names),t}},y2=class extends lm{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};y2.kind="catch";var v2=class extends lm{render(t){return"finally"+super.render(t)}};v2.kind="finally";var Hse=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=t,this._scope=new Mf.Scope({parent:t}),this._nodes=[new Use]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Dse(t,i,n)),i}const(t,r,n){return this._def(Mf.varKinds.const,t,r,n)}let(t,r,n){return this._def(Mf.varKinds.let,t,r,n)}var(t,r,n){return this._def(Mf.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new C5(t,r,n))}add(t,r){return this._leafNode(new Pse(t,Pr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==cn.nil&&this._leafNode(new Bse(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,cn.addCodeArg)(r,s));return r.push("}"),new cn._Code(r)}if(t,r,n){if(this._blockNode(new Iv(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new Iv(t))}else(){return this._elseNode(new nI)}endIf(){return this._endBlockNode(Iv,nI)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Fse(t),r)}forRange(t,r,n,s,i=this.opts.es5?Mf.varKinds.var:Mf.varKinds.let){let a=this._scope.toName(t);return this._for(new $se(i,a,r,n),()=>s(a))}forOf(t,r,n,s=Mf.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof cn.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,cn._)`${a}.length`,o=>{this.var(i,(0,cn._)`${a}[${o}]`),n(i)})}return this._for(new x5("of",s,i,r),()=>n(i))}forIn(t,r,n,s=this.opts.es5?Mf.varKinds.var:Mf.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,cn._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new x5("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Rv)}label(t){return this._leafNode(new Lse(t))}break(t){return this._leafNode(new Mse(t))}return(t){let r=new E2;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(E2)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new qse;if(this._blockNode(s),this.code(t),r){let i=this.name("e");this._currNode=s.catch=new y2(i),r(i)}return n&&(this._currNode=s.finally=new v2,this.code(n)),this._endBlockNode(y2,v2)}throw(t){return this._leafNode(new kse(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=cn.nil,n,s){return this._blockNode(new A2(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(A2)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof Iv))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};Pr.CodeGen=Hse;function Cv(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function w5(e,t){return t instanceof cn._CodeOrName?Cv(e,t.names):e}function sI(e,t,r){if(e instanceof cn.Name)return n(e);if(!s(e))return e;return new cn._Code(e._items.reduce((i,a)=>(a instanceof cn.Name&&(a=n(a)),a instanceof cn._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function s(i){return i instanceof cn._Code&&i._items.some(a=>a instanceof cn.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function wTr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function r7e(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,cn._)`!${Vse(e)}`}Pr.not=r7e;var NTr=n7e(Pr.operators.AND);function OTr(...e){return e.reduce(NTr)}Pr.and=OTr;var DTr=n7e(Pr.operators.OR);function PTr(...e){return e.reduce(DTr)}Pr.or=PTr;function n7e(e){return(t,r)=>t===cn.nil?r:r===cn.nil?t:(0,cn._)`${Vse(t)} ${e} ${Vse(r)}`}function Vse(e){return e instanceof cn.Name?e:(0,cn._)`(${e})`}});var Ar=S($r=>{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.checkStrictMode=$r.getErrorPath=$r.Type=$r.useFunc=$r.setEvaluated=$r.evaluatedPropsToName=$r.mergeEvaluated=$r.eachItem=$r.unescapeJsonPointer=$r.escapeJsonPointer=$r.escapeFragment=$r.unescapeFragment=$r.schemaRefOrVal=$r.schemaHasRulesButRef=$r.schemaHasRules=$r.checkUnknownRules=$r.alwaysValidSchema=$r.toHash=void 0;var xs=jt(),LTr=rI();function MTr(e){let t={};for(let r of e)t[r]=!0;return t}$r.toHash=MTr;function kTr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(a7e(e,t),!o7e(t,e.self.RULES.all))}$r.alwaysValidSchema=kTr;function a7e(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let i in t)s[i]||l7e(e,`unknown keyword: "${i}"`)}$r.checkUnknownRules=a7e;function o7e(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}$r.schemaHasRules=o7e;function BTr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}$r.schemaHasRulesButRef=BTr;function UTr({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,xs._)`${r}`}return(0,xs._)`${e}${t}${(0,xs.getProperty)(n)}`}$r.schemaRefOrVal=UTr;function FTr(e){return c7e(decodeURIComponent(e))}$r.unescapeFragment=FTr;function $Tr(e){return encodeURIComponent(Kse(e))}$r.escapeFragment=$Tr;function Kse(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}$r.escapeJsonPointer=Kse;function c7e(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}$r.unescapeJsonPointer=c7e;function qTr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}$r.eachItem=qTr;function s7e({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof xs.Name?(i instanceof xs.Name?e(s,i,a):t(s,i,a),a):i instanceof xs.Name?(t(s,a,i),i):r(i,a);return o===xs.Name&&!(c instanceof xs.Name)?n(s,c):c}}$r.mergeEvaluated={props:s7e({mergeNames:(e,t,r)=>e.if((0,xs._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,xs._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,xs._)`${r} || {}`).code((0,xs._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,xs._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,xs._)`${r} || {}`),Gse(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:u7e}),items:s7e({mergeNames:(e,t,r)=>e.if((0,xs._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,xs._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,xs._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,xs._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function u7e(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,xs._)`{}`);return t!==void 0&&Gse(e,r,t),r}$r.evaluatedPropsToName=u7e;function Gse(e,t,r){Object.keys(r).forEach(n=>e.assign((0,xs._)`${t}${(0,xs.getProperty)(n)}`,!0))}$r.setEvaluated=Gse;var i7e={};function HTr(e,t){return e.scopeValue("func",{ref:t,code:i7e[t.code]||(i7e[t.code]=new LTr._Code(t.code))})}$r.useFunc=HTr;var jse;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(jse||($r.Type=jse={}));function VTr(e,t,r){if(e instanceof xs.Name){let n=t===jse.Num;return r?n?(0,xs._)`"[" + ${e} + "]"`:(0,xs._)`"['" + ${e} + "']"`:n?(0,xs._)`"/" + ${e}`:(0,xs._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,xs.getProperty)(e).toString():"/"+Kse(e)}$r.getErrorPath=VTr;function l7e(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}$r.checkStrictMode=l7e});var yd=S(zse=>{"use strict";Object.defineProperty(zse,"__esModule",{value:!0});var jo=jt(),jTr={data:new jo.Name("data"),valCxt:new jo.Name("valCxt"),instancePath:new jo.Name("instancePath"),parentData:new jo.Name("parentData"),parentDataProperty:new jo.Name("parentDataProperty"),rootData:new jo.Name("rootData"),dynamicAnchors:new jo.Name("dynamicAnchors"),vErrors:new jo.Name("vErrors"),errors:new jo.Name("errors"),this:new jo.Name("this"),self:new jo.Name("self"),scope:new jo.Name("scope"),json:new jo.Name("json"),jsonPos:new jo.Name("jsonPos"),jsonLen:new jo.Name("jsonLen"),jsonPart:new jo.Name("jsonPart")};zse.default=jTr});var S2=S(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.extendErrors=Ko.resetErrorsCount=Ko.reportExtraError=Ko.reportError=Ko.keyword$DataError=Ko.keywordError=void 0;var yn=jt(),O5=Ar(),Fc=yd();Ko.keywordError={message:({keyword:e})=>(0,yn.str)`must pass "${e}" keyword validation`};Ko.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,yn.str)`"${e}" keyword must be ${t} ($data)`:(0,yn.str)`"${e}" keyword is invalid ($data)`};function KTr(e,t=Ko.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:a,allErrors:o}=s,c=h7e(e,t,r);n??(a||o)?d7e(i,c):f7e(s,(0,yn._)`[${c}]`)}Ko.reportError=KTr;function GTr(e,t=Ko.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:a}=n,o=h7e(e,t,r);d7e(s,o),i||a||f7e(n,Fc.default.vErrors)}Ko.reportExtraError=GTr;function zTr(e,t){e.assign(Fc.default.errors,t),e.if((0,yn._)`${Fc.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,yn._)`${Fc.default.vErrors}.length`,t),()=>e.assign(Fc.default.vErrors,null)))}Ko.resetErrorsCount=zTr;function YTr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,Fc.default.errors,o=>{e.const(a,(0,yn._)`${Fc.default.vErrors}[${o}]`),e.if((0,yn._)`${a}.instancePath === undefined`,()=>e.assign((0,yn._)`${a}.instancePath`,(0,yn.strConcat)(Fc.default.instancePath,i.errorPath))),e.assign((0,yn._)`${a}.schemaPath`,(0,yn.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,yn._)`${a}.schema`,r),e.assign((0,yn._)`${a}.data`,n))})}Ko.extendErrors=YTr;function d7e(e,t){let r=e.const("err",t);e.if((0,yn._)`${Fc.default.vErrors} === null`,()=>e.assign(Fc.default.vErrors,(0,yn._)`[${r}]`),(0,yn._)`${Fc.default.vErrors}.push(${r})`),e.code((0,yn._)`${Fc.default.errors}++`)}function f7e(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0,yn._)`new ${e.ValidationError}(${t})`):(r.assign((0,yn._)`${n}.errors`,t),r.return(!1))}var xv={keyword:new yn.Name("keyword"),schemaPath:new yn.Name("schemaPath"),params:new yn.Name("params"),propertyName:new yn.Name("propertyName"),message:new yn.Name("message"),schema:new yn.Name("schema"),parentSchema:new yn.Name("parentSchema")};function h7e(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,yn._)`{}`:QTr(e,t,r)}function QTr(e,t,r={}){let{gen:n,it:s}=e,i=[WTr(s,r),XTr(e,r)];return JTr(e,t,i),n.object(...i)}function WTr({errorPath:e},{instancePath:t}){let r=t?(0,yn.str)`${e}${(0,O5.getErrorPath)(t,O5.Type.Str)}`:e;return[Fc.default.instancePath,(0,yn.strConcat)(Fc.default.instancePath,r)]}function XTr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0,yn.str)`${t}/${e}`;return r&&(s=(0,yn.str)`${s}${(0,O5.getErrorPath)(r,O5.Type.Str)}`),[xv.schemaPath,s]}function JTr(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([xv.keyword,s],[xv.params,typeof t=="function"?t(e):t||(0,yn._)`{}`]),c.messages&&n.push([xv.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([xv.schema,a],[xv.parentSchema,(0,yn._)`${l}${d}`],[Fc.default.data,i]),u&&n.push([xv.propertyName,u])}});var m7e=S(iI=>{"use strict";Object.defineProperty(iI,"__esModule",{value:!0});iI.boolOrEmptySchema=iI.topBoolOrEmptySchema=void 0;var ZTr=S2(),ebr=jt(),tbr=yd(),rbr={message:"boolean schema is false"};function nbr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?p7e(e,!1):typeof r=="object"&&r.$async===!0?t.return(tbr.default.data):(t.assign((0,ebr._)`${n}.errors`,null),t.return(!0))}iI.topBoolOrEmptySchema=nbr;function sbr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),p7e(e)):r.var(t,!0)}iI.boolOrEmptySchema=sbr;function p7e(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,ZTr.reportError)(s,rbr,void 0,t)}});var Yse=S(aI=>{"use strict";Object.defineProperty(aI,"__esModule",{value:!0});aI.getRules=aI.isJSONType=void 0;var ibr=["string","number","integer","boolean","null","object","array"],abr=new Set(ibr);function obr(e){return typeof e=="string"&&abr.has(e)}aI.isJSONType=obr;function cbr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}aI.getRules=cbr});var Qse=S(lA=>{"use strict";Object.defineProperty(lA,"__esModule",{value:!0});lA.shouldUseRule=lA.shouldUseGroup=lA.schemaHasRulesForType=void 0;function ubr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&g7e(e,n)}lA.schemaHasRulesForType=ubr;function g7e(e,t){return t.rules.some(r=>_7e(e,r))}lA.shouldUseGroup=g7e;function _7e(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}lA.shouldUseRule=_7e});var T2=S(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.reportTypeError=Go.checkDataTypes=Go.checkDataType=Go.coerceAndCheckDataType=Go.getJSONTypes=Go.getSchemaTypes=Go.DataType=void 0;var lbr=Yse(),dbr=Qse(),fbr=S2(),Er=jt(),A7e=Ar(),oI;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(oI||(Go.DataType=oI={}));function hbr(e){let t=E7e(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Go.getSchemaTypes=hbr;function E7e(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(lbr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Go.getJSONTypes=E7e;function pbr(e,t){let{gen:r,data:n,opts:s}=e,i=mbr(t,s.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,dbr.schemaHasRulesForType)(e,t[0]));if(a){let o=Xse(t,n,s.strictNumbers,oI.Wrong);r.if(o,()=>{i.length?gbr(e,t,i):Jse(e)})}return a}Go.coerceAndCheckDataType=pbr;var y7e=new Set(["string","number","integer","boolean","null"]);function mbr(e,t){return t?e.filter(r=>y7e.has(r)||t==="array"&&r==="array"):[]}function gbr(e,t,r){let{gen:n,data:s,opts:i}=e,a=n.let("dataType",(0,Er._)`typeof ${s}`),o=n.let("coerced",(0,Er._)`undefined`);i.coerceTypes==="array"&&n.if((0,Er._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Er._)`${s}[0]`).assign(a,(0,Er._)`typeof ${s}`).if(Xse(t,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Er._)`${o} !== undefined`);for(let u of r)(y7e.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),Jse(e),n.endIf(),n.if((0,Er._)`${o} !== undefined`,()=>{n.assign(s,o),_br(e,o)});function c(u){switch(u){case"string":n.elseIf((0,Er._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Er._)`"" + ${s}`).elseIf((0,Er._)`${s} === null`).assign(o,(0,Er._)`""`);return;case"number":n.elseIf((0,Er._)`${a} == "boolean" || ${s} === null + || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Er._)`+${s}`);return;case"integer":n.elseIf((0,Er._)`${a} === "boolean" || ${s} === null + || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Er._)`+${s}`);return;case"boolean":n.elseIf((0,Er._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Er._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Er._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Er._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${s} === null`).assign(o,(0,Er._)`[${s}]`)}}}function _br({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Er._)`${t} !== undefined`,()=>e.assign((0,Er._)`${t}[${r}]`,n))}function Wse(e,t,r,n=oI.Correct){let s=n===oI.Correct?Er.operators.EQ:Er.operators.NEQ,i;switch(e){case"null":return(0,Er._)`${t} ${s} null`;case"array":i=(0,Er._)`Array.isArray(${t})`;break;case"object":i=(0,Er._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,Er._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,Er._)`typeof ${t} ${s} ${e}`}return n===oI.Correct?i:(0,Er.not)(i);function a(o=Er.nil){return(0,Er.and)((0,Er._)`typeof ${t} == "number"`,o,r?(0,Er._)`isFinite(${t})`:Er.nil)}}Go.checkDataType=Wse;function Xse(e,t,r,n){if(e.length===1)return Wse(e[0],t,r,n);let s,i=(0,A7e.toHash)(e);if(i.array&&i.object){let a=(0,Er._)`typeof ${t} != "object"`;s=i.null?a:(0,Er._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Er.nil;i.number&&delete i.integer;for(let a in i)s=(0,Er.and)(s,Wse(a,t,r,n));return s}Go.checkDataTypes=Xse;var Abr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Er._)`{type: ${e}}`:(0,Er._)`{type: ${t}}`};function Jse(e){let t=Ebr(e);(0,fbr.reportError)(t,Abr)}Go.reportTypeError=Jse;function Ebr(e){let{gen:t,data:r,schema:n}=e,s=(0,A7e.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var S7e=S(D5=>{"use strict";Object.defineProperty(D5,"__esModule",{value:!0});D5.assignDefaults=void 0;var cI=jt(),ybr=Ar();function vbr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)v7e(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,i)=>v7e(e,i,s.default))}D5.assignDefaults=vbr;function v7e(e,t,r){let{gen:n,compositeRule:s,data:i,opts:a}=e;if(r===void 0)return;let o=(0,cI._)`${i}${(0,cI.getProperty)(t)}`;if(s){(0,ybr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let c=(0,cI._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,cI._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,cI._)`${o} = ${(0,cI.stringify)(r)}`)}});var mo=S(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.validateUnion=us.validateArray=us.usePattern=us.callValidateCode=us.schemaProperties=us.allSchemaProperties=us.noPropertyInData=us.propertyInData=us.isOwnProperty=us.hasPropFunc=us.reportMissingProp=us.checkMissingProp=us.checkReportMissingProp=void 0;var zs=jt(),Zse=Ar(),dA=yd(),Sbr=Ar();function Tbr(e,t){let{gen:r,data:n,it:s}=e;r.if(tie(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0,zs._)`${t}`},!0),e.error()})}us.checkReportMissingProp=Tbr;function bbr({gen:e,data:t,it:{opts:r}},n,s){return(0,zs.or)(...n.map(i=>(0,zs.and)(tie(e,t,i,r.ownProperties),(0,zs._)`${s} = ${i}`)))}us.checkMissingProp=bbr;function Ibr(e,t){e.setParams({missingProperty:t},!0),e.error()}us.reportMissingProp=Ibr;function T7e(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,zs._)`Object.prototype.hasOwnProperty`})}us.hasPropFunc=T7e;function eie(e,t,r){return(0,zs._)`${T7e(e)}.call(${t}, ${r})`}us.isOwnProperty=eie;function Rbr(e,t,r,n){let s=(0,zs._)`${t}${(0,zs.getProperty)(r)} !== undefined`;return n?(0,zs._)`${s} && ${eie(e,t,r)}`:s}us.propertyInData=Rbr;function tie(e,t,r,n){let s=(0,zs._)`${t}${(0,zs.getProperty)(r)} === undefined`;return n?(0,zs.or)(s,(0,zs.not)(eie(e,t,r))):s}us.noPropertyInData=tie;function b7e(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}us.allSchemaProperties=b7e;function Cbr(e,t){return b7e(t).filter(r=>!(0,Zse.alwaysValidSchema)(e,t[r]))}us.schemaProperties=Cbr;function xbr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,zs._)`${e}, ${t}, ${n}${s}`:t,d=[[dA.default.instancePath,(0,zs.strConcat)(dA.default.instancePath,i)],[dA.default.parentData,a.parentData],[dA.default.parentDataProperty,a.parentDataProperty],[dA.default.rootData,dA.default.rootData]];a.opts.dynamicRef&&d.push([dA.default.dynamicAnchors,dA.default.dynamicAnchors]);let f=(0,zs._)`${l}, ${r.object(...d)}`;return c!==zs.nil?(0,zs._)`${o}.call(${c}, ${f})`:(0,zs._)`${o}(${f})`}us.callValidateCode=xbr;var wbr=(0,zs._)`new RegExp`;function Nbr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,zs._)`${s.code==="new RegExp"?wbr:(0,Sbr.useFunc)(e,s)}(${r}, ${n})`})}us.usePattern=Nbr;function Obr(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(i,!0),a(()=>t.break()),i;function a(o){let c=t.const("len",(0,zs._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:Zse.Type.Num},i),t.if((0,zs.not)(i),o)})}}us.validateArray=Obr;function Dbr(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Zse.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);t.assign(a,(0,zs._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,zs.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}us.validateUnion=Dbr});var C7e=S(fh=>{"use strict";Object.defineProperty(fh,"__esModule",{value:!0});fh.validateKeywordUsage=fh.validSchemaType=fh.funcKeywordCode=fh.macroKeywordCode=void 0;var $c=jt(),wv=yd(),Pbr=mo(),Lbr=S2();function Mbr(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=e,o=t.macro.call(a.self,s,i,a),c=R7e(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");e.subschema({schema:o,schemaPath:$c.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}fh.macroKeywordCode=Mbr;function kbr(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=e;Ubr(c,t);let u=!o&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=R7e(n,s,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&I7e(e),g(()=>e.error());else{let _=t.async?h():p();t.modifying&&I7e(e),g(()=>Bbr(e,_))}}function h(){let _=n.let("ruleErrs",null);return n.try(()=>m((0,$c._)`await `),y=>n.assign(d,!1).if((0,$c._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,$c._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,$c._)`${l}.errors`;return n.assign(_,null),m($c.nil),_}function m(_=t.async?(0,$c._)`await `:$c.nil){let y=c.opts.passContext?wv.default.this:wv.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,$c._)`${_}${(0,Pbr.callValidateCode)(e,l,y,A)}`,t.modifying)}function g(_){var y;n.if((0,$c.not)((y=t.valid)!==null&&y!==void 0?y:d),_)}}fh.funcKeywordCode=kbr;function I7e(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,$c._)`${n.parentData}[${n.parentDataProperty}]`))}function Bbr(e,t){let{gen:r}=e;r.if((0,$c._)`Array.isArray(${t})`,()=>{r.assign(wv.default.vErrors,(0,$c._)`${wv.default.vErrors} === null ? ${t} : ${wv.default.vErrors}.concat(${t})`).assign(wv.default.errors,(0,$c._)`${wv.default.vErrors}.length`),(0,Lbr.extendErrors)(e)},()=>e.error())}function Ubr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function R7e(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,$c.stringify)(r)})}function Fbr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}fh.validSchemaType=Fbr;function $br({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}fh.validateKeywordUsage=$br});var w7e=S(fA=>{"use strict";Object.defineProperty(fA,"__esModule",{value:!0});fA.extendSubschemaMode=fA.extendSubschemaData=fA.getSubschema=void 0;var hh=jt(),x7e=Ar();function qbr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,hh._)`${e.schemaPath}${(0,hh.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,hh._)`${e.schemaPath}${(0,hh.getProperty)(t)}${(0,hh.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,x7e.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}fA.getSubschema=qbr;function Hbr(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=o.let("data",(0,hh._)`${t.data}${(0,hh.getProperty)(r)}`,!0);c(f),e.errorPath=(0,hh.str)`${u}${(0,x7e.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,hh._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(s!==void 0){let u=s instanceof hh.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}fA.extendSubschemaData=Hbr;function Vbr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}fA.extendSubschemaMode=Vbr});var O7e=S((vjn,N7e)=>{"use strict";var hA=N7e.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};P5(t,n,s,e,"",e)};hA.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};hA.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};hA.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};hA.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function P5(e,t,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in hA.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.getSchemaRefs=Cu.resolveUrl=Cu.normalizeId=Cu._getFullPath=Cu.getFullPath=Cu.inlineRef=void 0;var Kbr=Ar(),Gbr=hd(),zbr=O7e(),Ybr=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Qbr(e,t=!0){return typeof e=="boolean"?!0:t===!0?!rie(e):t?D7e(e)<=t:!1}Cu.inlineRef=Qbr;var Wbr=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function rie(e){for(let t in e){if(Wbr.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(rie)||typeof r=="object"&&rie(r))return!0}return!1}function D7e(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Ybr.has(r)&&(typeof e[r]=="object"&&(0,Kbr.eachItem)(e[r],n=>t+=D7e(n)),t===1/0))return 1/0}return t}function P7e(e,t="",r){r!==!1&&(t=uI(t));let n=e.parse(t);return L7e(e,n)}Cu.getFullPath=P7e;function L7e(e,t){return e.serialize(t).split("#")[0]+"#"}Cu._getFullPath=L7e;var Xbr=/#\/?$/;function uI(e){return e?e.replace(Xbr,""):""}Cu.normalizeId=uI;function Jbr(e,t,r){return r=uI(r),e.resolve(t,r)}Cu.resolveUrl=Jbr;var Zbr=/^[a-z_][-a-z0-9._]*$/i;function e1r(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=uI(e[r]||t),i={"":s},a=P7e(n,s,!1),o={},c=new Set;return zbr(e,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=a+f,g=i[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),i[f]=g;function _(A){let E=this.opts.uriResolver.resolve;if(A=uI(g?E(g,A):A),c.has(A))throw l(A);c.add(A);let v=this.refs[A];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,A):A!==uI(m)&&(A[0]==="#"?(u(d,o[A],A),o[A]=d):this.refs[A]=m),A}function y(A){if(typeof A=="string"){if(!Zbr.test(A))throw new Error(`invalid anchor "${A}"`);_.call(this,`#${A}`)}}}),o;function u(d,f,h){if(f!==void 0&&!Gbr(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Cu.getSchemaRefs=e1r});var lI=S(pA=>{"use strict";Object.defineProperty(pA,"__esModule",{value:!0});pA.getData=pA.KeywordCxt=pA.validateFunctionCode=void 0;var F7e=m7e(),M7e=T2(),sie=Qse(),L5=T2(),t1r=S7e(),R2=C7e(),nie=w7e(),xt=jt(),sr=yd(),r1r=b2(),dm=Ar(),I2=S2();function n1r(e){if(H7e(e)&&(V7e(e),q7e(e))){a1r(e);return}$7e(e,()=>(0,F7e.topBoolOrEmptySchema)(e))}pA.validateFunctionCode=n1r;function $7e({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){s.code.es5?e.func(t,(0,xt._)`${sr.default.data}, ${sr.default.valCxt}`,n.$async,()=>{e.code((0,xt._)`"use strict"; ${k7e(r,s)}`),i1r(e,s),e.code(i)}):e.func(t,(0,xt._)`${sr.default.data}, ${s1r(s)}`,n.$async,()=>e.code(k7e(r,s)).code(i))}function s1r(e){return(0,xt._)`{${sr.default.instancePath}="", ${sr.default.parentData}, ${sr.default.parentDataProperty}, ${sr.default.rootData}=${sr.default.data}${e.dynamicRef?(0,xt._)`, ${sr.default.dynamicAnchors}={}`:xt.nil}}={}`}function i1r(e,t){e.if(sr.default.valCxt,()=>{e.var(sr.default.instancePath,(0,xt._)`${sr.default.valCxt}.${sr.default.instancePath}`),e.var(sr.default.parentData,(0,xt._)`${sr.default.valCxt}.${sr.default.parentData}`),e.var(sr.default.parentDataProperty,(0,xt._)`${sr.default.valCxt}.${sr.default.parentDataProperty}`),e.var(sr.default.rootData,(0,xt._)`${sr.default.valCxt}.${sr.default.rootData}`),t.dynamicRef&&e.var(sr.default.dynamicAnchors,(0,xt._)`${sr.default.valCxt}.${sr.default.dynamicAnchors}`)},()=>{e.var(sr.default.instancePath,(0,xt._)`""`),e.var(sr.default.parentData,(0,xt._)`undefined`),e.var(sr.default.parentDataProperty,(0,xt._)`undefined`),e.var(sr.default.rootData,sr.default.data),t.dynamicRef&&e.var(sr.default.dynamicAnchors,(0,xt._)`{}`)})}function a1r(e){let{schema:t,opts:r,gen:n}=e;$7e(e,()=>{r.$comment&&t.$comment&&K7e(e),d1r(e),n.let(sr.default.vErrors,null),n.let(sr.default.errors,0),r.unevaluated&&o1r(e),j7e(e),p1r(e)})}function o1r(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,xt._)`${r}.evaluated`),t.if((0,xt._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,xt._)`${e.evaluated}.props`,(0,xt._)`undefined`)),t.if((0,xt._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,xt._)`${e.evaluated}.items`,(0,xt._)`undefined`))}function k7e(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,xt._)`/*# sourceURL=${r} */`:xt.nil}function c1r(e,t){if(H7e(e)&&(V7e(e),q7e(e))){u1r(e,t);return}(0,F7e.boolOrEmptySchema)(e,t)}function q7e({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function H7e(e){return typeof e.schema!="boolean"}function u1r(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&K7e(e),f1r(e),h1r(e);let i=n.const("_errs",sr.default.errors);j7e(e,i),n.var(t,(0,xt._)`${i} === ${sr.default.errors}`)}function V7e(e){(0,dm.checkUnknownRules)(e),l1r(e)}function j7e(e,t){if(e.opts.jtd)return B7e(e,[],!1,t);let r=(0,M7e.getSchemaTypes)(e.schema),n=(0,M7e.coerceAndCheckDataType)(e,r);B7e(e,r,!n,t)}function l1r(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,dm.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function d1r(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,dm.checkStrictMode)(e,"default is ignored in the schema root")}function f1r(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,r1r.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function h1r(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function K7e({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code((0,xt._)`${sr.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,xt.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,xt._)`${sr.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function p1r(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;r.$async?t.if((0,xt._)`${sr.default.errors} === 0`,()=>t.return(sr.default.data),()=>t.throw((0,xt._)`new ${s}(${sr.default.vErrors})`)):(t.assign((0,xt._)`${n}.errors`,sr.default.vErrors),i.unevaluated&&m1r(e),t.return((0,xt._)`${sr.default.errors} === 0`))}function m1r({gen:e,evaluated:t,props:r,items:n}){r instanceof xt.Name&&e.assign((0,xt._)`${t}.props`,r),n instanceof xt.Name&&e.assign((0,xt._)`${t}.items`,n)}function B7e(e,t,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,dm.schemaHasRulesButRef)(i,l))){s.block(()=>z7e(e,"$ref",l.all.$ref.definition));return}c.jtd||g1r(e,t),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,sie.shouldUseGroup)(i,f)&&(f.type?(s.if((0,L5.checkDataType)(f.type,a,c.strictNumbers)),U7e(e,f),t.length===1&&t[0]===f.type&&r&&(s.else(),(0,L5.reportTypeError)(e)),s.endIf()):U7e(e,f),o||s.if((0,xt._)`${sr.default.errors} === ${n||0}`))}}function U7e(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0,t1r.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,sie.shouldUseRule)(n,i)&&z7e(e,i.keyword,i.definition,t.type)})}function g1r(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(_1r(e,t),e.opts.allowUnionTypes||A1r(e,t),E1r(e,e.dataTypes))}function _1r(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{G7e(e.dataTypes,r)||iie(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),v1r(e,t)}}function A1r(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&iie(e,"use allowUnionTypes to allow union type keyword")}function E1r(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,sie.shouldUseRule)(e.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>y1r(t,a))&&iie(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function y1r(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function G7e(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function v1r(e,t){let r=[];for(let n of e.dataTypes)G7e(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function iie(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,dm.checkStrictMode)(e,t,e.opts.strictTypes)}var M5=class{constructor(t,r,n){if((0,R2.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,dm.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",Y7e(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,R2.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",sr.default.errors))}result(t,r,n){this.failResult((0,xt.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,xt.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,xt._)`${r} !== undefined && (${(0,xt.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?I2.reportExtraError:I2.reportError)(this,this.def.error,r)}$dataError(){(0,I2.reportError)(this,this.def.$dataError||I2.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,I2.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=xt.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=xt.nil,r=xt.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,xt.or)((0,xt._)`${s} === undefined`,r)),t!==xt.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==xt.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,xt.or)(a(),o());function a(){if(n.length){if(!(r instanceof xt.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,xt._)`${(0,L5.checkDataTypes)(c,r,i.opts.strictNumbers,L5.DataType.Wrong)}`}return xt.nil}function o(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return(0,xt._)`!${c}(${r})`}return xt.nil}}subschema(t,r){let n=(0,nie.getSubschema)(this.it,t);(0,nie.extendSubschemaData)(n,this.it,t),(0,nie.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return c1r(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=dm.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=dm.mergeEvaluated.items(s,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(t,xt.Name)),!0}};pA.KeywordCxt=M5;function z7e(e,t,r,n){let s=new M5(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0,R2.funcKeywordCode)(s,r):"macro"in r?(0,R2.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,R2.funcKeywordCode)(s,r)}var S1r=/^\/(?:[^~]|~0|~1)*$/,T1r=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Y7e(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return sr.default.rootData;if(e[0]==="/"){if(!S1r.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,i=sr.default.rootData}else{let u=T1r.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,xt._)`${i}${(0,xt.getProperty)((0,dm.unescapeJsonPointer)(u))}`,a=(0,xt._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}pA.getData=Y7e});var C2=S(oie=>{"use strict";Object.defineProperty(oie,"__esModule",{value:!0});var aie=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};oie.default=aie});var fm=S(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});var cie=b2(),uie=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,cie.resolveUrl)(t,r,n),this.missingSchema=(0,cie.normalizeId)((0,cie.getFullPath)(t,this.missingRef))}};lie.default=uie});var Ov=S(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});vd.resolveSchema=vd.getCompilingSchema=vd.resolveRef=vd.compileSchema=vd.SchemaEnv=void 0;var kf=jt(),b1r=C2(),Nv=yd(),Bf=b2(),Q7e=Ar(),I1r=lI(),dI=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Bf.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};vd.SchemaEnv=dI;function fie(e){let t=W7e.call(this,e);if(t)return t;let r=(0,Bf.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new kf.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;e.$async&&(o=a.scopeValue("Error",{ref:b1r.default,code:(0,kf._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Nv.default.data,parentData:Nv.default.parentData,parentDataProperty:Nv.default.parentDataProperty,dataNames:[Nv.default.data],dataPathArr:[kf.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,kf.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:kf.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,kf._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,I1r.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Nv.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let h=new Function(`${Nv.default.self}`,`${Nv.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:m}=u;h.evaluated={props:p instanceof kf.Name?void 0:p,items:m instanceof kf.Name?void 0:m,dynamicProps:p instanceof kf.Name,dynamicItems:m instanceof kf.Name},h.source&&(h.source.evaluated=(0,kf.stringify)(h.evaluated))}return e.validate=h,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}vd.compileSchema=fie;function R1r(e,t,r){var n;r=(0,Bf.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=w1r.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new dI({schema:a,schemaId:o,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=C1r.call(this,i)}vd.resolveRef=R1r;function C1r(e){return(0,Bf.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:fie.call(this,e)}function W7e(e){for(let t of this._compilations)if(x1r(t,e))return t}vd.getCompilingSchema=W7e;function x1r(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function w1r(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||k5.call(this,e,t)}function k5(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Bf._getFullPath)(this.opts.uriResolver,r),s=(0,Bf.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return die.call(this,r,e);let i=(0,Bf.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=k5.call(this,e,a);return typeof o?.schema!="object"?void 0:die.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||fie.call(this,a),i===(0,Bf.normalizeId)(t)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Bf.resolveUrl)(this.opts.uriResolver,s,u)),new dI({schema:o,schemaId:c,root:e,baseId:s})}return die.call(this,r,a)}}vd.resolveSchema=k5;var N1r=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function die(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Q7e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!N1r.has(o)&&u&&(t=(0,Bf.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,Q7e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Bf.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=k5.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new dI({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var X7e=S((Cjn,O1r)=>{O1r.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var pie=S((xjn,tje)=>{"use strict";var D1r=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Z7e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function hie(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var P1r=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function J7e(e){return e.length=0,!0}function L1r(e,t,r){if(e.length){let n=hie(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function M1r(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=L1r;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=J7e}else{s.push(u);continue}}return s.length&&(o===J7e?r.zone=s.join(""):a?n.push(s.join("")):n.push(hie(s))),r.address=n.join(""),r}function eje(e){if(k1r(e,":")<2)return{host:e,isIPV6:!1};let t=M1r(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function k1r(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:$1r}=pie(),q1r=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,H1r=["http","https","ws","wss","urn","urn:uuid"];function V1r(e){return H1r.indexOf(e)!==-1}function mie(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function rje(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function nje(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function j1r(e){return e.secure=mie(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function K1r(e){if((e.port===(mie(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function G1r(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(q1r);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=gie(s);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function z1r(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=gie(s);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function Y1r(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!$1r(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Q1r(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var sje={scheme:"http",domainHost:!0,parse:rje,serialize:nje},W1r={scheme:"https",domainHost:sje.domainHost,parse:rje,serialize:nje},B5={scheme:"ws",domainHost:!0,parse:j1r,serialize:K1r},X1r={scheme:"wss",domainHost:B5.domainHost,parse:B5.parse,serialize:B5.serialize},J1r={scheme:"urn",parse:G1r,serialize:z1r,skipNormalize:!0},Z1r={scheme:"urn:uuid",parse:Y1r,serialize:Q1r,skipNormalize:!0},U5={http:sje,https:W1r,ws:B5,wss:X1r,urn:J1r,"urn:uuid":Z1r};Object.setPrototypeOf(U5,null);function gie(e){return e&&(U5[e]||U5[e.toLowerCase()])||void 0}ije.exports={wsIsSecure:mie,SCHEMES:U5,isValidSchemeName:V1r,getSchemeHandler:gie}});var uje=S((Njn,$5)=>{"use strict";var{normalizeIPv6:eIr,removeDotSegments:x2,recomposeAuthority:tIr,normalizeComponentEncoding:F5,isIPv4:rIr,nonSimpleDomain:nIr}=pie(),{SCHEMES:sIr,getSchemeHandler:oje}=aje();function iIr(e,t){return typeof e=="string"?e=ph(hm(e,t),t):typeof e=="object"&&(e=hm(ph(e,t),t)),e}function aIr(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=cje(hm(e,n),hm(t,n),n,!0);return n.skipEscape=!0,ph(s,n)}function cje(e,t,r,n){let s={};return n||(e=hm(ph(e,r),r),t=hm(ph(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=x2(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=x2(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=x2(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=x2(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function oIr(e,t,r){return typeof e=="string"?(e=unescape(e),e=ph(F5(hm(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=ph(F5(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=ph(F5(hm(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=ph(F5(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function ph(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=oje(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=tIr(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=x2(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var cIr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function hm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(cIr);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(rIr(n.host)===!1){let c=eIr(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=oje(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&nIr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var _ie={SCHEMES:sIr,normalize:iIr,resolve:aIr,resolveComponent:cje,equal:oIr,serialize:ph,parse:hm};$5.exports=_ie;$5.exports.default=_ie;$5.exports.fastUri=_ie});var dje=S(Aie=>{"use strict";Object.defineProperty(Aie,"__esModule",{value:!0});var lje=uje();lje.code='require("ajv/dist/runtime/uri").default';Aie.default=lje});var vie=S(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.CodeGen=go.Name=go.nil=go.stringify=go.str=go._=go.KeywordCxt=void 0;var uIr=lI();Object.defineProperty(go,"KeywordCxt",{enumerable:!0,get:function(){return uIr.KeywordCxt}});var fI=jt();Object.defineProperty(go,"_",{enumerable:!0,get:function(){return fI._}});Object.defineProperty(go,"str",{enumerable:!0,get:function(){return fI.str}});Object.defineProperty(go,"stringify",{enumerable:!0,get:function(){return fI.stringify}});Object.defineProperty(go,"nil",{enumerable:!0,get:function(){return fI.nil}});Object.defineProperty(go,"Name",{enumerable:!0,get:function(){return fI.Name}});Object.defineProperty(go,"CodeGen",{enumerable:!0,get:function(){return fI.CodeGen}});var lIr=C2(),gje=fm(),dIr=Yse(),w2=Ov(),fIr=jt(),N2=b2(),q5=T2(),yie=Ar(),fje=X7e(),hIr=dje(),_je=(e,t)=>new RegExp(e,t);_je.code="new RegExp";var pIr=["removeAdditional","useDefaults","coerceTypes"],mIr=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),gIr={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},_Ir={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},hje=200;function AIr(e){var t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y,A,E,v,b,I,T,x;let w=e.strict,D=(t=e.code)===null||t===void 0?void 0:t.optimize,M=D===!0||D===void 0?1:D||0,L=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:_je,U=(s=e.uriResolver)!==null&&s!==void 0?s:hIr.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:w)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=e.strictNumbers)!==null&&o!==void 0?o:w)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:w)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:w)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:L}:{optimize:M,regExp:L},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:hje,loopEnum:(g=e.loopEnum)!==null&&g!==void 0?g:hje,meta:(_=e.meta)!==null&&_!==void 0?_:!0,messages:(y=e.messages)!==null&&y!==void 0?y:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(v=e.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(b=e.validateSchema)!==null&&b!==void 0?b:!0,validateFormats:(I=e.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(T=e.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(x=e.int32range)!==null&&x!==void 0?x:!0,uriResolver:U}}var O2=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...AIr(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new fIr.ValueScope({scope:{},prefixes:mIr,es5:r,lines:n}),this.logger=bIr(t.logger);let s=t.validateFormats;t.validateFormats=!1,this.RULES=(0,dIr.getRules)(),pje.call(this,gIr,t,"NOT SUPPORTED"),pje.call(this,_Ir,t,"DEPRECATED","warn"),this._metaOpts=SIr.call(this),t.formats&&yIr.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&vIr.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),EIr.call(this),t.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=fje;n==="id"&&(s={...fje},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof gje.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,N2.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,t);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(t){let r;for(;typeof(r=mje.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new w2.SchemaEnv({schema:{},schemaId:n});if(r=w2.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=mje.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,N2.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(RIr.call(this,n,r),!r)return(0,yie.eachItem)(n,i=>Eie.call(this,i)),this;xIr.call(this,r);let s={...r,type:(0,q5.getJSONTypes)(r.type),schemaType:(0,q5.getJSONTypes)(r.schemaType)};return(0,yie.eachItem)(n,s.type.length===0?i=>Eie.call(this,i,s):i=>s.type.forEach(a=>Eie.call(this,i,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===t);s>=0&&n.rules.splice(s,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let i=s.split("/").slice(1),a=t;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Aje(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]))}}_addSchema(t,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,N2.normalizeId)(a||n);let u=N2.getSchemaRefs.call(this,t,n);return c=new w2.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):w2.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{w2.compileSchema.call(this,t)}finally{this.opts=r}}};O2.ValidationError=lIr.default;O2.MissingRefError=gje.default;go.default=O2;function pje(e,t,r,n="error"){for(let s in e){let i=s;i in t&&this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function mje(e){return e=(0,N2.normalizeId)(e),this.schemas[e]||this.refs[e]}function EIr(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function yIr(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function vIr(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function SIr(){let e={...this.opts};for(let t of pIr)delete e[t];return e}var TIr={log(){},warn(){},error(){}};function bIr(e){if(e===!1)return TIr;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var IIr=/^[a-z_$][a-z0-9_$:-]*$/i;function RIr(e,t){let{RULES:r}=this;if((0,yie.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!IIr.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Eie(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,q5.getJSONTypes)(t.type),schemaType:(0,q5.getJSONTypes)(t.schemaType)}};t.before?CIr.call(this,a,o,t.before):a.rules.push(o),i.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function CIr(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function xIr(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Aje(t)),e.validateSchema=this.compile(t,!0))}var wIr={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Aje(e){return{anyOf:[e,wIr]}}});var Eje=S(Sie=>{"use strict";Object.defineProperty(Sie,"__esModule",{value:!0});var NIr={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Sie.default=NIr});var Tie=S(Dv=>{"use strict";Object.defineProperty(Dv,"__esModule",{value:!0});Dv.callRef=Dv.getValidate=void 0;var OIr=fm(),yje=mo(),xu=jt(),hI=yd(),vje=Ov(),H5=Ar(),DIr={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=vje.resolveRef.call(c,u,s,r);if(l===void 0)throw new OIr.default(n.opts.uriResolver,s,r);if(l instanceof vje.SchemaEnv)return f(l);return h(l);function d(){if(i===u)return V5(e,a,i,i.$async);let p=t.scopeValue("root",{ref:u});return V5(e,(0,xu._)`${p}.validate`,u,u.$async)}function f(p){let m=Sje(e,p);V5(e,m,p,p.$async)}function h(p){let m=t.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,xu.stringify)(p)}:{ref:p}),g=t.name("valid"),_=e.subschema({schema:p,dataTypes:[],schemaPath:xu.nil,topSchemaRef:m,errSchemaPath:r},g);e.mergeEvaluated(_),e.ok(g)}}};function Sje(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,xu._)`${r.scopeValue("wrapper",{ref:t})}.validate`}Dv.getValidate=Sje;function V5(e,t,r,n){let{gen:s,it:i}=e,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?hI.default.this:xu.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,xu._)`await ${(0,yje.callValidateCode)(e,t,u)}`),h(t),a||s.assign(p,!0)},m=>{s.if((0,xu._)`!(${m} instanceof ${i.ValidationError})`,()=>s.throw(m)),f(m),a||s.assign(p,!1)}),e.ok(p)}function d(){e.result((0,yje.callValidateCode)(e,t,u),()=>h(t),()=>f(t))}function f(p){let m=(0,xu._)`${p}.errors`;s.assign(hI.default.vErrors,(0,xu._)`${hI.default.vErrors} === null ? ${m} : ${hI.default.vErrors}.concat(${m})`),s.assign(hI.default.errors,(0,xu._)`${hI.default.vErrors}.length`)}function h(p){var m;if(!i.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=H5.mergeEvaluated.props(s,g.props,i.props));else{let _=s.var("props",(0,xu._)`${p}.evaluated.props`);i.props=H5.mergeEvaluated.props(s,_,i.props,xu.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=H5.mergeEvaluated.items(s,g.items,i.items));else{let _=s.var("items",(0,xu._)`${p}.evaluated.items`);i.items=H5.mergeEvaluated.items(s,_,i.items,xu.Name)}}}Dv.callRef=V5;Dv.default=DIr});var Tje=S(bie=>{"use strict";Object.defineProperty(bie,"__esModule",{value:!0});var PIr=Eje(),LIr=Tie(),MIr=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",PIr.default,LIr.default];bie.default=MIr});var bje=S(Iie=>{"use strict";Object.defineProperty(Iie,"__esModule",{value:!0});var j5=jt(),mA=j5.operators,K5={maximum:{okStr:"<=",ok:mA.LTE,fail:mA.GT},minimum:{okStr:">=",ok:mA.GTE,fail:mA.LT},exclusiveMaximum:{okStr:"<",ok:mA.LT,fail:mA.GTE},exclusiveMinimum:{okStr:">",ok:mA.GT,fail:mA.LTE}},kIr={message:({keyword:e,schemaCode:t})=>(0,j5.str)`must be ${K5[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,j5._)`{comparison: ${K5[e].okStr}, limit: ${t}}`},BIr={keyword:Object.keys(K5),type:"number",schemaType:"number",$data:!0,error:kIr,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,j5._)`${r} ${K5[t].fail} ${n} || isNaN(${r})`)}};Iie.default=BIr});var Ije=S(Rie=>{"use strict";Object.defineProperty(Rie,"__esModule",{value:!0});var D2=jt(),UIr={message:({schemaCode:e})=>(0,D2.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,D2._)`{multipleOf: ${e}}`},FIr={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:UIr,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,a=t.let("res"),o=i?(0,D2._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,D2._)`${a} !== parseInt(${a})`;e.fail$data((0,D2._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Rie.default=FIr});var Cje=S(Cie=>{"use strict";Object.defineProperty(Cie,"__esModule",{value:!0});function Rje(e){let t=e.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});var Pv=jt(),$Ir=Ar(),qIr=Cje(),HIr={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Pv.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Pv._)`{limit: ${e}}`},VIr={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:HIr,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?Pv.operators.GT:Pv.operators.LT,a=s.opts.unicode===!1?(0,Pv._)`${r}.length`:(0,Pv._)`${(0,$Ir.useFunc)(e.gen,qIr.default)}(${r})`;e.fail$data((0,Pv._)`${a} ${i} ${n}`)}};xie.default=VIr});var wje=S(wie=>{"use strict";Object.defineProperty(wie,"__esModule",{value:!0});var jIr=mo(),KIr=Ar(),pI=jt(),GIr={message:({schemaCode:e})=>(0,pI.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,pI._)`{pattern: ${e}}`},zIr={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:GIr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0,pI._)`new RegExp`:(0,KIr.useFunc)(t,c),l=t.let("valid");t.try(()=>t.assign(l,(0,pI._)`${u}(${i}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,pI._)`!${l}`)}else{let c=(0,jIr.usePattern)(e,s);e.fail$data((0,pI._)`!${c}.test(${r})`)}}};wie.default=zIr});var Nje=S(Nie=>{"use strict";Object.defineProperty(Nie,"__esModule",{value:!0});var P2=jt(),YIr={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,P2.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,P2._)`{limit: ${e}}`},QIr={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:YIr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?P2.operators.GT:P2.operators.LT;e.fail$data((0,P2._)`Object.keys(${r}).length ${s} ${n}`)}};Nie.default=QIr});var Oje=S(Oie=>{"use strict";Object.defineProperty(Oie,"__esModule",{value:!0});var L2=mo(),M2=jt(),WIr=Ar(),XIr={message:({params:{missingProperty:e}})=>(0,M2.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,M2._)`{missingProperty: ${e}}`},JIr={keyword:"required",type:"object",schemaType:"array",$data:!0,error:XIr,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:a}=e,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let m of r)if(h?.[m]===void 0&&!p.has(m)){let g=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,WIr.checkStrictMode)(a,_,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(M2.nil,d);else for(let h of r)(0,L2.checkReportMissingProp)(e,h)}function l(){let h=t.let("missing");if(c||i){let p=t.let("valid",!0);e.block$data(p,()=>f(h,p)),e.ok(p)}else t.if((0,L2.checkMissingProp)(e,r,h)),(0,L2.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,L2.noPropertyInData)(t,s,h,o.ownProperties),()=>e.error())})}function f(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,L2.propertyInData)(t,s,h,o.ownProperties)),t.if((0,M2.not)(p),()=>{e.error(),t.break()})},M2.nil)}}};Oie.default=JIr});var Dje=S(Die=>{"use strict";Object.defineProperty(Die,"__esModule",{value:!0});var k2=jt(),ZIr={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,k2.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,k2._)`{limit: ${e}}`},eRr={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:ZIr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?k2.operators.GT:k2.operators.LT;e.fail$data((0,k2._)`${r}.length ${s} ${n}`)}};Die.default=eRr});var G5=S(Pie=>{"use strict";Object.defineProperty(Pie,"__esModule",{value:!0});var Pje=hd();Pje.code='require("ajv/dist/runtime/equal").default';Pie.default=Pje});var Lje=S(Mie=>{"use strict";Object.defineProperty(Mie,"__esModule",{value:!0});var Lie=T2(),_o=jt(),tRr=Ar(),rRr=G5(),nRr={message:({params:{i:e,j:t}})=>(0,_o.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,_o._)`{i: ${e}, j: ${t}}`},sRr={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:nRr,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=e;if(!n&&!s)return;let c=t.let("valid"),u=i.items?(0,Lie.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,_o._)`${a} === false`),e.ok(c);function l(){let p=t.let("i",(0,_o._)`${r}.length`),m=t.let("j");e.setParams({i:p,j:m}),t.assign(c,!0),t.if((0,_o._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let g=t.name("item"),_=(0,Lie.checkDataTypes)(u,g,o.opts.strictNumbers,Lie.DataType.Wrong),y=t.const("indices",(0,_o._)`{}`);t.for((0,_o._)`;${p}--;`,()=>{t.let(g,(0,_o._)`${r}[${p}]`),t.if(_,(0,_o._)`continue`),u.length>1&&t.if((0,_o._)`typeof ${g} == "string"`,(0,_o._)`${g} += "_"`),t.if((0,_o._)`typeof ${y}[${g}] == "number"`,()=>{t.assign(m,(0,_o._)`${y}[${g}]`),e.error(),t.assign(c,!1).break()}).code((0,_o._)`${y}[${g}] = ${p}`)})}function h(p,m){let g=(0,tRr.useFunc)(t,rRr.default),_=t.name("outer");t.label(_).for((0,_o._)`;${p}--;`,()=>t.for((0,_o._)`${m} = ${p}; ${m}--;`,()=>t.if((0,_o._)`${g}(${r}[${p}], ${r}[${m}])`,()=>{e.error(),t.assign(c,!1).break(_)})))}}};Mie.default=sRr});var Mje=S(Bie=>{"use strict";Object.defineProperty(Bie,"__esModule",{value:!0});var kie=jt(),iRr=Ar(),aRr=G5(),oRr={message:"must be equal to constant",params:({schemaCode:e})=>(0,kie._)`{allowedValue: ${e}}`},cRr={keyword:"const",$data:!0,error:oRr,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,kie._)`!${(0,iRr.useFunc)(t,aRr.default)}(${r}, ${s})`):e.fail((0,kie._)`${i} !== ${r}`)}};Bie.default=cRr});var kje=S(Uie=>{"use strict";Object.defineProperty(Uie,"__esModule",{value:!0});var B2=jt(),uRr=Ar(),lRr=G5(),dRr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,B2._)`{allowedValues: ${e}}`},fRr={keyword:"enum",schemaType:"array",$data:!0,error:dRr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,uRr.useFunc)(t,lRr.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",i);l=(0,B2.or)(...s.map((p,m)=>f(h,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,h=>t.if((0,B2._)`${u()}(${r}, ${h})`,()=>t.assign(l,!0).break()))}function f(h,p){let m=s[p];return typeof m=="object"&&m!==null?(0,B2._)`${u()}(${r}, ${h}[${p}])`:(0,B2._)`${r} === ${m}`}}};Uie.default=fRr});var Bje=S(Fie=>{"use strict";Object.defineProperty(Fie,"__esModule",{value:!0});var hRr=bje(),pRr=Ije(),mRr=xje(),gRr=wje(),_Rr=Nje(),ARr=Oje(),ERr=Dje(),yRr=Lje(),vRr=Mje(),SRr=kje(),TRr=[hRr.default,pRr.default,mRr.default,gRr.default,_Rr.default,ARr.default,ERr.default,yRr.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},vRr.default,SRr.default];Fie.default=TRr});var qie=S(U2=>{"use strict";Object.defineProperty(U2,"__esModule",{value:!0});U2.validateAdditionalItems=void 0;var Lv=jt(),$ie=Ar(),bRr={message:({params:{len:e}})=>(0,Lv.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Lv._)`{limit: ${e}}`},IRr={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:bRr,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,$ie.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Uje(e,n)}};function Uje(e,t){let{gen:r,schema:n,data:s,keyword:i,it:a}=e;a.items=!0;let o=r.const("len",(0,Lv._)`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Lv._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,$ie.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Lv._)`${o} <= ${t.length}`);r.if((0,Lv.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,o,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:$ie.Type.Num},u),a.allErrors||r.if((0,Lv.not)(u),()=>r.break())})}}U2.validateAdditionalItems=Uje;U2.default=IRr});var Hie=S(F2=>{"use strict";Object.defineProperty(F2,"__esModule",{value:!0});F2.validateTuple=void 0;var Fje=jt(),z5=Ar(),RRr=mo(),CRr={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return $je(e,"additionalItems",t);r.items=!0,!(0,z5.alwaysValidSchema)(r,t)&&e.ok((0,RRr.validateArray)(e))}};function $je(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=e;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=z5.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,Fje._)`${i}.length`);r.forEach((d,f)=>{(0,z5.alwaysValidSchema)(o,d)||(n.if((0,Fje._)`${u} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},c)),e.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=o,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let g=`"${a}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,z5.checkStrictMode)(o,g,f.strictTuples)}}}F2.validateTuple=$je;F2.default=CRr});var qje=S(Vie=>{"use strict";Object.defineProperty(Vie,"__esModule",{value:!0});var xRr=Hie(),wRr={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,xRr.validateTuple)(e,"items")};Vie.default=wRr});var Vje=S(jie=>{"use strict";Object.defineProperty(jie,"__esModule",{value:!0});var Hje=jt(),NRr=Ar(),ORr=mo(),DRr=qie(),PRr={message:({params:{len:e}})=>(0,Hje.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Hje._)`{limit: ${e}}`},LRr={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:PRr,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=!0,!(0,NRr.alwaysValidSchema)(n,t)&&(s?(0,DRr.validateAdditionalItems)(e,s):e.ok((0,ORr.validateArray)(e)))}};jie.default=LRr});var jje=S(Kie=>{"use strict";Object.defineProperty(Kie,"__esModule",{value:!0});var Sd=jt(),Y5=Ar(),MRr={message:({params:{min:e,max:t}})=>t===void 0?(0,Sd.str)`must contain at least ${e} valid item(s)`:(0,Sd.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,Sd._)`{minContains: ${e}}`:(0,Sd._)`{minContains: ${e}, maxContains: ${t}}`},kRr={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:MRr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=t.const("len",(0,Sd._)`${s}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,Y5.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Y5.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,Y5.alwaysValidSchema)(i,r)){let m=(0,Sd._)`${l} >= ${a}`;o!==void 0&&(m=(0,Sd._)`${m} && ${l} <= ${o}`),e.pass(m);return}i.items=!0;let d=t.name("valid");o===void 0&&a===1?h(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,Sd._)`${s}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),g=t.let("count",0);h(m,()=>t.if(m,()=>p(g)))}function h(m,g){t.forRange("i",0,l,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:Y5.Type.Num,compositeRule:!0},m),g()})}function p(m){t.code((0,Sd._)`${m}++`),o===void 0?t.if((0,Sd._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,Sd._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,Sd._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};Kie.default=kRr});var zje=S(mh=>{"use strict";Object.defineProperty(mh,"__esModule",{value:!0});mh.validateSchemaDeps=mh.validatePropertyDeps=mh.error=void 0;var Gie=jt(),BRr=Ar(),$2=mo();mh.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Gie.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Gie._)`{property: ${e}, missingProperty: ${n}, depsCount: ${t}, - deps: ${r}}`};var zur={keyword:"dependencies",type:"object",schemaType:"object",error:zf.error,code(e){let[t,r]=Qur(e);G6e(e,t),Y6e(e,r)}};function Qur({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let i=Array.isArray(e[n])?t:r;i[n]=e[n]}return[t,r]}function G6e(e,t=e.schema){let{gen:r,data:n,it:i}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let u=(0,L2.propertyInData)(r,n,a,i.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),i.allErrors?r.if(u,()=>{for(let c of o)(0,L2.checkReportMissingProp)(e,c)}):(r.if((0,DZ._)`${u} && (${(0,L2.checkMissingProp)(e,o,s)})`),(0,L2.reportMissingProp)(e,s),r.else())}}zf.validatePropertyDeps=G6e;function Y6e(e,t=e.schema){let{gen:r,data:n,keyword:i,it:s}=e,a=r.name("valid");for(let o in t)(0,Vur.alwaysValidSchema)(s,t[o])||(r.if((0,L2.propertyInData)(r,n,o,s.opts.ownProperties),()=>{let u=e.subschema({keyword:i,schemaProp:o},a);e.mergeValidEvaluated(u,a)},()=>r.var(a,!0)),e.ok(a))}zf.validateSchemaDeps=Y6e;zf.default=zur});var J6e=b(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});var X6e=wt(),Gur=zt(),Yur={message:"property name must be valid",params:({params:e})=>(0,X6e._)`{propertyName: ${e.propertyName}}`},Wur={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Yur,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,Gur.alwaysValidSchema)(i,r))return;let s=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},s),t.if((0,X6e.not)(s),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(s)}};kZ.default=Wur});var PZ=b(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});var o$=Ta(),Ed=wt(),Xur=ul(),u$=zt(),Jur={message:"must NOT have additional properties",params:({params:e})=>(0,Ed._)`{additionalProperty: ${e.additionalProperty}}`},Zur={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Jur,code(e){let{gen:t,schema:r,parentSchema:n,data:i,errsCount:s,it:a}=e;if(!s)throw new Error("ajv implementation error");let{allErrors:o,opts:u}=a;if(a.props=!0,u.removeAdditional!=="all"&&(0,u$.alwaysValidSchema)(a,r))return;let c=(0,o$.allSchemaProperties)(n.properties),l=(0,o$.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Ed._)`${s} === ${Xur.default.errors}`);function d(){t.forIn("key",i,y=>{!c.length&&!l.length?h(y):t.if(f(y),()=>h(y))})}function f(y){let g;if(c.length>8){let v=(0,u$.schemaRefOrVal)(a,n.properties,"properties");g=(0,o$.isOwnProperty)(t,v,y)}else c.length?g=(0,Ed.or)(...c.map(v=>(0,Ed._)`${y} === ${v}`)):g=Ed.nil;return l.length&&(g=(0,Ed.or)(g,...l.map(v=>(0,Ed._)`${(0,o$.usePattern)(e,v)}.test(${y})`))),(0,Ed.not)(g)}function p(y){t.code((0,Ed._)`delete ${i}[${y}]`)}function h(y){if(u.removeAdditional==="all"||u.removeAdditional&&r===!1){p(y);return}if(r===!1){e.setParams({additionalProperty:y}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,u$.alwaysValidSchema)(a,r)){let g=t.name("valid");u.removeAdditional==="failing"?(m(y,g,!1),t.if((0,Ed.not)(g),()=>{e.reset(),p(y)})):(m(y,g),o||t.if((0,Ed.not)(g),()=>t.break()))}}function m(y,g,v){let A={keyword:"additionalProperties",dataProp:y,dataPropType:u$.Type.Str};v===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,g)}}};OZ.default=Zur});var tFe=b(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});var ecr=j1(),Z6e=Ta(),MZ=zt(),eFe=PZ(),tcr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:s}=e;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&eFe.default.code(new ecr.KeywordCxt(s,eFe.default,"additionalProperties"));let a=(0,Z6e.allSchemaProperties)(r);for(let d of a)s.definedProperties.add(d);s.opts.unevaluated&&a.length&&s.props!==!0&&(s.props=MZ.mergeEvaluated.props(t,(0,MZ.toHash)(a),s.props));let o=a.filter(d=>!(0,MZ.alwaysValidSchema)(s,r[d]));if(o.length===0)return;let u=t.name("valid");for(let d of o)c(d)?l(d):(t.if((0,Z6e.propertyInData)(t,i,d,s.opts.ownProperties)),l(d),s.allErrors||t.else().var(u,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(u);function c(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},u)}}};LZ.default=tcr});var sFe=b(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});var rFe=Ta(),c$=wt(),nFe=zt(),iFe=zt(),rcr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:i,it:s}=e,{opts:a}=s,o=(0,rFe.allSchemaProperties)(r),u=o.filter(m=>(0,nFe.alwaysValidSchema)(s,r[m]));if(o.length===0||u.length===o.length&&(!s.opts.unevaluated||s.props===!0))return;let c=a.strictSchema&&!a.allowMatchingProperties&&i.properties,l=t.name("valid");s.props!==!0&&!(s.props instanceof c$.Name)&&(s.props=(0,iFe.evaluatedPropsToName)(t,s.props));let{props:d}=s;f();function f(){for(let m of o)c&&p(m),s.allErrors?h(m):(t.var(l,!0),h(m),t.if(l))}function p(m){for(let y in c)new RegExp(m).test(y)&&(0,nFe.checkStrictMode)(s,`property ${y} matches pattern ${m} (use allowMatchingProperties)`)}function h(m){t.forIn("key",n,y=>{t.if((0,c$._)`${(0,rFe.usePattern)(e,m)}.test(${y})`,()=>{let g=u.includes(m);g||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:y,dataPropType:iFe.Type.Str},l),s.opts.unevaluated&&d!==!0?t.assign((0,c$._)`${d}[${y}]`,!0):!g&&!s.allErrors&&t.if((0,c$.not)(l),()=>t.break())})})}}};BZ.default=rcr});var aFe=b($Z=>{"use strict";Object.defineProperty($Z,"__esModule",{value:!0});var ncr=zt(),icr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,ncr.alwaysValidSchema)(n,r)){e.fail();return}let i=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),e.failResult(i,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};$Z.default=icr});var oFe=b(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});var scr=Ta(),acr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:scr.validateUnion,error:{message:"must match a schema in anyOf"}};FZ.default=acr});var uFe=b(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});var l$=wt(),ocr=zt(),ucr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,l$._)`{passingSchemas: ${e.passing}}`},ccr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ucr,code(e){let{gen:t,schema:r,parentSchema:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,a=t.let("valid",!1),o=t.let("passing",null),u=t.name("_valid");e.setParams({passing:o}),t.block(c),e.result(a,()=>e.reset(),()=>e.error(!0));function c(){s.forEach((l,d)=>{let f;(0,ocr.alwaysValidSchema)(i,l)?t.var(u,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},u),d>0&&t.if((0,l$._)`${u} && ${a}`).assign(a,!1).assign(o,(0,l$._)`[${o}, ${d}]`).else(),t.if(u,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,l$.Name)})})}}};UZ.default=ccr});var cFe=b(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});var lcr=zt(),dcr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=t.name("valid");r.forEach((s,a)=>{if((0,lcr.alwaysValidSchema)(n,s))return;let o=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(o)})}};qZ.default=dcr});var fFe=b(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});var d$=wt(),dFe=zt(),fcr={message:({params:e})=>(0,d$.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,d$._)`{failingKeyword: ${e.ifClause}}`},pcr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:fcr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,dFe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=lFe(n,"then"),s=lFe(n,"else");if(!i&&!s)return;let a=t.let("valid",!0),o=t.name("_valid");if(u(),e.reset(),i&&s){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,c("then",l),c("else",l))}else i?t.if(o,c("then")):t.if((0,d$.not)(o),c("else"));e.pass(a,()=>e.error(!0));function u(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function c(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,d$._)`${l}`):e.setParams({ifClause:l})}}}};function lFe(e,t){let r=e.schema[t];return r!==void 0&&!(0,dFe.alwaysValidSchema)(e,r)}jZ.default=pcr});var pFe=b(HZ=>{"use strict";Object.defineProperty(HZ,"__esModule",{value:!0});var hcr=zt(),mcr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,hcr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};HZ.default=mcr});var hFe=b(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});var gcr=xZ(),ycr=K6e(),_cr=CZ(),Acr=z6e(),vcr=Q6e(),bcr=W6e(),Ecr=J6e(),Scr=PZ(),wcr=tFe(),Icr=sFe(),xcr=aFe(),Ccr=oFe(),Tcr=uFe(),Ncr=cFe(),Rcr=fFe(),Dcr=pFe();function kcr(e=!1){let t=[xcr.default,Ccr.default,Tcr.default,Ncr.default,Rcr.default,Dcr.default,Ecr.default,Scr.default,bcr.default,wcr.default,Icr.default];return e?t.push(ycr.default,Acr.default):t.push(gcr.default,_cr.default),t.push(vcr.default),t}KZ.default=kcr});var mFe=b(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});var Ji=wt(),Ocr={message:({schemaCode:e})=>(0,Ji.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Ji._)`{format: ${e}}`},Pcr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Ocr,code(e,t){let{gen:r,data:n,$data:i,schema:s,schemaCode:a,it:o}=e,{opts:u,errSchemaPath:c,schemaEnv:l,self:d}=o;if(!u.validateFormats)return;i?f():p();function f(){let h=r.scopeValue("formats",{ref:d.formats,code:u.code.formats}),m=r.const("fDef",(0,Ji._)`${h}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,Ji._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(y,(0,Ji._)`${m}.type || "string"`).assign(g,(0,Ji._)`${m}.validate`),()=>r.assign(y,(0,Ji._)`"string"`).assign(g,m)),e.fail$data((0,Ji.or)(v(),A()));function v(){return u.strictSchema===!1?Ji.nil:(0,Ji._)`${a} && !${g}`}function A(){let _=l.$async?(0,Ji._)`(${m}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Ji._)`${g}(${n})`,E=(0,Ji._)`(typeof ${g} == "function" ? ${_} : ${g}.test(${n}))`;return(0,Ji._)`${g} && ${g} !== true && ${y} === ${t} && !${E}`}}function p(){let h=d.formats[s];if(!h){v();return}if(h===!0)return;let[m,y,g]=A(h);m===t&&e.pass(_());function v(){if(u.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${c}"`}}function A(E){let S=E instanceof RegExp?(0,Ji.regexpCode)(E):u.code.formats?(0,Ji._)`${u.code.formats}${(0,Ji.getProperty)(s)}`:void 0,C=r.scopeValue("formats",{key:s,ref:E,code:S});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,Ji._)`${C}.validate`]:["string",E,C]}function _(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Ji._)`await ${g}(${n})`}return typeof y=="function"?(0,Ji._)`${g}(${n})`:(0,Ji._)`${g}.test(${n})`}}}};VZ.default=Pcr});var gFe=b(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});var Mcr=mFe(),Lcr=[Mcr.default];zZ.default=Lcr});var yFe=b(Q1=>{"use strict";Object.defineProperty(Q1,"__esModule",{value:!0});Q1.contentVocabulary=Q1.metadataVocabulary=void 0;Q1.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Q1.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var AFe=b(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});var Bcr=x6e(),$cr=U6e(),Fcr=hFe(),Ucr=gFe(),_Fe=yFe(),qcr=[Bcr.default,$cr.default,(0,Fcr.default)(),Ucr.default,_Fe.metadataVocabulary,_Fe.contentVocabulary];QZ.default=qcr});var GZ=b(f$=>{"use strict";Object.defineProperty(f$,"__esModule",{value:!0});f$.DiscrError=void 0;var vFe;(function(e){e.Tag="tag",e.Mapping="mapping"})(vFe||(f$.DiscrError=vFe={}))});var EFe=b(WZ=>{"use strict";Object.defineProperty(WZ,"__esModule",{value:!0});var G1=wt(),YZ=GZ(),bFe=kA(),jcr=Mh(),Hcr=zt(),Kcr={message:({params:{discrError:e,tagName:t}})=>e===YZ.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,G1._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},Vcr={keyword:"discriminator",type:"object",schemaType:"object",error:Kcr,code(e){let{gen:t,data:r,schema:n,parentSchema:i,it:s}=e,{oneOf:a}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=t.let("valid",!1),c=t.const("tag",(0,G1._)`${r}${(0,G1.getProperty)(o)}`);t.if((0,G1._)`typeof ${c} == "string"`,()=>l(),()=>e.error(!1,{discrError:YZ.DiscrError.Tag,tag:c,tagName:o})),e.ok(u);function l(){let p=f();t.if(!1);for(let h in p)t.elseIf((0,G1._)`${c} === ${h}`),t.assign(u,d(p[h]));t.else(),e.error(!1,{discrError:YZ.DiscrError.Mapping,tag:c,tagName:o}),t.endIf()}function d(p){let h=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:p},h);return e.mergeEvaluated(m,G1.Name),h}function f(){var p;let h={},m=g(i),y=!0;for(let _=0;_{zcr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var IFe=b((ai,XZ)=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.MissingRefError=ai.ValidationError=ai.CodeGen=ai.Name=ai.nil=ai.stringify=ai.str=ai._=ai.KeywordCxt=ai.Ajv=void 0;var Qcr=aZ(),Gcr=AFe(),Ycr=EFe(),wFe=SFe(),Wcr=["/properties"],p$="http://json-schema.org/draft-07/schema",Y1=class extends Qcr.default{_addVocabularies(){super._addVocabularies(),Gcr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(Ycr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(wFe,Wcr):wFe;this.addMetaSchema(t,p$,!1),this.refs["http://json-schema.org/schema"]=p$}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(p$)?p$:void 0)}};ai.Ajv=Y1;XZ.exports=ai=Y1;XZ.exports.Ajv=Y1;Object.defineProperty(ai,"__esModule",{value:!0});ai.default=Y1;var Xcr=j1();Object.defineProperty(ai,"KeywordCxt",{enumerable:!0,get:function(){return Xcr.KeywordCxt}});var W1=wt();Object.defineProperty(ai,"_",{enumerable:!0,get:function(){return W1._}});Object.defineProperty(ai,"str",{enumerable:!0,get:function(){return W1.str}});Object.defineProperty(ai,"stringify",{enumerable:!0,get:function(){return W1.stringify}});Object.defineProperty(ai,"nil",{enumerable:!0,get:function(){return W1.nil}});Object.defineProperty(ai,"Name",{enumerable:!0,get:function(){return W1.Name}});Object.defineProperty(ai,"CodeGen",{enumerable:!0,get:function(){return W1.CodeGen}});var Jcr=S2();Object.defineProperty(ai,"ValidationError",{enumerable:!0,get:function(){return Jcr.default}});var Zcr=Mh();Object.defineProperty(ai,"MissingRefError",{enumerable:!0,get:function(){return Zcr.default}})});var Bh=b(B2=>{"use strict";Object.defineProperty(B2,"__esModule",{value:!0});B2.checkMetadata=void 0;var elr=zt(),tlr={keyword:"metadata",schemaType:"object",code(e){xFe(e);let{gen:t,schema:r,it:n}=e;if((0,elr.alwaysValidSchema)(n,r))return;let i=t.name("valid");e.subschema({keyword:"metadata",jtdMetadata:!0},i),e.ok(i)}};function xFe({it:e,keyword:t},r){if(e.jtdMetadata!==r)throw new Error(`JTD: "${t}" cannot be used in this schema location`)}B2.checkMetadata=xFe;B2.default=tlr});var h$=b(F2=>{"use strict";Object.defineProperty(F2,"__esModule",{value:!0});F2.hasRef=void 0;var CFe=kA(),$2=wt(),rlr=Mh(),TFe=ul(),NFe=uZ(),nlr=Bh(),ilr={keyword:"ref",schemaType:"string",code(e){(0,nlr.checkMetadata)(e);let{gen:t,data:r,schema:n,parentSchema:i,it:s}=e,{schemaEnv:{root:a}}=s,o=t.name("valid");i.nullable?(t.var(o,(0,$2._)`${r} === null`),t.if((0,$2.not)(o),u)):(t.var(o,!1),u()),e.ok(o);function u(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new rlr.default(s.opts.uriResolver,"",n,`No definition ${n}`);JZ(f)||!s.opts.inlineRefs?c(f):l(f)}function c(d){let f=CFe.compileSchema.call(s.self,new CFe.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,NFe.getValidate)(e,f),h=t.const("_errs",TFe.default.errors);(0,NFe.callRef)(e,p,f,f.$async),t.assign(o,(0,$2._)`${h} === ${TFe.default.errors}`)}function l(d){let f=t.scopeValue("schema",s.opts.code.source===!0?{ref:d,code:(0,$2.stringify)(d)}:{ref:d});e.subschema({schema:d,dataTypes:[],schemaPath:$2.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function JZ(e){for(let t in e){let r;if(t==="ref"||typeof(r=e[t])=="object"&&JZ(r))return!0}return!1}F2.hasRef=JZ;F2.default=ilr});var eee=b(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});var slr=/t|\s/i,alr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,olr=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,ulr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function DFe(e,t){let r=e.split(slr);return r.length===2&&RFe(r[0])&&clr(r[1])||t&&r.length===1&&RFe(r[0])}ZZ.default=DFe;function RFe(e){let t=alr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],i=+t[3];return n>=1&&n<=12&&i>=1&&(i<=ulr[n]||n===2&&i===29&&(r%100===0?r%400===0:r%4===0))}function clr(e){let t=olr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],i=+t[3],s=+(t[4]||0),a=+(t[5]||0);return r<=23&&n<=59&&i<=59||r-s===23&&n-a===59&&i===60}DFe.code='require("ajv/dist/runtime/timestamp").default'});var X1=b(Eg=>{"use strict";Object.defineProperty(Eg,"__esModule",{value:!0});Eg.typeErrorParams=Eg.typeErrorMessage=Eg.typeError=void 0;var llr=wt();function dlr(e){return{message:t=>kFe(t,e),params:t=>OFe(t,e)}}Eg.typeError=dlr;function kFe({parentSchema:e},t){return e?.nullable?`must be ${t} or null`:`must be ${t}`}Eg.typeErrorMessage=kFe;function OFe({parentSchema:e},t){return(0,llr._)`{type: ${t}, nullable: ${!!e?.nullable}}`}Eg.typeErrorParams=OFe});var tee=b(J1=>{"use strict";Object.defineProperty(J1,"__esModule",{value:!0});J1.intRange=void 0;var _c=wt(),flr=eee(),plr=zt(),hlr=Bh(),PFe=X1();J1.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var mlr={message:e=>(0,PFe.typeErrorMessage)(e,e.schema),params:e=>(0,PFe.typeErrorParams)(e,e.schema)};function glr(e){let{gen:t,data:r,it:n}=e,{timestamp:i,allowDate:s}=n.opts;if(i==="date")return(0,_c._)`${r} instanceof Date `;let a=(0,plr.useFunc)(t,flr.default),o=s?(0,_c._)`, true`:_c.nil,u=(0,_c._)`typeof ${r} == "string" && ${a}(${r}${o})`;return i==="string"?u:(0,_c.or)((0,_c._)`${r} instanceof Date`,u)}var ylr={keyword:"type",schemaType:"string",error:mlr,code(e){(0,hlr.checkMetadata)(e);let{data:t,schema:r,parentSchema:n,it:i}=e,s;switch(r){case"boolean":case"string":s=(0,_c._)`typeof ${t} == ${r}`;break;case"timestamp":{s=glr(e);break}case"float32":case"float64":s=(0,_c._)`typeof ${t} == "number"`;break;default:{let a=r;if(s=(0,_c._)`typeof ${t} == "number" && isFinite(${t}) && !(${t} % 1)`,!i.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(s=(0,_c._)`${s} && ${t} >= 0`);else{let[o,u]=J1.intRange[a];s=(0,_c._)`${s} && ${t} >= ${o} && ${t} <= ${u}`}}}e.pass(n.nullable?(0,_c.or)((0,_c._)`${t} === null`,s):s)}};J1.default=ylr});var eS=b(Z1=>{"use strict";Object.defineProperty(Z1,"__esModule",{value:!0});Z1.checkNullableObject=Z1.checkNullable=void 0;var m$=wt();function MFe({gen:e,data:t,parentSchema:r},n=m$.nil){let i=e.name("valid");return r.nullable?(e.let(i,(0,m$._)`${t} === null`),n=(0,m$.not)(i)):e.let(i,!1),[i,n]}Z1.checkNullable=MFe;function _lr(e,t){let[r,n]=MFe(e,t);return[r,(0,m$._)`${n} && typeof ${e.data} == "object" && !Array.isArray(${e.data})`]}Z1.checkNullableObject=_lr});var LFe=b(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});var Sg=wt(),Alr=Bh(),vlr=eS(),blr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,Sg._)`{allowedValues: ${e}}`},Elr={keyword:"enum",schemaType:"array",error:blr,code(e){(0,Alr.checkMetadata)(e);let{gen:t,data:r,schema:n,schemaValue:i,parentSchema:s,it:a}=e;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,u=(0,Sg._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,vlr.checkNullable)(e,u),t.if(l,c)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Sg.and)(u,(0,Sg.or)(...n.map(l=>(0,Sg._)`${r} === ${l}`))),s.nullable&&(o=(0,Sg.or)((0,Sg._)`${r} === null`,o))}e.pass(o);function c(){t.forOf("v",i,l=>t.if((0,Sg._)`${o} = ${r} === ${l}`,()=>t.break()))}}};ree.default=Elr});var $Fe=b(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});var Slr=zt(),wlr=Ta(),BFe=wt(),Ilr=Bh(),xlr=eS(),Clr=X1(),Tlr={keyword:"elements",schemaType:"object",error:(0,Clr.typeError)("array"),code(e){(0,Ilr.checkMetadata)(e);let{gen:t,data:r,schema:n,it:i}=e;if((0,Slr.alwaysValidSchema)(i,n))return;let[s]=(0,xlr.checkNullable)(e);t.if((0,BFe.not)(s),()=>t.if((0,BFe._)`Array.isArray(${r})`,()=>t.assign(s,(0,wlr.validateArray)(e)),()=>e.error())),e.ok(s)}};nee.default=Tlr});var see=b(wg=>{"use strict";Object.defineProperty(wg,"__esModule",{value:!0});wg.validateProperties=wg.error=void 0;var iee=Ta(),FFe=zt(),$h=wt(),Nlr=Bh(),Rlr=eS(),UFe=X1(),tS;(function(e){e.Additional="additional",e.Missing="missing"})(tS||(tS={}));wg.error={message:e=>{let{params:t}=e;return t.propError?t.propError===tS.Additional?"must NOT have additional properties":`must have property '${t.missingProperty}'`:(0,UFe.typeErrorMessage)(e,"object")},params:e=>{let{params:t}=e;return t.propError?t.propError===tS.Additional?(0,$h._)`{error: ${t.propError}, additionalProperty: ${t.additionalProperty}}`:(0,$h._)`{error: ${t.propError}, missingProperty: ${t.missingProperty}}`:(0,UFe.typeErrorParams)(e,"object")}};var Dlr={keyword:"properties",schemaType:"object",error:wg.error,code:qFe};function qFe(e){(0,Nlr.checkMetadata)(e);let{gen:t,data:r,parentSchema:n,it:i}=e,{additionalProperties:s,nullable:a}=n;if(i.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,u]=h("properties"),[c,l]=h("optionalProperties");if(u.length===0&&l.length===0&&s)return;let[d,f]=i.jtdDiscriminator===void 0?(0,Rlr.checkNullableObject)(e,r):[t.let("valid",!1),!0];t.if(f,()=>t.assign(d,!0).block(()=>{m(u,"properties",!0),m(l,"optionalProperties"),s||g()})),e.pass(d);function p(){let A=n.properties,_=n.optionalProperties;if(!(A&&_))return!1;for(let E in A)if(Object.prototype.hasOwnProperty.call(_,E))return!0;return!1}function h(A){let _=n[A],E=_?(0,iee.allSchemaProperties)(_):[];if(i.jtdDiscriminator&&E.some(C=>C===i.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${A}`);let S=E.filter(C=>!(0,FFe.alwaysValidSchema)(i,_[C]));return[E,S]}function m(A,_,E){let S=t.var("valid");for(let I of A)t.if((0,iee.propertyInData)(t,r,I,i.opts.ownProperties),()=>y(I,_,S),()=>C(I)),e.ok(S);function C(I){E?(t.assign(S,!1),e.error(!1,{propError:tS.Missing,missingProperty:I},{schemaPath:I})):t.assign(S,!0)}}function y(A,_,E){e.subschema({keyword:_,schemaProp:A,dataProp:A},E)}function g(){t.forIn("key",r,A=>{let _=v(A,o,"properties",i.jtdDiscriminator),E=v(A,c,"optionalProperties"),S=_===!0?E:E===!0?_:(0,$h.and)(_,E);t.if(S,()=>{i.opts.removeAdditional?t.code((0,$h._)`delete ${r}[${A}]`):(e.error(!1,{propError:tS.Additional,additionalProperty:A},{instancePath:A,parentSchema:!0}),i.opts.allErrors||t.break())})})}function v(A,_,E,S){let C;if(_.length>8){let I=(0,FFe.schemaRefOrVal)(i,n[E],E);C=(0,$h.not)((0,iee.isOwnProperty)(t,I,A)),S!==void 0&&(C=(0,$h.and)(C,(0,$h._)`${A} !== ${S}`))}else if(_.length||S!==void 0){let I=S===void 0?_:[S].concat(_);C=(0,$h.and)(...I.map(N=>(0,$h._)`${A} !== ${N}`))}else C=!0;return C}}wg.validateProperties=qFe;wg.default=Dlr});var HFe=b(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});var jFe=see(),klr={keyword:"optionalProperties",schemaType:"object",error:jFe.error,code(e){e.parentSchema.properties||(0,jFe.validateProperties)(e)}};aee.default=klr});var VFe=b(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});var LA=wt(),Olr=Bh(),Plr=eS(),KFe=X1(),g$=GZ(),Mlr={message:e=>{let{schema:t,params:r}=e;return r.discrError?r.discrError===g$.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in mapping`:(0,KFe.typeErrorMessage)(e,"object")},params:e=>{let{schema:t,params:r}=e;return r.discrError?(0,LA._)`{error: ${r.discrError}, tag: ${t}, tagValue: ${r.tag}}`:(0,KFe.typeErrorParams)(e,"object")}},Llr={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:Mlr,code(e){(0,Olr.checkMetadata)(e);let{gen:t,data:r,schema:n,parentSchema:i}=e,[s,a]=(0,Plr.checkNullableObject)(e,r);t.if(a),o(),t.elseIf((0,LA.not)(s)),e.error(),t.endIf(),e.ok(s);function o(){let l=t.const("tag",(0,LA._)`${r}${(0,LA.getProperty)(n)}`);t.if((0,LA._)`${l} === undefined`),e.error(!1,{discrError:g$.DiscrError.Tag,tag:l}),t.elseIf((0,LA._)`typeof ${l} == "string"`),u(l),t.else(),e.error(!1,{discrError:g$.DiscrError.Tag,tag:l},{instancePath:n}),t.endIf()}function u(l){t.if(!1);for(let d in i.mapping)t.elseIf((0,LA._)`${l} === ${d}`),t.assign(s,c(d));t.else(),e.error(!1,{discrError:g$.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),t.endIf()}function c(l){let d=t.name("valid");return e.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};oee.default=Llr});var QFe=b(uee=>{"use strict";Object.defineProperty(uee,"__esModule",{value:!0});var zFe=zt(),y$=wt(),Blr=Bh(),$lr=eS(),Flr=X1(),Ulr={keyword:"values",schemaType:"object",error:(0,Flr.typeError)("object"),code(e){(0,Blr.checkMetadata)(e);let{gen:t,data:r,schema:n,it:i}=e,[s,a]=(0,$lr.checkNullableObject)(e,r);(0,zFe.alwaysValidSchema)(i,n)?t.if((0,y$.not)((0,y$.or)(a,s)),()=>e.error()):(t.if(a),t.assign(s,o()),t.elseIf((0,y$.not)(s)),e.error(),t.endIf()),e.ok(s);function o(){let u=t.name("valid");if(i.allErrors){let l=t.let("valid",!0);return c(()=>t.assign(l,!1)),l}return t.var(u,!0),c(()=>t.break()),u;function c(l){t.forIn("key",r,d=>{e.subschema({keyword:"values",dataProp:d,dataPropType:zFe.Type.Str},u),t.if((0,y$.not)(u),l)})}}}};uee.default=Ulr});var GFe=b(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});var qlr=Ta(),jlr={keyword:"union",schemaType:"array",trackErrors:!0,code:qlr.validateUnion,error:{message:"must match a schema in union"}};cee.default=jlr});var YFe=b(lee=>{"use strict";Object.defineProperty(lee,"__esModule",{value:!0});var Hlr=h$(),Klr=tee(),Vlr=LFe(),zlr=$Fe(),Qlr=see(),Glr=HFe(),Ylr=VFe(),Wlr=QFe(),Xlr=GFe(),Jlr=Bh(),Zlr=["definitions",Hlr.default,Klr.default,Vlr.default,zlr.default,Qlr.default,Glr.default,Ylr.default,Wlr.default,Xlr.default,Jlr.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];lee.default=Zlr});var ZFe=b(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});var Fh=e=>{let t={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return e&&(t.definitions={values:{ref:"schema"}}),t},edr=e=>({optionalProperties:Fh(e)}),tdr=e=>({properties:{ref:{type:"string"}},optionalProperties:Fh(e)}),rdr=e=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:Fh(e)}),ndr=e=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:Fh(e)}),idr=e=>({properties:{elements:{ref:"schema"}},optionalProperties:Fh(e)}),XFe=e=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...Fh(e)}}),JFe=e=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...Fh(e)}}),sdr=e=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[XFe(!1),JFe(!1)]}}}},optionalProperties:Fh(e)}),adr=e=>({properties:{values:{ref:"schema"}},optionalProperties:Fh(e)}),WFe=e=>({metadata:{union:[edr,tdr,rdr,ndr,idr,XFe,JFe,sdr,adr].map(t=>t(e))}}),odr={definitions:{schema:WFe(!1)},...WFe(!0)};dee.default=odr});var fee=b(_$=>{"use strict";Object.defineProperty(_$,"__esModule",{value:!0});_$.jtdForms=void 0;_$.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var t5e=b(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});var pee=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,udr={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function e5e(e){return pee.lastIndex=0,'"'+(pee.test(e)?e.replace(pee,t=>{let r=udr[t];return typeof r=="string"?r:"\\u"+("0000"+t.charCodeAt(0).toString(16)).slice(-4)}):e)+'"'}hee.default=e5e;e5e.code='require("ajv/dist/runtime/quote").default'});var o5e=b(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});var cdr=fee(),n5e=kA(),nr=wt(),ldr=Mh(),Cn=ul(),ddr=Ta(),fdr=h$(),pdr=zt(),hdr=t5e(),mdr={elements:ydr,values:_dr,discriminator:Adr,properties:r5e,optionalProperties:r5e,enum:U2,type:vdr,ref:Edr};function i5e(e,t){let r=n5e.getCompilingSchema.call(this,e);if(r)return r;let{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,a=new nr.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),o=a.scopeName("serialize"),u={self:this,gen:a,schema:e.schema,schemaEnv:e,definitions:t,data:Cn.default.data},c;try{this._compilations.add(e),e.serializeName=o,a.func(o,Cn.default.data,!1,()=>{a.let(Cn.default.json,(0,nr.str)``),q2(u),a.return(Cn.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();c=`${a.scopeRefs(Cn.default.scope)}return ${l}`;let f=new Function(`${Cn.default.scope}`,c)(this.scope.get());this.scope.value(o,{ref:f}),e.serialize=f}catch(l){throw c&&this.logger.error("Error compiling serializer, function code:",c),delete e.serialize,delete e.serializeName,l}finally{this._compilations.delete(e)}return e}gee.default=i5e;function q2(e){let t;for(let r of cdr.jtdForms)if(r in e.schema){t=r;break}gdr(e,t?mdr[t]:wdr)}function gdr(e,t){let{gen:r,schema:n,data:i}=e;if(!n.nullable)return t(e);r.if((0,nr._)`${i} === undefined || ${i} === null`,()=>r.add(Cn.default.json,(0,nr._)`"null"`),()=>t(e))}function ydr(e){let{gen:t,schema:r,data:n}=e;t.add(Cn.default.json,(0,nr.str)`[`);let i=t.let("first",!0);t.forOf("el",n,s=>{mee(e,i),q2({...e,schema:r.elements,data:s})}),t.add(Cn.default.json,(0,nr.str)`]`)}function _dr(e){let{gen:t,schema:r,data:n}=e;t.add(Cn.default.json,(0,nr.str)`{`);let i=t.let("first",!0);t.forIn("key",n,s=>s5e(e,s,r.values,i)),t.add(Cn.default.json,(0,nr.str)`}`)}function s5e(e,t,r,n){let{gen:i,data:s}=e;mee(e,n),U2({...e,data:t}),i.add(Cn.default.json,(0,nr.str)`:`);let a=i.const("value",(0,nr._)`${s}${(0,nr.getProperty)(t)}`);q2({...e,schema:r,data:a})}function Adr(e){let{gen:t,schema:r,data:n}=e,{discriminator:i}=r;t.add(Cn.default.json,(0,nr.str)`{${JSON.stringify(i)}:`);let s=t.const("tag",(0,nr._)`${n}${(0,nr.getProperty)(i)}`);U2({...e,data:s}),t.if(!1);for(let a in r.mapping){t.elseIf((0,nr._)`${s} === ${a}`);let o=r.mapping[a];a5e({...e,schema:o},i)}t.endIf(),t.add(Cn.default.json,(0,nr.str)`}`)}function r5e(e){let{gen:t}=e;t.add(Cn.default.json,(0,nr.str)`{`),a5e(e),t.add(Cn.default.json,(0,nr.str)`}`)}function a5e(e,t){let{gen:r,schema:n,data:i}=e,{properties:s,optionalProperties:a}=n,o=f(s),u=f(a),c=p(o.concat(u)),l=!t,d;for(let g of o)l?l=!1:r.add(Cn.default.json,(0,nr.str)`,`),m(g,s[g],h(g));l&&(d=r.let("first",!0));for(let g of u){let v=h(g);r.if((0,nr.and)((0,nr._)`${v} !== undefined`,(0,ddr.isOwnProperty)(r,i,g)),()=>{mee(e,d),m(g,a[g],v)})}n.additionalProperties&&r.forIn("key",i,g=>r.if(y(g,c),()=>s5e(e,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(t&&g.push(t),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function h(g){return r.const("value",(0,nr._)`${i}${(0,nr.getProperty)(g)}`)}function m(g,v,A){r.add(Cn.default.json,(0,nr.str)`${JSON.stringify(g)}:`),q2({...e,schema:v,data:A})}function y(g,v){return v.length?(0,nr.and)(...v.map(A=>(0,nr._)`${g} !== ${A}`)):!0}}function vdr(e){let{gen:t,schema:r,data:n}=e;switch(r.type){case"boolean":t.add(Cn.default.json,(0,nr._)`${n} ? "true" : "false"`);break;case"string":U2(e);break;case"timestamp":t.if((0,nr._)`${n} instanceof Date`,()=>t.add(Cn.default.json,(0,nr._)`'"' + ${n}.toISOString() + '"'`),()=>U2(e));break;default:bdr(e)}}function U2({gen:e,data:t}){e.add(Cn.default.json,(0,nr._)`${(0,pdr.useFunc)(e,hdr.default)}(${t})`)}function bdr({gen:e,data:t,self:r}){let n=(0,nr._)`${t} === Infinity || ${t} === -Infinity || ${t} !== ${t}`;r.opts.specialNumbers===void 0||r.opts.specialNumbers==="fast"?e.add(Cn.default.json,(0,nr._)`"" + ${t}`):e.if(n,()=>e.add(Cn.default.json,(0,nr._)`null`),()=>e.add(Cn.default.json,(0,nr._)`"" + ${t}`))}function Edr(e){let{gen:t,self:r,data:n,definitions:i,schema:s,schemaEnv:a}=e,{ref:o}=s,u=i[o];if(!u)throw new ldr.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,fdr.hasRef)(u))return q2({...e,schema:u});let{root:c}=a,l=i5e.call(r,new n5e.SchemaEnv({schema:u,root:c}),i);t.add(Cn.default.json,(0,nr._)`${Sdr(t,l)}(${n})`)}function Sdr(e,t){return t.serialize?e.scopeValue("serialize",{ref:t.serialize}):(0,nr._)`${e.scopeValue("wrapper",{ref:t})}.serialize`}function wdr({gen:e,data:t}){e.add(Cn.default.json,(0,nr._)`JSON.stringify(${t})`)}function mee({gen:e},t){t?e.if(t,()=>e.assign(t,!1),()=>e.add(Cn.default.json,(0,nr.str)`,`)):e.add(Cn.default.json,(0,nr.str)`,`)}});var c5e=b(xg=>{"use strict";Object.defineProperty(xg,"__esModule",{value:!0});xg.parseJsonString=xg.parseJsonNumber=xg.parseJson=void 0;var Idr=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Uh(e,t){let r;Uh.message=void 0;let n;t&&(e=e.slice(t));try{return Uh.position=t+e.length,JSON.parse(e)}catch(i){if(n=Idr.exec(i.message),!n){Uh.message="unexpected end";return}r=+n[1];let s=e[r];e=e.slice(0,r),Uh.position=t+r;try{return JSON.parse(e)}catch{Uh.message=`unexpected token ${s}`;return}}}xg.parseJson=Uh;Uh.message=void 0;Uh.position=0;Uh.code='require("ajv/dist/runtime/parseJson").parseJson';function qh(e,t,r){let n="",i;if(qh.message=void 0,e[t]==="-"&&(n+="-",t++),e[t]==="0")n+="0",t++;else if(!s(r)){a();return}if(r)return qh.position=t,+n;if(e[t]==="."&&(n+=".",t++,!s())){a();return}if(i=e[t],(i==="e"||i==="E")&&(n+="e",t++,i=e[t],(i==="+"||i==="-")&&(n+=i,t++),!s())){a();return}return qh.position=t,+n;function s(o){let u=!1;for(;i=e[t],i>="0"&&i<="9"&&(o===void 0||o-- >0);)u=!0,n+=i,t++;return u}function a(){qh.position=t,qh.message=t="a"&&n<="f")a+=n.charCodeAt(0)-xdr+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-Cdr;else{i(`unexpected token ${n}`);return}t++}r+=String.fromCharCode(a)}else{i(`unexpected token ${n}`);return}else if(n===void 0){i("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{i(`unexpected token ${n}`);return}return Ig.position=t,r;function i(s){Ig.position=t,Ig.message=s}}xg.parseJsonString=Ig;Ig.message=void 0;Ig.position=0;Ig.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var v5e=b(wee=>{"use strict";Object.defineProperty(wee,"__esModule",{value:!0});var Tdr=fee(),p5e=kA(),pt=wt(),Ndr=Mh(),pr=ul(),Rdr=Ta(),Ddr=h$(),kdr=tee(),Aee=c5e(),h5e=zt(),Odr=eee(),Pdr={elements:$dr,values:Fdr,discriminator:qdr,properties:l5e,optionalProperties:l5e,enum:Hdr,type:jdr,ref:Kdr};function m5e(e,t){let r=p5e.getCompilingSchema.call(this,e);if(r)return r;let{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,a=new pt.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),o=a.scopeName("parse"),u={self:this,gen:a,schema:e.schema,schemaEnv:e,definitions:t,data:pr.default.data,parseName:o,char:a.name("c")},c;try{this._compilations.add(e),e.parseName=o,Mdr(u),a.optimize(this.opts.code.optimize);let l=a.toString();c=`${a.scopeRefs(pr.default.scope)}return ${l}`;let f=new Function(`${pr.default.scope}`,c)(this.scope.get());this.scope.value(o,{ref:f}),e.parse=f}catch(l){throw c&&this.logger.error("Error compiling parser, function code:",c),delete e.parse,delete e.parseName,l}finally{this._compilations.delete(e)}return e}wee.default=m5e;var _ee=(0,pt._)`undefined`;function Mdr(e){let{gen:t,parseName:r,char:n}=e;t.func(r,(0,pt._)`${pr.default.json}, ${pr.default.jsonPos}, ${pr.default.jsonPart}`,!1,()=>{t.let(pr.default.data),t.let(n),t.assign((0,pt._)`${r}.message`,_ee),t.assign((0,pt._)`${r}.position`,_ee),t.assign(pr.default.jsonPos,(0,pt._)`${pr.default.jsonPos} || 0`),t.const(pr.default.jsonLen,(0,pt._)`${pr.default.json}.length`),A$(e),See(e),t.if(pr.default.jsonPart,()=>{t.assign((0,pt._)`${r}.position`,pr.default.jsonPos),t.return(pr.default.data)}),t.if((0,pt._)`${pr.default.jsonPos} === ${pr.default.jsonLen}`,()=>t.return(pr.default.data)),rS(e)})}function A$(e){let t;for(let r of Tdr.jtdForms)if(r in e.schema){t=r;break}t?Bdr(e,Pdr[t]):bee(e)}var Ldr=f5e(!0,f5e(!1,rS));function Bdr(e,t){let{gen:r,schema:n,data:i}=e;if(!n.nullable)return t(e);j2(e,"null",t,()=>r.assign(i,null))}function $dr(e){let{gen:t,schema:r,data:n}=e;Qf(e,"[");let i=t.let("i",0);t.assign(n,(0,pt._)`[]`),vee(e,"]",()=>{let s=t.let("el");A$({...e,schema:r.elements,data:s}),t.assign((0,pt._)`${n}[${i}++]`,s)})}function Fdr(e){let{gen:t,schema:r,data:n}=e;Qf(e,"{"),t.assign(n,(0,pt._)`{}`),vee(e,"}",()=>Udr(e,r.values))}function vee(e,t,r){g5e(e,t,r),Qf(e,t)}function g5e(e,t,r){let{gen:n}=e;n.for((0,pt._)`;${pr.default.jsonPos}<${pr.default.jsonLen} && ${v$(1)}!==${t};`,()=>{r(),j2(e,",",()=>n.break(),i)});function i(){j2(e,t,()=>{},rS)}}function Udr(e,t){let{gen:r}=e,n=r.let("key");BA({...e,data:n}),Qf(e,":"),_5e(e,n,t)}function qdr(e){let{gen:t,data:r,schema:n}=e,{discriminator:i,mapping:s}=n;Qf(e,"{"),t.assign(r,(0,pt._)`{}`);let a=t.const("pos",pr.default.jsonPos),o=t.let("value"),u=t.let("tag");g5e(e,"}",()=>{let c=t.let("key");BA({...e,data:c}),Qf(e,":"),t.if((0,pt._)`${c} === ${i}`,()=>{BA({...e,data:u}),t.assign((0,pt._)`${r}[${c}]`,u),t.break()},()=>bee({...e,data:o}))}),t.assign(pr.default.jsonPos,a),t.if((0,pt._)`${u} === undefined`),jh(e,(0,pt.str)`discriminator tag not found`);for(let c in s)t.elseIf((0,pt._)`${u} === ${c}`),y5e({...e,schema:s[c]},i);t.else(),jh(e,(0,pt.str)`discriminator value not in schema`),t.endIf()}function l5e(e){let{gen:t,data:r}=e;Qf(e,"{"),t.assign(r,(0,pt._)`{}`),y5e(e)}function y5e(e,t){let{gen:r,schema:n,data:i}=e,{properties:s,optionalProperties:a,additionalProperties:o}=n;if(vee(e,"}",()=>{let u=r.let("key");if(BA({...e,data:u}),Qf(e,":"),r.if(!1),d5e(e,u,s),d5e(e,u,a),t){r.elseIf((0,pt._)`${u} === ${t}`);let c=r.let("tag");BA({...e,data:c})}r.else(),o?bee({...e,data:(0,pt._)`${i}[${u}]`}):jh(e,(0,pt.str)`property ${u} not allowed`),r.endIf()}),s){let u=(0,Rdr.hasPropFunc)(r),c=(0,pt.and)(...Object.keys(s).map(l=>(0,pt._)`${u}.call(${i}, ${l})`));r.if((0,pt.not)(c),()=>jh(e,(0,pt.str)`missing required properties`))}}function d5e(e,t,r={}){let{gen:n}=e;for(let i in r)n.elseIf((0,pt._)`${t} === ${i}`),_5e(e,t,r[i])}function _5e(e,t,r){A$({...e,schema:r,data:(0,pt._)`${e.data}[${t}]`})}function jdr(e){let{gen:t,schema:r,data:n,self:i}=e;switch(r.type){case"boolean":Ldr(e);break;case"string":BA(e);break;case"timestamp":{BA(e);let s=(0,h5e.useFunc)(t,Odr.default),{allowDate:a,parseDate:o}=i.opts,u=a?(0,pt._)`!${s}(${n}, true)`:(0,pt._)`!${s}(${n})`,c=o?(0,pt.or)(u,(0,pt._)`(${n} = new Date(${n}), false)`,(0,pt._)`isNaN(${n}.valueOf())`):u;t.if(c,()=>jh(e,(0,pt.str)`invalid timestamp`));break}case"float32":case"float64":yee(e);break;default:{let s=r.type;if(!i.opts.int32range&&(s==="int32"||s==="uint32"))yee(e,16),s==="uint32"&&t.if((0,pt._)`${n} < 0`,()=>jh(e,(0,pt.str)`integer out of range`));else{let[a,o,u]=kdr.intRange[s];yee(e,u),t.if((0,pt._)`${n} < ${a} || ${n} > ${o}`,()=>jh(e,(0,pt.str)`integer out of range`))}}}}function BA(e){Qf(e,'"'),Eee(e,Aee.parseJsonString)}function Hdr(e){let{gen:t,data:r,schema:n}=e,i=n.enum;Qf(e,'"'),t.if(!1);for(let s of i){let a=JSON.stringify(s).slice(1);t.elseIf((0,pt._)`${v$(a.length)} === ${a}`),t.assign(r,(0,pt.str)`${s}`),t.add(pr.default.jsonPos,a.length)}t.else(),rS(e),t.endIf()}function yee(e,t){let{gen:r}=e;See(e),r.if((0,pt._)`"-0123456789".indexOf(${v$(1)}) < 0`,()=>rS(e),()=>Eee(e,Aee.parseJsonNumber,t))}function f5e(e,t){return r=>{let{gen:n,data:i}=r;j2(r,`${e}`,()=>t(r),()=>n.assign(i,e))}}function Kdr(e){let{gen:t,self:r,definitions:n,schema:i,schemaEnv:s}=e,{ref:a}=i,o=n[a];if(!o)throw new Ndr.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,Ddr.hasRef)(o))return A$({...e,schema:o});let{root:u}=s,c=m5e.call(r,new p5e.SchemaEnv({schema:o,root:u}),n);A5e(e,Vdr(t,c),!0)}function Vdr(e,t){return t.parse?e.scopeValue("parse",{ref:t.parse}):(0,pt._)`${e.scopeValue("wrapper",{ref:t})}.parse`}function bee(e){Eee(e,Aee.parseJson)}function Eee(e,t,r){A5e(e,(0,h5e.useFunc)(e.gen,t),r)}function A5e(e,t,r){let{gen:n,data:i}=e;n.assign(i,(0,pt._)`${t}(${pr.default.json}, ${pr.default.jsonPos}${r?(0,pt._)`, ${r}`:pt.nil})`),n.assign(pr.default.jsonPos,(0,pt._)`${t}.position`),n.if((0,pt._)`${i} === undefined`,()=>jh(e,(0,pt._)`${t}.message`))}function Qf(e,t){j2(e,t,rS)}function j2(e,t,r,n){let{gen:i}=e,s=t.length;See(e),i.if((0,pt._)`${v$(s)} === ${t}`,()=>{i.add(pr.default.jsonPos,s),n?.(e)},()=>r(e))}function See({gen:e,char:t}){e.code((0,pt._)`while((${t}=${pr.default.json}[${pr.default.jsonPos}],${t}===" "||${t}==="\\n"||${t}==="\\r"||${t}==="\\t"))${pr.default.jsonPos}++;`)}function v$(e){return e===1?(0,pt._)`${pr.default.json}[${pr.default.jsonPos}]`:(0,pt._)`${pr.default.json}.slice(${pr.default.jsonPos}, ${pr.default.jsonPos}+${e})`}function rS(e){jh(e,(0,pt._)`"unexpected token " + ${pr.default.json}[${pr.default.jsonPos}]`)}function jh({gen:e,parseName:t},r){e.assign((0,pt._)`${t}.message`,r),e.assign((0,pt._)`${t}.position`,pr.default.jsonPos),e.return(_ee)}});var Cee=b((oi,xee)=>{"use strict";Object.defineProperty(oi,"__esModule",{value:!0});oi.MissingRefError=oi.ValidationError=oi.CodeGen=oi.Name=oi.nil=oi.stringify=oi.str=oi._=oi.KeywordCxt=oi.Ajv=void 0;var zdr=aZ(),Qdr=YFe(),Gdr=ZFe(),Ydr=o5e(),Wdr=v5e(),Iee="JTD-meta-schema",nS=class extends zdr.default{constructor(t={}){super({...t,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(Qdr.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(Gdr.default,Iee,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Iee)?Iee:void 0)}compileSerializer(t){let r=this._addSchema(t);return r.serialize||this._compileSerializer(r)}compileParser(t){let r=this._addSchema(t);return r.parse||this._compileParser(r)}_compileSerializer(t){if(Ydr.default.call(this,t,t.schema.definitions||{}),!t.serialize)throw new Error("ajv implementation error");return t.serialize}_compileParser(t){if(Wdr.default.call(this,t,t.schema.definitions||{}),!t.parse)throw new Error("ajv implementation error");return t.parse}};oi.Ajv=nS;xee.exports=oi=nS;xee.exports.Ajv=nS;Object.defineProperty(oi,"__esModule",{value:!0});oi.default=nS;var Xdr=j1();Object.defineProperty(oi,"KeywordCxt",{enumerable:!0,get:function(){return Xdr.KeywordCxt}});var iS=wt();Object.defineProperty(oi,"_",{enumerable:!0,get:function(){return iS._}});Object.defineProperty(oi,"str",{enumerable:!0,get:function(){return iS.str}});Object.defineProperty(oi,"stringify",{enumerable:!0,get:function(){return iS.stringify}});Object.defineProperty(oi,"nil",{enumerable:!0,get:function(){return iS.nil}});Object.defineProperty(oi,"Name",{enumerable:!0,get:function(){return iS.Name}});Object.defineProperty(oi,"CodeGen",{enumerable:!0,get:function(){return iS.CodeGen}});var Jdr=S2();Object.defineProperty(oi,"ValidationError",{enumerable:!0,get:function(){return Jdr.default}});var Zdr=Mh();Object.defineProperty(oi,"MissingRefError",{enumerable:!0,get:function(){return Zdr.default}})});var Tee=b((iNn,b5e)=>{"use strict";var efr=QW();b5e.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:efr,addUsedSchema:!1,allErrors:!1})});var C5e=b(Gf=>{"use strict";Object.defineProperty(Gf,"__esModule",{value:!0});Gf.formatNames=Gf.fastFormats=Gf.fullFormats=void 0;function sS(e,t){return{validate:e,compare:t}}Gf.fullFormats={date:sS(w5e,Dee),time:sS(I5e,kee),"date-time":sS(ifr,x5e),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:ofr,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:hfr,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:ufr,int32:{type:"number",validate:dfr},int64:{type:"number",validate:ffr},float:{type:"number",validate:S5e},double:{type:"number",validate:S5e},password:!0,binary:!0};Gf.fastFormats={...Gf.fullFormats,date:sS(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Dee),time:sS(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,kee),"date-time":sS(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,x5e),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Gf.formatNames=Object.keys(Gf.fullFormats);function tfr(e){return e%4===0&&(e%100!==0||e%400===0)}var rfr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,nfr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function w5e(e){let t=rfr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],i=+t[3];return n>=1&&n<=12&&i>=1&&i<=(n===2&&tfr(r)?29:nfr[n])}function Dee(e,t){if(e&&t)return e>t?1:et?1:e=cfr}function ffr(e){return Number.isInteger(e)}function S5e(){return!0}var pfr=/[^\\]\\Z/;function hfr(e){if(pfr.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var V2=b(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.regexpCode=Qr.getEsmExportName=Qr.getProperty=Qr.safeStringify=Qr.stringify=Qr.strConcat=Qr.addCodeArg=Qr.str=Qr._=Qr.nil=Qr._Code=Qr.Name=Qr.IDENTIFIER=Qr._CodeOrName=void 0;var H2=class{};Qr._CodeOrName=H2;Qr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var $A=class extends H2{constructor(t){if(super(),!Qr.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Qr.Name=$A;var dl=class extends H2{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof $A&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Qr._Code=dl;Qr.nil=new dl("");function T5e(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Du,"__esModule",{value:!0});Du.ValueScope=Du.ValueScopeName=Du.Scope=Du.varKinds=Du.UsedValueState=void 0;var Ru=V2(),Mee=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},b$;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(b$||(Du.UsedValueState=b$={}));Du.varKinds={const:new Ru.Name("const"),let:new Ru.Name("let"),var:new Ru.Name("var")};var E$=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof Ru.Name?t:this.name(t)}name(t){return new Ru.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Du.Scope=E$;var S$=class extends Ru.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,Ru._)`.${new Ru.Name(r)}[${n}]`}};Du.ValueScopeName=S$;var Sfr=(0,Ru._)`\n`,Lee=class extends E${constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?Sfr:Ru.nil}}get(){return this._scope}name(t){return new S$(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let i=this.toName(t),{prefix:s}=i,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[s];if(o){let l=o.get(a);if(l)return l}else o=this._values[s]=new Map;o.set(a,i);let u=this._scope[s]||(this._scope[s]=[]),c=u.length;return u[c]=r.ref,i.setValue(r,{property:s,itemIndex:c}),i}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ru._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,i=>{if(i.value===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return i.value.code},r,n)}_reduceValues(t,r,n={},i){let s=Ru.nil;for(let a in t){let o=t[a];if(!o)continue;let u=n[a]=n[a]||new Map;o.forEach(c=>{if(u.has(c))return;u.set(c,b$.Started);let l=r(c);if(l){let d=this.opts.es5?Du.varKinds.var:Du.varKinds.const;s=(0,Ru._)`${s}${d} ${c} = ${l};${this.opts._n}`}else if(l=i?.(c))s=(0,Ru._)`${s}${l}${this.opts._n}`;else throw new Mee(c);u.set(c,b$.Completed)})}return s}};Du.ValueScope=Lee});var Xt=b(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.or=ir.and=ir.not=ir.CodeGen=ir.operators=ir.varKinds=ir.ValueScopeName=ir.ValueScope=ir.Scope=ir.Name=ir.regexpCode=ir.stringify=ir.getProperty=ir.nil=ir.strConcat=ir.str=ir._=void 0;var xr=V2(),Sd=Bee(),Cg=V2();Object.defineProperty(ir,"_",{enumerable:!0,get:function(){return Cg._}});Object.defineProperty(ir,"str",{enumerable:!0,get:function(){return Cg.str}});Object.defineProperty(ir,"strConcat",{enumerable:!0,get:function(){return Cg.strConcat}});Object.defineProperty(ir,"nil",{enumerable:!0,get:function(){return Cg.nil}});Object.defineProperty(ir,"getProperty",{enumerable:!0,get:function(){return Cg.getProperty}});Object.defineProperty(ir,"stringify",{enumerable:!0,get:function(){return Cg.stringify}});Object.defineProperty(ir,"regexpCode",{enumerable:!0,get:function(){return Cg.regexpCode}});Object.defineProperty(ir,"Name",{enumerable:!0,get:function(){return Cg.Name}});var C$=Bee();Object.defineProperty(ir,"Scope",{enumerable:!0,get:function(){return C$.Scope}});Object.defineProperty(ir,"ValueScope",{enumerable:!0,get:function(){return C$.ValueScope}});Object.defineProperty(ir,"ValueScopeName",{enumerable:!0,get:function(){return C$.ValueScopeName}});Object.defineProperty(ir,"varKinds",{enumerable:!0,get:function(){return C$.varKinds}});ir.operators={GT:new xr._Code(">"),GTE:new xr._Code(">="),LT:new xr._Code("<"),LTE:new xr._Code("<="),EQ:new xr._Code("==="),NEQ:new xr._Code("!=="),NOT:new xr._Code("!"),OR:new xr._Code("||"),AND:new xr._Code("&&"),ADD:new xr._Code("+")};var Hh=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},$ee=class extends Hh{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Sd.varKinds.var:this.varKind,i=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${i};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=oS(this.rhs,t,r)),this}get names(){return this.rhs instanceof xr._CodeOrName?this.rhs.names:{}}},w$=class extends Hh{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof xr.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=oS(this.rhs,t,r),this}get names(){let t=this.lhs instanceof xr.Name?{}:{...this.lhs.names};return x$(t,this.rhs)}},Fee=class extends w${constructor(t,r,n,i){super(t,n,i),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},Uee=class extends Hh{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},qee=class extends Hh{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},jee=class extends Hh{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},Hee=class extends Hh{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=oS(this.code,t,r),this}get names(){return this.code instanceof xr._CodeOrName?this.code.names:{}}},z2=class extends Hh{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,i=n.length;for(;i--;){let s=n[i];s.optimizeNames(t,r)||(wfr(t,s.names),n.splice(i,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>qA(t,r.names),{})}},Kh=class extends z2{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},Kee=class extends z2{},aS=class extends Kh{};aS.kind="else";var FA=class e extends Kh{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new aS(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(R5e(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=oS(this.condition,t,r),this}get names(){let t=super.names;return x$(t,this.condition),this.else&&qA(t,this.else.names),t}};FA.kind="if";var UA=class extends Kh{};UA.kind="for";var Vee=class extends UA{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=oS(this.iteration,t,r),this}get names(){return qA(super.names,this.iteration.names)}},zee=class extends UA{constructor(t,r,n,i){super(),this.varKind=t,this.name=r,this.from=n,this.to=i}render(t){let r=t.es5?Sd.varKinds.var:this.varKind,{name:n,from:i,to:s}=this;return`for(${r} ${n}=${i}; ${n}<${s}; ${n}++)`+super.render(t)}get names(){let t=x$(super.names,this.from);return x$(t,this.to)}},I$=class extends UA{constructor(t,r,n,i){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=i}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=oS(this.iterable,t,r),this}get names(){return qA(super.names,this.iterable.names)}},Q2=class extends Kh{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};Q2.kind="func";var G2=class extends z2{render(t){return"return "+super.render(t)}};G2.kind="return";var Qee=class extends Kh{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,i;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(i=this.finally)===null||i===void 0||i.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&qA(t,this.catch.names),this.finally&&qA(t,this.finally.names),t}},Y2=class extends Kh{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Y2.kind="catch";var W2=class extends Kh{render(t){return"finally"+super.render(t)}};W2.kind="finally";var Gee=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=t,this._scope=new Sd.Scope({parent:t}),this._nodes=[new Kee]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,i){let s=this._scope.toName(r);return n!==void 0&&i&&(this._constants[s.str]=n),this._leafNode(new $ee(t,s,n)),s}const(t,r,n){return this._def(Sd.varKinds.const,t,r,n)}let(t,r,n){return this._def(Sd.varKinds.let,t,r,n)}var(t,r,n){return this._def(Sd.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new w$(t,r,n))}add(t,r){return this._leafNode(new Fee(t,ir.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==xr.nil&&this._leafNode(new Hee(t)),this}object(...t){let r=["{"];for(let[n,i]of t)r.length>1&&r.push(","),r.push(n),(n!==i||this.opts.es5)&&(r.push(":"),(0,xr.addCodeArg)(r,i));return r.push("}"),new xr._Code(r)}if(t,r,n){if(this._blockNode(new FA(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new FA(t))}else(){return this._elseNode(new aS)}endIf(){return this._endBlockNode(FA,aS)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new Vee(t),r)}forRange(t,r,n,i,s=this.opts.es5?Sd.varKinds.var:Sd.varKinds.let){let a=this._scope.toName(t);return this._for(new zee(s,a,r,n),()=>i(a))}forOf(t,r,n,i=Sd.varKinds.const){let s=this._scope.toName(t);if(this.opts.es5){let a=r instanceof xr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,xr._)`${a}.length`,o=>{this.var(s,(0,xr._)`${a}[${o}]`),n(s)})}return this._for(new I$("of",i,s,r),()=>n(s))}forIn(t,r,n,i=this.opts.es5?Sd.varKinds.var:Sd.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,xr._)`Object.keys(${r})`,n);let s=this._scope.toName(t);return this._for(new I$("in",i,s,r),()=>n(s))}endFor(){return this._endBlockNode(UA)}label(t){return this._leafNode(new Uee(t))}break(t){return this._leafNode(new qee(t))}return(t){let r=new G2;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(G2)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let i=new Qee;if(this._blockNode(i),this.code(t),r){let s=this.name("e");this._currNode=i.catch=new Y2(s),r(s)}return n&&(this._currNode=i.finally=new W2,this.code(n)),this._endBlockNode(Y2,W2)}throw(t){return this._leafNode(new jee(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=xr.nil,n,i){return this._blockNode(new Q2(t,r,n)),i&&this.code(i).endFunc(),this}endFunc(){return this._endBlockNode(Q2)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof FA))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};ir.CodeGen=Gee;function qA(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function x$(e,t){return t instanceof xr._CodeOrName?qA(e,t.names):e}function oS(e,t,r){if(e instanceof xr.Name)return n(e);if(!i(e))return e;return new xr._Code(e._items.reduce((s,a)=>(a instanceof xr.Name&&(a=n(a)),a instanceof xr._Code?s.push(...a._items):s.push(a),s),[]));function n(s){let a=r[s.str];return a===void 0||t[s.str]!==1?s:(delete t[s.str],a)}function i(s){return s instanceof xr._Code&&s._items.some(a=>a instanceof xr.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function wfr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function R5e(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,xr._)`!${Yee(e)}`}ir.not=R5e;var Ifr=D5e(ir.operators.AND);function xfr(...e){return e.reduce(Ifr)}ir.and=xfr;var Cfr=D5e(ir.operators.OR);function Tfr(...e){return e.reduce(Cfr)}ir.or=Tfr;function D5e(e){return(t,r)=>t===xr.nil?r:r===xr.nil?t:(0,xr._)`${Yee(t)} ${e} ${Yee(r)}`}function Yee(e){return e instanceof xr.Name?e:(0,xr._)`(${e})`}});var Br=b(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.checkStrictMode=ur.getErrorPath=ur.Type=ur.useFunc=ur.setEvaluated=ur.evaluatedPropsToName=ur.mergeEvaluated=ur.eachItem=ur.unescapeJsonPointer=ur.escapeJsonPointer=ur.escapeFragment=ur.unescapeFragment=ur.schemaRefOrVal=ur.schemaHasRulesButRef=ur.schemaHasRules=ur.checkUnknownRules=ur.alwaysValidSchema=ur.toHash=void 0;var Kn=Xt(),Nfr=V2();function Rfr(e){let t={};for(let r of e)t[r]=!0;return t}ur.toHash=Rfr;function Dfr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(P5e(e,t),!M5e(t,e.self.RULES.all))}ur.alwaysValidSchema=Dfr;function P5e(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let i=n.RULES.keywords;for(let s in t)i[s]||$5e(e,`unknown keyword: "${s}"`)}ur.checkUnknownRules=P5e;function M5e(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}ur.schemaHasRules=M5e;function kfr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}ur.schemaHasRulesButRef=kfr;function Ofr({topSchemaRef:e,schemaPath:t},r,n,i){if(!i){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,Kn._)`${r}`}return(0,Kn._)`${e}${t}${(0,Kn.getProperty)(n)}`}ur.schemaRefOrVal=Ofr;function Pfr(e){return L5e(decodeURIComponent(e))}ur.unescapeFragment=Pfr;function Mfr(e){return encodeURIComponent(Xee(e))}ur.escapeFragment=Mfr;function Xee(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}ur.escapeJsonPointer=Xee;function L5e(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}ur.unescapeJsonPointer=L5e;function Lfr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}ur.eachItem=Lfr;function k5e({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(i,s,a,o)=>{let u=a===void 0?s:a instanceof Kn.Name?(s instanceof Kn.Name?e(i,s,a):t(i,s,a),a):s instanceof Kn.Name?(t(i,a,s),s):r(s,a);return o===Kn.Name&&!(u instanceof Kn.Name)?n(i,u):u}}ur.mergeEvaluated={props:k5e({mergeNames:(e,t,r)=>e.if((0,Kn._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,Kn._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,Kn._)`${r} || {}`).code((0,Kn._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,Kn._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,Kn._)`${r} || {}`),Jee(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:B5e}),items:k5e({mergeNames:(e,t,r)=>e.if((0,Kn._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,Kn._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,Kn._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,Kn._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function B5e(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,Kn._)`{}`);return t!==void 0&&Jee(e,r,t),r}ur.evaluatedPropsToName=B5e;function Jee(e,t,r){Object.keys(r).forEach(n=>e.assign((0,Kn._)`${t}${(0,Kn.getProperty)(n)}`,!0))}ur.setEvaluated=Jee;var O5e={};function Bfr(e,t){return e.scopeValue("func",{ref:t,code:O5e[t.code]||(O5e[t.code]=new Nfr._Code(t.code))})}ur.useFunc=Bfr;var Wee;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(Wee||(ur.Type=Wee={}));function $fr(e,t,r){if(e instanceof Kn.Name){let n=t===Wee.Num;return r?n?(0,Kn._)`"[" + ${e} + "]"`:(0,Kn._)`"['" + ${e} + "']"`:n?(0,Kn._)`"/" + ${e}`:(0,Kn._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,Kn.getProperty)(e).toString():"/"+Xee(e)}ur.getErrorPath=$fr;function $5e(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}ur.checkStrictMode=$5e});var Vh=b(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});var ao=Xt(),Ffr={data:new ao.Name("data"),valCxt:new ao.Name("valCxt"),instancePath:new ao.Name("instancePath"),parentData:new ao.Name("parentData"),parentDataProperty:new ao.Name("parentDataProperty"),rootData:new ao.Name("rootData"),dynamicAnchors:new ao.Name("dynamicAnchors"),vErrors:new ao.Name("vErrors"),errors:new ao.Name("errors"),this:new ao.Name("this"),self:new ao.Name("self"),scope:new ao.Name("scope"),json:new ao.Name("json"),jsonPos:new ao.Name("jsonPos"),jsonLen:new ao.Name("jsonLen"),jsonPart:new ao.Name("jsonPart")};Zee.default=Ffr});var X2=b(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.extendErrors=oo.resetErrorsCount=oo.reportExtraError=oo.reportError=oo.keyword$DataError=oo.keywordError=void 0;var $r=Xt(),T$=Br(),Jo=Vh();oo.keywordError={message:({keyword:e})=>(0,$r.str)`must pass "${e}" keyword validation`};oo.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,$r.str)`"${e}" keyword must be ${t} ($data)`:(0,$r.str)`"${e}" keyword is invalid ($data)`};function Ufr(e,t=oo.keywordError,r,n){let{it:i}=e,{gen:s,compositeRule:a,allErrors:o}=i,u=q5e(e,t,r);n??(a||o)?F5e(s,u):U5e(i,(0,$r._)`[${u}]`)}oo.reportError=Ufr;function qfr(e,t=oo.keywordError,r){let{it:n}=e,{gen:i,compositeRule:s,allErrors:a}=n,o=q5e(e,t,r);F5e(i,o),s||a||U5e(n,Jo.default.vErrors)}oo.reportExtraError=qfr;function jfr(e,t){e.assign(Jo.default.errors,t),e.if((0,$r._)`${Jo.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,$r._)`${Jo.default.vErrors}.length`,t),()=>e.assign(Jo.default.vErrors,null)))}oo.resetErrorsCount=jfr;function Hfr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:i,it:s}){if(i===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",i,Jo.default.errors,o=>{e.const(a,(0,$r._)`${Jo.default.vErrors}[${o}]`),e.if((0,$r._)`${a}.instancePath === undefined`,()=>e.assign((0,$r._)`${a}.instancePath`,(0,$r.strConcat)(Jo.default.instancePath,s.errorPath))),e.assign((0,$r._)`${a}.schemaPath`,(0,$r.str)`${s.errSchemaPath}/${t}`),s.opts.verbose&&(e.assign((0,$r._)`${a}.schema`,r),e.assign((0,$r._)`${a}.data`,n))})}oo.extendErrors=Hfr;function F5e(e,t){let r=e.const("err",t);e.if((0,$r._)`${Jo.default.vErrors} === null`,()=>e.assign(Jo.default.vErrors,(0,$r._)`[${r}]`),(0,$r._)`${Jo.default.vErrors}.push(${r})`),e.code((0,$r._)`${Jo.default.errors}++`)}function U5e(e,t){let{gen:r,validateName:n,schemaEnv:i}=e;i.$async?r.throw((0,$r._)`new ${e.ValidationError}(${t})`):(r.assign((0,$r._)`${n}.errors`,t),r.return(!1))}var jA={keyword:new $r.Name("keyword"),schemaPath:new $r.Name("schemaPath"),params:new $r.Name("params"),propertyName:new $r.Name("propertyName"),message:new $r.Name("message"),schema:new $r.Name("schema"),parentSchema:new $r.Name("parentSchema")};function q5e(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,$r._)`{}`:Kfr(e,t,r)}function Kfr(e,t,r={}){let{gen:n,it:i}=e,s=[Vfr(i,r),zfr(e,r)];return Qfr(e,t,s),n.object(...s)}function Vfr({errorPath:e},{instancePath:t}){let r=t?(0,$r.str)`${e}${(0,T$.getErrorPath)(t,T$.Type.Str)}`:e;return[Jo.default.instancePath,(0,$r.strConcat)(Jo.default.instancePath,r)]}function zfr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let i=n?t:(0,$r.str)`${t}/${e}`;return r&&(i=(0,$r.str)`${i}${(0,T$.getErrorPath)(r,T$.Type.Str)}`),[jA.schemaPath,i]}function Qfr(e,{params:t,message:r},n){let{keyword:i,data:s,schemaValue:a,it:o}=e,{opts:u,propertyName:c,topSchemaRef:l,schemaPath:d}=o;n.push([jA.keyword,i],[jA.params,typeof t=="function"?t(e):t||(0,$r._)`{}`]),u.messages&&n.push([jA.message,typeof r=="function"?r(e):r]),u.verbose&&n.push([jA.schema,a],[jA.parentSchema,(0,$r._)`${l}${d}`],[Jo.default.data,s]),c&&n.push([jA.propertyName,c])}});var H5e=b(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});uS.boolOrEmptySchema=uS.topBoolOrEmptySchema=void 0;var Gfr=X2(),Yfr=Xt(),Wfr=Vh(),Xfr={message:"boolean schema is false"};function Jfr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?j5e(e,!1):typeof r=="object"&&r.$async===!0?t.return(Wfr.default.data):(t.assign((0,Yfr._)`${n}.errors`,null),t.return(!0))}uS.topBoolOrEmptySchema=Jfr;function Zfr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),j5e(e)):r.var(t,!0)}uS.boolOrEmptySchema=Zfr;function j5e(e,t){let{gen:r,data:n}=e,i={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,Gfr.reportError)(i,Xfr,void 0,t)}});var ete=b(cS=>{"use strict";Object.defineProperty(cS,"__esModule",{value:!0});cS.getRules=cS.isJSONType=void 0;var epr=["string","number","integer","boolean","null","object","array"],tpr=new Set(epr);function rpr(e){return typeof e=="string"&&tpr.has(e)}cS.isJSONType=rpr;function npr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}cS.getRules=npr});var tte=b(Tg=>{"use strict";Object.defineProperty(Tg,"__esModule",{value:!0});Tg.shouldUseRule=Tg.shouldUseGroup=Tg.schemaHasRulesForType=void 0;function ipr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&K5e(e,n)}Tg.schemaHasRulesForType=ipr;function K5e(e,t){return t.rules.some(r=>V5e(e,r))}Tg.shouldUseGroup=K5e;function V5e(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}Tg.shouldUseRule=V5e});var J2=b(uo=>{"use strict";Object.defineProperty(uo,"__esModule",{value:!0});uo.reportTypeError=uo.checkDataTypes=uo.checkDataType=uo.coerceAndCheckDataType=uo.getJSONTypes=uo.getSchemaTypes=uo.DataType=void 0;var spr=ete(),apr=tte(),opr=X2(),Gt=Xt(),z5e=Br(),lS;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(lS||(uo.DataType=lS={}));function upr(e){let t=Q5e(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}uo.getSchemaTypes=upr;function Q5e(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(spr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}uo.getJSONTypes=Q5e;function cpr(e,t){let{gen:r,data:n,opts:i}=e,s=lpr(t,i.coerceTypes),a=t.length>0&&!(s.length===0&&t.length===1&&(0,apr.schemaHasRulesForType)(e,t[0]));if(a){let o=nte(t,n,i.strictNumbers,lS.Wrong);r.if(o,()=>{s.length?dpr(e,t,s):ite(e)})}return a}uo.coerceAndCheckDataType=cpr;var G5e=new Set(["string","number","integer","boolean","null"]);function lpr(e,t){return t?e.filter(r=>G5e.has(r)||t==="array"&&r==="array"):[]}function dpr(e,t,r){let{gen:n,data:i,opts:s}=e,a=n.let("dataType",(0,Gt._)`typeof ${i}`),o=n.let("coerced",(0,Gt._)`undefined`);s.coerceTypes==="array"&&n.if((0,Gt._)`${a} == 'object' && Array.isArray(${i}) && ${i}.length == 1`,()=>n.assign(i,(0,Gt._)`${i}[0]`).assign(a,(0,Gt._)`typeof ${i}`).if(nte(t,i,s.strictNumbers),()=>n.assign(o,i))),n.if((0,Gt._)`${o} !== undefined`);for(let c of r)(G5e.has(c)||c==="array"&&s.coerceTypes==="array")&&u(c);n.else(),ite(e),n.endIf(),n.if((0,Gt._)`${o} !== undefined`,()=>{n.assign(i,o),fpr(e,o)});function u(c){switch(c){case"string":n.elseIf((0,Gt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Gt._)`"" + ${i}`).elseIf((0,Gt._)`${i} === null`).assign(o,(0,Gt._)`""`);return;case"number":n.elseIf((0,Gt._)`${a} == "boolean" || ${i} === null - || (${a} == "string" && ${i} && ${i} == +${i})`).assign(o,(0,Gt._)`+${i}`);return;case"integer":n.elseIf((0,Gt._)`${a} === "boolean" || ${i} === null - || (${a} === "string" && ${i} && ${i} == +${i} && !(${i} % 1))`).assign(o,(0,Gt._)`+${i}`);return;case"boolean":n.elseIf((0,Gt._)`${i} === "false" || ${i} === 0 || ${i} === null`).assign(o,!1).elseIf((0,Gt._)`${i} === "true" || ${i} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Gt._)`${i} === "" || ${i} === 0 || ${i} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Gt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${i} === null`).assign(o,(0,Gt._)`[${i}]`)}}}function fpr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,Gt._)`${t} !== undefined`,()=>e.assign((0,Gt._)`${t}[${r}]`,n))}function rte(e,t,r,n=lS.Correct){let i=n===lS.Correct?Gt.operators.EQ:Gt.operators.NEQ,s;switch(e){case"null":return(0,Gt._)`${t} ${i} null`;case"array":s=(0,Gt._)`Array.isArray(${t})`;break;case"object":s=(0,Gt._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":s=a((0,Gt._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":s=a();break;default:return(0,Gt._)`typeof ${t} ${i} ${e}`}return n===lS.Correct?s:(0,Gt.not)(s);function a(o=Gt.nil){return(0,Gt.and)((0,Gt._)`typeof ${t} == "number"`,o,r?(0,Gt._)`isFinite(${t})`:Gt.nil)}}uo.checkDataType=rte;function nte(e,t,r,n){if(e.length===1)return rte(e[0],t,r,n);let i,s=(0,z5e.toHash)(e);if(s.array&&s.object){let a=(0,Gt._)`typeof ${t} != "object"`;i=s.null?a:(0,Gt._)`!${t} || ${a}`,delete s.null,delete s.array,delete s.object}else i=Gt.nil;s.number&&delete s.integer;for(let a in s)i=(0,Gt.and)(i,rte(a,t,r,n));return i}uo.checkDataTypes=nte;var ppr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,Gt._)`{type: ${e}}`:(0,Gt._)`{type: ${t}}`};function ite(e){let t=hpr(e);(0,opr.reportError)(t,ppr)}uo.reportTypeError=ite;function hpr(e){let{gen:t,data:r,schema:n}=e,i=(0,z5e.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:i,schemaValue:i,parentSchema:n,params:{},it:e}}});var W5e=b(N$=>{"use strict";Object.defineProperty(N$,"__esModule",{value:!0});N$.assignDefaults=void 0;var dS=Xt(),mpr=Br();function gpr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let i in r)Y5e(e,i,r[i].default);else t==="array"&&Array.isArray(n)&&n.forEach((i,s)=>Y5e(e,s,i.default))}N$.assignDefaults=gpr;function Y5e(e,t,r){let{gen:n,compositeRule:i,data:s,opts:a}=e;if(r===void 0)return;let o=(0,dS._)`${s}${(0,dS.getProperty)(t)}`;if(i){(0,mpr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let u=(0,dS._)`${o} === undefined`;a.useDefaults==="empty"&&(u=(0,dS._)`${u} || ${o} === null || ${o} === ""`),n.if(u,(0,dS._)`${o} = ${(0,dS.stringify)(r)}`)}});var fl=b(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.validateUnion=Tn.validateArray=Tn.usePattern=Tn.callValidateCode=Tn.schemaProperties=Tn.allSchemaProperties=Tn.noPropertyInData=Tn.propertyInData=Tn.isOwnProperty=Tn.hasPropFunc=Tn.reportMissingProp=Tn.checkMissingProp=Tn.checkReportMissingProp=void 0;var ui=Xt(),ste=Br(),Ng=Vh(),ypr=Br();function _pr(e,t){let{gen:r,data:n,it:i}=e;r.if(ote(r,n,t,i.opts.ownProperties),()=>{e.setParams({missingProperty:(0,ui._)`${t}`},!0),e.error()})}Tn.checkReportMissingProp=_pr;function Apr({gen:e,data:t,it:{opts:r}},n,i){return(0,ui.or)(...n.map(s=>(0,ui.and)(ote(e,t,s,r.ownProperties),(0,ui._)`${i} = ${s}`)))}Tn.checkMissingProp=Apr;function vpr(e,t){e.setParams({missingProperty:t},!0),e.error()}Tn.reportMissingProp=vpr;function X5e(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ui._)`Object.prototype.hasOwnProperty`})}Tn.hasPropFunc=X5e;function ate(e,t,r){return(0,ui._)`${X5e(e)}.call(${t}, ${r})`}Tn.isOwnProperty=ate;function bpr(e,t,r,n){let i=(0,ui._)`${t}${(0,ui.getProperty)(r)} !== undefined`;return n?(0,ui._)`${i} && ${ate(e,t,r)}`:i}Tn.propertyInData=bpr;function ote(e,t,r,n){let i=(0,ui._)`${t}${(0,ui.getProperty)(r)} === undefined`;return n?(0,ui.or)(i,(0,ui.not)(ate(e,t,r))):i}Tn.noPropertyInData=ote;function J5e(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}Tn.allSchemaProperties=J5e;function Epr(e,t){return J5e(t).filter(r=>!(0,ste.alwaysValidSchema)(e,t[r]))}Tn.schemaProperties=Epr;function Spr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:i,errorPath:s},it:a},o,u,c){let l=c?(0,ui._)`${e}, ${t}, ${n}${i}`:t,d=[[Ng.default.instancePath,(0,ui.strConcat)(Ng.default.instancePath,s)],[Ng.default.parentData,a.parentData],[Ng.default.parentDataProperty,a.parentDataProperty],[Ng.default.rootData,Ng.default.rootData]];a.opts.dynamicRef&&d.push([Ng.default.dynamicAnchors,Ng.default.dynamicAnchors]);let f=(0,ui._)`${l}, ${r.object(...d)}`;return u!==ui.nil?(0,ui._)`${o}.call(${u}, ${f})`:(0,ui._)`${o}(${f})`}Tn.callValidateCode=Spr;var wpr=(0,ui._)`new RegExp`;function Ipr({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:i}=t.code,s=i(r,n);return e.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,ui._)`${i.code==="new RegExp"?wpr:(0,ypr.useFunc)(e,i)}(${r}, ${n})`})}Tn.usePattern=Ipr;function xpr(e){let{gen:t,data:r,keyword:n,it:i}=e,s=t.name("valid");if(i.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(s,!0),a(()=>t.break()),s;function a(o){let u=t.const("len",(0,ui._)`${r}.length`);t.forRange("i",0,u,c=>{e.subschema({keyword:n,dataProp:c,dataPropType:ste.Type.Num},s),t.if((0,ui.not)(s),o)})}}Tn.validateArray=xpr;function Cpr(e){let{gen:t,schema:r,keyword:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0,ste.alwaysValidSchema)(i,u))&&!i.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((u,c)=>{let l=e.subschema({keyword:n,schemaProp:c,compositeRule:!0},o);t.assign(a,(0,ui._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,ui.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}Tn.validateUnion=Cpr});var t8e=b(Yf=>{"use strict";Object.defineProperty(Yf,"__esModule",{value:!0});Yf.validateKeywordUsage=Yf.validSchemaType=Yf.funcKeywordCode=Yf.macroKeywordCode=void 0;var Zo=Xt(),HA=Vh(),Tpr=fl(),Npr=X2();function Rpr(e,t){let{gen:r,keyword:n,schema:i,parentSchema:s,it:a}=e,o=t.macro.call(a.self,i,s,a),u=e8e(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let c=r.name("valid");e.subschema({schema:o,schemaPath:Zo.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:!0},c),e.pass(c,()=>e.error(!0))}Yf.macroKeywordCode=Rpr;function Dpr(e,t){var r;let{gen:n,keyword:i,schema:s,parentSchema:a,$data:o,it:u}=e;Opr(u,t);let c=!o&&t.compile?t.compile.call(u.self,s,a,u):t.validate,l=e8e(n,i,c),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&Z5e(e),y(()=>e.error());else{let g=t.async?p():h();t.modifying&&Z5e(e),y(()=>kpr(e,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>m((0,Zo._)`await `),v=>n.assign(d,!1).if((0,Zo._)`${v} instanceof ${u.ValidationError}`,()=>n.assign(g,(0,Zo._)`${v}.errors`),()=>n.throw(v))),g}function h(){let g=(0,Zo._)`${l}.errors`;return n.assign(g,null),m(Zo.nil),g}function m(g=t.async?(0,Zo._)`await `:Zo.nil){let v=u.opts.passContext?HA.default.this:HA.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,Zo._)`${g}${(0,Tpr.callValidateCode)(e,l,v,A)}`,t.modifying)}function y(g){var v;n.if((0,Zo.not)((v=t.valid)!==null&&v!==void 0?v:d),g)}}Yf.funcKeywordCode=Dpr;function Z5e(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Zo._)`${n.parentData}[${n.parentDataProperty}]`))}function kpr(e,t){let{gen:r}=e;r.if((0,Zo._)`Array.isArray(${t})`,()=>{r.assign(HA.default.vErrors,(0,Zo._)`${HA.default.vErrors} === null ? ${t} : ${HA.default.vErrors}.concat(${t})`).assign(HA.default.errors,(0,Zo._)`${HA.default.vErrors}.length`),(0,Npr.extendErrors)(e)},()=>e.error())}function Opr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function e8e(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Zo.stringify)(r)})}function Ppr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Yf.validSchemaType=Ppr;function Mpr({schema:e,opts:t,self:r,errSchemaPath:n},i,s){if(Array.isArray(i.keyword)?!i.keyword.includes(s):i.keyword!==s)throw new Error("ajv implementation error");let a=i.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${s}: ${a.join(",")}`);if(i.validateSchema&&!i.validateSchema(e[s])){let u=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(i.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}Yf.validateKeywordUsage=Mpr});var n8e=b(Rg=>{"use strict";Object.defineProperty(Rg,"__esModule",{value:!0});Rg.extendSubschemaMode=Rg.extendSubschemaData=Rg.getSubschema=void 0;var Wf=Xt(),r8e=Br();function Lpr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:i,errSchemaPath:s,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,Wf._)`${e.schemaPath}${(0,Wf.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,Wf._)`${e.schemaPath}${(0,Wf.getProperty)(t)}${(0,Wf.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,r8e.escapeFragment)(r)}`}}if(n!==void 0){if(i===void 0||s===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:i,topSchemaRef:a,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}Rg.getSubschema=Lpr;function Bpr(e,t,{dataProp:r,dataPropType:n,data:i,dataTypes:s,propertyName:a}){if(i!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:c,dataPathArr:l,opts:d}=t,f=o.let("data",(0,Wf._)`${t.data}${(0,Wf.getProperty)(r)}`,!0);u(f),e.errorPath=(0,Wf.str)`${c}${(0,r8e.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,Wf._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(i!==void 0){let c=i instanceof Wf.Name?i:o.let("data",i,!0);u(c),a!==void 0&&(e.propertyName=a)}s&&(e.dataTypes=s);function u(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c]}}Rg.extendSubschemaData=Bpr;function $pr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:i,allErrors:s}){n!==void 0&&(e.compositeRule=n),i!==void 0&&(e.createErrors=i),s!==void 0&&(e.allErrors=s),e.jtdDiscriminator=t,e.jtdMetadata=r}Rg.extendSubschemaMode=$pr});var s8e=b((vNn,i8e)=>{"use strict";var Dg=i8e.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};R$(t,n,i,e,"",e)};Dg.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Dg.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Dg.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Dg.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function R$(e,t,r,n,i,s,a,o,u,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,i,s,a,o,u,c);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Dg.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(ku,"__esModule",{value:!0});ku.getSchemaRefs=ku.resolveUrl=ku.normalizeId=ku._getFullPath=ku.getFullPath=ku.inlineRef=void 0;var Upr=Br(),qpr=tl(),jpr=s8e(),Hpr=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Kpr(e,t=!0){return typeof e=="boolean"?!0:t===!0?!ute(e):t?a8e(e)<=t:!1}ku.inlineRef=Kpr;var Vpr=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function ute(e){for(let t in e){if(Vpr.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(ute)||typeof r=="object"&&ute(r))return!0}return!1}function a8e(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!Hpr.has(r)&&(typeof e[r]=="object"&&(0,Upr.eachItem)(e[r],n=>t+=a8e(n)),t===1/0))return 1/0}return t}function o8e(e,t="",r){r!==!1&&(t=fS(t));let n=e.parse(t);return u8e(e,n)}ku.getFullPath=o8e;function u8e(e,t){return e.serialize(t).split("#")[0]+"#"}ku._getFullPath=u8e;var zpr=/#\/?$/;function fS(e){return e?e.replace(zpr,""):""}ku.normalizeId=fS;function Qpr(e,t,r){return r=fS(r),e.resolve(t,r)}ku.resolveUrl=Qpr;var Gpr=/^[a-z_][-a-z0-9._]*$/i;function Ypr(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,i=fS(e[r]||t),s={"":i},a=o8e(n,i,!1),o={},u=new Set;return jpr(e,{allKeys:!0},(d,f,p,h)=>{if(h===void 0)return;let m=a+f,y=s[h];typeof d[r]=="string"&&(y=g.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[f]=y;function g(A){let _=this.opts.uriResolver.resolve;if(A=fS(y?_(y,A):A),u.has(A))throw l(A);u.add(A);let E=this.refs[A];return typeof E=="string"&&(E=this.refs[E]),typeof E=="object"?c(d,E.schema,A):A!==fS(m)&&(A[0]==="#"?(c(d,o[A],A),o[A]=d):this.refs[A]=m),A}function v(A){if(typeof A=="string"){if(!Gpr.test(A))throw new Error(`invalid anchor "${A}"`);g.call(this,`#${A}`)}}}),o;function c(d,f,p){if(f!==void 0&&!qpr(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ku.getSchemaRefs=Ypr});var rN=b(kg=>{"use strict";Object.defineProperty(kg,"__esModule",{value:!0});kg.getData=kg.KeywordCxt=kg.validateFunctionCode=void 0;var p8e=H5e(),c8e=J2(),lte=tte(),D$=J2(),Wpr=W5e(),tN=t8e(),cte=n8e(),lt=Xt(),kt=Vh(),Xpr=Z2(),zh=Br(),eN=X2();function Jpr(e){if(g8e(e)&&(y8e(e),m8e(e))){thr(e);return}h8e(e,()=>(0,p8e.topBoolOrEmptySchema)(e))}kg.validateFunctionCode=Jpr;function h8e({gen:e,validateName:t,schema:r,schemaEnv:n,opts:i},s){i.code.es5?e.func(t,(0,lt._)`${kt.default.data}, ${kt.default.valCxt}`,n.$async,()=>{e.code((0,lt._)`"use strict"; ${l8e(r,i)}`),ehr(e,i),e.code(s)}):e.func(t,(0,lt._)`${kt.default.data}, ${Zpr(i)}`,n.$async,()=>e.code(l8e(r,i)).code(s))}function Zpr(e){return(0,lt._)`{${kt.default.instancePath}="", ${kt.default.parentData}, ${kt.default.parentDataProperty}, ${kt.default.rootData}=${kt.default.data}${e.dynamicRef?(0,lt._)`, ${kt.default.dynamicAnchors}={}`:lt.nil}}={}`}function ehr(e,t){e.if(kt.default.valCxt,()=>{e.var(kt.default.instancePath,(0,lt._)`${kt.default.valCxt}.${kt.default.instancePath}`),e.var(kt.default.parentData,(0,lt._)`${kt.default.valCxt}.${kt.default.parentData}`),e.var(kt.default.parentDataProperty,(0,lt._)`${kt.default.valCxt}.${kt.default.parentDataProperty}`),e.var(kt.default.rootData,(0,lt._)`${kt.default.valCxt}.${kt.default.rootData}`),t.dynamicRef&&e.var(kt.default.dynamicAnchors,(0,lt._)`${kt.default.valCxt}.${kt.default.dynamicAnchors}`)},()=>{e.var(kt.default.instancePath,(0,lt._)`""`),e.var(kt.default.parentData,(0,lt._)`undefined`),e.var(kt.default.parentDataProperty,(0,lt._)`undefined`),e.var(kt.default.rootData,kt.default.data),t.dynamicRef&&e.var(kt.default.dynamicAnchors,(0,lt._)`{}`)})}function thr(e){let{schema:t,opts:r,gen:n}=e;h8e(e,()=>{r.$comment&&t.$comment&&A8e(e),ahr(e),n.let(kt.default.vErrors,null),n.let(kt.default.errors,0),r.unevaluated&&rhr(e),_8e(e),chr(e)})}function rhr(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,lt._)`${r}.evaluated`),t.if((0,lt._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,lt._)`${e.evaluated}.props`,(0,lt._)`undefined`)),t.if((0,lt._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,lt._)`${e.evaluated}.items`,(0,lt._)`undefined`))}function l8e(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,lt._)`/*# sourceURL=${r} */`:lt.nil}function nhr(e,t){if(g8e(e)&&(y8e(e),m8e(e))){ihr(e,t);return}(0,p8e.boolOrEmptySchema)(e,t)}function m8e({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function g8e(e){return typeof e.schema!="boolean"}function ihr(e,t){let{schema:r,gen:n,opts:i}=e;i.$comment&&r.$comment&&A8e(e),ohr(e),uhr(e);let s=n.const("_errs",kt.default.errors);_8e(e,s),n.var(t,(0,lt._)`${s} === ${kt.default.errors}`)}function y8e(e){(0,zh.checkUnknownRules)(e),shr(e)}function _8e(e,t){if(e.opts.jtd)return d8e(e,[],!1,t);let r=(0,c8e.getSchemaTypes)(e.schema),n=(0,c8e.coerceAndCheckDataType)(e,r);d8e(e,r,!n,t)}function shr(e){let{schema:t,errSchemaPath:r,opts:n,self:i}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,zh.schemaHasRulesButRef)(t,i.RULES)&&i.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function ahr(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,zh.checkStrictMode)(e,"default is ignored in the schema root")}function ohr(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,Xpr.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function uhr(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function A8e({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:i}){let s=r.$comment;if(i.$comment===!0)e.code((0,lt._)`${kt.default.self}.logger.log(${s})`);else if(typeof i.$comment=="function"){let a=(0,lt.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,lt._)`${kt.default.self}.opts.$comment(${s}, ${a}, ${o}.schema)`)}}function chr(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:i,opts:s}=e;r.$async?t.if((0,lt._)`${kt.default.errors} === 0`,()=>t.return(kt.default.data),()=>t.throw((0,lt._)`new ${i}(${kt.default.vErrors})`)):(t.assign((0,lt._)`${n}.errors`,kt.default.vErrors),s.unevaluated&&lhr(e),t.return((0,lt._)`${kt.default.errors} === 0`))}function lhr({gen:e,evaluated:t,props:r,items:n}){r instanceof lt.Name&&e.assign((0,lt._)`${t}.props`,r),n instanceof lt.Name&&e.assign((0,lt._)`${t}.items`,n)}function d8e(e,t,r,n){let{gen:i,schema:s,data:a,allErrors:o,opts:u,self:c}=e,{RULES:l}=c;if(s.$ref&&(u.ignoreKeywordsWithRef||!(0,zh.schemaHasRulesButRef)(s,l))){i.block(()=>b8e(e,"$ref",l.all.$ref.definition));return}u.jtd||dhr(e,t),i.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,lte.shouldUseGroup)(s,f)&&(f.type?(i.if((0,D$.checkDataType)(f.type,a,u.strictNumbers)),f8e(e,f),t.length===1&&t[0]===f.type&&r&&(i.else(),(0,D$.reportTypeError)(e)),i.endIf()):f8e(e,f),o||i.if((0,lt._)`${kt.default.errors} === ${n||0}`))}}function f8e(e,t){let{gen:r,schema:n,opts:{useDefaults:i}}=e;i&&(0,Wpr.assignDefaults)(e,t.type),r.block(()=>{for(let s of t.rules)(0,lte.shouldUseRule)(n,s)&&b8e(e,s.keyword,s.definition,t.type)})}function dhr(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(fhr(e,t),e.opts.allowUnionTypes||phr(e,t),hhr(e,e.dataTypes))}function fhr(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{v8e(e.dataTypes,r)||dte(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),ghr(e,t)}}function phr(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&dte(e,"use allowUnionTypes to allow union type keyword")}function hhr(e,t){let r=e.self.RULES.all;for(let n in r){let i=r[n];if(typeof i=="object"&&(0,lte.shouldUseRule)(e.schema,i)){let{type:s}=i.definition;s.length&&!s.some(a=>mhr(t,a))&&dte(e,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function mhr(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function v8e(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function ghr(e,t){let r=[];for(let n of e.dataTypes)v8e(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function dte(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,zh.checkStrictMode)(e,t,e.opts.strictTypes)}var k$=class{constructor(t,r,n){if((0,tN.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,zh.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",E8e(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,tN.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",kt.default.errors))}result(t,r,n){this.failResult((0,lt.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,lt.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,lt._)`${r} !== undefined && (${(0,lt.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?eN.reportExtraError:eN.reportError)(this,this.def.error,r)}$dataError(){(0,eN.reportError)(this,this.def.$dataError||eN.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,eN.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=lt.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=lt.nil,r=lt.nil){if(!this.$data)return;let{gen:n,schemaCode:i,schemaType:s,def:a}=this;n.if((0,lt.or)((0,lt._)`${i} === undefined`,r)),t!==lt.nil&&n.assign(t,!0),(s.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==lt.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:i,it:s}=this;return(0,lt.or)(a(),o());function a(){if(n.length){if(!(r instanceof lt.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return(0,lt._)`${(0,D$.checkDataTypes)(u,r,s.opts.strictNumbers,D$.DataType.Wrong)}`}return lt.nil}function o(){if(i.validateSchema){let u=t.scopeValue("validate$data",{ref:i.validateSchema});return(0,lt._)`!${u}(${r})`}return lt.nil}}subschema(t,r){let n=(0,cte.getSubschema)(this.it,t);(0,cte.extendSubschemaData)(n,this.it,t),(0,cte.extendSubschemaMode)(n,t);let i={...this.it,...n,items:void 0,props:void 0};return nhr(i,r),i}mergeEvaluated(t,r){let{it:n,gen:i}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=zh.mergeEvaluated.props(i,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=zh.mergeEvaluated.items(i,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:i}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return i.if(r,()=>this.mergeEvaluated(t,lt.Name)),!0}};kg.KeywordCxt=k$;function b8e(e,t,r,n){let i=new k$(e,r,t);"code"in r?r.code(i,n):i.$data&&r.validate?(0,tN.funcKeywordCode)(i,r):"macro"in r?(0,tN.macroKeywordCode)(i,r):(r.compile||r.validate)&&(0,tN.funcKeywordCode)(i,r)}var yhr=/^\/(?:[^~]|~0|~1)*$/,_hr=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function E8e(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let i,s;if(e==="")return kt.default.rootData;if(e[0]==="/"){if(!yhr.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);i=e,s=kt.default.rootData}else{let c=_hr.exec(e);if(!c)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+c[1];if(i=c[2],i==="#"){if(l>=t)throw new Error(u("property/index",l));return n[t-l]}if(l>t)throw new Error(u("data",l));if(s=r[t-l],!i)return s}let a=s,o=i.split("/");for(let c of o)c&&(s=(0,lt._)`${s}${(0,lt.getProperty)((0,zh.unescapeJsonPointer)(c))}`,a=(0,lt._)`${a} && ${s}`);return a;function u(c,l){return`Cannot access ${c} ${l} levels up, current level is ${t}`}}kg.getData=E8e});var O$=b(pte=>{"use strict";Object.defineProperty(pte,"__esModule",{value:!0});var fte=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};pte.default=fte});var nN=b(gte=>{"use strict";Object.defineProperty(gte,"__esModule",{value:!0});var hte=Z2(),mte=class extends Error{constructor(t,r,n,i){super(i||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,hte.resolveUrl)(t,r,n),this.missingSchema=(0,hte.normalizeId)((0,hte.getFullPath)(t,this.missingRef))}};gte.default=mte});var M$=b(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});pl.resolveSchema=pl.getCompilingSchema=pl.resolveRef=pl.compileSchema=pl.SchemaEnv=void 0;var wd=Xt(),Ahr=O$(),KA=Vh(),Id=Z2(),S8e=Br(),vhr=rN(),pS=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,Id.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};pl.SchemaEnv=pS;function _te(e){let t=w8e.call(this,e);if(t)return t;let r=(0,Id.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:i}=this.opts.code,{ownProperties:s}=this.opts,a=new wd.CodeGen(this.scope,{es5:n,lines:i,ownProperties:s}),o;e.$async&&(o=a.scopeValue("Error",{ref:Ahr.default,code:(0,wd._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");e.validateName=u;let c={gen:a,allErrors:this.opts.allErrors,data:KA.default.data,parentData:KA.default.parentData,parentDataProperty:KA.default.parentDataProperty,dataNames:[KA.default.data],dataPathArr:[wd.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,wd.stringify)(e.schema)}:{ref:e.schema}),validateName:u,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:wd.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,wd._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,vhr.validateFunctionCode)(c),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(KA.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let p=new Function(`${KA.default.self}`,`${KA.default.scope}`,l)(this,this.scope.get());if(this.scope.value(u,{ref:p}),p.errors=null,p.schema=e.schema,p.schemaEnv=e,e.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:u,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:h,items:m}=c;p.evaluated={props:h instanceof wd.Name?void 0:h,items:m instanceof wd.Name?void 0:m,dynamicProps:h instanceof wd.Name,dynamicItems:m instanceof wd.Name},p.source&&(p.source.evaluated=(0,wd.stringify)(p.evaluated))}return e.validate=p,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}pl.compileSchema=_te;function bhr(e,t,r){var n;r=(0,Id.resolveUrl)(this.opts.uriResolver,t,r);let i=e.refs[r];if(i)return i;let s=whr.call(this,e,r);if(s===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(s=new pS({schema:a,schemaId:o,root:e,baseId:t}))}if(s!==void 0)return e.refs[r]=Ehr.call(this,s)}pl.resolveRef=bhr;function Ehr(e){return(0,Id.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:_te.call(this,e)}function w8e(e){for(let t of this._compilations)if(Shr(t,e))return t}pl.getCompilingSchema=w8e;function Shr(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function whr(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||P$.call(this,e,t)}function P$(e,t){let r=this.opts.uriResolver.parse(t),n=(0,Id._getFullPath)(this.opts.uriResolver,r),i=(0,Id.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===i)return yte.call(this,r,e);let s=(0,Id.normalizeId)(n),a=this.refs[s]||this.schemas[s];if(typeof a=="string"){let o=P$.call(this,e,a);return typeof o?.schema!="object"?void 0:yte.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||_te.call(this,a),s===(0,Id.normalizeId)(t)){let{schema:o}=a,{schemaId:u}=this.opts,c=o[u];return c&&(i=(0,Id.resolveUrl)(this.opts.uriResolver,i,c)),new pS({schema:o,schemaId:u,root:e,baseId:i})}return yte.call(this,r,a)}}pl.resolveSchema=P$;var Ihr=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function yte(e,{baseId:t,schema:r,root:n}){var i;if(((i=e.fragment)===null||i===void 0?void 0:i[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0,S8e.unescapeFragment)(o)];if(u===void 0)return;r=u;let c=typeof r=="object"&&r[this.opts.schemaId];!Ihr.has(o)&&c&&(t=(0,Id.resolveUrl)(this.opts.uriResolver,t,c))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,S8e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Id.resolveUrl)(this.opts.uriResolver,t,r.$ref);s=P$.call(this,n,o)}let{schemaId:a}=this.opts;if(s=s||new pS({schema:r,schemaId:a,root:n,baseId:t}),s.schema!==s.root.schema)return s}});var I8e=b((xNn,xhr)=>{xhr.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var vte=b((CNn,N8e)=>{"use strict";var Chr=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),C8e=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Ate(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var Thr=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function x8e(e){return e.length=0,!0}function Nhr(e,t,r){if(e.length){let n=Ate(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function Rhr(e){let t=0,r={error:!1,address:"",zone:""},n=[],i=[],s=!1,a=!1,o=Nhr;for(let u=0;u7){r.error=!0;break}u>0&&e[u-1]===":"&&(s=!0),n.push(":");continue}else if(c==="%"){if(!o(i,n,r))break;o=x8e}else{i.push(c);continue}}return i.length&&(o===x8e?r.zone=i.join(""):a?n.push(i.join("")):n.push(Ate(i))),r.address=n.join(""),r}function T8e(e){if(Dhr(e,":")<2)return{host:e,isIPV6:!1};let t=Rhr(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function Dhr(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:Mhr}=vte(),Lhr=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,Bhr=["http","https","ws","wss","urn","urn:uuid"];function $hr(e){return Bhr.indexOf(e)!==-1}function bte(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function R8e(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function D8e(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function Fhr(e){return e.secure=bte(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Uhr(e){if((e.port===(bte(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function qhr(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(Lhr);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let i=`${n}:${t.nid||e.nid}`,s=Ete(i);e.path=void 0,s&&(e=s.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function jhr(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),i=`${r}:${t.nid||n}`,s=Ete(i);s&&(e=s.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function Hhr(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!Mhr(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Khr(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var k8e={scheme:"http",domainHost:!0,parse:R8e,serialize:D8e},Vhr={scheme:"https",domainHost:k8e.domainHost,parse:R8e,serialize:D8e},L$={scheme:"ws",domainHost:!0,parse:Fhr,serialize:Uhr},zhr={scheme:"wss",domainHost:L$.domainHost,parse:L$.parse,serialize:L$.serialize},Qhr={scheme:"urn",parse:qhr,serialize:jhr,skipNormalize:!0},Ghr={scheme:"urn:uuid",parse:Hhr,serialize:Khr,skipNormalize:!0},B$={http:k8e,https:Vhr,ws:L$,wss:zhr,urn:Qhr,"urn:uuid":Ghr};Object.setPrototypeOf(B$,null);function Ete(e){return e&&(B$[e]||B$[e.toLowerCase()])||void 0}O8e.exports={wsIsSecure:bte,SCHEMES:B$,isValidSchemeName:$hr,getSchemeHandler:Ete}});var B8e=b((NNn,F$)=>{"use strict";var{normalizeIPv6:Yhr,removeDotSegments:iN,recomposeAuthority:Whr,normalizeComponentEncoding:$$,isIPv4:Xhr,nonSimpleDomain:Jhr}=vte(),{SCHEMES:Zhr,getSchemeHandler:M8e}=P8e();function emr(e,t){return typeof e=="string"?e=Xf(Qh(e,t),t):typeof e=="object"&&(e=Qh(Xf(e,t),t)),e}function tmr(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},i=L8e(Qh(e,n),Qh(t,n),n,!0);return n.skipEscape=!0,Xf(i,n)}function L8e(e,t,r,n){let i={};return n||(e=Qh(Xf(e,r),r),t=Qh(Xf(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(i.scheme=t.scheme,i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=iN(t.path||""),i.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(i.userinfo=t.userinfo,i.host=t.host,i.port=t.port,i.path=iN(t.path||""),i.query=t.query):(t.path?(t.path[0]==="/"?i.path=iN(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?i.path="/"+t.path:e.path?i.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:i.path=t.path,i.path=iN(i.path)),i.query=t.query):(i.path=e.path,t.query!==void 0?i.query=t.query:i.query=e.query),i.userinfo=e.userinfo,i.host=e.host,i.port=e.port),i.scheme=e.scheme),i.fragment=t.fragment,i}function rmr(e,t,r){return typeof e=="string"?(e=unescape(e),e=Xf($$(Qh(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Xf($$(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=Xf($$(Qh(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Xf($$(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function Xf(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),i=[],s=M8e(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&i.push(r.scheme,":");let a=Whr(r);if(a!==void 0&&(n.reference!=="suffix"&&i.push("//"),i.push(a),r.path&&r.path[0]!=="/"&&i.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(o=iN(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),i.push(o)}return r.query!==void 0&&i.push("?",r.query),r.fragment!==void 0&&i.push("#",r.fragment),i.join("")}var nmr=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Qh(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},i=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let s=e.match(nmr);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(Xhr(n.host)===!1){let u=Yhr(n.host);n.host=u.host.toLowerCase(),i=u.isIPV6}else i=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=M8e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&i===!1&&Jhr(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Ste={SCHEMES:Zhr,normalize:emr,resolve:tmr,resolveComponent:L8e,equal:rmr,serialize:Xf,parse:Qh};F$.exports=Ste;F$.exports.default=Ste;F$.exports.fastUri=Ste});var F8e=b(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});var $8e=B8e();$8e.code='require("ajv/dist/runtime/uri").default';wte.default=$8e});var Q8e=b(Da=>{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.CodeGen=Da.Name=Da.nil=Da.stringify=Da.str=Da._=Da.KeywordCxt=void 0;var imr=rN();Object.defineProperty(Da,"KeywordCxt",{enumerable:!0,get:function(){return imr.KeywordCxt}});var hS=Xt();Object.defineProperty(Da,"_",{enumerable:!0,get:function(){return hS._}});Object.defineProperty(Da,"str",{enumerable:!0,get:function(){return hS.str}});Object.defineProperty(Da,"stringify",{enumerable:!0,get:function(){return hS.stringify}});Object.defineProperty(Da,"nil",{enumerable:!0,get:function(){return hS.nil}});Object.defineProperty(Da,"Name",{enumerable:!0,get:function(){return hS.Name}});Object.defineProperty(Da,"CodeGen",{enumerable:!0,get:function(){return hS.CodeGen}});var smr=O$(),K8e=nN(),amr=ete(),sN=M$(),omr=Xt(),aN=Z2(),U$=J2(),xte=Br(),U8e=I8e(),umr=F8e(),V8e=(e,t)=>new RegExp(e,t);V8e.code="new RegExp";var cmr=["removeAdditional","useDefaults","coerceTypes"],lmr=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),dmr={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},fmr={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},q8e=200;function pmr(e){var t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v,A,_,E,S,C,I,N;let T=e.strict,k=(t=e.code)===null||t===void 0?void 0:t.optimize,O=k===!0||k===void 0?1:k||0,P=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:V8e,$=(i=e.uriResolver)!==null&&i!==void 0?i:umr.default;return{strictSchema:(a=(s=e.strictSchema)!==null&&s!==void 0?s:T)!==null&&a!==void 0?a:!0,strictNumbers:(u=(o=e.strictNumbers)!==null&&o!==void 0?o:T)!==null&&u!==void 0?u:!0,strictTypes:(l=(c=e.strictTypes)!==null&&c!==void 0?c:T)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:T)!==null&&f!==void 0?f:"log",strictRequired:(h=(p=e.strictRequired)!==null&&p!==void 0?p:T)!==null&&h!==void 0?h:!1,code:e.code?{...e.code,optimize:O,regExp:P}:{optimize:O,regExp:P},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:q8e,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:q8e,meta:(g=e.meta)!==null&&g!==void 0?g:!0,messages:(v=e.messages)!==null&&v!==void 0?v:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(_=e.schemaId)!==null&&_!==void 0?_:"$id",addUsedSchema:(E=e.addUsedSchema)!==null&&E!==void 0?E:!0,validateSchema:(S=e.validateSchema)!==null&&S!==void 0?S:!0,validateFormats:(C=e.validateFormats)!==null&&C!==void 0?C:!0,unicodeRegExp:(I=e.unicodeRegExp)!==null&&I!==void 0?I:!0,int32range:(N=e.int32range)!==null&&N!==void 0?N:!0,uriResolver:$}}var oN=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...pmr(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new omr.ValueScope({scope:{},prefixes:lmr,es5:r,lines:n}),this.logger=Amr(t.logger);let i=t.validateFormats;t.validateFormats=!1,this.RULES=(0,amr.getRules)(),j8e.call(this,dmr,t,"NOT SUPPORTED"),j8e.call(this,fmr,t,"DEPRECATED","warn"),this._metaOpts=ymr.call(this),t.formats&&mmr.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&gmr.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),hmr.call(this),t.validateFormats=i}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,i=U8e;n==="id"&&(i={...U8e},i.id=i.$id,delete i.$id),r&&t&&this.addMetaSchema(i,i[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let i=n(r);return"$async"in n||(this.errors=n.errors),i}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return i.call(this,t,r);async function i(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await i.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof K8e.default))throw d;return o.call(this,d),await u.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function u(l){let d=await c.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function c(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,i=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,i);return this}let s;if(typeof t=="object"){let{schemaId:a}=this.opts;if(s=t[a],s!==void 0&&typeof s!="string")throw new Error(`schema ${a} must be string`)}return r=(0,aN.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,i,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let i=this.validate(n,t);if(!i&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return i}getSchema(t){let r;for(;typeof(r=H8e.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,i=new sN.SchemaEnv({schema:{},schemaId:n});if(r=sN.resolveSchema.call(this,i,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=H8e.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,aN.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(bmr.call(this,n,r),!r)return(0,xte.eachItem)(n,s=>Ite.call(this,s)),this;Smr.call(this,r);let i={...r,type:(0,U$.getJSONTypes)(r.type),schemaType:(0,U$.getJSONTypes)(r.schemaType)};return(0,xte.eachItem)(n,i.type.length===0?s=>Ite.call(this,s,i):s=>i.type.forEach(a=>Ite.call(this,s,i,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let i=n.rules.findIndex(s=>s.keyword===t);i>=0&&n.rules.splice(i,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(i=>`${n}${i.instancePath} ${i.message}`).reduce((i,s)=>i+r+s)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let i of r){let s=i.split("/").slice(1),a=t;for(let o of s)a=a[o];for(let o in n){let u=n[o];if(typeof u!="object")continue;let{$data:c}=u.definition,l=a[o];c&&l&&(a[o]=z8e(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let i=t[n];(!r||r.test(n))&&(typeof i=="string"?delete t[n]:i&&!i.meta&&(this._cache.delete(i.schema),delete t[n]))}}_addSchema(t,r,n,i=this.opts.validateSchema,s=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let u=this._cache.get(t);if(u!==void 0)return u;n=(0,aN.normalizeId)(a||n);let c=aN.getSchemaRefs.call(this,t,n);return u=new sN.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:c}),this._cache.set(u.schema,u),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),i&&this.validateSchema(t,!0),u}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):sN.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{sN.compileSchema.call(this,t)}finally{this.opts=r}}};oN.ValidationError=smr.default;oN.MissingRefError=K8e.default;Da.default=oN;function j8e(e,t,r,n="error"){for(let i in e){let s=i;s in t&&this.logger[n](`${r}: option ${i}. ${e[s]}`)}}function H8e(e){return e=(0,aN.normalizeId)(e),this.schemas[e]||this.refs[e]}function hmr(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function mmr(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function gmr(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function ymr(){let e={...this.opts};for(let t of cmr)delete e[t];return e}var _mr={log(){},warn(){},error(){}};function Amr(e){if(e===!1)return _mr;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var vmr=/^[a-z_$][a-z0-9_$:-]*$/i;function bmr(e,t){let{RULES:r}=this;if((0,xte.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!vmr.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function Ite(e,t,r){var n;let i=t?.post;if(r&&i)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,a=i?s.post:s.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},s.rules.push(a)),s.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,U$.getJSONTypes)(t.type),schemaType:(0,U$.getJSONTypes)(t.schemaType)}};t.before?Emr.call(this,a,o,t.before):a.rules.push(o),s.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u))}function Emr(e,t,r){let n=e.rules.findIndex(i=>i.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function Smr(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=z8e(t)),e.validateSchema=this.compile(t,!0))}var wmr={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function z8e(e){return{anyOf:[e,wmr]}}});var G8e=b(Cte=>{"use strict";Object.defineProperty(Cte,"__esModule",{value:!0});var Imr={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Cte.default=Imr});var J8e=b(VA=>{"use strict";Object.defineProperty(VA,"__esModule",{value:!0});VA.callRef=VA.getValidate=void 0;var xmr=nN(),Y8e=fl(),Ou=Xt(),mS=Vh(),W8e=M$(),q$=Br(),Cmr={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:i,schemaEnv:s,validateName:a,opts:o,self:u}=n,{root:c}=s;if((r==="#"||r==="#/")&&i===c.baseId)return d();let l=W8e.resolveRef.call(u,c,i,r);if(l===void 0)throw new xmr.default(n.opts.uriResolver,i,r);if(l instanceof W8e.SchemaEnv)return f(l);return p(l);function d(){if(s===c)return j$(e,a,s,s.$async);let h=t.scopeValue("root",{ref:c});return j$(e,(0,Ou._)`${h}.validate`,c,c.$async)}function f(h){let m=X8e(e,h);j$(e,m,h,h.$async)}function p(h){let m=t.scopeValue("schema",o.code.source===!0?{ref:h,code:(0,Ou.stringify)(h)}:{ref:h}),y=t.name("valid"),g=e.subschema({schema:h,dataTypes:[],schemaPath:Ou.nil,topSchemaRef:m,errSchemaPath:r},y);e.mergeEvaluated(g),e.ok(y)}}};function X8e(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Ou._)`${r.scopeValue("wrapper",{ref:t})}.validate`}VA.getValidate=X8e;function j$(e,t,r,n){let{gen:i,it:s}=e,{allErrors:a,schemaEnv:o,opts:u}=s,c=u.passContext?mS.default.this:Ou.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let h=i.let("valid");i.try(()=>{i.code((0,Ou._)`await ${(0,Y8e.callValidateCode)(e,t,c)}`),p(t),a||i.assign(h,!0)},m=>{i.if((0,Ou._)`!(${m} instanceof ${s.ValidationError})`,()=>i.throw(m)),f(m),a||i.assign(h,!1)}),e.ok(h)}function d(){e.result((0,Y8e.callValidateCode)(e,t,c),()=>p(t),()=>f(t))}function f(h){let m=(0,Ou._)`${h}.errors`;i.assign(mS.default.vErrors,(0,Ou._)`${mS.default.vErrors} === null ? ${m} : ${mS.default.vErrors}.concat(${m})`),i.assign(mS.default.errors,(0,Ou._)`${mS.default.vErrors}.length`)}function p(h){var m;if(!s.opts.unevaluated)return;let y=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(s.props=q$.mergeEvaluated.props(i,y.props,s.props));else{let g=i.var("props",(0,Ou._)`${h}.evaluated.props`);s.props=q$.mergeEvaluated.props(i,g,s.props,Ou.Name)}if(s.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(s.items=q$.mergeEvaluated.items(i,y.items,s.items));else{let g=i.var("items",(0,Ou._)`${h}.evaluated.items`);s.items=q$.mergeEvaluated.items(i,g,s.items,Ou.Name)}}}VA.callRef=j$;VA.default=Cmr});var Z8e=b(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});var Tmr=G8e(),Nmr=J8e(),Rmr=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Tmr.default,Nmr.default];Tte.default=Rmr});var eUe=b(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});var H$=Xt(),Og=H$.operators,K$={maximum:{okStr:"<=",ok:Og.LTE,fail:Og.GT},minimum:{okStr:">=",ok:Og.GTE,fail:Og.LT},exclusiveMaximum:{okStr:"<",ok:Og.LT,fail:Og.GTE},exclusiveMinimum:{okStr:">",ok:Og.GT,fail:Og.LTE}},Dmr={message:({keyword:e,schemaCode:t})=>(0,H$.str)`must be ${K$[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,H$._)`{comparison: ${K$[e].okStr}, limit: ${t}}`},kmr={keyword:Object.keys(K$),type:"number",schemaType:"number",$data:!0,error:Dmr,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,H$._)`${r} ${K$[t].fail} ${n} || isNaN(${r})`)}};Nte.default=kmr});var tUe=b(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});var uN=Xt(),Omr={message:({schemaCode:e})=>(0,uN.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,uN._)`{multipleOf: ${e}}`},Pmr={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:Omr,code(e){let{gen:t,data:r,schemaCode:n,it:i}=e,s=i.opts.multipleOfPrecision,a=t.let("res"),o=s?(0,uN._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${s}`:(0,uN._)`${a} !== parseInt(${a})`;e.fail$data((0,uN._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Rte.default=Pmr});var nUe=b(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});function rUe(e){let t=e.length,r=0,n=0,i;for(;n=55296&&i<=56319&&n{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});var zA=Xt(),Mmr=Br(),Lmr=nUe(),Bmr={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,zA.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,zA._)`{limit: ${e}}`},$mr={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Bmr,code(e){let{keyword:t,data:r,schemaCode:n,it:i}=e,s=t==="maxLength"?zA.operators.GT:zA.operators.LT,a=i.opts.unicode===!1?(0,zA._)`${r}.length`:(0,zA._)`${(0,Mmr.useFunc)(e.gen,Lmr.default)}(${r})`;e.fail$data((0,zA._)`${a} ${s} ${n}`)}};kte.default=$mr});var sUe=b(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});var Fmr=fl(),Umr=Br(),gS=Xt(),qmr={message:({schemaCode:e})=>(0,gS.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,gS._)`{pattern: ${e}}`},jmr={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:qmr,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:s,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:u}=a.opts.code,c=u.code==="new RegExp"?(0,gS._)`new RegExp`:(0,Umr.useFunc)(t,u),l=t.let("valid");t.try(()=>t.assign(l,(0,gS._)`${c}(${s}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,gS._)`!${l}`)}else{let u=(0,Fmr.usePattern)(e,i);e.fail$data((0,gS._)`!${u}.test(${r})`)}}};Ote.default=jmr});var aUe=b(Pte=>{"use strict";Object.defineProperty(Pte,"__esModule",{value:!0});var cN=Xt(),Hmr={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,cN.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,cN._)`{limit: ${e}}`},Kmr={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Hmr,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxProperties"?cN.operators.GT:cN.operators.LT;e.fail$data((0,cN._)`Object.keys(${r}).length ${i} ${n}`)}};Pte.default=Kmr});var oUe=b(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});var lN=fl(),dN=Xt(),Vmr=Br(),zmr={message:({params:{missingProperty:e}})=>(0,dN.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,dN._)`{missingProperty: ${e}}`},Qmr={keyword:"required",type:"object",schemaType:"array",$data:!0,error:zmr,code(e){let{gen:t,schema:r,schemaCode:n,data:i,$data:s,it:a}=e,{opts:o}=a;if(!s&&r.length===0)return;let u=r.length>=o.loopRequired;if(a.allErrors?c():l(),o.strictRequired){let p=e.parentSchema.properties,{definedProperties:h}=e.it;for(let m of r)if(p?.[m]===void 0&&!h.has(m)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${m}" is not defined at "${y}" (strictRequired)`;(0,Vmr.checkStrictMode)(a,g,a.opts.strictRequired)}}function c(){if(u||s)e.block$data(dN.nil,d);else for(let p of r)(0,lN.checkReportMissingProp)(e,p)}function l(){let p=t.let("missing");if(u||s){let h=t.let("valid",!0);e.block$data(h,()=>f(p,h)),e.ok(h)}else t.if((0,lN.checkMissingProp)(e,r,p)),(0,lN.reportMissingProp)(e,p),t.else()}function d(){t.forOf("prop",n,p=>{e.setParams({missingProperty:p}),t.if((0,lN.noPropertyInData)(t,i,p,o.ownProperties),()=>e.error())})}function f(p,h){e.setParams({missingProperty:p}),t.forOf(p,n,()=>{t.assign(h,(0,lN.propertyInData)(t,i,p,o.ownProperties)),t.if((0,dN.not)(h),()=>{e.error(),t.break()})},dN.nil)}}};Mte.default=Qmr});var uUe=b(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});var fN=Xt(),Gmr={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,fN.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,fN._)`{limit: ${e}}`},Ymr={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:Gmr,code(e){let{keyword:t,data:r,schemaCode:n}=e,i=t==="maxItems"?fN.operators.GT:fN.operators.LT;e.fail$data((0,fN._)`${r}.length ${i} ${n}`)}};Lte.default=Ymr});var V$=b(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});var cUe=tl();cUe.code='require("ajv/dist/runtime/equal").default';Bte.default=cUe});var lUe=b(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});var $te=J2(),ka=Xt(),Wmr=Br(),Xmr=V$(),Jmr={message:({params:{i:e,j:t}})=>(0,ka.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,ka._)`{i: ${e}, j: ${t}}`},Zmr={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:Jmr,code(e){let{gen:t,data:r,$data:n,schema:i,parentSchema:s,schemaCode:a,it:o}=e;if(!n&&!i)return;let u=t.let("valid"),c=s.items?(0,$te.getSchemaTypes)(s.items):[];e.block$data(u,l,(0,ka._)`${a} === false`),e.ok(u);function l(){let h=t.let("i",(0,ka._)`${r}.length`),m=t.let("j");e.setParams({i:h,j:m}),t.assign(u,!0),t.if((0,ka._)`${h} > 1`,()=>(d()?f:p)(h,m))}function d(){return c.length>0&&!c.some(h=>h==="object"||h==="array")}function f(h,m){let y=t.name("item"),g=(0,$te.checkDataTypes)(c,y,o.opts.strictNumbers,$te.DataType.Wrong),v=t.const("indices",(0,ka._)`{}`);t.for((0,ka._)`;${h}--;`,()=>{t.let(y,(0,ka._)`${r}[${h}]`),t.if(g,(0,ka._)`continue`),c.length>1&&t.if((0,ka._)`typeof ${y} == "string"`,(0,ka._)`${y} += "_"`),t.if((0,ka._)`typeof ${v}[${y}] == "number"`,()=>{t.assign(m,(0,ka._)`${v}[${y}]`),e.error(),t.assign(u,!1).break()}).code((0,ka._)`${v}[${y}] = ${h}`)})}function p(h,m){let y=(0,Wmr.useFunc)(t,Xmr.default),g=t.name("outer");t.label(g).for((0,ka._)`;${h}--;`,()=>t.for((0,ka._)`${m} = ${h}; ${m}--;`,()=>t.if((0,ka._)`${y}(${r}[${h}], ${r}[${m}])`,()=>{e.error(),t.assign(u,!1).break(g)})))}}};Fte.default=Zmr});var dUe=b(qte=>{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});var Ute=Xt(),e0r=Br(),t0r=V$(),r0r={message:"must be equal to constant",params:({schemaCode:e})=>(0,Ute._)`{allowedValue: ${e}}`},n0r={keyword:"const",$data:!0,error:r0r,code(e){let{gen:t,data:r,$data:n,schemaCode:i,schema:s}=e;n||s&&typeof s=="object"?e.fail$data((0,Ute._)`!${(0,e0r.useFunc)(t,t0r.default)}(${r}, ${i})`):e.fail((0,Ute._)`${s} !== ${r}`)}};qte.default=n0r});var fUe=b(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});var pN=Xt(),i0r=Br(),s0r=V$(),a0r={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,pN._)`{allowedValues: ${e}}`},o0r={keyword:"enum",schemaType:"array",$data:!0,error:a0r,code(e){let{gen:t,data:r,$data:n,schema:i,schemaCode:s,it:a}=e;if(!n&&i.length===0)throw new Error("enum must have non-empty array");let o=i.length>=a.opts.loopEnum,u,c=()=>u??(u=(0,i0r.useFunc)(t,s0r.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(i))throw new Error("ajv implementation error");let p=t.const("vSchema",s);l=(0,pN.or)(...i.map((h,m)=>f(p,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",s,p=>t.if((0,pN._)`${c()}(${r}, ${p})`,()=>t.assign(l,!0).break()))}function f(p,h){let m=i[h];return typeof m=="object"&&m!==null?(0,pN._)`${c()}(${r}, ${p}[${h}])`:(0,pN._)`${r} === ${m}`}}};jte.default=o0r});var pUe=b(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});var u0r=eUe(),c0r=tUe(),l0r=iUe(),d0r=sUe(),f0r=aUe(),p0r=oUe(),h0r=uUe(),m0r=lUe(),g0r=dUe(),y0r=fUe(),_0r=[u0r.default,c0r.default,l0r.default,d0r.default,f0r.default,p0r.default,h0r.default,m0r.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},g0r.default,y0r.default];Hte.default=_0r});var Vte=b(hN=>{"use strict";Object.defineProperty(hN,"__esModule",{value:!0});hN.validateAdditionalItems=void 0;var QA=Xt(),Kte=Br(),A0r={message:({params:{len:e}})=>(0,QA.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,QA._)`{limit: ${e}}`},v0r={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:A0r,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,Kte.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}hUe(e,n)}};function hUe(e,t){let{gen:r,schema:n,data:i,keyword:s,it:a}=e;a.items=!0;let o=r.const("len",(0,QA._)`${i}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,QA._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,Kte.alwaysValidSchema)(a,n)){let c=r.var("valid",(0,QA._)`${o} <= ${t.length}`);r.if((0,QA.not)(c),()=>u(c)),e.ok(c)}function u(c){r.forRange("i",t.length,o,l=>{e.subschema({keyword:s,dataProp:l,dataPropType:Kte.Type.Num},c),a.allErrors||r.if((0,QA.not)(c),()=>r.break())})}}hN.validateAdditionalItems=hUe;hN.default=v0r});var zte=b(mN=>{"use strict";Object.defineProperty(mN,"__esModule",{value:!0});mN.validateTuple=void 0;var mUe=Xt(),z$=Br(),b0r=fl(),E0r={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return gUe(e,"additionalItems",t);r.items=!0,!(0,z$.alwaysValidSchema)(r,t)&&e.ok((0,b0r.validateArray)(e))}};function gUe(e,t,r=e.schema){let{gen:n,parentSchema:i,data:s,keyword:a,it:o}=e;l(i),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=z$.mergeEvaluated.items(n,r.length,o.items));let u=n.name("valid"),c=n.const("len",(0,mUe._)`${s}.length`);r.forEach((d,f)=>{(0,z$.alwaysValidSchema)(o,d)||(n.if((0,mUe._)`${c} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},u)),e.ok(u))});function l(d){let{opts:f,errSchemaPath:p}=o,h=r.length,m=h===d.minItems&&(h===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let y=`"${a}" is ${h}-tuple, but minItems or maxItems/${t} are not specified or different at path "${p}"`;(0,z$.checkStrictMode)(o,y,f.strictTuples)}}}mN.validateTuple=gUe;mN.default=E0r});var yUe=b(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});var S0r=zte(),w0r={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,S0r.validateTuple)(e,"items")};Qte.default=w0r});var AUe=b(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});var _Ue=Xt(),I0r=Br(),x0r=fl(),C0r=Vte(),T0r={message:({params:{len:e}})=>(0,_Ue.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,_Ue._)`{limit: ${e}}`},N0r={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:T0r,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:i}=r;n.items=!0,!(0,I0r.alwaysValidSchema)(n,t)&&(i?(0,C0r.validateAdditionalItems)(e,i):e.ok((0,x0r.validateArray)(e)))}};Gte.default=N0r});var vUe=b(Yte=>{"use strict";Object.defineProperty(Yte,"__esModule",{value:!0});var hl=Xt(),Q$=Br(),R0r={message:({params:{min:e,max:t}})=>t===void 0?(0,hl.str)`must contain at least ${e} valid item(s)`:(0,hl.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,hl._)`{minContains: ${e}}`:(0,hl._)`{minContains: ${e}, maxContains: ${t}}`},D0r={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:R0r,code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:s}=e,a,o,{minContains:u,maxContains:c}=n;s.opts.next?(a=u===void 0?1:u,o=c):a=1;let l=t.const("len",(0,hl._)`${i}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,Q$.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Q$.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,Q$.alwaysValidSchema)(s,r)){let m=(0,hl._)`${l} >= ${a}`;o!==void 0&&(m=(0,hl._)`${m} && ${l} <= ${o}`),e.pass(m);return}s.items=!0;let d=t.name("valid");o===void 0&&a===1?p(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,hl._)`${i}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),y=t.let("count",0);p(m,()=>t.if(m,()=>h(y)))}function p(m,y){t.forRange("i",0,l,g=>{e.subschema({keyword:"contains",dataProp:g,dataPropType:Q$.Type.Num,compositeRule:!0},m),y()})}function h(m){t.code((0,hl._)`${m}++`),o===void 0?t.if((0,hl._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,hl._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,hl._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};Yte.default=D0r});var SUe=b(Jf=>{"use strict";Object.defineProperty(Jf,"__esModule",{value:!0});Jf.validateSchemaDeps=Jf.validatePropertyDeps=Jf.error=void 0;var Wte=Xt(),k0r=Br(),gN=fl();Jf.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,Wte.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,Wte._)`{property: ${e}, + deps: ${r}}`};var URr={keyword:"dependencies",type:"object",schemaType:"object",error:mh.error,code(e){let[t,r]=FRr(e);Kje(e,t),Gje(e,r)}};function FRr({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function Kje(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let c=(0,$2.propertyInData)(r,n,a,s.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,$2.checkReportMissingProp)(e,u)}):(r.if((0,Gie._)`${c} && (${(0,$2.checkMissingProp)(e,o,i)})`),(0,$2.reportMissingProp)(e,i),r.else())}}mh.validatePropertyDeps=Kje;function Gje(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,a=r.name("valid");for(let o in t)(0,BRr.alwaysValidSchema)(i,t[o])||(r.if((0,$2.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:o},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}mh.validateSchemaDeps=Gje;mh.default=URr});var Qje=S(zie=>{"use strict";Object.defineProperty(zie,"__esModule",{value:!0});var Yje=jt(),$Rr=Ar(),qRr={message:"property name must be valid",params:({params:e})=>(0,Yje._)`{propertyName: ${e.propertyName}}`},HRr={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:qRr,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0,$Rr.alwaysValidSchema)(s,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,Yje.not)(i),()=>{e.error(!0),s.allErrors||t.break()})}),e.ok(i)}};zie.default=HRr});var Qie=S(Yie=>{"use strict";Object.defineProperty(Yie,"__esModule",{value:!0});var Q5=mo(),Uf=jt(),VRr=yd(),W5=Ar(),jRr={message:"must NOT have additional properties",params:({params:e})=>(0,Uf._)`{additionalProperty: ${e.additionalProperty}}`},KRr={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:jRr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,W5.alwaysValidSchema)(a,r))return;let u=(0,Q5.allSchemaProperties)(n.properties),l=(0,Q5.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Uf._)`${i} === ${VRr.default.errors}`);function d(){t.forIn("key",s,g=>{!u.length&&!l.length?p(g):t.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let y=(0,W5.schemaRefOrVal)(a,n.properties,"properties");_=(0,Q5.isOwnProperty)(t,y,g)}else u.length?_=(0,Uf.or)(...u.map(y=>(0,Uf._)`${g} === ${y}`)):_=Uf.nil;return l.length&&(_=(0,Uf.or)(_,...l.map(y=>(0,Uf._)`${(0,Q5.usePattern)(e,y)}.test(${g})`))),(0,Uf.not)(_)}function h(g){t.code((0,Uf._)`delete ${s}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(g);return}if(r===!1){e.setParams({additionalProperty:g}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,W5.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(m(g,_,!1),t.if((0,Uf.not)(_),()=>{e.reset(),h(g)})):(m(g,_),o||t.if((0,Uf.not)(_),()=>t.break()))}}function m(g,_,y){let A={keyword:"additionalProperties",dataProp:g,dataPropType:W5.Type.Str};y===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,_)}}};Yie.default=KRr});var Jje=S(Xie=>{"use strict";Object.defineProperty(Xie,"__esModule",{value:!0});var GRr=lI(),Wje=mo(),Wie=Ar(),Xje=Qie(),zRr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Xje.default.code(new GRr.KeywordCxt(i,Xje.default,"additionalProperties"));let a=(0,Wje.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=Wie.mergeEvaluated.props(t,(0,Wie.toHash)(a),i.props));let o=a.filter(d=>!(0,Wie.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=t.name("valid");for(let d of o)u(d)?l(d):(t.if((0,Wje.propertyInData)(t,s,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Xie.default=zRr});var rKe=S(Jie=>{"use strict";Object.defineProperty(Jie,"__esModule",{value:!0});var Zje=mo(),X5=jt(),eKe=Ar(),tKe=Ar(),YRr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:a}=i,o=(0,Zje.allSchemaProperties)(r),c=o.filter(m=>(0,eKe.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof X5.Name)&&(i.props=(0,tKe.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let m of o)u&&h(m),i.allErrors?p(m):(t.var(l,!0),p(m),t.if(l))}function h(m){for(let g in u)new RegExp(m).test(g)&&(0,eKe.checkStrictMode)(i,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){t.forIn("key",n,g=>{t.if((0,X5._)`${(0,Zje.usePattern)(e,m)}.test(${g})`,()=>{let _=c.includes(m);_||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:tKe.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,X5._)`${d}[${g}]`,!0):!_&&!i.allErrors&&t.if((0,X5.not)(l),()=>t.break())})})}}};Jie.default=YRr});var nKe=S(Zie=>{"use strict";Object.defineProperty(Zie,"__esModule",{value:!0});var QRr=Ar(),WRr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,QRr.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Zie.default=WRr});var sKe=S(eae=>{"use strict";Object.defineProperty(eae,"__esModule",{value:!0});var XRr=mo(),JRr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:XRr.validateUnion,error:{message:"must match a schema in anyOf"}};eae.default=JRr});var iKe=S(tae=>{"use strict";Object.defineProperty(tae,"__esModule",{value:!0});var J5=jt(),ZRr=Ar(),eCr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,J5._)`{passingSchemas: ${e.passing}}`},tCr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:eCr,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),o=t.let("passing",null),c=t.name("_valid");e.setParams({passing:o}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let f;(0,ZRr.alwaysValidSchema)(s,l)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,J5._)`${c} && ${a}`).assign(a,!1).assign(o,(0,J5._)`[${o}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,J5.Name)})})}}};tae.default=tCr});var aKe=S(rae=>{"use strict";Object.defineProperty(rae,"__esModule",{value:!0});var rCr=Ar(),nCr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((i,a)=>{if((0,rCr.alwaysValidSchema)(n,i))return;let o=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(o)})}};rae.default=nCr});var uKe=S(nae=>{"use strict";Object.defineProperty(nae,"__esModule",{value:!0});var Z5=jt(),cKe=Ar(),sCr={message:({params:e})=>(0,Z5.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,Z5._)`{failingKeyword: ${e.ifClause}}`},iCr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:sCr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,cKe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=oKe(n,"then"),i=oKe(n,"else");if(!s&&!i)return;let a=t.let("valid",!0),o=t.name("_valid");if(c(),e.reset(),s&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,u("then",l),u("else",l))}else s?t.if(o,u("then")):t.if((0,Z5.not)(o),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,Z5._)`${l}`):e.setParams({ifClause:l})}}}};function oKe(e,t){let r=e.schema[t];return r!==void 0&&!(0,cKe.alwaysValidSchema)(e,r)}nae.default=iCr});var lKe=S(sae=>{"use strict";Object.defineProperty(sae,"__esModule",{value:!0});var aCr=Ar(),oCr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,aCr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};sae.default=oCr});var dKe=S(iae=>{"use strict";Object.defineProperty(iae,"__esModule",{value:!0});var cCr=qie(),uCr=qje(),lCr=Hie(),dCr=Vje(),fCr=jje(),hCr=zje(),pCr=Qje(),mCr=Qie(),gCr=Jje(),_Cr=rKe(),ACr=nKe(),ECr=sKe(),yCr=iKe(),vCr=aKe(),SCr=uKe(),TCr=lKe();function bCr(e=!1){let t=[ACr.default,ECr.default,yCr.default,vCr.default,SCr.default,TCr.default,pCr.default,mCr.default,hCr.default,gCr.default,_Cr.default];return e?t.push(uCr.default,dCr.default):t.push(cCr.default,lCr.default),t.push(fCr.default),t}iae.default=bCr});var fKe=S(aae=>{"use strict";Object.defineProperty(aae,"__esModule",{value:!0});var qi=jt(),ICr={message:({schemaCode:e})=>(0,qi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,qi._)`{format: ${e}}`},RCr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:ICr,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,qi._)`${p}[${a}]`),g=r.let("fType"),_=r.let("format");r.if((0,qi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,qi._)`${m}.type || "string"`).assign(_,(0,qi._)`${m}.validate`),()=>r.assign(g,(0,qi._)`"string"`).assign(_,m)),e.fail$data((0,qi.or)(y(),A()));function y(){return c.strictSchema===!1?qi.nil:(0,qi._)`${a} && !${_}`}function A(){let E=l.$async?(0,qi._)`(${m}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,qi._)`${_}(${n})`,v=(0,qi._)`(typeof ${_} == "function" ? ${E} : ${_}.test(${n}))`;return(0,qi._)`${_} && ${_} !== true && ${g} === ${t} && !${v}`}}function h(){let p=d.formats[i];if(!p){y();return}if(p===!0)return;let[m,g,_]=A(p);m===t&&e.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function A(v){let b=v instanceof RegExp?(0,qi.regexpCode)(v):c.code.formats?(0,qi._)`${c.code.formats}${(0,qi.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:v,code:b});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,qi._)`${I}.validate`]:["string",v,I]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,qi._)`await ${_}(${n})`}return typeof g=="function"?(0,qi._)`${_}(${n})`:(0,qi._)`${_}.test(${n})`}}}};aae.default=RCr});var hKe=S(oae=>{"use strict";Object.defineProperty(oae,"__esModule",{value:!0});var CCr=fKe(),xCr=[CCr.default];oae.default=xCr});var pKe=S(mI=>{"use strict";Object.defineProperty(mI,"__esModule",{value:!0});mI.contentVocabulary=mI.metadataVocabulary=void 0;mI.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];mI.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var gKe=S(cae=>{"use strict";Object.defineProperty(cae,"__esModule",{value:!0});var wCr=Tje(),NCr=Bje(),OCr=dKe(),DCr=hKe(),mKe=pKe(),PCr=[wCr.default,NCr.default,(0,OCr.default)(),DCr.default,mKe.metadataVocabulary,mKe.contentVocabulary];cae.default=PCr});var uae=S(e8=>{"use strict";Object.defineProperty(e8,"__esModule",{value:!0});e8.DiscrError=void 0;var _Ke;(function(e){e.Tag="tag",e.Mapping="mapping"})(_Ke||(e8.DiscrError=_Ke={}))});var EKe=S(dae=>{"use strict";Object.defineProperty(dae,"__esModule",{value:!0});var gI=jt(),lae=uae(),AKe=Ov(),LCr=fm(),MCr=Ar(),kCr={message:({params:{discrError:e,tagName:t}})=>e===lae.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,gI._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},BCr={keyword:"discriminator",type:"object",schemaType:"object",error:kCr,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,gI._)`${r}${(0,gI.getProperty)(o)}`);t.if((0,gI._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:lae.DiscrError.Tag,tag:u,tagName:o})),e.ok(c);function l(){let h=f();t.if(!1);for(let p in h)t.elseIf((0,gI._)`${u} === ${p}`),t.assign(c,d(h[p]));t.else(),e.error(!1,{discrError:lae.DiscrError.Mapping,tag:u,tagName:o}),t.endIf()}function d(h){let p=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(m,gI.Name),p}function f(){var h;let p={},m=_(s),g=!0;for(let E=0;E{UCr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var SKe=S((Ys,fae)=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});Ys.MissingRefError=Ys.ValidationError=Ys.CodeGen=Ys.Name=Ys.nil=Ys.stringify=Ys.str=Ys._=Ys.KeywordCxt=Ys.Ajv=void 0;var FCr=vie(),$Cr=gKe(),qCr=EKe(),vKe=yKe(),HCr=["/properties"],t8="http://json-schema.org/draft-07/schema",_I=class extends FCr.default{_addVocabularies(){super._addVocabularies(),$Cr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(qCr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(vKe,HCr):vKe;this.addMetaSchema(t,t8,!1),this.refs["http://json-schema.org/schema"]=t8}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(t8)?t8:void 0)}};Ys.Ajv=_I;fae.exports=Ys=_I;fae.exports.Ajv=_I;Object.defineProperty(Ys,"__esModule",{value:!0});Ys.default=_I;var VCr=lI();Object.defineProperty(Ys,"KeywordCxt",{enumerable:!0,get:function(){return VCr.KeywordCxt}});var AI=jt();Object.defineProperty(Ys,"_",{enumerable:!0,get:function(){return AI._}});Object.defineProperty(Ys,"str",{enumerable:!0,get:function(){return AI.str}});Object.defineProperty(Ys,"stringify",{enumerable:!0,get:function(){return AI.stringify}});Object.defineProperty(Ys,"nil",{enumerable:!0,get:function(){return AI.nil}});Object.defineProperty(Ys,"Name",{enumerable:!0,get:function(){return AI.Name}});Object.defineProperty(Ys,"CodeGen",{enumerable:!0,get:function(){return AI.CodeGen}});var jCr=C2();Object.defineProperty(Ys,"ValidationError",{enumerable:!0,get:function(){return jCr.default}});var KCr=fm();Object.defineProperty(Ys,"MissingRefError",{enumerable:!0,get:function(){return KCr.default}})});var pm=S(q2=>{"use strict";Object.defineProperty(q2,"__esModule",{value:!0});q2.checkMetadata=void 0;var GCr=Ar(),zCr={keyword:"metadata",schemaType:"object",code(e){TKe(e);let{gen:t,schema:r,it:n}=e;if((0,GCr.alwaysValidSchema)(n,r))return;let s=t.name("valid");e.subschema({keyword:"metadata",jtdMetadata:!0},s),e.ok(s)}};function TKe({it:e,keyword:t},r){if(e.jtdMetadata!==r)throw new Error(`JTD: "${t}" cannot be used in this schema location`)}q2.checkMetadata=TKe;q2.default=zCr});var r8=S(V2=>{"use strict";Object.defineProperty(V2,"__esModule",{value:!0});V2.hasRef=void 0;var bKe=Ov(),H2=jt(),YCr=fm(),IKe=yd(),RKe=Tie(),QCr=pm(),WCr={keyword:"ref",schemaType:"string",code(e){(0,QCr.checkMetadata)(e);let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{schemaEnv:{root:a}}=i,o=t.name("valid");s.nullable?(t.var(o,(0,H2._)`${r} === null`),t.if((0,H2.not)(o),c)):(t.var(o,!1),c()),e.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new YCr.default(i.opts.uriResolver,"",n,`No definition ${n}`);hae(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=bKe.compileSchema.call(i.self,new bKe.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),h=(0,RKe.getValidate)(e,f),p=t.const("_errs",IKe.default.errors);(0,RKe.callRef)(e,h,f,f.$async),t.assign(o,(0,H2._)`${p} === ${IKe.default.errors}`)}function l(d){let f=t.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,H2.stringify)(d)}:{ref:d});e.subschema({schema:d,dataTypes:[],schemaPath:H2.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function hae(e){for(let t in e){let r;if(t==="ref"||typeof(r=e[t])=="object"&&hae(r))return!0}return!1}V2.hasRef=hae;V2.default=WCr});var mae=S(pae=>{"use strict";Object.defineProperty(pae,"__esModule",{value:!0});var XCr=/t|\s/i,JCr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,ZCr=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,exr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function xKe(e,t){let r=e.split(XCr);return r.length===2&&CKe(r[0])&&txr(r[1])||t&&r.length===1&&CKe(r[0])}pae.default=xKe;function CKe(e){let t=JCr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&(s<=exr[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function txr(e){let t=ZCr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3],i=+(t[4]||0),a=+(t[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}xKe.code='require("ajv/dist/runtime/timestamp").default'});var EI=S(gA=>{"use strict";Object.defineProperty(gA,"__esModule",{value:!0});gA.typeErrorParams=gA.typeErrorMessage=gA.typeError=void 0;var rxr=jt();function nxr(e){return{message:t=>wKe(t,e),params:t=>NKe(t,e)}}gA.typeError=nxr;function wKe({parentSchema:e},t){return e?.nullable?`must be ${t} or null`:`must be ${t}`}gA.typeErrorMessage=wKe;function NKe({parentSchema:e},t){return(0,rxr._)`{type: ${t}, nullable: ${!!e?.nullable}}`}gA.typeErrorParams=NKe});var gae=S(yI=>{"use strict";Object.defineProperty(yI,"__esModule",{value:!0});yI.intRange=void 0;var bl=jt(),sxr=mae(),ixr=Ar(),axr=pm(),OKe=EI();yI.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var oxr={message:e=>(0,OKe.typeErrorMessage)(e,e.schema),params:e=>(0,OKe.typeErrorParams)(e,e.schema)};function cxr(e){let{gen:t,data:r,it:n}=e,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,bl._)`${r} instanceof Date `;let a=(0,ixr.useFunc)(t,sxr.default),o=i?(0,bl._)`, true`:bl.nil,c=(0,bl._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,bl.or)((0,bl._)`${r} instanceof Date`,c)}var uxr={keyword:"type",schemaType:"string",error:oxr,code(e){(0,axr.checkMetadata)(e);let{data:t,schema:r,parentSchema:n,it:s}=e,i;switch(r){case"boolean":case"string":i=(0,bl._)`typeof ${t} == ${r}`;break;case"timestamp":{i=cxr(e);break}case"float32":case"float64":i=(0,bl._)`typeof ${t} == "number"`;break;default:{let a=r;if(i=(0,bl._)`typeof ${t} == "number" && isFinite(${t}) && !(${t} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,bl._)`${i} && ${t} >= 0`);else{let[o,c]=yI.intRange[a];i=(0,bl._)`${i} && ${t} >= ${o} && ${t} <= ${c}`}}}e.pass(n.nullable?(0,bl.or)((0,bl._)`${t} === null`,i):i)}};yI.default=uxr});var SI=S(vI=>{"use strict";Object.defineProperty(vI,"__esModule",{value:!0});vI.checkNullableObject=vI.checkNullable=void 0;var n8=jt();function DKe({gen:e,data:t,parentSchema:r},n=n8.nil){let s=e.name("valid");return r.nullable?(e.let(s,(0,n8._)`${t} === null`),n=(0,n8.not)(s)):e.let(s,!1),[s,n]}vI.checkNullable=DKe;function lxr(e,t){let[r,n]=DKe(e,t);return[r,(0,n8._)`${n} && typeof ${e.data} == "object" && !Array.isArray(${e.data})`]}vI.checkNullableObject=lxr});var PKe=S(_ae=>{"use strict";Object.defineProperty(_ae,"__esModule",{value:!0});var _A=jt(),dxr=pm(),fxr=SI(),hxr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,_A._)`{allowedValues: ${e}}`},pxr={keyword:"enum",schemaType:"array",error:hxr,code(e){(0,dxr.checkMetadata)(e);let{gen:t,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=e;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,c=(0,_A._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,fxr.checkNullable)(e,c),t.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,_A.and)(c,(0,_A.or)(...n.map(l=>(0,_A._)`${r} === ${l}`))),i.nullable&&(o=(0,_A.or)((0,_A._)`${r} === null`,o))}e.pass(o);function u(){t.forOf("v",s,l=>t.if((0,_A._)`${o} = ${r} === ${l}`,()=>t.break()))}}};_ae.default=pxr});var MKe=S(Aae=>{"use strict";Object.defineProperty(Aae,"__esModule",{value:!0});var mxr=Ar(),gxr=mo(),LKe=jt(),_xr=pm(),Axr=SI(),Exr=EI(),yxr={keyword:"elements",schemaType:"object",error:(0,Exr.typeError)("array"),code(e){(0,_xr.checkMetadata)(e);let{gen:t,data:r,schema:n,it:s}=e;if((0,mxr.alwaysValidSchema)(s,n))return;let[i]=(0,Axr.checkNullable)(e);t.if((0,LKe.not)(i),()=>t.if((0,LKe._)`Array.isArray(${r})`,()=>t.assign(i,(0,gxr.validateArray)(e)),()=>e.error())),e.ok(i)}};Aae.default=yxr});var yae=S(AA=>{"use strict";Object.defineProperty(AA,"__esModule",{value:!0});AA.validateProperties=AA.error=void 0;var Eae=mo(),kKe=Ar(),mm=jt(),vxr=pm(),Sxr=SI(),BKe=EI(),TI;(function(e){e.Additional="additional",e.Missing="missing"})(TI||(TI={}));AA.error={message:e=>{let{params:t}=e;return t.propError?t.propError===TI.Additional?"must NOT have additional properties":`must have property '${t.missingProperty}'`:(0,BKe.typeErrorMessage)(e,"object")},params:e=>{let{params:t}=e;return t.propError?t.propError===TI.Additional?(0,mm._)`{error: ${t.propError}, additionalProperty: ${t.additionalProperty}}`:(0,mm._)`{error: ${t.propError}, missingProperty: ${t.missingProperty}}`:(0,BKe.typeErrorParams)(e,"object")}};var Txr={keyword:"properties",schemaType:"object",error:AA.error,code:UKe};function UKe(e){(0,vxr.checkMetadata)(e);let{gen:t,data:r,parentSchema:n,it:s}=e,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(h())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=p("properties"),[u,l]=p("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,Sxr.checkNullableObject)(e,r):[t.let("valid",!1),!0];t.if(f,()=>t.assign(d,!0).block(()=>{m(c,"properties",!0),m(l,"optionalProperties"),i||_()})),e.pass(d);function h(){let A=n.properties,E=n.optionalProperties;if(!(A&&E))return!1;for(let v in A)if(Object.prototype.hasOwnProperty.call(E,v))return!0;return!1}function p(A){let E=n[A],v=E?(0,Eae.allSchemaProperties)(E):[];if(s.jtdDiscriminator&&v.some(I=>I===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${A}`);let b=v.filter(I=>!(0,kKe.alwaysValidSchema)(s,E[I]));return[v,b]}function m(A,E,v){let b=t.var("valid");for(let T of A)t.if((0,Eae.propertyInData)(t,r,T,s.opts.ownProperties),()=>g(T,E,b),()=>I(T)),e.ok(b);function I(T){v?(t.assign(b,!1),e.error(!1,{propError:TI.Missing,missingProperty:T},{schemaPath:T})):t.assign(b,!0)}}function g(A,E,v){e.subschema({keyword:E,schemaProp:A,dataProp:A},v)}function _(){t.forIn("key",r,A=>{let E=y(A,o,"properties",s.jtdDiscriminator),v=y(A,u,"optionalProperties"),b=E===!0?v:v===!0?E:(0,mm.and)(E,v);t.if(b,()=>{s.opts.removeAdditional?t.code((0,mm._)`delete ${r}[${A}]`):(e.error(!1,{propError:TI.Additional,additionalProperty:A},{instancePath:A,parentSchema:!0}),s.opts.allErrors||t.break())})})}function y(A,E,v,b){let I;if(E.length>8){let T=(0,kKe.schemaRefOrVal)(s,n[v],v);I=(0,mm.not)((0,Eae.isOwnProperty)(t,T,A)),b!==void 0&&(I=(0,mm.and)(I,(0,mm._)`${A} !== ${b}`))}else if(E.length||b!==void 0){let T=b===void 0?E:[b].concat(E);I=(0,mm.and)(...T.map(x=>(0,mm._)`${A} !== ${x}`))}else I=!0;return I}}AA.validateProperties=UKe;AA.default=Txr});var $Ke=S(vae=>{"use strict";Object.defineProperty(vae,"__esModule",{value:!0});var FKe=yae(),bxr={keyword:"optionalProperties",schemaType:"object",error:FKe.error,code(e){e.parentSchema.properties||(0,FKe.validateProperties)(e)}};vae.default=bxr});var HKe=S(Sae=>{"use strict";Object.defineProperty(Sae,"__esModule",{value:!0});var Mv=jt(),Ixr=pm(),Rxr=SI(),qKe=EI(),s8=uae(),Cxr={message:e=>{let{schema:t,params:r}=e;return r.discrError?r.discrError===s8.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in mapping`:(0,qKe.typeErrorMessage)(e,"object")},params:e=>{let{schema:t,params:r}=e;return r.discrError?(0,Mv._)`{error: ${r.discrError}, tag: ${t}, tagValue: ${r.tag}}`:(0,qKe.typeErrorParams)(e,"object")}},xxr={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:Cxr,code(e){(0,Ixr.checkMetadata)(e);let{gen:t,data:r,schema:n,parentSchema:s}=e,[i,a]=(0,Rxr.checkNullableObject)(e,r);t.if(a),o(),t.elseIf((0,Mv.not)(i)),e.error(),t.endIf(),e.ok(i);function o(){let l=t.const("tag",(0,Mv._)`${r}${(0,Mv.getProperty)(n)}`);t.if((0,Mv._)`${l} === undefined`),e.error(!1,{discrError:s8.DiscrError.Tag,tag:l}),t.elseIf((0,Mv._)`typeof ${l} == "string"`),c(l),t.else(),e.error(!1,{discrError:s8.DiscrError.Tag,tag:l},{instancePath:n}),t.endIf()}function c(l){t.if(!1);for(let d in s.mapping)t.elseIf((0,Mv._)`${l} === ${d}`),t.assign(i,u(d));t.else(),e.error(!1,{discrError:s8.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),t.endIf()}function u(l){let d=t.name("valid");return e.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};Sae.default=xxr});var jKe=S(Tae=>{"use strict";Object.defineProperty(Tae,"__esModule",{value:!0});var VKe=Ar(),i8=jt(),wxr=pm(),Nxr=SI(),Oxr=EI(),Dxr={keyword:"values",schemaType:"object",error:(0,Oxr.typeError)("object"),code(e){(0,wxr.checkMetadata)(e);let{gen:t,data:r,schema:n,it:s}=e,[i,a]=(0,Nxr.checkNullableObject)(e,r);(0,VKe.alwaysValidSchema)(s,n)?t.if((0,i8.not)((0,i8.or)(a,i)),()=>e.error()):(t.if(a),t.assign(i,o()),t.elseIf((0,i8.not)(i)),e.error(),t.endIf()),e.ok(i);function o(){let c=t.name("valid");if(s.allErrors){let l=t.let("valid",!0);return u(()=>t.assign(l,!1)),l}return t.var(c,!0),u(()=>t.break()),c;function u(l){t.forIn("key",r,d=>{e.subschema({keyword:"values",dataProp:d,dataPropType:VKe.Type.Str},c),t.if((0,i8.not)(c),l)})}}}};Tae.default=Dxr});var KKe=S(bae=>{"use strict";Object.defineProperty(bae,"__esModule",{value:!0});var Pxr=mo(),Lxr={keyword:"union",schemaType:"array",trackErrors:!0,code:Pxr.validateUnion,error:{message:"must match a schema in union"}};bae.default=Lxr});var GKe=S(Iae=>{"use strict";Object.defineProperty(Iae,"__esModule",{value:!0});var Mxr=r8(),kxr=gae(),Bxr=PKe(),Uxr=MKe(),Fxr=yae(),$xr=$Ke(),qxr=HKe(),Hxr=jKe(),Vxr=KKe(),jxr=pm(),Kxr=["definitions",Mxr.default,kxr.default,Bxr.default,Uxr.default,Fxr.default,$xr.default,qxr.default,Hxr.default,Vxr.default,jxr.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];Iae.default=Kxr});var WKe=S(Rae=>{"use strict";Object.defineProperty(Rae,"__esModule",{value:!0});var gm=e=>{let t={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return e&&(t.definitions={values:{ref:"schema"}}),t},Gxr=e=>({optionalProperties:gm(e)}),zxr=e=>({properties:{ref:{type:"string"}},optionalProperties:gm(e)}),Yxr=e=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:gm(e)}),Qxr=e=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:gm(e)}),Wxr=e=>({properties:{elements:{ref:"schema"}},optionalProperties:gm(e)}),YKe=e=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...gm(e)}}),QKe=e=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...gm(e)}}),Xxr=e=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[YKe(!1),QKe(!1)]}}}},optionalProperties:gm(e)}),Jxr=e=>({properties:{values:{ref:"schema"}},optionalProperties:gm(e)}),zKe=e=>({metadata:{union:[Gxr,zxr,Yxr,Qxr,Wxr,YKe,QKe,Xxr,Jxr].map(t=>t(e))}}),Zxr={definitions:{schema:zKe(!1)},...zKe(!0)};Rae.default=Zxr});var Cae=S(a8=>{"use strict";Object.defineProperty(a8,"__esModule",{value:!0});a8.jtdForms=void 0;a8.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var JKe=S(wae=>{"use strict";Object.defineProperty(wae,"__esModule",{value:!0});var xae=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,ewr={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function XKe(e){return xae.lastIndex=0,'"'+(xae.test(e)?e.replace(xae,t=>{let r=ewr[t];return typeof r=="string"?r:"\\u"+("0000"+t.charCodeAt(0).toString(16)).slice(-4)}):e)+'"'}wae.default=XKe;XKe.code='require("ajv/dist/runtime/quote").default'});var sGe=S(Oae=>{"use strict";Object.defineProperty(Oae,"__esModule",{value:!0});var twr=Cae(),eGe=Ov(),Lr=jt(),rwr=fm(),ls=yd(),nwr=mo(),swr=r8(),iwr=Ar(),awr=JKe(),owr={elements:uwr,values:lwr,discriminator:dwr,properties:ZKe,optionalProperties:ZKe,enum:j2,type:fwr,ref:pwr};function tGe(e,t){let r=eGe.getCompilingSchema.call(this,e);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Lr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:e.schema,schemaEnv:e,definitions:t,data:ls.default.data},u;try{this._compilations.add(e),e.serializeName=o,a.func(o,ls.default.data,!1,()=>{a.let(ls.default.json,(0,Lr.str)``),K2(c),a.return(ls.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(ls.default.scope)}return ${l}`;let f=new Function(`${ls.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),e.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete e.serialize,delete e.serializeName,l}finally{this._compilations.delete(e)}return e}Oae.default=tGe;function K2(e){let t;for(let r of twr.jtdForms)if(r in e.schema){t=r;break}cwr(e,t?owr[t]:gwr)}function cwr(e,t){let{gen:r,schema:n,data:s}=e;if(!n.nullable)return t(e);r.if((0,Lr._)`${s} === undefined || ${s} === null`,()=>r.add(ls.default.json,(0,Lr._)`"null"`),()=>t(e))}function uwr(e){let{gen:t,schema:r,data:n}=e;t.add(ls.default.json,(0,Lr.str)`[`);let s=t.let("first",!0);t.forOf("el",n,i=>{Nae(e,s),K2({...e,schema:r.elements,data:i})}),t.add(ls.default.json,(0,Lr.str)`]`)}function lwr(e){let{gen:t,schema:r,data:n}=e;t.add(ls.default.json,(0,Lr.str)`{`);let s=t.let("first",!0);t.forIn("key",n,i=>rGe(e,i,r.values,s)),t.add(ls.default.json,(0,Lr.str)`}`)}function rGe(e,t,r,n){let{gen:s,data:i}=e;Nae(e,n),j2({...e,data:t}),s.add(ls.default.json,(0,Lr.str)`:`);let a=s.const("value",(0,Lr._)`${i}${(0,Lr.getProperty)(t)}`);K2({...e,schema:r,data:a})}function dwr(e){let{gen:t,schema:r,data:n}=e,{discriminator:s}=r;t.add(ls.default.json,(0,Lr.str)`{${JSON.stringify(s)}:`);let i=t.const("tag",(0,Lr._)`${n}${(0,Lr.getProperty)(s)}`);j2({...e,data:i}),t.if(!1);for(let a in r.mapping){t.elseIf((0,Lr._)`${i} === ${a}`);let o=r.mapping[a];nGe({...e,schema:o},s)}t.endIf(),t.add(ls.default.json,(0,Lr.str)`}`)}function ZKe(e){let{gen:t}=e;t.add(ls.default.json,(0,Lr.str)`{`),nGe(e),t.add(ls.default.json,(0,Lr.str)`}`)}function nGe(e,t){let{gen:r,schema:n,data:s}=e,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=h(o.concat(c)),l=!t,d;for(let _ of o)l?l=!1:r.add(ls.default.json,(0,Lr.str)`,`),m(_,i[_],p(_));l&&(d=r.let("first",!0));for(let _ of c){let y=p(_);r.if((0,Lr.and)((0,Lr._)`${y} !== undefined`,(0,nwr.isOwnProperty)(r,s,_)),()=>{Nae(e,d),m(_,a[_],y)})}n.additionalProperties&&r.forIn("key",s,_=>r.if(g(_,u),()=>rGe(e,_,{},d)));function f(_){return _?Object.keys(_):[]}function h(_){if(t&&_.push(t),new Set(_).size!==_.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return _}function p(_){return r.const("value",(0,Lr._)`${s}${(0,Lr.getProperty)(_)}`)}function m(_,y,A){r.add(ls.default.json,(0,Lr.str)`${JSON.stringify(_)}:`),K2({...e,schema:y,data:A})}function g(_,y){return y.length?(0,Lr.and)(...y.map(A=>(0,Lr._)`${_} !== ${A}`)):!0}}function fwr(e){let{gen:t,schema:r,data:n}=e;switch(r.type){case"boolean":t.add(ls.default.json,(0,Lr._)`${n} ? "true" : "false"`);break;case"string":j2(e);break;case"timestamp":t.if((0,Lr._)`${n} instanceof Date`,()=>t.add(ls.default.json,(0,Lr._)`'"' + ${n}.toISOString() + '"'`),()=>j2(e));break;default:hwr(e)}}function j2({gen:e,data:t}){e.add(ls.default.json,(0,Lr._)`${(0,iwr.useFunc)(e,awr.default)}(${t})`)}function hwr({gen:e,data:t,self:r}){let n=(0,Lr._)`${t} === Infinity || ${t} === -Infinity || ${t} !== ${t}`;r.opts.specialNumbers===void 0||r.opts.specialNumbers==="fast"?e.add(ls.default.json,(0,Lr._)`"" + ${t}`):e.if(n,()=>e.add(ls.default.json,(0,Lr._)`null`),()=>e.add(ls.default.json,(0,Lr._)`"" + ${t}`))}function pwr(e){let{gen:t,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=e,{ref:o}=i,c=s[o];if(!c)throw new rwr.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,swr.hasRef)(c))return K2({...e,schema:c});let{root:u}=a,l=tGe.call(r,new eGe.SchemaEnv({schema:c,root:u}),s);t.add(ls.default.json,(0,Lr._)`${mwr(t,l)}(${n})`)}function mwr(e,t){return t.serialize?e.scopeValue("serialize",{ref:t.serialize}):(0,Lr._)`${e.scopeValue("wrapper",{ref:t})}.serialize`}function gwr({gen:e,data:t}){e.add(ls.default.json,(0,Lr._)`JSON.stringify(${t})`)}function Nae({gen:e},t){t?e.if(t,()=>e.assign(t,!1),()=>e.add(ls.default.json,(0,Lr.str)`,`)):e.add(ls.default.json,(0,Lr.str)`,`)}});var aGe=S(yA=>{"use strict";Object.defineProperty(yA,"__esModule",{value:!0});yA.parseJsonString=yA.parseJsonNumber=yA.parseJson=void 0;var _wr=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function _m(e,t){let r;_m.message=void 0;let n;t&&(e=e.slice(t));try{return _m.position=t+e.length,JSON.parse(e)}catch(s){if(n=_wr.exec(s.message),!n){_m.message="unexpected end";return}r=+n[1];let i=e[r];e=e.slice(0,r),_m.position=t+r;try{return JSON.parse(e)}catch{_m.message=`unexpected token ${i}`;return}}}yA.parseJson=_m;_m.message=void 0;_m.position=0;_m.code='require("ajv/dist/runtime/parseJson").parseJson';function Am(e,t,r){let n="",s;if(Am.message=void 0,e[t]==="-"&&(n+="-",t++),e[t]==="0")n+="0",t++;else if(!i(r)){a();return}if(r)return Am.position=t,+n;if(e[t]==="."&&(n+=".",t++,!i())){a();return}if(s=e[t],(s==="e"||s==="E")&&(n+="e",t++,s=e[t],(s==="+"||s==="-")&&(n+=s,t++),!i())){a();return}return Am.position=t,+n;function i(o){let c=!1;for(;s=e[t],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,t++;return c}function a(){Am.position=t,Am.message=t="a"&&n<="f")a+=n.charCodeAt(0)-Awr+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-Ewr;else{s(`unexpected token ${n}`);return}t++}r+=String.fromCharCode(a)}else{s(`unexpected token ${n}`);return}else if(n===void 0){s("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{s(`unexpected token ${n}`);return}return EA.position=t,r;function s(i){EA.position=t,EA.message=i}}yA.parseJsonString=EA;EA.message=void 0;EA.position=0;EA.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var _Ge=S(Fae=>{"use strict";Object.defineProperty(Fae,"__esModule",{value:!0});var ywr=Cae(),lGe=Ov(),Ot=jt(),vwr=fm(),Gr=yd(),Swr=mo(),Twr=r8(),bwr=gae(),Lae=aGe(),dGe=Ar(),Iwr=mae(),Rwr={elements:Nwr,values:Owr,discriminator:Pwr,properties:oGe,optionalProperties:oGe,enum:Mwr,type:Lwr,ref:kwr};function fGe(e,t){let r=lGe.getCompilingSchema.call(this,e);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Ot.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:e.schema,schemaEnv:e,definitions:t,data:Gr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(e),e.parseName=o,Cwr(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(Gr.default.scope)}return ${l}`;let f=new Function(`${Gr.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),e.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete e.parse,delete e.parseName,l}finally{this._compilations.delete(e)}return e}Fae.default=fGe;var Pae=(0,Ot._)`undefined`;function Cwr(e){let{gen:t,parseName:r,char:n}=e;t.func(r,(0,Ot._)`${Gr.default.json}, ${Gr.default.jsonPos}, ${Gr.default.jsonPart}`,!1,()=>{t.let(Gr.default.data),t.let(n),t.assign((0,Ot._)`${r}.message`,Pae),t.assign((0,Ot._)`${r}.position`,Pae),t.assign(Gr.default.jsonPos,(0,Ot._)`${Gr.default.jsonPos} || 0`),t.const(Gr.default.jsonLen,(0,Ot._)`${Gr.default.json}.length`),o8(e),Uae(e),t.if(Gr.default.jsonPart,()=>{t.assign((0,Ot._)`${r}.position`,Gr.default.jsonPos),t.return(Gr.default.data)}),t.if((0,Ot._)`${Gr.default.jsonPos} === ${Gr.default.jsonLen}`,()=>t.return(Gr.default.data)),bI(e)})}function o8(e){let t;for(let r of ywr.jtdForms)if(r in e.schema){t=r;break}t?wwr(e,Rwr[t]):kae(e)}var xwr=uGe(!0,uGe(!1,bI));function wwr(e,t){let{gen:r,schema:n,data:s}=e;if(!n.nullable)return t(e);G2(e,"null",t,()=>r.assign(s,null))}function Nwr(e){let{gen:t,schema:r,data:n}=e;gh(e,"[");let s=t.let("i",0);t.assign(n,(0,Ot._)`[]`),Mae(e,"]",()=>{let i=t.let("el");o8({...e,schema:r.elements,data:i}),t.assign((0,Ot._)`${n}[${s}++]`,i)})}function Owr(e){let{gen:t,schema:r,data:n}=e;gh(e,"{"),t.assign(n,(0,Ot._)`{}`),Mae(e,"}",()=>Dwr(e,r.values))}function Mae(e,t,r){hGe(e,t,r),gh(e,t)}function hGe(e,t,r){let{gen:n}=e;n.for((0,Ot._)`;${Gr.default.jsonPos}<${Gr.default.jsonLen} && ${c8(1)}!==${t};`,()=>{r(),G2(e,",",()=>n.break(),s)});function s(){G2(e,t,()=>{},bI)}}function Dwr(e,t){let{gen:r}=e,n=r.let("key");kv({...e,data:n}),gh(e,":"),mGe(e,n,t)}function Pwr(e){let{gen:t,data:r,schema:n}=e,{discriminator:s,mapping:i}=n;gh(e,"{"),t.assign(r,(0,Ot._)`{}`);let a=t.const("pos",Gr.default.jsonPos),o=t.let("value"),c=t.let("tag");hGe(e,"}",()=>{let u=t.let("key");kv({...e,data:u}),gh(e,":"),t.if((0,Ot._)`${u} === ${s}`,()=>{kv({...e,data:c}),t.assign((0,Ot._)`${r}[${u}]`,c),t.break()},()=>kae({...e,data:o}))}),t.assign(Gr.default.jsonPos,a),t.if((0,Ot._)`${c} === undefined`),Em(e,(0,Ot.str)`discriminator tag not found`);for(let u in i)t.elseIf((0,Ot._)`${c} === ${u}`),pGe({...e,schema:i[u]},s);t.else(),Em(e,(0,Ot.str)`discriminator value not in schema`),t.endIf()}function oGe(e){let{gen:t,data:r}=e;gh(e,"{"),t.assign(r,(0,Ot._)`{}`),pGe(e)}function pGe(e,t){let{gen:r,schema:n,data:s}=e,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(Mae(e,"}",()=>{let c=r.let("key");if(kv({...e,data:c}),gh(e,":"),r.if(!1),cGe(e,c,i),cGe(e,c,a),t){r.elseIf((0,Ot._)`${c} === ${t}`);let u=r.let("tag");kv({...e,data:u})}r.else(),o?kae({...e,data:(0,Ot._)`${s}[${c}]`}):Em(e,(0,Ot.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,Swr.hasPropFunc)(r),u=(0,Ot.and)(...Object.keys(i).map(l=>(0,Ot._)`${c}.call(${s}, ${l})`));r.if((0,Ot.not)(u),()=>Em(e,(0,Ot.str)`missing required properties`))}}function cGe(e,t,r={}){let{gen:n}=e;for(let s in r)n.elseIf((0,Ot._)`${t} === ${s}`),mGe(e,t,r[s])}function mGe(e,t,r){o8({...e,schema:r,data:(0,Ot._)`${e.data}[${t}]`})}function Lwr(e){let{gen:t,schema:r,data:n,self:s}=e;switch(r.type){case"boolean":xwr(e);break;case"string":kv(e);break;case"timestamp":{kv(e);let i=(0,dGe.useFunc)(t,Iwr.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,Ot._)`!${i}(${n}, true)`:(0,Ot._)`!${i}(${n})`,u=o?(0,Ot.or)(c,(0,Ot._)`(${n} = new Date(${n}), false)`,(0,Ot._)`isNaN(${n}.valueOf())`):c;t.if(u,()=>Em(e,(0,Ot.str)`invalid timestamp`));break}case"float32":case"float64":Dae(e);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))Dae(e,16),i==="uint32"&&t.if((0,Ot._)`${n} < 0`,()=>Em(e,(0,Ot.str)`integer out of range`));else{let[a,o,c]=bwr.intRange[i];Dae(e,c),t.if((0,Ot._)`${n} < ${a} || ${n} > ${o}`,()=>Em(e,(0,Ot.str)`integer out of range`))}}}}function kv(e){gh(e,'"'),Bae(e,Lae.parseJsonString)}function Mwr(e){let{gen:t,data:r,schema:n}=e,s=n.enum;gh(e,'"'),t.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);t.elseIf((0,Ot._)`${c8(a.length)} === ${a}`),t.assign(r,(0,Ot.str)`${i}`),t.add(Gr.default.jsonPos,a.length)}t.else(),bI(e),t.endIf()}function Dae(e,t){let{gen:r}=e;Uae(e),r.if((0,Ot._)`"-0123456789".indexOf(${c8(1)}) < 0`,()=>bI(e),()=>Bae(e,Lae.parseJsonNumber,t))}function uGe(e,t){return r=>{let{gen:n,data:s}=r;G2(r,`${e}`,()=>t(r),()=>n.assign(s,e))}}function kwr(e){let{gen:t,self:r,definitions:n,schema:s,schemaEnv:i}=e,{ref:a}=s,o=n[a];if(!o)throw new vwr.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,Twr.hasRef)(o))return o8({...e,schema:o});let{root:c}=i,u=fGe.call(r,new lGe.SchemaEnv({schema:o,root:c}),n);gGe(e,Bwr(t,u),!0)}function Bwr(e,t){return t.parse?e.scopeValue("parse",{ref:t.parse}):(0,Ot._)`${e.scopeValue("wrapper",{ref:t})}.parse`}function kae(e){Bae(e,Lae.parseJson)}function Bae(e,t,r){gGe(e,(0,dGe.useFunc)(e.gen,t),r)}function gGe(e,t,r){let{gen:n,data:s}=e;n.assign(s,(0,Ot._)`${t}(${Gr.default.json}, ${Gr.default.jsonPos}${r?(0,Ot._)`, ${r}`:Ot.nil})`),n.assign(Gr.default.jsonPos,(0,Ot._)`${t}.position`),n.if((0,Ot._)`${s} === undefined`,()=>Em(e,(0,Ot._)`${t}.message`))}function gh(e,t){G2(e,t,bI)}function G2(e,t,r,n){let{gen:s}=e,i=t.length;Uae(e),s.if((0,Ot._)`${c8(i)} === ${t}`,()=>{s.add(Gr.default.jsonPos,i),n?.(e)},()=>r(e))}function Uae({gen:e,char:t}){e.code((0,Ot._)`while((${t}=${Gr.default.json}[${Gr.default.jsonPos}],${t}===" "||${t}==="\\n"||${t}==="\\r"||${t}==="\\t"))${Gr.default.jsonPos}++;`)}function c8(e){return e===1?(0,Ot._)`${Gr.default.json}[${Gr.default.jsonPos}]`:(0,Ot._)`${Gr.default.json}.slice(${Gr.default.jsonPos}, ${Gr.default.jsonPos}+${e})`}function bI(e){Em(e,(0,Ot._)`"unexpected token " + ${Gr.default.json}[${Gr.default.jsonPos}]`)}function Em({gen:e,parseName:t},r){e.assign((0,Ot._)`${t}.message`,r),e.assign((0,Ot._)`${t}.position`,Gr.default.jsonPos),e.return(Pae)}});var Hae=S((Qs,qae)=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.MissingRefError=Qs.ValidationError=Qs.CodeGen=Qs.Name=Qs.nil=Qs.stringify=Qs.str=Qs._=Qs.KeywordCxt=Qs.Ajv=void 0;var Uwr=vie(),Fwr=GKe(),$wr=WKe(),qwr=sGe(),Hwr=_Ge(),$ae="JTD-meta-schema",II=class extends Uwr.default{constructor(t={}){super({...t,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(Fwr.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema($wr.default,$ae,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema($ae)?$ae:void 0)}compileSerializer(t){let r=this._addSchema(t);return r.serialize||this._compileSerializer(r)}compileParser(t){let r=this._addSchema(t);return r.parse||this._compileParser(r)}_compileSerializer(t){if(qwr.default.call(this,t,t.schema.definitions||{}),!t.serialize)throw new Error("ajv implementation error");return t.serialize}_compileParser(t){if(Hwr.default.call(this,t,t.schema.definitions||{}),!t.parse)throw new Error("ajv implementation error");return t.parse}};Qs.Ajv=II;qae.exports=Qs=II;qae.exports.Ajv=II;Object.defineProperty(Qs,"__esModule",{value:!0});Qs.default=II;var Vwr=lI();Object.defineProperty(Qs,"KeywordCxt",{enumerable:!0,get:function(){return Vwr.KeywordCxt}});var RI=jt();Object.defineProperty(Qs,"_",{enumerable:!0,get:function(){return RI._}});Object.defineProperty(Qs,"str",{enumerable:!0,get:function(){return RI.str}});Object.defineProperty(Qs,"stringify",{enumerable:!0,get:function(){return RI.stringify}});Object.defineProperty(Qs,"nil",{enumerable:!0,get:function(){return RI.nil}});Object.defineProperty(Qs,"Name",{enumerable:!0,get:function(){return RI.Name}});Object.defineProperty(Qs,"CodeGen",{enumerable:!0,get:function(){return RI.CodeGen}});var jwr=C2();Object.defineProperty(Qs,"ValidationError",{enumerable:!0,get:function(){return jwr.default}});var Kwr=fm();Object.defineProperty(Qs,"MissingRefError",{enumerable:!0,get:function(){return Kwr.default}})});var Vae=S((FKn,AGe)=>{"use strict";var Gwr=one();AGe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:Gwr,addUsedSchema:!1,allErrors:!1})});var bGe=S(_h=>{"use strict";Object.defineProperty(_h,"__esModule",{value:!0});_h.formatNames=_h.fastFormats=_h.fullFormats=void 0;function CI(e,t){return{validate:e,compare:t}}_h.fullFormats={date:CI(vGe,Gae),time:CI(SGe,zae),"date-time":CI(Wwr,TGe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Zwr,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:aNr,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:eNr,int32:{type:"number",validate:nNr},int64:{type:"number",validate:sNr},float:{type:"number",validate:yGe},double:{type:"number",validate:yGe},password:!0,binary:!0};_h.fastFormats={..._h.fullFormats,date:CI(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Gae),time:CI(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,zae),"date-time":CI(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,TGe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};_h.formatNames=Object.keys(_h.fullFormats);function zwr(e){return e%4===0&&(e%100!==0||e%400===0)}var Ywr=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Qwr=[0,31,28,31,30,31,30,31,31,30,31,30,31];function vGe(e){let t=Ywr.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&zwr(r)?29:Qwr[n])}function Gae(e,t){if(e&&t)return e>t?1:et?1:e=tNr}function sNr(e){return Number.isInteger(e)}function yGe(){return!0}var iNr=/[^\\]\\Z/;function aNr(e){if(iNr.test(e))return!1;try{return new RegExp(e),!0}catch{return!1}}});var Q2=S(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.regexpCode=Nn.getEsmExportName=Nn.getProperty=Nn.safeStringify=Nn.stringify=Nn.strConcat=Nn.addCodeArg=Nn.str=Nn._=Nn.nil=Nn._Code=Nn.Name=Nn.IDENTIFIER=Nn._CodeOrName=void 0;var z2=class{};Nn._CodeOrName=z2;Nn.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Bv=class extends z2{constructor(t){if(super(),!Nn.IDENTIFIER.test(t))throw new Error("CodeGen: name must be a valid identifier");this.str=t}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Nn.Name=Bv;var Td=class extends z2{constructor(t){super(),this._items=typeof t=="string"?[t]:t}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let t=this._items[0];return t===""||t==='""'}get str(){var t;return(t=this._str)!==null&&t!==void 0?t:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var t;return(t=this._names)!==null&&t!==void 0?t:this._names=this._items.reduce((r,n)=>(n instanceof Bv&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Nn._Code=Td;Nn.nil=new Td("");function IGe(e,...t){let r=[e[0]],n=0;for(;n{"use strict";Object.defineProperty(Nu,"__esModule",{value:!0});Nu.ValueScope=Nu.ValueScopeName=Nu.Scope=Nu.varKinds=Nu.UsedValueState=void 0;var wu=Q2(),Wae=class extends Error{constructor(t){super(`CodeGen: "code" for ${t} not defined`),this.value=t.value}},u8;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(u8||(Nu.UsedValueState=u8={}));Nu.varKinds={const:new wu.Name("const"),let:new wu.Name("let"),var:new wu.Name("var")};var l8=class{constructor({prefixes:t,parent:r}={}){this._names={},this._prefixes=t,this._parent=r}toName(t){return t instanceof wu.Name?t:this.name(t)}name(t){return new wu.Name(this._newName(t))}_newName(t){let r=this._names[t]||this._nameGroup(t);return`${t}${r.index++}`}_nameGroup(t){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(t)||this._prefixes&&!this._prefixes.has(t))throw new Error(`CodeGen: prefix "${t}" is not allowed in this scope`);return this._names[t]={prefix:t,index:0}}};Nu.Scope=l8;var d8=class extends wu.Name{constructor(t,r){super(r),this.prefix=t}setValue(t,{property:r,itemIndex:n}){this.value=t,this.scopePath=(0,wu._)`.${new wu.Name(r)}[${n}]`}};Nu.ValueScopeName=d8;var mNr=(0,wu._)`\n`,Xae=class extends l8{constructor(t){super(t),this._values={},this._scope=t.scope,this.opts={...t,_n:t.lines?mNr:wu.nil}}get(){return this._scope}name(t){return new d8(t,this._newName(t))}value(t,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(t),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(t,r){let n=this._values[t];if(n)return n.get(r)}scopeRefs(t,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,wu._)`${t}${n.scopePath}`})}scopeCode(t=this._values,r,n){return this._reduceValues(t,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(t,r,n={},s){let i=wu.nil;for(let a in t){let o=t[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,u8.Started);let l=r(u);if(l){let d=this.opts.es5?Nu.varKinds.var:Nu.varKinds.const;i=(0,wu._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,wu._)`${i}${l}${this.opts._n}`;else throw new Wae(u);c.set(u,u8.Completed)})}return i}};Nu.ValueScope=Xae});var Rr=S(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.or=Mr.and=Mr.not=Mr.CodeGen=Mr.operators=Mr.varKinds=Mr.ValueScopeName=Mr.ValueScope=Mr.Scope=Mr.Name=Mr.regexpCode=Mr.stringify=Mr.getProperty=Mr.nil=Mr.strConcat=Mr.str=Mr._=void 0;var un=Q2(),Ff=Jae(),vA=Q2();Object.defineProperty(Mr,"_",{enumerable:!0,get:function(){return vA._}});Object.defineProperty(Mr,"str",{enumerable:!0,get:function(){return vA.str}});Object.defineProperty(Mr,"strConcat",{enumerable:!0,get:function(){return vA.strConcat}});Object.defineProperty(Mr,"nil",{enumerable:!0,get:function(){return vA.nil}});Object.defineProperty(Mr,"getProperty",{enumerable:!0,get:function(){return vA.getProperty}});Object.defineProperty(Mr,"stringify",{enumerable:!0,get:function(){return vA.stringify}});Object.defineProperty(Mr,"regexpCode",{enumerable:!0,get:function(){return vA.regexpCode}});Object.defineProperty(Mr,"Name",{enumerable:!0,get:function(){return vA.Name}});var m8=Jae();Object.defineProperty(Mr,"Scope",{enumerable:!0,get:function(){return m8.Scope}});Object.defineProperty(Mr,"ValueScope",{enumerable:!0,get:function(){return m8.ValueScope}});Object.defineProperty(Mr,"ValueScopeName",{enumerable:!0,get:function(){return m8.ValueScopeName}});Object.defineProperty(Mr,"varKinds",{enumerable:!0,get:function(){return m8.varKinds}});Mr.operators={GT:new un._Code(">"),GTE:new un._Code(">="),LT:new un._Code("<"),LTE:new un._Code("<="),EQ:new un._Code("==="),NEQ:new un._Code("!=="),NOT:new un._Code("!"),OR:new un._Code("||"),AND:new un._Code("&&"),ADD:new un._Code("+")};var ym=class{optimizeNodes(){return this}optimizeNames(t,r){return this}},Zae=class extends ym{constructor(t,r,n){super(),this.varKind=t,this.name=r,this.rhs=n}render({es5:t,_n:r}){let n=t?Ff.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(t,r){if(t[this.name.str])return this.rhs&&(this.rhs=wI(this.rhs,t,r)),this}get names(){return this.rhs instanceof un._CodeOrName?this.rhs.names:{}}},f8=class extends ym{constructor(t,r,n){super(),this.lhs=t,this.rhs=r,this.sideEffects=n}render({_n:t}){return`${this.lhs} = ${this.rhs};`+t}optimizeNames(t,r){if(!(this.lhs instanceof un.Name&&!t[this.lhs.str]&&!this.sideEffects))return this.rhs=wI(this.rhs,t,r),this}get names(){let t=this.lhs instanceof un.Name?{}:{...this.lhs.names};return p8(t,this.rhs)}},eoe=class extends f8{constructor(t,r,n,s){super(t,n,s),this.op=r}render({_n:t}){return`${this.lhs} ${this.op}= ${this.rhs};`+t}},toe=class extends ym{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`${this.label}:`+t}},roe=class extends ym{constructor(t){super(),this.label=t,this.names={}}render({_n:t}){return`break${this.label?` ${this.label}`:""};`+t}},noe=class extends ym{constructor(t){super(),this.error=t}render({_n:t}){return`throw ${this.error};`+t}get names(){return this.error.names}},soe=class extends ym{constructor(t){super(),this.code=t}render({_n:t}){return`${this.code};`+t}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(t,r){return this.code=wI(this.code,t,r),this}get names(){return this.code instanceof un._CodeOrName?this.code.names:{}}},W2=class extends ym{constructor(t=[]){super(),this.nodes=t}render(t){return this.nodes.reduce((r,n)=>r+n.render(t),"")}optimizeNodes(){let{nodes:t}=this,r=t.length;for(;r--;){let n=t[r].optimizeNodes();Array.isArray(n)?t.splice(r,1,...n):n?t[r]=n:t.splice(r,1)}return t.length>0?this:void 0}optimizeNames(t,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(t,r)||(gNr(t,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((t,r)=>$v(t,r.names),{})}},vm=class extends W2{render(t){return"{"+t._n+super.render(t)+"}"+t._n}},ioe=class extends W2{},xI=class extends vm{};xI.kind="else";var Uv=class e extends vm{constructor(t,r){super(r),this.condition=t}render(t){let r=`if(${this.condition})`+super.render(t);return this.else&&(r+="else "+this.else.render(t)),r}optimizeNodes(){super.optimizeNodes();let t=this.condition;if(t===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new xI(n):n}if(r)return t===!1?r instanceof e?r:r.nodes:this.nodes.length?this:new e(CGe(t),r instanceof e?[r]:r.nodes);if(!(t===!1||!this.nodes.length))return this}optimizeNames(t,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(t,r),!!(super.optimizeNames(t,r)||this.else))return this.condition=wI(this.condition,t,r),this}get names(){let t=super.names;return p8(t,this.condition),this.else&&$v(t,this.else.names),t}};Uv.kind="if";var Fv=class extends vm{};Fv.kind="for";var aoe=class extends Fv{constructor(t){super(),this.iteration=t}render(t){return`for(${this.iteration})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iteration=wI(this.iteration,t,r),this}get names(){return $v(super.names,this.iteration.names)}},ooe=class extends Fv{constructor(t,r,n,s){super(),this.varKind=t,this.name=r,this.from=n,this.to=s}render(t){let r=t.es5?Ff.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(t)}get names(){let t=p8(super.names,this.from);return p8(t,this.to)}},h8=class extends Fv{constructor(t,r,n,s){super(),this.loop=t,this.varKind=r,this.name=n,this.iterable=s}render(t){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(t)}optimizeNames(t,r){if(super.optimizeNames(t,r))return this.iterable=wI(this.iterable,t,r),this}get names(){return $v(super.names,this.iterable.names)}},X2=class extends vm{constructor(t,r,n){super(),this.name=t,this.args=r,this.async=n}render(t){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(t)}};X2.kind="func";var J2=class extends W2{render(t){return"return "+super.render(t)}};J2.kind="return";var coe=class extends vm{render(t){let r="try"+super.render(t);return this.catch&&(r+=this.catch.render(t)),this.finally&&(r+=this.finally.render(t)),r}optimizeNodes(){var t,r;return super.optimizeNodes(),(t=this.catch)===null||t===void 0||t.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(t,r){var n,s;return super.optimizeNames(t,r),(n=this.catch)===null||n===void 0||n.optimizeNames(t,r),(s=this.finally)===null||s===void 0||s.optimizeNames(t,r),this}get names(){let t=super.names;return this.catch&&$v(t,this.catch.names),this.finally&&$v(t,this.finally.names),t}},Z2=class extends vm{constructor(t){super(),this.error=t}render(t){return`catch(${this.error})`+super.render(t)}};Z2.kind="catch";var eD=class extends vm{render(t){return"finally"+super.render(t)}};eD.kind="finally";var uoe=class{constructor(t,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=t,this._scope=new Ff.Scope({parent:t}),this._nodes=[new ioe]}toString(){return this._root.render(this.opts)}name(t){return this._scope.name(t)}scopeName(t){return this._extScope.name(t)}scopeValue(t,r){let n=this._extScope.value(t,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(t,r){return this._extScope.getValue(t,r)}scopeRefs(t){return this._extScope.scopeRefs(t,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(t,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new Zae(t,i,n)),i}const(t,r,n){return this._def(Ff.varKinds.const,t,r,n)}let(t,r,n){return this._def(Ff.varKinds.let,t,r,n)}var(t,r,n){return this._def(Ff.varKinds.var,t,r,n)}assign(t,r,n){return this._leafNode(new f8(t,r,n))}add(t,r){return this._leafNode(new eoe(t,Mr.operators.ADD,r))}code(t){return typeof t=="function"?t():t!==un.nil&&this._leafNode(new soe(t)),this}object(...t){let r=["{"];for(let[n,s]of t)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,un.addCodeArg)(r,s));return r.push("}"),new un._Code(r)}if(t,r,n){if(this._blockNode(new Uv(t)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(t){return this._elseNode(new Uv(t))}else(){return this._elseNode(new xI)}endIf(){return this._endBlockNode(Uv,xI)}_for(t,r){return this._blockNode(t),r&&this.code(r).endFor(),this}for(t,r){return this._for(new aoe(t),r)}forRange(t,r,n,s,i=this.opts.es5?Ff.varKinds.var:Ff.varKinds.let){let a=this._scope.toName(t);return this._for(new ooe(i,a,r,n),()=>s(a))}forOf(t,r,n,s=Ff.varKinds.const){let i=this._scope.toName(t);if(this.opts.es5){let a=r instanceof un.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,un._)`${a}.length`,o=>{this.var(i,(0,un._)`${a}[${o}]`),n(i)})}return this._for(new h8("of",s,i,r),()=>n(i))}forIn(t,r,n,s=this.opts.es5?Ff.varKinds.var:Ff.varKinds.const){if(this.opts.ownProperties)return this.forOf(t,(0,un._)`Object.keys(${r})`,n);let i=this._scope.toName(t);return this._for(new h8("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Fv)}label(t){return this._leafNode(new toe(t))}break(t){return this._leafNode(new roe(t))}return(t){let r=new J2;if(this._blockNode(r),this.code(t),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(J2)}try(t,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new coe;if(this._blockNode(s),this.code(t),r){let i=this.name("e");this._currNode=s.catch=new Z2(i),r(i)}return n&&(this._currNode=s.finally=new eD,this.code(n)),this._endBlockNode(Z2,eD)}throw(t){return this._leafNode(new noe(t))}block(t,r){return this._blockStarts.push(this._nodes.length),t&&this.code(t).endBlock(r),this}endBlock(t){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||t!==void 0&&n!==t)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${t} expected`);return this._nodes.length=r,this}func(t,r=un.nil,n,s){return this._blockNode(new X2(t,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(X2)}optimize(t=1){for(;t-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(t){return this._currNode.nodes.push(t),this}_blockNode(t){this._currNode.nodes.push(t),this._nodes.push(t)}_endBlockNode(t,r){let n=this._currNode;if(n instanceof t||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${t.kind}/${r.kind}`:t.kind}"`)}_elseNode(t){let r=this._currNode;if(!(r instanceof Uv))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=t,this}get _root(){return this._nodes[0]}get _currNode(){let t=this._nodes;return t[t.length-1]}set _currNode(t){let r=this._nodes;r[r.length-1]=t}};Mr.CodeGen=uoe;function $v(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function p8(e,t){return t instanceof un._CodeOrName?$v(e,t.names):e}function wI(e,t,r){if(e instanceof un.Name)return n(e);if(!s(e))return e;return new un._Code(e._items.reduce((i,a)=>(a instanceof un.Name&&(a=n(a)),a instanceof un._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||t[i.str]!==1?i:(delete t[i.str],a)}function s(i){return i instanceof un._Code&&i._items.some(a=>a instanceof un.Name&&t[a.str]===1&&r[a.str]!==void 0)}}function gNr(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function CGe(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:(0,un._)`!${loe(e)}`}Mr.not=CGe;var _Nr=xGe(Mr.operators.AND);function ANr(...e){return e.reduce(_Nr)}Mr.and=ANr;var ENr=xGe(Mr.operators.OR);function yNr(...e){return e.reduce(ENr)}Mr.or=yNr;function xGe(e){return(t,r)=>t===un.nil?r:r===un.nil?t:(0,un._)`${loe(t)} ${e} ${loe(r)}`}function loe(e){return e instanceof un.Name?e:(0,un._)`(${e})`}});var vn=S(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.checkStrictMode=qr.getErrorPath=qr.Type=qr.useFunc=qr.setEvaluated=qr.evaluatedPropsToName=qr.mergeEvaluated=qr.eachItem=qr.unescapeJsonPointer=qr.escapeJsonPointer=qr.escapeFragment=qr.unescapeFragment=qr.schemaRefOrVal=qr.schemaHasRulesButRef=qr.schemaHasRules=qr.checkUnknownRules=qr.alwaysValidSchema=qr.toHash=void 0;var ws=Rr(),vNr=Q2();function SNr(e){let t={};for(let r of e)t[r]=!0;return t}qr.toHash=SNr;function TNr(e,t){return typeof t=="boolean"?t:Object.keys(t).length===0?!0:(OGe(e,t),!DGe(t,e.self.RULES.all))}qr.alwaysValidSchema=TNr;function OGe(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema||typeof t=="boolean")return;let s=n.RULES.keywords;for(let i in t)s[i]||MGe(e,`unknown keyword: "${i}"`)}qr.checkUnknownRules=OGe;function DGe(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}qr.schemaHasRules=DGe;function bNr(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}qr.schemaHasRulesButRef=bNr;function INr({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ws._)`${r}`}return(0,ws._)`${e}${t}${(0,ws.getProperty)(n)}`}qr.schemaRefOrVal=INr;function RNr(e){return PGe(decodeURIComponent(e))}qr.unescapeFragment=RNr;function CNr(e){return encodeURIComponent(foe(e))}qr.escapeFragment=CNr;function foe(e){return typeof e=="number"?`${e}`:e.replace(/~/g,"~0").replace(/\//g,"~1")}qr.escapeJsonPointer=foe;function PGe(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}qr.unescapeJsonPointer=PGe;function xNr(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}qr.eachItem=xNr;function wGe({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof ws.Name?(i instanceof ws.Name?e(s,i,a):t(s,i,a),a):i instanceof ws.Name?(t(s,a,i),i):r(i,a);return o===ws.Name&&!(c instanceof ws.Name)?n(s,c):c}}qr.mergeEvaluated={props:wGe({mergeNames:(e,t,r)=>e.if((0,ws._)`${r} !== true && ${t} !== undefined`,()=>{e.if((0,ws._)`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,(0,ws._)`${r} || {}`).code((0,ws._)`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if((0,ws._)`${r} !== true`,()=>{t===!0?e.assign(r,!0):(e.assign(r,(0,ws._)`${r} || {}`),hoe(e,r,t))}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:LGe}),items:wGe({mergeNames:(e,t,r)=>e.if((0,ws._)`${r} !== true && ${t} !== undefined`,()=>e.assign(r,(0,ws._)`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if((0,ws._)`${r} !== true`,()=>e.assign(r,t===!0?!0:(0,ws._)`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function LGe(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",(0,ws._)`{}`);return t!==void 0&&hoe(e,r,t),r}qr.evaluatedPropsToName=LGe;function hoe(e,t,r){Object.keys(r).forEach(n=>e.assign((0,ws._)`${t}${(0,ws.getProperty)(n)}`,!0))}qr.setEvaluated=hoe;var NGe={};function wNr(e,t){return e.scopeValue("func",{ref:t,code:NGe[t.code]||(NGe[t.code]=new vNr._Code(t.code))})}qr.useFunc=wNr;var doe;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(doe||(qr.Type=doe={}));function NNr(e,t,r){if(e instanceof ws.Name){let n=t===doe.Num;return r?n?(0,ws._)`"[" + ${e} + "]"`:(0,ws._)`"['" + ${e} + "']"`:n?(0,ws._)`"/" + ${e}`:(0,ws._)`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ws.getProperty)(e).toString():"/"+foe(e)}qr.getErrorPath=NNr;function MGe(e,t,r=e.opts.strictSchema){if(r){if(t=`strict mode: ${t}`,r===!0)throw new Error(t);e.self.logger.warn(t)}}qr.checkStrictMode=MGe});var Sm=S(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});var zo=Rr(),ONr={data:new zo.Name("data"),valCxt:new zo.Name("valCxt"),instancePath:new zo.Name("instancePath"),parentData:new zo.Name("parentData"),parentDataProperty:new zo.Name("parentDataProperty"),rootData:new zo.Name("rootData"),dynamicAnchors:new zo.Name("dynamicAnchors"),vErrors:new zo.Name("vErrors"),errors:new zo.Name("errors"),this:new zo.Name("this"),self:new zo.Name("self"),scope:new zo.Name("scope"),json:new zo.Name("json"),jsonPos:new zo.Name("jsonPos"),jsonLen:new zo.Name("jsonLen"),jsonPart:new zo.Name("jsonPart")};poe.default=ONr});var tD=S(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.extendErrors=Yo.resetErrorsCount=Yo.reportExtraError=Yo.reportError=Yo.keyword$DataError=Yo.keywordError=void 0;var Sn=Rr(),g8=vn(),qc=Sm();Yo.keywordError={message:({keyword:e})=>(0,Sn.str)`must pass "${e}" keyword validation`};Yo.keyword$DataError={message:({keyword:e,schemaType:t})=>t?(0,Sn.str)`"${e}" keyword must be ${t} ($data)`:(0,Sn.str)`"${e}" keyword is invalid ($data)`};function DNr(e,t=Yo.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:a,allErrors:o}=s,c=UGe(e,t,r);n??(a||o)?kGe(i,c):BGe(s,(0,Sn._)`[${c}]`)}Yo.reportError=DNr;function PNr(e,t=Yo.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:a}=n,o=UGe(e,t,r);kGe(s,o),i||a||BGe(n,qc.default.vErrors)}Yo.reportExtraError=PNr;function LNr(e,t){e.assign(qc.default.errors,t),e.if((0,Sn._)`${qc.default.vErrors} !== null`,()=>e.if(t,()=>e.assign((0,Sn._)`${qc.default.vErrors}.length`,t),()=>e.assign(qc.default.vErrors,null)))}Yo.resetErrorsCount=LNr;function MNr({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=e.name("err");e.forRange("i",s,qc.default.errors,o=>{e.const(a,(0,Sn._)`${qc.default.vErrors}[${o}]`),e.if((0,Sn._)`${a}.instancePath === undefined`,()=>e.assign((0,Sn._)`${a}.instancePath`,(0,Sn.strConcat)(qc.default.instancePath,i.errorPath))),e.assign((0,Sn._)`${a}.schemaPath`,(0,Sn.str)`${i.errSchemaPath}/${t}`),i.opts.verbose&&(e.assign((0,Sn._)`${a}.schema`,r),e.assign((0,Sn._)`${a}.data`,n))})}Yo.extendErrors=MNr;function kGe(e,t){let r=e.const("err",t);e.if((0,Sn._)`${qc.default.vErrors} === null`,()=>e.assign(qc.default.vErrors,(0,Sn._)`[${r}]`),(0,Sn._)`${qc.default.vErrors}.push(${r})`),e.code((0,Sn._)`${qc.default.errors}++`)}function BGe(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;s.$async?r.throw((0,Sn._)`new ${e.ValidationError}(${t})`):(r.assign((0,Sn._)`${n}.errors`,t),r.return(!1))}var qv={keyword:new Sn.Name("keyword"),schemaPath:new Sn.Name("schemaPath"),params:new Sn.Name("params"),propertyName:new Sn.Name("propertyName"),message:new Sn.Name("message"),schema:new Sn.Name("schema"),parentSchema:new Sn.Name("parentSchema")};function UGe(e,t,r){let{createErrors:n}=e.it;return n===!1?(0,Sn._)`{}`:kNr(e,t,r)}function kNr(e,t,r={}){let{gen:n,it:s}=e,i=[BNr(s,r),UNr(e,r)];return FNr(e,t,i),n.object(...i)}function BNr({errorPath:e},{instancePath:t}){let r=t?(0,Sn.str)`${e}${(0,g8.getErrorPath)(t,g8.Type.Str)}`:e;return[qc.default.instancePath,(0,Sn.strConcat)(qc.default.instancePath,r)]}function UNr({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:(0,Sn.str)`${t}/${e}`;return r&&(s=(0,Sn.str)`${s}${(0,g8.getErrorPath)(r,g8.Type.Str)}`),[qv.schemaPath,s]}function FNr(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=e,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([qv.keyword,s],[qv.params,typeof t=="function"?t(e):t||(0,Sn._)`{}`]),c.messages&&n.push([qv.message,typeof r=="function"?r(e):r]),c.verbose&&n.push([qv.schema,a],[qv.parentSchema,(0,Sn._)`${l}${d}`],[qc.default.data,i]),u&&n.push([qv.propertyName,u])}});var $Ge=S(NI=>{"use strict";Object.defineProperty(NI,"__esModule",{value:!0});NI.boolOrEmptySchema=NI.topBoolOrEmptySchema=void 0;var $Nr=tD(),qNr=Rr(),HNr=Sm(),VNr={message:"boolean schema is false"};function jNr(e){let{gen:t,schema:r,validateName:n}=e;r===!1?FGe(e,!1):typeof r=="object"&&r.$async===!0?t.return(HNr.default.data):(t.assign((0,qNr._)`${n}.errors`,null),t.return(!0))}NI.topBoolOrEmptySchema=jNr;function KNr(e,t){let{gen:r,schema:n}=e;n===!1?(r.var(t,!1),FGe(e)):r.var(t,!0)}NI.boolOrEmptySchema=KNr;function FGe(e,t){let{gen:r,data:n}=e,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e};(0,$Nr.reportError)(s,VNr,void 0,t)}});var moe=S(OI=>{"use strict";Object.defineProperty(OI,"__esModule",{value:!0});OI.getRules=OI.isJSONType=void 0;var GNr=["string","number","integer","boolean","null","object","array"],zNr=new Set(GNr);function YNr(e){return typeof e=="string"&&zNr.has(e)}OI.isJSONType=YNr;function QNr(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}OI.getRules=QNr});var goe=S(SA=>{"use strict";Object.defineProperty(SA,"__esModule",{value:!0});SA.shouldUseRule=SA.shouldUseGroup=SA.schemaHasRulesForType=void 0;function WNr({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&qGe(e,n)}SA.schemaHasRulesForType=WNr;function qGe(e,t){return t.rules.some(r=>HGe(e,r))}SA.shouldUseGroup=qGe;function HGe(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some(n=>e[n]!==void 0))}SA.shouldUseRule=HGe});var rD=S(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});Qo.reportTypeError=Qo.checkDataTypes=Qo.checkDataType=Qo.coerceAndCheckDataType=Qo.getJSONTypes=Qo.getSchemaTypes=Qo.DataType=void 0;var XNr=moe(),JNr=goe(),ZNr=tD(),yr=Rr(),VGe=vn(),DI;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(DI||(Qo.DataType=DI={}));function eOr(e){let t=jGe(e.type);if(t.includes("null")){if(e.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');e.nullable===!0&&t.push("null")}return t}Qo.getSchemaTypes=eOr;function jGe(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(XNr.isJSONType))return t;throw new Error("type must be JSONType or JSONType[]: "+t.join(","))}Qo.getJSONTypes=jGe;function tOr(e,t){let{gen:r,data:n,opts:s}=e,i=rOr(t,s.coerceTypes),a=t.length>0&&!(i.length===0&&t.length===1&&(0,JNr.schemaHasRulesForType)(e,t[0]));if(a){let o=Aoe(t,n,s.strictNumbers,DI.Wrong);r.if(o,()=>{i.length?nOr(e,t,i):Eoe(e)})}return a}Qo.coerceAndCheckDataType=tOr;var KGe=new Set(["string","number","integer","boolean","null"]);function rOr(e,t){return t?e.filter(r=>KGe.has(r)||t==="array"&&r==="array"):[]}function nOr(e,t,r){let{gen:n,data:s,opts:i}=e,a=n.let("dataType",(0,yr._)`typeof ${s}`),o=n.let("coerced",(0,yr._)`undefined`);i.coerceTypes==="array"&&n.if((0,yr._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,yr._)`${s}[0]`).assign(a,(0,yr._)`typeof ${s}`).if(Aoe(t,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,yr._)`${o} !== undefined`);for(let u of r)(KGe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),Eoe(e),n.endIf(),n.if((0,yr._)`${o} !== undefined`,()=>{n.assign(s,o),sOr(e,o)});function c(u){switch(u){case"string":n.elseIf((0,yr._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,yr._)`"" + ${s}`).elseIf((0,yr._)`${s} === null`).assign(o,(0,yr._)`""`);return;case"number":n.elseIf((0,yr._)`${a} == "boolean" || ${s} === null + || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,yr._)`+${s}`);return;case"integer":n.elseIf((0,yr._)`${a} === "boolean" || ${s} === null + || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,yr._)`+${s}`);return;case"boolean":n.elseIf((0,yr._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,yr._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,yr._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,yr._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${s} === null`).assign(o,(0,yr._)`[${s}]`)}}}function sOr({gen:e,parentData:t,parentDataProperty:r},n){e.if((0,yr._)`${t} !== undefined`,()=>e.assign((0,yr._)`${t}[${r}]`,n))}function _oe(e,t,r,n=DI.Correct){let s=n===DI.Correct?yr.operators.EQ:yr.operators.NEQ,i;switch(e){case"null":return(0,yr._)`${t} ${s} null`;case"array":i=(0,yr._)`Array.isArray(${t})`;break;case"object":i=(0,yr._)`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=a((0,yr._)`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=a();break;default:return(0,yr._)`typeof ${t} ${s} ${e}`}return n===DI.Correct?i:(0,yr.not)(i);function a(o=yr.nil){return(0,yr.and)((0,yr._)`typeof ${t} == "number"`,o,r?(0,yr._)`isFinite(${t})`:yr.nil)}}Qo.checkDataType=_oe;function Aoe(e,t,r,n){if(e.length===1)return _oe(e[0],t,r,n);let s,i=(0,VGe.toHash)(e);if(i.array&&i.object){let a=(0,yr._)`typeof ${t} != "object"`;s=i.null?a:(0,yr._)`!${t} || ${a}`,delete i.null,delete i.array,delete i.object}else s=yr.nil;i.number&&delete i.integer;for(let a in i)s=(0,yr.and)(s,_oe(a,t,r,n));return s}Qo.checkDataTypes=Aoe;var iOr={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?(0,yr._)`{type: ${e}}`:(0,yr._)`{type: ${t}}`};function Eoe(e){let t=aOr(e);(0,ZNr.reportError)(t,iOr)}Qo.reportTypeError=Eoe;function aOr(e){let{gen:t,data:r,schema:n}=e,s=(0,VGe.schemaRefOrVal)(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var zGe=S(_8=>{"use strict";Object.defineProperty(_8,"__esModule",{value:!0});_8.assignDefaults=void 0;var PI=Rr(),oOr=vn();function cOr(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)GGe(e,s,r[s].default);else t==="array"&&Array.isArray(n)&&n.forEach((s,i)=>GGe(e,i,s.default))}_8.assignDefaults=cOr;function GGe(e,t,r){let{gen:n,compositeRule:s,data:i,opts:a}=e;if(r===void 0)return;let o=(0,PI._)`${i}${(0,PI.getProperty)(t)}`;if(s){(0,oOr.checkStrictMode)(e,`default is ignored for: ${o}`);return}let c=(0,PI._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,PI._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,PI._)`${o} = ${(0,PI.stringify)(r)}`)}});var bd=S(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.validateUnion=ds.validateArray=ds.usePattern=ds.callValidateCode=ds.schemaProperties=ds.allSchemaProperties=ds.noPropertyInData=ds.propertyInData=ds.isOwnProperty=ds.hasPropFunc=ds.reportMissingProp=ds.checkMissingProp=ds.checkReportMissingProp=void 0;var Ws=Rr(),yoe=vn(),TA=Sm(),uOr=vn();function lOr(e,t){let{gen:r,data:n,it:s}=e;r.if(Soe(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:(0,Ws._)`${t}`},!0),e.error()})}ds.checkReportMissingProp=lOr;function dOr({gen:e,data:t,it:{opts:r}},n,s){return(0,Ws.or)(...n.map(i=>(0,Ws.and)(Soe(e,t,i,r.ownProperties),(0,Ws._)`${s} = ${i}`)))}ds.checkMissingProp=dOr;function fOr(e,t){e.setParams({missingProperty:t},!0),e.error()}ds.reportMissingProp=fOr;function YGe(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ws._)`Object.prototype.hasOwnProperty`})}ds.hasPropFunc=YGe;function voe(e,t,r){return(0,Ws._)`${YGe(e)}.call(${t}, ${r})`}ds.isOwnProperty=voe;function hOr(e,t,r,n){let s=(0,Ws._)`${t}${(0,Ws.getProperty)(r)} !== undefined`;return n?(0,Ws._)`${s} && ${voe(e,t,r)}`:s}ds.propertyInData=hOr;function Soe(e,t,r,n){let s=(0,Ws._)`${t}${(0,Ws.getProperty)(r)} === undefined`;return n?(0,Ws.or)(s,(0,Ws.not)(voe(e,t,r))):s}ds.noPropertyInData=Soe;function QGe(e){return e?Object.keys(e).filter(t=>t!=="__proto__"):[]}ds.allSchemaProperties=QGe;function pOr(e,t){return QGe(t).filter(r=>!(0,yoe.alwaysValidSchema)(e,t[r]))}ds.schemaProperties=pOr;function mOr({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Ws._)`${e}, ${t}, ${n}${s}`:t,d=[[TA.default.instancePath,(0,Ws.strConcat)(TA.default.instancePath,i)],[TA.default.parentData,a.parentData],[TA.default.parentDataProperty,a.parentDataProperty],[TA.default.rootData,TA.default.rootData]];a.opts.dynamicRef&&d.push([TA.default.dynamicAnchors,TA.default.dynamicAnchors]);let f=(0,Ws._)`${l}, ${r.object(...d)}`;return c!==Ws.nil?(0,Ws._)`${o}.call(${c}, ${f})`:(0,Ws._)`${o}(${f})`}ds.callValidateCode=mOr;var gOr=(0,Ws._)`new RegExp`;function _Or({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Ws._)`${s.code==="new RegExp"?gOr:(0,uOr.useFunc)(e,s)}(${r}, ${n})`})}ds.usePattern=_Or;function AOr(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let o=t.let("valid",!0);return a(()=>t.assign(o,!1)),o}return t.var(i,!0),a(()=>t.break()),i;function a(o){let c=t.const("len",(0,Ws._)`${r}.length`);t.forRange("i",0,c,u=>{e.subschema({keyword:n,dataProp:u,dataPropType:yoe.Type.Num},i),t.if((0,Ws.not)(i),o)})}}ds.validateArray=AOr;function EOr(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,yoe.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=t.let("valid",!1),o=t.name("_valid");t.block(()=>r.forEach((c,u)=>{let l=e.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);t.assign(a,(0,Ws._)`${a} || ${o}`),e.mergeValidEvaluated(l,o)||t.if((0,Ws.not)(a))})),e.result(a,()=>e.reset(),()=>e.error(!0))}ds.validateUnion=EOr});var JGe=S(Ah=>{"use strict";Object.defineProperty(Ah,"__esModule",{value:!0});Ah.validateKeywordUsage=Ah.validSchemaType=Ah.funcKeywordCode=Ah.macroKeywordCode=void 0;var Hc=Rr(),Hv=Sm(),yOr=bd(),vOr=tD();function SOr(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=e,o=t.macro.call(a.self,s,i,a),c=XGe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");e.subschema({schema:o,schemaPath:Hc.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),e.pass(u,()=>e.error(!0))}Ah.macroKeywordCode=SOr;function TOr(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=e;IOr(c,t);let u=!o&&t.compile?t.compile.call(c.self,i,a,c):t.validate,l=XGe(n,s,u),d=n.let("valid");e.block$data(d,f),e.ok((r=t.valid)!==null&&r!==void 0?r:d);function f(){if(t.errors===!1)m(),t.modifying&&WGe(e),g(()=>e.error());else{let _=t.async?h():p();t.modifying&&WGe(e),g(()=>bOr(e,_))}}function h(){let _=n.let("ruleErrs",null);return n.try(()=>m((0,Hc._)`await `),y=>n.assign(d,!1).if((0,Hc._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Hc._)`${y}.errors`),()=>n.throw(y))),_}function p(){let _=(0,Hc._)`${l}.errors`;return n.assign(_,null),m(Hc.nil),_}function m(_=t.async?(0,Hc._)`await `:Hc.nil){let y=c.opts.passContext?Hv.default.this:Hv.default.self,A=!("compile"in t&&!o||t.schema===!1);n.assign(d,(0,Hc._)`${_}${(0,yOr.callValidateCode)(e,l,y,A)}`,t.modifying)}function g(_){var y;n.if((0,Hc.not)((y=t.valid)!==null&&y!==void 0?y:d),_)}}Ah.funcKeywordCode=TOr;function WGe(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,(0,Hc._)`${n.parentData}[${n.parentDataProperty}]`))}function bOr(e,t){let{gen:r}=e;r.if((0,Hc._)`Array.isArray(${t})`,()=>{r.assign(Hv.default.vErrors,(0,Hc._)`${Hv.default.vErrors} === null ? ${t} : ${Hv.default.vErrors}.concat(${t})`).assign(Hv.default.errors,(0,Hc._)`${Hv.default.vErrors}.length`),(0,vOr.extendErrors)(e)},()=>e.error())}function IOr({schemaEnv:e},t){if(t.async&&!e.$async)throw new Error("async keyword in sync schema")}function XGe(e,t,r){if(r===void 0)throw new Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Hc.stringify)(r)})}function ROr(e,t,r=!1){return!t.length||t.some(n=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Ah.validSchemaType=ROr;function COr({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(e,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(e[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ah.validateKeywordUsage=COr});var eze=S(bA=>{"use strict";Object.defineProperty(bA,"__esModule",{value:!0});bA.extendSubschemaMode=bA.extendSubschemaData=bA.getSubschema=void 0;var Eh=Rr(),ZGe=vn();function xOr(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(t!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let o=e.schema[t];return r===void 0?{schema:o,schemaPath:(0,Eh._)`${e.schemaPath}${(0,Eh.getProperty)(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:o[r],schemaPath:(0,Eh._)`${e.schemaPath}${(0,Eh.getProperty)(t)}${(0,Eh.getProperty)(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${(0,ZGe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}bA.getSubschema=xOr;function wOr(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=t;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=t,f=o.let("data",(0,Eh._)`${t.data}${(0,Eh.getProperty)(r)}`,!0);c(f),e.errorPath=(0,Eh.str)`${u}${(0,ZGe.getErrorPath)(r,n,d.jsPropertySyntax)}`,e.parentDataProperty=(0,Eh._)`${r}`,e.dataPathArr=[...l,e.parentDataProperty]}if(s!==void 0){let u=s instanceof Eh.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(e.propertyName=a)}i&&(e.dataTypes=i);function c(u){e.data=u,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,u]}}bA.extendSubschemaData=wOr;function NOr(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(e.compositeRule=n),s!==void 0&&(e.createErrors=s),i!==void 0&&(e.allErrors=i),e.jtdDiscriminator=t,e.jtdMetadata=r}bA.extendSubschemaMode=NOr});var rze=S((tGn,tze)=>{"use strict";var IA=tze.exports=function(e,t,r){typeof t=="function"&&(r=t,t={}),r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};A8(t,n,s,e,"",e)};IA.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};IA.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};IA.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};IA.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function A8(e,t,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in IA.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.getSchemaRefs=Ou.resolveUrl=Ou.normalizeId=Ou._getFullPath=Ou.getFullPath=Ou.inlineRef=void 0;var DOr=vn(),POr=hd(),LOr=rze(),MOr=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function kOr(e,t=!0){return typeof e=="boolean"?!0:t===!0?!Toe(e):t?nze(e)<=t:!1}Ou.inlineRef=kOr;var BOr=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Toe(e){for(let t in e){if(BOr.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Toe)||typeof r=="object"&&Toe(r))return!0}return!1}function nze(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,!MOr.has(r)&&(typeof e[r]=="object"&&(0,DOr.eachItem)(e[r],n=>t+=nze(n)),t===1/0))return 1/0}return t}function sze(e,t="",r){r!==!1&&(t=LI(t));let n=e.parse(t);return ize(e,n)}Ou.getFullPath=sze;function ize(e,t){return e.serialize(t).split("#")[0]+"#"}Ou._getFullPath=ize;var UOr=/#\/?$/;function LI(e){return e?e.replace(UOr,""):""}Ou.normalizeId=LI;function FOr(e,t,r){return r=LI(r),e.resolve(t,r)}Ou.resolveUrl=FOr;var $Or=/^[a-z_][-a-z0-9._]*$/i;function qOr(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=LI(e[r]||t),i={"":s},a=sze(n,s,!1),o={},c=new Set;return LOr(e,{allKeys:!0},(d,f,h,p)=>{if(p===void 0)return;let m=a+f,g=i[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),i[f]=g;function _(A){let E=this.opts.uriResolver.resolve;if(A=LI(g?E(g,A):A),c.has(A))throw l(A);c.add(A);let v=this.refs[A];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,A):A!==LI(m)&&(A[0]==="#"?(u(d,o[A],A),o[A]=d):this.refs[A]=m),A}function y(A){if(typeof A=="string"){if(!$Or.test(A))throw new Error(`invalid anchor "${A}"`);_.call(this,`#${A}`)}}}),o;function u(d,f,h){if(f!==void 0&&!POr(d,f))throw l(h)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ou.getSchemaRefs=qOr});var aD=S(RA=>{"use strict";Object.defineProperty(RA,"__esModule",{value:!0});RA.getData=RA.KeywordCxt=RA.validateFunctionCode=void 0;var lze=$Ge(),aze=rD(),Ioe=goe(),E8=rD(),HOr=zGe(),iD=JGe(),boe=eze(),wt=Rr(),ir=Sm(),VOr=nD(),Tm=vn(),sD=tD();function jOr(e){if(hze(e)&&(pze(e),fze(e))){zOr(e);return}dze(e,()=>(0,lze.topBoolOrEmptySchema)(e))}RA.validateFunctionCode=jOr;function dze({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){s.code.es5?e.func(t,(0,wt._)`${ir.default.data}, ${ir.default.valCxt}`,n.$async,()=>{e.code((0,wt._)`"use strict"; ${oze(r,s)}`),GOr(e,s),e.code(i)}):e.func(t,(0,wt._)`${ir.default.data}, ${KOr(s)}`,n.$async,()=>e.code(oze(r,s)).code(i))}function KOr(e){return(0,wt._)`{${ir.default.instancePath}="", ${ir.default.parentData}, ${ir.default.parentDataProperty}, ${ir.default.rootData}=${ir.default.data}${e.dynamicRef?(0,wt._)`, ${ir.default.dynamicAnchors}={}`:wt.nil}}={}`}function GOr(e,t){e.if(ir.default.valCxt,()=>{e.var(ir.default.instancePath,(0,wt._)`${ir.default.valCxt}.${ir.default.instancePath}`),e.var(ir.default.parentData,(0,wt._)`${ir.default.valCxt}.${ir.default.parentData}`),e.var(ir.default.parentDataProperty,(0,wt._)`${ir.default.valCxt}.${ir.default.parentDataProperty}`),e.var(ir.default.rootData,(0,wt._)`${ir.default.valCxt}.${ir.default.rootData}`),t.dynamicRef&&e.var(ir.default.dynamicAnchors,(0,wt._)`${ir.default.valCxt}.${ir.default.dynamicAnchors}`)},()=>{e.var(ir.default.instancePath,(0,wt._)`""`),e.var(ir.default.parentData,(0,wt._)`undefined`),e.var(ir.default.parentDataProperty,(0,wt._)`undefined`),e.var(ir.default.rootData,ir.default.data),t.dynamicRef&&e.var(ir.default.dynamicAnchors,(0,wt._)`{}`)})}function zOr(e){let{schema:t,opts:r,gen:n}=e;dze(e,()=>{r.$comment&&t.$comment&&gze(e),JOr(e),n.let(ir.default.vErrors,null),n.let(ir.default.errors,0),r.unevaluated&&YOr(e),mze(e),t2r(e)})}function YOr(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",(0,wt._)`${r}.evaluated`),t.if((0,wt._)`${e.evaluated}.dynamicProps`,()=>t.assign((0,wt._)`${e.evaluated}.props`,(0,wt._)`undefined`)),t.if((0,wt._)`${e.evaluated}.dynamicItems`,()=>t.assign((0,wt._)`${e.evaluated}.items`,(0,wt._)`undefined`))}function oze(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?(0,wt._)`/*# sourceURL=${r} */`:wt.nil}function QOr(e,t){if(hze(e)&&(pze(e),fze(e))){WOr(e,t);return}(0,lze.boolOrEmptySchema)(e,t)}function fze({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function hze(e){return typeof e.schema!="boolean"}function WOr(e,t){let{schema:r,gen:n,opts:s}=e;s.$comment&&r.$comment&&gze(e),ZOr(e),e2r(e);let i=n.const("_errs",ir.default.errors);mze(e,i),n.var(t,(0,wt._)`${i} === ${ir.default.errors}`)}function pze(e){(0,Tm.checkUnknownRules)(e),XOr(e)}function mze(e,t){if(e.opts.jtd)return cze(e,[],!1,t);let r=(0,aze.getSchemaTypes)(e.schema),n=(0,aze.coerceAndCheckDataType)(e,r);cze(e,r,!n,t)}function XOr(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;t.$ref&&n.ignoreKeywordsWithRef&&(0,Tm.schemaHasRulesButRef)(t,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function JOr(e){let{schema:t,opts:r}=e;t.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Tm.checkStrictMode)(e,"default is ignored in the schema root")}function ZOr(e){let t=e.schema[e.opts.schemaId];t&&(e.baseId=(0,VOr.resolveUrl)(e.opts.uriResolver,e.baseId,t))}function e2r(e){if(e.schema.$async&&!e.schemaEnv.$async)throw new Error("async schema in sync schema")}function gze({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code((0,wt._)`${ir.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,wt.str)`${n}/$comment`,o=e.scopeValue("root",{ref:t.root});e.code((0,wt._)`${ir.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function t2r(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;r.$async?t.if((0,wt._)`${ir.default.errors} === 0`,()=>t.return(ir.default.data),()=>t.throw((0,wt._)`new ${s}(${ir.default.vErrors})`)):(t.assign((0,wt._)`${n}.errors`,ir.default.vErrors),i.unevaluated&&r2r(e),t.return((0,wt._)`${ir.default.errors} === 0`))}function r2r({gen:e,evaluated:t,props:r,items:n}){r instanceof wt.Name&&e.assign((0,wt._)`${t}.props`,r),n instanceof wt.Name&&e.assign((0,wt._)`${t}.items`,n)}function cze(e,t,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=e,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Tm.schemaHasRulesButRef)(i,l))){s.block(()=>Aze(e,"$ref",l.all.$ref.definition));return}c.jtd||n2r(e,t),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Ioe.shouldUseGroup)(i,f)&&(f.type?(s.if((0,E8.checkDataType)(f.type,a,c.strictNumbers)),uze(e,f),t.length===1&&t[0]===f.type&&r&&(s.else(),(0,E8.reportTypeError)(e)),s.endIf()):uze(e,f),o||s.if((0,wt._)`${ir.default.errors} === ${n||0}`))}}function uze(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;s&&(0,HOr.assignDefaults)(e,t.type),r.block(()=>{for(let i of t.rules)(0,Ioe.shouldUseRule)(n,i)&&Aze(e,i.keyword,i.definition,t.type)})}function n2r(e,t){e.schemaEnv.meta||!e.opts.strictTypes||(s2r(e,t),e.opts.allowUnionTypes||i2r(e,t),a2r(e,e.dataTypes))}function s2r(e,t){if(t.length){if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach(r=>{_ze(e.dataTypes,r)||Roe(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),c2r(e,t)}}function i2r(e,t){t.length>1&&!(t.length===2&&t.includes("null"))&&Roe(e,"use allowUnionTypes to allow union type keyword")}function a2r(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,Ioe.shouldUseRule)(e.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>o2r(t,a))&&Roe(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function o2r(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function _ze(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function c2r(e,t){let r=[];for(let n of e.dataTypes)_ze(t,n)?r.push(n):t.includes("integer")&&n==="number"&&r.push("integer");e.dataTypes=r}function Roe(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,(0,Tm.checkStrictMode)(e,t,e.opts.strictTypes)}var y8=class{constructor(t,r,n){if((0,iD.validateKeywordUsage)(t,r,n),this.gen=t.gen,this.allErrors=t.allErrors,this.keyword=n,this.data=t.data,this.schema=t.schema[n],this.$data=r.$data&&t.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Tm.schemaRefOrVal)(t,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=t.schema,this.params={},this.it=t,this.def=r,this.$data)this.schemaCode=t.gen.const("vSchema",Eze(this.$data,t));else if(this.schemaCode=this.schemaValue,!(0,iD.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=t.gen.const("_errs",ir.default.errors))}result(t,r,n){this.failResult((0,wt.not)(t),r,n)}failResult(t,r,n){this.gen.if(t),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(t,r){this.failResult((0,wt.not)(t),void 0,r)}fail(t){if(t===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(t),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(t){if(!this.$data)return this.fail(t);let{schemaCode:r}=this;this.fail((0,wt._)`${r} !== undefined && (${(0,wt.or)(this.invalid$data(),t)})`)}error(t,r,n){if(r){this.setParams(r),this._error(t,n),this.setParams({});return}this._error(t,n)}_error(t,r){(t?sD.reportExtraError:sD.reportError)(this,this.def.error,r)}$dataError(){(0,sD.reportError)(this,this.def.$dataError||sD.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,sD.resetErrorsCount)(this.gen,this.errsCount)}ok(t){this.allErrors||this.gen.if(t)}setParams(t,r){r?Object.assign(this.params,t):this.params=t}block$data(t,r,n=wt.nil){this.gen.block(()=>{this.check$data(t,n),r()})}check$data(t=wt.nil,r=wt.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,wt.or)((0,wt._)`${s} === undefined`,r)),t!==wt.nil&&n.assign(t,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),t!==wt.nil&&n.assign(t,!1)),n.else()}invalid$data(){let{gen:t,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,wt.or)(a(),o());function a(){if(n.length){if(!(r instanceof wt.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,wt._)`${(0,E8.checkDataTypes)(c,r,i.opts.strictNumbers,E8.DataType.Wrong)}`}return wt.nil}function o(){if(s.validateSchema){let c=t.scopeValue("validate$data",{ref:s.validateSchema});return(0,wt._)`!${c}(${r})`}return wt.nil}}subschema(t,r){let n=(0,boe.getSubschema)(this.it,t);(0,boe.extendSubschemaData)(n,this.it,t),(0,boe.extendSubschemaMode)(n,t);let s={...this.it,...n,items:void 0,props:void 0};return QOr(s,r),s}mergeEvaluated(t,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&t.props!==void 0&&(n.props=Tm.mergeEvaluated.props(s,t.props,n.props,r)),n.items!==!0&&t.items!==void 0&&(n.items=Tm.mergeEvaluated.items(s,t.items,n.items,r)))}mergeValidEvaluated(t,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(t,wt.Name)),!0}};RA.KeywordCxt=y8;function Aze(e,t,r,n){let s=new y8(e,r,t);"code"in r?r.code(s,n):s.$data&&r.validate?(0,iD.funcKeywordCode)(s,r):"macro"in r?(0,iD.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,iD.funcKeywordCode)(s,r)}var u2r=/^\/(?:[^~]|~0|~1)*$/,l2r=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Eze(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return ir.default.rootData;if(e[0]==="/"){if(!u2r.test(e))throw new Error(`Invalid JSON-pointer: ${e}`);s=e,i=ir.default.rootData}else{let u=l2r.exec(e);if(!u)throw new Error(`Invalid JSON-pointer: ${e}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=t)throw new Error(c("property/index",l));return n[t-l]}if(l>t)throw new Error(c("data",l));if(i=r[t-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,wt._)`${i}${(0,wt.getProperty)((0,Tm.unescapeJsonPointer)(u))}`,a=(0,wt._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${t}`}}RA.getData=Eze});var v8=S(xoe=>{"use strict";Object.defineProperty(xoe,"__esModule",{value:!0});var Coe=class extends Error{constructor(t){super("validation failed"),this.errors=t,this.ajv=this.validation=!0}};xoe.default=Coe});var oD=S(Ooe=>{"use strict";Object.defineProperty(Ooe,"__esModule",{value:!0});var woe=nD(),Noe=class extends Error{constructor(t,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,woe.resolveUrl)(t,r,n),this.missingSchema=(0,woe.normalizeId)((0,woe.getFullPath)(t,this.missingRef))}};Ooe.default=Noe});var T8=S(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});Id.resolveSchema=Id.getCompilingSchema=Id.resolveRef=Id.compileSchema=Id.SchemaEnv=void 0;var $f=Rr(),d2r=v8(),Vv=Sm(),qf=nD(),yze=vn(),f2r=aD(),MI=class{constructor(t){var r;this.refs={},this.dynamicAnchors={};let n;typeof t.schema=="object"&&(n=t.schema),this.schema=t.schema,this.schemaId=t.schemaId,this.root=t.root||this,this.baseId=(r=t.baseId)!==null&&r!==void 0?r:(0,qf.normalizeId)(n?.[t.schemaId||"$id"]),this.schemaPath=t.schemaPath,this.localRefs=t.localRefs,this.meta=t.meta,this.$async=n?.$async,this.refs={}}};Id.SchemaEnv=MI;function Poe(e){let t=vze.call(this,e);if(t)return t;let r=(0,qf.getFullPath)(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new $f.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;e.$async&&(o=a.scopeValue("Error",{ref:d2r.default,code:(0,$f._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");e.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Vv.default.data,parentData:Vv.default.parentData,parentDataProperty:Vv.default.parentDataProperty,dataNames:[Vv.default.data],dataPathArr:[$f.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:(0,$f.stringify)(e.schema)}:{ref:e.schema}),validateName:c,ValidationError:o,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:$f.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,$f._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(e),(0,f2r.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Vv.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,e));let h=new Function(`${Vv.default.self}`,`${Vv.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:h}),h.errors=null,h.schema=e.schema,h.schemaEnv=e,e.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:m}=u;h.evaluated={props:p instanceof $f.Name?void 0:p,items:m instanceof $f.Name?void 0:m,dynamicProps:p instanceof $f.Name,dynamicItems:m instanceof $f.Name},h.source&&(h.source.evaluated=(0,$f.stringify)(h.evaluated))}return e.validate=h,e}catch(d){throw delete e.validate,delete e.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(e)}}Id.compileSchema=Poe;function h2r(e,t,r){var n;r=(0,qf.resolveUrl)(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=g2r.call(this,e,r);if(i===void 0){let a=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new MI({schema:a,schemaId:o,root:e,baseId:t}))}if(i!==void 0)return e.refs[r]=p2r.call(this,i)}Id.resolveRef=h2r;function p2r(e){return(0,qf.inlineRef)(e.schema,this.opts.inlineRefs)?e.schema:e.validate?e:Poe.call(this,e)}function vze(e){for(let t of this._compilations)if(m2r(t,e))return t}Id.getCompilingSchema=vze;function m2r(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function g2r(e,t){let r;for(;typeof(r=this.refs[t])=="string";)t=r;return r||this.schemas[t]||S8.call(this,e,t)}function S8(e,t){let r=this.opts.uriResolver.parse(t),n=(0,qf._getFullPath)(this.opts.uriResolver,r),s=(0,qf.getFullPath)(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Doe.call(this,r,e);let i=(0,qf.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=S8.call(this,e,a);return typeof o?.schema!="object"?void 0:Doe.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||Poe.call(this,a),i===(0,qf.normalizeId)(t)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,qf.resolveUrl)(this.opts.uriResolver,s,u)),new MI({schema:o,schemaId:c,root:e,baseId:s})}return Doe.call(this,r,a)}}Id.resolveSchema=S8;var _2r=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Doe(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of e.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,yze.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!_2r.has(o)&&u&&(t=(0,qf.resolveUrl)(this.opts.uriResolver,t,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,yze.schemaHasRulesButRef)(r,this.RULES)){let o=(0,qf.resolveUrl)(this.opts.uriResolver,t,r.$ref);i=S8.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new MI({schema:r,schemaId:a,root:n,baseId:t}),i.schema!==i.root.schema)return i}});var Sze=S((oGn,A2r)=>{A2r.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Moe=S((cGn,Rze)=>{"use strict";var E2r=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),bze=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Loe(e){let t="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var y2r=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Tze(e){return e.length=0,!0}function v2r(e,t,r){if(e.length){let n=Loe(e);if(n!=="")t.push(n);else return r.error=!0,!1;e.length=0}return!0}function S2r(e){let t=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=v2r;for(let c=0;c7){r.error=!0;break}c>0&&e[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=Tze}else{s.push(u);continue}}return s.length&&(o===Tze?r.zone=s.join(""):a?n.push(s.join("")):n.push(Loe(s))),r.address=n.join(""),r}function Ize(e){if(T2r(e,":")<2)return{host:e,isIPV6:!1};let t=S2r(e);if(t.error)return{host:e,isIPV6:!1};{let r=t.address,n=t.address;return t.zone&&(r+="%"+t.zone,n+="%25"+t.zone),{host:r,isIPV6:!0,escapedHost:n}}}function T2r(e,t){let r=0;for(let n=0;n{"use strict";var{isUUID:C2r}=Moe(),x2r=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,w2r=["http","https","ws","wss","urn","urn:uuid"];function N2r(e){return w2r.indexOf(e)!==-1}function koe(e){return e.secure===!0?!0:e.secure===!1?!1:e.scheme?e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S"):!1}function Cze(e){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e}function xze(e){let t=String(e.scheme).toLowerCase()==="https";return(e.port===(t?443:80)||e.port==="")&&(e.port=void 0),e.path||(e.path="/"),e}function O2r(e){return e.secure=koe(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function D2r(e){if((e.port===(koe(e)?443:80)||e.port==="")&&(e.port=void 0),typeof e.secure=="boolean"&&(e.scheme=e.secure?"wss":"ws",e.secure=void 0),e.resourceName){let[t,r]=e.resourceName.split("?");e.path=t&&t!=="/"?t:void 0,e.query=r,e.resourceName=void 0}return e.fragment=void 0,e}function P2r(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(x2r);if(r){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=Boe(s);e.path=void 0,i&&(e=i.parse(e,t))}else e.error=e.error||"URN can not be parsed.";return e}function L2r(e,t){if(e.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=Boe(s);i&&(e=i.serialize(e,t));let a=e,o=e.nss;return a.path=`${n||t.nid}:${o}`,t.skipEscape=!0,a}function M2r(e,t){let r=e;return r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!C2r(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function k2r(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var wze={scheme:"http",domainHost:!0,parse:Cze,serialize:xze},B2r={scheme:"https",domainHost:wze.domainHost,parse:Cze,serialize:xze},b8={scheme:"ws",domainHost:!0,parse:O2r,serialize:D2r},U2r={scheme:"wss",domainHost:b8.domainHost,parse:b8.parse,serialize:b8.serialize},F2r={scheme:"urn",parse:P2r,serialize:L2r,skipNormalize:!0},$2r={scheme:"urn:uuid",parse:M2r,serialize:k2r,skipNormalize:!0},I8={http:wze,https:B2r,ws:b8,wss:U2r,urn:F2r,"urn:uuid":$2r};Object.setPrototypeOf(I8,null);function Boe(e){return e&&(I8[e]||I8[e.toLowerCase()])||void 0}Nze.exports={wsIsSecure:koe,SCHEMES:I8,isValidSchemeName:N2r,getSchemeHandler:Boe}});var Lze=S((lGn,C8)=>{"use strict";var{normalizeIPv6:q2r,removeDotSegments:cD,recomposeAuthority:H2r,normalizeComponentEncoding:R8,isIPv4:V2r,nonSimpleDomain:j2r}=Moe(),{SCHEMES:K2r,getSchemeHandler:Dze}=Oze();function G2r(e,t){return typeof e=="string"?e=yh(bm(e,t),t):typeof e=="object"&&(e=bm(yh(e,t),t)),e}function z2r(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Pze(bm(e,n),bm(t,n),n,!0);return n.skipEscape=!0,yh(s,n)}function Pze(e,t,r,n){let s={};return n||(e=bm(yh(e,r),r),t=bm(yh(t,r),r)),r=r||{},!r.tolerant&&t.scheme?(s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=cD(t.path||""),s.query=t.query):(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0?(s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=cD(t.path||""),s.query=t.query):(t.path?(t.path[0]==="/"?s.path=cD(t.path):((e.userinfo!==void 0||e.host!==void 0||e.port!==void 0)&&!e.path?s.path="/"+t.path:e.path?s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:s.path=t.path,s.path=cD(s.path)),s.query=t.query):(s.path=e.path,t.query!==void 0?s.query=t.query:s.query=e.query),s.userinfo=e.userinfo,s.host=e.host,s.port=e.port),s.scheme=e.scheme),s.fragment=t.fragment,s}function Y2r(e,t,r){return typeof e=="string"?(e=unescape(e),e=yh(R8(bm(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=yh(R8(e,!0),{...r,skipEscape:!0})),typeof t=="string"?(t=unescape(t),t=yh(R8(bm(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=yh(R8(t,!0),{...r,skipEscape:!0})),e.toLowerCase()===t.toLowerCase()}function yh(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[],i=Dze(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=H2r(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=cD(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var Q2r=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function bm(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?e=r.scheme+":"+e:e="//"+e);let i=e.match(Q2r);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(V2r(n.host)===!1){let c=q2r(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Dze(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&j2r(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(e.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Uoe={SCHEMES:K2r,normalize:G2r,resolve:z2r,resolveComponent:Pze,equal:Y2r,serialize:yh,parse:bm};C8.exports=Uoe;C8.exports.default=Uoe;C8.exports.fastUri=Uoe});var kze=S(Foe=>{"use strict";Object.defineProperty(Foe,"__esModule",{value:!0});var Mze=Lze();Mze.code='require("ajv/dist/runtime/uri").default';Foe.default=Mze});var jze=S(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.CodeGen=Ao.Name=Ao.nil=Ao.stringify=Ao.str=Ao._=Ao.KeywordCxt=void 0;var W2r=aD();Object.defineProperty(Ao,"KeywordCxt",{enumerable:!0,get:function(){return W2r.KeywordCxt}});var kI=Rr();Object.defineProperty(Ao,"_",{enumerable:!0,get:function(){return kI._}});Object.defineProperty(Ao,"str",{enumerable:!0,get:function(){return kI.str}});Object.defineProperty(Ao,"stringify",{enumerable:!0,get:function(){return kI.stringify}});Object.defineProperty(Ao,"nil",{enumerable:!0,get:function(){return kI.nil}});Object.defineProperty(Ao,"Name",{enumerable:!0,get:function(){return kI.Name}});Object.defineProperty(Ao,"CodeGen",{enumerable:!0,get:function(){return kI.CodeGen}});var X2r=v8(),qze=oD(),J2r=moe(),uD=T8(),Z2r=Rr(),lD=nD(),x8=rD(),qoe=vn(),Bze=Sze(),eDr=kze(),Hze=(e,t)=>new RegExp(e,t);Hze.code="new RegExp";var tDr=["removeAdditional","useDefaults","coerceTypes"],rDr=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),nDr={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},sDr={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Uze=200;function iDr(e){var t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y,A,E,v,b,I,T,x;let w=e.strict,D=(t=e.code)===null||t===void 0?void 0:t.optimize,M=D===!0||D===void 0?1:D||0,L=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Hze,U=(s=e.uriResolver)!==null&&s!==void 0?s:eDr.default;return{strictSchema:(a=(i=e.strictSchema)!==null&&i!==void 0?i:w)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=e.strictNumbers)!==null&&o!==void 0?o:w)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=e.strictTypes)!==null&&u!==void 0?u:w)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=e.strictTuples)!==null&&d!==void 0?d:w)!==null&&f!==void 0?f:"log",strictRequired:(p=(h=e.strictRequired)!==null&&h!==void 0?h:w)!==null&&p!==void 0?p:!1,code:e.code?{...e.code,optimize:M,regExp:L}:{optimize:M,regExp:L},loopRequired:(m=e.loopRequired)!==null&&m!==void 0?m:Uze,loopEnum:(g=e.loopEnum)!==null&&g!==void 0?g:Uze,meta:(_=e.meta)!==null&&_!==void 0?_:!0,messages:(y=e.messages)!==null&&y!==void 0?y:!0,inlineRefs:(A=e.inlineRefs)!==null&&A!==void 0?A:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(v=e.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(b=e.validateSchema)!==null&&b!==void 0?b:!0,validateFormats:(I=e.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(T=e.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(x=e.int32range)!==null&&x!==void 0?x:!0,uriResolver:U}}var dD=class{constructor(t={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,t=this.opts={...t,...iDr(t)};let{es5:r,lines:n}=this.opts.code;this.scope=new Z2r.ValueScope({scope:{},prefixes:rDr,es5:r,lines:n}),this.logger=dDr(t.logger);let s=t.validateFormats;t.validateFormats=!1,this.RULES=(0,J2r.getRules)(),Fze.call(this,nDr,t,"NOT SUPPORTED"),Fze.call(this,sDr,t,"DEPRECATED","warn"),this._metaOpts=uDr.call(this),t.formats&&oDr.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),t.keywords&&cDr.call(this,t.keywords),typeof t.meta=="object"&&this.addMetaSchema(t.meta),aDr.call(this),t.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:t,meta:r,schemaId:n}=this.opts,s=Bze;n==="id"&&(s={...Bze},s.id=s.$id,delete s.$id),r&&t&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:t,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof t=="object"?t[r]||t:void 0}validate(t,r){let n;if(typeof t=="string"){if(n=this.getSchema(t),!n)throw new Error(`no schema with key or ref "${t}"`)}else n=this.compile(t);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(t,r){let n=this._addSchema(t,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(t,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,t,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof qze.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(t,r,n,s=this.opts.validateSchema){if(Array.isArray(t)){for(let a of t)this.addSchema(a,void 0,n,s);return this}let i;if(typeof t=="object"){let{schemaId:a}=this.opts;if(i=t[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,lD.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(t,n,r,s,!0),this}addMetaSchema(t,r,n=this.opts.validateSchema){return this.addSchema(t,r,!0,n),this}validateSchema(t,r){if(typeof t=="boolean")return!0;let n;if(n=t.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,t);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(t){let r;for(;typeof(r=$ze.call(this,t))=="string";)t=r;if(r===void 0){let{schemaId:n}=this.opts,s=new uD.SchemaEnv({schema:{},schemaId:n});if(r=uD.resolveSchema.call(this,s,t),!r)return;this.refs[t]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(t){if(t instanceof RegExp)return this._removeAllSchemas(this.schemas,t),this._removeAllSchemas(this.refs,t),this;switch(typeof t){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=$ze.call(this,t);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[t],delete this.refs[t],this}case"object":{let r=t;this._cache.delete(r);let n=t[this.opts.schemaId];return n&&(n=(0,lD.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(t){for(let r of t)this.addKeyword(r);return this}addKeyword(t,r){let n;if(typeof t=="string")n=t,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof t=="object"&&r===void 0){if(r=t,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(hDr.call(this,n,r),!r)return(0,qoe.eachItem)(n,i=>$oe.call(this,i)),this;mDr.call(this,r);let s={...r,type:(0,x8.getJSONTypes)(r.type),schemaType:(0,x8.getJSONTypes)(r.schemaType)};return(0,qoe.eachItem)(n,s.type.length===0?i=>$oe.call(this,i,s):i=>s.type.forEach(a=>$oe.call(this,i,s,a))),this}getKeyword(t){let r=this.RULES.all[t];return typeof r=="object"?r.definition:!!r}removeKeyword(t){let{RULES:r}=this;delete r.keywords[t],delete r.all[t];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===t);s>=0&&n.rules.splice(s,1)}return this}addFormat(t,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[t]=r,this}errorsText(t=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!t||t.length===0?"No errors":t.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(t,r){let n=this.RULES.all;t=JSON.parse(JSON.stringify(t));for(let s of r){let i=s.split("/").slice(1),a=t;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Vze(l))}}return t}_removeAllSchemas(t,r){for(let n in t){let s=t[n];(!r||r.test(n))&&(typeof s=="string"?delete t[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete t[n]))}}_addSchema(t,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof t=="object")a=t[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof t!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(t);if(c!==void 0)return c;n=(0,lD.normalizeId)(a||n);let u=lD.getSchemaRefs.call(this,t,n);return c=new uD.SchemaEnv({schema:t,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(t,!0),c}_checkUnique(t){if(this.schemas[t]||this.refs[t])throw new Error(`schema with key or id "${t}" already exists`)}_compileSchemaEnv(t){if(t.meta?this._compileMetaSchema(t):uD.compileSchema.call(this,t),!t.validate)throw new Error("ajv implementation error");return t.validate}_compileMetaSchema(t){let r=this.opts;this.opts=this._metaOpts;try{uD.compileSchema.call(this,t)}finally{this.opts=r}}};dD.ValidationError=X2r.default;dD.MissingRefError=qze.default;Ao.default=dD;function Fze(e,t,r,n="error"){for(let s in e){let i=s;i in t&&this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function $ze(e){return e=(0,lD.normalizeId)(e),this.schemas[e]||this.refs[e]}function aDr(){let e=this.opts.schemas;if(e)if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function oDr(){for(let e in this.opts.formats){let t=this.opts.formats[e];t&&this.addFormat(e,t)}}function cDr(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];r.keyword||(r.keyword=t),this.addKeyword(r)}}function uDr(){let e={...this.opts};for(let t of tDr)delete e[t];return e}var lDr={log(){},warn(){},error(){}};function dDr(e){if(e===!1)return lDr;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw new Error("logger must implement log, warn and error methods")}var fDr=/^[a-z_$][a-z0-9_$:-]*$/i;function hDr(e,t){let{RULES:r}=this;if((0,qoe.eachItem)(e,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!fDr.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!t&&t.$data&&!("code"in t||"validate"in t))throw new Error('$data keyword must have "code" or "validate" function')}function $oe(e,t,r){var n;let s=t?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[e]=!0,!t)return;let o={keyword:e,definition:{...t,type:(0,x8.getJSONTypes)(t.type),schemaType:(0,x8.getJSONTypes)(t.schemaType)}};t.before?pDr.call(this,a,o,t.before):a.rules.push(o),i.all[e]=o,(n=t.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function pDr(e,t,r){let n=e.rules.findIndex(s=>s.keyword===r);n>=0?e.rules.splice(n,0,t):(e.rules.push(t),this.logger.warn(`rule ${r} is not defined`))}function mDr(e){let{metaSchema:t}=e;t!==void 0&&(e.$data&&this.opts.$data&&(t=Vze(t)),e.validateSchema=this.compile(t,!0))}var gDr={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Vze(e){return{anyOf:[e,gDr]}}});var Kze=S(Hoe=>{"use strict";Object.defineProperty(Hoe,"__esModule",{value:!0});var _Dr={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Hoe.default=_Dr});var Qze=S(jv=>{"use strict";Object.defineProperty(jv,"__esModule",{value:!0});jv.callRef=jv.getValidate=void 0;var ADr=oD(),Gze=bd(),Du=Rr(),BI=Sm(),zze=T8(),w8=vn(),EDr={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=zze.resolveRef.call(c,u,s,r);if(l===void 0)throw new ADr.default(n.opts.uriResolver,s,r);if(l instanceof zze.SchemaEnv)return f(l);return h(l);function d(){if(i===u)return N8(e,a,i,i.$async);let p=t.scopeValue("root",{ref:u});return N8(e,(0,Du._)`${p}.validate`,u,u.$async)}function f(p){let m=Yze(e,p);N8(e,m,p,p.$async)}function h(p){let m=t.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Du.stringify)(p)}:{ref:p}),g=t.name("valid"),_=e.subschema({schema:p,dataTypes:[],schemaPath:Du.nil,topSchemaRef:m,errSchemaPath:r},g);e.mergeEvaluated(_),e.ok(g)}}};function Yze(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):(0,Du._)`${r.scopeValue("wrapper",{ref:t})}.validate`}jv.getValidate=Yze;function N8(e,t,r,n){let{gen:s,it:i}=e,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?BI.default.this:Du.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Du._)`await ${(0,Gze.callValidateCode)(e,t,u)}`),h(t),a||s.assign(p,!0)},m=>{s.if((0,Du._)`!(${m} instanceof ${i.ValidationError})`,()=>s.throw(m)),f(m),a||s.assign(p,!1)}),e.ok(p)}function d(){e.result((0,Gze.callValidateCode)(e,t,u),()=>h(t),()=>f(t))}function f(p){let m=(0,Du._)`${p}.errors`;s.assign(BI.default.vErrors,(0,Du._)`${BI.default.vErrors} === null ? ${m} : ${BI.default.vErrors}.concat(${m})`),s.assign(BI.default.errors,(0,Du._)`${BI.default.vErrors}.length`)}function h(p){var m;if(!i.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=w8.mergeEvaluated.props(s,g.props,i.props));else{let _=s.var("props",(0,Du._)`${p}.evaluated.props`);i.props=w8.mergeEvaluated.props(s,_,i.props,Du.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=w8.mergeEvaluated.items(s,g.items,i.items));else{let _=s.var("items",(0,Du._)`${p}.evaluated.items`);i.items=w8.mergeEvaluated.items(s,_,i.items,Du.Name)}}}jv.callRef=N8;jv.default=EDr});var Wze=S(Voe=>{"use strict";Object.defineProperty(Voe,"__esModule",{value:!0});var yDr=Kze(),vDr=Qze(),SDr=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",yDr.default,vDr.default];Voe.default=SDr});var Xze=S(joe=>{"use strict";Object.defineProperty(joe,"__esModule",{value:!0});var O8=Rr(),CA=O8.operators,D8={maximum:{okStr:"<=",ok:CA.LTE,fail:CA.GT},minimum:{okStr:">=",ok:CA.GTE,fail:CA.LT},exclusiveMaximum:{okStr:"<",ok:CA.LT,fail:CA.GTE},exclusiveMinimum:{okStr:">",ok:CA.GT,fail:CA.LTE}},TDr={message:({keyword:e,schemaCode:t})=>(0,O8.str)`must be ${D8[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>(0,O8._)`{comparison: ${D8[e].okStr}, limit: ${t}}`},bDr={keyword:Object.keys(D8),type:"number",schemaType:"number",$data:!0,error:TDr,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data((0,O8._)`${r} ${D8[t].fail} ${n} || isNaN(${r})`)}};joe.default=bDr});var Jze=S(Koe=>{"use strict";Object.defineProperty(Koe,"__esModule",{value:!0});var fD=Rr(),IDr={message:({schemaCode:e})=>(0,fD.str)`must be multiple of ${e}`,params:({schemaCode:e})=>(0,fD._)`{multipleOf: ${e}}`},RDr={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:IDr,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,a=t.let("res"),o=i?(0,fD._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,fD._)`${a} !== parseInt(${a})`;e.fail$data((0,fD._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Koe.default=RDr});var eYe=S(Goe=>{"use strict";Object.defineProperty(Goe,"__esModule",{value:!0});function Zze(e){let t=e.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(zoe,"__esModule",{value:!0});var Kv=Rr(),CDr=vn(),xDr=eYe(),wDr={message({keyword:e,schemaCode:t}){let r=e==="maxLength"?"more":"fewer";return(0,Kv.str)`must NOT have ${r} than ${t} characters`},params:({schemaCode:e})=>(0,Kv._)`{limit: ${e}}`},NDr={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:wDr,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?Kv.operators.GT:Kv.operators.LT,a=s.opts.unicode===!1?(0,Kv._)`${r}.length`:(0,Kv._)`${(0,CDr.useFunc)(e.gen,xDr.default)}(${r})`;e.fail$data((0,Kv._)`${a} ${i} ${n}`)}};zoe.default=NDr});var rYe=S(Yoe=>{"use strict";Object.defineProperty(Yoe,"__esModule",{value:!0});var ODr=bd(),DDr=vn(),UI=Rr(),PDr={message:({schemaCode:e})=>(0,UI.str)`must match pattern "${e}"`,params:({schemaCode:e})=>(0,UI._)`{pattern: ${e}}`},LDr={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:PDr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e,o=a.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=a.opts.code,u=c.code==="new RegExp"?(0,UI._)`new RegExp`:(0,DDr.useFunc)(t,c),l=t.let("valid");t.try(()=>t.assign(l,(0,UI._)`${u}(${i}, ${o}).test(${r})`),()=>t.assign(l,!1)),e.fail$data((0,UI._)`!${l}`)}else{let c=(0,ODr.usePattern)(e,s);e.fail$data((0,UI._)`!${c}.test(${r})`)}}};Yoe.default=LDr});var nYe=S(Qoe=>{"use strict";Object.defineProperty(Qoe,"__esModule",{value:!0});var hD=Rr(),MDr={message({keyword:e,schemaCode:t}){let r=e==="maxProperties"?"more":"fewer";return(0,hD.str)`must NOT have ${r} than ${t} properties`},params:({schemaCode:e})=>(0,hD._)`{limit: ${e}}`},kDr={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:MDr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?hD.operators.GT:hD.operators.LT;e.fail$data((0,hD._)`Object.keys(${r}).length ${s} ${n}`)}};Qoe.default=kDr});var sYe=S(Woe=>{"use strict";Object.defineProperty(Woe,"__esModule",{value:!0});var pD=bd(),mD=Rr(),BDr=vn(),UDr={message:({params:{missingProperty:e}})=>(0,mD.str)`must have required property '${e}'`,params:({params:{missingProperty:e}})=>(0,mD._)`{missingProperty: ${e}}`},FDr={keyword:"required",type:"object",schemaType:"array",$data:!0,error:UDr,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:a}=e,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let h=e.parentSchema.properties,{definedProperties:p}=e.it;for(let m of r)if(h?.[m]===void 0&&!p.has(m)){let g=a.schemaEnv.baseId+a.errSchemaPath,_=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,BDr.checkStrictMode)(a,_,a.opts.strictRequired)}}function u(){if(c||i)e.block$data(mD.nil,d);else for(let h of r)(0,pD.checkReportMissingProp)(e,h)}function l(){let h=t.let("missing");if(c||i){let p=t.let("valid",!0);e.block$data(p,()=>f(h,p)),e.ok(p)}else t.if((0,pD.checkMissingProp)(e,r,h)),(0,pD.reportMissingProp)(e,h),t.else()}function d(){t.forOf("prop",n,h=>{e.setParams({missingProperty:h}),t.if((0,pD.noPropertyInData)(t,s,h,o.ownProperties),()=>e.error())})}function f(h,p){e.setParams({missingProperty:h}),t.forOf(h,n,()=>{t.assign(p,(0,pD.propertyInData)(t,s,h,o.ownProperties)),t.if((0,mD.not)(p),()=>{e.error(),t.break()})},mD.nil)}}};Woe.default=FDr});var iYe=S(Xoe=>{"use strict";Object.defineProperty(Xoe,"__esModule",{value:!0});var gD=Rr(),$Dr={message({keyword:e,schemaCode:t}){let r=e==="maxItems"?"more":"fewer";return(0,gD.str)`must NOT have ${r} than ${t} items`},params:({schemaCode:e})=>(0,gD._)`{limit: ${e}}`},qDr={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:$Dr,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?gD.operators.GT:gD.operators.LT;e.fail$data((0,gD._)`${r}.length ${s} ${n}`)}};Xoe.default=qDr});var P8=S(Joe=>{"use strict";Object.defineProperty(Joe,"__esModule",{value:!0});var aYe=hd();aYe.code='require("ajv/dist/runtime/equal").default';Joe.default=aYe});var oYe=S(ece=>{"use strict";Object.defineProperty(ece,"__esModule",{value:!0});var Zoe=rD(),Eo=Rr(),HDr=vn(),VDr=P8(),jDr={message:({params:{i:e,j:t}})=>(0,Eo.str)`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>(0,Eo._)`{i: ${e}, j: ${t}}`},KDr={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:jDr,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=e;if(!n&&!s)return;let c=t.let("valid"),u=i.items?(0,Zoe.getSchemaTypes)(i.items):[];e.block$data(c,l,(0,Eo._)`${a} === false`),e.ok(c);function l(){let p=t.let("i",(0,Eo._)`${r}.length`),m=t.let("j");e.setParams({i:p,j:m}),t.assign(c,!0),t.if((0,Eo._)`${p} > 1`,()=>(d()?f:h)(p,m))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,m){let g=t.name("item"),_=(0,Zoe.checkDataTypes)(u,g,o.opts.strictNumbers,Zoe.DataType.Wrong),y=t.const("indices",(0,Eo._)`{}`);t.for((0,Eo._)`;${p}--;`,()=>{t.let(g,(0,Eo._)`${r}[${p}]`),t.if(_,(0,Eo._)`continue`),u.length>1&&t.if((0,Eo._)`typeof ${g} == "string"`,(0,Eo._)`${g} += "_"`),t.if((0,Eo._)`typeof ${y}[${g}] == "number"`,()=>{t.assign(m,(0,Eo._)`${y}[${g}]`),e.error(),t.assign(c,!1).break()}).code((0,Eo._)`${y}[${g}] = ${p}`)})}function h(p,m){let g=(0,HDr.useFunc)(t,VDr.default),_=t.name("outer");t.label(_).for((0,Eo._)`;${p}--;`,()=>t.for((0,Eo._)`${m} = ${p}; ${m}--;`,()=>t.if((0,Eo._)`${g}(${r}[${p}], ${r}[${m}])`,()=>{e.error(),t.assign(c,!1).break(_)})))}}};ece.default=KDr});var cYe=S(rce=>{"use strict";Object.defineProperty(rce,"__esModule",{value:!0});var tce=Rr(),GDr=vn(),zDr=P8(),YDr={message:"must be equal to constant",params:({schemaCode:e})=>(0,tce._)`{allowedValue: ${e}}`},QDr={keyword:"const",$data:!0,error:YDr,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;n||i&&typeof i=="object"?e.fail$data((0,tce._)`!${(0,GDr.useFunc)(t,zDr.default)}(${r}, ${s})`):e.fail((0,tce._)`${i} !== ${r}`)}};rce.default=QDr});var uYe=S(nce=>{"use strict";Object.defineProperty(nce,"__esModule",{value:!0});var _D=Rr(),WDr=vn(),XDr=P8(),JDr={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>(0,_D._)`{allowedValues: ${e}}`},ZDr={keyword:"enum",schemaType:"array",$data:!0,error:JDr,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:a}=e;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,WDr.useFunc)(t,XDr.default)),l;if(o||n)l=t.let("valid"),e.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let h=t.const("vSchema",i);l=(0,_D.or)(...s.map((p,m)=>f(h,m)))}e.pass(l);function d(){t.assign(l,!1),t.forOf("v",i,h=>t.if((0,_D._)`${u()}(${r}, ${h})`,()=>t.assign(l,!0).break()))}function f(h,p){let m=s[p];return typeof m=="object"&&m!==null?(0,_D._)`${u()}(${r}, ${h}[${p}])`:(0,_D._)`${r} === ${m}`}}};nce.default=ZDr});var lYe=S(sce=>{"use strict";Object.defineProperty(sce,"__esModule",{value:!0});var ePr=Xze(),tPr=Jze(),rPr=tYe(),nPr=rYe(),sPr=nYe(),iPr=sYe(),aPr=iYe(),oPr=oYe(),cPr=cYe(),uPr=uYe(),lPr=[ePr.default,tPr.default,rPr.default,nPr.default,sPr.default,iPr.default,aPr.default,oPr.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},cPr.default,uPr.default];sce.default=lPr});var ace=S(AD=>{"use strict";Object.defineProperty(AD,"__esModule",{value:!0});AD.validateAdditionalItems=void 0;var Gv=Rr(),ice=vn(),dPr={message:({params:{len:e}})=>(0,Gv.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,Gv._)`{limit: ${e}}`},fPr={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:dPr,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){(0,ice.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}dYe(e,n)}};function dYe(e,t){let{gen:r,schema:n,data:s,keyword:i,it:a}=e;a.items=!0;let o=r.const("len",(0,Gv._)`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass((0,Gv._)`${o} <= ${t.length}`);else if(typeof n=="object"&&!(0,ice.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Gv._)`${o} <= ${t.length}`);r.if((0,Gv.not)(u),()=>c(u)),e.ok(u)}function c(u){r.forRange("i",t.length,o,l=>{e.subschema({keyword:i,dataProp:l,dataPropType:ice.Type.Num},u),a.allErrors||r.if((0,Gv.not)(u),()=>r.break())})}}AD.validateAdditionalItems=dYe;AD.default=fPr});var oce=S(ED=>{"use strict";Object.defineProperty(ED,"__esModule",{value:!0});ED.validateTuple=void 0;var fYe=Rr(),L8=vn(),hPr=bd(),pPr={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return hYe(e,"additionalItems",t);r.items=!0,!(0,L8.alwaysValidSchema)(r,t)&&e.ok((0,hPr.validateArray)(e))}};function hYe(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=e;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=L8.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,fYe._)`${i}.length`);r.forEach((d,f)=>{(0,L8.alwaysValidSchema)(o,d)||(n.if((0,fYe._)`${u} > ${f}`,()=>e.subschema({keyword:a,schemaProp:f,dataProp:f},c)),e.ok(c))});function l(d){let{opts:f,errSchemaPath:h}=o,p=r.length,m=p===d.minItems&&(p===d.maxItems||d[t]===!1);if(f.strictTuples&&!m){let g=`"${a}" is ${p}-tuple, but minItems or maxItems/${t} are not specified or different at path "${h}"`;(0,L8.checkStrictMode)(o,g,f.strictTuples)}}}ED.validateTuple=hYe;ED.default=pPr});var pYe=S(cce=>{"use strict";Object.defineProperty(cce,"__esModule",{value:!0});var mPr=oce(),gPr={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:e=>(0,mPr.validateTuple)(e,"items")};cce.default=gPr});var gYe=S(uce=>{"use strict";Object.defineProperty(uce,"__esModule",{value:!0});var mYe=Rr(),_Pr=vn(),APr=bd(),EPr=ace(),yPr={message:({params:{len:e}})=>(0,mYe.str)`must NOT have more than ${e} items`,params:({params:{len:e}})=>(0,mYe._)`{limit: ${e}}`},vPr={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:yPr,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;n.items=!0,!(0,_Pr.alwaysValidSchema)(n,t)&&(s?(0,EPr.validateAdditionalItems)(e,s):e.ok((0,APr.validateArray)(e)))}};uce.default=vPr});var _Ye=S(lce=>{"use strict";Object.defineProperty(lce,"__esModule",{value:!0});var Rd=Rr(),M8=vn(),SPr={message:({params:{min:e,max:t}})=>t===void 0?(0,Rd.str)`must contain at least ${e} valid item(s)`:(0,Rd.str)`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?(0,Rd._)`{minContains: ${e}}`:(0,Rd._)`{minContains: ${e}, maxContains: ${t}}`},TPr={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:SPr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=t.const("len",(0,Rd._)`${s}.length`);if(e.setParams({min:a,max:o}),o===void 0&&a===0){(0,M8.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,M8.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if((0,M8.alwaysValidSchema)(i,r)){let m=(0,Rd._)`${l} >= ${a}`;o!==void 0&&(m=(0,Rd._)`${m} && ${l} <= ${o}`),e.pass(m);return}i.items=!0;let d=t.name("valid");o===void 0&&a===1?h(d,()=>t.if(d,()=>t.break())):a===0?(t.let(d,!0),o!==void 0&&t.if((0,Rd._)`${s}.length > 0`,f)):(t.let(d,!1),f()),e.result(d,()=>e.reset());function f(){let m=t.name("_valid"),g=t.let("count",0);h(m,()=>t.if(m,()=>p(g)))}function h(m,g){t.forRange("i",0,l,_=>{e.subschema({keyword:"contains",dataProp:_,dataPropType:M8.Type.Num,compositeRule:!0},m),g()})}function p(m){t.code((0,Rd._)`${m}++`),o===void 0?t.if((0,Rd._)`${m} >= ${a}`,()=>t.assign(d,!0).break()):(t.if((0,Rd._)`${m} > ${o}`,()=>t.assign(d,!1).break()),a===1?t.assign(d,!0):t.if((0,Rd._)`${m} >= ${a}`,()=>t.assign(d,!0)))}}};lce.default=TPr});var yYe=S(vh=>{"use strict";Object.defineProperty(vh,"__esModule",{value:!0});vh.validateSchemaDeps=vh.validatePropertyDeps=vh.error=void 0;var dce=Rr(),bPr=vn(),yD=bd();vh.error={message:({params:{property:e,depsCount:t,deps:r}})=>{let n=t===1?"property":"properties";return(0,dce.str)`must have ${n} ${r} when property ${e} is present`},params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>(0,dce._)`{property: ${e}, missingProperty: ${n}, depsCount: ${t}, - deps: ${r}}`};var O0r={keyword:"dependencies",type:"object",schemaType:"object",error:Jf.error,code(e){let[t,r]=P0r(e);bUe(e,t),EUe(e,r)}};function P0r({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let i=Array.isArray(e[n])?t:r;i[n]=e[n]}return[t,r]}function bUe(e,t=e.schema){let{gen:r,data:n,it:i}=e;if(Object.keys(t).length===0)return;let s=r.let("missing");for(let a in t){let o=t[a];if(o.length===0)continue;let u=(0,gN.propertyInData)(r,n,a,i.opts.ownProperties);e.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),i.allErrors?r.if(u,()=>{for(let c of o)(0,gN.checkReportMissingProp)(e,c)}):(r.if((0,Wte._)`${u} && (${(0,gN.checkMissingProp)(e,o,s)})`),(0,gN.reportMissingProp)(e,s),r.else())}}Jf.validatePropertyDeps=bUe;function EUe(e,t=e.schema){let{gen:r,data:n,keyword:i,it:s}=e,a=r.name("valid");for(let o in t)(0,k0r.alwaysValidSchema)(s,t[o])||(r.if((0,gN.propertyInData)(r,n,o,s.opts.ownProperties),()=>{let u=e.subschema({keyword:i,schemaProp:o},a);e.mergeValidEvaluated(u,a)},()=>r.var(a,!0)),e.ok(a))}Jf.validateSchemaDeps=EUe;Jf.default=O0r});var IUe=b(Xte=>{"use strict";Object.defineProperty(Xte,"__esModule",{value:!0});var wUe=Xt(),M0r=Br(),L0r={message:"property name must be valid",params:({params:e})=>(0,wUe._)`{propertyName: ${e.propertyName}}`},B0r={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:L0r,code(e){let{gen:t,schema:r,data:n,it:i}=e;if((0,M0r.alwaysValidSchema)(i,r))return;let s=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},s),t.if((0,wUe.not)(s),()=>{e.error(!0),i.allErrors||t.break()})}),e.ok(s)}};Xte.default=B0r});var Zte=b(Jte=>{"use strict";Object.defineProperty(Jte,"__esModule",{value:!0});var G$=fl(),xd=Xt(),$0r=Vh(),Y$=Br(),F0r={message:"must NOT have additional properties",params:({params:e})=>(0,xd._)`{additionalProperty: ${e.additionalProperty}}`},U0r={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:F0r,code(e){let{gen:t,schema:r,parentSchema:n,data:i,errsCount:s,it:a}=e;if(!s)throw new Error("ajv implementation error");let{allErrors:o,opts:u}=a;if(a.props=!0,u.removeAdditional!=="all"&&(0,Y$.alwaysValidSchema)(a,r))return;let c=(0,G$.allSchemaProperties)(n.properties),l=(0,G$.allSchemaProperties)(n.patternProperties);d(),e.ok((0,xd._)`${s} === ${$0r.default.errors}`);function d(){t.forIn("key",i,y=>{!c.length&&!l.length?h(y):t.if(f(y),()=>h(y))})}function f(y){let g;if(c.length>8){let v=(0,Y$.schemaRefOrVal)(a,n.properties,"properties");g=(0,G$.isOwnProperty)(t,v,y)}else c.length?g=(0,xd.or)(...c.map(v=>(0,xd._)`${y} === ${v}`)):g=xd.nil;return l.length&&(g=(0,xd.or)(g,...l.map(v=>(0,xd._)`${(0,G$.usePattern)(e,v)}.test(${y})`))),(0,xd.not)(g)}function p(y){t.code((0,xd._)`delete ${i}[${y}]`)}function h(y){if(u.removeAdditional==="all"||u.removeAdditional&&r===!1){p(y);return}if(r===!1){e.setParams({additionalProperty:y}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,Y$.alwaysValidSchema)(a,r)){let g=t.name("valid");u.removeAdditional==="failing"?(m(y,g,!1),t.if((0,xd.not)(g),()=>{e.reset(),p(y)})):(m(y,g),o||t.if((0,xd.not)(g),()=>t.break()))}}function m(y,g,v){let A={keyword:"additionalProperties",dataProp:y,dataPropType:Y$.Type.Str};v===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,g)}}};Jte.default=U0r});var TUe=b(tre=>{"use strict";Object.defineProperty(tre,"__esModule",{value:!0});var q0r=rN(),xUe=fl(),ere=Br(),CUe=Zte(),j0r={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:i,it:s}=e;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&CUe.default.code(new q0r.KeywordCxt(s,CUe.default,"additionalProperties"));let a=(0,xUe.allSchemaProperties)(r);for(let d of a)s.definedProperties.add(d);s.opts.unevaluated&&a.length&&s.props!==!0&&(s.props=ere.mergeEvaluated.props(t,(0,ere.toHash)(a),s.props));let o=a.filter(d=>!(0,ere.alwaysValidSchema)(s,r[d]));if(o.length===0)return;let u=t.name("valid");for(let d of o)c(d)?l(d):(t.if((0,xUe.propertyInData)(t,i,d,s.opts.ownProperties)),l(d),s.allErrors||t.else().var(u,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(u);function c(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},u)}}};tre.default=j0r});var kUe=b(rre=>{"use strict";Object.defineProperty(rre,"__esModule",{value:!0});var NUe=fl(),W$=Xt(),RUe=Br(),DUe=Br(),H0r={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:i,it:s}=e,{opts:a}=s,o=(0,NUe.allSchemaProperties)(r),u=o.filter(m=>(0,RUe.alwaysValidSchema)(s,r[m]));if(o.length===0||u.length===o.length&&(!s.opts.unevaluated||s.props===!0))return;let c=a.strictSchema&&!a.allowMatchingProperties&&i.properties,l=t.name("valid");s.props!==!0&&!(s.props instanceof W$.Name)&&(s.props=(0,DUe.evaluatedPropsToName)(t,s.props));let{props:d}=s;f();function f(){for(let m of o)c&&p(m),s.allErrors?h(m):(t.var(l,!0),h(m),t.if(l))}function p(m){for(let y in c)new RegExp(m).test(y)&&(0,RUe.checkStrictMode)(s,`property ${y} matches pattern ${m} (use allowMatchingProperties)`)}function h(m){t.forIn("key",n,y=>{t.if((0,W$._)`${(0,NUe.usePattern)(e,m)}.test(${y})`,()=>{let g=u.includes(m);g||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:y,dataPropType:DUe.Type.Str},l),s.opts.unevaluated&&d!==!0?t.assign((0,W$._)`${d}[${y}]`,!0):!g&&!s.allErrors&&t.if((0,W$.not)(l),()=>t.break())})})}}};rre.default=H0r});var OUe=b(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});var K0r=Br(),V0r={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,K0r.alwaysValidSchema)(n,r)){e.fail();return}let i=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},i),e.failResult(i,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};nre.default=V0r});var PUe=b(ire=>{"use strict";Object.defineProperty(ire,"__esModule",{value:!0});var z0r=fl(),Q0r={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:z0r.validateUnion,error:{message:"must match a schema in anyOf"}};ire.default=Q0r});var MUe=b(sre=>{"use strict";Object.defineProperty(sre,"__esModule",{value:!0});var X$=Xt(),G0r=Br(),Y0r={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,X$._)`{passingSchemas: ${e.passing}}`},W0r={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Y0r,code(e){let{gen:t,schema:r,parentSchema:n,it:i}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(i.opts.discriminator&&n.discriminator)return;let s=r,a=t.let("valid",!1),o=t.let("passing",null),u=t.name("_valid");e.setParams({passing:o}),t.block(c),e.result(a,()=>e.reset(),()=>e.error(!0));function c(){s.forEach((l,d)=>{let f;(0,G0r.alwaysValidSchema)(i,l)?t.var(u,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},u),d>0&&t.if((0,X$._)`${u} && ${a}`).assign(a,!1).assign(o,(0,X$._)`[${o}, ${d}]`).else(),t.if(u,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,X$.Name)})})}}};sre.default=W0r});var LUe=b(are=>{"use strict";Object.defineProperty(are,"__esModule",{value:!0});var X0r=Br(),J0r={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let i=t.name("valid");r.forEach((s,a)=>{if((0,X0r.alwaysValidSchema)(n,s))return;let o=e.subschema({keyword:"allOf",schemaProp:a},i);e.ok(i),e.mergeEvaluated(o)})}};are.default=J0r});var FUe=b(ore=>{"use strict";Object.defineProperty(ore,"__esModule",{value:!0});var J$=Xt(),$Ue=Br(),Z0r={message:({params:e})=>(0,J$.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,J$._)`{failingKeyword: ${e.ifClause}}`},egr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Z0r,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,$Ue.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let i=BUe(n,"then"),s=BUe(n,"else");if(!i&&!s)return;let a=t.let("valid",!0),o=t.name("_valid");if(u(),e.reset(),i&&s){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,c("then",l),c("else",l))}else i?t.if(o,c("then")):t.if((0,J$.not)(o),c("else"));e.pass(a,()=>e.error(!0));function u(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function c(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,J$._)`${l}`):e.setParams({ifClause:l})}}}};function BUe(e,t){let r=e.schema[t];return r!==void 0&&!(0,$Ue.alwaysValidSchema)(e,r)}ore.default=egr});var UUe=b(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});var tgr=Br(),rgr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,tgr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};ure.default=rgr});var qUe=b(cre=>{"use strict";Object.defineProperty(cre,"__esModule",{value:!0});var ngr=Vte(),igr=yUe(),sgr=zte(),agr=AUe(),ogr=vUe(),ugr=SUe(),cgr=IUe(),lgr=Zte(),dgr=TUe(),fgr=kUe(),pgr=OUe(),hgr=PUe(),mgr=MUe(),ggr=LUe(),ygr=FUe(),_gr=UUe();function Agr(e=!1){let t=[pgr.default,hgr.default,mgr.default,ggr.default,ygr.default,_gr.default,cgr.default,lgr.default,ugr.default,dgr.default,fgr.default];return e?t.push(igr.default,agr.default):t.push(ngr.default,sgr.default),t.push(ogr.default),t}cre.default=Agr});var jUe=b(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});var Zi=Xt(),vgr={message:({schemaCode:e})=>(0,Zi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Zi._)`{format: ${e}}`},bgr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:vgr,code(e,t){let{gen:r,data:n,$data:i,schema:s,schemaCode:a,it:o}=e,{opts:u,errSchemaPath:c,schemaEnv:l,self:d}=o;if(!u.validateFormats)return;i?f():p();function f(){let h=r.scopeValue("formats",{ref:d.formats,code:u.code.formats}),m=r.const("fDef",(0,Zi._)`${h}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,Zi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(y,(0,Zi._)`${m}.type || "string"`).assign(g,(0,Zi._)`${m}.validate`),()=>r.assign(y,(0,Zi._)`"string"`).assign(g,m)),e.fail$data((0,Zi.or)(v(),A()));function v(){return u.strictSchema===!1?Zi.nil:(0,Zi._)`${a} && !${g}`}function A(){let _=l.$async?(0,Zi._)`(${m}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,Zi._)`${g}(${n})`,E=(0,Zi._)`(typeof ${g} == "function" ? ${_} : ${g}.test(${n}))`;return(0,Zi._)`${g} && ${g} !== true && ${y} === ${t} && !${E}`}}function p(){let h=d.formats[s];if(!h){v();return}if(h===!0)return;let[m,y,g]=A(h);m===t&&e.pass(_());function v(){if(u.strictSchema===!1){d.logger.warn(E());return}throw new Error(E());function E(){return`unknown format "${s}" ignored in schema at path "${c}"`}}function A(E){let S=E instanceof RegExp?(0,Zi.regexpCode)(E):u.code.formats?(0,Zi._)`${u.code.formats}${(0,Zi.getProperty)(s)}`:void 0,C=r.scopeValue("formats",{key:s,ref:E,code:S});return typeof E=="object"&&!(E instanceof RegExp)?[E.type||"string",E.validate,(0,Zi._)`${C}.validate`]:["string",E,C]}function _(){if(typeof h=="object"&&!(h instanceof RegExp)&&h.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Zi._)`await ${g}(${n})`}return typeof y=="function"?(0,Zi._)`${g}(${n})`:(0,Zi._)`${g}.test(${n})`}}}};lre.default=bgr});var HUe=b(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});var Egr=jUe(),Sgr=[Egr.default];dre.default=Sgr});var KUe=b(yS=>{"use strict";Object.defineProperty(yS,"__esModule",{value:!0});yS.contentVocabulary=yS.metadataVocabulary=void 0;yS.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];yS.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var zUe=b(fre=>{"use strict";Object.defineProperty(fre,"__esModule",{value:!0});var wgr=Z8e(),Igr=pUe(),xgr=qUe(),Cgr=HUe(),VUe=KUe(),Tgr=[wgr.default,Igr.default,(0,xgr.default)(),Cgr.default,VUe.metadataVocabulary,VUe.contentVocabulary];fre.default=Tgr});var GUe=b(Z$=>{"use strict";Object.defineProperty(Z$,"__esModule",{value:!0});Z$.DiscrError=void 0;var QUe;(function(e){e.Tag="tag",e.Mapping="mapping"})(QUe||(Z$.DiscrError=QUe={}))});var WUe=b(hre=>{"use strict";Object.defineProperty(hre,"__esModule",{value:!0});var _S=Xt(),pre=GUe(),YUe=M$(),Ngr=nN(),Rgr=Br(),Dgr={message:({params:{discrError:e,tagName:t}})=>e===pre.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,_S._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},kgr={keyword:"discriminator",type:"object",schemaType:"object",error:Dgr,code(e){let{gen:t,data:r,schema:n,parentSchema:i,it:s}=e,{oneOf:a}=i;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=t.let("valid",!1),c=t.const("tag",(0,_S._)`${r}${(0,_S.getProperty)(o)}`);t.if((0,_S._)`typeof ${c} == "string"`,()=>l(),()=>e.error(!1,{discrError:pre.DiscrError.Tag,tag:c,tagName:o})),e.ok(u);function l(){let p=f();t.if(!1);for(let h in p)t.elseIf((0,_S._)`${c} === ${h}`),t.assign(u,d(p[h]));t.else(),e.error(!1,{discrError:pre.DiscrError.Mapping,tag:c,tagName:o}),t.endIf()}function d(p){let h=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:p},h);return e.mergeEvaluated(m,_S.Name),h}function f(){var p;let h={},m=g(i),y=!0;for(let _=0;_{Ogr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var ZUe=b((ci,mre)=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});ci.MissingRefError=ci.ValidationError=ci.CodeGen=ci.Name=ci.nil=ci.stringify=ci.str=ci._=ci.KeywordCxt=ci.Ajv=void 0;var Pgr=Q8e(),Mgr=zUe(),Lgr=WUe(),JUe=XUe(),Bgr=["/properties"],e6="http://json-schema.org/draft-07/schema",AS=class extends Pgr.default{_addVocabularies(){super._addVocabularies(),Mgr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(Lgr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(JUe,Bgr):JUe;this.addMetaSchema(t,e6,!1),this.refs["http://json-schema.org/schema"]=e6}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(e6)?e6:void 0)}};ci.Ajv=AS;mre.exports=ci=AS;mre.exports.Ajv=AS;Object.defineProperty(ci,"__esModule",{value:!0});ci.default=AS;var $gr=rN();Object.defineProperty(ci,"KeywordCxt",{enumerable:!0,get:function(){return $gr.KeywordCxt}});var vS=Xt();Object.defineProperty(ci,"_",{enumerable:!0,get:function(){return vS._}});Object.defineProperty(ci,"str",{enumerable:!0,get:function(){return vS.str}});Object.defineProperty(ci,"stringify",{enumerable:!0,get:function(){return vS.stringify}});Object.defineProperty(ci,"nil",{enumerable:!0,get:function(){return vS.nil}});Object.defineProperty(ci,"Name",{enumerable:!0,get:function(){return vS.Name}});Object.defineProperty(ci,"CodeGen",{enumerable:!0,get:function(){return vS.CodeGen}});var Fgr=O$();Object.defineProperty(ci,"ValidationError",{enumerable:!0,get:function(){return Fgr.default}});var Ugr=nN();Object.defineProperty(ci,"MissingRefError",{enumerable:!0,get:function(){return Ugr.default}})});var eqe=b(bS=>{"use strict";Object.defineProperty(bS,"__esModule",{value:!0});bS.formatLimitDefinition=void 0;var qgr=ZUe(),Cd=Xt(),Pg=Cd.operators,t6={formatMaximum:{okStr:"<=",ok:Pg.LTE,fail:Pg.GT},formatMinimum:{okStr:">=",ok:Pg.GTE,fail:Pg.LT},formatExclusiveMaximum:{okStr:"<",ok:Pg.LT,fail:Pg.GTE},formatExclusiveMinimum:{okStr:">",ok:Pg.GT,fail:Pg.LTE}},jgr={message:({keyword:e,schemaCode:t})=>Cd.str`should be ${t6[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Cd._`{comparison: ${t6[e].okStr}, limit: ${t}}`};bS.formatLimitDefinition={keyword:Object.keys(t6),type:"string",schemaType:"string",$data:!0,error:jgr,code(e){let{gen:t,data:r,schemaCode:n,keyword:i,it:s}=e,{opts:a,self:o}=s;if(!a.validateFormats)return;let u=new qgr.KeywordCxt(s,o.RULES.all.format.definition,"format");u.$data?c():l();function c(){let f=t.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=t.const("fmt",Cd._`${f}[${u.schemaCode}]`);e.fail$data(Cd.or(Cd._`typeof ${p} != "object"`,Cd._`${p} instanceof RegExp`,Cd._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=u.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${i}": format "${f}" does not define "compare" function`);let h=t.scopeValue("formats",{key:f,ref:p,code:a.code.formats?Cd._`${a.code.formats}${Cd.getProperty(f)}`:void 0});e.fail$data(d(h))}function d(f){return Cd._`${f}.compare(${r}, ${n}) ${t6[i].fail} 0`}},dependencies:["format"]};var Hgr=e=>(e.addKeyword(bS.formatLimitDefinition),e);bS.default=Hgr});var iqe=b((yN,nqe)=>{"use strict";Object.defineProperty(yN,"__esModule",{value:!0});var ES=C5e(),Kgr=eqe(),gre=Xt(),tqe=new gre.Name("fullFormats"),Vgr=new gre.Name("fastFormats"),yre=(e,t={keywords:!0})=>{if(Array.isArray(t))return rqe(e,t,ES.fullFormats,tqe),e;let[r,n]=t.mode==="fast"?[ES.fastFormats,Vgr]:[ES.fullFormats,tqe],i=t.formats||ES.formatNames;return rqe(e,i,r,n),t.keywords&&Kgr.default(e),e};yre.get=(e,t="full")=>{let n=(t==="fast"?ES.fastFormats:ES.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function rqe(e,t,r,n){var i,s;(i=(s=e.opts.code).formats)!==null&&i!==void 0||(s.formats=gre._`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}nqe.exports=yN=yre;Object.defineProperty(yN,"__esModule",{value:!0});yN.default=yre});var oqe=b((ARn,aqe)=>{"use strict";var zgr=IFe().default,Qgr=Cee(),sqe=Tee(),_re=class{constructor(t,r){r.mode==="JTD"?this.ajv=new Qgr(Object.assign({},sqe,r.customOptions)):this.ajv=new zgr(Object.assign({},sqe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let s of r.plugins)Array.isArray(s)?(n=n&&s[0].name!=="formatsPlugin",s[0](this.ajv,s[1])):(n=n&&s.name!=="formatsPlugin",s(this.ajv));n&&iqe()(this.ajv),r.onCreate?.(this.ajv);let i=Object.values(t);for(let s of i)this.ajv.addSchema(s)}buildValidatorFunction({schema:t}){if(t.$id){let r=this.ajv.getSchema(t.$id);if(r)return r}return this.ajv.compile(t)}};aqe.exports=_re});var cqe=b((vRn,uqe)=>{"use strict";var Ggr=Cee(),Ygr=Tee(),Are=class{constructor(t,r){this.ajv=new Ggr(Object.assign({},Ygr,r))}buildSerializerFunction({schema:t}){return this.ajv.compileSerializer(t)}};uqe.exports=Are});var fqe=b((AN,dqe)=>{"use strict";Object.defineProperty(AN,"__esModule",{value:!0});var _N=$3(),Td=P1();function lqe(e,t){if(!e.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=e.scope.opts;return typeof t=="function"?i(t.source):t!==void 0?s(t,n):s(e.schemas,o=>o.meta?void 0:e.compile(o.schema));function n(o){let u=e.getSchema(o);if(!u)throw new Error(`moduleCode: no schema with id ${o}`);return u}function i(o){let u={},c=o?.validateName,l=a(u,o);return e.opts.code.esm?`"use strict";${r}export const validate = ${c};${r}export default ${c};${r}${l}`:`"use strict";${r}module.exports = ${c};${r}module.exports.default = ${c};${r}${l}`}function s(o,u){var c;let l={},d=(0,Td._)`"use strict";`;for(let f in o){let p=u(o[f]);if(p){let h=a(l,p.source),m=e.opts.code.esm?(0,Td._)`export const ${(0,Td.getEsmExportName)(f)}`:(0,Td._)`exports${(0,Td.getProperty)(f)}`;d=(0,Td._)`${d}${r}${m} = ${(c=p.source)===null||c===void 0?void 0:c.validateName};${r}${h}`}}return`${d}`}function a(o,u){if(!u)throw new Error('moduleCode: function does not have "source" property');if(f(u.validateName)===_N.UsedValueState.Completed)return Td.nil;p(u.validateName,_N.UsedValueState.Started);let c=e.scope.scopeCode(u.scopeValues,o,d),l=new Td._Code(`${c}${r}${u.validateCode}`);return u.evaluated?(0,Td._)`${l}${u.validateName}.evaluated = ${u.evaluated};${r}`:l;function d(h){var m;let y=(m=h.value)===null||m===void 0?void 0:m.ref;if(h.prefix==="validate"&&typeof y=="function")return a(o,y.source);if((h.prefix==="root"||h.prefix==="wrapper")&&typeof y=="object"){let{validate:g,validateName:v}=y;if(!v)throw new Error("ajv internal error");let A=e.opts.code.es5?_N.varKinds.var:_N.varKinds.const,_=(0,Td._)`${A} ${h} = {validate: ${v}};`;if(f(v)===_N.UsedValueState.Started)return _;let E=a(o,g?.source);return(0,Td._)`${_}${r}${E}`}}function f(h){var m;return(m=o[h.prefix])===null||m===void 0?void 0:m.get(h)}function p(h,m){let{prefix:y}=h;(o[y]=o[y]||new Map).set(h,m)}}}dqe.exports=AN=lqe;Object.defineProperty(AN,"__esModule",{value:!0});AN.default=lqe});var mqe=b((bRn,hqe)=>{"use strict";var pqe=vre(),Wgr=fqe().default;function Xgr(e={readMode:!0}){if(e.readMode===!0&&!e.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(e.readMode!==!0&&!e.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(e.readMode===!0)return function(){return function(n){return e.restoreFunction(n)}};let t=pqe();return function(n,i={}){(!i.customOptions||!i.customOptions.code)&&(i.customOptions=Object.assign({},i.customOptions,{code:{source:!0}}));let s=t(n,i);return function(a){let o=s(a),u=Wgr(s[pqe.AjvReference].ajv,o);return e.storeFunction(a,u),o}}}hqe.exports=Xgr});var vre=b((ERn,SS)=>{"use strict";var yqe=Symbol.for("fastify.ajv-compiler.reference"),Jgr=oqe(),Zgr=cqe();function bre(e){let t=new Map,r=new Map;return e&&e.jtdSerializer===!0?function(i,s){let a=gqe({},s);if(r.has(a))return r.get(a);let o=new Zgr(i,s),u=o.buildSerializerFunction.bind(o);return r.set(a,u),u}:function(i,s){let a=gqe(i,s.customOptions);if(t.has(a))return t.get(a);let o=new Jgr(i,s),u=o.buildValidatorFunction.bind(o);return t.set(a,u),s.customOptions.code!==void 0&&(u[yqe]=o),u}}function gqe(e,t){let r=JSON.stringify(e),n=JSON.stringify(t);return`${r}${n}`}SS.exports=bre;SS.exports.default=bre;SS.exports.AjvCompiler=bre;SS.exports.AjvReference=yqe;SS.exports.StandaloneValidator=mqe()});var Ere=b((SRn,_qe)=>{"use strict";var{buildSchemas:eyr}=hT(),tyr=dJ(),ryr=vre();function nyr(e,t){if(e)return new wS(e,t);let r=Object.assign({buildValidator:null,buildSerializer:null},t?.compilersFactory);r.buildValidator||(r.buildValidator=ryr()),r.buildSerializer||(r.buildSerializer=tyr());let n={bucket:t&&t.bucket||eyr,compilersFactory:r,isCustomValidatorCompiler:typeof t?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof t?.compilersFactory?.buildValidator=="function"};return new wS(void 0,n)}var wS=class{constructor(t,r){this.opts=r||t?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,t?(this.schemaBucket=this.opts.bucket(t.getSchemas()),this.validatorCompiler=t.getValidatorCompiler(),this.serializerCompiler=t.getSerializerCompiler(),this.isCustomValidatorCompiler=t.isCustomValidatorCompiler,this.isCustomSerializerCompiler=t.isCustomSerializerCompiler,this.parent=t):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(t){return this.addedSchemas=!0,this.schemaBucket.add(t)}getSchema(t){return this.schemaBucket.getSchema(t)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(t){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>t}),this.validatorCompiler=t,this.isCustomValidatorCompiler=!0}setSerializerCompiler(t){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>t}),this.serializerCompiler=t,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(t){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),t.ajv))}setupSerializer(t){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),t.serializerOpts))}};wS.buildSchemaController=nyr;_qe.exports=wS});var Tre=b((wRn,Cre)=>{"use strict";var Sre=OX(),Ire=require("node:assert"),xre=Symbol.for("registered-plugin"),{kTestInternals:iyr}=Vs(),{exist:syr,existReply:ayr,existRequest:oyr}=HX(),{FST_ERR_PLUGIN_VERSION_MISMATCH:uyr,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:cyr}=Wa(),{FSTWRN002:lyr}=Eh();function vN(e){return e[Symbol.for("plugin-meta")]}function Aqe(e){let t=vqe(e);if(t)return t;let r=require.cache;if(r){let n=Object.keys(r);for(let i=0;it.trim()).join(" -- ")}function vqe(e){return e[Symbol.for("fastify.display-name")]}function bqe(e){return!!e[Symbol.for("skip-override")]}function Eqe(e){let t=vN(e);if(!t)return;let r=t.dependencies;r&&(Ire(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{Ire(this[xre].indexOf(n)>-1,`The dependency '${n}' of plugin '${t.name}' is not registered`)}))}function Sqe(e){let t=vN(e);if(!t)return;let{decorators:r,name:n}=t;r&&(r.fastify&&wre(this,"Fastify",r.fastify,n),r.reply&&wre(this,"Reply",r.reply,n),r.request&&wre(this,"Request",r.request,n))}var fyr={Fastify:syr,Request:oyr,Reply:ayr};function wre(e,t,r,n){Ire(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(i=>{let s=typeof n=="string"?` required by '${n}'`:"";if(!fyr[t].call(e,i))throw new cyr(i,s,t)})}function pyr(e){let t=vN(e);if(!t)return;let r=t.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&Sre.gt(this.version,Sre.coerce(r))===!0)&&r&&Sre.satisfies(this.version,r,{includePrerelease:n})===!1)throw new uyr(t.name,r,this.version)}function hyr(e){let t=vN(e);if(!t)return;let r=t.name;if(r)return this[xre].push(r),r}function myr(e,t){e.constructor.name==="AsyncFunction"&&e.length===3&&lyr(t||"anonymous")}function gyr(e){let t=hyr.call(this,e)||Aqe(e);return myr.call(this,e,t),pyr.call(this,e),Sqe.call(this,e),Eqe.call(this,e),bqe(e)}Cre.exports={getPluginName:Aqe,getFuncPreview:dyr,kRegisteredPlugins:xre,getDisplayName:vqe,registerPlugin:gyr};Cre.exports[iyr]={shouldSkipOverride:bqe,getMeta:vN,checkDecorators:Sqe,checkDependencies:Eqe}});var r6=b((IRn,wqe)=>{"use strict";function yyr(e,t){let r=t||Ayr();return e?vyr(e,r):r}function _yr(e,t){return e.genReqId(t)}function Ayr(){let t=0;return function(){return t=t+1&2147483647,`req-${t.toString(36)}`}}function vyr(e,t){return function(r){return r.headers[e]||t(r)}}wqe.exports={getGenReqId:_yr,reqIdGenFactory:yyr}});var Tqe=b((xRn,Cqe)=>{"use strict";var Iqe=12,byr=0,Nre=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function Eyr(e){var t=e.indexOf("%");if(t===-1)return e;for(var r=e.length,n="",i=0,s=0,a=t,o=Iqe;t>-1&&t>10),56320+(s&1023)),s=0,i=t+3,t=a=e.indexOf("%",i);else{if(o===byr)return null;if(t+=3,t{"use strict";var Nqe=Tqe(),Rqe=/\+/g,Dqe=function(){};Dqe.prototype=Object.create(null);function wyr(e){let t=new Dqe;if(typeof e!="string")return t;let r=e.length,n="",i="",s=-1,a=-1,o=!1,u=!1,c=!1,l=!1,d=!1,f=0;for(let p=0;ps,d||(a=p),n=e.slice(s+1,a),d||n.length>0){c&&(n=n.replace(Rqe," ")),o&&(n=Nqe(n)||n),d&&(i=e.slice(a+1,p),l&&(i=i.replace(Rqe," ")),u&&(i=Nqe(i)||i));let h=t[n];h===void 0?t[n]=i:h.pop?h.push(i):t[n]=[h,i]}i="",s=p,a=p,o=!1,u=!1,c=!1,l=!1}else f===61?a<=s?a=p:u=!0:f===43?a>s?l=!0:c=!0:f===37&&(a>s?u=!0:o=!0);return t}kqe.exports=wyr});var Mqe=b((TRn,Pqe)=>{var Zf=Array.from({length:256},(e,t)=>"%"+((t<16?"0":"")+t.toString(16)).toUpperCase()),Iyr=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function xyr(e){let t=e.length;if(t===0)return"";let r="",n=0,i=0;e:for(;i>6]+Zf[128|s&63];continue}if(s<55296||s>=57344){n=i+1,r+=Zf[224|s>>12]+Zf[128|s>>6&63]+Zf[128|s&63];continue}if(++i,i>=t)throw new Error("URI malformed");let a=e.charCodeAt(i)&1023;n=i+1,s=65536+((s&1023)<<10|a),r+=Zf[240|s>>18]+Zf[128|s>>12&63]+Zf[128|s>>6&63]+Zf[128|s&63]}return n===0?e:n{"use strict";var{encodeString:Rre}=Mqe();function Lqe(e){let t=typeof e;return t==="string"?Rre(e):t==="bigint"?e.toString():t==="boolean"?e?"true":"false":t==="number"&&Number.isFinite(e)?e<1e21?""+e:Rre(""+e):""}function Cyr(e){let t="";if(e===null||typeof e!="object")return t;let r="&",n=Object.keys(e),i=n.length,s=0;for(let a=0;a{"use strict";var Fqe=Oqe(),Uqe=$qe(),qqe={parse:Fqe,stringify:Uqe};bN.exports=qqe;bN.exports.default=qqe;bN.exports.parse=Fqe;bN.exports.stringify=Uqe});var Kqe=b(Hqe=>{"use strict";Object.defineProperty(Hqe,"__esModule",{value:!0})});var Vqe=b(EN=>{"use strict";Object.defineProperty(EN,"__esModule",{value:!0});EN.types=void 0;var Tyr;(function(e){e[e.ROOT=0]="ROOT",e[e.GROUP=1]="GROUP",e[e.POSITION=2]="POSITION",e[e.SET=3]="SET",e[e.RANGE=4]="RANGE",e[e.REPETITION=5]="REPETITION",e[e.REFERENCE=6]="REFERENCE",e[e.CHAR=7]="CHAR"})(Tyr=EN.types||(EN.types={}))});var Qqe=b(zqe=>{"use strict";Object.defineProperty(zqe,"__esModule",{value:!0})});var Yh=b(Gh=>{"use strict";var Nyr=Gh&&Gh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Dre=Gh&&Gh.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Nyr(t,e,r)};Object.defineProperty(Gh,"__esModule",{value:!0});Dre(Kqe(),Gh);Dre(Vqe(),Gh);Dre(Qqe(),Gh)});var n6=b(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.anyChar=co.notWhitespace=co.whitespace=co.notInts=co.ints=co.notWords=co.words=void 0;var un=Yh(),Gqe=()=>[{type:un.types.RANGE,from:48,to:57}],Yqe=()=>[{type:un.types.CHAR,value:95},{type:un.types.RANGE,from:97,to:122},{type:un.types.RANGE,from:65,to:90},{type:un.types.RANGE,from:48,to:57}],Wqe=()=>[{type:un.types.CHAR,value:9},{type:un.types.CHAR,value:10},{type:un.types.CHAR,value:11},{type:un.types.CHAR,value:12},{type:un.types.CHAR,value:13},{type:un.types.CHAR,value:32},{type:un.types.CHAR,value:160},{type:un.types.CHAR,value:5760},{type:un.types.RANGE,from:8192,to:8202},{type:un.types.CHAR,value:8232},{type:un.types.CHAR,value:8233},{type:un.types.CHAR,value:8239},{type:un.types.CHAR,value:8287},{type:un.types.CHAR,value:12288},{type:un.types.CHAR,value:65279}],Ryr=()=>[{type:un.types.CHAR,value:10},{type:un.types.CHAR,value:13},{type:un.types.CHAR,value:8232},{type:un.types.CHAR,value:8233}];co.words=()=>({type:un.types.SET,set:Yqe(),not:!1});co.notWords=()=>({type:un.types.SET,set:Yqe(),not:!0});co.ints=()=>({type:un.types.SET,set:Gqe(),not:!1});co.notInts=()=>({type:un.types.SET,set:Gqe(),not:!0});co.whitespace=()=>({type:un.types.SET,set:Wqe(),not:!1});co.notWhitespace=()=>({type:un.types.SET,set:Wqe(),not:!0});co.anyChar=()=>({type:un.types.SET,set:Ryr(),not:!0})});var Jqe=b(ml=>{"use strict";var Dyr=ml&&ml.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kyr=ml&&ml.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Oyr=ml&&ml.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Dyr(t,e,r);return kyr(t,e),t};Object.defineProperty(ml,"__esModule",{value:!0});ml.tokenizeClass=ml.strToChars=void 0;var Xqe=Yh(),IS=Oyr(n6()),Pyr="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";ml.strToChars=e=>{let t=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return e.replace(t,(r,n,i,s,a,o,u)=>{if(i)return r;let c=n?8:s?parseInt(s,16):a?parseInt(a,16):o?Pyr.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[u],l=String.fromCharCode(c);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};ml.tokenizeClass=(e,t)=>{var r,n,i,s,a,o,u;let c=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(e))!==null;){let p=(u=(o=(a=(s=(i=(n=(r=l[1]&&IS.words())!==null&&r!==void 0?r:l[2]&&IS.ints())!==null&&n!==void 0?n:l[3]&&IS.whitespace())!==null&&i!==void 0?i:l[4]&&IS.notWords())!==null&&s!==void 0?s:l[5]&&IS.notInts())!==null&&a!==void 0?a:l[6]&&IS.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:Xqe.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&u!==void 0?u:(d=l[16])&&{type:Xqe.types.CHAR,value:d.charCodeAt(0)};if(p)c.push(p);else return[c,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}});var kre=b(ep=>{"use strict";var Myr=ep&&ep.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Lyr=ep&&ep.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),eje=ep&&ep.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Myr(t,e,r);return Lyr(t,e),t};Object.defineProperty(ep,"__esModule",{value:!0});ep.tokenizer=void 0;var Zqe=eje(Jqe()),Oa=Yh(),GA=eje(n6());ep.tokenizer=e=>{let t=0,r,n={type:Oa.types.ROOT,stack:[]},i=n,s=n.stack,a=[],o=[],u=0,c=d=>{throw new SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${d-1}`)},l=Zqe.strToChars(e);for(;ti){let s=r.stack.splice(r.index+1);for(let a of n.slice(i))r.stack.push({type:Oa.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...s)}}}}});var rje=b(lo=>{"use strict";var $yr=lo&&lo.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Fyr=lo&&lo.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Uyr=lo&&lo.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&$yr(t,e,r);return Fyr(t,e),t};Object.defineProperty(lo,"__esModule",{value:!0});lo.NOTANYCHAR=lo.WHITESPACE=lo.WORDS=lo.INTS=void 0;var i6=Uyr(n6()),tje=Yh();function s6(e){let t={},r=0;for(let n of e)n.type===tje.types.CHAR&&(t[n.value]=!0),n.type===tje.types.RANGE&&(t[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},t),len:r}}lo.INTS=s6(i6.ints().set);lo.WORDS=s6(i6.words().set);lo.WHITESPACE=s6(i6.whitespace().set);lo.NOTANYCHAR=s6(i6.anyChar().set)});var ije=b(gl=>{"use strict";var qyr=gl&&gl.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),jyr=gl&&gl.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Hyr=gl&&gl.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&qyr(t,e,r);return jyr(t,e),t};Object.defineProperty(gl,"__esModule",{value:!0});gl.writeSetTokens=gl.setChar=void 0;var c6=Yh(),a6=Hyr(rje());function u6(e){return e===94?"\\^":e===92?"\\\\":e===93?"\\]":e===45?"\\-":String.fromCharCode(e)}gl.setChar=u6;function o6(e,{lookup:t,len:r}){if(r!==e.length)return!1;let n=t();for(let i of e){if(i.type===c6.types.SET)return!1;let s=i.type===c6.types.CHAR?i.value:`${i.from}-${i.to}`;if(n[s])n[s]=!1;else return!1}return!0}function nje(e,t=!1){if(o6(e.set,a6.INTS))return e.not?"\\D":"\\d";if(o6(e.set,a6.WORDS))return e.not?"\\W":"\\w";if(e.not&&o6(e.set,a6.NOTANYCHAR))return".";if(o6(e.set,a6.WHITESPACE))return e.not?"\\S":"\\s";let r="";for(let i=0;i{"use strict";Object.defineProperty(xS,"__esModule",{value:!0});xS.reconstruct=void 0;var Mg=Yh(),Ore=ije(),sje=e=>e.map(xS.reconstruct).join(""),aje=e=>{if("options"in e)return e.options.map(sje).join("|");if("stack"in e)return sje(e.stack);throw new Error("options or stack must be Root or Group token")};xS.reconstruct=e=>{switch(e.type){case Mg.types.ROOT:return aje(e);case Mg.types.CHAR:{let t=String.fromCharCode(e.value);return(/[[\\{}$^.|?*+()]/.test(t)?"\\":"")+t}case Mg.types.POSITION:return e.value==="^"||e.value==="$"?e.value:`\\${e.value}`;case Mg.types.REFERENCE:return`\\${e.value}`;case Mg.types.SET:return Ore.writeSetTokens(e);case Mg.types.GROUP:return`(${e.remember?"":e.followedBy?"?=":e.notFollowedBy?"?!":"?:"}${aje(e)})`;case Mg.types.REPETITION:{let{min:t,max:r}=e,n;return t===0&&r===1?n="?":t===1&&r===1/0?n="+":t===0&&r===1/0?n="*":r===1/0?n=`{${t},}`:t===r?n=`{${t}}`:n=`{${t},${r}}`,`${xS.reconstruct(e.value)}${n}`}case Mg.types.RANGE:return`${Ore.setChar(e.from)}-${Ore.setChar(e.to)}`;default:throw new Error(`Invalid token type ${e}`)}}});var cje=b((yl,l6)=>{"use strict";var Vyr=yl&&yl.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Mre=yl&&yl.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Vyr(t,e,r)};Object.defineProperty(yl,"__esModule",{value:!0});yl.types=void 0;var oje=Yh();Object.defineProperty(yl,"types",{enumerable:!0,get:function(){return oje.types}});Mre(kre(),yl);Mre(Pre(),yl);var uje=kre(),zyr=Pre();Mre(Yh(),yl);yl.default=uje.tokenizer;l6.exports=uje.tokenizer;l6.exports.types=oje.types;l6.exports.reconstruct=zyr.reconstruct});var dje=b((qRn,d6)=>{"use strict";var lje=cje(),Qyr=lje.types;function Lre(e,t){t||(t={});let r=t.limit===void 0?25:t.limit;Gyr(e)?e=e.source:typeof e!="string"&&(e=String(e));try{e=lje(e)}catch{return!1}let n=0;return function i(s,a){let o,u,c;if(s.type===Qyr.REPETITION&&(a++,n++,a>1||n>r))return!1;if(s.options){for(o=0,c=s.options.length;o{"use strict";fje.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let e={};return{get:t=>e[t]||null,set:(t,r)=>{e[t]=r}}},deriveConstraint:e=>e.method,mustMatchWhenDerived:!0}});var Aje=b((HRn,_je)=>{"use strict";var pje=tl(),hje=f6(),mje=Symbol("treeData");function gje(e,t=""){let r="",n=Object.keys(e);for(let i=0;i{for(let u of o)(0,yD.checkReportMissingProp)(e,u)}):(r.if((0,dce._)`${c} && (${(0,yD.checkMissingProp)(e,o,i)})`),(0,yD.reportMissingProp)(e,i),r.else())}}vh.validatePropertyDeps=AYe;function EYe(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,a=r.name("valid");for(let o in t)(0,bPr.alwaysValidSchema)(i,t[o])||(r.if((0,yD.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=e.subschema({keyword:s,schemaProp:o},a);e.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),e.ok(a))}vh.validateSchemaDeps=EYe;vh.default=IPr});var SYe=S(fce=>{"use strict";Object.defineProperty(fce,"__esModule",{value:!0});var vYe=Rr(),CPr=vn(),xPr={message:"property name must be valid",params:({params:e})=>(0,vYe._)`{propertyName: ${e.propertyName}}`},wPr={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:xPr,code(e){let{gen:t,schema:r,data:n,it:s}=e;if((0,CPr.alwaysValidSchema)(s,r))return;let i=t.name("valid");t.forIn("key",n,a=>{e.setParams({propertyName:a}),e.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),t.if((0,vYe.not)(i),()=>{e.error(!0),s.allErrors||t.break()})}),e.ok(i)}};fce.default=wPr});var pce=S(hce=>{"use strict";Object.defineProperty(hce,"__esModule",{value:!0});var k8=bd(),Hf=Rr(),NPr=Sm(),B8=vn(),OPr={message:"must NOT have additional properties",params:({params:e})=>(0,Hf._)`{additionalProperty: ${e.additionalProperty}}`},DPr={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:OPr,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=e;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,B8.alwaysValidSchema)(a,r))return;let u=(0,k8.allSchemaProperties)(n.properties),l=(0,k8.allSchemaProperties)(n.patternProperties);d(),e.ok((0,Hf._)`${i} === ${NPr.default.errors}`);function d(){t.forIn("key",s,g=>{!u.length&&!l.length?p(g):t.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let y=(0,B8.schemaRefOrVal)(a,n.properties,"properties");_=(0,k8.isOwnProperty)(t,y,g)}else u.length?_=(0,Hf.or)(...u.map(y=>(0,Hf._)`${g} === ${y}`)):_=Hf.nil;return l.length&&(_=(0,Hf.or)(_,...l.map(y=>(0,Hf._)`${(0,k8.usePattern)(e,y)}.test(${g})`))),(0,Hf.not)(_)}function h(g){t.code((0,Hf._)`delete ${s}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){h(g);return}if(r===!1){e.setParams({additionalProperty:g}),e.error(),o||t.break();return}if(typeof r=="object"&&!(0,B8.alwaysValidSchema)(a,r)){let _=t.name("valid");c.removeAdditional==="failing"?(m(g,_,!1),t.if((0,Hf.not)(_),()=>{e.reset(),h(g)})):(m(g,_),o||t.if((0,Hf.not)(_),()=>t.break()))}}function m(g,_,y){let A={keyword:"additionalProperties",dataProp:g,dataPropType:B8.Type.Str};y===!1&&Object.assign(A,{compositeRule:!0,createErrors:!1,allErrors:!1}),e.subschema(A,_)}}};hce.default=DPr});var IYe=S(gce=>{"use strict";Object.defineProperty(gce,"__esModule",{value:!0});var PPr=aD(),TYe=bd(),mce=vn(),bYe=pce(),LPr={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&bYe.default.code(new PPr.KeywordCxt(i,bYe.default,"additionalProperties"));let a=(0,TYe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=mce.mergeEvaluated.props(t,(0,mce.toHash)(a),i.props));let o=a.filter(d=>!(0,mce.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=t.name("valid");for(let d of o)u(d)?l(d):(t.if((0,TYe.propertyInData)(t,s,d,i.opts.ownProperties)),l(d),i.allErrors||t.else().var(c,!0),t.endIf()),e.it.definedProperties.add(d),e.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){e.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};gce.default=LPr});var wYe=S(_ce=>{"use strict";Object.defineProperty(_ce,"__esModule",{value:!0});var RYe=bd(),U8=Rr(),CYe=vn(),xYe=vn(),MPr={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:a}=i,o=(0,RYe.allSchemaProperties)(r),c=o.filter(m=>(0,CYe.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=t.name("valid");i.props!==!0&&!(i.props instanceof U8.Name)&&(i.props=(0,xYe.evaluatedPropsToName)(t,i.props));let{props:d}=i;f();function f(){for(let m of o)u&&h(m),i.allErrors?p(m):(t.var(l,!0),p(m),t.if(l))}function h(m){for(let g in u)new RegExp(m).test(g)&&(0,CYe.checkStrictMode)(i,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function p(m){t.forIn("key",n,g=>{t.if((0,U8._)`${(0,RYe.usePattern)(e,m)}.test(${g})`,()=>{let _=c.includes(m);_||e.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:xYe.Type.Str},l),i.opts.unevaluated&&d!==!0?t.assign((0,U8._)`${d}[${g}]`,!0):!_&&!i.allErrors&&t.if((0,U8.not)(l),()=>t.break())})})}}};_ce.default=MPr});var NYe=S(Ace=>{"use strict";Object.defineProperty(Ace,"__esModule",{value:!0});var kPr=vn(),BPr={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if((0,kPr.alwaysValidSchema)(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};Ace.default=BPr});var OYe=S(Ece=>{"use strict";Object.defineProperty(Ece,"__esModule",{value:!0});var UPr=bd(),FPr={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:UPr.validateUnion,error:{message:"must match a schema in anyOf"}};Ece.default=FPr});var DYe=S(yce=>{"use strict";Object.defineProperty(yce,"__esModule",{value:!0});var F8=Rr(),$Pr=vn(),qPr={message:"must match exactly one schema in oneOf",params:({params:e})=>(0,F8._)`{passingSchemas: ${e.passing}}`},HPr={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:qPr,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=t.let("valid",!1),o=t.let("passing",null),c=t.name("_valid");e.setParams({passing:o}),t.block(u),e.result(a,()=>e.reset(),()=>e.error(!0));function u(){i.forEach((l,d)=>{let f;(0,$Pr.alwaysValidSchema)(s,l)?t.var(c,!0):f=e.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&t.if((0,F8._)`${c} && ${a}`).assign(a,!1).assign(o,(0,F8._)`[${o}, ${d}]`).else(),t.if(c,()=>{t.assign(a,!0),t.assign(o,d),f&&e.mergeEvaluated(f,F8.Name)})})}}};yce.default=HPr});var PYe=S(vce=>{"use strict";Object.defineProperty(vce,"__esModule",{value:!0});var VPr=vn(),jPr={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=t.name("valid");r.forEach((i,a)=>{if((0,VPr.alwaysValidSchema)(n,i))return;let o=e.subschema({keyword:"allOf",schemaProp:a},s);e.ok(s),e.mergeEvaluated(o)})}};vce.default=jPr});var kYe=S(Sce=>{"use strict";Object.defineProperty(Sce,"__esModule",{value:!0});var $8=Rr(),MYe=vn(),KPr={message:({params:e})=>(0,$8.str)`must match "${e.ifClause}" schema`,params:({params:e})=>(0,$8._)`{failingKeyword: ${e.ifClause}}`},GPr={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:KPr,code(e){let{gen:t,parentSchema:r,it:n}=e;r.then===void 0&&r.else===void 0&&(0,MYe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=LYe(n,"then"),i=LYe(n,"else");if(!s&&!i)return;let a=t.let("valid",!0),o=t.name("_valid");if(c(),e.reset(),s&&i){let l=t.let("ifClause");e.setParams({ifClause:l}),t.if(o,u("then",l),u("else",l))}else s?t.if(o,u("then")):t.if((0,$8.not)(o),u("else"));e.pass(a,()=>e.error(!0));function c(){let l=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);e.mergeEvaluated(l)}function u(l,d){return()=>{let f=e.subschema({keyword:l},o);t.assign(a,o),e.mergeValidEvaluated(f,a),d?t.assign(d,(0,$8._)`${l}`):e.setParams({ifClause:l})}}}};function LYe(e,t){let r=e.schema[t];return r!==void 0&&!(0,MYe.alwaysValidSchema)(e,r)}Sce.default=GPr});var BYe=S(Tce=>{"use strict";Object.defineProperty(Tce,"__esModule",{value:!0});var zPr=vn(),YPr={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){t.if===void 0&&(0,zPr.checkStrictMode)(r,`"${e}" without "if" is ignored`)}};Tce.default=YPr});var UYe=S(bce=>{"use strict";Object.defineProperty(bce,"__esModule",{value:!0});var QPr=ace(),WPr=pYe(),XPr=oce(),JPr=gYe(),ZPr=_Ye(),eLr=yYe(),tLr=SYe(),rLr=pce(),nLr=IYe(),sLr=wYe(),iLr=NYe(),aLr=OYe(),oLr=DYe(),cLr=PYe(),uLr=kYe(),lLr=BYe();function dLr(e=!1){let t=[iLr.default,aLr.default,oLr.default,cLr.default,uLr.default,lLr.default,tLr.default,rLr.default,eLr.default,nLr.default,sLr.default];return e?t.push(WPr.default,JPr.default):t.push(QPr.default,XPr.default),t.push(ZPr.default),t}bce.default=dLr});var FYe=S(Ice=>{"use strict";Object.defineProperty(Ice,"__esModule",{value:!0});var Hi=Rr(),fLr={message:({schemaCode:e})=>(0,Hi.str)`must match format "${e}"`,params:({schemaCode:e})=>(0,Hi._)`{format: ${e}}`},hLr={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:fLr,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=e,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():h();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,Hi._)`${p}[${a}]`),g=r.let("fType"),_=r.let("format");r.if((0,Hi._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,Hi._)`${m}.type || "string"`).assign(_,(0,Hi._)`${m}.validate`),()=>r.assign(g,(0,Hi._)`"string"`).assign(_,m)),e.fail$data((0,Hi.or)(y(),A()));function y(){return c.strictSchema===!1?Hi.nil:(0,Hi._)`${a} && !${_}`}function A(){let E=l.$async?(0,Hi._)`(${m}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Hi._)`${_}(${n})`,v=(0,Hi._)`(typeof ${_} == "function" ? ${E} : ${_}.test(${n}))`;return(0,Hi._)`${_} && ${_} !== true && ${g} === ${t} && !${v}`}}function h(){let p=d.formats[i];if(!p){y();return}if(p===!0)return;let[m,g,_]=A(p);m===t&&e.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function A(v){let b=v instanceof RegExp?(0,Hi.regexpCode)(v):c.code.formats?(0,Hi._)`${c.code.formats}${(0,Hi.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:v,code:b});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,Hi._)`${I}.validate`]:["string",v,I]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Hi._)`await ${_}(${n})`}return typeof g=="function"?(0,Hi._)`${_}(${n})`:(0,Hi._)`${_}.test(${n})`}}}};Ice.default=hLr});var $Ye=S(Rce=>{"use strict";Object.defineProperty(Rce,"__esModule",{value:!0});var pLr=FYe(),mLr=[pLr.default];Rce.default=mLr});var qYe=S(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.contentVocabulary=FI.metadataVocabulary=void 0;FI.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];FI.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var VYe=S(Cce=>{"use strict";Object.defineProperty(Cce,"__esModule",{value:!0});var gLr=Wze(),_Lr=lYe(),ALr=UYe(),ELr=$Ye(),HYe=qYe(),yLr=[gLr.default,_Lr.default,(0,ALr.default)(),ELr.default,HYe.metadataVocabulary,HYe.contentVocabulary];Cce.default=yLr});var KYe=S(q8=>{"use strict";Object.defineProperty(q8,"__esModule",{value:!0});q8.DiscrError=void 0;var jYe;(function(e){e.Tag="tag",e.Mapping="mapping"})(jYe||(q8.DiscrError=jYe={}))});var zYe=S(wce=>{"use strict";Object.defineProperty(wce,"__esModule",{value:!0});var $I=Rr(),xce=KYe(),GYe=T8(),vLr=oD(),SLr=vn(),TLr={message:({params:{discrError:e,tagName:t}})=>e===xce.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>(0,$I._)`{error: ${e}, tag: ${r}, tagValue: ${t}}`},bLr={keyword:"discriminator",type:"object",schemaType:"object",error:TLr,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=t.let("valid",!1),u=t.const("tag",(0,$I._)`${r}${(0,$I.getProperty)(o)}`);t.if((0,$I._)`typeof ${u} == "string"`,()=>l(),()=>e.error(!1,{discrError:xce.DiscrError.Tag,tag:u,tagName:o})),e.ok(c);function l(){let h=f();t.if(!1);for(let p in h)t.elseIf((0,$I._)`${u} === ${p}`),t.assign(c,d(h[p]));t.else(),e.error(!1,{discrError:xce.DiscrError.Mapping,tag:u,tagName:o}),t.endIf()}function d(h){let p=t.name("valid"),m=e.subschema({keyword:"oneOf",schemaProp:h},p);return e.mergeEvaluated(m,$I.Name),p}function f(){var h;let p={},m=_(s),g=!0;for(let E=0;E{ILr.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var WYe=S((Xs,Nce)=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.MissingRefError=Xs.ValidationError=Xs.CodeGen=Xs.Name=Xs.nil=Xs.stringify=Xs.str=Xs._=Xs.KeywordCxt=Xs.Ajv=void 0;var RLr=jze(),CLr=VYe(),xLr=zYe(),QYe=YYe(),wLr=["/properties"],H8="http://json-schema.org/draft-07/schema",qI=class extends RLr.default{_addVocabularies(){super._addVocabularies(),CLr.default.forEach(t=>this.addVocabulary(t)),this.opts.discriminator&&this.addKeyword(xLr.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let t=this.opts.$data?this.$dataMetaSchema(QYe,wLr):QYe;this.addMetaSchema(t,H8,!1),this.refs["http://json-schema.org/schema"]=H8}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(H8)?H8:void 0)}};Xs.Ajv=qI;Nce.exports=Xs=qI;Nce.exports.Ajv=qI;Object.defineProperty(Xs,"__esModule",{value:!0});Xs.default=qI;var NLr=aD();Object.defineProperty(Xs,"KeywordCxt",{enumerable:!0,get:function(){return NLr.KeywordCxt}});var HI=Rr();Object.defineProperty(Xs,"_",{enumerable:!0,get:function(){return HI._}});Object.defineProperty(Xs,"str",{enumerable:!0,get:function(){return HI.str}});Object.defineProperty(Xs,"stringify",{enumerable:!0,get:function(){return HI.stringify}});Object.defineProperty(Xs,"nil",{enumerable:!0,get:function(){return HI.nil}});Object.defineProperty(Xs,"Name",{enumerable:!0,get:function(){return HI.Name}});Object.defineProperty(Xs,"CodeGen",{enumerable:!0,get:function(){return HI.CodeGen}});var OLr=v8();Object.defineProperty(Xs,"ValidationError",{enumerable:!0,get:function(){return OLr.default}});var DLr=oD();Object.defineProperty(Xs,"MissingRefError",{enumerable:!0,get:function(){return DLr.default}})});var XYe=S(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.formatLimitDefinition=void 0;var PLr=WYe(),Vf=Rr(),xA=Vf.operators,V8={formatMaximum:{okStr:"<=",ok:xA.LTE,fail:xA.GT},formatMinimum:{okStr:">=",ok:xA.GTE,fail:xA.LT},formatExclusiveMaximum:{okStr:"<",ok:xA.LT,fail:xA.GTE},formatExclusiveMinimum:{okStr:">",ok:xA.GT,fail:xA.LTE}},LLr={message:({keyword:e,schemaCode:t})=>Vf.str`should be ${V8[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>Vf._`{comparison: ${V8[e].okStr}, limit: ${t}}`};VI.formatLimitDefinition={keyword:Object.keys(V8),type:"string",schemaType:"string",$data:!0,error:LLr,code(e){let{gen:t,data:r,schemaCode:n,keyword:s,it:i}=e,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new PLr.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=t.scopeValue("formats",{ref:o.formats,code:a.code.formats}),h=t.const("fmt",Vf._`${f}[${c.schemaCode}]`);e.fail$data(Vf.or(Vf._`typeof ${h} != "object"`,Vf._`${h} instanceof RegExp`,Vf._`typeof ${h}.compare != "function"`,d(h)))}function l(){let f=c.schema,h=o.formats[f];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let p=t.scopeValue("formats",{key:f,ref:h,code:a.code.formats?Vf._`${a.code.formats}${Vf.getProperty(f)}`:void 0});e.fail$data(d(p))}function d(f){return Vf._`${f}.compare(${r}, ${n}) ${V8[s].fail} 0`}},dependencies:["format"]};var MLr=e=>(e.addKeyword(VI.formatLimitDefinition),e);VI.default=MLr});var tQe=S((vD,eQe)=>{"use strict";Object.defineProperty(vD,"__esModule",{value:!0});var jI=bGe(),kLr=XYe(),Oce=Rr(),JYe=new Oce.Name("fullFormats"),BLr=new Oce.Name("fastFormats"),Dce=(e,t={keywords:!0})=>{if(Array.isArray(t))return ZYe(e,t,jI.fullFormats,JYe),e;let[r,n]=t.mode==="fast"?[jI.fastFormats,BLr]:[jI.fullFormats,JYe],s=t.formats||jI.formatNames;return ZYe(e,s,r,n),t.keywords&&kLr.default(e),e};Dce.get=(e,t="full")=>{let n=(t==="fast"?jI.fastFormats:jI.fullFormats)[e];if(!n)throw new Error(`Unknown format "${e}"`);return n};function ZYe(e,t,r,n){var s,i;(s=(i=e.opts.code).formats)!==null&&s!==void 0||(i.formats=Oce._`require("ajv-formats/dist/formats").${n}`);for(let a of t)e.addFormat(a,r[a])}eQe.exports=vD=Dce;Object.defineProperty(vD,"__esModule",{value:!0});vD.default=Dce});var sQe=S((ezn,nQe)=>{"use strict";var ULr=SKe().default,FLr=Hae(),rQe=Vae(),Pce=class{constructor(t,r){r.mode==="JTD"?this.ajv=new FLr(Object.assign({},rQe,r.customOptions)):this.ajv=new ULr(Object.assign({},rQe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let i of r.plugins)Array.isArray(i)?(n=n&&i[0].name!=="formatsPlugin",i[0](this.ajv,i[1])):(n=n&&i.name!=="formatsPlugin",i(this.ajv));n&&tQe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(t);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:t}){if(t.$id){let r=this.ajv.getSchema(t.$id);if(r)return r}return this.ajv.compile(t)}};nQe.exports=Pce});var aQe=S((tzn,iQe)=>{"use strict";var $Lr=Hae(),qLr=Vae(),Lce=class{constructor(t,r){this.ajv=new $Lr(Object.assign({},qLr,r))}buildSerializerFunction({schema:t}){return this.ajv.compileSerializer(t)}};iQe.exports=Lce});var uQe=S((TD,cQe)=>{"use strict";Object.defineProperty(TD,"__esModule",{value:!0});var SD=R5(),jf=rI();function oQe(e,t){if(!e.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=e.scope.opts;return typeof t=="function"?s(t.source):t!==void 0?i(t,n):i(e.schemas,o=>o.meta?void 0:e.compile(o.schema));function n(o){let c=e.getSchema(o);if(!c)throw new Error(`moduleCode: no schema with id ${o}`);return c}function s(o){let c={},u=o?.validateName,l=a(c,o);return e.opts.code.esm?`"use strict";${r}export const validate = ${u};${r}export default ${u};${r}${l}`:`"use strict";${r}module.exports = ${u};${r}module.exports.default = ${u};${r}${l}`}function i(o,c){var u;let l={},d=(0,jf._)`"use strict";`;for(let f in o){let h=c(o[f]);if(h){let p=a(l,h.source),m=e.opts.code.esm?(0,jf._)`export const ${(0,jf.getEsmExportName)(f)}`:(0,jf._)`exports${(0,jf.getProperty)(f)}`;d=(0,jf._)`${d}${r}${m} = ${(u=h.source)===null||u===void 0?void 0:u.validateName};${r}${p}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===SD.UsedValueState.Completed)return jf.nil;h(c.validateName,SD.UsedValueState.Started);let u=e.scope.scopeCode(c.scopeValues,o,d),l=new jf._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,jf._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(p){var m;let g=(m=p.value)===null||m===void 0?void 0:m.ref;if(p.prefix==="validate"&&typeof g=="function")return a(o,g.source);if((p.prefix==="root"||p.prefix==="wrapper")&&typeof g=="object"){let{validate:_,validateName:y}=g;if(!y)throw new Error("ajv internal error");let A=e.opts.code.es5?SD.varKinds.var:SD.varKinds.const,E=(0,jf._)`${A} ${p} = {validate: ${y}};`;if(f(y)===SD.UsedValueState.Started)return E;let v=a(o,_?.source);return(0,jf._)`${E}${r}${v}`}}function f(p){var m;return(m=o[p.prefix])===null||m===void 0?void 0:m.get(p)}function h(p,m){let{prefix:g}=p;(o[g]=o[g]||new Map).set(p,m)}}}cQe.exports=TD=oQe;Object.defineProperty(TD,"__esModule",{value:!0});TD.default=oQe});var fQe=S((rzn,dQe)=>{"use strict";var lQe=Mce(),HLr=uQe().default;function VLr(e={readMode:!0}){if(e.readMode===!0&&!e.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(e.readMode!==!0&&!e.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(e.readMode===!0)return function(){return function(n){return e.restoreFunction(n)}};let t=lQe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=t(n,s);return function(a){let o=i(a),c=HLr(i[lQe.AjvReference].ajv,o);return e.storeFunction(a,c),o}}}dQe.exports=VLr});var Mce=S((nzn,KI)=>{"use strict";var pQe=Symbol.for("fastify.ajv-compiler.reference"),jLr=sQe(),KLr=aQe();function kce(e){let t=new Map,r=new Map;return e&&e.jtdSerializer===!0?function(s,i){let a=hQe({},i);if(r.has(a))return r.get(a);let o=new KLr(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=hQe(s,i.customOptions);if(t.has(a))return t.get(a);let o=new jLr(s,i),c=o.buildValidatorFunction.bind(o);return t.set(a,c),i.customOptions.code!==void 0&&(c[pQe]=o),c}}function hQe(e,t){let r=JSON.stringify(e),n=JSON.stringify(t);return`${r}${n}`}KI.exports=kce;KI.exports.default=kce;KI.exports.AjvCompiler=kce;KI.exports.AjvReference=pQe;KI.exports.StandaloneValidator=fQe()});var Bce=S((szn,mQe)=>{"use strict";var{buildSchemas:GLr}=AO(),zLr=Rse(),YLr=Mce();function QLr(e,t){if(e)return new GI(e,t);let r=Object.assign({buildValidator:null,buildSerializer:null},t?.compilersFactory);r.buildValidator||(r.buildValidator=YLr()),r.buildSerializer||(r.buildSerializer=zLr());let n={bucket:t&&t.bucket||GLr,compilersFactory:r,isCustomValidatorCompiler:typeof t?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof t?.compilersFactory?.buildValidator=="function"};return new GI(void 0,n)}var GI=class{constructor(t,r){this.opts=r||t?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,t?(this.schemaBucket=this.opts.bucket(t.getSchemas()),this.validatorCompiler=t.getValidatorCompiler(),this.serializerCompiler=t.getSerializerCompiler(),this.isCustomValidatorCompiler=t.isCustomValidatorCompiler,this.isCustomSerializerCompiler=t.isCustomSerializerCompiler,this.parent=t):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(t){return this.addedSchemas=!0,this.schemaBucket.add(t)}getSchema(t){return this.schemaBucket.getSchema(t)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(t){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>t}),this.validatorCompiler=t,this.isCustomValidatorCompiler=!0}setSerializerCompiler(t){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>t}),this.serializerCompiler=t,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(t){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),t.ajv))}setupSerializer(t){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),t.serializerOpts))}};GI.buildSchemaController=QLr;mQe.exports=GI});var Vce=S((izn,Hce)=>{"use strict";var Uce=zne(),$ce=require("node:assert"),qce=Symbol.for("registered-plugin"),{kTestInternals:WLr}=Ma(),{exist:XLr,existReply:JLr,existRequest:ZLr}=nse(),{FST_ERR_PLUGIN_VERSION_MISMATCH:eMr,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:tMr}=Bo(),{FSTWRN002:rMr}=Zp();function bD(e){return e[Symbol.for("plugin-meta")]}function gQe(e){let t=_Qe(e);if(t)return t;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;st.trim()).join(" -- ")}function _Qe(e){return e[Symbol.for("fastify.display-name")]}function AQe(e){return!!e[Symbol.for("skip-override")]}function EQe(e){let t=bD(e);if(!t)return;let r=t.dependencies;r&&($ce(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{$ce(this[qce].indexOf(n)>-1,`The dependency '${n}' of plugin '${t.name}' is not registered`)}))}function yQe(e){let t=bD(e);if(!t)return;let{decorators:r,name:n}=t;r&&(r.fastify&&Fce(this,"Fastify",r.fastify,n),r.reply&&Fce(this,"Reply",r.reply,n),r.request&&Fce(this,"Request",r.request,n))}var sMr={Fastify:XLr,Request:ZLr,Reply:JLr};function Fce(e,t,r,n){$ce(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!sMr[t].call(e,s))throw new tMr(s,i,t)})}function iMr(e){let t=bD(e);if(!t)return;let r=t.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&Uce.gt(this.version,Uce.coerce(r))===!0)&&r&&Uce.satisfies(this.version,r,{includePrerelease:n})===!1)throw new eMr(t.name,r,this.version)}function aMr(e){let t=bD(e);if(!t)return;let r=t.name;if(r)return this[qce].push(r),r}function oMr(e,t){e.constructor.name==="AsyncFunction"&&e.length===3&&rMr(t||"anonymous")}function cMr(e){let t=aMr.call(this,e)||gQe(e);return oMr.call(this,e,t),iMr.call(this,e),yQe.call(this,e),EQe.call(this,e),AQe(e)}Hce.exports={getPluginName:gQe,getFuncPreview:nMr,kRegisteredPlugins:qce,getDisplayName:_Qe,registerPlugin:cMr};Hce.exports[WLr]={shouldSkipOverride:AQe,getMeta:bD,checkDecorators:yQe,checkDependencies:EQe}});var j8=S((azn,vQe)=>{"use strict";function uMr(e,t){let r=t||dMr();return e?fMr(e,r):r}function lMr(e,t){return e.genReqId(t)}function dMr(){let t=0;return function(){return t=t+1&2147483647,`req-${t.toString(36)}`}}function fMr(e,t){return function(r){return r.headers[e]||t(r)}}vQe.exports={getGenReqId:lMr,reqIdGenFactory:uMr}});var IQe=S((ozn,bQe)=>{"use strict";var SQe=12,hMr=0,jce=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function pMr(e){var t=e.indexOf("%");if(t===-1)return e;for(var r=e.length,n="",s=0,i=0,a=t,o=SQe;t>-1&&t>10),56320+(i&1023)),i=0,s=t+3,t=a=e.indexOf("%",s);else{if(o===hMr)return null;if(t+=3,t{"use strict";var RQe=IQe(),CQe=/\+/g,xQe=function(){};xQe.prototype=Object.create(null);function gMr(e){let t=new xQe;if(typeof e!="string")return t;let r=e.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let h=0;hi,d||(a=h),n=e.slice(i+1,a),d||n.length>0){u&&(n=n.replace(CQe," ")),o&&(n=RQe(n)||n),d&&(s=e.slice(a+1,h),l&&(s=s.replace(CQe," ")),c&&(s=RQe(s)||s));let p=t[n];p===void 0?t[n]=s:p.pop?p.push(s):t[n]=[p,s]}s="",i=h,a=h,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=h:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return t}wQe.exports=gMr});var DQe=S((uzn,OQe)=>{var Sh=Array.from({length:256},(e,t)=>"%"+((t<16?"0":"")+t.toString(16)).toUpperCase()),_Mr=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function AMr(e){let t=e.length;if(t===0)return"";let r="",n=0,s=0;e:for(;s>6]+Sh[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=Sh[224|i>>12]+Sh[128|i>>6&63]+Sh[128|i&63];continue}if(++s,s>=t)throw new Error("URI malformed");let a=e.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=Sh[240|i>>18]+Sh[128|i>>12&63]+Sh[128|i>>6&63]+Sh[128|i&63]}return n===0?e:n{"use strict";var{encodeString:Kce}=DQe();function PQe(e){let t=typeof e;return t==="string"?Kce(e):t==="bigint"?e.toString():t==="boolean"?e?"true":"false":t==="number"&&Number.isFinite(e)?e<1e21?""+e:Kce(""+e):""}function EMr(e){let t="";if(e===null||typeof e!="object")return t;let r="&",n=Object.keys(e),s=n.length,i=0;for(let a=0;a{"use strict";var kQe=NQe(),BQe=MQe(),UQe={parse:kQe,stringify:BQe};ID.exports=UQe;ID.exports.default=UQe;ID.exports.parse=kQe;ID.exports.stringify=BQe});var qQe=S($Qe=>{"use strict";Object.defineProperty($Qe,"__esModule",{value:!0})});var HQe=S(RD=>{"use strict";Object.defineProperty(RD,"__esModule",{value:!0});RD.types=void 0;var yMr;(function(e){e[e.ROOT=0]="ROOT",e[e.GROUP=1]="GROUP",e[e.POSITION=2]="POSITION",e[e.SET=3]="SET",e[e.RANGE=4]="RANGE",e[e.REPETITION=5]="REPETITION",e[e.REFERENCE=6]="REFERENCE",e[e.CHAR=7]="CHAR"})(yMr=RD.types||(RD.types={}))});var jQe=S(VQe=>{"use strict";Object.defineProperty(VQe,"__esModule",{value:!0})});var Rm=S(Im=>{"use strict";var vMr=Im&&Im.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Gce=Im&&Im.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&vMr(t,e,r)};Object.defineProperty(Im,"__esModule",{value:!0});Gce(qQe(),Im);Gce(HQe(),Im);Gce(jQe(),Im)});var K8=S(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});Wo.anyChar=Wo.notWhitespace=Wo.whitespace=Wo.notInts=Wo.ints=Wo.notWords=Wo.words=void 0;var jn=Rm(),KQe=()=>[{type:jn.types.RANGE,from:48,to:57}],GQe=()=>[{type:jn.types.CHAR,value:95},{type:jn.types.RANGE,from:97,to:122},{type:jn.types.RANGE,from:65,to:90},{type:jn.types.RANGE,from:48,to:57}],zQe=()=>[{type:jn.types.CHAR,value:9},{type:jn.types.CHAR,value:10},{type:jn.types.CHAR,value:11},{type:jn.types.CHAR,value:12},{type:jn.types.CHAR,value:13},{type:jn.types.CHAR,value:32},{type:jn.types.CHAR,value:160},{type:jn.types.CHAR,value:5760},{type:jn.types.RANGE,from:8192,to:8202},{type:jn.types.CHAR,value:8232},{type:jn.types.CHAR,value:8233},{type:jn.types.CHAR,value:8239},{type:jn.types.CHAR,value:8287},{type:jn.types.CHAR,value:12288},{type:jn.types.CHAR,value:65279}],SMr=()=>[{type:jn.types.CHAR,value:10},{type:jn.types.CHAR,value:13},{type:jn.types.CHAR,value:8232},{type:jn.types.CHAR,value:8233}];Wo.words=()=>({type:jn.types.SET,set:GQe(),not:!1});Wo.notWords=()=>({type:jn.types.SET,set:GQe(),not:!0});Wo.ints=()=>({type:jn.types.SET,set:KQe(),not:!1});Wo.notInts=()=>({type:jn.types.SET,set:KQe(),not:!0});Wo.whitespace=()=>({type:jn.types.SET,set:zQe(),not:!1});Wo.notWhitespace=()=>({type:jn.types.SET,set:zQe(),not:!0});Wo.anyChar=()=>({type:jn.types.SET,set:SMr(),not:!0})});var QQe=S(Cd=>{"use strict";var TMr=Cd&&Cd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bMr=Cd&&Cd.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),IMr=Cd&&Cd.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&TMr(t,e,r);return bMr(t,e),t};Object.defineProperty(Cd,"__esModule",{value:!0});Cd.tokenizeClass=Cd.strToChars=void 0;var YQe=Rm(),zI=IMr(K8()),RMr="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";Cd.strToChars=e=>{let t=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return e.replace(t,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?RMr.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};Cd.tokenizeClass=(e,t)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(e))!==null;){let h=(c=(o=(a=(i=(s=(n=(r=l[1]&&zI.words())!==null&&r!==void 0?r:l[2]&&zI.ints())!==null&&n!==void 0?n:l[3]&&zI.whitespace())!==null&&s!==void 0?s:l[4]&&zI.notWords())!==null&&i!==void 0?i:l[5]&&zI.notInts())!==null&&a!==void 0?a:l[6]&&zI.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:YQe.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=l[16])&&{type:YQe.types.CHAR,value:d.charCodeAt(0)};if(h)u.push(h);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated character class`)}});var zce=S(Th=>{"use strict";var CMr=Th&&Th.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xMr=Th&&Th.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),XQe=Th&&Th.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&CMr(t,e,r);return xMr(t,e),t};Object.defineProperty(Th,"__esModule",{value:!0});Th.tokenizer=void 0;var WQe=XQe(QQe()),yo=Rm(),zv=XQe(K8());Th.tokenizer=e=>{let t=0,r,n={type:yo.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${e}/: Nothing to repeat at column ${d-1}`)},l=WQe.strToChars(e);for(;ts){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:yo.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var ZQe=S(Xo=>{"use strict";var NMr=Xo&&Xo.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OMr=Xo&&Xo.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),DMr=Xo&&Xo.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&NMr(t,e,r);return OMr(t,e),t};Object.defineProperty(Xo,"__esModule",{value:!0});Xo.NOTANYCHAR=Xo.WHITESPACE=Xo.WORDS=Xo.INTS=void 0;var G8=DMr(K8()),JQe=Rm();function z8(e){let t={},r=0;for(let n of e)n.type===JQe.types.CHAR&&(t[n.value]=!0),n.type===JQe.types.RANGE&&(t[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},t),len:r}}Xo.INTS=z8(G8.ints().set);Xo.WORDS=z8(G8.words().set);Xo.WHITESPACE=z8(G8.whitespace().set);Xo.NOTANYCHAR=z8(G8.anyChar().set)});var tWe=S(xd=>{"use strict";var PMr=xd&&xd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LMr=xd&&xd.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),MMr=xd&&xd.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&PMr(t,e,r);return LMr(t,e),t};Object.defineProperty(xd,"__esModule",{value:!0});xd.writeSetTokens=xd.setChar=void 0;var X8=Rm(),Y8=MMr(ZQe());function W8(e){return e===94?"\\^":e===92?"\\\\":e===93?"\\]":e===45?"\\-":String.fromCharCode(e)}xd.setChar=W8;function Q8(e,{lookup:t,len:r}){if(r!==e.length)return!1;let n=t();for(let s of e){if(s.type===X8.types.SET)return!1;let i=s.type===X8.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function eWe(e,t=!1){if(Q8(e.set,Y8.INTS))return e.not?"\\D":"\\d";if(Q8(e.set,Y8.WORDS))return e.not?"\\W":"\\w";if(e.not&&Q8(e.set,Y8.NOTANYCHAR))return".";if(Q8(e.set,Y8.WHITESPACE))return e.not?"\\S":"\\s";let r="";for(let s=0;s{"use strict";Object.defineProperty(YI,"__esModule",{value:!0});YI.reconstruct=void 0;var wA=Rm(),Yce=tWe(),rWe=e=>e.map(YI.reconstruct).join(""),nWe=e=>{if("options"in e)return e.options.map(rWe).join("|");if("stack"in e)return rWe(e.stack);throw new Error("options or stack must be Root or Group token")};YI.reconstruct=e=>{switch(e.type){case wA.types.ROOT:return nWe(e);case wA.types.CHAR:{let t=String.fromCharCode(e.value);return(/[[\\{}$^.|?*+()]/.test(t)?"\\":"")+t}case wA.types.POSITION:return e.value==="^"||e.value==="$"?e.value:`\\${e.value}`;case wA.types.REFERENCE:return`\\${e.value}`;case wA.types.SET:return Yce.writeSetTokens(e);case wA.types.GROUP:return`(${e.remember?"":e.followedBy?"?=":e.notFollowedBy?"?!":"?:"}${nWe(e)})`;case wA.types.REPETITION:{let{min:t,max:r}=e,n;return t===0&&r===1?n="?":t===1&&r===1/0?n="+":t===0&&r===1/0?n="*":r===1/0?n=`{${t},}`:t===r?n=`{${t}}`:n=`{${t},${r}}`,`${YI.reconstruct(e.value)}${n}`}case wA.types.RANGE:return`${Yce.setChar(e.from)}-${Yce.setChar(e.to)}`;default:throw new Error(`Invalid token type ${e}`)}}});var aWe=S((wd,J8)=>{"use strict";var BMr=wd&&wd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Wce=wd&&wd.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&BMr(t,e,r)};Object.defineProperty(wd,"__esModule",{value:!0});wd.types=void 0;var sWe=Rm();Object.defineProperty(wd,"types",{enumerable:!0,get:function(){return sWe.types}});Wce(zce(),wd);Wce(Qce(),wd);var iWe=zce(),UMr=Qce();Wce(Rm(),wd);wd.default=iWe.tokenizer;J8.exports=iWe.tokenizer;J8.exports.types=sWe.types;J8.exports.reconstruct=UMr.reconstruct});var cWe=S((Szn,Z8)=>{"use strict";var oWe=aWe(),FMr=oWe.types;function Xce(e,t){t||(t={});let r=t.limit===void 0?25:t.limit;$Mr(e)?e=e.source:typeof e!="string"&&(e=String(e));try{e=oWe(e)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===FMr.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o{"use strict";uWe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let e={};return{get:t=>e[t]||null,set:(t,r)=>{e[t]=r}}},deriveConstraint:e=>e.method,mustMatchWhenDerived:!0}});var gWe=S((bzn,mWe)=>{"use strict";var lWe=hd(),dWe=e$(),fWe=Symbol("treeData");function hWe(e,t=""){let r="",n=Object.keys(e);for(let s=0;syje(t)):typeof e=="symbol"?e.toString():typeof e=="function"?Yyr(e):e}function Wyr(e,t){if(!t.includeMeta)return{};let r=t.buildPrettyMeta(e),n={},i=t.includeMeta;Array.isArray(i)||(i=Reflect.ownKeys(r));for(let s of i){if(!Object.prototype.hasOwnProperty.call(r,s))continue;let a=s.toString(),o=r[s];if(o!=null){let u=JSON.stringify(yje(o));n[a]=u}}return n}function Xyr(e){let t="";for(let[r,n]of Object.entries(e))t+=` -\u2022 (${r}) ${n}`;return t}function Jyr(e){let t={...e.opts.constraints},r=t[hje.name];return delete t[hje.name],{...e,method:r,opts:{constraints:t}}}function Zyr(e){let t=` (${e.method})`,r=e.opts.constraints||{};return Object.keys(r).length!==0&&(t+=" "+JSON.stringify(r)),t+=Xyr(e.metaData),t}function e_r(e){return e.reduce((t,r)=>{for(let n of t)if(pje(r.opts.constraints,n.opts.constraints)&&pje(r.metaData,n.metaData))return n.method+=", "+r.method,t;return t.push(r),t},[])}function t_r(e,t,r){let n=e.routes;return r.method===void 0&&(n=n.map(Jyr)),n=n.map(i=>(i.metaData=Wyr(i,r),i)),r.method===void 0&&(n=e_r(n)),n.map(Zyr).join(` -${t}`)}function p6(e,t,r,n){if((e.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",t=t[r]={},e.isLeafNode&&(t[mje]=t_r(e,r,n)),r=""),e.staticChildren)for(let i of Object.values(e.staticChildren))p6(i,t,r+i.prefix,n);if(e.parametricChildren)for(let i of Object.values(e.parametricChildren)){let s=Array.from(i.nodePaths).join("|");p6(i,t,r+s,n)}e.wildcardChild&&p6(e.wildcardChild,t,"*",n)}function r_r(e,t){let r={};return p6(e,r,e.prefix,t),gje(r)}_je.exports={prettyPrintTree:r_r}});var bje=b((KRn,vje)=>{"use strict";var n_r=f6(),Bre=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(t){return t===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(t)}addHandler(t,r){let n=r.params,i=r.opts.constraints||{},s={params:n,constraints:i,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(i);a.length===0&&(this.unconstrainedHandler=s);for(let u of a)this.constraints.includes(u)||(u==="version"?this.constraints.unshift(u):this.constraints.push(u));let o=a.includes(n_r.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(s),this.handlers.sort((u,c)=>Object.keys(u.constraints).length-Object.keys(c.constraints).length),o||this._compileGetHandlerMatchingConstraints(t,i)}_compileCreateParamsObject(t){let r=[];for(let n=0;npWe(t)):typeof e=="symbol"?e.toString():typeof e=="function"?qMr(e):e}function HMr(e,t){if(!t.includeMeta)return{};let r=t.buildPrettyMeta(e),n={},s=t.includeMeta;Array.isArray(s)||(s=Reflect.ownKeys(r));for(let i of s){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let a=i.toString(),o=r[i];if(o!=null){let c=JSON.stringify(pWe(o));n[a]=c}}return n}function VMr(e){let t="";for(let[r,n]of Object.entries(e))t+=` +\u2022 (${r}) ${n}`;return t}function jMr(e){let t={...e.opts.constraints},r=t[dWe.name];return delete t[dWe.name],{...e,method:r,opts:{constraints:t}}}function KMr(e){let t=` (${e.method})`,r=e.opts.constraints||{};return Object.keys(r).length!==0&&(t+=" "+JSON.stringify(r)),t+=VMr(e.metaData),t}function GMr(e){return e.reduce((t,r)=>{for(let n of t)if(lWe(r.opts.constraints,n.opts.constraints)&&lWe(r.metaData,n.metaData))return n.method+=", "+r.method,t;return t.push(r),t},[])}function zMr(e,t,r){let n=e.routes;return r.method===void 0&&(n=n.map(jMr)),n=n.map(s=>(s.metaData=HMr(s,r),s)),r.method===void 0&&(n=GMr(n)),n.map(KMr).join(` +${t}`)}function t$(e,t,r,n){if((e.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",t=t[r]={},e.isLeafNode&&(t[fWe]=zMr(e,r,n)),r=""),e.staticChildren)for(let s of Object.values(e.staticChildren))t$(s,t,r+s.prefix,n);if(e.parametricChildren)for(let s of Object.values(e.parametricChildren)){let i=Array.from(s.nodePaths).join("|");t$(s,t,r+i,n)}e.wildcardChild&&t$(e.wildcardChild,t,"*",n)}function YMr(e,t){let r={};return t$(e,r,e.prefix,t),hWe(r)}mWe.exports={prettyPrintTree:YMr}});var AWe=S((Izn,_We)=>{"use strict";var QMr=e$(),Jce=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(t){return t===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(t)}addHandler(t,r){let n=r.params,s=r.opts.constraints||{},i={params:n,constraints:s,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(s);a.length===0&&(this.unconstrainedHandler=i);for(let c of a)this.constraints.includes(c)||(c==="version"?this.constraints.unshift(c):this.constraints.push(c));let o=a.includes(QMr.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(i),this.handlers.sort((c,u)=>Object.keys(c.constraints).length-Object.keys(u.constraints).length),o||this._compileGetHandlerMatchingConstraints(t,s)}_compileCreateParamsObject(t){let r=[];for(let n=0;n{"use strict";var i_r=bje(),A6={STATIC:0,PARAMETRIC:1,WILDCARD:2},h6=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(t,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new i_r),this.isLeafNode=!0,this.routes.push(t),this.handlerStorage.addHandler(r,t)}},m6=class extends h6{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(t,r){let n=this.staticChildren[t.charAt(r)];return n===void 0||!n.matchPrefix(t,r)?null:n}getStaticChild(t,r=0){if(t.length===r)return this;let n=this.findStaticMatchingChild(t,r);return n?n.getStaticChild(t,r+n.prefix.length):null}createStaticChild(t){if(t.length===0)return this;let r=this.staticChildren[t.charAt(0)];if(r){let i=1;for(;i(i.regex&&i.regex.source)===r);return n||null}createParametricChild(t,r,n){let i=this.getParametricChild(t);return i?(i.nodePaths.add(n),i):(i=new y6(t,r,n),this.parametricChildren.push(i),this.parametricChildren.sort((s,a)=>s.isRegex?a.isRegex?s.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(s.staticSuffix)?1:s.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),i)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new _6,this.wildcardChild}split(t,r){let n=this.prefix.slice(0,r),i=this.prefix.slice(r);this.prefix=i,this._compilePrefixMatch();let s=new e(n);return s.staticChildren[i.charAt(0)]=this,t.staticChildren[n.charAt(0)]=s,s}getNextNode(t,r,n,i){let s=this.findStaticMatchingChild(t,r),a=0;if(s===null){if(this.parametricChildren.length===0)return this.wildcardChild;s=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:i,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:i,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return s}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let t=[];for(let r=1;r{"use strict";var s_r=require("node:assert");function SN(){if(!(this instanceof SN))return new SN;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}SN.prototype.set=function(e,t){if(typeof e!="string")throw new TypeError("Version should be a string");let[r,n,i]=e.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,i=Number(i)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=t,this.store["*"]=t,this.store["x.x"]=t,this.store["x.x.x"]=t),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=t,this.store[`${r}.x.x`]=t),i>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=i,this.store[`${r}.${n}.x`]=t),this.store[`${r}.${n}.${i}`]=t,this};SN.prototype.get=function(e){return this.store[e]};wje.exports={name:"version",mustMatchWhenDerived:!0,storage:SN,validate(e){s_r(typeof e=="string","Version should be a string")}}});var Cje=b((QRn,xje)=>{"use strict";var a_r=require("node:assert");function o_r(){let e={},t=[];return{get:r=>{let n=e[r];if(n)return n;for(let i of t)if(i.host.test(r))return i.value},set:(r,n)=>{r instanceof RegExp?t.push({host:r,value:n}):e[r]=n}}}xje.exports={name:"host",mustMatchWhenDerived:!1,storage:o_r,validate(e){a_r(typeof e=="string"||Object.prototype.toString.call(e)==="[object RegExp]","Host should be a string or a RegExp")}}});var Nje=b((GRn,Tje)=>{"use strict";var u_r=Ije(),c_r=Cje(),$re=require("node:assert"),Fre=class{constructor(t){if(this.strategies={version:u_r,host:c_r},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,t)for(let r of Object.values(t))this.addConstraintStrategy(r)}isStrategyUsed(t){return this.strategiesInUse.has(t)||this.asyncStrategiesInUse.has(t)}hasConstraintStrategy(t){let r=this.strategies[t];return r!==void 0?r.isCustom||this.isStrategyUsed(t):!1}addConstraintStrategy(t){if($re(typeof t.name=="string"&&t.name!=="","strategy.name is required."),$re(t.storage&&typeof t.storage=="function","strategy.storage function is required."),$re(t.deriveConstraint&&typeof t.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[t.name]&&this.strategies[t.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${t.name}.`);if(this.isStrategyUsed(t.name))throw new Error(`There already exists a route with ${t.name} constraint.`);t.isCustom=!0,t.isAsync=t.deriveConstraint.length===3,this.strategies[t.name]=t,t.mustMatchWhenDerived&&this.noteUsage({[t.name]:t})}deriveConstraints(t,r,n){let i=this.deriveSyncConstraints(t,r);if(n===void 0)return i;this.deriveAsyncConstraints(i,t,r,n)}deriveSyncConstraints(t,r){}noteUsage(t){if(t){let r=this.strategiesInUse.size;for(let n in t)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(t){if(!this.strategies[t])throw new Error(`No strategy registered for constraint key ${t}`);return this.strategies[t].storage()}validateConstraints(t){for(let r in t){let n=t[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let i=this.strategies[r];if(!i)throw new Error(`No strategy registered for constraint key ${r}`);i.validate&&i.validate(n)}}deriveAsyncConstraints(t,r,n,i){let s=this.asyncStrategiesInUse.size;if(s===0){i(null,t);return}t=t||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(u,c)=>{if(u!==null){i(u);return}t[a]=c,--s===0&&i(null,t)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let t=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?t.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?t.push(" version: req.headers['accept-version'],"):t.push(" host: req.headers.host || req.headers[':authority'],")}t.push("}"),this.deriveSyncConstraints=new Function("req","ctx",t.join(` -`)).bind(this)}};Tje.exports=Fre});var Dje=b((YRn,Rje)=>{"use strict";var l_r=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];Rje.exports=l_r});var Pje=b((WRn,Oje)=>{"use strict";function kje(e,t){return e===50?t===53?"%":t===51?"#":t===52?"$":t===54?"&":t===66||t===98?"+":t===67||t===99?",":t===70||t===102?"/":null:e===51?t===65||t===97?":":t===66||t===98?";":t===68||t===100?"=":t===70||t===102?"?":null:e===52&&t===48?"@":null}function d_r(e,t){let r=!1,n=!1,i="";for(let a=1;a{"use strict";var es=require("node:assert"),p_r=jqe(),v6=dje(),qre=tl(),{prettyPrintTree:h_r}=Aje(),{StaticNode:Mje,NODE_TYPES:Lje}=Sje(),m_r=Nje(),CS=Dje(),Ure=f6(),{safeDecodeURI:g_r,safeDecodeURIComponent:Bje}=Pje(),$je=/^https?:\/\/.*?\//,YA=/(\/:[^/()]*?)\?(\/?)/;if(!v6($je))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!v6(YA))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function Li(e){if(!(this instanceof Li))return new Li(e);e=e||{},this._opts=e,e.defaultRoute?(es(typeof e.defaultRoute=="function","The default route must be a function"),this.defaultRoute=e.defaultRoute):this.defaultRoute=null,e.onBadUrl?(es(typeof e.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=e.onBadUrl):this.onBadUrl=null,e.buildPrettyMeta?(es(typeof e.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=e.buildPrettyMeta):this.buildPrettyMeta=y_r,e.querystringParser?(es(typeof e.querystringParser=="function","querystringParser must be a function"),this.querystringParser=e.querystringParser):this.querystringParser=t=>t===""?{}:p_r.parse(t),this.caseSensitive=e.caseSensitive===void 0?!0:e.caseSensitive,this.ignoreTrailingSlash=e.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=e.ignoreDuplicateSlashes||!1,this.maxParamLength=e.maxParamLength||100,this.allowUnsafeRegex=e.allowUnsafeRegex||!1,this.constrainer=new m_r(e.constraints),this.useSemicolonDelimiter=e.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}Li.prototype.on=function(t,r,n,i,s){typeof n=="function"&&(i!==void 0&&(s=i),i=n,n={}),es(typeof r=="string","Path should be a string"),es(r.length>0,"The path could not be empty"),es(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),es(typeof i=="function","Handler should be a function");let a=r.match(YA);if(a){es(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let c=r.replace(YA,"$1$2"),l=r.replace(YA,"$2")||"/";this.on(t,c,n,i,s),this.on(t,l,n,i,s);return}let o=r;this.ignoreDuplicateSlashes&&(r=jre(r)),this.ignoreTrailingSlash&&(r=Hre(r));let u=Array.isArray(t)?t:[t];for(let c of u)es(typeof c=="string","Method should be a string"),es(CS.includes(c),`Method '${c}' is not an http method.`),this._on(c,r,n,i,s,o)};Li.prototype._on=function(t,r,n,i,s){let a={};n.constraints!==void 0&&(es(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[t]===void 0&&(this.trees[t]=new Mje("/"));let o=r;if(o==="*"&&this.trees[t].prefix.length!==0){let f=this.trees[t];this.trees[t]=new Mje(""),this.trees[t].staticChildren["/"]=f}let u=this.trees[t],c=u.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,h=o.charCodeAt(f)===42;if(p||h||f===o.length&&f!==c){let m=o.slice(c,f);this.caseSensitive||(m=m.toLowerCase()),m=m.split("::").join(":"),m=m.split("%").join("%25"),u=u.createStaticChild(m)}if(p){let m=!1,y=!0,g="",v=[],A=f+1;for(let _=A;;_++){let E=o.charCodeAt(_),S=E===40,C=E===45||E===46,I=E===47||_===o.length;if(S||C||I){let N=o.slice(A,_);if(l.push(N),m=m||S||C,S){let O=qje(o,_),P=o.slice(_,O+1);this.allowUnsafeRegex||es(v6(new RegExp(P)),`The regex '${P}' is not safe!`),v.push(Uje(P)),_=O+1,y=!0}else v.push(y?"(.*?)":`(${g}|(?:(?!${g}).)*)`),y=!1;let T=_;for(;_0,"The path could not be empty"),es(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),es(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let i=r.match(YA);if(i){es(r.length===i.index+i[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(YA,"$1$2"),o=r.replace(YA,"$2");this.off(t,a,n),this.off(t,o,n);return}this.ignoreDuplicateSlashes&&(r=jre(r)),this.ignoreTrailingSlash&&(r=Hre(r));let s=Array.isArray(t)?t:[t];for(let a of s)this._off(a,r,n)};Li.prototype._off=function(t,r,n){es(typeof t=="string","Method should be a string"),es(CS.includes(t),`Method '${t}' is not an http method.`);function i(u){return t!==u.method||r!==u.path}function s(u){return i(u)||!qre(n,u.opts.constraints||{})}let a=n?s:i,o=this.routes.filter(a);this._rebuild(o)};Li.prototype.lookup=function(t,r,n,i){if(typeof n=="function"&&(i=n,n=void 0),i===void 0){let s=this.constrainer.deriveConstraints(t,n),a=this.find(t.method,t.url,s);return this.callHandler(a,t,r,n)}this.constrainer.deriveConstraints(t,n,(s,a)=>{if(s!==null){i(s);return}try{let o=this.find(t.method,t.url,a),u=this.callHandler(o,t,r,n);i(null,u)}catch(o){i(o)}})};Li.prototype.callHandler=function(t,r,n,i){return t===null?this._defaultRoute(r,n,i):i===void 0?t.handler(r,n,t.params,t.store,t.searchParams):t.handler.call(i,r,n,t.params,t.store,t.searchParams)};Li.prototype.find=function(t,r,n){let i=this.trees[t];if(i===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace($je,"/")),this.ignoreDuplicateSlashes&&(r=jre(r));let s,a,o;try{s=g_r(r,this.useSemicolonDelimiter),r=s.path,a=s.querystring,o=s.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=Hre(r));let u=r;this.caseSensitive===!1&&(r=r.toLowerCase());let c=this.maxParamLength,l=i.prefix.length,d=[],f=r.length,p=[];for(;;){if(l===f&&i.isLeafNode){let g=i.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let h=i.getNextNode(r,l,p,d.length);if(h===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),h=g.brotherNode}if(i=h,i.kind===Lje.STATIC){l+=i.prefix.length;continue}if(i.kind===Lje.WILDCARD){let g=u.slice(l);o&&(g=Bje(g)),d.push(g),l=f;continue}let m=u.indexOf("/",l);m===-1&&(m=f);let y=u.slice(l,m);if(o&&(y=Bje(y)),i.isRegex){let g=i.regex.exec(y);if(g===null)continue;for(let v=1;vc)return null;d.push(A)}}else{if(y.length>c)return null;d.push(y)}l=m}};Li.prototype._rebuild=function(e){this.reset();for(let t of e){let{method:r,path:n,opts:i,handler:s,store:a}=t;this._on(r,n,i,s,a)}};Li.prototype._defaultRoute=function(e,t,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(e,t):this.defaultRoute.call(r,e,t);t.statusCode=404,t.end()};Li.prototype._onBadUrl=function(e){if(this.onBadUrl===null)return null;let t=this.onBadUrl;return{handler:(r,n,i)=>t(e,r,n),params:{},store:null}};Li.prototype.prettyPrint=function(e={}){let t=e.method;e.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(t===void 0){let{version:n,host:i,...s}=this.constrainer.strategies;s[Ure.name]=Ure;let a=new Li({...this._opts,constraints:s}),o=this.routes.map(u=>{let c={...u.opts.constraints,[Ure.name]:u.method};return{...u,method:"MERGED",opts:{constraints:c}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[t];return r==null?"(empty tree)":h_r(r,e)};for(let e in CS){if(!CS.hasOwnProperty(e))continue;let t=CS[e],r=t.toLowerCase();Li.prototype[r]=function(n,i,s){return this.on(t,n,i,s)}}Li.prototype.all=function(e,t,r){this.on(CS,e,t,r)};jje.exports=Li;function Fje(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function jre(e){return e.replace(/\/\/+/g,"/")}function Hre(e){return e.length>1&&e.charCodeAt(e.length-1)===47?e.slice(0,-1):e}function Uje(e){return e.charCodeAt(1)===94&&(e=e.slice(0,1)+e.slice(2)),e.charCodeAt(e.length-2)===36&&(e=e.slice(0,e.length-2)+e.slice(e.length-1)),e}function qje(e,t){let r=1;for(;t{"use strict";function Vre(e,t,r,n){if(r===void 0)return t.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",s=>{t.log.error({err:s},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let i=""+Buffer.byteLength(r);t.header("content-length",i),n(null,null)}function __r(e){return e==null?Vre:Array.isArray(e)?[...e,Vre]:[e,Vre]}Hje.exports={parseHeadOnSendHandlers:__r}});var o9e=b((ZRn,a9e)=>{"use strict";var A_r=Kre(),v_r=A3(),Vje=aG(),{onRequestAbortHookRunner:b_r,lifecycleHooks:zje,preParsingHookRunner:E_r,onTimeoutHookRunner:S_r,onRequestHookRunner:w_r}=eg(),{supportedMethods:I_r}=$X(),{normalizeSchema:x_r}=hT(),{parseHeadOnSendHandlers:C_r}=Kje(),{FSTDEP007:T_r,FSTDEP008:N_r,FSTDEP014:Qje}=Eh(),{compileSchemasForValidation:R_r,compileSchemasForSerialization:D_r}=tG(),{FST_ERR_SCH_VALIDATION_BUILD:k_r,FST_ERR_SCH_SERIALIZATION_BUILD:O_r,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:P_r,FST_ERR_DUPLICATED_ROUTE:M_r,FST_ERR_INVALID_URL:L_r,FST_ERR_HOOK_INVALID_HANDLER:Gje,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:B_r,FST_ERR_ROUTE_DUPLICATED_HANDLER:$_r,FST_ERR_ROUTE_HANDLER_NOT_FN:Yje,FST_ERR_ROUTE_MISSING_HANDLER:F_r,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:U_r,FST_ERR_ROUTE_METHOD_INVALID:q_r,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:j_r,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:H_r,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:zre}=Wa(),{kRoutePrefix:K_r,kLogLevel:V_r,kLogSerializers:Wje,kHooks:Xje,kSchemaController:z_r,kOptions:Jje,kReplySerializerDefault:Qre,kReplyIsError:Q_r,kRequestPayloadStream:G_r,kDisableRequestLogging:Y_r,kSchemaErrorFormatter:W_r,kErrorHandler:Zje,kHasBeenDecorated:e9e,kRequestAcceptVersion:Gre,kRouteByFastify:Yre,kRouteContext:t9e}=Vs(),{buildErrorHandler:X_r}=zT(),{createChildLogger:J_r}=pT(),{getGenReqId:Z_r}=r6();function eAr(e){let t=A_r(e.config),r,n,i,s,a,o,u,c,l,d,f,p,h,m=!1;return{setup(I,N){r=N.avvio,n=N.fourOhFour,i=N.logger,s=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=I.exposeHeadRoutes,u=I.disableRequestLogging,c=I.ignoreTrailingSlash,l=I.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(I,"return503OnClosing")?I.return503OnClosing:!0,h=N.keepAliveConnections},routing:t.lookup.bind(t),route:S,hasRoute:_,prepareRoute:A,getDefaultRoute:function(){return Qje(),t.defaultRoute},setDefaultRoute:function(I){if(Qje(),typeof I!="function")throw new P_r;t.defaultRoute=I},routeHandler:C,closeRoutes:()=>{m=!0},printRoutes:t.prettyPrint.bind(t),addConstraintStrategy:y,hasConstraintStrategy:g,isAsyncConstraint:v,findRoute:E};function y(I){return o("Cannot add constraint strategy!"),t.addConstraintStrategy(I)}function g(I){return t.hasConstraintStrategy(I)}function v(){return t.constrainer.asyncStrategiesInUse.size>0}function A({method:I,url:N,options:T,handler:k,isFastify:O}){if(typeof N!="string")throw new L_r(typeof N);if(!k&&typeof T=="function")k=T,T={};else if(k&&typeof k=="function"){if(Object.prototype.toString.call(T)!=="[object Object]")throw new B_r(I,N);if(T.handler)throw typeof T.handler=="function"?new $_r(I,N):new Yje(I,N)}return T=Object.assign({},T,{method:I,url:N,path:N,handler:k||T&&T.handler}),S.call(this,{options:T,isFastify:O})}function _({options:I}){return E(I)!==null}function E(I){let N=t.find(I.method,I.url||"",I.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function S({options:I,isFastify:N}){let T={...I},{exposeHeadRoute:k}=T,P=k!=null?k:f,$=T.method==="GET"||Array.isArray(T.method)&&T.method.includes("GET"),Q=T.method==="HEAD"||Array.isArray(T.method)&&T.method.includes("HEAD"),j=P&&$?{...I}:null;o("Cannot add route!");let z=T.url||T.path||"";if(Array.isArray(T.method))for(var X=0;X0&&T.method!=="HEAD")switch(T.prefixTrailingSlash){case"slash":Z.call(this,{path:z,isFastify:N});break;case"no-slash":Z.call(this,{path:"",isFastify:N});break;case"both":default:Z.call(this,{path:"",isFastify:N}),c!==!0&&(l!==!0||!K.endsWith("/"))&&Z.call(this,{path:z,prefixing:!0,isFastify:N})}else z[0]==="/"&&K.endsWith("/")?Z.call(this,{path:z.slice(1),isFastify:N}):Z.call(this,{path:z,isFastify:N});return this;function Z({path:Y,prefixing:ie=!1,isFastify:ue=!1}){let he=K+Y;if(T.url=he,T.path=he,T.routePath=Y,T.prefix=K,T.logLevel=T.logLevel||this[V_r],(this[Wje]||T.logSerializers)&&(T.logSerializers=Object.assign(Object.create(this[Wje]),T.logSerializers)),T.attachValidation==null&&(T.attachValidation=!1),ie===!1)for(let F of this[Xje].onRoute)F.call(this,T);for(let F of zje)if(T&&F in T){if(Array.isArray(T[F]))for(let V of T[F]){if(typeof V!="function")throw new Gje(F,Object.prototype.toString.call(V));if(F==="onSend"||F==="preSerialization"||F==="onError"||F==="preParsing"){if(V.constructor.name==="AsyncFunction"&&V.length===4)throw new zre}else if(F==="onRequestAbort"){if(V.constructor.name==="AsyncFunction"&&V.length!==1)throw new zre}else if(V.constructor.name==="AsyncFunction"&&V.length===3)throw new zre}else if(T[F]!==void 0&&typeof T[F]!="function")throw new Gje(F,Object.prototype.toString.call(T[F]))}let ye=T.constraints||{},q={...T.config,url:he,method:T.method},B=new v_r({schema:T.schema,handler:T.handler.bind(this),config:q,errorHandler:T.errorHandler,childLoggerFactory:T.childLoggerFactory,bodyLimit:T.bodyLimit,logLevel:T.logLevel,logSerializers:T.logSerializers,attachValidation:T.attachValidation,schemaErrorFormatter:T.schemaErrorFormatter,replySerializer:this[Qre],validatorCompiler:T.validatorCompiler,serializerCompiler:T.serializerCompiler,exposeHeadRoute:P,prefixTrailingSlash:T.prefixTrailingSlash||"both",server:this,isFastify:ue});T.version&&(N_r(),ye.version=T.version);let ae=t.findRoute("HEAD",T.url,ye),M=ae!==null;Q&&M&&!B[Yre]&&ae.store[Yre]&&t.off("HEAD",T.url,ye);try{t.on(T.method,T.url,{constraints:ye},C,B)}catch(F){if(!B[Yre])throw F.message.includes(`Method '${T.method}' already declared for route '${T.url}'`)?new M_r(T.method,T.url):F}if(this.after((F,V)=>{B.errorHandler=T.errorHandler?X_r(this[Zje],T.errorHandler):this[Zje],B._parserOptions.limit=T.bodyLimit||null,B.logLevel=T.logLevel,B.logSerializers=T.logSerializers,B.attachValidation=T.attachValidation,B[Qre]=this[Qre],B.schemaErrorFormatter=T.schemaErrorFormatter||this[W_r]||B.schemaErrorFormatter,r.once("preReady",()=>{for(let H of zje){let G=this[Xje][H].concat(T[H]||[]).map(J=>J.bind(this));B[H]=G.length?G:null}for(;!B.Request[e9e]&&B.Request.parent;)B.Request=B.Request.parent;for(;!B.Reply[e9e]&&B.Reply.parent;)B.Reply=B.Reply.parent;if(n.setContext(this,B),T.schema){B.schema=x_r(B.schema,this.initialConfig);let H=this[z_r];!T.validatorCompiler&&(T.schema.body||T.schema.headers||T.schema.querystring||T.schema.params)&&H.setupValidator(this[Jje]);try{let G=typeof T?.validatorCompiler=="function"||H.isCustomValidatorCompiler;R_r(B,T.validatorCompiler||H.validatorCompiler,G)}catch(G){throw new k_r(T.method,he,G.message)}T.schema.response&&!T.serializerCompiler&&H.setupSerializer(this[Jje]);try{D_r(B,T.serializerCompiler||H.serializerCompiler)}catch(G){throw new O_r(T.method,he,G.message)}}}),V(F)}),P&&$&&!Q&&!M){let F=C_r(j.onSend);A.call(this,{method:"HEAD",url:Y,options:{...j,onSend:F},isFastify:!0})}else M&&k&&T_r()}}function C(I,N,T,k,O){let P=Z_r(k.server,I),$={level:k.logLevel};k.logSerializers&&($.serializers=k.logSerializers);let Q=J_r(k,i,I,P,$);if(Q[Y_r]=u,!p(I.httpVersion)){Q.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let K='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',Z={"Content-Type":"application/json","Content-Length":K.length};N.writeHead(505,Z),N.end(K);return}if(m===!0&&(I.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let K={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,K),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Q.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(I.headers.connection||"")==="keep-alive"&&h.has(I.socket)===!1&&(h.add(I.socket),I.socket.on("close",nAr.bind({keepAliveConnections:h,socket:I.socket}))),I.headers[Gre]!==void 0&&(I.headers["accept-version"]=I.headers[Gre],I.headers[Gre]=void 0);let z=new k.Request(P,T,I,O,Q,k),X=new k.Reply(N,z,Q);u===!1&&Q.info({req:z},"incoming request"),(s===!0||k.onResponse!==null)&&a(X),k.onRequest!==null?w_r(k.onRequest,z,X,i9e):i9e(null,z,X),k.onRequestAbort!==null&&I.on("close",()=>{I.aborted&&b_r(k.onRequestAbort,z,tAr.bind(null,X))}),k.onTimeout!==null&&(z.raw.socket._meta||z.raw.socket.on("timeout",rAr),z.raw.socket._meta={context:k,request:z,reply:X})}}function tAr(e,t){t&&e.log.error({err:t},"onRequestAborted hook failed")}function rAr(){let{context:e,request:t,reply:r}=this._meta;S_r(e.onTimeout,t,r,iAr)}function r9e(e){if(typeof e!="string")throw new q_r;if(e=e.toUpperCase(),I_r.indexOf(e)===-1)throw new U_r(e);return e}function n9e(e,t,r){if((e==="GET"||e==="HEAD")&&r&&r.body)throw new j_r(e,t)}function s9e(e){if(e!==void 0&&(!Number.isInteger(e)||e<=0))throw new H_r(e)}function i9e(e,t,r){if(r.sent!==!0){if(e!=null){r[Q_r]=!0,r.send(e);return}t[G_r]=t.raw,t[t9e].preParsing!==null?E_r(t[t9e].preParsing,t,r,Vje):Vje(null,t,r)}}function nAr(){this.keepAliveConnections.delete(this.socket)}function iAr(){}a9e.exports={buildRouting:eAr,validateBodyLimitOption:s9e}});var h9e=b((eDn,p9e)=>{"use strict";var sAr=Kre(),u9e=t3(),c9e=_3(),aAr=A3(),{kRoutePrefix:oAr,kCanSetNotFoundHandler:wN,kFourOhFourLevelInstance:IN,kFourOhFourContext:tp,kHooks:uAr,kErrorHandler:l9e}=Vs(),{lifecycleHooks:cAr}=eg(),{buildErrorHandler:lAr}=zT(),{FST_ERR_NOT_FOUND:dAr}=Wa(),{createChildLogger:d9e}=pT(),{getGenReqId:f9e}=r6();function fAr(e){let{logger:t}=e,r=sAr({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:u,setContext:o,arrange404:i};function i(d){d[IN]=d,d[wN]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function s(d,f){let{url:p,method:h}=d.raw,m=`Route ${h}:${p} not found`;d.log.info(m),f.code(404).send({message:m,error:"Not Found",statusCode:404})}function a(){return function(f,p,h){let m=this[IN][tp],y=f9e(m.server,p),g=d9e(m,t,p,y),v=new c9e(y,null,p,null,g,m),A=new u9e(h,v,g);n(v,A)}}function o(d,f){let p=Object.assign({},d[tp]);p.onSend=f.onSend,f[tp]=p}function u(d,f,p,h){this[wN]===void 0&&(this[wN]=!0),this[tp]===void 0&&(this[tp]=null);let m=this,y=this[oAr]||"/";if(this[wN]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${y}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(m)):d.preHandler=d.preHandler.bind(m)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(m)):d.preValidation=d.preValidation.bind(m))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[IN][wN]=!1,f=f.bind(this),n=f):(f=s,n=s),this.after((g,v)=>{c.call(this,y,d,f,p,h),v(g)})}function c(d,f,p,h,m){let y=new aAr({schema:f.schema,handler:p,config:f.config||{},server:this});if(h.once("preReady",()=>{let g=this[tp];for(let v of cAr){let A=this[uAr][v].concat(f[v]||[]).map(_=>_.bind(this));g[v]=A.length?A:null}g.errorHandler=f.errorHandler?lAr(this[l9e],f.errorHandler):this[l9e]}),this[tp]!==null&&d==="/"){Object.assign(this[tp],y);return}this[IN][tp]=y,r.all(d+(d.endsWith("/")?"*":"/*"),m,y),r.all(d,m,y)}function l(d,f){let p=this[IN][tp],h=f9e(p.server,d),m=d9e(p,t,d,h);m.info({req:d},"incoming request");let y=new c9e(h,null,d,null,m,p),g=new u9e(f,y,m);y.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),y.log.warn(r.prettyPrint()),g.code(404).send(new dAr)}}p9e.exports=fAr});var g9e=b((tDn,b6)=>{"use strict";b6.exports=Gr;b6.exports.default=Gr;var m9e={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},pAr=Object.prototype.hasOwnProperty,hAr=new RegExp("idle","u");function Gr(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:i=e}={}){let s=null,a=0;if(a===0)if(e&&typeof e=="object"&&!Array.isArray(e)){e.connectionTimeout===void 0&&(e.connectionTimeout=0),e.keepAliveTimeout===void 0&&(e.keepAliveTimeout=72e3),e.maxRequestsPerSocket===void 0&&(e.maxRequestsPerSocket=0),e.requestTimeout===void 0&&(e.requestTimeout=0),e.bodyLimit===void 0&&(e.bodyLimit=1048576),e.caseSensitive===void 0&&(e.caseSensitive=!0),e.allowUnsafeRegex===void 0&&(e.allowUnsafeRegex=!1),e.ignoreTrailingSlash===void 0&&(e.ignoreTrailingSlash=!1),e.ignoreDuplicateSlashes===void 0&&(e.ignoreDuplicateSlashes=!1),e.disableRequestLogging===void 0&&(e.disableRequestLogging=!1),e.jsonShorthand===void 0&&(e.jsonShorthand=!0),e.maxParamLength===void 0&&(e.maxParamLength=100),e.onProtoPoisoning===void 0&&(e.onProtoPoisoning="error"),e.onConstructorPoisoning===void 0&&(e.onConstructorPoisoning="error"),e.pluginTimeout===void 0&&(e.pluginTimeout=1e4),e.requestIdHeader===void 0&&(e.requestIdHeader="request-id"),e.requestIdLogLabel===void 0&&(e.requestIdLogLabel="reqId"),e.http2SessionTimeout===void 0&&(e.http2SessionTimeout=72e3),e.exposeHeadRoutes===void 0&&(e.exposeHeadRoutes=!0),e.useSemicolonDelimiter===void 0&&(e.useSemicolonDelimiter=!0);let h=a;for(let m in e)pAr.call(m9e.properties,m)||delete e[m];if(h===a){let m=e.connectionTimeout,y=a;if(!(typeof m=="number"&&!(m%1)&&!isNaN(m)&&isFinite(m))){let g=typeof m,v;if(v===void 0)if(g==="boolean"||m===null||g==="string"&&m&&m==+m&&!(m%1))v=+m;else return Gr.errors=[{instancePath:t+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(m=v,e!==void 0&&(e.connectionTimeout=v))}var o=y===a;if(o){let g=e.keepAliveTimeout,v=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let _=typeof g,E;if(E===void 0)if(_==="boolean"||g===null||_==="string"&&g&&g==+g&&!(g%1))E=+g;else return Gr.errors=[{instancePath:t+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;E!==void 0&&(g=E,e!==void 0&&(e.keepAliveTimeout=E))}var o=v===a;if(o){if(e.forceCloseConnections!==void 0){let _=e.forceCloseConnections,E=a,S=a,C=!1,I=null,N=a;if(typeof _!="string"){let O=typeof _,P;if(P===void 0)if(O=="number"||O=="boolean")P=""+_;else if(_===null)P="";else{let $={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[$]:s.push($),a++}P!==void 0&&(_=P,e!==void 0&&(e.forceCloseConnections=P))}if(a===N&&typeof _=="string"&&!hAr.test(_)){let O={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};s===null?s=[O]:s.push(O),a++}var u=N===a;u&&(C=!0,I=0);let T=a;if(typeof _!="boolean"){let O;if(O===void 0)if(_==="false"||_===0||_===null)O=!1;else if(_==="true"||_===1)O=!0;else{let P={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};s===null?s=[P]:s.push(P),a++}O!==void 0&&(_=O,e!==void 0&&(e.forceCloseConnections=O))}var u=T===a;if(u&&C?(C=!1,I=[I,1]):u&&(C=!0,I=1),C)a=S,s!==null&&(S?s.length=S:s=null);else{let O={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:I},message:"must match exactly one schema in oneOf"};return s===null?s=[O]:s.push(O),a++,Gr.errors=s,!1}var o=E===a}else var o=!0;if(o){let _=e.maxRequestsPerSocket,E=a;if(!(typeof _=="number"&&!(_%1)&&!isNaN(_)&&isFinite(_))&&_!==null){let C=typeof _,I;if(I===void 0)if(C==="boolean"||_===null||C==="string"&&_&&_==+_&&!(_%1))I=+_;else if(_===""||_===0||_===!1)I=null;else return Gr.errors=[{instancePath:t+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;I!==void 0&&(_=I,e!==void 0&&(e.maxRequestsPerSocket=I))}var o=E===a;if(o){let C=e.requestTimeout,I=a;if(!(typeof C=="number"&&!(C%1)&&!isNaN(C)&&isFinite(C))){let T=typeof C,k;if(k===void 0)if(T==="boolean"||C===null||T==="string"&&C&&C==+C&&!(C%1))k=+C;else return Gr.errors=[{instancePath:t+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;k!==void 0&&(C=k,e!==void 0&&(e.requestTimeout=k))}var o=I===a;if(o){let T=e.bodyLimit,k=a;if(!(typeof T=="number"&&!(T%1)&&!isNaN(T)&&isFinite(T))){let P=typeof T,$;if($===void 0)if(P==="boolean"||T===null||P==="string"&&T&&T==+T&&!(T%1))$=+T;else return Gr.errors=[{instancePath:t+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;$!==void 0&&(T=$,e!==void 0&&(e.bodyLimit=$))}var o=k===a;if(o){let P=e.caseSensitive,$=a;if(typeof P!="boolean"){let j;if(j===void 0)if(P==="false"||P===0||P===null)j=!1;else if(P==="true"||P===1)j=!0;else return Gr.errors=[{instancePath:t+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(P=j,e!==void 0&&(e.caseSensitive=j))}var o=$===a;if(o){let j=e.allowUnsafeRegex,z=a;if(typeof j!="boolean"){let K;if(K===void 0)if(j==="false"||j===0||j===null)K=!1;else if(j==="true"||j===1)K=!0;else return Gr.errors=[{instancePath:t+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;K!==void 0&&(j=K,e!==void 0&&(e.allowUnsafeRegex=K))}var o=z===a;if(o){if(e.http2!==void 0){let K=e.http2,Z=a;if(typeof K!="boolean"){let ie;if(ie===void 0)if(K==="false"||K===0||K===null)ie=!1;else if(K==="true"||K===1)ie=!0;else return Gr.errors=[{instancePath:t+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ie!==void 0&&(K=ie,e!==void 0&&(e.http2=ie))}var o=Z===a}else var o=!0;if(o){if(e.https!==void 0){let K=e.https,Z=a,Y=a,ie=!0,ue=a,he=a,ye=a,q=a,B=!1,ae=null,M=a;if(typeof K!="boolean"){let H;if(H===void 0)if(K==="false"||K===0||K===null)H=!1;else if(K==="true"||K===1)H=!0;else{let G={};s===null?s=[G]:s.push(G),a++}H!==void 0&&(K=H,e!==void 0&&(e.https=H))}var c=M===a;c&&(B=!0,ae=0);let F=a;if(K!==null){let H;if(H===void 0)if(K===""||K===0||K===!1)H=null;else{let G={};s===null?s=[G]:s.push(G),a++}H!==void 0&&(K=H,e!==void 0&&(e.https=H))}var c=F===a;if(c&&B)B=!1,ae=[ae,1];else{c&&(B=!0,ae=1);let H=a;if(a===H)if(K&&typeof K=="object"&&!Array.isArray(K)){let J;if(K.allowHTTP1===void 0&&(J="allowHTTP1")){let ee={};s===null?s=[ee]:s.push(ee),a++}else{let ee=a;for(let te in K)te!=="allowHTTP1"&&delete K[te];if(ee===a&&K.allowHTTP1!==void 0){let te=K.allowHTTP1;if(typeof te!="boolean"){let re;if(re===void 0)if(te==="false"||te===0||te===null)re=!1;else if(te==="true"||te===1)re=!0;else{let ce={};s===null?s=[ce]:s.push(ce),a++}re!==void 0&&(te=re,K!==void 0&&(K.allowHTTP1=re))}}}}else{let J={};s===null?s=[J]:s.push(J),a++}var c=H===a;c&&B?(B=!1,ae=[ae,2]):c&&(B=!0,ae=2)}if(B)a=q,s!==null&&(q?s.length=q:s=null);else{let H={};s===null?s=[H]:s.push(H),a++}var l=ye===a;if(l){let H={};s===null?s=[H]:s.push(H),a++}else a=he,s!==null&&(he?s.length=he:s=null);var d=ue===a;if(a=Y,s!==null&&(Y?s.length=Y:s=null),d){let H=a;e.https=!0;var d=H===a;ie=d}if(!ie){let H={instancePath:t+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return s===null?s=[H]:s.push(H),a++,Gr.errors=s,!1}var o=Z===a}else var o=!0;if(o){let K=e.ignoreTrailingSlash,Z=a;if(typeof K!="boolean"){let ie;if(ie===void 0)if(K==="false"||K===0||K===null)ie=!1;else if(K==="true"||K===1)ie=!0;else return Gr.errors=[{instancePath:t+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ie!==void 0&&(K=ie,e!==void 0&&(e.ignoreTrailingSlash=ie))}var o=Z===a;if(o){let ie=e.ignoreDuplicateSlashes,ue=a;if(typeof ie!="boolean"){let ye;if(ye===void 0)if(ie==="false"||ie===0||ie===null)ye=!1;else if(ie==="true"||ie===1)ye=!0;else return Gr.errors=[{instancePath:t+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ye!==void 0&&(ie=ye,e!==void 0&&(e.ignoreDuplicateSlashes=ye))}var o=ue===a;if(o){let ye=e.disableRequestLogging,q=a;if(typeof ye!="boolean"){let ae;if(ae===void 0)if(ye==="false"||ye===0||ye===null)ae=!1;else if(ye==="true"||ye===1)ae=!0;else return Gr.errors=[{instancePath:t+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ae!==void 0&&(ye=ae,e!==void 0&&(e.disableRequestLogging=ae))}var o=q===a;if(o){let ae=e.jsonShorthand,M=a;if(typeof ae!="boolean"){let V;if(V===void 0)if(ae==="false"||ae===0||ae===null)V=!1;else if(ae==="true"||ae===1)V=!0;else return Gr.errors=[{instancePath:t+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;V!==void 0&&(ae=V,e!==void 0&&(e.jsonShorthand=V))}var o=M===a;if(o){let V=e.maxParamLength,H=a;if(!(typeof V=="number"&&!(V%1)&&!isNaN(V)&&isFinite(V))){let J=typeof V,ee;if(ee===void 0)if(J==="boolean"||V===null||J==="string"&&V&&V==+V&&!(V%1))ee=+V;else return Gr.errors=[{instancePath:t+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ee!==void 0&&(V=ee,e!==void 0&&(e.maxParamLength=ee))}var o=H===a;if(o){let J=e.onProtoPoisoning,ee=a;if(typeof J!="string"){let re=typeof J,ce;if(ce===void 0)if(re=="number"||re=="boolean")ce=""+J;else if(J===null)ce="";else return Gr.errors=[{instancePath:t+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ce!==void 0&&(J=ce,e!==void 0&&(e.onProtoPoisoning=ce))}var o=ee===a;if(o){let re=e.onConstructorPoisoning,ce=a;if(typeof re!="string"){let pe=typeof re,Ce;if(Ce===void 0)if(pe=="number"||pe=="boolean")Ce=""+re;else if(re===null)Ce="";else return Gr.errors=[{instancePath:t+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Ce!==void 0&&(re=Ce,e!==void 0&&(e.onConstructorPoisoning=Ce))}var o=ce===a;if(o){let pe=e.pluginTimeout,Ce=a;if(!(typeof pe=="number"&&!(pe%1)&&!isNaN(pe)&&isFinite(pe))){let We=typeof pe,Ve;if(Ve===void 0)if(We==="boolean"||pe===null||We==="string"&&pe&&pe==+pe&&!(pe%1))Ve=+pe;else return Gr.errors=[{instancePath:t+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Ve!==void 0&&(pe=Ve,e!==void 0&&(e.pluginTimeout=Ve))}var o=Ce===a;if(o){let We=e.requestIdHeader,Ve=a,Te=a,Ne=!1,Ue=a;if(We!==!1){let Ge={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:m9e.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};s===null?s=[Ge]:s.push(Ge),a++}var f=Ue===a;if(Ne=Ne||f,!Ne){let Ge=a;if(typeof We!="string"){let It=typeof We,Ze;if(Ze===void 0)if(It=="number"||It=="boolean")Ze=""+We;else if(We===null)Ze="";else{let $t={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[$t]:s.push($t),a++}Ze!==void 0&&(We=Ze,e!==void 0&&(e.requestIdHeader=Ze))}var f=Ge===a;Ne=Ne||f}if(Ne)a=Te,s!==null&&(Te?s.length=Te:s=null);else{let Ge={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return s===null?s=[Ge]:s.push(Ge),a++,Gr.errors=s,!1}var o=Ve===a;if(o){let Ge=e.requestIdLogLabel,Be=a;if(typeof Ge!="string"){let Ze=typeof Ge,$t;if($t===void 0)if(Ze=="number"||Ze=="boolean")$t=""+Ge;else if(Ge===null)$t="";else return Gr.errors=[{instancePath:t+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;$t!==void 0&&(Ge=$t,e!==void 0&&(e.requestIdLogLabel=$t))}var o=Be===a;if(o){let Ze=e.http2SessionTimeout,$t=a;if(!(typeof Ze=="number"&&!(Ze%1)&&!isNaN(Ze)&&isFinite(Ze))){let St=typeof Ze,ft;if(ft===void 0)if(St==="boolean"||Ze===null||St==="string"&&Ze&&Ze==+Ze&&!(Ze%1))ft=+Ze;else return Gr.errors=[{instancePath:t+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ft!==void 0&&(Ze=ft,e!==void 0&&(e.http2SessionTimeout=ft))}var o=$t===a;if(o){let St=e.exposeHeadRoutes,ft=a;if(typeof St!="boolean"){let Kr;if(Kr===void 0)if(St==="false"||St===0||St===null)Kr=!1;else if(St==="true"||St===1)Kr=!0;else return Gr.errors=[{instancePath:t+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Kr!==void 0&&(St=Kr,e!==void 0&&(e.exposeHeadRoutes=Kr))}var o=ft===a;if(o){let Kr=e.useSemicolonDelimiter,za=a;if(typeof Kr!="boolean"){let $n;if($n===void 0)if(Kr==="false"||Kr===0||Kr===null)$n=!1;else if(Kr==="true"||Kr===1)$n=!0;else return Gr.errors=[{instancePath:t+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;$n!==void 0&&(Kr=$n,e!==void 0&&(e.useSemicolonDelimiter=$n))}var o=za===a;if(o){if(e.versioning!==void 0){let $n=e.versioning,ad=a;if(a===ad)if($n&&typeof $n=="object"&&!Array.isArray($n)){let Sa;if($n.storage===void 0&&(Sa="storage")||$n.deriveVersion===void 0&&(Sa="deriveVersion"))return Gr.errors=[{instancePath:t+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:Sa},message:"must have required property '"+Sa+"'"}],!1}else return Gr.errors=[{instancePath:t+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=ad===a}else var o=!0;if(o)if(e.constraints!==void 0){let $n=e.constraints,ad=a;if(a===ad)if($n&&typeof $n=="object"&&!Array.isArray($n))for(let Sa in $n){let wa=$n[Sa],Gc=a;if(a===Gc)if(wa&&typeof wa=="object"&&!Array.isArray(wa)){let hc;if(wa.name===void 0&&(hc="name")||wa.storage===void 0&&(hc="storage")||wa.validate===void 0&&(hc="validate")||wa.deriveConstraint===void 0&&(hc="deriveConstraint"))return Gr.errors=[{instancePath:t+"/constraints/"+Sa.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:hc},message:"must have required property '"+hc+"'"}],!1;if(wa.name!==void 0){let od=wa.name;if(typeof od!="string"){let mc=typeof od,Fn;if(Fn===void 0)if(mc=="number"||mc=="boolean")Fn=""+od;else if(od===null)Fn="";else return Gr.errors=[{instancePath:t+"/constraints/"+Sa.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Fn!==void 0&&(od=Fn,wa!==void 0&&(wa.name=Fn))}}}else return Gr.errors=[{instancePath:t+"/constraints/"+Sa.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Gc===a;if(!p)break}else return Gr.errors=[{instancePath:t+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=ad===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return Gr.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return Gr.errors=s,a===0}b6.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var y9e=b((rDn,S6)=>{"use strict";var E6=g9e(),mAr=cB()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:gAr}=Wa();function yAr(e){let t=mAr(e);if(!E6(t)){let r=new gAr(JSON.stringify(E6.errors.map(n=>n.message)));throw r.errors=E6.errors,r}return Wre(t)}function Wre(e){let t=Object.getOwnPropertyNames(e);for(let r of t){let n=e[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(e[r]=n&&typeof n=="object"?Wre(n):n)}return Object.freeze(e)}S6.exports=yAr;S6.exports.defaultInitOptions=E6.defaultInitOptions;S6.exports.utils={deepFreezeObject:Wre}});var x9e=b((nDn,I9e)=>{"use strict";var{kAvvioBoot:_Ar,kChildren:_9e,kRoutePrefix:A9e,kLogLevel:v9e,kLogSerializers:Xre,kHooks:Jre,kSchemaController:TS,kContentTypeParser:b9e,kReply:E9e,kRequest:S9e,kFourOhFour:AAr,kPluginNameChain:w9e}=Vs(),vAr=t3(),bAr=_3(),EAr=Ere(),SAr=JX(),{buildHooks:wAr}=eg(),xN=Tre();I9e.exports=function(t,r,n){let i=xN.registerPlugin.call(t,r),s=xN.getPluginName(r)||xN.getFuncPreview(r);if(i)return t[w9e].push(s),t;let a=Object.create(t);t[_9e].push(a),a.ready=t[_Ar].bind(a),a[_9e]=[],a[E9e]=vAr.buildReply(a[E9e]),a[S9e]=bAr.buildRequest(a[S9e]),a[b9e]=SAr.helpers.buildContentTypeParser(a[b9e]),a[Jre]=wAr(a[Jre]),a[A9e]=IAr(a[A9e],n.prefix),a[v9e]=n.logLevel||a[v9e],a[TS]=EAr.buildSchemaController(t[TS]),a.getSchema=a[TS].getSchema.bind(a[TS]),a.getSchemas=a[TS].getSchemas.bind(a[TS]),a[xN.kRegisteredPlugins]=Object.create(a[xN.kRegisteredPlugins]),a[w9e]=[s],(a[Xre]||n.logSerializers)&&(a[Xre]=Object.assign(Object.create(a[Xre]),n.logSerializers)),n.prefix&&a[AAr].arrange404(a);for(let o of a[Jre].onRegister)o.call(this,a,n);return a};function IAr(e,t){return t?(e.endsWith("/")&&t[0]==="/"?t=t.slice(1):t[0]!=="/"&&(t="/"+t),e+t):e}});var T9e=b((iDn,C9e)=>{"use strict";C9e.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var D9e=b(Zre=>{"use strict";Zre.parse=kAr;Zre.serialize=OAr;var xAr=Object.prototype.toString,CAr=Object.prototype.hasOwnProperty,TAr=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,NAr=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,RAr=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,DAr=/^[\u0020-\u003A\u003D-\u007E]*$/;function kAr(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");var r={},n=e.length;if(n<2)return r;var i=t&&t.decode||PAr,s=0,a=0,o=0;do{if(a=e.indexOf("=",s),a===-1)break;if(o=e.indexOf(";",s),o===-1)o=n;else if(a>o){s=e.lastIndexOf(";",a-1)+1;continue}var u=N9e(e,s,a),c=R9e(e,a,u),l=e.slice(u,c);if(!CAr.call(r,l)){var d=N9e(e,a+1,o),f=R9e(e,o,d);e.charCodeAt(d)===34&&e.charCodeAt(f-1)===34&&(d++,f--);var p=e.slice(d,f);r[l]=LAr(p,i)}s=o+1}while(sr;){var n=e.charCodeAt(--t);if(n!==32&&n!==9)return t+1}return r}function OAr(e,t,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!TAr.test(e))throw new TypeError("argument name is invalid");var i=n(t);if(!NAr.test(i))throw new TypeError("argument val is invalid");var s=e+"="+i;if(!r)return s;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+a}if(r.domain){if(!RAr.test(r.domain))throw new TypeError("option domain is invalid");s+="; Domain="+r.domain}if(r.path){if(!DAr.test(r.path))throw new TypeError("option path is invalid");s+="; Path="+r.path}if(r.expires){var o=r.expires;if(!MAr(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+o.toUTCString()}if(r.httpOnly&&(s+="; HttpOnly"),r.secure&&(s+="; Secure"),r.partitioned&&(s+="; Partitioned"),r.priority){var u=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(u){case"low":s+="; Priority=Low";break;case"medium":s+="; Priority=Medium";break;case"high":s+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var c=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(c){case!0:s+="; SameSite=Strict";break;case"lax":s+="; SameSite=Lax";break;case"strict":s+="; SameSite=Strict";break;case"none":s+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return s}function PAr(e){return e.indexOf("%")!==-1?decodeURIComponent(e):e}function MAr(e){return xAr.call(e)==="[object Date]"}function LAr(e,t){try{return t(e)}catch{return e}}});var P9e=b((aDn,O9e)=>{"use strict";var{URL:k9e}=require("node:url"),ene="http://localhost";O9e.exports=function(t,r){(typeof t=="string"||Object.prototype.toString.call(t)==="[object String]")&&t.startsWith("//")&&(t=ene+t);let n=typeof t=="object"?Object.assign(new k9e(ene),t):new k9e(t,ene);if(typeof r=="string"){r=new URLSearchParams(r);for(let i of r.keys()){n.searchParams.delete(i);for(let s of r.getAll(i))n.searchParams.append(i,s)}}else{let i=Object.assign({},t.query,r);for(let s in i){let a=i[s];if(Array.isArray(a)){n.searchParams.delete(s);for(let o of a)n.searchParams.append(s,o)}else n.searchParams.set(s,a)}}return n}});var M9e=b((oDn,tne)=>{"use strict";var{randomUUID:BAr}=require("node:crypto"),{Readable:$Ar}=require("node:stream"),NS;function FAr(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function UAr(e){NS=NS??new TextEncoder;let t=`----formdata-${BAr()}`,r=`--${t}\r -Content-Disposition: form-data`;let n=u=>u.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),i=u=>u.replace(/\r?\n|\r/g,`\r -`),s=new Uint8Array([13,10]);async function*a(){for(let[u,c]of e)if(typeof c=="string")yield NS.encode(`${r}; name="${n(i(u))}"\r +`))}};_We.exports=Jce});var yWe=S((Rzn,EWe)=>{"use strict";var WMr=AWe(),o$={STATIC:0,PARAMETRIC:1,WILDCARD:2},r$=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(t,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new WMr),this.isLeafNode=!0,this.routes.push(t),this.handlerStorage.addHandler(r,t)}},n$=class extends r${constructor(){super(),this.staticChildren={}}findStaticMatchingChild(t,r){let n=this.staticChildren[t.charAt(r)];return n===void 0||!n.matchPrefix(t,r)?null:n}getStaticChild(t,r=0){if(t.length===r)return this;let n=this.findStaticMatchingChild(t,r);return n?n.getStaticChild(t,r+n.prefix.length):null}createStaticChild(t){if(t.length===0)return this;let r=this.staticChildren[t.charAt(0)];if(r){let s=1;for(;s(s.regex&&s.regex.source)===r);return n||null}createParametricChild(t,r,n){let s=this.getParametricChild(t);return s?(s.nodePaths.add(n),s):(s=new i$(t,r,n),this.parametricChildren.push(s),this.parametricChildren.sort((i,a)=>i.isRegex?a.isRegex?i.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(i.staticSuffix)?1:i.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),s)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new a$,this.wildcardChild}split(t,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new e(n);return i.staticChildren[s.charAt(0)]=this,t.staticChildren[n.charAt(0)]=i,i}getNextNode(t,r,n,s){let i=this.findStaticMatchingChild(t,r),a=0;if(i===null){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return i}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let t=[];for(let r=1;r{"use strict";var XMr=require("node:assert");function CD(){if(!(this instanceof CD))return new CD;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}CD.prototype.set=function(e,t){if(typeof e!="string")throw new TypeError("Version should be a string");let[r,n,s]=e.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,s=Number(s)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=t,this.store["*"]=t,this.store["x.x"]=t,this.store["x.x.x"]=t),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=t,this.store[`${r}.x.x`]=t),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=t),this.store[`${r}.${n}.${s}`]=t,this};CD.prototype.get=function(e){return this.store[e]};vWe.exports={name:"version",mustMatchWhenDerived:!0,storage:CD,validate(e){XMr(typeof e=="string","Version should be a string")}}});var bWe=S((xzn,TWe)=>{"use strict";var JMr=require("node:assert");function ZMr(){let e={},t=[];return{get:r=>{let n=e[r];if(n)return n;for(let s of t)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?t.push({host:r,value:n}):e[r]=n}}}TWe.exports={name:"host",mustMatchWhenDerived:!1,storage:ZMr,validate(e){JMr(typeof e=="string"||Object.prototype.toString.call(e)==="[object RegExp]","Host should be a string or a RegExp")}}});var RWe=S((wzn,IWe)=>{"use strict";var ekr=SWe(),tkr=bWe(),Zce=require("node:assert"),eue=class{constructor(t){if(this.strategies={version:ekr,host:tkr},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,t)for(let r of Object.values(t))this.addConstraintStrategy(r)}isStrategyUsed(t){return this.strategiesInUse.has(t)||this.asyncStrategiesInUse.has(t)}hasConstraintStrategy(t){let r=this.strategies[t];return r!==void 0?r.isCustom||this.isStrategyUsed(t):!1}addConstraintStrategy(t){if(Zce(typeof t.name=="string"&&t.name!=="","strategy.name is required."),Zce(t.storage&&typeof t.storage=="function","strategy.storage function is required."),Zce(t.deriveConstraint&&typeof t.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[t.name]&&this.strategies[t.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${t.name}.`);if(this.isStrategyUsed(t.name))throw new Error(`There already exists a route with ${t.name} constraint.`);t.isCustom=!0,t.isAsync=t.deriveConstraint.length===3,this.strategies[t.name]=t,t.mustMatchWhenDerived&&this.noteUsage({[t.name]:t})}deriveConstraints(t,r,n){let s=this.deriveSyncConstraints(t,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,t,r,n)}deriveSyncConstraints(t,r){}noteUsage(t){if(t){let r=this.strategiesInUse.size;for(let n in t)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(t){if(!this.strategies[t])throw new Error(`No strategy registered for constraint key ${t}`);return this.strategies[t].storage()}validateConstraints(t){for(let r in t){let n=t[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let s=this.strategies[r];if(!s)throw new Error(`No strategy registered for constraint key ${r}`);s.validate&&s.validate(n)}}deriveAsyncConstraints(t,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,t);return}t=t||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}t[a]=u,--i===0&&s(null,t)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let t=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?t.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?t.push(" version: req.headers['accept-version'],"):t.push(" host: req.headers.host || req.headers[':authority'],")}t.push("}"),this.deriveSyncConstraints=new Function("req","ctx",t.join(` +`)).bind(this)}};IWe.exports=eue});var xWe=S((Nzn,CWe)=>{"use strict";var rkr=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];CWe.exports=rkr});var OWe=S((Ozn,NWe)=>{"use strict";function wWe(e,t){return e===50?t===53?"%":t===51?"#":t===52?"$":t===54?"&":t===66||t===98?"+":t===67||t===99?",":t===70||t===102?"/":null:e===51?t===65||t===97?":":t===66||t===98?";":t===68||t===100?"=":t===70||t===102?"?":null:e===52&&t===48?"@":null}function nkr(e,t){let r=!1,n=!1,s="";for(let a=1;a{"use strict";var Vi=require("node:assert"),ikr=FQe(),c$=cWe(),rue=hd(),{prettyPrintTree:akr}=gWe(),{StaticNode:DWe,NODE_TYPES:PWe}=yWe(),okr=RWe(),QI=xWe(),tue=e$(),{safeDecodeURI:ckr,safeDecodeURIComponent:LWe}=OWe(),MWe=/^https?:\/\/.*?\//,Yv=/(\/:[^/()]*?)\?(\/?)/;if(!c$(MWe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!c$(Yv))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function bi(e){if(!(this instanceof bi))return new bi(e);e=e||{},this._opts=e,e.defaultRoute?(Vi(typeof e.defaultRoute=="function","The default route must be a function"),this.defaultRoute=e.defaultRoute):this.defaultRoute=null,e.onBadUrl?(Vi(typeof e.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=e.onBadUrl):this.onBadUrl=null,e.buildPrettyMeta?(Vi(typeof e.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=e.buildPrettyMeta):this.buildPrettyMeta=ukr,e.querystringParser?(Vi(typeof e.querystringParser=="function","querystringParser must be a function"),this.querystringParser=e.querystringParser):this.querystringParser=t=>t===""?{}:ikr.parse(t),this.caseSensitive=e.caseSensitive===void 0?!0:e.caseSensitive,this.ignoreTrailingSlash=e.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=e.ignoreDuplicateSlashes||!1,this.maxParamLength=e.maxParamLength||100,this.allowUnsafeRegex=e.allowUnsafeRegex||!1,this.constrainer=new okr(e.constraints),this.useSemicolonDelimiter=e.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}bi.prototype.on=function(t,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),Vi(typeof r=="string","Path should be a string"),Vi(r.length>0,"The path could not be empty"),Vi(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),Vi(typeof s=="function","Handler should be a function");let a=r.match(Yv);if(a){Vi(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(Yv,"$1$2"),l=r.replace(Yv,"$2")||"/";this.on(t,u,n,s,i),this.on(t,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=nue(r)),this.ignoreTrailingSlash&&(r=sue(r));let c=Array.isArray(t)?t:[t];for(let u of c)Vi(typeof u=="string","Method should be a string"),Vi(QI.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};bi.prototype._on=function(t,r,n,s,i){let a={};n.constraints!==void 0&&(Vi(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[t]===void 0&&(this.trees[t]=new DWe("/"));let o=r;if(o==="*"&&this.trees[t].prefix.length!==0){let f=this.trees[t];this.trees[t]=new DWe(""),this.trees[t].staticChildren["/"]=f}let c=this.trees[t],u=c.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let h=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,p=o.charCodeAt(f)===42;if(h||p||f===o.length&&f!==u){let m=o.slice(u,f);this.caseSensitive||(m=m.toLowerCase()),m=m.split("::").join(":"),m=m.split("%").join("%25"),c=c.createStaticChild(m)}if(h){let m=!1,g=!0,_="",y=[],A=f+1;for(let E=A;;E++){let v=o.charCodeAt(E),b=v===40,I=v===45||v===46,T=v===47||E===o.length;if(b||I||T){let x=o.slice(A,E);if(l.push(x),m=m||b||I,b){let M=UWe(o,E),L=o.slice(E,M+1);this.allowUnsafeRegex||Vi(c$(new RegExp(L)),`The regex '${L}' is not safe!`),y.push(BWe(L)),E=M+1,g=!0}else y.push(g?"(.*?)":`(${_}|(?:(?!${_}).)*)`),g=!1;let w=E;for(;E0,"The path could not be empty"),Vi(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),Vi(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(Yv);if(s){Vi(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(Yv,"$1$2"),o=r.replace(Yv,"$2");this.off(t,a,n),this.off(t,o,n);return}this.ignoreDuplicateSlashes&&(r=nue(r)),this.ignoreTrailingSlash&&(r=sue(r));let i=Array.isArray(t)?t:[t];for(let a of i)this._off(a,r,n)};bi.prototype._off=function(t,r,n){Vi(typeof t=="string","Method should be a string"),Vi(QI.includes(t),`Method '${t}' is not an http method.`);function s(c){return t!==c.method||r!==c.path}function i(c){return s(c)||!rue(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};bi.prototype.lookup=function(t,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(t,n),a=this.find(t.method,t.url,i);return this.callHandler(a,t,r,n)}this.constrainer.deriveConstraints(t,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(t.method,t.url,a),c=this.callHandler(o,t,r,n);s(null,c)}catch(o){s(o)}})};bi.prototype.callHandler=function(t,r,n,s){return t===null?this._defaultRoute(r,n,s):s===void 0?t.handler(r,n,t.params,t.store,t.searchParams):t.handler.call(s,r,n,t.params,t.store,t.searchParams)};bi.prototype.find=function(t,r,n){let s=this.trees[t];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(MWe,"/")),this.ignoreDuplicateSlashes&&(r=nue(r));let i,a,o;try{i=ckr(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=sue(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,h=[];for(;;){if(l===f&&s.isLeafNode){let _=s.handlerStorage.getMatchingHandler(n);if(_!==null)return{handler:_.handler,store:_.store,params:_._createParamsObject(d),searchParams:this.querystringParser(a)}}let p=s.getNextNode(r,l,h,d.length);if(p===null){if(h.length===0)return null;let _=h.pop();l=_.brotherPathIndex,d.splice(_.paramsCount),p=_.brotherNode}if(s=p,s.kind===PWe.STATIC){l+=s.prefix.length;continue}if(s.kind===PWe.WILDCARD){let _=c.slice(l);o&&(_=LWe(_)),d.push(_),l=f;continue}let m=c.indexOf("/",l);m===-1&&(m=f);let g=c.slice(l,m);if(o&&(g=LWe(g)),s.isRegex){let _=s.regex.exec(g);if(_===null)continue;for(let y=1;y<_.length;y++){let A=_[y];if(A.length>u)return null;d.push(A)}}else{if(g.length>u)return null;d.push(g)}l=m}};bi.prototype._rebuild=function(e){this.reset();for(let t of e){let{method:r,path:n,opts:s,handler:i,store:a}=t;this._on(r,n,s,i,a)}};bi.prototype._defaultRoute=function(e,t,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(e,t):this.defaultRoute.call(r,e,t);t.statusCode=404,t.end()};bi.prototype._onBadUrl=function(e){if(this.onBadUrl===null)return null;let t=this.onBadUrl;return{handler:(r,n,s)=>t(e,r,n),params:{},store:null}};bi.prototype.prettyPrint=function(e={}){let t=e.method;e.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(t===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[tue.name]=tue;let a=new bi({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[tue.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[t];return r==null?"(empty tree)":akr(r,e)};for(let e in QI){if(!QI.hasOwnProperty(e))continue;let t=QI[e],r=t.toLowerCase();bi.prototype[r]=function(n,s,i){return this.on(t,n,s,i)}}bi.prototype.all=function(e,t,r){this.on(QI,e,t,r)};FWe.exports=bi;function kWe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nue(e){return e.replace(/\/\/+/g,"/")}function sue(e){return e.length>1&&e.charCodeAt(e.length-1)===47?e.slice(0,-1):e}function BWe(e){return e.charCodeAt(1)===94&&(e=e.slice(0,1)+e.slice(2)),e.charCodeAt(e.length-2)===36&&(e=e.slice(0,e.length-2)+e.slice(e.length-1)),e}function UWe(e,t){let r=1;for(;t{"use strict";function aue(e,t,r,n){if(r===void 0)return t.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{t.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);t.header("content-length",s),n(null,null)}function lkr(e){return e==null?aue:Array.isArray(e)?[...e,aue]:[e,aue]}$We.exports={parseHeadOnSendHandlers:lkr}});var sXe=S((Lzn,nXe)=>{"use strict";var dkr=iue(),fkr=o5(),HWe=yee(),{onRequestAbortHookRunner:hkr,lifecycleHooks:VWe,preParsingHookRunner:pkr,onTimeoutHookRunner:mkr,onRequestHookRunner:gkr}=Y_(),{supportedMethods:_kr}=Jne(),{normalizeSchema:Akr}=AO(),{parseHeadOnSendHandlers:Ekr}=qWe(),{FSTDEP007:ykr,FSTDEP008:vkr,FSTDEP014:jWe}=Zp(),{compileSchemasForValidation:Skr,compileSchemasForSerialization:Tkr}=mee(),{FST_ERR_SCH_VALIDATION_BUILD:bkr,FST_ERR_SCH_SERIALIZATION_BUILD:Ikr,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:Rkr,FST_ERR_DUPLICATED_ROUTE:Ckr,FST_ERR_INVALID_URL:xkr,FST_ERR_HOOK_INVALID_HANDLER:KWe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:wkr,FST_ERR_ROUTE_DUPLICATED_HANDLER:Nkr,FST_ERR_ROUTE_HANDLER_NOT_FN:GWe,FST_ERR_ROUTE_MISSING_HANDLER:Okr,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:Dkr,FST_ERR_ROUTE_METHOD_INVALID:Pkr,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:Lkr,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:Mkr,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:oue}=Bo(),{kRoutePrefix:kkr,kLogLevel:Bkr,kLogSerializers:zWe,kHooks:YWe,kSchemaController:Ukr,kOptions:QWe,kReplySerializerDefault:cue,kReplyIsError:Fkr,kRequestPayloadStream:$kr,kDisableRequestLogging:qkr,kSchemaErrorFormatter:Hkr,kErrorHandler:WWe,kHasBeenDecorated:XWe,kRequestAcceptVersion:uue,kRouteByFastify:lue,kRouteContext:JWe}=Ma(),{buildErrorHandler:Vkr}=WO(),{createChildLogger:jkr}=_O(),{getGenReqId:Kkr}=j8();function Gkr(e){let t=dkr(e.config),r,n,s,i,a,o,c,u,l,d,f,h,p,m=!1;return{setup(T,x){r=x.avvio,n=x.fourOhFour,s=x.logger,i=x.hasLogger,a=x.setupResponseListeners,o=x.throwIfAlreadyStarted,h=x.validateHTTPVersion,f=T.exposeHeadRoutes,c=T.disableRequestLogging,u=T.ignoreTrailingSlash,l=T.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(T,"return503OnClosing")?T.return503OnClosing:!0,p=x.keepAliveConnections},routing:t.lookup.bind(t),route:b,hasRoute:E,prepareRoute:A,getDefaultRoute:function(){return jWe(),t.defaultRoute},setDefaultRoute:function(T){if(jWe(),typeof T!="function")throw new Rkr;t.defaultRoute=T},routeHandler:I,closeRoutes:()=>{m=!0},printRoutes:t.prettyPrint.bind(t),addConstraintStrategy:g,hasConstraintStrategy:_,isAsyncConstraint:y,findRoute:v};function g(T){return o("Cannot add constraint strategy!"),t.addConstraintStrategy(T)}function _(T){return t.hasConstraintStrategy(T)}function y(){return t.constrainer.asyncStrategiesInUse.size>0}function A({method:T,url:x,options:w,handler:D,isFastify:M}){if(typeof x!="string")throw new xkr(typeof x);if(!D&&typeof w=="function")D=w,w={};else if(D&&typeof D=="function"){if(Object.prototype.toString.call(w)!=="[object Object]")throw new wkr(T,x);if(w.handler)throw typeof w.handler=="function"?new Nkr(T,x):new GWe(T,x)}return w=Object.assign({},w,{method:T,url:x,path:x,handler:D||w&&w.handler}),b.call(this,{options:w,isFastify:M})}function E({options:T}){return v(T)!==null}function v(T){let x=t.find(T.method,T.url||"",T.constraints);return x?{handler:x.handler,params:x.params,searchParams:x.searchParams}:null}function b({options:T,isFastify:x}){let w={...T},{exposeHeadRoute:D}=w,L=D!=null?D:f,U=w.method==="GET"||Array.isArray(w.method)&&w.method.includes("GET"),G=w.method==="HEAD"||Array.isArray(w.method)&&w.method.includes("HEAD"),$=L&&U?{...T}:null;o("Cannot add route!");let K=w.url||w.path||"";if(Array.isArray(w.method))for(var ee=0;ee0&&w.method!=="HEAD")switch(w.prefixTrailingSlash){case"slash":oe.call(this,{path:K,isFastify:x});break;case"no-slash":oe.call(this,{path:"",isFastify:x});break;case"both":default:oe.call(this,{path:"",isFastify:x}),u!==!0&&(l!==!0||!z.endsWith("/"))&&oe.call(this,{path:K,prefixing:!0,isFastify:x})}else K[0]==="/"&&z.endsWith("/")?oe.call(this,{path:K.slice(1),isFastify:x}):oe.call(this,{path:K,isFastify:x});return this;function oe({path:le,prefixing:te=!1,isFastify:Q=!1}){let Z=z+le;if(w.url=Z,w.path=Z,w.routePath=le,w.prefix=z,w.logLevel=w.logLevel||this[Bkr],(this[zWe]||w.logSerializers)&&(w.logSerializers=Object.assign(Object.create(this[zWe]),w.logSerializers)),w.attachValidation==null&&(w.attachValidation=!1),te===!1)for(let H of this[YWe].onRoute)H.call(this,w);for(let H of VWe)if(w&&H in w){if(Array.isArray(w[H]))for(let j of w[H]){if(typeof j!="function")throw new KWe(H,Object.prototype.toString.call(j));if(H==="onSend"||H==="preSerialization"||H==="onError"||H==="preParsing"){if(j.constructor.name==="AsyncFunction"&&j.length===4)throw new oue}else if(H==="onRequestAbort"){if(j.constructor.name==="AsyncFunction"&&j.length!==1)throw new oue}else if(j.constructor.name==="AsyncFunction"&&j.length===3)throw new oue}else if(w[H]!==void 0&&typeof w[H]!="function")throw new KWe(H,Object.prototype.toString.call(w[H]))}let de=w.constraints||{},B={...w.config,url:Z,method:w.method},k=new fkr({schema:w.schema,handler:w.handler.bind(this),config:B,errorHandler:w.errorHandler,childLoggerFactory:w.childLoggerFactory,bodyLimit:w.bodyLimit,logLevel:w.logLevel,logSerializers:w.logSerializers,attachValidation:w.attachValidation,schemaErrorFormatter:w.schemaErrorFormatter,replySerializer:this[cue],validatorCompiler:w.validatorCompiler,serializerCompiler:w.serializerCompiler,exposeHeadRoute:L,prefixTrailingSlash:w.prefixTrailingSlash||"both",server:this,isFastify:Q});w.version&&(vkr(),de.version=w.version);let W=t.findRoute("HEAD",w.url,de),P=W!==null;G&&P&&!k[lue]&&W.store[lue]&&t.off("HEAD",w.url,de);try{t.on(w.method,w.url,{constraints:de},I,k)}catch(H){if(!k[lue])throw H.message.includes(`Method '${w.method}' already declared for route '${w.url}'`)?new Ckr(w.method,w.url):H}if(this.after((H,j)=>{k.errorHandler=w.errorHandler?Vkr(this[WWe],w.errorHandler):this[WWe],k._parserOptions.limit=w.bodyLimit||null,k.logLevel=w.logLevel,k.logSerializers=w.logSerializers,k.attachValidation=w.attachValidation,k[cue]=this[cue],k.schemaErrorFormatter=w.schemaErrorFormatter||this[Hkr]||k.schemaErrorFormatter,r.once("preReady",()=>{for(let q of VWe){let Y=this[YWe][q].concat(w[q]||[]).map(X=>X.bind(this));k[q]=Y.length?Y:null}for(;!k.Request[XWe]&&k.Request.parent;)k.Request=k.Request.parent;for(;!k.Reply[XWe]&&k.Reply.parent;)k.Reply=k.Reply.parent;if(n.setContext(this,k),w.schema){k.schema=Akr(k.schema,this.initialConfig);let q=this[Ukr];!w.validatorCompiler&&(w.schema.body||w.schema.headers||w.schema.querystring||w.schema.params)&&q.setupValidator(this[QWe]);try{let Y=typeof w?.validatorCompiler=="function"||q.isCustomValidatorCompiler;Skr(k,w.validatorCompiler||q.validatorCompiler,Y)}catch(Y){throw new bkr(w.method,Z,Y.message)}w.schema.response&&!w.serializerCompiler&&q.setupSerializer(this[QWe]);try{Tkr(k,w.serializerCompiler||q.serializerCompiler)}catch(Y){throw new Ikr(w.method,Z,Y.message)}}}),j(H)}),L&&U&&!G&&!P){let H=Ekr($.onSend);A.call(this,{method:"HEAD",url:le,options:{...$,onSend:H},isFastify:!0})}else P&&D&&ykr()}}function I(T,x,w,D,M){let L=Kkr(D.server,T),U={level:D.logLevel};D.logSerializers&&(U.serializers=D.logSerializers);let G=jkr(D,s,T,L,U);if(G[qkr]=c,!h(T.httpVersion)){G.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let z='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',oe={"Content-Type":"application/json","Content-Length":z.length};x.writeHead(505,oe),x.end(z);return}if(m===!0&&(T.httpVersionMajor!==2&&x.setHeader("Connection","close"),d)){let z={"Content-Type":"application/json","Content-Length":"80"};x.writeHead(503,z),x.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),G.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(T.headers.connection||"")==="keep-alive"&&p.has(T.socket)===!1&&(p.add(T.socket),T.socket.on("close",Qkr.bind({keepAliveConnections:p,socket:T.socket}))),T.headers[uue]!==void 0&&(T.headers["accept-version"]=T.headers[uue],T.headers[uue]=void 0);let K=new D.Request(L,w,T,M,G,D),ee=new D.Reply(x,K,G);c===!1&&G.info({req:K},"incoming request"),(i===!0||D.onResponse!==null)&&a(ee),D.onRequest!==null?gkr(D.onRequest,K,ee,tXe):tXe(null,K,ee),D.onRequestAbort!==null&&T.on("close",()=>{T.aborted&&hkr(D.onRequestAbort,K,zkr.bind(null,ee))}),D.onTimeout!==null&&(K.raw.socket._meta||K.raw.socket.on("timeout",Ykr),K.raw.socket._meta={context:D,request:K,reply:ee})}}function zkr(e,t){t&&e.log.error({err:t},"onRequestAborted hook failed")}function Ykr(){let{context:e,request:t,reply:r}=this._meta;mkr(e.onTimeout,t,r,Wkr)}function ZWe(e){if(typeof e!="string")throw new Pkr;if(e=e.toUpperCase(),_kr.indexOf(e)===-1)throw new Dkr(e);return e}function eXe(e,t,r){if((e==="GET"||e==="HEAD")&&r&&r.body)throw new Lkr(e,t)}function rXe(e){if(e!==void 0&&(!Number.isInteger(e)||e<=0))throw new Mkr(e)}function tXe(e,t,r){if(r.sent!==!0){if(e!=null){r[Fkr]=!0,r.send(e);return}t[$kr]=t.raw,t[JWe].preParsing!==null?pkr(t[JWe].preParsing,t,r,HWe):HWe(null,t,r)}}function Qkr(){this.keepAliveConnections.delete(this.socket)}function Wkr(){}nXe.exports={buildRouting:Gkr,validateBodyLimitOption:rXe}});var dXe=S((Mzn,lXe)=>{"use strict";var Xkr=iue(),iXe=V6(),aXe=a5(),Jkr=o5(),{kRoutePrefix:Zkr,kCanSetNotFoundHandler:xD,kFourOhFourLevelInstance:wD,kFourOhFourContext:bh,kHooks:e4r,kErrorHandler:oXe}=Ma(),{lifecycleHooks:t4r}=Y_(),{buildErrorHandler:r4r}=WO(),{FST_ERR_NOT_FOUND:n4r}=Bo(),{createChildLogger:cXe}=_O(),{getGenReqId:uXe}=j8();function s4r(e){let{logger:t}=e,r=Xkr({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[wD]=d,d[xD]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:h,method:p}=d.raw,m=`Route ${p}:${h} not found`;d.log.info(m),f.code(404).send({message:m,error:"Not Found",statusCode:404})}function a(){return function(f,h,p){let m=this[wD][bh],g=uXe(m.server,h),_=cXe(m,t,h,g),y=new aXe(g,null,h,null,_,m),A=new iXe(p,y,_);n(y,A)}}function o(d,f){let h=Object.assign({},d[bh]);h.onSend=f.onSend,f[bh]=h}function c(d,f,h,p){this[xD]===void 0&&(this[xD]=!0),this[bh]===void 0&&(this[bh]=null);let m=this,g=this[Zkr]||"/";if(this[xD]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${g}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(_=>_.bind(m)):d.preHandler=d.preHandler.bind(m)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(_=>_.bind(m)):d.preValidation=d.preValidation.bind(m))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[wD][xD]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((_,y)=>{u.call(this,g,d,f,h,p),y(_)})}function u(d,f,h,p,m){let g=new Jkr({schema:f.schema,handler:h,config:f.config||{},server:this});if(p.once("preReady",()=>{let _=this[bh];for(let y of t4r){let A=this[e4r][y].concat(f[y]||[]).map(E=>E.bind(this));_[y]=A.length?A:null}_.errorHandler=f.errorHandler?r4r(this[oXe],f.errorHandler):this[oXe]}),this[bh]!==null&&d==="/"){Object.assign(this[bh],g);return}this[wD][bh]=g,r.all(d+(d.endsWith("/")?"*":"/*"),m,g),r.all(d,m,g)}function l(d,f){let h=this[wD][bh],p=uXe(h.server,d),m=cXe(h,t,d,p);m.info({req:d},"incoming request");let g=new aXe(p,null,d,null,m,h),_=new iXe(f,g,m);g.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),g.log.warn(r.prettyPrint()),_.code(404).send(new n4r)}}lXe.exports=s4r});var hXe=S((kzn,u$)=>{"use strict";u$.exports=On;u$.exports.default=On;var fXe={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},i4r=Object.prototype.hasOwnProperty,a4r=new RegExp("idle","u");function On(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0;if(a===0)if(e&&typeof e=="object"&&!Array.isArray(e)){e.connectionTimeout===void 0&&(e.connectionTimeout=0),e.keepAliveTimeout===void 0&&(e.keepAliveTimeout=72e3),e.maxRequestsPerSocket===void 0&&(e.maxRequestsPerSocket=0),e.requestTimeout===void 0&&(e.requestTimeout=0),e.bodyLimit===void 0&&(e.bodyLimit=1048576),e.caseSensitive===void 0&&(e.caseSensitive=!0),e.allowUnsafeRegex===void 0&&(e.allowUnsafeRegex=!1),e.ignoreTrailingSlash===void 0&&(e.ignoreTrailingSlash=!1),e.ignoreDuplicateSlashes===void 0&&(e.ignoreDuplicateSlashes=!1),e.disableRequestLogging===void 0&&(e.disableRequestLogging=!1),e.jsonShorthand===void 0&&(e.jsonShorthand=!0),e.maxParamLength===void 0&&(e.maxParamLength=100),e.onProtoPoisoning===void 0&&(e.onProtoPoisoning="error"),e.onConstructorPoisoning===void 0&&(e.onConstructorPoisoning="error"),e.pluginTimeout===void 0&&(e.pluginTimeout=1e4),e.requestIdHeader===void 0&&(e.requestIdHeader="request-id"),e.requestIdLogLabel===void 0&&(e.requestIdLogLabel="reqId"),e.http2SessionTimeout===void 0&&(e.http2SessionTimeout=72e3),e.exposeHeadRoutes===void 0&&(e.exposeHeadRoutes=!0),e.useSemicolonDelimiter===void 0&&(e.useSemicolonDelimiter=!0);let p=a;for(let m in e)i4r.call(fXe.properties,m)||delete e[m];if(p===a){let m=e.connectionTimeout,g=a;if(!(typeof m=="number"&&!(m%1)&&!isNaN(m)&&isFinite(m))){let _=typeof m,y;if(y===void 0)if(_==="boolean"||m===null||_==="string"&&m&&m==+m&&!(m%1))y=+m;else return On.errors=[{instancePath:t+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;y!==void 0&&(m=y,e!==void 0&&(e.connectionTimeout=y))}var o=g===a;if(o){let _=e.keepAliveTimeout,y=a;if(!(typeof _=="number"&&!(_%1)&&!isNaN(_)&&isFinite(_))){let E=typeof _,v;if(v===void 0)if(E==="boolean"||_===null||E==="string"&&_&&_==+_&&!(_%1))v=+_;else return On.errors=[{instancePath:t+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(_=v,e!==void 0&&(e.keepAliveTimeout=v))}var o=y===a;if(o){if(e.forceCloseConnections!==void 0){let E=e.forceCloseConnections,v=a,b=a,I=!1,T=null,x=a;if(typeof E!="string"){let M=typeof E,L;if(L===void 0)if(M=="number"||M=="boolean")L=""+E;else if(E===null)L="";else{let U={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}L!==void 0&&(E=L,e!==void 0&&(e.forceCloseConnections=L))}if(a===x&&typeof E=="string"&&!a4r.test(E)){let M={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};i===null?i=[M]:i.push(M),a++}var c=x===a;c&&(I=!0,T=0);let w=a;if(typeof E!="boolean"){let M;if(M===void 0)if(E==="false"||E===0||E===null)M=!1;else if(E==="true"||E===1)M=!0;else{let L={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[L]:i.push(L),a++}M!==void 0&&(E=M,e!==void 0&&(e.forceCloseConnections=M))}var c=w===a;if(c&&I?(I=!1,T=[T,1]):c&&(I=!0,T=1),I)a=b,i!==null&&(b?i.length=b:i=null);else{let M={instancePath:t+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:T},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,On.errors=i,!1}var o=v===a}else var o=!0;if(o){let E=e.maxRequestsPerSocket,v=a;if(!(typeof E=="number"&&!(E%1)&&!isNaN(E)&&isFinite(E))&&E!==null){let I=typeof E,T;if(T===void 0)if(I==="boolean"||E===null||I==="string"&&E&&E==+E&&!(E%1))T=+E;else if(E===""||E===0||E===!1)T=null;else return On.errors=[{instancePath:t+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.maxRequestsPerSocket=T))}var o=v===a;if(o){let I=e.requestTimeout,T=a;if(!(typeof I=="number"&&!(I%1)&&!isNaN(I)&&isFinite(I))){let w=typeof I,D;if(D===void 0)if(w==="boolean"||I===null||w==="string"&&I&&I==+I&&!(I%1))D=+I;else return On.errors=[{instancePath:t+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;D!==void 0&&(I=D,e!==void 0&&(e.requestTimeout=D))}var o=T===a;if(o){let w=e.bodyLimit,D=a;if(!(typeof w=="number"&&!(w%1)&&!isNaN(w)&&isFinite(w))){let L=typeof w,U;if(U===void 0)if(L==="boolean"||w===null||L==="string"&&w&&w==+w&&!(w%1))U=+w;else return On.errors=[{instancePath:t+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;U!==void 0&&(w=U,e!==void 0&&(e.bodyLimit=U))}var o=D===a;if(o){let L=e.caseSensitive,U=a;if(typeof L!="boolean"){let $;if($===void 0)if(L==="false"||L===0||L===null)$=!1;else if(L==="true"||L===1)$=!0;else return On.errors=[{instancePath:t+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;$!==void 0&&(L=$,e!==void 0&&(e.caseSensitive=$))}var o=U===a;if(o){let $=e.allowUnsafeRegex,K=a;if(typeof $!="boolean"){let z;if(z===void 0)if($==="false"||$===0||$===null)z=!1;else if($==="true"||$===1)z=!0;else return On.errors=[{instancePath:t+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;z!==void 0&&($=z,e!==void 0&&(e.allowUnsafeRegex=z))}var o=K===a;if(o){if(e.http2!==void 0){let z=e.http2,oe=a;if(typeof z!="boolean"){let te;if(te===void 0)if(z==="false"||z===0||z===null)te=!1;else if(z==="true"||z===1)te=!0;else return On.errors=[{instancePath:t+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;te!==void 0&&(z=te,e!==void 0&&(e.http2=te))}var o=oe===a}else var o=!0;if(o){if(e.https!==void 0){let z=e.https,oe=a,le=a,te=!0,Q=a,Z=a,de=a,B=a,k=!1,W=null,P=a;if(typeof z!="boolean"){let q;if(q===void 0)if(z==="false"||z===0||z===null)q=!1;else if(z==="true"||z===1)q=!0;else{let Y={};i===null?i=[Y]:i.push(Y),a++}q!==void 0&&(z=q,e!==void 0&&(e.https=q))}var u=P===a;u&&(k=!0,W=0);let H=a;if(z!==null){let q;if(q===void 0)if(z===""||z===0||z===!1)q=null;else{let Y={};i===null?i=[Y]:i.push(Y),a++}q!==void 0&&(z=q,e!==void 0&&(e.https=q))}var u=H===a;if(u&&k)k=!1,W=[W,1];else{u&&(k=!0,W=1);let q=a;if(a===q)if(z&&typeof z=="object"&&!Array.isArray(z)){let X;if(z.allowHTTP1===void 0&&(X="allowHTTP1")){let ae={};i===null?i=[ae]:i.push(ae),a++}else{let ae=a;for(let ne in z)ne!=="allowHTTP1"&&delete z[ne];if(ae===a&&z.allowHTTP1!==void 0){let ne=z.allowHTTP1;if(typeof ne!="boolean"){let se;if(se===void 0)if(ne==="false"||ne===0||ne===null)se=!1;else if(ne==="true"||ne===1)se=!0;else{let J={};i===null?i=[J]:i.push(J),a++}se!==void 0&&(ne=se,z!==void 0&&(z.allowHTTP1=se))}}}}else{let X={};i===null?i=[X]:i.push(X),a++}var u=q===a;u&&k?(k=!1,W=[W,2]):u&&(k=!0,W=2)}if(k)a=B,i!==null&&(B?i.length=B:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=de===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Z,i!==null&&(Z?i.length=Z:i=null);var d=Q===a;if(a=le,i!==null&&(le?i.length=le:i=null),d){let q=a;e.https=!0;var d=q===a;te=d}if(!te){let q={instancePath:t+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,On.errors=i,!1}var o=oe===a}else var o=!0;if(o){let z=e.ignoreTrailingSlash,oe=a;if(typeof z!="boolean"){let te;if(te===void 0)if(z==="false"||z===0||z===null)te=!1;else if(z==="true"||z===1)te=!0;else return On.errors=[{instancePath:t+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;te!==void 0&&(z=te,e!==void 0&&(e.ignoreTrailingSlash=te))}var o=oe===a;if(o){let te=e.ignoreDuplicateSlashes,Q=a;if(typeof te!="boolean"){let de;if(de===void 0)if(te==="false"||te===0||te===null)de=!1;else if(te==="true"||te===1)de=!0;else return On.errors=[{instancePath:t+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;de!==void 0&&(te=de,e!==void 0&&(e.ignoreDuplicateSlashes=de))}var o=Q===a;if(o){let de=e.disableRequestLogging,B=a;if(typeof de!="boolean"){let W;if(W===void 0)if(de==="false"||de===0||de===null)W=!1;else if(de==="true"||de===1)W=!0;else return On.errors=[{instancePath:t+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(de=W,e!==void 0&&(e.disableRequestLogging=W))}var o=B===a;if(o){let W=e.jsonShorthand,P=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return On.errors=[{instancePath:t+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,e!==void 0&&(e.jsonShorthand=j))}var o=P===a;if(o){let j=e.maxParamLength,q=a;if(!(typeof j=="number"&&!(j%1)&&!isNaN(j)&&isFinite(j))){let X=typeof j,ae;if(ae===void 0)if(X==="boolean"||j===null||X==="string"&&j&&j==+j&&!(j%1))ae=+j;else return On.errors=[{instancePath:t+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ae!==void 0&&(j=ae,e!==void 0&&(e.maxParamLength=ae))}var o=q===a;if(o){let X=e.onProtoPoisoning,ae=a;if(typeof X!="string"){let se=typeof X,J;if(J===void 0)if(se=="number"||se=="boolean")J=""+X;else if(X===null)J="";else return On.errors=[{instancePath:t+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;J!==void 0&&(X=J,e!==void 0&&(e.onProtoPoisoning=J))}var o=ae===a;if(o){let se=e.onConstructorPoisoning,J=a;if(typeof se!="string"){let ge=typeof se,be;if(be===void 0)if(ge=="number"||ge=="boolean")be=""+se;else if(se===null)be="";else return On.errors=[{instancePath:t+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;be!==void 0&&(se=be,e!==void 0&&(e.onConstructorPoisoning=be))}var o=J===a;if(o){let ge=e.pluginTimeout,be=a;if(!(typeof ge=="number"&&!(ge%1)&&!isNaN(ge)&&isFinite(ge))){let xe=typeof ge,Fe;if(Fe===void 0)if(xe==="boolean"||ge===null||xe==="string"&&ge&&ge==+ge&&!(ge%1))Fe=+ge;else return On.errors=[{instancePath:t+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Fe!==void 0&&(ge=Fe,e!==void 0&&(e.pluginTimeout=Fe))}var o=be===a;if(o){let xe=e.requestIdHeader,Fe=a,Ee=a,me=!1,Ae=a;if(xe!==!1){let Se={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:fXe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[Se]:i.push(Se),a++}var f=Ae===a;if(me=me||f,!me){let Se=a;if(typeof xe!="string"){let Le=typeof xe,we;if(we===void 0)if(Le=="number"||Le=="boolean")we=""+xe;else if(xe===null)we="";else{let He={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[He]:i.push(He),a++}we!==void 0&&(xe=we,e!==void 0&&(e.requestIdHeader=we))}var f=Se===a;me=me||f}if(me)a=Ee,i!==null&&(Ee?i.length=Ee:i=null);else{let Se={instancePath:t+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[Se]:i.push(Se),a++,On.errors=i,!1}var o=Fe===a;if(o){let Se=e.requestIdLogLabel,Ie=a;if(typeof Se!="string"){let we=typeof Se,He;if(He===void 0)if(we=="number"||we=="boolean")He=""+Se;else if(Se===null)He="";else return On.errors=[{instancePath:t+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;He!==void 0&&(Se=He,e!==void 0&&(e.requestIdLogLabel=He))}var o=Ie===a;if(o){let we=e.http2SessionTimeout,He=a;if(!(typeof we=="number"&&!(we%1)&&!isNaN(we)&&isFinite(we))){let ke=typeof we,Qe;if(Qe===void 0)if(ke==="boolean"||we===null||ke==="string"&&we&&we==+we&&!(we%1))Qe=+we;else return On.errors=[{instancePath:t+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Qe!==void 0&&(we=Qe,e!==void 0&&(e.http2SessionTimeout=Qe))}var o=He===a;if(o){let ke=e.exposeHeadRoutes,Qe=a;if(typeof ke!="boolean"){let ze;if(ze===void 0)if(ke==="false"||ke===0||ke===null)ze=!1;else if(ke==="true"||ke===1)ze=!0;else return On.errors=[{instancePath:t+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ze!==void 0&&(ke=ze,e!==void 0&&(e.exposeHeadRoutes=ze))}var o=Qe===a;if(o){let ze=e.useSemicolonDelimiter,ot=a;if(typeof ze!="boolean"){let At;if(At===void 0)if(ze==="false"||ze===0||ze===null)At=!1;else if(ze==="true"||ze===1)At=!0;else return On.errors=[{instancePath:t+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;At!==void 0&&(ze=At,e!==void 0&&(e.useSemicolonDelimiter=At))}var o=ot===a;if(o){if(e.versioning!==void 0){let At=e.versioning,gr=a;if(a===gr)if(At&&typeof At=="object"&&!Array.isArray(At)){let it;if(At.storage===void 0&&(it="storage")||At.deriveVersion===void 0&&(it="deriveVersion"))return On.errors=[{instancePath:t+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:it},message:"must have required property '"+it+"'"}],!1}else return On.errors=[{instancePath:t+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=gr===a}else var o=!0;if(o)if(e.constraints!==void 0){let At=e.constraints,gr=a;if(a===gr)if(At&&typeof At=="object"&&!Array.isArray(At))for(let it in At){let vt=At[it],bs=a;if(a===bs)if(vt&&typeof vt=="object"&&!Array.isArray(vt)){let Un;if(vt.name===void 0&&(Un="name")||vt.storage===void 0&&(Un="storage")||vt.validate===void 0&&(Un="validate")||vt.deriveConstraint===void 0&&(Un="deriveConstraint"))return On.errors=[{instancePath:t+"/constraints/"+it.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:Un},message:"must have required property '"+Un+"'"}],!1;if(vt.name!==void 0){let Ls=vt.name;if(typeof Ls!="string"){let Vs=typeof Ls,Fn;if(Fn===void 0)if(Vs=="number"||Vs=="boolean")Fn=""+Ls;else if(Ls===null)Fn="";else return On.errors=[{instancePath:t+"/constraints/"+it.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Fn!==void 0&&(Ls=Fn,vt!==void 0&&(vt.name=Fn))}}}else return On.errors=[{instancePath:t+"/constraints/"+it.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=bs===a;if(!h)break}else return On.errors=[{instancePath:t+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=gr===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return On.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return On.errors=i,a===0}u$.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var pXe=S((Bzn,d$)=>{"use strict";var l$=hXe(),o4r=XF()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:c4r}=Bo();function u4r(e){let t=o4r(e);if(!l$(t)){let r=new c4r(JSON.stringify(l$.errors.map(n=>n.message)));throw r.errors=l$.errors,r}return due(t)}function due(e){let t=Object.getOwnPropertyNames(e);for(let r of t){let n=e[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(e[r]=n&&typeof n=="object"?due(n):n)}return Object.freeze(e)}d$.exports=u4r;d$.exports.defaultInitOptions=l$.defaultInitOptions;d$.exports.utils={deepFreezeObject:due}});var TXe=S((Uzn,SXe)=>{"use strict";var{kAvvioBoot:l4r,kChildren:mXe,kRoutePrefix:gXe,kLogLevel:_Xe,kLogSerializers:fue,kHooks:hue,kSchemaController:WI,kContentTypeParser:AXe,kReply:EXe,kRequest:yXe,kFourOhFour:d4r,kPluginNameChain:vXe}=Ma(),f4r=V6(),h4r=a5(),p4r=Bce(),m4r=hse(),{buildHooks:g4r}=Y_(),ND=Vce();SXe.exports=function(t,r,n){let s=ND.registerPlugin.call(t,r),i=ND.getPluginName(r)||ND.getFuncPreview(r);if(s)return t[vXe].push(i),t;let a=Object.create(t);t[mXe].push(a),a.ready=t[l4r].bind(a),a[mXe]=[],a[EXe]=f4r.buildReply(a[EXe]),a[yXe]=h4r.buildRequest(a[yXe]),a[AXe]=m4r.helpers.buildContentTypeParser(a[AXe]),a[hue]=g4r(a[hue]),a[gXe]=_4r(a[gXe],n.prefix),a[_Xe]=n.logLevel||a[_Xe],a[WI]=p4r.buildSchemaController(t[WI]),a.getSchema=a[WI].getSchema.bind(a[WI]),a.getSchemas=a[WI].getSchemas.bind(a[WI]),a[ND.kRegisteredPlugins]=Object.create(a[ND.kRegisteredPlugins]),a[vXe]=[i],(a[fue]||n.logSerializers)&&(a[fue]=Object.assign(Object.create(a[fue]),n.logSerializers)),n.prefix&&a[d4r].arrange404(a);for(let o of a[hue].onRegister)o.call(this,a,n);return a};function _4r(e,t){return t?(e.endsWith("/")&&t[0]==="/"?t=t.slice(1):t[0]!=="/"&&(t="/"+t),e+t):e}});var IXe=S((Fzn,bXe)=>{"use strict";bXe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var xXe=S(pue=>{"use strict";pue.parse=b4r;pue.serialize=I4r;var A4r=Object.prototype.toString,E4r=Object.prototype.hasOwnProperty,y4r=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,v4r=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,S4r=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,T4r=/^[\u0020-\u003A\u003D-\u007E]*$/;function b4r(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");var r={},n=e.length;if(n<2)return r;var s=t&&t.decode||R4r,i=0,a=0,o=0;do{if(a=e.indexOf("=",i),a===-1)break;if(o=e.indexOf(";",i),o===-1)o=n;else if(a>o){i=e.lastIndexOf(";",a-1)+1;continue}var c=RXe(e,i,a),u=CXe(e,a,c),l=e.slice(c,u);if(!E4r.call(r,l)){var d=RXe(e,a+1,o),f=CXe(e,o,d);e.charCodeAt(d)===34&&e.charCodeAt(f-1)===34&&(d++,f--);var h=e.slice(d,f);r[l]=x4r(h,s)}i=o+1}while(ir;){var n=e.charCodeAt(--t);if(n!==32&&n!==9)return t+1}return r}function I4r(e,t,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!y4r.test(e))throw new TypeError("argument name is invalid");var s=n(t);if(!v4r.test(s))throw new TypeError("argument val is invalid");var i=e+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!S4r.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!T4r.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!C4r(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function R4r(e){return e.indexOf("%")!==-1?decodeURIComponent(e):e}function C4r(e){return A4r.call(e)==="[object Date]"}function x4r(e,t){try{return t(e)}catch{return e}}});var OXe=S((qzn,NXe)=>{"use strict";var{URL:wXe}=require("node:url"),mue="http://localhost";NXe.exports=function(t,r){(typeof t=="string"||Object.prototype.toString.call(t)==="[object String]")&&t.startsWith("//")&&(t=mue+t);let n=typeof t=="object"?Object.assign(new wXe(mue),t):new wXe(t,mue);if(typeof r=="string"){r=new URLSearchParams(r);for(let s of r.keys()){n.searchParams.delete(s);for(let i of r.getAll(s))n.searchParams.append(s,i)}}else{let s=Object.assign({},t.query,r);for(let i in s){let a=s[i];if(Array.isArray(a)){n.searchParams.delete(i);for(let o of a)n.searchParams.append(i,o)}else n.searchParams.set(i,a)}}return n}});var DXe=S((Hzn,gue)=>{"use strict";var{randomUUID:w4r}=require("node:crypto"),{Readable:N4r}=require("node:stream"),XI;function O4r(e){return e&&typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&e[Symbol.toStringTag]==="FormData"}function D4r(e){XI=XI??new TextEncoder;let t=`----formdata-${w4r()}`,r=`--${t}\r +Content-Disposition: form-data`;let n=c=>c.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),s=c=>c.replace(/\r?\n|\r/g,`\r +`),i=new Uint8Array([13,10]);async function*a(){for(let[c,u]of e)if(typeof u=="string")yield XI.encode(`${r}; name="${n(s(c))}"\r \r -`),yield NS.encode(`${i(c)}\r -`);else{let l=`${r}; name="${n(i(u))}"`;c.name&&(l+=`; filename="${n(c.name)}"`),l+=`\r -Content-Type: ${c.type||"application/octet-stream"}\r +`),yield XI.encode(`${s(u)}\r +`);else{let l=`${r}; name="${n(s(c))}"`;u.name&&(l+=`; filename="${n(u.name)}"`),l+=`\r +Content-Type: ${u.type||"application/octet-stream"}\r \r -`,yield NS.encode(l),c.stream?yield*c.stream():yield c,yield s}yield NS.encode(`--${t}--`)}return{stream:$Ar.from(a()),contentType:`multipart/form-data; boundary=${t}`}}tne.exports.isFormDataLike=FAr;tne.exports.formDataToStream=UAr});var $9e=b((uDn,w6)=>{"use strict";var{Readable:L9e,addAbortSignal:qAr}=require("node:stream"),nne=require("node:util"),jAr=D9e(),HAr=require("node:assert"),{createDeprecation:KAr}=YQ(),VAr=P9e(),{isFormDataLike:zAr,formDataToStream:QAr}=M9e(),{EventEmitter:GAr}=require("node:events"),YAr=KAr({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function WAr(e){return e.port?e.host:e.hostname+(e.protocol==="https:"?":443":":80")}var rne=class extends GAr{constructor(t){super(),this.remoteAddress=t}};function B9e(e){return new t(this);function t(r){rp.call(r,{...e,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(rp.prototype))this.constructor.prototype[n]=rp.prototype[n];return nne.inherits(this.constructor,e.Request),this}}function rp(e){L9e.call(this,{autoDestroy:!1});let t=VAr(e.url||e.path,e.query);this.url=t.pathname+t.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=e.method?e.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=e.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let u=r[a];HAr(u!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+u}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||e.authority||WAr(t),e.cookies){let{cookies:a}=e,o=Object.keys(a).map(u=>jAr.serialize(u,a[u]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new rne(e.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return YAr(),this.socket},configurable:!0});let n=e.payload||e.body||null,i=n&&typeof n.resume=="function";if(zAr(n)){let a=QAr(n);n=a.stream,i=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!i&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!i&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:e.simulate||{}};let s=e.signal;return s&&qAr(s,this),this}nne.inherits(rp,L9e);nne.inherits(B9e,rp);rp.prototype.prepare=function(e){let t=this._lightMyRequest.payload;if(!t||typeof t.resume!="function")return e();let r=[];t.on("data",n=>r.push(Buffer.from(n))),t.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,e()}),t.resume()};rp.prototype._read=function(e){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};rp.prototype.destroy=function(e){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,e&&(this._error=!0,process.nextTick(()=>this.emit("error",e))),process.nextTick(()=>this.emit("close")))};w6.exports=rp;w6.exports.Request=rp;w6.exports.CustomRequest=B9e});var U9e=b((cDn,CN)=>{"use strict";var I6={decodeValues:!0,map:!1,silent:!1};function ine(e){return typeof e!="string"||e in{}}function sne(){return Object.create(null)}function ane(e){return typeof e=="string"&&!!e.trim()}function one(e,t){var r=e.split(";").filter(ane),n=r.shift(),i=XAr(n),s=i.name,a=i.value;if(t=t?Object.assign({},I6,t):I6,ine(s))return null;try{a=t.decodeValues?decodeURIComponent(a):a}catch(u){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",u)}var o=sne();return o.name=s,o.value=a,r.forEach(function(u){var c=u.split("="),l=c.shift().trimLeft().toLowerCase();if(!ine(l)){var d=c.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function XAr(e){var t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}function F9e(e,t){if(t=t?Object.assign({},I6,t):I6,!e)return t.map?sne():[];if(e.headers)if(typeof e.headers.getSetCookie=="function")e=e.headers.getSetCookie();else if(e.headers["set-cookie"])e=e.headers["set-cookie"];else{var r=e.headers[Object.keys(e.headers).find(function(i){return i.toLowerCase()==="set-cookie"})];!r&&e.headers.cookie&&!t.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),e=r}if(Array.isArray(e)||(e=[e]),t.map){var n=sne();return e.filter(ane).reduce(function(i,s){var a=one(s,t);return a&&!ine(a.name)&&(i[a.name]=a),i},n)}else return e.filter(ane).map(function(i){return one(i,t)}).filter(Boolean)}function JAr(e){if(Array.isArray(e))return e;if(typeof e!="string")return[];var t=[],r=0,n,i,s,a,o;function u(){for(;r=e.length)&&t.push(e.substring(n,e.length))}return t}CN.exports=F9e;CN.exports.parse=F9e;CN.exports.parseString=one;CN.exports.splitCookiesString=JAr});var H9e=b((lDn,j9e)=>{"use strict";var TN=require("node:http"),{Writable:ZAr,Readable:evr}=require("node:stream"),tvr=require("node:util"),rvr=U9e();function Lg(e,t,r){TN.ServerResponse.call(this,e),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(ivr()),this._promiseCallback=typeof r=="function";let n=!1,i=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>t(a));process.nextTick(()=>t(null,a))},s=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>t(a,null))}};this.once("finish",()=>{let a=nvr(this);a.raw.req=e,i(a)}),this.connection.once("error",s),this.once("error",s),this.once("close",s)}tvr.inherits(Lg,TN.ServerResponse);Lg.prototype.setTimeout=function(e,t){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},e),this.on("timeout",t),this};Lg.prototype.writeHead=function(){let e=TN.ServerResponse.prototype.writeHead.apply(this,arguments);return q9e(this),e};Lg.prototype.write=function(e,t,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),TN.ServerResponse.prototype.write.call(this,e,t,r),this._lightMyRequest.payloadChunks.push(Buffer.from(e,t)),!0};Lg.prototype.end=function(e,t,r){e&&this.write(e,t),TN.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};Lg.prototype.destroy=function(e){this.destroyed||(this.destroyed=!0,e&&process.nextTick(()=>this.emit("error",e)),process.nextTick(()=>this.emit("close")))};Lg.prototype.addTrailers=function(e){for(let t in e)this._lightMyRequest.trailers[t.toLowerCase().trim()]=e[t].toString().trim()};function nvr(e){e._lightMyRequest.headers===null&&q9e(e),svr(e);let t={raw:{res:e},headers:e._lightMyRequest.headers,statusCode:e.statusCode,statusMessage:e.statusMessage,trailers:{},get cookies(){return rvr.parse(this)}},r=Buffer.concat(e._lightMyRequest.payloadChunks);return t.rawPayload=r,t.payload=r.toString(),t.body=t.payload,t.trailers=e._lightMyRequest.trailers,t.json=function(){return JSON.parse(t.payload)},t.stream=function(){return evr.from(e._lightMyRequest.payloadChunks)},t}function ivr(){return new ZAr({write(e,t,r){setImmediate(r)}})}function svr(e){let t=e._lightMyRequest.headers;for(let r of Object.keys(t)){let n=t[r];Array.isArray(n)?t[r]=n.map(i=>""+i):t[r]=""+n}}function q9e(e){e._lightMyRequest.headers=Object.assign({},e.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(t=>{let r=new RegExp("\\r\\n"+t+": ([^\\r]*)\\r\\n"),n=e._header.match(r);n&&(e._lightMyRequest.headers[t.toLowerCase()]=n[1])})}j9e.exports=Lg});var K9e=b((dDn,une)=>{"use strict";une.exports=_s;une.exports.default=_s;var avr={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function _s(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:i=e}={}){let s=null,a=0,o=a,u=!1,c=null,l=a;if(e&&typeof e=="object"&&!Array.isArray(e)){let _;if(e.url===void 0&&(_="url")){let E={instancePath:t,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:_},message:"must have required property '"+_+"'"};s===null?s=[E]:s.push(E),a++}}var f=l===a;f&&(u=!0,c=0);let d=a;if(e&&typeof e=="object"&&!Array.isArray(e)){let _;if(e.path===void 0&&(_="path")){let E={instancePath:t,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:_},message:"must have required property '"+_+"'"};s===null?s=[E]:s.push(E),a++}}var f=d===a;if(f&&u?(u=!1,c=[c,1]):f&&(u=!0,c=1),u)a=o,s!==null&&(o?s.length=o:s=null);else{let _={instancePath:t,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:c},message:"must match exactly one schema in oneOf"};return s===null?s=[_]:s.push(_),a++,_s.errors=s,!1}if(a===0)if(e&&typeof e=="object"&&!Array.isArray(e)){if(e.url!==void 0){let _=e.url,E=a,S=a,C=!1,I=null,N=a;if(typeof _!="string"){let k=typeof _,O;if(O===void 0)if(k=="number"||k=="boolean")O=""+_;else if(_===null)O="";else{let P={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[P]:s.push(P),a++}O!==void 0&&(_=O,e!==void 0&&(e.url=O))}var h=N===a;h&&(C=!0,I=0);let T=a;if(a===T)if(_&&typeof _=="object"&&!Array.isArray(_)){let k;if(_.pathname===void 0&&(k="pathname")){let O={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:k},message:"must have required property '"+k+"'"};s===null?s=[O]:s.push(O),a++}else{if(_.protocol!==void 0){let O=_.protocol,P=a;if(typeof O!="string"){let $=typeof O,Q;if(Q===void 0)if($=="number"||$=="boolean")Q=""+O;else if(O===null)Q="";else{let j={instancePath:t+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[j]:s.push(j),a++}Q!==void 0&&(O=Q,_!==void 0&&(_.protocol=Q))}var p=P===a}else var p=!0;if(p){if(_.hostname!==void 0){let O=_.hostname,P=a;if(typeof O!="string"){let Q=typeof O,j;if(j===void 0)if(Q=="number"||Q=="boolean")j=""+O;else if(O===null)j="";else{let z={instancePath:t+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[z]:s.push(z),a++}j!==void 0&&(O=j,_!==void 0&&(_.hostname=j))}var p=P===a}else var p=!0;if(p)if(_.pathname!==void 0){let O=_.pathname,P=a;if(typeof O!="string"){let Q=typeof O,j;if(j===void 0)if(Q=="number"||Q=="boolean")j=""+O;else if(O===null)j="";else{let z={instancePath:t+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[z]:s.push(z),a++}j!==void 0&&(O=j,_!==void 0&&(_.pathname=j))}var p=P===a}else var p=!0}}}else{let k={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};s===null?s=[k]:s.push(k),a++}var h=T===a;if(h&&C?(C=!1,I=[I,1]):h&&(C=!0,I=1),C)a=S,s!==null&&(S?s.length=S:s=null);else{let k={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:I},message:"must match exactly one schema in oneOf"};return s===null?s=[k]:s.push(k),a++,_s.errors=s,!1}var m=E===a}else var m=!0;if(m){if(e.path!==void 0){let _=e.path,E=a,S=a,C=!1,I=null,N=a;if(typeof _!="string"){let O=typeof _,P;if(P===void 0)if(O=="number"||O=="boolean")P=""+_;else if(_===null)P="";else{let $={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[$]:s.push($),a++}P!==void 0&&(_=P,e!==void 0&&(e.path=P))}var g=N===a;g&&(C=!0,I=0);let T=a;if(a===T)if(_&&typeof _=="object"&&!Array.isArray(_)){let O;if(_.pathname===void 0&&(O="pathname")){let P={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:O},message:"must have required property '"+O+"'"};s===null?s=[P]:s.push(P),a++}else{if(_.protocol!==void 0){let P=_.protocol,$=a;if(typeof P!="string"){let Q=typeof P,j;if(j===void 0)if(Q=="number"||Q=="boolean")j=""+P;else if(P===null)j="";else{let z={instancePath:t+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[z]:s.push(z),a++}j!==void 0&&(P=j,_!==void 0&&(_.protocol=j))}var y=$===a}else var y=!0;if(y){if(_.hostname!==void 0){let P=_.hostname,$=a;if(typeof P!="string"){let j=typeof P,z;if(z===void 0)if(j=="number"||j=="boolean")z=""+P;else if(P===null)z="";else{let X={instancePath:t+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[X]:s.push(X),a++}z!==void 0&&(P=z,_!==void 0&&(_.hostname=z))}var y=$===a}else var y=!0;if(y)if(_.pathname!==void 0){let P=_.pathname,$=a;if(typeof P!="string"){let j=typeof P,z;if(z===void 0)if(j=="number"||j=="boolean")z=""+P;else if(P===null)z="";else{let X={instancePath:t+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[X]:s.push(X),a++}z!==void 0&&(P=z,_!==void 0&&(_.pathname=z))}var y=$===a}else var y=!0}}}else{let O={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};s===null?s=[O]:s.push(O),a++}var g=T===a;if(g&&C?(C=!1,I=[I,1]):g&&(C=!0,I=1),C)a=S,s!==null&&(S?s.length=S:s=null);else{let O={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:I},message:"must match exactly one schema in oneOf"};return s===null?s=[O]:s.push(O),a++,_s.errors=s,!1}var m=E===a}else var m=!0;if(m){if(e.cookies!==void 0){let _=e.cookies,E=a;if(a===E&&!(_&&typeof _=="object"&&!Array.isArray(_)))return _s.errors=[{instancePath:t+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=E===a}else var m=!0;if(m){if(e.headers!==void 0){let _=e.headers,E=a;if(a===E&&!(_&&typeof _=="object"&&!Array.isArray(_)))return _s.errors=[{instancePath:t+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=E===a}else var m=!0;if(m){if(e.query!==void 0){let _=e.query,E=a,S=a,C=!1,I=a;if(a===I&&!(_&&typeof _=="object"&&!Array.isArray(_))){let T={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};s===null?s=[T]:s.push(T),a++}var v=I===a;if(C=C||v,!C){let T=a;if(typeof _!="string"){let O=typeof _,P;if(P===void 0)if(O=="number"||O=="boolean")P=""+_;else if(_===null)P="";else{let $={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};s===null?s=[$]:s.push($),a++}P!==void 0&&(_=P,e!==void 0&&(e.query=P))}var v=T===a;C=C||v}if(C)a=S,s!==null&&(S?s.length=S:s=null);else{let T={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return s===null?s=[T]:s.push(T),a++,_s.errors=s,!1}var m=E===a}else var m=!0;if(m){if(e.simulate!==void 0){let _=e.simulate,E=a;if(a===E)if(_&&typeof _=="object"&&!Array.isArray(_)){if(_.end!==void 0){let C=_.end,I=a;if(typeof C!="boolean"){let N;if(N===void 0)if(C==="false"||C===0||C===null)N=!1;else if(C==="true"||C===1)N=!0;else return _s.errors=[{instancePath:t+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(C=N,_!==void 0&&(_.end=N))}var A=I===a}else var A=!0;if(A){if(_.split!==void 0){let C=_.split,I=a;if(typeof C!="boolean"){let T;if(T===void 0)if(C==="false"||C===0||C===null)T=!1;else if(C==="true"||C===1)T=!0;else return _s.errors=[{instancePath:t+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;T!==void 0&&(C=T,_!==void 0&&(_.split=T))}var A=I===a}else var A=!0;if(A){if(_.error!==void 0){let C=_.error,I=a;if(typeof C!="boolean"){let T;if(T===void 0)if(C==="false"||C===0||C===null)T=!1;else if(C==="true"||C===1)T=!0;else return _s.errors=[{instancePath:t+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;T!==void 0&&(C=T,_!==void 0&&(_.error=T))}var A=I===a}else var A=!0;if(A)if(_.close!==void 0){let C=_.close,I=a;if(typeof C!="boolean"){let T;if(T===void 0)if(C==="false"||C===0||C===null)T=!1;else if(C==="true"||C===1)T=!0;else return _s.errors=[{instancePath:t+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;T!==void 0&&(C=T,_!==void 0&&(_.close=T))}var A=I===a}else var A=!0}}}else return _s.errors=[{instancePath:t+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=E===a}else var m=!0;if(m){if(e.authority!==void 0){let _=e.authority,E=a;if(typeof _!="string"){let C=typeof _,I;if(I===void 0)if(C=="number"||C=="boolean")I=""+_;else if(_===null)I="";else return _s.errors=[{instancePath:t+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;I!==void 0&&(_=I,e!==void 0&&(e.authority=I))}var m=E===a}else var m=!0;if(m){if(e.remoteAddress!==void 0){let _=e.remoteAddress,E=a;if(typeof _!="string"){let C=typeof _,I;if(I===void 0)if(C=="number"||C=="boolean")I=""+_;else if(_===null)I="";else return _s.errors=[{instancePath:t+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;I!==void 0&&(_=I,e!==void 0&&(e.remoteAddress=I))}var m=E===a}else var m=!0;if(m){if(e.method!==void 0){let _=e.method,E=a;if(typeof _!="string"){let C=typeof _,I;if(I===void 0)if(C=="number"||C=="boolean")I=""+_;else if(_===null)I="";else return _s.errors=[{instancePath:t+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;I!==void 0&&(_=I,e!==void 0&&(e.method=I))}if(!(_==="ACL"||_==="BIND"||_==="CHECKOUT"||_==="CONNECT"||_==="COPY"||_==="DELETE"||_==="GET"||_==="HEAD"||_==="LINK"||_==="LOCK"||_==="M-SEARCH"||_==="MERGE"||_==="MKACTIVITY"||_==="MKCALENDAR"||_==="MKCOL"||_==="MOVE"||_==="NOTIFY"||_==="OPTIONS"||_==="PATCH"||_==="POST"||_==="PROPFIND"||_==="PROPPATCH"||_==="PURGE"||_==="PUT"||_==="REBIND"||_==="REPORT"||_==="SEARCH"||_==="SOURCE"||_==="SUBSCRIBE"||_==="TRACE"||_==="UNBIND"||_==="UNLINK"||_==="UNLOCK"||_==="UNSUBSCRIBE"||_==="acl"||_==="bind"||_==="checkout"||_==="connect"||_==="copy"||_==="delete"||_==="get"||_==="head"||_==="link"||_==="lock"||_==="m-search"||_==="merge"||_==="mkactivity"||_==="mkcalendar"||_==="mkcol"||_==="move"||_==="notify"||_==="options"||_==="patch"||_==="post"||_==="propfind"||_==="proppatch"||_==="purge"||_==="put"||_==="rebind"||_==="report"||_==="search"||_==="source"||_==="subscribe"||_==="trace"||_==="unbind"||_==="unlink"||_==="unlock"||_==="unsubscribe"))return _s.errors=[{instancePath:t+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:avr.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var m=E===a}else var m=!0;if(m)if(e.validate!==void 0){let _=e.validate,E=a;if(typeof _!="boolean"){let C;if(C===void 0)if(_==="false"||_===0||_===null)C=!1;else if(_==="true"||_===1)C=!0;else return _s.errors=[{instancePath:t+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;C!==void 0&&(_=C,e!==void 0&&(e.validate=C))}var m=E===a}else var m=!0}}}}}}}}}else return _s.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return _s.errors=s,a===0}});var Q9e=b((fDn,RN)=>{"use strict";var ovr=require("node:assert"),cne=$9e(),x6=H9e(),T6="The dispatch function has already been invoked",V9e=K9e();function lne(e,t,r){return r===void 0?new NN(e,t):C6(e,t,r)}function z9e(e,t,r,n){return r.once("error",function(i){this.destroyed&&n.destroy(i)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>e.call(t,r,n))}function C6(e,t,r){if(t=typeof t=="string"?{url:t}:t,t.validate!==!1&&(ovr(typeof e=="function","dispatchFunc should be a function"),!V9e(t)))throw new Error(V9e.errors.map(a=>a.message));let n=t.server||{},i=t.Request?cne.CustomRequest:cne;if(e.request&&e.request.app===e&&(Object.setPrototypeOf(Object.getPrototypeOf(e.request),i.prototype),Object.setPrototypeOf(Object.getPrototypeOf(e.response),x6.prototype)),typeof r=="function"){let s=new i(t),a=new x6(s,r);return z9e(e,n,s,a)}else return new Promise((s,a)=>{let o=new i(t),u=new x6(o,s,a);z9e(e,n,o,u)})}function NN(e,t){typeof t=="string"?this.option={url:t}:this.option=Object.assign({},t),this.dispatch=e,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var uvr=["delete","get","head","options","patch","post","put","trace"];uvr.forEach(e=>{NN.prototype[e]=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(T6);return this.option.url=t,this.option.method=e.toUpperCase(),this}});var cvr=["body","cookies","headers","payload","query"];cvr.forEach(e=>{NN.prototype[e]=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(T6);return this.option[e]=t,this}});NN.prototype.end=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(T6);if(this._hasInvoked=!0,typeof e=="function")C6(this.dispatch,this.option,e);else return this._promise=C6(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(e=>{e!=="constructor"&&(NN.prototype[e]=function(...t){if(!this._promise){if(this._hasInvoked===!0)throw new Error(T6);this._hasInvoked=!0,this._promise=C6(this.dispatch,this.option)}return this._promise[e](...t)})});function lvr(e){return e instanceof cne||e instanceof x6||e&&e.constructor&&e.constructor.name==="_CustomLMRRequest"}RN.exports=lne;RN.exports.default=lne;RN.exports.inject=lne;RN.exports.isInjection=lvr});var uHe=b((pDn,k6)=>{"use strict";var dvr="4.26.0",fvr=wRe(),dne=require("node:http"),DN,{kAvvioBoot:kN,kChildren:fne,kServerBindings:G9e,kBodyLimit:pvr,kRoutePrefix:Y9e,kLogLevel:hvr,kLogSerializers:mvr,kHooks:pne,kSchemaController:Bg,kRequestAcceptVersion:gvr,kReplySerializerDefault:W9e,kContentTypeParser:yvr,kReply:_vr,kRequest:Avr,kFourOhFour:vvr,kState:ts,kOptions:hne,kPluginNameChain:ON,kSchemaErrorFormatter:mne,kErrorHandler:N6,kKeepAliveConnections:gne,kChildLoggerFactory:yne,kGenReqId:_ne}=Vs(),{createServer:bvr,compileValidateHTTPVersion:Evr}=QRe(),PN=t3(),R6=_3(),Svr=A3(),{supportedMethods:wvr}=$X(),RS=HX(),WA=JX(),X9e=Ere(),{Hooks:Ivr,hookRunnerApplication:J9e,supportedHooks:Ane}=eg(),{createLogger:xvr,createChildLogger:Z9e,defaultChildLoggerFactory:Cvr}=pT(),eHe=Tre(),{getGenReqId:tHe,reqIdGenFactory:rHe}=r6(),{buildRouting:Tvr,validateBodyLimitOption:Nvr}=o9e(),Rvr=h9e(),oHe=y9e(),Dvr=x9e(),{FSTDEP009:kvr}=Eh(),Ovr=T9e(),{appendStackTrace:Pvr,AVVIO_ERRORS_MAP:nHe,...XA}=Wa(),{defaultInitOptions:Pu}=oHe,{FST_ERR_ASYNC_CONSTRAINT:Mvr,FST_ERR_BAD_URL:Lvr,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:Bvr,FST_ERR_OPTIONS_NOT_OBJ:$vr,FST_ERR_QSP_NOT_FN:Fvr,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:Uvr,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:qvr,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:jvr,FST_ERR_VERSION_CONSTRAINT_NOT_STR:Hvr,FST_ERR_INSTANCE_ALREADY_LISTENING:Kvr,FST_ERR_REOPENED_CLOSE_SERVER:Vvr,FST_ERR_ROUTE_REWRITE_NOT_STR:zvr,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:iHe}=XA,{buildErrorHandler:sHe}=zT();function Qvr(e){let t={};return["errorHandler","logLevel","logSerializers"].concat(Ane).forEach(n=>{t[n]=e.store[n]}),Object.assign({},t)}function D6(e){if(e=e||{},typeof e!="object")throw new $vr;if(e.querystringParser&&typeof e.querystringParser!="function")throw new Fvr(typeof e.querystringParser);if(e.schemaController&&e.schemaController.bucket&&typeof e.schemaController.bucket!="function")throw new Uvr(typeof e.schemaController.bucket);Nvr(e.bodyLimit);let t=e.requestIdHeader===!1?!1:(e.requestIdHeader||Pu.requestIdHeader).toLowerCase(),r=rHe(t,e.genReqId),n=e.requestIdLogLabel||"reqId",i=e.bodyLimit||Pu.bodyLimit,s=e.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},e.ajv),o=e.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new qvr(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new jvr(typeof a.plugins);let{logger:u,hasLogger:c}=xvr(e);e.connectionTimeout=e.connectionTimeout||Pu.connectionTimeout,e.keepAliveTimeout=e.keepAliveTimeout||Pu.keepAliveTimeout,e.maxRequestsPerSocket=e.maxRequestsPerSocket||Pu.maxRequestsPerSocket,e.requestTimeout=e.requestTimeout||Pu.requestTimeout,e.logger=u,e.requestIdHeader=t,e.requestIdLogLabel=n,e.disableRequestLogging=s,e.ajv=a,e.clientErrorHandler=e.clientErrorHandler||z;let l=oHe(e);e.exposeHeadRoutes=l.exposeHeadRoutes;let d=e.constraints;e.versioning&&(kvr(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:e.versioning.storage,deriveConstraint:e.versioning.deriveVersion,validate(H){if(typeof H!="string")throw new Hvr}}});let f=Tvr({config:{defaultRoute:X,onBadUrl:K,constraints:d,ignoreTrailingSlash:e.ignoreTrailingSlash||Pu.ignoreTrailingSlash,ignoreDuplicateSlashes:e.ignoreDuplicateSlashes||Pu.ignoreDuplicateSlashes,maxParamLength:e.maxParamLength||Pu.maxParamLength,caseSensitive:e.caseSensitive,allowUnsafeRegex:e.allowUnsafeRegex||Pu.allowUnsafeRegex,buildPrettyMeta:Qvr,querystringParser:e.querystringParser,useSemicolonDelimiter:e.useSemicolonDelimiter??Pu.useSemicolonDelimiter}}),p=Rvr(e),h=F(f,e);e.http2SessionTimeout=l.http2SessionTimeout;let{server:m,listen:y}=bvr(e,h),g=typeof m.closeAllConnections=="function",v=typeof m.closeIdleConnections=="function",A=e.forceCloseConnections;if(A==="idle"&&!v)throw new Bvr;typeof A!="boolean"&&(A=v?"idle":!1);let _=!g&&A===!0?new Set:Ovr(),E=PN.setupResponseListeners,S=X9e.buildSchemaController(null,e.schemaController),C={[ts]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[gne]:_,[hne]:e,[fne]:[],[G9e]:[],[pvr]:i,[Y9e]:"",[hvr]:"",[mvr]:null,[pne]:new Ivr,[Bg]:S,[mne]:null,[N6]:sHe(),[yne]:Cvr,[W9e]:null,[yvr]:new WA(i,e.onProtoPoisoning||Pu.onProtoPoisoning,e.onConstructorPoisoning||Pu.onConstructorPoisoning),[_vr]:PN.buildReply(PN),[Avr]:R6.buildRequest(R6,e.trustProxy),[vvr]:p,[eHe.kRegisteredPlugins]:[],[ON]:["fastify"],[kN]:null,[_ne]:r,routing:h,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(G,J,ee){return f.prepareRoute.call(this,{method:"DELETE",url:G,options:J,handler:ee})},get:function(G,J,ee){return f.prepareRoute.call(this,{method:"GET",url:G,options:J,handler:ee})},head:function(G,J,ee){return f.prepareRoute.call(this,{method:"HEAD",url:G,options:J,handler:ee})},patch:function(G,J,ee){return f.prepareRoute.call(this,{method:"PATCH",url:G,options:J,handler:ee})},post:function(G,J,ee){return f.prepareRoute.call(this,{method:"POST",url:G,options:J,handler:ee})},put:function(G,J,ee){return f.prepareRoute.call(this,{method:"PUT",url:G,options:J,handler:ee})},options:function(G,J,ee){return f.prepareRoute.call(this,{method:"OPTIONS",url:G,options:J,handler:ee})},all:function(G,J,ee){return f.prepareRoute.call(this,{method:wvr,url:G,options:J,handler:ee})},route:function(G){return f.route.call(this,{options:G})},hasRoute:function(G){return f.hasRoute.call(this,{options:G})},findRoute:function(G){return f.findRoute(G)},log:u,withTypeProvider:$,addHook:Q,addSchema:j,getSchema:S.getSchema.bind(S),getSchemas:S.getSchemas.bind(S),setValidatorCompiler:ie,setSerializerCompiler:he,setSchemaController:ye,setReplySerializer:q,setSchemaErrorFormatter:ue,setGenReqId:V,addContentTypeParser:WA.helpers.addContentTypeParser,hasContentTypeParser:WA.helpers.hasContentTypeParser,getDefaultJsonParser:WA.defaultParsers.getDefaultJsonParser,defaultTextParser:WA.defaultParsers.defaultTextParser,removeContentTypeParser:WA.helpers.removeContentTypeParser,removeAllContentTypeParsers:WA.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(H){return this[eHe.kRegisteredPlugins].includes(H)||this[ON].includes(H)},listen:y,server:m,addresses:function(){let H=this[G9e].map(G=>G.address());return H.push(this.server.address()),H.filter(G=>G)},decorate:RS.add,hasDecorator:RS.exist,decorateReply:RS.decorateReply,decorateRequest:RS.decorateRequest,hasRequestDecorator:RS.existRequest,hasReplyDecorator:RS.existReply,inject:O,printRoutes:M,setNotFoundHandler:Y,setErrorHandler:B,setChildLoggerFactory:ae,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(C,{listeningOrigin:{get(){let H=this.addresses().slice(-1).pop();if(typeof H=="string")return H;let G=H.family==="IPv6"?`[${H.address}]`:H.address;return`${this[hne].https?"https":"http"}://${G}:${H.port}`}},pluginName:{configurable:!0,get(){return this[ON].length>1?this[ON].join(" -> "):this[ON][0]}},prefix:{configurable:!0,get(){return this[Y9e]}},validatorCompiler:{configurable:!0,get(){return this[Bg].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[Bg].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[yne]}},version:{configurable:!0,get(){return dvr}},errorHandler:{configurable:!0,get(){return this[N6].func}},genReqId:{configurable:!0,get(){return this[_ne]}}}),e.schemaErrorFormatter&&(aHe(e.schemaErrorFormatter),C[mne]=e.schemaErrorFormatter.bind(C));let I=Number(e.pluginTimeout),N=fvr(C,{autostart:!1,timeout:isNaN(I)===!1?I:Pu.pluginTimeout,expose:{use:"register"}});N.override=Dvr,N.on("start",()=>C[ts].started=!0),C[kN]=C.ready,C.ready=P,C.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{C.onClose((H,G)=>{C[ts].closing=!0,f.closeRoutes(),J9e("preClose",C[kN],C,function(){if(C[ts].listening){if(A==="idle")H.server.closeIdleConnections();else if(g&&A)H.server.closeAllConnections();else if(A===!0)for(let J of C[gne])J.destroy(),C[gne].delete(J)}!e.serverFactory||C[ts].listening?H.server.close(function(J){J&&J.code!=="ERR_SERVER_NOT_RUNNING"?G(null):G()}):process.nextTick(G,null)})})});let T=new Svr({server:C,config:{}});C.setNotFoundHandler(),p.arrange404(C),f.setup(e,{avvio:N,fourOhFour:p,logger:u,hasLogger:c,setupResponseListeners:E,throwIfAlreadyStarted:k,validateHTTPVersion:Evr(e),keepAliveConnections:_}),m.on("clientError",e.clientErrorHandler.bind(C));try{let G=require("node:diagnostics_channel").channel("fastify.initialization");G.hasSubscribers&&G.publish({fastify:C})}catch{}return"asyncDispose"in Symbol&&(C[Symbol.asyncDispose]=function(){return C.close()}),C;function k(H){if(C[ts].started)throw new Kvr(H)}function O(H,G){if(DN===void 0&&(DN=Q9e()),C[ts].started){if(C[ts].closing){let J=new Vvr;if(G){G(J);return}else return Promise.reject(J)}return DN(h,H,G)}if(G)this.ready(J=>{J?G(J,null):DN(h,H,G)});else return DN((J,ee)=>{this.ready(function(te){if(te){ee.emit("error",te);return}h(J,ee)})},H)}function P(H){if(this[ts].readyPromise!==null){if(H!=null){this[ts].readyPromise.then(()=>H(null,C),H);return}return this[ts].readyPromise}let G,J;if(process.nextTick(ee),this[ts].readyPromise=new Promise(function(re,ce){G=re,J=ce}),H)this[ts].readyPromise.then(()=>H(null,C),H);else return this[ts].readyPromise;function ee(){C[kN]((re,ce)=>{re||C[ts].started||C[ts].ready||C[ts].booting?te(re):(C[ts].booting=!0,J9e("onReady",C[kN],C,te)),ce()})}function te(re){if(re=re!=null&&nHe[re.code]!=null?Pvr(re,new nHe[re.code](re.message)):re,re)return J(re);G(C),C[ts].booting=!1,C[ts].ready=!0,C[ts].promise=null}}function $(){return this}function Q(H,G){if(k('Cannot call "addHook"!'),G==null)throw new XA.FST_ERR_HOOK_INVALID_HANDLER(H,G);if(H==="onSend"||H==="preSerialization"||H==="onError"||H==="preParsing"){if(G.constructor.name==="AsyncFunction"&&G.length===4)throw new XA.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(H==="onReady"||H==="onListen"){if(G.constructor.name==="AsyncFunction"&&G.length!==0)throw new XA.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(H==="onRequestAbort"){if(G.constructor.name==="AsyncFunction"&&G.length!==1)throw new XA.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(G.constructor.name==="AsyncFunction"&&G.length===3)throw new XA.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return H==="onClose"?this.onClose(G):H==="onReady"||H==="onListen"||H==="onRoute"?this[pne].add(H,G):this.after((ee,te)=>{J.call(this,H,G),te(ee)}),this;function J(ee,te){this[pne].add(ee,te),this[fne].forEach(re=>J.call(re,ee,te))}}function j(H){return k('Cannot call "addSchema"!'),this[Bg].add(H),this[fne].forEach(G=>G.addSchema(H)),this}function z(H,G){if(H.code==="ECONNRESET"||G.destroyed)return;let J,ee,te,re;H.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ee="408",te=dne.STATUS_CODES[ee],J=`{"error":"${te}","message":"Client Timeout","statusCode":408}`,re="timeout"):H.code==="HPE_HEADER_OVERFLOW"?(ee="431",te=dne.STATUS_CODES[ee],J=`{"error":"${te}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,re="header_overflow"):(ee="400",te=dne.STATUS_CODES[ee],J=`{"error":"${te}","message":"Client Error","statusCode":400}`,re="error"),this.log.trace({err:H},`client ${re}`),G.writable&&G.write(`HTTP/1.1 ${ee} ${te}\r -Content-Length: ${J.length}\r +`,yield XI.encode(l),u.stream?yield*u.stream():yield u,yield i}yield XI.encode(`--${t}--`)}return{stream:N4r.from(a()),contentType:`multipart/form-data; boundary=${t}`}}gue.exports.isFormDataLike=O4r;gue.exports.formDataToStream=D4r});var MXe=S((Vzn,f$)=>{"use strict";var{Readable:PXe,addAbortSignal:P4r}=require("node:stream"),Aue=require("node:util"),L4r=xXe(),M4r=require("node:assert"),{createDeprecation:k4r}=uee(),B4r=OXe(),{isFormDataLike:U4r,formDataToStream:F4r}=DXe(),{EventEmitter:$4r}=require("node:events"),q4r=k4r({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function H4r(e){return e.port?e.host:e.hostname+(e.protocol==="https:"?":443":":80")}var _ue=class extends $4r{constructor(t){super(),this.remoteAddress=t}};function LXe(e){return new t(this);function t(r){Ih.call(r,{...e,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(Ih.prototype))this.constructor.prototype[n]=Ih.prototype[n];return Aue.inherits(this.constructor,e.Request),this}}function Ih(e){PXe.call(this,{autoDestroy:!1});let t=B4r(e.url||e.path,e.query);this.url=t.pathname+t.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=e.method?e.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=e.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let c=r[a];M4r(c!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+c}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||e.authority||H4r(t),e.cookies){let{cookies:a}=e,o=Object.keys(a).map(c=>L4r.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new _ue(e.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return q4r(),this.socket},configurable:!0});let n=e.payload||e.body||null,s=n&&typeof n.resume=="function";if(U4r(n)){let a=F4r(n);n=a.stream,s=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!s&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!s&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:e.simulate||{}};let i=e.signal;return i&&P4r(i,this),this}Aue.inherits(Ih,PXe);Aue.inherits(LXe,Ih);Ih.prototype.prepare=function(e){let t=this._lightMyRequest.payload;if(!t||typeof t.resume!="function")return e();let r=[];t.on("data",n=>r.push(Buffer.from(n))),t.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,e()}),t.resume()};Ih.prototype._read=function(e){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};Ih.prototype.destroy=function(e){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,e&&(this._error=!0,process.nextTick(()=>this.emit("error",e))),process.nextTick(()=>this.emit("close")))};f$.exports=Ih;f$.exports.Request=Ih;f$.exports.CustomRequest=LXe});var BXe=S((jzn,OD)=>{"use strict";var h$={decodeValues:!0,map:!1,silent:!1};function Eue(e){return typeof e!="string"||e in{}}function yue(){return Object.create(null)}function vue(e){return typeof e=="string"&&!!e.trim()}function Sue(e,t){var r=e.split(";").filter(vue),n=r.shift(),s=V4r(n),i=s.name,a=s.value;if(t=t?Object.assign({},h$,t):h$,Eue(i))return null;try{a=t.decodeValues?decodeURIComponent(a):a}catch(c){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",c)}var o=yue();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!Eue(l)){var d=u.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function V4r(e){var t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}function kXe(e,t){if(t=t?Object.assign({},h$,t):h$,!e)return t.map?yue():[];if(e.headers)if(typeof e.headers.getSetCookie=="function")e=e.headers.getSetCookie();else if(e.headers["set-cookie"])e=e.headers["set-cookie"];else{var r=e.headers[Object.keys(e.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&e.headers.cookie&&!t.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),e=r}if(Array.isArray(e)||(e=[e]),t.map){var n=yue();return e.filter(vue).reduce(function(s,i){var a=Sue(i,t);return a&&!Eue(a.name)&&(s[a.name]=a),s},n)}else return e.filter(vue).map(function(s){return Sue(s,t)}).filter(Boolean)}function j4r(e){if(Array.isArray(e))return e;if(typeof e!="string")return[];var t=[],r=0,n,s,i,a,o;function c(){for(;r=e.length)&&t.push(e.substring(n,e.length))}return t}OD.exports=kXe;OD.exports.parse=kXe;OD.exports.parseString=Sue;OD.exports.splitCookiesString=j4r});var $Xe=S((Kzn,FXe)=>{"use strict";var DD=require("node:http"),{Writable:K4r,Readable:G4r}=require("node:stream"),z4r=require("node:util"),Y4r=BXe();function NA(e,t,r){DD.ServerResponse.call(this,e),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(W4r()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>t(a));process.nextTick(()=>t(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>t(a,null))}};this.once("finish",()=>{let a=Q4r(this);a.raw.req=e,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}z4r.inherits(NA,DD.ServerResponse);NA.prototype.setTimeout=function(e,t){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},e),this.on("timeout",t),this};NA.prototype.writeHead=function(){let e=DD.ServerResponse.prototype.writeHead.apply(this,arguments);return UXe(this),e};NA.prototype.write=function(e,t,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),DD.ServerResponse.prototype.write.call(this,e,t,r),this._lightMyRequest.payloadChunks.push(Buffer.from(e,t)),!0};NA.prototype.end=function(e,t,r){e&&this.write(e,t),DD.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};NA.prototype.destroy=function(e){this.destroyed||(this.destroyed=!0,e&&process.nextTick(()=>this.emit("error",e)),process.nextTick(()=>this.emit("close")))};NA.prototype.addTrailers=function(e){for(let t in e)this._lightMyRequest.trailers[t.toLowerCase().trim()]=e[t].toString().trim()};function Q4r(e){e._lightMyRequest.headers===null&&UXe(e),X4r(e);let t={raw:{res:e},headers:e._lightMyRequest.headers,statusCode:e.statusCode,statusMessage:e.statusMessage,trailers:{},get cookies(){return Y4r.parse(this)}},r=Buffer.concat(e._lightMyRequest.payloadChunks);return t.rawPayload=r,t.payload=r.toString(),t.body=t.payload,t.trailers=e._lightMyRequest.trailers,t.json=function(){return JSON.parse(t.payload)},t.stream=function(){return G4r.from(e._lightMyRequest.payloadChunks)},t}function W4r(){return new K4r({write(e,t,r){setImmediate(r)}})}function X4r(e){let t=e._lightMyRequest.headers;for(let r of Object.keys(t)){let n=t[r];Array.isArray(n)?t[r]=n.map(s=>""+s):t[r]=""+n}}function UXe(e){e._lightMyRequest.headers=Object.assign({},e.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(t=>{let r=new RegExp("\\r\\n"+t+": ([^\\r]*)\\r\\n"),n=e._header.match(r);n&&(e._lightMyRequest.headers[t.toLowerCase()]=n[1])})}FXe.exports=NA});var qXe=S((Gzn,Tue)=>{"use strict";Tue.exports=na;Tue.exports.default=na;var J4r={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function na(e,{instancePath:t="",parentData:r,parentDataProperty:n,rootData:s=e}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(e&&typeof e=="object"&&!Array.isArray(e)){let E;if(e.url===void 0&&(E="url")){let v={instancePath:t,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:E},message:"must have required property '"+E+"'"};i===null?i=[v]:i.push(v),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(e&&typeof e=="object"&&!Array.isArray(e)){let E;if(e.path===void 0&&(E="path")){let v={instancePath:t,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:E},message:"must have required property '"+E+"'"};i===null?i=[v]:i.push(v),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let E={instancePath:t,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[E]:i.push(E),a++,na.errors=i,!1}if(a===0)if(e&&typeof e=="object"&&!Array.isArray(e)){if(e.url!==void 0){let E=e.url,v=a,b=a,I=!1,T=null,x=a;if(typeof E!="string"){let D=typeof E,M;if(M===void 0)if(D=="number"||D=="boolean")M=""+E;else if(E===null)M="";else{let L={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}M!==void 0&&(E=M,e!==void 0&&(e.url=M))}var p=x===a;p&&(I=!0,T=0);let w=a;if(a===w)if(E&&typeof E=="object"&&!Array.isArray(E)){let D;if(E.pathname===void 0&&(D="pathname")){let M={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:D},message:"must have required property '"+D+"'"};i===null?i=[M]:i.push(M),a++}else{if(E.protocol!==void 0){let M=E.protocol,L=a;if(typeof M!="string"){let U=typeof M,G;if(G===void 0)if(U=="number"||U=="boolean")G=""+M;else if(M===null)G="";else{let $={instancePath:t+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[$]:i.push($),a++}G!==void 0&&(M=G,E!==void 0&&(E.protocol=G))}var h=L===a}else var h=!0;if(h){if(E.hostname!==void 0){let M=E.hostname,L=a;if(typeof M!="string"){let G=typeof M,$;if($===void 0)if(G=="number"||G=="boolean")$=""+M;else if(M===null)$="";else{let K={instancePath:t+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}$!==void 0&&(M=$,E!==void 0&&(E.hostname=$))}var h=L===a}else var h=!0;if(h)if(E.pathname!==void 0){let M=E.pathname,L=a;if(typeof M!="string"){let G=typeof M,$;if($===void 0)if(G=="number"||G=="boolean")$=""+M;else if(M===null)$="";else{let K={instancePath:t+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}$!==void 0&&(M=$,E!==void 0&&(E.pathname=$))}var h=L===a}else var h=!0}}}else{let D={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[D]:i.push(D),a++}var p=w===a;if(p&&I?(I=!1,T=[T,1]):p&&(I=!0,T=1),I)a=b,i!==null&&(b?i.length=b:i=null);else{let D={instancePath:t+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:T},message:"must match exactly one schema in oneOf"};return i===null?i=[D]:i.push(D),a++,na.errors=i,!1}var m=v===a}else var m=!0;if(m){if(e.path!==void 0){let E=e.path,v=a,b=a,I=!1,T=null,x=a;if(typeof E!="string"){let M=typeof E,L;if(L===void 0)if(M=="number"||M=="boolean")L=""+E;else if(E===null)L="";else{let U={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}L!==void 0&&(E=L,e!==void 0&&(e.path=L))}var _=x===a;_&&(I=!0,T=0);let w=a;if(a===w)if(E&&typeof E=="object"&&!Array.isArray(E)){let M;if(E.pathname===void 0&&(M="pathname")){let L={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[L]:i.push(L),a++}else{if(E.protocol!==void 0){let L=E.protocol,U=a;if(typeof L!="string"){let G=typeof L,$;if($===void 0)if(G=="number"||G=="boolean")$=""+L;else if(L===null)$="";else{let K={instancePath:t+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}$!==void 0&&(L=$,E!==void 0&&(E.protocol=$))}var g=U===a}else var g=!0;if(g){if(E.hostname!==void 0){let L=E.hostname,U=a;if(typeof L!="string"){let $=typeof L,K;if(K===void 0)if($=="number"||$=="boolean")K=""+L;else if(L===null)K="";else{let ee={instancePath:t+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[ee]:i.push(ee),a++}K!==void 0&&(L=K,E!==void 0&&(E.hostname=K))}var g=U===a}else var g=!0;if(g)if(E.pathname!==void 0){let L=E.pathname,U=a;if(typeof L!="string"){let $=typeof L,K;if(K===void 0)if($=="number"||$=="boolean")K=""+L;else if(L===null)K="";else{let ee={instancePath:t+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[ee]:i.push(ee),a++}K!==void 0&&(L=K,E!==void 0&&(E.pathname=K))}var g=U===a}else var g=!0}}}else{let M={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var _=w===a;if(_&&I?(I=!1,T=[T,1]):_&&(I=!0,T=1),I)a=b,i!==null&&(b?i.length=b:i=null);else{let M={instancePath:t+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:T},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,na.errors=i,!1}var m=v===a}else var m=!0;if(m){if(e.cookies!==void 0){let E=e.cookies,v=a;if(a===v&&!(E&&typeof E=="object"&&!Array.isArray(E)))return na.errors=[{instancePath:t+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=v===a}else var m=!0;if(m){if(e.headers!==void 0){let E=e.headers,v=a;if(a===v&&!(E&&typeof E=="object"&&!Array.isArray(E)))return na.errors=[{instancePath:t+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=v===a}else var m=!0;if(m){if(e.query!==void 0){let E=e.query,v=a,b=a,I=!1,T=a;if(a===T&&!(E&&typeof E=="object"&&!Array.isArray(E))){let w={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[w]:i.push(w),a++}var y=T===a;if(I=I||y,!I){let w=a;if(typeof E!="string"){let M=typeof E,L;if(L===void 0)if(M=="number"||M=="boolean")L=""+E;else if(E===null)L="";else{let U={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}L!==void 0&&(E=L,e!==void 0&&(e.query=L))}var y=w===a;I=I||y}if(I)a=b,i!==null&&(b?i.length=b:i=null);else{let w={instancePath:t+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[w]:i.push(w),a++,na.errors=i,!1}var m=v===a}else var m=!0;if(m){if(e.simulate!==void 0){let E=e.simulate,v=a;if(a===v)if(E&&typeof E=="object"&&!Array.isArray(E)){if(E.end!==void 0){let I=E.end,T=a;if(typeof I!="boolean"){let x;if(x===void 0)if(I==="false"||I===0||I===null)x=!1;else if(I==="true"||I===1)x=!0;else return na.errors=[{instancePath:t+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;x!==void 0&&(I=x,E!==void 0&&(E.end=x))}var A=T===a}else var A=!0;if(A){if(E.split!==void 0){let I=E.split,T=a;if(typeof I!="boolean"){let w;if(w===void 0)if(I==="false"||I===0||I===null)w=!1;else if(I==="true"||I===1)w=!0;else return na.errors=[{instancePath:t+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;w!==void 0&&(I=w,E!==void 0&&(E.split=w))}var A=T===a}else var A=!0;if(A){if(E.error!==void 0){let I=E.error,T=a;if(typeof I!="boolean"){let w;if(w===void 0)if(I==="false"||I===0||I===null)w=!1;else if(I==="true"||I===1)w=!0;else return na.errors=[{instancePath:t+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;w!==void 0&&(I=w,E!==void 0&&(E.error=w))}var A=T===a}else var A=!0;if(A)if(E.close!==void 0){let I=E.close,T=a;if(typeof I!="boolean"){let w;if(w===void 0)if(I==="false"||I===0||I===null)w=!1;else if(I==="true"||I===1)w=!0;else return na.errors=[{instancePath:t+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;w!==void 0&&(I=w,E!==void 0&&(E.close=w))}var A=T===a}else var A=!0}}}else return na.errors=[{instancePath:t+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=v===a}else var m=!0;if(m){if(e.authority!==void 0){let E=e.authority,v=a;if(typeof E!="string"){let I=typeof E,T;if(T===void 0)if(I=="number"||I=="boolean")T=""+E;else if(E===null)T="";else return na.errors=[{instancePath:t+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.authority=T))}var m=v===a}else var m=!0;if(m){if(e.remoteAddress!==void 0){let E=e.remoteAddress,v=a;if(typeof E!="string"){let I=typeof E,T;if(T===void 0)if(I=="number"||I=="boolean")T=""+E;else if(E===null)T="";else return na.errors=[{instancePath:t+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.remoteAddress=T))}var m=v===a}else var m=!0;if(m){if(e.method!==void 0){let E=e.method,v=a;if(typeof E!="string"){let I=typeof E,T;if(T===void 0)if(I=="number"||I=="boolean")T=""+E;else if(E===null)T="";else return na.errors=[{instancePath:t+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;T!==void 0&&(E=T,e!==void 0&&(e.method=T))}if(!(E==="ACL"||E==="BIND"||E==="CHECKOUT"||E==="CONNECT"||E==="COPY"||E==="DELETE"||E==="GET"||E==="HEAD"||E==="LINK"||E==="LOCK"||E==="M-SEARCH"||E==="MERGE"||E==="MKACTIVITY"||E==="MKCALENDAR"||E==="MKCOL"||E==="MOVE"||E==="NOTIFY"||E==="OPTIONS"||E==="PATCH"||E==="POST"||E==="PROPFIND"||E==="PROPPATCH"||E==="PURGE"||E==="PUT"||E==="REBIND"||E==="REPORT"||E==="SEARCH"||E==="SOURCE"||E==="SUBSCRIBE"||E==="TRACE"||E==="UNBIND"||E==="UNLINK"||E==="UNLOCK"||E==="UNSUBSCRIBE"||E==="acl"||E==="bind"||E==="checkout"||E==="connect"||E==="copy"||E==="delete"||E==="get"||E==="head"||E==="link"||E==="lock"||E==="m-search"||E==="merge"||E==="mkactivity"||E==="mkcalendar"||E==="mkcol"||E==="move"||E==="notify"||E==="options"||E==="patch"||E==="post"||E==="propfind"||E==="proppatch"||E==="purge"||E==="put"||E==="rebind"||E==="report"||E==="search"||E==="source"||E==="subscribe"||E==="trace"||E==="unbind"||E==="unlink"||E==="unlock"||E==="unsubscribe"))return na.errors=[{instancePath:t+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:J4r.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var m=v===a}else var m=!0;if(m)if(e.validate!==void 0){let E=e.validate,v=a;if(typeof E!="boolean"){let I;if(I===void 0)if(E==="false"||E===0||E===null)I=!1;else if(E==="true"||E===1)I=!0;else return na.errors=[{instancePath:t+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;I!==void 0&&(E=I,e!==void 0&&(e.validate=I))}var m=v===a}else var m=!0}}}}}}}}}else return na.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return na.errors=i,a===0}});var jXe=S((zzn,LD)=>{"use strict";var Z4r=require("node:assert"),bue=MXe(),p$=$Xe(),g$="The dispatch function has already been invoked",HXe=qXe();function Iue(e,t,r){return r===void 0?new PD(e,t):m$(e,t,r)}function VXe(e,t,r,n){return r.once("error",function(s){this.destroyed&&n.destroy(s)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>e.call(t,r,n))}function m$(e,t,r){if(t=typeof t=="string"?{url:t}:t,t.validate!==!1&&(Z4r(typeof e=="function","dispatchFunc should be a function"),!HXe(t)))throw new Error(HXe.errors.map(a=>a.message));let n=t.server||{},s=t.Request?bue.CustomRequest:bue;if(e.request&&e.request.app===e&&(Object.setPrototypeOf(Object.getPrototypeOf(e.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(e.response),p$.prototype)),typeof r=="function"){let i=new s(t),a=new p$(i,r);return VXe(e,n,i,a)}else return new Promise((i,a)=>{let o=new s(t),c=new p$(o,i,a);VXe(e,n,o,c)})}function PD(e,t){typeof t=="string"?this.option={url:t}:this.option=Object.assign({},t),this.dispatch=e,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var eBr=["delete","get","head","options","patch","post","put","trace"];eBr.forEach(e=>{PD.prototype[e]=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(g$);return this.option.url=t,this.option.method=e.toUpperCase(),this}});var tBr=["body","cookies","headers","payload","query"];tBr.forEach(e=>{PD.prototype[e]=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(g$);return this.option[e]=t,this}});PD.prototype.end=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(g$);if(this._hasInvoked=!0,typeof e=="function")m$(this.dispatch,this.option,e);else return this._promise=m$(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(e=>{e!=="constructor"&&(PD.prototype[e]=function(...t){if(!this._promise){if(this._hasInvoked===!0)throw new Error(g$);this._hasInvoked=!0,this._promise=m$(this.dispatch,this.option)}return this._promise[e](...t)})});function rBr(e){return e instanceof bue||e instanceof p$||e&&e.constructor&&e.constructor.name==="_CustomLMRRequest"}LD.exports=Iue;LD.exports.default=Iue;LD.exports.inject=Iue;LD.exports.isInjection=rBr});var iJe=S((Yzn,y$)=>{"use strict";var nBr="4.26.0",sBr=SUe(),Rue=require("node:http"),MD,{kAvvioBoot:kD,kChildren:Cue,kServerBindings:KXe,kBodyLimit:iBr,kRoutePrefix:GXe,kLogLevel:aBr,kLogSerializers:oBr,kHooks:xue,kSchemaController:OA,kRequestAcceptVersion:cBr,kReplySerializerDefault:zXe,kContentTypeParser:uBr,kReply:lBr,kRequest:dBr,kFourOhFour:fBr,kState:ji,kOptions:wue,kPluginNameChain:BD,kSchemaErrorFormatter:Nue,kErrorHandler:_$,kKeepAliveConnections:Oue,kChildLoggerFactory:Due,kGenReqId:Pue}=Ma(),{createServer:hBr,compileValidateHTTPVersion:pBr}=KUe(),UD=V6(),A$=a5(),mBr=o5(),{supportedMethods:gBr}=Jne(),JI=nse(),Qv=hse(),YXe=Bce(),{Hooks:_Br,hookRunnerApplication:QXe,supportedHooks:Lue}=Y_(),{createLogger:ABr,createChildLogger:WXe,defaultChildLoggerFactory:EBr}=_O(),XXe=Vce(),{getGenReqId:JXe,reqIdGenFactory:ZXe}=j8(),{buildRouting:yBr,validateBodyLimitOption:vBr}=sXe(),SBr=dXe(),sJe=pXe(),TBr=TXe(),{FSTDEP009:bBr}=Zp(),IBr=IXe(),{appendStackTrace:RBr,AVVIO_ERRORS_MAP:eJe,...Wv}=Bo(),{defaultInitOptions:Pu}=sJe,{FST_ERR_ASYNC_CONSTRAINT:CBr,FST_ERR_BAD_URL:xBr,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:wBr,FST_ERR_OPTIONS_NOT_OBJ:NBr,FST_ERR_QSP_NOT_FN:OBr,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:DBr,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:PBr,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:LBr,FST_ERR_VERSION_CONSTRAINT_NOT_STR:MBr,FST_ERR_INSTANCE_ALREADY_LISTENING:kBr,FST_ERR_REOPENED_CLOSE_SERVER:BBr,FST_ERR_ROUTE_REWRITE_NOT_STR:UBr,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:tJe}=Wv,{buildErrorHandler:rJe}=WO();function FBr(e){let t={};return["errorHandler","logLevel","logSerializers"].concat(Lue).forEach(n=>{t[n]=e.store[n]}),Object.assign({},t)}function E$(e){if(e=e||{},typeof e!="object")throw new NBr;if(e.querystringParser&&typeof e.querystringParser!="function")throw new OBr(typeof e.querystringParser);if(e.schemaController&&e.schemaController.bucket&&typeof e.schemaController.bucket!="function")throw new DBr(typeof e.schemaController.bucket);vBr(e.bodyLimit);let t=e.requestIdHeader===!1?!1:(e.requestIdHeader||Pu.requestIdHeader).toLowerCase(),r=ZXe(t,e.genReqId),n=e.requestIdLogLabel||"reqId",s=e.bodyLimit||Pu.bodyLimit,i=e.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},e.ajv),o=e.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new PBr(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new LBr(typeof a.plugins);let{logger:c,hasLogger:u}=ABr(e);e.connectionTimeout=e.connectionTimeout||Pu.connectionTimeout,e.keepAliveTimeout=e.keepAliveTimeout||Pu.keepAliveTimeout,e.maxRequestsPerSocket=e.maxRequestsPerSocket||Pu.maxRequestsPerSocket,e.requestTimeout=e.requestTimeout||Pu.requestTimeout,e.logger=c,e.requestIdHeader=t,e.requestIdLogLabel=n,e.disableRequestLogging=i,e.ajv=a,e.clientErrorHandler=e.clientErrorHandler||K;let l=sJe(e);e.exposeHeadRoutes=l.exposeHeadRoutes;let d=e.constraints;e.versioning&&(bBr(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:e.versioning.storage,deriveConstraint:e.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new MBr}}});let f=yBr({config:{defaultRoute:ee,onBadUrl:z,constraints:d,ignoreTrailingSlash:e.ignoreTrailingSlash||Pu.ignoreTrailingSlash,ignoreDuplicateSlashes:e.ignoreDuplicateSlashes||Pu.ignoreDuplicateSlashes,maxParamLength:e.maxParamLength||Pu.maxParamLength,caseSensitive:e.caseSensitive,allowUnsafeRegex:e.allowUnsafeRegex||Pu.allowUnsafeRegex,buildPrettyMeta:FBr,querystringParser:e.querystringParser,useSemicolonDelimiter:e.useSemicolonDelimiter??Pu.useSemicolonDelimiter}}),h=SBr(e),p=H(f,e);e.http2SessionTimeout=l.http2SessionTimeout;let{server:m,listen:g}=hBr(e,p),_=typeof m.closeAllConnections=="function",y=typeof m.closeIdleConnections=="function",A=e.forceCloseConnections;if(A==="idle"&&!y)throw new wBr;typeof A!="boolean"&&(A=y?"idle":!1);let E=!_&&A===!0?new Set:IBr(),v=UD.setupResponseListeners,b=YXe.buildSchemaController(null,e.schemaController),I={[ji]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[Oue]:E,[wue]:e,[Cue]:[],[KXe]:[],[iBr]:s,[GXe]:"",[aBr]:"",[oBr]:null,[xue]:new _Br,[OA]:b,[Nue]:null,[_$]:rJe(),[Due]:EBr,[zXe]:null,[uBr]:new Qv(s,e.onProtoPoisoning||Pu.onProtoPoisoning,e.onConstructorPoisoning||Pu.onConstructorPoisoning),[lBr]:UD.buildReply(UD),[dBr]:A$.buildRequest(A$,e.trustProxy),[fBr]:h,[XXe.kRegisteredPlugins]:[],[BD]:["fastify"],[kD]:null,[Pue]:r,routing:p,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(Y,X,ae){return f.prepareRoute.call(this,{method:"DELETE",url:Y,options:X,handler:ae})},get:function(Y,X,ae){return f.prepareRoute.call(this,{method:"GET",url:Y,options:X,handler:ae})},head:function(Y,X,ae){return f.prepareRoute.call(this,{method:"HEAD",url:Y,options:X,handler:ae})},patch:function(Y,X,ae){return f.prepareRoute.call(this,{method:"PATCH",url:Y,options:X,handler:ae})},post:function(Y,X,ae){return f.prepareRoute.call(this,{method:"POST",url:Y,options:X,handler:ae})},put:function(Y,X,ae){return f.prepareRoute.call(this,{method:"PUT",url:Y,options:X,handler:ae})},options:function(Y,X,ae){return f.prepareRoute.call(this,{method:"OPTIONS",url:Y,options:X,handler:ae})},all:function(Y,X,ae){return f.prepareRoute.call(this,{method:gBr,url:Y,options:X,handler:ae})},route:function(Y){return f.route.call(this,{options:Y})},hasRoute:function(Y){return f.hasRoute.call(this,{options:Y})},findRoute:function(Y){return f.findRoute(Y)},log:c,withTypeProvider:U,addHook:G,addSchema:$,getSchema:b.getSchema.bind(b),getSchemas:b.getSchemas.bind(b),setValidatorCompiler:te,setSerializerCompiler:Z,setSchemaController:de,setReplySerializer:B,setSchemaErrorFormatter:Q,setGenReqId:j,addContentTypeParser:Qv.helpers.addContentTypeParser,hasContentTypeParser:Qv.helpers.hasContentTypeParser,getDefaultJsonParser:Qv.defaultParsers.getDefaultJsonParser,defaultTextParser:Qv.defaultParsers.defaultTextParser,removeContentTypeParser:Qv.helpers.removeContentTypeParser,removeAllContentTypeParsers:Qv.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[XXe.kRegisteredPlugins].includes(q)||this[BD].includes(q)},listen:g,server:m,addresses:function(){let q=this[KXe].map(Y=>Y.address());return q.push(this.server.address()),q.filter(Y=>Y)},decorate:JI.add,hasDecorator:JI.exist,decorateReply:JI.decorateReply,decorateRequest:JI.decorateRequest,hasRequestDecorator:JI.existRequest,hasReplyDecorator:JI.existReply,inject:M,printRoutes:P,setNotFoundHandler:le,setErrorHandler:k,setChildLoggerFactory:W,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(I,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let Y=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[wue].https?"https":"http"}://${Y}:${q.port}`}},pluginName:{configurable:!0,get(){return this[BD].length>1?this[BD].join(" -> "):this[BD][0]}},prefix:{configurable:!0,get(){return this[GXe]}},validatorCompiler:{configurable:!0,get(){return this[OA].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[OA].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[Due]}},version:{configurable:!0,get(){return nBr}},errorHandler:{configurable:!0,get(){return this[_$].func}},genReqId:{configurable:!0,get(){return this[Pue]}}}),e.schemaErrorFormatter&&(nJe(e.schemaErrorFormatter),I[Nue]=e.schemaErrorFormatter.bind(I));let T=Number(e.pluginTimeout),x=sBr(I,{autostart:!1,timeout:isNaN(T)===!1?T:Pu.pluginTimeout,expose:{use:"register"}});x.override=TBr,x.on("start",()=>I[ji].started=!0),I[kD]=I.ready,I.ready=L,I.printPlugins=x.prettyPrint.bind(x),x.once("preReady",()=>{I.onClose((q,Y)=>{I[ji].closing=!0,f.closeRoutes(),QXe("preClose",I[kD],I,function(){if(I[ji].listening){if(A==="idle")q.server.closeIdleConnections();else if(_&&A)q.server.closeAllConnections();else if(A===!0)for(let X of I[Oue])X.destroy(),I[Oue].delete(X)}!e.serverFactory||I[ji].listening?q.server.close(function(X){X&&X.code!=="ERR_SERVER_NOT_RUNNING"?Y(null):Y()}):process.nextTick(Y,null)})})});let w=new mBr({server:I,config:{}});I.setNotFoundHandler(),h.arrange404(I),f.setup(e,{avvio:x,fourOhFour:h,logger:c,hasLogger:u,setupResponseListeners:v,throwIfAlreadyStarted:D,validateHTTPVersion:pBr(e),keepAliveConnections:E}),m.on("clientError",e.clientErrorHandler.bind(I));try{let Y=require("node:diagnostics_channel").channel("fastify.initialization");Y.hasSubscribers&&Y.publish({fastify:I})}catch{}return"asyncDispose"in Symbol&&(I[Symbol.asyncDispose]=function(){return I.close()}),I;function D(q){if(I[ji].started)throw new kBr(q)}function M(q,Y){if(MD===void 0&&(MD=jXe()),I[ji].started){if(I[ji].closing){let X=new BBr;if(Y){Y(X);return}else return Promise.reject(X)}return MD(p,q,Y)}if(Y)this.ready(X=>{X?Y(X,null):MD(p,q,Y)});else return MD((X,ae)=>{this.ready(function(ne){if(ne){ae.emit("error",ne);return}p(X,ae)})},q)}function L(q){if(this[ji].readyPromise!==null){if(q!=null){this[ji].readyPromise.then(()=>q(null,I),q);return}return this[ji].readyPromise}let Y,X;if(process.nextTick(ae),this[ji].readyPromise=new Promise(function(se,J){Y=se,X=J}),q)this[ji].readyPromise.then(()=>q(null,I),q);else return this[ji].readyPromise;function ae(){I[kD]((se,J)=>{se||I[ji].started||I[ji].ready||I[ji].booting?ne(se):(I[ji].booting=!0,QXe("onReady",I[kD],I,ne)),J()})}function ne(se){if(se=se!=null&&eJe[se.code]!=null?RBr(se,new eJe[se.code](se.message)):se,se)return X(se);Y(I),I[ji].booting=!1,I[ji].ready=!0,I[ji].promise=null}}function U(){return this}function G(q,Y){if(D('Cannot call "addHook"!'),Y==null)throw new Wv.FST_ERR_HOOK_INVALID_HANDLER(q,Y);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(Y.constructor.name==="AsyncFunction"&&Y.length===4)throw new Wv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(Y.constructor.name==="AsyncFunction"&&Y.length!==0)throw new Wv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(Y.constructor.name==="AsyncFunction"&&Y.length!==1)throw new Wv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(Y.constructor.name==="AsyncFunction"&&Y.length===3)throw new Wv.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(Y):q==="onReady"||q==="onListen"||q==="onRoute"?this[xue].add(q,Y):this.after((ae,ne)=>{X.call(this,q,Y),ne(ae)}),this;function X(ae,ne){this[xue].add(ae,ne),this[Cue].forEach(se=>X.call(se,ae,ne))}}function $(q){return D('Cannot call "addSchema"!'),this[OA].add(q),this[Cue].forEach(Y=>Y.addSchema(q)),this}function K(q,Y){if(q.code==="ECONNRESET"||Y.destroyed)return;let X,ae,ne,se;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ae="408",ne=Rue.STATUS_CODES[ae],X=`{"error":"${ne}","message":"Client Timeout","statusCode":408}`,se="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ae="431",ne=Rue.STATUS_CODES[ae],X=`{"error":"${ne}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,se="header_overflow"):(ae="400",ne=Rue.STATUS_CODES[ae],X=`{"error":"${ne}","message":"Client Error","statusCode":400}`,se="error"),this.log.trace({err:q},`client ${se}`),Y.writable&&Y.write(`HTTP/1.1 ${ae} ${ne}\r +Content-Length: ${X.length}\r Content-Type: application/json\r \r -${J}`),G.destroy(H)}function X(H,G){H.headers["accept-version"]!==void 0&&(H.headers[gvr]=H.headers["accept-version"],H.headers["accept-version"]=void 0),p.router.lookup(H,G)}function K(H,G,J){if(o){let te=tHe(T.server,G),re=Z9e(T,u,G,te),ce=new R6(te,null,G,null,re,T),de=new PN(J,ce,re);return s===!1&&re.info({req:ce},"incoming request"),o(new Lvr(H),ce,de)}let ee=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${H}' is not a valid url component","statusCode":400}`;J.writeHead(400,{"Content-Type":"application/json","Content-Length":ee.length}),J.end(ee)}function Z(H,G,J){if(H!==!1)return function(te){if(te){if(o){let ce=tHe(T.server,G),de=Z9e(T,u,G,ce),pe=new R6(ce,null,G,null,de,T),Ce=new PN(J,pe,de);return s===!1&&de.info({req:pe},"incoming request"),o(new Mvr,pe,Ce)}let re='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';J.writeHead(500,{"Content-Type":"application/json","Content-Length":re.length}),J.end(re)}}}function Y(H,G){return k('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,H,G,N,f.routeHandler),this}function ie(H){return k('Cannot call "setValidatorCompiler"!'),this[Bg].setValidatorCompiler(H),this}function ue(H){return k('Cannot call "setSchemaErrorFormatter"!'),aHe(H),this[mne]=H.bind(this),this}function he(H){return k('Cannot call "setSerializerCompiler"!'),this[Bg].setSerializerCompiler(H),this}function ye(H){k('Cannot call "setSchemaController"!');let G=this[Bg],J=X9e.buildSchemaController(G,Object.assign({},G.opts,H));return this[Bg]=J,this.getSchema=J.getSchema.bind(J),this.getSchemas=J.getSchemas.bind(J),this}function q(H){return k('Cannot call "setReplySerializer"!'),this[W9e]=H,this}function B(H){return k('Cannot call "setErrorHandler"!'),this[N6]=sHe(this[N6],H.bind(this)),this}function ae(H){return k('Cannot call "setChildLoggerFactory"!'),this[yne]=H,this}function M(H={}){return H.includeMeta=H.includeHooks?H.includeMeta?Ane.concat(H.includeMeta):Ane:H.includeMeta,f.printRoutes(H)}function F(H,{rewriteUrl:G,logger:J}){let ee;return function(re,ce){if(ee===void 0&&(ee=H.isAsyncConstraint()),G){re.originalUrl=re.url;let de=G.call(C,re);if(typeof de=="string")re.url=de;else{let pe=new zvr(re.url,typeof de);re.destroy(pe)}}H.routing(re,ce,Z(ee,re,ce))}}function V(H){return k('Cannot call "setGenReqId"!'),this[_ne]=rHe(this[hne].requestIdHeader,H),this}}D6.errorCodes=XA;function aHe(e){if(typeof e!="function")throw new iHe(typeof e);if(e.constructor.name==="AsyncFunction")throw new iHe("AsyncFunction")}k6.exports=D6;k6.exports.fastify=D6;k6.exports.default=D6});function MN(e,t){return function(){return e.apply(t,arguments)}}var vne=ve(()=>{"use strict"});function Yvr(e){return e!==null&&!LN(e)&&e.constructor!==null&&!LN(e.constructor)&&_l(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}function Wvr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&pHe(e.buffer),t}function BN(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,i;if(typeof e!="object"&&(e=[e]),DS(e))for(n=0,i=e.length;n0;)if(i=r[n],t===i.toLowerCase())return i;return null}function Ene(){let{caseless:e}=yHe(this)&&this||{},t={},r=(n,i)=>{let s=e&&mHe(t,i)||i;P6(t[s])&&P6(n)?t[s]=Ene(t[s],n):P6(n)?t[s]=Ene({},n):DS(n)?t[s]=n.slice():t[s]=n};for(let n=0,i=arguments.length;n{"use strict";vne();({toString:Gvr}=Object.prototype),{getPrototypeOf:Sne}=Object,M6=(e=>t=>{let r=Gvr.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),np=e=>(e=e.toLowerCase(),t=>M6(t)===e),L6=e=>t=>typeof t===e,{isArray:DS}=Array,LN=L6("undefined");pHe=np("ArrayBuffer");Xvr=L6("string"),_l=L6("function"),hHe=L6("number"),B6=e=>e!==null&&typeof e=="object",Jvr=e=>e===!0||e===!1,P6=e=>{if(M6(e)!=="object")return!1;let t=Sne(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Zvr=np("Date"),ebr=np("File"),tbr=np("Blob"),rbr=np("FileList"),nbr=e=>B6(e)&&_l(e.pipe),ibr=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||_l(e.append)&&((t=M6(e))==="formdata"||t==="object"&&_l(e.toString)&&e.toString()==="[object FormData]"))},sbr=np("URLSearchParams"),abr=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");gHe=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,yHe=e=>!LN(e)&&e!==gHe;obr=(e,t,r,{allOwnKeys:n}={})=>(BN(t,(i,s)=>{r&&_l(i)?e[s]=MN(i,r):e[s]=i},{allOwnKeys:n}),e),ubr=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),cbr=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},lbr=(e,t,r,n)=>{let i,s,a,o={};if(t=t||{},e==null)return t;do{for(i=Object.getOwnPropertyNames(e),s=i.length;s-- >0;)a=i[s],(!n||n(a,e,t))&&!o[a]&&(t[a]=e[a],o[a]=!0);e=r!==!1&&Sne(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},dbr=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},fbr=e=>{if(!e)return null;if(DS(e))return e;let t=e.length;if(!hHe(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},pbr=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Sne(Uint8Array)),hbr=(e,t)=>{let n=(e&&e[Symbol.iterator]).call(e),i;for(;(i=n.next())&&!i.done;){let s=i.value;t.call(e,s[0],s[1])}},mbr=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},gbr=np("HTMLFormElement"),ybr=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,i){return n.toUpperCase()+i}),dHe=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),_br=np("RegExp"),_He=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};BN(r,(i,s)=>{let a;(a=t(i,s,e))!==!1&&(n[s]=a||i)}),Object.defineProperties(e,n)},Abr=e=>{_He(e,(t,r)=>{if(_l(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(_l(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},vbr=(e,t)=>{let r={},n=i=>{i.forEach(s=>{r[s]=!0})};return DS(e)?n(e):n(String(e).split(t)),r},bbr=()=>{},Ebr=(e,t)=>(e=+e,Number.isFinite(e)?e:t),bne="abcdefghijklmnopqrstuvwxyz",fHe="0123456789",AHe={DIGIT:fHe,ALPHA:bne,ALPHA_DIGIT:bne+bne.toUpperCase()+fHe},Sbr=(e=16,t=AHe.ALPHA_DIGIT)=>{let r="",{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};Ibr=e=>{let t=new Array(10),r=(n,i)=>{if(B6(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[i]=n;let s=DS(n)?[]:{};return BN(n,(a,o)=>{let u=r(a,i+1);!LN(u)&&(s[o]=u)}),t[i]=void 0,s}}return n};return r(e,0)},xbr=np("AsyncFunction"),Cbr=e=>e&&(B6(e)||_l(e))&&_l(e.then)&&_l(e.catch),me={isArray:DS,isArrayBuffer:pHe,isBuffer:Yvr,isFormData:ibr,isArrayBufferView:Wvr,isString:Xvr,isNumber:hHe,isBoolean:Jvr,isObject:B6,isPlainObject:P6,isUndefined:LN,isDate:Zvr,isFile:ebr,isBlob:tbr,isRegExp:_br,isFunction:_l,isStream:nbr,isURLSearchParams:sbr,isTypedArray:pbr,isFileList:rbr,forEach:BN,merge:Ene,extend:obr,trim:abr,stripBOM:ubr,inherits:cbr,toFlatObject:lbr,kindOf:M6,kindOfTest:np,endsWith:dbr,toArray:fbr,forEachEntry:hbr,matchAll:mbr,isHTMLForm:gbr,hasOwnProperty:dHe,hasOwnProp:dHe,reduceDescriptors:_He,freezeMethods:Abr,toObjectSet:vbr,toCamelCase:ybr,noop:bbr,toFiniteNumber:Ebr,findKey:mHe,global:gHe,isContextDefined:yHe,ALPHABET:AHe,generateString:Sbr,isSpecCompliantForm:wbr,toJSONObject:Ibr,isAsyncFn:xbr,isThenable:Cbr}});function kS(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}var vHe,bHe,nt,Nd=ve(()=>{"use strict";Ai();me.inherits(kS,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:me.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});vHe=kS.prototype,bHe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{bHe[e]={value:e}});Object.defineProperties(kS,bHe);Object.defineProperty(vHe,"isAxiosError",{value:!0});kS.from=(e,t,r,n,i,s)=>{let a=Object.create(vHe);return me.toFlatObject(e,a,function(u){return u!==Error.prototype},o=>o!=="isAxiosError"),kS.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,s&&Object.assign(a,s),a};nt=kS});var wHe=b((EDn,SHe)=>{var EHe=require("stream").Stream,Tbr=require("util");SHe.exports=Rd;function Rd(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}Tbr.inherits(Rd,EHe);Rd.create=function(e,t){var r=new this;t=t||{};for(var n in t)r[n]=t[n];r.source=e;var i=e.emit;return e.emit=function(){return r._handleEmit(arguments),i.apply(e,arguments)},e.on("error",function(){}),r.pauseStream&&e.pause(),r};Object.defineProperty(Rd.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});Rd.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};Rd.prototype.resume=function(){this._released||this.release(),this.source.resume()};Rd.prototype.pause=function(){this.source.pause()};Rd.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(e){this.emit.apply(this,e)}.bind(this)),this._bufferedEvents=[]};Rd.prototype.pipe=function(){var e=EHe.prototype.pipe.apply(this,arguments);return this.resume(),e};Rd.prototype._handleEmit=function(e){if(this._released){this.emit.apply(this,e);return}e[0]==="data"&&(this.dataSize+=e[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(e)};Rd.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var e="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(e))}}});var THe=b((SDn,CHe)=>{var Nbr=require("util"),xHe=require("stream").Stream,IHe=wHe();CHe.exports=Bi;function Bi(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}Nbr.inherits(Bi,xHe);Bi.create=function(e){var t=new this;e=e||{};for(var r in e)t[r]=e[r];return t};Bi.isStreamLike=function(e){return typeof e!="function"&&typeof e!="string"&&typeof e!="boolean"&&typeof e!="number"&&!Buffer.isBuffer(e)};Bi.prototype.append=function(e){var t=Bi.isStreamLike(e);if(t){if(!(e instanceof IHe)){var r=IHe.create(e,{maxDataSize:1/0,pauseStream:this.pauseStreams});e.on("data",this._checkDataSize.bind(this)),e=r}this._handleErrors(e),this.pauseStreams&&e.pause()}return this._streams.push(e),this};Bi.prototype.pipe=function(e,t){return xHe.prototype.pipe.call(this,e,t),this.resume(),e};Bi.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};Bi.prototype._realGetNext=function(){var e=this._streams.shift();if(typeof e>"u"){this.end();return}if(typeof e!="function"){this._pipeNext(e);return}var t=e;t(function(r){var n=Bi.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Bi.prototype._pipeNext=function(e){this._currentStream=e;var t=Bi.isStreamLike(e);if(t){e.on("end",this._getNext.bind(this)),e.pipe(this,{end:!1});return}var r=e;this.write(r),this._getNext()};Bi.prototype._handleErrors=function(e){var t=this;e.on("error",function(r){t._emitError(r)})};Bi.prototype.write=function(e){this.emit("data",e)};Bi.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Bi.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};Bi.prototype.end=function(){this._reset(),this.emit("end")};Bi.prototype.destroy=function(){this._reset(),this.emit("close")};Bi.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Bi.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var e="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(e))}};Bi.prototype._updateDataSize=function(){this.dataSize=0;var e=this;this._streams.forEach(function(t){t.dataSize&&(e.dataSize+=t.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};Bi.prototype._emitError=function(e){this._reset(),this.emit("error",e)}});var NHe=b((wDn,Rbr)=>{Rbr.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var DHe=b((IDn,RHe)=>{RHe.exports=NHe()});var PHe=b(Mu=>{"use strict";var $6=DHe(),Dbr=require("path").extname,kHe=/^\s*([^;\s]*)(?:;|\s|$)/,kbr=/^text\//i;Mu.charset=OHe;Mu.charsets={lookup:OHe};Mu.contentType=Obr;Mu.extension=Pbr;Mu.extensions=Object.create(null);Mu.lookup=Mbr;Mu.types=Object.create(null);Lbr(Mu.extensions,Mu.types);function OHe(e){if(!e||typeof e!="string")return!1;var t=kHe.exec(e),r=t&&$6[t[1].toLowerCase()];return r&&r.charset?r.charset:t&&kbr.test(t[1])?"UTF-8":!1}function Obr(e){if(!e||typeof e!="string")return!1;var t=e.indexOf("/")===-1?Mu.lookup(e):e;if(!t)return!1;if(t.indexOf("charset")===-1){var r=Mu.charset(t);r&&(t+="; charset="+r.toLowerCase())}return t}function Pbr(e){if(!e||typeof e!="string")return!1;var t=kHe.exec(e),r=t&&Mu.extensions[t[1].toLowerCase()];return!r||!r.length?!1:r[0]}function Mbr(e){if(!e||typeof e!="string")return!1;var t=Dbr("x."+e).toLowerCase().substr(1);return t&&Mu.types[t]||!1}function Lbr(e,t){var r=["nginx","apache",void 0,"iana"];Object.keys($6).forEach(function(i){var s=$6[i],a=s.extensions;if(!(!a||!a.length)){e[i]=a;for(var o=0;ol||c===l&&t[u].substr(0,12)==="application/"))continue}t[u]=i}}})}});var LHe=b((CDn,MHe)=>{MHe.exports=Bbr;function Bbr(e){var t=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;t?t(e):setTimeout(e,0)}});var wne=b((TDn,$He)=>{var BHe=LHe();$He.exports=$br;function $br(e){var t=!1;return BHe(function(){t=!0}),function(n,i){t?e(n,i):BHe(function(){e(n,i)})}}});var Ine=b((NDn,FHe)=>{FHe.exports=Fbr;function Fbr(e){Object.keys(e.jobs).forEach(Ubr.bind(e)),e.jobs={}}function Ubr(e){typeof this.jobs[e]=="function"&&this.jobs[e]()}});var xne=b((RDn,qHe)=>{var UHe=wne(),qbr=Ine();qHe.exports=jbr;function jbr(e,t,r,n){var i=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[i]=Hbr(t,i,e[i],function(s,a){i in r.jobs&&(delete r.jobs[i],s?qbr(r):r.results[i]=a,n(s,r.results))})}function Hbr(e,t,r,n){var i;return e.length==2?i=e(r,UHe(n)):i=e(r,t,UHe(n)),i}});var Cne=b((DDn,jHe)=>{jHe.exports=Kbr;function Kbr(e,t){var r=!Array.isArray(e),n={index:0,keyedList:r||t?Object.keys(e):null,jobs:{},results:r?{}:[],size:r?Object.keys(e).length:e.length};return t&&n.keyedList.sort(r?t:function(i,s){return t(e[i],e[s])}),n}});var Tne=b((kDn,HHe)=>{var Vbr=Ine(),zbr=wne();HHe.exports=Qbr;function Qbr(e){Object.keys(this.jobs).length&&(this.index=this.size,Vbr(this),zbr(e)(null,this.results))}});var VHe=b((ODn,KHe)=>{var Gbr=xne(),Ybr=Cne(),Wbr=Tne();KHe.exports=Xbr;function Xbr(e,t,r){for(var n=Ybr(e);n.index<(n.keyedList||e).length;)Gbr(e,t,n,function(i,s){if(i){r(i,s);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return Wbr.bind(n,r)}});var Nne=b((PDn,F6)=>{var zHe=xne(),Jbr=Cne(),Zbr=Tne();F6.exports=eEr;F6.exports.ascending=QHe;F6.exports.descending=tEr;function eEr(e,t,r,n){var i=Jbr(e,r);return zHe(e,t,i,function s(a,o){if(a){n(a,o);return}if(i.index++,i.index<(i.keyedList||e).length){zHe(e,t,i,s);return}n(null,i.results)}),Zbr.bind(i,n)}function QHe(e,t){return et?1:0}function tEr(e,t){return-1*QHe(e,t)}});var YHe=b((MDn,GHe)=>{var rEr=Nne();GHe.exports=nEr;function nEr(e,t,r){return rEr(e,t,null,r)}});var XHe=b((LDn,WHe)=>{WHe.exports={parallel:VHe(),serial:YHe(),serialOrdered:Nne()}});var Rne=b((BDn,JHe)=>{"use strict";JHe.exports=Object});var eKe=b(($Dn,ZHe)=>{"use strict";ZHe.exports=Error});var rKe=b((FDn,tKe)=>{"use strict";tKe.exports=EvalError});var iKe=b((UDn,nKe)=>{"use strict";nKe.exports=RangeError});var aKe=b((qDn,sKe)=>{"use strict";sKe.exports=ReferenceError});var uKe=b((jDn,oKe)=>{"use strict";oKe.exports=SyntaxError});var Fg=b((HDn,cKe)=>{"use strict";cKe.exports=TypeError});var dKe=b((KDn,lKe)=>{"use strict";lKe.exports=URIError});var pKe=b((VDn,fKe)=>{"use strict";fKe.exports=Math.abs});var mKe=b((zDn,hKe)=>{"use strict";hKe.exports=Math.floor});var yKe=b((QDn,gKe)=>{"use strict";gKe.exports=Math.max});var AKe=b((GDn,_Ke)=>{"use strict";_Ke.exports=Math.min});var bKe=b((YDn,vKe)=>{"use strict";vKe.exports=Math.pow});var SKe=b((WDn,EKe)=>{"use strict";EKe.exports=Math.round});var IKe=b((XDn,wKe)=>{"use strict";wKe.exports=Number.isNaN||function(t){return t!==t}});var CKe=b((JDn,xKe)=>{"use strict";var iEr=IKe();xKe.exports=function(t){return iEr(t)||t===0?t:t<0?-1:1}});var NKe=b((ZDn,TKe)=>{"use strict";TKe.exports=Object.getOwnPropertyDescriptor});var Dne=b((ekn,RKe)=>{"use strict";var U6=NKe();if(U6)try{U6([],"length")}catch{U6=null}RKe.exports=U6});var kKe=b((tkn,DKe)=>{"use strict";var q6=Object.defineProperty||!1;if(q6)try{q6({},"a",{value:1})}catch{q6=!1}DKe.exports=q6});var kne=b((rkn,OKe)=>{"use strict";OKe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(var s in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var a=Object.getOwnPropertySymbols(t);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(t,r);if(o.value!==i||o.enumerable!==!0)return!1}return!0}});var LKe=b((nkn,MKe)=>{"use strict";var PKe=typeof Symbol<"u"&&Symbol,sEr=kne();MKe.exports=function(){return typeof PKe!="function"||typeof Symbol!="function"||typeof PKe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:sEr()}});var One=b((ikn,BKe)=>{"use strict";BKe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Pne=b((skn,$Ke)=>{"use strict";var aEr=Rne();$Ke.exports=aEr.getPrototypeOf||null});var qKe=b((akn,UKe)=>{"use strict";var oEr="Function.prototype.bind called on incompatible ",uEr=Object.prototype.toString,cEr=Math.max,lEr="[object Function]",FKe=function(t,r){for(var n=[],i=0;i{"use strict";var pEr=qKe();jKe.exports=Function.prototype.bind||pEr});var j6=b((ukn,HKe)=>{"use strict";HKe.exports=Function.prototype.call});var Mne=b((ckn,KKe)=>{"use strict";KKe.exports=Function.prototype.apply});var zKe=b((lkn,VKe)=>{"use strict";VKe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var GKe=b((dkn,QKe)=>{"use strict";var hEr=$N(),mEr=Mne(),gEr=j6(),yEr=zKe();QKe.exports=yEr||hEr.call(gEr,mEr)});var Lne=b((fkn,YKe)=>{"use strict";var _Er=$N(),AEr=Fg(),vEr=j6(),bEr=GKe();YKe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new AEr("a function is required");return bEr(_Er,vEr,t)}});var tVe=b((pkn,eVe)=>{"use strict";var EEr=Lne(),WKe=Dne(),JKe;try{JKe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var Bne=!!JKe&&WKe&&WKe(Object.prototype,"__proto__"),ZKe=Object,XKe=ZKe.getPrototypeOf;eVe.exports=Bne&&typeof Bne.get=="function"?EEr([Bne.get]):typeof XKe=="function"?function(t){return XKe(t==null?t:ZKe(t))}:!1});var aVe=b((hkn,sVe)=>{"use strict";var rVe=One(),nVe=Pne(),iVe=tVe();sVe.exports=rVe?function(t){return rVe(t)}:nVe?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return nVe(t)}:iVe?function(t){return iVe(t)}:null});var H6=b((mkn,oVe)=>{"use strict";var SEr=Function.prototype.call,wEr=Object.prototype.hasOwnProperty,IEr=$N();oVe.exports=IEr.call(SEr,wEr)});var jN=b((gkn,pVe)=>{"use strict";var hr,xEr=Rne(),CEr=eKe(),TEr=rKe(),NEr=iKe(),REr=aKe(),LS=uKe(),MS=Fg(),DEr=dKe(),kEr=pKe(),OEr=mKe(),PEr=yKe(),MEr=AKe(),LEr=bKe(),BEr=SKe(),$Er=CKe(),dVe=Function,$ne=function(e){try{return dVe('"use strict"; return ('+e+").constructor;")()}catch{}},FN=Dne(),FEr=kKe(),Fne=function(){throw new MS},UEr=FN?function(){try{return arguments.callee,Fne}catch{try{return FN(arguments,"callee").get}catch{return Fne}}}():Fne,OS=LKe()(),Qs=aVe(),qEr=Pne(),jEr=One(),fVe=Mne(),UN=j6(),PS={},HEr=typeof Uint8Array>"u"||!Qs?hr:Qs(Uint8Array),JA={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?hr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?hr:ArrayBuffer,"%ArrayIteratorPrototype%":OS&&Qs?Qs([][Symbol.iterator]()):hr,"%AsyncFromSyncIteratorPrototype%":hr,"%AsyncFunction%":PS,"%AsyncGenerator%":PS,"%AsyncGeneratorFunction%":PS,"%AsyncIteratorPrototype%":PS,"%Atomics%":typeof Atomics>"u"?hr:Atomics,"%BigInt%":typeof BigInt>"u"?hr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?hr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?hr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?hr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":CEr,"%eval%":eval,"%EvalError%":TEr,"%Float16Array%":typeof Float16Array>"u"?hr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?hr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?hr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?hr:FinalizationRegistry,"%Function%":dVe,"%GeneratorFunction%":PS,"%Int8Array%":typeof Int8Array>"u"?hr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?hr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?hr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":OS&&Qs?Qs(Qs([][Symbol.iterator]())):hr,"%JSON%":typeof JSON=="object"?JSON:hr,"%Map%":typeof Map>"u"?hr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!OS||!Qs?hr:Qs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":xEr,"%Object.getOwnPropertyDescriptor%":FN,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?hr:Promise,"%Proxy%":typeof Proxy>"u"?hr:Proxy,"%RangeError%":NEr,"%ReferenceError%":REr,"%Reflect%":typeof Reflect>"u"?hr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?hr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!OS||!Qs?hr:Qs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?hr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":OS&&Qs?Qs(""[Symbol.iterator]()):hr,"%Symbol%":OS?Symbol:hr,"%SyntaxError%":LS,"%ThrowTypeError%":UEr,"%TypedArray%":HEr,"%TypeError%":MS,"%Uint8Array%":typeof Uint8Array>"u"?hr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?hr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?hr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?hr:Uint32Array,"%URIError%":DEr,"%WeakMap%":typeof WeakMap>"u"?hr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?hr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?hr:WeakSet,"%Function.prototype.call%":UN,"%Function.prototype.apply%":fVe,"%Object.defineProperty%":FEr,"%Object.getPrototypeOf%":qEr,"%Math.abs%":kEr,"%Math.floor%":OEr,"%Math.max%":PEr,"%Math.min%":MEr,"%Math.pow%":LEr,"%Math.round%":BEr,"%Math.sign%":$Er,"%Reflect.getPrototypeOf%":jEr};if(Qs)try{null.error}catch(e){uVe=Qs(Qs(e)),JA["%Error.prototype%"]=uVe}var uVe,KEr=function e(t){var r;if(t==="%AsyncFunction%")r=$ne("async function () {}");else if(t==="%GeneratorFunction%")r=$ne("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=$ne("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&Qs&&(r=Qs(i.prototype))}return JA[t]=r,r},cVe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},qN=$N(),K6=H6(),VEr=qN.call(UN,Array.prototype.concat),zEr=qN.call(fVe,Array.prototype.splice),lVe=qN.call(UN,String.prototype.replace),V6=qN.call(UN,String.prototype.slice),QEr=qN.call(UN,RegExp.prototype.exec),GEr=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,YEr=/\\(\\)?/g,WEr=function(t){var r=V6(t,0,1),n=V6(t,-1);if(r==="%"&&n!=="%")throw new LS("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new LS("invalid intrinsic syntax, expected opening `%`");var i=[];return lVe(t,GEr,function(s,a,o,u){i[i.length]=o?lVe(u,YEr,"$1"):a||s}),i},XEr=function(t,r){var n=t,i;if(K6(cVe,n)&&(i=cVe[n],n="%"+i[0]+"%"),K6(JA,n)){var s=JA[n];if(s===PS&&(s=KEr(n)),typeof s>"u"&&!r)throw new MS("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:s}}throw new LS("intrinsic "+t+" does not exist!")};pVe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new MS("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new MS('"allowMissing" argument must be a boolean');if(QEr(/^%?[^%]*%?$/,t)===null)throw new LS("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=WEr(t),i=n.length>0?n[0]:"",s=XEr("%"+i+"%",r),a=s.name,o=s.value,u=!1,c=s.alias;c&&(i=c[0],zEr(n,VEr([0,1],c)));for(var l=1,d=!0;l=n.length){var m=FN(o,f);d=!!m,d&&"get"in m&&!("originalValue"in m.get)?o=m.get:o=o[f]}else d=K6(o,f),o=o[f];d&&!u&&(JA[a]=o)}}return o}});var mVe=b((ykn,hVe)=>{"use strict";var JEr=kne();hVe.exports=function(){return JEr()&&!!Symbol.toStringTag}});var _Ve=b((_kn,yVe)=>{"use strict";var ZEr=jN(),gVe=ZEr("%Object.defineProperty%",!0),e1r=mVe()(),t1r=H6(),r1r=Fg(),z6=e1r?Symbol.toStringTag:null;yVe.exports=function(t,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,i=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof i<"u"&&typeof i!="boolean")throw new r1r("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");z6&&(n||!t1r(t,z6))&&(gVe?gVe(t,z6,{configurable:!i,enumerable:!1,value:r,writable:!1}):t[z6]=r)}});var vVe=b((Akn,AVe)=>{"use strict";AVe.exports=function(e,t){return Object.keys(t).forEach(function(r){e[r]=e[r]||t[r]}),e}});var Kne=b((vkn,bVe)=>{"use strict";var Hne=THe(),n1r=require("util"),Une=require("path"),i1r=require("http"),s1r=require("https"),a1r=require("url").parse,o1r=require("fs"),u1r=require("stream").Stream,c1r=require("crypto"),qne=PHe(),l1r=XHe(),d1r=_Ve(),Ug=H6(),jne=vVe();function Fr(e){if(!(this instanceof Fr))return new Fr(e);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],Hne.call(this),e=e||{};for(var t in e)this[t]=e[t]}n1r.inherits(Fr,Hne);Fr.LINE_BREAK=`\r -`;Fr.DEFAULT_CONTENT_TYPE="application/octet-stream";Fr.prototype.append=function(e,t,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=Hne.prototype.append.bind(this);if((typeof t=="number"||t==null)&&(t=String(t)),Array.isArray(t)){this._error(new Error("Arrays are not supported."));return}var i=this._multiPartHeader(e,t,r),s=this._multiPartFooter();n(i),n(t),n(s),this._trackLength(i,t,r)};Fr.prototype._trackLength=function(e,t,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(t)?n=t.length:typeof t=="string"&&(n=Buffer.byteLength(t)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(e)+Fr.LINE_BREAK.length,!(!t||!t.path&&!(t.readable&&Ug(t,"httpVersion"))&&!(t instanceof u1r))&&(r.knownLength||this._valuesToMeasure.push(t))};Fr.prototype._lengthRetriever=function(e,t){Ug(e,"fd")?e.end!=null&&e.end!=1/0&&e.start!=null?t(null,e.end+1-(e.start?e.start:0)):o1r.stat(e.path,function(r,n){if(r){t(r);return}var i=n.size-(e.start?e.start:0);t(null,i)}):Ug(e,"httpVersion")?t(null,Number(e.headers["content-length"])):Ug(e,"httpModule")?(e.on("response",function(r){e.pause(),t(null,Number(r.headers["content-length"]))}),e.resume()):t("Unknown stream")};Fr.prototype._multiPartHeader=function(e,t,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(t,r),i=this._getContentType(t,r),s="",a={"Content-Disposition":["form-data",'name="'+e+'"'].concat(n||[]),"Content-Type":[].concat(i||[])};typeof r.header=="object"&&jne(a,r.header);var o;for(var u in a)if(Ug(a,u)){if(o=a[u],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(s+=u+": "+o.join("; ")+Fr.LINE_BREAK)}return"--"+this.getBoundary()+Fr.LINE_BREAK+s+Fr.LINE_BREAK};Fr.prototype._getContentDisposition=function(e,t){var r;if(typeof t.filepath=="string"?r=Une.normalize(t.filepath).replace(/\\/g,"/"):t.filename||e&&(e.name||e.path)?r=Une.basename(t.filename||e&&(e.name||e.path)):e&&e.readable&&Ug(e,"httpVersion")&&(r=Une.basename(e.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Fr.prototype._getContentType=function(e,t){var r=t.contentType;return!r&&e&&e.name&&(r=qne.lookup(e.name)),!r&&e&&e.path&&(r=qne.lookup(e.path)),!r&&e&&e.readable&&Ug(e,"httpVersion")&&(r=e.headers["content-type"]),!r&&(t.filepath||t.filename)&&(r=qne.lookup(t.filepath||t.filename)),!r&&e&&typeof e=="object"&&(r=Fr.DEFAULT_CONTENT_TYPE),r};Fr.prototype._multiPartFooter=function(){return function(e){var t=Fr.LINE_BREAK,r=this._streams.length===0;r&&(t+=this._lastBoundary()),e(t)}.bind(this)};Fr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Fr.LINE_BREAK};Fr.prototype.getHeaders=function(e){var t,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(t in e)Ug(e,t)&&(r[t.toLowerCase()]=e[t]);return r};Fr.prototype.setBoundary=function(e){if(typeof e!="string")throw new TypeError("FormData boundary must be a string");this._boundary=e};Fr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Fr.prototype.getBuffer=function(){for(var e=new Buffer.alloc(0),t=this.getBoundary(),r=0,n=this._streams.length;r{EVe=Se(Kne(),1),Q6=EVe.default});function zne(e){return me.isPlainObject(e)||me.isArray(e)}function wVe(e){return me.endsWith(e,"[]")?e.slice(0,-2):e}function SVe(e,t,r){return e?e.concat(t).map(function(i,s){return i=wVe(i),!r&&s?"["+i+"]":i}).join(r?".":""):t}function f1r(e){return me.isArray(e)&&!e.some(zne)}function h1r(e,t,r){if(!me.isObject(e))throw new TypeError("target must be an object");t=t||new(Q6||FormData),r=me.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,y){return!me.isUndefined(y[m])});let n=r.metaTokens,i=r.visitor||l,s=r.dots,a=r.indexes,u=(r.Blob||typeof Blob<"u"&&Blob)&&me.isSpecCompliantForm(t);if(!me.isFunction(i))throw new TypeError("visitor must be a function");function c(h){if(h===null)return"";if(me.isDate(h))return h.toISOString();if(!u&&me.isBlob(h))throw new nt("Blob is not supported. Use a Buffer instead.");return me.isArrayBuffer(h)||me.isTypedArray(h)?u&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function l(h,m,y){let g=h;if(h&&!y&&typeof h=="object"){if(me.endsWith(m,"{}"))m=n?m:m.slice(0,-2),h=JSON.stringify(h);else if(me.isArray(h)&&f1r(h)||(me.isFileList(h)||me.endsWith(m,"[]"))&&(g=me.toArray(h)))return m=wVe(m),g.forEach(function(A,_){!(me.isUndefined(A)||A===null)&&t.append(a===!0?SVe([m],_,s):a===null?m:m+"[]",c(A))}),!1}return zne(h)?!0:(t.append(SVe(y,m,s),c(h)),!1)}let d=[],f=Object.assign(p1r,{defaultVisitor:l,convertValue:c,isVisitable:zne});function p(h,m){if(!me.isUndefined(h)){if(d.indexOf(h)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(h),me.forEach(h,function(g,v){(!(me.isUndefined(g)||g===null)&&i.call(t,g,me.isString(v)?v.trim():v,m,f))===!0&&p(g,m?m.concat(v):[v])}),d.pop()}}if(!me.isObject(e))throw new TypeError("data must be an object");return p(e),t}var p1r,qg,HN=ve(()=>{"use strict";Ai();Nd();Vne();p1r=me.toFlatObject(me,{},null,function(t){return/^is[A-Z]/.test(t)});qg=h1r});function IVe(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function xVe(e,t){this._pairs=[],e&&qg(e,this,t)}var CVe,TVe,NVe=ve(()=>{"use strict";HN();CVe=xVe.prototype;CVe.append=function(t,r){this._pairs.push([t,r])};CVe.toString=function(t){let r=t?function(n){return t.call(this,n,IVe)}:IVe;return this._pairs.map(function(i){return r(i[0])+"="+r(i[1])},"").join("&")};TVe=xVe});function m1r(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function ZA(e,t,r){if(!t)return e;let n=r&&r.encode||m1r,i=r&&r.serialize,s;if(i?s=i(t,r):s=me.isURLSearchParams(t)?t.toString():new TVe(t,r).toString(n),s){let a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+s}return e}var G6=ve(()=>{"use strict";Ai();NVe()});var Qne,Gne,RVe=ve(()=>{"use strict";Ai();Qne=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){me.forEach(this.handlers,function(n){n!==null&&t(n)})}},Gne=Qne});var BS,Y6=ve(()=>{"use strict";BS={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}});var DVe,kVe,OVe=ve(()=>{"use strict";DVe=Se(require("url"),1),kVe=DVe.default.URLSearchParams});var PVe,MVe=ve(()=>{OVe();Vne();PVe={isNode:!0,classes:{URLSearchParams:kVe,FormData:Q6,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]}});var Yne={};ys(Yne,{hasBrowserEnv:()=>LVe,hasStandardBrowserEnv:()=>g1r,hasStandardBrowserWebWorkerEnv:()=>y1r});var LVe,g1r,y1r,BVe=ve(()=>{LVe=typeof window<"u"&&typeof document<"u",g1r=(e=>LVe&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),y1r=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function"});var ks,jg=ve(()=>{MVe();BVe();ks={...Yne,...PVe}});function Wne(e,t){return qg(e,new ks.classes.URLSearchParams,Object.assign({visitor:function(r,n,i,s){return ks.isNode&&me.isBuffer(r)?(this.append(n,r.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)}},t))}var $Ve=ve(()=>{"use strict";Ai();HN();jg()});function _1r(e){return me.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function A1r(e){let t={},r=Object.keys(e),n,i=r.length,s;for(n=0;n=r.length;return a=!a&&me.isArray(i)?i.length:a,u?(me.hasOwnProp(i,a)?i[a]=[i[a],n]:i[a]=n,!o):((!i[a]||!me.isObject(i[a]))&&(i[a]=[]),t(r,n,i[a],s)&&me.isArray(i[a])&&(i[a]=A1r(i[a])),!o)}if(me.isFormData(e)&&me.isFunction(e.entries)){let r={};return me.forEachEntry(e,(n,i)=>{t(_1r(n),i,r,0)}),r}return null}var W6,Xne=ve(()=>{"use strict";Ai();W6=v1r});function b1r(e,t,r){if(me.isString(e))try{return(t||JSON.parse)(e),me.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var Jne,$S,X6=ve(()=>{"use strict";Ai();Nd();Y6();HN();$Ve();jg();Xne();Jne={transitional:BS,adapter:["xhr","http"],transformRequest:[function(t,r){let n=r.getContentType()||"",i=n.indexOf("application/json")>-1,s=me.isObject(t);if(s&&me.isHTMLForm(t)&&(t=new FormData(t)),me.isFormData(t))return i?JSON.stringify(W6(t)):t;if(me.isArrayBuffer(t)||me.isBuffer(t)||me.isStream(t)||me.isFile(t)||me.isBlob(t))return t;if(me.isArrayBufferView(t))return t.buffer;if(me.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let o;if(s){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Wne(t,this.formSerializer).toString();if((o=me.isFileList(t))||n.indexOf("multipart/form-data")>-1){let u=this.env&&this.env.FormData;return qg(o?{"files[]":t}:t,u&&new u,this.formSerializer)}}return s||i?(r.setContentType("application/json",!1),b1r(t)):t}],transformResponse:[function(t){let r=this.transitional||Jne.transitional,n=r&&r.forcedJSONParsing,i=this.responseType==="json";if(t&&me.isString(t)&&(n&&!this.responseType||i)){let a=!(r&&r.silentJSONParsing)&&i;try{return JSON.parse(t)}catch(o){if(a)throw o.name==="SyntaxError"?nt.from(o,nt.ERR_BAD_RESPONSE,this,null,this.response):o}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ks.classes.FormData,Blob:ks.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};me.forEach(["delete","get","head","post","put","patch"],e=>{Jne.headers[e]={}});$S=Jne});var E1r,FVe,UVe=ve(()=>{"use strict";Ai();E1r=me.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),FVe=e=>{let t={},r,n,i;return e&&e.split(` -`).forEach(function(a){i=a.indexOf(":"),r=a.substring(0,i).trim().toLowerCase(),n=a.substring(i+1).trim(),!(!r||t[r]&&E1r[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t}});function KN(e){return e&&String(e).trim().toLowerCase()}function J6(e){return e===!1||e==null?e:me.isArray(e)?e.map(J6):String(e)}function S1r(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}function Zne(e,t,r,n,i){if(me.isFunction(n))return n.call(this,t,r);if(i&&(t=r),!!me.isString(t)){if(me.isString(n))return t.indexOf(n)!==-1;if(me.isRegExp(n))return n.test(t)}}function I1r(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function x1r(e,t){let r=me.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(i,s,a){return this[n].call(this,t,i,s,a)},configurable:!0})})}var qVe,w1r,FS,Os,Hg=ve(()=>{"use strict";Ai();UVe();qVe=Symbol("internals");w1r=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());FS=class{constructor(t){t&&this.set(t)}set(t,r,n){let i=this;function s(o,u,c){let l=KN(u);if(!l)throw new Error("header name must be a non-empty string");let d=me.findKey(i,l);(!d||i[d]===void 0||c===!0||c===void 0&&i[d]!==!1)&&(i[d||u]=J6(o))}let a=(o,u)=>me.forEach(o,(c,l)=>s(c,l,u));return me.isPlainObject(t)||t instanceof this.constructor?a(t,r):me.isString(t)&&(t=t.trim())&&!w1r(t)?a(FVe(t),r):t!=null&&s(r,t,n),this}get(t,r){if(t=KN(t),t){let n=me.findKey(this,t);if(n){let i=this[n];if(!r)return i;if(r===!0)return S1r(i);if(me.isFunction(r))return r.call(this,i,n);if(me.isRegExp(r))return r.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=KN(t),t){let n=me.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||Zne(this,this[n],n,r)))}return!1}delete(t,r){let n=this,i=!1;function s(a){if(a=KN(a),a){let o=me.findKey(n,a);o&&(!r||Zne(n,n[o],o,r))&&(delete n[o],i=!0)}}return me.isArray(t)?t.forEach(s):s(t),i}clear(t){let r=Object.keys(this),n=r.length,i=!1;for(;n--;){let s=r[n];(!t||Zne(this,this[s],s,t,!0))&&(delete this[s],i=!0)}return i}normalize(t){let r=this,n={};return me.forEach(this,(i,s)=>{let a=me.findKey(n,s);if(a){r[a]=J6(i),delete r[s];return}let o=t?I1r(s):String(s).trim();o!==s&&delete r[s],r[o]=J6(i),n[o]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return me.forEach(this,(n,i)=>{n!=null&&n!==!1&&(r[i]=t&&me.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let n=new this(t);return r.forEach(i=>n.set(i)),n}static accessor(t){let n=(this[qVe]=this[qVe]={accessors:{}}).accessors,i=this.prototype;function s(a){let o=KN(a);n[o]||(x1r(i,a),n[o]=!0)}return me.isArray(t)?t.forEach(s):s(t),this}};FS.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);me.reduceDescriptors(FS.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}});me.freezeMethods(FS);Os=FS});function VN(e,t){let r=this||$S,n=t||r,i=Os.from(n.headers),s=n.data;return me.forEach(e,function(o){s=o.call(r,s,i.normalize(),t?t.status:void 0)}),i.normalize(),s}var jVe=ve(()=>{"use strict";Ai();X6();Hg()});function zN(e){return!!(e&&e.__CANCEL__)}var eie=ve(()=>{"use strict"});function HVe(e,t,r){nt.call(this,e??"canceled",nt.ERR_CANCELED,t,r),this.name="CanceledError"}var Dd,US=ve(()=>{"use strict";Nd();Ai();me.inherits(HVe,nt,{__CANCEL__:!0});Dd=HVe});function Kg(e,t,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new nt("Request failed with status code "+r.status,[nt.ERR_BAD_REQUEST,nt.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var tie=ve(()=>{"use strict";Nd()});function rie(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}var KVe=ve(()=>{"use strict"});function nie(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}var VVe=ve(()=>{"use strict"});function ev(e,t){return e&&!rie(t)?nie(e,t):t}var Z6=ve(()=>{"use strict";KVe();VVe()});var QVe=b(zVe=>{"use strict";var C1r=require("url").parse,T1r={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},N1r=String.prototype.endsWith||function(e){return e.length<=this.length&&this.indexOf(e,this.length-e.length)!==-1};function R1r(e){var t=typeof e=="string"?C1r(e):e||{},r=t.protocol,n=t.host,i=t.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),i=parseInt(i)||T1r[r]||0,!D1r(n,i)))return"";var s=qS("npm_config_"+r+"_proxy")||qS(r+"_proxy")||qS("npm_config_proxy")||qS("all_proxy");return s&&s.indexOf("://")===-1&&(s=r+"://"+s),s}function D1r(e,t){var r=(qS("npm_config_no_proxy")||qS("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var i=n.match(/^(.+):(\d+)$/),s=i?i[1]:n,a=i?parseInt(i[2]):0;return a&&a!==t?!0:/^[.*]/.test(s)?(s.charAt(0)==="*"&&(s=s.slice(1)),!N1r.call(e,s)):e!==s}):!0}function qS(e){return process.env[e.toLowerCase()]||process.env[e.toUpperCase()]||""}zVe.getProxyForUrl=R1r});var YVe=b((bOn,GVe)=>{var jS=1e3,HS=jS*60,KS=HS*60,tv=KS*24,k1r=tv*7,O1r=tv*365.25;GVe.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return P1r(e);if(r==="number"&&isFinite(e))return t.long?L1r(e):M1r(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function P1r(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*O1r;case"weeks":case"week":case"w":return r*k1r;case"days":case"day":case"d":return r*tv;case"hours":case"hour":case"hrs":case"hr":case"h":return r*KS;case"minutes":case"minute":case"mins":case"min":case"m":return r*HS;case"seconds":case"second":case"secs":case"sec":case"s":return r*jS;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function M1r(e){var t=Math.abs(e);return t>=tv?Math.round(e/tv)+"d":t>=KS?Math.round(e/KS)+"h":t>=HS?Math.round(e/HS)+"m":t>=jS?Math.round(e/jS)+"s":e+"ms"}function L1r(e){var t=Math.abs(e);return t>=tv?eF(e,t,tv,"day"):t>=KS?eF(e,t,KS,"hour"):t>=HS?eF(e,t,HS,"minute"):t>=jS?eF(e,t,jS,"second"):e+" ms"}function eF(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var iie=b((EOn,WVe)=>{function B1r(e){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=i,r.enabled=o,r.humanize=YVe(),r.destroy=c,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let d=0;for(let f=0;f{if(S==="%%")return"%";_++;let I=r.formatters[C];if(typeof I=="function"){let N=y[_];S=I.call(g,N),y.splice(_,1),_--}return S}),r.formatArgs.call(g,y),(g.log||r.log).apply(g,y)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,h=r.enabled(l)),h),set:y=>{f=y}}),typeof r.init=="function"&&r.init(m),m}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function i(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function s(l,d){let f=0,p=0,h=-1,m=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(s(l,d))return!1;for(let d of r.names)if(s(l,d))return!0;return!1}function u(l){return l instanceof Error?l.stack||l.message:l}function c(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}WVe.exports=B1r});var XVe=b((Lu,tF)=>{Lu.formatArgs=F1r;Lu.save=U1r;Lu.load=q1r;Lu.useColors=$1r;Lu.storage=j1r();Lu.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Lu.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function $1r(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function F1r(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+tF.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}Lu.log=console.debug||console.log||(()=>{});function U1r(e){try{e?Lu.storage.setItem("debug",e):Lu.storage.removeItem("debug")}catch{}}function q1r(){let e;try{e=Lu.storage.getItem("debug")||Lu.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function j1r(){try{return localStorage}catch{}}tF.exports=iie()(Lu);var{formatters:H1r}=tF.exports;H1r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var ZVe=b((SOn,JVe)=>{"use strict";JVe.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),i=t.indexOf("--");return n!==-1&&(i===-1||n{"use strict";var K1r=require("os"),e7e=require("tty"),Al=ZVe(),{env:Gs}=process,Vg;Al("no-color")||Al("no-colors")||Al("color=false")||Al("color=never")?Vg=0:(Al("color")||Al("colors")||Al("color=true")||Al("color=always"))&&(Vg=1);"FORCE_COLOR"in Gs&&(Gs.FORCE_COLOR==="true"?Vg=1:Gs.FORCE_COLOR==="false"?Vg=0:Vg=Gs.FORCE_COLOR.length===0?1:Math.min(parseInt(Gs.FORCE_COLOR,10),3));function sie(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function aie(e,t){if(Vg===0)return 0;if(Al("color=16m")||Al("color=full")||Al("color=truecolor"))return 3;if(Al("color=256"))return 2;if(e&&!t&&Vg===void 0)return 0;let r=Vg||0;if(Gs.TERM==="dumb")return r;if(process.platform==="win32"){let n=K1r.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in Gs)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in Gs)||Gs.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in Gs)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Gs.TEAMCITY_VERSION)?1:0;if(Gs.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Gs){let n=parseInt((Gs.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Gs.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Gs.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Gs.TERM)||"COLORTERM"in Gs?1:r}function V1r(e){let t=aie(e,e&&e.isTTY);return sie(t)}t7e.exports={supportsColor:V1r,stdout:sie(aie(!0,e7e.isatty(1))),stderr:sie(aie(!0,e7e.isatty(2)))}});var n7e=b((Ys,nF)=>{var z1r=require("tty"),rF=require("util");Ys.init=Z1r;Ys.log=W1r;Ys.formatArgs=G1r;Ys.save=X1r;Ys.load=J1r;Ys.useColors=Q1r;Ys.destroy=rF.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ys.colors=[6,2,3,4,5,1];try{let e=oie();e&&(e.stderr||e).level>=2&&(Ys.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ys.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(i,s)=>s.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function Q1r(){return"colors"in Ys.inspectOpts?!!Ys.inspectOpts.colors:z1r.isatty(process.stderr.fd)}function G1r(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,i="\x1B[3"+(n<8?n:"8;5;"+n),s=` ${i};1m${t} \x1B[0m`;e[0]=s+e[0].split(` +${X}`),Y.destroy(q)}function ee(q,Y){q.headers["accept-version"]!==void 0&&(q.headers[cBr]=q.headers["accept-version"],q.headers["accept-version"]=void 0),h.router.lookup(q,Y)}function z(q,Y,X){if(o){let ne=JXe(w.server,Y),se=WXe(w,c,Y,ne),J=new A$(ne,null,Y,null,se,w),ce=new UD(X,J,se);return i===!1&&se.info({req:J},"incoming request"),o(new xBr(q),J,ce)}let ae=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;X.writeHead(400,{"Content-Type":"application/json","Content-Length":ae.length}),X.end(ae)}function oe(q,Y,X){if(q!==!1)return function(ne){if(ne){if(o){let J=JXe(w.server,Y),ce=WXe(w,c,Y,J),ge=new A$(J,null,Y,null,ce,w),be=new UD(X,ge,ce);return i===!1&&ce.info({req:ge},"incoming request"),o(new CBr,ge,be)}let se='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';X.writeHead(500,{"Content-Type":"application/json","Content-Length":se.length}),X.end(se)}}}function le(q,Y){return D('Cannot call "setNotFoundHandler"!'),h.setNotFoundHandler.call(this,q,Y,x,f.routeHandler),this}function te(q){return D('Cannot call "setValidatorCompiler"!'),this[OA].setValidatorCompiler(q),this}function Q(q){return D('Cannot call "setSchemaErrorFormatter"!'),nJe(q),this[Nue]=q.bind(this),this}function Z(q){return D('Cannot call "setSerializerCompiler"!'),this[OA].setSerializerCompiler(q),this}function de(q){D('Cannot call "setSchemaController"!');let Y=this[OA],X=YXe.buildSchemaController(Y,Object.assign({},Y.opts,q));return this[OA]=X,this.getSchema=X.getSchema.bind(X),this.getSchemas=X.getSchemas.bind(X),this}function B(q){return D('Cannot call "setReplySerializer"!'),this[zXe]=q,this}function k(q){return D('Cannot call "setErrorHandler"!'),this[_$]=rJe(this[_$],q.bind(this)),this}function W(q){return D('Cannot call "setChildLoggerFactory"!'),this[Due]=q,this}function P(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?Lue.concat(q.includeMeta):Lue:q.includeMeta,f.printRoutes(q)}function H(q,{rewriteUrl:Y,logger:X}){let ae;return function(se,J){if(ae===void 0&&(ae=q.isAsyncConstraint()),Y){se.originalUrl=se.url;let ce=Y.call(I,se);if(typeof ce=="string")se.url=ce;else{let ge=new UBr(se.url,typeof ce);se.destroy(ge)}}q.routing(se,J,oe(ae,se,J))}}function j(q){return D('Cannot call "setGenReqId"!'),this[Pue]=ZXe(this[wue].requestIdHeader,q),this}}E$.errorCodes=Wv;function nJe(e){if(typeof e!="function")throw new tJe(typeof e);if(e.constructor.name==="AsyncFunction")throw new tJe("AsyncFunction")}y$.exports=E$;y$.exports.fastify=E$;y$.exports.default=E$});function FD(e,t){return function(){return e.apply(t,arguments)}}var Mue=ie(()=>{"use strict"});function qBr(e){return e!==null&&!$D(e)&&e.constructor!==null&&!$D(e.constructor)&&Nd(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}function HBr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&lJe(e.buffer),t}function qD(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,s;if(typeof e!="object"&&(e=[e]),ZI(e))for(n=0,s=e.length;n0;)if(s=r[n],t===s.toLowerCase())return s;return null}function Bue(){let{caseless:e}=pJe(this)&&this||{},t={},r=(n,s)=>{let i=e&&fJe(t,s)||s;S$(t[i])&&S$(n)?t[i]=Bue(t[i],n):S$(n)?t[i]=Bue({},n):ZI(n)?t[i]=n.slice():t[i]=n};for(let n=0,s=arguments.length;n{"use strict";Mue();({toString:$Br}=Object.prototype),{getPrototypeOf:Uue}=Object,T$=(e=>t=>{let r=$Br.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Ch=e=>(e=e.toLowerCase(),t=>T$(t)===e),b$=e=>t=>typeof t===e,{isArray:ZI}=Array,$D=b$("undefined");lJe=Ch("ArrayBuffer");VBr=b$("string"),Nd=b$("function"),dJe=b$("number"),I$=e=>e!==null&&typeof e=="object",jBr=e=>e===!0||e===!1,S$=e=>{if(T$(e)!=="object")return!1;let t=Uue(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},KBr=Ch("Date"),GBr=Ch("File"),zBr=Ch("Blob"),YBr=Ch("FileList"),QBr=e=>I$(e)&&Nd(e.pipe),WBr=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Nd(e.append)&&((t=T$(e))==="formdata"||t==="object"&&Nd(e.toString)&&e.toString()==="[object FormData]"))},XBr=Ch("URLSearchParams"),JBr=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");hJe=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,pJe=e=>!$D(e)&&e!==hJe;ZBr=(e,t,r,{allOwnKeys:n}={})=>(qD(t,(s,i)=>{r&&Nd(s)?e[i]=FD(s,r):e[i]=s},{allOwnKeys:n}),e),e3r=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),t3r=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},r3r=(e,t,r,n)=>{let s,i,a,o={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)a=s[i],(!n||n(a,e,t))&&!o[a]&&(t[a]=e[a],o[a]=!0);e=r!==!1&&Uue(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},n3r=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;let n=e.indexOf(t,r);return n!==-1&&n===r},s3r=e=>{if(!e)return null;if(ZI(e))return e;let t=e.length;if(!dJe(t))return null;let r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},i3r=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Uue(Uint8Array)),a3r=(e,t)=>{let n=(e&&e[Symbol.iterator]).call(e),s;for(;(s=n.next())&&!s.done;){let i=s.value;t.call(e,i[0],i[1])}},o3r=(e,t)=>{let r,n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},c3r=Ch("HTMLFormElement"),u3r=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),cJe=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),l3r=Ch("RegExp"),mJe=(e,t)=>{let r=Object.getOwnPropertyDescriptors(e),n={};qD(r,(s,i)=>{let a;(a=t(s,i,e))!==!1&&(n[i]=a||s)}),Object.defineProperties(e,n)},d3r=e=>{mJe(e,(t,r)=>{if(Nd(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=e[r];if(Nd(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},f3r=(e,t)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return ZI(e)?n(e):n(String(e).split(t)),r},h3r=()=>{},p3r=(e,t)=>(e=+e,Number.isFinite(e)?e:t),kue="abcdefghijklmnopqrstuvwxyz",uJe="0123456789",gJe={DIGIT:uJe,ALPHA:kue,ALPHA_DIGIT:kue+kue.toUpperCase()+uJe},m3r=(e=16,t=gJe.ALPHA_DIGIT)=>{let r="",{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r};_3r=e=>{let t=new Array(10),r=(n,s)=>{if(I$(n)){if(t.indexOf(n)>=0)return;if(!("toJSON"in n)){t[s]=n;let i=ZI(n)?[]:{};return qD(n,(a,o)=>{let c=r(a,s+1);!$D(c)&&(i[o]=c)}),t[s]=void 0,i}}return n};return r(e,0)},A3r=Ch("AsyncFunction"),E3r=e=>e&&(I$(e)||Nd(e))&&Nd(e.then)&&Nd(e.catch),Re={isArray:ZI,isArrayBuffer:lJe,isBuffer:qBr,isFormData:WBr,isArrayBufferView:HBr,isString:VBr,isNumber:dJe,isBoolean:jBr,isObject:I$,isPlainObject:S$,isUndefined:$D,isDate:KBr,isFile:GBr,isBlob:zBr,isRegExp:l3r,isFunction:Nd,isStream:QBr,isURLSearchParams:XBr,isTypedArray:i3r,isFileList:YBr,forEach:qD,merge:Bue,extend:ZBr,trim:JBr,stripBOM:e3r,inherits:t3r,toFlatObject:r3r,kindOf:T$,kindOfTest:Ch,endsWith:n3r,toArray:s3r,forEachEntry:a3r,matchAll:o3r,isHTMLForm:c3r,hasOwnProperty:cJe,hasOwnProp:cJe,reduceDescriptors:mJe,freezeMethods:d3r,toObjectSet:f3r,toCamelCase:u3r,noop:h3r,toFiniteNumber:p3r,findKey:fJe,global:hJe,isContextDefined:pJe,ALPHABET:gJe,generateString:m3r,isSpecCompliantForm:g3r,toJSONObject:_3r,isAsyncFn:A3r,isThenable:E3r}});function eR(e,t,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}var _Je,AJe,mt,Kf=ie(()=>{"use strict";ii();Re.inherits(eR,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Re.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});_Je=eR.prototype,AJe={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{AJe[e]={value:e}});Object.defineProperties(eR,AJe);Object.defineProperty(_Je,"isAxiosError",{value:!0});eR.from=(e,t,r,n,s,i)=>{let a=Object.create(_Je);return Re.toFlatObject(e,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),eR.call(a,e.message,t,r,n,s),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};mt=eR});var vJe=S((nYn,yJe)=>{var EJe=require("stream").Stream,y3r=require("util");yJe.exports=Gf;function Gf(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}y3r.inherits(Gf,EJe);Gf.create=function(e,t){var r=new this;t=t||{};for(var n in t)r[n]=t[n];r.source=e;var s=e.emit;return e.emit=function(){return r._handleEmit(arguments),s.apply(e,arguments)},e.on("error",function(){}),r.pauseStream&&e.pause(),r};Object.defineProperty(Gf.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});Gf.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};Gf.prototype.resume=function(){this._released||this.release(),this.source.resume()};Gf.prototype.pause=function(){this.source.pause()};Gf.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(e){this.emit.apply(this,e)}.bind(this)),this._bufferedEvents=[]};Gf.prototype.pipe=function(){var e=EJe.prototype.pipe.apply(this,arguments);return this.resume(),e};Gf.prototype._handleEmit=function(e){if(this._released){this.emit.apply(this,e);return}e[0]==="data"&&(this.dataSize+=e[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(e)};Gf.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var e="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(e))}}});var IJe=S((sYn,bJe)=>{var v3r=require("util"),TJe=require("stream").Stream,SJe=vJe();bJe.exports=Ii;function Ii(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}v3r.inherits(Ii,TJe);Ii.create=function(e){var t=new this;e=e||{};for(var r in e)t[r]=e[r];return t};Ii.isStreamLike=function(e){return typeof e!="function"&&typeof e!="string"&&typeof e!="boolean"&&typeof e!="number"&&!Buffer.isBuffer(e)};Ii.prototype.append=function(e){var t=Ii.isStreamLike(e);if(t){if(!(e instanceof SJe)){var r=SJe.create(e,{maxDataSize:1/0,pauseStream:this.pauseStreams});e.on("data",this._checkDataSize.bind(this)),e=r}this._handleErrors(e),this.pauseStreams&&e.pause()}return this._streams.push(e),this};Ii.prototype.pipe=function(e,t){return TJe.prototype.pipe.call(this,e,t),this.resume(),e};Ii.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};Ii.prototype._realGetNext=function(){var e=this._streams.shift();if(typeof e>"u"){this.end();return}if(typeof e!="function"){this._pipeNext(e);return}var t=e;t(function(r){var n=Ii.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Ii.prototype._pipeNext=function(e){this._currentStream=e;var t=Ii.isStreamLike(e);if(t){e.on("end",this._getNext.bind(this)),e.pipe(this,{end:!1});return}var r=e;this.write(r),this._getNext()};Ii.prototype._handleErrors=function(e){var t=this;e.on("error",function(r){t._emitError(r)})};Ii.prototype.write=function(e){this.emit("data",e)};Ii.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Ii.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};Ii.prototype.end=function(){this._reset(),this.emit("end")};Ii.prototype.destroy=function(){this._reset(),this.emit("close")};Ii.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Ii.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var e="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(e))}};Ii.prototype._updateDataSize=function(){this.dataSize=0;var e=this;this._streams.forEach(function(t){t.dataSize&&(e.dataSize+=t.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};Ii.prototype._emitError=function(e){this._reset(),this.emit("error",e)}});var RJe=S((iYn,S3r)=>{S3r.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var xJe=S((aYn,CJe)=>{CJe.exports=RJe()});var OJe=S(Lu=>{"use strict";var R$=xJe(),T3r=require("path").extname,wJe=/^\s*([^;\s]*)(?:;|\s|$)/,b3r=/^text\//i;Lu.charset=NJe;Lu.charsets={lookup:NJe};Lu.contentType=I3r;Lu.extension=R3r;Lu.extensions=Object.create(null);Lu.lookup=C3r;Lu.types=Object.create(null);x3r(Lu.extensions,Lu.types);function NJe(e){if(!e||typeof e!="string")return!1;var t=wJe.exec(e),r=t&&R$[t[1].toLowerCase()];return r&&r.charset?r.charset:t&&b3r.test(t[1])?"UTF-8":!1}function I3r(e){if(!e||typeof e!="string")return!1;var t=e.indexOf("/")===-1?Lu.lookup(e):e;if(!t)return!1;if(t.indexOf("charset")===-1){var r=Lu.charset(t);r&&(t+="; charset="+r.toLowerCase())}return t}function R3r(e){if(!e||typeof e!="string")return!1;var t=wJe.exec(e),r=t&&Lu.extensions[t[1].toLowerCase()];return!r||!r.length?!1:r[0]}function C3r(e){if(!e||typeof e!="string")return!1;var t=T3r("x."+e).toLowerCase().substr(1);return t&&Lu.types[t]||!1}function x3r(e,t){var r=["nginx","apache",void 0,"iana"];Object.keys(R$).forEach(function(s){var i=R$[s],a=i.extensions;if(!(!a||!a.length)){e[s]=a;for(var o=0;ol||u===l&&t[c].substr(0,12)==="application/"))continue}t[c]=s}}})}});var PJe=S((cYn,DJe)=>{DJe.exports=w3r;function w3r(e){var t=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;t?t(e):setTimeout(e,0)}});var Fue=S((uYn,MJe)=>{var LJe=PJe();MJe.exports=N3r;function N3r(e){var t=!1;return LJe(function(){t=!0}),function(n,s){t?e(n,s):LJe(function(){e(n,s)})}}});var $ue=S((lYn,kJe)=>{kJe.exports=O3r;function O3r(e){Object.keys(e.jobs).forEach(D3r.bind(e)),e.jobs={}}function D3r(e){typeof this.jobs[e]=="function"&&this.jobs[e]()}});var que=S((dYn,UJe)=>{var BJe=Fue(),P3r=$ue();UJe.exports=L3r;function L3r(e,t,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=M3r(t,s,e[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?P3r(r):r.results[s]=a,n(i,r.results))})}function M3r(e,t,r,n){var s;return e.length==2?s=e(r,BJe(n)):s=e(r,t,BJe(n)),s}});var Hue=S((fYn,FJe)=>{FJe.exports=k3r;function k3r(e,t){var r=!Array.isArray(e),n={index:0,keyedList:r||t?Object.keys(e):null,jobs:{},results:r?{}:[],size:r?Object.keys(e).length:e.length};return t&&n.keyedList.sort(r?t:function(s,i){return t(e[s],e[i])}),n}});var Vue=S((hYn,$Je)=>{var B3r=$ue(),U3r=Fue();$Je.exports=F3r;function F3r(e){Object.keys(this.jobs).length&&(this.index=this.size,B3r(this),U3r(e)(null,this.results))}});var HJe=S((pYn,qJe)=>{var $3r=que(),q3r=Hue(),H3r=Vue();qJe.exports=V3r;function V3r(e,t,r){for(var n=q3r(e);n.index<(n.keyedList||e).length;)$3r(e,t,n,function(s,i){if(s){r(s,i);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return H3r.bind(n,r)}});var jue=S((mYn,C$)=>{var VJe=que(),j3r=Hue(),K3r=Vue();C$.exports=G3r;C$.exports.ascending=jJe;C$.exports.descending=z3r;function G3r(e,t,r,n){var s=j3r(e,r);return VJe(e,t,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||e).length){VJe(e,t,s,i);return}n(null,s.results)}),K3r.bind(s,n)}function jJe(e,t){return et?1:0}function z3r(e,t){return-1*jJe(e,t)}});var GJe=S((gYn,KJe)=>{var Y3r=jue();KJe.exports=Q3r;function Q3r(e,t,r){return Y3r(e,t,null,r)}});var YJe=S((_Yn,zJe)=>{zJe.exports={parallel:HJe(),serial:GJe(),serialOrdered:jue()}});var Kue=S((AYn,QJe)=>{"use strict";QJe.exports=Object});var XJe=S((EYn,WJe)=>{"use strict";WJe.exports=Error});var ZJe=S((yYn,JJe)=>{"use strict";JJe.exports=EvalError});var tZe=S((vYn,eZe)=>{"use strict";eZe.exports=RangeError});var nZe=S((SYn,rZe)=>{"use strict";rZe.exports=ReferenceError});var iZe=S((TYn,sZe)=>{"use strict";sZe.exports=SyntaxError});var DA=S((bYn,aZe)=>{"use strict";aZe.exports=TypeError});var cZe=S((IYn,oZe)=>{"use strict";oZe.exports=URIError});var lZe=S((RYn,uZe)=>{"use strict";uZe.exports=Math.abs});var fZe=S((CYn,dZe)=>{"use strict";dZe.exports=Math.floor});var pZe=S((xYn,hZe)=>{"use strict";hZe.exports=Math.max});var gZe=S((wYn,mZe)=>{"use strict";mZe.exports=Math.min});var AZe=S((NYn,_Ze)=>{"use strict";_Ze.exports=Math.pow});var yZe=S((OYn,EZe)=>{"use strict";EZe.exports=Math.round});var SZe=S((DYn,vZe)=>{"use strict";vZe.exports=Number.isNaN||function(t){return t!==t}});var bZe=S((PYn,TZe)=>{"use strict";var W3r=SZe();TZe.exports=function(t){return W3r(t)||t===0?t:t<0?-1:1}});var RZe=S((LYn,IZe)=>{"use strict";IZe.exports=Object.getOwnPropertyDescriptor});var Gue=S((MYn,CZe)=>{"use strict";var x$=RZe();if(x$)try{x$([],"length")}catch{x$=null}CZe.exports=x$});var wZe=S((kYn,xZe)=>{"use strict";var w$=Object.defineProperty||!1;if(w$)try{w$({},"a",{value:1})}catch{w$=!1}xZe.exports=w$});var zue=S((BYn,NZe)=>{"use strict";NZe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var s=42;t[r]=s;for(var i in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var a=Object.getOwnPropertySymbols(t);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(t,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var PZe=S((UYn,DZe)=>{"use strict";var OZe=typeof Symbol<"u"&&Symbol,X3r=zue();DZe.exports=function(){return typeof OZe!="function"||typeof Symbol!="function"||typeof OZe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:X3r()}});var Yue=S((FYn,LZe)=>{"use strict";LZe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Que=S(($Yn,MZe)=>{"use strict";var J3r=Kue();MZe.exports=J3r.getPrototypeOf||null});var UZe=S((qYn,BZe)=>{"use strict";var Z3r="Function.prototype.bind called on incompatible ",eUr=Object.prototype.toString,tUr=Math.max,rUr="[object Function]",kZe=function(t,r){for(var n=[],s=0;s{"use strict";var iUr=UZe();FZe.exports=Function.prototype.bind||iUr});var N$=S((VYn,$Ze)=>{"use strict";$Ze.exports=Function.prototype.call});var Wue=S((jYn,qZe)=>{"use strict";qZe.exports=Function.prototype.apply});var VZe=S((KYn,HZe)=>{"use strict";HZe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var KZe=S((GYn,jZe)=>{"use strict";var aUr=HD(),oUr=Wue(),cUr=N$(),uUr=VZe();jZe.exports=uUr||aUr.call(cUr,oUr)});var Xue=S((zYn,GZe)=>{"use strict";var lUr=HD(),dUr=DA(),fUr=N$(),hUr=KZe();GZe.exports=function(t){if(t.length<1||typeof t[0]!="function")throw new dUr("a function is required");return hUr(lUr,fUr,t)}});var JZe=S((YYn,XZe)=>{"use strict";var pUr=Xue(),zZe=Gue(),QZe;try{QZe=[].__proto__===Array.prototype}catch(e){if(!e||typeof e!="object"||!("code"in e)||e.code!=="ERR_PROTO_ACCESS")throw e}var Jue=!!QZe&&zZe&&zZe(Object.prototype,"__proto__"),WZe=Object,YZe=WZe.getPrototypeOf;XZe.exports=Jue&&typeof Jue.get=="function"?pUr([Jue.get]):typeof YZe=="function"?function(t){return YZe(t==null?t:WZe(t))}:!1});var net=S((QYn,ret)=>{"use strict";var ZZe=Yue(),eet=Que(),tet=JZe();ret.exports=ZZe?function(t){return ZZe(t)}:eet?function(t){if(!t||typeof t!="object"&&typeof t!="function")throw new TypeError("getProto: not an object");return eet(t)}:tet?function(t){return tet(t)}:null});var O$=S((WYn,set)=>{"use strict";var mUr=Function.prototype.call,gUr=Object.prototype.hasOwnProperty,_Ur=HD();set.exports=_Ur.call(mUr,gUr)});var GD=S((XYn,det)=>{"use strict";var zr,AUr=Kue(),EUr=XJe(),yUr=ZJe(),vUr=tZe(),SUr=nZe(),sR=iZe(),nR=DA(),TUr=cZe(),bUr=lZe(),IUr=fZe(),RUr=pZe(),CUr=gZe(),xUr=AZe(),wUr=yZe(),NUr=bZe(),cet=Function,Zue=function(e){try{return cet('"use strict"; return ('+e+").constructor;")()}catch{}},VD=Gue(),OUr=wZe(),ele=function(){throw new nR},DUr=VD?function(){try{return arguments.callee,ele}catch{try{return VD(arguments,"callee").get}catch{return ele}}}():ele,tR=PZe()(),Ba=net(),PUr=Que(),LUr=Yue(),uet=Wue(),jD=N$(),rR={},MUr=typeof Uint8Array>"u"||!Ba?zr:Ba(Uint8Array),Xv={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?zr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?zr:ArrayBuffer,"%ArrayIteratorPrototype%":tR&&Ba?Ba([][Symbol.iterator]()):zr,"%AsyncFromSyncIteratorPrototype%":zr,"%AsyncFunction%":rR,"%AsyncGenerator%":rR,"%AsyncGeneratorFunction%":rR,"%AsyncIteratorPrototype%":rR,"%Atomics%":typeof Atomics>"u"?zr:Atomics,"%BigInt%":typeof BigInt>"u"?zr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?zr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?zr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?zr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":EUr,"%eval%":eval,"%EvalError%":yUr,"%Float16Array%":typeof Float16Array>"u"?zr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?zr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?zr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?zr:FinalizationRegistry,"%Function%":cet,"%GeneratorFunction%":rR,"%Int8Array%":typeof Int8Array>"u"?zr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?zr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?zr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":tR&&Ba?Ba(Ba([][Symbol.iterator]())):zr,"%JSON%":typeof JSON=="object"?JSON:zr,"%Map%":typeof Map>"u"?zr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!tR||!Ba?zr:Ba(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":AUr,"%Object.getOwnPropertyDescriptor%":VD,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?zr:Promise,"%Proxy%":typeof Proxy>"u"?zr:Proxy,"%RangeError%":vUr,"%ReferenceError%":SUr,"%Reflect%":typeof Reflect>"u"?zr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?zr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!tR||!Ba?zr:Ba(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?zr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":tR&&Ba?Ba(""[Symbol.iterator]()):zr,"%Symbol%":tR?Symbol:zr,"%SyntaxError%":sR,"%ThrowTypeError%":DUr,"%TypedArray%":MUr,"%TypeError%":nR,"%Uint8Array%":typeof Uint8Array>"u"?zr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?zr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?zr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?zr:Uint32Array,"%URIError%":TUr,"%WeakMap%":typeof WeakMap>"u"?zr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?zr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?zr:WeakSet,"%Function.prototype.call%":jD,"%Function.prototype.apply%":uet,"%Object.defineProperty%":OUr,"%Object.getPrototypeOf%":PUr,"%Math.abs%":bUr,"%Math.floor%":IUr,"%Math.max%":RUr,"%Math.min%":CUr,"%Math.pow%":xUr,"%Math.round%":wUr,"%Math.sign%":NUr,"%Reflect.getPrototypeOf%":LUr};if(Ba)try{null.error}catch(e){iet=Ba(Ba(e)),Xv["%Error.prototype%"]=iet}var iet,kUr=function e(t){var r;if(t==="%AsyncFunction%")r=Zue("async function () {}");else if(t==="%GeneratorFunction%")r=Zue("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=Zue("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var s=e("%AsyncGenerator%");s&&Ba&&(r=Ba(s.prototype))}return Xv[t]=r,r},aet={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},KD=HD(),D$=O$(),BUr=KD.call(jD,Array.prototype.concat),UUr=KD.call(uet,Array.prototype.splice),oet=KD.call(jD,String.prototype.replace),P$=KD.call(jD,String.prototype.slice),FUr=KD.call(jD,RegExp.prototype.exec),$Ur=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,qUr=/\\(\\)?/g,HUr=function(t){var r=P$(t,0,1),n=P$(t,-1);if(r==="%"&&n!=="%")throw new sR("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new sR("invalid intrinsic syntax, expected opening `%`");var s=[];return oet(t,$Ur,function(i,a,o,c){s[s.length]=o?oet(c,qUr,"$1"):a||i}),s},VUr=function(t,r){var n=t,s;if(D$(aet,n)&&(s=aet[n],n="%"+s[0]+"%"),D$(Xv,n)){var i=Xv[n];if(i===rR&&(i=kUr(n)),typeof i>"u"&&!r)throw new nR("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new sR("intrinsic "+t+" does not exist!")};det.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new nR("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new nR('"allowMissing" argument must be a boolean');if(FUr(/^%?[^%]*%?$/,t)===null)throw new sR("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=HUr(t),s=n.length>0?n[0]:"",i=VUr("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],UUr(n,BUr([0,1],u)));for(var l=1,d=!0;l=n.length){var m=VD(o,f);d=!!m,d&&"get"in m&&!("originalValue"in m.get)?o=m.get:o=o[f]}else d=D$(o,f),o=o[f];d&&!c&&(Xv[a]=o)}}return o}});var het=S((JYn,fet)=>{"use strict";var jUr=zue();fet.exports=function(){return jUr()&&!!Symbol.toStringTag}});var get=S((ZYn,met)=>{"use strict";var KUr=GD(),pet=KUr("%Object.defineProperty%",!0),GUr=het()(),zUr=O$(),YUr=DA(),L$=GUr?Symbol.toStringTag:null;met.exports=function(t,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,s=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof s<"u"&&typeof s!="boolean")throw new YUr("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");L$&&(n||!zUr(t,L$))&&(pet?pet(t,L$,{configurable:!s,enumerable:!1,value:r,writable:!1}):t[L$]=r)}});var Aet=S((eQn,_et)=>{"use strict";_et.exports=function(e,t){return Object.keys(t).forEach(function(r){e[r]=e[r]||t[r]}),e}});var ile=S((tQn,Eet)=>{"use strict";var sle=IJe(),QUr=require("util"),tle=require("path"),WUr=require("http"),XUr=require("https"),JUr=require("url").parse,ZUr=require("fs"),eFr=require("stream").Stream,tFr=require("crypto"),rle=OJe(),rFr=YJe(),nFr=get(),PA=O$(),nle=Aet();function Tn(e){if(!(this instanceof Tn))return new Tn(e);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],sle.call(this),e=e||{};for(var t in e)this[t]=e[t]}QUr.inherits(Tn,sle);Tn.LINE_BREAK=`\r +`;Tn.DEFAULT_CONTENT_TYPE="application/octet-stream";Tn.prototype.append=function(e,t,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=sle.prototype.append.bind(this);if((typeof t=="number"||t==null)&&(t=String(t)),Array.isArray(t)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(e,t,r),i=this._multiPartFooter();n(s),n(t),n(i),this._trackLength(s,t,r)};Tn.prototype._trackLength=function(e,t,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(t)?n=t.length:typeof t=="string"&&(n=Buffer.byteLength(t)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(e)+Tn.LINE_BREAK.length,!(!t||!t.path&&!(t.readable&&PA(t,"httpVersion"))&&!(t instanceof eFr))&&(r.knownLength||this._valuesToMeasure.push(t))};Tn.prototype._lengthRetriever=function(e,t){PA(e,"fd")?e.end!=null&&e.end!=1/0&&e.start!=null?t(null,e.end+1-(e.start?e.start:0)):ZUr.stat(e.path,function(r,n){if(r){t(r);return}var s=n.size-(e.start?e.start:0);t(null,s)}):PA(e,"httpVersion")?t(null,Number(e.headers["content-length"])):PA(e,"httpModule")?(e.on("response",function(r){e.pause(),t(null,Number(r.headers["content-length"]))}),e.resume()):t("Unknown stream")};Tn.prototype._multiPartHeader=function(e,t,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(t,r),s=this._getContentType(t,r),i="",a={"Content-Disposition":["form-data",'name="'+e+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&nle(a,r.header);var o;for(var c in a)if(PA(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+Tn.LINE_BREAK)}return"--"+this.getBoundary()+Tn.LINE_BREAK+i+Tn.LINE_BREAK};Tn.prototype._getContentDisposition=function(e,t){var r;if(typeof t.filepath=="string"?r=tle.normalize(t.filepath).replace(/\\/g,"/"):t.filename||e&&(e.name||e.path)?r=tle.basename(t.filename||e&&(e.name||e.path)):e&&e.readable&&PA(e,"httpVersion")&&(r=tle.basename(e.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Tn.prototype._getContentType=function(e,t){var r=t.contentType;return!r&&e&&e.name&&(r=rle.lookup(e.name)),!r&&e&&e.path&&(r=rle.lookup(e.path)),!r&&e&&e.readable&&PA(e,"httpVersion")&&(r=e.headers["content-type"]),!r&&(t.filepath||t.filename)&&(r=rle.lookup(t.filepath||t.filename)),!r&&e&&typeof e=="object"&&(r=Tn.DEFAULT_CONTENT_TYPE),r};Tn.prototype._multiPartFooter=function(){return function(e){var t=Tn.LINE_BREAK,r=this._streams.length===0;r&&(t+=this._lastBoundary()),e(t)}.bind(this)};Tn.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Tn.LINE_BREAK};Tn.prototype.getHeaders=function(e){var t,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(t in e)PA(e,t)&&(r[t.toLowerCase()]=e[t]);return r};Tn.prototype.setBoundary=function(e){if(typeof e!="string")throw new TypeError("FormData boundary must be a string");this._boundary=e};Tn.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Tn.prototype.getBuffer=function(){for(var e=new Buffer.alloc(0),t=this.getBoundary(),r=0,n=this._streams.length;r{yet=Ne(ile(),1),M$=yet.default});function ole(e){return Re.isPlainObject(e)||Re.isArray(e)}function Tet(e){return Re.endsWith(e,"[]")?e.slice(0,-2):e}function vet(e,t,r){return e?e.concat(t).map(function(s,i){return s=Tet(s),!r&&i?"["+s+"]":s}).join(r?".":""):t}function sFr(e){return Re.isArray(e)&&!e.some(ole)}function aFr(e,t,r){if(!Re.isObject(e))throw new TypeError("target must be an object");t=t||new(M$||FormData),r=Re.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,g){return!Re.isUndefined(g[m])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&Re.isSpecCompliantForm(t);if(!Re.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(Re.isDate(p))return p.toISOString();if(!c&&Re.isBlob(p))throw new mt("Blob is not supported. Use a Buffer instead.");return Re.isArrayBuffer(p)||Re.isTypedArray(p)?c&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function l(p,m,g){let _=p;if(p&&!g&&typeof p=="object"){if(Re.endsWith(m,"{}"))m=n?m:m.slice(0,-2),p=JSON.stringify(p);else if(Re.isArray(p)&&sFr(p)||(Re.isFileList(p)||Re.endsWith(m,"[]"))&&(_=Re.toArray(p)))return m=Tet(m),_.forEach(function(A,E){!(Re.isUndefined(A)||A===null)&&t.append(a===!0?vet([m],E,i):a===null?m:m+"[]",u(A))}),!1}return ole(p)?!0:(t.append(vet(g,m,i),u(p)),!1)}let d=[],f=Object.assign(iFr,{defaultVisitor:l,convertValue:u,isVisitable:ole});function h(p,m){if(!Re.isUndefined(p)){if(d.indexOf(p)!==-1)throw Error("Circular reference detected in "+m.join("."));d.push(p),Re.forEach(p,function(_,y){(!(Re.isUndefined(_)||_===null)&&s.call(t,_,Re.isString(y)?y.trim():y,m,f))===!0&&h(_,m?m.concat(y):[y])}),d.pop()}}if(!Re.isObject(e))throw new TypeError("data must be an object");return h(e),t}var iFr,LA,zD=ie(()=>{"use strict";ii();Kf();ale();iFr=Re.toFlatObject(Re,{},null,function(t){return/^is[A-Z]/.test(t)});LA=aFr});function bet(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function Iet(e,t){this._pairs=[],e&&LA(e,this,t)}var Ret,Cet,xet=ie(()=>{"use strict";zD();Ret=Iet.prototype;Ret.append=function(t,r){this._pairs.push([t,r])};Ret.toString=function(t){let r=t?function(n){return t.call(this,n,bet)}:bet;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};Cet=Iet});function oFr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Jv(e,t,r){if(!t)return e;let n=r&&r.encode||oFr,s=r&&r.serialize,i;if(s?i=s(t,r):i=Re.isURLSearchParams(t)?t.toString():new Cet(t,r).toString(n),i){let a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}var k$=ie(()=>{"use strict";ii();xet()});var cle,ule,wet=ie(()=>{"use strict";ii();cle=class{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){Re.forEach(this.handlers,function(n){n!==null&&t(n)})}},ule=cle});var iR,B$=ie(()=>{"use strict";iR={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}});var Net,Oet,Det=ie(()=>{"use strict";Net=Ne(require("url"),1),Oet=Net.default.URLSearchParams});var Pet,Let=ie(()=>{Det();ale();Pet={isNode:!0,classes:{URLSearchParams:Oet,FormData:M$,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]}});var lle={};kt(lle,{hasBrowserEnv:()=>Met,hasStandardBrowserEnv:()=>cFr,hasStandardBrowserWebWorkerEnv:()=>uFr});var Met,cFr,uFr,ket=ie(()=>{Met=typeof window<"u"&&typeof document<"u",cFr=(e=>Met&&["ReactNative","NativeScript","NS"].indexOf(e)<0)(typeof navigator<"u"&&navigator.product),uFr=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function"});var Aa,MA=ie(()=>{Let();ket();Aa={...lle,...Pet}});function dle(e,t){return LA(e,new Aa.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return Aa.isNode&&Re.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},t))}var Bet=ie(()=>{"use strict";ii();zD();MA()});function lFr(e){return Re.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function dFr(e){let t={},r=Object.keys(e),n,s=r.length,i;for(n=0;n=r.length;return a=!a&&Re.isArray(s)?s.length:a,c?(Re.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!Re.isObject(s[a]))&&(s[a]=[]),t(r,n,s[a],i)&&Re.isArray(s[a])&&(s[a]=dFr(s[a])),!o)}if(Re.isFormData(e)&&Re.isFunction(e.entries)){let r={};return Re.forEachEntry(e,(n,s)=>{t(lFr(n),s,r,0)}),r}return null}var U$,fle=ie(()=>{"use strict";ii();U$=fFr});function hFr(e,t,r){if(Re.isString(e))try{return(t||JSON.parse)(e),Re.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}var hle,aR,F$=ie(()=>{"use strict";ii();Kf();B$();zD();Bet();MA();fle();hle={transitional:iR,adapter:["xhr","http"],transformRequest:[function(t,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=Re.isObject(t);if(i&&Re.isHTMLForm(t)&&(t=new FormData(t)),Re.isFormData(t))return s?JSON.stringify(U$(t)):t;if(Re.isArrayBuffer(t)||Re.isBuffer(t)||Re.isStream(t)||Re.isFile(t)||Re.isBlob(t))return t;if(Re.isArrayBufferView(t))return t.buffer;if(Re.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return dle(t,this.formSerializer).toString();if((o=Re.isFileList(t))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return LA(o?{"files[]":t}:t,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),hFr(t)):t}],transformResponse:[function(t){let r=this.transitional||hle.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(t&&Re.isString(t)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(o){if(a)throw o.name==="SyntaxError"?mt.from(o,mt.ERR_BAD_RESPONSE,this,null,this.response):o}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Aa.classes.FormData,Blob:Aa.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Re.forEach(["delete","get","head","post","put","patch"],e=>{hle.headers[e]={}});aR=hle});var pFr,Uet,Fet=ie(()=>{"use strict";ii();pFr=Re.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Uet=e=>{let t={},r,n,s;return e&&e.split(` +`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||t[r]&&pFr[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t}});function YD(e){return e&&String(e).trim().toLowerCase()}function $$(e){return e===!1||e==null?e:Re.isArray(e)?e.map($$):String(e)}function mFr(e){let t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}function ple(e,t,r,n,s){if(Re.isFunction(n))return n.call(this,t,r);if(s&&(t=r),!!Re.isString(t)){if(Re.isString(n))return t.indexOf(n)!==-1;if(Re.isRegExp(n))return n.test(t)}}function _Fr(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function AFr(e,t){let r=Re.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(s,i,a){return this[n].call(this,t,s,i,a)},configurable:!0})})}var $et,gFr,oR,Ea,kA=ie(()=>{"use strict";ii();Fet();$et=Symbol("internals");gFr=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());oR=class{constructor(t){t&&this.set(t)}set(t,r,n){let s=this;function i(o,c,u){let l=YD(c);if(!l)throw new Error("header name must be a non-empty string");let d=Re.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=$$(o))}let a=(o,c)=>Re.forEach(o,(u,l)=>i(u,l,c));return Re.isPlainObject(t)||t instanceof this.constructor?a(t,r):Re.isString(t)&&(t=t.trim())&&!gFr(t)?a(Uet(t),r):t!=null&&i(r,t,n),this}get(t,r){if(t=YD(t),t){let n=Re.findKey(this,t);if(n){let s=this[n];if(!r)return s;if(r===!0)return mFr(s);if(Re.isFunction(r))return r.call(this,s,n);if(Re.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=YD(t),t){let n=Re.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||ple(this,this[n],n,r)))}return!1}delete(t,r){let n=this,s=!1;function i(a){if(a=YD(a),a){let o=Re.findKey(n,a);o&&(!r||ple(n,n[o],o,r))&&(delete n[o],s=!0)}}return Re.isArray(t)?t.forEach(i):i(t),s}clear(t){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!t||ple(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){let r=this,n={};return Re.forEach(this,(s,i)=>{let a=Re.findKey(n,i);if(a){r[a]=$$(s),delete r[i];return}let o=t?_Fr(i):String(i).trim();o!==i&&delete r[i],r[o]=$$(s),n[o]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let r=Object.create(null);return Re.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=t&&Re.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){let n=new this(t);return r.forEach(s=>n.set(s)),n}static accessor(t){let n=(this[$et]=this[$et]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=YD(a);n[o]||(AFr(s,a),n[o]=!0)}return Re.isArray(t)?t.forEach(i):i(t),this}};oR.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Re.reduceDescriptors(oR.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}});Re.freezeMethods(oR);Ea=oR});function QD(e,t){let r=this||aR,n=t||r,s=Ea.from(n.headers),i=n.data;return Re.forEach(e,function(o){i=o.call(r,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}var qet=ie(()=>{"use strict";ii();F$();kA()});function WD(e){return!!(e&&e.__CANCEL__)}var mle=ie(()=>{"use strict"});function Het(e,t,r){mt.call(this,e??"canceled",mt.ERR_CANCELED,t,r),this.name="CanceledError"}var zf,cR=ie(()=>{"use strict";Kf();ii();Re.inherits(Het,mt,{__CANCEL__:!0});zf=Het});function BA(e,t,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new mt("Request failed with status code "+r.status,[mt.ERR_BAD_REQUEST,mt.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}var gle=ie(()=>{"use strict";Kf()});function _le(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}var Vet=ie(()=>{"use strict"});function Ale(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}var jet=ie(()=>{"use strict"});function Zv(e,t){return e&&!_le(t)?Ale(e,t):t}var q$=ie(()=>{"use strict";Vet();jet()});var Get=S(Ket=>{"use strict";var EFr=require("url").parse,yFr={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},vFr=String.prototype.endsWith||function(e){return e.length<=this.length&&this.indexOf(e,this.length-e.length)!==-1};function SFr(e){var t=typeof e=="string"?EFr(e):e||{},r=t.protocol,n=t.host,s=t.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||yFr[r]||0,!TFr(n,s)))return"";var i=uR("npm_config_"+r+"_proxy")||uR(r+"_proxy")||uR("npm_config_proxy")||uR("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function TFr(e,t){var r=(uR("npm_config_no_proxy")||uR("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var s=n.match(/^(.+):(\d+)$/),i=s?s[1]:n,a=s?parseInt(s[2]):0;return a&&a!==t?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!vFr.call(e,i)):e!==i}):!0}function uR(e){return process.env[e.toLowerCase()]||process.env[e.toUpperCase()]||""}Ket.getProxyForUrl=SFr});var Yet=S((rWn,zet)=>{var lR=1e3,dR=lR*60,fR=dR*60,eS=fR*24,bFr=eS*7,IFr=eS*365.25;zet.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return RFr(e);if(r==="number"&&isFinite(e))return t.long?xFr(e):CFr(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function RFr(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*IFr;case"weeks":case"week":case"w":return r*bFr;case"days":case"day":case"d":return r*eS;case"hours":case"hour":case"hrs":case"hr":case"h":return r*fR;case"minutes":case"minute":case"mins":case"min":case"m":return r*dR;case"seconds":case"second":case"secs":case"sec":case"s":return r*lR;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function CFr(e){var t=Math.abs(e);return t>=eS?Math.round(e/eS)+"d":t>=fR?Math.round(e/fR)+"h":t>=dR?Math.round(e/dR)+"m":t>=lR?Math.round(e/lR)+"s":e+"ms"}function xFr(e){var t=Math.abs(e);return t>=eS?H$(e,t,eS,"day"):t>=fR?H$(e,t,fR,"hour"):t>=dR?H$(e,t,dR,"minute"):t>=lR?H$(e,t,lR,"second"):e+" ms"}function H$(e,t,r,n){var s=t>=r*1.5;return Math.round(e/r)+" "+n+(s?"s":"")}});var Ele=S((nWn,Qet)=>{function wFr(e){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=Yet(),r.destroy=u,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let d=0;for(let f=0;f{if(b==="%%")return"%";E++;let T=r.formatters[I];if(typeof T=="function"){let x=g[E];b=T.call(_,x),g.splice(E,1),E--}return b}),r.formatArgs.call(_,g),(_.log||r.log).apply(_,g)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(h!==r.namespaces&&(h=r.namespaces,p=r.enabled(l)),p),set:g=>{f=g}}),typeof r.init=="function"&&r.init(m),m}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,h=0,p=-1,m=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(i(l,d))return!1;for(let d of r.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Qet.exports=wFr});var Wet=S((Mu,V$)=>{Mu.formatArgs=OFr;Mu.save=DFr;Mu.load=PFr;Mu.useColors=NFr;Mu.storage=LFr();Mu.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Mu.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function NFr(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function OFr(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+V$.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),e.splice(n,0,t)}Mu.log=console.debug||console.log||(()=>{});function DFr(e){try{e?Mu.storage.setItem("debug",e):Mu.storage.removeItem("debug")}catch{}}function PFr(){let e;try{e=Mu.storage.getItem("debug")||Mu.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function LFr(){try{return localStorage}catch{}}V$.exports=Ele()(Mu);var{formatters:MFr}=V$.exports;MFr.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Jet=S((sWn,Xet)=>{"use strict";Xet.exports=(e,t=process.argv)=>{let r=e.startsWith("-")?"":e.length===1?"-":"--",n=t.indexOf(r+e),s=t.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var kFr=require("os"),Zet=require("tty"),Od=Jet(),{env:Ua}=process,UA;Od("no-color")||Od("no-colors")||Od("color=false")||Od("color=never")?UA=0:(Od("color")||Od("colors")||Od("color=true")||Od("color=always"))&&(UA=1);"FORCE_COLOR"in Ua&&(Ua.FORCE_COLOR==="true"?UA=1:Ua.FORCE_COLOR==="false"?UA=0:UA=Ua.FORCE_COLOR.length===0?1:Math.min(parseInt(Ua.FORCE_COLOR,10),3));function yle(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function vle(e,t){if(UA===0)return 0;if(Od("color=16m")||Od("color=full")||Od("color=truecolor"))return 3;if(Od("color=256"))return 2;if(e&&!t&&UA===void 0)return 0;let r=UA||0;if(Ua.TERM==="dumb")return r;if(process.platform==="win32"){let n=kFr.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in Ua)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in Ua)||Ua.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in Ua)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ua.TEAMCITY_VERSION)?1:0;if(Ua.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Ua){let n=parseInt((Ua.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Ua.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Ua.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Ua.TERM)||"COLORTERM"in Ua?1:r}function BFr(e){let t=vle(e,e&&e.isTTY);return yle(t)}ett.exports={supportsColor:BFr,stdout:yle(vle(!0,Zet.isatty(1))),stderr:yle(vle(!0,Zet.isatty(2)))}});var rtt=S((Fa,K$)=>{var UFr=require("tty"),j$=require("util");Fa.init=KFr;Fa.log=HFr;Fa.formatArgs=$Fr;Fa.save=VFr;Fa.load=jFr;Fa.useColors=FFr;Fa.destroy=j$.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Fa.colors=[6,2,3,4,5,1];try{let e=Sle();e&&(e.stderr||e).level>=2&&(Fa.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Fa.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function FFr(){return"colors"in Fa.inspectOpts?!!Fa.inspectOpts.colors:UFr.isatty(process.stderr.fd)}function $Fr(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${t} \x1B[0m`;e[0]=i+e[0].split(` `).join(` -`+s),e.push(i+"m+"+nF.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=Y1r()+t+" "+e[0]}function Y1r(){return Ys.inspectOpts.hideDate?"":new Date().toISOString()+" "}function W1r(...e){return process.stderr.write(rF.formatWithOptions(Ys.inspectOpts,...e)+` -`)}function X1r(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function J1r(){return process.env.DEBUG}function Z1r(e){e.inspectOpts={};let t=Object.keys(Ys.inspectOpts);for(let r=0;rt.trim()).join(" ")};r7e.O=function(e){return this.inspectOpts.colors=this.useColors,rF.inspect(e,this.inspectOpts)}});var i7e=b((IOn,uie)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?uie.exports=XVe():uie.exports=n7e()});var a7e=b((xOn,s7e)=>{var QN;s7e.exports=function(){if(!QN){try{QN=i7e()("follow-redirects")}catch{}typeof QN!="function"&&(QN=function(){})}QN.apply(null,arguments)}});var d7e=b((COn,vie)=>{var YN=require("url"),GN=YN.URL,eSr=require("http"),tSr=require("https"),pie=require("stream").Writable,hie=require("assert"),o7e=a7e();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=nv(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var mie=!1;try{hie(new GN(""))}catch(e){mie=e.code==="ERR_INVALID_URL"}var rSr=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],gie=["abort","aborted","connect","error","socket","timeout"],yie=Object.create(null);gie.forEach(function(e){yie[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var lie=WN("ERR_INVALID_URL","Invalid URL",TypeError),die=WN("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),nSr=WN("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",die),iSr=WN("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),sSr=WN("ERR_STREAM_WRITE_AFTER_END","write after end"),aSr=pie.prototype.destroy||c7e;function Bu(e,t){pie.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(i){r.emit("error",i instanceof die?i:new die({cause:i}))}},this._performRequest()}Bu.prototype=Object.create(pie.prototype);Bu.prototype.abort=function(){Aie(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Bu.prototype.destroy=function(e){return Aie(this._currentRequest,e),aSr.call(this,e),this};Bu.prototype.write=function(e,t,r){if(this._ending)throw new sSr;if(!rv(e)&&!cSr(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(nv(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new iSr),this.abort())};Bu.prototype.end=function(e,t,r){if(nv(e)?(r=e,e=t=null):nv(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,i=this._currentRequest;this.write(e,t,function(){n._ended=!0,i.end(null,null,r)}),this._ending=!0}};Bu.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};Bu.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};Bu.prototype.setTimeout=function(e,t){var r=this;function n(a){a.setTimeout(e),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function i(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),s()},e),n(a)}function s(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",s),r.removeListener("error",s),r.removeListener("response",s),r.removeListener("close",s),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",i)}return t&&this.on("timeout",t),this.socket?i(this.socket):this._currentRequest.once("socket",i),this.on("socket",n),this.on("abort",s),this.on("error",s),this.on("response",s),this.on("close",s),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){Bu.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(Bu.prototype,e,{get:function(){return this._currentRequest[e]}})});Bu.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};Bu.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var i of gie)n.on(i,yie[i]);if(this._currentUrl=/^\//.test(this._options.path)?YN.format(this._options):this._options.path,this._isRedirect){var s=0,a=this,o=this._requestBodyBuffers;(function u(c){if(n===a._currentRequest)if(c)a.emit("error",c);else if(s=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(Aie(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new nSr;var n,i=this._options.beforeRedirect;i&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var s=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],cie(/^content-/i,this._options.headers));var a=cie(/^host$/i,this._options.headers),o=_ie(this._currentUrl),u=a||o.host,c=/^\w+:/.test(r)?this._currentUrl:YN.format(Object.assign(o,{host:u})),l=oSr(r,c);if(o7e("redirecting to",l.href),this._isRedirect=!0,fie(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==u&&!uSr(l.host,u))&&cie(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),nv(i)){var d={headers:e.headers,statusCode:t},f={url:c,method:s,headers:n};i(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function u7e(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var i=n+":",s=r[i]=e[n],a=t[n]=Object.create(s);function o(c,l,d){return lSr(c)?c=fie(c):rv(c)?c=fie(_ie(c)):(d=l,l=l7e(c),c={protocol:i}),nv(l)&&(d=l,l=null),l=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},c,l),l.nativeProtocols=r,!rv(l.host)&&!rv(l.hostname)&&(l.hostname="::1"),hie.equal(l.protocol,i,"protocol mismatch"),o7e("options",l),new Bu(l,d)}function u(c,l,d){var f=a.request(c,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:u,configurable:!0,enumerable:!0,writable:!0}})}),t}function c7e(){}function _ie(e){var t;if(mie)t=new GN(e);else if(t=l7e(YN.parse(e)),!rv(t.protocol))throw new lie({input:e});return t}function oSr(e,t){return mie?new GN(e,t):_ie(YN.resolve(t,e))}function l7e(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new lie({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new lie({input:e.href||e});return e}function fie(e,t){var r=t||{};for(var n of rSr)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function cie(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function WN(e,t,r){function n(i){nv(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,i||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function Aie(e,t){for(var r of gie)e.removeListener(r,yie[r]);e.on("error",c7e),e.destroy(t)}function uSr(e,t){hie(rv(e)&&rv(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function rv(e){return typeof e=="string"||e instanceof String}function nv(e){return typeof e=="function"}function cSr(e){return typeof e=="object"&&"length"in e}function lSr(e){return GN&&e instanceof GN}vie.exports=u7e({http:eSr,https:tSr});vie.exports.wrap=u7e});var iv,iF=ve(()=>{iv="1.6.7"});function XN(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var bie=ve(()=>{"use strict"});function Eie(e,t,r){let n=r&&r.Blob||ks.classes.Blob,i=XN(e);if(t===void 0&&n&&(t=!0),i==="data"){e=i.length?e.slice(i.length+1):e;let s=dSr.exec(e);if(!s)throw new nt("Invalid URL",nt.ERR_INVALID_URL);let a=s[1],o=s[2],u=s[3],c=Buffer.from(decodeURIComponent(u),o?"base64":"utf8");if(t){if(!n)throw new nt("Blob is not supported",nt.ERR_NOT_SUPPORT);return new n([c],{type:a})}return c}throw new nt("Unsupported protocol "+i,nt.ERR_NOT_SUPPORT)}var dSr,f7e=ve(()=>{"use strict";Nd();bie();jg();dSr=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/});function fSr(e,t){let r=0,n=1e3/t,i=null;return function(a,o){let u=Date.now();if(a||u-r>n)return i&&(clearTimeout(i),i=null),r=u,e.apply(null,o);i||(i=setTimeout(()=>(i=null,r=Date.now(),e.apply(null,o)),n-(u-r)))}}var p7e,h7e=ve(()=>{"use strict";p7e=fSr});function pSr(e,t){e=e||10;let r=new Array(e),n=new Array(e),i=0,s=0,a;return t=t!==void 0?t:1e3,function(u){let c=Date.now(),l=n[s];a||(a=c),r[i]=u,n[i]=c;let d=s,f=0;for(;d!==i;)f+=r[d++],d=d%e;if(i=(i+1)%e,i===s&&(s=(s+1)%e),c-a{"use strict";sF=pSr});var m7e,aF,wie,Iie,g7e=ve(()=>{"use strict";m7e=Se(require("stream"),1);Ai();h7e();Sie();aF=Symbol("internals"),wie=class extends m7e.default.Transform{constructor(t){t=me.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(o,u)=>!me.isUndefined(u[o])),super({readableHighWaterMark:t.chunkSize});let r=this,n=this[aF]={length:t.length,timeWindow:t.timeWindow,ticksRate:t.ticksRate,chunkSize:t.chunkSize,maxRate:t.maxRate,minChunkSize:t.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},i=sF(n.ticksRate*t.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let s=0;n.updateProgress=p7e(function(){let u=n.length,c=n.bytesSeen,l=c-s;if(!l||r.destroyed)return;let d=i(l);s=c,process.nextTick(()=>{r.emit("progress",{loaded:c,total:u,progress:u?c/u:void 0,bytes:l,rate:d||void 0,estimated:d&&u&&c<=u?(u-c)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(t){let r=this[aF];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,n){let i=this,s=this[aF],a=s.maxRate,o=this.readableHighWaterMark,u=s.timeWindow,c=1e3/u,l=a/c,d=s.minChunkSize!==!1?Math.max(s.minChunkSize,l*.01):0;function f(h,m){let y=Buffer.byteLength(h);s.bytesSeen+=y,s.bytes+=y,s.isCaptured&&s.updateProgress(),i.push(h)?process.nextTick(m):s.onReadCallback=()=>{s.onReadCallback=null,process.nextTick(m)}}let p=(h,m)=>{let y=Buffer.byteLength(h),g=null,v=o,A,_=0;if(a){let E=Date.now();(!s.ts||(_=E-s.ts)>=u)&&(s.ts=E,A=l-s.bytes,s.bytes=A<0?-A:0,_=0),A=l-s.bytes}if(a){if(A<=0)return setTimeout(()=>{m(null,h)},u-_);Av&&y-v>d&&(g=h.subarray(v),h=h.subarray(0,v)),f(h,g?()=>{process.nextTick(m,null,g)}:m)};p(t,function h(m,y){if(m)return n(m);y?p(y,h):n(null)})}setLength(t){return this[aF].length=+t,this}},Iie=wie});var y7e,hSr,oF,xie=ve(()=>{({asyncIterator:y7e}=Symbol),hSr=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[y7e]?yield*e[y7e]():yield e},oF=hSr});var _7e,A7e,mSr,JN,zg,gSr,ySr,Cie,_Sr,v7e,b7e=ve(()=>{_7e=require("util"),A7e=require("stream");Ai();xie();mSr=me.ALPHABET.ALPHA_DIGIT+"-_",JN=new _7e.TextEncoder,zg=`\r -`,gSr=JN.encode(zg),ySr=2,Cie=class{constructor(t,r){let{escapeName:n}=this.constructor,i=me.isString(r),s=`Content-Disposition: form-data; name="${n(t)}"${!i&&r.name?`; filename="${n(r.name)}"`:""}${zg}`;i?r=JN.encode(String(r).replace(/\r?\n|\r\n?/g,zg)):s+=`Content-Type: ${r.type||"application/octet-stream"}${zg}`,this.headers=JN.encode(s+zg),this.contentLength=i?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+ySr,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;me.isTypedArray(t)?yield t:yield*oF(t),yield gSr}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},_Sr=(e,t,r)=>{let{tag:n="form-data-boundary",size:i=25,boundary:s=n+"-"+me.generateString(i,mSr)}=r||{};if(!me.isFormData(e))throw TypeError("FormData instance required");if(s.length<1||s.length>70)throw Error("boundary must be 10-70 characters long");let a=JN.encode("--"+s+zg),o=JN.encode("--"+s+"--"+zg+zg),u=o.byteLength,c=Array.from(e.entries()).map(([d,f])=>{let p=new Cie(d,f);return u+=p.size,p});u+=a.byteLength*c.length,u=me.toFiniteNumber(u);let l={"Content-Type":`multipart/form-data; boundary=${s}`};return Number.isFinite(u)&&(l["Content-Length"]=u),t&&t(l),A7e.Readable.from(async function*(){for(let d of c)yield a,yield*d.encode();yield o}())},v7e=_Sr});var E7e,Tie,S7e,w7e=ve(()=>{"use strict";E7e=Se(require("stream"),1),Tie=class extends E7e.default.Transform{__transform(t,r,n){this.push(t),n()}_transform(t,r,n){if(t.length!==0&&(this._transform=this.__transform,t[0]!==120)){let i=Buffer.alloc(2);i[0]=120,i[1]=156,this.push(i,r)}this.__transform(t,r,n)}},S7e=Tie});var ASr,I7e,x7e=ve(()=>{Ai();ASr=(e,t)=>me.isAsyncFn(e)?function(...r){let n=r.pop();e.apply(this,r).then(i=>{try{t?n(null,...t(i)):n(null,i)}catch(s){n(s)}},n)}:e,I7e=ASr});function wSr(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function B7e(e,t,r){let n=t;if(!n&&n!==!1){let i=(0,D7e.getProxyForUrl)(r);i&&(n=new URL(i))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let s=Buffer.from(n.auth,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+s}e.headers.host=e.hostname+(e.port?":"+e.port:"");let i=n.hostname||n.host;e.hostname=i,e.host=i,e.port=n.port,e.path=r,n.protocol&&(e.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}e.beforeRedirects.proxy=function(s){B7e(s,t,s.href)}}var D7e,k7e,O7e,P7e,M7e,Wh,sv,L7e,C7e,vSr,T7e,bSr,ESr,SSr,N7e,ISr,xSr,CSr,R7e,$7e,F7e=ve(()=>{"use strict";Ai();tie();Z6();G6();D7e=Se(QVe(),1),k7e=Se(require("http"),1),O7e=Se(require("https"),1),P7e=Se(require("util"),1),M7e=Se(d7e(),1),Wh=Se(require("zlib"),1);iF();Y6();Nd();US();jg();f7e();sv=Se(require("stream"),1);Hg();g7e();L7e=Se(require("events"),1);b7e();xie();w7e();x7e();C7e={flush:Wh.default.constants.Z_SYNC_FLUSH,finishFlush:Wh.default.constants.Z_SYNC_FLUSH},vSr={flush:Wh.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Wh.default.constants.BROTLI_OPERATION_FLUSH},T7e=me.isFunction(Wh.default.createBrotliDecompress),{http:bSr,https:ESr}=M7e.default,SSr=/https:?/,N7e=ks.protocols.map(e=>e+":");ISr=typeof process<"u"&&me.kindOf(process)==="process",xSr=e=>new Promise((t,r)=>{let n,i,s=(u,c)=>{i||(i=!0,n&&n(u,c))},a=u=>{s(u),t(u)},o=u=>{s(u,!0),r(u)};e(a,o,u=>n=u).catch(o)}),CSr=({address:e,family:t})=>{if(!me.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},R7e=(e,t)=>CSr(me.isObject(e)?e:{address:e,family:t}),$7e=ISr&&function(t){return xSr(async function(n,i,s){let{data:a,lookup:o,family:u}=t,{responseType:c,responseEncoding:l}=t,d=t.method.toUpperCase(),f,p=!1,h;if(o){let z=I7e(o,X=>me.isArray(X)?X:[X]);o=(X,K,Z)=>{z(X,K,(Y,ie,ue)=>{if(Y)return Z(Y);let he=me.isArray(ie)?ie.map(ye=>R7e(ye)):[R7e(ie,ue)];K.all?Z(Y,he):Z(Y,he[0].address,he[0].family)})}}let m=new L7e.default,y=()=>{t.cancelToken&&t.cancelToken.unsubscribe(g),t.signal&&t.signal.removeEventListener("abort",g),m.removeAllListeners()};s((z,X)=>{f=!0,X&&(p=!0,y())});function g(z){m.emit("abort",!z||z.type?new Dd(null,t,h):z)}m.once("abort",i),(t.cancelToken||t.signal)&&(t.cancelToken&&t.cancelToken.subscribe(g),t.signal&&(t.signal.aborted?g():t.signal.addEventListener("abort",g)));let v=ev(t.baseURL,t.url),A=new URL(v,"http://localhost"),_=A.protocol||N7e[0];if(_==="data:"){let z;if(d!=="GET")return Kg(n,i,{status:405,statusText:"method not allowed",headers:{},config:t});try{z=Eie(t.url,c==="blob",{Blob:t.env&&t.env.Blob})}catch(X){throw nt.from(X,nt.ERR_BAD_REQUEST,t)}return c==="text"?(z=z.toString(l),(!l||l==="utf8")&&(z=me.stripBOM(z))):c==="stream"&&(z=sv.default.Readable.from(z)),Kg(n,i,{data:z,status:200,statusText:"OK",headers:new Os,config:t})}if(N7e.indexOf(_)===-1)return i(new nt("Unsupported protocol "+_,nt.ERR_BAD_REQUEST,t));let E=Os.from(t.headers).normalize();E.set("User-Agent","axios/"+iv,!1);let S=t.onDownloadProgress,C=t.onUploadProgress,I=t.maxRate,N,T;if(me.isSpecCompliantForm(a)){let z=E.getContentType(/boundary=([-_\w\d]{10,70})/i);a=v7e(a,X=>{E.set(X)},{tag:`axios-${iv}-boundary`,boundary:z&&z[1]||void 0})}else if(me.isFormData(a)&&me.isFunction(a.getHeaders)){if(E.set(a.getHeaders()),!E.hasContentLength())try{let z=await P7e.default.promisify(a.getLength).call(a);Number.isFinite(z)&&z>=0&&E.setContentLength(z)}catch{}}else if(me.isBlob(a))a.size&&E.setContentType(a.type||"application/octet-stream"),E.setContentLength(a.size||0),a=sv.default.Readable.from(oF(a));else if(a&&!me.isStream(a)){if(!Buffer.isBuffer(a))if(me.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(me.isString(a))a=Buffer.from(a,"utf-8");else return i(new nt("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",nt.ERR_BAD_REQUEST,t));if(E.setContentLength(a.length,!1),t.maxBodyLength>-1&&a.length>t.maxBodyLength)return i(new nt("Request body larger than maxBodyLength limit",nt.ERR_BAD_REQUEST,t))}let k=me.toFiniteNumber(E.getContentLength());me.isArray(I)?(N=I[0],T=I[1]):N=T=I,a&&(C||N)&&(me.isStream(a)||(a=sv.default.Readable.from(a,{objectMode:!1})),a=sv.default.pipeline([a,new Iie({length:k,maxRate:me.toFiniteNumber(N)})],me.noop),C&&a.on("progress",z=>{C(Object.assign(z,{upload:!0}))}));let O;if(t.auth){let z=t.auth.username||"",X=t.auth.password||"";O=z+":"+X}if(!O&&A.username){let z=A.username,X=A.password;O=z+":"+X}O&&E.delete("authorization");let P;try{P=ZA(A.pathname+A.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch(z){let X=new Error(z.message);return X.config=t,X.url=t.url,X.exists=!0,i(X)}E.set("Accept-Encoding","gzip, compress, deflate"+(T7e?", br":""),!1);let $={path:P,method:d,headers:E.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:O,protocol:_,family:u,beforeRedirect:wSr,beforeRedirects:{}};!me.isUndefined(o)&&($.lookup=o),t.socketPath?$.socketPath=t.socketPath:($.hostname=A.hostname,$.port=A.port,B7e($,t.proxy,_+"//"+A.hostname+(A.port?":"+A.port:"")+$.path));let Q,j=SSr.test($.protocol);if($.agent=j?t.httpsAgent:t.httpAgent,t.transport?Q=t.transport:t.maxRedirects===0?Q=j?O7e.default:k7e.default:(t.maxRedirects&&($.maxRedirects=t.maxRedirects),t.beforeRedirect&&($.beforeRedirects.config=t.beforeRedirect),Q=j?ESr:bSr),t.maxBodyLength>-1?$.maxBodyLength=t.maxBodyLength:$.maxBodyLength=1/0,t.insecureHTTPParser&&($.insecureHTTPParser=t.insecureHTTPParser),h=Q.request($,function(X){if(h.destroyed)return;let K=[X],Z=+X.headers["content-length"];if(S){let ye=new Iie({length:me.toFiniteNumber(Z),maxRate:me.toFiniteNumber(T)});S&&ye.on("progress",q=>{S(Object.assign(q,{download:!0}))}),K.push(ye)}let Y=X,ie=X.req||h;if(t.decompress!==!1&&X.headers["content-encoding"])switch((d==="HEAD"||X.statusCode===204)&&delete X.headers["content-encoding"],(X.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":K.push(Wh.default.createUnzip(C7e)),delete X.headers["content-encoding"];break;case"deflate":K.push(new S7e),K.push(Wh.default.createUnzip(C7e)),delete X.headers["content-encoding"];break;case"br":T7e&&(K.push(Wh.default.createBrotliDecompress(vSr)),delete X.headers["content-encoding"])}Y=K.length>1?sv.default.pipeline(K,me.noop):K[0];let ue=sv.default.finished(Y,()=>{ue(),y()}),he={status:X.statusCode,statusText:X.statusMessage,headers:new Os(X.headers),config:t,request:ie};if(c==="stream")he.data=Y,Kg(n,i,he);else{let ye=[],q=0;Y.on("data",function(ae){ye.push(ae),q+=ae.length,t.maxContentLength>-1&&q>t.maxContentLength&&(p=!0,Y.destroy(),i(new nt("maxContentLength size of "+t.maxContentLength+" exceeded",nt.ERR_BAD_RESPONSE,t,ie)))}),Y.on("aborted",function(){if(p)return;let ae=new nt("maxContentLength size of "+t.maxContentLength+" exceeded",nt.ERR_BAD_RESPONSE,t,ie);Y.destroy(ae),i(ae)}),Y.on("error",function(ae){h.destroyed||i(nt.from(ae,null,t,ie))}),Y.on("end",function(){try{let ae=ye.length===1?ye[0]:Buffer.concat(ye);c!=="arraybuffer"&&(ae=ae.toString(l),(!l||l==="utf8")&&(ae=me.stripBOM(ae))),he.data=ae}catch(ae){return i(nt.from(ae,null,t,he.request,he))}Kg(n,i,he)})}m.once("abort",ye=>{Y.destroyed||(Y.emit("error",ye),Y.destroy())})}),m.once("abort",z=>{i(z),h.destroy(z)}),h.on("error",function(X){i(nt.from(X,null,t,h))}),h.on("socket",function(X){X.setKeepAlive(!0,1e3*60)}),t.timeout){let z=parseInt(t.timeout,10);if(Number.isNaN(z)){i(new nt("error trying to parse `config.timeout` to int",nt.ERR_BAD_OPTION_VALUE,t,h));return}h.setTimeout(z,function(){if(f)return;let K=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",Z=t.transitional||BS;t.timeoutErrorMessage&&(K=t.timeoutErrorMessage),i(new nt(K,Z.clarifyTimeoutError?nt.ETIMEDOUT:nt.ECONNABORTED,t,h)),g()})}if(me.isStream(a)){let z=!1,X=!1;a.on("end",()=>{z=!0}),a.once("error",K=>{X=!0,h.destroy(K)}),a.on("close",()=>{!z&&!X&&g(new Dd("Request stream has been aborted",t,h))}),a.pipe(h)}else h.end(a)})}});var U7e,q7e=ve(()=>{Ai();jg();U7e=ks.hasStandardBrowserEnv?{write(e,t,r,n,i,s){let a=[e+"="+encodeURIComponent(t)];me.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),me.isString(n)&&a.push("path="+n),me.isString(i)&&a.push("domain="+i),s===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){let t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}}});var j7e,H7e=ve(()=>{"use strict";Ai();jg();j7e=ks.hasStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function i(s){let a=s;return t&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=i(window.location.href),function(a){let o=me.isString(a)?i(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}()});function K7e(e,t){let r=0,n=sF(50,250);return i=>{let s=i.loaded,a=i.lengthComputable?i.total:void 0,o=s-r,u=n(o),c=s<=a;r=s;let l={loaded:s,total:a,progress:a?s/a:void 0,bytes:o,rate:u||void 0,estimated:u&&a&&c?(a-s)/u:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}var TSr,V7e,z7e=ve(()=>{"use strict";Ai();tie();q7e();G6();Z6();H7e();Y6();Nd();US();bie();jg();Hg();Sie();TSr=typeof XMLHttpRequest<"u",V7e=TSr&&function(e){return new Promise(function(r,n){let i=e.data,s=Os.from(e.headers).normalize(),{responseType:a,withXSRFToken:o}=e,u;function c(){e.cancelToken&&e.cancelToken.unsubscribe(u),e.signal&&e.signal.removeEventListener("abort",u)}let l;if(me.isFormData(i)){if(ks.hasStandardBrowserEnv||ks.hasStandardBrowserWebWorkerEnv)s.setContentType(!1);else if((l=s.getContentType())!==!1){let[m,...y]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];s.setContentType([m||"multipart/form-data",...y].join("; "))}}let d=new XMLHttpRequest;if(e.auth){let m=e.auth.username||"",y=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";s.set("Authorization","Basic "+btoa(m+":"+y))}let f=ev(e.baseURL,e.url);d.open(e.method.toUpperCase(),ZA(f,e.params,e.paramsSerializer),!0),d.timeout=e.timeout;function p(){if(!d)return;let m=Os.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:m,config:e,request:d};Kg(function(A){r(A),c()},function(A){n(A),c()},g),d=null}if("onloadend"in d?d.onloadend=p:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(p)},d.onabort=function(){d&&(n(new nt("Request aborted",nt.ECONNABORTED,e,d)),d=null)},d.onerror=function(){n(new nt("Network Error",nt.ERR_NETWORK,e,d)),d=null},d.ontimeout=function(){let y=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",g=e.transitional||BS;e.timeoutErrorMessage&&(y=e.timeoutErrorMessage),n(new nt(y,g.clarifyTimeoutError?nt.ETIMEDOUT:nt.ECONNABORTED,e,d)),d=null},ks.hasStandardBrowserEnv&&(o&&me.isFunction(o)&&(o=o(e)),o||o!==!1&&j7e(f))){let m=e.xsrfHeaderName&&e.xsrfCookieName&&U7e.read(e.xsrfCookieName);m&&s.set(e.xsrfHeaderName,m)}i===void 0&&s.setContentType(null),"setRequestHeader"in d&&me.forEach(s.toJSON(),function(y,g){d.setRequestHeader(g,y)}),me.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),a&&a!=="json"&&(d.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&d.addEventListener("progress",K7e(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",K7e(e.onUploadProgress)),(e.cancelToken||e.signal)&&(u=m=>{d&&(n(!m||m.type?new Dd(null,e,d):m),d.abort(),d=null)},e.cancelToken&&e.cancelToken.subscribe(u),e.signal&&(e.signal.aborted?u():e.signal.addEventListener("abort",u)));let h=XN(f);if(h&&ks.protocols.indexOf(h)===-1){n(new nt("Unsupported protocol "+h+":",nt.ERR_BAD_REQUEST,e));return}d.send(i||null)})}});var Nie,Q7e,NSr,uF,Rie=ve(()=>{Ai();F7e();z7e();Nd();Nie={http:$7e,xhr:V7e};me.forEach(Nie,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});Q7e=e=>`- ${e}`,NSr=e=>me.isFunction(e)||e===null||e===!1,uF={getAdapter:e=>{e=me.isArray(e)?e:[e];let{length:t}=e,r,n,i={};for(let s=0;s`adapter ${o} `+(u===!1?"is not supported by the environment":"is not available in the build")),a=t?s.length>1?`since : -`+s.map(Q7e).join(` -`):" "+Q7e(s[0]):"as no adapter specified";throw new nt("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:Nie}});function Die(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Dd(null,e)}function cF(e){return Die(e),e.headers=Os.from(e.headers),e.data=VN.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),uF.getAdapter(e.adapter||$S.adapter)(e).then(function(n){return Die(e),n.data=VN.call(e,e.transformResponse,n),n.headers=Os.from(n.headers),n},function(n){return zN(n)||(Die(e),n&&n.response&&(n.response.data=VN.call(e,e.transformResponse,n.response),n.response.headers=Os.from(n.response.headers))),Promise.reject(n)})}var G7e=ve(()=>{"use strict";jVe();eie();X6();US();Hg();Rie()});function Xh(e,t){t=t||{};let r={};function n(c,l,d){return me.isPlainObject(c)&&me.isPlainObject(l)?me.merge.call({caseless:d},c,l):me.isPlainObject(l)?me.merge({},l):me.isArray(l)?l.slice():l}function i(c,l,d){if(me.isUndefined(l)){if(!me.isUndefined(c))return n(void 0,c,d)}else return n(c,l,d)}function s(c,l){if(!me.isUndefined(l))return n(void 0,l)}function a(c,l){if(me.isUndefined(l)){if(!me.isUndefined(c))return n(void 0,c)}else return n(void 0,l)}function o(c,l,d){if(d in t)return n(c,l);if(d in e)return n(void 0,c)}let u={url:s,method:s,data:s,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(c,l)=>i(Y7e(c),Y7e(l),!0)};return me.forEach(Object.keys(Object.assign({},e,t)),function(l){let d=u[l]||i,f=d(e[l],t[l],l);me.isUndefined(f)&&d!==o||(r[l]=f)}),r}var Y7e,kie=ve(()=>{"use strict";Ai();Hg();Y7e=e=>e instanceof Os?e.toJSON():e});function RSr(e,t,r){if(typeof e!="object")throw new nt("options must be an object",nt.ERR_BAD_OPTION_VALUE);let n=Object.keys(e),i=n.length;for(;i-- >0;){let s=n[i],a=t[s];if(a){let o=e[s],u=o===void 0||a(o,s,e);if(u!==!0)throw new nt("option "+s+" must be "+u,nt.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new nt("Unknown option "+s,nt.ERR_BAD_OPTION)}}var Oie,W7e,lF,X7e=ve(()=>{"use strict";iF();Nd();Oie={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Oie[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});W7e={};Oie.transitional=function(t,r,n){function i(s,a){return"[Axios v"+iv+"] Transitional option '"+s+"'"+a+(n?". "+n:"")}return(s,a,o)=>{if(t===!1)throw new nt(i(a," has been removed"+(r?" in "+r:"")),nt.ERR_DEPRECATED);return r&&!W7e[a]&&(W7e[a]=!0,console.warn(i(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(s,a,o):!0}};lF={assertOptions:RSr,validators:Oie}});var Qg,VS,ZN,J7e=ve(()=>{"use strict";Ai();G6();RVe();G7e();kie();Z6();X7e();Hg();Qg=lF.validators,VS=class{constructor(t){this.defaults=t,this.interceptors={request:new Gne,response:new Gne}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let i;Error.captureStackTrace?Error.captureStackTrace(i={}):i=new Error;let s=i.stack?i.stack.replace(/^.+\n/,""):"";n.stack?s&&!String(n.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(n.stack+=` -`+s):n.stack=s}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=Xh(this.defaults,r);let{transitional:n,paramsSerializer:i,headers:s}=r;n!==void 0&&lF.assertOptions(n,{silentJSONParsing:Qg.transitional(Qg.boolean),forcedJSONParsing:Qg.transitional(Qg.boolean),clarifyTimeoutError:Qg.transitional(Qg.boolean)},!1),i!=null&&(me.isFunction(i)?r.paramsSerializer={serialize:i}:lF.assertOptions(i,{encode:Qg.function,serialize:Qg.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=s&&me.merge(s.common,s[r.method]);s&&me.forEach(["delete","get","head","post","put","patch","common"],h=>{delete s[h]}),r.headers=Os.concat(a,s);let o=[],u=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(r)===!1||(u=u&&m.synchronous,o.unshift(m.fulfilled,m.rejected))});let c=[];this.interceptors.response.forEach(function(m){c.push(m.fulfilled,m.rejected)});let l,d=0,f;if(!u){let h=[cF.bind(this),void 0];for(h.unshift.apply(h,o),h.push.apply(h,c),f=h.length,l=Promise.resolve(r);d{"use strict";US();Pie=class e{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(s){r=s});let n=this;this.promise.then(i=>{if(!n._listeners)return;let s=n._listeners.length;for(;s-- >0;)n._listeners[s](i);n._listeners=null}),this.promise.then=i=>{let s,a=new Promise(o=>{n.subscribe(o),s=o}).then(i);return a.cancel=function(){n.unsubscribe(s)},a},t(function(s,a,o){n.reason||(n.reason=new Dd(s,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new e(function(i){t=i}),cancel:t}}},Z7e=Pie});function Mie(e){return function(r){return e.apply(null,r)}}var tze=ve(()=>{"use strict"});function Lie(e){return me.isObject(e)&&e.isAxiosError===!0}var rze=ve(()=>{"use strict";Ai()});var Bie,nze,ize=ve(()=>{Bie={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Bie).forEach(([e,t])=>{Bie[t]=e});nze=Bie});function sze(e){let t=new ZN(e),r=MN(ZN.prototype.request,t);return me.extend(r,ZN.prototype,t,{allOwnKeys:!0}),me.extend(r,t,null,{allOwnKeys:!0}),r.create=function(i){return sze(Xh(e,i))},r}var As,Ee,aze=ve(()=>{"use strict";Ai();vne();J7e();kie();X6();Xne();US();eze();eie();iF();HN();Nd();tze();rze();Hg();Rie();ize();As=sze($S);As.Axios=ZN;As.CanceledError=Dd;As.CancelToken=Z7e;As.isCancel=zN;As.VERSION=iv;As.toFormData=qg;As.AxiosError=nt;As.Cancel=As.CanceledError;As.all=function(t){return Promise.all(t)};As.spread=Mie;As.isAxiosError=Lie;As.mergeConfig=Xh;As.AxiosHeaders=Os;As.formToJSON=e=>W6(me.isHTMLForm(e)?new FormData(e):e);As.getAdapter=uF.getAdapter;As.HttpStatusCode=nze;As.default=As;Ee=As});var dF={};ys(dF,{Axios:()=>DSr,AxiosError:()=>kSr,AxiosHeaders:()=>jSr,Cancel:()=>$Sr,CancelToken:()=>MSr,CanceledError:()=>OSr,HttpStatusCode:()=>HSr,VERSION:()=>LSr,all:()=>BSr,default:()=>Ee,formToJSON:()=>KSr,getAdapter:()=>VSr,isAxiosError:()=>FSr,isCancel:()=>PSr,mergeConfig:()=>zSr,spread:()=>USr,toFormData:()=>qSr});var DSr,kSr,OSr,PSr,MSr,LSr,BSr,$Sr,FSr,USr,qSr,jSr,HSr,KSr,VSr,zSr,Yr=ve(()=>{aze();({Axios:DSr,AxiosError:kSr,CanceledError:OSr,isCancel:PSr,CancelToken:MSr,VERSION:LSr,all:BSr,Cancel:$Sr,isAxiosError:FSr,spread:USr,toFormData:qSr,AxiosHeaders:jSr,HttpStatusCode:HSr,formToJSON:KSr,getAdapter:VSr,mergeConfig:zSr}=Ee)});var wze=b((qMn,Sze)=>{var GS=1e3,YS=GS*60,WS=YS*60,ov=WS*24,dwr=ov*7,fwr=ov*365.25;Sze.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return pwr(e);if(r==="number"&&isFinite(e))return t.long?mwr(e):hwr(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function pwr(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*fwr;case"weeks":case"week":case"w":return r*dwr;case"days":case"day":case"d":return r*ov;case"hours":case"hour":case"hrs":case"hr":case"h":return r*WS;case"minutes":case"minute":case"mins":case"min":case"m":return r*YS;case"seconds":case"second":case"secs":case"sec":case"s":return r*GS;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function hwr(e){var t=Math.abs(e);return t>=ov?Math.round(e/ov)+"d":t>=WS?Math.round(e/WS)+"h":t>=YS?Math.round(e/YS)+"m":t>=GS?Math.round(e/GS)+"s":e+"ms"}function mwr(e){var t=Math.abs(e);return t>=ov?yF(e,t,ov,"day"):t>=WS?yF(e,t,WS,"hour"):t>=YS?yF(e,t,YS,"minute"):t>=GS?yF(e,t,GS,"second"):e+" ms"}function yF(e,t,r,n){var i=t>=r*1.5;return Math.round(e/r)+" "+n+(i?"s":"")}});var Kie=b((jMn,Ize)=>{function gwr(e){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=i,r.enabled=o,r.humanize=wze(),r.destroy=c,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let d=0;for(let f=0;f{if(S==="%%")return"%";_++;let I=r.formatters[C];if(typeof I=="function"){let N=y[_];S=I.call(g,N),y.splice(_,1),_--}return S}),r.formatArgs.call(g,y),(g.log||r.log).apply(g,y)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,h=r.enabled(l)),h),set:y=>{f=y}}),typeof r.init=="function"&&r.init(m),m}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function i(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function s(l,d){let f=0,p=0,h=-1,m=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(s(l,d))return!1;for(let d of r.names)if(s(l,d))return!0;return!1}function u(l){return l instanceof Error?l.stack||l.message:l}function c(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Ize.exports=gwr});var xze=b(($u,_F)=>{$u.formatArgs=_wr;$u.save=Awr;$u.load=vwr;$u.useColors=ywr;$u.storage=bwr();$u.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();$u.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function ywr(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function _wr(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+_F.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,i=>{i!=="%%"&&(r++,i==="%c"&&(n=r))}),e.splice(n,0,t)}$u.log=console.debug||console.log||(()=>{});function Awr(e){try{e?$u.storage.setItem("debug",e):$u.storage.removeItem("debug")}catch{}}function vwr(){let e;try{e=$u.storage.getItem("debug")||$u.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function bwr(){try{return localStorage}catch{}}_F.exports=Kie()($u);var{formatters:Ewr}=_F.exports;Ewr.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Tze=b((Ws,vF)=>{var Swr=require("tty"),AF=require("util");Ws.init=Rwr;Ws.log=Cwr;Ws.formatArgs=Iwr;Ws.save=Twr;Ws.load=Nwr;Ws.useColors=wwr;Ws.destroy=AF.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ws.colors=[6,2,3,4,5,1];try{let e=oie();e&&(e.stderr||e).level>=2&&(Ws.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ws.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(i,s)=>s.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function wwr(){return"colors"in Ws.inspectOpts?!!Ws.inspectOpts.colors:Swr.isatty(process.stderr.fd)}function Iwr(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,i="\x1B[3"+(n<8?n:"8;5;"+n),s=` ${i};1m${t} \x1B[0m`;e[0]=s+e[0].split(` +`+i),e.push(s+"m+"+K$.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=qFr()+t+" "+e[0]}function qFr(){return Fa.inspectOpts.hideDate?"":new Date().toISOString()+" "}function HFr(...e){return process.stderr.write(j$.formatWithOptions(Fa.inspectOpts,...e)+` +`)}function VFr(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function jFr(){return process.env.DEBUG}function KFr(e){e.inspectOpts={};let t=Object.keys(Fa.inspectOpts);for(let r=0;rt.trim()).join(" ")};ttt.O=function(e){return this.inspectOpts.colors=this.useColors,j$.inspect(e,this.inspectOpts)}});var ntt=S((aWn,Tle)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Tle.exports=Wet():Tle.exports=rtt()});var itt=S((oWn,stt)=>{var XD;stt.exports=function(){if(!XD){try{XD=ntt()("follow-redirects")}catch{}typeof XD!="function"&&(XD=function(){})}XD.apply(null,arguments)}});var ltt=S((cWn,Mle)=>{var ZD=require("url"),JD=ZD.URL,GFr=require("http"),zFr=require("https"),xle=require("stream").Writable,wle=require("assert"),att=itt();(function(){var t=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=rS(Error.captureStackTrace);!t&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var Nle=!1;try{wle(new JD(""))}catch(e){Nle=e.code==="ERR_INVALID_URL"}var YFr=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],Ole=["abort","aborted","connect","error","socket","timeout"],Dle=Object.create(null);Ole.forEach(function(e){Dle[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var Ile=eP("ERR_INVALID_URL","Invalid URL",TypeError),Rle=eP("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),QFr=eP("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",Rle),WFr=eP("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),XFr=eP("ERR_STREAM_WRITE_AFTER_END","write after end"),JFr=xle.prototype.destroy||ctt;function ku(e,t){xle.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof Rle?s:new Rle({cause:s}))}},this._performRequest()}ku.prototype=Object.create(xle.prototype);ku.prototype.abort=function(){Lle(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};ku.prototype.destroy=function(e){return Lle(this._currentRequest,e),JFr.call(this,e),this};ku.prototype.write=function(e,t,r){if(this._ending)throw new XFr;if(!tS(e)&&!t6r(e))throw new TypeError("data should be a string, Buffer or Uint8Array");if(rS(t)&&(r=t,t=null),e.length===0){r&&r();return}this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new WFr),this.abort())};ku.prototype.end=function(e,t,r){if(rS(e)?(r=e,e=t=null):rS(t)&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(e,t,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};ku.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)};ku.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)};ku.prototype.setTimeout=function(e,t){var r=this;function n(a){a.setTimeout(e),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},e),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),t&&r.removeListener("timeout",t),r.socket||r._currentRequest.removeListener("socket",s)}return t&&this.on("timeout",t),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){ku.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}});["aborted","connection","socket"].forEach(function(e){Object.defineProperty(ku.prototype,e,{get:function(){return this._currentRequest[e]}})});ku.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(e.hostname||(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");t<0?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}};ku.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)throw new TypeError("Unsupported protocol "+e);if(this._options.agents){var r=e.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of Ole)n.on(s,Dle[s]);if(this._currentUrl=/^\//.test(this._options.path)?ZD.format(this._options):this._options.path,this._isRedirect){var i=0,a=this,o=this._requestBodyBuffers;(function c(u){if(n===a._currentRequest)if(u)a.emit("error",u);else if(i=400){e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[];return}if(Lle(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)throw new QFr;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:e.req.getHeader("host")},this._options.headers));var i=this._options.method;((t===301||t===302)&&this._options.method==="POST"||t===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],ble(/^content-/i,this._options.headers));var a=ble(/^host$/i,this._options.headers),o=Ple(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:ZD.format(Object.assign(o,{host:c})),l=ZFr(r,u);if(att("redirecting to",l.href),this._isRedirect=!0,Cle(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!e6r(l.host,c))&&ble(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),rS(s)){var d={headers:e.headers,statusCode:t},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function ott(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(n){var s=n+":",i=r[s]=e[n],a=t[n]=Object.create(i);function o(u,l,d){return r6r(u)?u=Cle(u):tS(u)?u=Cle(Ple(u)):(d=l,l=utt(u),u={protocol:s}),rS(l)&&(d=l,l=null),l=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},u,l),l.nativeProtocols=r,!tS(l.host)&&!tS(l.hostname)&&(l.hostname="::1"),wle.equal(l.protocol,s,"protocol mismatch"),att("options",l),new ku(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),t}function ctt(){}function Ple(e){var t;if(Nle)t=new JD(e);else if(t=utt(ZD.parse(e)),!tS(t.protocol))throw new Ile({input:e});return t}function ZFr(e,t){return Nle?new JD(e,t):Ple(ZD.resolve(t,e))}function utt(e){if(/^\[/.test(e.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(e.hostname))throw new Ile({input:e.href||e});if(/^\[/.test(e.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(e.host))throw new Ile({input:e.href||e});return e}function Cle(e,t){var r=t||{};for(var n of YFr)r[n]=e[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function ble(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function eP(e,t,r){function n(s){rS(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=e,this.message=this.cause?t+": "+this.cause.message:t}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+e+"]",enumerable:!1}}),n}function Lle(e,t){for(var r of Ole)e.removeListener(r,Dle[r]);e.on("error",ctt),e.destroy(t)}function e6r(e,t){wle(tS(e)&&tS(t));var r=e.length-t.length-1;return r>0&&e[r]==="."&&e.endsWith(t)}function tS(e){return typeof e=="string"||e instanceof String}function rS(e){return typeof e=="function"}function t6r(e){return typeof e=="object"&&"length"in e}function r6r(e){return JD&&e instanceof JD}Mle.exports=ott({http:GFr,https:zFr});Mle.exports.wrap=ott});var nS,G$=ie(()=>{nS="1.6.7"});function tP(e){let t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}var kle=ie(()=>{"use strict"});function Ble(e,t,r){let n=r&&r.Blob||Aa.classes.Blob,s=tP(e);if(t===void 0&&n&&(t=!0),s==="data"){e=s.length?e.slice(s.length+1):e;let i=n6r.exec(e);if(!i)throw new mt("Invalid URL",mt.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(t){if(!n)throw new mt("Blob is not supported",mt.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new mt("Unsupported protocol "+s,mt.ERR_NOT_SUPPORT)}var n6r,dtt=ie(()=>{"use strict";Kf();kle();MA();n6r=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/});function s6r(e,t){let r=0,n=1e3/t,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,e.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),e.apply(null,o)),n-(c-r)))}}var ftt,htt=ie(()=>{"use strict";ftt=s6r});function i6r(e,t){e=e||10;let r=new Array(e),n=new Array(e),s=0,i=0,a;return t=t!==void 0?t:1e3,function(c){let u=Date.now(),l=n[i];a||(a=u),r[s]=c,n[s]=u;let d=i,f=0;for(;d!==s;)f+=r[d++],d=d%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),u-a{"use strict";z$=i6r});var ptt,Y$,Fle,$le,mtt=ie(()=>{"use strict";ptt=Ne(require("stream"),1);ii();htt();Ule();Y$=Symbol("internals"),Fle=class extends ptt.default.Transform{constructor(t){t=Re.toFlatObject(t,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(o,c)=>!Re.isUndefined(c[o])),super({readableHighWaterMark:t.chunkSize});let r=this,n=this[Y$]={length:t.length,timeWindow:t.timeWindow,ticksRate:t.ticksRate,chunkSize:t.chunkSize,maxRate:t.maxRate,minChunkSize:t.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=z$(n.ticksRate*t.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=ftt(function(){let c=n.length,u=n.bytesSeen,l=u-i;if(!l||r.destroyed)return;let d=s(l);i=u,process.nextTick(()=>{r.emit("progress",{loaded:u,total:c,progress:c?u/c:void 0,bytes:l,rate:d||void 0,estimated:d&&c&&u<=c?(c-u)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(t){let r=this[Y$];return r.onReadCallback&&r.onReadCallback(),super._read(t)}_transform(t,r,n){let s=this,i=this[Y$],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(p,m){let g=Buffer.byteLength(p);i.bytesSeen+=g,i.bytes+=g,i.isCaptured&&i.updateProgress(),s.push(p)?process.nextTick(m):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(m)}}let h=(p,m)=>{let g=Buffer.byteLength(p),_=null,y=o,A,E=0;if(a){let v=Date.now();(!i.ts||(E=v-i.ts)>=c)&&(i.ts=v,A=l-i.bytes,i.bytes=A<0?-A:0,E=0),A=l-i.bytes}if(a){if(A<=0)return setTimeout(()=>{m(null,p)},c-E);Ay&&g-y>d&&(_=p.subarray(y),p=p.subarray(0,y)),f(p,_?()=>{process.nextTick(m,null,_)}:m)};h(t,function p(m,g){if(m)return n(m);g?h(g,p):n(null)})}setLength(t){return this[Y$].length=+t,this}},$le=Fle});var gtt,a6r,Q$,qle=ie(()=>{({asyncIterator:gtt}=Symbol),a6r=async function*(e){e.stream?yield*e.stream():e.arrayBuffer?yield await e.arrayBuffer():e[gtt]?yield*e[gtt]():yield e},Q$=a6r});var _tt,Att,o6r,rP,FA,c6r,u6r,Hle,l6r,Ett,ytt=ie(()=>{_tt=require("util"),Att=require("stream");ii();qle();o6r=Re.ALPHABET.ALPHA_DIGIT+"-_",rP=new _tt.TextEncoder,FA=`\r +`,c6r=rP.encode(FA),u6r=2,Hle=class{constructor(t,r){let{escapeName:n}=this.constructor,s=Re.isString(r),i=`Content-Disposition: form-data; name="${n(t)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${FA}`;s?r=rP.encode(String(r).replace(/\r?\n|\r\n?/g,FA)):i+=`Content-Type: ${r.type||"application/octet-stream"}${FA}`,this.headers=rP.encode(i+FA),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+u6r,this.name=t,this.value=r}async*encode(){yield this.headers;let{value:t}=this;Re.isTypedArray(t)?yield t:yield*Q$(t),yield c6r}static escapeName(t){return String(t).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},l6r=(e,t,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+Re.generateString(s,o6r)}=r||{};if(!Re.isFormData(e))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=rP.encode("--"+i+FA),o=rP.encode("--"+i+"--"+FA+FA),c=o.byteLength,u=Array.from(e.entries()).map(([d,f])=>{let h=new Hle(d,f);return c+=h.size,h});c+=a.byteLength*u.length,c=Re.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),t&&t(l),Att.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},Ett=l6r});var vtt,Vle,Stt,Ttt=ie(()=>{"use strict";vtt=Ne(require("stream"),1),Vle=class extends vtt.default.Transform{__transform(t,r,n){this.push(t),n()}_transform(t,r,n){if(t.length!==0&&(this._transform=this.__transform,t[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(t,r,n)}},Stt=Vle});var d6r,btt,Itt=ie(()=>{ii();d6r=(e,t)=>Re.isAsyncFn(e)?function(...r){let n=r.pop();e.apply(this,r).then(s=>{try{t?n(null,...t(s)):n(null,s)}catch(i){n(i)}},n)}:e,btt=d6r});function g6r(e,t){e.beforeRedirects.proxy&&e.beforeRedirects.proxy(e),e.beforeRedirects.config&&e.beforeRedirects.config(e,t)}function ktt(e,t,r){let n=t;if(!n&&n!==!1){let s=(0,Ntt.getProxyForUrl)(r);s&&(n=new URL(s))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+i}e.headers.host=e.hostname+(e.port?":"+e.port:"");let s=n.hostname||n.host;e.hostname=s,e.host=s,e.port=n.port,e.path=r,n.protocol&&(e.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}e.beforeRedirects.proxy=function(i){ktt(i,t,i.href)}}var Ntt,Ott,Dtt,Ptt,Ltt,Cm,sS,Mtt,Rtt,f6r,Ctt,h6r,p6r,m6r,xtt,_6r,A6r,E6r,wtt,Btt,Utt=ie(()=>{"use strict";ii();gle();q$();k$();Ntt=Ne(Get(),1),Ott=Ne(require("http"),1),Dtt=Ne(require("https"),1),Ptt=Ne(require("util"),1),Ltt=Ne(ltt(),1),Cm=Ne(require("zlib"),1);G$();B$();Kf();cR();MA();dtt();sS=Ne(require("stream"),1);kA();mtt();Mtt=Ne(require("events"),1);ytt();qle();Ttt();Itt();Rtt={flush:Cm.default.constants.Z_SYNC_FLUSH,finishFlush:Cm.default.constants.Z_SYNC_FLUSH},f6r={flush:Cm.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Cm.default.constants.BROTLI_OPERATION_FLUSH},Ctt=Re.isFunction(Cm.default.createBrotliDecompress),{http:h6r,https:p6r}=Ltt.default,m6r=/https:?/,xtt=Aa.protocols.map(e=>e+":");_6r=typeof process<"u"&&Re.kindOf(process)==="process",A6r=e=>new Promise((t,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),t(c)},o=c=>{i(c,!0),r(c)};e(a,o,c=>n=c).catch(o)}),E6r=({address:e,family:t})=>{if(!Re.isString(e))throw TypeError("address must be a string");return{address:e,family:t||(e.indexOf(".")<0?6:4)}},wtt=(e,t)=>E6r(Re.isObject(e)?e:{address:e,family:t}),Btt=_6r&&function(t){return A6r(async function(n,s,i){let{data:a,lookup:o,family:c}=t,{responseType:u,responseEncoding:l}=t,d=t.method.toUpperCase(),f,h=!1,p;if(o){let K=btt(o,ee=>Re.isArray(ee)?ee:[ee]);o=(ee,z,oe)=>{K(ee,z,(le,te,Q)=>{if(le)return oe(le);let Z=Re.isArray(te)?te.map(de=>wtt(de)):[wtt(te,Q)];z.all?oe(le,Z):oe(le,Z[0].address,Z[0].family)})}}let m=new Mtt.default,g=()=>{t.cancelToken&&t.cancelToken.unsubscribe(_),t.signal&&t.signal.removeEventListener("abort",_),m.removeAllListeners()};i((K,ee)=>{f=!0,ee&&(h=!0,g())});function _(K){m.emit("abort",!K||K.type?new zf(null,t,p):K)}m.once("abort",s),(t.cancelToken||t.signal)&&(t.cancelToken&&t.cancelToken.subscribe(_),t.signal&&(t.signal.aborted?_():t.signal.addEventListener("abort",_)));let y=Zv(t.baseURL,t.url),A=new URL(y,"http://localhost"),E=A.protocol||xtt[0];if(E==="data:"){let K;if(d!=="GET")return BA(n,s,{status:405,statusText:"method not allowed",headers:{},config:t});try{K=Ble(t.url,u==="blob",{Blob:t.env&&t.env.Blob})}catch(ee){throw mt.from(ee,mt.ERR_BAD_REQUEST,t)}return u==="text"?(K=K.toString(l),(!l||l==="utf8")&&(K=Re.stripBOM(K))):u==="stream"&&(K=sS.default.Readable.from(K)),BA(n,s,{data:K,status:200,statusText:"OK",headers:new Ea,config:t})}if(xtt.indexOf(E)===-1)return s(new mt("Unsupported protocol "+E,mt.ERR_BAD_REQUEST,t));let v=Ea.from(t.headers).normalize();v.set("User-Agent","axios/"+nS,!1);let b=t.onDownloadProgress,I=t.onUploadProgress,T=t.maxRate,x,w;if(Re.isSpecCompliantForm(a)){let K=v.getContentType(/boundary=([-_\w\d]{10,70})/i);a=Ett(a,ee=>{v.set(ee)},{tag:`axios-${nS}-boundary`,boundary:K&&K[1]||void 0})}else if(Re.isFormData(a)&&Re.isFunction(a.getHeaders)){if(v.set(a.getHeaders()),!v.hasContentLength())try{let K=await Ptt.default.promisify(a.getLength).call(a);Number.isFinite(K)&&K>=0&&v.setContentLength(K)}catch{}}else if(Re.isBlob(a))a.size&&v.setContentType(a.type||"application/octet-stream"),v.setContentLength(a.size||0),a=sS.default.Readable.from(Q$(a));else if(a&&!Re.isStream(a)){if(!Buffer.isBuffer(a))if(Re.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(Re.isString(a))a=Buffer.from(a,"utf-8");else return s(new mt("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",mt.ERR_BAD_REQUEST,t));if(v.setContentLength(a.length,!1),t.maxBodyLength>-1&&a.length>t.maxBodyLength)return s(new mt("Request body larger than maxBodyLength limit",mt.ERR_BAD_REQUEST,t))}let D=Re.toFiniteNumber(v.getContentLength());Re.isArray(T)?(x=T[0],w=T[1]):x=w=T,a&&(I||x)&&(Re.isStream(a)||(a=sS.default.Readable.from(a,{objectMode:!1})),a=sS.default.pipeline([a,new $le({length:D,maxRate:Re.toFiniteNumber(x)})],Re.noop),I&&a.on("progress",K=>{I(Object.assign(K,{upload:!0}))}));let M;if(t.auth){let K=t.auth.username||"",ee=t.auth.password||"";M=K+":"+ee}if(!M&&A.username){let K=A.username,ee=A.password;M=K+":"+ee}M&&v.delete("authorization");let L;try{L=Jv(A.pathname+A.search,t.params,t.paramsSerializer).replace(/^\?/,"")}catch(K){let ee=new Error(K.message);return ee.config=t,ee.url=t.url,ee.exists=!0,s(ee)}v.set("Accept-Encoding","gzip, compress, deflate"+(Ctt?", br":""),!1);let U={path:L,method:d,headers:v.toJSON(),agents:{http:t.httpAgent,https:t.httpsAgent},auth:M,protocol:E,family:c,beforeRedirect:g6r,beforeRedirects:{}};!Re.isUndefined(o)&&(U.lookup=o),t.socketPath?U.socketPath=t.socketPath:(U.hostname=A.hostname,U.port=A.port,ktt(U,t.proxy,E+"//"+A.hostname+(A.port?":"+A.port:"")+U.path));let G,$=m6r.test(U.protocol);if(U.agent=$?t.httpsAgent:t.httpAgent,t.transport?G=t.transport:t.maxRedirects===0?G=$?Dtt.default:Ott.default:(t.maxRedirects&&(U.maxRedirects=t.maxRedirects),t.beforeRedirect&&(U.beforeRedirects.config=t.beforeRedirect),G=$?p6r:h6r),t.maxBodyLength>-1?U.maxBodyLength=t.maxBodyLength:U.maxBodyLength=1/0,t.insecureHTTPParser&&(U.insecureHTTPParser=t.insecureHTTPParser),p=G.request(U,function(ee){if(p.destroyed)return;let z=[ee],oe=+ee.headers["content-length"];if(b){let de=new $le({length:Re.toFiniteNumber(oe),maxRate:Re.toFiniteNumber(w)});b&&de.on("progress",B=>{b(Object.assign(B,{download:!0}))}),z.push(de)}let le=ee,te=ee.req||p;if(t.decompress!==!1&&ee.headers["content-encoding"])switch((d==="HEAD"||ee.statusCode===204)&&delete ee.headers["content-encoding"],(ee.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":z.push(Cm.default.createUnzip(Rtt)),delete ee.headers["content-encoding"];break;case"deflate":z.push(new Stt),z.push(Cm.default.createUnzip(Rtt)),delete ee.headers["content-encoding"];break;case"br":Ctt&&(z.push(Cm.default.createBrotliDecompress(f6r)),delete ee.headers["content-encoding"])}le=z.length>1?sS.default.pipeline(z,Re.noop):z[0];let Q=sS.default.finished(le,()=>{Q(),g()}),Z={status:ee.statusCode,statusText:ee.statusMessage,headers:new Ea(ee.headers),config:t,request:te};if(u==="stream")Z.data=le,BA(n,s,Z);else{let de=[],B=0;le.on("data",function(W){de.push(W),B+=W.length,t.maxContentLength>-1&&B>t.maxContentLength&&(h=!0,le.destroy(),s(new mt("maxContentLength size of "+t.maxContentLength+" exceeded",mt.ERR_BAD_RESPONSE,t,te)))}),le.on("aborted",function(){if(h)return;let W=new mt("maxContentLength size of "+t.maxContentLength+" exceeded",mt.ERR_BAD_RESPONSE,t,te);le.destroy(W),s(W)}),le.on("error",function(W){p.destroyed||s(mt.from(W,null,t,te))}),le.on("end",function(){try{let W=de.length===1?de[0]:Buffer.concat(de);u!=="arraybuffer"&&(W=W.toString(l),(!l||l==="utf8")&&(W=Re.stripBOM(W))),Z.data=W}catch(W){return s(mt.from(W,null,t,Z.request,Z))}BA(n,s,Z)})}m.once("abort",de=>{le.destroyed||(le.emit("error",de),le.destroy())})}),m.once("abort",K=>{s(K),p.destroy(K)}),p.on("error",function(ee){s(mt.from(ee,null,t,p))}),p.on("socket",function(ee){ee.setKeepAlive(!0,1e3*60)}),t.timeout){let K=parseInt(t.timeout,10);if(Number.isNaN(K)){s(new mt("error trying to parse `config.timeout` to int",mt.ERR_BAD_OPTION_VALUE,t,p));return}p.setTimeout(K,function(){if(f)return;let z=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",oe=t.transitional||iR;t.timeoutErrorMessage&&(z=t.timeoutErrorMessage),s(new mt(z,oe.clarifyTimeoutError?mt.ETIMEDOUT:mt.ECONNABORTED,t,p)),_()})}if(Re.isStream(a)){let K=!1,ee=!1;a.on("end",()=>{K=!0}),a.once("error",z=>{ee=!0,p.destroy(z)}),a.on("close",()=>{!K&&!ee&&_(new zf("Request stream has been aborted",t,p))}),a.pipe(p)}else p.end(a)})}});var Ftt,$tt=ie(()=>{ii();MA();Ftt=Aa.hasStandardBrowserEnv?{write(e,t,r,n,s,i){let a=[e+"="+encodeURIComponent(t)];Re.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),Re.isString(n)&&a.push("path="+n),Re.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){let t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}}});var qtt,Htt=ie(()=>{"use strict";ii();MA();qtt=Aa.hasStandardBrowserEnv?function(){let t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return t&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=s(window.location.href),function(a){let o=Re.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}()});function Vtt(e,t){let r=0,n=z$(50,250);return s=>{let i=s.loaded,a=s.lengthComputable?s.total:void 0,o=i-r,c=n(o),u=i<=a;r=i;let l={loaded:i,total:a,progress:a?i/a:void 0,bytes:o,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:s};l[t?"download":"upload"]=!0,e(l)}}var y6r,jtt,Ktt=ie(()=>{"use strict";ii();gle();$tt();k$();q$();Htt();B$();Kf();cR();kle();MA();kA();Ule();y6r=typeof XMLHttpRequest<"u",jtt=y6r&&function(e){return new Promise(function(r,n){let s=e.data,i=Ea.from(e.headers).normalize(),{responseType:a,withXSRFToken:o}=e,c;function u(){e.cancelToken&&e.cancelToken.unsubscribe(c),e.signal&&e.signal.removeEventListener("abort",c)}let l;if(Re.isFormData(s)){if(Aa.hasStandardBrowserEnv||Aa.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[m,...g]=l?l.split(";").map(_=>_.trim()).filter(Boolean):[];i.setContentType([m||"multipart/form-data",...g].join("; "))}}let d=new XMLHttpRequest;if(e.auth){let m=e.auth.username||"",g=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(m+":"+g))}let f=Zv(e.baseURL,e.url);d.open(e.method.toUpperCase(),Jv(f,e.params,e.paramsSerializer),!0),d.timeout=e.timeout;function h(){if(!d)return;let m=Ea.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),_={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:m,config:e,request:d};BA(function(A){r(A),u()},function(A){n(A),u()},_),d=null}if("onloadend"in d?d.onloadend=h:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(h)},d.onabort=function(){d&&(n(new mt("Request aborted",mt.ECONNABORTED,e,d)),d=null)},d.onerror=function(){n(new mt("Network Error",mt.ERR_NETWORK,e,d)),d=null},d.ontimeout=function(){let g=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",_=e.transitional||iR;e.timeoutErrorMessage&&(g=e.timeoutErrorMessage),n(new mt(g,_.clarifyTimeoutError?mt.ETIMEDOUT:mt.ECONNABORTED,e,d)),d=null},Aa.hasStandardBrowserEnv&&(o&&Re.isFunction(o)&&(o=o(e)),o||o!==!1&&qtt(f))){let m=e.xsrfHeaderName&&e.xsrfCookieName&&Ftt.read(e.xsrfCookieName);m&&i.set(e.xsrfHeaderName,m)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&Re.forEach(i.toJSON(),function(g,_){d.setRequestHeader(_,g)}),Re.isUndefined(e.withCredentials)||(d.withCredentials=!!e.withCredentials),a&&a!=="json"&&(d.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&d.addEventListener("progress",Vtt(e.onDownloadProgress,!0)),typeof e.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",Vtt(e.onUploadProgress)),(e.cancelToken||e.signal)&&(c=m=>{d&&(n(!m||m.type?new zf(null,e,d):m),d.abort(),d=null)},e.cancelToken&&e.cancelToken.subscribe(c),e.signal&&(e.signal.aborted?c():e.signal.addEventListener("abort",c)));let p=tP(f);if(p&&Aa.protocols.indexOf(p)===-1){n(new mt("Unsupported protocol "+p+":",mt.ERR_BAD_REQUEST,e));return}d.send(s||null)})}});var jle,Gtt,v6r,W$,Kle=ie(()=>{ii();Utt();Ktt();Kf();jle={http:Btt,xhr:jtt};Re.forEach(jle,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});Gtt=e=>`- ${e}`,v6r=e=>Re.isFunction(e)||e===null||e===!1,W$={getAdapter:e=>{e=Re.isArray(e)?e:[e];let{length:t}=e,r,n,s={};for(let i=0;i`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build")),a=t?i.length>1?`since : +`+i.map(Gtt).join(` +`):" "+Gtt(i[0]):"as no adapter specified";throw new mt("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:jle}});function Gle(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new zf(null,e)}function X$(e){return Gle(e),e.headers=Ea.from(e.headers),e.data=QD.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),W$.getAdapter(e.adapter||aR.adapter)(e).then(function(n){return Gle(e),n.data=QD.call(e,e.transformResponse,n),n.headers=Ea.from(n.headers),n},function(n){return WD(n)||(Gle(e),n&&n.response&&(n.response.data=QD.call(e,e.transformResponse,n.response),n.response.headers=Ea.from(n.response.headers))),Promise.reject(n)})}var ztt=ie(()=>{"use strict";qet();mle();F$();cR();kA();Kle()});function xm(e,t){t=t||{};let r={};function n(u,l,d){return Re.isPlainObject(u)&&Re.isPlainObject(l)?Re.merge.call({caseless:d},u,l):Re.isPlainObject(l)?Re.merge({},l):Re.isArray(l)?l.slice():l}function s(u,l,d){if(Re.isUndefined(l)){if(!Re.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!Re.isUndefined(l))return n(void 0,l)}function a(u,l){if(Re.isUndefined(l)){if(!Re.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in t)return n(u,l);if(d in e)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(u,l)=>s(Ytt(u),Ytt(l),!0)};return Re.forEach(Object.keys(Object.assign({},e,t)),function(l){let d=c[l]||s,f=d(e[l],t[l],l);Re.isUndefined(f)&&d!==o||(r[l]=f)}),r}var Ytt,zle=ie(()=>{"use strict";ii();kA();Ytt=e=>e instanceof Ea?e.toJSON():e});function S6r(e,t,r){if(typeof e!="object")throw new mt("options must be an object",mt.ERR_BAD_OPTION_VALUE);let n=Object.keys(e),s=n.length;for(;s-- >0;){let i=n[s],a=t[i];if(a){let o=e[i],c=o===void 0||a(o,i,e);if(c!==!0)throw new mt("option "+i+" must be "+c,mt.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new mt("Unknown option "+i,mt.ERR_BAD_OPTION)}}var Yle,Qtt,J$,Wtt=ie(()=>{"use strict";G$();Kf();Yle={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Yle[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});Qtt={};Yle.transitional=function(t,r,n){function s(i,a){return"[Axios v"+nS+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(t===!1)throw new mt(s(a," has been removed"+(r?" in "+r:"")),mt.ERR_DEPRECATED);return r&&!Qtt[a]&&(Qtt[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,a,o):!0}};J$={assertOptions:S6r,validators:Yle}});var $A,hR,nP,Xtt=ie(()=>{"use strict";ii();k$();wet();ztt();zle();q$();Wtt();kA();$A=J$.validators,hR=class{constructor(t){this.defaults=t,this.interceptors={request:new ule,response:new ule}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=` +`+i):n.stack=i}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=xm(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&J$.assertOptions(n,{silentJSONParsing:$A.transitional($A.boolean),forcedJSONParsing:$A.transitional($A.boolean),clarifyTimeoutError:$A.transitional($A.boolean)},!1),s!=null&&(Re.isFunction(s)?r.paramsSerializer={serialize:s}:J$.assertOptions(s,{encode:$A.function,serialize:$A.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&Re.merge(i.common,i[r.method]);i&&Re.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),r.headers=Ea.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(m){typeof m.runWhen=="function"&&m.runWhen(r)===!1||(c=c&&m.synchronous,o.unshift(m.fulfilled,m.rejected))});let u=[];this.interceptors.response.forEach(function(m){u.push(m.fulfilled,m.rejected)});let l,d=0,f;if(!c){let p=[X$.bind(this),void 0];for(p.unshift.apply(p,o),p.push.apply(p,u),f=p.length,l=Promise.resolve(r);d{"use strict";cR();Qle=class e{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});let n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i,a=new Promise(o=>{n.subscribe(o),i=o}).then(s);return a.cancel=function(){n.unsubscribe(i)},a},t(function(i,a,o){n.reason||(n.reason=new zf(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}static source(){let t;return{token:new e(function(s){t=s}),cancel:t}}},Jtt=Qle});function Wle(e){return function(r){return e.apply(null,r)}}var ert=ie(()=>{"use strict"});function Xle(e){return Re.isObject(e)&&e.isAxiosError===!0}var trt=ie(()=>{"use strict";ii()});var Jle,rrt,nrt=ie(()=>{Jle={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Jle).forEach(([e,t])=>{Jle[t]=e});rrt=Jle});function srt(e){let t=new nP(e),r=FD(nP.prototype.request,t);return Re.extend(r,nP.prototype,t,{allOwnKeys:!0}),Re.extend(r,t,null,{allOwnKeys:!0}),r.create=function(s){return srt(xm(e,s))},r}var sa,ye,irt=ie(()=>{"use strict";ii();Mue();Xtt();zle();F$();fle();cR();Ztt();mle();G$();zD();Kf();ert();trt();kA();Kle();nrt();sa=srt(aR);sa.Axios=nP;sa.CanceledError=zf;sa.CancelToken=Jtt;sa.isCancel=WD;sa.VERSION=nS;sa.toFormData=LA;sa.AxiosError=mt;sa.Cancel=sa.CanceledError;sa.all=function(t){return Promise.all(t)};sa.spread=Wle;sa.isAxiosError=Xle;sa.mergeConfig=xm;sa.AxiosHeaders=Ea;sa.formToJSON=e=>U$(Re.isHTMLForm(e)?new FormData(e):e);sa.getAdapter=W$.getAdapter;sa.HttpStatusCode=rrt;sa.default=sa;ye=sa});var uJn,lJn,dJn,fJn,hJn,pJn,mJn,gJn,_Jn,AJn,EJn,yJn,vJn,SJn,TJn,bJn,vr=ie(()=>{irt();({Axios:uJn,AxiosError:lJn,CanceledError:dJn,isCancel:fJn,CancelToken:hJn,VERSION:pJn,all:mJn,Cancel:gJn,isAxiosError:_Jn,spread:AJn,toFormData:EJn,AxiosHeaders:yJn,HttpStatusCode:vJn,formToJSON:SJn,getAdapter:TJn,mergeConfig:bJn}=ye)});var Zle,_t,ia=ie(()=>{Zle=class{constructor(t=100,r=5*60*1e3){this.maxSize=t,this.ttl=r,this.cache=new Map}get(t){let r=this.cache.get(t);return r?Date.now()-r.timestamp>this.ttl?(this.cache.delete(t),null):(this.cache.delete(t),this.cache.set(t,r),r.value):null}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){let n=this.cache.keys().next().value;n!==void 0&&this.cache.delete(n)}this.cache.set(t,{value:r,timestamp:Date.now()})}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}cleanup(){let t=Date.now(),r=0;for(let[n,s]of this.cache.entries())t-s.timestamp>this.ttl&&(this.cache.delete(n),r++);return r}getStats(){return{size:this.cache.size,maxSize:this.maxSize,ttl:this.ttl,utilizationRate:(this.cache.size/this.maxSize*100).toFixed(2)+"%"}}*entries(){let t=Date.now();for(let[r,n]of[...this.cache.entries()]){if(t-n.timestamp>this.ttl){this.cache.delete(r);continue}yield[r,n.value]}}},_t=Zle});function iS(e){if(!e)return String(e);let t=e.name||"Error",r=e.code,n=e.message||"",s=e.config||{},i=s.url||e.request?._currentUrl||e.request?._options?.path,a=(s.method||"GET").toUpperCase(),o=s.timeout,c=e.response?.status;if(!e.config&&!e.response&&!e.request)return r?`${t}: ${n} (code=${r})`:`${t}: ${n}`;let u=[`${t}: ${n}`];return r&&u.push(`code=${r}`),c!==void 0&&u.push(`status=${c}`),o!==void 0&&u.push(`timeout=${o}ms`),i&&u.push(`${a} ${i}`),u.join(" | ")}var L6r,De,Nm=ie(()=>{L6r={info:(...e)=>console.log(...e),warn:(...e)=>console.warn(...e),error:(...e)=>console.error(...e),debug:(...e)=>{process.env.DEBUG&&console.log(...e)}},De=L6r});var vrt=S((UJn,yrt)=>{var gR=1e3,_R=gR*60,AR=_R*60,aS=AR*24,q6r=aS*7,H6r=aS*365.25;yrt.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return V6r(e);if(r==="number"&&isFinite(e))return t.long?K6r(e):j6r(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function V6r(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*H6r;case"weeks":case"week":case"w":return r*q6r;case"days":case"day":case"d":return r*aS;case"hours":case"hour":case"hrs":case"hr":case"h":return r*AR;case"minutes":case"minute":case"mins":case"min":case"m":return r*_R;case"seconds":case"second":case"secs":case"sec":case"s":return r*gR;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function j6r(e){var t=Math.abs(e);return t>=aS?Math.round(e/aS)+"d":t>=AR?Math.round(e/AR)+"h":t>=_R?Math.round(e/_R)+"m":t>=gR?Math.round(e/gR)+"s":e+"ms"}function K6r(e){var t=Math.abs(e);return t>=aS?r9(e,t,aS,"day"):t>=AR?r9(e,t,AR,"hour"):t>=_R?r9(e,t,_R,"minute"):t>=gR?r9(e,t,gR,"second"):e+" ms"}function r9(e,t,r,n){var s=t>=r*1.5;return Math.round(e/r)+" "+n+(s?"s":"")}});var cde=S((FJn,Srt)=>{function G6r(e){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=vrt(),r.destroy=u,Object.keys(e).forEach(l=>{r[l]=e[l]}),r.names=[],r.skips=[],r.formatters={};function t(l){let d=0;for(let f=0;f{if(b==="%%")return"%";E++;let T=r.formatters[I];if(typeof T=="function"){let x=g[E];b=T.call(_,x),g.splice(E,1),E--}return b}),r.formatArgs.call(_,g),(_.log||r.log).apply(_,g)}return m.namespace=l,m.useColors=r.useColors(),m.color=r.selectColor(l),m.extend=n,m.destroy=r.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(h!==r.namespaces&&(h=r.namespaces,p=r.enabled(l)),p),set:g=>{f=g}}),typeof r.init=="function"&&r.init(m),m}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,h=0,p=-1,m=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(i(l,d))return!1;for(let d of r.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}Srt.exports=G6r});var Trt=S((Bu,n9)=>{Bu.formatArgs=Y6r;Bu.save=Q6r;Bu.load=W6r;Bu.useColors=z6r;Bu.storage=X6r();Bu.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Bu.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function z6r(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Y6r(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+n9.exports.humanize(this.diff),!this.useColors)return;let t="color: "+this.color;e.splice(1,0,t,"color: inherit");let r=0,n=0;e[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),e.splice(n,0,t)}Bu.log=console.debug||console.log||(()=>{});function Q6r(e){try{e?Bu.storage.setItem("debug",e):Bu.storage.removeItem("debug")}catch{}}function W6r(){let e;try{e=Bu.storage.getItem("debug")||Bu.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function X6r(){try{return localStorage}catch{}}n9.exports=cde()(Bu);var{formatters:J6r}=n9.exports;J6r.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}});var Irt=S(($a,i9)=>{var Z6r=require("tty"),s9=require("util");$a.init=a5r;$a.log=n5r;$a.formatArgs=t5r;$a.save=s5r;$a.load=i5r;$a.useColors=e5r;$a.destroy=s9.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");$a.colors=[6,2,3,4,5,1];try{let e=Sle();e&&(e.stderr||e).level>=2&&($a.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}$a.inspectOpts=Object.keys(process.env).filter(e=>/^debug_/i.test(e)).reduce((e,t)=>{let r=t.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[t];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),e[r]=n,e},{});function e5r(){return"colors"in $a.inspectOpts?!!$a.inspectOpts.colors:Z6r.isatty(process.stderr.fd)}function t5r(e){let{namespace:t,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${t} \x1B[0m`;e[0]=i+e[0].split(` `).join(` -`+s),e.push(i+"m+"+vF.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=xwr()+t+" "+e[0]}function xwr(){return Ws.inspectOpts.hideDate?"":new Date().toISOString()+" "}function Cwr(...e){return process.stderr.write(AF.formatWithOptions(Ws.inspectOpts,...e)+` -`)}function Twr(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function Nwr(){return process.env.DEBUG}function Rwr(e){e.inspectOpts={};let t=Object.keys(Ws.inspectOpts);for(let r=0;rt.trim()).join(" ")};Cze.O=function(e){return this.inspectOpts.colors=this.useColors,AF.inspect(e,this.inspectOpts)}});var zie=b((HMn,Vie)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Vie.exports=xze():Vie.exports=Tze()});var Dze=b(Fu=>{"use strict";var Dwr=Fu&&Fu.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kwr=Fu&&Fu.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Nze=Fu&&Fu.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Dwr(t,e,r);return kwr(t,e),t};Object.defineProperty(Fu,"__esModule",{value:!0});Fu.req=Fu.json=Fu.toBuffer=void 0;var Owr=Nze(require("http")),Pwr=Nze(require("https"));async function Rze(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}Fu.toBuffer=Rze;async function Mwr(e){let r=(await Rze(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let i=n;throw i.message+=` (input: ${r})`,i}}Fu.json=Mwr;function Lwr(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?Pwr:Owr).request(e,t),i=new Promise((s,a)=>{n.once("response",s).once("error",a).end()});return n.then=i.then.bind(i),n}Fu.req=Lwr});var Mze=b(Ac=>{"use strict";var Oze=Ac&&Ac.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bwr=Ac&&Ac.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Pze=Ac&&Ac.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Oze(t,e,r);return Bwr(t,e),t},$wr=Ac&&Ac.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Oze(t,e,r)};Object.defineProperty(Ac,"__esModule",{value:!0});Ac.Agent=void 0;var Fwr=Pze(require("net")),kze=Pze(require("http")),Uwr=require("https");$wr(Dze(),Ac);var ip=Symbol("AgentBaseInternalState"),Qie=class extends kze.Agent{constructor(t){super(t),this[ip]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new Fwr.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],i=n.indexOf(r);i!==-1&&(n.splice(i,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return this.isSecureEndpoint(t)?Uwr.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let i={...r,secureEndpoint:this.isSecureEndpoint(r)},s=this.getName(i),a=this.incrementSockets(s);Promise.resolve().then(()=>this.connect(t,i)).then(o=>{if(this.decrementSockets(s,a),o instanceof kze.Agent)try{return o.addRequest(t,i)}catch(u){return n(u)}this[ip].currentSocket=o,super.createSocket(t,r,n)},o=>{this.decrementSockets(s,a),n(o)})}createConnection(){let t=this[ip].currentSocket;if(this[ip].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[ip].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[ip]&&(this[ip].defaultPort=t)}get protocol(){return this[ip].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[ip]&&(this[ip].protocol=t)}};Ac.Agent=Qie});var Lze=b(XS=>{"use strict";var qwr=XS&&XS.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XS,"__esModule",{value:!0});XS.parseProxyResponse=void 0;var jwr=qwr(zie()),bF=(0,jwr.default)("https-proxy-agent:parse-proxy-response");function Hwr(e){return new Promise((t,r)=>{let n=0,i=[];function s(){let l=e.read();l?c(l):e.once("readable",s)}function a(){e.removeListener("end",o),e.removeListener("error",u),e.removeListener("readable",s)}function o(){a(),bF("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function u(l){a(),bF("onerror %o",l),r(l)}function c(l){i.push(l),n+=l.length;let d=Buffer.concat(i,n),f=d.indexOf(`\r +`+i),e.push(s+"m+"+i9.exports.humanize(this.diff)+"\x1B[0m")}else e[0]=r5r()+t+" "+e[0]}function r5r(){return $a.inspectOpts.hideDate?"":new Date().toISOString()+" "}function n5r(...e){return process.stderr.write(s9.formatWithOptions($a.inspectOpts,...e)+` +`)}function s5r(e){e?process.env.DEBUG=e:delete process.env.DEBUG}function i5r(){return process.env.DEBUG}function a5r(e){e.inspectOpts={};let t=Object.keys($a.inspectOpts);for(let r=0;rt.trim()).join(" ")};brt.O=function(e){return this.inspectOpts.colors=this.useColors,s9.inspect(e,this.inspectOpts)}});var lde=S(($Jn,ude)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?ude.exports=Trt():ude.exports=Irt()});var xrt=S(Uu=>{"use strict";var o5r=Uu&&Uu.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),c5r=Uu&&Uu.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Rrt=Uu&&Uu.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&o5r(t,e,r);return c5r(t,e),t};Object.defineProperty(Uu,"__esModule",{value:!0});Uu.req=Uu.json=Uu.toBuffer=void 0;var u5r=Rrt(require("http")),l5r=Rrt(require("https"));async function Crt(e){let t=0,r=[];for await(let n of e)t+=n.length,r.push(n);return Buffer.concat(r,t)}Uu.toBuffer=Crt;async function d5r(e){let r=(await Crt(e)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}Uu.json=d5r;function f5r(e,t={}){let n=((typeof e=="string"?e:e.href).startsWith("https:")?l5r:u5r).request(e,t),s=new Promise((i,a)=>{n.once("response",i).once("error",a).end()});return n.then=s.then.bind(s),n}Uu.req=f5r});var Drt=S(Rl=>{"use strict";var Nrt=Rl&&Rl.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),h5r=Rl&&Rl.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ort=Rl&&Rl.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Nrt(t,e,r);return h5r(t,e),t},p5r=Rl&&Rl.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&Nrt(t,e,r)};Object.defineProperty(Rl,"__esModule",{value:!0});Rl.Agent=void 0;var m5r=Ort(require("net")),wrt=Ort(require("http")),g5r=require("https");p5r(xrt(),Rl);var xh=Symbol("AgentBaseInternalState"),dde=class extends wrt.Agent{constructor(t){super(t),this[xh]={}}isSecureEndpoint(t){if(t){if(typeof t.secureEndpoint=="boolean")return t.secureEndpoint;if(typeof t.protocol=="string")return t.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(t){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[t]||(this.sockets[t]=[]);let r=new m5r.Socket({writable:!1});return this.sockets[t].push(r),this.totalSocketCount++,r}decrementSockets(t,r){if(!this.sockets[t]||r===null)return;let n=this.sockets[t],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[t])}getName(t){return this.isSecureEndpoint(t)?g5r.Agent.prototype.getName.call(this,t):super.getName(t)}createSocket(t,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},i=this.getName(s),a=this.incrementSockets(i);Promise.resolve().then(()=>this.connect(t,s)).then(o=>{if(this.decrementSockets(i,a),o instanceof wrt.Agent)try{return o.addRequest(t,s)}catch(c){return n(c)}this[xh].currentSocket=o,super.createSocket(t,r,n)},o=>{this.decrementSockets(i,a),n(o)})}createConnection(){let t=this[xh].currentSocket;if(this[xh].currentSocket=void 0,!t)throw new Error("No socket was returned in the `connect()` function");return t}get defaultPort(){return this[xh].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(t){this[xh]&&(this[xh].defaultPort=t)}get protocol(){return this[xh].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(t){this[xh]&&(this[xh].protocol=t)}};Rl.Agent=dde});var Prt=S(ER=>{"use strict";var _5r=ER&&ER.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ER,"__esModule",{value:!0});ER.parseProxyResponse=void 0;var A5r=_5r(lde()),a9=(0,A5r.default)("https-proxy-agent:parse-proxy-response");function E5r(e){return new Promise((t,r)=>{let n=0,s=[];function i(){let l=e.read();l?u(l):e.once("readable",i)}function a(){e.removeListener("end",o),e.removeListener("error",c),e.removeListener("readable",i)}function o(){a(),a9("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function c(l){a(),a9("onerror %o",l),r(l)}function u(l){s.push(l),n+=l.length;let d=Buffer.concat(s,n),f=d.indexOf(`\r \r -`);if(f===-1){bF("have not received end of HTTP headers yet..."),s();return}let p=d.slice(0,f).toString("ascii").split(`\r -`),h=p.shift();if(!h)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let m=h.split(" "),y=+m[1],g=m.slice(2).join(" "),v={};for(let A of p){if(!A)continue;let _=A.indexOf(":");if(_===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${A}"`));let E=A.slice(0,_).toLowerCase(),S=A.slice(_+1).trimStart(),C=v[E];typeof C=="string"?v[E]=[C,S]:Array.isArray(C)?C.push(S):v[E]=S}bF("got proxy server response: %o %o",h,v),a(),t({connect:{statusCode:y,statusText:g,headers:v},buffered:d})}e.on("error",u),e.on("end",o),s()})}XS.parseProxyResponse=Hwr});var jze=b(bl=>{"use strict";var Kwr=bl&&bl.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Vwr=bl&&bl.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Uze=bl&&bl.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Kwr(t,e,r);return Vwr(t,e),t},qze=bl&&bl.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bl,"__esModule",{value:!0});bl.HttpsProxyAgent=void 0;var EF=Uze(require("net")),Bze=Uze(require("tls")),zwr=qze(require("assert")),Qwr=qze(zie()),Gwr=Mze(),Ywr=require("url"),Wwr=Lze(),eR=(0,Qwr.default)("https-proxy-agent"),$ze=e=>e.servername===void 0&&e.host&&!EF.isIP(e.host)?{...e,servername:e.host}:e,SF=class extends Gwr.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new Ywr.URL(t):t,this.proxyHeaders=r?.headers??{},eR("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),i=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?Fze(r,"headers"):null,host:n,port:i}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let i;n.protocol==="https:"?(eR("Creating `tls.Socket`: %o",this.connectOpts),i=Bze.connect($ze(this.connectOpts))):(eR("Creating `net.Socket`: %o",this.connectOpts),i=EF.connect(this.connectOpts));let s=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=EF.isIPv6(r.host)?`[${r.host}]`:r.host,o=`CONNECT ${a}:${r.port} HTTP/1.1\r -`;if(n.username||n.password){let f=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;s["Proxy-Authorization"]=`Basic ${Buffer.from(f).toString("base64")}`}s.Host=`${a}:${r.port}`,s["Proxy-Connection"]||(s["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let f of Object.keys(s))o+=`${f}: ${s[f]}\r -`;let u=(0,Wwr.parseProxyResponse)(i);i.write(`${o}\r -`);let{connect:c,buffered:l}=await u;if(t.emit("proxyConnect",c),this.emit("proxyConnect",c,t),c.statusCode===200)return t.once("socket",Xwr),r.secureEndpoint?(eR("Upgrading socket connection to TLS"),Bze.connect({...Fze($ze(r),"host","path","port"),socket:i})):i;i.destroy();let d=new EF.Socket({writable:!1});return d.readable=!0,t.once("socket",f=>{eR("Replaying proxy buffer for failed request"),(0,zwr.default)(f.listenerCount("data")>0),f.push(l),f.push(null)}),d}};SF.protocols=["http","https"];bl.HttpsProxyAgent=SF;function Xwr(e){e.resume()}function Fze(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var Hze=b((GMn,Jwr)=>{Jwr.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Gze=b((YMn,Zh)=>{var Gie=require("fs"),wF=require("path"),Zwr=require("os"),eIr=require("crypto"),tIr=Hze(),Yie=tIr.version,rIr=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function nIr(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` -`);let n;for(;(n=rIr.exec(r))!=null;){let i=n[1],s=n[2]||"";s=s.trim();let a=s[0];s=s.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),a==='"'&&(s=s.replace(/\\n/g,` -`),s=s.replace(/\\r/g,"\r")),t[i]=s}return t}function iIr(e){e=e||{};let t=Qze(e);e.path=t;let r=Ps.configDotenv(e);if(!r.parsed){let a=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw a.code="MISSING_DATA",a}let n=zze(e).split(","),i=n.length,s;for(let a=0;a=i)throw o}return Ps.parse(s)}function sIr(e){console.log(`[dotenv@${Yie}][WARN] ${e}`)}function tR(e){console.log(`[dotenv@${Yie}][DEBUG] ${e}`)}function Vze(e){console.log(`[dotenv@${Yie}] ${e}`)}function zze(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function aIr(e,t){let r;try{r=new URL(t)}catch(o){if(o.code==="ERR_INVALID_URL"){let u=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw u.code="INVALID_DOTENV_KEY",u}throw o}let n=r.password;if(!n){let o=new Error("INVALID_DOTENV_KEY: Missing key part");throw o.code="INVALID_DOTENV_KEY",o}let i=r.searchParams.get("environment");if(!i){let o=new Error("INVALID_DOTENV_KEY: Missing environment part");throw o.code="INVALID_DOTENV_KEY",o}let s=`DOTENV_VAULT_${i.toUpperCase()}`,a=e.parsed[s];if(!a){let o=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${s} in your .env.vault file.`);throw o.code="NOT_FOUND_DOTENV_ENVIRONMENT",o}return{ciphertext:a,key:n}}function Qze(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)Gie.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=wF.resolve(process.cwd(),".env.vault");return Gie.existsSync(t)?t:null}function Kze(e){return e[0]==="~"?wF.join(Zwr.homedir(),e.slice(1)):e}function oIr(e){let t=!!(e&&e.debug),r=e&&"quiet"in e?e.quiet:!0;(t||!r)&&Vze("Loading env from encrypted .env.vault");let n=Ps._parseVault(e),i=process.env;return e&&e.processEnv!=null&&(i=e.processEnv),Ps.populate(i,n,e),{parsed:n}}function uIr(e){let t=wF.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug),i=e&&"quiet"in e?e.quiet:!0;e&&e.encoding?r=e.encoding:n&&tR("No encoding is specified. UTF-8 is used by default");let s=[t];if(e&&e.path)if(!Array.isArray(e.path))s=[Kze(e.path)];else{s=[];for(let c of e.path)s.push(Kze(c))}let a,o={};for(let c of s)try{let l=Ps.parse(Gie.readFileSync(c,{encoding:r}));Ps.populate(o,l,e)}catch(l){n&&tR(`Failed to load ${c} ${l.message}`),a=l}let u=process.env;if(e&&e.processEnv!=null&&(u=e.processEnv),Ps.populate(u,o,e),n||!i){let c=Object.keys(o).length,l=[];for(let d of s)try{let f=wF.relative(process.cwd(),d);l.push(f)}catch(f){n&&tR(`Failed to load ${d} ${f.message}`),a=f}Vze(`injecting env (${c}) from ${l.join(",")}`)}return a?{parsed:o,error:a}:{parsed:o}}function cIr(e){if(zze(e).length===0)return Ps.configDotenv(e);let t=Qze(e);return t?Ps._configVault(e):(sIr(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),Ps.configDotenv(e))}function lIr(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),i=n.subarray(0,12),s=n.subarray(-16);n=n.subarray(12,-16);try{let a=eIr.createDecipheriv("aes-256-gcm",r,i);return a.setAuthTag(s),`${a.update(n)}${a.final()}`}catch(a){let o=a instanceof RangeError,u=a.message==="Invalid key length",c=a.message==="Unsupported state or unable to authenticate data";if(o||u){let l=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw l.code="INVALID_DOTENV_KEY",l}else if(c){let l=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw l.code="DECRYPTION_FAILED",l}else throw a}}function dIr(e,t,r={}){let n=!!(r&&r.debug),i=!!(r&&r.override);if(typeof t!="object"){let s=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw s.code="OBJECT_REQUIRED",s}for(let s of Object.keys(t))Object.prototype.hasOwnProperty.call(e,s)?(i===!0&&(e[s]=t[s]),n&&tR(i===!0?`"${s}" is already defined and WAS overwritten`:`"${s}" is already defined and was NOT overwritten`)):e[s]=t[s]}var Ps={configDotenv:uIr,_configVault:oIr,_parseVault:iIr,config:cIr,decrypt:lIr,parse:nIr,populate:dIr};Zh.exports.configDotenv=Ps.configDotenv;Zh.exports._configVault=Ps._configVault;Zh.exports._parseVault=Ps._parseVault;Zh.exports.config=Ps.config;Zh.exports.decrypt=Ps.decrypt;Zh.exports.parse=Ps.parse;Zh.exports.populate=Ps.populate;Zh.exports=Ps});function fIr(e){if(!/^data:/i.test(e))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');e=e.replace(/\r?\n/g,"");let t=e.indexOf(",");if(t===-1||t<=4)throw new TypeError("malformed data: URI");let r=e.substring(5,t).split(";"),n="",i=!1,s=r[0]||"text/plain",a=s;for(let l=1;l{Yze=fIr});var Jze=b((IF,Xze)=>{(function(e,t){typeof IF=="object"&&typeof Xze<"u"?t(IF):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.WebStreamsPolyfill={}))})(IF,function(e){"use strict";function t(){}function r(w){return typeof w=="object"&&w!==null||typeof w=="function"}let n=t;function i(w,D){try{Object.defineProperty(w,"name",{value:D,configurable:!0})}catch{}}let s=Promise,a=Promise.prototype.then,o=Promise.reject.bind(s);function u(w){return new s(w)}function c(w){return u(D=>D(w))}function l(w){return o(w)}function d(w,D,U){return a.call(w,D,U)}function f(w,D,U){d(d(w,D,U),void 0,n)}function p(w,D){f(w,D)}function h(w,D){f(w,void 0,D)}function m(w,D,U){return d(w,D,U)}function y(w){d(w,void 0,n)}let g=w=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let D=c(void 0);g=U=>d(D,U)}return g(w)};function v(w,D,U){if(typeof w!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(w,D,U)}function A(w,D,U){try{return c(v(w,D,U))}catch(se){return l(se)}}let _=16384;class E{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(D){let U=this._back,se=U;U._elements.length===_-1&&(se={_elements:[],_next:void 0}),U._elements.push(D),se!==U&&(this._back=se,U._next=se),++this._size}shift(){let D=this._front,U=D,se=this._cursor,fe=se+1,Ae=D._elements,we=Ae[se];return fe===_&&(U=D._next,fe=0),--this._size,this._cursor=fe,D!==U&&(this._front=U),Ae[se]=void 0,we}forEach(D){let U=this._cursor,se=this._front,fe=se._elements;for(;(U!==fe.length||se._next!==void 0)&&!(U===fe.length&&(se=se._next,fe=se._elements,U=0,fe.length===0));)D(fe[U]),++U}peek(){let D=this._front,U=this._cursor;return D._elements[U]}}let S=Symbol("[[AbortSteps]]"),C=Symbol("[[ErrorSteps]]"),I=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),T=Symbol("[[ReleaseSteps]]");function k(w,D){w._ownerReadableStream=D,D._reader=w,D._state==="readable"?Q(w):D._state==="closed"?z(w):j(w,D._storedError)}function O(w,D){let U=w._ownerReadableStream;return cd(U,D)}function P(w){let D=w._ownerReadableStream;D._state==="readable"?X(w,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):K(w,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),D._readableStreamController[T](),D._reader=void 0,w._ownerReadableStream=void 0}function $(w){return new TypeError("Cannot "+w+" a stream using a released reader")}function Q(w){w._closedPromise=u((D,U)=>{w._closedPromise_resolve=D,w._closedPromise_reject=U})}function j(w,D){Q(w),X(w,D)}function z(w){Q(w),Z(w)}function X(w,D){w._closedPromise_reject!==void 0&&(y(w._closedPromise),w._closedPromise_reject(D),w._closedPromise_resolve=void 0,w._closedPromise_reject=void 0)}function K(w,D){j(w,D)}function Z(w){w._closedPromise_resolve!==void 0&&(w._closedPromise_resolve(void 0),w._closedPromise_resolve=void 0,w._closedPromise_reject=void 0)}let Y=Number.isFinite||function(w){return typeof w=="number"&&isFinite(w)},ie=Math.trunc||function(w){return w<0?Math.ceil(w):Math.floor(w)};function ue(w){return typeof w=="object"||typeof w=="function"}function he(w,D){if(w!==void 0&&!ue(w))throw new TypeError(`${D} is not an object.`)}function ye(w,D){if(typeof w!="function")throw new TypeError(`${D} is not a function.`)}function q(w){return typeof w=="object"&&w!==null||typeof w=="function"}function B(w,D){if(!q(w))throw new TypeError(`${D} is not an object.`)}function ae(w,D,U){if(w===void 0)throw new TypeError(`Parameter ${D} is required in '${U}'.`)}function M(w,D,U){if(w===void 0)throw new TypeError(`${D} is required in '${U}'.`)}function F(w){return Number(w)}function V(w){return w===0?0:w}function H(w){return V(ie(w))}function G(w,D){let se=Number.MAX_SAFE_INTEGER,fe=Number(w);if(fe=V(fe),!Y(fe))throw new TypeError(`${D} is not a finite number`);if(fe=H(fe),fe<0||fe>se)throw new TypeError(`${D} is outside the accepted range of 0 to ${se}, inclusive`);return!Y(fe)||fe===0?0:fe}function J(w,D){if(!Y0(w))throw new TypeError(`${D} is not a ReadableStream.`)}function ee(w){return new pe(w)}function te(w,D){w._reader._readRequests.push(D)}function re(w,D,U){let fe=w._reader._readRequests.shift();U?fe._closeSteps():fe._chunkSteps(D)}function ce(w){return w._reader._readRequests.length}function de(w){let D=w._reader;return!(D===void 0||!Ce(D))}class pe{constructor(D){if(ae(D,1,"ReadableStreamDefaultReader"),J(D,"First parameter"),W0(D))throw new TypeError("This stream has already been locked for exclusive reading by another reader");k(this,D),this._readRequests=new E}get closed(){return Ce(this)?this._closedPromise:l(Te("closed"))}cancel(D=void 0){return Ce(this)?this._ownerReadableStream===void 0?l($("cancel")):O(this,D):l(Te("cancel"))}read(){if(!Ce(this))return l(Te("read"));if(this._ownerReadableStream===void 0)return l($("read from"));let D,U,se=u((Ae,we)=>{D=Ae,U=we});return $e(this,{_chunkSteps:Ae=>D({value:Ae,done:!1}),_closeSteps:()=>D({value:void 0,done:!0}),_errorSteps:Ae=>U(Ae)}),se}releaseLock(){if(!Ce(this))throw Te("releaseLock");this._ownerReadableStream!==void 0&&We(this)}}Object.defineProperties(pe.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),i(pe.prototype.cancel,"cancel"),i(pe.prototype.read,"read"),i(pe.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(pe.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Ce(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_readRequests")?!1:w instanceof pe}function $e(w,D){let U=w._ownerReadableStream;U._disturbed=!0,U._state==="closed"?D._closeSteps():U._state==="errored"?D._errorSteps(U._storedError):U._readableStreamController[N](D)}function We(w){P(w);let D=new TypeError("Reader was released");Ve(w,D)}function Ve(w,D){let U=w._readRequests;w._readRequests=new E,U.forEach(se=>{se._errorSteps(D)})}function Te(w){return new TypeError(`ReadableStreamDefaultReader.prototype.${w} can only be used on a ReadableStreamDefaultReader`)}let Ne=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class Ue{constructor(D,U){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=D,this._preventCancel=U}next(){let D=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?m(this._ongoingPromise,D,D):D(),this._ongoingPromise}return(D){let U=()=>this._returnSteps(D);return this._ongoingPromise?m(this._ongoingPromise,U,U):U()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let D=this._reader,U,se,fe=u((we,Je)=>{U=we,se=Je});return $e(D,{_chunkSteps:we=>{this._ongoingPromise=void 0,g(()=>U({value:we,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,P(D),U({value:void 0,done:!0})},_errorSteps:we=>{this._ongoingPromise=void 0,this._isFinished=!0,P(D),se(we)}}),fe}_returnSteps(D){if(this._isFinished)return Promise.resolve({value:D,done:!0});this._isFinished=!0;let U=this._reader;if(!this._preventCancel){let se=O(U,D);return P(U),m(se,()=>({value:D,done:!0}))}return P(U),c({value:D,done:!0})}}let Me={next(){return Be(this)?this._asyncIteratorImpl.next():l(It("next"))},return(w){return Be(this)?this._asyncIteratorImpl.return(w):l(It("return"))}};Object.setPrototypeOf(Me,Ne);function Ge(w,D){let U=ee(w),se=new Ue(U,D),fe=Object.create(Me);return fe._asyncIteratorImpl=se,fe}function Be(w){if(!r(w)||!Object.prototype.hasOwnProperty.call(w,"_asyncIteratorImpl"))return!1;try{return w._asyncIteratorImpl instanceof Ue}catch{return!1}}function It(w){return new TypeError(`ReadableStreamAsyncIterator.${w} can only be used on a ReadableSteamAsyncIterator`)}let Ze=Number.isNaN||function(w){return w!==w};var $t,Nt,St;function ft(w){return w.slice()}function jo(w,D,U,se,fe){new Uint8Array(w).set(new Uint8Array(U,se,fe),D)}let Kr=w=>(typeof w.transfer=="function"?Kr=D=>D.transfer():typeof structuredClone=="function"?Kr=D=>structuredClone(D,{transfer:[D]}):Kr=D=>D,Kr(w)),za=w=>(typeof w.detached=="boolean"?za=D=>D.detached:za=D=>D.byteLength===0,za(w));function Ho(w,D,U){if(w.slice)return w.slice(D,U);let se=U-D,fe=new ArrayBuffer(se);return jo(fe,0,w,D,se),fe}function $n(w,D){let U=w[D];if(U!=null){if(typeof U!="function")throw new TypeError(`${String(D)} is not a function`);return U}}function ad(w){let D={[Symbol.iterator]:()=>w.iterator},U=async function*(){return yield*D}(),se=U.next;return{iterator:U,nextMethod:se,done:!1}}let X_=(St=($t=Symbol.asyncIterator)!==null&&$t!==void 0?$t:(Nt=Symbol.for)===null||Nt===void 0?void 0:Nt.call(Symbol,"Symbol.asyncIterator"))!==null&&St!==void 0?St:"@@asyncIterator";function Sa(w,D="sync",U){if(U===void 0)if(D==="async"){if(U=$n(w,X_),U===void 0){let Ae=$n(w,Symbol.iterator),we=Sa(w,"sync",Ae);return ad(we)}}else U=$n(w,Symbol.iterator);if(U===void 0)throw new TypeError("The object is not iterable");let se=v(U,w,[]);if(!r(se))throw new TypeError("The iterator method must return an object");let fe=se.next;return{iterator:se,nextMethod:fe,done:!1}}function wa(w){let D=v(w.nextMethod,w.iterator,[]);if(!r(D))throw new TypeError("The iterator.next() method must return an object");return D}function Gc(w){return!!w.done}function hc(w){return w.value}function od(w){return!(typeof w!="number"||Ze(w)||w<0)}function mc(w){let D=Ho(w.buffer,w.byteOffset,w.byteOffset+w.byteLength);return new Uint8Array(D)}function Fn(w){let D=w._queue.shift();return w._queueTotalSize-=D.size,w._queueTotalSize<0&&(w._queueTotalSize=0),D.value}function Qa(w,D,U){if(!od(U)||U===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");w._queue.push({value:D,size:U}),w._queueTotalSize+=U}function KE(w){return w._queue.peek().value}function Nf(w){w._queue=new E,w._queueTotalSize=0}function j2e(w){return w===DataView}function r8t(w){return j2e(w.constructor)}function n8t(w){return j2e(w)?1:w.BYTES_PER_ELEMENT}class J_{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!pQ(this))throw _Q("view");return this._view}respond(D){if(!pQ(this))throw _Q("respond");if(ae(D,1,"respond"),D=G(D,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(za(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");o4(this._associatedReadableByteStreamController,D)}respondWithNewView(D){if(!pQ(this))throw _Q("respondWithNewView");if(ae(D,1,"respondWithNewView"),!ArrayBuffer.isView(D))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(za(D.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");u4(this._associatedReadableByteStreamController,D)}}Object.defineProperties(J_.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),i(J_.prototype.respond,"respond"),i(J_.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(J_.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class yh{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!Z_(this))throw JC("byobRequest");return yQ(this)}get desiredSize(){if(!Z_(this))throw JC("desiredSize");return J2e(this)}close(){if(!Z_(this))throw JC("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let D=this._controlledReadableByteStream._state;if(D!=="readable")throw new TypeError(`The stream (in ${D} state) is not in the readable state and cannot be closed`);XC(this)}enqueue(D){if(!Z_(this))throw JC("enqueue");if(ae(D,1,"enqueue"),!ArrayBuffer.isView(D))throw new TypeError("chunk must be an array buffer view");if(D.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(D.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let U=this._controlledReadableByteStream._state;if(U!=="readable")throw new TypeError(`The stream (in ${U} state) is not in the readable state and cannot be enqueued to`);a4(this,D)}error(D=void 0){if(!Z_(this))throw JC("error");Yc(this,D)}[I](D){H2e(this),Nf(this);let U=this._cancelAlgorithm(D);return s4(this),U}[N](D){let U=this._controlledReadableByteStream;if(this._queueTotalSize>0){X2e(this,D);return}let se=this._autoAllocateChunkSize;if(se!==void 0){let fe;try{fe=new ArrayBuffer(se)}catch(we){D._errorSteps(we);return}let Ae={buffer:fe,bufferByteLength:se,byteOffset:0,byteLength:se,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(Ae)}te(U,D),eA(this)}[T](){if(this._pendingPullIntos.length>0){let D=this._pendingPullIntos.peek();D.readerType="none",this._pendingPullIntos=new E,this._pendingPullIntos.push(D)}}}Object.defineProperties(yh.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),i(yh.prototype.close,"close"),i(yh.prototype.enqueue,"enqueue"),i(yh.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(yh.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function Z_(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_controlledReadableByteStream")?!1:w instanceof yh}function pQ(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_associatedReadableByteStreamController")?!1:w instanceof J_}function eA(w){if(!u8t(w))return;if(w._pulling){w._pullAgain=!0;return}w._pulling=!0;let U=w._pullAlgorithm();f(U,()=>(w._pulling=!1,w._pullAgain&&(w._pullAgain=!1,eA(w)),null),se=>(Yc(w,se),null))}function H2e(w){mQ(w),w._pendingPullIntos=new E}function hQ(w,D){let U=!1;w._state==="closed"&&(U=!0);let se=K2e(D);D.readerType==="default"?re(w,se,U):h8t(w,se,U)}function K2e(w){let D=w.bytesFilled,U=w.elementSize;return new w.viewConstructor(w.buffer,w.byteOffset,D/U)}function i4(w,D,U,se){w._queue.push({buffer:D,byteOffset:U,byteLength:se}),w._queueTotalSize+=se}function V2e(w,D,U,se){let fe;try{fe=Ho(D,U,U+se)}catch(Ae){throw Yc(w,Ae),Ae}i4(w,fe,0,se)}function z2e(w,D){D.bytesFilled>0&&V2e(w,D.buffer,D.byteOffset,D.bytesFilled),VE(w)}function Q2e(w,D){let U=Math.min(w._queueTotalSize,D.byteLength-D.bytesFilled),se=D.bytesFilled+U,fe=U,Ae=!1,we=se%D.elementSize,Je=se-we;Je>=D.minimumFill&&(fe=Je-D.bytesFilled,Ae=!0);let xt=w._queue;for(;fe>0;){let gt=xt.peek(),Ft=Math.min(fe,gt.byteLength),er=D.byteOffset+D.bytesFilled;jo(D.buffer,er,gt.buffer,gt.byteOffset,Ft),gt.byteLength===Ft?xt.shift():(gt.byteOffset+=Ft,gt.byteLength-=Ft),w._queueTotalSize-=Ft,G2e(w,Ft,D),fe-=Ft}return Ae}function G2e(w,D,U){U.bytesFilled+=D}function Y2e(w){w._queueTotalSize===0&&w._closeRequested?(s4(w),iT(w._controlledReadableByteStream)):eA(w)}function mQ(w){w._byobRequest!==null&&(w._byobRequest._associatedReadableByteStreamController=void 0,w._byobRequest._view=null,w._byobRequest=null)}function gQ(w){for(;w._pendingPullIntos.length>0;){if(w._queueTotalSize===0)return;let D=w._pendingPullIntos.peek();Q2e(w,D)&&(VE(w),hQ(w._controlledReadableByteStream,D))}}function i8t(w){let D=w._controlledReadableByteStream._reader;for(;D._readRequests.length>0;){if(w._queueTotalSize===0)return;let U=D._readRequests.shift();X2e(w,U)}}function s8t(w,D,U,se){let fe=w._controlledReadableByteStream,Ae=D.constructor,we=n8t(Ae),{byteOffset:Je,byteLength:xt}=D,gt=U*we,Ft;try{Ft=Kr(D.buffer)}catch(Un){se._errorSteps(Un);return}let er={buffer:Ft,bufferByteLength:Ft.byteLength,byteOffset:Je,byteLength:xt,bytesFilled:0,minimumFill:gt,elementSize:we,viewConstructor:Ae,readerType:"byob"};if(w._pendingPullIntos.length>0){w._pendingPullIntos.push(er),tNe(fe,se);return}if(fe._state==="closed"){let Un=new Ae(er.buffer,er.byteOffset,0);se._closeSteps(Un);return}if(w._queueTotalSize>0){if(Q2e(w,er)){let Un=K2e(er);Y2e(w),se._chunkSteps(Un);return}if(w._closeRequested){let Un=new TypeError("Insufficient bytes to fill elements in the given buffer");Yc(w,Un),se._errorSteps(Un);return}}w._pendingPullIntos.push(er),tNe(fe,se),eA(w)}function a8t(w,D){D.readerType==="none"&&VE(w);let U=w._controlledReadableByteStream;if(AQ(U))for(;rNe(U)>0;){let se=VE(w);hQ(U,se)}}function o8t(w,D,U){if(G2e(w,D,U),U.readerType==="none"){z2e(w,U),gQ(w);return}if(U.bytesFilled0){let fe=U.byteOffset+U.bytesFilled;V2e(w,U.buffer,fe-se,se)}U.bytesFilled-=se,hQ(w._controlledReadableByteStream,U),gQ(w)}function W2e(w,D){let U=w._pendingPullIntos.peek();mQ(w),w._controlledReadableByteStream._state==="closed"?a8t(w,U):o8t(w,D,U),eA(w)}function VE(w){return w._pendingPullIntos.shift()}function u8t(w){let D=w._controlledReadableByteStream;return D._state!=="readable"||w._closeRequested||!w._started?!1:!!(de(D)&&ce(D)>0||AQ(D)&&rNe(D)>0||J2e(w)>0)}function s4(w){w._pullAlgorithm=void 0,w._cancelAlgorithm=void 0}function XC(w){let D=w._controlledReadableByteStream;if(!(w._closeRequested||D._state!=="readable")){if(w._queueTotalSize>0){w._closeRequested=!0;return}if(w._pendingPullIntos.length>0){let U=w._pendingPullIntos.peek();if(U.bytesFilled%U.elementSize!==0){let se=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Yc(w,se),se}}s4(w),iT(D)}}function a4(w,D){let U=w._controlledReadableByteStream;if(w._closeRequested||U._state!=="readable")return;let{buffer:se,byteOffset:fe,byteLength:Ae}=D;if(za(se))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let we=Kr(se);if(w._pendingPullIntos.length>0){let Je=w._pendingPullIntos.peek();if(za(Je.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");mQ(w),Je.buffer=Kr(Je.buffer),Je.readerType==="none"&&z2e(w,Je)}if(de(U))if(i8t(w),ce(U)===0)i4(w,we,fe,Ae);else{w._pendingPullIntos.length>0&&VE(w);let Je=new Uint8Array(we,fe,Ae);re(U,Je,!1)}else AQ(U)?(i4(w,we,fe,Ae),gQ(w)):i4(w,we,fe,Ae);eA(w)}function Yc(w,D){let U=w._controlledReadableByteStream;U._state==="readable"&&(H2e(w),Nf(w),s4(w),xNe(U,D))}function X2e(w,D){let U=w._queue.shift();w._queueTotalSize-=U.byteLength,Y2e(w);let se=new Uint8Array(U.buffer,U.byteOffset,U.byteLength);D._chunkSteps(se)}function yQ(w){if(w._byobRequest===null&&w._pendingPullIntos.length>0){let D=w._pendingPullIntos.peek(),U=new Uint8Array(D.buffer,D.byteOffset+D.bytesFilled,D.byteLength-D.bytesFilled),se=Object.create(J_.prototype);l8t(se,w,U),w._byobRequest=se}return w._byobRequest}function J2e(w){let D=w._controlledReadableByteStream._state;return D==="errored"?null:D==="closed"?0:w._strategyHWM-w._queueTotalSize}function o4(w,D){let U=w._pendingPullIntos.peek();if(w._controlledReadableByteStream._state==="closed"){if(D!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(D===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(U.bytesFilled+D>U.byteLength)throw new RangeError("bytesWritten out of range")}U.buffer=Kr(U.buffer),W2e(w,D)}function u4(w,D){let U=w._pendingPullIntos.peek();if(w._controlledReadableByteStream._state==="closed"){if(D.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(D.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(U.byteOffset+U.bytesFilled!==D.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(U.bufferByteLength!==D.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(U.bytesFilled+D.byteLength>U.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let fe=D.byteLength;U.buffer=Kr(D.buffer),W2e(w,fe)}function Z2e(w,D,U,se,fe,Ae,we){D._controlledReadableByteStream=w,D._pullAgain=!1,D._pulling=!1,D._byobRequest=null,D._queue=D._queueTotalSize=void 0,Nf(D),D._closeRequested=!1,D._started=!1,D._strategyHWM=Ae,D._pullAlgorithm=se,D._cancelAlgorithm=fe,D._autoAllocateChunkSize=we,D._pendingPullIntos=new E,w._readableStreamController=D;let Je=U();f(c(Je),()=>(D._started=!0,eA(D),null),xt=>(Yc(D,xt),null))}function c8t(w,D,U){let se=Object.create(yh.prototype),fe,Ae,we;D.start!==void 0?fe=()=>D.start(se):fe=()=>{},D.pull!==void 0?Ae=()=>D.pull(se):Ae=()=>c(void 0),D.cancel!==void 0?we=xt=>D.cancel(xt):we=()=>c(void 0);let Je=D.autoAllocateChunkSize;if(Je===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Z2e(w,se,fe,Ae,we,U,Je)}function l8t(w,D,U){w._associatedReadableByteStreamController=D,w._view=U}function _Q(w){return new TypeError(`ReadableStreamBYOBRequest.prototype.${w} can only be used on a ReadableStreamBYOBRequest`)}function JC(w){return new TypeError(`ReadableByteStreamController.prototype.${w} can only be used on a ReadableByteStreamController`)}function d8t(w,D){he(w,D);let U=w?.mode;return{mode:U===void 0?void 0:f8t(U,`${D} has member 'mode' that`)}}function f8t(w,D){if(w=`${w}`,w!=="byob")throw new TypeError(`${D} '${w}' is not a valid enumeration value for ReadableStreamReaderMode`);return w}function p8t(w,D){var U;he(w,D);let se=(U=w?.min)!==null&&U!==void 0?U:1;return{min:G(se,`${D} has member 'min' that`)}}function eNe(w){return new Q0(w)}function tNe(w,D){w._reader._readIntoRequests.push(D)}function h8t(w,D,U){let fe=w._reader._readIntoRequests.shift();U?fe._closeSteps(D):fe._chunkSteps(D)}function rNe(w){return w._reader._readIntoRequests.length}function AQ(w){let D=w._reader;return!(D===void 0||!tA(D))}class Q0{constructor(D){if(ae(D,1,"ReadableStreamBYOBReader"),J(D,"First parameter"),W0(D))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!Z_(D._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");k(this,D),this._readIntoRequests=new E}get closed(){return tA(this)?this._closedPromise:l(c4("closed"))}cancel(D=void 0){return tA(this)?this._ownerReadableStream===void 0?l($("cancel")):O(this,D):l(c4("cancel"))}read(D,U={}){if(!tA(this))return l(c4("read"));if(!ArrayBuffer.isView(D))return l(new TypeError("view must be an array buffer view"));if(D.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(D.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(za(D.buffer))return l(new TypeError("view's buffer has been detached"));let se;try{se=p8t(U,"options")}catch(gt){return l(gt)}let fe=se.min;if(fe===0)return l(new TypeError("options.min must be greater than 0"));if(r8t(D)){if(fe>D.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(fe>D.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l($("read from"));let Ae,we,Je=u((gt,Ft)=>{Ae=gt,we=Ft});return nNe(this,D,fe,{_chunkSteps:gt=>Ae({value:gt,done:!1}),_closeSteps:gt=>Ae({value:gt,done:!0}),_errorSteps:gt=>we(gt)}),Je}releaseLock(){if(!tA(this))throw c4("releaseLock");this._ownerReadableStream!==void 0&&m8t(this)}}Object.defineProperties(Q0.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),i(Q0.prototype.cancel,"cancel"),i(Q0.prototype.read,"read"),i(Q0.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Q0.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function tA(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_readIntoRequests")?!1:w instanceof Q0}function nNe(w,D,U,se){let fe=w._ownerReadableStream;fe._disturbed=!0,fe._state==="errored"?se._errorSteps(fe._storedError):s8t(fe._readableStreamController,D,U,se)}function m8t(w){P(w);let D=new TypeError("Reader was released");iNe(w,D)}function iNe(w,D){let U=w._readIntoRequests;w._readIntoRequests=new E,U.forEach(se=>{se._errorSteps(D)})}function c4(w){return new TypeError(`ReadableStreamBYOBReader.prototype.${w} can only be used on a ReadableStreamBYOBReader`)}function ZC(w,D){let{highWaterMark:U}=w;if(U===void 0)return D;if(Ze(U)||U<0)throw new RangeError("Invalid highWaterMark");return U}function l4(w){let{size:D}=w;return D||(()=>1)}function d4(w,D){he(w,D);let U=w?.highWaterMark,se=w?.size;return{highWaterMark:U===void 0?void 0:F(U),size:se===void 0?void 0:g8t(se,`${D} has member 'size' that`)}}function g8t(w,D){return ye(w,D),U=>F(w(U))}function y8t(w,D){he(w,D);let U=w?.abort,se=w?.close,fe=w?.start,Ae=w?.type,we=w?.write;return{abort:U===void 0?void 0:_8t(U,w,`${D} has member 'abort' that`),close:se===void 0?void 0:A8t(se,w,`${D} has member 'close' that`),start:fe===void 0?void 0:v8t(fe,w,`${D} has member 'start' that`),write:we===void 0?void 0:b8t(we,w,`${D} has member 'write' that`),type:Ae}}function _8t(w,D,U){return ye(w,U),se=>A(w,D,[se])}function A8t(w,D,U){return ye(w,U),()=>A(w,D,[])}function v8t(w,D,U){return ye(w,U),se=>v(w,D,[se])}function b8t(w,D,U){return ye(w,U),(se,fe)=>A(w,D,[se,fe])}function sNe(w,D){if(!zE(w))throw new TypeError(`${D} is not a WritableStream.`)}function E8t(w){if(typeof w!="object"||w===null)return!1;try{return typeof w.aborted=="boolean"}catch{return!1}}let S8t=typeof AbortController=="function";function w8t(){if(S8t)return new AbortController}class G0{constructor(D={},U={}){D===void 0?D=null:B(D,"First parameter");let se=d4(U,"Second parameter"),fe=y8t(D,"First parameter");if(oNe(this),fe.type!==void 0)throw new RangeError("Invalid type is specified");let we=l4(se),Je=ZC(se,1);$8t(this,fe,Je,we)}get locked(){if(!zE(this))throw g4("locked");return QE(this)}abort(D=void 0){return zE(this)?QE(this)?l(new TypeError("Cannot abort a stream that already has a writer")):f4(this,D):l(g4("abort"))}close(){return zE(this)?QE(this)?l(new TypeError("Cannot close a stream that already has a writer")):Rf(this)?l(new TypeError("Cannot close an already-closing stream")):uNe(this):l(g4("close"))}getWriter(){if(!zE(this))throw g4("getWriter");return aNe(this)}}Object.defineProperties(G0.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),i(G0.prototype.abort,"abort"),i(G0.prototype.close,"close"),i(G0.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(G0.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function aNe(w){return new _h(w)}function I8t(w,D,U,se,fe=1,Ae=()=>1){let we=Object.create(G0.prototype);oNe(we);let Je=Object.create(GE.prototype);return hNe(we,Je,w,D,U,se,fe,Ae),we}function oNe(w){w._state="writable",w._storedError=void 0,w._writer=void 0,w._writableStreamController=void 0,w._writeRequests=new E,w._inFlightWriteRequest=void 0,w._closeRequest=void 0,w._inFlightCloseRequest=void 0,w._pendingAbortRequest=void 0,w._backpressure=!1}function zE(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_writableStreamController")?!1:w instanceof G0}function QE(w){return w._writer!==void 0}function f4(w,D){var U;if(w._state==="closed"||w._state==="errored")return c(void 0);w._writableStreamController._abortReason=D,(U=w._writableStreamController._abortController)===null||U===void 0||U.abort(D);let se=w._state;if(se==="closed"||se==="errored")return c(void 0);if(w._pendingAbortRequest!==void 0)return w._pendingAbortRequest._promise;let fe=!1;se==="erroring"&&(fe=!0,D=void 0);let Ae=u((we,Je)=>{w._pendingAbortRequest={_promise:void 0,_resolve:we,_reject:Je,_reason:D,_wasAlreadyErroring:fe}});return w._pendingAbortRequest._promise=Ae,fe||bQ(w,D),Ae}function uNe(w){let D=w._state;if(D==="closed"||D==="errored")return l(new TypeError(`The stream (in ${D} state) is not in the writable state and cannot be closed`));let U=u((fe,Ae)=>{let we={_resolve:fe,_reject:Ae};w._closeRequest=we}),se=w._writer;return se!==void 0&&w._backpressure&&D==="writable"&&NQ(se),F8t(w._writableStreamController),U}function x8t(w){return u((U,se)=>{let fe={_resolve:U,_reject:se};w._writeRequests.push(fe)})}function vQ(w,D){if(w._state==="writable"){bQ(w,D);return}EQ(w)}function bQ(w,D){let U=w._writableStreamController;w._state="erroring",w._storedError=D;let se=w._writer;se!==void 0&&lNe(se,D),!D8t(w)&&U._started&&EQ(w)}function EQ(w){w._state="errored",w._writableStreamController[C]();let D=w._storedError;if(w._writeRequests.forEach(fe=>{fe._reject(D)}),w._writeRequests=new E,w._pendingAbortRequest===void 0){p4(w);return}let U=w._pendingAbortRequest;if(w._pendingAbortRequest=void 0,U._wasAlreadyErroring){U._reject(D),p4(w);return}let se=w._writableStreamController[S](U._reason);f(se,()=>(U._resolve(),p4(w),null),fe=>(U._reject(fe),p4(w),null))}function C8t(w){w._inFlightWriteRequest._resolve(void 0),w._inFlightWriteRequest=void 0}function T8t(w,D){w._inFlightWriteRequest._reject(D),w._inFlightWriteRequest=void 0,vQ(w,D)}function N8t(w){w._inFlightCloseRequest._resolve(void 0),w._inFlightCloseRequest=void 0,w._state==="erroring"&&(w._storedError=void 0,w._pendingAbortRequest!==void 0&&(w._pendingAbortRequest._resolve(),w._pendingAbortRequest=void 0)),w._state="closed";let U=w._writer;U!==void 0&&_Ne(U)}function R8t(w,D){w._inFlightCloseRequest._reject(D),w._inFlightCloseRequest=void 0,w._pendingAbortRequest!==void 0&&(w._pendingAbortRequest._reject(D),w._pendingAbortRequest=void 0),vQ(w,D)}function Rf(w){return!(w._closeRequest===void 0&&w._inFlightCloseRequest===void 0)}function D8t(w){return!(w._inFlightWriteRequest===void 0&&w._inFlightCloseRequest===void 0)}function k8t(w){w._inFlightCloseRequest=w._closeRequest,w._closeRequest=void 0}function O8t(w){w._inFlightWriteRequest=w._writeRequests.shift()}function p4(w){w._closeRequest!==void 0&&(w._closeRequest._reject(w._storedError),w._closeRequest=void 0);let D=w._writer;D!==void 0&&CQ(D,w._storedError)}function SQ(w,D){let U=w._writer;U!==void 0&&D!==w._backpressure&&(D?z8t(U):NQ(U)),w._backpressure=D}class _h{constructor(D){if(ae(D,1,"WritableStreamDefaultWriter"),sNe(D,"First parameter"),QE(D))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=D,D._writer=this;let U=D._state;if(U==="writable")!Rf(D)&&D._backpressure?_4(this):ANe(this),y4(this);else if(U==="erroring")TQ(this,D._storedError),y4(this);else if(U==="closed")ANe(this),K8t(this);else{let se=D._storedError;TQ(this,se),yNe(this,se)}}get closed(){return rA(this)?this._closedPromise:l(nA("closed"))}get desiredSize(){if(!rA(this))throw nA("desiredSize");if(this._ownerWritableStream===void 0)throw tT("desiredSize");return B8t(this)}get ready(){return rA(this)?this._readyPromise:l(nA("ready"))}abort(D=void 0){return rA(this)?this._ownerWritableStream===void 0?l(tT("abort")):P8t(this,D):l(nA("abort"))}close(){if(!rA(this))return l(nA("close"));let D=this._ownerWritableStream;return D===void 0?l(tT("close")):Rf(D)?l(new TypeError("Cannot close an already-closing stream")):cNe(this)}releaseLock(){if(!rA(this))throw nA("releaseLock");this._ownerWritableStream!==void 0&&dNe(this)}write(D=void 0){return rA(this)?this._ownerWritableStream===void 0?l(tT("write to")):fNe(this,D):l(nA("write"))}}Object.defineProperties(_h.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),i(_h.prototype.abort,"abort"),i(_h.prototype.close,"close"),i(_h.prototype.releaseLock,"releaseLock"),i(_h.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(_h.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function rA(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_ownerWritableStream")?!1:w instanceof _h}function P8t(w,D){let U=w._ownerWritableStream;return f4(U,D)}function cNe(w){let D=w._ownerWritableStream;return uNe(D)}function M8t(w){let D=w._ownerWritableStream,U=D._state;return Rf(D)||U==="closed"?c(void 0):U==="errored"?l(D._storedError):cNe(w)}function L8t(w,D){w._closedPromiseState==="pending"?CQ(w,D):V8t(w,D)}function lNe(w,D){w._readyPromiseState==="pending"?vNe(w,D):Q8t(w,D)}function B8t(w){let D=w._ownerWritableStream,U=D._state;return U==="errored"||U==="erroring"?null:U==="closed"?0:mNe(D._writableStreamController)}function dNe(w){let D=w._ownerWritableStream,U=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");lNe(w,U),L8t(w,U),D._writer=void 0,w._ownerWritableStream=void 0}function fNe(w,D){let U=w._ownerWritableStream,se=U._writableStreamController,fe=U8t(se,D);if(U!==w._ownerWritableStream)return l(tT("write to"));let Ae=U._state;if(Ae==="errored")return l(U._storedError);if(Rf(U)||Ae==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(Ae==="erroring")return l(U._storedError);let we=x8t(U);return q8t(se,D,fe),we}let pNe={};class GE{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!wQ(this))throw xQ("abortReason");return this._abortReason}get signal(){if(!wQ(this))throw xQ("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(D=void 0){if(!wQ(this))throw xQ("error");this._controlledWritableStream._state==="writable"&&gNe(this,D)}[S](D){let U=this._abortAlgorithm(D);return h4(this),U}[C](){Nf(this)}}Object.defineProperties(GE.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(GE.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function wQ(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_controlledWritableStream")?!1:w instanceof GE}function hNe(w,D,U,se,fe,Ae,we,Je){D._controlledWritableStream=w,w._writableStreamController=D,D._queue=void 0,D._queueTotalSize=void 0,Nf(D),D._abortReason=void 0,D._abortController=w8t(),D._started=!1,D._strategySizeAlgorithm=Je,D._strategyHWM=we,D._writeAlgorithm=se,D._closeAlgorithm=fe,D._abortAlgorithm=Ae;let xt=IQ(D);SQ(w,xt);let gt=U(),Ft=c(gt);f(Ft,()=>(D._started=!0,m4(D),null),er=>(D._started=!0,vQ(w,er),null))}function $8t(w,D,U,se){let fe=Object.create(GE.prototype),Ae,we,Je,xt;D.start!==void 0?Ae=()=>D.start(fe):Ae=()=>{},D.write!==void 0?we=gt=>D.write(gt,fe):we=()=>c(void 0),D.close!==void 0?Je=()=>D.close():Je=()=>c(void 0),D.abort!==void 0?xt=gt=>D.abort(gt):xt=()=>c(void 0),hNe(w,fe,Ae,we,Je,xt,U,se)}function h4(w){w._writeAlgorithm=void 0,w._closeAlgorithm=void 0,w._abortAlgorithm=void 0,w._strategySizeAlgorithm=void 0}function F8t(w){Qa(w,pNe,0),m4(w)}function U8t(w,D){try{return w._strategySizeAlgorithm(D)}catch(U){return eT(w,U),1}}function mNe(w){return w._strategyHWM-w._queueTotalSize}function q8t(w,D,U){try{Qa(w,D,U)}catch(fe){eT(w,fe);return}let se=w._controlledWritableStream;if(!Rf(se)&&se._state==="writable"){let fe=IQ(w);SQ(se,fe)}m4(w)}function m4(w){let D=w._controlledWritableStream;if(!w._started||D._inFlightWriteRequest!==void 0)return;if(D._state==="erroring"){EQ(D);return}if(w._queue.length===0)return;let se=KE(w);se===pNe?j8t(w):H8t(w,se)}function eT(w,D){w._controlledWritableStream._state==="writable"&&gNe(w,D)}function j8t(w){let D=w._controlledWritableStream;k8t(D),Fn(w);let U=w._closeAlgorithm();h4(w),f(U,()=>(N8t(D),null),se=>(R8t(D,se),null))}function H8t(w,D){let U=w._controlledWritableStream;O8t(U);let se=w._writeAlgorithm(D);f(se,()=>{C8t(U);let fe=U._state;if(Fn(w),!Rf(U)&&fe==="writable"){let Ae=IQ(w);SQ(U,Ae)}return m4(w),null},fe=>(U._state==="writable"&&h4(w),T8t(U,fe),null))}function IQ(w){return mNe(w)<=0}function gNe(w,D){let U=w._controlledWritableStream;h4(w),bQ(U,D)}function g4(w){return new TypeError(`WritableStream.prototype.${w} can only be used on a WritableStream`)}function xQ(w){return new TypeError(`WritableStreamDefaultController.prototype.${w} can only be used on a WritableStreamDefaultController`)}function nA(w){return new TypeError(`WritableStreamDefaultWriter.prototype.${w} can only be used on a WritableStreamDefaultWriter`)}function tT(w){return new TypeError("Cannot "+w+" a stream using a released writer")}function y4(w){w._closedPromise=u((D,U)=>{w._closedPromise_resolve=D,w._closedPromise_reject=U,w._closedPromiseState="pending"})}function yNe(w,D){y4(w),CQ(w,D)}function K8t(w){y4(w),_Ne(w)}function CQ(w,D){w._closedPromise_reject!==void 0&&(y(w._closedPromise),w._closedPromise_reject(D),w._closedPromise_resolve=void 0,w._closedPromise_reject=void 0,w._closedPromiseState="rejected")}function V8t(w,D){yNe(w,D)}function _Ne(w){w._closedPromise_resolve!==void 0&&(w._closedPromise_resolve(void 0),w._closedPromise_resolve=void 0,w._closedPromise_reject=void 0,w._closedPromiseState="resolved")}function _4(w){w._readyPromise=u((D,U)=>{w._readyPromise_resolve=D,w._readyPromise_reject=U}),w._readyPromiseState="pending"}function TQ(w,D){_4(w),vNe(w,D)}function ANe(w){_4(w),NQ(w)}function vNe(w,D){w._readyPromise_reject!==void 0&&(y(w._readyPromise),w._readyPromise_reject(D),w._readyPromise_resolve=void 0,w._readyPromise_reject=void 0,w._readyPromiseState="rejected")}function z8t(w){_4(w)}function Q8t(w,D){TQ(w,D)}function NQ(w){w._readyPromise_resolve!==void 0&&(w._readyPromise_resolve(void 0),w._readyPromise_resolve=void 0,w._readyPromise_reject=void 0,w._readyPromiseState="fulfilled")}function G8t(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let RQ=G8t();function Y8t(w){if(!(typeof w=="function"||typeof w=="object")||w.name!=="DOMException")return!1;try{return new w,!0}catch{return!1}}function W8t(){let w=RQ?.DOMException;return Y8t(w)?w:void 0}function X8t(){let w=function(U,se){this.message=U||"",this.name=se||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return i(w,"DOMException"),w.prototype=Object.create(Error.prototype),Object.defineProperty(w.prototype,"constructor",{value:w,writable:!0,configurable:!0}),w}let J8t=W8t()||X8t();function bNe(w,D,U,se,fe,Ae){let we=ee(w),Je=aNe(D);w._disturbed=!0;let xt=!1,gt=c(void 0);return u((Ft,er)=>{let Un;if(Ae!==void 0){if(Un=()=>{let At=Ae.reason!==void 0?Ae.reason:new J8t("Aborted","AbortError"),gr=[];se||gr.push(()=>D._state==="writable"?f4(D,At):c(void 0)),fe||gr.push(()=>w._state==="readable"?cd(w,At):c(void 0)),vu(()=>Promise.all(gr.map(Gn=>Gn())),!0,At)},Ae.aborted){Un();return}Ae.addEventListener("abort",Un)}function ld(){return u((At,gr)=>{function Gn(gc){gc?At():d(JE(),Gn,gr)}Gn(!1)})}function JE(){return xt?c(!0):d(Je._readyPromise,()=>u((At,gr)=>{$e(we,{_chunkSteps:Gn=>{gt=d(fNe(Je,Gn),void 0,t),At(!1)},_closeSteps:()=>At(!0),_errorSteps:gr})}))}if(vh(w,we._closedPromise,At=>(se?Wc(!0,At):vu(()=>f4(D,At),!0,At),null)),vh(D,Je._closedPromise,At=>(fe?Wc(!0,At):vu(()=>cd(w,At),!0,At),null)),Ko(w,we._closedPromise,()=>(U?Wc():vu(()=>M8t(Je)),null)),Rf(D)||D._state==="closed"){let At=new TypeError("the destination writable stream closed before all data could be piped to it");fe?Wc(!0,At):vu(()=>cd(w,At),!0,At)}y(ld());function J0(){let At=gt;return d(gt,()=>At!==gt?J0():void 0)}function vh(At,gr,Gn){At._state==="errored"?Gn(At._storedError):h(gr,Gn)}function Ko(At,gr,Gn){At._state==="closed"?Gn():p(gr,Gn)}function vu(At,gr,Gn){if(xt)return;xt=!0,D._state==="writable"&&!Rf(D)?p(J0(),gc):gc();function gc(){return f(At(),()=>bh(gr,Gn),ZE=>bh(!0,ZE)),null}}function Wc(At,gr){xt||(xt=!0,D._state==="writable"&&!Rf(D)?p(J0(),()=>bh(At,gr)):bh(At,gr))}function bh(At,gr){return dNe(Je),P(we),Ae!==void 0&&Ae.removeEventListener("abort",Un),At?er(gr):Ft(void 0),null}})}class Ah{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!A4(this))throw b4("desiredSize");return DQ(this)}close(){if(!A4(this))throw b4("close");if(!WE(this))throw new TypeError("The stream is not in a state that permits close");iA(this)}enqueue(D=void 0){if(!A4(this))throw b4("enqueue");if(!WE(this))throw new TypeError("The stream is not in a state that permits enqueue");return YE(this,D)}error(D=void 0){if(!A4(this))throw b4("error");ud(this,D)}[I](D){Nf(this);let U=this._cancelAlgorithm(D);return v4(this),U}[N](D){let U=this._controlledReadableStream;if(this._queue.length>0){let se=Fn(this);this._closeRequested&&this._queue.length===0?(v4(this),iT(U)):rT(this),D._chunkSteps(se)}else te(U,D),rT(this)}[T](){}}Object.defineProperties(Ah.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),i(Ah.prototype.close,"close"),i(Ah.prototype.enqueue,"enqueue"),i(Ah.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ah.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function A4(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_controlledReadableStream")?!1:w instanceof Ah}function rT(w){if(!ENe(w))return;if(w._pulling){w._pullAgain=!0;return}w._pulling=!0;let U=w._pullAlgorithm();f(U,()=>(w._pulling=!1,w._pullAgain&&(w._pullAgain=!1,rT(w)),null),se=>(ud(w,se),null))}function ENe(w){let D=w._controlledReadableStream;return!WE(w)||!w._started?!1:!!(W0(D)&&ce(D)>0||DQ(w)>0)}function v4(w){w._pullAlgorithm=void 0,w._cancelAlgorithm=void 0,w._strategySizeAlgorithm=void 0}function iA(w){if(!WE(w))return;let D=w._controlledReadableStream;w._closeRequested=!0,w._queue.length===0&&(v4(w),iT(D))}function YE(w,D){if(!WE(w))return;let U=w._controlledReadableStream;if(W0(U)&&ce(U)>0)re(U,D,!1);else{let se;try{se=w._strategySizeAlgorithm(D)}catch(fe){throw ud(w,fe),fe}try{Qa(w,D,se)}catch(fe){throw ud(w,fe),fe}}rT(w)}function ud(w,D){let U=w._controlledReadableStream;U._state==="readable"&&(Nf(w),v4(w),xNe(U,D))}function DQ(w){let D=w._controlledReadableStream._state;return D==="errored"?null:D==="closed"?0:w._strategyHWM-w._queueTotalSize}function Z8t(w){return!ENe(w)}function WE(w){let D=w._controlledReadableStream._state;return!w._closeRequested&&D==="readable"}function SNe(w,D,U,se,fe,Ae,we){D._controlledReadableStream=w,D._queue=void 0,D._queueTotalSize=void 0,Nf(D),D._started=!1,D._closeRequested=!1,D._pullAgain=!1,D._pulling=!1,D._strategySizeAlgorithm=we,D._strategyHWM=Ae,D._pullAlgorithm=se,D._cancelAlgorithm=fe,w._readableStreamController=D;let Je=U();f(c(Je),()=>(D._started=!0,rT(D),null),xt=>(ud(D,xt),null))}function eUt(w,D,U,se){let fe=Object.create(Ah.prototype),Ae,we,Je;D.start!==void 0?Ae=()=>D.start(fe):Ae=()=>{},D.pull!==void 0?we=()=>D.pull(fe):we=()=>c(void 0),D.cancel!==void 0?Je=xt=>D.cancel(xt):Je=()=>c(void 0),SNe(w,fe,Ae,we,Je,U,se)}function b4(w){return new TypeError(`ReadableStreamDefaultController.prototype.${w} can only be used on a ReadableStreamDefaultController`)}function tUt(w,D){return Z_(w._readableStreamController)?nUt(w):rUt(w)}function rUt(w,D){let U=ee(w),se=!1,fe=!1,Ae=!1,we=!1,Je,xt,gt,Ft,er,Un=u(Ko=>{er=Ko});function ld(){return se?(fe=!0,c(void 0)):(se=!0,$e(U,{_chunkSteps:vu=>{g(()=>{fe=!1;let Wc=vu,bh=vu;Ae||YE(gt._readableStreamController,Wc),we||YE(Ft._readableStreamController,bh),se=!1,fe&&ld()})},_closeSteps:()=>{se=!1,Ae||iA(gt._readableStreamController),we||iA(Ft._readableStreamController),(!Ae||!we)&&er(void 0)},_errorSteps:()=>{se=!1}}),c(void 0))}function JE(Ko){if(Ae=!0,Je=Ko,we){let vu=ft([Je,xt]),Wc=cd(w,vu);er(Wc)}return Un}function J0(Ko){if(we=!0,xt=Ko,Ae){let vu=ft([Je,xt]),Wc=cd(w,vu);er(Wc)}return Un}function vh(){}return gt=nT(vh,ld,JE),Ft=nT(vh,ld,J0),h(U._closedPromise,Ko=>(ud(gt._readableStreamController,Ko),ud(Ft._readableStreamController,Ko),(!Ae||!we)&&er(void 0),null)),[gt,Ft]}function nUt(w){let D=ee(w),U=!1,se=!1,fe=!1,Ae=!1,we=!1,Je,xt,gt,Ft,er,Un=u(At=>{er=At});function ld(At){h(At._closedPromise,gr=>(At!==D||(Yc(gt._readableStreamController,gr),Yc(Ft._readableStreamController,gr),(!Ae||!we)&&er(void 0)),null))}function JE(){tA(D)&&(P(D),D=ee(w),ld(D)),$e(D,{_chunkSteps:gr=>{g(()=>{se=!1,fe=!1;let Gn=gr,gc=gr;if(!Ae&&!we)try{gc=mc(gr)}catch(ZE){Yc(gt._readableStreamController,ZE),Yc(Ft._readableStreamController,ZE),er(cd(w,ZE));return}Ae||a4(gt._readableStreamController,Gn),we||a4(Ft._readableStreamController,gc),U=!1,se?vh():fe&&Ko()})},_closeSteps:()=>{U=!1,Ae||XC(gt._readableStreamController),we||XC(Ft._readableStreamController),gt._readableStreamController._pendingPullIntos.length>0&&o4(gt._readableStreamController,0),Ft._readableStreamController._pendingPullIntos.length>0&&o4(Ft._readableStreamController,0),(!Ae||!we)&&er(void 0)},_errorSteps:()=>{U=!1}})}function J0(At,gr){Ce(D)&&(P(D),D=eNe(w),ld(D));let Gn=gr?Ft:gt,gc=gr?gt:Ft;nNe(D,At,1,{_chunkSteps:e1=>{g(()=>{se=!1,fe=!1;let t1=gr?we:Ae;if(gr?Ae:we)t1||u4(Gn._readableStreamController,e1);else{let FNe;try{FNe=mc(e1)}catch(LQ){Yc(Gn._readableStreamController,LQ),Yc(gc._readableStreamController,LQ),er(cd(w,LQ));return}t1||u4(Gn._readableStreamController,e1),a4(gc._readableStreamController,FNe)}U=!1,se?vh():fe&&Ko()})},_closeSteps:e1=>{U=!1;let t1=gr?we:Ae,N4=gr?Ae:we;t1||XC(Gn._readableStreamController),N4||XC(gc._readableStreamController),e1!==void 0&&(t1||u4(Gn._readableStreamController,e1),!N4&&gc._readableStreamController._pendingPullIntos.length>0&&o4(gc._readableStreamController,0)),(!t1||!N4)&&er(void 0)},_errorSteps:()=>{U=!1}})}function vh(){if(U)return se=!0,c(void 0);U=!0;let At=yQ(gt._readableStreamController);return At===null?JE():J0(At._view,!1),c(void 0)}function Ko(){if(U)return fe=!0,c(void 0);U=!0;let At=yQ(Ft._readableStreamController);return At===null?JE():J0(At._view,!0),c(void 0)}function vu(At){if(Ae=!0,Je=At,we){let gr=ft([Je,xt]),Gn=cd(w,gr);er(Gn)}return Un}function Wc(At){if(we=!0,xt=At,Ae){let gr=ft([Je,xt]),Gn=cd(w,gr);er(Gn)}return Un}function bh(){}return gt=INe(bh,vh,vu),Ft=INe(bh,Ko,Wc),ld(D),[gt,Ft]}function iUt(w){return r(w)&&typeof w.getReader<"u"}function sUt(w){return iUt(w)?oUt(w.getReader()):aUt(w)}function aUt(w){let D,U=Sa(w,"async"),se=t;function fe(){let we;try{we=wa(U)}catch(xt){return l(xt)}let Je=c(we);return m(Je,xt=>{if(!r(xt))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Gc(xt))iA(D._readableStreamController);else{let Ft=hc(xt);YE(D._readableStreamController,Ft)}})}function Ae(we){let Je=U.iterator,xt;try{xt=$n(Je,"return")}catch(er){return l(er)}if(xt===void 0)return c(void 0);let gt;try{gt=v(xt,Je,[we])}catch(er){return l(er)}let Ft=c(gt);return m(Ft,er=>{if(!r(er))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return D=nT(se,fe,Ae,0),D}function oUt(w){let D,U=t;function se(){let Ae;try{Ae=w.read()}catch(we){return l(we)}return m(Ae,we=>{if(!r(we))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(we.done)iA(D._readableStreamController);else{let Je=we.value;YE(D._readableStreamController,Je)}})}function fe(Ae){try{return c(w.cancel(Ae))}catch(we){return l(we)}}return D=nT(U,se,fe,0),D}function uUt(w,D){he(w,D);let U=w,se=U?.autoAllocateChunkSize,fe=U?.cancel,Ae=U?.pull,we=U?.start,Je=U?.type;return{autoAllocateChunkSize:se===void 0?void 0:G(se,`${D} has member 'autoAllocateChunkSize' that`),cancel:fe===void 0?void 0:cUt(fe,U,`${D} has member 'cancel' that`),pull:Ae===void 0?void 0:lUt(Ae,U,`${D} has member 'pull' that`),start:we===void 0?void 0:dUt(we,U,`${D} has member 'start' that`),type:Je===void 0?void 0:fUt(Je,`${D} has member 'type' that`)}}function cUt(w,D,U){return ye(w,U),se=>A(w,D,[se])}function lUt(w,D,U){return ye(w,U),se=>A(w,D,[se])}function dUt(w,D,U){return ye(w,U),se=>v(w,D,[se])}function fUt(w,D){if(w=`${w}`,w!=="bytes")throw new TypeError(`${D} '${w}' is not a valid enumeration value for ReadableStreamType`);return w}function pUt(w,D){return he(w,D),{preventCancel:!!w?.preventCancel}}function wNe(w,D){he(w,D);let U=w?.preventAbort,se=w?.preventCancel,fe=w?.preventClose,Ae=w?.signal;return Ae!==void 0&&hUt(Ae,`${D} has member 'signal' that`),{preventAbort:!!U,preventCancel:!!se,preventClose:!!fe,signal:Ae}}function hUt(w,D){if(!E8t(w))throw new TypeError(`${D} is not an AbortSignal.`)}function mUt(w,D){he(w,D);let U=w?.readable;M(U,"readable","ReadableWritablePair"),J(U,`${D} has member 'readable' that`);let se=w?.writable;return M(se,"writable","ReadableWritablePair"),sNe(se,`${D} has member 'writable' that`),{readable:U,writable:se}}class Ga{constructor(D={},U={}){D===void 0?D=null:B(D,"First parameter");let se=d4(U,"Second parameter"),fe=uUt(D,"First parameter");if(kQ(this),fe.type==="bytes"){if(se.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let Ae=ZC(se,0);c8t(this,fe,Ae)}else{let Ae=l4(se),we=ZC(se,1);eUt(this,fe,we,Ae)}}get locked(){if(!Y0(this))throw sA("locked");return W0(this)}cancel(D=void 0){return Y0(this)?W0(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):cd(this,D):l(sA("cancel"))}getReader(D=void 0){if(!Y0(this))throw sA("getReader");return d8t(D,"First parameter").mode===void 0?ee(this):eNe(this)}pipeThrough(D,U={}){if(!Y0(this))throw sA("pipeThrough");ae(D,1,"pipeThrough");let se=mUt(D,"First parameter"),fe=wNe(U,"Second parameter");if(W0(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(QE(se.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let Ae=bNe(this,se.writable,fe.preventClose,fe.preventAbort,fe.preventCancel,fe.signal);return y(Ae),se.readable}pipeTo(D,U={}){if(!Y0(this))return l(sA("pipeTo"));if(D===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!zE(D))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let se;try{se=wNe(U,"Second parameter")}catch(fe){return l(fe)}return W0(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):QE(D)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):bNe(this,D,se.preventClose,se.preventAbort,se.preventCancel,se.signal)}tee(){if(!Y0(this))throw sA("tee");let D=tUt(this);return ft(D)}values(D=void 0){if(!Y0(this))throw sA("values");let U=pUt(D,"First parameter");return Ge(this,U.preventCancel)}[X_](D){return this.values(D)}static from(D){return sUt(D)}}Object.defineProperties(Ga,{from:{enumerable:!0}}),Object.defineProperties(Ga.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),i(Ga.from,"from"),i(Ga.prototype.cancel,"cancel"),i(Ga.prototype.getReader,"getReader"),i(Ga.prototype.pipeThrough,"pipeThrough"),i(Ga.prototype.pipeTo,"pipeTo"),i(Ga.prototype.tee,"tee"),i(Ga.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ga.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Ga.prototype,X_,{value:Ga.prototype.values,writable:!0,configurable:!0});function nT(w,D,U,se=1,fe=()=>1){let Ae=Object.create(Ga.prototype);kQ(Ae);let we=Object.create(Ah.prototype);return SNe(Ae,we,w,D,U,se,fe),Ae}function INe(w,D,U){let se=Object.create(Ga.prototype);kQ(se);let fe=Object.create(yh.prototype);return Z2e(se,fe,w,D,U,0,void 0),se}function kQ(w){w._state="readable",w._reader=void 0,w._storedError=void 0,w._disturbed=!1}function Y0(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_readableStreamController")?!1:w instanceof Ga}function W0(w){return w._reader!==void 0}function cd(w,D){if(w._disturbed=!0,w._state==="closed")return c(void 0);if(w._state==="errored")return l(w._storedError);iT(w);let U=w._reader;if(U!==void 0&&tA(U)){let fe=U._readIntoRequests;U._readIntoRequests=new E,fe.forEach(Ae=>{Ae._closeSteps(void 0)})}let se=w._readableStreamController[I](D);return m(se,t)}function iT(w){w._state="closed";let D=w._reader;if(D!==void 0&&(Z(D),Ce(D))){let U=D._readRequests;D._readRequests=new E,U.forEach(se=>{se._closeSteps()})}}function xNe(w,D){w._state="errored",w._storedError=D;let U=w._reader;U!==void 0&&(X(U,D),Ce(U)?Ve(U,D):iNe(U,D))}function sA(w){return new TypeError(`ReadableStream.prototype.${w} can only be used on a ReadableStream`)}function CNe(w,D){he(w,D);let U=w?.highWaterMark;return M(U,"highWaterMark","QueuingStrategyInit"),{highWaterMark:F(U)}}let TNe=w=>w.byteLength;i(TNe,"size");class E4{constructor(D){ae(D,1,"ByteLengthQueuingStrategy"),D=CNe(D,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=D.highWaterMark}get highWaterMark(){if(!RNe(this))throw NNe("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!RNe(this))throw NNe("size");return TNe}}Object.defineProperties(E4.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(E4.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function NNe(w){return new TypeError(`ByteLengthQueuingStrategy.prototype.${w} can only be used on a ByteLengthQueuingStrategy`)}function RNe(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_byteLengthQueuingStrategyHighWaterMark")?!1:w instanceof E4}let DNe=()=>1;i(DNe,"size");class S4{constructor(D){ae(D,1,"CountQueuingStrategy"),D=CNe(D,"First parameter"),this._countQueuingStrategyHighWaterMark=D.highWaterMark}get highWaterMark(){if(!ONe(this))throw kNe("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!ONe(this))throw kNe("size");return DNe}}Object.defineProperties(S4.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(S4.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function kNe(w){return new TypeError(`CountQueuingStrategy.prototype.${w} can only be used on a CountQueuingStrategy`)}function ONe(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_countQueuingStrategyHighWaterMark")?!1:w instanceof S4}function gUt(w,D){he(w,D);let U=w?.cancel,se=w?.flush,fe=w?.readableType,Ae=w?.start,we=w?.transform,Je=w?.writableType;return{cancel:U===void 0?void 0:vUt(U,w,`${D} has member 'cancel' that`),flush:se===void 0?void 0:yUt(se,w,`${D} has member 'flush' that`),readableType:fe,start:Ae===void 0?void 0:_Ut(Ae,w,`${D} has member 'start' that`),transform:we===void 0?void 0:AUt(we,w,`${D} has member 'transform' that`),writableType:Je}}function yUt(w,D,U){return ye(w,U),se=>A(w,D,[se])}function _Ut(w,D,U){return ye(w,U),se=>v(w,D,[se])}function AUt(w,D,U){return ye(w,U),(se,fe)=>A(w,D,[se,fe])}function vUt(w,D,U){return ye(w,U),se=>A(w,D,[se])}class w4{constructor(D={},U={},se={}){D===void 0&&(D=null);let fe=d4(U,"Second parameter"),Ae=d4(se,"Third parameter"),we=gUt(D,"First parameter");if(we.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(we.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Je=ZC(Ae,0),xt=l4(Ae),gt=ZC(fe,1),Ft=l4(fe),er,Un=u(ld=>{er=ld});bUt(this,Un,gt,Ft,Je,xt),SUt(this,we),we.start!==void 0?er(we.start(this._transformStreamController)):er(void 0)}get readable(){if(!PNe(this))throw $Ne("readable");return this._readable}get writable(){if(!PNe(this))throw $Ne("writable");return this._writable}}Object.defineProperties(w4.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(w4.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function bUt(w,D,U,se,fe,Ae){function we(){return D}function Je(Un){return xUt(w,Un)}function xt(Un){return CUt(w,Un)}function gt(){return TUt(w)}w._writable=I8t(we,Je,gt,xt,U,se);function Ft(){return NUt(w)}function er(Un){return RUt(w,Un)}w._readable=nT(we,Ft,er,fe,Ae),w._backpressure=void 0,w._backpressureChangePromise=void 0,w._backpressureChangePromise_resolve=void 0,I4(w,!0),w._transformStreamController=void 0}function PNe(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_transformStreamController")?!1:w instanceof w4}function MNe(w,D){ud(w._readable._readableStreamController,D),OQ(w,D)}function OQ(w,D){C4(w._transformStreamController),eT(w._writable._writableStreamController,D),PQ(w)}function PQ(w){w._backpressure&&I4(w,!1)}function I4(w,D){w._backpressureChangePromise!==void 0&&w._backpressureChangePromise_resolve(),w._backpressureChangePromise=u(U=>{w._backpressureChangePromise_resolve=U}),w._backpressure=D}class X0{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!x4(this))throw T4("desiredSize");let D=this._controlledTransformStream._readable._readableStreamController;return DQ(D)}enqueue(D=void 0){if(!x4(this))throw T4("enqueue");LNe(this,D)}error(D=void 0){if(!x4(this))throw T4("error");wUt(this,D)}terminate(){if(!x4(this))throw T4("terminate");IUt(this)}}Object.defineProperties(X0.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),i(X0.prototype.enqueue,"enqueue"),i(X0.prototype.error,"error"),i(X0.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(X0.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function x4(w){return!r(w)||!Object.prototype.hasOwnProperty.call(w,"_controlledTransformStream")?!1:w instanceof X0}function EUt(w,D,U,se,fe){D._controlledTransformStream=w,w._transformStreamController=D,D._transformAlgorithm=U,D._flushAlgorithm=se,D._cancelAlgorithm=fe,D._finishPromise=void 0,D._finishPromise_resolve=void 0,D._finishPromise_reject=void 0}function SUt(w,D){let U=Object.create(X0.prototype),se,fe,Ae;D.transform!==void 0?se=we=>D.transform(we,U):se=we=>{try{return LNe(U,we),c(void 0)}catch(Je){return l(Je)}},D.flush!==void 0?fe=()=>D.flush(U):fe=()=>c(void 0),D.cancel!==void 0?Ae=we=>D.cancel(we):Ae=()=>c(void 0),EUt(w,U,se,fe,Ae)}function C4(w){w._transformAlgorithm=void 0,w._flushAlgorithm=void 0,w._cancelAlgorithm=void 0}function LNe(w,D){let U=w._controlledTransformStream,se=U._readable._readableStreamController;if(!WE(se))throw new TypeError("Readable side is not in a state that permits enqueue");try{YE(se,D)}catch(Ae){throw OQ(U,Ae),U._readable._storedError}Z8t(se)!==U._backpressure&&I4(U,!0)}function wUt(w,D){MNe(w._controlledTransformStream,D)}function BNe(w,D){let U=w._transformAlgorithm(D);return m(U,void 0,se=>{throw MNe(w._controlledTransformStream,se),se})}function IUt(w){let D=w._controlledTransformStream,U=D._readable._readableStreamController;iA(U);let se=new TypeError("TransformStream terminated");OQ(D,se)}function xUt(w,D){let U=w._transformStreamController;if(w._backpressure){let se=w._backpressureChangePromise;return m(se,()=>{let fe=w._writable;if(fe._state==="erroring")throw fe._storedError;return BNe(U,D)})}return BNe(U,D)}function CUt(w,D){let U=w._transformStreamController;if(U._finishPromise!==void 0)return U._finishPromise;let se=w._readable;U._finishPromise=u((Ae,we)=>{U._finishPromise_resolve=Ae,U._finishPromise_reject=we});let fe=U._cancelAlgorithm(D);return C4(U),f(fe,()=>(se._state==="errored"?XE(U,se._storedError):(ud(se._readableStreamController,D),MQ(U)),null),Ae=>(ud(se._readableStreamController,Ae),XE(U,Ae),null)),U._finishPromise}function TUt(w){let D=w._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let U=w._readable;D._finishPromise=u((fe,Ae)=>{D._finishPromise_resolve=fe,D._finishPromise_reject=Ae});let se=D._flushAlgorithm();return C4(D),f(se,()=>(U._state==="errored"?XE(D,U._storedError):(iA(U._readableStreamController),MQ(D)),null),fe=>(ud(U._readableStreamController,fe),XE(D,fe),null)),D._finishPromise}function NUt(w){return I4(w,!1),w._backpressureChangePromise}function RUt(w,D){let U=w._transformStreamController;if(U._finishPromise!==void 0)return U._finishPromise;let se=w._writable;U._finishPromise=u((Ae,we)=>{U._finishPromise_resolve=Ae,U._finishPromise_reject=we});let fe=U._cancelAlgorithm(D);return C4(U),f(fe,()=>(se._state==="errored"?XE(U,se._storedError):(eT(se._writableStreamController,D),PQ(w),MQ(U)),null),Ae=>(eT(se._writableStreamController,Ae),PQ(w),XE(U,Ae),null)),U._finishPromise}function T4(w){return new TypeError(`TransformStreamDefaultController.prototype.${w} can only be used on a TransformStreamDefaultController`)}function MQ(w){w._finishPromise_resolve!==void 0&&(w._finishPromise_resolve(),w._finishPromise_resolve=void 0,w._finishPromise_reject=void 0)}function XE(w,D){w._finishPromise_reject!==void 0&&(y(w._finishPromise),w._finishPromise_reject(D),w._finishPromise_resolve=void 0,w._finishPromise_reject=void 0)}function $Ne(w){return new TypeError(`TransformStream.prototype.${w} can only be used on a TransformStream`)}e.ByteLengthQueuingStrategy=E4,e.CountQueuingStrategy=S4,e.ReadableByteStreamController=yh,e.ReadableStream=Ga,e.ReadableStreamBYOBReader=Q0,e.ReadableStreamBYOBRequest=J_,e.ReadableStreamDefaultController=Ah,e.ReadableStreamDefaultReader=pe,e.TransformStream=w4,e.TransformStreamDefaultController=X0,e.WritableStream=G0,e.WritableStreamDefaultController=GE,e.WritableStreamDefaultWriter=_h})});var Zze=b(()=>{if(!globalThis.ReadableStream)try{let e=require("node:process"),{emitWarning:t}=e;try{e.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),e.emitWarning=t}catch(r){throw e.emitWarning=t,r}}catch{Object.assign(globalThis,Jze())}try{let{Blob:e}=require("buffer");e&&!e.prototype.stream&&(e.prototype.stream=function(r){let n=0,i=this;return new ReadableStream({type:"bytes",async pull(s){let o=await i.slice(n,Math.min(i.size,n+65536)).arrayBuffer();n+=o.byteLength,s.enqueue(new Uint8Array(o)),n===i.size&&s.close()}})})}catch{}});async function*Wie(e,t=!0){for(let r of e)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(t){let n=r.byteOffset,i=r.byteOffset+r.byteLength;for(;n!==i;){let s=Math.min(i-n,eQe),a=r.buffer.slice(n,n+s);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,i=r;for(;n!==i.size;){let a=await i.slice(n,Math.min(i.size,n+eQe)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var ZMn,eQe,tQe,pIr,kd,rR=ve(()=>{ZMn=Se(Zze(),1);eQe=65536;tQe=class Xie{#e=[];#t="";#r=0;#n="transparent";constructor(t=[],r={}){if(typeof t!="object"||t===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof t[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let s of t){let a;ArrayBuffer.isView(s)?a=new Uint8Array(s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength)):s instanceof ArrayBuffer?a=new Uint8Array(s.slice(0)):s instanceof Xie?a=s:a=n.encode(`${s}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let i=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(i)?i:""}get size(){return this.#r}get type(){return this.#t}async text(){let t=new TextDecoder,r="";for await(let n of Wie(this.#e,!1))r+=t.decode(n,{stream:!0});return r+=t.decode(),r}async arrayBuffer(){let t=new Uint8Array(this.size),r=0;for await(let n of Wie(this.#e,!1))t.set(n,r),r+=n.length;return t.buffer}stream(){let t=Wie(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await t.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await t.return()}})}slice(t=0,r=this.size,n=""){let{size:i}=this,s=t<0?Math.max(i+t,0):Math.min(t,i),a=r<0?Math.max(i+r,0):Math.min(r,i),o=Math.max(a-s,0),u=this.#e,c=[],l=0;for(let f of u){if(l>=o)break;let p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(s&&p<=s)s-=p,a-=p;else{let h;ArrayBuffer.isView(f)?(h=f.subarray(s,Math.min(p,a)),l+=h.byteLength):(h=f.slice(s,Math.min(p,a)),l+=h.size),a-=p,c.push(h),s=0}}let d=new Xie([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=c,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](t){return t&&typeof t=="object"&&typeof t.constructor=="function"&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&/^(Blob|File)$/.test(t[Symbol.toStringTag])}};Object.defineProperties(tQe.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});pIr=tQe,kd=pIr});var hIr,mIr,Yg,Jie=ve(()=>{rR();hIr=class extends kd{#e=0;#t="";constructor(t,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(t,n),n===null&&(n={});let i=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(i)||(this.#e=i),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](t){return!!t&&t instanceof kd&&/^(File)$/.test(t[Symbol.toStringTag])}},mIr=hIr,Yg=mIr});function iQe(e,t=kd){var r=`${rQe()}${rQe()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],i=`--${r}\r -Content-Disposition: form-data; name="`;return e.forEach((s,a)=>typeof s=="string"?n.push(i+Zie(a)+`"\r +`);if(f===-1){a9("have not received end of HTTP headers yet..."),i();return}let h=d.slice(0,f).toString("ascii").split(`\r +`),p=h.shift();if(!p)return e.destroy(),r(new Error("No header received from proxy CONNECT response"));let m=p.split(" "),g=+m[1],_=m.slice(2).join(" "),y={};for(let A of h){if(!A)continue;let E=A.indexOf(":");if(E===-1)return e.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${A}"`));let v=A.slice(0,E).toLowerCase(),b=A.slice(E+1).trimStart(),I=y[v];typeof I=="string"?y[v]=[I,b]:Array.isArray(I)?I.push(b):y[v]=b}a9("got proxy server response: %o %o",p,y),a(),t({connect:{statusCode:g,statusText:_,headers:y},buffered:d})}e.on("error",c),e.on("end",o),i()})}ER.parseProxyResponse=E5r});var Frt=S(Dd=>{"use strict";var y5r=Dd&&Dd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),v5r=Dd&&Dd.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Brt=Dd&&Dd.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&y5r(t,e,r);return v5r(t,e),t},Urt=Dd&&Dd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Dd,"__esModule",{value:!0});Dd.HttpsProxyAgent=void 0;var o9=Brt(require("net")),Lrt=Brt(require("tls")),S5r=Urt(require("assert")),T5r=Urt(lde()),b5r=Drt(),I5r=require("url"),R5r=Prt(),iP=(0,T5r.default)("https-proxy-agent"),Mrt=e=>e.servername===void 0&&e.host&&!o9.isIP(e.host)?{...e,servername:e.host}:e,c9=class extends b5r.Agent{constructor(t,r){super(r),this.options={path:void 0},this.proxy=typeof t=="string"?new I5r.URL(t):t,this.proxyHeaders=r?.headers??{},iP("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?krt(r,"headers"):null,host:n,port:s}}async connect(t,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(iP("Creating `tls.Socket`: %o",this.connectOpts),s=Lrt.connect(Mrt(this.connectOpts))):(iP("Creating `net.Socket`: %o",this.connectOpts),s=o9.connect(this.connectOpts));let i=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=o9.isIPv6(r.host)?`[${r.host}]`:r.host,o=`CONNECT ${a}:${r.port} HTTP/1.1\r +`;if(n.username||n.password){let f=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;i["Proxy-Authorization"]=`Basic ${Buffer.from(f).toString("base64")}`}i.Host=`${a}:${r.port}`,i["Proxy-Connection"]||(i["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let f of Object.keys(i))o+=`${f}: ${i[f]}\r +`;let c=(0,R5r.parseProxyResponse)(s);s.write(`${o}\r +`);let{connect:u,buffered:l}=await c;if(t.emit("proxyConnect",u),this.emit("proxyConnect",u,t),u.statusCode===200)return t.once("socket",C5r),r.secureEndpoint?(iP("Upgrading socket connection to TLS"),Lrt.connect({...krt(Mrt(r),"host","path","port"),socket:s})):s;s.destroy();let d=new o9.Socket({writable:!1});return d.readable=!0,t.once("socket",f=>{iP("Replaying proxy buffer for failed request"),(0,S5r.default)(f.listenerCount("data")>0),f.push(l),f.push(null)}),d}};c9.protocols=["http","https"];Dd.HttpsProxyAgent=c9;function C5r(e){e.resume()}function krt(e,...t){let r={},n;for(n in e)t.includes(n)||(r[n]=e[n]);return r}});var $rt=S((KJn,x5r)=>{x5r.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Krt=S((GJn,Om)=>{var fde=require("fs"),u9=require("path"),w5r=require("os"),N5r=require("crypto"),O5r=$rt(),hde=O5r.version,D5r=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function P5r(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,` +`);let n;for(;(n=D5r.exec(r))!=null;){let s=n[1],i=n[2]||"";i=i.trim();let a=i[0];i=i.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),a==='"'&&(i=i.replace(/\\n/g,` +`),i=i.replace(/\\r/g,"\r")),t[s]=i}return t}function L5r(e){e=e||{};let t=jrt(e);e.path=t;let r=ya.configDotenv(e);if(!r.parsed){let a=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw a.code="MISSING_DATA",a}let n=Vrt(e).split(","),s=n.length,i;for(let a=0;a=s)throw o}return ya.parse(i)}function M5r(e){console.log(`[dotenv@${hde}][WARN] ${e}`)}function aP(e){console.log(`[dotenv@${hde}][DEBUG] ${e}`)}function Hrt(e){console.log(`[dotenv@${hde}] ${e}`)}function Vrt(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function k5r(e,t){let r;try{r=new URL(t)}catch(o){if(o.code==="ERR_INVALID_URL"){let c=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw c.code="INVALID_DOTENV_KEY",c}throw o}let n=r.password;if(!n){let o=new Error("INVALID_DOTENV_KEY: Missing key part");throw o.code="INVALID_DOTENV_KEY",o}let s=r.searchParams.get("environment");if(!s){let o=new Error("INVALID_DOTENV_KEY: Missing environment part");throw o.code="INVALID_DOTENV_KEY",o}let i=`DOTENV_VAULT_${s.toUpperCase()}`,a=e.parsed[i];if(!a){let o=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw o.code="NOT_FOUND_DOTENV_ENVIRONMENT",o}return{ciphertext:a,key:n}}function jrt(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)fde.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=u9.resolve(process.cwd(),".env.vault");return fde.existsSync(t)?t:null}function qrt(e){return e[0]==="~"?u9.join(w5r.homedir(),e.slice(1)):e}function B5r(e){let t=!!(e&&e.debug),r=e&&"quiet"in e?e.quiet:!0;(t||!r)&&Hrt("Loading env from encrypted .env.vault");let n=ya._parseVault(e),s=process.env;return e&&e.processEnv!=null&&(s=e.processEnv),ya.populate(s,n,e),{parsed:n}}function U5r(e){let t=u9.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug),s=e&&"quiet"in e?e.quiet:!0;e&&e.encoding?r=e.encoding:n&&aP("No encoding is specified. UTF-8 is used by default");let i=[t];if(e&&e.path)if(!Array.isArray(e.path))i=[qrt(e.path)];else{i=[];for(let u of e.path)i.push(qrt(u))}let a,o={};for(let u of i)try{let l=ya.parse(fde.readFileSync(u,{encoding:r}));ya.populate(o,l,e)}catch(l){n&&aP(`Failed to load ${u} ${l.message}`),a=l}let c=process.env;if(e&&e.processEnv!=null&&(c=e.processEnv),ya.populate(c,o,e),n||!s){let u=Object.keys(o).length,l=[];for(let d of i)try{let f=u9.relative(process.cwd(),d);l.push(f)}catch(f){n&&aP(`Failed to load ${d} ${f.message}`),a=f}Hrt(`injecting env (${u}) from ${l.join(",")}`)}return a?{parsed:o,error:a}:{parsed:o}}function F5r(e){if(Vrt(e).length===0)return ya.configDotenv(e);let t=jrt(e);return t?ya._configVault(e):(M5r(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),ya.configDotenv(e))}function $5r(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),s=n.subarray(0,12),i=n.subarray(-16);n=n.subarray(12,-16);try{let a=N5r.createDecipheriv("aes-256-gcm",r,s);return a.setAuthTag(i),`${a.update(n)}${a.final()}`}catch(a){let o=a instanceof RangeError,c=a.message==="Invalid key length",u=a.message==="Unsupported state or unable to authenticate data";if(o||c){let l=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw l.code="INVALID_DOTENV_KEY",l}else if(u){let l=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw l.code="DECRYPTION_FAILED",l}else throw a}}function q5r(e,t,r={}){let n=!!(r&&r.debug),s=!!(r&&r.override);if(typeof t!="object"){let i=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw i.code="OBJECT_REQUIRED",i}for(let i of Object.keys(t))Object.prototype.hasOwnProperty.call(e,i)?(s===!0&&(e[i]=t[i]),n&&aP(s===!0?`"${i}" is already defined and WAS overwritten`:`"${i}" is already defined and was NOT overwritten`)):e[i]=t[i]}var ya={configDotenv:U5r,_configVault:B5r,_parseVault:L5r,config:F5r,decrypt:$5r,parse:P5r,populate:q5r};Om.exports.configDotenv=ya.configDotenv;Om.exports._configVault=ya._configVault;Om.exports._parseVault=ya._parseVault;Om.exports.config=ya.config;Om.exports.decrypt=ya.decrypt;Om.exports.parse=ya.parse;Om.exports.populate=ya.populate;Om.exports=ya});function H5r(e){if(!/^data:/i.test(e))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');e=e.replace(/\r?\n/g,"");let t=e.indexOf(",");if(t===-1||t<=4)throw new TypeError("malformed data: URI");let r=e.substring(5,t).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l{Grt=H5r});var Qrt=S((l9,Yrt)=>{(function(e,t){typeof l9=="object"&&typeof Yrt<"u"?t(l9):typeof define=="function"&&define.amd?define(["exports"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.WebStreamsPolyfill={}))})(l9,function(e){"use strict";function t(){}function r(C){return typeof C=="object"&&C!==null||typeof C=="function"}let n=t;function s(C,O){try{Object.defineProperty(C,"name",{value:O,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(C){return new i(C)}function u(C){return c(O=>O(C))}function l(C){return o(C)}function d(C,O,V){return a.call(C,O,V)}function f(C,O,V){d(d(C,O,V),void 0,n)}function h(C,O){f(C,O)}function p(C,O){f(C,void 0,O)}function m(C,O,V){return d(C,O,V)}function g(C){d(C,void 0,n)}let _=C=>{if(typeof queueMicrotask=="function")_=queueMicrotask;else{let O=u(void 0);_=V=>d(O,V)}return _(C)};function y(C,O,V){if(typeof C!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(C,O,V)}function A(C,O,V){try{return u(y(C,O,V))}catch(fe){return l(fe)}}let E=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(O){let V=this._back,fe=V;V._elements.length===E-1&&(fe={_elements:[],_next:void 0}),V._elements.push(O),fe!==V&&(this._back=fe,V._next=fe),++this._size}shift(){let O=this._front,V=O,fe=this._cursor,ve=fe+1,Oe=O._elements,Ue=Oe[fe];return ve===E&&(V=O._next,ve=0),--this._size,this._cursor=ve,O!==V&&(this._front=V),Oe[fe]=void 0,Ue}forEach(O){let V=this._cursor,fe=this._front,ve=fe._elements;for(;(V!==ve.length||fe._next!==void 0)&&!(V===ve.length&&(fe=fe._next,ve=fe._elements,V=0,ve.length===0));)O(ve[V]),++V}peek(){let O=this._front,V=this._cursor;return O._elements[V]}}let b=Symbol("[[AbortSteps]]"),I=Symbol("[[ErrorSteps]]"),T=Symbol("[[CancelSteps]]"),x=Symbol("[[PullSteps]]"),w=Symbol("[[ReleaseSteps]]");function D(C,O){C._ownerReadableStream=O,O._reader=C,O._state==="readable"?G(C):O._state==="closed"?K(C):$(C,O._storedError)}function M(C,O){let V=C._ownerReadableStream;return If(V,O)}function L(C){let O=C._ownerReadableStream;O._state==="readable"?ee(C,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):z(C,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),O._readableStreamController[w](),O._reader=void 0,C._ownerReadableStream=void 0}function U(C){return new TypeError("Cannot "+C+" a stream using a released reader")}function G(C){C._closedPromise=c((O,V)=>{C._closedPromise_resolve=O,C._closedPromise_reject=V})}function $(C,O){G(C),ee(C,O)}function K(C){G(C),oe(C)}function ee(C,O){C._closedPromise_reject!==void 0&&(g(C._closedPromise),C._closedPromise_reject(O),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0)}function z(C,O){$(C,O)}function oe(C){C._closedPromise_resolve!==void 0&&(C._closedPromise_resolve(void 0),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0)}let le=Number.isFinite||function(C){return typeof C=="number"&&isFinite(C)},te=Math.trunc||function(C){return C<0?Math.ceil(C):Math.floor(C)};function Q(C){return typeof C=="object"||typeof C=="function"}function Z(C,O){if(C!==void 0&&!Q(C))throw new TypeError(`${O} is not an object.`)}function de(C,O){if(typeof C!="function")throw new TypeError(`${O} is not a function.`)}function B(C){return typeof C=="object"&&C!==null||typeof C=="function"}function k(C,O){if(!B(C))throw new TypeError(`${O} is not an object.`)}function W(C,O,V){if(C===void 0)throw new TypeError(`Parameter ${O} is required in '${V}'.`)}function P(C,O,V){if(C===void 0)throw new TypeError(`${O} is required in '${V}'.`)}function H(C){return Number(C)}function j(C){return C===0?0:C}function q(C){return j(te(C))}function Y(C,O){let fe=Number.MAX_SAFE_INTEGER,ve=Number(C);if(ve=j(ve),!le(ve))throw new TypeError(`${O} is not a finite number`);if(ve=q(ve),ve<0||ve>fe)throw new TypeError(`${O} is outside the accepted range of 0 to ${fe}, inclusive`);return!le(ve)||ve===0?0:ve}function X(C,O){if(!V_(C))throw new TypeError(`${O} is not a ReadableStream.`)}function ae(C){return new ge(C)}function ne(C,O){C._reader._readRequests.push(O)}function se(C,O,V){let ve=C._reader._readRequests.shift();V?ve._closeSteps():ve._chunkSteps(O)}function J(C){return C._reader._readRequests.length}function ce(C){let O=C._reader;return!(O===void 0||!be(O))}class ge{constructor(O){if(W(O,1,"ReadableStreamDefaultReader"),X(O,"First parameter"),j_(O))throw new TypeError("This stream has already been locked for exclusive reading by another reader");D(this,O),this._readRequests=new v}get closed(){return be(this)?this._closedPromise:l(Ee("closed"))}cancel(O=void 0){return be(this)?this._ownerReadableStream===void 0?l(U("cancel")):M(this,O):l(Ee("cancel"))}read(){if(!be(this))return l(Ee("read"));if(this._ownerReadableStream===void 0)return l(U("read from"));let O,V,fe=c((Oe,Ue)=>{O=Oe,V=Ue});return Te(this,{_chunkSteps:Oe=>O({value:Oe,done:!1}),_closeSteps:()=>O({value:void 0,done:!0}),_errorSteps:Oe=>V(Oe)}),fe}releaseLock(){if(!be(this))throw Ee("releaseLock");this._ownerReadableStream!==void 0&&xe(this)}}Object.defineProperties(ge.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(ge.prototype.cancel,"cancel"),s(ge.prototype.read,"read"),s(ge.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ge.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function be(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_readRequests")?!1:C instanceof ge}function Te(C,O){let V=C._ownerReadableStream;V._disturbed=!0,V._state==="closed"?O._closeSteps():V._state==="errored"?O._errorSteps(V._storedError):V._readableStreamController[x](O)}function xe(C){L(C);let O=new TypeError("Reader was released");Fe(C,O)}function Fe(C,O){let V=C._readRequests;C._readRequests=new v,V.forEach(fe=>{fe._errorSteps(O)})}function Ee(C){return new TypeError(`ReadableStreamDefaultReader.prototype.${C} can only be used on a ReadableStreamDefaultReader`)}let me=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class Ae{constructor(O,V){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=O,this._preventCancel=V}next(){let O=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?m(this._ongoingPromise,O,O):O(),this._ongoingPromise}return(O){let V=()=>this._returnSteps(O);return this._ongoingPromise?m(this._ongoingPromise,V,V):V()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let O=this._reader,V,fe,ve=c((Ue,ut)=>{V=Ue,fe=ut});return Te(O,{_chunkSteps:Ue=>{this._ongoingPromise=void 0,_(()=>V({value:Ue,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,L(O),V({value:void 0,done:!0})},_errorSteps:Ue=>{this._ongoingPromise=void 0,this._isFinished=!0,L(O),fe(Ue)}}),ve}_returnSteps(O){if(this._isFinished)return Promise.resolve({value:O,done:!0});this._isFinished=!0;let V=this._reader;if(!this._preventCancel){let fe=M(V,O);return L(V),m(fe,()=>({value:O,done:!0}))}return L(V),u({value:O,done:!0})}}let pe={next(){return Ie(this)?this._asyncIteratorImpl.next():l(Le("next"))},return(C){return Ie(this)?this._asyncIteratorImpl.return(C):l(Le("return"))}};Object.setPrototypeOf(pe,me);function Se(C,O){let V=ae(C),fe=new Ae(V,O),ve=Object.create(pe);return ve._asyncIteratorImpl=fe,ve}function Ie(C){if(!r(C)||!Object.prototype.hasOwnProperty.call(C,"_asyncIteratorImpl"))return!1;try{return C._asyncIteratorImpl instanceof Ae}catch{return!1}}function Le(C){return new TypeError(`ReadableStreamAsyncIterator.${C} can only be used on a ReadableSteamAsyncIterator`)}let we=Number.isNaN||function(C){return C!==C};var He,Ge,ke;function Qe(C){return C.slice()}function Rt(C,O,V,fe,ve){new Uint8Array(C).set(new Uint8Array(V,fe,ve),O)}let ze=C=>(typeof C.transfer=="function"?ze=O=>O.transfer():typeof structuredClone=="function"?ze=O=>structuredClone(O,{transfer:[O]}):ze=O=>O,ze(C)),ot=C=>(typeof C.detached=="boolean"?ot=O=>O.detached:ot=O=>O.byteLength===0,ot(C));function lt(C,O,V){if(C.slice)return C.slice(O,V);let fe=V-O,ve=new ArrayBuffer(fe);return Rt(ve,0,C,O,fe),ve}function At(C,O){let V=C[O];if(V!=null){if(typeof V!="function")throw new TypeError(`${String(O)} is not a function`);return V}}function gr(C){let O={[Symbol.iterator]:()=>C.iterator},V=async function*(){return yield*O}(),fe=V.next;return{iterator:V,nextMethod:fe,done:!1}}let Vt=(ke=(He=Symbol.asyncIterator)!==null&&He!==void 0?He:(Ge=Symbol.for)===null||Ge===void 0?void 0:Ge.call(Symbol,"Symbol.asyncIterator"))!==null&&ke!==void 0?ke:"@@asyncIterator";function it(C,O="sync",V){if(V===void 0)if(O==="async"){if(V=At(C,Vt),V===void 0){let Oe=At(C,Symbol.iterator),Ue=it(C,"sync",Oe);return gr(Ue)}}else V=At(C,Symbol.iterator);if(V===void 0)throw new TypeError("The object is not iterable");let fe=y(V,C,[]);if(!r(fe))throw new TypeError("The iterator method must return an object");let ve=fe.next;return{iterator:fe,nextMethod:ve,done:!1}}function vt(C){let O=y(C.nextMethod,C.iterator,[]);if(!r(O))throw new TypeError("The iterator.next() method must return an object");return O}function bs(C){return!!C.done}function Un(C){return C.value}function Ls(C){return!(typeof C!="number"||we(C)||C<0)}function Vs(C){let O=lt(C.buffer,C.byteOffset,C.byteOffset+C.byteLength);return new Uint8Array(O)}function Fn(C){let O=C._queue.shift();return C._queueTotalSize-=O.size,C._queueTotalSize<0&&(C._queueTotalSize=0),O.value}function lo(C,O,V){if(!Ls(V)||V===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");C._queue.push({value:O,size:V}),C._queueTotalSize+=V}function yl(C){return C._queue.peek().value}function Lo(C){C._queue=new v,C._queueTotalSize=0}function Yp(C){return C===DataView}function d1(C){return Yp(C.constructor)}function GU(C){return Yp(C)?1:C.BYTES_PER_ELEMENT}class J0{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!Wy(this))throw DZ("view");return this._view}respond(O){if(!Wy(this))throw DZ("respond");if(W(O,1,"respond"),O=Y(O,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(ot(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");QU(this._associatedReadableByteStreamController,O)}respondWithNewView(O){if(!Wy(this))throw DZ("respondWithNewView");if(W(O,1,"respondWithNewView"),!ArrayBuffer.isView(O))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(ot(O.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");WU(this._associatedReadableByteStreamController,O)}}Object.defineProperties(J0.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(J0.prototype.respond,"respond"),s(J0.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(J0.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class Tf{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!vl(this))throw rO("byobRequest");return OZ(this)}get desiredSize(){if(!vl(this))throw rO("desiredSize");return WBe(this)}close(){if(!vl(this))throw rO("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let O=this._controlledReadableByteStream._state;if(O!=="readable")throw new TypeError(`The stream (in ${O} state) is not in the readable state and cannot be closed`);tO(this)}enqueue(O){if(!vl(this))throw rO("enqueue");if(W(O,1,"enqueue"),!ArrayBuffer.isView(O))throw new TypeError("chunk must be an array buffer view");if(O.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(O.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let V=this._controlledReadableByteStream._state;if(V!=="readable")throw new TypeError(`The stream (in ${V} state) is not in the readable state and cannot be enqueued to`);YU(this,O)}error(O=void 0){if(!vl(this))throw rO("error");od(this,O)}[T](O){Xy(this),Lo(this);let V=this._cancelAlgorithm(O);return zU(this),V}[x](O){let V=this._controlledReadableByteStream;if(this._queueTotalSize>0){QBe(this,O);return}let fe=this._autoAllocateChunkSize;if(fe!==void 0){let ve;try{ve=new ArrayBuffer(fe)}catch(Ue){O._errorSteps(Ue);return}let Oe={buffer:ve,bufferByteLength:fe,byteOffset:0,byteLength:fe,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(Oe)}ne(V,O),ad(this)}[w](){if(this._pendingPullIntos.length>0){let O=this._pendingPullIntos.peek();O.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(O)}}}Object.defineProperties(Tf.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Tf.prototype.close,"close"),s(Tf.prototype.enqueue,"enqueue"),s(Tf.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Tf.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function vl(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledReadableByteStream")?!1:C instanceof Tf}function Wy(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_associatedReadableByteStreamController")?!1:C instanceof J0}function ad(C){if(!enr(C))return;if(C._pulling){C._pullAgain=!0;return}C._pulling=!0;let V=C._pullAlgorithm();f(V,()=>(C._pulling=!1,C._pullAgain&&(C._pullAgain=!1,ad(C)),null),fe=>(od(C,fe),null))}function Xy(C){wZ(C),C._pendingPullIntos=new v}function f1(C,O){let V=!1;C._state==="closed"&&(V=!0);let fe=WN(O);O.readerType==="default"?se(C,fe,V):anr(C,fe,V)}function WN(C){let O=C.bytesFilled,V=C.elementSize;return new C.viewConstructor(C.buffer,C.byteOffset,O/V)}function Jy(C,O,V,fe){C._queue.push({buffer:O,byteOffset:V,byteLength:fe}),C._queueTotalSize+=fe}function XN(C,O,V,fe){let ve;try{ve=lt(O,V,V+fe)}catch(Oe){throw od(C,Oe),Oe}Jy(C,ve,0,fe)}function JN(C,O){O.bytesFilled>0&&XN(C,O.buffer,O.byteOffset,O.bytesFilled),h1(C)}function ZN(C,O){let V=Math.min(C._queueTotalSize,O.byteLength-O.bytesFilled),fe=O.bytesFilled+V,ve=V,Oe=!1,Ue=fe%O.elementSize,ut=fe-Ue;ut>=O.minimumFill&&(ve=ut-O.bytesFilled,Oe=!0);let Jt=C._queue;for(;ve>0;){let Mt=Jt.peek(),lr=Math.min(ve,Mt.byteLength),Or=O.byteOffset+O.bytesFilled;Rt(O.buffer,Or,Mt.buffer,Mt.byteOffset,lr),Mt.byteLength===lr?Jt.shift():(Mt.byteOffset+=lr,Mt.byteLength-=lr),C._queueTotalSize-=lr,eO(C,lr,O),ve-=lr}return Oe}function eO(C,O,V){V.bytesFilled+=O}function Zy(C){C._queueTotalSize===0&&C._closeRequested?(zU(C),cO(C._controlledReadableByteStream)):ad(C)}function wZ(C){C._byobRequest!==null&&(C._byobRequest._associatedReadableByteStreamController=void 0,C._byobRequest._view=null,C._byobRequest=null)}function NZ(C){for(;C._pendingPullIntos.length>0;){if(C._queueTotalSize===0)return;let O=C._pendingPullIntos.peek();ZN(C,O)&&(h1(C),f1(C._controlledReadableByteStream,O))}}function Wrr(C){let O=C._controlledReadableByteStream._reader;for(;O._readRequests.length>0;){if(C._queueTotalSize===0)return;let V=O._readRequests.shift();QBe(C,V)}}function Xrr(C,O,V,fe){let ve=C._controlledReadableByteStream,Oe=O.constructor,Ue=GU(Oe),{byteOffset:ut,byteLength:Jt}=O,Mt=V*Ue,lr;try{lr=ze(O.buffer)}catch(Is){fe._errorSteps(Is);return}let Or={buffer:lr,bufferByteLength:lr.byteLength,byteOffset:ut,byteLength:Jt,bytesFilled:0,minimumFill:Mt,elementSize:Ue,viewConstructor:Oe,readerType:"byob"};if(C._pendingPullIntos.length>0){C._pendingPullIntos.push(Or),ZBe(ve,fe);return}if(ve._state==="closed"){let Is=new Oe(Or.buffer,Or.byteOffset,0);fe._closeSteps(Is);return}if(C._queueTotalSize>0){if(ZN(C,Or)){let Is=WN(Or);Zy(C),fe._chunkSteps(Is);return}if(C._closeRequested){let Is=new TypeError("Insufficient bytes to fill elements in the given buffer");od(C,Is),fe._errorSteps(Is);return}}C._pendingPullIntos.push(Or),ZBe(ve,fe),ad(C)}function Jrr(C,O){O.readerType==="none"&&h1(C);let V=C._controlledReadableByteStream;if(PZ(V))for(;e3e(V)>0;){let fe=h1(C);f1(V,fe)}}function Zrr(C,O,V){if(eO(C,O,V),V.readerType==="none"){JN(C,V),NZ(C);return}if(V.bytesFilled0){let ve=V.byteOffset+V.bytesFilled;XN(C,V.buffer,ve-fe,fe)}V.bytesFilled-=fe,f1(C._controlledReadableByteStream,V),NZ(C)}function YBe(C,O){let V=C._pendingPullIntos.peek();wZ(C),C._controlledReadableByteStream._state==="closed"?Jrr(C,V):Zrr(C,O,V),ad(C)}function h1(C){return C._pendingPullIntos.shift()}function enr(C){let O=C._controlledReadableByteStream;return O._state!=="readable"||C._closeRequested||!C._started?!1:!!(ce(O)&&J(O)>0||PZ(O)&&e3e(O)>0||WBe(C)>0)}function zU(C){C._pullAlgorithm=void 0,C._cancelAlgorithm=void 0}function tO(C){let O=C._controlledReadableByteStream;if(!(C._closeRequested||O._state!=="readable")){if(C._queueTotalSize>0){C._closeRequested=!0;return}if(C._pendingPullIntos.length>0){let V=C._pendingPullIntos.peek();if(V.bytesFilled%V.elementSize!==0){let fe=new TypeError("Insufficient bytes to fill elements in the given buffer");throw od(C,fe),fe}}zU(C),cO(O)}}function YU(C,O){let V=C._controlledReadableByteStream;if(C._closeRequested||V._state!=="readable")return;let{buffer:fe,byteOffset:ve,byteLength:Oe}=O;if(ot(fe))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let Ue=ze(fe);if(C._pendingPullIntos.length>0){let ut=C._pendingPullIntos.peek();if(ot(ut.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");wZ(C),ut.buffer=ze(ut.buffer),ut.readerType==="none"&&JN(C,ut)}if(ce(V))if(Wrr(C),J(V)===0)Jy(C,Ue,ve,Oe);else{C._pendingPullIntos.length>0&&h1(C);let ut=new Uint8Array(Ue,ve,Oe);se(V,ut,!1)}else PZ(V)?(Jy(C,Ue,ve,Oe),NZ(C)):Jy(C,Ue,ve,Oe);ad(C)}function od(C,O){let V=C._controlledReadableByteStream;V._state==="readable"&&(Xy(C),Lo(C),zU(C),b3e(V,O))}function QBe(C,O){let V=C._queue.shift();C._queueTotalSize-=V.byteLength,Zy(C);let fe=new Uint8Array(V.buffer,V.byteOffset,V.byteLength);O._chunkSteps(fe)}function OZ(C){if(C._byobRequest===null&&C._pendingPullIntos.length>0){let O=C._pendingPullIntos.peek(),V=new Uint8Array(O.buffer,O.byteOffset+O.bytesFilled,O.byteLength-O.bytesFilled),fe=Object.create(J0.prototype);rnr(fe,C,V),C._byobRequest=fe}return C._byobRequest}function WBe(C){let O=C._controlledReadableByteStream._state;return O==="errored"?null:O==="closed"?0:C._strategyHWM-C._queueTotalSize}function QU(C,O){let V=C._pendingPullIntos.peek();if(C._controlledReadableByteStream._state==="closed"){if(O!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(O===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(V.bytesFilled+O>V.byteLength)throw new RangeError("bytesWritten out of range")}V.buffer=ze(V.buffer),YBe(C,O)}function WU(C,O){let V=C._pendingPullIntos.peek();if(C._controlledReadableByteStream._state==="closed"){if(O.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(O.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(V.byteOffset+V.bytesFilled!==O.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(V.bufferByteLength!==O.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(V.bytesFilled+O.byteLength>V.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ve=O.byteLength;V.buffer=ze(O.buffer),YBe(C,ve)}function XBe(C,O,V,fe,ve,Oe,Ue){O._controlledReadableByteStream=C,O._pullAgain=!1,O._pulling=!1,O._byobRequest=null,O._queue=O._queueTotalSize=void 0,Lo(O),O._closeRequested=!1,O._started=!1,O._strategyHWM=Oe,O._pullAlgorithm=fe,O._cancelAlgorithm=ve,O._autoAllocateChunkSize=Ue,O._pendingPullIntos=new v,C._readableStreamController=O;let ut=V();f(u(ut),()=>(O._started=!0,ad(O),null),Jt=>(od(O,Jt),null))}function tnr(C,O,V){let fe=Object.create(Tf.prototype),ve,Oe,Ue;O.start!==void 0?ve=()=>O.start(fe):ve=()=>{},O.pull!==void 0?Oe=()=>O.pull(fe):Oe=()=>u(void 0),O.cancel!==void 0?Ue=Jt=>O.cancel(Jt):Ue=()=>u(void 0);let ut=O.autoAllocateChunkSize;if(ut===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");XBe(C,fe,ve,Oe,Ue,V,ut)}function rnr(C,O,V){C._associatedReadableByteStreamController=O,C._view=V}function DZ(C){return new TypeError(`ReadableStreamBYOBRequest.prototype.${C} can only be used on a ReadableStreamBYOBRequest`)}function rO(C){return new TypeError(`ReadableByteStreamController.prototype.${C} can only be used on a ReadableByteStreamController`)}function nnr(C,O){Z(C,O);let V=C?.mode;return{mode:V===void 0?void 0:snr(V,`${O} has member 'mode' that`)}}function snr(C,O){if(C=`${C}`,C!=="byob")throw new TypeError(`${O} '${C}' is not a valid enumeration value for ReadableStreamReaderMode`);return C}function inr(C,O){var V;Z(C,O);let fe=(V=C?.min)!==null&&V!==void 0?V:1;return{min:Y(fe,`${O} has member 'min' that`)}}function JBe(C){return new q_(C)}function ZBe(C,O){C._reader._readIntoRequests.push(O)}function anr(C,O,V){let ve=C._reader._readIntoRequests.shift();V?ve._closeSteps(O):ve._chunkSteps(O)}function e3e(C){return C._reader._readIntoRequests.length}function PZ(C){let O=C._reader;return!(O===void 0||!ev(O))}class q_{constructor(O){if(W(O,1,"ReadableStreamBYOBReader"),X(O,"First parameter"),j_(O))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!vl(O._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");D(this,O),this._readIntoRequests=new v}get closed(){return ev(this)?this._closedPromise:l(XU("closed"))}cancel(O=void 0){return ev(this)?this._ownerReadableStream===void 0?l(U("cancel")):M(this,O):l(XU("cancel"))}read(O,V={}){if(!ev(this))return l(XU("read"));if(!ArrayBuffer.isView(O))return l(new TypeError("view must be an array buffer view"));if(O.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(O.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(ot(O.buffer))return l(new TypeError("view's buffer has been detached"));let fe;try{fe=inr(V,"options")}catch(Mt){return l(Mt)}let ve=fe.min;if(ve===0)return l(new TypeError("options.min must be greater than 0"));if(d1(O)){if(ve>O.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ve>O.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(U("read from"));let Oe,Ue,ut=c((Mt,lr)=>{Oe=Mt,Ue=lr});return t3e(this,O,ve,{_chunkSteps:Mt=>Oe({value:Mt,done:!1}),_closeSteps:Mt=>Oe({value:Mt,done:!0}),_errorSteps:Mt=>Ue(Mt)}),ut}releaseLock(){if(!ev(this))throw XU("releaseLock");this._ownerReadableStream!==void 0&&onr(this)}}Object.defineProperties(q_.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(q_.prototype.cancel,"cancel"),s(q_.prototype.read,"read"),s(q_.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(q_.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function ev(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_readIntoRequests")?!1:C instanceof q_}function t3e(C,O,V,fe){let ve=C._ownerReadableStream;ve._disturbed=!0,ve._state==="errored"?fe._errorSteps(ve._storedError):Xrr(ve._readableStreamController,O,V,fe)}function onr(C){L(C);let O=new TypeError("Reader was released");r3e(C,O)}function r3e(C,O){let V=C._readIntoRequests;C._readIntoRequests=new v,V.forEach(fe=>{fe._errorSteps(O)})}function XU(C){return new TypeError(`ReadableStreamBYOBReader.prototype.${C} can only be used on a ReadableStreamBYOBReader`)}function nO(C,O){let{highWaterMark:V}=C;if(V===void 0)return O;if(we(V)||V<0)throw new RangeError("Invalid highWaterMark");return V}function JU(C){let{size:O}=C;return O||(()=>1)}function ZU(C,O){Z(C,O);let V=C?.highWaterMark,fe=C?.size;return{highWaterMark:V===void 0?void 0:H(V),size:fe===void 0?void 0:cnr(fe,`${O} has member 'size' that`)}}function cnr(C,O){return de(C,O),V=>H(C(V))}function unr(C,O){Z(C,O);let V=C?.abort,fe=C?.close,ve=C?.start,Oe=C?.type,Ue=C?.write;return{abort:V===void 0?void 0:lnr(V,C,`${O} has member 'abort' that`),close:fe===void 0?void 0:dnr(fe,C,`${O} has member 'close' that`),start:ve===void 0?void 0:fnr(ve,C,`${O} has member 'start' that`),write:Ue===void 0?void 0:hnr(Ue,C,`${O} has member 'write' that`),type:Oe}}function lnr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function dnr(C,O,V){return de(C,V),()=>A(C,O,[])}function fnr(C,O,V){return de(C,V),fe=>y(C,O,[fe])}function hnr(C,O,V){return de(C,V),(fe,ve)=>A(C,O,[fe,ve])}function n3e(C,O){if(!p1(C))throw new TypeError(`${O} is not a WritableStream.`)}function pnr(C){if(typeof C!="object"||C===null)return!1;try{return typeof C.aborted=="boolean"}catch{return!1}}let mnr=typeof AbortController=="function";function gnr(){if(mnr)return new AbortController}class H_{constructor(O={},V={}){O===void 0?O=null:k(O,"First parameter");let fe=ZU(V,"Second parameter"),ve=unr(O,"First parameter");if(i3e(this),ve.type!==void 0)throw new RangeError("Invalid type is specified");let Ue=JU(fe),ut=nO(fe,1);Nnr(this,ve,ut,Ue)}get locked(){if(!p1(this))throw sF("locked");return m1(this)}abort(O=void 0){return p1(this)?m1(this)?l(new TypeError("Cannot abort a stream that already has a writer")):eF(this,O):l(sF("abort"))}close(){return p1(this)?m1(this)?l(new TypeError("Cannot close a stream that already has a writer")):Z0(this)?l(new TypeError("Cannot close an already-closing stream")):a3e(this):l(sF("close"))}getWriter(){if(!p1(this))throw sF("getWriter");return s3e(this)}}Object.defineProperties(H_.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(H_.prototype.abort,"abort"),s(H_.prototype.close,"close"),s(H_.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(H_.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function s3e(C){return new Qp(C)}function _nr(C,O,V,fe,ve=1,Oe=()=>1){let Ue=Object.create(H_.prototype);i3e(Ue);let ut=Object.create(g1.prototype);return f3e(Ue,ut,C,O,V,fe,ve,Oe),Ue}function i3e(C){C._state="writable",C._storedError=void 0,C._writer=void 0,C._writableStreamController=void 0,C._writeRequests=new v,C._inFlightWriteRequest=void 0,C._closeRequest=void 0,C._inFlightCloseRequest=void 0,C._pendingAbortRequest=void 0,C._backpressure=!1}function p1(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_writableStreamController")?!1:C instanceof H_}function m1(C){return C._writer!==void 0}function eF(C,O){var V;if(C._state==="closed"||C._state==="errored")return u(void 0);C._writableStreamController._abortReason=O,(V=C._writableStreamController._abortController)===null||V===void 0||V.abort(O);let fe=C._state;if(fe==="closed"||fe==="errored")return u(void 0);if(C._pendingAbortRequest!==void 0)return C._pendingAbortRequest._promise;let ve=!1;fe==="erroring"&&(ve=!0,O=void 0);let Oe=c((Ue,ut)=>{C._pendingAbortRequest={_promise:void 0,_resolve:Ue,_reject:ut,_reason:O,_wasAlreadyErroring:ve}});return C._pendingAbortRequest._promise=Oe,ve||MZ(C,O),Oe}function a3e(C){let O=C._state;if(O==="closed"||O==="errored")return l(new TypeError(`The stream (in ${O} state) is not in the writable state and cannot be closed`));let V=c((ve,Oe)=>{let Ue={_resolve:ve,_reject:Oe};C._closeRequest=Ue}),fe=C._writer;return fe!==void 0&&C._backpressure&&O==="writable"&&VZ(fe),Onr(C._writableStreamController),V}function Anr(C){return c((V,fe)=>{let ve={_resolve:V,_reject:fe};C._writeRequests.push(ve)})}function LZ(C,O){if(C._state==="writable"){MZ(C,O);return}kZ(C)}function MZ(C,O){let V=C._writableStreamController;C._state="erroring",C._storedError=O;let fe=C._writer;fe!==void 0&&c3e(fe,O),!Tnr(C)&&V._started&&kZ(C)}function kZ(C){C._state="errored",C._writableStreamController[I]();let O=C._storedError;if(C._writeRequests.forEach(ve=>{ve._reject(O)}),C._writeRequests=new v,C._pendingAbortRequest===void 0){tF(C);return}let V=C._pendingAbortRequest;if(C._pendingAbortRequest=void 0,V._wasAlreadyErroring){V._reject(O),tF(C);return}let fe=C._writableStreamController[b](V._reason);f(fe,()=>(V._resolve(),tF(C),null),ve=>(V._reject(ve),tF(C),null))}function Enr(C){C._inFlightWriteRequest._resolve(void 0),C._inFlightWriteRequest=void 0}function ynr(C,O){C._inFlightWriteRequest._reject(O),C._inFlightWriteRequest=void 0,LZ(C,O)}function vnr(C){C._inFlightCloseRequest._resolve(void 0),C._inFlightCloseRequest=void 0,C._state==="erroring"&&(C._storedError=void 0,C._pendingAbortRequest!==void 0&&(C._pendingAbortRequest._resolve(),C._pendingAbortRequest=void 0)),C._state="closed";let V=C._writer;V!==void 0&&g3e(V)}function Snr(C,O){C._inFlightCloseRequest._reject(O),C._inFlightCloseRequest=void 0,C._pendingAbortRequest!==void 0&&(C._pendingAbortRequest._reject(O),C._pendingAbortRequest=void 0),LZ(C,O)}function Z0(C){return!(C._closeRequest===void 0&&C._inFlightCloseRequest===void 0)}function Tnr(C){return!(C._inFlightWriteRequest===void 0&&C._inFlightCloseRequest===void 0)}function bnr(C){C._inFlightCloseRequest=C._closeRequest,C._closeRequest=void 0}function Inr(C){C._inFlightWriteRequest=C._writeRequests.shift()}function tF(C){C._closeRequest!==void 0&&(C._closeRequest._reject(C._storedError),C._closeRequest=void 0);let O=C._writer;O!==void 0&&qZ(O,C._storedError)}function BZ(C,O){let V=C._writer;V!==void 0&&O!==C._backpressure&&(O?Unr(V):VZ(V)),C._backpressure=O}class Qp{constructor(O){if(W(O,1,"WritableStreamDefaultWriter"),n3e(O,"First parameter"),m1(O))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=O,O._writer=this;let V=O._state;if(V==="writable")!Z0(O)&&O._backpressure?aF(this):_3e(this),iF(this);else if(V==="erroring")HZ(this,O._storedError),iF(this);else if(V==="closed")_3e(this),knr(this);else{let fe=O._storedError;HZ(this,fe),m3e(this,fe)}}get closed(){return tv(this)?this._closedPromise:l(rv("closed"))}get desiredSize(){if(!tv(this))throw rv("desiredSize");if(this._ownerWritableStream===void 0)throw iO("desiredSize");return wnr(this)}get ready(){return tv(this)?this._readyPromise:l(rv("ready"))}abort(O=void 0){return tv(this)?this._ownerWritableStream===void 0?l(iO("abort")):Rnr(this,O):l(rv("abort"))}close(){if(!tv(this))return l(rv("close"));let O=this._ownerWritableStream;return O===void 0?l(iO("close")):Z0(O)?l(new TypeError("Cannot close an already-closing stream")):o3e(this)}releaseLock(){if(!tv(this))throw rv("releaseLock");this._ownerWritableStream!==void 0&&u3e(this)}write(O=void 0){return tv(this)?this._ownerWritableStream===void 0?l(iO("write to")):l3e(this,O):l(rv("write"))}}Object.defineProperties(Qp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(Qp.prototype.abort,"abort"),s(Qp.prototype.close,"close"),s(Qp.prototype.releaseLock,"releaseLock"),s(Qp.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Qp.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function tv(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_ownerWritableStream")?!1:C instanceof Qp}function Rnr(C,O){let V=C._ownerWritableStream;return eF(V,O)}function o3e(C){let O=C._ownerWritableStream;return a3e(O)}function Cnr(C){let O=C._ownerWritableStream,V=O._state;return Z0(O)||V==="closed"?u(void 0):V==="errored"?l(O._storedError):o3e(C)}function xnr(C,O){C._closedPromiseState==="pending"?qZ(C,O):Bnr(C,O)}function c3e(C,O){C._readyPromiseState==="pending"?A3e(C,O):Fnr(C,O)}function wnr(C){let O=C._ownerWritableStream,V=O._state;return V==="errored"||V==="erroring"?null:V==="closed"?0:h3e(O._writableStreamController)}function u3e(C){let O=C._ownerWritableStream,V=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");c3e(C,V),xnr(C,V),O._writer=void 0,C._ownerWritableStream=void 0}function l3e(C,O){let V=C._ownerWritableStream,fe=V._writableStreamController,ve=Dnr(fe,O);if(V!==C._ownerWritableStream)return l(iO("write to"));let Oe=V._state;if(Oe==="errored")return l(V._storedError);if(Z0(V)||Oe==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(Oe==="erroring")return l(V._storedError);let Ue=Anr(V);return Pnr(fe,O,ve),Ue}let d3e={};class g1{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!UZ(this))throw $Z("abortReason");return this._abortReason}get signal(){if(!UZ(this))throw $Z("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(O=void 0){if(!UZ(this))throw $Z("error");this._controlledWritableStream._state==="writable"&&p3e(this,O)}[b](O){let V=this._abortAlgorithm(O);return rF(this),V}[I](){Lo(this)}}Object.defineProperties(g1.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(g1.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function UZ(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledWritableStream")?!1:C instanceof g1}function f3e(C,O,V,fe,ve,Oe,Ue,ut){O._controlledWritableStream=C,C._writableStreamController=O,O._queue=void 0,O._queueTotalSize=void 0,Lo(O),O._abortReason=void 0,O._abortController=gnr(),O._started=!1,O._strategySizeAlgorithm=ut,O._strategyHWM=Ue,O._writeAlgorithm=fe,O._closeAlgorithm=ve,O._abortAlgorithm=Oe;let Jt=FZ(O);BZ(C,Jt);let Mt=V(),lr=u(Mt);f(lr,()=>(O._started=!0,nF(O),null),Or=>(O._started=!0,LZ(C,Or),null))}function Nnr(C,O,V,fe){let ve=Object.create(g1.prototype),Oe,Ue,ut,Jt;O.start!==void 0?Oe=()=>O.start(ve):Oe=()=>{},O.write!==void 0?Ue=Mt=>O.write(Mt,ve):Ue=()=>u(void 0),O.close!==void 0?ut=()=>O.close():ut=()=>u(void 0),O.abort!==void 0?Jt=Mt=>O.abort(Mt):Jt=()=>u(void 0),f3e(C,ve,Oe,Ue,ut,Jt,V,fe)}function rF(C){C._writeAlgorithm=void 0,C._closeAlgorithm=void 0,C._abortAlgorithm=void 0,C._strategySizeAlgorithm=void 0}function Onr(C){lo(C,d3e,0),nF(C)}function Dnr(C,O){try{return C._strategySizeAlgorithm(O)}catch(V){return sO(C,V),1}}function h3e(C){return C._strategyHWM-C._queueTotalSize}function Pnr(C,O,V){try{lo(C,O,V)}catch(ve){sO(C,ve);return}let fe=C._controlledWritableStream;if(!Z0(fe)&&fe._state==="writable"){let ve=FZ(C);BZ(fe,ve)}nF(C)}function nF(C){let O=C._controlledWritableStream;if(!C._started||O._inFlightWriteRequest!==void 0)return;if(O._state==="erroring"){kZ(O);return}if(C._queue.length===0)return;let fe=yl(C);fe===d3e?Lnr(C):Mnr(C,fe)}function sO(C,O){C._controlledWritableStream._state==="writable"&&p3e(C,O)}function Lnr(C){let O=C._controlledWritableStream;bnr(O),Fn(C);let V=C._closeAlgorithm();rF(C),f(V,()=>(vnr(O),null),fe=>(Snr(O,fe),null))}function Mnr(C,O){let V=C._controlledWritableStream;Inr(V);let fe=C._writeAlgorithm(O);f(fe,()=>{Enr(V);let ve=V._state;if(Fn(C),!Z0(V)&&ve==="writable"){let Oe=FZ(C);BZ(V,Oe)}return nF(C),null},ve=>(V._state==="writable"&&rF(C),ynr(V,ve),null))}function FZ(C){return h3e(C)<=0}function p3e(C,O){let V=C._controlledWritableStream;rF(C),MZ(V,O)}function sF(C){return new TypeError(`WritableStream.prototype.${C} can only be used on a WritableStream`)}function $Z(C){return new TypeError(`WritableStreamDefaultController.prototype.${C} can only be used on a WritableStreamDefaultController`)}function rv(C){return new TypeError(`WritableStreamDefaultWriter.prototype.${C} can only be used on a WritableStreamDefaultWriter`)}function iO(C){return new TypeError("Cannot "+C+" a stream using a released writer")}function iF(C){C._closedPromise=c((O,V)=>{C._closedPromise_resolve=O,C._closedPromise_reject=V,C._closedPromiseState="pending"})}function m3e(C,O){iF(C),qZ(C,O)}function knr(C){iF(C),g3e(C)}function qZ(C,O){C._closedPromise_reject!==void 0&&(g(C._closedPromise),C._closedPromise_reject(O),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0,C._closedPromiseState="rejected")}function Bnr(C,O){m3e(C,O)}function g3e(C){C._closedPromise_resolve!==void 0&&(C._closedPromise_resolve(void 0),C._closedPromise_resolve=void 0,C._closedPromise_reject=void 0,C._closedPromiseState="resolved")}function aF(C){C._readyPromise=c((O,V)=>{C._readyPromise_resolve=O,C._readyPromise_reject=V}),C._readyPromiseState="pending"}function HZ(C,O){aF(C),A3e(C,O)}function _3e(C){aF(C),VZ(C)}function A3e(C,O){C._readyPromise_reject!==void 0&&(g(C._readyPromise),C._readyPromise_reject(O),C._readyPromise_resolve=void 0,C._readyPromise_reject=void 0,C._readyPromiseState="rejected")}function Unr(C){aF(C)}function Fnr(C,O){HZ(C,O)}function VZ(C){C._readyPromise_resolve!==void 0&&(C._readyPromise_resolve(void 0),C._readyPromise_resolve=void 0,C._readyPromise_reject=void 0,C._readyPromiseState="fulfilled")}function $nr(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let jZ=$nr();function qnr(C){if(!(typeof C=="function"||typeof C=="object")||C.name!=="DOMException")return!1;try{return new C,!0}catch{return!1}}function Hnr(){let C=jZ?.DOMException;return qnr(C)?C:void 0}function Vnr(){let C=function(V,fe){this.message=V||"",this.name=fe||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(C,"DOMException"),C.prototype=Object.create(Error.prototype),Object.defineProperty(C.prototype,"constructor",{value:C,writable:!0,configurable:!0}),C}let jnr=Hnr()||Vnr();function E3e(C,O,V,fe,ve,Oe){let Ue=ae(C),ut=s3e(O);C._disturbed=!0;let Jt=!1,Mt=u(void 0);return c((lr,Or)=>{let Is;if(Oe!==void 0){if(Is=()=>{let $t=Oe.reason!==void 0?Oe.reason:new jnr("Aborted","AbortError"),Jr=[];fe||Jr.push(()=>O._state==="writable"?eF(O,$t):u(void 0)),ve||Jr.push(()=>C._state==="readable"?If(C,$t):u(void 0)),Eu(()=>Promise.all(Jr.map(Ms=>Ms())),!0,$t)},Oe.aborted){Is();return}Oe.addEventListener("abort",Is)}function Rf(){return c(($t,Jr)=>{function Ms(Sl){Sl?$t():d(y1(),Ms,Jr)}Ms(!1)})}function y1(){return Jt?u(!0):d(ut._readyPromise,()=>c(($t,Jr)=>{Te(Ue,{_chunkSteps:Ms=>{Mt=d(l3e(ut,Ms),void 0,t),$t(!1)},_closeSteps:()=>$t(!0),_errorSteps:Jr})}))}if(Xp(C,Ue._closedPromise,$t=>(fe?cd(!0,$t):Eu(()=>eF(O,$t),!0,$t),null)),Xp(O,ut._closedPromise,$t=>(ve?cd(!0,$t):Eu(()=>If(C,$t),!0,$t),null)),Pc(C,Ue._closedPromise,()=>(V?cd():Eu(()=>Cnr(ut)),null)),Z0(O)||O._state==="closed"){let $t=new TypeError("the destination writable stream closed before all data could be piped to it");ve?cd(!0,$t):Eu(()=>If(C,$t),!0,$t)}g(Rf());function G_(){let $t=Mt;return d(Mt,()=>$t!==Mt?G_():void 0)}function Xp($t,Jr,Ms){$t._state==="errored"?Ms($t._storedError):p(Jr,Ms)}function Pc($t,Jr,Ms){$t._state==="closed"?Ms():h(Jr,Ms)}function Eu($t,Jr,Ms){if(Jt)return;Jt=!0,O._state==="writable"&&!Z0(O)?h(G_(),Sl):Sl();function Sl(){return f($t(),()=>Jp(Jr,Ms),v1=>Jp(!0,v1)),null}}function cd($t,Jr){Jt||(Jt=!0,O._state==="writable"&&!Z0(O)?h(G_(),()=>Jp($t,Jr)):Jp($t,Jr))}function Jp($t,Jr){return u3e(ut),L(Ue),Oe!==void 0&&Oe.removeEventListener("abort",Is),$t?Or(Jr):lr(void 0),null}})}class Wp{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!oF(this))throw uF("desiredSize");return KZ(this)}close(){if(!oF(this))throw uF("close");if(!A1(this))throw new TypeError("The stream is not in a state that permits close");nv(this)}enqueue(O=void 0){if(!oF(this))throw uF("enqueue");if(!A1(this))throw new TypeError("The stream is not in a state that permits enqueue");return _1(this,O)}error(O=void 0){if(!oF(this))throw uF("error");bf(this,O)}[T](O){Lo(this);let V=this._cancelAlgorithm(O);return cF(this),V}[x](O){let V=this._controlledReadableStream;if(this._queue.length>0){let fe=Fn(this);this._closeRequested&&this._queue.length===0?(cF(this),cO(V)):aO(this),O._chunkSteps(fe)}else ne(V,O),aO(this)}[w](){}}Object.defineProperties(Wp.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Wp.prototype.close,"close"),s(Wp.prototype.enqueue,"enqueue"),s(Wp.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Wp.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function oF(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledReadableStream")?!1:C instanceof Wp}function aO(C){if(!y3e(C))return;if(C._pulling){C._pullAgain=!0;return}C._pulling=!0;let V=C._pullAlgorithm();f(V,()=>(C._pulling=!1,C._pullAgain&&(C._pullAgain=!1,aO(C)),null),fe=>(bf(C,fe),null))}function y3e(C){let O=C._controlledReadableStream;return!A1(C)||!C._started?!1:!!(j_(O)&&J(O)>0||KZ(C)>0)}function cF(C){C._pullAlgorithm=void 0,C._cancelAlgorithm=void 0,C._strategySizeAlgorithm=void 0}function nv(C){if(!A1(C))return;let O=C._controlledReadableStream;C._closeRequested=!0,C._queue.length===0&&(cF(C),cO(O))}function _1(C,O){if(!A1(C))return;let V=C._controlledReadableStream;if(j_(V)&&J(V)>0)se(V,O,!1);else{let fe;try{fe=C._strategySizeAlgorithm(O)}catch(ve){throw bf(C,ve),ve}try{lo(C,O,fe)}catch(ve){throw bf(C,ve),ve}}aO(C)}function bf(C,O){let V=C._controlledReadableStream;V._state==="readable"&&(Lo(C),cF(C),b3e(V,O))}function KZ(C){let O=C._controlledReadableStream._state;return O==="errored"?null:O==="closed"?0:C._strategyHWM-C._queueTotalSize}function Knr(C){return!y3e(C)}function A1(C){let O=C._controlledReadableStream._state;return!C._closeRequested&&O==="readable"}function v3e(C,O,V,fe,ve,Oe,Ue){O._controlledReadableStream=C,O._queue=void 0,O._queueTotalSize=void 0,Lo(O),O._started=!1,O._closeRequested=!1,O._pullAgain=!1,O._pulling=!1,O._strategySizeAlgorithm=Ue,O._strategyHWM=Oe,O._pullAlgorithm=fe,O._cancelAlgorithm=ve,C._readableStreamController=O;let ut=V();f(u(ut),()=>(O._started=!0,aO(O),null),Jt=>(bf(O,Jt),null))}function Gnr(C,O,V,fe){let ve=Object.create(Wp.prototype),Oe,Ue,ut;O.start!==void 0?Oe=()=>O.start(ve):Oe=()=>{},O.pull!==void 0?Ue=()=>O.pull(ve):Ue=()=>u(void 0),O.cancel!==void 0?ut=Jt=>O.cancel(Jt):ut=()=>u(void 0),v3e(C,ve,Oe,Ue,ut,V,fe)}function uF(C){return new TypeError(`ReadableStreamDefaultController.prototype.${C} can only be used on a ReadableStreamDefaultController`)}function znr(C,O){return vl(C._readableStreamController)?Qnr(C):Ynr(C)}function Ynr(C,O){let V=ae(C),fe=!1,ve=!1,Oe=!1,Ue=!1,ut,Jt,Mt,lr,Or,Is=c(Pc=>{Or=Pc});function Rf(){return fe?(ve=!0,u(void 0)):(fe=!0,Te(V,{_chunkSteps:Eu=>{_(()=>{ve=!1;let cd=Eu,Jp=Eu;Oe||_1(Mt._readableStreamController,cd),Ue||_1(lr._readableStreamController,Jp),fe=!1,ve&&Rf()})},_closeSteps:()=>{fe=!1,Oe||nv(Mt._readableStreamController),Ue||nv(lr._readableStreamController),(!Oe||!Ue)&&Or(void 0)},_errorSteps:()=>{fe=!1}}),u(void 0))}function y1(Pc){if(Oe=!0,ut=Pc,Ue){let Eu=Qe([ut,Jt]),cd=If(C,Eu);Or(cd)}return Is}function G_(Pc){if(Ue=!0,Jt=Pc,Oe){let Eu=Qe([ut,Jt]),cd=If(C,Eu);Or(cd)}return Is}function Xp(){}return Mt=oO(Xp,Rf,y1),lr=oO(Xp,Rf,G_),p(V._closedPromise,Pc=>(bf(Mt._readableStreamController,Pc),bf(lr._readableStreamController,Pc),(!Oe||!Ue)&&Or(void 0),null)),[Mt,lr]}function Qnr(C){let O=ae(C),V=!1,fe=!1,ve=!1,Oe=!1,Ue=!1,ut,Jt,Mt,lr,Or,Is=c($t=>{Or=$t});function Rf($t){p($t._closedPromise,Jr=>($t!==O||(od(Mt._readableStreamController,Jr),od(lr._readableStreamController,Jr),(!Oe||!Ue)&&Or(void 0)),null))}function y1(){ev(O)&&(L(O),O=ae(C),Rf(O)),Te(O,{_chunkSteps:Jr=>{_(()=>{fe=!1,ve=!1;let Ms=Jr,Sl=Jr;if(!Oe&&!Ue)try{Sl=Vs(Jr)}catch(v1){od(Mt._readableStreamController,v1),od(lr._readableStreamController,v1),Or(If(C,v1));return}Oe||YU(Mt._readableStreamController,Ms),Ue||YU(lr._readableStreamController,Sl),V=!1,fe?Xp():ve&&Pc()})},_closeSteps:()=>{V=!1,Oe||tO(Mt._readableStreamController),Ue||tO(lr._readableStreamController),Mt._readableStreamController._pendingPullIntos.length>0&&QU(Mt._readableStreamController,0),lr._readableStreamController._pendingPullIntos.length>0&&QU(lr._readableStreamController,0),(!Oe||!Ue)&&Or(void 0)},_errorSteps:()=>{V=!1}})}function G_($t,Jr){be(O)&&(L(O),O=JBe(C),Rf(O));let Ms=Jr?lr:Mt,Sl=Jr?Mt:lr;t3e(O,$t,1,{_chunkSteps:S1=>{_(()=>{fe=!1,ve=!1;let T1=Jr?Ue:Oe;if(Jr?Oe:Ue)T1||WU(Ms._readableStreamController,S1);else{let B3e;try{B3e=Vs(S1)}catch(WZ){od(Ms._readableStreamController,WZ),od(Sl._readableStreamController,WZ),Or(If(C,WZ));return}T1||WU(Ms._readableStreamController,S1),YU(Sl._readableStreamController,B3e)}V=!1,fe?Xp():ve&&Pc()})},_closeSteps:S1=>{V=!1;let T1=Jr?Ue:Oe,_F=Jr?Oe:Ue;T1||tO(Ms._readableStreamController),_F||tO(Sl._readableStreamController),S1!==void 0&&(T1||WU(Ms._readableStreamController,S1),!_F&&Sl._readableStreamController._pendingPullIntos.length>0&&QU(Sl._readableStreamController,0)),(!T1||!_F)&&Or(void 0)},_errorSteps:()=>{V=!1}})}function Xp(){if(V)return fe=!0,u(void 0);V=!0;let $t=OZ(Mt._readableStreamController);return $t===null?y1():G_($t._view,!1),u(void 0)}function Pc(){if(V)return ve=!0,u(void 0);V=!0;let $t=OZ(lr._readableStreamController);return $t===null?y1():G_($t._view,!0),u(void 0)}function Eu($t){if(Oe=!0,ut=$t,Ue){let Jr=Qe([ut,Jt]),Ms=If(C,Jr);Or(Ms)}return Is}function cd($t){if(Ue=!0,Jt=$t,Oe){let Jr=Qe([ut,Jt]),Ms=If(C,Jr);Or(Ms)}return Is}function Jp(){}return Mt=T3e(Jp,Xp,Eu),lr=T3e(Jp,Pc,cd),Rf(O),[Mt,lr]}function Wnr(C){return r(C)&&typeof C.getReader<"u"}function Xnr(C){return Wnr(C)?Znr(C.getReader()):Jnr(C)}function Jnr(C){let O,V=it(C,"async"),fe=t;function ve(){let Ue;try{Ue=vt(V)}catch(Jt){return l(Jt)}let ut=u(Ue);return m(ut,Jt=>{if(!r(Jt))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(bs(Jt))nv(O._readableStreamController);else{let lr=Un(Jt);_1(O._readableStreamController,lr)}})}function Oe(Ue){let ut=V.iterator,Jt;try{Jt=At(ut,"return")}catch(Or){return l(Or)}if(Jt===void 0)return u(void 0);let Mt;try{Mt=y(Jt,ut,[Ue])}catch(Or){return l(Or)}let lr=u(Mt);return m(lr,Or=>{if(!r(Or))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return O=oO(fe,ve,Oe,0),O}function Znr(C){let O,V=t;function fe(){let Oe;try{Oe=C.read()}catch(Ue){return l(Ue)}return m(Oe,Ue=>{if(!r(Ue))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(Ue.done)nv(O._readableStreamController);else{let ut=Ue.value;_1(O._readableStreamController,ut)}})}function ve(Oe){try{return u(C.cancel(Oe))}catch(Ue){return l(Ue)}}return O=oO(V,fe,ve,0),O}function esr(C,O){Z(C,O);let V=C,fe=V?.autoAllocateChunkSize,ve=V?.cancel,Oe=V?.pull,Ue=V?.start,ut=V?.type;return{autoAllocateChunkSize:fe===void 0?void 0:Y(fe,`${O} has member 'autoAllocateChunkSize' that`),cancel:ve===void 0?void 0:tsr(ve,V,`${O} has member 'cancel' that`),pull:Oe===void 0?void 0:rsr(Oe,V,`${O} has member 'pull' that`),start:Ue===void 0?void 0:nsr(Ue,V,`${O} has member 'start' that`),type:ut===void 0?void 0:ssr(ut,`${O} has member 'type' that`)}}function tsr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function rsr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function nsr(C,O,V){return de(C,V),fe=>y(C,O,[fe])}function ssr(C,O){if(C=`${C}`,C!=="bytes")throw new TypeError(`${O} '${C}' is not a valid enumeration value for ReadableStreamType`);return C}function isr(C,O){return Z(C,O),{preventCancel:!!C?.preventCancel}}function S3e(C,O){Z(C,O);let V=C?.preventAbort,fe=C?.preventCancel,ve=C?.preventClose,Oe=C?.signal;return Oe!==void 0&&asr(Oe,`${O} has member 'signal' that`),{preventAbort:!!V,preventCancel:!!fe,preventClose:!!ve,signal:Oe}}function asr(C,O){if(!pnr(C))throw new TypeError(`${O} is not an AbortSignal.`)}function osr(C,O){Z(C,O);let V=C?.readable;P(V,"readable","ReadableWritablePair"),X(V,`${O} has member 'readable' that`);let fe=C?.writable;return P(fe,"writable","ReadableWritablePair"),n3e(fe,`${O} has member 'writable' that`),{readable:V,writable:fe}}class Mo{constructor(O={},V={}){O===void 0?O=null:k(O,"First parameter");let fe=ZU(V,"Second parameter"),ve=esr(O,"First parameter");if(GZ(this),ve.type==="bytes"){if(fe.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let Oe=nO(fe,0);tnr(this,ve,Oe)}else{let Oe=JU(fe),Ue=nO(fe,1);Gnr(this,ve,Ue,Oe)}}get locked(){if(!V_(this))throw sv("locked");return j_(this)}cancel(O=void 0){return V_(this)?j_(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):If(this,O):l(sv("cancel"))}getReader(O=void 0){if(!V_(this))throw sv("getReader");return nnr(O,"First parameter").mode===void 0?ae(this):JBe(this)}pipeThrough(O,V={}){if(!V_(this))throw sv("pipeThrough");W(O,1,"pipeThrough");let fe=osr(O,"First parameter"),ve=S3e(V,"Second parameter");if(j_(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(m1(fe.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let Oe=E3e(this,fe.writable,ve.preventClose,ve.preventAbort,ve.preventCancel,ve.signal);return g(Oe),fe.readable}pipeTo(O,V={}){if(!V_(this))return l(sv("pipeTo"));if(O===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!p1(O))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let fe;try{fe=S3e(V,"Second parameter")}catch(ve){return l(ve)}return j_(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):m1(O)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):E3e(this,O,fe.preventClose,fe.preventAbort,fe.preventCancel,fe.signal)}tee(){if(!V_(this))throw sv("tee");let O=znr(this);return Qe(O)}values(O=void 0){if(!V_(this))throw sv("values");let V=isr(O,"First parameter");return Se(this,V.preventCancel)}[Vt](O){return this.values(O)}static from(O){return Xnr(O)}}Object.defineProperties(Mo,{from:{enumerable:!0}}),Object.defineProperties(Mo.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Mo.from,"from"),s(Mo.prototype.cancel,"cancel"),s(Mo.prototype.getReader,"getReader"),s(Mo.prototype.pipeThrough,"pipeThrough"),s(Mo.prototype.pipeTo,"pipeTo"),s(Mo.prototype.tee,"tee"),s(Mo.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Mo.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Mo.prototype,Vt,{value:Mo.prototype.values,writable:!0,configurable:!0});function oO(C,O,V,fe=1,ve=()=>1){let Oe=Object.create(Mo.prototype);GZ(Oe);let Ue=Object.create(Wp.prototype);return v3e(Oe,Ue,C,O,V,fe,ve),Oe}function T3e(C,O,V){let fe=Object.create(Mo.prototype);GZ(fe);let ve=Object.create(Tf.prototype);return XBe(fe,ve,C,O,V,0,void 0),fe}function GZ(C){C._state="readable",C._reader=void 0,C._storedError=void 0,C._disturbed=!1}function V_(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_readableStreamController")?!1:C instanceof Mo}function j_(C){return C._reader!==void 0}function If(C,O){if(C._disturbed=!0,C._state==="closed")return u(void 0);if(C._state==="errored")return l(C._storedError);cO(C);let V=C._reader;if(V!==void 0&&ev(V)){let ve=V._readIntoRequests;V._readIntoRequests=new v,ve.forEach(Oe=>{Oe._closeSteps(void 0)})}let fe=C._readableStreamController[T](O);return m(fe,t)}function cO(C){C._state="closed";let O=C._reader;if(O!==void 0&&(oe(O),be(O))){let V=O._readRequests;O._readRequests=new v,V.forEach(fe=>{fe._closeSteps()})}}function b3e(C,O){C._state="errored",C._storedError=O;let V=C._reader;V!==void 0&&(ee(V,O),be(V)?Fe(V,O):r3e(V,O))}function sv(C){return new TypeError(`ReadableStream.prototype.${C} can only be used on a ReadableStream`)}function I3e(C,O){Z(C,O);let V=C?.highWaterMark;return P(V,"highWaterMark","QueuingStrategyInit"),{highWaterMark:H(V)}}let R3e=C=>C.byteLength;s(R3e,"size");class lF{constructor(O){W(O,1,"ByteLengthQueuingStrategy"),O=I3e(O,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=O.highWaterMark}get highWaterMark(){if(!x3e(this))throw C3e("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!x3e(this))throw C3e("size");return R3e}}Object.defineProperties(lF.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(lF.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function C3e(C){return new TypeError(`ByteLengthQueuingStrategy.prototype.${C} can only be used on a ByteLengthQueuingStrategy`)}function x3e(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_byteLengthQueuingStrategyHighWaterMark")?!1:C instanceof lF}let w3e=()=>1;s(w3e,"size");class dF{constructor(O){W(O,1,"CountQueuingStrategy"),O=I3e(O,"First parameter"),this._countQueuingStrategyHighWaterMark=O.highWaterMark}get highWaterMark(){if(!O3e(this))throw N3e("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!O3e(this))throw N3e("size");return w3e}}Object.defineProperties(dF.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dF.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function N3e(C){return new TypeError(`CountQueuingStrategy.prototype.${C} can only be used on a CountQueuingStrategy`)}function O3e(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_countQueuingStrategyHighWaterMark")?!1:C instanceof dF}function csr(C,O){Z(C,O);let V=C?.cancel,fe=C?.flush,ve=C?.readableType,Oe=C?.start,Ue=C?.transform,ut=C?.writableType;return{cancel:V===void 0?void 0:fsr(V,C,`${O} has member 'cancel' that`),flush:fe===void 0?void 0:usr(fe,C,`${O} has member 'flush' that`),readableType:ve,start:Oe===void 0?void 0:lsr(Oe,C,`${O} has member 'start' that`),transform:Ue===void 0?void 0:dsr(Ue,C,`${O} has member 'transform' that`),writableType:ut}}function usr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}function lsr(C,O,V){return de(C,V),fe=>y(C,O,[fe])}function dsr(C,O,V){return de(C,V),(fe,ve)=>A(C,O,[fe,ve])}function fsr(C,O,V){return de(C,V),fe=>A(C,O,[fe])}class fF{constructor(O={},V={},fe={}){O===void 0&&(O=null);let ve=ZU(V,"Second parameter"),Oe=ZU(fe,"Third parameter"),Ue=csr(O,"First parameter");if(Ue.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(Ue.writableType!==void 0)throw new RangeError("Invalid writableType specified");let ut=nO(Oe,0),Jt=JU(Oe),Mt=nO(ve,1),lr=JU(ve),Or,Is=c(Rf=>{Or=Rf});hsr(this,Is,Mt,lr,ut,Jt),msr(this,Ue),Ue.start!==void 0?Or(Ue.start(this._transformStreamController)):Or(void 0)}get readable(){if(!D3e(this))throw k3e("readable");return this._readable}get writable(){if(!D3e(this))throw k3e("writable");return this._writable}}Object.defineProperties(fF.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fF.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function hsr(C,O,V,fe,ve,Oe){function Ue(){return O}function ut(Is){return Asr(C,Is)}function Jt(Is){return Esr(C,Is)}function Mt(){return ysr(C)}C._writable=_nr(Ue,ut,Mt,Jt,V,fe);function lr(){return vsr(C)}function Or(Is){return Ssr(C,Is)}C._readable=oO(Ue,lr,Or,ve,Oe),C._backpressure=void 0,C._backpressureChangePromise=void 0,C._backpressureChangePromise_resolve=void 0,hF(C,!0),C._transformStreamController=void 0}function D3e(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_transformStreamController")?!1:C instanceof fF}function P3e(C,O){bf(C._readable._readableStreamController,O),zZ(C,O)}function zZ(C,O){mF(C._transformStreamController),sO(C._writable._writableStreamController,O),YZ(C)}function YZ(C){C._backpressure&&hF(C,!1)}function hF(C,O){C._backpressureChangePromise!==void 0&&C._backpressureChangePromise_resolve(),C._backpressureChangePromise=c(V=>{C._backpressureChangePromise_resolve=V}),C._backpressure=O}class K_{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!pF(this))throw gF("desiredSize");let O=this._controlledTransformStream._readable._readableStreamController;return KZ(O)}enqueue(O=void 0){if(!pF(this))throw gF("enqueue");L3e(this,O)}error(O=void 0){if(!pF(this))throw gF("error");gsr(this,O)}terminate(){if(!pF(this))throw gF("terminate");_sr(this)}}Object.defineProperties(K_.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(K_.prototype.enqueue,"enqueue"),s(K_.prototype.error,"error"),s(K_.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(K_.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function pF(C){return!r(C)||!Object.prototype.hasOwnProperty.call(C,"_controlledTransformStream")?!1:C instanceof K_}function psr(C,O,V,fe,ve){O._controlledTransformStream=C,C._transformStreamController=O,O._transformAlgorithm=V,O._flushAlgorithm=fe,O._cancelAlgorithm=ve,O._finishPromise=void 0,O._finishPromise_resolve=void 0,O._finishPromise_reject=void 0}function msr(C,O){let V=Object.create(K_.prototype),fe,ve,Oe;O.transform!==void 0?fe=Ue=>O.transform(Ue,V):fe=Ue=>{try{return L3e(V,Ue),u(void 0)}catch(ut){return l(ut)}},O.flush!==void 0?ve=()=>O.flush(V):ve=()=>u(void 0),O.cancel!==void 0?Oe=Ue=>O.cancel(Ue):Oe=()=>u(void 0),psr(C,V,fe,ve,Oe)}function mF(C){C._transformAlgorithm=void 0,C._flushAlgorithm=void 0,C._cancelAlgorithm=void 0}function L3e(C,O){let V=C._controlledTransformStream,fe=V._readable._readableStreamController;if(!A1(fe))throw new TypeError("Readable side is not in a state that permits enqueue");try{_1(fe,O)}catch(Oe){throw zZ(V,Oe),V._readable._storedError}Knr(fe)!==V._backpressure&&hF(V,!0)}function gsr(C,O){P3e(C._controlledTransformStream,O)}function M3e(C,O){let V=C._transformAlgorithm(O);return m(V,void 0,fe=>{throw P3e(C._controlledTransformStream,fe),fe})}function _sr(C){let O=C._controlledTransformStream,V=O._readable._readableStreamController;nv(V);let fe=new TypeError("TransformStream terminated");zZ(O,fe)}function Asr(C,O){let V=C._transformStreamController;if(C._backpressure){let fe=C._backpressureChangePromise;return m(fe,()=>{let ve=C._writable;if(ve._state==="erroring")throw ve._storedError;return M3e(V,O)})}return M3e(V,O)}function Esr(C,O){let V=C._transformStreamController;if(V._finishPromise!==void 0)return V._finishPromise;let fe=C._readable;V._finishPromise=c((Oe,Ue)=>{V._finishPromise_resolve=Oe,V._finishPromise_reject=Ue});let ve=V._cancelAlgorithm(O);return mF(V),f(ve,()=>(fe._state==="errored"?E1(V,fe._storedError):(bf(fe._readableStreamController,O),QZ(V)),null),Oe=>(bf(fe._readableStreamController,Oe),E1(V,Oe),null)),V._finishPromise}function ysr(C){let O=C._transformStreamController;if(O._finishPromise!==void 0)return O._finishPromise;let V=C._readable;O._finishPromise=c((ve,Oe)=>{O._finishPromise_resolve=ve,O._finishPromise_reject=Oe});let fe=O._flushAlgorithm();return mF(O),f(fe,()=>(V._state==="errored"?E1(O,V._storedError):(nv(V._readableStreamController),QZ(O)),null),ve=>(bf(V._readableStreamController,ve),E1(O,ve),null)),O._finishPromise}function vsr(C){return hF(C,!1),C._backpressureChangePromise}function Ssr(C,O){let V=C._transformStreamController;if(V._finishPromise!==void 0)return V._finishPromise;let fe=C._writable;V._finishPromise=c((Oe,Ue)=>{V._finishPromise_resolve=Oe,V._finishPromise_reject=Ue});let ve=V._cancelAlgorithm(O);return mF(V),f(ve,()=>(fe._state==="errored"?E1(V,fe._storedError):(sO(fe._writableStreamController,O),YZ(C),QZ(V)),null),Oe=>(sO(fe._writableStreamController,Oe),YZ(C),E1(V,Oe),null)),V._finishPromise}function gF(C){return new TypeError(`TransformStreamDefaultController.prototype.${C} can only be used on a TransformStreamDefaultController`)}function QZ(C){C._finishPromise_resolve!==void 0&&(C._finishPromise_resolve(),C._finishPromise_resolve=void 0,C._finishPromise_reject=void 0)}function E1(C,O){C._finishPromise_reject!==void 0&&(g(C._finishPromise),C._finishPromise_reject(O),C._finishPromise_resolve=void 0,C._finishPromise_reject=void 0)}function k3e(C){return new TypeError(`TransformStream.prototype.${C} can only be used on a TransformStream`)}e.ByteLengthQueuingStrategy=lF,e.CountQueuingStrategy=dF,e.ReadableByteStreamController=Tf,e.ReadableStream=Mo,e.ReadableStreamBYOBReader=q_,e.ReadableStreamBYOBRequest=J0,e.ReadableStreamDefaultController=Wp,e.ReadableStreamDefaultReader=ge,e.TransformStream=fF,e.TransformStreamDefaultController=K_,e.WritableStream=H_,e.WritableStreamDefaultController=g1,e.WritableStreamDefaultWriter=Qp})});var Wrt=S(()=>{if(!globalThis.ReadableStream)try{let e=require("node:process"),{emitWarning:t}=e;try{e.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),e.emitWarning=t}catch(r){throw e.emitWarning=t,r}}catch{Object.assign(globalThis,Qrt())}try{let{Blob:e}=require("buffer");e&&!e.prototype.stream&&(e.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let o=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=o.byteLength,i.enqueue(new Uint8Array(o)),n===s.size&&i.close()}})})}catch{}});async function*pde(e,t=!0){for(let r of e)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(t){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,Xrt),a=r.buffer.slice(n,n+i);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let a=await s.slice(n,Math.min(s.size,n+Xrt)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var WJn,Xrt,Jrt,V5r,Yf,oP=ie(()=>{WJn=Ne(Wrt(),1);Xrt=65536;Jrt=class mde{#e=[];#t="";#r=0;#n="transparent";constructor(t=[],r={}){if(typeof t!="object"||t===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof t[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of t){let a;ArrayBuffer.isView(i)?a=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?a=new Uint8Array(i.slice(0)):i instanceof mde?a=i:a=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let t=new TextDecoder,r="";for await(let n of pde(this.#e,!1))r+=t.decode(n,{stream:!0});return r+=t.decode(),r}async arrayBuffer(){let t=new Uint8Array(this.size),r=0;for await(let n of pde(this.#e,!1))t.set(n,r),r+=n.length;return t.buffer}stream(){let t=pde(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await t.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await t.return()}})}slice(t=0,r=this.size,n=""){let{size:s}=this,i=t<0?Math.max(s+t,0):Math.min(t,s),a=r<0?Math.max(s+r,0):Math.min(r,s),o=Math.max(a-i,0),c=this.#e,u=[],l=0;for(let f of c){if(l>=o)break;let h=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&h<=i)i-=h,a-=h;else{let p;ArrayBuffer.isView(f)?(p=f.subarray(i,Math.min(h,a)),l+=p.byteLength):(p=f.slice(i,Math.min(h,a)),l+=p.size),a-=h,u.push(p),i=0}}let d=new mde([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](t){return t&&typeof t=="object"&&typeof t.constructor=="function"&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&/^(Blob|File)$/.test(t[Symbol.toStringTag])}};Object.defineProperties(Jrt.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});V5r=Jrt,Yf=V5r});var j5r,K5r,HA,gde=ie(()=>{oP();j5r=class extends Yf{#e=0;#t="";constructor(t,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(t,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](t){return!!t&&t instanceof Yf&&/^(File)$/.test(t[Symbol.toStringTag])}},K5r=j5r,HA=K5r});function tnt(e,t=Yf){var r=`${Zrt()}${Zrt()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r +Content-Disposition: form-data; name="`;return e.forEach((i,a)=>typeof i=="string"?n.push(s+_de(a)+`"\r \r -${s.replace(/\r(?!\n)|(?{rR();Jie();({toStringTag:nR,iterator:gIr,hasInstance:yIr}=Symbol),rQe=Math.random,_Ir="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),nQe=(e,t,r)=>(e+="",/^(Blob|File)$/.test(t&&t[nR])?[(r=r!==void 0?r+"":t[nR]=="File"?t.name:"blob",e),t.name!==r||t[nR]=="blob"?new Yg([t],r,t):t]:[e,t+""]),Zie=(e,t)=>(t?e:e.replace(/\r?\n|\r/g,`\r -`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),uv=(e,t,r)=>{if(t.lengthtypeof t[r]!="function")}append(...t){uv("append",arguments,2),this.#e.push(nQe(...t))}delete(t){uv("delete",arguments,1),t+="",this.#e=this.#e.filter(([r])=>r!==t)}get(t){uv("get",arguments,1),t+="";for(var r=this.#e,n=r.length,i=0;in[0]===t&&r.push(n[1])),r}has(t){return uv("has",arguments,1),t+="",this.#e.some(r=>r[0]===t)}forEach(t,r){uv("forEach",arguments,1);for(var[n,i]of this)t.call(r,i,n,this)}set(...t){uv("set",arguments,2);var r=[],n=!0;t=nQe(...t),this.#e.forEach(i=>{i[0]===t[0]?n&&(n=!r.push(t)):r.push(i)}),n&&r.push(t),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[t]of this)yield t}*values(){for(var[,t]of this)yield t}}});var em,CF=ve(()=>{em=class extends Error{constructor(t,r){super(t),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var eu,ese=ve(()=>{CF();eu=class extends em{constructor(t,r,n){super(t,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var TF,tse,iR,sQe,aQe,oQe,NF=ve(()=>{TF=Symbol.toStringTag,tse=e=>typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&typeof e.sort=="function"&&e[TF]==="URLSearchParams",iR=e=>e&&typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&/^(Blob|File)$/.test(e[TF]),sQe=e=>typeof e=="object"&&(e[TF]==="AbortSignal"||e[TF]==="EventTarget"),aQe=(e,t)=>{let r=new URL(t).hostname,n=new URL(e).hostname;return r===n||r.endsWith(`.${n}`)},oQe=(e,t)=>{let r=new URL(t).protocol,n=new URL(e).protocol;return r===n}});var cQe=b((fLn,uQe)=>{if(!globalThis.DOMException)try{let{MessageChannel:e}=require("worker_threads"),t=new e().port1,r=new ArrayBuffer;t.postMessage(r,[r,r])}catch(e){e.constructor.name==="DOMException"&&(globalThis.DOMException=e.constructor)}uQe.exports=globalThis.DOMException});var cv,lQe,dQe,rse,fQe,pQe,hQe,mQe,gQe,yQe,RF,nse=ve(()=>{cv=require("node:fs"),lQe=require("node:path"),dQe=Se(cQe(),1);Jie();rR();({stat:rse}=cv.promises),fQe=(e,t)=>gQe((0,cv.statSync)(e),e,t),pQe=(e,t)=>rse(e).then(r=>gQe(r,e,t)),hQe=(e,t)=>rse(e).then(r=>yQe(r,e,t)),mQe=(e,t)=>yQe((0,cv.statSync)(e),e,t),gQe=(e,t,r="")=>new kd([new RF({path:t,size:e.size,lastModified:e.mtimeMs,start:0})],{type:r}),yQe=(e,t,r="")=>new Yg([new RF({path:t,size:e.size,lastModified:e.mtimeMs,start:0})],(0,lQe.basename)(t),{type:r,lastModified:e.mtimeMs}),RF=class e{#e;#t;constructor(t){this.#e=t.path,this.#t=t.start,this.size=t.size,this.lastModified=t.lastModified}slice(t,r){return new e({path:this.#e,lastModified:this.lastModified,size:r-t,start:this.#t+t})}async*stream(){let{mtimeMs:t}=await rse(this.#e);if(t>this.lastModified)throw new dQe.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,cv.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var AQe={};ys(AQe,{toFormData:()=>IIr});function wIr(e){let t=e.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!t)return;let r=t[2]||t[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(i,s)=>String.fromCharCode(s)),n}async function IIr(e,t){if(!/multipart/i.test(t))throw new TypeError("Failed to fetch");let r=t.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new ise(r[1]||r[2]),i,s,a,o,u,c,l=[],d=new Wg,f=g=>{a+=y.decode(g,{stream:!0})},p=g=>{l.push(g)},h=()=>{let g=new Yg(l,c,{type:u});d.append(o,g)},m=()=>{d.append(o,a)},y=new TextDecoder("utf-8");y.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=m,i="",s="",a="",o="",u="",c=null,l.length=0},n.onHeaderField=function(g){i+=y.decode(g,{stream:!0})},n.onHeaderValue=function(g){s+=y.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(s+=y.decode(),i=i.toLowerCase(),i==="content-disposition"){let g=s.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),c=wIr(s),c&&(n.onPartData=p,n.onPartEnd=h)}else i==="content-type"&&(u=s);s="",i=""};for await(let g of e)n.write(g);return n.end(),d}var sp,Wn,_Qe,Xg,DF,kF,AIr,sR,vIr,bIr,EIr,SIr,lv,ise,vQe=ve(()=>{nse();xF();sp=0,Wn={START_BOUNDARY:sp++,HEADER_FIELD_START:sp++,HEADER_FIELD:sp++,HEADER_VALUE_START:sp++,HEADER_VALUE:sp++,HEADER_VALUE_ALMOST_DONE:sp++,HEADERS_ALMOST_DONE:sp++,PART_DATA_START:sp++,PART_DATA:sp++,END:sp++},_Qe=1,Xg={PART_BOUNDARY:_Qe,LAST_BOUNDARY:_Qe*=2},DF=10,kF=13,AIr=32,sR=45,vIr=58,bIr=97,EIr=122,SIr=e=>e|32,lv=()=>{},ise=class{constructor(t){this.index=0,this.flags=0,this.onHeaderEnd=lv,this.onHeaderField=lv,this.onHeadersEnd=lv,this.onHeaderValue=lv,this.onPartBegin=lv,this.onPartData=lv,this.onPartEnd=lv,this.boundaryChars={},t=`\r ---`+t;let r=new Uint8Array(t.length);for(let n=0;n{this[_+"Mark"]=r},g=_=>{delete this[_+"Mark"]},v=(_,E,S,C)=>{(E===void 0||E!==S)&&this[_](C&&C.subarray(E,S))},A=(_,E)=>{let S=_+"Mark";S in this&&(E?(v(_,this[S],r,t),delete this[S]):(v(_,this[S],t.length,t),this[S]=0))};for(r=0;rEIr)return;break;case Wn.HEADER_VALUE_START:if(h===AIr)break;y("onHeaderValue"),c=Wn.HEADER_VALUE;case Wn.HEADER_VALUE:h===kF&&(A("onHeaderValue",!0),v("onHeaderEnd"),c=Wn.HEADER_VALUE_ALMOST_DONE);break;case Wn.HEADER_VALUE_ALMOST_DONE:if(h!==DF)return;c=Wn.HEADER_FIELD_START;break;case Wn.HEADERS_ALMOST_DONE:if(h!==DF)return;v("onHeadersEnd"),c=Wn.PART_DATA_START;break;case Wn.PART_DATA_START:c=Wn.PART_DATA,y("onPartData");case Wn.PART_DATA:if(i=u,u===0){for(r+=f;r0)s[u-1]=h;else if(i>0){let _=new Uint8Array(s.buffer,s.byteOffset,s.byteLength);v("onPartData",0,i,_),i=0,y("onPartData"),r--}break;case Wn.END:break;default:throw new Error(`Unexpected state entered: ${c}`)}A("onHeaderField"),A("onHeaderValue"),A("onPartData"),this.index=u,this.state=c,this.flags=l}end(){if(this.state===Wn.HEADER_FIELD_START&&this.index===0||this.state===Wn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Wn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function sse(e){if(e[Uu].disturbed)throw new TypeError(`body used already for: ${e.url}`);if(e[Uu].disturbed=!0,e[Uu].error)throw e[Uu].error;let{body:t}=e;if(t===null)return vc.Buffer.alloc(0);if(!(t instanceof El.default))return vc.Buffer.alloc(0);let r=[],n=0;try{for await(let i of t){if(e.size>0&&n+i.length>e.size){let s=new eu(`content size at ${e.url} over limit: ${e.size}`,"max-size");throw t.destroy(s),s}n+=i.length,r.push(i)}}catch(i){throw i instanceof em?i:new eu(`Invalid response body while trying to fetch ${e.url}: ${i.message}`,"system",i)}if(t.readableEnded===!0||t._readableState.ended===!0)try{return r.every(i=>typeof i=="string")?vc.Buffer.from(r.join("")):vc.Buffer.concat(r,n)}catch(i){throw new eu(`Could not create Buffer from response body for ${e.url}: ${i.message}`,"system",i)}else throw new eu(`Premature close of server response while trying to fetch ${e.url}`)}var El,tm,vc,xIr,Uu,ap,JS,CIr,OF,bQe,EQe,PF=ve(()=>{El=Se(require("node:stream"),1),tm=require("node:util"),vc=require("node:buffer");rR();xF();ese();CF();NF();xIr=(0,tm.promisify)(El.default.pipeline),Uu=Symbol("Body internals"),ap=class{constructor(t,{size:r=0}={}){let n=null;t===null?t=null:tse(t)?t=vc.Buffer.from(t.toString()):iR(t)||vc.Buffer.isBuffer(t)||(tm.types.isAnyArrayBuffer(t)?t=vc.Buffer.from(t):ArrayBuffer.isView(t)?t=vc.Buffer.from(t.buffer,t.byteOffset,t.byteLength):t instanceof El.default||(t instanceof Wg?(t=iQe(t),n=t.type.split("=")[1]):t=vc.Buffer.from(String(t))));let i=t;vc.Buffer.isBuffer(t)?i=El.default.Readable.from(t):iR(t)&&(i=El.default.Readable.from(t.stream())),this[Uu]={body:t,stream:i,boundary:n,disturbed:!1,error:null},this.size=r,t instanceof El.default&&t.on("error",s=>{let a=s instanceof em?s:new eu(`Invalid response body while trying to fetch ${this.url}: ${s.message}`,"system",s);this[Uu].error=a})}get body(){return this[Uu].stream}get bodyUsed(){return this[Uu].disturbed}async arrayBuffer(){let{buffer:t,byteOffset:r,byteLength:n}=await sse(this);return t.slice(r,r+n)}async formData(){let t=this.headers.get("content-type");if(t.startsWith("application/x-www-form-urlencoded")){let n=new Wg,i=new URLSearchParams(await this.text());for(let[s,a]of i)n.append(s,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(vQe(),AQe));return r(this.body,t)}async blob(){let t=this.headers&&this.headers.get("content-type")||this[Uu].body&&this[Uu].body.type||"",r=await this.arrayBuffer();return new kd([r],{type:t})}async json(){let t=await this.text();return JSON.parse(t)}async text(){let t=await sse(this);return new TextDecoder().decode(t)}buffer(){return sse(this)}};ap.prototype.buffer=(0,tm.deprecate)(ap.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(ap.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,tm.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});JS=(e,t)=>{let r,n,{body:i}=e[Uu];if(e.bodyUsed)throw new Error("cannot clone body after it is used");return i instanceof El.default&&typeof i.getBoundary!="function"&&(r=new El.PassThrough({highWaterMark:t}),n=new El.PassThrough({highWaterMark:t}),i.pipe(r),i.pipe(n),e[Uu].stream=r,i=n),i},CIr=(0,tm.deprecate)(e=>e.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),OF=(e,t)=>e===null?null:typeof e=="string"?"text/plain;charset=UTF-8":tse(e)?"application/x-www-form-urlencoded;charset=UTF-8":iR(e)?e.type||null:vc.Buffer.isBuffer(e)||tm.types.isAnyArrayBuffer(e)||ArrayBuffer.isView(e)?null:e instanceof Wg?`multipart/form-data; boundary=${t[Uu].boundary}`:e&&typeof e.getBoundary=="function"?`multipart/form-data;boundary=${CIr(e)}`:e instanceof El.default?null:"text/plain;charset=UTF-8",bQe=e=>{let{body:t}=e[Uu];return t===null?0:iR(t)?t.size:vc.Buffer.isBuffer(t)?t.length:t&&typeof t.getLengthSync=="function"&&t.hasKnownLength&&t.hasKnownLength()?t.getLengthSync():null},EQe=async(e,{body:t})=>{t===null?e.end():await xIr(t,e)}});function SQe(e=[]){return new fo(e.reduce((t,r,n,i)=>(n%2===0&&t.push(i.slice(n,n+2)),t),[]).filter(([t,r])=>{try{return MF(t),ose(t,String(r)),!0}catch{return!1}}))}var ase,aR,MF,ose,fo,LF=ve(()=>{ase=require("node:util"),aR=Se(require("node:http"),1),MF=typeof aR.default.validateHeaderName=="function"?aR.default.validateHeaderName:e=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(e)){let t=new TypeError(`Header name must be a valid HTTP token [${e}]`);throw Object.defineProperty(t,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),t}},ose=typeof aR.default.validateHeaderValue=="function"?aR.default.validateHeaderValue:(e,t)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(t)){let r=new TypeError(`Invalid character in header content ["${e}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},fo=class e extends URLSearchParams{constructor(t){let r=[];if(t instanceof e){let n=t.raw();for(let[i,s]of Object.entries(n))r.push(...s.map(a=>[i,a]))}else if(t!=null)if(typeof t=="object"&&!ase.types.isBoxedPrimitive(t)){let n=t[Symbol.iterator];if(n==null)r.push(...Object.entries(t));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...t].map(i=>{if(typeof i!="object"||ase.types.isBoxedPrimitive(i))throw new TypeError("Each header pair must be an iterable object");return[...i]}).map(i=>{if(i.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...i]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)");return r=r.length>0?r.map(([n,i])=>(MF(n),ose(n,String(i)),[String(n).toLowerCase(),String(i)])):void 0,super(r),new Proxy(this,{get(n,i,s){switch(i){case"append":case"set":return(a,o)=>(MF(a),ose(a,String(o)),URLSearchParams.prototype[i].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(MF(a),URLSearchParams.prototype[i].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,i,s)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(t){let r=this.getAll(t);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(t)&&(n=n.toLowerCase()),n}forEach(t,r=void 0){for(let n of this.keys())Reflect.apply(t,r,[this.get(n),n,this])}*values(){for(let t of this.keys())yield this.get(t)}*entries(){for(let t of this.keys())yield[t,this.get(t)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((t,r)=>(t[r]=this.getAll(r),t),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((t,r)=>{let n=this.getAll(r);return r==="host"?t[r]=n[0]:t[r]=n.length>1?n:n[0],t},{})}};Object.defineProperties(fo.prototype,["get","entries","forEach","values"].reduce((e,t)=>(e[t]={enumerable:!0},e),{}))});var TIr,oR,use=ve(()=>{TIr=new Set([301,302,303,307,308]),oR=e=>TIr.has(e)});var Od,tu,wQe=ve(()=>{LF();PF();use();Od=Symbol("Response internals"),tu=class e extends ap{constructor(t=null,r={}){super(t,r);let n=r.status!=null?r.status:200,i=new fo(r.headers);if(t!==null&&!i.has("Content-Type")){let s=OF(t,this);s&&i.append("Content-Type",s)}this[Od]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:i,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[Od].type}get url(){return this[Od].url||""}get status(){return this[Od].status}get ok(){return this[Od].status>=200&&this[Od].status<300}get redirected(){return this[Od].counter>0}get statusText(){return this[Od].statusText}get headers(){return this[Od].headers}get highWaterMark(){return this[Od].highWaterMark}clone(){return new e(JS(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(t,r=302){if(!oR(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new e(null,{headers:{location:new URL(t).toString()},status:r})}static error(){let t=new e(null,{status:0,statusText:""});return t[Od].type="error",t}static json(t=void 0,r={}){let n=JSON.stringify(t);if(n===void 0)throw new TypeError("data is not JSON serializable");let i=new fo(r&&r.headers);return i.has("content-type")||i.set("content-type","application/json"),new e(n,{...r,headers:i})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(tu.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var IQe,xQe=ve(()=>{IQe=e=>{if(e.search)return e.search;let t=e.href.length-1,r=e.hash||(e.href[t]==="#"?"#":"");return e.href[t-r.length]==="?"?"?":""}});function CQe(e,t=!1){return e==null||(e=new URL(e),/^(about|blob|data):$/.test(e.protocol))?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function DQe(e){if(!NQe.has(e))throw new TypeError(`Invalid referrerPolicy: ${e}`);return e}function NIr(e){if(/^(http|ws)s:$/.test(e.protocol))return!0;let t=e.host.replace(/(^\[)|(]$)/g,""),r=(0,TQe.isIP)(t);return r===4&&/^127\./.test(t)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(t)?!0:e.host==="localhost"||e.host.endsWith(".localhost")?!1:e.protocol==="file:"}function ZS(e){return/^about:(blank|srcdoc)$/.test(e)||e.protocol==="data:"||/^(blob|filesystem):$/.test(e.protocol)?!0:NIr(e)}function kQe(e,{referrerURLCallback:t,referrerOriginCallback:r}={}){if(e.referrer==="no-referrer"||e.referrerPolicy==="")return null;let n=e.referrerPolicy;if(e.referrer==="about:client")return"no-referrer";let i=e.referrer,s=CQe(i),a=CQe(i,!0);s.toString().length>4096&&(s=a),t&&(s=t(s)),r&&(a=r(a));let o=new URL(e.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return s;case"strict-origin":return ZS(s)&&!ZS(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return s.origin===o.origin?s:ZS(s)&&!ZS(o)?"no-referrer":a;case"same-origin":return s.origin===o.origin?s:"no-referrer";case"origin-when-cross-origin":return s.origin===o.origin?s:a;case"no-referrer-when-downgrade":return ZS(s)&&!ZS(o)?"no-referrer":s;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function OQe(e){let t=(e.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of t)n&&NQe.has(n)&&(r=n);return r}var TQe,NQe,RQe,cse=ve(()=>{TQe=require("node:net");NQe=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),RQe="strict-origin-when-cross-origin"});var PQe,MQe,Xs,uR,RIr,Pd,LQe,BQe=ve(()=>{PQe=require("node:url"),MQe=require("node:util");LF();PF();NF();xQe();cse();Xs=Symbol("Request internals"),uR=e=>typeof e=="object"&&typeof e[Xs]=="object",RIr=(0,MQe.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Pd=class e extends ap{constructor(t,r={}){let n;if(uR(t)?n=new URL(t.url):(n=new URL(t),t={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let i=r.method||t.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(i)&&(i=i.toUpperCase()),!uR(r)&&"data"in r&&RIr(),(r.body!=null||uR(t)&&t.body!==null)&&(i==="GET"||i==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let s=r.body?r.body:uR(t)&&t.body!==null?JS(t):null;super(s,{size:r.size||t.size||0});let a=new fo(r.headers||t.headers||{});if(s!==null&&!a.has("Content-Type")){let c=OF(s,this);c&&a.set("Content-Type",c)}let o=uR(t)?t.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!sQe(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let u=r.referrer==null?t.referrer:r.referrer;if(u==="")u="no-referrer";else if(u){let c=new URL(u);u=/^about:(\/\/)?client$/.test(c)?"client":c}else u=void 0;this[Xs]={method:i,redirect:r.redirect||t.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:u},this.follow=r.follow===void 0?t.follow===void 0?20:t.follow:r.follow,this.compress=r.compress===void 0?t.compress===void 0?!0:t.compress:r.compress,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent,this.highWaterMark=r.highWaterMark||t.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||t.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||t.referrerPolicy||""}get method(){return this[Xs].method}get url(){return(0,PQe.format)(this[Xs].parsedURL)}get headers(){return this[Xs].headers}get redirect(){return this[Xs].redirect}get signal(){return this[Xs].signal}get referrer(){if(this[Xs].referrer==="no-referrer")return"";if(this[Xs].referrer==="client")return"about:client";if(this[Xs].referrer)return this[Xs].referrer.toString()}get referrerPolicy(){return this[Xs].referrerPolicy}set referrerPolicy(t){this[Xs].referrerPolicy=DQe(t)}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Pd.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});LQe=e=>{let{parsedURL:t}=e[Xs],r=new fo(e[Xs].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(e.body===null&&/^(post|put)$/i.test(e.method)&&(n="0"),e.body!==null){let o=bQe(e);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),e.referrerPolicy===""&&(e.referrerPolicy=RQe),e.referrer&&e.referrer!=="no-referrer"?e[Xs].referrer=kQe(e):e[Xs].referrer="no-referrer",e[Xs].referrer instanceof URL&&r.set("Referer",e.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),e.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:i}=e;typeof i=="function"&&(i=i(t));let s=IQe(t),a={path:t.pathname+s,method:e.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:e.insecureHTTPParser,agent:i};return{parsedURL:t,options:a}}});var cR,$Qe=ve(()=>{CF();cR=class extends em{constructor(t,r="aborted"){super(t,r)}}});var lse={};ys(lse,{AbortError:()=>cR,Blob:()=>kd,FetchError:()=>eu,File:()=>Yg,FormData:()=>Wg,Headers:()=>fo,Request:()=>Pd,Response:()=>tu,blobFrom:()=>pQe,blobFromSync:()=>fQe,default:()=>fv,fileFrom:()=>hQe,fileFromSync:()=>mQe,isRedirect:()=>oR});async function fv(e,t){return new Promise((r,n)=>{let i=new Pd(e,t),{parsedURL:s,options:a}=LQe(i);if(!DIr.has(s.protocol))throw new TypeError(`node-fetch cannot load ${e}. URL scheme "${s.protocol.replace(/:$/,"")}" is not supported.`);if(s.protocol==="data:"){let h=Yze(i.url),m=new tu(h,{headers:{"Content-Type":h.typeFull}});r(m);return}let o=(s.protocol==="https:"?UQe.default:FQe.default).request,{signal:u}=i,c=null,l=()=>{let h=new cR("The operation was aborted.");n(h),i.body&&i.body instanceof bc.default.Readable&&i.body.destroy(h),!(!c||!c.body)&&c.body.emit("error",h)};if(u&&u.aborted){l();return}let d=()=>{l(),p()},f=o(s.toString(),a);u&&u.addEventListener("abort",d);let p=()=>{f.abort(),u&&u.removeEventListener("abort",d)};f.on("error",h=>{n(new eu(`request to ${i.url} failed, reason: ${h.message}`,"system",h)),p()}),kIr(f,h=>{c&&c.body&&c.body.destroy(h)}),process.version<"v14"&&f.on("socket",h=>{let m;h.prependListener("end",()=>{m=h._eventsCount}),h.prependListener("close",y=>{if(c&&m{f.setTimeout(0);let m=SQe(h.rawHeaders);if(oR(h.statusCode)){let _=m.get("Location"),E=null;try{E=_===null?null:new URL(_,i.url)}catch{if(i.redirect!=="manual"){n(new eu(`uri requested responds with an invalid redirect URL: ${_}`,"invalid-redirect")),p();return}}switch(i.redirect){case"error":n(new eu(`uri requested responds with a redirect, redirect mode is set to error: ${i.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(E===null)break;if(i.counter>=i.follow){n(new eu(`maximum redirect reached at: ${i.url}`,"max-redirect")),p();return}let S={headers:new fo(i.headers),follow:i.follow,counter:i.counter+1,agent:i.agent,compress:i.compress,method:i.method,body:JS(i),signal:i.signal,size:i.size,referrer:i.referrer,referrerPolicy:i.referrerPolicy};if(!aQe(i.url,E)||!oQe(i.url,E))for(let I of["authorization","www-authenticate","cookie","cookie2"])S.headers.delete(I);if(h.statusCode!==303&&i.body&&t.body instanceof bc.default.Readable){n(new eu("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(h.statusCode===303||(h.statusCode===301||h.statusCode===302)&&i.method==="POST")&&(S.method="GET",S.body=void 0,S.headers.delete("content-length"));let C=OQe(m);C&&(S.referrerPolicy=C),r(fv(new Pd(E,S))),p();return}default:return n(new TypeError(`Redirect option '${i.redirect}' is not a valid value of RequestRedirect`))}}u&&h.once("end",()=>{u.removeEventListener("abort",d)});let y=(0,bc.pipeline)(h,new bc.PassThrough,_=>{_&&n(_)});process.version<"v12.10"&&h.on("aborted",d);let g={url:i.url,status:h.statusCode,statusText:h.statusMessage,headers:m,size:i.size,counter:i.counter,highWaterMark:i.highWaterMark},v=m.get("Content-Encoding");if(!i.compress||i.method==="HEAD"||v===null||h.statusCode===204||h.statusCode===304){c=new tu(y,g),r(c);return}let A={flush:dv.default.Z_SYNC_FLUSH,finishFlush:dv.default.Z_SYNC_FLUSH};if(v==="gzip"||v==="x-gzip"){y=(0,bc.pipeline)(y,dv.default.createGunzip(A),_=>{_&&n(_)}),c=new tu(y,g),r(c);return}if(v==="deflate"||v==="x-deflate"){let _=(0,bc.pipeline)(h,new bc.PassThrough,E=>{E&&n(E)});_.once("data",E=>{(E[0]&15)===8?y=(0,bc.pipeline)(y,dv.default.createInflate(),S=>{S&&n(S)}):y=(0,bc.pipeline)(y,dv.default.createInflateRaw(),S=>{S&&n(S)}),c=new tu(y,g),r(c)}),_.once("end",()=>{c||(c=new tu(y,g),r(c))});return}if(v==="br"){y=(0,bc.pipeline)(y,dv.default.createBrotliDecompress(),_=>{_&&n(_)}),c=new tu(y,g),r(c);return}c=new tu(y,g),r(c)}),EQe(f,i).catch(n)})}function kIr(e,t){let r=lR.Buffer.from(`0\r +`,i,`\r +`)),n.push(`--${r}--`),new t(n,{type:"multipart/form-data; boundary="+r})}var cP,G5r,z5r,Zrt,Y5r,ent,_de,oS,VA,d9=ie(()=>{oP();gde();({toStringTag:cP,iterator:G5r,hasInstance:z5r}=Symbol),Zrt=Math.random,Y5r="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),ent=(e,t,r)=>(e+="",/^(Blob|File)$/.test(t&&t[cP])?[(r=r!==void 0?r+"":t[cP]=="File"?t.name:"blob",e),t.name!==r||t[cP]=="blob"?new HA([t],r,t):t]:[e,t+""]),_de=(e,t)=>(t?e:e.replace(/\r?\n|\r/g,`\r +`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),oS=(e,t,r)=>{if(t.lengthtypeof t[r]!="function")}append(...t){oS("append",arguments,2),this.#e.push(ent(...t))}delete(t){oS("delete",arguments,1),t+="",this.#e=this.#e.filter(([r])=>r!==t)}get(t){oS("get",arguments,1),t+="";for(var r=this.#e,n=r.length,s=0;sn[0]===t&&r.push(n[1])),r}has(t){return oS("has",arguments,1),t+="",this.#e.some(r=>r[0]===t)}forEach(t,r){oS("forEach",arguments,1);for(var[n,s]of this)t.call(r,s,n,this)}set(...t){oS("set",arguments,2);var r=[],n=!0;t=ent(...t),this.#e.forEach(s=>{s[0]===t[0]?n&&(n=!r.push(t)):r.push(s)}),n&&r.push(t),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[t]of this)yield t}*values(){for(var[,t]of this)yield t}}});var Dm,f9=ie(()=>{Dm=class extends Error{constructor(t,r){super(t),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var Vc,Ade=ie(()=>{f9();Vc=class extends Dm{constructor(t,r,n){super(t,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var h9,Ede,uP,rnt,nnt,snt,p9=ie(()=>{h9=Symbol.toStringTag,Ede=e=>typeof e=="object"&&typeof e.append=="function"&&typeof e.delete=="function"&&typeof e.get=="function"&&typeof e.getAll=="function"&&typeof e.has=="function"&&typeof e.set=="function"&&typeof e.sort=="function"&&e[h9]==="URLSearchParams",uP=e=>e&&typeof e=="object"&&typeof e.arrayBuffer=="function"&&typeof e.type=="string"&&typeof e.stream=="function"&&typeof e.constructor=="function"&&/^(Blob|File)$/.test(e[h9]),rnt=e=>typeof e=="object"&&(e[h9]==="AbortSignal"||e[h9]==="EventTarget"),nnt=(e,t)=>{let r=new URL(t).hostname,n=new URL(e).hostname;return r===n||r.endsWith(`.${n}`)},snt=(e,t)=>{let r=new URL(t).protocol,n=new URL(e).protocol;return r===n}});var ant=S((uZn,int)=>{if(!globalThis.DOMException)try{let{MessageChannel:e}=require("worker_threads"),t=new e().port1,r=new ArrayBuffer;t.postMessage(r,[r,r])}catch(e){e.constructor.name==="DOMException"&&(globalThis.DOMException=e.constructor)}int.exports=globalThis.DOMException});var cS,ont,cnt,yde,unt,lnt,dnt,fnt,hnt,pnt,m9,vde=ie(()=>{cS=require("node:fs"),ont=require("node:path"),cnt=Ne(ant(),1);gde();oP();({stat:yde}=cS.promises),unt=(e,t)=>hnt((0,cS.statSync)(e),e,t),lnt=(e,t)=>yde(e).then(r=>hnt(r,e,t)),dnt=(e,t)=>yde(e).then(r=>pnt(r,e,t)),fnt=(e,t)=>pnt((0,cS.statSync)(e),e,t),hnt=(e,t,r="")=>new Yf([new m9({path:t,size:e.size,lastModified:e.mtimeMs,start:0})],{type:r}),pnt=(e,t,r="")=>new HA([new m9({path:t,size:e.size,lastModified:e.mtimeMs,start:0})],(0,ont.basename)(t),{type:r,lastModified:e.mtimeMs}),m9=class e{#e;#t;constructor(t){this.#e=t.path,this.#t=t.start,this.size=t.size,this.lastModified=t.lastModified}slice(t,r){return new e({path:this.#e,lastModified:this.lastModified,size:r-t,start:this.#t+t})}async*stream(){let{mtimeMs:t}=await yde(this.#e);if(t>this.lastModified)throw new cnt.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,cS.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var gnt={};kt(gnt,{toFormData:()=>t8r});function e8r(e){let t=e.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!t)return;let r=t[2]||t[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function t8r(e,t){if(!/multipart/i.test(t))throw new TypeError("Failed to fetch");let r=t.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new Sde(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new VA,f=_=>{a+=g.decode(_,{stream:!0})},h=_=>{l.push(_)},p=()=>{let _=new HA(l,u,{type:c});d.append(o,_)},m=()=>{d.append(o,a)},g=new TextDecoder("utf-8");g.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=m,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(_){s+=g.decode(_,{stream:!0})},n.onHeaderValue=function(_){i+=g.decode(_,{stream:!0})},n.onHeaderEnd=function(){if(i+=g.decode(),s=s.toLowerCase(),s==="content-disposition"){let _=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);_&&(o=_[2]||_[3]||""),u=e8r(i),u&&(n.onPartData=h,n.onPartEnd=p)}else s==="content-type"&&(c=i);i="",s=""};for await(let _ of e)n.write(_);return n.end(),d}var wh,Bs,mnt,jA,g9,_9,Q5r,lP,W5r,X5r,J5r,Z5r,uS,Sde,_nt=ie(()=>{vde();d9();wh=0,Bs={START_BOUNDARY:wh++,HEADER_FIELD_START:wh++,HEADER_FIELD:wh++,HEADER_VALUE_START:wh++,HEADER_VALUE:wh++,HEADER_VALUE_ALMOST_DONE:wh++,HEADERS_ALMOST_DONE:wh++,PART_DATA_START:wh++,PART_DATA:wh++,END:wh++},mnt=1,jA={PART_BOUNDARY:mnt,LAST_BOUNDARY:mnt*=2},g9=10,_9=13,Q5r=32,lP=45,W5r=58,X5r=97,J5r=122,Z5r=e=>e|32,uS=()=>{},Sde=class{constructor(t){this.index=0,this.flags=0,this.onHeaderEnd=uS,this.onHeaderField=uS,this.onHeadersEnd=uS,this.onHeaderValue=uS,this.onPartBegin=uS,this.onPartData=uS,this.onPartEnd=uS,this.boundaryChars={},t=`\r +--`+t;let r=new Uint8Array(t.length);for(let n=0;n{this[E+"Mark"]=r},_=E=>{delete this[E+"Mark"]},y=(E,v,b,I)=>{(v===void 0||v!==b)&&this[E](I&&I.subarray(v,b))},A=(E,v)=>{let b=E+"Mark";b in this&&(v?(y(E,this[b],r,t),delete this[b]):(y(E,this[b],t.length,t),this[b]=0))};for(r=0;rJ5r)return;break;case Bs.HEADER_VALUE_START:if(p===Q5r)break;g("onHeaderValue"),u=Bs.HEADER_VALUE;case Bs.HEADER_VALUE:p===_9&&(A("onHeaderValue",!0),y("onHeaderEnd"),u=Bs.HEADER_VALUE_ALMOST_DONE);break;case Bs.HEADER_VALUE_ALMOST_DONE:if(p!==g9)return;u=Bs.HEADER_FIELD_START;break;case Bs.HEADERS_ALMOST_DONE:if(p!==g9)return;y("onHeadersEnd"),u=Bs.PART_DATA_START;break;case Bs.PART_DATA_START:u=Bs.PART_DATA,g("onPartData");case Bs.PART_DATA:if(s=c,c===0){for(r+=f;r0)i[c-1]=p;else if(s>0){let E=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);y("onPartData",0,s,E),s=0,g("onPartData"),r--}break;case Bs.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}A("onHeaderField"),A("onHeaderValue"),A("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===Bs.HEADER_FIELD_START&&this.index===0||this.state===Bs.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==Bs.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function Tde(e){if(e[Fu].disturbed)throw new TypeError(`body used already for: ${e.url}`);if(e[Fu].disturbed=!0,e[Fu].error)throw e[Fu].error;let{body:t}=e;if(t===null)return Cl.Buffer.alloc(0);if(!(t instanceof Pd.default))return Cl.Buffer.alloc(0);let r=[],n=0;try{for await(let s of t){if(e.size>0&&n+s.length>e.size){let i=new Vc(`content size at ${e.url} over limit: ${e.size}`,"max-size");throw t.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof Dm?s:new Vc(`Invalid response body while trying to fetch ${e.url}: ${s.message}`,"system",s)}if(t.readableEnded===!0||t._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Cl.Buffer.from(r.join("")):Cl.Buffer.concat(r,n)}catch(s){throw new Vc(`Could not create Buffer from response body for ${e.url}: ${s.message}`,"system",s)}else throw new Vc(`Premature close of server response while trying to fetch ${e.url}`)}var Pd,Pm,Cl,r8r,Fu,Nh,yR,n8r,A9,Ant,Ent,E9=ie(()=>{Pd=Ne(require("node:stream"),1),Pm=require("node:util"),Cl=require("node:buffer");oP();d9();Ade();f9();p9();r8r=(0,Pm.promisify)(Pd.default.pipeline),Fu=Symbol("Body internals"),Nh=class{constructor(t,{size:r=0}={}){let n=null;t===null?t=null:Ede(t)?t=Cl.Buffer.from(t.toString()):uP(t)||Cl.Buffer.isBuffer(t)||(Pm.types.isAnyArrayBuffer(t)?t=Cl.Buffer.from(t):ArrayBuffer.isView(t)?t=Cl.Buffer.from(t.buffer,t.byteOffset,t.byteLength):t instanceof Pd.default||(t instanceof VA?(t=tnt(t),n=t.type.split("=")[1]):t=Cl.Buffer.from(String(t))));let s=t;Cl.Buffer.isBuffer(t)?s=Pd.default.Readable.from(t):uP(t)&&(s=Pd.default.Readable.from(t.stream())),this[Fu]={body:t,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,t instanceof Pd.default&&t.on("error",i=>{let a=i instanceof Dm?i:new Vc(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[Fu].error=a})}get body(){return this[Fu].stream}get bodyUsed(){return this[Fu].disturbed}async arrayBuffer(){let{buffer:t,byteOffset:r,byteLength:n}=await Tde(this);return t.slice(r,r+n)}async formData(){let t=this.headers.get("content-type");if(t.startsWith("application/x-www-form-urlencoded")){let n=new VA,s=new URLSearchParams(await this.text());for(let[i,a]of s)n.append(i,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(_nt(),gnt));return r(this.body,t)}async blob(){let t=this.headers&&this.headers.get("content-type")||this[Fu].body&&this[Fu].body.type||"",r=await this.arrayBuffer();return new Yf([r],{type:t})}async json(){let t=await this.text();return JSON.parse(t)}async text(){let t=await Tde(this);return new TextDecoder().decode(t)}buffer(){return Tde(this)}};Nh.prototype.buffer=(0,Pm.deprecate)(Nh.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Nh.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,Pm.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});yR=(e,t)=>{let r,n,{body:s}=e[Fu];if(e.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Pd.default&&typeof s.getBoundary!="function"&&(r=new Pd.PassThrough({highWaterMark:t}),n=new Pd.PassThrough({highWaterMark:t}),s.pipe(r),s.pipe(n),e[Fu].stream=r,s=n),s},n8r=(0,Pm.deprecate)(e=>e.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),A9=(e,t)=>e===null?null:typeof e=="string"?"text/plain;charset=UTF-8":Ede(e)?"application/x-www-form-urlencoded;charset=UTF-8":uP(e)?e.type||null:Cl.Buffer.isBuffer(e)||Pm.types.isAnyArrayBuffer(e)||ArrayBuffer.isView(e)?null:e instanceof VA?`multipart/form-data; boundary=${t[Fu].boundary}`:e&&typeof e.getBoundary=="function"?`multipart/form-data;boundary=${n8r(e)}`:e instanceof Pd.default?null:"text/plain;charset=UTF-8",Ant=e=>{let{body:t}=e[Fu];return t===null?0:uP(t)?t.size:Cl.Buffer.isBuffer(t)?t.length:t&&typeof t.getLengthSync=="function"&&t.hasKnownLength&&t.hasKnownLength()?t.getLengthSync():null},Ent=async(e,{body:t})=>{t===null?e.end():await r8r(t,e)}});function ynt(e=[]){return new Jo(e.reduce((t,r,n,s)=>(n%2===0&&t.push(s.slice(n,n+2)),t),[]).filter(([t,r])=>{try{return y9(t),Ide(t,String(r)),!0}catch{return!1}}))}var bde,dP,y9,Ide,Jo,v9=ie(()=>{bde=require("node:util"),dP=Ne(require("node:http"),1),y9=typeof dP.default.validateHeaderName=="function"?dP.default.validateHeaderName:e=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(e)){let t=new TypeError(`Header name must be a valid HTTP token [${e}]`);throw Object.defineProperty(t,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),t}},Ide=typeof dP.default.validateHeaderValue=="function"?dP.default.validateHeaderValue:(e,t)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(t)){let r=new TypeError(`Invalid character in header content ["${e}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},Jo=class e extends URLSearchParams{constructor(t){let r=[];if(t instanceof e){let n=t.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(t!=null)if(typeof t=="object"&&!bde.types.isBoxedPrimitive(t)){let n=t[Symbol.iterator];if(n==null)r.push(...Object.entries(t));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...t].map(s=>{if(typeof s!="object"||bde.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)");return r=r.length>0?r.map(([n,s])=>(y9(n),Ide(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(a,o)=>(y9(a),Ide(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(y9(a),URLSearchParams.prototype[s].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(t){let r=this.getAll(t);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(t)&&(n=n.toLowerCase()),n}forEach(t,r=void 0){for(let n of this.keys())Reflect.apply(t,r,[this.get(n),n,this])}*values(){for(let t of this.keys())yield this.get(t)}*entries(){for(let t of this.keys())yield[t,this.get(t)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((t,r)=>(t[r]=this.getAll(r),t),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((t,r)=>{let n=this.getAll(r);return r==="host"?t[r]=n[0]:t[r]=n.length>1?n:n[0],t},{})}};Object.defineProperties(Jo.prototype,["get","entries","forEach","values"].reduce((e,t)=>(e[t]={enumerable:!0},e),{}))});var s8r,fP,Rde=ie(()=>{s8r=new Set([301,302,303,307,308]),fP=e=>s8r.has(e)});var Qf,jc,vnt=ie(()=>{v9();E9();Rde();Qf=Symbol("Response internals"),jc=class e extends Nh{constructor(t=null,r={}){super(t,r);let n=r.status!=null?r.status:200,s=new Jo(r.headers);if(t!==null&&!s.has("Content-Type")){let i=A9(t,this);i&&s.append("Content-Type",i)}this[Qf]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[Qf].type}get url(){return this[Qf].url||""}get status(){return this[Qf].status}get ok(){return this[Qf].status>=200&&this[Qf].status<300}get redirected(){return this[Qf].counter>0}get statusText(){return this[Qf].statusText}get headers(){return this[Qf].headers}get highWaterMark(){return this[Qf].highWaterMark}clone(){return new e(yR(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(t,r=302){if(!fP(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new e(null,{headers:{location:new URL(t).toString()},status:r})}static error(){let t=new e(null,{status:0,statusText:""});return t[Qf].type="error",t}static json(t=void 0,r={}){let n=JSON.stringify(t);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new Jo(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new e(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(jc.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var Snt,Tnt=ie(()=>{Snt=e=>{if(e.search)return e.search;let t=e.href.length-1,r=e.hash||(e.href[t]==="#"?"#":"");return e.href[t-r.length]==="?"?"?":""}});function bnt(e,t=!1){return e==null||(e=new URL(e),/^(about|blob|data):$/.test(e.protocol))?"no-referrer":(e.username="",e.password="",e.hash="",t&&(e.pathname="",e.search=""),e)}function xnt(e){if(!Rnt.has(e))throw new TypeError(`Invalid referrerPolicy: ${e}`);return e}function i8r(e){if(/^(http|ws)s:$/.test(e.protocol))return!0;let t=e.host.replace(/(^\[)|(]$)/g,""),r=(0,Int.isIP)(t);return r===4&&/^127\./.test(t)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(t)?!0:e.host==="localhost"||e.host.endsWith(".localhost")?!1:e.protocol==="file:"}function vR(e){return/^about:(blank|srcdoc)$/.test(e)||e.protocol==="data:"||/^(blob|filesystem):$/.test(e.protocol)?!0:i8r(e)}function wnt(e,{referrerURLCallback:t,referrerOriginCallback:r}={}){if(e.referrer==="no-referrer"||e.referrerPolicy==="")return null;let n=e.referrerPolicy;if(e.referrer==="about:client")return"no-referrer";let s=e.referrer,i=bnt(s),a=bnt(s,!0);i.toString().length>4096&&(i=a),t&&(i=t(i)),r&&(a=r(a));let o=new URL(e.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return vR(i)&&!vR(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:vR(i)&&!vR(o)?"no-referrer":a;case"same-origin":return i.origin===o.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===o.origin?i:a;case"no-referrer-when-downgrade":return vR(i)&&!vR(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function Nnt(e){let t=(e.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of t)n&&Rnt.has(n)&&(r=n);return r}var Int,Rnt,Cnt,Cde=ie(()=>{Int=require("node:net");Rnt=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),Cnt="strict-origin-when-cross-origin"});var Ont,Dnt,qa,hP,a8r,Wf,Pnt,Lnt=ie(()=>{Ont=require("node:url"),Dnt=require("node:util");v9();E9();p9();Tnt();Cde();qa=Symbol("Request internals"),hP=e=>typeof e=="object"&&typeof e[qa]=="object",a8r=(0,Dnt.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),Wf=class e extends Nh{constructor(t,r={}){let n;if(hP(t)?n=new URL(t.url):(n=new URL(t),t={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||t.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!hP(r)&&"data"in r&&a8r(),(r.body!=null||hP(t)&&t.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:hP(t)&&t.body!==null?yR(t):null;super(i,{size:r.size||t.size||0});let a=new Jo(r.headers||t.headers||{});if(i!==null&&!a.has("Content-Type")){let u=A9(i,this);u&&a.set("Content-Type",u)}let o=hP(t)?t.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!rnt(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?t.referrer:r.referrer;if(c==="")c="no-referrer";else if(c){let u=new URL(c);c=/^about:(\/\/)?client$/.test(u)?"client":u}else c=void 0;this[qa]={method:s,redirect:r.redirect||t.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?t.follow===void 0?20:t.follow:r.follow,this.compress=r.compress===void 0?t.compress===void 0?!0:t.compress:r.compress,this.counter=r.counter||t.counter||0,this.agent=r.agent||t.agent,this.highWaterMark=r.highWaterMark||t.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||t.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||t.referrerPolicy||""}get method(){return this[qa].method}get url(){return(0,Ont.format)(this[qa].parsedURL)}get headers(){return this[qa].headers}get redirect(){return this[qa].redirect}get signal(){return this[qa].signal}get referrer(){if(this[qa].referrer==="no-referrer")return"";if(this[qa].referrer==="client")return"about:client";if(this[qa].referrer)return this[qa].referrer.toString()}get referrerPolicy(){return this[qa].referrerPolicy}set referrerPolicy(t){this[qa].referrerPolicy=xnt(t)}clone(){return new e(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(Wf.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});Pnt=e=>{let{parsedURL:t}=e[qa],r=new Jo(e[qa].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(e.body===null&&/^(post|put)$/i.test(e.method)&&(n="0"),e.body!==null){let o=Ant(e);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),e.referrerPolicy===""&&(e.referrerPolicy=Cnt),e.referrer&&e.referrer!=="no-referrer"?e[qa].referrer=wnt(e):e[qa].referrer="no-referrer",e[qa].referrer instanceof URL&&r.set("Referer",e.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),e.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=e;typeof s=="function"&&(s=s(t));let i=Snt(t),a={path:t.pathname+i,method:e.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:e.insecureHTTPParser,agent:s};return{parsedURL:t,options:a}}});var pP,Mnt=ie(()=>{f9();pP=class extends Dm{constructor(t,r="aborted"){super(t,r)}}});var S9={};kt(S9,{AbortError:()=>pP,Blob:()=>Yf,FetchError:()=>Vc,File:()=>HA,FormData:()=>VA,Headers:()=>Jo,Request:()=>Wf,Response:()=>jc,blobFrom:()=>lnt,blobFromSync:()=>unt,default:()=>KA,fileFrom:()=>dnt,fileFromSync:()=>fnt,isRedirect:()=>fP});async function KA(e,t){return new Promise((r,n)=>{let s=new Wf(e,t),{parsedURL:i,options:a}=Pnt(s);if(!o8r.has(i.protocol))throw new TypeError(`node-fetch cannot load ${e}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let p=Grt(s.url),m=new jc(p,{headers:{"Content-Type":p.typeFull}});r(m);return}let o=(i.protocol==="https:"?Bnt.default:knt.default).request,{signal:c}=s,u=null,l=()=>{let p=new pP("The operation was aborted.");n(p),s.body&&s.body instanceof xl.default.Readable&&s.body.destroy(p),!(!u||!u.body)&&u.body.emit("error",p)};if(c&&c.aborted){l();return}let d=()=>{l(),h()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let h=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",p=>{n(new Vc(`request to ${s.url} failed, reason: ${p.message}`,"system",p)),h()}),c8r(f,p=>{u&&u.body&&u.body.destroy(p)}),process.version<"v14"&&f.on("socket",p=>{let m;p.prependListener("end",()=>{m=p._eventsCount}),p.prependListener("close",g=>{if(u&&m{f.setTimeout(0);let m=ynt(p.rawHeaders);if(fP(p.statusCode)){let E=m.get("Location"),v=null;try{v=E===null?null:new URL(E,s.url)}catch{if(s.redirect!=="manual"){n(new Vc(`uri requested responds with an invalid redirect URL: ${E}`,"invalid-redirect")),h();return}}switch(s.redirect){case"error":n(new Vc(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),h();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new Vc(`maximum redirect reached at: ${s.url}`,"max-redirect")),h();return}let b={headers:new Jo(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:yR(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!nnt(s.url,v)||!snt(s.url,v))for(let T of["authorization","www-authenticate","cookie","cookie2"])b.headers.delete(T);if(p.statusCode!==303&&s.body&&t.body instanceof xl.default.Readable){n(new Vc("Cannot follow redirect with body being a readable stream","unsupported-redirect")),h();return}(p.statusCode===303||(p.statusCode===301||p.statusCode===302)&&s.method==="POST")&&(b.method="GET",b.body=void 0,b.headers.delete("content-length"));let I=Nnt(m);I&&(b.referrerPolicy=I),r(KA(new Wf(v,b))),h();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&p.once("end",()=>{c.removeEventListener("abort",d)});let g=(0,xl.pipeline)(p,new xl.PassThrough,E=>{E&&n(E)});process.version<"v12.10"&&p.on("aborted",d);let _={url:s.url,status:p.statusCode,statusText:p.statusMessage,headers:m,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},y=m.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||y===null||p.statusCode===204||p.statusCode===304){u=new jc(g,_),r(u);return}let A={flush:lS.default.Z_SYNC_FLUSH,finishFlush:lS.default.Z_SYNC_FLUSH};if(y==="gzip"||y==="x-gzip"){g=(0,xl.pipeline)(g,lS.default.createGunzip(A),E=>{E&&n(E)}),u=new jc(g,_),r(u);return}if(y==="deflate"||y==="x-deflate"){let E=(0,xl.pipeline)(p,new xl.PassThrough,v=>{v&&n(v)});E.once("data",v=>{(v[0]&15)===8?g=(0,xl.pipeline)(g,lS.default.createInflate(),b=>{b&&n(b)}):g=(0,xl.pipeline)(g,lS.default.createInflateRaw(),b=>{b&&n(b)}),u=new jc(g,_),r(u)}),E.once("end",()=>{u||(u=new jc(g,_),r(u))});return}if(y==="br"){g=(0,xl.pipeline)(g,lS.default.createBrotliDecompress(),E=>{E&&n(E)}),u=new jc(g,_),r(u);return}u=new jc(g,_),r(u)}),Ent(f,s).catch(n)})}function c8r(e,t){let r=mP.Buffer.from(`0\r \r -`),n=!1,i=!1,s;e.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),e.on("socket",a=>{let o=()=>{if(n&&!i){let c=new Error("Premature close");c.code="ERR_STREAM_PREMATURE_CLOSE",t(c)}},u=c=>{i=lR.Buffer.compare(c.slice(-5),r)===0,!i&&s&&(i=lR.Buffer.compare(s.slice(-3),r.slice(0,3))===0&&lR.Buffer.compare(c.slice(-2),r.slice(3))===0),s=c};a.prependListener("close",o),a.on("data",u),e.on("close",()=>{a.removeListener("close",o),a.removeListener("data",u)})})}var FQe,UQe,dv,bc,lR,DIr,dR=ve(()=>{FQe=Se(require("node:http"),1),UQe=Se(require("node:https"),1),dv=Se(require("node:zlib"),1),bc=Se(require("node:stream"),1),lR=require("node:buffer");Wze();PF();wQe();LF();BQe();ese();$Qe();use();xF();NF();cse();nse();DIr=new Set(["data:","http:","https:"])});function jQe(e){let t=e.match(/^S(\d+)$/i);if(t)return`S${String(parseInt(t[1])).padStart(2,"0")}`;let r=e.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:e}function HQe(e){return!e||typeof e!="string"?[]:e.split(",").map(t=>{let r=t.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let i=r.substring(0,n),s=r.substring(n+1);if(!i||s==="")return null;let a=parseFloat(s);if(!Number.isFinite(a))return null;let o=!1,u=i.trim();u.endsWith("%")&&(o=!0,u=u.slice(0,-1).trim());let c=u.lastIndexOf("@"),l,d,f;if(c!==-1){l=u.substring(0,c);let g=u.substring(c+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(v=>v.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=u,d=null,f=!1;let p=l.trim().split("/"),h=p[0]||null;if(!h)return null;let m=p[1]?jQe(p[1]):null,y=p[2]?jQe(p[2]):null;return{anime:h,season:m,episode:y,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function dse(e,{anime:t,season:r,episode:n,source:i}){if(!Array.isArray(e)||e.length===0||!t)return null;let s=new Set;if(i)for(let o of i.split("&")){let u=o.trim().toLowerCase();u&&(s.add(u),qQe[u]&&s.add(qQe[u]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let u=null,c=null,l=null;for(let d of e)if(d.anime===t){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?s.size>0&&d.sources.some(f=>s.has(f))&&(u=d):d.all?c=d:l=d}if(u!==null)return u;if(c!==null)return c;if(l!==null)return l}return null}function fse(e,t,r={}){let n=Number(t);if(!n||!Array.isArray(e)||e.length===0)return e;let i=r?.usePercent===!0,s=Number(r?.videoDuration||0),a=h=>{if(!h||typeof h!="object")return null;if(typeof h.p=="string"){let m=h.p.split(","),y=parseFloat(m[0]);if(Number.isFinite(y))return y}if(h.t!==void 0&&h.t!==null){let m=Number(h.t);if(Number.isFinite(m))return m}if(h.progress!==void 0&&h.progress!==null){let m=Number(h.progress);if(Number.isFinite(m))return m/1e3}if(h.timepoint!==void 0&&h.timepoint!==null){let m=Number(h.timepoint);if(Number.isFinite(m))return m}return null},o=s>0?s:a(e[e.length-1])||0,u=i&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(i&&u===null)return e;let c=n*1e3,l=h=>Math.max(0,h),d=(h,m=2)=>Number(h.toFixed(m)),f=h=>{let m=l(u!==null?h*u:h+n);return u!==null?d(m,2):m},p=h=>{let m=l(u!==null?h*u:h+c);return u!==null?Math.round(m):m};return e.map(h=>{if(!h||typeof h!="object")return h;let m={...h};if(typeof m.p=="string"){let y=m.p.split(","),g=parseFloat(y[0]);Number.isFinite(g)&&(y[0]=f(g).toFixed(2),m.p=y.join(","))}if(m.t!==void 0&&m.t!==null){let y=Number(m.t);Number.isFinite(y)&&(m.t=f(y))}if(m.progress!==void 0&&m.progress!==null){let y=Number(m.progress);Number.isFinite(y)&&(m.progress=p(y))}if(m.timepoint!==void 0&&m.timepoint!==null){let y=Number(m.timepoint);Number.isFinite(y)&&(m.timepoint=f(y))}return m})}var qQe,pse=ve(()=>{qQe={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var rm,KQe=ve(()=>{pse();rm=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002 +`),n=!1,s=!1,i;e.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),e.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",t(u)}},c=u=>{s=mP.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=mP.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&mP.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),e.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var knt,Bnt,lS,xl,mP,o8r,SR=ie(()=>{knt=Ne(require("node:http"),1),Bnt=Ne(require("node:https"),1),lS=Ne(require("node:zlib"),1),xl=Ne(require("node:stream"),1),mP=require("node:buffer");zrt();E9();vnt();v9();Lnt();Ade();Mnt();Rde();d9();p9();Cde();vde();o8r=new Set(["data:","http:","https:"])});function R(e,...t){let r={error:0,warn:1,info:2},n=r[F.logLevel]!==void 0?r[F.logLevel]:1;if((r[e]||0)>n)return;let s=t.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return Unt(l)}else return typeof u=="string"?Unt(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");F.logBuffer.push({timestamp:c,level:e,message:i}),F.logBuffer.length>F.MAX_LOGS&&F.logBuffer.shift(),console[e](...s)}function Unt(e){let t=e;if(F.originalEnvVars&&F.accessedEnvVars)for(let[r,n]of Object.entries(F.originalEnvVars)){let s=F.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");t=t.replace(a,i)}}return t}function Fnt(e){try{let t=JSON.parse(e);return JSON.stringify(t,null,2).replace(/\n/g,` + `)}catch{return e}}var Kt=ie(()=>{Wt()});function $nt(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function xde(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function wl(e){let t="";for(let r=0;r{u8r=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function Ri(e){let t;if(typeof e=="string")t=e;else if(Array.isArray(e))t=JSON.stringify(e);else if(typeof e=="object")t=JSON.stringify(e);else{R("error","[Utils] [Common] Unsupported data type");return}R("info","[Utils] [Common]",t.slice(0,200))}function zA(e){let t=e.match(/\((\d{4})\)/);return t?parseInt(t[1]):null}function Oh(e){if(/^\d+$/.test(e))return Number(e);let t={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,s=0,i=1;for(let a=0;a=i?n=s*c:n+=s*c,i=c,s=0}}return s>0&&(n+=s),n}function qnt(e){if(!e||typeof e!="string")return{cleanFileName:"",preferredPlatform:""};let t=e.indexOf("@");if(t===-1)return{cleanFileName:e.trim(),preferredPlatform:""};let r=e.substring(0,t).trim(),n=e.substring(t+1).trim(),s=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(s){let i=s[1],a=s[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:wde(i)}}else{let i=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(i){let a=i[1],o=i[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:wde(n)}}else return{cleanFileName:r,preferredPlatform:wde(n)}}}function wde(e){if(!e||typeof e!="string")return"";let t=e.trim();return F.allowedPlatforms.includes(t)?t:""}function Hnt(e){if(!e)return[...F.platformOrderArr];if(!F.allowedPlatforms.includes(e))return R("warn",`[Utils] [Common] Invalid platform: ${e}, using default order`),[...F.platformOrderArr];let t=[e];for(let r of F.platformOrderArr)r!==e&&r!==null&&t.push(r);return t.push(null),t}function Vnt(e){return e?String(e).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function kr(e){return e?String(e).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function YA(e,t){if(!e||!t)return!1;let r=kr(e),n=kr(t);if(r===n)return!0;let s=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let i of s)if(r.startsWith(n+i))return!0;return!1}function fr(e){if(!e)return null;let t=e.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(t){let r=t[1]||t[2]||t[3];if(r)return Oh(r)}return null}function Zt(e,t,r=null){if(e==null||t==null)return!1;let n=String(e),s=String(t);if(!n||!s)return!1;if(F.strictTitleMatch)return YA(n,s);let i=F.titleNoiseFilter||null,a=i?n.replace(i,"").trim():n,o=kr(a).toLowerCase(),u=[kr(s).toLowerCase()];try{u=[...new Set([s,Sr(s),wl(s)])].map(f=>kr(f).toLowerCase()).filter(Boolean)}catch{}let l=r!==null?r:fr(s);if(l!==null&&r===null){let f=s.replace(/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:季|期|部(?!分))?/gi,"").trim();f&&f!==s&&(u=[...new Set([...u,kr(f).toLowerCase()])])}if(i){let f=s.replace(i,"").trim();f&&f!==s&&(u=[...new Set([...u,kr(f).toLowerCase()])])}if(l!==null){let f=fr(n);if(l>1){if((f||1)!==l)return!1}else if(l===1&&f!==null&&f!==1)return!1}if(u.some(f=>o.includes(f)))return!0;if(!u.some(f=>{if(Math.abs(o.length-f.length)>Math.max(o.length,f.length)*.7||/^[a-zA-Z0-9]+$/.test(f))return!1;let h=0,p=0;for(let m of f){let g=o.indexOf(m,p);g!==-1&&(h++,p=g+1)}return h/f.length>.8})){let f=s.replace(/[\(\(]\s*(?:19|20)\d{2}\s*[\)\)]|\b(?:19|20)\d{2}\b/g,"").trim();if(f&&f!==s){let h=i?f.replace(i,"").trim():f,p=kr(h).toLowerCase(),m=/[\(\(]\s*(?:19|20)\d{2}\s*[\)\)]|\b(?:19|20)\d{2}\b/.test(n);if(p&&o.includes(p)&&!m)return!0}}return!1}function Et(e,t){let r=e?.constructor?.name;if(t==="array"){if(!Array.isArray(e))throw new TypeError(`${e} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(t==="boolean"){if(typeof e!="boolean"&&typeof e!="number")throw new TypeError(`${e} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof e!==t)throw new TypeError(`${e} \u5FC5\u987B\u662F ${t}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function er(e){if(!e)return{season:null,baseTitle:null};let t=e.match(/^(.*?)\(\d{4}\)/),r=t?t[1].trim():e.split("(")[0].trim(),n=kr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:Oh(s[1]),baseTitle:n.replace(s[0],"").trim()};let i=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(i)return{season:parseInt(i[1],10),baseTitle:n.replace(i[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let c=n.match(/([一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)$/);return c?{season:Oh(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function Mm(e){if(!e)return null;let t=e.match(/第(\d+)集/);if(t)return parseInt(t[1],10);let r=e.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=e.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function Ode(e,t){let{season:r,baseTitle:n}=er(e),s=Mm(t);return{baseTitle:n,season:r,episode:s}}var GA,Nde,fs=ie(()=>{Wt();Kt();$u();GA=e=>{let t=e.match(/【(.*?)】/);return t?t[1]:null},Nde=e=>e.split("(")[0].trim()});function Knt(e){let t=e.match(/^S(\d+)$/i);if(t)return`S${String(parseInt(t[1])).padStart(2,"0")}`;let r=e.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:e}function Gnt(e){return!e||typeof e!="string"?[]:e.split(",").map(t=>{let r=t.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let _=c.substring(u+1).trim().toLowerCase();if(_==="all"||_==="*")d=null,f=!0;else if(d=_.split("&").map(y=>y.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let h=l.match(/^(.*?)\/([SE]\d+)(?:\/([SE]\d+))?$/i),p=h?h[1].trim():l.trim();if(!p)return null;let m=h?Knt(h[2]):null,g=h&&h[3]?Knt(h[3]):null;return{anime:p,season:m,episode:g,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function Dde(e,{anime:t,season:r,episode:n,source:s}){if(!Array.isArray(e)||e.length===0||!t)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),jnt[c]&&i.add(jnt[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of e)if(kr(d.anime)===kr(t)){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?i.size>0&&d.sources.some(f=>i.has(f))&&(c=d):d.all?u=d:l=d}if(c!==null)return c;if(u!==null)return u;if(l!==null)return l}return null}function dS(e,t,r={}){let n=Number(t);if(!n||!Array.isArray(e)||e.length===0)return e;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=p=>{if(!p||typeof p!="object")return null;if(typeof p.p=="string"){let m=p.p.split(","),g=parseFloat(m[0]);if(Number.isFinite(g))return g}if(p.t!==void 0&&p.t!==null){let m=Number(p.t);if(Number.isFinite(m))return m}if(p.progress!==void 0&&p.progress!==null){let m=Number(p.progress);if(Number.isFinite(m))return m/1e3}if(p.timepoint!==void 0&&p.timepoint!==null){let m=Number(p.timepoint);if(Number.isFinite(m))return m}return null},o=i>0?i:a(e[e.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return e;let u=n*1e3,l=p=>Math.max(0,p),d=(p,m=2)=>Number(p.toFixed(m)),f=p=>{let m=l(c!==null?p*c:p+n);return c!==null?d(m,2):m},h=p=>{let m=l(c!==null?p*c:p+u);return c!==null?Math.round(m):m};return e.map(p=>{if(!p||typeof p!="object")return p;let m={...p};if(typeof m.p=="string"){let g=m.p.split(","),_=parseFloat(g[0]);Number.isFinite(_)&&(g[0]=f(_).toFixed(2),m.p=g.join(","))}if(m.t!==void 0&&m.t!==null){let g=Number(m.t);Number.isFinite(g)&&(m.t=f(g))}if(m.progress!==void 0&&m.progress!==null){let g=Number(m.progress);Number.isFinite(g)&&(m.progress=h(g))}if(m.timepoint!==void 0&&m.timepoint!==null){let g=Number(m.timepoint);Number.isFinite(g)&&(m.timepoint=f(g))}return m})}var jnt,Pde=ie(()=>{fs();jnt={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var km,znt=ie(()=>{Pde();km=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002 \u8F93\u5165\u5B57\u6BB5\u8BF4\u660E\uFF1A - title: \u67E5\u8BE2\u6807\u9898 @@ -481,36 +819,35 @@ Content-Type: ${s.type||"application/octet-stream"}\r \u5982\u679C\u6CA1\u6709\u627E\u5230\u5408\u9002\u7684\u5339\u914D\uFF0C\u8FD4\u56DE\uFF1A { "animeIndex": null -}`;static get(t,r,n="string",i=!1){let s;typeof this.env<"u"&&this.env[t]?(s=this.env[t],this.originalEnvVars.set(t,s)):typeof process<"u"&&process.env?.[t]?(s=process.env[t],this.originalEnvVars.set(t,s)):(s=r,this.originalEnvVars.set(t,""));let a;switch(n){case"number":if(a=Number(s),isNaN(a))throw new Error(`Environment variable ${t} must be a valid number`);break;case"boolean":a=s===!0||s==="true"||s===1||s==="1";break;case"string":default:a=String(s);break}let o=i?this.encryptStr(a):a;return this.accessedEnvVars.set(t,o),a}static set(t,r){typeof process<"u"&&(process.env[t]=String(r)),this.accessedEnvVars.set(t,r)}static encryptStr(t){return"*".repeat(t.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,i)=>{if(n.includes("@")){let[s,a]=n.split("@").map(o=>o.trim());return{name:s||`vod-${i+1}`,url:a}}return{name:`vod-${i+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","tencent,youku,iqiyi,imgo,bilibili,renren,hanjutv,douban","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["tencent","youku","iqiyi","imgo","bilibili","renren","hanjutv","douban"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(s=>s.trim()).every(s=>this.ALLOWED_PLATFORMS.includes(s)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let t=this.get("MERGE_SOURCE_PAIRS","","string");return t?t.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let i=n[0],s=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(i))return null;let a=s.filter(o=>o!==i&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:i,secondaries:a}}).filter(Boolean):[]}static resolveEpisodeTitleFilter(){let t="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?i.trim()).filter(Boolean),n=[];for(let i of r)try{if(i.startsWith("/")&&i.lastIndexOf("/")>0){let a=i.lastIndexOf("/"),o=i.slice(1,a),u=i.slice(a+1);n.push({type:"regex",value:new RegExp(o,u)});continue}if(i.includes("/")){let[a,o]=i.split("/").map(d=>d.trim()),u=Number(o),c=this.isValidIpv4(a),l=this.isValidIpv6(a);if(Number.isInteger(u)){if(c&&u>=0&&u<=32){n.push({type:"cidr",ip:a,prefix:u});continue}if(l&&u>=0&&u<=128){n.push({type:"cidr",ip:a,prefix:u});continue}}}if(this.isValidIpv4(i)||this.isValidIpv6(i)){n.push({type:"exact",value:i});continue}let s=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n.push({type:"regex",value:new RegExp(`^${s}$`)})}catch{console.warn(`Invalid IP_BLACKLIST entry: ${i}, skipped.`)}return this.accessedEnvVars.set("IP_BLACKLIST",r),n}static isValidIpv4(t){if(!t||typeof t!="string")return!1;let r=t.split(".");return r.length!==4?!1:r.every(n=>{if(!/^(\d{1,3})$/.test(n))return!1;let i=Number(n);return i>=0&&i<=255})}static isValidIpv6(t){if(!t||typeof t!="string")return!1;let r=t.trim();if(!r.includes(":"))return!1;let[n,i]=r.split("::");if(r.split("::").length>2)return!1;let s=n?n.split(":").filter(Boolean):[],a=i?i.split(":").filter(Boolean):[],o=d=>{if(d.length===0)return d;let f=d[d.length-1];if(!f.includes("."))return d;if(!this.isValidIpv4(f))return null;let p=f.split(".").map(y=>Number(y)),h=(p[0]<<8|p[1]).toString(16),m=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),h,m]},u=o(s);if(!u||(a=o(a),!a)||u.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!u.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let t=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!t)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",t);try{return new RegExp(`^(.*?)(?:${t})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let t=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!t)return r;let n=t.split(";");for(let i of n)if(i.includes("->")){let[s,a]=i.split("->").map(o=>o.trim());s&&a&&r.set(s,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(t={}){this.env=t;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA415",min:0,max:50},DOUBAN_COOKIE:{category:"api",type:"text",description:"\u8C46\u74E3Cookie\uFF0C\u7528\u4E8E\u63D0\u5347\u8C46\u74E3\u641C\u7D22/\u8BE6\u60C5\u8BF7\u6C42\u7A33\u5B9A\u6027\uFF0C\u586B\u5199\u6D4F\u89C8\u5668\u4E2D\u5DF2\u767B\u5F55\u8C46\u74E3\u540E\u7684\u5B8C\u6574 Cookie \u5B57\u7B26\u4E32"},DANMU_API_PORT:{category:"system",type:"number",description:"Node \u672C\u5730\u90E8\u7F72\u76D1\u542C\u7AEF\u53E3\uFF0C\u9ED8\u8BA43321",min:1,max:65535},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4tencent,youku,iqiyi,imgo,bilibili,renren,hanjutv,douban"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002 +}`;static get(t,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[t]?(i=this.env[t],this.originalEnvVars.set(t,i)):typeof process<"u"&&process.env?.[t]?(i=process.env[t],this.originalEnvVars.set(t,i)):(i=r,this.originalEnvVars.set(t,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${t} must be a valid number`);break;case"boolean":a=i===!0||i==="true"||i===1||i==="1";break;case"string":default:a=String(i);break}let o=s?this.encryptStr(a):a;return this.accessedEnvVars.set(t,o),a}static set(t,r){typeof process<"u"&&(process.env[t]=String(r)),this.accessedEnvVars.set(t,r)}static encryptStr(t){return"*".repeat(t.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,s)=>{if(n.includes("@")){let[i,a]=n.split("@").map(o=>o.trim());return{name:i||`vod-${s+1}`,url:a}}return{name:`vod-${s+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","tencent,youku,iqiyi,imgo,bilibili,renren,hanjutv,douban","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["tencent","youku","iqiyi","imgo","bilibili","renren","hanjutv","douban"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(i=>i.trim()).every(i=>this.ALLOWED_PLATFORMS.includes(i)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let t=this.get("MERGE_SOURCE_PAIRS","","string");return t?t.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let s=n[0],i=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(s))return null;let a=i.filter(o=>o!==s&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:s,secondaries:a}}).filter(Boolean):[]}static resolveEpisodeTitleFilter(){let t="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?s.trim()).filter(Boolean),n=[];for(let s of r)try{if(s.startsWith("/")&&s.lastIndexOf("/")>0){let a=s.lastIndexOf("/"),o=s.slice(1,a),c=s.slice(a+1);n.push({type:"regex",value:new RegExp(o,c)});continue}if(s.includes("/")){let[a,o]=s.split("/").map(d=>d.trim()),c=Number(o),u=this.isValidIpv4(a),l=this.isValidIpv6(a);if(Number.isInteger(c)){if(u&&c>=0&&c<=32){n.push({type:"cidr",ip:a,prefix:c});continue}if(l&&c>=0&&c<=128){n.push({type:"cidr",ip:a,prefix:c});continue}}}if(this.isValidIpv4(s)||this.isValidIpv6(s)){n.push({type:"exact",value:s});continue}let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n.push({type:"regex",value:new RegExp(`^${i}$`)})}catch{console.warn(`Invalid IP_BLACKLIST entry: ${s}, skipped.`)}return this.accessedEnvVars.set("IP_BLACKLIST",r),n}static isValidIpv4(t){if(!t||typeof t!="string")return!1;let r=t.split(".");return r.length!==4?!1:r.every(n=>{if(!/^(\d{1,3})$/.test(n))return!1;let s=Number(n);return s>=0&&s<=255})}static isValidIpv6(t){if(!t||typeof t!="string")return!1;let r=t.trim();if(!r.includes(":"))return!1;let[n,s]=r.split("::");if(r.split("::").length>2)return!1;let i=n?n.split(":").filter(Boolean):[],a=s?s.split(":").filter(Boolean):[],o=d=>{if(d.length===0)return d;let f=d[d.length-1];if(!f.includes("."))return d;if(!this.isValidIpv4(f))return null;let h=f.split(".").map(g=>Number(g)),p=(h[0]<<8|h[1]).toString(16),m=(h[2]<<8|h[3]).toString(16);return[...d.slice(0,-1),p,m]},c=o(i);if(!c||(a=o(a),!a)||c.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!c.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let t=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!t)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",t);try{return new RegExp(`^(.*?)(?:${t})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let t=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!t)return r;let n=t.split(";");for(let s of n)if(s.includes("->")){let[i,a]=s.split("->").map(o=>o.trim());i&&a&&r.set(i,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(t={}){this.env=t;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA415",min:0,max:50},DOUBAN_COOKIE:{category:"api",type:"text",description:"\u8C46\u74E3Cookie\uFF0C\u7528\u4E8E\u63D0\u5347\u8C46\u74E3\u641C\u7D22/\u8BE6\u60C5\u8BF7\u6C42\u7A33\u5B9A\u6027\uFF0C\u586B\u5199\u6D4F\u89C8\u5668\u4E2D\u5DF2\u767B\u5F55\u8C46\u74E3\u540E\u7684\u5B8C\u6574 Cookie \u5B57\u7B26\u4E32"},DANMU_API_PORT:{category:"system",type:"number",description:"Node \u672C\u5730\u90E8\u7F72\u76D1\u542C\u7AEF\u53E3\uFF0C\u9ED8\u8BA43321",min:1,max:65535},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4tencent,youku,iqiyi,imgo,bilibili,renren,hanjutv,douban"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002 \u683C\u5F0F\uFF1A\u6E901&\u6E902&\u6E903 \uFF0C\u591A\u7EC4\u7528\u9017\u53F7\u5206\u9694\u3002 \u793A\u4F8B\uFF1Adandan&animeko&bahamut,bilibili&animeko,dandan`},OTHER_SERVER:{category:"source",type:"text",description:"\u7B2C\u4E09\u65B9\u5F39\u5E55\u670D\u52A1\u5668\uFF0C\u9ED8\u8BA4https://api.danmu.icu"},CUSTOM_SOURCE_API_URL:{category:"source",type:"text",description:"\u81EA\u5B9A\u4E49\u5F39\u5E55\u6E90API\u5730\u5740\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u914D\u7F6E\u540E\u8FD8\u9700\u5728SOURCE_ORDER\u6DFB\u52A0custom\u6E90"},VOD_SERVERS:{category:"source",type:"text",description:"VOD\u7AD9\u70B9\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u540D\u79F0@URL,\u540D\u79F0@URL\uFF0C\u9ED8\u8BA4\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top"},VOD_RETURN_MODE:{category:"source",type:"select",options:["all","fastest"],description:"VOD\u8FD4\u56DE\u6A21\u5F0F\uFF1Aall\uFF08\u6240\u6709\u7AD9\u70B9\uFF09\u6216 fastest\uFF08\u6700\u5FEB\u7684\u7AD9\u70B9\uFF09\uFF0C\u9ED8\u8BA4fastest"},VOD_REQUEST_TIMEOUT:{category:"source",type:"number",description:"VOD\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4\uFF0C\u9ED8\u8BA410000",min:5e3,max:3e4},BILIBILI_COOKIE:{category:"source",type:"text",description:"B\u7AD9Cookie"},YOUKU_CONCURRENCY:{category:"source",type:"number",description:"\u4F18\u9177\u5E76\u53D1\u914D\u7F6E\uFF0C\u9ED8\u8BA48",min:1,max:16},REAL_TIME_PULL_DANDAN:{category:"source",type:"boolean",description:"\u5F39\u5F39\u7B2C\u4E09\u65B9\u5F39\u5E55\u6E90\u5B9E\u65F6\u62C9\u53D6\u5F00\u5173\uFF0C\u9ED8\u8BA4\u4E3Afalse\uFF08\u5173\u95ED\uFF09\uFF0C\u53EF\u9009\u503C\uFF1Atrue\u3001false"},PLATFORM_ORDER:{category:"match",type:"multi-select",options:this.ALLOWED_PLATFORMS,description:`\u5E73\u53F0\u6392\u5E8F\u914D\u7F6E\uFF0C\u53EF\u4EE5\u914D\u7F6E\u81EA\u52A8\u5339\u914D\u65F6\u7684\u4F18\u9009\u5E73\u53F0\u3002 \u5F53\u914D\u7F6E\u5408\u5E76\u5E73\u53F0\u7684\u65F6\u5019\uFF0C\u53EF\u4EE5\u6307\u5B9A\u671F\u671B\u7684\u5408\u5E76\u6E90\uFF0C \u793A\u4F8B\uFF1A\u4E00\u4E2A\u7ED3\u679C\u8FD4\u56DE\u4E86"dandan&bilibili1&animeko"\u548C"youku"\u65F6\uFF0C \u5F53\u914D\u7F6E"youku"\u65F6\u8FD4\u56DE"youku" -\u5F53\u914D\u7F6E"dandan&animeko"\u65F6\u8FD4\u56DE"dandan&bilibili1&animeko"`},ANIME_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u540D\u8FC7\u6EE4\u89C4\u5219"},EPISODE_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u96C6\u6807\u9898\u8FC7\u6EE4\u89C4\u5219"},ENABLE_ANIME_EPISODE_FILTER:{category:"match",type:"boolean",description:"\u63A7\u5236\u624B\u52A8\u641C\u7D22\u7684\u65F6\u5019\u662F\u5426\u6839\u636EANIME_TITLE_FILTER\u8FDB\u884C\u5267\u540D\u8FC7\u6EE4\u4EE5\u53CA\u6839\u636EEPISODE_TITLE_FILTER\u8FDB\u884C\u96C6\u6807\u9898\u8FC7\u6EE4"},STRICT_TITLE_MATCH:{category:"match",type:"boolean",description:"\u4E25\u683C\u6807\u9898\u5339\u914D\u6A21\u5F0F"},TITLE_TO_CHINESE:{category:"match",type:"boolean",description:"\u5916\u8BED\u6807\u9898\u8F6C\u6362\u4E2D\u6587\u5F00\u5173"},ANIME_TITLE_SIMPLIFIED:{category:"match",type:"boolean",description:"\u641C\u7D22\u7684\u5267\u540D\u6807\u9898\u81EA\u52A8\u7E41\u8F6C\u7B80"},TITLE_MAPPING_TABLE:{category:"match",type:"map",description:'\u5267\u540D\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u52A8\u5339\u914D\u65F6\u66FF\u6362\u6807\u9898\u8FDB\u884C\u641C\u7D22\uFF0C\u683C\u5F0F\uFF1A\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;... \uFF0C\u4F8B\u5982\uFF1A"\u5510\u671D\u8BE1\u4E8B\u5F55->\u5510\u671D\u8BE1\u4E8B\u5F55\u4E4B\u897F\u884C;\u56FD\u8272\u82B3\u534E->\u9526\u7EE3\u82B3\u534E"'},AI_BASE_URL:{category:"match",type:"text",description:"AI\u670D\u52A1\u57FA\u7840URL\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Ahttps://api.openai.com/v1"},AI_MODEL:{category:"match",type:"text",description:"AI\u6A21\u578B\u540D\u79F0\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Agpt-4o"},AI_API_KEY:{category:"match",type:"text",description:"AI\u670D\u52A1API\u5BC6\u94A5\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u9700\u624B\u52A8\u586B\u5199"},AI_MATCH_PROMPT:{category:"match",type:"text",description:"AI\u81EA\u52A8\u5339\u914D\u63D0\u793A\u8BCD\u6A21\u677F\uFF0C\u4E0D\u586B\u63D0\u4F9B\u9ED8\u8BA4\u63D0\u793A\u8BCD\uFF0C\u9ED8\u8BA4\u63D0\u793A\u8BCD\u8BF7\u67E5\u770BREADME"},BLOCKED_WORDS:{category:"danmu",type:"text",description:"\u5C4F\u853D\u8BCD\u5217\u8868"},GROUP_MINUTE:{category:"danmu",type:"number",description:"\u5206\u949F\u5185\u5408\u5E76\u53BB\u91CD\uFF080\u8868\u793A\u4E0D\u53BB\u91CD\uFF09\uFF0C\u9ED8\u8BA41",min:0,max:30},DANMU_LIMIT:{category:"danmu",type:"number",description:"\u5F39\u5E55\u6570\u91CF\u9650\u5236\uFF0C\u5355\u4F4D\u4E3Ak\uFF0C\u5373\u5343\uFF1A\u9ED8\u8BA4 0\uFF0C\u8868\u793A\u4E0D\u9650\u5236\u5F39\u5E55\u6570",min:0,max:100},DANMU_SIMPLIFIED_TRADITIONAL:{category:"danmu",type:"select",options:["default","simplified","traditional"],description:"\u5F39\u5E55\u7B80\u7E41\u4F53\u8F6C\u6362\u8BBE\u7F6E\uFF1Adefault\uFF08\u9ED8\u8BA4\u4E0D\u8F6C\u6362\uFF09\u3001simplified\uFF08\u7E41\u8F6C\u7B80\uFF09\u3001traditional\uFF08\u7B80\u8F6C\u7E41\uFF09"},CONVERT_TOP_BOTTOM_TO_SCROLL:{category:"danmu",type:"boolean",description:"\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u8F6C\u6362\u4E3A\u6D6E\u52A8\u5F39\u5E55"},CONVERT_COLOR:{category:"danmu",type:"select",options:["default","white","color"],description:"\u5F39\u5E55\u8F6C\u6362\u989C\u8272\u914D\u7F6E"},COLOR_POOL:{category:"danmu",type:"text",description:"\u81EA\u5B9A\u4E49\u989C\u8272\u6C60\uFF08CONVERT_COLOR\u4E3Acolor\u65F6\u751F\u6548\uFF09\uFF0C\u4E0D\u914D\u7F6E\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60\uFF0C\u683C\u5F0F\uFF1A\u5341\u8FDB\u5236\u989C\u8272\u503C\u9017\u53F7\u5206\u9694"},DANMU_OUTPUT_FORMAT:{category:"danmu",type:"select",options:["json","xml"],description:"\u5F39\u5E55\u8F93\u51FA\u683C\u5F0F\uFF0C\u9ED8\u8BA4json"},DANMU_PUSH_URL:{category:"danmu",type:"text",description:"\u5F39\u5E55\u63A8\u9001\u5730\u5740\uFF0C\u793A\u4F8B http://127.0.0.1:9978/action?do=refresh&type=danmaku&path= "},LIKE_SWITCH:{category:"danmu",type:"boolean",description:"\u5F39\u5E55\u70B9\u8D5E\u6570\u663E\u793A\u5F00\u5173\uFF0C\u9ED8\u8BA4\u5F00\u542F"},DANMU_OFFSET:{category:"danmu",type:"text",sources:this.ALLOWED_SOURCES,description:"\u5F39\u5E55\u65F6\u95F4\u504F\u79FB\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u5267\u540D:\u79D2 \u6216 \u5267\u540D/\u5B63:\u79D2 \u6216 \u5267\u540D/\u5B63/\u96C6:\u79D2\uFF0C\u652F\u6301\u6307\u5B9A\u6765\u6E90\uFF1A\u5267\u540D@\u6765\u6E90:\u79D2 \u6216 \u5267\u540D/\u5B63@\u6765\u6E901&\u6765\u6E902:\u79D2\uFF0C\u591A\u6761\u7528\u9017\u53F7\u5206\u9694\uFF0C\u6B63\u6570\u8868\u793A\u5F39\u5E55\u5EF6\u540E\uFF08\u5411\u53F3\uFF09\uFF0C\u8D1F\u6570\u8868\u793A\u5F39\u5E55\u63D0\u524D\uFF08\u5411\u5DE6\uFF09\uFF0C\u4F8B\u5982\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10"},SEARCH_CACHE_MINUTES:{category:"cache",type:"number",description:"\u641C\u7D22\u7ED3\u679C\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},COMMENT_CACHE_MINUTES:{category:"cache",type:"number",description:"\u5F39\u5E55\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},REMEMBER_LAST_SELECT:{category:"cache",type:"boolean",description:"\u8BB0\u4F4F\u624B\u52A8\u9009\u62E9\u7ED3\u679C"},MAX_LAST_SELECT_MAP:{category:"cache",type:"number",description:"\u8BB0\u4F4F\u4E0A\u6B21\u9009\u62E9\u6620\u5C04\u7F13\u5B58\u5927\u5C0F\u9650\u5236\uFF0C\u9ED8\u8BA4100",min:10,max:1e3},MAX_ANIMES:{category:"cache",type:"number",description:"\u52A8\u6F2B\u6807\u9898\u7F13\u5B58\u6700\u5927\u6570\u91CF\uFF0C\u9ED8\u8BA4100",min:100,max:1e3},UPSTASH_REDIS_REST_URL:{category:"cache",type:"text",description:"Upstash Redis\u8BF7\u6C42\u94FE\u63A5"},UPSTASH_REDIS_REST_TOKEN:{category:"cache",type:"text",description:"Upstash Redis\u8BBF\u95EE\u4EE4\u724C"},LOCAL_REDIS_URL:{category:"cache",type:"text",description:"\u672C\u5730 Redis \u8FDE\u63A5URL\uFF0C\u793A\u4F8B\uFF1Aredis://:password@127.0.0.1:6379/0\uFF0C\u53EA\u652F\u6301\u672C\u5730\u90E8\u7F72\u548Cdocker\u90E8\u7F72"},PROXY_URL:{category:"system",type:"text",description:"\u4EE3\u7406/\u53CD\u4EE3\u5730\u5740"},TMDB_API_KEY:{category:"system",type:"text",description:"TMDB API\u5BC6\u94A5"},LOG_LEVEL:{category:"system",type:"select",options:["debug","info","warn","error"],description:"\u65E5\u5FD7\u7EA7\u522B\u914D\u7F6E"},DEPLOY_PLATFROM_ACCOUNT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8D26\u53F7ID"},DEPLOY_PLATFROM_PROJECT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u9879\u76EE\u540D\u79F0"},DEPLOY_PLATFROM_TOKEN:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8BBF\u95EE\u4EE4\u724C"},NODE_TLS_REJECT_UNAUTHORIZED:{category:"system",type:"number",description:"\u5728\u5EFA\u7ACB HTTPS \u8FDE\u63A5\u65F6\u662F\u5426\u9A8C\u8BC1\u670D\u52A1\u5668\u7684 SSL/TLS \u8BC1\u4E66\uFF0C0\u8868\u793A\u5FFD\u7565\uFF0C\u9ED8\u8BA4\u4E3A1",min:0,max:1},IP_BLACKLIST:{category:"system",type:"text",description:"IP \u9ED1\u540D\u5355\u5217\u8868\uFF0C\u652F\u6301\u9017\u53F7/\u5206\u53F7/\u6362\u884C\u5206\u9694\uFF0C\u652F\u6301 /regex/ \u6216 /regex/i \u6B63\u5219\uFF0C\u652F\u6301 IPv4/IPv6 CIDR\uFF08\u5982 10.0.0.0/4\u30012001:db8::/64\uFF09\u3002\u547D\u4E2D\u5219\u62D2\u7EDD\u8BF7\u6C42"}};return{vodAllowedPlatforms:this.VOD_ALLOWED_PLATFORMS,allowedPlatforms:this.ALLOWED_PLATFORMS,token:this.get("TOKEN","87654321","string",!0),adminToken:this.get("ADMIN_TOKEN","","string",!0),sourceOrderArr:this.resolveSourceOrder(),mergeSourcePairs:this.resolveMergeSourcePairs(),otherServer:this.get("OTHER_SERVER","https://api.danmu.icu","string"),customSourceApiUrl:this.get("CUSTOM_SOURCE_API_URL","","string",!0),vodServers:this.resolveVodServers(),vodReturnMode:this.get("VOD_RETURN_MODE","fastest","string").toLowerCase(),vodRequestTimeout:this.get("VOD_REQUEST_TIMEOUT","10000","string"),bilibliCookie:this.get("BILIBILI_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),realTimePullDandan:this.get("REAL_TIME_PULL_DANDAN",!1,"boolean"),platformOrderArr:this.resolvePlatformOrder(),animeTitleFilter:this.resolveAnimeTitleFilter(),episodeTitleFilter:this.resolveEpisodeTitleFilter(),blockedWords:this.get("BLOCKED_WORDS","","string"),groupMinute:Math.min(this.get("GROUP_MINUTE",1,"number"),30),danmuLimit:this.get("DANMU_LIMIT",0,"number"),proxyUrl:this.get("PROXY_URL","","string",!0),danmuSimplifiedTraditional:this.get("DANMU_SIMPLIFIED_TRADITIONAL","default","string"),danmuPushUrl:this.get("DANMU_PUSH_URL","","string"),likeSwitch:this.get("LIKE_SWITCH",!0,"boolean"),danmuOffset:this.get("DANMU_OFFSET","","string"),danmuOffsetRules:HQe(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",15,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var li,L,Ot=ve(()=>{KQe();li={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.0",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(e={}){return this.env=e,this.envs=rm.load(this.env),this.originalEnvVars=Object.fromEntries(rm.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(rm.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=rm.load(this.env),this.originalEnvVars=Object.fromEntries(rm.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(rm.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(e){let t=this.envs.proxyUrl||"";if(!t||!e)return e;let r=t.split(",").map(u=>u.trim()).filter(u=>u),n=null,i=null,s=null,a;try{a=new URL(e)}catch{return e}let o=a.hostname;for(let u of r)if(u.startsWith("bahamut@")&&o.includes("gamer.com.tw")){i=u.substring(8);break}else if(u.startsWith("tmdb@")&&o.includes("tmdb")){i=u.substring(5);break}else if(u.startsWith("bilibili@")&&o.includes("bilibili")){i=u.substring(9);break}else u.startsWith("@")&&!s?s=u.substring(1):!u.includes("@")&&!n&&(n=u);if(i)try{let u=new URL(i);return a.protocol=u.protocol,a.host=u.host,a.port=u.port,u.pathname!=="/"&&(a.pathname=u.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return e}return s?`${s.replace(/\/$/,"")}/${e}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(e)}`:e},getConfig(){let e=this;return new Proxy({},{get(t,r){return r in e.envs?e.envs[r]:r==="version"?e.VERSION:r==="maxLogs"?e.MAX_LOGS:r==="maxAnimes"?e.envs.MAX_ANIMES:r==="maxRecords"?e.MAX_RECORDS:r==="maxLastSelectMap"?e.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?e.makeProxyUrl.bind(e):e[r]},set(t,r,n){return r in e.envs?e.envs[r]=n:e[r]=n,!0}})}},L=new Proxy({},{get(e,t){return li.getConfig()[t]},set(e,t,r){return li.getConfig()[t]=r,!0},has(e,t){return t in li.getConfig()},ownKeys(e){return Reflect.ownKeys(li.getConfig())},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(li.getConfig(),t)}})});function x(e,...t){let r={error:0,warn:1,info:2},n=r[L.logLevel]!==void 0?r[L.logLevel]:1;if((r[e]||0)>n)return;let i=t.map(c=>{if(typeof c=="object"){let l=JSON.stringify(c);return VQe(l)}else return typeof c=="string"?VQe(c):c}),s=i.map(c=>typeof c=="object"?JSON.stringify(c):c).join(" "),a=new Date,u=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");L.logBuffer.push({timestamp:u,level:e,message:s}),L.logBuffer.length>L.MAX_LOGS&&L.logBuffer.shift(),console[e](...i)}function VQe(e){let t=e;if(L.originalEnvVars&&L.accessedEnvVars)for(let[r,n]of Object.entries(L.originalEnvVars)){let i=L.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&i&&typeof i=="string"&&i.match(/^\*+$/)&&i.length===n.length){let s="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");t=t.replace(a,s)}}return t}function zQe(e){try{let t=JSON.parse(e);return JSON.stringify(t,null,2).replace(/\n/g,` - `)}catch{return e}}var Ct=ve(()=>{Ot()});var bYe={};ys(bYe,{Deflate:()=>fYe,Inflate:()=>gYe,constants:()=>vYe,default:()=>ATr,deflate:()=>pYe,deflateRaw:()=>hYe,gzip:()=>mYe,inflate:()=>yYe,inflateRaw:()=>_Ye,ungzip:()=>AYe});function sw(e){let t=e.length;for(;--t>=0;)e[t]=0}function mse(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function gse(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function op(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function Pxr(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=zF,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(Ixr*2),this.dyn_dtree=new Uint16Array((2*Sxr+1)*2),this.bl_tree=new Uint16Array((2*wxr+1)*2),Jg(this.dyn_ltree),Jg(this.dyn_dtree),Jg(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(xxr+1),this.heap=new Uint16Array(2*Dse+1),Jg(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Dse+1),Jg(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function rCr(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function TR(e){this.options=QF.assign({level:uCr,method:lCr,chunkSize:16384,windowBits:15,memLevel:8,strategy:cCr},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new JGe,this.strm.avail_out=0;let r=gR.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==KF)throw new Error(gv[r]);if(t.header&&gR.deflateSetHeader(this.strm,t.header),t.dictionary){let n;if(typeof t.dictionary=="string"?n=wR.string2buf(t.dictionary):ZGe.call(t.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(t.dictionary):n=t.dictionary,r=gR.deflateSetDictionary(this.strm,n),r!==KF)throw new Error(gv[r]);this._dict_set=!0}}function jse(e,t){let r=new TR(t);if(r.push(e,!0),r.err)throw r.msg||gv[r.err];return r.result}function dCr(e,t){return t=t||{},t.raw=!0,jse(e,t)}function fCr(e,t){return t=t||{},t.gzip=!0,jse(e,t)}function MCr(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function JCr(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}function NR(e){this.options=QF.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});let t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new JGe,this.strm.avail_out=0;let r=sm.inflateInit2(this.strm,t.windowBits);if(r!==IR)throw new Error(gv[r]);if(this.header=new ZCr,sm.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=wR.string2buf(t.dictionary):dYe.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=sm.inflateSetDictionary(this.strm,t.dictionary),r!==IR)))throw new Error(gv[r])}function Hse(e,t){let r=new NR(t);if(r.push(e),r.err)throw r.msg||gv[r.err];return r.result}function iTr(e,t){return t=t||{},t.raw=!0,Hse(e,t)}var OIr,DGe,PIr,MIr,LIr,Bse,xR,_R,rw,$se,kGe,pv,hse,BIr,Fse,OGe,PGe,MGe,Tse,jF,$Ir,LGe,FIr,im,mR,AR,vR,Use,HF,BGe,$Ge,FGe,UGe,bR,qu,up,qGe,UIr,qIr,jGe,jIr,HGe,KGe,QQe,yse,GQe,Nse,YQe,WQe,HIr,KIr,VIr,XQe,zIr,VGe,QIr,GIr,YIr,WIr,XIr,JIr,ZIr,exr,txr,rxr,ER,nxr,ixr,sxr,Js,gv,Av,axr,Rse,oxr,ey,uxr,ty,cxr,lxr,Sl,JQe,Pa,ZQe,cp,dxr,_se,fxr,pxr,BF,hxr,mxr,gxr,yxr,zF,_xr,Axr,vxr,bxr,Exr,Dse,Sxr,wxr,Ixr,xxr,Cr,Zg,lp,Cxr,nw,qse,kse,Ose,Pse,Mse,hv,pR,ru,aw,yv,ow,Txr,mv,eGe,Jg,Nxr,Rxr,ry,Ec,Sc,cn,fR,Lse,zGe,iw,QGe,Ase,ew,Dxr,kxr,hR,Oxr,CR,GGe,YGe,Mxr,WGe,Lxr,Bxr,$xr,Fxr,Uxr,qxr,jxr,Hxr,Kxr,Vxr,zxr,Qxr,Gxr,gR,Yxr,Wxr,Xxr,QF,XGe,SR,Jxr,Zxr,eCr,tCr,wR,JGe,ZGe,nCr,iCr,sCr,aCr,KF,oCr,uCr,cCr,lCr,pCr,hCr,mCr,gCr,yCr,_Cr,$F,ACr,vCr,tw,tGe,rGe,nGe,vse,iGe,bCr,ECr,SCr,wCr,ICr,yR,xCr,eYe,tYe,sGe,CCr,FF,_v,TCr,NCr,wl,rYe,nYe,RCr,aGe,GF,oGe,uGe,cGe,lGe,dGe,fGe,pGe,hGe,mGe,VF,nm,bse,gGe,Ese,yGe,_Ge,AGe,vGe,UF,qF,bGe,EGe,SGe,wGe,IGe,Sse,xGe,CGe,vi,iYe,sYe,DCr,kCr,OCr,PCr,TGe,vv,aYe,oYe,uYe,cYe,LCr,NGe,wse,Ise,BCr,lYe,$Cr,FCr,UCr,qCr,jCr,HCr,KCr,VCr,zCr,QCr,GCr,YCr,WCr,XCr,sm,ZCr,dYe,eTr,tTr,IR,xse,Cse,rTr,RGe,nTr,sTr,aTr,oTr,uTr,cTr,lTr,dTr,fTr,pTr,hTr,mTr,gTr,yTr,_Tr,fYe,pYe,hYe,mYe,gYe,yYe,_Ye,AYe,vYe,ATr,EYe=ve(()=>{OIr=0,DGe=1,PIr=2,MIr=3,LIr=258,Bse=29,xR=256,_R=xR+1+Bse,rw=30,$se=19,kGe=2*_R+1,pv=15,hse=16,BIr=7,Fse=256,OGe=16,PGe=17,MGe=18,Tse=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),jF=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),$Ir=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),LGe=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),FIr=512,im=new Array((_R+2)*2);sw(im);mR=new Array(rw*2);sw(mR);AR=new Array(FIr);sw(AR);vR=new Array(LIr-MIr+1);sw(vR);Use=new Array(Bse);sw(Use);HF=new Array(rw);sw(HF);UGe=e=>e<256?AR[e]:AR[256+(e>>>7)],bR=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},qu=(e,t,r)=>{e.bi_valid>hse-r?(e.bi_buf|=t<>hse-e.bi_valid,e.bi_valid+=r-hse):(e.bi_buf|=t<{qu(e,r[t*2],r[t*2+1])},qGe=(e,t)=>{let r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1},UIr=e=>{e.bi_valid===16?(bR(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},qIr=(e,t)=>{let r=t.dyn_tree,n=t.max_code,i=t.stat_desc.static_tree,s=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,u=t.stat_desc.max_length,c,l,d,f,p,h,m=0;for(f=0;f<=pv;f++)e.bl_count[f]=0;for(r[e.heap[e.heap_max]*2+1]=0,c=e.heap_max+1;cu&&(f=u,m++),r[l*2+1]=f,!(l>n)&&(e.bl_count[f]++,p=0,l>=o&&(p=a[l-o]),h=r[l*2],e.opt_len+=h*(f+p),s&&(e.static_len+=h*(i[l*2+1]+p)));if(m!==0){do{for(f=u-1;e.bl_count[f]===0;)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[u]--,m-=2}while(m>0);for(f=u;f!==0;f--)for(l=e.bl_count[f];l!==0;)d=e.heap[--c],!(d>n)&&(r[d*2+1]!==f&&(e.opt_len+=(f-r[d*2+1])*r[d*2],r[d*2+1]=f),l--)}},jGe=(e,t,r)=>{let n=new Array(pv+1),i=0,s,a;for(s=1;s<=pv;s++)i=i+r[s-1]<<1,n[s]=i;for(a=0;a<=t;a++){let o=e[a*2+1];o!==0&&(e[a*2]=qGe(n[o]++,o))}},jIr=()=>{let e,t,r,n,i,s=new Array(pv+1);for(r=0,n=0;n>=7;n{let t;for(t=0;t<_R;t++)e.dyn_ltree[t*2]=0;for(t=0;t{e.bi_valid>8?bR(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},QQe=(e,t,r,n)=>{let i=t*2,s=r*2;return e[i]{let n=e.heap[r],i=r<<1;for(;i<=e.heap_len&&(i{let n,i,s=0,a,o;if(e.sym_next!==0)do n=e.pending_buf[e.sym_buf+s++]&255,n+=(e.pending_buf[e.sym_buf+s++]&255)<<8,i=e.pending_buf[e.sym_buf+s++],n===0?up(e,i,t):(a=vR[i],up(e,a+xR+1,t),o=Tse[a],o!==0&&(i-=Use[a],qu(e,i,o)),n--,a=UGe(n),up(e,a,r),o=jF[a],o!==0&&(n-=HF[a],qu(e,n,o)));while(s{let r=t.dyn_tree,n=t.stat_desc.static_tree,i=t.stat_desc.has_stree,s=t.stat_desc.elems,a,o,u=-1,c;for(e.heap_len=0,e.heap_max=kGe,a=0;a>1;a>=1;a--)yse(e,r,a);c=s;do a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],yse(e,r,1),o=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=o,r[c*2]=r[a*2]+r[o*2],e.depth[c]=(e.depth[a]>=e.depth[o]?e.depth[a]:e.depth[o])+1,r[a*2+1]=r[o*2+1]=c,e.heap[1]=c++,yse(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],qIr(e,t),jGe(r,u,e.bl_count)},YQe=(e,t,r)=>{let n,i=-1,s,a=t[0*2+1],o=0,u=7,c=4;for(a===0&&(u=138,c=3),t[(r+1)*2+1]=65535,n=0;n<=r;n++)s=a,a=t[(n+1)*2+1],!(++o{let n,i=-1,s,a=t[0*2+1],o=0,u=7,c=4;for(a===0&&(u=138,c=3),n=0;n<=r;n++)if(s=a,a=t[(n+1)*2+1],!(++o{let t;for(YQe(e,e.dyn_ltree,e.l_desc.max_code),YQe(e,e.dyn_dtree,e.d_desc.max_code),Nse(e,e.bl_desc),t=$se-1;t>=3&&e.bl_tree[LGe[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},KIr=(e,t,r,n)=>{let i;for(qu(e,t-257,5),qu(e,r-1,5),qu(e,n-4,4),i=0;i{let t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return 0;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return 1;for(r=32;r{XQe||(jIr(),XQe=!0),e.l_desc=new gse(e.dyn_ltree,BGe),e.d_desc=new gse(e.dyn_dtree,$Ge),e.bl_desc=new gse(e.bl_tree,FGe),e.bi_buf=0,e.bi_valid=0,HGe(e)},VGe=(e,t,r,n)=>{qu(e,(OIr<<1)+(n?1:0),3),KGe(e),bR(e,r),bR(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r},QIr=e=>{qu(e,DGe<<1,3),up(e,Fse,im),UIr(e)},GIr=(e,t,r,n)=>{let i,s,a=0;e.level>0?(e.strm.data_type===2&&(e.strm.data_type=VIr(e)),Nse(e,e.l_desc),Nse(e,e.d_desc),a=HIr(e),i=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s<=i&&(i=s)):i=s=r+5,r+4<=i&&t!==-1?VGe(e,t,r,n):e.strategy===4||s===i?(qu(e,(DGe<<1)+(n?1:0),3),GQe(e,im,mR)):(qu(e,(PIr<<1)+(n?1:0),3),KIr(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),GQe(e,e.dyn_ltree,e.dyn_dtree)),HGe(e),n&&KGe(e)},YIr=(e,t,r)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(vR[r]+xR+1)*2]++,e.dyn_dtree[UGe(t)*2]++),e.sym_next===e.sym_end),WIr=zIr,XIr=VGe,JIr=GIr,ZIr=YIr,exr=QIr,txr={_tr_init:WIr,_tr_stored_block:XIr,_tr_flush_block:JIr,_tr_tally:ZIr,_tr_align:exr},rxr=(e,t,r,n)=>{let i=e&65535|0,s=e>>>16&65535|0,a=0;for(;r!==0;){a=r>2e3?2e3:r,r-=a;do i=i+t[n++]|0,s=s+i|0;while(--a);i%=65521,s%=65521}return i|s<<16|0},ER=rxr,nxr=()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t},ixr=new Uint32Array(nxr()),sxr=(e,t,r,n)=>{let i=ixr,s=n+r;e^=-1;for(let a=n;a>>8^i[(e^t[a])&255];return e^-1},Js=sxr,gv={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Av={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:axr,_tr_stored_block:Rse,_tr_flush_block:oxr,_tr_tally:ey,_tr_align:uxr}=txr,{Z_NO_FLUSH:ty,Z_PARTIAL_FLUSH:cxr,Z_FULL_FLUSH:lxr,Z_FINISH:Sl,Z_BLOCK:JQe,Z_OK:Pa,Z_STREAM_END:ZQe,Z_STREAM_ERROR:cp,Z_DATA_ERROR:dxr,Z_BUF_ERROR:_se,Z_DEFAULT_COMPRESSION:fxr,Z_FILTERED:pxr,Z_HUFFMAN_ONLY:BF,Z_RLE:hxr,Z_FIXED:mxr,Z_DEFAULT_STRATEGY:gxr,Z_UNKNOWN:yxr,Z_DEFLATED:zF}=Av,_xr=9,Axr=15,vxr=8,bxr=29,Exr=256,Dse=Exr+1+bxr,Sxr=30,wxr=19,Ixr=2*Dse+1,xxr=15,Cr=3,Zg=258,lp=Zg+Cr+1,Cxr=32,nw=42,qse=57,kse=69,Ose=73,Pse=91,Mse=103,hv=113,pR=666,ru=1,aw=2,yv=3,ow=4,Txr=3,mv=(e,t)=>(e.msg=gv[t],t),eGe=e=>e*2-(e>4?9:0),Jg=e=>{let t=e.length;for(;--t>=0;)e[t]=0},Nxr=e=>{let t,r,n,i=e.w_size;t=e.hash_size,n=t;do r=e.head[--n],e.head[n]=r>=i?r-i:0;while(--t);t=i,n=t;do r=e.prev[--n],e.prev[n]=r>=i?r-i:0;while(--t)},Rxr=(e,t,r)=>(t<{let t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))},Sc=(e,t)=>{oxr(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Ec(e.strm)},cn=(e,t)=>{e.pending_buf[e.pending++]=t},fR=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},Lse=(e,t,r,n)=>{let i=e.avail_in;return i>n&&(i=n),i===0?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),r),e.state.wrap===1?e.adler=ER(e.adler,t,i,r):e.state.wrap===2&&(e.adler=Js(e.adler,t,i,r)),e.next_in+=i,e.total_in+=i,i)},zGe=(e,t)=>{let r=e.max_chain_length,n=e.strstart,i,s,a=e.prev_length,o=e.nice_match,u=e.strstart>e.w_size-lp?e.strstart-(e.w_size-lp):0,c=e.window,l=e.w_mask,d=e.prev,f=e.strstart+Zg,p=c[n+a-1],h=c[n+a];e.prev_length>=e.good_match&&(r>>=2),o>e.lookahead&&(o=e.lookahead);do if(i=t,!(c[i+a]!==h||c[i+a-1]!==p||c[i]!==c[n]||c[++i]!==c[n+1])){n+=2,i++;do;while(c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&c[++n]===c[++i]&&na){if(e.match_start=t,a=s,s>=o)break;p=c[n+a-1],h=c[n+a]}}while((t=d[t&l])>u&&--r!==0);return a<=e.lookahead?a:e.lookahead},iw=e=>{let t=e.w_size,r,n,i;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-lp)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),Nxr(e),n+=t),e.strm.avail_in===0)break;if(r=Lse(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=Cr)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=ry(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=ry(e,e.ins_h,e.window[i+Cr-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert{let r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,n,i,s,a=0,o=e.strm.avail_in;do{if(n=65535,s=e.bi_valid+42>>3,e.strm.avail_outi+e.strm.avail_in&&(n=i+e.strm.avail_in),n>s&&(n=s),n>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,Ec(e.strm),i&&(i>n&&(i=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+i),e.strm.next_out),e.strm.next_out+=i,e.strm.avail_out-=i,e.strm.total_out+=i,e.block_start+=i,n-=i),n&&(Lse(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(a===0);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_waters&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,s+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),s>e.strm.avail_in&&(s=e.strm.avail_in),s&&(Lse(e.strm,e.window,e.strstart,s),e.strstart+=s,e.insert+=s>e.w_size-e.insert?e.w_size-e.insert:s),e.high_water>3,s=e.pending_buf_size-s>65535?65535:e.pending_buf_size-s,r=s>e.w_size?e.w_size:s,i=e.strstart-e.block_start,(i>=r||(i||t===Sl)&&t!==ty&&e.strm.avail_in===0&&i<=s)&&(n=i>s?s:i,a=t===Sl&&e.strm.avail_in===0&&n===i?1:0,Rse(e,e.block_start,n,a),e.block_start+=n,Ec(e.strm)),a?yv:ru)},Ase=(e,t)=>{let r,n;for(;;){if(e.lookahead=Cr&&(e.ins_h=ry(e,e.ins_h,e.window[e.strstart+Cr-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-lp&&(e.match_length=zGe(e,r)),e.match_length>=Cr)if(n=ey(e,e.strstart-e.match_start,e.match_length-Cr),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=Cr){e.match_length--;do e.strstart++,e.ins_h=ry(e,e.ins_h,e.window[e.strstart+Cr-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=ry(e,e.ins_h,e.window[e.strstart+1]);else n=ey(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Sc(e,!1),e.strm.avail_out===0))return ru}return e.insert=e.strstart{let r,n,i;for(;;){if(e.lookahead=Cr&&(e.ins_h=ry(e,e.ins_h,e.window[e.strstart+Cr-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=Cr-1,r!==0&&e.prev_length4096)&&(e.match_length=Cr-1)),e.prev_length>=Cr&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-Cr,n=ey(e,e.strstart-1-e.prev_match,e.prev_length-Cr),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=i&&(e.ins_h=ry(e,e.ins_h,e.window[e.strstart+Cr-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=Cr-1,e.strstart++,n&&(Sc(e,!1),e.strm.avail_out===0))return ru}else if(e.match_available){if(n=ey(e,0,e.window[e.strstart-1]),n&&Sc(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return ru}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=ey(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart{let r,n,i,s,a=e.window;for(;;){if(e.lookahead<=Zg){if(iw(e),e.lookahead<=Zg&&t===ty)return ru;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=Cr&&e.strstart>0&&(i=e.strstart-1,n=a[i],n===a[++i]&&n===a[++i]&&n===a[++i])){s=e.strstart+Zg;do;while(n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&n===a[++i]&&ie.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=Cr?(r=ey(e,1,e.match_length-Cr),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=ey(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Sc(e,!1),e.strm.avail_out===0))return ru}return e.insert=0,t===Sl?(Sc(e,!0),e.strm.avail_out===0?yv:ow):e.sym_next&&(Sc(e,!1),e.strm.avail_out===0)?ru:aw},kxr=(e,t)=>{let r;for(;;){if(e.lookahead===0&&(iw(e),e.lookahead===0)){if(t===ty)return ru;break}if(e.match_length=0,r=ey(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Sc(e,!1),e.strm.avail_out===0))return ru}return e.insert=0,t===Sl?(Sc(e,!0),e.strm.avail_out===0?yv:ow):e.sym_next&&(Sc(e,!1),e.strm.avail_out===0)?ru:aw};hR=[new op(0,0,0,0,QGe),new op(4,4,8,4,Ase),new op(4,5,16,8,Ase),new op(4,6,32,32,Ase),new op(4,4,16,16,ew),new op(8,16,32,32,ew),new op(8,16,128,128,ew),new op(8,32,128,256,ew),new op(32,128,258,1024,ew),new op(32,258,258,4096,ew)],Oxr=e=>{e.window_size=2*e.w_size,Jg(e.head),e.max_lazy_match=hR[e.level].max_lazy,e.good_match=hR[e.level].good_length,e.nice_match=hR[e.level].nice_length,e.max_chain_length=hR[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=Cr-1,e.match_available=0,e.ins_h=0};CR=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.status!==nw&&t.status!==qse&&t.status!==kse&&t.status!==Ose&&t.status!==Pse&&t.status!==Mse&&t.status!==hv&&t.status!==pR?1:0},GGe=e=>{if(CR(e))return mv(e,cp);e.total_in=e.total_out=0,e.data_type=yxr;let t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?qse:t.wrap?nw:hv,e.adler=t.wrap===2?0:1,t.last_flush=-2,axr(t),Pa},YGe=e=>{let t=GGe(e);return t===Pa&&Oxr(e.state),t},Mxr=(e,t)=>CR(e)||e.state.wrap!==2?cp:(e.state.gzhead=t,Pa),WGe=(e,t,r,n,i,s)=>{if(!e)return cp;let a=1;if(t===fxr&&(t=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),i<1||i>_xr||r!==zF||n<8||n>15||t<0||t>9||s<0||s>mxr||n===8&&a!==1)return mv(e,cp);n===8&&(n=9);let o=new Pxr;return e.state=o,o.strm=e,o.status=nw,o.wrap=a,o.gzhead=null,o.w_bits=n,o.w_size=1<WGe(e,t,zF,Axr,vxr,gxr),Bxr=(e,t)=>{if(CR(e)||t>JQe||t<0)return e?mv(e,cp):cp;let r=e.state;if(!e.output||e.avail_in!==0&&!e.input||r.status===pR&&t!==Sl)return mv(e,e.avail_out===0?_se:cp);let n=r.last_flush;if(r.last_flush=t,r.pending!==0){if(Ec(e),e.avail_out===0)return r.last_flush=-1,Pa}else if(e.avail_in===0&&eGe(t)<=eGe(n)&&t!==Sl)return mv(e,_se);if(r.status===pR&&e.avail_in!==0)return mv(e,_se);if(r.status===nw&&r.wrap===0&&(r.status=hv),r.status===nw){let i=zF+(r.w_bits-8<<4)<<8,s=-1;if(r.strategy>=BF||r.level<2?s=0:r.level<6?s=1:r.level===6?s=2:s=3,i|=s<<6,r.strstart!==0&&(i|=Cxr),i+=31-i%31,fR(r,i),r.strstart!==0&&(fR(r,e.adler>>>16),fR(r,e.adler&65535)),e.adler=1,r.status=hv,Ec(e),r.pending!==0)return r.last_flush=-1,Pa}if(r.status===qse){if(e.adler=0,cn(r,31),cn(r,139),cn(r,8),r.gzhead)cn(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),cn(r,r.gzhead.time&255),cn(r,r.gzhead.time>>8&255),cn(r,r.gzhead.time>>16&255),cn(r,r.gzhead.time>>24&255),cn(r,r.level===9?2:r.strategy>=BF||r.level<2?4:0),cn(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(cn(r,r.gzhead.extra.length&255),cn(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Js(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=kse;else if(cn(r,0),cn(r,0),cn(r,0),cn(r,0),cn(r,0),cn(r,r.level===9?2:r.strategy>=BF||r.level<2?4:0),cn(r,Txr),r.status=hv,Ec(e),r.pending!==0)return r.last_flush=-1,Pa}if(r.status===kse){if(r.gzhead.extra){let i=r.pending,s=(r.gzhead.extra.length&65535)-r.gzindex;for(;r.pending+s>r.pending_buf_size;){let o=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+o),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>i&&(e.adler=Js(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex+=o,Ec(e),r.pending!==0)return r.last_flush=-1,Pa;i=0,s-=o}let a=new Uint8Array(r.gzhead.extra);r.pending_buf.set(a.subarray(r.gzindex,r.gzindex+s),r.pending),r.pending+=s,r.gzhead.hcrc&&r.pending>i&&(e.adler=Js(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex=0}r.status=Ose}if(r.status===Ose){if(r.gzhead.name){let i=r.pending,s;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>i&&(e.adler=Js(e.adler,r.pending_buf,r.pending-i,i)),Ec(e),r.pending!==0)return r.last_flush=-1,Pa;i=0}r.gzindexi&&(e.adler=Js(e.adler,r.pending_buf,r.pending-i,i)),r.gzindex=0}r.status=Pse}if(r.status===Pse){if(r.gzhead.comment){let i=r.pending,s;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>i&&(e.adler=Js(e.adler,r.pending_buf,r.pending-i,i)),Ec(e),r.pending!==0)return r.last_flush=-1,Pa;i=0}r.gzindexi&&(e.adler=Js(e.adler,r.pending_buf,r.pending-i,i))}r.status=Mse}if(r.status===Mse){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(Ec(e),r.pending!==0))return r.last_flush=-1,Pa;cn(r,e.adler&255),cn(r,e.adler>>8&255),e.adler=0}if(r.status=hv,Ec(e),r.pending!==0)return r.last_flush=-1,Pa}if(e.avail_in!==0||r.lookahead!==0||t!==ty&&r.status!==pR){let i=r.level===0?QGe(r,t):r.strategy===BF?kxr(r,t):r.strategy===hxr?Dxr(r,t):hR[r.level].func(r,t);if((i===yv||i===ow)&&(r.status=pR),i===ru||i===yv)return e.avail_out===0&&(r.last_flush=-1),Pa;if(i===aw&&(t===cxr?uxr(r):t!==JQe&&(Rse(r,0,0,!1),t===lxr&&(Jg(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),Ec(e),e.avail_out===0))return r.last_flush=-1,Pa}return t!==Sl?Pa:r.wrap<=0?ZQe:(r.wrap===2?(cn(r,e.adler&255),cn(r,e.adler>>8&255),cn(r,e.adler>>16&255),cn(r,e.adler>>24&255),cn(r,e.total_in&255),cn(r,e.total_in>>8&255),cn(r,e.total_in>>16&255),cn(r,e.total_in>>24&255)):(fR(r,e.adler>>>16),fR(r,e.adler&65535)),Ec(e),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?Pa:ZQe)},$xr=e=>{if(CR(e))return cp;let t=e.state.status;return e.state=null,t===hv?mv(e,dxr):Pa},Fxr=(e,t)=>{let r=t.length;if(CR(e))return cp;let n=e.state,i=n.wrap;if(i===2||i===1&&n.status!==nw||n.lookahead)return cp;if(i===1&&(e.adler=ER(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){i===0&&(Jg(n.head),n.strstart=0,n.block_start=0,n.insert=0);let u=new Uint8Array(n.w_size);u.set(t.subarray(r-n.w_size,r),0),t=u,r=n.w_size}let s=e.avail_in,a=e.next_in,o=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,iw(n);n.lookahead>=Cr;){let u=n.strstart,c=n.lookahead-(Cr-1);do n.ins_h=ry(n,n.ins_h,n.window[u+Cr-1]),n.prev[u&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=u,u++;while(--c);n.strstart=u,n.lookahead=Cr-1,iw(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=Cr-1,n.match_available=0,e.next_in=a,e.input=o,e.avail_in=s,n.wrap=i,Pa},Uxr=Lxr,qxr=WGe,jxr=YGe,Hxr=GGe,Kxr=Mxr,Vxr=Bxr,zxr=$xr,Qxr=Fxr,Gxr="pako deflate (from Nodeca project)",gR={deflateInit:Uxr,deflateInit2:qxr,deflateReset:jxr,deflateResetKeep:Hxr,deflateSetHeader:Kxr,deflate:Vxr,deflateEnd:zxr,deflateSetDictionary:Qxr,deflateInfo:Gxr},Yxr=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),Wxr=function(e){let t=Array.prototype.slice.call(arguments,1);for(;t.length;){let r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(let n in r)Yxr(r,n)&&(e[n]=r[n])}}return e},Xxr=e=>{let t=0;for(let n=0,i=e.length;n=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;SR[254]=SR[254]=1;Jxr=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,r,n,i,s,a=e.length,o=0;for(i=0;i>>6,t[s++]=128|r&63):r<65536?(t[s++]=224|r>>>12,t[s++]=128|r>>>6&63,t[s++]=128|r&63):(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63,t[s++]=128|r>>>6&63,t[s++]=128|r&63);return t},Zxr=(e,t)=>{if(t<65534&&e.subarray&&XGe)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n{let r=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let n,i,s=new Array(r*2);for(i=0,n=0;n4){s[i++]=65533,n+=o-1;continue}for(a&=o===2?31:o===3?15:7;o>1&&n1){s[i++]=65533;continue}a<65536?s[i++]=a:(a-=65536,s[i++]=55296|a>>10&1023,s[i++]=56320|a&1023)}return Zxr(s,i)},tCr=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let r=t-1;for(;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+SR[e[r]]>t?r:t},wR={string2buf:Jxr,buf2string:eCr,utf8border:tCr};JGe=rCr,ZGe=Object.prototype.toString,{Z_NO_FLUSH:nCr,Z_SYNC_FLUSH:iCr,Z_FULL_FLUSH:sCr,Z_FINISH:aCr,Z_OK:KF,Z_STREAM_END:oCr,Z_DEFAULT_COMPRESSION:uCr,Z_DEFAULT_STRATEGY:cCr,Z_DEFLATED:lCr}=Av;TR.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,i,s;if(this.ended)return!1;for(t===~~t?s=t:s=t===!0?aCr:nCr,typeof e=="string"?r.input=wR.string2buf(e):ZGe.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){if(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(s===iCr||s===sCr)&&r.avail_out<=6){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(i=gR.deflate(r,s),i===oCr)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),i=gR.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===KF;if(r.avail_out===0){this.onData(r.output);continue}if(s>0&&r.next_out>0){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(r.avail_in===0)break}return!0};TR.prototype.onData=function(e){this.chunks.push(e)};TR.prototype.onEnd=function(e){e===KF&&(this.result=QF.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};pCr=TR,hCr=jse,mCr=dCr,gCr=fCr,yCr=Av,_Cr={Deflate:pCr,deflate:hCr,deflateRaw:mCr,gzip:gCr,constants:yCr},$F=16209,ACr=16191,vCr=function(t,r){let n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v,A,_,E,S,C,I,N,T,k=t.state;n=t.next_in,N=t.input,i=n+(t.avail_in-5),s=t.next_out,T=t.output,a=s-(r-t.avail_out),o=s+(t.avail_out-257),u=k.dmax,c=k.wsize,l=k.whave,d=k.wnext,f=k.window,p=k.hold,h=k.bits,m=k.lencode,y=k.distcode,g=(1<>>24,p>>>=_,h-=_,_=A>>>16&255,_===0)T[s++]=A&65535;else if(_&16){E=A&65535,_&=15,_&&(h<_&&(p+=N[n++]<>>=_,h-=_),h<15&&(p+=N[n++]<>>24,p>>>=_,h-=_,_=A>>>16&255,_&16){if(S=A&65535,_&=15,h<_&&(p+=N[n++]<u){t.msg="invalid distance too far back",k.mode=$F;break e}if(p>>>=_,h-=_,_=s-a,S>_){if(_=S-_,_>l&&k.sane){t.msg="invalid distance too far back",k.mode=$F;break e}if(C=0,I=f,d===0){if(C+=c-_,_2;)T[s++]=I[C++],T[s++]=I[C++],T[s++]=I[C++],E-=3;E&&(T[s++]=I[C++],E>1&&(T[s++]=I[C++]))}else{C=s-S;do T[s++]=T[C++],T[s++]=T[C++],T[s++]=T[C++],E-=3;while(E>2);E&&(T[s++]=T[C++],E>1&&(T[s++]=T[C++]))}}else if(_&64){t.msg="invalid distance code",k.mode=$F;break e}else{A=y[(A&65535)+(p&(1<<_)-1)];continue r}break}}else if(_&64)if(_&32){k.mode=ACr;break e}else{t.msg="invalid literal/length code",k.mode=$F;break e}else{A=m[(A&65535)+(p&(1<<_)-1)];continue t}break}}while(n>3,n-=E,h-=E<<3,p&=(1<{let u=o.bits,c=0,l=0,d=0,f=0,p=0,h=0,m=0,y=0,g=0,v=0,A,_,E,S,C,I=null,N,T=new Uint16Array(tw+1),k=new Uint16Array(tw+1),O=null,P,$,Q;for(c=0;c<=tw;c++)T[c]=0;for(l=0;l=1&&T[f]===0;f--);if(p>f&&(p=f),f===0)return i[s++]=1<<24|64<<16|0,i[s++]=1<<24|64<<16|0,o.bits=1,0;for(d=1;d0&&(e===nGe||f!==1))return-1;for(k[1]=0,c=1;ctGe||e===iGe&&g>rGe)return 1;for(;;){P=c-m,a[l]+1=N?($=O[a[l]-N],Q=I[a[l]-N]):($=96,Q=0),A=1<>m)+_]=P<<24|$<<16|Q|0;while(_!==0);for(A=1<>=1;if(A!==0?(v&=A-1,v+=A):v=0,l++,--T[c]===0){if(c===f)break;c=t[r+a[l]]}if(c>p&&(v&S)!==E){for(m===0&&(m=p),C+=d,h=c-m,y=1<tGe||e===iGe&&g>rGe)return 1;E=v&S,i[E]=p<<24|h<<16|C-s|0}}return v!==0&&(i[C+v]=c-m<<24|64<<16|0),o.bits=p,0},yR=ICr,xCr=0,eYe=1,tYe=2,{Z_FINISH:sGe,Z_BLOCK:CCr,Z_TREES:FF,Z_OK:_v,Z_STREAM_END:TCr,Z_NEED_DICT:NCr,Z_STREAM_ERROR:wl,Z_DATA_ERROR:rYe,Z_MEM_ERROR:nYe,Z_BUF_ERROR:RCr,Z_DEFLATED:aGe}=Av,GF=16180,oGe=16181,uGe=16182,cGe=16183,lGe=16184,dGe=16185,fGe=16186,pGe=16187,hGe=16188,mGe=16189,VF=16190,nm=16191,bse=16192,gGe=16193,Ese=16194,yGe=16195,_Ge=16196,AGe=16197,vGe=16198,UF=16199,qF=16200,bGe=16201,EGe=16202,SGe=16203,wGe=16204,IGe=16205,Sse=16206,xGe=16207,CGe=16208,vi=16209,iYe=16210,sYe=16211,DCr=852,kCr=592,OCr=15,PCr=OCr,TGe=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);vv=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.modesYe?1:0},aYe=e=>{if(vv(e))return wl;let t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=GF,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(DCr),t.distcode=t.distdyn=new Int32Array(kCr),t.sane=1,t.back=-1,_v},oYe=e=>{if(vv(e))return wl;let t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,aYe(e)},uYe=(e,t)=>{let r;if(vv(e))return wl;let n=e.state;return t<0?(r=0,t=-t):(r=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?wl:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,oYe(e))},cYe=(e,t)=>{if(!e)return wl;let r=new MCr;e.state=r,r.strm=e,r.window=null,r.mode=GF;let n=uYe(e,t);return n!==_v&&(e.state=null),n},LCr=e=>cYe(e,PCr),NGe=!0,BCr=e=>{if(NGe){wse=new Int32Array(512),Ise=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(yR(eYe,e.lens,0,288,wse,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;yR(tYe,e.lens,0,32,Ise,0,e.work,{bits:5}),NGe=!1}e.lencode=wse,e.lenbits=9,e.distcode=Ise,e.distbits=5},lYe=(e,t,r,n)=>{let i,s=e.state;return s.window===null&&(s.wsize=1<=s.wsize?(s.window.set(t.subarray(r-s.wsize,r),0),s.wnext=0,s.whave=s.wsize):(i=s.wsize-s.wnext,i>n&&(i=n),s.window.set(t.subarray(r-n,r-n+i),s.wnext),n-=i,n?(s.window.set(t.subarray(r-n,r),0),s.wnext=n,s.whave=s.wsize):(s.wnext+=i,s.wnext===s.wsize&&(s.wnext=0),s.whave{let r,n,i,s,a,o,u,c,l,d,f,p,h,m,y=0,g,v,A,_,E,S,C,I,N=new Uint8Array(4),T,k,O=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(vv(e)||!e.output||!e.input&&e.avail_in!==0)return wl;r=e.state,r.mode===nm&&(r.mode=bse),a=e.next_out,i=e.output,u=e.avail_out,s=e.next_in,n=e.input,o=e.avail_in,c=r.hold,l=r.bits,d=o,f=u,I=_v;e:for(;;)switch(r.mode){case GF:if(r.wrap===0){r.mode=bse;break}for(;l<16;){if(o===0)break e;o--,c+=n[s++]<>>8&255,r.check=Js(r.check,N,2,0),c=0,l=0,r.mode=oGe;break}if(r.head&&(r.head.done=!1),!(r.wrap&1)||(((c&255)<<8)+(c>>8))%31){e.msg="incorrect header check",r.mode=vi;break}if((c&15)!==aGe){e.msg="unknown compression method",r.mode=vi;break}if(c>>>=4,l-=4,C=(c&15)+8,r.wbits===0&&(r.wbits=C),C>15||C>r.wbits){e.msg="invalid window size",r.mode=vi;break}r.dmax=1<>8&1),r.flags&512&&r.wrap&4&&(N[0]=c&255,N[1]=c>>>8&255,r.check=Js(r.check,N,2,0)),c=0,l=0,r.mode=uGe;case uGe:for(;l<32;){if(o===0)break e;o--,c+=n[s++]<>>8&255,N[2]=c>>>16&255,N[3]=c>>>24&255,r.check=Js(r.check,N,4,0)),c=0,l=0,r.mode=cGe;case cGe:for(;l<16;){if(o===0)break e;o--,c+=n[s++]<>8),r.flags&512&&r.wrap&4&&(N[0]=c&255,N[1]=c>>>8&255,r.check=Js(r.check,N,2,0)),c=0,l=0,r.mode=lGe;case lGe:if(r.flags&1024){for(;l<16;){if(o===0)break e;o--,c+=n[s++]<>>8&255,r.check=Js(r.check,N,2,0)),c=0,l=0}else r.head&&(r.head.extra=null);r.mode=dGe;case dGe:if(r.flags&1024&&(p=r.length,p>o&&(p=o),p&&(r.head&&(C=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(s,s+p),C)),r.flags&512&&r.wrap&4&&(r.check=Js(r.check,n,p,s)),o-=p,s+=p,r.length-=p),r.length))break e;r.length=0,r.mode=fGe;case fGe:if(r.flags&2048){if(o===0)break e;p=0;do C=n[s+p++],r.head&&C&&r.length<65536&&(r.head.name+=String.fromCharCode(C));while(C&&p>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=nm;break;case mGe:for(;l<32;){if(o===0)break e;o--,c+=n[s++]<>>=l&7,l-=l&7,r.mode=Sse;break}for(;l<3;){if(o===0)break e;o--,c+=n[s++]<>>=1,l-=1,c&3){case 0:r.mode=gGe;break;case 1:if(BCr(r),r.mode=UF,t===FF){c>>>=2,l-=2;break e}break;case 2:r.mode=_Ge;break;case 3:e.msg="invalid block type",r.mode=vi}c>>>=2,l-=2;break;case gGe:for(c>>>=l&7,l-=l&7;l<32;){if(o===0)break e;o--,c+=n[s++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=vi;break}if(r.length=c&65535,c=0,l=0,r.mode=Ese,t===FF)break e;case Ese:r.mode=yGe;case yGe:if(p=r.length,p){if(p>o&&(p=o),p>u&&(p=u),p===0)break e;i.set(n.subarray(s,s+p),a),o-=p,s+=p,u-=p,a+=p,r.length-=p;break}r.mode=nm;break;case _Ge:for(;l<14;){if(o===0)break e;o--,c+=n[s++]<>>=5,l-=5,r.ndist=(c&31)+1,c>>>=5,l-=5,r.ncode=(c&15)+4,c>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=vi;break}r.have=0,r.mode=AGe;case AGe:for(;r.have>>=3,l-=3}for(;r.have<19;)r.lens[O[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,T={bits:r.lenbits},I=yR(xCr,r.lens,0,19,r.lencode,0,r.work,T),r.lenbits=T.bits,I){e.msg="invalid code lengths set",r.mode=vi;break}r.have=0,r.mode=vGe;case vGe:for(;r.have>>24,v=y>>>16&255,A=y&65535,!(g<=l);){if(o===0)break e;o--,c+=n[s++]<>>=g,l-=g,r.lens[r.have++]=A;else{if(A===16){for(k=g+2;l>>=g,l-=g,r.have===0){e.msg="invalid bit length repeat",r.mode=vi;break}C=r.lens[r.have-1],p=3+(c&3),c>>>=2,l-=2}else if(A===17){for(k=g+3;l>>=g,l-=g,C=0,p=3+(c&7),c>>>=3,l-=3}else{for(k=g+7;l>>=g,l-=g,C=0,p=11+(c&127),c>>>=7,l-=7}if(r.have+p>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=vi;break}for(;p--;)r.lens[r.have++]=C}}if(r.mode===vi)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=vi;break}if(r.lenbits=9,T={bits:r.lenbits},I=yR(eYe,r.lens,0,r.nlen,r.lencode,0,r.work,T),r.lenbits=T.bits,I){e.msg="invalid literal/lengths set",r.mode=vi;break}if(r.distbits=6,r.distcode=r.distdyn,T={bits:r.distbits},I=yR(tYe,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,T),r.distbits=T.bits,I){e.msg="invalid distances set",r.mode=vi;break}if(r.mode=UF,t===FF)break e;case UF:r.mode=qF;case qF:if(o>=6&&u>=258){e.next_out=a,e.avail_out=u,e.next_in=s,e.avail_in=o,r.hold=c,r.bits=l,vCr(e,f),a=e.next_out,i=e.output,u=e.avail_out,s=e.next_in,n=e.input,o=e.avail_in,c=r.hold,l=r.bits,r.mode===nm&&(r.back=-1);break}for(r.back=0;y=r.lencode[c&(1<>>24,v=y>>>16&255,A=y&65535,!(g<=l);){if(o===0)break e;o--,c+=n[s++]<>_)],g=y>>>24,v=y>>>16&255,A=y&65535,!(_+g<=l);){if(o===0)break e;o--,c+=n[s++]<>>=_,l-=_,r.back+=_}if(c>>>=g,l-=g,r.back+=g,r.length=A,v===0){r.mode=IGe;break}if(v&32){r.back=-1,r.mode=nm;break}if(v&64){e.msg="invalid literal/length code",r.mode=vi;break}r.extra=v&15,r.mode=bGe;case bGe:if(r.extra){for(k=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=EGe;case EGe:for(;y=r.distcode[c&(1<>>24,v=y>>>16&255,A=y&65535,!(g<=l);){if(o===0)break e;o--,c+=n[s++]<>_)],g=y>>>24,v=y>>>16&255,A=y&65535,!(_+g<=l);){if(o===0)break e;o--,c+=n[s++]<>>=_,l-=_,r.back+=_}if(c>>>=g,l-=g,r.back+=g,v&64){e.msg="invalid distance code",r.mode=vi;break}r.offset=A,r.extra=v&15,r.mode=SGe;case SGe:if(r.extra){for(k=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=vi;break}r.mode=wGe;case wGe:if(u===0)break e;if(p=f-u,r.offset>p){if(p=r.offset-p,p>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=vi;break}p>r.wnext?(p-=r.wnext,h=r.wsize-p):h=r.wnext-p,p>r.length&&(p=r.length),m=r.window}else m=i,h=a-r.offset,p=r.length;p>u&&(p=u),u-=p,r.length-=p;do i[a++]=m[h++];while(--p);r.length===0&&(r.mode=qF);break;case IGe:if(u===0)break e;i[a++]=r.length,u--,r.mode=qF;break;case Sse:if(r.wrap){for(;l<32;){if(o===0)break e;o--,c|=n[s++]<{if(vv(e))return wl;let t=e.state;return t.window&&(t.window=null),e.state=null,_v},UCr=(e,t)=>{if(vv(e))return wl;let r=e.state;return r.wrap&2?(r.head=t,t.done=!1,_v):wl},qCr=(e,t)=>{let r=t.length,n,i,s;return vv(e)||(n=e.state,n.wrap!==0&&n.mode!==VF)?wl:n.mode===VF&&(i=1,i=ER(i,t,r,0),i!==n.check)?rYe:(s=lYe(e,t,r,r),s?(n.mode=iYe,nYe):(n.havedict=1,_v))},jCr=oYe,HCr=uYe,KCr=aYe,VCr=LCr,zCr=cYe,QCr=$Cr,GCr=FCr,YCr=UCr,WCr=qCr,XCr="pako inflate (from Nodeca project)",sm={inflateReset:jCr,inflateReset2:HCr,inflateResetKeep:KCr,inflateInit:VCr,inflateInit2:zCr,inflate:QCr,inflateEnd:GCr,inflateGetHeader:YCr,inflateSetDictionary:WCr,inflateInfo:XCr};ZCr=JCr,dYe=Object.prototype.toString,{Z_NO_FLUSH:eTr,Z_FINISH:tTr,Z_OK:IR,Z_STREAM_END:xse,Z_NEED_DICT:Cse,Z_STREAM_ERROR:rTr,Z_DATA_ERROR:RGe,Z_MEM_ERROR:nTr}=Av;NR.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,i=this.options.dictionary,s,a,o;if(this.ended)return!1;for(t===~~t?a=t:a=t===!0?tTr:eTr,dYe.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),s=sm.inflate(r,a),s===Cse&&i&&(s=sm.inflateSetDictionary(r,i),s===IR?s=sm.inflate(r,a):s===RGe&&(s=Cse));r.avail_in>0&&s===xse&&r.state.wrap>0&&e[r.next_in]!==0;)sm.inflateReset(r),s=sm.inflate(r,a);switch(s){case rTr:case RGe:case Cse:case nTr:return this.onEnd(s),this.ended=!0,!1}if(o=r.avail_out,r.next_out&&(r.avail_out===0||s===xse))if(this.options.to==="string"){let u=wR.utf8border(r.output,r.next_out),c=r.next_out-u,l=wR.buf2string(r.output,u);r.next_out=c,r.avail_out=n-c,c&&r.output.set(r.output.subarray(u,u+c),0),this.onData(l)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(!(s===IR&&o===0)){if(s===xse)return s=sm.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(r.avail_in===0)break}}return!0};NR.prototype.onData=function(e){this.chunks.push(e)};NR.prototype.onEnd=function(e){e===IR&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=QF.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};sTr=NR,aTr=Hse,oTr=iTr,uTr=Hse,cTr=Av,lTr={Inflate:sTr,inflate:aTr,inflateRaw:oTr,ungzip:uTr,constants:cTr},{Deflate:dTr,deflate:fTr,deflateRaw:pTr,gzip:hTr}=_Cr,{Inflate:mTr,inflate:gTr,inflateRaw:yTr,ungzip:_Tr}=lTr,fYe=dTr,pYe=fTr,hYe=pTr,mYe=hTr,gYe=mTr,yYe=gTr,_Ye=yTr,AYe=_Tr,vYe=Av,ATr={Deflate:fYe,deflate:pYe,deflateRaw:hYe,gzip:mYe,Inflate:gYe,inflate:yYe,inflateRaw:_Ye,ungzip:AYe,constants:vYe}});function Kse(e,t){e&&(e.aborted?t.abort():e.addEventListener("abort",()=>{t.abort()},{once:!0}))}async function Ie(e,t={}){let r=parseInt(t.retries||"0",10)||0,n;for(let i=0;i<=r;i++){i>0?(x("info",`[\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${i} \u6B21\u91CD\u8BD5: ${e}`),await new Promise(u=>setTimeout(u,Math.min(1e3*Math.pow(2,i-1),5e3)))):x("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${e}`);let s=parseInt(L.vodRequestTimeout||"5000",10)||5e3,a=new AbortController,o=setTimeout(()=>a.abort(),s);Kse(t.signal,a);try{let u;if(typeof WebAssembly>"u"){x("info","iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let p=(await Promise.resolve().then(()=>(dR(),lse))).default;u=await p(e,{method:"GET",headers:{...t.headers},signal:a.signal})}else u=await fetch(e,{method:"GET",headers:{...t.headers},signal:a.signal});if(clearTimeout(o),!u.ok)throw new Error(`HTTP error! status: ${u.status}`);let c;if(t.base64Data){x("info","base64\u6A21\u5F0F");let p=await u.arrayBuffer(),h=new Uint8Array(p),m="",y=32768;for(let g=0;g(EYe(),bYe))).inflate(new Uint8Array(p));h=new TextDecoder("utf-8").decode(y)}catch(m){throw x("error","[\u8BF7\u6C42\u6A21\u62DF] pako\u89E3\u538B\u7F29\u5931\u8D25",m),m}}c=h}else c=await u.text();let l;try{l=JSON.parse(c)}catch{l=c}let d={},f=[];for(let[p,h]of u.headers.entries())p.toLowerCase()==="set-cookie"?f.push(h):d[p]=h;return f.length>0&&(d["set-cookie"]=f.join(";")),i>0&&x("info","[\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F"),{data:l,status:u.status,headers:d}}catch(u){if(clearTimeout(o),n=u,t.signal?.aborted)throw u;if(u.name==="AbortError"?(x("error","[\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:",u.message),x("error","\u8BE6\u7EC6\u8BCA\u65AD:"),x("error","- URL:",e),x("error","- \u8D85\u65F6\u65F6\u95F4:",`${s}ms`),x("error",`- \u5F53\u524D\u5C1D\u8BD5: ${i+1}/${r+1}`)):(x("error","[\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:",u.message),x("error","\u8BE6\u7EC6\u8BCA\u65AD:"),x("error","- URL:",e),x("error","- \u9519\u8BEF\u7C7B\u578B:",u.name),x("error","- \u6D88\u606F:",u.message),x("error",`- \u5F53\u524D\u5C1D\u8BD5: ${i+1}/${r+1}`),u.cause&&(x("error","- \u7801:",u.cause.code),x("error","- \u539F\u56E0:",u.cause.message))),i0?(x("info",`[\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${s} \u6B21\u91CD\u8BD5: ${e}`),await new Promise(p=>setTimeout(p,Math.min(1e3*Math.pow(2,s-1),5e3)))):x("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${e}`);let a=parseInt(r.timeout||L.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,u=setTimeout(()=>o.abort(),a);Kse(r.signal,o);let{headers:c={},params:l,allow_redirects:d=!0}=r,f={method:"POST",headers:{...c},body:t,signal:o.signal};d||(f.redirect="manual");try{let p;if(typeof WebAssembly>"u"){x("info","iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let y=(await Promise.resolve().then(()=>(dR(),lse))).default;p=await y(e,f)}else p=await fetch(e,f);clearTimeout(u);let h=await p.text();if(!p.ok)throw x("error","[\u8BF7\u6C42\u6A21\u62DF] response data: ",h),new Error(`HTTP error! status: ${p.status}`);let m;try{m=JSON.parse(h)}catch{m=h}return s>0&&x("info","[\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F"),{data:m,status:p.status,headers:Object.fromEntries(p.headers.entries())}}catch(p){if(clearTimeout(u),i=p,r.signal?.aborted)throw p;if(p.name==="AbortError"?(x("error","[\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:",p.message),x("error","\u8BE6\u7EC6\u8BCA\u65AD:"),x("error","- URL:",e),x("error","- \u8D85\u65F6\u65F6\u95F4:",`${a}ms`),x("error",`- \u5F53\u524D\u5C1D\u8BD5: ${s+1}/${n+1}`)):(x("error","[\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:",p.message),x("error","\u8BE6\u7EC6\u8BCA\u65AD:"),x("error","- URL:",e),x("error","- \u9519\u8BEF\u7C7B\u578B:",p.name),x("error","- \u6D88\u606F:",p.message),x("error",`- \u5F53\u524D\u5C1D\u8BD5: ${s+1}/${n+1}`),p.cause&&(x("error","- \u7801:",p.cause.code),x("error","- \u539F\u56E0:",p.cause.message))),s]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").trim():e}catch(t){return x("error",`\u83B7\u53D6\u6807\u9898\u5931\u8D25: ${t.message}`),e}}function Qe(e,t=200){return new Response(JSON.stringify(e),{status:t,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function IYe(e,t=200){if(typeof e!="string"||!e.trim().startsWith("i,n="";for(let i in e)e.hasOwnProperty(i)&&(n.length>0&&(n+="&"),n+=r(i)+"="+r(e[i]));return n}function zse(e={}){let t={};for(let[i,s]of Object.entries(e))typeof s=="boolean"?t[i]=s?"true":"false":s==null?t[i]="":t[i]=String(s);let r=[];for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&r.push(i);r.sort();let n=[];for(let i of r){let s=encodeURIComponent(i),a=encodeURIComponent(t[i]);n.push(`${s}=${a}`)}return n.join("&")}function uw(e,t){let r=e,n="",i=e.indexOf("#"),s="";i!==-1&&(r=e.substring(0,i),s=e.substring(i));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let c=n.split("&");for(let l of c)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let c in t)Object.prototype.hasOwnProperty.call(t,c)&&(o[c]=t[c]);let u=[];for(let c in o)Object.prototype.hasOwnProperty.call(o,c)&&u.push(`${encodeURIComponent(c)}=${encodeURIComponent(o[c])}`);return r+(u.length?"?"+u.join("&"):"")+s}function xYe(e){let t=e.indexOf("//")+2;t===1&&(t=0);let r=e.indexOf("/",t);if(r===-1)return"/";let n=e.indexOf("?",r),i=e.indexOf("#",r),s=n!==-1?n:i!==-1?i:e.length;return e.substring(r,s)||"/"}async function Qse(e,t={},r){let{headers:n={},sniffLimit:i}=t,s=parseInt(i||"32768",10)||32768,a=parseInt(L.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,u=setTimeout(()=>o.abort(),a);Kse(t.signal,o);try{x("info",`[\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${e}`);let c=await fetch(e,{method:"GET",headers:n,signal:o.signal});if(!c.ok)throw new Error(`HTTP error! status: ${c.status}`);let l=c.body.getReader?c.body.getReader():null;if(!l){x("warn","[\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42");let A=await c.text();if(clearTimeout(u),r&&!r(A.slice(0,s)))return x("info","[\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C"),null;try{return JSON.parse(A)}catch{return A}}let d=0,f=[],p=!1,h="",m=!1;for(;;){let{done:A,value:_}=await l.read();if(A)break;if(d+=_.length,!m&&r){let E=new TextDecoder("utf-8").decode(_,{stream:!0});if(h+=E,!r(h)){x("info",`[\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${d}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),p=!0;break}d>s&&(m=!0,h=null)}f.push(_)}if(clearTimeout(u),p)return null;let y=new Uint8Array(d),g=0;for(let A of f)y.set(A,g),g+=A.length;let v=new TextDecoder("utf-8").decode(y);try{return JSON.parse(v)}catch{return v}}catch(c){return clearTimeout(u),c.name==="AbortError"||x("error",`[\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${c.message}`),null}}var yr=ve(()=>{Ot();Ct()});function Rn(e){let t=0;for(let r=0;r>>0}return t.toString(16)}function cw(e,t){return e==="lastSelectMap"&&t instanceof Map?JSON.stringify(Object.fromEntries(t)):JSON.stringify(t)}function ea(e){function t(A){let _="";for(let E=0;E>6),_+=String.fromCharCode(128|S&63)):(_+=String.fromCharCode(224|S>>12),_+=String.fromCharCode(128|S>>6&63),_+=String.fromCharCode(128|S&63))}return _}e=t(e);function r(A,_){return A<<_|A>>>32-_}function n(A,_){let E=A&1073741824,S=_&1073741824,C=A&2147483648,I=_&2147483648,N=(A&1073741823)+(_&1073741823);return E&S?N^2147483648^C^I:E|S?N&1073741824?N^3221225472^C^I:N^1073741824^C^I:N^C^I}function i(A,_,E){return A&_|~A&E}function s(A,_,E){return A&E|_&~E}function a(A,_,E){return A^_^E}function o(A,_,E){return _^(A|~E)}function u(A,_,E,S,C,I,N){return A=n(A,n(n(i(_,E,S),C),N)),n(r(A,I),_)}function c(A,_,E,S,C,I,N){return A=n(A,n(n(s(_,E,S),C),N)),n(r(A,I),_)}function l(A,_,E,S,C,I,N){return A=n(A,n(n(a(_,E,S),C),N)),n(r(A,I),_)}function d(A,_,E,S,C,I,N){return A=n(A,n(n(o(_,E,S),C),N)),n(r(A,I),_)}function f(A){let _=A.length,E=((_+8>>>6)+1)*16,S=new Array(E).fill(0);for(let C=0;C<_;C++)S[C>>2]|=A.charCodeAt(C)<>2]|=128<<_%4*8,S[E-2]=_*8,S}function p(A){let _="";for(let E=0;E<=3;E++){let C="0"+(A>>>E*8&255).toString(16);_+=C.substr(C.length-2,2)}return _}let h=f(e),m=1732584193,y=4023233417,g=2562383102,v=271733878;for(let A=0;A>3,d=c&7;if(d===0){let[f,p]=Wse(s,o);switch(o=p,l){case 1:u.id=f;break;case 2:u.progress=f;break;case 3:u.mode=f;break;case 4:u.fontsize=f;break;case 5:u.color=f;break;case 8:u.ctime=f;break;case 9:u.weight=f;break;case 11:u.pool=f;break;case 13:u.attr=f;break;case 15:u.like_num=f;break;case 17:u.dm_type_v2=f;break}}else if(d===2){let[f,p]=CYe(s,o);switch(o=p,l){case 6:u.midHash=Il(f);break;case 7:u.content=Il(f);break;case 10:u.action=Il(f);break;case 12:u.idStr=Il(f);break;case 14:u.animation=Il(f);break;case 16:u.color_v2=Il(f);break}}else{let[f,p]=Wse(s,o);o=p}}r.push(u)}return r}function Wse(e,t){let r=0n,n=0n,i=t;for(;;){let s=e[i++];if(r|=BigInt(s&127)<>>0)%9999999,t<1e4?t+1e4:t}function TYe(e,t){let r=new Uint8Array(e.length);for(let n=0;nDYe[t]))}function JF(e){let i=new Array(44);for(let s=0;s<4;s++)i[s]=e.slice(4*s,4*s+4);for(let s=4;s<4*11;s++){let a=i[s-1];s%4===0&&(a=TYe(XF(bTr(a)),Uint8Array.from([vTr[s/4],0,0,0]))),i[s]=TYe(i[s-4],a)}return i}function ETr(e,t){let i=new Uint8Array(e);i=Gse(i,t.slice(10*4,11*4));for(let s=9;s>=1;s--)i=DR(i),i=RR(i),i=Gse(i,t.slice(s*4,(s+1)*4)),i=STr(i);return i=DR(i),i=RR(i),i=Gse(i,t.slice(0,4)),i}function Gse(e,t){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let i=0;i<4;i++)r[i+4*n]=e[i+4*n]^t[n][i];return r}function RR(e){let t=new Array(256);for(let r=0;r<256;r++)t[DYe[r]]=r;return Uint8Array.from(e.map(r=>t[r]))}function DR(e){let t=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)t[r+4*n]=e[r+4*((n-r+4)%4)];return t}function STr(e){function t(n,i){let s=0;for(let a=0;a<8;a++){i&1&&(s^=n);let o=n&128;n=n<<1&255,o&&(n^=27),i>>=1}return s}let r=new Uint8Array(16);for(let n=0;n<4;n++){let i=e.slice(4*n,4*n+4);r[4*n+0]=t(i[0],14)^t(i[1],11)^t(i[2],13)^t(i[3],9),r[4*n+1]=t(i[0],9)^t(i[1],14)^t(i[2],11)^t(i[3],13),r[4*n+2]=t(i[0],13)^t(i[1],9)^t(i[2],14)^t(i[3],11),r[4*n+3]=t(i[0],11)^t(i[1],13)^t(i[2],9)^t(i[3],14)}return r}function wTr(e,t){let r=JF(t),n=16,i=new Uint8Array(e.length);for(let s=0;s=8&&(i-=8,r+=String.fromCharCode(n>>i&255))}return r}function Il(e){let t="",r=0;for(;r=192&&n<224){let i=e[r++];t+=String.fromCharCode((n&31)<<6|i&63)}else if(n>=224&&n<240){let i=e[r++],s=e[r++];t+=String.fromCharCode((n&15)<<12|(i&63)<<6|s&63)}else if(n>=240){let i=e[r++],s=e[r++],a=e[r++],u=((n&7)<<18|(i&63)<<12|(s&63)<<6|a&63)-65536;t+=String.fromCharCode(55296+(u>>10),56320+(u&1023))}}return t}function bv(e){let t=[];for(let r=0;r>6),t.push(128|n&63);else if(n<55296||n>=57344)t.push(224|n>>12),t.push(128|n>>6&63),t.push(128|n&63);else{r++;let i=e.charCodeAt(r),s=65536+((n&1023)<<10|i&1023);t.push(240|s>>18),t.push(128|s>>12&63),t.push(128|s>>6&63),t.push(128|s&63)}}return new Uint8Array(t)}function CTr(e,t){try{let r=kR(e),n=bv(t),i=wTr(r,n),s=ITr(i);return Il(s)}catch(r){return x("error",r),null}}function OR(e){let t=typeof e=="string"?e.trim():JSON.stringify(e??"");try{return JSON.parse(t)}catch{}let n=CTr(t,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return t}function TTr(e){let t=[];for(let r=0;r>6),t.push(128|n&63)):n<65536&&(t.push(224|n>>12),t.push(128|n>>6&63),t.push(128|n&63))}return t}function ZF(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=t[(e[n]&3)<<4|e[n+1]>>4],r+=t[(e[n+1]&15)<<2|e[n+2]>>6],r+=t[e[n+2]&63];return n>2],n+1>4],r+=t[(e[n+1]&15)<<2],r+="="):(r+=t[(e[n]&3)<<4],r+="==")),r}function Yse(e){function t(c,l){return l>>>c|l<<32-c}let r=Math.pow(2,32),n=[],i=e.length*8;for(let c=0;c>2]|=e.charCodeAt(c)<<(3-c)%4*8;n[e.length>>2]|=128<<(3-e.length%4)*8,n[(e.length+8>>6)*16+15]=i;let s=new Array(64),a=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],o=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];for(let c=0;c>>3,T=t(17,s[v-2])^t(19,s[v-2])^s[v-2]>>>10;s[v]=s[v-16]+N+s[v-7]+T|0}let A=t(6,h)^t(11,h)^t(25,h),_=h&m^~h&y,E=g+A+_+o[v]+s[v]|0,S=t(2,l)^t(13,l)^t(22,l),C=l&d^l&f^d&f,I=S+C|0;g=y,y=m,m=h,h=p+E|0,p=f,f=d,d=l,l=E+I|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+p|0,a[4]=a[4]+h|0,a[5]=a[5]+m|0,a[6]=a[6]+y|0,a[7]=a[7]+g|0}let u=[];for(let c of a)u.push(c>>24&255),u.push(c>>16&255),u.push(c>>8&255),u.push(c&255);return u}function kYe(e,t){let n=TTr(e);n.length>64&&(n=Yse(e)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let i=n.map(u=>u^92),s=n.map(u=>u^54),a=Yse(String.fromCharCode(...s)+t),o=Yse(String.fromCharCode(...i)+String.fromCharCode(...a));return ZF(o)}function e5(e,t,r,n){let i=e+"t"+t;return r&&Object.keys(r).sort().forEach(a=>{i+=a+r[a]}),i+=n,ea(i)}function NYe(e){if(e<=65535)return String.fromCharCode(e);e-=65536;let t=(e>>10)+55296,r=(e&1023)+56320;return String.fromCharCode(t,r)}function OYe(e){return e.replace(/&#(\d+);/g,(t,r)=>NYe(parseInt(r,10))).replace(/&#x([0-9a-fA-F]+);/g,(t,r)=>NYe(parseInt(r,16)))}var DYe,vTr,vs=ve(()=>{Ct();DYe=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],vTr=[0,1,2,4,8,16,32,64,128,27,54]});var MYe={};ys(MYe,{getRedisCaches:()=>Zse,getRedisKey:()=>NTr,judgeRedisValid:()=>eae,pingRedis:()=>PYe,runPipeline:()=>Jse,setRedisKey:()=>Xse,setRedisKeyWithExpiry:()=>RTr,updateRedisCaches:()=>t5});async function PYe(){let e=`${L.redisUrl}/ping`;x("info","[redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${L.redisToken}`}})).json()}catch(t){x("error","[redis] \u8BF7\u6C42\u5931\u8D25:",t.message),x("error","- \u9519\u8BEF\u7C7B\u578B:",t.name),t.cause&&(x("error","- \u7801:",t.cause.code),x("error","- \u539F\u56E0:",t.cause.message))}}async function NTr(e){let t=`${L.redisUrl}/get/${e}`;x("info","[redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${L.redisToken}`}})).json()}catch(r){x("error","[redis] \u8BF7\u6C42\u5931\u8D25:",r.message),x("error","- \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(x("error","- \u7801:",r.cause.code),x("error","- \u539F\u56E0:",r.cause.message))}}async function Xse(e,t){let r=cw(e,t),n=Rn(r);if(L.lastHashes[e]===n)return x("info",`[redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let i=`${L.redisUrl}/set/${e}`;x("info","[redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",i);try{let a=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${L.redisToken}`,"Content-Type":"application/json"},body:r})).json();return L.lastHashes[e]=n,x("info",`[redis] \u952E ${e} \u66F4\u65B0\u6210\u529F`),a}catch(s){x("error","[redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),x("error","- \u9519\u8BEF\u7C7B\u578B:",s.name),s.cause&&(x("error","- \u7801:",s.cause.code),x("error","- \u539F\u56E0:",s.cause.message))}}async function RTr(e,t,r){let n=cw(e,t),i=Rn(n);if(L.lastHashes[e]===i)return x("info",`[redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let s=`${L.redisUrl}/set/${e}?EX=${r}`;x("info","[redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",s);try{let o=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${L.redisToken}`,"Content-Type":"application/json"},body:n})).json();return L.lastHashes[e]=i,x("info",`[redis] \u952E ${e} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){x("error","[redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),x("error","- \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(x("error","- \u7801:",a.cause.code),x("error","- \u539F\u56E0:",a.cause.message))}}async function Jse(e){let t=`${L.redisUrl}/pipeline`;x("info","[redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"POST",headers:{Authorization:`Bearer ${L.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(e)})).json()}catch(r){x("error","[redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),x("error","- \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(x("error","- \u7801:",r.cause.code),x("error","- \u539F\u56E0:",r.cause.message))}}async function Zse(){if(!L.redisCacheInitialized)try{x("info","getRedisCaches start.");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(i=>["GET",i]),r=await Jse(t);L.animes=r[0].result?JSON.parse(r[0].result):L.animes,L.episodeIds=r[1].result?JSON.parse(r[1].result):L.episodeIds,L.episodeNum=r[2].result?JSON.parse(r[2].result):L.episodeNum,L.reqRecords=r[3].result?JSON.parse(r[3].result):L.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(L.lastSelectMap=new Map(Object.entries(n)),x("info",`Restored lastSelectMap from Redis with ${L.lastSelectMap.size} entries`)),L.todayReqNum=r[5].result?parseInt(r[5].result,10):L.todayReqNum,L.lastHashes.animes=Rn(JSON.stringify(L.animes)),L.lastHashes.episodeIds=Rn(JSON.stringify(L.episodeIds)),L.lastHashes.episodeNum=Rn(JSON.stringify(L.episodeNum)),L.lastHashes.reqRecords=Rn(JSON.stringify(L.reqRecords)),L.lastHashes.lastSelectMap=Rn(JSON.stringify(Object.fromEntries(L.lastSelectMap))),L.lastHashes.todayReqNum=Rn(JSON.stringify(L.todayReqNum)),L.redisCacheInitialized=!0,x("info","getRedisCaches completed successfully.")}catch(e){x("error",`getRedisCaches failed: ${e.message}`,e.stack),L.redisCacheInitialized=!0}}async function t5(){try{x("info","updateCaches start.");let e=[],t=[],r=[{key:"animes",value:L.animes},{key:"episodeIds",value:L.episodeIds},{key:"episodeNum",value:L.episodeNum},{key:"reqRecords",value:L.reqRecords},{key:"lastSelectMap",value:L.lastSelectMap},{key:"todayReqNum",value:L.todayReqNum}];for(let{key:n,value:i}of r){let s=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(i):i),a=Rn(s);a!==L.lastHashes[n]&&(e.push(["SET",n,s]),t.push({key:n,hash:a}))}if(e.length>0){x("info",`Updating ${e.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let n=await Jse(e),i=0,s=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?i++:(s++,x("warn",`Failed to update Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),s===0?(t.forEach(({key:a,hash:o})=>{L.lastHashes[a]=o}),x("info",`Redis update completed successfully: ${i} keys updated`)):x("warn",`Redis update partially failed: ${i} succeeded, ${s} failed`)}else x("info","No changes detected, skipping Redis update.")}catch(e){x("error",`updateRedisCaches failed: ${e.message}`,e.stack),x("error",`Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function eae(e){if(!L.redisValid&&L.redisUrl&&L.redisToken&&e!=="/favicon.ico"&&e!=="/robots.txt"){let t=await PYe();t&&t.result&&t.result==="PONG"&&(L.redisValid=!0)}}var r5=ve(()=>{Ot();Ct();vs()});function $i(e){let t;if(typeof e=="string")t=e;else if(Array.isArray(e))t=JSON.stringify(e);else if(typeof e=="object")t=JSON.stringify(e);else{x("error","Unsupported data type");return}x("info",t.slice(0,200))}function ny(e){let t=e.match(/\((\d{4})\)/);return t?parseInt(t[1]):null}function PR(e){if(/^\d+$/.test(e))return Number(e);let t={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,i=0,s=1;for(let a=0;a=s?n=i*u:n+=i*u,s=u,i=0}}return i>0&&(n+=i),n}function LYe(e){if(!e||typeof e!="string")return{cleanFileName:"",preferredPlatform:""};let t=e.indexOf("@");if(t===-1)return{cleanFileName:e.trim(),preferredPlatform:""};let r=e.substring(0,t).trim(),n=e.substring(t+1).trim(),i=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(i){let s=i[1],a=i[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:tae(s)}}else{let s=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(s){let a=s[1],o=s[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:tae(n)}}else return{cleanFileName:r,preferredPlatform:tae(n)}}}function tae(e){if(!e||typeof e!="string")return"";let t=e.trim();return L.allowedPlatforms.includes(t)?t:""}function BYe(e){if(!e)return[...L.platformOrderArr];if(!L.allowedPlatforms.includes(e))return x("warn",`Invalid platform: ${e}, using default order`),[...L.platformOrderArr];let t=[e];for(let r of L.platformOrderArr)r!==e&&r!==null&&t.push(r);return t.push(null),t}function $Ye(e){return e?String(e).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function ta(e){return e?String(e).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function iy(e,t){if(!e||!t)return!1;let r=ta(e),n=ta(t);if(r===n)return!0;let i=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let s of i)if(r.startsWith(n+s))return!0;return!1}function lw(e){if(!e)return null;let t=e.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(t){let r=t[1]||t[2]||t[3];if(r)return PR(r)}return null}function Mt(e,t){if(L.strictTitleMatch)return iy(e,t);let r=ta(e).toLowerCase(),n=ta(t).toLowerCase();if(r.includes(n))return!0;let i=lw(t);if(i!==null){let u=lw(e);if(i>1){if((u||1)!==i)return!1}else if(i===1&&u!==null&&u!==1)return!1}if(Math.abs(r.length-n.length)>Math.max(r.length,n.length)*.7||/^[a-zA-Z0-9]+$/.test(n))return!1;let s=new Set(n),a=new Set(r);return[...s].reduce((u,c)=>u+(a.has(c)?1:0),0)/s.size>.8}function at(e,t){let r=e?.constructor?.name;if(t==="array"){if(!Array.isArray(e))throw new TypeError(`${e} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(t==="boolean"){if(typeof e!="boolean"&&typeof e!="number")throw new TypeError(`${e} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof e!==t)throw new TypeError(`${e} \u5FC5\u987B\u662F ${t}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function DTr(e){if(!e)return{season:null,baseTitle:null};let t=e.match(/^(.*?)\(\d{4}\)/),r=t?t[1].trim():e.split("(")[0].trim(),n=ta(r),i=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(i)return{season:PR(i[1]),baseTitle:n.replace(i[0],"").trim()};let s=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(s)return{season:parseInt(s[1],10),baseTitle:n.replace(s[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let u=n.match(/([一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)$/);return u?{season:PR(u[1]),baseTitle:n.replace(u[0],"").trim()}:{season:null,baseTitle:n}}function iae(e){if(!e)return null;let t=e.match(/第(\d+)集/);if(t)return parseInt(t[1],10);let r=e.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=e.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function sae(e,t){let{season:r,baseTitle:n}=DTr(e),i=iae(t);return{baseTitle:n,season:r,episode:i}}var rae,nae,bi=ve(()=>{Ot();Ct();rae=e=>{let t=e.match(/【(.*?)】/);return t?t[1]:null},nae=e=>e.split("(")[0].trim()});var sy,n5,i5,s5,a5,aae,oae,o5,Et,dw,rs=ve(()=>{bi();sy=class e{constructor({animeId:t=111,bangumiId:r="",animeTitle:n="",type:i="",typeDescription:s="",imageUrl:a="",startDate:o="",episodeCount:u=1,rating:c=0,isFavorited:l=!0,source:d="",links:f=[]}={}){at(t,"number"),at(r,"string"),at(n,"string"),at(i,"string","type"),at(s,"string"),at(a,"string"),at(o,"string"),at(u,"number"),at(c,"number"),at(l,"boolean"),at(d,"string"),at(f,"array"),this.links=f.map(p=>n5.fromJson(p)),Object.assign(this,{animeId:t,bangumiId:r,animeTitle:n,type:i,typeDescription:s,imageUrl:a,startDate:o,episodeCount:u,rating:c,isFavorited:l,source:d})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(t.links||[]).map(n=>n5.fromJson(n));return new e({...t,links:r})}toJson(){return{...this,links:this.links.map(t=>t.toJson())}}},n5=class e{constructor({name:t="",url:r="",title:n="",id:i=10001}={}){at(t,"string"),at(r,"string"),at(n,"string"),at(i,"number"),Object.assign(this,{name:t,url:r,title:n,id:i})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},i5=class e{constructor({episodeId:t=10001,animeId:r=111,animeTitle:n="",episodeTitle:i="",type:s="",typeDescription:a="",shift:o=1,imageUrl:u=""}={}){at(t,"number"),at(r,"number"),at(n,"string"),at(i,"string"),at(s,"string","type"),at(a,"string"),at(o,"number"),at(u,"string"),Object.assign(this,{episodeId:t,animeId:r,animeTitle:n,episodeTitle:i,type:s,typeDescription:a,shift:o,imageUrl:u})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},s5=class{constructor({episodeId:t="",episodeTitle:r=""}={}){this.episodeId=t,this.episodeTitle=r}};s5.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};a5=class e{constructor({animeId:t=111,animeTitle:r="",type:n="",typeDescription:i="",episodes:s=[]}={}){at(t,"number"),at(r,"string"),at(n,"string"),at(i,"string"),at(s,"array"),Object.assign(this,{animeId:t,animeTitle:r,type:n,typeDescription:i,episodes:s.map(a=>new s5(a))})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this,episodes:this.episodes.map(t=>t.toJson())}}},aae=class e{constructor({id:t="",airDate:r="",name:n="",episodeCount:i=0}={}){at(t,"string"),at(r,"string"),at(n,"string"),at(i,"number"),Object.assign(this,{id:t,airDate:r,name:n,episodeCount:i})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},oae=class e{constructor({seasonId:t="",episodeId:r=10001,episodeTitle:n="",episodeNumber:i="",airDate:s=""}={}){at(t,"string"),at(r,"number"),at(n,"string"),at(i,"string"),at(s,"string"),Object.assign(this,{seasonId:t,episodeId:r,episodeTitle:n,episodeNumber:i,airDate:s})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},o5=class e{constructor({animeId:t=111,bangumiId:r="",animeTitle:n="",imageUrl:i="",isOnAir:s=!0,airDay:a=1,isFavorited:o=!0,rating:u=0,type:c="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){at(t,"number"),at(r,"string"),at(n,"string"),at(i,"string"),at(s,"boolean"),at(a,"number"),at(o,"boolean"),at(u,"number"),at(c,"string"),at(l,"string"),at(d,"array"),at(f,"array");let p=d.map(h=>aae.fromJson(h));Object.assign(this,{animeId:t,bangumiId:r,animeTitle:n,imageUrl:i,isOnAir:s,airDay:a,isFavorited:o,rating:u,type:c,typeDescription:l,seasons:p,episodes:f})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=t.episodes.map(n=>oae.fromJson(n));return new e({...t,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(t=>t.toJson()),episodes:this.episodes.map(t=>t.toJson())}}},Et=class e{constructor({type:t="",segmentList:r=[],duration:n=0}={}){at(t,"string"),at(r,"array"),at(n,"number"),this.segmentList=r.map(i=>dw.fromJson(i)),Object.assign(this,{type:t,duration:n})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(t.segmentList||[]).map(n=>dw.fromJson(n));return new e({...t,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(t=>t.toJson())}}},dw=class e{constructor({type:t,segment_start:r,segment_end:n,url:i,data:s,_m_h5_tk:a,_m_h5_tk_enc:o}={}){at(t,"string","type"),at(r,"number","segment_start"),at(n,"number","segment_end"),at(i,"string","url"),s!==void 0&&at(s,"string","data"),a!==void 0&&at(a,"string","_m_h5_tk"),o!==void 0&&at(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:t,segment_start:r,segment_end:n,url:i,data:s,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}}});var VYe={};ys(VYe,{addAnime:()=>Bt,addEpisode:()=>HYe,cleanupExpiredIPs:()=>d5,findAnimeIdByCommentId:()=>l5,findAnimeTitleById:()=>pae,findIndexById:()=>c5,findTitleById:()=>fae,findUrlById:()=>UR,getCommentCache:()=>am,getDirname:()=>f5,getLastSearch:()=>cae,getLocalCaches:()=>yae,getPreferAnimeId:()=>gae,getSearchCache:()=>lae,isCommentCacheValid:()=>jYe,isSearchCacheValid:()=>qYe,judgeLocalCacheValid:()=>_ae,readCacheFromFile:()=>Ev,removeEarliestAnime:()=>qt,removeEpisodeByUrl:()=>KYe,resolveAnimeById:()=>Sv,resolveAnimeByIdFromDetailStore:()=>wv,resolveEpisodeContextById:()=>pw,setCommentCache:()=>FR,setLastSearch:()=>uae,setPreferByAnimeId:()=>mae,setSearchCache:()=>dae,storeAnimeIdsToMap:()=>hae,updateLocalCaches:()=>h5,writeCacheToFile:()=>p5});function uae(e,t){if(MR.set(e,{...t,timestamp:Date.now()}),MR.size>200)for(let[r,n]of MR)Date.now()-n.timestamp>3600*1e3&&MR.delete(r)}function cae(e){return MR.get(e)}function fw(e){if(!e||typeof e!="object")return"";let t=e.source?String(e.source)+":":"";return e.bangumiId!==void 0&&e.bangumiId!==null&&String(e.bangumiId)!==""?"bangumi:"+t+String(e.bangumiId):e.animeId!==void 0&&e.animeId!==null&&String(e.animeId)!==""?"anime:"+t+String(e.animeId):""}function FYe(e,t){if(!(e instanceof Map)||!t)return;let r=fw(t);r&&e.set(r,t)}function*$R(e){if(!(e instanceof Map))return;let t=new Set;for(let r of e.values()){let n=fw(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function kTr(e){let t=[];for(let r of $R(e))t.push(r);return t}function OTr(){let e=Date.now(),t=[];for(let[r,n]of L.searchCache.entries()){let i=(e-n.timestamp)/6e4;if(i>L.searchCacheMinutes){L.searchCache.delete(r),x("info",`Search cache for "${r}" expired after ${i.toFixed(2)} minutes`);continue}t.push(n)}return t.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),t}function PTr(e,t){return String(e?.animeId)===t||String(e?.bangumiId)===t}function u5(e,t,r=null){let n=null;for(let i of e)if(PTr(i,t)){if(r&&i?.source===r)return i;n||(n=i)}return n}function*UYe(){let e=new Set;for(let t of OTr())if(Array.isArray(t.details))for(let r of t.details){let n=fw(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function Sv(e,t=null,r=null){let n=String(e),i=u5(L.animes,n,r);return i||(i=u5($R(t),n,r),i)?i:u5(UYe(),n,r)}function wv(e,t=null,r=null){let n=String(e);return u5($R(t),n,r)}function pw(e,t=null){let r=Number(e);if(!Number.isFinite(r))return null;let n=s=>{if(!s?.links||!Array.isArray(s.links))return null;let a=s.links.findIndex(o=>o.id===r);return a===-1?null:{anime:s,link:s.links[a],index:a}};for(let s of L.animes){let a=n(s);if(a)return a}for(let s of $R(t)){let a=n(s);if(a)return a}let i=new Set;for(let s of L.animes){let a=fw(s);a&&i.add(a)}for(let s of $R(t)){let a=fw(s);a&&i.add(a)}for(let s of UYe()){let a=fw(s);if(a&&i.has(a))continue;a&&i.add(a);let o=n(s);if(o)return o}return null}function qYe(e){if(!L.searchCache.has(e))return!1;let t=L.searchCache.get(e),n=(Date.now()-t.timestamp)/(1e3*60);return n>L.searchCacheMinutes?(L.searchCache.delete(e),x("info",`Search cache for "${e}" expired after ${n.toFixed(2)} minutes`),!1):!0}function lae(e,t=null){if(qYe(e)){x("info",`Using search cache for "${e}"`);let r=L.searchCache.get(e);return t instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{FYe(t,n)}),r.results}return null}function dae(e,t,r=null){let n=kTr(r);L.searchCache.set(e,{results:t,details:n,timestamp:Date.now()}),x("info",`Cached search results for "${e}" (${t.length} animes)`)}function jYe(e){if(!L.commentCache.has(e))return!1;let t=L.commentCache.get(e),n=(Date.now()-t.timestamp)/(1e3*60);return n>L.commentCacheMinutes?(L.commentCache.delete(e),x("info",`Comment cache for "${e}" expired after ${n.toFixed(2)} minutes`),!1):!0}function am(e){return jYe(e)?(x("info",`Using comment cache for "${e}"`),L.commentCache.get(e).comments):null}function FR(e,t){L.commentCache.set(e,{comments:t,timestamp:Date.now()}),x("info",`Cached comments for "${e}" (${t.length} comments)`)}function HYe(e,t){let r=L.episodeIds.find(i=>i.url===e&&i.title===t);if(r)return x("info",`Episode with URL ${e} and title ${t} already exists in episodeIds, returning existing episode.`),r;L.episodeNum++;let n={id:L.episodeNum,url:e,title:t};return L.episodeIds.push(n),x("info",`Added to episodeIds: ${JSON.stringify(n)}`),n}function KYe(e){let t=L.episodeIds.length;L.episodeIds=L.episodeIds.filter(n=>n.url!==e);let r=t-L.episodeIds.length;return r>0?(x("info",`Removed ${r} episode(s) from episodeIds with URL: ${e}`),!0):(x("error",`No episode found in episodeIds with URL: ${e}`),!1)}function UR(e){let t=L.episodeIds.find(n=>n.id===e);if(t)return x("info",`Found URL for ID ${e}: ${t.url}`),t.url;let r=pw(e);return r?.link?.url?(x("info",`Found URL for ID ${e} via cached anime details: ${r.link.url}`),r.link.url):(x("error",`No URL found for ID: ${e}`),null)}function c5(e){let t=L.episodeIds.findIndex(n=>n.id===e);if(t!==-1)return x("info",`Found index for ID ${e}: ${t}`),t;let r=pw(e);return r?(x("info",`Found index for ID ${e} via cached anime details: ${r.index}`),r.index):(x("error",`No index found for ID: ${e}`),-1)}function fae(e){let t=L.episodeIds.find(n=>n.id===e);if(t)return x("info",`Found TITLE for ID ${e}: ${t.title}`),t.title;let r=pw(e);return r?.link?.title?(x("info",`Found TITLE for ID ${e} via cached anime details: ${r.link.title}`),r.link.title):(x("error",`No TITLE found for ID: ${e}`),null)}function pae(e){let t=pw(e);return t?.anime?.animeTitle?(x("info",`Found animeTitle for ID ${e}: ${t.anime.animeTitle}`),t.anime.animeTitle):(x("error",`No animeTitle found for ID: ${e}`),null)}function Bt(e,t=null){e=sy.fromJson(e);try{if(!e.links||!Array.isArray(e.links))return x("error",`Invalid or missing links in anime: ${JSON.stringify(e)}`),!1;let r=[];e.links.forEach(s=>{if(s.url){let a=HYe(s.url,s.title);a&&r.push(a)}else x("error",`Invalid link in anime, missing url: ${JSON.stringify(s)}`)});let n=sy.fromJson({...e,links:r});FYe(t,n);let i=L.animes.findIndex(s=>s.animeId===e.animeId);return i!==-1&&(L.animes.splice(i,1),x("info",`Removed old anime at index: ${i}`)),L.animes.push(n),x("info",`Added anime to latest position: ${e.animeId}`),L.animes.length>L.MAX_ANIMES&&(qt()||x("error","Failed to remove earliest anime, but continuing")),x("info",`animes: ${JSON.stringify(L.animes.map(s=>({links:s.links,animeId:s.animeId,bangumiId:s.bangumiId,animeTitle:s.animeTitle})),(s,a)=>s==="links"?a.length:a)}`),!0}catch(r){return x("error",`addAnime failed: ${r.message}`),!1}}function qt(){if(L.animes.length===0)return x("error","No animes to remove."),!1;let e=L.animes.shift();return x("info",`Removed earliest anime: ${JSON.stringify(e)}`),e.links&&Array.isArray(e.links)&&e.links.forEach(t=>{t.url&&KYe(t.url)}),!0}function hae(e,t){let r=new Set;for(let d of e)r.add(d.animeId);let n=L.lastSelectMap.get(t),i=n?.prefer,s=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,u=n?.offsets,c=a?{...a}:{},l=o?{...o}:{};if(i!==void 0&&(c.default=i),s!==void 0&&(l.default=s),L.lastSelectMap.has(t)&&L.lastSelectMap.delete(t),L.lastSelectMap.set(t,{animeIds:[...r],...Object.keys(c).length>0&&{preferBySeason:c},...Object.keys(l).length>0&&{sourceBySeason:l},...u!==void 0&&{offsets:u}}),L.lastSelectMap.size>L.MAX_LAST_SELECT_MAP){let d=L.lastSelectMap.keys().next().value;L.lastSelectMap.delete(d),x("info",`Removed earliest entry from lastSelectMap: ${d}`)}}function l5(e){let t=pw(e);return t?[t.anime.animeId,t.anime.source,t.link.title]:[null,null,null]}function mae(e,t,r=null,n=null){for(let[i,s]of L.lastSelectMap.entries())if(s.animeIds&&s.animeIds.includes(e)){let a=r===null?"default":String(r);return s.preferBySeason=s.preferBySeason||{},s.sourceBySeason=s.sourceBySeason||{},s.preferBySeason[a]=e,s.sourceBySeason[a]=t,r!==null&&n!==null&&(s.offsets=s.offsets||{},s.offsets[a]=n),L.lastSelectMap.set(i,s),i}return null}function gae(e,t=null){let r=L.lastSelectMap.get(e);if(!r)return[null,null,null];let n=t===null?"default":String(t),i=r.preferBySeason||{},s=r.sourceBySeason||{},a=i[n]??i.default??r.prefer??null,o=s[n]??s.default??r.source??null,u=r.offsets||null;return[a,o,u]}function d5(e){let r=0;for(let[n,i]of L.requestHistory.entries()){let s=i.filter(a=>e-a<=6e4);s.length===0?(L.requestHistory.delete(n),r++,x("info",`[Rate Limit] Cleaned up expired IP record: ${n}`)):s.length0&&x("info",`[Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function f5(){return typeof __dirname<"u"?__dirname:BR.join(process.cwd(),"danmu_api","utils")}function Ev(e){let t=BR.join(f5(),"..","..",".cache",`${e}`);if(LR.existsSync(t)){let r=LR.readFileSync(t,"utf8");return JSON.parse(r)}return null}function p5(e,t){let r=BR.join(f5(),"..","..",".cache",`${e}`);LR.writeFileSync(r,JSON.stringify(t),"utf8")}async function yae(){if(!L.localCacheInitialized)try{x("info","getLocalCaches start."),L.animes=JSON.parse(Ev("animes"))||L.animes,L.episodeIds=JSON.parse(Ev("episodeIds"))||L.episodeIds,L.episodeNum=JSON.parse(Ev("episodeNum"))||L.episodeNum,L.reqRecords=JSON.parse(Ev("reqRecords"))||L.reqRecords,L.todayReqNum=JSON.parse(Ev("todayReqNum"))||L.todayReqNum;let e=Ev("lastSelectMap");e&&(L.lastSelectMap=new Map(Object.entries(JSON.parse(e))),x("info",`Restored lastSelectMap from local cache with ${L.lastSelectMap.size} entries`)),L.lastHashes.animes=Rn(JSON.stringify(L.animes)),L.lastHashes.episodeIds=Rn(JSON.stringify(L.episodeIds)),L.lastHashes.episodeNum=Rn(JSON.stringify(L.episodeNum)),L.lastHashes.reqRecords=Rn(JSON.stringify(L.reqRecords)),L.lastHashes.todayReqNum=Rn(JSON.stringify(L.todayReqNum)),L.lastHashes.lastSelectMap=Rn(JSON.stringify(Object.fromEntries(L.lastSelectMap))),L.localCacheInitialized=!0,x("info","getLocalCaches completed successfully.")}catch(e){x("error",`getLocalCaches failed: ${e.message}`,e.stack),L.localCacheInitialized=!0}}async function h5(){try{x("info","updateLocalCaches start.");let e=[],t=[{key:"animes",value:L.animes},{key:"episodeIds",value:L.episodeIds},{key:"episodeNum",value:L.episodeNum},{key:"reqRecords",value:L.reqRecords},{key:"lastSelectMap",value:L.lastSelectMap},{key:"todayReqNum",value:L.todayReqNum}];for(let{key:r,value:n}of t){let i=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),s=Rn(i);s!==L.lastHashes[r]&&(p5(r,i),e.push({key:r,hash:s}))}e.length>0?(x("info",`Updated local caches for keys: ${e.map(r=>r.key).join(", ")}`),e.forEach(({key:r,hash:n})=>{L.lastHashes[r]=n})):x("info","No changes detected, skipping local cache update.")}catch(e){x("error",`updateLocalCaches failed: ${e.message}`,e.stack),x("error",`Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function _ae(e,t){if(t==="node")try{if(LR=await import("fs"),BR=await import("path"),!L.localCacheValid&&e!=="/favicon.ico"&&e!=="/robots.txt"){let r=BR.join(f5(),"..","..",".cache");LR.existsSync(r)?L.localCacheValid=!0:L.localCacheValid=!1}}catch(r){console.warn("Node.js modules not available:",r.message),L.localCacheValid=!1}}var LR,BR,MR,Ei=ve(()=>{Ot();Ct();rs();vs();MR=new Map});function zYe(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function Aae(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function om(e){let t="";for(let r=0;r{MTr=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function LTr(e,t,r=!1){if(t===0&&!r)return e.map(s=>({...s,t:s.t!==void 0?s.t:parseFloat(s.p.split(",")[0])}));let n=e.reduce((s,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),u=t===0?o.toFixed(2):Math.floor(o/(t*60));return s[u]||(s[u]=[]),s[u].push({...a,t:o}),s},{});return Object.keys(n).map(s=>{let o=n[s].reduce((u,c)=>{let l=c.m.split(" X")[0].trim();if(u[l]||(u[l]={count:0,earliestT:c.t,cid:c.cid,p:c.p,like:0,sources:new Set}),u[l].count+=1,u[l].earliestT=Math.min(u[l].earliestT,c.t),u[l].like+=c.like!==void 0?c.like:0,c.p){let d=c.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&u[l].sources.add(f.trim())})}return u},{});return Object.keys(o).map(u=>{let c=o[u],l=Math.max(1,c.sources.size),d=Math.round(c.count/l);d<1&&(d=1);let f=Array.from(c.sources).join("\uFF06"),p=c.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:c.cid,p,m:d>1?`${u}\u200Ax\u200A${d}`:u,t:c.earliestT,like:c.like}})}).flat().sort((s,a)=>s.t-a.t)}function BTr(e){if(!L.likeSwitch)return e;let t=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return e.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||t.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",u;r.like>=1e4?u=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?u=(r.like/1e3).toFixed(1)+"k":u=r.like.toString();let c=`\u200A${o}${u}`,l=r.m+c,{like:d,...f}=r;return{...f,m:l}})}function $Tr(e,t){if(t===0)return e;let r=t*1e3,n=e.length;if(n<=r)return e;let i=n/r,s=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(e&&Array.isArray(e.danmuku)){let f={right:1,top:4,bottom:5},p=h=>h?parseInt(h.replace("#",""),16):16777215;s=e.danmuku.map(h=>({timepoint:h[0],ct:f[h[1]]!==void 0?f[h[1]]:1,color:p(h[2]),content:h[4]}))}else Array.isArray(e)&&(s=e);if(!s.length)return[];for(let f of s){let p,h,m,y,g;if("progress"in f&&"mode"in f&&"content"in f)m=(f.progress/1e3).toFixed(2),y=f.mode||1,g=f.color||16777215,h=f.content;else if("timepoint"in f)m=parseFloat(f.timepoint).toFixed(2),y=f.ct||0,g=f.color||16777215,h=f.content;else{if(!("p"in f))continue;let A=f.p.split(",");m=parseFloat(A[0]).toFixed(2),y=A[1]||0,A.length===4?g=A[2]||16777215:A.length>=8?g=A[3]||16777215:g=A[3]||A[2]||16777215,h=f.m}let v=f._sourceLabel||t;f.realTimeSource&&!v.includes(f.realTimeSource)&&(v=`${v}\uFF06${f.realTimeSource}`),!i&&/[&&]/.test(v)&&(i=!0),p=[m,y,g,`[${v}]`].join(","),r.push({p,m:h,cid:n++,like:f?.like})}let a=L.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(h){return x("error",`\u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,h),null}return null}).filter(f=>f!==null);x("info",`\u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${L.blockedWords}`),x("info",`\u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(` -`):String(f))(a)}`);let u=r.filter(f=>!a.some(p=>p.test(f.m)));x("info",`\u53BB\u91CD\u5206\u949F\u6570: ${L.groupMinute}`);let c=LTr(u,L.groupMinute,i),l=BTr(c),d=$Tr(l,L.danmuLimit);if(L.convertTopBottomToScroll||L.convertColor==="white"||L.convertColor==="color"){let f=0,p=0;d=d.map(h=>{let m=h.p.split(",");if(m.length<3)return h;let y=parseInt(m[1],10),g=parseInt(m[2],10),v=!1;L.convertTopBottomToScroll&&(y===4||y===5)&&(f++,y=1,v=!0),L.convertColor==="white"&&g!==16777215&&(p++,g=16777215,v=!0);let A=L.colorPool.split(",").map(E=>parseInt(E.trim(),10)).filter(E=>!isNaN(E)&&E>=0&&E<=16777215),_=A[Math.floor(Math.random()*A.length)];if(L.convertColor==="color"&&g===16777215&&g!==_&&(p++,g=_,v=!0),v){let E=[m[0],y,g,...m.slice(3)].join(",");return{...h,p:E}}return h}),f>0&&x("info",`[danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&x("info",`[danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return L.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:om(f.m)})),x("info",`[danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),x("info",`danmus_original: ${r.length}`),x("info",`danmus_filter: ${u.length}`),x("info",`danmus_group: ${c.length}`),x("info",`danmus_limit: ${d.length}`),x("info","Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function vae(e){return typeof e.r!="number"||e.r<0||e.r>255||typeof e.g!="number"||e.g<0||e.g>255||typeof e.b!="number"||e.b<0||e.b>255?-1:e.r*256*256+e.g*256+e.b}function hw(e){return typeof e!="string"||e.length!==6||!/^[0-9A-Fa-f]{6}$/.test(e)?16777215:parseInt(e,16)}function FTr(e){let t=` +\u5F53\u914D\u7F6E"dandan&animeko"\u65F6\u8FD4\u56DE"dandan&bilibili1&animeko"`},ANIME_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u540D\u8FC7\u6EE4\u89C4\u5219"},EPISODE_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u96C6\u6807\u9898\u8FC7\u6EE4\u89C4\u5219"},ENABLE_ANIME_EPISODE_FILTER:{category:"match",type:"boolean",description:"\u63A7\u5236\u624B\u52A8\u641C\u7D22\u7684\u65F6\u5019\u662F\u5426\u6839\u636EANIME_TITLE_FILTER\u8FDB\u884C\u5267\u540D\u8FC7\u6EE4\u4EE5\u53CA\u6839\u636EEPISODE_TITLE_FILTER\u8FDB\u884C\u96C6\u6807\u9898\u8FC7\u6EE4"},STRICT_TITLE_MATCH:{category:"match",type:"boolean",description:"\u4E25\u683C\u6807\u9898\u5339\u914D\u6A21\u5F0F"},TITLE_TO_CHINESE:{category:"match",type:"boolean",description:"\u5916\u8BED\u6807\u9898\u8F6C\u6362\u4E2D\u6587\u5F00\u5173"},ANIME_TITLE_SIMPLIFIED:{category:"match",type:"boolean",description:"\u641C\u7D22\u7684\u5267\u540D\u6807\u9898\u81EA\u52A8\u7E41\u8F6C\u7B80"},TITLE_MAPPING_TABLE:{category:"match",type:"map",description:'\u5267\u540D\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u52A8\u5339\u914D\u65F6\u66FF\u6362\u6807\u9898\u8FDB\u884C\u641C\u7D22\uFF0C\u683C\u5F0F\uFF1A\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;... \uFF0C\u4F8B\u5982\uFF1A"\u5510\u671D\u8BE1\u4E8B\u5F55->\u5510\u671D\u8BE1\u4E8B\u5F55\u4E4B\u897F\u884C;\u56FD\u8272\u82B3\u534E->\u9526\u7EE3\u82B3\u534E"'},AI_BASE_URL:{category:"match",type:"text",description:"AI\u670D\u52A1\u57FA\u7840URL\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Ahttps://api.openai.com/v1"},AI_MODEL:{category:"match",type:"text",description:"AI\u6A21\u578B\u540D\u79F0\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Agpt-4o"},AI_API_KEY:{category:"match",type:"text",description:"AI\u670D\u52A1API\u5BC6\u94A5\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u9700\u624B\u52A8\u586B\u5199"},AI_MATCH_PROMPT:{category:"match",type:"text",description:"AI\u81EA\u52A8\u5339\u914D\u63D0\u793A\u8BCD\u6A21\u677F\uFF0C\u4E0D\u586B\u63D0\u4F9B\u9ED8\u8BA4\u63D0\u793A\u8BCD\uFF0C\u9ED8\u8BA4\u63D0\u793A\u8BCD\u8BF7\u67E5\u770BREADME"},BLOCKED_WORDS:{category:"danmu",type:"text",description:"\u5C4F\u853D\u8BCD\u5217\u8868"},GROUP_MINUTE:{category:"danmu",type:"number",description:"\u5206\u949F\u5185\u5408\u5E76\u53BB\u91CD\uFF080\u8868\u793A\u4E0D\u53BB\u91CD\uFF09\uFF0C\u9ED8\u8BA41",min:0,max:30},DANMU_LIMIT:{category:"danmu",type:"number",description:"\u5F39\u5E55\u6570\u91CF\u9650\u5236\uFF0C\u5355\u4F4D\u4E3Ak\uFF0C\u5373\u5343\uFF1A\u9ED8\u8BA4 0\uFF0C\u8868\u793A\u4E0D\u9650\u5236\u5F39\u5E55\u6570",min:0,max:100},DANMU_SIMPLIFIED_TRADITIONAL:{category:"danmu",type:"select",options:["default","simplified","traditional"],description:"\u5F39\u5E55\u7B80\u7E41\u4F53\u8F6C\u6362\u8BBE\u7F6E\uFF1Adefault\uFF08\u9ED8\u8BA4\u4E0D\u8F6C\u6362\uFF09\u3001simplified\uFF08\u7E41\u8F6C\u7B80\uFF09\u3001traditional\uFF08\u7B80\u8F6C\u7E41\uFF09"},CONVERT_TOP_BOTTOM_TO_SCROLL:{category:"danmu",type:"boolean",description:"\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u8F6C\u6362\u4E3A\u6D6E\u52A8\u5F39\u5E55"},CONVERT_COLOR:{category:"danmu",type:"select",options:["default","white","color"],description:"\u5F39\u5E55\u8F6C\u6362\u989C\u8272\u914D\u7F6E"},COLOR_POOL:{category:"danmu",type:"text",description:"\u81EA\u5B9A\u4E49\u989C\u8272\u6C60\uFF08CONVERT_COLOR\u4E3Acolor\u65F6\u751F\u6548\uFF09\uFF0C\u4E0D\u914D\u7F6E\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60\uFF0C\u683C\u5F0F\uFF1A\u5341\u8FDB\u5236\u989C\u8272\u503C\u9017\u53F7\u5206\u9694"},DANMU_OUTPUT_FORMAT:{category:"danmu",type:"select",options:["json","xml"],description:"\u5F39\u5E55\u8F93\u51FA\u683C\u5F0F\uFF0C\u9ED8\u8BA4json"},DANMU_PUSH_URL:{category:"danmu",type:"text",description:"\u5F39\u5E55\u63A8\u9001\u5730\u5740\uFF0C\u793A\u4F8B http://127.0.0.1:9978/action?do=refresh&type=danmaku&path= "},LIKE_SWITCH:{category:"danmu",type:"boolean",description:"\u5F39\u5E55\u70B9\u8D5E\u6570\u663E\u793A\u5F00\u5173\uFF0C\u9ED8\u8BA4\u5F00\u542F"},DANMU_OFFSET:{category:"danmu",type:"text",sources:this.ALLOWED_SOURCES,description:"\u5F39\u5E55\u65F6\u95F4\u504F\u79FB\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u5267\u540D:\u79D2 \u6216 \u5267\u540D/\u5B63:\u79D2 \u6216 \u5267\u540D/\u5B63/\u96C6:\u79D2\uFF0C\u652F\u6301\u6307\u5B9A\u6765\u6E90\uFF1A\u5267\u540D@\u6765\u6E90:\u79D2 \u6216 \u5267\u540D/\u5B63@\u6765\u6E901&\u6765\u6E902:\u79D2\uFF0C\u591A\u6761\u7528\u9017\u53F7\u5206\u9694\uFF0C\u6B63\u6570\u8868\u793A\u5F39\u5E55\u5EF6\u540E\uFF08\u5411\u53F3\uFF09\uFF0C\u8D1F\u6570\u8868\u793A\u5F39\u5E55\u63D0\u524D\uFF08\u5411\u5DE6\uFF09\uFF0C\u4F8B\u5982\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10"},SEARCH_CACHE_MINUTES:{category:"cache",type:"number",description:"\u641C\u7D22\u7ED3\u679C\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},COMMENT_CACHE_MINUTES:{category:"cache",type:"number",description:"\u5F39\u5E55\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},REMEMBER_LAST_SELECT:{category:"cache",type:"boolean",description:"\u8BB0\u4F4F\u624B\u52A8\u9009\u62E9\u7ED3\u679C"},MAX_LAST_SELECT_MAP:{category:"cache",type:"number",description:"\u8BB0\u4F4F\u4E0A\u6B21\u9009\u62E9\u6620\u5C04\u7F13\u5B58\u5927\u5C0F\u9650\u5236\uFF0C\u9ED8\u8BA4100",min:10,max:1e3},MAX_ANIMES:{category:"cache",type:"number",description:"\u52A8\u6F2B\u6807\u9898\u7F13\u5B58\u6700\u5927\u6570\u91CF\uFF0C\u9ED8\u8BA4100",min:100,max:1e3},UPSTASH_REDIS_REST_URL:{category:"cache",type:"text",description:"Upstash Redis\u8BF7\u6C42\u94FE\u63A5"},UPSTASH_REDIS_REST_TOKEN:{category:"cache",type:"text",description:"Upstash Redis\u8BBF\u95EE\u4EE4\u724C"},LOCAL_REDIS_URL:{category:"cache",type:"text",description:"\u672C\u5730 Redis \u8FDE\u63A5URL\uFF0C\u793A\u4F8B\uFF1Aredis://:password@127.0.0.1:6379/0\uFF0C\u53EA\u652F\u6301\u672C\u5730\u90E8\u7F72\u548Cdocker\u90E8\u7F72"},PROXY_URL:{category:"system",type:"text",description:"\u4EE3\u7406/\u53CD\u4EE3\u5730\u5740"},TMDB_API_KEY:{category:"system",type:"text",description:"TMDB API\u5BC6\u94A5"},LOG_LEVEL:{category:"system",type:"select",options:["debug","info","warn","error"],description:"\u65E5\u5FD7\u7EA7\u522B\u914D\u7F6E"},DEPLOY_PLATFROM_ACCOUNT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8D26\u53F7ID"},DEPLOY_PLATFROM_PROJECT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u9879\u76EE\u540D\u79F0"},DEPLOY_PLATFROM_TOKEN:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8BBF\u95EE\u4EE4\u724C"},NODE_TLS_REJECT_UNAUTHORIZED:{category:"system",type:"number",description:"\u5728\u5EFA\u7ACB HTTPS \u8FDE\u63A5\u65F6\u662F\u5426\u9A8C\u8BC1\u670D\u52A1\u5668\u7684 SSL/TLS \u8BC1\u4E66\uFF0C0\u8868\u793A\u5FFD\u7565\uFF0C\u9ED8\u8BA4\u4E3A1",min:0,max:1},IP_BLACKLIST:{category:"system",type:"text",description:"IP \u9ED1\u540D\u5355\u5217\u8868\uFF0C\u652F\u6301\u9017\u53F7/\u5206\u53F7/\u6362\u884C\u5206\u9694\uFF0C\u652F\u6301 /regex/ \u6216 /regex/i \u6B63\u5219\uFF0C\u652F\u6301 IPv4/IPv6 CIDR\uFF08\u5982 10.0.0.0/4\u30012001:db8::/64\uFF09\u3002\u547D\u4E2D\u5219\u62D2\u7EDD\u8BF7\u6C42"}};return{vodAllowedPlatforms:this.VOD_ALLOWED_PLATFORMS,allowedPlatforms:this.ALLOWED_PLATFORMS,token:this.get("TOKEN","87654321","string",!0),adminToken:this.get("ADMIN_TOKEN","","string",!0),sourceOrderArr:this.resolveSourceOrder(),mergeSourcePairs:this.resolveMergeSourcePairs(),otherServer:this.get("OTHER_SERVER","https://api.danmu.icu","string"),customSourceApiUrl:this.get("CUSTOM_SOURCE_API_URL","","string",!0),vodServers:this.resolveVodServers(),vodReturnMode:this.get("VOD_RETURN_MODE","fastest","string").toLowerCase(),vodRequestTimeout:this.get("VOD_REQUEST_TIMEOUT","10000","string"),bilibliCookie:this.get("BILIBILI_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),realTimePullDandan:this.get("REAL_TIME_PULL_DANDAN",!1,"boolean"),platformOrderArr:this.resolvePlatformOrder(),animeTitleFilter:this.resolveAnimeTitleFilter(),episodeTitleFilter:this.resolveEpisodeTitleFilter(),blockedWords:this.get("BLOCKED_WORDS","","string"),groupMinute:Math.min(this.get("GROUP_MINUTE",1,"number"),30),danmuLimit:this.get("DANMU_LIMIT",0,"number"),proxyUrl:this.get("PROXY_URL","","string",!0),danmuSimplifiedTraditional:this.get("DANMU_SIMPLIFIED_TRADITIONAL","default","string"),danmuPushUrl:this.get("DANMU_PUSH_URL","","string"),likeSwitch:this.get("LIKE_SWITCH",!0,"boolean"),danmuOffset:this.get("DANMU_OFFSET","","string"),danmuOffsetRules:Gnt(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",15,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var Js,F,Wt=ie(()=>{znt();Js={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.16",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(e={}){return this.env=e,this.envs=km.load(this.env),this.originalEnvVars=Object.fromEntries(km.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(km.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=km.load(this.env),this.originalEnvVars=Object.fromEntries(km.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(km.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(e){let t=this.envs.proxyUrl||"";if(!t||!e)return e;let r=t.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(e)}catch{return e}let o=a.hostname;for(let c of r)if(c.startsWith("bahamut@")&&o.includes("gamer.com.tw")){s=c.substring(8);break}else if(c.startsWith("tmdb@")&&o.includes("tmdb")){s=c.substring(5);break}else if(c.startsWith("bilibili@")&&o.includes("bilibili")){s=c.substring(9);break}else if(c.startsWith("animeko@")&&(o.includes("animeko")||o.includes("bgm.tv"))){s=c.substring(8);break}else c.startsWith("@")&&!i?i=c.substring(1):!c.includes("@")&&!n&&(n=c);if(s)try{let c=new URL(s);return a.protocol=c.protocol,a.host=c.host,a.port=c.port,c.pathname!=="/"&&(a.pathname=c.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return e}return i?`${i.replace(/\/$/,"")}/${e}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(e)}`:e},getConfig(){if(this._configProxy)return this._configProxy;let e=this;return this._configProxy=new Proxy({},{get(t,r){return r in e.envs?e.envs[r]:r==="version"?e.VERSION:r==="maxLogs"?e.MAX_LOGS:r==="maxAnimes"?e.envs.MAX_ANIMES:r==="maxRecords"?e.MAX_RECORDS:r==="maxLastSelectMap"?e.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?e.makeProxyUrl.bind(e):e[r]},set(t,r,n){return r in e.envs?e.envs[r]=n:e[r]=n,!0}}),this._configProxy}},F=new Proxy({},{get(e,t){return Js.getConfig()[t]},set(e,t,r){return Js.getConfig()[t]=r,!0},has(e,t){return t in Js.getConfig()},ownKeys(e){return Reflect.ownKeys(Js.getConfig())},getOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(Js.getConfig(),t)}})});var Sit={};kt(Sit,{Deflate:()=>hit,Inflate:()=>_it,constants:()=>vit,default:()=>W9r,deflate:()=>pit,deflateRaw:()=>mit,gzip:()=>git,inflate:()=>Ait,inflateRaw:()=>Eit,ungzip:()=>yit});function xR(e){let t=e.length;for(;--t>=0;)e[t]=0}function Mde(e,t,r,n,s){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=s,this.has_stree=e&&e.length}function kde(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function Dh(e,t,r,n,s){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=s}function d$r(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=D9,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(r$r*2),this.dyn_dtree=new Uint16Array((2*e$r+1)*2),this.bl_tree=new Uint16Array((2*t$r+1)*2),QA(this.dyn_ltree),QA(this.dyn_dtree),QA(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(n$r+1),this.heap=new Uint16Array(2*Xde+1),QA(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*Xde+1),QA(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function P$r(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function DP(e){this.options=P9.assign({level:F$r,method:q$r,chunkSize:16384,windowBits:15,memLevel:8,strategy:$$r},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Zst,this.strm.avail_out=0;let r=yP.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==N9)throw new Error(mS[r]);if(t.header&&yP.deflateSetHeader(this.strm,t.header),t.dictionary){let n;if(typeof t.dictionary=="string"?n=xP.string2buf(t.dictionary):eit.call(t.dictionary)==="[object ArrayBuffer]"?n=new Uint8Array(t.dictionary):n=t.dictionary,r=yP.deflateSetDictionary(this.strm,n),r!==N9)throw new Error(mS[r]);this._dict_set=!0}}function cfe(e,t){let r=new DP(t);if(r.push(e,!0),r.err)throw r.msg||mS[r.err];return r.result}function H$r(e,t){return t=t||{},t.raw=!0,cfe(e,t)}function V$r(e,t){return t=t||{},t.gzip=!0,cfe(e,t)}function f9r(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function w9r(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}function PP(e){this.options=P9.assign({chunkSize:1024*64,windowBits:15,to:""},e||{});let t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(t.windowBits&15||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Zst,this.strm.avail_out=0;let r=Fm.inflateInit2(this.strm,t.windowBits);if(r!==wP)throw new Error(mS[r]);if(this.header=new N9r,Fm.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=xP.string2buf(t.dictionary):fit.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=Fm.inflateSetDictionary(this.strm,t.dictionary),r!==wP)))throw new Error(mS[r])}function ufe(e,t){let r=new PP(t);if(r.push(e),r.err)throw r.msg||mS[r.err];return r.result}function M9r(e,t){return t=t||{},t.raw=!0,ufe(e,t)}var l8r,Dst,d8r,f8r,h8r,nfe,NP,SP,IR,sfe,Pst,fS,Lde,p8r,ife,Lst,Mst,kst,Yde,x9,m8r,Bst,g8r,Um,EP,TP,bP,afe,w9,Ust,Fst,$st,qst,IP,qu,Ph,Hst,_8r,A8r,Vst,E8r,jst,Kst,Ynt,Bde,Qnt,Qde,Wnt,Xnt,y8r,v8r,S8r,Jnt,T8r,Gst,b8r,I8r,R8r,C8r,x8r,w8r,N8r,O8r,D8r,P8r,RP,L8r,M8r,k8r,Ha,mS,AS,B8r,Wde,U8r,XA,F8r,JA,$8r,q8r,Ld,Znt,vo,est,Lh,H8r,Ude,V8r,j8r,T9,K8r,G8r,z8r,Y8r,D9,Q8r,W8r,X8r,J8r,Z8r,Xde,e$r,t$r,r$r,n$r,ln,WA,Mh,s$r,RR,ofe,Jde,Zde,efe,tfe,hS,_P,Kc,wR,gS,NR,i$r,pS,tst,QA,a$r,o$r,ZA,Nl,Ol,Kn,gP,rfe,zst,CR,Yst,Fde,TR,c$r,u$r,AP,l$r,OP,Qst,Wst,f$r,Xst,h$r,p$r,m$r,g$r,_$r,A$r,E$r,y$r,v$r,S$r,T$r,b$r,I$r,yP,R$r,C$r,x$r,P9,Jst,CP,w$r,N$r,O$r,D$r,xP,Zst,eit,L$r,M$r,k$r,B$r,N9,U$r,F$r,$$r,q$r,j$r,K$r,G$r,z$r,Y$r,Q$r,b9,W$r,X$r,bR,rst,nst,sst,$de,ist,J$r,Z$r,e9r,t9r,r9r,vP,n9r,tit,rit,ast,s9r,I9,_S,i9r,a9r,Md,nit,sit,o9r,ost,L9,cst,ust,lst,dst,fst,hst,pst,mst,gst,O9,Bm,qde,_st,Hde,Ast,Est,yst,vst,R9,C9,Sst,Tst,bst,Ist,Rst,Vde,Cst,xst,ai,iit,ait,c9r,u9r,l9r,d9r,wst,ES,oit,cit,uit,lit,h9r,Nst,jde,Kde,p9r,dit,m9r,g9r,_9r,A9r,E9r,y9r,v9r,S9r,T9r,b9r,I9r,R9r,C9r,x9r,Fm,N9r,fit,O9r,D9r,wP,Gde,zde,P9r,Ost,L9r,k9r,B9r,U9r,F9r,$9r,q9r,H9r,V9r,j9r,K9r,G9r,z9r,Y9r,Q9r,hit,pit,mit,git,_it,Ait,Eit,yit,vit,W9r,Tit=ie(()=>{l8r=0,Dst=1,d8r=2,f8r=3,h8r=258,nfe=29,NP=256,SP=NP+1+nfe,IR=30,sfe=19,Pst=2*SP+1,fS=15,Lde=16,p8r=7,ife=256,Lst=16,Mst=17,kst=18,Yde=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),x9=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),m8r=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),Bst=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),g8r=512,Um=new Array((SP+2)*2);xR(Um);EP=new Array(IR*2);xR(EP);TP=new Array(g8r);xR(TP);bP=new Array(h8r-f8r+1);xR(bP);afe=new Array(nfe);xR(afe);w9=new Array(IR);xR(w9);qst=e=>e<256?TP[e]:TP[256+(e>>>7)],IP=(e,t)=>{e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255},qu=(e,t,r)=>{e.bi_valid>Lde-r?(e.bi_buf|=t<>Lde-e.bi_valid,e.bi_valid+=r-Lde):(e.bi_buf|=t<{qu(e,r[t*2],r[t*2+1])},Hst=(e,t)=>{let r=0;do r|=e&1,e>>>=1,r<<=1;while(--t>0);return r>>>1},_8r=e=>{e.bi_valid===16?(IP(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)},A8r=(e,t)=>{let r=t.dyn_tree,n=t.max_code,s=t.stat_desc.static_tree,i=t.stat_desc.has_stree,a=t.stat_desc.extra_bits,o=t.stat_desc.extra_base,c=t.stat_desc.max_length,u,l,d,f,h,p,m=0;for(f=0;f<=fS;f++)e.bl_count[f]=0;for(r[e.heap[e.heap_max]*2+1]=0,u=e.heap_max+1;uc&&(f=c,m++),r[l*2+1]=f,!(l>n)&&(e.bl_count[f]++,h=0,l>=o&&(h=a[l-o]),p=r[l*2],e.opt_len+=p*(f+h),i&&(e.static_len+=p*(s[l*2+1]+h)));if(m!==0){do{for(f=c-1;e.bl_count[f]===0;)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[c]--,m-=2}while(m>0);for(f=c;f!==0;f--)for(l=e.bl_count[f];l!==0;)d=e.heap[--u],!(d>n)&&(r[d*2+1]!==f&&(e.opt_len+=(f-r[d*2+1])*r[d*2],r[d*2+1]=f),l--)}},Vst=(e,t,r)=>{let n=new Array(fS+1),s=0,i,a;for(i=1;i<=fS;i++)s=s+r[i-1]<<1,n[i]=s;for(a=0;a<=t;a++){let o=e[a*2+1];o!==0&&(e[a*2]=Hst(n[o]++,o))}},E8r=()=>{let e,t,r,n,s,i=new Array(fS+1);for(r=0,n=0;n>=7;n{let t;for(t=0;t{e.bi_valid>8?IP(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Ynt=(e,t,r,n)=>{let s=t*2,i=r*2;return e[s]{let n=e.heap[r],s=r<<1;for(;s<=e.heap_len&&(s{let n,s,i=0,a,o;if(e.sym_next!==0)do n=e.pending_buf[e.sym_buf+i++]&255,n+=(e.pending_buf[e.sym_buf+i++]&255)<<8,s=e.pending_buf[e.sym_buf+i++],n===0?Ph(e,s,t):(a=bP[s],Ph(e,a+NP+1,t),o=Yde[a],o!==0&&(s-=afe[a],qu(e,s,o)),n--,a=qst(n),Ph(e,a,r),o=x9[a],o!==0&&(n-=w9[a],qu(e,n,o)));while(i{let r=t.dyn_tree,n=t.stat_desc.static_tree,s=t.stat_desc.has_stree,i=t.stat_desc.elems,a,o,c=-1,u;for(e.heap_len=0,e.heap_max=Pst,a=0;a>1;a>=1;a--)Bde(e,r,a);u=i;do a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],Bde(e,r,1),o=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=o,r[u*2]=r[a*2]+r[o*2],e.depth[u]=(e.depth[a]>=e.depth[o]?e.depth[a]:e.depth[o])+1,r[a*2+1]=r[o*2+1]=u,e.heap[1]=u++,Bde(e,r,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],A8r(e,t),Vst(r,c,e.bl_count)},Wnt=(e,t,r)=>{let n,s=-1,i,a=t[0*2+1],o=0,c=7,u=4;for(a===0&&(c=138,u=3),t[(r+1)*2+1]=65535,n=0;n<=r;n++)i=a,a=t[(n+1)*2+1],!(++o{let n,s=-1,i,a=t[0*2+1],o=0,c=7,u=4;for(a===0&&(c=138,u=3),n=0;n<=r;n++)if(i=a,a=t[(n+1)*2+1],!(++o{let t;for(Wnt(e,e.dyn_ltree,e.l_desc.max_code),Wnt(e,e.dyn_dtree,e.d_desc.max_code),Qde(e,e.bl_desc),t=sfe-1;t>=3&&e.bl_tree[Bst[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t},v8r=(e,t,r,n)=>{let s;for(qu(e,t-257,5),qu(e,r-1,5),qu(e,n-4,4),s=0;s{let t=4093624447,r;for(r=0;r<=31;r++,t>>>=1)if(t&1&&e.dyn_ltree[r*2]!==0)return 0;if(e.dyn_ltree[9*2]!==0||e.dyn_ltree[10*2]!==0||e.dyn_ltree[13*2]!==0)return 1;for(r=32;r{Jnt||(E8r(),Jnt=!0),e.l_desc=new kde(e.dyn_ltree,Ust),e.d_desc=new kde(e.dyn_dtree,Fst),e.bl_desc=new kde(e.bl_tree,$st),e.bi_buf=0,e.bi_valid=0,jst(e)},Gst=(e,t,r,n)=>{qu(e,(l8r<<1)+(n?1:0),3),Kst(e),IP(e,r),IP(e,~r),r&&e.pending_buf.set(e.window.subarray(t,t+r),e.pending),e.pending+=r},b8r=e=>{qu(e,Dst<<1,3),Ph(e,ife,Um),_8r(e)},I8r=(e,t,r,n)=>{let s,i,a=0;e.level>0?(e.strm.data_type===2&&(e.strm.data_type=S8r(e)),Qde(e,e.l_desc),Qde(e,e.d_desc),a=y8r(e),s=e.opt_len+3+7>>>3,i=e.static_len+3+7>>>3,i<=s&&(s=i)):s=i=r+5,r+4<=s&&t!==-1?Gst(e,t,r,n):e.strategy===4||i===s?(qu(e,(Dst<<1)+(n?1:0),3),Qnt(e,Um,EP)):(qu(e,(d8r<<1)+(n?1:0),3),v8r(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),Qnt(e,e.dyn_ltree,e.dyn_dtree)),jst(e),n&&Kst(e)},R8r=(e,t,r)=>(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=r,t===0?e.dyn_ltree[r*2]++:(e.matches++,t--,e.dyn_ltree[(bP[r]+NP+1)*2]++,e.dyn_dtree[qst(t)*2]++),e.sym_next===e.sym_end),C8r=T8r,x8r=Gst,w8r=I8r,N8r=R8r,O8r=b8r,D8r={_tr_init:C8r,_tr_stored_block:x8r,_tr_flush_block:w8r,_tr_tally:N8r,_tr_align:O8r},P8r=(e,t,r,n)=>{let s=e&65535|0,i=e>>>16&65535|0,a=0;for(;r!==0;){a=r>2e3?2e3:r,r-=a;do s=s+t[n++]|0,i=i+s|0;while(--a);s%=65521,i%=65521}return s|i<<16|0},RP=P8r,L8r=()=>{let e,t=[];for(var r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=e&1?3988292384^e>>>1:e>>>1;t[r]=e}return t},M8r=new Uint32Array(L8r()),k8r=(e,t,r,n)=>{let s=M8r,i=n+r;e^=-1;for(let a=n;a>>8^s[(e^t[a])&255];return e^-1},Ha=k8r,mS={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},AS={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:B8r,_tr_stored_block:Wde,_tr_flush_block:U8r,_tr_tally:XA,_tr_align:F8r}=D8r,{Z_NO_FLUSH:JA,Z_PARTIAL_FLUSH:$8r,Z_FULL_FLUSH:q8r,Z_FINISH:Ld,Z_BLOCK:Znt,Z_OK:vo,Z_STREAM_END:est,Z_STREAM_ERROR:Lh,Z_DATA_ERROR:H8r,Z_BUF_ERROR:Ude,Z_DEFAULT_COMPRESSION:V8r,Z_FILTERED:j8r,Z_HUFFMAN_ONLY:T9,Z_RLE:K8r,Z_FIXED:G8r,Z_DEFAULT_STRATEGY:z8r,Z_UNKNOWN:Y8r,Z_DEFLATED:D9}=AS,Q8r=9,W8r=15,X8r=8,J8r=29,Z8r=256,Xde=Z8r+1+J8r,e$r=30,t$r=19,r$r=2*Xde+1,n$r=15,ln=3,WA=258,Mh=WA+ln+1,s$r=32,RR=42,ofe=57,Jde=69,Zde=73,efe=91,tfe=103,hS=113,_P=666,Kc=1,wR=2,gS=3,NR=4,i$r=3,pS=(e,t)=>(e.msg=mS[t],t),tst=e=>e*2-(e>4?9:0),QA=e=>{let t=e.length;for(;--t>=0;)e[t]=0},a$r=e=>{let t,r,n,s=e.w_size;t=e.hash_size,n=t;do r=e.head[--n],e.head[n]=r>=s?r-s:0;while(--t);t=s,n=t;do r=e.prev[--n],e.prev[n]=r>=s?r-s:0;while(--t)},o$r=(e,t,r)=>(t<{let t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+r),e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,t.pending===0&&(t.pending_out=0))},Ol=(e,t)=>{U8r(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Nl(e.strm)},Kn=(e,t)=>{e.pending_buf[e.pending++]=t},gP=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255},rfe=(e,t,r,n)=>{let s=e.avail_in;return s>n&&(s=n),s===0?0:(e.avail_in-=s,t.set(e.input.subarray(e.next_in,e.next_in+s),r),e.state.wrap===1?e.adler=RP(e.adler,t,s,r):e.state.wrap===2&&(e.adler=Ha(e.adler,t,s,r)),e.next_in+=s,e.total_in+=s,s)},zst=(e,t)=>{let r=e.max_chain_length,n=e.strstart,s,i,a=e.prev_length,o=e.nice_match,c=e.strstart>e.w_size-Mh?e.strstart-(e.w_size-Mh):0,u=e.window,l=e.w_mask,d=e.prev,f=e.strstart+WA,h=u[n+a-1],p=u[n+a];e.prev_length>=e.good_match&&(r>>=2),o>e.lookahead&&(o=e.lookahead);do if(s=t,!(u[s+a]!==p||u[s+a-1]!==h||u[s]!==u[n]||u[++s]!==u[n+1])){n+=2,s++;do;while(u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&u[++n]===u[++s]&&na){if(e.match_start=t,a=i,i>=o)break;h=u[n+a-1],p=u[n+a]}}while((t=d[t&l])>c&&--r!==0);return a<=e.lookahead?a:e.lookahead},CR=e=>{let t=e.w_size,r,n,s;do{if(n=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-Mh)&&(e.window.set(e.window.subarray(t,t+t-n),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),a$r(e),n+=t),e.strm.avail_in===0)break;if(r=rfe(e.strm,e.window,e.strstart+e.lookahead,n),e.lookahead+=r,e.lookahead+e.insert>=ln)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=ZA(e,e.ins_h,e.window[s+1]);e.insert&&(e.ins_h=ZA(e,e.ins_h,e.window[s+ln-1]),e.prev[s&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=s,s++,e.insert--,!(e.lookahead+e.insert{let r=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,n,s,i,a=0,o=e.strm.avail_in;do{if(n=65535,i=e.bi_valid+42>>3,e.strm.avail_outs+e.strm.avail_in&&(n=s+e.strm.avail_in),n>i&&(n=i),n>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,Nl(e.strm),s&&(s>n&&(s=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+s),e.strm.next_out),e.strm.next_out+=s,e.strm.avail_out-=s,e.strm.total_out+=s,e.block_start+=s,n-=s),n&&(rfe(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(a===0);return o-=e.strm.avail_in,o&&(o>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=o&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-o,e.strm.next_in),e.strstart),e.strstart+=o,e.insert+=o>e.w_size-e.insert?e.w_size-e.insert:o),e.block_start=e.strstart),e.high_wateri&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(rfe(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,r=i>e.w_size?e.w_size:i,s=e.strstart-e.block_start,(s>=r||(s||t===Ld)&&t!==JA&&e.strm.avail_in===0&&s<=i)&&(n=s>i?i:s,a=t===Ld&&e.strm.avail_in===0&&n===s?1:0,Wde(e,e.block_start,n,a),e.block_start+=n,Nl(e.strm)),a?gS:Kc)},Fde=(e,t)=>{let r,n;for(;;){if(e.lookahead=ln&&(e.ins_h=ZA(e,e.ins_h,e.window[e.strstart+ln-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-Mh&&(e.match_length=zst(e,r)),e.match_length>=ln)if(n=XA(e,e.strstart-e.match_start,e.match_length-ln),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=ln){e.match_length--;do e.strstart++,e.ins_h=ZA(e,e.ins_h,e.window[e.strstart+ln-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=ZA(e,e.ins_h,e.window[e.strstart+1]);else n=XA(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(Ol(e,!1),e.strm.avail_out===0))return Kc}return e.insert=e.strstart{let r,n,s;for(;;){if(e.lookahead=ln&&(e.ins_h=ZA(e,e.ins_h,e.window[e.strstart+ln-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=ln-1,r!==0&&e.prev_length4096)&&(e.match_length=ln-1)),e.prev_length>=ln&&e.match_length<=e.prev_length){s=e.strstart+e.lookahead-ln,n=XA(e,e.strstart-1-e.prev_match,e.prev_length-ln),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=s&&(e.ins_h=ZA(e,e.ins_h,e.window[e.strstart+ln-1]),r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=ln-1,e.strstart++,n&&(Ol(e,!1),e.strm.avail_out===0))return Kc}else if(e.match_available){if(n=XA(e,0,e.window[e.strstart-1]),n&&Ol(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return Kc}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=XA(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart{let r,n,s,i,a=e.window;for(;;){if(e.lookahead<=WA){if(CR(e),e.lookahead<=WA&&t===JA)return Kc;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=ln&&e.strstart>0&&(s=e.strstart-1,n=a[s],n===a[++s]&&n===a[++s]&&n===a[++s])){i=e.strstart+WA;do;while(n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&n===a[++s]&&se.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=ln?(r=XA(e,1,e.match_length-ln),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=XA(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(Ol(e,!1),e.strm.avail_out===0))return Kc}return e.insert=0,t===Ld?(Ol(e,!0),e.strm.avail_out===0?gS:NR):e.sym_next&&(Ol(e,!1),e.strm.avail_out===0)?Kc:wR},u$r=(e,t)=>{let r;for(;;){if(e.lookahead===0&&(CR(e),e.lookahead===0)){if(t===JA)return Kc;break}if(e.match_length=0,r=XA(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(Ol(e,!1),e.strm.avail_out===0))return Kc}return e.insert=0,t===Ld?(Ol(e,!0),e.strm.avail_out===0?gS:NR):e.sym_next&&(Ol(e,!1),e.strm.avail_out===0)?Kc:wR};AP=[new Dh(0,0,0,0,Yst),new Dh(4,4,8,4,Fde),new Dh(4,5,16,8,Fde),new Dh(4,6,32,32,Fde),new Dh(4,4,16,16,TR),new Dh(8,16,32,32,TR),new Dh(8,16,128,128,TR),new Dh(8,32,128,256,TR),new Dh(32,128,258,1024,TR),new Dh(32,258,258,4096,TR)],l$r=e=>{e.window_size=2*e.w_size,QA(e.head),e.max_lazy_match=AP[e.level].max_lazy,e.good_match=AP[e.level].good_length,e.nice_match=AP[e.level].nice_length,e.max_chain_length=AP[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=ln-1,e.match_available=0,e.ins_h=0};OP=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.status!==RR&&t.status!==ofe&&t.status!==Jde&&t.status!==Zde&&t.status!==efe&&t.status!==tfe&&t.status!==hS&&t.status!==_P?1:0},Qst=e=>{if(OP(e))return pS(e,Lh);e.total_in=e.total_out=0,e.data_type=Y8r;let t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?ofe:t.wrap?RR:hS,e.adler=t.wrap===2?0:1,t.last_flush=-2,B8r(t),vo},Wst=e=>{let t=Qst(e);return t===vo&&l$r(e.state),t},f$r=(e,t)=>OP(e)||e.state.wrap!==2?Lh:(e.state.gzhead=t,vo),Xst=(e,t,r,n,s,i)=>{if(!e)return Lh;let a=1;if(t===V8r&&(t=6),n<0?(a=0,n=-n):n>15&&(a=2,n-=16),s<1||s>Q8r||r!==D9||n<8||n>15||t<0||t>9||i<0||i>G8r||n===8&&a!==1)return pS(e,Lh);n===8&&(n=9);let o=new d$r;return e.state=o,o.strm=e,o.status=RR,o.wrap=a,o.gzhead=null,o.w_bits=n,o.w_size=1<Xst(e,t,D9,W8r,X8r,z8r),p$r=(e,t)=>{if(OP(e)||t>Znt||t<0)return e?pS(e,Lh):Lh;let r=e.state;if(!e.output||e.avail_in!==0&&!e.input||r.status===_P&&t!==Ld)return pS(e,e.avail_out===0?Ude:Lh);let n=r.last_flush;if(r.last_flush=t,r.pending!==0){if(Nl(e),e.avail_out===0)return r.last_flush=-1,vo}else if(e.avail_in===0&&tst(t)<=tst(n)&&t!==Ld)return pS(e,Ude);if(r.status===_P&&e.avail_in!==0)return pS(e,Ude);if(r.status===RR&&r.wrap===0&&(r.status=hS),r.status===RR){let s=D9+(r.w_bits-8<<4)<<8,i=-1;if(r.strategy>=T9||r.level<2?i=0:r.level<6?i=1:r.level===6?i=2:i=3,s|=i<<6,r.strstart!==0&&(s|=s$r),s+=31-s%31,gP(r,s),r.strstart!==0&&(gP(r,e.adler>>>16),gP(r,e.adler&65535)),e.adler=1,r.status=hS,Nl(e),r.pending!==0)return r.last_flush=-1,vo}if(r.status===ofe){if(e.adler=0,Kn(r,31),Kn(r,139),Kn(r,8),r.gzhead)Kn(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),Kn(r,r.gzhead.time&255),Kn(r,r.gzhead.time>>8&255),Kn(r,r.gzhead.time>>16&255),Kn(r,r.gzhead.time>>24&255),Kn(r,r.level===9?2:r.strategy>=T9||r.level<2?4:0),Kn(r,r.gzhead.os&255),r.gzhead.extra&&r.gzhead.extra.length&&(Kn(r,r.gzhead.extra.length&255),Kn(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=Ha(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=Jde;else if(Kn(r,0),Kn(r,0),Kn(r,0),Kn(r,0),Kn(r,0),Kn(r,r.level===9?2:r.strategy>=T9||r.level<2?4:0),Kn(r,i$r),r.status=hS,Nl(e),r.pending!==0)return r.last_flush=-1,vo}if(r.status===Jde){if(r.gzhead.extra){let s=r.pending,i=(r.gzhead.extra.length&65535)-r.gzindex;for(;r.pending+i>r.pending_buf_size;){let o=r.pending_buf_size-r.pending;if(r.pending_buf.set(r.gzhead.extra.subarray(r.gzindex,r.gzindex+o),r.pending),r.pending=r.pending_buf_size,r.gzhead.hcrc&&r.pending>s&&(e.adler=Ha(e.adler,r.pending_buf,r.pending-s,s)),r.gzindex+=o,Nl(e),r.pending!==0)return r.last_flush=-1,vo;s=0,i-=o}let a=new Uint8Array(r.gzhead.extra);r.pending_buf.set(a.subarray(r.gzindex,r.gzindex+i),r.pending),r.pending+=i,r.gzhead.hcrc&&r.pending>s&&(e.adler=Ha(e.adler,r.pending_buf,r.pending-s,s)),r.gzindex=0}r.status=Zde}if(r.status===Zde){if(r.gzhead.name){let s=r.pending,i;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>s&&(e.adler=Ha(e.adler,r.pending_buf,r.pending-s,s)),Nl(e),r.pending!==0)return r.last_flush=-1,vo;s=0}r.gzindexs&&(e.adler=Ha(e.adler,r.pending_buf,r.pending-s,s)),r.gzindex=0}r.status=efe}if(r.status===efe){if(r.gzhead.comment){let s=r.pending,i;do{if(r.pending===r.pending_buf_size){if(r.gzhead.hcrc&&r.pending>s&&(e.adler=Ha(e.adler,r.pending_buf,r.pending-s,s)),Nl(e),r.pending!==0)return r.last_flush=-1,vo;s=0}r.gzindexs&&(e.adler=Ha(e.adler,r.pending_buf,r.pending-s,s))}r.status=tfe}if(r.status===tfe){if(r.gzhead.hcrc){if(r.pending+2>r.pending_buf_size&&(Nl(e),r.pending!==0))return r.last_flush=-1,vo;Kn(r,e.adler&255),Kn(r,e.adler>>8&255),e.adler=0}if(r.status=hS,Nl(e),r.pending!==0)return r.last_flush=-1,vo}if(e.avail_in!==0||r.lookahead!==0||t!==JA&&r.status!==_P){let s=r.level===0?Yst(r,t):r.strategy===T9?u$r(r,t):r.strategy===K8r?c$r(r,t):AP[r.level].func(r,t);if((s===gS||s===NR)&&(r.status=_P),s===Kc||s===gS)return e.avail_out===0&&(r.last_flush=-1),vo;if(s===wR&&(t===$8r?F8r(r):t!==Znt&&(Wde(r,0,0,!1),t===q8r&&(QA(r.head),r.lookahead===0&&(r.strstart=0,r.block_start=0,r.insert=0))),Nl(e),e.avail_out===0))return r.last_flush=-1,vo}return t!==Ld?vo:r.wrap<=0?est:(r.wrap===2?(Kn(r,e.adler&255),Kn(r,e.adler>>8&255),Kn(r,e.adler>>16&255),Kn(r,e.adler>>24&255),Kn(r,e.total_in&255),Kn(r,e.total_in>>8&255),Kn(r,e.total_in>>16&255),Kn(r,e.total_in>>24&255)):(gP(r,e.adler>>>16),gP(r,e.adler&65535)),Nl(e),r.wrap>0&&(r.wrap=-r.wrap),r.pending!==0?vo:est)},m$r=e=>{if(OP(e))return Lh;let t=e.state.status;return e.state=null,t===hS?pS(e,H8r):vo},g$r=(e,t)=>{let r=t.length;if(OP(e))return Lh;let n=e.state,s=n.wrap;if(s===2||s===1&&n.status!==RR||n.lookahead)return Lh;if(s===1&&(e.adler=RP(e.adler,t,r,0)),n.wrap=0,r>=n.w_size){s===0&&(QA(n.head),n.strstart=0,n.block_start=0,n.insert=0);let c=new Uint8Array(n.w_size);c.set(t.subarray(r-n.w_size,r),0),t=c,r=n.w_size}let i=e.avail_in,a=e.next_in,o=e.input;for(e.avail_in=r,e.next_in=0,e.input=t,CR(n);n.lookahead>=ln;){let c=n.strstart,u=n.lookahead-(ln-1);do n.ins_h=ZA(n,n.ins_h,n.window[c+ln-1]),n.prev[c&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=c,c++;while(--u);n.strstart=c,n.lookahead=ln-1,CR(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=ln-1,n.match_available=0,e.next_in=a,e.input=o,e.avail_in=i,n.wrap=s,vo},_$r=h$r,A$r=Xst,E$r=Wst,y$r=Qst,v$r=f$r,S$r=p$r,T$r=m$r,b$r=g$r,I$r="pako deflate (from Nodeca project)",yP={deflateInit:_$r,deflateInit2:A$r,deflateReset:E$r,deflateResetKeep:y$r,deflateSetHeader:v$r,deflate:S$r,deflateEnd:T$r,deflateSetDictionary:b$r,deflateInfo:I$r},R$r=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),C$r=function(e){let t=Array.prototype.slice.call(arguments,1);for(;t.length;){let r=t.shift();if(r){if(typeof r!="object")throw new TypeError(r+"must be non-object");for(let n in r)R$r(r,n)&&(e[n]=r[n])}}return e},x$r=e=>{let t=0;for(let n=0,s=e.length;n=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;CP[254]=CP[254]=1;w$r=e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,r,n,s,i,a=e.length,o=0;for(s=0;s>>6,t[i++]=128|r&63):r<65536?(t[i++]=224|r>>>12,t[i++]=128|r>>>6&63,t[i++]=128|r&63):(t[i++]=240|r>>>18,t[i++]=128|r>>>12&63,t[i++]=128|r>>>6&63,t[i++]=128|r&63);return t},N$r=(e,t)=>{if(t<65534&&e.subarray&&Jst)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let r="";for(let n=0;n{let r=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let n,s,i=new Array(r*2);for(s=0,n=0;n4){i[s++]=65533,n+=o-1;continue}for(a&=o===2?31:o===3?15:7;o>1&&n1){i[s++]=65533;continue}a<65536?i[s++]=a:(a-=65536,i[s++]=55296|a>>10&1023,i[s++]=56320|a&1023)}return N$r(i,s)},D$r=(e,t)=>{t=t||e.length,t>e.length&&(t=e.length);let r=t-1;for(;r>=0&&(e[r]&192)===128;)r--;return r<0||r===0?t:r+CP[e[r]]>t?r:t},xP={string2buf:w$r,buf2string:O$r,utf8border:D$r};Zst=P$r,eit=Object.prototype.toString,{Z_NO_FLUSH:L$r,Z_SYNC_FLUSH:M$r,Z_FULL_FLUSH:k$r,Z_FINISH:B$r,Z_OK:N9,Z_STREAM_END:U$r,Z_DEFAULT_COMPRESSION:F$r,Z_DEFAULT_STRATEGY:$$r,Z_DEFLATED:q$r}=AS;DP.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,s,i;if(this.ended)return!1;for(t===~~t?i=t:i=t===!0?B$r:L$r,typeof e=="string"?r.input=xP.string2buf(e):eit.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){if(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),(i===M$r||i===k$r)&&r.avail_out<=6){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(s=yP.deflate(r,i),s===U$r)return r.next_out>0&&this.onData(r.output.subarray(0,r.next_out)),s=yP.deflateEnd(this.strm),this.onEnd(s),this.ended=!0,s===N9;if(r.avail_out===0){this.onData(r.output);continue}if(i>0&&r.next_out>0){this.onData(r.output.subarray(0,r.next_out)),r.avail_out=0;continue}if(r.avail_in===0)break}return!0};DP.prototype.onData=function(e){this.chunks.push(e)};DP.prototype.onEnd=function(e){e===N9&&(this.result=P9.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};j$r=DP,K$r=cfe,G$r=H$r,z$r=V$r,Y$r=AS,Q$r={Deflate:j$r,deflate:K$r,deflateRaw:G$r,gzip:z$r,constants:Y$r},b9=16209,W$r=16191,X$r=function(t,r){let n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y,A,E,v,b,I,T,x,w,D=t.state;n=t.next_in,x=t.input,s=n+(t.avail_in-5),i=t.next_out,w=t.output,a=i-(r-t.avail_out),o=i+(t.avail_out-257),c=D.dmax,u=D.wsize,l=D.whave,d=D.wnext,f=D.window,h=D.hold,p=D.bits,m=D.lencode,g=D.distcode,_=(1<>>24,h>>>=E,p-=E,E=A>>>16&255,E===0)w[i++]=A&65535;else if(E&16){v=A&65535,E&=15,E&&(p>>=E,p-=E),p<15&&(h+=x[n++]<>>24,h>>>=E,p-=E,E=A>>>16&255,E&16){if(b=A&65535,E&=15,pc){t.msg="invalid distance too far back",D.mode=b9;break e}if(h>>>=E,p-=E,E=i-a,b>E){if(E=b-E,E>l&&D.sane){t.msg="invalid distance too far back",D.mode=b9;break e}if(I=0,T=f,d===0){if(I+=u-E,E2;)w[i++]=T[I++],w[i++]=T[I++],w[i++]=T[I++],v-=3;v&&(w[i++]=T[I++],v>1&&(w[i++]=T[I++]))}else{I=i-b;do w[i++]=w[I++],w[i++]=w[I++],w[i++]=w[I++],v-=3;while(v>2);v&&(w[i++]=w[I++],v>1&&(w[i++]=w[I++]))}}else if(E&64){t.msg="invalid distance code",D.mode=b9;break e}else{A=g[(A&65535)+(h&(1<>3,n-=v,p-=v<<3,h&=(1<{let c=o.bits,u=0,l=0,d=0,f=0,h=0,p=0,m=0,g=0,_=0,y=0,A,E,v,b,I,T=null,x,w=new Uint16Array(bR+1),D=new Uint16Array(bR+1),M=null,L,U,G;for(u=0;u<=bR;u++)w[u]=0;for(l=0;l=1&&w[f]===0;f--);if(h>f&&(h=f),f===0)return s[i++]=1<<24|64<<16|0,s[i++]=1<<24|64<<16|0,o.bits=1,0;for(d=1;d0&&(e===sst||f!==1))return-1;for(D[1]=0,u=1;urst||e===ist&&_>nst)return 1;for(;;){L=u-m,a[l]+1=x?(U=M[a[l]-x],G=T[a[l]-x]):(U=96,G=0),A=1<>m)+E]=L<<24|U<<16|G|0;while(E!==0);for(A=1<>=1;if(A!==0?(y&=A-1,y+=A):y=0,l++,--w[u]===0){if(u===f)break;u=t[r+a[l]]}if(u>h&&(y&b)!==v){for(m===0&&(m=h),I+=d,p=u-m,g=1<rst||e===ist&&_>nst)return 1;v=y&b,s[v]=h<<24|p<<16|I-i|0}}return y!==0&&(s[I+y]=u-m<<24|64<<16|0),o.bits=h,0},vP=r9r,n9r=0,tit=1,rit=2,{Z_FINISH:ast,Z_BLOCK:s9r,Z_TREES:I9,Z_OK:_S,Z_STREAM_END:i9r,Z_NEED_DICT:a9r,Z_STREAM_ERROR:Md,Z_DATA_ERROR:nit,Z_MEM_ERROR:sit,Z_BUF_ERROR:o9r,Z_DEFLATED:ost}=AS,L9=16180,cst=16181,ust=16182,lst=16183,dst=16184,fst=16185,hst=16186,pst=16187,mst=16188,gst=16189,O9=16190,Bm=16191,qde=16192,_st=16193,Hde=16194,Ast=16195,Est=16196,yst=16197,vst=16198,R9=16199,C9=16200,Sst=16201,Tst=16202,bst=16203,Ist=16204,Rst=16205,Vde=16206,Cst=16207,xst=16208,ai=16209,iit=16210,ait=16211,c9r=852,u9r=592,l9r=15,d9r=l9r,wst=e=>(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24);ES=e=>{if(!e)return 1;let t=e.state;return!t||t.strm!==e||t.modeait?1:0},oit=e=>{if(ES(e))return Md;let t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=t.wrap&1),t.mode=L9,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(c9r),t.distcode=t.distdyn=new Int32Array(u9r),t.sane=1,t.back=-1,_S},cit=e=>{if(ES(e))return Md;let t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,oit(e)},uit=(e,t)=>{let r;if(ES(e))return Md;let n=e.state;return t<0?(r=0,t=-t):(r=(t>>4)+5,t<48&&(t&=15)),t&&(t<8||t>15)?Md:(n.window!==null&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,cit(e))},lit=(e,t)=>{if(!e)return Md;let r=new f9r;e.state=r,r.strm=e,r.window=null,r.mode=L9;let n=uit(e,t);return n!==_S&&(e.state=null),n},h9r=e=>lit(e,d9r),Nst=!0,p9r=e=>{if(Nst){jde=new Int32Array(512),Kde=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(vP(tit,e.lens,0,288,jde,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;vP(rit,e.lens,0,32,Kde,0,e.work,{bits:5}),Nst=!1}e.lencode=jde,e.lenbits=9,e.distcode=Kde,e.distbits=5},dit=(e,t,r,n)=>{let s,i=e.state;return i.window===null&&(i.wsize=1<=i.wsize?(i.window.set(t.subarray(r-i.wsize,r),0),i.wnext=0,i.whave=i.wsize):(s=i.wsize-i.wnext,s>n&&(s=n),i.window.set(t.subarray(r-n,r-n+s),i.wnext),n-=s,n?(i.window.set(t.subarray(r-n,r),0),i.wnext=n,i.whave=i.wsize):(i.wnext+=s,i.wnext===i.wsize&&(i.wnext=0),i.whave{let r,n,s,i,a,o,c,u,l,d,f,h,p,m,g=0,_,y,A,E,v,b,I,T,x=new Uint8Array(4),w,D,M=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(ES(e)||!e.output||!e.input&&e.avail_in!==0)return Md;r=e.state,r.mode===Bm&&(r.mode=qde),a=e.next_out,s=e.output,c=e.avail_out,i=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,d=o,f=c,T=_S;e:for(;;)switch(r.mode){case L9:if(r.wrap===0){r.mode=qde;break}for(;l<16;){if(o===0)break e;o--,u+=n[i++]<>>8&255,r.check=Ha(r.check,x,2,0),u=0,l=0,r.mode=cst;break}if(r.head&&(r.head.done=!1),!(r.wrap&1)||(((u&255)<<8)+(u>>8))%31){e.msg="incorrect header check",r.mode=ai;break}if((u&15)!==ost){e.msg="unknown compression method",r.mode=ai;break}if(u>>>=4,l-=4,I=(u&15)+8,r.wbits===0&&(r.wbits=I),I>15||I>r.wbits){e.msg="invalid window size",r.mode=ai;break}r.dmax=1<>8&1),r.flags&512&&r.wrap&4&&(x[0]=u&255,x[1]=u>>>8&255,r.check=Ha(r.check,x,2,0)),u=0,l=0,r.mode=ust;case ust:for(;l<32;){if(o===0)break e;o--,u+=n[i++]<>>8&255,x[2]=u>>>16&255,x[3]=u>>>24&255,r.check=Ha(r.check,x,4,0)),u=0,l=0,r.mode=lst;case lst:for(;l<16;){if(o===0)break e;o--,u+=n[i++]<>8),r.flags&512&&r.wrap&4&&(x[0]=u&255,x[1]=u>>>8&255,r.check=Ha(r.check,x,2,0)),u=0,l=0,r.mode=dst;case dst:if(r.flags&1024){for(;l<16;){if(o===0)break e;o--,u+=n[i++]<>>8&255,r.check=Ha(r.check,x,2,0)),u=0,l=0}else r.head&&(r.head.extra=null);r.mode=fst;case fst:if(r.flags&1024&&(h=r.length,h>o&&(h=o),h&&(r.head&&(I=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(n.subarray(i,i+h),I)),r.flags&512&&r.wrap&4&&(r.check=Ha(r.check,n,h,i)),o-=h,i+=h,r.length-=h),r.length))break e;r.length=0,r.mode=hst;case hst:if(r.flags&2048){if(o===0)break e;h=0;do I=n[i+h++],r.head&&I&&r.length<65536&&(r.head.name+=String.fromCharCode(I));while(I&&h>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=Bm;break;case gst:for(;l<32;){if(o===0)break e;o--,u+=n[i++]<>>=l&7,l-=l&7,r.mode=Vde;break}for(;l<3;){if(o===0)break e;o--,u+=n[i++]<>>=1,l-=1,u&3){case 0:r.mode=_st;break;case 1:if(p9r(r),r.mode=R9,t===I9){u>>>=2,l-=2;break e}break;case 2:r.mode=Est;break;case 3:e.msg="invalid block type",r.mode=ai}u>>>=2,l-=2;break;case _st:for(u>>>=l&7,l-=l&7;l<32;){if(o===0)break e;o--,u+=n[i++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=ai;break}if(r.length=u&65535,u=0,l=0,r.mode=Hde,t===I9)break e;case Hde:r.mode=Ast;case Ast:if(h=r.length,h){if(h>o&&(h=o),h>c&&(h=c),h===0)break e;s.set(n.subarray(i,i+h),a),o-=h,i+=h,c-=h,a+=h,r.length-=h;break}r.mode=Bm;break;case Est:for(;l<14;){if(o===0)break e;o--,u+=n[i++]<>>=5,l-=5,r.ndist=(u&31)+1,u>>>=5,l-=5,r.ncode=(u&15)+4,u>>>=4,l-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=ai;break}r.have=0,r.mode=yst;case yst:for(;r.have>>=3,l-=3}for(;r.have<19;)r.lens[M[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,w={bits:r.lenbits},T=vP(n9r,r.lens,0,19,r.lencode,0,r.work,w),r.lenbits=w.bits,T){e.msg="invalid code lengths set",r.mode=ai;break}r.have=0,r.mode=vst;case vst:for(;r.have>>24,y=g>>>16&255,A=g&65535,!(_<=l);){if(o===0)break e;o--,u+=n[i++]<>>=_,l-=_,r.lens[r.have++]=A;else{if(A===16){for(D=_+2;l>>=_,l-=_,r.have===0){e.msg="invalid bit length repeat",r.mode=ai;break}I=r.lens[r.have-1],h=3+(u&3),u>>>=2,l-=2}else if(A===17){for(D=_+3;l>>=_,l-=_,I=0,h=3+(u&7),u>>>=3,l-=3}else{for(D=_+7;l>>=_,l-=_,I=0,h=11+(u&127),u>>>=7,l-=7}if(r.have+h>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=ai;break}for(;h--;)r.lens[r.have++]=I}}if(r.mode===ai)break;if(r.lens[256]===0){e.msg="invalid code -- missing end-of-block",r.mode=ai;break}if(r.lenbits=9,w={bits:r.lenbits},T=vP(tit,r.lens,0,r.nlen,r.lencode,0,r.work,w),r.lenbits=w.bits,T){e.msg="invalid literal/lengths set",r.mode=ai;break}if(r.distbits=6,r.distcode=r.distdyn,w={bits:r.distbits},T=vP(rit,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,w),r.distbits=w.bits,T){e.msg="invalid distances set",r.mode=ai;break}if(r.mode=R9,t===I9)break e;case R9:r.mode=C9;case C9:if(o>=6&&c>=258){e.next_out=a,e.avail_out=c,e.next_in=i,e.avail_in=o,r.hold=u,r.bits=l,X$r(e,f),a=e.next_out,s=e.output,c=e.avail_out,i=e.next_in,n=e.input,o=e.avail_in,u=r.hold,l=r.bits,r.mode===Bm&&(r.back=-1);break}for(r.back=0;g=r.lencode[u&(1<>>24,y=g>>>16&255,A=g&65535,!(_<=l);){if(o===0)break e;o--,u+=n[i++]<>E)],_=g>>>24,y=g>>>16&255,A=g&65535,!(E+_<=l);){if(o===0)break e;o--,u+=n[i++]<>>=E,l-=E,r.back+=E}if(u>>>=_,l-=_,r.back+=_,r.length=A,y===0){r.mode=Rst;break}if(y&32){r.back=-1,r.mode=Bm;break}if(y&64){e.msg="invalid literal/length code",r.mode=ai;break}r.extra=y&15,r.mode=Sst;case Sst:if(r.extra){for(D=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=Tst;case Tst:for(;g=r.distcode[u&(1<>>24,y=g>>>16&255,A=g&65535,!(_<=l);){if(o===0)break e;o--,u+=n[i++]<>E)],_=g>>>24,y=g>>>16&255,A=g&65535,!(E+_<=l);){if(o===0)break e;o--,u+=n[i++]<>>=E,l-=E,r.back+=E}if(u>>>=_,l-=_,r.back+=_,y&64){e.msg="invalid distance code",r.mode=ai;break}r.offset=A,r.extra=y&15,r.mode=bst;case bst:if(r.extra){for(D=r.extra;l>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=ai;break}r.mode=Ist;case Ist:if(c===0)break e;if(h=f-c,r.offset>h){if(h=r.offset-h,h>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=ai;break}h>r.wnext?(h-=r.wnext,p=r.wsize-h):p=r.wnext-h,h>r.length&&(h=r.length),m=r.window}else m=s,p=a-r.offset,h=r.length;h>c&&(h=c),c-=h,r.length-=h;do s[a++]=m[p++];while(--h);r.length===0&&(r.mode=C9);break;case Rst:if(c===0)break e;s[a++]=r.length,c--,r.mode=C9;break;case Vde:if(r.wrap){for(;l<32;){if(o===0)break e;o--,u|=n[i++]<{if(ES(e))return Md;let t=e.state;return t.window&&(t.window=null),e.state=null,_S},_9r=(e,t)=>{if(ES(e))return Md;let r=e.state;return r.wrap&2?(r.head=t,t.done=!1,_S):Md},A9r=(e,t)=>{let r=t.length,n,s,i;return ES(e)||(n=e.state,n.wrap!==0&&n.mode!==O9)?Md:n.mode===O9&&(s=1,s=RP(s,t,r,0),s!==n.check)?nit:(i=dit(e,t,r,r),i?(n.mode=iit,sit):(n.havedict=1,_S))},E9r=cit,y9r=uit,v9r=oit,S9r=h9r,T9r=lit,b9r=m9r,I9r=g9r,R9r=_9r,C9r=A9r,x9r="pako inflate (from Nodeca project)",Fm={inflateReset:E9r,inflateReset2:y9r,inflateResetKeep:v9r,inflateInit:S9r,inflateInit2:T9r,inflate:b9r,inflateEnd:I9r,inflateGetHeader:R9r,inflateSetDictionary:C9r,inflateInfo:x9r};N9r=w9r,fit=Object.prototype.toString,{Z_NO_FLUSH:O9r,Z_FINISH:D9r,Z_OK:wP,Z_STREAM_END:Gde,Z_NEED_DICT:zde,Z_STREAM_ERROR:P9r,Z_DATA_ERROR:Ost,Z_MEM_ERROR:L9r}=AS;PP.prototype.push=function(e,t){let r=this.strm,n=this.options.chunkSize,s=this.options.dictionary,i,a,o;if(this.ended)return!1;for(t===~~t?a=t:a=t===!0?D9r:O9r,fit.call(e)==="[object ArrayBuffer]"?r.input=new Uint8Array(e):r.input=e,r.next_in=0,r.avail_in=r.input.length;;){for(r.avail_out===0&&(r.output=new Uint8Array(n),r.next_out=0,r.avail_out=n),i=Fm.inflate(r,a),i===zde&&s&&(i=Fm.inflateSetDictionary(r,s),i===wP?i=Fm.inflate(r,a):i===Ost&&(i=zde));r.avail_in>0&&i===Gde&&r.state.wrap>0&&e[r.next_in]!==0;)Fm.inflateReset(r),i=Fm.inflate(r,a);switch(i){case P9r:case Ost:case zde:case L9r:return this.onEnd(i),this.ended=!0,!1}if(o=r.avail_out,r.next_out&&(r.avail_out===0||i===Gde))if(this.options.to==="string"){let c=xP.utf8border(r.output,r.next_out),u=r.next_out-c,l=xP.buf2string(r.output,c);r.next_out=u,r.avail_out=n-u,u&&r.output.set(r.output.subarray(c,c+u),0),this.onData(l)}else this.onData(r.output.length===r.next_out?r.output:r.output.subarray(0,r.next_out));if(!(i===wP&&o===0)){if(i===Gde)return i=Fm.inflateEnd(this.strm),this.onEnd(i),this.ended=!0,!0;if(r.avail_in===0)break}}return!0};PP.prototype.onData=function(e){this.chunks.push(e)};PP.prototype.onEnd=function(e){e===wP&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=P9.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};k9r=PP,B9r=ufe,U9r=M9r,F9r=ufe,$9r=AS,q9r={Inflate:k9r,inflate:B9r,inflateRaw:U9r,ungzip:F9r,constants:$9r},{Deflate:H9r,deflate:V9r,deflateRaw:j9r,gzip:K9r}=Q$r,{Inflate:G9r,inflate:z9r,inflateRaw:Y9r,ungzip:Q9r}=q9r,hit=H9r,pit=V9r,mit=j9r,git=K9r,_it=G9r,Ait=z9r,Eit=Y9r,yit=Q9r,vit=AS,W9r={Deflate:hit,deflate:pit,deflateRaw:mit,gzip:git,Inflate:_it,inflate:Ait,inflateRaw:Eit,ungzip:yit,constants:vit}});function Ns(e){return X9r[e]||e}function lfe(e,t){if(!e)return()=>{};if(e.aborted)return t.abort(),()=>{};let r=()=>{t.abort()};return e.addEventListener("abort",r,{once:!0}),()=>{e.removeEventListener("abort",r)}}async function Me(e,t={}){let r=parseInt(t.retries||"0",10)||0,n=Array.isArray(t.validStatusCodes)?t.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=$e.getStore()||"system";a>0?(R("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${e}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):R("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${e}`);let c=parseInt(t.timeout||F.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=lfe(t.signal,u);try{let f;if(typeof WebAssembly>"u"){R("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let _=(await Promise.resolve().then(()=>(SR(),S9))).default;f=await _(e,{method:"GET",headers:{...t.headers},signal:u.signal})}else f=await fetch(e,{method:"GET",headers:{...t.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let h;if(t.base64Data){R("info","[Utils] [HTTP] base64\u6A21\u5F0F");let _=await f.arrayBuffer(),y=new Uint8Array(_),A="",E=32768;for(let v=0;v(Tit(),Sit))).inflate(new Uint8Array(_));y=new TextDecoder("utf-8").decode(E)}catch(A){throw R("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] pako\u89E3\u538B\u7F29\u5931\u8D25`,A),A}}h=y}else h=await f.text();let p;try{p=JSON.parse(h)}catch{p=h}let m={},g=[];for(let[_,y]of f.headers.entries())_.toLowerCase()==="set-cookie"?g.push(y):m[_]=y;return g.length>0&&(m["set-cookie"]=g.join(";")),a>0&&R("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:p,status:f.status,headers:m}}catch(f){clearTimeout(l),s=f;let h=$e.getStore()||"system";if(t.signal?.aborted)throw f;if(f.name==="AbortError"?(R("error",`[${h}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(R("error",`[${h}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),R("error","- \u6D88\u606F:",f.message),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(R("error","- \u7801:",f.cause.code),R("error","- \u539F\u56E0:",f.cause.message))),a0?(R("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${e}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(_=>setTimeout(_,100)):await new Promise(_=>setTimeout(_,Math.min(1e3*Math.pow(2,o-1),5e3)))):R("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${e}`);let u=parseInt(r.timeout||F.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=lfe(r.signal,l),{headers:h={},params:p,allow_redirects:m=!0}=r,g={method:"POST",headers:{...h},body:t,signal:l.signal};m||(g.redirect="manual");try{let _;if(typeof WebAssembly>"u"){R("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let E=(await Promise.resolve().then(()=>(SR(),S9))).default;_=await E(e,g)}else _=await fetch(e,g);clearTimeout(d);let y=await _.text();if(!_.ok&&!s.includes(_.status))throw R("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,y),new Error(`HTTP error! status: ${_.status}`);let A;try{A=JSON.parse(y)}catch{A=y}return o>0&&R("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:A,status:_.status,headers:Object.fromEntries(_.headers.entries())}}catch(_){clearTimeout(d),i=_;let y=$e.getStore()||"system";if(r.signal?.aborted)throw _;if(_.name==="AbortError"?(R("error",`[${y}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,_.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(R("error",`[${y}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,_.message),R("error","\u8BE6\u7EC6\u8BCA\u65AD:"),R("error","- URL:",e),R("error","- \u9519\u8BEF\u7C7B\u578B:",_.name),R("error","- \u6D88\u606F:",_.message),R("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),_.cause&&(R("error","- \u7801:",_.cause.code),R("error","- \u539F\u56E0:",_.cause.message))),o]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").trim():e}catch(t){let r=$e.getStore()||"system";return R("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${t.message}`),e}}function tt(e,t=200){return new Response(JSON.stringify(e),{status:t,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function Rit(e,t=200){if(typeof e!="string"||!e.trim().startsWith("s,n="";for(let s in e)e.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(e[s]));return n}function LP(e={}){let t={};for(let[s,i]of Object.entries(e))typeof i=="boolean"?t[s]=i?"true":"false":i==null?t[s]="":t[s]=String(i);let r=[];for(let s in t)Object.prototype.hasOwnProperty.call(t,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(t[s]);n.push(`${i}=${a}`)}return n.join("&")}function DR(e,t){let r=e,n="",s=e.indexOf("#"),i="";s!==-1&&(r=e.substring(0,s),i=e.substring(s));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let u=n.split("&");for(let l of u)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let u in t)Object.prototype.hasOwnProperty.call(t,u)&&(o[u]=t[u]);let c=[];for(let u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(`${encodeURIComponent(u)}=${encodeURIComponent(o[u])}`);return r+(c.length?"?"+c.join("&"):"")+i}function Cit(e){let t=e.indexOf("//")+2;t===1&&(t=0);let r=e.indexOf("/",t);if(r===-1)return"/";let n=e.indexOf("?",r),s=e.indexOf("#",r),i=n!==-1?n:s!==-1?s:e.length;return e.substring(r,i)||"/"}async function hfe(e,t={},r){let{headers:n={},sniffLimit:s}=t,i=parseInt(s||"32768",10)||32768,a=parseInt(t.timeout||F.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=lfe(t.signal,o);try{let l=$e.getStore()||"system";R("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${e}`);let d=await fetch(e,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let v=$e.getStore()||"system";R("warn",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let b=await d.text();if(clearTimeout(c),r&&!r(b.slice(0,i)))return R("info",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(b)}catch{return b}}let h=0,p=[],m=!1,g="",_=!1;for(;;){let{done:v,value:b}=await f.read();if(v)break;if(h+=b.length,!_&&r){let I=new TextDecoder("utf-8").decode(b,{stream:!0});if(g+=I,!r(g)){let T=$e.getStore()||"system";R("info",`[${T}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${h}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),m=!0;break}h>i&&(_=!0,g=null)}p.push(b)}if(clearTimeout(c),m)return null;let y=new Uint8Array(h),A=0;for(let v of p)y.set(v,A),A+=v.length;let E=new TextDecoder("utf-8").decode(y);try{return JSON.parse(E)}catch{return E}}catch(l){let d=$e.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||R("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var bit,$e,X9r,Hr=ie(()=>{Wt();Kt();bit=require("node:async_hooks"),$e=new bit.AsyncLocalStorage,X9r={360:"360kan",imgo:"mango"}});function hs(e){let t=0;for(let r=0;r>>0}return t.toString(16)}function PR(e,t){return e==="lastSelectMap"&&t instanceof Map?JSON.stringify(Object.fromEntries(t)):JSON.stringify(t)}function Ci(e){function t(A){let E="";for(let v=0;v>6),E+=String.fromCharCode(128|b&63)):(E+=String.fromCharCode(224|b>>12),E+=String.fromCharCode(128|b>>6&63),E+=String.fromCharCode(128|b&63))}return E}e=t(e);function r(A,E){return A<>>32-E}function n(A,E){let v=A&1073741824,b=E&1073741824,I=A&2147483648,T=E&2147483648,x=(A&1073741823)+(E&1073741823);return v&b?x^2147483648^I^T:v|b?x&1073741824?x^3221225472^I^T:x^1073741824^I^T:x^I^T}function s(A,E,v){return A&E|~A&v}function i(A,E,v){return A&v|E&~v}function a(A,E,v){return A^E^v}function o(A,E,v){return E^(A|~v)}function c(A,E,v,b,I,T,x){return A=n(A,n(n(s(E,v,b),I),x)),n(r(A,T),E)}function u(A,E,v,b,I,T,x){return A=n(A,n(n(i(E,v,b),I),x)),n(r(A,T),E)}function l(A,E,v,b,I,T,x){return A=n(A,n(n(a(E,v,b),I),x)),n(r(A,T),E)}function d(A,E,v,b,I,T,x){return A=n(A,n(n(o(E,v,b),I),x)),n(r(A,T),E)}function f(A){let E=A.length,v=((E+8>>>6)+1)*16,b=new Array(v).fill(0);for(let I=0;I>2]|=A.charCodeAt(I)<>2]|=128<>>v*8&255).toString(16);E+=I.substr(I.length-2,2)}return E}let p=f(e),m=1732584193,g=4023233417,_=2562383102,y=271733878;for(let A=0;A>3,d=u&7;if(d===0){let[f,h]=gfe(i,o);switch(o=h,l){case 1:c.id=f;break;case 2:c.progress=f;break;case 3:c.mode=f;break;case 4:c.fontsize=f;break;case 5:c.color=f;break;case 8:c.ctime=f;break;case 9:c.weight=f;break;case 11:c.pool=f;break;case 13:c.attr=f;break;case 15:c.like_num=f;break;case 17:c.dm_type_v2=f;break}}else if(d===2){let[f,h]=xit(i,o);switch(o=h,l){case 6:c.midHash=kd(f);break;case 7:c.content=kd(f);break;case 10:c.action=kd(f);break;case 12:c.idStr=kd(f);break;case 14:c.animation=kd(f);break;case 16:c.color_v2=kd(f);break}}else{let[f,h]=gfe(i,o);o=h}}r.push(c)}return r}function gfe(e,t){let r=0n,n=0n,s=t;for(;;){let i=e[s++];if(r|=BigInt(i&127)<>>0)%9999999,t<1e4?t+1e4:t}function wit(e,t){let r=new Uint8Array(e.length);for(let n=0;nDit[t]))}function B9(e){let s=new Array(44);for(let i=0;i<4;i++)s[i]=e.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=wit(k9(Z9r(a)),Uint8Array.from([J9r[i/4],0,0,0]))),s[i]=wit(s[i-4],a)}return s}function eqr(e,t){let s=new Uint8Array(e);s=pfe(s,t.slice(10*4,11*4));for(let i=9;i>=1;i--)s=kP(s),s=MP(s),s=pfe(s,t.slice(i*4,(i+1)*4)),s=tqr(s);return s=kP(s),s=MP(s),s=pfe(s,t.slice(0,4)),s}function pfe(e,t){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=e[s+4*n]^t[n][s];return r}function MP(e){let t=new Array(256);for(let r=0;r<256;r++)t[Dit[r]]=r;return Uint8Array.from(e.map(r=>t[r]))}function kP(e){let t=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)t[r+4*n]=e[r+4*((n-r+4)%4)];return t}function tqr(e){function t(n,s){let i=0;for(let a=0;a<8;a++){s&1&&(i^=n);let o=n&128;n=n<<1&255,o&&(n^=27),s>>=1}return i}let r=new Uint8Array(16);for(let n=0;n<4;n++){let s=e.slice(4*n,4*n+4);r[4*n+0]=t(s[0],14)^t(s[1],11)^t(s[2],13)^t(s[3],9),r[4*n+1]=t(s[0],9)^t(s[1],14)^t(s[2],11)^t(s[3],13),r[4*n+2]=t(s[0],13)^t(s[1],9)^t(s[2],14)^t(s[3],11),r[4*n+3]=t(s[0],11)^t(s[1],13)^t(s[2],9)^t(s[3],14)}return r}function rqr(e,t){let r=B9(t),n=16,s=new Uint8Array(e.length);for(let i=0;i=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function kd(e){let t="",r=0;for(;r=192&&n<224){let s=e[r++];t+=String.fromCharCode((n&31)<<6|s&63)}else if(n>=224&&n<240){let s=e[r++],i=e[r++];t+=String.fromCharCode((n&15)<<12|(s&63)<<6|i&63)}else if(n>=240){let s=e[r++],i=e[r++],a=e[r++],c=((n&7)<<18|(s&63)<<12|(i&63)<<6|a&63)-65536;t+=String.fromCharCode(55296+(c>>10),56320+(c&1023))}}return t}function vS(e){let t=[];for(let r=0;r>6),t.push(128|n&63);else if(n<55296||n>=57344)t.push(224|n>>12),t.push(128|n>>6&63),t.push(128|n&63);else{r++;let s=e.charCodeAt(r),i=65536+((n&1023)<<10|s&1023);t.push(240|i>>18),t.push(128|i>>12&63),t.push(128|i>>6&63),t.push(128|i&63)}}return new Uint8Array(t)}function iqr(e,t){try{let r=yS(e),n=vS(t),s=rqr(r,n),i=nqr(s);return kd(i)}catch(r){return R("error","[Utils] [Codec]",r),null}}function BP(e){let t=typeof e=="string"?e.trim():JSON.stringify(e??"");try{return JSON.parse(t)}catch{}let n=iqr(t,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return t}function aqr(e){let t=[];for(let r=0;r>6),t.push(128|n&63)):n<65536&&(t.push(224|n>>12),t.push(128|n>>6&63),t.push(128|n&63))}return t}function U9(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=t[(e[n]&3)<<4|e[n+1]>>4],r+=t[(e[n+1]&15)<<2|e[n+2]>>6],r+=t[e[n+2]&63];return n>2],n+1>4],r+=t[(e[n+1]&15)<<2],r+="="):(r+=t[(e[n]&3)<<4],r+="==")),r}function mfe(e){function t(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=e.length*8;for(let u=0;u>2]|=e.charCodeAt(u)<<(3-u)%4*8;n[e.length>>2]|=128<<(3-e.length%4)*8,n[(e.length+8>>6)*16+15]=s;let i=new Array(64),a=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],o=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];for(let u=0;u>>3,w=t(17,i[y-2])^t(19,i[y-2])^i[y-2]>>>10;i[y]=i[y-16]+x+i[y-7]+w|0}let A=t(6,p)^t(11,p)^t(25,p),E=p&m^~p&g,v=_+A+E+o[y]+i[y]|0,b=t(2,l)^t(13,l)^t(22,l),I=l&d^l&f^d&f,T=b+I|0;_=g,g=m,m=p,p=h+v|0,h=f,f=d,d=l,l=v+T|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+h|0,a[4]=a[4]+p|0,a[5]=a[5]+m|0,a[6]=a[6]+g|0,a[7]=a[7]+_|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function Pit(e,t){let n=aqr(e);n.length>64&&(n=mfe(e)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let s=n.map(c=>c^92),i=n.map(c=>c^54),a=mfe(String.fromCharCode(...i)+t),o=mfe(String.fromCharCode(...s)+String.fromCharCode(...a));return U9(o)}function UP(e,t,r,n){let s=e+"t"+t;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ci(s)}function Nit(e){if(e<=65535)return String.fromCharCode(e);e-=65536;let t=(e>>10)+55296,r=(e&1023)+56320;return String.fromCharCode(t,r)}function $m(e){if(!e)return e;let t={"<":"<",">":">","&":"&",""":'"',"'":"'"};return e.replace(/&[a-zA-Z]+;/g,r=>t[r]||r).replace(/&#(\d+);/g,(r,n)=>Nit(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>Nit(parseInt(n,16)))}var Dit,J9r,oa=ie(()=>{Kt();Dit=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],J9r=[0,1,2,4,8,16,32,64,128,27,54]});var Mit={};kt(Mit,{getRedisCaches:()=>Efe,getRedisKey:()=>oqr,judgeRedisValid:()=>yfe,pingRedis:()=>Lit,runPipeline:()=>Afe,setRedisKey:()=>_fe,setRedisKeyWithExpiry:()=>cqr,updateRedisCaches:()=>FP});async function Lit(){let e=`${F.redisUrl}/ping`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${F.redisToken}`}})).json()}catch(t){R("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",t.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",t.name),t.cause&&(R("error","- [Utils] [Redis] \u7801:",t.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",t.cause.message))}}async function oqr(e){let t=`${F.redisUrl}/get/${e}`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${F.redisToken}`}})).json()}catch(r){R("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(R("error","- [Utils] [Redis] \u7801:",r.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function _fe(e,t){let r=PR(e,t),n=hs(r);if(F.lastHashes[e]===n)return R("info",`[Utils] [Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${F.redisUrl}/set/${e}`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${F.redisToken}`,"Content-Type":"application/json"},body:r})).json();return F.lastHashes[e]=n,R("info",`[Utils] [Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F`),a}catch(i){R("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(R("error","- [Utils] [Redis] \u7801:",i.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function cqr(e,t,r){let n=PR(e,t),s=hs(n);if(F.lastHashes[e]===s)return R("info",`[Utils] [Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${F.redisUrl}/set/${e}?EX=${r}`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${F.redisToken}`,"Content-Type":"application/json"},body:n})).json();return F.lastHashes[e]=s,R("info",`[Utils] [Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){R("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(R("error","- [Utils] [Redis] \u7801:",a.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function Afe(e){let t=`${F.redisUrl}/pipeline`;R("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"POST",headers:{Authorization:`Bearer ${F.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(e)})).json()}catch(r){R("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),R("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(R("error","- [Utils] [Redis] \u7801:",r.cause.code),R("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function Efe(){if(!F.redisCacheInitialized)try{R("info","[Utils] [Redis] getRedisCaches start.");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await Afe(t);F.animes=r[0].result?JSON.parse(r[0].result):F.animes,F.episodeIds=r[1].result?JSON.parse(r[1].result):F.episodeIds,F.episodeNum=r[2].result?JSON.parse(r[2].result):F.episodeNum,F.reqRecords=r[3].result?JSON.parse(r[3].result):F.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(F.lastSelectMap=new Map(Object.entries(n)),R("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${F.lastSelectMap.size} entries`)),F.todayReqNum=r[5].result?parseInt(r[5].result,10):F.todayReqNum,F.lastHashes.animes=hs(JSON.stringify(F.animes)),F.lastHashes.episodeIds=hs(JSON.stringify(F.episodeIds)),F.lastHashes.episodeNum=hs(JSON.stringify(F.episodeNum)),F.lastHashes.reqRecords=hs(JSON.stringify(F.reqRecords)),F.lastHashes.lastSelectMap=hs(JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.lastHashes.todayReqNum=hs(JSON.stringify(F.todayReqNum)),F.redisCacheInitialized=!0,R("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(e){R("error",`[Utils] [Redis] getRedisCaches failed: ${e.message}`,e.stack),F.redisCacheInitialized=!0}}async function FP(){try{R("info","[Utils] [Redis] updateCaches start.");let e=[],t=[],r=[{key:"animes",value:F.animes},{key:"episodeIds",value:F.episodeIds},{key:"episodeNum",value:F.episodeNum},{key:"reqRecords",value:F.reqRecords},{key:"lastSelectMap",value:F.lastSelectMap},{key:"todayReqNum",value:F.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=hs(i);a!==F.lastHashes[n]&&(e.push(["SET",n,i]),t.push({key:n,hash:a}))}if(e.length>0){R("info",`[Utils] [Redis] Updating ${e.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let n=await Afe(e),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,R("warn",`[Utils] [Redis] Failed to update Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{F.lastHashes[a]=o}),R("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):R("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else R("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(e){R("error",`[Utils] [Redis] updateRedisCaches failed: ${e.message}`,e.stack),R("error",`[Utils] [Redis] Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function yfe(e){if(!F.redisValid&&F.redisUrl&&F.redisToken&&e!=="/favicon.ico"&&e!=="/robots.txt"){let t=await Lit();t&&t.result&&t.result==="PONG"&&(F.redisValid=!0)}}var F9=ie(()=>{Wt();Kt();oa()});var kh,$9,q9,H9,V9,vfe,Sfe,j9,zt,LR,Ki=ie(()=>{fs();kh=class e{constructor({animeId:t=111,bangumiId:r="",animeTitle:n="",type:s="",typeDescription:i="",imageUrl:a="",startDate:o="",episodeCount:c=1,rating:u=0,isFavorited:l=!0,source:d="",links:f=[],mergedChildren:h=[],isHiddenChild:p=!1}={}){Et(t,"number"),Et(r,"string"),Et(n,"string"),Et(s,"string","type"),Et(i,"string"),Et(a,"string"),Et(o,"string"),Et(c,"number"),Et(u,"number"),Et(l,"boolean"),Et(d,"string"),Et(f,"array"),Et(h,"array"),Et(p,"boolean"),this.links=f.map(m=>$9.fromJson(m)),Object.assign(this,{animeId:t,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:h,isHiddenChild:p})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(t.links||[]).map(n=>$9.fromJson(n));return new e({...t,links:r})}toJson(){return{...this,links:this.links.map(t=>t.toJson())}}},$9=class e{constructor({name:t="",url:r="",title:n="",id:s=10001}={}){Et(t,"string"),Et(r,"string"),Et(n,"string"),Et(s,"number"),Object.assign(this,{name:t,url:r,title:n,id:s})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},q9=class e{constructor({episodeId:t=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){Et(t,"number"),Et(r,"number"),Et(n,"string"),Et(s,"string"),Et(i,"string","type"),Et(a,"string"),Et(o,"number"),Et(c,"string"),Object.assign(this,{episodeId:t,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},H9=class{constructor({episodeId:t="",episodeTitle:r=""}={}){this.episodeId=t,this.episodeTitle=r}};H9.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};V9=class e{constructor({animeId:t=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){Et(t,"number"),Et(r,"string"),Et(n,"string"),Et(s,"string"),Et(i,"array"),Object.assign(this,{animeId:t,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new H9(a))})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this,episodes:this.episodes.map(t=>t.toJson())}}},vfe=class e{constructor({id:t="",airDate:r="",name:n="",episodeCount:s=0}={}){Et(t,"string"),Et(r,"string"),Et(n,"string"),Et(s,"number"),Object.assign(this,{id:t,airDate:r,name:n,episodeCount:s})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},Sfe=class e{constructor({seasonId:t="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){Et(t,"string"),Et(r,"number"),Et(n,"string"),Et(s,"string"),Et(i,"string"),Object.assign(this,{seasonId:t,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}},j9=class e{constructor({animeId:t=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){Et(t,"number"),Et(r,"string"),Et(n,"string"),Et(s,"string"),Et(i,"boolean"),Et(a,"number"),Et(o,"boolean"),Et(c,"number"),Et(u,"string"),Et(l,"string"),Et(d,"array"),Et(f,"array");let h=d.map(p=>vfe.fromJson(p));Object.assign(this,{animeId:t,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:h,episodes:f})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=t.episodes.map(n=>Sfe.fromJson(n));return new e({...t,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(t=>t.toJson()),episodes:this.episodes.map(t=>t.toJson())}}},zt=class e{constructor({type:t="",segmentList:r=[],duration:n=0}={}){Et(t,"string"),Et(r,"array"),Et(n,"number"),this.segmentList=r.map(s=>LR.fromJson(s)),Object.assign(this,{type:t,duration:n})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(t.segmentList||[]).map(n=>LR.fromJson(n));return new e({...t,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(t=>t.toJson())}}},LR=class e{constructor({type:t,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){Et(t,"string","type"),Et(r,"number","segment_start"),Et(n,"number","segment_end"),Et(s,"string","url"),i!==void 0&&Et(i,"string","data"),a!==void 0&&Et(a,"string","_m_h5_tk"),o!==void 0&&Et(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:t,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(t){if(typeof t!="object"||t===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new e(t)}toJson(){return{...this}}}});var Vit={};kt(Vit,{addAnime:()=>or,addEpisode:()=>qit,cleanupExpiredIPs:()=>Y9,findAnimeIdByCommentId:()=>z9,findAnimeTitleById:()=>Rfe,findIndexById:()=>G9,findTitleById:()=>Ife,findUrlById:()=>zP,getCommentCache:()=>qm,getDirname:()=>Q9,getLastSearch:()=>bfe,getLocalCaches:()=>Nfe,getPreferAnimeId:()=>wfe,getSearchCache:()=>jP,isCommentCacheValid:()=>$it,isSearchCacheValid:()=>Fit,judgeLocalCacheValid:()=>Ofe,readCacheFromFile:()=>SS,removeEarliestAnime:()=>ur,removeEpisodeByUrl:()=>Hit,resolveAnimeById:()=>TS,resolveAnimeByIdFromDetailStore:()=>bS,resolveEpisodeContextById:()=>kR,setCommentCache:()=>GP,setLastSearch:()=>Tfe,setPreferByAnimeId:()=>xfe,setSearchCache:()=>KP,storeAnimeIdsToMap:()=>Cfe,updateLocalCaches:()=>YP,writeCacheToFile:()=>W9});function Tfe(e,t){if($P.set(e,{...t,timestamp:Date.now()}),$P.size>200)for(let[r,n]of $P)Date.now()-n.timestamp>3600*1e3&&$P.delete(r)}function bfe(e){return $P.get(e)}function MR(e){if(!e||typeof e!="object")return"";let t=e.source?String(e.source)+":":"";return e.bangumiId!==void 0&&e.bangumiId!==null&&String(e.bangumiId)!==""?"bangumi:"+t+String(e.bangumiId):e.animeId!==void 0&&e.animeId!==null&&String(e.animeId)!==""?"anime:"+t+String(e.animeId):""}function kit(e,t){if(!(e instanceof Map)||!t)return;let r=MR(t);r&&e.set(r,t)}function*VP(e){if(!(e instanceof Map))return;let t=new Set;for(let r of e.values()){let n=MR(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function uqr(e){let t=[];for(let r of VP(e))t.push(r);return t}function lqr(){let e=Date.now(),t=[];for(let[r,n]of F.searchCache.entries()){let s=(e-n.timestamp)/6e4;if(s>F.searchCacheMinutes){F.searchCache.delete(r),R("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}t.push(n)}return t.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),t}function Bit(e,t,r){let n=Date.now(),s=0;for(let[i,a]of e.entries())(n-a.timestamp)/6e4>t&&(e.delete(i),s++);s>0&&R("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${e.size} \u4E2A`)}function dqr(e,t){return String(e?.animeId)===t||String(e?.bangumiId)===t}function K9(e,t,r=null){let n=null;for(let s of e)if(dqr(s,t)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*Uit(){let e=new Set;for(let t of lqr())if(Array.isArray(t.details))for(let r of t.details){let n=MR(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function TS(e,t=null,r=null){let n=String(e),s=K9(F.animes,n,r);return s||(s=K9(VP(t),n,r),s)?s:K9(Uit(),n,r)}function bS(e,t=null,r=null){let n=String(e);return K9(VP(t),n,r)}function kR(e,t=null){let r=Number(e);if(!Number.isFinite(r))return null;let n=i=>{if(!i?.links||!Array.isArray(i.links))return null;let a=i.links.findIndex(o=>o.id===r);return a===-1?null:{anime:i,link:i.links[a],index:a}};for(let i of F.animes){let a=n(i);if(a)return a}for(let i of VP(t)){let a=n(i);if(a)return a}let s=new Set;for(let i of F.animes){let a=MR(i);a&&s.add(a)}for(let i of VP(t)){let a=MR(i);a&&s.add(a)}for(let i of Uit()){let a=MR(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function Fit(e){if(!F.searchCache.has(e))return!1;let t=F.searchCache.get(e),n=(Date.now()-t.timestamp)/(1e3*60);return n>F.searchCacheMinutes?(F.searchCache.delete(e),R("info",`[Cache] Search cache for "${e}" expired after ${n.toFixed(2)} minutes`),!1):!0}function jP(e,t=null){if(Fit(e)){R("info",`[Cache] Using search cache for "${e}"`);let r=F.searchCache.get(e);return t instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{kit(t,n)}),r.results}return null}function KP(e,t,r=null){let n=uqr(r);if(Bit(F.searchCache,F.searchCacheMinutes,"searchCache"),F.searchCache.set(e,{results:t,details:n,timestamp:Date.now()}),F.searchCache.size>500){let s=F.searchCache.keys().next().value;F.searchCache.delete(s),R("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}R("info",`[Cache] Cached search results for "${e}" (${t.length} animes)`)}function $it(e){if(!F.commentCache.has(e))return!1;let t=F.commentCache.get(e),n=(Date.now()-t.timestamp)/(1e3*60);return n>F.commentCacheMinutes?(F.commentCache.delete(e),R("info",`[Cache] Comment cache for "${e}" expired after ${n.toFixed(2)} minutes`),!1):!0}function qm(e){return $it(e)?(R("info",`[Cache] Using comment cache for "${e}"`),F.commentCache.get(e).comments):null}function GP(e,t){if(Bit(F.commentCache,F.commentCacheMinutes,"commentCache"),F.commentCache.set(e,{comments:t,timestamp:Date.now()}),F.commentCache.size>500){let r=F.commentCache.keys().next().value;F.commentCache.delete(r),R("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}R("info",`[Cache] Cached comments for "${e}" (${t.length} comments)`)}function qit(e,t){let r=F.episodeIds.find(s=>s.url===e&&s.title===t);if(r)return R("info",`[Cache] Episode with URL ${e} and title ${t} already exists in episodeIds, returning existing episode.`),r;F.episodeNum++;let n={id:F.episodeNum,url:e,title:t};return F.episodeIds.push(n),R("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function Hit(e){let t=F.episodeIds.length;F.episodeIds=F.episodeIds.filter(n=>n.url!==e);let r=t-F.episodeIds.length;return r>0?(R("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${e}`),!0):(R("error",`[Cache] No episode found in episodeIds with URL: ${e}`),!1)}function zP(e){let t=F.episodeIds.find(n=>n.id===e);if(t)return R("info",`[Cache] Found URL for ID ${e}: ${t.url}`),t.url;let r=kR(e);return r?.link?.url?(R("info",`[Cache] Found URL for ID ${e} via cached anime details: ${r.link.url}`),r.link.url):(R("error",`[Cache] No URL found for ID: ${e}`),null)}function G9(e){let t=F.episodeIds.findIndex(n=>n.id===e);if(t!==-1)return R("info",`[Cache] Found index for ID ${e}: ${t}`),t;let r=kR(e);return r?(R("info",`[Cache] Found index for ID ${e} via cached anime details: ${r.index}`),r.index):(R("error",`[Cache] No index found for ID: ${e}`),-1)}function Ife(e){let t=F.episodeIds.find(n=>n.id===e);if(t)return R("info",`[Cache] Found TITLE for ID ${e}: ${t.title}`),t.title;let r=kR(e);return r?.link?.title?(R("info",`[Cache] Found TITLE for ID ${e} via cached anime details: ${r.link.title}`),r.link.title):(R("error",`[Cache] No TITLE found for ID: ${e}`),null)}function Rfe(e){let t=kR(e);return t?.anime?.animeTitle?(R("info",`[Cache] Found animeTitle for ID ${e}: ${t.anime.animeTitle}`),t.anime.animeTitle):(R("error",`[Cache] No animeTitle found for ID: ${e}`),null)}function or(e,t=null){e=kh.fromJson(e);try{if(!e.links||!Array.isArray(e.links))return R("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(e)}`),!1;let r=[];e.links.forEach(i=>{if(i.url){let a=qit(i.url,i.title);a&&r.push(a)}else R("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=kh.fromJson({...e,links:r});kit(t,n);let s=F.animes.findIndex(i=>i.animeId===e.animeId);return s!==-1&&(F.animes.splice(s,1),R("info",`[Cache] Removed old anime at index: ${s}`)),F.animes.push(n),R("info",`[Cache] Added anime to latest position: ${e.animeId}`),F.animes.length>F.MAX_ANIMES&&(ur()||R("error","[Cache] Failed to remove earliest anime, but continuing")),R("info",`[Cache] animes: ${JSON.stringify(F.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return R("error",`[Cache] addAnime failed: ${r.message}`),!1}}function ur(){if(F.animes.length===0)return R("error","[Cache] No animes to remove."),!1;let e=F.animes.shift();return R("info",`[Cache] Removed earliest anime: ${JSON.stringify(e)}`),e.links&&Array.isArray(e.links)&&e.links.forEach(t=>{t.url&&Hit(t.url)}),!0}function Cfe(e,t){let r=new Set,n=F.lastSelectMap.get(t);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of e)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),F.lastSelectMap.has(t)&&F.lastSelectMap.delete(t),F.lastSelectMap.set(t,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),F.lastSelectMap.size>F.MAX_LAST_SELECT_MAP){let d=F.lastSelectMap.keys().next().value;F.lastSelectMap.delete(d),R("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function z9(e){let t=kR(e);return t?[t.anime.animeId,t.anime.source,t.link.title,t.anime.aliases||[]]:[null,null,null,[]]}function xfe(e,t,r=null,n=null){for(let[s,i]of F.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(e)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=e,i.sourceBySeason[a]=t,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),F.lastSelectMap.set(s,i),s}return null}function wfe(e,t=null){let r=F.lastSelectMap.get(e);if(!r)return[null,null,null];let n=t===null?"default":String(t),s=r.preferBySeason||{},i=r.sourceBySeason||{},a=s[n]??s.default??r.prefer??null,o=i[n]??i.default??r.source??null,c=r.offsets||null;return[a,o,c]}function Y9(e){let r=0;for(let[n,s]of F.requestHistory.entries()){let i=s.filter(a=>e-a<=6e4);i.length===0?(F.requestHistory.delete(n),r++,R("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length0&&R("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function Q9(){return typeof __dirname<"u"?__dirname:HP.join(process.cwd(),"danmu_api","utils")}function SS(e){let t=HP.join(Q9(),"..","..",".cache",`${e}`);if(qP.existsSync(t)){let r=qP.readFileSync(t,"utf8");return JSON.parse(r)}return null}function W9(e,t){let r=HP.join(Q9(),"..","..",".cache",`${e}`);qP.writeFileSync(r,JSON.stringify(t),"utf8")}async function Nfe(){if(!F.localCacheInitialized)try{R("info","[Cache] getLocalCaches start."),F.animes=JSON.parse(SS("animes"))||F.animes,F.episodeIds=JSON.parse(SS("episodeIds"))||F.episodeIds,F.episodeNum=JSON.parse(SS("episodeNum"))||F.episodeNum,F.reqRecords=JSON.parse(SS("reqRecords"))||F.reqRecords,F.todayReqNum=JSON.parse(SS("todayReqNum"))||F.todayReqNum;let e=SS("lastSelectMap");e&&(F.lastSelectMap=new Map(Object.entries(JSON.parse(e))),R("info",`[Cache] Restored lastSelectMap from local cache with ${F.lastSelectMap.size} entries`)),F.lastHashes.animes=hs(JSON.stringify(F.animes)),F.lastHashes.episodeIds=hs(JSON.stringify(F.episodeIds)),F.lastHashes.episodeNum=hs(JSON.stringify(F.episodeNum)),F.lastHashes.reqRecords=hs(JSON.stringify(F.reqRecords)),F.lastHashes.todayReqNum=hs(JSON.stringify(F.todayReqNum)),F.lastHashes.lastSelectMap=hs(JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.localCacheInitialized=!0,R("info","[Cache] getLocalCaches completed successfully.")}catch(e){R("error",`[Cache] getLocalCaches failed: ${e.message}`,e.stack),F.localCacheInitialized=!0}}async function YP(){try{R("info","[Cache] updateLocalCaches start.");let e=[],t=[{key:"animes",value:F.animes},{key:"episodeIds",value:F.episodeIds},{key:"episodeNum",value:F.episodeNum},{key:"reqRecords",value:F.reqRecords},{key:"lastSelectMap",value:F.lastSelectMap},{key:"todayReqNum",value:F.todayReqNum}];for(let{key:r,value:n}of t){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=hs(s);i!==F.lastHashes[r]&&(W9(r,s),e.push({key:r,hash:i}))}e.length>0?(R("info",`[Cache] Updated local caches for keys: ${e.map(r=>r.key).join(", ")}`),e.forEach(({key:r,hash:n})=>{F.lastHashes[r]=n})):R("info","[Cache] No changes detected, skipping local cache update.")}catch(e){R("error",`[Cache] updateLocalCaches failed: ${e.message}`,e.stack),R("error",`[Cache] Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function Ofe(e,t){if(t==="node")try{if(qP=await import("fs"),HP=await import("path"),!F.localCacheValid&&e!=="/favicon.ico"&&e!=="/robots.txt"){let r=HP.join(Q9(),"..","..",".cache");qP.existsSync(r)?F.localCacheValid=!0:F.localCacheValid=!1}}catch(r){R("warn","[Cache] Node.js modules not available:",r.message),F.localCacheValid=!1}}var qP,HP,$P,oi=ie(()=>{Wt();Kt();Ki();oa();$P=new Map});function fqr(e,t,r=!1){if(t===0&&!r)return e.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=e.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=t===0?o.toFixed(2):Math.floor(o/(t*60));return i[c]||(i[c]=[]),i[c].push({...a,t:o}),i},{});return Object.keys(n).map(i=>{let o=n[i].reduce((c,u)=>{let l=u.m.split(" X")[0].trim();if(c[l]||(c[l]={count:0,earliestT:u.t,cid:u.cid,p:u.p,like:0,sources:new Set}),c[l].count+=1,c[l].earliestT=Math.min(c[l].earliestT,u.t),c[l].like+=u.like!==void 0?u.like:0,u.p){let d=u.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&c[l].sources.add(f.trim())})}return c},{});return Object.keys(o).map(c=>{let u=o[c],l=Math.max(1,u.sources.size),d=Math.round(u.count/l);d<1&&(d=1);let f=Array.from(u.sources).join("\uFF06"),h=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p:h,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function hqr(e){if(!F.likeSwitch)return e;let t=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return e.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||t.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",c;r.like>=1e4?c=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?c=(r.like/1e3).toFixed(1)+"k":c=r.like.toString();let u=`\u200A${o}${c}`,l=r.m+u,{like:d,...f}=r;return{...f,m:l}})}function pqr(e,t){if(t===0)return e;let r=t*1e3,n=e.length;if(n<=r)return e;let s=n/r,i=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(e&&Array.isArray(e.danmuku)){let f={right:1,top:4,bottom:5},h=p=>p?parseInt(p.replace("#",""),16):16777215;i=e.danmuku.map(p=>({timepoint:p[0],ct:f[p[1]]!==void 0?f[p[1]]:1,color:h(p[2]),content:p[4]}))}else Array.isArray(e)&&(i=e);if(!i.length)return[];for(let f of i){let h,p,m,g,_;if("progress"in f&&"mode"in f&&"content"in f)m=(f.progress/1e3).toFixed(2),g=f.mode||1,_=f.color||16777215,p=f.content;else if("timepoint"in f)m=parseFloat(f.timepoint).toFixed(2),g=f.ct||0,_=f.color||16777215,p=f.content;else{if(!("p"in f))continue;let A=f.p.split(",");m=parseFloat(A[0]).toFixed(2),g=A[1]||0,A.length===4?_=A[2]||16777215:A.length>=8?_=A[3]||16777215:_=A[3]||A[2]||16777215,p=f.m}let y=f._sourceLabel||t;f.realTimeSource&&!y.includes(f.realTimeSource)&&(y=`${y}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(y)&&(s=!0),h=[m,g,_,`[${y}]`].join(","),r.push({p:h,m:p,cid:n++,like:f?.like})}let a=F.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let h=f.trim();if(h.startsWith("/")&&h.endsWith("/"))try{return new RegExp(h.slice(1,-1))}catch(p){return R("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${h}`,p),null}return null}).filter(f=>f!==null);R("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${F.blockedWords}`),R("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(h=>h.toString()).join(` +`):String(f))(a)}`);let c=r.filter(f=>!a.some(h=>h.test(f.m)));R("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${F.groupMinute}`);let u=fqr(c,F.groupMinute,s),l=hqr(u),d=pqr(l,F.danmuLimit);if(F.convertTopBottomToScroll||F.convertColor==="white"||F.convertColor==="color"){let f=0,h=0;d=d.map(p=>{let m=p.p.split(",");if(m.length<3)return p;let g=parseInt(m[1],10),_=parseInt(m[2],10),y=!1;F.convertTopBottomToScroll&&(g===4||g===5)&&(f++,g=1,y=!0),F.convertColor==="white"&&_!==16777215&&(h++,_=16777215,y=!0);let A=F.colorPool.split(",").map(v=>parseInt(v.trim(),10)).filter(v=>!isNaN(v)&&v>=0&&v<=16777215),E=A[Math.floor(Math.random()*A.length)];if(F.convertColor==="color"&&_===16777215&&_!==E&&(h++,_=E,y=!0),y){let v=[m[0],g,_,...m.slice(3)].join(",");return{...p,p:v}}return p}),f>0&&R("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),h>0&&R("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${h} \u6761\u5F39\u5E55\u989C\u8272`)}return F.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:wl(f.m)})),R("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),R("info",`[Utils] [Danmu] danmus_original: ${r.length}`),R("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),R("info",`[Utils] [Danmu] danmus_group: ${u.length}`),R("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),R("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function Dfe(e){return typeof e.r!="number"||e.r<0||e.r>255||typeof e.g!="number"||e.g<0||e.g>255||typeof e.b!="number"||e.b<0||e.b>255?-1:e.r*256*256+e.g*256+e.b}function BR(e){return typeof e!="string"||e.length!==6||!/^[0-9A-Fa-f]{6}$/.test(e)?16777215:parseInt(e,16)}function mqr(e){let t=` `;t+=` -`;let r=e.comments||[];if(Array.isArray(r))for(let n of r){let i=qTr(n);t+=' '+HTr(n.m)+` -`}return t+="",t}function UTr(){let t=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return t+r}function qTr(e){let t=e.p.split(","),n=(parseFloat(t[0])||0).toFixed(1),i=t[1]||"1",s="25",a=t[2]||"16777215",o="1751533608",u="0",c="0",l=UTr();return`${n},${i},${s},${a},${o},${u},${c},${l}`}function jTr(e){return e?String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function HTr(e){return e?String(e).replace(/&/g,"&").replace(//g,">"):""}function Iv(e,t){let r=t||L.danmuOutputFormat;if(r=r.toLowerCase(),x("info",`[Format] Using format: ${r}`),r==="xml")try{let n=FTr(e);return IYe(n)}catch(n){return x("error",`Failed to convert to XML: ${n.message}`),Qe(e)}return Qe(e)}var oy=ve(()=>{Ot();Ct();yr();Md()});var um,m5=ve(()=>{yr();um=class{constructor({apiKey:t,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:i=""}){this.apiKey=t,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=i}async chat(t,r={}){let n={model:r.model||this.model,messages:t,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},i=await Nn(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),s=i.data;if(s?.error){let a=s.error.message;throw new Error(`AI API error ${i.status}: ${a}`)}return s.choices[0].message.content}async ask(t,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:t}),this.chat(n,r)}session(t={}){let r=[],n=this.chat.bind(this),i=this.systemPrompt;return i&&r.push({role:"system",content:i}),{async send(s){r.push({role:"user",content:s});let a=await n(r,t);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,i&&r.push({role:"system",content:i})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(t){return{ok:!1,error:t.message}}}}});async function _5(e,t=!1,r=null){if(!L.useBangumiData)return;let n=null,i=L.bangumiDataCacheDays!==void 0?L.bangumiDataCacheDays:7,s=i*24*60*60*1e3;if(e==="node"?dp.default.existsSync(QYe)?n=Eae.default.join(QYe,KTr):jR||(x("warn","[Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),x("warn","[Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),x("warn","[Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),jR=!0):jR||(x("info",`[Bangumi-Data] \u68C0\u6D4B\u5230 ${e} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),jR=!0),wc&&Date.now()-g5>VTr&&(x("warn","[Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),wc=!1),ju){if(i>0&&Date.now()-y5{wc=!1}));return}if(n&&dp.default.existsSync(n))try{let a=dp.default.statSync(n),o=process.memoryUsage().heapUsed,u=Date.now();ju=JSON.parse(dp.default.readFileSync(n,"utf-8"));let c=process.memoryUsage().heapUsed,l=Date.now()-u;mw=Math.max(0,(c-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);y5=Date.now(),x("info",`[Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${ju.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${mw} MB`),(i===0||Date.now()-a.mtimeMs>=s)&&t&&!wc&&(x("info",`[Bangumi-Data] \u78C1\u76D8\u6570\u636E${i===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),wc=!0,g5=Date.now(),bae(n).finally(()=>{wc=!1}));return}catch(a){x("error","[Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),ju=null}if(wc){if(t){x("info","[Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;wc;){if(a>150){x("warn","[Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),wc=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{x("info","[Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),wc=!0,g5=Date.now();let a=bae(n).finally(()=>{wc=!1});t?await a:(x("info","[Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(x("info","[Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}async function bae(e){x("info","[Bangumi-Data] \u5F00\u59CB\u4F18\u9009\u8282\u70B9\u4E0B\u8F7D\u6700\u65B0\u6570\u636E (\u7EA6 7MB)...");try{let t=process.memoryUsage().heapUsed,r=Date.now(),n=0,i=0,s=["https://cdn.jsdelivr.net/npm/bangumi-data@0.3/dist/data.json","https://unpkg.com/bangumi-data@0.3/dist/data.json"],a={headers:{"Accept-Encoding":"br, gzip, deflate"}},o=s.map(()=>new AbortController);s.forEach(h=>{x("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${h}`)});let u=s.map(async(h,m)=>{let y=o[m],g=await fv(h,{...a,signal:y.signal});if(!g.ok)throw new Error(`HTTP error ${g.status} from ${h}`);let v=null,A=null;return e?(A=`${e}.tmp${m}`,await(0,GYe.pipeline)(g.body,dp.default.createWriteStream(A))):v=await g.json(),{index:m,url:h,tempFilePath:A,resultData:v}}),c=await Promise.any(u);o.forEach((h,m)=>{m!==c.index&&h.abort()}),e&&s.forEach((h,m)=>{if(m!==c.index){let y=`${e}.tmp${m}`;if(dp.default.existsSync(y))try{dp.default.unlinkSync(y)}catch{}}});let l=((Date.now()-r)/1e3).toFixed(2);x("info",`[Bangumi-Data] \u6D41\u5F0F\u4E0B\u8F7D\u5E76\u5199\u5165\u78C1\u76D8\u6210\u529F(\u4F18\u9009\u8282\u70B9: ${new URL(c.url).hostname} ,\u7F51\u7EDC\u8017\u65F6: ${l} \u79D2)`),e?(dp.default.renameSync(c.tempFilePath,e),n=Date.now(),ju=JSON.parse(dp.default.readFileSync(e,"utf-8")),i=Date.now()-n):(n=Date.now(),ju=c.resultData,i=Date.now()-n);let d=process.memoryUsage().heapUsed,f=((Date.now()-r)/1e3).toFixed(2);mw=Math.max(0,(d-t)/1024/1024).toFixed(2);let p=(process.memoryUsage().rss/1024/1024).toFixed(2);y5=Date.now(),x("info",`[Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u6761\u76EE\u6570: ${ju.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${i} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${f} \u79D2\uFF0C\u7EA6\u5360\u5185\u5B58: ${mw} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${p} MB)`)}catch(t){let r=t instanceof AggregateError?t.errors.map(n=>n.message).join(" | "):t.message;x("error","[Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}function Ld(e,t){if(!ju||!ju.items)return[];let r=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|日[语語]|日配|原版|原[声聲])(?:版)?/,n=[];for(let i of ju.items){let s=[i.title];if(i.titleTranslate)for(let o in i.titleTranslate)s.push(...i.titleTranslate[o]);if(s.some(o=>o&&Mt(o,e))&&i.sites){let o=i.sites.filter(u=>t.includes(u.site));for(let u of o){let c="TV\u52A8\u753B",l="tvseries";i.type==="movie"?(c="\u5267\u573A\u7248",l="movie"):i.type==="tv"?(c="TV\u52A8\u753B",l="tvseries"):i.type==="ova"?(c="OVA",l="ova"):i.type==="web"&&(c="WEB\u52A8\u753B",l="web");let d="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(u.site)&&(d="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let f=[],p=[];if(u.comment){let m=u.comment.split(/[,,]/);for(let y of m){let g=y.split(/[::]/);if(g.length>=2){let v=g[0].trim(),A=g[1].trim();A&&r.test(v)&&f.push({title:i.title,titles:[...s],begin:i.begin,siteId:A,matchedSiteKey:u.site,type:i.type,typeStr:c,typeId:l,titleSuffix:` ${v}${d}`})}else if(g.length===1&&g[0].trim()){let v=g[0].trim();r.test(v)&&p.push(v)}}}let h="";p.length>0&&(h+=` ${p.join(" ")}`),h+=d,n.push({title:i.title,titles:[...s],begin:i.begin,siteId:u.id,matchedSiteKey:u.site,type:i.type,typeStr:c,typeId:l,titleSuffix:h}),n.push(...f)}}}return n}function YYe(){if(ju!==null){let e=ju.items?ju.items.length:0;ju=null,y5=0;let t=(process.memoryUsage().rss/1024/1024).toFixed(2);x("info",`[Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${mw} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${t} MB)`),mw="0.00",jR=!1}}var dp,Eae,GYe,ju,y5,wc,g5,mw,jR,QYe,KTr,VTr,uy=ve(()=>{dp=Se(require("fs"),1),Eae=Se(require("path"),1),GYe=require("stream/promises");dR();Ot();Ct();bi();ju=null,y5=0,wc=!1,g5=0,mw="0.00",jR=!1,QYe=Eae.default.join(process.cwd(),".cache"),KTr="bangumi-data-cache.json",VTr=2e4});var wae=b(A5=>{"use strict";Object.defineProperty(A5,"__esModule",{value:!0});A5.VerbatimString=void 0;var Sae=class extends String{format;constructor(t,r){super(r),this.format=t}};A5.VerbatimString=Sae});var fp=b(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.MultiErrorReply=_r.CommandTimeoutDuringMaintenanceError=_r.SocketTimeoutDuringMaintenanceError=_r.TimeoutError=_r.BlobError=_r.SimpleError=_r.ErrorReply=_r.ReconnectStrategyError=_r.RootNodesUnavailableError=_r.SocketClosedUnexpectedlyError=_r.DisconnectsClientError=_r.ClientOfflineError=_r.ClientClosedError=_r.SocketTimeoutError=_r.ConnectionTimeoutError=_r.WatchError=_r.AbortError=void 0;var Iae=class extends Error{constructor(){super("The command was aborted")}};_r.AbortError=Iae;var xae=class extends Error{constructor(t="One (or more) of the watched keys has been changed"){super(t)}};_r.WatchError=xae;var Cae=class extends Error{constructor(){super("Connection timeout")}};_r.ConnectionTimeoutError=Cae;var Tae=class extends Error{constructor(t){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${t}ms.`)}};_r.SocketTimeoutError=Tae;var Nae=class extends Error{constructor(){super("The client is closed")}};_r.ClientClosedError=Nae;var Rae=class extends Error{constructor(){super("The client is offline")}};_r.ClientOfflineError=Rae;var Dae=class extends Error{constructor(){super("Disconnects client")}};_r.DisconnectsClientError=Dae;var kae=class extends Error{constructor(){super("Socket closed unexpectedly")}};_r.SocketClosedUnexpectedlyError=kae;var Oae=class extends Error{constructor(){super("All the root nodes are unavailable")}};_r.RootNodesUnavailableError=Oae;var Pae=class extends Error{originalError;socketError;constructor(t,r){super(t.message),this.originalError=t,this.socketError=r}};_r.ReconnectStrategyError=Pae;var gw=class extends Error{};_r.ErrorReply=gw;var Mae=class extends gw{};_r.SimpleError=Mae;var Lae=class extends gw{};_r.BlobError=Lae;var HR=class extends Error{};_r.TimeoutError=HR;var Bae=class extends HR{constructor(t){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${t}ms.`)}};_r.SocketTimeoutDuringMaintenanceError=Bae;var $ae=class extends HR{constructor(t){super(`Command timeout during maintenance. Waited to write command for more than ${t}ms.`)}};_r.CommandTimeoutDuringMaintenanceError=$ae;var Fae=class extends gw{replies;errorIndexes;constructor(t,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=t,this.errorIndexes=r}*errors(){for(let t of this.errorIndexes)yield this.replies[t]}};_r.MultiErrorReply=Fae});var E5=b(yt=>{"use strict";var Uae;Object.defineProperty(yt,"__esModule",{value:!0});yt.Decoder=yt.PUSH_TYPE_MAPPING=yt.RESP_TYPES=void 0;var WYe=wae(),v5=fp();yt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var _n={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};yt.PUSH_TYPE_MAPPING={[yt.RESP_TYPES.BLOB_STRING]:Buffer};var b5=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(t){this.onReply=t.onReply,this.onErrorReply=t.onErrorReply,this.onPush=t.onPush,this.getTypeMapping=t.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(t){if(this.#e>=t.length){this.#e-=t.length;return}if(this.#t&&(this.#t(t)||this.#e>=t.length)){this.#e-=t.length;return}do{let r=t[this.#e];if(++this.#e===t.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,t))break}while(this.#e=r.length?this.#N.bind(this,n,t):this.#N(n,t,r)}#x(t,r,n){let i=t(n);return typeof i=="function"?this.#x.bind(this,i,r):this.#e>=n.length?this.#N.bind(this,i,r):this.#N(i,r,n)}#R(t,r,n,i){let s=this.#e+t;if(s>=i.length){let o=i.subarray(this.#e);return this.#e=i.length,this.#B.bind(this,t-o.length,[o],r,n)}let a=i.subarray(this.#e,s);return this.#e=s+r,n===Buffer?a:a.toString()}#B(t,r,n,i,s){let a=this.#e+t;if(a>=s.length){let u=s.subarray(this.#e);return r.push(u),this.#e=s.length,this.#B.bind(this,t-u.length,r,n,i)}r.push(s.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return i===Buffer?o:o.toString()}#N(t,r,n){return this.#R(t,2,r,n)}#D(t,r){return this.#O(this.#p.bind(this,0),t,r)}#O(t,r,n){let i=t(n);return typeof i=="function"?this.#O.bind(this,i,r):this.#ue(i,r,n)}#ue(t,r,n){let i=t-4;return r===WYe.VerbatimString?this.#ce(i,n):(this.#e+=4,this.#e>=n.length?this.#N.bind(this,i,r):this.#N(i,r,n))}#ce(t,r){let n=this.#R.bind(this,3,1,String);return this.#e>=r.length?this.#U.bind(this,t,n):this.#U(t,n,r)}#U(t,r,n){let i=r(n);return typeof i=="function"?this.#U.bind(this,t,i):this.#le(t,i,n)}#le(t,r,n){return this.#K(r,this.#N.bind(this,t,String),n)}#K(t,r,n){let i=r(n);return typeof i=="function"?this.#K.bind(this,t,i):new WYe.VerbatimString(t,i)}#V(t){let r=this.#A(String,t);return typeof r=="function"?this.#z.bind(this,r):new v5.SimpleError(r)}#z(t,r){let n=t(r);return typeof n=="function"?this.#z.bind(this,n):new v5.SimpleError(n)}#Q(t){let r=this.#C(String,t);return typeof r=="function"?this.#G.bind(this,r):new v5.BlobError(r)}#G(t,r){let n=t(r);return typeof n=="function"?this.#G.bind(this,n):new v5.BlobError(n)}#T(t,r){let n=r[this.#e];return++this.#e===r.length?this.#q.bind(this,n,t):this.#q(n,t,r)}#q(t,r,n){switch(t){case yt.RESP_TYPES.NULL:return this.#i();case yt.RESP_TYPES.BOOLEAN:return this.#s(n);case yt.RESP_TYPES.NUMBER:return this.#u(r[yt.RESP_TYPES.NUMBER],n);case yt.RESP_TYPES.BIG_NUMBER:return this.#d(r[yt.RESP_TYPES.BIG_NUMBER],n);case yt.RESP_TYPES.DOUBLE:return this.#g(r[yt.RESP_TYPES.DOUBLE],n);case yt.RESP_TYPES.SIMPLE_STRING:return this.#A(r[yt.RESP_TYPES.SIMPLE_STRING],n);case yt.RESP_TYPES.BLOB_STRING:return this.#C(r[yt.RESP_TYPES.BLOB_STRING],n);case yt.RESP_TYPES.VERBATIM_STRING:return this.#D(r[yt.RESP_TYPES.VERBATIM_STRING],n);case yt.RESP_TYPES.SIMPLE_ERROR:return this.#V(n);case yt.RESP_TYPES.BLOB_ERROR:return this.#Q(n);case yt.RESP_TYPES.ARRAY:return this.#j(r,n);case yt.RESP_TYPES.SET:return this.#X(r,n);case yt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${t} "${String.fromCharCode(t)}"`)}}#j(t,r){return r[this.#e]===_n["-"]?(this.#e+=4,null):this.#Y(this.#p(0,r),t,r)}#Y(t,r,n){return typeof t=="function"?this.#de.bind(this,t,r):this.#P(new Array(t),0,r,n)}#de(t,r,n){return this.#Y(t(n),r,n)}#P(t,r,n,i){for(let s=r;s=i.length)return this.#P.bind(this,t,s,n);let a=this.#T(n,i);if(typeof a=="function")return this.#W.bind(this,t,s,a,n);t[s]=a}return t}#W(t,r,n,i,s){let a=n(s);return typeof a=="function"?this.#W.bind(this,t,r,a,i):(t[r++]=a,this.#P(t,r,i,s))}#X(t,r){let n=this.#p(0,r);return typeof n=="function"?this.#J.bind(this,n,t):this.#Z(n,t,r)}#J(t,r,n){let i=t(n);return typeof i=="function"?this.#J.bind(this,i,r):this.#Z(i,r,n)}#Z(t,r,n){return r[yt.RESP_TYPES.SET]===Set?this.#H(new Set,t,r,n):this.#P(new Array(t),0,r,n)}#H(t,r,n,i){for(;r>0;){if(this.#e>=i.length)return this.#H.bind(this,t,r,n);let s=this.#T(n,i);if(typeof s=="function")return this.#ee.bind(this,t,r,s,n);t.add(s),--r}return t}#ee(t,r,n,i,s){let a=n(s);return typeof a=="function"?this.#ee.bind(this,t,r,a,i):(t.add(a),this.#H(t,r-1,i,s))}#te(t,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,t):this.#ne(n,t,r)}#re(t,r,n){let i=t(n);return typeof i=="function"?this.#re.bind(this,i,r):this.#ne(i,r,n)}#ne(t,r,n){switch(r[yt.RESP_TYPES.MAP]){case Map:return this.#$(new Map,t,r,n);case Array:return this.#P(new Array(t*2),0,r,n);default:return this.#F(Object.create(null),t,r,n)}}#$(t,r,n,i){for(;r>0;){if(this.#e>=i.length)return this.#$.bind(this,t,r,n);let s=this.#ie(n,i);if(typeof s=="function")return this.#ae.bind(this,t,r,s,n);if(this.#e>=i.length)return this.#M.bind(this,t,r,s,this.#T.bind(this,n),n);let a=this.#T(n,i);if(typeof a=="function")return this.#M.bind(this,t,r,s,a,n);t.set(s,a),--r}return t}#ie(t,r){let n=r[this.#e];return++this.#e===r.length?this.#se.bind(this,n,t):this.#se(n,t,r)}#se(t,r,n){switch(t){case yt.RESP_TYPES.SIMPLE_STRING:return this.#A(String,n);case yt.RESP_TYPES.BLOB_STRING:return this.#C(String,n);default:return this.#q(t,r,n)}}#ae(t,r,n,i,s){let a=n(s);if(typeof a=="function")return this.#ae.bind(this,t,r,a,i);if(this.#e>=s.length)return this.#M.bind(this,t,r,a,this.#T.bind(this,i),i);let o=this.#T(i,s);return typeof o=="function"?this.#M.bind(this,t,r,a,o,i):(t.set(a,o),this.#$(t,r-1,i,s))}#M(t,r,n,i,s,a){let o=i(a);return typeof o=="function"?this.#M.bind(this,t,r,n,o,s):(t.set(n,o),this.#$(t,r-1,s,a))}#F(t,r,n,i){for(;r>0;){if(this.#e>=i.length)return this.#F.bind(this,t,r,n);let s=this.#ie(n,i);if(typeof s=="function")return this.#oe.bind(this,t,r,s,n);if(this.#e>=i.length)return this.#L.bind(this,t,r,s,this.#T.bind(this,n),n);let a=this.#T(n,i);if(typeof a=="function")return this.#L.bind(this,t,r,s,a,n);t[s]=a,--r}return t}#oe(t,r,n,i,s){let a=n(s);if(typeof a=="function")return this.#oe.bind(this,t,r,a,i);if(this.#e>=s.length)return this.#L.bind(this,t,r,a,this.#T.bind(this,i),i);let o=this.#T(i,s);return typeof o=="function"?this.#L.bind(this,t,r,a,o,i):(t[a]=o,this.#F(t,r-1,i,s))}#L(t,r,n,i,s,a){let o=i(a);return typeof o=="function"?this.#L.bind(this,t,r,n,o,s):(t[n]=o,this.#F(t,r-1,s,a))}};yt.Decoder=b5;Uae=b5});var JYe=b(yw=>{"use strict";Object.defineProperty(yw,"__esModule",{value:!0});yw.scriptSha1=yw.defineScript=void 0;var zTr=require("node:crypto");function QTr(e){return{...e,SHA1:XYe(e.SCRIPT)}}yw.defineScript=QTr;function XYe(e){return(0,zTr.createHash)("sha1").update(e).digest("hex")}yw.scriptSha1=XYe});var ZYe=b(S5=>{"use strict";Object.defineProperty(S5,"__esModule",{value:!0});S5.digest=void 0;var qae=null;async function GTr(){if(!qae)try{qae=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return qae}async function YTr(e){let t=await GTr(),r=typeof e=="string"?e:new Uint8Array(e);return t.xxh64(r).toString(16).padStart(16,"0")}S5.digest=YTr});var eWe=b(jae=>{"use strict";Object.defineProperty(jae,"__esModule",{value:!0});jae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","CAT"),t&&e.push(t)},transformReply:void 0}});var tWe=b(Hae=>{"use strict";Object.defineProperty(Hae,"__esModule",{value:!0});Hae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","DELUSER"),e.pushVariadic(t)},transformReply:void 0}});var rWe=b(Kae=>{"use strict";Object.defineProperty(Kae,"__esModule",{value:!0});Kae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ACL","DRYRUN",t,...r)},transformReply:void 0}});var nWe=b(Vae=>{"use strict";Object.defineProperty(Vae,"__esModule",{value:!0});Vae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","GENPASS"),t&&e.push(t.toString())},transformReply:void 0}});var iWe=b(zae=>{"use strict";Object.defineProperty(zae,"__esModule",{value:!0});zae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","GETUSER",t)},transformReply:{2:e=>({flags:e[1],passwords:e[3],commands:e[5],keys:e[7],channels:e[9],selectors:e[11]?.map(t=>{let r=t;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var sWe=b(Qae=>{"use strict";Object.defineProperty(Qae,"__esModule",{value:!0});Qae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","LIST")},transformReply:void 0}});var aWe=b(Gae=>{"use strict";Object.defineProperty(Gae,"__esModule",{value:!0});Gae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","LOAD")},transformReply:void 0}});var pp=b(w5=>{"use strict";Object.defineProperty(w5,"__esModule",{value:!0});w5.BasicCommandParser=void 0;var Yae=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let t=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.transformRedisJsonNullReply=He.transformRedisJsonReply=He.transformRedisJsonArgument=He.transformStreamsMessagesReplyResp3=He.transformStreamsMessagesReplyResp2=He.transformStreamMessagesReply=He.transformStreamMessageNullReply=He.transformStreamMessageReply=He.parseArgs=He.parseZKeysArguments=He.transformRangeReply=He.parseSlotRangesArguments=He.transformFunctionListItemReply=He.RedisFunctionFlags=He.transformCommandReply=He.CommandCategories=He.CommandFlags=He.parseOptionalVariadicArgument=He.pushVariadicArgument=He.pushVariadicNumberArguments=He.pushVariadicArguments=He.pushEvalArguments=He.evalFirstKeyIndex=He.transformPXAT=He.transformEXAT=He.transformSortedSetReply=He.transformTuplesReply=He.createTransformTuplesReplyFunc=He.transformTuplesToMap=He.transformNullableDoubleReply=He.createTransformNullableDoubleReplyResp2Func=He.transformDoubleArrayReply=He.createTransformDoubleReplyResp2Func=He.transformDoubleReply=He.transformStringDoubleArgument=He.transformDoubleArgument=He.transformBooleanArrayReply=He.transformBooleanReply=He.isArrayReply=He.isNullReply=void 0;var WTr=pp(),Wae=E5();function Xae(e){return e===null}He.isNullReply=Xae;function XTr(e){return Array.isArray(e)}He.isArrayReply=XTr;He.transformBooleanReply={2:e=>e===1,3:void 0};He.transformBooleanArrayReply={2:e=>e.map(He.transformBooleanReply[2]),3:void 0};function I5(e){switch(e){case 1/0:return"+inf";case-1/0:return"-inf";default:return e.toString()}}He.transformDoubleArgument=I5;function JTr(e){return typeof e!="number"?e:I5(e)}He.transformStringDoubleArgument=JTr;He.transformDoubleReply={2:(e,t,r)=>{switch(r?r[Wae.RESP_TYPES.DOUBLE]:void 0){case String:return e;default:{let i;switch(e.toString()){case"inf":case"+inf":i=1/0;case"-inf":i=-1/0;case"nan":i=NaN;default:i=Number(e)}return i}}},3:void 0};function dWe(e,t){return r=>He.transformDoubleReply[2](r,e,t)}He.createTransformDoubleReplyResp2Func=dWe;He.transformDoubleArrayReply={2:(e,t,r)=>e.map(dWe(t,r)),3:void 0};function ZTr(e,t){return r=>He.transformNullableDoubleReply[2](r,e,t)}He.createTransformNullableDoubleReplyResp2Func=ZTr;He.transformNullableDoubleReply={2:(e,t,r)=>e===null?null:He.transformDoubleReply[2](e,t,r),3:void 0};function e2r(e,t){let r=Object.create(null);for(let n=0;nJae(r,e,t)}He.createTransformTuplesReplyFunc=t2r;function Jae(e,t,r){let n=r?r[Wae.RESP_TYPES.MAP]:void 0,i=e;switch(n){case Array:return e;case Map:{let s=new Map;for(let a=0;a{let n=e,i=[];for(let s=0;se.map(t=>{let[r,n]=t;return{value:r,score:n}})};function r2r(e){return(typeof e=="number"?e:Math.floor(e.getTime()/1e3)).toString()}He.transformEXAT=r2r;function n2r(e){return(typeof e=="number"?e:e.getTime()).toString()}He.transformPXAT=n2r;function i2r(e){return e?.keys?.[0]}He.evalFirstKeyIndex=i2r;function s2r(e,t){return t?.keys?e.push(t.keys.length.toString(),...t.keys):e.push("0"),t?.arguments&&e.push(...t.arguments),e}He.pushEvalArguments=s2r;function a2r(e,t){return Array.isArray(t)?e=e.concat(t):e.push(t),e}He.pushVariadicArguments=a2r;function o2r(e,t){if(Array.isArray(t))for(let r of t)e.push(r.toString());else e.push(t.toString());return e}He.pushVariadicNumberArguments=o2r;function u2r(e,t){return Array.isArray(t)?e.push(t.length.toString(),...t):e.push("1",t),e}He.pushVariadicArgument=u2r;function c2r(e,t,r){r!==void 0&&(e.push(t),e.pushVariadicWithLength(r))}He.parseOptionalVariadicArgument=c2r;var oWe;(function(e){e.WRITE="write",e.READONLY="readonly",e.DENYOOM="denyoom",e.ADMIN="admin",e.PUBSUB="pubsub",e.NOSCRIPT="noscript",e.RANDOM="random",e.SORT_FOR_SCRIPT="sort_for_script",e.LOADING="loading",e.STALE="stale",e.SKIP_MONITOR="skip_monitor",e.ASKING="asking",e.FAST="fast",e.MOVABLEKEYS="movablekeys"})(oWe||(He.CommandFlags=oWe={}));var uWe;(function(e){e.KEYSPACE="@keyspace",e.READ="@read",e.WRITE="@write",e.SET="@set",e.SORTEDSET="@sortedset",e.LIST="@list",e.HASH="@hash",e.STRING="@string",e.BITMAP="@bitmap",e.HYPERLOGLOG="@hyperloglog",e.GEO="@geo",e.STREAM="@stream",e.PUBSUB="@pubsub",e.ADMIN="@admin",e.FAST="@fast",e.SLOW="@slow",e.BLOCKING="@blocking",e.DANGEROUS="@dangerous",e.CONNECTION="@connection",e.TRANSACTION="@transaction",e.SCRIPTING="@scripting"})(uWe||(He.CommandCategories=uWe={}));function l2r([e,t,r,n,i,s,a]){return{name:e,arity:t,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:i,step:s,categories:new Set(a)}}He.transformCommandReply=l2r;var cWe;(function(e){e.NO_WRITES="no-writes",e.ALLOW_OOM="allow-oom",e.ALLOW_STALE="allow-stale",e.NO_CLUSTER="no-cluster"})(cWe||(He.RedisFunctionFlags=cWe={}));function d2r(e){return{libraryName:e[1],engine:e[3],functions:e[5].map(t=>({name:t[1],description:t[3],flags:t[5]}))}}He.transformFunctionListItemReply=d2r;function lWe(e,t){e.push(t.start.toString(),t.end.toString())}function f2r(e,t){if(Array.isArray(t))for(let r of t)lWe(e,r);else lWe(e,t)}He.parseSlotRangesArguments=f2r;function p2r([e,t]){return{start:e,end:t}}He.transformRangeReply=p2r;function h2r(e,t){if(Array.isArray(t)){if(e.push(t.length.toString()),t.length)if(m2r(t))e.pushKeys(t);else{for(let r=0;r{"use strict";Object.defineProperty(eoe,"__esModule",{value:!0});var E2r=Le();eoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","LOG"),t!=null&&e.push(t.toString())},transformReply:{2:(e,t,r)=>e.map(n=>{let i=n;return{count:i[1],reason:i[3],context:i[5],object:i[7],username:i[9],"age-seconds":E2r.transformDoubleReply[2](i[11],t,r),"client-info":i[13],"entry-id":i[15],"timestamp-created":i[17],"timestamp-last-updated":i[19]}}),3:void 0}}});var hWe=b(VR=>{"use strict";var S2r=VR&&VR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VR,"__esModule",{value:!0});var w2r=S2r(toe());VR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:w2r.default.IS_READ_ONLY,parseCommand(e){e.push("ACL","LOG","RESET")},transformReply:void 0}});var mWe=b(roe=>{"use strict";Object.defineProperty(roe,"__esModule",{value:!0});roe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","SAVE")},transformReply:void 0}});var gWe=b(noe=>{"use strict";Object.defineProperty(noe,"__esModule",{value:!0});noe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ACL","SETUSER",t),e.pushVariadic(r)},transformReply:void 0}});var yWe=b(ioe=>{"use strict";Object.defineProperty(ioe,"__esModule",{value:!0});ioe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","USERS")},transformReply:void 0}});var _We=b(soe=>{"use strict";Object.defineProperty(soe,"__esModule",{value:!0});soe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","WHOAMI")},transformReply:void 0}});var AWe=b(aoe=>{"use strict";Object.defineProperty(aoe,"__esModule",{value:!0});aoe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("APPEND",t,r)},transformReply:void 0}});var ooe=b(_w=>{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});_w.ASKING_CMD=void 0;_w.ASKING_CMD="ASKING";_w.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push(_w.ASKING_CMD)},transformReply:void 0}});var vWe=b(uoe=>{"use strict";Object.defineProperty(uoe,"__esModule",{value:!0});uoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,{username:t,password:r}){e.push("AUTH"),t!==void 0&&e.push(t),e.push(r)},transformReply:void 0}});var bWe=b(coe=>{"use strict";Object.defineProperty(coe,"__esModule",{value:!0});coe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("BGREWRITEAOF")},transformReply:void 0}});var EWe=b(loe=>{"use strict";Object.defineProperty(loe,"__esModule",{value:!0});loe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("BGSAVE"),t?.SCHEDULE&&e.push("SCHEDULE")},transformReply:void 0}});var SWe=b(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});doe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BITCOUNT"),e.pushKey(t),r&&(e.push(r.start.toString()),e.push(r.end.toString()),r.mode&&e.push(r.mode))},transformReply:void 0}});var wWe=b(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});foe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BITFIELD_RO"),e.pushKey(t);for(let n of r)e.push("GET"),e.push(n.encoding),e.push(n.offset.toString())},transformReply:void 0}});var IWe=b(poe=>{"use strict";Object.defineProperty(poe,"__esModule",{value:!0});poe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BITFIELD"),e.pushKey(t);for(let n of r)switch(n.operation){case"GET":e.push("GET",n.encoding,n.offset.toString());break;case"SET":e.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":e.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":e.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var xWe=b(hoe=>{"use strict";Object.defineProperty(hoe,"__esModule",{value:!0});hoe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BITOP",t),e.pushKey(r),e.pushKeys(n)},transformReply:void 0}});var CWe=b(moe=>{"use strict";Object.defineProperty(moe,"__esModule",{value:!0});moe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i,s){e.push("BITPOS"),e.pushKey(t),e.push(r.toString()),n!==void 0&&e.push(n.toString()),i!==void 0&&e.push(i.toString()),s&&e.push(s)},transformReply:void 0}});var TWe=b(goe=>{"use strict";Object.defineProperty(goe,"__esModule",{value:!0});goe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s){e.push("BLMOVE"),e.pushKeys([t,r]),e.push(n,i,s.toString())},transformReply:void 0}});var yoe=b(zR=>{"use strict";Object.defineProperty(zR,"__esModule",{value:!0});zR.parseLMPopArguments=void 0;function NWe(e,t,r,n){e.pushKeysLength(t),e.push(r),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString())}zR.parseLMPopArguments=NWe;zR.default={IS_READ_ONLY:!1,parseCommand(e,...t){e.push("LMPOP"),NWe(e,...t)},transformReply:void 0}});var DWe=b(cm=>{"use strict";var I2r=cm&&cm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),x2r=cm&&cm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),C2r=cm&&cm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&I2r(t,e,r);return x2r(t,e),t};Object.defineProperty(cm,"__esModule",{value:!0});var RWe=C2r(yoe());cm.default={IS_READ_ONLY:!1,parseCommand(e,t,...r){e.push("BLMPOP",t.toString()),(0,RWe.parseLMPopArguments)(e,...r)},transformReply:RWe.default.transformReply}});var Aoe=b(_oe=>{"use strict";Object.defineProperty(_oe,"__esModule",{value:!0});_oe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BLPOP"),e.pushKeys(t),e.push(r.toString())},transformReply(e){return e===null?null:{key:e[0],element:e[1]}}}});var kWe=b(QR=>{"use strict";var T2r=QR&&QR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QR,"__esModule",{value:!0});var N2r=T2r(Aoe());QR.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BRPOP"),e.pushKeys(t),e.push(r.toString())},transformReply:N2r.default.transformReply}});var OWe=b(voe=>{"use strict";Object.defineProperty(voe,"__esModule",{value:!0});voe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BRPOPLPUSH"),e.pushKeys([t,r]),e.push(n.toString())},transformReply:void 0}});var boe=b(GR=>{"use strict";Object.defineProperty(GR,"__esModule",{value:!0});GR.parseZMPopArguments=void 0;var PWe=Le();function MWe(e,t,r,n){e.pushKeysLength(t),e.push(r),n?.COUNT&&e.push("COUNT",n.COUNT.toString())}GR.parseZMPopArguments=MWe;GR.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZMPOP"),MWe(e,t,r,n)},transformReply:{2(e,t,r){return e===null?null:{key:e[0],members:e[1].map(n=>{let[i,s]=n;return{value:i,score:PWe.transformDoubleReply[2](s,t,r)}})}},3(e){return e===null?null:{key:e[0],members:PWe.transformSortedSetReply[3](e[1])}}}}});var BWe=b(lm=>{"use strict";var R2r=lm&&lm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),D2r=lm&&lm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),k2r=lm&&lm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&R2r(t,e,r);return D2r(t,e),t};Object.defineProperty(lm,"__esModule",{value:!0});var LWe=k2r(boe());lm.default={IS_READ_ONLY:!1,parseCommand(e,t,...r){e.push("BZMPOP",t.toString()),(0,LWe.parseZMPopArguments)(e,...r)},transformReply:LWe.default.transformReply}});var Soe=b(Eoe=>{"use strict";Object.defineProperty(Eoe,"__esModule",{value:!0});var O2r=Le();Eoe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BZPOPMAX"),e.pushKeys(t),e.push(r.toString())},transformReply:{2(e,t,r){return e===null?null:{key:e[0],value:e[1],score:O2r.transformDoubleReply[2](e[2],t,r)}},3(e){return e===null?null:{key:e[0],value:e[1],score:e[2]}}}}});var FWe=b(YR=>{"use strict";var P2r=YR&&YR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YR,"__esModule",{value:!0});var $We=P2r(Soe());YR.default={IS_READ_ONLY:$We.default.IS_READ_ONLY,parseCommand(e,t,r){e.push("BZPOPMIN"),e.pushKeys(t),e.push(r.toString())},transformReply:$We.default.transformReply}});var UWe=b(woe=>{"use strict";Object.defineProperty(woe,"__esModule",{value:!0});woe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","CACHING",t?"YES":"NO")},transformReply:void 0}});var qWe=b(Ioe=>{"use strict";Object.defineProperty(Ioe,"__esModule",{value:!0});Ioe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","GETNAME")},transformReply:void 0}});var jWe=b(xoe=>{"use strict";Object.defineProperty(xoe,"__esModule",{value:!0});xoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","GETREDIR")},transformReply:void 0}});var HWe=b(Coe=>{"use strict";Object.defineProperty(Coe,"__esModule",{value:!0});Coe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","ID")},transformReply:void 0}});var Noe=b(Toe=>{"use strict";Object.defineProperty(Toe,"__esModule",{value:!0});var M2r=/([^\s=]+)=([^\s]*)/g;Toe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","INFO")},transformReply(e){let t={};for(let n of e.toString().matchAll(M2r))t[n[1]]=n[2];let r={id:Number(t.id),addr:t.addr,fd:Number(t.fd),name:t.name,age:Number(t.age),idle:Number(t.idle),flags:t.flags,db:Number(t.db),sub:Number(t.sub),psub:Number(t.psub),multi:Number(t.multi),qbuf:Number(t.qbuf),qbufFree:Number(t["qbuf-free"]),argvMem:Number(t["argv-mem"]),obl:Number(t.obl),oll:Number(t.oll),omem:Number(t.omem),totMem:Number(t["tot-mem"]),events:t.events,cmd:t.cmd,user:t.user,libName:t["lib-name"],libVer:t["lib-ver"]};return t.laddr!==void 0&&(r.laddr=t.laddr),t.redir!==void 0&&(r.redir=Number(t.redir)),t.ssub!==void 0&&(r.ssub=Number(t.ssub)),t["multi-mem"]!==void 0&&(r.multiMem=Number(t["multi-mem"])),t.resp!==void 0&&(r.resp=Number(t.resp)),r}}});var VWe=b(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.CLIENT_KILL_FILTERS=void 0;Ic.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Ic.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){if(e.push("CLIENT","KILL"),Array.isArray(t))for(let r of t)KWe(e,r);else KWe(e,t)},transformReply:void 0};function KWe(e,t){if(t===Ic.CLIENT_KILL_FILTERS.SKIP_ME){e.push("SKIPME");return}switch(e.push(t.filter),t.filter){case Ic.CLIENT_KILL_FILTERS.ADDRESS:e.push(t.address);break;case Ic.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:e.push(t.localAddress);break;case Ic.CLIENT_KILL_FILTERS.ID:e.push(typeof t.id=="number"?t.id.toString():t.id);break;case Ic.CLIENT_KILL_FILTERS.TYPE:e.push(t.type);break;case Ic.CLIENT_KILL_FILTERS.USER:e.push(t.username);break;case Ic.CLIENT_KILL_FILTERS.SKIP_ME:e.push(t.skipMe?"yes":"no");break;case Ic.CLIENT_KILL_FILTERS.MAXAGE:e.push(t.maxAge.toString());break}}});var zWe=b(WR=>{"use strict";var L2r=WR&&WR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WR,"__esModule",{value:!0});var B2r=L2r(Noe());WR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","LIST"),t&&(t.TYPE!==void 0?e.push("TYPE",t.TYPE):(e.push("ID"),e.pushVariadic(t.ID)))},transformReply(e){let t=e.toString().split(` -`),r=t.length-1,n=[];for(let i=0;i{"use strict";Object.defineProperty(Roe,"__esModule",{value:!0});Roe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","NO-EVICT",t?"ON":"OFF")},transformReply:void 0}});var GWe=b(Doe=>{"use strict";Object.defineProperty(Doe,"__esModule",{value:!0});Doe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","NO-TOUCH",t?"ON":"OFF")},transformReply:void 0}});var YWe=b(koe=>{"use strict";Object.defineProperty(koe,"__esModule",{value:!0});koe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLIENT","PAUSE",t.toString()),r&&e.push(r)},transformReply:void 0}});var WWe=b(Ooe=>{"use strict";Object.defineProperty(Ooe,"__esModule",{value:!0});Ooe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","SETNAME",t)},transformReply:void 0}});var XWe=b(Poe=>{"use strict";Object.defineProperty(Poe,"__esModule",{value:!0});Poe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){if(e.push("CLIENT","TRACKING",t?"ON":"OFF"),t){if(r?.REDIRECT&&e.push("REDIRECT",r.REDIRECT.toString()),$2r(r)){if(e.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)e.push("PREFIX",n);else e.push("PREFIX",r.PREFIX)}else F2r(r)?e.push("OPTIN"):U2r(r)&&e.push("OPTOUT");r?.NOLOOP&&e.push("NOLOOP")}},transformReply:void 0};function $2r(e){return e?.BCAST===!0}function F2r(e){return e?.OPTIN===!0}function U2r(e){return e?.OPTOUT===!0}});var JWe=b(Moe=>{"use strict";Object.defineProperty(Moe,"__esModule",{value:!0});Moe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","TRACKINGINFO")},transformReply:{2:e=>({flags:e[1],redirect:e[3],prefixes:e[5]}),3:void 0}}});var ZWe=b(Loe=>{"use strict";Object.defineProperty(Loe,"__esModule",{value:!0});Loe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","UNPAUSE")},transformReply:void 0}});var eXe=b(Boe=>{"use strict";Object.defineProperty(Boe,"__esModule",{value:!0});Boe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","ADDSLOTS"),e.pushVariadicNumber(t)},transformReply:void 0}});var tXe=b($oe=>{"use strict";Object.defineProperty($oe,"__esModule",{value:!0});var q2r=Le();$oe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","ADDSLOTSRANGE"),(0,q2r.parseSlotRangesArguments)(e,t)},transformReply:void 0}});var rXe=b(Foe=>{"use strict";Object.defineProperty(Foe,"__esModule",{value:!0});Foe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var nXe=b(Uoe=>{"use strict";Object.defineProperty(Uoe,"__esModule",{value:!0});Uoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","COUNT-FAILURE-REPORTS",t)},transformReply:void 0}});var iXe=b(qoe=>{"use strict";Object.defineProperty(qoe,"__esModule",{value:!0});qoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","COUNTKEYSINSLOT",t.toString())},transformReply:void 0}});var sXe=b(joe=>{"use strict";Object.defineProperty(joe,"__esModule",{value:!0});joe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","DELSLOTS"),e.pushVariadicNumber(t)},transformReply:void 0}});var aXe=b(Hoe=>{"use strict";Object.defineProperty(Hoe,"__esModule",{value:!0});var j2r=Le();Hoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","DELSLOTSRANGE"),(0,j2r.parseSlotRangesArguments)(e,t)},transformReply:void 0}});var oXe=b(XR=>{"use strict";Object.defineProperty(XR,"__esModule",{value:!0});XR.FAILOVER_MODES=void 0;XR.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};XR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","FAILOVER"),t?.mode&&e.push(t.mode)},transformReply:void 0}});var uXe=b(Koe=>{"use strict";Object.defineProperty(Koe,"__esModule",{value:!0});Koe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var cXe=b(Voe=>{"use strict";Object.defineProperty(Voe,"__esModule",{value:!0});Voe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","FORGET",t)},transformReply:void 0}});var lXe=b(zoe=>{"use strict";Object.defineProperty(zoe,"__esModule",{value:!0});zoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLUSTER","GETKEYSINSLOT",t.toString(),r.toString())},transformReply:void 0}});var dXe=b(Qoe=>{"use strict";Object.defineProperty(Qoe,"__esModule",{value:!0});Qoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","INFO")},transformReply:void 0}});var fXe=b(Goe=>{"use strict";Object.defineProperty(Goe,"__esModule",{value:!0});Goe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","KEYSLOT",t)},transformReply:void 0}});var pXe=b(Yoe=>{"use strict";Object.defineProperty(Yoe,"__esModule",{value:!0});Yoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","LINKS")},transformReply:{2:e=>e.map(t=>{let r=t;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var hXe=b(Woe=>{"use strict";Object.defineProperty(Woe,"__esModule",{value:!0});Woe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLUSTER","MEET",t,r.toString())},transformReply:void 0}});var mXe=b(Xoe=>{"use strict";Object.defineProperty(Xoe,"__esModule",{value:!0});Xoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","MYID")},transformReply:void 0}});var gXe=b(Joe=>{"use strict";Object.defineProperty(Joe,"__esModule",{value:!0});Joe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var yXe=b(Zoe=>{"use strict";Object.defineProperty(Zoe,"__esModule",{value:!0});Zoe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","NODES")},transformReply:void 0}});var _Xe=b(eue=>{"use strict";Object.defineProperty(eue,"__esModule",{value:!0});eue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","REPLICAS",t)},transformReply:void 0}});var AXe=b(tue=>{"use strict";Object.defineProperty(tue,"__esModule",{value:!0});tue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","REPLICATE",t)},transformReply:void 0}});var vXe=b(rue=>{"use strict";Object.defineProperty(rue,"__esModule",{value:!0});rue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","RESET"),t?.mode&&e.push(t.mode)},transformReply:void 0}});var bXe=b(nue=>{"use strict";Object.defineProperty(nue,"__esModule",{value:!0});nue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var EXe=b(iue=>{"use strict";Object.defineProperty(iue,"__esModule",{value:!0});iue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","SET-CONFIG-EPOCH",t.toString())},transformReply:void 0}});var SXe=b(JR=>{"use strict";Object.defineProperty(JR,"__esModule",{value:!0});JR.CLUSTER_SLOT_STATES=void 0;JR.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};JR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("CLUSTER","SETSLOT",t.toString(),r),n&&e.push(n)},transformReply:void 0}});var IXe=b(sue=>{"use strict";Object.defineProperty(sue,"__esModule",{value:!0});sue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","SLOTS")},transformReply(e){return e.map(([t,r,n,...i])=>({from:t,to:r,master:wXe(n),replicas:i.map(wXe)}))}};function wXe(e){let[t,r,n]=e;return{host:t,port:r,id:n}}});var xXe=b(aue=>{"use strict";Object.defineProperty(aue,"__esModule",{value:!0});aue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("COMMAND","COUNT")},transformReply:void 0}});var CXe=b(oue=>{"use strict";Object.defineProperty(oue,"__esModule",{value:!0});oue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","GETKEYS"),e.push(...t)},transformReply:void 0}});var TXe=b(uue=>{"use strict";Object.defineProperty(uue,"__esModule",{value:!0});uue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","GETKEYSANDFLAGS"),e.push(...t)},transformReply(e){return e.map(t=>{let[r,n]=t;return{key:r,flags:n}})}}});var NXe=b(cue=>{"use strict";Object.defineProperty(cue,"__esModule",{value:!0});var H2r=Le();cue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","INFO",...t)},transformReply(e){return e.map(t=>t?(0,H2r.transformCommandReply)(t):null)}}});var RXe=b(ZR=>{"use strict";Object.defineProperty(ZR,"__esModule",{value:!0});ZR.COMMAND_LIST_FILTER_BY=void 0;ZR.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};ZR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","LIST"),t?.FILTERBY&&e.push("FILTERBY",t.FILTERBY.type,t.FILTERBY.value)},transformReply:void 0}});var DXe=b(lue=>{"use strict";Object.defineProperty(lue,"__esModule",{value:!0});var K2r=Le();lue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("COMMAND")},transformReply(e){return e.map(K2r.transformCommandReply)}}});var kXe=b(due=>{"use strict";Object.defineProperty(due,"__esModule",{value:!0});var V2r=Le();due.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CONFIG","GET"),e.pushVariadic(t)},transformReply:{2:V2r.transformTuplesReply,3:void 0}}});var OXe=b(fue=>{"use strict";Object.defineProperty(fue,"__esModule",{value:!0});fue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CONFIG","RESETSTAT")},transformReply:void 0}});var PXe=b(pue=>{"use strict";Object.defineProperty(pue,"__esModule",{value:!0});pue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CONFIG","REWRITE")},transformReply:void 0}});var MXe=b(hue=>{"use strict";Object.defineProperty(hue,"__esModule",{value:!0});hue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,...[t,r]){if(e.push("CONFIG","SET"),typeof t=="string"||t instanceof Buffer)e.push(t,r);else for(let[n,i]of Object.entries(t))e.push(n,i)},transformReply:void 0}});var LXe=b(mue=>{"use strict";Object.defineProperty(mue,"__esModule",{value:!0});mue.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("COPY"),e.pushKeys([t,r]),n?.DB&&e.push("DB",n.DB.toString()),n?.REPLACE&&e.push("REPLACE")},transformReply:void 0}});var BXe=b(gue=>{"use strict";Object.defineProperty(gue,"__esModule",{value:!0});gue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("DBSIZE")},transformReply:void 0}});var $Xe=b(yue=>{"use strict";Object.defineProperty(yue,"__esModule",{value:!0});yue.default={parseCommand(e,t){e.push("DECR"),e.pushKey(t)},transformReply:void 0}});var FXe=b(_ue=>{"use strict";Object.defineProperty(_ue,"__esModule",{value:!0});_ue.default={parseCommand(e,t,r){e.push("DECRBY"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var UXe=b(Aue=>{"use strict";Object.defineProperty(Aue,"__esModule",{value:!0});Aue.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("DEL"),e.pushKeys(t)},transformReply:void 0}});var qXe=b(eD=>{"use strict";Object.defineProperty(eD,"__esModule",{value:!0});eD.DelexCondition=void 0;eD.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};eD.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("DELEX"),e.pushKey(t),r&&(e.push(r.condition),e.push(r.matchValue))},transformReply:void 0}});var jXe=b(vue=>{"use strict";Object.defineProperty(vue,"__esModule",{value:!0});vue.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("DIGEST"),e.pushKey(t)},transformReply:void 0}});var HXe=b(bue=>{"use strict";Object.defineProperty(bue,"__esModule",{value:!0});bue.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("DUMP"),e.pushKey(t)},transformReply:void 0}});var KXe=b(Eue=>{"use strict";Object.defineProperty(Eue,"__esModule",{value:!0});Eue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ECHO",t)},transformReply:void 0}});var xv=b(tD=>{"use strict";Object.defineProperty(tD,"__esModule",{value:!0});tD.parseEvalArguments=void 0;function VXe(e,t,r){e.push(t),r?.keys?e.pushKeysLength(r.keys):e.push("0"),r?.arguments&&e.push(...r.arguments)}tD.parseEvalArguments=VXe;tD.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("EVAL"),VXe(...e)},transformReply:void 0}});var QXe=b(dm=>{"use strict";var z2r=dm&&dm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Q2r=dm&&dm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),G2r=dm&&dm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&z2r(t,e,r);return Q2r(t,e),t};Object.defineProperty(dm,"__esModule",{value:!0});var zXe=G2r(xv());dm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("EVAL_RO"),(0,zXe.parseEvalArguments)(...e)},transformReply:zXe.default.transformReply}});var YXe=b(fm=>{"use strict";var Y2r=fm&&fm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),W2r=fm&&fm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),X2r=fm&&fm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Y2r(t,e,r);return W2r(t,e),t};Object.defineProperty(fm,"__esModule",{value:!0});var GXe=X2r(xv());fm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("EVALSHA_RO"),(0,GXe.parseEvalArguments)(...e)},transformReply:GXe.default.transformReply}});var XXe=b(pm=>{"use strict";var J2r=pm&&pm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Z2r=pm&&pm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),eNr=pm&&pm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&J2r(t,e,r);return Z2r(t,e),t};Object.defineProperty(pm,"__esModule",{value:!0});var WXe=eNr(xv());pm.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("EVALSHA"),(0,WXe.parseEvalArguments)(...e)},transformReply:WXe.default.transformReply}});var ZXe=b(Sue=>{"use strict";Object.defineProperty(Sue,"__esModule",{value:!0});Sue.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){if(e.push("GEOADD"),e.pushKey(t),n?.condition?e.push(n.condition):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.CH&&e.push("CH"),Array.isArray(r))for(let i of r)JXe(e,i);else JXe(e,r)},transformReply:void 0};function JXe(e,{longitude:t,latitude:r,member:n}){e.push(t.toString(),r.toString(),n)}});var eJe=b(wue=>{"use strict";Object.defineProperty(wue,"__esModule",{value:!0});wue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("GEODIST"),e.pushKey(t),e.push(r,n),i&&e.push(i)},transformReply(e){return e===null?null:Number(e)}}});var tJe=b(Iue=>{"use strict";Object.defineProperty(Iue,"__esModule",{value:!0});Iue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GEOHASH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var rJe=b(xue=>{"use strict";Object.defineProperty(xue,"__esModule",{value:!0});xue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GEOPOS"),e.pushKey(t),e.pushVariadic(r)},transformReply(e){return e.map(t=>{let r=t;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var Tv=b(Cv=>{"use strict";Object.defineProperty(Cv,"__esModule",{value:!0});Cv.parseGeoSearchOptions=Cv.parseGeoSearchArguments=void 0;function nJe(e,t,r,n,i){e.pushKey(t),typeof r=="string"||r instanceof Buffer?e.push("FROMMEMBER",r):e.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?e.push("BYRADIUS",n.radius.toString(),n.unit):e.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),iJe(e,i)}Cv.parseGeoSearchArguments=nJe;function iJe(e,t){t?.SORT&&e.push(t.SORT),t?.COUNT&&(typeof t.COUNT=="number"?e.push("COUNT",t.COUNT.toString()):(e.push("COUNT",t.COUNT.value.toString()),t.COUNT.ANY&&e.push("ANY")))}Cv.parseGeoSearchOptions=iJe;Cv.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("GEOSEARCH"),nJe(e,t,r,n,i)},transformReply:void 0}});var nD=b(rD=>{"use strict";Object.defineProperty(rD,"__esModule",{value:!0});rD.parseGeoRadiusArguments=void 0;var tNr=Tv();function sJe(e,t,r,n,i,s){e.pushKey(t),e.push(r.longitude.toString(),r.latitude.toString(),n.toString(),i),(0,tNr.parseGeoSearchOptions)(e,s)}rD.parseGeoRadiusArguments=sJe;rD.default={IS_READ_ONLY:!1,parseCommand(...e){return e[0].push("GEORADIUS"),sJe(...e)},transformReply:void 0}});var iD=b(hp=>{"use strict";var rNr=hp&&hp.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hp,"__esModule",{value:!0});hp.GEO_REPLY_WITH=void 0;var aJe=rNr(Tv());hp.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};hp.default={IS_READ_ONLY:aJe.default.IS_READ_ONLY,parseCommand(e,t,r,n,i,s){aJe.default.parseCommand(e,t,r,n,s),e.push(...i),e.preserve=i},transformReply(e,t){let r=new Set(t),n=0,i=r.has(hp.GEO_REPLY_WITH.DISTANCE)&&++n,s=r.has(hp.GEO_REPLY_WITH.HASH)&&++n,a=r.has(hp.GEO_REPLY_WITH.COORDINATES)&&++n;return e.map(o=>{let u=o,c={member:u[0]};if(i&&(c.distance=u[i]),s&&(c.hash=u[s]),a){let[l,d]=u[a];c.coordinates={longitude:l,latitude:d}}return c})}}});var x5=b(xc=>{"use strict";var nNr=xc&&xc.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),iNr=xc&&xc.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),sNr=xc&&xc.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&nNr(t,e,r);return iNr(t,e),t},aNr=xc&&xc.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xc,"__esModule",{value:!0});xc.parseGeoRadiusWithArguments=void 0;var oJe=sNr(nD()),oNr=aNr(iD());function uJe(e,t,r,n,i,s,a){(0,oJe.parseGeoRadiusArguments)(e,t,r,n,i,a),e.pushVariadic(s),e.preserve=s}xc.parseGeoRadiusWithArguments=uJe;xc.default={IS_READ_ONLY:oJe.default.IS_READ_ONLY,parseCommand(e,t,r,n,i,s,a){e.push("GEORADIUS"),uJe(e,t,r,n,i,s,a)},transformReply:oNr.default.transformReply}});var cJe=b(sD=>{"use strict";var uNr=sD&&sD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sD,"__esModule",{value:!0});var cNr=x5(),lNr=uNr(x5());sD.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUS_RO"),(0,cNr.parseGeoRadiusWithArguments)(...e)},transformReply:lNr.default.transformReply}});var dJe=b(hm=>{"use strict";var dNr=hm&&hm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fNr=hm&&hm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),pNr=hm&&hm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dNr(t,e,r);return fNr(t,e),t};Object.defineProperty(hm,"__esModule",{value:!0});var lJe=pNr(nD());hm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUS_RO"),(0,lJe.parseGeoRadiusArguments)(...e)},transformReply:lJe.default.transformReply}});var pJe=b(mm=>{"use strict";var hNr=mm&&mm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mNr=mm&&mm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gNr=mm&&mm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&hNr(t,e,r);return mNr(t,e),t};Object.defineProperty(mm,"__esModule",{value:!0});var fJe=gNr(nD());mm.default={IS_READ_ONLY:fJe.default.IS_READ_ONLY,parseCommand(e,t,r,n,i,s,a){e.push("GEORADIUS"),(0,fJe.parseGeoRadiusArguments)(e,t,r,n,i,a),a?.STOREDIST?(e.push("STOREDIST"),e.pushKey(s)):(e.push("STORE"),e.pushKey(s))},transformReply:void 0}});var oD=b(aD=>{"use strict";Object.defineProperty(aD,"__esModule",{value:!0});aD.parseGeoRadiusByMemberArguments=void 0;var yNr=Tv();function hJe(e,t,r,n,i,s){e.pushKey(t),e.push(r,n.toString(),i),(0,yNr.parseGeoSearchOptions)(e,s)}aD.parseGeoRadiusByMemberArguments=hJe;aD.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s){e.push("GEORADIUSBYMEMBER"),hJe(e,t,r,n,i,s)},transformReply:void 0}});var Cue=b(Nv=>{"use strict";var mJe=Nv&&Nv.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Nv,"__esModule",{value:!0});Nv.parseGeoRadiusByMemberWithArguments=void 0;var _Nr=mJe(oD()),ANr=Tv(),vNr=mJe(iD());function gJe(e,t,r,n,i,s,a){e.pushKey(t),e.push(r,n.toString(),i),(0,ANr.parseGeoSearchOptions)(e,a),e.push(...s),e.preserve=s}Nv.parseGeoRadiusByMemberWithArguments=gJe;Nv.default={IS_READ_ONLY:_Nr.default.IS_READ_ONLY,parseCommand(e,t,r,n,i,s,a){e.push("GEORADIUSBYMEMBER"),gJe(e,t,r,n,i,s,a)},transformReply:vNr.default.transformReply}});var _Je=b(gm=>{"use strict";var bNr=gm&&gm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ENr=gm&&gm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),SNr=gm&&gm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&bNr(t,e,r);return ENr(t,e),t};Object.defineProperty(gm,"__esModule",{value:!0});var yJe=SNr(Cue());gm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUSBYMEMBER_RO"),(0,yJe.parseGeoRadiusByMemberWithArguments)(...e)},transformReply:yJe.default.transformReply}});var vJe=b(ym=>{"use strict";var wNr=ym&&ym.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),INr=ym&&ym.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),xNr=ym&&ym.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&wNr(t,e,r);return INr(t,e),t};Object.defineProperty(ym,"__esModule",{value:!0});var AJe=xNr(oD());ym.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUSBYMEMBER_RO"),(0,AJe.parseGeoRadiusByMemberArguments)(...e)},transformReply:AJe.default.transformReply}});var EJe=b(_m=>{"use strict";var CNr=_m&&_m.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),TNr=_m&&_m.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),NNr=_m&&_m.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&CNr(t,e,r);return TNr(t,e),t};Object.defineProperty(_m,"__esModule",{value:!0});var bJe=NNr(oD());_m.default={IS_READ_ONLY:bJe.default.IS_READ_ONLY,parseCommand(e,t,r,n,i,s,a){e.push("GEORADIUSBYMEMBER"),(0,bJe.parseGeoRadiusByMemberArguments)(e,t,r,n,i,a),a?.STOREDIST?(e.push("STOREDIST"),e.pushKey(s)):(e.push("STORE"),e.pushKey(s))},transformReply:void 0}});var SJe=b(Tue=>{"use strict";Object.defineProperty(Tue,"__esModule",{value:!0});var RNr=Tv();Tue.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s){e.push("GEOSEARCHSTORE"),t!==void 0&&e.pushKey(t),(0,RNr.parseGeoSearchArguments)(e,r,n,i,s),s?.STOREDIST&&e.push("STOREDIST")},transformReply:void 0}});var wJe=b(Nue=>{"use strict";Object.defineProperty(Nue,"__esModule",{value:!0});Nue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("GET"),e.pushKey(t)},transformReply:void 0}});var IJe=b(Rue=>{"use strict";Object.defineProperty(Rue,"__esModule",{value:!0});Rue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GETBIT"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var xJe=b(Due=>{"use strict";Object.defineProperty(Due,"__esModule",{value:!0});Due.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("GETDEL"),e.pushKey(t)},transformReply:void 0}});var CJe=b(Oue=>{"use strict";Object.defineProperty(Oue,"__esModule",{value:!0});var kue=Le();Oue.default={IS_READ_ONLY:!0,parseCommand(e,t,r){if(e.push("GETEX"),e.pushKey(t),"type"in r)switch(r.type){case"EX":case"PX":e.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":e.push(r.type,(0,kue.transformEXAT)(r.value));break;case"PERSIST":e.push("PERSIST");break}else"EX"in r?e.push("EX",r.EX.toString()):"PX"in r?e.push("PX",r.PX.toString()):"EXAT"in r?e.push("EXAT",(0,kue.transformEXAT)(r.EXAT)):"PXAT"in r?e.push("PXAT",(0,kue.transformPXAT)(r.PXAT)):e.push("PERSIST")},transformReply:void 0}});var TJe=b(Pue=>{"use strict";Object.defineProperty(Pue,"__esModule",{value:!0});Pue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("GETRANGE"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var NJe=b(Mue=>{"use strict";Object.defineProperty(Mue,"__esModule",{value:!0});Mue.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GETSET"),e.pushKey(t),e.push(r)},transformReply:void 0}});var RJe=b(Lue=>{"use strict";Object.defineProperty(Lue,"__esModule",{value:!0});Lue.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("EXISTS"),e.pushKeys(t)},transformReply:void 0}});var DJe=b(Bue=>{"use strict";Object.defineProperty(Bue,"__esModule",{value:!0});Bue.default={parseCommand(e,t,r,n){e.push("EXPIRE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n)},transformReply:void 0}});var kJe=b($ue=>{"use strict";Object.defineProperty($ue,"__esModule",{value:!0});var DNr=Le();$ue.default={parseCommand(e,t,r,n){e.push("EXPIREAT"),e.pushKey(t),e.push((0,DNr.transformEXAT)(r)),n&&e.push(n)},transformReply:void 0}});var OJe=b(Fue=>{"use strict";Object.defineProperty(Fue,"__esModule",{value:!0});Fue.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("EXPIRETIME"),e.pushKey(t)},transformReply:void 0}});var PJe=b(uD=>{"use strict";Object.defineProperty(uD,"__esModule",{value:!0});uD.REDIS_FLUSH_MODES=void 0;uD.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};uD.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FLUSHALL"),t&&e.push(t)},transformReply:void 0}});var MJe=b(Uue=>{"use strict";Object.defineProperty(Uue,"__esModule",{value:!0});Uue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FLUSHDB"),t&&e.push(t)},transformReply:void 0}});var BJe=b(Am=>{"use strict";var kNr=Am&&Am.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ONr=Am&&Am.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),PNr=Am&&Am.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&kNr(t,e,r);return ONr(t,e),t};Object.defineProperty(Am,"__esModule",{value:!0});var LJe=PNr(xv());Am.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("FCALL"),(0,LJe.parseEvalArguments)(...e)},transformReply:LJe.default.transformReply}});var FJe=b(vm=>{"use strict";var MNr=vm&&vm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LNr=vm&&vm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),BNr=vm&&vm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&MNr(t,e,r);return LNr(t,e),t};Object.defineProperty(vm,"__esModule",{value:!0});var $Je=BNr(xv());vm.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("FCALL_RO"),(0,$Je.parseEvalArguments)(...e)},transformReply:$Je.default.transformReply}});var UJe=b(que=>{"use strict";Object.defineProperty(que,"__esModule",{value:!0});que.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","DELETE",t)},transformReply:void 0}});var qJe=b(jue=>{"use strict";Object.defineProperty(jue,"__esModule",{value:!0});jue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","DUMP")},transformReply:void 0}});var jJe=b(Hue=>{"use strict";Object.defineProperty(Hue,"__esModule",{value:!0});Hue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","FLUSH"),t&&e.push(t)},transformReply:void 0}});var HJe=b(Kue=>{"use strict";Object.defineProperty(Kue,"__esModule",{value:!0});Kue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","KILL")},transformReply:void 0}});var zue=b(Vue=>{"use strict";Object.defineProperty(Vue,"__esModule",{value:!0});Vue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","LIST"),t?.LIBRARYNAME&&e.push("LIBRARYNAME",t.LIBRARYNAME)},transformReply:{2:e=>e.map(t=>{let r=t;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let i=n;return{name:i[1],description:i[3],flags:i[5]}})}}),3:void 0}}});var KJe=b(cD=>{"use strict";var $Nr=cD&&cD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cD,"__esModule",{value:!0});var Que=$Nr(zue());cD.default={NOT_KEYED_COMMAND:Que.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Que.default.IS_READ_ONLY,parseCommand(...e){Que.default.parseCommand(...e),e[0].push("WITHCODE")},transformReply:{2:e=>e.map(t=>{let r=t;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let i=n;return{name:i[1],description:i[3],flags:i[5]}}),library_code:r[7]}}),3:void 0}}});var VJe=b(Gue=>{"use strict";Object.defineProperty(Gue,"__esModule",{value:!0});Gue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("FUNCTION","LOAD"),r?.REPLACE&&e.push("REPLACE"),e.push(t)},transformReply:void 0}});var zJe=b(Yue=>{"use strict";Object.defineProperty(Yue,"__esModule",{value:!0});Yue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("FUNCTION","RESTORE",t),r?.mode&&e.push(r.mode)},transformReply:void 0}});var QJe=b(Wue=>{"use strict";Object.defineProperty(Wue,"__esModule",{value:!0});var FNr=Le();Wue.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","STATS")},transformReply:{2:e=>({running_script:UNr(e[1]),engines:qNr(e[3])}),3:void 0}};function UNr(e){if((0,FNr.isNullReply)(e))return null;let t=e;return{name:t[1],command:t[3],duration_ms:t[5]}}function qNr(e){let t=e,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty(Xue,"__esModule",{value:!0});Xue.default={parseCommand(e,t,r){e.push("HDEL"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Zue=b(Jue=>{"use strict";Object.defineProperty(Jue,"__esModule",{value:!0});Jue.default={parseCommand(e,t,r){e.push("HELLO"),t&&(e.push(t.toString()),r?.AUTH&&e.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&e.push("SETNAME",r.SETNAME))},transformReply:{2:e=>({server:e[1],version:e[3],proto:e[5],id:e[7],mode:e[9],role:e[11],modules:e[13]}),3:void 0}}});var YJe=b(ece=>{"use strict";Object.defineProperty(ece,"__esModule",{value:!0});ece.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HEXISTS"),e.pushKey(t),e.push(r)},transformReply:void 0}});var WJe=b(lD=>{"use strict";Object.defineProperty(lD,"__esModule",{value:!0});lD.HASH_EXPIRATION=void 0;lD.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};lD.default={parseCommand(e,t,r,n,i){e.push("HEXPIRE"),e.pushKey(t),e.push(n.toString()),i&&e.push(i),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var XJe=b(tce=>{"use strict";Object.defineProperty(tce,"__esModule",{value:!0});var jNr=Le();tce.default={parseCommand(e,t,r,n,i){e.push("HEXPIREAT"),e.pushKey(t),e.push((0,jNr.transformEXAT)(n)),i&&e.push(i),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var JJe=b(dD=>{"use strict";Object.defineProperty(dD,"__esModule",{value:!0});dD.HASH_EXPIRATION_TIME=void 0;dD.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};dD.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HEXPIRETIME"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var ZJe=b(rce=>{"use strict";Object.defineProperty(rce,"__esModule",{value:!0});rce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HGET"),e.pushKey(t),e.push(r)},transformReply:void 0}});var eZe=b(nce=>{"use strict";Object.defineProperty(nce,"__esModule",{value:!0});var HNr=Le();nce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HGETALL"),e.pushKey(t)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:HNr.transformTuplesReply,3:void 0}}});var tZe=b(ice=>{"use strict";Object.defineProperty(ice,"__esModule",{value:!0});ice.default={parseCommand(e,t,r){e.push("HGETDEL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var rZe=b(sce=>{"use strict";Object.defineProperty(sce,"__esModule",{value:!0});sce.default={parseCommand(e,t,r,n){e.push("HGETEX"),e.pushKey(t),n?.expiration&&(typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="PERSIST"?e.push("PERSIST"):e.push(n.expiration.type,n.expiration.value.toString())),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var nZe=b(ace=>{"use strict";Object.defineProperty(ace,"__esModule",{value:!0});ace.default={parseCommand(e,t,r,n){e.push("HINCRBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:void 0}});var iZe=b(oce=>{"use strict";Object.defineProperty(oce,"__esModule",{value:!0});oce.default={parseCommand(e,t,r,n){e.push("HINCRBYFLOAT"),e.pushKey(t),e.push(r,n.toString())},transformReply:void 0}});var sZe=b(uce=>{"use strict";Object.defineProperty(uce,"__esModule",{value:!0});uce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HKEYS"),e.pushKey(t)},transformReply:void 0}});var aZe=b(cce=>{"use strict";Object.defineProperty(cce,"__esModule",{value:!0});cce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HLEN"),e.pushKey(t)},transformReply:void 0}});var oZe=b(lce=>{"use strict";Object.defineProperty(lce,"__esModule",{value:!0});lce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HMGET"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var uZe=b(dce=>{"use strict";Object.defineProperty(dce,"__esModule",{value:!0});dce.default={parseCommand(e,t,r){e.push("HPERSIST"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var cZe=b(fce=>{"use strict";Object.defineProperty(fce,"__esModule",{value:!0});fce.default={parseCommand(e,t,r,n,i){e.push("HPEXPIRE"),e.pushKey(t),e.push(n.toString()),i&&e.push(i),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var lZe=b(pce=>{"use strict";Object.defineProperty(pce,"__esModule",{value:!0});var KNr=Le();pce.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("HPEXPIREAT"),e.pushKey(t),e.push((0,KNr.transformPXAT)(n)),i&&e.push(i),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var dZe=b(hce=>{"use strict";Object.defineProperty(hce,"__esModule",{value:!0});hce.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HPEXPIRETIME"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var fZe=b(mce=>{"use strict";Object.defineProperty(mce,"__esModule",{value:!0});mce.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HPTTL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var pZe=b(gce=>{"use strict";Object.defineProperty(gce,"__esModule",{value:!0});gce.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HRANDFIELD"),e.pushKey(t),e.push(r.toString(),"WITHVALUES")},transformReply:{2:e=>{let t=[],r=0;for(;re.map(t=>{let[r,n]=t;return{field:r,value:n}})}}});var hZe=b(yce=>{"use strict";Object.defineProperty(yce,"__esModule",{value:!0});yce.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HRANDFIELD"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var mZe=b(_ce=>{"use strict";Object.defineProperty(_ce,"__esModule",{value:!0});_ce.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("HRANDFIELD"),e.pushKey(t)},transformReply:void 0}});var fD=b(Rv=>{"use strict";Object.defineProperty(Rv,"__esModule",{value:!0});Rv.pushScanArguments=Rv.parseScanArguments=void 0;function gZe(e,t,r){e.push(t),r?.MATCH&&e.push("MATCH",r.MATCH),r?.COUNT&&e.push("COUNT",r.COUNT.toString())}Rv.parseScanArguments=gZe;function VNr(e,t,r){return e.push(t.toString()),r?.MATCH&&e.push("MATCH",r.MATCH),r?.COUNT&&e.push("COUNT",r.COUNT.toString()),e}Rv.pushScanArguments=VNr;Rv.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SCAN"),gZe(e,t,r),r?.TYPE&&e.push("TYPE",r.TYPE)},transformReply([e,t]){return{cursor:e,keys:t}}}});var vce=b(Ace=>{"use strict";Object.defineProperty(Ace,"__esModule",{value:!0});var zNr=fD();Ace.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("HSCAN"),e.pushKey(t),(0,zNr.parseScanArguments)(e,r,n)},transformReply([e,t]){let r=[],n=0;for(;n{"use strict";var QNr=pD&&pD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pD,"__esModule",{value:!0});var GNr=QNr(vce());pD.default={IS_READ_ONLY:!0,parseCommand(...e){let t=e[0];GNr.default.parseCommand(...e),t.push("NOVALUES")},transformReply([e,t]){return{cursor:e,fields:t}}}});var AZe=b(bce=>{"use strict";Object.defineProperty(bce,"__esModule",{value:!0});bce.default={parseCommand(e,...[t,r,n]){e.push("HSET"),e.pushKey(t),typeof r=="string"||typeof r=="number"||r instanceof Buffer?e.push(Dv(r),Dv(n)):r instanceof Map?YNr(e,r):Array.isArray(r)?_Ze(e,r):WNr(e,r)},transformReply:void 0};function YNr(e,t){for(let[r,n]of t.entries())e.push(Dv(r),Dv(n))}function _Ze(e,t){for(let r of t){if(Array.isArray(r)){_Ze(e,r);continue}e.push(Dv(r))}}function WNr(e,t){for(let r of Object.keys(t))e.push(Dv(r),Dv(t[r]))}function Dv(e){return typeof e=="number"?e.toString():e}});var bZe=b(Ece=>{"use strict";Object.defineProperty(Ece,"__esModule",{value:!0});var XNr=pp();Ece.default={parseCommand(e,t,r,n){e.push("HSETEX"),e.pushKey(t),n?.mode&&e.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="KEEPTTL"?e.push("KEEPTTL"):e.push(n.expiration.type,n.expiration.value.toString())),e.push("FIELDS"),r instanceof Map?JNr(e,r):Array.isArray(r)?ZNr(e,r):eRr(e,r)},transformReply:void 0};function JNr(e,t){e.push(t.size.toString());for(let[r,n]of t.entries())e.push(hD(r),hD(n))}function ZNr(e,t){let r=new XNr.BasicCommandParser;if(vZe(r,t),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");e.push((r.redisArgs.length/2).toString()),e.push(...r.redisArgs)}function vZe(e,t){for(let r of t){if(Array.isArray(r)){vZe(e,r);continue}e.push(hD(r))}}function eRr(e,t){let r=Object.keys(t).length;if(r==0)throw Error("object without keys");e.push(r.toString());for(let n of Object.keys(t))e.push(hD(n),hD(t[n]))}function hD(e){return typeof e=="number"?e.toString():e}});var EZe=b(Sce=>{"use strict";Object.defineProperty(Sce,"__esModule",{value:!0});Sce.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("HSETNX"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var SZe=b(wce=>{"use strict";Object.defineProperty(wce,"__esModule",{value:!0});wce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HSTRLEN"),e.pushKey(t),e.push(r)},transformReply:void 0}});var wZe=b(Ice=>{"use strict";Object.defineProperty(Ice,"__esModule",{value:!0});Ice.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HTTL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var IZe=b(xce=>{"use strict";Object.defineProperty(xce,"__esModule",{value:!0});xce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HVALS"),e.pushKey(t)},transformReply:void 0}});var CZe=b(Cce=>{"use strict";Object.defineProperty(Cce,"__esModule",{value:!0});function xZe(e){let t=[];for(let r=0;r{let r=t;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function rRr(e){let t={},r=e[0];for(let n=0;ne===null?null:rRr(e),3:void 0},unstableResp3:!0}});var TZe=b(Tce=>{"use strict";Object.defineProperty(Tce,"__esModule",{value:!0});Tce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("HOTKEYS","RESET")},transformReply:void 0}});var NZe=b(mD=>{"use strict";Object.defineProperty(mD,"__esModule",{value:!0});mD.HOTKEYS_METRICS=void 0;mD.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};mD.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){if(e.push("HOTKEYS","START"),e.push("METRICS",t.METRICS.count.toString()),t.METRICS.CPU&&e.push("CPU"),t.METRICS.NET&&e.push("NET"),t.COUNT!==void 0&&e.push("COUNT",t.COUNT.toString()),t.DURATION!==void 0&&e.push("DURATION",t.DURATION.toString()),t.SAMPLE!==void 0&&e.push("SAMPLE",t.SAMPLE.toString()),t.SLOTS!==void 0){e.push("SLOTS",t.SLOTS.count.toString());for(let r of t.SLOTS.slots)e.push(r.toString())}},transformReply:void 0}});var RZe=b(Nce=>{"use strict";Object.defineProperty(Nce,"__esModule",{value:!0});Nce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("HOTKEYS","STOP")},transformReply:void 0}});var DZe=b(Rce=>{"use strict";Object.defineProperty(Rce,"__esModule",{value:!0});Rce.default={parseCommand(e,t){e.push("INCR"),e.pushKey(t)},transformReply:void 0}});var kZe=b(Dce=>{"use strict";Object.defineProperty(Dce,"__esModule",{value:!0});Dce.default={parseCommand(e,t,r){e.push("INCRBY"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var OZe=b(kce=>{"use strict";Object.defineProperty(kce,"__esModule",{value:!0});kce.default={parseCommand(e,t,r){e.push("INCRBYFLOAT"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var PZe=b(Oce=>{"use strict";Object.defineProperty(Oce,"__esModule",{value:!0});Oce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("INFO"),t&&e.push(t)},transformReply:void 0}});var MZe=b(Pce=>{"use strict";Object.defineProperty(Pce,"__esModule",{value:!0});Pce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("KEYS",t)},transformReply:void 0}});var LZe=b(Mce=>{"use strict";Object.defineProperty(Mce,"__esModule",{value:!0});Mce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LASTSAVE")},transformReply:void 0}});var BZe=b(Lce=>{"use strict";Object.defineProperty(Lce,"__esModule",{value:!0});Lce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LATENCY","DOCTOR")},transformReply:void 0}});var Bce=b(gD=>{"use strict";Object.defineProperty(gD,"__esModule",{value:!0});gD.LATENCY_EVENTS=void 0;gD.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};gD.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LATENCY","GRAPH",t)},transformReply:void 0}});var $Ze=b($ce=>{"use strict";Object.defineProperty($ce,"__esModule",{value:!0});$ce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LATENCY","HISTORY",t)},transformReply:void 0}});var FZe=b(Fce=>{"use strict";Object.defineProperty(Fce,"__esModule",{value:!0});Fce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LATENCY","LATEST")},transformReply:void 0}});var UZe=b(yD=>{"use strict";Object.defineProperty(yD,"__esModule",{value:!0});yD.LATENCY_EVENTS=void 0;var nRr=Bce();Object.defineProperty(yD,"LATENCY_EVENTS",{enumerable:!0,get:function(){return nRr.LATENCY_EVENTS}});yD.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,...t){let r=["LATENCY","RESET"];t.length>0&&r.push(...t),e.push(...r)},transformReply:void 0}});var C5=b(Uce=>{"use strict";Object.defineProperty(Uce,"__esModule",{value:!0});Uce.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("LCS"),e.pushKeys([t,r])},transformReply:void 0}});var qce=b(_D=>{"use strict";var iRr=_D&&_D.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_D,"__esModule",{value:!0});var qZe=iRr(C5());_D.default={IS_READ_ONLY:qZe.default.IS_READ_ONLY,parseCommand(e,t,r,n){qZe.default.parseCommand(e,t,r),e.push("IDX"),n?.MINMATCHLEN&&e.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:e=>({matches:e[1],len:e[3]}),3:void 0}}});var HZe=b(AD=>{"use strict";var sRr=AD&&AD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(AD,"__esModule",{value:!0});var jZe=sRr(qce());AD.default={IS_READ_ONLY:jZe.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];jZe.default.parseCommand(...e),t.push("WITHMATCHLEN")},transformReply:{2:e=>({matches:e[1],len:e[3]}),3:void 0}}});var VZe=b(vD=>{"use strict";var aRr=vD&&vD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vD,"__esModule",{value:!0});var KZe=aRr(C5());vD.default={IS_READ_ONLY:KZe.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];KZe.default.parseCommand(...e),t.push("LEN")},transformReply:void 0}});var zZe=b(jce=>{"use strict";Object.defineProperty(jce,"__esModule",{value:!0});jce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("LINDEX"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var QZe=b(Hce=>{"use strict";Object.defineProperty(Hce,"__esModule",{value:!0});Hce.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("LINSERT"),e.pushKey(t),e.push(r,n,i)},transformReply:void 0}});var GZe=b(Kce=>{"use strict";Object.defineProperty(Kce,"__esModule",{value:!0});Kce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LLEN"),e.pushKey(t)},transformReply:void 0}});var YZe=b(Vce=>{"use strict";Object.defineProperty(Vce,"__esModule",{value:!0});Vce.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("LMOVE"),e.pushKeys([t,r]),e.push(n,i)},transformReply:void 0}});var WZe=b(zce=>{"use strict";Object.defineProperty(zce,"__esModule",{value:!0});zce.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,...r){e.push("LOLWUT"),t&&(e.push("VERSION",t.toString()),e.pushVariadic(r.map(String)))},transformReply:void 0}});var Gce=b(Qce=>{"use strict";Object.defineProperty(Qce,"__esModule",{value:!0});Qce.default={parseCommand(e,t){e.push("LPOP"),e.pushKey(t)},transformReply:void 0}});var XZe=b(bD=>{"use strict";var oRr=bD&&bD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(bD,"__esModule",{value:!0});var uRr=oRr(Gce());bD.default={IS_READ_ONLY:!1,parseCommand(e,t,r){uRr.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var Wce=b(Yce=>{"use strict";Object.defineProperty(Yce,"__esModule",{value:!0});Yce.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LPOS"),e.pushKey(t),e.push(r),n?.RANK!==void 0&&e.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&e.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var JZe=b(ED=>{"use strict";var cRr=ED&&ED.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ED,"__esModule",{value:!0});var Xce=cRr(Wce());ED.default={CACHEABLE:Xce.default.CACHEABLE,IS_READ_ONLY:Xce.default.IS_READ_ONLY,parseCommand(e,t,r,n,i){Xce.default.parseCommand(e,t,r,i),e.push("COUNT",n.toString())},transformReply:void 0}});var ZZe=b(Jce=>{"use strict";Object.defineProperty(Jce,"__esModule",{value:!0});Jce.default={parseCommand(e,t,r){e.push("LPUSH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var eet=b(Zce=>{"use strict";Object.defineProperty(Zce,"__esModule",{value:!0});Zce.default={parseCommand(e,t,r){e.push("LPUSHX"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var tet=b(ele=>{"use strict";Object.defineProperty(ele,"__esModule",{value:!0});ele.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LRANGE"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var ret=b(tle=>{"use strict";Object.defineProperty(tle,"__esModule",{value:!0});tle.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LREM"),e.pushKey(t),e.push(r.toString()),e.push(n)},transformReply:void 0}});var net=b(rle=>{"use strict";Object.defineProperty(rle,"__esModule",{value:!0});rle.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LSET"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var iet=b(nle=>{"use strict";Object.defineProperty(nle,"__esModule",{value:!0});nle.default={parseCommand(e,t,r,n){e.push("LTRIM"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var set=b(ile=>{"use strict";Object.defineProperty(ile,"__esModule",{value:!0});ile.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","DOCTOR")},transformReply:void 0}});var aet=b(sle=>{"use strict";Object.defineProperty(sle,"__esModule",{value:!0});sle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var oet=b(ale=>{"use strict";Object.defineProperty(ale,"__esModule",{value:!0});ale.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("MEMORY","PURGE")},transformReply:void 0}});var uet=b(ole=>{"use strict";Object.defineProperty(ole,"__esModule",{value:!0});var lRr=Le();ole.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","STATS")},transformReply:{2:(e,t,r)=>{let n={},i=0;for(;i{"use strict";Object.defineProperty(ule,"__esModule",{value:!0});ule.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("MEMORY","USAGE"),e.pushKey(t),r?.SAMPLES&&e.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var det=b(cle=>{"use strict";Object.defineProperty(cle,"__esModule",{value:!0});cle.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("MGET"),e.pushKeys(t)},transformReply:void 0}});var fet=b(lle=>{"use strict";Object.defineProperty(lle,"__esModule",{value:!0});lle.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s,a){e.push("MIGRATE",t,r.toString());let o=Array.isArray(n);o?e.push(""):e.push(n),e.push(i.toString(),s.toString()),a?.COPY&&e.push("COPY"),a?.REPLACE&&e.push("REPLACE"),a?.AUTH&&(a.AUTH.username?e.push("AUTH2",a.AUTH.username,a.AUTH.password):e.push("AUTH",a.AUTH.password)),o&&(e.push("KEYS"),e.pushVariadic(n))},transformReply:void 0}});var pet=b(dle=>{"use strict";Object.defineProperty(dle,"__esModule",{value:!0});dle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MODULE","LIST")},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],ver:r[3]}}),3:void 0}}});var het=b(fle=>{"use strict";Object.defineProperty(fle,"__esModule",{value:!0});fle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("MODULE","LOAD",t),r&&e.push(...r)},transformReply:void 0}});var met=b(ple=>{"use strict";Object.defineProperty(ple,"__esModule",{value:!0});ple.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("MODULE","UNLOAD",t)},transformReply:void 0}});var get=b(hle=>{"use strict";Object.defineProperty(hle,"__esModule",{value:!0});hle.default={parseCommand(e,t,r){e.push("MOVE"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var mle=b(SD=>{"use strict";Object.defineProperty(SD,"__esModule",{value:!0});SD.parseMSetArguments=void 0;function yet(e,t){if(Array.isArray(t)){if(t.length==0)throw new Error("empty toSet Argument");if(Array.isArray(t[0]))for(let r of t)e.pushKey(r[0]),e.push(r[1]);else{let r=t;for(let n=0;n{"use strict";Object.defineProperty(Ma,"__esModule",{value:!0});Ma.parseMSetExArguments=Ma.ExpirationMode=Ma.SetMode=void 0;var _et=Le();Ma.SetMode={XX:"XX",NX:"NX"};Ma.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function Aet(e,t){let r=[];if(Array.isArray(t)){if(t.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(t[0]))r=t;else{let n=t;for(let i=0;i{"use strict";Object.defineProperty(gle,"__esModule",{value:!0});var dRr=mle();gle.default={IS_READ_ONLY:!0,parseCommand(e,t){return e.push("MSETNX"),(0,dRr.parseMSetArguments)(e,t)},transformReply:void 0}});var Eet=b(yle=>{"use strict";Object.defineProperty(yle,"__esModule",{value:!0});yle.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","ENCODING"),e.pushKey(t)},transformReply:void 0}});var wet=b(_le=>{"use strict";Object.defineProperty(_le,"__esModule",{value:!0});_le.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","FREQ"),e.pushKey(t)},transformReply:void 0}});var Iet=b(Ale=>{"use strict";Object.defineProperty(Ale,"__esModule",{value:!0});Ale.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","IDLETIME"),e.pushKey(t)},transformReply:void 0}});var xet=b(vle=>{"use strict";Object.defineProperty(vle,"__esModule",{value:!0});vle.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","REFCOUNT"),e.pushKey(t)},transformReply:void 0}});var Cet=b(ble=>{"use strict";Object.defineProperty(ble,"__esModule",{value:!0});ble.default={parseCommand(e,t){e.push("PERSIST"),e.pushKey(t)},transformReply:void 0}});var Tet=b(Ele=>{"use strict";Object.defineProperty(Ele,"__esModule",{value:!0});Ele.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("PEXPIRE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n)},transformReply:void 0}});var Net=b(Sle=>{"use strict";Object.defineProperty(Sle,"__esModule",{value:!0});var fRr=Le();Sle.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("PEXPIREAT"),e.pushKey(t),e.push((0,fRr.transformPXAT)(r)),n&&e.push(n)},transformReply:void 0}});var Ret=b(wle=>{"use strict";Object.defineProperty(wle,"__esModule",{value:!0});wle.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PEXPIRETIME"),e.pushKey(t)},transformReply:void 0}});var Det=b(Ile=>{"use strict";Object.defineProperty(Ile,"__esModule",{value:!0});Ile.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("PFADD"),e.pushKey(t),r&&e.pushVariadic(r)},transformReply:void 0}});var ket=b(xle=>{"use strict";Object.defineProperty(xle,"__esModule",{value:!0});xle.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PFCOUNT"),e.pushKeys(t)},transformReply:void 0}});var Oet=b(Cle=>{"use strict";Object.defineProperty(Cle,"__esModule",{value:!0});Cle.default={parseCommand(e,t,r){e.push("PFMERGE"),e.pushKey(t),r&&e.pushKeys(r)},transformReply:void 0}});var Pet=b(Tle=>{"use strict";Object.defineProperty(Tle,"__esModule",{value:!0});Tle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PING"),t&&e.push(t)},transformReply:void 0}});var Met=b(Nle=>{"use strict";Object.defineProperty(Nle,"__esModule",{value:!0});Nle.default={parseCommand(e,t,r,n){e.push("PSETEX"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Let=b(Rle=>{"use strict";Object.defineProperty(Rle,"__esModule",{value:!0});Rle.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PTTL"),e.pushKey(t)},transformReply:void 0}});var Bet=b(Dle=>{"use strict";Object.defineProperty(Dle,"__esModule",{value:!0});Dle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(e,t,r){e.push("PUBLISH",t,r)},transformReply:void 0}});var $et=b(kle=>{"use strict";Object.defineProperty(kle,"__esModule",{value:!0});kle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","CHANNELS"),t&&e.push(t)},transformReply:void 0}});var Fet=b(Ole=>{"use strict";Object.defineProperty(Ole,"__esModule",{value:!0});Ole.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("PUBSUB","NUMPAT")},transformReply:void 0}});var Uet=b(Ple=>{"use strict";Object.defineProperty(Ple,"__esModule",{value:!0});Ple.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","NUMSUB"),t&&e.pushVariadic(t)},transformReply(e){let t=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(Mle,"__esModule",{value:!0});Mle.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","SHARDNUMSUB"),t&&e.pushVariadic(t)},transformReply(e){let t=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(Lle,"__esModule",{value:!0});Lle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","SHARDCHANNELS"),t&&e.push(t)},transformReply:void 0}});var Het=b(Ble=>{"use strict";Object.defineProperty(Ble,"__esModule",{value:!0});Ble.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("RANDOMKEY")},transformReply:void 0}});var Ket=b($le=>{"use strict";Object.defineProperty($le,"__esModule",{value:!0});$le.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("READONLY")},transformReply:void 0}});var Vet=b(Fle=>{"use strict";Object.defineProperty(Fle,"__esModule",{value:!0});Fle.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("RENAME"),e.pushKeys([t,r])},transformReply:void 0}});var zet=b(Ule=>{"use strict";Object.defineProperty(Ule,"__esModule",{value:!0});Ule.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("RENAMENX"),e.pushKeys([t,r])},transformReply:void 0}});var Qet=b(qle=>{"use strict";Object.defineProperty(qle,"__esModule",{value:!0});qle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("REPLICAOF",t,r.toString())},transformReply:void 0}});var Get=b(jle=>{"use strict";Object.defineProperty(jle,"__esModule",{value:!0});jle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("RESTORE-ASKING")},transformReply:void 0}});var Yet=b(Hle=>{"use strict";Object.defineProperty(Hle,"__esModule",{value:!0});Hle.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("RESTORE"),e.pushKey(t),e.push(r.toString(),n),i?.REPLACE&&e.push("REPLACE"),i?.ABSTTL&&e.push("ABSTTL"),i?.IDLETIME&&e.push("IDLETIME",i.IDLETIME.toString()),i?.FREQ&&e.push("FREQ",i.FREQ.toString())},transformReply:void 0}});var Wet=b(Kle=>{"use strict";Object.defineProperty(Kle,"__esModule",{value:!0});Kle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ROLE")},transformReply(e){switch(e[0]){case"master":{let[t,r,n]=e;return{role:t,replicationOffest:r,replicas:n.map(i=>{let[s,a,o]=i;return{host:s,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[t,r,n,i,s]=e;return{role:t,master:{host:r,port:n},state:i,dataReceived:s}}case"sentinel":{let[t,r]=e;return{role:t,masterNames:r}}}}}});var Xet=b(Vle=>{"use strict";Object.defineProperty(Vle,"__esModule",{value:!0});Vle.default={parseCommand(e,t,r){e.push("RPOP"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Jet=b(zle=>{"use strict";Object.defineProperty(zle,"__esModule",{value:!0});zle.default={parseCommand(e,t){e.push("RPOP"),e.pushKey(t)},transformReply:void 0}});var Zet=b(Qle=>{"use strict";Object.defineProperty(Qle,"__esModule",{value:!0});Qle.default={parseCommand(e,t,r){e.push("RPOPLPUSH"),e.pushKeys([t,r])},transformReply:void 0}});var ett=b(Gle=>{"use strict";Object.defineProperty(Gle,"__esModule",{value:!0});Gle.default={parseCommand(e,t,r){e.push("RPUSH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var ttt=b(Yle=>{"use strict";Object.defineProperty(Yle,"__esModule",{value:!0});Yle.default={parseCommand(e,t,r){e.push("RPUSHX"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var rtt=b(Wle=>{"use strict";Object.defineProperty(Wle,"__esModule",{value:!0});Wle.default={parseCommand(e,t,r){e.push("SADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var ntt=b(Xle=>{"use strict";Object.defineProperty(Xle,"__esModule",{value:!0});Xle.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCARD"),e.pushKey(t)},transformReply:void 0}});var itt=b(Jle=>{"use strict";Object.defineProperty(Jle,"__esModule",{value:!0});Jle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","DEBUG",t)},transformReply:void 0}});var stt=b(Zle=>{"use strict";Object.defineProperty(Zle,"__esModule",{value:!0});Zle.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","EXISTS"),e.pushVariadic(t)},transformReply:void 0}});var att=b(ede=>{"use strict";Object.defineProperty(ede,"__esModule",{value:!0});ede.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","FLUSH"),t&&e.push(t)},transformReply:void 0}});var ott=b(tde=>{"use strict";Object.defineProperty(tde,"__esModule",{value:!0});tde.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("SCRIPT","KILL")},transformReply:void 0}});var utt=b(rde=>{"use strict";Object.defineProperty(rde,"__esModule",{value:!0});rde.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","LOAD",t)},transformReply:void 0}});var ctt=b(nde=>{"use strict";Object.defineProperty(nde,"__esModule",{value:!0});nde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SDIFF"),e.pushKeys(t)},transformReply:void 0}});var ltt=b(ide=>{"use strict";Object.defineProperty(ide,"__esModule",{value:!0});ide.default={parseCommand(e,t,r){e.push("SDIFFSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var dtt=b(sde=>{"use strict";Object.defineProperty(sde,"__esModule",{value:!0});sde.default={parseCommand(e,t,r,n){e.push("SET"),e.pushKey(t),e.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="KEEPTTL"?e.push("KEEPTTL"):e.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?e.push("EX",n.EX.toString()):n?.PX!==void 0?e.push("PX",n.PX.toString()):n?.EXAT!==void 0?e.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?e.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&e.push("KEEPTTL"),n?.condition?(e.push(n.condition),n?.matchValue!==void 0&&e.push(n.matchValue)):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.GET&&e.push("GET")},transformReply:void 0}});var ftt=b(ade=>{"use strict";Object.defineProperty(ade,"__esModule",{value:!0});ade.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("SETBIT"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var ptt=b(ode=>{"use strict";Object.defineProperty(ode,"__esModule",{value:!0});ode.default={parseCommand(e,t,r,n){e.push("SETEX"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var htt=b(ude=>{"use strict";Object.defineProperty(ude,"__esModule",{value:!0});ude.default={parseCommand(e,t,r){e.push("SETNX"),e.pushKey(t),e.push(r)},transformReply:void 0}});var mtt=b(cde=>{"use strict";Object.defineProperty(cde,"__esModule",{value:!0});cde.default={parseCommand(e,t,r,n){e.push("SETRANGE"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var gtt=b(lde=>{"use strict";Object.defineProperty(lde,"__esModule",{value:!0});lde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SINTER"),e.pushKeys(t)},transformReply:void 0}});var ytt=b(dde=>{"use strict";Object.defineProperty(dde,"__esModule",{value:!0});dde.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SINTERCARD"),e.pushKeysLength(t),typeof r=="number"?e.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&e.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var _tt=b(fde=>{"use strict";Object.defineProperty(fde,"__esModule",{value:!0});fde.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SINTERSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var Att=b(pde=>{"use strict";Object.defineProperty(pde,"__esModule",{value:!0});pde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SISMEMBER"),e.pushKey(t),e.push(r)},transformReply:void 0}});var vtt=b(hde=>{"use strict";Object.defineProperty(hde,"__esModule",{value:!0});hde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SMEMBERS"),e.pushKey(t)},transformReply:{2:void 0,3:void 0}}});var btt=b(mde=>{"use strict";Object.defineProperty(mde,"__esModule",{value:!0});mde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SMISMEMBER"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Ett=b(gde=>{"use strict";Object.defineProperty(gde,"__esModule",{value:!0});gde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("SMOVE"),e.pushKeys([t,r]),e.push(n)},transformReply:void 0}});var T5=b(wD=>{"use strict";Object.defineProperty(wD,"__esModule",{value:!0});wD.parseSortArguments=void 0;function Stt(e,t,r){if(e.pushKey(t),r?.BY&&e.push("BY",r.BY),r?.LIMIT&&e.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)e.push("GET",n);else e.push("GET",r.GET);r?.DIRECTION&&e.push(r.DIRECTION),r?.ALPHA&&e.push("ALPHA")}wD.parseSortArguments=Stt;wD.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SORT"),Stt(e,t,r)},transformReply:void 0}});var Itt=b(bm=>{"use strict";var pRr=bm&&bm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),hRr=bm&&bm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),mRr=bm&&bm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pRr(t,e,r);return hRr(t,e),t};Object.defineProperty(bm,"__esModule",{value:!0});var wtt=mRr(T5());bm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("SORT_RO"),(0,wtt.parseSortArguments)(...e)},transformReply:wtt.default.transformReply}});var xtt=b(ID=>{"use strict";var gRr=ID&&ID.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ID,"__esModule",{value:!0});var yRr=gRr(T5());ID.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){yRr.default.parseCommand(e,t,n),e.push("STORE",r)},transformReply:void 0}});var Ctt=b(yde=>{"use strict";Object.defineProperty(yde,"__esModule",{value:!0});yde.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SPOP"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Ttt=b(_de=>{"use strict";Object.defineProperty(_de,"__esModule",{value:!0});_de.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("SPOP"),e.pushKey(t)},transformReply:void 0}});var Ntt=b(Ade=>{"use strict";Object.defineProperty(Ade,"__esModule",{value:!0});Ade.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SPUBLISH"),e.pushKey(t),e.push(r)},transformReply:void 0}});var bde=b(vde=>{"use strict";Object.defineProperty(vde,"__esModule",{value:!0});vde.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("SRANDMEMBER"),e.pushKey(t)},transformReply:void 0}});var Dtt=b(xD=>{"use strict";var _Rr=xD&&xD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xD,"__esModule",{value:!0});var Rtt=_Rr(bde());xD.default={IS_READ_ONLY:Rtt.default.IS_READ_ONLY,parseCommand(e,t,r){Rtt.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var ktt=b(Ede=>{"use strict";Object.defineProperty(Ede,"__esModule",{value:!0});Ede.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SREM"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Ott=b(Sde=>{"use strict";Object.defineProperty(Sde,"__esModule",{value:!0});var ARr=fD();Sde.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("SSCAN"),e.pushKey(t),(0,ARr.parseScanArguments)(e,r,n)},transformReply([e,t]){return{cursor:e,members:t}}}});var Ptt=b(wde=>{"use strict";Object.defineProperty(wde,"__esModule",{value:!0});wde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("STRLEN"),e.pushKey(t)},transformReply:void 0}});var Mtt=b(Ide=>{"use strict";Object.defineProperty(Ide,"__esModule",{value:!0});Ide.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SUNION"),e.pushKeys(t)},transformReply:void 0}});var Ltt=b(xde=>{"use strict";Object.defineProperty(xde,"__esModule",{value:!0});xde.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SUNIONSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var Btt=b(Cde=>{"use strict";Object.defineProperty(Cde,"__esModule",{value:!0});Cde.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SWAPDB",t.toString(),r.toString())},transformReply:void 0}});var $tt=b(Tde=>{"use strict";Object.defineProperty(Tde,"__esModule",{value:!0});Tde.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("TIME")},transformReply:void 0}});var Ftt=b(Nde=>{"use strict";Object.defineProperty(Nde,"__esModule",{value:!0});Nde.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TOUCH"),e.pushKeys(t)},transformReply:void 0}});var Utt=b(Rde=>{"use strict";Object.defineProperty(Rde,"__esModule",{value:!0});Rde.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TTL"),e.pushKey(t)},transformReply:void 0}});var qtt=b(Dde=>{"use strict";Object.defineProperty(Dde,"__esModule",{value:!0});Dde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("TYPE"),e.pushKey(t)},transformReply:void 0}});var jtt=b(kde=>{"use strict";Object.defineProperty(kde,"__esModule",{value:!0});kde.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("UNLINK"),e.pushKeys(t)},transformReply:void 0}});var Htt=b(Ode=>{"use strict";Object.defineProperty(Ode,"__esModule",{value:!0});Ode.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("WAIT",t.toString(),r.toString())},transformReply:void 0}});var Ktt=b(Pde=>{"use strict";Object.defineProperty(Pde,"__esModule",{value:!0});Pde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XACK"),e.pushKey(t),e.push(r),e.pushVariadic(n)},transformReply:void 0}});var Vtt=b(Mde=>{"use strict";Object.defineProperty(Mde,"__esModule",{value:!0});Mde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("XACKDEL"),e.pushKey(t),e.push(r),i&&e.push(i),e.push("IDS"),e.pushVariadicWithLength(n)},transformReply:void 0}});var Lde=b(CD=>{"use strict";Object.defineProperty(CD,"__esModule",{value:!0});CD.parseXAddArguments=void 0;function ztt(e,t,r,n,i,s){t.push("XADD"),t.pushKey(r),e&&t.push(e),s?.policy&&t.push(s.policy),s?.IDMPAUTO?t.push("IDMPAUTO",s.IDMPAUTO.pid):s?.IDMP&&t.push("IDMP",s.IDMP.pid,s.IDMP.iid),s?.TRIM&&(s.TRIM.strategy&&t.push(s.TRIM.strategy),s.TRIM.strategyModifier&&t.push(s.TRIM.strategyModifier),t.push(s.TRIM.threshold.toString()),s.TRIM.limit&&t.push("LIMIT",s.TRIM.limit.toString()),s.TRIM.policy&&t.push(s.TRIM.policy)),t.push(n);for(let[a,o]of Object.entries(i))t.push(a,o)}CD.parseXAddArguments=ztt;CD.default={IS_READ_ONLY:!1,parseCommand(...e){return ztt(void 0,...e)},transformReply:void 0}});var Qtt=b(Bde=>{"use strict";Object.defineProperty(Bde,"__esModule",{value:!0});var vRr=Lde();Bde.default={IS_READ_ONLY:!1,parseCommand(...e){return(0,vRr.parseXAddArguments)("NOMKSTREAM",...e)},transformReply:void 0}});var Fde=b($de=>{"use strict";Object.defineProperty($de,"__esModule",{value:!0});var bRr=Le();$de.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s,a){e.push("XAUTOCLAIM"),e.pushKey(t),e.push(r,n,i.toString(),s),a?.COUNT&&e.push("COUNT",a.COUNT.toString())},transformReply(e,t,r){return{nextId:e[0],messages:e[1].map(bRr.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:e[2]}}}});var Ytt=b(TD=>{"use strict";var ERr=TD&&TD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TD,"__esModule",{value:!0});var Gtt=ERr(Fde());TD.default={IS_READ_ONLY:Gtt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Gtt.default.parseCommand(...e),t.push("JUSTID")},transformReply(e){return{nextId:e[0],messages:e[1],deletedMessages:e[2]}}}});var qde=b(Ude=>{"use strict";Object.defineProperty(Ude,"__esModule",{value:!0});var SRr=Le();Ude.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s,a){e.push("XCLAIM"),e.pushKey(t),e.push(r,n,i.toString()),e.pushVariadic(s),a?.IDLE!==void 0&&e.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&e.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&e.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&e.push("FORCE"),a?.LASTID!==void 0&&e.push("LASTID",a.LASTID)},transformReply(e,t,r){return e.map(SRr.transformStreamMessageNullReply.bind(void 0,r))}}});var Xtt=b(ND=>{"use strict";var wRr=ND&&ND.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ND,"__esModule",{value:!0});var Wtt=wRr(qde());ND.default={IS_READ_ONLY:Wtt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Wtt.default.parseCommand(...e),t.push("JUSTID")},transformReply:void 0}});var Jtt=b(jde=>{"use strict";Object.defineProperty(jde,"__esModule",{value:!0});jde.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XCFGSET"),e.pushKey(t),r?.IDMP_DURATION!==void 0&&e.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&e.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var Ztt=b(Hde=>{"use strict";Object.defineProperty(Hde,"__esModule",{value:!0});Hde.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XDEL"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var ert=b(Kde=>{"use strict";Object.defineProperty(Kde,"__esModule",{value:!0});Kde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XDELEX"),e.pushKey(t),n&&e.push(n),e.push("IDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var trt=b(Vde=>{"use strict";Object.defineProperty(Vde,"__esModule",{value:!0});Vde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("XGROUP","CREATE"),e.pushKey(t),e.push(r,n),i?.MKSTREAM&&e.push("MKSTREAM"),i?.ENTRIESREAD&&e.push("ENTRIESREAD",i.ENTRIESREAD.toString())},transformReply:void 0}});var rrt=b(zde=>{"use strict";Object.defineProperty(zde,"__esModule",{value:!0});zde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XGROUP","CREATECONSUMER"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var nrt=b(Qde=>{"use strict";Object.defineProperty(Qde,"__esModule",{value:!0});Qde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XGROUP","DELCONSUMER"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var irt=b(Gde=>{"use strict";Object.defineProperty(Gde,"__esModule",{value:!0});Gde.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XGROUP","DESTROY"),e.pushKey(t),e.push(r)},transformReply:void 0}});var srt=b(Yde=>{"use strict";Object.defineProperty(Yde,"__esModule",{value:!0});Yde.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("XGROUP","SETID"),e.pushKey(t),e.push(r,n),i?.ENTRIESREAD&&e.push("ENTRIESREAD",i.ENTRIESREAD.toString())},transformReply:void 0}});var art=b(Wde=>{"use strict";Object.defineProperty(Wde,"__esModule",{value:!0});Wde.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("XINFO","CONSUMERS"),e.pushKey(t),e.push(r)},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var ort=b(Xde=>{"use strict";Object.defineProperty(Xde,"__esModule",{value:!0});Xde.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("XINFO","GROUPS"),e.pushKey(t)},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var crt=b(Jde=>{"use strict";Object.defineProperty(Jde,"__esModule",{value:!0});var urt=Le();Jde.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("XINFO","STREAM"),e.pushKey(t)},transformReply:{2(e){let t={};for(let r=0;r{"use strict";Object.defineProperty(Zde,"__esModule",{value:!0});Zde.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("XLEN"),e.pushKey(t)},transformReply:void 0}});var drt=b(efe=>{"use strict";Object.defineProperty(efe,"__esModule",{value:!0});efe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i,s,a){e.push("XPENDING"),e.pushKey(t),e.push(r),a?.IDLE!==void 0&&e.push("IDLE",a.IDLE.toString()),e.push(n,i,s.toString()),a?.consumer&&e.push(a.consumer)},transformReply(e){return e.map(t=>{let r=t;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var frt=b(tfe=>{"use strict";Object.defineProperty(tfe,"__esModule",{value:!0});tfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("XPENDING"),e.pushKey(t),e.push(r)},transformReply(e){let t=e[3];return{pending:e[0],firstId:e[1],lastId:e[2],consumers:t===null?null:t.map(r=>{let[n,i]=r;return{name:n,deliveriesCounter:Number(i)}})}}}});var rfe=b(RD=>{"use strict";Object.defineProperty(RD,"__esModule",{value:!0});RD.xRangeArguments=void 0;var IRr=Le();function prt(e,t,r){let n=[e,t];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}RD.xRangeArguments=prt;RD.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,...r){e.push("XRANGE"),e.pushKey(t),e.pushVariadic(prt(r[0],r[1],r[2]))},transformReply(e,t,r){return e.map(IRr.transformStreamMessageReply.bind(void 0,r))}}});var nfe=b(DD=>{"use strict";Object.defineProperty(DD,"__esModule",{value:!0});DD.pushXReadStreams=void 0;var xRr=Le();function hrt(e,t){if(e.push("STREAMS"),Array.isArray(t)){for(let r=0;r{"use strict";Object.defineProperty(ife,"__esModule",{value:!0});var CRr=nfe(),TRr=Le();ife.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("XREADGROUP","GROUP",t,r),i?.COUNT!==void 0&&e.push("COUNT",i.COUNT.toString()),i?.BLOCK!==void 0&&e.push("BLOCK",i.BLOCK.toString()),i?.NOACK&&e.push("NOACK"),i?.CLAIM!==void 0&&e.push("CLAIM",i.CLAIM.toString()),(0,CRr.pushXReadStreams)(e,n)},transformReply:{2:TRr.transformStreamsMessagesReplyResp2,3:void 0}}});var grt=b(Em=>{"use strict";var NRr=Em&&Em.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),RRr=Em&&Em.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),DRr=Em&&Em.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&NRr(t,e,r);return RRr(t,e),t};Object.defineProperty(Em,"__esModule",{value:!0});var N5=DRr(rfe());Em.default={CACHEABLE:N5.default.CACHEABLE,IS_READ_ONLY:N5.default.IS_READ_ONLY,parseCommand(e,t,...r){e.push("XREVRANGE"),e.pushKey(t),e.pushVariadic((0,N5.xRangeArguments)(r[0],r[1],r[2]))},transformReply:N5.default.transformReply}});var yrt=b(sfe=>{"use strict";Object.defineProperty(sfe,"__esModule",{value:!0});sfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XSETID"),e.pushKey(t),e.push(r),n?.ENTRIESADDED&&e.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&e.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var _rt=b(afe=>{"use strict";Object.defineProperty(afe,"__esModule",{value:!0});afe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("XTRIM"),e.pushKey(t),e.push(r),i?.strategyModifier&&e.push(i.strategyModifier),e.push(n.toString()),i?.LIMIT&&e.push("LIMIT",i.LIMIT.toString()),i?.policy&&e.push(i.policy)},transformReply:void 0}});var ofe=b(kD=>{"use strict";Object.defineProperty(kD,"__esModule",{value:!0});kD.pushMembers=void 0;var vrt=Le();kD.default={parseCommand(e,t,r,n){e.push("ZADD"),e.pushKey(t),n?.condition?e.push(n.condition):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.comparison?e.push(n.comparison):n?.LT?e.push("LT"):n?.GT&&e.push("GT"),n?.CH&&e.push("CH"),brt(e,r)},transformReply:vrt.transformDoubleReply};function brt(e,t){if(Array.isArray(t))for(let r of t)Art(e,r);else Art(e,t)}kD.pushMembers=brt;function Art(e,t){e.push((0,vrt.transformDoubleArgument)(t.score),t.value)}});var Ert=b(ufe=>{"use strict";Object.defineProperty(ufe,"__esModule",{value:!0});var kRr=ofe(),ORr=Le();ufe.default={parseCommand(e,t,r,n){e.push("ZADD"),e.pushKey(t),n?.condition&&e.push(n.condition),n?.comparison&&e.push(n.comparison),n?.CH&&e.push("CH"),e.push("INCR"),(0,kRr.pushMembers)(e,r)},transformReply:ORr.transformNullableDoubleReply}});var Srt=b(cfe=>{"use strict";Object.defineProperty(cfe,"__esModule",{value:!0});cfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZCARD"),e.pushKey(t)},transformReply:void 0}});var Irt=b(lfe=>{"use strict";Object.defineProperty(lfe,"__esModule",{value:!0});var wrt=Le();lfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZCOUNT"),e.pushKey(t),e.push((0,wrt.transformStringDoubleArgument)(r),(0,wrt.transformStringDoubleArgument)(n))},transformReply:void 0}});var ffe=b(dfe=>{"use strict";Object.defineProperty(dfe,"__esModule",{value:!0});dfe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZDIFF"),e.pushKeysLength(t)},transformReply:void 0}});var Crt=b(OD=>{"use strict";var PRr=OD&&OD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(OD,"__esModule",{value:!0});var MRr=Le(),xrt=PRr(ffe());OD.default={IS_READ_ONLY:xrt.default.IS_READ_ONLY,parseCommand(e,t){xrt.default.parseCommand(e,t),e.push("WITHSCORES")},transformReply:MRr.transformSortedSetReply}});var Trt=b(pfe=>{"use strict";Object.defineProperty(pfe,"__esModule",{value:!0});pfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZDIFFSTORE"),e.pushKey(t),e.pushKeysLength(r)},transformReply:void 0}});var Rrt=b(hfe=>{"use strict";Object.defineProperty(hfe,"__esModule",{value:!0});var Nrt=Le();hfe.default={parseCommand(e,t,r,n){e.push("ZINCRBY"),e.pushKey(t),e.push((0,Nrt.transformDoubleArgument)(r),n)},transformReply:Nrt.transformDoubleReply}});var R5=b(PD=>{"use strict";Object.defineProperty(PD,"__esModule",{value:!0});PD.parseZInterArguments=void 0;var LRr=Le();function Drt(e,t,r){(0,LRr.parseZKeysArguments)(e,t),r?.AGGREGATE&&e.push("AGGREGATE",r.AGGREGATE)}PD.parseZInterArguments=Drt;PD.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZINTER"),Drt(e,t,r)},transformReply:void 0}});var Ort=b(MD=>{"use strict";var BRr=MD&&MD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(MD,"__esModule",{value:!0});var $Rr=Le(),krt=BRr(R5());MD.default={IS_READ_ONLY:krt.default.IS_READ_ONLY,parseCommand(...e){krt.default.parseCommand(...e),e[0].push("WITHSCORES")},transformReply:$Rr.transformSortedSetReply}});var Prt=b(mfe=>{"use strict";Object.defineProperty(mfe,"__esModule",{value:!0});mfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZINTERCARD"),e.pushKeysLength(t),typeof r=="number"?e.push("LIMIT",r.toString()):r?.LIMIT&&e.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var Mrt=b(gfe=>{"use strict";Object.defineProperty(gfe,"__esModule",{value:!0});var FRr=R5();gfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZINTERSTORE"),e.pushKey(t),(0,FRr.parseZInterArguments)(e,r,n)},transformReply:void 0}});var Lrt=b(yfe=>{"use strict";Object.defineProperty(yfe,"__esModule",{value:!0});yfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZLEXCOUNT"),e.pushKey(t),e.push(r),e.push(n)},transformReply:void 0}});var Brt=b(_fe=>{"use strict";Object.defineProperty(_fe,"__esModule",{value:!0});var URr=Le();_fe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZMSCORE"),e.pushKey(t),e.pushVariadic(r)},transformReply:{2:(e,t,r)=>e.map((0,URr.createTransformNullableDoubleReplyResp2Func)(t,r)),3:void 0}}});var $rt=b(Afe=>{"use strict";Object.defineProperty(Afe,"__esModule",{value:!0});var qRr=Le();Afe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZPOPMAX"),e.pushKey(t),e.push(r.toString())},transformReply:qRr.transformSortedSetReply}});var bfe=b(vfe=>{"use strict";Object.defineProperty(vfe,"__esModule",{value:!0});var jRr=Le();vfe.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("ZPOPMAX"),e.pushKey(t)},transformReply:{2:(e,t,r)=>e.length===0?null:{value:e[0],score:jRr.transformDoubleReply[2](e[1],t,r)},3:e=>e.length===0?null:{value:e[0],score:e[1]}}}});var Frt=b(Efe=>{"use strict";Object.defineProperty(Efe,"__esModule",{value:!0});var HRr=Le();Efe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZPOPMIN"),e.pushKey(t),e.push(r.toString())},transformReply:HRr.transformSortedSetReply}});var Urt=b(LD=>{"use strict";var KRr=LD&&LD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LD,"__esModule",{value:!0});var VRr=KRr(bfe());LD.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("ZPOPMIN"),e.pushKey(t)},transformReply:VRr.default.transformReply}});var wfe=b(Sfe=>{"use strict";Object.defineProperty(Sfe,"__esModule",{value:!0});Sfe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZRANDMEMBER"),e.pushKey(t)},transformReply:void 0}});var Ife=b(BD=>{"use strict";var zRr=BD&&BD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BD,"__esModule",{value:!0});var qrt=zRr(wfe());BD.default={IS_READ_ONLY:qrt.default.IS_READ_ONLY,parseCommand(e,t,r){qrt.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var Hrt=b($D=>{"use strict";var QRr=$D&&$D.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty($D,"__esModule",{value:!0});var GRr=Le(),jrt=QRr(Ife());$D.default={IS_READ_ONLY:jrt.default.IS_READ_ONLY,parseCommand(e,t,r){jrt.default.parseCommand(e,t,r),e.push("WITHSCORES")},transformReply:GRr.transformSortedSetReply}});var xfe=b(FD=>{"use strict";Object.defineProperty(FD,"__esModule",{value:!0});FD.zRangeArgument=void 0;var Krt=Le();function Vrt(e,t,r){let n=[(0,Krt.transformStringDoubleArgument)(e),(0,Krt.transformStringDoubleArgument)(t)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}FD.zRangeArgument=Vrt;FD.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("ZRANGE"),e.pushKey(t),e.pushVariadic(Vrt(r,n,i))},transformReply:void 0}});var zrt=b(UD=>{"use strict";var YRr=UD&&UD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UD,"__esModule",{value:!0});var WRr=Le(),Cfe=YRr(xfe());UD.default={CACHEABLE:Cfe.default.CACHEABLE,IS_READ_ONLY:Cfe.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Cfe.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:WRr.transformSortedSetReply}});var Grt=b(Tfe=>{"use strict";Object.defineProperty(Tfe,"__esModule",{value:!0});var Qrt=Le();Tfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("ZRANGEBYLEX"),e.pushKey(t),e.push((0,Qrt.transformStringDoubleArgument)(r),(0,Qrt.transformStringDoubleArgument)(n)),i?.LIMIT&&e.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var Rfe=b(Nfe=>{"use strict";Object.defineProperty(Nfe,"__esModule",{value:!0});var Yrt=Le();Nfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("ZRANGEBYSCORE"),e.pushKey(t),e.push((0,Yrt.transformStringDoubleArgument)(r),(0,Yrt.transformStringDoubleArgument)(n)),i?.LIMIT&&e.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var Wrt=b(qD=>{"use strict";var XRr=qD&&qD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qD,"__esModule",{value:!0});var JRr=Le(),Dfe=XRr(Rfe());qD.default={CACHEABLE:Dfe.default.CACHEABLE,IS_READ_ONLY:Dfe.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Dfe.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:JRr.transformSortedSetReply}});var Jrt=b(kfe=>{"use strict";Object.defineProperty(kfe,"__esModule",{value:!0});var Xrt=Le();kfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s){switch(e.push("ZRANGESTORE"),e.pushKey(t),e.pushKey(r),e.push((0,Xrt.transformStringDoubleArgument)(n),(0,Xrt.transformStringDoubleArgument)(i)),s?.BY){case"SCORE":e.push("BYSCORE");break;case"LEX":e.push("BYLEX");break}s?.REV&&e.push("REV"),s?.LIMIT&&e.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var ent=b(Ofe=>{"use strict";Object.defineProperty(Ofe,"__esModule",{value:!0});var Zrt=Le();Ofe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYSCORE"),e.pushKey(t),e.push((0,Zrt.transformStringDoubleArgument)(r),(0,Zrt.transformStringDoubleArgument)(n))},transformReply:void 0}});var Mfe=b(Pfe=>{"use strict";Object.defineProperty(Pfe,"__esModule",{value:!0});Pfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZRANK"),e.pushKey(t),e.push(r)},transformReply:void 0}});var tnt=b(jD=>{"use strict";var ZRr=jD&&jD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jD,"__esModule",{value:!0});var Lfe=ZRr(Mfe());jD.default={CACHEABLE:Lfe.default.CACHEABLE,IS_READ_ONLY:Lfe.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Lfe.default.parseCommand(...e),t.push("WITHSCORE")},transformReply:{2:e=>e===null?null:{rank:e[0],score:Number(e[1])},3:e=>e===null?null:{rank:e[0],score:e[1]}}}});var rnt=b(Bfe=>{"use strict";Object.defineProperty(Bfe,"__esModule",{value:!0});Bfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZREM"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var int=b($fe=>{"use strict";Object.defineProperty($fe,"__esModule",{value:!0});var nnt=Le();$fe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYLEX"),e.pushKey(t),e.push((0,nnt.transformStringDoubleArgument)(r),(0,nnt.transformStringDoubleArgument)(n))},transformReply:void 0}});var snt=b(Ffe=>{"use strict";Object.defineProperty(Ffe,"__esModule",{value:!0});Ffe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYRANK"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var ant=b(Ufe=>{"use strict";Object.defineProperty(Ufe,"__esModule",{value:!0});Ufe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZREVRANK"),e.pushKey(t),e.push(r)},transformReply:void 0}});var ont=b(qfe=>{"use strict";Object.defineProperty(qfe,"__esModule",{value:!0});var eDr=fD(),tDr=Le();qfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZSCAN"),e.pushKey(t),(0,eDr.parseScanArguments)(e,r,n)},transformReply([e,t]){return{cursor:e,members:tDr.transformSortedSetReply[2](t)}}}});var unt=b(jfe=>{"use strict";Object.defineProperty(jfe,"__esModule",{value:!0});var rDr=Le();jfe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZSCORE"),e.pushKey(t),e.push(r)},transformReply:rDr.transformNullableDoubleReply}});var Kfe=b(Hfe=>{"use strict";Object.defineProperty(Hfe,"__esModule",{value:!0});var nDr=Le();Hfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZUNION"),(0,nDr.parseZKeysArguments)(e,t),r?.AGGREGATE&&e.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var lnt=b(HD=>{"use strict";var iDr=HD&&HD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(HD,"__esModule",{value:!0});var sDr=Le(),cnt=iDr(Kfe());HD.default={IS_READ_ONLY:cnt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];cnt.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:sDr.transformSortedSetReply}});var dnt=b(Vfe=>{"use strict";Object.defineProperty(Vfe,"__esModule",{value:!0});var aDr=Le();Vfe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZUNIONSTORE"),e.pushKey(t),(0,aDr.parseZKeysArguments)(e,r),n?.AGGREGATE&&e.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var pnt=b(zfe=>{"use strict";Object.defineProperty(zfe,"__esModule",{value:!0});var fnt=Le();zfe.default={parseCommand(e,t,r,n,i){e.push("VADD"),e.pushKey(t),i?.REDUCE!==void 0&&e.push("REDUCE",i.REDUCE.toString()),e.push("VALUES",r.length.toString());for(let s of r)e.push((0,fnt.transformDoubleArgument)(s));e.push(n),i?.CAS&&e.push("CAS"),i?.QUANT&&e.push(i.QUANT),i?.EF!==void 0&&e.push("EF",i.EF.toString()),i?.SETATTR&&e.push("SETATTR",JSON.stringify(i.SETATTR)),i?.M!==void 0&&e.push("M",i.M.toString())},transformReply:fnt.transformBooleanReply}});var hnt=b(Qfe=>{"use strict";Object.defineProperty(Qfe,"__esModule",{value:!0});Qfe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VCARD"),e.pushKey(t)},transformReply:void 0}});var mnt=b(Gfe=>{"use strict";Object.defineProperty(Gfe,"__esModule",{value:!0});Gfe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VDIM"),e.pushKey(t)},transformReply:void 0}});var Wfe=b(Yfe=>{"use strict";Object.defineProperty(Yfe,"__esModule",{value:!0});var oDr=Le();Yfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VEMB"),e.pushKey(t),e.push(r)},transformReply:oDr.transformDoubleArrayReply}});var ynt=b(KD=>{"use strict";var uDr=KD&&KD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KD,"__esModule",{value:!0});var gnt=Le(),cDr=uDr(Wfe()),lDr={2:e=>({quantization:e[0],raw:e[1],l2Norm:gnt.transformDoubleReply[2](e[2]),...e[3]!==void 0&&{quantizationRange:gnt.transformDoubleReply[2](e[3])}}),3:e=>({quantization:e[0],raw:e[1],l2Norm:e[2],quantizationRange:e[3]})};KD.default={IS_READ_ONLY:!0,parseCommand(e,t,r){cDr.default.parseCommand(e,t,r),e.push("RAW")},transformReply:lDr}});var _nt=b(Xfe=>{"use strict";Object.defineProperty(Xfe,"__esModule",{value:!0});var dDr=Le();Xfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VGETATTR"),e.pushKey(t),e.push(r)},transformReply:dDr.transformRedisJsonNullReply}});var Ant=b(Jfe=>{"use strict";Object.defineProperty(Jfe,"__esModule",{value:!0});Jfe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VINFO"),e.pushKey(t)},transformReply:{2:e=>{let t=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(Zfe,"__esModule",{value:!0});Zfe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VLINKS"),e.pushKey(t),e.push(r)},transformReply:void 0}});var bnt=b(VD=>{"use strict";var fDr=VD&&VD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VD,"__esModule",{value:!0});var pDr=Le(),vnt=fDr(epe());function hDr(e){let t=[];for(let r of e){let n=Object.create(null);for(let i=0;i{"use strict";Object.defineProperty(tpe,"__esModule",{value:!0});tpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VRANDMEMBER"),e.pushKey(t),r!==void 0&&e.push(r.toString())},transformReply:void 0}});var Snt=b(rpe=>{"use strict";Object.defineProperty(rpe,"__esModule",{value:!0});rpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("VRANGE"),e.pushKey(t),e.push(r,n),i!==void 0&&e.push(i.toString())},transformReply:void 0}});var wnt=b(npe=>{"use strict";Object.defineProperty(npe,"__esModule",{value:!0});var mDr=Le();npe.default={parseCommand(e,t,r){e.push("VREM"),e.pushKey(t),e.push(r)},transformReply:mDr.transformBooleanReply}});var Int=b(ipe=>{"use strict";Object.defineProperty(ipe,"__esModule",{value:!0});var gDr=Le();ipe.default={parseCommand(e,t,r,n){e.push("VSETATTR"),e.pushKey(t),e.push(r),typeof n=="object"&&n!==null?e.push(JSON.stringify(n)):e.push(n)},transformReply:gDr.transformBooleanReply}});var ape=b(spe=>{"use strict";Object.defineProperty(spe,"__esModule",{value:!0});var yDr=Le();spe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){if(e.push("VSIM"),e.pushKey(t),Array.isArray(r)){e.push("VALUES",r.length.toString());for(let i of r)e.push((0,yDr.transformDoubleArgument)(i))}else e.push("ELE",r);n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&e.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&e.push("EF",n.EF.toString()),n?.FILTER&&e.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&e.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&e.push("TRUTH"),n?.NOTHREAD&&e.push("NOTHREAD")},transformReply:void 0}});var Cnt=b(zD=>{"use strict";var _Dr=zD&&zD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(zD,"__esModule",{value:!0});var ADr=Le(),xnt=_Dr(ape());zD.default={IS_READ_ONLY:xnt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];xnt.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:{2:e=>{let t=e,r={};for(let n=0;n{"use strict";Object.defineProperty(ope,"__esModule",{value:!0});var vDr=Le(),bDr=e=>e;ope.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(e,...t){let r=["LATENCY","HISTOGRAM"];t.length!==0&&r.push(...t),e.push(...r)},transformReply:{2:e=>{let t={};if(e.length===0)return t;for(let r=1;r{"use strict";var EDr=Ri&&Ri.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),SDr=Ri&&Ri.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),QD=Ri&&Ri.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&EDr(t,e,r);return SDr(t,e),t},W=Ri&&Ri.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ri,"__esModule",{value:!0});Ri.NON_STICKY_COMMANDS=Ri.REDIS_FLUSH_MODES=Ri.COMMAND_LIST_FILTER_BY=Ri.CLUSTER_SLOT_STATES=Ri.FAILOVER_MODES=Ri.CLIENT_KILL_FILTERS=void 0;var Nnt=W(eWe()),Rnt=W(tWe()),Dnt=W(rWe()),knt=W(nWe()),Ont=W(iWe()),Pnt=W(sWe()),Mnt=W(aWe()),Lnt=W(hWe()),Bnt=W(toe()),$nt=W(mWe()),Fnt=W(gWe()),Unt=W(yWe()),qnt=W(_We()),jnt=W(AWe()),Hnt=W(ooe()),Knt=W(vWe()),Vnt=W(bWe()),znt=W(EWe()),Qnt=W(SWe()),Gnt=W(wWe()),Ynt=W(IWe()),Wnt=W(xWe()),Xnt=W(CWe()),Jnt=W(TWe()),Znt=W(DWe()),eit=W(Aoe()),tit=W(kWe()),rit=W(OWe()),nit=W(BWe()),iit=W(Soe()),sit=W(FWe()),ait=W(UWe()),oit=W(qWe()),uit=W(jWe()),cit=W(HWe()),lit=W(Noe()),upe=QD(VWe());Object.defineProperty(Ri,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return upe.CLIENT_KILL_FILTERS}});var dit=W(zWe()),fit=W(QWe()),pit=W(GWe()),hit=W(YWe()),mit=W(WWe()),git=W(XWe()),yit=W(JWe()),_it=W(ZWe()),Ait=W(eXe()),vit=W(tXe()),bit=W(rXe()),Eit=W(nXe()),Sit=W(iXe()),wit=W(sXe()),Iit=W(aXe()),cpe=QD(oXe());Object.defineProperty(Ri,"FAILOVER_MODES",{enumerable:!0,get:function(){return cpe.FAILOVER_MODES}});var xit=W(uXe()),Cit=W(cXe()),Tit=W(lXe()),Nit=W(dXe()),Rit=W(fXe()),Dit=W(pXe()),kit=W(hXe()),Oit=W(mXe()),Pit=W(gXe()),Mit=W(yXe()),Lit=W(_Xe()),Bit=W(AXe()),$it=W(vXe()),Fit=W(bXe()),Uit=W(EXe()),lpe=QD(SXe());Object.defineProperty(Ri,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return lpe.CLUSTER_SLOT_STATES}});var qit=W(IXe()),jit=W(xXe()),Hit=W(CXe()),Kit=W(TXe()),Vit=W(NXe()),dpe=QD(RXe());Object.defineProperty(Ri,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return dpe.COMMAND_LIST_FILTER_BY}});var zit=W(DXe()),Qit=W(kXe()),Git=W(OXe()),Yit=W(PXe()),Wit=W(MXe()),Xit=W(LXe()),Jit=W(BXe()),Zit=W($Xe()),est=W(FXe()),tst=W(UXe()),rst=W(qXe()),nst=W(jXe()),ist=W(HXe()),sst=W(KXe()),ast=W(QXe()),ost=W(xv()),ust=W(YXe()),cst=W(XXe()),lst=W(ZXe()),dst=W(eJe()),fst=W(tJe()),pst=W(rJe()),hst=W(cJe()),mst=W(dJe()),gst=W(pJe()),yst=W(x5()),_st=W(nD()),Ast=W(_Je()),vst=W(vJe()),bst=W(EJe()),Est=W(Cue()),Sst=W(oD()),wst=W(iD()),Ist=W(Tv()),xst=W(SJe()),Cst=W(wJe()),Tst=W(IJe()),Nst=W(xJe()),Rst=W(CJe()),Dst=W(TJe()),kst=W(NJe()),Ost=W(RJe()),Pst=W(DJe()),Mst=W(kJe()),Lst=W(OJe()),fpe=QD(PJe());Object.defineProperty(Ri,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return fpe.REDIS_FLUSH_MODES}});var Bst=W(MJe()),$st=W(BJe()),Fst=W(FJe()),Ust=W(UJe()),qst=W(qJe()),jst=W(jJe()),Hst=W(HJe()),Kst=W(KJe()),Vst=W(zue()),zst=W(VJe()),Qst=W(zJe()),Gst=W(QJe()),Yst=W(GJe()),Wst=W(Zue()),Xst=W(YJe()),Jst=W(WJe()),Zst=W(XJe()),eat=W(JJe()),tat=W(ZJe()),rat=W(eZe()),nat=W(tZe()),iat=W(rZe()),sat=W(nZe()),aat=W(iZe()),oat=W(sZe()),uat=W(aZe()),cat=W(oZe()),lat=W(uZe()),dat=W(cZe()),fat=W(lZe()),pat=W(dZe()),hat=W(fZe()),mat=W(pZe()),gat=W(hZe()),yat=W(mZe()),_at=W(vce()),Aat=W(yZe()),vat=W(AZe()),bat=W(bZe()),Eat=W(EZe()),Sat=W(SZe()),wat=W(wZe()),Iat=W(IZe()),xat=W(CZe()),Cat=W(TZe()),Tat=W(NZe()),Nat=W(RZe()),Rat=W(DZe()),Dat=W(kZe()),kat=W(OZe()),Oat=W(PZe()),Pat=W(MZe()),Mat=W(LZe()),Lat=W(BZe()),Bat=W(Bce()),$at=W($Ze()),Fat=W(FZe()),Uat=W(UZe()),qat=W(HZe()),jat=W(qce()),Hat=W(VZe()),Kat=W(C5()),Vat=W(zZe()),zat=W(QZe()),Qat=W(GZe()),Gat=W(YZe()),Yat=W(yoe()),wDr=W(WZe()),Wat=W(XZe()),Xat=W(Gce()),Jat=W(JZe()),Zat=W(Wce()),eot=W(ZZe()),tot=W(eet()),rot=W(tet()),not=W(ret()),iot=W(net()),sot=W(iet()),aot=W(set()),oot=W(aet()),uot=W(oet()),cot=W(uet()),lot=W(cet()),dot=W(det()),fot=W(fet()),pot=W(pet()),hot=W(het()),mot=W(met()),got=W(get()),yot=W(mle()),_ot=W(vet()),Aot=W(bet()),vot=W(Eet()),bot=W(wet()),Eot=W(Iet()),Sot=W(xet()),wot=W(Cet()),Iot=W(Tet()),xot=W(Net()),Cot=W(Ret()),Tot=W(Det()),Not=W(ket()),Rot=W(Oet()),Dot=W(Pet()),kot=W(Met()),Oot=W(Let()),Pot=W(Bet()),Mot=W($et()),Lot=W(Fet()),Bot=W(Uet()),$ot=W(qet()),Fot=W(jet()),Uot=W(Het()),qot=W(Ket()),jot=W(Vet()),Hot=W(zet()),Kot=W(Qet()),Vot=W(Get()),zot=W(Yet()),Qot=W(Wet()),Got=W(Xet()),Yot=W(Jet()),Wot=W(Zet()),Xot=W(ett()),Jot=W(ttt()),Zot=W(rtt()),eut=W(fD()),tut=W(ntt()),rut=W(itt()),nut=W(stt()),iut=W(att()),sut=W(ott()),aut=W(utt()),out=W(ctt()),uut=W(ltt()),cut=W(dtt()),lut=W(ftt()),dut=W(ptt()),fut=W(htt()),put=W(mtt()),hut=W(gtt()),mut=W(ytt()),gut=W(_tt()),yut=W(Att()),_ut=W(vtt()),Aut=W(btt()),vut=W(Ett()),but=W(Itt()),Eut=W(xtt()),Sut=W(T5()),wut=W(Ctt()),Iut=W(Ttt()),xut=W(Ntt()),Cut=W(Dtt()),Tut=W(bde()),Nut=W(ktt()),Rut=W(Ott()),Dut=W(Ptt()),kut=W(Mtt()),Out=W(Ltt()),Put=W(Btt()),Mut=W($tt()),Lut=W(Ftt()),But=W(Utt()),$ut=W(qtt()),Fut=W(jtt()),Uut=W(Htt()),qut=W(Ktt()),jut=W(Vtt()),Hut=W(Qtt()),Kut=W(Lde()),Vut=W(Ytt()),zut=W(Fde()),Qut=W(Xtt()),Gut=W(qde()),Yut=W(Jtt()),Wut=W(Ztt()),Xut=W(ert()),Jut=W(trt()),Zut=W(rrt()),ect=W(nrt()),tct=W(irt()),rct=W(srt()),nct=W(art()),ict=W(ort()),sct=W(crt()),act=W(lrt()),oct=W(drt()),uct=W(frt()),cct=W(rfe()),lct=W(nfe()),dct=W(mrt()),fct=W(grt()),pct=W(yrt()),hct=W(_rt()),mct=W(Ert()),gct=W(ofe()),yct=W(Srt()),_ct=W(Irt()),Act=W(Crt()),vct=W(ffe()),bct=W(Trt()),Ect=W(Rrt()),Sct=W(Ort()),wct=W(R5()),Ict=W(Prt()),xct=W(Mrt()),Cct=W(Lrt()),Tct=W(boe()),Nct=W(Brt()),Rct=W($rt()),Dct=W(bfe()),kct=W(Frt()),Oct=W(Urt()),Pct=W(Hrt()),Mct=W(Ife()),Lct=W(wfe()),Bct=W(zrt()),$ct=W(xfe()),Fct=W(Grt()),Uct=W(Wrt()),qct=W(Rfe()),jct=W(Jrt()),Hct=W(ent()),Kct=W(tnt()),Vct=W(Mfe()),zct=W(rnt()),Qct=W(int()),Gct=W(snt()),Yct=W(ant()),Wct=W(ont()),Xct=W(unt()),Jct=W(lnt()),Zct=W(Kfe()),elt=W(dnt()),tlt=W(pnt()),rlt=W(hnt()),nlt=W(mnt()),ilt=W(Wfe()),slt=W(ynt()),alt=W(_nt()),olt=W(Ant()),ult=W(epe()),clt=W(bnt()),llt=W(Ent()),dlt=W(Snt()),flt=W(wnt()),plt=W(Int()),hlt=W(ape()),mlt=W(Cnt()),glt=W(Tnt());Ri.default={ACL_CAT:Nnt.default,aclCat:Nnt.default,ACL_DELUSER:Rnt.default,aclDelUser:Rnt.default,ACL_DRYRUN:Dnt.default,aclDryRun:Dnt.default,ACL_GENPASS:knt.default,aclGenPass:knt.default,ACL_GETUSER:Ont.default,aclGetUser:Ont.default,ACL_LIST:Pnt.default,aclList:Pnt.default,ACL_LOAD:Mnt.default,aclLoad:Mnt.default,ACL_LOG_RESET:Lnt.default,aclLogReset:Lnt.default,ACL_LOG:Bnt.default,aclLog:Bnt.default,ACL_SAVE:$nt.default,aclSave:$nt.default,ACL_SETUSER:Fnt.default,aclSetUser:Fnt.default,ACL_USERS:Unt.default,aclUsers:Unt.default,ACL_WHOAMI:qnt.default,aclWhoAmI:qnt.default,APPEND:jnt.default,append:jnt.default,ASKING:Hnt.default,asking:Hnt.default,AUTH:Knt.default,auth:Knt.default,BGREWRITEAOF:Vnt.default,bgRewriteAof:Vnt.default,BGSAVE:znt.default,bgSave:znt.default,BITCOUNT:Qnt.default,bitCount:Qnt.default,BITFIELD_RO:Gnt.default,bitFieldRo:Gnt.default,BITFIELD:Ynt.default,bitField:Ynt.default,BITOP:Wnt.default,bitOp:Wnt.default,BITPOS:Xnt.default,bitPos:Xnt.default,BLMOVE:Jnt.default,blMove:Jnt.default,BLMPOP:Znt.default,blmPop:Znt.default,BLPOP:eit.default,blPop:eit.default,BRPOP:tit.default,brPop:tit.default,BRPOPLPUSH:rit.default,brPopLPush:rit.default,BZMPOP:nit.default,bzmPop:nit.default,BZPOPMAX:iit.default,bzPopMax:iit.default,BZPOPMIN:sit.default,bzPopMin:sit.default,CLIENT_CACHING:ait.default,clientCaching:ait.default,CLIENT_GETNAME:oit.default,clientGetName:oit.default,CLIENT_GETREDIR:uit.default,clientGetRedir:uit.default,CLIENT_ID:cit.default,clientId:cit.default,CLIENT_INFO:lit.default,clientInfo:lit.default,CLIENT_KILL:upe.default,clientKill:upe.default,CLIENT_LIST:dit.default,clientList:dit.default,"CLIENT_NO-EVICT":fit.default,clientNoEvict:fit.default,"CLIENT_NO-TOUCH":pit.default,clientNoTouch:pit.default,CLIENT_PAUSE:hit.default,clientPause:hit.default,CLIENT_SETNAME:mit.default,clientSetName:mit.default,CLIENT_TRACKING:git.default,clientTracking:git.default,CLIENT_TRACKINGINFO:yit.default,clientTrackingInfo:yit.default,CLIENT_UNPAUSE:_it.default,clientUnpause:_it.default,CLUSTER_ADDSLOTS:Ait.default,clusterAddSlots:Ait.default,CLUSTER_ADDSLOTSRANGE:vit.default,clusterAddSlotsRange:vit.default,CLUSTER_BUMPEPOCH:bit.default,clusterBumpEpoch:bit.default,"CLUSTER_COUNT-FAILURE-REPORTS":Eit.default,clusterCountFailureReports:Eit.default,CLUSTER_COUNTKEYSINSLOT:Sit.default,clusterCountKeysInSlot:Sit.default,CLUSTER_DELSLOTS:wit.default,clusterDelSlots:wit.default,CLUSTER_DELSLOTSRANGE:Iit.default,clusterDelSlotsRange:Iit.default,CLUSTER_FAILOVER:cpe.default,clusterFailover:cpe.default,CLUSTER_FLUSHSLOTS:xit.default,clusterFlushSlots:xit.default,CLUSTER_FORGET:Cit.default,clusterForget:Cit.default,CLUSTER_GETKEYSINSLOT:Tit.default,clusterGetKeysInSlot:Tit.default,CLUSTER_INFO:Nit.default,clusterInfo:Nit.default,CLUSTER_KEYSLOT:Rit.default,clusterKeySlot:Rit.default,CLUSTER_LINKS:Dit.default,clusterLinks:Dit.default,CLUSTER_MEET:kit.default,clusterMeet:kit.default,CLUSTER_MYID:Oit.default,clusterMyId:Oit.default,CLUSTER_MYSHARDID:Pit.default,clusterMyShardId:Pit.default,CLUSTER_NODES:Mit.default,clusterNodes:Mit.default,CLUSTER_REPLICAS:Lit.default,clusterReplicas:Lit.default,CLUSTER_REPLICATE:Bit.default,clusterReplicate:Bit.default,CLUSTER_RESET:$it.default,clusterReset:$it.default,CLUSTER_SAVECONFIG:Fit.default,clusterSaveConfig:Fit.default,"CLUSTER_SET-CONFIG-EPOCH":Uit.default,clusterSetConfigEpoch:Uit.default,CLUSTER_SETSLOT:lpe.default,clusterSetSlot:lpe.default,CLUSTER_SLOTS:qit.default,clusterSlots:qit.default,COMMAND_COUNT:jit.default,commandCount:jit.default,COMMAND_GETKEYS:Hit.default,commandGetKeys:Hit.default,COMMAND_GETKEYSANDFLAGS:Kit.default,commandGetKeysAndFlags:Kit.default,COMMAND_INFO:Vit.default,commandInfo:Vit.default,COMMAND_LIST:dpe.default,commandList:dpe.default,COMMAND:zit.default,command:zit.default,CONFIG_GET:Qit.default,configGet:Qit.default,CONFIG_RESETASTAT:Git.default,configResetStat:Git.default,CONFIG_REWRITE:Yit.default,configRewrite:Yit.default,CONFIG_SET:Wit.default,configSet:Wit.default,COPY:Xit.default,copy:Xit.default,DBSIZE:Jit.default,dbSize:Jit.default,DECR:Zit.default,decr:Zit.default,DECRBY:est.default,decrBy:est.default,DEL:tst.default,del:tst.default,DELEX:rst.default,delEx:rst.default,DIGEST:nst.default,digest:nst.default,DUMP:ist.default,dump:ist.default,ECHO:sst.default,echo:sst.default,EVAL_RO:ast.default,evalRo:ast.default,EVAL:ost.default,eval:ost.default,EVALSHA_RO:ust.default,evalShaRo:ust.default,EVALSHA:cst.default,evalSha:cst.default,EXISTS:Ost.default,exists:Ost.default,EXPIRE:Pst.default,expire:Pst.default,EXPIREAT:Mst.default,expireAt:Mst.default,EXPIRETIME:Lst.default,expireTime:Lst.default,FLUSHALL:fpe.default,flushAll:fpe.default,FLUSHDB:Bst.default,flushDb:Bst.default,FCALL:$st.default,fCall:$st.default,FCALL_RO:Fst.default,fCallRo:Fst.default,FUNCTION_DELETE:Ust.default,functionDelete:Ust.default,FUNCTION_DUMP:qst.default,functionDump:qst.default,FUNCTION_FLUSH:jst.default,functionFlush:jst.default,FUNCTION_KILL:Hst.default,functionKill:Hst.default,FUNCTION_LIST_WITHCODE:Kst.default,functionListWithCode:Kst.default,FUNCTION_LIST:Vst.default,functionList:Vst.default,FUNCTION_LOAD:zst.default,functionLoad:zst.default,FUNCTION_RESTORE:Qst.default,functionRestore:Qst.default,FUNCTION_STATS:Gst.default,functionStats:Gst.default,GEOADD:lst.default,geoAdd:lst.default,GEODIST:dst.default,geoDist:dst.default,GEOHASH:fst.default,geoHash:fst.default,GEOPOS:pst.default,geoPos:pst.default,GEORADIUS_RO_WITH:hst.default,geoRadiusRoWith:hst.default,GEORADIUS_RO:mst.default,geoRadiusRo:mst.default,GEORADIUS_STORE:gst.default,geoRadiusStore:gst.default,GEORADIUS_WITH:yst.default,geoRadiusWith:yst.default,GEORADIUS:_st.default,geoRadius:_st.default,GEORADIUSBYMEMBER_RO_WITH:Ast.default,geoRadiusByMemberRoWith:Ast.default,GEORADIUSBYMEMBER_RO:vst.default,geoRadiusByMemberRo:vst.default,GEORADIUSBYMEMBER_STORE:bst.default,geoRadiusByMemberStore:bst.default,GEORADIUSBYMEMBER_WITH:Est.default,geoRadiusByMemberWith:Est.default,GEORADIUSBYMEMBER:Sst.default,geoRadiusByMember:Sst.default,GEOSEARCH_WITH:wst.default,geoSearchWith:wst.default,GEOSEARCH:Ist.default,geoSearch:Ist.default,GEOSEARCHSTORE:xst.default,geoSearchStore:xst.default,GET:Cst.default,get:Cst.default,GETBIT:Tst.default,getBit:Tst.default,GETDEL:Nst.default,getDel:Nst.default,GETEX:Rst.default,getEx:Rst.default,GETRANGE:Dst.default,getRange:Dst.default,GETSET:kst.default,getSet:kst.default,HDEL:Yst.default,hDel:Yst.default,HELLO:Wst.default,hello:Wst.default,HEXISTS:Xst.default,hExists:Xst.default,HEXPIRE:Jst.default,hExpire:Jst.default,HEXPIREAT:Zst.default,hExpireAt:Zst.default,HEXPIRETIME:eat.default,hExpireTime:eat.default,HGET:tat.default,hGet:tat.default,HGETALL:rat.default,hGetAll:rat.default,HGETDEL:nat.default,hGetDel:nat.default,HGETEX:iat.default,hGetEx:iat.default,HINCRBY:sat.default,hIncrBy:sat.default,HINCRBYFLOAT:aat.default,hIncrByFloat:aat.default,HKEYS:oat.default,hKeys:oat.default,HLEN:uat.default,hLen:uat.default,HMGET:cat.default,hmGet:cat.default,HPERSIST:lat.default,hPersist:lat.default,HPEXPIRE:dat.default,hpExpire:dat.default,HPEXPIREAT:fat.default,hpExpireAt:fat.default,HPEXPIRETIME:pat.default,hpExpireTime:pat.default,HPTTL:hat.default,hpTTL:hat.default,HRANDFIELD_COUNT_WITHVALUES:mat.default,hRandFieldCountWithValues:mat.default,HRANDFIELD_COUNT:gat.default,hRandFieldCount:gat.default,HRANDFIELD:yat.default,hRandField:yat.default,HSCAN:_at.default,hScan:_at.default,HSCAN_NOVALUES:Aat.default,hScanNoValues:Aat.default,HSET:vat.default,hSet:vat.default,HSETEX:bat.default,hSetEx:bat.default,HSETNX:Eat.default,hSetNX:Eat.default,HSTRLEN:Sat.default,hStrLen:Sat.default,HTTL:wat.default,hTTL:wat.default,HVALS:Iat.default,hVals:Iat.default,HOTKEYS_GET:xat.default,hotkeysGet:xat.default,HOTKEYS_RESET:Cat.default,hotkeysReset:Cat.default,HOTKEYS_START:Tat.default,hotkeysStart:Tat.default,HOTKEYS_STOP:Nat.default,hotkeysStop:Nat.default,INCR:Rat.default,incr:Rat.default,INCRBY:Dat.default,incrBy:Dat.default,INCRBYFLOAT:kat.default,incrByFloat:kat.default,INFO:Oat.default,info:Oat.default,KEYS:Pat.default,keys:Pat.default,LASTSAVE:Mat.default,lastSave:Mat.default,LATENCY_DOCTOR:Lat.default,latencyDoctor:Lat.default,LATENCY_GRAPH:Bat.default,latencyGraph:Bat.default,LATENCY_HISTORY:$at.default,latencyHistory:$at.default,LATENCY_HISTOGRAM:glt.default,latencyHistogram:glt.default,LATENCY_LATEST:Fat.default,latencyLatest:Fat.default,LATENCY_RESET:Uat.default,latencyReset:Uat.default,LCS_IDX_WITHMATCHLEN:qat.default,lcsIdxWithMatchLen:qat.default,LCS_IDX:jat.default,lcsIdx:jat.default,LCS_LEN:Hat.default,lcsLen:Hat.default,LCS:Kat.default,lcs:Kat.default,LINDEX:Vat.default,lIndex:Vat.default,LINSERT:zat.default,lInsert:zat.default,LLEN:Qat.default,lLen:Qat.default,LMOVE:Gat.default,lMove:Gat.default,LMPOP:Yat.default,lmPop:Yat.default,LOLWUT:wDr.default,LPOP_COUNT:Wat.default,lPopCount:Wat.default,LPOP:Xat.default,lPop:Xat.default,LPOS_COUNT:Jat.default,lPosCount:Jat.default,LPOS:Zat.default,lPos:Zat.default,LPUSH:eot.default,lPush:eot.default,LPUSHX:tot.default,lPushX:tot.default,LRANGE:rot.default,lRange:rot.default,LREM:not.default,lRem:not.default,LSET:iot.default,lSet:iot.default,LTRIM:sot.default,lTrim:sot.default,MEMORY_DOCTOR:aot.default,memoryDoctor:aot.default,"MEMORY_MALLOC-STATS":oot.default,memoryMallocStats:oot.default,MEMORY_PURGE:uot.default,memoryPurge:uot.default,MEMORY_STATS:cot.default,memoryStats:cot.default,MEMORY_USAGE:lot.default,memoryUsage:lot.default,MGET:dot.default,mGet:dot.default,MIGRATE:fot.default,migrate:fot.default,MODULE_LIST:pot.default,moduleList:pot.default,MODULE_LOAD:hot.default,moduleLoad:hot.default,MODULE_UNLOAD:mot.default,moduleUnload:mot.default,MOVE:got.default,move:got.default,MSET:yot.default,mSet:yot.default,MSETEX:_ot.default,mSetEx:_ot.default,MSETNX:Aot.default,mSetNX:Aot.default,OBJECT_ENCODING:vot.default,objectEncoding:vot.default,OBJECT_FREQ:bot.default,objectFreq:bot.default,OBJECT_IDLETIME:Eot.default,objectIdleTime:Eot.default,OBJECT_REFCOUNT:Sot.default,objectRefCount:Sot.default,PERSIST:wot.default,persist:wot.default,PEXPIRE:Iot.default,pExpire:Iot.default,PEXPIREAT:xot.default,pExpireAt:xot.default,PEXPIRETIME:Cot.default,pExpireTime:Cot.default,PFADD:Tot.default,pfAdd:Tot.default,PFCOUNT:Not.default,pfCount:Not.default,PFMERGE:Rot.default,pfMerge:Rot.default,PING:Dot.default,ping:Dot.default,PSETEX:kot.default,pSetEx:kot.default,PTTL:Oot.default,pTTL:Oot.default,PUBLISH:Pot.default,publish:Pot.default,PUBSUB_CHANNELS:Mot.default,pubSubChannels:Mot.default,PUBSUB_NUMPAT:Lot.default,pubSubNumPat:Lot.default,PUBSUB_NUMSUB:Bot.default,pubSubNumSub:Bot.default,PUBSUB_SHARDNUMSUB:$ot.default,pubSubShardNumSub:$ot.default,PUBSUB_SHARDCHANNELS:Fot.default,pubSubShardChannels:Fot.default,RANDOMKEY:Uot.default,randomKey:Uot.default,READONLY:qot.default,readonly:qot.default,RENAME:jot.default,rename:jot.default,RENAMENX:Hot.default,renameNX:Hot.default,REPLICAOF:Kot.default,replicaOf:Kot.default,"RESTORE-ASKING":Vot.default,restoreAsking:Vot.default,RESTORE:zot.default,restore:zot.default,RPOP_COUNT:Got.default,rPopCount:Got.default,ROLE:Qot.default,role:Qot.default,RPOP:Yot.default,rPop:Yot.default,RPOPLPUSH:Wot.default,rPopLPush:Wot.default,RPUSH:Xot.default,rPush:Xot.default,RPUSHX:Jot.default,rPushX:Jot.default,SADD:Zot.default,sAdd:Zot.default,SCAN:eut.default,scan:eut.default,SCARD:tut.default,sCard:tut.default,SCRIPT_DEBUG:rut.default,scriptDebug:rut.default,SCRIPT_EXISTS:nut.default,scriptExists:nut.default,SCRIPT_FLUSH:iut.default,scriptFlush:iut.default,SCRIPT_KILL:sut.default,scriptKill:sut.default,SCRIPT_LOAD:aut.default,scriptLoad:aut.default,SDIFF:out.default,sDiff:out.default,SDIFFSTORE:uut.default,sDiffStore:uut.default,SET:cut.default,set:cut.default,SETBIT:lut.default,setBit:lut.default,SETEX:dut.default,setEx:dut.default,SETNX:fut.default,setNX:fut.default,SETRANGE:put.default,setRange:put.default,SINTER:hut.default,sInter:hut.default,SINTERCARD:mut.default,sInterCard:mut.default,SINTERSTORE:gut.default,sInterStore:gut.default,SISMEMBER:yut.default,sIsMember:yut.default,SMEMBERS:_ut.default,sMembers:_ut.default,SMISMEMBER:Aut.default,smIsMember:Aut.default,SMOVE:vut.default,sMove:vut.default,SORT_RO:but.default,sortRo:but.default,SORT_STORE:Eut.default,sortStore:Eut.default,SORT:Sut.default,sort:Sut.default,SPOP_COUNT:wut.default,sPopCount:wut.default,SPOP:Iut.default,sPop:Iut.default,SPUBLISH:xut.default,sPublish:xut.default,SRANDMEMBER_COUNT:Cut.default,sRandMemberCount:Cut.default,SRANDMEMBER:Tut.default,sRandMember:Tut.default,SREM:Nut.default,sRem:Nut.default,SSCAN:Rut.default,sScan:Rut.default,STRLEN:Dut.default,strLen:Dut.default,SUNION:kut.default,sUnion:kut.default,SUNIONSTORE:Out.default,sUnionStore:Out.default,SWAPDB:Put.default,swapDb:Put.default,TIME:Mut.default,time:Mut.default,TOUCH:Lut.default,touch:Lut.default,TTL:But.default,ttl:But.default,TYPE:$ut.default,type:$ut.default,UNLINK:Fut.default,unlink:Fut.default,WAIT:Uut.default,wait:Uut.default,XACK:qut.default,xAck:qut.default,XACKDEL:jut.default,xAckDel:jut.default,XADD_NOMKSTREAM:Hut.default,xAddNoMkStream:Hut.default,XADD:Kut.default,xAdd:Kut.default,XAUTOCLAIM_JUSTID:Vut.default,xAutoClaimJustId:Vut.default,XAUTOCLAIM:zut.default,xAutoClaim:zut.default,XCLAIM_JUSTID:Qut.default,xClaimJustId:Qut.default,XCLAIM:Gut.default,xClaim:Gut.default,XCFGSET:Yut.default,xCfgSet:Yut.default,XDEL:Wut.default,xDel:Wut.default,XDELEX:Xut.default,xDelEx:Xut.default,XGROUP_CREATE:Jut.default,xGroupCreate:Jut.default,XGROUP_CREATECONSUMER:Zut.default,xGroupCreateConsumer:Zut.default,XGROUP_DELCONSUMER:ect.default,xGroupDelConsumer:ect.default,XGROUP_DESTROY:tct.default,xGroupDestroy:tct.default,XGROUP_SETID:rct.default,xGroupSetId:rct.default,XINFO_CONSUMERS:nct.default,xInfoConsumers:nct.default,XINFO_GROUPS:ict.default,xInfoGroups:ict.default,XINFO_STREAM:sct.default,xInfoStream:sct.default,XLEN:act.default,xLen:act.default,XPENDING_RANGE:oct.default,xPendingRange:oct.default,XPENDING:uct.default,xPending:uct.default,XRANGE:cct.default,xRange:cct.default,XREAD:lct.default,xRead:lct.default,XREADGROUP:dct.default,xReadGroup:dct.default,XREVRANGE:fct.default,xRevRange:fct.default,XSETID:pct.default,xSetId:pct.default,XTRIM:hct.default,xTrim:hct.default,ZADD_INCR:mct.default,zAddIncr:mct.default,ZADD:gct.default,zAdd:gct.default,ZCARD:yct.default,zCard:yct.default,ZCOUNT:_ct.default,zCount:_ct.default,ZDIFF_WITHSCORES:Act.default,zDiffWithScores:Act.default,ZDIFF:vct.default,zDiff:vct.default,ZDIFFSTORE:bct.default,zDiffStore:bct.default,ZINCRBY:Ect.default,zIncrBy:Ect.default,ZINTER_WITHSCORES:Sct.default,zInterWithScores:Sct.default,ZINTER:wct.default,zInter:wct.default,ZINTERCARD:Ict.default,zInterCard:Ict.default,ZINTERSTORE:xct.default,zInterStore:xct.default,ZLEXCOUNT:Cct.default,zLexCount:Cct.default,ZMPOP:Tct.default,zmPop:Tct.default,ZMSCORE:Nct.default,zmScore:Nct.default,ZPOPMAX_COUNT:Rct.default,zPopMaxCount:Rct.default,ZPOPMAX:Dct.default,zPopMax:Dct.default,ZPOPMIN_COUNT:kct.default,zPopMinCount:kct.default,ZPOPMIN:Oct.default,zPopMin:Oct.default,ZRANDMEMBER_COUNT_WITHSCORES:Pct.default,zRandMemberCountWithScores:Pct.default,ZRANDMEMBER_COUNT:Mct.default,zRandMemberCount:Mct.default,ZRANDMEMBER:Lct.default,zRandMember:Lct.default,ZRANGE_WITHSCORES:Bct.default,zRangeWithScores:Bct.default,ZRANGE:$ct.default,zRange:$ct.default,ZRANGEBYLEX:Fct.default,zRangeByLex:Fct.default,ZRANGEBYSCORE_WITHSCORES:Uct.default,zRangeByScoreWithScores:Uct.default,ZRANGEBYSCORE:qct.default,zRangeByScore:qct.default,ZRANGESTORE:jct.default,zRangeStore:jct.default,ZRANK_WITHSCORE:Kct.default,zRankWithScore:Kct.default,ZRANK:Vct.default,zRank:Vct.default,ZREM:zct.default,zRem:zct.default,ZREMRANGEBYLEX:Qct.default,zRemRangeByLex:Qct.default,ZREMRANGEBYRANK:Gct.default,zRemRangeByRank:Gct.default,ZREMRANGEBYSCORE:Hct.default,zRemRangeByScore:Hct.default,ZREVRANK:Yct.default,zRevRank:Yct.default,ZSCAN:Wct.default,zScan:Wct.default,ZSCORE:Xct.default,zScore:Xct.default,ZUNION_WITHSCORES:Jct.default,zUnionWithScores:Jct.default,ZUNION:Zct.default,zUnion:Zct.default,ZUNIONSTORE:elt.default,zUnionStore:elt.default,VADD:tlt.default,vAdd:tlt.default,VCARD:rlt.default,vCard:rlt.default,VDIM:nlt.default,vDim:nlt.default,VEMB:ilt.default,vEmb:ilt.default,VEMB_RAW:slt.default,vEmbRaw:slt.default,VGETATTR:alt.default,vGetAttr:alt.default,VINFO:olt.default,vInfo:olt.default,VLINKS:ult.default,vLinks:ult.default,VLINKS_WITHSCORES:clt.default,vLinksWithScores:clt.default,VRANDMEMBER:llt.default,vRandMember:llt.default,VRANGE:dlt.default,vRange:dlt.default,VREM:flt.default,vRem:flt.default,VSETATTR:plt.default,vSetAttr:plt.default,VSIM:hlt.default,vSim:hlt.default,VSIM_WITHSCORES:mlt.default,vSimWithScores:mlt.default};var IDr=W(Bd()),{HOTKEYS_GET:L8n,hotkeysGet:B8n,HOTKEYS_RESET:$8n,hotkeysReset:F8n,HOTKEYS_START:U8n,hotkeysStart:q8n,HOTKEYS_STOP:j8n,hotkeysStop:H8n,...xDr}=IDr.default;Ri.NON_STICKY_COMMANDS=xDr});var GD=b(cr=>{"use strict";var ylt=cr&&cr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},_lt;Object.defineProperty(cr,"__esModule",{value:!0});cr.emitDiagnostics=cr.dbgMaintenance=cr.MAINTENANCE_EVENTS=cr.SMIGRATED_EVENT=void 0;var Alt=require("net"),CDr=require("dns/promises"),vw=ylt(require("node:assert")),TDr=require("node:timers/promises"),NDr=ylt(require("node:diagnostics_channel"));cr.SMIGRATED_EVENT="__SMIGRATED";cr.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var cy={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},RDr=(...e)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...e)};cr.dbgMaintenance=RDr;var DDr=e=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;NDr.default.channel("redis.maintenance").publish(e)};cr.emitDiagnostics=DDr;var D5=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(t){t.maintNotifications===void 0&&(t.maintNotifications=t?.RESP===3?"auto":"disabled"),t.maintEndpointType===void 0&&(t.maintEndpointType="auto"),t.maintRelaxedSocketTimeout===void 0&&(t.maintRelaxedSocketTimeout=1e4),t.maintRelaxedCommandTimeout===void 0&&(t.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(t){if(t.maintNotifications==="disabled")return;let r=t.url?new URL(t.url).hostname:t.socket?.host;if(!r)return;let n=t.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await ODr(n,r,t)],errorHandler:s=>{if((0,cr.dbgMaintenance)("handshake failed:",s),t.maintNotifications==="enabled")throw s}}}constructor(t,r,n){this.#e=t,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=t=>{if((0,cr.dbgMaintenance)("ONPUSH:",t.map(String)),!Array.isArray(t)||!Object.values(cy).includes(String(t[0])))return!1;let r=String(t[0]);switch((0,cr.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:t.map(String)}}),r){case cy.MOVING:{let n=t[2],i=t[3]?String(t[3]):null;return(0,cr.dbgMaintenance)("Received MOVING:",n,i),this.#o(n,i),!0}case cy.MIGRATING:case cy.SMIGRATING:case cy.FAILING_OVER:return(0,cr.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#i(),!0;case cy.MIGRATED:case cy.FAILED_OVER:return(0,cr.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#s(),!0;case cy.SMIGRATED:return(0,cr.dbgMaintenance)("Received SMIGRATED"),this.#u(t),this.#s(),!0}return!1};#o=async(t,r)=>{this.#i();let n,i;if(r===null){(0,vw.default)(this.#t.maintEndpointType==="none");let{host:c,port:l}=this.#l();n=c,i=l;let d=t*1e3/2;(0,cr.dbgMaintenance)(`Wait for ${d}ms`),await(0,TDr.setTimeout)(d)}else{let c=r.split(":");n=c[0],i=Number(c[1])}(0,cr.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,cr.dbgMaintenance)("Creating new tmp client");let s=performance.now();if(this.#t.url){let c=new URL(this.#t.url);c.hostname=n,c.port=String(i),this.#t.url=c.toString()}else this.#t.socket={...this.#t.socket,host:n,port:i};let a=this.#n.duplicate();a.on("error",c=>{(0,cr.dbgMaintenance)("[ERR]",c)}),(0,cr.dbgMaintenance)(`Tmp client created in ${(performance.now()-s).toFixed(2)}ms`),(0,cr.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,cr.dbgMaintenance)(`Connecting tmp client: ${n}:${i}`),s=performance.now(),await a.connect(),(0,cr.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-s).toFixed(2)}ms`),(0,cr.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,cr.dbgMaintenance)("In-flight commands completed"),(0,cr.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),u=a._ejectSocket();this.#n._insertSocket(u),a._insertSocket(o),a.destroy(),(0,cr.dbgMaintenance)("Swap client sockets done."),(0,cr.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#s()};#i=()=>{if(this.#r++,this.#r>1){(0,cr.dbgMaintenance)("Timeout relaxation already done");return}let t={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(t)};#s=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,cr.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let t={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(t)};#u=t=>{let r=_lt.parseSMigratedPush(t);(0,cr.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(t){let r=new Map;for(let[i,s,a]of t[2]){let o=String(i),[u,c]=String(s).split(":"),l=String(a).split(",").map(p=>{let h=p.indexOf("-");return h===-1?Number(p):[Number(p.substring(0,h)),Number(p.substring(h+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===u&&p.addr.port===Number(c));f?f.slots=f.slots.concat(l):d.push({addr:{host:u,port:Number(c)},slots:l}),r.set(o,d)}let n=[];for(let[i,s]of r.entries()){let[a,o]=i.split(":");n.push({source:{host:a,port:Number(o)},destinations:s})}return{seqId:t[1],entries:n}}#l(){(0,vw.default)(this.#t.socket!==void 0),(0,vw.default)("host"in this.#t.socket),(0,vw.default)(typeof this.#t.socket.host=="string");let t=this.#t.socket.host;(0,vw.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:t,port:r}}};_lt=D5;cr.default=D5;function kDr(e){let t=(0,Alt.isIP)(e);if(t===4){let r=e.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return t===6?e.startsWith("fc")||e.startsWith("fd")||e==="::1"||e.startsWith("fe80"):!1}async function ODr(e,t,r){if((0,vw.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,cr.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,Alt.isIP)(t)?t:(await(0,CDr.lookup)(t,{family:0})).address,i=kDr(n),s;return e?s=i?"internal-fqdn":"external-fqdn":s=i?"internal-ip":"external-ip",(0,cr.dbgMaintenance)(`Determine endpoint type: ${s}`),s}});var Ilt=b(YD=>{"use strict";var wlt=YD&&YD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YD,"__esModule",{value:!0});var vlt=require("node:events"),blt=wlt(require("node:net")),PDr=wlt(require("node:tls")),mp=fp(),Elt=require("node:timers/promises"),Slt=GD(),ppe=class extends vlt.EventEmitter{#e;#t;#r;#n;#a;#o;#i;#s=!1;get isOpen(){return this.#s}#u=!1;get isReady(){return this.#u}#l=!1;#m=0;get socketEpoch(){return this.#m}constructor(t,r){super(),this.#e=t,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(t){let r=t?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,i)=>{try{let s=r(n,i);if(s!==!1&&!(s instanceof Error)&&typeof s!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${s} instead`);return s}catch(s){return this.emit("error",s),this.defaultReconnectStrategy(n,s)}}:this.defaultReconnectStrategy}#d(t){if(t?.tls===!0){let n={...t,port:t?.port??6379,noDelay:t?.noDelay??!0,keepAlive:t?.keepAlive??!0,keepAliveInitialDelay:t?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return PDr.default.connect(n)},event:"secureConnect"}}if(t&&"path"in t){let n={...t,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return blt.default.createConnection(n)},event:"connect"}}let r={...t,port:t?.port??6379,noDelay:t?.noDelay??!0,keepAlive:t?.keepAlive??!0,keepAliveInitialDelay:t?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return blt.default.createConnection(r)},event:"connect"}}#f(t,r){let n=this.#r(t,r);return n===!1?(this.#s=!1,this.emit("error",r),r):n instanceof Error?(this.#s=!1,this.emit("error",r),new mp.ReconnectStrategyError(n,r)):n}async connect(){if(this.#s)throw new Error("Socket already opened");return this.#s=!0,this.#h()}async#h(){let t=0;do try{this.#i=await this.#_(),this.emit("connect");try{if(await this.#e(),!this.#i||this.#i.destroyed||!this.#i.readable||!this.#i.writable){let r=this.#f(t++,new mp.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,Elt.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#i.destroy(),this.#i=void 0,r}this.#u=!0,this.#m++,this.emit("ready")}catch(r){let n=this.#f(t++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,Elt.setTimeout)(n),this.emit("reconnecting")}while(this.#s&&!this.#u)}setMaintenanceTimeout(t){if((0,Slt.dbgMaintenance)(`Set socket timeout to ${t}`),this.#o===t){(0,Slt.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${t}, skipping`);return}this.#o=t,t!==void 0?this.#i?.setTimeout(t):this.#i?.setTimeout(this.#a??0)}async#_(){let t=this.#n.create(),r;return this.#t!==void 0&&(r=()=>t.destroy(new mp.ConnectionTimeoutError),t.once("timeout",r),t.setTimeout(this.#t)),this.#l&&t.unref(),await(0,vlt.once)(t,this.#n.event),r&&t.removeListener("timeout",r),this.#a&&(t.once("timeout",()=>{let n=this.#o?new mp.SocketTimeoutDuringMaintenanceError(this.#o):new mp.SocketTimeoutError(this.#a);t.destroy(n)}),t.setTimeout(this.#a)),t.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#s||this.#i!==t||this.#g(new mp.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),t}#g(t){let r=this.#u;this.#u=!1,this.emit("error",t),!(!r||!this.#s||typeof this.#f(0,t)!="number")&&(this.emit("reconnecting"),this.#h().catch(()=>{}))}write(t){if(this.#i){this.#i.cork();for(let r of t){for(let n of r)this.#i.write(n);if(this.#i.writableNeedDrain)break}this.#i.uncork()}}async quit(t){if(!this.#s)throw new mp.ClientClosedError;this.#s=!1;let r=await t();return this.destroySocket(),r}close(){if(!this.#s)throw new mp.ClientClosedError;this.#s=!1}destroy(){if(!this.#s)throw new mp.ClientClosedError;this.#s=!1,this.destroySocket()}destroySocket(){this.#u=!1,this.#i&&(this.#i.destroy(),this.#i=void 0),this.emit("end")}ref(){this.#l=!1,this.#i?.ref()}unref(){this.#l=!0,this.#i?.unref()}defaultReconnectStrategy(t,r){if(r instanceof mp.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,t)*50,2e3)+n}};YD.default=ppe});var mpe=b(k5=>{"use strict";Object.defineProperty(k5,"__esModule",{value:!0});k5.Token=void 0;var hpe=class{value;expiresAtMs;receivedAtMs;constructor(t,r,n){this.value=t,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(t){return this.expiresAtMs{"use strict";Object.defineProperty(bw,"__esModule",{value:!0});bw.TokenManager=bw.IDPError=void 0;var MDr=mpe(),O5=class extends Error{message;isRetryable;constructor(t,r){super(t),this.message=t,this.isRetryable=r,this.name="IDPError"}};bw.IDPError=O5;var gpe=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(t,r){if(this.identityProvider=t,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(t,r=0){return this.listener&&this.stop(),this.listener=t,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:t,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:i}=this.config.retry,s=t*Math.pow(n,this.retryAttempt-1);if(s=Math.min(s,r),i){let o=s*(i/100),u=Math.random()*o-o/2;s+=u}return Math.max(0,Math.floor(s))}shouldRetry(t){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(t,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(t){if(this.shouldRetry(t)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${t}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(t,!1),this.stop()}}handleNewToken=async({token:t,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(t,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(t,r){let n=Date.now(),i=new MDr.Token(t,n+r,n);return this.currentToken=i,i}scheduleNextRefresh(t){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),t===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),t)}calculateRefreshTime(t,r=Date.now()){let n=t.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(t,r){let n=t instanceof Error?t.message:String(t);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new O5(n,r))}};bw.TokenManager=gpe});var Clt=b(Ew=>{"use strict";Object.defineProperty(Ew,"__esModule",{value:!0});Ew.UnableToObtainNewCredentialsError=Ew.CredentialsError=void 0;var ype=class extends Error{constructor(t){super(`Re-authentication with latest credentials failed: ${t}`),this.name="CredentialsError"}};Ew.CredentialsError=ype;var _pe=class extends Error{constructor(t){super(`Unable to obtain new credentials : ${t}`),this.name="UnableToObtainNewCredentialsError"}};Ew.UnableToObtainNewCredentialsError=_pe});var Rlt=b(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});xl.Token=xl.CredentialsError=xl.UnableToObtainNewCredentialsError=xl.IDPError=xl.TokenManager=void 0;var Tlt=xlt();Object.defineProperty(xl,"TokenManager",{enumerable:!0,get:function(){return Tlt.TokenManager}});Object.defineProperty(xl,"IDPError",{enumerable:!0,get:function(){return Tlt.IDPError}});var Nlt=Clt();Object.defineProperty(xl,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return Nlt.UnableToObtainNewCredentialsError}});Object.defineProperty(xl,"CredentialsError",{enumerable:!0,get:function(){return Nlt.CredentialsError}});var LDr=mpe();Object.defineProperty(xl,"Token",{enumerable:!0,get:function(){return LDr.Token}})});var M5=b(gp=>{"use strict";var BDr=gp&&gp.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(gp,"__esModule",{value:!0});gp.EmptyAwareSinglyLinkedList=gp.SinglyLinkedList=gp.DoublyLinkedList=void 0;var $Dr=BDr(require("events")),Ape=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(t){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:t}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:t}}unshift(t){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:t}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:t}}add(t,r=!1){return r?this.unshift(t):this.push(t)}shift(){if(this.#t===void 0)return;--this.#e;let t=this.#t;return t.next?(t.next.previous=void 0,this.#t=t.next,t.next=void 0):this.#t=this.#r=void 0,t.value}remove(t){this.#e!==0&&(--this.#e,this.#r===t&&(this.#r=t.previous),this.#t===t?this.#t=t.next:(t.previous&&(t.previous.next=t.next),t.next&&(t.next.previous=t.previous)),t.previous=void 0,t.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let t=this.#t;for(;t!==void 0;)yield t.value,t=t.next}*nodes(){let t=this.#t;for(;t;){let r=t.next;yield t,t=r}}};gp.DoublyLinkedList=Ape;var P5=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(t){++this.#e;let r={value:t,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(t,r){if(t.removed)throw new Error("node already removed");--this.#e,this.#t===t?this.#r===t?this.#t=this.#r=void 0:this.#t=t.next:this.#r===t?(this.#r=r,r.next=void 0):r.next=t.next,t.removed=!0}shift(){if(this.#t===void 0)return;let t=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=t.next,t.removed=!0,t.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let t=this.#t;for(;t!==void 0;)yield t.value,t=t.next}};gp.SinglyLinkedList=P5;var vpe=class extends P5{events=new $Dr.default;reset(){let t=this.length;super.reset(),t!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let t=this.length,r=super.shift();return t!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(t,r){let n=this.length;super.remove(t,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};gp.EmptyAwareSinglyLinkedList=vpe});var Dlt=b(bpe=>{"use strict";Object.defineProperty(bpe,"__esModule",{value:!0});var WD=`\r -`;function FDr(e){let t=[],r="*"+e.length+WD;for(let n=0;n{var klt=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],UDr=function(t){for(var r,n=0,i=0,s=[],a=t.length;n>6|192,s[i++]=r&63|128):(r&64512)===55296&&n+1>18|240,s[i++]=r>>12&63|128,s[i++]=r>>6&63|128,s[i++]=r&63|128):(s[i++]=r>>12|224,s[i++]=r>>6&63|128,s[i++]=r&63|128);return s},Olt=Epe.exports=function(t){for(var r,n=0,i=-1,s=0,a=0,o=typeof t=="string"?UDr(t):t,u=o.length;n>8)&255]^a<<8;else if(n-1!==i)return a&16383;s=klt[(r^s>>8)&255]^s<<8}return s&16383};Epe.exports.generateMulti=function(t){for(var r=1,n=t.length,i=Olt(t[0]);r{"use strict";var qDr=Lt&&Lt.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Lt,"__esModule",{value:!0});Lt.PubSub=Lt.PUBSUB_TYPE=void 0;var jDr=qDr(Spe());Lt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var La={[Lt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[Lt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[Lt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},wpe=class e{static isStatusReply(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return La[Lt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||La[Lt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||La[Lt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||La[Lt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||La[Lt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return La[Lt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(t){return Array.isArray(t)?t:[t]}static#t(t,r){return r?t.buffers:t.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[Lt.PUBSUB_TYPE.CHANNELS]:new Map,[Lt.PUBSUB_TYPE.PATTERNS]:new Map,[Lt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(t,r,n,i){let s=[La[t].subscribe],a=e.#e(r);for(let o of a){let u=this.listeners[t].get(o);(!u||u.unsubscribing)&&s.push(o)}if(s.length===1){for(let o of a)e.#t(this.listeners[t].get(o),i).add(n);return}return this.#n=!0,this.#r++,{args:s,channelsCounter:s.length-1,resolve:()=>{this.#r--;for(let o of a){let u=this.listeners[t].get(o);u||(u={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[t].set(o,u)),e.#t(u,i).add(n)}},reject:()=>{this.#r--,this.#i()}}}extendChannelListeners(t,r,n){if(this.#a(t,r,n))return this.#n=!0,this.#r++,{args:[La[t].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#i()}}}#a(t,r,n){let i=this.listeners[t].get(r);if(!i)return this.listeners[t].set(r,n),!0;for(let s of n.buffers)i.buffers.add(s);for(let s of n.strings)i.strings.add(s);return!1}extendTypeListeners(t,r){let n=[La[t].subscribe];for(let[i,s]of r)this.#a(t,i,s)&&n.push(i);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#i()}}}unsubscribe(t,r,n,i){let s=this.listeners[t];if(!r)return this.#o([La[t].unsubscribe],NaN,()=>s.clear());let a=e.#e(r);if(!n)return this.#o([La[t].unsubscribe,...a],a.length,()=>{for(let u of a)s.delete(u)});let o=[La[t].unsubscribe];for(let u of a){let c=s.get(u);if(c){let l,d;if(i?(l=c.buffers,d=c.strings):(l=c.strings,d=c.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;c.unsubscribing=!0}o.push(u)}if(o.length===1){for(let u of a)e.#t(s.get(u),i).delete(n);return}return this.#o(o,o.length-1,()=>{for(let u of a){let c=s.get(u);c&&((i?c.buffers:c.strings).delete(n),c.buffers.size===0&&c.strings.size===0&&s.delete(u))}})}#o(t,r,n){return{args:t,channelsCounter:r,resolve:()=>{n(),this.#i()},reject:void 0}}#i(){this.#n=this.listeners[Lt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[Lt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[Lt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let t=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===Lt.PUBSUB_TYPE.SHARDED?this.#u(t,n):this.#s(t,r,n));return t}#s(t,r,n){this.#r++;let i=()=>this.#r--;t.push({args:[La[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:i,reject:i})}#u(t,r){let n=()=>this.#r--;for(let i of r.keys())this.#r++,t.push({args:[La[Lt.PUBSUB_TYPE.SHARDED].subscribe,i],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return La[Lt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(Lt.PUBSUB_TYPE.CHANNELS,t[2],t[1]),!0):La[Lt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(Lt.PUBSUB_TYPE.PATTERNS,t[3],t[2],t[1]),!0):La[Lt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(Lt.PUBSUB_TYPE.SHARDED,t[2],t[1]),!0):!1}removeShardedListeners(t){let r=this.listeners[Lt.PUBSUB_TYPE.SHARDED].get(t);return this.listeners[Lt.PUBSUB_TYPE.SHARDED].delete(t),this.#i(),r}removeAllListeners(){let t={[Lt.PUBSUB_TYPE.CHANNELS]:this.listeners[Lt.PUBSUB_TYPE.CHANNELS],[Lt.PUBSUB_TYPE.PATTERNS]:this.listeners[Lt.PUBSUB_TYPE.PATTERNS],[Lt.PUBSUB_TYPE.SHARDED]:this.listeners[Lt.PUBSUB_TYPE.SHARDED]};return this.#i(),this.listeners[Lt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[Lt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[Lt.PUBSUB_TYPE.SHARDED]=new Map,t}removeShardedPubSubListenersForSlots(t){let r=new Map;for(let[n,i]of this.listeners[Lt.PUBSUB_TYPE.SHARDED])t.has((0,jDr.default)(n))&&(r.set(n,i),this.listeners[Lt.PUBSUB_TYPE.SHARDED].delete(n));return this.#i(),{[Lt.PUBSUB_TYPE.SHARDED]:r}}#l(t,r,n,i){let s=(i??n).toString(),a=this.listeners[t].get(s);if(!a)return;for(let c of a.buffers)c(r,n);if(!a.strings.size)return;let o=i?n.toString():s,u=o==="__redis__:invalidate"?r===null?null:r.map(c=>c.toString()):r.toString();for(let c of a.strings)c(u,o)}};Lt.PubSub=wpe});var Mlt=b(ZD=>{"use strict";var HDr=ZD&&ZD.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZD,"__esModule",{value:!0});var Plt=M5(),KDr=HDr(Dlt()),JD=E5(),Ipe=XD(),Sw=fp(),ww=GD(),VDr=Buffer.from("pong"),zDr=Buffer.from("RESET"),QDr={...JD.PUSH_TYPE_MAPPING,[JD.RESP_TYPES.SIMPLE_STRING]:Buffer},xpe=class e{#e;#t;#r=new Plt.DoublyLinkedList;#n=new Plt.EmptyAwareSinglyLinkedList;#a;#o;decoder;#i=new Ipe.PubSub;#s=[this.#p.bind(this)];#u;setMaintenanceCommandTimeout(t){if(this.#u===t){(0,ww.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${t}, skipping`);return}if((0,ww.dbgMaintenance)(`Setting maintenance command timeout to ${t}`),this.#u=t,this.#u===void 0){(0,ww.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let i of this.#r.nodes()){let s=i.value;e.#I(s),r++;let a=this.#u,o=AbortSignal.timeout(a);s.timeout={signal:o,listener:()=>{this.#r.remove(i),s.reject(new Sw.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:s.timeout?.originalTimeout},o.addEventListener("abort",s.timeout.listener,{once:!0})}(0,ww.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${t}`)}get isPubSubActive(){return this.#i.isActive}constructor(t,r,n){this.#e=t,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(t){this.#n.shift().resolve(t)}#m(t){this.#n.shift().reject(t)}#p(t){if(this.#i.handleMessageReply(t))return!0;let r=Ipe.PubSub.isShardedUnsubscribe(t);if(r&&!this.#n.length){let n=t[1].toString();return this.#a(n,this.#i.removeShardedListeners(n)),!0}else if(r||Ipe.PubSub.isStatusReply(t)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&t[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new JD.Decoder({onReply:t=>this.#l(t),onErrorReply:t=>this.#m(t),onPush:t=>{for(let r of this.#s)if(r(t))return},getTypeMapping:()=>this.#d()})}addPushHandler(t){this.#s.push(t)}async waitForInflightCommandsToComplete(t){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{i&&clearTimeout(i),r()},i,s=t?.timeoutMs;s!==void 0&&s>0&&(i=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,ww.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${s}ms with ${a} commands still waiting`),t?.flushOnTimeout&&a>0&&((0,ww.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#S(new Sw.TimeoutError)),r()},s)),this.#n.events.once("empty",n)})}addCommand(t,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new Sw.AbortError):new Promise((n,i)=>{let s,a={args:t,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:i,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#u??r?.timeout,u=this.#u!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(s),a.reject(u?new Sw.CommandTimeoutDuringMaintenanceError(o):new Sw.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let c=r?.abortSignal;c&&(a.abort={signal:c,listener:()=>{this.#r.remove(s),a.reject(new Sw.AbortError)}},c.addEventListener("abort",a.abort.listener,{once:!0})),s=this.#r.add(a,r?.asap)})}#h(t,r=!1,n){return new Promise((i,s)=>{this.#r.add({args:t.args,chainId:n,abort:void 0,timeout:void 0,resolve(){t.resolve(),i()},reject(a){t.reject?.(),s(a)},channelsCounter:t.channelsCounter,typeMapping:JD.PUSH_TYPE_MAPPING},r)})}#_(){this.#e===2&&(this.decoder.onReply=t=>{if(Array.isArray(t)){if(this.#p(t))return;let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];if(VDr.equals(r)){let{resolve:n,typeMapping:i}=this.#n.shift(),s=t[1].length===0?t[0]:t[1];n(i?.[JD.RESP_TYPES.SIMPLE_STRING]===Buffer?s:s.toString());return}}return this.#l(t)},this.decoder.getTypeMapping=()=>QDr)}subscribe(t,r,n,i){let s=this.#i.subscribe(t,r,n,i);if(s)return this.#_(),this.#h(s)}#g(){this.decoder.onReply=t=>this.#l(t),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(t,r,n,i){let s=this.#i.unsubscribe(t,r,n,i);if(s){if(s&&this.#e===2){let{resolve:a}=s;s.resolve=()=>{this.#i.isActive||this.#g(),a()}}return this.#h(s)}}removeAllPubSubListeners(){return this.#i.removeAllListeners()}removeShardedPubSubListenersForSlots(t){return this.#i.removeShardedPubSubListenersForSlots(t)}resubscribe(t){let r=this.#i.resubscribe();if(r.length)return this.#_(),Promise.all(r.map(n=>this.#h(n,!0,t)))}extendPubSubChannelListeners(t,r,n){let i=this.#i.extendChannelListeners(t,r,n);if(i)return this.#_(),this.#h(i)}extendPubSubListeners(t,r){let n=this.#i.extendTypeListeners(t,r);if(n)return this.#_(),this.#h(n)}getPubSubListeners(t){return this.#i.listeners[t]}monitor(t,r){return new Promise((n,i)=>{let s=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#b?this.#b=t:this.decoder.onReply=t,this.decoder.getTypeMapping=()=>s,n()},reject:i,channelsCounter:void 0,typeMapping:s},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#b;async reset(t,r){return new Promise((n,i)=>{this.#b=this.decoder.onReply,this.decoder.onReply=s=>{if(typeof s=="string"&&s==="RESET"||s instanceof Buffer&&zDr.equals(s)){this.#g(),this.#b=void 0,this.#i.reset(),this.#n.shift().resolve(s);return}this.#b(s)},this.#r.push({args:["RESET"],chainId:t,abort:void 0,timeout:void 0,resolve:n,reject:i,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let t=this.#r.shift();for(;t;){let r;try{r=(0,KDr.default)(t.args)}catch(n){t.reject(n),t=this.#r.shift();continue}t.args=void 0,t.abort&&(e.#y(t),t.abort=void 0),t.timeout&&(e.#I(t),t.timeout=void 0),this.#o=t.chainId,t.chainId=void 0,this.#n.push(t),yield r,t=this.#r.shift()}}#S(t){for(let r of this.#n)r.reject(t);this.#n.reset()}static#y(t){t.abort.signal.removeEventListener("abort",t.abort.listener)}static#I(t){t.timeout?.signal.removeEventListener("abort",t.timeout.listener)}static#E(t,r){t.abort&&e.#y(t),t.timeout&&e.#I(t),t.reject(r)}flushWaitingForReply(t){if(this.resetDecoder(),this.#i.reset(),this.#S(t),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)e.#E(this.#r.shift(),t);this.#o=void 0}}flushAll(t){this.resetDecoder(),this.#i.reset(),this.#S(t);for(let r of this.#r)e.#E(r,t);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(t){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&t.has(n.value.slotNumber)){r.push(n.value);let i=n;n=n.next,this.#r.remove(i)}else n=n.next;return r}extractAllCommands(){let t=[],r=this.#r.head;for(;r;)t.push(r.value),this.#r.remove(r),r=r.next;return t}prependCommandsToWrite(t){if(t.length)for(let r=t.length-1;r>=0;r--)this.#r.unshift(t[r])}};ZD.default=xpe});var _p=b(yp=>{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});yp.scriptArgumentsPrefix=yp.functionArgumentsPrefix=yp.getTransformReply=yp.attachConfig=void 0;function Llt(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function GDr({BaseClass:e,commands:t,createCommand:r,createModuleCommand:n,createFunctionCommand:i,createScriptCommand:s,config:a}){let o=a?.RESP??2,u=class extends e{};for(let[c,l]of Object.entries(t))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?u.prototype[c]=Llt:u.prototype[c]=r(l,o);if(a?.modules)for(let[c,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=Llt:d[f]=n(p,o);Blt(u.prototype,c,d)}if(a?.functions)for(let[c,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=i(f,p,o);Blt(u.prototype,c,d)}if(a?.scripts)for(let[c,l]of Object.entries(a.scripts))u.prototype[c]=s(l,o);return u}yp.attachConfig=GDr;function Blt(e,t,r){Object.defineProperty(e,t,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,t,{value:n}),n}})}function YDr(e,t){switch(typeof e.transformReply){case"function":return e.transformReply;case"object":return e.transformReply[t]}}yp.getTransformReply=YDr;function WDr(e,t){let r=[t.IS_READ_ONLY?"FCALL_RO":"FCALL",e];return t.NUMBER_OF_KEYS!==void 0&&r.push(t.NUMBER_OF_KEYS.toString()),r}yp.functionArgumentsPrefix=WDr;function XDr(e){let t=[e.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",e.SHA1];return e.NUMBER_OF_KEYS!==void 0&&t.push(e.NUMBER_OF_KEYS.toString()),t}yp.scriptArgumentsPrefix=XDr});var ek=b(Tpe=>{"use strict";Object.defineProperty(Tpe,"__esModule",{value:!0});var $lt=fp(),Cpe=class{typeMapping;constructor(t){this.typeMapping=t}queue=[];scriptsInUse=new Set;addCommand(t,r){this.queue.push({args:t,transformReply:r})}addScript(t,r,n){let i=[];i.preserve=r.preserve,this.scriptsInUse.has(t.SHA1)?i.push("EVALSHA",t.SHA1):(this.scriptsInUse.add(t.SHA1),i.push("EVAL",t.SCRIPT)),t.NUMBER_OF_KEYS!==void 0&&i.push(t.NUMBER_OF_KEYS.toString()),i.push(...r),this.addCommand(i,n)}transformReplies(t){let r=[],n=t.map((i,s)=>{if(i instanceof $lt.ErrorReply)return r.push(s),i;let{transformReply:a,args:o}=this.queue[s];return a?a(i,o.preserve,this.typeMapping):i});if(r.length)throw new $lt.MultiErrorReply(n,r);return n}};Tpe.default=Cpe});var Rpe=b(tk=>{"use strict";var Flt=tk&&tk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tk,"__esModule",{value:!0});var JDr=Flt(Bd()),ZDr=Flt(ek()),Iw=_p(),L5=pp(),Npe=class e{static#e(t,r){let n=(0,Iw.getTransformReply)(t,r);return function(...i){let s=new L5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;return a.preserve=s.preserve,this.addCommand(a,n)}}static#t(t,r){let n=(0,Iw.getTransformReply)(t,r);return function(...i){let s=new L5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;return a.preserve=s.preserve,this._self.addCommand(a,n)}}static#r(t,r,n){let i=(0,Iw.functionArgumentsPrefix)(t,r),s=(0,Iw.getTransformReply)(r,n);return function(...a){let o=new L5.BasicCommandParser;o.push(...i),r.parseCommand(o,...a);let u=o.redisArgs;return u.preserve=o.preserve,this._self.addCommand(u,s)}}static#n(t,r){let n=(0,Iw.getTransformReply)(t,r);return function(...i){let s=new L5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;return a.preserve=s.preserve,this.#u(t,a,n)}}static extend(t){return(0,Iw.attachConfig)({BaseClass:e,commands:JDr.default,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t})}#a;#o;#i;#s;constructor(t,r,n){this.#a=new ZDr.default(n),this.#o=t,this.#i=r}SELECT(t,r){return this.#s=t,this.#a.addCommand(["SELECT",t.toString()],r),this}select=this.SELECT;addCommand(t,r){return this.#a.addCommand(t,r),this}#u(t,r,n){return this.#a.addScript(t,r,n),this}async exec(t=!1){return t?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#s))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#i(this.#a.queue,this.#s))}execAsPipelineTyped(){return this.execAsPipeline()}};tk.default=Npe});var jlt=b(Cw=>{"use strict";var Ult=Cw&&Cw.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Cw,"__esModule",{value:!0});Cw.RedisLegacyClient=void 0;var ekr=_p(),qlt=Ult(Bd()),tkr=Ult(ek()),xw=class e{static#e(t,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),e.pushArguments(t,r),n}static pushArguments(t,r){for(let n=0;nthis.#r.emit("error",c));return}u.then(c=>o(null,i?i(c):c)).catch(c=>o(c))}}#r;#n;constructor(t){this.#r=t;let r=t.options?.RESP??2;for(let[n,i]of Object.entries(qlt.default))this[n]=e.#t(n,i,r);this.#n=Dpe.factory(r)}sendCommand(...t){let r=[],n=e.#e(r,t),i=this.#r.sendCommand(r);if(!n){i.catch(s=>this.#r.emit("error",s));return}i.then(s=>n(null,s)).catch(s=>n(s))}multi(){return this.#n(this.#r)}};Cw.RedisLegacyClient=xw;var Dpe=class e{static#e(t,r,n){let i=xw.getTransformReply(r,n);return function(...s){let a=[t];return xw.pushArguments(a,s),this.#t.addCommand(a,i),this}}static factory(t){let r=class extends e{};for(let[n,i]of Object.entries(qlt.default))r.prototype[n]=e.#e(n,i,t);return n=>new r(n)}#t=new tkr.default;#r;constructor(t){this.#r=t}sendCommand(...t){let r=[];return xw.pushArguments(r,t),this.#t.addCommand(r),this}exec(t){let r=this.#r._executeMulti(this.#t.queue);if(!t){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>t(null,this.#t.transformReplies(n))).catch(n=>t?.(n))}}});var Tw=b(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});Hu.PooledNoRedirectClientSideCache=Hu.BasicPooledClientSideCache=Hu.PooledClientSideCacheProvider=Hu.BasicClientSideCache=Hu.ClientSideCacheProvider=Hu.CacheStats=void 0;var rkr=require("stream"),rk=class e{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(t,r,n,i,s,a){if(this.hitCount=t,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=i,this.totalLoadTime=s,this.evictionCount=a,t<0||r<0||n<0||i<0||s<0||a<0)throw new Error("All statistics values must be non-negative")}static of(t=0,r=0,n=0,i=0,s=0,a=0){return new e(t,r,n,i,s,a)}static empty(){return e.EMPTY_STATS}static EMPTY_STATS=new e(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let t=this.requestCount();return t===0?1:this.hitCount/t}missRate(){let t=this.requestCount();return t===0?0:this.missCount/t}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let t=this.loadCount();return t===0?0:this.loadFailureCount/t}averageLoadPenalty(){let t=this.loadCount();return t===0?0:this.totalLoadTime/t}minus(t){return e.of(Math.max(0,this.hitCount-t.hitCount),Math.max(0,this.missCount-t.missCount),Math.max(0,this.loadSuccessCount-t.loadSuccessCount),Math.max(0,this.loadFailureCount-t.loadFailureCount),Math.max(0,this.totalLoadTime-t.totalLoadTime),Math.max(0,this.evictionCount-t.evictionCount))}plus(t){return e.of(this.hitCount+t.hitCount,this.missCount+t.missCount,this.loadSuccessCount+t.loadSuccessCount,this.loadFailureCount+t.loadFailureCount,this.totalLoadTime+t.totalLoadTime,this.evictionCount+t.evictionCount)}};Hu.CacheStats=rk;var B5=class e{static INSTANCE=new e;constructor(){}recordHits(t){}recordMisses(t){}recordLoadSuccess(t){}recordLoadFailure(t){}recordEvictions(t){}snapshot(){return rk.empty()}};function nkr(){return B5.INSTANCE}var $5=class e{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(t){this.#e+=t}recordMisses(t){this.#t+=t}recordLoadSuccess(t){this.#r++,this.#a+=t}recordLoadFailure(t){this.#n++,this.#a+=t}recordEvictions(t){this.#o+=t}snapshot(){return rk.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new e}};function ikr(e){let t=new Array(e.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(t){let r=this.#e.get(t);if(r&&!r.validate()){this.delete(t),this.#r.recordEvictions(1),this.emit("cache-evict",t);return}return r!==void 0&&this.lru&&(this.#e.delete(t),this.#e.set(t,r)),r}delete(t){let r=this.#e.get(t);r&&(r.invalidate(),this.#e.delete(t))}has(t){return this.#e.has(t)}set(t,r,n){let i=this.#e.size,s=this.#e.get(t);s&&(i--,s.invalidate()),this.maxEntries>0&&i>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(t,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(t)}size(){return this.#e.size}createValueEntry(t,r){return new nk(this.ttl,r)}createPromiseEntry(t,r){return new ik(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],i=this.#e.get(n);i&&i.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};Hu.BasicClientSideCache=q5;var j5=class extends q5{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(t){if(!this.#e)return super.get(t)}has(t){return this.#e?!1:super.has(t)}onPoolClose(){this.clear()}};Hu.PooledClientSideCacheProvider=j5;var H5=class extends j5{onError(){this.clear(!1)}onClose(){this.clear(!1)}};Hu.BasicPooledClientSideCache=H5;var kpe=class extends nk{#e;constructor(t,r,n){super(t,n),this.#e=r}validate(){let t=super.validate();return this.#e&&(t=t&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),t}},Ope=class extends ik{#e;constructor(t,r,n){super(t,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},Ppe=class extends H5{createValueEntry(t,r){let n={epoch:t.socketEpoch,client:t};return new kpe(this.ttl,n,r)}createPromiseEntry(t,r){let n={epoch:t.socketEpoch,client:t};return new Ope(this.ttl,n,r)}onError(){}onClose(){}};Hu.PooledNoRedirectClientSideCache=Ppe});var K5=b(Lpe=>{"use strict";Object.defineProperty(Lpe,"__esModule",{value:!0});var Mpe=class{#e;#t;get(t){return JSON.stringify(t,Hlt())===this.#t?this.#e:void 0}set(t,r){this.#e=r,this.#t=JSON.stringify(t,Hlt())}};Lpe.default=Mpe;function Hlt(){let e=new WeakSet;return function(r,n){return n&&typeof n=="object"?e.has(n)?"circular":(e.add(n),n):n}}});var Upe=b(Nw=>{"use strict";var Fpe=Nw&&Nw.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Nw,"__esModule",{value:!0});Nw.RedisClientPool=void 0;var skr=Bd(),akr=Fpe(Rw()),okr=require("node:events"),Bpe=M5(),ukr=fp(),kv=_p(),ckr=Fpe(Rpe()),Klt=Tw(),V5=pp(),lkr=Fpe(K5()),$pe=class e extends okr.EventEmitter{static#e(t,r){let n=(0,kv.getTransformReply)(t,r);return async function(...i){let s=new V5.BasicCommandParser;return t.parseCommand(s,...i),this.execute(a=>a._executeCommand(t,s,this._commandOptions,n))}}static#t(t,r){let n=(0,kv.getTransformReply)(t,r);return async function(...i){let s=new V5.BasicCommandParser;return t.parseCommand(s,...i),this._self.execute(a=>a._executeCommand(t,s,this._self._commandOptions,n))}}static#r(t,r,n){let i=(0,kv.functionArgumentsPrefix)(t,r),s=(0,kv.getTransformReply)(r,n);return async function(...a){let o=new V5.BasicCommandParser;return o.push(...i),r.parseCommand(o,...a),this._self.execute(u=>u._executeCommand(r,o,this._self._commandOptions,s))}}static#n(t,r){let n=(0,kv.scriptArgumentsPrefix)(t),i=(0,kv.getTransformReply)(t,r);return async function(...s){let a=new V5.BasicCommandParser;return a.pushVariadic(n),t.parseCommand(a,...s),this.execute(o=>o._executeScript(t,a,this._commandOptions,i))}}static#a=new lkr.default;static create(t,r){let n=e.#a.get(t);return n||(n=(0,kv.attachConfig)({BaseClass:e,commands:skr.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t}),n.prototype.Multi=ckr.default.extend(t),e.#a.set(t,n)),Object.create(new n(t,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#i;#s;#u=new Bpe.SinglyLinkedList;get idleClients(){return this._self.#u.length}#l=new Bpe.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#u.length+this._self.#l.length}#m=new Bpe.SinglyLinkedList;get tasksQueueLength(){return this._self.#m.length}#p=!1;get isOpen(){return this._self.#p}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(t,r){if(super(),this.#s={...e.#o,...r},r?.clientSideCache)if(t===void 0&&(t={}),r.clientSideCache instanceof Klt.PooledClientSideCacheProvider)this.#f=t.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=t.clientSideCache=new Klt.BasicPooledClientSideCache(n)}this.#i=akr.default.factory(t).bind(void 0,t)}_self=this;_commandOptions;withCommandOptions(t){let r=Object.create(this._self);return r._commandOptions=t,r}#h(t,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._self.#h("typeMapping",t)}withAbortSignal(t){return this._self.#h("abortSignal",t)}asap(){return this._self.#h("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let t=[];for(;t.lengththis.emit("error",r)));try{await t.value.connect()}catch(r){throw this._self.#l.remove(t),r}this._self.#b(t)}execute(t){return new Promise((r,n)=>{let i=this._self.#u.shift(),{tail:s}=this._self.#m;if(!i){let o;this._self.#s.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#m.remove(u,s),n(new ukr.TimeoutError("Timeout waiting for a client"))},this._self.#s.acquireTimeout));let u=this._self.#m.push({timeout:o,resolve:r,reject:n,fn:t});this.totalClientsthis.#b(t)):(r(s),this.#b(t))}#b(t){let r=this.#m.shift();if(r){clearTimeout(r.timeout),this.#g(t,r.resolve,r.reject,r.fn);return}this.#l.remove(t),this.#u.push(t.value),this.#S()}cleanupTimeout;#S(){this.totalClients<=this.#s.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#y(),this.#s.cleanupDelay))}#y(){let t=Math.min(this.#u.length,this.totalClients-this.#s.minimum);for(let r=0;rn.sendCommand(t,r))}MULTI(){return new this.Multi((t,r)=>this.execute(n=>n._executeMulti(t,r)),t=>this.execute(r=>r._executePipeline(t)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#p){this._self.#d=!0;try{let t=[];for(let r of this._self.#u)t.push(r.close());for(let r of this._self.#l)t.push(r.close());await Promise.all(t),this._self.#f?.onPoolClose(),this._self.#u.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let t of this._self.#u)t.destroy();this._self.#u.reset();for(let t of this._self.#l)t.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#p=!1}};Nw.RedisClientPool=$pe});var Vlt=b((dUn,dkr)=>{dkr.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var Rw=b(Fd=>{"use strict";var fkr=Fd&&Fd.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),pkr=Fd&&Fd.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hkr=Fd&&Fd.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&fkr(t,e,r);return pkr(t,e),t},Ow=Fd&&Fd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},$d;Object.defineProperty(Fd,"__esModule",{value:!0});var Dw=Ow(Bd()),mkr=Ow(Ilt()),zlt=Rlt(),gkr=Ow(Mlt()),ykr=require("node:events"),Ov=_p(),ly=fp(),_kr=require("node:url"),kw=XD(),Akr=Ow(Rpe()),vkr=Ow(Zue()),bkr=jlt(),Ekr=Upe(),Pv=Le(),Qlt=Tw(),z5=pp(),Skr=Ow(K5()),wkr=Vlt(),Q5=hkr(GD()),G5=class extends ykr.EventEmitter{static#e(t,r){let n=(0,Ov.getTransformReply)(t,r);return async function(...i){let s=new z5.BasicCommandParser;return t.parseCommand(s,...i),this._self._executeCommand(t,s,this._commandOptions,n)}}static#t(t,r){let n=(0,Ov.getTransformReply)(t,r);return async function(...i){let s=new z5.BasicCommandParser;return t.parseCommand(s,...i),this._self._executeCommand(t,s,this._self._commandOptions,n)}}static#r(t,r,n){let i=(0,Ov.functionArgumentsPrefix)(t,r),s=(0,Ov.getTransformReply)(r,n);return async function(...a){let o=new z5.BasicCommandParser;return o.push(...i),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,s)}}static#n(t,r){let n=(0,Ov.scriptArgumentsPrefix)(t),i=(0,Ov.getTransformReply)(t,r);return async function(...s){let a=new z5.BasicCommandParser;return a.push(...n),t.parseCommand(a,...s),this._executeScript(t,a,this._commandOptions,i)}}static#a=new Skr.default;static factory(t){let r=$d.#a.get(t);return r||(r=(0,Ov.attachConfig)({BaseClass:$d,commands:Dw.default,createCommand:$d.#e,createModuleCommand:$d.#t,createFunctionCommand:$d.#r,createScriptCommand:$d.#n,config:t}),r.prototype.Multi=Akr.default.extend(t),$d.#a.set(t,r)),n=>Object.create(new r(n))}static create(t){return $d.factory(t)(t)}static parseOptions(t){if(t?.url){let r=$d.parseURL(t.url);if(t.socket){if(t.socket.tls!==void 0&&t.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${t.socket.tls} which is mismatch with protocol or the URL ${t.url} passed`);r.socket=Object.assign(t.socket,r.socket)}Object.assign(t,r)}return t}static parseURL(t){let{hostname:r,port:n,protocol:i,username:s,password:a,pathname:o}=new _kr.URL(t),u={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(i!=="redis:"&&i!=="rediss:")throw new TypeError("Invalid protocol");if(u.socket.tls=i==="rediss:",n&&(u.socket.port=Number(n)),s&&(u.username=decodeURIComponent(s)),a&&(u.password=decodeURIComponent(a)),(s||a)&&(u.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:s?decodeURIComponent(s):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let c=Number(o.substring(1));if(isNaN(c))throw new TypeError("Invalid pathname");u.database=c}return u}#o;#i;#s;#u=0;#l;_self=this;_commandOptions;#m;#p;#d;#f=null;#h=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#i.isOpen}get isReady(){return this._self.#i.isReady}get isPubSubActive(){return this._self.#s.isPubSubActive}get socketEpoch(){return this._self.#i.socketEpoch}get isWatching(){return this._self.#p!==void 0}get isDirtyWatch(){return this._self.#m!==void 0}setDirtyWatch(t){this._self.#m=t}constructor(t){if(super(),this.#_(t),this.#o=this.#g(t),this.#s=this.#b(),this.#i=this.#w(),this.#o.maintNotifications!=="disabled"&&new Q5.default(this.#s,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof Qlt.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new Qlt.BasicClientSideCache(r)}this.#s.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else t?.emitInvalidate&&this.#s.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#_(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(t?.emitInvalidate&&t?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(t?.clientSideCache&&t?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(t?.maintNotifications&&t?.maintNotifications!=="disabled"&&t?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(t={}){if(!t.credentialsProvider&&(t.username||t.password)&&(t.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:t.username,password:t.password})}),t.database&&(this._self.#u=t.database),t.commandOptions&&(this._commandOptions=t.commandOptions),t.maintNotifications!=="disabled"&&Q5.default.setupDefaultMaintOptions(t),t.url){let r=$d.parseOptions(t);return r?.database&&(this._self.#u=r.database),r}return t}#b(){return new gkr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(t,r)=>this.emit("sharded-channel-moved",t,r))}reAuthenticate=async t=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,Pv.parseArgs)(Dw.default.AUTH,{username:t.username,password:t.password??""}))};#S(t){return t.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let i=n instanceof Error?n.message:String(n);t.onReAuthenticationError(new zlt.CredentialsError(i))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;t.onReAuthenticationError(new zlt.UnableToObtainNewCredentialsError(n))}})}async#y(t,r){let n=[],i=await this.#I();r&&i.reverse();for(let{cmd:s,errorHandler:a}of i)n.push(this.#s.addCommand(s,{chainId:t,asap:r}).catch(a));return n}async#I(){let t=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let i={};if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();s.password&&(i.AUTH={username:s.username??"default",password:s.password})}if(r&&r.type==="streaming-credentials-provider"){let[s,a]=await this.#S(r);this.#f=a,s.password&&(i.AUTH={username:s.username??"default",password:s.password})}this.#o.name&&(i.SETNAME=this.#o.name),t.push({cmd:(0,Pv.parseArgs)(vkr.default,this.#o.RESP,i)})}else{if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();(i.username||i.password)&&t.push({cmd:(0,Pv.parseArgs)(Dw.default.AUTH,{username:i.username,password:i.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[i,s]=await this.#S(r);this.#f=s,(i.username||i.password)&&t.push({cmd:(0,Pv.parseArgs)(Dw.default.AUTH,{username:i.username,password:i.password??""})})}this.#o.name&&t.push({cmd:(0,Pv.parseArgs)(Dw.default.CLIENT_SETNAME,this.#o.name)})}this.#u!==0&&t.push({cmd:["SELECT",this.#u.toString()]}),this.#o.readonly&&t.push({cmd:(0,Pv.parseArgs)(Dw.default.READONLY)}),this.#o.disableClientInfo||(t.push({cmd:["CLIENT","SETINFO","LIB-VER",wkr.version],errorHandler:()=>{}}),t.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&t.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&t.push({cmd:["CLIENT","TRACKING","ON"]});let n=await Q5.default.getHandshakeCommand(this.#o);return n&&t.push(n),t}#E(t){t.on("data",r=>{try{this.#s.decoder.write(r)}catch(n){this.#s.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#i.isOpen&&!this.#o.disableOfflineQueue?this.#s.flushWaitingForReply(r):this.#s.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#c(),this.#R()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#R()).on("end",()=>this.emit("end"))}#w(){let t=async()=>{let n=[],i=Symbol("Socket Initiator"),s=this.#s.resubscribe(i);if(s?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#s.removeAllPubSubListeners())}),s&&n.push(s),this.#l&&n.push(this.#s.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:i,asap:!0})),n.push(...await this.#y(i,!0)),n.length)return this.#k(),Promise.all(n)},r=new mkr.default(t,this.#o.socket);return this.#E(r),r}#v;#c(){!this.#o.pingInterval||!this.#i.isReady||(clearTimeout(this.#v),this.#v=setTimeout(()=>{this.#i.isReady&&this.sendCommand(["PING"]).then(t=>this.emit("ping-interval",t)).catch(t=>this.emit("error",t)).finally(()=>this.#c())},this.#o.pingInterval))}withCommandOptions(t){let r=Object.create(this._self);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}withAbortSignal(t){return this._commandOptionsProxy("abortSignal",t)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new bkr.RedisLegacyClient(this)}createPool(t){return Ekr.RedisClientPool.create(this._self.#o,t)}duplicate(t){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...t})}async connect(){return await this._self.#i.connect(),this}_ejectSocket(){let t=this._self.#i;return this._self.#i=null,t.removeAllListeners(),t}_insertSocket(t){this._self.#i&&this._self._ejectSocket().destroy(),this._self.#i=t,this._self.#E(this._self.#i)}_maintenanceUpdate(t){this._self.#i.setMaintenanceTimeout(t.relaxedSocketTimeout),this._self.#s.setMaintenanceCommandTimeout(t.relaxedCommandTimeout)}_pause(){this._self.#h=!0}_unpause(){this._self.#h=!1,this._self.#R()}_handleSmigrated(t){this._self.emit(Q5.SMIGRATED_EVENT,t)}_getQueue(){return this._self.#s}async _executeCommand(t,r,n,i){let s=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(s&&t.CACHEABLE&&a)return await s.handleCache(this._self,r,o,i,n?.typeMapping);{let u=await o();return i?i(u,r.preserve,n?.typeMapping):u}}async _executeScript(t,r,n,i){let s=r.redisArgs,a;try{a=await this.sendCommand(s,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;s[0]="EVAL",s[1]=t.SCRIPT,a=await this.sendCommand(s,n)}return i?i(a,r.preserve,n?.typeMapping):a}sendCommand(t,r){if(this._self.#i.isOpen){if(!this._self.#i.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new ly.ClientOfflineError)}else return Promise.reject(new ly.ClientClosedError);let n={...this._self._commandOptions,...r},i=this._self.#s.addCommand(t,n);return this._self.#x(),i}async SELECT(t){await this.sendCommand(["SELECT",t.toString()]),this._self.#u=t}select=this.SELECT;#A(t){return t===void 0?Promise.resolve():(this.#x(),t)}SUBSCRIBE(t,r,n){return this._self.#A(this._self.#s.subscribe(kw.PUBSUB_TYPE.CHANNELS,t,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(t,r,n){return this._self.#A(this._self.#s.unsubscribe(kw.PUBSUB_TYPE.CHANNELS,t,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(t,r,n){return this._self.#A(this._self.#s.subscribe(kw.PUBSUB_TYPE.PATTERNS,t,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(t,r,n){return this._self.#A(this._self.#s.unsubscribe(kw.PUBSUB_TYPE.PATTERNS,t,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(t,r,n){return this._self.#A(this._self.#s.subscribe(kw.PUBSUB_TYPE.SHARDED,t,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(t,r,n){return this._self.#A(this._self.#s.unsubscribe(kw.PUBSUB_TYPE.SHARDED,t,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(t){let r=await this._self.sendCommand((0,Pv.pushVariadicArguments)(["WATCH"],t));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let t=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,t}unwatch=this.UNWATCH;getPubSubListeners(t){return this._self.#s.getPubSubListeners(t)}extendPubSubChannelListeners(t,r,n){return this._self.#A(this._self.#s.extendPubSubChannelListeners(t,r,n))}extendPubSubListeners(t,r){return this._self.#A(this._self.#s.extendPubSubListeners(t,r))}#k(){this.#h||this.#i.write(this.#s.commandsToWrite())}#C;#x(){!this.#i.isReady||this.#C||(this.#C=setImmediate(()=>{this.#k(),this.#C=void 0}))}#R(){this.#s.isWaitingToWrite()&&this.#x()}async _executePipeline(t,r){if(!this._self.#i.isOpen)return Promise.reject(new ly.ClientClosedError);let n=Symbol("Pipeline Chain"),i=Promise.all(t.map(({args:a})=>this._self.#s.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#x();let s=await i;return r!==void 0&&(this._self.#u=r),s}async _executeMulti(t,r){let n=this._self.#m;this._self.#m=void 0;let i=this._self.#p;if(this._self.#p=void 0,!this._self.#i.isOpen)throw new ly.ClientClosedError;if(n)throw new ly.WatchError(n);if(i&&i!==this._self.socketEpoch)throw new ly.WatchError("Client reconnected after WATCH");let s=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#s.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of t)o.push(this._self.#s.addCommand(l,{chainId:a,typeMapping:s}));o.push(this._self.#s.addCommand(["EXEC"],{chainId:a})),this._self.#x();let u=await Promise.all(o),c=u[u.length-1];if(c===null)throw new ly.WatchError;return r!==void 0&&(this._self.#u=r),c}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(t){let r=t?.cursor??"0";do{let n=await this.scan(r,t);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(t,r){let n=r?.cursor??"0";do{let i=await this.hScan(t,n,r);n=i.cursor,yield i.entries}while(n!=="0")}async*hScanValuesIterator(t,r){let n=r?.cursor??"0";do{let i=await this.hScanNoValues(t,n,r);n=i.cursor,yield i.fields}while(n!=="0")}async*hScanNoValuesIterator(t,r){let n=r?.cursor??"0";do{let i=await this.hScanNoValues(t,n,r);n=i.cursor,yield i.fields}while(n!=="0")}async*sScanIterator(t,r){let n=r?.cursor??"0";do{let i=await this.sScan(t,n,r);n=i.cursor,yield i.members}while(n!=="0")}async*zScanIterator(t,r){let n=r?.cursor??"0";do{let i=await this.zScan(t,n,r);n=i.cursor,yield i.members}while(n!=="0")}async MONITOR(t){let r=this._self.#s.monitor(t,{typeMapping:this._commandOptions?.typeMapping});this._self.#x(),await r,this._self.#l=t}monitor=this.MONITOR;async reset(){let t=Symbol("Reset Chain"),r=[this._self.#s.reset(t)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#y(t,!1)),this._self.#x(),await Promise.all(r),this._self.#u=n,this._self.#l=void 0,this._self.#m=void 0,this._self.#p=void 0}resetIfDirty(){let t=!1;if(this._self.#u!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),t=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),t=!0),this._self.#s.isPubSubActive&&(console.warn("Returning a client with active PubSub"),t=!0),(this._self.#m||this._self.#p)&&(console.warn("Returning a client with active WATCH"),t=!0),t)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#i.quit(async()=>{clearTimeout(this._self.#v);let t=this._self.#s.addCommand(["QUIT"]);return this._self.#x(),t})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(t=>{if(clearTimeout(this._self.#v),this._self.#i.close(),this._self.#d?.onClose(),this._self.#s.isEmpty())return this._self.#i.destroySocket(),t();let r=()=>{this._self.#s.isEmpty()&&(this._self.#i.off("data",r),this._self.#i.destroySocket(),t())};this._self.#i.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#v),this._self.#s.flushAll(new ly.DisconnectsClientError),this._self.#i.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#i.ref()}unref(){this._self.#i.unref()}};$d=G5;Fd.default=G5});var Wlt=b(Ap=>{"use strict";var Ylt=Ap&&Ap.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},jpe;Object.defineProperty(Ap,"__esModule",{value:!0});Ap.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Ikr=fp(),xkr=Ylt(Rw()),Cc=XD(),qpe=Ylt(Spe()),Glt=Tw(),Ku=GD();Ap.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var Y5=class{static#e=16384;#t;#r;#n;slots=new Array(jpe.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(t,r){this.#o(t),this.#t=t,t?.clientSideCache&&(t.clientSideCache instanceof Glt.PooledClientSideCacheProvider?this.clientSideCache=t.clientSideCache:this.clientSideCache=new Glt.BasicPooledClientSideCache(t.clientSideCache)),this.#r=xkr.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#i(),this.#n("connect")}catch(t){throw this.#a=!1,t}}async#i(){let t=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=t;rthis.#f(d,!0,i,r,n)));for(let d=a;d<=o;d++)this.slots[d]=l}if(this.pubSubNode&&!r.has(this.pubSubNode.address)){let a=this.pubSubNode.client.getPubSubListeners(Cc.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Cc.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#w({[Cc.PUBSUB_TYPE.CHANNELS]:a,[Cc.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:u}=o;u&&u.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async t=>{if((0,Ku.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(t,null,2)),this.smigratedSeqIdsSeen.has(t.seqId)){(0,Ku.dbgMaintenance)(`[CSlots]: sequence id ${t.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(t.seqId);for(let r of t.entries){let n=`${r.source.host}:${r.source.port}`,i=this.nodeByAddress.get(n);if((0,Ku.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!i){(0,Ku.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(i.client===void 0){(0,Ku.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let s=new Set;try{i.client?._pause(),"pubSub"in i&&i.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:p}of r.destinations){let h=`${d}:${f}`,m=this.nodeByAddress.get(h);(0,Ku.dbgMaintenance)(`[CSlots]: Looking for destAddress=${h}. Found in nodeByAddress: ${m?"YES":"NO"}`);let y;if(m){let A=[...new Set(this.slots)].map(E=>`${E.master.host}:${E.master.port}`);(0,Ku.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${A.join(", ")}`);let _=this.slots.find(E=>E.master.host===d&&E.master.port===f);if(!_)throw(0,Ku.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");y=_,m.client?._pause(),m.pubSub?.client._pause()}else{let A=[];m=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,A),await Promise.all([...A,this.#v(m)]),m.client?._pause(),m.pubSub?.client._pause(),y={master:m}}a=m;let g=new Set;for(let A of p)if(typeof A=="number")this.slots[A]=y,g.add(A),s.add(A);else for(let _=A[0];_<=A[1];_++)this.slots[_]=y,g.add(_),s.add(_);(0,Ku.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${m.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let v=i.client._getQueue().extractCommandsForSlots(g);m.client?._getQueue().prependCommandsToWrite(v),(0,Ku.dbgMaintenance)(`[CSlots]: Extracted ${v.length} commands for ${g.size} slots, prepended to ${m.address}`),m.client?._unpause(),m.pubSub?.client._unpause()}(0,Ku.dbgMaintenance)(`[CSlots]: Total ${s.size} slots moved from ${n}. Sample: ${Array.from(s).slice(0,10).join(", ")}${s.size>10?"...":""}`);let o=5e3,u=[],c={timeoutMs:o,flushOnTimeout:!0};if(u.push(i.client._getQueue().waitForInflightCommandsToComplete(c)),"pubSub"in i&&i.pubSub!==void 0&&u.push(i.pubSub.client._getQueue().waitForInflightCommandsToComplete(c)),this.pubSubNode?.address===n&&u.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(c)),await Promise.all(u),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in i){let d=i.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(s);this.#n(Ap.RESUBSCRIBE_LISTENERS_EVENT,d)}i.client?._unpause(),"pubSub"in i&&i.pubSub?.client._unpause()}else{let d=i.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,Ku.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in i){let f=i.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(Ap.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(Cc.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(Cc.PUBSUB_TYPE.PATTERNS),h=this.pubSubNode.client;f.size||p.size?await this.#w({[Cc.PUBSUB_TYPE.CHANNELS]:f,[Cc.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,h.destroy()}i.client?.destroy(),"pubSub"in i&&i.pubSub?.client.destroy()}}catch(a){(0,Ku.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),i.client?._unpause(),"pubSub"in i&&i.pubSub?.client._unpause(),this.#n("error",a)}}};async#m(t){let r=this.#d(t);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",i=>this.#n("error",i)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#p(t){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[t];case"function":return this.#t.nodeAddressMap(t)}}#d(t){if(!this.#t.defaults)return t;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...t?.socket}:r=t?.socket,{...this.#t.defaults,...t,socket:r}}#f(t,r,n,i,s){let a=`${t.host}:${t.port}`,o=this.nodeByAddress.get(a);return o||(o={...t,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&s.push(this.#_(o)),this.nodeByAddress.set(a,o)),i.has(a)||(i.add(a),(r?this.replicas:this.masters).push(o)),o}#h(t,r=t.readonly){let n=this.#p(t.address)??{host:t.host,port:t.port},i=Object.freeze({host:n.host,port:n.port}),s=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>s("node-error",o,i)).on("reconnecting",()=>s("node-reconnecting",i)).once("ready",()=>s("node-ready",i)).once("connect",()=>s("node-connect",i)).once("end",()=>s("node-disconnect",i)).on(Ku.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(Ap.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#_(t,r){let n=t.client=this.#h(t,r);return t.connectPromise=n.connect().finally(()=>t.connectPromise=void 0)}nodeClient(t){return t.connectPromise?t.connectPromise:t.client?Promise.resolve(t.client):this.#_(t)}#g;async rediscover(t){return this.#g??=this.#b(t).finally(()=>{this.#g=void 0}),this.#g}async#b(t){if(!await this.#u(t.options))return this.#i()}quit(){return this.#y(t=>t.quit())}disconnect(){return this.#y(t=>t.disconnect())}close(){return this.#y(t=>t.close())}destroy(){this.#a=!1;for(let t of this.#S())t.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#s(),this.nodeByAddress.clear(),this.#n("disconnect")}*#S(){for(let t of this.masters)t.client&&(yield t.client),t.pubSub&&(yield t.pubSub.client);for(let t of this.replicas)t.client&&(yield t.client)}async#y(t){this.#a=!1;let r=[];for(let n of this.#S())r.push(t(n));this.pubSubNode&&(r.push(t(this.pubSubNode.client)),this.pubSubNode=void 0),this.#s(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(t,r){if(!t)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,qpe.default)(t);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#I(){if(this.masters.length+this.replicas.length===0)return;let t=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(t(t&&await Promise.all([s.extendPubSubListeners(Cc.PUBSUB_TYPE.CHANNELS,t[Cc.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(Cc.PUBSUB_TYPE.PATTERNS,t[Cc.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,s)).catch(s=>{throw this.pubSubNode=void 0,s})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(t){let r=await this.getPubSubClient();await t(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(t){let{master:r}=this.slots[(0,qpe.default)(t)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#v(r)}async#v(t){let r=this.#h(t,!1).on("server-sunsubscribe",async(n,i)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Cc.PUBSUB_TYPE.SHARDED,n,i)}catch(s){this.#n("sharded-shannel-moved-error",s,n,i)}});return t.pubSub={client:r,connectPromise:r.connect().then(n=>(t.pubSub.connectPromise=void 0,n)).catch(n=>{throw t.pubSub=void 0,n})},t.pubSub.connectPromise}async executeShardedUnsubscribeCommand(t,r){let{master:n}=this.slots[(0,qpe.default)(t)];if(!n.pubSub)return;let i=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(i),i.isPubSubActive||(i.destroy(),n.pubSub=void 0)}};jpe=Y5;Ap.default=Y5});var Xlt=b(sk=>{"use strict";var Ckr=sk&&sk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sk,"__esModule",{value:!0});var Tkr=Bd(),Nkr=Ckr(ek()),Pw=_p(),W5=pp(),Hpe=class e{static#e(t,r){let n=(0,Pw.getTransformReply)(t,r);return function(...i){let s=new W5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;a.preserve=s.preserve;let o=s.firstKey;return this.addCommand(o,t.IS_READ_ONLY,a,n)}}static#t(t,r){let n=(0,Pw.getTransformReply)(t,r);return function(...i){let s=new W5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;a.preserve=s.preserve;let o=s.firstKey;return this._self.addCommand(o,t.IS_READ_ONLY,a,n)}}static#r(t,r,n){let i=(0,Pw.functionArgumentsPrefix)(t,r),s=(0,Pw.getTransformReply)(r,n);return function(...a){let o=new W5.BasicCommandParser;o.push(...i),r.parseCommand(o,...a);let u=o.redisArgs;u.preserve=o.preserve;let c=o.firstKey;return this._self.addCommand(c,r.IS_READ_ONLY,u,s)}}static#n(t,r){let n=(0,Pw.getTransformReply)(t,r);return function(...i){let s=new W5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;a.preserve=s.preserve;let o=s.firstKey;return this.#m(o,t.IS_READ_ONLY,t,a,n)}}static extend(t){return(0,Pw.attachConfig)({BaseClass:e,commands:Tkr.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t})}#a;#o;#i;#s;#u=!0;constructor(t,r,n,i){this.#a=new Nkr.default(i),this.#o=t,this.#i=r,this.#s=n}#l(t,r){this.#s??=t,this.#u&&=r}addCommand(t,r,n,i){return this.#l(t,r),this.#a.addCommand(n,i),this}#m(t,r,n,i,s){return this.#l(t,r),this.#a.addScript(n,i,s),this}async exec(t=!1){return t?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#s,this.#u,this.#a.queue))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#i(this.#s,this.#u,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};sk.default=Hpe});var edt=b(Ud=>{"use strict";var Rkr=Ud&&Ud.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Dkr=Ud&&Ud.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),kkr=Ud&&Ud.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Rkr(t,e,r);return Dkr(t,e),t},Zlt=Ud&&Ud.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ud,"__esModule",{value:!0});var Okr=Bd(),Pkr=require("node:events"),Mv=_p(),Jlt=kkr(Wlt()),Mkr=Zlt(Xlt()),Lkr=fp(),X5=pp(),Bkr=ooe(),$kr=Zlt(K5()),Kpe=class e extends Pkr.EventEmitter{static#e(t,r){let n=(0,Mv.getTransformReply)(t,r);return async function(...i){let s=new X5.BasicCommandParser;return t.parseCommand(s,...i),this._self._execute(s.firstKey,t.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(t,s,o,n))}}static#t(t,r){let n=(0,Mv.getTransformReply)(t,r);return async function(...i){let s=new X5.BasicCommandParser;return t.parseCommand(s,...i),this._self._execute(s.firstKey,t.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(t,s,o,n))}}static#r(t,r,n){let i=(0,Mv.functionArgumentsPrefix)(t,r),s=(0,Mv.getTransformReply)(r,n);return async function(...a){let o=new X5.BasicCommandParser;return o.push(...i),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(u,c)=>u._executeCommand(r,o,c,s))}}static#n(t,r){let n=(0,Mv.scriptArgumentsPrefix)(t),i=(0,Mv.getTransformReply)(t,r);return async function(...s){let a=new X5.BasicCommandParser;return a.push(...n),t.parseCommand(a,...s),this._self._execute(a.firstKey,t.IS_READ_ONLY,this._commandOptions,(o,u)=>o._executeScript(t,a,u,i))}}static#a=new $kr.default;static factory(t){let r=e.#a.get(t);return r||(r=(0,Mv.attachConfig)({BaseClass:e,commands:Okr.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t}),r.prototype.Multi=Mkr.default.extend(t),e.#a.set(t,r)),n=>Object.create(new r(n))}static create(t){return e.factory(t)(t)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(t){super(),this._options=t,this._slots=new Jlt.default(t,this.emit.bind(this)),this.on(Jlt.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),t?.commandOptions&&(this._commandOptions=t.commandOptions)}duplicate(t){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...t})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}_handleAsk(t){return async(r,n)=>{let i=Symbol("asking chain"),s=n?{...n}:{};return s.chainId=i,(await Promise.all([r.sendCommand([Bkr.ASKING_CMD],{chainId:i}),t(r,s)]))[1]}}async _execute(t,r,n,i){let s=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(t,r),u=0,c=i;for(;;)try{let l=n??{};return l.slotNumber=o,await c(a,l)}catch(l){if(c=i,++u>s||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,c=this._handleAsk(i);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(t,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(t,r,n,i){let s={...this._self._commandOptions,...i};return this._self._execute(t,r,s,(a,o)=>a.sendCommand(n,o))}MULTI(t){return new this.Multi(async(r,n,i)=>{let{client:s}=await this._self._slots.getClientAndSlotNumber(r,n);return s._executeMulti(i)},async(r,n,i)=>{let{client:s}=await this._self._slots.getClientAndSlotNumber(r,n);return s._executePipeline(i)},t,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(t,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(t,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(t,r,n){return this._self._slots.executeUnsubscribeCommand(i=>i.UNSUBSCRIBE(t,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(t,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(t,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(t,r,n){return this._self._slots.executeUnsubscribeCommand(i=>i.PUNSUBSCRIBE(t,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(t,r,n){let i=this._self._options.maxCommandRedirections??16,s=Array.isArray(t)?t[0]:t,a=await this._self._slots.getShardedPubSubClient(s);for(let o=0;;o++)try{return await a.SSUBSCRIBE(t,r,n)}catch(u){if(++o>i||!(u instanceof Lkr.ErrorReply))throw u;if(u.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(s);continue}throw u}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(t,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(t)?t[0]:t,i=>i.SUNSUBSCRIBE(t,r,n))}resubscribeAllPubSubListeners(t){if(t.CHANNELS)for(let[r,n]of t.CHANNELS)n.buffers.forEach(i=>{this.subscribe(r,i,!0)}),n.strings.forEach(i=>{this.subscribe(r,i)});if(t.PATTERNS)for(let[r,n]of t.PATTERNS)n.buffers.forEach(i=>{this.pSubscribe(r,i,!0)}),n.strings.forEach(i=>{this.pSubscribe(r,i)});if(t.SHARDED)for(let[r,n]of t.SHARDED)n.buffers.forEach(i=>{this.sSubscribe(r,i,!0)}),n.strings.forEach(i=>{this.sSubscribe(r,i)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(t){return this._self._slots.nodeClient(t)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(t){return this._self._slots.getSlotRandomNode(t)}getMasters(){return this.masters}getSlotMaster(t){return this.slots[t].master}};Ud.default=Kpe});var rdt=b(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.getMappedNode=ra.createScriptCommand=ra.createModuleCommand=ra.createFunctionCommand=ra.createCommand=ra.clientSocketToNode=ra.createNodeList=ra.parseNode=void 0;var J5=pp(),Mw=_p();function tdt(e){if(!(e.flags.includes("s_down")||e.flags.includes("disconnected")||e.flags.includes("failover_in_progress")))return{host:e.ip,port:Number(e.port)}}ra.parseNode=tdt;function Fkr(e){var t=[];for(let r of e){let n=tdt(r);n!==void 0&&t.push(n)}return t}ra.createNodeList=Fkr;function Ukr(e){let t=e;return{host:t.host,port:t.port}}ra.clientSocketToNode=Ukr;function qkr(e,t){let r=(0,Mw.getTransformReply)(e,t);return async function(...n){let i=new J5.BasicCommandParser;return e.parseCommand(i,...n),this._self._execute(e.IS_READ_ONLY,s=>s._executeCommand(e,i,this.commandOptions,r))}}ra.createCommand=qkr;function jkr(e,t,r){let n=(0,Mw.functionArgumentsPrefix)(e,t),i=(0,Mw.getTransformReply)(t,r);return async function(...s){let a=new J5.BasicCommandParser;return a.push(...n),t.parseCommand(a,...s),this._self._execute(t.IS_READ_ONLY,o=>o._executeCommand(t,a,this._self.commandOptions,i))}}ra.createFunctionCommand=jkr;function Hkr(e,t){let r=(0,Mw.getTransformReply)(e,t);return async function(...n){let i=new J5.BasicCommandParser;return e.parseCommand(i,...n),this._self._execute(e.IS_READ_ONLY,s=>s._executeCommand(e,i,this._self.commandOptions,r))}}ra.createModuleCommand=Hkr;function Kkr(e,t){let r=(0,Mw.scriptArgumentsPrefix)(e),n=(0,Mw.getTransformReply)(e,t);return async function(...i){let s=new J5.BasicCommandParser;return s.push(...r),e.parseCommand(s,...i),this._self._execute(e.IS_READ_ONLY,a=>a._executeScript(e,s,this.commandOptions,n))}}ra.createScriptCommand=Kkr;function Vkr(e,t,r){if(r===void 0)return{host:e,port:t};let n=`${e}:${t}`;switch(typeof r){case"object":return r[n]??{host:e,port:t};case"function":return r(n)??{host:e,port:t}}}ra.getMappedNode=Vkr});var idt=b(ak=>{"use strict";var zkr=ak&&ak.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ak,"__esModule",{value:!0});var Qkr=Bd(),ndt=zkr(ek()),Lw=_p(),Z5=pp(),Vpe=class e{static _createCommand(t,r){let n=(0,Lw.getTransformReply)(t,r);return function(...i){let s=new Z5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;return a.preserve=s.preserve,this.addCommand(t.IS_READ_ONLY,a,n)}}static _createModuleCommand(t,r){let n=(0,Lw.getTransformReply)(t,r);return function(...i){let s=new Z5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;return a.preserve=s.preserve,this._self.addCommand(t.IS_READ_ONLY,a,n)}}static _createFunctionCommand(t,r,n){let i=(0,Lw.functionArgumentsPrefix)(t,r),s=(0,Lw.getTransformReply)(r,n);return function(...a){let o=new Z5.BasicCommandParser;o.push(...i),r.parseCommand(o,...a);let u=o.redisArgs;return u.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,u,s)}}static _createScriptCommand(t,r){let n=(0,Lw.getTransformReply)(t,r);return function(...i){let s=new Z5.BasicCommandParser;t.parseCommand(s,...i);let a=s.redisArgs;return a.preserve=s.preserve,this.#a(t.IS_READ_ONLY,t,a,n)}}static extend(t){return(0,Lw.attachConfig)({BaseClass:e,commands:Qkr.NON_STICKY_COMMANDS,createCommand:e._createCommand,createModuleCommand:e._createModuleCommand,createFunctionCommand:e._createFunctionCommand,createScriptCommand:e._createScriptCommand,config:t})}#e=new ndt.default;#t;#r=!0;constructor(t,r){this.#e=new ndt.default(r),this.#t=t}#n(t){this.#r&&=t}addCommand(t,r,n){return this.#n(t),this.#e.addCommand(r,n),this}#a(t,r,n,i){return this.#n(t),this.#e.addScript(r,n,i),this}async exec(t=!1){return t?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};ak.default=Vpe});var odt=b(Bw=>{"use strict";var adt=Bw&&Bw.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Bw,"__esModule",{value:!0});Bw.PubSubProxy=void 0;var Gkr=adt(require("node:events")),dy=XD(),sdt=adt(Rw()),zpe=class extends Gkr.default{#e;#t;#r;#n;#a;constructor(t,r){super(),this.#e=t,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new sdt.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#i(t=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async i=>this.#n?.client!==i?(i.destroy(),this.#n?.connectPromise):(t&&this.#a&&await Promise.all([i.extendPubSubListeners(dy.PUBSUB_TYPE.CHANNELS,this.#a[dy.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(dy.PUBSUB_TYPE.PATTERNS,this.#a[dy.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==i?(i.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,i))).catch(i=>{throw this.#n=void 0,i});return this.#n={client:r,connectPromise:n},n}#s(){return this.#n?this.#n.connectPromise??this.#n.client:this.#i()}async changeNode(t){this.#r=t,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[dy.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(dy.PUBSUB_TYPE.CHANNELS),[dy.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(dy.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#i(!0))}#u(t){let r=this.#s();return r instanceof sdt.default?t(r):r.then(n=>{if(n!==void 0)return t(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(t,r,n){return this.#u(i=>i.SUBSCRIBE(t,r,n))}#l(t){return this.#u(async r=>{let n=await t(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(t,r,n){return this.#l(i=>i.UNSUBSCRIBE(t,r,n))}async pSubscribe(t,r,n){return this.#u(i=>i.PSUBSCRIBE(t,r,n))}async pUnsubscribe(t,r,n){return this.#l(i=>i.PUNSUBSCRIBE(t,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};Bw.PubSubProxy=zpe});var udt=b(Qpe=>{"use strict";Object.defineProperty(Qpe,"__esModule",{value:!0});var Ykr=Le();Qpe.default={parseCommand(e,t){e.push("SENTINEL","MASTER",t)},transformReply:{2:Ykr.transformTuplesReply,3:void 0}}});var cdt=b(Gpe=>{"use strict";Object.defineProperty(Gpe,"__esModule",{value:!0});Gpe.default={parseCommand(e,t,r,n,i){e.push("SENTINEL","MONITOR",t,r,n,i)},transformReply:void 0}});var ldt=b(Ype=>{"use strict";Object.defineProperty(Ype,"__esModule",{value:!0});var Wkr=Le();Ype.default={parseCommand(e,t){e.push("SENTINEL","REPLICAS",t)},transformReply:{2:(e,t,r)=>{let n=e,i=[];return n.reduce((s,a)=>(s.push((0,Wkr.transformTuplesReply)(a,void 0,r)),s),i)},3:void 0}}});var ddt=b(Wpe=>{"use strict";Object.defineProperty(Wpe,"__esModule",{value:!0});var Xkr=Le();Wpe.default={parseCommand(e,t){e.push("SENTINEL","SENTINELS",t)},transformReply:{2:(e,t,r)=>{let n=e,i=[];return n.reduce((s,a)=>(s.push((0,Xkr.transformTuplesReply)(a,void 0,r)),s),i)},3:void 0}}});var fdt=b(Xpe=>{"use strict";Object.defineProperty(Xpe,"__esModule",{value:!0});Xpe.default={parseCommand(e,t,r){e.push("SENTINEL","SET",t);for(let n of r)e.push(n.option,n.value)},transformReply:void 0}});var _dt=b(ok=>{"use strict";var uk=ok&&ok.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ok,"__esModule",{value:!0});var pdt=uk(udt()),hdt=uk(cdt()),mdt=uk(ldt()),gdt=uk(ddt()),ydt=uk(fdt());ok.default={SENTINEL_SENTINELS:gdt.default,sentinelSentinels:gdt.default,SENTINEL_MASTER:pdt.default,sentinelMaster:pdt.default,SENTINEL_REPLICAS:mdt.default,sentinelReplicas:mdt.default,SENTINEL_MONITOR:hdt.default,sentinelMonitor:hdt.default,SENTINEL_SET:ydt.default,sentinelSet:ydt.default}});var Adt=b(ck=>{"use strict";var Jkr=ck&&ck.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ck,"__esModule",{value:!0});var Zkr=Jkr(_dt());ck.default={sentinel:Zkr.default}});var bdt=b(e8=>{"use strict";Object.defineProperty(e8,"__esModule",{value:!0});e8.WaitQueue=void 0;var vdt=M5(),Jpe=class{#e=new vdt.SinglyLinkedList;#t=new vdt.SinglyLinkedList;push(t){let r=this.#t.shift();if(r!==void 0){r(t);return}this.#e.push(t)}shift(){return this.#e.shift()}wait(){return new Promise(t=>this.#t.push(t))}};e8.WaitQueue=Jpe});var xdt=b(Sm=>{"use strict";var rhe=Sm&&Sm.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Sm,"__esModule",{value:!0});Sm.RedisSentinelFactory=Sm.RedisSentinelClient=void 0;var nhe=require("node:events"),$w=rhe(Rw()),Sdt=_p(),wdt=Bd(),Si=rdt(),Idt=rhe(idt()),eOr=odt(),tOr=require("node:timers/promises"),t8=rhe(Adt()),rOr=bdt(),Edt=Tw(),lk=class e{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(t,r,n){this._self=this,this.#t=t,this.#e=r,this.#r=n}static factory(t){let r=(0,Sdt.attachConfig)({BaseClass:e,commands:wdt.NON_STICKY_COMMANDS,createCommand:Si.createCommand,createModuleCommand:Si.createModuleCommand,createFunctionCommand:Si.createFunctionCommand,createScriptCommand:Si.createScriptCommand,config:t});return r.prototype.Multi=Idt.default.extend(t),(n,i,s)=>Object.create(new r(n,i,s))}static create(t,r,n,i){return e.factory(t)(r,n,i)}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}async _execute(t,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(t,r,n){return this._execute(t,i=>i.sendCommand(r,n))}async _executePipeline(t,r){return this._execute(t,n=>n._executePipeline(r))}async _executeMulti(t,r){return this._execute(t,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(t){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(t))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,t=>t.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let t=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,t}};Sm.RedisSentinelClient=lk;var Zpe=class e extends nhe.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#i;get clientSideCache(){return this._self.#e.clientSideCache}constructor(t){super(),this._self=this,this.#t=t,t.commandOptions&&(this.#r=t.commandOptions),this.#e=new ehe(t),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(t){let r=(0,Sdt.attachConfig)({BaseClass:e,commands:wdt.NON_STICKY_COMMANDS,createCommand:Si.createCommand,createModuleCommand:Si.createModuleCommand,createFunctionCommand:Si.createFunctionCommand,createScriptCommand:Si.createScriptCommand,config:t});return r.prototype.Multi=Idt.default.extend(t),n=>Object.create(new r(n))}static create(t){return e.factory(t)(t)}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[t]:r},n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(t,r){let n;(!t||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#i??=await this._self.#e.getClientLease(),n=this._self.#i,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#i&&--this._self.#o===0){let i=this._self.#e.releaseClientLease(n);this._self.#i=void 0,i&&await i}}}async use(t){let r=await this._self.#e.getClientLease();try{return await t(lk.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(t,r,n){return this._execute(t,i=>i.sendCommand(r,n))}async _executePipeline(t,r){return this._execute(t,n=>n._executePipeline(r))}async _executeMulti(t,r){return this._execute(t,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(t,r,n){return this._self.#e.subscribe(t,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(t,r,n){return this._self.#e.unsubscribe(t,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(t,r,n){return this._self.#e.pSubscribe(t,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(t,r,n){return this._self.#e.pUnsubscribe(t,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let t=await this._self.#e.getClientLease();return lk.create(this._self.#t,this._self.#e,t,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(t){t?this._self.#n=r=>{t.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(t)}};Sm.default=Zpe;var ehe=class extends nhe.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#i;#s;#u;#l=!1;#m=0;#p;#d;#f=[];#h;#_;#g=[];#b=0;#S;get useReplicas(){return this.#S>0}#y;#I;#E;#w;#v=!1;#c=()=>{};#A;get clientSideCache(){return this.#A}#k(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(t){if(super(),this.#k(t),this.#r=t.name,this.#u=t.RESP,this.#p=Array.from(t.sentinelRootNodes),this.#I=t.maxCommandRediscovers??16,this.#_=t.masterPoolSize??1,this.#S=t.replicaPoolSize??0,this.#o=t.nodeAddressMap,this.#i=t.scanInterval??0,this.#s=t.passthroughClientErrorEvents??!1,this.#n=t.nodeClientOptions?{...t.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(t.clientSideCache)if(t.clientSideCache instanceof Edt.PooledClientSideCacheProvider)this.#A=this.#n.clientSideCache=t.clientSideCache;else{let r=t.clientSideCache;this.#A=this.#n.clientSideCache=new Edt.BasicPooledClientSideCache(r)}if(this.#a=t.sentinelClientOptions?Object.assign({},t.sentinelClientOptions):{},this.#a.modules=t8.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#h=new rOr.WaitQueue;for(let r=0;rthis.emit("error",r))}#C(t,r,n){let i=(0,Si.getMappedNode)(t.host,t.port,this.#o);return $w.default.create({RESP:this.#u,...r,socket:{...r.socket,host:i.host,port:i.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let t=this.#h.shift();return t!==void 0?Promise.resolve({id:t}):this.#h.wait().then(r=>({id:r}))}releaseClientLease(t){let r=this.#f[t.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#h.push(t.id))}this.#h.push(t.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#y=this.#x(),await this.#y,this.#t=!0}finally{this.#y=void 0,this.#i>0&&(this.#w=setInterval(this.#D.bind(this),this.#i))}}async#x(){let t=0;for(;;){if(this.#c("starting connect loop"),t+=1,this.#v){this.#c("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#c("#connect: anotherReset is true, so continuing");continue}this.#c("#connect: returning");return}catch(r){if(this.#c(`#connect: exception ${r.message}`),!this.#t&&t>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,tOr.setTimeout)(1e3)}finally{this.#c("finished connect")}}}async execute(t,r){let n=0;for(;;){this.#y!==void 0&&await this.#y;let i=this.#N(r);if(!i.isReady){await this.#D();continue}let s=i.options?.socket;this.#c("attemping to send command to "+s?.host+":"+s?.port);try{return await t(i)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!i.isReady)){await this.#D();continue}throw a}}}async#R(t){return await t.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#B(n,r)},!0),t}async#B(t,r){this.#c("pubsub control channel message on "+t),this.#D()}#N(t){if(t!==void 0)return this.#f[t.id];if(this.#b>=this.#g.length&&(this.#b=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#b++]}async#D(){if(!(this.#t==!1||this.#v==!0)){if(this.#y!==void 0)return this.#l=!0,await this.#y;try{return this.#y=this.#x(),await this.#y}finally{this.#c("finished reconfgure"),this.#y=void 0}}}#O(t){let r=this.#p.findIndex(n=>n.host===t.host&&n.port===t.port);r!==-1&&this.#p.splice(r,1),this.#D()}async close(){this.#v=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#A?.onPoolClose(),this.#w&&(clearInterval(this.#w),this.#w=void 0);let t=[];this.#d!==void 0&&(this.#d.isOpen&&t.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&t.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&t.push(r.close());this.#g=[],await Promise.all(t),this.#E.destroy(),this.#e=!1}async destroy(){this.#v=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#A?.onPoolClose(),this.#w&&(clearInterval(this.#w),this.#w=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let t of this.#f)t.isOpen&&t.destroy();this.#f=[];for(let t of this.#g)t.isOpen&&t.destroy();this.#g=[],this.#E.destroy(),this.#e=!1,this.#v=!1}async subscribe(t,r,n){return this.#E.subscribe(t,r,n)}async unsubscribe(t,r,n){return this.#E.unsubscribe(t,r,n)}async pSubscribe(t,r,n){return this.#E.pSubscribe(t,r,n)}async pUnsubscribe(t,r,n){return this.#E.pUnsubscribe(t,r,n)}async observe(){for(let t of this.#p){let r;try{this.#c(`observe: trying to connect to sentinel: ${t.host}:${t.port}`),r=this.#C(t,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#c("observe: connected to sentinel");let[n,i,s]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#c("observe: got all sentinel data"),{sentinelConnected:t,sentinelData:n,masterData:i,replicaData:s,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#S,useReplicas:this.useReplicas}}catch(n){this.#c(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#c("observe: destroying sentinel client"),r.destroy())}}throw this.#c("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(t){let r=(0,Si.parseNode)(t.masterData);if(r===void 0)throw this.#c(`analyze: no valid master node because ${t.masterData.flags}`),new Error("no valid master node");r.host===t.currentMaster?.host&&r.port===t.currentMaster?.port?(this.#c(`analyze: master node hasn't changed from ${t.currentMaster?.host}:${t.currentMaster?.port}`),r=void 0):this.#c(`analyze: master node has changed to ${r.host}:${r.port} from ${t.currentMaster?.host}:${t.currentMaster?.port}`);let n=t.sentinelConnected;n.host===t.currentSentinel?.host&&n.port===t.currentSentinel.port?(this.#c("analyze: sentinel node hasn't changed"),n=void 0):this.#c(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let i=[],s=new Map,a=new Set,o=new Set;if(t.useReplicas){let c=(0,Si.createNodeList)(t.replicaData);for(let l of c)a.add(JSON.stringify(l));for(let[l,d]of t.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=t.replicaPoolSize&&(s.set(l,t.replicaPoolSize-d),this.#c(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(i.push(l),this.#c(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of c)o.has(JSON.stringify(l))||(s.set(l,t.replicaPoolSize),this.#c(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[t.sentinelConnected].concat((0,Si.createNodeList)(t.sentinelData)),epoch:Number(t.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:i,replicasToOpen:s}}async transform(t){this.#c("transform: enter");let r=[];if(t.sentinelToOpen){this.#c("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#c("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#c("transform: not destroying old sentinel as not open"),this.#c(`transform: creating new sentinel to ${t.sentinelToOpen.host}:${t.sentinelToOpen.port}`);let a=t.sentinelToOpen,o=this.#C(t.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#s&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,Si.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#O(a)}).on("end",()=>this.#O(a)),this.#d=o,this.#c("transform: adding sentinel client connect() to promise list");let u=this.#d.connect().then(l=>this.#R(l));r.push(u),this.#c(`created sentinel client to ${t.sentinelToOpen.host}:${t.sentinelToOpen.port}`);let c={type:"SENTINEL_CHANGE",node:t.sentinelToOpen};this.#c("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",c)||this.#c("transform: emit for topology-change for sentinel_change returned false")}if(t.masterToOpen){this.#c("transform: opening a new master");let a=[],o=[];this.#c("transform: destroying old masters if open");for(let c of this.#f)o.push(c.isWatching||c.isDirtyWatch),c.isOpen&&c.destroy();this.#f=[],this.#c("transform: creating all master clients and adding connect promises");for(let c=0;c{this.#s&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let p={type:"MASTER",node:(0,Si.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),o[c]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#c(`created master client to ${t.masterToOpen.host}:${t.masterToOpen.port}`)}this.#c("transform: adding promise to change #pubSubProxy node"),a.push(this.#E.changeNode(t.masterToOpen)),r.push(...a);let u={type:"MASTER_CHANGE",node:t.masterToOpen};this.#c("transform: emiting topology-change event for master_change"),this.emit("topology-change",u)||this.#c("transform: emit for topology-change for master_change returned false"),this.#m++}let n=new Set;for(let a of t.replicasToClose){let o=JSON.stringify(a);n.add(o)}let i=[],s=new Set;for(let a of this.#g){let o=(0,Si.clientSocketToNode)(a.options.socket),u=JSON.stringify(o);if(n.has(u)||!a.isOpen){if(a.isOpen){let c=a.options?.socket;this.#c(`destroying replica client to ${c?.host}:${c?.port}`),a.destroy()}if(!s.has(u)){let c={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",c),s.add(u)}}else i.push(a)}if(this.#g=i,t.replicasToOpen.size!=0)for(let[a,o]of t.replicasToOpen){for(let c=0;c{this.#s&&this.emit("error",new Error(`Replica Client (${a.host}:${a.port}): ${d.message}`,{cause:d}));let f={type:"REPLICA",node:(0,Si.clientSocketToNode)(l.options.socket),error:d};this.emit("client-error",f)}),this.#g.push(l),r.push(l.connect()),this.#c(`created replica client to ${a.host}:${a.port}`)}let u={type:"REPLICA_ADD",node:a};this.emit("topology-change",u)}if(t.sentinelList.length!=this.#p.length){this.#p=t.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:t.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#c("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let t of this.#f)if(t.isReady)return(0,Si.clientSocketToNode)(t.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,Si.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let t=new Map,r=new Map;for(let n of this.#g){let i=(0,Si.clientSocketToNode)(n.options.socket),s=JSON.stringify(i);n.isReady?r.set(s,(r.get(s)??0)+1):r.has(s)||r.set(s,0)}for(let[n,i]of r)t.set(JSON.parse(n),i);return t}setTracer(t){t?this.#c=r=>{t.push(r)}:this.#c=()=>{}}},the=class extends nhe.EventEmitter{options;#e;#t=-1;constructor(t){super(),this.options=t,this.#e=t.sentinelRootNodes}async updateSentinelRootNodes(){for(let t of this.#e){let r=$w.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:t.host,port:t.port,reconnectStrategy:!1},modules:t8.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[t].concat((0,Si.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let t=!1;for(let r of this.#e){let n=$w.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:t8.default}).on("error",i=>this.emit(`getMasterNode: ${i}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}t=!0;try{let i=await n.sentinel.sentinelMaster(this.options.name),s=(0,Si.parseNode)(i);if(s===void 0)continue;return s}finally{n.destroy()}}throw t?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let t=await this.getMasterNode(),r=(0,Si.getMappedNode)(t.host,t.port,this.options.nodeAddressMap);return $w.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let t=!1;for(let r of this.#e){let n=$w.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:t8.default}).on("error",i=>this.emit(`getReplicaNodes: ${i}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}t=!0;try{let i=await n.sentinel.sentinelReplicas(this.options.name),s=(0,Si.createNodeList)(i);if(s.length==0)continue;return s}finally{n.destroy()}}throw t?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let t=await this.getReplicaNodes();if(t.length==0)throw new Error("no available replicas");this.#t++,this.#t>=t.length&&(this.#t=0);let r=t[this.#t],n=(0,Si.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return $w.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Sm.RedisSentinelFactory=the});var fk=b(Yt=>{"use strict";var nOr=Yt&&Yt.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),iOr=Yt&&Yt.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&nOr(t,e,r)},ihe=Yt&&Yt.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Yt,"__esModule",{value:!0});Yt.BasicPooledClientSideCache=Yt.BasicClientSideCache=Yt.REDIS_FLUSH_MODES=Yt.COMMAND_LIST_FILTER_BY=Yt.CLUSTER_SLOT_STATES=Yt.FAILOVER_MODES=Yt.CLIENT_KILL_FILTERS=Yt.GEO_REPLY_WITH=Yt.createSentinel=Yt.createCluster=Yt.createClientPool=Yt.createClient=Yt.digest=Yt.defineScript=Yt.VerbatimString=Yt.RESP_TYPES=void 0;var sOr=E5();Object.defineProperty(Yt,"RESP_TYPES",{enumerable:!0,get:function(){return sOr.RESP_TYPES}});var aOr=wae();Object.defineProperty(Yt,"VerbatimString",{enumerable:!0,get:function(){return aOr.VerbatimString}});var oOr=JYe();Object.defineProperty(Yt,"defineScript",{enumerable:!0,get:function(){return oOr.defineScript}});var uOr=ZYe();Object.defineProperty(Yt,"digest",{enumerable:!0,get:function(){return uOr.digest}});iOr(fp(),Yt);var cOr=ihe(Rw());Yt.createClient=cOr.default.create;var lOr=Upe();Yt.createClientPool=lOr.RedisClientPool.create;var dOr=ihe(edt());Yt.createCluster=dOr.default.create;var fOr=ihe(xdt());Yt.createSentinel=fOr.default.create;var pOr=iD();Object.defineProperty(Yt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return pOr.GEO_REPLY_WITH}});var dk=Bd();Object.defineProperty(Yt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return dk.CLIENT_KILL_FILTERS}});Object.defineProperty(Yt,"FAILOVER_MODES",{enumerable:!0,get:function(){return dk.FAILOVER_MODES}});Object.defineProperty(Yt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return dk.CLUSTER_SLOT_STATES}});Object.defineProperty(Yt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return dk.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Yt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return dk.REDIS_FLUSH_MODES}});var Cdt=Tw();Object.defineProperty(Yt,"BasicClientSideCache",{enumerable:!0,get:function(){return Cdt.BasicClientSideCache}});Object.defineProperty(Yt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return Cdt.BasicPooledClientSideCache}})});var Tdt=b(she=>{"use strict";Object.defineProperty(she,"__esModule",{value:!0});var hOr=Le();she.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BF.ADD"),e.pushKey(t),e.push(r)},transformReply:hOr.transformBooleanReply}});var Ndt=b(ahe=>{"use strict";Object.defineProperty(ahe,"__esModule",{value:!0});ahe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("BF.CARD"),e.pushKey(t)},transformReply:void 0}});var Rdt=b(ohe=>{"use strict";Object.defineProperty(ohe,"__esModule",{value:!0});var mOr=Le();ohe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.EXISTS"),e.pushKey(t),e.push(r)},transformReply:mOr.transformBooleanReply}});var uhe=b(r8=>{"use strict";Object.defineProperty(r8,"__esModule",{value:!0});r8.transformInfoV2Reply=void 0;var gOr=fk();function yOr(e,t){switch(t?t[gOr.RESP_TYPES.MAP]:void 0){case Array:return e;case Map:{let n=new Map;for(let i=0;i{"use strict";Object.defineProperty(che,"__esModule",{value:!0});var _Or=uhe();che.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("BF.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,_Or.transformInfoV2Reply)(e,r),3:void 0}}});var kdt=b(lhe=>{"use strict";Object.defineProperty(lhe,"__esModule",{value:!0});var AOr=Le();lhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BF.INSERT"),e.pushKey(t),n?.CAPACITY!==void 0&&e.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&e.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&e.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&e.push("NOCREATE"),n?.NONSCALING&&e.push("NONSCALING"),e.push("ITEMS"),e.pushVariadic(r)},transformReply:AOr.transformBooleanArrayReply}});var Odt=b(dhe=>{"use strict";Object.defineProperty(dhe,"__esModule",{value:!0});dhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BF.LOADCHUNK"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Pdt=b(fhe=>{"use strict";Object.defineProperty(fhe,"__esModule",{value:!0});var vOr=Le();fhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BF.MADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:vOr.transformBooleanArrayReply}});var Mdt=b(phe=>{"use strict";Object.defineProperty(phe,"__esModule",{value:!0});var bOr=Le();phe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.MEXISTS"),e.pushKey(t),e.pushVariadic(r)},transformReply:bOr.transformBooleanArrayReply}});var Ldt=b(hhe=>{"use strict";Object.defineProperty(hhe,"__esModule",{value:!0});hhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("BF.RESERVE"),e.pushKey(t),e.push(r.toString(),n.toString()),i?.EXPANSION&&e.push("EXPANSION",i.EXPANSION.toString()),i?.NONSCALING&&e.push("NONSCALING")},transformReply:void 0}});var Bdt=b(mhe=>{"use strict";Object.defineProperty(mhe,"__esModule",{value:!0});mhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.SCANDUMP"),e.pushKey(t),e.push(r.toString())},transformReply(e){return{iterator:e[0],chunk:e[1]}}}});var Fw=b(vp=>{"use strict";var EOr=vp&&vp.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),SOr=vp&&vp.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&EOr(t,e,r)},bp=vp&&vp.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vp,"__esModule",{value:!0});var $dt=bp(Tdt()),Fdt=bp(Ndt()),Udt=bp(Rdt()),qdt=bp(Ddt()),jdt=bp(kdt()),Hdt=bp(Odt()),Kdt=bp(Pdt()),Vdt=bp(Mdt()),zdt=bp(Ldt()),Qdt=bp(Bdt());SOr(uhe(),vp);vp.default={ADD:$dt.default,add:$dt.default,CARD:Fdt.default,card:Fdt.default,EXISTS:Udt.default,exists:Udt.default,INFO:qdt.default,info:qdt.default,INSERT:jdt.default,insert:jdt.default,LOADCHUNK:Hdt.default,loadChunk:Hdt.default,MADD:Kdt.default,mAdd:Kdt.default,MEXISTS:Vdt.default,mExists:Vdt.default,RESERVE:zdt.default,reserve:zdt.default,SCANDUMP:Qdt.default,scanDump:Qdt.default}});var Ydt=b(ghe=>{"use strict";Object.defineProperty(ghe,"__esModule",{value:!0});ghe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("CMS.INCRBY"),e.pushKey(t),Array.isArray(r))for(let n of r)Gdt(e,n);else Gdt(e,r)},transformReply:void 0};function Gdt(e,{item:t,incrementBy:r}){e.push(t,r.toString())}});var Wdt=b(yhe=>{"use strict";Object.defineProperty(yhe,"__esModule",{value:!0});var wOr=Fw();yhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("CMS.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,wOr.transformInfoV2Reply)(e,r),3:void 0}}});var Xdt=b(_he=>{"use strict";Object.defineProperty(_he,"__esModule",{value:!0});_he.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CMS.INITBYDIM"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Jdt=b(Ahe=>{"use strict";Object.defineProperty(Ahe,"__esModule",{value:!0});Ahe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CMS.INITBYPROB"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Zdt=b(vhe=>{"use strict";Object.defineProperty(vhe,"__esModule",{value:!0});vhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("CMS.MERGE"),e.pushKey(t),e.push(r.length.toString()),IOr(r))e.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(bhe,"__esModule",{value:!0});bhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CMS.QUERY"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var oft=b(pk=>{"use strict";var Uw=pk&&pk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pk,"__esModule",{value:!0});var tft=Uw(Ydt()),rft=Uw(Wdt()),nft=Uw(Xdt()),ift=Uw(Jdt()),sft=Uw(Zdt()),aft=Uw(eft());pk.default={INCRBY:tft.default,incrBy:tft.default,INFO:rft.default,info:rft.default,INITBYDIM:nft.default,initByDim:nft.default,INITBYPROB:ift.default,initByProb:ift.default,MERGE:sft.default,merge:sft.default,QUERY:aft.default,query:aft.default}});var uft=b(Ehe=>{"use strict";Object.defineProperty(Ehe,"__esModule",{value:!0});var xOr=Le();Ehe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.ADD"),e.pushKey(t),e.push(r)},transformReply:xOr.transformBooleanReply}});var cft=b(She=>{"use strict";Object.defineProperty(She,"__esModule",{value:!0});var COr=Le();She.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.ADDNX"),e.pushKey(t),e.push(r)},transformReply:COr.transformBooleanReply}});var lft=b(whe=>{"use strict";Object.defineProperty(whe,"__esModule",{value:!0});whe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CF.COUNT"),e.pushKey(t),e.push(r)},transformReply:void 0}});var dft=b(Ihe=>{"use strict";Object.defineProperty(Ihe,"__esModule",{value:!0});var TOr=Le();Ihe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.DEL"),e.pushKey(t),e.push(r)},transformReply:TOr.transformBooleanReply}});var fft=b(xhe=>{"use strict";Object.defineProperty(xhe,"__esModule",{value:!0});var NOr=Le();xhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.EXISTS"),e.pushKey(t),e.push(r)},transformReply:NOr.transformBooleanReply}});var pft=b(Che=>{"use strict";Object.defineProperty(Che,"__esModule",{value:!0});var ROr=Fw();Che.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("CF.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,ROr.transformInfoV2Reply)(e,r),3:void 0}}});var The=b(hk=>{"use strict";Object.defineProperty(hk,"__esModule",{value:!0});hk.parseCfInsertArguments=void 0;var DOr=Le();function hft(e,t,r,n){e.pushKey(t),n?.CAPACITY!==void 0&&e.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&e.push("NOCREATE"),e.push("ITEMS"),e.pushVariadic(r)}hk.parseCfInsertArguments=hft;hk.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("CF.INSERT"),hft(...e)},transformReply:DOr.transformBooleanArrayReply}});var mft=b(wm=>{"use strict";var kOr=wm&&wm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OOr=wm&&wm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),POr=wm&&wm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&kOr(t,e,r);return OOr(t,e),t};Object.defineProperty(wm,"__esModule",{value:!0});var Nhe=POr(The());wm.default={IS_READ_ONLY:Nhe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("CF.INSERTNX"),(0,Nhe.parseCfInsertArguments)(...e)},transformReply:Nhe.default.transformReply}});var gft=b(Rhe=>{"use strict";Object.defineProperty(Rhe,"__esModule",{value:!0});Rhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CF.LOADCHUNK"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var yft=b(Dhe=>{"use strict";Object.defineProperty(Dhe,"__esModule",{value:!0});Dhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CF.RESERVE"),e.pushKey(t),e.push(r.toString()),n?.BUCKETSIZE!==void 0&&e.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&e.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&e.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var _ft=b(khe=>{"use strict";Object.defineProperty(khe,"__esModule",{value:!0});khe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CF.SCANDUMP"),e.pushKey(t),e.push(r.toString())},transformReply(e){return{iterator:e[0],chunk:e[1]}}}});var Rft=b(mk=>{"use strict";var qd=mk&&mk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mk,"__esModule",{value:!0});var Aft=qd(uft()),vft=qd(cft()),bft=qd(lft()),Eft=qd(dft()),Sft=qd(fft()),wft=qd(pft()),Ift=qd(The()),xft=qd(mft()),Cft=qd(gft()),Tft=qd(yft()),Nft=qd(_ft());mk.default={ADD:Aft.default,add:Aft.default,ADDNX:vft.default,addNX:vft.default,COUNT:bft.default,count:bft.default,DEL:Eft.default,del:Eft.default,EXISTS:Sft.default,exists:Sft.default,INFO:wft.default,info:wft.default,INSERT:Ift.default,insert:Ift.default,INSERTNX:xft.default,insertNX:xft.default,LOADCHUNK:Cft.default,loadChunk:Cft.default,RESERVE:Tft.default,reserve:Tft.default,SCANDUMP:Nft.default,scanDump:Nft.default}});var Dft=b(Ohe=>{"use strict";Object.defineProperty(Ohe,"__esModule",{value:!0});Ohe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TDIGEST.ADD"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:void 0}});var Phe=b(gk=>{"use strict";Object.defineProperty(gk,"__esModule",{value:!0});gk.transformByRankArguments=void 0;var MOr=Le();function kft(e,t,r){e.pushKey(t);for(let n of r)e.push(n.toString())}gk.transformByRankArguments=kft;gk.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TDIGEST.BYRANK"),kft(...e)},transformReply:MOr.transformDoubleArrayReply}});var Oft=b(Im=>{"use strict";var LOr=Im&&Im.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),BOr=Im&&Im.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$Or=Im&&Im.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&LOr(t,e,r);return BOr(t,e),t};Object.defineProperty(Im,"__esModule",{value:!0});var Mhe=$Or(Phe());Im.default={IS_READ_ONLY:Mhe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TDIGEST.BYREVRANK"),(0,Mhe.transformByRankArguments)(...e)},transformReply:Mhe.default.transformReply}});var Pft=b(Lhe=>{"use strict";Object.defineProperty(Lhe,"__esModule",{value:!0});var FOr=Le();Lhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TDIGEST.CDF"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:FOr.transformDoubleArrayReply}});var Mft=b(Bhe=>{"use strict";Object.defineProperty(Bhe,"__esModule",{value:!0});Bhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TDIGEST.CREATE"),e.pushKey(t),r?.COMPRESSION!==void 0&&e.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var Lft=b($he=>{"use strict";Object.defineProperty($he,"__esModule",{value:!0});var UOr=Fw();$he.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,UOr.transformInfoV2Reply)(e,r),3:void 0}}});var Bft=b(Fhe=>{"use strict";Object.defineProperty(Fhe,"__esModule",{value:!0});var qOr=Le();Fhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.MAX"),e.pushKey(t)},transformReply:qOr.transformDoubleReply}});var $ft=b(Uhe=>{"use strict";Object.defineProperty(Uhe,"__esModule",{value:!0});Uhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TDIGEST.MERGE"),e.pushKey(t),e.pushKeysLength(r),n?.COMPRESSION!==void 0&&e.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&e.push("OVERRIDE")},transformReply:void 0}});var Fft=b(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});var jOr=Le();qhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.MIN"),e.pushKey(t)},transformReply:jOr.transformDoubleReply}});var Uft=b(jhe=>{"use strict";Object.defineProperty(jhe,"__esModule",{value:!0});var HOr=Le();jhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TDIGEST.QUANTILE"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:HOr.transformDoubleArrayReply}});var Hhe=b(yk=>{"use strict";Object.defineProperty(yk,"__esModule",{value:!0});yk.transformRankArguments=void 0;function qft(e,t,r){e.pushKey(t);for(let n of r)e.push(n.toString())}yk.transformRankArguments=qft;yk.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TDIGEST.RANK"),qft(...e)},transformReply:void 0}});var jft=b(Khe=>{"use strict";Object.defineProperty(Khe,"__esModule",{value:!0});Khe.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TDIGEST.RESET"),e.pushKey(t)},transformReply:void 0}});var Hft=b(xm=>{"use strict";var KOr=xm&&xm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),VOr=xm&&xm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),zOr=xm&&xm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&KOr(t,e,r);return VOr(t,e),t};Object.defineProperty(xm,"__esModule",{value:!0});var Vhe=zOr(Hhe());xm.default={IS_READ_ONLY:Vhe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TDIGEST.REVRANK"),(0,Vhe.transformRankArguments)(...e)},transformReply:Vhe.default.transformReply}});var Kft=b(zhe=>{"use strict";Object.defineProperty(zhe,"__esModule",{value:!0});var QOr=Le();zhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("TDIGEST.TRIMMED_MEAN"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:QOr.transformDoubleReply}});var spt=b(_k=>{"use strict";var Vu=_k&&_k.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_k,"__esModule",{value:!0});var Vft=Vu(Dft()),zft=Vu(Phe()),Qft=Vu(Oft()),Gft=Vu(Pft()),Yft=Vu(Mft()),Wft=Vu(Lft()),Xft=Vu(Bft()),Jft=Vu($ft()),Zft=Vu(Fft()),ept=Vu(Uft()),tpt=Vu(Hhe()),rpt=Vu(jft()),npt=Vu(Hft()),ipt=Vu(Kft());_k.default={ADD:Vft.default,add:Vft.default,BYRANK:zft.default,byRank:zft.default,BYREVRANK:Qft.default,byRevRank:Qft.default,CDF:Gft.default,cdf:Gft.default,CREATE:Yft.default,create:Yft.default,INFO:Wft.default,info:Wft.default,MAX:Xft.default,max:Xft.default,MERGE:Jft.default,merge:Jft.default,MIN:Zft.default,min:Zft.default,QUANTILE:ept.default,quantile:ept.default,RANK:tpt.default,rank:tpt.default,RESET:rpt.default,reset:rpt.default,REVRANK:npt.default,revRank:npt.default,TRIMMED_MEAN:ipt.default,trimmedMean:ipt.default}});var apt=b(Qhe=>{"use strict";Object.defineProperty(Qhe,"__esModule",{value:!0});Qhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TOPK.ADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var opt=b(Ghe=>{"use strict";Object.defineProperty(Ghe,"__esModule",{value:!0});Ghe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TOPK.COUNT"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var cpt=b(Yhe=>{"use strict";Object.defineProperty(Yhe,"__esModule",{value:!0});function upt(e,{item:t,incrementBy:r}){e.push(t,r.toString())}Yhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("TOPK.INCRBY"),e.pushKey(t),Array.isArray(r))for(let n of r)upt(e,n);else upt(e,r)},transformReply:void 0}});var lpt=b(Whe=>{"use strict";Object.defineProperty(Whe,"__esModule",{value:!0});var GOr=Le(),YOr=Fw();Whe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(e[7]=GOr.transformDoubleReply[2](e[7],t,r),(0,YOr.transformInfoV2Reply)(e,r)),3:void 0}}});var dpt=b(Xhe=>{"use strict";Object.defineProperty(Xhe,"__esModule",{value:!0});Xhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.LIST"),e.pushKey(t),e.push("WITHCOUNT")},transformReply(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(Jhe,"__esModule",{value:!0});Jhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.LIST"),e.pushKey(t)},transformReply:void 0}});var ppt=b(Zhe=>{"use strict";Object.defineProperty(Zhe,"__esModule",{value:!0});var WOr=Le();Zhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TOPK.QUERY"),e.pushKey(t),e.pushVariadic(r)},transformReply:WOr.transformBooleanArrayReply}});var hpt=b(eme=>{"use strict";Object.defineProperty(eme,"__esModule",{value:!0});eme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TOPK.RESERVE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var Spt=b(Ak=>{"use strict";var fy=Ak&&Ak.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ak,"__esModule",{value:!0});var mpt=fy(apt()),gpt=fy(opt()),ypt=fy(cpt()),_pt=fy(lpt()),Apt=fy(dpt()),vpt=fy(fpt()),bpt=fy(ppt()),Ept=fy(hpt());Ak.default={ADD:mpt.default,add:mpt.default,COUNT:gpt.default,count:gpt.default,INCRBY:ypt.default,incrBy:ypt.default,INFO:_pt.default,info:_pt.default,LIST_WITHCOUNT:Apt.default,listWithCount:Apt.default,LIST:vpt.default,list:vpt.default,QUERY:bpt.default,query:bpt.default,RESERVE:Ept.default,reserve:Ept.default}});var wpt=b(vk=>{"use strict";var bk=vk&&vk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vk,"__esModule",{value:!0});var XOr=bk(Fw()),JOr=bk(oft()),ZOr=bk(Rft()),ePr=bk(spt()),tPr=bk(Spt());vk.default={bf:XOr.default,cms:JOr.default,cf:ZOr.default,tDigest:ePr.default,topK:tPr.default}});var tme=b(qw=>{"use strict";var rPr=qw&&qw.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qw,"__esModule",{value:!0});qw.default=void 0;var nPr=wpt();Object.defineProperty(qw,"default",{enumerable:!0,get:function(){return rPr(nPr).default}})});var xpt=b(rme=>{"use strict";Object.defineProperty(rme,"__esModule",{value:!0});var Ipt=Le();rme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,...i){e.push("JSON.ARRAPPEND"),e.pushKey(t),e.push(r,(0,Ipt.transformRedisJsonArgument)(n));for(let s=0;s{"use strict";Object.defineProperty(nme,"__esModule",{value:!0});var iPr=Le();nme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("JSON.ARRINDEX"),e.pushKey(t),e.push(r,(0,iPr.transformRedisJsonArgument)(n)),i?.range&&(e.push(i.range.start.toString()),i.range.stop!==void 0&&e.push(i.range.stop.toString()))},transformReply:void 0}});var Npt=b(ime=>{"use strict";Object.defineProperty(ime,"__esModule",{value:!0});var Tpt=Le();ime.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,...s){e.push("JSON.ARRINSERT"),e.pushKey(t),e.push(r,n.toString(),(0,Tpt.transformRedisJsonArgument)(i));for(let a=0;a{"use strict";Object.defineProperty(sme,"__esModule",{value:!0});sme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.ARRLEN"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Dpt=b(ome=>{"use strict";Object.defineProperty(ome,"__esModule",{value:!0});var ame=Le();ome.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.ARRPOP"),e.pushKey(t),r&&(e.push(r.path),r.index!==void 0&&e.push(r.index.toString()))},transformReply(e){return(0,ame.isArrayReply)(e)?e.map(t=>(0,ame.transformRedisJsonNullReply)(t)):(0,ame.transformRedisJsonNullReply)(e)}}});var kpt=b(ume=>{"use strict";Object.defineProperty(ume,"__esModule",{value:!0});ume.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("JSON.ARRTRIM"),e.pushKey(t),e.push(r,n.toString(),i.toString())},transformReply:void 0}});var Opt=b(cme=>{"use strict";Object.defineProperty(cme,"__esModule",{value:!0});cme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.CLEAR"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Ppt=b(lme=>{"use strict";Object.defineProperty(lme,"__esModule",{value:!0});lme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.DEBUG","MEMORY"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Mpt=b(dme=>{"use strict";Object.defineProperty(dme,"__esModule",{value:!0});dme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.DEL"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Lpt=b(fme=>{"use strict";Object.defineProperty(fme,"__esModule",{value:!0});fme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.FORGET"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Bpt=b(pme=>{"use strict";Object.defineProperty(pme,"__esModule",{value:!0});var sPr=Le();pme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.GET"),e.pushKey(t),r?.path!==void 0&&e.pushVariadic(r.path)},transformReply:sPr.transformRedisJsonNullReply}});var $pt=b(hme=>{"use strict";Object.defineProperty(hme,"__esModule",{value:!0});var aPr=Le();hme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.MERGE"),e.pushKey(t),e.push(r,(0,aPr.transformRedisJsonArgument)(n))},transformReply:void 0}});var Fpt=b(mme=>{"use strict";Object.defineProperty(mme,"__esModule",{value:!0});var oPr=Le();mme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.MGET"),e.pushKeys(t),e.push(r)},transformReply(e){return e.map(t=>(0,oPr.transformRedisJsonNullReply)(t))}}});var Upt=b(gme=>{"use strict";Object.defineProperty(gme,"__esModule",{value:!0});var uPr=Le();gme.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(yme,"__esModule",{value:!0});yme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.NUMINCRBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:{2:e=>JSON.parse(e.toString()),3:void 0}}});var qpt=b(Ek=>{"use strict";var cPr=Ek&&Ek.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ek,"__esModule",{value:!0});var lPr=cPr(_me());Ek.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.NUMMULTBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:lPr.default.transformReply}});var jpt=b(Ame=>{"use strict";Object.defineProperty(Ame,"__esModule",{value:!0});Ame.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.OBJKEYS"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Hpt=b(vme=>{"use strict";Object.defineProperty(vme,"__esModule",{value:!0});vme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.OBJLEN"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var Kpt=b(bme=>{"use strict";Object.defineProperty(bme,"__esModule",{value:!0});var dPr=Le();bme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("JSON.SET"),e.pushKey(t),e.push(r,(0,dPr.transformRedisJsonArgument)(n)),i?.condition?e.push(i?.condition):i?.NX?e.push("NX"):i?.XX&&e.push("XX")},transformReply:void 0}});var Vpt=b(Eme=>{"use strict";Object.defineProperty(Eme,"__esModule",{value:!0});var fPr=Le();Eme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.STRAPPEND"),e.pushKey(t),n?.path!==void 0&&e.push(n.path),e.push((0,fPr.transformRedisJsonArgument)(r))},transformReply:void 0}});var zpt=b(Sme=>{"use strict";Object.defineProperty(Sme,"__esModule",{value:!0});Sme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.STRLEN"),e.pushKey(t),r?.path&&e.push(r.path)},transformReply:void 0}});var Qpt=b(wme=>{"use strict";Object.defineProperty(wme,"__esModule",{value:!0});wme.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.TOGGLE"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Gpt=b(Ime=>{"use strict";Object.defineProperty(Ime,"__esModule",{value:!0});Ime.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.TYPE"),e.pushKey(t),r?.path&&e.push(r.path)},transformReply:{2:void 0,3:e=>e[0]}}});var _ht=b(jd=>{"use strict";var Di=jd&&jd.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jd,"__esModule",{value:!0});jd.transformRedisJsonNullReply=jd.transformRedisJsonReply=jd.transformRedisJsonArgument=void 0;var Ypt=Di(xpt()),Wpt=Di(Cpt()),Xpt=Di(Npt()),Jpt=Di(Rpt()),Zpt=Di(Dpt()),eht=Di(kpt()),tht=Di(Opt()),rht=Di(Ppt()),nht=Di(Mpt()),iht=Di(Lpt()),sht=Di(Bpt()),aht=Di($pt()),oht=Di(Fpt()),uht=Di(Upt()),cht=Di(_me()),lht=Di(qpt()),dht=Di(jpt()),fht=Di(Hpt()),pht=Di(Kpt()),hht=Di(Vpt()),mht=Di(zpt()),ght=Di(Qpt()),yht=Di(Gpt()),xme=Le();Object.defineProperty(jd,"transformRedisJsonArgument",{enumerable:!0,get:function(){return xme.transformRedisJsonArgument}});Object.defineProperty(jd,"transformRedisJsonReply",{enumerable:!0,get:function(){return xme.transformRedisJsonReply}});Object.defineProperty(jd,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return xme.transformRedisJsonNullReply}});jd.default={ARRAPPEND:Ypt.default,arrAppend:Ypt.default,ARRINDEX:Wpt.default,arrIndex:Wpt.default,ARRINSERT:Xpt.default,arrInsert:Xpt.default,ARRLEN:Jpt.default,arrLen:Jpt.default,ARRPOP:Zpt.default,arrPop:Zpt.default,ARRTRIM:eht.default,arrTrim:eht.default,CLEAR:tht.default,clear:tht.default,DEBUG_MEMORY:rht.default,debugMemory:rht.default,DEL:nht.default,del:nht.default,FORGET:iht.default,forget:iht.default,GET:sht.default,get:sht.default,MERGE:aht.default,merge:aht.default,MGET:oht.default,mGet:oht.default,MSET:uht.default,mSet:uht.default,NUMINCRBY:cht.default,numIncrBy:cht.default,NUMMULTBY:lht.default,numMultBy:lht.default,OBJKEYS:dht.default,objKeys:dht.default,OBJLEN:fht.default,objLen:fht.default,SET:pht.default,set:pht.default,STRAPPEND:hht.default,strAppend:hht.default,STRLEN:mht.default,strLen:mht.default,TOGGLE:ght.default,toggle:ght.default,TYPE:yht.default,type:yht.default}});var Cme=b(jw=>{"use strict";var pPr=jw&&jw.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jw,"__esModule",{value:!0});jw.default=void 0;var hPr=_ht();Object.defineProperty(jw,"default",{enumerable:!0,get:function(){return pPr(hPr).default}})});var Aht=b(Tme=>{"use strict";Object.defineProperty(Tme,"__esModule",{value:!0});Tme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var n8=b(Xn=>{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});Xn.REDISEARCH_LANGUAGE=Xn.parseSchema=Xn.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Xn.VAMANA_COMPRESSION_ALGORITHM=Xn.SCHEMA_VECTOR_FIELD_ALGORITHM=Xn.SCHEMA_TEXT_FIELD_PHONETIC=Xn.SCHEMA_FIELD_TYPE=void 0;var vht=Le();Xn.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Xn.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Xn.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Xn.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Xn.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function Nme(e,t){t.SORTABLE&&(e.push("SORTABLE"),t.SORTABLE==="UNF"&&e.push("UNF")),t.NOINDEX&&e.push("NOINDEX")}function bht(e,t){for(let[r,n]of Object.entries(t)){let i=Array.isArray(n)?n:[n];for(let s of i){if(e.push(r),typeof s=="string"){e.push(s);continue}switch(s.AS&&e.push("AS",s.AS),e.push(s.type),s.INDEXMISSING&&e.push("INDEXMISSING"),s.type){case Xn.SCHEMA_FIELD_TYPE.TEXT:s.NOSTEM&&e.push("NOSTEM"),s.WEIGHT!==void 0&&e.push("WEIGHT",s.WEIGHT.toString()),s.PHONETIC&&e.push("PHONETIC",s.PHONETIC),s.WITHSUFFIXTRIE&&e.push("WITHSUFFIXTRIE"),s.INDEXEMPTY&&e.push("INDEXEMPTY"),Nme(e,s);break;case Xn.SCHEMA_FIELD_TYPE.NUMERIC:case Xn.SCHEMA_FIELD_TYPE.GEO:Nme(e,s);break;case Xn.SCHEMA_FIELD_TYPE.TAG:s.SEPARATOR&&e.push("SEPARATOR",s.SEPARATOR),s.CASESENSITIVE&&e.push("CASESENSITIVE"),s.WITHSUFFIXTRIE&&e.push("WITHSUFFIXTRIE"),s.INDEXEMPTY&&e.push("INDEXEMPTY"),Nme(e,s);break;case Xn.SCHEMA_FIELD_TYPE.VECTOR:e.push(s.ALGORITHM);let a=[];switch(a.push("TYPE",s.TYPE,"DIM",s.DIM.toString(),"DISTANCE_METRIC",s.DISTANCE_METRIC),s.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",s.INITIAL_CAP.toString()),s.ALGORITHM){case Xn.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:s.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",s.BLOCK_SIZE.toString());break;case Xn.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:s.M!==void 0&&a.push("M",s.M.toString()),s.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",s.EF_CONSTRUCTION.toString()),s.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",s.EF_RUNTIME.toString());break;case Xn.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:s.COMPRESSION&&a.push("COMPRESSION",s.COMPRESSION),s.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",s.CONSTRUCTION_WINDOW_SIZE.toString()),s.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",s.GRAPH_MAX_DEGREE.toString()),s.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",s.SEARCH_WINDOW_SIZE.toString()),s.EPSILON!==void 0&&a.push("EPSILON",s.EPSILON.toString()),s.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",s.TRAINING_THRESHOLD.toString()),s.REDUCE!==void 0&&a.push("REDUCE",s.REDUCE.toString());break}e.pushVariadicWithLength(a);break;case Xn.SCHEMA_FIELD_TYPE.GEOSHAPE:s.COORD_SYSTEM!==void 0&&e.push("COORD_SYSTEM",s.COORD_SYSTEM);break}}}}Xn.parseSchema=bht;Xn.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};Xn.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.CREATE",t),n?.ON&&e.push("ON",n.ON),(0,vht.parseOptionalVariadicArgument)(e,"PREFIX",n?.PREFIX),n?.FILTER&&e.push("FILTER",n.FILTER),n?.LANGUAGE&&e.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&e.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&e.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&e.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&e.push("MAXTEXTFIELDS"),n?.TEMPORARY&&e.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&e.push("NOOFFSETS"),n?.NOHL&&e.push("NOHL"),n?.NOFIELDS&&e.push("NOFIELDS"),n?.NOFREQS&&e.push("NOFREQS"),n?.SKIPINITIALSCAN&&e.push("SKIPINITIALSCAN"),(0,vht.parseOptionalVariadicArgument)(e,"STOPWORDS",n?.STOPWORDS),e.push("SCHEMA"),bht(e,r)},transformReply:void 0}});var Eht=b(Rme=>{"use strict";Object.defineProperty(Rme,"__esModule",{value:!0});var mPr=n8();Rme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALTER",t,"SCHEMA","ADD"),(0,mPr.parseSchema)(e,r)},transformReply:void 0}});var Hw=b(i8=>{"use strict";Object.defineProperty(i8,"__esModule",{value:!0});i8.DEFAULT_DIALECT=void 0;i8.DEFAULT_DIALECT="2"});var Bv=b(Lv=>{"use strict";Object.defineProperty(Lv,"__esModule",{value:!0});Lv.parseSearchOptions=Lv.parseParamsArgument=void 0;var Sk=Le(),gPr=Hw();function Sht(e,t){if(t){e.push("PARAMS");let r=[];for(let n in t){if(!Object.hasOwn(t,n))continue;let i=t[n];r.push(n,typeof i=="number"?i.toString():i)}e.pushVariadicWithLength(r)}}Lv.parseParamsArgument=Sht;function wht(e,t){t?.VERBATIM&&e.push("VERBATIM"),t?.NOSTOPWORDS&&e.push("NOSTOPWORDS"),(0,Sk.parseOptionalVariadicArgument)(e,"INKEYS",t?.INKEYS),(0,Sk.parseOptionalVariadicArgument)(e,"INFIELDS",t?.INFIELDS),(0,Sk.parseOptionalVariadicArgument)(e,"RETURN",t?.RETURN),t?.SUMMARIZE&&(e.push("SUMMARIZE"),typeof t.SUMMARIZE=="object"&&((0,Sk.parseOptionalVariadicArgument)(e,"FIELDS",t.SUMMARIZE.FIELDS),t.SUMMARIZE.FRAGS!==void 0&&e.push("FRAGS",t.SUMMARIZE.FRAGS.toString()),t.SUMMARIZE.LEN!==void 0&&e.push("LEN",t.SUMMARIZE.LEN.toString()),t.SUMMARIZE.SEPARATOR!==void 0&&e.push("SEPARATOR",t.SUMMARIZE.SEPARATOR))),t?.HIGHLIGHT&&(e.push("HIGHLIGHT"),typeof t.HIGHLIGHT=="object"&&((0,Sk.parseOptionalVariadicArgument)(e,"FIELDS",t.HIGHLIGHT.FIELDS),t.HIGHLIGHT.TAGS&&e.push("TAGS",t.HIGHLIGHT.TAGS.open,t.HIGHLIGHT.TAGS.close))),t?.SLOP!==void 0&&e.push("SLOP",t.SLOP.toString()),t?.TIMEOUT!==void 0&&e.push("TIMEOUT",t.TIMEOUT.toString()),t?.INORDER&&e.push("INORDER"),t?.LANGUAGE&&e.push("LANGUAGE",t.LANGUAGE),t?.EXPANDER&&e.push("EXPANDER",t.EXPANDER),t?.SCORER&&e.push("SCORER",t.SCORER),t?.SORTBY&&(e.push("SORTBY"),typeof t.SORTBY=="string"||t.SORTBY instanceof Buffer?e.push(t.SORTBY):(e.push(t.SORTBY.BY),t.SORTBY.DIRECTION&&e.push(t.SORTBY.DIRECTION))),t?.LIMIT&&e.push("LIMIT",t.LIMIT.from.toString(),t.LIMIT.size.toString()),Sht(e,t?.PARAMS),t?.DIALECT?e.push("DIALECT",t.DIALECT.toString()):e.push("DIALECT",gPr.DEFAULT_DIALECT)}Lv.parseSearchOptions=wht;Lv.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.SEARCH",t,r),wht(e,n)},transformReply:{2:e=>{let t=e.length>2&&!Array.isArray(e[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.parseGroupByReducer=Dn.parseAggregateOptions=Dn.FT_AGGREGATE_GROUP_BY_REDUCERS=Dn.FT_AGGREGATE_STEPS=void 0;var _Pr=Bv(),APr=Le(),vPr=Hw();Dn.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};Dn.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};Dn.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r,n){return e.push("FT.AGGREGATE",t,r),Cht(e,n)},transformReply:{2:(e,t,r)=>{let n=[];for(let i=1;i{"use strict";var bPr=wk&&wk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wk,"__esModule",{value:!0});var kme=bPr(Kw());wk.default={IS_READ_ONLY:kme.default.IS_READ_ONLY,parseCommand(e,t,r,n){kme.default.parseCommand(e,t,r,n),e.push("WITHCURSOR"),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&e.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:e=>({...kme.default.transformReply[2](e[0]),cursor:e[1]}),3:void 0},unstableResp3:!0}});var Tht=b(Pme=>{"use strict";Object.defineProperty(Pme,"__esModule",{value:!0});Pme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALIASADD",t,r)},transformReply:void 0}});var Nht=b(Mme=>{"use strict";Object.defineProperty(Mme,"__esModule",{value:!0});Mme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.ALIASDEL",t)},transformReply:void 0}});var Rht=b(Lme=>{"use strict";Object.defineProperty(Lme,"__esModule",{value:!0});Lme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALIASUPDATE",t,r)},transformReply:void 0}});var Dht=b(Bme=>{"use strict";Object.defineProperty(Bme,"__esModule",{value:!0});Bme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.CONFIG","GET",t)},transformReply(e){let t=Object.create(null);for(let r of e){let[n,i]=r;t[n.toString()]=i}return t}}});var kht=b($me=>{"use strict";Object.defineProperty($me,"__esModule",{value:!0});$me.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.CONFIG","SET",t,r)},transformReply:void 0}});var Oht=b(Fme=>{"use strict";Object.defineProperty(Fme,"__esModule",{value:!0});Fme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.CURSOR","DEL",t,r.toString())},transformReply:void 0}});var Pht=b(Ik=>{"use strict";var EPr=Ik&&Ik.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ik,"__esModule",{value:!0});var SPr=EPr(Ome());Ik.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.CURSOR","READ",t,r.toString()),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString())},transformReply:SPr.default.transformReply,unstableResp3:!0}});var Mht=b(Ume=>{"use strict";Object.defineProperty(Ume,"__esModule",{value:!0});Ume.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DICTADD",t),e.pushVariadic(r)},transformReply:void 0}});var Lht=b(qme=>{"use strict";Object.defineProperty(qme,"__esModule",{value:!0});qme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DICTDEL",t),e.pushVariadic(r)},transformReply:void 0}});var Bht=b(jme=>{"use strict";Object.defineProperty(jme,"__esModule",{value:!0});jme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.DICTDUMP",t)},transformReply:{2:void 0,3:void 0}}});var $ht=b(Hme=>{"use strict";Object.defineProperty(Hme,"__esModule",{value:!0});Hme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DROPINDEX",t),r?.DD&&e.push("DD")},transformReply:{2:void 0,3:void 0}}});var Fht=b(Kme=>{"use strict";Object.defineProperty(Kme,"__esModule",{value:!0});var wPr=Bv(),IPr=Hw();Kme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.EXPLAIN",t,r),(0,wPr.parseParamsArgument)(e,n?.PARAMS),n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",IPr.DEFAULT_DIALECT)},transformReply:void 0}});var Uht=b(Vme=>{"use strict";Object.defineProperty(Vme,"__esModule",{value:!0});var xPr=Hw();Vme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.EXPLAINCLI",t,r),n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",xPr.DEFAULT_DIALECT)},transformReply:void 0}});var Hht=b(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});Hd.FT_HYBRID_COMBINE_METHOD=Hd.FT_HYBRID_VECTOR_METHOD=void 0;var qht=Le(),CPr=Bv(),TPr=Kw();Hd.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};Hd.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function NPr(e,t){e.push("SEARCH",t.query),t.SCORER&&e.push("SCORER",t.SCORER),t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}function RPr(e,t){if(e.push("VSIM",t.field,t.vector),t.method){if(t.method.type===Hd.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;t.method.EF_RUNTIME!==void 0&&(r+=2),e.push("KNN",r.toString(),"K",t.method.K.toString()),t.method.EF_RUNTIME!==void 0&&e.push("EF_RUNTIME",t.method.EF_RUNTIME.toString())}if(t.method.type===Hd.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;t.method.EPSILON!==void 0&&(r+=2),e.push("RANGE",r.toString(),"RADIUS",t.method.RADIUS.toString()),t.method.EPSILON!==void 0&&e.push("EPSILON",t.method.EPSILON.toString())}}t.FILTER&&e.push("FILTER",t.FILTER),t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}function DPr(e,t){if(t){if(e.push("COMBINE"),t.method.type===Hd.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;t.method.WINDOW!==void 0&&(r+=2),t.method.CONSTANT!==void 0&&(r+=2),t.YIELD_SCORE_AS&&(r+=2),e.push("RRF",r.toString()),t.method.WINDOW!==void 0&&e.push("WINDOW",t.method.WINDOW.toString()),t.method.CONSTANT!==void 0&&e.push("CONSTANT",t.method.CONSTANT.toString())}if(t.method.type===Hd.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;t.method.ALPHA!==void 0&&(r+=2),t.method.BETA!==void 0&&(r+=2),t.method.WINDOW!==void 0&&(r+=2),t.YIELD_SCORE_AS&&(r+=2),e.push("LINEAR",r.toString()),t.method.ALPHA!==void 0&&e.push("ALPHA",t.method.ALPHA.toString()),t.method.BETA!==void 0&&e.push("BETA",t.method.BETA.toString()),t.method.WINDOW!==void 0&&e.push("WINDOW",t.method.WINDOW.toString())}t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}}function kPr(e,t){e.push("APPLY",t.expression),t.AS&&e.push("AS",t.AS)}function OPr(e,t){if(NPr(e,t.SEARCH),RPr(e,t.VSIM),t.COMBINE&&DPr(e,t.COMBINE),t.LOAD&&(t.LOAD==="*"?e.push("LOAD","*"):(0,qht.parseOptionalVariadicArgument)(e,"LOAD",t.LOAD)),t.GROUPBY&&((0,qht.parseOptionalVariadicArgument)(e,"GROUPBY",t.GROUPBY.fields),t.GROUPBY.REDUCE)){let n=Array.isArray(t.GROUPBY.REDUCE)?t.GROUPBY.REDUCE:[t.GROUPBY.REDUCE];for(let i of n)(0,TPr.parseGroupByReducer)(e,i)}if(t.APPLY){let n=Array.isArray(t.APPLY)?t.APPLY:[t.APPLY];for(let i of n)kPr(e,i)}if(t.SORTBY){let n=t.SORTBY.fields.reduce((i,s)=>s.direction?i+2:i+1,0);e.push("SORTBY",n.toString());for(let i of t.SORTBY.fields)e.push(i.field),i.direction&&e.push(i.direction)}t.NOSORT&&e.push("NOSORT"),t.FILTER&&e.push("FILTER",t.FILTER),t.LIMIT&&e.push("LIMIT",t.LIMIT.offset.toString(),t.LIMIT.count.toString());let r=t.PARAMS&&Object.keys(t.PARAMS).length>0;(0,CPr.parseParamsArgument)(e,r?t.PARAMS:void 0),t.TIMEOUT!==void 0&&e.push("TIMEOUT",t.TIMEOUT.toString())}Hd.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.HYBRID",t),OPr(e,r)},transformReply:{2:e=>PPr(e),3:void 0},unstableResp3:!0};function PPr(e){let t=jht(e),r=t.total_results??0,n=t.results??[],i=t.warnings??[],s=t.execution_time?Number.parseFloat(t.execution_time):0,a=[];for(let o of n){let u=jht(o),c=Object.create(null);for(let[l,d]of Object.entries(u))if(l==="$")try{Object.assign(c,JSON.parse(d))}catch{c[l]=d}else c[l]=d;a.push(c)}return{totalResults:r,executionTime:s,warnings:i,results:a}}function jht(e){let t={};if(!Array.isArray(e))return t;for(let r=0;r{"use strict";Object.defineProperty(Qme,"__esModule",{value:!0});var zme=Le();Qme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.INFO",t)},transformReply:{2:MPr,3:void 0},unstableResp3:!0};function MPr(e,t,r){let n=(0,zme.createTransformTuplesReplyFunc)(t,r),i={};for(let s=0;sn(o));break;case"gc_stats":{let o={},u=e[s+1];for(let c=0;c{"use strict";var LPr=Cm&&Cm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),BPr=Cm&&Cm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),$Pr=Cm&&Cm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&LPr(t,e,r);return BPr(t,e),t};Object.defineProperty(Cm,"__esModule",{value:!0});var Vht=$Pr(Bv());Cm.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.PROFILE",t,"SEARCH"),n?.LIMITED&&e.push("LIMITED"),e.push("QUERY",r),(0,Vht.parseSearchOptions)(e,n)},transformReply:{2:e=>({results:Vht.default.transformReply[2](e[0]),profile:e[1]}),3:e=>e},unstableResp3:!0}});var Ght=b(Tm=>{"use strict";var FPr=Tm&&Tm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),UPr=Tm&&Tm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),qPr=Tm&&Tm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&FPr(t,e,r);return UPr(t,e),t};Object.defineProperty(Tm,"__esModule",{value:!0});var Qht=qPr(Kw());Tm.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.PROFILE",t,"AGGREGATE"),n?.LIMITED&&e.push("LIMITED"),e.push("QUERY",r),(0,Qht.parseAggregateOptions)(e,n)},transformReply:{2:e=>({results:Qht.default.transformReply[2](e[0]),profile:e[1]}),3:e=>e},unstableResp3:!0}});var Yht=b(xk=>{"use strict";var jPr=xk&&xk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xk,"__esModule",{value:!0});var Gme=jPr(Bv());xk.default={NOT_KEYED_COMMAND:Gme.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Gme.default.IS_READ_ONLY,parseCommand(...e){Gme.default.parseCommand(...e),e[0].push("NOCONTENT")},transformReply:{2:e=>({total:e[0],documents:e.slice(1)}),3:void 0},unstableResp3:!0}});var Xht=b(Yme=>{"use strict";Object.defineProperty(Yme,"__esModule",{value:!0});var HPr=Hw();Yme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){if(e.push("FT.SPELLCHECK",t,r),n?.DISTANCE&&e.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let i of n.TERMS)Wht(e,i);else Wht(e,n.TERMS);n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",HPr.DEFAULT_DIALECT)},transformReply:{2:e=>e.map(([,t,r])=>({term:t,suggestions:r.map(([n,i])=>({score:Number(n),suggestion:i}))})),3:void 0},unstableResp3:!0};function Wht(e,{mode:t,dictionary:r}){e.push("TERMS",t,r)}});var Jht=b(Wme=>{"use strict";Object.defineProperty(Wme,"__esModule",{value:!0});Wme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("FT.SUGADD"),e.pushKey(t),e.push(r,n.toString()),i?.INCR&&e.push("INCR"),i?.PAYLOAD&&e.push("PAYLOAD",i.PAYLOAD)},transformReply:void 0}});var Zht=b(Xme=>{"use strict";Object.defineProperty(Xme,"__esModule",{value:!0});Xme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.SUGDEL"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Ck=b(Jme=>{"use strict";Object.defineProperty(Jme,"__esModule",{value:!0});Jme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.SUGGET"),e.pushKey(t),e.push(r),n?.FUZZY&&e.push("FUZZY"),n?.MAX!==void 0&&e.push("MAX",n.MAX.toString())},transformReply:void 0}});var tmt=b(Tk=>{"use strict";var KPr=Tk&&Tk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Tk,"__esModule",{value:!0});var VPr=Le(),emt=KPr(Ck());Tk.default={IS_READ_ONLY:emt.default.IS_READ_ONLY,parseCommand(...e){emt.default.parseCommand(...e),e[0].push("WITHPAYLOADS")},transformReply(e){if((0,VPr.isNullReply)(e))return null;let t=new Array(e.length/2),r=0,n=0;for(;r{"use strict";var zPr=Nk&&Nk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Nk,"__esModule",{value:!0});var Zme=Le(),rmt=zPr(Ck());Nk.default={IS_READ_ONLY:rmt.default.IS_READ_ONLY,parseCommand(...e){rmt.default.parseCommand(...e),e[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(e,t,r)=>{if((0,Zme.isNullReply)(e))return null;let n=new Array(e.length/3),i=0,s=0;for(;i{if((0,Zme.isNullReply)(e))return null;let t=new Array(e.length/3),r=0,n=0;for(;r{"use strict";var QPr=Rk&&Rk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Rk,"__esModule",{value:!0});var e0e=Le(),imt=QPr(Ck());Rk.default={IS_READ_ONLY:imt.default.IS_READ_ONLY,parseCommand(...e){imt.default.parseCommand(...e),e[0].push("WITHSCORES")},transformReply:{2:(e,t,r)=>{if((0,e0e.isNullReply)(e))return null;let n=new Array(e.length/2),i=0,s=0;for(;i{if((0,e0e.isNullReply)(e))return null;let t=new Array(e.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(t0e,"__esModule",{value:!0});t0e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.SUGLEN",t)},transformReply:void 0}});var omt=b(r0e=>{"use strict";Object.defineProperty(r0e,"__esModule",{value:!0});r0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.SYNDUMP",t)},transformReply:{2:e=>{let t={},r=0;for(;r{"use strict";Object.defineProperty(n0e,"__esModule",{value:!0});n0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,i){e.push("FT.SYNUPDATE",t,r),i?.SKIPINITIALSCAN&&e.push("SKIPINITIALSCAN"),e.pushVariadic(n)},transformReply:void 0}});var cmt=b(i0e=>{"use strict";Object.defineProperty(i0e,"__esModule",{value:!0});i0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.TAGVALS",t,r)},transformReply:{2:void 0,3:void 0}}});var Vmt=b(Dk=>{"use strict";var Tr=Dk&&Dk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Dk,"__esModule",{value:!0});var lmt=Tr(Aht()),dmt=Tr(Eht()),fmt=Tr(Ome()),pmt=Tr(Kw()),hmt=Tr(Tht()),mmt=Tr(Nht()),gmt=Tr(Rht()),ymt=Tr(Dht()),_mt=Tr(kht()),Amt=Tr(n8()),vmt=Tr(Oht()),bmt=Tr(Pht()),Emt=Tr(Mht()),Smt=Tr(Lht()),wmt=Tr(Bht()),Imt=Tr($ht()),xmt=Tr(Fht()),Cmt=Tr(Uht()),Tmt=Tr(Hht()),Nmt=Tr(Kht()),Rmt=Tr(zht()),Dmt=Tr(Ght()),kmt=Tr(Yht()),Omt=Tr(Bv()),Pmt=Tr(Xht()),Mmt=Tr(Jht()),Lmt=Tr(Zht()),Bmt=Tr(tmt()),$mt=Tr(nmt()),Fmt=Tr(smt()),Umt=Tr(Ck()),qmt=Tr(amt()),jmt=Tr(omt()),Hmt=Tr(umt()),Kmt=Tr(cmt());Dk.default={_LIST:lmt.default,_list:lmt.default,ALTER:dmt.default,alter:dmt.default,AGGREGATE_WITHCURSOR:fmt.default,aggregateWithCursor:fmt.default,AGGREGATE:pmt.default,aggregate:pmt.default,ALIASADD:hmt.default,aliasAdd:hmt.default,ALIASDEL:mmt.default,aliasDel:mmt.default,ALIASUPDATE:gmt.default,aliasUpdate:gmt.default,CONFIG_GET:ymt.default,configGet:ymt.default,CONFIG_SET:_mt.default,configSet:_mt.default,CREATE:Amt.default,create:Amt.default,CURSOR_DEL:vmt.default,cursorDel:vmt.default,CURSOR_READ:bmt.default,cursorRead:bmt.default,DICTADD:Emt.default,dictAdd:Emt.default,DICTDEL:Smt.default,dictDel:Smt.default,DICTDUMP:wmt.default,dictDump:wmt.default,DROPINDEX:Imt.default,dropIndex:Imt.default,EXPLAIN:xmt.default,explain:xmt.default,EXPLAINCLI:Cmt.default,explainCli:Cmt.default,HYBRID:Tmt.default,hybrid:Tmt.default,INFO:Nmt.default,info:Nmt.default,PROFILESEARCH:Rmt.default,profileSearch:Rmt.default,PROFILEAGGREGATE:Dmt.default,profileAggregate:Dmt.default,SEARCH_NOCONTENT:kmt.default,searchNoContent:kmt.default,SEARCH:Omt.default,search:Omt.default,SPELLCHECK:Pmt.default,spellCheck:Pmt.default,SUGADD:Mmt.default,sugAdd:Mmt.default,SUGDEL:Lmt.default,sugDel:Lmt.default,SUGGET_WITHPAYLOADS:Bmt.default,sugGetWithPayloads:Bmt.default,SUGGET_WITHSCORES_WITHPAYLOADS:$mt.default,sugGetWithScoresWithPayloads:$mt.default,SUGGET_WITHSCORES:Fmt.default,sugGetWithScores:Fmt.default,SUGGET:Umt.default,sugGet:Umt.default,SUGLEN:qmt.default,sugLen:qmt.default,SYNDUMP:jmt.default,synDump:jmt.default,SYNUPDATE:Hmt.default,synUpdate:Hmt.default,TAGVALS:Kmt.default,tagVals:Kmt.default}});var s0e=b(na=>{"use strict";var GPr=na&&na.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(na,"__esModule",{value:!0});na.FT_AGGREGATE_STEPS=na.FT_AGGREGATE_GROUP_BY_REDUCERS=na.SCHEMA_VECTOR_FIELD_ALGORITHM=na.SCHEMA_TEXT_FIELD_PHONETIC=na.SCHEMA_FIELD_TYPE=na.REDISEARCH_LANGUAGE=na.default=void 0;var YPr=Vmt();Object.defineProperty(na,"default",{enumerable:!0,get:function(){return GPr(YPr).default}});var s8=n8();Object.defineProperty(na,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return s8.REDISEARCH_LANGUAGE}});Object.defineProperty(na,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return s8.SCHEMA_FIELD_TYPE}});Object.defineProperty(na,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return s8.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(na,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return s8.SCHEMA_VECTOR_FIELD_ALGORITHM}});var zmt=Kw();Object.defineProperty(na,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return zmt.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(na,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return zmt.FT_AGGREGATE_STEPS}})});var ia=b(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});Ar.transformRESP2LabelsWithSources=Ar.transformRESP2Labels=Ar.parseSelectedLabelsArguments=Ar.resp3MapToValue=Ar.resp2MapToValue=Ar.transformSamplesReply=Ar.transformSampleReply=Ar.parseLabelsArgument=Ar.transformTimestampArgument=Ar.parseDuplicatePolicy=Ar.TIME_SERIES_DUPLICATE_POLICIES=Ar.parseChunkSizeArgument=Ar.parseEncodingArgument=Ar.TIME_SERIES_ENCODING=Ar.parseRetentionArgument=Ar.parseIgnoreArgument=void 0;var a0e=fk();function WPr(e,t){t!==void 0&&e.push("IGNORE",t.maxTimeDiff.toString(),t.maxValDiff.toString())}Ar.parseIgnoreArgument=WPr;function XPr(e,t){t!==void 0&&e.push("RETENTION",t.toString())}Ar.parseRetentionArgument=XPr;Ar.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function JPr(e,t){t!==void 0&&e.push("ENCODING",t)}Ar.parseEncodingArgument=JPr;function ZPr(e,t){t!==void 0&&e.push("CHUNK_SIZE",t.toString())}Ar.parseChunkSizeArgument=ZPr;Ar.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function eMr(e,t){t!==void 0&&e.push("DUPLICATE_POLICY",t)}Ar.parseDuplicatePolicy=eMr;function tMr(e){return typeof e=="string"?e:(typeof e=="number"?e:e.getTime()).toString()}Ar.transformTimestampArgument=tMr;function rMr(e,t){if(t){e.push("LABELS");for(let[r,n]of Object.entries(t))e.push(r,n)}}Ar.parseLabelsArgument=rMr;Ar.transformSampleReply={2(e){let[t,r]=e;return{timestamp:t,value:Number(r)}},3(e){let[t,r]=e;return{timestamp:t,value:r}}};Ar.transformSamplesReply={2(e){return e.map(t=>Ar.transformSampleReply[2](t))},3(e){return e.map(t=>Ar.transformSampleReply[3](t))}};function nMr(e,t,r){let n=e;switch(r?.[a0e.RESP_TYPES.MAP]){case Map:{let i=new Map;for(let s of n){let a=s,o=a[0];i.set(o.toString(),t(a))}return i}case Array:{for(let i of n){let s=i;s[1]=t(s)}return n}default:{let i=Object.create(null);for(let s of n){let a=s,o=a[0];i[o.toString()]=t(a)}return i}}}Ar.resp2MapToValue=nMr;function iMr(e,t){let r=e;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty(o0e,"__esModule",{value:!0});var Vw=ia();o0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i){e.push("TS.ADD"),e.pushKey(t),e.push((0,Vw.transformTimestampArgument)(r),n.toString()),(0,Vw.parseRetentionArgument)(e,i?.RETENTION),(0,Vw.parseEncodingArgument)(e,i?.ENCODING),(0,Vw.parseChunkSizeArgument)(e,i?.CHUNK_SIZE),i?.ON_DUPLICATE&&e.push("ON_DUPLICATE",i.ON_DUPLICATE),(0,Vw.parseLabelsArgument)(e,i?.LABELS),(0,Vw.parseIgnoreArgument)(e,i?.IGNORE)},transformReply:void 0}});var Gmt=b(u0e=>{"use strict";Object.defineProperty(u0e,"__esModule",{value:!0});var kk=ia();u0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.ALTER"),e.pushKey(t),(0,kk.parseRetentionArgument)(e,r?.RETENTION),(0,kk.parseChunkSizeArgument)(e,r?.CHUNK_SIZE),(0,kk.parseDuplicatePolicy)(e,r?.DUPLICATE_POLICY),(0,kk.parseLabelsArgument)(e,r?.LABELS),(0,kk.parseIgnoreArgument)(e,r?.IGNORE)},transformReply:void 0}});var Ymt=b(c0e=>{"use strict";Object.defineProperty(c0e,"__esModule",{value:!0});var zw=ia();c0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.CREATE"),e.pushKey(t),(0,zw.parseRetentionArgument)(e,r?.RETENTION),(0,zw.parseEncodingArgument)(e,r?.ENCODING),(0,zw.parseChunkSizeArgument)(e,r?.CHUNK_SIZE),(0,zw.parseDuplicatePolicy)(e,r?.DUPLICATE_POLICY),(0,zw.parseLabelsArgument)(e,r?.LABELS),(0,zw.parseIgnoreArgument)(e,r?.IGNORE)},transformReply:void 0}});var l0e=b(Ok=>{"use strict";Object.defineProperty(Ok,"__esModule",{value:!0});Ok.TIME_SERIES_AGGREGATION_TYPE=void 0;Ok.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};Ok.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,i,s){e.push("TS.CREATERULE"),e.pushKeys([t,r]),e.push("AGGREGATION",n,i.toString()),s!==void 0&&e.push(s.toString())},transformReply:void 0}});var d0e=b(Mk=>{"use strict";Object.defineProperty(Mk,"__esModule",{value:!0});Mk.parseIncrByArguments=void 0;var Pk=ia();function Wmt(e,t,r,n){e.pushKey(t),e.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&e.push("TIMESTAMP",(0,Pk.transformTimestampArgument)(n.TIMESTAMP)),(0,Pk.parseRetentionArgument)(e,n?.RETENTION),n?.UNCOMPRESSED&&e.push("UNCOMPRESSED"),(0,Pk.parseChunkSizeArgument)(e,n?.CHUNK_SIZE),(0,Pk.parseLabelsArgument)(e,n?.LABELS),(0,Pk.parseIgnoreArgument)(e,n?.IGNORE)}Mk.parseIncrByArguments=Wmt;Mk.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("TS.INCRBY"),Wmt(...e)},transformReply:void 0}});var Xmt=b(Nm=>{"use strict";var cMr=Nm&&Nm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lMr=Nm&&Nm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dMr=Nm&&Nm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&cMr(t,e,r);return lMr(t,e),t};Object.defineProperty(Nm,"__esModule",{value:!0});var f0e=dMr(d0e());Nm.default={IS_READ_ONLY:f0e.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TS.DECRBY"),(0,f0e.parseIncrByArguments)(...e)},transformReply:f0e.default.transformReply}});var Zmt=b(p0e=>{"use strict";Object.defineProperty(p0e,"__esModule",{value:!0});var Jmt=ia();p0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TS.DEL"),e.pushKey(t),e.push((0,Jmt.transformTimestampArgument)(r),(0,Jmt.transformTimestampArgument)(n))},transformReply:void 0}});var e0t=b(h0e=>{"use strict";Object.defineProperty(h0e,"__esModule",{value:!0});h0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.DELETERULE"),e.pushKeys([t,r])},transformReply:void 0}});var t0t=b(m0e=>{"use strict";Object.defineProperty(m0e,"__esModule",{value:!0});m0e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.GET"),e.pushKey(t),r?.LATEST&&e.push("LATEST")},transformReply:{2(e){return e.length===0?null:{timestamp:e[0],value:Number(e[1])}},3(e){return e.length===0?null:{timestamp:e[0],value:e[1]}}}}});var y0e=b(g0e=>{"use strict";Object.defineProperty(g0e,"__esModule",{value:!0});var fMr=Le();g0e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TS.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>{let n={};for(let i=0;i({name:a,value:o}));break;case"rules":n[s]=e[i+1].map(([a,o,u])=>({key:a,timeBucket:o,aggregationType:u}));break;case"ignoreMaxValDiff":n[s]=fMr.transformDoubleReply[2](e[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var r0t=b(Lk=>{"use strict";var pMr=Lk&&Lk.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Lk,"__esModule",{value:!0});var _0e=pMr(y0e());Lk.default={IS_READ_ONLY:_0e.default.IS_READ_ONLY,parseCommand(e,t){_0e.default.parseCommand(e,t),e.push("DEBUG")},transformReply:{2:(e,t,r)=>{let n=_0e.default.transformReply[2](e,t,r);for(let i=0;i({startTimestamp:a[1],endTimestamp:a[3],samples:a[5],size:a[7],bytesPerSample:a[9]}));break}}}return n},3:void 0},unstableResp3:!0}});var n0t=b(A0e=>{"use strict";Object.defineProperty(A0e,"__esModule",{value:!0});var hMr=ia();A0e.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TS.MADD");for(let{key:r,timestamp:n,value:i}of t)e.pushKey(r),e.push((0,hMr.transformTimestampArgument)(n),i.toString())},transformReply:void 0}});var Ep=b($v=>{"use strict";Object.defineProperty($v,"__esModule",{value:!0});$v.parseFilterArgument=$v.parseLatestArgument=void 0;var a8=ia();function i0t(e,t){t&&e.push("LATEST")}$v.parseLatestArgument=i0t;function s0t(e,t){e.push("FILTER"),e.pushVariadic(t)}$v.parseFilterArgument=s0t;$v.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.MGET"),i0t(e,r?.LATEST),s0t(e,t)},transformReply:{2(e,t,r){return(0,a8.resp2MapToValue)(e,([,,n])=>({sample:a8.transformSampleReply[2](n)}),r)},3(e){return(0,a8.resp3MapToValue)(e,([,t])=>({sample:a8.transformSampleReply[3](t)}))}}}});var v0e=b($k=>{"use strict";Object.defineProperty($k,"__esModule",{value:!0});$k.createTransformMGetLabelsReply=void 0;var a0t=Ep(),Bk=ia();function o0t(){return{2(e,t,r){return(0,Bk.resp2MapToValue)(e,([,n,i])=>({labels:(0,Bk.transformRESP2Labels)(n),sample:Bk.transformSampleReply[2](i)}),r)},3(e){return(0,Bk.resp3MapToValue)(e,([t,r])=>({labels:t,sample:Bk.transformSampleReply[3](r)}))}}}$k.createTransformMGetLabelsReply=o0t;$k.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.MGET"),(0,a0t.parseLatestArgument)(e,r?.LATEST),e.push("WITHLABELS"),(0,a0t.parseFilterArgument)(e,t)},transformReply:o0t()}});var c0t=b(b0e=>{"use strict";Object.defineProperty(b0e,"__esModule",{value:!0});var u0t=Ep(),mMr=ia(),gMr=v0e();b0e.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("TS.MGET"),(0,u0t.parseLatestArgument)(e,n?.LATEST),(0,mMr.parseSelectedLabelsArguments)(e,r),(0,u0t.parseFilterArgument)(e,t)},transformReply:(0,gMr.createTransformMGetLabelsReply)()}});var Sp=b(Rm=>{"use strict";Object.defineProperty(Rm,"__esModule",{value:!0});Rm.transformRangeArguments=Rm.parseRangeArguments=Rm.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Fv=ia();Rm.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function l0t(e,t,r,n){if(e.push((0,Fv.transformTimestampArgument)(t),(0,Fv.transformTimestampArgument)(r)),n?.LATEST&&e.push("LATEST"),n?.FILTER_BY_TS){e.push("FILTER_BY_TS");for(let i of n.FILTER_BY_TS)e.push((0,Fv.transformTimestampArgument)(i))}n?.FILTER_BY_VALUE&&e.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&e.push("ALIGN",(0,Fv.transformTimestampArgument)(n.ALIGN)),e.push("AGGREGATION",n.AGGREGATION.type,(0,Fv.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&e.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&e.push("EMPTY"))}Rm.parseRangeArguments=l0t;function d0t(e,t,r,n,i){e.pushKey(t),l0t(e,r,n,i)}Rm.transformRangeArguments=d0t;Rm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TS.RANGE"),d0t(...e)},transformReply:{2(e){return Fv.transformSamplesReply[2](e)},3(e){return Fv.transformSamplesReply[3](e)}}}});var Qw=b(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});Kd.extractResp3MRangeSources=Kd.createTransformMRangeGroupByArguments=Kd.parseGroupByArguments=Kd.TIME_SERIES_REDUCERS=void 0;var o8=ia(),yMr=Sp(),_Mr=Ep();Kd.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function f0t(e,t){e.push("GROUPBY",t.label,"REDUCE",t.REDUCE)}Kd.parseGroupByArguments=f0t;function p0t(e){return(t,r,n,i,s,a)=>{t.push(e),(0,yMr.parseRangeArguments)(t,r,n,a),(0,_Mr.parseFilterArgument)(t,i),f0t(t,s)}}Kd.createTransformMRangeGroupByArguments=p0t;function h0t(e){let t=e;return t instanceof Map?t.get("sources"):t instanceof Array?t[1]:t.sources}Kd.extractResp3MRangeSources=h0t;Kd.default={IS_READ_ONLY:!0,parseCommand:p0t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,o8.resp2MapToValue)(e,([n,i,s])=>({samples:o8.transformSamplesReply[2](s)}),r)},3(e){return(0,o8.resp3MapToValue)(e,([t,r,n,i])=>({sources:h0t(n),samples:o8.transformSamplesReply[3](i)}))}}}});var u8=b(Fk=>{"use strict";Object.defineProperty(Fk,"__esModule",{value:!0});Fk.createTransformMRangeSelectedLabelsArguments=void 0;var Gw=ia(),AMr=Sp(),vMr=Ep();function m0t(e){return(t,r,n,i,s,a)=>{t.push(e),(0,AMr.parseRangeArguments)(t,r,n,a),(0,Gw.parseSelectedLabelsArguments)(t,i),(0,vMr.parseFilterArgument)(t,s)}}Fk.createTransformMRangeSelectedLabelsArguments=m0t;Fk.default={IS_READ_ONLY:!0,parseCommand:m0t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,Gw.resp2MapToValue)(e,([n,i,s])=>({labels:(0,Gw.transformRESP2Labels)(i,r),samples:Gw.transformSamplesReply[2](s)}),r)},3(e){return(0,Gw.resp3MapToValue)(e,([t,r,n])=>({labels:r,samples:Gw.transformSamplesReply[3](n)}))}}}});var S0e=b(Uv=>{"use strict";var bMr=Uv&&Uv.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Uv,"__esModule",{value:!0});Uv.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var E0e=ia(),EMr=Sp(),g0t=Qw(),SMr=Ep(),wMr=bMr(u8());function y0t(e){return(t,r,n,i,s,a,o)=>{t.push(e),(0,EMr.parseRangeArguments)(t,r,n,o),(0,E0e.parseSelectedLabelsArguments)(t,i),(0,SMr.parseFilterArgument)(t,s),(0,g0t.parseGroupByArguments)(t,a)}}Uv.createMRangeSelectedLabelsGroupByTransformArguments=y0t;Uv.default={IS_READ_ONLY:!0,parseCommand:y0t("TS.MRANGE"),transformReply:{2:wMr.default.transformReply[2],3(e){return(0,E0e.resp3MapToValue)(e,([t,r,n,i])=>({labels:t,sources:(0,g0t.extractResp3MRangeSources)(n),samples:E0e.transformSamplesReply[3](i)}))}}}});var w0e=b(qk=>{"use strict";Object.defineProperty(qk,"__esModule",{value:!0});qk.createMRangeWithLabelsGroupByTransformArguments=void 0;var Uk=ia(),IMr=Sp(),_0t=Qw(),xMr=Ep();function A0t(e){return(t,r,n,i,s,a)=>{t.push(e),(0,IMr.parseRangeArguments)(t,r,n,a),t.push("WITHLABELS"),(0,xMr.parseFilterArgument)(t,i),(0,_0t.parseGroupByArguments)(t,s)}}qk.createMRangeWithLabelsGroupByTransformArguments=A0t;qk.default={IS_READ_ONLY:!0,parseCommand:A0t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,Uk.resp2MapToValue)(e,([n,i,s])=>{let a=(0,Uk.transformRESP2LabelsWithSources)(i);return{labels:a.labels,sources:a.sources,samples:Uk.transformSamplesReply[2](s)}},r)},3(e){return(0,Uk.resp3MapToValue)(e,([t,r,n,i])=>({labels:t,sources:(0,_0t.extractResp3MRangeSources)(n),samples:Uk.transformSamplesReply[3](i)}))}}}});var I0e=b(jk=>{"use strict";Object.defineProperty(jk,"__esModule",{value:!0});jk.createTransformMRangeWithLabelsArguments=void 0;var c8=ia(),CMr=Sp(),TMr=Ep();function v0t(e){return(t,r,n,i,s)=>{t.push(e),(0,CMr.parseRangeArguments)(t,r,n,s),t.push("WITHLABELS"),(0,TMr.parseFilterArgument)(t,i)}}jk.createTransformMRangeWithLabelsArguments=v0t;jk.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:v0t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,c8.resp2MapToValue)(e,([n,i,s])=>{let a=i,o=Object.create(null);for(let u of a){let[c,l]=u,d=c;o[d.toString()]=l}return{labels:o,samples:c8.transformSamplesReply[2](s)}},r)},3(e){return(0,c8.resp3MapToValue)(e,([t,r,n])=>({labels:t,samples:c8.transformSamplesReply[3](n)}))}}}});var x0e=b(Hk=>{"use strict";Object.defineProperty(Hk,"__esModule",{value:!0});Hk.createTransformMRangeArguments=void 0;var l8=ia(),NMr=Sp(),RMr=Ep();function b0t(e){return(t,r,n,i,s)=>{t.push(e),(0,NMr.parseRangeArguments)(t,r,n,s),(0,RMr.parseFilterArgument)(t,i)}}Hk.createTransformMRangeArguments=b0t;Hk.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:b0t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,l8.resp2MapToValue)(e,([n,i,s])=>l8.transformSamplesReply[2](s),r)},3(e){return(0,l8.resp3MapToValue)(e,([t,r,n])=>l8.transformSamplesReply[3](n))}}}});var E0t=b(Dm=>{"use strict";var DMr=Dm&&Dm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kMr=Dm&&Dm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),OMr=Dm&&Dm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&DMr(t,e,r);return kMr(t,e),t};Object.defineProperty(Dm,"__esModule",{value:!0});var C0e=OMr(Qw());Dm.default={IS_READ_ONLY:C0e.default.IS_READ_ONLY,parseCommand:(0,C0e.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:C0e.default.transformReply}});var S0t=b(km=>{"use strict";var PMr=km&&km.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),MMr=km&&km.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),LMr=km&&km.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&PMr(t,e,r);return MMr(t,e),t};Object.defineProperty(km,"__esModule",{value:!0});var T0e=LMr(S0e());km.default={IS_READ_ONLY:T0e.default.IS_READ_ONLY,parseCommand:(0,T0e.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:T0e.default.transformReply}});var w0t=b(Om=>{"use strict";var BMr=Om&&Om.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),$Mr=Om&&Om.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),FMr=Om&&Om.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&BMr(t,e,r);return $Mr(t,e),t};Object.defineProperty(Om,"__esModule",{value:!0});var N0e=FMr(u8());Om.default={IS_READ_ONLY:N0e.default.IS_READ_ONLY,parseCommand:(0,N0e.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:N0e.default.transformReply}});var I0t=b(Pm=>{"use strict";var UMr=Pm&&Pm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),qMr=Pm&&Pm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),jMr=Pm&&Pm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&UMr(t,e,r);return qMr(t,e),t};Object.defineProperty(Pm,"__esModule",{value:!0});var R0e=jMr(w0e());Pm.default={IS_READ_ONLY:R0e.default.IS_READ_ONLY,parseCommand:(0,R0e.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:R0e.default.transformReply}});var x0t=b(Mm=>{"use strict";var HMr=Mm&&Mm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),KMr=Mm&&Mm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),VMr=Mm&&Mm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&HMr(t,e,r);return KMr(t,e),t};Object.defineProperty(Mm,"__esModule",{value:!0});var d8=VMr(I0e());Mm.default={NOT_KEYED_COMMAND:d8.default.NOT_KEYED_COMMAND,IS_READ_ONLY:d8.default.IS_READ_ONLY,parseCommand:(0,d8.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:d8.default.transformReply}});var C0t=b(Lm=>{"use strict";var zMr=Lm&&Lm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),QMr=Lm&&Lm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),GMr=Lm&&Lm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&zMr(t,e,r);return QMr(t,e),t};Object.defineProperty(Lm,"__esModule",{value:!0});var f8=GMr(x0e());Lm.default={NOT_KEYED_COMMAND:f8.default.NOT_KEYED_COMMAND,IS_READ_ONLY:f8.default.IS_READ_ONLY,parseCommand:(0,f8.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:f8.default.transformReply}});var T0t=b(D0e=>{"use strict";Object.defineProperty(D0e,"__esModule",{value:!0});D0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("TS.QUERYINDEX"),e.pushVariadic(t)},transformReply:{2:void 0,3:void 0}}});var N0t=b(Bm=>{"use strict";var YMr=Bm&&Bm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),WMr=Bm&&Bm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),XMr=Bm&&Bm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&YMr(t,e,r);return WMr(t,e),t};Object.defineProperty(Bm,"__esModule",{value:!0});var k0e=XMr(Sp());Bm.default={IS_READ_ONLY:k0e.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TS.REVRANGE"),(0,k0e.transformRangeArguments)(...e)},transformReply:k0e.default.transformReply}});var agt=b(wp=>{"use strict";var JMr=wp&&wp.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ZMr=wp&&wp.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&JMr(t,e,r)},pn=wp&&wp.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wp,"__esModule",{value:!0});var R0t=pn(Qmt()),D0t=pn(Gmt()),k0t=pn(Ymt()),O0t=pn(l0e()),P0t=pn(Xmt()),M0t=pn(Zmt()),L0t=pn(e0t()),B0t=pn(t0t()),$0t=pn(d0e()),F0t=pn(r0t()),U0t=pn(y0e()),q0t=pn(n0t()),j0t=pn(c0t()),H0t=pn(v0e()),K0t=pn(Ep()),V0t=pn(Qw()),z0t=pn(S0e()),Q0t=pn(u8()),G0t=pn(w0e()),Y0t=pn(I0e()),W0t=pn(x0e()),X0t=pn(E0t()),J0t=pn(S0t()),Z0t=pn(w0t()),egt=pn(I0t()),tgt=pn(x0t()),rgt=pn(C0t()),ngt=pn(T0t()),igt=pn(Sp()),sgt=pn(N0t());ZMr(ia(),wp);wp.default={ADD:R0t.default,add:R0t.default,ALTER:D0t.default,alter:D0t.default,CREATE:k0t.default,create:k0t.default,CREATERULE:O0t.default,createRule:O0t.default,DECRBY:P0t.default,decrBy:P0t.default,DEL:M0t.default,del:M0t.default,DELETERULE:L0t.default,deleteRule:L0t.default,GET:B0t.default,get:B0t.default,INCRBY:$0t.default,incrBy:$0t.default,INFO_DEBUG:F0t.default,infoDebug:F0t.default,INFO:U0t.default,info:U0t.default,MADD:q0t.default,mAdd:q0t.default,MGET_SELECTED_LABELS:j0t.default,mGetSelectedLabels:j0t.default,MGET_WITHLABELS:H0t.default,mGetWithLabels:H0t.default,MGET:K0t.default,mGet:K0t.default,MRANGE_GROUPBY:V0t.default,mRangeGroupBy:V0t.default,MRANGE_SELECTED_LABELS_GROUPBY:z0t.default,mRangeSelectedLabelsGroupBy:z0t.default,MRANGE_SELECTED_LABELS:Q0t.default,mRangeSelectedLabels:Q0t.default,MRANGE_WITHLABELS_GROUPBY:G0t.default,mRangeWithLabelsGroupBy:G0t.default,MRANGE_WITHLABELS:Y0t.default,mRangeWithLabels:Y0t.default,MRANGE:W0t.default,mRange:W0t.default,MREVRANGE_GROUPBY:X0t.default,mRevRangeGroupBy:X0t.default,MREVRANGE_SELECTED_LABELS_GROUPBY:J0t.default,mRevRangeSelectedLabelsGroupBy:J0t.default,MREVRANGE_SELECTED_LABELS:Z0t.default,mRevRangeSelectedLabels:Z0t.default,MREVRANGE_WITHLABELS_GROUPBY:egt.default,mRevRangeWithLabelsGroupBy:egt.default,MREVRANGE_WITHLABELS:tgt.default,mRevRangeWithLabels:tgt.default,MREVRANGE:rgt.default,mRevRange:rgt.default,QUERYINDEX:ngt.default,queryIndex:ngt.default,RANGE:igt.default,range:igt.default,REVRANGE:sgt.default,revRange:sgt.default}});var P0e=b(po=>{"use strict";var eLr=po&&po.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(po,"__esModule",{value:!0});po.TIME_SERIES_REDUCERS=po.TIME_SERIES_BUCKET_TIMESTAMP=po.TIME_SERIES_AGGREGATION_TYPE=po.TIME_SERIES_DUPLICATE_POLICIES=po.TIME_SERIES_ENCODING=po.default=void 0;var O0e=agt();Object.defineProperty(po,"default",{enumerable:!0,get:function(){return eLr(O0e).default}});Object.defineProperty(po,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return O0e.TIME_SERIES_ENCODING}});Object.defineProperty(po,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return O0e.TIME_SERIES_DUPLICATE_POLICIES}});var tLr=l0e();Object.defineProperty(po,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return tLr.TIME_SERIES_AGGREGATION_TYPE}});var rLr=Sp();Object.defineProperty(po,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return rLr.TIME_SERIES_BUCKET_TIMESTAMP}});var nLr=Qw();Object.defineProperty(po,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return nLr.TIME_SERIES_REDUCERS}})});var ogt=b(ns=>{"use strict";var iLr=ns&&ns.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Kk=ns&&ns.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&iLr(t,e,r)},p8=ns&&ns.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ns,"__esModule",{value:!0});ns.createSentinel=ns.createCluster=ns.createClientPool=ns.createClient=void 0;var h8=fk(),sLr=p8(tme()),aLr=p8(Cme()),oLr=p8(s0e()),uLr=p8(P0e());Kk(fk(),ns);Kk(tme(),ns);Kk(Cme(),ns);Kk(s0e(),ns);Kk(P0e(),ns);var m8={...sLr.default,json:aLr.default,ft:oLr.default,ts:uLr.default};function cLr(e){return(0,h8.createClient)({...e,modules:{...m8,...e?.modules}})}ns.createClient=cLr;function lLr(e,t){return(0,h8.createClientPool)({...e,modules:{...m8,...e?.modules}},t)}ns.createClientPool=lLr;function dLr(e){return(0,h8.createCluster)({...e,modules:{...m8,...e?.modules}})}ns.createCluster=dLr;function fLr(e){return(0,h8.createSentinel)({...e,modules:{...m8,...e?.modules}})}ns.createSentinel=fLr});var _8={};ys(_8,{closeLocalRedisConnection:()=>gLr,getLocalRedisCaches:()=>hLr,getLocalRedisKey:()=>ugt,judgeLocalRedisValid:()=>mLr,setLocalRedisKey:()=>g8,setLocalRedisKeyWithExpiry:()=>pLr,updateLocalRedisCaches:()=>y8});async function Yw(){if(Fi)return Fi;let e=L.localRedisUrl;try{x("info","[local-redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:t}=await Promise.resolve().then(()=>Se(ogt(),1));return Fi=t({url:e,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),Fi.on("error",r=>{x("error","[local-redis] \u8FDE\u63A5\u9519\u8BEF"),L.localRedisValid=!1}),Fi.on("connect",()=>{x("info","[local-redis] \u8FDE\u63A5\u6210\u529F")}),await Fi.connect(),L.localRedisValid=!0,x("info","[local-redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),Fi}catch(t){return x("error","[local-redis] \u521D\u59CB\u5316\u5931\u8D25:",t.message),L.localRedisValid=!1,null}}async function Ww(){if(!Fi)return!1;try{return await Fi.ping()==="PONG"}catch(e){return x("error","[local-redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),L.localRedisValid=!1,!1}}async function ugt(e){try{if(await Ww()||await Yw(),!Fi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await Fi.get(e)}catch(t){return x("error","[local-redis] GET \u8BF7\u6C42\u5931\u8D25:",t.message),null}}async function g8(e,t){let r=cw(e,t),n=Rn(r);if(L.lastHashes[e]===n)return x("info",`[local-redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await Ww()||await Yw(),!Fi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await Fi.set(e,r);return L.lastHashes[e]=n,x("info",`[local-redis] \u952E ${e} \u66F4\u65B0\u6210\u529F`),{result:i}}catch(i){return x("error","[local-redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function pLr(e,t,r){let n=cw(e,t),i=Rn(n);if(L.lastHashes[e]===i)return x("info",`[local-redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await Ww()||await Yw(),!Fi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await Fi.setEx(e,r,n);return L.lastHashes[e]=i,x("info",`[local-redis] \u952E ${e} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:s}}catch(s){return x("error","[local-redis] SETEX \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function hLr(){if(!L.localCacheInitialized)try{if(x("info","getLocalRedisCaches start."),await Ww()||await Yw(),!Fi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],t=await Promise.all(e.map(n=>ugt(n)));L.animes=t[0]?JSON.parse(t[0]):L.animes,L.episodeIds=t[1]?JSON.parse(t[1]):L.episodeIds,L.episodeNum=t[2]?JSON.parse(t[2]):L.episodeNum,L.reqRecords=t[3]?JSON.parse(t[3]):L.reqRecords;let r=t[4]?JSON.parse(t[4]):null;r&&typeof r=="object"&&(L.lastSelectMap=new Map(Object.entries(r)),x("info",`Restored lastSelectMap from Local Redis with ${L.lastSelectMap.size} entries`)),L.todayReqNum=t[5]?parseInt(t[5],10):L.todayReqNum,L.lastHashes.animes=Rn(JSON.stringify(L.animes)),L.lastHashes.episodeIds=Rn(JSON.stringify(L.episodeIds)),L.lastHashes.episodeNum=Rn(JSON.stringify(L.episodeNum)),L.lastHashes.reqRecords=Rn(JSON.stringify(L.reqRecords)),L.lastHashes.lastSelectMap=Rn(JSON.stringify(Object.fromEntries(L.lastSelectMap))),L.lastHashes.todayReqNum=Rn(JSON.stringify(L.todayReqNum)),L.localCacheInitialized=!0,x("info","getLocalRedisCaches completed successfully.")}catch(e){x("error",`getLocalRedisCaches failed: ${e.message}`,e.stack),L.localCacheInitialized=!0}}async function y8(){try{if(x("info","updateLocalRedisCaches start."),await Ww()||await Yw(),!Fi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let e=[],t=[{key:"animes",value:L.animes},{key:"episodeIds",value:L.episodeIds},{key:"episodeNum",value:L.episodeNum},{key:"reqRecords",value:L.reqRecords},{key:"lastSelectMap",value:L.lastSelectMap},{key:"todayReqNum",value:L.todayReqNum}];for(let{key:r,value:n}of t){let i=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),s=Rn(i);s!==L.lastHashes[r]&&e.push({key:r,value:n,hash:s})}if(e.length>0){x("info",`Updating ${e.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let r=e.map(async({key:a,value:o})=>g8(a,o)),n=await Promise.all(r),i=0,s=0;n.forEach((a,o)=>{a&&a.result==="OK"?i++:(s++,x("warn",`Failed to update Local Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),s===0?(e.forEach(({key:a,hash:o})=>{L.lastHashes[a]=o}),x("info",`Local Redis update completed successfully: ${i} keys updated`)):x("warn",`Local Redis update partially failed: ${i} succeeded, ${s} failed`)}else x("info","No changes detected, skipping Local Redis update.")}catch(e){x("error",`updateLocalRedisCaches failed: ${e.message}`,e.stack),x("error",`Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function mLr(e){if(!L.localRedisValid&&L.localRedisUrl&&e!=="/favicon.ico"&&e!=="/robots.txt")try{await Ww()||await Yw(),Fi&&await Fi.ping()==="PONG"&&(L.localRedisValid=!0)}catch(t){x("error","[local-redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),L.localRedisValid=!1}}async function gLr(){if(Fi)try{await Fi.quit(),Fi=null,L.localRedisValid=!1,x("info","[local-redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(e){x("error","[local-redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",e.message)}}var Fi,Vk=ve(()=>{Ot();Ct();vs();Fi=null});async function zk(e,t={}){let n=`https://api.tmdb.org/3/${e}`,i=L.makeProxyUrl(n);try{let s=await Ie(i,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:t.signal});return s.status!=200?null:s}catch(s){if(s.name==="AbortError")throw s;return x("error","[TMDB] Api error:",{message:s.message,name:s.name,stack:s.stack}),null}}async function v8(e,t="multi",r={}){let{page:n=1,maxPages:i=3,signal:s=null}=r;if(r.page!==void 0){let o=`search/${t}?api_key=${L.tmdbApiKey}&query=${encodeURIComponent(e)}&language=zh-CN&page=${n}`;return await zk(o,{signal:s})}let a=[];for(let o=1;o<=i;o++){if(s&&s.aborted)throw new DOMException("Aborted","AbortError");let u=`search/${t}?api_key=${L.tmdbApiKey}&query=${encodeURIComponent(e)}&language=zh-CN&page=${o}`,c=await zk(u,{signal:s});if(!c||!c.data)break;let l=typeof c.data=="string"?JSON.parse(c.data):c.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return x("info",`[TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${i}\u9875\uFF09`),{data:{results:a},status:200}}async function yLr(e,t,r={}){let n=`${e}/${t}?api_key=${L.tmdbApiKey}&language=ja-JP`;return await zk(n,r)}async function lgt(e,t,r={}){let n=`${e}/${t}/external_ids?api_key=${L.tmdbApiKey}`;return await zk(n,r)}async function _Lr(e,t,r={}){let n=`${e}/${t}/alternative_titles?api_key=${L.tmdbApiKey}`;return await zk(n,r)}function ALr(e,t,r=""){let n=e?.data?.results||e?.data?.titles||[];if(!n.length)return null;let i=(r||"").toLowerCase().trim(),s=o=>o.title||o.name||"",a=[o=>i&&s(o).toLowerCase().trim()===i,...["CN","TW","HK","SG"].map(o=>u=>(u.iso_3166_1||u.iso_639_1)===o&&!ay(s(u))),o=>!ay(s(o))];for(let o of a){let u=n.find(o);if(u){let c=s(u);return x("info",`[TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${c}`),c}}return null}async function vLr(e,t,r=""){let n=e.name||e.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(ay(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;x("info",`[TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let s=e.media_type||(e.name?"tv":"movie");try{if(t&&t.aborted)throw new DOMException("Aborted","AbortError");let a=await _Lr(s,e.id,{signal:t});if(t&&t.aborted)throw new DOMException("Aborted","AbortError");let o=ALr(a,s,r);return o?(x("info",`[TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(x("info",`[TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return x("error",`[TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function Xw(e,t=null,r="Unknown"){let n=hgt(e);if(n!==e&&x("info",`[TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${e}" -> "${n}"`),L.useBangumiData){let a=Ld(n,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],u=o.titles.find(l=>l&&l.includes(n))||o.titles[1]||o.title,c=o.title;return x("info",`[TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${c}, \u522B\u540D=${u}`),{title:c,cnAlias:u}}}if(!L.tmdbApiKey)return x("info","[TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let i=A8.get(n);if(i)x("info",`[TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let a=new AbortController;i={controller:a,refCount:0,promise:(async()=>{try{let u=a.signal,c=N=>{let T=N.genre_ids||[],k=N.genres||[],O=T.length>0?T:k.map(Q=>Q.id),P=N.original_language||"";return O.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:P==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${P}, genres: ${O.join(",")})`}},l=N=>{if(!N||N.length===0)return{hasValid:!1,validCount:0,totalCount:0,details:"\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"};let T=0,k=[];for(let O of N){let P=c(O);if(P.isValid){T++;let $=O.name||O.title||"\u672A\u77E5";k.push(`${$}(${P.reason})`)}}return{hasValid:T>0,validCount:T,totalCount:N.length,details:T>0?`\u627E\u5230${T}\u4E2A\u7B26\u5408\u6761\u4EF6\u7684\u5185\u5BB9: ${k.slice(0,3).join(", ")}${T>3?"...":""}`:`\u6240\u6709${N.length}\u4E2A\u7ED3\u679C\u5747\u4E0D\u7B26\u5408\u6761\u4EF6(\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED)`}},d=(N,T)=>{let k=K=>K.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),O=k(N),P=k(T);if(O===P)return 1;let $=O.length=P.length?O:P;if(Q.includes($)&&$.length>0)return .6+$.length/Q.length*.3;let j=N.length>T.length?N:T,z=N.length>T.length?T:N;if(j.length===0)return 1;let X=(K,Z)=>{K=K.toLowerCase(),Z=Z.toLowerCase();let Y=[];for(let ie=0;ie<=K.length;ie++){let ue=ie;for(let he=0;he<=Z.length;he++)if(ie===0)Y[he]=he;else if(he>0){let ye=Y[he-1];K.charAt(ie-1)!==Z.charAt(he-1)&&(ye=Math.min(Math.min(ye,ue),Y[he])+1),Y[he-1]=ue,ue=ye}ie>0&&(Y[Z.length]=ue)}return Y[Z.length]};return(j.length-X(j,z))/j.length};if(x("info",`[TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await v8(n,"multi",{signal:u});if(!f||!f.data)return x("info","[TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let p=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!p.results||p.results.length===0)return x("info","[TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let h=l(p.results);if(!h.hasValid)return x("info",`[TMDB] \u7C7B\u578B\u5224\u65AD\u672A\u901A\u8FC7,\u8DF3\u8FC7\u540E\u7EED\u641C\u7D22: ${h.details}`),null;x("info",`[TMDB] \u7C7B\u578B\u5224\u65AD\u901A\u8FC7: ${h.details}`);let m=null,y=-1,g=null,v=0,A=5,_=!1;for(let N of p.results){let T=N.name||N.title||"";if(!T)continue;let k=d(n,T),O=N.original_name||N.original_title||"",P=O?d(n,O):0,$=Math.max(k,P);if($===1&&!_){_=!0,x("info",`[TMDB] \u5339\u914D\u68C0\u67E5 "${T}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),$>y&&(y=$,m=N,g=T);continue}let Q,j,z=T.toLowerCase().trim()===n.toLowerCase().trim();if(_||z)Q=T,j=$,_&&z?x("info",`[TMDB] \u5339\u914D\u68C0\u67E5 "${T}" - \u76F8\u4F3C\u5EA6: ${(j*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):x("info",`[TMDB] \u5339\u914D\u68C0\u67E5 "${T}" - \u76F8\u4F3C\u5EA6: ${(j*100).toFixed(2)}%`);else{if(vy&&(y=j,m=N,g=Q)}if(!m||y<.2)return x("info",`[TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${m?(y*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;x("info",`[TMDB] TMDB\u6700\u4F73\u5339\u914D: ${g}, \u76F8\u4F3C\u5EA6: ${(y*100).toFixed(2)}%`);let S=m.media_type||(m.name?"tv":"movie"),C=await yLr(S,m.id,{signal:u}),I;if(!C||!C.data)I=m.name||m.title,x("info",`[TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${I}`);else{let N=typeof C.data=="string"?JSON.parse(C.data):C.data;I=N.original_name||N.original_title||N.name||N.title,x("info",`[TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${I}`)}return{title:I,cnAlias:g}}catch(u){return u.name==="AbortError"?(x("info",`[TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(x("error","[TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{A8.delete(n)})},A8.set(n,i),x("info",`[TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}i.refCount++;let s=()=>{A8.get(n)===i&&(i.refCount--,i.refCount<=0&&(x("info",`[TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),i.controller.abort()))};if(t){if(t.aborted)return s(),x("info",`[TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;t.addEventListener("abort",s,{once:!0})}try{let a=new Promise((o,u)=>{t&&t.addEventListener("abort",()=>u(new DOMException("Aborted","AbortError")),{once:!0})});return await Promise.race([i.promise,a])}catch(a){return a.name==="AbortError"?(x("info",`[TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(x("error",`[TMDB] \u641C\u7D22\u5F02\u5E38: ${a.message}`),null)}}async function dgt(e,t=null,r=null){if(!ay(e))return e;if(L.useBangumiData){let s=hgt(e),a=Ld(s,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],u=o.titles.find(c=>c&&!ay(c))||o.titles[1];if(u&&!ay(u))return x("info",`[TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${e} -> ${u}`),u}}let n=t!=null,i=n?"tv":"movie";try{let s=await v8(e,i);if(!s.data.results||s.data.results.length===0)return x("info","[TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),e;let o=s.data.results.find(c=>{let l=n?c.name:c.title;return l&&!ay(l)})||s.data.results[0],u=n?o.name:o.title;return u?(x("info",`\u539F\u6807\u9898: ${e} -> \u4E2D\u6587\u6807\u9898: ${u}`),u):e}catch(s){return x("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",s),e}}function pgt(e){let t=e.match(fgt);return t?t.index:e.length}function hgt(e){let t=pgt(e);return t{let s=i.org_title||i.title||"";return s.substring(0,pgt(s))}),n="";if(r.length>0){let i=r.concat().sort(),s=i[0],a=i[i.length-1],o=0;for(;o1&&x("info",`[TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${n}"`);for(let i of e){let s=i.title||"";if(i.isLocalPriority||s.includes(t)){i._displayTitle=i._displayTitle||s;continue}if(n&&n.length>1&&s.startsWith(n)){let a=s.substring(n.length).trim();i._displayTitle=a?`${t}${a.match(/^[~~::]/)?"":" "}${a}`:t,x("info",`[TMDB] [LCP\u6A21\u5F0F] "${s}" -> "${i._displayTitle}"`)}else{let a=s.match(cgt);if(a){let o=s.substring(0,a.index).trim(),u=s.substring(a.index);if(o&&fgt.test(o)){let c=u.trim().match(cgt),l=c?u.trim().substring(c.index):"";i._displayTitle=`${o} ${t}${l}`,x("info",`[TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${s}" -> "${i._displayTitle}"`)}else i._displayTitle=t+u,x("info",`[TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${s}" -> "${i._displayTitle}"`)}else i._displayTitle=t,x("info",`[TMDB] [\u5168\u66FF\u6A21\u5F0F] "${s}" -> "${i._displayTitle}"`)}}}var A8,fgt,cgt,Zw=ve(()=>{Ot();Ct();yr();Md();uy();A8=new Map;fgt=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|劇場版|续[篇集]|外传)(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,cgt=/[ ::~~]/});function Pt(e,...t){typeof t[0]=="string"&&t[0].includes("[Merge-Check]")&&!bLr||x(e,...t)}function wLr(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $0e(e){if(!e)return"";let t=e,r=t.toUpperCase();for(let n of SLr)if(n.seriesKeywords.every(s=>r.includes(s.toUpperCase()))){let s=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let u=new RegExp(wLr(o),"gi");u.test(t)&&(t=t.replace(u,` ${a.targetStandard} `),s=!0)});!s&&n.defaultStandard&&(t+=` ${n.defaultStandard} `)}return t}function Rc(e){if(!e)return"Unspecified";let t=e.toLowerCase();return xe.Lang.CN.test(t)?"CN":xe.Lang.JP.test(t)?"JP":"Unspecified"}function py(e){if(!e)return"";let t=ln(e);t=t.replace(xe.Clean.NA_TAG,""),t=t.replace(xe.Season.PART_NORM,"part $1"),t=t.replace(xe.Season.PART_NORM_2,"part $1"),t=t.replace(xe.Season.FINAL,"\u6700\u7EC8\u5B63"),t=t.replace(xe.Season.NORM,"\u7B2C$1\u5B63");let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"};return t=t.replace(xe.Season.CN,(n,i)=>`\u7B2C${r[i]}\u5B63`),t=t.replace(xe.Season.ROMAN,(n,i,s,a)=>`${i}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[s]}\u5B63${a}`),t=t.replace(xe.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),t=t.replace(xe.Lang.JP_DUB_VER,""),t=t.replace(xe.Clean.SOURCE_TAG,""),t=t.replace(xe.Clean.REGION_LIMIT,""),t=t.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),t=t.replace(xe.Clean.PUNCTUATION," "),t=t.replace(/{{DOT}}/g,"."),t.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function Cl(e){if(!e)return"";let t=$0e(e);t=ln(t);let r=t.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(t=t.replace(r[0],n+" "))}return t=t.replace(xe.Clean.SOURCE_TAG,""),t=t.replace(xe.Clean.FROM_SUFFIX,""),t=t.replace(xe.Clean.NA_TAG,""),t=t.replace(xe.Clean.PARENTHESES_CONTENT,""),t=t.replace(xe.Season.INFO_STRONG,""),t=t.replace(xe.Season.PART_INFO_STRONG,""),t=t.replace(xe.Clean.MOVIE_KEYWORDS,""),t=t.replace(xe.Lang.KEYWORDS_STRONG,""),t=t.replace(xe.Clean.LONE_VER_CHAR,""),t=t.replace(xe.Clean.NON_ALPHANUM_CN,""),t.toLowerCase()}function b8(e){if(!e)return"";let t=ln(e);return t=t.replace(xe.Episode.SUFFIX_DIGIT,""),t=t.replace(xe.Episode.FILE_NOISE,""),t=t.replace(xe.Episode.SEASON_PREFIX," "),t=t.replace(xe.Episode.CLEAN_SMART," "),t=t.replace(xe.Clean.SOURCE_TAG,""),t=t.replace(xe.Lang.CN_STD,"\u4E2D\u6587"),t=t.replace(xe.Lang.JP_STD,"\u65E5\u6587"),t=t.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),t=t.replace(xe.Episode.PUNCTUATION," "),t=t.replace(/{{DOT}}/g,"."),t.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function mgt(e){return e?e.replace(xe.Clean.PARENTHESES_CONTENT,"").trim():""}function Igt(e){if(!e)return"";let t=String(e).split($m)[0].trim();if(t.startsWith("//"))return"https:"+t;let r=t.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),i=r[2];return n==="http"||n==="https"?t:/^https?:\/\//i.test(i)?i:i.startsWith("//")?"https:"+i:i}return t}function ggt(e){if(!e||e==="N/A")return{year:null,month:null};let t=new Date(e),r=t.getTime();if(isNaN(r))return{year:null,month:null};let n=t.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:t.getMonth()+1}}function ILr(e,t){let r=e.length,n=t.length;if(r===0)return n;if(n===0)return r;let i=new Array(n+1),s=new Array(n+1);for(let a=0;a<=n;a++)i[a]=a;for(let a=1;a<=r;a++){s[0]=a;let o=e.charCodeAt(a-1);for(let c=1;c<=n;c++){let l=o===t.charCodeAt(c-1)?0:1;s[c]=Math.min(s[c-1]+1,i[c]+1,i[c-1]+l)}let u=i;i=s,s=u}return i[n]}function xLr(e,t){if(!e||!t)return 0;let r=new Set(e.replace(xe.Clean.WHITESPACE,"")),n=new Set(t.replace(xe.Clean.WHITESPACE,"")),i=r.size,s=n.size;if(i===0&&s===0)return 1;if(i===0||s===0)return 0;let a=0,[o,u]=i.5)return .8+_*.2}let u=ILr(r,n),c=a===0?1:1-u/a,l=new Set(r.replace(xe.Clean.WHITESPACE,"")),d=new Set(n.replace(xe.Clean.WHITESPACE,"")),f=l.size,p=d.size;if(f===0||p===0)return 0;let h=0,[m,y]=f2&&(v=h/A,v>.6&&A/Math.max(f,p)<.6&&(v-=.25)),Math.max(c,g,v)}function CLr(e,t,r=!0){if(!e||!t||Cl(e)===Cl(t))return!1;let n=d=>{if(!d)return"";let f=ln(d);return f=f.replace(xe.Clean.META_SUFFIX,"").replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").replace(xe.Clean.WHITESPACE," "),f.trim().toLowerCase()},i=n(e),s=n(t);if(i===s)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let h of f){let m=d.indexOf(h);if(m!==-1)return d.substring(m).trim()}let p=d.split(xe.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(i),u=a(s),[c,l]=i.length1||f.length>2)return!0}}return!!(o&&u&&xLr(o,u)<.2)}function zu(e,t=""){e=$0e(e);let r=new Set,n=py(e),i=py(t||""),s=n.replace(xe.Season.PART_ANY,""),a=s.match(xe.Season.CN_STRUCTURE);if(a){let h=a[1];h==="\u627F"?r.add("S2"):h==="\u8F6C"?r.add("S3"):h==="\u7ED3"&&r.add("S4")}ELr.forEach(h=>{let y=(h.useCleaned?s:n).match(h.regex);y&&(h.prefix?r.add(`${h.prefix}${parseInt(y[1])}`):r.add(h.val))});let o=!1;for(let h of w8)if(h.regex.test(s)){r.add(h.val),o=!0;break}if(!o){let h=s.match(xe.Season.SUFFIX_AMBIGUOUS);if(h){r.add("AMBIGUOUS");let m=h[1].toUpperCase();m==="II"&&r.add("S2"),m==="III"&&r.add("S3"),m==="IV"&&r.add("S4")}}(xe.Season.SUFFIX_SEQUEL.test(n)||i.includes("\u7EED\u7BC7"))&&r.add("SEQUEL"),(i.includes("\u5267\u573A\u7248")||i.includes("movie")||i.includes("film")||i.includes("\u7535\u5F71"))&&r.add("MOVIE"),/\b(ova|oad)\b/i.test(i)&&r.add("OVA"),/\b(sp|special)\b/i.test(i)&&r.add("SP");let u={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[h,m]of Object.entries(u))n.includes(`\u7B2C${h}\u5B63`)&&r.add(`S${m}`);let c=Array.from(r).some(h=>h.startsWith("S")),l=Array.from(r).some(h=>h.startsWith("P")),d=r.has("AMBIGUOUS"),f=r.has("SEQUEL"),p=r.has("MOVIE")||r.has("OVA")||r.has("SP");return l&&!c&&r.add("S1"),!c&&!l&&!d&&!f&&!p&&r.add("S1"),r}function Nc(e,t=""){e=$0e(e);let r=zu(e,t),n=null;for(let i of r)if(i.startsWith("S")){let s=parseInt(i.substring(1));isNaN(s)||(n===null||s>n)&&(n=s)}return n}function jv(e,t){let r=(e+" "+(t||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),i=r.includes("\u7535\u89C6\u5267");return n&&!i?"MOVIE":i&&!n?"TV":null}function eI(e,t,r){if(r&&xe.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(e+" "+(t||"")).toLowerCase();return xe.Category.ANIME_KW.test(n)?"ANIME":xe.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function xgt(e,t,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let s=u=>u?ln(u).replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",a=s(e),o=s(t);if(xe.Clean.SPACE_STRUCTURE.test(a)&&xe.Clean.SPACE_STRUCTURE.test(o)){let u=d=>{let f=d.split(xe.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},c=u(a),l=u(o);return!(xe.Season.PURE_PART.test(c)||xe.Season.PURE_PART.test(l))}return!1}function TLr(e,t,r,n,i,s,a="",o=""){let u=eI(e,r,a),c=eI(t,n,o);if(u==="REAL"&&c==="ANIME"||u==="ANIME"&&c==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),p=(n||"").includes("2D"),h=!l&&!f,m=!d&&!p;if(!h&&m?/3[dD]/.test(t)?d=!0:/2[dD]/.test(t)&&(p=!0):!m&&h&&(/3[dD]/.test(e)?l=!0:/2[dD]/.test(e)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let v=jv(e,r),A=jv(t,n);return!v||!A||v===A||xgt(e,t,r,n)?!1:i>0&&s>0?Math.abs(i-s)>5:!0}function NLr(e,t,r,n){let i=zu(e,r),s=zu(t,n);if(i.size===0&&s.size===0)return!1;let a=l=>Array.from(l).some(d=>d.startsWith("S")&&parseInt(d.substring(1))>=2),o=l=>l.has("SEQUEL"),u=l=>l.has("AMBIGUOUS"),c=l=>l.has("S1");if(i.size>0&&s.size>0){if(u(i)&&c(s)||u(s)&&c(i))return!0;if(u(i)&&(a(s)||o(s))||u(s)&&(a(i)||o(i))||a(i)&&o(s)||a(s)&&o(i))return!1;for(let l of i)if(l.startsWith("S")){let d=s.has(l),f=Array.from(s).some(p=>p.startsWith("S"));if(!d&&f)return!0}return!1}return i.size!==s.size?!xgt(e,t,r,n):!1}function RLr(e,t,r,n){let i=zu(e,r),s=zu(t,n),a=Array.from(i).filter(u=>u.startsWith("S")),o=Array.from(s).filter(u=>u.startsWith("S"));return a.length>0&&o.length>0?a.some(u=>o.includes(u)):!1}function DLr(e,t,r=!1){if(!e.year||!t.year)return .05;let n=e.year-t.year;if(n===0){if(e.month&&t.month){let s=Math.abs(e.month-t.month);return s>2?0:s===0?.2:.1}return .1}let i=Math.abs(n);return r&&i<=10?0:i>1?-1:0}function kLr(e,t,r,n,i,s=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(i))return!0;if(s){let u=Math.min(t,r);return u>0&&e/u>.5?!0:!(e<2)}let a=Math.max(t,r);if(a===0)return!1;let o=e/a;return!(a>5&&o<.18)}function OLr(e){let t=new Map;if(!e||e.length<2)return t;let r=e.map(i=>{let s=i.animeTitle||"",a=py(s).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return{id:i.animeId,raw:s,clean:a}}),n=new Set(r.map(i=>i.clean));for(let i of r){let s=null;for(let a of w8)if(i.clean.match(a.regex)){s=i.clean.replace(a.regex,"").trim();break}if(!s){let a=i.clean.match(xe.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];i.clean.endsWith(o)&&(s=i.clean.substring(0,i.clean.length-o.length).trim())}}s&&s.length>1&&n.has(s)&&(t.set(String(i.id),s),Pt("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${i.raw}] \u4E3A\u7EED\u4F5C (Base: "${s}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return t}function PLr(e,t){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!e.links||!t.links||e.links.length===0||t.links.length===0)return r;let n=m=>m.filter(y=>{let g=(y.title||y.name||"").toLowerCase();return!xe.Episode.PV_CHECK.test(g)&&!xe.Episode.SPECIAL_CHECK.test(g)}).length,i=n(e.links),s=n(t.links);i>5&&s>5&&Math.min(i,s)/Math.max(i,s)<.4;let a=m=>m.map(y=>b8(y.title||y.name||"").replace(/\d+/g,"").trim()).filter(y=>y.length>1),o=a(e.links),u=a(t.links);if(o.length<3||u.length<3)return r;let c=Rc(o.join(" ")),l=Rc(u.join(" "));if(c!==l||c==="Unspecified")return r;let d=Math.min(o.length,u.length,5),f=0,p=0,h=[];for(let m=0;m.6?f++:v<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,Pt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${h.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,Pt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${h.join(", ")}`)),r}function MLr(e,t,r=new Set){if(!t||t.length===0)return[];let n=e.animeTitle||"",i=n.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),s=!!i.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(i),a=e.source==="hanjutv",o=n.includes("N/A")||a?{year:null,month:null}:ggt(e.startDate),u=e.episodeCount||(e.links?e.links.length:0),c=Rc(n),l=py(i),d=Cl(i),f=mgt(i),p=zu(n,e.typeDescription),h=Array.from(p).filter(I=>I.startsWith("S")),m=[{animeId:e.animeId,animeTitle:n},...t],y=OLr(m),g=y.has(String(e.animeId)),v=y.get(String(e.animeId)),A=r.has(e.animeId),_=(I,N)=>{Pt("info",`[Merge-Check] \u62D2\u7EDD: [${e.source}] ${n} vs [${I}] -> ${N}`)},E=[],S=0;for(let I of t){let N=I.animeTitle||"",T=r.has(I.animeId),k=A||T,O=I.source==="hanjutv",P=N.includes("N/A")||O?{year:null,month:null}:ggt(I.startDate),$=Rc(N),Q=N.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),j=!!Q.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(Q),z=s||j,X=I.episodeCount||(I.links?I.links.length:0);if(Q.includes("\u4E4B")){let J=Q.split("\u4E4B"),ee=py(J[0]);if(l===ee){_(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ee}")`);continue}}if(TLr(n,N,e.typeDescription,I.typeDescription,u,X,e.source,I.source)){let J=eI(n,e.typeDescription,e.source),ee=eI(N,I.typeDescription,I.source);_(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${J}/${jv(n,e.typeDescription)} [${e.typeDescription}] vs S:${ee}/${jv(N,I.typeDescription)} [${I.typeDescription}])`);continue}let K=o.year!==null&&P.year!==null,Z=CLr(n,N,K);if(y.has(String(I.animeId))){let J=y.get(String(I.animeId));if(d===Cl(J)&&!(xe.Season.SUFFIX_AMBIGUOUS.test(l)||w8.some(te=>te.regex.test(l)))){_(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${J}")`);continue}}if(g&&Cl(Q)===Cl(v)){_(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${v}")`);continue}if(!K&&Z){_(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ie=RLr(i,Q,e.typeDescription,I.typeDescription),ue=PLr(e,I),he=n.search(xe.Clean.MOVIE_KEYWORDS)!==-1,ye=N.search(xe.Clean.MOVIE_KEYWORDS)!==-1;if(he!==ye){let J=p,ee=zu(N,I.typeDescription),te=de=>Cl(de.replace(xe.Clean.MOVIE_KEYWORDS,"")),re=te(n),ce=te(N);if(qv(re,ce)>.9&&!J.has("SEQUEL")&&!ee.has("SEQUEL")){_(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${he?"Movie":"TV"}] vs [${ye?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let q=k?0:DLr(o,P,z);if(q===-1){let J=ie;if(ue.isStrongMatch&&(J=!0),k&&(J=!0),Z&&!k&&(J=!1),J&&o.year&&P.year&&Math.abs(o.year-P.year)>2&&!ue.isStrongMatch&&!k&&(J=!1),!J){_(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${o.year} vs S:${P.year}, IsDub:${z})`);continue}}if(!k&&NLr(i,Q,e.typeDescription,I.typeDescription))if(ue.isStrongMatch)Pt("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${n}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{_(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let B=[Q];I.aliases&&Array.isArray(I.aliases)&&I.aliases.forEach(J=>{let ee=J.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim();ee&&B.push(ee)});let ae=0,M=0;for(let J of B){let ee=qv(i,J);ee>ae&&(ae=ee);let te=mgt(J),re=qv(f,te);re>M&&(M=re)}let F=Math.max(ae,M),V=F;Z&&(F+=sa.TITLE_STRUCTURE_CONFLICT),q!==-1&&(F+=q);let H=c==="CN",G=$==="CN";if(H&&G?F+=sa.LANG_MATCH_CN:H!==G&&(F+=sa.LANG_MISMATCH),ue.isStrongMatch?(Pt("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${F.toFixed(2)}) -> ${Ip.SIMILARITY_STRONG}`),F=Math.max(F,Ip.SIMILARITY_STRONG)):ue.isStrongMismatch&&(_(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),F=0),FS&&(S=F),E.push({anime:I,score:F,lang:$,debugTitle:N}),Pt("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${F.toFixed(2)} (BestSoFar=${S.toFixed(2)})`)}if(E.length===0||S{if(I.score>=S-Ip.TIER_DEFAULT||I.lang==="CN"&&I.score>=S-Ip.TIER_CN)return!0;let N=zu(I.debugTitle,I.anime.typeDescription);if(Array.from(N).some(k=>k.startsWith("P"))&&I.score>=S-Ip.TIER_PART){let k=Array.from(N).filter(O=>O.startsWith("S"));if(h.length>0&&k.length>0){if(h.some(P=>k.includes(P)))return!0}else return!0}return!1});return C.sort((I,N)=>N.score-I.score),C.map(I=>I.anime)}function E8(e){if(!e)return null;let t=e.toLowerCase();return t.includes("opening")?"opening":t.includes("ending")?"ending":t.includes("interview")?"interview":t.includes("bloopers")?"Bloopers":null}function Tc(e,t=""){let r=!1,n=t;if(e){let h=e.match(xe.Episode.DANDAN_TAG);h&&(n=h[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&e){let h=e.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();(xe.Episode.SPECIAL_START.test(h)||xe.Episode.DANDAN_IGNORE.test(h))&&(r=!0)}let s=py(e||""),a=xe.Episode.MOVIE_CHECK.test(s),o=xe.Episode.PV_CHECK.test(s),u=null,c=null,l=E8(e),d=o||r||!!l||xe.Episode.SPECIAL_CHECK.test(s),f=s.match(xe.Episode.SEASON_MATCH);f&&(c=parseInt(f[1]));let p=s.match(xe.Episode.NUM_STRATEGY_A);if(p)u=parseFloat(p[2]);else{let h=s.match(xe.Episode.NUM_STRATEGY_B);if(h)u=parseFloat(h[1]);else{let m=s.match(xe.Episode.NUM_STRATEGY_C);m&&(u=parseFloat(m[1]))}}return{isMovie:a,num:u,isSpecial:d,isPV:o,season:c,isStrictSpecial:r}}function B0e(e,t,r=""){if(!e)return[];let i=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!t||i)return e.map((o,u)=>({link:o,originalIndex:u}));let s=[],a=[];if(e.forEach((o,u)=>{let c=o.title||o.name||"";t.test(c)?a.push(c):s.push({link:o,originalIndex:u})}),a.length>0){let o=r?`[${r}] `:"";Pt("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return s}function S8(e,t,r){if(!e||e.length<2||!t)return"";let n=l=>{if(!l||!r)return l||"";try{let d=ygt.get(r);if(!d){let f=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),ygt.set(r,d)}return l.replace(d,"").trim()}catch{return l}},i=n(t),s=i.match(xe.Clean.REDUNDANT_SEPARATOR);s&&(i=i.substring(0,s.index));let a=e.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let p=0;pf.length&&(f=m)}return f},u=o(a[0],a[1]);if(u.length<2)return"";for(let l=2;l=2&&i.startsWith(l)?l:""}return c.length>=2&&(xe.Clean.REDUNDANT_VALID_CHARS.test(c)||c.length>3)?(Pt("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${c}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),c):""}function LLr(e,t,r="Unspecified",n="Unspecified",i="",s="",a="",o=""){if(e.length===0||t.length===0)return 0;let u=S8(e,a,i),c=S8(t,o,s),l=(C,I)=>C?I&&C.includes(I)?C.replace(I,""):C:"",d=(C,I,N,T)=>{let k=C.link.title||"",O=l(k,T),P=Tc(O,I),$=Rc(O),Q=$!=="Unspecified"?$:N,j=Q==="Unspecified"&&/^(dandan|animeko)$/i.test(I)?"JP":Q,z=b8(O),X=j==="CN"?O.replace(xe.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:P,effLang:j,specialType:E8(O),cleanEpText:z,strictCnCore:X}},f=e.map(C=>d(C,i,r,u)),p=t.map(C=>d(C,s,n,c)),h=0,m=-9999,y=null,g=null;f.forEach(({info:C})=>{C.num!==null&&!C.isSpecial&&C.num%1===0&&(y=y===null?C.num:Math.min(y,C.num))}),p.forEach(({info:C})=>{C.num!==null&&!C.isSpecial&&C.num%1===0&&(g=g===null?C.num:Math.min(g,C.num))});let v=y!==null&&g!==null?y-g:null,A=15,_=v!==null?-v:0,E=Math.max(Math.min(-A,_-A),-Math.max(e.length,t.length)),S=Math.min(Math.max(A,_+A),Math.max(e.length,t.length));for(let C=E;C<=S;C++){let I=0,N=0,T=0,k=new Map,O=!1;for(let P=0;P=0&&$0){let P=I/T,$=0;for(let X of k.values())$=Math.max($,X);let Q=$/T,j=N/T;Q>.6&&(O||j>.33)&&(P+=sa.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),P+=Math.min(T*.15,1.5);let z=k.get("0.0000")||0;z>3?(P+=sa.EP_ALIGN.ZERO_DIFF_BONUS_BASE,P+=z*sa.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):z>0&&(P+=z*2),P>m&&(m=P,h=C)}}return m>.3?h:0}function BLr(e,t,r=""){let n=`${e}_${t}_${r}`,i=0;for(let s=0;s=0;l--){let d=e.links[l],f=d.title||d.name||"",p=Tc(f,e.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of t){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,p=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||p&&d>o?i.push(l):s.push(l)}let u=[],c=(l,d,f)=>{l.length>0&&(l.sort((p,h)=>p.originalIndex-h.originalIndex),d.push(...l.map(p=>_gt(p,r))),u.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(p=>p.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),e.links.unshift(...n.map(l=>_gt(l,r))),u.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),c(i,e.links,"\u5C3E\u90E8"),c(s,e.links,"\u7279\u6B8A"),u.length>0&&Pt("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: -${u.join(` -`)}`)}function Agt(e,t){let r=new Set;if(!e)return r;let n=-1;for(let i=0;i{let a=i.title||i.name||"",o=Tc(a,t);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&s{let u=o.title||o.name||"",c=Tc(u,r);c.num!==null&&t.has(c.num)?(s.push(o),a++):i.push(o)}),a>0&&(e.length=0,e.push(...i,...s),Pt("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(t).join(",")}) \u5230\u672B\u5C3E`))}function FLr(e,t,r){let n=new Map,i=[];for(let o of e){if(r&&r.has(o.animeId))continue;let u=L.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(eI(u.animeTitle,u.typeDescription,u.source)==="REAL"){i.push(` [\u5254\u9664] [${u.source}] ${u.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(jv(u.animeTitle,u.typeDescription)==="MOVIE"){i.push(` [\u5254\u9664] [${u.source}] ${u.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=Nc(u.animeTitle,u.typeDescription);if(d!==null&&u.links){let p=B0e(u.links,t,u.source).filter(h=>{let m=h.link.title||h.link.name||"",g=py(m).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(u.source)&&(xe.Episode.SPECIAL_CHECK.test(g)||xe.Episode.DANDAN_IGNORE.test(g))||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(m))}).length;if(p>0){n.has(d)||n.set(d,new Map);let h=n.get(d);h.has(p)||h.set(p,[]),h.get(p).push(u.source),i.push(` [\u91C7\u7EB3] [${u.source}] S${d} = ${p}\u96C6 ("${u.animeTitle}")`)}else i.push(` [\u5FFD\u7565] [${u.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let s=new Map,a=[];for(let[o,u]of n.entries()){let c=0,l=0,d=[];for(let[p,h]of u.entries()){let m=h.length;m>l?(l=m,c=p,d=h):m===l&&p`${p}\u96C6(x${h.length})[${h.join(",")}]`).join(", ");a.push(`S${o}=${c} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(i.length>0||a.length>0)&&Pt("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: -${i.join(` +`;let r=e.comments||[];if(Array.isArray(r))for(let n of r){let s=_qr(n);t+=' '+Eqr(n.m)+` +`}return t+="
",t}function gqr(){let t=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return t+r}function _qr(e){let t=e.p.split(","),n=(parseFloat(t[0])||0).toFixed(1),s=t[1]||"1",i="25",a=t[2]||"16777215",o="1751533608",c="0",u="0",l=gqr();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function Aqr(e){return e?String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function Eqr(e){return e?String(e).replace(/&/g,"&").replace(//g,">"):""}function IS(e,t){let r=t||F.danmuOutputFormat;if(r=r.toLowerCase(),R("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=mqr(e);return Rit(n)}catch(n){return R("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),tt(e)}return tt(e)}var eE=ie(()=>{Wt();Kt();Hr();$u()});var Hm,X9=ie(()=>{Hr();Hm=class{constructor({apiKey:t,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=t,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(t,r={}){let n={model:r.model||this.model,messages:t,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Gn(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(t,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:t}),this.chat(n,r)}session(t={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,t);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(t){return{ok:!1,error:t.message}}}}});function Lfe(e){let t=new Map,r=e.length;for(let n=0;n=0?"custom":"official";return R("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${e} vs bangumi-data@${t} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(e){return R("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${e.message}`),"custom"}}async function FR(e,t=!1,r=null){if(!F.useBangumiData)return;let n=null,s=F.bangumiDataCacheDays!==void 0?F.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(e==="node"?Gc.default.existsSync(eq)?n=tq.default.join(eq,Wit):WP||(R("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),R("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),R("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),WP=!0):WP||(R("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${e} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),WP=!0),Dl&&Date.now()-J9>yqr&&(R("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),Dl=!1),mi){if(s>0&&Date.now()-Z9{Dl=!1}));return}if(n&&Gc.default.existsSync(n))try{let a=Gc.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();mi=JSON.parse(Gc.default.readFileSync(n,"utf-8")),mi?.items?.length>0&&mi.items[0]._flatText===void 0?(mi=Jit(mi),Gc.default.writeFileSync(n,JSON.stringify(mi),"utf-8"),Lfe(mi.items)):mi?.items?.length>0&&Lfe(mi.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;UR=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);Z9=Date.now(),R("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${mi.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${UR} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&t&&!Dl&&(R("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Dl=!0,J9=Date.now(),Pfe(n).finally(()=>{Dl=!1}));return}catch(a){R("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),mi=null}if(Dl){if(t){R("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Dl;){if(a>150){R("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Dl=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{R("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Dl=!0,J9=Date.now();let a=Pfe(n).finally(()=>{Dl=!1});t?await a:(R("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(R("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}function Jit(e){if(!e||!e.items)return{items:[]};let t=[];for(let r of e.items){let n=[];if(r.sites){for(let o of r.sites)if(wqr.has(o.site)){let c={site:o.site,id:o.id};o.season_id&&(c.season_id=String(o.season_id)),o.video_sn&&(c.video_sn=String(o.video_sn)),o.comment&&(c.comment=o.comment),o.related&&(c.related=o.related),n.push(c)}}if(n.length===0)continue;let s={title:r.title,type:r.type,sites:n};r.begin&&(s.begin=r.begin),r.titleTranslate&&(s.titleTranslate=r.titleTranslate);let i=r.title;if(r.titleTranslate)for(let o in r.titleTranslate){let c=r.titleTranslate[o];for(let u=0;unew AbortController);s.forEach(h=>{R("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${h}`)});let o=s.map(async(h,p)=>{let m=a[p],g=await KA(h,{...i,signal:m.signal});if(!g.ok)throw new Error(`HTTP error ${g.status} from ${h}`);let _=await g.json(),y=_.items?_.items.length:0;if(m.signal.aborted)throw new Error("Aborted before parsing");let A=Date.now(),E=Jit(_),v=Date.now()-A,b=null;return e&&!m.signal.aborted&&(b=`${e}.tmp${p}`,Gc.default.writeFileSync(b,JSON.stringify(E),"utf-8")),{index:p,url:h,tempFilePath:b,resultData:E,pruneCost:v,originalCount:y}}),c=await Promise.any(o);a.forEach((h,p)=>{p!==c.index&&h.abort()}),e&&(s.forEach((h,p)=>{if(p!==c.index){let m=`${e}.tmp${p}`;if(Gc.default.existsSync(m))try{Gc.default.unlinkSync(m)}catch{}}}),Gc.default.renameSync(c.tempFilePath,e));let u=((Date.now()-r)/1e3).toFixed(2);R("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),mi=c.resultData,n=c.pruneCost,Lfe(mi.items),RS.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);UR=Math.max(0,(l-t)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);Z9=Date.now(),R("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${mi.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${UR} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(t){let r=t instanceof AggregateError?t.errors.map(n=>n.message).join(" | "):t.message;R("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Xf(e,t){if(!mi||!mi.items)return[];let r=RS.get(e);if(!r){if(r=(async()=>{let c=[],u=[e];try{u=[...new Set([e,Sr(e),wl(e)])]}catch{}let d=[Sr(e)].map(m=>{let g=m.replace(Xit,"");return g=kr(g).toLowerCase(),g.length>=2?g:kr(m).toLowerCase()}).filter(m=>m.length>0),f=null;if(typeof tE<"u"&&tE.size>0&&d.length>0){let m=new Set;for(let g of d){let _=Array.from(new Set(g.replace(bqr,"")));if(_.length===0)continue;_.sort((E,v)=>{let b=tE.get(E)?.length||0,I=tE.get(v)?.length||0;return b-I});let y=tE.get(_[0]);if(!y||y.length===0)continue;let A=new Set(y);for(let E=1;E<_.length;E++){let v=tE.get(_[E]);if(!v){A.clear();break}let b=new Set(v);for(let I of A)b.has(I)||A.delete(I);if(A.size===0)break}for(let E of A)m.add(E)}f=Array.from(m)}else f=mi.items.map((m,g)=>g);let h=mi.items,p=u.length;for(let m=0;m100){let c=RS.keys().next().value;RS.delete(c)}RS.set(e,r)}let n=await r,s=n,i=fr(e);if(i!==null){let c=n.filter(({item:u})=>{let l=er(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let h=0;h1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=Tqr,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>t.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",h="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",h="movie"):c.type==="tv"?(f="TV\u52A8\u753B",h="tvseries"):c.type==="ova"?(f="OVA",h="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",h="web");let p="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(p="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let m=[],g=[];if(d.comment){let y=d.comment.split(Iqr),A=new Map;if(d.related&&Array.isArray(d.related))for(let E of d.related)E.id&&A.set(String(E.id),E.season_id||null);for(let E of y){let v=E.split(Rqr);if(v.length>=2){let b=v[0].trim(),I=v[1].trim();I&&a.test(b)&&m.push({title:c.title,titles:[...u],begin:c.begin,siteId:I,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:h,titleSuffix:` ${b}${p}`,season_id:A.get(I)||null})}else if(v.length===1&&v[0].trim()){let b=v[0].trim();a.test(b)&&g.push(b)}}}let _="";g.length>0&&(_+=` ${g.join(" ")}`),_+=p,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:h,titleSuffix:_,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...m)}}return o}function rq(e=!1){if(mi!==null){let t=mi.items?mi.items.length:0;mi=null,Z9=0,RS.clear(),tE.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);R("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${t}\uFF0C\u91CA\u653E: ${UR} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),UR="0.00",WP=!1}if(e&&Gc.default.existsSync(eq))try{let t=tq.default.join(eq,Wit);Gc.default.existsSync(t)&&Gc.default.unlinkSync(t);for(let r=0;r<5;r++){let n=`${t}.tmp${r}`;Gc.default.existsSync(n)&&Gc.default.unlinkSync(n)}R("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(t){R("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${t.message}`)}}var Gc,tq,mi,Z9,Dl,J9,UR,WP,tE,jit,Kit,Git,eq,Wit,yqr,RS,zit,vqr,Sqr,Tqr,Xit,bqr,Iqr,Rqr,wqr,Vm=ie(()=>{Gc=Ne(require("fs"),1),tq=Ne(require("path"),1);SR();Wt();Kt();fs();$u();mi=null,Z9=0,Dl=!1,J9=0,UR="0.00",WP=!1,tE=new Map,jit="custom",Kit=null,Git=null,eq=tq.default.join(process.cwd(),".cache"),Wit="bangumi-data-cache.json",yqr=2e4,RS=new Map,zit={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/bangumi-data@0.3/dist/data.json","https://unpkg.com/@wan0ge/bangumi-data@0.3/dist/data.json"],official:["https://cdn.jsdelivr.net/npm/bangumi-data@0.3/dist/data.json","https://unpkg.com/bangumi-data@0.3/dist/data.json"]},vqr="@wan0ge/bangumi-data",Sqr="bangumi-data",Tqr=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|日[语語]|日配|原版|原[声聲])(?:版)?/,Xit=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|劇場版|续[篇集]|外传)(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/gi,bqr=/\s+/g,Iqr=/[,,]/,Rqr=/[::]/;wqr=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"])});var kfe=S(nq=>{"use strict";Object.defineProperty(nq,"__esModule",{value:!0});nq.VerbatimString=void 0;var Mfe=class extends String{format;constructor(t,r){super(r),this.format=t}};nq.VerbatimString=Mfe});var Bh=S(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.MultiErrorReply=Zr.CommandTimeoutDuringMaintenanceError=Zr.SocketTimeoutDuringMaintenanceError=Zr.TimeoutError=Zr.BlobError=Zr.SimpleError=Zr.ErrorReply=Zr.ReconnectStrategyError=Zr.RootNodesUnavailableError=Zr.SocketClosedUnexpectedlyError=Zr.DisconnectsClientError=Zr.ClientOfflineError=Zr.ClientClosedError=Zr.SocketTimeoutError=Zr.ConnectionTimeoutError=Zr.WatchError=Zr.AbortError=void 0;var Bfe=class extends Error{constructor(){super("The command was aborted")}};Zr.AbortError=Bfe;var Ufe=class extends Error{constructor(t="One (or more) of the watched keys has been changed"){super(t)}};Zr.WatchError=Ufe;var Ffe=class extends Error{constructor(){super("Connection timeout")}};Zr.ConnectionTimeoutError=Ffe;var $fe=class extends Error{constructor(t){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${t}ms.`)}};Zr.SocketTimeoutError=$fe;var qfe=class extends Error{constructor(){super("The client is closed")}};Zr.ClientClosedError=qfe;var Hfe=class extends Error{constructor(){super("The client is offline")}};Zr.ClientOfflineError=Hfe;var Vfe=class extends Error{constructor(){super("Disconnects client")}};Zr.DisconnectsClientError=Vfe;var jfe=class extends Error{constructor(){super("Socket closed unexpectedly")}};Zr.SocketClosedUnexpectedlyError=jfe;var Kfe=class extends Error{constructor(){super("All the root nodes are unavailable")}};Zr.RootNodesUnavailableError=Kfe;var Gfe=class extends Error{originalError;socketError;constructor(t,r){super(t.message),this.originalError=t,this.socketError=r}};Zr.ReconnectStrategyError=Gfe;var $R=class extends Error{};Zr.ErrorReply=$R;var zfe=class extends $R{};Zr.SimpleError=zfe;var Yfe=class extends $R{};Zr.BlobError=Yfe;var XP=class extends Error{};Zr.TimeoutError=XP;var Qfe=class extends XP{constructor(t){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${t}ms.`)}};Zr.SocketTimeoutDuringMaintenanceError=Qfe;var Wfe=class extends XP{constructor(t){super(`Command timeout during maintenance. Waited to write command for more than ${t}ms.`)}};Zr.CommandTimeoutDuringMaintenanceError=Wfe;var Xfe=class extends $R{replies;errorIndexes;constructor(t,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=t,this.errorIndexes=r}*errors(){for(let t of this.errorIndexes)yield this.replies[t]}};Zr.MultiErrorReply=Xfe});var aq=S(Bt=>{"use strict";var Jfe;Object.defineProperty(Bt,"__esModule",{value:!0});Bt.Decoder=Bt.PUSH_TYPE_MAPPING=Bt.RESP_TYPES=void 0;var Zit=kfe(),sq=Bh();Bt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var es={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};Bt.PUSH_TYPE_MAPPING={[Bt.RESP_TYPES.BLOB_STRING]:Buffer};var iq=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(t){this.onReply=t.onReply,this.onErrorReply=t.onErrorReply,this.onPush=t.onPush,this.getTypeMapping=t.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(t){if(this.#e>=t.length){this.#e-=t.length;return}if(this.#t&&(this.#t(t)||this.#e>=t.length)){this.#e-=t.length;return}do{let r=t[this.#e];if(++this.#e===t.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,t))break}while(this.#e=r.length?this.#w.bind(this,n,t):this.#w(n,t,r)}#R(t,r,n){let s=t(n);return typeof s=="function"?this.#R.bind(this,s,r):this.#e>=n.length?this.#w.bind(this,s,r):this.#w(s,r,n)}#N(t,r,n,s){let i=this.#e+t;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#B.bind(this,t-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#B(t,r,n,s,i){let a=this.#e+t;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#B.bind(this,t-c.length,r,n,s)}r.push(i.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return s===Buffer?o:o.toString()}#w(t,r,n){return this.#N(t,2,r,n)}#O(t,r){return this.#P(this.#h.bind(this,0),t,r)}#P(t,r,n){let s=t(n);return typeof s=="function"?this.#P.bind(this,s,r):this.#ce(s,r,n)}#ce(t,r,n){let s=t-4;return r===Zit.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#w.bind(this,s,r):this.#w(s,r,n))}#ue(t,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#$.bind(this,t,n):this.#$(t,n,r)}#$(t,r,n){let s=r(n);return typeof s=="function"?this.#$.bind(this,t,s):this.#le(t,s,n)}#le(t,r,n){return this.#j(r,this.#w.bind(this,t,String),n)}#j(t,r,n){let s=r(n);return typeof s=="function"?this.#j.bind(this,t,s):new Zit.VerbatimString(t,s)}#K(t){let r=this.#E(String,t);return typeof r=="function"?this.#G.bind(this,r):new sq.SimpleError(r)}#G(t,r){let n=t(r);return typeof n=="function"?this.#G.bind(this,n):new sq.SimpleError(n)}#z(t){let r=this.#C(String,t);return typeof r=="function"?this.#Y.bind(this,r):new sq.BlobError(r)}#Y(t,r){let n=t(r);return typeof n=="function"?this.#Y.bind(this,n):new sq.BlobError(n)}#x(t,r){let n=r[this.#e];return++this.#e===r.length?this.#q.bind(this,n,t):this.#q(n,t,r)}#q(t,r,n){switch(t){case Bt.RESP_TYPES.NULL:return this.#s();case Bt.RESP_TYPES.BOOLEAN:return this.#i(n);case Bt.RESP_TYPES.NUMBER:return this.#c(r[Bt.RESP_TYPES.NUMBER],n);case Bt.RESP_TYPES.BIG_NUMBER:return this.#d(r[Bt.RESP_TYPES.BIG_NUMBER],n);case Bt.RESP_TYPES.DOUBLE:return this.#g(r[Bt.RESP_TYPES.DOUBLE],n);case Bt.RESP_TYPES.SIMPLE_STRING:return this.#E(r[Bt.RESP_TYPES.SIMPLE_STRING],n);case Bt.RESP_TYPES.BLOB_STRING:return this.#C(r[Bt.RESP_TYPES.BLOB_STRING],n);case Bt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[Bt.RESP_TYPES.VERBATIM_STRING],n);case Bt.RESP_TYPES.SIMPLE_ERROR:return this.#K(n);case Bt.RESP_TYPES.BLOB_ERROR:return this.#z(n);case Bt.RESP_TYPES.ARRAY:return this.#H(r,n);case Bt.RESP_TYPES.SET:return this.#X(r,n);case Bt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${t} "${String.fromCharCode(t)}"`)}}#H(t,r){return r[this.#e]===es["-"]?(this.#e+=4,null):this.#Q(this.#h(0,r),t,r)}#Q(t,r,n){return typeof t=="function"?this.#de.bind(this,t,r):this.#L(new Array(t),0,r,n)}#de(t,r,n){return this.#Q(t(n),r,n)}#L(t,r,n,s){for(let i=r;i=s.length)return this.#L.bind(this,t,i,n);let a=this.#x(n,s);if(typeof a=="function")return this.#W.bind(this,t,i,a,n);t[i]=a}return t}#W(t,r,n,s,i){let a=n(i);return typeof a=="function"?this.#W.bind(this,t,r,a,s):(t[r++]=a,this.#L(t,r,s,i))}#X(t,r){let n=this.#h(0,r);return typeof n=="function"?this.#J.bind(this,n,t):this.#Z(n,t,r)}#J(t,r,n){let s=t(n);return typeof s=="function"?this.#J.bind(this,s,r):this.#Z(s,r,n)}#Z(t,r,n){return r[Bt.RESP_TYPES.SET]===Set?this.#V(new Set,t,r,n):this.#L(new Array(t),0,r,n)}#V(t,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#V.bind(this,t,r,n);let i=this.#x(n,s);if(typeof i=="function")return this.#ee.bind(this,t,r,i,n);t.add(i),--r}return t}#ee(t,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,t,r,a,s):(t.add(a),this.#V(t,r-1,s,i))}#te(t,r){let n=this.#h(0,r);return typeof n=="function"?this.#re.bind(this,n,t):this.#ne(n,t,r)}#re(t,r,n){let s=t(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(t,r,n){switch(r[Bt.RESP_TYPES.MAP]){case Map:return this.#U(new Map,t,r,n);case Array:return this.#L(new Array(t*2),0,r,n);default:return this.#F(Object.create(null),t,r,n)}}#U(t,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#U.bind(this,t,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,t,r,i,n);if(this.#e>=s.length)return this.#M.bind(this,t,r,i,this.#x.bind(this,n),n);let a=this.#x(n,s);if(typeof a=="function")return this.#M.bind(this,t,r,i,a,n);t.set(i,a),--r}return t}#se(t,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,t):this.#ie(n,t,r)}#ie(t,r,n){switch(t){case Bt.RESP_TYPES.SIMPLE_STRING:return this.#E(String,n);case Bt.RESP_TYPES.BLOB_STRING:return this.#C(String,n);default:return this.#q(t,r,n)}}#ae(t,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,t,r,a,s);if(this.#e>=i.length)return this.#M.bind(this,t,r,a,this.#x.bind(this,s),s);let o=this.#x(s,i);return typeof o=="function"?this.#M.bind(this,t,r,a,o,s):(t.set(a,o),this.#U(t,r-1,s,i))}#M(t,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#M.bind(this,t,r,n,o,i):(t.set(n,o),this.#U(t,r-1,i,a))}#F(t,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#F.bind(this,t,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,t,r,i,n);if(this.#e>=s.length)return this.#k.bind(this,t,r,i,this.#x.bind(this,n),n);let a=this.#x(n,s);if(typeof a=="function")return this.#k.bind(this,t,r,i,a,n);t[i]=a,--r}return t}#oe(t,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,t,r,a,s);if(this.#e>=i.length)return this.#k.bind(this,t,r,a,this.#x.bind(this,s),s);let o=this.#x(s,i);return typeof o=="function"?this.#k.bind(this,t,r,a,o,s):(t[a]=o,this.#F(t,r-1,s,i))}#k(t,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#k.bind(this,t,r,n,o,i):(t[n]=o,this.#F(t,r-1,i,a))}};Bt.Decoder=iq;Jfe=iq});var tat=S(qR=>{"use strict";Object.defineProperty(qR,"__esModule",{value:!0});qR.scriptSha1=qR.defineScript=void 0;var Nqr=require("node:crypto");function Oqr(e){return{...e,SHA1:eat(e.SCRIPT)}}qR.defineScript=Oqr;function eat(e){return(0,Nqr.createHash)("sha1").update(e).digest("hex")}qR.scriptSha1=eat});var rat=S(oq=>{"use strict";Object.defineProperty(oq,"__esModule",{value:!0});oq.digest=void 0;var Zfe=null;async function Dqr(){if(!Zfe)try{Zfe=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return Zfe}async function Pqr(e){let t=await Dqr(),r=typeof e=="string"?e:new Uint8Array(e);return t.xxh64(r).toString(16).padStart(16,"0")}oq.digest=Pqr});var nat=S(e0e=>{"use strict";Object.defineProperty(e0e,"__esModule",{value:!0});e0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","CAT"),t&&e.push(t)},transformReply:void 0}});var sat=S(t0e=>{"use strict";Object.defineProperty(t0e,"__esModule",{value:!0});t0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","DELUSER"),e.pushVariadic(t)},transformReply:void 0}});var iat=S(r0e=>{"use strict";Object.defineProperty(r0e,"__esModule",{value:!0});r0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ACL","DRYRUN",t,...r)},transformReply:void 0}});var aat=S(n0e=>{"use strict";Object.defineProperty(n0e,"__esModule",{value:!0});n0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","GENPASS"),t&&e.push(t.toString())},transformReply:void 0}});var oat=S(s0e=>{"use strict";Object.defineProperty(s0e,"__esModule",{value:!0});s0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","GETUSER",t)},transformReply:{2:e=>({flags:e[1],passwords:e[3],commands:e[5],keys:e[7],channels:e[9],selectors:e[11]?.map(t=>{let r=t;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var cat=S(i0e=>{"use strict";Object.defineProperty(i0e,"__esModule",{value:!0});i0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","LIST")},transformReply:void 0}});var uat=S(a0e=>{"use strict";Object.defineProperty(a0e,"__esModule",{value:!0});a0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","LOAD")},transformReply:void 0}});var Uh=S(cq=>{"use strict";Object.defineProperty(cq,"__esModule",{value:!0});cq.BasicCommandParser=void 0;var o0e=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let t=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.transformRedisJsonNullReply=rt.transformRedisJsonReply=rt.transformRedisJsonArgument=rt.transformStreamsMessagesReplyResp3=rt.transformStreamsMessagesReplyResp2=rt.transformStreamMessagesReply=rt.transformStreamMessageNullReply=rt.transformStreamMessageReply=rt.parseArgs=rt.parseZKeysArguments=rt.transformRangeReply=rt.parseSlotRangesArguments=rt.transformFunctionListItemReply=rt.RedisFunctionFlags=rt.transformCommandReply=rt.CommandCategories=rt.CommandFlags=rt.parseOptionalVariadicArgument=rt.pushVariadicArgument=rt.pushVariadicNumberArguments=rt.pushVariadicArguments=rt.pushEvalArguments=rt.evalFirstKeyIndex=rt.transformPXAT=rt.transformEXAT=rt.transformSortedSetReply=rt.transformTuplesReply=rt.createTransformTuplesReplyFunc=rt.transformTuplesToMap=rt.transformNullableDoubleReply=rt.createTransformNullableDoubleReplyResp2Func=rt.transformDoubleArrayReply=rt.createTransformDoubleReplyResp2Func=rt.transformDoubleReply=rt.transformStringDoubleArgument=rt.transformDoubleArgument=rt.transformBooleanArrayReply=rt.transformBooleanReply=rt.isArrayReply=rt.isNullReply=void 0;var Lqr=Uh(),c0e=aq();function u0e(e){return e===null}rt.isNullReply=u0e;function Mqr(e){return Array.isArray(e)}rt.isArrayReply=Mqr;rt.transformBooleanReply={2:e=>e===1,3:void 0};rt.transformBooleanArrayReply={2:e=>e.map(rt.transformBooleanReply[2]),3:void 0};function uq(e){switch(e){case 1/0:return"+inf";case-1/0:return"-inf";default:return e.toString()}}rt.transformDoubleArgument=uq;function kqr(e){return typeof e!="number"?e:uq(e)}rt.transformStringDoubleArgument=kqr;rt.transformDoubleReply={2:(e,t,r)=>{switch(r?r[c0e.RESP_TYPES.DOUBLE]:void 0){case String:return e;default:{let s;switch(e.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(e)}return s}}},3:void 0};function pat(e,t){return r=>rt.transformDoubleReply[2](r,e,t)}rt.createTransformDoubleReplyResp2Func=pat;rt.transformDoubleArrayReply={2:(e,t,r)=>e.map(pat(t,r)),3:void 0};function Bqr(e,t){return r=>rt.transformNullableDoubleReply[2](r,e,t)}rt.createTransformNullableDoubleReplyResp2Func=Bqr;rt.transformNullableDoubleReply={2:(e,t,r)=>e===null?null:rt.transformDoubleReply[2](e,t,r),3:void 0};function Uqr(e,t){let r=Object.create(null);for(let n=0;nl0e(r,e,t)}rt.createTransformTuplesReplyFunc=Fqr;function l0e(e,t,r){let n=r?r[c0e.RESP_TYPES.MAP]:void 0,s=e;switch(n){case Array:return e;case Map:{let i=new Map;for(let a=0;a{let n=e,s=[];for(let i=0;ie.map(t=>{let[r,n]=t;return{value:r,score:n}})};function $qr(e){return(typeof e=="number"?e:Math.floor(e.getTime()/1e3)).toString()}rt.transformEXAT=$qr;function qqr(e){return(typeof e=="number"?e:e.getTime()).toString()}rt.transformPXAT=qqr;function Hqr(e){return e?.keys?.[0]}rt.evalFirstKeyIndex=Hqr;function Vqr(e,t){return t?.keys?e.push(t.keys.length.toString(),...t.keys):e.push("0"),t?.arguments&&e.push(...t.arguments),e}rt.pushEvalArguments=Vqr;function jqr(e,t){return Array.isArray(t)?e=e.concat(t):e.push(t),e}rt.pushVariadicArguments=jqr;function Kqr(e,t){if(Array.isArray(t))for(let r of t)e.push(r.toString());else e.push(t.toString());return e}rt.pushVariadicNumberArguments=Kqr;function Gqr(e,t){return Array.isArray(t)?e.push(t.length.toString(),...t):e.push("1",t),e}rt.pushVariadicArgument=Gqr;function zqr(e,t,r){r!==void 0&&(e.push(t),e.pushVariadicWithLength(r))}rt.parseOptionalVariadicArgument=zqr;var lat;(function(e){e.WRITE="write",e.READONLY="readonly",e.DENYOOM="denyoom",e.ADMIN="admin",e.PUBSUB="pubsub",e.NOSCRIPT="noscript",e.RANDOM="random",e.SORT_FOR_SCRIPT="sort_for_script",e.LOADING="loading",e.STALE="stale",e.SKIP_MONITOR="skip_monitor",e.ASKING="asking",e.FAST="fast",e.MOVABLEKEYS="movablekeys"})(lat||(rt.CommandFlags=lat={}));var dat;(function(e){e.KEYSPACE="@keyspace",e.READ="@read",e.WRITE="@write",e.SET="@set",e.SORTEDSET="@sortedset",e.LIST="@list",e.HASH="@hash",e.STRING="@string",e.BITMAP="@bitmap",e.HYPERLOGLOG="@hyperloglog",e.GEO="@geo",e.STREAM="@stream",e.PUBSUB="@pubsub",e.ADMIN="@admin",e.FAST="@fast",e.SLOW="@slow",e.BLOCKING="@blocking",e.DANGEROUS="@dangerous",e.CONNECTION="@connection",e.TRANSACTION="@transaction",e.SCRIPTING="@scripting"})(dat||(rt.CommandCategories=dat={}));function Yqr([e,t,r,n,s,i,a]){return{name:e,arity:t,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}rt.transformCommandReply=Yqr;var fat;(function(e){e.NO_WRITES="no-writes",e.ALLOW_OOM="allow-oom",e.ALLOW_STALE="allow-stale",e.NO_CLUSTER="no-cluster"})(fat||(rt.RedisFunctionFlags=fat={}));function Qqr(e){return{libraryName:e[1],engine:e[3],functions:e[5].map(t=>({name:t[1],description:t[3],flags:t[5]}))}}rt.transformFunctionListItemReply=Qqr;function hat(e,t){e.push(t.start.toString(),t.end.toString())}function Wqr(e,t){if(Array.isArray(t))for(let r of t)hat(e,r);else hat(e,t)}rt.parseSlotRangesArguments=Wqr;function Xqr([e,t]){return{start:e,end:t}}rt.transformRangeReply=Xqr;function Jqr(e,t){if(Array.isArray(t)){if(e.push(t.length.toString()),t.length)if(Zqr(t))e.pushKeys(t);else{for(let r=0;r{"use strict";Object.defineProperty(f0e,"__esModule",{value:!0});var aHr=We();f0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ACL","LOG"),t!=null&&e.push(t.toString())},transformReply:{2:(e,t,r)=>e.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":aHr.transformDoubleReply[2](s[11],t,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var _at=S(ZP=>{"use strict";var oHr=ZP&&ZP.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZP,"__esModule",{value:!0});var cHr=oHr(h0e());ZP.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:cHr.default.IS_READ_ONLY,parseCommand(e){e.push("ACL","LOG","RESET")},transformReply:void 0}});var Aat=S(p0e=>{"use strict";Object.defineProperty(p0e,"__esModule",{value:!0});p0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","SAVE")},transformReply:void 0}});var Eat=S(m0e=>{"use strict";Object.defineProperty(m0e,"__esModule",{value:!0});m0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ACL","SETUSER",t),e.pushVariadic(r)},transformReply:void 0}});var yat=S(g0e=>{"use strict";Object.defineProperty(g0e,"__esModule",{value:!0});g0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","USERS")},transformReply:void 0}});var vat=S(_0e=>{"use strict";Object.defineProperty(_0e,"__esModule",{value:!0});_0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ACL","WHOAMI")},transformReply:void 0}});var Sat=S(A0e=>{"use strict";Object.defineProperty(A0e,"__esModule",{value:!0});A0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("APPEND",t,r)},transformReply:void 0}});var E0e=S(HR=>{"use strict";Object.defineProperty(HR,"__esModule",{value:!0});HR.ASKING_CMD=void 0;HR.ASKING_CMD="ASKING";HR.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push(HR.ASKING_CMD)},transformReply:void 0}});var Tat=S(y0e=>{"use strict";Object.defineProperty(y0e,"__esModule",{value:!0});y0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,{username:t,password:r}){e.push("AUTH"),t!==void 0&&e.push(t),e.push(r)},transformReply:void 0}});var bat=S(v0e=>{"use strict";Object.defineProperty(v0e,"__esModule",{value:!0});v0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("BGREWRITEAOF")},transformReply:void 0}});var Iat=S(S0e=>{"use strict";Object.defineProperty(S0e,"__esModule",{value:!0});S0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("BGSAVE"),t?.SCHEDULE&&e.push("SCHEDULE")},transformReply:void 0}});var Rat=S(T0e=>{"use strict";Object.defineProperty(T0e,"__esModule",{value:!0});T0e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BITCOUNT"),e.pushKey(t),r&&(e.push(r.start.toString()),e.push(r.end.toString()),r.mode&&e.push(r.mode))},transformReply:void 0}});var Cat=S(b0e=>{"use strict";Object.defineProperty(b0e,"__esModule",{value:!0});b0e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BITFIELD_RO"),e.pushKey(t);for(let n of r)e.push("GET"),e.push(n.encoding),e.push(n.offset.toString())},transformReply:void 0}});var xat=S(I0e=>{"use strict";Object.defineProperty(I0e,"__esModule",{value:!0});I0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BITFIELD"),e.pushKey(t);for(let n of r)switch(n.operation){case"GET":e.push("GET",n.encoding,n.offset.toString());break;case"SET":e.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":e.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":e.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var wat=S(R0e=>{"use strict";Object.defineProperty(R0e,"__esModule",{value:!0});R0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BITOP",t),e.pushKey(r),e.pushKeys(n)},transformReply:void 0}});var Nat=S(C0e=>{"use strict";Object.defineProperty(C0e,"__esModule",{value:!0});C0e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s,i){e.push("BITPOS"),e.pushKey(t),e.push(r.toString()),n!==void 0&&e.push(n.toString()),s!==void 0&&e.push(s.toString()),i&&e.push(i)},transformReply:void 0}});var Oat=S(x0e=>{"use strict";Object.defineProperty(x0e,"__esModule",{value:!0});x0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("BLMOVE"),e.pushKeys([t,r]),e.push(n,s,i.toString())},transformReply:void 0}});var w0e=S(eL=>{"use strict";Object.defineProperty(eL,"__esModule",{value:!0});eL.parseLMPopArguments=void 0;function Dat(e,t,r,n){e.pushKeysLength(t),e.push(r),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString())}eL.parseLMPopArguments=Dat;eL.default={IS_READ_ONLY:!1,parseCommand(e,...t){e.push("LMPOP"),Dat(e,...t)},transformReply:void 0}});var Lat=S(jm=>{"use strict";var uHr=jm&&jm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),lHr=jm&&jm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),dHr=jm&&jm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&uHr(t,e,r);return lHr(t,e),t};Object.defineProperty(jm,"__esModule",{value:!0});var Pat=dHr(w0e());jm.default={IS_READ_ONLY:!1,parseCommand(e,t,...r){e.push("BLMPOP",t.toString()),(0,Pat.parseLMPopArguments)(e,...r)},transformReply:Pat.default.transformReply}});var O0e=S(N0e=>{"use strict";Object.defineProperty(N0e,"__esModule",{value:!0});N0e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BLPOP"),e.pushKeys(t),e.push(r.toString())},transformReply(e){return e===null?null:{key:e[0],element:e[1]}}}});var Mat=S(tL=>{"use strict";var fHr=tL&&tL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(tL,"__esModule",{value:!0});var hHr=fHr(O0e());tL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BRPOP"),e.pushKeys(t),e.push(r.toString())},transformReply:hHr.default.transformReply}});var kat=S(D0e=>{"use strict";Object.defineProperty(D0e,"__esModule",{value:!0});D0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BRPOPLPUSH"),e.pushKeys([t,r]),e.push(n.toString())},transformReply:void 0}});var P0e=S(rL=>{"use strict";Object.defineProperty(rL,"__esModule",{value:!0});rL.parseZMPopArguments=void 0;var Bat=We();function Uat(e,t,r,n){e.pushKeysLength(t),e.push(r),n?.COUNT&&e.push("COUNT",n.COUNT.toString())}rL.parseZMPopArguments=Uat;rL.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZMPOP"),Uat(e,t,r,n)},transformReply:{2(e,t,r){return e===null?null:{key:e[0],members:e[1].map(n=>{let[s,i]=n;return{value:s,score:Bat.transformDoubleReply[2](i,t,r)}})}},3(e){return e===null?null:{key:e[0],members:Bat.transformSortedSetReply[3](e[1])}}}}});var $at=S(Km=>{"use strict";var pHr=Km&&Km.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mHr=Km&&Km.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gHr=Km&&Km.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pHr(t,e,r);return mHr(t,e),t};Object.defineProperty(Km,"__esModule",{value:!0});var Fat=gHr(P0e());Km.default={IS_READ_ONLY:!1,parseCommand(e,t,...r){e.push("BZMPOP",t.toString()),(0,Fat.parseZMPopArguments)(e,...r)},transformReply:Fat.default.transformReply}});var M0e=S(L0e=>{"use strict";Object.defineProperty(L0e,"__esModule",{value:!0});var _Hr=We();L0e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BZPOPMAX"),e.pushKeys(t),e.push(r.toString())},transformReply:{2(e,t,r){return e===null?null:{key:e[0],value:e[1],score:_Hr.transformDoubleReply[2](e[2],t,r)}},3(e){return e===null?null:{key:e[0],value:e[1],score:e[2]}}}}});var Hat=S(nL=>{"use strict";var AHr=nL&&nL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nL,"__esModule",{value:!0});var qat=AHr(M0e());nL.default={IS_READ_ONLY:qat.default.IS_READ_ONLY,parseCommand(e,t,r){e.push("BZPOPMIN"),e.pushKeys(t),e.push(r.toString())},transformReply:qat.default.transformReply}});var Vat=S(k0e=>{"use strict";Object.defineProperty(k0e,"__esModule",{value:!0});k0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","CACHING",t?"YES":"NO")},transformReply:void 0}});var jat=S(B0e=>{"use strict";Object.defineProperty(B0e,"__esModule",{value:!0});B0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","GETNAME")},transformReply:void 0}});var Kat=S(U0e=>{"use strict";Object.defineProperty(U0e,"__esModule",{value:!0});U0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","GETREDIR")},transformReply:void 0}});var Gat=S(F0e=>{"use strict";Object.defineProperty(F0e,"__esModule",{value:!0});F0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","ID")},transformReply:void 0}});var q0e=S($0e=>{"use strict";Object.defineProperty($0e,"__esModule",{value:!0});var EHr=/([^\s=]+)=([^\s]*)/g;$0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","INFO")},transformReply(e){let t={};for(let n of e.toString().matchAll(EHr))t[n[1]]=n[2];let r={id:Number(t.id),addr:t.addr,fd:Number(t.fd),name:t.name,age:Number(t.age),idle:Number(t.idle),flags:t.flags,db:Number(t.db),sub:Number(t.sub),psub:Number(t.psub),multi:Number(t.multi),qbuf:Number(t.qbuf),qbufFree:Number(t["qbuf-free"]),argvMem:Number(t["argv-mem"]),obl:Number(t.obl),oll:Number(t.oll),omem:Number(t.omem),totMem:Number(t["tot-mem"]),events:t.events,cmd:t.cmd,user:t.user,libName:t["lib-name"],libVer:t["lib-ver"]};return t.laddr!==void 0&&(r.laddr=t.laddr),t.redir!==void 0&&(r.redir=Number(t.redir)),t.ssub!==void 0&&(r.ssub=Number(t.ssub)),t["multi-mem"]!==void 0&&(r.multiMem=Number(t["multi-mem"])),t.resp!==void 0&&(r.resp=Number(t.resp)),r}}});var Yat=S(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});Pl.CLIENT_KILL_FILTERS=void 0;Pl.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Pl.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){if(e.push("CLIENT","KILL"),Array.isArray(t))for(let r of t)zat(e,r);else zat(e,t)},transformReply:void 0};function zat(e,t){if(t===Pl.CLIENT_KILL_FILTERS.SKIP_ME){e.push("SKIPME");return}switch(e.push(t.filter),t.filter){case Pl.CLIENT_KILL_FILTERS.ADDRESS:e.push(t.address);break;case Pl.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:e.push(t.localAddress);break;case Pl.CLIENT_KILL_FILTERS.ID:e.push(typeof t.id=="number"?t.id.toString():t.id);break;case Pl.CLIENT_KILL_FILTERS.TYPE:e.push(t.type);break;case Pl.CLIENT_KILL_FILTERS.USER:e.push(t.username);break;case Pl.CLIENT_KILL_FILTERS.SKIP_ME:e.push(t.skipMe?"yes":"no");break;case Pl.CLIENT_KILL_FILTERS.MAXAGE:e.push(t.maxAge.toString());break}}});var Qat=S(sL=>{"use strict";var yHr=sL&&sL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sL,"__esModule",{value:!0});var vHr=yHr(q0e());sL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","LIST"),t&&(t.TYPE!==void 0?e.push("TYPE",t.TYPE):(e.push("ID"),e.pushVariadic(t.ID)))},transformReply(e){let t=e.toString().split(` +`),r=t.length-1,n=[];for(let s=0;s{"use strict";Object.defineProperty(H0e,"__esModule",{value:!0});H0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","NO-EVICT",t?"ON":"OFF")},transformReply:void 0}});var Xat=S(V0e=>{"use strict";Object.defineProperty(V0e,"__esModule",{value:!0});V0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","NO-TOUCH",t?"ON":"OFF")},transformReply:void 0}});var Jat=S(j0e=>{"use strict";Object.defineProperty(j0e,"__esModule",{value:!0});j0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLIENT","PAUSE",t.toString()),r&&e.push(r)},transformReply:void 0}});var Zat=S(K0e=>{"use strict";Object.defineProperty(K0e,"__esModule",{value:!0});K0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLIENT","SETNAME",t)},transformReply:void 0}});var eot=S(G0e=>{"use strict";Object.defineProperty(G0e,"__esModule",{value:!0});G0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){if(e.push("CLIENT","TRACKING",t?"ON":"OFF"),t){if(r?.REDIRECT&&e.push("REDIRECT",r.REDIRECT.toString()),SHr(r)){if(e.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)e.push("PREFIX",n);else e.push("PREFIX",r.PREFIX)}else THr(r)?e.push("OPTIN"):bHr(r)&&e.push("OPTOUT");r?.NOLOOP&&e.push("NOLOOP")}},transformReply:void 0};function SHr(e){return e?.BCAST===!0}function THr(e){return e?.OPTIN===!0}function bHr(e){return e?.OPTOUT===!0}});var tot=S(z0e=>{"use strict";Object.defineProperty(z0e,"__esModule",{value:!0});z0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","TRACKINGINFO")},transformReply:{2:e=>({flags:e[1],redirect:e[3],prefixes:e[5]}),3:void 0}}});var rot=S(Y0e=>{"use strict";Object.defineProperty(Y0e,"__esModule",{value:!0});Y0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLIENT","UNPAUSE")},transformReply:void 0}});var not=S(Q0e=>{"use strict";Object.defineProperty(Q0e,"__esModule",{value:!0});Q0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","ADDSLOTS"),e.pushVariadicNumber(t)},transformReply:void 0}});var sot=S(W0e=>{"use strict";Object.defineProperty(W0e,"__esModule",{value:!0});var IHr=We();W0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","ADDSLOTSRANGE"),(0,IHr.parseSlotRangesArguments)(e,t)},transformReply:void 0}});var iot=S(X0e=>{"use strict";Object.defineProperty(X0e,"__esModule",{value:!0});X0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var aot=S(J0e=>{"use strict";Object.defineProperty(J0e,"__esModule",{value:!0});J0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","COUNT-FAILURE-REPORTS",t)},transformReply:void 0}});var oot=S(Z0e=>{"use strict";Object.defineProperty(Z0e,"__esModule",{value:!0});Z0e.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","COUNTKEYSINSLOT",t.toString())},transformReply:void 0}});var cot=S(ehe=>{"use strict";Object.defineProperty(ehe,"__esModule",{value:!0});ehe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","DELSLOTS"),e.pushVariadicNumber(t)},transformReply:void 0}});var uot=S(the=>{"use strict";Object.defineProperty(the,"__esModule",{value:!0});var RHr=We();the.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","DELSLOTSRANGE"),(0,RHr.parseSlotRangesArguments)(e,t)},transformReply:void 0}});var lot=S(iL=>{"use strict";Object.defineProperty(iL,"__esModule",{value:!0});iL.FAILOVER_MODES=void 0;iL.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};iL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","FAILOVER"),t?.mode&&e.push(t.mode)},transformReply:void 0}});var dot=S(rhe=>{"use strict";Object.defineProperty(rhe,"__esModule",{value:!0});rhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var fot=S(nhe=>{"use strict";Object.defineProperty(nhe,"__esModule",{value:!0});nhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","FORGET",t)},transformReply:void 0}});var hot=S(she=>{"use strict";Object.defineProperty(she,"__esModule",{value:!0});she.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLUSTER","GETKEYSINSLOT",t.toString(),r.toString())},transformReply:void 0}});var pot=S(ihe=>{"use strict";Object.defineProperty(ihe,"__esModule",{value:!0});ihe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","INFO")},transformReply:void 0}});var mot=S(ahe=>{"use strict";Object.defineProperty(ahe,"__esModule",{value:!0});ahe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","KEYSLOT",t)},transformReply:void 0}});var got=S(ohe=>{"use strict";Object.defineProperty(ohe,"__esModule",{value:!0});ohe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","LINKS")},transformReply:{2:e=>e.map(t=>{let r=t;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var _ot=S(che=>{"use strict";Object.defineProperty(che,"__esModule",{value:!0});che.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CLUSTER","MEET",t,r.toString())},transformReply:void 0}});var Aot=S(uhe=>{"use strict";Object.defineProperty(uhe,"__esModule",{value:!0});uhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","MYID")},transformReply:void 0}});var Eot=S(lhe=>{"use strict";Object.defineProperty(lhe,"__esModule",{value:!0});lhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var yot=S(dhe=>{"use strict";Object.defineProperty(dhe,"__esModule",{value:!0});dhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","NODES")},transformReply:void 0}});var vot=S(fhe=>{"use strict";Object.defineProperty(fhe,"__esModule",{value:!0});fhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","REPLICAS",t)},transformReply:void 0}});var Sot=S(hhe=>{"use strict";Object.defineProperty(hhe,"__esModule",{value:!0});hhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","REPLICATE",t)},transformReply:void 0}});var Tot=S(phe=>{"use strict";Object.defineProperty(phe,"__esModule",{value:!0});phe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","RESET"),t?.mode&&e.push(t.mode)},transformReply:void 0}});var bot=S(mhe=>{"use strict";Object.defineProperty(mhe,"__esModule",{value:!0});mhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var Iot=S(ghe=>{"use strict";Object.defineProperty(ghe,"__esModule",{value:!0});ghe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CLUSTER","SET-CONFIG-EPOCH",t.toString())},transformReply:void 0}});var Rot=S(aL=>{"use strict";Object.defineProperty(aL,"__esModule",{value:!0});aL.CLUSTER_SLOT_STATES=void 0;aL.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};aL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("CLUSTER","SETSLOT",t.toString(),r),n&&e.push(n)},transformReply:void 0}});var xot=S(_he=>{"use strict";Object.defineProperty(_he,"__esModule",{value:!0});_he.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CLUSTER","SLOTS")},transformReply(e){return e.map(([t,r,n,...s])=>({from:t,to:r,master:Cot(n),replicas:s.map(Cot)}))}};function Cot(e){let[t,r,n]=e;return{host:t,port:r,id:n}}});var wot=S(Ahe=>{"use strict";Object.defineProperty(Ahe,"__esModule",{value:!0});Ahe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("COMMAND","COUNT")},transformReply:void 0}});var Not=S(Ehe=>{"use strict";Object.defineProperty(Ehe,"__esModule",{value:!0});Ehe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","GETKEYS"),e.push(...t)},transformReply:void 0}});var Oot=S(yhe=>{"use strict";Object.defineProperty(yhe,"__esModule",{value:!0});yhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","GETKEYSANDFLAGS"),e.push(...t)},transformReply(e){return e.map(t=>{let[r,n]=t;return{key:r,flags:n}})}}});var Dot=S(vhe=>{"use strict";Object.defineProperty(vhe,"__esModule",{value:!0});var CHr=We();vhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","INFO",...t)},transformReply(e){return e.map(t=>t?(0,CHr.transformCommandReply)(t):null)}}});var Pot=S(oL=>{"use strict";Object.defineProperty(oL,"__esModule",{value:!0});oL.COMMAND_LIST_FILTER_BY=void 0;oL.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};oL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("COMMAND","LIST"),t?.FILTERBY&&e.push("FILTERBY",t.FILTERBY.type,t.FILTERBY.value)},transformReply:void 0}});var Lot=S(She=>{"use strict";Object.defineProperty(She,"__esModule",{value:!0});var xHr=We();She.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("COMMAND")},transformReply(e){return e.map(xHr.transformCommandReply)}}});var Mot=S(The=>{"use strict";Object.defineProperty(The,"__esModule",{value:!0});var wHr=We();The.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("CONFIG","GET"),e.pushVariadic(t)},transformReply:{2:wHr.transformTuplesReply,3:void 0}}});var kot=S(bhe=>{"use strict";Object.defineProperty(bhe,"__esModule",{value:!0});bhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CONFIG","RESETSTAT")},transformReply:void 0}});var Bot=S(Ihe=>{"use strict";Object.defineProperty(Ihe,"__esModule",{value:!0});Ihe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("CONFIG","REWRITE")},transformReply:void 0}});var Uot=S(Rhe=>{"use strict";Object.defineProperty(Rhe,"__esModule",{value:!0});Rhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,...[t,r]){if(e.push("CONFIG","SET"),typeof t=="string"||t instanceof Buffer)e.push(t,r);else for(let[n,s]of Object.entries(t))e.push(n,s)},transformReply:void 0}});var Fot=S(Che=>{"use strict";Object.defineProperty(Che,"__esModule",{value:!0});Che.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("COPY"),e.pushKeys([t,r]),n?.DB&&e.push("DB",n.DB.toString()),n?.REPLACE&&e.push("REPLACE")},transformReply:void 0}});var $ot=S(xhe=>{"use strict";Object.defineProperty(xhe,"__esModule",{value:!0});xhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("DBSIZE")},transformReply:void 0}});var qot=S(whe=>{"use strict";Object.defineProperty(whe,"__esModule",{value:!0});whe.default={parseCommand(e,t){e.push("DECR"),e.pushKey(t)},transformReply:void 0}});var Hot=S(Nhe=>{"use strict";Object.defineProperty(Nhe,"__esModule",{value:!0});Nhe.default={parseCommand(e,t,r){e.push("DECRBY"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Vot=S(Ohe=>{"use strict";Object.defineProperty(Ohe,"__esModule",{value:!0});Ohe.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("DEL"),e.pushKeys(t)},transformReply:void 0}});var jot=S(cL=>{"use strict";Object.defineProperty(cL,"__esModule",{value:!0});cL.DelexCondition=void 0;cL.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};cL.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("DELEX"),e.pushKey(t),r&&(e.push(r.condition),e.push(r.matchValue))},transformReply:void 0}});var Kot=S(Dhe=>{"use strict";Object.defineProperty(Dhe,"__esModule",{value:!0});Dhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("DIGEST"),e.pushKey(t)},transformReply:void 0}});var Got=S(Phe=>{"use strict";Object.defineProperty(Phe,"__esModule",{value:!0});Phe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("DUMP"),e.pushKey(t)},transformReply:void 0}});var zot=S(Lhe=>{"use strict";Object.defineProperty(Lhe,"__esModule",{value:!0});Lhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ECHO",t)},transformReply:void 0}});var CS=S(uL=>{"use strict";Object.defineProperty(uL,"__esModule",{value:!0});uL.parseEvalArguments=void 0;function Yot(e,t,r){e.push(t),r?.keys?e.pushKeysLength(r.keys):e.push("0"),r?.arguments&&e.push(...r.arguments)}uL.parseEvalArguments=Yot;uL.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("EVAL"),Yot(...e)},transformReply:void 0}});var Wot=S(Gm=>{"use strict";var NHr=Gm&&Gm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OHr=Gm&&Gm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),DHr=Gm&&Gm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&NHr(t,e,r);return OHr(t,e),t};Object.defineProperty(Gm,"__esModule",{value:!0});var Qot=DHr(CS());Gm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("EVAL_RO"),(0,Qot.parseEvalArguments)(...e)},transformReply:Qot.default.transformReply}});var Jot=S(zm=>{"use strict";var PHr=zm&&zm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LHr=zm&&zm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),MHr=zm&&zm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&PHr(t,e,r);return LHr(t,e),t};Object.defineProperty(zm,"__esModule",{value:!0});var Xot=MHr(CS());zm.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("EVALSHA_RO"),(0,Xot.parseEvalArguments)(...e)},transformReply:Xot.default.transformReply}});var ect=S(Ym=>{"use strict";var kHr=Ym&&Ym.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),BHr=Ym&&Ym.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),UHr=Ym&&Ym.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&kHr(t,e,r);return BHr(t,e),t};Object.defineProperty(Ym,"__esModule",{value:!0});var Zot=UHr(CS());Ym.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("EVALSHA"),(0,Zot.parseEvalArguments)(...e)},transformReply:Zot.default.transformReply}});var rct=S(Mhe=>{"use strict";Object.defineProperty(Mhe,"__esModule",{value:!0});Mhe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){if(e.push("GEOADD"),e.pushKey(t),n?.condition?e.push(n.condition):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.CH&&e.push("CH"),Array.isArray(r))for(let s of r)tct(e,s);else tct(e,r)},transformReply:void 0};function tct(e,{longitude:t,latitude:r,member:n}){e.push(t.toString(),r.toString(),n)}});var nct=S(khe=>{"use strict";Object.defineProperty(khe,"__esModule",{value:!0});khe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("GEODIST"),e.pushKey(t),e.push(r,n),s&&e.push(s)},transformReply(e){return e===null?null:Number(e)}}});var sct=S(Bhe=>{"use strict";Object.defineProperty(Bhe,"__esModule",{value:!0});Bhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GEOHASH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var ict=S(Uhe=>{"use strict";Object.defineProperty(Uhe,"__esModule",{value:!0});Uhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GEOPOS"),e.pushKey(t),e.pushVariadic(r)},transformReply(e){return e.map(t=>{let r=t;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var wS=S(xS=>{"use strict";Object.defineProperty(xS,"__esModule",{value:!0});xS.parseGeoSearchOptions=xS.parseGeoSearchArguments=void 0;function act(e,t,r,n,s){e.pushKey(t),typeof r=="string"||r instanceof Buffer?e.push("FROMMEMBER",r):e.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?e.push("BYRADIUS",n.radius.toString(),n.unit):e.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),oct(e,s)}xS.parseGeoSearchArguments=act;function oct(e,t){t?.SORT&&e.push(t.SORT),t?.COUNT&&(typeof t.COUNT=="number"?e.push("COUNT",t.COUNT.toString()):(e.push("COUNT",t.COUNT.value.toString()),t.COUNT.ANY&&e.push("ANY")))}xS.parseGeoSearchOptions=oct;xS.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("GEOSEARCH"),act(e,t,r,n,s)},transformReply:void 0}});var dL=S(lL=>{"use strict";Object.defineProperty(lL,"__esModule",{value:!0});lL.parseGeoRadiusArguments=void 0;var FHr=wS();function cct(e,t,r,n,s,i){e.pushKey(t),e.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,FHr.parseGeoSearchOptions)(e,i)}lL.parseGeoRadiusArguments=cct;lL.default={IS_READ_ONLY:!1,parseCommand(...e){return e[0].push("GEORADIUS"),cct(...e)},transformReply:void 0}});var fL=S(Fh=>{"use strict";var $Hr=Fh&&Fh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Fh,"__esModule",{value:!0});Fh.GEO_REPLY_WITH=void 0;var uct=$Hr(wS());Fh.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};Fh.default={IS_READ_ONLY:uct.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i){uct.default.parseCommand(e,t,r,n,i),e.push(...s),e.preserve=s},transformReply(e,t){let r=new Set(t),n=0,s=r.has(Fh.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(Fh.GEO_REPLY_WITH.HASH)&&++n,a=r.has(Fh.GEO_REPLY_WITH.COORDINATES)&&++n;return e.map(o=>{let c=o,u={member:c[0]};if(s&&(u.distance=c[s]),i&&(u.hash=c[i]),a){let[l,d]=c[a];u.coordinates={longitude:l,latitude:d}}return u})}}});var lq=S(Ll=>{"use strict";var qHr=Ll&&Ll.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),HHr=Ll&&Ll.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),VHr=Ll&&Ll.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&qHr(t,e,r);return HHr(t,e),t},jHr=Ll&&Ll.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ll,"__esModule",{value:!0});Ll.parseGeoRadiusWithArguments=void 0;var lct=VHr(dL()),KHr=jHr(fL());function dct(e,t,r,n,s,i,a){(0,lct.parseGeoRadiusArguments)(e,t,r,n,s,a),e.pushVariadic(i),e.preserve=i}Ll.parseGeoRadiusWithArguments=dct;Ll.default={IS_READ_ONLY:lct.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUS"),dct(e,t,r,n,s,i,a)},transformReply:KHr.default.transformReply}});var fct=S(hL=>{"use strict";var GHr=hL&&hL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hL,"__esModule",{value:!0});var zHr=lq(),YHr=GHr(lq());hL.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUS_RO"),(0,zHr.parseGeoRadiusWithArguments)(...e)},transformReply:YHr.default.transformReply}});var pct=S(Qm=>{"use strict";var QHr=Qm&&Qm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),WHr=Qm&&Qm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),XHr=Qm&&Qm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&QHr(t,e,r);return WHr(t,e),t};Object.defineProperty(Qm,"__esModule",{value:!0});var hct=XHr(dL());Qm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUS_RO"),(0,hct.parseGeoRadiusArguments)(...e)},transformReply:hct.default.transformReply}});var gct=S(Wm=>{"use strict";var JHr=Wm&&Wm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ZHr=Wm&&Wm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),eVr=Wm&&Wm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&JHr(t,e,r);return ZHr(t,e),t};Object.defineProperty(Wm,"__esModule",{value:!0});var mct=eVr(dL());Wm.default={IS_READ_ONLY:mct.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUS"),(0,mct.parseGeoRadiusArguments)(e,t,r,n,s,a),a?.STOREDIST?(e.push("STOREDIST"),e.pushKey(i)):(e.push("STORE"),e.pushKey(i))},transformReply:void 0}});var mL=S(pL=>{"use strict";Object.defineProperty(pL,"__esModule",{value:!0});pL.parseGeoRadiusByMemberArguments=void 0;var tVr=wS();function _ct(e,t,r,n,s,i){e.pushKey(t),e.push(r,n.toString(),s),(0,tVr.parseGeoSearchOptions)(e,i)}pL.parseGeoRadiusByMemberArguments=_ct;pL.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("GEORADIUSBYMEMBER"),_ct(e,t,r,n,s,i)},transformReply:void 0}});var Fhe=S(NS=>{"use strict";var Act=NS&&NS.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NS,"__esModule",{value:!0});NS.parseGeoRadiusByMemberWithArguments=void 0;var rVr=Act(mL()),nVr=wS(),sVr=Act(fL());function Ect(e,t,r,n,s,i,a){e.pushKey(t),e.push(r,n.toString(),s),(0,nVr.parseGeoSearchOptions)(e,a),e.push(...i),e.preserve=i}NS.parseGeoRadiusByMemberWithArguments=Ect;NS.default={IS_READ_ONLY:rVr.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUSBYMEMBER"),Ect(e,t,r,n,s,i,a)},transformReply:sVr.default.transformReply}});var vct=S(Xm=>{"use strict";var iVr=Xm&&Xm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),aVr=Xm&&Xm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),oVr=Xm&&Xm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&iVr(t,e,r);return aVr(t,e),t};Object.defineProperty(Xm,"__esModule",{value:!0});var yct=oVr(Fhe());Xm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUSBYMEMBER_RO"),(0,yct.parseGeoRadiusByMemberWithArguments)(...e)},transformReply:yct.default.transformReply}});var Tct=S(Jm=>{"use strict";var cVr=Jm&&Jm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uVr=Jm&&Jm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),lVr=Jm&&Jm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&cVr(t,e,r);return uVr(t,e),t};Object.defineProperty(Jm,"__esModule",{value:!0});var Sct=lVr(mL());Jm.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...e){e[0].push("GEORADIUSBYMEMBER_RO"),(0,Sct.parseGeoRadiusByMemberArguments)(...e)},transformReply:Sct.default.transformReply}});var Ict=S(Zm=>{"use strict";var dVr=Zm&&Zm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),fVr=Zm&&Zm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),hVr=Zm&&Zm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&dVr(t,e,r);return fVr(t,e),t};Object.defineProperty(Zm,"__esModule",{value:!0});var bct=hVr(mL());Zm.default={IS_READ_ONLY:bct.default.IS_READ_ONLY,parseCommand(e,t,r,n,s,i,a){e.push("GEORADIUSBYMEMBER"),(0,bct.parseGeoRadiusByMemberArguments)(e,t,r,n,s,a),a?.STOREDIST?(e.push("STOREDIST"),e.pushKey(i)):(e.push("STORE"),e.pushKey(i))},transformReply:void 0}});var Rct=S($he=>{"use strict";Object.defineProperty($he,"__esModule",{value:!0});var pVr=wS();$he.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("GEOSEARCHSTORE"),t!==void 0&&e.pushKey(t),(0,pVr.parseGeoSearchArguments)(e,r,n,s,i),i?.STOREDIST&&e.push("STOREDIST")},transformReply:void 0}});var Cct=S(qhe=>{"use strict";Object.defineProperty(qhe,"__esModule",{value:!0});qhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("GET"),e.pushKey(t)},transformReply:void 0}});var xct=S(Hhe=>{"use strict";Object.defineProperty(Hhe,"__esModule",{value:!0});Hhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GETBIT"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var wct=S(Vhe=>{"use strict";Object.defineProperty(Vhe,"__esModule",{value:!0});Vhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("GETDEL"),e.pushKey(t)},transformReply:void 0}});var Nct=S(Khe=>{"use strict";Object.defineProperty(Khe,"__esModule",{value:!0});var jhe=We();Khe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){if(e.push("GETEX"),e.pushKey(t),"type"in r)switch(r.type){case"EX":case"PX":e.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":e.push(r.type,(0,jhe.transformEXAT)(r.value));break;case"PERSIST":e.push("PERSIST");break}else"EX"in r?e.push("EX",r.EX.toString()):"PX"in r?e.push("PX",r.PX.toString()):"EXAT"in r?e.push("EXAT",(0,jhe.transformEXAT)(r.EXAT)):"PXAT"in r?e.push("PXAT",(0,jhe.transformPXAT)(r.PXAT)):e.push("PERSIST")},transformReply:void 0}});var Oct=S(Ghe=>{"use strict";Object.defineProperty(Ghe,"__esModule",{value:!0});Ghe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("GETRANGE"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Dct=S(zhe=>{"use strict";Object.defineProperty(zhe,"__esModule",{value:!0});zhe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("GETSET"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Pct=S(Yhe=>{"use strict";Object.defineProperty(Yhe,"__esModule",{value:!0});Yhe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("EXISTS"),e.pushKeys(t)},transformReply:void 0}});var Lct=S(Qhe=>{"use strict";Object.defineProperty(Qhe,"__esModule",{value:!0});Qhe.default={parseCommand(e,t,r,n){e.push("EXPIRE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n)},transformReply:void 0}});var Mct=S(Whe=>{"use strict";Object.defineProperty(Whe,"__esModule",{value:!0});var mVr=We();Whe.default={parseCommand(e,t,r,n){e.push("EXPIREAT"),e.pushKey(t),e.push((0,mVr.transformEXAT)(r)),n&&e.push(n)},transformReply:void 0}});var kct=S(Xhe=>{"use strict";Object.defineProperty(Xhe,"__esModule",{value:!0});Xhe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("EXPIRETIME"),e.pushKey(t)},transformReply:void 0}});var Bct=S(gL=>{"use strict";Object.defineProperty(gL,"__esModule",{value:!0});gL.REDIS_FLUSH_MODES=void 0;gL.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};gL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FLUSHALL"),t&&e.push(t)},transformReply:void 0}});var Uct=S(Jhe=>{"use strict";Object.defineProperty(Jhe,"__esModule",{value:!0});Jhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FLUSHDB"),t&&e.push(t)},transformReply:void 0}});var $ct=S(eg=>{"use strict";var gVr=eg&&eg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_Vr=eg&&eg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),AVr=eg&&eg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&gVr(t,e,r);return _Vr(t,e),t};Object.defineProperty(eg,"__esModule",{value:!0});var Fct=AVr(CS());eg.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("FCALL"),(0,Fct.parseEvalArguments)(...e)},transformReply:Fct.default.transformReply}});var Hct=S(tg=>{"use strict";var EVr=tg&&tg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yVr=tg&&tg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),vVr=tg&&tg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&EVr(t,e,r);return yVr(t,e),t};Object.defineProperty(tg,"__esModule",{value:!0});var qct=vVr(CS());tg.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("FCALL_RO"),(0,qct.parseEvalArguments)(...e)},transformReply:qct.default.transformReply}});var Vct=S(Zhe=>{"use strict";Object.defineProperty(Zhe,"__esModule",{value:!0});Zhe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","DELETE",t)},transformReply:void 0}});var jct=S(epe=>{"use strict";Object.defineProperty(epe,"__esModule",{value:!0});epe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","DUMP")},transformReply:void 0}});var Kct=S(tpe=>{"use strict";Object.defineProperty(tpe,"__esModule",{value:!0});tpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","FLUSH"),t&&e.push(t)},transformReply:void 0}});var Gct=S(rpe=>{"use strict";Object.defineProperty(rpe,"__esModule",{value:!0});rpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","KILL")},transformReply:void 0}});var spe=S(npe=>{"use strict";Object.defineProperty(npe,"__esModule",{value:!0});npe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){e.push("FUNCTION","LIST"),t?.LIBRARYNAME&&e.push("LIBRARYNAME",t.LIBRARYNAME)},transformReply:{2:e=>e.map(t=>{let r=t;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}})}}),3:void 0}}});var zct=S(_L=>{"use strict";var SVr=_L&&_L.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_L,"__esModule",{value:!0});var ipe=SVr(spe());_L.default={NOT_KEYED_COMMAND:ipe.default.NOT_KEYED_COMMAND,IS_READ_ONLY:ipe.default.IS_READ_ONLY,parseCommand(...e){ipe.default.parseCommand(...e),e[0].push("WITHCODE")},transformReply:{2:e=>e.map(t=>{let r=t;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}}),library_code:r[7]}}),3:void 0}}});var Yct=S(ape=>{"use strict";Object.defineProperty(ape,"__esModule",{value:!0});ape.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("FUNCTION","LOAD"),r?.REPLACE&&e.push("REPLACE"),e.push(t)},transformReply:void 0}});var Qct=S(ope=>{"use strict";Object.defineProperty(ope,"__esModule",{value:!0});ope.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("FUNCTION","RESTORE",t),r?.mode&&e.push(r.mode)},transformReply:void 0}});var Wct=S(cpe=>{"use strict";Object.defineProperty(cpe,"__esModule",{value:!0});var TVr=We();cpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FUNCTION","STATS")},transformReply:{2:e=>({running_script:bVr(e[1]),engines:IVr(e[3])}),3:void 0}};function bVr(e){if((0,TVr.isNullReply)(e))return null;let t=e;return{name:t[1],command:t[3],duration_ms:t[5]}}function IVr(e){let t=e,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty(upe,"__esModule",{value:!0});upe.default={parseCommand(e,t,r){e.push("HDEL"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var dpe=S(lpe=>{"use strict";Object.defineProperty(lpe,"__esModule",{value:!0});lpe.default={parseCommand(e,t,r){e.push("HELLO"),t&&(e.push(t.toString()),r?.AUTH&&e.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&e.push("SETNAME",r.SETNAME))},transformReply:{2:e=>({server:e[1],version:e[3],proto:e[5],id:e[7],mode:e[9],role:e[11],modules:e[13]}),3:void 0}}});var Jct=S(fpe=>{"use strict";Object.defineProperty(fpe,"__esModule",{value:!0});fpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HEXISTS"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Zct=S(AL=>{"use strict";Object.defineProperty(AL,"__esModule",{value:!0});AL.HASH_EXPIRATION=void 0;AL.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};AL.default={parseCommand(e,t,r,n,s){e.push("HEXPIRE"),e.pushKey(t),e.push(n.toString()),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var eut=S(hpe=>{"use strict";Object.defineProperty(hpe,"__esModule",{value:!0});var RVr=We();hpe.default={parseCommand(e,t,r,n,s){e.push("HEXPIREAT"),e.pushKey(t),e.push((0,RVr.transformEXAT)(n)),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var tut=S(EL=>{"use strict";Object.defineProperty(EL,"__esModule",{value:!0});EL.HASH_EXPIRATION_TIME=void 0;EL.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};EL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HEXPIRETIME"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var rut=S(ppe=>{"use strict";Object.defineProperty(ppe,"__esModule",{value:!0});ppe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HGET"),e.pushKey(t),e.push(r)},transformReply:void 0}});var nut=S(mpe=>{"use strict";Object.defineProperty(mpe,"__esModule",{value:!0});var CVr=We();mpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HGETALL"),e.pushKey(t)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:CVr.transformTuplesReply,3:void 0}}});var sut=S(gpe=>{"use strict";Object.defineProperty(gpe,"__esModule",{value:!0});gpe.default={parseCommand(e,t,r){e.push("HGETDEL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var iut=S(_pe=>{"use strict";Object.defineProperty(_pe,"__esModule",{value:!0});_pe.default={parseCommand(e,t,r,n){e.push("HGETEX"),e.pushKey(t),n?.expiration&&(typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="PERSIST"?e.push("PERSIST"):e.push(n.expiration.type,n.expiration.value.toString())),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var aut=S(Ape=>{"use strict";Object.defineProperty(Ape,"__esModule",{value:!0});Ape.default={parseCommand(e,t,r,n){e.push("HINCRBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:void 0}});var out=S(Epe=>{"use strict";Object.defineProperty(Epe,"__esModule",{value:!0});Epe.default={parseCommand(e,t,r,n){e.push("HINCRBYFLOAT"),e.pushKey(t),e.push(r,n.toString())},transformReply:void 0}});var cut=S(ype=>{"use strict";Object.defineProperty(ype,"__esModule",{value:!0});ype.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HKEYS"),e.pushKey(t)},transformReply:void 0}});var uut=S(vpe=>{"use strict";Object.defineProperty(vpe,"__esModule",{value:!0});vpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HLEN"),e.pushKey(t)},transformReply:void 0}});var lut=S(Spe=>{"use strict";Object.defineProperty(Spe,"__esModule",{value:!0});Spe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HMGET"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var dut=S(Tpe=>{"use strict";Object.defineProperty(Tpe,"__esModule",{value:!0});Tpe.default={parseCommand(e,t,r){e.push("HPERSIST"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var fut=S(bpe=>{"use strict";Object.defineProperty(bpe,"__esModule",{value:!0});bpe.default={parseCommand(e,t,r,n,s){e.push("HPEXPIRE"),e.pushKey(t),e.push(n.toString()),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var hut=S(Ipe=>{"use strict";Object.defineProperty(Ipe,"__esModule",{value:!0});var xVr=We();Ipe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("HPEXPIREAT"),e.pushKey(t),e.push((0,xVr.transformPXAT)(n)),s&&e.push(s),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var put=S(Rpe=>{"use strict";Object.defineProperty(Rpe,"__esModule",{value:!0});Rpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HPEXPIRETIME"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var mut=S(Cpe=>{"use strict";Object.defineProperty(Cpe,"__esModule",{value:!0});Cpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HPTTL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var gut=S(xpe=>{"use strict";Object.defineProperty(xpe,"__esModule",{value:!0});xpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HRANDFIELD"),e.pushKey(t),e.push(r.toString(),"WITHVALUES")},transformReply:{2:e=>{let t=[],r=0;for(;re.map(t=>{let[r,n]=t;return{field:r,value:n}})}}});var _ut=S(wpe=>{"use strict";Object.defineProperty(wpe,"__esModule",{value:!0});wpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HRANDFIELD"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Aut=S(Npe=>{"use strict";Object.defineProperty(Npe,"__esModule",{value:!0});Npe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("HRANDFIELD"),e.pushKey(t)},transformReply:void 0}});var yL=S(OS=>{"use strict";Object.defineProperty(OS,"__esModule",{value:!0});OS.pushScanArguments=OS.parseScanArguments=void 0;function Eut(e,t,r){e.push(t),r?.MATCH&&e.push("MATCH",r.MATCH),r?.COUNT&&e.push("COUNT",r.COUNT.toString())}OS.parseScanArguments=Eut;function wVr(e,t,r){return e.push(t.toString()),r?.MATCH&&e.push("MATCH",r.MATCH),r?.COUNT&&e.push("COUNT",r.COUNT.toString()),e}OS.pushScanArguments=wVr;OS.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SCAN"),Eut(e,t,r),r?.TYPE&&e.push("TYPE",r.TYPE)},transformReply([e,t]){return{cursor:e,keys:t}}}});var Dpe=S(Ope=>{"use strict";Object.defineProperty(Ope,"__esModule",{value:!0});var NVr=yL();Ope.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("HSCAN"),e.pushKey(t),(0,NVr.parseScanArguments)(e,r,n)},transformReply([e,t]){let r=[],n=0;for(;n{"use strict";var OVr=vL&&vL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vL,"__esModule",{value:!0});var DVr=OVr(Dpe());vL.default={IS_READ_ONLY:!0,parseCommand(...e){let t=e[0];DVr.default.parseCommand(...e),t.push("NOVALUES")},transformReply([e,t]){return{cursor:e,fields:t}}}});var Sut=S(Ppe=>{"use strict";Object.defineProperty(Ppe,"__esModule",{value:!0});Ppe.default={parseCommand(e,...[t,r,n]){e.push("HSET"),e.pushKey(t),typeof r=="string"||typeof r=="number"||r instanceof Buffer?e.push(DS(r),DS(n)):r instanceof Map?PVr(e,r):Array.isArray(r)?vut(e,r):LVr(e,r)},transformReply:void 0};function PVr(e,t){for(let[r,n]of t.entries())e.push(DS(r),DS(n))}function vut(e,t){for(let r of t){if(Array.isArray(r)){vut(e,r);continue}e.push(DS(r))}}function LVr(e,t){for(let r of Object.keys(t))e.push(DS(r),DS(t[r]))}function DS(e){return typeof e=="number"?e.toString():e}});var but=S(Lpe=>{"use strict";Object.defineProperty(Lpe,"__esModule",{value:!0});var MVr=Uh();Lpe.default={parseCommand(e,t,r,n){e.push("HSETEX"),e.pushKey(t),n?.mode&&e.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="KEEPTTL"?e.push("KEEPTTL"):e.push(n.expiration.type,n.expiration.value.toString())),e.push("FIELDS"),r instanceof Map?kVr(e,r):Array.isArray(r)?BVr(e,r):UVr(e,r)},transformReply:void 0};function kVr(e,t){e.push(t.size.toString());for(let[r,n]of t.entries())e.push(SL(r),SL(n))}function BVr(e,t){let r=new MVr.BasicCommandParser;if(Tut(r,t),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");e.push((r.redisArgs.length/2).toString()),e.push(...r.redisArgs)}function Tut(e,t){for(let r of t){if(Array.isArray(r)){Tut(e,r);continue}e.push(SL(r))}}function UVr(e,t){let r=Object.keys(t).length;if(r==0)throw Error("object without keys");e.push(r.toString());for(let n of Object.keys(t))e.push(SL(n),SL(t[n]))}function SL(e){return typeof e=="number"?e.toString():e}});var Iut=S(Mpe=>{"use strict";Object.defineProperty(Mpe,"__esModule",{value:!0});Mpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("HSETNX"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var Rut=S(kpe=>{"use strict";Object.defineProperty(kpe,"__esModule",{value:!0});kpe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HSTRLEN"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Cut=S(Bpe=>{"use strict";Object.defineProperty(Bpe,"__esModule",{value:!0});Bpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("HTTL"),e.pushKey(t),e.push("FIELDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var xut=S(Upe=>{"use strict";Object.defineProperty(Upe,"__esModule",{value:!0});Upe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("HVALS"),e.pushKey(t)},transformReply:void 0}});var Nut=S(Fpe=>{"use strict";Object.defineProperty(Fpe,"__esModule",{value:!0});function wut(e){let t=[];for(let r=0;r{let r=t;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function $Vr(e){let t={},r=e[0];for(let n=0;ne===null?null:$Vr(e),3:void 0},unstableResp3:!0}});var Out=S($pe=>{"use strict";Object.defineProperty($pe,"__esModule",{value:!0});$pe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("HOTKEYS","RESET")},transformReply:void 0}});var Dut=S(TL=>{"use strict";Object.defineProperty(TL,"__esModule",{value:!0});TL.HOTKEYS_METRICS=void 0;TL.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};TL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t){if(e.push("HOTKEYS","START"),e.push("METRICS",t.METRICS.count.toString()),t.METRICS.CPU&&e.push("CPU"),t.METRICS.NET&&e.push("NET"),t.COUNT!==void 0&&e.push("COUNT",t.COUNT.toString()),t.DURATION!==void 0&&e.push("DURATION",t.DURATION.toString()),t.SAMPLE!==void 0&&e.push("SAMPLE",t.SAMPLE.toString()),t.SLOTS!==void 0){e.push("SLOTS",t.SLOTS.count.toString());for(let r of t.SLOTS.slots)e.push(r.toString())}},transformReply:void 0}});var Put=S(qpe=>{"use strict";Object.defineProperty(qpe,"__esModule",{value:!0});qpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("HOTKEYS","STOP")},transformReply:void 0}});var Lut=S(Hpe=>{"use strict";Object.defineProperty(Hpe,"__esModule",{value:!0});Hpe.default={parseCommand(e,t){e.push("INCR"),e.pushKey(t)},transformReply:void 0}});var Mut=S(Vpe=>{"use strict";Object.defineProperty(Vpe,"__esModule",{value:!0});Vpe.default={parseCommand(e,t,r){e.push("INCRBY"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var kut=S(jpe=>{"use strict";Object.defineProperty(jpe,"__esModule",{value:!0});jpe.default={parseCommand(e,t,r){e.push("INCRBYFLOAT"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var But=S(Kpe=>{"use strict";Object.defineProperty(Kpe,"__esModule",{value:!0});Kpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("INFO"),t&&e.push(t)},transformReply:void 0}});var Uut=S(Gpe=>{"use strict";Object.defineProperty(Gpe,"__esModule",{value:!0});Gpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("KEYS",t)},transformReply:void 0}});var Fut=S(zpe=>{"use strict";Object.defineProperty(zpe,"__esModule",{value:!0});zpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LASTSAVE")},transformReply:void 0}});var $ut=S(Ype=>{"use strict";Object.defineProperty(Ype,"__esModule",{value:!0});Ype.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LATENCY","DOCTOR")},transformReply:void 0}});var Qpe=S(bL=>{"use strict";Object.defineProperty(bL,"__esModule",{value:!0});bL.LATENCY_EVENTS=void 0;bL.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};bL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LATENCY","GRAPH",t)},transformReply:void 0}});var qut=S(Wpe=>{"use strict";Object.defineProperty(Wpe,"__esModule",{value:!0});Wpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LATENCY","HISTORY",t)},transformReply:void 0}});var Hut=S(Xpe=>{"use strict";Object.defineProperty(Xpe,"__esModule",{value:!0});Xpe.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("LATENCY","LATEST")},transformReply:void 0}});var Vut=S(IL=>{"use strict";Object.defineProperty(IL,"__esModule",{value:!0});IL.LATENCY_EVENTS=void 0;var qVr=Qpe();Object.defineProperty(IL,"LATENCY_EVENTS",{enumerable:!0,get:function(){return qVr.LATENCY_EVENTS}});IL.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,...t){let r=["LATENCY","RESET"];t.length>0&&r.push(...t),e.push(...r)},transformReply:void 0}});var dq=S(Jpe=>{"use strict";Object.defineProperty(Jpe,"__esModule",{value:!0});Jpe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("LCS"),e.pushKeys([t,r])},transformReply:void 0}});var Zpe=S(RL=>{"use strict";var HVr=RL&&RL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RL,"__esModule",{value:!0});var jut=HVr(dq());RL.default={IS_READ_ONLY:jut.default.IS_READ_ONLY,parseCommand(e,t,r,n){jut.default.parseCommand(e,t,r),e.push("IDX"),n?.MINMATCHLEN&&e.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:e=>({matches:e[1],len:e[3]}),3:void 0}}});var Gut=S(CL=>{"use strict";var VVr=CL&&CL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CL,"__esModule",{value:!0});var Kut=VVr(Zpe());CL.default={IS_READ_ONLY:Kut.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Kut.default.parseCommand(...e),t.push("WITHMATCHLEN")},transformReply:{2:e=>({matches:e[1],len:e[3]}),3:void 0}}});var Yut=S(xL=>{"use strict";var jVr=xL&&xL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xL,"__esModule",{value:!0});var zut=jVr(dq());xL.default={IS_READ_ONLY:zut.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];zut.default.parseCommand(...e),t.push("LEN")},transformReply:void 0}});var Qut=S(eme=>{"use strict";Object.defineProperty(eme,"__esModule",{value:!0});eme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("LINDEX"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Wut=S(tme=>{"use strict";Object.defineProperty(tme,"__esModule",{value:!0});tme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("LINSERT"),e.pushKey(t),e.push(r,n,s)},transformReply:void 0}});var Xut=S(rme=>{"use strict";Object.defineProperty(rme,"__esModule",{value:!0});rme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("LLEN"),e.pushKey(t)},transformReply:void 0}});var Jut=S(nme=>{"use strict";Object.defineProperty(nme,"__esModule",{value:!0});nme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("LMOVE"),e.pushKeys([t,r]),e.push(n,s)},transformReply:void 0}});var Zut=S(sme=>{"use strict";Object.defineProperty(sme,"__esModule",{value:!0});sme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,...r){e.push("LOLWUT"),t&&(e.push("VERSION",t.toString()),e.pushVariadic(r.map(String)))},transformReply:void 0}});var ame=S(ime=>{"use strict";Object.defineProperty(ime,"__esModule",{value:!0});ime.default={parseCommand(e,t){e.push("LPOP"),e.pushKey(t)},transformReply:void 0}});var elt=S(wL=>{"use strict";var KVr=wL&&wL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(wL,"__esModule",{value:!0});var GVr=KVr(ame());wL.default={IS_READ_ONLY:!1,parseCommand(e,t,r){GVr.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var cme=S(ome=>{"use strict";Object.defineProperty(ome,"__esModule",{value:!0});ome.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LPOS"),e.pushKey(t),e.push(r),n?.RANK!==void 0&&e.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&e.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var tlt=S(NL=>{"use strict";var zVr=NL&&NL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NL,"__esModule",{value:!0});var ume=zVr(cme());NL.default={CACHEABLE:ume.default.CACHEABLE,IS_READ_ONLY:ume.default.IS_READ_ONLY,parseCommand(e,t,r,n,s){ume.default.parseCommand(e,t,r,s),e.push("COUNT",n.toString())},transformReply:void 0}});var rlt=S(lme=>{"use strict";Object.defineProperty(lme,"__esModule",{value:!0});lme.default={parseCommand(e,t,r){e.push("LPUSH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var nlt=S(dme=>{"use strict";Object.defineProperty(dme,"__esModule",{value:!0});dme.default={parseCommand(e,t,r){e.push("LPUSHX"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var slt=S(fme=>{"use strict";Object.defineProperty(fme,"__esModule",{value:!0});fme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LRANGE"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var ilt=S(hme=>{"use strict";Object.defineProperty(hme,"__esModule",{value:!0});hme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LREM"),e.pushKey(t),e.push(r.toString()),e.push(n)},transformReply:void 0}});var alt=S(pme=>{"use strict";Object.defineProperty(pme,"__esModule",{value:!0});pme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("LSET"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var olt=S(mme=>{"use strict";Object.defineProperty(mme,"__esModule",{value:!0});mme.default={parseCommand(e,t,r,n){e.push("LTRIM"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var clt=S(gme=>{"use strict";Object.defineProperty(gme,"__esModule",{value:!0});gme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","DOCTOR")},transformReply:void 0}});var ult=S(_me=>{"use strict";Object.defineProperty(_me,"__esModule",{value:!0});_me.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var llt=S(Ame=>{"use strict";Object.defineProperty(Ame,"__esModule",{value:!0});Ame.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e){e.push("MEMORY","PURGE")},transformReply:void 0}});var dlt=S(Eme=>{"use strict";Object.defineProperty(Eme,"__esModule",{value:!0});var YVr=We();Eme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MEMORY","STATS")},transformReply:{2:(e,t,r)=>{let n={},s=0;for(;s{"use strict";Object.defineProperty(yme,"__esModule",{value:!0});yme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("MEMORY","USAGE"),e.pushKey(t),r?.SAMPLES&&e.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var hlt=S(vme=>{"use strict";Object.defineProperty(vme,"__esModule",{value:!0});vme.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("MGET"),e.pushKeys(t)},transformReply:void 0}});var plt=S(Sme=>{"use strict";Object.defineProperty(Sme,"__esModule",{value:!0});Sme.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i,a){e.push("MIGRATE",t,r.toString());let o=Array.isArray(n);o?e.push(""):e.push(n),e.push(s.toString(),i.toString()),a?.COPY&&e.push("COPY"),a?.REPLACE&&e.push("REPLACE"),a?.AUTH&&(a.AUTH.username?e.push("AUTH2",a.AUTH.username,a.AUTH.password):e.push("AUTH",a.AUTH.password)),o&&(e.push("KEYS"),e.pushVariadic(n))},transformReply:void 0}});var mlt=S(Tme=>{"use strict";Object.defineProperty(Tme,"__esModule",{value:!0});Tme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("MODULE","LIST")},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],ver:r[3]}}),3:void 0}}});var glt=S(bme=>{"use strict";Object.defineProperty(bme,"__esModule",{value:!0});bme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("MODULE","LOAD",t),r&&e.push(...r)},transformReply:void 0}});var _lt=S(Ime=>{"use strict";Object.defineProperty(Ime,"__esModule",{value:!0});Ime.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("MODULE","UNLOAD",t)},transformReply:void 0}});var Alt=S(Rme=>{"use strict";Object.defineProperty(Rme,"__esModule",{value:!0});Rme.default={parseCommand(e,t,r){e.push("MOVE"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Cme=S(OL=>{"use strict";Object.defineProperty(OL,"__esModule",{value:!0});OL.parseMSetArguments=void 0;function Elt(e,t){if(Array.isArray(t)){if(t.length==0)throw new Error("empty toSet Argument");if(Array.isArray(t[0]))for(let r of t)e.pushKey(r[0]),e.push(r[1]);else{let r=t;for(let n=0;n{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.parseMSetExArguments=To.ExpirationMode=To.SetMode=void 0;var ylt=We();To.SetMode={XX:"XX",NX:"NX"};To.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function vlt(e,t){let r=[];if(Array.isArray(t)){if(t.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(t[0]))r=t;else{let n=t;for(let s=0;s{"use strict";Object.defineProperty(xme,"__esModule",{value:!0});var QVr=Cme();xme.default={IS_READ_ONLY:!0,parseCommand(e,t){return e.push("MSETNX"),(0,QVr.parseMSetArguments)(e,t)},transformReply:void 0}});var blt=S(wme=>{"use strict";Object.defineProperty(wme,"__esModule",{value:!0});wme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","ENCODING"),e.pushKey(t)},transformReply:void 0}});var Ilt=S(Nme=>{"use strict";Object.defineProperty(Nme,"__esModule",{value:!0});Nme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","FREQ"),e.pushKey(t)},transformReply:void 0}});var Rlt=S(Ome=>{"use strict";Object.defineProperty(Ome,"__esModule",{value:!0});Ome.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","IDLETIME"),e.pushKey(t)},transformReply:void 0}});var Clt=S(Dme=>{"use strict";Object.defineProperty(Dme,"__esModule",{value:!0});Dme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("OBJECT","REFCOUNT"),e.pushKey(t)},transformReply:void 0}});var xlt=S(Pme=>{"use strict";Object.defineProperty(Pme,"__esModule",{value:!0});Pme.default={parseCommand(e,t){e.push("PERSIST"),e.pushKey(t)},transformReply:void 0}});var wlt=S(Lme=>{"use strict";Object.defineProperty(Lme,"__esModule",{value:!0});Lme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("PEXPIRE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n)},transformReply:void 0}});var Nlt=S(Mme=>{"use strict";Object.defineProperty(Mme,"__esModule",{value:!0});var WVr=We();Mme.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("PEXPIREAT"),e.pushKey(t),e.push((0,WVr.transformPXAT)(r)),n&&e.push(n)},transformReply:void 0}});var Olt=S(kme=>{"use strict";Object.defineProperty(kme,"__esModule",{value:!0});kme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PEXPIRETIME"),e.pushKey(t)},transformReply:void 0}});var Dlt=S(Bme=>{"use strict";Object.defineProperty(Bme,"__esModule",{value:!0});Bme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("PFADD"),e.pushKey(t),r&&e.pushVariadic(r)},transformReply:void 0}});var Plt=S(Ume=>{"use strict";Object.defineProperty(Ume,"__esModule",{value:!0});Ume.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PFCOUNT"),e.pushKeys(t)},transformReply:void 0}});var Llt=S(Fme=>{"use strict";Object.defineProperty(Fme,"__esModule",{value:!0});Fme.default={parseCommand(e,t,r){e.push("PFMERGE"),e.pushKey(t),r&&e.pushKeys(r)},transformReply:void 0}});var Mlt=S($me=>{"use strict";Object.defineProperty($me,"__esModule",{value:!0});$me.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PING"),t&&e.push(t)},transformReply:void 0}});var klt=S(qme=>{"use strict";Object.defineProperty(qme,"__esModule",{value:!0});qme.default={parseCommand(e,t,r,n){e.push("PSETEX"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Blt=S(Hme=>{"use strict";Object.defineProperty(Hme,"__esModule",{value:!0});Hme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PTTL"),e.pushKey(t)},transformReply:void 0}});var Ult=S(Vme=>{"use strict";Object.defineProperty(Vme,"__esModule",{value:!0});Vme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(e,t,r){e.push("PUBLISH",t,r)},transformReply:void 0}});var Flt=S(jme=>{"use strict";Object.defineProperty(jme,"__esModule",{value:!0});jme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","CHANNELS"),t&&e.push(t)},transformReply:void 0}});var $lt=S(Kme=>{"use strict";Object.defineProperty(Kme,"__esModule",{value:!0});Kme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("PUBSUB","NUMPAT")},transformReply:void 0}});var qlt=S(Gme=>{"use strict";Object.defineProperty(Gme,"__esModule",{value:!0});Gme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","NUMSUB"),t&&e.pushVariadic(t)},transformReply(e){let t=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(zme,"__esModule",{value:!0});zme.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","SHARDNUMSUB"),t&&e.pushVariadic(t)},transformReply(e){let t=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(Yme,"__esModule",{value:!0});Yme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("PUBSUB","SHARDCHANNELS"),t&&e.push(t)},transformReply:void 0}});var jlt=S(Qme=>{"use strict";Object.defineProperty(Qme,"__esModule",{value:!0});Qme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("RANDOMKEY")},transformReply:void 0}});var Klt=S(Wme=>{"use strict";Object.defineProperty(Wme,"__esModule",{value:!0});Wme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("READONLY")},transformReply:void 0}});var Glt=S(Xme=>{"use strict";Object.defineProperty(Xme,"__esModule",{value:!0});Xme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("RENAME"),e.pushKeys([t,r])},transformReply:void 0}});var zlt=S(Jme=>{"use strict";Object.defineProperty(Jme,"__esModule",{value:!0});Jme.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("RENAMENX"),e.pushKeys([t,r])},transformReply:void 0}});var Ylt=S(Zme=>{"use strict";Object.defineProperty(Zme,"__esModule",{value:!0});Zme.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("REPLICAOF",t,r.toString())},transformReply:void 0}});var Qlt=S(ege=>{"use strict";Object.defineProperty(ege,"__esModule",{value:!0});ege.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("RESTORE-ASKING")},transformReply:void 0}});var Wlt=S(tge=>{"use strict";Object.defineProperty(tge,"__esModule",{value:!0});tge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("RESTORE"),e.pushKey(t),e.push(r.toString(),n),s?.REPLACE&&e.push("REPLACE"),s?.ABSTTL&&e.push("ABSTTL"),s?.IDLETIME&&e.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&e.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var Xlt=S(rge=>{"use strict";Object.defineProperty(rge,"__esModule",{value:!0});rge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("ROLE")},transformReply(e){switch(e[0]){case"master":{let[t,r,n]=e;return{role:t,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[t,r,n,s,i]=e;return{role:t,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[t,r]=e;return{role:t,masterNames:r}}}}}});var Jlt=S(nge=>{"use strict";Object.defineProperty(nge,"__esModule",{value:!0});nge.default={parseCommand(e,t,r){e.push("RPOP"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var Zlt=S(sge=>{"use strict";Object.defineProperty(sge,"__esModule",{value:!0});sge.default={parseCommand(e,t){e.push("RPOP"),e.pushKey(t)},transformReply:void 0}});var edt=S(ige=>{"use strict";Object.defineProperty(ige,"__esModule",{value:!0});ige.default={parseCommand(e,t,r){e.push("RPOPLPUSH"),e.pushKeys([t,r])},transformReply:void 0}});var tdt=S(age=>{"use strict";Object.defineProperty(age,"__esModule",{value:!0});age.default={parseCommand(e,t,r){e.push("RPUSH"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var rdt=S(oge=>{"use strict";Object.defineProperty(oge,"__esModule",{value:!0});oge.default={parseCommand(e,t,r){e.push("RPUSHX"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var ndt=S(cge=>{"use strict";Object.defineProperty(cge,"__esModule",{value:!0});cge.default={parseCommand(e,t,r){e.push("SADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var sdt=S(uge=>{"use strict";Object.defineProperty(uge,"__esModule",{value:!0});uge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCARD"),e.pushKey(t)},transformReply:void 0}});var idt=S(lge=>{"use strict";Object.defineProperty(lge,"__esModule",{value:!0});lge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","DEBUG",t)},transformReply:void 0}});var adt=S(dge=>{"use strict";Object.defineProperty(dge,"__esModule",{value:!0});dge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","EXISTS"),e.pushVariadic(t)},transformReply:void 0}});var odt=S(fge=>{"use strict";Object.defineProperty(fge,"__esModule",{value:!0});fge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","FLUSH"),t&&e.push(t)},transformReply:void 0}});var cdt=S(hge=>{"use strict";Object.defineProperty(hge,"__esModule",{value:!0});hge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("SCRIPT","KILL")},transformReply:void 0}});var udt=S(pge=>{"use strict";Object.defineProperty(pge,"__esModule",{value:!0});pge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SCRIPT","LOAD",t)},transformReply:void 0}});var ldt=S(mge=>{"use strict";Object.defineProperty(mge,"__esModule",{value:!0});mge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SDIFF"),e.pushKeys(t)},transformReply:void 0}});var ddt=S(gge=>{"use strict";Object.defineProperty(gge,"__esModule",{value:!0});gge.default={parseCommand(e,t,r){e.push("SDIFFSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var fdt=S(_ge=>{"use strict";Object.defineProperty(_ge,"__esModule",{value:!0});_ge.default={parseCommand(e,t,r,n){e.push("SET"),e.pushKey(t),e.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?e.push(n.expiration):n.expiration.type==="KEEPTTL"?e.push("KEEPTTL"):e.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?e.push("EX",n.EX.toString()):n?.PX!==void 0?e.push("PX",n.PX.toString()):n?.EXAT!==void 0?e.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?e.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&e.push("KEEPTTL"),n?.condition?(e.push(n.condition),n?.matchValue!==void 0&&e.push(n.matchValue)):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.GET&&e.push("GET")},transformReply:void 0}});var hdt=S(Age=>{"use strict";Object.defineProperty(Age,"__esModule",{value:!0});Age.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("SETBIT"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var pdt=S(Ege=>{"use strict";Object.defineProperty(Ege,"__esModule",{value:!0});Ege.default={parseCommand(e,t,r,n){e.push("SETEX"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var mdt=S(yge=>{"use strict";Object.defineProperty(yge,"__esModule",{value:!0});yge.default={parseCommand(e,t,r){e.push("SETNX"),e.pushKey(t),e.push(r)},transformReply:void 0}});var gdt=S(vge=>{"use strict";Object.defineProperty(vge,"__esModule",{value:!0});vge.default={parseCommand(e,t,r,n){e.push("SETRANGE"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var _dt=S(Sge=>{"use strict";Object.defineProperty(Sge,"__esModule",{value:!0});Sge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SINTER"),e.pushKeys(t)},transformReply:void 0}});var Adt=S(Tge=>{"use strict";Object.defineProperty(Tge,"__esModule",{value:!0});Tge.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SINTERCARD"),e.pushKeysLength(t),typeof r=="number"?e.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&e.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var Edt=S(bge=>{"use strict";Object.defineProperty(bge,"__esModule",{value:!0});bge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SINTERSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var ydt=S(Ige=>{"use strict";Object.defineProperty(Ige,"__esModule",{value:!0});Ige.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SISMEMBER"),e.pushKey(t),e.push(r)},transformReply:void 0}});var vdt=S(Rge=>{"use strict";Object.defineProperty(Rge,"__esModule",{value:!0});Rge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SMEMBERS"),e.pushKey(t)},transformReply:{2:void 0,3:void 0}}});var Sdt=S(Cge=>{"use strict";Object.defineProperty(Cge,"__esModule",{value:!0});Cge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SMISMEMBER"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Tdt=S(xge=>{"use strict";Object.defineProperty(xge,"__esModule",{value:!0});xge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("SMOVE"),e.pushKeys([t,r]),e.push(n)},transformReply:void 0}});var fq=S(DL=>{"use strict";Object.defineProperty(DL,"__esModule",{value:!0});DL.parseSortArguments=void 0;function bdt(e,t,r){if(e.pushKey(t),r?.BY&&e.push("BY",r.BY),r?.LIMIT&&e.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)e.push("GET",n);else e.push("GET",r.GET);r?.DIRECTION&&e.push(r.DIRECTION),r?.ALPHA&&e.push("ALPHA")}DL.parseSortArguments=bdt;DL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SORT"),bdt(e,t,r)},transformReply:void 0}});var Rdt=S(rg=>{"use strict";var XVr=rg&&rg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),JVr=rg&&rg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),ZVr=rg&&rg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&XVr(t,e,r);return JVr(t,e),t};Object.defineProperty(rg,"__esModule",{value:!0});var Idt=ZVr(fq());rg.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("SORT_RO"),(0,Idt.parseSortArguments)(...e)},transformReply:Idt.default.transformReply}});var Cdt=S(PL=>{"use strict";var e7r=PL&&PL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PL,"__esModule",{value:!0});var t7r=e7r(fq());PL.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){t7r.default.parseCommand(e,t,n),e.push("STORE",r)},transformReply:void 0}});var xdt=S(wge=>{"use strict";Object.defineProperty(wge,"__esModule",{value:!0});wge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SPOP"),e.pushKey(t),e.push(r.toString())},transformReply:void 0}});var wdt=S(Nge=>{"use strict";Object.defineProperty(Nge,"__esModule",{value:!0});Nge.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("SPOP"),e.pushKey(t)},transformReply:void 0}});var Ndt=S(Oge=>{"use strict";Object.defineProperty(Oge,"__esModule",{value:!0});Oge.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("SPUBLISH"),e.pushKey(t),e.push(r)},transformReply:void 0}});var Pge=S(Dge=>{"use strict";Object.defineProperty(Dge,"__esModule",{value:!0});Dge.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("SRANDMEMBER"),e.pushKey(t)},transformReply:void 0}});var Ddt=S(LL=>{"use strict";var r7r=LL&&LL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LL,"__esModule",{value:!0});var Odt=r7r(Pge());LL.default={IS_READ_ONLY:Odt.default.IS_READ_ONLY,parseCommand(e,t,r){Odt.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var Pdt=S(Lge=>{"use strict";Object.defineProperty(Lge,"__esModule",{value:!0});Lge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SREM"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var Ldt=S(Mge=>{"use strict";Object.defineProperty(Mge,"__esModule",{value:!0});var n7r=yL();Mge.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("SSCAN"),e.pushKey(t),(0,n7r.parseScanArguments)(e,r,n)},transformReply([e,t]){return{cursor:e,members:t}}}});var Mdt=S(kge=>{"use strict";Object.defineProperty(kge,"__esModule",{value:!0});kge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("STRLEN"),e.pushKey(t)},transformReply:void 0}});var kdt=S(Bge=>{"use strict";Object.defineProperty(Bge,"__esModule",{value:!0});Bge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("SUNION"),e.pushKeys(t)},transformReply:void 0}});var Bdt=S(Uge=>{"use strict";Object.defineProperty(Uge,"__esModule",{value:!0});Uge.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SUNIONSTORE"),e.pushKey(t),e.pushKeys(r)},transformReply:void 0}});var Udt=S(Fge=>{"use strict";Object.defineProperty(Fge,"__esModule",{value:!0});Fge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("SWAPDB",t.toString(),r.toString())},transformReply:void 0}});var Fdt=S($ge=>{"use strict";Object.defineProperty($ge,"__esModule",{value:!0});$ge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("TIME")},transformReply:void 0}});var $dt=S(qge=>{"use strict";Object.defineProperty(qge,"__esModule",{value:!0});qge.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TOUCH"),e.pushKeys(t)},transformReply:void 0}});var qdt=S(Hge=>{"use strict";Object.defineProperty(Hge,"__esModule",{value:!0});Hge.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TTL"),e.pushKey(t)},transformReply:void 0}});var Hdt=S(Vge=>{"use strict";Object.defineProperty(Vge,"__esModule",{value:!0});Vge.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("TYPE"),e.pushKey(t)},transformReply:void 0}});var Vdt=S(jge=>{"use strict";Object.defineProperty(jge,"__esModule",{value:!0});jge.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("UNLINK"),e.pushKeys(t)},transformReply:void 0}});var jdt=S(Kge=>{"use strict";Object.defineProperty(Kge,"__esModule",{value:!0});Kge.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("WAIT",t.toString(),r.toString())},transformReply:void 0}});var Kdt=S(Gge=>{"use strict";Object.defineProperty(Gge,"__esModule",{value:!0});Gge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XACK"),e.pushKey(t),e.push(r),e.pushVariadic(n)},transformReply:void 0}});var Gdt=S(zge=>{"use strict";Object.defineProperty(zge,"__esModule",{value:!0});zge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XACKDEL"),e.pushKey(t),e.push(r),s&&e.push(s),e.push("IDS"),e.pushVariadicWithLength(n)},transformReply:void 0}});var Yge=S(ML=>{"use strict";Object.defineProperty(ML,"__esModule",{value:!0});ML.parseXAddArguments=void 0;function zdt(e,t,r,n,s,i){t.push("XADD"),t.pushKey(r),e&&t.push(e),i?.policy&&t.push(i.policy),i?.IDMPAUTO?t.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&t.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&t.push(i.TRIM.strategy),i.TRIM.strategyModifier&&t.push(i.TRIM.strategyModifier),t.push(i.TRIM.threshold.toString()),i.TRIM.limit&&t.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&t.push(i.TRIM.policy)),t.push(n);for(let[a,o]of Object.entries(s))t.push(a,o)}ML.parseXAddArguments=zdt;ML.default={IS_READ_ONLY:!1,parseCommand(...e){return zdt(void 0,...e)},transformReply:void 0}});var Ydt=S(Qge=>{"use strict";Object.defineProperty(Qge,"__esModule",{value:!0});var s7r=Yge();Qge.default={IS_READ_ONLY:!1,parseCommand(...e){return(0,s7r.parseXAddArguments)("NOMKSTREAM",...e)},transformReply:void 0}});var Xge=S(Wge=>{"use strict";Object.defineProperty(Wge,"__esModule",{value:!0});var i7r=We();Wge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i,a){e.push("XAUTOCLAIM"),e.pushKey(t),e.push(r,n,s.toString(),i),a?.COUNT&&e.push("COUNT",a.COUNT.toString())},transformReply(e,t,r){return{nextId:e[0],messages:e[1].map(i7r.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:e[2]}}}});var Wdt=S(kL=>{"use strict";var a7r=kL&&kL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kL,"__esModule",{value:!0});var Qdt=a7r(Xge());kL.default={IS_READ_ONLY:Qdt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Qdt.default.parseCommand(...e),t.push("JUSTID")},transformReply(e){return{nextId:e[0],messages:e[1],deletedMessages:e[2]}}}});var Zge=S(Jge=>{"use strict";Object.defineProperty(Jge,"__esModule",{value:!0});var o7r=We();Jge.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i,a){e.push("XCLAIM"),e.pushKey(t),e.push(r,n,s.toString()),e.pushVariadic(i),a?.IDLE!==void 0&&e.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&e.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&e.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&e.push("FORCE"),a?.LASTID!==void 0&&e.push("LASTID",a.LASTID)},transformReply(e,t,r){return e.map(o7r.transformStreamMessageNullReply.bind(void 0,r))}}});var Jdt=S(BL=>{"use strict";var c7r=BL&&BL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BL,"__esModule",{value:!0});var Xdt=c7r(Zge());BL.default={IS_READ_ONLY:Xdt.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Xdt.default.parseCommand(...e),t.push("JUSTID")},transformReply:void 0}});var Zdt=S(e_e=>{"use strict";Object.defineProperty(e_e,"__esModule",{value:!0});e_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XCFGSET"),e.pushKey(t),r?.IDMP_DURATION!==void 0&&e.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&e.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var eft=S(t_e=>{"use strict";Object.defineProperty(t_e,"__esModule",{value:!0});t_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XDEL"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var tft=S(r_e=>{"use strict";Object.defineProperty(r_e,"__esModule",{value:!0});r_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XDELEX"),e.pushKey(t),n&&e.push(n),e.push("IDS"),e.pushVariadicWithLength(r)},transformReply:void 0}});var rft=S(n_e=>{"use strict";Object.defineProperty(n_e,"__esModule",{value:!0});n_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XGROUP","CREATE"),e.pushKey(t),e.push(r,n),s?.MKSTREAM&&e.push("MKSTREAM"),s?.ENTRIESREAD&&e.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var nft=S(s_e=>{"use strict";Object.defineProperty(s_e,"__esModule",{value:!0});s_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XGROUP","CREATECONSUMER"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var sft=S(i_e=>{"use strict";Object.defineProperty(i_e,"__esModule",{value:!0});i_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XGROUP","DELCONSUMER"),e.pushKey(t),e.push(r,n)},transformReply:void 0}});var ift=S(a_e=>{"use strict";Object.defineProperty(a_e,"__esModule",{value:!0});a_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("XGROUP","DESTROY"),e.pushKey(t),e.push(r)},transformReply:void 0}});var aft=S(o_e=>{"use strict";Object.defineProperty(o_e,"__esModule",{value:!0});o_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XGROUP","SETID"),e.pushKey(t),e.push(r,n),s?.ENTRIESREAD&&e.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var oft=S(c_e=>{"use strict";Object.defineProperty(c_e,"__esModule",{value:!0});c_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("XINFO","CONSUMERS"),e.pushKey(t),e.push(r)},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var cft=S(u_e=>{"use strict";Object.defineProperty(u_e,"__esModule",{value:!0});u_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("XINFO","GROUPS"),e.pushKey(t)},transformReply:{2:e=>e.map(t=>{let r=t;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var lft=S(l_e=>{"use strict";Object.defineProperty(l_e,"__esModule",{value:!0});var uft=We();l_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("XINFO","STREAM"),e.pushKey(t)},transformReply:{2(e){let t={};for(let r=0;r{"use strict";Object.defineProperty(d_e,"__esModule",{value:!0});d_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("XLEN"),e.pushKey(t)},transformReply:void 0}});var fft=S(f_e=>{"use strict";Object.defineProperty(f_e,"__esModule",{value:!0});f_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s,i,a){e.push("XPENDING"),e.pushKey(t),e.push(r),a?.IDLE!==void 0&&e.push("IDLE",a.IDLE.toString()),e.push(n,s,i.toString()),a?.consumer&&e.push(a.consumer)},transformReply(e){return e.map(t=>{let r=t;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var hft=S(h_e=>{"use strict";Object.defineProperty(h_e,"__esModule",{value:!0});h_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("XPENDING"),e.pushKey(t),e.push(r)},transformReply(e){let t=e[3];return{pending:e[0],firstId:e[1],lastId:e[2],consumers:t===null?null:t.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var p_e=S(UL=>{"use strict";Object.defineProperty(UL,"__esModule",{value:!0});UL.xRangeArguments=void 0;var u7r=We();function pft(e,t,r){let n=[e,t];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}UL.xRangeArguments=pft;UL.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,...r){e.push("XRANGE"),e.pushKey(t),e.pushVariadic(pft(r[0],r[1],r[2]))},transformReply(e,t,r){return e.map(u7r.transformStreamMessageReply.bind(void 0,r))}}});var m_e=S(FL=>{"use strict";Object.defineProperty(FL,"__esModule",{value:!0});FL.pushXReadStreams=void 0;var l7r=We();function mft(e,t){if(e.push("STREAMS"),Array.isArray(t)){for(let r=0;r{"use strict";Object.defineProperty(g_e,"__esModule",{value:!0});var d7r=m_e(),f7r=We();g_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("XREADGROUP","GROUP",t,r),s?.COUNT!==void 0&&e.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&e.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&e.push("NOACK"),s?.CLAIM!==void 0&&e.push("CLAIM",s.CLAIM.toString()),(0,d7r.pushXReadStreams)(e,n)},transformReply:{2:f7r.transformStreamsMessagesReplyResp2,3:void 0}}});var _ft=S(ng=>{"use strict";var h7r=ng&&ng.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),p7r=ng&&ng.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),m7r=ng&&ng.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&h7r(t,e,r);return p7r(t,e),t};Object.defineProperty(ng,"__esModule",{value:!0});var hq=m7r(p_e());ng.default={CACHEABLE:hq.default.CACHEABLE,IS_READ_ONLY:hq.default.IS_READ_ONLY,parseCommand(e,t,...r){e.push("XREVRANGE"),e.pushKey(t),e.pushVariadic((0,hq.xRangeArguments)(r[0],r[1],r[2]))},transformReply:hq.default.transformReply}});var Aft=S(__e=>{"use strict";Object.defineProperty(__e,"__esModule",{value:!0});__e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("XSETID"),e.pushKey(t),e.push(r),n?.ENTRIESADDED&&e.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&e.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var Eft=S(A_e=>{"use strict";Object.defineProperty(A_e,"__esModule",{value:!0});A_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("XTRIM"),e.pushKey(t),e.push(r),s?.strategyModifier&&e.push(s.strategyModifier),e.push(n.toString()),s?.LIMIT&&e.push("LIMIT",s.LIMIT.toString()),s?.policy&&e.push(s.policy)},transformReply:void 0}});var E_e=S($L=>{"use strict";Object.defineProperty($L,"__esModule",{value:!0});$L.pushMembers=void 0;var vft=We();$L.default={parseCommand(e,t,r,n){e.push("ZADD"),e.pushKey(t),n?.condition?e.push(n.condition):n?.NX?e.push("NX"):n?.XX&&e.push("XX"),n?.comparison?e.push(n.comparison):n?.LT?e.push("LT"):n?.GT&&e.push("GT"),n?.CH&&e.push("CH"),Sft(e,r)},transformReply:vft.transformDoubleReply};function Sft(e,t){if(Array.isArray(t))for(let r of t)yft(e,r);else yft(e,t)}$L.pushMembers=Sft;function yft(e,t){e.push((0,vft.transformDoubleArgument)(t.score),t.value)}});var Tft=S(y_e=>{"use strict";Object.defineProperty(y_e,"__esModule",{value:!0});var g7r=E_e(),_7r=We();y_e.default={parseCommand(e,t,r,n){e.push("ZADD"),e.pushKey(t),n?.condition&&e.push(n.condition),n?.comparison&&e.push(n.comparison),n?.CH&&e.push("CH"),e.push("INCR"),(0,g7r.pushMembers)(e,r)},transformReply:_7r.transformNullableDoubleReply}});var bft=S(v_e=>{"use strict";Object.defineProperty(v_e,"__esModule",{value:!0});v_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZCARD"),e.pushKey(t)},transformReply:void 0}});var Rft=S(S_e=>{"use strict";Object.defineProperty(S_e,"__esModule",{value:!0});var Ift=We();S_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZCOUNT"),e.pushKey(t),e.push((0,Ift.transformStringDoubleArgument)(r),(0,Ift.transformStringDoubleArgument)(n))},transformReply:void 0}});var b_e=S(T_e=>{"use strict";Object.defineProperty(T_e,"__esModule",{value:!0});T_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZDIFF"),e.pushKeysLength(t)},transformReply:void 0}});var xft=S(qL=>{"use strict";var A7r=qL&&qL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qL,"__esModule",{value:!0});var E7r=We(),Cft=A7r(b_e());qL.default={IS_READ_ONLY:Cft.default.IS_READ_ONLY,parseCommand(e,t){Cft.default.parseCommand(e,t),e.push("WITHSCORES")},transformReply:E7r.transformSortedSetReply}});var wft=S(I_e=>{"use strict";Object.defineProperty(I_e,"__esModule",{value:!0});I_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZDIFFSTORE"),e.pushKey(t),e.pushKeysLength(r)},transformReply:void 0}});var Oft=S(R_e=>{"use strict";Object.defineProperty(R_e,"__esModule",{value:!0});var Nft=We();R_e.default={parseCommand(e,t,r,n){e.push("ZINCRBY"),e.pushKey(t),e.push((0,Nft.transformDoubleArgument)(r),n)},transformReply:Nft.transformDoubleReply}});var pq=S(HL=>{"use strict";Object.defineProperty(HL,"__esModule",{value:!0});HL.parseZInterArguments=void 0;var y7r=We();function Dft(e,t,r){(0,y7r.parseZKeysArguments)(e,t),r?.AGGREGATE&&e.push("AGGREGATE",r.AGGREGATE)}HL.parseZInterArguments=Dft;HL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZINTER"),Dft(e,t,r)},transformReply:void 0}});var Lft=S(VL=>{"use strict";var v7r=VL&&VL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(VL,"__esModule",{value:!0});var S7r=We(),Pft=v7r(pq());VL.default={IS_READ_ONLY:Pft.default.IS_READ_ONLY,parseCommand(...e){Pft.default.parseCommand(...e),e[0].push("WITHSCORES")},transformReply:S7r.transformSortedSetReply}});var Mft=S(C_e=>{"use strict";Object.defineProperty(C_e,"__esModule",{value:!0});C_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZINTERCARD"),e.pushKeysLength(t),typeof r=="number"?e.push("LIMIT",r.toString()):r?.LIMIT&&e.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var kft=S(x_e=>{"use strict";Object.defineProperty(x_e,"__esModule",{value:!0});var T7r=pq();x_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZINTERSTORE"),e.pushKey(t),(0,T7r.parseZInterArguments)(e,r,n)},transformReply:void 0}});var Bft=S(w_e=>{"use strict";Object.defineProperty(w_e,"__esModule",{value:!0});w_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZLEXCOUNT"),e.pushKey(t),e.push(r),e.push(n)},transformReply:void 0}});var Uft=S(N_e=>{"use strict";Object.defineProperty(N_e,"__esModule",{value:!0});var b7r=We();N_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZMSCORE"),e.pushKey(t),e.pushVariadic(r)},transformReply:{2:(e,t,r)=>e.map((0,b7r.createTransformNullableDoubleReplyResp2Func)(t,r)),3:void 0}}});var Fft=S(O_e=>{"use strict";Object.defineProperty(O_e,"__esModule",{value:!0});var I7r=We();O_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZPOPMAX"),e.pushKey(t),e.push(r.toString())},transformReply:I7r.transformSortedSetReply}});var P_e=S(D_e=>{"use strict";Object.defineProperty(D_e,"__esModule",{value:!0});var R7r=We();D_e.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("ZPOPMAX"),e.pushKey(t)},transformReply:{2:(e,t,r)=>e.length===0?null:{value:e[0],score:R7r.transformDoubleReply[2](e[1],t,r)},3:e=>e.length===0?null:{value:e[0],score:e[1]}}}});var $ft=S(L_e=>{"use strict";Object.defineProperty(L_e,"__esModule",{value:!0});var C7r=We();L_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZPOPMIN"),e.pushKey(t),e.push(r.toString())},transformReply:C7r.transformSortedSetReply}});var qft=S(jL=>{"use strict";var x7r=jL&&jL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jL,"__esModule",{value:!0});var w7r=x7r(P_e());jL.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("ZPOPMIN"),e.pushKey(t)},transformReply:w7r.default.transformReply}});var k_e=S(M_e=>{"use strict";Object.defineProperty(M_e,"__esModule",{value:!0});M_e.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("ZRANDMEMBER"),e.pushKey(t)},transformReply:void 0}});var B_e=S(KL=>{"use strict";var N7r=KL&&KL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(KL,"__esModule",{value:!0});var Hft=N7r(k_e());KL.default={IS_READ_ONLY:Hft.default.IS_READ_ONLY,parseCommand(e,t,r){Hft.default.parseCommand(e,t),e.push(r.toString())},transformReply:void 0}});var jft=S(GL=>{"use strict";var O7r=GL&&GL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(GL,"__esModule",{value:!0});var D7r=We(),Vft=O7r(B_e());GL.default={IS_READ_ONLY:Vft.default.IS_READ_ONLY,parseCommand(e,t,r){Vft.default.parseCommand(e,t,r),e.push("WITHSCORES")},transformReply:D7r.transformSortedSetReply}});var U_e=S(zL=>{"use strict";Object.defineProperty(zL,"__esModule",{value:!0});zL.zRangeArgument=void 0;var Kft=We();function Gft(e,t,r){let n=[(0,Kft.transformStringDoubleArgument)(e),(0,Kft.transformStringDoubleArgument)(t)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}zL.zRangeArgument=Gft;zL.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("ZRANGE"),e.pushKey(t),e.pushVariadic(Gft(r,n,s))},transformReply:void 0}});var zft=S(YL=>{"use strict";var P7r=YL&&YL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(YL,"__esModule",{value:!0});var L7r=We(),F_e=P7r(U_e());YL.default={CACHEABLE:F_e.default.CACHEABLE,IS_READ_ONLY:F_e.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];F_e.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:L7r.transformSortedSetReply}});var Qft=S($_e=>{"use strict";Object.defineProperty($_e,"__esModule",{value:!0});var Yft=We();$_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("ZRANGEBYLEX"),e.pushKey(t),e.push((0,Yft.transformStringDoubleArgument)(r),(0,Yft.transformStringDoubleArgument)(n)),s?.LIMIT&&e.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var H_e=S(q_e=>{"use strict";Object.defineProperty(q_e,"__esModule",{value:!0});var Wft=We();q_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("ZRANGEBYSCORE"),e.pushKey(t),e.push((0,Wft.transformStringDoubleArgument)(r),(0,Wft.transformStringDoubleArgument)(n)),s?.LIMIT&&e.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var Xft=S(QL=>{"use strict";var M7r=QL&&QL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(QL,"__esModule",{value:!0});var k7r=We(),V_e=M7r(H_e());QL.default={CACHEABLE:V_e.default.CACHEABLE,IS_READ_ONLY:V_e.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];V_e.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:k7r.transformSortedSetReply}});var Zft=S(j_e=>{"use strict";Object.defineProperty(j_e,"__esModule",{value:!0});var Jft=We();j_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){switch(e.push("ZRANGESTORE"),e.pushKey(t),e.pushKey(r),e.push((0,Jft.transformStringDoubleArgument)(n),(0,Jft.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":e.push("BYSCORE");break;case"LEX":e.push("BYLEX");break}i?.REV&&e.push("REV"),i?.LIMIT&&e.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var t0t=S(K_e=>{"use strict";Object.defineProperty(K_e,"__esModule",{value:!0});var e0t=We();K_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYSCORE"),e.pushKey(t),e.push((0,e0t.transformStringDoubleArgument)(r),(0,e0t.transformStringDoubleArgument)(n))},transformReply:void 0}});var z_e=S(G_e=>{"use strict";Object.defineProperty(G_e,"__esModule",{value:!0});G_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZRANK"),e.pushKey(t),e.push(r)},transformReply:void 0}});var r0t=S(WL=>{"use strict";var B7r=WL&&WL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(WL,"__esModule",{value:!0});var Y_e=B7r(z_e());WL.default={CACHEABLE:Y_e.default.CACHEABLE,IS_READ_ONLY:Y_e.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];Y_e.default.parseCommand(...e),t.push("WITHSCORE")},transformReply:{2:e=>e===null?null:{rank:e[0],score:Number(e[1])},3:e=>e===null?null:{rank:e[0],score:e[1]}}}});var n0t=S(Q_e=>{"use strict";Object.defineProperty(Q_e,"__esModule",{value:!0});Q_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("ZREM"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var i0t=S(W_e=>{"use strict";Object.defineProperty(W_e,"__esModule",{value:!0});var s0t=We();W_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYLEX"),e.pushKey(t),e.push((0,s0t.transformStringDoubleArgument)(r),(0,s0t.transformStringDoubleArgument)(n))},transformReply:void 0}});var a0t=S(X_e=>{"use strict";Object.defineProperty(X_e,"__esModule",{value:!0});X_e.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZREMRANGEBYRANK"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var o0t=S(J_e=>{"use strict";Object.defineProperty(J_e,"__esModule",{value:!0});J_e.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZREVRANK"),e.pushKey(t),e.push(r)},transformReply:void 0}});var c0t=S(Z_e=>{"use strict";Object.defineProperty(Z_e,"__esModule",{value:!0});var U7r=yL(),F7r=We();Z_e.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("ZSCAN"),e.pushKey(t),(0,U7r.parseScanArguments)(e,r,n)},transformReply([e,t]){return{cursor:e,members:F7r.transformSortedSetReply[2](t)}}}});var u0t=S(eAe=>{"use strict";Object.defineProperty(eAe,"__esModule",{value:!0});var $7r=We();eAe.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZSCORE"),e.pushKey(t),e.push(r)},transformReply:$7r.transformNullableDoubleReply}});var rAe=S(tAe=>{"use strict";Object.defineProperty(tAe,"__esModule",{value:!0});var q7r=We();tAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("ZUNION"),(0,q7r.parseZKeysArguments)(e,t),r?.AGGREGATE&&e.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var d0t=S(XL=>{"use strict";var H7r=XL&&XL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XL,"__esModule",{value:!0});var V7r=We(),l0t=H7r(rAe());XL.default={IS_READ_ONLY:l0t.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];l0t.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:V7r.transformSortedSetReply}});var f0t=S(nAe=>{"use strict";Object.defineProperty(nAe,"__esModule",{value:!0});var j7r=We();nAe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("ZUNIONSTORE"),e.pushKey(t),(0,j7r.parseZKeysArguments)(e,r),n?.AGGREGATE&&e.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var p0t=S(sAe=>{"use strict";Object.defineProperty(sAe,"__esModule",{value:!0});var h0t=We();sAe.default={parseCommand(e,t,r,n,s){e.push("VADD"),e.pushKey(t),s?.REDUCE!==void 0&&e.push("REDUCE",s.REDUCE.toString()),e.push("VALUES",r.length.toString());for(let i of r)e.push((0,h0t.transformDoubleArgument)(i));e.push(n),s?.CAS&&e.push("CAS"),s?.QUANT&&e.push(s.QUANT),s?.EF!==void 0&&e.push("EF",s.EF.toString()),s?.SETATTR&&e.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&e.push("M",s.M.toString())},transformReply:h0t.transformBooleanReply}});var m0t=S(iAe=>{"use strict";Object.defineProperty(iAe,"__esModule",{value:!0});iAe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VCARD"),e.pushKey(t)},transformReply:void 0}});var g0t=S(aAe=>{"use strict";Object.defineProperty(aAe,"__esModule",{value:!0});aAe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VDIM"),e.pushKey(t)},transformReply:void 0}});var cAe=S(oAe=>{"use strict";Object.defineProperty(oAe,"__esModule",{value:!0});var K7r=We();oAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VEMB"),e.pushKey(t),e.push(r)},transformReply:K7r.transformDoubleArrayReply}});var A0t=S(JL=>{"use strict";var G7r=JL&&JL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(JL,"__esModule",{value:!0});var _0t=We(),z7r=G7r(cAe()),Y7r={2:e=>({quantization:e[0],raw:e[1],l2Norm:_0t.transformDoubleReply[2](e[2]),...e[3]!==void 0&&{quantizationRange:_0t.transformDoubleReply[2](e[3])}}),3:e=>({quantization:e[0],raw:e[1],l2Norm:e[2],quantizationRange:e[3]})};JL.default={IS_READ_ONLY:!0,parseCommand(e,t,r){z7r.default.parseCommand(e,t,r),e.push("RAW")},transformReply:Y7r}});var E0t=S(uAe=>{"use strict";Object.defineProperty(uAe,"__esModule",{value:!0});var Q7r=We();uAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VGETATTR"),e.pushKey(t),e.push(r)},transformReply:Q7r.transformRedisJsonNullReply}});var y0t=S(lAe=>{"use strict";Object.defineProperty(lAe,"__esModule",{value:!0});lAe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("VINFO"),e.pushKey(t)},transformReply:{2:e=>{let t=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(dAe,"__esModule",{value:!0});dAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VLINKS"),e.pushKey(t),e.push(r)},transformReply:void 0}});var S0t=S(ZL=>{"use strict";var W7r=ZL&&ZL.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZL,"__esModule",{value:!0});var X7r=We(),v0t=W7r(fAe());function J7r(e){let t=[];for(let r of e){let n=Object.create(null);for(let s=0;s{"use strict";Object.defineProperty(hAe,"__esModule",{value:!0});hAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("VRANDMEMBER"),e.pushKey(t),r!==void 0&&e.push(r.toString())},transformReply:void 0}});var b0t=S(pAe=>{"use strict";Object.defineProperty(pAe,"__esModule",{value:!0});pAe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("VRANGE"),e.pushKey(t),e.push(r,n),s!==void 0&&e.push(s.toString())},transformReply:void 0}});var I0t=S(mAe=>{"use strict";Object.defineProperty(mAe,"__esModule",{value:!0});var Z7r=We();mAe.default={parseCommand(e,t,r){e.push("VREM"),e.pushKey(t),e.push(r)},transformReply:Z7r.transformBooleanReply}});var R0t=S(gAe=>{"use strict";Object.defineProperty(gAe,"__esModule",{value:!0});var ejr=We();gAe.default={parseCommand(e,t,r,n){e.push("VSETATTR"),e.pushKey(t),e.push(r),typeof n=="object"&&n!==null?e.push(JSON.stringify(n)):e.push(n)},transformReply:ejr.transformBooleanReply}});var AAe=S(_Ae=>{"use strict";Object.defineProperty(_Ae,"__esModule",{value:!0});var tjr=We();_Ae.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){if(e.push("VSIM"),e.pushKey(t),Array.isArray(r)){e.push("VALUES",r.length.toString());for(let s of r)e.push((0,tjr.transformDoubleArgument)(s))}else e.push("ELE",r);n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&e.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&e.push("EF",n.EF.toString()),n?.FILTER&&e.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&e.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&e.push("TRUTH"),n?.NOTHREAD&&e.push("NOTHREAD")},transformReply:void 0}});var x0t=S(eM=>{"use strict";var rjr=eM&&eM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(eM,"__esModule",{value:!0});var njr=We(),C0t=rjr(AAe());eM.default={IS_READ_ONLY:C0t.default.IS_READ_ONLY,parseCommand(...e){let t=e[0];C0t.default.parseCommand(...e),t.push("WITHSCORES")},transformReply:{2:e=>{let t=e,r={};for(let n=0;n{"use strict";Object.defineProperty(EAe,"__esModule",{value:!0});var sjr=We(),ijr=e=>e;EAe.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(e,...t){let r=["LATENCY","HISTOGRAM"];t.length!==0&&r.push(...t),e.push(...r)},transformReply:{2:e=>{let t={};if(e.length===0)return t;for(let r=1;r{"use strict";var ajr=gi&&gi.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),ojr=gi&&gi.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),tM=gi&&gi.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&ajr(t,e,r);return ojr(t,e),t},re=gi&&gi.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(gi,"__esModule",{value:!0});gi.NON_STICKY_COMMANDS=gi.REDIS_FLUSH_MODES=gi.COMMAND_LIST_FILTER_BY=gi.CLUSTER_SLOT_STATES=gi.FAILOVER_MODES=gi.CLIENT_KILL_FILTERS=void 0;var N0t=re(nat()),O0t=re(sat()),D0t=re(iat()),P0t=re(aat()),L0t=re(oat()),M0t=re(cat()),k0t=re(uat()),B0t=re(_at()),U0t=re(h0e()),F0t=re(Aat()),$0t=re(Eat()),q0t=re(yat()),H0t=re(vat()),V0t=re(Sat()),j0t=re(E0e()),K0t=re(Tat()),G0t=re(bat()),z0t=re(Iat()),Y0t=re(Rat()),Q0t=re(Cat()),W0t=re(xat()),X0t=re(wat()),J0t=re(Nat()),Z0t=re(Oat()),eht=re(Lat()),tht=re(O0e()),rht=re(Mat()),nht=re(kat()),sht=re($at()),iht=re(M0e()),aht=re(Hat()),oht=re(Vat()),cht=re(jat()),uht=re(Kat()),lht=re(Gat()),dht=re(q0e()),yAe=tM(Yat());Object.defineProperty(gi,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return yAe.CLIENT_KILL_FILTERS}});var fht=re(Qat()),hht=re(Wat()),pht=re(Xat()),mht=re(Jat()),ght=re(Zat()),_ht=re(eot()),Aht=re(tot()),Eht=re(rot()),yht=re(not()),vht=re(sot()),Sht=re(iot()),Tht=re(aot()),bht=re(oot()),Iht=re(cot()),Rht=re(uot()),vAe=tM(lot());Object.defineProperty(gi,"FAILOVER_MODES",{enumerable:!0,get:function(){return vAe.FAILOVER_MODES}});var Cht=re(dot()),xht=re(fot()),wht=re(hot()),Nht=re(pot()),Oht=re(mot()),Dht=re(got()),Pht=re(_ot()),Lht=re(Aot()),Mht=re(Eot()),kht=re(yot()),Bht=re(vot()),Uht=re(Sot()),Fht=re(Tot()),$ht=re(bot()),qht=re(Iot()),SAe=tM(Rot());Object.defineProperty(gi,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return SAe.CLUSTER_SLOT_STATES}});var Hht=re(xot()),Vht=re(wot()),jht=re(Not()),Kht=re(Oot()),Ght=re(Dot()),TAe=tM(Pot());Object.defineProperty(gi,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return TAe.COMMAND_LIST_FILTER_BY}});var zht=re(Lot()),Yht=re(Mot()),Qht=re(kot()),Wht=re(Bot()),Xht=re(Uot()),Jht=re(Fot()),Zht=re($ot()),ept=re(qot()),tpt=re(Hot()),rpt=re(Vot()),npt=re(jot()),spt=re(Kot()),ipt=re(Got()),apt=re(zot()),opt=re(Wot()),cpt=re(CS()),upt=re(Jot()),lpt=re(ect()),dpt=re(rct()),fpt=re(nct()),hpt=re(sct()),ppt=re(ict()),mpt=re(fct()),gpt=re(pct()),_pt=re(gct()),Apt=re(lq()),Ept=re(dL()),ypt=re(vct()),vpt=re(Tct()),Spt=re(Ict()),Tpt=re(Fhe()),bpt=re(mL()),Ipt=re(fL()),Rpt=re(wS()),Cpt=re(Rct()),xpt=re(Cct()),wpt=re(xct()),Npt=re(wct()),Opt=re(Nct()),Dpt=re(Oct()),Ppt=re(Dct()),Lpt=re(Pct()),Mpt=re(Lct()),kpt=re(Mct()),Bpt=re(kct()),bAe=tM(Bct());Object.defineProperty(gi,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return bAe.REDIS_FLUSH_MODES}});var Upt=re(Uct()),Fpt=re($ct()),$pt=re(Hct()),qpt=re(Vct()),Hpt=re(jct()),Vpt=re(Kct()),jpt=re(Gct()),Kpt=re(zct()),Gpt=re(spe()),zpt=re(Yct()),Ypt=re(Qct()),Qpt=re(Wct()),Wpt=re(Xct()),Xpt=re(dpe()),Jpt=re(Jct()),Zpt=re(Zct()),emt=re(eut()),tmt=re(tut()),rmt=re(rut()),nmt=re(nut()),smt=re(sut()),imt=re(iut()),amt=re(aut()),omt=re(out()),cmt=re(cut()),umt=re(uut()),lmt=re(lut()),dmt=re(dut()),fmt=re(fut()),hmt=re(hut()),pmt=re(put()),mmt=re(mut()),gmt=re(gut()),_mt=re(_ut()),Amt=re(Aut()),Emt=re(Dpe()),ymt=re(yut()),vmt=re(Sut()),Smt=re(but()),Tmt=re(Iut()),bmt=re(Rut()),Imt=re(Cut()),Rmt=re(xut()),Cmt=re(Nut()),xmt=re(Out()),wmt=re(Dut()),Nmt=re(Put()),Omt=re(Lut()),Dmt=re(Mut()),Pmt=re(kut()),Lmt=re(But()),Mmt=re(Uut()),kmt=re(Fut()),Bmt=re($ut()),Umt=re(Qpe()),Fmt=re(qut()),$mt=re(Hut()),qmt=re(Vut()),Hmt=re(Gut()),Vmt=re(Zpe()),jmt=re(Yut()),Kmt=re(dq()),Gmt=re(Qut()),zmt=re(Wut()),Ymt=re(Xut()),Qmt=re(Jut()),Wmt=re(w0e()),cjr=re(Zut()),Xmt=re(elt()),Jmt=re(ame()),Zmt=re(tlt()),egt=re(cme()),tgt=re(rlt()),rgt=re(nlt()),ngt=re(slt()),sgt=re(ilt()),igt=re(alt()),agt=re(olt()),ogt=re(clt()),cgt=re(ult()),ugt=re(llt()),lgt=re(dlt()),dgt=re(flt()),fgt=re(hlt()),hgt=re(plt()),pgt=re(mlt()),mgt=re(glt()),ggt=re(_lt()),_gt=re(Alt()),Agt=re(Cme()),Egt=re(Slt()),ygt=re(Tlt()),vgt=re(blt()),Sgt=re(Ilt()),Tgt=re(Rlt()),bgt=re(Clt()),Igt=re(xlt()),Rgt=re(wlt()),Cgt=re(Nlt()),xgt=re(Olt()),wgt=re(Dlt()),Ngt=re(Plt()),Ogt=re(Llt()),Dgt=re(Mlt()),Pgt=re(klt()),Lgt=re(Blt()),Mgt=re(Ult()),kgt=re(Flt()),Bgt=re($lt()),Ugt=re(qlt()),Fgt=re(Hlt()),$gt=re(Vlt()),qgt=re(jlt()),Hgt=re(Klt()),Vgt=re(Glt()),jgt=re(zlt()),Kgt=re(Ylt()),Ggt=re(Qlt()),zgt=re(Wlt()),Ygt=re(Xlt()),Qgt=re(Jlt()),Wgt=re(Zlt()),Xgt=re(edt()),Jgt=re(tdt()),Zgt=re(rdt()),e_t=re(ndt()),t_t=re(yL()),r_t=re(sdt()),n_t=re(idt()),s_t=re(adt()),i_t=re(odt()),a_t=re(cdt()),o_t=re(udt()),c_t=re(ldt()),u_t=re(ddt()),l_t=re(fdt()),d_t=re(hdt()),f_t=re(pdt()),h_t=re(mdt()),p_t=re(gdt()),m_t=re(_dt()),g_t=re(Adt()),__t=re(Edt()),A_t=re(ydt()),E_t=re(vdt()),y_t=re(Sdt()),v_t=re(Tdt()),S_t=re(Rdt()),T_t=re(Cdt()),b_t=re(fq()),I_t=re(xdt()),R_t=re(wdt()),C_t=re(Ndt()),x_t=re(Ddt()),w_t=re(Pge()),N_t=re(Pdt()),O_t=re(Ldt()),D_t=re(Mdt()),P_t=re(kdt()),L_t=re(Bdt()),M_t=re(Udt()),k_t=re(Fdt()),B_t=re($dt()),U_t=re(qdt()),F_t=re(Hdt()),$_t=re(Vdt()),q_t=re(jdt()),H_t=re(Kdt()),V_t=re(Gdt()),j_t=re(Ydt()),K_t=re(Yge()),G_t=re(Wdt()),z_t=re(Xge()),Y_t=re(Jdt()),Q_t=re(Zge()),W_t=re(Zdt()),X_t=re(eft()),J_t=re(tft()),Z_t=re(rft()),eAt=re(nft()),tAt=re(sft()),rAt=re(ift()),nAt=re(aft()),sAt=re(oft()),iAt=re(cft()),aAt=re(lft()),oAt=re(dft()),cAt=re(fft()),uAt=re(hft()),lAt=re(p_e()),dAt=re(m_e()),fAt=re(gft()),hAt=re(_ft()),pAt=re(Aft()),mAt=re(Eft()),gAt=re(Tft()),_At=re(E_e()),AAt=re(bft()),EAt=re(Rft()),yAt=re(xft()),vAt=re(b_e()),SAt=re(wft()),TAt=re(Oft()),bAt=re(Lft()),IAt=re(pq()),RAt=re(Mft()),CAt=re(kft()),xAt=re(Bft()),wAt=re(P0e()),NAt=re(Uft()),OAt=re(Fft()),DAt=re(P_e()),PAt=re($ft()),LAt=re(qft()),MAt=re(jft()),kAt=re(B_e()),BAt=re(k_e()),UAt=re(zft()),FAt=re(U_e()),$At=re(Qft()),qAt=re(Xft()),HAt=re(H_e()),VAt=re(Zft()),jAt=re(t0t()),KAt=re(r0t()),GAt=re(z_e()),zAt=re(n0t()),YAt=re(i0t()),QAt=re(a0t()),WAt=re(o0t()),XAt=re(c0t()),JAt=re(u0t()),ZAt=re(d0t()),eEt=re(rAe()),tEt=re(f0t()),rEt=re(p0t()),nEt=re(m0t()),sEt=re(g0t()),iEt=re(cAe()),aEt=re(A0t()),oEt=re(E0t()),cEt=re(y0t()),uEt=re(fAe()),lEt=re(S0t()),dEt=re(T0t()),fEt=re(b0t()),hEt=re(I0t()),pEt=re(R0t()),mEt=re(AAe()),gEt=re(x0t()),_Et=re(w0t());gi.default={ACL_CAT:N0t.default,aclCat:N0t.default,ACL_DELUSER:O0t.default,aclDelUser:O0t.default,ACL_DRYRUN:D0t.default,aclDryRun:D0t.default,ACL_GENPASS:P0t.default,aclGenPass:P0t.default,ACL_GETUSER:L0t.default,aclGetUser:L0t.default,ACL_LIST:M0t.default,aclList:M0t.default,ACL_LOAD:k0t.default,aclLoad:k0t.default,ACL_LOG_RESET:B0t.default,aclLogReset:B0t.default,ACL_LOG:U0t.default,aclLog:U0t.default,ACL_SAVE:F0t.default,aclSave:F0t.default,ACL_SETUSER:$0t.default,aclSetUser:$0t.default,ACL_USERS:q0t.default,aclUsers:q0t.default,ACL_WHOAMI:H0t.default,aclWhoAmI:H0t.default,APPEND:V0t.default,append:V0t.default,ASKING:j0t.default,asking:j0t.default,AUTH:K0t.default,auth:K0t.default,BGREWRITEAOF:G0t.default,bgRewriteAof:G0t.default,BGSAVE:z0t.default,bgSave:z0t.default,BITCOUNT:Y0t.default,bitCount:Y0t.default,BITFIELD_RO:Q0t.default,bitFieldRo:Q0t.default,BITFIELD:W0t.default,bitField:W0t.default,BITOP:X0t.default,bitOp:X0t.default,BITPOS:J0t.default,bitPos:J0t.default,BLMOVE:Z0t.default,blMove:Z0t.default,BLMPOP:eht.default,blmPop:eht.default,BLPOP:tht.default,blPop:tht.default,BRPOP:rht.default,brPop:rht.default,BRPOPLPUSH:nht.default,brPopLPush:nht.default,BZMPOP:sht.default,bzmPop:sht.default,BZPOPMAX:iht.default,bzPopMax:iht.default,BZPOPMIN:aht.default,bzPopMin:aht.default,CLIENT_CACHING:oht.default,clientCaching:oht.default,CLIENT_GETNAME:cht.default,clientGetName:cht.default,CLIENT_GETREDIR:uht.default,clientGetRedir:uht.default,CLIENT_ID:lht.default,clientId:lht.default,CLIENT_INFO:dht.default,clientInfo:dht.default,CLIENT_KILL:yAe.default,clientKill:yAe.default,CLIENT_LIST:fht.default,clientList:fht.default,"CLIENT_NO-EVICT":hht.default,clientNoEvict:hht.default,"CLIENT_NO-TOUCH":pht.default,clientNoTouch:pht.default,CLIENT_PAUSE:mht.default,clientPause:mht.default,CLIENT_SETNAME:ght.default,clientSetName:ght.default,CLIENT_TRACKING:_ht.default,clientTracking:_ht.default,CLIENT_TRACKINGINFO:Aht.default,clientTrackingInfo:Aht.default,CLIENT_UNPAUSE:Eht.default,clientUnpause:Eht.default,CLUSTER_ADDSLOTS:yht.default,clusterAddSlots:yht.default,CLUSTER_ADDSLOTSRANGE:vht.default,clusterAddSlotsRange:vht.default,CLUSTER_BUMPEPOCH:Sht.default,clusterBumpEpoch:Sht.default,"CLUSTER_COUNT-FAILURE-REPORTS":Tht.default,clusterCountFailureReports:Tht.default,CLUSTER_COUNTKEYSINSLOT:bht.default,clusterCountKeysInSlot:bht.default,CLUSTER_DELSLOTS:Iht.default,clusterDelSlots:Iht.default,CLUSTER_DELSLOTSRANGE:Rht.default,clusterDelSlotsRange:Rht.default,CLUSTER_FAILOVER:vAe.default,clusterFailover:vAe.default,CLUSTER_FLUSHSLOTS:Cht.default,clusterFlushSlots:Cht.default,CLUSTER_FORGET:xht.default,clusterForget:xht.default,CLUSTER_GETKEYSINSLOT:wht.default,clusterGetKeysInSlot:wht.default,CLUSTER_INFO:Nht.default,clusterInfo:Nht.default,CLUSTER_KEYSLOT:Oht.default,clusterKeySlot:Oht.default,CLUSTER_LINKS:Dht.default,clusterLinks:Dht.default,CLUSTER_MEET:Pht.default,clusterMeet:Pht.default,CLUSTER_MYID:Lht.default,clusterMyId:Lht.default,CLUSTER_MYSHARDID:Mht.default,clusterMyShardId:Mht.default,CLUSTER_NODES:kht.default,clusterNodes:kht.default,CLUSTER_REPLICAS:Bht.default,clusterReplicas:Bht.default,CLUSTER_REPLICATE:Uht.default,clusterReplicate:Uht.default,CLUSTER_RESET:Fht.default,clusterReset:Fht.default,CLUSTER_SAVECONFIG:$ht.default,clusterSaveConfig:$ht.default,"CLUSTER_SET-CONFIG-EPOCH":qht.default,clusterSetConfigEpoch:qht.default,CLUSTER_SETSLOT:SAe.default,clusterSetSlot:SAe.default,CLUSTER_SLOTS:Hht.default,clusterSlots:Hht.default,COMMAND_COUNT:Vht.default,commandCount:Vht.default,COMMAND_GETKEYS:jht.default,commandGetKeys:jht.default,COMMAND_GETKEYSANDFLAGS:Kht.default,commandGetKeysAndFlags:Kht.default,COMMAND_INFO:Ght.default,commandInfo:Ght.default,COMMAND_LIST:TAe.default,commandList:TAe.default,COMMAND:zht.default,command:zht.default,CONFIG_GET:Yht.default,configGet:Yht.default,CONFIG_RESETASTAT:Qht.default,configResetStat:Qht.default,CONFIG_REWRITE:Wht.default,configRewrite:Wht.default,CONFIG_SET:Xht.default,configSet:Xht.default,COPY:Jht.default,copy:Jht.default,DBSIZE:Zht.default,dbSize:Zht.default,DECR:ept.default,decr:ept.default,DECRBY:tpt.default,decrBy:tpt.default,DEL:rpt.default,del:rpt.default,DELEX:npt.default,delEx:npt.default,DIGEST:spt.default,digest:spt.default,DUMP:ipt.default,dump:ipt.default,ECHO:apt.default,echo:apt.default,EVAL_RO:opt.default,evalRo:opt.default,EVAL:cpt.default,eval:cpt.default,EVALSHA_RO:upt.default,evalShaRo:upt.default,EVALSHA:lpt.default,evalSha:lpt.default,EXISTS:Lpt.default,exists:Lpt.default,EXPIRE:Mpt.default,expire:Mpt.default,EXPIREAT:kpt.default,expireAt:kpt.default,EXPIRETIME:Bpt.default,expireTime:Bpt.default,FLUSHALL:bAe.default,flushAll:bAe.default,FLUSHDB:Upt.default,flushDb:Upt.default,FCALL:Fpt.default,fCall:Fpt.default,FCALL_RO:$pt.default,fCallRo:$pt.default,FUNCTION_DELETE:qpt.default,functionDelete:qpt.default,FUNCTION_DUMP:Hpt.default,functionDump:Hpt.default,FUNCTION_FLUSH:Vpt.default,functionFlush:Vpt.default,FUNCTION_KILL:jpt.default,functionKill:jpt.default,FUNCTION_LIST_WITHCODE:Kpt.default,functionListWithCode:Kpt.default,FUNCTION_LIST:Gpt.default,functionList:Gpt.default,FUNCTION_LOAD:zpt.default,functionLoad:zpt.default,FUNCTION_RESTORE:Ypt.default,functionRestore:Ypt.default,FUNCTION_STATS:Qpt.default,functionStats:Qpt.default,GEOADD:dpt.default,geoAdd:dpt.default,GEODIST:fpt.default,geoDist:fpt.default,GEOHASH:hpt.default,geoHash:hpt.default,GEOPOS:ppt.default,geoPos:ppt.default,GEORADIUS_RO_WITH:mpt.default,geoRadiusRoWith:mpt.default,GEORADIUS_RO:gpt.default,geoRadiusRo:gpt.default,GEORADIUS_STORE:_pt.default,geoRadiusStore:_pt.default,GEORADIUS_WITH:Apt.default,geoRadiusWith:Apt.default,GEORADIUS:Ept.default,geoRadius:Ept.default,GEORADIUSBYMEMBER_RO_WITH:ypt.default,geoRadiusByMemberRoWith:ypt.default,GEORADIUSBYMEMBER_RO:vpt.default,geoRadiusByMemberRo:vpt.default,GEORADIUSBYMEMBER_STORE:Spt.default,geoRadiusByMemberStore:Spt.default,GEORADIUSBYMEMBER_WITH:Tpt.default,geoRadiusByMemberWith:Tpt.default,GEORADIUSBYMEMBER:bpt.default,geoRadiusByMember:bpt.default,GEOSEARCH_WITH:Ipt.default,geoSearchWith:Ipt.default,GEOSEARCH:Rpt.default,geoSearch:Rpt.default,GEOSEARCHSTORE:Cpt.default,geoSearchStore:Cpt.default,GET:xpt.default,get:xpt.default,GETBIT:wpt.default,getBit:wpt.default,GETDEL:Npt.default,getDel:Npt.default,GETEX:Opt.default,getEx:Opt.default,GETRANGE:Dpt.default,getRange:Dpt.default,GETSET:Ppt.default,getSet:Ppt.default,HDEL:Wpt.default,hDel:Wpt.default,HELLO:Xpt.default,hello:Xpt.default,HEXISTS:Jpt.default,hExists:Jpt.default,HEXPIRE:Zpt.default,hExpire:Zpt.default,HEXPIREAT:emt.default,hExpireAt:emt.default,HEXPIRETIME:tmt.default,hExpireTime:tmt.default,HGET:rmt.default,hGet:rmt.default,HGETALL:nmt.default,hGetAll:nmt.default,HGETDEL:smt.default,hGetDel:smt.default,HGETEX:imt.default,hGetEx:imt.default,HINCRBY:amt.default,hIncrBy:amt.default,HINCRBYFLOAT:omt.default,hIncrByFloat:omt.default,HKEYS:cmt.default,hKeys:cmt.default,HLEN:umt.default,hLen:umt.default,HMGET:lmt.default,hmGet:lmt.default,HPERSIST:dmt.default,hPersist:dmt.default,HPEXPIRE:fmt.default,hpExpire:fmt.default,HPEXPIREAT:hmt.default,hpExpireAt:hmt.default,HPEXPIRETIME:pmt.default,hpExpireTime:pmt.default,HPTTL:mmt.default,hpTTL:mmt.default,HRANDFIELD_COUNT_WITHVALUES:gmt.default,hRandFieldCountWithValues:gmt.default,HRANDFIELD_COUNT:_mt.default,hRandFieldCount:_mt.default,HRANDFIELD:Amt.default,hRandField:Amt.default,HSCAN:Emt.default,hScan:Emt.default,HSCAN_NOVALUES:ymt.default,hScanNoValues:ymt.default,HSET:vmt.default,hSet:vmt.default,HSETEX:Smt.default,hSetEx:Smt.default,HSETNX:Tmt.default,hSetNX:Tmt.default,HSTRLEN:bmt.default,hStrLen:bmt.default,HTTL:Imt.default,hTTL:Imt.default,HVALS:Rmt.default,hVals:Rmt.default,HOTKEYS_GET:Cmt.default,hotkeysGet:Cmt.default,HOTKEYS_RESET:xmt.default,hotkeysReset:xmt.default,HOTKEYS_START:wmt.default,hotkeysStart:wmt.default,HOTKEYS_STOP:Nmt.default,hotkeysStop:Nmt.default,INCR:Omt.default,incr:Omt.default,INCRBY:Dmt.default,incrBy:Dmt.default,INCRBYFLOAT:Pmt.default,incrByFloat:Pmt.default,INFO:Lmt.default,info:Lmt.default,KEYS:Mmt.default,keys:Mmt.default,LASTSAVE:kmt.default,lastSave:kmt.default,LATENCY_DOCTOR:Bmt.default,latencyDoctor:Bmt.default,LATENCY_GRAPH:Umt.default,latencyGraph:Umt.default,LATENCY_HISTORY:Fmt.default,latencyHistory:Fmt.default,LATENCY_HISTOGRAM:_Et.default,latencyHistogram:_Et.default,LATENCY_LATEST:$mt.default,latencyLatest:$mt.default,LATENCY_RESET:qmt.default,latencyReset:qmt.default,LCS_IDX_WITHMATCHLEN:Hmt.default,lcsIdxWithMatchLen:Hmt.default,LCS_IDX:Vmt.default,lcsIdx:Vmt.default,LCS_LEN:jmt.default,lcsLen:jmt.default,LCS:Kmt.default,lcs:Kmt.default,LINDEX:Gmt.default,lIndex:Gmt.default,LINSERT:zmt.default,lInsert:zmt.default,LLEN:Ymt.default,lLen:Ymt.default,LMOVE:Qmt.default,lMove:Qmt.default,LMPOP:Wmt.default,lmPop:Wmt.default,LOLWUT:cjr.default,LPOP_COUNT:Xmt.default,lPopCount:Xmt.default,LPOP:Jmt.default,lPop:Jmt.default,LPOS_COUNT:Zmt.default,lPosCount:Zmt.default,LPOS:egt.default,lPos:egt.default,LPUSH:tgt.default,lPush:tgt.default,LPUSHX:rgt.default,lPushX:rgt.default,LRANGE:ngt.default,lRange:ngt.default,LREM:sgt.default,lRem:sgt.default,LSET:igt.default,lSet:igt.default,LTRIM:agt.default,lTrim:agt.default,MEMORY_DOCTOR:ogt.default,memoryDoctor:ogt.default,"MEMORY_MALLOC-STATS":cgt.default,memoryMallocStats:cgt.default,MEMORY_PURGE:ugt.default,memoryPurge:ugt.default,MEMORY_STATS:lgt.default,memoryStats:lgt.default,MEMORY_USAGE:dgt.default,memoryUsage:dgt.default,MGET:fgt.default,mGet:fgt.default,MIGRATE:hgt.default,migrate:hgt.default,MODULE_LIST:pgt.default,moduleList:pgt.default,MODULE_LOAD:mgt.default,moduleLoad:mgt.default,MODULE_UNLOAD:ggt.default,moduleUnload:ggt.default,MOVE:_gt.default,move:_gt.default,MSET:Agt.default,mSet:Agt.default,MSETEX:Egt.default,mSetEx:Egt.default,MSETNX:ygt.default,mSetNX:ygt.default,OBJECT_ENCODING:vgt.default,objectEncoding:vgt.default,OBJECT_FREQ:Sgt.default,objectFreq:Sgt.default,OBJECT_IDLETIME:Tgt.default,objectIdleTime:Tgt.default,OBJECT_REFCOUNT:bgt.default,objectRefCount:bgt.default,PERSIST:Igt.default,persist:Igt.default,PEXPIRE:Rgt.default,pExpire:Rgt.default,PEXPIREAT:Cgt.default,pExpireAt:Cgt.default,PEXPIRETIME:xgt.default,pExpireTime:xgt.default,PFADD:wgt.default,pfAdd:wgt.default,PFCOUNT:Ngt.default,pfCount:Ngt.default,PFMERGE:Ogt.default,pfMerge:Ogt.default,PING:Dgt.default,ping:Dgt.default,PSETEX:Pgt.default,pSetEx:Pgt.default,PTTL:Lgt.default,pTTL:Lgt.default,PUBLISH:Mgt.default,publish:Mgt.default,PUBSUB_CHANNELS:kgt.default,pubSubChannels:kgt.default,PUBSUB_NUMPAT:Bgt.default,pubSubNumPat:Bgt.default,PUBSUB_NUMSUB:Ugt.default,pubSubNumSub:Ugt.default,PUBSUB_SHARDNUMSUB:Fgt.default,pubSubShardNumSub:Fgt.default,PUBSUB_SHARDCHANNELS:$gt.default,pubSubShardChannels:$gt.default,RANDOMKEY:qgt.default,randomKey:qgt.default,READONLY:Hgt.default,readonly:Hgt.default,RENAME:Vgt.default,rename:Vgt.default,RENAMENX:jgt.default,renameNX:jgt.default,REPLICAOF:Kgt.default,replicaOf:Kgt.default,"RESTORE-ASKING":Ggt.default,restoreAsking:Ggt.default,RESTORE:zgt.default,restore:zgt.default,RPOP_COUNT:Qgt.default,rPopCount:Qgt.default,ROLE:Ygt.default,role:Ygt.default,RPOP:Wgt.default,rPop:Wgt.default,RPOPLPUSH:Xgt.default,rPopLPush:Xgt.default,RPUSH:Jgt.default,rPush:Jgt.default,RPUSHX:Zgt.default,rPushX:Zgt.default,SADD:e_t.default,sAdd:e_t.default,SCAN:t_t.default,scan:t_t.default,SCARD:r_t.default,sCard:r_t.default,SCRIPT_DEBUG:n_t.default,scriptDebug:n_t.default,SCRIPT_EXISTS:s_t.default,scriptExists:s_t.default,SCRIPT_FLUSH:i_t.default,scriptFlush:i_t.default,SCRIPT_KILL:a_t.default,scriptKill:a_t.default,SCRIPT_LOAD:o_t.default,scriptLoad:o_t.default,SDIFF:c_t.default,sDiff:c_t.default,SDIFFSTORE:u_t.default,sDiffStore:u_t.default,SET:l_t.default,set:l_t.default,SETBIT:d_t.default,setBit:d_t.default,SETEX:f_t.default,setEx:f_t.default,SETNX:h_t.default,setNX:h_t.default,SETRANGE:p_t.default,setRange:p_t.default,SINTER:m_t.default,sInter:m_t.default,SINTERCARD:g_t.default,sInterCard:g_t.default,SINTERSTORE:__t.default,sInterStore:__t.default,SISMEMBER:A_t.default,sIsMember:A_t.default,SMEMBERS:E_t.default,sMembers:E_t.default,SMISMEMBER:y_t.default,smIsMember:y_t.default,SMOVE:v_t.default,sMove:v_t.default,SORT_RO:S_t.default,sortRo:S_t.default,SORT_STORE:T_t.default,sortStore:T_t.default,SORT:b_t.default,sort:b_t.default,SPOP_COUNT:I_t.default,sPopCount:I_t.default,SPOP:R_t.default,sPop:R_t.default,SPUBLISH:C_t.default,sPublish:C_t.default,SRANDMEMBER_COUNT:x_t.default,sRandMemberCount:x_t.default,SRANDMEMBER:w_t.default,sRandMember:w_t.default,SREM:N_t.default,sRem:N_t.default,SSCAN:O_t.default,sScan:O_t.default,STRLEN:D_t.default,strLen:D_t.default,SUNION:P_t.default,sUnion:P_t.default,SUNIONSTORE:L_t.default,sUnionStore:L_t.default,SWAPDB:M_t.default,swapDb:M_t.default,TIME:k_t.default,time:k_t.default,TOUCH:B_t.default,touch:B_t.default,TTL:U_t.default,ttl:U_t.default,TYPE:F_t.default,type:F_t.default,UNLINK:$_t.default,unlink:$_t.default,WAIT:q_t.default,wait:q_t.default,XACK:H_t.default,xAck:H_t.default,XACKDEL:V_t.default,xAckDel:V_t.default,XADD_NOMKSTREAM:j_t.default,xAddNoMkStream:j_t.default,XADD:K_t.default,xAdd:K_t.default,XAUTOCLAIM_JUSTID:G_t.default,xAutoClaimJustId:G_t.default,XAUTOCLAIM:z_t.default,xAutoClaim:z_t.default,XCLAIM_JUSTID:Y_t.default,xClaimJustId:Y_t.default,XCLAIM:Q_t.default,xClaim:Q_t.default,XCFGSET:W_t.default,xCfgSet:W_t.default,XDEL:X_t.default,xDel:X_t.default,XDELEX:J_t.default,xDelEx:J_t.default,XGROUP_CREATE:Z_t.default,xGroupCreate:Z_t.default,XGROUP_CREATECONSUMER:eAt.default,xGroupCreateConsumer:eAt.default,XGROUP_DELCONSUMER:tAt.default,xGroupDelConsumer:tAt.default,XGROUP_DESTROY:rAt.default,xGroupDestroy:rAt.default,XGROUP_SETID:nAt.default,xGroupSetId:nAt.default,XINFO_CONSUMERS:sAt.default,xInfoConsumers:sAt.default,XINFO_GROUPS:iAt.default,xInfoGroups:iAt.default,XINFO_STREAM:aAt.default,xInfoStream:aAt.default,XLEN:oAt.default,xLen:oAt.default,XPENDING_RANGE:cAt.default,xPendingRange:cAt.default,XPENDING:uAt.default,xPending:uAt.default,XRANGE:lAt.default,xRange:lAt.default,XREAD:dAt.default,xRead:dAt.default,XREADGROUP:fAt.default,xReadGroup:fAt.default,XREVRANGE:hAt.default,xRevRange:hAt.default,XSETID:pAt.default,xSetId:pAt.default,XTRIM:mAt.default,xTrim:mAt.default,ZADD_INCR:gAt.default,zAddIncr:gAt.default,ZADD:_At.default,zAdd:_At.default,ZCARD:AAt.default,zCard:AAt.default,ZCOUNT:EAt.default,zCount:EAt.default,ZDIFF_WITHSCORES:yAt.default,zDiffWithScores:yAt.default,ZDIFF:vAt.default,zDiff:vAt.default,ZDIFFSTORE:SAt.default,zDiffStore:SAt.default,ZINCRBY:TAt.default,zIncrBy:TAt.default,ZINTER_WITHSCORES:bAt.default,zInterWithScores:bAt.default,ZINTER:IAt.default,zInter:IAt.default,ZINTERCARD:RAt.default,zInterCard:RAt.default,ZINTERSTORE:CAt.default,zInterStore:CAt.default,ZLEXCOUNT:xAt.default,zLexCount:xAt.default,ZMPOP:wAt.default,zmPop:wAt.default,ZMSCORE:NAt.default,zmScore:NAt.default,ZPOPMAX_COUNT:OAt.default,zPopMaxCount:OAt.default,ZPOPMAX:DAt.default,zPopMax:DAt.default,ZPOPMIN_COUNT:PAt.default,zPopMinCount:PAt.default,ZPOPMIN:LAt.default,zPopMin:LAt.default,ZRANDMEMBER_COUNT_WITHSCORES:MAt.default,zRandMemberCountWithScores:MAt.default,ZRANDMEMBER_COUNT:kAt.default,zRandMemberCount:kAt.default,ZRANDMEMBER:BAt.default,zRandMember:BAt.default,ZRANGE_WITHSCORES:UAt.default,zRangeWithScores:UAt.default,ZRANGE:FAt.default,zRange:FAt.default,ZRANGEBYLEX:$At.default,zRangeByLex:$At.default,ZRANGEBYSCORE_WITHSCORES:qAt.default,zRangeByScoreWithScores:qAt.default,ZRANGEBYSCORE:HAt.default,zRangeByScore:HAt.default,ZRANGESTORE:VAt.default,zRangeStore:VAt.default,ZRANK_WITHSCORE:KAt.default,zRankWithScore:KAt.default,ZRANK:GAt.default,zRank:GAt.default,ZREM:zAt.default,zRem:zAt.default,ZREMRANGEBYLEX:YAt.default,zRemRangeByLex:YAt.default,ZREMRANGEBYRANK:QAt.default,zRemRangeByRank:QAt.default,ZREMRANGEBYSCORE:jAt.default,zRemRangeByScore:jAt.default,ZREVRANK:WAt.default,zRevRank:WAt.default,ZSCAN:XAt.default,zScan:XAt.default,ZSCORE:JAt.default,zScore:JAt.default,ZUNION_WITHSCORES:ZAt.default,zUnionWithScores:ZAt.default,ZUNION:eEt.default,zUnion:eEt.default,ZUNIONSTORE:tEt.default,zUnionStore:tEt.default,VADD:rEt.default,vAdd:rEt.default,VCARD:nEt.default,vCard:nEt.default,VDIM:sEt.default,vDim:sEt.default,VEMB:iEt.default,vEmb:iEt.default,VEMB_RAW:aEt.default,vEmbRaw:aEt.default,VGETATTR:oEt.default,vGetAttr:oEt.default,VINFO:cEt.default,vInfo:cEt.default,VLINKS:uEt.default,vLinks:uEt.default,VLINKS_WITHSCORES:lEt.default,vLinksWithScores:lEt.default,VRANDMEMBER:dEt.default,vRandMember:dEt.default,VRANGE:fEt.default,vRange:fEt.default,VREM:hEt.default,vRem:hEt.default,VSETATTR:pEt.default,vSetAttr:pEt.default,VSIM:mEt.default,vSim:mEt.default,VSIM_WITHSCORES:gEt.default,vSimWithScores:gEt.default};var ujr=re(Jf()),{HOTKEYS_GET:kos,hotkeysGet:Bos,HOTKEYS_RESET:Uos,hotkeysReset:Fos,HOTKEYS_START:$os,hotkeysStart:qos,HOTKEYS_STOP:Hos,hotkeysStop:Vos,...ljr}=ujr.default;gi.NON_STICKY_COMMANDS=ljr});var rM=S(Vr=>{"use strict";var AEt=Vr&&Vr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},EEt;Object.defineProperty(Vr,"__esModule",{value:!0});Vr.emitDiagnostics=Vr.dbgMaintenance=Vr.MAINTENANCE_EVENTS=Vr.SMIGRATED_EVENT=void 0;var yEt=require("net"),djr=require("dns/promises"),jR=AEt(require("node:assert")),fjr=require("node:timers/promises"),hjr=AEt(require("node:diagnostics_channel"));Vr.SMIGRATED_EVENT="__SMIGRATED";Vr.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var rE={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},pjr=(...e)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...e)};Vr.dbgMaintenance=pjr;var mjr=e=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;hjr.default.channel("redis.maintenance").publish(e)};Vr.emitDiagnostics=mjr;var mq=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(t){t.maintNotifications===void 0&&(t.maintNotifications=t?.RESP===3?"auto":"disabled"),t.maintEndpointType===void 0&&(t.maintEndpointType="auto"),t.maintRelaxedSocketTimeout===void 0&&(t.maintRelaxedSocketTimeout=1e4),t.maintRelaxedCommandTimeout===void 0&&(t.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(t){if(t.maintNotifications==="disabled")return;let r=t.url?new URL(t.url).hostname:t.socket?.host;if(!r)return;let n=t.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await _jr(n,r,t)],errorHandler:i=>{if((0,Vr.dbgMaintenance)("handshake failed:",i),t.maintNotifications==="enabled")throw i}}}constructor(t,r,n){this.#e=t,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=t=>{if((0,Vr.dbgMaintenance)("ONPUSH:",t.map(String)),!Array.isArray(t)||!Object.values(rE).includes(String(t[0])))return!1;let r=String(t[0]);switch((0,Vr.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:t.map(String)}}),r){case rE.MOVING:{let n=t[2],s=t[3]?String(t[3]):null;return(0,Vr.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case rE.MIGRATING:case rE.SMIGRATING:case rE.FAILING_OVER:return(0,Vr.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case rE.MIGRATED:case rE.FAILED_OVER:return(0,Vr.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case rE.SMIGRATED:return(0,Vr.dbgMaintenance)("Received SMIGRATED"),this.#c(t),this.#i(),!0}return!1};#o=async(t,r)=>{this.#s();let n,s;if(r===null){(0,jR.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=t*1e3/2;(0,Vr.dbgMaintenance)(`Wait for ${d}ms`),await(0,fjr.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,Vr.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,Vr.dbgMaintenance)("Creating new tmp client");let i=performance.now();if(this.#t.url){let u=new URL(this.#t.url);u.hostname=n,u.port=String(s),this.#t.url=u.toString()}else this.#t.socket={...this.#t.socket,host:n,port:s};let a=this.#n.duplicate();a.on("error",u=>{(0,Vr.dbgMaintenance)("[ERR]",u)}),(0,Vr.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,Vr.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,Vr.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,Vr.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,Vr.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,Vr.dbgMaintenance)("In-flight commands completed"),(0,Vr.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,Vr.dbgMaintenance)("Swap client sockets done."),(0,Vr.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,Vr.dbgMaintenance)("Timeout relaxation already done");return}let t={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(t)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,Vr.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let t={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(t)};#c=t=>{let r=EEt.parseSMigratedPush(t);(0,Vr.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(t){let r=new Map;for(let[s,i,a]of t[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(h=>{let p=h.indexOf("-");return p===-1?Number(h):[Number(h.substring(0,p)),Number(h.substring(p+1))]}),d=r.get(o)??[],f=d.find(h=>h.addr.host===c&&h.addr.port===Number(u));f?f.slots=f.slots.concat(l):d.push({addr:{host:c,port:Number(u)},slots:l}),r.set(o,d)}let n=[];for(let[s,i]of r.entries()){let[a,o]=s.split(":");n.push({source:{host:a,port:Number(o)},destinations:i})}return{seqId:t[1],entries:n}}#l(){(0,jR.default)(this.#t.socket!==void 0),(0,jR.default)("host"in this.#t.socket),(0,jR.default)(typeof this.#t.socket.host=="string");let t=this.#t.socket.host;(0,jR.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:t,port:r}}};EEt=mq;Vr.default=mq;function gjr(e){let t=(0,yEt.isIP)(e);if(t===4){let r=e.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return t===6?e.startsWith("fc")||e.startsWith("fd")||e==="::1"||e.startsWith("fe80"):!1}async function _jr(e,t,r){if((0,jR.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,Vr.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,yEt.isIP)(t)?t:(await(0,djr.lookup)(t,{family:0})).address,s=gjr(n),i;return e?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,Vr.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var REt=S(nM=>{"use strict";var IEt=nM&&nM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(nM,"__esModule",{value:!0});var vEt=require("node:events"),SEt=IEt(require("node:net")),Ajr=IEt(require("node:tls")),$h=Bh(),TEt=require("node:timers/promises"),bEt=rM(),IAe=class extends vEt.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#m=0;get socketEpoch(){return this.#m}constructor(t,r){super(),this.#e=t,this.#t=r?.connectTimeout??5e3,this.#r=this.#h(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#h(t){let r=t?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,s)=>{try{let i=r(n,s);if(i!==!1&&!(i instanceof Error)&&typeof i!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${i} instead`);return i}catch(i){return this.emit("error",i),this.defaultReconnectStrategy(n,i)}}:this.defaultReconnectStrategy}#d(t){if(t?.tls===!0){let n={...t,port:t?.port??6379,noDelay:t?.noDelay??!0,keepAlive:t?.keepAlive??!0,keepAliveInitialDelay:t?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Ajr.default.connect(n)},event:"secureConnect"}}if(t&&"path"in t){let n={...t,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return SEt.default.createConnection(n)},event:"connect"}}let r={...t,port:t?.port??6379,noDelay:t?.noDelay??!0,keepAlive:t?.keepAlive??!0,keepAliveInitialDelay:t?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return SEt.default.createConnection(r)},event:"connect"}}#f(t,r){let n=this.#r(t,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new $h.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#p()}async#p(){let t=0;do try{this.#s=await this.#A(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(t++,new $h.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,TEt.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#m++,this.emit("ready")}catch(r){let n=this.#f(t++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,TEt.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(t){if((0,bEt.dbgMaintenance)(`Set socket timeout to ${t}`),this.#o===t){(0,bEt.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${t}, skipping`);return}this.#o=t,t!==void 0?this.#s?.setTimeout(t):this.#s?.setTimeout(this.#a??0)}async#A(){let t=this.#n.create(),r;return this.#t!==void 0&&(r=()=>t.destroy(new $h.ConnectionTimeoutError),t.once("timeout",r),t.setTimeout(this.#t)),this.#l&&t.unref(),await(0,vEt.once)(t,this.#n.event),r&&t.removeListener("timeout",r),this.#a&&(t.once("timeout",()=>{let n=this.#o?new $h.SocketTimeoutDuringMaintenanceError(this.#o):new $h.SocketTimeoutError(this.#a);t.destroy(n)}),t.setTimeout(this.#a)),t.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==t||this.#g(new $h.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),t}#g(t){let r=this.#c;this.#c=!1,this.emit("error",t),!(!r||!this.#i||typeof this.#f(0,t)!="number")&&(this.emit("reconnecting"),this.#p().catch(()=>{}))}write(t){if(this.#s){this.#s.cork();for(let r of t){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(t){if(!this.#i)throw new $h.ClientClosedError;this.#i=!1;let r=await t();return this.destroySocket(),r}close(){if(!this.#i)throw new $h.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new $h.ClientClosedError;this.#i=!1,this.destroySocket()}destroySocket(){this.#c=!1,this.#s&&(this.#s.destroy(),this.#s=void 0),this.emit("end")}ref(){this.#l=!1,this.#s?.ref()}unref(){this.#l=!0,this.#s?.unref()}defaultReconnectStrategy(t,r){if(r instanceof $h.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,t)*50,2e3)+n}};nM.default=IAe});var CAe=S(gq=>{"use strict";Object.defineProperty(gq,"__esModule",{value:!0});gq.Token=void 0;var RAe=class{value;expiresAtMs;receivedAtMs;constructor(t,r,n){this.value=t,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(t){return this.expiresAtMs{"use strict";Object.defineProperty(KR,"__esModule",{value:!0});KR.TokenManager=KR.IDPError=void 0;var Ejr=CAe(),_q=class extends Error{message;isRetryable;constructor(t,r){super(t),this.message=t,this.isRetryable=r,this.name="IDPError"}};KR.IDPError=_q;var xAe=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(t,r){if(this.identityProvider=t,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(t,r=0){return this.listener&&this.stop(),this.listener=t,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:t,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=t*Math.pow(n,this.retryAttempt-1);if(i=Math.min(i,r),s){let o=i*(s/100),c=Math.random()*o-o/2;i+=c}return Math.max(0,Math.floor(i))}shouldRetry(t){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(t,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(t){if(this.shouldRetry(t)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${t}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(t,!1),this.stop()}}handleNewToken=async({token:t,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(t,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(t,r){let n=Date.now(),s=new Ejr.Token(t,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(t){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),t===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),t)}calculateRefreshTime(t,r=Date.now()){let n=t.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(t,r){let n=t instanceof Error?t.message:String(t);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new _q(n,r))}};KR.TokenManager=xAe});var xEt=S(GR=>{"use strict";Object.defineProperty(GR,"__esModule",{value:!0});GR.UnableToObtainNewCredentialsError=GR.CredentialsError=void 0;var wAe=class extends Error{constructor(t){super(`Re-authentication with latest credentials failed: ${t}`),this.name="CredentialsError"}};GR.CredentialsError=wAe;var NAe=class extends Error{constructor(t){super(`Unable to obtain new credentials : ${t}`),this.name="UnableToObtainNewCredentialsError"}};GR.UnableToObtainNewCredentialsError=NAe});var OEt=S(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});Bd.Token=Bd.CredentialsError=Bd.UnableToObtainNewCredentialsError=Bd.IDPError=Bd.TokenManager=void 0;var wEt=CEt();Object.defineProperty(Bd,"TokenManager",{enumerable:!0,get:function(){return wEt.TokenManager}});Object.defineProperty(Bd,"IDPError",{enumerable:!0,get:function(){return wEt.IDPError}});var NEt=xEt();Object.defineProperty(Bd,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return NEt.UnableToObtainNewCredentialsError}});Object.defineProperty(Bd,"CredentialsError",{enumerable:!0,get:function(){return NEt.CredentialsError}});var yjr=CAe();Object.defineProperty(Bd,"Token",{enumerable:!0,get:function(){return yjr.Token}})});var Eq=S(qh=>{"use strict";var vjr=qh&&qh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qh,"__esModule",{value:!0});qh.EmptyAwareSinglyLinkedList=qh.SinglyLinkedList=qh.DoublyLinkedList=void 0;var Sjr=vjr(require("events")),OAe=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(t){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:t}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:t}}unshift(t){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:t}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:t}}add(t,r=!1){return r?this.unshift(t):this.push(t)}shift(){if(this.#t===void 0)return;--this.#e;let t=this.#t;return t.next?(t.next.previous=void 0,this.#t=t.next,t.next=void 0):this.#t=this.#r=void 0,t.value}remove(t){this.#e!==0&&(--this.#e,this.#r===t&&(this.#r=t.previous),this.#t===t?this.#t=t.next:(t.previous&&(t.previous.next=t.next),t.next&&(t.next.previous=t.previous)),t.previous=void 0,t.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let t=this.#t;for(;t!==void 0;)yield t.value,t=t.next}*nodes(){let t=this.#t;for(;t;){let r=t.next;yield t,t=r}}};qh.DoublyLinkedList=OAe;var Aq=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(t){++this.#e;let r={value:t,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(t,r){if(t.removed)throw new Error("node already removed");--this.#e,this.#t===t?this.#r===t?this.#t=this.#r=void 0:this.#t=t.next:this.#r===t?(this.#r=r,r.next=void 0):r.next=t.next,t.removed=!0}shift(){if(this.#t===void 0)return;let t=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=t.next,t.removed=!0,t.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let t=this.#t;for(;t!==void 0;)yield t.value,t=t.next}};qh.SinglyLinkedList=Aq;var DAe=class extends Aq{events=new Sjr.default;reset(){let t=this.length;super.reset(),t!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let t=this.length,r=super.shift();return t!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(t,r){let n=this.length;super.remove(t,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};qh.EmptyAwareSinglyLinkedList=DAe});var DEt=S(PAe=>{"use strict";Object.defineProperty(PAe,"__esModule",{value:!0});var sM=`\r +`;function Tjr(e){let t=[],r="*"+e.length+sM;for(let n=0;n{var PEt=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],bjr=function(t){for(var r,n=0,s=0,i=[],a=t.length;n>6|192,i[s++]=r&63|128):(r&64512)===55296&&n+1>18|240,i[s++]=r>>12&63|128,i[s++]=r>>6&63|128,i[s++]=r&63|128):(i[s++]=r>>12|224,i[s++]=r>>6&63|128,i[s++]=r&63|128);return i},LEt=LAe.exports=function(t){for(var r,n=0,s=-1,i=0,a=0,o=typeof t=="string"?bjr(t):t,c=o.length;n>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=PEt[(r^i>>8)&255]^i<<8}return i&16383};LAe.exports.generateMulti=function(t){for(var r=1,n=t.length,s=LEt(t[0]);r{"use strict";var Ijr=cr&&cr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(cr,"__esModule",{value:!0});cr.PubSub=cr.PUBSUB_TYPE=void 0;var Rjr=Ijr(MAe());cr.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var bo={[cr.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[cr.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[cr.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},kAe=class e{static isStatusReply(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return bo[cr.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||bo[cr.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||bo[cr.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||bo[cr.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||bo[cr.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return bo[cr.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(t){return Array.isArray(t)?t:[t]}static#t(t,r){return r?t.buffers:t.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[cr.PUBSUB_TYPE.CHANNELS]:new Map,[cr.PUBSUB_TYPE.PATTERNS]:new Map,[cr.PUBSUB_TYPE.SHARDED]:new Map};subscribe(t,r,n,s){let i=[bo[t].subscribe],a=e.#e(r);for(let o of a){let c=this.listeners[t].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)e.#t(this.listeners[t].get(o),s).add(n);return}return this.#n=!0,this.#r++,{args:i,channelsCounter:i.length-1,resolve:()=>{this.#r--;for(let o of a){let c=this.listeners[t].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[t].set(o,c)),e.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(t,r,n){if(this.#a(t,r,n))return this.#n=!0,this.#r++,{args:[bo[t].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(t,r,n){let s=this.listeners[t].get(r);if(!s)return this.listeners[t].set(r,n),!0;for(let i of n.buffers)s.buffers.add(i);for(let i of n.strings)s.strings.add(i);return!1}extendTypeListeners(t,r){let n=[bo[t].subscribe];for(let[s,i]of r)this.#a(t,s,i)&&n.push(s);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}unsubscribe(t,r,n,s){let i=this.listeners[t];if(!r)return this.#o([bo[t].unsubscribe],NaN,()=>i.clear());let a=e.#e(r);if(!n)return this.#o([bo[t].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[bo[t].unsubscribe];for(let c of a){let u=i.get(c);if(u){let l,d;if(s?(l=u.buffers,d=u.strings):(l=u.strings,d=u.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;u.unsubscribing=!0}o.push(c)}if(o.length===1){for(let c of a)e.#t(i.get(c),s).delete(n);return}return this.#o(o,o.length-1,()=>{for(let c of a){let u=i.get(c);u&&((s?u.buffers:u.strings).delete(n),u.buffers.size===0&&u.strings.size===0&&i.delete(c))}})}#o(t,r,n){return{args:t,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[cr.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[cr.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[cr.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let t=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===cr.PUBSUB_TYPE.SHARDED?this.#c(t,n):this.#i(t,r,n));return t}#i(t,r,n){this.#r++;let s=()=>this.#r--;t.push({args:[bo[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(t,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,t.push({args:[bo[cr.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(t){let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];return bo[cr.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(cr.PUBSUB_TYPE.CHANNELS,t[2],t[1]),!0):bo[cr.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(cr.PUBSUB_TYPE.PATTERNS,t[3],t[2],t[1]),!0):bo[cr.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(cr.PUBSUB_TYPE.SHARDED,t[2],t[1]),!0):!1}removeShardedListeners(t){let r=this.listeners[cr.PUBSUB_TYPE.SHARDED].get(t);return this.listeners[cr.PUBSUB_TYPE.SHARDED].delete(t),this.#s(),r}removeAllListeners(){let t={[cr.PUBSUB_TYPE.CHANNELS]:this.listeners[cr.PUBSUB_TYPE.CHANNELS],[cr.PUBSUB_TYPE.PATTERNS]:this.listeners[cr.PUBSUB_TYPE.PATTERNS],[cr.PUBSUB_TYPE.SHARDED]:this.listeners[cr.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[cr.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[cr.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[cr.PUBSUB_TYPE.SHARDED]=new Map,t}removeShardedPubSubListenersForSlots(t){let r=new Map;for(let[n,s]of this.listeners[cr.PUBSUB_TYPE.SHARDED])t.has((0,Rjr.default)(n))&&(r.set(n,s),this.listeners[cr.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[cr.PUBSUB_TYPE.SHARDED]:r}}#l(t,r,n,s){let i=(s??n).toString(),a=this.listeners[t].get(i);if(!a)return;for(let u of a.buffers)u(r,n);if(!a.strings.size)return;let o=s?n.toString():i,c=o==="__redis__:invalidate"?r===null?null:r.map(u=>u.toString()):r.toString();for(let u of a.strings)u(c,o)}};cr.PubSub=kAe});var kEt=S(oM=>{"use strict";var Cjr=oM&&oM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oM,"__esModule",{value:!0});var MEt=Eq(),xjr=Cjr(DEt()),aM=aq(),BAe=iM(),zR=Bh(),YR=rM(),wjr=Buffer.from("pong"),Njr=Buffer.from("RESET"),Ojr={...aM.PUSH_TYPE_MAPPING,[aM.RESP_TYPES.SIMPLE_STRING]:Buffer},UAe=class e{#e;#t;#r=new MEt.DoublyLinkedList;#n=new MEt.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new BAe.PubSub;#i=[this.#h.bind(this)];#c;setMaintenanceCommandTimeout(t){if(this.#c===t){(0,YR.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${t}, skipping`);return}if((0,YR.dbgMaintenance)(`Setting maintenance command timeout to ${t}`),this.#c=t,this.#c===void 0){(0,YR.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let s of this.#r.nodes()){let i=s.value;e.#I(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new zR.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,YR.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${t}`)}get isPubSubActive(){return this.#s.isActive}constructor(t,r,n){this.#e=t,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(t){this.#n.shift().resolve(t)}#m(t){this.#n.shift().reject(t)}#h(t){if(this.#s.handleMessageReply(t))return!0;let r=BAe.PubSub.isShardedUnsubscribe(t);if(r&&!this.#n.length){let n=t[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||BAe.PubSub.isStatusReply(t)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&t[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new aM.Decoder({onReply:t=>this.#l(t),onErrorReply:t=>this.#m(t),onPush:t=>{for(let r of this.#i)if(r(t))return},getTypeMapping:()=>this.#d()})}addPushHandler(t){this.#i.push(t)}async waitForInflightCommandsToComplete(t){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=t?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,YR.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),t?.flushOnTimeout&&a>0&&((0,YR.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#T(new zR.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(t,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new zR.AbortError):new Promise((n,s)=>{let i,a={args:t,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#c??r?.timeout,c=this.#c!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(i),a.reject(c?new zR.CommandTimeoutDuringMaintenanceError(o):new zR.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let u=r?.abortSignal;u&&(a.abort={signal:u,listener:()=>{this.#r.remove(i),a.reject(new zR.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#p(t,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:t.args,chainId:n,abort:void 0,timeout:void 0,resolve(){t.resolve(),s()},reject(a){t.reject?.(),i(a)},channelsCounter:t.channelsCounter,typeMapping:aM.PUSH_TYPE_MAPPING},r)})}#A(){this.#e===2&&(this.decoder.onReply=t=>{if(Array.isArray(t)){if(this.#h(t))return;let r=typeof t[0]=="string"?Buffer.from(t[0]):t[0];if(wjr.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=t[1].length===0?t[0]:t[1];n(s?.[aM.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(t)},this.decoder.getTypeMapping=()=>Ojr)}subscribe(t,r,n,s){let i=this.#s.subscribe(t,r,n,s);if(i)return this.#A(),this.#p(i)}#g(){this.decoder.onReply=t=>this.#l(t),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(t,r,n,s){let i=this.#s.unsubscribe(t,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#p(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(t){return this.#s.removeShardedPubSubListenersForSlots(t)}resubscribe(t){let r=this.#s.resubscribe();if(r.length)return this.#A(),Promise.all(r.map(n=>this.#p(n,!0,t)))}extendPubSubChannelListeners(t,r,n){let s=this.#s.extendChannelListeners(t,r,n);if(s)return this.#A(),this.#p(s)}extendPubSubListeners(t,r){let n=this.#s.extendTypeListeners(t,r);if(n)return this.#A(),this.#p(n)}getPubSubListeners(t){return this.#s.listeners[t]}monitor(t,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#v?this.#v=t:this.decoder.onReply=t,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#v;async reset(t,r){return new Promise((n,s)=>{this.#v=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&Njr.equals(i)){this.#g(),this.#v=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#v(i)},this.#r.push({args:["RESET"],chainId:t,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let t=this.#r.shift();for(;t;){let r;try{r=(0,xjr.default)(t.args)}catch(n){t.reject(n),t=this.#r.shift();continue}t.args=void 0,t.abort&&(e.#_(t),t.abort=void 0),t.timeout&&(e.#I(t),t.timeout=void 0),this.#o=t.chainId,t.chainId=void 0,this.#n.push(t),yield r,t=this.#r.shift()}}#T(t){for(let r of this.#n)r.reject(t);this.#n.reset()}static#_(t){t.abort.signal.removeEventListener("abort",t.abort.listener)}static#I(t){t.timeout?.signal.removeEventListener("abort",t.timeout.listener)}static#S(t,r){t.abort&&e.#_(t),t.timeout&&e.#I(t),t.reject(r)}flushWaitingForReply(t){if(this.resetDecoder(),this.#s.reset(),this.#T(t),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)e.#S(this.#r.shift(),t);this.#o=void 0}}flushAll(t){this.resetDecoder(),this.#s.reset(),this.#T(t);for(let r of this.#r)e.#S(r,t);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(t){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&t.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let t=[],r=this.#r.head;for(;r;)t.push(r.value),this.#r.remove(r),r=r.next;return t}prependCommandsToWrite(t){if(t.length)for(let r=t.length-1;r>=0;r--)this.#r.unshift(t[r])}};oM.default=UAe});var Vh=S(Hh=>{"use strict";Object.defineProperty(Hh,"__esModule",{value:!0});Hh.scriptArgumentsPrefix=Hh.functionArgumentsPrefix=Hh.getTransformReply=Hh.attachConfig=void 0;function BEt(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function Djr({BaseClass:e,commands:t,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends e{};for(let[u,l]of Object.entries(t))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=BEt:c.prototype[u]=r(l,o);if(a?.modules)for(let[u,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,h]of Object.entries(l))a.RESP==3&&h.unstableResp3&&!a.unstableResp3?d[f]=BEt:d[f]=n(h,o);UEt(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,h]of Object.entries(l))d[f]=s(f,h,o);UEt(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Hh.attachConfig=Djr;function UEt(e,t,r){Object.defineProperty(e,t,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,t,{value:n}),n}})}function Pjr(e,t){switch(typeof e.transformReply){case"function":return e.transformReply;case"object":return e.transformReply[t]}}Hh.getTransformReply=Pjr;function Ljr(e,t){let r=[t.IS_READ_ONLY?"FCALL_RO":"FCALL",e];return t.NUMBER_OF_KEYS!==void 0&&r.push(t.NUMBER_OF_KEYS.toString()),r}Hh.functionArgumentsPrefix=Ljr;function Mjr(e){let t=[e.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",e.SHA1];return e.NUMBER_OF_KEYS!==void 0&&t.push(e.NUMBER_OF_KEYS.toString()),t}Hh.scriptArgumentsPrefix=Mjr});var cM=S($Ae=>{"use strict";Object.defineProperty($Ae,"__esModule",{value:!0});var FEt=Bh(),FAe=class{typeMapping;constructor(t){this.typeMapping=t}queue=[];scriptsInUse=new Set;addCommand(t,r){this.queue.push({args:t,transformReply:r})}addScript(t,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(t.SHA1)?s.push("EVALSHA",t.SHA1):(this.scriptsInUse.add(t.SHA1),s.push("EVAL",t.SCRIPT)),t.NUMBER_OF_KEYS!==void 0&&s.push(t.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(t){let r=[],n=t.map((s,i)=>{if(s instanceof FEt.ErrorReply)return r.push(i),s;let{transformReply:a,args:o}=this.queue[i];return a?a(s,o.preserve,this.typeMapping):s});if(r.length)throw new FEt.MultiErrorReply(n,r);return n}};$Ae.default=FAe});var HAe=S(uM=>{"use strict";var $Et=uM&&uM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(uM,"__esModule",{value:!0});var kjr=$Et(Jf()),Bjr=$Et(cM()),QR=Vh(),yq=Uh(),qAe=class e{static#e(t,r){let n=(0,QR.getTransformReply)(t,r);return function(...s){let i=new yq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(t,r){let n=(0,QR.getTransformReply)(t,r);return function(...s){let i=new yq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(t,r,n){let s=(0,QR.functionArgumentsPrefix)(t,r),i=(0,QR.getTransformReply)(r,n);return function(...a){let o=new yq.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(t,r){let n=(0,QR.getTransformReply)(t,r);return function(...s){let i=new yq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(t,a,n)}}static extend(t){return(0,QR.attachConfig)({BaseClass:e,commands:kjr.default,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t})}#a;#o;#s;#i;constructor(t,r,n){this.#a=new Bjr.default(n),this.#o=t,this.#s=r}SELECT(t,r){return this.#i=t,this.#a.addCommand(["SELECT",t.toString()],r),this}select=this.SELECT;addCommand(t,r){return this.#a.addCommand(t,r),this}#c(t,r,n){return this.#a.addScript(t,r,n),this}async exec(t=!1){return t?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};uM.default=qAe});var VEt=S(XR=>{"use strict";var qEt=XR&&XR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(XR,"__esModule",{value:!0});XR.RedisLegacyClient=void 0;var Ujr=Vh(),HEt=qEt(Jf()),Fjr=qEt(cM()),WR=class e{static#e(t,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),e.pushArguments(t,r),n}static pushArguments(t,r){for(let n=0;nthis.#r.emit("error",u));return}c.then(u=>o(null,s?s(u):u)).catch(u=>o(u))}}#r;#n;constructor(t){this.#r=t;let r=t.options?.RESP??2;for(let[n,s]of Object.entries(HEt.default))this[n]=e.#t(n,s,r);this.#n=VAe.factory(r)}sendCommand(...t){let r=[],n=e.#e(r,t),s=this.#r.sendCommand(r);if(!n){s.catch(i=>this.#r.emit("error",i));return}s.then(i=>n(null,i)).catch(i=>n(i))}multi(){return this.#n(this.#r)}};XR.RedisLegacyClient=WR;var VAe=class e{static#e(t,r,n){let s=WR.getTransformReply(r,n);return function(...i){let a=[t];return WR.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(t){let r=class extends e{};for(let[n,s]of Object.entries(HEt.default))r.prototype[n]=e.#e(n,s,t);return n=>new r(n)}#t=new Fjr.default;#r;constructor(t){this.#r=t}sendCommand(...t){let r=[];return WR.pushArguments(r,t),this.#t.addCommand(r),this}exec(t){let r=this.#r._executeMulti(this.#t.queue);if(!t){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>t(null,this.#t.transformReplies(n))).catch(n=>t?.(n))}}});var JR=S(Hu=>{"use strict";Object.defineProperty(Hu,"__esModule",{value:!0});Hu.PooledNoRedirectClientSideCache=Hu.BasicPooledClientSideCache=Hu.PooledClientSideCacheProvider=Hu.BasicClientSideCache=Hu.ClientSideCacheProvider=Hu.CacheStats=void 0;var $jr=require("stream"),lM=class e{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(t,r,n,s,i,a){if(this.hitCount=t,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,t<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(t=0,r=0,n=0,s=0,i=0,a=0){return new e(t,r,n,s,i,a)}static empty(){return e.EMPTY_STATS}static EMPTY_STATS=new e(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let t=this.requestCount();return t===0?1:this.hitCount/t}missRate(){let t=this.requestCount();return t===0?0:this.missCount/t}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let t=this.loadCount();return t===0?0:this.loadFailureCount/t}averageLoadPenalty(){let t=this.loadCount();return t===0?0:this.totalLoadTime/t}minus(t){return e.of(Math.max(0,this.hitCount-t.hitCount),Math.max(0,this.missCount-t.missCount),Math.max(0,this.loadSuccessCount-t.loadSuccessCount),Math.max(0,this.loadFailureCount-t.loadFailureCount),Math.max(0,this.totalLoadTime-t.totalLoadTime),Math.max(0,this.evictionCount-t.evictionCount))}plus(t){return e.of(this.hitCount+t.hitCount,this.missCount+t.missCount,this.loadSuccessCount+t.loadSuccessCount,this.loadFailureCount+t.loadFailureCount,this.totalLoadTime+t.totalLoadTime,this.evictionCount+t.evictionCount)}};Hu.CacheStats=lM;var vq=class e{static INSTANCE=new e;constructor(){}recordHits(t){}recordMisses(t){}recordLoadSuccess(t){}recordLoadFailure(t){}recordEvictions(t){}snapshot(){return lM.empty()}};function qjr(){return vq.INSTANCE}var Sq=class e{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(t){this.#e+=t}recordMisses(t){this.#t+=t}recordLoadSuccess(t){this.#r++,this.#a+=t}recordLoadFailure(t){this.#n++,this.#a+=t}recordEvictions(t){this.#o+=t}snapshot(){return lM.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new e}};function Hjr(e){let t=new Array(e.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(t){let r=this.#e.get(t);if(r&&!r.validate()){this.delete(t),this.#r.recordEvictions(1),this.emit("cache-evict",t);return}return r!==void 0&&this.lru&&(this.#e.delete(t),this.#e.set(t,r)),r}delete(t){let r=this.#e.get(t);r&&(r.invalidate(),this.#e.delete(t))}has(t){return this.#e.has(t)}set(t,r,n){let s=this.#e.size,i=this.#e.get(t);i&&(s--,i.invalidate()),this.maxEntries>0&&s>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(t,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(t)}size(){return this.#e.size}createValueEntry(t,r){return new dM(this.ttl,r)}createPromiseEntry(t,r){return new fM(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};Hu.BasicClientSideCache=Iq;var Rq=class extends Iq{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(t){if(!this.#e)return super.get(t)}has(t){return this.#e?!1:super.has(t)}onPoolClose(){this.clear()}};Hu.PooledClientSideCacheProvider=Rq;var Cq=class extends Rq{onError(){this.clear(!1)}onClose(){this.clear(!1)}};Hu.BasicPooledClientSideCache=Cq;var jAe=class extends dM{#e;constructor(t,r,n){super(t,n),this.#e=r}validate(){let t=super.validate();return this.#e&&(t=t&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),t}},KAe=class extends fM{#e;constructor(t,r,n){super(t,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},GAe=class extends Cq{createValueEntry(t,r){let n={epoch:t.socketEpoch,client:t};return new jAe(this.ttl,n,r)}createPromiseEntry(t,r){let n={epoch:t.socketEpoch,client:t};return new KAe(this.ttl,n,r)}onError(){}onClose(){}};Hu.PooledNoRedirectClientSideCache=GAe});var xq=S(YAe=>{"use strict";Object.defineProperty(YAe,"__esModule",{value:!0});var zAe=class{#e;#t;get(t){return JSON.stringify(t,jEt())===this.#t?this.#e:void 0}set(t,r){this.#e=r,this.#t=JSON.stringify(t,jEt())}};YAe.default=zAe;function jEt(){let e=new WeakSet;return function(r,n){return n&&typeof n=="object"?e.has(n)?"circular":(e.add(n),n):n}}});var JAe=S(ZR=>{"use strict";var XAe=ZR&&ZR.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ZR,"__esModule",{value:!0});ZR.RedisClientPool=void 0;var Vjr=Jf(),jjr=XAe(eC()),Kjr=require("node:events"),QAe=Eq(),Gjr=Bh(),PS=Vh(),zjr=XAe(HAe()),KEt=JR(),wq=Uh(),Yjr=XAe(xq()),WAe=class e extends Kjr.EventEmitter{static#e(t,r){let n=(0,PS.getTransformReply)(t,r);return async function(...s){let i=new wq.BasicCommandParser;return t.parseCommand(i,...s),this.execute(a=>a._executeCommand(t,i,this._commandOptions,n))}}static#t(t,r){let n=(0,PS.getTransformReply)(t,r);return async function(...s){let i=new wq.BasicCommandParser;return t.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(t,i,this._self._commandOptions,n))}}static#r(t,r,n){let s=(0,PS.functionArgumentsPrefix)(t,r),i=(0,PS.getTransformReply)(r,n);return async function(...a){let o=new wq.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(t,r){let n=(0,PS.scriptArgumentsPrefix)(t),s=(0,PS.getTransformReply)(t,r);return async function(...i){let a=new wq.BasicCommandParser;return a.pushVariadic(n),t.parseCommand(a,...i),this.execute(o=>o._executeScript(t,a,this._commandOptions,s))}}static#a=new Yjr.default;static create(t,r){let n=e.#a.get(t);return n||(n=(0,PS.attachConfig)({BaseClass:e,commands:Vjr.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t}),n.prototype.Multi=zjr.default.extend(t),e.#a.set(t,n)),Object.create(new n(t,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new QAe.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new QAe.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#m=new QAe.SinglyLinkedList;get tasksQueueLength(){return this._self.#m.length}#h=!1;get isOpen(){return this._self.#h}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(t,r){if(super(),this.#i={...e.#o,...r},r?.clientSideCache)if(t===void 0&&(t={}),r.clientSideCache instanceof KEt.PooledClientSideCacheProvider)this.#f=t.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=t.clientSideCache=new KEt.BasicPooledClientSideCache(n)}this.#s=jjr.default.factory(t).bind(void 0,t)}_self=this;_commandOptions;withCommandOptions(t){let r=Object.create(this._self);return r._commandOptions=t,r}#p(t,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._self.#p("typeMapping",t)}withAbortSignal(t){return this._self.#p("abortSignal",t)}asap(){return this._self.#p("asap",!0)}async connect(){if(this._self.#h)return;this._self.#h=!0;let t=[];for(;t.lengththis.emit("error",r)));try{await t.value.connect()}catch(r){throw this._self.#l.remove(t),r}this._self.#v(t)}execute(t){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#m;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#m.remove(c,i),n(new Gjr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#m.push({timeout:o,resolve:r,reject:n,fn:t});this.totalClientsthis.#v(t)):(r(i),this.#v(t))}#v(t){let r=this.#m.shift();if(r){clearTimeout(r.timeout),this.#g(t,r.resolve,r.reject,r.fn);return}this.#l.remove(t),this.#c.push(t.value),this.#T()}cleanupTimeout;#T(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#_(),this.#i.cleanupDelay))}#_(){let t=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;rn.sendCommand(t,r))}MULTI(){return new this.Multi((t,r)=>this.execute(n=>n._executeMulti(t,r)),t=>this.execute(r=>r._executePipeline(t)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#h){this._self.#d=!0;try{let t=[];for(let r of this._self.#c)t.push(r.close());for(let r of this._self.#l)t.push(r.close());await Promise.all(t),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let t of this._self.#c)t.destroy();this._self.#c.reset();for(let t of this._self.#l)t.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#h=!1}};ZR.RedisClientPool=WAe});var GEt=S((dcs,Qjr)=>{Qjr.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var eC=S(e0=>{"use strict";var Wjr=e0&&e0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Xjr=e0&&e0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Jjr=e0&&e0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Wjr(t,e,r);return Xjr(t,e),t},nC=e0&&e0.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},Zf;Object.defineProperty(e0,"__esModule",{value:!0});var tC=nC(Jf()),Zjr=nC(REt()),zEt=OEt(),eKr=nC(kEt()),tKr=require("node:events"),LS=Vh(),nE=Bh(),rKr=require("node:url"),rC=iM(),nKr=nC(HAe()),sKr=nC(dpe()),iKr=VEt(),aKr=JAe(),MS=We(),YEt=JR(),Nq=Uh(),oKr=nC(xq()),cKr=GEt(),Oq=Jjr(rM()),Dq=class extends tKr.EventEmitter{static#e(t,r){let n=(0,LS.getTransformReply)(t,r);return async function(...s){let i=new Nq.BasicCommandParser;return t.parseCommand(i,...s),this._self._executeCommand(t,i,this._commandOptions,n)}}static#t(t,r){let n=(0,LS.getTransformReply)(t,r);return async function(...s){let i=new Nq.BasicCommandParser;return t.parseCommand(i,...s),this._self._executeCommand(t,i,this._self._commandOptions,n)}}static#r(t,r,n){let s=(0,LS.functionArgumentsPrefix)(t,r),i=(0,LS.getTransformReply)(r,n);return async function(...a){let o=new Nq.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(t,r){let n=(0,LS.scriptArgumentsPrefix)(t),s=(0,LS.getTransformReply)(t,r);return async function(...i){let a=new Nq.BasicCommandParser;return a.push(...n),t.parseCommand(a,...i),this._executeScript(t,a,this._commandOptions,s)}}static#a=new oKr.default;static factory(t){let r=Zf.#a.get(t);return r||(r=(0,LS.attachConfig)({BaseClass:Zf,commands:tC.default,createCommand:Zf.#e,createModuleCommand:Zf.#t,createFunctionCommand:Zf.#r,createScriptCommand:Zf.#n,config:t}),r.prototype.Multi=nKr.default.extend(t),Zf.#a.set(t,r)),n=>Object.create(new r(n))}static create(t){return Zf.factory(t)(t)}static parseOptions(t){if(t?.url){let r=Zf.parseURL(t.url);if(t.socket){if(t.socket.tls!==void 0&&t.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${t.socket.tls} which is mismatch with protocol or the URL ${t.url} passed`);r.socket=Object.assign(t.socket,r.socket)}Object.assign(t,r)}return t}static parseURL(t){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new rKr.URL(t),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#m;#h;#d;#f=null;#p=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#h!==void 0}get isDirtyWatch(){return this._self.#m!==void 0}setDirtyWatch(t){this._self.#m=t}constructor(t){if(super(),this.#A(t),this.#o=this.#g(t),this.#i=this.#v(),this.#s=this.#b(),this.#o.maintNotifications!=="disabled"&&new Oq.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof YEt.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new YEt.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else t?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#A(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(t?.emitInvalidate&&t?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(t?.clientSideCache&&t?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(t?.maintNotifications&&t?.maintNotifications!=="disabled"&&t?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(t={}){if(!t.credentialsProvider&&(t.username||t.password)&&(t.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:t.username,password:t.password})}),t.database&&(this._self.#c=t.database),t.commandOptions&&(this._commandOptions=t.commandOptions),t.maintNotifications!=="disabled"&&Oq.default.setupDefaultMaintOptions(t),t.url){let r=Zf.parseOptions(t);return r?.database&&(this._self.#c=r.database),r}return t}#v(){return new eKr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(t,r)=>this.emit("sharded-channel-moved",t,r))}reAuthenticate=async t=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,MS.parseArgs)(tC.default.AUTH,{username:t.username,password:t.password??""}))};#T(t){return t.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);t.onReAuthenticationError(new zEt.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;t.onReAuthenticationError(new zEt.UnableToObtainNewCredentialsError(n))}})}async#_(t,r){let n=[],s=await this.#I();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:t,asap:r}).catch(a));return n}async#I(){let t=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#T(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),t.push({cmd:(0,MS.parseArgs)(sKr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&t.push({cmd:(0,MS.parseArgs)(tC.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#T(r);this.#f=i,(s.username||s.password)&&t.push({cmd:(0,MS.parseArgs)(tC.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&t.push({cmd:(0,MS.parseArgs)(tC.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&t.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&t.push({cmd:(0,MS.parseArgs)(tC.default.READONLY)}),this.#o.disableClientInfo||(t.push({cmd:["CLIENT","SETINFO","LIB-VER",cKr.version],errorHandler:()=>{}}),t.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&t.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&t.push({cmd:["CLIENT","TRACKING","ON"]});let n=await Oq.default.getHandshakeCommand(this.#o);return n&&t.push(n),t}#S(t){t.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#b(){let t=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#_(s,!0)),n.length)return this.#D(),Promise.all(n)},r=new Zjr.default(t,this.#o.socket);return this.#S(r),r}#y;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#y),this.#y=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(t=>this.emit("ping-interval",t)).catch(t=>this.emit("error",t)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(t){let r=Object.create(this._self);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}withAbortSignal(t){return this._commandOptionsProxy("abortSignal",t)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new iKr.RedisLegacyClient(this)}createPool(t){return aKr.RedisClientPool.create(this._self.#o,t)}duplicate(t){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...t})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let t=this._self.#s;return this._self.#s=null,t.removeAllListeners(),t}_insertSocket(t){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=t,this._self.#S(this._self.#s)}_maintenanceUpdate(t){this._self.#s.setMaintenanceTimeout(t.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(t.relaxedCommandTimeout)}_pause(){this._self.#p=!0}_unpause(){this._self.#p=!1,this._self.#N()}_handleSmigrated(t){this._self.emit(Oq.SMIGRATED_EVENT,t)}_getQueue(){return this._self.#i}async _executeCommand(t,r,n,s){let i=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(i&&t.CACHEABLE&&a)return await i.handleCache(this._self,r,o,s,n?.typeMapping);{let c=await o();return s?s(c,r.preserve,n?.typeMapping):c}}async _executeScript(t,r,n,s){let i=r.redisArgs,a;try{a=await this.sendCommand(i,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;i[0]="EVAL",i[1]=t.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(t,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new nE.ClientOfflineError)}else return Promise.reject(new nE.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(t,n);return this._self.#R(),s}async SELECT(t){await this.sendCommand(["SELECT",t.toString()]),this._self.#c=t}select=this.SELECT;#E(t){return t===void 0?Promise.resolve():(this.#R(),t)}SUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.subscribe(rC.PUBSUB_TYPE.CHANNELS,t,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.unsubscribe(rC.PUBSUB_TYPE.CHANNELS,t,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.subscribe(rC.PUBSUB_TYPE.PATTERNS,t,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.unsubscribe(rC.PUBSUB_TYPE.PATTERNS,t,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.subscribe(rC.PUBSUB_TYPE.SHARDED,t,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(t,r,n){return this._self.#E(this._self.#i.unsubscribe(rC.PUBSUB_TYPE.SHARDED,t,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(t){let r=await this._self.sendCommand((0,MS.pushVariadicArguments)(["WATCH"],t));return this._self.#h??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let t=await this._self.sendCommand(["UNWATCH"]);return this._self.#h=void 0,t}unwatch=this.UNWATCH;getPubSubListeners(t){return this._self.#i.getPubSubListeners(t)}extendPubSubChannelListeners(t,r,n){return this._self.#E(this._self.#i.extendPubSubChannelListeners(t,r,n))}extendPubSubListeners(t,r){return this._self.#E(this._self.#i.extendPubSubListeners(t,r))}#D(){this.#p||this.#s.write(this.#i.commandsToWrite())}#C;#R(){!this.#s.isReady||this.#C||(this.#C=setImmediate(()=>{this.#D(),this.#C=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#R()}async _executePipeline(t,r){if(!this._self.#s.isOpen)return Promise.reject(new nE.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(t.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#R();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(t,r){let n=this._self.#m;this._self.#m=void 0;let s=this._self.#h;if(this._self.#h=void 0,!this._self.#s.isOpen)throw new nE.ClientClosedError;if(n)throw new nE.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new nE.WatchError("Client reconnected after WATCH");let i=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#i.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of t)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#R();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new nE.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(t){let r=t?.cursor??"0";do{let n=await this.scan(r,t);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(t,r){let n=r?.cursor??"0";do{let s=await this.hScan(t,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(t,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(t,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(t,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(t,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(t,r){let n=r?.cursor??"0";do{let s=await this.sScan(t,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(t,r){let n=r?.cursor??"0";do{let s=await this.zScan(t,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(t){let r=this._self.#i.monitor(t,{typeMapping:this._commandOptions?.typeMapping});this._self.#R(),await r,this._self.#l=t}monitor=this.MONITOR;async reset(){let t=Symbol("Reset Chain"),r=[this._self.#i.reset(t)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#_(t,!1)),this._self.#R(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#m=void 0,this._self.#h=void 0}resetIfDirty(){let t=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),t=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),t=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),t=!0),(this._self.#m||this._self.#h)&&(console.warn("Returning a client with active WATCH"),t=!0),t)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#y);let t=this._self.#i.addCommand(["QUIT"]);return this._self.#R(),t})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(t=>{if(clearTimeout(this._self.#y),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),t();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),t())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#y),this._self.#i.flushAll(new nE.DisconnectsClientError),this._self.#s.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#s.ref()}unref(){this._self.#s.unref()}};Zf=Dq;e0.default=Dq});var XEt=S(jh=>{"use strict";var WEt=jh&&jh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},eEe;Object.defineProperty(jh,"__esModule",{value:!0});jh.RESUBSCRIBE_LISTENERS_EVENT=void 0;var uKr=Bh(),lKr=WEt(eC()),Ml=iM(),ZAe=WEt(MAe()),QEt=JR(),Vu=rM();jh.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var Pq=class{static#e=16384;#t;#r;#n;slots=new Array(eEe.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(t,r){this.#o(t),this.#t=t,t?.clientSideCache&&(t.clientSideCache instanceof QEt.PooledClientSideCacheProvider?this.clientSideCache=t.clientSideCache:this.clientSideCache=new QEt.BasicPooledClientSideCache(t.clientSideCache)),this.#r=lKr.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#s(),this.#n("connect")}catch(t){throw this.#a=!1,t}}async#s(){let t=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=t;rthis.#f(d,!0,s,r,n)));for(let d=a;d<=o;d++)this.slots[d]=l}if(this.pubSubNode&&!r.has(this.pubSubNode.address)){let a=this.pubSubNode.client.getPubSubListeners(Ml.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Ml.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#b({[Ml.PUBSUB_TYPE.CHANNELS]:a,[Ml.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:c}=o;c&&c.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async t=>{if((0,Vu.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(t,null,2)),this.smigratedSeqIdsSeen.has(t.seqId)){(0,Vu.dbgMaintenance)(`[CSlots]: sequence id ${t.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(t.seqId);for(let r of t.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,Vu.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,Vu.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,Vu.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let i=new Set;try{s.client?._pause(),"pubSub"in s&&s.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:h}of r.destinations){let p=`${d}:${f}`,m=this.nodeByAddress.get(p);(0,Vu.dbgMaintenance)(`[CSlots]: Looking for destAddress=${p}. Found in nodeByAddress: ${m?"YES":"NO"}`);let g;if(m){let A=[...new Set(this.slots)].map(v=>`${v.master.host}:${v.master.port}`);(0,Vu.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${A.join(", ")}`);let E=this.slots.find(v=>v.master.host===d&&v.master.port===f);if(!E)throw(0,Vu.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");g=E,m.client?._pause(),m.pubSub?.client._pause()}else{let A=[];m=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,A),await Promise.all([...A,this.#y(m)]),m.client?._pause(),m.pubSub?.client._pause(),g={master:m}}a=m;let _=new Set;for(let A of h)if(typeof A=="number")this.slots[A]=g,_.add(A),i.add(A);else for(let E=A[0];E<=A[1];E++)this.slots[E]=g,_.add(E),i.add(E);(0,Vu.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${m.address}. Sample slots: ${Array.from(h).slice(0,5).join(", ")}${h.length>5?"...":""}`);let y=s.client._getQueue().extractCommandsForSlots(_);m.client?._getQueue().prependCommandsToWrite(y),(0,Vu.dbgMaintenance)(`[CSlots]: Extracted ${y.length} commands for ${_.size} slots, prepended to ${m.address}`),m.client?._unpause(),m.pubSub?.client._unpause()}(0,Vu.dbgMaintenance)(`[CSlots]: Total ${i.size} slots moved from ${n}. Sample: ${Array.from(i).slice(0,10).join(", ")}${i.size>10?"...":""}`);let o=5e3,c=[],u={timeoutMs:o,flushOnTimeout:!0};if(c.push(s.client._getQueue().waitForInflightCommandsToComplete(u)),"pubSub"in s&&s.pubSub!==void 0&&c.push(s.pubSub.client._getQueue().waitForInflightCommandsToComplete(u)),this.pubSubNode?.address===n&&c.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(u)),await Promise.all(c),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in s){let d=s.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(i);this.#n(jh.RESUBSCRIBE_LISTENERS_EVENT,d)}s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause()}else{let d=s.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,Vu.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(jh.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(Ml.PUBSUB_TYPE.CHANNELS),h=this.pubSubNode.client.getPubSubListeners(Ml.PUBSUB_TYPE.PATTERNS),p=this.pubSubNode.client;f.size||h.size?await this.#b({[Ml.PUBSUB_TYPE.CHANNELS]:f,[Ml.PUBSUB_TYPE.PATTERNS]:h}):this.pubSubNode=void 0,p.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,Vu.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#m(t){let r=this.#d(t);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#h(t){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[t];case"function":return this.#t.nodeAddressMap(t)}}#d(t){if(!this.#t.defaults)return t;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...t?.socket}:r=t?.socket,{...this.#t.defaults,...t,socket:r}}#f(t,r,n,s,i){let a=`${t.host}:${t.port}`,o=this.nodeByAddress.get(a);return o||(o={...t,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#A(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#p(t,r=t.readonly){let n=this.#h(t.address)??{host:t.host,port:t.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(Vu.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(jh.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#A(t,r){let n=t.client=this.#p(t,r);return t.connectPromise=n.connect().finally(()=>t.connectPromise=void 0)}nodeClient(t){return t.connectPromise?t.connectPromise:t.client?Promise.resolve(t.client):this.#A(t)}#g;async rediscover(t){return this.#g??=this.#v(t).finally(()=>{this.#g=void 0}),this.#g}async#v(t){if(!await this.#c(t.options))return this.#s()}quit(){return this.#_(t=>t.quit())}disconnect(){return this.#_(t=>t.disconnect())}close(){return this.#_(t=>t.close())}destroy(){this.#a=!1;for(let t of this.#T())t.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#T(){for(let t of this.masters)t.client&&(yield t.client),t.pubSub&&(yield t.pubSub.client);for(let t of this.replicas)t.client&&(yield t.client)}async#_(t){this.#a=!1;let r=[];for(let n of this.#T())r.push(t(n));this.pubSubNode&&(r.push(t(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(t,r){if(!t)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,ZAe.default)(t);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#I(){if(this.masters.length+this.replicas.length===0)return;let t=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(t(t&&await Promise.all([i.extendPubSubListeners(Ml.PUBSUB_TYPE.CHANNELS,t[Ml.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Ml.PUBSUB_TYPE.PATTERNS,t[Ml.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(t){let r=await this.getPubSubClient();await t(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(t){let{master:r}=this.slots[(0,ZAe.default)(t)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#y(r)}async#y(t){let r=this.#p(t,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Ml.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return t.pubSub={client:r,connectPromise:r.connect().then(n=>(t.pubSub.connectPromise=void 0,n)).catch(n=>{throw t.pubSub=void 0,n})},t.pubSub.connectPromise}async executeShardedUnsubscribeCommand(t,r){let{master:n}=this.slots[(0,ZAe.default)(t)];if(!n.pubSub)return;let s=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(s),s.isPubSubActive||(s.destroy(),n.pubSub=void 0)}};eEe=Pq;jh.default=Pq});var JEt=S(hM=>{"use strict";var dKr=hM&&hM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(hM,"__esModule",{value:!0});var fKr=Jf(),hKr=dKr(cM()),sC=Vh(),Lq=Uh(),tEe=class e{static#e(t,r){let n=(0,sC.getTransformReply)(t,r);return function(...s){let i=new Lq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,t.IS_READ_ONLY,a,n)}}static#t(t,r){let n=(0,sC.getTransformReply)(t,r);return function(...s){let i=new Lq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,t.IS_READ_ONLY,a,n)}}static#r(t,r,n){let s=(0,sC.functionArgumentsPrefix)(t,r),i=(0,sC.getTransformReply)(r,n);return function(...a){let o=new Lq.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;c.preserve=o.preserve;let u=o.firstKey;return this._self.addCommand(u,r.IS_READ_ONLY,c,i)}}static#n(t,r){let n=(0,sC.getTransformReply)(t,r);return function(...s){let i=new Lq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#m(o,t.IS_READ_ONLY,t,a,n)}}static extend(t){return(0,sC.attachConfig)({BaseClass:e,commands:fKr.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t})}#a;#o;#s;#i;#c=!0;constructor(t,r,n,s){this.#a=new hKr.default(s),this.#o=t,this.#s=r,this.#i=n}#l(t,r){this.#i??=t,this.#c&&=r}addCommand(t,r,n,s){return this.#l(t,r),this.#a.addCommand(n,s),this}#m(t,r,n,s,i){return this.#l(t,r),this.#a.addScript(n,s,i),this}async exec(t=!1){return t?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#i,this.#c,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};hM.default=tEe});var tyt=S(t0=>{"use strict";var pKr=t0&&t0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),mKr=t0&&t0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),gKr=t0&&t0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&pKr(t,e,r);return mKr(t,e),t},eyt=t0&&t0.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t0,"__esModule",{value:!0});var _Kr=Jf(),AKr=require("node:events"),kS=Vh(),ZEt=gKr(XEt()),EKr=eyt(JEt()),yKr=Bh(),Mq=Uh(),vKr=E0e(),SKr=eyt(xq()),rEe=class e extends AKr.EventEmitter{static#e(t,r){let n=(0,kS.getTransformReply)(t,r);return async function(...s){let i=new Mq.BasicCommandParser;return t.parseCommand(i,...s),this._self._execute(i.firstKey,t.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(t,i,o,n))}}static#t(t,r){let n=(0,kS.getTransformReply)(t,r);return async function(...s){let i=new Mq.BasicCommandParser;return t.parseCommand(i,...s),this._self._execute(i.firstKey,t.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(t,i,o,n))}}static#r(t,r,n){let s=(0,kS.functionArgumentsPrefix)(t,r),i=(0,kS.getTransformReply)(r,n);return async function(...a){let o=new Mq.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(c,u)=>c._executeCommand(r,o,u,i))}}static#n(t,r){let n=(0,kS.scriptArgumentsPrefix)(t),s=(0,kS.getTransformReply)(t,r);return async function(...i){let a=new Mq.BasicCommandParser;return a.push(...n),t.parseCommand(a,...i),this._self._execute(a.firstKey,t.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(t,a,c,s))}}static#a=new SKr.default;static factory(t){let r=e.#a.get(t);return r||(r=(0,kS.attachConfig)({BaseClass:e,commands:_Kr.NON_STICKY_COMMANDS,createCommand:e.#e,createModuleCommand:e.#t,createFunctionCommand:e.#r,createScriptCommand:e.#n,config:t}),r.prototype.Multi=EKr.default.extend(t),e.#a.set(t,r)),n=>Object.create(new r(n))}static create(t){return e.factory(t)(t)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(t){super(),this._options=t,this._slots=new ZEt.default(t,this.emit.bind(this)),this.on(ZEt.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),t?.commandOptions&&(this._commandOptions=t.commandOptions)}duplicate(t){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...t})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}_handleAsk(t){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([vKr.ASKING_CMD],{chainId:s}),t(r,i)]))[1]}}async _execute(t,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(t,r),c=0,u=s;for(;;)try{let l=n??{};return l.slotNumber=o,await u(a,l)}catch(l){if(u=s,++c>i||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,u=this._handleAsk(s);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(t,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(t,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(t,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(t){return new this.Multi(async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executeMulti(s)},async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executePipeline(s)},t,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(t,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(t,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(t,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(t,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(t,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(t,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(t,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(t,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(t,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(t)?t[0]:t,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(t,r,n)}catch(c){if(++o>s||!(c instanceof yKr.ErrorReply))throw c;if(c.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(i);continue}throw c}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(t,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(t)?t[0]:t,s=>s.SUNSUBSCRIBE(t,r,n))}resubscribeAllPubSubListeners(t){if(t.CHANNELS)for(let[r,n]of t.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(t.PATTERNS)for(let[r,n]of t.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(t.SHARDED)for(let[r,n]of t.SHARDED)n.buffers.forEach(s=>{this.sSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.sSubscribe(r,s)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(t){return this._self._slots.nodeClient(t)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(t){return this._self._slots.getSlotRandomNode(t)}getMasters(){return this.masters}getSlotMaster(t){return this.slots[t].master}};t0.default=rEe});var nyt=S(Va=>{"use strict";Object.defineProperty(Va,"__esModule",{value:!0});Va.getMappedNode=Va.createScriptCommand=Va.createModuleCommand=Va.createFunctionCommand=Va.createCommand=Va.clientSocketToNode=Va.createNodeList=Va.parseNode=void 0;var kq=Uh(),iC=Vh();function ryt(e){if(!(e.flags.includes("s_down")||e.flags.includes("disconnected")||e.flags.includes("failover_in_progress")))return{host:e.ip,port:Number(e.port)}}Va.parseNode=ryt;function TKr(e){var t=[];for(let r of e){let n=ryt(r);n!==void 0&&t.push(n)}return t}Va.createNodeList=TKr;function bKr(e){let t=e;return{host:t.host,port:t.port}}Va.clientSocketToNode=bKr;function IKr(e,t){let r=(0,iC.getTransformReply)(e,t);return async function(...n){let s=new kq.BasicCommandParser;return e.parseCommand(s,...n),this._self._execute(e.IS_READ_ONLY,i=>i._executeCommand(e,s,this.commandOptions,r))}}Va.createCommand=IKr;function RKr(e,t,r){let n=(0,iC.functionArgumentsPrefix)(e,t),s=(0,iC.getTransformReply)(t,r);return async function(...i){let a=new kq.BasicCommandParser;return a.push(...n),t.parseCommand(a,...i),this._self._execute(t.IS_READ_ONLY,o=>o._executeCommand(t,a,this._self.commandOptions,s))}}Va.createFunctionCommand=RKr;function CKr(e,t){let r=(0,iC.getTransformReply)(e,t);return async function(...n){let s=new kq.BasicCommandParser;return e.parseCommand(s,...n),this._self._execute(e.IS_READ_ONLY,i=>i._executeCommand(e,s,this._self.commandOptions,r))}}Va.createModuleCommand=CKr;function xKr(e,t){let r=(0,iC.scriptArgumentsPrefix)(e),n=(0,iC.getTransformReply)(e,t);return async function(...s){let i=new kq.BasicCommandParser;return i.push(...r),e.parseCommand(i,...s),this._self._execute(e.IS_READ_ONLY,a=>a._executeScript(e,i,this.commandOptions,n))}}Va.createScriptCommand=xKr;function wKr(e,t,r){if(r===void 0)return{host:e,port:t};let n=`${e}:${t}`;switch(typeof r){case"object":return r[n]??{host:e,port:t};case"function":return r(n)??{host:e,port:t}}}Va.getMappedNode=wKr});var iyt=S(pM=>{"use strict";var NKr=pM&&pM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(pM,"__esModule",{value:!0});var OKr=Jf(),syt=NKr(cM()),aC=Vh(),Bq=Uh(),nEe=class e{static _createCommand(t,r){let n=(0,aC.getTransformReply)(t,r);return function(...s){let i=new Bq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(t.IS_READ_ONLY,a,n)}}static _createModuleCommand(t,r){let n=(0,aC.getTransformReply)(t,r);return function(...s){let i=new Bq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(t.IS_READ_ONLY,a,n)}}static _createFunctionCommand(t,r,n){let s=(0,aC.functionArgumentsPrefix)(t,r),i=(0,aC.getTransformReply)(r,n);return function(...a){let o=new Bq.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,c,i)}}static _createScriptCommand(t,r){let n=(0,aC.getTransformReply)(t,r);return function(...s){let i=new Bq.BasicCommandParser;t.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(t.IS_READ_ONLY,t,a,n)}}static extend(t){return(0,aC.attachConfig)({BaseClass:e,commands:OKr.NON_STICKY_COMMANDS,createCommand:e._createCommand,createModuleCommand:e._createModuleCommand,createFunctionCommand:e._createFunctionCommand,createScriptCommand:e._createScriptCommand,config:t})}#e=new syt.default;#t;#r=!0;constructor(t,r){this.#e=new syt.default(r),this.#t=t}#n(t){this.#r&&=t}addCommand(t,r,n){return this.#n(t),this.#e.addCommand(r,n),this}#a(t,r,n,s){return this.#n(t),this.#e.addScript(r,n,s),this}async exec(t=!1){return t?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(t=!1){return this.exec(t)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};pM.default=nEe});var cyt=S(oC=>{"use strict";var oyt=oC&&oC.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(oC,"__esModule",{value:!0});oC.PubSubProxy=void 0;var DKr=oyt(require("node:events")),sE=iM(),ayt=oyt(eC()),sEe=class extends DKr.default{#e;#t;#r;#n;#a;constructor(t,r){super(),this.#e=t,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new ayt.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(t=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(t&&this.#a&&await Promise.all([s.extendPubSubListeners(sE.PUBSUB_TYPE.CHANNELS,this.#a[sE.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(sE.PUBSUB_TYPE.PATTERNS,this.#a[sE.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==s?(s.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,s))).catch(s=>{throw this.#n=void 0,s});return this.#n={client:r,connectPromise:n},n}#i(){return this.#n?this.#n.connectPromise??this.#n.client:this.#s()}async changeNode(t){this.#r=t,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[sE.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(sE.PUBSUB_TYPE.CHANNELS),[sE.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(sE.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(t){let r=this.#i();return r instanceof ayt.default?t(r):r.then(n=>{if(n!==void 0)return t(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(t,r,n){return this.#c(s=>s.SUBSCRIBE(t,r,n))}#l(t){return this.#c(async r=>{let n=await t(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(t,r,n){return this.#l(s=>s.UNSUBSCRIBE(t,r,n))}async pSubscribe(t,r,n){return this.#c(s=>s.PSUBSCRIBE(t,r,n))}async pUnsubscribe(t,r,n){return this.#l(s=>s.PUNSUBSCRIBE(t,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};oC.PubSubProxy=sEe});var uyt=S(iEe=>{"use strict";Object.defineProperty(iEe,"__esModule",{value:!0});var PKr=We();iEe.default={parseCommand(e,t){e.push("SENTINEL","MASTER",t)},transformReply:{2:PKr.transformTuplesReply,3:void 0}}});var lyt=S(aEe=>{"use strict";Object.defineProperty(aEe,"__esModule",{value:!0});aEe.default={parseCommand(e,t,r,n,s){e.push("SENTINEL","MONITOR",t,r,n,s)},transformReply:void 0}});var dyt=S(oEe=>{"use strict";Object.defineProperty(oEe,"__esModule",{value:!0});var LKr=We();oEe.default={parseCommand(e,t){e.push("SENTINEL","REPLICAS",t)},transformReply:{2:(e,t,r)=>{let n=e,s=[];return n.reduce((i,a)=>(i.push((0,LKr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var fyt=S(cEe=>{"use strict";Object.defineProperty(cEe,"__esModule",{value:!0});var MKr=We();cEe.default={parseCommand(e,t){e.push("SENTINEL","SENTINELS",t)},transformReply:{2:(e,t,r)=>{let n=e,s=[];return n.reduce((i,a)=>(i.push((0,MKr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var hyt=S(uEe=>{"use strict";Object.defineProperty(uEe,"__esModule",{value:!0});uEe.default={parseCommand(e,t,r){e.push("SENTINEL","SET",t);for(let n of r)e.push(n.option,n.value)},transformReply:void 0}});var Eyt=S(mM=>{"use strict";var gM=mM&&mM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mM,"__esModule",{value:!0});var pyt=gM(uyt()),myt=gM(lyt()),gyt=gM(dyt()),_yt=gM(fyt()),Ayt=gM(hyt());mM.default={SENTINEL_SENTINELS:_yt.default,sentinelSentinels:_yt.default,SENTINEL_MASTER:pyt.default,sentinelMaster:pyt.default,SENTINEL_REPLICAS:gyt.default,sentinelReplicas:gyt.default,SENTINEL_MONITOR:myt.default,sentinelMonitor:myt.default,SENTINEL_SET:Ayt.default,sentinelSet:Ayt.default}});var yyt=S(_M=>{"use strict";var kKr=_M&&_M.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_M,"__esModule",{value:!0});var BKr=kKr(Eyt());_M.default={sentinel:BKr.default}});var Syt=S(Uq=>{"use strict";Object.defineProperty(Uq,"__esModule",{value:!0});Uq.WaitQueue=void 0;var vyt=Eq(),lEe=class{#e=new vyt.SinglyLinkedList;#t=new vyt.SinglyLinkedList;push(t){let r=this.#t.shift();if(r!==void 0){r(t);return}this.#e.push(t)}shift(){return this.#e.shift()}wait(){return new Promise(t=>this.#t.push(t))}};Uq.WaitQueue=lEe});var Cyt=S(sg=>{"use strict";var pEe=sg&&sg.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(sg,"__esModule",{value:!0});sg.RedisSentinelFactory=sg.RedisSentinelClient=void 0;var mEe=require("node:events"),cC=pEe(eC()),byt=Vh(),Iyt=Jf(),ci=nyt(),Ryt=pEe(iyt()),UKr=cyt(),FKr=require("node:timers/promises"),Fq=pEe(yyt()),$Kr=Syt(),Tyt=JR(),AM=class e{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(t,r,n){this._self=this,this.#t=t,this.#e=r,this.#r=n}static factory(t){let r=(0,byt.attachConfig)({BaseClass:e,commands:Iyt.NON_STICKY_COMMANDS,createCommand:ci.createCommand,createModuleCommand:ci.createModuleCommand,createFunctionCommand:ci.createFunctionCommand,createScriptCommand:ci.createScriptCommand,config:t});return r.prototype.Multi=Ryt.default.extend(t),(n,s,i)=>Object.create(new r(n,s,i))}static create(t,r,n,s){return e.factory(t)(r,n,s)}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[t]=r,n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}async _execute(t,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(t,r,n){return this._execute(t,s=>s.sendCommand(r,n))}async _executePipeline(t,r){return this._execute(t,n=>n._executePipeline(r))}async _executeMulti(t,r){return this._execute(t,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(t){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(t))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,t=>t.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let t=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,t}};sg.RedisSentinelClient=AM;var dEe=class e extends mEe.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#s;get clientSideCache(){return this._self.#e.clientSideCache}constructor(t){super(),this._self=this,this.#t=t,t.commandOptions&&(this.#r=t.commandOptions),this.#e=new fEe(t),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(t){let r=(0,byt.attachConfig)({BaseClass:e,commands:Iyt.NON_STICKY_COMMANDS,createCommand:ci.createCommand,createModuleCommand:ci.createModuleCommand,createFunctionCommand:ci.createFunctionCommand,createScriptCommand:ci.createScriptCommand,config:t});return r.prototype.Multi=Ryt.default.extend(t),n=>Object.create(new r(n))}static create(t){return e.factory(t)(t)}withCommandOptions(t){let r=Object.create(this);return r._commandOptions=t,r}_commandOptionsProxy(t,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[t]:r},n}withTypeMapping(t){return this._commandOptionsProxy("typeMapping",t)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(t,r){let n;(!t||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#s??=await this._self.#e.getClientLease(),n=this._self.#s,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#s&&--this._self.#o===0){let s=this._self.#e.releaseClientLease(n);this._self.#s=void 0,s&&await s}}}async use(t){let r=await this._self.#e.getClientLease();try{return await t(AM.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(t,r,n){return this._execute(t,s=>s.sendCommand(r,n))}async _executePipeline(t,r){return this._execute(t,n=>n._executePipeline(r))}async _executeMulti(t,r){return this._execute(t,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(t,r,n){return this._self.#e.subscribe(t,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(t,r,n){return this._self.#e.unsubscribe(t,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(t,r,n){return this._self.#e.pSubscribe(t,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(t,r,n){return this._self.#e.pUnsubscribe(t,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let t=await this._self.#e.getClientLease();return AM.create(this._self.#t,this._self.#e,t,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(t){t?this._self.#n=r=>{t.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(t)}};sg.default=dEe;var fEe=class extends mEe.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#m=0;#h;#d;#f=[];#p;#A;#g=[];#v=0;#T;get useReplicas(){return this.#T>0}#_;#I;#S;#b;#y=!1;#u=()=>{};#E;get clientSideCache(){return this.#E}#D(t){if(t?.clientSideCache&&t?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(t){if(super(),this.#D(t),this.#r=t.name,this.#c=t.RESP,this.#h=Array.from(t.sentinelRootNodes),this.#I=t.maxCommandRediscovers??16,this.#A=t.masterPoolSize??1,this.#T=t.replicaPoolSize??0,this.#o=t.nodeAddressMap,this.#s=t.scanInterval??0,this.#i=t.passthroughClientErrorEvents??!1,this.#n=t.nodeClientOptions?{...t.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(t.clientSideCache)if(t.clientSideCache instanceof Tyt.PooledClientSideCacheProvider)this.#E=this.#n.clientSideCache=t.clientSideCache;else{let r=t.clientSideCache;this.#E=this.#n.clientSideCache=new Tyt.BasicPooledClientSideCache(r)}if(this.#a=t.sentinelClientOptions?Object.assign({},t.sentinelClientOptions):{},this.#a.modules=Fq.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#p=new $Kr.WaitQueue;for(let r=0;rthis.emit("error",r))}#C(t,r,n){let s=(0,ci.getMappedNode)(t.host,t.port,this.#o);return cC.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let t=this.#p.shift();return t!==void 0?Promise.resolve({id:t}):this.#p.wait().then(r=>({id:r}))}releaseClientLease(t){let r=this.#f[t.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#p.push(t.id))}this.#p.push(t.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#_=this.#R(),await this.#_,this.#t=!0}finally{this.#_=void 0,this.#s>0&&(this.#b=setInterval(this.#O.bind(this),this.#s))}}async#R(){let t=0;for(;;){if(this.#u("starting connect loop"),t+=1,this.#y){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&t>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,FKr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(t,r){let n=0;for(;;){this.#_!==void 0&&await this.#_;let s=this.#w(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await t(s)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(t){return await t.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#B(n,r)},!0),t}async#B(t,r){this.#u("pubsub control channel message on "+t),this.#O()}#w(t){if(t!==void 0)return this.#f[t.id];if(this.#v>=this.#g.length&&(this.#v=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#v++]}async#O(){if(!(this.#t==!1||this.#y==!0)){if(this.#_!==void 0)return this.#l=!0,await this.#_;try{return this.#_=this.#R(),await this.#_}finally{this.#u("finished reconfgure"),this.#_=void 0}}}#P(t){let r=this.#h.findIndex(n=>n.host===t.host&&n.port===t.port);r!==-1&&this.#h.splice(r,1),this.#O()}async close(){this.#y=!0,this.#_!=null&&await this.#_,this.#t=!1,this.#E?.onPoolClose(),this.#b&&(clearInterval(this.#b),this.#b=void 0);let t=[];this.#d!==void 0&&(this.#d.isOpen&&t.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&t.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&t.push(r.close());this.#g=[],await Promise.all(t),this.#S.destroy(),this.#e=!1}async destroy(){this.#y=!0,this.#_!=null&&await this.#_,this.#t=!1,this.#E?.onPoolClose(),this.#b&&(clearInterval(this.#b),this.#b=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let t of this.#f)t.isOpen&&t.destroy();this.#f=[];for(let t of this.#g)t.isOpen&&t.destroy();this.#g=[],this.#S.destroy(),this.#e=!1,this.#y=!1}async subscribe(t,r,n){return this.#S.subscribe(t,r,n)}async unsubscribe(t,r,n){return this.#S.unsubscribe(t,r,n)}async pSubscribe(t,r,n){return this.#S.pSubscribe(t,r,n)}async pUnsubscribe(t,r,n){return this.#S.pUnsubscribe(t,r,n)}async observe(){for(let t of this.#h){let r;try{this.#u(`observe: trying to connect to sentinel: ${t.host}:${t.port}`),r=this.#C(t,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:t,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#T,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(t){let r=(0,ci.parseNode)(t.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${t.masterData.flags}`),new Error("no valid master node");r.host===t.currentMaster?.host&&r.port===t.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${t.currentMaster?.host}:${t.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${t.currentMaster?.host}:${t.currentMaster?.port}`);let n=t.sentinelConnected;n.host===t.currentSentinel?.host&&n.port===t.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(t.useReplicas){let u=(0,ci.createNodeList)(t.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of t.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=t.replicaPoolSize&&(i.set(l,t.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,t.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[t.sentinelConnected].concat((0,ci.createNodeList)(t.sentinelData)),epoch:Number(t.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(t){this.#u("transform: enter");let r=[];if(t.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${t.sentinelToOpen.host}:${t.sentinelToOpen.port}`);let a=t.sentinelToOpen,o=this.#C(t.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,ci.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#P(a)}).on("end",()=>this.#P(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${t.sentinelToOpen.host}:${t.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:t.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(t.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u{this.#i&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let h={type:"MASTER",node:(0,ci.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",h)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${t.masterToOpen.host}:${t.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#S.changeNode(t.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:t.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#m++}let n=new Set;for(let a of t.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,ci.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,t.replicasToOpen.size!=0)for(let[a,o]of t.replicasToOpen){for(let u=0;u{this.#i&&this.emit("error",new Error(`Replica Client (${a.host}:${a.port}): ${d.message}`,{cause:d}));let f={type:"REPLICA",node:(0,ci.clientSocketToNode)(l.options.socket),error:d};this.emit("client-error",f)}),this.#g.push(l),r.push(l.connect()),this.#u(`created replica client to ${a.host}:${a.port}`)}let c={type:"REPLICA_ADD",node:a};this.emit("topology-change",c)}if(t.sentinelList.length!=this.#h.length){this.#h=t.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:t.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#u("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let t of this.#f)if(t.isReady)return(0,ci.clientSocketToNode)(t.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,ci.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let t=new Map,r=new Map;for(let n of this.#g){let s=(0,ci.clientSocketToNode)(n.options.socket),i=JSON.stringify(s);n.isReady?r.set(i,(r.get(i)??0)+1):r.has(i)||r.set(i,0)}for(let[n,s]of r)t.set(JSON.parse(n),s);return t}setTracer(t){t?this.#u=r=>{t.push(r)}:this.#u=()=>{}}},hEe=class extends mEe.EventEmitter{options;#e;#t=-1;constructor(t){super(),this.options=t,this.#e=t.sentinelRootNodes}async updateSentinelRootNodes(){for(let t of this.#e){let r=cC.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:t.host,port:t.port,reconnectStrategy:!1},modules:Fq.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[t].concat((0,ci.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let t=!1;for(let r of this.#e){let n=cC.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:Fq.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}t=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,ci.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw t?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let t=await this.getMasterNode(),r=(0,ci.getMappedNode)(t.host,t.port,this.options.nodeAddressMap);return cC.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let t=!1;for(let r of this.#e){let n=cC.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:Fq.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}t=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,ci.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw t?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let t=await this.getReplicaNodes();if(t.length==0)throw new Error("no available replicas");this.#t++,this.#t>=t.length&&(this.#t=0);let r=t[this.#t],n=(0,ci.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return cC.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};sg.RedisSentinelFactory=hEe});var yM=S(Tr=>{"use strict";var qKr=Tr&&Tr.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),HKr=Tr&&Tr.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&qKr(t,e,r)},gEe=Tr&&Tr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Tr,"__esModule",{value:!0});Tr.BasicPooledClientSideCache=Tr.BasicClientSideCache=Tr.REDIS_FLUSH_MODES=Tr.COMMAND_LIST_FILTER_BY=Tr.CLUSTER_SLOT_STATES=Tr.FAILOVER_MODES=Tr.CLIENT_KILL_FILTERS=Tr.GEO_REPLY_WITH=Tr.createSentinel=Tr.createCluster=Tr.createClientPool=Tr.createClient=Tr.digest=Tr.defineScript=Tr.VerbatimString=Tr.RESP_TYPES=void 0;var VKr=aq();Object.defineProperty(Tr,"RESP_TYPES",{enumerable:!0,get:function(){return VKr.RESP_TYPES}});var jKr=kfe();Object.defineProperty(Tr,"VerbatimString",{enumerable:!0,get:function(){return jKr.VerbatimString}});var KKr=tat();Object.defineProperty(Tr,"defineScript",{enumerable:!0,get:function(){return KKr.defineScript}});var GKr=rat();Object.defineProperty(Tr,"digest",{enumerable:!0,get:function(){return GKr.digest}});HKr(Bh(),Tr);var zKr=gEe(eC());Tr.createClient=zKr.default.create;var YKr=JAe();Tr.createClientPool=YKr.RedisClientPool.create;var QKr=gEe(tyt());Tr.createCluster=QKr.default.create;var WKr=gEe(Cyt());Tr.createSentinel=WKr.default.create;var XKr=fL();Object.defineProperty(Tr,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return XKr.GEO_REPLY_WITH}});var EM=Jf();Object.defineProperty(Tr,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return EM.CLIENT_KILL_FILTERS}});Object.defineProperty(Tr,"FAILOVER_MODES",{enumerable:!0,get:function(){return EM.FAILOVER_MODES}});Object.defineProperty(Tr,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return EM.CLUSTER_SLOT_STATES}});Object.defineProperty(Tr,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return EM.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Tr,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return EM.REDIS_FLUSH_MODES}});var xyt=JR();Object.defineProperty(Tr,"BasicClientSideCache",{enumerable:!0,get:function(){return xyt.BasicClientSideCache}});Object.defineProperty(Tr,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return xyt.BasicPooledClientSideCache}})});var wyt=S(_Ee=>{"use strict";Object.defineProperty(_Ee,"__esModule",{value:!0});var JKr=We();_Ee.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BF.ADD"),e.pushKey(t),e.push(r)},transformReply:JKr.transformBooleanReply}});var Nyt=S(AEe=>{"use strict";Object.defineProperty(AEe,"__esModule",{value:!0});AEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("BF.CARD"),e.pushKey(t)},transformReply:void 0}});var Oyt=S(EEe=>{"use strict";Object.defineProperty(EEe,"__esModule",{value:!0});var ZKr=We();EEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.EXISTS"),e.pushKey(t),e.push(r)},transformReply:ZKr.transformBooleanReply}});var yEe=S($q=>{"use strict";Object.defineProperty($q,"__esModule",{value:!0});$q.transformInfoV2Reply=void 0;var eGr=yM();function tGr(e,t){switch(t?t[eGr.RESP_TYPES.MAP]:void 0){case Array:return e;case Map:{let n=new Map;for(let s=0;s{"use strict";Object.defineProperty(vEe,"__esModule",{value:!0});var rGr=yEe();vEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("BF.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,rGr.transformInfoV2Reply)(e,r),3:void 0}}});var Pyt=S(SEe=>{"use strict";Object.defineProperty(SEe,"__esModule",{value:!0});var nGr=We();SEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BF.INSERT"),e.pushKey(t),n?.CAPACITY!==void 0&&e.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&e.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&e.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&e.push("NOCREATE"),n?.NONSCALING&&e.push("NONSCALING"),e.push("ITEMS"),e.pushVariadic(r)},transformReply:nGr.transformBooleanArrayReply}});var Lyt=S(TEe=>{"use strict";Object.defineProperty(TEe,"__esModule",{value:!0});TEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("BF.LOADCHUNK"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Myt=S(bEe=>{"use strict";Object.defineProperty(bEe,"__esModule",{value:!0});var sGr=We();bEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("BF.MADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:sGr.transformBooleanArrayReply}});var kyt=S(IEe=>{"use strict";Object.defineProperty(IEe,"__esModule",{value:!0});var iGr=We();IEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.MEXISTS"),e.pushKey(t),e.pushVariadic(r)},transformReply:iGr.transformBooleanArrayReply}});var Byt=S(REe=>{"use strict";Object.defineProperty(REe,"__esModule",{value:!0});REe.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("BF.RESERVE"),e.pushKey(t),e.push(r.toString(),n.toString()),s?.EXPANSION&&e.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&e.push("NONSCALING")},transformReply:void 0}});var Uyt=S(CEe=>{"use strict";Object.defineProperty(CEe,"__esModule",{value:!0});CEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("BF.SCANDUMP"),e.pushKey(t),e.push(r.toString())},transformReply(e){return{iterator:e[0],chunk:e[1]}}}});var uC=S(Kh=>{"use strict";var aGr=Kh&&Kh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),oGr=Kh&&Kh.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&aGr(t,e,r)},Gh=Kh&&Kh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Kh,"__esModule",{value:!0});var Fyt=Gh(wyt()),$yt=Gh(Nyt()),qyt=Gh(Oyt()),Hyt=Gh(Dyt()),Vyt=Gh(Pyt()),jyt=Gh(Lyt()),Kyt=Gh(Myt()),Gyt=Gh(kyt()),zyt=Gh(Byt()),Yyt=Gh(Uyt());oGr(yEe(),Kh);Kh.default={ADD:Fyt.default,add:Fyt.default,CARD:$yt.default,card:$yt.default,EXISTS:qyt.default,exists:qyt.default,INFO:Hyt.default,info:Hyt.default,INSERT:Vyt.default,insert:Vyt.default,LOADCHUNK:jyt.default,loadChunk:jyt.default,MADD:Kyt.default,mAdd:Kyt.default,MEXISTS:Gyt.default,mExists:Gyt.default,RESERVE:zyt.default,reserve:zyt.default,SCANDUMP:Yyt.default,scanDump:Yyt.default}});var Wyt=S(xEe=>{"use strict";Object.defineProperty(xEe,"__esModule",{value:!0});xEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("CMS.INCRBY"),e.pushKey(t),Array.isArray(r))for(let n of r)Qyt(e,n);else Qyt(e,r)},transformReply:void 0};function Qyt(e,{item:t,incrementBy:r}){e.push(t,r.toString())}});var Xyt=S(wEe=>{"use strict";Object.defineProperty(wEe,"__esModule",{value:!0});var cGr=uC();wEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("CMS.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,cGr.transformInfoV2Reply)(e,r),3:void 0}}});var Jyt=S(NEe=>{"use strict";Object.defineProperty(NEe,"__esModule",{value:!0});NEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CMS.INITBYDIM"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var Zyt=S(OEe=>{"use strict";Object.defineProperty(OEe,"__esModule",{value:!0});OEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CMS.INITBYPROB"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:void 0}});var evt=S(DEe=>{"use strict";Object.defineProperty(DEe,"__esModule",{value:!0});DEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("CMS.MERGE"),e.pushKey(t),e.push(r.length.toString()),uGr(r))e.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(PEe,"__esModule",{value:!0});PEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CMS.QUERY"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var cvt=S(vM=>{"use strict";var lC=vM&&vM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vM,"__esModule",{value:!0});var rvt=lC(Wyt()),nvt=lC(Xyt()),svt=lC(Jyt()),ivt=lC(Zyt()),avt=lC(evt()),ovt=lC(tvt());vM.default={INCRBY:rvt.default,incrBy:rvt.default,INFO:nvt.default,info:nvt.default,INITBYDIM:svt.default,initByDim:svt.default,INITBYPROB:ivt.default,initByProb:ivt.default,MERGE:avt.default,merge:avt.default,QUERY:ovt.default,query:ovt.default}});var uvt=S(LEe=>{"use strict";Object.defineProperty(LEe,"__esModule",{value:!0});var lGr=We();LEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.ADD"),e.pushKey(t),e.push(r)},transformReply:lGr.transformBooleanReply}});var lvt=S(MEe=>{"use strict";Object.defineProperty(MEe,"__esModule",{value:!0});var dGr=We();MEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.ADDNX"),e.pushKey(t),e.push(r)},transformReply:dGr.transformBooleanReply}});var dvt=S(kEe=>{"use strict";Object.defineProperty(kEe,"__esModule",{value:!0});kEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CF.COUNT"),e.pushKey(t),e.push(r)},transformReply:void 0}});var fvt=S(BEe=>{"use strict";Object.defineProperty(BEe,"__esModule",{value:!0});var fGr=We();BEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.DEL"),e.pushKey(t),e.push(r)},transformReply:fGr.transformBooleanReply}});var hvt=S(UEe=>{"use strict";Object.defineProperty(UEe,"__esModule",{value:!0});var hGr=We();UEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("CF.EXISTS"),e.pushKey(t),e.push(r)},transformReply:hGr.transformBooleanReply}});var pvt=S(FEe=>{"use strict";Object.defineProperty(FEe,"__esModule",{value:!0});var pGr=uC();FEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("CF.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,pGr.transformInfoV2Reply)(e,r),3:void 0}}});var $Ee=S(SM=>{"use strict";Object.defineProperty(SM,"__esModule",{value:!0});SM.parseCfInsertArguments=void 0;var mGr=We();function mvt(e,t,r,n){e.pushKey(t),n?.CAPACITY!==void 0&&e.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&e.push("NOCREATE"),e.push("ITEMS"),e.pushVariadic(r)}SM.parseCfInsertArguments=mvt;SM.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("CF.INSERT"),mvt(...e)},transformReply:mGr.transformBooleanArrayReply}});var gvt=S(ig=>{"use strict";var gGr=ig&&ig.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),_Gr=ig&&ig.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),AGr=ig&&ig.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&gGr(t,e,r);return _Gr(t,e),t};Object.defineProperty(ig,"__esModule",{value:!0});var qEe=AGr($Ee());ig.default={IS_READ_ONLY:qEe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("CF.INSERTNX"),(0,qEe.parseCfInsertArguments)(...e)},transformReply:qEe.default.transformReply}});var _vt=S(HEe=>{"use strict";Object.defineProperty(HEe,"__esModule",{value:!0});HEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CF.LOADCHUNK"),e.pushKey(t),e.push(r.toString(),n)},transformReply:void 0}});var Avt=S(VEe=>{"use strict";Object.defineProperty(VEe,"__esModule",{value:!0});VEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("CF.RESERVE"),e.pushKey(t),e.push(r.toString()),n?.BUCKETSIZE!==void 0&&e.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&e.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&e.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var Evt=S(jEe=>{"use strict";Object.defineProperty(jEe,"__esModule",{value:!0});jEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("CF.SCANDUMP"),e.pushKey(t),e.push(r.toString())},transformReply(e){return{iterator:e[0],chunk:e[1]}}}});var Ovt=S(TM=>{"use strict";var r0=TM&&TM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(TM,"__esModule",{value:!0});var yvt=r0(uvt()),vvt=r0(lvt()),Svt=r0(dvt()),Tvt=r0(fvt()),bvt=r0(hvt()),Ivt=r0(pvt()),Rvt=r0($Ee()),Cvt=r0(gvt()),xvt=r0(_vt()),wvt=r0(Avt()),Nvt=r0(Evt());TM.default={ADD:yvt.default,add:yvt.default,ADDNX:vvt.default,addNX:vvt.default,COUNT:Svt.default,count:Svt.default,DEL:Tvt.default,del:Tvt.default,EXISTS:bvt.default,exists:bvt.default,INFO:Ivt.default,info:Ivt.default,INSERT:Rvt.default,insert:Rvt.default,INSERTNX:Cvt.default,insertNX:Cvt.default,LOADCHUNK:xvt.default,loadChunk:xvt.default,RESERVE:wvt.default,reserve:wvt.default,SCANDUMP:Nvt.default,scanDump:Nvt.default}});var Dvt=S(KEe=>{"use strict";Object.defineProperty(KEe,"__esModule",{value:!0});KEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TDIGEST.ADD"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:void 0}});var GEe=S(bM=>{"use strict";Object.defineProperty(bM,"__esModule",{value:!0});bM.transformByRankArguments=void 0;var EGr=We();function Pvt(e,t,r){e.pushKey(t);for(let n of r)e.push(n.toString())}bM.transformByRankArguments=Pvt;bM.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TDIGEST.BYRANK"),Pvt(...e)},transformReply:EGr.transformDoubleArrayReply}});var Lvt=S(ag=>{"use strict";var yGr=ag&&ag.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vGr=ag&&ag.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),SGr=ag&&ag.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yGr(t,e,r);return vGr(t,e),t};Object.defineProperty(ag,"__esModule",{value:!0});var zEe=SGr(GEe());ag.default={IS_READ_ONLY:zEe.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TDIGEST.BYREVRANK"),(0,zEe.transformByRankArguments)(...e)},transformReply:zEe.default.transformReply}});var Mvt=S(YEe=>{"use strict";Object.defineProperty(YEe,"__esModule",{value:!0});var TGr=We();YEe.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TDIGEST.CDF"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:TGr.transformDoubleArrayReply}});var kvt=S(QEe=>{"use strict";Object.defineProperty(QEe,"__esModule",{value:!0});QEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TDIGEST.CREATE"),e.pushKey(t),r?.COMPRESSION!==void 0&&e.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var Bvt=S(WEe=>{"use strict";Object.defineProperty(WEe,"__esModule",{value:!0});var bGr=uC();WEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(0,bGr.transformInfoV2Reply)(e,r),3:void 0}}});var Uvt=S(XEe=>{"use strict";Object.defineProperty(XEe,"__esModule",{value:!0});var IGr=We();XEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.MAX"),e.pushKey(t)},transformReply:IGr.transformDoubleReply}});var Fvt=S(JEe=>{"use strict";Object.defineProperty(JEe,"__esModule",{value:!0});JEe.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TDIGEST.MERGE"),e.pushKey(t),e.pushKeysLength(r),n?.COMPRESSION!==void 0&&e.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&e.push("OVERRIDE")},transformReply:void 0}});var $vt=S(ZEe=>{"use strict";Object.defineProperty(ZEe,"__esModule",{value:!0});var RGr=We();ZEe.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TDIGEST.MIN"),e.pushKey(t)},transformReply:RGr.transformDoubleReply}});var qvt=S(eye=>{"use strict";Object.defineProperty(eye,"__esModule",{value:!0});var CGr=We();eye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TDIGEST.QUANTILE"),e.pushKey(t);for(let n of r)e.push(n.toString())},transformReply:CGr.transformDoubleArrayReply}});var tye=S(IM=>{"use strict";Object.defineProperty(IM,"__esModule",{value:!0});IM.transformRankArguments=void 0;function Hvt(e,t,r){e.pushKey(t);for(let n of r)e.push(n.toString())}IM.transformRankArguments=Hvt;IM.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TDIGEST.RANK"),Hvt(...e)},transformReply:void 0}});var Vvt=S(rye=>{"use strict";Object.defineProperty(rye,"__esModule",{value:!0});rye.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TDIGEST.RESET"),e.pushKey(t)},transformReply:void 0}});var jvt=S(og=>{"use strict";var xGr=og&&og.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wGr=og&&og.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),NGr=og&&og.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&xGr(t,e,r);return wGr(t,e),t};Object.defineProperty(og,"__esModule",{value:!0});var nye=NGr(tye());og.default={IS_READ_ONLY:nye.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TDIGEST.REVRANK"),(0,nye.transformRankArguments)(...e)},transformReply:nye.default.transformReply}});var Kvt=S(sye=>{"use strict";Object.defineProperty(sye,"__esModule",{value:!0});var OGr=We();sye.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("TDIGEST.TRIMMED_MEAN"),e.pushKey(t),e.push(r.toString(),n.toString())},transformReply:OGr.transformDoubleReply}});var aSt=S(RM=>{"use strict";var ju=RM&&RM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(RM,"__esModule",{value:!0});var Gvt=ju(Dvt()),zvt=ju(GEe()),Yvt=ju(Lvt()),Qvt=ju(Mvt()),Wvt=ju(kvt()),Xvt=ju(Bvt()),Jvt=ju(Uvt()),Zvt=ju(Fvt()),eSt=ju($vt()),tSt=ju(qvt()),rSt=ju(tye()),nSt=ju(Vvt()),sSt=ju(jvt()),iSt=ju(Kvt());RM.default={ADD:Gvt.default,add:Gvt.default,BYRANK:zvt.default,byRank:zvt.default,BYREVRANK:Yvt.default,byRevRank:Yvt.default,CDF:Qvt.default,cdf:Qvt.default,CREATE:Wvt.default,create:Wvt.default,INFO:Xvt.default,info:Xvt.default,MAX:Jvt.default,max:Jvt.default,MERGE:Zvt.default,merge:Zvt.default,MIN:eSt.default,min:eSt.default,QUANTILE:tSt.default,quantile:tSt.default,RANK:rSt.default,rank:rSt.default,RESET:nSt.default,reset:nSt.default,REVRANK:sSt.default,revRank:sSt.default,TRIMMED_MEAN:iSt.default,trimmedMean:iSt.default}});var oSt=S(iye=>{"use strict";Object.defineProperty(iye,"__esModule",{value:!0});iye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TOPK.ADD"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var cSt=S(aye=>{"use strict";Object.defineProperty(aye,"__esModule",{value:!0});aye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TOPK.COUNT"),e.pushKey(t),e.pushVariadic(r)},transformReply:void 0}});var lSt=S(oye=>{"use strict";Object.defineProperty(oye,"__esModule",{value:!0});function uSt(e,{item:t,incrementBy:r}){e.push(t,r.toString())}oye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){if(e.push("TOPK.INCRBY"),e.pushKey(t),Array.isArray(r))for(let n of r)uSt(e,n);else uSt(e,r)},transformReply:void 0}});var dSt=S(cye=>{"use strict";Object.defineProperty(cye,"__esModule",{value:!0});var DGr=We(),PGr=uC();cye.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>(e[7]=DGr.transformDoubleReply[2](e[7],t,r),(0,PGr.transformInfoV2Reply)(e,r)),3:void 0}}});var fSt=S(uye=>{"use strict";Object.defineProperty(uye,"__esModule",{value:!0});uye.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.LIST"),e.pushKey(t),e.push("WITHCOUNT")},transformReply(e){let t=[];for(let r=0;r{"use strict";Object.defineProperty(lye,"__esModule",{value:!0});lye.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TOPK.LIST"),e.pushKey(t)},transformReply:void 0}});var pSt=S(dye=>{"use strict";Object.defineProperty(dye,"__esModule",{value:!0});var LGr=We();dye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TOPK.QUERY"),e.pushKey(t),e.pushVariadic(r)},transformReply:LGr.transformBooleanArrayReply}});var mSt=S(fye=>{"use strict";Object.defineProperty(fye,"__esModule",{value:!0});fye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TOPK.RESERVE"),e.pushKey(t),e.push(r.toString()),n&&e.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var bSt=S(CM=>{"use strict";var iE=CM&&CM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(CM,"__esModule",{value:!0});var gSt=iE(oSt()),_St=iE(cSt()),ASt=iE(lSt()),ESt=iE(dSt()),ySt=iE(fSt()),vSt=iE(hSt()),SSt=iE(pSt()),TSt=iE(mSt());CM.default={ADD:gSt.default,add:gSt.default,COUNT:_St.default,count:_St.default,INCRBY:ASt.default,incrBy:ASt.default,INFO:ESt.default,info:ESt.default,LIST_WITHCOUNT:ySt.default,listWithCount:ySt.default,LIST:vSt.default,list:vSt.default,QUERY:SSt.default,query:SSt.default,RESERVE:TSt.default,reserve:TSt.default}});var ISt=S(xM=>{"use strict";var wM=xM&&xM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(xM,"__esModule",{value:!0});var MGr=wM(uC()),kGr=wM(cvt()),BGr=wM(Ovt()),UGr=wM(aSt()),FGr=wM(bSt());xM.default={bf:MGr.default,cms:kGr.default,cf:BGr.default,tDigest:UGr.default,topK:FGr.default}});var hye=S(dC=>{"use strict";var $Gr=dC&&dC.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(dC,"__esModule",{value:!0});dC.default=void 0;var qGr=ISt();Object.defineProperty(dC,"default",{enumerable:!0,get:function(){return $Gr(qGr).default}})});var CSt=S(pye=>{"use strict";Object.defineProperty(pye,"__esModule",{value:!0});var RSt=We();pye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,...s){e.push("JSON.ARRAPPEND"),e.pushKey(t),e.push(r,(0,RSt.transformRedisJsonArgument)(n));for(let i=0;i{"use strict";Object.defineProperty(mye,"__esModule",{value:!0});var HGr=We();mye.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("JSON.ARRINDEX"),e.pushKey(t),e.push(r,(0,HGr.transformRedisJsonArgument)(n)),s?.range&&(e.push(s.range.start.toString()),s.range.stop!==void 0&&e.push(s.range.stop.toString()))},transformReply:void 0}});var NSt=S(gye=>{"use strict";Object.defineProperty(gye,"__esModule",{value:!0});var wSt=We();gye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,...i){e.push("JSON.ARRINSERT"),e.pushKey(t),e.push(r,n.toString(),(0,wSt.transformRedisJsonArgument)(s));for(let a=0;a{"use strict";Object.defineProperty(_ye,"__esModule",{value:!0});_ye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.ARRLEN"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var DSt=S(Eye=>{"use strict";Object.defineProperty(Eye,"__esModule",{value:!0});var Aye=We();Eye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.ARRPOP"),e.pushKey(t),r&&(e.push(r.path),r.index!==void 0&&e.push(r.index.toString()))},transformReply(e){return(0,Aye.isArrayReply)(e)?e.map(t=>(0,Aye.transformRedisJsonNullReply)(t)):(0,Aye.transformRedisJsonNullReply)(e)}}});var PSt=S(yye=>{"use strict";Object.defineProperty(yye,"__esModule",{value:!0});yye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("JSON.ARRTRIM"),e.pushKey(t),e.push(r,n.toString(),s.toString())},transformReply:void 0}});var LSt=S(vye=>{"use strict";Object.defineProperty(vye,"__esModule",{value:!0});vye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.CLEAR"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var MSt=S(Sye=>{"use strict";Object.defineProperty(Sye,"__esModule",{value:!0});Sye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.DEBUG","MEMORY"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var kSt=S(Tye=>{"use strict";Object.defineProperty(Tye,"__esModule",{value:!0});Tye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.DEL"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var BSt=S(bye=>{"use strict";Object.defineProperty(bye,"__esModule",{value:!0});bye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.FORGET"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var USt=S(Iye=>{"use strict";Object.defineProperty(Iye,"__esModule",{value:!0});var VGr=We();Iye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.GET"),e.pushKey(t),r?.path!==void 0&&e.pushVariadic(r.path)},transformReply:VGr.transformRedisJsonNullReply}});var FSt=S(Rye=>{"use strict";Object.defineProperty(Rye,"__esModule",{value:!0});var jGr=We();Rye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.MERGE"),e.pushKey(t),e.push(r,(0,jGr.transformRedisJsonArgument)(n))},transformReply:void 0}});var $St=S(Cye=>{"use strict";Object.defineProperty(Cye,"__esModule",{value:!0});var KGr=We();Cye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.MGET"),e.pushKeys(t),e.push(r)},transformReply(e){return e.map(t=>(0,KGr.transformRedisJsonNullReply)(t))}}});var qSt=S(xye=>{"use strict";Object.defineProperty(xye,"__esModule",{value:!0});var GGr=We();xye.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(wye,"__esModule",{value:!0});wye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.NUMINCRBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:{2:e=>JSON.parse(e.toString()),3:void 0}}});var HSt=S(NM=>{"use strict";var zGr=NM&&NM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(NM,"__esModule",{value:!0});var YGr=zGr(Nye());NM.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.NUMMULTBY"),e.pushKey(t),e.push(r,n.toString())},transformReply:YGr.default.transformReply}});var VSt=S(Oye=>{"use strict";Object.defineProperty(Oye,"__esModule",{value:!0});Oye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.OBJKEYS"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var jSt=S(Dye=>{"use strict";Object.defineProperty(Dye,"__esModule",{value:!0});Dye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.OBJLEN"),e.pushKey(t),r?.path!==void 0&&e.push(r.path)},transformReply:void 0}});var KSt=S(Pye=>{"use strict";Object.defineProperty(Pye,"__esModule",{value:!0});var QGr=We();Pye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("JSON.SET"),e.pushKey(t),e.push(r,(0,QGr.transformRedisJsonArgument)(n)),s?.condition?e.push(s?.condition):s?.NX?e.push("NX"):s?.XX&&e.push("XX")},transformReply:void 0}});var GSt=S(Lye=>{"use strict";Object.defineProperty(Lye,"__esModule",{value:!0});var WGr=We();Lye.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("JSON.STRAPPEND"),e.pushKey(t),n?.path!==void 0&&e.push(n.path),e.push((0,WGr.transformRedisJsonArgument)(r))},transformReply:void 0}});var zSt=S(Mye=>{"use strict";Object.defineProperty(Mye,"__esModule",{value:!0});Mye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.STRLEN"),e.pushKey(t),r?.path&&e.push(r.path)},transformReply:void 0}});var YSt=S(kye=>{"use strict";Object.defineProperty(kye,"__esModule",{value:!0});kye.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("JSON.TOGGLE"),e.pushKey(t),e.push(r)},transformReply:void 0}});var QSt=S(Bye=>{"use strict";Object.defineProperty(Bye,"__esModule",{value:!0});Bye.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("JSON.TYPE"),e.pushKey(t),r?.path&&e.push(r.path)},transformReply:{2:void 0,3:e=>e[0]}}});var ETt=S(n0=>{"use strict";var _i=n0&&n0.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(n0,"__esModule",{value:!0});n0.transformRedisJsonNullReply=n0.transformRedisJsonReply=n0.transformRedisJsonArgument=void 0;var WSt=_i(CSt()),XSt=_i(xSt()),JSt=_i(NSt()),ZSt=_i(OSt()),eTt=_i(DSt()),tTt=_i(PSt()),rTt=_i(LSt()),nTt=_i(MSt()),sTt=_i(kSt()),iTt=_i(BSt()),aTt=_i(USt()),oTt=_i(FSt()),cTt=_i($St()),uTt=_i(qSt()),lTt=_i(Nye()),dTt=_i(HSt()),fTt=_i(VSt()),hTt=_i(jSt()),pTt=_i(KSt()),mTt=_i(GSt()),gTt=_i(zSt()),_Tt=_i(YSt()),ATt=_i(QSt()),Uye=We();Object.defineProperty(n0,"transformRedisJsonArgument",{enumerable:!0,get:function(){return Uye.transformRedisJsonArgument}});Object.defineProperty(n0,"transformRedisJsonReply",{enumerable:!0,get:function(){return Uye.transformRedisJsonReply}});Object.defineProperty(n0,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return Uye.transformRedisJsonNullReply}});n0.default={ARRAPPEND:WSt.default,arrAppend:WSt.default,ARRINDEX:XSt.default,arrIndex:XSt.default,ARRINSERT:JSt.default,arrInsert:JSt.default,ARRLEN:ZSt.default,arrLen:ZSt.default,ARRPOP:eTt.default,arrPop:eTt.default,ARRTRIM:tTt.default,arrTrim:tTt.default,CLEAR:rTt.default,clear:rTt.default,DEBUG_MEMORY:nTt.default,debugMemory:nTt.default,DEL:sTt.default,del:sTt.default,FORGET:iTt.default,forget:iTt.default,GET:aTt.default,get:aTt.default,MERGE:oTt.default,merge:oTt.default,MGET:cTt.default,mGet:cTt.default,MSET:uTt.default,mSet:uTt.default,NUMINCRBY:lTt.default,numIncrBy:lTt.default,NUMMULTBY:dTt.default,numMultBy:dTt.default,OBJKEYS:fTt.default,objKeys:fTt.default,OBJLEN:hTt.default,objLen:hTt.default,SET:pTt.default,set:pTt.default,STRAPPEND:mTt.default,strAppend:mTt.default,STRLEN:gTt.default,strLen:gTt.default,TOGGLE:_Tt.default,toggle:_Tt.default,TYPE:ATt.default,type:ATt.default}});var Fye=S(fC=>{"use strict";var XGr=fC&&fC.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(fC,"__esModule",{value:!0});fC.default=void 0;var JGr=ETt();Object.defineProperty(fC,"default",{enumerable:!0,get:function(){return XGr(JGr).default}})});var yTt=S($ye=>{"use strict";Object.defineProperty($ye,"__esModule",{value:!0});$ye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e){e.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var qq=S(Us=>{"use strict";Object.defineProperty(Us,"__esModule",{value:!0});Us.REDISEARCH_LANGUAGE=Us.parseSchema=Us.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Us.VAMANA_COMPRESSION_ALGORITHM=Us.SCHEMA_VECTOR_FIELD_ALGORITHM=Us.SCHEMA_TEXT_FIELD_PHONETIC=Us.SCHEMA_FIELD_TYPE=void 0;var vTt=We();Us.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Us.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Us.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Us.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Us.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function qye(e,t){t.SORTABLE&&(e.push("SORTABLE"),t.SORTABLE==="UNF"&&e.push("UNF")),t.NOINDEX&&e.push("NOINDEX")}function STt(e,t){for(let[r,n]of Object.entries(t)){let s=Array.isArray(n)?n:[n];for(let i of s){if(e.push(r),typeof i=="string"){e.push(i);continue}switch(i.AS&&e.push("AS",i.AS),e.push(i.type),i.INDEXMISSING&&e.push("INDEXMISSING"),i.type){case Us.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&e.push("NOSTEM"),i.WEIGHT!==void 0&&e.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&e.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&e.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&e.push("INDEXEMPTY"),qye(e,i);break;case Us.SCHEMA_FIELD_TYPE.NUMERIC:case Us.SCHEMA_FIELD_TYPE.GEO:qye(e,i);break;case Us.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&e.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&e.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&e.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&e.push("INDEXEMPTY"),qye(e,i);break;case Us.SCHEMA_FIELD_TYPE.VECTOR:e.push(i.ALGORITHM);let a=[];switch(a.push("TYPE",i.TYPE,"DIM",i.DIM.toString(),"DISTANCE_METRIC",i.DISTANCE_METRIC),i.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",i.INITIAL_CAP.toString()),i.ALGORITHM){case Us.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case Us.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:i.M!==void 0&&a.push("M",i.M.toString()),i.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",i.EF_CONSTRUCTION.toString()),i.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",i.EF_RUNTIME.toString());break;case Us.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:i.COMPRESSION&&a.push("COMPRESSION",i.COMPRESSION),i.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",i.CONSTRUCTION_WINDOW_SIZE.toString()),i.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",i.GRAPH_MAX_DEGREE.toString()),i.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",i.SEARCH_WINDOW_SIZE.toString()),i.EPSILON!==void 0&&a.push("EPSILON",i.EPSILON.toString()),i.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",i.TRAINING_THRESHOLD.toString()),i.REDUCE!==void 0&&a.push("REDUCE",i.REDUCE.toString());break}e.pushVariadicWithLength(a);break;case Us.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&e.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}Us.parseSchema=STt;Us.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};Us.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.CREATE",t),n?.ON&&e.push("ON",n.ON),(0,vTt.parseOptionalVariadicArgument)(e,"PREFIX",n?.PREFIX),n?.FILTER&&e.push("FILTER",n.FILTER),n?.LANGUAGE&&e.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&e.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&e.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&e.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&e.push("MAXTEXTFIELDS"),n?.TEMPORARY&&e.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&e.push("NOOFFSETS"),n?.NOHL&&e.push("NOHL"),n?.NOFIELDS&&e.push("NOFIELDS"),n?.NOFREQS&&e.push("NOFREQS"),n?.SKIPINITIALSCAN&&e.push("SKIPINITIALSCAN"),(0,vTt.parseOptionalVariadicArgument)(e,"STOPWORDS",n?.STOPWORDS),e.push("SCHEMA"),STt(e,r)},transformReply:void 0}});var TTt=S(Hye=>{"use strict";Object.defineProperty(Hye,"__esModule",{value:!0});var ZGr=qq();Hye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALTER",t,"SCHEMA","ADD"),(0,ZGr.parseSchema)(e,r)},transformReply:void 0}});var hC=S(Hq=>{"use strict";Object.defineProperty(Hq,"__esModule",{value:!0});Hq.DEFAULT_DIALECT=void 0;Hq.DEFAULT_DIALECT="2"});var US=S(BS=>{"use strict";Object.defineProperty(BS,"__esModule",{value:!0});BS.parseSearchOptions=BS.parseParamsArgument=void 0;var OM=We(),ezr=hC();function bTt(e,t){if(t){e.push("PARAMS");let r=[];for(let n in t){if(!Object.hasOwn(t,n))continue;let s=t[n];r.push(n,typeof s=="number"?s.toString():s)}e.pushVariadicWithLength(r)}}BS.parseParamsArgument=bTt;function ITt(e,t){t?.VERBATIM&&e.push("VERBATIM"),t?.NOSTOPWORDS&&e.push("NOSTOPWORDS"),(0,OM.parseOptionalVariadicArgument)(e,"INKEYS",t?.INKEYS),(0,OM.parseOptionalVariadicArgument)(e,"INFIELDS",t?.INFIELDS),(0,OM.parseOptionalVariadicArgument)(e,"RETURN",t?.RETURN),t?.SUMMARIZE&&(e.push("SUMMARIZE"),typeof t.SUMMARIZE=="object"&&((0,OM.parseOptionalVariadicArgument)(e,"FIELDS",t.SUMMARIZE.FIELDS),t.SUMMARIZE.FRAGS!==void 0&&e.push("FRAGS",t.SUMMARIZE.FRAGS.toString()),t.SUMMARIZE.LEN!==void 0&&e.push("LEN",t.SUMMARIZE.LEN.toString()),t.SUMMARIZE.SEPARATOR!==void 0&&e.push("SEPARATOR",t.SUMMARIZE.SEPARATOR))),t?.HIGHLIGHT&&(e.push("HIGHLIGHT"),typeof t.HIGHLIGHT=="object"&&((0,OM.parseOptionalVariadicArgument)(e,"FIELDS",t.HIGHLIGHT.FIELDS),t.HIGHLIGHT.TAGS&&e.push("TAGS",t.HIGHLIGHT.TAGS.open,t.HIGHLIGHT.TAGS.close))),t?.SLOP!==void 0&&e.push("SLOP",t.SLOP.toString()),t?.TIMEOUT!==void 0&&e.push("TIMEOUT",t.TIMEOUT.toString()),t?.INORDER&&e.push("INORDER"),t?.LANGUAGE&&e.push("LANGUAGE",t.LANGUAGE),t?.EXPANDER&&e.push("EXPANDER",t.EXPANDER),t?.SCORER&&e.push("SCORER",t.SCORER),t?.SORTBY&&(e.push("SORTBY"),typeof t.SORTBY=="string"||t.SORTBY instanceof Buffer?e.push(t.SORTBY):(e.push(t.SORTBY.BY),t.SORTBY.DIRECTION&&e.push(t.SORTBY.DIRECTION))),t?.LIMIT&&e.push("LIMIT",t.LIMIT.from.toString(),t.LIMIT.size.toString()),bTt(e,t?.PARAMS),t?.DIALECT?e.push("DIALECT",t.DIALECT.toString()):e.push("DIALECT",ezr.DEFAULT_DIALECT)}BS.parseSearchOptions=ITt;BS.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.SEARCH",t,r),ITt(e,n)},transformReply:{2:e=>{let t=e.length>2&&!Array.isArray(e[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.parseGroupByReducer=ps.parseAggregateOptions=ps.FT_AGGREGATE_GROUP_BY_REDUCERS=ps.FT_AGGREGATE_STEPS=void 0;var rzr=US(),nzr=We(),szr=hC();ps.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};ps.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};ps.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(e,t,r,n){return e.push("FT.AGGREGATE",t,r),xTt(e,n)},transformReply:{2:(e,t,r)=>{let n=[];for(let s=1;s{"use strict";var izr=DM&&DM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(DM,"__esModule",{value:!0});var jye=izr(pC());DM.default={IS_READ_ONLY:jye.default.IS_READ_ONLY,parseCommand(e,t,r,n){jye.default.parseCommand(e,t,r,n),e.push("WITHCURSOR"),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&e.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:e=>({...jye.default.transformReply[2](e[0]),cursor:e[1]}),3:void 0},unstableResp3:!0}});var wTt=S(Gye=>{"use strict";Object.defineProperty(Gye,"__esModule",{value:!0});Gye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALIASADD",t,r)},transformReply:void 0}});var NTt=S(zye=>{"use strict";Object.defineProperty(zye,"__esModule",{value:!0});zye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.ALIASDEL",t)},transformReply:void 0}});var OTt=S(Yye=>{"use strict";Object.defineProperty(Yye,"__esModule",{value:!0});Yye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.ALIASUPDATE",t,r)},transformReply:void 0}});var DTt=S(Qye=>{"use strict";Object.defineProperty(Qye,"__esModule",{value:!0});Qye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.CONFIG","GET",t)},transformReply(e){let t=Object.create(null);for(let r of e){let[n,s]=r;t[n.toString()]=s}return t}}});var PTt=S(Wye=>{"use strict";Object.defineProperty(Wye,"__esModule",{value:!0});Wye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.CONFIG","SET",t,r)},transformReply:void 0}});var LTt=S(Xye=>{"use strict";Object.defineProperty(Xye,"__esModule",{value:!0});Xye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.CURSOR","DEL",t,r.toString())},transformReply:void 0}});var MTt=S(PM=>{"use strict";var azr=PM&&PM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(PM,"__esModule",{value:!0});var ozr=azr(Kye());PM.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.CURSOR","READ",t,r.toString()),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString())},transformReply:ozr.default.transformReply,unstableResp3:!0}});var kTt=S(Jye=>{"use strict";Object.defineProperty(Jye,"__esModule",{value:!0});Jye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DICTADD",t),e.pushVariadic(r)},transformReply:void 0}});var BTt=S(Zye=>{"use strict";Object.defineProperty(Zye,"__esModule",{value:!0});Zye.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DICTDEL",t),e.pushVariadic(r)},transformReply:void 0}});var UTt=S(eve=>{"use strict";Object.defineProperty(eve,"__esModule",{value:!0});eve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.DICTDUMP",t)},transformReply:{2:void 0,3:void 0}}});var FTt=S(tve=>{"use strict";Object.defineProperty(tve,"__esModule",{value:!0});tve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.DROPINDEX",t),r?.DD&&e.push("DD")},transformReply:{2:void 0,3:void 0}}});var $Tt=S(rve=>{"use strict";Object.defineProperty(rve,"__esModule",{value:!0});var czr=US(),uzr=hC();rve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.EXPLAIN",t,r),(0,czr.parseParamsArgument)(e,n?.PARAMS),n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",uzr.DEFAULT_DIALECT)},transformReply:void 0}});var qTt=S(nve=>{"use strict";Object.defineProperty(nve,"__esModule",{value:!0});var lzr=hC();nve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.EXPLAINCLI",t,r),n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",lzr.DEFAULT_DIALECT)},transformReply:void 0}});var jTt=S(s0=>{"use strict";Object.defineProperty(s0,"__esModule",{value:!0});s0.FT_HYBRID_COMBINE_METHOD=s0.FT_HYBRID_VECTOR_METHOD=void 0;var HTt=We(),dzr=US(),fzr=pC();s0.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};s0.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function hzr(e,t){e.push("SEARCH",t.query),t.SCORER&&e.push("SCORER",t.SCORER),t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}function pzr(e,t){if(e.push("VSIM",t.field,t.vector),t.method){if(t.method.type===s0.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;t.method.EF_RUNTIME!==void 0&&(r+=2),e.push("KNN",r.toString(),"K",t.method.K.toString()),t.method.EF_RUNTIME!==void 0&&e.push("EF_RUNTIME",t.method.EF_RUNTIME.toString())}if(t.method.type===s0.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;t.method.EPSILON!==void 0&&(r+=2),e.push("RANGE",r.toString(),"RADIUS",t.method.RADIUS.toString()),t.method.EPSILON!==void 0&&e.push("EPSILON",t.method.EPSILON.toString())}}t.FILTER&&e.push("FILTER",t.FILTER),t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}function mzr(e,t){if(t){if(e.push("COMBINE"),t.method.type===s0.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;t.method.WINDOW!==void 0&&(r+=2),t.method.CONSTANT!==void 0&&(r+=2),t.YIELD_SCORE_AS&&(r+=2),e.push("RRF",r.toString()),t.method.WINDOW!==void 0&&e.push("WINDOW",t.method.WINDOW.toString()),t.method.CONSTANT!==void 0&&e.push("CONSTANT",t.method.CONSTANT.toString())}if(t.method.type===s0.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;t.method.ALPHA!==void 0&&(r+=2),t.method.BETA!==void 0&&(r+=2),t.method.WINDOW!==void 0&&(r+=2),t.YIELD_SCORE_AS&&(r+=2),e.push("LINEAR",r.toString()),t.method.ALPHA!==void 0&&e.push("ALPHA",t.method.ALPHA.toString()),t.method.BETA!==void 0&&e.push("BETA",t.method.BETA.toString()),t.method.WINDOW!==void 0&&e.push("WINDOW",t.method.WINDOW.toString())}t.YIELD_SCORE_AS&&e.push("YIELD_SCORE_AS",t.YIELD_SCORE_AS)}}function gzr(e,t){e.push("APPLY",t.expression),t.AS&&e.push("AS",t.AS)}function _zr(e,t){if(hzr(e,t.SEARCH),pzr(e,t.VSIM),t.COMBINE&&mzr(e,t.COMBINE),t.LOAD&&(t.LOAD==="*"?e.push("LOAD","*"):(0,HTt.parseOptionalVariadicArgument)(e,"LOAD",t.LOAD)),t.GROUPBY&&((0,HTt.parseOptionalVariadicArgument)(e,"GROUPBY",t.GROUPBY.fields),t.GROUPBY.REDUCE)){let n=Array.isArray(t.GROUPBY.REDUCE)?t.GROUPBY.REDUCE:[t.GROUPBY.REDUCE];for(let s of n)(0,fzr.parseGroupByReducer)(e,s)}if(t.APPLY){let n=Array.isArray(t.APPLY)?t.APPLY:[t.APPLY];for(let s of n)gzr(e,s)}if(t.SORTBY){let n=t.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);e.push("SORTBY",n.toString());for(let s of t.SORTBY.fields)e.push(s.field),s.direction&&e.push(s.direction)}t.NOSORT&&e.push("NOSORT"),t.FILTER&&e.push("FILTER",t.FILTER),t.LIMIT&&e.push("LIMIT",t.LIMIT.offset.toString(),t.LIMIT.count.toString());let r=t.PARAMS&&Object.keys(t.PARAMS).length>0;(0,dzr.parseParamsArgument)(e,r?t.PARAMS:void 0),t.TIMEOUT!==void 0&&e.push("TIMEOUT",t.TIMEOUT.toString())}s0.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.HYBRID",t),_zr(e,r)},transformReply:{2:e=>Azr(e),3:void 0},unstableResp3:!0};function Azr(e){let t=VTt(e),r=t.total_results??0,n=t.results??[],s=t.warnings??[],i=t.execution_time?Number.parseFloat(t.execution_time):0,a=[];for(let o of n){let c=VTt(o),u=Object.create(null);for(let[l,d]of Object.entries(c))if(l==="$")try{Object.assign(u,JSON.parse(d))}catch{u[l]=d}else u[l]=d;a.push(u)}return{totalResults:r,executionTime:i,warnings:s,results:a}}function VTt(e){let t={};if(!Array.isArray(e))return t;for(let r=0;r{"use strict";Object.defineProperty(ive,"__esModule",{value:!0});var sve=We();ive.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.INFO",t)},transformReply:{2:Ezr,3:void 0},unstableResp3:!0};function Ezr(e,t,r){let n=(0,sve.createTransformTuplesReplyFunc)(t,r),s={};for(let i=0;in(o));break;case"gc_stats":{let o={},c=e[i+1];for(let u=0;u{"use strict";var yzr=cg&&cg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),vzr=cg&&cg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Szr=cg&&cg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yzr(t,e,r);return vzr(t,e),t};Object.defineProperty(cg,"__esModule",{value:!0});var GTt=Szr(US());cg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.PROFILE",t,"SEARCH"),n?.LIMITED&&e.push("LIMITED"),e.push("QUERY",r),(0,GTt.parseSearchOptions)(e,n)},transformReply:{2:e=>({results:GTt.default.transformReply[2](e[0]),profile:e[1]}),3:e=>e},unstableResp3:!0}});var QTt=S(ug=>{"use strict";var Tzr=ug&&ug.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),bzr=ug&&ug.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Izr=ug&&ug.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Tzr(t,e,r);return bzr(t,e),t};Object.defineProperty(ug,"__esModule",{value:!0});var YTt=Izr(pC());ug.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.PROFILE",t,"AGGREGATE"),n?.LIMITED&&e.push("LIMITED"),e.push("QUERY",r),(0,YTt.parseAggregateOptions)(e,n)},transformReply:{2:e=>({results:YTt.default.transformReply[2](e[0]),profile:e[1]}),3:e=>e},unstableResp3:!0}});var WTt=S(LM=>{"use strict";var Rzr=LM&&LM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(LM,"__esModule",{value:!0});var ave=Rzr(US());LM.default={NOT_KEYED_COMMAND:ave.default.NOT_KEYED_COMMAND,IS_READ_ONLY:ave.default.IS_READ_ONLY,parseCommand(...e){ave.default.parseCommand(...e),e[0].push("NOCONTENT")},transformReply:{2:e=>({total:e[0],documents:e.slice(1)}),3:void 0},unstableResp3:!0}});var JTt=S(ove=>{"use strict";Object.defineProperty(ove,"__esModule",{value:!0});var Czr=hC();ove.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n){if(e.push("FT.SPELLCHECK",t,r),n?.DISTANCE&&e.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)XTt(e,s);else XTt(e,n.TERMS);n?.DIALECT?e.push("DIALECT",n.DIALECT.toString()):e.push("DIALECT",Czr.DEFAULT_DIALECT)},transformReply:{2:e=>e.map(([,t,r])=>({term:t,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function XTt(e,{mode:t,dictionary:r}){e.push("TERMS",t,r)}});var ZTt=S(cve=>{"use strict";Object.defineProperty(cve,"__esModule",{value:!0});cve.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("FT.SUGADD"),e.pushKey(t),e.push(r,n.toString()),s?.INCR&&e.push("INCR"),s?.PAYLOAD&&e.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ebt=S(uve=>{"use strict";Object.defineProperty(uve,"__esModule",{value:!0});uve.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.SUGDEL"),e.pushKey(t),e.push(r)},transformReply:void 0}});var MM=S(lve=>{"use strict";Object.defineProperty(lve,"__esModule",{value:!0});lve.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("FT.SUGGET"),e.pushKey(t),e.push(r),n?.FUZZY&&e.push("FUZZY"),n?.MAX!==void 0&&e.push("MAX",n.MAX.toString())},transformReply:void 0}});var rbt=S(kM=>{"use strict";var xzr=kM&&kM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(kM,"__esModule",{value:!0});var wzr=We(),tbt=xzr(MM());kM.default={IS_READ_ONLY:tbt.default.IS_READ_ONLY,parseCommand(...e){tbt.default.parseCommand(...e),e[0].push("WITHPAYLOADS")},transformReply(e){if((0,wzr.isNullReply)(e))return null;let t=new Array(e.length/2),r=0,n=0;for(;r{"use strict";var Nzr=BM&&BM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(BM,"__esModule",{value:!0});var dve=We(),nbt=Nzr(MM());BM.default={IS_READ_ONLY:nbt.default.IS_READ_ONLY,parseCommand(...e){nbt.default.parseCommand(...e),e[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(e,t,r)=>{if((0,dve.isNullReply)(e))return null;let n=new Array(e.length/3),s=0,i=0;for(;s{if((0,dve.isNullReply)(e))return null;let t=new Array(e.length/3),r=0,n=0;for(;r{"use strict";var Ozr=UM&&UM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(UM,"__esModule",{value:!0});var fve=We(),ibt=Ozr(MM());UM.default={IS_READ_ONLY:ibt.default.IS_READ_ONLY,parseCommand(...e){ibt.default.parseCommand(...e),e[0].push("WITHSCORES")},transformReply:{2:(e,t,r)=>{if((0,fve.isNullReply)(e))return null;let n=new Array(e.length/2),s=0,i=0;for(;s{if((0,fve.isNullReply)(e))return null;let t=new Array(e.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(hve,"__esModule",{value:!0});hve.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.SUGLEN",t)},transformReply:void 0}});var cbt=S(pve=>{"use strict";Object.defineProperty(pve,"__esModule",{value:!0});pve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("FT.SYNDUMP",t)},transformReply:{2:e=>{let t={},r=0;for(;r{"use strict";Object.defineProperty(mve,"__esModule",{value:!0});mve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r,n,s){e.push("FT.SYNUPDATE",t,r),s?.SKIPINITIALSCAN&&e.push("SKIPINITIALSCAN"),e.pushVariadic(n)},transformReply:void 0}});var lbt=S(gve=>{"use strict";Object.defineProperty(gve,"__esModule",{value:!0});gve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("FT.TAGVALS",t,r)},transformReply:{2:void 0,3:void 0}}});var Gbt=S(FM=>{"use strict";var dn=FM&&FM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(FM,"__esModule",{value:!0});var dbt=dn(yTt()),fbt=dn(TTt()),hbt=dn(Kye()),pbt=dn(pC()),mbt=dn(wTt()),gbt=dn(NTt()),_bt=dn(OTt()),Abt=dn(DTt()),Ebt=dn(PTt()),ybt=dn(qq()),vbt=dn(LTt()),Sbt=dn(MTt()),Tbt=dn(kTt()),bbt=dn(BTt()),Ibt=dn(UTt()),Rbt=dn(FTt()),Cbt=dn($Tt()),xbt=dn(qTt()),wbt=dn(jTt()),Nbt=dn(KTt()),Obt=dn(zTt()),Dbt=dn(QTt()),Pbt=dn(WTt()),Lbt=dn(US()),Mbt=dn(JTt()),kbt=dn(ZTt()),Bbt=dn(ebt()),Ubt=dn(rbt()),Fbt=dn(sbt()),$bt=dn(abt()),qbt=dn(MM()),Hbt=dn(obt()),Vbt=dn(cbt()),jbt=dn(ubt()),Kbt=dn(lbt());FM.default={_LIST:dbt.default,_list:dbt.default,ALTER:fbt.default,alter:fbt.default,AGGREGATE_WITHCURSOR:hbt.default,aggregateWithCursor:hbt.default,AGGREGATE:pbt.default,aggregate:pbt.default,ALIASADD:mbt.default,aliasAdd:mbt.default,ALIASDEL:gbt.default,aliasDel:gbt.default,ALIASUPDATE:_bt.default,aliasUpdate:_bt.default,CONFIG_GET:Abt.default,configGet:Abt.default,CONFIG_SET:Ebt.default,configSet:Ebt.default,CREATE:ybt.default,create:ybt.default,CURSOR_DEL:vbt.default,cursorDel:vbt.default,CURSOR_READ:Sbt.default,cursorRead:Sbt.default,DICTADD:Tbt.default,dictAdd:Tbt.default,DICTDEL:bbt.default,dictDel:bbt.default,DICTDUMP:Ibt.default,dictDump:Ibt.default,DROPINDEX:Rbt.default,dropIndex:Rbt.default,EXPLAIN:Cbt.default,explain:Cbt.default,EXPLAINCLI:xbt.default,explainCli:xbt.default,HYBRID:wbt.default,hybrid:wbt.default,INFO:Nbt.default,info:Nbt.default,PROFILESEARCH:Obt.default,profileSearch:Obt.default,PROFILEAGGREGATE:Dbt.default,profileAggregate:Dbt.default,SEARCH_NOCONTENT:Pbt.default,searchNoContent:Pbt.default,SEARCH:Lbt.default,search:Lbt.default,SPELLCHECK:Mbt.default,spellCheck:Mbt.default,SUGADD:kbt.default,sugAdd:kbt.default,SUGDEL:Bbt.default,sugDel:Bbt.default,SUGGET_WITHPAYLOADS:Ubt.default,sugGetWithPayloads:Ubt.default,SUGGET_WITHSCORES_WITHPAYLOADS:Fbt.default,sugGetWithScoresWithPayloads:Fbt.default,SUGGET_WITHSCORES:$bt.default,sugGetWithScores:$bt.default,SUGGET:qbt.default,sugGet:qbt.default,SUGLEN:Hbt.default,sugLen:Hbt.default,SYNDUMP:Vbt.default,synDump:Vbt.default,SYNUPDATE:jbt.default,synUpdate:jbt.default,TAGVALS:Kbt.default,tagVals:Kbt.default}});var _ve=S(ja=>{"use strict";var Dzr=ja&&ja.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ja,"__esModule",{value:!0});ja.FT_AGGREGATE_STEPS=ja.FT_AGGREGATE_GROUP_BY_REDUCERS=ja.SCHEMA_VECTOR_FIELD_ALGORITHM=ja.SCHEMA_TEXT_FIELD_PHONETIC=ja.SCHEMA_FIELD_TYPE=ja.REDISEARCH_LANGUAGE=ja.default=void 0;var Pzr=Gbt();Object.defineProperty(ja,"default",{enumerable:!0,get:function(){return Dzr(Pzr).default}});var Vq=qq();Object.defineProperty(ja,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return Vq.REDISEARCH_LANGUAGE}});Object.defineProperty(ja,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return Vq.SCHEMA_FIELD_TYPE}});Object.defineProperty(ja,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return Vq.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(ja,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return Vq.SCHEMA_VECTOR_FIELD_ALGORITHM}});var zbt=pC();Object.defineProperty(ja,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return zbt.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(ja,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return zbt.FT_AGGREGATE_STEPS}})});var Ka=S(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.transformRESP2LabelsWithSources=en.transformRESP2Labels=en.parseSelectedLabelsArguments=en.resp3MapToValue=en.resp2MapToValue=en.transformSamplesReply=en.transformSampleReply=en.parseLabelsArgument=en.transformTimestampArgument=en.parseDuplicatePolicy=en.TIME_SERIES_DUPLICATE_POLICIES=en.parseChunkSizeArgument=en.parseEncodingArgument=en.TIME_SERIES_ENCODING=en.parseRetentionArgument=en.parseIgnoreArgument=void 0;var Ave=yM();function Lzr(e,t){t!==void 0&&e.push("IGNORE",t.maxTimeDiff.toString(),t.maxValDiff.toString())}en.parseIgnoreArgument=Lzr;function Mzr(e,t){t!==void 0&&e.push("RETENTION",t.toString())}en.parseRetentionArgument=Mzr;en.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function kzr(e,t){t!==void 0&&e.push("ENCODING",t)}en.parseEncodingArgument=kzr;function Bzr(e,t){t!==void 0&&e.push("CHUNK_SIZE",t.toString())}en.parseChunkSizeArgument=Bzr;en.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function Uzr(e,t){t!==void 0&&e.push("DUPLICATE_POLICY",t)}en.parseDuplicatePolicy=Uzr;function Fzr(e){return typeof e=="string"?e:(typeof e=="number"?e:e.getTime()).toString()}en.transformTimestampArgument=Fzr;function $zr(e,t){if(t){e.push("LABELS");for(let[r,n]of Object.entries(t))e.push(r,n)}}en.parseLabelsArgument=$zr;en.transformSampleReply={2(e){let[t,r]=e;return{timestamp:t,value:Number(r)}},3(e){let[t,r]=e;return{timestamp:t,value:r}}};en.transformSamplesReply={2(e){return e.map(t=>en.transformSampleReply[2](t))},3(e){return e.map(t=>en.transformSampleReply[3](t))}};function qzr(e,t,r){let n=e;switch(r?.[Ave.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),t(a))}return s}case Array:{for(let s of n){let i=s;i[1]=t(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=t(a)}return s}}}en.resp2MapToValue=qzr;function Hzr(e,t){let r=e;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty(Eve,"__esModule",{value:!0});var mC=Ka();Eve.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s){e.push("TS.ADD"),e.pushKey(t),e.push((0,mC.transformTimestampArgument)(r),n.toString()),(0,mC.parseRetentionArgument)(e,s?.RETENTION),(0,mC.parseEncodingArgument)(e,s?.ENCODING),(0,mC.parseChunkSizeArgument)(e,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&e.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,mC.parseLabelsArgument)(e,s?.LABELS),(0,mC.parseIgnoreArgument)(e,s?.IGNORE)},transformReply:void 0}});var Qbt=S(yve=>{"use strict";Object.defineProperty(yve,"__esModule",{value:!0});var $M=Ka();yve.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.ALTER"),e.pushKey(t),(0,$M.parseRetentionArgument)(e,r?.RETENTION),(0,$M.parseChunkSizeArgument)(e,r?.CHUNK_SIZE),(0,$M.parseDuplicatePolicy)(e,r?.DUPLICATE_POLICY),(0,$M.parseLabelsArgument)(e,r?.LABELS),(0,$M.parseIgnoreArgument)(e,r?.IGNORE)},transformReply:void 0}});var Wbt=S(vve=>{"use strict";Object.defineProperty(vve,"__esModule",{value:!0});var gC=Ka();vve.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.CREATE"),e.pushKey(t),(0,gC.parseRetentionArgument)(e,r?.RETENTION),(0,gC.parseEncodingArgument)(e,r?.ENCODING),(0,gC.parseChunkSizeArgument)(e,r?.CHUNK_SIZE),(0,gC.parseDuplicatePolicy)(e,r?.DUPLICATE_POLICY),(0,gC.parseLabelsArgument)(e,r?.LABELS),(0,gC.parseIgnoreArgument)(e,r?.IGNORE)},transformReply:void 0}});var Sve=S(qM=>{"use strict";Object.defineProperty(qM,"__esModule",{value:!0});qM.TIME_SERIES_AGGREGATION_TYPE=void 0;qM.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};qM.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n,s,i){e.push("TS.CREATERULE"),e.pushKeys([t,r]),e.push("AGGREGATION",n,s.toString()),i!==void 0&&e.push(i.toString())},transformReply:void 0}});var Tve=S(VM=>{"use strict";Object.defineProperty(VM,"__esModule",{value:!0});VM.parseIncrByArguments=void 0;var HM=Ka();function Xbt(e,t,r,n){e.pushKey(t),e.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&e.push("TIMESTAMP",(0,HM.transformTimestampArgument)(n.TIMESTAMP)),(0,HM.parseRetentionArgument)(e,n?.RETENTION),n?.UNCOMPRESSED&&e.push("UNCOMPRESSED"),(0,HM.parseChunkSizeArgument)(e,n?.CHUNK_SIZE),(0,HM.parseLabelsArgument)(e,n?.LABELS),(0,HM.parseIgnoreArgument)(e,n?.IGNORE)}VM.parseIncrByArguments=Xbt;VM.default={IS_READ_ONLY:!1,parseCommand(...e){e[0].push("TS.INCRBY"),Xbt(...e)},transformReply:void 0}});var Jbt=S(lg=>{"use strict";var zzr=lg&&lg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Yzr=lg&&lg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Qzr=lg&&lg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&zzr(t,e,r);return Yzr(t,e),t};Object.defineProperty(lg,"__esModule",{value:!0});var bve=Qzr(Tve());lg.default={IS_READ_ONLY:bve.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TS.DECRBY"),(0,bve.parseIncrByArguments)(...e)},transformReply:bve.default.transformReply}});var e1t=S(Ive=>{"use strict";Object.defineProperty(Ive,"__esModule",{value:!0});var Zbt=Ka();Ive.default={IS_READ_ONLY:!1,parseCommand(e,t,r,n){e.push("TS.DEL"),e.pushKey(t),e.push((0,Zbt.transformTimestampArgument)(r),(0,Zbt.transformTimestampArgument)(n))},transformReply:void 0}});var t1t=S(Rve=>{"use strict";Object.defineProperty(Rve,"__esModule",{value:!0});Rve.default={IS_READ_ONLY:!1,parseCommand(e,t,r){e.push("TS.DELETERULE"),e.pushKeys([t,r])},transformReply:void 0}});var r1t=S(Cve=>{"use strict";Object.defineProperty(Cve,"__esModule",{value:!0});Cve.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.GET"),e.pushKey(t),r?.LATEST&&e.push("LATEST")},transformReply:{2(e){return e.length===0?null:{timestamp:e[0],value:Number(e[1])}},3(e){return e.length===0?null:{timestamp:e[0],value:e[1]}}}}});var wve=S(xve=>{"use strict";Object.defineProperty(xve,"__esModule",{value:!0});var Wzr=We();xve.default={IS_READ_ONLY:!0,parseCommand(e,t){e.push("TS.INFO"),e.pushKey(t)},transformReply:{2:(e,t,r)=>{let n={};for(let s=0;s({name:a,value:o}));break;case"rules":n[i]=e[s+1].map(([a,o,c])=>({key:a,timeBucket:o,aggregationType:c}));break;case"ignoreMaxValDiff":n[i]=Wzr.transformDoubleReply[2](e[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var n1t=S(jM=>{"use strict";var Xzr=jM&&jM.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(jM,"__esModule",{value:!0});var Nve=Xzr(wve());jM.default={IS_READ_ONLY:Nve.default.IS_READ_ONLY,parseCommand(e,t){Nve.default.parseCommand(e,t),e.push("DEBUG")},transformReply:{2:(e,t,r)=>{let n=Nve.default.transformReply[2](e,t,r);for(let s=0;s({startTimestamp:a[1],endTimestamp:a[3],samples:a[5],size:a[7],bytesPerSample:a[9]}));break}}}return n},3:void 0},unstableResp3:!0}});var s1t=S(Ove=>{"use strict";Object.defineProperty(Ove,"__esModule",{value:!0});var Jzr=Ka();Ove.default={IS_READ_ONLY:!1,parseCommand(e,t){e.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of t)e.pushKey(r),e.push((0,Jzr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var zh=S(FS=>{"use strict";Object.defineProperty(FS,"__esModule",{value:!0});FS.parseFilterArgument=FS.parseLatestArgument=void 0;var jq=Ka();function i1t(e,t){t&&e.push("LATEST")}FS.parseLatestArgument=i1t;function a1t(e,t){e.push("FILTER"),e.pushVariadic(t)}FS.parseFilterArgument=a1t;FS.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.MGET"),i1t(e,r?.LATEST),a1t(e,t)},transformReply:{2(e,t,r){return(0,jq.resp2MapToValue)(e,([,,n])=>({sample:jq.transformSampleReply[2](n)}),r)},3(e){return(0,jq.resp3MapToValue)(e,([,t])=>({sample:jq.transformSampleReply[3](t)}))}}}});var Dve=S(GM=>{"use strict";Object.defineProperty(GM,"__esModule",{value:!0});GM.createTransformMGetLabelsReply=void 0;var o1t=zh(),KM=Ka();function c1t(){return{2(e,t,r){return(0,KM.resp2MapToValue)(e,([,n,s])=>({labels:(0,KM.transformRESP2Labels)(n),sample:KM.transformSampleReply[2](s)}),r)},3(e){return(0,KM.resp3MapToValue)(e,([t,r])=>({labels:t,sample:KM.transformSampleReply[3](r)}))}}}GM.createTransformMGetLabelsReply=c1t;GM.default={IS_READ_ONLY:!0,parseCommand(e,t,r){e.push("TS.MGET"),(0,o1t.parseLatestArgument)(e,r?.LATEST),e.push("WITHLABELS"),(0,o1t.parseFilterArgument)(e,t)},transformReply:c1t()}});var l1t=S(Pve=>{"use strict";Object.defineProperty(Pve,"__esModule",{value:!0});var u1t=zh(),Zzr=Ka(),eYr=Dve();Pve.default={IS_READ_ONLY:!0,parseCommand(e,t,r,n){e.push("TS.MGET"),(0,u1t.parseLatestArgument)(e,n?.LATEST),(0,Zzr.parseSelectedLabelsArguments)(e,r),(0,u1t.parseFilterArgument)(e,t)},transformReply:(0,eYr.createTransformMGetLabelsReply)()}});var Yh=S(dg=>{"use strict";Object.defineProperty(dg,"__esModule",{value:!0});dg.transformRangeArguments=dg.parseRangeArguments=dg.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var $S=Ka();dg.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function d1t(e,t,r,n){if(e.push((0,$S.transformTimestampArgument)(t),(0,$S.transformTimestampArgument)(r)),n?.LATEST&&e.push("LATEST"),n?.FILTER_BY_TS){e.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)e.push((0,$S.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&e.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&e.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&e.push("ALIGN",(0,$S.transformTimestampArgument)(n.ALIGN)),e.push("AGGREGATION",n.AGGREGATION.type,(0,$S.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&e.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&e.push("EMPTY"))}dg.parseRangeArguments=d1t;function f1t(e,t,r,n,s){e.pushKey(t),d1t(e,r,n,s)}dg.transformRangeArguments=f1t;dg.default={IS_READ_ONLY:!0,parseCommand(...e){e[0].push("TS.RANGE"),f1t(...e)},transformReply:{2(e){return $S.transformSamplesReply[2](e)},3(e){return $S.transformSamplesReply[3](e)}}}});var _C=S(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});i0.extractResp3MRangeSources=i0.createTransformMRangeGroupByArguments=i0.parseGroupByArguments=i0.TIME_SERIES_REDUCERS=void 0;var Kq=Ka(),tYr=Yh(),rYr=zh();i0.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function h1t(e,t){e.push("GROUPBY",t.label,"REDUCE",t.REDUCE)}i0.parseGroupByArguments=h1t;function p1t(e){return(t,r,n,s,i,a)=>{t.push(e),(0,tYr.parseRangeArguments)(t,r,n,a),(0,rYr.parseFilterArgument)(t,s),h1t(t,i)}}i0.createTransformMRangeGroupByArguments=p1t;function m1t(e){let t=e;return t instanceof Map?t.get("sources"):t instanceof Array?t[1]:t.sources}i0.extractResp3MRangeSources=m1t;i0.default={IS_READ_ONLY:!0,parseCommand:p1t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,Kq.resp2MapToValue)(e,([n,s,i])=>({samples:Kq.transformSamplesReply[2](i)}),r)},3(e){return(0,Kq.resp3MapToValue)(e,([t,r,n,s])=>({sources:m1t(n),samples:Kq.transformSamplesReply[3](s)}))}}}});var Gq=S(zM=>{"use strict";Object.defineProperty(zM,"__esModule",{value:!0});zM.createTransformMRangeSelectedLabelsArguments=void 0;var AC=Ka(),nYr=Yh(),sYr=zh();function g1t(e){return(t,r,n,s,i,a)=>{t.push(e),(0,nYr.parseRangeArguments)(t,r,n,a),(0,AC.parseSelectedLabelsArguments)(t,s),(0,sYr.parseFilterArgument)(t,i)}}zM.createTransformMRangeSelectedLabelsArguments=g1t;zM.default={IS_READ_ONLY:!0,parseCommand:g1t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,AC.resp2MapToValue)(e,([n,s,i])=>({labels:(0,AC.transformRESP2Labels)(s,r),samples:AC.transformSamplesReply[2](i)}),r)},3(e){return(0,AC.resp3MapToValue)(e,([t,r,n])=>({labels:r,samples:AC.transformSamplesReply[3](n)}))}}}});var Mve=S(qS=>{"use strict";var iYr=qS&&qS.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(qS,"__esModule",{value:!0});qS.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var Lve=Ka(),aYr=Yh(),_1t=_C(),oYr=zh(),cYr=iYr(Gq());function A1t(e){return(t,r,n,s,i,a,o)=>{t.push(e),(0,aYr.parseRangeArguments)(t,r,n,o),(0,Lve.parseSelectedLabelsArguments)(t,s),(0,oYr.parseFilterArgument)(t,i),(0,_1t.parseGroupByArguments)(t,a)}}qS.createMRangeSelectedLabelsGroupByTransformArguments=A1t;qS.default={IS_READ_ONLY:!0,parseCommand:A1t("TS.MRANGE"),transformReply:{2:cYr.default.transformReply[2],3(e){return(0,Lve.resp3MapToValue)(e,([t,r,n,s])=>({labels:t,sources:(0,_1t.extractResp3MRangeSources)(n),samples:Lve.transformSamplesReply[3](s)}))}}}});var kve=S(QM=>{"use strict";Object.defineProperty(QM,"__esModule",{value:!0});QM.createMRangeWithLabelsGroupByTransformArguments=void 0;var YM=Ka(),uYr=Yh(),E1t=_C(),lYr=zh();function y1t(e){return(t,r,n,s,i,a)=>{t.push(e),(0,uYr.parseRangeArguments)(t,r,n,a),t.push("WITHLABELS"),(0,lYr.parseFilterArgument)(t,s),(0,E1t.parseGroupByArguments)(t,i)}}QM.createMRangeWithLabelsGroupByTransformArguments=y1t;QM.default={IS_READ_ONLY:!0,parseCommand:y1t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,YM.resp2MapToValue)(e,([n,s,i])=>{let a=(0,YM.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:YM.transformSamplesReply[2](i)}},r)},3(e){return(0,YM.resp3MapToValue)(e,([t,r,n,s])=>({labels:t,sources:(0,E1t.extractResp3MRangeSources)(n),samples:YM.transformSamplesReply[3](s)}))}}}});var Bve=S(WM=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.createTransformMRangeWithLabelsArguments=void 0;var zq=Ka(),dYr=Yh(),fYr=zh();function v1t(e){return(t,r,n,s,i)=>{t.push(e),(0,dYr.parseRangeArguments)(t,r,n,i),t.push("WITHLABELS"),(0,fYr.parseFilterArgument)(t,s)}}WM.createTransformMRangeWithLabelsArguments=v1t;WM.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:v1t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,zq.resp2MapToValue)(e,([n,s,i])=>{let a=s,o=Object.create(null);for(let c of a){let[u,l]=c,d=u;o[d.toString()]=l}return{labels:o,samples:zq.transformSamplesReply[2](i)}},r)},3(e){return(0,zq.resp3MapToValue)(e,([t,r,n])=>({labels:t,samples:zq.transformSamplesReply[3](n)}))}}}});var Uve=S(XM=>{"use strict";Object.defineProperty(XM,"__esModule",{value:!0});XM.createTransformMRangeArguments=void 0;var Yq=Ka(),hYr=Yh(),pYr=zh();function S1t(e){return(t,r,n,s,i)=>{t.push(e),(0,hYr.parseRangeArguments)(t,r,n,i),(0,pYr.parseFilterArgument)(t,s)}}XM.createTransformMRangeArguments=S1t;XM.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:S1t("TS.MRANGE"),transformReply:{2(e,t,r){return(0,Yq.resp2MapToValue)(e,([n,s,i])=>Yq.transformSamplesReply[2](i),r)},3(e){return(0,Yq.resp3MapToValue)(e,([t,r,n])=>Yq.transformSamplesReply[3](n))}}}});var T1t=S(fg=>{"use strict";var mYr=fg&&fg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),gYr=fg&&fg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),_Yr=fg&&fg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&mYr(t,e,r);return gYr(t,e),t};Object.defineProperty(fg,"__esModule",{value:!0});var Fve=_Yr(_C());fg.default={IS_READ_ONLY:Fve.default.IS_READ_ONLY,parseCommand:(0,Fve.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:Fve.default.transformReply}});var b1t=S(hg=>{"use strict";var AYr=hg&&hg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),EYr=hg&&hg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),yYr=hg&&hg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&AYr(t,e,r);return EYr(t,e),t};Object.defineProperty(hg,"__esModule",{value:!0});var $ve=yYr(Mve());hg.default={IS_READ_ONLY:$ve.default.IS_READ_ONLY,parseCommand:(0,$ve.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:$ve.default.transformReply}});var I1t=S(pg=>{"use strict";var vYr=pg&&pg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),SYr=pg&&pg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),TYr=pg&&pg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&vYr(t,e,r);return SYr(t,e),t};Object.defineProperty(pg,"__esModule",{value:!0});var qve=TYr(Gq());pg.default={IS_READ_ONLY:qve.default.IS_READ_ONLY,parseCommand:(0,qve.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:qve.default.transformReply}});var R1t=S(mg=>{"use strict";var bYr=mg&&mg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),IYr=mg&&mg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),RYr=mg&&mg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&bYr(t,e,r);return IYr(t,e),t};Object.defineProperty(mg,"__esModule",{value:!0});var Hve=RYr(kve());mg.default={IS_READ_ONLY:Hve.default.IS_READ_ONLY,parseCommand:(0,Hve.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Hve.default.transformReply}});var C1t=S(gg=>{"use strict";var CYr=gg&&gg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),xYr=gg&&gg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),wYr=gg&&gg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&CYr(t,e,r);return xYr(t,e),t};Object.defineProperty(gg,"__esModule",{value:!0});var Qq=wYr(Bve());gg.default={NOT_KEYED_COMMAND:Qq.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Qq.default.IS_READ_ONLY,parseCommand:(0,Qq.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:Qq.default.transformReply}});var x1t=S(_g=>{"use strict";var NYr=_g&&_g.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),OYr=_g&&_g.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),DYr=_g&&_g.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&NYr(t,e,r);return OYr(t,e),t};Object.defineProperty(_g,"__esModule",{value:!0});var Wq=DYr(Uve());_g.default={NOT_KEYED_COMMAND:Wq.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Wq.default.IS_READ_ONLY,parseCommand:(0,Wq.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:Wq.default.transformReply}});var w1t=S(Vve=>{"use strict";Object.defineProperty(Vve,"__esModule",{value:!0});Vve.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(e,t){e.push("TS.QUERYINDEX"),e.pushVariadic(t)},transformReply:{2:void 0,3:void 0}}});var N1t=S(Ag=>{"use strict";var PYr=Ag&&Ag.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),LYr=Ag&&Ag.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),MYr=Ag&&Ag.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&PYr(t,e,r);return LYr(t,e),t};Object.defineProperty(Ag,"__esModule",{value:!0});var jve=MYr(Yh());Ag.default={IS_READ_ONLY:jve.default.IS_READ_ONLY,parseCommand(...e){e[0].push("TS.REVRANGE"),(0,jve.transformRangeArguments)(...e)},transformReply:jve.default.transformReply}});var oIt=S(Qh=>{"use strict";var kYr=Qh&&Qh.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),BYr=Qh&&Qh.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&kYr(t,e,r)},Wn=Qh&&Qh.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Qh,"__esModule",{value:!0});var O1t=Wn(Ybt()),D1t=Wn(Qbt()),P1t=Wn(Wbt()),L1t=Wn(Sve()),M1t=Wn(Jbt()),k1t=Wn(e1t()),B1t=Wn(t1t()),U1t=Wn(r1t()),F1t=Wn(Tve()),$1t=Wn(n1t()),q1t=Wn(wve()),H1t=Wn(s1t()),V1t=Wn(l1t()),j1t=Wn(Dve()),K1t=Wn(zh()),G1t=Wn(_C()),z1t=Wn(Mve()),Y1t=Wn(Gq()),Q1t=Wn(kve()),W1t=Wn(Bve()),X1t=Wn(Uve()),J1t=Wn(T1t()),Z1t=Wn(b1t()),eIt=Wn(I1t()),tIt=Wn(R1t()),rIt=Wn(C1t()),nIt=Wn(x1t()),sIt=Wn(w1t()),iIt=Wn(Yh()),aIt=Wn(N1t());BYr(Ka(),Qh);Qh.default={ADD:O1t.default,add:O1t.default,ALTER:D1t.default,alter:D1t.default,CREATE:P1t.default,create:P1t.default,CREATERULE:L1t.default,createRule:L1t.default,DECRBY:M1t.default,decrBy:M1t.default,DEL:k1t.default,del:k1t.default,DELETERULE:B1t.default,deleteRule:B1t.default,GET:U1t.default,get:U1t.default,INCRBY:F1t.default,incrBy:F1t.default,INFO_DEBUG:$1t.default,infoDebug:$1t.default,INFO:q1t.default,info:q1t.default,MADD:H1t.default,mAdd:H1t.default,MGET_SELECTED_LABELS:V1t.default,mGetSelectedLabels:V1t.default,MGET_WITHLABELS:j1t.default,mGetWithLabels:j1t.default,MGET:K1t.default,mGet:K1t.default,MRANGE_GROUPBY:G1t.default,mRangeGroupBy:G1t.default,MRANGE_SELECTED_LABELS_GROUPBY:z1t.default,mRangeSelectedLabelsGroupBy:z1t.default,MRANGE_SELECTED_LABELS:Y1t.default,mRangeSelectedLabels:Y1t.default,MRANGE_WITHLABELS_GROUPBY:Q1t.default,mRangeWithLabelsGroupBy:Q1t.default,MRANGE_WITHLABELS:W1t.default,mRangeWithLabels:W1t.default,MRANGE:X1t.default,mRange:X1t.default,MREVRANGE_GROUPBY:J1t.default,mRevRangeGroupBy:J1t.default,MREVRANGE_SELECTED_LABELS_GROUPBY:Z1t.default,mRevRangeSelectedLabelsGroupBy:Z1t.default,MREVRANGE_SELECTED_LABELS:eIt.default,mRevRangeSelectedLabels:eIt.default,MREVRANGE_WITHLABELS_GROUPBY:tIt.default,mRevRangeWithLabelsGroupBy:tIt.default,MREVRANGE_WITHLABELS:rIt.default,mRevRangeWithLabels:rIt.default,MREVRANGE:nIt.default,mRevRange:nIt.default,QUERYINDEX:sIt.default,queryIndex:sIt.default,RANGE:iIt.default,range:iIt.default,REVRANGE:aIt.default,revRange:aIt.default}});var Gve=S(Zo=>{"use strict";var UYr=Zo&&Zo.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Zo,"__esModule",{value:!0});Zo.TIME_SERIES_REDUCERS=Zo.TIME_SERIES_BUCKET_TIMESTAMP=Zo.TIME_SERIES_AGGREGATION_TYPE=Zo.TIME_SERIES_DUPLICATE_POLICIES=Zo.TIME_SERIES_ENCODING=Zo.default=void 0;var Kve=oIt();Object.defineProperty(Zo,"default",{enumerable:!0,get:function(){return UYr(Kve).default}});Object.defineProperty(Zo,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return Kve.TIME_SERIES_ENCODING}});Object.defineProperty(Zo,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return Kve.TIME_SERIES_DUPLICATE_POLICIES}});var FYr=Sve();Object.defineProperty(Zo,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return FYr.TIME_SERIES_AGGREGATION_TYPE}});var $Yr=Yh();Object.defineProperty(Zo,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return $Yr.TIME_SERIES_BUCKET_TIMESTAMP}});var qYr=_C();Object.defineProperty(Zo,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return qYr.TIME_SERIES_REDUCERS}})});var cIt=S(Gi=>{"use strict";var HYr=Gi&&Gi.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),JM=Gi&&Gi.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&HYr(t,e,r)},Xq=Gi&&Gi.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Gi,"__esModule",{value:!0});Gi.createSentinel=Gi.createCluster=Gi.createClientPool=Gi.createClient=void 0;var Jq=yM(),VYr=Xq(hye()),jYr=Xq(Fye()),KYr=Xq(_ve()),GYr=Xq(Gve());JM(yM(),Gi);JM(hye(),Gi);JM(Fye(),Gi);JM(_ve(),Gi);JM(Gve(),Gi);var Zq={...VYr.default,json:jYr.default,ft:KYr.default,ts:GYr.default};function zYr(e){return(0,Jq.createClient)({...e,modules:{...Zq,...e?.modules}})}Gi.createClient=zYr;function YYr(e,t){return(0,Jq.createClientPool)({...e,modules:{...Zq,...e?.modules}},t)}Gi.createClientPool=YYr;function QYr(e){return(0,Jq.createCluster)({...e,modules:{...Zq,...e?.modules}})}Gi.createCluster=QYr;function WYr(e){return(0,Jq.createSentinel)({...e,modules:{...Zq,...e?.modules}})}Gi.createSentinel=WYr});var tH={};kt(tH,{closeLocalRedisConnection:()=>eQr,getLocalRedisCaches:()=>JYr,getLocalRedisKey:()=>uIt,judgeLocalRedisValid:()=>ZYr,setLocalRedisKey:()=>eH,setLocalRedisKeyWithExpiry:()=>XYr,updateLocalRedisCaches:()=>ZM});async function EC(){if(xi)return xi;let e=F.localRedisUrl;try{R("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:t}=await Promise.resolve().then(()=>Ne(cIt(),1));return xi=t({url:e,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),xi.on("error",r=>{R("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),F.localRedisValid=!1}),xi.on("connect",()=>{R("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await xi.connect(),F.localRedisValid=!0,R("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),xi}catch(t){return R("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",t.message),F.localRedisValid=!1,null}}async function yC(){if(!xi)return!1;try{return await xi.ping()==="PONG"}catch(e){return R("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),F.localRedisValid=!1,!1}}async function uIt(e){try{if(await yC()||await EC(),!xi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await xi.get(e)}catch(t){return R("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",t.message),null}}async function eH(e,t){let r=PR(e,t),n=hs(r);if(F.lastHashes[e]===n)return R("info",`[Utils] [Local-Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await yC()||await EC(),!xi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await xi.set(e,r);return F.lastHashes[e]=n,R("info",`[Utils] [Local-Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return R("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function XYr(e,t,r){let n=PR(e,t),s=hs(n);if(F.lastHashes[e]===s)return R("info",`[Utils] [Local-Redis] \u952E ${e} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await yC()||await EC(),!xi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await xi.setEx(e,r,n);return F.lastHashes[e]=s,R("info",`[Utils] [Local-Redis] \u952E ${e} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return R("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function JYr(){if(!F.localCacheInitialized)try{if(R("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await yC()||await EC(),!xi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],t=await Promise.all(e.map(n=>uIt(n)));F.animes=t[0]?JSON.parse(t[0]):F.animes,F.episodeIds=t[1]?JSON.parse(t[1]):F.episodeIds,F.episodeNum=t[2]?JSON.parse(t[2]):F.episodeNum,F.reqRecords=t[3]?JSON.parse(t[3]):F.reqRecords;let r=t[4]?JSON.parse(t[4]):null;r&&typeof r=="object"&&(F.lastSelectMap=new Map(Object.entries(r)),R("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${F.lastSelectMap.size} entries`)),F.todayReqNum=t[5]?parseInt(t[5],10):F.todayReqNum,F.lastHashes.animes=hs(JSON.stringify(F.animes)),F.lastHashes.episodeIds=hs(JSON.stringify(F.episodeIds)),F.lastHashes.episodeNum=hs(JSON.stringify(F.episodeNum)),F.lastHashes.reqRecords=hs(JSON.stringify(F.reqRecords)),F.lastHashes.lastSelectMap=hs(JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.lastHashes.todayReqNum=hs(JSON.stringify(F.todayReqNum)),F.localCacheInitialized=!0,R("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(e){R("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${e.message}`,e.stack),F.localCacheInitialized=!0}}async function ZM(){try{if(R("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await yC()||await EC(),!xi)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let e=[],t=[{key:"animes",value:F.animes},{key:"episodeIds",value:F.episodeIds},{key:"episodeNum",value:F.episodeNum},{key:"reqRecords",value:F.reqRecords},{key:"lastSelectMap",value:F.lastSelectMap},{key:"todayReqNum",value:F.todayReqNum}];for(let{key:r,value:n}of t){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=hs(s);i!==F.lastHashes[r]&&e.push({key:r,value:n,hash:i})}if(e.length>0){R("info",`[Utils] [Local-Redis] Updating ${e.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let r=e.map(async({key:a,value:o})=>eH(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,R("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{F.lastHashes[a]=o}),R("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):R("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else R("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(e){R("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${e.message}`,e.stack),R("error",`[Utils] [Local-Redis] Error details - Name: ${e.name}, Cause: ${e.cause?e.cause.message:"N/A"}`)}}async function ZYr(e){if(!F.localRedisValid&&F.localRedisUrl&&e!=="/favicon.ico"&&e!=="/robots.txt")try{await yC()||await EC(),xi&&await xi.ping()==="PONG"&&(F.localRedisValid=!0)}catch(t){R("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),F.localRedisValid=!1}}async function eQr(){if(xi)try{await xi.quit(),xi=null,F.localRedisValid=!1,R("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(e){R("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",e.message)}}var xi,ek=ie(()=>{Wt();Kt();oa();xi=null});async function tk(e,t={}){let n=`https://api.tmdb.org/3/${e}`,s=F.makeProxyUrl(n);try{let i=await Me(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:t.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return R("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function nH(e,t="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${t}?api_key=${F.tmdbApiKey}&query=${encodeURIComponent(e)}&language=zh-CN&page=${n}`;return await tk(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${t}?api_key=${F.tmdbApiKey}&query=${encodeURIComponent(e)}&language=zh-CN&page=${o}`,u=await tk(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return R("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function tQr(e,t,r={}){let n=`${e}/${t}?api_key=${F.tmdbApiKey}&language=ja-JP`;return await tk(n,r)}async function dIt(e,t,r={}){let n=`${e}/${t}/external_ids?api_key=${F.tmdbApiKey}`;return await tk(n,r)}async function rQr(e,t,r={}){let n=`${e}/${t}/alternative_titles?api_key=${F.tmdbApiKey}`;return await tk(n,r)}function nQr(e,t,r=""){let n=e?.data?.results||e?.data?.titles||[];if(!n.length)return null;let s=(r||"").toLowerCase().trim(),i=o=>o.title||o.name||"",a=[o=>s&&i(o).toLowerCase().trim()===s,...["CN","TW","HK","SG"].map(o=>c=>(c.iso_3166_1||c.iso_639_1)===o&&!Lm(i(c))),o=>!Lm(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return R("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function sQr(e,t,r=""){let n=e.name||e.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(Lm(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;R("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=e.media_type||(e.name?"tv":"movie");try{if(t&&t.aborted)throw new DOMException("Aborted","AbortError");let a=await rQr(i,e.id,{signal:t});if(t&&t.aborted)throw new DOMException("Aborted","AbortError");let o=nQr(a,i,r);return o?(R("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(R("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return R("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function vC(e,t=null,r="Unknown"){let n=mIt(e);if(n!==e&&R("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${e}" -> "${n}"`),F.useBangumiData){let o=await Xf(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return R("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!F.tmdbApiKey)return R("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=rH.get(n);if(s)R("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=w=>{let D=w.genre_ids||[],M=w.genres||[],L=D.length>0?D:M.map($=>$.id),U=w.original_language||"";return L.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:U==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${U}, genres: ${L.join(",")})`}},d=(w,D)=>{let M=oe=>oe.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),L=M(w),U=M(D);if(L===U)return 1;let G=L.length=U.length?L:U;if($.includes(G)&&G.length>0)return .6+G.length/$.length*.3;let K=w.length>D.length?w:D,ee=w.length>D.length?D:w;if(K.length===0)return 1;let z=(oe,le)=>{oe=oe.toLowerCase(),le=le.toLowerCase();let te=[];for(let Q=0;Q<=oe.length;Q++){let Z=Q;for(let de=0;de<=le.length;de++)if(Q===0)te[de]=de;else if(de>0){let B=te[de-1];oe.charAt(Q-1)!==le.charAt(de-1)&&(B=Math.min(Math.min(B,Z),te[de])+1),te[de-1]=Z,Z=B}Q>0&&(te[le.length]=Z)}return te[le.length]};return(K.length-z(K,ee))/K.length};if(R("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await nH(n,"multi",{signal:u});if(!f||!f.data)return R("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let h=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!h.results||h.results.length===0)return R("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let p=[],m=[];for(let w of h.results){let D=l(w);if(D.isValid)p.push(w);else{let M=w.name||w.title||"\u672A\u77E5";m.push(`${M}(${D.reason})`)}}if(p.length===0)return R("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;R("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${p.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${m.length} \u4E2A\u65E0\u5173\u6761\u76EE${m.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+m.join(", "):""}`);let g=null,_=-1,y=null,A=0,E=5,v=!1;for(let w of p){let D=w.name||w.title||"";if(!D)continue;let M=d(n,D),L=w.original_name||w.original_title||"",U=L?d(n,L):0,G=Math.max(M,U);if(G===1&&!v){v=!0,R("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${D}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),G>_&&(_=G,g=w,y=D);continue}let $,K,ee=D.toLowerCase().trim()===n.toLowerCase().trim();if(v||ee)$=D,K=G,v&&ee?R("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${D}" - \u76F8\u4F3C\u5EA6: ${(K*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):R("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${D}" - \u76F8\u4F3C\u5EA6: ${(K*100).toFixed(2)}%`);else{if(A_&&(_=K,g=w,y=$)}if(!g||_<.4)return R("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${g?(_*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;R("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${y}, \u76F8\u4F3C\u5EA6: ${(_*100).toFixed(2)}%`);let I=g.media_type||(g.name?"tv":"movie"),T=await tQr(I,g.id,{signal:u}),x;if(!T||!T.data)x=g.name||g.title,R("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${x}`);else{let w=typeof T.data=="string"?JSON.parse(T.data):T.data;x=w.original_name||w.original_title||w.name||w.title,R("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${x}`)}return{title:x,cnAlias:y}}catch(u){return u.name==="AbortError"?(R("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(R("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{rH.delete(n)})},rH.set(n,s),R("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{rH.get(n)===s&&(s.refCount--,s.refCount<=0&&(R("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(t){if(t.aborted)return i(),R("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;t.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{t&&(a=()=>u(new DOMException("Aborted","AbortError")),t.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(R("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(R("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{t&&(t.removeEventListener("abort",i),a&&t.removeEventListener("abort",a))}}async function fIt(e,t=null,r=null){if(!Lm(e))return e;if(F.useBangumiData){let i=mIt(e),a=Xf(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!Lm(u))||o.titles[1];if(c&&!Lm(c))return R("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${e} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=t!=null,s=n?"tv":"movie";try{let i=await nH(e,s);if(!i.data.results||i.data.results.length===0)return R("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),e;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!Lm(l)})||i.data.results[0],c=n?o.name:o.title;return c?(R("info",`\u539F\u6807\u9898: ${e} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):e}catch(i){return R("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),e}}function pIt(e){let t=e.match(hIt);return t?t.index:e.length}function mIt(e){let t=pIt(e);return t{let a=i.org_title||i.title||"";return a.substring(0,pIt(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c1&&R("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of e){let a=i.title||"";if(!(i.isLocalPriority||a.includes(t)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${t}${o.match(/^[~~::]/)?"":" "}${o}`:t,R("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(lIt);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&hIt.test(c)){let l=u.trim().match(lIt),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${t}${d}`,R("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=t+u,R("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else Lm(a)?(i._displayTitle=t,R("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):R("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}var rH,hIt,lIt,TC=ie(()=>{Wt();Kt();Hr();$u();Vm();rH=new Map;hIt=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|劇場版|续[篇集]|外传)(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,lIt=/[ ::~~]/});function Ut(e,...t){typeof t[0]=="string"&&t[0].includes("[Merge-Check]")&&!iQr||R(e,...t)}function RIt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function zve(e){if(typeof structuredClone=="function")try{return structuredClone(e)}catch{}return JSON.parse(JSON.stringify(e))}function Ku(e){if(!e)return"Unspecified";let t=e.toLowerCase();return Be.Lang.CN.test(t)?"CN":Be.Lang.JP.test(t)?"JP":"Unspecified"}function CIt(e){if(!e)return"";let t=e,r=t.toUpperCase();for(let n of oQr){if(!n.seriesKeywords.every(a=>r.includes(a.toUpperCase())))continue;let i=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let c=new RegExp(RIt(o),"gi");c.test(t)&&(t=t.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(t+=` ${n.defaultStandard} `)}return t}function oE(e){if(!e)return"";let t=Sr(e);return t=t.replace(Be.Clean.NA_TAG,""),t=t.replace(Be.Season.PART_NORM,"part $1"),t=t.replace(Be.Season.PART_NORM_2,"part $1"),t=t.replace(Be.Season.FINAL,"\u6700\u7EC8\u5B63"),t=t.replace(Be.Season.NORM,"\u7B2C$1\u5B63"),t=t.replace(Be.Season.CN,(r,n)=>`\u7B2C${Oh(n)}\u5B63`),t=t.replace(Be.Season.ROMAN,(r,n,s,i)=>`${n}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[s]}\u5B63${i}`),t=t.replace(Be.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),t=t.replace(Be.Lang.JP_DUB_VER,""),t=t.replace(Be.Clean.SOURCE_TAG,""),t=t.replace(Be.Clean.REGION_LIMIT,""),t=t.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),t=t.replace(Be.Clean.PUNCTUATION," "),t=t.replace(/{{DOT}}/g,"."),t.replace(Be.Clean.WHITESPACE," ").toLowerCase().trim()}function Ud(e){if(!e)return"";let t=CIt(e);t=Sr(t);let r=t.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(t=t.replace(r[0],n+" "))}return t=t.replace(Be.Clean.SOURCE_TAG,""),t=t.replace(Be.Clean.FROM_SUFFIX,""),t=t.replace(Be.Clean.NA_TAG,""),t=t.replace(Be.Clean.PARENTHESES_CONTENT,""),t=t.replace(Be.Season.INFO_STRONG,""),t=t.replace(Be.Season.PART_INFO_STRONG,""),t=t.replace(Be.Clean.MOVIE_KEYWORDS,""),t=t.replace(Be.Lang.KEYWORDS_STRONG,""),t=t.replace(Be.Clean.LONE_VER_CHAR,""),t=t.replace(Be.Clean.NON_ALPHANUM_CN,""),t.toLowerCase()}function bC(e){if(!e)return"";let t=Sr(e);return t=t.replace(Be.Episode.SUFFIX_DIGIT,""),t=t.replace(Be.Episode.FILE_NOISE,""),t=t.replace(Be.Episode.SEASON_PREFIX," "),t=t.replace(Be.Episode.CLEAN_SMART," "),t=t.replace(Be.Clean.SOURCE_TAG,""),t=t.replace(Be.Lang.CN_STD,"\u4E2D\u6587"),t=t.replace(Be.Lang.JP_STD,"\u65E5\u6587"),t=t.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),t=t.replace(Be.Episode.PUNCTUATION," "),t=t.replace(/{{DOT}}/g,"."),t.replace(Be.Clean.WHITESPACE," ").toLowerCase().trim()}function gIt(e){return e?e.replace(Be.Clean.PARENTHESES_CONTENT,"").trim():""}function Qve(e){if(!e)return"";let t=String(e).split(Fd)[0].trim();if(t.startsWith("//"))return"https:"+t;let r=t.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?t:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return t}function _It(e){if(!e||e==="N/A")return{year:null,month:null};let t=new Date(e),r=t.getTime();if(isNaN(r))return{year:null,month:null};let n=t.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:t.getMonth()+1}}function cQr(e,t){let r=e.length,n=t.length;if(r===0)return n;if(n===0)return r;let s=new Array(n+1),i=new Array(n+1);for(let a=0;a<=n;a++)s[a]=a;for(let a=1;a<=r;a++){i[0]=a;let o=e.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===t.charCodeAt(u-1)?0:1;i[u]=Math.min(i[u-1]+1,s[u]+1,s[u-1]+l)}let c=s;s=i,i=c}return s[n]}function uQr(e,t){if(!e||!t)return 0;let r=new Set(e.replace(Be.Clean.WHITESPACE,"")),n=new Set(t.replace(Be.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s.5)return .8+E*.2}let c=cQr(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(Be.Clean.WHITESPACE,"")),d=new Set(n.replace(Be.Clean.WHITESPACE,"")),f=l.size,h=d.size;if(f===0||h===0)return 0;let p=0,[m,g]=f2&&(y=p/A,y>.6&&A/Math.max(f,h)<.6&&(y-=.25)),Math.max(u,_,y)}function Gu(e,t="",r=[]){let n=new Set,s=oE(t||""),i=l=>{let d=oE(CIt(l)),f=d.replace(Be.Season.PART_ANY,""),h=f.match(Be.Season.CN_STRUCTURE);if(h){let g={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};g[h[1]]&&n.add(g[h[1]])}if(aQr.forEach(g=>{let _=(g.useCleaned?f:d).match(g.regex);_&&n.add(g.prefix?`${g.prefix}${parseInt(_[1])}`:g.val)}),!aH.some(g=>{if(g.regex.test(f))return n.add(g.val),!0})){let g=f.match(Be.Season.SUFFIX_AMBIGUOUS);if(g){n.add("AMBIGUOUS");let _={II:"S2",III:"S3",IV:"S4"},y=g[1].toUpperCase();_[y]&&n.add(_[y])}}Be.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let m={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[g,_]of Object.entries(m))d.includes(`\u7B2C${g}\u5B63`)&&n.add(`S${_}`)};[e,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function Io(e,t="",r=[]){let n=Gu(e,t,r),s=null;for(let i of n)if(i.startsWith("S")){let a=parseInt(i.substring(1));isNaN(a)||(s===null||a>s)&&(s=a)}return s}function VS(e,t){let r=(e+" "+(t||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function IC(e,t,r){if(r&&Be.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(e+" "+(t||"")).toLowerCase();return Be.Category.ANIME_KW.test(n)?"ANIME":Be.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function lQr(e,t,r=!0){if(!e||!t||Ud(e)===Ud(t))return!1;let n=d=>{if(!d)return"";let f=Sr(d);return f=f.replace(Be.Clean.META_SUFFIX,"").replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").replace(Be.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(e),i=n(t);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let p of f){let m=d.indexOf(p);if(m!==-1)return d.substring(m).trim()}let h=d.split(Be.Clean.WHITESPACE);return h.length>=2?h.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length1||f.length>2)return!0}}return!!(o&&c&&uQr(o,c)<.2)}function xIt(e,t,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?Sr(c).replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim():"",a=i(e),o=i(t);if(Be.Clean.SPACE_STRUCTURE.test(a)&&Be.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(Be.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(Be.Season.PURE_PART.test(u)||Be.Season.PURE_PART.test(l))}return!1}function dQr(e,t,r,n,s,i,a="",o=""){let c=IC(e,r,a),u=IC(t,n,o);if(c==="REAL"&&u==="ANIME"||c==="ANIME"&&u==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),h=(n||"").includes("2D"),p=!l&&!f,m=!d&&!h;if(!p&&m?/3[dD]/.test(t)?d=!0:/2[dD]/.test(t)&&(h=!0):!m&&p&&(/3[dD]/.test(e)?l=!0:/2[dD]/.test(e)&&(f=!0)),(l||f)&&(d||h)&&l!==d)return!0;let y=VS(e,r),A=VS(t,n);return!y||!A||y===A||xIt(e,t,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function fQr(e,t,r,n,s=[],i=[]){let a=Gu(e,r,s),o=Gu(t,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(h=>h.startsWith("S")&&parseInt(h.substring(1))>=2),u=f=>f.has("SEQUEL"),l=f=>f.has("AMBIGUOUS"),d=f=>f.has("S1");if(a.size>0&&o.size>0){if(l(a)&&d(o)||l(o)&&d(a))return!0;if(l(a)&&(c(o)||u(o))||l(o)&&(c(a)||u(a))||c(a)&&u(o)||c(o)&&u(a))return!1;for(let f of a)if(f.startsWith("S")){let h=o.has(f),p=Array.from(o).some(m=>m.startsWith("S"));if(!h&&p)return!0}return!1}return a.size!==o.size?!xIt(e,t,r,n):!1}function hQr(e,t,r,n,s=[],i=[]){let a=Gu(e,r,s),o=Gu(t,n,i),c=Array.from(a).filter(l=>l.startsWith("S")),u=Array.from(o).filter(l=>l.startsWith("S"));return c.length>0&&u.length>0?c.some(l=>u.includes(l)):!1}function pQr(e,t,r=!1){if(!e.year||!t.year)return .05;let n=e.year-t.year;if(n===0){if(e.month&&t.month){let i=Math.abs(e.month-t.month);return i>2?0:i===0?.2:.1}return .1}let s=Math.abs(n);return r&&s<=10?0:s>1?-1:0}function mQr(e,t,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(t,r);return c>0&&e/c>.5?!0:!(e<2)}let a=Math.max(t,r);if(a===0)return!1;let o=e/a;return!(a>5&&o<.18)}function sH(e){if(!e)return null;let t=e.toLowerCase();return t.includes("opening")?"opening":t.includes("ending")?"ending":t.includes("interview")?"interview":t.includes("bloopers")?"Bloopers":null}function zc(e,t=""){let r=!1,n=t;if(e){let p=e.match(Be.Episode.DANDAN_TAG);p&&(n=p[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&e){let p=e.replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();(Be.Episode.SPECIAL_START.test(p)||Be.Episode.DANDAN_IGNORE.test(p))&&(r=!0)}let i=oE(e||""),a=Be.Episode.MOVIE_CHECK.test(i),o=Be.Episode.PV_CHECK.test(i),c=null,u=null,l=sH(e),d=o||r||!!l||Be.Episode.SPECIAL_CHECK.test(i),f=i.match(Be.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let h=i.match(Be.Episode.NUM_STRATEGY_A);if(h)c=parseFloat(h[2]);else{let p=i.match(Be.Episode.NUM_STRATEGY_B);if(p)c=parseFloat(p[1]);else{let m=i.match(Be.Episode.NUM_STRATEGY_C);m&&(c=parseFloat(m[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Wve(e,t,r=""){if(!e)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!t||s)return e.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(e.forEach((o,c)=>{let u=o.title||o.name||"";t.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";Ut("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}function iH(e,t,r){if(!e||e.length<2||!t)return"";let n=l=>{if(!l||!r)return l||"";try{let d=AIt.get(r);if(!d){let f=RIt(r);d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),AIt.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(t),i=s.match(Be.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=e.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let h=0;hf.length&&(f=m)}return f},c=o(a[0],a[1]);if(c.length<2)return"";for(let l=2;l=2&&s.startsWith(l)?l:""}return u.length>=2&&(Be.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(Ut("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function EIt(e,t){let r=new Set;if(!e)return r;let n=-1;for(let s=0;s{let a=s.title||s.name||"",o=zc(a,t);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i{let c=o.title||o.name||"",u=zc(c,r);u.num!==null&&t.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(e.length=0,e.push(...s,...i),Ut("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(t).join(",")}) \u5230\u672B\u5C3E`))}function vIt(e,t,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(e.length===0||t.length===0)return 0;let c=iH(e,a,s),u=iH(t,o,i),l=(I,T)=>I?T&&I.includes(T)?I.replace(T,""):I:"",d=(I,T,x,w)=>{let D=I.link.title||"",M=l(D,w),L=zc(M,T),U=Ku(M),G=U!=="Unspecified"?U:x,$=G==="Unspecified"&&/^(dandan|animeko)$/i.test(T)?"JP":G,K=bC(M),ee=$==="CN"?M.replace(Be.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:L,effLang:$,specialType:sH(M),cleanEpText:K,strictCnCore:ee}},f=e.map(I=>d(I,s,r,c)),h=t.map(I=>d(I,i,n,u)),p=null,m=null;f.forEach(({info:I})=>{I.num!==null&&!I.isSpecial&&I.num%1===0&&(p=p===null?I.num:Math.min(p,I.num))}),h.forEach(({info:I})=>{I.num!==null&&!I.isSpecial&&I.num%1===0&&(m=m===null?I.num:Math.min(m,I.num))});let g=p!==null&&m!==null?p-m:null,_=15,y=g!==null?-g:0,A=Math.max(Math.min(-_,y-_),-Math.max(e.length,t.length)),E=Math.min(Math.max(_,y+_),Math.max(e.length,t.length)),v=0,b=-9999;for(let I=A;I<=E;I++){let T=0,x=0,w=0,D=new Map,M=!1,L=null;for(let U=0;U=e.length)continue;let $=f[G],K=h[U],ee=$.info,z=K.info,oe=0;ee.isMovie!==z.isMovie&&(oe+=Ga.EP_ALIGN.MOVIE_TYPE_MISMATCH),(ee.isStrictSpecial&&!z.isSpecial||z.isStrictSpecial&&!ee.isSpecial)&&(oe+=Ga.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let le=$.effLang==="Unspecified"?"JP":$.effLang,te=K.effLang==="Unspecified"?"JP":K.effLang;le===te?oe+=Ga.EP_ALIGN.LANG_MATCH:oe+=Ga.EP_ALIGN.LANG_MISMATCH,ee.season!==null&&z.season!==null&&ee.season!==z.season&&(oe+=Ga.EP_ALIGN.SEASON_NUM_MISMATCH),($.specialType||K.specialType)&&($.specialType!==K.specialType?oe+=Ga.EP_ALIGN.SPECIAL_TYPE_MISMATCH:oe+=Ga.EP_ALIGN.SPECIAL_TYPE_MATCH),ee.isSpecial===z.isSpecial&&(oe+=Ga.EP_ALIGN.IS_SPECIAL_MATCH),g!==null&&!ee.isSpecial&&!z.isSpecial&&ee.num-z.num===g&&(oe+=Ga.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let Q=0;$.effLang==="CN"&&K.effLang==="CN"&&$.strictCnCore&&K.strictCnCore&&($.strictCnCore.includes(K.strictCnCore)||K.strictCnCore.includes($.strictCnCore))?Q=ee.num!==null&&z.num!==null&&ee.num===z.num?Ga.EP_ALIGN.CN_STRICT_MATCH:Ga.EP_ALIGN.CN_STRICT_MISMATCH:Q=aE($.cleanEpText,K.cleanEpText),oe+=Q,x+=Q,ee.num!==null&&z.num!==null&&ee.num===z.num&&(oe+=Ga.EP_ALIGN.NUMERIC_MATCH);let Z=1;if(ee.num!==null&&!ee.isSpecial&&(L!==null&&ee.num-L>1?Z=.1:L=ee.num),oe*=Z,Q*=Z,x+=Q,T+=oe,ee.num!==null&&z.num!==null){let de=(z.num-ee.num).toFixed(4);D.set(de,(D.get(de)||0)+Z)}w++}if(w>0){let U=T/w,G=0;for(let z of D.values())G=Math.max(G,z);let $=G/w,K=x/w;$>.6&&(M||K>.33)&&(U+=Ga.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),U+=Math.min(w*.15,1.5);let ee=D.get("0.0000")||0;ee>0&&(U+=Ga.EP_ALIGN.ZERO_DIFF_BONUS_BASE,U+=ee*Ga.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT),U>b&&(b=U,v=I)}}return b>.3?v:0}function gQr(e,t,r){let n=new Map,s=[];for(let o of e){if(r&&r.has(o.animeId))continue;let c=F.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(IC(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(VS(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=Io(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let h=Wve(c.links,t,c.source).filter(p=>{let m=p.link.title||p.link.name||"",_=oE(m).replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(Be.Episode.SPECIAL_CHECK.test(_)||Be.Episode.DANDAN_IGNORE.test(_))||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(_)||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(m))}).length;if(h>0){n.has(d)||n.set(d,new Map);let p=n.get(d);p.has(h)||p.set(h,[]),p.get(h).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${h}\u96C6 ("${c.animeTitle}")`)}else s.push(` [\u5FFD\u7565] [${c.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let i=new Map,a=[];for(let[o,c]of n.entries()){let u=0,l=0,d=[];for(let[h,p]of c.entries()){let m=p.length;m>l?(l=m,u=h,d=p):m===l&&h`${h}\u96C6(x${p.length})[${p.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&Ut("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: +${s.join(` `)} - => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),s}function bgt(e){if(typeof structuredClone=="function")try{return structuredClone(e)}catch{}return JSON.parse(JSON.stringify(e))}async function L0e(e){let{pAnime:t,availableSecondaries:r,curAnimes:n,groupConsumedIds:i,globalConsumedIds:s,generatedSignatures:a,epFilter:o,groupFingerprint:u,currentPrimarySource:c,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:h}=e;if(f.has(t.animeId)&&i.has(t.animeId))return Pt("info",`${l} \u8DF3\u8FC7: [${c}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let m=L.animes.find(P=>String(P.animeId)===String(t.animeId));if(!m?.links)return Pt("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${t.animeTitle}`),null;let y=t.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),g=bgt(m),v=[],A=[t.animeId],_=!1,E=Rc(t.animeTitle),S=S8(g.links,t.animeTitle,c),C=(P,$)=>P?$&&P.includes($)?P.replace($,""):P:"",I=f.has(t.animeId),N=Cl(t.animeTitle),T=n.filter(P=>Cl(P.animeTitle)===N),k=FLr(T,o,f);if(k.size>0){let P=Array.from(k.entries()).map(([$,Q])=>`S${$}=${Q}`).join(", ");(I||r.some($=>n.some(Q=>Q.source===$&&f.has(Q.animeId))))&&Pt("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${P} }`)}let O=[];for(let P of r){let $=n.filter(j=>{if(j.source!==P)return!1;if(I)return!0;let z=i.has(j.animeId),X=p&&p.has(j.animeId);return!(z&&!X)});if(d&&($=$.filter(j=>Rc(j.animeTitle)===d)),$.length>1&&$.sort((j,z)=>{let X=Rc(j.animeTitle)==="CN",K=Rc(z.animeTitle)==="CN";return X===K?0:X?1:-1}),$.length===0)continue;let Q=MLr(t,$,f);O.push(...Q)}if(O.length>0){if(O.length>1&&(I||O.some(P=>f.has(P.animeId)))){O.sort(($,Q)=>{let j=Nc($.animeTitle,$.typeDescription)||1,z=Nc(Q.animeTitle,Q.typeDescription)||1;if(j!==z)return j-z;let X=r.indexOf($.source),K=r.indexOf(Q.source);return X-K});let P=O.map($=>`[${$.source}]S${Nc($.animeTitle,$.typeDescription)||1}`);Pt("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${P.join(" -> ")}`)}for(let P of O){let $=P.source;if(!I&&!(p&&p.has(P.animeId))&&i.has(P.animeId))continue;let Q=L.animes.find(Te=>String(Te.animeId)===String(P.animeId));if(!Q?.links)continue;let j=bgt(Q),z=[],X=new Set,K=[],Z=[],Y=j.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),ie=Agt(g.links,c),ue=Agt(j.links,$),he=new Set([...ue].filter(Te=>!ie.has(Te))),ye=new Set([...ie].filter(Te=>!ue.has(Te)));ye.size>0&&vgt(g.links,ye,c,`\u4E3B\u6E90:${c}`),he.size>0&&vgt(j.links,he,$,`\u526F\u6E90:${$}`);let q=j.links,B=B0e(g.links,o,c),ae=B0e(q,o,$),M=Rc(j.animeTitle),F=B,V=ae,H=0,G=0,J=f.has(P.animeId),ee=(Te,Ne,Ue)=>{let Me=0,Ge=Ne;if(Ue&&Ue>1){let Be=!1,It=Te?t.animeId:P.animeId;if(h&&h.has(It)){let Ze=h.get(It),$t=Ue-1;if(Ze[`S${$t}`]!==void 0){let Nt=Ze[`S${$t}`]+1;Nt>0&&Nt=Ne.length){let Nt=(Ue-1)*12;Nt Total ${Ne.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Ue} -> Index ${Nt})`),$t=Math.max(0,Nt-2))}if($t>0&&$tTe.isSpecial||Te.isStrictSpecial||Te.num!==null&&Te.num%1!==0,Ce=new Map;ae.forEach((Te,Ne)=>{let Ue=B[Ne+re];if(!Ue)return;let Me=Tc(C(Ue.link.title||Ue.link.name,S),c),Ge=Tc(C(Te.link.title||Te.link.name,de),$);if(Me.num!==null&&Ge.num!==null&&!Me.isSpecial&&!Ge.isSpecial){let Be=Me.num-Ge.num;Ce.set(Be,(Ce.get(Be)||0)+1)}});let $e=Ce.size>0?[...Ce.entries()].reduce((Te,Ne)=>Ne[1]>Te[1]?Ne:Te)[0]:null,We=B.reduce((Te,Ne,Ue)=>{let Me=Tc(C(Ne.link.title||Ne.link.name,S),c);return pe(Me)&&!Me.isPV&&Te.push(Ue),Te},[]),Ve=0;for(let Te=0;Te{let ft=Tc(C(St.link.title||St.link.name,S),c);return ft.num===Nt&&!pe(ft)}),Ne!==-1)Ze.relativeIndex=Ne;else{let St=-.5;for(let ft=B.length-1;ft>=0;ft--){let jo=Tc(C(B[ft].link.title||B[ft].link.name,S),c);if(jo.num!==null&&!jo.isSpecial&&jo.numSt&&(St=Ho,Nt=jo)}Nt===-1&&!It.isPV&&Ve=0&&Ne`\u3010${KE}${M0e}${Fn}\u3011`)}z.push({idx:Ze.relativeIndex,text:` [\u5339\u914D] ${ft} <-> ${Ge}`}),X.add(Ne),ce++,K.push({linkIndex:Nt,newUrl:od,newTitle:mc})}else z.push({idx:Ze.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${Ge}`}),Z.push(Ze)}for(let Te=0;Te (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(ce>0){let Te=f.has(t.animeId)||f.has(P.animeId);if(kLr(ce,B.length,ae.length,c,$,Te)){for(let Me of K){let Ge=g.links[Me.linkIndex];Ge.url=Me.newUrl,Ge.title=Me.newTitle}if(Pt("info",`${l} \u5173\u8054\u6210\u529F: [${c}] ${y} <-> [${$}] ${Y} (\u672C\u6B21\u5408\u5E76 ${ce} \u96C6)`),z.length>0&&(z.sort((Me,Ge)=>Me.idx-Ge.idx),Pt("info",`${l} [${$}] \u6620\u5C04\u8BE6\u60C5: -${z.map(Me=>Me.text).join(` -`)}`)),h&&(J||I)){let Me=-1;if(I&&!J){for(let Ge=0;GeMe&&(Me=It)}}if(Me!==-1){let Ge=Nc(j.animeTitle,j.typeDescription)||1;h.has(t.animeId)||h.set(t.animeId,{});let Be=h.get(t.animeId);ce>=3&&(Be[`S${Ge}`]=Me)}}else if(!I&&J){for(let Ge=0;GeMe&&(Me=It.originalIndex)}}if(Me!==-1){let Ge=Nc(t.animeTitle,t.typeDescription)||1;h.has(P.animeId)||h.set(P.animeId,{});let Be=h.get(P.animeId);ce>=3&&(Be[`S${Ge}`]=Me,Pt("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${P.animeId}]: S${Ge} -> MaxIndex ${Me}`))}}}f.has(P.animeId)?Pt("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${$}] \u4E3A\u5408\u96C6\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):$Lr(g,Z,$);let Ne=[],Ue=[];g.links.forEach(Me=>{let Ge=Me.title.replace(xe.Clean.SOURCE_TAG,"").trim();xe.Episode.SINK_TITLE_STRICT.test(Ge)?Ue.push(Me):Ne.push(Me)}),Ue.length>0&&(g.links=[...Ne,...Ue],Pt("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${Ue.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),_=!0,v.push($),A.push(P.animeId)}else Pt("info",`${l} \u5173\u8054\u53D6\u6D88: [${c}] ${y} <-> [${$}] ${Y} (\u5339\u914D\u7387\u8FC7\u4F4E: ${ce}/${Math.max(B.length,ae.length)})`)}}}if(_){let P=A.join("|");if(a.has(P))return Pt("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${P})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(P);for(let Q=1;Q{let s=L.animes.find(f=>String(f.animeId)===String(i.animeId))||i,a=zu(s.animeTitle,s.typeDescription);if(a.has("MOVIE")||a.has("OVA")||a.has("SP")||a.has("SEQUEL"))return;let o=ln(i.animeTitle||""),u=o.match(/^(?:【|\[)(.+?)(?:】|\])/);if(u){let f=u[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(f)||(o=o.replace(u[0],f+" "))}o=o.replace(/第([一二三四五六七八九十])季/g,(f,p)=>`\u7B2C${r[p]}\u5B63`);let c=o.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.META_SUFFIX,"").replace(xe.Lang.KEYWORDS_STRONG,"");if(w8.forEach(f=>c=c.replace(f.regex,"")),c=c.replace(xe.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:季|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!c)return;let l=eI(i.animeTitle,s.typeDescription,s.source),d=`${c}|${l}`;n.has(d)||n.set(d,[]),n.get(d).push(i)});for(let[i,s]of n.entries()){if(s.length<2)continue;let[a,o]=i.split("|"),u=s.map(f=>` - [${f.source}] ${f.animeTitle}`).join(` -`);Pt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${a}" [${o}] (\u5305\u542B ${s.length} \u4E2A\u6761\u76EE): -${u}`);let c=new Map,l=0;if(s.forEach(f=>{let p=L.animes.find(v=>String(v.animeId)===String(f.animeId))||f,h=zu(p.animeTitle,p.typeDescription),m=1;for(let v of h)if(v.startsWith("S")){let A=parseInt(v.substring(1));isNaN(A)||(m=A)}if(m===1){let v=h.has("SEQUEL")||xe.Season.SUFFIX_SEQUEL.test(p.animeTitle),A=h.has("AMBIGUOUS")||xe.Season.SUFFIX_AMBIGUOUS.test(p.animeTitle);(v||A)&&(m=2,Pt("info",`[Merge-Check] [Detail] [${p.source}] "${p.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}m>l&&(l=m);let y=0;p.links&&(/^(dandan|animeko)$/i.test(p.source)?y=p.links.filter((v,A)=>{let _=v.title||v.name||"",E=_.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();if(xe.Episode.SPECIAL_CHECK.test(E)||xe.Episode.DANDAN_IGNORE.test(E))return!1;let S=py(_);return!(xe.Episode.SPECIAL_CHECK.test(S)||xe.Episode.DANDAN_IGNORE.test(S)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(E)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(_))}).length:y=p.links.length),c.has(p.source)||c.set(p.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let g=c.get(p.source);g.seasonCounts[m]||(g.seasonCounts[m]=0),g.seasonCounts[m]=Math.max(g.seasonCounts[m],y),m>g.maxSeason&&(g.maxSeason=m),m===1&&g.s1Candidates.push({anime:p,originalCount:y})}),l<=1)continue;let d=Array.from(c.keys());for(let[f,p]of c.entries()){if(p.maxSeason>1)continue;let h=0,m=!1;for(let g of d){if(g===f)continue;let v=c.get(g);v.seasonCounts[1]&&(m=!0,v.seasonCounts[1]>h&&(h=v.seasonCounts[1]))}if(!m)continue;let y=h+Ip.COLLECTION_DIFF;p.s1Candidates.forEach(g=>{let v=h>0?g.originalCount/h:0;if(g.originalCount>y){if(v>Ip.COLLECTION_RATIO){Pt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${f}] ${g.anime.animeTitle} (Ratio too high: ${v.toFixed(2)} > ${Ip.COLLECTION_RATIO})`);return}t.add(g.anime.animeId),Pt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} > Thr:${y}, Ratio:${v.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else Pt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} <= Threshold:${y})`)})}}return t}async function Cgt(e,t=null){let r=L.mergeSourcePairs;if(!r||r.length===0)return;Pt("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u914D\u7F6E: ${JSON.stringify(r)}`);let n=L.episodeTitleFilter;if(n&&typeof n=="string")try{n=new RegExp(n,"i")}catch{n=null}let i=ULr(e),s=new Map,a=[],o=new Set,u=new Set,c=new Set;r.forEach(l=>{l.secondaries.length===0&&c.add(l.primary)});for(let l of r){if(l.secondaries.length===0)continue;let d=new Map,f=[l.primary,...l.secondaries];f.forEach((_,E)=>d.set(_,E));let p=f.join("&"),h=new Set,m=(_,E)=>{if(!_||_.length<2)return _;Pt("info",`[Merge-Check] [Sort] ${E} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${_[0].animeTitle}`),_.sort((C,I)=>{let N=d.get(C.source)??99,T=d.get(I.source)??99;if(N!==T)return N-T;let k=j=>{let z=zu(j.animeTitle,j.typeDescription);return z.has("MOVIE")||z.has("OVA")||z.has("SP")||jv(j.animeTitle,j.typeDescription)==="MOVIE"?2:1},O=k(C),P=k(I);if(O!==P)return O-P;let $=Nc(C.animeTitle,C.typeDescription)||1,Q=Nc(I.animeTitle,I.typeDescription)||1;return $-Q});let S=_.map(C=>{let I=Nc(C.animeTitle,C.typeDescription)||1,N=zu(C.animeTitle,C.typeDescription).has("MOVIE")||jv(C.animeTitle,C.typeDescription)==="MOVIE"?"Movie":`S${I}`;return`[P${d.get(C.source)??"?"}] [${N}] [${C.source}] ${C.animeTitle}`});return Pt("info",`[Merge-Check] [Sort] ${E} \u6267\u884C\u987A\u5E8F: - ${S.join(` - `)}`),_},y=[];f.forEach(_=>{e.filter(S=>S.source===_&&!h.has(S.animeId)&&Rc(S.animeTitle)==="CN").forEach(S=>y.push(S))});let g=!1;for(let _ of f)if(e.some(E=>E.source===_&&!h.has(E.animeId)&&Rc(E.animeTitle)==="CN")){g=!0;break}if(y.length>0&&g){Pt("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${y.length} \u4E2A CN \u8D44\u6E90\u3002`),m(y,"Phase 1");for(let _ of y){if(h.has(_.animeId))continue;let E=d.get(_.source),S=f.slice(E+1);if(S.length===0)continue;let C=await L0e({pAnime:_,availableSecondaries:S,curAnimes:e,groupConsumedIds:h,globalConsumedIds:u,generatedSignatures:o,epFilter:n,groupFingerprint:p,currentPrimarySource:_.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:i,collectionProgress:s});C&&(a.push(C),h.add(_.animeId),u.add(_.animeId))}}let v=[];for(let _=1;_C.source===E&&!h.has(C.animeId)&&Rc(C.animeTitle)==="CN").forEach(C=>v.push(C))}if(v.length>=2){Pt("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${v.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),m(v,"Phase 1.5");for(let _ of v){if(h.has(_.animeId))continue;let E=d.get(_.source),S=f.slice(E+1);if(S.length===0)continue;let C=await L0e({pAnime:_,availableSecondaries:S,curAnimes:e,groupConsumedIds:h,globalConsumedIds:u,generatedSignatures:o,epFilter:n,groupFingerprint:p,currentPrimarySource:_.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:i,collectionProgress:s});C&&(a.push(C),h.add(_.animeId),u.add(_.animeId))}}let A=[];if(f.forEach(_=>{e.filter(S=>S.source===_&&!h.has(S.animeId)).forEach(S=>A.push(S))}),A.length>0){Pt("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${A.length} \u4E2A\u8D44\u6E90\u3002`),m(A,"Phase 2");for(let _ of A){if(h.has(_.animeId))continue;let E=d.get(_.source),S=f.slice(E+1);if(S.length===0)continue;let C=zu(_.animeTitle,_.typeDescription),I=Array.from(C).some(k=>k.startsWith("P")),N=null;if(I){N=new Set;let k=Nc(_.animeTitle,_.typeDescription)||1;for(let O of u){let P=L.animes.find(j=>String(j.animeId)===String(O));if(!P||!S.includes(P.source))continue;let $=zu(P.animeTitle,P.typeDescription);if(Array.from($).some(j=>j.startsWith("P")))continue;let Q=Nc(P.animeTitle,P.typeDescription)||1;k===Q&&N.add(P.animeId)}}let T=await L0e({pAnime:_,availableSecondaries:S,curAnimes:e,groupConsumedIds:h,globalConsumedIds:u,generatedSignatures:o,epFilter:n,groupFingerprint:p,currentPrimarySource:_.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:i,allowReuseIds:N,collectionProgress:s});T&&(a.push(T),h.add(_.animeId),u.add(_.animeId))}}}if(a.length>0){for(let l of a)Bt(l,t);e.unshift(...a)}if(c.size>0)for(let l of e)u.has(l.animeId)&&c.has(l.source)&&u.delete(l.animeId);for(let l=e.length-1;l>=0;l--){let d=e[l];(d._isMerged||u.has(d.animeId))&&e.splice(l,1)}Pt("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${e.length}`)}function Tgt(e,t){let r=[...e||[],...t||[]],n=i=>{if(!i)return 0;if(i.t!==void 0&&i.t!==null)return Number(i.t);if(i.p&&typeof i.p=="string"){let s=parseFloat(i.p.split(",")[0]);return isNaN(s)?0:s}return 0};return r.sort((i,s)=>n(i)-n(s)),r}function Ngt(e,t,r,n=.8,i=1){let s=t.indexOf("dandan");if(s===-1||!e[s]?.length)return Pt("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),e;let a=e[s],o=a.length,u=new Map;return a.forEach(c=>{let l=wgt(Sgt(c)),d=Egt(c);l&&(!u.has(l)||d{let d=t[l];if(d==="dandan"||!c?.length)return;let f=new Map,p=[],h=0;c.forEach(_=>{let E=wgt(Sgt(_)),S=Egt(_);if(p.push({danmu:_,time:S}),E&&u.has(E)){h++;let C=Math.round(S-u.get(E));f.set(C,(f.get(C)||0)+1)}});let m=0,y=0;f.forEach((_,E)=>{_>y&&(y=_,m=E)});let g=Math.min(o,c.length),v=y/g,A=h>0?y/h:0;if(h/g{let S=Math.max(0,E-m);typeof _.p=="string"&&(_.p=_.p.replace(/^[^,]+(?=,)/,S.toFixed(2))),_.t!=null&&(_.t=S),typeof _.progress=="number"&&(_.progress=Math.round(S*1e3))})}),e}function Egt(e){if(e.p&&typeof e.p=="string"){let t=parseFloat(e.p.split(",")[0]);if(!isNaN(t))return t}return e.t!==void 0&&e.t!==null?Number(e.t):typeof e.progress=="number"?e.progress/1e3:0}function Sgt(e){if(e){if(typeof e.m=="string")return e.m;if(typeof e.text=="string")return e.text;if(typeof e.content=="string")return e.content}return""}function wgt(e){return!e||typeof e!="string"?"":e.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、“”‘’()【】《》;:~~]/g,"").toLowerCase()}var $m,M0e,bLr,sa,Ip,xe,w8,ELr,SLr,ygt,Rgt=ve(()=>{Ot();Ct();Ei();Md();$m="$$$",M0e="&",bLr=!1,sa=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),Ip=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});xe={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(日[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(日[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|日[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/日[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:季|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第(\d+)部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第([一二三四五六七八九十])季/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:季|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|劇場版|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|无修|未删减|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第[0-9一二三四五六七八九十]+季|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|劇場版|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)(\d+)[季S]/i,NUM_STRATEGY_A:/(?:第|s)(\d+)[季s]\s*(?:第|ep|e)(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},w8=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],ELr=[{regex:/(?:第)?(\d+)(?:季|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|劇場版|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(续篇|续集)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],SLr=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];ygt=new Map});function Pgt(e,t=Date.now()){let r=Number(e);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(t)||Date.now())}function qLr(e=""){return ZF(bv(e)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function jLr(e=""){let t=String(e||"").trim();if(!t)return"";let r=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(t.length/4)*4,"=");return Il(kR(r))}function Gk(e){return typeof TextEncoder<"u"?new TextEncoder().encode(e):bv(e)}function GLr(e){return typeof TextDecoder<"u"?new TextDecoder().decode(e):Il(e)}function qgt(e,t){let r=new Uint8Array(e.length);for(let n=0;n>=1}return r}function XLr(e){let t=new Uint8Array(16);for(let r=0;r<4;r++){let n=e.slice(4*r,4*r+4);t[4*r+0]=wi(n[0],2)^wi(n[1],3)^n[2]^n[3],t[4*r+1]=n[0]^wi(n[1],2)^wi(n[2],3)^n[3],t[4*r+2]=n[0]^n[1]^wi(n[2],2)^wi(n[3],3),t[4*r+3]=wi(n[0],3)^n[1]^n[2]^wi(n[3],2)}return t}function JLr(e){let t=new Uint8Array(16);for(let r=0;r<4;r++){let n=e.slice(4*r,4*r+4);t[4*r+0]=wi(n[0],14)^wi(n[1],11)^wi(n[2],13)^wi(n[3],9),t[4*r+1]=wi(n[0],9)^wi(n[1],14)^wi(n[2],11)^wi(n[3],13),t[4*r+2]=wi(n[0],13)^wi(n[1],9)^wi(n[2],14)^wi(n[3],11),t[4*r+3]=wi(n[0],11)^wi(n[1],13)^wi(n[2],9)^wi(n[3],14)}return t}function ZLr(e,t){let r=new Uint8Array(e);r=tI(r,t,0);for(let n=1;n<=9;n++)r=XF(r),r=Ogt(r),r=XLr(r),r=tI(r,t,n);return r=XF(r),r=Ogt(r),r=tI(r,t,10),r}function e4r(e,t){let r=new Uint8Array(e);r=tI(r,t,10);for(let n=9;n>=1;n--)r=DR(r),r=RR(r),r=tI(r,t,n),r=JLr(r);return r=DR(r),r=RR(r),r=tI(r,t,0),r}function t4r(e,t,r){let n=YLr(e,16),i=JF(t),s=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;o{vs();Mgt="6.8.2",HLr="a_8280",KLr="xiaomi",Lgt="Redmi Note 12",VLr="Xiaomi",Bgt="14",zLr=`HanjuTV/${Mgt} (${Lgt}; Android ${Bgt}; Scale/2.00)`,$gt=14*24*60*60*1e3,Dgt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Fgt="f349wghhe784tqwh",Ugt="d3w8hf94fidk38lk",QLr="34F9Q53w/HJW8E6Q",kgt="fb3597b87601d5a7"});var Tt,ki=ve(()=>{Ct();oy();bi();Tt=class{constructor(){}async search(t){throw new Error("Method 'search' must be implemented")}async getEpisodes(t){throw new Error("Method 'Episodes' must be implemented")}async handleAnimes(t,r,n,i=null,s=null){throw new Error("Method 'handleAnimes' must be implemented")}async getEpisodeDanmu(t){throw new Error("Method 'getEpisodeDanmu' must be implemented")}async getEpisodeDanmuSegments(t){throw new Error("Method 'getEpisodeDanmuSegments' must be implemented")}async getEpisodeSegmentDanmu(t){throw new Error("Method 'getEpisodeSegmentDanmu' must be implemented")}formatComments(t){throw new Error("Method 'formatComments' must be implemented")}async getComments(t,r,n=!1,i=null){if(n)return i&&await i(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),x("info",`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),await this.getEpisodeDanmuSegments(t);i&&await i(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`),x("info",`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`);let s=await this.getEpisodeDanmu(t);i&&await i(85,`\u539F\u59CB\u5F39\u5E55 ${s.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),x("info",`\u539F\u59CB\u5F39\u5E55 ${s.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let a=this.formatComments(s);return i&&await i(100,`\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),x("info",`\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),qR(a,r)}async getSegmentComments(t,r=null){r&&await r(5,`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${t.type}\u5F39\u5E55`),x("info",`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${t.type}\u5F39\u5E55`);let n=await this.getEpisodeSegmentDanmu(t);r&&await r(85,`\u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),x("info",`\u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let i=this.formatComments(n);return r&&await r(100,`\u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${i.length} \u6761`),x("info",`\u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${i.length} \u6761`),qR(i,t.type)}sortAndPushAnimesByYear(t,r){t.filter(n=>n!==null).sort((n,i)=>{let s=ny(n.animeTitle),a=ny(i.animeTitle);if(s!=null&&a!==null&&a!==void 0){if(a!==s)return a-s;let o=nae(n.animeTitle),u=nae(i.animeTitle);return o.length-u.length}return s!=null&&a==null?-1:s==null&&a!=null?1:0}).forEach(n=>{r.findIndex(s=>s.animeId===n.animeId)===-1&&r.push(n)})}}});function Wr(e){let t=parseInt(e);return isNaN(t)||t<1900||t>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${t}-01-01T00:00:00Z`}function Hv(e){let t=e.split(":").map(Number),r=0;return t.length===3?r=t[0]*3600+t[1]*60+t[2]:t.length===2?r=t[0]*60+t[1]:r=t[0],r}var Ba=ve(()=>{});var Yk,Ygt=ve(()=>{ki();Ot();Ct();yr();Ba();Ei();bi();Yk=class extends Tt{async get360Zongyi(t,r,n,i){try{let s=[];for(let a=0;a<=10;a++){let u=await(await Ie(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${i}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;x("info",`360kan zongyi response: ${JSON.stringify(u)}`);let c=u.data.list;if(!c)break;for(let l of c){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),s.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}x("info",`links.length: ${s.length}`)}return s.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let u=parseFloat(a.sort),c=parseFloat(o.sort);return u-c}),s}catch(s){return x("error","get360Animes error:",{message:s.message,name:s.name,stack:s.stack}),[]}}async getNumber(t,r,n){try{let i=`https://api.web.360kan.com/v1/detail?cat=${t}&id=${r}&site=${n}`,a=(await Ie(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(i){x("error","getNumber error:",i&&i.message?i.message:i)}return null}async get360Detail(t,r,n,i,s){try{let a=`https://api.web.360kan.com/v1/detail?cat=${t}&id=${r}&start=${i}&end=${s}&site=${n}`;return(await Ie(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){x("error","get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV2(t,r,n){try{let i=JSON.stringify([{cat_id:String(t),ent_id:String(r),site:n}]),s=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(i)}`,o=(await Ie(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string"){let u=o.indexOf("("),c=o.lastIndexOf(")");if(u!==-1&&c!==-1&&c>u){let l=o.substring(u+1,c);try{o=JSON.parse(l)}catch(d){return x("error",`getEpisodesV2 JSON parse error: ${d.message}`),[]}}else try{o=JSON.parse(o)}catch{return x("error","getEpisodesV2 unexpected response format"),[]}}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let u=o.data[0].seriesHTML||{},c=u.seriesPlaylinks||u.series_playlinks||[],l=[];for(let d=0;dd.url)}return[]}catch(i){return x("error","getEpisodesV2 error:",{message:i&&i.message?i.message:String(i),stack:i&&i.stack?i.stack:void 0}),[]}}async search(t){try{let n=(await Ie(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(t)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;x("info",`360kan response: ${JSON.stringify(n)}`);let i=[];return"rows"in n.data.longData&&(i=n.data.longData.rows),x("info",`360kan animes.length: ${i.length}`),i}catch(r){return x("error","get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[360kan] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.titleTxt,r)).map(async o=>{try{let u=[];if(o.cat_name==="\u7535\u5F71")for(let c of Object.keys(o.playlinks))L.vodAllowedPlatforms.includes(c)&&u.push({name:c.toString(),url:o.playlinks[c],title:`\u3010${c}\u3011 ${o.titleTxt}(${o.year})`});else if(o.cat_name==="\u7535\u89C6\u5267"||o.cat_name==="\u52A8\u6F2B"){let c=0;o.cat_name==="\u7535\u89C6\u5267"?c=2:o.cat_name==="\u52A8\u6F2B"&&(c=4);let l=null;if(Array.isArray(o.seriesPlaylinks)&&o.seriesPlaylinks.length>0){if(L.vodAllowedPlatforms.includes(o.seriesSite))for(let d=0;d0)for(let h of p)u.push({name:h.name,url:h.url,title:`\u3010${d}\u3011 \u7B2C${h.name}\u96C6`,sort:h.name});else try{let h=await this.getNumber(c,f,d),m=await this.get360Detail(c,f,d,1,h);if(m&&m.data&&m.data.allepidetail&&m.data.allepidetail[d])for(let y of m.data.allepidetail[d])u.push({name:y.playlink_num,url:y.url,title:`\u3010${d}\u3011 \u7B2C${y.playlink_num}\u96C6`,sort:y.playlink_num})}catch(h){x("error",`[360kan] fallback detail fetch failed for site ${d}: ${h&&h.message?h.message:h}`)}}catch(f){x("error",`[360kan] failed to fetch episodesv2 for site ${d}: ${f&&f.message?f.message:f}`)}}}else o.cat_name==="\u7EFC\u827A"&&(u=(await Promise.all(Object.keys(o.playlinks_year).map(async l=>L.vodAllowedPlatforms.includes(l)?(await Promise.all(o.playlinks_year[l].map(async f=>await this.get360Zongyi(o.titleTxt,o.id,l,f)))).flat():[]))).flat());if(u.length>0){let c={animeId:Number(o.id),bangumiId:String(o.id),animeTitle:`${o.titleTxt}(${o.year})\u3010${o.cat_name}\u3011from 360`,type:o.cat_name,typeDescription:o.cat_name,imageUrl:o.cover,startDate:Wr(o.year),episodeCount:u.length,rating:0,isFavorited:!0,source:"360"};s.push(c),Bt({...c,links:u},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[360kan] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){}formatComments(t){}}});var Wk,Wgt=ve(()=>{ki();Ot();Ct();yr();Ba();Ei();bi();Wk=class extends Tt{async getVodAnimes(t,r,n){try{let i=$Ye(t),s=encodeURIComponent(i),a=await Ie(`${r}/api.php/provide/vod/?ac=detail&wd=${s}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){x("info",`\u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return x("info",`${n} response: \u2193\u2193\u2193`),$i(o),{serverName:n,list:o.list}}else return x("info",`\u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(i){return x("error",`\u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:i.message,name:i.name,stack:i.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(t,r){let n=r.map(s=>this.getVodAnimes(t,s.url,s.name));return(await Promise.allSettled(n)).filter(s=>s.status==="fulfilled").map(s=>s.value)}async getVodAnimesFromFastestServer(t,r,n=null,i=null){if(!r||r.length===0)return[];let s=r.map(l=>this.getVodAnimes(t,l.url,l.name)),a;try{a=await Promise.race(s)}catch(l){return x("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||i!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return x("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${i==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];x("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let u=await Promise.allSettled(s);if(n){for(let l of u)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return x("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];x("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let c=u.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(c.length>0){let l=c[0];return x("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return x("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(t,r=null,n=null){return!L.vodServers||L.vodServers.length===0?[]:L.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(t,L.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(t,L.vodServers)}async getEpisodes(t){}async handleAnimes(t,r,n,i,s=null){let a=[];if(!t||!Array.isArray(t))return x("error","[VOD] sourceAnimes is not a valid array"),[];let o=await Promise.all(t.filter(u=>Mt(u.vod_name,r)).map(async u=>{try{let c=u.vod_play_from.split("$$$");c=c.map(h=>h==="mgtv"?"imgo":h==="bilibili"?"bilibili1":h);let l=u.vod_play_url.split("$$$"),d=c.map((h,m)=>L.vodAllowedPlatforms.includes(h)?m:-1).filter(h=>h!==-1),f=[],p=0;for(let h of d){let m=c[h],y=l[h].split("#");for(let g of y){let v=g.split("$");p++,f.push({name:p.toString(),url:v[1],title:`\u3010${m}\u3011 ${v[0]}`})}}if(f.length>0){let h={animeId:Number(u.vod_id),bangumiId:String(u.vod_id),animeTitle:`${u.vod_name}(${u.vod_year})\u3010${u.type_name}\u3011from ${i}`,type:u.type_name,typeDescription:u.type_name,imageUrl:u.vod_pic,startDate:Wr(u.vod_year),episodeCount:f.length,rating:0,isFavorited:!0,source:"vod"};a.push(h),Bt({...h,links:f},s),L.animes.length>L.MAX_ANIMES&&qt()}}catch(c){x("error",`[VOD] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(a,n),o}async getEpisodeDanmu(t){}formatComments(t){}}});async function Xgt(e){let t="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};L.doubanCookie&&(r.Cookie=L.doubanCookie);try{let n=await Ie(`${t}${e}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return x("error","[DOUBAN] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function Jgt(e,t={}){let r="https://api.douban.com/v2";try{let n=await Nn(`${r}${e}`,JSON.stringify({...t,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return x("error","[DOUBAN] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function Zgt(e,t=20){let r=`/search?q=${e}&start=0&count=${t}&type=movie`;return await Xgt(r)}async function eyt(e,t=20){return await Jgt("/movie/search",{q:e,start:0,count:t})}async function tyt(e){let t=`/movie/${e}?for_mobile=1`;return await Xgt(t)}async function ryt(e){let t=`/movie/imdb/${e}`;return await Jgt(t)}var q0e=ve(()=>{Ct();yr();Ot()});async function nyt(e){let t="https://api.imdbapi.dev";try{let r=await Ie(`${t}${e}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return x("error","[IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function iyt(e){let t=`/titles/${e}/seasons`;return await nyt(t)}async function syt(e,t){let r=`/titles/${e}/episodes?season=${t}`;return await nyt(r)}var ayt=ve(()=>{Ct();yr()});var Xk,oyt=ve(()=>{ki();Ct();q0e();Zw();ayt();Xk=class extends Tt{constructor(t){super("BaseSource"),this.doubanSource=t}async _getDoubanInfo(t,r,n){if(!t)return;let i=await ryt(t);if(!i||!i?.data)return;let s=i?.data?.id;if(s){let o=s.split("/").pop(),u=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:u,target:{cover_url:i.data?.image,title:i.data?.alt_title}})}}async getDoubanIdByTmdbId(t,r){try{let n=[],s=(await lgt(t,r)).data?.imdb_id;if(!s)return[];if(t==="movie")await this._getDoubanInfo(s,t,n);else{let a=await iyt(s);x("info","imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async u=>{let c=s;x("info","imdb season:",u.season);try{Number(u.season)!==1&&(c=(await syt(s,u.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(c,t,n)}catch(l){x("error",`\u5904\u7406\u7B2C ${u.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return x("error","getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(t){try{let n=(await v8(t)).data,i=[],s=[];n?.results?.length>0&&(s=n.results.filter(u=>(u.name||u.title)===t)),x("info",`tmdb items.length: ${s.length}`);let a=s.map(async u=>{try{return await this.getDoubanIdByTmdbId(u.media_type,u.id)}catch(c){return x("error",`\u83B7\u53D6 TMDB ID ${u.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,c),[]}}),o=await Promise.all(a);return i=[...i,...o.flat()],i}catch(r){return x("error","getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){}async handleAnimes(t,r,n,i=null){return this.doubanSource.handleAnimes(t,r,n,i)}async getEpisodeDanmu(t){}formatComments(t){}}});var Jk,uyt=ve(()=>{ki();Ct();q0e();Jk=class extends Tt{constructor(t,r,n,i,s){super("BaseSource"),this.tencentSource=t,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=i,this.miguSource=s}async search(t){try{let n=(await Zgt(t))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){x("info","searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await eyt(t))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let i=[];return n?.subjects?.items?.length>0&&(i=[...i,...n.subjects.items]),n?.smart_box?.length>0&&(i=[...i,...n.smart_box]),x("info",`douban animes.length: ${i.length}`),i}catch(r){return x("error","getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(t){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[t.subtype]||t.subtype,i=t.images?.large||t.images?.medium||t.images?.small||"",s="";if(i){let c=i.match(/\/(p\d+)\.jpg/);c&&c[1]&&(s=`https://qnmob3.doubanio.com/view/photo/large/public/${c[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=t.directors?.map(c=>c.name).join(" ")||"",o=t.casts?.slice(0,3).map(c=>c.name).join(" ")||"",u=`${t.year} / ${t.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(t.id),target:{rating:{count:t.collect_count||0,max:t.rating?.max||10,star_count:t.rating?.stars?parseInt(t.rating.stars)/10:0,value:t.rating?.average||0},controversy_reason:"",title:t.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${t.subtype==="movie"?"movie":"tv"}/${t.id}`,cover_url:s,year:String(t.year||""),card_subtitle:u,id:String(t.id),null_rating_reason:""},target_type:t.subtype==="movie"?"movie":"tv"}}async getEpisodes(t){}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Douban] sourceAnimes is not a valid array"),[];let a=await Promise.allSettled(t.map(async o=>{try{if(o?.layout!=="subject")return;let u=o.target_id,c=o?.type_name;if(c!=="\u7535\u5F71"&&c!=="\u7535\u89C6\u5267")return;x("info","doubanId: ",u,o?.target?.title,c);let l=await tyt(u),d=[];for(let f of l.data?.vendors??[]){if(!f)continue;x("info","vendor uri: ",f.uri),l.data?.genres.includes("\u771F\u4EBA\u79C0")?c="\u7EFC\u827A":l.data?.genres.includes("\u7EAA\u5F55\u7247")?c="\u7EAA\u5F55\u7247":c==="\u7535\u89C6\u5267"&&l.data?.genres.includes("\u52A8\u753B")&&l.data?.countries.some(h=>h.includes("\u4E2D\u56FD"))?c="\u56FD\u6F2B":c==="\u7535\u89C6\u5267"&&l.data?.genres.includes("\u52A8\u753B")&&l.data?.countries.includes("\u65E5\u672C")?c="\u65E5\u756A":c==="\u7535\u89C6\u5267"&&l.data?.genres.includes("\u52A8\u753B")?c="\u52A8\u6F2B":c==="\u7535\u5F71"&&l.data?.genres.includes("\u52A8\u753B")?c="\u52A8\u753B\u7535\u5F71":c==="\u7535\u5F71"&&l.data?.countries.some(h=>h.includes("\u4E2D\u56FD"))?c="\u534E\u8BED\u7535\u5F71":c==="\u7535\u5F71"?c="\u5916\u8BED\u7535\u5F71":c==="\u7535\u89C6\u5267"&&l.data?.countries.some(h=>h.includes("\u4E2D\u56FD"))?c="\u56FD\u4EA7\u5267":c==="\u7535\u89C6\u5267"&&l.data?.countries.some(h=>["\u65E5\u672C","\u97E9\u56FD"].includes(h))?c="\u65E5\u97E9\u5267":c==="\u7535\u89C6\u5267"&&l.data?.countries.some(h=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(h))&&(c="\u6B27\u7F8E\u5267");let p=[{title:l.data?.title,year:l.data?.year,type:c,imageUrl:o?.target?.cover_url}];switch(f.id){case"qq":{let h=new URL(f.uri).searchParams.get("cid");h&&(p[0].provider="tencent",p[0].mediaId=h,await this.tencentSource.handleAnimes(p,l.data?.title,s,i));break}case"iqiyi":{let h=new URL(f.uri).searchParams.get("tvid");h&&(p[0].provider="iqiyi",p[0].mediaId=o?.type_name==="\u7535\u5F71"?`movie_${h}`:h,await this.iqiyiSource.handleAnimes(p,l.data?.title,s,i));break}case"youku":{let h=new URL(f.uri).searchParams.get("showid");h&&(p[0].provider="youku",p[0].mediaId=h,await this.youkuSource.handleAnimes(p,l.data?.title,s,i));break}case"bilibili":{let h=new URL(f.uri).pathname.split("/").pop();h&&(p[0].provider="bilibili",p[0].mediaId=`ss${h}`,await this.bilibiliSource.handleAnimes(p,l.data?.title,s,i));break}case"miguvideo":{let h=null,y=decodeURIComponent(f.uri).match(/"contentID":"([^"]+)"/);y&&y[1]&&(h=y[1]),h&&(p[0].provider="migu",p[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${h}/1`,await this.miguSource.handleAnimes(p,l.data?.title,s,i));break}}}return d}catch(u){return x("error",`[Douban] Error processing anime: ${u.message}`),[]}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){}formatComments(t){}}});var Fm,Zk,eO,tO,cyt=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();Fm=null,Zk=0,eO=0,tO=class extends Tt{constructor(){super(),this.isBatchMode=!1}API_CONFIG={SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let t="aY",r=24-t.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=t;for(let s=0;s ${Fm}`):x("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${Fm}`),x("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${eO} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){Fm||this.rotateAliId(),Zk>=eO&&(x("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${Zk}/${eO})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),Zk++,x("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${Zk}/${eO} (\u5F53\u524DID: ...${Fm.slice(-6)})`)}getAliId(){return Fm||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),Fm}generateTvHeaders(t,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:t.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}async searchAppContent(t,r=30){try{let n=Date.now(),i="/qwtv/search",s={searchWord:t,num:r,searchNext:"",well:"match"},a=e5(i,n,s,this.API_CONFIG.SECRET_KEY),o=Object.entries(s).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),u=this.generateTvHeaders(n,a),c=`https://${this.API_CONFIG.TV_HOST}${i}?${o}`,l=await Ie(c,{headers:u,retries:1});if(!l.data||l.data.code!=="0000")return x("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),[];let d=l.data.data||[];return x("info",`[Renren] TV\u641C\u7D22\u8FD4\u56DE\u7ED3\u679C\u6570\u91CF: ${d.length}`),d.map(f=>({provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}))}catch(n){return x("info","[Renren] searchAppContent error:",n.message),[]}}async getAppDramaDetail(t,r=""){try{let n=Date.now(),i="/qwtv/drama/details",s={isAgeLimit:"false",seriesId:t,episodeId:r,clarity:"HD",caption:"0",hevcOpen:"1"},a=e5(i,n,s,this.API_CONFIG.SECRET_KEY),o=Object.entries(s).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),u=this.generateTvHeaders(n,a),c=await Ie(`https://${this.API_CONFIG.TV_HOST}${i}?${o}`,{headers:u,retries:1});if(!c||!c.data)return x("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${t}`),null;let l=c.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(x("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${t})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1Web\u964D\u7EA7`),null):l.code!=="0000"?(x("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${t})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?(x("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${t})\uFF0C\u5C1D\u8BD5Web\u964D\u7EA7`),null):(x("info",`[Renren] TV\u8BE6\u60C5\u83B7\u53D6\u6210\u529F: ID=${t}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l)}catch(n){return x("info","[Renren] getAppDramaDetail error:",n.message),null}}async getAppDanmu(t){try{let r=Date.now(),n=t;String(t).includes("-")&&(n=String(t).split("-")[1]);let i=`/v1/produce/danmu/EPISODE/${n}`,a=e5(i,r,{},this.API_CONFIG.SECRET_KEY),o=this.generateTvHeaders(r,a),u=`https://${this.API_CONFIG.TV_DANMU_HOST}${i}`,c=await Ie(u,{headers:o,retries:1});if(!c.data)return null;let l=OR(c.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return x("info","[Renren] getAppDanmu error:",r.message),null}}async performNetworkSearch(t,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:i=500}={}){try{x("info",`[Renren] \u5C1D\u8BD5\u6267\u884C\u7F51\u9875\u7248\u641C\u7D22: ${t}`);let s=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:t,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let u=Date.now()-n.value;usetTimeout(f,i-u));let c=await this.renrenRequest("GET",s,a);if(n.value=Date.now(),r&&(r.value=!1),!c.data)return x("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),[];let d=OR(c.data)?.data?.searchDramaList||[];return x("info",`[Renren] \u7F51\u9875\u7248\u641C\u7D22\u7ED3\u679C\u6570\u91CF: ${d.length}`),d.map(f=>({provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}))}catch(s){return x("info","[Renren] performNetworkSearch error:",s.message),[]}}async search(t){x("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={title:t,season:null},n=r.title,i=r.season,s=[];if(s=await this.searchAppContent(n),s.length===0){x("info","[Renren] TV \u641C\u7D22\u65E0\u7ED3\u679C\uFF0C\u964D\u7EA7\u5230\u7F51\u9875\u63A5\u53E3");let a={value:!1},o={value:0};s=await this.performNetworkSearch(n,{lockRef:a,lastRequestTimeRef:o,minInterval:400})}return i==null?s:s.filter(a=>a.season===i)}async getDetail(t){let r=await this.getAppDramaDetail(String(t));if(r&&r.data)return r.data;x("info",`[Renren] TV\u8BE6\u60C5\u4E0D\u53EF\u7528\uFF0C\u5C1D\u8BD5\u8BF7\u6C42\u7F51\u9875\u7248\u63A5\u53E3 (ID=${t})`);let n=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,i={hsdrOpen:0,isAgeLimit:0,dramaId:String(t),hevcOpen:1};try{let s=await this.renrenRequest("GET",n,i);if(!s.data)return null;let a=OR(s.data);return a&&a.data?(x("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u6210\u529F: \u5305\u542B\u96C6\u6570=${a.data.episodeList?a.data.episodeList.length:0}`),a.data):null}catch(s){return x("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getEpisodes(t){x("info",`[Renren] \u6B63\u5728\u83B7\u53D6\u5206\u96C6\u4FE1\u606F: ID=${t}`);let r=await this.getDetail(t);if(!r)return x("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${t}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return x("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${t}`),[];let n=[],i=String(t);return r.episodeList.forEach((s,a)=>{let o=String(s.sid||"").trim();if(!o)return;let u=s.title?String(s.title):`\u7B2C${String(s.episodeNo||a+1).padStart(2,"0")}\u96C6`,c=`${i}-${o}`;n.push({sid:c,order:s.episodeNo||a+1,title:u})}),x("info",`[Renren] \u6210\u529F\u89E3\u6790\u5206\u96C6\u6570\u91CF: ${n.length} (ID=${t})`),n.map(s=>({provider:"renren",episodeId:s.sid,title:s.title,episodeIndex:s.order,url:null}))}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("info","[Renren] sourceAnimes is not a valid array"),[];this.isBatchMode=!0;try{await Promise.all(t.filter(a=>Mt(a.title,r)).map(async a=>{try{let o=await this.getEpisodes(a.mediaId),u=[];for(let c of o)u.push({name:c.episodeIndex.toString(),url:c.episodeId,title:`\u3010${c.provider}\u3011 ${c.title}`});if(u.length>0){let c={animeId:Number(a.mediaId),bangumiId:String(a.mediaId),animeTitle:`${a.title}(${a.year})\u3010${a.type}\u3011from renren`,type:a.type,typeDescription:a.type,imageUrl:a.imageUrl,startDate:Wr(a.year),episodeCount:u.length,rating:0,isFavorited:!0,source:"renren"};s.push(c),Bt({...c,links:u},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(o){x("info",`[Renren] Error processing anime: ${o.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(s,n),s}async getEpisodeDanmu(t){let r=await this.getAppDanmu(t);return(!r||r.length===0)&&(x("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u5C1D\u8BD5\u964D\u7EA7\u7F51\u9875\u63A5\u53E3"),r=await this.getWebDanmuFallback(t)),r&&Array.isArray(r)&&r.length>0?(x("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${r.length} \u6761\u5F39\u5E55`),r):[]}async getWebDanmuFallback(t){let r=t;String(t).includes("-")&&(r=String(t).split("-")[1]),x("info",`[Renren] \u964D\u7EA7\u7F51\u9875\u7248\u5F39\u5E55\uFF0C\u4F7F\u7528 ID: ${r}`);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},i=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(i,{headers:s});if(!a.data)return[];let o=OR(a.data),u=[];return Array.isArray(o)?u=o:o?.data&&Array.isArray(o.data)&&(u=o.data),u}catch(a){return x("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),[]}}async getEpisodeDanmuSegments(t){return new Et({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}parseRRSPPFields(t){let r=String(t).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},i=n(r[0],parseFloat,0),s=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),u=r[6]||"",c=r[7]||`${i}:${u}`;return{timestamp:i,mode:s,size:a,color:o,userId:u,contentId:c}}formatComments(t){return t.map(r=>{let n=String(r.d||"");if(!n&&r.content&&(n=String(r.content)),!n)return null;if(r.p){let i=this.parseRRSPPFields(r.p);return{cid:Number(i.contentId)||0,p:`${i.timestamp.toFixed(2)},${i.mode},${i.color},[renren]`,m:n,t:i.timestamp}}return null}).filter(Boolean)}generateSignature(t,r,n,i,s,a,o,u){let c=`${t.toUpperCase()} + => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function _Qr(e,t,r=""){let n=`${e}_${t}_${r}`,s=0;for(let i=0;i=0;l--){let d=e.links[l],f=d.title||d.name||"",h=zc(f,e.source);if(!h.isSpecial&&!h.isPV&&!h.isStrictSpecial&&h.num!==null){o=l;break}}for(let l of t){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,h=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||h&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((h,p)=>h.originalIndex-p.originalIndex),d.push(...l.map(h=>SIt(h,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(h=>h.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),e.links.unshift(...n.map(l=>SIt(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,e.links,"\u5C3E\u90E8"),u(i,e.links,"\u7279\u6B8A"),c.length>0&&Ut("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: +${c.join(` +`)}`)}function EQr(e){let t=new Map;if(!e||e.length<2)return t;let r=e.map(s=>{let i=s.animeTitle||"",a=oE(i).replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of aH)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(Be.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(t.set(String(s.id),i),Ut("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return t}function yQr(e,t){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!e.links||!t.links||!e.links.length||!t.links.length)return r;let n=m=>m.filter(g=>{let _=(g.title||g.name||"").toLowerCase();return!Be.Episode.PV_CHECK.test(_)&&!Be.Episode.SPECIAL_CHECK.test(_)}).length,s=n(e.links),i=n(t.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=m=>m.map(g=>bC(g.title||g.name||"").replace(/\d+/g,"").trim()).filter(g=>g.length>1),o=a(e.links),c=a(t.links);if(o.length<3||c.length<3)return r;let u=Ku(o.join(" ")),l=Ku(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,h=0,p=[];for(let m=0;m.6?f++:y<.3&&h++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,Ut("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${p.join(", ")}`)):h>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,Ut("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${p.join(", ")}`)),r}function Xve(e,t){let r=F.customMergeRules||[];if(r.length===0)return null;let n=Io(e.animeTitle,e.typeDescription,e.aliases),s=Io(t.animeTitle,t.typeDescription,t.aliases),i=(a,o)=>{let c=Sr(a||"").toLowerCase().replace(Be.Clean.FROM_SUFFIX,""),u=Sr(o||"").toLowerCase(),l=/[\((\[]?\d{4}[\))\]]?/.test(u),d=/【.*?】/.test(u)||/\[.*?\]/.test(u);if(l||(c=c.replace(/[\((\[]\d{4}[\))\]]/g,"")),!d){let f=c.match(/^(?:【|\[)(.+?)(?:】|\])/);if(f){let h=f[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(h)||(c=c.replace(f[0],h+" "))}c=c.replace(Be.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(Be.Season.INFO_STRONG,"")),c=c.replace(Be.Clean.MOVIE_KEYWORDS,""),{target:kr(c).replace(/\s+/g,""),rule:kr(u).replace(/\s+/g,"")}};for(let a of r){let o=g=>String(g).split(HS)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(e.source).split(HS),d=String(t.source).split(HS);if(!l.includes(c)||!d.includes(u))continue;let f=i(e.animeTitle,a.primary.title),h=i(t.animeTitle,a.secondary.title),p=f.target===f.rule,m=h.target===h.rule;if(!(!p||!m)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function vQr(e,t,r=new Set,n=[]){if(!t||t.length===0)return[];let s=e.animeTitle||"",i=s.replace(Be.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(Be.Lang.CN_DUB_VER)||Be.Lang.CN.test(i),o=e.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:_It(e.startDate),u=e.episodeCount||(e.links?e.links.length:0),l=Ku(s),d=oE(i),f=Ud(i),h=Gu(s,e.typeDescription,e.aliases),p=Array.from(h).filter(T=>T.startsWith("S")),m=[{animeId:e.animeId,animeTitle:s},...t],g=EQr(m),_=g.has(String(e.animeId)),y=g.get(String(e.animeId)),A=r.has(e.animeId),E=(T,x)=>{Ut("info",`[Merge-Check] \u62D2\u7EDD: [${e.source}] ${s} vs [${T}] -> ${x}`)},v=[],b=0;for(let T of t){let x=T.animeTitle||"",w=Xve(e,T);if(w){if(w.action==="block"){E(x,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let se=Ku(x);v.push({anime:T,score:1,lang:se,debugTitle:x,isCustomMapped:!0}),Ut("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${e.source}] ${s} <-> [${T.source}] ${x}`);continue}if(!n.includes(T.source)){E(x,"\u8BE5\u6765\u6E90\u4E3A\u6620\u5C04\u8868\u52A8\u6001\u6CE8\u5165\uFF0C\u4E14\u672A\u547D\u4E2D\u7279\u6743\u89C4\u5219\uFF0C\u53D7\u9650\u4E8E\u6743\u9650\u6C99\u7BB1\u4E88\u4EE5\u963B\u65AD");continue}let D=r.has(T.animeId),M=A||D,L=T.source==="hanjutv",U=x.includes("N/A")||L?{year:null,month:null}:_It(T.startDate),G=Ku(x),$=x.replace(Be.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),K=!!$.match(Be.Lang.CN_DUB_VER)||Be.Lang.CN.test($),ee=a||K,z=T.episodeCount||(T.links?T.links.length:0);if($.includes("\u4E4B")){let se=$.split("\u4E4B"),J=oE(se[0]);if(d===J){E(x,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${J}")`);continue}}if(dQr(s,x,e.typeDescription,T.typeDescription,u,z,e.source,T.source)){let se=IC(s,e.typeDescription,e.source),J=IC(x,T.typeDescription,T.source);E(x,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${se}/${VS(s,e.typeDescription)} [${e.typeDescription}] vs S:${J}/${VS(x,T.typeDescription)} [${T.typeDescription}])`);continue}let oe=c.year!==null&&U.year!==null,le=lQr(s,x,oe);if(g.has(String(T.animeId))){let se=g.get(String(T.animeId));if(f===Ud(se)&&!(Be.Season.SUFFIX_AMBIGUOUS.test(d)||aH.some(ce=>ce.regex.test(d)))){E(x,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${se}")`);continue}}if(_&&Ud($)===Ud(y)){E(x,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${y}")`);continue}if(!oe&&le){E(x,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let Q=hQr(i,$,e.typeDescription,T.typeDescription,e.aliases,T.aliases),Z=yQr(e,T),de=s.search(Be.Clean.MOVIE_KEYWORDS)!==-1,B=x.search(Be.Clean.MOVIE_KEYWORDS)!==-1;if(de!==B){let se=Gu(x,T.typeDescription,T.aliases),J=be=>Ud(be.replace(Be.Clean.MOVIE_KEYWORDS,"")),ce=J(s),ge=J(x);if(aE(ce,ge)>.9&&!h.has("SEQUEL")&&!se.has("SEQUEL")){E(x,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${de?"Movie":"TV"}] vs [${B?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let k=M?0:pQr(c,U,ee);if(k===-1){let se=Q;if(Z.isStrongMatch&&(se=!0),M&&(se=!0),le&&!M&&(se=!1),se&&c.year&&U.year&&Math.abs(c.year-U.year)>2&&!Z.isStrongMatch&&!M&&(se=!1),!se){E(x,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${U.year}, IsDub:${ee})`);continue}}if(!M&&fQr(i,$,e.typeDescription,T.typeDescription,e.aliases,T.aliases))if(Z.isStrongMatch)Ut("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${x}] (Probe\u5F3A\u5339\u914D)`);else{E(x,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let W=se=>se?String(se).replace(Be.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",P=Array.from(new Set([i,...e.aliases||[]].map(W).filter(Boolean))),H=Array.from(new Set([$,...T.aliases||[]].map(W).filter(Boolean))),j=0,q=0;for(let se of P){let J=gIt(se);for(let ce of H)j=Math.max(j,aE(se,ce)),q=Math.max(q,aE(J,gIt(ce)))}let Y=Math.max(j,q),X=Y;le&&(Y+=Ga.TITLE_STRUCTURE_CONFLICT),k!==-1&&(Y+=k);let ae=l==="CN",ne=G==="CN";if(ae&&ne?Y+=Ga.LANG_MATCH_CN:ae!==ne&&(Y+=Ga.LANG_MISMATCH),Z.isStrongMatch?(Ut("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${Y.toFixed(2)}) -> ${Wh.SIMILARITY_STRONG}`),Y=Math.max(Y,Wh.SIMILARITY_STRONG)):Z.isStrongMismatch&&(E(x,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),Y=0),Yb&&(b=Y),v.push({anime:T,score:Y,lang:G,debugTitle:x}),Ut("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${x} Score=${Y.toFixed(2)} (BestSoFar=${b.toFixed(2)})`)}if(v.length===0||bT.isCustomMapped))return[];let I=v.filter(T=>{if(T.isCustomMapped||T.score>=b-Wh.TIER_DEFAULT||T.lang==="CN"&&T.score>=b-Wh.TIER_CN)return!0;let x=Gu(T.debugTitle,T.anime.typeDescription,T.anime.aliases);if(Array.from(x).some(D=>D.startsWith("P"))&&T.score>=b-Wh.TIER_PART){let D=Array.from(x).filter(M=>M.startsWith("S"));if(p.length>0&&D.length>0){if(p.some(L=>D.includes(L)))return!0}else return!0}return!1});return I.sort((T,x)=>T.isCustomMapped&&!x.isCustomMapped?-1:!T.isCustomMapped&&x.isCustomMapped?1:x.score-T.score),I.map(T=>T.anime)}function SQr(e){let t=new Set;if(!e||e.length===0)return t;let r=new Map;e.forEach(n=>{let s=F.animes.find(d=>String(d.animeId)===String(n.animeId))||n,i=Gu(s.animeTitle,s.typeDescription,s.aliases);if(i.has("MOVIE")||i.has("OVA")||i.has("SP")||i.has("SEQUEL"))return;let a=Sr(n.animeTitle||""),o=a.match(/^(?:【|\[)(.+?)(?:】|\])/);if(o){let d=o[1];/^(TV|剧场版|劇場版|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(d)||(a=a.replace(o[0],d+" "))}a=a.replace(/第([一二三四五六七八九十]+)季/g,(d,f)=>`\u7B2C${Oh(f)}\u5B63`);let c=a.replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.META_SUFFIX,"").replace(Be.Lang.KEYWORDS_STRONG,"");if(aH.forEach(d=>c=c.replace(d.regex,"")),c=c.replace(Be.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:季|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!c)return;let u=IC(n.animeTitle,s.typeDescription,s.source),l=`${c}|${u}`;r.has(l)||r.set(l,[]),r.get(l).push(n)});for(let[n,s]of r.entries()){if(s.length<2)continue;let[i,a]=n.split("|"),o=s.map(d=>` - [${d.source}] ${d.animeTitle}`).join(` +`);Ut("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${i}" [${a}] (\u5305\u542B ${s.length} \u4E2A\u6761\u76EE): +${o}`);let c=new Map,u=0;if(s.forEach(d=>{let f=F.animes.find(_=>String(_.animeId)===String(d.animeId))||d,h=Gu(f.animeTitle,f.typeDescription,f.aliases),p=1;for(let _ of h)if(_.startsWith("S")){let y=parseInt(_.substring(1));isNaN(y)||(p=y)}if(p===1){let _=h.has("SEQUEL")||Be.Season.SUFFIX_SEQUEL.test(f.animeTitle),y=h.has("AMBIGUOUS")||Be.Season.SUFFIX_AMBIGUOUS.test(f.animeTitle);(_||y)&&(p=2,Ut("info",`[Merge-Check] [Detail] [${f.source}] "${f.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}p>u&&(u=p);let m=0;f.links&&(/^(dandan|animeko)$/i.test(f.source)?m=f.links.filter(_=>{let y=_.title||_.name||"",A=y.replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim();if(Be.Episode.SPECIAL_CHECK.test(A)||Be.Episode.DANDAN_IGNORE.test(A))return!1;let E=oE(y);return!(Be.Episode.SPECIAL_CHECK.test(E)||Be.Episode.DANDAN_IGNORE.test(E)||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(A)||Be.Episode.MAP_EXCLUDE_KEYWORDS.test(y))}).length:m=f.links.length),c.has(f.source)||c.set(f.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let g=c.get(f.source);g.seasonCounts[p]||(g.seasonCounts[p]=0),g.seasonCounts[p]=Math.max(g.seasonCounts[p],m),p>g.maxSeason&&(g.maxSeason=p),p===1&&g.s1Candidates.push({anime:f,originalCount:m})}),u<=1)continue;let l=Array.from(c.keys());for(let[d,f]of c.entries()){if(f.maxSeason>1)continue;let h=0,p=!1;for(let g of l){if(g===d)continue;let _=c.get(g);_.seasonCounts[1]&&(p=!0,_.seasonCounts[1]>h&&(h=_.seasonCounts[1]))}if(!p)continue;let m=h+Wh.COLLECTION_DIFF;f.s1Candidates.forEach(g=>{let _=h>0?g.originalCount/h:0;if(g.originalCount>m){if(_>Wh.COLLECTION_RATIO){Ut("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${d}] ${g.anime.animeTitle} (Ratio too high: ${_.toFixed(2)} > ${Wh.COLLECTION_RATIO})`);return}t.add(g.anime.animeId),Ut("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${d}] ${g.anime.animeTitle} (Count:${g.originalCount} > Thr:${m}, Ratio:${_.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else Ut("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${d}] ${g.anime.animeTitle} (Count:${g.originalCount} <= Threshold:${m})`)})}}return t}async function Yve(e){let{pAnime:t,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:h,collectionProgress:p,baseSecondaries:m}=e;if(f.has(t.animeId)&&s.has(t.animeId))return Ut("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let g=zve(t);if(!g.links){let L=F.animes.find(U=>String(U.animeId)===String(t.animeId));g.links=L?.links?zve(L.links):[]}if(!g.links||g.links.length===0)return Ut("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${t.animeTitle}`),null;let _=t.animeTitle.replace(Be.Clean.FROM_SUFFIX,""),y=[],A=[t.animeId],E=!1,v=Ku(t.animeTitle),b=iH(g.links,t.animeTitle,u),I=f.has(t.animeId),T=(L,U)=>L?U&&L.includes(U)?L.replace(U,""):L:"",x=Ud(t.animeTitle),w=n.filter(L=>Ud(L.animeTitle)===x),D=gQr(w,o,f);if(D.size>0){let L=Array.from(D.entries()).map(([U,G])=>`S${U}=${G}`).join(", ");(I||r.some(U=>n.some(G=>G.source===U&&f.has(G.animeId))))&&Ut("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${L} }`)}let M=[];for(let L of r){let U=n.filter(ee=>{if(ee.source!==L)return!1;let z=Xve(t,ee);if(z)return z.action==="block"?(Ut("info",`${l} \u62E6\u622A: \u526F\u6E90 [${ee.source}] ${ee.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(I)return!0;let oe=s.has(ee.animeId),le=h&&h.has(ee.animeId);return!(oe&&!le)}),G=[],$=new Set;for(let ee of U)$.has(ee.animeId)||($.add(ee.animeId),G.push(ee));if(U=G,d&&(U=U.filter(ee=>Ku(ee.animeTitle)===d)),U.length>1&&U.sort((ee,z)=>{let oe=Ku(ee.animeTitle)==="CN",le=Ku(z.animeTitle)==="CN";return oe===le?0:oe?1:-1}),U.length===0)continue;let K=vQr(t,U,f,m);M.push(...K)}if(M.length>0){if(M.length>1&&(I||M.some(L=>f.has(L.animeId)))){M.sort((U,G)=>{let $=Io(U.animeTitle,U.typeDescription,U.aliases)||1,K=Io(G.animeTitle,G.typeDescription,G.aliases)||1;if($!==K)return $-K;let ee=r.indexOf(U.source),z=r.indexOf(G.source);return ee-z});let L=M.map(U=>`[${U.source}]S${Io(U.animeTitle,U.typeDescription,U.aliases)||1}`);Ut("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${L.join(" -> ")}`)}for(let L of M){let U=L.source,G=Xve(t,L);if(G&&G.action==="block"){Ut("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${t.animeTitle} <-> [${U}] ${L.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!I&&!(h&&h.has(L.animeId))&&!G&&s.has(L.animeId))continue;let $=F.animes.find(Te=>String(Te.animeId)===String(L.animeId));if(!$?.links)continue;let K=zve($),ee=[],z=new Set,oe=[],le=[],te=K.animeTitle.replace(Be.Clean.FROM_SUFFIX,""),Q=EIt(g.links,u),Z=EIt(K.links,U),de=new Set([...Z].filter(Te=>!Q.has(Te))),B=new Set([...Q].filter(Te=>!Z.has(Te)));B.size>0&&yIt(g.links,B,u,`\u4E3B\u6E90:${u}`),de.size>0&&yIt(K.links,de,U,`\u526F\u6E90:${U}`);let k=K.links,W=Wve(g.links,o,u),P=Wve(k,o,U),H=Ku(K.animeTitle),j=W,q=P,Y=0,X=0,ae=f.has(L.animeId),ne=(Te,xe,Fe)=>{let Ee=0,me=xe;if(Fe&&Fe>1){let Ae=!1,pe=Te?t.animeId:L.animeId;if(p&&p.has(pe)){let Se=p.get(pe),Ie=Fe-1;if(Se[`S${Ie}`]!==void 0){let Le=Se[`S${Ie}`]+1;Le>0&&Le=xe.length){let Le=(Fe-1)*12;Le Total ${xe.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Fe} -> Index ${Le})`),Ie=Math.max(0,Le-2))}if(Ie>0&&IeTe.isSpecial||Te.isStrictSpecial||Te.num!==null&&Te.num%1!==0,ge=new Map,be=0;if(G&&G.hasRoutes){Ut("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${t.animeTitle} <-> ${L.animeTitle}`);let xe=vIt(j,q,v,H,u,U,t.animeTitle,K.animeTitle)+Y-X;be=xe;let Fe=new Map;for(let Ee of G.routes){let me=Ee.sec.end-Ee.sec.start+1,Ae=Ee.prim.end-Ee.prim.start+1;if(me!==Ae){Ut("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Ee.sec.start}~E${Ee.sec.end} > E${Ee.prim.start}~E${Ee.prim.end}`);continue}for(let pe=0;pe{let Rt=zc(T(ke.link.title||ke.link.name,b),u),ze=Rt.num;return ze===null&&!Rt.isStrictSpecial&&(ze=Qe+1),ze===He&&!Rt.isSpecial&&!Rt.isStrictSpecial});if(Ge!==-1){ge.set(Ee,Ge),Le.relativeIndex=Ge;let ke=W[Ge].originalIndex,Qe=g.links[ke],Rt=Qe.name||Qe.title||`Index ${ke}`,ze=Qve(Ae.url),ot=Qe.url,lt=`${U}:${ze}`;ot.includes(Fd)||ot.startsWith(u+":")||(ot=`${u}:${ot}`);let At=`${ot}${Fd}${lt}`,gr=Qe.title;if(gr){let Vt=U,it=(Ae.title||"").match(/^【([^】\d]+)(?:\d*)】/);it&&(Vt=it[1].trim()),gr=gr.replace(/^【([^】]+)】/,(vt,bs)=>`\u3010${bs}${HS}${Vt}\u3011`)}ee.push({idx:Ge,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${Rt} <-> ${pe} (Rule: E${we}>E${He})`}),z.add(Ge),se++,oe.push({linkIndex:ke,newUrl:At,newTitle:gr})}else Le.relativeIndex=Ee+xe,ee.push({idx:Le.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${He} <-> ${pe}`}),le.push(Le)}}else{G&&Ut("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${U}] ${L.animeTitle} -> [${u}] ${t.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),be=vIt(j,q,v,H,u,U,t.animeTitle,K.animeTitle)+Y-X,be!==0&&Ut("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${U}): Offset=${be} (P:${W.length}, S:${P.length})`);let xe=new Map,Fe=null;P.forEach((pe,Se)=>{let Ie=W[Se+be];if(!Ie)return;let Le=T(Ie.link.title||Ie.link.name,b),we=T(pe.link.title||pe.link.name,J),He=zc(Le,u),Ge=zc(we,U);if(He.num===null||Ge.num===null||ce(He)||ce(Ge))return;let ke=He.num-Ge.num,Rt=1+(aE(bC(Le),bC(we))>.45?1:0);Fe!==null&&He.num-Fe>1?Rt=.1:Fe=He.num,xe.set(ke,(xe.get(ke)||0)+Rt)});let Ee=xe.size>0?[...xe.entries()].reduce((pe,Se)=>Se[1]>pe[1]?Se:pe)[0]:null,me=W.reduce((pe,Se,Ie)=>{let Le=zc(T(Se.link.title||Se.link.name,b),u);return ce(Le)&&!Le.isPV&&pe.push(Ie),pe},[]),Ae=0;for(let pe=0;pe{let ot=zc(T(ze.link.title||ze.link.name,b),u);return ot.num===Rt&&!ce(ot)}),Se!==-1)ke.relativeIndex=Se;else{let ze=-.5;for(let ot=W.length-1;ot>=0;ot--){let lt=zc(T(W[ot].link.title||W[ot].link.name,b),u);if(lt.num!==null&&!lt.isSpecial&<.numze&&(ze=Vt,Rt=lt)}Rt===-1&&!Ge.isPV&&Ae=0&&Se`\u3010${d1}${HS}${Lo}\u3011`)}ee.push({idx:ke.relativeIndex,text:` [\u5339\u914D] ${ot} <-> ${we}`}),z.add(Se),se++,oe.push({linkIndex:Rt,newUrl:lo,newTitle:yl})}else ee.push({idx:ke.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${we}`}),le.push(ke)}}for(let Te=0;Te (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(se>0){let Te=f.has(t.animeId)||f.has(L.animeId),xe=!1;if(G?xe=se>0:xe=mQr(se,W.length,P.length,u,U,Te),xe){for(let we of oe){let He=g.links[we.linkIndex];He.url=we.newUrl,He.title=we.newTitle}let Fe=we=>we?we.replace(Be.Clean.YEAR_TAG,"").replace(Be.Clean.SOURCE_TAG,"").replace(Be.Clean.FROM_SUFFIX,"").trim():"",Ee=Fe(g.animeTitle);g.aliases=[...new Set([...g.aliases||[],...K.aliases||[],...L.aliases||[],Fe(K.animeTitle)])].filter(we=>we&&we!==Ee),Ut("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${_} <-> [${U}] ${te} (\u672C\u6B21\u5408\u5E76 ${se} \u96C6)`),ee.length>0&&(ee.sort((we,He)=>we.idx-He.idx),Ut("info",`${l} [${U}] \u6620\u5C04\u8BE6\u60C5: +${ee.map(we=>we.text).join(` +`)}`)),g.mergedChildren=g.mergedChildren||[],g.mergedChildren.some(we=>String(we.animeId)===String(L.animeId)&&we.source===L.source)||g.mergedChildren.push({animeId:L.animeId,animeTitle:L.animeTitle,source:L.source,episodes:K.links?K.links.length:0,imageUrl:L.imageUrl||""});let me=F.animes.find(we=>String(we.animeId)===String(L.animeId)&&we.source===L.source);if(me&&(me.isHiddenChild=!0),p&&(ae||I)){let we=-1;if(I&&!ae){for(let He=0;Hewe&&(we=ke)}}if(we!==-1){let He=Io(K.animeTitle,K.typeDescription,K.aliases)||1;p.has(t.animeId)||p.set(t.animeId,{});let Ge=p.get(t.animeId);se>=3&&(Ge[`S${He}`]=we)}}else if(!I&&ae){for(let He=0;Hewe&&(we=ke.originalIndex)}}if(we!==-1){let He=Io(t.animeTitle,t.typeDescription,t.aliases)||1;p.has(L.animeId)||p.set(L.animeId,{});let Ge=p.get(L.animeId);se>=3&&(Ge[`S${He}`]=we,Ut("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${L.animeId}]: S${He} -> MaxIndex ${we}`))}}}let Ae=Io(t.animeTitle,t.typeDescription,t.aliases)||1,pe=Io(K.animeTitle,K.typeDescription,K.aliases)||1,Se=G&&Ae!==pe;f.has(L.animeId)||Se?Ut("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${U}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):AQr(g,le,U);let Ie=[],Le=[];g.links.forEach(we=>{let He=we.title.replace(Be.Clean.SOURCE_TAG,"").trim();Be.Episode.SINK_TITLE_STRICT.test(He)?Le.push(we):Ie.push(we)}),Le.length>0&&(g.links=[...Ie,...Le],Ut("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${Le.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),E=!0,y.push(U),A.push(L.animeId)}else Ut("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${_} <-> [${U}] ${te} (\u5339\u914D\u7387\u8FC7\u4F4E: ${se}/${Math.max(W.length,P.length)})`)}}}if(E){let L=A.join("|");if(a.has(L))return Ut("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${L})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(L);let U=F.animes.find($=>String($.animeId)===String(t.animeId)&&$.source===t.source);U&&(U.isHiddenChild=!0);for(let $=1;$({primary:h.primary,secondaries:[...h.secondaries],baseSecondaries:[...h.secondaries]}));for(let[h,p]of s.entries()){let m=i.find(g=>g.primary===h);m||(m={primary:h,secondaries:[],baseSecondaries:[]},i.push(m));for(let g of p)m.secondaries.includes(g)||m.secondaries.push(g)}if(!i||i.length===0)return;Ut("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=F.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=SQr(e),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(h=>{h.secondaries.length===0&&f.add(h.primary)});for(let h of i){if(h.secondaries.length===0)continue;let p=new Map,m=[h.primary,...h.secondaries];m.forEach((T,x)=>p.set(T,x));let g=m.join("&"),_=new Set,y=(T,x)=>{if(!T||T.length<2)return T;Ut("info",`[Merge-Check] [Sort] ${x} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${T[0].animeTitle}`),T.sort((D,M)=>{let L=p.get(D.source)??99,U=p.get(M.source)??99;if(L!==U)return L-U;let G=oe=>{let le=Gu(oe.animeTitle,oe.typeDescription,oe.aliases);return le.has("MOVIE")||le.has("OVA")||le.has("SP")||VS(oe.animeTitle,oe.typeDescription)==="MOVIE"?2:1},$=G(D),K=G(M);if($!==K)return $-K;let ee=Io(D.animeTitle,D.typeDescription,D.aliases)||1,z=Io(M.animeTitle,M.typeDescription,M.aliases)||1;return ee-z});let w=T.map(D=>{let M=Io(D.animeTitle,D.typeDescription,D.aliases)||1,L=Gu(D.animeTitle,D.typeDescription,D.aliases).has("MOVIE")||VS(D.animeTitle,D.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${p.get(D.source)??"?"}] [${L}] [${D.source}] ${D.animeTitle}`});return Ut("info",`[Merge-Check] [Sort] ${x} \u6267\u884C\u987A\u5E8F: + ${w.join(` + `)}`),T},A=[];m.forEach(T=>{e.filter(w=>w.source===T&&!_.has(w.animeId)&&Ku(w.animeTitle)==="CN").forEach(w=>A.push(w))});let E=!1;for(let T of m)if(e.some(x=>x.source===T&&!_.has(x.animeId)&&Ku(x.animeTitle)==="CN")){E=!0;break}if(A.length>0&&E){Ut("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${A.length} \u4E2A CN \u8D44\u6E90\u3002`),y(A,"Phase 1");for(let T of A){if(_.has(T.animeId))continue;let x=p.get(T.source),w=m.slice(x+1);if(w.length===0)continue;let D=await Yve({pAnime:T,availableSecondaries:w,curAnimes:e,groupConsumedIds:_,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:g,currentPrimarySource:T.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:h.baseSecondaries});D&&(u.push(D),_.add(T.animeId),d.add(T.animeId))}}let v=[];for(let T=1;TD.source===x&&!_.has(D.animeId)&&Ku(D.animeTitle)==="CN").forEach(D=>v.push(D))}if(v.length>=2){Ut("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${v.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),y(v,"Phase 1.5");for(let T of v){if(_.has(T.animeId))continue;let x=p.get(T.source),w=m.slice(x+1);if(w.length===0)continue;let D=await Yve({pAnime:T,availableSecondaries:w,curAnimes:e,groupConsumedIds:_,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:g,currentPrimarySource:T.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:h.baseSecondaries});D&&(u.push(D),_.add(T.animeId),d.add(T.animeId))}}let b=[];m.forEach(T=>{e.filter(w=>w.source===T&&!_.has(w.animeId)).forEach(w=>b.push(w))});let I=new Set(b.map(T=>T.source));if(b.length>0&&I.size>=2){Ut("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${b.length} \u4E2A\u8D44\u6E90\u3002`),y(b,"Phase 2");for(let T of b){if(_.has(T.animeId))continue;let x=p.get(T.source),w=m.slice(x+1);if(w.length===0)continue;let D=Gu(T.animeTitle,T.typeDescription,T.aliases),M=Array.from(D).some(G=>G.startsWith("P")),L=null;if(M){L=new Set;let G=Io(T.animeTitle,T.typeDescription,T.aliases)||1;for(let $ of d){let K=F.animes.find(oe=>String(oe.animeId)===String($));if(!K||!w.includes(K.source))continue;let ee=Gu(K.animeTitle,K.typeDescription,K.aliases);if(Array.from(ee).some(oe=>oe.startsWith("P")))continue;let z=Io(K.animeTitle,K.typeDescription,K.aliases)||1;G===z&&L.add(K.animeId)}}let U=await Yve({pAnime:T,availableSecondaries:w,curAnimes:e,groupConsumedIds:_,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:g,currentPrimarySource:T.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:L,collectionProgress:c,baseSecondaries:h.baseSecondaries});U&&(u.push(U),_.add(T.animeId),d.add(T.animeId))}}}if(u.length>0){for(let h of u)or(h,t);e.unshift(...u)}if(f.size>0)for(let h of e)d.has(h.animeId)&&f.has(h.source)&&d.delete(h.animeId);for(let h=e.length-1;h>=0;h--){let p=e[h];(p._isMerged||d.has(p.animeId))&&e.splice(h,1)}u.length>0?Ut("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${e.length}`):Ut("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${e.length})`)}function TIt(e){if(e.p&&typeof e.p=="string"){let t=parseFloat(e.p.split(",")[0]);if(!isNaN(t))return t}return e.t!==void 0&&e.t!==null?Number(e.t):typeof e.progress=="number"?e.progress/1e3:0}function bIt(e){if(e){if(typeof e.m=="string")return e.m;if(typeof e.text=="string")return e.text;if(typeof e.content=="string")return e.content}return""}function IIt(e){return!e||typeof e!="string"?"":e.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function NIt(e,t){let r=[...e||[],...t||[]],n=s=>{if(!s)return 0;if(s.t!==void 0&&s.t!==null)return Number(s.t);if(s.p&&typeof s.p=="string"){let i=parseFloat(s.p.split(",")[0]);return isNaN(i)?0:i}return 0};return r.sort((s,i)=>n(s)-n(i)),r}function OIt(e,t,r,n=.8,s=1){let i=t.indexOf("dandan");if(i===-1||!e[i]?.length)return Ut("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),e;let a=e[i],o=a.length,c=new Map;return a.forEach(u=>{let l=IIt(bIt(u)),d=TIt(u);l&&(!c.has(l)||d{let d=t[l];if(d==="dandan"||!u?.length)return;let f=new Map,h=[],p=0;u.forEach(E=>{let v=IIt(bIt(E)),b=TIt(E);if(h.push({danmu:E,time:b}),v&&c.has(v)){p++;let I=Math.round(b-c.get(v));f.set(I,(f.get(I)||0)+1)}});let m=0,g=0;f.forEach((E,v)=>{E>g&&(g=E,m=v)});let _=Math.min(o,u.length),y=g/_,A=p>0?g/p:0;if(p/_{let b=Math.max(0,v-m);typeof E.p=="string"&&(E.p=E.p.replace(/^[^,]+(?=,)/,b.toFixed(2))),E.t!=null&&(E.t=b),typeof E.progress=="number"&&(E.progress=Math.round(b*1e3))})}),e}var Fd,HS,iQr,Ga,Wh,Be,aH,aQr,oQr,AIt,DIt=ie(()=>{Wt();Kt();oi();$u();fs();Fd="$$$",HS="&",iQr=!1,Ga=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),Wh=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});Be={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(日[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(日[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|日[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/日[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:季|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五六七八九十]+)\s*季/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:季|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|劇場版|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|无修|未删减|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五六七八九十]+\s*季|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|劇場版|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[季S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[季s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},aH=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],aQr=[{regex:/(?:第)?\s*(\d+)\s*(?:季|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|劇場版|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(续篇|续集)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],oQr=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];AIt=new Map});function kIt(e,t=Date.now()){let r=Number(e);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(t)||Date.now())}function TQr(e=""){return U9(vS(e)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function bQr(e=""){let t=String(e||"").trim();if(!t)return"";let r=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(t.length/4)*4,"=");return kd(yS(r))}function nk(e){return typeof TextEncoder<"u"?new TextEncoder().encode(e):vS(e)}function NQr(e){return typeof TextDecoder<"u"?new TextDecoder().decode(e):kd(e)}function VIt(e,t){let r=new Uint8Array(e.length);for(let n=0;n>=1}return r}function PQr(e){let t=new Uint8Array(16);for(let r=0;r<4;r++){let n=e.slice(4*r,4*r+4);t[4*r+0]=ui(n[0],2)^ui(n[1],3)^n[2]^n[3],t[4*r+1]=n[0]^ui(n[1],2)^ui(n[2],3)^n[3],t[4*r+2]=n[0]^n[1]^ui(n[2],2)^ui(n[3],3),t[4*r+3]=ui(n[0],3)^n[1]^n[2]^ui(n[3],2)}return t}function LQr(e){let t=new Uint8Array(16);for(let r=0;r<4;r++){let n=e.slice(4*r,4*r+4);t[4*r+0]=ui(n[0],14)^ui(n[1],11)^ui(n[2],13)^ui(n[3],9),t[4*r+1]=ui(n[0],9)^ui(n[1],14)^ui(n[2],11)^ui(n[3],13),t[4*r+2]=ui(n[0],13)^ui(n[1],9)^ui(n[2],14)^ui(n[3],11),t[4*r+3]=ui(n[0],11)^ui(n[1],13)^ui(n[2],9)^ui(n[3],14)}return t}function MQr(e,t){let r=new Uint8Array(e);r=RC(r,t,0);for(let n=1;n<=9;n++)r=k9(r),r=MIt(r),r=PQr(r),r=RC(r,t,n);return r=k9(r),r=MIt(r),r=RC(r,t,10),r}function kQr(e,t){let r=new Uint8Array(e);r=RC(r,t,10);for(let n=9;n>=1;n--)r=kP(r),r=MP(r),r=RC(r,t,n),r=LQr(r);return r=kP(r),r=MP(r),r=RC(r,t,0),r}function BQr(e,t,r){let n=OQr(e,16),s=B9(t),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;o{oa();BIt="6.8.2",IQr="a_8280",RQr="xiaomi",UIt="Redmi Note 12",CQr="Xiaomi",FIt="14",xQr=`HanjuTV/${BIt} (${UIt}; Android ${FIt}; Scale/2.00)`,$It=14*24*60*60*1e3,PIt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",qIt="f349wghhe784tqwh",HIt="d3w8hf94fidk38lk",wQr="34F9Q53w/HJW8E6Q",LIt="fb3597b87601d5a7"});var tr,Ai=ie(()=>{Kt();eE();fs();tr=class{constructor(){}async search(t){throw new Error("Method 'search' must be implemented")}async getEpisodes(t){throw new Error("Method 'Episodes' must be implemented")}async handleAnimes(t,r,n,s=null,i=null){throw new Error("Method 'handleAnimes' must be implemented")}async getEpisodeDanmu(t){throw new Error("Method 'getEpisodeDanmu' must be implemented")}async getEpisodeDanmuSegments(t){throw new Error("Method 'getEpisodeDanmuSegments' must be implemented")}async getEpisodeSegmentDanmu(t){throw new Error("Method 'getEpisodeSegmentDanmu' must be implemented")}formatComments(t){throw new Error("Method 'formatComments' must be implemented")}async getComments(t,r,n=!1,s=null){if(n)return s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),R("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),await this.getEpisodeDanmuSegments(t);s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`),R("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`);let i=await this.getEpisodeDanmu(t);s&&await s(85,`\u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),R("info",`[system] [Base] \u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let a=this.formatComments(i);return s&&await s(100,`\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),R("info",`[system] [Base] \u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),QP(a,r)}async getSegmentComments(t,r=null){r&&await r(5,`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${t.type}\u5F39\u5E55`),R("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${t.type}\u5F39\u5E55`);let n=await this.getEpisodeSegmentDanmu(t);r&&await r(85,`\u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),R("info",`[system] [Base] \u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let s=this.formatComments(n);return r&&await r(100,`\u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),R("info",`[system] [Base] \u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),QP(s,t.type)}sortAndPushAnimesByYear(t,r){t.filter(n=>n!==null).sort((n,s)=>{let i=zA(n.animeTitle),a=zA(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=Nde(n.animeTitle),c=Nde(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}}});function bn(e){let t=parseInt(e);return isNaN(t)||t<1900||t>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${t}-01-01T00:00:00Z`}function jS(e){let t=e.split(":").map(Number),r=0;return t.length===3?r=t[0]*3600+t[1]*60+t[2]:t.length===2?r=t[0]*60+t[1]:r=t[0],r}var Ro=ie(()=>{});var sk,XIt=ie(()=>{Ai();Wt();Kt();Hr();Ro();oi();fs();sk=class extends tr{async get360Zongyi(t,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await Me(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(R("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}R("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return R("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(t,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${t}&id=${r}&site=${n}`,a=(await Me(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){R("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(t,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${t}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await Me(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){R("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(t,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(t,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(R("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return R("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(t,r,n){try{let s=JSON.stringify([{cat_id:String(t),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await Me(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return R("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;dd.url)}return[]}catch(s){return R("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(t){try{let n=(await Me(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(t)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),R("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),R("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return R("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[360kan] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.titleTxt,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))F.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let h=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(F.vodAllowedPlatforms.includes(l.seriesSite))for(let p=0;p0)for(let _ of g)d.push({name:_.name,url:_.url,title:`\u3010${p}\u3011 \u7B2C${_.name}\u96C6`,sort:_.name});else try{let _=await this.getNumber(f,m,p);if(_&&Number(_)>0){let y=await this.getEpisodesV1(f,m,p,_);if(y&&y.length>0)for(let A of y)d.push({name:A.name,url:A.url,title:`\u3010${p}\u3011 \u7B2C${A.name}\u96C6`,sort:A.name})}}catch(_){R("error",`[360kan] fallback detail fetch failed for site ${p}: ${_&&_.message?_.message:_}`)}}catch(m){R("error",`[360kan] failed to fetch episodesv2 for site ${p}: ${m&&m.message?m.message:m}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async h=>F.vodAllowedPlatforms.includes(h)?(await Promise.all(l.playlinks_year[h].map(async m=>await this.get360Zongyi(l.titleTxt,l.id,h,m)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:bn(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),or({...f,links:d},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){}formatComments(t){}}});var ik,JIt=ie(()=>{Ai();Wt();Kt();Hr();Ro();oi();fs();ik=class extends tr{async getVodAnimes(t,r,n){try{let s=Vnt(t),i=encodeURIComponent(s),a=await Me(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){R("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return R("info",`[VOD] ${n} response: \u2193\u2193\u2193`),Ri(o),{serverName:n,list:o.list}}else return R("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return R("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(t,r){let n=r.map(i=>this.getVodAnimes(t,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(t,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(t,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return R("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return R("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];R("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return R("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];R("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return R("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return R("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(t,r=null,n=null){return!F.vodServers||F.vodServers.length===0?[]:F.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(t,F.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(t,F.vodServers)}async getEpisodes(t){}async handleAnimes(t,r,n,s,i=null,a=null){let o=[];if(!t||!Array.isArray(t))return R("error","[VOD] sourceAnimes is not a valid array"),[];let c=t.filter(d=>Zt(d.vod_name,r,a)),u=a!==null?a:fr(r);if(u!==null){let d=c.filter(f=>{let h=er(f.vod_name).season;return h===u||u===1&&h===null});d.length>0&&(c=d,R("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(_=>_==="mgtv"?"imgo":_==="bilibili"?"bilibili1":_);let h=d.vod_play_url.split("$$$"),p=f.map((_,y)=>F.vodAllowedPlatforms.includes(_)?y:-1).filter(_=>_!==-1),m=[],g=0;for(let _ of p){let y=f[_],A=h[_].split("#");for(let E of A){let v=E.split("$");g++,m.push({name:g.toString(),url:v[1],title:`\u3010${y}\u3011 ${v[0]}`})}}if(m.length>0){let _={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:bn(d.vod_year),episodeCount:m.length,rating:0,isFavorited:!0,source:"vod"};o.push(_),or({..._,links:m},i),F.animes.length>F.MAX_ANIMES&&ur()}}catch(f){R("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(t){}formatComments(t){}}});async function ZIt(e){let t="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};F.doubanCookie&&(r.Cookie=F.doubanCookie);try{let n=await Me(`${t}${e}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return R("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function eRt(e,t={}){let r="https://api.douban.com/v2";try{let n=await Gn(`${r}${e}`,JSON.stringify({...t,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return R("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function tRt(e,t=20){let r=`/search?q=${e}&start=0&count=${t}&type=movie`;return await ZIt(r)}async function rRt(e,t=20){return await eRt("/movie/search",{q:e,start:0,count:t})}async function nRt(e){let t=`/movie/${e}?for_mobile=1`;return await ZIt(t)}async function sRt(e){let t=`/movie/imdb/${e}`;return await eRt(t)}var eSe=ie(()=>{Kt();Hr();Wt()});async function iRt(e){let t="https://api.imdbapi.dev";try{let r=await Me(`${t}${e}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return R("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function aRt(e){let t=`/titles/${e}/seasons`;return await iRt(t)}async function oRt(e,t){let r=`/titles/${e}/episodes?season=${t}`;return await iRt(r)}var cRt=ie(()=>{Kt();Hr()});var ak,uRt=ie(()=>{Ai();Kt();eSe();TC();cRt();ak=class extends tr{constructor(t){super("BaseSource"),this.doubanSource=t}async _getDoubanInfo(t,r,n){if(!t)return;let s=await sRt(t);if(!s||!s?.data)return;let i=s?.data?.id;if(i){let o=i.split("/").pop(),c=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:c,target:{cover_url:s.data?.image,title:s.data?.alt_title}})}}async getDoubanIdByTmdbId(t,r){try{let n=[],i=(await dIt(t,r)).data?.imdb_id;if(!i)return[];if(t==="movie")await this._getDoubanInfo(i,t,n);else{let a=await aRt(i);R("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;R("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await oRt(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,t,n)}catch(l){R("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return R("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(t){try{let n=(await nH(t)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===t)),R("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return R("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return R("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){}async handleAnimes(t,r,n,s=null,i=null){return this.doubanSource.handleAnimes(t,r,n,s,i)}async getEpisodeDanmu(t){}formatComments(t){}}});var ok,lRt=ie(()=>{Ai();Kt();eSe();fs();ok=class extends tr{constructor(t,r,n,s,i){super("BaseSource"),this.tencentSource=t,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(t){try{let n=(await tRt(t))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){R("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await rRt(t))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),R("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return R("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(t){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[t.subtype]||t.subtype,s=t.images?.large||t.images?.medium||t.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=t.directors?.map(u=>u.name).join(" ")||"",o=t.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${t.year} / ${t.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(t.id),target:{rating:{count:t.collect_count||0,max:t.rating?.max||10,star_count:t.rating?.stars?parseInt(t.rating.stars)/10:0,value:t.rating?.average||0},controversy_reason:"",title:t.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${t.subtype==="movie"?"movie":"tv"}/${t.id}`,cover_url:i,year:String(t.year||""),card_subtitle:c,id:String(t.id),null_rating_reason:""},target_type:t.subtype==="movie"?"movie":"tv"}}async getEpisodes(t){}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Douban] sourceAnimes is not a valid array"),[];let o=t.filter(l=>{let d=l?.target?.title||"";return Zt(d,r,i)}),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",h=er(f).season;return h===c||c===1&&h===null});l.length>0&&(o=l,R("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;R("info","[Douban] doubanId: ",d,l?.target?.title,f);let h=await nRt(d),p=[];for(let m of h.data?.vendors??[]){if(!m)continue;R("info","[Douban] vendor uri: ",m.uri),h.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":h.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&h.data?.genres.includes("\u52A8\u753B")&&h.data?.countries.some(_=>_.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&h.data?.genres.includes("\u52A8\u753B")&&h.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&h.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&h.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&h.data?.countries.some(_=>_.includes("\u4E2D\u56FD"))?f="\u534E\u8BED\u7535\u5F71":f==="\u7535\u5F71"?f="\u5916\u8BED\u7535\u5F71":f==="\u7535\u89C6\u5267"&&h.data?.countries.some(_=>_.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&h.data?.countries.some(_=>["\u65E5\u672C","\u97E9\u56FD"].includes(_))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&h.data?.countries.some(_=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(_))&&(f="\u6B27\u7F8E\u5267");let g=[{title:h.data?.title,year:h.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(m.id){case"qq":{let _=new URL(m.uri).searchParams.get("cid");_&&(g[0].provider="tencent",g[0].mediaId=_,await this.tencentSource.handleAnimes(g,h.data?.title,a,s,i));break}case"iqiyi":{let _=new URL(m.uri).searchParams.get("tvid");_&&(g[0].provider="iqiyi",g[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${_}`:_,await this.iqiyiSource.handleAnimes(g,h.data?.title,a,s,i));break}case"youku":{let _=new URL(m.uri).searchParams.get("showid");_&&(g[0].provider="youku",g[0].mediaId=_,await this.youkuSource.handleAnimes(g,h.data?.title,a,s,i));break}case"bilibili":{let _=new URL(m.uri).pathname.split("/").pop();_&&(g[0].provider="bilibili",g[0].mediaId=`ss${_}`,await this.bilibiliSource.handleAnimes(g,h.data?.title,a,s,i));break}case"miguvideo":{let _=null,A=decodeURIComponent(m.uri).match(/"contentID":"([^"]+)"/);A&&A[1]&&(_=A[1]),_&&(g[0].provider="migu",g[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${_}/1`,await this.miguSource.handleAnimes(g,h.data?.title,a,s,i));break}}}return p}catch(d){return R("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){}formatComments(t){}}});var Eg,ck,uk,ec,lk,dRt=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();Eg=null,ck=0,uk=0,ec={search:"WIN",detail:"TV",danmu:"TV"},lk=class extends tr{constructor(){super(),this.isBatchMode=!1}API_CONFIG={TV_SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",MAC_HOST:"api.cluuid.cn",MAC_DANMU_HOST:"static-dm.lequkeji.com",MAC_VERSION:"1.2.3",MAC_USER_AGENT:"%E4%BA%BA%E4%BA%BA%E8%A7%86%E9%A2%91%20for%20Mac/1.0 CFNetwork/3860.600.21 Darwin/25.5.0",MAC_CLIENT_TYPE:"mac_rrsp",WIN_HOST:"api.pleasfun.com",WIN_DANMU_HOST:"static-dm.lequkeji.com",WIN_VERSION:"1.24.2",WIN_USER_AGENT:"Boost.Beast/351",WIN_CLIENT_TYPE:"win_rrsp_gw",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let t="aY",r=24-t.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=t;for(let i=0;iMath.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let t=Eg;Eg=this.generateRandomAliId(),ck=0,uk=Math.floor(Math.random()*31)+30,t?R("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${t} -> ${Eg}`):R("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${Eg}`),R("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${uk} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){Eg||this.rotateAliId(),ck>=uk&&(R("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${ck}/${uk})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),ck++,R("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${ck}/${uk} (\u5F53\u524DID: ...${Eg.slice(-6)})`)}getAliId(){return Eg||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),Eg}generateTvHeaders(t,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:t.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}buildMacHeaders(){return{aliId:this.generateMacAliId(),ct:this.API_CONFIG.MAC_CLIENT_TYPE,cv:this.API_CONFIG.MAC_VERSION,token:"",Accept:"*/*","Accept-Language":"zh-CN,zh-Hans;q=0.9","User-Agent":this.API_CONFIG.MAC_USER_AGENT}}buildWinHeaders(){return{aliId:this.generateWinAliId(),ct:this.API_CONFIG.WIN_CLIENT_TYPE,cv:this.API_CONFIG.WIN_VERSION,token:"","Content-Type":"application/json","User-Agent":this.API_CONFIG.WIN_USER_AGENT}}generateSignature(t,r,n,s,i,a,o,c){let u=`${t.toUpperCase()} aliId:${r} ct:${n} -cv:${i} -t:${s} -${a}?${o}`;return kYe(u,c)}buildSignedHeaders({method:t,url:r,params:n={},deviceId:i,token:s}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=xYe(r),u=zse(n),c=Date.now(),d=this.generateSignature(t,i,a.client_type,a.client_version,c,o,u,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:i,clientType:a.client_type,t:String(c),aliId:i,umid:i,token:s||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async renrenHttpGet(t,{params:r={},headers:n={}}={}){let i=uw(t,r);return await Ie(i,{headers:n,retries:1})}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}async renrenRequest(t,r,n={}){let i=this.generateDeviceId(),s=this.buildSignedHeaders({method:t,url:r,params:n,deviceId:i});return await Ie(r+"?"+zse(n),{headers:s,retries:1})}}});var o4r,Kv,lyt,is,rO,dyt=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();U0e();o4r={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Kv=1e8,lyt=6e4,is=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),rO=class extends Tt{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmupAttempted=!1}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(t){return o4r[t]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await Vgt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await Kgt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(t,r={}){let n=await this.buildTvHeaders(),i=await Ie(`${this.tvHost}${t}`,{headers:n.headers,timeout:1e4,retries:1,...r});return F0e(i?.data,n.uid)}logError(t,r){x("error",`${t}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(t=[],r=""){let n=C8(r);return Array.isArray(t)?t.map(i=>({...i,_sourceLabel:n})):[]}async tryGet(t,r,n){try{return await t()}catch(i){return n&&x("warn",`${n}: ${i.message}`),r}}normalizeSearchItems(t=[]){return Array.isArray(t)?t.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,i=r.name||r.title||r.seriesName||r.showName;if(!n||!i)return null;let s=typeof r.image=="object"&&r.image!==null?r.image:{},a=s.thumb||s.poster||s.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(i),image:{...s,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(t=[]){return Array.isArray(t)?t.map((r,n)=>{if(!r||typeof r!="object")return null;let i=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!i)return null;let s=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(s),o=r.pid||r.programId||r.episodeId||r.id||"",u=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(i),pid:o?String(o):"",eid:u?String(u):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(t=[]){return this.normalizeEpisodes(t).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(t=[]){return this.normalizeEpisodes(t).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(t){let r=t?.seriesData?.seriesList||t?.seriesList||t?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(t=[]){let r=new Map;for(let n of t){if(!n?.sid)continue;let i=String(n.sid);r.has(i)||r.set(i,n)}return Array.from(r.values())}isMergeableSearchPair(t,r,n=""){return!t?.name||!r?.name||n&&(!Mt(t.name,n)||!Mt(r.name,n))?!1:Mt(t.name,r.name)&&Mt(r.name,t.name)}buildSearchCandidate(t,r,n=""){if(!t?.sid)return null;let i=String(t.sid),s=String(n||"").trim(),a=r===is.MERGED?yn(`hxq:${i}|tv:${s}`):yn(i);return{...t,animeId:a,_variant:r,...s?{tvSid:s}:{}}}mergeSearchCandidates(t,r=[],n=[]){let i=this.dedupeBySid(r),s=this.dedupeBySid(n),a=p=>{let h=[],m=[];for(let y of p)(Mt(y?.name||"",t)?h:m).push(y);return{matched:h,unmatched:m}},o=a(i),u=a(s),c=o.matched.length+u.matched.length>0,l=[],d=new Set;for(let p of o.matched){let h=u.matched.find(m=>!d.has(String(m.sid))&&this.isMergeableSearchPair(p,m,t));h?(d.add(String(h.sid)),l.push(this.buildSearchCandidate(p,is.MERGED,h.sid))):l.push(this.buildSearchCandidate(p,is.HXQ))}u.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,is.TV))}),c?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,is.HXQ)).filter(Boolean),...u.unmatched.map(p=>this.buildSearchCandidate(p,is.TV)).filter(Boolean)):l.push(...i.map(p=>this.buildSearchCandidate(p,is.HXQ)).filter(Boolean),...s.map(p=>this.buildSearchCandidate(p,is.TV)).filter(Boolean));let f=p=>p.map(h=>h.name);return{resultList:l,stats:{s5Total:i.length,s5Matched:o.matched.length,tvTotal:s.length,tvMatched:u.matched.length,mergedCount:c?l.filter(p=>p?._variant===is.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(u.matched),tvUnmatchedList:f(u.unmatched)}}}async extractFromPayload(t,r,n){if(!t||typeof t!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof t.data=="string"&&t.data.length>0){let s;try{s=await F0e(t,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(s);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let i=this.extractSearchItems(t);if(i.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return i}async warmupMobileIdentity(t){try{await Ie(`${this.appHost}/api/common/configs`,{headers:t,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let t=await this.buildMobileHeaders();await this.warmupMobileIdentity(t.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(t){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),i=encodeURIComponent(t),s=await Ie(`https://hxqapi.hiyun.tv/api/search/s5?k=${i}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,r,"s5")}async searchWithTvApi(t){let r=encodeURIComponent(t),n=await this.buildTvHeaders(),i=await Ie(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,n.uid,"tv")}async search(t){try{let r=String(t||"").trim();if(!r)return[];let[n,i]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:s,stats:a}=this.mergeSearchCandidates(r,n,i),o=a.s5Matched+a.tvMatched;return s.length>0&&o===0?(x("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):s.length===0?(x("info","hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(x("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),x("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),x("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),s.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(t,r,n,i){try{let s=String(t||"").trim();if(!s)return null;let a=await this.tryGet(()=>r(s),null,i);return a||(x("info",`${n}: series \u4E0D\u5B58\u5728`),null)}catch(s){return this.logError(i,s),null}}async getHxqDetail(t){return this.getSeriesDetail(t,async r=>(await Ie(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(t){return this.getSeriesDetail(t,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(t){try{let r=String(t||"").trim();if(!r)return[];let n=[async()=>{let s=await Ie(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(s?.data?.playItems)?s.data.playItems:[])},async()=>{let a=(await Ie(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await Ie(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],i=[];for(let s of n){if(i.length>0)break;i=await this.tryGet(s,[])}return i.length===0?(x("info","getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):i.sort((s,a)=>s.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(t){try{let r=String(t||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let i=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(i?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(x("info","getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((i,s)=>i.serialNo-s.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(t,...r){let n=[t?.updateTime,t?.publishTime,...r.map(i=>i?.updateTime),...r.map(i=>i?.publishTime)];for(let i of n){if(!i)continue;let a=new Date(i).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(t,r=""){let n=String(r||"").trim();return n?`\u7B2C${t}\u96C6\uFF1A${n}`:`\u7B2C${t}\u96C6`}buildEpisodeLink(t,r){let n=t?.serialNo??r?.serialNo??1,i=this.buildEpisodeTitle(n,t?.title||r?.title||""),s="";if(t?.pid&&r?.eid){let a=Qgt(t.pid,r.eid);s=a?`hanjutv:${a}`:""}else t?.pid?s=`hxq:${t.pid}`:r?.eid&&(s=`tv:${r.eid}`);return s?{name:i,url:s,title:`\u3010hanjutv\u3011 ${i}`}:null}mergeVariantEpisodes(t=[],r=[]){let n=new Map(t.map(a=>[Number(a.serialNo),a])),i=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...i.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),i.get(a))).filter(Boolean)}buildAnimeSummary(t,r,n,i){let s=this.getCategory(r?.category??t?.category),a=this.resolveAnimeYear(t,r);return{animeId:i,bangumiId:String(i),animeTitle:`${t.name}(${a})\u3010${s}\u3011from hanjutv`,type:s,typeDescription:s,imageUrl:t?.image?.thumb||"",startDate:Wr(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(t){if(!t)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(t),this.getHxqEpisodes(t)]);return{detail:r,episodes:n}}async getTvBundle(t){if(!t)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(t),this.getTvEpisodes(t)]);return{detail:r,episodes:n}}async buildAnimePayload(t){let r=t?._variant||is.HXQ,n=String(t?.sid||"").trim(),i=String(t?.tvSid||"").trim(),s=i||(r===is.TV?n:""),a=Number(t?.animeId),o=r===is.MERGED&&n&&i?Number.isFinite(a)&&a>0?a:yn(`hxq:${n}|tv:${i}`):null,u=(r===is.HXQ||r===is.MERGED)&&n,c=(r===is.TV||r===is.MERGED)&&s,[l,d]=await Promise.all([u?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),c?this.getTvBundle(s):Promise.resolve({detail:null,episodes:[]})]);if(r===is.MERGED&&n&&i){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let p=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(t,p,f,o),links:f}}}if((r===is.HXQ||r===is.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(t,l.detail,f,o??yn(n)),links:f}}if((r===is.TV||r===is.MERGED)&&s){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(t,d.detail,f,o??yn(s)),links:f}}return null}async handleAnimes(t,r,n,i=null,s=null){if(!Array.isArray(t))return x("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[];return await Promise.all(t.filter(o=>Mt(o.name,r)).map(async o=>{try{let u=await this.buildAnimePayload(o);if(!u||!u.summary||!Array.isArray(u.links)||u.links.length===0)return;a.push(u.summary),Bt({...u.summary,links:u.links},s),L.animes.length>L.MAX_ANIMES&&qt()}catch(u){x("error",`[Hanjutv] Error processing anime: ${u.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(t){let r=String(t?.id||"").trim();if(!r)return[];let n=[];if(!t.preferTv){let i=this.getDanmuHeaders();for(let s of this.danmuHosts){let a=[];try{let o=0,u=0,c=lyt,l=0,d=240;for(;u0&&a.push(...p);let h=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",m=Number(f?.data?.nextAxis??Kv),y=Number(f?.data?.lastId??o);if(!Number.isFinite(m)||m<=u||m>=Kv)break;if(Number.isFinite(y)&&y>o&&(o=y),u=m,!h){if(p.length===0)break;c=u+lyt}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${s})`,o),a.length>0){n=a;break}}}}if(n.length===0){let i=0,s=0,a=0,o=120;for(;s0&&n.push(...c);let l=Number(u.more??0)===1||u.more===!0||u.more==="1",d=Number(u.nextAxis??Kv),f=Number(u.lastId??i);if(!Number.isFinite(d)||d<=s||d>=Kv||(Number.isFinite(f)&&f>i&&(i=f),s=d,l||(i=0),c.length===0&&!l))break}catch(u){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",u);break}}return n}async getEpisodeDanmu(t){let r=Ggt(t),n=Array.isArray(r?.refs)?r.refs.filter(s=>s?.id):[];if(n.length===0)return[];if(n.length===1){let s=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(s,n[0].rawId)}return(await Promise.all(n.map(async s=>{let a=await this.fetchEpisodeDanmuByRef(s);return this.attachDanmuSourceLabel(a,s.rawId)}))).flat()}async getEpisodeDanmuSegments(t){return x("info","\u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Et({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}}});var Vv,j0e=ve(()=>{ki();Ot();Ct();yr();Ba();Ei();Md();Zw();bi();rs();uy();Vv=class extends Tt{async search(t){try{let r=[];L.useBangumiData&&(r=Ld(t,["gamer","gamer_hk"]),x("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E`));let n=om(t),i=t,s=encodeURIComponent(n);x("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${t}`),x("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${n}`);let a=new AbortController,o=(async()=>{try{let f=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${s}`,p=L.makeProxyUrl(f),h=await Ie(p,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"}});if(h&&h.data&&h.data.anime&&h.data.anime.length>0){a.abort();let m=h.data.anime;for(let y of m)try{y._originalQuery=t,y._searchUsedTitle=n}catch{}return x("info",`bahamutSearchresp (original): ${JSON.stringify(m)}`),x("info",`[Bahamut] \u8FD4\u56DE ${m.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:m,source:"original"}}return x("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(f){return x("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:f.message,name:f.name,stack:f.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(A=>setTimeout(A,100));let f=await Xw(i,a.signal,"Bahamut");if(!f||!f.title)return x("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:p,cnAlias:h}=f;x("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${p}`);let y=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(p)}`,g=L.makeProxyUrl(y),v=await Ie(g,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:a.signal});if(v&&v.data&&v.data.anime&&v.data.anime.length>0){let A=v.data.anime;for(let _ of A)try{_._originalQuery=t,_._searchUsedTitle=p,_._tmdbCnAlias=h}catch{}return x("info",`bahamutSearchresp (TMDB): ${JSON.stringify(A)}`),x("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:A,source:"tmdb"}}return x("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(f){if(f.name==="AbortError")return x("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw f}})(),[c,l]=await Promise.all([o,u]),d=[];if(c.success?d=c.data:l.success?d=l.data:x("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),d.length>0&&r.length>0)for(let f of d){if(!f||!f.acg_sn)continue;let p=r.find(h=>String(f.acg_sn)===String(h.siteId)||f.title&&h.title===f.title);if(p){let m=(p.titles.find(y=>y&&y.includes(t))||p.titles[1]||p.title)+(p.titleSuffix||"");f.title=m,f._displayTitle=m,f.aliases=[...p.titles],f._typeStr=p.typeStr,x("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${f.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return d}catch(r){return x("error","getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${t}`,n=L.makeProxyUrl(r),i=await Ie(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"}});return!i||!i.data?(x("info","getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!i.data.data||!i.data.data.video||!i.data.data.anime?(x("info","getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[]):(x("info",`getBahamutEposides: ${JSON.stringify(i.data.data)}`),i.data.data)}catch(r){return x("error","getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,i=null){let s=[],a=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=om(r);function o(f,p,h){if(!f)return!1;let m=String(f),y=String(p||""),g=String(h||"");if(L.strictTitleMatch){if(iy(m,y)||g&&iy(m,g))return!0;try{if(iy(m,om(y))||iy(m,ln(y))||g&&(iy(m,om(g))||iy(m,ln(g))))return!0}catch{}return!1}let v=ta(m),A=ta(y),_=g?ta(g):"";if(v.includes(A)||_&&v.includes(_))return!0;try{if(v.includes(ta(om(y)))||v.includes(ta(ln(y)))||_&&(v.includes(ta(om(g)))||v.includes(ta(ln(g)))))return!0}catch{}try{if(v.toLowerCase().includes(A.toLowerCase())||_&&v.toLowerCase().includes(_.toLowerCase()))return!0}catch{}return!1}let c=(Array.isArray(t)?t:[]).filter(f=>{let p=f.title||"",h=f._searchUsedTitle||f._originalQuery||"";return a||f._searchUsedTitle&&f._searchUsedTitle!==r?(x("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${p}`),!0):o(p,r,h)});c.forEach(f=>{f._originalTitleAlias=f.title?ln(f.title):""});let l=c.length>0?c[0]._tmdbCnAlias:null;Jw(c,l);let d=await Promise.all(c.map(async f=>{try{let p=await this.getEpisodes(f.video_sn),h=p.video,m=null;p.anime.episodes&&(m=p.anime.episodes[0]||Object.values(p.anime.episodes)[0]);let y=[];if(m&&Array.isArray(m))for(let g of m){let v=`\u7B2C${g.episode}\u96C6`;y.push({name:g.episode.toString(),url:g.videoSn.toString(),title:`\u3010bahamut\u3011 ${v}`})}if(y.length>0){let g=(f.info||"").match(/(\d{4})/),v=f._displayTitle||ln(f.title),A=Array.isArray(f.aliases)?[...f.aliases]:[];f._originalTitleAlias&&f._originalTitleAlias!==v&&!A.includes(f._originalTitleAlias)&&A.push(f._originalTitleAlias);let _=f._typeStr||"\u52A8\u6F2B",E=p.anime&&p.anime.title||h&&h.title||"";E.includes("[\u96FB\u5F71]")?_="\u5267\u573A\u7248":E.includes("[\u7279\u5225\u7BC7]")&&(_="OVA");let S={animeId:f.video_sn,bangumiId:String(f.video_sn),animeTitle:`${v}(${(f.info.match(/(\d{4})/)||[null])[0]})\u3010${_}\u3011from bahamut`,aliases:A,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:f.cover,startDate:Wr(new Date(p.anime.seasonStart).getFullYear()),episodeCount:y.length,rating:h.rating,isFavorited:!0,source:"bahamut"};s.push(S),Bt({...S,links:y},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(p){x("error",`[Bahamut] Error processing anime: ${p.message}`)}}));return this.sortAndPushAnimesByYear(s,n),d}async getEpisodeDanmu(t){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${t}`,i=L.makeProxyUrl(n),s=await Ie(i,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:1});return s.data&&s.data.data&&s.data.data.danmu&&(r=s.data.data.danmu),r}catch(n){return x("error","fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(t){return x("info","\u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Et({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){let r={0:1,1:5,2:4};return t.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:L.danmuSimplifiedTraditional==="simplified"?ln(n.text):n.text,t:n.time/10}))}}});var zv,H0e=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();zv=class extends Tt{filterTencentSearchItem(t,r){if(!t.videoInfo||!t.doc)return null;let n=t.videoInfo,i=t.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let s=n.title.replace(//g,"").replace(/<\/em>/g,"");if(!s||!i)return null;let a=n.typeName;if(a.includes("\u77ED\u5267")||!["\u7535\u89C6\u5267","\u52A8\u6F2B","\u7535\u5F71","\u7EAA\u5F55\u7247","\u7EFC\u827A","\u7EFC\u827A\u8282\u76EE"].includes(a))return null;let u=a,c=!1,l=!1;n.coverDoc&&(n.coverDoc.richTags&&Array.isArray(n.coverDoc.richTags)&&n.coverDoc.richTags.forEach(p=>{p.text&&p.text.includes("3D")&&(c=!0),p.text&&p.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(p=>{p&&p.includes("3D")&&(c=!0),p&&p.includes("2D")&&(l=!0)})),c?u="3D"+u:l&&(u="2D"+u);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(p=>p.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(h=>s.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0;return{provider:"tencent",mediaId:i,title:s,type:u,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(t){try{x("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${t}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:t,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},i={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(t)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},s=await Nn(r,JSON.stringify(n),{headers:i});if(!s||!s.data)return x("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof s.data=="string"?JSON.parse(s.data):s.data;if(a.ret!==0)return x("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let c of a.data.areaBoxList)if(c.boxId==="MainNeed"&&c.itemList){x("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${c.itemList.length} \u4E2A\u9879\u76EE`),o=c.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(x("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let c of a.data.areaBoxList)if(c.itemList&&c.boxTitle&&Array.isArray(c.boxTitle.boxTitles)&&c.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=c.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(t));l.length>0?(x("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${t}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):x("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${t}" \u7684\u9879\u76EE`);break}}if(o.length===0)return x("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let u=[];for(let c of o){let l=this.filterTencentSearchItem(c,t);l&&u.push(l)}return x("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(r){return x("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{x("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${t}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:t,vid:"",lid:"",page_num:"",page_context:`cid=${t}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},i={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${t}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},s=await Nn(r,JSON.stringify(n),{headers:i});if(!s||!s.data)return x("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof s.data=="string"?JSON.parse(s.data):s.data;if(a.ret!==0)return x("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let c of a.data.module_list_datas){for(let l of c.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){x("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let u=[];if(o.length===0){if(x("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let c of a.data.module_list_datas)for(let l of c.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&u.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(u.length===0)return x("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];x("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${u.length} \u96C6`)}else{x("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let c of o){if(!c.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:t,vid:"",lid:"",page_num:"",page_context:c.page_context,detail_page_type:"1"}},d=await Nn(r,JSON.stringify(l),{headers:i});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let p of f.data.module_list_datas)for(let h of p.module_datas)if(h.item_data_lists&&h.item_data_lists.item_datas)for(let m of h.item_data_lists.item_datas)m.item_params&&m.item_params.vid&&m.item_params.is_trailer!=="1"&&u.push({vid:m.item_params.vid,title:m.item_params.title,unionTitle:m.item_params.union_title||m.item_params.title})}}}return x("info",`[Tencent] \u5171\u83B7\u53D6 ${u.length} \u96C6`),u}catch(r){return x("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Tencent] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.mediaId),c=[];for(let l=0;l0){let l=u[0].unionTitle||u[0].title||"\u7B2C1\u96C6",d=o.title,f=l.match(/\[.+版\]/);f&&l.includes(o.title)&&(d=`${o.title}${f[0]}`);let h={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${d}(${o.year})\u3010${o.type}\u3011from tencent`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"tencent"};s.push(h),Bt({...h,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Tencent] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}extractVid(t){let r=t;if(typeof t=="string"&&(t.startsWith("http")||t.includes("vid="))){let n=t.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let i=t.split("/");r=i[i.length-1].split(".")[0]}}return r}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",t);let r=this.extractVid(t);x("info",`vid: ${r}`);let n;try{n=await Ie(t,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return x("error","\u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let i=n.data.match(/]*>(.*?)<\/title>/i),s=i?i[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";x("info",`\u6807\u9898: ${s}`);let a=await this.getEpisodeDanmuSegments(t);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let u=[];for(let l of o)u.push(Ie(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let c=[];try{(await Promise.allSettled(u)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,c.push(...f.barrage_list)})}catch(l){return x("error","\u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return $i(c),c}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",i=this.extractVid(t);x("info",`\u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${i}`);let s;try{s=await Ie(r+i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(c){return c.response?.status===404?new Et({type:"qq",segmentList:[]}):(x("error","\u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",c),new Et({type:"qq",segmentList:[]}))}let a=typeof s.data=="string"?JSON.parse(s.data):s.data,o=[],u=Object.values(a.segment_index);for(let c of u)o.push({type:"qq",segment_start:(Number(c.segment_start)||0)/1e3,segment_end:(Number(c.segment_name.split("/").pop())||0)/1e3,url:`${n}${i}/${c.segment_name}`});return new Et({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=await Ie(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let i=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...i.barrage_list)}return n}catch(r){return x("error","\u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let i=JSON.parse(r.content_style);i.gradient_colors&&i.gradient_colors.length>0?n.color=parseInt(i.gradient_colors[0].replace("#",""),16):i.color&&i.color!=="ffffff"&&(n.color=parseInt(i.color.replace("#",""),16)),i.position===2?n.ct=5:i.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}}});var Qv,K0e=ve(()=>{ki();Ct();yr();bi();vs();Ba();Ei();Ot();rs();Qv=class e extends Tt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(t){try{x("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={key:t,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},i=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${Zs(r)}`,s=await Ie(i,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!s||!s.data)return x("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!a.data||!a.data.templates)return x("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[],u=a.data.templates;for(let c of u){let l=[];c.template===112&&c.intentAlbumInfos?(x("debug",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${c.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),l=c.intentAlbumInfos):[101,102,103].includes(c.template)&&c.albumInfo&&(x("debug",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${c.template})`),l=[c.albumInfo]);for(let d of l){let f=this._filterIqiyiSearchItem(d,t);f&&o.push(f)}}return x("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return x("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(t,r){if(!t.title)return null;if(t.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return x("debug",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${t.title}`),null;let n=t.channel||"",i="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))i="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))i="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))i="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))i="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))i="\u7535\u89C6\u5267";else return null;let s=!1,a=!1;if(t.metaTags&&Array.isArray(t.metaTags)&&t.metaTags.forEach(p=>{p.name==="3D"&&(s=!0),p.name==="2D"&&(a=!0)}),t.baseTags&&Array.isArray(t.baseTags)&&t.baseTags.forEach(p=>{p.value==="3D"&&(s=!0),p.value==="2D"&&(a=!0)}),s?i="3D"+i:a&&(i="2D"+i),i.includes("\u7535\u5F71")){let p=t.qipuId||t.playQipuId;if(!p)return x("debug",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${t.title}`),null;let h=null;if(t.year){let y=t.year.value||t.year.name;y&&typeof y=="string"&&y.length===4&&/^\d{4}$/.test(y)&&(h=parseInt(y))}let m=t.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:m,type:i,year:h,imageUrl:t.img||t.imgH,episodeCount:1,_qipuId:p}}let o=t.pageUrl;if(!o)return x("debug",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${t.title}`),null;let u=o.match(/v_(\w+?)\.html/);if(!u)return x("debug",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let c=u[1],l=null;if(t.year){let p=t.year.value||t.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(t.videos&&t.videos.length>0)d=t.videos.length;else if(t.subscriptContent){let p=t.subscriptContent.match(/(?:更新至|全|共)\s*(\d+)\s*(?:集|话|期)/);if(p)d=parseInt(p[1]);else{let h=t.subscriptContent.trim().match(/^(\d+)$/);h&&(d=parseInt(h[1]))}}let f=t.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:c,title:f,type:i,year:l,imageUrl:t.img||t.imgH,episodeCount:d}}async getEpisodes(t){try{if(x("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`),t.startsWith("movie_")){let p=t.substring(6);x("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let h=await this._getMovieVideoId(p);return h?(x("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${h}`),[{id:h,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${h}.html`}]):(x("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(t)?t:this._videoIdToEntityId(t);if(!r)return x("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${t}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let s=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${Zs(n)}`,a=await Ie(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return x("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return x("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let u=[],c=o.data.template.tabs||[];if(c.length===0)return x("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=c[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(x("debug",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){x("debug",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let h=p.data.data;if(!Array.isArray(h)){x("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let m of h)if(!(!m.videos||!Array.isArray(m.videos))){for(let y of m.videos)if(!(!y.data||!Array.isArray(y.data)))for(let g of y.data){if(g.content_type!==1)continue;let A=(g.play_url||"").match(/tvid=(\d+)/);if(!A)continue;let _=A[1],E=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",S=g.subtitle;S&&!E.includes(S)&&(E=`${E} ${S}`);let C=g.album_order,I=g.page_url;_&&E&&I&&u.push({id:_,title:E,order:C!==void 0?C:u.length,link:I})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){x("debug","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let h=p.data.data;for(let m of h){let y=m.videos;if(typeof y=="string"){x("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${y}`);try{let g=await Ie(y);y=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){x("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(y&&typeof y=="object"&&y.feature_paged)for(let g in y.feature_paged){let v=y.feature_paged[g];for(let A of v){if(A.content_type!==1)continue;let E=(A.play_url||"").match(/tvid=(\d+)/);if(!E)continue;let S=E[1],C=A.short_display_name||A.title||"\u672A\u77E5\u5206\u96C6",I=A.subtitle;I&&!C.includes(I)&&(C=`${C} ${I}`);let N=A.album_order,T=A.page_url;S&&C&&N&&T&&u.push({id:S,title:C,order:N,link:T})}}}}if(!d)return x("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(u.map(p=>[p.id,p])).values());return f.sort((p,h)=>p.order-h.order),x("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return x("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(t){try{let r={entity_id:t,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let i=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${Zs(r)}`;x("debug",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${i}`);let s=await Ie(i,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!s||!s.data)return x("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof s.data=="string"?JSON.parse(s.data):s.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let u=o.share_url.match(/v_(\w+)\.html/);if(u){let c=u[1];return x("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${c}`),c}}if(o.page_url){let u=o.page_url.match(/v_(\w+)\.html/);if(u){let c=u[1];return x("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${c}`),c}}}return x("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),x("debug",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return x("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(t){try{let r=parseInt(t,36),n=this._xorOperation(r),i=n<9e5?100*(n+9e5):n;return String(i)}catch(r){return x("error",`[iQiyi] \u5C06 video_id '${t}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(t){let r=t.toString(2),n=e.XOR_KEY.toString(2),i=r.split("").reverse(),s=n.split("").reverse(),a=[],o=Math.max(i.length,s.length);for(let c=0;cMt(o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.mediaId),c=[];for(let l of u){let d=l.link||`https://www.iqiyi.com/v_${o.mediaId}.html`;c.push({name:l.order.toString(),url:d,title:`\u3010qiyi\u3011 ${l.title}`})}if(c.length>0){let d={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||"N/A"})\u3010${o.type}\u3011from iqiyi`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"iqiyi"};s.push(d),Bt({...d,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[iQiyi] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",t);let r;try{r=await Ie(t,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(c){return x("error","\u8BF7\u6C42\u9875\u9762\u5931\u8D25:",c),[]}let n=r.data.match(/]*>(.*?)<\/title>/i),i=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";x("info",`\u6807\u9898: ${i}`);let s=await this.getEpisodeDanmuSegments(t);if(!s||!s.segmentList||s.segmentList.length===0)return[];let a=s.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let c of a)o.push(this.getEpisodeSegmentDanmu(c));let u=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{u.push(...d)})}catch(c){return x("error","\u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",c),[]}return $i(u),u}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",i;try{let l=t.match(/v_(\w+)/);if(!l)return x("error","\u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new Et({type:"qiyi",segmentList:[]});i=l[1],x("info",`tvid: ${i}`);let d=`${r}${i}?platformId=3&modeCode=intl&langCode=sg`,f=await Ie(d,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});i=(typeof f.data=="string"?JSON.parse(f.data):f.data).data.toString(),x("info",`\u89E3\u7801\u540E tvid: ${i}`)}catch(l){return x("error","\u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",l),new Et({type:"qiyi",segmentList:[]})}let s,a,o;try{let l=`${n}${i}`,d=await Ie(l,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=(typeof d.data=="string"?JSON.parse(d.data):d.data).data;s=p.durationSec,a=p.albumId,o=p.channelId||p.categoryId,x("info",`\u65F6\u957F: ${s}`)}catch(l){return x("error","\u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",l),new Et({type:"qiyi",segmentList:[]})}let u=Math.ceil(s/(60*5));x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${u}`);let c=[];for(let l=0;l(.*?)`,"g");return s.match(o)?.map(c=>c.substring(a.length+2,c.length-a.length-3))||[]},r=await Ie(t.url,{headers:{"Accpet-Encoding":"gzip","Content-Type":"application/xml","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},zlibMode:!0,retries:1}),i=[];if(r&&r.data){let s=r.data,a=n(s,"content"),o=n(s,"showTime"),u=n(s,"color"),c=n(s,"likeCount");i.push(...a.map((l,d)=>({content:l,showTime:o[d],color:u[d],like:parseInt(c[d])||0})))}return i}catch(r){return x("error","\u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return n.timepoint=parseFloat(r.showTime),n.color=parseInt(r.color,16),n.content=OYe(r.content),n.size=25,n.like=r.like,n})}}});var Gv,V0e=ve(()=>{ki();Ot();Ct();yr();bi();Ba();oy();vs();Ei();rs();Gv=class extends Tt{transformV2Color(t){if(!t)return-1;let n=vae(t.color_left),i=vae(t.color_right);return n===-1&&i===-1?-1:n===-1?i:i===-1?n:Math.floor((n+i)/2)}_extractMediaType(t){let r=(t||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(t){try{x("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${t}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(t)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,i=await Ie(n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json",Referer:"https://www.mgtv.com/"}});if(!i||!i.data)return x("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let s=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!s.data||!s.data.contents)return x("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of s.data.contents)if(o.type==="media")for(let u of o.data){if(u.source!=="imgo")continue;let c=u.url?u.url.match(/\/b\/(\d+)/):null;if(!c)continue;let l=c[1],d=u.title?u.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=u.desc&&u.desc[0]?u.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,h=u.desc&&u.desc[0]?u.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",m=this._extractMediaType(h);a.push({provider:"imgo",mediaId:l,title:d,type:m,year:p,imageUrl:u.img||null,episodeCount:u.videoCount||null})}return x("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return x("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{x("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${t}`);let r=[],n="",i=0,s=1;for(;i0&&r.push(...d.data.list.filter(f=>f.src_clip_id===t)),i===0&&(s=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,x("info",`[Mango] \u68C0\u6D4B\u5230 ${s} \u4E2A\u6708\u4EFD\u5206\u9875`)),i++,i{let l=`${c.t2||""} ${c.t1||""}`.trim();return c.isnew==="2"?(x("debug",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(x("debug",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),u=this._processVarietyEpisodes(o);return x("info",`[Mango] \u5171\u83B7\u53D6 ${u.length} \u96C6`),u}catch(r){return x("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(t){try{x("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${t}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${t}&month=&page=1&_support=10000000`,n=await Ie(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return x("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let i=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!i.data||!i.data.list||i.data.list.length===0)return x("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let s=i.data.list.find(a=>a.isIntact==="1");return s||(s=i.data.list.find(a=>a.isnew!=="2")),s||(s=i.data.list[0]),x("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${s.t3||s.t1||"\u6B63\u7247"}`),s}catch(r){return x("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(t){if(!t||t.length===0)return[];x("debug",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${t.length}`);let r=t.some(s=>{let a=`${s.t2||""} ${s.t1||""}`.trim();return/第\d+期/.test(a)});x("debug",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],i=new Map;for(let s of t){let a=`${s.t2||""} ${s.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),u=a.match(/第(\d+)期/),c=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,p=a.substring(a.indexOf(f)+f.length);/^(加更|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(p)?x("debug",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(i.set(s,[parseInt(l),d]),n.push(s),x("debug",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(u&&!c&&!/会员版|纯享版|特别版|独家版|加更|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|删减|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=u[1];i.set(s,[parseInt(l),""]),n.push(s),x("debug",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else x("debug",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){x("debug",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(s),x("debug",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((s,a)=>{let o=i.get(s)||[0,""],u=i.get(a)||[0,""];if(o[0]!==u[0])return o[0]-u[0];let c={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(c[o[1]]||0)-(c[u[1]]||0)}):n.sort((s,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},u=o(s),c=o(a);if(u===999999&&c===999999){let l=s.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return u-c}),x("debug",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Mango] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.title,r)).map(async o=>{try{if(o.type==="\u7535\u5F71"){let l=await this._getMovieEpisode(o.mediaId);if(!l)return;let d=`https://www.mgtv.com/b/${o.mediaId}/${l.video_id}.html`,f=l.t3||l.t1||"\u6B63\u7247",p=[{name:"1",url:d,title:`\u3010imgo\u3011 ${f}`}],m={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||"N/A"})\u3010${o.type}\u3011from imgo`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};s.push(m),Bt({...m,links:p},i),L.animes.length>L.MAX_ANIMES&&qt();return}let u=await this.getEpisodes(o.mediaId),c=[];for(let l=0;l0){let d={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||"N/A"})\u3010${o.type}\u3011from imgo`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"imgo"};s.push(d),Bt({...d,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Mango] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=[];for(let a of n)i.push(Ie(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let s=[];try{(await Promise.allSettled(i)).filter(u=>u.status==="fulfilled").map(u=>u.value&&u.value.data?u.value.data:null).filter(u=>u!==null).forEach(u=>{u=typeof u=="string"?JSON.parse(u):u,u.data?.items&&s.push(...u.data.items)})}catch(a){return x("error","\u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return $i(s),s}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",i="https://galaxy.bz.mgtv.com/rdbarrage",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=t.match(s),o;if(a)o=a[2].split("/").filter(Boolean);else return x("error","Invalid URL"),new Et({type:"imgo",segmentList:[]});let u=o[o.length-2],c=o[o.length-1].split(".")[0];x("info",`\u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${u}, vid: ${c}`);let l;try{let h=`${r}?cid=${u}&vid=${c}`;l=await Ie(h,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(h){return h.response?.status===404?new Et({type:"imgo",segmentList:[]}):(x("error","\u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h),new Et({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let h=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${c}&pid=&cid=${u}&ticket=`,m=await Ie(h,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),y=typeof m.data=="string"?JSON.parse(m.data):m.data;(!y.data||!y.data.cdn_list||!y.data.cdn_version)&&(x("warn","\u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let v=Math.ceil(Hv(f)/60),A=y.data.cdn_list.split(",")[0],_=y.data.cdn_version;for(let E=0;E{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}}});var Yv,z0e=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();Md();Zw();uy();Yv=class e extends Tt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(t){try{x("info",`\u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${t}`);let r=parseInt(L.vodRequestTimeout),n=new AbortController,i=setTimeout(()=>n.abort(),r),s=await Ie(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:n.signal,redirect:"follow"});clearTimeout(i);let a=s.url;return a&&a!==t?(x("info",`b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${a}`),a):(x("error","\u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),t)}catch(r){return x("error","\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",r),t}}async _getWbiMixinKey(){let t=Math.floor(Date.now()/1e3),r=e.WBI_MIXIN_KEY_CACHE;if(r.key&&t-r.timestamp(u+c)[d]).join("").substring(0,32);return r.key=l,r.timestamp=t,x("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return x("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(t,r){let n={...t};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(c=>{let l=n[c]??"";return`${encodeURIComponent(c)}=${encodeURIComponent(l)}`}).join("&")+r,u=ea(o);return n.w_rid=u,n}async _searchByType(t,r,n){try{x("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${t}'`);let i={keyword:t,search_type:r},s=this._getWbiSignedParams(i,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(s).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(s[d])}`).join("&")}`,u=await Ie(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:L.bilibliCookie||""}}),c=typeof u.data=="string"?JSON.parse(u.data):u.data;if(c.code!==0||!c.data?.result)return x("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${c.code})`),[];let l=[];for(let d of c.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let p=this._extractMediaType(d.season_type_name),h=p==="\u7535\u5F71"?1:d.ep_size||0,m=null;try{d.pubdate?typeof d.pubdate=="number"?m=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(m=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(m=new Date(d.pubtime*1e3).getFullYear())}catch{}let y=(d.title||"").replace(/<[^>]+>/g,"").replace(/&[^;]+;/g,A=>({"<":"<",">":">","&":"&",""":'"',"'":"'"})[A]||A).replace(/:/g,"\uFF1A").trim(),g=(d.org_title||"").replace(/<[^>]+>/g,"").replace(/&[^;]+;/g,A=>({"<":"<",">":">","&":"&",""":'"',"'":"'"})[A]||A).trim(),v={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:y,org_title:g,type:p,year:m,imageUrl:d.cover||null,episodeCount:h};d.eps&&d.eps.length>0&&(v._eps=d.eps),l.push(v)}return x("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(i){return x("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,i.message),[]}}_extractMediaType(t){let r=(t||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(t){let r=[];L.useBangumiData&&(r=Ld(t,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),x("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E`));let n=r.filter(i=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(i.matchedSiteKey));try{x("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${t}`);let i=await this._getWbiMixinKey(),s=this._searchByType(t,"media_bangumi",i),a=this._searchByType(t,"media_ft",i),o=Promise.resolve([]);this._hasBilibiliProxy()&&(x("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(t,n.length>0));let u=(await Promise.all([s,a,o])).flat(),c=[],l=new Set,d=new Set;for(let p of u){if(!p||!p.mediaId&&!p.season_id)continue;let h=r.find(y=>p.mdId&&p.mdId===`md${y.siteId}`||p.org_title&&y.title===p.org_title);if(h){let g=(h.titles.find(v=>v&&v.includes(t))||h.titles[1]||h.title)+(h.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...h.titles],p.type=h.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${h.siteId}`),x("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let m=p.mediaId||(p.season_id?`ss${p.season_id}`:null);m&&l.has(m)||(m&&l.add(m),c.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){x("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${f.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let p=f.map(async m=>{let y=await this._resolveMediaInfo(m.siteId),v=(m.titles.find(A=>A&&A.includes(t))||m.titles[1]||m.title)+(m.titleSuffix||"");return{provider:"bilibili",mediaId:y.seasonId||`md${m.siteId}`,mdId:`md${m.siteId}`,title:v,org_title:m.title,aliases:[...m.titles],_displayTitle:v,type:m.typeStr,year:m.begin?parseInt(m.begin.substring(0,4)):null,imageUrl:y.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(m.matchedSiteKey),isLocalPriority:!0}}),h=await Promise.all(p);for(let m of h){let y=m.mediaId;y&&l.has(y)||y&&(l.add(y),c.unshift(m))}}return x("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(i){return x("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",i.message),[]}}async _resolveMediaInfo(t){try{let r=await Ie(`https://api.bilibili.com/pgc/review/user?media_id=${t}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let i=n.result.media;return{seasonId:`ss${i.season_id}`,cover:i.cover||i.horizontal_picture||""}}}catch(r){x("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${t}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(t){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${t}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${t}`];for(let s of n)try{let a=await Ie(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:L.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],r.length>0))break}catch{}if(r.length===0)return x("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${t}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let i=r.map((s,a)=>{let o="";if(s.show_title)o=s.show_title;else{let u=s.title||String(a+1),c=s.long_title||"";o=/^\d+(\.\d+)?$/.test(u)?`\u7B2C${u}\u8BDD`:u,c&&c!==u&&(o+=` ${c}`)}return{vid:`${s.aid},${s.cid}`,id:s.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${s.id}`}});return x("info",`[Bilibili] \u83B7\u53D6\u5230 ${i.length} \u4E2A\u756A\u5267\u5206\u96C6`),i}async _getUgcEpisodes(t){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${t}`,n=await Ie(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:L.bilibliCookie||""}}),i=typeof n.data=="string"?JSON.parse(n.data):n.data;if(i.code!==0||!i.data)return x("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${t}):`,i.message),[];let s=i.data.pages||[];if(s.length===0)return x("info",`[Bilibili] \u89C6\u9891 bvid=${t} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=s.map((o,u)=>({vid:`${i.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${t}?p=${o.page}`}));return x("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return x("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${t}):`,r.message),[]}}async getEpisodes(t){if(t.startsWith("md")){let r=t.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let i=await this._getPgcEpisodes(n.seasonId.substring(2));return i._cover=n.cover,i}return[]}if(t.startsWith("ss")){let r=t.substring(2);return await this._getPgcEpisodes(r)}else if(t.startsWith("bv")){let r=t.substring(2);return await this._getUgcEpisodes(r)}return x("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${t}`),[]}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Bilibili] sourceAnimes is not a valid array"),[];t.forEach(u=>{u.aliases=u.aliases||[],u.title&&!u.aliases.includes(u.title)&&u.aliases.push(u.title),u.org_title&&!u.aliases.includes(u.org_title)&&u.aliases.push(u.org_title)});let a=t.length>0?t[0]._tmdbCnAlias:null;Jw(t,a);let o=t.filter(u=>u.isOversea||Mt(u.title,r)||u.aliases&&u.aliases.some(c=>Mt(c,r))).map(async u=>{try{let c=[],l=u.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(u._eps&&u._eps.length>0&&!l)c=u._eps.map((h,m)=>{let y;u.isOversea&&h.position?y=h.position.toString():y=h.index_title||h.index||(m+1).toString();let g=h.title||h.index_title||y,v=h.long_title||"",A=/^\d+(\.\d+)?$/.test(g)?`\u7B2C${g}\u8BDD`:g;v&&v!==g&&(A+=` ${v}`);let E=`https://www.bilibili.com/bangumi/play/ep${h.id||h.param}?season_id=${u.mediaId.substring(2)}`;return u.isOversea&&(E+="&area=hkmt"),{name:y,url:E,title:`\u3010bilibili1\u3011 ${A.trim()}`}}),c.sort((h,m)=>{let y=parseFloat(h.name),g=parseFloat(m.name);return!isNaN(y)&&!isNaN(g)?y-g:0}),x("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${c.length} \u96C6\u5206\u96C6`);else{let h=await this.getEpisodes(u.mediaId);if(h.length===0){x("info",`[Bilibili] ${u.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}c=h.map((m,y)=>{let g=m.link+`?season_id=${u.mediaId.substring(2)}`;return u.isOversea&&(g+="&area=hkmt"),{name:`${y+1}`,url:g,title:`\u3010bilibili1\u3011 ${m.title}`}})}if(c.length===0)return;let d=yn(u.mediaId),f=u._displayTitle||ln(u.title),p={animeId:d,bangumiId:u.mediaId,animeTitle:`${f}(${u.year||"N/A"})\u3010${u.type}\u3011from bilibili`,type:u.type,typeDescription:u.type,imageUrl:u.imageUrl,startDate:Wr(u.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"bilibili",aliases:u.aliases};s.push(p),Bt({...p,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}catch(c){x("error",`[Bilibili] \u5904\u7406 ${u.title} \u5931\u8D25:`,c.message)}});return await Promise.all(o),this.sortAndPushAnimesByYear(s,n),s}async _extractVideoInfo(t){x("info","\u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",t);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,s=t.match(i),a;if(s)a=s[2].split("/").filter(Boolean),a.unshift(""),x("info",a);else return x("error","Invalid URL"),null;let o,u,c,l;if(t.includes("video/"))try{let d=t.split("?")[1],f=1;if(d){let y=d.split("&");for(let g of y){let[v,A]=g.split("=");v==="p"&&(f=A||1)}}x("info",`p: ${f}`);let p;t.includes("BV")?p=`${r}?bvid=${a[2]}`:(u=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let h=await Ie(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof h.data=="string"?JSON.parse(h.data):h.data;if(m.code!==0)return x("error","\u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;c=m.data.duration,o=m.data.pages[f-1].cid}catch(d){return x("error","\u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(t.includes("bangumi/")&&t.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=t.split("?")[1]||"",p=null,h=!1;f.split("&").forEach(y=>{let[g,v]=y.split("=");g==="season_id"&&(p=v),g==="area"&&v==="hkmt"&&(h=!0)});let m=!1;if(!h){let y=await Ie(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result){let v=g.result.episodes.find(A=>A.id==d);v&&(o=v.cid,c=v.duration/1e3,l=v.share_copy,m=!0)}}if((!m||h)&&p&&this._hasBilibiliProxy()){try{let y=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await Ie(y,{headers:{Cookie:L.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),v=typeof g.data=="string"?JSON.parse(g.data):g.data;if(v.code===0&&v.result){let A=(v.result.episodes||v.result.main_section?.episodes||[]).find(_=>_.id==d);A&&(o=A.cid,u=A.aid,c=A.duration/1e3,l=A.long_title,m=!0)}}catch{}if(!m)try{let y=await Ie(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:L.bilibliCookie||""}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result?.main_section?.episodes){let v=g.result.main_section.episodes.find(A=>A.id==d);v&&(o=v.cid,u=v.aid,c=v.duration?v.duration/1e3:0,l=v.long_title,m=!0)}}catch{}}if(!o)return x("error","\u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!c&&c!==0&&(c=0)}catch(d){return x("error","\u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(t.includes("bangumi/")&&t.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;x("info",`\u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await Ie(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=typeof p.data=="string"?JSON.parse(p.data):p.data;if(h.code!==0)return x("error","\u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;if(!h.result.episodes||h.result.episodes.length===0)return x("error","\u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let m=h.result.episodes[0];o=m.cid,c=m.duration/1e3,l=m.share_copy,x("info",`\u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return x("error","\u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return x("error","\u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return x("info",`\u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${u}, duration=${c}`),{cid:o,aid:u,duration:c,title:l}}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=6,s=[];for(let a=0;athis.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),c=await Promise.all(u),l=!1;for(let d of c)d.status==="ok"&&d.value?s.push(...d.value):(x("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return s}async getEpisodeDanmuSegments(t){if(x("info","\u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),typeof t=="string"&&t.includes("/combine?")){let u=[],c=0,l=0,d=t.startsWith("http")?t:`https://www.bilibili.com${t}`,f=new URL(d);for(let[p,h]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let m=p.substring(3),[y,g]=h.split("-"),v=parseFloat(y)||0,A=parseFloat(g)||0,_=A-v;if(_<=0)continue;l+=_;let E=Math.ceil(A/360);for(let S=0;S0?Math.ceil(s/360):36;x("info",`maxLen: ${a}`);let o=[];for(let u=0;u0?Math.min((u+1)*360,s):(u+1)*360,url:c})}return new Et({type:"bilibili1",duration:s>0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=new URL(t.url),n=t.url.split("#")[0],i=await Ie(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:L.bilibliCookie},base64Data:!0,retries:1}),s=[];if(i&&i.data&&(s=RYe(i.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,u=parseFloat(a.get("combine_end"))||0,c=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of s){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=u){let p=f-o+c;if(d.p&&typeof d.p=="string"){let h=d.p.split(",");h[0]=p.toFixed(5),d.p=h.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return s}catch(r){throw r}}formatComments(t){return t.map(r=>(L.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=ln(r.m)),r.like=r.like_num,r))}_makeProxyUrl(t){return L.makeProxyUrl(t)}_hasBilibiliProxy(){return(L.proxyUrl||"").split(",").some(t=>{let r=t.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(t){return encodeURIComponent(t).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(t,r,n,i="Original",s=null){let o=(L.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((L.proxyUrl||"").includes("bilibili@")||(L.proxyUrl||"").includes("@")))return[];if(o){x("info",`[Bilibili-Proxy][${i}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let c={keyword:t,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:e.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(c).sort().map(m=>`${m}=${this._javaUrlEncode(String(c[m]))}`).join("&"),d=ea(l+e.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=L.makeProxyUrl(f),h=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},i,s);if(h&&h.code===0)return(h.data?.items||h.data?.result||h.data||[]).filter(m=>m.goto!=="recommend_tips"&&m.area!=="\u6F2B\u6E38"&&m.badge!=="\u516C\u544A").map(m=>({provider:"bilibili",mediaId:m.season_id?`ss${m.season_id}`:m.uri.match(/season\/(\d+)/)?.[1]?`ss${m.uri.match(/season\/(\d+)/)[1]}`:"",title:(m.title||"").replace(/<[^>]+>/g,"").trim(),org_title:(m.org_title||"").replace(/<[^>]+>/g,"").trim(),type:this._extractMediaType(m.season_type_name),year:m.ptime?new Date(m.ptime*1e3).getFullYear():null,imageUrl:m.cover||m.pic||"",episodeCount:0,_eps:m.episodes||m.episodes_new,checkMore:m.check_more,isOversea:!0})).filter(m=>m.mediaId);h&&h.code!==0&&x("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${h.code}: ${h.message}`)}catch(c){if(c.name==="AbortError")throw c;x("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${c.message}`)}x("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else x("info",`[Bilibili-Proxy][${i}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let c={keyword:t,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(c).map(m=>`${encodeURIComponent(m)}=${encodeURIComponent(c[m])}`).join("&")}`,f=L.makeProxyUrl(d),p=await Ie(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:L.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:s}),h=typeof p.data=="string"?JSON.parse(p.data):p.data;if(h.code!==0)return x("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${h.code}: ${h.message}`),[];if(h.data?.result)return h.data.result.filter(m=>m.url?.includes("bilibili.com")&&!m.areas?.includes("\u6F2B\u6E38")).map(m=>({provider:"bilibili",mediaId:m.season_id?`ss${m.season_id}`:"",mdId:m.media_id?`md${m.media_id}`:null,title:(m.title||"").replace(/<[^>]+>/g,"").trim(),org_title:(m.org_title||"").replace(/<[^>]+>/g,"").replace(/&[^;]+;/g,y=>({"<":"<",">":">","&":"&",""":'"',"'":"'"})[y]||y).trim(),type:this._extractMediaType(m.season_type_name),year:m.pubtime?new Date(m.pubtime*1e3).getFullYear():null,imageUrl:m.cover||null,episodeCount:m.ep_size||0,_eps:m.eps,isOversea:!0})).filter(m=>m.mediaId)}catch(c){if(c.name==="AbortError")throw c;x("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${c.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(t,r=!1){let n=new AbortController,i=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],s=Promise.all(i.map(async(o,u)=>(u>0&&await new Promise(c=>setTimeout(c,u*300)),this._searchOverseaRequest(t,o.appType,o.webType,"Original")))).then(o=>{let u=o.flat();return u.length&&n.abort(),u.forEach(c=>c._originalQuery=t),u}).catch(()=>[]),a=L.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await Xw(t,n.signal,"Bilibili");if(o&&o.title&&o.title!==t){let{title:u,cnAlias:c}=o,l=i.map(async(f,p)=>(p>0&&await new Promise(h=>setTimeout(h,p*300)),this._searchOverseaRequest(u,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=t,f._searchUsedTitle=u,f._tmdbCnAlias=c}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([s,a])).flat()}async _fetchAppSearchWithStream(t,r,n,i){if(typeof Qse!="function")return null;let s=!1,a=!1,o=await Qse(t,{headers:r,sniffLimit:8192,signal:i},u=>s?!0:u.includes('"goto":"recommend_tips"')||u.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(x("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((u.includes('"season_id"')||u.includes('"episodes"'))&&(s=!0),!0));return a?{code:0,data:{items:[]}}:o}}});var Wv,Q0e=ve(()=>{ki();Ot();Ct();yr();bi();vs();Ba();Ei();rs();Wv=class extends Tt{convertYoukuUrl(t){let r=t.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(t,r){let n=t.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let i=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>i.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,u=i.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),c="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?c="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?c="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?c="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?c="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?c="\u52A8\u6F2B":d.includes("\u7535\u5F71")?c="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?c="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(c="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:u,type:c,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(t){try{x("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=encodeURIComponent(t),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),i=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,s=await Ie(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!s||!s.data)return x("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!a.pageComponentList)return x("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let u of a.pageComponentList){let c=this.filterYoukuSearchItem(u,t);c&&o.push(c)}return x("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return x("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{x("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${t}`);let r=100,n=await this._getEpisodesPage(t,1,r);if(!n||!n.videos||n.videos.length===0)return x("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let i=[...n.videos],s=n.total;if(s>r){let a=Math.ceil(s/r);x("info",`[Youku] \u68C0\u6D4B\u5230 ${s} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let c=2;c<=a;c++)o.push(this._getEpisodesPage(t,c,r));let u=await Promise.allSettled(o);for(let c=0;cMt(o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.mediaId),c=this._extractMediaType(o.cats,o.type),l=this._processAndFormatEpisodes(u,c),d=[];for(let f of l){let p=f.link||`https://v.youku.com/v_show/id_${f.vid}.html`;d.push({name:f.episodeIndex.toString(),url:p,title:`\u3010youku\u3011 ${f.title}`})}if(d.length>0){let p={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||"N/A"})\u3010${o.type}\u3011from youku`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"youku"};s.push(p),Bt({...p,links:d},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Youku] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}_processAndFormatEpisodes(t,r="variety"){return[...t].map((s,a)=>{let o=a+1,u=this._formatEpisodeTitle(s,o,r);return{vid:s.id,title:u,episodeIndex:o,link:s.link}})}_formatEpisodeTitle(t,r,n){let i=t.displayName||t.title,s=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(i=i.replace(s,"").trim(),n==="movie")return i;if(n==="variety"){let a=i.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${t.published?.split(" ")[0]??""} ${i}`:`\u7B2C${r}\u671F ${t.published?.split(" ")[0]??""} ${i}`}return/^第\d+集/.test(i)?i:`\u7B2C${r}\u96C6 ${i}`}_extractMediaType(t,r){let n=(t||"").toLowerCase(),i=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":i.includes("\u7EFC\u827A")?"variety":i.includes("\u7535\u5F71")?"movie":i.includes("\u52A8\u6F2B")?"anime":(i.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(t){if(x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",t),!t)return[];let r=await this.getEpisodeDanmuSegments(t),n=Array.isArray(r?.segmentList)?r.segmentList:[];if(n.length===0)return x("warn","\u4F18\u9177\u5206\u6BB5\u5217\u8868\u4E3A\u7A7A\uFF0C\u8FD4\u56DE\u7A7A\u5F39\u5E55:",t),[];let i=[],s=L.youkuConcurrency,a=[...n];for(let o=0;o{let l=await Nn(c.url,Zs({data:c.data}),{headers:{Cookie:`_m_h5_tk=${c._m_h5_tk};_m_h5_tk_enc=${c._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let c=await Promise.allSettled(u);for(let l of c)l.status==="fulfilled"&&Array.isArray(l.value)&&(i=i.concat(l.value))}catch(c){x("error","\u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",c.message)}}return $i(i),i}async getEpisodeDanmuSegments(t){if(x("info","\u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),!t)return new Et({type:"youku",segmentList:[]});t.includes("youku.com/video?vid")&&(t=this.convertYoukuUrl(t));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,s=t.match(i),a;if(s)a=s[2].split("/").filter(Boolean),a.unshift(""),x("info",a);else return x("error","Invalid URL"),new Et({type:"youku",segmentList:[]});let o=a[a.length-1].split(".")[0].slice(3);x("info",`video_id: ${o}`);let u;try{let _=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;u=await Ie(_,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(_){return x("error","\u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",_),new Et({type:"youku",segmentList:[]})}let c=typeof u.data=="string"?JSON.parse(u.data):u.data,l=c.title,d=c.duration;x("info",`\u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,h;try{let _="https://log.mmstat.com/eg.js",E="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",S=await Ie(_,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});x("info",`cnaRes: ${JSON.stringify(S)}`),x("info",`cnaRes.headers: ${JSON.stringify(S.headers)}`);let C=S.headers.etag||S.headers.Etag;x("info",`etag: ${C}`),f=C.replace(/^"|"$/g,""),x("info",`cna: ${f}`);let I;for(;!I;)I=await Ie(E,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});x("info",`tkEncRes: ${JSON.stringify(I)}`),x("info",`tkEncRes.headers: ${JSON.stringify(I.headers)}`);let N=I.headers["set-cookie"]||I.headers["Set-Cookie"];x("info",`tkEncSetCookie: ${N}`);let T=N.match(/_m_h5_tk_enc=([^;]+)/);p=T?T[1]:null;let k=N.match(/_m_h5_tk=([^;]+)/);h=k?k[1]:null,x("info",`_m_h5_tk_enc: ${p}`),x("info",`_m_h5_tk: ${h}`)}catch(_){return x("error","\u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",_),new Et({type:"youku",segmentList:[]})}let m=60,y=Math.floor(d/m)+1,g=[],v=async _=>{let E={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:_,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},S=JSON.stringify(E);function C(Q){let j="";for(let z=0;z255?j+=encodeURIComponent(Q[z]):j+=Q[z];return j}function I(Q){let j="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",z="",X=0,K=0;for(let Z=0;Z=6;)z+=j[X>>K-6&63],K-=6;for(K>0&&(z+=j[X<<6-K&63]);z.length%4!==0;)z+="=";return z}let N=I(C(S));E.msg=N,E.sign=ea(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let T=JSON.stringify(E),k=Date.now(),O={jsv:"2.5.6",appKey:"24679788",t:k,sign:ea([h.slice(0,32),k,"24679788",T].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},P=Zs(O),$=`${n}?${P}`;return x("info",`piece_url: ${$}`),{type:"youku",segment_start:_*m,segment_end:Math.min((_+1)*m,d),url:$,data:T,_m_h5_tk:h,_m_h5_tk_enc:p}},A=Array.from({length:y},(_,E)=>E);for(let _=0;_{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};n.timepoint=r.playat/1e3;let i=JSON.parse(r.propertis);if(i?.color&&(n.color=typeof i.color=="string"?parseInt(i.color,10):i.color),i?.pos){let s=i.pos;s===1?n.ct=5:s===2&&(n.ct=4)}return n.content=r.content,n.like=r.extFields.voteUp,n})}}});var gVn,yVn,_Vn,AVn,vVn,bVn,T8,nO,fyt=ve(()=>{ki();Ot();Ct();yr();Ei();Md();rs();Zw();H0e();K0e();V0e();z0e();Q0e();j0e();bi();uy();gVn=new zv,yVn=new Qv,_Vn=new Gv,AVn=new Yv,vVn=new Wv,bVn=new Vv,T8=`LogVar Danmu API/${L.version}`,nO=class extends Tt{async search(t,r=!1){if(L.useBangumiData&&!r){let n=Ld(t,["anidb"]);if(n.length>0)return x("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E`),n.map(i=>{let a=(i.titles.find(o=>o&&o.includes(t))||i.titles[1]||i.title)+(i.titleSuffix||"");return{animeId:parseInt(i.siteId),animeTitle:a,type:i.typeId,typeDescription:i.typeStr,imageUrl:"",startDate:i.begin,rating:0}})}try{x("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${t}`);let n=new AbortController,i=(async()=>{try{let u=await Ie(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${t}`,{headers:{"Content-Type":"application/json","User-Agent":T8}});if(!u||!u.data)return x("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!u.data.animes||u.data.animes.length===0)return x("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let c=u.data.animes;return x("info",`dandanSearchresp (original): ${JSON.stringify(c)}`),x("info",`[Dandan] \u8FD4\u56DE ${c.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:c,source:"original"}}catch(u){return x("error","getDandanAnimes error:",{message:u.message,name:u.name,stack:u.stack}),{success:!1,source:"original"}}})(),s=(async()=>{try{await new Promise(p=>setTimeout(p,100));let u=await Xw(t,n.signal,"Dandan");if(!u||!u.title)return x("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:c,cnAlias:l}=u;x("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${c}`);let d=await Ie(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(c)}`,{headers:{"Content-Type":"application/json","User-Agent":T8},signal:n.signal});if(!d||!d.data)return x("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return x("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let p of f)p.isTmdbSource=!0,p._tmdbCnAlias=l;return x("info",`dandanSearchresp (tmdb): ${JSON.stringify(f)}`),x("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(u){if(u.name==="AbortError")return x("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw u}})(),[a,o]=await Promise.all([i,s]);if(a.success)return a.data;if(o.success)return o.data;if(x("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${t})`),!r){let u=t.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(u&&u!==t)return x("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${u}`),await this.search(u,!0)}return[]}catch(n){return x("error","getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(t){try{let r=await Ie(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${t}`,{headers:{"Content-Type":"application/json","User-Agent":T8},retries:1});if(!r||!r.data)return x("info","getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return x("info","getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,i=Array.isArray(n.episodes)?n.episodes:[],s=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,u=n.typeDescription||null,c=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(c=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),c?u="3D"+(u||""):l&&(u="2D"+(u||""));let d=n.imageUrl||null;return x("info",`getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:i,titles:s,relateds:a,type:o,typeDescription:u,imageUrl:d}}catch(r){return x("error","getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(t,r){if(!t||!r)return 0;let n=new Set(t.toLowerCase()),i=new Set(r.toLowerCase()),s=[...n].filter(o=>i.has(o)).length,a=new Set([...n,...i]).size;return s/a}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Dandan] sourceAnimes is not a valid array"),[];t.forEach(l=>{l.title=l.animeTitle});let a=t.length>0?t[0]._tmdbCnAlias:null;Jw(t,a);let o=t.length,u=new Set,c=[];for(let l of t)u.add(l.animeId),c.push({...l,isRelated:!1});for(;c.length>0;){let l=c.splice(0,c.length);await Promise.all(l.map(async d=>{try{let f=await this.getEpisodes(d.animeId),p=f.episodes,h=f.titles||[];if(this.calculateSimilarity(r,d.animeTitle)>=.1&&f.relateds&&Array.isArray(f.relateds))for(let A of f.relateds){let _=lw(A.animeTitle)!==null;!u.has(A.animeId)&&(_||o>=25)&&(u.add(A.animeId),c.push({animeId:A.animeId,animeTitle:A.animeTitle,imageUrl:A.imageUrl,rating:A.rating||0,isRelated:!0}))}let y=[d.animeTitle,...h],g=!1;if(d.isRelated||d.isTmdbSource){let A=lw(r);if(A!==null){let _=null;for(let E of y){if(!E)continue;let S=lw(E);if(S!==null){_=S;break}}A>1?g=(_||1)===A:A===1&&(g=_===null||_===1)}else g=!0}else g=y.some(A=>A&&Mt(A,r));if(!g)return;let v=[];for(let A of p){let _=A.episodeTitle&&A.episodeTitle.trim()!==""?`${A.episodeTitle}`:`\u7B2C${A.episodeNumber}\u96C6`;v.push({name:_,url:A.episodeId.toString(),title:`\u3010dandan\u3011 ${_}`})}if(v.length>0){let A=d._displayTitle||d.animeTitle,_=[...h];d.animeTitle&&d.animeTitle!==A&&!_.includes(d.animeTitle)&&_.push(d.animeTitle);let E=f.type||d.type||"tvseries",S=f.typeDescription||d.typeDescription||"TV\u52A8\u753B",C=d.startDate||(p.length>0?p[0].airDate:null),I=C?new Date(C).getFullYear():"\u672A\u77E5",N={animeId:d.animeId,bangumiId:String(d.animeId),animeTitle:`${A}(${I})\u3010${S}\u3011from dandan`,aliases:_,type:E,typeDescription:S,imageUrl:f.imageUrl||d.imageUrl,startDate:C,episodeCount:v.length,rating:d.rating||0,isFavorited:!0,source:"dandan"};s.push(N),Bt({...N,links:v},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(f){x("error",`[Dandan] Error processing anime: ${f.message}`)}}))}return this.sortAndPushAnimesByYear(s,n),s}async getEpisodeDanmu(t,r=[]){let n=[],i={};try{let a=await Ie(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${t}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":T8},retries:1}).catch(o=>(x("error",`dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,i.dandan=n.length):i.dandan=0}catch(s){x("error","getEpisodeDanmu error:",{message:s.message,name:s.name,stack:s.stack})}return n}async getEpisodeDanmuSegments(t){return x("info","\u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Et({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>r.isRealTimePulled?L.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:ln(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,i,s)=>{let a=parseInt(s.substring(0,2),16),o=parseInt(s.substring(2,4),16),u=parseInt(s.substring(4,6),16),c=a*256*256+o*256+u;return`${i}${c}`})}`,m:L.danmuSimplifiedTraditional==="simplified"?ln(r.m):r.m})}}});var iO,pyt=ve(()=>{ki();Ot();Ct();yr();Ei();Md();rs();iO=class extends Tt{async search(t){try{let r=await Ie(`${L.customSourceApiUrl}/api/v2/search/anime?keyword=${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(x("info","customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(x("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(x("info","customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return x("error","getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){try{let r=await Ie(`${L.customSourceApiUrl}/api/v2/bangumi/${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(x("info","getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(x("info",`getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(x("info",`getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return x("error","getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Custom Source] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.map(async o=>{try{let u=await this.getEpisodes(o.bangumiId),c=[];for(let l of u){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;c.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(c.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:c.length,rating:o.rating,isFavorited:!0,source:"custom"};s.push(l),Bt({...l,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Custom Source] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){let r=[];try{let n=await Ie(`${L.customSourceApiUrl}/api/v2/comment/${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return x("error","fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(t){return x("info","\u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Et({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,i,s)=>{let a=parseInt(s.substring(0,2),16),o=parseInt(s.substring(2,4),16),u=parseInt(s.substring(4,6),16),c=a*256*256+o*256+u;return`${i}${c}`})}`,m:L.danmuSimplifiedTraditional==="simplified"?ln(r.m):r.m}))}}});function myt(e){let t=Um[e];return e>=132&&(Um[e]=oO,oO=e),t}function G0e(){return(aO===null||aO.byteLength===0)&&(aO=new Uint8Array(Y0e.buffer)),aO}function N8(){return(sO===null||sO.byteLength===0)&&(sO=new Int32Array(Y0e.buffer)),sO}function gyt(e,t){return e=e>>>0,Il(G0e().subarray(e,e+t))}function hyt(e,t,r){if(r===void 0){let s=bv(e),a=t(s.length,1)>>>0;return G0e().subarray(a,a+s.length).set(s),R8=s.length,a}let n=bv(e),i=t(n.length,1)>>>0;return G0e().subarray(i,i+n.length).set(n),R8=n.length,i}function c4r(e){return e==null}function l4r(e){let t=atob(e.replace(/\s+/g,"")),r=new Uint8Array(t.length);for(let n=0;nmyt(n),__wbindgen_string_new:(n,i)=>{let s=gyt(n,i);oO===Um.length&&Um.push(Um.length+1);let a=oO;return oO=Um[a],Um[a]=s,a},__wbindgen_debug_string:()=>{}}};return Dc=(await WebAssembly.instantiate(e,t)).instance.exports,Y0e=Dc.memory,sO=null,aO=null,Dc}function f4r(e,t){let r,n;try{let i=Dc.__wbindgen_add_to_stack_pointer(-16),s=hyt(e,Dc.__wbindgen_malloc,Dc.__wbindgen_realloc),a=R8,o=c4r(t)?0:hyt(t,Dc.__wbindgen_malloc,Dc.__wbindgen_realloc),u=R8;Dc.gateway_decrypt(i,s,a,o,u);let c=N8()[i/4+0],l=N8()[i/4+1],d=N8()[i/4+2],f=N8()[i/4+3],p=c,h=l;if(f)throw p=0,h=0,myt(d);return r=p,n=h,gyt(p,h)}finally{Dc.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Dc.__wbindgen_free(r,n,1)}}async function yyt(e,t){return e=e.replace(/\s+/g,""),await d4r(),f4r(e,t)}var u4r,Dc,sO,aO,Y0e,R8,Um,oO,_yt=ve(()=>{vs();u4r=` +cv:${s} +t:${i} +${a}?${o}`;return Pit(c,u)}buildSignedHeaders({method:t,url:r,params:n={},deviceId:s,token:i}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=Cit(r),c=LP(n),u=Date.now(),d=this.generateSignature(t,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(t,r,n){try{let s=await Me(t,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(R("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return R("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(t,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=DR(t,r);return await Me(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(t,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:t,url:r,params:n,deviceId:s});return await Me(r+"?"+LP(n),{headers:i,timeout:5e3})}async searchAppContent(t,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:t,num:r,searchNext:"",well:"match"},a=UP(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,h])=>`${f}=${encodeURIComponent(h==null?"":String(h))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await Me(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(R("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let h=[];if(f.highlights&&(f.highlights.alias&&(h=f.highlights.alias.split(",").map(p=>p.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let p=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();p&&!h.includes(p)&&h.push(p)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return R("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(t,r=20){try{let n="/search/v5/season",s={keywords:t,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=LP(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await Me(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(R("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return R("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(t,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=LP({keywords:t,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await Me(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return R("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],h=p=>{let m=[];if(p.highlights&&(p.highlights.alias&&(m=p.highlights.alias.split(",").map(g=>g.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),p.highlights.original_name)){let g=p.highlights.original_name.replace(/<[^>]+>/g,"").trim();g&&!m.includes(g)&&m.push(g)}return{provider:"renren",mediaId:String(p.id),title:String(p.title||p.alias||p.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:m,type:p.classify||p.cat||"Renren",season:null,year:p.year||null,imageUrl:p.cover||p.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(p=>u.push(h(p))),d.forEach(p=>u.push(h(p))),f.forEach(p=>{p.seasonList&&Array.isArray(p.seasonList)&&p.seasonList.forEach(m=>{u.push(h(m))})}),u}catch(n){return R("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(t,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:t,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;csetTimeout(f,s-c));let u=await this.renrenRequest("GET",i,a);return n.value=Date.now(),r&&(r.value=!1),u.data?(BP(u.data)?.data?.searchDramaList||[]).map(f=>{let h=[];if(f.highlights&&(f.highlights.alias&&(h=f.highlights.alias.split(",").map(p=>p.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let p=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();p&&!h.includes(p)&&h.push(p)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(R("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return R("info","[Renren] performNetworkSearch error:",i.message),null}}async search(t){R("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(ec.search);i===-1&&(i=0);for(let a=i;a ${o}`),ec.search=o);break}else R("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){R("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(R("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),ec.search="WIN"),r}async getAppDramaDetail(t,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(t),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=UP(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,h])=>`${f}=${encodeURIComponent(h)}`).join("&"),c=this.generateTvHeaders(n,a),u=await Me(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${t}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(R("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${t})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${t})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${t})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(R("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${t})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(R("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${t}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return R("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(t,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=UP(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([p,m])=>`${p}=${encodeURIComponent(m)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${t}${i}?${c}`,d=await Me(l,{headers:u,timeout:5e3});if(!d||!d.data)return R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${t}): ID=${r}`),null;let f=d.data,h=f.msg||f.message||"";return h.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(R("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${t}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${h} (${t}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${t}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(R("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${t}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(R("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${t}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return R("info",`[Renren] getGatewayDramaDetail error (${t}):`,s.message),null}}async getWebDramaDetailFallback(t){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(t),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=BP(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(R("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${t}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return R("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(t,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(ec.detail);i===-1&&(i=0);for(let a=i;a ${o}`),ec.detail=o),n;R("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){R("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return R("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),ec.detail="TV",null}async getEpisodes(t){let r=await this.getDetail(t);if(!r)return R("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${t}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return R("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${t}`),[];let n=[],s=String(t);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("info","[Renren] sourceAnimes is not a valid array"),[];let o=t.filter(d=>Zt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>Zt(f,r,i)):!1),c=i!==null?i:fr(r);if(c!==null){let d=o.filter(f=>{let h=er(f.title).season;return h===c||c===1&&h===null});d.length>0&&(o=d,R("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[ec.search]||"\u672A\u77E5";R("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${t.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),h=[];for(let p of f)h.push({name:p.episodeIndex.toString(),url:p.episodeId,title:`\u3010${p.provider}\u3011 ${p.title}`});if(h.length>0){let p=d.aliases||[];f.enName&&!p.includes(f.enName)&&p.push(f.enName);let m=f.year||d.year||"",g=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),_={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${m})\u3010${g}\u3011from renren`,aliases:p,type:g,typeDescription:g,imageUrl:d.imageUrl,startDate:bn(m),episodeCount:h.length,rating:0,isFavorited:!0,source:"renren"};a.push(_),or({..._,links:h},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(f){R("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(t){try{let r=Date.now(),n=t;String(t).includes("-")&&(n=String(t).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=UP(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await Me(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(R("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=BP(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return R("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(t){let r=String(t).includes("-")?String(t).split("-")[1]:t,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(t){let r=String(t).includes("-")?String(t).split("-")[1]:t,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(t){let r=t;String(t).includes("-")&&(r=String(t).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(R("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=BP(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return R("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(t){let r=0;if(String(t).includes("-")){let[o,c]=String(t).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(ec.danmu);i===-1&&(i=0);for(let o=i;o ${c}`),ec.danmu=c),n.length>0?R("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):R("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=t,n;R("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){R("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}R("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),ec.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=t,a}async getEpisodeDanmuSegments(t){return new zt({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}parseRRSPPFields(t){let r=String(t).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let h=d(l);return isNaN(h)?f:h},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(t){let r=t.adDurationMs||0,n=t.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=t.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&R("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}}});var VQr,KS,fRt,zi,dk,hRt=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();Zve();VQr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},KS=1e8,fRt=6e4,zi=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),dk=class extends tr{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmedUid=null}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(t){return VQr[t]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await zIt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await GIt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(t,r={}){let n=await this.buildTvHeaders(),s=await Me(`${this.tvHost}${t}`,{headers:n.headers,timeout:1e4,retries:1,...r});return Jve(s?.data,n.uid)}logError(t,r){R("error",`[Hanjutv] ${t}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(t=[],r=""){let n=uH(r);return Array.isArray(t)?t.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(t,r,n){try{return await t()}catch(s){return n&&R("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(t=[]){return Array.isArray(t)?t.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(t=[]){return Array.isArray(t)?t.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(t=[]){return this.normalizeEpisodes(t).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(t=[]){return this.normalizeEpisodes(t).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(t){let r=t?.seriesData?.seriesList||t?.seriesList||t?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(t=[]){let r=new Map;for(let n of t){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}normalizeSearchPairTitle(t=""){return String(t||"").normalize("NFKC").trim()}getSearchPairYear(t){let r=t?.publishTime??t?.releaseTime??t?.year??null,n=String(r??"").trim(),s=c=>Number.isInteger(c)&&c>=1900&&c<=2100,i=c=>{let l=new Date(c).getUTCFullYear();return s(l)?l:null};if(/^(?:19|20)\d{2}$/.test(n))return Number(n);let a=n.match(/^((?:19|20)\d{2})\d{4}$/);if(a)return Number(a[1]);if(r!==null&&r!==""){let c=Number(r);if(Number.isFinite(c)){if(c!==0){let u=Math.abs(c),l=null;u>=1e10?l=c:u>=1e8&&(l=c*1e3);let d=l===null?null:i(l);if(d!==null)return d}}else if(n){let u=i(n);if(u!==null)return u}}let o=String(t?.searchMemo||"").match(/(?:19|20)\d{2}/);return o?Number(o[0]):null}getSearchPairEpisodeCount(t){let r=Number(t?.lastSerialNo??t?.totalEpisode??t?.episodeCount);return Number.isFinite(r)&&r>0?r:null}getSearchPairMetadata(t){let r=n=>n==null?null:String(n).trim()||null;return{playMode:r(t?.playMode),year:r(this.getSearchPairYear(t)),episodeCount:r(this.getSearchPairEpisodeCount(t)),category:r(t?.category)}}isMergeableSearchPair(t,r){let n=this.normalizeSearchPairTitle(t?.name),s=this.normalizeSearchPairTitle(r?.name);if(!n||!s||n!==s)return!1;let i=this.getSearchPairMetadata(t),a=this.getSearchPairMetadata(r);for(let o of["playMode","year","category"])if(i[o]!==null&&a[o]!==null&&i[o]!==a[o])return!1;return!0}getSearchPairMatchScore(t,r){if(!this.isMergeableSearchPair(t,r))return null;let n=this.getSearchPairMetadata(t),s=this.getSearchPairMetadata(r),i={year:8,playMode:4,category:2,episodeCount:1},a=0;for(let[o,c]of Object.entries(i))n[o]!==null&&s[o]!==null&&n[o]===s[o]&&(a+=c);return a}selectUniqueBestSearchCandidate(t,r=[]){let n=r.map(a=>({candidate:a,score:this.getSearchPairMatchScore(t,a)})).filter(a=>a.score!==null);if(n.length===0)return null;let s=Math.max(...n.map(a=>a.score)),i=n.filter(a=>a.score===s);return i.length===1?i[0].candidate:null}pairSearchCandidateGroup(t=[],r=[]){let n=new Map(t.map(a=>[String(a.sid),a])),s=new Map(r.map(a=>[String(a.sid),a])),i=new Map;for(;n.size>0&&s.size>0;){let a=Array.from(n.values()),o=Array.from(s.values()),c=new Map,u=new Map;for(let d of a){let f=this.selectUniqueBestSearchCandidate(d,o);f&&c.set(String(d.sid),f)}for(let d of o){let f=this.selectUniqueBestSearchCandidate(d,a);f&&u.set(String(d.sid),f)}let l=[];for(let[d,f]of c){let h=String(f.sid),p=u.get(h);p&&String(p.sid)===d&&l.push({s5Sid:d,tvSid:h,tvItem:f})}if(l.length===0)break;for(let d of l)i.set(d.s5Sid,d.tvItem),n.delete(d.s5Sid),s.delete(d.tvSid)}return i}pairSearchCandidates(t=[],r=[]){let n=o=>{let c=new Map;for(let u of o){let l=this.normalizeSearchPairTitle(u?.name);l&&(c.has(l)||c.set(l,[]),c.get(l).push(u))}return c},s=n(t),i=n(r),a=new Map;for(let[o,c]of s){let u=i.get(o);if(!u)continue;let l=this.pairSearchCandidateGroup(c,u);for(let[d,f]of l)a.set(d,f)}return a}buildSearchCandidate(t,r,n=""){if(!t?.sid)return null;let s=String(t.sid),i=String(n||"").trim(),a=r===zi.MERGED?Zn(`hxq:${s}|tv:${i}`):Zn(s);return{...t,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(t,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],g=[];for(let _ of p)(Zt(_?.name||"",t)?m:g).push(_);return{matched:m,unmatched:g}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=this.pairSearchCandidates(o.matched,c.matched),f=new Set(Array.from(d.values(),p=>String(p.sid)));for(let p of o.matched){let m=d.get(String(p.sid));m?l.push(this.buildSearchCandidate(p,zi.MERGED,m.sid)):l.push(this.buildSearchCandidate(p,zi.HXQ))}c.matched.filter(p=>!f.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,zi.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,zi.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,zi.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,zi.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,zi.TV)).filter(Boolean));let h=p=>p.map(m=>m.name);return{resultList:l,stats:{s5Total:s.length,s5Matched:o.matched.length,tvTotal:i.length,tvMatched:c.matched.length,mergedCount:u?l.filter(p=>p?._variant===zi.MERGED).length:0,s5MatchedList:h(o.matched),s5UnmatchedList:h(o.unmatched),tvMatchedList:h(c.matched),tvUnmatchedList:h(c.unmatched)}}}async extractFromPayload(t,r,n){if(!t||typeof t!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof t.data=="string"&&t.data.length>0){let i;try{i=await Jve(t,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(i);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let s=this.extractSearchItems(t);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(t){try{return await Me(`${this.appHost}/api/common/configs`,{headers:t,timeout:8e3,retries:0}),!0}catch{return!1}}async ensureMobileIdentityWarmed(){if(this._mobileWarmedUid)return!0;if(this._mobileWarmupPromise)return this._mobileWarmupPromise;let t=(async()=>{let r=await this.buildMobileHeaders();if(this._mobileWarmedUid===r.uid)return!0;let n=await this.warmupMobileIdentity(r.headers);return n&&(this._mobileWarmedUid=r.uid),n})();this._mobileWarmupPromise=t;try{return await t}finally{this._mobileWarmupPromise===t&&(this._mobileWarmupPromise=null)}}async searchWithS5Api(t){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(t),i=await Me(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(t){let r=encodeURIComponent(t),n=await this.buildTvHeaders(),s=await Me(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(t){try{let r=String(t||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(R("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(R("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(R("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),R("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),R("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(t,r,n,s){try{let i=String(t||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(R("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(t){return this.getSeriesDetail(t,async r=>(await Me(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(t){return this.getSeriesDetail(t,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(t){try{let r=String(t||"").trim();if(!r)return[];let n=[async()=>{let i=await Me(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await Me(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await Me(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(R("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(t){try{let r=String(t||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(R("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(t,...r){let n=[t?.updateTime,t?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(t,r=""){let n=String(r||"").trim();return n?`\u7B2C${t}\u96C6\uFF1A${n}`:`\u7B2C${t}\u96C6`}buildEpisodeLink(t,r){let n=t?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,t?.title||r?.title||""),i="";if(t?.pid&&r?.eid){let a=QIt(t.pid,r.eid);i=a?`hanjutv:${a}`:""}else t?.pid?i=`hxq:${t.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(t=[],r=[]){let n=new Map(t.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(t,r,n,s){let i=this.getCategory(r?.category??t?.category),a=this.resolveAnimeYear(t,r);return{animeId:s,bangumiId:String(s),animeTitle:`${t.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:t?.image?.thumb||"",startDate:bn(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(t){if(!t)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(t),this.getHxqEpisodes(t)]);return{detail:r,episodes:n}}async getTvBundle(t){if(!t)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(t),this.getTvEpisodes(t)]);return{detail:r,episodes:n}}async buildAnimePayload(t){let r=t?._variant||zi.HXQ,n=String(t?.sid||"").trim(),s=String(t?.tvSid||"").trim(),i=s||(r===zi.TV?n:""),a=Number(t?.animeId),o=r===zi.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Zn(`hxq:${n}|tv:${s}`):null,c=(r===zi.HXQ||r===zi.MERGED)&&n,u=(r===zi.TV||r===zi.MERGED)&&i,[l,d]=await Promise.all([c?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),u?this.getTvBundle(i):Promise.resolve({detail:null,episodes:[]})]);if(r===zi.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let h=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(t,h,f,o),links:f}}}if((r===zi.HXQ||r===zi.MERGED)&&n){let f=l.episodes.map(h=>this.buildEpisodeLink(h,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(t,l.detail,f,o??Zn(n)),links:f}}if((r===zi.TV||r===zi.MERGED)&&i){let f=d.episodes.map(h=>this.buildEpisodeLink(null,h)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(t,d.detail,f,o??Zn(i)),links:f}}return null}async handleAnimes(t,r,n,s=null,i=null){if(!Array.isArray(t))return R("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=t.filter(l=>Zt(l.name,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.buildAnimePayload(l);return!d||!d.summary||!Array.isArray(d.links)||d.links.length===0?null:d}catch(d){return R("error",`[Hanjutv] Error processing anime: ${d.message}`),null}}));for(let l of u)if(l)try{a.push(l.summary),or({...l.summary,links:l.links},s),F.animes.length>F.MAX_ANIMES&&ur()}catch(d){R("error",`[Hanjutv] Error processing anime: ${d.message}`)}return this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(t){let r=String(t?.id||"").trim();if(!r)return[];let n=[];if(!t.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=fRt,l=0,d=240;for(;c0&&a.push(...h);let p=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",m=Number(f?.data?.nextAxis??KS),g=Number(f?.data?.lastId??o);if(!Number.isFinite(m)||m<=c||m>=KS)break;if(Number.isFinite(g)&&g>o&&(o=g),c=m,!p){if(h.length===0)break;u=c+fRt}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${i})`,o),a.length>0){n=a;break}}}}if(n.length===0){let s=0,i=0,a=0,o=120;for(;i0&&n.push(...u);let l=Number(c.more??0)===1||c.more===!0||c.more==="1",d=Number(c.nextAxis??KS),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=KS||(Number.isFinite(f)&&f>s&&(s=f),i=d,l||(s=0),u.length===0&&!l))break}catch(c){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",c);break}}return n}async getEpisodeDanmu(t){let r=WIt(t),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(t){return R("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new zt({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}}});var GS,tSe=ie(()=>{Ai();Wt();Kt();Hr();Ro();oi();$u();TC();fs();Ki();Vm();GS=class extends tr{async search(t){try{let r=[];F.useBangumiData&&(r=await Xf(t,["gamer","gamer_hk"]),R("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`));let n=r.filter(h=>h.video_sn);if(r.length>0&&r.length===n.length)return R("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(h=>{let m=(h.titles.find(g=>g&&g.includes(t))||h.titles[1]||h.title)+(h.titleSuffix||"");return{video_sn:parseInt(h.video_sn),title:m,_displayTitle:m,isLocalPriority:!0,aliases:[...h.titles],_typeStr:h.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:t,_bangumiBegin:h.begin||null}});let s=wl(t),i=t,a=encodeURIComponent(s);R("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${t}`),R("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let h=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,p=F.makeProxyUrl(h),m=await Me(p,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(m&&m.data&&m.data.anime&&m.data.anime.length>0){o.abort();let g=m.data.anime;for(let _ of g)try{_._originalQuery=t,_._searchUsedTitle=s}catch{}return R("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(g)}`),R("info",`[Bahamut] \u8FD4\u56DE ${g.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:g,source:"original"}}return R("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(h){return R("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:h.message,name:h.name,stack:h.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(E=>setTimeout(E,100));let h=await vC(i,o.signal,"Bahamut");if(!h||!h.title)return R("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:p,cnAlias:m}=h;R("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${p}`);let _=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(p)}`,y=F.makeProxyUrl(_),A=await Me(y,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:o.signal,retries:3});if(A&&A.data&&A.data.anime&&A.data.anime.length>0){let E=A.data.anime;for(let v of E)try{v._originalQuery=t,v._searchUsedTitle=p,v._tmdbCnAlias=m}catch{}return R("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(E)}`),R("info",`[Bahamut] \u8FD4\u56DE ${E.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:E,source:"tmdb"}}return R("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(h){return h.name==="AbortError"?(R("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(R("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:h.message,name:h.name,stack:h.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:R("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let h of f){if(!h||!h.acg_sn)continue;let p=r.find(m=>String(h.acg_sn)===String(m.siteId))||r.find(m=>h.title&&m.title===h.title);if(p){let m=h.title,_=(p.titles.find(y=>y&&y.includes(t))||p.titles[1]||p.title)+(p.titleSuffix||"");h.title=_,h._displayTitle=_,h.isLocalPriority=!0,h.aliases=[...p.titles],m&&!h.aliases.includes(m)&&h.aliases.push(m),h._typeStr=p.typeStr,R("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${h.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return R("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${t}`,n=F.makeProxyUrl(r),s=await Me(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return R("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return R("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return R("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return R("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=wl(r);function c(g,_,y){if(!g)return!1;let A=String(g),E=String(_||""),v=String(y||"");if(F.strictTitleMatch){if(YA(A,E)||v&&YA(A,v))return!0;try{if(YA(A,wl(E))||YA(A,Sr(E))||v&&(YA(A,wl(v))||YA(A,Sr(v))))return!0}catch{}return!1}let b=kr(A),I=kr(E),T=v?kr(v):"";if(b.includes(I)||T&&b.includes(T))return!0;try{if(b.includes(kr(wl(E)))||b.includes(kr(Sr(E)))||T&&(b.includes(kr(wl(v)))||b.includes(kr(Sr(v)))))return!0}catch{}try{if(b.toLowerCase().includes(I.toLowerCase())||T&&b.toLowerCase().includes(T.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(t)?t:[]).filter(g=>{let _=g.title||"",y=g._searchUsedTitle||g._originalQuery||"";return o||g._searchUsedTitle&&g._searchUsedTitle!==r?(R("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${_}`),!0):c(_,r,y)||Array.isArray(g.aliases)&&g.aliases.some(A=>c(A,r,y))});l.forEach(g=>{g._originalTitleAlias=g.title?Sr(g.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;SC(l,d);let f=i!==null?i:fr(r),h=l;if(f!==null){let g=l.filter(_=>{let y=_._displayTitle||_.title,A=er(y).season;return A===f||f===1&&A===null});g.length>0&&(h=g,R("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let p=new Map,m=await Promise.all(h.map(async g=>{try{let _=String(g.video_sn);p.has(_)||p.set(_,this.getEpisodes(g.video_sn));let y=await p.get(_);if(!y||typeof y!="object"||Array.isArray(y))return null;let A=y.video,E=null;y.anime.episodes&&(E=y.anime.episodes[0]||Object.values(y.anime.episodes)[0]);let v=[];if(E&&Array.isArray(E))for(let b of E){let I=`\u7B2C${b.episode}\u96C6`;v.push({name:b.episode.toString(),url:b.videoSn.toString(),title:`\u3010bahamut\u3011 ${I}`})}if(v.length>0){let b=null;if(g._bangumiBegin&&(b=parseInt(g._bangumiBegin.substring(0,4))),!b&&y.anime&&y.anime.seasonStart&&(b=new Date(y.anime.seasonStart).getFullYear()),!b&&A&&A.upTime){let U=String(A.upTime).match(/(\d{4})/);U&&(b=parseInt(U[1]))}if(!b){let L=(g.info||"").match(/(\d{4})/);L&&(b=parseInt(L[1]))}let I=y.anime&&y.anime.cover||g.cover||A&&A.cover||"",T=g._displayTitle||Sr(g.title),x=Array.isArray(g.aliases)?[...g.aliases]:[];g._originalTitleAlias&&g._originalTitleAlias!==T&&!x.includes(g._originalTitleAlias)&&x.push(g._originalTitleAlias);let w=g._typeStr||"\u52A8\u6F2B",D=y.anime&&y.anime.title||A&&A.title||"";D.includes("[\u96FB\u5F71]")?w="\u5267\u573A\u7248":D.includes("[\u7279\u5225\u7BC7]")&&(w="OVA");let M={animeId:g.video_sn,bangumiId:String(g.video_sn),animeTitle:`${T}(${b||"N/A"})\u3010${w}\u3011from bahamut`,aliases:x,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:I,startDate:b?bn(b):bn(y.anime.seasonStart?new Date(y.anime.seasonStart).getFullYear():null),episodeCount:v.length,rating:A.rating,isFavorited:!0,source:"bahamut"};a.push(M),or({...M,links:v},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(_){R("error",`[Bahamut] Error processing anime: ${_.message}`)}}));return this.sortAndPushAnimesByYear(a,n),m}async getEpisodeDanmu(t){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${t}`,s=F.makeProxyUrl(n),i=await Me(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return R("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(t){return R("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new zt({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){let r={0:1,1:5,2:4};return t.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:F.danmuSimplifiedTraditional==="simplified"?Sr(n.text):n.text,t:n.time/10}))}}});var zS,rSe=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();zS=class extends tr{extractAliasesFromHintWords(t){if(!t||typeof t!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=t.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(t,r,n=null){return Zt(t.title,r,n)?!0:Array.isArray(t.aliases)&&t.aliases.some(s=>Zt(s,r,n))}filterTencentSearchItem(t,r){if(!t.videoInfo||!t.doc)return null;let n=t.videoInfo,s=t.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let i=n.title.replace(//g,"").replace(/<\/em>/g,"");if(!i||!s)return null;let a=n.typeName;if(a.includes("\u77ED\u5267")||!["\u7535\u89C6\u5267","\u52A8\u6F2B","\u7535\u5F71","\u7EAA\u5F55\u7247","\u7EFC\u827A","\u7EFC\u827A\u8282\u76EE"].includes(a))return null;let c=a,u=!1,l=!1;n.coverDoc&&(n.coverDoc.richTags&&Array.isArray(n.coverDoc.richTags)&&n.coverDoc.richTags.forEach(p=>{p.text&&p.text.includes("3D")&&(u=!0),p.text&&p.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(p=>{p&&p.includes("3D")&&(u=!0),p&&p.includes("2D")&&(l=!0)})),u?c="3D"+c:l&&(c="2D"+c);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(p=>p.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(m=>i.includes(m)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,h=this.extractAliasesFromHintWords(n.hintWords).filter(p=>p!==i);return{provider:"tencent",mediaId:s,title:i,aliases:h,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(t){try{R("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${t}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:t,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(t)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await Gn(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return R("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return R("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){R("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(R("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(t));l.length>0?(R("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${t}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):R("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${t}" \u7684\u9879\u76EE`);break}}if(o.length===0)return R("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,t);l&&c.push(l)}return R("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${t}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:t,vid:"",lid:"",page_num:"",page_context:`cid=${t}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${t}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await Gn(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return R("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return R("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){R("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(R("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return R("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];R("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{R("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:t,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Gn(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let h of f.data.module_list_datas)for(let p of h.module_datas)if(p.item_data_lists&&p.item_data_lists.item_datas)for(let m of p.item_data_lists.item_datas)m.item_params&&m.item_params.vid&&m.item_params.is_trailer!=="1"&&c.push({vid:m.item_params.vid,title:m.item_params.title,unionTitle:m.item_params.union_title||m.item_params.title})}}}return R("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return R("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Tencent] sourceAnimes is not a valid array"),[];let o=t.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let h=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",p=l.title,m=h.match(/\[.+版\]/);m&&h.includes(l.title)&&(p=`${l.title}${m[0]}`);let _={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${p}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(_),or({..._,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(t){let r=t;if(typeof t=="string"&&(t.startsWith("http")||t.includes("vid="))){let n=t.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=t.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(t){R("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",t);let r=this.extractVid(t);R("info",`[Tencent] vid: ${r}`);let n;try{n=await Me(t,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return R("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";R("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(t);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;R("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(Me(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return R("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return Ri(u),u}async getEpisodeDanmuSegments(t){R("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(t);R("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await Me(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new zt({type:"qq",segmentList:[]}):(R("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new zt({type:"qq",segmentList:[]}))}let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=Object.values(a.segment_index);for(let u of c)o.push({type:"qq",segment_start:(Number(u.segment_start)||0)/1e3,segment_end:(Number(u.segment_name.split("/").pop())||0)/1e3,url:`${n}${s}/${u.segment_name}`});return new zt({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=await Me(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return R("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}}});var YS,nSe=ie(()=>{Ai();Kt();Hr();fs();oa();Ro();oi();Wt();Ki();YS=class e extends tr{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(t){try{R("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={key:t,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${So(r)}`,i=async()=>{let l=await Me(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});return!l||!l.data?null:typeof l.data=="string"?JSON.parse(l.data):l.data},a=2,o=await i();for(let l=0;lsetTimeout(f,1500)),o=await i()}if(!o)return R("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];if(o.code==="-1")return R("info","[iQiyi] \u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=-1)\uFF0C\u91CD\u8BD5\u540E\u4ECD\u5931\u8D25"),R("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];if(!o.data||!o.data.templates)return R("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),R("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];let c=[],u=o.data.templates;for(let l of u){let d=[];l.template===112&&l.intentAlbumInfos?(R("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${l.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),d=l.intentAlbumInfos):[101,102,103].includes(l.template)&&l.albumInfo&&(R("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${l.template})`),d=[l.albumInfo]);for(let f of d){let h=this._filterIqiyiSearchItem(f,t);h&&c.push(h)}}return R("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(t,r){if(!t.title)return null;if(t.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return R("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${t.title}`),null;let n=t.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(t.metaTags&&Array.isArray(t.metaTags)&&t.metaTags.forEach(h=>{h.name==="3D"&&(i=!0),h.name==="2D"&&(a=!0)}),t.baseTags&&Array.isArray(t.baseTags)&&t.baseTags.forEach(h=>{h.value==="3D"&&(i=!0),h.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let h=t.qipuId||t.playQipuId;if(!h)return R("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${t.title}`),null;let p=null;if(t.year){let g=t.year.value||t.year.name;g&&typeof g=="string"&&g.length===4&&/^\d{4}$/.test(g)&&(p=parseInt(g))}let m=t.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${h}`,title:m,type:s,year:p,imageUrl:t.img||t.imgH,episodeCount:1,_qipuId:h}}let o=t.pageUrl;if(!o)return R("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${t.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return R("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(t.year){let h=t.year.value||t.year.name;h&&typeof h=="string"&&h.length===4&&/^\d{4}$/.test(h)&&(l=parseInt(h))}let d=null;if(t.videos&&t.videos.length>0)d=t.videos.length;else if(t.subscriptContent){let h=t.subscriptContent.match(/(?:更新至|全|共)\s*(\d+)\s*(?:集|话|期)/);if(h)d=parseInt(h[1]);else{let p=t.subscriptContent.trim().match(/^(\d+)$/);p&&(d=parseInt(p[1]))}}let f=t.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:t.img||t.imgH,episodeCount:d}}async getEpisodes(t){try{if(R("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`),t.startsWith("movie_")){let h=t.substring(6);R("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${h}`);let p=await this._getMovieVideoId(h);return p?(R("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${p}`),[{id:p,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${p}.html`}]):(R("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${h}`),[])}let r=/^\d+$/.test(t)?t:this._videoIdToEntityId(t);if(!r)return R("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${t}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${So(n)}`,a=await Me(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return R("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return R("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return R("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let h of l)if(h.bk_type==="video_list"&&h.data?.data){if(R("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${h.bk_id}`),!h.tag||!h.tag.includes("episodes")){R("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${h.bk_id}`);continue}d=!0;let p=h.data.data;if(!Array.isArray(p)){R("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let m of p)if(!(!m.videos||!Array.isArray(m.videos))){for(let g of m.videos)if(!(!g.data||!Array.isArray(g.data)))for(let _ of g.data){if(_.content_type!==1)continue;let A=(_.play_url||"").match(/tvid=(\d+)/);if(!A)continue;let E=A[1],v=_.short_display_name||_.title||"\u672A\u77E5\u5206\u96C6",b=_.subtitle;b&&!v.includes(b)&&(v=`${v} ${b}`);let I=_.album_order,T=_.page_url;E&&v&&T&&c.push({id:E,title:v,order:I!==void 0?I:c.length,link:T})}}}else if(h.bk_type==="album_episodes"&&h.data?.data){R("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let p=h.data.data;for(let m of p){let g=m.videos;if(typeof g=="string"){R("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${g}`);try{let _=await Me(g);g=typeof _.data=="string"?JSON.parse(_.data):_.data}catch(_){R("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${_.message}`);continue}}if(g&&typeof g=="object"&&g.feature_paged)for(let _ in g.feature_paged){let y=g.feature_paged[_];for(let A of y){if(A.content_type!==1)continue;let v=(A.play_url||"").match(/tvid=(\d+)/);if(!v)continue;let b=v[1],I=A.short_display_name||A.title||"\u672A\u77E5\u5206\u96C6",T=A.subtitle;T&&!I.includes(T)&&(I=`${I} ${T}`);let x=A.album_order,w=A.page_url;b&&I&&x&&w&&c.push({id:b,title:I,order:x,link:w})}}}}if(!d)return R("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(h=>[h.id,h])).values());return f.sort((h,p)=>h.order-p.order),R("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return R("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(t){try{let r={entity_id:t,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${So(r)}`;R("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await Me(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return R("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c)return R("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${c[1]}`),c[1]}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c)return R("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${c[1]}`),c[1]}}return R("info",`[iQiyi] \u54CD\u5E94\u4E2D\u672A\u627E\u5230 v_xxx \u683C\u5F0F\u89C6\u9891ID\uFF0C\u4F7F\u7528 entity_id: ${t}`),R("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),t}catch(r){return R("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(t){try{let r=parseInt(t,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return R("error",`[iQiyi] \u5C06 video_id '${t}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(t){let r=t.toString(2),n=e.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;uZt(l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h of d){let p=h.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:h.order.toString(),url:p,title:`\u3010qiyi\u3011 ${h.title}`})}if(f.length>0){let p={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(p),or({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",t);let r;try{r=await Me(t,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return R("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";R("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(t);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;R("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return R("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return Ri(c),c}async getEpisodeDanmuSegments(t){R("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s,i;try{let f=t.match(/v_(\w+)/);if(!f)return R("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new zt({type:"qiyi",segmentList:[]});s=f[1],R("info",`[iQiyi] tvid: ${s}`),i=s;let h=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await Me(h,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),R("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(f){return R("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",f),new zt({type:"qiyi",segmentList:[]})}let a;try{let f=`${n}${s}`,h=await Me(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=(typeof h.data=="string"?JSON.parse(h.data):h.data).data;if(a=Number(m.durationSec)||0,m.displayBarrage===!1)return R("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new zt({type:"qiyi",duration:a,segmentList:[]});R("info",`[iQiyi] \u65F6\u957F: ${a}`)}catch(f){R("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",f)}if(!a&&i&&i!==s){R("info",`[iQiyi] decode \u540E tvid \u65E0\u6548\uFF0C\u7528\u539F\u59CB tvid \u91CD\u8BD5: ${i}`);try{let f=`${n}${i}`,h=await Me(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=typeof h.data=="string"?JSON.parse(h.data):h.data,m=Number(p.data.durationSec)||0;m>0&&(s=i,a=m,R("info",`[iQiyi] \u539F\u59CB tvid \u6709\u6548\uFF0C\u65F6\u957F: ${a}`))}catch(f){R("error","[iQiyi] \u539F\u59CB tvid \u91CD\u8BD5\u4E5F\u5931\u8D25:",f)}}if(!a)return new zt({type:"qiyi",segmentList:[]});let o=60,c=Math.ceil(a/o);R("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${c}`);let u=[],l=`0000${s}`,d=`${l.slice(-4,-2)}/${l.slice(-2)}`;for(let f=0;f(.*?)`,"g");return t.match(c)?.map(u=>u.substring(o.length+2,u.length-o.length-3))||[]}let n=r("content"),s=r("showTime"),i=r("color"),a=r("likeCount");return n.map((o,c)=>({content:o,showTime:s[c],color:i[c],like:parseInt(a[c],10)||0}))}_parseIqiyiProtoDanmu(t){let r=[],n=this._parseIqiyiProtoFields(t);for(let s of n){if(s.number!==6||!s.bytes)continue;let i=this._parseIqiyiProtoFields(s.bytes),a=this._getIqiyiProtoString(i,1);for(let o of i){if(o.number!==2||!o.bytes)continue;let c=this._parseIqiyiProtoFields(o.bytes),u=this._getIqiyiProtoString(c,2);u&&r.push({content:u,showTime:this._getIqiyiProtoString(c,6)||a||"0",color:this._getIqiyiProtoString(c,8)||"ffffff",like:parseInt(this._getIqiyiProtoString(c,14),10)||0})}}return r}_parseIqiyiProtoFields(t){let r=[],n=0,s=new TextDecoder("utf-8");for(;n>3n),c=Number(a&7n);if(o===0)break;if(c===0){let u=this._readIqiyiVarint(t,n);r.push({number:o,wireType:c,value:u.value.toString()}),n=u.offset}else if(c===1)r.push({number:o,wireType:c}),n+=8;else if(c===2){let u=this._readIqiyiVarint(t,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>t.length)break;let f=t.subarray(n,d);r.push({number:o,wireType:c,bytes:f,value:s.decode(f)}),n=d}else if(c===5)r.push({number:o,wireType:c}),n+=4;else break}return r}_readIqiyiVarint(t,r){let n=0n,s=0n,i=r;for(;in.number===r)?.value||""}formatComments(t){return t.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return n.timepoint=parseFloat(r.showTime),n.color=parseInt(r.color,16),n.content=$m(r.content),n.size=25,n.like=r.like,n})}}});var QS,sSe=ie(()=>{Ai();Wt();Kt();Hr();fs();Ro();eE();oa();oi();Ki();QS=class extends tr{transformV2Color(t){if(!t)return-1;let n=Dfe(t.color_left),s=Dfe(t.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(t){let r=(t||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(t){try{R("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${t}`),this._deviceId||(this._deviceId=Ci(`danmu-api-mango-${Date.now()}`));let r=Date.now(),n=Ci(this._deviceId+"."+r),i=`https://mobileso.bz.mgtv.com/aphone/search/rebirth/v2?q=${encodeURIComponent(t)}&_support=10100001&device=23127PN0CC&osVersion=16&appVersion=9.3.3&did=${this._deviceId}&mac=${this._deviceId}&seqId=${n}&ticket=&userId=0&osType=android&type=10&abroad=0`,a=await Me(i,{headers:{"User-Agent":"Dalvik/2.1.0 (Linux; U; Android 16; 23127PN0CC Build/AP1A.240505.003)",Accept:"application/json"}});if(!a||!a.data)return R("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(!o.data||!o.data.contents)return R("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o.data.contents)if(u.type==="mediaRebirthV2")for(let l of u.data){if(l.source&&l.source!=="imgo"||!l.clipId)continue;let d=String(l.clipId),f=l.title?l.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",h=Array.isArray(l.desc)?l.desc[0]||"":l.desc||"",p=h.match(/[12][890][0-9][0-9]/),m=p?parseInt(p[0]):null,g=h.split("/")[0].replace("\u7C7B\u578B:","").trim(),_=this._extractMediaType(g);c.push({provider:"imgo",mediaId:d,title:f,type:_,year:m,imageUrl:l.img||null,episodeCount:l.videoCount||null})}return R("info",`[Mango] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${t}`);let r=[],n="",s=0,i=1;for(;s0&&r.push(...d.data.list.filter(f=>f.src_clip_id===t)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,R("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(R("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(R("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return R("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return R("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(t){try{R("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${t}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${t}&month=&page=1&_support=10000000`,n=await Me(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return R("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return R("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),R("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return R("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(t){if(!t||t.length===0)return[];R("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${t.length}`);let r=t.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});R("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of t){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),c=a.match(/第(\d+)期/),u=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,h=a.substring(a.indexOf(f)+f.length);/^(加更|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(h)?R("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),R("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|加更|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|删减|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),R("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else R("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){R("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),R("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),R("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Mango] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let h=await this._getMovieEpisode(l.mediaId);if(!h)return;let p=`https://www.mgtv.com/b/${l.mediaId}/${h.video_id}.html`,m=h.t3||h.t1||"\u6B63\u7247",g=[{name:"1",url:p,title:`\u3010imgo\u3011 ${m}`}],y={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(y),or({...y,links:g},s),F.animes.length>F.MAX_ANIMES&&ur();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let p={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(p),or({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(Me(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return R("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return Ri(i),i}async getEpisodeDanmuSegments(t){R("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=t.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return R("error","[Mango] Invalid URL"),new zt({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];R("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let p=`${r}?cid=${c}&vid=${u}`;l=await Me(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(p){return p.response?.status===404?new zt({type:"imgo",segmentList:[]}):(R("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",p),new zt({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,h=!0;try{let p=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,m=await Me(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),g=typeof m.data=="string"?JSON.parse(m.data):m.data;(!g.data||!g.data.cdn_list||!g.data.cdn_version)&&(R("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),h=!1);let _=[];if(h){let y=Math.ceil(jS(f)/60),A=g.data.cdn_list.split(",")[0],E=g.data.cdn_version;for(let v=0;v{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}}});var WS,iSe=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();$u();TC();Vm();WS=class e extends tr{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(t){let r;try{R("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${t}`);let n=parseInt(F.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(SR(),S9))).default)(t,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,t).toString():a.url;return c&&c!==t?(R("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(R("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),t)}catch(n){return R("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),t}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let t=Math.floor(Date.now()/1e3),r=e.WBI_MIXIN_KEY_CACHE;if(r.key&&t-r.timestamp(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=t,R("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return R("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(t,r){let n={...t};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=Ci(o);return n.w_rid=c,n}async _searchByType(t,r,n){try{R("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${t}'`);let s={keyword:t,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await Me(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:F.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return R("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let h=this._extractMediaType(d.season_type_name),p=h==="\u7535\u5F71"?1:d.ep_size||0,m=null;try{d.pubdate?typeof d.pubdate=="number"?m=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(m=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(m=new Date(d.pubtime*1e3).getFullYear())}catch{}let g=$m((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),_=$m((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),y={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:g,org_title:_,type:h,year:m,imageUrl:d.cover||null,episodeCount:p};d.eps&&d.eps.length>0&&(y._eps=d.eps),l.push(y)}return R("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return R("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(t){let r=(t||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(t){let r=[];F.useBangumiData&&(r=await Xf(t,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),R("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{R("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${t}`);let s=await this._getWbiMixinKey(),i=this._searchByType(t,"media_bangumi",s),a=this._searchByType(t,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(R("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(t,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let h of c){if(!h||!h.mediaId&&!h.season_id)continue;let p=r.find(g=>h.mdId&&h.mdId===`md${g.siteId}`)||r.find(g=>h.org_title&&g.title===h.org_title);if(p){let _=(p.titles.find(y=>y&&y.includes(t))||p.titles[1]||p.title)+(p.titleSuffix||"");h.title=_,h._displayTitle=_,h.aliases=[...p.titles],h.type=p.typeStr||h.type,h.isLocalPriority=!0,d.add(`md${p.siteId}`),R("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${h.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let m=h.mediaId||(h.season_id?`ss${h.season_id}`:null);m&&l.has(m)||(m&&l.add(m),u.push(h))}let f=r.filter(h=>!d.has(`md${h.siteId}`));if(f.length>0){let h=f.filter(m=>m.season_id),p=f.filter(m=>!m.season_id);if(h.length>0){R("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${h.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let m of h){let _=(m.titles.find(E=>E&&E.includes(t))||m.titles[1]||m.title)+(m.titleSuffix||""),y={provider:"bilibili",mediaId:`ss${m.season_id}`,mdId:`md${m.siteId}`,title:_,org_title:m.title,aliases:[...m.titles],_displayTitle:_,type:m.typeStr,year:m.begin?parseInt(m.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(m.matchedSiteKey),isLocalPriority:!0},A=y.mediaId;A&&!l.has(A)&&(l.add(A),u.unshift(y))}}if(p.length>0){R("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let m=p.map(async _=>{let y=await this._resolveMediaInfo(_.siteId),E=(_.titles.find(v=>v&&v.includes(t))||_.titles[1]||_.title)+(_.titleSuffix||"");return{provider:"bilibili",mediaId:y.seasonId||`md${_.siteId}`,mdId:`md${_.siteId}`,title:E,org_title:_.title,aliases:[..._.titles],_displayTitle:E,type:_.typeStr,year:_.begin?parseInt(_.begin.substring(0,4)):null,imageUrl:y.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(_.matchedSiteKey),isLocalPriority:!0}}),g=await Promise.all(m);for(let _ of g){let y=_.mediaId;y&&l.has(y)||y&&(l.add(y),u.unshift(_))}}}return R("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return R("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(t){try{let r=await Me(`https://api.bilibili.com/pgc/review/user?media_id=${t}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){R("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${t}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(t){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${t}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${t}`];for(let i of n)try{let a=await Me(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:F.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return R("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${t}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),R("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(t){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${t}`,n=await Me(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:F.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return R("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${t}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return R("info",`[Bilibili] \u89C6\u9891 bvid=${t} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${t}?p=${o.page}`}));return R("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return R("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${t}):`,r.message),[]}}async getEpisodes(t){if(t.startsWith("md")){let r=t.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(t.startsWith("ss")){let r=t.substring(2);return await this._getPgcEpisodes(r)}else if(t.startsWith("bv")){let r=t.substring(2);return await this._getUgcEpisodes(r)}return R("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${t}`),[]}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Bilibili] sourceAnimes is not a valid array"),[];t.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=t.length>0?t[0]._tmdbCnAlias:null;SC(t,o);let c=t.filter(d=>d.isOversea||Zt(d.title,r,i)||d.aliases&&d.aliases.some(f=>Zt(f,r,i))),u=i!==null?i:fr(r);if(u!==null){let d=c.filter(f=>{let h=f._displayTitle||f.title,p=er(h).season;return p===u||u===1&&p===null});d.length>0&&(c=d,R("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],h=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!h){f=d._eps.map((y,A)=>{let E;d.isOversea&&y.position?E=y.position.toString():E=y.index_title||y.index||(A+1).toString();let v=y.title||y.index_title||E,b=y.long_title||"",I=/^\d+(\.\d+)?$/.test(v)?`\u7B2C${v}\u8BDD`:v;b&&b!==v&&(I+=` ${b}`);let T=y.id||y.param,x=`https://www.bilibili.com/bangumi/play/ep${T}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:E,url:x,title:`\u3010bilibili1\u3011 ${I.trim()}`,_id:parseInt(T,10)||0}});let _=f.map(y=>Mm(y.name));_.every(y=>y!==null)?(f.forEach((y,A)=>y._sortKey=_[A]),f.sort((y,A)=>y._sortKey-A._sortKey)):f.sort((y,A)=>y._id-A._id),R("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let _=await this.getEpisodes(d.mediaId);if(_.length===0){R("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}_._cover&&(d.imageUrl=_._cover),f=_.map((y,A)=>{let E=y.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(E+="&area=hkmt"),{name:`${A+1}`,url:E,title:`\u3010bilibili1\u3011 ${y.title}`,_id:parseInt(y.id,10)||0}}),f.sort((y,A)=>y._id-A._id)}if(f.length===0)return;let p=Zn(d.mediaId),m=d._displayTitle||Sr(d.title),g={animeId:p,bangumiId:d.mediaId,animeTitle:`${m}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:bn(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(g),or({...g,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}catch(f){R("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(t){R("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",t);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=t.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),R("info","[Bilibili] ",a);else return R("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(t.includes("video/"))try{let d=t.split("?")[1],f=1;if(d){let g=d.split("&");for(let _ of g){let[y,A]=_.split("=");y==="p"&&(f=A||1)}}R("info",`[Bilibili] p: ${f}`);let h;t.includes("BV")?h=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),h=`${r}?aid=${a[2].substring(2)}`);let p=await Me(h,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return R("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;u=m.data.duration,o=m.data.pages[f-1].cid}catch(d){return R("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(t.includes("bangumi/")&&t.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=t.split("?")[1]||"",h=null,p=!1;f.split("&").forEach(g=>{let[_,y]=g.split("=");_==="season_id"&&(h=y),_==="area"&&y==="hkmt"&&(p=!0)});let m=!1;if(!p){let g=await Me(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),_=typeof g.data=="string"?JSON.parse(g.data):g.data;if(_.code===0&&_.result){let y=_.result.episodes.find(A=>A.id==d);y&&(o=y.cid,u=y.duration/1e3,l=y.share_copy,m=!0)}}if((!m||p)&&h&&this._hasBilibiliProxy()){try{let g=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${h}`),_=await Me(g,{headers:{Cookie:F.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),y=typeof _.data=="string"?JSON.parse(_.data):_.data;if(y.code===0&&y.result){let A=(y.result.episodes||y.result.main_section?.episodes||[]).find(E=>E.id==d);A&&(o=A.cid,c=A.aid,u=A.duration/1e3,l=A.long_title,m=!0)}}catch{}if(!m)try{let g=await Me(`https://api.bilibili.com/pgc/web/season/section?season_id=${h}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:F.bilibliCookie||""}}),_=typeof g.data=="string"?JSON.parse(g.data):g.data;if(_.code===0&&_.result?.main_section?.episodes){let y=_.result.main_section.episodes.find(A=>A.id==d);y&&(o=y.cid,c=y.aid,u=y.duration?y.duration/1e3:0,l=y.long_title,m=!0)}}catch{}}if(!o)return R("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return R("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(t.includes("bangumi/")&&t.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;R("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let h=await Me(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=typeof h.data=="string"?JSON.parse(h.data):h.data;if(p.code!==0)return R("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",p.message),null;if(!p.result.episodes||p.result.episodes.length===0)return R("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let m=p.result.episodes[0];o=m.cid,u=m.duration/1e3,l=m.share_copy,R("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return R("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return R("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return R("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(t){R("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),u=await Promise.all(c),l=!1;for(let d of u)d.status==="ok"&&d.value?i.push(...d.value):(R("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(t){if(R("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),typeof t=="string"&&t.includes("/combine?")){let c=[],u=0,l=0,d=t.startsWith("http")?t:`https://www.bilibili.com${t}`,f=new URL(d);for(let[h,p]of f.searchParams.entries()){if(!h.startsWith("cid"))continue;let m=h.substring(3),[g,_]=p.split("-"),y=parseFloat(g)||0,A=parseFloat(_)||0,E=A-y;if(E<=0)continue;l+=E;let v=Math.ceil(A/360);for(let b=0;b0?Math.ceil(i/360):36;R("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new zt({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=new URL(t.url),n=t.url.split("#")[0],s=await Me(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:F.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=Oit(s.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,c=parseFloat(a.get("combine_end"))||0,u=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of i){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=c){let h=f-o+u;if(d.p&&typeof d.p=="string"){let p=d.p.split(",");p[0]=h.toFixed(5),d.p=p.join(",")}d.t!==void 0&&(d.t=h),d.progress!==void 0&&(d.progress=Math.round(h*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(t){return t.map(r=>(F.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Sr(r.m)),r.like=r.like_num,r))}_makeProxyUrl(t){return F.makeProxyUrl(t)}_hasBilibiliProxy(){return(F.proxyUrl||"").split(",").some(t=>{let r=t.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(t){return encodeURIComponent(t).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(t,r,n,s="Original",i=null){let o=(F.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((F.proxyUrl||"").includes("bilibili@")||(F.proxyUrl||"").includes("@")))return[];if(o){R("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:t,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:e.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(m=>`${m}=${this._javaUrlEncode(String(u[m]))}`).join("&"),d=Ci(l+e.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,h=F.makeProxyUrl(f),p=await this._fetchAppSearchWithStream(h,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(p&&p.code===0)return(p.data?.items||p.data?.result||p.data||[]).filter(m=>m.goto!=="recommend_tips"&&m.area!=="\u6F2B\u6E38"&&m.badge!=="\u516C\u544A").map(m=>({provider:"bilibili",mediaId:m.season_id?`ss${m.season_id}`:m.uri.match(/season\/(\d+)/)?.[1]?`ss${m.uri.match(/season\/(\d+)/)[1]}`:"",title:$m((m.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:$m((m.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(m.season_type_name),year:m.ptime?new Date(m.ptime*1e3).getFullYear():null,imageUrl:m.cover||m.pic||"",episodeCount:0,_eps:m.episodes||m.episodes_new,checkMore:m.check_more,isOversea:!0})).filter(m=>m.mediaId);p&&p.code!==0&&R("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${p.code}: ${p.message}`)}catch(u){if(u.name==="AbortError")throw u;R("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}R("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else R("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:t,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(m=>`${encodeURIComponent(m)}=${encodeURIComponent(u[m])}`).join("&")}`,f=F.makeProxyUrl(d),h=await Me(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:F.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),p=typeof h.data=="string"?JSON.parse(h.data):h.data;if(p.code!==0)return R("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${p.code}: ${p.message}`),[];if(p.data?.result)return p.data.result.filter(m=>m.url?.includes("bilibili.com")&&!m.areas?.includes("\u6F2B\u6E38")).map(m=>({provider:"bilibili",mediaId:m.season_id?`ss${m.season_id}`:"",mdId:m.media_id?`md${m.media_id}`:null,title:$m((m.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:$m((m.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(m.season_type_name),year:m.pubtime?new Date(m.pubtime*1e3).getFullYear():null,imageUrl:m.cover||null,episodeCount:m.ep_size||0,_eps:m.eps,isOversea:!0})).filter(m=>m.mediaId)}catch(u){if(u.name==="AbortError")throw u;R("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(t,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(t,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=t),c}).catch(()=>[]),a=F.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await vC(t,n.signal,"Bilibili");if(o&&o.title&&o.title!==t){let{title:c,cnAlias:u}=o,l=s.map(async(f,h)=>(h>0&&await new Promise(p=>setTimeout(p,h*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=t,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(t,r,n,s){if(typeof hfe!="function")return null;let i=!1,a=!1,o=await hfe(t,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(R("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}}});var XS,aSe=ie(()=>{Ai();Wt();Kt();Hr();fs();oa();Ro();oi();Ki();XS=class extends tr{convertYoukuUrl(t){let r=t.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(t,r){let n=t.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(t){try{R("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=encodeURIComponent(t),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await Me(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return R("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return R("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,t);u&&o.push(u)}return R("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return R("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${t}`);let r=100,n=await this._getEpisodesPage(t,1,r);if(!n||!n.videos||n.videos.length===0)return R("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);R("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(t,u,r));let c=await Promise.allSettled(o);for(let u=0;uZt(l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),h=this._processAndFormatEpisodes(d,f),p=[];for(let m of h){let g=m.link||`https://v.youku.com/v_show/id_${m.vid}.html`;p.push({name:m.episodeIndex.toString(),url:g,title:`\u3010youku\u3011 ${m.title}`})}if(p.length>0){let g={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"youku"};a.push(g),or({...g,links:p},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(t,r="variety"){return[...t].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(t,r,n){let s=t.displayName||t.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${t.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${t.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(t,r){let n=(t||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(t){if(R("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",t),!t)return[];let n=(await this.getEpisodeDanmuSegments(t)).segmentList,s=[],i=F.youkuConcurrency,a=[...n];for(let o=0;o{let l=await Gn(u.url,So({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){R("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return Ri(s),s}async getEpisodeDanmuSegments(t){if(R("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),!t)return new zt({type:"youku",segmentList:[]});t.includes("youku.com/video?vid")&&(t=this.convertYoukuUrl(t));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=t.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),R("info","[Youku]",a);else return R("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);R("info",`[Youku] video_id: ${o}`);let c;try{let E=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await Me(E,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(E){return R("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",E),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;R("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,h,p;try{let E="https://log.mmstat.com/eg.js",v="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",b=await Me(E,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});R("info",`[Youku] cnaRes: ${JSON.stringify(b)}`),R("info",`[Youku] cnaRes.headers: ${JSON.stringify(b.headers)}`);let I=b.headers.etag||b.headers.Etag;R("info",`[Youku] etag: ${I}`),f=I.replace(/^"|"$/g,""),R("info",`[Youku] cna: ${f}`);let T;for(;!T;)T=await Me(v,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});R("info",`[Youku] tkEncRes: ${JSON.stringify(T)}`),R("info",`[Youku] tkEncRes.headers: ${JSON.stringify(T.headers)}`);let x=T.headers["set-cookie"]||T.headers["Set-Cookie"];R("info",`[Youku] tkEncSetCookie: ${x}`);let w=x.match(/_m_h5_tk_enc=([^;]+)/);h=w?w[1]:null;let D=x.match(/_m_h5_tk=([^;]+)/);p=D?D[1]:null,R("info",`[Youku] _m_h5_tk_enc: ${h}`),R("info",`[Youku] _m_h5_tk: ${p}`)}catch(E){return R("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",E),[]}let m=60,g=Math.floor(d/m)+1,_=[],y=async E=>{let v={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:E,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},b=JSON.stringify(v);function I(G){let $="";for(let K=0;K255?$+=encodeURIComponent(G[K]):$+=G[K];return $}function T(G){let $="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",K="",ee=0,z=0;for(let oe=0;oe=6;)K+=$[ee>>z-6&63],z-=6;for(z>0&&(K+=$[ee<<6-z&63]);K.length%4!==0;)K+="=";return K}let x=T(I(b));v.msg=x,v.sign=Ci(`${x}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let w=JSON.stringify(v),D=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:D,sign:Ci([p.slice(0,32),D,"24679788",w].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},L=So(M),U=`${n}?${L}`;return R("info",`[Youku] piece_url: ${U}`),{type:"youku",segment_start:E*m,segment_end:Math.min((E+1)*m,d),url:U,data:w,_m_h5_tk:p,_m_h5_tk_enc:h}},A=Array.from({length:g},(E,v)=>v);for(let E=0;E{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};n.timepoint=r.playat/1e3;let s=JSON.parse(r.propertis);if(s?.color&&(n.color=typeof s.color=="string"?parseInt(s.color,10):s.color),s?.pos){let i=s.pos;i===1?n.ct=5:i===2&&(n.ct=4)}return n.content=r.content,n.like=r.extFields.voteUp,n})}}});var Ahs,Ehs,yhs,vhs,Shs,Ths,lH,fk,pRt=ie(()=>{Ai();Wt();Kt();Hr();oi();$u();Ki();TC();rSe();nSe();sSe();iSe();aSe();tSe();fs();Vm();Ahs=new zS,Ehs=new YS,yhs=new QS,vhs=new WS,Shs=new XS,Ths=new GS,lH=`LogVar Danmu API/${F.version}`,fk=class extends tr{async search(t,r=!1){if(F.useBangumiData&&!r){let n=await Xf(t,["anidb"]);if(n.length>0)return R("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(t))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{R("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${t}`);let n=new AbortController,s=(async()=>{try{let c=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${t}`,{headers:{"Content-Type":"application/json","User-Agent":lH},retries:1});if(!c||!c.data)return R("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return R("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return R("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),R("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return R("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(h=>setTimeout(h,100));let c=await vC(t,n.signal,"Dandan");if(!c||!c.title)return R("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;R("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":lH},signal:n.signal,retries:1});if(!d||!d.data)return R("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return R("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let h of f)h.isTmdbSource=!0,h._tmdbCnAlias=l;return R("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),R("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return R("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(R("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${t})`),!r){let c=t.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==t)return R("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return R("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(t){try{let r=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${t}`,{headers:{"Content-Type":"application/json","User-Agent":lH},retries:1});if(!r||!r.data)return R("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return R("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return R("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return R("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(t,r){if(!t||!r)return 0;let n=new Set(t.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Dandan] sourceAnimes is not a valid array"),[];t.forEach(p=>{p.title=p.animeTitle});let o=t.length>0?t[0]._tmdbCnAlias:null;SC(t,o);let c=t.length,u=new Set,l=[],d=i!==null?i:fr(r),f=t,h=!1;if(d!==null){let p=t.filter(m=>{let g=m._displayTitle||m.animeTitle,_=er(g).season;return _===d||d===1&&_===null});p.length>0&&(f=p,h=!0,R("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let p of f)u.add(p.animeId),l.push({...p,isRelated:!1});for(;l.length>0;){let p=l.splice(0,l.length);await Promise.all(p.map(async m=>{try{let g=await this.getEpisodes(m.animeId),_=g.episodes,y=g.titles||[],A=this.calculateSimilarity(r,m.animeTitle),E=!h;if(A>=.1&&g.relateds&&Array.isArray(g.relateds)&&E)for(let T of g.relateds){let x=er(T.animeTitle).season!==null;!u.has(T.animeId)&&(x||c>=25)&&(u.add(T.animeId),l.push({animeId:T.animeId,animeTitle:T.animeTitle,imageUrl:T.imageUrl,rating:T.rating||0,isRelated:!0}))}let v=[m.animeTitle,...y,...m.aliases||[]],b=!1;if(m.isRelated||m.isTmdbSource)if(d!==null){let T=null;for(let x of v){if(!x)continue;let w=fr(x);if(w!==null){T=w;break}}d>1?b=(T||1)===d:d===1&&(b=T===null||T===1)}else b=!0;else b=v.some(T=>T&&Zt(T,r,d));if(!b)return;let I=[];for(let T of _){let x=T.episodeTitle&&T.episodeTitle.trim()!==""?`${T.episodeTitle}`:`\u7B2C${T.episodeNumber}\u96C6`;I.push({name:x,url:T.episodeId.toString(),title:`\u3010dandan\u3011 ${x}`})}if(I.length>0){let T=m._displayTitle||m.animeTitle,x=[...new Set([...y,...m.aliases||[]])];m.animeTitle&&m.animeTitle!==T&&!x.includes(m.animeTitle)&&x.push(m.animeTitle);let w=g.type||m.type||"tvseries",D=g.typeDescription||m.typeDescription||"TV\u52A8\u753B",M=m.startDate||(_.length>0?_[0].airDate:null),L=M?new Date(M).getFullYear():"\u672A\u77E5",U={animeId:m.animeId,bangumiId:String(m.animeId),animeTitle:`${T}(${L})\u3010${D}\u3011from dandan`,aliases:x,type:w,typeDescription:D,imageUrl:g.imageUrl||m.imageUrl,startDate:M,episodeCount:I.length,rating:m.rating||0,isFavorited:!0,source:"dandan"};a.push(U),or({...U,links:I},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(g){R("error",`[Dandan] Error processing anime: ${g.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(t,r=[]){let n=[],s={};try{let a=await Me(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${t}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":lH},retries:1}).catch(o=>(R("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){R("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(t){return R("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new zt({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>r.isRealTimePulled?F.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:Sr(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:F.danmuSimplifiedTraditional==="simplified"?Sr(r.m):r.m})}}});var hk,mRt=ie(()=>{Ai();Wt();Kt();Hr();oi();$u();Ki();hk=class extends tr{async search(t){try{let r=await Me(`${F.customSourceApiUrl}/api/v2/search/anime?keyword=${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(R("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(R("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(R("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return R("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(t){try{let r=await Me(`${F.customSourceApiUrl}/api/v2/bangumi/${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(R("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(R("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(R("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return R("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null){let i=[];if(!t||!Array.isArray(t))return R("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),or({...l,links:u},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(c){R("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(t){let r=[];try{let n=await Me(`${F.customSourceApiUrl}/api/v2/comment/${t}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return R("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(t){return R("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new zt({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:F.danmuSimplifiedTraditional==="simplified"?Sr(r.m):r.m}))}}});function _Rt(e){let t=yg[e];return e>=132&&(yg[e]=gk,gk=e),t}function oSe(){return(mk===null||mk.byteLength===0)&&(mk=new Uint8Array(cSe.buffer)),mk}function dH(){return(pk===null||pk.byteLength===0)&&(pk=new Int32Array(cSe.buffer)),pk}function ARt(e,t){return e=e>>>0,kd(oSe().subarray(e,e+t))}function gRt(e,t,r){if(r===void 0){let i=vS(e),a=t(i.length,1)>>>0;return oSe().subarray(a,a+i.length).set(i),fH=i.length,a}let n=vS(e),s=t(n.length,1)>>>0;return oSe().subarray(s,s+n.length).set(n),fH=n.length,s}function KQr(e){return e==null}function GQr(e){let t=atob(e.replace(/\s+/g,"")),r=new Uint8Array(t.length);for(let n=0;n_Rt(n),__wbindgen_string_new:(n,s)=>{let i=ARt(n,s);gk===yg.length&&yg.push(yg.length+1);let a=gk;return gk=yg[a],yg[a]=i,a},__wbindgen_debug_string:()=>{}}};return kl=(await WebAssembly.instantiate(e,t)).instance.exports,cSe=kl.memory,pk=null,mk=null,kl}function YQr(e,t){let r,n;try{let s=kl.__wbindgen_add_to_stack_pointer(-16),i=gRt(e,kl.__wbindgen_malloc,kl.__wbindgen_realloc),a=fH,o=KQr(t)?0:gRt(t,kl.__wbindgen_malloc,kl.__wbindgen_realloc),c=fH;kl.gateway_decrypt(s,i,a,o,c);let u=dH()[s/4+0],l=dH()[s/4+1],d=dH()[s/4+2],f=dH()[s/4+3],h=u,p=l;if(f)throw h=0,p=0,_Rt(d);return r=h,n=p,ARt(h,p)}finally{kl.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&kl.__wbindgen_free(r,n,1)}}async function ERt(e,t){return e=e.replace(/\s+/g,""),await zQr(),YQr(e,t)}var jQr,kl,pk,mk,cSe,fH,yg,gk,yRt=ie(()=>{oa();jQr=` AGFzbQEAAAABWA5gAn9/AX9gA39/fwF/YAJ/fwBgA39/fwBgAX8Bf2ABfwBgBX9/f39/AX9gBX9/f39/AGAAAX9gBH9/f38AYAR/ f39/AX9gAn5/AX9gBn9/f39/fwBgAAACXAMDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5f c3RyaW5nX25ldwAAA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwACA4gBhgEEAgUBAAIGBQMFAQMBAgMCAwMCAgAGAAsABQIB @@ -1191,9 +1528,9 @@ AgICAgICAgICAgICAwMDAwMDAwMDAwMDAwMDAwQEBAQEAEGNosAAC0xOb25lU29tZQAAADIAAAAEAAAA ZjhFcnJvcnZhbGlkX3VwX3RvZXJyb3JfbGVuAAAyAAAABAAAAAQAAAA4AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJv Y2Vzc2VkLWJ5AwVydXN0Yx0xLjc0LjAgKDc5ZTk3MTZjOSAyMDIzLTExLTEzKQZ3YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbhIw LjIuODcgKGYwYThhZTNiOSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0 -`,Dc=null,sO=null,aO=null,Y0e=null,R8=0,Um=new Array(132).fill(void 0);Um.push(void 0,null,!0,!1);oO=Um.length});var W0e,Ayt,vyt=ve(()=>{ki();Ot();Ct();yr();vs();oy();Ba();Ei();_yt();bi();rs();W0e=class extends Tt{async search(t){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:t,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},i={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},s=await Nn(r,JSON.stringify(n),{headers:i});if(!s||!s.data)return x("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof s.data=="string"?JSON.parse(s.data):s.data)?.body?.contentInfoList,u=[];return o.forEach(c=>{let l=c?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,u.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),x("info",`[Migu] \u641C\u7D22\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(r){return x("error","getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(t){let n=t.split("?")[0].split("/").filter(i=>i!=="");return n[n.length-1]||""}async getDetail(t){try{let r=await Ie(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${t}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return x("info","getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,i=r.data?.body?.data?.epsID||null;return{duration:n,epsID:i}}catch(r){return x("error","getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(t){try{let r=await Ie(t,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return x("info","getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let i=r.data?.body?.data?.name,s=r.data?.body?.data?.playing?.pID;return s?[{name:i,pID:s}]:(x("info","getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return x("error","getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Migu] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.name||o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.url||o.mediaId),c=[];for(let l of u)c.push({name:l.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${o.epsId??l.pID}/${l.pID}`,title:`\u3010migu\u3011 ${l.name}`});if(c.length>0){let l={animeId:yn(o.epsId??u[0]?.pID),bangumiId:String(o.epsId??u[0]?.pID),animeTitle:`${o.name||o.title}(${o.year})\u3010${o.type}\u3011from migu`,type:o.type,typeDescription:o.type,imageUrl:o.img??o.imageUrl,startDate:Wr(o.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"migu"};s.push(l),Bt({...l,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Migu] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=100,s=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),c=await Promise.allSettled(u);for(let l=0;l0&&s.push(...m)}else x("error",`\u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${h}s):`,d.reason.message)}a+isetTimeout(l,200))}return s.length===0?(x("info",`\u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):($i(s),s)}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=this.extractEpId(t),n=await this.getDetail(r),i=Hv(n.duration);x("info","itemId:",r),x("info","durationSec:",i),x("info","epsID:",n.epsID);let s=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${hw(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},Ayt=W0e});var uO,byt=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();uO=class extends Tt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(t,r){if(!t.aid||!t.album_name||t.is_trailer===1||t.corner_mark&&t.corner_mark.text==="\u9884\u544A")return null;let n=t.album_name.replace("<<<","").replace(">>>",""),i=null;if(t.meta&&Array.isArray(t.meta)){for(let s of t.meta)if(s.txt&&s.txt.includes("|")){let a=s.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?i=a[1].trim():i=o;break}}}return{mediaId:String(t.aid),title:n,type:i,year:t.year||null,imageUrl:t.ver_big_pic||null,episodeCount:t.total_video_count||0}}async search(t){try{x("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={key:t,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},i=`https://m.so.tv.sohu.com/search/pc/keyword?${Zs(r)}`,s=await Ie(i,{headers:n});if(!s||!s.data)return x("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!a.data||!a.data.items)return x("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let u of a.data.items){let c=this.filterSohuSearchItem(u,t);c&&o.push(c)}return x("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return x("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(t){let r={playlistid:t,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},i=`https://pl.hd.sohu.com/videolist?${Zs(r)}`,s=await Ie(i,{headers:n,timeout:15e3});if(!s||!s.data)return null;let a=s.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,u=a.lastIndexOf(")");if(o>0&&u>o)a=JSON.parse(a.substring(o,u));else return x("error","\u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(t){try{x("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`);let r=await this.getPlaylistData(t);if(!r)return x("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return x("warning",`\u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${t})`),[];let i=[];for(let s=0;sMt(o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.mediaId),c=[];for(let l=0;l0){let d={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||new Date().getFullYear()})\u3010${o.type}\u3011from sohu`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year||new Date().getFullYear()),episodeCount:c.length,rating:0,isFavorited:!0,source:"sohu"};s.push(d),Bt({...d,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Sohu] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDuration(t,r){if(!t)return 0;try{let n=await this.getPlaylistData(t),i=Array.isArray(n?.videos)?n.videos:[];if(!i.length)return 0;let s=i.find(o=>String(o?.vid||"")===String(r||""))||(i.length===1?i[0]:null),a=Number(s?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return x("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(t){let r,n="0",i=await Ie(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),s=i.data.match(/vid="(\d+)"/);return s&&(r=s[1]),n=i.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=i.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=10,s=[];for(let a=0;athis.getDanmuSegment(l)),c=await Promise.allSettled(u);for(let l=0;l0)s.push(...m);else if(p>600)break}else x("error",`\u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${h}s):`,d.reason.message)}a+isetTimeout(l,200))}return s.length===0?(x("info",`\u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):($i(s),s)}async getDanmuSegment(t){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await Ie(t.url,{headers:r,timeout:1e4});if(!n||!n.data)return x("error",`\u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${t.segment_start}-${t.segment_end}s)`),[];try{let s=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return s&&s.length>0&&x("info",`\u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${s.length} \u6761\u5F39\u5E55 (${t.segment_start}-${t.segment_end}s)`),s||[]}catch(i){return x("error",`\u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${i.message}`),[]}}catch(r){return x("error",`\u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let{vid:r,aid:n}=await this.extractVidAndAid(t),i=await this.getEpisodeDuration(n,r),s=i>0?Math.ceil(i):10800,a=300,o=[];for(let u=0;u0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=await Ie(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let i=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...i.info?.comments||[])}return n}catch(r){return x("error","\u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let i=r.v||0,s=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",u=1;r.t&&r.t.p&&(u=this.positionMap[r.t.p]||1);let c=`${i},1,25,${n},${s},0,${a},${o}`;return{cid:String(o),p:c,m:r.c||"",t:parseFloat(i),like:r.fcount}}catch(n){return x("error",`\u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}}});var Eyt,cO,Syt=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();Eyt={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},cO=class extends Tt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(t,r){if(!t.pid||!t.title)return null;let n=t.title,i=Eyt[t.type]||"\u7535\u89C6\u5267";return{mediaId:String(t.pid),title:n,type:i,year:t.year||null,imageUrl:t.imageUrl||null,episodeCount:t.episodeCount||0}}async search(t){try{x("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={wd:t,from:"pc",ref:"click",click_area:"search_button",query:t,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},i=`https://so.le.com/s?${Zs(r)}`,s=await Ie(i,{headers:n,timeout:15e3});if(!s||!s.data)return x("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=s.data;x("debug",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],u=/
]*data-info="({.*?})"[^>]*>/g,c,l=[];for(;(c=u.exec(a))!==null;)l.push(c);x("debug",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];x("debug",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let p=JSON.parse(f);x("debug",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let h=p.pid||"",m=p.type||"",y=p.total||"0";if(!h)continue;let g=d.index,v=[`
+`,kl=null,pk=null,mk=null,cSe=null,fH=0,yg=new Array(132).fill(void 0);yg.push(void 0,null,!0,!1);gk=yg.length});var uSe,vRt,SRt=ie(()=>{Ai();Wt();Kt();Hr();oa();eE();Ro();oi();yRt();fs();Ki();uSe=class extends tr{async search(t){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:t,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await Gn(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return R("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),R("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return R("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(t){let n=t.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(t){try{let r=await Me(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${t}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return R("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return R("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(t){try{let r=await Me(t,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return R("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(R("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return R("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Migu] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.name||l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,h=er(f).season;return h===c||c===1&&h===null});l.length>0&&(o=l,R("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let h of d)f.push({name:h.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??h.pID}/${h.pID}`,title:`\u3010migu\u3011 ${h.name}`});if(f.length>0){let h={animeId:Zn(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:bn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(h),or({...h,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...m)}else R("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Ri(i),i)}async getEpisodeDanmuSegments(t){R("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=this.extractEpId(t),n=await this.getDetail(r),s=jS(n.duration);R("info","[Migu] itemId:",r),R("info","[Migu] durationSec:",s),R("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${BR(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},vRt=uSe});var _k,TRt=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();_k=class extends tr{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(t,r){if(!t.aid||!t.album_name||t.is_trailer===1||t.corner_mark&&t.corner_mark.text==="\u9884\u544A")return null;let n=t.album_name.replace("<<<","").replace(">>>",""),s=null;if(t.meta&&Array.isArray(t.meta)){for(let i of t.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(t.aid),title:n,type:s,year:t.year||null,imageUrl:t.ver_big_pic||null,episodeCount:t.total_video_count||0}}async search(t){try{R("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={key:t,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${So(r)}`,i=await Me(s,{headers:n});if(!i||!i.data)return R("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return R("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,t);u&&o.push(u)}return R("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return R("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(t){let r={playlistid:t,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${So(r)}`,i=await Me(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return R("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(t){try{R("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`);let r=await this.getPlaylistData(t);if(!r)return R("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return R("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${t})`),[];let s=[];for(let i=0;iZt(l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Sohu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let p={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(p),or({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(t,r){if(!t)return 0;try{let n=await this.getPlaylistData(t),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return R("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(t){let r,n="0",s=await Me(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(t){R("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...m);else if(h>600)break}else R("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Ri(i),i)}async getDanmuSegment(t){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await Me(t.url,{headers:r,timeout:1e4});if(!n||!n.data)return R("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${t.segment_start}-${t.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&R("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${t.segment_start}-${t.segment_end}s)`),i||[]}catch(s){return R("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return R("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(t){R("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let{vid:r,aid:n}=await this.extractVidAndAid(t),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;c0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(t){try{let r=await Me(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return R("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return R("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}}});var bRt,Ak,IRt=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();bRt={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},Ak=class extends tr{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(t,r){if(!t.pid||!t.title)return null;let n=t.title,s=bRt[t.type]||"\u7535\u89C6\u5267";return{mediaId:String(t.pid),title:n,type:s,year:t.year||null,imageUrl:t.imageUrl||null,episodeCount:t.episodeCount||0}}async search(t){try{R("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${t}`);let r={wd:t,from:"pc",ref:"click",click_area:"search_button",query:t,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${So(r)}`,i=await Me(s,{headers:n,timeout:15e3});if(!i||!i.data)return R("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;R("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/
]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);R("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];R("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let h=JSON.parse(f);R("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${h.pid}, type=${h.type}`);let p=h.pid||"",m=h.type||"",g=h.total||"0";if(!p)continue;let _=d.index,y=[`

`,`
-
`,"

"],A=-1;for(let $ of v){let Q=a.indexOf($,g);if(Q!==-1){A=Q;break}}if(A===-1){let $=a.indexOf('
[\s\S]*?]*title="([^"]*)"[^>]*>/.exec(_);if(S&&S[1]&&(E=S[1].trim()),!E&&p.keyWord){let $=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(p.keyWord);$&&$[1]&&(E=$[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!E){let $=/]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(_);$&&$[1]&&(E=$[1].trim())}E||x("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let C=/]*(?:src|data-src|alt)="([^"]+)"/.exec(_),I=C?C[1]:"",N=null,T=/年份:<\/b>.*?>(\d{4})<\/a>/.exec(_);T||(T=/上映时间:<\/b>.*?>(\d{4})<\/a>/.exec(_)),T||(T=/_y(\d{4})_/.exec(_)),T||(T=/(\d{4})/.exec(p.keyWord||"")),T&&(N=parseInt(T[1]));let k=Eyt[m]||"\u7535\u89C6\u5267",O=y&&/^\d+$/.test(y)?parseInt(y):0,P={mediaId:h,title:E,type:k,year:N,imageUrl:I&&I.startsWith("http")?I:I?`https:${I}`:null,episodeCount:O};o.push(P),x("debug",`[Leshi] \u89E3\u6790\u6210\u529F - ${E} (pid=${h}, type=${k}, episodes=${O})`)}catch(f){x("warning",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){x("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${t}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),x("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)x("info",` - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else x("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${t}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return x("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{x("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`);let r=[`https://www.le.com/tv/${t}.html`,`https://www.le.com/comic/${t}.html`,`https://www.le.com/playlet/${t}.html`,`https://www.le.com/movie/${t}.html`],n=null;for(let l of r)try{let d=await Ie(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,x("debug",`\u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){x("debug",`\u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return x("error",`\u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${t}`),[];let i=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return x("debug","\u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],t);let s=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return x("debug","\u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],t);x("debug","\u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/
0?(x("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${c.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),c):[]}catch(r){return x("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(t,r){try{let n=/
]*>[\s\S]*?<\/div>/g,i=t.match(n);if(!i||i.length===0){x("debug","\u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/
[\s\S]*?<\/dl>/g,o=t.match(a);if(!o||o.length===0){x("debug","\u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let u=/]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,c=t.match(u);return!c||c.length===0?(x("error",`\u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(c,r)}return this.extractEpisodes(o,r)}let s=[];for(let a of i){let o=/
[\s\S]*?<\/dl>/.exec(a);o&&s.push(o[0])}return s.length===0?(x("error",`\u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(s,r)}catch(n){return x("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(t,r){let n=[];for(let i of t)try{let s=/]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(i);if(!s){x("debug","\u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=s[1],o=s[2],u=`https:${a}`,c="",l=/
[\s\n\r]*]*title="([^"]*)"[^>]*>([^<]*)<\/a>/.exec(i);if(l&&l[1])c=l[1].trim();else if(l&&l[2])c=l[2].trim();else{let p=/]*title="([^"]*)"[^>]*>[\s\S]*?
/.exec(i)||/
[\s\S]*?]*title="([^"]*)"/.exec(i);if(p&&p[1])c=p[1].trim();else{let h=/
]*>([^<]*)/.exec(i);if(h&&h[1])c=h[1].trim();else{let m=/]*title="[^"]*"[^>]*>([^<]*)/.exec(i);m&&m[1]&&(c=m[1].trim())}}}if(!c){let p=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(i);p?c=`\u7B2C${p[1]||p[2]}\u96C6`:c=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(c)){x("debug",`\u8DF3\u8FC7\u9884\u544A\u7247: ${c}`);continue}let f={vid:o,title:c,url:u,episodeId:`${o}:${r}`};n.push(f)}catch(s){x("warning",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${s.message}`);continue}return x("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Leshi] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.mediaId),c=[];for(let l=0;l0){let d={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||new Date().getFullYear()})\u3010${o.type}\u3011from leshi`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year||new Date().getFullYear()),episodeCount:c.length,rating:0,isFavorited:!0,source:"leshi"};s.push(d),Bt({...d,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Leshi] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=10,s=[];for(let a=0;athis.getDanmuSegment(l)),c=await Promise.allSettled(u);for(let l=0;l0)s.push(...m);else if(p>600)break}else x("error",`\u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${h}s):`,d.reason.message)}a+isetTimeout(l,200))}return s.length===0?(x("info",`\u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):($i(s),s)}async getDanmuSegment(t){try{let r=await Ie(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let i=typeof r.data=="string"?r.data:JSON.stringify(r.data),s=/vjs_\d+\((.*)\)/.exec(i);if(s){let a=JSON.parse(s[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return x("error","\u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=t,n=t.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let i=await this.getVideoDuration(r),s=[];for(let a=0;a{try{let n=this.positionMap[parseInt(r.position)]||1,i=parseFloat(r.start||0),s=r.color||"FFFFFF",a=parseInt(s,16),o=r.id||r._id||"",u=r.txt||"",c=`${i.toFixed(2)},${n},25,${a},[${this.constructor.name.toLowerCase()}]`;return{cid:String(o),p:c,m:u,t:Math.round(i*100)/100}}catch(n){return x("error",`\u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}}});var X0e,wyt,Iyt=ve(()=>{ki();Ot();Ct();yr();vs();Ba();Ei();bi();rs();X0e=class extends Tt{async search(t){try{let r=`https://m.ixigua.com/s/${t}`,i=(await Ie(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,s=[],a=/
[\s\S]*?

[\s\S]*?相关视频[\s\S]*?<\/h2>[\s\S]*?
([\s\S]*?)<\/div><\/div><\/div>/,o=i.match(a);if(o){let u=o[1],c=/
[\s\S]*?(?=
|$)/g;(u.match(c)||[]).forEach(d=>{let f=d.match(/href="(\/video\/\d+)"/),p=f?`https://m.ixigua.com${f[1]}`:"",h=d.match(/

[\s\S]*?title="([^"]+)"/),m=h?h[1]:"",y=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),A="",_="";if(v){let E=v[1].split("/");A=E[0]||"",_=E[2]||""}p&&m&&s.push({name:m,type:A,year:_,img:g,url:p})})}else return x("info","xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return x("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),s}catch(r){return x("error","getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(t){try{let n=`https://m.ixigua.com/video/${t.split("/").pop()}`,i=await Ie(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!i||!i.data)return x("info","getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let s=i.data.match(/"duration"\s*:\s*([\d.]+)/);return s?parseFloat(s[1]):0}catch(r){return x("error","getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(t){try{let r=`https://m.ixigua.com/video/${t}`,n=await Ie(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return x("info","getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let i=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(i)try{let s=i[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(s).map(u=>({seq_num:u.seq_num,title:u.title||`\u7B2C${u.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${u.gid}`,gid:u.gid,cover_image_url:u.cover_image_url}))}catch(s){x("error","\u89E3\u6790episodes_list\u5931\u8D25:",s)}else return x("info","getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return x("error","getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Xigua] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.name,r)).map(async o=>{try{let u=o.url.split("/").pop(),c=await this.getEpisodes(u),l=[];for(let d of c){let f=d.title;l.push({name:f,url:d.url,title:`\u3010xigua\u3011 ${f}`})}if(l.length>0){let d={animeId:yn(u),bangumiId:String(u),animeTitle:`${o.name}(${o.year})\u3010${o.type}\u3011from xigua`,type:o.type,typeDescription:o.type,imageUrl:o.img,startDate:Wr(o.year),episodeCount:l.length,rating:0,isFavorited:!0,source:"xigua"};s.push(d),Bt({...d,links:l},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Xigua] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=100,s=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),c=await Promise.allSettled(u);for(let l=0;l0&&s.push(...m)}else x("error",`\u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${h}s):`,d.reason.message)}a+isetTimeout(l,200))}return s.length===0?(x("info",`\u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):($i(s),s)}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=t.split("/").pop(),n=await this.getDetail(t)*1e3;x("info","itemId:",r),x("info","duration:",n);let i=3e5,s=[];for(let a=0;a({cid:Number(r.danmaku_id),p:`${(r.offset_time/1e3).toFixed(2)},1,16777215,[xigua]`,m:r.text,t:Math.round(r.offset_time/1e3)}))}},wyt=X0e});var J0e,xyt,Cyt=ve(()=>{ki();Ot();Ct();yr();vs();oy();Ba();Ei();bi();rs();J0e=class extends Tt{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(t,r){let n=Date.now(),i=Zs(r,!1),s=`os:Android|version:5.8.00|action:${t}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${i}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:ea(s),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(t){let r=t.match(/\/video\/([a-f0-9]+)\.html/i),n=t.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(t){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,i={keyWord:t},s=await Nn(n,JSON.stringify(this.getPlayload(r,i)),{headers:this.headers});if(!s||!s.data)return x("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof s.data=="string"?JSON.parse(s.data):s.data,o=[],u=a?.data;for(let c of u)if(c?.typeName==="\u5267\u96C6"||c?.typeName==="\u7535\u5F71"||c?.typeName==="\u7EFC\u827A")for(let l of c?.vodList)o.push({name:l.name,type:c.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return x("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return x("error","getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(t){try{let r=this.extractByRegex(t),n=r.uuid,i=r.vodUuid,s="/api/vod/listVodSactions.action",a=`${this.domain}${s}`,o={hasIntroduction:0,vodUuid:i},u=await Nn(a,JSON.stringify(this.getPlayload(s,o)),{headers:this.headers});if(!u||!u.data)return x("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let c=typeof u.data=="string"?JSON.parse(u.data):u.data;for(let l of c?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return x("error","getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(t){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,i={hasIntroduction:0,vodUuid:t},s=await Nn(n,JSON.stringify(this.getPlayload(r,i)),{headers:this.headers});if(!s||!s.data)return x("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof s.data=="string"?JSON.parse(s.data):s.data)?.data.forEach(u=>{a.push({title:u.name,episodeId:u.uuid})}),a}catch(r){return x("error","getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Maiduidui] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.filter(o=>Mt(o.name,r)).map(async o=>{try{let u=await this.getEpisodes(o.url),c=[];for(let l of u){let d=l.title;c.push({name:d,url:`https://www.mddcloud.com.cn/video/${o.url}.html?uuid=${l.episodeId}`,title:`\u3010maiduidui\u3011 ${d}`})}if(c.length>0){let l={animeId:yn(o.url),bangumiId:o.url,animeTitle:`${o.name}(${o.year})\u3010${o.type}\u3011from maiduidui`,type:o.type,typeDescription:o.type,imageUrl:o.img,startDate:Wr(o.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"maiduidui"};s.push(l),Bt({...l,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Maiduidui] Error processing anime: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;x("info",`\u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let i=20,s=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),c=await Promise.allSettled(u);for(let l=0;l0&&s.push(...m)}else x("error",`\u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${h}s):`,d.reason.message)}a+isetTimeout(l,200))}return s.length===0?(x("info",`\u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):($i(s),s)}async getEpisodeDanmuSegments(t){x("info","\u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let n=this.extractByRegex(t).uuid,i=await this.getDetail(t);x("info","uuid:",n),x("info","duration:",i);let s=60,a=[];for(let o=0;o{c.push(...f.barrageList)}),c}catch(r){return x("error","\u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${hw(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},xyt=J0e});function lO(e,t,r){if(e==null)return r;let n=t.split("."),i=e;for(let s=0;s{Ot();Ct();vs();yr();p4r="https://www.yfsp.tv/",h4r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",m4r=60*1e3;D8=class{constructor(t){t=t||{},this.proxyUrlBuilder=t.proxyUrlBuilder||function(r){return L.makeProxyUrl(r)},this.userAgent=t.userAgent||h4r,this.configPageUrl=t.configPageUrl||p4r,this.ttlMs=t.ttlMs||m4r,this.now=t.now||function(){return Date.now()},this.signingConfig=null,this.signingConfigFetchedAt=0}async getSigningConfig(t){t=t||!1;var r=this.now(),n=this.signingConfig&&r-this.signingConfigFetchedAt{ki();Ct();yr();vs();oy();Ba();Ei();bi();Md();Ot();Ryt();dO=class extends Tt{constructor(){super(),this.USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",this.SEARCH_API="https://rankv21.tripdata.app/v3/list/briefsearch",this.PLAYLIST_API="https://m10.yfsp.tv/v3/video/languagesplaylist",this.VIDEO_API="https://m10.yfsp.tv/v3/video/play",this.DANMU_API="https://m10.yfsp.tv/api/video/getBarrage",this.DOMAIN_API="https://www.yfsp.tv/play",this.CONFIG_PAGE_API="https://www.yfsp.tv/",this.signingProvider=new D8({userAgent:this.USER_AGENT,configPageUrl:this.CONFIG_PAGE_API}),this.inflightDanmuRequests=new Map}extractEpisodeRequestKey(t){try{return new URL(t).searchParams.get("id")??t}catch{return t}}async searchDrama(t,r=1,n=10){let i={tags:t,orderby:4,page:r,size:n,desc:1,isserial:-1},s={"User-Agent":this.USER_AGENT,Accept:"application/json"};x("info",`[\u641C\u7D22] \u5173\u952E\u8BCD: ${t}, \u9875\u7801: ${r}`);try{let a=uw(this.SEARCH_API,i),o=await Ie(L.makeProxyUrl(a),{headers:s});return typeof o.data=="string"?JSON.parse(o.data):o.data}catch(a){return x("error",`[\u641C\u7D22\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractDramaList(t){let r=[],n=t?.data?.info||[];if(!n.length)return x("warn","[\u8B66\u544A] \u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),r;for(let i of n){let s=i.result||[];if(s.length)for(let a of s){let o=a.contxt,u=a.title;r.push({contxt:o,title:u,...a}),x("info",`[\u53D1\u73B0\u5267\u76EE] ${u} vid=${o}`)}}return r}async getPlaylist(t){let r={cinema:1,vid:t,lsk:1,taxis:0,cid:"0,1,4,152"},n={"User-Agent":this.USER_AGENT,Accept:"application/json"};x("info",`[\u64AD\u653E\u5217\u8868] \u8BF7\u6C42 vid: ${t}`);try{let{data:i}=await this.signingProvider.signedGetJson(this.PLAYLIST_API,r,n,"\u64AD\u653E\u5217\u8868"),s=[],a=i.data?.info||[];for(let o of a)for(let u of o.playList||[])s.push(u);return x("info",`[\u64AD\u653E\u5217\u8868] \u5171\u83B7\u53D6\u5230 ${s.length} \u96C6`),s}catch(i){return x("error",`[\u64AD\u653E\u5217\u8868\u5931\u8D25] \u9519\u8BEF: ${i.message}`),[]}}async getVideoInfo(t,r=null){let n={cinema:1,id:t,a:0,lang:"none",usersign:1,region:"GL.",device:0,isMasterSupport:1},i={"User-Agent":this.USER_AGENT,Accept:"application/json"},s=r?`(ID:${r})`:"";x("info",`[\u89C6\u9891\u4FE1\u606F] \u8BF7\u6C42 key: ${t} ${s}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.VIDEO_API,n,i,"\u89C6\u9891\u4FE1\u606F");return x("info",`[\u89C6\u9891\u4FE1\u606F] vv\u7B7E\u540D: ${o.substring(0,16)}...`),a.data||{}}catch(a){return x("error",`[\u89C6\u9891\u4FE1\u606F\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractUniqueKey(t){let n=(t.info?.[0]||{}).uniqueKey;return n&&x("info",`[\u89C6\u9891\u4FE1\u606F] \u83B7\u53D6\u5230 uniqueKey: ${n}`),n}async fetchBarrage(t,r=1,n=3e4){let i={cinema:1,page:r,size:n,uniqueKey:t},s={"User-Agent":this.USER_AGENT};x("info",`[\u5F39\u5E55] \u8BF7\u6C42 uniqueKey: ${t}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.DANMU_API,i,s,"\u5F39\u5E55");x("info",`[\u5F39\u5E55] vv\u7B7E\u540D: ${o.substring(0,16)}...`);let u=a.data?.info||[];return x("info",`[\u5F39\u5E55] \u83B7\u53D6\u5230 ${u.length} \u6761\u5F39\u5E55`),u}catch(a){return x("error",`[\u5F39\u5E55\u5931\u8D25] \u9519\u8BEF: ${a.message}`),[]}}async search(t){x("info",`[Aiyifan] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=await this.searchDrama(t);if(!r)return x("error","\u641C\u7D22\u5931\u8D25\uFF0C\u9000\u51FA"),[];let n=this.extractDramaList(r);if(!n.length)return x("warn","\u672A\u627E\u5230\u5267\u76EE\u4FE1\u606F\uFF0C\u9000\u51FA"),[];let i=n.map(s=>({provider:"aiyifan",mediaId:s.contxt,title:s.title,type:s.atypeName,year:new Date(s.postTime).getFullYear(),imageUrl:s.imgPath||null,episodeCount:0}));return x("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${i.length} \u4E2A\u7ED3\u679C`),i}async getEpisodes(t){x("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${t}`);let r=await this.getPlaylist(t);if(!r.length)return x("error","\u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((i,s)=>({vid:i.key,id:i.id,title:i.name||`\u7B2C${s+1}\u96C6`,link:`${this.DOMAIN_API}/${t}?id=${i.key}`}));return x("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return x("error","[Aiyifan] sourceAnimes is not a valid array"),[];let a=t.filter(o=>Mt(o.title,r)).map(async o=>{try{let u=await this.getEpisodes(o.mediaId);if(u.length===0){x("info",`[Aiyifan] ${o.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let c=u.map((f,p)=>({name:f.title||`${p+1}`,url:f.link,title:`\u3010aiyifan\u3011 ${f.title}`}));if(c.length===0)return;let d={animeId:yn(o.mediaId),bangumiId:o.mediaId,animeTitle:`${o.title}(${o.year||"N/A"})\u3010${o.type}\u3011from aiyifan`,type:o.type,typeDescription:o.type,imageUrl:o.imageUrl,startDate:Wr(o.year),episodeCount:c.length,rating:0,isFavorited:!0,source:"aiyifan"};s.push(d),Bt({...d,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}catch(u){x("error",`[Aiyifan] \u5904\u7406 ${o.title} \u5931\u8D25:`,u.message)}});return await Promise.all(a),this.sortAndPushAnimesByYear(s,n),s}async getEpisodeDanmu(t){x("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${t}`);let r=this.extractEpisodeRequestKey(t),n=this.inflightDanmuRequests.get(r);if(n)return x("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let i=(async()=>{let s=r,a=await this.getVideoInfo(s);if(!a)return x("error","\u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return x("error","\u672A\u83B7\u53D6\u5230uniqueKey"),[];let u=await this.fetchBarrage(o);return u.length===0?(x("info","\u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(u.sort((c,l)=>(c.second||0)-(l.second||0)),x("info",`[Aiyifan] \u83B7\u53D6\u5230 ${u.length} \u6761\u5F39\u5E55`),u)})();this.inflightDanmuRequests.set(r,i);try{return await i}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(t){let r=await this.getEpisodeDanmu(t),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(i=>i.second||0),0),url:`${this.DANMU_API}?uniqueKey=${t}`}];return{type:"aiyifan",duration:Math.max(...r.map(i=>i.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(t){let r=t.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(t){return t.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${hw(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(L.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=ln(r.m)),r))}}});var fO,kyt=ve(()=>{ki();Ot();Ct();yr();Ei();Md();rs();bi();uy();fO=class extends Tt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${L.version}(https://github.com/huangxd-/danmu_api)`}}async search(t){if(L.useBangumiData){let r=Ld(t,["bangumi"]);if(r.length>0)return x("info",`[Animeko] Bangumi-Data \u547D\u4E2D ${r.length} \u6761\u6570\u636E`),this.transformResults(r.map(n=>{let s=(n.titles.find(a=>a&&a.includes(t))||n.titles[1]||n.title)+(n.titleSuffix||"");return{id:parseInt(n.siteId),name:n.title,name_cn:s,imageUrl:"",date:n.begin,score:0,platform:n.typeStr,aliases:n.titles}}))}try{let r=t.replace(/[._]/g," ").replace(/\s+/g," ").trim();x("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],i=0,s=20;for(;;){let o=`https://api.bgm.tv/v0/search/subjects?limit=${s}&offset=${i}`,c=await Nn(o,JSON.stringify({keyword:r,filter:{type:[2]}}),{headers:this.headers});if(!c||!c.data){x("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${i})`);break}let l=c.data.data||[];if(l.length===0)break;let d=this.filterSearchResults(l,t);if(d.length>0&&(n=n.concat(d)),d.length=60){x("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return x("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),x("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return x("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(t,r){return t.filter(n=>{let i=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(s=>{s.key==="\u522B\u540D"&&Array.isArray(s.value)&&s.value.forEach(a=>{a&&a.v&&i.push(a.v)}),s.key==="\u4E2D\u6587\u540D"&&typeof s.value=="string"&&i.push(s.value)}),i.some(s=>s&&Mt(s,r))})}hasExplicitSeasonInfo(t){return t?/第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|劇場版|Movie|Film|续[篇集]|外传|SP|(?o.length){if(this.hasExplicitSeasonInfo(u))continue;let l=(await this.getSubjectRelations(s.id)).find(d=>d.id===a.id);if(l&&(x("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${l.relation} -> [${u}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(l.relation))){let f=l.relation;f==="\u7EED\u96C6"&&(f="\u7EED\u7BC7"),a._relation_mark=`(${f})`}}}return t}async getSubjectRelations(t){try{let r=`https://api.bgm.tv/v0/subjects/${t}/subjects`,n=await Ie(r,{headers:this.headers});return!n||!n.data||!Array.isArray(n.data)?[]:n.data.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}))}catch(r){return x("warn",`[Animeko] \u83B7\u53D6\u5173\u7CFB\u5931\u8D25 ID:${t}: ${r.message}`),[]}}transformResults(t){return t.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=r.platform}let i=!1,s=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{u.name==="3D"&&(i=!0),u.name==="2D"&&(s=!0)}),i?n="3D"+n:s&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=[];return r.infobox&&Array.isArray(r.infobox)&&r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(c=>{c&&c.v&&o.push(c.v)})}),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),{id:r.id,name:r.name,name_cn:(r.name_cn||r.name)+a,aliases:o,images:r.images,air_date:r.date,score:r.score,typeDescription:n}})}async getEpisodes(t){let r=[],n=0,i=200;try{for(;;){let s=`https://api.bgm.tv/v0/episodes?subject_id=${t}&limit=${i}&offset=${n}`,a=await Ie(s,{headers:this.headers});if(!a||!a.data||!Array.isArray(a.data.data)){n===0&&x("info",`[Animeko] Subject ${t} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let o=a.data.data;if(o.length===0||(r=r.concat(o),o.length===i&&x("info",`[Animeko] ID:${t} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${r.length})`),o.length1600){x("warn",`[Animeko] ID:${t} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return r}catch(s){return x("error","[Animeko] GetEpisodes error:",{message:s.message,id:t,offset:n}),[]}}async handleAnimes(t,r,n,i=null){let s=[];if(!t||!Array.isArray(t))return t&&x("error","[Animeko] sourceAnimes is not a valid array"),[];let a=await Promise.all(t.map(async o=>{try{let u=await this.getEpisodes(o.id),c=[],l=o.air_date||"";if(Array.isArray(u)){u.sort((d,f)=>(d.sort||0)-(f.sort||0));for(let d of u){if(d.type!==0)continue;!l&&d.airdate&&(l=d.airdate);let f=d.sort||d.ep,p=d.name_cn||d.name||"",h=`\u7B2C${f}\u8BDD ${p}`.trim();c.push({name:`${f}`,url:d.id.toString(),title:`\u3010animeko\u3011 ${h}`})}}if(c.length>0){let d=l?new Date(l).getFullYear():"",f={animeId:o.id,bangumiId:String(o.id),animeTitle:`${o.name_cn||o.name}(${d})\u3010${o.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:o.aliases||[],type:"\u52A8\u6F2B",typeDescription:o.typeDescription||"\u52A8\u6F2B",imageUrl:o.images?o.images.common||o.images.large:"",startDate:l,episodeCount:c.length,rating:o.score||0,isFavorited:!0,source:"animeko"};s.push(f),Bt({...f,links:c},i),L.animes.length>L.MAX_ANIMES&&qt()}}catch(u){x("error",`[Animeko] Error processing anime ${o.id}: ${u.message}`)}}));return this.sortAndPushAnimesByYear(s,n),a}async getEpisodeDanmu(t){let r=String(t).trim();if(r.includes("/")){let o=r.split("/");r=o[o.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return x("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n="https://danmaku-global.myani.org",i="https://danmaku-cn.myani.org",s=async o=>{let u=`${o}/v1/danmaku/${r}`;try{let c=await Ie(u,{headers:this.headers});if(!c||!c.data)return null;let l=c.data;return l.danmakuList?l.danmakuList:null}catch(c){return x("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${o} - ${c.message}`),null}},a=await s(n);return a||(x("info",`[Animeko] Global \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u964D\u7EA7\u5C1D\u8BD5 CN \u8282\u70B9... ID:${r}`),a=await s(i)),a?(x("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${a.length} \u6761`),a):(x("error","[Animeko] \u6240\u6709\u8282\u70B9\u5C1D\u8BD5\u5747\u5931\u8D25\uFF0C\u65E0\u6CD5\u83B7\u53D6\u5F39\u5E55"),[])}async getEpisodeDanmuSegments(t){return new Et({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(t)}]})}async getEpisodeSegmentDanmu(t){let r=(t.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(t){if(!Array.isArray(t))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return t.filter(n=>n&&n.danmakuInfo).map(n=>{let i=n.danmakuInfo,s=(Number(i.playTime)/1e3).toFixed(2),a=r[i.location]||1,o=i.color===-1?16777215:i.color,u=L.danmuSimplifiedTraditional==="simplified"?ln(i.text):i.text;return{cid:n.id,p:`${s},${a},${o},[animeko]`,m:u}})}}});var pO,Oyt=ve(()=>{ki();Ot();Ct();yr();bi();rs();pO=class extends Tt{async search(t){}async getEpisodes(t){}async handleAnimes(t,r,n,i=null){}async getEpisodeDanmu(t){try{let r=await Ie(`${L.otherServer}/?url=${t}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return x("info",`danmu response from ${L.otherServer}: \u2193\u2193\u2193`),$i(r.data),r.data}catch(r){return x("error",`\u8BF7\u6C42 ${L.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(t){return x("info","\u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new Et({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t}}});function Byt(e){let t=Number(e||0);return!Number.isFinite(t)||t<=0?0:t>6*60*60?t/1e3:t}function Uyt(e,t=!1){return t?String(e||L.danmuOutputFormat||"json").toLowerCase()==="json":!1}function P8(e,t=null){return t===null?e:{videoDuration:t,...e}}function C4r(e){let t=Byt(e?.duration||e?.videoDuration||0);if(t>0)return t;let r=Array.isArray(e?.segmentList)?e.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(i=>{let s=Byt(i?.segment_end||0);s<=0||s>n&&(n=s)}),n>0?n:0}async function ige(e){if(!/^https?:\/\//i.test(e))return 0;try{let t=e,r=null;return t.includes(".qq.com")?r=await hy.getComments(t,"qq",!0):t.includes(".iqiyi.com")?r=await gy.getComments(t,"qiyi",!0):t.includes(".mgtv.com")?r=await Xv.getComments(t,"imgo",!0):t.includes(".bilibili.com")||t.includes("b23.tv")?(t.includes("b23.tv")&&(t=await Vd.resolveB23Link(t)),r=await Vd.getComments(t,"bilibili1",!0)):t.includes(".youku.com")?r=await my.getComments(t,"youku",!0):t.includes(".miguvideo.com")?r=await yy.getComments(t,"migu",!0):t.includes(".sohu.com")?r=await Jv.getComments(t,"sohu",!0):t.includes(".le.com")?r=await Zv.getComments(t,"leshi",!0):t.includes(".douyin.com")||t.includes(".ixigua.com")?r=await eb.getComments(t,"xigua",!0):t.includes(".mddcloud.com.cn")?r=await tb.getComments(t,"maiduidui",!0):t.includes(".yfsp.tv")&&(r=await rb.getComments(t,"aiyifan",!0)),C4r(r)}catch(t){return x("warn",`[Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${t.message}`),0}}function T4r(e){return String(e||"").split($m).map(t=>{let r=t.indexOf(":");return r===-1?t.trim():t.slice(r+1).trim()}).filter(Boolean)}async function M8(e){if(!e)return 0;try{let t=e.includes($m)?T4r(e):[e];return(await Promise.all(t.map(ige))).reduce((n,i)=>Math.max(n,i||0),0)}catch(t){return x("warn",`[Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${t.message}`),0}}function tge(e,t){if(!t)return!0;let r=ny(e.animeTitle);return r?r===t:!0}function N4r(e,t,r){let n=e.animeTitle.match(/^(.*?)\(\d{4}\)/),i=n?n[1].trim():e.animeTitle.split("(")[0].trim(),s=ta(i),a=ta(t);if(s.includes(a)){if(s.startsWith(a)){let o=s.substring(a.length).trim();if(o===""&&r===1)return!0;let u=o.match(/\d+/);if(u&&u[0]===r.toString())return!0;let c=o.match(/[一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+/);if(c&&PR(c[0])===r)return!0}return!1}else return!1}function R4r(){try{if(globalThis.__internalDanmuOverrides&&typeof globalThis.__internalDanmuOverrides=="object")return globalThis.__internalDanmuOverrides;let t=[hO.default.resolve(process.cwd(),"src/data/internal-danmu-overrides.json"),hO.default.resolve(process.cwd(),"data/internal-danmu-overrides.json"),hO.default.resolve(process.cwd(),"../src/data/internal-danmu-overrides.json"),hO.default.resolve(process.cwd(),"../data/internal-danmu-overrides.json")].find(n=>Z0e.default.existsSync(n));if(!t)return{};let r=Z0e.default.readFileSync(t,"utf8");return r.trim()?JSON.parse(r):{}}catch{return{}}}function $yt(e,t){return Array.isArray(e)?e.map(r=>String(r).trim()).filter(Boolean):typeof e=="string"?e.split(",").map(r=>r.trim()).filter(Boolean):t}function D4r(e,t){if(Array.isArray(e)){if(e.every(r=>r&&typeof r=="object"&&"primary"in r))return e;if(e.every(r=>typeof r=="string"))return e.map(r=>r.split("&").map(n=>n.trim()).filter(Boolean)).filter(r=>r.length>0).map(r=>({primary:r[0],secondaries:r.slice(1).filter(n=>n!==r[0])}))}return typeof e=="string"?e.split(/[,;]/).map(r=>r.split("&").map(n=>n.trim()).filter(Boolean)).filter(r=>r.length>0).map(r=>({primary:r[0],secondaries:r.slice(1).filter(n=>n!==r[0])})):t}function Fyt(){let e=R4r();return{sourceOrderArr:$yt(e.SOURCE_ORDER,L.sourceOrderArr),mergeSourcePairs:D4r(e.MERGE_SOURCE_PAIRS,L.mergeSourcePairs),platformOrderArr:$yt(e.PLATFORM_ORDER,L.platformOrderArr)}}async function L8(e,t=null,r=null,n=null){let i=e.searchParams.get("keyword");if(x("info",`Search anime with keyword: ${i}`),i==="")return Qe({errorCode:0,success:!0,errorMessage:"",animes:[]});if(L.animeTitleSimplified){let l=ln(i);x("info",`searchAnime converted traditional to simplified: ${i} -> ${l}`),i=l}let s=n instanceof Map?n:new Map,a=lae(i,s);if(a!==null)return Qe({errorCode:0,success:!0,errorMessage:"",animes:a});let o=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let l=sy.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),d="unknown";i.includes(".qq.com")?d="qq":i.includes(".iqiyi.com")?d="qiyi":i.includes(".mgtv.com")?d="imgo":i.includes(".youku.com")?d="youku":i.includes(".bilibili.com")?d="bilibili1":i.includes(".miguvideo.com")?d="migu":i.includes(".sohu.com")?d="sohu":i.includes(".le.com")?d="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?d="xigua":i.includes(".mddcloud.com.cn")?d="maiduidui":i.includes(".yfsp.tv")&&(d="aiyifan");let f=await wYe(i),p=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${d}\u3011 ${f}`}];return o.push(l),Bt(sy.fromJson({...l,links:p}),s),L.animes.length>L.MAX_ANIMES&&qt(),L.localCacheValid&&o.length!==0&&await h5(),L.redisValid&&o.length!==0&&await t5(),L.localRedisValid&&o.length!==0&&await y8(),Qe({errorCode:0,success:!0,errorMessage:"",animes:o})}try{let d=Fyt().sourceOrderArr;x("info",`Search sourceOrderArr: ${d}`);let f=d.map(Z=>{if(Z==="360")return Pyt.search(i);if(Z==="vod")return Myt.search(i,t,r);if(Z==="tmdb")return Lyt.search(i);if(Z==="douban")return ege.search(i);if(Z==="renren")return mO.search(i);if(Z==="hanjutv")return gO.search(i);if(Z==="bahamut")return yO.search(i);if(Z==="dandan")return _O.search(i);if(Z==="custom")return O8.search(i);if(Z==="tencent")return hy.search(i);if(Z==="youku")return my.search(i);if(Z==="iqiyi")return gy.search(i);if(Z==="imgo")return Xv.search(i);if(Z==="bilibili")return Vd.search(i);if(Z==="migu")return yy.search(i);if(Z==="sohu")return Jv.search(i);if(Z==="leshi")return Zv.search(i);if(Z==="xigua")return eb.search(i);if(Z==="maiduidui")return tb.search(i);if(Z==="aiyifan")return rb.search(i);if(Z==="animeko")return AO.search(i)}),p=await Promise.all(f),h={};d.forEach((Z,Y)=>{h[Z]=p[Y]});let{vod:m,360:y,tmdb:g,douban:v,renren:A,hanjutv:_,bahamut:E,dandan:S,custom:C,tencent:I,youku:N,iqiyi:T,imgo:k,bilibili:O,migu:P,sohu:$,leshi:Q,xigua:j,maiduidui:z,aiyifan:X,animeko:K}=h;for(let Z of d)if(Z==="360")await Pyt.handleAnimes(y,i,o,s);else if(Z==="vod"){if(m&&Array.isArray(m))for(let Y of m)Y&&Y.list&&Y.list.length>0&&await Myt.handleAnimes(Y.list,i,o,Y.serverName,s)}else Z==="tmdb"?await Lyt.handleAnimes(g,i,o,s):Z==="douban"?await ege.handleAnimes(v,i,o,s):Z==="renren"?await mO.handleAnimes(A,i,o,s):Z==="hanjutv"?await gO.handleAnimes(_,i,o,s):Z==="bahamut"?await yO.handleAnimes(E,i,o,s):Z==="dandan"?await _O.handleAnimes(S,i,o,s):Z==="custom"?await O8.handleAnimes(C,i,o,s):Z==="tencent"?await hy.handleAnimes(I,i,o,s):Z==="youku"?await my.handleAnimes(N,i,o,s):Z==="iqiyi"?await gy.handleAnimes(T,i,o,s):Z==="imgo"?await Xv.handleAnimes(k,i,o,s):Z==="bilibili"?await Vd.handleAnimes(O,i,o,s):Z==="migu"?await yy.handleAnimes(P,i,o,s):Z==="sohu"?await Jv.handleAnimes($,i,o,s):Z==="leshi"?await Zv.handleAnimes(Q,i,o,s):Z==="xigua"?await eb.handleAnimes(j,i,o,s):Z==="maiduidui"?await tb.handleAnimes(z,i,o,s):Z==="aiyifan"?await rb.handleAnimes(X,i,o,s):Z==="animeko"&&await AO.handleAnimes(K,i,o,s)}catch(l){x("error","\u53D1\u751F\u9519\u8BEF:",l)}let c=Fyt();if(c.mergeSourcePairs.length>0){let l=L.mergeSourcePairs;try{L.mergeSourcePairs=c.mergeSourcePairs,await Cgt(o,s)}finally{L.mergeSourcePairs=l}}if(hae(o,i),L.enableAnimeEpisodeFilter){let l=[];for(let d of o){let f=d.animeTitle||"";if(L.animeTitleFilter&&L.animeTitleFilter.test(f)){x("info",`[searchAnime] Anime ${d.animeId} filtered by name: ${f}`);continue}let p=wv(d?.bangumiId,s,d?.source)||wv(d?.animeId,s,d?.source)||Sv(d?.bangumiId,s,d?.source)||Sv(d?.animeId,s,d?.source);if(p&&p.links){let h=p.links.map((m,y)=>({episodeId:m.id,episodeTitle:m.title,episodeNumber:y+1}));h=h.filter(m=>!L.episodeTitleFilter.test(m.episodeTitle)),x("info",`[searchAnime] Anime ${d.animeId} filtered episodes: ${h.length}/${p.links.length}`),h.length>0&&l.push(d)}}o.length=0,o.push(...l)}return L.localCacheValid&&o.length!==0&&await h5(),L.redisValid&&o.length!==0&&await t5(),L.localRedisValid&&o.length!==0&&await y8(),o.length>0&&dae(i,o,s),Qe({errorCode:0,success:!0,errorMessage:"",animes:o})}function sge(e){return e.filter((r,n,i)=>!i.slice(0,n).some(s=>s.episodeTitle===r.episodeTitle))}function rge(e,t){if(!e||!t)return 0;let r=e.split("&").map(s=>s.trim().toLowerCase()).filter(s=>s),n=t.split("&").map(s=>s.trim().toLowerCase()).filter(s=>s),i=0;for(let s of n)r.some(o=>o===s||o.includes(s)&&s.length>2||s.includes(o)&&o.length>2)&&i++;return i===0?0:i*1e3-r.length}function k4r(e){let t=e.match(/from\s+([a-zA-Z0-9&]+)/i);return t?t[1]:null}function age(e,t,r,n=null){if(!e||e.length===0)return null;let i=e;if(n&&(i=e.filter(s=>{let a=rae(s.episodeTitle);return rge(a,n)>0})),i.length===0)return null;for(let s of i){let a=iae(s.episodeTitle);if(t===r&&a===r)return x("info",`Found episode by title number: ${s.episodeTitle} (extracted: ${a})`),s}if(i.length>=r){let s=i[r-1];return x("info",`Using fallback array index for episode ${r}: ${s.episodeTitle}`),s}for(let s of i)if(s.episodeNumber&&parseInt(s.episodeNumber,10)===r)return x("info",`Found episode by episodeNumber: ${s.episodeTitle} (episodeNumber: ${s.episodeNumber})`),s;return null}async function O4r(e,t,r,n,i,s,a,o,u=null){let c=L.aiBaseUrl,l=L.aiModel,d=L.aiApiKey,f=L.aiMatchPrompt;if(!L.aiValid||!f)return x("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new um({apiKey:d,baseURL:c,model:l,systemPrompt:f}),h={title:i,season:e,episode:t,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(m=>{let y=m.animeTitle||"",g=y.match(/^(.*?)\(\d{4}\)/),v=g?g[1].trim():y.split("(")[0].trim();return{animeId:m.animeId,animeTitle:v,aliases:m.aliases||[],type:m.type,year:m.startDate?m.startDate.slice(0,4):null,episodeCount:m.episodeCount,source:m.source}})};try{let m=JSON.stringify(h,null,2),y=await p.ask(m);x("info",`AI match response: ${y}`);let g;try{let S=y.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),C=S?S[1]||S[2]||S[3]:y;g=JSON.parse(C.trim())}catch(S){return x("error",`Failed to parse AI response: ${S.message}`),{resEpisode:null,resAnime:null}}let v=g.animeIndex;if(v==null)return{resEpisode:null,resAnime:null};let A=n.animes[v];if(!A)return x("error",`AI returned invalid anime index: ${v}`),{resEpisode:null,resAnime:null};let _=oge(A,u);if(!_?.success||!_?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let E=null;if(e&&t){let S=_.bangumi.episodes.filter(I=>!L.episodeTitleFilter.test(I.episodeTitle)),C=sge(S);x("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",C.map(I=>I.episodeTitle)),E=age(C,t,t)}else _.bangumi.episodes.length>0&&(E=_.bangumi.episodes[0]);return{resEpisode:E,resAnime:A}}catch(m){return x("error",`AI matching failed: ${m.message}`),{resEpisode:null,resAnime:null}}}function oge(e,t=null){let r=wv(e?.bangumiId,t,e?.source)||wv(e?.animeId,t,e?.source);return r?cge(r,e?.bangumiId||e?.animeId||""):(x("warn",`[matchAnime] Missing request detail snapshot for anime ${e?.animeId??e?.bangumiId}`),null)}function qyt(e,t,r,n,i){let s=String(t),a=e[s].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,u=a?.[2]||"",c=r-o,l=n.findIndex(d=>d.episodeTitle===u);return l!==-1&&(i=l+c+1,x("info",`Applying offset "${e[s]}" for S${t}E${r} -> ${i}`)),i}async function P4r(e,t,r,n,i,s,a,o,u,c=null){let l={anime:null,episode:null,score:-9999},d=ta(i);for(let f of n.animes){if(L.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let h=!1,m=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&m.push(...f.aliases);for(let v of m)if(v){if(e&&t){if(ta(v).includes(d)){if(!tge(f,r)){x("info",`Year mismatch: anime year ${ny(f.animeTitle)} vs query year ${r}`);continue}let A=L.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),_={...f,animeTitle:v};if(N4r(_,i,e)||A){h=!0;break}}}else if(v.split("(")[0].trim()===i){if(!tge(f,r)){x("info",`Year mismatch: anime year ${ny(f.animeTitle)} vs query year ${r}`);continue}h=!0;break}}if(!h)continue;let y=oge(f,c);if(!y?.success||!y?.bangumi?.episodes)continue;x("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),x("info",y);let g=null;if(e&&t){let v=y.bangumi.episodes.filter(E=>!L.episodeTitleFilter.test(E.episodeTitle)),A=sge(v);x("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",A.map(E=>E.episodeTitle));let _=t;u&&u[String(e)]!==void 0&&(_=qyt(u,e,t,A,_)),g=age(A,t,_,a)}else if(y.bangumi.episodes.length>0)if(a){let v=y.bangumi.episodes.find(A=>{let _=rae(A.episodeTitle);return rge(_,a)>0});v&&(g=v)}else g=y.bangumi.episodes[0];if(g){let v=k4r(f.animeTitle)||f.source,A=0;if(a?A=rge(v,a):A=1,A>l.score&&(l={anime:f,episode:g,score:A}),!a)break}}return{resEpisode:l.episode,resAnime:l.anime}}async function M4r(e,t,r,n,i,s,a,o,u=null){for(let c of e.animes){if(i&&!tge(c,i)){x("info",`Fallback: Year mismatch: anime year ${ny(c.animeTitle)} vs query year ${i}`);continue}let l=oge(c,u);if(!(!l?.success||!l?.bangumi?.episodes)){if(x("info",l),r&&n){let d=l.bangumi.episodes.filter(m=>!L.episodeTitleFilter.test(m.episodeTitle)),f=sge(d);x("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",f.map(m=>m.episodeTitle));let p=n;o&&o[String(r)]!==void 0&&(p=qyt(o,r,n,f,p));let h=age(f,n,p,null);if(h){s=h,a=c;break}}else if(l.bangumi.episodes.length>0){s=l.bangumi.episodes[0],a=c;break}}}return{resEpisode:s,resAnime:a}}async function L4r(e){let t=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=e.match(t),n,i,s,a;if(r){n=r[1].trim(),i=parseInt(r[2],10),s=parseInt(r[3],10);let o=e.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let u=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(u)n=u[0];else if(/^[A-Za-z0-9]/.test(n)){let c=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);c&&(n=c[1].trim().replace(/[._]/g," "))}else{let c=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=c.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:c.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,u=e.match(o);n=u?u[1].replace(/[._]/g," ").trim():e,i=null,s=null;let c=e.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);c&&(a=parseInt(c[1],10))}return L.titleToChinese&&(n=await dgt(n.replace("."," "),i,s)),x("info","Parsed title, season, episode, year",{title:n,season:i,episode:s,year:a}),{title:n,season:i,episode:s,year:a}}async function jyt(e,t,r){try{let n=await t.json();if(!n)return x("error","Request body is empty"),Qe({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:i}=n;if(!i)return x("error","Missing fileName parameter in request body"),Qe({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:s,preferredPlatform:a}=LYe(i);x("info",`Processing anime match for query: ${i}`),x("info",`Parsed cleanFileName: ${s}, preferredPlatform: ${a}`);let{title:o,season:u,episode:c,year:l}=await L4r(s);if(L.titleMappingTable&&L.titleMappingTable.size>0){let C=L.titleMappingTable.get(o);C&&(o=C,x("info",`Title mapped from original: ${e.searchParams.get("keyword")} to: ${o}`))}if(L.animeTitleSimplified){let C=ln(o);x("info",`matchAnime converted traditional to simplified: ${o} -> ${C}`),o=C}let[d,f,p]=gae(o,u);x("info",`prefer animeId: ${d} from ${f}`);let h=new Map,m=new URL(t.url.replace("/match",`/search/anime?keyword=${o}`)),g=await(await L8(m,d,f,h)).json();x("info",`searchData: ${g.animes}`);let v,A,_={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]},E=BYe(a);x("info",`Original platformOrderArr: ${L.platformOrderArr}`),x("info",`Dynamic platformOrder: ${E}`),x("info",`Preferred platform: ${a||"none"}`);let S=await O4r(u,c,l,g,o,t,E,d,h);if(S.resAnime)v=S.resAnime,A=S.resEpisode,_.isMatched=!0,x("info",`AI match found: ${v.animeTitle}; episode: ${A.episodeTitle}`);else{for(let C of E){let I=await P4r(u,c,l,g,o,t,C,d,p,h);if(A=I.resEpisode,v=I.resAnime,v){_.isMatched=!0,x("info",`Found match with platform: ${C||"default"}`);break}}if(!v){let C=await M4r(g,t,u,c,l,A,v,p,h);A=C.resEpisode,v=C.resAnime}}return A&&(r&&uae(r,{title:o,season:u,episode:c,episodeId:A.episodeId}),_.matches=[i5.fromJson({episodeId:A.episodeId,animeId:v.animeId,animeTitle:v.animeTitle,episodeTitle:A.episodeTitle,type:v.type,typeDescription:v.typeDescription,shift:0,imageUrl:v.imageUrl})]),x("info",`resMatchData: ${_}`),Qe(_)}catch(n){return x("error",`Failed to parse request body: ${n.message}`),Qe({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function Hyt(e){let t=e.searchParams.get("anime"),r=e.searchParams.get("episode")||"";if(L.animeTitleSimplified){let u=ln(t);x("info",`searchEpisodes converted traditional to simplified: ${t} -> ${u}`),t=u}if(x("info",`Search episodes with anime: ${t}, episode: ${r}`),!t)return x("error","Missing anime parameter"),Qe({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=new URL(`/search/anime?keyword=${t}`,e.origin),i=new Map,a=await(await L8(n,null,null,i)).json();if(!a.success||!a.animes||a.animes.length===0)return x("info","No anime found for the given title"),Qe({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let u of a.animes){let c=Sv(u.bangumiId,i,u.source)||Sv(u.animeId,i,u.source),l=null;if(c)l=cge(c,u.bangumiId);else{let d=new URL(`/bangumi/${u.bangumiId}`,e.origin);l=await(await uge(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>u.typeDescription&&(u.typeDescription.includes("\u7535\u5F71")||u.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(a5.fromJson({animeId:u.animeId,animeTitle:u.animeTitle,type:u.type,typeDescription:u.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return x("info",`Found ${o.length} animes with filtered episodes`),Qe({errorCode:0,success:!0,errorMessage:"",animes:o})}async function uge(e,t=null,r=null){let n=e.split("/").pop(),i=wv(n,t,r)||Sv(n);return i?Qe(cge(i,n)):(x("error",`Anime with ID ${n} not found`),Qe({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function cge(e,t=""){x("info",`Fetched details for anime ID: ${t||e.bangumiId}`);let r=[];for(let i=0;i!L.episodeTitleFilter.test(i.episodeTitle)),x("info",`[getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${e.links.length}`),r.length===0)return x("warn",`[getBangumi] No valid episodes after filtering for anime ID ${t||e.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((i,s)=>({...i,episodeNumber:`${s+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:o5.fromJson({animeId:e.animeId,bangumiId:e.bangumiId,animeTitle:e.animeTitle,imageUrl:e.imageUrl,isOnAir:!0,airDay:1,isFavorited:e.isFavorited,rating:e.rating,type:e.type,typeDescription:e.typeDescription,seasons:[{id:`season-${e.animeId}`,airDate:e.startDate,name:"Season 1",episodeCount:e.episodeCount}],episodes:r})}}async function B4r(e,t,r){let n=e.split($m),i=n.map(h=>{let m=h.indexOf(":");if(m===-1)return{realId:"",logicalSource:"",sourceLabel:""};let y=h.substring(0,m),g=h.substring(m+1);return y!=="hanjutv"?{realId:g,logicalSource:y,sourceLabel:y}:{realId:g,logicalSource:"hanjutv",sourceLabel:C8(g)}}),s=i.map(h=>h.logicalSource).filter(Boolean),a=i.map(h=>h.realId),o=i.map(h=>h.sourceLabel).filter(Boolean).join("\uFF06");x("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let u=am(e);if(u)return x("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${u.length} \u6761`),u;let c={},l=i.map(async h=>{let m=h.logicalSource,y=h.sourceLabel||h.logicalSource,g=h.realId;if(!m||!g)return[];let v=`${m}:${g}`;if(k8.has(v)){x("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${v}`);try{return await k8.get(v)||[]}catch{return[]}}let A=(async()=>{let _=null;if(m==="renren"?_=mO:m==="hanjutv"?_=gO:m==="bahamut"?_=yO:m==="dandan"?_=_O:m==="tencent"?_=hy:m==="youku"?_=my:m==="iqiyi"?_=gy:m==="imgo"?_=Xv:m==="bilibili"?_=Vd:m==="migu"?_=yy:m==="sohu"?_=Jv:m==="leshi"?_=Zv:m==="xigua"?_=eb:m==="maiduidui"?_=tb:m==="aiyifan"?_=rb:m==="animeko"&&(_=AO),_)try{let E=await _.getEpisodeDanmu(g,n),S=_.formatComments(E);return S&&Array.isArray(S)&&S.forEach(C=>{C._sourceLabel||(C._sourceLabel=y)}),c[y]=S.length,S}catch(E){return x("error",`[Merge] \u83B7\u53D6 ${y} \u5931\u8D25: ${E.message}`),c[y]=0,[]}return[]})();k8.set(v,A);try{return await A}finally{k8.delete(v)}}),d=await Promise.all(l);if(Ngt(d,s,a),L.danmuOffsetRules?.length>0&&t&&r){let[,,h]=l5(r);if(h){let{baseTitle:m,season:y,episode:g}=sae(t,h);y||=1,g||=c5(r)+1;let v=`S${y.toString().padStart(2,"0")}`,A=`E${g.toString().padStart(2,"0")}`;for(let _=0;_ ${s[_]} (${m}/${v}/${A})${S?.usePercent?`, duration=${N}s`:""}`),d[_]=fse(E,C,{usePercent:S?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(h=>{f=Tgt(f,h)});let p=Object.entries(c).map(([h,m])=>`${h}: ${m}`).join(", ");return x("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),qR(f,o)}async function lge(e,t,r,n,i=!1){let s=parseInt(e.split("/").pop()),a=pae(s),o=UR(s),u=fae(s),c=u?(u.match(/【(.*?)】/)||[null])[0]?.replace(/[【】]/g,""):null,l=Uyt(t,i);if(x("info","comment url...",o),x("info","comment title...",u),x("info","comment platform...",c),!o)return x("error",`Comment with ID ${s} not found`),Qe({count:0,comments:[]},404);x("info",`Fetched comment ID: ${s}`);let d=am(o);if(d!==null){let v=P8({count:d.length,comments:d},l?await M8(o):null);return Iv(v,t)}x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?M8(o):null;if(o&&o.includes($m))f=await B4r(o,a,s);else{o.includes(".qq.com")?f=await hy.getComments(o,c,r):o.includes(".iqiyi.com")?f=await gy.getComments(o,c,r):o.includes(".mgtv.com")?f=await Xv.getComments(o,c,r):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await Vd.resolveB23Link(o)),f=await Vd.getComments(o,c,r)):o.includes(".youku.com")?f=await my.getComments(o,c,r):o.includes(".miguvideo.com")?f=await yy.getComments(o,c,r):o.includes(".sohu.com")?f=await Jv.getComments(o,c,r):o.includes(".le.com")?f=await Zv.getComments(o,c,r):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await eb.getComments(o,c,r):o.includes(".mddcloud.com.cn")?f=await tb.getComments(o,c,r):o.includes(".yfsp.tv")&&(f=await rb.getComments(o,c,r));let v=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;v.test(o)||(c==="renren"?f=await mO.getComments(o,c,r):c==="hanjutv"?f=await gO.getComments(o,c,r):c==="bahamut"?f=await yO.getComments(o,c,r):c==="dandan"?f=await _O.getComments(o,c,r):c==="custom"?f=await O8.getComments(o,c,r):c==="animeko"&&(f=await AO.getComments(o,c,r))),(!f||f.length===0)&&v.test(o)&&(f=await nge.getComments(o,"other_server",r))}let[h,m,y]=l5(s);if(h&&m){let v=null,A=null,_=null;if(n){let E=cae(n);E&&E.title&&E.season&&E.episode&&y&&(v=E.title,A=E.season,_=`${E.episode}:${y}`,x("info",`Calculated episode offset for IP ${n}: Query E${E.episode}, Selected ${y} -> Offset ${_} (Season ${A})`))}x("info",`animeTitle\uFF1A${a}; lastTitle\uFF1A${v}; titleMatches\uFF1A${Mt(a,v)}`),Mt(a,v)&&(x("info","excute setPreferByAnimeId"),mae(h,m,A,_)),L.localCacheValid&&h&&p5("lastSelectMap",JSON.stringify(Object.fromEntries(L.lastSelectMap))),L.redisValid&&h&&Xse("lastSelectMap",L.lastSelectMap).catch(E=>x("error","Redis set error",E)),L.localRedisValid&&h&&g8("lastSelectMap",L.lastSelectMap)}if(a&&y&&L.danmuOffsetRules?.length>0&&!(o&&o.includes($m))){let{baseTitle:v,season:A,episode:_}=sae(a,y);A||=1,_||=c5(s)+1;let E=`S${A.toString().padStart(2,"0")}`,S=`E${_.toString().padStart(2,"0")}`,C=dse(L.danmuOffsetRules,{anime:v,season:E,episode:S,source:m}),I=C?.offset||0;if(I!==0){let N=C?.usePercent?await ige(o):0;x("info",`Applying danmu offset: ${I}${C?.usePercent?"%":"s"} for ${v}/${E}/${S}${C?.usePercent?`, duration=${N}s`:""}`),f=fse(f,I,{usePercent:C?.usePercent,videoDuration:N})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&FR(o,f));let g=P8({count:f.length,comments:f},p?await p:null);return Iv(g,t)}async function dge(e,t,r,n=!1){try{if(!e||typeof e!="string")return x("error","Missing or invalid url parameter"),Qe({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(e=e.trim(),!e.startsWith("http"))return x("error","Invalid url format, must start with http or https"),Qe({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);x("info",`Processing comment request for URL: ${e}`);let i=e,s=Uyt(t,n),a=am(i);if(a!==null){let l=P8({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},s?await M8(i):null);return Iv(l,t)}x("info","\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",i);let o=[],u=s?M8(i):null;i.includes(".qq.com")?o=await hy.getComments(i,"qq",r):i.includes(".iqiyi.com")?o=await gy.getComments(i,"qiyi",r):i.includes(".mgtv.com")?o=await Xv.getComments(i,"imgo",r):i.includes(".bilibili.com")||i.includes("b23.tv")?(i.includes("b23.tv")&&(i=await Vd.resolveB23Link(i)),o=await Vd.getComments(i,"bilibili1",r)):i.includes(".youku.com")?o=await my.getComments(i,"youku",r):i.includes(".miguvideo.com")?o=await yy.getComments(i,"migu",r):i.includes(".sohu.com")?o=await Jv.getComments(i,"sohu",r):i.includes(".le.com")?o=await Zv.getComments(i,"leshi",r):i.includes(".douyin.com")||i.includes(".ixigua.com")?o=await eb.getComments(i,"xigua",r):i.includes(".mddcloud.com.cn")?o=await tb.getComments(i,"maiduidui",r):i.includes(".yfsp.tv")?o=await rb.getComments(i,"aiyifan",r):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(i)&&(o=await nge.getComments(i,"other_server",r)),x("info",`Successfully fetched ${o.length} comments from URL`),o.length>0&&FR(i,o);let c=P8({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},u?await u:null);return Iv(c,t)}catch(i){return x("error",`Failed to process comment by URL request: ${i.message}`),Qe({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Kyt(e,t){try{let r=e.url,n=e.type;if(!r||typeof r!="string")return x("error","Missing or invalid url parameter"),Qe({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),x("info",`Processing segment comment request for URL: ${r}`);let i=am(r);if(i!==null){let o={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return Iv(o,t)}x("info",`\u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let s=[];n==="qq"?s=await hy.getSegmentComments(e):n==="qiyi"?s=await gy.getSegmentComments(e):n==="imgo"?s=await Xv.getSegmentComments(e):n==="bilibili1"?s=await Vd.getSegmentComments(e):n==="youku"?s=await my.getSegmentComments(e):n==="migu"?s=await yy.getSegmentComments(e):n==="sohu"?s=await Jv.getSegmentComments(e):n==="leshi"?s=await Zv.getSegmentComments(e):n==="xigua"?s=await eb.getSegmentComments(e):n==="maiduidui"?s=await tb.getSegmentComments(e):n==="aiyifan"?s=await rb.getSegmentComments(e):n==="hanjutv"?s=await gO.getSegmentComments(e):n==="bahamut"?s=await yO.getSegmentComments(e):n==="renren"?s=await mO.getSegmentComments(e):n==="dandan"?s=await _O.getSegmentComments(e):n==="animeko"?s=await AO.getSegmentComments(e):n==="custom"?s=await O8.getSegmentComments(e):n==="other_server"&&(s=await nge.getSegmentComments(e)),x("info",`Successfully fetched ${s.length} segment comments from URL`),s.length>0&&FR(r,s);let a={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return Iv(a,t)}catch(r){return x("error",`Failed to process segment comment request: ${r.message}`),Qe({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}var Z0e,hO,Pyt,Myt,mO,gO,yO,_O,O8,hy,my,gy,Xv,Vd,yy,Jv,Zv,eb,tb,rb,AO,nge,ege,Lyt,k8,Vyt=ve(()=>{Z0e=Se(require("fs"),1),hO=Se(require("path"),1);Ot();yr();Ct();Md();r5();Vk();Ei();oy();pse();bi();Zw();Rgt();U0e();m5();Ygt();Wgt();oyt();uyt();cyt();dyt();j0e();fyt();pyt();H0e();K0e();V0e();z0e();vyt();Q0e();byt();Syt();Iyt();Cyt();Dyt();kyt();Oyt();rs();Pyt=new Yk,Myt=new Wk,mO=new tO,gO=new rO,yO=new Vv,_O=new nO,O8=new iO,hy=new zv,my=new Wv,gy=new Qv,Xv=new Gv,Vd=new Yv,yy=new Ayt,Jv=new uO,Zv=new cO,eb=new wyt,tb=new xyt,rb=new dO,AO=new fO,nge=new pO,ege=new Jk(hy,gy,my,Vd,yy),Lyt=new Xk(ege),k8=new Map});var zyt,Qyt=ve(()=>{zyt=` +

`,"
"],A=-1;for(let U of y){let G=a.indexOf(U,_);if(G!==-1){A=G;break}}if(A===-1){let U=a.indexOf('
[\s\S]*?]*title="([^"]*)"[^>]*>/.exec(E);if(b&&b[1]&&(v=b[1].trim()),!v&&h.keyWord){let U=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(h.keyWord);U&&U[1]&&(v=U[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!v){let U=/]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(E);U&&U[1]&&(v=U[1].trim())}v||R("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let I=/]*(?:src|data-src|alt)="([^"]+)"/.exec(E),T=I?I[1]:"",x=null,w=/年份:<\/b>.*?>(\d{4})<\/a>/.exec(E);w||(w=/上映时间:<\/b>.*?>(\d{4})<\/a>/.exec(E)),w||(w=/_y(\d{4})_/.exec(E)),w||(w=/(\d{4})/.exec(h.keyWord||"")),w&&(x=parseInt(w[1]));let D=bRt[m]||"\u7535\u89C6\u5267",M=g&&/^\d+$/.test(g)?parseInt(g):0,L={mediaId:p,title:v,type:D,year:x,imageUrl:T&&T.startsWith("http")?T:T?`https:${T}`:null,episodeCount:M};o.push(L),R("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${v} (pid=${p}, type=${D}, episodes=${M})`)}catch(f){R("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){R("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${t}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),R("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)R("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else R("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${t}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return R("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(t){try{R("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${t}`);let r=[`https://www.le.com/tv/${t}.html`,`https://www.le.com/comic/${t}.html`,`https://www.le.com/playlet/${t}.html`,`https://www.le.com/movie/${t}.html`],n=null;for(let l of r)try{let d=await Me(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,R("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){R("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return R("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${t}`),[];let s=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return R("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],t);let i=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return R("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],t);R("info","[Leshi] \u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/
0?(R("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return R("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(t,r){try{let n=/
]*>[\s\S]*?<\/div>/g,s=t.match(n);if(!s||s.length===0){R("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/
[\s\S]*?<\/dl>/g,o=t.match(a);if(!o||o.length===0){R("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let c=/]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,u=t.match(c);return!u||u.length===0?(R("error",`[Leshi] \u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(u,r)}return this.extractEpisodes(o,r)}let i=[];for(let a of s){let o=/
[\s\S]*?<\/dl>/.exec(a);o&&i.push(o[0])}return i.length===0?(R("error",`[Leshi] \u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(i,r)}catch(n){return R("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(t,r){let n=[];for(let s of t)try{let i=/]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){R("info","[Leshi] \u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=i[1],o=i[2],c=`https:${a}`,u="",l=/
[\s\n\r]*]*title="([^"]*)"[^>]*>([^<]*)<\/a>/.exec(s);if(l&&l[1])u=l[1].trim();else if(l&&l[2])u=l[2].trim();else{let h=/]*title="([^"]*)"[^>]*>[\s\S]*?
/.exec(s)||/
[\s\S]*?]*title="([^"]*)"/.exec(s);if(h&&h[1])u=h[1].trim();else{let p=/
]*>([^<]*)/.exec(s);if(p&&p[1])u=p[1].trim();else{let m=/]*title="[^"]*"[^>]*>([^<]*)/.exec(s);m&&m[1]&&(u=m[1].trim())}}}if(!u){let h=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);h?u=`\u7B2C${h[1]||h[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){R("info",`[Leshi] \u8DF3\u8FC7\u9884\u544A\u7247: ${u}`);continue}let f={vid:o,title:u,url:c,episodeId:`${o}:${r}`};n.push(f)}catch(i){R("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return R("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Leshi] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Leshi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let h=0;h0){let p={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from leshi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(p),or({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Leshi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...m);else if(h>600)break}else R("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Ri(i),i)}async getDanmuSegment(t){try{let r=await Me(t.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?r.data:JSON.stringify(r.data),i=/vjs_\d+\((.*)\)/.exec(s);if(i){let a=JSON.parse(i[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return R("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(t){R("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=t,n=t.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let s=await this.getVideoDuration(r),i=[];for(let a=0;a{try{let n=this.positionMap[parseInt(r.position)]||1,s=parseFloat(r.start||0),i=r.color||"FFFFFF",a=parseInt(i,16),o=r.id||r._id||"",c=r.txt||"",u=`${s.toFixed(2)},${n},25,${a},[${this.constructor.name.toLowerCase()}]`;return{cid:String(o),p:u,m:c,t:Math.round(s*100)/100}}catch(n){return R("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}}});var lSe,RRt,CRt=ie(()=>{Ai();Wt();Kt();Hr();oa();Ro();oi();fs();Ki();lSe=class extends tr{async search(t){try{let r=`https://m.ixigua.com/s/${t}`,s=(await Me(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,i=[],a=/
[\s\S]*?

[\s\S]*?相关视频[\s\S]*?<\/h2>[\s\S]*?
([\s\S]*?)<\/div><\/div><\/div>/,o=s.match(a);if(o){let c=o[1],u=/
[\s\S]*?(?=
|$)/g;(c.match(u)||[]).forEach(d=>{let f=d.match(/href="(\/video\/\d+)"/),h=f?`https://m.ixigua.com${f[1]}`:"",p=d.match(/

[\s\S]*?title="([^"]+)"/),m=p?p[1]:"",g=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),A="",E="";if(y){let v=y[1].split("/");A=v[0]||"",E=v[2]||""}h&&m&&i.push({name:m,type:A,year:E,img:_,url:h})})}else return R("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return R("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return R("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(t){try{let n=`https://m.ixigua.com/video/${t.split("/").pop()}`,s=await Me(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return R("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return R("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(t){try{let r=`https://m.ixigua.com/video/${t}`,n=await Me(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return R("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){R("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return R("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return R("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Xigua] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.name,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),h=[];for(let p of f){let m=p.title;h.push({name:m,url:p.url,title:`\u3010xigua\u3011 ${m}`})}if(h.length>0){let p={animeId:Zn(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:bn(l.year),episodeCount:h.length,rating:0,isFavorited:!0,source:"xigua"};a.push(p),or({...p,links:h},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...m)}else R("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Ri(i),i)}async getEpisodeDanmuSegments(t){R("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let r=t.split("/").pop(),n=await this.getDetail(t)*1e3;R("info","[Xigua] itemId:",r),R("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a({cid:Number(r.danmaku_id),p:`${(r.offset_time/1e3).toFixed(2)},1,16777215,[xigua]`,m:r.text,t:Math.round(r.offset_time/1e3)}))}},RRt=lSe});var dSe,xRt,wRt=ie(()=>{Ai();Wt();Kt();Hr();oa();eE();Ro();oi();fs();Ki();dSe=class extends tr{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(t,r){let n=Date.now(),s=So(r,!1),i=`os:Android|version:5.8.00|action:${t}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ci(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(t){let r=t.match(/\/video\/([a-f0-9]+)\.html/i),n=t.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(t){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:t},i=await Gn(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return R("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return R("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return R("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(t){try{let r=this.extractByRegex(t),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Gn(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return R("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return R("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(t){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:t},i=await Gn(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return R("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return R("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.name,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let h of d){let p=h.title;f.push({name:p,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${h.episodeId}`,title:`\u3010maiduidui\u3011 ${p}`})}if(f.length>0){let h={animeId:Zn(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:bn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(h),or({...h,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){R("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",t);let r=await this.getEpisodeDanmuSegments(t);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;R("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...m)}else R("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${h}-${p}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(R("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${t})`),[]):(Ri(i),i)}async getEpisodeDanmuSegments(t){R("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t);let n=this.extractByRegex(t).uuid,s=await this.getDetail(t);R("info","[Maiduidui] uuid:",n),R("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o{u.push(...f.barrageList)}),u}catch(r){return R("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(t){return t.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${BR(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},xRt=dSe});function Ek(e,t,r){if(e==null)return r;let n=t.split("."),s=e;for(let i=0;i{Wt();Kt();oa();Hr();QQr="https://www.yfsp.tv/",WQr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",XQr=60*1e3;hH=class{constructor(t){t=t||{},this.proxyUrlBuilder=t.proxyUrlBuilder||function(r){return F.makeProxyUrl(r)},this.userAgent=t.userAgent||WQr,this.configPageUrl=t.configPageUrl||QQr,this.ttlMs=t.ttlMs||XQr,this.now=t.now||function(){return Date.now()},this.signingConfig=null,this.signingConfigFetchedAt=0}async getSigningConfig(t){t=t||!1;var r=this.now(),n=this.signingConfig&&r-this.signingConfigFetchedAt{Ai();Kt();Hr();oa();eE();Ro();oi();fs();$u();Wt();DRt();yk=class extends tr{constructor(){super(),this.USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",this.SEARCH_API="https://rankv21.tripdata.app/v3/list/briefsearch",this.PLAYLIST_API="https://m10.yfsp.tv/v3/video/languagesplaylist",this.VIDEO_API="https://m10.yfsp.tv/v3/video/play",this.DANMU_API="https://m10.yfsp.tv/api/video/getBarrage",this.DOMAIN_API="https://www.yfsp.tv/play",this.CONFIG_PAGE_API="https://www.yfsp.tv/",this.signingProvider=new hH({userAgent:this.USER_AGENT,configPageUrl:this.CONFIG_PAGE_API}),this.inflightDanmuRequests=new Map}extractEpisodeRequestKey(t){try{return new URL(t).searchParams.get("id")??t}catch{return t}}async searchDrama(t,r=1,n=10){let s={tags:t,orderby:4,page:r,size:n,desc:1,isserial:-1},i={"User-Agent":this.USER_AGENT,Accept:"application/json"};R("info",`[Aiyifan] [\u641C\u7D22] \u5173\u952E\u8BCD: ${t}, \u9875\u7801: ${r}`);try{let a=DR(this.SEARCH_API,s),o=await Me(F.makeProxyUrl(a),{headers:i});return typeof o.data=="string"?JSON.parse(o.data):o.data}catch(a){return R("error",`[Aiyifan] [\u641C\u7D22\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractDramaList(t){let r=[],n=t?.data?.info||[];if(!n.length)return R("warn","[Aiyifan] [\u8B66\u544A] \u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),r;for(let s of n){let i=s.result||[];if(i.length)for(let a of i){let o=a.contxt,c=a.title;r.push({contxt:o,title:c,...a}),R("info",`[Aiyifan] [\u53D1\u73B0\u5267\u76EE] ${c} vid=${o}`)}}return r}async getPlaylist(t){let r={cinema:1,vid:t,lsk:1,taxis:0,cid:"0,1,4,152"},n={"User-Agent":this.USER_AGENT,Accept:"application/json"};R("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u8BF7\u6C42 vid: ${t}`);try{let{data:s}=await this.signingProvider.signedGetJson(this.PLAYLIST_API,r,n,"\u64AD\u653E\u5217\u8868"),i=[],a=s.data?.info||[];for(let o of a)for(let c of o.playList||[])i.push(c);return R("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u5171\u83B7\u53D6\u5230 ${i.length} \u96C6`),i}catch(s){return R("error",`[Aiyifan] [\u64AD\u653E\u5217\u8868\u5931\u8D25] \u9519\u8BEF: ${s.message}`),[]}}async getVideoInfo(t,r=null){let n={cinema:1,id:t,a:0,lang:"none",usersign:1,region:"GL.",device:0,isMasterSupport:1},s={"User-Agent":this.USER_AGENT,Accept:"application/json"},i=r?`(ID:${r})`:"";R("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u8BF7\u6C42 key: ${t} ${i}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.VIDEO_API,n,s,"\u89C6\u9891\u4FE1\u606F");return R("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] vv\u7B7E\u540D: ${o.substring(0,16)}...`),a.data||{}}catch(a){return R("error",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractUniqueKey(t){let n=(t.info?.[0]||{}).uniqueKey;return n&&R("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u83B7\u53D6\u5230 uniqueKey: ${n}`),n}async fetchBarrage(t,r=1,n=3e4){let s={cinema:1,page:r,size:n,uniqueKey:t},i={"User-Agent":this.USER_AGENT};R("info",`[Aiyifan] [\u5F39\u5E55] \u8BF7\u6C42 uniqueKey: ${t}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.DANMU_API,s,i,"\u5F39\u5E55");R("info",`[Aiyifan] [\u5F39\u5E55] vv\u7B7E\u540D: ${o.substring(0,16)}...`);let c=a.data?.info||[];return R("info",`[Aiyifan] [\u5F39\u5E55] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c}catch(a){return R("error",`[Aiyifan] [\u5F39\u5E55\u5931\u8D25] \u9519\u8BEF: ${a.message}`),[]}}async search(t){R("info",`[Aiyifan] \u5F00\u59CB\u641C\u7D22: ${t}`);let r=await this.searchDrama(t);if(!r)return R("error","[Aiyifan] \u641C\u7D22\u5931\u8D25\uFF0C\u9000\u51FA"),[];let n=this.extractDramaList(r);if(!n.length)return R("warn","[Aiyifan] \u672A\u627E\u5230\u5267\u76EE\u4FE1\u606F\uFF0C\u9000\u51FA"),[];let s=n.map(i=>({provider:"aiyifan",mediaId:i.contxt,title:i.title,type:i.atypeName,year:new Date(i.postTime).getFullYear(),imageUrl:i.imgPath||null,episodeCount:0}));return R("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(t){R("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${t}`);let r=await this.getPlaylist(t);if(!r.length)return R("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${t}?id=${s.key}`}));return R("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return R("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=t.filter(l=>Zt(l.title,r,i)),c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=er(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,R("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){R("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((m,g)=>({name:m.title||`${g+1}`,url:m.link,title:`\u3010aiyifan\u3011 ${m.title}`}));if(f.length===0)return;let p={animeId:Zn(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:bn(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(p),or({...p,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}catch(d){R("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(t){R("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${t}`);let r=this.extractEpisodeRequestKey(t),n=this.inflightDanmuRequests.get(r);if(n)return R("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return R("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return R("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(R("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),R("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(t){let r=await this.getEpisodeDanmu(t),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${t}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(t){let r=t.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(t){return t.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${BR(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(F.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Sr(r.m)),r))}}});var $d,vk,uWr,lWr,Sk,LRt=ie(()=>{Ai();Wt();Kt();Hr();oi();$u();Ki();fs();Vm();$d={danmu:null,subject:null},vk=new Map,uWr=3*60*1e3,lWr=100,Sk=class extends tr{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${F.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(t){return F.makeProxyUrl(t)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let t="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(t),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==t?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:t}]}async _fetchV0AllEpisodes(t,r){let n=[],s=0,i=200;try{for(;;){let a=`${t}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await Me(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&R("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&R("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length1600){R("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return R("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(t){let r=vk.get(t);if(r&&Date.now()-r.timestampa.url===s);(!s||i===-1)&&(i=0,s=n[0].url,$d.subject=s);for(let a=0;a(R("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:t},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if($d.subject!==o.url&&(R("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${$d.subject} -> ${o.url}`),$d.subject=o.url),vk.set(t,{data:c,timestamp:Date.now()}),vk.size>lWr){let u=vk.keys().next().value;vk.delete(u)}return c}R("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){R("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return R("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),$d.subject=n[0].url,null}async search(t){if(F.useBangumiData){let r=await Xf(t,["bangumi"]);if(r.length>0){R("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${t}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(t))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return R("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=t.replace(/[._]/g," ").replace(/\s+/g," ").trim();R("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},h=null;for(let g of d)try{if(h=await Gn(g.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),h&&h.data){R("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${g.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(_){R("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${g.id}] \u8BF7\u6C42\u5931\u8D25: ${_.message}`)}if(!h||!h.data){R("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let p=h.data.data||[];if(p.length===0)break;let m=this.filterSearchResults(p,t);if(m.length>0&&(n=n.concat(m)),m.length=60){R("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return R("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),R("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return R("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(t,r){return t.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&Zt(i,r))})}hasExplicitSeasonInfo(t){return t?/第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|劇場版|Movie|Film|续[篇集]|外传|SP|(?o.length){if(this.hasExplicitSeasonInfo(c))continue;let u=await this._fetchAnimekoSubject(i.id),d=this._extractRelations(u).find(f=>f.id===a.id);if(d&&(R("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let h=d.relation;h==="\u7EED\u96C6"&&(h="\u7EED\u7BC7"),a._relation_mark=`(${h})`}}}return t}_extractRelations(t){if(!t||!t.relations)return[];let r=t.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(t,r){if(!t||!t.fields||!Array.isArray(t.fields))return null;let n=t.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(t){let r=[];return!t||!t.fields||!Array.isArray(t.fields)||t.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(t){return t.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(t){try{let r=await this._fetchAnimekoSubject(t);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&R("info",`[Animeko] Subject ${t} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return R("error","[Animeko] GetEpisodes error:",{message:r.message,id:t}),[]}}async handleAnimes(t,r,n,s=null,i=null){let a=[];if(!t||!Array.isArray(t))return t&&R("error","[Animeko] sourceAnimes is not a valid array"),[];let o=t,c=i!==null?i:fr(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,h=er(f).season;return h===c||c===1&&h===null});l.length>0&&(o=l,R("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],h=l.air_date||"";if(Array.isArray(d)){d.sort((p,m)=>(p.sort||0)-(m.sort||0));for(let p of d){if(p.type!==0)continue;!h&&p.airdate&&(h=p.airdate);let m=p.sort||p.ep,g=p.name_cn||p.name||"",_=`\u7B2C${m}\u8BDD ${g}`.trim();f.push({name:`${m}`,url:p.id.toString(),title:`\u3010animeko\u3011 ${_}`})}}if(f.length>0){let p=h?new Date(h).getFullYear():"",m={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${p})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:h,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(m),or({...m,links:f},s),F.animes.length>F.MAX_ANIMES&&ur()}}catch(d){R("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(t){let r=String(t).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return R("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=$d.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],$d.danmu=s);for(let a=0;a ${c}`),$d.danmu=c),R("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}R("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){R("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return R("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),$d.danmu=n[0],[]}async getEpisodeDanmuSegments(t){return new zt({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(t)}]})}async getEpisodeSegmentDanmu(t){let r=(t.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(t){if(!Array.isArray(t))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return t.filter(n=>n&&n.danmakuInfo).map(n=>{let s=n.danmakuInfo,i=(Number(s.playTime)/1e3).toFixed(2),a=r[s.location]||1,o=s.color===-1?16777215:s.color,c=F.danmuSimplifiedTraditional==="simplified"?Sr(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}}});var Tk,MRt=ie(()=>{Ai();Wt();Kt();Hr();fs();Ki();Tk=class extends tr{async search(t){}async getEpisodes(t){}async handleAnimes(t,r,n,s=null){}async getEpisodeDanmu(t){try{let r=await Me(`${F.otherServer}/?url=${t}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return R("info",`[Other] danmu response from ${F.otherServer}: \u2193\u2193\u2193`),Ri(r.data),r.data}catch(r){return R("error",`[Other] \u8BF7\u6C42 ${F.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(t){return R("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",t),new zt({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:t}]})}async getEpisodeSegmentDanmu(t){return this.getEpisodeDanmu(t.url)}formatComments(t){return t}}});function kRt(e){let t=Number(e||0);return!Number.isFinite(t)||t<=0?0:t>6*60*60?t/1e3:t}function HRt(e,t=!1){return t?String(e||F.danmuOutputFormat||"json").toLowerCase()==="json":!1}function mH(e,t=null){return t===null?e:{videoDuration:t,...e}}function dWr(e){let t=kRt(e?.duration||e?.videoDuration||0);if(t>0)return t;let r=Array.isArray(e?.segmentList)?e.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=kRt(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function mSe(e){if(!/^https?:\/\//i.test(e))return 0;try{let t=e,r=null;return t.includes(".qq.com")?r=await $e.run("tencent",()=>cE.getComments(t,"qq",!0)):t.includes(".iqiyi.com")?r=await $e.run("iqiyi",()=>lE.getComments(t,"qiyi",!0)):t.includes(".mgtv.com")?r=await $e.run("mango",()=>JS.getComments(t,"imgo",!0)):t.includes(".bilibili.com")||t.includes("b23.tv")?(t.includes("b23.tv")&&(t=await $e.run("bilibili",()=>qd.resolveB23Link(t))),r=await $e.run("bilibili",()=>qd.getComments(t,"bilibili1",!0))):t.includes(".youku.com")?r=await $e.run("youku",()=>uE.getComments(t,"youku",!0)):t.includes(".miguvideo.com")?r=await $e.run("migu",()=>dE.getComments(t,"migu",!0)):t.includes(".sohu.com")?r=await $e.run("sohu",()=>ZS.getComments(t,"sohu",!0)):t.includes(".le.com")?r=await $e.run("leshi",()=>eT.getComments(t,"leshi",!0)):t.includes(".douyin.com")||t.includes(".ixigua.com")?r=await $e.run("xigua",()=>tT.getComments(t,"xigua",!0)):t.includes(".mddcloud.com.cn")?r=await $e.run("maiduidui",()=>rT.getComments(t,"maiduidui",!0)):t.includes(".yfsp.tv")&&(r=await $e.run("aiyifan",()=>nT.getComments(t,"aiyifan",!0))),dWr(r)}catch(t){return R("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${t.message}`),0}}function fWr(e){return String(e||"").split(Fd).map(t=>{let r=t.indexOf(":");return r===-1?t.trim():t.slice(r+1).trim()}).filter(Boolean)}async function gH(e){if(!e)return 0;try{let t=e.includes(Fd)?fWr(e):[e];return(await Promise.all(t.map(mSe))).reduce((n,s)=>Math.max(n,s||0),0)}catch(t){return R("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${t.message}`),0}}function _H(e,t){if(!t)return!0;let r=zA(e.animeTitle);return r?r===t:!0}function hWr(e,t,r){let n=e.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():e.animeTitle.split("(")[0].trim(),i=kr(s),a=kr(t);if(i.includes(a)){if(i.startsWith(a)){let o=i.substring(a.length).trim();if(o===""&&r===1)return!0;let c=o.match(/\d+/);if(c&&c[0]===r.toString())return!0;let u=o.match(/[一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+/);if(u&&Oh(u[0])===r)return!0}return!1}else return!1}function fSe(e,t,r,n,s){if(r===null||t===null)return!0;let i=[];s&&(i=s.split("&").map(o=>o.trim().toLowerCase()).filter(o=>o)),i.length===0&&(i=["_any_"]);let a=!0;for(let o of i){let c=!1,u=new Map,l=!1;for(let d of e){let f=AH(d.animeTitle)||d.source;if(o!=="_any_"&&vg(f,o)===0)continue;l=!0;let h=iT(d,n);if(h?.success&&h.bangumi?.episodes){let p=h.bangumi.episodes.filter(A=>!F.episodeTitleFilter.test(A.episodeTitle)),m=sT(p);if(m.some(A=>Mm(A.episodeTitle)===r)){c=!0;break}let g=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&g.push(...d.aliases);let _=null;for(let A of g){if(!A)continue;let E=er(A).season;if(E!==null){_=E;break}}_===null&&(_=1);let y=u.get(_)||0;m.length>y&&u.set(_,m.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(de[$]!==void 0),L=[];for(let $ of M){let K=[],ee=new Map;if($==="360")L.push({key:$,animes:K,detailStore:ee,promise:$e.run(Ns($),()=>FRt.handleAnimes(c,t,K,ee,s))});else if($==="vod"){if(o&&Array.isArray(o)){let z=$e.run($,()=>(async()=>{for(let oe of o)oe&&oe.list&&oe.list.length>0&&await $Rt.handleAnimes(oe.list,t,K,oe.serverName,ee,s)})());L.push({key:$,animes:K,detailStore:ee,promise:z})}}else $==="tmdb"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>qRt.handleAnimes(u,t,K,ee,s))}):$==="douban"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>pSe.handleAnimes(l,t,K,ee,s))}):$==="renren"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>bk.handleAnimes(d,t,K,ee,s))}):$==="hanjutv"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>Ik.handleAnimes(f,t,K,ee,s))}):$==="bahamut"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>CC.handleAnimes(h,t,K,ee,s))}):$==="dandan"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>Rk.handleAnimes(p,t,K,ee,s))}):$==="custom"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>yH.handleAnimes(m,t,K))}):$==="tencent"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>cE.handleAnimes(g,t,K,ee,s))}):$==="youku"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>uE.handleAnimes(_,t,K,ee,s))}):$==="iqiyi"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>lE.handleAnimes(y,t,K,ee,s))}):$==="imgo"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run(Ns($),()=>JS.handleAnimes(A,t,K,ee,s))}):$==="bilibili"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>qd.handleAnimes(E,t,K,ee,s))}):$==="migu"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>dE.handleAnimes(v,t,K,ee,s))}):$==="sohu"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>ZS.handleAnimes(b,t,K,ee,s))}):$==="leshi"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>eT.handleAnimes(I,t,K,ee,s))}):$==="xigua"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>tT.handleAnimes(T,t,K,ee,s))}):$==="maiduidui"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>rT.handleAnimes(x,t,K,ee,s))}):$==="aiyifan"?L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>nT.handleAnimes(w,t,K,ee,s))}):$==="animeko"&&L.push({key:$,animes:K,detailStore:ee,promise:$e.run($,()=>xC.handleAnimes(D,t,K,ee,s))})}let U=await Promise.allSettled(L.map($=>$.promise)),G=new Set(r.map($=>$.animeId));for(let $=0;$ ${_}`),i=_}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=jP(u,c);if(l===null&&a!==null){let _=jP(i,c);_!==null&&(R("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=_)}if(l!==null){let _=fSe(l,a,o,c,s);if(_)return tt({errorCode:0,success:!0,errorMessage:"",animes:l});{let y=a+1,A=[...l],E=!1;for(;!_&&!E;){let v=`${i}_S${y}`,b=jP(v,c);b!==null&&b.length>0?(A.push(...b),_=fSe(A,a,o,c,s),y++):E=!0}if(_)return R("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${y-1}`),tt({errorCode:0,success:!0,errorMessage:"",animes:A});R("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[],f=/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/,h=i.split(/\s+/).filter(_=>{let y=_.replace(/@%?-?\d+(?:\.\d+)?$/,"");return f.test(y)});if(h.length>=2){let _=h.map(y=>{let{source:A,realId:E}=URt(y);return A?`${A}:${E}`:""}).filter(Boolean);if(_.length>=2){let y=_.join(Fd),A=[];for(let T of h){let{source:x}=URt(T);if(x==="animeko"){let w=T.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);A.push(`\u3010animeko\u3011 BGMEp${w?w[1]:"?"}`)}else if(x==="bahamut")A.push(`\u3010bahamut\u3011 BahaSn${T.match(/sn=(\d+)/)?.[1]||"?"}`);else{let w=await $e.run(Ns(x),()=>ffe(T));A.push(`\u3010${x}\u3011 ${w}`)}}let E=A.join("\uFF06"),v=kh.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u5408\u5E76",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),b=[{name:"\u624B\u52A8\u5408\u5E76\u5F39\u5E55",url:y,title:E}];d.push(v),or(kh.fromJson({...v,links:b}),c),F.animes.length>F.MAX_ANIMES&&ur(),F.localCacheValid&&d.length!==0&&await YP(),F.redisValid&&d.length!==0&&await FP(),F.localRedisValid&&d.length!==0&&await ZM();let I=d.map(({links:T,...x})=>x);return tt({errorCode:0,success:!0,errorMessage:"",animes:I})}}if(f.test(i)){let _=kh.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),y="unknown";i.includes(".qq.com")?y="qq":i.includes(".iqiyi.com")?y="qiyi":i.includes(".mgtv.com")?y="imgo":i.includes(".youku.com")?y="youku":i.includes(".bilibili.com")||i.includes("b23.tv")?y="bilibili1":i.includes(".miguvideo.com")?y="migu":i.includes(".sohu.com")?y="sohu":i.includes(".le.com")?y="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?y="xigua":i.includes(".mddcloud.com.cn")?y="maiduidui":i.includes(".yfsp.tv")?y="aiyifan":/(?:bgm|bangumi)\.(?:tv|lol)\/ep\/|chii\.in\/ep\//.test(i)?y="animeko":i.includes("ani.gamer.com.tw")&&(y="bahamut");let A=i,E=i;if(y==="animeko"){let I=i.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);A=I?I[1]:i,E=`BGMEp${A}`}else if(y==="bahamut"){let I=i.match(/sn=(\d+)/);A=I?I[1]:i,E=`BahaSn${A}`}else E=await $e.run(Ns(y),()=>ffe(i));let v=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:A,title:`\u3010${y}\u3011 ${E}`}];d.push(_),or(kh.fromJson({..._,links:v}),c),F.animes.length>F.MAX_ANIMES&&ur(),F.localCacheValid&&d.length!==0&&await YP(),F.redisValid&&d.length!==0&&await FP(),F.localRedisValid&&d.length!==0&&await ZM();let b=d.map(({links:I,...T})=>T);return tt({errorCode:0,success:!0,errorMessage:"",animes:b})}try{R("info",`[system] [LogVar-API] Search sourceOrderArr: ${F.sourceOrderArr}`);let _={},y={};for(let I of F.sourceOrderArr)I==="360"?y[I]=$e.run(Ns(I),()=>FRt.search(i)):I==="vod"?y[I]=$e.run(Ns(I),()=>$Rt.search(i,t,r)):I==="tmdb"?y[I]=$e.run(Ns(I),()=>qRt.search(i)):I==="douban"?y[I]=$e.run(Ns(I),()=>pSe.search(i)):I==="renren"?y[I]=$e.run(Ns(I),()=>bk.search(i)):I==="hanjutv"?y[I]=$e.run(Ns(I),()=>Ik.search(i)):I==="bahamut"?y[I]=$e.run(Ns(I),()=>CC.search(i)):I==="dandan"?y[I]=$e.run(Ns(I),()=>Rk.search(i)):I==="custom"?y[I]=$e.run(Ns(I),()=>yH.search(i)):I==="tencent"?y[I]=$e.run(Ns(I),()=>cE.search(i)):I==="youku"?y[I]=$e.run(Ns(I),()=>uE.search(i)):I==="iqiyi"?y[I]=$e.run(Ns(I),()=>lE.search(i)):I==="imgo"?y[I]=$e.run(Ns(I),()=>JS.search(i)):I==="bilibili"?y[I]=$e.run(Ns(I),()=>qd.search(i)):I==="migu"?y[I]=$e.run(Ns(I),()=>dE.search(i)):I==="sohu"?y[I]=$e.run(Ns(I),()=>ZS.search(i)):I==="leshi"?y[I]=$e.run(Ns(I),()=>eT.search(i)):I==="xigua"?y[I]=$e.run(Ns(I),()=>tT.search(i)):I==="maiduidui"?y[I]=$e.run(Ns(I),()=>rT.search(i)):I==="aiyifan"?y[I]=$e.run(Ns(I),()=>nT.search(i)):I==="animeko"&&(y[I]=$e.run(Ns(I),()=>xC.search(i)));let A=F.sourceOrderArr.map(I=>{let T=[],x=new Map,w=y[I].then(async D=>{_[I]=D,await BRt({[I]:D},i,T,x,a,t,r)});return{key:I,animes:T,detailStore:x,promise:w}}),E=await Promise.allSettled(A.map(I=>I.promise)),v=new Set(d.map(I=>I.animeId));for(let I=0;I0&&KP(u,d.map(({links:I,...T})=>T),c),!fSe(d,a,o,c,s)&&a!==null){let I=a;for(let T of F.sourceOrderArr){let x=_[T];if(Array.isArray(x))for(let w of x){let D=w&&Array.isArray(w.list)?w.list:[w];for(let M of D){if(!M)continue;let L=er(M.animeTitle||M.title||"").season;L!==null&&L>I&&(I=L)}}}if(I>a){R("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let T=[];for(let w=a+1;w<=I;w++)T.push((async()=>{let D=[];return await BRt(_,i,D,c,w,t,r),D.length>0&&KP(`${i}_S${w}`,D.map(({links:M,...L})=>L),c),D})());let x=await Promise.all(T);for(let w of x)d.push(...w)}}}catch(_){R("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",_)}let p=F.mergeSourcePairs&&F.mergeSourcePairs.length>0,m=F.customMergeRules&&F.customMergeRules.length>0;if((p||m)&&await wIt(d,c),Cfe(d,i),F.enableAnimeEpisodeFilter){let _=[];for(let y of d){let A=y.animeTitle||"";if(F.animeTitleFilter&&F.animeTitleFilter.test(A)){R("info",`[searchAnime] Anime ${y.animeId} filtered by name: ${A}`);continue}let E=bS(y?.bangumiId,c,y?.source)||bS(y?.animeId,c,y?.source)||TS(y?.bangumiId,c,y?.source)||TS(y?.animeId,c,y?.source);if(E&&E.links){let v=E.links.map((b,I)=>({episodeId:b.id,episodeTitle:b.title,episodeNumber:I+1}));v=v.filter(b=>!F.episodeTitleFilter.test(b.episodeTitle)),R("info",`[searchAnime] Anime ${y.animeId} filtered episodes: ${v.length}/${E.links.length}`),v.length>0&&_.push(y)}}d.length=0,d.push(..._)}F.localCacheValid&&d.length!==0&&await YP(),F.redisValid&&d.length!==0&&await FP(),F.localRedisValid&&d.length!==0&&await ZM();let g=d.map(({links:_,...y})=>y);if(g.length>0){let _=a!==null?`${i}_S${a}`:i;KP(_,g,c)}return tt({errorCode:0,success:!0,errorMessage:"",animes:g})}function sT(e){return e.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function vg(e,t){if(!e||!t)return 0;let r=e.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),s=0;for(let i of n)r.some(o=>o===i||o.includes(i)&&i.length>2||i.includes(o)&&o.length>2)&&s++;return s===0?0:s*1e3-r.length}function AH(e){let t=e.match(/from\s+([a-zA-Z0-9&]+)/i);return t?t[1]:null}function EH(e,t,r,n=null){if(!e||e.length===0)return null;let s=e;if(n&&(s=e.filter(i=>{let a=GA(i.episodeTitle);return vg(a,n)>0})),s.length===0)return null;for(let i of s){let a=Mm(i.episodeTitle);if(t===r&&a===r)return R("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return R("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return R("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function pWr(e,t,r,n,s,i,a,o,c=null){let u=F.aiBaseUrl,l=F.aiModel,d=F.aiApiKey,f=F.aiMatchPrompt;if(!F.aiValid||!f)return R("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let h=new Hm({apiKey:d,baseURL:u,model:l,systemPrompt:f}),p={title:s,season:e,episode:t,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(m=>{let g=m.animeTitle||"",_=g.match(/^(.*?)\(\d{4}\)/),y=_?_[1].trim():g.split("(")[0].trim();return{animeId:m.animeId,animeTitle:y,aliases:m.aliases||[],type:m.type,year:m.startDate?m.startDate.slice(0,4):null,episodeCount:m.episodeCount,source:m.source}})};try{let m=JSON.stringify(p,null,2),g=await h.ask(m);R("info",`AI match response: ${g}`);let _;try{let b=g.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),I=b?b[1]||b[2]||b[3]:g;_=JSON.parse(I.trim())}catch(b){return R("error",`Failed to parse AI response: ${b.message}`),{resEpisode:null,resAnime:null}}let y=_.animeIndex;if(y==null)return{resEpisode:null,resAnime:null};let A=n.animes[y];if(!A)return R("error",`AI returned invalid anime index: ${y}`),{resEpisode:null,resAnime:null};let E=iT(A,c);if(!E?.success||!E?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let v=null;if(e&&t){let b=E.bangumi.episodes.filter(T=>!F.episodeTitleFilter.test(T.episodeTitle)),I=sT(b);R("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",I.map(T=>T.episodeTitle)),v=EH(I,t,t)}else E.bangumi.episodes.length>0&&(v=E.bangumi.episodes[0]);return{resEpisode:v,resAnime:A}}catch(m){return R("error",`AI matching failed: ${m.message}`),{resEpisode:null,resAnime:null}}}function iT(e,t=null){let r=bS(e?.bangumiId,t,e?.source)||bS(e?.animeId,t,e?.source);return r?_Se(r,e?.bangumiId||e?.animeId||""):(R("warn",`[matchAnime] Missing request detail snapshot for anime ${e?.animeId??e?.bangumiId}`),null)}function VRt(e,t,r,n,s){let i=String(t),a=e[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,R("info",`Applying offset "${e[i]}" for S${t}E${r} -> ${s}`)),s}function jRt(e,t,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};R("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=kr(t),c=new Map;for(let f of e.animes){let h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);let p=!1;for(let g of h)if(g&&kr(g).includes(o)){if(!_H(f,r))continue;p=!0;break}if(!p)continue;let m=null;for(let g of h){if(!g)continue;let _=er(g).season;if(_!==null){m=_;break}}if(m===null&&(m=1),!c.has(m)){let g=iT(f,a);if(g?.success&&g?.bangumi?.episodes){let _=g.bangumi.episodes.filter(A=>!F.episodeTitleFilter.test(A.episodeTitle)),y=sT(_);y.length>0&&c.set(m,{anime:f,episodes:y,actualPlatform:AH(f.animeTitle)||f.source})}}}let u=s,l=n,d={anime:null,episode:null,score:0};for(;c.has(l);){let f=c.get(l),h=f.episodes,p=null;for(let m of h)if(Mm(m.episodeTitle)===s){p=m;break}if(p){if(i&&vg(GA(p.episodeTitle),i)===0)break;R("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${p.episodeTitle}`),d={anime:f.anime,episode:p,score:i?vg(f.actualPlatform,i):1};break}if(u<=h.length){let m=h[u-1];if(i&&vg(GA(m.episodeTitle),i)===0)break;R("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?vg(f.actualPlatform,i):1};break}R("info",`[system] [Spillover] S${l} \u5171\u6709 ${h.length} \u96C6(\u5DF2\u8FC7\u6EE4\u756A\u5916)\uFF0C\u5269\u4F59\u76EE\u6807\u96C6\u6570\u4E3A ${u}\uFF0C\u6620\u5C04\u81F3 S${l+1} \u7EE7\u7EED\u67E5\u627E`),u-=h.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function mWr(e,t,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=kr(s);for(let f of n.animes){if(F.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let p=!1,m=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&m.push(...f.aliases);for(let A of m)if(A){if(e&&t){if(kr(A).includes(d)){if(!_H(f,r)){R("info",`Year mismatch: anime year ${zA(f.animeTitle)} vs query year ${r}`);continue}let E=F.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),v={...f,animeTitle:A};if(hWr(v,s,e)||E){p=!0;break}}}else if(A.split("(")[0].trim()===s){if(!_H(f,r)){R("info",`Year mismatch: anime year ${zA(f.animeTitle)} vs query year ${r}`);continue}p=!0;break}}if(!p)continue;let g=iT(f,u);if(!g?.success||!g?.bangumi?.episodes)continue;R("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),R("info",g);let _=null,y=F.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(e&&t){let A=g.bangumi.episodes.filter(b=>!F.episodeTitleFilter.test(b.episodeTitle)),E=sT(A);R("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",E.map(b=>b.episodeTitle));let v=t;c&&c[String(e)]!==void 0&&(v=VRt(c,e,t,E,v)),_=EH(E,t,v,a),!_&&y&&(R("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),_=EH(E,t,v,null))}else if(g.bangumi.episodes.length>0)if(a){let A=g.bangumi.episodes.find(E=>{let v=GA(E.episodeTitle);return vg(v,a)>0});A?_=A:y&&(R("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),_=g.bangumi.episodes[0])}else _=g.bangumi.episodes[0];if(_){let A=AH(f.animeTitle)||f.source,E=0;if(a?E=vg(A,a):E=1,y&&(E+=9999),E>l.score&&(l={anime:f,episode:_,score:E}),!a||y)break}}if(!l.episode&&e&&t){let f=jRt(n,s,r,e,t,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?vg(AH(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function gWr(e,t,r,n,s,i,a,o,c,u=null){for(let d of e.animes){if(s&&!_H(d,s)){R("info",`Fallback: Year mismatch: anime year ${zA(d.animeTitle)} vs query year ${s}`);continue}let f=iT(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(R("info",f),r&&n){let h=f.bangumi.episodes.filter(_=>!F.episodeTitleFilter.test(_.episodeTitle)),p=sT(h);R("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",p.map(_=>_.episodeTitle));let m=n;c&&c[String(r)]!==void 0&&(m=VRt(c,r,n,p,m));let g=EH(p,n,m,null);if(g){a=g,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=jRt(e,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}function URt(e){let t=e.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);if(t){let s=e.match(/@(-?\d+(?:\.\d+)?)$/);return{source:"animeko",realId:t[1]+(s?s[0]:"")}}let r=e.match(/ani\.gamer\.com\.tw\/animeVideo\.php\?sn=(\d+)/);if(r){let s=e.match(/@(-?\d+(?:\.\d+)?)$/);return{source:"bahamut",realId:r[1]+(s?s[0]:"")}}return{source:_Wr(e),realId:e}}function _Wr(e){return e.includes(".qq.com")?"tencent":e.includes(".iqiyi.com")?"iqiyi":e.includes(".mgtv.com")?"imgo":e.includes(".youku.com")?"youku":e.includes(".bilibili.com")||e.includes("b23.tv")?"bilibili":e.includes(".miguvideo.com")?"migu":e.includes(".sohu.com")?"sohu":e.includes(".le.com")?"leshi":e.includes(".douyin.com")||e.includes(".ixigua.com")?"xigua":e.includes(".mddcloud.com.cn")?"maiduidui":e.includes(".yfsp.tv")?"aiyifan":"unknown"}async function AWr(e){let t=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=e.match(t),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=e.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let c=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(c)n=c[0];else if(/^[A-Za-z0-9]/.test(n)){let u=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);u&&(n=u[1].trim().replace(/[._]/g," "))}else{let u=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=u.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:u.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,c=e.match(o);n=c?c[1].replace(/[._]/g," ").trim():e,s=null,i=null;let u=e.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return F.titleToChinese&&(n=await fIt(n.replace("."," "),s,i)),R("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function KRt(e,t,r,n){let s=new URL(e),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",t||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function GRt(e,t,r){try{let n=await t.json();if(!n)return R("error","[system] [Match] Request body is empty"),tt({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return R("error","[system] [Match] Missing fileName parameter in request body"),tt({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=qnt(s);R("info",`[system] [Match] Processing anime match for query: ${s}`),R("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await AWr(i);if(F.titleMappingTable&&F.titleMappingTable.size>0){let x=F.titleMappingTable.get(o);x&&(o=x,R("info",`[system] [Match] Title mapped from original: ${e.searchParams.get("keyword")} to: ${o}`))}if(F.animeTitleSimplified){let x=Sr(o);R("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${x}`),o=x}F.titleNoiseFilter&&(o=o.replace(F.titleNoiseFilter,"").trim());let[d,f,h]=wfe(o,c);R("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let p=Hnt(a),m=p.length>0?p[0]:null,g=new Map,_=KRt(t.url,o,c,u),A=await(await wC(_,d,f,g,m)).json();R("info",`[system] [Match] searchData: ${A.animes}`);let E,v,b=!1,I={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};R("info",`[system] [Match] Original platformOrderArr: ${F.platformOrderArr}`),R("info",`[system] [Match] Dynamic platformOrder: ${p}`),R("info",`[system] [Match] Preferred platform: ${a||"none"}`);let T=await pWr(c,u,l,A,o,t,p,d,g);if(T.resAnime&&T.resEpisode)E=T.resAnime,v=T.resEpisode,I.isMatched=!0,R("info",`[system] [Match] AI match found: ${E.animeTitle}; episode: ${v.episodeTitle}`);else{for(let x of p){let w=await mWr(c,u,l,A,o,t,x,d,h,g);if(v=w.resEpisode,E=w.resAnime,E){I.isMatched=!0,R("info",`[system] [Match] Found match with platform: ${x||"default"}`);break}}if(!E){let x=await gWr(A,t,c,u,l,o,v,E,h,g);v=x.resEpisode,E=x.resAnime,b=x.isSpillover}}return v&&(r&&!b&&Tfe(r,{title:o,season:c,episode:u,episodeId:v.episodeId}),I.matches=[q9.fromJson({episodeId:v.episodeId,animeId:E.animeId,animeTitle:E.animeTitle,episodeTitle:v.episodeTitle,type:E.type,typeDescription:E.typeDescription,shift:0,imageUrl:E.imageUrl})]),R("info",`[system] [Match] resMatchData: ${I}`),tt(I)}catch(n){return R("error",`[system] [Match] Failed to parse request body: ${n.message}`),tt({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function zRt(e){let t=e.searchParams.get("anime"),r=e.searchParams.get("episode")||"";if(F.animeTitleSimplified){let c=Sr(t);R("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${t} -> ${c}`),t=c}if(R("info",`[system] [Episodes] Search episodes with anime: ${t}, episode: ${r}`),!t)return R("error","[system] [Episodes] Missing anime parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=KRt(e,t),s=new Map,a=await(await wC(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return R("info","[system] [Episodes] No anime found for the given title"),tt({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=TS(c.bangumiId,s,c.source)||TS(c.animeId,s,c.source),l=null;if(u)l=_Se(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,e.origin);l=await(await gSe(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>c.typeDescription&&(c.typeDescription.includes("\u7535\u5F71")||c.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(h=>parseInt(h.episodeNumber)===f)}}d.length>0&&o.push(V9.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return R("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),tt({errorCode:0,success:!0,errorMessage:"",animes:o})}async function gSe(e,t=null,r=null){let n=e.split("/").pop(),s=bS(n,t,r)||TS(n);return s?tt(_Se(s,n)):(R("error",`[system] [Bangumi] Anime with ID ${n} not found`),tt({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function _Se(e,t=""){R("info",`[system] [Bangumi] Fetched details for anime ID: ${t||e.bangumiId}`);let r=[];for(let s=0;s!F.episodeTitleFilter.test(s.episodeTitle)),R("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${e.links.length}`),r.length===0)return R("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${t||e.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:j9.fromJson({animeId:e.animeId,bangumiId:e.bangumiId,animeTitle:e.animeTitle,imageUrl:e.imageUrl,isOnAir:!0,airDay:1,isFavorited:e.isFavorited,rating:e.rating,type:e.type,typeDescription:e.typeDescription,seasons:[{id:`season-${e.animeId}`,airDate:e.startDate,name:"Season 1",episodeCount:e.episodeCount}],episodes:r})}}async function EWr(e,t,r){let n=e.split(Fd),s=n.map(p=>{let m=p.indexOf(":");if(m===-1)return{realId:"",logicalSource:"",sourceLabel:""};let g=p.substring(0,m),_=p.substring(m+1),y=0,A=!1,E=_.match(/@%(-?\d+(?:\.\d+)?)$/);if(E)y=parseFloat(E[1]),A=!0,_=_.substring(0,_.length-E[0].length);else{let v=_.match(/@(-?\d+(?:\.\d+)?)$/);v&&(y=parseFloat(v[1]),_=_.substring(0,_.length-v[0].length))}return g!=="hanjutv"?{realId:_,logicalSource:g,sourceLabel:g,manualOffset:y,manualOffsetPercent:A}:{realId:_,logicalSource:"hanjutv",sourceLabel:uH(_),manualOffset:y,manualOffsetPercent:A}}),i=s.map(p=>p.logicalSource).filter(Boolean),a=s.map(p=>p.realId),o=s.map(p=>p.sourceLabel).filter(Boolean).join("\uFF06");R("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=qm(e);if(c)return R("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async p=>{let m=p.logicalSource,g=p.sourceLabel||p.logicalSource,_=p.realId;if(!m||!_)return[];let y=`${m}:${_}`;if(pH.has(y)){R("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${y}`);try{return await pH.get(y)||[]}catch{return[]}}let A=$e.run(Ns(m),async()=>{let E=null;if(m==="renren"?E=bk:m==="hanjutv"?E=Ik:m==="bahamut"?E=CC:m==="dandan"?E=Rk:m==="tencent"?E=cE:m==="youku"?E=uE:m==="iqiyi"?E=lE:m==="imgo"?E=JS:m==="bilibili"?E=qd:m==="migu"?E=dE:m==="sohu"?E=ZS:m==="leshi"?E=eT:m==="xigua"?E=tT:m==="maiduidui"?E=rT:m==="aiyifan"?E=nT:m==="animeko"&&(E=xC),E)try{let v=_;m==="bilibili"&&String(v).includes("b23.tv")&&(v=await qd.resolveB23Link(v));let b=await E.getEpisodeDanmu(v,n),I=E.formatComments(b);if(R("info",`[${g}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),p.manualOffset&&I&&Array.isArray(I))if(p.manualOffsetPercent){let T=Math.max(...I.map(x=>parseFloat(String(x.p).split(",")[0])||0),0);I=dS(I,p.manualOffset,{usePercent:!0,videoDuration:T||1}),R("info",`[${g}] \u5E94\u7528\u767E\u5206\u6BD4\u504F\u79FB ${p.manualOffset}s (\u65F6\u957F=${T}s)`)}else I=dS(I,p.manualOffset),R("info",`[${g}] \u5E94\u7528\u624B\u52A8\u504F\u79FB ${p.manualOffset}s`);return I&&Array.isArray(I)&&I.forEach(T=>{T._sourceLabel||(T._sourceLabel=g)}),u[g]=I.length,I}catch(v){return R("error",`[Merge] \u83B7\u53D6 ${g} \u5931\u8D25: ${v.message}`),u[g]=0,[]}return[]});pH.set(y,A);try{return await A}finally{pH.delete(y)}}),d=await Promise.all(l);if(OIt(d,i,a),F.danmuOffsetRules?.length>0&&t&&r){let[,,p]=z9(r);if(p){let{baseTitle:m,season:g,episode:_}=Ode(t,p);g||=1,_||=G9(r)+1;let y=`S${g.toString().padStart(2,"0")}`,A=`E${_.toString().padStart(2,"0")}`;for(let E=0;E ${i[E]} (${m}/${y}/${A})${b?.usePercent?`, duration=${x}s`:""}`),d[E]=dS(v,I,{usePercent:b?.usePercent,videoDuration:x})}}}}let f=[];d.forEach(p=>{f=NIt(f,p)});let h=Object.entries(u).map(([p,m])=>`${p}: ${m}`).join(", ");return R("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${h})`),QP(f,o)}async function ASe(e,t,r,n,s=!1){let i=parseInt(e.split("/").pop()),a=Rfe(i),o=zP(i),c=Ife(i),u=c?GA(c):null,l=HRt(t,s);if(R("info","[system] [LogVar-API] comment url...",o),R("info","[system] [LogVar-API] comment title...",c),R("info","[system] [LogVar-API] comment platform...",u),!o)return R("error",`[system] [LogVar-API] Comment with ID ${i} not found`),tt({count:0,comments:[]},404);R("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=qm(o);if(d!==null){let I=mH({count:d.length,comments:d},l?await gH(o):null);return IS(I,t)}R("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],h=l?gH(o):null,p=0,m=!1,g=o,_=o.match(/@%(-?\d+(?:\.\d+)?)$/);if(_)p=parseFloat(_[1]),m=!0,g=o.substring(0,o.length-_[0].length),R("info",`[system] [LogVar-API] \u68C0\u6D4B\u5230\u94FE\u63A5\u767E\u5206\u6BD4\u504F\u79FB: ${p}s`);else{let I=o.match(/@(-?\d+(?:\.\d+)?)$/);I&&(p=parseFloat(I[1]),g=o.substring(0,o.length-I[0].length),R("info",`[system] [LogVar-API] \u68C0\u6D4B\u5230\u94FE\u63A5\u504F\u79FB: ${p}s`))}if(o&&o.includes(Fd))f=await EWr(o,a,i);else{let I=g;if(o.includes(".qq.com"))f=await $e.run("tencent",()=>cE.getComments(I,u,r));else if(o.includes(".iqiyi.com"))f=await $e.run("iqiyi",()=>lE.getComments(I,u,r));else if(o.includes(".mgtv.com"))f=await $e.run("mango",()=>JS.getComments(I,u,r));else if(o.includes(".bilibili.com")||o.includes("b23.tv")){let x=I;x.includes("b23.tv")&&(x=await $e.run("bilibili",()=>qd.resolveB23Link(x))),f=await $e.run("bilibili",()=>qd.getComments(x,u,r))}else if(o.includes(".youku.com"))f=await $e.run("youku",()=>uE.getComments(I,u,r));else if(o.includes(".miguvideo.com"))f=await $e.run("migu",()=>dE.getComments(I,u,r));else if(o.includes(".sohu.com"))f=await $e.run("sohu",()=>ZS.getComments(I,u,r));else if(o.includes(".le.com"))f=await $e.run("leshi",()=>eT.getComments(I,u,r));else if(o.includes(".douyin.com")||o.includes(".ixigua.com"))f=await $e.run("xigua",()=>tT.getComments(I,u,r));else if(o.includes(".mddcloud.com.cn"))f=await $e.run("maiduidui",()=>rT.getComments(I,u,r));else if(o.includes(".yfsp.tv"))f=await $e.run("aiyifan",()=>nT.getComments(I,u,r));else if(/(?:bgm|bangumi)\.(?:tv|lol)\/ep\/|chii\.in\/ep\//.test(o)){let x=I.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);f=await $e.run("animeko",()=>xC.getComments(x?x[1]:I,u,r))}else if(o.includes("ani.gamer.com.tw")){let x=I.match(/sn=(\d+)/);f=await $e.run("bahamut",()=>CC.getComments(x?x[1]:I,u,r))}let T=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;T.test(o)||(u==="renren"?f=await $e.run("renren",()=>bk.getComments(o,u,r)):u==="hanjutv"?f=await $e.run("hanjutv",()=>Ik.getComments(o,u,r)):u==="bahamut"?f=await $e.run("bahamut",()=>CC.getComments(o,u,r)):u==="dandan"?f=await $e.run("dandan",()=>Rk.getComments(o,u,r)):u==="custom"?f=await $e.run("custom",()=>yH.getComments(o,u,r)):u==="animeko"&&(f=await $e.run("animeko",()=>xC.getComments(o,u,r)))),(!f||f.length===0)&&T.test(o)&&(f=await $e.run("other",()=>hSe.getComments(o,"other_server",r)))}if(p!==0&&f&&Array.isArray(f)&&f.length>0)if(m){let I=Math.max(...f.map(T=>parseFloat(String(T.p).split(",")[0])||0),0);f=dS(f,p,{usePercent:!0,videoDuration:I||1}),R("info",`[system] [LogVar-API] \u5E94\u7528\u94FE\u63A5\u767E\u5206\u6BD4\u504F\u79FB ${p}s (\u65F6\u957F=${I}s)`)}else f=dS(f,p),R("info",`[system] [LogVar-API] \u5E94\u7528\u94FE\u63A5\u504F\u79FB ${p}s`);let[y,A,E,v]=z9(i);if(y&&A){let I=null,T=null,x=null;if(n){let D=bfe(n);D&&D.title&&D.season&&D.episode&&E&&(I=D.title,T=D.season,x=`${D.episode}:${E}`,R("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${D.episode}, Selected ${E} -> Offset ${x} (Season ${T})`))}R("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${I}; titleMatches\uFF1A${Zt(a,I)}`),(Zt(a,I)||Array.isArray(v)&&v.some(D=>Zt(D,I)))&&(R("info","[system] [LogVar-API] excute setPreferByAnimeId"),xfe(y,A,T,x)),F.localCacheValid&&y&&W9("lastSelectMap",JSON.stringify(Object.fromEntries(F.lastSelectMap))),F.redisValid&&y&&_fe("lastSelectMap",F.lastSelectMap).catch(D=>R("error","[system] [LogVar-API] Redis set error",D)),F.localRedisValid&&y&&eH("lastSelectMap",F.lastSelectMap)}if(a&&E&&F.danmuOffsetRules?.length>0&&!(o&&o.includes(Fd))){let{baseTitle:I,season:T,episode:x}=Ode(a,E);T||=1,x||=G9(i)+1;let w=`S${T.toString().padStart(2,"0")}`,D=`E${x.toString().padStart(2,"0")}`,M=Dde(F.danmuOffsetRules,{anime:I,season:w,episode:D,source:A}),L=M?.offset||0;if(L!==0){let U=M?.usePercent?await mSe(o):0;R("info",`[system] [LogVar-API] Applying danmu offset: ${L}${M?.usePercent?"%":"s"} for ${I}/${w}/${D}${M?.usePercent?`, duration=${U}s`:""}`),f=dS(f,L,{usePercent:M?.usePercent,videoDuration:U})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&GP(o,f));let b=mH({count:f.length,comments:f},h?await h:null);return IS(b,t)}async function ESe(e,t,r,n=!1){try{if(!e||typeof e!="string")return R("error","[system] [LogVar-API] Missing or invalid url parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(e=e.trim(),!e.startsWith("http"))return R("error","[system] [LogVar-API] Invalid url format, must start with http or https"),tt({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);R("info",`[system] [LogVar-API] Processing comment request for URL: ${e}`);let s=e,i=HRt(t,n),a=qm(s);if(a!==null){let l=mH({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await gH(s):null);return IS(l,t)}R("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?gH(s):null;s.includes(".qq.com")?o=await $e.run("tencent",()=>cE.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await $e.run("iqiyi",()=>lE.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await $e.run("mango",()=>JS.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await $e.run("bilibili",()=>qd.resolveB23Link(s))),o=await $e.run("bilibili",()=>qd.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await $e.run("youku",()=>uE.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await $e.run("migu",()=>dE.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await $e.run("sohu",()=>ZS.getComments(s,"sohu",r)):s.includes(".le.com")?o=await $e.run("leshi",()=>eT.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await $e.run("xigua",()=>tT.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await $e.run("maiduidui",()=>rT.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await $e.run("aiyifan",()=>nT.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await $e.run("other",()=>hSe.getComments(s,"other_server",r))),R("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&GP(s,o);let u=mH({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return IS(u,t)}catch(s){return R("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),tt({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function YRt(e,t){try{let r=e.url,n=e.type;if(!r||typeof r!="string")return R("error","[system] [SegmentComment] Missing or invalid url parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),R("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=qm(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return IS(o,t)}R("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await $e.run("tencent",()=>cE.getSegmentComments(e)):n==="qiyi"?i=await $e.run("iqiyi",()=>lE.getSegmentComments(e)):n==="imgo"?i=await $e.run("mango",()=>JS.getSegmentComments(e)):n==="bilibili1"?i=await $e.run("bilibili",()=>qd.getSegmentComments(e)):n==="youku"?i=await $e.run("youku",()=>uE.getSegmentComments(e)):n==="migu"?i=await $e.run("migu",()=>dE.getSegmentComments(e)):n==="sohu"?i=await $e.run("sohu",()=>ZS.getSegmentComments(e)):n==="leshi"?i=await $e.run("leshi",()=>eT.getSegmentComments(e)):n==="xigua"?i=await $e.run("xigua",()=>tT.getSegmentComments(e)):n==="maiduidui"?i=await $e.run("maiduidui",()=>rT.getSegmentComments(e)):n==="aiyifan"?i=await $e.run("aiyifan",()=>nT.getSegmentComments(e)):n==="hanjutv"?i=await $e.run("hanjutv",()=>Ik.getSegmentComments(e)):n==="bahamut"?i=await $e.run("bahamut",()=>CC.getSegmentComments(e)):n==="renren"?i=await $e.run("renren",()=>bk.getSegmentComments(e)):n==="dandan"?i=await $e.run("dandan",()=>Rk.getSegmentComments(e)):n==="animeko"?i=await $e.run("animeko",()=>xC.getSegmentComments(e)):n==="custom"?i=await $e.run("custom",()=>yH.getSegmentComments(e)):n==="other_server"&&(i=await $e.run("other",()=>hSe.getSegmentComments(e))),R("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&GP(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return IS(a,t)}catch(r){return R("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),tt({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}var FRt,$Rt,bk,Ik,CC,Rk,yH,cE,uE,lE,JS,qd,dE,ZS,eT,tT,rT,nT,xC,hSe,pSe,qRt,pH,ySe=ie(()=>{Wt();Hr();Kt();$u();F9();ek();oi();eE();Pde();fs();TC();DIt();Zve();X9();XIt();JIt();uRt();lRt();dRt();hRt();tSe();pRt();mRt();rSe();nSe();sSe();iSe();SRt();aSe();TRt();IRt();CRt();wRt();PRt();LRt();MRt();Ki();FRt=new sk,$Rt=new ik,bk=new lk,Ik=new dk,CC=new GS,Rk=new fk,yH=new hk,cE=new zS,uE=new XS,lE=new YS,JS=new QS,qd=new WS,dE=new vRt,ZS=new _k,eT=new Ak,tT=new RRt,rT=new xRt,nT=new yk,xC=new Sk,hSe=new Tk,pSe=new ok(cE,lE,uE,qd,dE),qRt=new ak(pSe),pH=new Map});function vH(e){let t=String(e||"").trim();if(!t)return"";if(F.animeTitleSimplified)try{t=Sr(t)}catch{}return kr(t.toLowerCase())}function QRt(e){let t=String(e||"").replace(/\D/g,"");return t.length>=8?t.slice(0,8):""}function bWr(e){let t=String(e||"");return yWr.forEach(([r,n])=>{t=t.replace(r,n)}),t}function XRt(e){let t=String(e||"");return vWr.forEach(([n,s],i)=>{t=t.replace(n,s)}),t.replace(/\s+/g," ").trim()}function WRt(e){if(!e)return null;let t=String(e);for(let{pattern:s,group:i,chinese:a}of SWr){let o=t.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=Oh(c);if(u!==null&&!isNaN(u))return u}else{let u=parseInt(c,10);if(!isNaN(u)&&u>0&&u<1e4)return u}}}for(let{pattern:s,type:i}of TWr){let a=t.match(s);if(a){if(i==="ymd"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}else if(i==="ymd_compact"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}}}let r=XRt(e),n=Mm(r);return n!==null?n:null}function IWr(e){let t=String(e||"").trim();if(!t)return[];let r=[],n=a=>{let o=kr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(t);let s=kr(bWr(t)).trim();s&&s!==t&&n(s);let i=kr(t.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==t&&n(i),r.sort((a,o)=>a.length-o.length)}function RWr(e){let t=new URL(e.url),r=t.pathname.replace(/\/+$/,""),n="/api/v2/",s="/danmaku",i="",a=r.indexOf(n);if(a>=0)i=r.slice(0,a);else{let o=r.indexOf(s);o>=0?i=r.slice(0,o):i=r}return`${t.origin}${i}`}async function CWr(e,t){if(t.method==="GET")return{name:e.searchParams.get("name")||"",episode:e.searchParams.get("episode")||""};try{let r=t.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){R("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function xWr(e,t,r,n){let s=Math.max(0,200-n),i=XRt(r),a=vH(i);if(!a)return s;let o=t?.episodeTitle||"",c=vH(o),u=vH(GA(o)),l=vH(e?.animeTitle||"");(c===a||u===a)&&(s+=1e4),(c.includes(a)||a.includes(c))&&(s+=4500),u&&(u.includes(a)||a.includes(u))&&(s+=2500);let d=WRt(i),f=WRt(o),h=parseInt(t?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(h)&&d===h&&(s+=4e3);let p=QRt(i),m=QRt(o);return p&&m&&p===m&&(s+=9e3),p&&a.includes(p)&&(s+=800),l.includes("\u7EFC\u827A")&&p&&m&&(s+=1200),l.includes("\u7EFC\u827A")&&p&&!m&&d===null&&(s-=1500),s}function wWr(e,t,r){let n=[];for(let s of e){let i=iT(s,t);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;F.enableAnimeEpisodeFilter&&(a=a.filter(o=>!F.episodeTitleFilter.test(o.episodeTitle))),a=sT(a),a.forEach((o,c)=>{let u=`${r}/api/v2/comment/${encodeURIComponent(o.episodeId)}?format=xml`;n.push({anime:s,episode:o,index:c,commentUrl:u})})}return n}async function vSe(e,t){let{name:r,episode:n}=await CWr(e,t);if(!r)return tt([],200);if(F.titleMappingTable&&F.titleMappingTable.size>0){let f=F.titleMappingTable.get(r);f&&(R("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(e.toString()),i=new Map,a=IWr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let p=await(await wC(s,null,null,i)).json();if(o=Array.isArray(p?.animes)?p.animes:[],o.length){f!==r&&R("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return R("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),tt([],200);let c=RWr(t),u=wWr(o,i,c).map(f=>({...f,score:xWr(f.anime,f.episode,n,f.index)})).sort((f,h)=>h.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return R("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),tt(d,200)}var yWr,vWr,SWr,TWr,JRt=ie(()=>{Wt();Hr();Kt();$u();fs();ySe();yWr=[[/[\(\[(【]\s*(19|20)\d{2}\s*[\)\])】]/g," "],[/\b(19|20)\d{2}\b/g," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps)\b/gi," "],[/[_.-]+/g," "]],vWr=[[/\[[^\]]*\]/g," "],[/[【((][^】))]*[】))]/g," "],[/\.(mp4|mkv|avi|rmvb|ts|flv|mov|m4v)$/gi," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps|aac|flac|dts)\b/gi," "],[/[_~.-]+/g," "]],SWr=[{pattern:/[Ss]\d{1,2}\s*[Ee](\d{1,4})/,group:1},{pattern:/第\s*([零一二三四五六七八九十百零〇两\d]+)\s*[集期话章回段篇]/,group:1,chinese:!0},{pattern:/[Ee][Pp]?\.?\s*(\d{1,4})/,group:1},{pattern:/[Ee](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/Episode\s*(\d{1,4})/i,group:1},{pattern:/(?:正在)?播放[::]\s*(\d{1,4})/,group:1},{pattern:/(?:第\s*)?[零一二三四五六七八九十百\d]+\s*季\s*[||]\s*(\d{1,4})/,group:1},{pattern:/[\[【\((](\d{1,4})[\]】\))]/,group:1},{pattern:/@@@(\d{1,4})/,group:1},{pattern:/(?:^|[\s_\-])(\d{1,4})x(?:[\s_\-]|$)/i,group:1},{pattern:/\s(\d{1,4})\.(?:mp4|mkv|avi|mov|mp3|1080|720|4k|2k)/i,group:1},{pattern:/[_\-](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/\s(\d{1,4})\s/,group:1},{pattern:/\s(\d{1,4})$/,group:1},{pattern:/^(\d{1,4})\s/,group:1},{pattern:/(\d{1,4})(?:\s|$)$/,group:1}],TWr=[{pattern:/(\d{4})[.\-\/年](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}]});var ZRt,eCt=ie(()=>{ZRt=` /* \u57FA\u7840\u6837\u5F0F */ * { margin: 0; @@ -1356,7 +1693,7 @@ body { vertical-align: middle; margin-right: 5px; } -`});var Gyt,Yyt=ve(()=>{Gyt=` +`});var tCt,rCt=ie(()=>{tCt=` /* \u7EC4\u4EF6\u6837\u5F0F */ .nav-buttons { display: flex; @@ -1618,6 +1955,51 @@ body { +/* \u65E5\u5FD7\u8FC7\u6EE4\u4EA4\u4E92\u9762\u677F\u53CA\u6807\u7B7E\u6837\u5F0F */ +.log-filters-container { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin-bottom: 10px; +} + +.filter-btn { + background: transparent; + color: #888; + border: 1px solid #555; + padding: 4px 14px; + border-radius: 20px; + font-size: 12px; + cursor: pointer; + transition: all 0.3s; + text-transform: capitalize; +} + +.filter-btn:hover { + border-color: #999; + background: rgba(255, 255, 255, 0.05); +} + +.filter-btn.active { + background: rgba(191, 161, 255, 0.1); + color: #bfa1ff; + border-color: #bfa1ff; + text-shadow: 0.3px 0 0 currentColor, -0.3px 0 0 currentColor; +} + +.log-tag { + color: #bfa1ff; + font-weight: bold; + margin-right: 4px; + display: inline-block; +} + +.log-entry.error .log-tag { + color: #ffb74d; +} + + + /* \u8868\u5355\u5E2E\u52A9\u6587\u672C */ .form-help { font-size: 12px; @@ -2048,6 +2430,13 @@ body { .anime-title { margin: 8px 0 5px; font-size: 12px; + word-break: normal; /* \u4FDD\u6301\u6B63\u5E38\u7684\u5355\u8BCD\u6362\u884C\u89C4\u5219\uFF0C\u4F18\u5148\u5728\u7A7A\u683C\u5904\u65AD\u53E5\u4EE5\u4FDD\u8BC1\u53EF\u8BFB\u6027 */ + overflow-wrap: break-word; /* \u5F53\u957F\u5B57\u7B26\u4E32\uFF08\u5982\u591A\u6E90\u5408\u5E76\u540E\u7F00\uFF09\u8D85\u51FA\u5BB9\u5668\u65F6\uFF0C\u5141\u8BB8\u5728\u5176\u5185\u90E8\u5F3A\u5236\u6362\u884C */ + display: -webkit-box; /* \u542F\u7528 WebKit \u7279\u6709\u7684\u5F39\u6027\u4F38\u7F29\u76D2\u6A21\u578B */ + -webkit-line-clamp: 5; /* \u9650\u5236\u6587\u672C\u5757\u6700\u591A\u663E\u793A\u7684\u884C\u6570\u4E3A5\u884C */ + -webkit-box-orient: vertical; /* \u8BBE\u7F6E\u5F39\u6027\u76D2\u5B50\u7684\u5B50\u5143\u7D20\u5782\u76F4\u6392\u5217 */ + overflow: hidden; /* \u9690\u85CF\u8D85\u51FA\u5BB9\u5668\u8BBE\u5B9A\u9AD8\u5EA6\u8303\u56F4\u7684\u6587\u672C\u5185\u5BB9 */ + text-overflow: ellipsis; /* \u6587\u672C\u6EA2\u51FA\u65F6\u4F7F\u7528\u7701\u7565\u53F7(...)\u8FDB\u884C\u622A\u65AD\u5C55\u793A */ } .episode-list-container { @@ -2574,6 +2963,16 @@ body { color: #999; } +.danmu-result-error { + margin-bottom: 15px; + background: #fff8f8; + border: 1px solid #ffcdd2; + color: #c62828; + border-radius: 10px; + padding: 12px 15px; + font-size: 13px; +} + /* \u5F39\u5E55\u70ED\u529B\u56FE */ .danmu-heatmap-container { margin-bottom: 15px; @@ -2582,11 +2981,24 @@ body { padding: 15px; } -.danmu-heatmap-container h3 { +.danmu-section-title { margin: 0 0 10px; font-size: 15px; } +.danmu-section-title-spaced { + margin-top: 15px; +} + +.danmu-empty-text { + color: #999; +} + +.danmu-empty-list { + text-align: center; + padding: 20px; +} + .heatmap-bars { display: flex; align-items: flex-end; @@ -2595,14 +3007,84 @@ body { padding: 0 2px; } +.danmu-heatmap-interactive { + position: relative; + padding-top: 34px; + touch-action: pan-y; + user-select: none; +} + +.danmu-heatmap-tooltip { + position: absolute; + top: 0; + left: 0; + transform: translateX(-50%) translateY(-4px); + display: flex; + align-items: baseline; + gap: 4px; + padding: 5px 9px; + border-radius: 999px; + background: rgba(51, 51, 51, 0.92); + color: white; + font-size: 12px; + line-height: 1.2; + white-space: nowrap; + opacity: 0; + pointer-events: none; + transition: opacity 0.12s ease, transform 0.12s ease; + z-index: 2; +} + +.danmu-heatmap-tooltip.active { + opacity: 1; + transform: translateX(-50%) translateY(0); +} + +.danmu-heatmap-tooltip strong { + font-size: 15px; +} + +.danmu-heatmap-tooltip em { + color: rgba(255,255,255,0.72); + font-style: normal; + margin-left: 3px; +} + +.danmu-heatmap-indicator { + position: absolute; + top: 34px; + bottom: 0; + width: 2px; + transform: translateX(-50%); + border-radius: 999px; + background: rgba(102, 126, 234, 0.88); + box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.14); + opacity: 0; + pointer-events: none; + transition: opacity 0.12s ease; + z-index: 1; +} + +.danmu-heatmap-indicator.active { + opacity: 1; +} + .heatmap-bar { flex: 1; min-width: 3px; + height: var(--heatmap-height, 2%); + background: var(--heatmap-color, #667eea); border-radius: 2px 2px 0 0; - transition: opacity 0.2s; + transition: opacity 0.2s, transform 0.12s ease, box-shadow 0.12s ease; cursor: pointer; } +.heatmap-bar.active { + opacity: 0.95; + transform: translateY(-2px); + box-shadow: 0 0 0 2px rgba(102, 126, 234, 0.24); +} + .heatmap-bar:hover { opacity: 0.8; } @@ -2618,12 +3100,27 @@ body { /* \u5F39\u5E55\u8FC7\u6EE4\u6807\u7B7E */ .danmu-filter-tabs { display: flex; + flex-wrap: nowrap; gap: 8px; margin-bottom: 12px; + overflow-x: auto; + overflow-y: hidden; + padding-bottom: 2px; + -webkit-overflow-scrolling: touch; + scrollbar-width: none; +} + +.danmu-filter-tabs::-webkit-scrollbar { + display: none; } .danmu-filter-tab { - padding: 6px 16px; + flex: 0 0 auto; + display: inline-flex; + align-items: center; + gap: 6px; + white-space: nowrap; + padding: 6px 12px; background: #f0f0f0; border: 1px solid #ddd; border-radius: 15px; @@ -2643,6 +3140,25 @@ body { border-color: #667eea; } +.danmu-filter-count { + display: inline-flex; + align-items: center; + justify-content: center; + min-width: 20px; + height: 18px; + padding: 0 6px; + border-radius: 999px; + background: rgba(0,0,0,0.08); + color: inherit; + font-size: 11px; + font-weight: 600; + line-height: 1; +} + +.danmu-filter-tab.active .danmu-filter-count { + background: rgba(255,255,255,0.22); +} + /* \u5F39\u5E55\u5217\u8868 */ .danmu-list-area { background: #f8f9fa; @@ -2695,6 +3211,7 @@ body { border-radius: 50%; flex-shrink: 0; border: 1px solid rgba(0,0,0,0.1); + background: var(--danmu-color-dot, #fff); } .danmu-mode-tag { @@ -2722,6 +3239,7 @@ body { .danmu-text { flex: 1; + min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; @@ -2729,9 +3247,45 @@ body { } .danmu-load-more { + display: none; + width: 100%; margin-top: 10px; } +.jump-to-episode { + margin-top: 15px; + margin-bottom: 15px; + padding: 10px; + background: #f8f9fa; + border-radius: 12px; + display: flex; + align-items: center; + gap: 10px; + flex-wrap: wrap; +} + +.jump-episode-input { + padding: 8px; + width: 90px; + border: 1px solid #ccc; + border-radius: 8px; +} + +.jump-episode-btn { + margin-left: 5px; + border-radius: 8px; +} + +.jump-episode-total { + margin-left: 5px; + color: #666; + font-size: 14px; +} + +.episode-item.episode-item-highlight { + background: #fff3cd; +} + /* \u8FD4\u56DE\u6309\u94AE */ .btn-back { padding: 8px 16px; @@ -2807,6 +3361,12 @@ body { .heatmap-bars { height: 70px; + gap: 1px; + padding: 0 1px; + } + + .heatmap-bar { + min-width: 2px; } } @@ -3083,7 +3643,204 @@ body { gap: 8px; justify-content: flex-end; } -`});var Wyt,Xyt=ve(()=>{Wyt=` + +/* \u6700\u8FD1\u6570\u636E\u4E0Eanimes\u7F13\u5B58\u9762\u677F\u6837\u5F0F */ + +/* \u9762\u677F\u5BB9\u5668 */ +.recent-data-panel { + display: none; + max-height: 350px; + overflow-y: auto; +} + +.anime-cache-list { + display: flex; + flex-direction: column; + gap: 8px; +} + +.anime-cache-card { + background: #fff; + border-radius: 6px; + border: 1px solid #eaeaea; + box-shadow: 0 1px 3px rgba(0,0,0,0.04); + overflow: hidden; +} + +.anime-cache-card-body { + display: flex; + gap: 12px; + align-items: center; + padding: 10px; +} + +.anime-cache-cover { + width: 44px; + height: 60px; + border-radius: 4px; + background-color: #e2e3e5; + background-size: cover; + background-position: center; + flex-shrink: 0; + box-shadow: 0 1px 4px rgba(0,0,0,0.15); +} + +.anime-cache-info, +.anime-cache-child-info { + flex: 1; + min-width: 0; +} + +.anime-cache-title { + font-weight: 600; + font-size: 13px; + line-height: 1.4; + margin-bottom: 4px; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + overflow: hidden; + word-break: break-all; +} + +.anime-cache-meta { + color: #888; + font-size: 11px; +} + +.anime-cache-actions, +.anime-cache-child-actions { + display: flex; + flex-direction: column; + flex-shrink: 0; +} + +.anime-cache-actions { gap: 6px; } + +.btn-xs { + padding: 2px 6px; + font-size: 11px; +} + +/* \u5361\u7247\u5E95\u90E8\u6807\u7B7E\u5207\u6362\u680F(Tab \u98CE\u683C) */ +.anime-cache-footer { + display: flex; + gap: 8px; + padding: 8px 10px; + background: #fdfdfd; + border-top: 1px solid #f0f0f0; +} + +.cache-badge { + font-size: 11px; + padding: 4px 10px; + border-radius: 12px; + cursor: pointer; + user-select: none; + display: inline-flex; + align-items: center; + font-weight: 500; + transition: all 0.2s; +} + +.cache-badge.badge-sources { background: #e3f2fd; color: #0d47a1; border: 1px solid #bbdefb; } +.cache-badge.badge-episodes { background: #e8f5e9; color: #1b5e20; border: 1px solid #c8e6c9; } +.cache-badge.active { filter: brightness(0.9); box-shadow: inset 0 1px 3px rgba(0,0,0,0.1); } + +/* \u6298\u53E0\u5217\u8868\u5BB9\u5668 */ +.merged-children-container, +.episodes-list-container { + display: none; + flex-direction: column; + gap: 6px; + padding: 8px 10px; + background: #fafafa; + border-top: 1px solid #f0f0f0; +} + +.episodes-list-container { + max-height: 200px; + overflow-y: auto; +} + +/* \u5B50\u8282\u70B9\u5361\u7247 */ +.anime-cache-child-item { + display: flex; + flex-direction: column; + background: #fff; + padding: 8px; + border-radius: 4px; + border: 1px dashed #ccc; +} + +.anime-cache-child-main { + display: flex; + gap: 10px; + align-items: center; + width: 100%; +} + +.anime-cache-child-cover { + width: 33px; + height: 45px; + border-radius: 3px; + background-color: #e2e3e5; + background-size: cover; + background-position: center; + flex-shrink: 0; + box-shadow: 0 1px 3px rgba(0,0,0,0.1); +} + +.anime-cache-child-title { + font-weight: 500; + font-size: 12px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.anime-cache-child-actions { gap: 4px; } + +/* \u5408\u5E76\u6620\u5C04\u8BE6\u60C5 */ +.child-mapping-toggle { + font-size: 10px; + color: #666; + cursor: pointer; + margin-top: 8px; + padding-top: 6px; + border-top: 1px dashed #eee; + text-align: center; +} + +.child-mapping-toggle:hover { + color: #0066cc; +} + +.child-mapping-container { + display: none; + flex-direction: column; + gap: 4px; + margin-top: 6px; + background: #fdfdfd; + padding: 6px; + border-radius: 4px; + border: 1px solid #f0f0f0; + max-height: 150px; + overflow-y: auto; +} + +.mapping-row { + font-size: 10px; + display: flex; + gap: 6px; + align-items: flex-start; +} + +.mapping-status { flex-shrink: 0; font-weight: bold; } +.mapping-status.success { color: #28a745; } +.mapping-status.warning { color: #d39e00; } +.mapping-text { color: #555; word-break: break-all; } +`});var nCt,sCt=ie(()=>{nCt=` /* \u8868\u5355\u6837\u5F0F */ .form-group { margin-bottom: 15px; @@ -3437,7 +4194,7 @@ input:checked + .slider:before { .map-item-template { display: none; } -`});var Jyt,Zyt=ve(()=>{Jyt=` +`});var iCt,aCt=ie(()=>{iCt=` /* \u54CD\u5E94\u5F0F\u6837\u5F0F */ @media (max-width: 768px) { .logo { @@ -3503,7 +4260,7 @@ input:checked + .slider:before { flex: 1; } } -`});var e_t,t_t=ve(()=>{e_t=` +`});var oCt,cCt=ie(()=>{oCt=` // \u81EA\u5B9A\u4E49\u5F39\u7A97\u7EC4\u4EF6 function createCustomAlert() { // \u68C0\u67E5\u662F\u5426\u5DF2\u5B58\u5728\u81EA\u5B9A\u4E49\u5F39\u7A97\u5143\u7D20 @@ -4124,17 +4881,18 @@ function escapeHtml(text) { // \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316 init(); -`});var r_t,n_t=ve(()=>{r_t=` +`});var uCt,lCt=ie(()=>{uCt=` // \u6E32\u67D3\u914D\u7F6E\u9884\u89C8 function renderPreview() { const preview = document.getElementById('preview-area'); const proxyConfigContainer = document.getElementById('proxy-config-container'); - // \u4ECE admin \u914D\u7F6E\u63A5\u53E3\u83B7\u53D6\u6700\u7EC8\u5408\u5E76\u540E\u7684\u771F\u5B9E\u914D\u7F6E\u6570\u636E - fetch(buildApiUrl('/api/config', true)) + // \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u914D\u7F6E\u6570\u636E + fetch(buildApiUrl('/api/config')) .then(response => { const contentType = response.headers.get("content-type"); if (contentType && contentType.indexOf("application/json") === -1) { + // \u8FD4\u56DE\u6587\u672C\u4EE5\u4FBF\u540E\u7EED\u5904\u7406\uFF08\u4F8B\u5982\u663E\u793AHTML\u9519\u8BEF\u7684\u524D\u51E0\u4E2A\u5B57\u7B26\uFF09 return response.text().then(text => { throw new Error('Expected JSON, got ' + contentType + '. Content: ' + text.substring(0, 50) + '...'); }); @@ -4145,26 +4903,23 @@ function renderPreview() { return response.json(); }) .then(config => { + // \u6210\u529F\u52A0\u8F7D\uFF0C\u9690\u85CF\u53CD\u4EE3\u914D\u7F6E\u6846 if(proxyConfigContainer) { proxyConfigContainer.style.display = 'none'; } - const envs = config.envs || {}; + // \u4F7F\u7528\u4ECEAPI\u83B7\u53D6\u7684\u5206\u7C7B\u73AF\u5883\u53D8\u91CF const categorizedVars = config.categorizedEnvVars || {}; + + // \u6E32\u67D3\u9884\u89C8\u5185\u5BB9 let html = ''; - + Object.keys(categorizedVars).forEach(category => { const items = categorizedVars[category]; if (items && items.length > 0) { html += \`

\${getCategoryName(category)}

\`; items.forEach(item => { - const effectiveValue = Object.prototype.hasOwnProperty.call(envs, item.key) - ? envs[item.key] - : item.value; - const displayValue = effectiveValue === undefined || effectiveValue === null - ? '' - : (typeof effectiveValue === 'string' ? effectiveValue : JSON.stringify(effectiveValue)); - const escapedValue = escapeHtml(displayValue); + const escapedValue = escapeHtml(item.value); html += \`
@@ -4183,8 +4938,10 @@ function renderPreview() { .catch(error => { console.error('Failed to load config for preview:', error); + // \u663E\u793A\u53CD\u4EE3\u914D\u7F6E\u6846 if(proxyConfigContainer) { proxyConfigContainer.style.display = 'block'; + // \u5982\u679C\u6709\u5DF2\u4FDD\u5B58\u7684URL\uFF0C\u586B\u5145\u5B83 const savedUrl = localStorage.getItem('logvar_api_base_url'); if(savedUrl) { document.getElementById('custom-base-url').value = savedUrl; @@ -4208,7 +4965,62 @@ function getCategoryName(category) { }; return names[category] || category; } -`});var i_t,s_t=ve(()=>{i_t=` +`});var dCt,fCt=ie(()=>{dCt=` +// \u65E5\u5FD7\u5168\u5C40\u8FC7\u6EE4\u72B6\u6001 +let currentLogFilter = 'ALL'; + +// \u83B7\u53D6\u65E5\u5FD7\u7684\u4E25\u683C\u5F52\u5C5E\u5206\u7C7B +function getLogCategory(message) { + // \u5339\u914D\u884C\u9996\u7684\u8FDE\u7EED\u65B9\u62EC\u53F7\u6807\u7B7E (\u9700\u53CC\u91CD\u8F6C\u4E49) + const prefixMatch = message.match(/^(?:\\s*\\[[^\\]]+\\])+/); + if (!prefixMatch) { + // \u65E0\u6807\u7B7E\u884C\u4F5C\u4E3A\u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u884C\u7684\u5206\u7C7B + return '_inherit_'; + } + + const tags = prefixMatch[0].match(/\\[([^\\]]+)\\]/g).map(t => t.replace(/[\\[\\]]/g, '').trim()); + + // \u5F52\u7C7B\u5408\u5E76\u5DE5\u5177\u65E5\u5FD7 + // \u53EA\u8981\u884C\u9996\u5305\u542B Merge\uFF0C\u6216\u8005\u5305\u542B\u5408\u5E76\u6620\u5C04\u72EC\u6709\u7684\u5B50\u6807\u7B7E\uFF0C\u5F3A\u884C\u5C06\u5176\u6536\u675F\u81F3 Merge \u4E13\u5C5E\u5206\u7C7B + if (tags.some(t => t.toLowerCase() === 'merge' || ['\u5339\u914D', '\u843D\u5355', '\u8865\u5168', '\u5408\u96C6', '\u7565\u8FC7', 'Merge-Check'].some(key => t.includes(key)))) { + return 'merge'; + } + + // \u6392\u9664\u65F6\u95F4\u6233\u548C\u5E95\u5C42\u65E0\u610F\u4E49\u6807\u7B7E\uFF0C\u6293\u53D6\u771F\u6B63\u7684\u4E1A\u52A1\u6E90 + const validTags = tags.filter(t => + !/^\\d{4}-\\d{2}-\\d{2}[T ]/.test(t) && // \u6392\u9664 ISO \u65F6\u95F4\u6233\u683C\u5F0F\uFF08YYYY-MM-DDTHH:MM:SS\uFF09 + !/^\\d{2}:\\d{2}(:\\d{2})?$/.test(t) && // \u6392\u9664 HH:MM:SS \u65F6\u95F4\u683C\u5F0F\uFF08JSON \u7EED\u884C\uFF09 + !t.includes('08:00') && + t !== '\u8BF7\u6C42\u6A21\u62DF' && + t !== '\u7F51\u7EDC\u8BF7\u6C42' + ); + + if (validTags.length === 0) { + // \u5168\u90E8\u6807\u7B7E\u88AB\u65F6\u95F4\u6233\u7B49\u8FC7\u6EE4\u89C4\u5219\u6392\u9664\uFF0C\u4F5C\u4E3A\u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u884C\u7684\u5206\u7C7B + return '_inherit_'; + } + + // \u7EDF\u4E00\u8F6C\u6362\u4E3A\u5C0F\u5199\uFF0C\u786E\u4FDD\u5927\u5C0F\u5199\u53D8\u4F53(\u5982 Bahamut \u548C bahamut)\u6536\u675F\u81F3\u540C\u4E00\u5185\u90E8\u6807\u8BC6\u7B26 + let category = validTags[0].toLowerCase(); + + // \u6807\u7B7E\u5F52\u4E00\u5316\uFF1A\u5C06\u53D8\u4F53\u6807\u7B7E\u6620\u5C04\u5230\u6807\u51C6\u5206\u7C7B + const normalizationMap = { + 'vod fastest mode': 'vod', + 'custom source': 'custom', + 'bilibili-proxy': 'bilibili', + 'tmdb-source': 'tmdb', + 'path check': 'system', + 'path fix': 'system', + 'base': 'system', + 'fongmi': 'system', + }; + if (normalizationMap[category]) { + category = normalizationMap[category]; + } + + return category; +} + // \u65E5\u5FD7\u76F8\u5173 function addLog(message, type = 'info') { const timestamp = new Date().toLocaleTimeString(); @@ -4219,12 +5031,94 @@ function addLog(message, type = 'info') { function renderLogs() { const container = document.getElementById('log-container'); - container.innerHTML = logs.map(log => - \`
[\${log.timestamp}] \${log.message}
\` - ).join(''); + const filterContainer = document.getElementById('log-filters') || createFilterContainer(); + + let filteredLogs = logs; + if (currentLogFilter !== 'ALL') { + // \u91C7\u7528\u4E25\u683C\u5F52\u5C5E\u6821\u9A8C\uFF0C\u540C\u65F6\u652F\u6301\u7EED\u884C\u4E0A\u4E0B\u6587\u7EE7\u627F + let lastCategory = 'system'; + filteredLogs = logs.filter(log => { + let category = getLogCategory(log.message); + if (category === '_inherit_') { + // \u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u4E2A\u660E\u786E\u5206\u7C7B\u884C + category = lastCategory; + } else { + lastCategory = category; + } + return category === currentLogFilter; + }); + } + + container.innerHTML = filteredLogs.map(log => { + let highlightedMessage = log.message; + + // \u884C\u9996\u8FDE\u7EED\u6807\u7B7E\u9AD8\u4EAE (\u9700\u53CC\u91CD\u8F6C\u4E49) + const prefixMatch = log.message.match(/^(?:\\s*\\[[^\\]]+\\])+/); + if (prefixMatch) { + const prefix = prefixMatch[0]; + const rest = log.message.slice(prefix.length); + const coloredPrefix = prefix.replace(/\\[([^\\]]+)\\]/g, '[$1]'); + highlightedMessage = coloredPrefix + rest; + } + + return \`
[\${log.timestamp}] \${highlightedMessage}
\`; + }).join(''); container.scrollTop = container.scrollHeight; + + updateFilterUI(); } +function createFilterContainer() { + const controls = document.querySelector('.log-controls'); + const filterDiv = document.createElement('div'); + filterDiv.id = 'log-filters'; + filterDiv.className = 'log-filters-container'; + controls.parentNode.insertBefore(filterDiv, document.getElementById('log-container')); + return filterDiv; +} + +// \u6807\u7B7E\u663E\u793A\u987A\u5E8F\uFF1AALL \u2192 \u7CFB\u7EDF \u2192 \u5DE5\u5177 \u2192 \u6E90\uFF0C\u7EC4\u5185\u5B57\u6BCD\u5E8F +const tagGroupOrder = [ + ['system', 'ai'], + ['utils', 'cache', 'merge'], + ['360kan', 'aiyifan', 'animeko', 'bahamut', 'bilibili', 'custom', 'dandan', 'douban', 'hanjutv', 'iqiyi', 'leshi', 'maiduidui', 'mango', 'migu', 'other', 'renren', 'sohu', 'tencent', 'tmdb', 'vod', 'xigua', 'youku'], +]; +const tagOrderMap = {}; +tagGroupOrder.forEach((group, gi) => group.forEach((tag, ti) => tagOrderMap[tag] = gi * 1000 + ti)); + +function updateFilterUI() { + const filterContainer = document.getElementById('log-filters'); + let html = \`\`; + + const currentTags = new Set(); + let lastCategory = 'system'; + logs.forEach(log => { + let category = getLogCategory(log.message); + // \u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u4E2A\u660E\u786E\u5206\u7C7B\u884C + if (category === '_inherit_') { + category = lastCategory; + } else { + lastCategory = category; + } + // \u6240\u6709\u5206\u7C7B\u6807\u7B7E\u5747\u751F\u6210\u7B5B\u9009\u6309\u94AE + currentTags.add(category); + }); + + [...currentTags].sort((a, b) => { + const ai = tagOrderMap[a] ?? 99999, bi = tagOrderMap[b] ?? 99999; + return ai !== bi ? ai - bi : a.localeCompare(b); + }).forEach(tag => { + html += \`\`; + }); + + filterContainer.innerHTML = html; +} + +window.setLogFilter = function(tag) { + currentLogFilter = tag; + renderLogs(); +}; + // \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E async function fetchRealLogs() { try { @@ -4328,7 +5222,7 @@ function highlightJSON(obj) { return '' + match + ''; }); } -`});var a_t,o_t=ve(()=>{a_t=` +`});var hCt,pCt=ie(()=>{hCt=` // API \u914D\u7F6E const apiConfigs = { searchAnime: { @@ -4396,7 +5290,16 @@ let danmuTestState = { pageSize: 100, currentEpisodeId: null, currentTitle: '', - currentDuration: 0 + currentDuration: 0, + currentCallTrace: null, + currentManualSearchCallTraceBase: null, + currentManualEpisodeCallTraceBase: null, + nextDanmuRequestId: 0, + activeDanmuRequestId: 0, + nextDanmuFlowRequestId: 0, + activeDanmuFlowRequestId: 0, + nextManualBangumiRequestId: 0, + activeManualBangumiRequestId: 0 }; // \u521D\u59CB\u5316\u63A5\u53E3\u8C03\u8BD5\u754C\u9762 @@ -4894,6 +5797,152 @@ function backBtnHtml(text, onclick) { return ''; } +function inlineJsString(value) { + return escapeHtml(JSON.stringify(String(value || ''))); +} + +function createDanmuCallTrace(mode, inputText) { + return { + mode: mode || 'manual', + inputText: inputText || '', + steps: [], + startedAt: performance.now() + }; +} + +function cloneDanmuCallTrace(trace) { + if (!trace) return null; + return { + mode: trace.mode, + inputText: trace.inputText, + startedAt: performance.now(), + steps: (trace.steps || []).map(step => Object.assign({}, step)) + }; +} + +function createDanmuCallStep(step) { + return Object.assign({ + name: '', + method: 'GET', + url: '', + params: '', + result: '', + elapsed: 0, + status: 'success' + }, step); +} + +function addDanmuCallStep(trace, step) { + if (!trace) return; + trace.steps.push(createDanmuCallStep(step)); +} + +function finishDanmuCallStep(trace, startedAt, step) { + addDanmuCallStep(trace, Object.assign({}, step, { + elapsed: performance.now() - startedAt + })); +} + +function finishDanmuCallFailure(trace, startedAt, step, error) { + const message = error && error.message ? error.message : String(error || '\u672A\u77E5\u9519\u8BEF'); + finishDanmuCallStep(trace, startedAt, Object.assign({ + status: 'error', + result: '\u5931\u8D25\uFF1A' + message + }, step)); +} + +function finishDanmuCallEmpty(trace, startedAt, step, message) { + finishDanmuCallStep(trace, startedAt, Object.assign({ + status: 'empty', + result: message || '\u65E0\u7ED3\u679C' + }, step)); +} + +function safeDanmuApiPath(path) { + return String(path || '').replace(new RegExp('^/[^/]+/api/'), '//api/'); +} + +function renderDanmuCallTrace(trace) { + return ''; +} + +function getDanmuCallTraceTotalMs(trace) { + if (!trace || !Array.isArray(trace.steps) || trace.steps.length === 0) return 0; + return trace.steps.reduce((sum, step) => sum + (Number(step.elapsed) || 0), 0); +} + +function renderDanmuCallFailure(trace, title, message, source) { + let html = '
'; + if (source === 'manual-episode') { + html += backBtnHtml('\u8FD4\u56DE\u5217\u8868', 'backToEpisodeList()'); + } else if (source === 'manual-anime') { + html += backBtnHtml('\u8FD4\u56DE\u641C\u7D22\u7ED3\u679C', 'backToManualSearch()'); + } + html += '
'; + html += '
' + escapeHtml(title || '\u8C03\u7528\u5931\u8D25') + '\uFF1A' + escapeHtml(message || '\u8BF7\u6C42\u5931\u8D25') + '
'; + html += renderDanmuCallTrace(trace); + return html; +} + +function showDanmuCallTraceFailure(trace, title, message, source) { + const resultArea = document.getElementById('danmu-result-area'); + if (!resultArea) return; + resultArea.innerHTML = renderDanmuCallFailure(trace, title, message, source); + resultArea.style.display = 'block'; +} + +function getDanmuCallTraceTotalSeconds(trace, fallbackSeconds) { + const totalMs = getDanmuCallTraceTotalMs(trace); + if (totalMs > 0) return (totalMs / 1000).toFixed(2); + return fallbackSeconds || '0.00'; +} + +function formatCallElapsed(ms) { + if (!Number.isFinite(ms)) return '--'; + return ms >= 1000 ? (ms / 1000).toFixed(2) + 's' : Math.round(ms) + 'ms'; +} + +function startDanmuFlowRequest() { + const requestId = ++danmuTestState.nextDanmuFlowRequestId; + danmuTestState.activeDanmuFlowRequestId = requestId; + danmuTestState.activeManualBangumiRequestId = 0; + invalidateActiveDanmuRequest(); + return requestId; +} + +function isCurrentDanmuFlowRequest(requestId) { + return danmuTestState.activeDanmuFlowRequestId === requestId; +} + +function startManualBangumiRequest() { + const requestId = ++danmuTestState.nextManualBangumiRequestId; + danmuTestState.activeManualBangumiRequestId = requestId; + danmuTestState.activeDanmuFlowRequestId = 0; + invalidateActiveDanmuRequest(); + return requestId; +} + +function isCurrentManualBangumiRequest(requestId) { + return danmuTestState.activeManualBangumiRequestId === requestId; +} + +function invalidateActiveDanmuRequest() { + danmuTestState.activeDanmuRequestId = 0; +} + +function setDanmuFlowButtonLoading(btn, requestId, loading) { + if (!btn) return; + if (loading) { + btn._danmuFlowRequestId = requestId; + setBtnLoading(btn, true); + return; + } + if (btn._danmuFlowRequestId === requestId) { + setBtnLoading(btn, false); + btn._danmuFlowRequestId = 0; + } +} + // ===================== // \u81EA\u52A8\u5339\u914D\u6D4B\u8BD5 // ===================== @@ -4901,12 +5950,19 @@ async function autoMatchTest() { const fileName = document.getElementById('auto-match-filename').value.trim(); if (!fileName) { customAlert('\u8BF7\u8F93\u5165\u6587\u4EF6\u540D'); return; } + const flowRequestId = startDanmuFlowRequest(); const btn = document.getElementById('auto-match-btn'); - setBtnLoading(btn, true); + setDanmuFlowButtonLoading(btn, flowRequestId, true); document.getElementById('danmu-result-area').style.display = 'none'; addLog('\u81EA\u52A8\u5339\u914D\u6D4B\u8BD5: ' + fileName, 'info'); + const trace = createDanmuCallTrace('auto', fileName); + danmuTestState.currentCallTrace = trace; + danmuTestState.currentManualSearchCallTraceBase = null; + danmuTestState.currentManualEpisodeCallTraceBase = null; + let matchStartedAt = 0; try { + matchStartedAt = performance.now(); const resp = await fetch(buildApiUrl('/api/v2/match'), { method: 'POST', headers: { 'Content-Type': 'application/json' }, @@ -4914,23 +5970,46 @@ async function autoMatchTest() { }); if (!resp.ok) throw new Error('HTTP ' + resp.status); const data = await resp.json(); + if (!isCurrentDanmuFlowRequest(flowRequestId)) return; if (data.isMatched && data.matches && data.matches.length > 0) { const best = data.matches[0]; const title = (best.animeTitle || '') + ' ' + (best.episodeTitle || ''); + finishDanmuCallStep(trace, matchStartedAt, { + name: '\u5339\u914D', + method: 'POST', + url: '/api/v2/match', + params: '\u6587\u4EF6\u540D\uFF1A' + fileName, + result: '\u547D\u4E2D ' + data.matches.length + ' \u4E2A\u7ED3\u679C\uFF0CepisodeId: ' + best.episodeId + }); addLog('\u81EA\u52A8\u5339\u914D\u547D\u4E2D: ' + title + ' (\u5171' + data.matches.length + '\u4E2A\u7ED3\u679C\uFF0C\u53D6\u7B2C1\u4E2A)', 'success'); - setBtnLoading(btn, false); - fetchDanmuForTest(best.episodeId, title, 'auto'); + setDanmuFlowButtonLoading(btn, flowRequestId, false); + fetchDanmuForTest(best.episodeId, title, 'auto', trace); return; } else { + finishDanmuCallEmpty(trace, matchStartedAt, { + name: '\u5339\u914D', + method: 'POST', + url: '/api/v2/match', + params: '\u6587\u4EF6\u540D\uFF1A' + fileName + }, '\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C'); customAlert('\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C'); addLog('\u81EA\u52A8\u5339\u914D\u65E0\u7ED3\u679C', 'warn'); + showDanmuCallTraceFailure(trace, '\u81EA\u52A8\u5339\u914D\u65E0\u7ED3\u679C', '\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C', 'auto'); } } catch (e) { + if (!isCurrentDanmuFlowRequest(flowRequestId)) return; + finishDanmuCallFailure(trace, matchStartedAt || performance.now(), { + name: '\u5339\u914D', + method: 'POST', + url: '/api/v2/match', + params: '\u6587\u4EF6\u540D\uFF1A' + fileName + }, e); customAlert('\u5339\u914D\u5931\u8D25: ' + e.message); addLog('\u81EA\u52A8\u5339\u914D\u5931\u8D25: ' + e.message, 'error'); + showDanmuCallTraceFailure(trace, '\u81EA\u52A8\u5339\u914D\u5931\u8D25', e.message, 'auto'); } finally { - setBtnLoading(btn, false); + setDanmuFlowButtonLoading(btn, flowRequestId, false); } } @@ -4941,39 +6020,74 @@ async function manualSearchAnime() { const keyword = document.getElementById('manual-search-keyword').value.trim(); if (!keyword) { customAlert('\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57'); return; } + const flowRequestId = startDanmuFlowRequest(); const btn = document.getElementById('manual-search-btn'); - setBtnLoading(btn, true); + setDanmuFlowButtonLoading(btn, flowRequestId, true); document.getElementById('manual-anime-list').style.display = 'none'; document.getElementById('manual-episode-list').style.display = 'none'; document.getElementById('danmu-result-area').style.display = 'none'; addLog('\u624B\u52A8\u641C\u7D22: ' + keyword, 'info'); + const trace = createDanmuCallTrace('manual', keyword); + danmuTestState.currentCallTrace = trace; + danmuTestState.currentManualSearchCallTraceBase = null; + danmuTestState.currentManualEpisodeCallTraceBase = null; + let searchStartedAt = 0; + let searchUrl = ''; try { - const resp = await fetch(buildApiUrl('/api/v2/search/anime?keyword=' + encodeURIComponent(keyword))); + searchUrl = '/api/v2/search/anime?keyword=' + encodeURIComponent(keyword); + searchStartedAt = performance.now(); + const resp = await fetch(buildApiUrl(searchUrl)); if (!resp.ok) throw new Error('HTTP ' + resp.status); const data = await resp.json(); + if (!isCurrentDanmuFlowRequest(flowRequestId)) return; if (data.success && data.animes && data.animes.length > 0) { + finishDanmuCallStep(trace, searchStartedAt, { + name: '\u641C\u7D22', + method: 'GET', + url: searchUrl, + params: '\u5173\u952E\u8BCD\uFF1A' + keyword, + result: '\u627E\u5230 ' + data.animes.length + ' \u4E2A\u52A8\u6F2B' + }); + danmuTestState.currentManualSearchCallTraceBase = cloneDanmuCallTrace(trace); displayManualAnimeList(data.animes); addLog('\u641C\u7D22\u5230 ' + data.animes.length + ' \u4E2A\u52A8\u6F2B', 'success'); } else { + finishDanmuCallEmpty(trace, searchStartedAt, { + name: '\u641C\u7D22', + method: 'GET', + url: searchUrl, + params: '\u5173\u952E\u8BCD\uFF1A' + keyword + }, '\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B'); customAlert('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B'); addLog('\u641C\u7D22\u65E0\u7ED3\u679C', 'warn'); + showDanmuCallTraceFailure(trace, '\u641C\u7D22\u65E0\u7ED3\u679C', '\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B', 'manual-search'); } } catch (e) { + if (!isCurrentDanmuFlowRequest(flowRequestId)) return; + finishDanmuCallFailure(trace, searchStartedAt || performance.now(), { + name: '\u641C\u7D22', + method: 'GET', + url: searchUrl || '/api/v2/search/anime', + params: '\u5173\u952E\u8BCD\uFF1A' + keyword + }, e); customAlert('\u641C\u7D22\u5931\u8D25: ' + e.message); addLog('\u641C\u7D22\u5931\u8D25: ' + e.message, 'error'); + showDanmuCallTraceFailure(trace, '\u641C\u7D22\u5931\u8D25', e.message, 'manual-search'); } finally { - setBtnLoading(btn, false); + setDanmuFlowButtonLoading(btn, flowRequestId, false); } } function displayManualAnimeList(animes) { const container = document.getElementById('manual-anime-list'); - let html = '

\u641C\u7D22\u7ED3\u679C

'; + let html = '

\u641C\u7D22\u7ED3\u679C

'; animes.forEach(anime => { - const img = anime.imageUrl || 'https://placehold.co/150x200?text=No+Image'; - html += '
'; + const animeId = Number.parseInt(anime.animeId, 10); + if (!Number.isFinite(animeId)) return; + const img = escapeHtml(anime.imageUrl || 'https://placehold.co/150x200?text=No+Image'); + html += '
'; html += '' + escapeHtml(anime.animeTitle) + ''; html += '

' + escapeHtml(anime.animeTitle) + ' - \u5171' + (anime.episodeCount || '?') + '\u96C6

'; html += '
'; @@ -4984,26 +6098,59 @@ function displayManualAnimeList(animes) { } async function manualGetBangumi(animeId) { + const detailRequestId = startManualBangumiRequest(); + const requestTrace = danmuTestState.currentManualSearchCallTraceBase + ? cloneDanmuCallTrace(danmuTestState.currentManualSearchCallTraceBase) + : createDanmuCallTrace('manual', String(animeId || '')); + danmuTestState.currentCallTrace = requestTrace; addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5: ' + animeId, 'info'); // \u9690\u85CF\u641C\u7D22\u7ED3\u679C\uFF0C\u663E\u793A\u5267\u96C6\u5217\u8868\u533A\u57DF showDanmuView(['manual-episode-list'], ['manual-anime-list', 'danmu-result-area']); + let bangumiStartedAt = 0; + const bangumiUrl = '/api/v2/bangumi/' + animeId; try { - const resp = await fetch(buildApiUrl('/api/v2/bangumi/' + animeId)); + bangumiStartedAt = performance.now(); + const resp = await fetch(buildApiUrl(bangumiUrl)); if (!resp.ok) throw new Error('HTTP ' + resp.status); const data = await resp.json(); + if (!isCurrentManualBangumiRequest(detailRequestId)) return; - if (data.success && data.bangumi && data.bangumi.episodes) { - displayManualEpisodeList(data.bangumi.animeTitle, data.bangumi.episodes); - addLog('\u83B7\u53D6\u5230 ' + data.bangumi.episodes.length + ' \u4E2A\u5267\u96C6', 'success'); + const episodes = data && data.bangumi && Array.isArray(data.bangumi.episodes) ? data.bangumi.episodes : []; + if (data.success && data.bangumi && episodes.length > 0) { + finishDanmuCallStep(requestTrace, bangumiStartedAt, { + name: '\u756A\u5267\u8BE6\u60C5', + method: 'GET', + url: bangumiUrl, + params: 'animeId: ' + animeId, + result: '\u83B7\u53D6\u5230 ' + episodes.length + ' \u4E2A\u5267\u96C6' + }); + danmuTestState.currentManualEpisodeCallTraceBase = cloneDanmuCallTrace(requestTrace); + displayManualEpisodeList(data.bangumi.animeTitle, episodes); + addLog('\u83B7\u53D6\u5230 ' + episodes.length + ' \u4E2A\u5267\u96C6', 'success'); } else { + finishDanmuCallEmpty(requestTrace, bangumiStartedAt, { + name: '\u756A\u5267\u8BE6\u60C5', + method: 'GET', + url: bangumiUrl, + params: 'animeId: ' + animeId + }, '\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F'); customAlert('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F'); + showDanmuCallTraceFailure(requestTrace, '\u756A\u5267\u8BE6\u60C5\u65E0\u5267\u96C6', '\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F', 'manual-anime'); // \u6062\u590D\u641C\u7D22\u7ED3\u679C showDanmuView(['manual-anime-list'], ['manual-episode-list']); } } catch (e) { + if (!isCurrentManualBangumiRequest(detailRequestId)) return; + finishDanmuCallFailure(requestTrace, bangumiStartedAt || performance.now(), { + name: '\u756A\u5267\u8BE6\u60C5', + method: 'GET', + url: bangumiUrl, + params: 'animeId: ' + animeId + }, e); customAlert('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + e.message); addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + e.message, 'error'); + showDanmuCallTraceFailure(requestTrace, '\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25', e.message, 'manual-anime'); showDanmuView(['manual-anime-list'], ['manual-episode-list']); } } @@ -5011,25 +6158,28 @@ async function manualGetBangumi(animeId) { function displayManualEpisodeList(animeTitle, episodes) { const container = document.getElementById('manual-episode-list'); let html = backBtnHtml('\u8FD4\u56DE\u641C\u7D22\u7ED3\u679C', 'backToManualSearch()'); - html += '

\u5267\u96C6\u5217\u8868

'; + html += '

\u5267\u96C6\u5217\u8868

'; html += '

' + escapeHtml(animeTitle) + '

'; // \u6DFB\u52A0\u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\u7684\u529F\u80FD html += \` -
+
\u8DF3\u8F6C\u5230\u7B2C - + \u96C6 - - \u5171\${episodes.length}\u96C6 + + \u5171\${episodes.length}\u96C6
\`; html += '
'; episodes.forEach(ep => { - const title = escapeHtml(animeTitle) + ' \u7B2C' + ep.episodeNumber + '\u96C6'; - html += '
'; - html += '
\u7B2C' + ep.episodeNumber + '\u96C6 - ' + escapeHtml(ep.episodeTitle || '\u65E0\u6807\u9898') + '
'; - html += ''; + const episodeId = Number.parseInt(ep.episodeId, 10); + const episodeNumber = Number.parseInt(ep.episodeNumber, 10); + if (!Number.isFinite(episodeId) || !Number.isFinite(episodeNumber)) return; + const title = String(animeTitle || '') + ' \u7B2C' + episodeNumber + '\u96C6'; + html += '
'; + html += '
\u7B2C' + episodeNumber + '\u96C6 - ' + escapeHtml(ep.episodeTitle || '\u65E0\u6807\u9898') + '
'; + html += ''; html += '
'; }); html += '
'; @@ -5064,20 +6214,37 @@ function jumpToEpisode() { // \u6EDA\u52A8\u5230\u6307\u5B9A\u5143\u7D20\u4F4D\u7F6E episodeElement.scrollIntoView({ behavior: 'smooth', block: 'center' }); // \u6DFB\u52A0\u9AD8\u4EAE\u6548\u679C\u4EE5\u4FBF\u8BC6\u522B - episodeElement.style.backgroundColor = '#fff3cd'; // \u9EC4\u8272\u80CC\u666F\u9AD8\u4EAE + episodeElement.classList.add('episode-item-highlight'); setTimeout(() => { - episodeElement.style.backgroundColor = ''; // \u6062\u590D\u539F\u8272 + episodeElement.classList.remove('episode-item-highlight'); }, 2000); } else { customAlert('\u627E\u4E0D\u5230\u7B2C' + episodeNumber + '\u96C6'); } } +function isCurrentDanmuRequest(requestId) { + return danmuTestState.activeDanmuRequestId === requestId; +} + // ===================== // \u83B7\u53D6\u5F39\u5E55\u5E76\u5C55\u793A\u7ED3\u679C // ===================== -async function fetchDanmuForTest(episodeId, title, source) { +async function fetchDanmuForTest(episodeId, title, source, traceBase) { addLog('\u83B7\u53D6\u5F39\u5E55: ' + episodeId + ' (' + title + ')', 'info'); + const requestId = ++danmuTestState.nextDanmuRequestId; + danmuTestState.activeDanmuRequestId = requestId; + let requestTrace = null; + if (traceBase) { + requestTrace = cloneDanmuCallTrace(traceBase); + danmuTestState.currentCallTrace = requestTrace; + } else if (source === 'manual' && danmuTestState.currentManualEpisodeCallTraceBase) { + danmuTestState.currentCallTrace = cloneDanmuCallTrace(danmuTestState.currentManualEpisodeCallTraceBase); + requestTrace = danmuTestState.currentCallTrace; + } else { + requestTrace = cloneDanmuCallTrace(danmuTestState.currentCallTrace); + danmuTestState.currentCallTrace = requestTrace; + } danmuTestState.currentEpisodeId = episodeId; danmuTestState.currentTitle = title; danmuTestState.currentDuration = 0; @@ -5096,22 +6263,39 @@ async function fetchDanmuForTest(episodeId, title, source) { const startTime = performance.now(); try { - const data = await fetch(buildApiUrl('/api/v2/comment/' + episodeId + "?format=json&duration=true")) + const commentUrl = '/api/v2/comment/' + episodeId + '?format=json&duration=true'; + const data = await fetch(buildApiUrl(commentUrl)) .then(resp => { if (!resp.ok) throw new Error('HTTP ' + resp.status); return resp.json(); }); + if (!isCurrentDanmuRequest(requestId)) return; const elapsed = ((performance.now() - startTime) / 1000).toFixed(2); const durationSeconds = Number((data && data.videoDuration) || 0); if (!data.comments || data.comments.length === 0) { + finishDanmuCallEmpty(requestTrace, startTime, { + name: '\u5F39\u5E55', + method: 'GET', + url: commentUrl, + params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true' + }, '\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E'); customAlert('\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E'); addLog('\u65E0\u5F39\u5E55\u6570\u636E', 'warn'); - resultArea.style.display = 'none'; - if (source === 'manual') backToEpisodeList(); + const failureSource = source === 'manual' ? 'manual-episode' : source; + resultArea.innerHTML = renderDanmuCallFailure(requestTrace, '\u65E0\u5F39\u5E55\u6570\u636E', '\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E', failureSource); + resultArea.style.display = 'block'; return; } + finishDanmuCallStep(requestTrace, startTime, { + name: '\u5F39\u5E55', + method: 'GET', + url: commentUrl, + params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true', + result: data.comments.length + ' \u6761\u5F39\u5E55' + }); + addLog('\u83B7\u53D6\u5230 ' + data.comments.length + ' \u6761\u5F39\u5E55, \u8017\u65F6 ' + elapsed + 's', 'success'); danmuTestState.allComments = data.comments; @@ -5129,32 +6313,38 @@ async function fetchDanmuForTest(episodeId, title, source) { '' + '
'; + const filterCounts = getDanmuFilterCounts(data.comments); resultArea.innerHTML = toolbarHtml + '
' + - '

\u5F39\u5E55\u70ED\u529B\u56FE

' + - '

\u5F39\u5E55\u5217\u8868

' + - '
' + - '' + - '' + - '' + - '' + - '
' + + renderDanmuCallTrace(requestTrace) + + '

\u5F39\u5E55\u70ED\u529B\u56FE

' + + '

\u5F39\u5E55\u5217\u8868

' + + renderDanmuFilterTabs(filterCounts) + '
' + - '' + + '' + '
'; applyDanmuFilter(); - renderDanmuStats(data, elapsed, title, durationSeconds); + renderDanmuStats(data, elapsed, title, durationSeconds, filterCounts); renderDanmuHeatmap(data.comments, durationSeconds); renderDanmuList(); setTimeout(() => resultArea.scrollIntoView({ behavior: 'smooth', block: 'start' }), 10); } catch (e) { + if (!isCurrentDanmuRequest(requestId)) return; + const commentUrl = '/api/v2/comment/' + episodeId + '?format=json&duration=true'; + finishDanmuCallFailure(requestTrace, startTime, { + name: '\u5F39\u5E55', + method: 'GET', + url: commentUrl, + params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true' + }, e); customAlert('\u83B7\u53D6\u5F39\u5E55\u5931\u8D25: ' + e.message); addLog('\u83B7\u53D6\u5F39\u5E55\u5931\u8D25: ' + e.message, 'error'); - resultArea.style.display = 'none'; - if (source === 'manual') backToEpisodeList(); + const failureSource = source === 'manual' ? 'manual-episode' : source; + resultArea.innerHTML = renderDanmuCallFailure(requestTrace, '\u83B7\u53D6\u5F39\u5E55\u5931\u8D25', e.message, failureSource); + resultArea.style.display = 'block'; } } @@ -5203,7 +6393,7 @@ async function exportDanmu(format) { // ===================== // \u5F39\u5E55\u7EDF\u8BA1 // ===================== -function renderDanmuStats(data, elapsed, title, durationSeconds) { +function renderDanmuStats(data, elapsed, title, durationSeconds, filterCounts) { const comments = data.comments; const count = comments.length; @@ -5230,14 +6420,12 @@ function renderDanmuStats(data, elapsed, title, durationSeconds) { const hotStart = hotIdx * segLen; const hotMoment = formatDuration(hotStart) + ' - ' + formatDuration(hotStart + segLen); - // \u7EDF\u8BA1\u5404\u7C7B\u578B\u6570\u91CF - let scrollCount = 0, topCount = 0, bottomCount = 0; - comments.forEach(c => { - const mode = parseDanmuMode(c.p); - if (mode === 5) topCount++; - else if (mode === 4) bottomCount++; - else scrollCount++; - }); + const coloredCount = comments.reduce((sum, comment) => { + if (!comment || !comment.p) return sum; + const color = parseInt(String(comment.p).split(',')[2], 10); + return Number.isFinite(color) && color !== 16777215 ? sum + 1 : sum; + }, 0); + const coloredRatio = count > 0 ? ((coloredCount / count) * 100).toFixed(1) + '%' : '--'; const container = document.getElementById('danmu-stats'); container.innerHTML = @@ -5247,8 +6435,8 @@ function renderDanmuStats(data, elapsed, title, durationSeconds) { '
' + formatDuration(maxTime) + '
\u65F6\u957F
' + '
' + hotMoment + '
\u9AD8\u80FD\u65F6\u523B
' + '
' + avgDensity + ' \u6761/\u5206
\u5E73\u5747\u5BC6\u5EA6
' + - '
' + elapsed + 's
\u5339\u914D\u65F6\u957F
' + - '
' + scrollCount + ' / ' + topCount + ' / ' + bottomCount + '
\u6EDA\u52A8 / \u9876\u90E8 / \u5E95\u90E8
' + + '
' + elapsed + 's
\u8BF7\u6C42\u8017\u65F6
' + + '
' + coloredRatio + '
\u5F69\u8272\u5360\u6BD4
' + '
'; } @@ -5258,7 +6446,7 @@ function renderDanmuStats(data, elapsed, title, durationSeconds) { function renderDanmuHeatmap(comments, durationSeconds) { const container = document.getElementById('danmu-heatmap'); const maxTime = getEffectiveDuration(comments, durationSeconds); - if (maxTime === 0) { container.innerHTML = '

\u65E0\u6570\u636E

'; return; } + if (maxTime === 0) { container.innerHTML = '

\u65E0\u6570\u636E

'; return; } const barCount = Math.min(60, Math.max(20, Math.ceil(maxTime / 30))); const segLen = maxTime / barCount; @@ -5271,7 +6459,8 @@ function renderDanmuHeatmap(comments, durationSeconds) { }); const maxSeg = Math.max(...segs, 1); - let html = '
'; + let html = '
'; + html += '
'; for (let i = 0; i < barCount; i++) { const pct = Math.max(2, (segs[i] / maxSeg) * 100); const intensity = segs[i] / maxSeg; @@ -5279,12 +6468,121 @@ function renderDanmuHeatmap(comments, durationSeconds) { const r = Math.round(66 + intensity * 189); const g = Math.round(126 - intensity * 80); const b = Math.round(234 - intensity * 180); - const timeLabel = formatDuration(i * segLen); - html += '
'; + const start = i * segLen; + const end = Math.min((i + 1) * segLen, maxTime); + const timeLabel = formatDuration(start) + ' - ' + formatDuration(end); + html += '
'; } html += '
'; + html += '
'; + html += '
'; html += '
00:00' + formatDuration(maxTime / 2) + '' + formatDuration(maxTime) + '
'; container.innerHTML = html; + bindDanmuHeatmapScrub(container, segs, segLen, maxTime); +} + +function bindDanmuHeatmapScrub(container, segs, segLen, maxTime) { + const interactive = container.querySelector('.danmu-heatmap-interactive'); + const bars = container.querySelector('.heatmap-bars'); + const tooltip = container.querySelector('.danmu-heatmap-tooltip'); + const indicator = container.querySelector('.danmu-heatmap-indicator'); + if (!interactive || !bars || !tooltip || !indicator) return; + + let rafId = null; + let latestEvent = null; + const scheduleUpdate = event => { + latestEvent = event; + if (rafId) return; + rafId = requestAnimationFrame(() => { + rafId = null; + if (!latestEvent) return; + updateDanmuHeatmapTooltip(latestEvent, interactive, bars, tooltip, indicator, segs, segLen, maxTime); + }); + }; + + const hideTooltip = () => hideDanmuHeatmapTooltip(bars, tooltip, indicator, () => { + if (rafId) { + cancelAnimationFrame(rafId); + rafId = null; + } + latestEvent = null; + }); + + interactive.addEventListener('pointermove', scheduleUpdate, { passive: true }); + interactive.addEventListener('pointerdown', scheduleUpdate, { passive: true }); + interactive.addEventListener('pointerup', hideTooltip, { passive: true }); + interactive.addEventListener('pointercancel', hideTooltip, { passive: true }); + interactive.addEventListener('pointerleave', hideTooltip); +} + +function hideDanmuHeatmapTooltip(bars, tooltip, indicator, beforeHide) { + if (beforeHide) beforeHide(); + tooltip.classList.remove('active'); + indicator.classList.remove('active'); + const activeBar = bars.querySelector('.heatmap-bar.active'); + if (activeBar) activeBar.classList.remove('active'); +} + +function updateDanmuHeatmapTooltip(event, interactive, bars, tooltip, indicator, segs, segLen, maxTime) { + if (!event) return; + const rect = bars.getBoundingClientRect(); + if (!rect.width) return; + const ratio = Math.max(0, Math.min(1, (event.clientX - rect.left) / rect.width)); + const index = Math.max(0, Math.min(segs.length - 1, Math.floor(ratio * segs.length))); + const start = index * segLen; + const end = Math.min((index + 1) * segLen, maxTime); + const leftPct = ((index + 0.5) / segs.length) * 100; + + const activeBar = bars.querySelector('.heatmap-bar.active'); + if (activeBar) activeBar.classList.remove('active'); + const currentBar = bars.querySelector('.heatmap-bar[data-index="' + index + '"]'); + if (currentBar) currentBar.classList.add('active'); + + tooltip.innerHTML = '' + segs[index] + '\u6761\u5F39\u5E55' + formatDuration(start) + ' - ' + formatDuration(end) + ''; + tooltip.classList.add('active'); + indicator.classList.add('active'); + + const clampedLeft = clampHeatmapTooltipLeft(interactive, tooltip, leftPct); + tooltip.style.left = clampedLeft + 'px'; + indicator.style.left = leftPct + '%'; +} + +function clampHeatmapTooltipLeft(interactive, tooltip, leftPct) { + const width = interactive.clientWidth || 0; + const tooltipWidth = tooltip.offsetWidth || 0; + const padding = 8; + const rawLeft = (leftPct / 100) * width; + const minLeft = (tooltipWidth / 2) + padding; + const maxLeft = width - (tooltipWidth / 2) - padding; + if (width <= tooltipWidth + padding * 2) return width / 2; + return Math.max(minLeft, Math.min(maxLeft, rawLeft)); +} + +function getDanmuFilterCounts(comments) { + const counts = { all: comments.length, scroll: 0, top: 0, bottom: 0 }; + comments.forEach(c => { + const mode = parseDanmuMode(c.p); + if (mode === 5) counts.top++; + else if (mode === 4) counts.bottom++; + else counts.scroll++; + }); + return counts; +} + +function renderDanmuFilterTabs(counts) { + const items = [ + { key: 'all', label: '\u5168\u90E8' }, + { key: 'scroll', label: '\u6EDA\u52A8' }, + { key: 'top', label: '\u9876\u90E8' }, + { key: 'bottom', label: '\u5E95\u90E8' } + ]; + let html = '
'; + items.forEach(item => { + const active = item.key === 'all' ? ' active' : ''; + html += ''; + }); + html += '
'; + return html; } // ===================== @@ -5308,7 +6606,8 @@ function applyDanmuFilter() { function filterDanmuList(type, event) { document.querySelectorAll('.danmu-filter-tab').forEach(btn => btn.classList.remove('active')); - event.target.classList.add('active'); + const tab = event.currentTarget || event.target.closest('.danmu-filter-tab'); + if (tab) tab.classList.add('active'); danmuTestState.currentFilter = type; applyDanmuFilter(); renderDanmuList(); @@ -5329,7 +6628,7 @@ function renderDanmuList() { html += '
' + '' + formatDuration(time) + '' + - '' + + '' + '' + modeLabel + '' + '' + escapeHtml(c.m) + '' + '
'; @@ -5337,7 +6636,7 @@ function renderDanmuList() { const container = document.getElementById('danmu-list'); if (danmuTestState.displayedCount === 0) { - container.innerHTML = html || '

\u65E0\u5F39\u5E55\u6570\u636E

'; + container.innerHTML = html || '

\u65E0\u5F39\u5E55\u6570\u636E

'; } else { container.insertAdjacentHTML('beforeend', html); } @@ -5356,7 +6655,7 @@ function renderDanmuList() { function loadMoreDanmu() { renderDanmuList(); } -`});var u_t,c_t=ve(()=>{u_t=` +`});var mCt,gCt=ie(()=>{mCt=` // \u63A8\u9001\u5F39\u5E55\u529F\u80FD\u76F8\u5173 // \u4ECE\u73AF\u5883\u53D8\u91CF\u83B7\u53D6\u9ED8\u8BA4\u63A8\u9001\u5730\u5740 @@ -5601,7 +6900,7 @@ async function pushDanmu(pushUrl, commentUrl, episodeTitle) { } } } -`});var l_t,d_t=ve(()=>{l_t=` +`});var _Ct,ACt=ie(()=>{_Ct=` // \u8BF7\u6C42\u8BB0\u5F55\u76F8\u5173\u529F\u80FD async function renderRequestRecords() { const recordsContainer = document.getElementById('request-records-list'); @@ -5710,15 +7009,10 @@ document.addEventListener('DOMContentLoaded', function() { } }); -`});var f_t,p_t=ve(()=>{f_t=` +`});var ECt,yCt=ie(()=>{ECt=` // \u5168\u5C40\u53D8\u91CF\u5B9A\u4E49 let isMergeMode = false; let stagingTags = []; -const READONLY_RUNTIME_STATE_KEYS = new Set(['localCacheValid', 'redisValid', 'localRedisValid', 'aiValid', 'deployPlatform']); - -function isReadonlyRuntimeStateKey(key) { - return READONLY_RUNTIME_STATE_KEYS.has(String(key || '').trim()); -} // \u663E\u793A\u6E05\u7406\u7F13\u5B58\u786E\u8BA4\u6A21\u6001\u6846 function showClearCacheModal() { @@ -5746,14 +7040,12 @@ async function confirmClearCache() { try { // \u8C03\u7528\u771F\u5B9E\u7684\u6E05\u7406\u7F13\u5B58API - const cacheClearUrl = currentAdminToken && checkAdminToken() - ? buildApiUrl('/api/cache/clear', true) - : buildApiUrl('/api/cache/clear'); - const response = await fetch(cacheClearUrl, { + const response = await fetch(buildApiUrl('/api/cache/clear', true), { // \u4F7F\u7528admin token method: 'POST', headers: { 'Content-Type': 'application/json' - } + }, + body: JSON.stringify({}) }); const result = await response.json(); @@ -5801,10 +7093,7 @@ function confirmDeploySystem() { addLog('===== \u5F00\u59CB\u7CFB\u7EDF\u90E8\u7F72 =====', 'info'); // \u83B7\u53D6\u5F53\u524D\u90E8\u7F72\u5E73\u53F0 - const configUrl = currentAdminToken && checkAdminToken() - ? buildApiUrl('/api/config', true) - : buildApiUrl('/api/config'); - fetch(configUrl) + fetch(buildApiUrl('/api/config', true)) .then(response => response.json()) .then(config => { const deployPlatform = config.envs.deployPlatform || 'node'; @@ -5815,19 +7104,17 @@ function confirmDeploySystem() { setTimeout(() => { hideLoading(); addLog('===== \u90E8\u7F72\u5B8C\u6210 =====', 'success'); - addLog('Node\u90E8\u7F72\u6A21\u5F0F\uFF0C\u6B63\u5728\u7B49\u5F85 danmu_api \u8FD0\u884C\u65F6\u786E\u8BA4\u5237\u65B0', 'info'); - addLog('\u2705 Node\u90E8\u7F72\u6A21\u5F0F - \u914D\u7F6E\u5DF2\u63D0\u4EA4\uFF1B\u9875\u9762\u4F1A\u7B49\u5F85 danmu_api \u8FD0\u884C\u65F6\u786E\u8BA4\u540E\u518D\u663E\u793A\u6210\u529F\uFF0C\u65E0\u9700\u91CD\u65B0\u90E8\u7F72', 'success'); + addLog('Node\u90E8\u7F72\u6A21\u5F0F\uFF0C\u73AF\u5883\u53D8\u91CF\u5DF2\u751F\u6548', 'info'); + addLog('\u2705 Node\u90E8\u7F72\u6A21\u5F0F - \u5728Node\u90E8\u7F72\u6A21\u5F0F\u4E0B\uFF0C\u73AF\u5883\u53D8\u91CF\u4FEE\u6539\u540E\u4F1A\u81EA\u52A8\u751F\u6548\uFF0C\u65E0\u9700\u91CD\u65B0\u90E8\u7F72\u3002\u7CFB\u7EDF\u5DF2\u66F4\u65B0\u914D\u7F6E', 'success'); }, 150); } else { // \u8C03\u7528\u771F\u5B9E\u7684\u90E8\u7F72API - const deployUrl = currentAdminToken && checkAdminToken() - ? buildApiUrl('/api/deploy', true) - : buildApiUrl('/api/deploy'); - fetch(deployUrl, { + fetch(buildApiUrl('/api/deploy', true), { // \u4F7F\u7528admin token method: 'POST', headers: { 'Content-Type': 'application/json' - } + }, + body: JSON.stringify({}) }) .then(response => response.json()) .then(result => { @@ -6020,11 +7307,30 @@ function checkAdminToken() { // \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u914D\u7F6E async function checkDeployPlatformConfig() { + // \u9996\u5148\u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN + if (!checkAdminToken()) { + // \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3 + const protocol = window.location.protocol; + const host = window.location.host; + + let displayBase; + if (customBaseUrl) { + displayBase = customBaseUrl.startsWith('http') + ? customBaseUrl + : (protocol + '//' + host + customBaseUrl); + } else { + displayBase = protocol + '//' + host; + } + + if (displayBase.endsWith('/')) { + displayBase = displayBase.slice(0, -1); + } + + return { success: false, message: '\u8BF7\u5148\u914D\u7F6EADMIN_TOKEN\u73AF\u5883\u53D8\u91CF\u5E76\u4F7F\u7528\u6B63\u786E\u7684token\u8BBF\u95EE\u4EE5\u542F\u7528\u7CFB\u7EDF\u90E8\u7F72\u529F\u80FD\uFF01\\n\\n\u8BBF\u95EE\u65B9\u5F0F\uFF1A' + displayBase + '/{ADMIN_TOKEN}' }; + } + try { - const configUrl = currentAdminToken && checkAdminToken() - ? buildApiUrl('/api/config', true) - : buildApiUrl('/api/config'); - const response = await fetch(configUrl); + const response = await fetch(buildApiUrl('/api/config', true)); if (!response.ok) { throw new Error('HTTP error! status: ' + response.status); } @@ -6032,31 +7338,9 @@ async function checkDeployPlatformConfig() { const config = await response.json(); const deployPlatform = config.envs.deployPlatform || 'node'; - // Node \u96C6\u6210\u6A21\u5F0F\u4E0B\u76F4\u63A5\u653E\u884C\uFF0C\u4E0D\u8981\u6C42 ADMIN_TOKEN \u8BBF\u95EE\u8DEF\u5F84 + // \u5982\u679C\u662Fnode\u90E8\u7F72\u5E73\u53F0\uFF0C\u53EA\u9700\u8981\u68C0\u67E5ADMIN_TOKEN if (deployPlatform.toLowerCase() === 'node') { - return { success: true, message: 'Node\u90E8\u7F72\u5E73\u53F0\uFF0C\u65E0\u9700ADMIN_TOKEN\u90E8\u7F72\u6821\u9A8C' }; - } - - // \u975E Node \u5E73\u53F0\u624D\u8981\u6C42\u4F7F\u7528 ADMIN_TOKEN \u8BBF\u95EE\u7CFB\u7EDF\u7BA1\u7406\u80FD\u529B - if (!checkAdminToken()) { - // \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3 - const protocol = window.location.protocol; - const host = window.location.host; - - let displayBase; - if (customBaseUrl) { - displayBase = customBaseUrl.startsWith('http') - ? customBaseUrl - : (protocol + '//' + host + customBaseUrl); - } else { - displayBase = protocol + '//' + host; - } - - if (displayBase.endsWith('/')) { - displayBase = displayBase.slice(0, -1); - } - - return { success: false, message: '\u8BF7\u5148\u914D\u7F6EADMIN_TOKEN\u73AF\u5883\u53D8\u91CF\u5E76\u4F7F\u7528\u6B63\u786E\u7684token\u8BBF\u95EE\u4EE5\u542F\u7528\u7CFB\u7EDF\u90E8\u7F72\u529F\u80FD\uFF01\\n\\n\u8BBF\u95EE\u65B9\u5F0F\uFF1A' + displayBase + '/{ADMIN_TOKEN}' }; + return { success: true, message: 'Node\u90E8\u7F72\u5E73\u53F0\uFF0C\u4EC5\u9700\u914D\u7F6EADMIN_TOKEN' }; } // \u5BF9\u4E8E\u5176\u4ED6\u90E8\u7F72\u5E73\u53F0\uFF0C\u6536\u96C6\u6240\u6709\u7F3A\u5931\u7684\u73AF\u5883\u53D8\u91CF @@ -6073,8 +7357,8 @@ async function checkDeployPlatformConfig() { missingVars.push('DEPLOY_PLATFROM_TOKEN'); } - // \u5BF9\u4E8Enetlify\u548Ccloudflare\u90E8\u7F72\u5E73\u53F0\uFF0C\u8FD8\u9700\u8981\u68C0\u67E5DEPLOY_PLATFROM_ACCOUNT - if (deployPlatform.toLowerCase() === 'netlify' || deployPlatform.toLowerCase() === 'cloudflare') { + // \u5BF9\u4E8E\u9700\u8981\u8D26\u53F7ID\u7684\u90E8\u7F72\u5E73\u53F0\uFF0C\u8FD8\u9700\u8981\u68C0\u67E5DEPLOY_PLATFROM_ACCOUNT + if (['netlify', 'cloudflare', 'huggingface'].includes(deployPlatform.toLowerCase())) { if (!deployPlatformAccount || deployPlatformAccount.trim() === '') { missingVars.push('DEPLOY_PLATFROM_ACCOUNT'); } @@ -6250,6 +7534,17 @@ function renderValueInput(item) { }).join('')}
+ + \${currentKey === 'MERGE_SOURCE_PAIRS' ? \` +
+ +
+
+
+
+ \` : ''} \`; // \u8BBE\u7F6E\u62D6\u52A8\u4E8B\u4EF6 @@ -6296,6 +7591,7 @@ function renderValueInput(item) { const isAiApiKey = currentKey === 'AI_API_KEY'; const isColorPool = currentKey === 'COLOR_POOL'; const isDanmuOffset = currentKey === 'DANMU_OFFSET'; + const isCustomMergeRules = currentKey === 'CUSTOM_MERGE_RULES'; const offsetSources = item && item.sources ? item.sources : []; if (isColorPool) { @@ -6341,10 +7637,17 @@ function renderValueInput(item) { container.innerHTML = \` -
+
+ +
+
+
\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u53EF\u5FEB\u6377\u586B\u5165\u89C4\u5219\u8868\u5355\uFF1A
+
\u5B63\u548C\u96C6\u4E0D\u586B\u5219\u5BF9\u6240\u6709\u5B63/\u96C6\u751F\u6548
@@ -6446,6 +7749,63 @@ function renderValueInput(item) { }); } }, 120); + } else if (isCustomMergeRules) { + // CUSTOM_MERGE_RULES \u4E13\u7528\u7F16\u8F91\u754C\u9762 + const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 10) : 3; + container.innerHTML = \` + + +
+ + +
+
+
\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u53EF\u5FEB\u6377\u586B\u5165\u89C4\u5219\u8868\u5355\uFF1A
+
+
+
+
+
+ + +
+
+ + +
\u5408\u5E76
+
+
+ + +
+
+
+
+ + +
+
+
+ +
+ \${offsetSources.map(src => \` +
\${src}
+ \`).join('')} +
+
+
+ + +
+
+ \`; } else if (value && value.length > 50) { const rows = Math.min(Math.max(Math.ceil(value.length / 50), 3), 10); container.innerHTML = \` @@ -6792,6 +8152,89 @@ function appendOffsetRule() { toggleOffsetRulePanel(); } +// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u7126\u70B9\u72B6\u6001\u8BB0\u5F55 +let currentMergeFocus = 'sec'; + +function setMergeFocus(type) { + currentMergeFocus = type; +} + +// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5FEB\u6377\u8FFD\u52A0\u6765\u6E90 +function appendSourceToMerge(source) { + const inputId = currentMergeFocus === 'sec' ? 'merge-sec-entity' : 'merge-prim-entity'; + const inputEl = document.getElementById(inputId); + if (!inputEl) return; + + let val = inputEl.value.trim(); + if (val.includes('@')) { + val += '&' + source; + } else { + val += '@' + source; + } + inputEl.value = val; + inputEl.focus(); // \u4FDD\u6301\u7126\u70B9\uFF0C\u65B9\u4FBF\u7528\u6237\u8FDE\u7EED\u70B9\u51FB\u591A\u4E2A\u6765\u6E90 +} + +// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u89C4\u5219\u9762\u677F +function toggleMergeRulePanel() { + const panel = document.getElementById('merge-rule-panel'); + if (panel) { + const isHidden = getComputedStyle(panel).display === 'none'; + panel.style.display = isHidden ? 'block' : 'none'; + const btn = document.getElementById('merge-rule-toggle'); + if (btn) btn.textContent = isHidden ? '\u6536\u8D77' : '\u6DFB\u52A0\u89C4\u5219'; + } +} + +// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u64CD\u4F5C\u7B26\u8054\u52A8 +function onMergeActionChange() { + const action = document.getElementById('merge-action').value; + const routeRow = document.getElementById('merge-route-row'); + const hint = document.getElementById('merge-action-hint'); + + if (action === '\xD7') { + if (routeRow) routeRow.style.display = 'none'; + if (hint) hint.textContent = '\u963B\u65AD'; + } else { + if (routeRow) routeRow.style.display = 'flex'; + if (hint) hint.textContent = '\u5408\u5E76'; + } +} + +// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u786E\u8BA4\u6DFB\u52A0\u89C4\u5219 +function appendMergeRule() { + const secEntity = document.getElementById('merge-sec-entity').value.trim(); + const action = document.getElementById('merge-action').value; + const primEntity = document.getElementById('merge-prim-entity').value.trim(); + const routeRule = document.getElementById('merge-route-rule').value.trim(); + + if (!secEntity || !primEntity) { + customAlert('\u526F\u6E90\u5B9E\u4F53\u548C\u4E3B\u6E90\u5B9E\u4F53\u4E0D\u80FD\u4E3A\u7A7A'); + return; + } + + let rule = secEntity + ' ' + action + ' ' + primEntity; + if (action === '->' && routeRule) { + rule += ' | ' + routeRule; + } + + const textarea = document.getElementById('text-value'); + const current = textarea.value.trim(); + + if (current && !current.endsWith(';')) { + textarea.value = current + ';' + rule; + } else { + textarea.value = current ? current + rule : rule; + } + + // \u6E05\u7A7A\u8868\u5355 + document.getElementById('merge-sec-entity').value = ''; + document.getElementById('merge-prim-entity').value = ''; + document.getElementById('merge-route-rule').value = ''; + + toggleMergeRulePanel(); +} + // \u8C03\u6574\u6570\u5B57 function adjustNumber(delta) { const display = document.getElementById('num-value'); @@ -7534,45 +8977,53 @@ function renderEnvList() { item.type === 'map' ? '\u6620\u5C04' : item.type === 'multi-select' ? '\u591A\u9009' : '\u6587\u672C'; const badgeClass = item.type === 'multi-select' ? 'multi' : ''; - const isReadonly = isReadonlyRuntimeStateKey(item.key); const escapedValue = escapeHtml(item.value); - const escapedDescription = escapeHtml(item.description || '\u65E0\u63CF\u8FF0'); - const readonlyHint = isReadonly ? '
\u8FD0\u884C\u72B6\u6001\u9879\uFF0C\u53EA\u8BFB\u663E\u793A\uFF1B\u8BF7\u4FEE\u6539\u5BF9\u5E94\u771F\u5B9E\u914D\u7F6E\u9879\u3002
' : ''; - const actionsHtml = isReadonly - ? '\u53EA\u8BFB' - : '' + - ''; return \`
\${item.key}\${typeLabel}
\${escapedValue}
-
\${escapedDescription}
- \${readonlyHint} +
\${item.description || '\u65E0\u63CF\u8FF0'}
- \${actionsHtml} + +
\`; }).join(''); } +function openAddEnvModal() { + editingKey = null; + document.getElementById('modal-title').textContent = '\u6DFB\u52A0\u914D\u7F6E\u9879'; + document.getElementById('env-category').value = currentCategory; + document.getElementById('env-key').value = ''; + document.getElementById('env-description').value = ''; + document.getElementById('value-type').value = 'text'; + + document.getElementById('env-category').disabled = false; + document.getElementById('env-key').readOnly = false; + document.getElementById('value-type').disabled = false; + document.getElementById('env-description').readOnly = false; + + renderValueInput({ type: 'text', key: '', value: '', description: '' }); + document.getElementById('env-modal').classList.add('active'); +} + // \u7F16\u8F91\u73AF\u5883\u53D8\u91CF -function editEnv(index) { +function editEnv(index, clickEvent) { const item = envVariables[currentCategory][index]; - if (isReadonlyRuntimeStateKey(item.key)) { - customAlert('\u8BE5\u9879\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\u663E\u793A\uFF1B\u8BF7\u4FEE\u6539\u5BF9\u5E94\u771F\u5B9E\u914D\u7F6E\u9879\u3002'); - return; - } - const editButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE + const editButton = clickEvent?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE // \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001 - const originalText = editButton.innerHTML; - editButton.innerHTML = ''; - editButton.disabled = true; + const originalText = editButton ? editButton.innerHTML : ''; + if (editButton) { + editButton.innerHTML = ''; + editButton.disabled = true; + } editingKey = index; document.getElementById('modal-title').textContent = '\u7F16\u8F91\u914D\u7F6E\u9879'; @@ -7594,27 +9045,26 @@ function editEnv(index) { // \u6062\u590D\u6309\u94AE\u72B6\u6001\uFF08\u5728\u5B9E\u9645\u573A\u666F\u4E2D\uFF0C\u8FD9\u4F1A\u5728\u7F16\u8F91\u5B8C\u6210\u540E\u53D1\u751F\uFF0C\u6BD4\u5982\u5728\u4FDD\u5B58\u540E\u6216\u53D6\u6D88\u540E\uFF09 // \u4E3A\u4E86\u6F14\u793A\uFF0C\u8FD9\u91CC\u7ACB\u5373\u6062\u590D\u6309\u94AE\u72B6\u6001\uFF0C\u5B9E\u9645\u4F7F\u7528\u4E2D\u5E94\u8BE5\u5728\u9002\u5F53\u7684\u5730\u65B9\u6062\u590D\u6309\u94AE\u72B6\u6001 - editButton.innerHTML = originalText; - editButton.disabled = false; + if (editButton) { + editButton.innerHTML = originalText; + editButton.disabled = false; + } } // \u5220\u9664\u73AF\u5883\u53D8\u91CF -function deleteEnv(index) { - const item = envVariables[currentCategory][index]; - if (isReadonlyRuntimeStateKey(item.key)) { - customAlert('\u8BE5\u9879\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\u663E\u793A\uFF0C\u4E0D\u80FD\u5220\u9664\u3002'); - return; - } +function deleteEnv(index, clickEvent) { customConfirm('\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u914D\u7F6E\u9879\u5417?', '\u5220\u9664\u786E\u8BA4').then(confirmed => { if (confirmed) { const item = envVariables[currentCategory][index]; const key = item.key; - const deleteButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE + const deleteButton = clickEvent?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE // \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001 - const originalText = deleteButton.innerHTML; - deleteButton.innerHTML = ''; - deleteButton.disabled = true; + const originalText = deleteButton ? deleteButton.innerHTML : ''; + if (deleteButton) { + deleteButton.innerHTML = ''; + deleteButton.disabled = true; + } // \u8C03\u7528API\u5220\u9664\u73AF\u5883\u53D8\u91CF fetch(buildApiUrl('/api/env/del'), { @@ -7643,8 +9093,10 @@ function deleteEnv(index) { }) .finally(() => { // \u6062\u590D\u6309\u94AE\u72B6\u6001 - deleteButton.innerHTML = originalText; - deleteButton.disabled = false; + if (deleteButton) { + deleteButton.innerHTML = originalText; + deleteButton.disabled = false; + } }); } }); @@ -7705,7 +9157,8 @@ document.getElementById('env-form').addEventListener('submit', async function(e) value = pairs.join(';'); itemData = { key, value, description, type }; } else { - value = document.getElementById('text-value').value.trim(); + const textValueEl = document.getElementById('text-value'); + value = textValueEl ? textValueEl.value.trim() : ''; itemData = { key, value, description, type }; } @@ -7765,12 +9218,12 @@ document.getElementById('env-form').addEventListener('submit', async function(e) } else { addLog(\`\u64CD\u4F5C\u5931\u8D25: \${result.message}\`, 'error'); addLog(\`\u274C \u64CD\u4F5C\u5931\u8D25: \${result.message}\`, 'error'); - customAlert(result.pending ? (result.message + '\uFF0C\u8BF7\u7A0D\u540E\u5237\u65B0\u914D\u7F6E\u9875\u786E\u8BA4\u6700\u7EC8\u503C') : result.message); + customAlert(result.message + '\uFF0C\u8BF7\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u73AF\u5883\u53D8\u91CF\u914D\u7F6E\u662F\u5426\u6B63\u786E'); } } catch (error) { addLog(\`\u66F4\u65B0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: \${error.message}\`, 'error'); addLog(\`\u274C \u66F4\u65B0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: \${error.message}\`, 'error'); - customAlert(error.message + '\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF1B\u82E5\u6301\u7EED\u5931\u8D25\u518D\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u914D\u7F6E'); + customAlert(error.message + '\uFF0C\u8BF7\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u73AF\u5883\u53D8\u91CF\u914D\u7F6E\u662F\u5426\u6B63\u786E'); } }); @@ -8060,7 +9513,354 @@ async function verifyAiConnection() { btn.disabled = false; } } -`});var h_t,m_t=ve(()=>{Ot();Qyt();Yyt();Xyt();Zyt();t_t();n_t();s_t();o_t();c_t();d_t();p_t();h_t=` + +/* ======================================== + \u6700\u8FD1\u6570\u636E\u4E0Eanimes\u7F13\u5B58\u9762\u677F\u529F\u80FD + ======================================== */ + +// \u7EDF\u4E00\u5207\u6362\u5361\u7247\u5185\u7684\u6298\u53E0\u533A\u57DF +function toggleCardSection(btnEl, targetSelector, openText, closeText) { + if (!btnEl) return; + const card = btnEl.closest('.anime-cache-card'); + if (!card) return; + const container = card.querySelector(targetSelector); + if (!container) return; + + const isHidden = window.getComputedStyle(container).display === 'none'; + + if (isHidden) { + container.style.display = 'flex'; + btnEl.innerHTML = closeText; + btnEl.classList.add('active'); + } else { + container.style.display = 'none'; + btnEl.innerHTML = openText; + btnEl.classList.remove('active'); + } +} + +// \u5207\u6362\u5B50\u8282\u70B9\u5185\u7684\u6620\u5C04\u8BE6\u60C5 +function toggleMapping(btnEl) { + if (!btnEl) return; + const parentItem = btnEl.closest('.anime-cache-child-item'); + if (!parentItem) return; + const container = parentItem.querySelector('.child-mapping-container'); + if (!container) return; + + const isHidden = window.getComputedStyle(container).display === 'none'; + if (isHidden) { + container.style.display = 'flex'; + btnEl.innerHTML = '\u{1F4CA} \u6536\u8D77\u6620\u5C04\u8BE6\u60C5'; + btnEl.classList.add('active'); + } else { + container.style.display = 'none'; + btnEl.innerHTML = '\u{1F4CA} \u5C55\u5F00\u6620\u5C04\u8BE6\u60C5'; + btnEl.classList.remove('active'); + } +} + +// \u5FEB\u6377\u6570\u636E\u9762\u677F\u4E1A\u52A1\u903B\u8F91 +async function fetchAndShowRecentData() { + const panel = document.getElementById('recent-data-panel'); + const listContainer = document.getElementById('recent-data-list'); + + if (!panel || !listContainer) return; + + if (window.getComputedStyle(panel).display !== 'none') { + panel.style.display = 'none'; + return; + } + + panel.style.display = 'block'; + listContainer.innerHTML = ' \u6570\u636E\u52A0\u8F7D\u4E2D...'; + + try { + const response = await fetch(buildApiUrl('/api/cache/animes', true)); + const result = await response.json(); + + if (result.success && result.data && result.data.length > 0) { + renderAnimeCachePanel(result.data, listContainer); + } else { + listContainer.innerHTML = '
\u7F13\u5B58\u4E2D\u6682\u65E0\u756A\u5267\u6570\u636E\uFF0C\u8BF7\u5148\u901A\u8FC7\u5BA2\u6237\u7AEF\u8BF7\u6C42\u5F39\u5E55\u63A5\u53E3\u4EE5\u751F\u6210\u7F13\u5B58\u3002
'; + } + } catch (error) { + listContainer.innerHTML = \`
\u8BF7\u6C42\u5931\u8D25: \${error.message}
\`; + } +} + +// \u6E32\u67D3animes\u7F13\u5B58\u9762\u677F (\u542B\u96C6\u6570\u89E3\u6790\u4E0E\u6620\u5C04\u8BE6\u60C5) +function renderAnimeCachePanel(data, listContainer) { + const keyInput = document.getElementById('env-key'); + + if (!listContainer || !keyInput) return; + + const currentKey = keyInput.value; + + // \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u751F\u6210\u64CD\u4F5C\u6309\u94AE + const generateButtons = (title, source) => { + if (currentKey === 'CUSTOM_MERGE_RULES') { + return \` + + + \`; + } else if (currentKey === 'DANMU_OFFSET') { + return \` + + \`; + } + return ''; + }; + + // \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u6E05\u6D17\u6807\u9898 + const cleanTitleStr = (rawTitle) => rawTitle.replace(/\\s*from\\s+.*$/i, '').trim().replace(/'/g, '''); + + let html = '
'; + + data.forEach(item => { + const cleanTitle = cleanTitleStr(item.animeTitle); + const coverStyle = item.imageUrl ? \`background-image: url('\${item.imageUrl}');\` : ''; + + // 1. \u6784\u5EFA\u5408\u5E76\u5B50\u6E90\u6A21\u5757 + let childrenHtml = ''; + let childrenCount = 0; + if (item.mergedChildren && item.mergedChildren.length > 0) { + childrenCount = item.mergedChildren.length; + const childItems = item.mergedChildren.map(child => { + const childCleanTitle = cleanTitleStr(child.animeTitle); + + const childCoverStyle = child.imageUrl ? \`background-image: url('\${child.imageUrl}');\` : ''; + + // \u89E3\u6790\u6620\u5C04\u6570\u636E\u5E76\u6309\u5339\u914D\u72B6\u6001\u6392\u5E8F + let mappingHtml = ''; + if (item.links && item.links.length > 0) { + const parsedRows = []; + + item.links.forEach((link, idx) => { + const urlStr = String(link.url || ''); + const hasMainMatch = urlStr.includes(item.source + ':') || !urlStr.includes(':'); + const hasChildMatch = urlStr.includes(child.source + ':'); + + if (!hasMainMatch && !hasChildMatch) return; + + let mainSide = '(\u4E3B\u6E90\u8D8A\u754C)'; + if (hasMainMatch) { + const cleanMainEpTitle = (link.title || '\u672A\u77E5\u5267\u96C6').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"'); + mainSide = \`\u3010\${item.source}\u3011\${cleanMainEpTitle}\`; + } + + let childSide = '(\u526F\u6E90\u7F3A\u5931)'; + let childNum = NaN; + + if (hasChildMatch) { + const regex = new RegExp(child.source + ':([^$]+)'); + const match = urlStr.match(regex); + let childTitleStr = '(\u6E90ID\u672A\u77E5)'; + + if (match) { + const childId = match[1]; + childTitleStr = \`(\u6E90ID: \${childId})\`; + + if (child.links && child.links.length > 0) { + const childLink = child.links.find(l => String(l.url) === String(childId)); + if (childLink && childLink.title) { + childTitleStr = childLink.title.replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"'); + } + } + } else { + childTitleStr = (link.title || '').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, ''').replace(/"/g, '"'); + } + childSide = \`\u3010\${child.source}\u3011\${childTitleStr}\`; + + const numMatch = childTitleStr.match(/\\d+/); + if (numMatch) { + childNum = parseInt(numMatch[0], 10); + } + } + + let rowHtml = ''; + if (hasMainMatch && hasChildMatch) { + rowHtml = \`
\u2713 \u5339\u914D \${mainSide} \u2194 \${childSide}
\`; + } else { + rowHtml = \`
\u2717 \u843D\u5355 \${mainSide} \u2194 \${childSide}
\`; + } + + parsedRows.push({ + originalIndex: idx, + hasChildMatch: hasChildMatch, + childNum: childNum, + html: rowHtml + }); + }); + + const matchedRows = parsedRows.filter(r => r.hasChildMatch).sort((a, b) => { + if (!isNaN(a.childNum) && !isNaN(b.childNum)) { + return a.childNum - b.childNum; + } + return a.originalIndex - b.originalIndex; + }); + + const lonelyRows = parsedRows.filter(r => !r.hasChildMatch).sort((a, b) => a.originalIndex - b.originalIndex); + + const finalRows = [...matchedRows, ...lonelyRows]; + const mappingRowsHtml = finalRows.map(r => r.html).join(''); + + if (mappingRowsHtml) { + mappingHtml = \` +
\u{1F4CA} \u5C55\u5F00\u6620\u5C04\u8BE6\u60C5
+
+ \${mappingRowsHtml} +
+ \`; + } + } + + return \` +
+
+
+
+
\${childCleanTitle}
+
[\${child.source}] (\${child.episodes}\u96C6)
+
+
+ \${generateButtons(childCleanTitle, child.source)} +
+
+ \${mappingHtml} +
+ \`; + }).join(''); + + childrenHtml = \` +
+ \${childItems} +
+ \`; + } + + // 2. \u6784\u5EFA\u5267\u96C6\u53C2\u8003\u5217\u8868\u6A21\u5757 + let episodesHtml = ''; + let episodesCount = 0; + if (item.links && item.links.length > 0) { + episodesCount = item.links.length; + const epItems = item.links.map(link => { + const safeTitle = link.title ? link.title.replace(/'/g, ''').replace(/"/g, '"') : '\u672A\u77E5\u5267\u96C6'; + return \` +
+
+
+
\${safeTitle}
+
+
+
+ \`; + }).join(''); + + episodesHtml = \` +
+ \${epItems} +
+ \`; + } + + // 3. \u6784\u5EFA\u5361\u7247\u5E95\u90E8\u4E13\u5C5E\u5207\u6362\u680F (Tab Bar) + let footerHtml = ''; + if (childrenCount > 0 || episodesCount > 0) { + let badges = ''; + if (episodesCount > 0) { + badges += \`
\u{1F4FA} \${episodesCount} \u4E2A\u5267\u96C6
\`; + } + if (childrenCount > 0) { + badges += \`
\u{1F517} \${childrenCount} \u4E2A\u88AB\u5408\u5E76\u6E90
\`; + } + footerHtml = \`\`; + } + + // 4. \u7EC4\u88C5\u5B8C\u6574\u5361\u7247 + html += \` +
+
+
+
+
\${cleanTitle}
+
[\${item.source}] (\${item.episodes}\u96C6)
+
+
+ \${generateButtons(cleanTitle, item.source)} +
+
+ \${footerHtml} + \${childrenHtml} + \${episodesHtml} +
+ \`; + }); + + html += '
'; + listContainer.innerHTML = html; +} + +/* ======================================== + \u8868\u5355\u586B\u5145\u5FEB\u6377\u64CD\u4F5C\u529F\u80FD + ======================================== */ + +// \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u8F93\u5165\u6846\u89C6\u89C9\u53CD\u9988\u7EDF\u4E00\u5904\u7406 +function applyInputFeedback(inputEl) { + if (!inputEl) return; + const oldBorder = inputEl.style.borderColor; + inputEl.style.borderColor = '#28a745'; + setTimeout(() => inputEl.style.borderColor = oldBorder, 800); + inputEl.focus(); +} + +// \u8868\u5355\u586B\u5145\u903B\u8F91\uFF1A\u5408\u5E76\u6620\u5C04\u8868 +function fillMergeEntity(type, title, source) { + const panel = document.getElementById('merge-rule-panel'); + if (panel && window.getComputedStyle(panel).display === 'none') { + toggleMergeRulePanel(); + } + + const inputId = type === 'sec' ? 'merge-sec-entity' : 'merge-prim-entity'; + const inputEl = document.getElementById(inputId); + + if (inputEl) { + inputEl.value = \`\${title}@\${source}\`; + applyInputFeedback(inputEl); + setMergeFocus(type); + } +} + +// \u8868\u5355\u586B\u5145\u903B\u8F91\uFF1A\u5F39\u5E55\u504F\u79FB +function fillOffsetEntity(title, source) { + const panel = document.getElementById('offset-rule-panel'); + if (panel && window.getComputedStyle(panel).display === 'none') { + toggleOffsetRulePanel(); + } + + // \u89C6\u56FE\u5C42\u6570\u636E\u6E05\u6D17\uFF1A\u53BB\u9664\u5E74\u4EFD\u548C\u7C7B\u578B\u540E\u7F00 + const cleanTitle = title + .replace(/[\\u200B-\\u200F\\uFEFF]/g, '') + .replace(/\\s*[\uFF08(\u3014\\[]\\s*[0-9\uFF10-\uFF19]{4}\\s*\u5E74?\\s*[\uFF09)\u3015\\]]/g, '') + .replace(/(.+?)\\s*\u3010[^\u3011]+\u3011$/, '$1') + .trim(); + + const inputEl = document.getElementById('offset-anime'); + + if (inputEl) { + inputEl.value = cleanTitle; + + // \u57FA\u4E8E data-value \u5C5E\u6027\u5339\u914D\u5E76\u9009\u4E2D\u5BF9\u5E94\u6765\u6E90\u6807\u7B7E + const sourceTags = document.querySelectorAll('#offset-sources .offset-source-tag'); + if (sourceTags.length > 0) { + sourceTags.forEach(el => el.classList.remove('selected')); + const targetTag = Array.from(sourceTags).find(el => el.dataset.value === source); + if (targetTag) targetTag.classList.add('selected'); + } + + applyInputFeedback(inputEl); + } +} +`});var vCt,SCt=ie(()=>{Wt();eCt();rCt();sCt();aCt();cCt();lCt();fCt();pCt();gCt();ACt();yCt();vCt=` @@ -8069,10 +9869,10 @@ async function verifyAiConnection() { LogVar\u5F39\u5E55API - - - - + + + + @@ -8089,7 +9889,7 @@ async function verifyAiConnection() {

LogVar\u5F39\u5E55API

- \u5F53\u524D\u7248\u672C: v${L.version} + \u5F53\u524D\u7248\u672C: v${F.version} \u{1F389} \u6700\u65B0\u7248\u672C: \u52A0\u8F7D\u4E2D... @@ -8274,6 +10074,7 @@ async function verifyAiConnection() {
  • \u5267\u96C6ID\u7F13\u5B58 (episodeIds)
  • \u5267\u96C6\u7F16\u53F7\u7F13\u5B58 (episodeNum)
  • \u6700\u540E\u9009\u62E9\u6620\u5C04\u7F13\u5B58 (lastSelectMap)
  • +
  • \u52A8\u753B\u5143\u6570\u636E\u7F13\u5B58 (Bangumi Data)
  • \u641C\u7D22\u7ED3\u679C\u7F13\u5B58
  • \u5F39\u5E55\u5185\u5BB9\u7F13\u5B58
  • \u8BF7\u6C42\u5386\u53F2\u8BB0\u5F55
  • @@ -8389,9 +10190,10 @@ async function verifyAiConnection() {
    +
    -`});var kc,rI=ve(()=>{Ot();Ct();kc=class{constructor(){}updateLocalEnv(t,r){return typeof L.env<"u"?L.env[t]=r:typeof process<"u"&&(process.env[t]=r),L.reInit(),x("info",`[server] \u2713 Environment variable updated successfully: ${t}`),!0}delLocalEnv(t){return typeof L.env<"u"&&L.env[t]?delete L.env[t]:typeof process<"u"&&process.env?.[t]&&delete process.env[t],L.reInit(),x("info",`[server] \u2713 Environment variable deleted successfully: ${t}`),!0}getAllEnv(){let t=L.originalEnvVars,r=L.envVarConfig,n={};for(let[i,s]of Object.entries(t)){let a=r[i]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[i]={value:s,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(t){return this.getAllEnv()[t]}async setEnv(t,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(t,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(t){throw new Error("Method 'delEnv' must be implemented")}async checkParams(t,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(t,r,n){throw new Error("Method 'deploy' must be implemented")}}});var B8,g_t=ve(()=>{rI();Ot();Ct();yr();B8=class extends kc{API_URL="https://api.cloudflare.com";async _getAllEnvs(t,r,n){let i=`${this.API_URL}/client/v4/accounts/${t}/workers/scripts/${r}/settings`,s={headers:{Authorization:`Bearer ${n}`}},a=await Ie(i,s);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(t,r,n){let i=t.findIndex(s=>s.name===r);return n==null?i!==-1&&t.splice(i,1):i!==-1?t[i].text=n:t.push({name:r,text:n,type:"plain_text"}),t}async setEnv(t,r){try{let n=await this._getAllEnvs(L.deployPlatformAccount,L.deployPlatformProject,L.deployPlatformToken);if(n===null){x("error","[server] \u2717 Failed to set environment variable: envs is null");return}let i=`${this.API_URL}/client/v4/accounts/${L.deployPlatformAccount}/workers/scripts/${L.deployPlatformProject}/settings`,s={headers:{Authorization:`Bearer ${L.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,t,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await YF(i,a,s),this.updateLocalEnv(t,r)}catch(n){x("error","[server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){return await this.setEnv(t,null),this.delLocalEnv(t)}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(i){return x("error","checkParams failed! accountId, projectId or token is not valid:",i.message),!1}}async deploy(){return x("log","After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var $8,y_t=ve(()=>{rI();Ot();Ct();yr();$8=class extends kc{API_URL="https://api.vercel.com";async _getAllEnvs(t,r){let n=`${this.API_URL}/v10/projects/${t}/env`,i={headers:{Authorization:`Bearer ${r}`}};return(await Ie(n,i)).data.envs}async _getEevId(t){try{let n=(await this._getAllEnvs(L.deployPlatformProject,L.deployPlatformToken)).find(i=>i.key===t);return n||null}catch(r){x("error","[server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(t,r){let n=await this._getEevId(t);if(!n){x("error","[server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let i=`${this.API_URL}/v9/projects/${L.deployPlatformProject}/env/${n.id}`,s={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:t,value:r.toString(),target:n.target,type:n.type};return await YF(i,JSON.stringify(a),s),this.updateLocalEnv(t,r)}catch(i){x("error","[server] \u2717 Failed to set environment variable:",i.message)}}async addEnv(t,r){try{let n=`${this.API_URL}/v10/projects/${L.deployPlatformProject}/env`,i={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}},s={key:t,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Nn(n,JSON.stringify(s),i),this.updateLocalEnv(t,r)}catch(n){x("error","[server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(t){let r=await this._getEevId(t);if(!r){x("error","[server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${L.deployPlatformProject}/env/${r.id}`,i={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}};return await WF(n,i),this.delLocalEnv(t)}catch(n){x("error","[server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(r,n),!0}catch(i){return x("error","checkParams failed! projectId or token is not valid:",i.message),!1}}async deploy(){try{let t=`${this.API_URL}/v6/deployments?projectId=${L.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${L.deployPlatformToken}`}},n=await Ie(t,r),i;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)i=n.data.deployments[0].uid;else return x("error","[server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let s=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:L.deployPlatformProject,deploymentId:i,target:"production"},u=await Nn(s,JSON.stringify(o),a);return u?.data?.id?!0:(x("error","[server] \u2717 Failed to deploy:",JSON.stringify(u?.data)),!1)}catch(t){return x("error","[server] \u2717 Failed to deploy:",t.message),!1}}}});var F8,__t=ve(()=>{rI();Ot();Ct();yr();F8=class extends kc{API_URL="https://api.netlify.com";async _getAllEnvs(t,r,n){let i=`${this.API_URL}/api/v1/accounts/${t}/env?site_id=${r}`,s={headers:{Authorization:`Bearer ${n}`}};return await Ie(i,s)}async setEnv(t,r){try{let n=`${this.API_URL}/api/v1/accounts/${L.deployPlatformAccount}/env/${t}?site_id=${L.deployPlatformProject}`,i={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}},s={key:t,values:[{context:"all",value:r.toString()}]};return await SYe(n,JSON.stringify(s),i),this.updateLocalEnv(t,r)}catch(n){x("error","[server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){try{let n=`${this.API_URL}/api/v1/accounts/${L.deployPlatformAccount}/env?site_id=${L.deployPlatformProject}`,i={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}};return await Nn(n,JSON.stringify([{key:t,values:[{context:"all",value:r}]}]),i),this.updateLocalEnv(t,r)}catch(n){x("error","[server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(t){try{let r=`${this.API_URL}/api/v1/accounts/${L.deployPlatformAccount}/env/${t}?site_id=${L.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}};return await WF(r,n),this.delLocalEnv(t)}catch(r){x("error","[server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(i){return x("error","checkParams failed! accountId, projectId or token is not valid:",i.message),!1}}async deploy(){try{let t=`${this.API_URL}/api/v1/sites/${L.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${L.deployPlatformToken}`,"Content-Type":"application/json"}},i=await Nn(t,JSON.stringify({}),r);return i?.data?.id?!0:(x("error","[server] \u2717 Failed to deploy:",JSON.stringify(i?.data)),!1)}catch(t){return x("error","[server] \u2717 Failed to deploy:",t.message),!1}}}});var U8,A_t=ve(()=>{rI();Ot();Ct();yr();U8=class extends kc{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(t,r){let n=`${this.API_URL}`,i={headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}};return await Nn(n,JSON.stringify(r),i)}async _getAllEnvs(t,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:t},i=await this._httpPost(r,n);if(i?.data?.Code!==0)return null;let s=i?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(s.map(({Key:a,Value:o})=>[a,o]))}async setEnv(t,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:L.deployPlatformProject,EnvVars:[{Key:t,Value:r.toString()}]};return await this._httpPost(L.deployPlatformToken,n),this.updateLocalEnv(t,r)}catch(n){x("error","[server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:L.deployPlatformProject,EnvVars:[t]};return await this._httpPost(L.deployPlatformToken,r),this.delLocalEnv(t)}catch(r){x("error","[server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(r,n),!0}catch(i){return x("error","checkParams failed! accountId, projectId or token is not valid:",i.message),!1}}async deploy(){try{let t={Action:"CreatePagesDeployment",ProjectId:L.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(L.deployPlatformToken,t);return r?.data?.Code!==0?(x("error","[server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(t){return x("error","[server] \u2717 Failed to deploy:",t.message),!1}}}});function $4r(){let e=[globalThis.__filename,typeof process<"u"&&Array.isArray(process.argv)?process.argv[1]:""].filter(r=>typeof r=="string"&&r&&r!=="[stdin]");for(let r of e){let n=r.replace(/\\/g,"/"),i="/vendor/danmu_api/",s=n.lastIndexOf(i);if(s!==-1)return r.slice(0,s+i.length-1)}return(typeof process<"u"&&typeof process.cwd=="function"?process.cwd():"")||"."}function q8(){let e=$4r(),t=e.replace(/\\/g,"/"),r="/vendor/danmu_api",n=t.lastIndexOf(r);return n!==-1?e.slice(0,n+r.length):_y.default.resolve(e||".","..","..")}function F4r(e){return e?_y.default.isAbsolute(e)?e:_y.default.resolve(q8(),e):""}function nI(){let e=process.env.DANMU_API_ENV_FILE||"";return e&&e.trim()?F4r(e.trim()):_y.default.join(q8(),"config",".env")}function pge(){return _y.default.dirname(nI())}function v_t(){return _y.default.join(q8(),"config")}function b_t(){return _y.default.join(q8(),"config_example")}function vO(){let e=pge();return fge.default.existsSync(e)||fge.default.mkdirSync(e,{recursive:!0}),e}var fge,_y,hge=ve(()=>{fge=Se(require("fs"),1),_y=Se(require("path"),1)});var qm,j8,E_t=ve(()=>{rI();Ct();qm=Se(require("fs"),1);hge();j8=class extends kc{updateConfigValue(t,r){let n=nI();vO(),qm.default.existsSync(n)||(qm.default.writeFileSync(n,"","utf8"),x("info",`[server] Created missing .env file: ${n}`));let i=qm.default.existsSync(n);if(!i)throw new Error(`.env not found: ${n}`);let s=!1;try{let a=r;if(t==="BLOCKED_WORDS"&&!a.startsWith('"')&&!a.endsWith('"')&&(a=`"${a}"`),i){let u=qm.default.readFileSync(n,"utf8").split(` -`),c=!1;for(let l=0;l{let u=o.trim();if(!u||u.startsWith("#"))return!0;let c=u.match(/^([^=]+)=/);return!(c&&c[1].trim()===t)});qm.default.writeFileSync(r,a.join(` -`),"utf8"),x("info",`[server] Deleted ${t} from .env`),n=!0}return n?this.delLocalEnv(t):!1}catch(i){x("error","[server] \u2717 Failed to delete environment variable:",i.message)}}}});var xp,H8=ve(()=>{g_t();y_t();__t();A_t();E_t();xp=class{static async getHandler(t){switch(t?.toLowerCase()){case"cloudflare":return new B8;case"vercel":return new $8;case"netlify":return new F8;case"edgeone":return new U8;case"node":return new j8;default:throw new Error(`Unsupported deploy platform: ${t}`)}}}});function mge(){return new Response(h_t.replace("globals.currentToken",L.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function K8(e=!1){let t=L.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...L.accessedEnvVars,localCacheValid:L.localCacheValid,redisValid:L.redisValid,localRedisValid:L.localRedisValid,aiValid:L.aiValid,deployPlatform:L.deployPlatform};Object.keys(n).forEach(o=>{let u=t[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},c=u.category||"system";r[c].push({key:o,value:n[o].value||n[o],type:n[o].type||u.type||"text",description:u.description||"\u65E0\u63CF\u8FF0",options:n[o].options||u.options})});let s=(L.adminToken||"").trim()!=="",a={...L.originalEnvVars};return(!e||L.currentToken!==L.adminToken)&&Object.keys(a).forEach(o=>{(L.currentToken!==L.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),Qe({message:"Welcome to the LogVar Danmu API server",version:L.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:t,originalEnvVars:a,hasAdminToken:s,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/claw\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function S_t(){try{let e=L.deployPlatform;if(x("info",`[server] Deployment request received for platform: ${e}`),e.toLowerCase()==="node")return x("info","[server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),Qe({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let t=await xp.getHandler(e);return t?await t.deploy()?(x("info",`[server] Deployment triggered successfully for platform: ${e}`),Qe({success:!0,message:"Deployment triggered successfully"},200)):(x("error",`[server] Failed to trigger deployment for platform: ${e}`),Qe({success:!1,message:"Failed to trigger deployment"},500)):(x("error",`[server] No handler found for platform: ${e}`),Qe({success:!1,message:`No handler found for platform: ${e}`},400))}catch(e){return x("error",`[server] Deployment error: ${e.message}`),Qe({success:!1,message:`Deployment failed: ${e.message}`},500)}}function w_t(){let e=L.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${zQe(r.message)}`).join(` -`),t=e;return L.currentToken!==L.adminToken&&(t=e.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,i)=>{let s=i.replace(/[^.\s\n\r]/g,"*");return n+s})),new Response(t,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function I_t(){return L.logBuffer=[],Qe({success:!0,message:"Logs cleared"},200)}async function x_t(){try{L.animes=[],L.episodeIds=[],L.episodeNum=10001,L.lastSelectMap=new Map,L.reqRecords=[],L.todayReqNum=0,L.searchCache=new Map,L.commentCache=new Map,L.requestHistory=new Map,x("info","[server] Memory cache cleared successfully");try{if(L.localCacheValid){let{updateLocalCaches:e}=await Promise.resolve().then(()=>(Ei(),VYe));await e(),x("info","[server] Local cache cleared successfully")}}catch(e){x("warn",`[server] Local cache may not be available: ${e.message}`)}try{if(L.redisValid){let{updateRedisCaches:e}=await Promise.resolve().then(()=>(r5(),MYe));await e(),x("info","[server] Redis cache cleared successfully")}}catch(e){x("warn",`[server] Redis may not be available: ${e.message}`)}try{if(L.localRedisValid){let{updateLocalRedisCaches:e}=await Promise.resolve().then(()=>(Vk(),_8));await e(),x("info","[server] LocalRedis cache cleared successfully")}}catch(e){x("warn",`[server] LocalRedis may not be available: ${e.message}`)}return x("info","[server] All caches cleared successfully"),Qe({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(e){return x("error",`[server] Cache clear failed: ${e.message}`),Qe({success:!1,message:`Cache clear failed: ${e.message}`},500)}}function C_t(){let e=[...L.reqRecords].reverse(),t=L.todayReqNum||0;return L.currentToken!==L.adminToken&&(e=e.map(r=>{if(r.clientIp){let n=r.clientIp.replace(/[^.]/g,"*");return{...r,clientIp:n}}return r})),Qe({records:e,todayReqNum:t},200)}var T_t=ve(()=>{Ot();yr();m_t();Ct();H8()});async function N_t(e){try{let{key:t,value:r}=await e.json();if(!t)return Qe({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=L.deployPlatform;return await(await xp.getHandler(n)).setEnv(t,r)?Qe({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u8BBE\u7F6E\u6210\u529F`}):Qe({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(t){return console.error("\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),Qe({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function R_t(e){try{let{key:t,value:r}=await e.json();if(!t)return Qe({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=L.deployPlatform;return await(await xp.getHandler(n)).addEnv(t,r)?Qe({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u6DFB\u52A0\u6210\u529F`}):Qe({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u6DFB\u52A0\u5931\u8D25`},500)}catch(t){return console.error("\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),Qe({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function D_t(e){try{let{key:t}=await e.json();if(!t)return Qe({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=L.deployPlatform;return await(await xp.getHandler(r)).delEnv(t)?Qe({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u5220\u9664\u6210\u529F`}):Qe({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u5220\u9664\u5931\u8D25`},500)}catch(t){return console.error("\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),Qe({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function k_t(e){try{let t=await e.json(),r=t.aiBaseUrl||L.aiBaseUrl||"https://api.openai.com/v1",n=t.aiModel||L.aiModel||"gpt-4o",i=t.aiApiKey||L.aiApiKey;if(!i)return Qe({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new um({baseURL:r,model:n,apiKey:i,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?Qe({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):Qe({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(t){return console.error("AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",t),Qe({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${t.message}`},500)}}var O_t=ve(()=>{yr();H8();Ot();m5()});function P_t(){try{if(L&&typeof L.bilibliCookie=="string"&&L.bilibliCookie)return L.bilibliCookie}catch{}try{if(L&&L.env&&typeof L.env.BILIBILI_COOKIE=="string"&&L.env.BILIBILI_COOKIE)return L.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function q4r(e){try{let t=e.match(/SESSDATA=([^;]+)/);if(!t)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=t[1],n=decodeURIComponent(r),i=Math.floor(Date.now()/1e3),s=(n.match(/\d{10,}/g)||[]).map(u=>Number(u)).filter(u=>Number.isFinite(u)),a=10*365*24*60*60,o=s.filter(u=>u>i&&u0)return Math.max(...o);if(n.includes(",")){let u=n.split(",");if(u.length>1){let c=parseInt(u[1],10);if(!isNaN(c)&&c>i)return c}}}catch{}return Math.floor(Date.now()/1e3)+30*24*60*60}async function M_t(e){if(!e)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!e.includes("SESSDATA")||!e.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let t=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:e,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!t.ok){let n=await t.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${t.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await t.json()}catch(n){let i=await t.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${i?i.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(t){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+t.message}}}async function L_t(e,t="saved"){if(!e)return{success:!0,data:{isValid:!1,checked:t,error:"\u672A\u914D\u7F6ECookie"}};let r=await M_t(e);return r.isValid?{success:!0,data:{isValid:!0,checked:t,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:q4r(e)}}:{success:!0,data:{isValid:!1,checked:t,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function B_t(){try{let e=P_t(),t=await L_t(e,"saved");return Qe(t)}catch(e){return Qe({success:!1,message:e.message},500)}}async function $_t(e){try{let t={};try{t=await e.json()}catch{t={}}let r=typeof t.cookie=="string"?t.cookie.trim():"",n=!r||/^\*+$/.test(r),i=n?P_t():r,a=await L_t(i,n?"saved":"input");return Qe(a)}catch(t){return Qe({success:!1,message:t.message},500)}}async function F_t(){try{let t=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return t.code!==0?Qe({success:!1,message:t.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(U4r.set(t.data.qrcode_key,{createTime:Date.now(),status:"generated"}),Qe({success:!0,data:t.data}))}catch(e){return Qe({success:!1,message:e.message},500)}}function j4r(e){let t=new Map,r=[];try{if(e?.headers&&typeof e.headers.getSetCookie=="function")r=e.headers.getSetCookie()||[];else{let c=e?.headers?.get?.("set-cookie");c&&(r=[c])}}catch{r=[]}for(let c of r){if(!c||typeof c!="string")continue;let l=c.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),p=l.slice(d+1).trim();f&&t.set(f,p)}let n=t.get("SESSDATA"),i=t.get("bili_jct"),s=t.get("DedeUserID"),a=t.get("DedeUserID__ckMd5"),o=t.get("sid");if(!n)return null;let u=[`SESSDATA=${n}`];return i&&u.push(`bili_jct=${i}`),s&&u.push(`DedeUserID=${s}`),a&&u.push(`DedeUserID__ckMd5=${a}`),o&&u.push(`sid=${o}`),u.join("; ")}async function U_t(e){try{let t=await e.json(),r=t.qrcodeKey||t.qrcode_key;if(!r)return Qe({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${r}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),i=await n.json(),s=null;if(i?.data?.code===0&&(s=j4r(n),!s&&i?.data?.url))try{let o=new URL(i.data.url),u=new URLSearchParams(o.search),c=decodeURIComponent(u.get("SESSDATA")||""),l=decodeURIComponent(u.get("bili_jct")||""),d=decodeURIComponent(u.get("DedeUserID")||"");if(c){let f=[`SESSDATA=${c}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),s=f.join("; ")}}catch{}let a={success:!0,data:{code:i?.data?.code,message:i?.data?.message||""}};return s&&(a.data.cookie=s),Qe(a)}catch(t){return Qe({success:!1,message:t.message},500)}}async function q_t(e){try{let r=((await e.json()).cookie||"").trim();if(!r)return Qe({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return Qe({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await M_t(r);if(!n.isValid)return Qe({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let i=L.deployPlatform,s=await xp.getHandler(i);return s?await s.setEnv("BILIBILI_COOKIE",r)?Qe({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):Qe({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):Qe({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${i||"unknown"}`},400)}catch(t){return Qe({success:!1,message:t.message},500)}}var U4r,j_t=ve(()=>{yr();Ct();Ot();H8();U4r=new Map});async function K_t(e,t,r,n,i){vt=li.init(t);let s=new URL(e.url),a=s.pathname,o=e.method,u=a.includes("/search")||a.includes("/match");if(vt.useBangumiData&&await _5(r,u,i),vt.deployPlatform=r,r==="node"){await _ae(a,r);let{judgeLocalRedisValid:m}=await Promise.resolve().then(()=>(Vk(),_8));await m(a)}if(await eae(a),!vt.aiValid&&vt.aiBaseUrl&&vt.aiModel&&vt.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new um({baseURL:vt.aiBaseUrl,model:vt.aiModel,apiKey:vt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(vt.aiValid=!0),x("info",`request url: ${JSON.stringify(s)}`),x("info",`request path: ${a}`),x("info",`client ip: ${n}`),vt.ipBlacklist?.length&&vt.ipBlacklist.some(y=>H4r(y,n)))return x("warn",`[IP Blacklist] Blocked request from IP: ${n}`),Qe({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let c=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment"],d=c[0]||"",f=vt.token==="87654321",p=d===vt.token||d===vt.adminToken;if(vt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&vt.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await yae(),vt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await Zse(),r==="node"&&vt.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:m}=await Promise.resolve().then(()=>(Vk(),_8));await m()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(m=>a.includes(m))){let m=vt.reqRecords.length>0?vt.reqRecords[vt.reqRecords.length-1]:null,y=new Date().toDateString();if(m){let E=new Date(m.timestamp).toDateString();console.log("currentDate: ",y),console.log("lastDate: ",E),E!==y?vt.todayReqNum=1:vt.todayReqNum++}else vt.todayReqNum=1;let g=e.url,v=g.indexOf("/api/v2");v!==-1&&(g=g.substring(v));let A=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let E=e.clone();if((E.headers.get("content-type")||"").includes("application/json"))A=await E.json();else{let C=await E.text();C&&(A=JSON.parse(C))}}catch{A=null}let _={interface:g,params:A,timestamp:new Date().toISOString(),method:o,clientIp:n};vt.reqRecords.push(_),vt.reqRecords.length>vt.MAX_RECORDS&&(vt.reqRecords=vt.reqRecords.slice(-vt.MAX_RECORDS))}if(a==="/"&&o==="GET")return mge();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(vt.token==="87654321"){if(c.length>0){if(c[0]==="87654321"||c[0]===vt.adminToken)a="/"+c.slice(1).join("/");else if(!l.includes(c[0]))return a==="/api/config"&&o==="GET"?K8(!1):(x("error",`Invalid token in path: ${a}`),Qe({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(c.length<1||c[0]!==vt.token&&c[0]!==vt.adminToken)return a==="/api/config"&&o==="GET"?K8(!1):(x("error",`Invalid or missing token in path: ${a}`),Qe({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+c.slice(1).join("/")}if(a==="/api/config"&&o==="GET")return K8(!0);if(a==="/api/reqrecords"&&o==="GET")return C_t();if(x("info",a),a!=="/"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){x("info",`[Path Check] Starting path normalization for: "${a}"`);let m=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)x("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==m?x("info",`[Path Check] Path after cleanup: "${a}"`):x("info","[Path Check] Path after cleanup: No cleanup needed.");let y=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(x("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(x("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(x("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===y&&x("info","[Path Check] Prefix Check: No prefix addition needed."),x("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return mge();if(a==="/api/v2/search/anime"&&o==="GET")return L8(s);if(a==="/api/v2/search/episodes"&&o==="GET")return Hyt(s);if(a==="/api/v2/match"&&o==="POST")return jyt(s,e,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return uge(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let m=s.searchParams.get("format"),y=s.searchParams.get("url"),g=s.searchParams.get("segmentflag"),v=s.searchParams.get("duration"),A=g==="true"||g==="1",_=v==="true"||v==="1";if(y){if(am(y)!==null)return x("info",`[Rate Limit] Cache hit for URL: ${y}, skipping rate limit check`),dge(y,m,A,_);let I=n==="127.0.0.1"||n==="::1"||n==="localhost";if(vt.rateLimitMaxRequests>0&&!I){let N=Date.now(),T=60*1e3;d5(N),vt.requestHistory.has(n)||vt.requestHistory.set(n,[]);let O=vt.requestHistory.get(n).filter(P=>N-P<=T);if(O.length>=vt.rateLimitMaxRequests)return x("warn",`[Rate Limit] IP ${n} exceeded rate limit (${O.length}/${vt.rateLimitMaxRequests} requests in 1 minute)`),Qe({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);O.push(N),vt.requestHistory.set(n,O),x("info",`[Rate Limit] IP ${n} request count: ${O.length}/${vt.rateLimitMaxRequests}`)}return dge(y,m,A,_)}if(!a.startsWith("/api/v2/comment/"))return x("error","Missing commentId or url parameter"),Qe({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let E=parseInt(a.split("/").pop()),S=UR(E);if(S&&am(S)!==null)return x("info",`[Rate Limit] Cache hit for URL: ${S}, skipping rate limit check`),lge(a,m,A,n,_);if(vt.rateLimitMaxRequests>0){let C=Date.now(),I=60*1e3;d5(C),vt.requestHistory.has(n)||vt.requestHistory.set(n,[]);let T=vt.requestHistory.get(n).filter(k=>C-k<=I);if(T.length>=vt.rateLimitMaxRequests)return x("warn",`[Rate Limit] IP ${n} exceeded rate limit (${T.length}/${vt.rateLimitMaxRequests} requests in 1 minute)`),Qe({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);T.push(C),vt.requestHistory.set(n,T),x("info",`[Rate Limit] IP ${n} request count: ${T.length}/${vt.rateLimitMaxRequests}`)}else isLocalBypassIp&&x("info",`[Rate Limit] Bypass for local IP: ${n}`);return lge(a,m,A,n,_)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let m=s.searchParams.get("format"),y=await e.json(),g;try{g=dw.fromJson(y)}catch{return x("error","Invalid JSON in request body for segment"),Qe({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Kyt(g,m)}catch(m){return x("error",`Error processing segmentcomment request: ${m.message}`),Qe({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?w_t():a==="/api/logs/clear"&&o==="POST"?I_t():a==="/api/env/set"&&o==="POST"?N_t(e):a==="/api/env/add"&&o==="POST"?R_t(e):a==="/api/env/del"&&o==="POST"?D_t(e):a==="/api/deploy"&&o==="POST"?S_t():a==="/api/cache/clear"&&o==="POST"?x_t():a==="/api/cookie/status"&&o==="GET"?B_t():a==="/api/cookie/qr/generate"&&o==="POST"?F_t():a==="/api/cookie/qr/check"&&o==="POST"?U_t(e):a==="/api/cookie/verify"&&o==="POST"?$_t(e):a==="/api/cookie/save"&&o==="POST"?q_t(e):a==="/api/ai/verify"&&o==="POST"?k_t(e):Qe({message:"Not found"},404)}function H4r(e,t){return!e||!t||t==="unknown"?!1:e.type==="exact"?e.value===t:e.type==="regex"?e.value.test(t):e.type==="cidr"?K4r(t,e.ip,e.prefix):!1}function K4r(e,t,r){if(e.includes(":")||t.includes(":")){let o=H_t(e),u=H_t(t);if(!o||!u||r<0||r>128)return!1;let c=Math.floor(r/8),l=r%8;for(let d=0;d0){let d=255<<8-l&255;return(o[c]&d)===(u[c]&d)}return!0}let i=gge(e),s=gge(t);if(i===null||s===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(i&a)===(s&a)}function gge(e){let t=e.split(".");if(t.length!==4)return null;let r=t.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function H_t(e){if(!e||typeof e!="string"||!e.includes(":"))return null;let r=e.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],i=r[1]?r[1].split(":").filter(Boolean):[],s=u=>{if(u.length===0)return u;let c=u[u.length-1];if(!c.includes("."))return u;let l=gge(c);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...u.slice(0,-1),d,f]};if(n=s(n),i=s(i),!n||!i)return null;if(r.length===1){if(n.length!==8)return null}else{let u=n.length+i.length;if(u>8)return null;let c=8-u;i=new Array(c).fill("0").concat(i)}let a=n.concat(i);if(a.length!==8)return null;let o=[];for(let u of a){if(!/^[0-9a-fA-F]{1,4}$/.test(u))return null;let c=parseInt(u,16);o.push(c>>8&255,c&255)}return o}var vt,V_t=ve(()=>{Ot();yr();Ct();r5();Ei();oy();m5();uy();Vyt();T_t();O_t();rs();j_t()});var Q_t=b(()=>{var V8=require("module"),yge=require("path"),z_t=yge.resolve(__dirname),iI="20.19.0",_ge="node-fetch",Ui="[esm-shim]",V4r=` +`});var Yc,aT=ie(()=>{Wt();Kt();Yc=class{constructor(){}updateLocalEnv(t,r){return typeof F.env<"u"?F.env[t]=r:typeof process<"u"&&(process.env[t]=r),F.reInit(),R("info",`[system] [Server] \u2713 Environment variable updated successfully: ${t}`),!0}delLocalEnv(t){return typeof F.env<"u"&&F.env[t]?delete F.env[t]:typeof process<"u"&&process.env?.[t]&&delete process.env[t],F.reInit(),R("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${t}`),!0}getAllEnv(){let t=F.originalEnvVars,r=F.envVarConfig,n={};for(let[s,i]of Object.entries(t)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(t){return this.getAllEnv()[t]}async setEnv(t,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(t,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(t){throw new Error("Method 'delEnv' must be implemented")}async checkParams(t,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(t,r,n){throw new Error("Method 'deploy' must be implemented")}}});var SH,TCt=ie(()=>{aT();Wt();Kt();Hr();SH=class extends Yc{API_URL="https://api.cloudflare.com";async _getAllEnvs(t,r,n){let s=`${this.API_URL}/client/v4/accounts/${t}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await Me(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(t,r,n){let s=t.findIndex(i=>i.name===r);return n==null?s!==-1&&t.splice(s,1):s!==-1?t[s].text=n:t.push({name:r,text:n,type:"plain_text"}),t}async setEnv(t,r){try{let n=await this._getAllEnvs(F.deployPlatformAccount,F.deployPlatformProject,F.deployPlatformToken);if(n===null){R("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${F.deployPlatformAccount}/workers/scripts/${F.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${F.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,t,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await M9(s,a,i),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){return await this.setEnv(t,null),this.delLocalEnv(t)}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return R("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var TH,bCt=ie(()=>{aT();Wt();Kt();Hr();TH=class extends Yc{API_URL="https://api.vercel.com";async _getAllEnvs(t,r){let n=`${this.API_URL}/v10/projects/${t}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await Me(n,s)).data.envs}async _getEevId(t){try{let n=(await this._getAllEnvs(F.deployPlatformProject,F.deployPlatformToken)).find(s=>s.key===t);return n||null}catch(r){R("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(t,r){let n=await this._getEevId(t);if(!n){R("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${F.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:t,value:r.toString(),target:n.target,type:n.type};return await M9(s,JSON.stringify(a),i),this.updateLocalEnv(t,r)}catch(s){R("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(t,r){try{let n=`${this.API_URL}/v10/projects/${F.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:t,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Gn(n,JSON.stringify(i),s),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(t){let r=await this._getEevId(t);if(!r){R("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${F.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}};return await OR(n,s),this.delLocalEnv(t)}catch(n){R("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let t=`${this.API_URL}/v6/deployments?projectId=${F.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${F.deployPlatformToken}`}},n=await Me(t,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:F.deployPlatformProject,deploymentId:s,target:"production"},c=await Gn(i,JSON.stringify(o),a);return c?.data?.id?!0:(R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});var bH,ICt=ie(()=>{aT();Wt();Kt();Hr();bH=class extends Yc{API_URL="https://api.netlify.com";async _getAllEnvs(t,r,n){let s=`${this.API_URL}/api/v1/accounts/${t}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await Me(s,i)}async setEnv(t,r){try{let n=`${this.API_URL}/api/v1/accounts/${F.deployPlatformAccount}/env/${t}?site_id=${F.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:t,values:[{context:"all",value:r.toString()}]};return await Iit(n,JSON.stringify(i),s),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){try{let n=`${this.API_URL}/api/v1/accounts/${F.deployPlatformAccount}/env?site_id=${F.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}};return await Gn(n,JSON.stringify([{key:t,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(t){try{let r=`${this.API_URL}/api/v1/accounts/${F.deployPlatformAccount}/env/${t}?site_id=${F.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}};return await OR(r,n),this.delLocalEnv(t)}catch(r){R("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let t=`${this.API_URL}/api/v1/sites/${F.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${F.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Gn(t,JSON.stringify({}),r);return s?.data?.id?!0:(R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});var IH,RCt=ie(()=>{aT();Wt();Kt();Hr();IH=class extends Yc{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(t,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}};return await Gn(n,JSON.stringify(r),s)}async _getAllEnvs(t,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:t},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(t,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:F.deployPlatformProject,EnvVars:[{Key:t,Value:r.toString()}]};return await this._httpPost(F.deployPlatformToken,n),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:F.deployPlatformProject,EnvVars:[t]};return await this._httpPost(F.deployPlatformToken,r),this.delLocalEnv(t)}catch(r){R("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let t={Action:"CreatePagesDeployment",ProjectId:F.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(F.deployPlatformToken,t);return r?.data?.Code!==0?(R("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});var RH,CCt=ie(()=>{aT();Wt();Kt();Hr();RH=class extends Yc{API_URL="https://huggingface.co";get repoId(){return`${F.deployPlatformAccount}/${F.deployPlatformProject}`}_getOptions(t=F.deployPlatformToken){return{headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"}}}_getVariablesUrl(t){return`${this.API_URL}/api/spaces/${t}/variables`}async _getAllEnvs(t,r,n){let s=`${t}/${r}`,i=this._getVariablesUrl(s);return(await Me(i,this._getOptions(n)))?.data}async setEnv(t,r){try{let n=this._getVariablesUrl(this.repoId),s={key:t,value:r.toString()};return await Gn(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(t,r)}catch(n){R("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(t,r){return await this.setEnv(t,r)}async delEnv(t){try{let r=this._getVariablesUrl(this.repoId);return await OR(r,{...this._getOptions(),body:JSON.stringify({key:t})}),this.delLocalEnv(t)}catch(r){R("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(t,r,n){try{return await this._getAllEnvs(t,r,n),!0}catch(s){return R("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let t=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Gn(t,void 0,this._getOptions()),!0}catch(t){return R("error","[system] [Server] \u2717 Failed to deploy:",t.message),!1}}}});function NWr(){let e=[globalThis.__filename,typeof process<"u"&&Array.isArray(process.argv)?process.argv[1]:""].filter(r=>typeof r=="string"&&r&&r!=="[stdin]");for(let r of e){let n=r.replace(/\\/g,"/"),s="/vendor/danmu_api/",i=n.lastIndexOf(s);if(i!==-1)return r.slice(0,i+s.length-1)}return(typeof process<"u"&&typeof process.cwd=="function"?process.cwd():"")||"."}function TSe(){let e=NWr(),t=e.replace(/\\/g,"/"),r="/vendor/danmu_api",n=t.lastIndexOf(r);return n!==-1?e.slice(0,n+r.length):oT.default.resolve(e||".","..","..")}function OWr(e){return e?oT.default.isAbsolute(e)?e:oT.default.resolve(TSe(),e):""}function NC(){let e=process.env.DANMU_API_ENV_FILE||"";return e&&e.trim()?OWr(e.trim()):oT.default.join(TSe(),"config",".env")}function bSe(){return oT.default.dirname(NC())}function xCt(){return oT.default.join(TSe(),"config_example")}function CH(){let e=bSe();return SSe.default.existsSync(e)||SSe.default.mkdirSync(e,{recursive:!0}),e}var SSe,oT,ISe=ie(()=>{SSe=Ne(require("fs"),1),oT=Ne(require("path"),1)});var Sg,Ck,wCt=ie(()=>{aT();Kt();Sg=Ne(require("fs"),1);ISe();Ck=class extends Yc{updateConfigValue(t,r){let n=NC();CH(),Sg.default.existsSync(n)||(Sg.default.writeFileSync(n,"","utf8"),R("info",`[server] Created missing .env file: ${n}`));let s=Sg.default.existsSync(n);if(!s)throw new Error(`.env not found: ${n}`);let i=!1;try{let a=r;if(t==="BLOCKED_WORDS"&&!a.startsWith('"')&&!a.endsWith('"')&&(a=`"${a}"`),s){let c=Sg.default.readFileSync(n,"utf8").split(` +`),u=!1;for(let l=0;l{let c=o.trim();if(!c||c.startsWith("#"))return!0;let u=c.match(/^([^=]+)=/);return!(u&&u[1].trim()===t)});Sg.default.writeFileSync(r,a.join(` +`),"utf8"),R("info",`[system] [Server] Deleted ${t} from .env`),n=!0}return n?this.delLocalEnv(t):!1}catch(s){R("error","[system] [Server] \u2717 Failed to delete environment variable:",s.message)}}}});var Xh,xH=ie(()=>{TCt();bCt();ICt();RCt();CCt();wCt();Xh=class{static async getHandler(t){switch(t?.toLowerCase()){case"cloudflare":return new SH;case"vercel":return new TH;case"netlify":return new bH;case"edgeone":return new IH;case"huggingface":return new RH;case"node":return new Ck;default:return new Ck}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}}});function CSe(){return new Response(vCt.replace("globals.currentToken",F.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function wH(e=!1){let t=F.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...F.accessedEnvVars,localCacheValid:F.localCacheValid,redisValid:F.redisValid,localRedisValid:F.localRedisValid,aiValid:F.aiValid,deployPlatform:F.deployPlatform};Object.keys(n).forEach(o=>{let c=t[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},u=c.category||"system";r[u].push({key:o,value:n[o].value||n[o],type:n[o].type||c.type||"text",description:c.description||"\u65E0\u63CF\u8FF0",options:n[o].options||c.options})});let i=(F.adminToken||"").trim()!=="",a={...F.originalEnvVars};return(!e||F.currentToken!==F.adminToken)&&Object.keys(a).forEach(o=>{(F.currentToken!==F.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),tt({message:"Welcome to the LogVar Danmu API server",version:F.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:t,originalEnvVars:a,hasAdminToken:i,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/hf\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function NCt(){try{let e=F.deployPlatform;if(R("info",`[system] [Server] Deployment request received for platform: ${e}`),e.toLowerCase()==="node")return R("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),tt({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let t=await Xh.getHandler(e);return t?await t.deploy()?(R("info",`[system] [Server] Deployment triggered successfully for platform: ${e}`),tt({success:!0,message:"Deployment triggered successfully"},200)):(R("error",`[system] [Server] Failed to trigger deployment for platform: ${e}`),tt({success:!1,message:"Failed to trigger deployment"},500)):(R("error",`[system] [Server] No handler found for platform: ${e}`),tt({success:!1,message:`No handler found for platform: ${e}`},400))}catch(e){return R("error",`[system] [Server] Deployment error: ${e.message}`),tt({success:!1,message:`Deployment failed: ${e.message}`},500)}}function OCt(){let e=F.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${Fnt(r.message)}`).join(` +`),t=e;return F.currentToken!==F.adminToken&&(t=e.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(t,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function DCt(){return F.logBuffer=[],tt({success:!0,message:"Logs cleared"},200)}async function PCt(){try{F.animes=[],F.episodeIds=[],F.episodeNum=10001,F.lastSelectMap=new Map,F.reqRecords=[],F.todayReqNum=0,F.searchCache=new Map,F.commentCache=new Map,F.requestHistory=new Map;try{rq(!0),F.useBangumiData&&FR(F.deployPlatform,!1).catch(e=>{R("warn",`[system] [Server] Bangumi-Data background reload failed: ${e.message}`)})}catch(e){R("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${e.message}`)}R("info","[system] [Server] Memory cache cleared successfully");try{if(F.localCacheValid){let{updateLocalCaches:e}=await Promise.resolve().then(()=>(oi(),Vit));await e(),R("info","[system] [Server] Local cache cleared successfully")}}catch(e){R("warn",`[system] [Server] Local cache may not be available: ${e.message}`)}try{if(F.redisValid){let{updateRedisCaches:e}=await Promise.resolve().then(()=>(F9(),Mit));await e(),R("info","[system] [Server] Redis cache cleared successfully")}}catch(e){R("warn",`[system] [Server] Redis may not be available: ${e.message}`)}try{if(F.localRedisValid){let{updateLocalRedisCaches:e}=await Promise.resolve().then(()=>(ek(),tH));await e(),R("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(e){R("warn",`[system] [Server] LocalRedis may not be available: ${e.message}`)}return R("info","[system] [Server] All caches cleared successfully"),tt({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(e){return R("error",`[system] [Server] Cache clear failed: ${e.message}`),tt({success:!1,message:`Cache clear failed: ${e.message}`},500)}}function DWr(e){let t=e.indexOf("?");if(t===-1)return e;let r=e.slice(0,t),s=e.slice(t+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function RSe(e){if(e==null)return e;if(Array.isArray(e))return e.map(RSe);if(typeof e=="object"){let t={};for(let r of Object.keys(e))t[r]=RSe(e[r]);return t}return"***"}function LCt(){let e=[...F.reqRecords].reverse(),t=F.todayReqNum||0;return F.currentToken!==F.adminToken&&(e=e.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=DWr(n.interface)),n.params!=null&&(n.params=RSe(n.params)),n})),tt({records:e,todayReqNum:t},200)}function MCt(){try{let e=[...F.animes||[]].reverse(),t=new Map;e.forEach(n=>{n?.source&&n?.animeId&&t.set(`${n.source}_${n.animeId}`,n)});let r=e.filter(n=>!n.isHiddenChild).map(n=>{let s=typeof n.toJson=="function"?n.toJson():{...n},{links:i=[],mergedChildren:a=[],...o}=s;return{...o,episodes:o.episodeCount||o.episodes||1,links:i,mergedChildren:a.map(c=>{let u=t.get(`${c.source}_${c.animeId}`),l=typeof u?.toJson=="function"?u.toJson():u,d=l?.links?.length>0?l.links:c.links||[];return{...c,episodes:c.episodeCount||c.episodes||1,links:d}})}});return tt({success:!0,data:r},200)}catch(e){return R("error",`[system] [Server] Fetch cache animes failed: ${e.message}`),tt({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${e.message}`},500)}}var kCt=ie(()=>{Wt();Hr();SCt();Kt();xH();Vm()});async function BCt(e){try{let{key:t,value:r}=await e.json();if(!t)return tt({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=F.deployPlatform;return await(await Xh.getHandler(n)).setEnv(t,r)?tt({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u8BBE\u7F6E\u6210\u529F`}):tt({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(t){return R("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),tt({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function UCt(e){try{let{key:t,value:r}=await e.json();if(!t)return tt({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=F.deployPlatform;return await(await Xh.getHandler(n)).addEnv(t,r)?tt({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u6DFB\u52A0\u6210\u529F`}):tt({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u6DFB\u52A0\u5931\u8D25`},500)}catch(t){return R("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),tt({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function FCt(e){try{let{key:t}=await e.json();if(!t)return tt({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=F.deployPlatform;return await(await Xh.getHandler(r)).delEnv(t)?tt({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${t} \u5220\u9664\u6210\u529F`}):tt({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${t} \u5220\u9664\u5931\u8D25`},500)}catch(t){return R("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",t),tt({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${t.message}`},500)}}async function $Ct(e){try{let t=await e.json(),r=t.aiBaseUrl||F.aiBaseUrl||"https://api.openai.com/v1",n=t.aiModel||F.aiModel||"gpt-4o",s=t.aiApiKey||F.aiApiKey;if(!s)return tt({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new Hm({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?tt({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):tt({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(t){return R("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",t),tt({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${t.message}`},500)}}var qCt=ie(()=>{Hr();Kt();xH();Wt();X9()});function VCt(){try{if(F&&typeof F.bilibliCookie=="string"&&F.bilibliCookie)return F.bilibliCookie}catch{}try{if(F&&F.env&&typeof F.env.BILIBILI_COOKIE=="string"&&F.env.BILIBILI_COOKIE)return F.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function PWr(e){try{let t=e.match(/SESSDATA=([^;]+)/);if(!t)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=t[1],n=decodeURIComponent(r),s=Math.floor(Date.now()/1e3),i=(n.match(/\d{10,}/g)||[]).map(c=>Number(c)).filter(c=>Number.isFinite(c)),a=10*365*24*60*60,o=i.filter(c=>c>s&&c0)return Math.max(...o);if(n.includes(",")){let c=n.split(",");if(c.length>1){let u=parseInt(c[1],10);if(!isNaN(u)&&u>s)return u}}}catch{}return Math.floor(Date.now()/1e3)+30*24*60*60}async function jCt(e){if(!e)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!e.includes("SESSDATA")||!e.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let t=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:e,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!t.ok){let n=await t.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${t.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await t.json()}catch(n){let s=await t.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${s?s.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(t){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+t.message}}}async function KCt(e,t="saved"){if(!e)return{success:!0,data:{isValid:!1,checked:t,error:"\u672A\u914D\u7F6ECookie"}};let r=await jCt(e);return r.isValid?{success:!0,data:{isValid:!0,checked:t,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:PWr(e)}}:{success:!0,data:{isValid:!1,checked:t,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function GCt(){try{let e=VCt(),t=await KCt(e,"saved");return tt(t)}catch(e){return tt({success:!1,message:e.message},500)}}async function zCt(e){try{let t={};try{t=await e.json()}catch{t={}}let r=typeof t.cookie=="string"?t.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?VCt():r,a=await KCt(s,n?"saved":"input");return tt(a)}catch(t){return tt({success:!1,message:t.message},500)}}async function YCt(){try{let t=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return t.code!==0?tt({success:!1,message:t.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(HCt.set(t.data.qrcode_key,{createTime:Date.now(),status:"generated"}),tt({success:!0,data:t.data}))}catch(e){return tt({success:!1,message:e.message},500)}}function LWr(e){let t=new Map,r=[];try{if(e?.headers&&typeof e.headers.getSetCookie=="function")r=e.headers.getSetCookie()||[];else{let u=e?.headers?.get?.("set-cookie");u&&(r=[u])}}catch{r=[]}for(let u of r){if(!u||typeof u!="string")continue;let l=u.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),h=l.slice(d+1).trim();f&&t.set(f,h)}let n=t.get("SESSDATA"),s=t.get("bili_jct"),i=t.get("DedeUserID"),a=t.get("DedeUserID__ckMd5"),o=t.get("sid");if(!n)return null;let c=[`SESSDATA=${n}`];return s&&c.push(`bili_jct=${s}`),i&&c.push(`DedeUserID=${i}`),a&&c.push(`DedeUserID__ckMd5=${a}`),o&&c.push(`sid=${o}`),c.join("; ")}async function QCt(e){let t=null;try{let r=await e.json();if(t=r.qrcodeKey||r.qrcode_key,!t)return tt({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${t}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),s=await n.json(),i=null;if(s?.data?.code===0&&(i=LWr(n),!i&&s?.data?.url))try{let o=new URL(s.data.url),c=new URLSearchParams(o.search),u=decodeURIComponent(c.get("SESSDATA")||""),l=decodeURIComponent(c.get("bili_jct")||""),d=decodeURIComponent(c.get("DedeUserID")||"");if(u){let f=[`SESSDATA=${u}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),i=f.join("; ")}}catch{}let a={success:!0,data:{code:s?.data?.code,message:s?.data?.message||""}};return i&&(a.data.cookie=i),tt(a)}catch(r){return tt({success:!1,message:r.message},500)}finally{t&&HCt.delete(t)}}async function WCt(e){try{let r=((await e.json()).cookie||"").trim();if(!r)return tt({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return tt({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await jCt(r);if(!n.isValid)return tt({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=F.deployPlatform,i=await Xh.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?tt({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):tt({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):tt({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(t){return tt({success:!1,message:t.message},500)}}var HCt,XCt=ie(()=>{Hr();Kt();Wt();xH();HCt=new Map});async function ZCt(e,t,r,n,s){qt=Js.init(t);let i=new URL(e.url),a=i.pathname,o=e.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(qt.useBangumiData&&await FR(r,c,s),qt.deployPlatform=r,r==="node"){await Ofe(a,r);let{judgeLocalRedisValid:m}=await Promise.resolve().then(()=>(ek(),tH));await m(a)}if(await yfe(a),!qt.aiValid&&qt.aiBaseUrl&&qt.aiModel&&qt.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new Hm({baseURL:qt.aiBaseUrl,model:qt.aiModel,apiKey:qt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(qt.aiValid=!0),R("info",`[system] [Server] request url: ${JSON.stringify(i)}`),R("info",`[system] [Server] request path: ${a}`),R("info",`[system] [Server] client ip: ${n}`),qt.ipBlacklist?.length&&qt.ipBlacklist.some(g=>MWr(g,n)))return R("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),tt({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=qt.token==="87654321",h=d===qt.token||d===qt.adminToken;if(qt.currentToken=h?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&qt.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await Nfe(),qt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await Efe(),r==="node"&&qt.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:m}=await Promise.resolve().then(()=>(ek(),tH));await m()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(m=>a.includes(m))){let m=qt.reqRecords.length>0?qt.reqRecords[qt.reqRecords.length-1]:null,g=new Date().toDateString();if(m){let v=new Date(m.timestamp).toDateString();R("info",`[system] [Server] currentDate: ${g}`),R("info",`[system] [Server] lastDate: ${v}`),v!==g?qt.todayReqNum=1:qt.todayReqNum++}else qt.todayReqNum=1;let _=e.url,y=_.indexOf("/api/v2");y!==-1&&(_=_.substring(y));let A=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let v=e.clone();if((v.headers.get("content-type")||"").includes("application/json"))A=await v.json();else{let I=await v.text();I&&(A=JSON.parse(I))}}catch{A=null}let E={interface:_,params:A,timestamp:new Date().toISOString(),method:o,clientIp:n};qt.reqRecords.push(E),qt.reqRecords.length>qt.MAX_RECORDS&&(qt.reqRecords=qt.reqRecords.slice(-qt.MAX_RECORDS))}if(a==="/"&&o==="GET")return CSe();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(qt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===qt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?wH(!1):(R("error",`[system] [Server] Invalid token in path: ${a}`),tt({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==qt.token&&u[0]!==qt.adminToken)return a==="/api/config"&&o==="GET"?wH(!1):(R("error",`[system] [Server] Invalid or missing token in path: ${a}`),tt({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(R("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return wH(!0);if(a==="/api/reqrecords"&&o==="GET")return LCt();if(R("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){R("info",`[Path Check] Starting path normalization for: "${a}"`);let m=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)R("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==m?R("info",`[Path Check] Path after cleanup: "${a}"`):R("info","[Path Check] Path after cleanup: No cleanup needed.");let g=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(R("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(R("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(R("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===g&&R("info","[Path Check] Prefix Check: No prefix addition needed."),R("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return CSe();if(a==="/api/v2/search/anime"&&o==="GET")return wC(i);if(a==="/api/v2/search/episodes"&&o==="GET")return zRt(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return vSe(i,e);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return vSe(i,e);if(a==="/api/v2/match"&&o==="POST")return GRt(i,e,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return gSe(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let m=i.searchParams.get("format"),g=i.searchParams.get("url"),_=i.searchParams.get("segmentflag"),y=i.searchParams.get("duration"),A=_==="true"||_==="1",E=y==="true"||y==="1";if(g){if(qm(g)!==null)return R("info",`[Utils] [Rate Limit] Cache hit for URL: ${g}, skipping rate limit check`),ESe(g,m,A,E);if(qt.rateLimitMaxRequests>0){let T=Date.now(),x=60*1e3;Y9(T),qt.requestHistory.has(n)||qt.requestHistory.set(n,[]);let D=qt.requestHistory.get(n).filter(M=>T-M<=x);if(D.length>=qt.rateLimitMaxRequests)return R("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${D.length}/${qt.rateLimitMaxRequests} requests in 1 minute)`),tt({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);D.push(T),qt.requestHistory.set(n,D),R("info",`[Utils] [Rate Limit] IP ${n} request count: ${D.length}/${qt.rateLimitMaxRequests}`)}return ESe(g,m,A,E)}if(!a.startsWith("/api/v2/comment/"))return R("error","[system] [Server] Missing commentId or url parameter"),tt({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let v=parseInt(a.split("/").pop()),b=zP(v);if(b&&qm(b)!==null)return R("info",`[Utils] [Rate Limit] Cache hit for URL: ${b}, skipping rate limit check`),ASe(a,m,A,n,E);if(qt.rateLimitMaxRequests>0){let I=Date.now(),T=60*1e3;Y9(I),qt.requestHistory.has(n)||qt.requestHistory.set(n,[]);let w=qt.requestHistory.get(n).filter(D=>I-D<=T);if(w.length>=qt.rateLimitMaxRequests)return R("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${w.length}/${qt.rateLimitMaxRequests} requests in 1 minute)`),tt({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);w.push(I),qt.requestHistory.set(n,w),R("info",`[Utils] [Rate Limit] IP ${n} request count: ${w.length}/${qt.rateLimitMaxRequests}`)}return ASe(a,m,A,n,E)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let m=i.searchParams.get("format"),g=await e.json(),_;try{_=LR.fromJson(g)}catch{return R("error","[system] [Server] Invalid JSON in request body for segment"),tt({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return YRt(_,m)}catch(m){return R("error",`[system] [Server] Error processing segmentcomment request: ${m.message}`),tt({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?OCt():a==="/api/logs/clear"&&o==="POST"?DCt():a==="/api/env/set"&&o==="POST"?BCt(e):a==="/api/env/add"&&o==="POST"?UCt(e):a==="/api/env/del"&&o==="POST"?FCt(e):a==="/api/deploy"&&o==="POST"?NCt():a==="/api/cache/animes"&&o==="GET"?MCt():a==="/api/cache/clear"&&o==="POST"?PCt():a==="/api/cookie/status"&&o==="GET"?GCt():a==="/api/cookie/qr/generate"&&o==="POST"?YCt():a==="/api/cookie/qr/check"&&o==="POST"?QCt(e):a==="/api/cookie/verify"&&o==="POST"?zCt(e):a==="/api/cookie/save"&&o==="POST"?WCt(e):a==="/api/ai/verify"&&o==="POST"?$Ct(e):tt({message:"Not found"},404)}function MWr(e,t){return!e||!t||t==="unknown"?!1:e.type==="exact"?e.value===t:e.type==="regex"?e.value.test(t):e.type==="cidr"?kWr(t,e.ip,e.prefix):!1}function kWr(e,t,r){if(e.includes(":")||t.includes(":")){let o=JCt(e),c=JCt(t);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;d0){let d=255<<8-l&255;return(o[u]&d)===(c[u]&d)}return!0}let s=xSe(e),i=xSe(t);if(s===null||i===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(s&a)===(i&a)}function xSe(e){let t=e.split(".");if(t.length!==4)return null;let r=t.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function JCt(e){if(!e||typeof e!="string"||!e.includes(":"))return null;let r=e.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],s=r[1]?r[1].split(":").filter(Boolean):[],i=c=>{if(c.length===0)return c;let u=c[c.length-1];if(!u.includes("."))return c;let l=xSe(u);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...c.slice(0,-1),d,f]};if(n=i(n),s=i(s),!n||!s)return null;if(r.length===1){if(n.length!==8)return null}else{let c=n.length+s.length;if(c>8)return null;let u=8-c;s=new Array(u).fill("0").concat(s)}let a=n.concat(s);if(a.length!==8)return null;let o=[];for(let c of a){if(!/^[0-9a-fA-F]{1,4}$/.test(c))return null;let u=parseInt(c,16);o.push(u>>8&255,u&255)}return o}var qt,ext=ie(()=>{Wt();Hr();Kt();F9();oi();eE();X9();Vm();ySe();JRt();kCt();qCt();Ki();XCt()});var rxt=S(()=>{var NH=require("module"),wSe=require("path"),txt=wSe.resolve(__dirname),OC="20.19.0",NSe="node-fetch",wi="[esm-shim]",BWr=` ;(function(){ if(exports!==module.exports && typeof exports==='object'){ Object.keys(exports).forEach(k=>{ @@ -8433,101 +10235,264 @@ async function verifyAiConnection() { }) } })(); -`;function z4r(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number),i=Math.max(r.length,n.length);for(let s=0;so)return 1;if(a=0,r="not found",n=!1,i=!1;try{let s=require.resolve(`${_ge}/package.json`),a=require(s);r=a.version,n=a.version.startsWith("3."),i=!t&&n}catch{i=!1}return{nodeVersion:e,nodeFetchVersion:r,isNodeCompatible:t,isNodeFetchV3:n,needsShim:i}}var Tl=Q4r();console.log(`${Ui} Environment: Node ${Tl.nodeVersion}, node-fetch ${Tl.nodeFetchVersion}`);console.log(`${Ui} Node.js compatible (>=${iI}): ${Tl.isNodeCompatible}`);console.log(`${Ui} node-fetch v3: ${Tl.isNodeFetchV3}`);console.log(`${Ui} Needs shim: ${Tl.needsShim}`);Tl.needsShim?G4r():(Tl.isNodeCompatible&&Tl.isNodeFetchV3?console.log(`${Ui} Node.js >=${iI} + node-fetch v3: optimal compatibility, shim disabled`):Tl.isNodeCompatible&&!Tl.isNodeFetchV3?console.log(`${Ui} Node.js >=${iI} + node-fetch v2: native compatibility, shim disabled`):!Tl.isNodeCompatible&&!Tl.isNodeFetchV3?console.log(`${Ui} Node.js <${iI} + node-fetch v2: no ESM issues, shim disabled`):console.log(`${Ui} Shim disabled for optimal performance`),global.loadNodeFetch=async()=>(console.log(`${Ui} loadNodeFetch called but not needed in this environment`),Promise.resolve()));function G4r(){console.log(`${Ui} Compatibility shim enabled for Node.js <${iI} + node-fetch v3`);let e;try{e=require("esbuild")}catch(u){throw console.error(`${Ui} missing dependency: run \`npm install esbuild\``),u}let t=null,r=null;async function n(){return t||r||(r=(async()=>{try{console.log(`${Ui} Loading node-fetch v3 ESM module...`);let u=await import(_ge);return t={default:u.default,fetch:u.default,Request:u.Request,Response:u.Response,Headers:u.Headers,FormData:u.FormData,AbortError:u.AbortError,FetchError:u.FetchError},console.log(`${Ui} node-fetch v3 loaded successfully`),t}catch(u){throw console.error(`${Ui} Failed to load node-fetch v3:`,u.message),u}})(),r)}function i(){let u=function(...l){if(!t)throw new Error(`${Ui} node-fetch v3 must be loaded asynchronously first. Call await global.loadNodeFetch() in your startup code.`);return t.fetch(...l)};return["Request","Response","Headers","FormData","AbortError","FetchError"].forEach(l=>{Object.defineProperty(u,l,{get(){if(!t)throw new Error(`${Ui} node-fetch v3.${l} must be loaded asynchronously first. Call await global.loadNodeFetch() in your startup code.`);return t[l]},enumerable:!0,configurable:!0})}),Object.defineProperty(u,"default",{get(){return u},enumerable:!0,configurable:!0}),u}function s(u,c){let l=u,d=yge.basename(c);if(l.includes("import(")&&(l=l.replace(/(await\s+)?import\s*\(((?:[^()]|\([^)]*\))*)\)/g,(f,p,h)=>(console.log(`${Ui} Converting dynamic import in ${d}`),`${p||""}Promise.resolve(require(${h}))`))),u.includes("import.meta.url")){let f="__importMetaUrl";u.includes(f)?l=l.replace(/import\.meta\.url/g,f):(console.log(`${Ui} Fixing import.meta.url in ${d}`),l=`const ${f} = require('url').pathToFileURL(__filename).href; -`+l,l=l.replace(/import\.meta\.url/g,f))}return l}let a=V8._load;V8._load=function(u,c,l){return u===_ge?(console.log(`${Ui} Intercepting node-fetch require`),i()):a.call(this,u,c,l)};let o=V8.prototype._compile;V8.prototype._compile=function(u,c){try{let l=typeof c=="string"&&c.startsWith(z_t)&&!c.includes("node_modules"),d=/\b(?:import|export)\b/.test(u);if(l&&d){console.log(`${Ui} Transforming ESM syntax in: ${yge.relative(z_t,c)}`);let f=s(u,c),h=e.transformSync(f,{loader:"js",format:"cjs",target:"es2018",sourcemap:"inline"}).code+V4r;return o.call(this,h,c)}}catch(l){console.error(`${Ui} esbuild transform failed:`,c,l.message||l)}return o.call(this,u,c)},global.loadNodeFetch=n,console.log(`${Ui} ESM compatibility shim active with hooks installed`)}});function Z_t(e,t={}){let r=t.entryType||t.type;if(r==="both"&&(r=Oc.FILE_DIR_TYPE),r&&(t.type=r),e){if(typeof e!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(r&&!G_t.includes(r))throw new Error(`readdirp: Invalid type passed. Use one of ${G_t.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=e,new vge(t)}var jm,X_t,Hm,Oc,Age,J_t,Y4r,G_t,W4r,X4r,J4r,Z4r,Y_t,W_t,vge,eAt=ve(()=>{jm=require("node:fs/promises"),X_t=require("node:stream"),Hm=require("node:path"),Oc={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},Age={root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:Oc.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(Age);J_t="READDIRP_RECURSIVE_ERROR",Y4r=new Set(["ENOENT","EPERM","EACCES","ELOOP",J_t]),G_t=[Oc.DIR_TYPE,Oc.EVERYTHING_TYPE,Oc.FILE_DIR_TYPE,Oc.FILE_TYPE],W4r=new Set([Oc.DIR_TYPE,Oc.EVERYTHING_TYPE,Oc.FILE_DIR_TYPE]),X4r=new Set([Oc.EVERYTHING_TYPE,Oc.FILE_DIR_TYPE,Oc.FILE_TYPE]),J4r=e=>Y4r.has(e.code),Z4r=process.platform==="win32",Y_t=e=>!0,W_t=e=>{if(e===void 0)return Y_t;if(typeof e=="function")return e;if(typeof e=="string"){let t=e.trim();return r=>r.basename===t}if(Array.isArray(e)){let t=e.map(r=>r.trim());return r=>t.some(n=>r.basename===n)}return Y_t},vge=class extends X_t.Readable{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let r={...Age,...t},{root:n,type:i}=r;this._fileFilter=W_t(r.fileFilter),this._directoryFilter=W_t(r.directoryFilter);let s=r.lstat?jm.lstat:jm.stat;Z4r?this._stat=a=>s(a,{bigint:!0}):this._stat=s,this._maxDepth=r.depth??Age.depth,this._wantsDir=i?W4r.has(i):!1,this._wantsFile=i?X4r.has(i):!1,this._wantsEverything=i===Oc.EVERYTHING_TYPE,this._root=(0,Hm.resolve)(n),this._isDirent=!r.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let r=this.parent,n=r&&r.files;if(n&&n.length>0){let{path:i,depth:s}=r,a=n.splice(0,t).map(u=>this._formatEntry(u,i)),o=await Promise.all(a);for(let u of o){if(!u)continue;if(this.destroyed)return;let c=await this._getEntryType(u);c==="directory"&&this._directoryFilter(u)?(s<=this._maxDepth&&this.parents.push(this._exploreDir(u.fullPath,s+1)),this._wantsDir&&(this.push(u),t--)):(c==="file"||this._includeAsFile(u))&&this._fileFilter(u)&&this._wantsFile&&(this.push(u),t--)}}else{let i=this.parents.pop();if(!i){this.push(null);break}if(this.parent=await i,this.destroyed)return}}}catch(r){this.destroy(r)}finally{this.reading=!1}}}async _exploreDir(t,r){let n;try{n=await(0,jm.readdir)(t,this._rdOptions)}catch(i){this._onError(i)}return{files:n,depth:r,path:t}}async _formatEntry(t,r){let n,i=this._isDirent?t.name:t;try{let s=(0,Hm.resolve)((0,Hm.join)(r,i));n={path:(0,Hm.relative)(this._root,s),fullPath:s,basename:i},n[this._statsProp]=this._isDirent?t:await this._stat(s)}catch(s){this._onError(s);return}return n}_onError(t){J4r(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let r=t[this._statsProp];if(r.isFile())return"file";if(r.isDirectory())return"directory";if(r&&r.isSymbolicLink()){let n=t.fullPath;try{let i=await(0,jm.realpath)(n),s=await(0,jm.lstat)(i);if(s.isFile())return"file";if(s.isDirectory()){let a=i.length;if(n.startsWith(i)&&n.substr(a,1)===Hm.sep){let o=new Error(`Circular symlink detected: "${n}" points to "${i}"`);return o.code=J_t,this._onError(o)}return"directory"}}catch(i){return this._onError(i),""}}}_includeAsFile(t){let r=t&&t[this._statsProp];return r&&this._wantsEverything&&!r.isDirectory()}}});function tAt(e,t,r,n,i){let s=(a,o)=>{r(e),i(a,o,{watchedPath:e}),o&&e!==o&&G8(Ii.resolve(e,o),nb,Ii.join(e,o))};try{return(0,ib.watch)(e,{persistent:t.persistent},s)}catch(a){n(a);return}}var ib,Qd,Ii,rAt,eBr,Sge,nAt,W8,X8,wge,tBr,rBr,nBr,iAt,Oi,zd,iBr,sBr,nb,z8,sI,aBr,oBr,uBr,Ege,bO,cBr,EO,sAt,Q8,G8,lBr,bge,dBr,Y8,aAt=ve(()=>{ib=require("fs"),Qd=require("fs/promises"),Ii=Se(require("path"),1),rAt=require("os"),eBr="data",Sge="end",nAt="close",W8=()=>{},X8=process.platform,wge=X8==="win32",tBr=X8==="darwin",rBr=X8==="linux",nBr=X8==="freebsd",iAt=(0,rAt.type)()==="OS400",Oi={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},zd=Oi,iBr="watch",sBr={lstat:Qd.lstat,stat:Qd.stat},nb="listeners",z8="errHandlers",sI="rawEmitters",aBr=[nb,z8,sI],oBr=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),uBr=e=>oBr.has(Ii.extname(e).slice(1).toLowerCase()),Ege=(e,t)=>{e instanceof Set?e.forEach(t):t(e)},bO=(e,t,r)=>{let n=e[t];n instanceof Set||(e[t]=n=new Set([n])),n.add(r)},cBr=e=>t=>{let r=e[t];r instanceof Set?r.clear():delete e[t]},EO=(e,t,r)=>{let n=e[t];n instanceof Set?n.delete(r):n===r&&delete e[t]},sAt=e=>e instanceof Set?e.size===0:!e,Q8=new Map;G8=(e,t,r,n,i)=>{let s=Q8.get(e);s&&Ege(s[t],a=>{a(r,n,i)})},lBr=(e,t,r,n)=>{let{listener:i,errHandler:s,rawEmitter:a}=n,o=Q8.get(t),u;if(!r.persistent)return u=tAt(e,r,i,s,a),u?u.close.bind(u):void 0;if(o)bO(o,nb,i),bO(o,z8,s),bO(o,sI,a);else{if(u=tAt(e,r,G8.bind(null,t,nb),s,G8.bind(null,t,sI)),!u)return;u.on(zd.ERROR,async c=>{let l=G8.bind(null,t,z8);if(o&&(o.watcherUnusable=!0),wge&&c.code==="EPERM")try{await(await(0,Qd.open)(e,"r")).close(),l(c)}catch{}else l(c)}),o={listeners:i,errHandlers:s,rawEmitters:a,watcher:u},Q8.set(t,o)}return()=>{EO(o,nb,i),EO(o,z8,s),EO(o,sI,a),sAt(o.listeners)&&(o.watcher.close(),Q8.delete(t),aBr.forEach(cBr(o)),o.watcher=void 0,Object.freeze(o))}},bge=new Map,dBr=(e,t,r,n)=>{let{listener:i,rawEmitter:s}=n,a=bge.get(t),o=a&&a.options;return o&&(o.persistentr.interval)&&((0,ib.unwatchFile)(t),a=void 0),a?(bO(a,nb,i),bO(a,sI,s)):(a={listeners:i,rawEmitters:s,options:r,watcher:(0,ib.watchFile)(t,r,(u,c)=>{Ege(a.rawEmitters,d=>{d(zd.CHANGE,t,{curr:u,prev:c})});let l=u.mtimeMs;(u.size!==c.size||l>c.mtimeMs||l===0)&&Ege(a.listeners,d=>d(e,u))})},bge.set(t,a)),()=>{EO(a,nb,i),EO(a,sI,s),sAt(a.listeners)&&(bge.delete(t),(0,ib.unwatchFile)(t),a.options=a.watcher=void 0,Object.freeze(a))}},Y8=class{constructor(t){this.fsw=t,this._boundHandleError=r=>t._handleError(r)}_watchWithNodeFs(t,r){let n=this.fsw.options,i=Ii.dirname(t),s=Ii.basename(t);this.fsw._getWatchedDir(i).add(s);let o=Ii.resolve(t),u={persistent:n.persistent};r||(r=W8);let c;if(n.usePolling){let l=n.interval!==n.binaryInterval;u.interval=l&&uBr(s)?n.binaryInterval:n.interval,c=dBr(t,o,u,{listener:r,rawEmitter:this.fsw._emitRaw})}else c=lBr(t,o,u,{listener:r,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return c}_handleFile(t,r,n){if(this.fsw.closed)return;let i=Ii.dirname(t),s=Ii.basename(t),a=this.fsw._getWatchedDir(i),o=r;if(a.has(s))return;let u=async(l,d)=>{if(this.fsw._throttle(iBr,t,5)){if(!d||d.mtimeMs===0)try{let f=await(0,Qd.stat)(t);if(this.fsw.closed)return;let p=f.atimeMs,h=f.mtimeMs;if((!p||p<=h||h!==o.mtimeMs)&&this.fsw._emit(zd.CHANGE,t,f),(tBr||rBr||nBr)&&o.ino!==f.ino){this.fsw._closeFile(l),o=f;let m=this._watchWithNodeFs(t,u);m&&this.fsw._addPathCloser(l,m)}else o=f}catch{this.fsw._remove(i,s)}else if(a.has(s)){let f=d.atimeMs,p=d.mtimeMs;(!f||f<=p||p!==o.mtimeMs)&&this.fsw._emit(zd.CHANGE,t,d),o=d}}},c=this._watchWithNodeFs(t,u);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(zd.ADD,t,0))return;this.fsw._emit(zd.ADD,t,r)}return c}async _handleSymlink(t,r,n,i){if(this.fsw.closed)return;let s=t.fullPath,a=this.fsw._getWatchedDir(r);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let o;try{o=await(0,Qd.realpath)(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(a.has(i)?this.fsw._symlinkPaths.get(s)!==o&&(this.fsw._symlinkPaths.set(s,o),this.fsw._emit(zd.CHANGE,n,t.stats)):(a.add(i),this.fsw._symlinkPaths.set(s,o),this.fsw._emit(zd.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(s))return!0;this.fsw._symlinkPaths.set(s,!0)}_handleRead(t,r,n,i,s,a,o){if(t=Ii.join(t,""),o=this.fsw._throttle("readdir",t,1e3),!o)return;let u=this.fsw._getWatchedDir(n.path),c=new Set,l=this.fsw._readdirp(t,{fileFilter:d=>n.filterPath(d),directoryFilter:d=>n.filterDir(d)});if(l)return l.on(eBr,async d=>{if(this.fsw.closed){l=void 0;return}let f=d.path,p=Ii.join(t,f);if(c.add(f),!(d.stats.isSymbolicLink()&&await this._handleSymlink(d,t,p,f))){if(this.fsw.closed){l=void 0;return}(f===i||!i&&!u.has(f))&&(this.fsw._incrReadyCount(),p=Ii.join(s,Ii.relative(s,p)),this._addToNodeFs(p,r,n,a+1))}}).on(zd.ERROR,this._boundHandleError),new Promise((d,f)=>{if(!l)return f();l.once(Sge,()=>{if(this.fsw.closed){l=void 0;return}let p=o?o.clear():!1;d(void 0),u.getChildren().filter(h=>h!==t&&!c.has(h)).forEach(h=>{this.fsw._remove(t,h)}),l=void 0,p&&this._handleRead(t,!1,n,i,s,a,o)})})}async _handleDir(t,r,n,i,s,a,o){let u=this.fsw._getWatchedDir(Ii.dirname(t)),c=u.has(Ii.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!s&&!c&&this.fsw._emit(zd.ADD_DIR,t,r),u.add(Ii.basename(t)),this.fsw._getWatchedDir(t);let l,d,f=this.fsw.options.depth;if((f==null||i<=f)&&!this.fsw._symlinkPaths.has(o)){if(!s&&(await this._handleRead(t,n,a,s,t,i,l),this.fsw.closed))return;d=this._watchWithNodeFs(t,(p,h)=>{h&&h.mtimeMs===0||this._handleRead(p,!1,a,s,t,i,l)})}return d}async _addToNodeFs(t,r,n,i,s){let a=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return a(),!1;let o=this.fsw._getWatchHelpers(t);n&&(o.filterPath=u=>n.filterPath(u),o.filterDir=u=>n.filterDir(u));try{let u=await sBr[o.statMethod](o.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(o.watchPath,u))return a(),!1;let c=this.fsw.options.followSymlinks,l;if(u.isDirectory()){let d=Ii.resolve(t),f=c?await(0,Qd.realpath)(t):t;if(this.fsw.closed||(l=await this._handleDir(o.watchPath,u,r,i,s,o,f),this.fsw.closed))return;d!==f&&f!==void 0&&this.fsw._symlinkPaths.set(d,f)}else if(u.isSymbolicLink()){let d=c?await(0,Qd.realpath)(t):t;if(this.fsw.closed)return;let f=Ii.dirname(o.watchPath);if(this.fsw._getWatchedDir(f).add(o.watchPath),this.fsw._emit(zd.ADD,o.watchPath,u),l=await this._handleDir(f,u,r,i,t,o,d),this.fsw.closed)return;d!==void 0&&this.fsw._symlinkPaths.set(Ii.resolve(t),d)}else l=this._handleFile(o.watchPath,u,r);return a(),l&&this.fsw._addPathCloser(t,l),!1}catch(u){if(this.fsw._handleError(u))return a(),t}}}});var yAt={};ys(yAt,{FSWatcher:()=>SO,WatchHelper:()=>Z8,default:()=>IBr,watch:()=>gAt});function J8(e){return Array.isArray(e)?e:[e]}function _Br(e){return typeof e=="function"?e:typeof e=="string"?t=>e===t:e instanceof RegExp?t=>e.test(t):typeof e=="object"&&e!==null?t=>{if(e.path===t)return!0;if(e.recursive){let r=mr.relative(e.path,t);return r?!r.startsWith("..")&&!mr.isAbsolute(r):!1}return!1}:()=>!1}function ABr(e){if(typeof e!="string")throw new Error("string expected");e=mr.normalize(e),e=e.replace(/\\/g,"/");let t=!1;e.startsWith("//")&&(t=!0);let r=/\/\//;for(;e.match(r);)e=e.replace(r,"/");return t&&(e="/"+e),e}function uAt(e,t,r){let n=ABr(t);for(let i=0;i_Br(i));return t==null?(i,s)=>uAt(n,i,s):uAt(n,t)}function gAt(e,t={}){let r=new SO(t);return r.add(e),r}var fAt,eU,pAt,mr,Ige,fBr,hAt,pBr,hBr,mBr,oAt,gBr,yBr,xge,cAt,lAt,mAt,dAt,bBr,EBr,Cge,SBr,wBr,Z8,SO,IBr,_At=ve(()=>{fAt=require("fs"),eU=require("fs/promises"),pAt=require("events"),mr=Se(require("path"),1);eAt();aAt();Ige="/",fBr="//",hAt=".",pBr="..",hBr="string",mBr=/\\/g,oAt=/\/\//,gBr=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,yBr=/^\.[/\\]/;xge=e=>typeof e=="object"&&e!==null&&!(e instanceof RegExp);cAt=e=>{let t=J8(e).flat();if(!t.every(r=>typeof r===hBr))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(mAt)},lAt=e=>{let t=e.replace(mBr,Ige),r=!1;for(t.startsWith(fBr)&&(r=!0);t.match(oAt);)t=t.replace(oAt,Ige);return r&&(t=Ige+t),t},mAt=e=>lAt(mr.normalize(lAt(e))),dAt=(e="")=>t=>typeof t=="string"?mAt(mr.isAbsolute(t)?t:mr.join(e,t)):t,bBr=(e,t)=>mr.isAbsolute(e)?e:mr.join(t,e),EBr=Object.freeze(new Set),Cge=class{constructor(t,r){this.path=t,this._removeWatcher=r,this.items=new Set}add(t){let{items:r}=this;r&&t!==hAt&&t!==pBr&&r.add(t)}async remove(t){let{items:r}=this;if(!r||(r.delete(t),r.size>0))return;let n=this.path;try{await(0,eU.readdir)(n)}catch{this._removeWatcher&&this._removeWatcher(mr.dirname(n),mr.basename(n))}}has(t){let{items:r}=this;if(r)return r.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=W8,this.items=EBr,Object.freeze(this)}},SBr="stat",wBr="lstat",Z8=class{constructor(t,r,n){this.fsw=n;let i=t;this.path=t=t.replace(yBr,""),this.watchPath=i,this.fullWatchPath=mr.resolve(i),this.dirParts=[],this.dirParts.forEach(s=>{s.length>1&&s.pop()}),this.followSymlinks=r,this.statMethod=r?SBr:wBr}entryPath(t){return mr.join(this.watchPath,mr.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:r}=t;if(r&&r.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,r)&&this.fsw._hasReadPermissions(r)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},SO=class extends pAt.EventEmitter{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let r=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},i={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?J8(t.ignored):J8([]),awaitWriteFinish:r===!0?n:typeof r=="object"?{...n,...r}:!1};iAt&&(i.usePolling=!0),i.atomic===void 0&&(i.atomic=!i.usePolling);let s=process.env.CHOKIDAR_USEPOLLING;if(s!==void 0){let u=s.toLowerCase();u==="false"||u==="0"?i.usePolling=!1:u==="true"||u==="1"?i.usePolling=!0:i.usePolling=!!u}let a=process.env.CHOKIDAR_INTERVAL;a&&(i.interval=Number.parseInt(a,10));let o=0;this._emitReady=()=>{o++,o>=this._readyCount&&(this._emitReady=W8,this._readyEmitted=!0,process.nextTick(()=>this.emit(Oi.READY)))},this._emitRaw=(...u)=>this.emit(Oi.RAW,...u),this._boundRemove=this._remove.bind(this),this.options=i,this._nodeFsHandler=new Y8(this),Object.freeze(i)}_addIgnoredPath(t){if(xge(t)){for(let r of this._ignoredPaths)if(xge(r)&&r.path===t.path&&r.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let r of this._ignoredPaths)xge(r)&&r.path===t&&this._ignoredPaths.delete(r)}add(t,r,n){let{cwd:i}=this.options;this.closed=!1,this._closePromise=void 0;let s=cAt(t);return i&&(s=s.map(a=>bBr(a,i))),s.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=s.length,Promise.all(s.map(async a=>{let o=await this._nodeFsHandler._addToNodeFs(a,!n,void 0,0,r);return o&&this._emitReady(),o})).then(a=>{this.closed||a.forEach(o=>{o&&this.add(mr.dirname(o),mr.basename(r||o))})}),this}unwatch(t){if(this.closed)return this;let r=cAt(t),{cwd:n}=this.options;return r.forEach(i=>{!mr.isAbsolute(i)&&!this._closers.has(i)&&(n&&(i=mr.join(n,i)),i=mr.resolve(i)),this._closePath(i),this._addIgnoredPath(i),this._watched.has(i)&&this._addIgnoredPath({path:i,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(r=>r.forEach(n=>{let i=n();i instanceof Promise&&t.push(i)})),this._streams.forEach(r=>r.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(r=>r.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((r,n)=>{let s=(this.options.cwd?mr.relative(this.options.cwd,n):n)||hAt;t[s]=r.getChildren().sort()}),t}emitWithAll(t,r){this.emit(t,...r),t!==Oi.ERROR&&this.emit(Oi.ALL,t,...r)}async _emit(t,r,n){if(this.closed)return;let i=this.options;wge&&(r=mr.normalize(r)),i.cwd&&(r=mr.relative(i.cwd,r));let s=[r];n!=null&&s.push(n);let a=i.awaitWriteFinish,o;if(a&&(o=this._pendingWrites.get(r)))return o.lastChange=new Date,this;if(i.atomic){if(t===Oi.UNLINK)return this._pendingUnlinks.set(r,[t,...s]),setTimeout(()=>{this._pendingUnlinks.forEach((u,c)=>{this.emit(...u),this.emit(Oi.ALL,...u),this._pendingUnlinks.delete(c)})},typeof i.atomic=="number"?i.atomic:100),this;t===Oi.ADD&&this._pendingUnlinks.has(r)&&(t=Oi.CHANGE,this._pendingUnlinks.delete(r))}if(a&&(t===Oi.ADD||t===Oi.CHANGE)&&this._readyEmitted){let u=(c,l)=>{c?(t=Oi.ERROR,s[0]=c,this.emitWithAll(t,s)):l&&(s.length>1?s[1]=l:s.push(l),this.emitWithAll(t,s))};return this._awaitWriteFinish(r,a.stabilityThreshold,t,u),this}if(t===Oi.CHANGE&&!this._throttle(Oi.CHANGE,r,50))return this;if(i.alwaysStat&&n===void 0&&(t===Oi.ADD||t===Oi.ADD_DIR||t===Oi.CHANGE)){let u=i.cwd?mr.join(i.cwd,r):r,c;try{c=await(0,eU.stat)(u)}catch{}if(!c||this.closed)return;s.push(c)}return this.emitWithAll(t,s),this}_handleError(t){let r=t&&t.code;return t&&r!=="ENOENT"&&r!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||r!=="EPERM"&&r!=="EACCES")&&this.emit(Oi.ERROR,t),t||this.closed}_throttle(t,r,n){this._throttled.has(t)||this._throttled.set(t,new Map);let i=this._throttled.get(t);if(!i)throw new Error("invalid throttle");let s=i.get(r);if(s)return s.count++,!1;let a,o=()=>{let c=i.get(r),l=c?c.count:0;return i.delete(r),clearTimeout(a),c&&clearTimeout(c.timeoutObject),l};a=setTimeout(o,n);let u={timeoutObject:a,clear:o,count:0};return i.set(r,u),u}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,r,n,i){let s=this.options.awaitWriteFinish;if(typeof s!="object")return;let a=s.pollInterval,o,u=t;this.options.cwd&&!mr.isAbsolute(t)&&(u=mr.join(this.options.cwd,t));let c=new Date,l=this._pendingWrites;function d(f){(0,fAt.stat)(u,(p,h)=>{if(p||!l.has(t)){p&&p.code!=="ENOENT"&&i(p);return}let m=Number(new Date);f&&h.size!==f.size&&(l.get(t).lastChange=m);let y=l.get(t);m-y.lastChange>=r?(l.delete(t),i(void 0,h)):o=setTimeout(d,a,h)})}l.has(t)||(l.set(t,{lastChange:c,cancelWait:()=>(l.delete(t),clearTimeout(o),n)}),o=setTimeout(d,a))}_isIgnored(t,r){if(this.options.atomic&&gBr.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,s=(this.options.ignored||[]).map(dAt(n)),o=[...[...this._ignoredPaths].map(dAt(n)),...s];this._userIgnored=vBr(o,void 0)}return this._userIgnored(t,r)}_isntIgnored(t,r){return!this._isIgnored(t,r)}_getWatchHelpers(t){return new Z8(t,this.options.followSymlinks,this)}_getWatchedDir(t){let r=mr.resolve(t);return this._watched.has(r)||this._watched.set(r,new Cge(r,this._boundRemove)),this._watched.get(r)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,r,n){let i=mr.join(t,r),s=mr.resolve(i);if(n=n??(this._watched.has(i)||this._watched.has(s)),!this._throttle("remove",i,100))return;!n&&this._watched.size===1&&this.add(t,r,!0),this._getWatchedDir(i).getChildren().forEach(f=>this._remove(i,f));let u=this._getWatchedDir(t),c=u.has(r);u.remove(r),this._symlinkPaths.has(s)&&this._symlinkPaths.delete(s);let l=i;if(this.options.cwd&&(l=mr.relative(this.options.cwd,i)),this.options.awaitWriteFinish&&this._pendingWrites.has(l)&&this._pendingWrites.get(l).cancelWait()===Oi.ADD)return;this._watched.delete(i),this._watched.delete(s);let d=n?Oi.UNLINK_DIR:Oi.UNLINK;c&&!this._isIgnored(i)&&this._emit(d,i),this._closePath(i)}_closePath(t){this._closeFile(t);let r=mr.dirname(t);this._getWatchedDir(r).remove(mr.basename(t))}_closeFile(t){let r=this._closers.get(t);r&&(r.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,r){if(!r)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(r)}_readdirp(t,r){if(this.closed)return;let n={type:Oi.ALL,alwaysStat:!0,lstat:!0,...r,depth:0},i=Z_t(t,n);return this._streams.add(i),i.once(nAt,()=>{i=void 0}),i.once(Sge,()=>{i&&(this._streams.delete(i),i=void 0)}),i}};IBr={watch:gAt,FSWatcher:SO}});var CAt={};ys(CAt,{startDanmuApiServer:()=>OBr,stopDanmuApiServer:()=>PBr});function NBr(){let e=Km.default.join(SAt,".env.example"),t=Km.default.join(Tge,".env.example"),r=Gd.default.existsSync(Yd),n=Gd.default.existsSync(e),i=Gd.default.existsSync(Tge),s=Gd.default.existsSync(t);if(r){console.log("[server] Configuration files exist, skipping auto-copy");return}if(n)try{vO(),Gd.default.copyFileSync(e,Yd),console.log("[server] Copied .env.example to .env successfully")}catch(a){console.log("[server] Error copying .env.example to .env:",a.message)}else if(i&&s)try{vO(),console.log("[server] Ensured config directory exists"),Gd.default.copyFileSync(t,Yd),console.log("[server] Copied config_example/.env.example to config/.env successfully")}catch(a){console.log("[server] Error copying config_example files to config directory:",a.message)}else console.log("[server] .env.example not found in config or config_example, cannot auto-copy")}function wAt(){try{EAt.default.config({path:Yd,override:!0});for(let[e,t]of Object.entries(TBr))process.env[e]=t;console.log("[server] .env file loaded successfully")}catch{console.log("[server] dotenv not available or .env file not found, using system environment variables")}}async function RBr(){let e=Gd.default.existsSync(Yd);if(!e){console.log("[server] .env not found, skipping file watcher");return}try{let t=await Promise.resolve().then(()=>(_At(),yAt)),r=t.default||t,n=[];e&&n.push(Yd),Cp=r.watch(n,{persistent:!0,awaitWriteFinish:{stabilityThreshold:100,pollInterval:100}}),Cp.on("change",s=>{Tp&&clearTimeout(Tp),Tp=setTimeout(()=>{let a=Km.default.basename(s);console.log(`[server] ${a} changed, reloading environment variables...`);try{let o=new Set;if(s===Yd&&Gd.default.existsSync(Yd)){let c=Gd.default.readFileSync(Yd,"utf8").split(` -`);for(let l of c){let d=l.trim();if(d&&!d.startsWith("#")){let f=d.match(/^([^=]+)=/);f&&o.add(f[1])}}}for(let u of Object.keys(process.env))o.has(u)||delete process.env[u];wAt(),li.reInit(),console.log("[server] Environment variables reloaded successfully"),console.log("[server] Updated keys:",Array.from(o).join(", ")),(process.env.USE_BANGUMI_DATA==="false"||process.env.USE_BANGUMI_DATA===!1)&&YYe()}catch(o){console.log("[server] Error reloading configuration files:",o.message)}Tp=null},200)}),Cp.on("unlink",s=>{let a=Km.default.basename(s);console.log(`[server] ${a} deleted, using remaining configuration files`)}),Cp.on("error",s=>{console.log("[server] File watcher error:",s.message)});let i=n.map(s=>Km.default.basename(s)).join(" and ");console.log(`[server] Configuration file watcher started for: ${i}`)}catch{console.log("[server] chokidar not available, configuration hot reload disabled")}}function IAt(){Cp&&(console.log("[server] Closing file watcher..."),Cp.close(),Cp=null),Tp&&(clearTimeout(Tp),Tp=null),Nl&&(console.log("[server] Closing main server..."),Nl.close(()=>{console.log("[server] Main server closed")})),Rl&&(console.log("[server] Closing proxy server..."),Rl.close(()=>{console.log("[server] Proxy server closed")})),setTimeout(()=>{console.log("[server] Exit complete."),process.exit(0)},500)}function DBr(){return tU.default.createServer(async(e,t)=>{try{let r=`http://${e.headers.host}${e.url}`,n="unknown",i=e.headers["x-forwarded-for"];i?(n=i.split(",")[0].trim(),console.log(`[server] Using X-Forwarded-For IP: ${n}`)):e.headers["x-real-ip"]?(n=e.headers["x-real-ip"],console.log(`[server] Using X-Real-IP: ${n}`)):(n=e.socket.remoteAddress||"unknown",console.log(`[server] Using direct connection IP: ${n}`)),n&&n.startsWith("::ffff:")&&(n=n.substring(7));let s;(e.method==="POST"||e.method==="PUT")&&(s=await new Promise(f=>{let p="";e.on("data",h=>p+=h),e.on("end",()=>f(p))}));let a=new Pd(r,{method:e.method,headers:e.headers,body:s||void 0}),o=await K_t(a,process.env,"node",n);t.statusCode=o.status,o.headers.forEach((f,p)=>{let h=p.toLowerCase();h==="content-encoding"||h==="content-length"||t.setHeader(p,f)});let u=e.headers["accept-encoding"]||"",c=o.headers.get("content-type")||"",l=await o.arrayBuffer(),d=Buffer.from(l);if(u.includes("gzip")&&d.length>1024&&(c.includes("xml")||c.includes("json")||c.includes("text")))try{let f=vAt.default.gzipSync(d);t.setHeader("Content-Encoding","gzip"),t.setHeader("Content-Length",f.length),d=f}catch(f){console.error("[GZIP] Compression failed, falling back to raw:",f.message)}t.hasHeader("Content-Length")||t.setHeader("Content-Length",d.length),t.end(d)}catch(r){console.error("Server error:",r),t.statusCode=500,t.end("Internal Server Error")}})}function kBr(){return tU.default.createServer((e,t)=>{let r=new URL(e.url,`http://${e.headers.host}`),n=Object.fromEntries(r.searchParams);if(n.url){let i=process.env.PROXY_URL||"",s=null;if(i){let d=i.split(",").map(f=>f.trim()).filter(f=>f);for(let f of d)if(!(/^@/.test(f)||/^[\w-]+@http/i.test(f))){s=f.trim(),console.log("[Proxy Server] Forward proxy detected:",s);break}}let a=n.url;console.log("[Proxy Server] Target URL:",a);let o=new URL(a),u={hostname:o.hostname,port:o.port||(o.protocol==="https:"?443:80),path:o.pathname+o.search,method:"GET",headers:{...e.headers}};delete u.headers.host;let c=o.protocol==="https:"?AAt.default:tU.default;s?(console.log("[Proxy Server] Using forward proxy agent:",s),u.agent=new bAt.HttpsProxyAgent(s)):console.log("[Proxy Server] No proxy configured, direct connection");let l=c.request(u,d=>{t.writeHead(d.statusCode,d.headers),d.pipe(t,{end:!0})});e.on("close",()=>{t.writableEnded||(console.log("[Proxy Server] Client disconnected prematurely. Destroying upstream request."),l.destroy())}),l.on("error",d=>{if(e.destroyed||e.aborted||d.code==="ECONNRESET"||d.message==="socket hang up"){t.writableEnded||console.log("[Proxy Server] Upstream connection closed (expected behavior due to client interrupt).");return}console.error("Proxy request error:",d),t.headersSent||(t.statusCode=500,t.end("Proxy Error: "+d.message))}),l.end()}else t.statusCode=400,t.end("Bad Request: Missing URL parameter")})}async function xAt(e={}){console.log("[server] Starting server...");let t=e.host||process.env.DANMU_API_HOST||"0.0.0.0",r=e.proxyHost||process.env.DANMU_API_PROXY_HOST||t,n=Number.isFinite(Number(e.proxyPort))?Number(e.proxyPort):Number.parseInt(process.env.DANMU_API_PROXY_PORT??"5321",10);await RBr();try{li.init(process.env)}catch(a){console.error("[server] Globals init failed:",a)}let i=Number.isFinite(Number(e.port))?Number(e.port):Number.parseInt(process.env.DANMU_API_PORT??"",10),s=Number.isNaN(i)?9321:i;return Nl=DBr(),await new Promise((a,o)=>{Nl.once("error",o),Nl.listen(s,t,()=>{Nl.off("error",o),console.log(`Server running on http://${t}:${s}`),a()})}),Rl=kBr(),await new Promise((a,o)=>{Rl.once("error",o),Rl.listen(n,r,()=>{Rl.off("error",o),console.log(`Proxy server running on http://${r}:${n}`),setTimeout(()=>_5("node",!0).catch(console.error),1e3),a()})}),{mainServer:Nl,proxyServer:Rl,host:t,proxyHost:r,port:s,proxyPort:n}}async function OBr(e={}){if(Nl?.listening&&Rl?.listening){let t=Nl.address(),r=Rl.address();return{mainServer:Nl,proxyServer:Rl,host:typeof t=="object"&&t?t.address:e.host||"0.0.0.0",proxyHost:typeof r=="object"&&r?r.address:e.proxyHost||e.host||"0.0.0.0",port:typeof t=="object"&&t?t.port:Number(e.port||9321),proxyPort:typeof r=="object"&&r?r.port:Number(e.proxyPort||5321),reused:!0}}return await xAt(e)}async function PBr(){Cp&&(console.log("[server] Closing file watcher..."),await Cp.close(),Cp=null),Tp&&(clearTimeout(Tp),Tp=null);let e=(t,r)=>new Promise(n=>{if(!t)return n();console.log(`[server] Closing ${r}...`),t.close(()=>{console.log(`[server] ${r} closed`),n()})});await e(Nl,"main server"),await e(Rl,"proxy server"),Nl=null,Rl=null}var Km,Gd,tU,AAt,vAt,bAt,EAt,zGn,Nge,xBr,CBr,SAt,Tge,Yd,TBr,Cp,Tp,Nl,Rl,MBr,TAt=ve(()=>{Km=Se(require("path"),1),Gd=Se(require("fs"),1),tU=Se(require("http"),1),AAt=Se(require("https"),1),vAt=Se(require("zlib"),1),bAt=Se(jze(),1),EAt=Se(Gze(),1);dR();V_t();Ot();uy();hge();zGn=Se(Q_t(),1);typeof globalThis.fetch!="function"&&(globalThis.fetch=fv);typeof globalThis.Request!="function"&&(globalThis.Request=Pd);typeof globalThis.Response!="function"&&(globalThis.Response=tu);typeof globalThis.Headers!="function"&&(globalThis.Headers=fo);Nge=typeof globalThis.__filename=="string"?globalThis.__filename:Km.default.join(process.cwd(),"vendor","danmu_api","danmu_api","server.js"),xBr=Km.default.dirname(Nge),CBr=pge(),SAt=v_t(),Tge=b_t(),Yd=nI();console.log("[server] env bootstrap",{cwd:process.cwd(),__filename:Nge,__dirname:xBr,configDir:CBr,projectConfigDir:SAt,configExampleDir:Tge,envPath:Yd,envExists:Gd.default.existsSync(Yd)});TBr={...process.env};NBr();wAt();Cp=null,Tp=null,Nl=null,Rl=null;process.on("SIGTERM",IAt);process.on("SIGINT",IAt);MBr=process.argv[1]&&Km.default.resolve(process.argv[1])===Nge;MBr&&xAt().catch(e=>{console.error("[server] Failed to start:",e),process.exit(1)})});var $At,FAt,JBr,_e,Kt=ve(()=>{Yr();$At=Se(require("https"),1),FAt=Se(require("http"),1),JBr=Ee.create({httpsAgent:new $At.default.Agent({keepAlive:!1,rejectUnauthorized:!1}),httpAgent:new FAt.default.Agent({keepAlive:!1})}),_e=JBr});var IU=b(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});kp.AttributeAction=kp.IgnoreCaseMode=kp.SelectorType=void 0;var J3r;(function(e){e.Attribute="attribute",e.Pseudo="pseudo",e.PseudoElement="pseudo-element",e.Tag="tag",e.Universal="universal",e.Adjacent="adjacent",e.Child="child",e.Descendant="descendant",e.Parent="parent",e.Sibling="sibling",e.ColumnCombinator="column-combinator"})(J3r=kp.SelectorType||(kp.SelectorType={}));kp.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var Z3r;(function(e){e.Any="any",e.Element="element",e.End="end",e.Equals="equals",e.Exists="exists",e.Hyphen="hyphen",e.Not="not",e.Start="start"})(Z3r=kp.AttributeAction||(kp.AttributeAction={}))});var Pvt=b(pI=>{"use strict";Object.defineProperty(pI,"__esModule",{value:!0});pI.parse=pI.isTraversal=void 0;var dn=IU(),Rvt=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,e$r=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,t$r=new Map([[126,dn.AttributeAction.Element],[94,dn.AttributeAction.Start],[36,dn.AttributeAction.End],[42,dn.AttributeAction.Any],[33,dn.AttributeAction.Not],[124,dn.AttributeAction.Hyphen]]),r$r=new Set(["has","not","matches","is","where","host","host-context"]);function kvt(e){switch(e.type){case dn.SelectorType.Adjacent:case dn.SelectorType.Child:case dn.SelectorType.Descendant:case dn.SelectorType.Parent:case dn.SelectorType.Sibling:case dn.SelectorType.ColumnCombinator:return!0;default:return!1}}pI.isTraversal=kvt;var n$r=new Set(["contains","icontains"]);function i$r(e,t,r){var n=parseInt(t,16)-65536;return n!==n||r?t:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function MO(e){return e.replace(e$r,i$r)}function Gge(e){return e===39||e===34}function Dvt(e){return e===32||e===9||e===10||e===12||e===13}function s$r(e){var t=[],r=Ovt(t,"".concat(e),0);if(r0&&r0&&kvt(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function c(P){if(n.length>0&&n[n.length-1].type===dn.SelectorType.Descendant){n[n.length-1].type=P;return}u(),n.push({type:P})}function l(P,$){n.push({type:dn.SelectorType.Attribute,name:P,action:$,value:i(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===dn.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");e.push(n)}if(s(0),t.length===r)return r;e:for(;r{"use strict";var xU=mI&&mI.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,i=t.length,s;n ":" > ";case qi.SelectorType.Parent:return t===0?"< ":" < ";case qi.SelectorType.Sibling:return t===0?"~ ":" ~ ";case qi.SelectorType.Adjacent:return t===0?"+ ":" + ";case qi.SelectorType.Descendant:return" ";case qi.SelectorType.ColumnCombinator:return t===0?"|| ":" || ";case qi.SelectorType.Universal:return e.namespace==="*"&&t+10?n+e.slice(r):e}});var gI=b(Lc=>{"use strict";var c$r=Lc&&Lc.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),l$r=Lc&&Lc.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&c$r(t,e,r)};Object.defineProperty(Lc,"__esModule",{value:!0});Lc.stringify=Lc.parse=Lc.isTraversal=void 0;l$r(IU(),Lc);var jvt=Pvt();Object.defineProperty(Lc,"isTraversal",{enumerable:!0,get:function(){return jvt.isTraversal}});Object.defineProperty(Lc,"parse",{enumerable:!0,get:function(){return jvt.parse}});var d$r=qvt();Object.defineProperty(Lc,"stringify",{enumerable:!0,get:function(){return d$r.stringify}})});var Iy=b((qWn,Hvt)=>{Hvt.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var eP=b((Pye,Mye)=>{(function(e,t){typeof Pye=="object"&&typeof Mye<"u"?Mye.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs=t()})(Pye,function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",i="second",s="minute",a="hour",o="day",u="week",c="month",l="quarter",d="year",f="date",p="Invalid Date",h=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(O){var P=["th","st","nd","rd"],$=O%100;return"["+O+(P[($-20)%10]||P[$]||P[0])+"]"}},g=function(O,P,$){var Q=String(O);return!Q||Q.length>=P?O:""+Array(P+1-Q.length).join($)+O},v={s:g,z:function(O){var P=-O.utcOffset(),$=Math.abs(P),Q=Math.floor($/60),j=$%60;return(P<=0?"+":"-")+g(Q,2,"0")+":"+g(j,2,"0")},m:function O(P,$){if(P.date()<$.date())return-O($,P);var Q=12*($.year()-P.year())+($.month()-P.month()),j=P.clone().add(Q,c),z=$-j<0,X=P.clone().add(Q+(z?-1:1),c);return+(-(Q+($-j)/(z?j-X:X-j))||0)},a:function(O){return O<0?Math.ceil(O)||0:Math.floor(O)},p:function(O){return{M:c,y:d,w:u,d:o,D:f,h:a,m:s,s:i,ms:n,Q:l}[O]||String(O||"").toLowerCase().replace(/s$/,"")},u:function(O){return O===void 0}},A="en",_={};_[A]=y;var E="$isDayjsObject",S=function(O){return O instanceof T||!(!O||!O[E])},C=function O(P,$,Q){var j;if(!P)return A;if(typeof P=="string"){var z=P.toLowerCase();_[z]&&(j=z),$&&(_[z]=$,j=z);var X=P.split("-");if(!j&&X.length>1)return O(X[0])}else{var K=P.name;_[K]=P,j=K}return!Q&&j&&(A=j),j||!Q&&A},I=function(O,P){if(S(O))return O.clone();var $=typeof P=="object"?P:{};return $.date=O,$.args=arguments,new T($)},N=v;N.l=C,N.i=S,N.w=function(O,P){return I(O,{locale:P.$L,utc:P.$u,x:P.$x,$offset:P.$offset})};var T=function(){function O($){this.$L=C($.locale,null,!0),this.parse($),this.$x=this.$x||$.x||{},this[E]=!0}var P=O.prototype;return P.parse=function($){this.$d=function(Q){var j=Q.date,z=Q.utc;if(j===null)return new Date(NaN);if(N.u(j))return new Date;if(j instanceof Date)return new Date(j);if(typeof j=="string"&&!/Z$/i.test(j)){var X=j.match(h);if(X){var K=X[2]-1||0,Z=(X[7]||"0").substring(0,3);return z?new Date(Date.UTC(X[1],K,X[3]||1,X[4]||0,X[5]||0,X[6]||0,Z)):new Date(X[1],K,X[3]||1,X[4]||0,X[5]||0,X[6]||0,Z)}}return new Date(j)}($),this.init()},P.init=function(){var $=this.$d;this.$y=$.getFullYear(),this.$M=$.getMonth(),this.$D=$.getDate(),this.$W=$.getDay(),this.$H=$.getHours(),this.$m=$.getMinutes(),this.$s=$.getSeconds(),this.$ms=$.getMilliseconds()},P.$utils=function(){return N},P.isValid=function(){return this.$d.toString()!==p},P.isSame=function($,Q){var j=I($);return this.startOf(Q)<=j&&j<=this.endOf(Q)},P.isAfter=function($,Q){return I($){(function(e,t){typeof sq=="object"?TEt.exports=sq=t():typeof define=="function"&&define.amd?define([],t):e.CryptoJS=t()})(sq,function(){var e=e||function(t,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var i=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},s=Object.create||function(){function g(){}return function(v){var A;return g.prototype=v,A=new g,g.prototype=null,A}}(),a={},o=a.lib={},u=o.Base=function(){return{extend:function(g){var v=s(this);return g&&v.mixIn(g),(!v.hasOwnProperty("init")||this.init===v.init)&&(v.init=function(){v.$super.init.apply(this,arguments)}),v.init.prototype=v,v.$super=this,v},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var v in g)g.hasOwnProperty(v)&&(this[v]=g[v]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),c=o.WordArray=u.extend({init:function(g,v){g=this.words=g||[],v!=r?this.sigBytes=v:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var v=this.words,A=g.words,_=this.sigBytes,E=g.sigBytes;if(this.clamp(),_%4)for(var S=0;S>>2]>>>24-S%4*8&255;v[_+S>>>2]|=C<<24-(_+S)%4*8}else for(var I=0;I>>2]=A[I>>>2];return this.sigBytes+=E,this},clamp:function(){var g=this.words,v=this.sigBytes;g[v>>>2]&=4294967295<<32-v%4*8,g.length=t.ceil(v/4)},clone:function(){var g=u.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var v=[],A=0;A>>2]>>>24-E%4*8&255;_.push((S>>>4).toString(16)),_.push((S&15).toString(16))}return _.join("")},parse:function(g){for(var v=g.length,A=[],_=0;_>>3]|=parseInt(g.substr(_,2),16)<<24-_%8*4;return new c.init(A,v/2)}},f=l.Latin1={stringify:function(g){for(var v=g.words,A=g.sigBytes,_=[],E=0;E>>2]>>>24-E%4*8&255;_.push(String.fromCharCode(S))}return _.join("")},parse:function(g){for(var v=g.length,A=[],_=0;_>>2]|=(g.charCodeAt(_)&255)<<24-_%4*8;return new c.init(A,v)}},p=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},h=o.BufferedBlockAlgorithm=u.extend({reset:function(){this._data=new c.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=p.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var v,A=this._data,_=A.words,E=A.sigBytes,S=this.blockSize,C=S*4,I=E/C;g?I=t.ceil(I):I=t.max((I|0)-this._minBufferSize,0);var N=I*S,T=t.min(N*4,E);if(N){for(var k=0;k{(function(e,t){typeof aq=="object"?NEt.exports=aq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(aq,function(e){return function(t){var r=e,n=r.lib,i=n.Base,s=n.WordArray,a=r.x64={},o=a.Word=i.extend({init:function(c,l){this.high=c,this.low=l}}),u=a.WordArray=i.extend({init:function(c,l){c=this.words=c||[],l!=t?this.sigBytes=l:this.sigBytes=c.length*8},toX32:function(){for(var c=this.words,l=c.length,d=[],f=0;f{(function(e,t){typeof oq=="object"?REt.exports=oq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(oq,function(e){return function(){if(typeof ArrayBuffer=="function"){var t=e,r=t.lib,n=r.WordArray,i=n.init,s=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,u=[],c=0;c>>2]|=a[c]<<24-c%4*8;i.call(this,u,o)}else i.apply(this,arguments)};s.prototype=n}}(),e.lib.WordArray})});var OEt=b((uq,kEt)=>{(function(e,t){typeof uq=="object"?kEt.exports=uq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(uq,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,i=t.enc,s=i.Utf16=i.Utf16BE={stringify:function(o){for(var u=o.words,c=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535;l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var u=o.length,c=[],l=0;l>>1]|=o.charCodeAt(l)<<16-l%2*16;return n.create(c,u*2)}};i.Utf16LE={stringify:function(o){for(var u=o.words,c=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535);l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var u=o.length,c=[],l=0;l>>1]|=a(o.charCodeAt(l)<<16-l%2*16);return n.create(c,u*2)}};function a(o){return o<<8&4278255360|o>>>8&16711935}}(),e.enc.Utf16})});var ky=b((cq,PEt)=>{(function(e,t){typeof cq=="object"?PEt.exports=cq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(cq,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,i=t.enc,s=i.Base64={stringify:function(o){var u=o.words,c=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f>>2]>>>24-f%4*8&255,h=u[f+1>>>2]>>>24-(f+1)%4*8&255,m=u[f+2>>>2]>>>24-(f+2)%4*8&255,y=p<<16|h<<8|m,g=0;g<4&&f+g*.75>>6*(3-g)&63));var v=l.charAt(64);if(v)for(;d.length%4;)d.push(v);return d.join("")},parse:function(o){var u=o.length,c=this._map,l=this._reverseMap;if(!l){l=this._reverseMap=[];for(var d=0;d>>6-f%4*2,m=p|h;l[d>>>2]|=m<<24-d%4*8,d++}return n.create(l,d)}}(),e.enc.Base64})});var LEt=b((lq,MEt)=>{(function(e,t){typeof lq=="object"?MEt.exports=lq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(lq,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,i=t.enc,s=i.Base64url={stringify:function(o,u){u===void 0&&(u=!0);var c=o.words,l=o.sigBytes,d=u?this._safe_map:this._map;o.clamp();for(var f=[],p=0;p>>2]>>>24-p%4*8&255,m=c[p+1>>>2]>>>24-(p+1)%4*8&255,y=c[p+2>>>2]>>>24-(p+2)%4*8&255,g=h<<16|m<<8|y,v=0;v<4&&p+v*.75>>6*(3-v)&63));var A=d.charAt(64);if(A)for(;f.length%4;)f.push(A);return f.join("")},parse:function(o,u){u===void 0&&(u=!0);var c=o.length,l=u?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f>>6-f%4*2,m=p|h;l[d>>>2]|=m<<24-d%4*8,d++}return n.create(l,d)}}(),e.enc.Base64url})});var Oy=b((dq,BEt)=>{(function(e,t){typeof dq=="object"?BEt.exports=dq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(dq,function(e){return function(t){var r=e,n=r.lib,i=n.WordArray,s=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=t.abs(t.sin(p+1))*4294967296|0})();var u=a.MD5=s.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,h){for(var m=0;m<16;m++){var y=h+m,g=p[y];p[y]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var v=this._hash.words,A=p[h+0],_=p[h+1],E=p[h+2],S=p[h+3],C=p[h+4],I=p[h+5],N=p[h+6],T=p[h+7],k=p[h+8],O=p[h+9],P=p[h+10],$=p[h+11],Q=p[h+12],j=p[h+13],z=p[h+14],X=p[h+15],K=v[0],Z=v[1],Y=v[2],ie=v[3];K=c(K,Z,Y,ie,A,7,o[0]),ie=c(ie,K,Z,Y,_,12,o[1]),Y=c(Y,ie,K,Z,E,17,o[2]),Z=c(Z,Y,ie,K,S,22,o[3]),K=c(K,Z,Y,ie,C,7,o[4]),ie=c(ie,K,Z,Y,I,12,o[5]),Y=c(Y,ie,K,Z,N,17,o[6]),Z=c(Z,Y,ie,K,T,22,o[7]),K=c(K,Z,Y,ie,k,7,o[8]),ie=c(ie,K,Z,Y,O,12,o[9]),Y=c(Y,ie,K,Z,P,17,o[10]),Z=c(Z,Y,ie,K,$,22,o[11]),K=c(K,Z,Y,ie,Q,7,o[12]),ie=c(ie,K,Z,Y,j,12,o[13]),Y=c(Y,ie,K,Z,z,17,o[14]),Z=c(Z,Y,ie,K,X,22,o[15]),K=l(K,Z,Y,ie,_,5,o[16]),ie=l(ie,K,Z,Y,N,9,o[17]),Y=l(Y,ie,K,Z,$,14,o[18]),Z=l(Z,Y,ie,K,A,20,o[19]),K=l(K,Z,Y,ie,I,5,o[20]),ie=l(ie,K,Z,Y,P,9,o[21]),Y=l(Y,ie,K,Z,X,14,o[22]),Z=l(Z,Y,ie,K,C,20,o[23]),K=l(K,Z,Y,ie,O,5,o[24]),ie=l(ie,K,Z,Y,z,9,o[25]),Y=l(Y,ie,K,Z,S,14,o[26]),Z=l(Z,Y,ie,K,k,20,o[27]),K=l(K,Z,Y,ie,j,5,o[28]),ie=l(ie,K,Z,Y,E,9,o[29]),Y=l(Y,ie,K,Z,T,14,o[30]),Z=l(Z,Y,ie,K,Q,20,o[31]),K=d(K,Z,Y,ie,I,4,o[32]),ie=d(ie,K,Z,Y,k,11,o[33]),Y=d(Y,ie,K,Z,$,16,o[34]),Z=d(Z,Y,ie,K,z,23,o[35]),K=d(K,Z,Y,ie,_,4,o[36]),ie=d(ie,K,Z,Y,C,11,o[37]),Y=d(Y,ie,K,Z,T,16,o[38]),Z=d(Z,Y,ie,K,P,23,o[39]),K=d(K,Z,Y,ie,j,4,o[40]),ie=d(ie,K,Z,Y,A,11,o[41]),Y=d(Y,ie,K,Z,S,16,o[42]),Z=d(Z,Y,ie,K,N,23,o[43]),K=d(K,Z,Y,ie,O,4,o[44]),ie=d(ie,K,Z,Y,Q,11,o[45]),Y=d(Y,ie,K,Z,X,16,o[46]),Z=d(Z,Y,ie,K,E,23,o[47]),K=f(K,Z,Y,ie,A,6,o[48]),ie=f(ie,K,Z,Y,T,10,o[49]),Y=f(Y,ie,K,Z,z,15,o[50]),Z=f(Z,Y,ie,K,I,21,o[51]),K=f(K,Z,Y,ie,Q,6,o[52]),ie=f(ie,K,Z,Y,S,10,o[53]),Y=f(Y,ie,K,Z,P,15,o[54]),Z=f(Z,Y,ie,K,_,21,o[55]),K=f(K,Z,Y,ie,k,6,o[56]),ie=f(ie,K,Z,Y,X,10,o[57]),Y=f(Y,ie,K,Z,N,15,o[58]),Z=f(Z,Y,ie,K,j,21,o[59]),K=f(K,Z,Y,ie,C,6,o[60]),ie=f(ie,K,Z,Y,$,10,o[61]),Y=f(Y,ie,K,Z,E,15,o[62]),Z=f(Z,Y,ie,K,O,21,o[63]),v[0]=v[0]+K|0,v[1]=v[1]+Z|0,v[2]=v[2]+Y|0,v[3]=v[3]+ie|0},_doFinalize:function(){var p=this._data,h=p.words,m=this._nDataBytes*8,y=p.sigBytes*8;h[y>>>5]|=128<<24-y%32;var g=t.floor(m/4294967296),v=m;h[(y+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,h[(y+64>>>9<<4)+14]=(v<<8|v>>>24)&16711935|(v<<24|v>>>8)&4278255360,p.sigBytes=(h.length+1)*4,this._process();for(var A=this._hash,_=A.words,E=0;E<4;E++){var S=_[E];_[E]=(S<<8|S>>>24)&16711935|(S<<24|S>>>8)&4278255360}return A},clone:function(){var p=s.clone.call(this);return p._hash=this._hash.clone(),p}});function c(p,h,m,y,g,v,A){var _=p+(h&m|~h&y)+g+A;return(_<>>32-v)+h}function l(p,h,m,y,g,v,A){var _=p+(h&y|m&~y)+g+A;return(_<>>32-v)+h}function d(p,h,m,y,g,v,A){var _=p+(h^m^y)+g+A;return(_<>>32-v)+h}function f(p,h,m,y,g,v,A){var _=p+(m^(h|~y))+g+A;return(_<>>32-v)+h}r.MD5=s._createHelper(u),r.HmacMD5=s._createHmacHelper(u)}(Math),e.MD5})});var Lye=b((fq,$Et)=>{(function(e,t){typeof fq=="object"?$Et.exports=fq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(fq,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,i=r.Hasher,s=t.algo,a=[],o=s.SHA1=i.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(u,c){for(var l=this._hash.words,d=l[0],f=l[1],p=l[2],h=l[3],m=l[4],y=0;y<80;y++){if(y<16)a[y]=u[c+y]|0;else{var g=a[y-3]^a[y-8]^a[y-14]^a[y-16];a[y]=g<<1|g>>>31}var v=(d<<5|d>>>27)+m+a[y];y<20?v+=(f&p|~f&h)+1518500249:y<40?v+=(f^p^h)+1859775393:y<60?v+=(f&p|f&h|p&h)-1894007588:v+=(f^p^h)-899497514,m=h,h=p,p=f<<30|f>>>2,f=d,d=v}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+h|0,l[4]=l[4]+m|0},_doFinalize:function(){var u=this._data,c=u.words,l=this._nDataBytes*8,d=u.sigBytes*8;return c[d>>>5]|=128<<24-d%32,c[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),c[(d+64>>>9<<4)+15]=l,u.sigBytes=c.length*4,this._process(),this._hash},clone:function(){var u=i.clone.call(this);return u._hash=this._hash.clone(),u}});t.SHA1=i._createHelper(o),t.HmacSHA1=i._createHmacHelper(o)}(),e.SHA1})});var hq=b((pq,FEt)=>{(function(e,t){typeof pq=="object"?FEt.exports=pq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(pq,function(e){return function(t){var r=e,n=r.lib,i=n.WordArray,s=n.Hasher,a=r.algo,o=[],u=[];(function(){function d(m){for(var y=t.sqrt(m),g=2;g<=y;g++)if(!(m%g))return!1;return!0}function f(m){return(m-(m|0))*4294967296|0}for(var p=2,h=0;h<64;)d(p)&&(h<8&&(o[h]=f(t.pow(p,1/2))),u[h]=f(t.pow(p,1/3)),h++),p++})();var c=[],l=a.SHA256=s.extend({_doReset:function(){this._hash=new i.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,h=p[0],m=p[1],y=p[2],g=p[3],v=p[4],A=p[5],_=p[6],E=p[7],S=0;S<64;S++){if(S<16)c[S]=d[f+S]|0;else{var C=c[S-15],I=(C<<25|C>>>7)^(C<<14|C>>>18)^C>>>3,N=c[S-2],T=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;c[S]=I+c[S-7]+T+c[S-16]}var k=v&A^~v&_,O=h&m^h&y^m&y,P=(h<<30|h>>>2)^(h<<19|h>>>13)^(h<<10|h>>>22),$=(v<<26|v>>>6)^(v<<21|v>>>11)^(v<<7|v>>>25),Q=E+$+k+u[S]+c[S],j=P+O;E=_,_=A,A=v,v=g+Q|0,g=y,y=m,m=h,h=Q+j|0}p[0]=p[0]+h|0,p[1]=p[1]+m|0,p[2]=p[2]+y|0,p[3]=p[3]+g|0,p[4]=p[4]+v|0,p[5]=p[5]+A|0,p[6]=p[6]+_|0,p[7]=p[7]+E|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,h=d.sigBytes*8;return f[h>>>5]|=128<<24-h%32,f[(h+64>>>9<<4)+14]=t.floor(p/4294967296),f[(h+64>>>9<<4)+15]=p,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=s.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=s._createHelper(l),r.HmacSHA256=s._createHmacHelper(l)}(Math),e.SHA256})});var qEt=b((mq,UEt)=>{(function(e,t,r){typeof mq=="object"?UEt.exports=mq=t(vr(),hq()):typeof define=="function"&&define.amd?define(["./core","./sha256"],t):t(e.CryptoJS)})(mq,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,i=t.algo,s=i.SHA256,a=i.SHA224=s.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=s._doFinalize.call(this);return o.sigBytes-=4,o}});t.SHA224=s._createHelper(a),t.HmacSHA224=s._createHmacHelper(a)}(),e.SHA224})});var Bye=b((gq,jEt)=>{(function(e,t,r){typeof gq=="object"?jEt.exports=gq=t(vr(),tP()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],t):t(e.CryptoJS)})(gq,function(e){return function(){var t=e,r=t.lib,n=r.Hasher,i=t.x64,s=i.Word,a=i.WordArray,o=t.algo;function u(){return s.create.apply(s,arguments)}var c=[u(1116352408,3609767458),u(1899447441,602891725),u(3049323471,3964484399),u(3921009573,2173295548),u(961987163,4081628472),u(1508970993,3053834265),u(2453635748,2937671579),u(2870763221,3664609560),u(3624381080,2734883394),u(310598401,1164996542),u(607225278,1323610764),u(1426881987,3590304994),u(1925078388,4068182383),u(2162078206,991336113),u(2614888103,633803317),u(3248222580,3479774868),u(3835390401,2666613458),u(4022224774,944711139),u(264347078,2341262773),u(604807628,2007800933),u(770255983,1495990901),u(1249150122,1856431235),u(1555081692,3175218132),u(1996064986,2198950837),u(2554220882,3999719339),u(2821834349,766784016),u(2952996808,2566594879),u(3210313671,3203337956),u(3336571891,1034457026),u(3584528711,2466948901),u(113926993,3758326383),u(338241895,168717936),u(666307205,1188179964),u(773529912,1546045734),u(1294757372,1522805485),u(1396182291,2643833823),u(1695183700,2343527390),u(1986661051,1014477480),u(2177026350,1206759142),u(2456956037,344077627),u(2730485921,1290863460),u(2820302411,3158454273),u(3259730800,3505952657),u(3345764771,106217008),u(3516065817,3606008344),u(3600352804,1432725776),u(4094571909,1467031594),u(275423344,851169720),u(430227734,3100823752),u(506948616,1363258195),u(659060556,3750685593),u(883997877,3785050280),u(958139571,3318307427),u(1322822218,3812723403),u(1537002063,2003034995),u(1747873779,3602036899),u(1955562222,1575990012),u(2024104815,1125592928),u(2227730452,2716904306),u(2361852424,442776044),u(2428436474,593698344),u(2756734187,3733110249),u(3204031479,2999351573),u(3329325298,3815920427),u(3391569614,3928383900),u(3515267271,566280711),u(3940187606,3454069534),u(4118630271,4000239992),u(116418474,1914138554),u(174292421,2731055270),u(289380356,3203993006),u(460393269,320620315),u(685471733,587496836),u(852142971,1086792851),u(1017036298,365543100),u(1126000580,2618297676),u(1288033470,3409855158),u(1501505948,4234509866),u(1607167915,987167468),u(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=u()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new s.init(1779033703,4089235720),new s.init(3144134277,2227873595),new s.init(1013904242,4271175723),new s.init(2773480762,1595750129),new s.init(1359893119,2917565137),new s.init(2600822924,725511199),new s.init(528734635,4215389547),new s.init(1541459225,327033209)])},_doProcessBlock:function(f,p){for(var h=this._hash.words,m=h[0],y=h[1],g=h[2],v=h[3],A=h[4],_=h[5],E=h[6],S=h[7],C=m.high,I=m.low,N=y.high,T=y.low,k=g.high,O=g.low,P=v.high,$=v.low,Q=A.high,j=A.low,z=_.high,X=_.low,K=E.high,Z=E.low,Y=S.high,ie=S.low,ue=C,he=I,ye=N,q=T,B=k,ae=O,M=P,F=$,V=Q,H=j,G=z,J=X,ee=K,te=Z,re=Y,ce=ie,de=0;de<80;de++){var pe,Ce,$e=l[de];if(de<16)Ce=$e.high=f[p+de*2]|0,pe=$e.low=f[p+de*2+1]|0;else{var We=l[de-15],Ve=We.high,Te=We.low,Ne=(Ve>>>1|Te<<31)^(Ve>>>8|Te<<24)^Ve>>>7,Ue=(Te>>>1|Ve<<31)^(Te>>>8|Ve<<24)^(Te>>>7|Ve<<25),Me=l[de-2],Ge=Me.high,Be=Me.low,It=(Ge>>>19|Be<<13)^(Ge<<3|Be>>>29)^Ge>>>6,Ze=(Be>>>19|Ge<<13)^(Be<<3|Ge>>>29)^(Be>>>6|Ge<<26),$t=l[de-7],Nt=$t.high,St=$t.low,ft=l[de-16],jo=ft.high,Kr=ft.low;pe=Ue+St,Ce=Ne+Nt+(pe>>>0>>0?1:0),pe=pe+Ze,Ce=Ce+It+(pe>>>0>>0?1:0),pe=pe+Kr,Ce=Ce+jo+(pe>>>0>>0?1:0),$e.high=Ce,$e.low=pe}var za=V&G^~V&ee,Ho=H&J^~H&te,$n=ue&ye^ue&B^ye&B,ad=he&q^he&ae^q&ae,X_=(ue>>>28|he<<4)^(ue<<30|he>>>2)^(ue<<25|he>>>7),Sa=(he>>>28|ue<<4)^(he<<30|ue>>>2)^(he<<25|ue>>>7),wa=(V>>>14|H<<18)^(V>>>18|H<<14)^(V<<23|H>>>9),Gc=(H>>>14|V<<18)^(H>>>18|V<<14)^(H<<23|V>>>9),hc=c[de],od=hc.high,mc=hc.low,Fn=ce+Gc,Qa=re+wa+(Fn>>>0>>0?1:0),Fn=Fn+Ho,Qa=Qa+za+(Fn>>>0>>0?1:0),Fn=Fn+mc,Qa=Qa+od+(Fn>>>0>>0?1:0),Fn=Fn+pe,Qa=Qa+Ce+(Fn>>>0>>0?1:0),KE=Sa+ad,Nf=X_+$n+(KE>>>0>>0?1:0);re=ee,ce=te,ee=G,te=J,G=V,J=H,H=F+Fn|0,V=M+Qa+(H>>>0>>0?1:0)|0,M=B,F=ae,B=ye,ae=q,ye=ue,q=he,he=Fn+KE|0,ue=Qa+Nf+(he>>>0>>0?1:0)|0}I=m.low=I+he,m.high=C+ue+(I>>>0>>0?1:0),T=y.low=T+q,y.high=N+ye+(T>>>0>>0?1:0),O=g.low=O+ae,g.high=k+B+(O>>>0>>0?1:0),$=v.low=$+F,v.high=P+M+($>>>0>>0?1:0),j=A.low=j+H,A.high=Q+V+(j>>>0>>0?1:0),X=_.low=X+J,_.high=z+G+(X>>>0>>0?1:0),Z=E.low=Z+te,E.high=K+ee+(Z>>>0>>0?1:0),ie=S.low=ie+ce,S.high=Y+re+(ie>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,p=f.words,h=this._nDataBytes*8,m=f.sigBytes*8;p[m>>>5]|=128<<24-m%32,p[(m+128>>>10<<5)+30]=Math.floor(h/4294967296),p[(m+128>>>10<<5)+31]=h,f.sigBytes=p.length*4,this._process();var y=this._hash.toX32();return y},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});t.SHA512=n._createHelper(d),t.HmacSHA512=n._createHmacHelper(d)}(),e.SHA512})});var KEt=b((yq,HEt)=>{(function(e,t,r){typeof yq=="object"?HEt.exports=yq=t(vr(),tP(),Bye()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],t):t(e.CryptoJS)})(yq,function(e){return function(){var t=e,r=t.x64,n=r.Word,i=r.WordArray,s=t.algo,a=s.SHA512,o=s.SHA384=a.extend({_doReset:function(){this._hash=new i.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var u=a._doFinalize.call(this);return u.sigBytes-=16,u}});t.SHA384=a._createHelper(o),t.HmacSHA384=a._createHmacHelper(o)}(),e.SHA384})});var zEt=b((_q,VEt)=>{(function(e,t,r){typeof _q=="object"?VEt.exports=_q=t(vr(),tP()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],t):t(e.CryptoJS)})(_q,function(e){return function(t){var r=e,n=r.lib,i=n.WordArray,s=n.Hasher,a=r.x64,o=a.Word,u=r.algo,c=[],l=[],d=[];(function(){for(var h=1,m=0,y=0;y<24;y++){c[h+5*m]=(y+1)*(y+2)/2%64;var g=m%5,v=(2*h+3*m)%5;h=g,m=v}for(var h=0;h<5;h++)for(var m=0;m<5;m++)l[h+5*m]=m+(2*h+3*m)%5*5;for(var A=1,_=0;_<24;_++){for(var E=0,S=0,C=0;C<7;C++){if(A&1){var I=(1<>>24)&16711935|(A<<24|A>>>8)&4278255360,_=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360;var E=y[v];E.high^=_,E.low^=A}for(var S=0;S<24;S++){for(var C=0;C<5;C++){for(var I=0,N=0,T=0;T<5;T++){var E=y[C+5*T];I^=E.high,N^=E.low}var k=f[C];k.high=I,k.low=N}for(var C=0;C<5;C++)for(var O=f[(C+4)%5],P=f[(C+1)%5],$=P.high,Q=P.low,I=O.high^($<<1|Q>>>31),N=O.low^(Q<<1|$>>>31),T=0;T<5;T++){var E=y[C+5*T];E.high^=I,E.low^=N}for(var j=1;j<25;j++){var I,N,E=y[j],z=E.high,X=E.low,K=c[j];K<32?(I=z<>>32-K,N=X<>>32-K):(I=X<>>64-K,N=z<>>64-K);var Z=f[l[j]];Z.high=I,Z.low=N}var Y=f[0],ie=y[0];Y.high=ie.high,Y.low=ie.low;for(var C=0;C<5;C++)for(var T=0;T<5;T++){var j=C+5*T,E=y[j],ue=f[j],he=f[(C+1)%5+5*T],ye=f[(C+2)%5+5*T];E.high=ue.high^~he.high&ye.high,E.low=ue.low^~he.low&ye.low}var E=y[0],q=d[S];E.high^=q.high,E.low^=q.low}},_doFinalize:function(){var h=this._data,m=h.words,y=this._nDataBytes*8,g=h.sigBytes*8,v=this.blockSize*32;m[g>>>5]|=1<<24-g%32,m[(t.ceil((g+1)/v)*v>>>5)-1]|=128,h.sigBytes=m.length*4,this._process();for(var A=this._state,_=this.cfg.outputLength/8,E=_/8,S=[],C=0;C>>24)&16711935|(N<<24|N>>>8)&4278255360,T=(T<<8|T>>>24)&16711935|(T<<24|T>>>8)&4278255360,S.push(T),S.push(N)}return new i.init(S,_)},clone:function(){for(var h=s.clone.call(this),m=h._state=this._state.slice(0),y=0;y<25;y++)m[y]=m[y].clone();return h}});r.SHA3=s._createHelper(p),r.HmacSHA3=s._createHmacHelper(p)}(Math),e.SHA3})});var GEt=b((Aq,QEt)=>{(function(e,t){typeof Aq=="object"?QEt.exports=Aq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(Aq,function(e){return function(t){var r=e,n=r.lib,i=n.WordArray,s=n.Hasher,a=r.algo,o=i.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),u=i.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),c=i.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=i.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=i.create([0,1518500249,1859775393,2400959708,2840853838]),f=i.create([1352829926,1548603684,1836072691,2053994217,0]),p=a.RIPEMD160=s.extend({_doReset:function(){this._hash=i.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(_,E){for(var S=0;S<16;S++){var C=E+S,I=_[C];_[C]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360}var N=this._hash.words,T=d.words,k=f.words,O=o.words,P=u.words,$=c.words,Q=l.words,j,z,X,K,Z,Y,ie,ue,he,ye;Y=j=N[0],ie=z=N[1],ue=X=N[2],he=K=N[3],ye=Z=N[4];for(var q,S=0;S<80;S+=1)q=j+_[E+O[S]]|0,S<16?q+=h(z,X,K)+T[0]:S<32?q+=m(z,X,K)+T[1]:S<48?q+=y(z,X,K)+T[2]:S<64?q+=g(z,X,K)+T[3]:q+=v(z,X,K)+T[4],q=q|0,q=A(q,$[S]),q=q+Z|0,j=Z,Z=K,K=A(X,10),X=z,z=q,q=Y+_[E+P[S]]|0,S<16?q+=v(ie,ue,he)+k[0]:S<32?q+=g(ie,ue,he)+k[1]:S<48?q+=y(ie,ue,he)+k[2]:S<64?q+=m(ie,ue,he)+k[3]:q+=h(ie,ue,he)+k[4],q=q|0,q=A(q,Q[S]),q=q+ye|0,Y=ye,ye=he,he=A(ue,10),ue=ie,ie=q;q=N[1]+X+he|0,N[1]=N[2]+K+ye|0,N[2]=N[3]+Z+Y|0,N[3]=N[4]+j+ie|0,N[4]=N[0]+z+ue|0,N[0]=q},_doFinalize:function(){var _=this._data,E=_.words,S=this._nDataBytes*8,C=_.sigBytes*8;E[C>>>5]|=128<<24-C%32,E[(C+64>>>9<<4)+14]=(S<<8|S>>>24)&16711935|(S<<24|S>>>8)&4278255360,_.sigBytes=(E.length+1)*4,this._process();for(var I=this._hash,N=I.words,T=0;T<5;T++){var k=N[T];N[T]=(k<<8|k>>>24)&16711935|(k<<24|k>>>8)&4278255360}return I},clone:function(){var _=s.clone.call(this);return _._hash=this._hash.clone(),_}});function h(_,E,S){return _^E^S}function m(_,E,S){return _&E|~_&S}function y(_,E,S){return(_|~E)^S}function g(_,E,S){return _&S|E&~S}function v(_,E,S){return _^(E|~S)}function A(_,E){return _<>>32-E}r.RIPEMD160=s._createHelper(p),r.HmacRIPEMD160=s._createHmacHelper(p)}(Math),e.RIPEMD160})});var bq=b((vq,YEt)=>{(function(e,t){typeof vq=="object"?YEt.exports=vq=t(vr()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(vq,function(e){(function(){var t=e,r=t.lib,n=r.Base,i=t.enc,s=i.Utf8,a=t.algo,o=a.HMAC=n.extend({init:function(u,c){u=this._hasher=new u.init,typeof c=="string"&&(c=s.parse(c));var l=u.blockSize,d=l*4;c.sigBytes>d&&(c=u.finalize(c)),c.clamp();for(var f=this._oKey=c.clone(),p=this._iKey=c.clone(),h=f.words,m=p.words,y=0;y{(function(e,t,r){typeof Eq=="object"?WEt.exports=Eq=t(vr(),hq(),bq()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],t):t(e.CryptoJS)})(Eq,function(e){return function(){var t=e,r=t.lib,n=r.Base,i=r.WordArray,s=t.algo,a=s.SHA256,o=s.HMAC,u=s.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,l){for(var d=this.cfg,f=o.create(d.hasher,c),p=i.create(),h=i.create([1]),m=p.words,y=h.words,g=d.keySize,v=d.iterations;m.length{(function(e,t,r){typeof Sq=="object"?JEt.exports=Sq=t(vr(),Lye(),bq()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],t):t(e.CryptoJS)})(Sq,function(e){return function(){var t=e,r=t.lib,n=r.Base,i=r.WordArray,s=t.algo,a=s.MD5,o=s.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,c){for(var l,d=this.cfg,f=d.hasher.create(),p=i.create(),h=p.words,m=d.keySize,y=d.iterations;h.length{(function(e,t,r){typeof wq=="object"?ZEt.exports=wq=t(vr(),Jm()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],t):t(e.CryptoJS)})(wq,function(e){e.lib.Cipher||function(t){var r=e,n=r.lib,i=n.Base,s=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,u=o.Utf8,c=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:i.extend(),createEncryptor:function(k,O){return this.create(this._ENC_XFORM_MODE,k,O)},createDecryptor:function(k,O){return this.create(this._DEC_XFORM_MODE,k,O)},init:function(k,O,P){this.cfg=this.cfg.extend(P),this._xformMode=k,this._key=O,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(k){return this._append(k),this._process()},finalize:function(k){k&&this._append(k);var O=this._doFinalize();return O},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function k(O){return typeof O=="string"?T:C}return function(O){return{encrypt:function(P,$,Q){return k($).encrypt(O,P,$,Q)},decrypt:function(P,$,Q){return k($).decrypt(O,P,$,Q)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var k=this._process(!0);return k},blockSize:1}),h=r.mode={},m=n.BlockCipherMode=i.extend({createEncryptor:function(k,O){return this.Encryptor.create(k,O)},createDecryptor:function(k,O){return this.Decryptor.create(k,O)},init:function(k,O){this._cipher=k,this._iv=O}}),y=h.CBC=function(){var k=m.extend();k.Encryptor=k.extend({processBlock:function(P,$){var Q=this._cipher,j=Q.blockSize;O.call(this,P,$,j),Q.encryptBlock(P,$),this._prevBlock=P.slice($,$+j)}}),k.Decryptor=k.extend({processBlock:function(P,$){var Q=this._cipher,j=Q.blockSize,z=P.slice($,$+j);Q.decryptBlock(P,$),O.call(this,P,$,j),this._prevBlock=z}});function O(P,$,Q){var j,z=this._iv;z?(j=z,this._iv=t):j=this._prevBlock;for(var X=0;X>>2]&255;k.sigBytes-=O}},A=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:y,padding:v}),reset:function(){var k;f.reset.call(this);var O=this.cfg,P=O.iv,$=O.mode;this._xformMode==this._ENC_XFORM_MODE?k=$.createEncryptor:(k=$.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==k?this._mode.init(this,P&&P.words):(this._mode=k.call($,this,P&&P.words),this._mode.__creator=k)},_doProcessBlock:function(k,O){this._mode.processBlock(k,O)},_doFinalize:function(){var k,O=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(O.pad(this._data,this.blockSize),k=this._process(!0)):(k=this._process(!0),O.unpad(k)),k},blockSize:128/32}),_=n.CipherParams=i.extend({init:function(k){this.mixIn(k)},toString:function(k){return(k||this.formatter).stringify(this)}}),E=r.format={},S=E.OpenSSL={stringify:function(k){var O,P=k.ciphertext,$=k.salt;return $?O=s.create([1398893684,1701076831]).concat($).concat(P):O=P,O.toString(c)},parse:function(k){var O,P=c.parse(k),$=P.words;return $[0]==1398893684&&$[1]==1701076831&&(O=s.create($.slice(2,4)),$.splice(0,4),P.sigBytes-=16),_.create({ciphertext:P,salt:O})}},C=n.SerializableCipher=i.extend({cfg:i.extend({format:S}),encrypt:function(k,O,P,$){$=this.cfg.extend($);var Q=k.createEncryptor(P,$),j=Q.finalize(O),z=Q.cfg;return _.create({ciphertext:j,key:P,iv:z.iv,algorithm:k,mode:z.mode,padding:z.padding,blockSize:k.blockSize,formatter:$.format})},decrypt:function(k,O,P,$){$=this.cfg.extend($),O=this._parse(O,$.format);var Q=k.createDecryptor(P,$).finalize(O.ciphertext);return Q},_parse:function(k,O){return typeof k=="string"?O.parse(k,this):k}}),I=r.kdf={},N=I.OpenSSL={execute:function(k,O,P,$,Q){if($||($=s.random(64/8)),Q)var j=d.create({keySize:O+P,hasher:Q}).compute(k,$);else var j=d.create({keySize:O+P}).compute(k,$);var z=s.create(j.words.slice(O),P*4);return j.sigBytes=O*4,_.create({key:j,iv:z,salt:$})}},T=n.PasswordBasedCipher=C.extend({cfg:C.cfg.extend({kdf:N}),encrypt:function(k,O,P,$){$=this.cfg.extend($);var Q=$.kdf.execute(P,k.keySize,k.ivSize,$.salt,$.hasher);$.iv=Q.iv;var j=C.encrypt.call(this,k,O,Q.key,$);return j.mixIn(Q),j},decrypt:function(k,O,P,$){$=this.cfg.extend($),O=this._parse(O,$.format);var Q=$.kdf.execute(P,k.keySize,k.ivSize,O.salt,$.hasher);$.iv=Q.iv;var j=C.decrypt.call(this,k,O,Q.key,$);return j}})}()})});var t1t=b((Iq,e1t)=>{(function(e,t,r){typeof Iq=="object"?e1t.exports=Iq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Iq,function(e){return e.mode.CFB=function(){var t=e.lib.BlockCipherMode.extend();t.Encryptor=t.extend({processBlock:function(n,i){var s=this._cipher,a=s.blockSize;r.call(this,n,i,a,s),this._prevBlock=n.slice(i,i+a)}}),t.Decryptor=t.extend({processBlock:function(n,i){var s=this._cipher,a=s.blockSize,o=n.slice(i,i+a);r.call(this,n,i,a,s),this._prevBlock=o}});function r(n,i,s,a){var o,u=this._iv;u?(o=u.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var c=0;c{(function(e,t,r){typeof xq=="object"?r1t.exports=xq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(xq,function(e){return e.mode.CTR=function(){var t=e.lib.BlockCipherMode.extend(),r=t.Encryptor=t.extend({processBlock:function(n,i){var s=this._cipher,a=s.blockSize,o=this._iv,u=this._counter;o&&(u=this._counter=o.slice(0),this._iv=void 0);var c=u.slice(0);s.encryptBlock(c,0),u[a-1]=u[a-1]+1|0;for(var l=0;l{(function(e,t,r){typeof Cq=="object"?i1t.exports=Cq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Cq,function(e){return e.mode.CTRGladman=function(){var t=e.lib.BlockCipherMode.extend();function r(s){if((s>>24&255)===255){var a=s>>16&255,o=s>>8&255,u=s&255;a===255?(a=0,o===255?(o=0,u===255?u=0:++u):++o):++a,s=0,s+=a<<16,s+=o<<8,s+=u}else s+=1<<24;return s}function n(s){return(s[0]=r(s[0]))===0&&(s[1]=r(s[1])),s}var i=t.Encryptor=t.extend({processBlock:function(s,a){var o=this._cipher,u=o.blockSize,c=this._iv,l=this._counter;c&&(l=this._counter=c.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f{(function(e,t,r){typeof Tq=="object"?a1t.exports=Tq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Tq,function(e){return e.mode.OFB=function(){var t=e.lib.BlockCipherMode.extend(),r=t.Encryptor=t.extend({processBlock:function(n,i){var s=this._cipher,a=s.blockSize,o=this._iv,u=this._keystream;o&&(u=this._keystream=o.slice(0),this._iv=void 0),s.encryptBlock(u,0);for(var c=0;c{(function(e,t,r){typeof Nq=="object"?u1t.exports=Nq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Nq,function(e){return e.mode.ECB=function(){var t=e.lib.BlockCipherMode.extend();return t.Encryptor=t.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),t.Decryptor=t.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),t}(),e.mode.ECB})});var d1t=b((Rq,l1t)=>{(function(e,t,r){typeof Rq=="object"?l1t.exports=Rq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Rq,function(e){return e.pad.AnsiX923={pad:function(t,r){var n=t.sigBytes,i=r*4,s=i-n%i,a=n+s-1;t.clamp(),t.words[a>>>2]|=s<<24-a%4*8,t.sigBytes+=s},unpad:function(t){var r=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=r}},e.pad.Ansix923})});var p1t=b((Dq,f1t)=>{(function(e,t,r){typeof Dq=="object"?f1t.exports=Dq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Dq,function(e){return e.pad.Iso10126={pad:function(t,r){var n=r*4,i=n-t.sigBytes%n;t.concat(e.lib.WordArray.random(i-1)).concat(e.lib.WordArray.create([i<<24],1))},unpad:function(t){var r=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=r}},e.pad.Iso10126})});var m1t=b((kq,h1t)=>{(function(e,t,r){typeof kq=="object"?h1t.exports=kq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(kq,function(e){return e.pad.Iso97971={pad:function(t,r){t.concat(e.lib.WordArray.create([2147483648],1)),e.pad.ZeroPadding.pad(t,r)},unpad:function(t){e.pad.ZeroPadding.unpad(t),t.sigBytes--}},e.pad.Iso97971})});var y1t=b((Oq,g1t)=>{(function(e,t,r){typeof Oq=="object"?g1t.exports=Oq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Oq,function(e){return e.pad.ZeroPadding={pad:function(t,r){var n=r*4;t.clamp(),t.sigBytes+=n-(t.sigBytes%n||n)},unpad:function(t){for(var r=t.words,n=t.sigBytes-1,n=t.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){t.sigBytes=n+1;break}}},e.pad.ZeroPadding})});var A1t=b((Pq,_1t)=>{(function(e,t,r){typeof Pq=="object"?_1t.exports=Pq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Pq,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})});var b1t=b((Mq,v1t)=>{(function(e,t,r){typeof Mq=="object"?v1t.exports=Mq=t(vr(),Ms()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(Mq,function(e){return function(t){var r=e,n=r.lib,i=n.CipherParams,s=r.enc,a=s.Hex,o=r.format,u=o.Hex={stringify:function(c){return c.ciphertext.toString(a)},parse:function(c){var l=a.parse(c);return i.create({ciphertext:l})}}}(),e.format.Hex})});var S1t=b((Lq,E1t)=>{(function(e,t,r){typeof Lq=="object"?E1t.exports=Lq=t(vr(),ky(),Oy(),Jm(),Ms()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(Lq,function(e){return function(){var t=e,r=t.lib,n=r.BlockCipher,i=t.algo,s=[],a=[],o=[],u=[],c=[],l=[],d=[],f=[],p=[],h=[];(function(){for(var g=[],v=0;v<256;v++)v<128?g[v]=v<<1:g[v]=v<<1^283;for(var A=0,_=0,v=0;v<256;v++){var E=_^_<<1^_<<2^_<<3^_<<4;E=E>>>8^E&255^99,s[A]=E,a[E]=A;var S=g[A],C=g[S],I=g[C],N=g[E]*257^E*16843008;o[A]=N<<24|N>>>8,u[A]=N<<16|N>>>16,c[A]=N<<8|N>>>24,l[A]=N;var N=I*16843009^C*65537^S*257^A*16843008;d[E]=N<<24|N>>>8,f[E]=N<<16|N>>>16,p[E]=N<<8|N>>>24,h[E]=N,A?(A=S^g[g[g[I^S]]],_^=g[g[_]]):A=_=1}})();var m=[0,1,2,4,8,16,32,64,128,27,54],y=i.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var v=this._keyPriorReset=this._key,A=v.words,_=v.sigBytes/4,E=this._nRounds=_+6,S=(E+1)*4,C=this._keySchedule=[],I=0;I6&&I%_==4&&(g=s[g>>>24]<<24|s[g>>>16&255]<<16|s[g>>>8&255]<<8|s[g&255]):(g=g<<8|g>>>24,g=s[g>>>24]<<24|s[g>>>16&255]<<16|s[g>>>8&255]<<8|s[g&255],g^=m[I/_|0]<<24),C[I]=C[I-_]^g);for(var N=this._invKeySchedule=[],T=0;T>>24]]^f[s[g>>>16&255]]^p[s[g>>>8&255]]^h[s[g&255]]}}},encryptBlock:function(g,v){this._doCryptBlock(g,v,this._keySchedule,o,u,c,l,s)},decryptBlock:function(g,v){var A=g[v+1];g[v+1]=g[v+3],g[v+3]=A,this._doCryptBlock(g,v,this._invKeySchedule,d,f,p,h,a);var A=g[v+1];g[v+1]=g[v+3],g[v+3]=A},_doCryptBlock:function(g,v,A,_,E,S,C,I){for(var N=this._nRounds,T=g[v]^A[0],k=g[v+1]^A[1],O=g[v+2]^A[2],P=g[v+3]^A[3],$=4,Q=1;Q>>24]^E[k>>>16&255]^S[O>>>8&255]^C[P&255]^A[$++],z=_[k>>>24]^E[O>>>16&255]^S[P>>>8&255]^C[T&255]^A[$++],X=_[O>>>24]^E[P>>>16&255]^S[T>>>8&255]^C[k&255]^A[$++],K=_[P>>>24]^E[T>>>16&255]^S[k>>>8&255]^C[O&255]^A[$++];T=j,k=z,O=X,P=K}var j=(I[T>>>24]<<24|I[k>>>16&255]<<16|I[O>>>8&255]<<8|I[P&255])^A[$++],z=(I[k>>>24]<<24|I[O>>>16&255]<<16|I[P>>>8&255]<<8|I[T&255])^A[$++],X=(I[O>>>24]<<24|I[P>>>16&255]<<16|I[T>>>8&255]<<8|I[k&255])^A[$++],K=(I[P>>>24]<<24|I[T>>>16&255]<<16|I[k>>>8&255]<<8|I[O&255])^A[$++];g[v]=j,g[v+1]=z,g[v+2]=X,g[v+3]=K},keySize:256/32});t.AES=n._createHelper(y)}(),e.AES})});var I1t=b((Bq,w1t)=>{(function(e,t,r){typeof Bq=="object"?w1t.exports=Bq=t(vr(),ky(),Oy(),Jm(),Ms()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(Bq,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,i=r.BlockCipher,s=t.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],u=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],c=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=s.DES=i.extend({_doReset:function(){for(var m=this._key,y=m.words,g=[],v=0;v<56;v++){var A=a[v]-1;g[v]=y[A>>>5]>>>31-A%32&1}for(var _=this._subKeys=[],E=0;E<16;E++){for(var S=_[E]=[],C=u[E],v=0;v<24;v++)S[v/6|0]|=g[(o[v]-1+C)%28]<<31-v%6,S[4+(v/6|0)]|=g[28+(o[v+24]-1+C)%28]<<31-v%6;S[0]=S[0]<<1|S[0]>>>31;for(var v=1;v<7;v++)S[v]=S[v]>>>(v-1)*4+3;S[7]=S[7]<<5|S[7]>>>27}for(var I=this._invSubKeys=[],v=0;v<16;v++)I[v]=_[15-v]},encryptBlock:function(m,y){this._doCryptBlock(m,y,this._subKeys)},decryptBlock:function(m,y){this._doCryptBlock(m,y,this._invSubKeys)},_doCryptBlock:function(m,y,g){this._lBlock=m[y],this._rBlock=m[y+1],f.call(this,4,252645135),f.call(this,16,65535),p.call(this,2,858993459),p.call(this,8,16711935),f.call(this,1,1431655765);for(var v=0;v<16;v++){for(var A=g[v],_=this._lBlock,E=this._rBlock,S=0,C=0;C<8;C++)S|=c[C][((E^A[C])&l[C])>>>0];this._lBlock=E,this._rBlock=_^S}var I=this._lBlock;this._lBlock=this._rBlock,this._rBlock=I,f.call(this,1,1431655765),p.call(this,8,16711935),p.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),m[y]=this._lBlock,m[y+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(m,y){var g=(this._lBlock>>>m^this._rBlock)&y;this._rBlock^=g,this._lBlock^=g<>>m^this._lBlock)&y;this._lBlock^=g,this._rBlock^=g<192.");var g=y.slice(0,2),v=y.length<4?y.slice(0,2):y.slice(2,4),A=y.length<6?y.slice(0,2):y.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(v)),this._des3=d.createEncryptor(n.create(A))},encryptBlock:function(m,y){this._des1.encryptBlock(m,y),this._des2.decryptBlock(m,y),this._des3.encryptBlock(m,y)},decryptBlock:function(m,y){this._des3.decryptBlock(m,y),this._des2.encryptBlock(m,y),this._des1.decryptBlock(m,y)},keySize:192/32,ivSize:64/32,blockSize:64/32});t.TripleDES=i._createHelper(h)}(),e.TripleDES})});var C1t=b(($q,x1t)=>{(function(e,t,r){typeof $q=="object"?x1t.exports=$q=t(vr(),ky(),Oy(),Jm(),Ms()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})($q,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,i=t.algo,s=i.RC4=n.extend({_doReset:function(){for(var u=this._key,c=u.words,l=u.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,p=0;f<256;f++){var h=f%l,m=c[h>>>2]>>>24-h%4*8&255;p=(p+d[f]+m)%256;var y=d[f];d[f]=d[p],d[p]=y}this._i=this._j=0},_doProcessBlock:function(u,c){u[c]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var u=this._S,c=this._i,l=this._j,d=0,f=0;f<4;f++){c=(c+1)%256,l=(l+u[c])%256;var p=u[c];u[c]=u[l],u[l]=p,d|=u[(u[c]+u[l])%256]<<24-f*8}return this._i=c,this._j=l,d}t.RC4=n._createHelper(s);var o=i.RC4Drop=s.extend({cfg:s.cfg.extend({drop:192}),_doReset:function(){s._doReset.call(this);for(var u=this.cfg.drop;u>0;u--)a.call(this)}});t.RC4Drop=n._createHelper(o)}(),e.RC4})});var N1t=b((Fq,T1t)=>{(function(e,t,r){typeof Fq=="object"?T1t.exports=Fq=t(vr(),ky(),Oy(),Jm(),Ms()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(Fq,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,i=t.algo,s=[],a=[],o=[],u=i.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var p=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],h=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)c.call(this);for(var f=0;f<8;f++)h[f]^=p[f+4&7];if(d){var m=d.words,y=m[0],g=m[1],v=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,A=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,_=v>>>16|A&4294901760,E=A<<16|v&65535;h[0]^=v,h[1]^=_,h[2]^=A,h[3]^=E,h[4]^=v,h[5]^=_,h[6]^=A,h[7]^=E;for(var f=0;f<4;f++)c.call(this)}},_doProcessBlock:function(l,d){var f=this._X;c.call(this),s[0]=f[0]^f[5]>>>16^f[3]<<16,s[1]=f[2]^f[7]>>>16^f[5]<<16,s[2]=f[4]^f[1]>>>16^f[7]<<16,s[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)s[p]=(s[p]<<8|s[p]>>>24)&16711935|(s[p]<<24|s[p]>>>8)&4278255360,l[d+p]^=s[p]},blockSize:128/32,ivSize:64/32});function c(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var p=l[f]+d[f],h=p&65535,m=p>>>16,y=((h*h>>>17)+h*m>>>15)+m*m,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=y^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.Rabbit=n._createHelper(u)}(),e.Rabbit})});var D1t=b((Uq,R1t)=>{(function(e,t,r){typeof Uq=="object"?R1t.exports=Uq=t(vr(),ky(),Oy(),Jm(),Ms()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(Uq,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,i=t.algo,s=[],a=[],o=[],u=i.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var h=0;h<4;h++)c.call(this);for(var h=0;h<8;h++)p[h]^=f[h+4&7];if(d){var m=d.words,y=m[0],g=m[1],v=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,A=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,_=v>>>16|A&4294901760,E=A<<16|v&65535;p[0]^=v,p[1]^=_,p[2]^=A,p[3]^=E,p[4]^=v,p[5]^=_,p[6]^=A,p[7]^=E;for(var h=0;h<4;h++)c.call(this)}},_doProcessBlock:function(l,d){var f=this._X;c.call(this),s[0]=f[0]^f[5]>>>16^f[3]<<16,s[1]=f[2]^f[7]>>>16^f[5]<<16,s[2]=f[4]^f[1]>>>16^f[7]<<16,s[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)s[p]=(s[p]<<8|s[p]>>>24)&16711935|(s[p]<<24|s[p]>>>8)&4278255360,l[d+p]^=s[p]},blockSize:128/32,ivSize:64/32});function c(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var p=l[f]+d[f],h=p&65535,m=p>>>16,y=((h*h>>>17)+h*m>>>15)+m*m,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=y^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.RabbitLegacy=n._createHelper(u)}(),e.RabbitLegacy})});var O1t=b((qq,k1t)=>{(function(e,t,r){typeof qq=="object"?k1t.exports=qq=t(vr(),ky(),Oy(),Jm(),Ms()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(qq,function(e){return function(){var t=e,r=t.lib,n=r.BlockCipher,i=t.algo;let s=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var u={pbox:[],sbox:[]};function c(h,m){let y=m>>24&255,g=m>>16&255,v=m>>8&255,A=m&255,_=h.sbox[0][y]+h.sbox[1][g];return _=_^h.sbox[2][v],_=_+h.sbox[3][A],_}function l(h,m,y){let g=m,v=y,A;for(let _=0;_1;--_)g=g^h.pbox[_],v=c(h,g)^v,A=g,g=v,v=A;return A=g,g=v,v=A,v=v^h.pbox[1],g=g^h.pbox[0],{left:g,right:v}}function f(h,m,y){for(let E=0;E<4;E++){h.sbox[E]=[];for(let S=0;S<256;S++)h.sbox[E][S]=o[E][S]}let g=0;for(let E=0;E=y&&(g=0);let v=0,A=0,_=0;for(let E=0;E{(function(e,t,r){typeof jq=="object"?P1t.exports=jq=t(vr(),tP(),DEt(),OEt(),ky(),LEt(),Oy(),Lye(),hq(),qEt(),Bye(),KEt(),zEt(),GEt(),bq(),XEt(),Jm(),Ms(),t1t(),n1t(),s1t(),o1t(),c1t(),d1t(),p1t(),m1t(),y1t(),A1t(),b1t(),S1t(),I1t(),C1t(),N1t(),D1t(),O1t()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],t):e.CryptoJS=t(e.CryptoJS)})(jq,function(e){return e})});var nP=b(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.getOptions=dr.setOptions=dr.hasOwnProp=dr.formatDate=dr.camelify=dr.splitByCommaWithPreservingQuotes=dr.trim=dr.splitAt=dr.tryCatch=dr.byteSequenceToHex=dr.hexToByteSequence=dr.toNumber=dr.INVALIDPLAYLIST=dr.CONDITIONALPARAMCHECK=dr.PARAMCHECK=dr.CONDITIONALASSERT=dr.ASSERT=dr.THROW=void 0;var rP={};function gb(e){if(!rP.strictMode){rP.silent||console.error(e.message);return}throw e}dr.THROW=gb;function g8r(e,...t){for(let[r,n]of t.entries())n||gb(new Error(`${e} : Failed at [${r}]`))}dr.ASSERT=g8r;function y8r(...e){for(let[t,[r,n]]of e.entries())r&&(n||gb(new Error(`Conditional Assert : Failed at [${t}]`)))}dr.CONDITIONALASSERT=y8r;function _8r(...e){for(let[t,r]of e.entries())r===void 0&&gb(new Error(`Param Check : Failed at [${t}]`))}dr.PARAMCHECK=_8r;function A8r(...e){for(let[t,[r,n]]of e.entries())r&&n===void 0&&gb(new Error(`Conditional Param Check : Failed at [${t}]`))}dr.CONDITIONALPARAMCHECK=A8r;function v8r(e){gb(new Error(`Invalid Playlist : ${e}`))}dr.INVALIDPLAYLIST=v8r;function M1t(e,t=10){if(typeof e=="number")return e;let r=t===10?Number.parseFloat(e):Number.parseInt(e,t);return Number.isNaN(r)?0:r}dr.toNumber=M1t;function b8r(e){(e.startsWith("0x")||e.startsWith("0X"))&&(e=e.slice(2));let t=[];for(let r=0;r{"use strict";var k8r=br&&br.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),O8r=br&&br.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),P8r=br&&br.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&k8r(t,e,r);return O8r(t,e),t};Object.defineProperty(br,"__esModule",{value:!0});br.RenditionReport=br.PrefetchSegment=br.PartialSegment=br.Segment=br.MediaPlaylist=br.MasterPlaylist=br.Playlist=br.SpliceInfo=br.DateRange=br.MediaInitializationSection=br.Key=br.SessionData=br.Variant=br.Rendition=void 0;var bs=P8r(nP()),$ye=class{constructor({type:t,uri:r,groupId:n,language:i,assocLanguage:s,name:a,isDefault:o,autoselect:u,forced:c,instreamId:l,characteristics:d,channels:f}){bs.PARAMCHECK(t,n,a),bs.CONDITIONALASSERT([t==="SUBTITLES",r],[t==="CLOSED-CAPTIONS",l],[t==="CLOSED-CAPTIONS",!r],[c,t==="SUBTITLES"]),this.type=t,this.uri=r,this.groupId=n,this.language=i,this.assocLanguage=s,this.name=a,this.isDefault=o,this.autoselect=u,this.forced=c,this.instreamId=l,this.characteristics=d,this.channels=f}};br.Rendition=$ye;var Fye=class{constructor({uri:t,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:i,score:s,codecs:a,resolution:o,frameRate:u,hdcpLevel:c,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:h=[],video:m=[],subtitles:y=[],closedCaptions:g=[],currentRenditions:v={audio:0,video:0,subtitles:0,closedCaptions:0}}){bs.PARAMCHECK(t,n),this.uri=t,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=i,this.score=s,this.codecs=a,this.resolution=o,this.frameRate=u,this.hdcpLevel=c,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=p,this.audio=h,this.video=m,this.subtitles=y,this.closedCaptions=g,this.currentRenditions=v}};br.Variant=Fye;var Uye=class{constructor({id:t,value:r,uri:n,language:i}){bs.PARAMCHECK(t,r||n),bs.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=t,this.value=r,this.uri=n,this.language=i}};br.SessionData=Uye;var qye=class{constructor({method:t,uri:r,iv:n,format:i,formatVersion:s}){bs.PARAMCHECK(t),bs.CONDITIONALPARAMCHECK([t!=="NONE",r]),bs.CONDITIONALASSERT([t==="NONE",!(r||n||i||s)]),this.method=t,this.uri=r,this.iv=n,this.format=i,this.formatVersion=s}};br.Key=qye;var jye=class{constructor({hint:t=!1,uri:r,mimeType:n,byterange:i}){bs.PARAMCHECK(r),this.hint=t,this.uri=r,this.mimeType=n,this.byterange=i}};br.MediaInitializationSection=jye;var Hye=class{constructor({id:t,classId:r,start:n,end:i,duration:s,plannedDuration:a,endOnNext:o,attributes:u={}}){bs.PARAMCHECK(t),bs.CONDITIONALPARAMCHECK([o===!0,r]),bs.CONDITIONALASSERT([i,n],[i,n<=i],[s,s>=0],[a,a>=0]),this.id=t,this.classId=r,this.start=n,this.end=i,this.duration=s,this.plannedDuration=a,this.endOnNext=o,this.attributes=u}};br.DateRange=Hye;var Kye=class{constructor({type:t,duration:r,tagName:n,value:i}){bs.PARAMCHECK(t),bs.CONDITIONALPARAMCHECK([t==="OUT",r]),bs.CONDITIONALPARAMCHECK([t==="RAW",n]),this.type=t,this.duration=r,this.tagName=n,this.value=i}};br.SpliceInfo=Kye;var TI=class{constructor(t){bs.PARAMCHECK(t),this.type=t}},iP=class extends TI{constructor({isMasterPlaylist:t,uri:r,version:n,independentSegments:i=!1,start:s,source:a}){super("playlist"),bs.PARAMCHECK(t),this.isMasterPlaylist=t,this.uri=r,this.version=n,this.independentSegments=i,this.start=s,this.source=a}};br.Playlist=iP;var Vye=class extends iP{constructor(t={}){super({...t,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:i=[],sessionKeyList:s=[]}=t;this.variants=r,this.currentVariant=n,this.sessionDataList=i,this.sessionKeyList=s}};br.MasterPlaylist=Vye;var zye=class extends iP{constructor(t={}){super({...t,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:i=0,endlist:s=!1,playlistType:a,isIFrame:o,segments:u=[],prefetchSegments:c=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:p=0,hash:h}=t;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=i,this.endlist=s,this.playlistType=a,this.isIFrame=o,this.segments=u,this.prefetchSegments=c,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=p,this.hash=h}};br.MediaPlaylist=zye;var Qye=class extends TI{constructor({uri:t,mimeType:r,data:n,duration:i,title:s,byterange:a,discontinuity:o,mediaSequenceNumber:u=0,discontinuitySequence:c=0,key:l,map:d,programDateTime:f,dateRange:p,markers:h=[],parts:m=[]}){super("segment"),this.uri=t,this.mimeType=r,this.data=n,this.duration=i,this.title=s,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=u,this.discontinuitySequence=c,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=p,this.markers=h,this.parts=m}};br.Segment=Qye;var Gye=class extends TI{constructor({hint:t=!1,uri:r,duration:n,independent:i,byterange:s,gap:a}){super("part"),bs.PARAMCHECK(r),this.hint=t,this.uri=r,this.duration=n,this.independent=i,this.duration=n,this.byterange=s,this.gap=a}};br.PartialSegment=Gye;var Yye=class extends TI{constructor({uri:t,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:i=0,key:s}){super("prefetch"),bs.PARAMCHECK(t),this.uri=t,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=i,this.key=s}};br.PrefetchSegment=Yye;var Wye=class{constructor({uri:t,lastMSN:r,lastPart:n}){bs.PARAMCHECK(t),this.uri=t,this.lastMSN=r,this.lastPart=n}};br.RenditionReport=Wye});var H1t=b(Zm=>{"use strict";var M8r=Zm&&Zm.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),L8r=Zm&&Zm.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),B8r=Zm&&Zm.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&M8r(t,e,r);return L8r(t,e),t};Object.defineProperty(Zm,"__esModule",{value:!0});var Ke=B8r(nP()),da=Xye();function q1t(e){return Ke.trim(e,'"')}function $8r(e){switch(e){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function F8r(e){let t=Ke.splitAt(e,",");return{duration:Ke.toNumber(t[0]),title:decodeURIComponent(escape(t[1]))}}function j1t(e){let t=Ke.splitAt(e,"@");return{length:Ke.toNumber(t[0]),offset:t[1]?Ke.toNumber(t[1]):-1}}function U8r(e){let t=Ke.splitAt(e,"x");return{width:Ke.toNumber(t[0]),height:Ke.toNumber(t[1])}}function q8r(e){let t="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=e.split(",");r.length===0&&Ke.INVALIDPLAYLIST(t);let n=[];for(let i of r){let[s,a]=Ke.splitAt(i,":");if(!s||!a){Ke.INVALIDPLAYLIST(t);continue}n.push({format:s,cpcList:a.split("/")})}return n}function j8r(e){let t=Ke.hexToByteSequence(e);return t.length!==16&&Ke.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),t}function H8r(e){return e.startsWith('"')?q1t(e):e.startsWith("0x")||e.startsWith("0X")?Ke.hexToByteSequence(e):Ke.toNumber(e)}function Jye(e,t){t.IV&&e.compatibleVersion<2&&(e.compatibleVersion=2),(t.KEYFORMAT||t.KEYFORMATVERSIONS)&&e.compatibleVersion<5&&(e.compatibleVersion=5)}function L1t(e){let t={};for(let r of Ke.splitByCommaWithPreservingQuotes(e)){let[n,i]=Ke.splitAt(r,"="),s=q1t(i);switch(n){case"URI":t[n]=s;break;case"START-DATE":case"END-DATE":t[n]=new Date(s);break;case"IV":t[n]=j8r(s);break;case"BYTERANGE":t[n]=j1t(s);break;case"RESOLUTION":t[n]=U8r(s);break;case"ALLOWED-CPC":t[n]=q8r(s);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":t[n]=s==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":t[n]=Ke.toNumber(s);break;default:n.startsWith("SCTE35-")?t[n]=Ke.hexToByteSequence(s):n.startsWith("X-")?t[n]=H8r(i):(n==="VIDEO-RANGE"&&s!=="SDR"&&s!=="HLG"&&s!=="PQ"&&Ke.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${s}"`),t[n]=s)}}return t}function K8r(e,t){switch(e){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[Ke.toNumber(t),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(t))?[null,L1t(t)]:[Ke.toNumber(t),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,L1t(t)];case"EXTINF":return[F8r(t),null];case"EXT-X-BYTERANGE":return[j1t(t),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(t),null];case"EXT-X-PLAYLIST-TYPE":return[t,null];default:return[t,null]}}function B1t(){Ke.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function V8r(e){let t=e.indexOf(":");return t===-1?[e.slice(1).trim(),null]:[e.slice(1,t).trim(),e.slice(t+1).trim()]}function z8r({attributes:e}){return new da.Rendition({type:e.TYPE,uri:e.URI,groupId:e["GROUP-ID"],language:e.LANGUAGE,assocLanguage:e["ASSOC-LANGUAGE"],name:e.NAME,isDefault:e.DEFAULT,autoselect:e.AUTOSELECT,forced:e.FORCED,instreamId:e["INSTREAM-ID"],characteristics:e.CHARACTERISTICS,channels:e.CHANNELS})}function Q8r(e,t){let r=!1;for(let n of e){if(n.name===t.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&t.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function G8r(e,t,r){let n=z8r(t),i=e[Ke.camelify(r)],s=Q8r(i,n);s&&Ke.INVALIDPLAYLIST(s),i.push(n),n.isDefault&&(e.currentRenditions[Ke.camelify(r)]=i.length-1)}function Y8r(e,t,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&e[n]==="NONE"?(r.isClosedCaptionsNone=!0,t.closedCaptions=[]):e[n]&&!t[Ke.camelify(n)].some(i=>i.groupId===e[n])&&Ke.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function $1t(e,t,r,n,i){let s=new da.Variant({uri:r,bandwidth:t.BANDWIDTH,averageBandwidth:t["AVERAGE-BANDWIDTH"],score:t.SCORE,codecs:t.CODECS,resolution:t.RESOLUTION,frameRate:t["FRAME-RATE"],hdcpLevel:t["HDCP-LEVEL"],allowedCpc:t["ALLOWED-CPC"],videoRange:t["VIDEO-RANGE"],stableVariantId:t["STABLE-VARIANT-ID"],programId:t["PROGRAM-ID"]});for(let a of e)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,u=o.TYPE;if((!u||!o["GROUP-ID"])&&Ke.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),t[u]===o["GROUP-ID"]&&(G8r(s,a,u),u==="CLOSED-CAPTIONS")){for(let{instreamId:c}of s.closedCaptions)if(c&&c.startsWith("SERVICE")&&i.compatibleVersion<7){i.compatibleVersion=7;break}}}return Y8r(t,s,i),s.isIFrameOnly=n,s}function W8r(e,t){if(e.method!==t.method||e.uri!==t.uri)return!1;if(e.iv){if(!t.iv||e.iv.length!==t.iv.length)return!1;for(let r=0;rc.id===u.id&&c.language===u.language)&&Ke.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(u)}else if(s==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&Ke.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let u=new da.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(c=>W8r(c,u))&&Ke.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),Jye(t,o),r.sessionKeyList.push(u)}else s==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&Ke.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):s==="EXT-X-START"&&(r.start&&Ke.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&Ke.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let i of r.variants)typeof i.score!="number"&&Ke.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(t.isClosedCaptionsNone)for(let i of r.variants)i.closedCaptions.length>0&&Ke.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function F1t(e,t,r,n,i,s,a){let o=new da.Segment({uri:t,mediaSequenceNumber:i,discontinuitySequence:s}),u=!1,c=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=e[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&Ke.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&Ke.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&Ke.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),Jye(a,p),o.key=new da.Key({method:p.METHOD,uri:p.URI,iv:p.IV,format:p.KEYFORMAT,formatVersion:p.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&Ke.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new da.MediaInitializationSection({uri:p.URI,byterange:p.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let h={};for(let m of Object.keys(p))(m.startsWith("SCTE35-")||m.startsWith("X-"))&&(h[m]=p[m]);o.dateRange=new da.DateRange({id:p.ID,classId:p.CLASS,start:p["START-DATE"],end:p["END-DATE"],duration:p.DURATION,plannedDuration:p["PLANNED-DURATION"],endOnNext:p["END-ON-NEXT"],attributes:h})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new da.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new da.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new da.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)Ke.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&c)Ke.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!p.URI)Ke.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")u&&Ke.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),u=!0,a.hasMap=!0,o.map=new da.MediaInitializationSection({hint:!0,uri:p.URI,byterange:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"){d==="EXT-X-PART"&&!p.DURATION&&Ke.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(c=!0);let h=new da.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:p.URI,byterange:d==="EXT-X-PART"?p.BYTERANGE:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0},duration:p.DURATION,independent:p.INDEPENDENT,gap:p.GAP});o.parts.push(h)}}return o}function J8r(e,t,r,n,i,s,a){let o=new da.PrefetchSegment({uri:t,mediaSequenceNumber:i,discontinuitySequence:s});for(let u=r;u<=n;u++){let{name:c,attributes:l}=e[u];c==="EXTINF"?Ke.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):c==="EXT-X-DISCONTINUITY"?Ke.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):c==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:c==="EXT-X-KEY"?(Jye(a,l),o.key=new da.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):c==="EXT-X-MAP"&&Ke.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function Z8r(e,t){let r=new da.MediaPlaylist,n=-1,i=0,s=!1,a=!1,o=0,u=null,c=null,l=!1;for(let[d,f]of e.entries()){let{name:p,value:h,attributes:m,category:y}=f;if(y==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(s=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=h:Ke.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=t.targetDuration=h;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&Ke.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=i=h;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&Ke.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),s&&Ke.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=h;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=h;else if(p==="EXT-X-I-FRAMES-ONLY")t.compatibleVersion<4&&(t.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&Ke.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(p==="EXT-X-START")r.start&&Ke.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof m["TIME-OFFSET"]!="number"&&Ke.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:m["TIME-OFFSET"],precise:m.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")m["CAN-BLOCK-RELOAD"]||Ke.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:m["CAN-BLOCK-RELOAD"],canSkipUntil:m["CAN-SKIP-UNTIL"],holdBack:m["HOLD-BACK"],partHoldBack:m["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")m["PART-TARGET"]||Ke.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=m["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")m.URI||Ke.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),m.URI.search(/^[a-z]+:/)===0&&Ke.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new da.RenditionReport({uri:m.URI,lastMSN:m["LAST-MSN"],lastPart:m["LAST-PART"]}));else if(p==="EXT-X-SKIP")m["SKIPPED-SEGMENTS"]||Ke.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),t.compatibleVersion<9&&(t.compatibleVersion=9),r.skip=m["SKIPPED-SEGMENTS"],i+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=J8r(e,h,n===-1?d:n,d-1,i++,o,t);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?u=g.key:g.key=u,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&Ke.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||Ke.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&Ke.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=F1t(e,f,n,d-1,i++,o,t);g&&([o,u,c]=U1t(r,g,o,u,c),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=F1t(e,"",n,e.length-1,i++,o,t);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&Ke.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),U1t(r,d,u,c),!l&&d.parts.length>0&&(l=!0)}}return eUr(r.segments),r.lowLatencyCompatibility&&tUr(r,l),r}function U1t(e,t,r,n,i){let{discontinuity:s,key:a,map:o,byterange:u,uri:c}=t;if(s&&(t.discontinuitySequence=r+1),a||(t.key=n),o||(t.map=i),u&&u.offset===-1){let{segments:l}=e;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===c?u.offset=d.byterange.offset+d.byterange.length:Ke.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else Ke.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return e.segments.push(t),[t.discontinuitySequence,t.key,t.map]}function eUr(e){let t=new Map,r=new Map,n=!1,i=!1;for(let s=e.length-1;s>=0;s--){let{programDateTime:a,dateRange:o}=e[s];if(a&&(i=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&Ke.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let u=o.start.getTime(),c=o.duration||0;o.end&&o.duration&&u+c*1e3!==o.end.getTime()&&Ke.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=t.get(o.classId)),t.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=u&&f.end>u||f.start>=u&&f.start0&&cr&&Ke.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(c.lastPart=l.parts.length-1)}}function rUr(e,t){if(e==="Segment"||e==="MediaPlaylist"){if(t.isMasterPlaylist===void 0){t.isMasterPlaylist=!1;return}t.isMasterPlaylist&&B1t();return}if(e==="MasterPlaylist"){if(t.isMasterPlaylist===void 0){t.isMasterPlaylist=!0;return}t.isMasterPlaylist===!1&&B1t()}}function nUr(e,t){let[r,n]=V8r(e),i=$8r(r);if(rUr(i,t),i==="Unknown")return null;i==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(t.hash[r]&&Ke.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),t.hash[r]=!0);let[s,a]=K8r(r,n);return{name:r,category:i,value:s,attributes:a}}function iUr(e,t){let r=[];for(let n of e.split(` -`)){let i=Buffer.from(n.trim()).toString();if(i){if(i.startsWith("#")){if(i.startsWith("#EXT")){let s=nUr(i,t);s&&r.push(s)}continue}r.push(i)}}return(r.length===0||r[0].name!=="EXTM3U")&&Ke.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function sUr(e,t){let r;return t.isMasterPlaylist?r=X8r(e,t):(r=Z8r(e,t),!r.isIFrame&&t.hasMap&&t.compatibleVersion<6&&(t.compatibleVersion=6)),t.compatibleVersion>1&&(!r.version||r.version{"use strict";var oUr=e0&&e0.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uUr=e0&&e0.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),cUr=e0&&e0.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&oUr(t,e,r);return uUr(t,e),t};Object.defineProperty(e0,"__esModule",{value:!0});var tf=cUr(nP()),lUr=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],dUr=["#EXT-X-MEDIA"],Zye=class extends Array{constructor(t){super(),this.baseUri=t}push(...t){for(let r of t){if(!r.startsWith("#")){super.push(r);continue}if(lUr.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(dUr.some(n=>r.startsWith(n)))continue;tf.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function e_e(e,t){let r=1e3;t&&(r=10**t);let n=Math.round(e*r)/r;return t?n.toFixed(t):n}function fUr(e){let t=e.toString(10),r=t.indexOf(".");return r===-1?0:t.length-r-1}function pUr(e,t){for(let r of t.sessionDataList)e.push(hUr(r));for(let r of t.sessionKeyList)e.push(K1t(r,!0));for(let r of t.variants)mUr(e,r)}function hUr(e){let t=[`DATA-ID="${e.id}"`];return e.language&&t.push(`LANGUAGE="${e.language}"`),e.value?t.push(`VALUE="${e.value}"`):e.uri&&t.push(`URI="${e.uri}"`),`#EXT-X-SESSION-DATA:${t.join(",")}`}function K1t(e,t){let r=t?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${e.method}`];return e.uri&&n.push(`URI="${e.uri}"`),e.iv&&(e.iv.length!==16&&tf.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${tf.byteSequenceToHex(e.iv)}`)),e.format&&n.push(`KEYFORMAT="${e.format}"`),e.formatVersion&&n.push(`KEYFORMATVERSIONS="${e.formatVersion}"`),`${r}:${n.join(",")}`}function mUr(e,t){let r=t.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${t.bandwidth}`];if(t.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${t.averageBandwidth}`),t.isIFrameOnly&&n.push(`URI="${t.uri}"`),t.codecs&&n.push(`CODECS="${t.codecs}"`),t.resolution&&n.push(`RESOLUTION=${t.resolution.width}x${t.resolution.height}`),t.frameRate&&n.push(`FRAME-RATE=${e_e(t.frameRate,3)}`),t.hdcpLevel&&n.push(`HDCP-LEVEL=${t.hdcpLevel}`),t.audio.length>0){n.push(`AUDIO="${t.audio[0].groupId}"`);for(let i of t.audio)e.push(Hq(i))}if(t.video.length>0){n.push(`VIDEO="${t.video[0].groupId}"`);for(let i of t.video)e.push(Hq(i))}if(t.subtitles.length>0){n.push(`SUBTITLES="${t.subtitles[0].groupId}"`);for(let i of t.subtitles)e.push(Hq(i))}if(tf.getOptions().allowClosedCaptionsNone&&t.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(t.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${t.closedCaptions[0].groupId}"`);for(let i of t.closedCaptions)e.push(Hq(i))}if(t.score&&n.push(`SCORE=${t.score}`),t.allowedCpc){let i=[];for(let{format:s,cpcList:a}of t.allowedCpc)i.push(`${s}:${a.join("/")}`);n.push(`ALLOWED-CPC="${i.join(",")}"`)}t.videoRange&&n.push(`VIDEO-RANGE=${t.videoRange}`),t.stableVariantId&&n.push(`STABLE-VARIANT-ID="${t.stableVariantId}"`),t.programId&&n.push(`PROGRAM-ID=${t.programId}`),e.push(`${r}:${n.join(",")}`),t.isIFrameOnly||e.push(`${t.uri}`)}function Hq(e){let t=[`TYPE=${e.type}`,`GROUP-ID="${e.groupId}"`,`NAME="${e.name}"`];return e.isDefault!==void 0&&t.push(`DEFAULT=${e.isDefault?"YES":"NO"}`),e.autoselect!==void 0&&t.push(`AUTOSELECT=${e.autoselect?"YES":"NO"}`),e.forced!==void 0&&t.push(`FORCED=${e.forced?"YES":"NO"}`),e.language&&t.push(`LANGUAGE="${e.language}"`),e.assocLanguage&&t.push(`ASSOC-LANGUAGE="${e.assocLanguage}"`),e.instreamId&&t.push(`INSTREAM-ID="${e.instreamId}"`),e.characteristics&&t.push(`CHARACTERISTICS="${e.characteristics}"`),e.channels&&t.push(`CHANNELS="${e.channels}"`),e.uri&&t.push(`URI="${e.uri}"`),`#EXT-X-MEDIA:${t.join(",")}`}function gUr(e,t){let r="",n="",i=!1;if(t.targetDuration&&e.push(`#EXT-X-TARGETDURATION:${t.targetDuration}`),t.lowLatencyCompatibility){let{canBlockReload:s,canSkipUntil:a,holdBack:o,partHoldBack:u}=t.lowLatencyCompatibility,c=[];c.push(`CAN-BLOCK-RELOAD=${s?"YES":"NO"}`),a!==void 0&&c.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&c.push(`HOLD-BACK=${o}`),u!==void 0&&c.push(`PART-HOLD-BACK=${u}`),e.push(`#EXT-X-SERVER-CONTROL:${c.join(",")}`)}t.partTargetDuration&&e.push(`#EXT-X-PART-INF:PART-TARGET=${t.partTargetDuration}`),t.mediaSequenceBase&&e.push(`#EXT-X-MEDIA-SEQUENCE:${t.mediaSequenceBase}`),t.discontinuitySequenceBase&&e.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${t.discontinuitySequenceBase}`),t.playlistType&&e.push(`#EXT-X-PLAYLIST-TYPE:${t.playlistType}`),t.isIFrame&&e.push("#EXT-X-I-FRAMES-ONLY"),t.skip>0&&e.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${t.skip}`);for(let s of t.segments){let a="";[r,n,a]=yUr(e,s,r,n,t.version),a==="OUT"?i=!0:a==="IN"&&i&&(i=!1)}t.playlistType==="VOD"&&i&&e.push("#EXT-X-CUE-IN"),t.prefetchSegments.length>2&&tf.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let s of t.prefetchSegments)s.discontinuity&&e.push("#EXT-X-PREFETCH-DISCONTINUITY"),e.push(`#EXT-X-PREFETCH:${s.uri}`);t.endlist&&e.push("#EXT-X-ENDLIST");for(let s of t.renditionReports){let a=[];a.push(`URI="${s.uri}"`,`LAST-MSN=${s.lastMSN}`),s.lastPart!==void 0&&a.push(`LAST-PART=${s.lastPart}`),e.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function yUr(e,t,r,n,i=1){let s=!1,a="";if(t.discontinuity&&e.push("#EXT-X-DISCONTINUITY"),t.key){let u=K1t(t.key);u!==r&&(e.push(u),r=u)}if(t.map){let u=_Ur(t.map);u!==n&&(e.push(u),n=u)}if(t.programDateTime&&e.push(`#EXT-X-PROGRAM-DATE-TIME:${tf.formatDate(t.programDateTime)}`),t.dateRange&&e.push(AUr(t.dateRange)),t.markers.length>0&&(a=vUr(e,t.markers)),t.parts.length>0&&(s=bUr(e,t.parts)),s)return[r,n];let o=i<3?Math.round(t.duration):e_e(t.duration,fUr(t.duration));return e.push(`#EXTINF:${o},${unescape(encodeURIComponent(t.title||""))}`),t.byterange&&e.push(`#EXT-X-BYTERANGE:${t_e(t.byterange)}`),Array.prototype.push.call(e,`${t.uri}`),[r,n,a]}function _Ur(e){let t=[`URI="${e.uri}"`];return e.byterange&&t.push(`BYTERANGE="${t_e(e.byterange)}"`),`#EXT-X-MAP:${t.join(",")}`}function t_e({offset:e,length:t}){return`${t}@${e}`}function AUr(e){let t=[`ID="${e.id}"`];e.start&&t.push(`START-DATE="${tf.formatDate(e.start)}"`),e.end&&t.push(`END-DATE="${tf.formatDate(e.end)}"`),e.duration&&t.push(`DURATION=${e.duration}`),e.plannedDuration&&t.push(`PLANNED-DURATION=${e.plannedDuration}`),e.classId&&t.push(`CLASS="${e.classId}"`),e.endOnNext&&t.push("END-ON-NEXT=YES");for(let r of Object.keys(e.attributes))r.startsWith("X-")?typeof e.attributes[r]=="number"?t.push(`${r}=${e.attributes[r]}`):t.push(`${r}="${e.attributes[r]}"`):r.startsWith("SCTE35-")&&t.push(`${r}=${tf.byteSequenceToHex(e.attributes[r])}`);return`#EXT-X-DATERANGE:${t.join(",")}`}function vUr(e,t){let r="";for(let n of t)if(n.type==="OUT")r="OUT",e.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",e.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let i=n.value?`:${n.value}`:"";e.push(`#${n.tagName}${i}`)}return r}function bUr(e,t){let r=!1;for(let n of t)if(n.hint){let i=[];if(i.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:s,length:a}=n.byterange;i.push(`BYTERANGE-START=${s}`),a&&i.push(`BYTERANGE-LENGTH=${a}`)}e.push(`#EXT-X-PRELOAD-HINT:${i.join(",")}`),r=!0}else{let i=[];i.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&i.push(`BYTERANGE=${t_e(n.byterange)}`),n.independent&&i.push("INDEPENDENT=YES"),n.gap&&i.push("GAP=YES"),e.push(`#EXT-X-PART:${i.join(",")}`)}return r}function EUr(e){tf.PARAMCHECK(e),tf.ASSERT("Not a playlist",e.type==="playlist");let t=new Zye(e.uri);return t.push("#EXTM3U"),e.version&&t.push(`#EXT-X-VERSION:${e.version}`),e.independentSegments&&t.push("#EXT-X-INDEPENDENT-SEGMENTS"),e.start&&t.push(`#EXT-X-START:TIME-OFFSET=${e_e(e.start.offset)}${e.start.precise?",PRECISE=YES":""}`),e.isMasterPlaylist?pUr(t,e):gUr(t,e),t.join(` -`)}e0.default=EUr});var G1t=b(Es=>{"use strict";var SUr=Es&&Es.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),wUr=Es&&Es.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),IUr=Es&&Es.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&SUr(t,e,r);return wUr(t,e),t},z1t=Es&&Es.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Es,"__esModule",{value:!0});Es.setOptions=Es.getOptions=Es.types=Es.stringify=Es.parse=void 0;var Q1t=nP();Object.defineProperty(Es,"getOptions",{enumerable:!0,get:function(){return Q1t.getOptions}});Object.defineProperty(Es,"setOptions",{enumerable:!0,get:function(){return Q1t.setOptions}});var xUr=z1t(H1t());Es.parse=xUr.default;var CUr=z1t(V1t());Es.stringify=CUr.default;var TUr=IUr(Xye());Es.types=TUr});var g_e=b((dei,KSt)=>{KSt.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var $y=b(xb=>{var y_e,pqr=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];xb.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};xb.getSymbolTotalCodewords=function(t){return pqr[t]};xb.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};xb.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');y_e=t};xb.isKanjiModeEnabled=function(){return typeof y_e<"u"};xb.toSJIS=function(t){return y_e(t)}});var sj=b(Bl=>{Bl.L={bit:1};Bl.M={bit:0};Bl.Q={bit:3};Bl.H={bit:2};function hqr(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"l":case"low":return Bl.L;case"m":case"medium":return Bl.M;case"q":case"quartile":return Bl.Q;case"h":case"high":return Bl.H;default:throw new Error("Unknown EC Level: "+e)}}Bl.isValid=function(t){return t&&typeof t.bit<"u"&&t.bit>=0&&t.bit<4};Bl.from=function(t,r){if(Bl.isValid(t))return t;try{return hqr(t)}catch{return r}}});var QSt=b((hei,zSt)=>{function VSt(){this.buffer=[],this.length=0}VSt.prototype={get:function(e){let t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){let t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};zSt.exports=VSt});var YSt=b((mei,GSt)=>{function fP(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}fP.prototype.set=function(e,t,r,n){let i=e*this.size+t;this.data[i]=r,n&&(this.reservedBit[i]=!0)};fP.prototype.get=function(e,t){return this.data[e*this.size+t]};fP.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};fP.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};GSt.exports=fP});var WSt=b(aj=>{var mqr=$y().getSymbolSize;aj.getRowColCoords=function(t){if(t===1)return[];let r=Math.floor(t/7)+2,n=mqr(t),i=n===145?26:Math.ceil((n-13)/(2*r-2))*2,s=[n-7];for(let a=1;a{var gqr=$y().getSymbolSize,XSt=7;JSt.getPositions=function(t){let r=gqr(t);return[[0,0],[r-XSt,0],[0,r-XSt]]}});var ewt=b(Zn=>{Zn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var Cb={N1:3,N2:3,N3:40,N4:10};Zn.isValid=function(t){return t!=null&&t!==""&&!isNaN(t)&&t>=0&&t<=7};Zn.from=function(t){return Zn.isValid(t)?parseInt(t,10):void 0};Zn.getPenaltyN1=function(t){let r=t.size,n=0,i=0,s=0,a=null,o=null;for(let u=0;u=5&&(n+=Cb.N1+(i-5)),a=l,i=1),l=t.get(c,u),l===o?s++:(s>=5&&(n+=Cb.N1+(s-5)),o=l,s=1)}i>=5&&(n+=Cb.N1+(i-5)),s>=5&&(n+=Cb.N1+(s-5))}return n};Zn.getPenaltyN2=function(t){let r=t.size,n=0;for(let i=0;i=10&&(i===1488||i===93)&&n++,s=s<<1&2047|t.get(o,a),o>=10&&(s===1488||s===93)&&n++}return n*Cb.N3};Zn.getPenaltyN4=function(t){let r=0,n=t.data.length;for(let s=0;s{var Fy=sj(),oj=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],uj=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];__e.getBlocksCount=function(t,r){switch(r){case Fy.L:return oj[(t-1)*4+0];case Fy.M:return oj[(t-1)*4+1];case Fy.Q:return oj[(t-1)*4+2];case Fy.H:return oj[(t-1)*4+3];default:return}};__e.getTotalCodewordsCount=function(t,r){switch(r){case Fy.L:return uj[(t-1)*4+0];case Fy.M:return uj[(t-1)*4+1];case Fy.Q:return uj[(t-1)*4+2];case Fy.H:return uj[(t-1)*4+3];default:return}}});var twt=b(lj=>{var pP=new Uint8Array(512),cj=new Uint8Array(256);(function(){let t=1;for(let r=0;r<255;r++)pP[r]=t,cj[t]=r,t<<=1,t&256&&(t^=285);for(let r=255;r<512;r++)pP[r]=pP[r-255]})();lj.log=function(t){if(t<1)throw new Error("log("+t+")");return cj[t]};lj.exp=function(t){return pP[t]};lj.mul=function(t,r){return t===0||r===0?0:pP[cj[t]+cj[r]]}});var rwt=b(hP=>{var v_e=twt();hP.mul=function(t,r){let n=new Uint8Array(t.length+r.length-1);for(let i=0;i=0;){let i=n[0];for(let a=0;a{var nwt=rwt();function b_e(e){this.genPoly=void 0,this.degree=e,this.degree&&this.initialize(this.degree)}b_e.prototype.initialize=function(t){this.degree=t,this.genPoly=nwt.generateECPolynomial(this.degree)};b_e.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(t.length+this.degree);r.set(t);let n=nwt.mod(r,this.genPoly),i=this.degree-n.length;if(i>0){let s=new Uint8Array(this.degree);return s.set(n,i),s}return n};iwt.exports=b_e});var E_e=b(awt=>{awt.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}});var S_e=b(n0=>{var owt="[0-9]+",_qr="[A-Z $%*+\\-./:]+",mP="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";mP=mP.replace(/u/g,"\\u");var Aqr="(?:(?![A-Z0-9 $%*+\\-./:]|"+mP+`)(?:.|[\r -]))+`;n0.KANJI=new RegExp(mP,"g");n0.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");n0.BYTE=new RegExp(Aqr,"g");n0.NUMERIC=new RegExp(owt,"g");n0.ALPHANUMERIC=new RegExp(_qr,"g");var vqr=new RegExp("^"+mP+"$"),bqr=new RegExp("^"+owt+"$"),Eqr=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");n0.testKanji=function(t){return vqr.test(t)};n0.testNumeric=function(t){return bqr.test(t)};n0.testAlphanumeric=function(t){return Eqr.test(t)}});var Uy=b(Is=>{var Sqr=E_e(),w_e=S_e();Is.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};Is.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};Is.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};Is.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};Is.MIXED={bit:-1};Is.getCharCountIndicator=function(t,r){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!Sqr.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?t.ccBits[0]:r<27?t.ccBits[1]:t.ccBits[2]};Is.getBestModeForData=function(t){return w_e.testNumeric(t)?Is.NUMERIC:w_e.testAlphanumeric(t)?Is.ALPHANUMERIC:w_e.testKanji(t)?Is.KANJI:Is.BYTE};Is.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")};Is.isValid=function(t){return t&&t.bit&&t.ccBits};function wqr(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return Is.NUMERIC;case"alphanumeric":return Is.ALPHANUMERIC;case"kanji":return Is.KANJI;case"byte":return Is.BYTE;default:throw new Error("Unknown mode: "+e)}}Is.from=function(t,r){if(Is.isValid(t))return t;try{return wqr(t)}catch{return r}}});var fwt=b(Tb=>{var dj=$y(),Iqr=A_e(),uwt=sj(),qy=Uy(),I_e=E_e(),lwt=7973,cwt=dj.getBCHDigit(lwt);function xqr(e,t,r){for(let n=1;n<=40;n++)if(t<=Tb.getCapacity(n,r,e))return n}function dwt(e,t){return qy.getCharCountIndicator(e,t)+4}function Cqr(e,t){let r=0;return e.forEach(function(n){let i=dwt(n.mode,t);r+=i+n.getBitsLength()}),r}function Tqr(e,t){for(let r=1;r<=40;r++)if(Cqr(e,r)<=Tb.getCapacity(r,t,qy.MIXED))return r}Tb.from=function(t,r){return I_e.isValid(t)?parseInt(t,10):r};Tb.getCapacity=function(t,r,n){if(!I_e.isValid(t))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=qy.BYTE);let i=dj.getSymbolTotalCodewords(t),s=Iqr.getTotalCodewordsCount(t,r),a=(i-s)*8;if(n===qy.MIXED)return a;let o=a-dwt(n,t);switch(n){case qy.NUMERIC:return Math.floor(o/10*3);case qy.ALPHANUMERIC:return Math.floor(o/11*2);case qy.KANJI:return Math.floor(o/13);case qy.BYTE:default:return Math.floor(o/8)}};Tb.getBestVersionForData=function(t,r){let n,i=uwt.from(r,uwt.M);if(Array.isArray(t)){if(t.length>1)return Tqr(t,i);if(t.length===0)return 1;n=t[0]}else n=t;return xqr(n.mode,n.getLength(),i)};Tb.getEncodedBits=function(t){if(!I_e.isValid(t)||t<7)throw new Error("Invalid QR Code version");let r=t<<12;for(;dj.getBCHDigit(r)-cwt>=0;)r^=lwt<{var x_e=$y(),hwt=1335,Nqr=21522,pwt=x_e.getBCHDigit(hwt);mwt.getEncodedBits=function(t,r){let n=t.bit<<3|r,i=n<<10;for(;x_e.getBCHDigit(i)-pwt>=0;)i^=hwt<{var Rqr=Uy();function BI(e){this.mode=Rqr.NUMERIC,this.data=e.toString()}BI.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)};BI.prototype.getLength=function(){return this.data.length};BI.prototype.getBitsLength=function(){return BI.getBitsLength(this.data.length)};BI.prototype.write=function(t){let r,n,i;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),i=parseInt(n,10),t.put(i,10);let s=this.data.length-r;s>0&&(n=this.data.substr(r),i=parseInt(n,10),t.put(i,s*3+1))};ywt.exports=BI});var vwt=b((Nei,Awt)=>{var Dqr=Uy(),C_e=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function $I(e){this.mode=Dqr.ALPHANUMERIC,this.data=e}$I.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};$I.prototype.getLength=function(){return this.data.length};$I.prototype.getBitsLength=function(){return $I.getBitsLength(this.data.length)};$I.prototype.write=function(t){let r;for(r=0;r+2<=this.data.length;r+=2){let n=C_e.indexOf(this.data[r])*45;n+=C_e.indexOf(this.data[r+1]),t.put(n,11)}this.data.length%2&&t.put(C_e.indexOf(this.data[r]),6)};Awt.exports=$I});var Ewt=b((Rei,bwt)=>{var kqr=Uy();function FI(e){this.mode=kqr.BYTE,typeof e=="string"?this.data=new TextEncoder().encode(e):this.data=new Uint8Array(e)}FI.getBitsLength=function(t){return t*8};FI.prototype.getLength=function(){return this.data.length};FI.prototype.getBitsLength=function(){return FI.getBitsLength(this.data.length)};FI.prototype.write=function(e){for(let t=0,r=this.data.length;t{var Oqr=Uy(),Pqr=$y();function UI(e){this.mode=Oqr.KANJI,this.data=e}UI.getBitsLength=function(t){return t*13};UI.prototype.getLength=function(){return this.data.length};UI.prototype.getBitsLength=function(){return UI.getBitsLength(this.data.length)};UI.prototype.write=function(e){let t;for(t=0;t=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` -Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),e.put(r,13)}};Swt.exports=UI});var Iwt=b((kei,T_e)=>{"use strict";var gP={single_source_shortest_paths:function(e,t,r){var n={},i={};i[t]=0;var s=gP.PriorityQueue.make();s.push(t,0);for(var a,o,u,c,l,d,f,p,h;!s.empty();){a=s.pop(),o=a.value,c=a.cost,l=e[o]||{};for(u in l)l.hasOwnProperty(u)&&(d=l[u],f=c+d,p=i[u],h=typeof i[u]>"u",(h||p>f)&&(i[u]=f,s.push(u,f),n[u]=o))}if(typeof r<"u"&&typeof i[r]>"u"){var m=["Could not find a path from ",t," to ",r,"."].join("");throw new Error(m)}return n},extract_shortest_path_from_predecessor_list:function(e,t){for(var r=[],n=t,i;n;)r.push(n),i=e[n],n=e[n];return r.reverse(),r},find_path:function(e,t,r){var n=gP.single_source_shortest_paths(e,t,r);return gP.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(e){var t=gP.PriorityQueue,r={},n;e=e||{};for(n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);return r.queue=[],r.sorter=e.sorter||t.default_sorter,r},default_sorter:function(e,t){return e.cost-t.cost},push:function(e,t){var r={value:e,cost:t};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof T_e<"u"&&(T_e.exports=gP)});var Owt=b(qI=>{var hn=Uy(),Twt=_wt(),Nwt=vwt(),Rwt=Ewt(),Dwt=wwt(),yP=S_e(),fj=$y(),Mqr=Iwt();function xwt(e){return unescape(encodeURIComponent(e)).length}function _P(e,t,r){let n=[],i;for(;(i=e.exec(r))!==null;)n.push({data:i[0],index:i.index,mode:t,length:i[0].length});return n}function kwt(e){let t=_P(yP.NUMERIC,hn.NUMERIC,e),r=_P(yP.ALPHANUMERIC,hn.ALPHANUMERIC,e),n,i;return fj.isKanjiModeEnabled()?(n=_P(yP.BYTE,hn.BYTE,e),i=_P(yP.KANJI,hn.KANJI,e)):(n=_P(yP.BYTE_KANJI,hn.BYTE,e),i=[]),t.concat(r,n,i).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function N_e(e,t){switch(t){case hn.NUMERIC:return Twt.getBitsLength(e);case hn.ALPHANUMERIC:return Nwt.getBitsLength(e);case hn.KANJI:return Dwt.getBitsLength(e);case hn.BYTE:return Rwt.getBitsLength(e)}}function Lqr(e){return e.reduce(function(t,r){let n=t.length-1>=0?t[t.length-1]:null;return n&&n.mode===r.mode?(t[t.length-1].data+=r.data,t):(t.push(r),t)},[])}function Bqr(e){let t=[];for(let r=0;r{var hj=$y(),R_e=sj(),Fqr=QSt(),Uqr=YSt(),qqr=WSt(),jqr=ZSt(),O_e=ewt(),P_e=A_e(),Hqr=swt(),pj=fwt(),Kqr=gwt(),Vqr=Uy(),D_e=Owt();function zqr(e,t){let r=e.size,n=jqr.getPositions(t);for(let i=0;i=0&&o<=6&&(u===0||u===6)||u>=0&&u<=6&&(o===0||o===6)||o>=2&&o<=4&&u>=2&&u<=4?e.set(s+o,a+u,!0,!0):e.set(s+o,a+u,!1,!0))}}function Qqr(e){let t=e.size;for(let r=8;r>o&1)===1,e.set(i,s,a,!0),e.set(s,i,a,!0)}function k_e(e,t,r){let n=e.size,i=Kqr.getEncodedBits(t,r),s,a;for(s=0;s<15;s++)a=(i>>s&1)===1,s<6?e.set(s,8,a,!0):s<8?e.set(s+1,8,a,!0):e.set(n-15+s,8,a,!0),s<8?e.set(8,n-s-1,a,!0):s<9?e.set(8,15-s-1+1,a,!0):e.set(8,15-s-1,a,!0);e.set(n-8,8,1,!0)}function Wqr(e,t){let r=e.size,n=-1,i=r-1,s=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let u=0;u<2;u++)if(!e.isReserved(i,o-u)){let c=!1;a>>s&1)===1),e.set(i,o-u,c),s--,s===-1&&(a++,s=7)}if(i+=n,i<0||r<=i){i-=n,n=-n;break}}}function Xqr(e,t,r){let n=new Fqr;r.forEach(function(u){n.put(u.mode.bit,4),n.put(u.getLength(),Vqr.getCharCountIndicator(u.mode,e)),u.write(n)});let i=hj.getSymbolTotalCodewords(e),s=P_e.getTotalCodewordsCount(e,t),a=(i-s)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let u=0;uo)return 1;if(a=0,r="not found",n=!1,s=!1;try{let i=require.resolve(`${NSe}/package.json`),a=require(i);r=a.version,n=a.version.startsWith("3."),s=!t&&n}catch{s=!1}return{nodeVersion:e,nodeFetchVersion:r,isNodeCompatible:t,isNodeFetchV3:n,needsShim:s}}var Hd=FWr();console.log(`${wi} Environment: Node ${Hd.nodeVersion}, node-fetch ${Hd.nodeFetchVersion}`);console.log(`${wi} Node.js compatible (>=${OC}): ${Hd.isNodeCompatible}`);console.log(`${wi} node-fetch v3: ${Hd.isNodeFetchV3}`);console.log(`${wi} Needs shim: ${Hd.needsShim}`);Hd.needsShim?$Wr():(Hd.isNodeCompatible&&Hd.isNodeFetchV3?console.log(`${wi} Node.js >=${OC} + node-fetch v3: optimal compatibility, shim disabled`):Hd.isNodeCompatible&&!Hd.isNodeFetchV3?console.log(`${wi} Node.js >=${OC} + node-fetch v2: native compatibility, shim disabled`):!Hd.isNodeCompatible&&!Hd.isNodeFetchV3?console.log(`${wi} Node.js <${OC} + node-fetch v2: no ESM issues, shim disabled`):console.log(`${wi} Shim disabled for optimal performance`),global.loadNodeFetch=async()=>(console.log(`${wi} loadNodeFetch called but not needed in this environment`),Promise.resolve()));function $Wr(){console.log(`${wi} Compatibility shim enabled for Node.js <${OC} + node-fetch v3`);let e;try{e=require("esbuild")}catch(c){throw console.error(`${wi} missing dependency: run \`npm install esbuild\``),c}let t=null,r=null;async function n(){return t||r||(r=(async()=>{try{console.log(`${wi} Loading node-fetch v3 ESM module...`);let c=await import(NSe);return t={default:c.default,fetch:c.default,Request:c.Request,Response:c.Response,Headers:c.Headers,FormData:c.FormData,AbortError:c.AbortError,FetchError:c.FetchError},console.log(`${wi} node-fetch v3 loaded successfully`),t}catch(c){throw console.error(`${wi} Failed to load node-fetch v3:`,c.message),c}})(),r)}function s(){let c=function(...l){if(!t)throw new Error(`${wi} node-fetch v3 must be loaded asynchronously first. Call await global.loadNodeFetch() in your startup code.`);return t.fetch(...l)};return["Request","Response","Headers","FormData","AbortError","FetchError"].forEach(l=>{Object.defineProperty(c,l,{get(){if(!t)throw new Error(`${wi} node-fetch v3.${l} must be loaded asynchronously first. Call await global.loadNodeFetch() in your startup code.`);return t[l]},enumerable:!0,configurable:!0})}),Object.defineProperty(c,"default",{get(){return c},enumerable:!0,configurable:!0}),c}function i(c,u){let l=c,d=wSe.basename(u);if(l.includes("import(")&&(l=l.replace(/(await\s+)?import\s*\(((?:[^()]|\([^)]*\))*)\)/g,(f,h,p)=>(console.log(`${wi} Converting dynamic import in ${d}`),`${h||""}Promise.resolve(require(${p}))`))),c.includes("import.meta.url")){let f="__importMetaUrl";c.includes(f)?l=l.replace(/import\.meta\.url/g,f):(console.log(`${wi} Fixing import.meta.url in ${d}`),l=`const ${f} = require('url').pathToFileURL(__filename).href; +`+l,l=l.replace(/import\.meta\.url/g,f))}return l}let a=NH._load;NH._load=function(c,u,l){return c===NSe?(console.log(`${wi} Intercepting node-fetch require`),s()):a.call(this,c,u,l)};let o=NH.prototype._compile;NH.prototype._compile=function(c,u){try{let l=typeof u=="string"&&u.startsWith(txt)&&!u.includes("node_modules"),d=/\b(?:import|export)\b/.test(c);if(l&&d){console.log(`${wi} Transforming ESM syntax in: ${wSe.relative(txt,u)}`);let f=i(c,u),p=e.transformSync(f,{loader:"js",format:"cjs",target:"es2018",sourcemap:"inline"}).code+BWr;return o.call(this,p,u)}}catch(l){console.error(`${wi} esbuild transform failed:`,u,l.message||l)}return o.call(this,c,u)},global.loadNodeFetch=n,console.log(`${wi} ESM compatibility shim active with hooks installed`)}});function cxt(e,t={}){let r=t.entryType||t.type;if(r==="both"&&(r=Bl.FILE_DIR_TYPE),r&&(t.type=r),e){if(typeof e!="string")throw new TypeError("readdirp: root argument must be a string. Usage: readdirp(root, options)");if(r&&!nxt.includes(r))throw new Error(`readdirp: Invalid type passed. Use one of ${nxt.join(", ")}`)}else throw new Error("readdirp: root argument is required. Usage: readdirp(root, options)");return t.root=e,new DSe(t)}var Tg,axt,bg,Bl,OSe,oxt,qWr,nxt,HWr,VWr,jWr,KWr,sxt,ixt,DSe,uxt=ie(()=>{Tg=require("node:fs/promises"),axt=require("node:stream"),bg=require("node:path"),Bl={FILE_TYPE:"files",DIR_TYPE:"directories",FILE_DIR_TYPE:"files_directories",EVERYTHING_TYPE:"all"},OSe={root:".",fileFilter:e=>!0,directoryFilter:e=>!0,type:Bl.FILE_TYPE,lstat:!1,depth:2147483648,alwaysStat:!1,highWaterMark:4096};Object.freeze(OSe);oxt="READDIRP_RECURSIVE_ERROR",qWr=new Set(["ENOENT","EPERM","EACCES","ELOOP",oxt]),nxt=[Bl.DIR_TYPE,Bl.EVERYTHING_TYPE,Bl.FILE_DIR_TYPE,Bl.FILE_TYPE],HWr=new Set([Bl.DIR_TYPE,Bl.EVERYTHING_TYPE,Bl.FILE_DIR_TYPE]),VWr=new Set([Bl.EVERYTHING_TYPE,Bl.FILE_DIR_TYPE,Bl.FILE_TYPE]),jWr=e=>qWr.has(e.code),KWr=process.platform==="win32",sxt=e=>!0,ixt=e=>{if(e===void 0)return sxt;if(typeof e=="function")return e;if(typeof e=="string"){let t=e.trim();return r=>r.basename===t}if(Array.isArray(e)){let t=e.map(r=>r.trim());return r=>t.some(n=>r.basename===n)}return sxt},DSe=class extends axt.Readable{constructor(t={}){super({objectMode:!0,autoDestroy:!0,highWaterMark:t.highWaterMark});let r={...OSe,...t},{root:n,type:s}=r;this._fileFilter=ixt(r.fileFilter),this._directoryFilter=ixt(r.directoryFilter);let i=r.lstat?Tg.lstat:Tg.stat;KWr?this._stat=a=>i(a,{bigint:!0}):this._stat=i,this._maxDepth=r.depth??OSe.depth,this._wantsDir=s?HWr.has(s):!1,this._wantsFile=s?VWr.has(s):!1,this._wantsEverything=s===Bl.EVERYTHING_TYPE,this._root=(0,bg.resolve)(n),this._isDirent=!r.alwaysStat,this._statsProp=this._isDirent?"dirent":"stats",this._rdOptions={encoding:"utf8",withFileTypes:this._isDirent},this.parents=[this._exploreDir(n,1)],this.reading=!1,this.parent=void 0}async _read(t){if(!this.reading){this.reading=!0;try{for(;!this.destroyed&&t>0;){let r=this.parent,n=r&&r.files;if(n&&n.length>0){let{path:s,depth:i}=r,a=n.splice(0,t).map(c=>this._formatEntry(c,s)),o=await Promise.all(a);for(let c of o){if(!c)continue;if(this.destroyed)return;let u=await this._getEntryType(c);u==="directory"&&this._directoryFilter(c)?(i<=this._maxDepth&&this.parents.push(this._exploreDir(c.fullPath,i+1)),this._wantsDir&&(this.push(c),t--)):(u==="file"||this._includeAsFile(c))&&this._fileFilter(c)&&this._wantsFile&&(this.push(c),t--)}}else{let s=this.parents.pop();if(!s){this.push(null);break}if(this.parent=await s,this.destroyed)return}}}catch(r){this.destroy(r)}finally{this.reading=!1}}}async _exploreDir(t,r){let n;try{n=await(0,Tg.readdir)(t,this._rdOptions)}catch(s){this._onError(s)}return{files:n,depth:r,path:t}}async _formatEntry(t,r){let n,s=this._isDirent?t.name:t;try{let i=(0,bg.resolve)((0,bg.join)(r,s));n={path:(0,bg.relative)(this._root,i),fullPath:i,basename:s},n[this._statsProp]=this._isDirent?t:await this._stat(i)}catch(i){this._onError(i);return}return n}_onError(t){jWr(t)&&!this.destroyed?this.emit("warn",t):this.destroy(t)}async _getEntryType(t){if(!t&&this._statsProp in t)return"";let r=t[this._statsProp];if(r.isFile())return"file";if(r.isDirectory())return"directory";if(r&&r.isSymbolicLink()){let n=t.fullPath;try{let s=await(0,Tg.realpath)(n),i=await(0,Tg.lstat)(s);if(i.isFile())return"file";if(i.isDirectory()){let a=s.length;if(n.startsWith(s)&&n.substr(a,1)===bg.sep){let o=new Error(`Circular symlink detected: "${n}" points to "${s}"`);return o.code=oxt,this._onError(o)}return"directory"}}catch(s){return this._onError(s),""}}}_includeAsFile(t){let r=t&&t[this._statsProp];return r&&this._wantsEverything&&!r.isDirectory()}}});function lxt(e,t,r,n,s){let i=(a,o)=>{r(e),s(a,o,{watchedPath:e}),o&&e!==o&&PH(li.resolve(e,o),cT,li.join(e,o))};try{return(0,uT.watch)(e,{persistent:t.persistent},i)}catch(a){n(a);return}}var uT,o0,li,dxt,GWr,MSe,fxt,MH,kH,kSe,zWr,YWr,QWr,hxt,Ei,a0,WWr,XWr,cT,OH,DC,JWr,ZWr,eXr,LSe,xk,tXr,wk,pxt,DH,PH,rXr,PSe,nXr,LH,mxt=ie(()=>{uT=require("fs"),o0=require("fs/promises"),li=Ne(require("path"),1),dxt=require("os"),GWr="data",MSe="end",fxt="close",MH=()=>{},kH=process.platform,kSe=kH==="win32",zWr=kH==="darwin",YWr=kH==="linux",QWr=kH==="freebsd",hxt=(0,dxt.type)()==="OS400",Ei={ALL:"all",READY:"ready",ADD:"add",CHANGE:"change",ADD_DIR:"addDir",UNLINK:"unlink",UNLINK_DIR:"unlinkDir",RAW:"raw",ERROR:"error"},a0=Ei,WWr="watch",XWr={lstat:o0.lstat,stat:o0.stat},cT="listeners",OH="errHandlers",DC="rawEmitters",JWr=[cT,OH,DC],ZWr=new Set(["3dm","3ds","3g2","3gp","7z","a","aac","adp","afdesign","afphoto","afpub","ai","aif","aiff","alz","ape","apk","appimage","ar","arj","asf","au","avi","bak","baml","bh","bin","bk","bmp","btif","bz2","bzip2","cab","caf","cgm","class","cmx","cpio","cr2","cur","dat","dcm","deb","dex","djvu","dll","dmg","dng","doc","docm","docx","dot","dotm","dra","DS_Store","dsk","dts","dtshd","dvb","dwg","dxf","ecelp4800","ecelp7470","ecelp9600","egg","eol","eot","epub","exe","f4v","fbs","fh","fla","flac","flatpak","fli","flv","fpx","fst","fvt","g3","gh","gif","graffle","gz","gzip","h261","h263","h264","icns","ico","ief","img","ipa","iso","jar","jpeg","jpg","jpgv","jpm","jxr","key","ktx","lha","lib","lvp","lz","lzh","lzma","lzo","m3u","m4a","m4v","mar","mdi","mht","mid","midi","mj2","mka","mkv","mmr","mng","mobi","mov","movie","mp3","mp4","mp4a","mpeg","mpg","mpga","mxu","nef","npx","numbers","nupkg","o","odp","ods","odt","oga","ogg","ogv","otf","ott","pages","pbm","pcx","pdb","pdf","pea","pgm","pic","png","pnm","pot","potm","potx","ppa","ppam","ppm","pps","ppsm","ppsx","ppt","pptm","pptx","psd","pya","pyc","pyo","pyv","qt","rar","ras","raw","resources","rgb","rip","rlc","rmf","rmvb","rpm","rtf","rz","s3m","s7z","scpt","sgi","shar","snap","sil","sketch","slk","smv","snk","so","stl","suo","sub","swf","tar","tbz","tbz2","tga","tgz","thmx","tif","tiff","tlz","ttc","ttf","txz","udf","uvh","uvi","uvm","uvp","uvs","uvu","viv","vob","war","wav","wax","wbmp","wdp","weba","webm","webp","whl","wim","wm","wma","wmv","wmx","woff","woff2","wrm","wvx","xbm","xif","xla","xlam","xls","xlsb","xlsm","xlsx","xlt","xltm","xltx","xm","xmind","xpi","xpm","xwd","xz","z","zip","zipx"]),eXr=e=>ZWr.has(li.extname(e).slice(1).toLowerCase()),LSe=(e,t)=>{e instanceof Set?e.forEach(t):t(e)},xk=(e,t,r)=>{let n=e[t];n instanceof Set||(e[t]=n=new Set([n])),n.add(r)},tXr=e=>t=>{let r=e[t];r instanceof Set?r.clear():delete e[t]},wk=(e,t,r)=>{let n=e[t];n instanceof Set?n.delete(r):n===r&&delete e[t]},pxt=e=>e instanceof Set?e.size===0:!e,DH=new Map;PH=(e,t,r,n,s)=>{let i=DH.get(e);i&&LSe(i[t],a=>{a(r,n,s)})},rXr=(e,t,r,n)=>{let{listener:s,errHandler:i,rawEmitter:a}=n,o=DH.get(t),c;if(!r.persistent)return c=lxt(e,r,s,i,a),c?c.close.bind(c):void 0;if(o)xk(o,cT,s),xk(o,OH,i),xk(o,DC,a);else{if(c=lxt(e,r,PH.bind(null,t,cT),i,PH.bind(null,t,DC)),!c)return;c.on(a0.ERROR,async u=>{let l=PH.bind(null,t,OH);if(o&&(o.watcherUnusable=!0),kSe&&u.code==="EPERM")try{await(await(0,o0.open)(e,"r")).close(),l(u)}catch{}else l(u)}),o={listeners:s,errHandlers:i,rawEmitters:a,watcher:c},DH.set(t,o)}return()=>{wk(o,cT,s),wk(o,OH,i),wk(o,DC,a),pxt(o.listeners)&&(o.watcher.close(),DH.delete(t),JWr.forEach(tXr(o)),o.watcher=void 0,Object.freeze(o))}},PSe=new Map,nXr=(e,t,r,n)=>{let{listener:s,rawEmitter:i}=n,a=PSe.get(t),o=a&&a.options;return o&&(o.persistentr.interval)&&((0,uT.unwatchFile)(t),a=void 0),a?(xk(a,cT,s),xk(a,DC,i)):(a={listeners:s,rawEmitters:i,options:r,watcher:(0,uT.watchFile)(t,r,(c,u)=>{LSe(a.rawEmitters,d=>{d(a0.CHANGE,t,{curr:c,prev:u})});let l=c.mtimeMs;(c.size!==u.size||l>u.mtimeMs||l===0)&&LSe(a.listeners,d=>d(e,c))})},PSe.set(t,a)),()=>{wk(a,cT,s),wk(a,DC,i),pxt(a.listeners)&&(PSe.delete(t),(0,uT.unwatchFile)(t),a.options=a.watcher=void 0,Object.freeze(a))}},LH=class{constructor(t){this.fsw=t,this._boundHandleError=r=>t._handleError(r)}_watchWithNodeFs(t,r){let n=this.fsw.options,s=li.dirname(t),i=li.basename(t);this.fsw._getWatchedDir(s).add(i);let o=li.resolve(t),c={persistent:n.persistent};r||(r=MH);let u;if(n.usePolling){let l=n.interval!==n.binaryInterval;c.interval=l&&eXr(i)?n.binaryInterval:n.interval,u=nXr(t,o,c,{listener:r,rawEmitter:this.fsw._emitRaw})}else u=rXr(t,o,c,{listener:r,errHandler:this._boundHandleError,rawEmitter:this.fsw._emitRaw});return u}_handleFile(t,r,n){if(this.fsw.closed)return;let s=li.dirname(t),i=li.basename(t),a=this.fsw._getWatchedDir(s),o=r;if(a.has(i))return;let c=async(l,d)=>{if(this.fsw._throttle(WWr,t,5)){if(!d||d.mtimeMs===0)try{let f=await(0,o0.stat)(t);if(this.fsw.closed)return;let h=f.atimeMs,p=f.mtimeMs;if((!h||h<=p||p!==o.mtimeMs)&&this.fsw._emit(a0.CHANGE,t,f),(zWr||YWr||QWr)&&o.ino!==f.ino){this.fsw._closeFile(l),o=f;let m=this._watchWithNodeFs(t,c);m&&this.fsw._addPathCloser(l,m)}else o=f}catch{this.fsw._remove(s,i)}else if(a.has(i)){let f=d.atimeMs,h=d.mtimeMs;(!f||f<=h||h!==o.mtimeMs)&&this.fsw._emit(a0.CHANGE,t,d),o=d}}},u=this._watchWithNodeFs(t,c);if(!(n&&this.fsw.options.ignoreInitial)&&this.fsw._isntIgnored(t)){if(!this.fsw._throttle(a0.ADD,t,0))return;this.fsw._emit(a0.ADD,t,r)}return u}async _handleSymlink(t,r,n,s){if(this.fsw.closed)return;let i=t.fullPath,a=this.fsw._getWatchedDir(r);if(!this.fsw.options.followSymlinks){this.fsw._incrReadyCount();let o;try{o=await(0,o0.realpath)(n)}catch{return this.fsw._emitReady(),!0}return this.fsw.closed?void 0:(a.has(s)?this.fsw._symlinkPaths.get(i)!==o&&(this.fsw._symlinkPaths.set(i,o),this.fsw._emit(a0.CHANGE,n,t.stats)):(a.add(s),this.fsw._symlinkPaths.set(i,o),this.fsw._emit(a0.ADD,n,t.stats)),this.fsw._emitReady(),!0)}if(this.fsw._symlinkPaths.has(i))return!0;this.fsw._symlinkPaths.set(i,!0)}_handleRead(t,r,n,s,i,a,o){if(t=li.join(t,""),o=this.fsw._throttle("readdir",t,1e3),!o)return;let c=this.fsw._getWatchedDir(n.path),u=new Set,l=this.fsw._readdirp(t,{fileFilter:d=>n.filterPath(d),directoryFilter:d=>n.filterDir(d)});if(l)return l.on(GWr,async d=>{if(this.fsw.closed){l=void 0;return}let f=d.path,h=li.join(t,f);if(u.add(f),!(d.stats.isSymbolicLink()&&await this._handleSymlink(d,t,h,f))){if(this.fsw.closed){l=void 0;return}(f===s||!s&&!c.has(f))&&(this.fsw._incrReadyCount(),h=li.join(i,li.relative(i,h)),this._addToNodeFs(h,r,n,a+1))}}).on(a0.ERROR,this._boundHandleError),new Promise((d,f)=>{if(!l)return f();l.once(MSe,()=>{if(this.fsw.closed){l=void 0;return}let h=o?o.clear():!1;d(void 0),c.getChildren().filter(p=>p!==t&&!u.has(p)).forEach(p=>{this.fsw._remove(t,p)}),l=void 0,h&&this._handleRead(t,!1,n,s,i,a,o)})})}async _handleDir(t,r,n,s,i,a,o){let c=this.fsw._getWatchedDir(li.dirname(t)),u=c.has(li.basename(t));!(n&&this.fsw.options.ignoreInitial)&&!i&&!u&&this.fsw._emit(a0.ADD_DIR,t,r),c.add(li.basename(t)),this.fsw._getWatchedDir(t);let l,d,f=this.fsw.options.depth;if((f==null||s<=f)&&!this.fsw._symlinkPaths.has(o)){if(!i&&(await this._handleRead(t,n,a,i,t,s,l),this.fsw.closed))return;d=this._watchWithNodeFs(t,(h,p)=>{p&&p.mtimeMs===0||this._handleRead(h,!1,a,i,t,s,l)})}return d}async _addToNodeFs(t,r,n,s,i){let a=this.fsw._emitReady;if(this.fsw._isIgnored(t)||this.fsw.closed)return a(),!1;let o=this.fsw._getWatchHelpers(t);n&&(o.filterPath=c=>n.filterPath(c),o.filterDir=c=>n.filterDir(c));try{let c=await XWr[o.statMethod](o.watchPath);if(this.fsw.closed)return;if(this.fsw._isIgnored(o.watchPath,c))return a(),!1;let u=this.fsw.options.followSymlinks,l;if(c.isDirectory()){let d=li.resolve(t),f=u?await(0,o0.realpath)(t):t;if(this.fsw.closed||(l=await this._handleDir(o.watchPath,c,r,s,i,o,f),this.fsw.closed))return;d!==f&&f!==void 0&&this.fsw._symlinkPaths.set(d,f)}else if(c.isSymbolicLink()){let d=u?await(0,o0.realpath)(t):t;if(this.fsw.closed)return;let f=li.dirname(o.watchPath);if(this.fsw._getWatchedDir(f).add(o.watchPath),this.fsw._emit(a0.ADD,o.watchPath,c),l=await this._handleDir(f,c,r,s,t,o,d),this.fsw.closed)return;d!==void 0&&this.fsw._symlinkPaths.set(li.resolve(t),d)}else l=this._handleFile(o.watchPath,c,r);return a(),l&&this.fsw._addPathCloser(t,l),!1}catch(c){if(this.fsw._handleError(c))return a(),t}}}});var Rxt={};kt(Rxt,{FSWatcher:()=>Nk,WatchHelper:()=>UH,default:()=>_Xr,watch:()=>Ixt});function BH(e){return Array.isArray(e)?e:[e]}function lXr(e){return typeof e=="function"?e:typeof e=="string"?t=>e===t:e instanceof RegExp?t=>e.test(t):typeof e=="object"&&e!==null?t=>{if(e.path===t)return!0;if(e.recursive){let r=Yr.relative(e.path,t);return r?!r.startsWith("..")&&!Yr.isAbsolute(r):!1}return!1}:()=>!1}function dXr(e){if(typeof e!="string")throw new Error("string expected");e=Yr.normalize(e),e=e.replace(/\\/g,"/");let t=!1;e.startsWith("//")&&(t=!0);let r=/\/\//;for(;e.match(r);)e=e.replace(r,"/");return t&&(e="/"+e),e}function _xt(e,t,r){let n=dXr(t);for(let s=0;slXr(s));return t==null?(s,i)=>_xt(n,s,i):_xt(n,t)}function Ixt(e,t={}){let r=new Nk(t);return r.add(e),r}var vxt,FH,Sxt,Yr,BSe,sXr,Txt,iXr,aXr,oXr,gxt,cXr,uXr,USe,Axt,Ext,bxt,yxt,hXr,pXr,FSe,mXr,gXr,UH,Nk,_Xr,Cxt=ie(()=>{vxt=require("fs"),FH=require("fs/promises"),Sxt=require("events"),Yr=Ne(require("path"),1);uxt();mxt();BSe="/",sXr="//",Txt=".",iXr="..",aXr="string",oXr=/\\/g,gxt=/\/\//,cXr=/\..*\.(sw[px])$|~$|\.subl.*\.tmp/,uXr=/^\.[/\\]/;USe=e=>typeof e=="object"&&e!==null&&!(e instanceof RegExp);Axt=e=>{let t=BH(e).flat();if(!t.every(r=>typeof r===aXr))throw new TypeError(`Non-string provided as watch path: ${t}`);return t.map(bxt)},Ext=e=>{let t=e.replace(oXr,BSe),r=!1;for(t.startsWith(sXr)&&(r=!0);t.match(gxt);)t=t.replace(gxt,BSe);return r&&(t=BSe+t),t},bxt=e=>Ext(Yr.normalize(Ext(e))),yxt=(e="")=>t=>typeof t=="string"?bxt(Yr.isAbsolute(t)?t:Yr.join(e,t)):t,hXr=(e,t)=>Yr.isAbsolute(e)?e:Yr.join(t,e),pXr=Object.freeze(new Set),FSe=class{constructor(t,r){this.path=t,this._removeWatcher=r,this.items=new Set}add(t){let{items:r}=this;r&&t!==Txt&&t!==iXr&&r.add(t)}async remove(t){let{items:r}=this;if(!r||(r.delete(t),r.size>0))return;let n=this.path;try{await(0,FH.readdir)(n)}catch{this._removeWatcher&&this._removeWatcher(Yr.dirname(n),Yr.basename(n))}}has(t){let{items:r}=this;if(r)return r.has(t)}getChildren(){let{items:t}=this;return t?[...t.values()]:[]}dispose(){this.items.clear(),this.path="",this._removeWatcher=MH,this.items=pXr,Object.freeze(this)}},mXr="stat",gXr="lstat",UH=class{constructor(t,r,n){this.fsw=n;let s=t;this.path=t=t.replace(uXr,""),this.watchPath=s,this.fullWatchPath=Yr.resolve(s),this.dirParts=[],this.dirParts.forEach(i=>{i.length>1&&i.pop()}),this.followSymlinks=r,this.statMethod=r?mXr:gXr}entryPath(t){return Yr.join(this.watchPath,Yr.relative(this.watchPath,t.fullPath))}filterPath(t){let{stats:r}=t;if(r&&r.isSymbolicLink())return this.filterDir(t);let n=this.entryPath(t);return this.fsw._isntIgnored(n,r)&&this.fsw._hasReadPermissions(r)}filterDir(t){return this.fsw._isntIgnored(this.entryPath(t),t.stats)}},Nk=class extends Sxt.EventEmitter{constructor(t={}){super(),this.closed=!1,this._closers=new Map,this._ignoredPaths=new Set,this._throttled=new Map,this._streams=new Set,this._symlinkPaths=new Map,this._watched=new Map,this._pendingWrites=new Map,this._pendingUnlinks=new Map,this._readyCount=0,this._readyEmitted=!1;let r=t.awaitWriteFinish,n={stabilityThreshold:2e3,pollInterval:100},s={persistent:!0,ignoreInitial:!1,ignorePermissionErrors:!1,interval:100,binaryInterval:300,followSymlinks:!0,usePolling:!1,atomic:!0,...t,ignored:t.ignored?BH(t.ignored):BH([]),awaitWriteFinish:r===!0?n:typeof r=="object"?{...n,...r}:!1};hxt&&(s.usePolling=!0),s.atomic===void 0&&(s.atomic=!s.usePolling);let i=process.env.CHOKIDAR_USEPOLLING;if(i!==void 0){let c=i.toLowerCase();c==="false"||c==="0"?s.usePolling=!1:c==="true"||c==="1"?s.usePolling=!0:s.usePolling=!!c}let a=process.env.CHOKIDAR_INTERVAL;a&&(s.interval=Number.parseInt(a,10));let o=0;this._emitReady=()=>{o++,o>=this._readyCount&&(this._emitReady=MH,this._readyEmitted=!0,process.nextTick(()=>this.emit(Ei.READY)))},this._emitRaw=(...c)=>this.emit(Ei.RAW,...c),this._boundRemove=this._remove.bind(this),this.options=s,this._nodeFsHandler=new LH(this),Object.freeze(s)}_addIgnoredPath(t){if(USe(t)){for(let r of this._ignoredPaths)if(USe(r)&&r.path===t.path&&r.recursive===t.recursive)return}this._ignoredPaths.add(t)}_removeIgnoredPath(t){if(this._ignoredPaths.delete(t),typeof t=="string")for(let r of this._ignoredPaths)USe(r)&&r.path===t&&this._ignoredPaths.delete(r)}add(t,r,n){let{cwd:s}=this.options;this.closed=!1,this._closePromise=void 0;let i=Axt(t);return s&&(i=i.map(a=>hXr(a,s))),i.forEach(a=>{this._removeIgnoredPath(a)}),this._userIgnored=void 0,this._readyCount||(this._readyCount=0),this._readyCount+=i.length,Promise.all(i.map(async a=>{let o=await this._nodeFsHandler._addToNodeFs(a,!n,void 0,0,r);return o&&this._emitReady(),o})).then(a=>{this.closed||a.forEach(o=>{o&&this.add(Yr.dirname(o),Yr.basename(r||o))})}),this}unwatch(t){if(this.closed)return this;let r=Axt(t),{cwd:n}=this.options;return r.forEach(s=>{!Yr.isAbsolute(s)&&!this._closers.has(s)&&(n&&(s=Yr.join(n,s)),s=Yr.resolve(s)),this._closePath(s),this._addIgnoredPath(s),this._watched.has(s)&&this._addIgnoredPath({path:s,recursive:!0}),this._userIgnored=void 0}),this}close(){if(this._closePromise)return this._closePromise;this.closed=!0,this.removeAllListeners();let t=[];return this._closers.forEach(r=>r.forEach(n=>{let s=n();s instanceof Promise&&t.push(s)})),this._streams.forEach(r=>r.destroy()),this._userIgnored=void 0,this._readyCount=0,this._readyEmitted=!1,this._watched.forEach(r=>r.dispose()),this._closers.clear(),this._watched.clear(),this._streams.clear(),this._symlinkPaths.clear(),this._throttled.clear(),this._closePromise=t.length?Promise.all(t).then(()=>{}):Promise.resolve(),this._closePromise}getWatched(){let t={};return this._watched.forEach((r,n)=>{let i=(this.options.cwd?Yr.relative(this.options.cwd,n):n)||Txt;t[i]=r.getChildren().sort()}),t}emitWithAll(t,r){this.emit(t,...r),t!==Ei.ERROR&&this.emit(Ei.ALL,t,...r)}async _emit(t,r,n){if(this.closed)return;let s=this.options;kSe&&(r=Yr.normalize(r)),s.cwd&&(r=Yr.relative(s.cwd,r));let i=[r];n!=null&&i.push(n);let a=s.awaitWriteFinish,o;if(a&&(o=this._pendingWrites.get(r)))return o.lastChange=new Date,this;if(s.atomic){if(t===Ei.UNLINK)return this._pendingUnlinks.set(r,[t,...i]),setTimeout(()=>{this._pendingUnlinks.forEach((c,u)=>{this.emit(...c),this.emit(Ei.ALL,...c),this._pendingUnlinks.delete(u)})},typeof s.atomic=="number"?s.atomic:100),this;t===Ei.ADD&&this._pendingUnlinks.has(r)&&(t=Ei.CHANGE,this._pendingUnlinks.delete(r))}if(a&&(t===Ei.ADD||t===Ei.CHANGE)&&this._readyEmitted){let c=(u,l)=>{u?(t=Ei.ERROR,i[0]=u,this.emitWithAll(t,i)):l&&(i.length>1?i[1]=l:i.push(l),this.emitWithAll(t,i))};return this._awaitWriteFinish(r,a.stabilityThreshold,t,c),this}if(t===Ei.CHANGE&&!this._throttle(Ei.CHANGE,r,50))return this;if(s.alwaysStat&&n===void 0&&(t===Ei.ADD||t===Ei.ADD_DIR||t===Ei.CHANGE)){let c=s.cwd?Yr.join(s.cwd,r):r,u;try{u=await(0,FH.stat)(c)}catch{}if(!u||this.closed)return;i.push(u)}return this.emitWithAll(t,i),this}_handleError(t){let r=t&&t.code;return t&&r!=="ENOENT"&&r!=="ENOTDIR"&&(!this.options.ignorePermissionErrors||r!=="EPERM"&&r!=="EACCES")&&this.emit(Ei.ERROR,t),t||this.closed}_throttle(t,r,n){this._throttled.has(t)||this._throttled.set(t,new Map);let s=this._throttled.get(t);if(!s)throw new Error("invalid throttle");let i=s.get(r);if(i)return i.count++,!1;let a,o=()=>{let u=s.get(r),l=u?u.count:0;return s.delete(r),clearTimeout(a),u&&clearTimeout(u.timeoutObject),l};a=setTimeout(o,n);let c={timeoutObject:a,clear:o,count:0};return s.set(r,c),c}_incrReadyCount(){return this._readyCount++}_awaitWriteFinish(t,r,n,s){let i=this.options.awaitWriteFinish;if(typeof i!="object")return;let a=i.pollInterval,o,c=t;this.options.cwd&&!Yr.isAbsolute(t)&&(c=Yr.join(this.options.cwd,t));let u=new Date,l=this._pendingWrites;function d(f){(0,vxt.stat)(c,(h,p)=>{if(h||!l.has(t)){h&&h.code!=="ENOENT"&&s(h);return}let m=Number(new Date);f&&p.size!==f.size&&(l.get(t).lastChange=m);let g=l.get(t);m-g.lastChange>=r?(l.delete(t),s(void 0,p)):o=setTimeout(d,a,p)})}l.has(t)||(l.set(t,{lastChange:u,cancelWait:()=>(l.delete(t),clearTimeout(o),n)}),o=setTimeout(d,a))}_isIgnored(t,r){if(this.options.atomic&&cXr.test(t))return!0;if(!this._userIgnored){let{cwd:n}=this.options,i=(this.options.ignored||[]).map(yxt(n)),o=[...[...this._ignoredPaths].map(yxt(n)),...i];this._userIgnored=fXr(o,void 0)}return this._userIgnored(t,r)}_isntIgnored(t,r){return!this._isIgnored(t,r)}_getWatchHelpers(t){return new UH(t,this.options.followSymlinks,this)}_getWatchedDir(t){let r=Yr.resolve(t);return this._watched.has(r)||this._watched.set(r,new FSe(r,this._boundRemove)),this._watched.get(r)}_hasReadPermissions(t){return this.options.ignorePermissionErrors?!0:!!(Number(t.mode)&256)}_remove(t,r,n){let s=Yr.join(t,r),i=Yr.resolve(s);if(n=n??(this._watched.has(s)||this._watched.has(i)),!this._throttle("remove",s,100))return;!n&&this._watched.size===1&&this.add(t,r,!0),this._getWatchedDir(s).getChildren().forEach(f=>this._remove(s,f));let c=this._getWatchedDir(t),u=c.has(r);c.remove(r),this._symlinkPaths.has(i)&&this._symlinkPaths.delete(i);let l=s;if(this.options.cwd&&(l=Yr.relative(this.options.cwd,s)),this.options.awaitWriteFinish&&this._pendingWrites.has(l)&&this._pendingWrites.get(l).cancelWait()===Ei.ADD)return;this._watched.delete(s),this._watched.delete(i);let d=n?Ei.UNLINK_DIR:Ei.UNLINK;u&&!this._isIgnored(s)&&this._emit(d,s),this._closePath(s)}_closePath(t){this._closeFile(t);let r=Yr.dirname(t);this._getWatchedDir(r).remove(Yr.basename(t))}_closeFile(t){let r=this._closers.get(t);r&&(r.forEach(n=>n()),this._closers.delete(t))}_addPathCloser(t,r){if(!r)return;let n=this._closers.get(t);n||(n=[],this._closers.set(t,n)),n.push(r)}_readdirp(t,r){if(this.closed)return;let n={type:Ei.ALL,alwaysStat:!0,lstat:!0,...r,depth:0},s=cxt(t,n);return this._streams.add(s),s.once(fxt,()=>{s=void 0}),s.once(MSe,()=>{s&&(this._streams.delete(s),s=void 0)}),s}};_Xr={watch:Ixt,FSWatcher:Nk}});var RXr={};function yXr(){return process.env.SPACE_ID?"huggingface":"node"}function vXr(){CH();let e=fE.default.join($Se,".env.example"),t=fE.default.join(xxt,".env.example"),r=Vd.default.existsSync(Ig),n=Vd.default.existsSync(e),s=Vd.default.existsSync(xxt),i=Vd.default.existsSync(t);if(r){console.log("[server] Configuration files exist, skipping auto-copy");return}if(n)try{Vd.default.copyFileSync(e,Ig),console.log("[server] Copied .env.example to .env successfully")}catch(a){console.log("[server] Error copying .env.example to .env:",a.message)}else if(s&&i)try{Vd.default.existsSync($Se)||(Vd.default.mkdirSync($Se,{recursive:!0}),console.log("[server] Created config directory")),Vd.default.copyFileSync(t,Ig),console.log("[server] Copied config_example/.env.example to config/.env successfully")}catch(a){console.log("[server] Error copying config_example files to config directory:",a.message)}else console.log("[server] .env.example not found in config or config_example, cannot auto-copy")}function Lxt(){try{Pxt.default.config({path:Ig,override:!0});for(let[e,t]of Object.entries(EXr))process.env[e]=t;console.log("[server] .env file loaded successfully")}catch{console.log("[server] dotenv not available or .env file not found, using system environment variables")}}async function SXr(){let e=Vd.default.existsSync(Ig);if(!e){console.log("[server] .env not found, skipping file watcher");return}try{let t=await Promise.resolve().then(()=>(Cxt(),Rxt)),r=t.default||t,n=[];e&&n.push(Ig),lT=r.watch(n,{persistent:!0,awaitWriteFinish:{stabilityThreshold:100,pollInterval:100}}),lT.on("change",i=>{dT&&clearTimeout(dT),dT=setTimeout(()=>{let a=fE.default.basename(i);console.log(`[server] ${a} changed, reloading environment variables...`);try{let o=new Set;if(i===Ig&&Vd.default.existsSync(Ig)){let u=Vd.default.readFileSync(Ig,"utf8").split(` +`);for(let l of u){let d=l.trim();if(d&&!d.startsWith("#")){let f=d.match(/^([^=]+)=/);f&&o.add(f[1])}}}for(let c of Object.keys(process.env))o.has(c)||delete process.env[c];Lxt(),Js?.reInit?.(),console.log("[server] Environment variables reloaded successfully"),console.log("[server] Updated keys:",Array.from(o).join(", ")),(process.env.USE_BANGUMI_DATA==="false"||process.env.USE_BANGUMI_DATA===!1)&&rq(!0)}catch(o){console.log("[server] Error reloading configuration files:",o.message)}dT=null},200)}),lT.on("unlink",i=>{let a=fE.default.basename(i);console.log(`[server] ${a} deleted, using remaining configuration files`)}),lT.on("error",i=>{console.log("[server] File watcher error:",i.message)});let s=n.map(i=>fE.default.basename(i)).join(" and ");console.log(`[server] Configuration file watcher started for: ${s}`)}catch{console.log("[server] chokidar not available, configuration hot reload disabled")}}function Mxt(){lT&&(console.log("[server] Closing file watcher..."),lT.close(),lT=null),dT&&(clearTimeout(dT),dT=null),qH&&(console.log("[server] Closing main server..."),qH.close(()=>{console.log("[server] Main server closed")})),HH&&(console.log("[server] Closing proxy server..."),HH.close(()=>{console.log("[server] Proxy server closed")})),setTimeout(()=>{console.log("[server] Exit complete."),process.exit(0)},500)}function TXr(){return $H.default.createServer(async(e,t)=>{try{let r=`http://${e.headers.host}${e.url}`,n="unknown",s=e.headers["x-forwarded-for"];s?(n=s.split(",")[0].trim(),console.log(`[server] Using X-Forwarded-For IP: ${n}`)):e.headers["x-real-ip"]?(n=e.headers["x-real-ip"],console.log(`[server] Using X-Real-IP: ${n}`)):(n=e.socket.remoteAddress||"unknown",console.log(`[server] Using direct connection IP: ${n}`)),n&&n.startsWith("::ffff:")&&(n=n.substring(7));let i;(e.method==="POST"||e.method==="PUT")&&(i=await new Promise(d=>{let f="";e.on("data",h=>f+=h),e.on("end",()=>d(f))}));let a=new Wf(r,{method:e.method,headers:e.headers,body:i||void 0}),o=await ZCt(a,process.env,yXr(),n);t.statusCode=o.status,o.headers.forEach((d,f)=>{let h=f.toLowerCase();h==="content-encoding"||h==="content-length"||t.setHeader(f,d)});let c=e.headers["accept-encoding"]||"",u=o.headers.get("content-type")||"",l;if(o&&typeof o.arrayBuffer=="function"){let d=await o.arrayBuffer();l=Buffer.from(d)}else if(o&&typeof o.buffer=="function")l=await o.buffer();else if(o&&typeof o.text=="function"){let d=await o.text();l=Buffer.from(d||"","utf8")}else throw new TypeError("webResponse has no readable body method (arrayBuffer/buffer/text)");if(c.includes("gzip")&&l.length>1024&&(u.includes("xml")||u.includes("json")||u.includes("text")))try{let d=Oxt.default.gzipSync(l);t.setHeader("Content-Encoding","gzip"),t.setHeader("Content-Length",d.length),l=d}catch(d){console.error("[GZIP] Compression failed, falling back to raw:",d.message)}t.hasHeader("Content-Length")||t.setHeader("Content-Length",l.length),t.end(l)}catch(r){console.error("Server error:",r),t.statusCode=500,t.end("Internal Server Error")}})}function bXr(){return $H.default.createServer((e,t)=>{let r=new URL(e.url,`http://${e.headers.host}`),n=Object.fromEntries(r.searchParams);if(n.url){let s=process.env.PROXY_URL||"",i=null;if(s){let d=s.split(",").map(f=>f.trim()).filter(f=>f);for(let f of d)if(!(/^@/.test(f)||/^[\w-]+@http/i.test(f))){i=f.trim(),console.log("[Proxy Server] Forward proxy detected:",i);break}}let a=n.url;console.log("[Proxy Server] Target URL:",a);let o=new URL(a),c={hostname:o.hostname,port:o.port||(o.protocol==="https:"?443:80),path:o.pathname+o.search,method:"GET",headers:{...e.headers}};delete c.headers.host;let u=o.protocol==="https:"?Nxt.default:$H.default;i?(console.log("[Proxy Server] Using forward proxy agent:",i),c.agent=new Dxt.HttpsProxyAgent(i)):console.log("[Proxy Server] No proxy configured, direct connection");let l=u.request(c,d=>{t.writeHead(d.statusCode,d.headers),d.pipe(t,{end:!0})});e.on("close",()=>{t.writableEnded||(console.log("[Proxy Server] Client disconnected prematurely. Destroying upstream request."),l.destroy())}),l.on("error",d=>{if(e.destroyed||e.aborted||d.code==="ECONNRESET"||d.message==="socket hang up"){t.writableEnded||console.log("[Proxy Server] Upstream connection closed (expected behavior due to client interrupt).");return}console.error("Proxy request error:",d),t.headersSent||(t.statusCode=500,t.end("Proxy Error: "+d.message))}),l.end()}else t.statusCode=400,t.end("Bad Request: Missing URL parameter")})}async function IXr(){console.log("[server] Starting server..."),await SXr();try{Js.init(process.env)}catch(r){console.error("[server] Globals init failed:",r)}let e=Number.parseInt(process.env.DANMU_API_PORT??"",10),t=Number.isNaN(e)?9321:e;qH=TXr(),qH.listen(t,"0.0.0.0",()=>{console.log(`Server running on http://0.0.0.0:${t}`)}),HH=bXr(),HH.listen(5321,"0.0.0.0",()=>{console.log("Proxy server running on http://0.0.0.0:5321"),setTimeout(()=>FR("node",!0).catch(console.error),1e3)})}var wxt,fE,Vd,$H,Nxt,Oxt,Dxt,Pxt,dAs,fAs,AXr,hAs,$Se,xxt,Ig,EXr,lT,dT,qH,HH,kxt=ie(()=>{wxt=require("module"),fE=Ne(require("path"),1),Vd=Ne(require("fs"),1),$H=Ne(require("http"),1),Nxt=Ne(require("https"),1),Oxt=Ne(require("zlib"),1),Dxt=Ne(Frt(),1),Pxt=Ne(Krt(),1);SR();ext();Wt();Vm();ISe();dAs=Ne(rxt(),1),fAs=(0,wxt.createRequire)(typeof __filename<"u"?__filename:process.cwd()),AXr=typeof __filename<"u"?__filename:fE.default.join(process.cwd(),"vendor","danmu_api","danmu_api","server.js"),hAs=typeof __dirname<"u"?__dirname:fE.default.dirname(AXr),$Se=bSe(),xxt=xCt(),Ig=NC(),EXr={...process.env};vXr();Lxt();typeof globalThis.fetch!="function"&&(globalThis.fetch=KA);typeof globalThis.Request>"u"&&(globalThis.Request=Wf);typeof globalThis.Response>"u"&&(globalThis.Response=jc);typeof globalThis.Headers>"u"&&(globalThis.Headers=Jo);lT=null,dT=null,qH=null,HH=null;process.on("SIGTERM",Mxt);process.on("SIGINT",Mxt);IXr()});function Vxt(){return typeof globalThis<"u"&&typeof globalThis.messageToDart=="function"?globalThis.messageToDart:null}function kXr(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return String(e);try{return JSON.stringify(e)}catch{return String(e)}}function BXr(e,t={}){return`${e}:${kXr(t)}`}function UXr(){return Date.now()Hxt){let t=tc.recent.size-Hxt,r=0;for(let n of tc.recent.keys()){if(r>=t)break;tc.recent.delete(n),r++}}tc.lastPruneAt=e}function qXr(e=Date.now()){e-tc.lastPruneAt0&&a&&a.expiresAt>n)return a.result;if(tc.inflight.has(s))return tc.inflight.get(s);if(UXr()&&e!=="getPlayInfo")return null;let o=(async()=>{try{let c=await r({action:e,...t});return i>0&&tc.recent.set(s,{result:c,expiresAt:Date.now()+i}),c}catch(c){let u=c?.message||"",l=c?.code||"";return(l==="ECONNABORTED"||l==="ECONNRESET"||l==="ECONNREFUSED"||u.includes("timeout")||u.includes("socket hang up"))&&FXr(),console.warn(`[HostBridge] ${e} \u8C03\u7528\u5F02\u5E38:`,u||c),null}finally{tc.inflight.delete(s)}})();return tc.inflight.set(s,o),o}var LXr,tc,MXr,Hxt,tn,jd=ie(()=>{LXr={toast:1500,danmuPush:1200,clearDanmu:1200,serverStarted:1e4,queryProfile:3e3,saveProfile:5e3},tc={cooldownUntil:0,inflight:new Map,recent:new Map,lastPruneAt:0},MXr=60*1e3,Hxt=200;tn={isAvailable(){return!!Vxt()},async toast(e,t={}){let r=Number.isFinite(t.duration)?t.duration:2;return Jh("toast",{opt:{message:String(e??""),duration:r}})},async getPlayInfo(){return Jh("getPlayInfo")},async pushDanmu(e,t={}){return Jh("danmuPush",{opt:{url:e,...t}})},async clearDanmu(){let e=[()=>Jh("danmuPush",{opt:{url:""}}),()=>Jh("danmuPush",{opt:{url:null}}),()=>Jh("clearDanmu")];for(let t of e){let r=await t();if(r!=null)return r}return null},async queryProfile(){return Jh("queryProfile")},async saveProfile(e){return Jh("saveProfile",{opt:e})},async notifyServerStarted(e){return Jh("serverStarted",{opt:{address:e}})},async dispatch(e,t){return Jh(e,t||{})}}});function HSe(e){return VXr.some(t=>t.test(e))}function Gxt(e){let t=String(e||"").toLowerCase();if(!t||t==="::"||t==="::1"||t.startsWith("fc")||t.startsWith("fd")||t.startsWith("fe80:")||t.startsWith("fe9")||t.startsWith("fea")||t.startsWith("feb"))return!0;if(t.startsWith("::ffff:")){let r=t.split(":").pop();if(Ok.default.isIPv4(r)&&HSe(r))return!0}return!1}function jXr(e){let t=String(e||"").toLowerCase().trim();return!!(!t||t==="localhost"||t.endsWith(".localhost")||t==="metadata.google.internal"||t.endsWith(".internal")||t.endsWith(".local"))}function KXr(e){if(!e||typeof e!="string")return{ok:!1,reason:"empty url"};let t;try{t=new URL(e)}catch{return{ok:!1,reason:"invalid url"}}if(!HXr.has(t.protocol))return{ok:!1,reason:`protocol not allowed: ${t.protocol}`,parsed:t};let r=t.hostname;return jXr(r)?{ok:!1,reason:`blocked host: ${r}`,host:r,parsed:t}:Ok.default.isIPv4(r)&&HSe(r)?{ok:!1,reason:`blocked ipv4: ${r}`,host:r,parsed:t}:Ok.default.isIPv6(r)&&Gxt(r)?{ok:!1,reason:`blocked ipv6: ${r}`,host:r,parsed:t}:{ok:!0,host:r,parsed:t}}async function pT(e){let t=KXr(e);if(!t.ok||Ok.default.isIP(t.host))return t;let r;try{r=await Kxt.default.promises.lookup(t.host,{all:!0,verbatim:!0})}catch(n){return{ok:!1,reason:`dns lookup failed: ${n.message}`,host:t.host}}for(let{address:n,family:s}of r){if(s===4&&HSe(n))return{ok:!1,reason:`dns resolves to private ipv4: ${n}`,host:t.host};if(s===6&&Gxt(n))return{ok:!1,reason:`dns resolves to private ipv6: ${n}`,host:t.host}}return{ok:!0,host:t.host,parsed:t.parsed,addrs:r}}var Kxt,Ok,HXr,VXr,GH=ie(()=>{Kxt=Ne(require("dns"),1),Ok=Ne(require("net"),1),HXr=new Set(["http:","https:"]),VXr=[/^0\./,/^10\./,/^100\.(6[4-9]|[7-9]\d|1[0-1]\d|12[0-7])\./,/^127\./,/^169\.254\./,/^172\.(1[6-9]|2\d|3[0-1])\./,/^192\.0\.0\./,/^192\.0\.2\./,/^192\.88\.99\./,/^192\.168\./,/^198\.(1[8-9]|51\.100)\./,/^203\.0\.113\./,/^(22[4-9]|2[3-5]\d)\./,/^255\.255\.255\.255$/]});var ZSe={};kt(ZSe,{acquireInflightGate:()=>XSe,default:()=>Xe,getAgentStats:()=>QSe,getInflightGateStats:()=>WSe,getSharedAgents:()=>fn,releaseInflightGate:()=>JSe});function twt(e){if(!e||!e.interceptors||e.__inflightGateInstalled)return e;e.__inflightGateInstalled=!0;let t=90*1e3;e.interceptors.request.use(async n=>{await PC.acquire();let s={released:!1};return s.timer=setTimeout(()=>{s.released||(s.released=!0,PC.release())},t),n.__gateToken=s,n.maxContentLength||(n.maxContentLength=Xxt),n.maxBodyLength||(n.maxBodyLength=Xxt),n});let r=n=>{n&&!n.released&&(n.released=!0,n.timer&&(clearTimeout(n.timer),n.timer=null),PC.release())};return e.interceptors.response.use(n=>(r(n?.config?.__gateToken),n),n=>(r(n?.config?.__gateToken),Promise.reject(n))),e}function cJr({insecure:e,family:t}){return`i${e?1:0}-f${t||0}`}function fn(e={}){let t=!!e.insecure||eJr,r=e.family===4||e.family===6?e.family:0,n=cJr({insecure:t,family:r}),s=YSe.get(n);if(s)return s;let i={keepAlive:tJr,keepAliveMsecs:1e3,maxSockets:rJr,maxFreeSockets:nJr,timeout:sJr,freeSocketTimeout:iJr,...r?{family:r}:{}};return s={httpsAgent:new Zxt.default.Agent({...i,rejectUnauthorized:!t}),httpAgent:new ewt.default.Agent(i),key:n,insecure:t,family:r},YSe.set(n,s),s}function Jxt(e){let t=r=>Object.keys(r||{}).reduce((n,s)=>(n[s]=(r[s]||[]).length,n),{});return{sockets:t(e.sockets),freeSockets:t(e.freeSockets),requests:t(e.requests)}}function QSe(){let e={sockets:{},freeSockets:{},requests:{}},t={sockets:{},freeSockets:{},requests:{}},r=[];for(let n of YSe.values()){let s=Jxt(n.httpsAgent),i=Jxt(n.httpAgent);r.push({key:n.key,insecure:n.insecure,family:n.family,https:s,http:i});for(let a of["sockets","freeSockets","requests"]){for(let[o,c]of Object.entries(s[a]))e[a][o]=(e[a][o]||0)+c;for(let[o,c]of Object.entries(i[a]))t[a][o]=(t[a][o]||0)+c}}return{https:e,http:t,variants:r}}function WSe(){return PC.stats()}async function XSe(){await PC.acquire()}function JSe(){PC.release()}var Zxt,ewt,eJr,tJr,rJr,nJr,sJr,iJr,Xxt,aJr,zSe,PC,oJr,YSe,rwt,uJr,lJr,dJr,Xe,Cr=ie(()=>{vr();Zxt=Ne(require("https"),1),ewt=Ne(require("http"),1),eJr=process.env.INSECURE_TLS==="1"||process.env.NODE_TLS_REJECT_UNAUTHORIZED==="0",tJr=process.env.HTTP_KEEP_ALIVE!=="false",rJr=parseInt(process.env.HTTP_MAX_SOCKETS||"50",10),nJr=parseInt(process.env.HTTP_MAX_FREE_SOCKETS||"10",10),sJr=parseInt(process.env.HTTP_SOCKET_TIMEOUT||"60000",10),iJr=parseInt(process.env.HTTP_FREE_SOCKET_TIMEOUT||"30000",10),Xxt=parseInt(process.env.HTTP_MAX_CONTENT_LENGTH||String(2*1024*1024),10),aJr=parseInt(process.env.HTTP_GLOBAL_INFLIGHT||"150",10),zSe=class{constructor(t){this.max=t,this.active=0,this.peakActive=0,this.waiting=[],this.totalAcquired=0,this.totalReleased=0,this.peakWaiting=0}async acquire(){if(this.totalAcquired+=1,this.activethis.peakActive&&(this.peakActive=this.active);return}await new Promise(t=>{this.waiting.push(t),this.waiting.length>this.peakWaiting&&(this.peakWaiting=this.waiting.length)}),this.active+=1,this.active>this.peakActive&&(this.peakActive=this.active)}release(){this.totalReleased+=1,this.active=Math.max(0,this.active-1);let t=this.waiting.shift();t&&t()}stats(){return{max:this.max,active:this.active,waiting:this.waiting.length,peakActive:this.peakActive,peakWaiting:this.peakWaiting,totalAcquired:this.totalAcquired,totalReleased:this.totalReleased}}},PC=new zSe(aJr);oJr=ye.create.bind(ye);ye.create=function(t){let r=oJr(t);return twt(r),r};twt(ye);YSe=new Map;rwt=fn(),uJr=rwt.httpsAgent,lJr=rwt.httpAgent,dJr=ye.create({httpsAgent:uJr,httpAgent:lJr});Xe=dJr});var oTe={};kt(oTe,{HOME_CACHE_TTL:()=>bt,buildHomeCacheKey:()=>Qr,clearHomeCache:()=>sTe,getHomeCache:()=>Wr,getHomeCacheStats:()=>iTe,hasHomeCache:()=>gJr,resetHomeCacheStats:()=>aTe,setHomeCache:()=>hn});function nwt(){return Date.now()}function pJr(e,t=bt.semiStatic){let r=Number(t||bt.semiStatic),n=Number.isFinite(r)&&r>0?nwt()+r:Number.POSITIVE_INFINITY;return{value:e,expiresAt:n}}function swt(e){return!e||nwt()>e.expiresAt}function mJr(e){for(let[t]of c0.entries())if(t===e)return!0;return!1}function Qr(e,t={}){let r=t?.server||"default",n=t?.cacheKeyExtra||"";return`${e}:${r}:${n}`}function Wr(e){let t=c0.get(e);if(t&&!swt(t))return Kd.hits++,t.value;t&&c0.delete(e),Kd.misses++}function hn(e,t,r){!mJr(e)&&c0.size>=nTe&&Kd.evictions++,c0.set(e,pJr(t,r)),Kd.sets++}function gJr(e){let t=c0.get(e);return t&&!swt(t)?!0:(t&&c0.delete(e),!1)}function sTe(e){if(!e){c0.clear();return}let t=new RegExp(`^${e}:`);for(let[r]of c0.entries())t.test(r)&&c0.delete(r)}function iTe(){let e=Kd.hits+Kd.misses;return{hits:Kd.hits,misses:Kd.misses,sets:Kd.sets,evictions:Kd.evictions,hitRate:e>0?Kd.hits/e:0,size:c0.size,maxSize:nTe,calculatedSize:0}}function aTe(){Kd={hits:0,misses:0,sets:0,evictions:0}}var bt,Kd,nTe,c0,Dn=ie(()=>{ia();bt={static:30*60*1e3,semiStatic:10*60*1e3,dynamic:5*60*1e3,realtime:1*60*1e3},Kd={hits:0,misses:0,sets:0,evictions:0},nTe=500,c0=new _t(nTe,Number.POSITIVE_INFINITY)});var Ewt=ie(()=>{});function Mk(e){return e?.xml?typeof e.xml=="boolean"?ywt:{...ywt,...e.xml}:e??void 0}var IJr,Lk,ywt,dTe=ie(()=>{IJr={xml:!1,decodeEntities:!0},Lk=IJr,ywt={_useHtmlParser2:!0,xmlMode:!0}});function vwt(e){return e.type===In.Tag||e.type===In.Script||e.type===In.Style}var In,Swt,Twt,bwt,Iwt,Rwt,Cwt,xwt,wwt,Nwt,MC=ie(()=>{(function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"})(In||(In={}));Swt=In.Root,Twt=In.Text,bwt=In.Directive,Iwt=In.Comment,Rwt=In.Script,Cwt=In.Style,xwt=In.Tag,wwt=In.CDATA,Nwt=In.Doctype});function It(e){return vwt(e)}function kC(e){return e.type===In.CDATA}function zu(e){return e.type===In.Text}function yT(e){return e.type===In.Comment}function tV(e){return e.type===In.Directive}function u0(e){return e.type===In.Root}function ms(e){return Object.prototype.hasOwnProperty.call(e,"children")}function Fk(e,t=!1){let r;if(zu(e))r=new Zh(e.data);else if(yT(e))r=new _T(e.data);else if(It(e)){let n=t?fTe(e.children):[],s=new ET(e.name,{...e.attribs},n);n.forEach(i=>i.parent=s),e.namespace!=null&&(s.namespace=e.namespace),e["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...e["x-attribsNamespace"]}),e["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...e["x-attribsPrefix"]}),r=s}else if(kC(e)){let n=t?fTe(e.children):[],s=new Uk(n);n.forEach(i=>i.parent=s),r=s}else if(u0(e)){let n=t?fTe(e.children):[],s=new Ul(n);n.forEach(i=>i.parent=s),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),r=s}else if(tV(e)){let n=new AT(e.name,e.data);e["x-name"]!=null&&(n["x-name"]=e["x-name"],n["x-publicId"]=e["x-publicId"],n["x-systemId"]=e["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${e.type}`);return r.startIndex=e.startIndex,r.endIndex=e.endIndex,e.sourceCodeLocation!=null&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function fTe(e){let t=e.map(r=>Fk(r,!0));for(let r=1;r{MC();eV=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(t){this.parent=t}get previousSibling(){return this.prev}set previousSibling(t){this.prev=t}get nextSibling(){return this.next}set nextSibling(t){this.next=t}cloneNode(t=!1){return Fk(this,t)}},kk=class extends eV{constructor(t){super(),this.data=t}get nodeValue(){return this.data}set nodeValue(t){this.data=t}},Zh=class extends kk{constructor(){super(...arguments),this.type=In.Text}get nodeType(){return 3}},_T=class extends kk{constructor(){super(...arguments),this.type=In.Comment}get nodeType(){return 8}},AT=class extends kk{constructor(t,r){super(r),this.name=t,this.type=In.Directive}get nodeType(){return 1}},Bk=class extends eV{constructor(t){super(),this.children=t}get firstChild(){var t;return(t=this.children[0])!==null&&t!==void 0?t:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(t){this.children=t}},Uk=class extends Bk{constructor(){super(...arguments),this.type=In.CDATA}get nodeType(){return 4}},Ul=class extends Bk{constructor(){super(...arguments),this.type=In.Root}get nodeType(){return 9}},ET=class extends Bk{constructor(t,r,n=[],s=t==="script"?In.Script:t==="style"?In.Style:In.Tag){super(n),this.name=t,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(t){this.name=t}get attributes(){return Object.keys(this.attribs).map(t=>{var r,n;return{name:t,value:this.attribs[t],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[t],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[t]}})}}});var Dwt,BC,rc=ie(()=>{MC();hTe();hTe();Dwt={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},BC=class{constructor(t,r,n){this.dom=[],this.root=new Ul(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,typeof r=="function"&&(n=r,r=Dwt),typeof t=="object"&&(r=t,t=void 0),this.callback=t??null,this.options=r??Dwt,this.elementCB=n??null}onparserinit(t){this.parser=t}onreset(){this.dom=[],this.root=new Ul(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null}onend(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))}onerror(t){this.handleCallback(t)}onclosetag(){this.lastNode=null;let t=this.tagStack.pop();this.options.withEndIndices&&(t.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(t)}onopentag(t,r){let n=this.options.xmlMode?In.Tag:void 0,s=new ET(t,r,void 0,n);this.addNode(s),this.tagStack.push(s)}ontext(t){let{lastNode:r}=this;if(r&&r.type===In.Text)r.data+=t,this.options.withEndIndices&&(r.endIndex=this.parser.endIndex);else{let n=new Zh(t);this.addNode(n),this.lastNode=n}}oncomment(t){if(this.lastNode&&this.lastNode.type===In.Comment){this.lastNode.data+=t;return}let r=new _T(t);this.addNode(r),this.lastNode=r}oncommentend(){this.lastNode=null}oncdatastart(){let t=new Zh(""),r=new Uk([t]);this.addNode(r),t.parent=r,this.lastNode=t}oncdataend(){this.lastNode=null}onprocessinginstruction(t,r){let n=new AT(t,r);this.addNode(n)}handleCallback(t){if(typeof this.callback=="function")this.callback(t,this.dom);else if(t)throw t}addNode(t){let r=this.tagStack[this.tagStack.length-1],n=r.children[r.children.length-1];this.options.withStartIndices&&(t.startIndex=this.parser.startIndex),this.options.withEndIndices&&(t.endIndex=this.parser.endIndex),r.children.push(t),n&&(t.prev=n,n.next=t),t.parent=r,this.lastNode=null}}});var rV,Pwt=ie(()=>{rV=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(e=>e.charCodeAt(0)))});var nV,Lwt=ie(()=>{nV=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(e=>e.charCodeAt(0)))});function $k(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=RJr.get(e))!==null&&t!==void 0?t:e}var pTe,RJr,UC,mTe=ie(()=>{RJr=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),UC=(pTe=String.fromCodePoint)!==null&&pTe!==void 0?pTe:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t}});function gTe(e){return e>=Ya.ZERO&&e<=Ya.NINE}function xJr(e){return e>=Ya.UPPER_A&&e<=Ya.UPPER_F||e>=Ya.LOWER_A&&e<=Ya.LOWER_F}function wJr(e){return e>=Ya.UPPER_A&&e<=Ya.UPPER_Z||e>=Ya.LOWER_A&&e<=Ya.LOWER_Z||gTe(e)}function NJr(e){return e===Ya.EQUALS||wJr(e)}function Mwt(e){let t="",r=new sV(e,n=>t+=UC(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){t+=s.slice(a,o),r.startEntity(i);let u=r.write(s,o+1);if(u<0){a=o+r.end();break}a=o+u,o=u===0?a+1:a}let c=t+s.slice(a);return t="",c}}function _Te(e,t,r,n){let s=(t&Gd.BRANCH_LENGTH)>>7,i=t&Gd.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:e[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=e[c];if(un)o=c-1;else return e[c+s]}return-1}var Ya,CJr,Gd,za,Cg,sV,IEs,REs,qk=ie(()=>{Pwt();Lwt();mTe();mTe();(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(Ya||(Ya={}));CJr=32;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(Gd||(Gd={}));(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(za||(za={}));(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(Cg||(Cg={}));sV=class{constructor(t,r,n){this.decodeTree=t,this.emitCodePoint=r,this.errors=n,this.state=za.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Cg.Strict}startEntity(t){this.decodeMode=t,this.state=za.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,r){switch(this.state){case za.EntityStart:return t.charCodeAt(r)===Ya.NUM?(this.state=za.NumericStart,this.consumed+=1,this.stateNumericStart(t,r+1)):(this.state=za.NamedEntity,this.stateNamedEntity(t,r));case za.NumericStart:return this.stateNumericStart(t,r);case za.NumericDecimal:return this.stateNumericDecimal(t,r);case za.NumericHex:return this.stateNumericHex(t,r);case za.NamedEntity:return this.stateNamedEntity(t,r)}}stateNumericStart(t,r){return r>=t.length?-1:(t.charCodeAt(r)|CJr)===Ya.LOWER_X?(this.state=za.NumericHex,this.consumed+=1,this.stateNumericHex(t,r+1)):(this.state=za.NumericDecimal,this.stateNumericDecimal(t,r))}addToNumericResult(t,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(t.substr(r,i),s),this.consumed+=i}}stateNumericHex(t,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Ya.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Cg.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;let{result:r,decodeTree:n}=this,s=(n[r]&Gd.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[t]&~Gd.VALUE_LENGTH:s[t+1],n),r===3&&this.emitCodePoint(s[t+2],n),n}end(){var t;switch(this.state){case za.NamedEntity:return this.result!==0&&(this.decodeMode!==Cg.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case za.NumericDecimal:return this.emitNumericEntity(0,2);case za.NumericHex:return this.emitNumericEntity(0,3);case za.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case za.EntityStart:return 0}}};IEs=Mwt(rV),REs=Mwt(nV)});function iV(e){for(let t=1;t{OJr=new Map(iV([[9," "],[0," "],[22,"!"],[0,"""],[0,"#"],[0,"$"],[0,"%"],[0,"&"],[0,"'"],[0,"("],[0,")"],[0,"*"],[0,"+"],[0,","],[1,"."],[0,"/"],[10,":"],[0,";"],[0,{v:"<",n:8402,o:"<⃒"}],[0,{v:"=",n:8421,o:"=⃥"}],[0,{v:">",n:8402,o:">⃒"}],[0,"?"],[0,"@"],[26,"["],[0,"\"],[0,"]"],[0,"^"],[0,"_"],[0,"`"],[5,{n:106,o:"fj"}],[20,"{"],[0,"|"],[0,"}"],[34," "],[0,"¡"],[0,"¢"],[0,"£"],[0,"¤"],[0,"¥"],[0,"¦"],[0,"§"],[0,"¨"],[0,"©"],[0,"ª"],[0,"«"],[0,"¬"],[0,"­"],[0,"®"],[0,"¯"],[0,"°"],[0,"±"],[0,"²"],[0,"³"],[0,"´"],[0,"µ"],[0,"¶"],[0,"·"],[0,"¸"],[0,"¹"],[0,"º"],[0,"»"],[0,"¼"],[0,"½"],[0,"¾"],[0,"¿"],[0,"À"],[0,"Á"],[0,"Â"],[0,"Ã"],[0,"Ä"],[0,"Å"],[0,"Æ"],[0,"Ç"],[0,"È"],[0,"É"],[0,"Ê"],[0,"Ë"],[0,"Ì"],[0,"Í"],[0,"Î"],[0,"Ï"],[0,"Ð"],[0,"Ñ"],[0,"Ò"],[0,"Ó"],[0,"Ô"],[0,"Õ"],[0,"Ö"],[0,"×"],[0,"Ø"],[0,"Ù"],[0,"Ú"],[0,"Û"],[0,"Ü"],[0,"Ý"],[0,"Þ"],[0,"ß"],[0,"à"],[0,"á"],[0,"â"],[0,"ã"],[0,"ä"],[0,"å"],[0,"æ"],[0,"ç"],[0,"è"],[0,"é"],[0,"ê"],[0,"ë"],[0,"ì"],[0,"í"],[0,"î"],[0,"ï"],[0,"ð"],[0,"ñ"],[0,"ò"],[0,"ó"],[0,"ô"],[0,"õ"],[0,"ö"],[0,"÷"],[0,"ø"],[0,"ù"],[0,"ú"],[0,"û"],[0,"ü"],[0,"ý"],[0,"þ"],[0,"ÿ"],[0,"Ā"],[0,"ā"],[0,"Ă"],[0,"ă"],[0,"Ą"],[0,"ą"],[0,"Ć"],[0,"ć"],[0,"Ĉ"],[0,"ĉ"],[0,"Ċ"],[0,"ċ"],[0,"Č"],[0,"č"],[0,"Ď"],[0,"ď"],[0,"Đ"],[0,"đ"],[0,"Ē"],[0,"ē"],[2,"Ė"],[0,"ė"],[0,"Ę"],[0,"ę"],[0,"Ě"],[0,"ě"],[0,"Ĝ"],[0,"ĝ"],[0,"Ğ"],[0,"ğ"],[0,"Ġ"],[0,"ġ"],[0,"Ģ"],[1,"Ĥ"],[0,"ĥ"],[0,"Ħ"],[0,"ħ"],[0,"Ĩ"],[0,"ĩ"],[0,"Ī"],[0,"ī"],[2,"Į"],[0,"į"],[0,"İ"],[0,"ı"],[0,"IJ"],[0,"ij"],[0,"Ĵ"],[0,"ĵ"],[0,"Ķ"],[0,"ķ"],[0,"ĸ"],[0,"Ĺ"],[0,"ĺ"],[0,"Ļ"],[0,"ļ"],[0,"Ľ"],[0,"ľ"],[0,"Ŀ"],[0,"ŀ"],[0,"Ł"],[0,"ł"],[0,"Ń"],[0,"ń"],[0,"Ņ"],[0,"ņ"],[0,"Ň"],[0,"ň"],[0,"ʼn"],[0,"Ŋ"],[0,"ŋ"],[0,"Ō"],[0,"ō"],[2,"Ő"],[0,"ő"],[0,"Œ"],[0,"œ"],[0,"Ŕ"],[0,"ŕ"],[0,"Ŗ"],[0,"ŗ"],[0,"Ř"],[0,"ř"],[0,"Ś"],[0,"ś"],[0,"Ŝ"],[0,"ŝ"],[0,"Ş"],[0,"ş"],[0,"Š"],[0,"š"],[0,"Ţ"],[0,"ţ"],[0,"Ť"],[0,"ť"],[0,"Ŧ"],[0,"ŧ"],[0,"Ũ"],[0,"ũ"],[0,"Ū"],[0,"ū"],[0,"Ŭ"],[0,"ŭ"],[0,"Ů"],[0,"ů"],[0,"Ű"],[0,"ű"],[0,"Ų"],[0,"ų"],[0,"Ŵ"],[0,"ŵ"],[0,"Ŷ"],[0,"ŷ"],[0,"Ÿ"],[0,"Ź"],[0,"ź"],[0,"Ż"],[0,"ż"],[0,"Ž"],[0,"ž"],[19,"ƒ"],[34,"Ƶ"],[63,"ǵ"],[65,"ȷ"],[142,"ˆ"],[0,"ˇ"],[16,"˘"],[0,"˙"],[0,"˚"],[0,"˛"],[0,"˜"],[0,"˝"],[51,"̑"],[127,"Α"],[0,"Β"],[0,"Γ"],[0,"Δ"],[0,"Ε"],[0,"Ζ"],[0,"Η"],[0,"Θ"],[0,"Ι"],[0,"Κ"],[0,"Λ"],[0,"Μ"],[0,"Ν"],[0,"Ξ"],[0,"Ο"],[0,"Π"],[0,"Ρ"],[1,"Σ"],[0,"Τ"],[0,"Υ"],[0,"Φ"],[0,"Χ"],[0,"Ψ"],[0,"Ω"],[7,"α"],[0,"β"],[0,"γ"],[0,"δ"],[0,"ε"],[0,"ζ"],[0,"η"],[0,"θ"],[0,"ι"],[0,"κ"],[0,"λ"],[0,"μ"],[0,"ν"],[0,"ξ"],[0,"ο"],[0,"π"],[0,"ρ"],[0,"ς"],[0,"σ"],[0,"τ"],[0,"υ"],[0,"φ"],[0,"χ"],[0,"ψ"],[0,"ω"],[7,"ϑ"],[0,"ϒ"],[2,"ϕ"],[0,"ϖ"],[5,"Ϝ"],[0,"ϝ"],[18,"ϰ"],[0,"ϱ"],[3,"ϵ"],[0,"϶"],[10,"Ё"],[0,"Ђ"],[0,"Ѓ"],[0,"Є"],[0,"Ѕ"],[0,"І"],[0,"Ї"],[0,"Ј"],[0,"Љ"],[0,"Њ"],[0,"Ћ"],[0,"Ќ"],[1,"Ў"],[0,"Џ"],[0,"А"],[0,"Б"],[0,"В"],[0,"Г"],[0,"Д"],[0,"Е"],[0,"Ж"],[0,"З"],[0,"И"],[0,"Й"],[0,"К"],[0,"Л"],[0,"М"],[0,"Н"],[0,"О"],[0,"П"],[0,"Р"],[0,"С"],[0,"Т"],[0,"У"],[0,"Ф"],[0,"Х"],[0,"Ц"],[0,"Ч"],[0,"Ш"],[0,"Щ"],[0,"Ъ"],[0,"Ы"],[0,"Ь"],[0,"Э"],[0,"Ю"],[0,"Я"],[0,"а"],[0,"б"],[0,"в"],[0,"г"],[0,"д"],[0,"е"],[0,"ж"],[0,"з"],[0,"и"],[0,"й"],[0,"к"],[0,"л"],[0,"м"],[0,"н"],[0,"о"],[0,"п"],[0,"р"],[0,"с"],[0,"т"],[0,"у"],[0,"ф"],[0,"х"],[0,"ц"],[0,"ч"],[0,"ш"],[0,"щ"],[0,"ъ"],[0,"ы"],[0,"ь"],[0,"э"],[0,"ю"],[0,"я"],[1,"ё"],[0,"ђ"],[0,"ѓ"],[0,"є"],[0,"ѕ"],[0,"і"],[0,"ї"],[0,"ј"],[0,"љ"],[0,"њ"],[0,"ћ"],[0,"ќ"],[1,"ў"],[0,"џ"],[7074," "],[0," "],[0," "],[0," "],[1," "],[0," "],[0," "],[0," "],[0,"​"],[0,"‌"],[0,"‍"],[0,"‎"],[0,"‏"],[0,"‐"],[2,"–"],[0,"—"],[0,"―"],[0,"‖"],[1,"‘"],[0,"’"],[0,"‚"],[1,"“"],[0,"”"],[0,"„"],[1,"†"],[0,"‡"],[0,"•"],[2,"‥"],[0,"…"],[9,"‰"],[0,"‱"],[0,"′"],[0,"″"],[0,"‴"],[0,"‵"],[3,"‹"],[0,"›"],[3,"‾"],[2,"⁁"],[1,"⁃"],[0,"⁄"],[10,"⁏"],[7,"⁗"],[7,{v:" ",n:8202,o:"  "}],[0,"⁠"],[0,"⁡"],[0,"⁢"],[0,"⁣"],[72,"€"],[46,"⃛"],[0,"⃜"],[37,"ℂ"],[2,"℅"],[4,"ℊ"],[0,"ℋ"],[0,"ℌ"],[0,"ℍ"],[0,"ℎ"],[0,"ℏ"],[0,"ℐ"],[0,"ℑ"],[0,"ℒ"],[0,"ℓ"],[1,"ℕ"],[0,"№"],[0,"℗"],[0,"℘"],[0,"ℙ"],[0,"ℚ"],[0,"ℛ"],[0,"ℜ"],[0,"ℝ"],[0,"℞"],[3,"™"],[1,"ℤ"],[2,"℧"],[0,"ℨ"],[0,"℩"],[2,"ℬ"],[0,"ℭ"],[1,"ℯ"],[0,"ℰ"],[0,"ℱ"],[1,"ℳ"],[0,"ℴ"],[0,"ℵ"],[0,"ℶ"],[0,"ℷ"],[0,"ℸ"],[12,"ⅅ"],[0,"ⅆ"],[0,"ⅇ"],[0,"ⅈ"],[10,"⅓"],[0,"⅔"],[0,"⅕"],[0,"⅖"],[0,"⅗"],[0,"⅘"],[0,"⅙"],[0,"⅚"],[0,"⅛"],[0,"⅜"],[0,"⅝"],[0,"⅞"],[49,"←"],[0,"↑"],[0,"→"],[0,"↓"],[0,"↔"],[0,"↕"],[0,"↖"],[0,"↗"],[0,"↘"],[0,"↙"],[0,"↚"],[0,"↛"],[1,{v:"↝",n:824,o:"↝̸"}],[0,"↞"],[0,"↟"],[0,"↠"],[0,"↡"],[0,"↢"],[0,"↣"],[0,"↤"],[0,"↥"],[0,"↦"],[0,"↧"],[1,"↩"],[0,"↪"],[0,"↫"],[0,"↬"],[0,"↭"],[0,"↮"],[1,"↰"],[0,"↱"],[0,"↲"],[0,"↳"],[1,"↵"],[0,"↶"],[0,"↷"],[2,"↺"],[0,"↻"],[0,"↼"],[0,"↽"],[0,"↾"],[0,"↿"],[0,"⇀"],[0,"⇁"],[0,"⇂"],[0,"⇃"],[0,"⇄"],[0,"⇅"],[0,"⇆"],[0,"⇇"],[0,"⇈"],[0,"⇉"],[0,"⇊"],[0,"⇋"],[0,"⇌"],[0,"⇍"],[0,"⇎"],[0,"⇏"],[0,"⇐"],[0,"⇑"],[0,"⇒"],[0,"⇓"],[0,"⇔"],[0,"⇕"],[0,"⇖"],[0,"⇗"],[0,"⇘"],[0,"⇙"],[0,"⇚"],[0,"⇛"],[1,"⇝"],[6,"⇤"],[0,"⇥"],[15,"⇵"],[7,"⇽"],[0,"⇾"],[0,"⇿"],[0,"∀"],[0,"∁"],[0,{v:"∂",n:824,o:"∂̸"}],[0,"∃"],[0,"∄"],[0,"∅"],[1,"∇"],[0,"∈"],[0,"∉"],[1,"∋"],[0,"∌"],[2,"∏"],[0,"∐"],[0,"∑"],[0,"−"],[0,"∓"],[0,"∔"],[1,"∖"],[0,"∗"],[0,"∘"],[1,"√"],[2,"∝"],[0,"∞"],[0,"∟"],[0,{v:"∠",n:8402,o:"∠⃒"}],[0,"∡"],[0,"∢"],[0,"∣"],[0,"∤"],[0,"∥"],[0,"∦"],[0,"∧"],[0,"∨"],[0,{v:"∩",n:65024,o:"∩︀"}],[0,{v:"∪",n:65024,o:"∪︀"}],[0,"∫"],[0,"∬"],[0,"∭"],[0,"∮"],[0,"∯"],[0,"∰"],[0,"∱"],[0,"∲"],[0,"∳"],[0,"∴"],[0,"∵"],[0,"∶"],[0,"∷"],[0,"∸"],[1,"∺"],[0,"∻"],[0,{v:"∼",n:8402,o:"∼⃒"}],[0,{v:"∽",n:817,o:"∽̱"}],[0,{v:"∾",n:819,o:"∾̳"}],[0,"∿"],[0,"≀"],[0,"≁"],[0,{v:"≂",n:824,o:"≂̸"}],[0,"≃"],[0,"≄"],[0,"≅"],[0,"≆"],[0,"≇"],[0,"≈"],[0,"≉"],[0,"≊"],[0,{v:"≋",n:824,o:"≋̸"}],[0,"≌"],[0,{v:"≍",n:8402,o:"≍⃒"}],[0,{v:"≎",n:824,o:"≎̸"}],[0,{v:"≏",n:824,o:"≏̸"}],[0,{v:"≐",n:824,o:"≐̸"}],[0,"≑"],[0,"≒"],[0,"≓"],[0,"≔"],[0,"≕"],[0,"≖"],[0,"≗"],[1,"≙"],[0,"≚"],[1,"≜"],[2,"≟"],[0,"≠"],[0,{v:"≡",n:8421,o:"≡⃥"}],[0,"≢"],[1,{v:"≤",n:8402,o:"≤⃒"}],[0,{v:"≥",n:8402,o:"≥⃒"}],[0,{v:"≦",n:824,o:"≦̸"}],[0,{v:"≧",n:824,o:"≧̸"}],[0,{v:"≨",n:65024,o:"≨︀"}],[0,{v:"≩",n:65024,o:"≩︀"}],[0,{v:"≪",n:new Map(iV([[824,"≪̸"],[7577,"≪⃒"]]))}],[0,{v:"≫",n:new Map(iV([[824,"≫̸"],[7577,"≫⃒"]]))}],[0,"≬"],[0,"≭"],[0,"≮"],[0,"≯"],[0,"≰"],[0,"≱"],[0,"≲"],[0,"≳"],[0,"≴"],[0,"≵"],[0,"≶"],[0,"≷"],[0,"≸"],[0,"≹"],[0,"≺"],[0,"≻"],[0,"≼"],[0,"≽"],[0,"≾"],[0,{v:"≿",n:824,o:"≿̸"}],[0,"⊀"],[0,"⊁"],[0,{v:"⊂",n:8402,o:"⊂⃒"}],[0,{v:"⊃",n:8402,o:"⊃⃒"}],[0,"⊄"],[0,"⊅"],[0,"⊆"],[0,"⊇"],[0,"⊈"],[0,"⊉"],[0,{v:"⊊",n:65024,o:"⊊︀"}],[0,{v:"⊋",n:65024,o:"⊋︀"}],[1,"⊍"],[0,"⊎"],[0,{v:"⊏",n:824,o:"⊏̸"}],[0,{v:"⊐",n:824,o:"⊐̸"}],[0,"⊑"],[0,"⊒"],[0,{v:"⊓",n:65024,o:"⊓︀"}],[0,{v:"⊔",n:65024,o:"⊔︀"}],[0,"⊕"],[0,"⊖"],[0,"⊗"],[0,"⊘"],[0,"⊙"],[0,"⊚"],[0,"⊛"],[1,"⊝"],[0,"⊞"],[0,"⊟"],[0,"⊠"],[0,"⊡"],[0,"⊢"],[0,"⊣"],[0,"⊤"],[0,"⊥"],[1,"⊧"],[0,"⊨"],[0,"⊩"],[0,"⊪"],[0,"⊫"],[0,"⊬"],[0,"⊭"],[0,"⊮"],[0,"⊯"],[0,"⊰"],[1,"⊲"],[0,"⊳"],[0,{v:"⊴",n:8402,o:"⊴⃒"}],[0,{v:"⊵",n:8402,o:"⊵⃒"}],[0,"⊶"],[0,"⊷"],[0,"⊸"],[0,"⊹"],[0,"⊺"],[0,"⊻"],[1,"⊽"],[0,"⊾"],[0,"⊿"],[0,"⋀"],[0,"⋁"],[0,"⋂"],[0,"⋃"],[0,"⋄"],[0,"⋅"],[0,"⋆"],[0,"⋇"],[0,"⋈"],[0,"⋉"],[0,"⋊"],[0,"⋋"],[0,"⋌"],[0,"⋍"],[0,"⋎"],[0,"⋏"],[0,"⋐"],[0,"⋑"],[0,"⋒"],[0,"⋓"],[0,"⋔"],[0,"⋕"],[0,"⋖"],[0,"⋗"],[0,{v:"⋘",n:824,o:"⋘̸"}],[0,{v:"⋙",n:824,o:"⋙̸"}],[0,{v:"⋚",n:65024,o:"⋚︀"}],[0,{v:"⋛",n:65024,o:"⋛︀"}],[2,"⋞"],[0,"⋟"],[0,"⋠"],[0,"⋡"],[0,"⋢"],[0,"⋣"],[2,"⋦"],[0,"⋧"],[0,"⋨"],[0,"⋩"],[0,"⋪"],[0,"⋫"],[0,"⋬"],[0,"⋭"],[0,"⋮"],[0,"⋯"],[0,"⋰"],[0,"⋱"],[0,"⋲"],[0,"⋳"],[0,"⋴"],[0,{v:"⋵",n:824,o:"⋵̸"}],[0,"⋶"],[0,"⋷"],[1,{v:"⋹",n:824,o:"⋹̸"}],[0,"⋺"],[0,"⋻"],[0,"⋼"],[0,"⋽"],[0,"⋾"],[6,"⌅"],[0,"⌆"],[1,"⌈"],[0,"⌉"],[0,"⌊"],[0,"⌋"],[0,"⌌"],[0,"⌍"],[0,"⌎"],[0,"⌏"],[0,"⌐"],[1,"⌒"],[0,"⌓"],[1,"⌕"],[0,"⌖"],[5,"⌜"],[0,"⌝"],[0,"⌞"],[0,"⌟"],[2,"⌢"],[0,"⌣"],[9,"⌭"],[0,"⌮"],[7,"⌶"],[6,"⌽"],[1,"⌿"],[60,"⍼"],[51,"⎰"],[0,"⎱"],[2,"⎴"],[0,"⎵"],[0,"⎶"],[37,"⏜"],[0,"⏝"],[0,"⏞"],[0,"⏟"],[2,"⏢"],[4,"⏧"],[59,"␣"],[164,"Ⓢ"],[55,"─"],[1,"│"],[9,"┌"],[3,"┐"],[3,"└"],[3,"┘"],[3,"├"],[7,"┤"],[7,"┬"],[7,"┴"],[7,"┼"],[19,"═"],[0,"║"],[0,"╒"],[0,"╓"],[0,"╔"],[0,"╕"],[0,"╖"],[0,"╗"],[0,"╘"],[0,"╙"],[0,"╚"],[0,"╛"],[0,"╜"],[0,"╝"],[0,"╞"],[0,"╟"],[0,"╠"],[0,"╡"],[0,"╢"],[0,"╣"],[0,"╤"],[0,"╥"],[0,"╦"],[0,"╧"],[0,"╨"],[0,"╩"],[0,"╪"],[0,"╫"],[0,"╬"],[19,"▀"],[3,"▄"],[3,"█"],[8,"░"],[0,"▒"],[0,"▓"],[13,"□"],[8,"▪"],[0,"▫"],[1,"▭"],[0,"▮"],[2,"▱"],[1,"△"],[0,"▴"],[0,"▵"],[2,"▸"],[0,"▹"],[3,"▽"],[0,"▾"],[0,"▿"],[2,"◂"],[0,"◃"],[6,"◊"],[0,"○"],[32,"◬"],[2,"◯"],[8,"◸"],[0,"◹"],[0,"◺"],[0,"◻"],[0,"◼"],[8,"★"],[0,"☆"],[7,"☎"],[49,"♀"],[1,"♂"],[29,"♠"],[2,"♣"],[1,"♥"],[0,"♦"],[3,"♪"],[2,"♭"],[0,"♮"],[0,"♯"],[163,"✓"],[3,"✗"],[8,"✠"],[21,"✶"],[33,"❘"],[25,"❲"],[0,"❳"],[84,"⟈"],[0,"⟉"],[28,"⟦"],[0,"⟧"],[0,"⟨"],[0,"⟩"],[0,"⟪"],[0,"⟫"],[0,"⟬"],[0,"⟭"],[7,"⟵"],[0,"⟶"],[0,"⟷"],[0,"⟸"],[0,"⟹"],[0,"⟺"],[1,"⟼"],[2,"⟿"],[258,"⤂"],[0,"⤃"],[0,"⤄"],[0,"⤅"],[6,"⤌"],[0,"⤍"],[0,"⤎"],[0,"⤏"],[0,"⤐"],[0,"⤑"],[0,"⤒"],[0,"⤓"],[2,"⤖"],[2,"⤙"],[0,"⤚"],[0,"⤛"],[0,"⤜"],[0,"⤝"],[0,"⤞"],[0,"⤟"],[0,"⤠"],[2,"⤣"],[0,"⤤"],[0,"⤥"],[0,"⤦"],[0,"⤧"],[0,"⤨"],[0,"⤩"],[0,"⤪"],[8,{v:"⤳",n:824,o:"⤳̸"}],[1,"⤵"],[0,"⤶"],[0,"⤷"],[0,"⤸"],[0,"⤹"],[2,"⤼"],[0,"⤽"],[7,"⥅"],[2,"⥈"],[0,"⥉"],[0,"⥊"],[0,"⥋"],[2,"⥎"],[0,"⥏"],[0,"⥐"],[0,"⥑"],[0,"⥒"],[0,"⥓"],[0,"⥔"],[0,"⥕"],[0,"⥖"],[0,"⥗"],[0,"⥘"],[0,"⥙"],[0,"⥚"],[0,"⥛"],[0,"⥜"],[0,"⥝"],[0,"⥞"],[0,"⥟"],[0,"⥠"],[0,"⥡"],[0,"⥢"],[0,"⥣"],[0,"⥤"],[0,"⥥"],[0,"⥦"],[0,"⥧"],[0,"⥨"],[0,"⥩"],[0,"⥪"],[0,"⥫"],[0,"⥬"],[0,"⥭"],[0,"⥮"],[0,"⥯"],[0,"⥰"],[0,"⥱"],[0,"⥲"],[0,"⥳"],[0,"⥴"],[0,"⥵"],[0,"⥶"],[1,"⥸"],[0,"⥹"],[1,"⥻"],[0,"⥼"],[0,"⥽"],[0,"⥾"],[0,"⥿"],[5,"⦅"],[0,"⦆"],[4,"⦋"],[0,"⦌"],[0,"⦍"],[0,"⦎"],[0,"⦏"],[0,"⦐"],[0,"⦑"],[0,"⦒"],[0,"⦓"],[0,"⦔"],[0,"⦕"],[0,"⦖"],[3,"⦚"],[1,"⦜"],[0,"⦝"],[6,"⦤"],[0,"⦥"],[0,"⦦"],[0,"⦧"],[0,"⦨"],[0,"⦩"],[0,"⦪"],[0,"⦫"],[0,"⦬"],[0,"⦭"],[0,"⦮"],[0,"⦯"],[0,"⦰"],[0,"⦱"],[0,"⦲"],[0,"⦳"],[0,"⦴"],[0,"⦵"],[0,"⦶"],[0,"⦷"],[1,"⦹"],[1,"⦻"],[0,"⦼"],[1,"⦾"],[0,"⦿"],[0,"⧀"],[0,"⧁"],[0,"⧂"],[0,"⧃"],[0,"⧄"],[0,"⧅"],[3,"⧉"],[3,"⧍"],[0,"⧎"],[0,{v:"⧏",n:824,o:"⧏̸"}],[0,{v:"⧐",n:824,o:"⧐̸"}],[11,"⧜"],[0,"⧝"],[0,"⧞"],[4,"⧣"],[0,"⧤"],[0,"⧥"],[5,"⧫"],[8,"⧴"],[1,"⧶"],[9,"⨀"],[0,"⨁"],[0,"⨂"],[1,"⨄"],[1,"⨆"],[5,"⨌"],[0,"⨍"],[2,"⨐"],[0,"⨑"],[0,"⨒"],[0,"⨓"],[0,"⨔"],[0,"⨕"],[0,"⨖"],[0,"⨗"],[10,"⨢"],[0,"⨣"],[0,"⨤"],[0,"⨥"],[0,"⨦"],[0,"⨧"],[1,"⨩"],[0,"⨪"],[2,"⨭"],[0,"⨮"],[0,"⨯"],[0,"⨰"],[0,"⨱"],[1,"⨳"],[0,"⨴"],[0,"⨵"],[0,"⨶"],[0,"⨷"],[0,"⨸"],[0,"⨹"],[0,"⨺"],[0,"⨻"],[0,"⨼"],[2,"⨿"],[0,"⩀"],[1,"⩂"],[0,"⩃"],[0,"⩄"],[0,"⩅"],[0,"⩆"],[0,"⩇"],[0,"⩈"],[0,"⩉"],[0,"⩊"],[0,"⩋"],[0,"⩌"],[0,"⩍"],[2,"⩐"],[2,"⩓"],[0,"⩔"],[0,"⩕"],[0,"⩖"],[0,"⩗"],[0,"⩘"],[1,"⩚"],[0,"⩛"],[0,"⩜"],[0,"⩝"],[1,"⩟"],[6,"⩦"],[3,"⩪"],[2,{v:"⩭",n:824,o:"⩭̸"}],[0,"⩮"],[0,"⩯"],[0,{v:"⩰",n:824,o:"⩰̸"}],[0,"⩱"],[0,"⩲"],[0,"⩳"],[0,"⩴"],[0,"⩵"],[1,"⩷"],[0,"⩸"],[0,"⩹"],[0,"⩺"],[0,"⩻"],[0,"⩼"],[0,{v:"⩽",n:824,o:"⩽̸"}],[0,{v:"⩾",n:824,o:"⩾̸"}],[0,"⩿"],[0,"⪀"],[0,"⪁"],[0,"⪂"],[0,"⪃"],[0,"⪄"],[0,"⪅"],[0,"⪆"],[0,"⪇"],[0,"⪈"],[0,"⪉"],[0,"⪊"],[0,"⪋"],[0,"⪌"],[0,"⪍"],[0,"⪎"],[0,"⪏"],[0,"⪐"],[0,"⪑"],[0,"⪒"],[0,"⪓"],[0,"⪔"],[0,"⪕"],[0,"⪖"],[0,"⪗"],[0,"⪘"],[0,"⪙"],[0,"⪚"],[2,"⪝"],[0,"⪞"],[0,"⪟"],[0,"⪠"],[0,{v:"⪡",n:824,o:"⪡̸"}],[0,{v:"⪢",n:824,o:"⪢̸"}],[1,"⪤"],[0,"⪥"],[0,"⪦"],[0,"⪧"],[0,"⪨"],[0,"⪩"],[0,"⪪"],[0,"⪫"],[0,{v:"⪬",n:65024,o:"⪬︀"}],[0,{v:"⪭",n:65024,o:"⪭︀"}],[0,"⪮"],[0,{v:"⪯",n:824,o:"⪯̸"}],[0,{v:"⪰",n:824,o:"⪰̸"}],[2,"⪳"],[0,"⪴"],[0,"⪵"],[0,"⪶"],[0,"⪷"],[0,"⪸"],[0,"⪹"],[0,"⪺"],[0,"⪻"],[0,"⪼"],[0,"⪽"],[0,"⪾"],[0,"⪿"],[0,"⫀"],[0,"⫁"],[0,"⫂"],[0,"⫃"],[0,"⫄"],[0,{v:"⫅",n:824,o:"⫅̸"}],[0,{v:"⫆",n:824,o:"⫆̸"}],[0,"⫇"],[0,"⫈"],[2,{v:"⫋",n:65024,o:"⫋︀"}],[0,{v:"⫌",n:65024,o:"⫌︀"}],[2,"⫏"],[0,"⫐"],[0,"⫑"],[0,"⫒"],[0,"⫓"],[0,"⫔"],[0,"⫕"],[0,"⫖"],[0,"⫗"],[0,"⫘"],[0,"⫙"],[0,"⫚"],[0,"⫛"],[8,"⫤"],[1,"⫦"],[0,"⫧"],[0,"⫨"],[0,"⫩"],[1,"⫫"],[0,"⫬"],[0,"⫭"],[0,"⫮"],[0,"⫯"],[0,"⫰"],[0,"⫱"],[0,"⫲"],[0,"⫳"],[9,{v:"⫽",n:8421,o:"⫽⃥"}],[44343,{n:new Map(iV([[56476,"𝒜"],[1,"𝒞"],[0,"𝒟"],[2,"𝒢"],[2,"𝒥"],[0,"𝒦"],[2,"𝒩"],[0,"𝒪"],[0,"𝒫"],[0,"𝒬"],[1,"𝒮"],[0,"𝒯"],[0,"𝒰"],[0,"𝒱"],[0,"𝒲"],[0,"𝒳"],[0,"𝒴"],[0,"𝒵"],[0,"𝒶"],[0,"𝒷"],[0,"𝒸"],[0,"𝒹"],[1,"𝒻"],[1,"𝒽"],[0,"𝒾"],[0,"𝒿"],[0,"𝓀"],[0,"𝓁"],[0,"𝓂"],[0,"𝓃"],[1,"𝓅"],[0,"𝓆"],[0,"𝓇"],[0,"𝓈"],[0,"𝓉"],[0,"𝓊"],[0,"𝓋"],[0,"𝓌"],[0,"𝓍"],[0,"𝓎"],[0,"𝓏"],[52,"𝔄"],[0,"𝔅"],[1,"𝔇"],[0,"𝔈"],[0,"𝔉"],[0,"𝔊"],[2,"𝔍"],[0,"𝔎"],[0,"𝔏"],[0,"𝔐"],[0,"𝔑"],[0,"𝔒"],[0,"𝔓"],[0,"𝔔"],[1,"𝔖"],[0,"𝔗"],[0,"𝔘"],[0,"𝔙"],[0,"𝔚"],[0,"𝔛"],[0,"𝔜"],[1,"𝔞"],[0,"𝔟"],[0,"𝔠"],[0,"𝔡"],[0,"𝔢"],[0,"𝔣"],[0,"𝔤"],[0,"𝔥"],[0,"𝔦"],[0,"𝔧"],[0,"𝔨"],[0,"𝔩"],[0,"𝔪"],[0,"𝔫"],[0,"𝔬"],[0,"𝔭"],[0,"𝔮"],[0,"𝔯"],[0,"𝔰"],[0,"𝔱"],[0,"𝔲"],[0,"𝔳"],[0,"𝔴"],[0,"𝔵"],[0,"𝔶"],[0,"𝔷"],[0,"𝔸"],[0,"𝔹"],[1,"𝔻"],[0,"𝔼"],[0,"𝔽"],[0,"𝔾"],[1,"𝕀"],[0,"𝕁"],[0,"𝕂"],[0,"𝕃"],[0,"𝕄"],[1,"𝕆"],[3,"𝕊"],[0,"𝕋"],[0,"𝕌"],[0,"𝕍"],[0,"𝕎"],[0,"𝕏"],[0,"𝕐"],[1,"𝕒"],[0,"𝕓"],[0,"𝕔"],[0,"𝕕"],[0,"𝕖"],[0,"𝕗"],[0,"𝕘"],[0,"𝕙"],[0,"𝕚"],[0,"𝕛"],[0,"𝕜"],[0,"𝕝"],[0,"𝕞"],[0,"𝕟"],[0,"𝕠"],[0,"𝕡"],[0,"𝕢"],[0,"𝕣"],[0,"𝕤"],[0,"𝕥"],[0,"𝕦"],[0,"𝕧"],[0,"𝕨"],[0,"𝕩"],[0,"𝕪"],[0,"𝕫"]]))}],[8906,"ff"],[0,"fi"],[0,"fl"],[0,"ffi"],[0,"ffl"]]))});function Hk(e){let t="",r=0,n;for(;(n=ATe.exec(e))!==null;){let s=n.index,i=e.charCodeAt(s),a=Bwt.get(i);a!==void 0?(t+=e.substring(r,s)+a,r=s+1):(t+=`${e.substring(r,s)}&#x${Uwt(e,s).toString(16)};`,r=ATe.lastIndex+=+((i&64512)===55296))}return t+e.substr(r)}function ETe(e,t){return function(n){let s,i=0,a="";for(;s=e.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=t.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var ATe,Bwt,Uwt,Fwt,aV,oV,cV=ie(()=>{ATe=/["&'<>$\x80-\uFFFF]/g,Bwt=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),Uwt=String.prototype.codePointAt!=null?(e,t)=>e.codePointAt(t):(e,t)=>(e.charCodeAt(t)&64512)===55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t);Fwt=ETe(/[&<>'"]/g,Bwt),aV=ETe(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),oV=ETe(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))});var yTe=ie(()=>{kwt();cV()});var $wt,qwt,jwt=ie(()=>{qk();yTe();cV();cV();yTe();qk();(function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"})($wt||($wt={}));(function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"})(qwt||(qwt={}))});var Kwt,Gwt,zwt=ie(()=>{Kwt=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),Gwt=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e]))});function LJr(e){return e.replace(/"/g,""")}function MJr(e,t){var r;if(!e)return;let n=((r=t.encodeEntities)!==null&&r!==void 0?r:t.decodeEntities)===!1?LJr:t.xmlMode||t.encodeEntities!=="utf8"?Hk:aV;return Object.keys(e).map(s=>{var i,a;let o=(i=e[s])!==null&&i!==void 0?i:"";return t.xmlMode==="foreign"&&(s=(a=Gwt.get(s))!==null&&a!==void 0?a:s),!t.emptyAttrs&&!t.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}function TTe(e,t={}){let r="length"in e?e:[e],n="";for(let s=0;s0&&(n+=TTe(e.children,t)),(t.xmlMode||!Ywt.has(e.name))&&(n+=``)),n}function $Jr(e){return`<${e.data}>`}function qJr(e,t){var r;let n=e.data||"";return((r=t.encodeEntities)!==null&&r!==void 0?r:t.decodeEntities)!==!1&&!(!t.xmlMode&&e.parent&&PJr.has(e.parent.name))&&(n=t.xmlMode||t.encodeEntities!=="utf8"?Hk(n):oV(n)),n}function HJr(e){return``}function VJr(e){return``}var PJr,Ywt,uV,BJr,UJr,bTe=ie(()=>{MC();jwt();zwt();PJr=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);Ywt=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);uV=TTe;BJr=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),UJr=new Set(["svg","math"])});function Qwt(e,t){return uV(e,t)}function jJr(e,t){return ms(e)?e.children.map(r=>Qwt(r,t)).join(""):""}function lV(e){return Array.isArray(e)?e.map(lV).join(""):It(e)?e.name==="br"?` +`:lV(e.children):kC(e)?lV(e.children):zu(e)?e.data:""}function xg(e){return Array.isArray(e)?e.map(xg).join(""):ms(e)&&!yT(e)?xg(e.children):zu(e)?e.data:""}function Vk(e){return Array.isArray(e)?e.map(Vk).join(""):ms(e)&&(e.type===In.Tag||kC(e))?Vk(e.children):zu(e)?e.data:""}var ITe=ie(()=>{rc();bTe();MC()});function FC(e){return ms(e)?e.children:[]}function Wwt(e){return e.parent||null}function RTe(e){let t=Wwt(e);if(t!=null)return FC(t);let r=[e],{prev:n,next:s}=e;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function KJr(e,t){var r;return(r=e.attribs)===null||r===void 0?void 0:r[t]}function GJr(e,t){return e.attribs!=null&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&e.attribs[t]!=null}function zJr(e){return e.name}function dV(e){let{next:t}=e;for(;t!==null&&!It(t);)({next:t}=t);return t}function fV(e){let{prev:t}=e;for(;t!==null&&!It(t);)({prev:t}=t);return t}var Xwt=ie(()=>{rc()});function wg(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){let t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}function YJr(e,t){let r=t.prev=e.prev;r&&(r.next=t);let n=t.next=e.next;n&&(n.prev=t);let s=t.parent=e.parent;if(s){let i=s.children;i[i.lastIndexOf(e)]=t,e.parent=null}}function QJr(e,t){if(wg(t),t.next=null,t.parent=e,e.children.push(t)>1){let r=e.children[e.children.length-2];r.next=t,t.prev=r}else t.prev=null}function WJr(e,t){wg(t);let{parent:r}=e,n=e.next;if(t.next=n,t.prev=e,e.next=t,t.parent=r,n){if(n.prev=t,r){let s=r.children;s.splice(s.lastIndexOf(n),0,t)}}else r&&r.children.push(t)}function XJr(e,t){if(wg(t),t.parent=e,t.prev=null,e.children.unshift(t)!==1){let r=e.children[1];r.prev=t,t.next=r}else t.next=null}function JJr(e,t){wg(t);let{parent:r}=e;if(r){let n=r.children;n.splice(n.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=r,t.prev=e.prev,t.next=e,e.prev=t}var Jwt=ie(()=>{});function $C(e,t,r=!0,n=1/0){return hV(e,Array.isArray(t)?t:[t],r,n)}function hV(e,t,r,n){let s=[],i=[Array.isArray(t)?t:[t]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(e(o)&&(s.push(o),--n<=0))return s;r&&ms(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function ZJr(e,t){return t.find(e)}function pV(e,t,r=!0){let n=Array.isArray(t)?t:[t];for(let s=0;s0){let a=pV(e,i.children,!0);if(a)return a}}return null}function Zwt(e,t){return(Array.isArray(t)?t:[t]).some(r=>It(r)&&e(r)||ms(r)&&Zwt(e,r.children))}function eZr(e,t){let r=[],n=[Array.isArray(t)?t:[t]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];It(i)&&e(i)&&r.push(i),ms(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var CTe=ie(()=>{rc()});function xTe(e,t){return typeof t=="function"?r=>It(r)&&t(r.attribs[e]):r=>It(r)&&r.attribs[e]===t}function tZr(e,t){return r=>e(r)||t(r)}function eNt(e){let t=Object.keys(e).map(r=>{let n=e[r];return Object.prototype.hasOwnProperty.call(mV,r)?mV[r](n):xTe(r,n)});return t.length===0?null:t.reduce(tZr)}function rZr(e,t){let r=eNt(e);return r?r(t):!0}function nZr(e,t,r,n=1/0){let s=eNt(e);return s?$C(s,t,r,n):[]}function sZr(e,t,r=!0){return Array.isArray(t)||(t=[t]),pV(xTe("id",e),t,r)}function vT(e,t,r=!0,n=1/0){return $C(mV.tag_name(e),t,r,n)}function iZr(e,t,r=!0,n=1/0){return $C(xTe("class",e),t,r,n)}function aZr(e,t,r=!0,n=1/0){return $C(mV.tag_type(e),t,r,n)}var mV,wTe=ie(()=>{rc();CTe();mV={tag_name(e){return typeof e=="function"?t=>It(t)&&e(t.name):e==="*"?It:t=>It(t)&&t.name===e},tag_type(e){return typeof e=="function"?t=>e(t.type):t=>t.type===e},tag_contains(e){return typeof e=="function"?t=>zu(t)&&e(t.data):t=>zu(t)&&t.data===e}}});function oZr(e){let t=e.length;for(;--t>=0;){let r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0){e.splice(t,1);continue}for(let n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e}function tNt(e,t){let r=[],n=[];if(e===t)return 0;let s=ms(e)?e:e.parent;for(;s;)r.unshift(s),s=s.parent;for(s=ms(t)?t:t.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;ac.indexOf(l)?o===t?zd.FOLLOWING|zd.CONTAINED_BY:zd.FOLLOWING:o===e?zd.PRECEDING|zd.CONTAINS:zd.PRECEDING}function pE(e){return e=e.filter((t,r,n)=>!n.includes(t,r+1)),e.sort((t,r)=>{let n=tNt(t,r);return n&zd.PRECEDING?-1:n&zd.FOLLOWING?1:0}),e}var zd,rNt=ie(()=>{rc();(function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"})(zd||(zd={}))});function NTe(e){let t=gV(fZr,e);return t?t.name==="feed"?cZr(t):uZr(t):null}function cZr(e){var t;let r=e.children,n={type:"atom",items:vT("entry",r).map(a=>{var o;let{children:c}=a,u={media:nNt(c)};Yu(u,"id","id",c),Yu(u,"title","title",c);let l=(o=gV("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=mE("summary",c)||mE("content",c);d&&(u.description=d);let f=mE("updated",c);return f&&(u.pubDate=new Date(f)),u})};Yu(n,"id","id",r),Yu(n,"title","title",r);let s=(t=gV("link",r))===null||t===void 0?void 0:t.attribs.href;s&&(n.link=s),Yu(n,"description","subtitle",r);let i=mE("updated",r);return i&&(n.updated=new Date(i)),Yu(n,"author","email",r,!0),n}function uZr(e){var t,r;let n=(r=(t=gV("channel",e.children))===null||t===void 0?void 0:t.children)!==null&&r!==void 0?r:[],s={type:e.name.substr(0,3),id:"",items:vT("item",e.children).map(a=>{let{children:o}=a,c={media:nNt(o)};Yu(c,"id","guid",o),Yu(c,"title","title",o),Yu(c,"link","link",o),Yu(c,"description","description",o);let u=mE("pubDate",o)||mE("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};Yu(s,"title","title",n),Yu(s,"link","link",n),Yu(s,"description","description",n);let i=mE("lastBuildDate",n);return i&&(s.updated=new Date(i)),Yu(s,"author","managingEditor",n,!0),s}function nNt(e){return vT("media:content",e).map(t=>{let{attribs:r}=t,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of lZr)r[s]&&(n[s]=r[s]);for(let s of dZr)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function gV(e,t){return vT(e,t,!0,1)[0]}function mE(e,t,r=!1){return xg(vT(e,t,r,1)).trim()}function Yu(e,t,r,n,s=!1){let i=mE(r,n,s);i&&(e[t]=i)}function fZr(e){return e==="rss"||e==="feed"||e==="rdf:RDF"}var lZr,dZr,sNt=ie(()=>{ITe();wTe();lZr=["url","type","lang"],dZr=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"]});var gE={};kt(gE,{DocumentPosition:()=>zd,append:()=>WJr,appendChild:()=>QJr,compareDocumentPosition:()=>tNt,existsOne:()=>Zwt,filter:()=>$C,find:()=>hV,findAll:()=>eZr,findOne:()=>pV,findOneChild:()=>ZJr,getAttributeValue:()=>KJr,getChildren:()=>FC,getElementById:()=>sZr,getElements:()=>nZr,getElementsByClassName:()=>iZr,getElementsByTagName:()=>vT,getElementsByTagType:()=>aZr,getFeed:()=>NTe,getInnerHTML:()=>jJr,getName:()=>zJr,getOuterHTML:()=>Qwt,getParent:()=>Wwt,getSiblings:()=>RTe,getText:()=>lV,hasAttrib:()=>GJr,hasChildren:()=>ms,innerText:()=>Vk,isCDATA:()=>kC,isComment:()=>yT,isDocument:()=>u0,isTag:()=>It,isText:()=>zu,nextElementSibling:()=>dV,prepend:()=>JJr,prependChild:()=>XJr,prevElementSibling:()=>fV,removeElement:()=>wg,removeSubsets:()=>oZr,replaceElement:()=>YJr,testElement:()=>rZr,textContent:()=>xg,uniqueSort:()=>pE});var l0=ie(()=>{ITe();Xwt();Jwt();CTe();wTe();rNt();sNt();rc()});var AE={};kt(AE,{contains:()=>OTe,html:()=>oNt,merge:()=>gZr,parseHTML:()=>pZr,root:()=>mZr,text:()=>_E,xml:()=>cNt});function aNt(e,t,r){return e?e(t??e._root.children,null,void 0,r).toString():""}function hZr(e,t){return!t&&typeof e=="object"&&e!=null&&!("length"in e)&&!("type"in e)}function oNt(e,t){let r=hZr(e)?(t=e,void 0):e,n={...Lk,...this===null||this===void 0?void 0:this._options,...Mk(t??{})};return aNt(this,r,n)}function cNt(e){let t={...this._options,xmlMode:!0};return aNt(this,e,t)}function _E(e){let t=e||(this?this.root():[]),r="";for(let n=0;n{l0();dTe()});function Fl(e){return e.cheerio!=null}function uNt(e){return e.replace(/[_.-](\w|$)/g,(t,r)=>r.toUpperCase())}function lNt(e){return e.replace(/[A-Z]/g,"-$&").toLowerCase()}function Os(e,t){let r=e.length;for(let n=0;nFk(n,!0)):[Fk(e,!0)],r=new Ul(t);return t.forEach(n=>{n.parent=r}),t}function jk(e){let t=e.indexOf("<");if(t<0||t>e.length-3)return!1;let r=e.charCodeAt(t+1);return(r>=TT.LowerA&&r<=TT.LowerZ||r>=TT.UpperA&&r<=TT.UpperZ||r===TT.Exclamation)&&e.includes(">",t+2)}var TT,bT=ie(()=>{rc();rc();(function(e){e[e.LowerA=97]="LowerA",e[e.LowerZ=122]="LowerZ",e[e.UpperA=65]="UpperA",e[e.UpperZ=90]="UpperZ",e[e.Exclamation=33]="Exclamation"})(TT||(TT={}))});var MTe={};kt(MTe,{addClass:()=>gNt,attr:()=>AZr,data:()=>yZr,hasClass:()=>TZr,prop:()=>EZr,removeAttr:()=>SZr,removeClass:()=>_Nt,toggleClass:()=>ANt,val:()=>vZr});function AV(e,t,r){var n;if(!(!e||!It(e))){if((n=e.attribs)!==null&&n!==void 0||(e.attribs={}),!t)return e.attribs;if(qC.call(e.attribs,t))return!r&<e.test(t)?t:e.attribs[t];if(e.name==="option"&&t==="value")return _E(e.children);if(e.name==="input"&&(e.attribs.type==="radio"||e.attribs.type==="checkbox")&&t==="value")return"on"}}function HC(e,t,r){r===null?mNt(e,t):e.attribs[t]=`${r}`}function AZr(e,t){if(typeof e=="object"||t!==void 0){if(typeof t=="function"){if(typeof e!="string")throw new Error("Bad combination of arguments.");return Os(this,(r,n)=>{It(r)&&HC(r,e,t.call(r,n,r.attribs[e]))})}return Os(this,r=>{It(r)&&(typeof e=="object"?Object.keys(e).forEach(n=>{let s=e[n];HC(r,n,s)}):HC(r,e,t))})}return arguments.length>1?this:AV(this[0],e,this.options.xmlMode)}function fNt(e,t,r){return t in e?e[t]:!r&<e.test(t)?AV(e,t,!1)!==void 0:AV(e,t,r)}function PTe(e,t,r,n){t in e?e[t]=r:HC(e,t,!n&<e.test(t)?r?"":null:`${r}`)}function EZr(e,t){var r;if(typeof e=="string"&&t===void 0){let n=this[0];if(!n||!It(n))return;switch(e){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[e];return typeof URL<"u"&&(e==="href"&&(n.tagName==="a"||n.name==="link")||e==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return Vk(n);case"textContent":return xg(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return fNt(n,e,this.options.xmlMode)}}if(typeof e=="object"||t!==void 0){if(typeof t=="function"){if(typeof e=="object")throw new Error("Bad combination of arguments.");return Os(this,(n,s)=>{It(n)&&PTe(n,e,t.call(n,s,fNt(n,e,this.options.xmlMode)),this.options.xmlMode)})}return Os(this,n=>{It(n)&&(typeof e=="object"?Object.keys(e).forEach(s=>{let i=e[s];PTe(n,s,i,this.options.xmlMode)}):PTe(n,e,t,this.options.xmlMode))})}}function hNt(e,t,r){var n;let s=e;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof t=="object"?Object.assign(s.data,t):typeof t=="string"&&r!==void 0&&(s.data[t]=r)}function pNt(e,t){let r,n,s;t==null?(r=Object.keys(e.attribs).filter(i=>i.startsWith(DTe)),n=r.map(i=>uNt(i.slice(DTe.length)))):(r=[DTe+lNt(t)],n=[t]);for(let i=0;i{It(i)&&(typeof e=="object"?hNt(i,e):hNt(i,e,t))}),this):qC.call(s.data,e)?s.data[e]:pNt(s,e):pNt(s)}function vZr(e){let t=arguments.length===0,r=this[0];if(!r||!It(r))return t?void 0:this;switch(r.name){case"textarea":return this.text(e);case"select":{let n=this.find("option:selected");if(!t){if(this.attr("multiple")==null&&typeof e=="object")return this;this.find("option").removeAttr("selected");let s=typeof e!="object"?[e]:e;for(let i=0;i_E(s.children)):n.attr("value")}case"input":case"option":return t?this.attr("value"):this.attr("value",e)}}function mNt(e,t){!e.attribs||!qC.call(e.attribs,t)||delete e.attribs[t]}function EV(e){return e?e.trim().split(Kk):[]}function SZr(e){let t=EV(e);for(let r=0;r{It(n)&&mNt(n,t[r])});return this}function TZr(e){return this.toArray().some(t=>{let r=It(t)&&t.attribs.class,n=-1;if(r&&e.length)for(;(n=r.indexOf(e,n+1))>-1;){let s=n+e.length;if((n===0||Kk.test(r[n-1]))&&(s===r.length||Kk.test(r[s])))return!0}return!1})}function gNt(e){if(typeof e=="function")return Os(this,(n,s)=>{if(It(n)){let i=n.attribs.class||"";gNt.call([n],e.call(n,s,i))}});if(!e||typeof e!="string")return this;let t=e.split(Kk),r=this.length;for(let n=0;n{It(s)&&_Nt.call([s],e.call(s,i,s.attribs.class||""))});let t=EV(e),r=t.length,n=arguments.length===0;return Os(this,s=>{if(It(s))if(n)s.attribs.class="";else{let i=EV(s.attribs.class),a=!1;for(let o=0;o=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function ANt(e,t){if(typeof e=="function")return Os(this,(a,o)=>{It(a)&&ANt.call([a],e.call(a,o,a.attribs.class||"",t),t)});if(!e||typeof e!="string")return this;let r=e.split(Kk),n=r.length,s=typeof t=="boolean"?t?1:-1:0,i=this.length;for(let a=0;a=0&&l<0?c.push(r[u]):s<=0&&l>=0&&c.splice(l,1)}o.attribs.class=c.join(" ")}return this}var qC,Kk,DTe,dNt,LTe,_Zr,ENt=ie(()=>{ST();bT();l0();qC=Object.prototype.hasOwnProperty,Kk=/\s+/,DTe="data-",dNt={null:null,true:!0,false:!1},LTe=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,_Zr=/^{[^]*}$|^\[[^]*]$/});var yV=S(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});ep.AttributeAction=ep.IgnoreCaseMode=ep.SelectorType=void 0;var bZr;(function(e){e.Attribute="attribute",e.Pseudo="pseudo",e.PseudoElement="pseudo-element",e.Tag="tag",e.Universal="universal",e.Adjacent="adjacent",e.Child="child",e.Descendant="descendant",e.Parent="parent",e.Sibling="sibling",e.ColumnCombinator="column-combinator"})(bZr=ep.SelectorType||(ep.SelectorType={}));ep.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var IZr;(function(e){e.Any="any",e.Element="element",e.End="end",e.Equals="equals",e.Exists="exists",e.Hyphen="hyphen",e.Not="not",e.Start="start"})(IZr=ep.AttributeAction||(ep.AttributeAction={}))});var bNt=S(VC=>{"use strict";Object.defineProperty(VC,"__esModule",{value:!0});VC.parse=VC.isTraversal=void 0;var zn=yV(),yNt=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,RZr=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,CZr=new Map([[126,zn.AttributeAction.Element],[94,zn.AttributeAction.Start],[36,zn.AttributeAction.End],[42,zn.AttributeAction.Any],[33,zn.AttributeAction.Not],[124,zn.AttributeAction.Hyphen]]),xZr=new Set(["has","not","matches","is","where","host","host-context"]);function SNt(e){switch(e.type){case zn.SelectorType.Adjacent:case zn.SelectorType.Child:case zn.SelectorType.Descendant:case zn.SelectorType.Parent:case zn.SelectorType.Sibling:case zn.SelectorType.ColumnCombinator:return!0;default:return!1}}VC.isTraversal=SNt;var wZr=new Set(["contains","icontains"]);function NZr(e,t,r){var n=parseInt(t,16)-65536;return n!==n||r?t:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function Gk(e){return e.replace(RZr,NZr)}function kTe(e){return e===39||e===34}function vNt(e){return e===32||e===9||e===10||e===12||e===13}function OZr(e){var t=[],r=TNt(t,"".concat(e),0);if(r0&&r0&&SNt(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(L){if(n.length>0&&n[n.length-1].type===zn.SelectorType.Descendant){n[n.length-1].type=L;return}c(),n.push({type:L})}function l(L,U){n.push({type:zn.SelectorType.Attribute,name:L,action:U,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===zn.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");e.push(n)}if(i(0),t.length===r)return r;e:for(;r{"use strict";var vV=KC&&KC.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,s=t.length,i;n ":" > ";case Ni.SelectorType.Parent:return t===0?"< ":" < ";case Ni.SelectorType.Sibling:return t===0?"~ ":" ~ ";case Ni.SelectorType.Adjacent:return t===0?"+ ":" + ";case Ni.SelectorType.Descendant:return" ";case Ni.SelectorType.ColumnCombinator:return t===0?"|| ":" || ";case Ni.SelectorType.Universal:return e.namespace==="*"&&t+10?n+e.slice(r):e}});var GC=S($l=>{"use strict";var MZr=$l&&$l.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),kZr=$l&&$l.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&MZr(t,e,r)};Object.defineProperty($l,"__esModule",{value:!0});$l.stringify=$l.parse=$l.isTraversal=void 0;kZr(yV(),$l);var DNt=bNt();Object.defineProperty($l,"isTraversal",{enumerable:!0,get:function(){return DNt.isTraversal}});Object.defineProperty($l,"parse",{enumerable:!0,get:function(){return DNt.parse}});var BZr=ONt();Object.defineProperty($l,"stringify",{enumerable:!0,get:function(){return BZr.stringify}})});var EE=S((Nys,PNt)=>{PNt.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});function zk(e){return!LNt.has(e.type)}function BTe(e){let t=e.map(MNt);for(let r=1;r=0&&n>=1)):e.type===Qc.SelectorType.Pseudo&&(e.data?e.name==="has"||e.name==="contains"?n=0:Array.isArray(e.data)?(n=Math.min(...e.data.map(s=>Math.min(...s.map(MNt)))),n<0&&(n=0)):n=2:n=3),n}var Qc,LNt,UZr,UTe=ie(()=>{Qc=Ne(GC(),1),LNt=new Map([[Qc.SelectorType.Universal,50],[Qc.SelectorType.Tag,30],[Qc.SelectorType.Attribute,1],[Qc.SelectorType.Pseudo,0]]);UZr=new Map([[Qc.AttributeAction.Exists,10],[Qc.AttributeAction.Equals,8],[Qc.AttributeAction.Not,7],[Qc.AttributeAction.Start,6],[Qc.AttributeAction.End,6],[Qc.AttributeAction.Any,5]])});function kNt(e){return e.replace(FZr,"\\$&")}function IT(e,t){return typeof e.ignoreCase=="boolean"?e.ignoreCase:e.ignoreCase==="quirks"?!!t.quirksMode:!t.xmlMode&&$Zr.has(e.name)}var Yk,FZr,$Zr,BNt,UNt=ie(()=>{Yk=Ne(EE(),1),FZr=/[-[\]{}()*+?.,\\^$|#\s]/g;$Zr=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);BNt={equals(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t;return IT(t,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&e(a)}):a=>n.getAttributeValue(a,s)===i&&e(a)},hyphen(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t,a=i.length;return IT(t,r)?(i=i.toLowerCase(),function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a).toLowerCase()===i&&e(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&e(c)}},element(e,t,r){let{adapter:n}=r,{name:s,value:i}=t;if(/\s/.test(i))return Yk.default.falseFunc;let a=new RegExp(`(?:^|\\s)${kNt(i)}(?:$|\\s)`,IT(t,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&e(c)}},exists(e,{name:t},{adapter:r}){return n=>r.hasAttrib(n,t)&&e(n)},start(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t,a=i.length;return a===0?Yk.default.falseFunc:IT(t,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&e(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&e(o)}},end(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t,a=-i.length;return a===0?Yk.default.falseFunc:IT(t,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&e(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&e(o)}},any(e,t,r){let{adapter:n}=r,{name:s,value:i}=t;if(i==="")return Yk.default.falseFunc;if(IT(t,r)){let a=new RegExp(kNt(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&e(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&e(a)}},not(e,t,r){let{adapter:n}=r,{name:s}=t,{value:i}=t;return i===""?a=>!!n.getAttributeValue(a,s)&&e(a):IT(t,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&e(a)}):a=>n.getAttributeValue(a,s)!==i&&e(a)}}});function $Nt(e){if(e=e.trim().toLowerCase(),e==="even")return[2,0];if(e==="odd")return[2,1];let t=0,r=0,n=i(),s=a();if(t=FNt&&e.charCodeAt(t)<=HZr;)u=u*10+(e.charCodeAt(t)-FNt),t++;return t===c?null:u}function o(){for(;t{qZr=new Set([9,10,12,13,32]),FNt=48,HZr=57});function HNt(e){let t=e[0],r=e[1]-1;if(r<0&&t<=0)return FTe.default.falseFunc;if(t===-1)return i=>i<=r;if(t===0)return i=>i===r;if(t===1)return r<0?FTe.default.trueFunc:i=>i>=r;let n=Math.abs(t),s=(r%n+n)%n;return t>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}var FTe,VNt=ie(()=>{FTe=Ne(EE(),1)});function zC(e){return HNt($Nt(e))}var jNt=ie(()=>{qNt();VNt()});function SV(e,t){return r=>{let n=t.getParent(r);return n!=null&&t.isTag(n)&&e(r)}}function $Te(e){return function(r,n,{adapter:s}){let i=s[e];return typeof i!="function"?Qu.default.falseFunc:function(o){return i(o)&&r(o)}}}var Qu,YC,KNt=ie(()=>{jNt();Qu=Ne(EE(),1);YC={contains(e,t,{adapter:r}){return function(s){return e(s)&&r.getText(s).includes(t)}},icontains(e,t,{adapter:r}){let n=t.toLowerCase();return function(i){return e(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(e,t,{adapter:r,equals:n}){let s=zC(t);return s===Qu.default.falseFunc?Qu.default.falseFunc:s===Qu.default.trueFunc?SV(e,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0&&!n(a,o[u]);u--)r.isTag(o[u])&&c++;return s(c)&&e(a)}},"nth-of-type"(e,t,{adapter:r,equals:n}){let s=zC(t);return s===Qu.default.falseFunc?Qu.default.falseFunc:s===Qu.default.trueFunc?SV(e,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0;u--){let l=o[u];if(n(a,l))break;r.isTag(l)&&r.getName(l)===r.getName(a)&&c++}return s(c)&&e(a)}},root(e,t,{adapter:r}){return n=>{let s=r.getParent(n);return(s==null||!r.isTag(s))&&e(n)}},scope(e,t,r,n){let{equals:s}=r;return!n||n.length===0?YC.root(e,t,r):n.length===1?i=>s(n[0],i)&&e(i):i=>n.includes(i)&&e(i)},hover:$Te("isHovered"),visited:$Te("isVisited"),active:$Te("isActive")}});function qTe(e,t,r,n){if(r===null){if(e.length>n)throw new Error(`Pseudo-class :${t} requires an argument`)}else if(e.length===n)throw new Error(`Pseudo-class :${t} doesn't have any arguments`)}var Qk,GNt=ie(()=>{Qk={empty(e,{adapter:t}){return!t.getChildren(e).some(r=>t.isTag(r)||t.getText(r)!=="")},"first-child"(e,{adapter:t,equals:r}){if(t.prevElementSibling)return t.prevElementSibling(e)==null;let n=t.getSiblings(e).find(s=>t.isTag(s));return n!=null&&r(e,n)},"last-child"(e,{adapter:t,equals:r}){let n=t.getSiblings(e);for(let s=n.length-1;s>=0;s--){if(r(e,n[s]))return!0;if(t.isTag(n[s]))break}return!1},"first-of-type"(e,{adapter:t,equals:r}){let n=t.getSiblings(e),s=t.getName(e);for(let i=0;i=0;i--){let a=n[i];if(r(e,a))return!0;if(t.isTag(a)&&t.getName(a)===s)break}return!1},"only-of-type"(e,{adapter:t,equals:r}){let n=t.getName(e);return t.getSiblings(e).every(s=>r(e,s)||!t.isTag(s)||t.getName(s)!==n)},"only-child"(e,{adapter:t,equals:r}){return t.getSiblings(e).every(n=>r(e,n)||!t.isTag(n))}}});var TV,zNt=ie(()=>{TV={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is( + :is(button, input, select, textarea, optgroup, option)[disabled], + optgroup[disabled] > option, + fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *) + )`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"}});function KTe(e,t){return e===Yd.default.falseFunc?Yd.default.falseFunc:r=>t.isTag(r)&&e(r)}function GTe(e,t){let r=t.getSiblings(e);if(r.length<=1)return[];let n=r.indexOf(e);return n<0||n===r.length-1?[]:r.slice(n+1).filter(t.isTag)}function VTe(e){return{xmlMode:!!e.xmlMode,lowerCaseAttributeNames:!!e.lowerCaseAttributeNames,lowerCaseTags:!!e.lowerCaseTags,quirksMode:!!e.quirksMode,cacheResults:!!e.cacheResults,pseudos:e.pseudos,adapter:e.adapter,equals:e.equals}}var Yd,jTe,HTe,bV,IV=ie(()=>{Yd=Ne(EE(),1);UTe();jTe={};HTe=(e,t,r,n,s)=>{let i=s(t,VTe(r),n);return i===Yd.default.trueFunc?e:i===Yd.default.falseFunc?Yd.default.falseFunc:a=>i(a)&&e(a)},bV={is:HTe,matches:HTe,where:HTe,not(e,t,r,n,s){let i=s(t,VTe(r),n);return i===Yd.default.falseFunc?e:i===Yd.default.trueFunc?Yd.default.falseFunc:a=>!i(a)&&e(a)},has(e,t,r,n,s){let{adapter:i}=r,a=VTe(r);a.relativeSelector=!0;let o=t.some(l=>l.some(zk))?[jTe]:void 0,c=s(t,a,o);if(c===Yd.default.falseFunc)return Yd.default.falseFunc;let u=KTe(c,i);if(o&&c!==Yd.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!e(d))return!1;o[0]=d;let f=i.getChildren(d),h=l?[...f,...GTe(d,i)]:f;return i.existsOne(u,h)}}return l=>e(l)&&i.existsOne(u,i.getChildren(l))}}});function QNt(e,t,r,n,s){var i;let{name:a,data:o}=t;if(Array.isArray(o)){if(!(a in bV))throw new Error(`Unknown pseudo-class :${a}(${o})`);return bV[a](e,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:TV[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,YNt.parse)(u);return bV.is(e,l,r,n,s)}if(typeof c=="function")return qTe(c,a,o,1),l=>c(l,o)&&e(l);if(a in YC)return YC[a](e,o,r,n);if(a in Qk){let l=Qk[a];return qTe(l,a,o,2),d=>l(d,r,o)&&e(d)}throw new Error(`Unknown pseudo-class :${a}`)}var YNt,zTe=ie(()=>{YNt=Ne(GC(),1);KNt();GNt();zNt();IV()});function YTe(e,t){let r=t.getParent(e);return r&&t.isTag(r)?r:null}function WNt(e,t,r,n,s){let{adapter:i,equals:a}=r;switch(t.type){case Qd.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case Qd.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case Qd.SelectorType.Attribute:{if(t.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(t.name=t.name.toLowerCase()),BNt[t.action](e,t,r)}case Qd.SelectorType.Pseudo:return QNt(e,t,r,n,s);case Qd.SelectorType.Tag:{if(t.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=t;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&e(u)}}case Qd.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=YTe(l,i);)if(e(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=YTe(l,i);)if(!o.has(l)){if(i.isTag(l)&&e(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(e(u))return!0;while(u=YTe(u,i));return!1};case Qd.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&e(u))};case Qd.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&e(u)};case Qd.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;l{UNt();zTe();Qd=Ne(GC(),1)});function JNt(e,t,r){let n=RV(e,t,r);return KTe(n,t.adapter)}function RV(e,t,r){let n=typeof e=="string"?(0,d0.parse)(e):e;return CV(n,t,r)}function ZNt(e){return e.type===d0.SelectorType.Pseudo&&(e.name==="scope"||Array.isArray(e.data)&&e.data.some(t=>t.some(ZNt)))}function GZr(e,{adapter:t},r){let n=!!r?.every(s=>{let i=t.isTag(s)&&t.getParent(s);return s===jTe||i&&t.isTag(i)});for(let s of e){if(!(s.length>0&&zk(s[0])&&s[0].type!==d0.SelectorType.Descendant))if(n&&!s.some(ZNt))s.unshift(VZr);else continue;s.unshift(KZr)}}function CV(e,t,r){var n;e.forEach(BTe),r=(n=t.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(t.relativeSelector!==!1)GZr(e,t,i);else if(e.some(c=>c.length>0&&zk(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=e.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==d0.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===d0.SelectorType.Descendant?c[1]=jZr:(l.type===d0.SelectorType.Adjacent||l.type===d0.SelectorType.Sibling)&&(a=!0))}return zZr(c,t,i)}).reduce(YZr,Og.default.falseFunc);return o.shouldTestNextSiblings=a,o}function zZr(e,t,r){var n;return e.reduce((s,i)=>s===Og.default.falseFunc?Og.default.falseFunc:WNt(s,i,t,r,CV),(n=t.rootFunc)!==null&&n!==void 0?n:Og.default.trueFunc)}function YZr(e,t){return t===Og.default.falseFunc||e===Og.default.trueFunc?e:e===Og.default.falseFunc||t===Og.default.trueFunc?t:function(n){return e(n)||t(n)}}var d0,Og,VZr,jZr,KZr,eOt=ie(()=>{d0=Ne(GC(),1),Og=Ne(EE(),1);UTe();XNt();IV();VZr={type:d0.SelectorType.Descendant},jZr={type:"_flexibleDescendant"},KZr={type:d0.SelectorType.Pseudo,name:"scope",data:null}});function rOt(e){var t,r,n,s;let i=e??QZr;return(t=i.adapter)!==null&&t!==void 0||(i.adapter=gE),(r=i.equals)!==null&&r!==void 0||(i.equals=(s=(n=i.adapter)===null||n===void 0?void 0:n.equals)!==null&&s!==void 0?s:tOt),i}function WTe(e){return function(r,n,s){let i=rOt(n);return e(r,i,s)}}function nOt(e){return function(r,n,s){let i=rOt(s);typeof r!="function"&&(r=RV(r,i,n));let a=wV(n,i.adapter,r.shouldTestNextSiblings);return e(r,a,i)}}function wV(e,t,r=!1){return r&&(e=WZr(e,t)),Array.isArray(e)?t.removeSubsets(e):t.getChildren(e)}function WZr(e,t){let r=Array.isArray(e)?e.slice(0):[e],n=r.length;for(let s=0;s{l0();QTe=Ne(EE(),1);eOt();IV();zTe();tOt=(e,t)=>e===t,QZr={adapter:gE,equals:tOt};ivs=WTe(JNt),avs=WTe(RV),xV=WTe(CV);ovs=nOt((e,t,r)=>e===QTe.default.falseFunc||!t||t.length===0?[]:r.adapter.findAll(e,t)),cvs=nOt((e,t,r)=>e===QTe.default.falseFunc||!t||t.length===0?null:r.adapter.findOne(e,t))});function QC(e){return e.type!=="pseudo"?!1:XZr.has(e.name)?!0:e.name==="not"&&Array.isArray(e.data)?e.data.some(t=>t.some(QC)):!1}function sOt(e,t,r){let n=t!=null?parseInt(t,10):NaN;switch(e){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}var XZr,JTe=ie(()=>{XZr=new Set(["first","last","eq","gt","nth","lt","even","odd"])});function iOt(e){for(;e.parent;)e=e.parent;return e}function NV(e){let t=[],r=[];for(let n of e)n.some(QC)?t.push(n):r.push(n);return[r,t]}var aOt=ie(()=>{JTe()});function tbe(e,t,r={}){return rbe([e],t,r)}function rbe(e,t,r={}){if(typeof t=="function")return e.some(t);let[n,s]=NV((0,Wu.parse)(t));return n.length>0&&e.some(xV(n,r))||s.some(i=>cOt(i,e,r).length>0)}function een(e,t,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(e){case"first":case"lt":return t;case"last":return t.length>0?[t[t.length-1]]:t;case"nth":case"eq":return isFinite(s)&&Math.abs(s)a%2===0);case"odd":return t.filter((i,a)=>a%2===1);case"not":{let i=new Set(oOt(r,t,n));return t.filter(a=>!i.has(a))}}}function nbe(e,t,r={}){return oOt((0,Wu.parse)(e),t,r)}function oOt(e,t,r){if(t.length===0)return[];let[n,s]=NV(e),i;if(n.length){let a=ebe(t,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;aIt(l)&&!i.has(l)):t).length===0)break;let u=cOt(o,t,r);if(u.length)if(i)u.forEach(l=>i.add(l));else{if(a===s.length-1)return u;i=new Set(u)}}return typeof i<"u"?i.size===t.length?t:t.filter(a=>i.has(a)):[]}function cOt(e,t,r){var n;if(e.some(Wu.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:iOt(t[0]),i={...r,context:t,relativeSelector:!1};return e.push(ZZr),PV(s,e,i,!0,t.length)}return PV(t,e,r,!1,t.length)}function uOt(e,t,r={},n=1/0){if(typeof e=="function")return lOt(t,e);let[s,i]=NV((0,Wu.parse)(e)),a=i.map(o=>PV(t,o,r,!0,n));return s.length&&a.push(ZTe(t,s,r,n)),a.length===0?[]:a.length===1?a[0]:pE(a.reduce((o,c)=>[...o,...c]))}function PV(e,t,r,n,s){let i=t.findIndex(QC),a=t.slice(0,i),o=t[i],c=t.length-1===i?s:1/0,u=sOt(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(e)?FC(e).filter(It):a.length===0?(Array.isArray(e)?e:[e]).filter(It):n||a.some(Wu.isTraversal)?ZTe(e,[a],r,u):ebe(e,[a],r)).slice(0,u),f=een(o.name,d,o.data,r);if(f.length===0||t.length===i+1)return f;let h=t.slice(i+1),p=h.some(Wu.isTraversal);if(p){if((0,Wu.isTraversal)(h[0])){let{type:m}=h[0];(m===Wu.SelectorType.Sibling||m===Wu.SelectorType.Adjacent)&&(f=wV(f,gE,!0)),h.unshift(JZr)}r={...r,relativeSelector:!1,rootFunc:m=>f.includes(m)}}else r.rootFunc&&r.rootFunc!==OV.trueFunc&&(r={...r,rootFunc:OV.trueFunc});return h.some(QC)?PV(f,h,r,!1,s):p?ZTe(f,[h],r,s):ebe(f,[h],r)}function ZTe(e,t,r,n){let s=xV(t,r,e);return lOt(e,s,n)}function lOt(e,t,r=1/0){let n=wV(e,gE,t.shouldTestNextSiblings);return hV(s=>It(s)&&t(s),n,!0,r)}function ebe(e,t,r){let n=(Array.isArray(e)?e:[e]).filter(It);if(n.length===0)return n;let s=xV(t,r);return s===OV.trueFunc?n:n.filter(s)}var Wu,OV,JZr,ZZr,dOt=ie(()=>{Wu=Ne(GC(),1);XTe();l0();OV=Ne(EE(),1);aOt();JTe();XTe();JZr={type:Wu.SelectorType.Universal,namespace:null},ZZr={type:Wu.SelectorType.Pseudo,name:"scope",data:null}});var cbe={};kt(cbe,{add:()=>Oen,addBack:()=>Den,children:()=>men,closest:()=>oen,contents:()=>gen,each:()=>_en,end:()=>Nen,eq:()=>Ien,filter:()=>Een,filterArray:()=>obe,find:()=>nen,first:()=>Ten,get:()=>Ren,has:()=>Sen,index:()=>xen,is:()=>yen,last:()=>ben,map:()=>Aen,next:()=>cen,nextAll:()=>uen,nextUntil:()=>len,not:()=>ven,parent:()=>sen,parents:()=>ien,parentsUntil:()=>aen,prev:()=>den,prevAll:()=>fen,prevUntil:()=>hen,siblings:()=>pen,slice:()=>wen,toArray:()=>Cen});function nen(e){var t;if(!e)return this._make([]);let r=this.toArray();if(typeof e!="string"){let i=Fl(e)?e.toArray():[e];return this._make(i.filter(a=>r.some(o=>OTe(o,a))))}let n=ren.test(e)?r:this.children().toArray(),s={context:r,root:(t=this._root)===null||t===void 0?void 0:t[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(uOt(e,n,s))}function sbe(e){return function(t,...r){return function(n){var s;let i=e(t,this);return n&&(i=obe(i,n,this.options.xmlMode,(s=this._root)===null||s===void 0?void 0:s[0])),this._make(this.length>1&&i.length>1?r.reduce((a,o)=>o(a),i):i)}}}function abe(e,...t){let r=null,n=sbe((s,i)=>{let a=[];return Os(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(e,...t);return function(s,i){r=typeof s=="string"?o=>tbe(o,s,this.options):s?Xk(s):null;let a=n.call(this,i);return r=null,a}}function WC(e){return Array.from(new Set(e))}function oen(e){var t;let r=[];if(!e)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(t=this._root)===null||t===void 0?void 0:t[0]},s=typeof e=="string"?i=>tbe(i,e,n):Xk(e);return Os(this,i=>{for(;i&&It(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}function gen(){let e=this.toArray().reduce((t,r)=>ms(r)?t.concat(r.children):t,[]);return this._make(e)}function _en(e){let t=0,r=this.length;for(;te.call(t,r,t):Fl(e)?t=>Array.prototype.includes.call(e,t):function(t){return e===t}}function Een(e){var t;return this._make(obe(this.toArray(),e,this.options.xmlMode,(t=this._root)===null||t===void 0?void 0:t[0]))}function obe(e,t,r,n){return typeof t=="string"?nbe(t,e,{xmlMode:r,root:n}):e.filter(Xk(t))}function yen(e){let t=this.toArray();return typeof e=="string"?rbe(t.filter(It),e,this.options):e?t.some(Xk(e)):!1}function ven(e){let t=this.toArray();if(typeof e=="string"){let r=new Set(nbe(e,t,this.options));t=t.filter(n=>!r.has(n))}else{let r=Xk(e);t=t.filter((n,s)=>!r(n,s))}return this._make(t)}function Sen(e){return this.filter(typeof e=="string"?`:has(${e})`:(t,r)=>this._make(r).find(e).length>0)}function Ten(){return this.length>1?this._make(this[0]):this}function ben(){return this.length>0?this._make(this[this.length-1]):this}function Ien(e){var t;return e=+e,e===0&&this.length<=1?this:(e<0&&(e=this.length+e),this._make((t=this[e])!==null&&t!==void 0?t:[]))}function Ren(e){return e==null?this.toArray():this[e<0?this.length+e:e]}function Cen(){return Array.prototype.slice.call(this)}function xen(e){let t,r;return e==null?(t=this.parent().children(),r=this[0]):typeof e=="string"?(t=this._make(e),r=this[0]):(t=this,r=Fl(e)?e[0]:e),Array.prototype.indexOf.call(t,r)}function wen(e,t){return this._make(Array.prototype.slice.call(this,e,t))}function Nen(){var e;return(e=this.prevObject)!==null&&e!==void 0?e:this._make([])}function Oen(e,t){let r=this._make(e,t),n=pE([...this.get(),...r.get()]);return this._make(n)}function Den(e){return this.prevObject?this.add(e?this.prevObject.filter(e):this.prevObject):this}var ren,Wk,ibe,sen,ien,aen,cen,uen,len,den,fen,hen,pen,men,fOt=ie(()=>{rc();dOt();bT();ST();l0();ren=/^\s*[~+]/;Wk=sbe((e,t)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;ne&&!u0(e)?e:null,WC),ien=Wk(e=>{let t=[];for(;e.parent&&!u0(e.parent);)t.push(e.parent),e=e.parent;return t},pE,e=>e.reverse()),aen=abe(({parent:e})=>e&&!u0(e)?e:null,pE,e=>e.reverse());cen=ibe(e=>dV(e)),uen=Wk(e=>{let t=[];for(;e.next;)e=e.next,It(e)&&t.push(e);return t},WC),len=abe(e=>dV(e),WC),den=ibe(e=>fV(e)),fen=Wk(e=>{let t=[];for(;e.prev;)e=e.prev,It(e)&&t.push(e);return t},WC),hen=abe(e=>fV(e),WC),pen=Wk(e=>RTe(e).filter(t=>It(t)&&t!==e),pE),men=Wk(e=>FC(e).filter(It),WC)});function hOt(e){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return e(r,n,s,i);let a=r;if(!Array.isArray(a)&&u0(a))return a;let o=new Ul([]);return yE(a,o),o}}function yE(e,t){let r=Array.isArray(e)?e:[e];t?t.children=r:t=null;for(let n=0;n{l0();rc()});var lbe={};kt(lbe,{_makeDomArray:()=>Pen,after:()=>Hen,append:()=>ken,appendTo:()=>Len,before:()=>jen,clone:()=>Jen,empty:()=>Yen,html:()=>Qen,insertAfter:()=>Ven,insertBefore:()=>Ken,prepend:()=>Ben,prependTo:()=>Men,remove:()=>Gen,replaceWith:()=>zen,text:()=>Xen,toString:()=>Wen,unwrap:()=>$en,wrap:()=>Uen,wrapAll:()=>qen,wrapInner:()=>Fen});function Pen(e,t){return e==null?[]:Fl(e)?t?_V(e.get()):e.get():Array.isArray(e)?e.reduce((r,n)=>r.concat(this._makeDomArray(n,t)),[]):typeof e=="string"?this._parse(e,this.options,!1,null).children:t?_V([e]):[e]}function pOt(e){return function(...t){let r=this.length-1;return Os(this,(n,s)=>{if(!ms(n))return;let i=typeof t[0]=="function"?t[0].call(n,s,this._render(n.children)):t,a=this._makeDomArray(i,s=e.length?null:e[t+r];for(let l=0;l-1&&(f.children.splice(p,1),s===f&&t>p&&o[0]--)}d.parent=s,d.prev&&(d.prev.next=(i=d.next)!==null&&i!==void 0?i:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?c:n[l-1],d.next=l===n.length-1?u:n[l+1]}return c&&(c.next=n[0]),u&&(u.prev=n[n.length-1]),e.splice(...o)}function Len(e){return(Fl(e)?e:this._make(e)).append(this),this}function Men(e){return(Fl(e)?e:this._make(e)).prepend(this),this}function mOt(e){return function(t){let r=this.length-1,n=this.parents().last();for(let s=0;s{this._make(r).replaceWith(r.children)}),this}function qen(e){let t=this[0];if(t){let r=this._make(typeof e=="function"?e.call(t,0,t):e).insertBefore(t),n;for(let i=0;i{let{parent:s}=r;if(!ms(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof e[0]=="function"?e[0].call(r,n,this._render(r.children)):e,c=this._makeDomArray(o,n{let n=this.clone().toArray(),{parent:s}=r;if(!s)return;let i=s.children,a=i.indexOf(r);a<0||(vE(i,a+1,0,n,s),t.push(...n))}),this._make(t)}function jen(...e){let t=this.length-1;return Os(this,(r,n)=>{let{parent:s}=r;if(!ms(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof e[0]=="function"?e[0].call(r,n,this._render(r.children)):e,c=this._makeDomArray(o,n{let s=this.clone().toArray(),{parent:i}=n;if(!i)return;let a=i.children,o=a.indexOf(n);o<0||(vE(a,o,0,s,i),r.push(...s))}),this._make(r)}function Gen(e){let t=e?this.filter(e):this;return Os(t,r=>{wg(r),r.prev=r.next=r.parent=null}),this}function zen(e){return Os(this,(t,r)=>{let{parent:n}=t;if(!n)return;let s=n.children,i=typeof e=="function"?e.call(t,r,t):e,a=this._makeDomArray(i);yE(a,null);let o=s.indexOf(t);vE(s,o,1,a,n),a.includes(t)||(t.parent=t.prev=t.next=null)})}function Yen(){return Os(this,e=>{ms(e)&&(e.children.forEach(t=>{t.next=t.prev=t.parent=null}),e.children.length=0)})}function Qen(e){if(e===void 0){let t=this[0];return!t||!ms(t)?null:this._render(t.children)}return Os(this,t=>{if(!ms(t))return;t.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=Fl(e)?e.toArray():this._parse(`${e}`,this.options,!1,t).children;yE(r,t)})}function Wen(){return this._render(this)}function Xen(e){return e===void 0?_E(this):typeof e=="function"?Os(this,(t,r)=>this._make(t).text(e.call(t,r,_E([t])))):Os(this,t=>{if(!ms(t))return;t.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new Zh(`${e}`);yE(r,t)})}function Jen(){return this._make(_V(this.get()))}var ken,Ben,Uen,Fen,gOt=ie(()=>{rc();ube();ST();bT();l0();ken=pOt((e,t,r)=>{vE(t,t.length,0,e,r)}),Ben=pOt((e,t,r)=>{vE(t,0,0,e,r)});Uen=mOt((e,t,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=s.indexOf(e);yE([e],t),vE(s,i,0,r,n)}),Fen=mOt((e,t,r)=>{ms(e)&&(yE(e.children,t),yE(r,e))})});var dbe={};kt(dbe,{css:()=>Zen});function Zen(e,t){if(e!=null&&t!=null||typeof e=="object"&&!Array.isArray(e))return Os(this,(r,n)=>{It(r)&&_Ot(r,e,t,n)});if(this.length!==0)return AOt(this[0],e)}function _Ot(e,t,r,n){if(typeof t=="string"){let s=AOt(e),i=typeof r=="function"?r.call(e,n,s[t]):r;i===""?delete s[t]:i!=null&&(s[t]=i),e.attribs.style=etn(s)}else typeof t=="object"&&Object.keys(t).forEach((s,i)=>{_Ot(e,s,t[s],i)})}function AOt(e,t){if(!e||!It(e))return;let r=ttn(e.attribs.style);if(typeof t=="string")return r[t];if(Array.isArray(t)){let n={};return t.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function etn(e){return Object.keys(e).reduce((t,r)=>`${t}${t?" ":""}${r}: ${e[r]};`,"")}function ttn(e){if(e=(e||"").trim(),!e)return{};let t={},r;for(let n of e.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(t[r]+=`;${i}`)}else r=n.slice(0,s).trim(),t[r]=n.slice(s+1).trim()}return t}var EOt=ie(()=>{bT()});var fbe={};kt(fbe,{serialize:()=>ntn,serializeArray:()=>stn});function ntn(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(rtn,"+")}function stn(){return this.map((e,t)=>{let r=this._make(t);return It(t)&&t.name==="form"?r.find(yOt).toArray():r.filter(yOt).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((e,t)=>{var r;let n=this._make(t),s=n.attr("name"),i=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(i)?i.map(a=>({name:s,value:a.replace(vOt,`\r +`)})):{name:s,value:i.replace(vOt,`\r +`)}}).toArray()}var yOt,rtn,vOt,SOt=ie(()=>{bT();yOt="input,select,textarea,keygen",rtn=/%20/g,vOt=/\r?\n/g});var SE,TOt=ie(()=>{ENt();fOt();gOt();EOt();SOt();SE=class{constructor(t,r,n){if(this.length=0,this.options=n,this._root=r,t){for(let s=0;s{dTe();ST();TOt();bT()});function LV(e){return e>=55296&&e<=57343}function ROt(e){return e>=56320&&e<=57343}function COt(e,t){return(e-55296)*1024+9216+t}function MV(e){return e!==32&&e!==10&&e!==13&&e!==9&&e!==12&&e>=1&&e<=31||e>=127&&e<=159}function kV(e){return e>=64976&&e<=65007||atn.has(e)}var atn,Fs,ue,Wc,BV=ie(()=>{atn=new Set([65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111]),Fs="\uFFFD";(function(e){e[e.EOF=-1]="EOF",e[e.NULL=0]="NULL",e[e.TABULATION=9]="TABULATION",e[e.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",e[e.LINE_FEED=10]="LINE_FEED",e[e.FORM_FEED=12]="FORM_FEED",e[e.SPACE=32]="SPACE",e[e.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",e[e.QUOTATION_MARK=34]="QUOTATION_MARK",e[e.AMPERSAND=38]="AMPERSAND",e[e.APOSTROPHE=39]="APOSTROPHE",e[e.HYPHEN_MINUS=45]="HYPHEN_MINUS",e[e.SOLIDUS=47]="SOLIDUS",e[e.DIGIT_0=48]="DIGIT_0",e[e.DIGIT_9=57]="DIGIT_9",e[e.SEMICOLON=59]="SEMICOLON",e[e.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",e[e.EQUALS_SIGN=61]="EQUALS_SIGN",e[e.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",e[e.QUESTION_MARK=63]="QUESTION_MARK",e[e.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",e[e.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",e[e.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",e[e.GRAVE_ACCENT=96]="GRAVE_ACCENT",e[e.LATIN_SMALL_A=97]="LATIN_SMALL_A",e[e.LATIN_SMALL_Z=122]="LATIN_SMALL_Z"})(ue||(ue={}));Wc={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"}});var Pe,Jk=ie(()=>{(function(e){e.controlCharacterInInputStream="control-character-in-input-stream",e.noncharacterInInputStream="noncharacter-in-input-stream",e.surrogateInInputStream="surrogate-in-input-stream",e.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",e.endTagWithAttributes="end-tag-with-attributes",e.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",e.unexpectedSolidusInTag="unexpected-solidus-in-tag",e.unexpectedNullCharacter="unexpected-null-character",e.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",e.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",e.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",e.missingEndTagName="missing-end-tag-name",e.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",e.unknownNamedCharacterReference="unknown-named-character-reference",e.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",e.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",e.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",e.eofBeforeTagName="eof-before-tag-name",e.eofInTag="eof-in-tag",e.missingAttributeValue="missing-attribute-value",e.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",e.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",e.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",e.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",e.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",e.missingDoctypePublicIdentifier="missing-doctype-public-identifier",e.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",e.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",e.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",e.cdataInHtmlContent="cdata-in-html-content",e.incorrectlyOpenedComment="incorrectly-opened-comment",e.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",e.eofInDoctype="eof-in-doctype",e.nestedComment="nested-comment",e.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",e.eofInComment="eof-in-comment",e.incorrectlyClosedComment="incorrectly-closed-comment",e.eofInCdata="eof-in-cdata",e.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",e.nullCharacterReference="null-character-reference",e.surrogateCharacterReference="surrogate-character-reference",e.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",e.controlCharacterReference="control-character-reference",e.noncharacterCharacterReference="noncharacter-character-reference",e.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",e.missingDoctypeName="missing-doctype-name",e.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",e.duplicateAttribute="duplicate-attribute",e.nonConformingDoctype="non-conforming-doctype",e.missingDoctype="missing-doctype",e.misplacedDoctype="misplaced-doctype",e.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",e.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",e.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",e.openElementsLeftAfterEof="open-elements-left-after-eof",e.abandonedHeadElementChild="abandoned-head-element-child",e.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",e.nestedNoscriptInHead="nested-noscript-in-head",e.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(Pe||(Pe={}))});var ctn,UV,xOt=ie(()=>{BV();Jk();ctn=65536,UV=class{constructor(t){this.handler=t,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=ctn,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(t,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:t,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(t){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(t,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(t){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(ROt(r))return this.pos++,this._addGap(),COt(t,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,ue.EOF;return this._err(Pe.surrogateInInputStream),t}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(t,r){this.html.length>0?this.html+=t:this.html=t,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(t){this.html=this.html.substring(0,this.pos+1)+t+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(t,r){if(this.pos+t.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(t,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,ue.EOF;let n=this.html.charCodeAt(r);return n===ue.CARRIAGE_RETURN?ue.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,ue.EOF;let t=this.html.charCodeAt(this.pos);return t===ue.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,ue.LINE_FEED):t===ue.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,LV(t)&&(t=this._processSurrogate(t)),this.handler.onParseError===null||t>31&&t<127||t===ue.LINE_FEED||t===ue.CARRIAGE_RETURN||t>159&&t<64976||this._checkForProblematicCharacters(t),t)}_checkForProblematicCharacters(t){MV(t)?this._err(Pe.controlCharacterInInputStream):kV(t)&&this._err(Pe.noncharacterInInputStream)}retreat(t){for(this.pos-=t;this.pos=0;r--)if(e.attrs[r].name===t)return e.attrs[r].value;return null}var pn,$V=ie(()=>{(function(e){e[e.CHARACTER=0]="CHARACTER",e[e.NULL_CHARACTER=1]="NULL_CHARACTER",e[e.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",e[e.START_TAG=3]="START_TAG",e[e.END_TAG=4]="END_TAG",e[e.COMMENT=5]="COMMENT",e[e.DOCTYPE=6]="DOCTYPE",e[e.EOF=7]="EOF",e[e.HIBERNATION=8]="HIBERNATION"})(pn||(pn={}))});var qV,hbe=ie(()=>{qV=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(e=>e.charCodeAt(0)))});var pbe=ie(()=>{});function gbe(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=ltn.get(e))!==null&&t!==void 0?t:e}var mbe,ltn,wOt,_be=ie(()=>{ltn=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),wOt=(mbe=String.fromCodePoint)!==null&&mbe!==void 0?mbe:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t}});function Abe(e){return e>=Wa.ZERO&&e<=Wa.NINE}function htn(e){return e>=Wa.UPPER_A&&e<=Wa.UPPER_F||e>=Wa.LOWER_A&&e<=Wa.LOWER_F}function ptn(e){return e>=Wa.UPPER_A&&e<=Wa.UPPER_Z||e>=Wa.LOWER_A&&e<=Wa.LOWER_Z||Abe(e)}function mtn(e){return e===Wa.EQUALS||ptn(e)}function gtn(e,t,r,n){let s=(t&TE.BRANCH_LENGTH)>>7,i=t&TE.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:e[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=e[c];if(un)o=c-1;else return e[c+s]}return-1}var Wa,ftn,TE,Qa,tp,HV,NOt=ie(()=>{hbe();pbe();_be();hbe();pbe();_be();(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(Wa||(Wa={}));ftn=32;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(TE||(TE={}));(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(Qa||(Qa={}));(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(tp||(tp={}));HV=class{constructor(t,r,n){this.decodeTree=t,this.emitCodePoint=r,this.errors=n,this.state=Qa.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=tp.Strict}startEntity(t){this.decodeMode=t,this.state=Qa.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,r){switch(this.state){case Qa.EntityStart:return t.charCodeAt(r)===Wa.NUM?(this.state=Qa.NumericStart,this.consumed+=1,this.stateNumericStart(t,r+1)):(this.state=Qa.NamedEntity,this.stateNamedEntity(t,r));case Qa.NumericStart:return this.stateNumericStart(t,r);case Qa.NumericDecimal:return this.stateNumericDecimal(t,r);case Qa.NumericHex:return this.stateNumericHex(t,r);case Qa.NamedEntity:return this.stateNamedEntity(t,r)}}stateNumericStart(t,r){return r>=t.length?-1:(t.charCodeAt(r)|ftn)===Wa.LOWER_X?(this.state=Qa.NumericHex,this.consumed+=1,this.stateNumericHex(t,r+1)):(this.state=Qa.NumericDecimal,this.stateNumericDecimal(t,r))}addToNumericResult(t,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(t.substr(r,i),s),this.consumed+=i}}stateNumericHex(t,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Wa.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==tp.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;let{result:r,decodeTree:n}=this,s=(n[r]&TE.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[t]&~TE.VALUE_LENGTH:s[t+1],n),r===3&&this.emitCodePoint(s[t+2],n),n}end(){var t;switch(this.state){case Qa.NamedEntity:return this.result!==0&&(this.decodeMode!==tp.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Qa.NumericDecimal:return this.emitNumericEntity(0,2);case Qa.NumericHex:return this.emitNumericEntity(0,3);case Qa.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Qa.EntityStart:return 0}}}});var VV={};kt(VV,{ATTRS:()=>rp,DOCUMENT_MODE:()=>nc,NS:()=>Ve,NUMBERED_HEADERS:()=>XC,SPECIAL_ELEMENTS:()=>Ebe,TAG_ID:()=>N,TAG_NAMES:()=>Ce,getTagID:()=>bE,hasUnescapedText:()=>ybe});function bE(e){var t;return(t=_tn.get(e))!==null&&t!==void 0?t:N.UNKNOWN}function ybe(e,t){return Atn.has(e)||t&&e===Ce.NOSCRIPT}var Ve,rp,nc,Ce,N,_tn,Je,Ebe,XC,Atn,Dg=ie(()=>{(function(e){e.HTML="http://www.w3.org/1999/xhtml",e.MATHML="http://www.w3.org/1998/Math/MathML",e.SVG="http://www.w3.org/2000/svg",e.XLINK="http://www.w3.org/1999/xlink",e.XML="http://www.w3.org/XML/1998/namespace",e.XMLNS="http://www.w3.org/2000/xmlns/"})(Ve||(Ve={}));(function(e){e.TYPE="type",e.ACTION="action",e.ENCODING="encoding",e.PROMPT="prompt",e.NAME="name",e.COLOR="color",e.FACE="face",e.SIZE="size"})(rp||(rp={}));(function(e){e.NO_QUIRKS="no-quirks",e.QUIRKS="quirks",e.LIMITED_QUIRKS="limited-quirks"})(nc||(nc={}));(function(e){e.A="a",e.ADDRESS="address",e.ANNOTATION_XML="annotation-xml",e.APPLET="applet",e.AREA="area",e.ARTICLE="article",e.ASIDE="aside",e.B="b",e.BASE="base",e.BASEFONT="basefont",e.BGSOUND="bgsound",e.BIG="big",e.BLOCKQUOTE="blockquote",e.BODY="body",e.BR="br",e.BUTTON="button",e.CAPTION="caption",e.CENTER="center",e.CODE="code",e.COL="col",e.COLGROUP="colgroup",e.DD="dd",e.DESC="desc",e.DETAILS="details",e.DIALOG="dialog",e.DIR="dir",e.DIV="div",e.DL="dl",e.DT="dt",e.EM="em",e.EMBED="embed",e.FIELDSET="fieldset",e.FIGCAPTION="figcaption",e.FIGURE="figure",e.FONT="font",e.FOOTER="footer",e.FOREIGN_OBJECT="foreignObject",e.FORM="form",e.FRAME="frame",e.FRAMESET="frameset",e.H1="h1",e.H2="h2",e.H3="h3",e.H4="h4",e.H5="h5",e.H6="h6",e.HEAD="head",e.HEADER="header",e.HGROUP="hgroup",e.HR="hr",e.HTML="html",e.I="i",e.IMG="img",e.IMAGE="image",e.INPUT="input",e.IFRAME="iframe",e.KEYGEN="keygen",e.LABEL="label",e.LI="li",e.LINK="link",e.LISTING="listing",e.MAIN="main",e.MALIGNMARK="malignmark",e.MARQUEE="marquee",e.MATH="math",e.MENU="menu",e.META="meta",e.MGLYPH="mglyph",e.MI="mi",e.MO="mo",e.MN="mn",e.MS="ms",e.MTEXT="mtext",e.NAV="nav",e.NOBR="nobr",e.NOFRAMES="noframes",e.NOEMBED="noembed",e.NOSCRIPT="noscript",e.OBJECT="object",e.OL="ol",e.OPTGROUP="optgroup",e.OPTION="option",e.P="p",e.PARAM="param",e.PLAINTEXT="plaintext",e.PRE="pre",e.RB="rb",e.RP="rp",e.RT="rt",e.RTC="rtc",e.RUBY="ruby",e.S="s",e.SCRIPT="script",e.SEARCH="search",e.SECTION="section",e.SELECT="select",e.SOURCE="source",e.SMALL="small",e.SPAN="span",e.STRIKE="strike",e.STRONG="strong",e.STYLE="style",e.SUB="sub",e.SUMMARY="summary",e.SUP="sup",e.TABLE="table",e.TBODY="tbody",e.TEMPLATE="template",e.TEXTAREA="textarea",e.TFOOT="tfoot",e.TD="td",e.TH="th",e.THEAD="thead",e.TITLE="title",e.TR="tr",e.TRACK="track",e.TT="tt",e.U="u",e.UL="ul",e.SVG="svg",e.VAR="var",e.WBR="wbr",e.XMP="xmp"})(Ce||(Ce={}));(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.A=1]="A",e[e.ADDRESS=2]="ADDRESS",e[e.ANNOTATION_XML=3]="ANNOTATION_XML",e[e.APPLET=4]="APPLET",e[e.AREA=5]="AREA",e[e.ARTICLE=6]="ARTICLE",e[e.ASIDE=7]="ASIDE",e[e.B=8]="B",e[e.BASE=9]="BASE",e[e.BASEFONT=10]="BASEFONT",e[e.BGSOUND=11]="BGSOUND",e[e.BIG=12]="BIG",e[e.BLOCKQUOTE=13]="BLOCKQUOTE",e[e.BODY=14]="BODY",e[e.BR=15]="BR",e[e.BUTTON=16]="BUTTON",e[e.CAPTION=17]="CAPTION",e[e.CENTER=18]="CENTER",e[e.CODE=19]="CODE",e[e.COL=20]="COL",e[e.COLGROUP=21]="COLGROUP",e[e.DD=22]="DD",e[e.DESC=23]="DESC",e[e.DETAILS=24]="DETAILS",e[e.DIALOG=25]="DIALOG",e[e.DIR=26]="DIR",e[e.DIV=27]="DIV",e[e.DL=28]="DL",e[e.DT=29]="DT",e[e.EM=30]="EM",e[e.EMBED=31]="EMBED",e[e.FIELDSET=32]="FIELDSET",e[e.FIGCAPTION=33]="FIGCAPTION",e[e.FIGURE=34]="FIGURE",e[e.FONT=35]="FONT",e[e.FOOTER=36]="FOOTER",e[e.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",e[e.FORM=38]="FORM",e[e.FRAME=39]="FRAME",e[e.FRAMESET=40]="FRAMESET",e[e.H1=41]="H1",e[e.H2=42]="H2",e[e.H3=43]="H3",e[e.H4=44]="H4",e[e.H5=45]="H5",e[e.H6=46]="H6",e[e.HEAD=47]="HEAD",e[e.HEADER=48]="HEADER",e[e.HGROUP=49]="HGROUP",e[e.HR=50]="HR",e[e.HTML=51]="HTML",e[e.I=52]="I",e[e.IMG=53]="IMG",e[e.IMAGE=54]="IMAGE",e[e.INPUT=55]="INPUT",e[e.IFRAME=56]="IFRAME",e[e.KEYGEN=57]="KEYGEN",e[e.LABEL=58]="LABEL",e[e.LI=59]="LI",e[e.LINK=60]="LINK",e[e.LISTING=61]="LISTING",e[e.MAIN=62]="MAIN",e[e.MALIGNMARK=63]="MALIGNMARK",e[e.MARQUEE=64]="MARQUEE",e[e.MATH=65]="MATH",e[e.MENU=66]="MENU",e[e.META=67]="META",e[e.MGLYPH=68]="MGLYPH",e[e.MI=69]="MI",e[e.MO=70]="MO",e[e.MN=71]="MN",e[e.MS=72]="MS",e[e.MTEXT=73]="MTEXT",e[e.NAV=74]="NAV",e[e.NOBR=75]="NOBR",e[e.NOFRAMES=76]="NOFRAMES",e[e.NOEMBED=77]="NOEMBED",e[e.NOSCRIPT=78]="NOSCRIPT",e[e.OBJECT=79]="OBJECT",e[e.OL=80]="OL",e[e.OPTGROUP=81]="OPTGROUP",e[e.OPTION=82]="OPTION",e[e.P=83]="P",e[e.PARAM=84]="PARAM",e[e.PLAINTEXT=85]="PLAINTEXT",e[e.PRE=86]="PRE",e[e.RB=87]="RB",e[e.RP=88]="RP",e[e.RT=89]="RT",e[e.RTC=90]="RTC",e[e.RUBY=91]="RUBY",e[e.S=92]="S",e[e.SCRIPT=93]="SCRIPT",e[e.SEARCH=94]="SEARCH",e[e.SECTION=95]="SECTION",e[e.SELECT=96]="SELECT",e[e.SOURCE=97]="SOURCE",e[e.SMALL=98]="SMALL",e[e.SPAN=99]="SPAN",e[e.STRIKE=100]="STRIKE",e[e.STRONG=101]="STRONG",e[e.STYLE=102]="STYLE",e[e.SUB=103]="SUB",e[e.SUMMARY=104]="SUMMARY",e[e.SUP=105]="SUP",e[e.TABLE=106]="TABLE",e[e.TBODY=107]="TBODY",e[e.TEMPLATE=108]="TEMPLATE",e[e.TEXTAREA=109]="TEXTAREA",e[e.TFOOT=110]="TFOOT",e[e.TD=111]="TD",e[e.TH=112]="TH",e[e.THEAD=113]="THEAD",e[e.TITLE=114]="TITLE",e[e.TR=115]="TR",e[e.TRACK=116]="TRACK",e[e.TT=117]="TT",e[e.U=118]="U",e[e.UL=119]="UL",e[e.SVG=120]="SVG",e[e.VAR=121]="VAR",e[e.WBR=122]="WBR",e[e.XMP=123]="XMP"})(N||(N={}));_tn=new Map([[Ce.A,N.A],[Ce.ADDRESS,N.ADDRESS],[Ce.ANNOTATION_XML,N.ANNOTATION_XML],[Ce.APPLET,N.APPLET],[Ce.AREA,N.AREA],[Ce.ARTICLE,N.ARTICLE],[Ce.ASIDE,N.ASIDE],[Ce.B,N.B],[Ce.BASE,N.BASE],[Ce.BASEFONT,N.BASEFONT],[Ce.BGSOUND,N.BGSOUND],[Ce.BIG,N.BIG],[Ce.BLOCKQUOTE,N.BLOCKQUOTE],[Ce.BODY,N.BODY],[Ce.BR,N.BR],[Ce.BUTTON,N.BUTTON],[Ce.CAPTION,N.CAPTION],[Ce.CENTER,N.CENTER],[Ce.CODE,N.CODE],[Ce.COL,N.COL],[Ce.COLGROUP,N.COLGROUP],[Ce.DD,N.DD],[Ce.DESC,N.DESC],[Ce.DETAILS,N.DETAILS],[Ce.DIALOG,N.DIALOG],[Ce.DIR,N.DIR],[Ce.DIV,N.DIV],[Ce.DL,N.DL],[Ce.DT,N.DT],[Ce.EM,N.EM],[Ce.EMBED,N.EMBED],[Ce.FIELDSET,N.FIELDSET],[Ce.FIGCAPTION,N.FIGCAPTION],[Ce.FIGURE,N.FIGURE],[Ce.FONT,N.FONT],[Ce.FOOTER,N.FOOTER],[Ce.FOREIGN_OBJECT,N.FOREIGN_OBJECT],[Ce.FORM,N.FORM],[Ce.FRAME,N.FRAME],[Ce.FRAMESET,N.FRAMESET],[Ce.H1,N.H1],[Ce.H2,N.H2],[Ce.H3,N.H3],[Ce.H4,N.H4],[Ce.H5,N.H5],[Ce.H6,N.H6],[Ce.HEAD,N.HEAD],[Ce.HEADER,N.HEADER],[Ce.HGROUP,N.HGROUP],[Ce.HR,N.HR],[Ce.HTML,N.HTML],[Ce.I,N.I],[Ce.IMG,N.IMG],[Ce.IMAGE,N.IMAGE],[Ce.INPUT,N.INPUT],[Ce.IFRAME,N.IFRAME],[Ce.KEYGEN,N.KEYGEN],[Ce.LABEL,N.LABEL],[Ce.LI,N.LI],[Ce.LINK,N.LINK],[Ce.LISTING,N.LISTING],[Ce.MAIN,N.MAIN],[Ce.MALIGNMARK,N.MALIGNMARK],[Ce.MARQUEE,N.MARQUEE],[Ce.MATH,N.MATH],[Ce.MENU,N.MENU],[Ce.META,N.META],[Ce.MGLYPH,N.MGLYPH],[Ce.MI,N.MI],[Ce.MO,N.MO],[Ce.MN,N.MN],[Ce.MS,N.MS],[Ce.MTEXT,N.MTEXT],[Ce.NAV,N.NAV],[Ce.NOBR,N.NOBR],[Ce.NOFRAMES,N.NOFRAMES],[Ce.NOEMBED,N.NOEMBED],[Ce.NOSCRIPT,N.NOSCRIPT],[Ce.OBJECT,N.OBJECT],[Ce.OL,N.OL],[Ce.OPTGROUP,N.OPTGROUP],[Ce.OPTION,N.OPTION],[Ce.P,N.P],[Ce.PARAM,N.PARAM],[Ce.PLAINTEXT,N.PLAINTEXT],[Ce.PRE,N.PRE],[Ce.RB,N.RB],[Ce.RP,N.RP],[Ce.RT,N.RT],[Ce.RTC,N.RTC],[Ce.RUBY,N.RUBY],[Ce.S,N.S],[Ce.SCRIPT,N.SCRIPT],[Ce.SEARCH,N.SEARCH],[Ce.SECTION,N.SECTION],[Ce.SELECT,N.SELECT],[Ce.SOURCE,N.SOURCE],[Ce.SMALL,N.SMALL],[Ce.SPAN,N.SPAN],[Ce.STRIKE,N.STRIKE],[Ce.STRONG,N.STRONG],[Ce.STYLE,N.STYLE],[Ce.SUB,N.SUB],[Ce.SUMMARY,N.SUMMARY],[Ce.SUP,N.SUP],[Ce.TABLE,N.TABLE],[Ce.TBODY,N.TBODY],[Ce.TEMPLATE,N.TEMPLATE],[Ce.TEXTAREA,N.TEXTAREA],[Ce.TFOOT,N.TFOOT],[Ce.TD,N.TD],[Ce.TH,N.TH],[Ce.THEAD,N.THEAD],[Ce.TITLE,N.TITLE],[Ce.TR,N.TR],[Ce.TRACK,N.TRACK],[Ce.TT,N.TT],[Ce.U,N.U],[Ce.UL,N.UL],[Ce.SVG,N.SVG],[Ce.VAR,N.VAR],[Ce.WBR,N.WBR],[Ce.XMP,N.XMP]]);Je=N,Ebe={[Ve.HTML]:new Set([Je.ADDRESS,Je.APPLET,Je.AREA,Je.ARTICLE,Je.ASIDE,Je.BASE,Je.BASEFONT,Je.BGSOUND,Je.BLOCKQUOTE,Je.BODY,Je.BR,Je.BUTTON,Je.CAPTION,Je.CENTER,Je.COL,Je.COLGROUP,Je.DD,Je.DETAILS,Je.DIR,Je.DIV,Je.DL,Je.DT,Je.EMBED,Je.FIELDSET,Je.FIGCAPTION,Je.FIGURE,Je.FOOTER,Je.FORM,Je.FRAME,Je.FRAMESET,Je.H1,Je.H2,Je.H3,Je.H4,Je.H5,Je.H6,Je.HEAD,Je.HEADER,Je.HGROUP,Je.HR,Je.HTML,Je.IFRAME,Je.IMG,Je.INPUT,Je.LI,Je.LINK,Je.LISTING,Je.MAIN,Je.MARQUEE,Je.MENU,Je.META,Je.NAV,Je.NOEMBED,Je.NOFRAMES,Je.NOSCRIPT,Je.OBJECT,Je.OL,Je.P,Je.PARAM,Je.PLAINTEXT,Je.PRE,Je.SCRIPT,Je.SECTION,Je.SELECT,Je.SOURCE,Je.STYLE,Je.SUMMARY,Je.TABLE,Je.TBODY,Je.TD,Je.TEMPLATE,Je.TEXTAREA,Je.TFOOT,Je.TH,Je.THEAD,Je.TITLE,Je.TR,Je.TRACK,Je.UL,Je.WBR,Je.XMP]),[Ve.MATHML]:new Set([Je.MI,Je.MO,Je.MN,Je.MS,Je.MTEXT,Je.ANNOTATION_XML]),[Ve.SVG]:new Set([Je.TITLE,Je.FOREIGN_OBJECT,Je.DESC]),[Ve.XLINK]:new Set,[Ve.XML]:new Set,[Ve.XMLNS]:new Set},XC=new Set([Je.H1,Je.H2,Je.H3,Je.H4,Je.H5,Je.H6]),Atn=new Set([Ce.STYLE,Ce.SCRIPT,Ce.XMP,Ce.IFRAME,Ce.NOEMBED,Ce.NOFRAMES,Ce.PLAINTEXT])});function Etn(e){return e>=ue.DIGIT_0&&e<=ue.DIGIT_9}function Zk(e){return e>=ue.LATIN_CAPITAL_A&&e<=ue.LATIN_CAPITAL_Z}function ytn(e){return e>=ue.LATIN_SMALL_A&&e<=ue.LATIN_SMALL_Z}function IE(e){return ytn(e)||Zk(e)}function OOt(e){return IE(e)||Etn(e)}function jV(e){return e+32}function POt(e){return e===ue.SPACE||e===ue.LINE_FEED||e===ue.TABULATION||e===ue.FORM_FEED}function DOt(e){return POt(e)||e===ue.SOLIDUS||e===ue.GREATER_THAN_SIGN}function vtn(e){return e===ue.NULL?Pe.nullCharacterReference:e>1114111?Pe.characterReferenceOutsideUnicodeRange:LV(e)?Pe.surrogateCharacterReference:kV(e)?Pe.noncharacterCharacterReference:MV(e)||e===ue.CARRIAGE_RETURN?Pe.controlCharacterReference:null}var he,sc,e4,vbe=ie(()=>{xOt();BV();$V();NOt();Jk();Dg();(function(e){e[e.DATA=0]="DATA",e[e.RCDATA=1]="RCDATA",e[e.RAWTEXT=2]="RAWTEXT",e[e.SCRIPT_DATA=3]="SCRIPT_DATA",e[e.PLAINTEXT=4]="PLAINTEXT",e[e.TAG_OPEN=5]="TAG_OPEN",e[e.END_TAG_OPEN=6]="END_TAG_OPEN",e[e.TAG_NAME=7]="TAG_NAME",e[e.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",e[e.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",e[e.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",e[e.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",e[e.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",e[e.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",e[e.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",e[e.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",e[e.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",e[e.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",e[e.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",e[e.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",e[e.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",e[e.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",e[e.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",e[e.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",e[e.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",e[e.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",e[e.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",e[e.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",e[e.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",e[e.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",e[e.BOGUS_COMMENT=40]="BOGUS_COMMENT",e[e.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",e[e.COMMENT_START=42]="COMMENT_START",e[e.COMMENT_START_DASH=43]="COMMENT_START_DASH",e[e.COMMENT=44]="COMMENT",e[e.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",e[e.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",e[e.COMMENT_END_DASH=49]="COMMENT_END_DASH",e[e.COMMENT_END=50]="COMMENT_END",e[e.COMMENT_END_BANG=51]="COMMENT_END_BANG",e[e.DOCTYPE=52]="DOCTYPE",e[e.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",e[e.DOCTYPE_NAME=54]="DOCTYPE_NAME",e[e.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",e[e.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",e[e.CDATA_SECTION=68]="CDATA_SECTION",e[e.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",e[e.CDATA_SECTION_END=70]="CDATA_SECTION_END",e[e.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",e[e.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(he||(he={}));sc={DATA:he.DATA,RCDATA:he.RCDATA,RAWTEXT:he.RAWTEXT,SCRIPT_DATA:he.SCRIPT_DATA,PLAINTEXT:he.PLAINTEXT,CDATA_SECTION:he.CDATA_SECTION};e4=class{constructor(t,r){this.options=t,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=he.DATA,this.returnState=he.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new UV(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new HV(qV,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(Pe.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(Pe.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=vtn(n);s&&this._err(s,1)}}:void 0)}_err(t,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(t,r))}getCurrentLocation(t){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-t,startOffset:this.preprocessor.offset-t,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let t=this._consume();this._ensureHibernation()||this._callState(t)}this.inLoop=!1}}pause(){this.paused=!0}resume(t){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||t?.())}write(t,r,n){this.active=!0,this.preprocessor.write(t,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(t){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(t),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(t){this.consumedAfterSnapshot+=t;for(let r=0;r0&&this._err(Pe.endTagWithAttributes),t.selfClosing&&this._err(Pe.endTagWithTrailingSolidus),this.handler.onEndTag(t)),this.preprocessor.dropParsedChunk()}emitCurrentComment(t){this.prepareToken(t),this.handler.onComment(t),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(t){this.prepareToken(t),this.handler.onDoctype(t),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(t){if(this.currentCharacterToken){switch(t&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=t.startLine,this.currentCharacterToken.location.endCol=t.startCol,this.currentCharacterToken.location.endOffset=t.startOffset),this.currentCharacterToken.type){case pn.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case pn.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case pn.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let t=this.getCurrentLocation(0);t&&(t.endLine=t.startLine,t.endCol=t.startCol,t.endOffset=t.startOffset),this._emitCurrentCharacterToken(t),this.handler.onEof({type:pn.EOF,location:t}),this.active=!1}_appendCharToCurrentCharacterToken(t,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===t){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(t,r)}_emitCodePoint(t){let r=POt(t)?pn.WHITESPACE_CHARACTER:t===ue.NULL?pn.NULL_CHARACTER:pn.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(t))}_emitChars(t){this._appendCharToCurrentCharacterToken(pn.CHARACTER,t)}_startCharacterReference(){this.returnState=this.state,this.state=he.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?tp.Attribute:tp.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===he.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===he.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===he.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(t){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(t):this._emitCodePoint(t)}_callState(t){switch(this.state){case he.DATA:{this._stateData(t);break}case he.RCDATA:{this._stateRcdata(t);break}case he.RAWTEXT:{this._stateRawtext(t);break}case he.SCRIPT_DATA:{this._stateScriptData(t);break}case he.PLAINTEXT:{this._statePlaintext(t);break}case he.TAG_OPEN:{this._stateTagOpen(t);break}case he.END_TAG_OPEN:{this._stateEndTagOpen(t);break}case he.TAG_NAME:{this._stateTagName(t);break}case he.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(t);break}case he.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(t);break}case he.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(t);break}case he.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(t);break}case he.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(t);break}case he.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(t);break}case he.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(t);break}case he.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(t);break}case he.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(t);break}case he.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(t);break}case he.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(t);break}case he.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(t);break}case he.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(t);break}case he.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(t);break}case he.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(t);break}case he.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(t);break}case he.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(t);break}case he.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(t);break}case he.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(t);break}case he.ATTRIBUTE_NAME:{this._stateAttributeName(t);break}case he.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(t);break}case he.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(t);break}case he.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(t);break}case he.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(t);break}case he.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(t);break}case he.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(t);break}case he.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(t);break}case he.BOGUS_COMMENT:{this._stateBogusComment(t);break}case he.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(t);break}case he.COMMENT_START:{this._stateCommentStart(t);break}case he.COMMENT_START_DASH:{this._stateCommentStartDash(t);break}case he.COMMENT:{this._stateComment(t);break}case he.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(t);break}case he.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(t);break}case he.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(t);break}case he.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(t);break}case he.COMMENT_END_DASH:{this._stateCommentEndDash(t);break}case he.COMMENT_END:{this._stateCommentEnd(t);break}case he.COMMENT_END_BANG:{this._stateCommentEndBang(t);break}case he.DOCTYPE:{this._stateDoctype(t);break}case he.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(t);break}case he.DOCTYPE_NAME:{this._stateDoctypeName(t);break}case he.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(t);break}case he.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(t);break}case he.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(t);break}case he.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(t);break}case he.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(t);break}case he.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(t);break}case he.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(t);break}case he.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(t);break}case he.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(t);break}case he.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(t);break}case he.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(t);break}case he.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(t);break}case he.BOGUS_DOCTYPE:{this._stateBogusDoctype(t);break}case he.CDATA_SECTION:{this._stateCdataSection(t);break}case he.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(t);break}case he.CDATA_SECTION_END:{this._stateCdataSectionEnd(t);break}case he.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case he.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(t);break}default:throw new Error("Unknown state")}}_stateData(t){switch(t){case ue.LESS_THAN_SIGN:{this.state=he.TAG_OPEN;break}case ue.AMPERSAND:{this._startCharacterReference();break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitCodePoint(t);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRcdata(t){switch(t){case ue.AMPERSAND:{this._startCharacterReference();break}case ue.LESS_THAN_SIGN:{this.state=he.RCDATA_LESS_THAN_SIGN;break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Fs);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRawtext(t){switch(t){case ue.LESS_THAN_SIGN:{this.state=he.RAWTEXT_LESS_THAN_SIGN;break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Fs);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateScriptData(t){switch(t){case ue.LESS_THAN_SIGN:{this.state=he.SCRIPT_DATA_LESS_THAN_SIGN;break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Fs);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_statePlaintext(t){switch(t){case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this._emitChars(Fs);break}case ue.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateTagOpen(t){if(IE(t))this._createStartTagToken(),this.state=he.TAG_NAME,this._stateTagName(t);else switch(t){case ue.EXCLAMATION_MARK:{this.state=he.MARKUP_DECLARATION_OPEN;break}case ue.SOLIDUS:{this.state=he.END_TAG_OPEN;break}case ue.QUESTION_MARK:{this._err(Pe.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=he.BOGUS_COMMENT,this._stateBogusComment(t);break}case ue.EOF:{this._err(Pe.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(Pe.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=he.DATA,this._stateData(t)}}_stateEndTagOpen(t){if(IE(t))this._createEndTagToken(),this.state=he.TAG_NAME,this._stateTagName(t);else switch(t){case ue.GREATER_THAN_SIGN:{this._err(Pe.missingEndTagName),this.state=he.DATA;break}case ue.EOF:{this._err(Pe.eofBeforeTagName),this._emitChars("");break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this.state=he.SCRIPT_DATA_ESCAPED,this._emitChars(Fs);break}case ue.EOF:{this._err(Pe.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=he.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedLessThanSign(t){t===ue.SOLIDUS?this.state=he.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:IE(t)?(this._emitChars("<"),this.state=he.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(t)):(this._emitChars("<"),this.state=he.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagOpen(t){IE(t)?(this.state=he.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(t)):(this._emitChars("");break}case ue.NULL:{this._err(Pe.unexpectedNullCharacter),this.state=he.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(Fs);break}case ue.EOF:{this._err(Pe.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=he.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedLessThanSign(t){t===ue.SOLIDUS?(this.state=he.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=he.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateScriptDataDoubleEscapeEnd(t){if(this.preprocessor.startsWith(Wc.SCRIPT,!1)&&DOt(this.preprocessor.peek(Wc.SCRIPT.length))){this._emitCodePoint(t);for(let r=0;r{Dg();BOt=new Set([N.DD,N.DT,N.LI,N.OPTGROUP,N.OPTION,N.P,N.RB,N.RP,N.RT,N.RTC]),LOt=new Set([...BOt,N.CAPTION,N.COLGROUP,N.TBODY,N.TD,N.TFOOT,N.TH,N.THEAD,N.TR]),KV=new Set([N.APPLET,N.CAPTION,N.HTML,N.MARQUEE,N.OBJECT,N.TABLE,N.TD,N.TEMPLATE,N.TH]),Stn=new Set([...KV,N.OL,N.UL]),Ttn=new Set([...KV,N.BUTTON]),MOt=new Set([N.ANNOTATION_XML,N.MI,N.MN,N.MO,N.MS,N.MTEXT]),kOt=new Set([N.DESC,N.FOREIGN_OBJECT,N.TITLE]),btn=new Set([N.TR,N.TEMPLATE,N.HTML]),Itn=new Set([N.TBODY,N.TFOOT,N.THEAD,N.TEMPLATE,N.HTML]),Rtn=new Set([N.TABLE,N.TEMPLATE,N.HTML]),Ctn=new Set([N.TD,N.TH]),GV=class{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(t,r,n){this.treeAdapter=r,this.handler=n,this.items=[],this.tagIDs=[],this.stackTop=-1,this.tmplCount=0,this.currentTagId=N.UNKNOWN,this.current=t}_indexOf(t){return this.items.lastIndexOf(t,this.stackTop)}_isInTemplate(){return this.currentTagId===N.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===Ve.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagId=this.tagIDs[this.stackTop]}push(t,r){this.stackTop++,this.items[this.stackTop]=t,this.current=t,this.tagIDs[this.stackTop]=r,this.currentTagId=r,this._isInTemplate()&&this.tmplCount++,this.handler.onItemPush(t,r,!0)}pop(){let t=this.current;this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!0)}replace(t,r){let n=this._indexOf(t);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(t,r,n){let s=this._indexOf(t)+1;this.items.splice(s,0,r),this.tagIDs.splice(s,0,n),this.stackTop++,s===this.stackTop&&this._updateCurrentElement(),this.current&&this.currentTagId!==void 0&&this.handler.onItemPush(this.current,this.currentTagId,s===this.stackTop)}popUntilTagNamePopped(t){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(t,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Ve.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(t){for(;this.stackTop>=t;){let r=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(r,this.stackTop=0;n--)if(t.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(t,r){let n=this._indexOfTagNames(t,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(Rtn,Ve.HTML)}clearBackToTableBodyContext(){this.clearBackTo(Itn,Ve.HTML)}clearBackToTableRowContext(){this.clearBackTo(btn,Ve.HTML)}remove(t){let r=this._indexOf(t);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===N.BODY?this.items[1]:null}contains(t){return this._indexOf(t)>-1}getCommonAncestor(t){let r=this._indexOf(t)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===N.HTML}hasInDynamicScope(t,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ve.HTML:{if(s===t)return!0;if(r.has(s))return!1;break}case Ve.SVG:{if(kOt.has(s))return!1;break}case Ve.MATHML:{if(MOt.has(s))return!1;break}}}return!0}hasInScope(t){return this.hasInDynamicScope(t,KV)}hasInListItemScope(t){return this.hasInDynamicScope(t,Stn)}hasInButtonScope(t){return this.hasInDynamicScope(t,Ttn)}hasNumberedHeaderInScope(){for(let t=this.stackTop;t>=0;t--){let r=this.tagIDs[t];switch(this.treeAdapter.getNamespaceURI(this.items[t])){case Ve.HTML:{if(XC.has(r))return!0;if(KV.has(r))return!1;break}case Ve.SVG:{if(kOt.has(r))return!1;break}case Ve.MATHML:{if(MOt.has(r))return!1;break}}}return!0}hasInTableScope(t){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ve.HTML)switch(this.tagIDs[r]){case t:return!0;case N.TABLE:case N.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let t=this.stackTop;t>=0;t--)if(this.treeAdapter.getNamespaceURI(this.items[t])===Ve.HTML)switch(this.tagIDs[t]){case N.TBODY:case N.THEAD:case N.TFOOT:return!0;case N.TABLE:case N.HTML:return!1}return!0}hasInSelectScope(t){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ve.HTML)switch(this.tagIDs[r]){case t:return!0;case N.OPTION:case N.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&BOt.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&LOt.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(t){for(;this.currentTagId!==void 0&&this.currentTagId!==t&&LOt.has(this.currentTagId);)this.pop()}}});var f0,FOt,zV,$Ot=ie(()=>{(function(e){e[e.Marker=0]="Marker",e[e.Element=1]="Element"})(f0||(f0={}));FOt={type:f0.Marker},zV=class{constructor(t){this.treeAdapter=t,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(t,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(t),a=this.treeAdapter.getNamespaceURI(t);for(let o=0;o[a.name,a.value])),i=0;for(let a=0;as.get(c.name)===c.value)&&(i+=1,i>=3&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(FOt)}pushElement(t,r){this._ensureNoahArkCondition(t),this.entries.unshift({type:f0.Element,element:t,token:r})}insertElementAfterBookmark(t,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:f0.Element,element:t,token:r})}removeEntry(t){let r=this.entries.indexOf(t);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let t=this.entries.indexOf(FOt);t===-1?this.entries.length=0:this.entries.splice(0,t+1)}getElementEntryInScopeWithTagName(t){let r=this.entries.find(n=>n.type===f0.Marker||this.treeAdapter.getTagName(n.element)===t);return r&&r.type===f0.Element?r:null}getElementEntry(t){return this.entries.find(r=>r.type===f0.Element&&r.element===t)}}});var Wd,YV=ie(()=>{Dg();Wd={createDocument(){return{nodeName:"#document",mode:nc.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(e,t,r){return{nodeName:e,tagName:e,attrs:r,namespaceURI:t,childNodes:[],parentNode:null}},createCommentNode(e){return{nodeName:"#comment",data:e,parentNode:null}},createTextNode(e){return{nodeName:"#text",value:e,parentNode:null}},appendChild(e,t){e.childNodes.push(t),t.parentNode=e},insertBefore(e,t,r){let n=e.childNodes.indexOf(r);e.childNodes.splice(n,0,t),t.parentNode=e},setTemplateContent(e,t){e.content=t},getTemplateContent(e){return e.content},setDocumentType(e,t,r,n){let s=e.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=t,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:t,publicId:r,systemId:n,parentNode:null};Wd.appendChild(e,i)}},setDocumentMode(e,t){e.mode=t},getDocumentMode(e){return e.mode},detachNode(e){if(e.parentNode){let t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},insertText(e,t){if(e.childNodes.length>0){let r=e.childNodes[e.childNodes.length-1];if(Wd.isTextNode(r)){r.value+=t;return}}Wd.appendChild(e,Wd.createTextNode(t))},insertTextBefore(e,t,r){let n=e.childNodes[e.childNodes.indexOf(r)-1];n&&Wd.isTextNode(n)?n.value+=t:Wd.insertBefore(e,Wd.createTextNode(t),r)},adoptAttributes(e,t){let r=new Set(e.attrs.map(n=>n.name));for(let n=0;ne.startsWith(r))}function KOt(e){return e.name===HOt&&e.publicId===null&&(e.systemId===null||e.systemId===xtn)}function GOt(e){if(e.name!==HOt)return nc.QUIRKS;let{systemId:t}=e;if(t&&t.toLowerCase()===wtn)return nc.QUIRKS;let{publicId:r}=e;if(r!==null){if(r=r.toLowerCase(),Otn.has(r))return nc.QUIRKS;let n=t===null?Ntn:VOt;if(qOt(r,n))return nc.QUIRKS;if(n=t===null?jOt:Dtn,qOt(r,n))return nc.LIMITED_QUIRKS}return nc.NO_QUIRKS}var HOt,xtn,wtn,VOt,Ntn,Otn,jOt,Dtn,zOt=ie(()=>{Dg();HOt="html",xtn="about:legacy-compat",wtn="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",VOt=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],Ntn=[...VOt,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],Otn=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),jOt=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],Dtn=[...jOt,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]});function QOt(e){let t=e.tagID;return t===N.FONT&&e.attrs.some(({name:n})=>n===rp.COLOR||n===rp.SIZE||n===rp.FACE)||Ftn.has(t)}function Sbe(e){for(let t=0;t{Dg();YOt={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},Ltn="definitionurl",Mtn="definitionURL",ktn=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e])),Btn=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ve.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ve.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ve.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ve.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ve.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ve.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ve.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ve.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ve.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ve.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ve.XMLNS}]]),Utn=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),Ftn=new Set([N.B,N.BIG,N.BLOCKQUOTE,N.BODY,N.BR,N.CENTER,N.CODE,N.DD,N.DIV,N.DL,N.DT,N.EM,N.EMBED,N.H1,N.H2,N.H3,N.H4,N.H5,N.H6,N.HEAD,N.HR,N.I,N.IMG,N.LI,N.LISTING,N.MENU,N.META,N.NOBR,N.OL,N.P,N.PRE,N.RUBY,N.S,N.SMALL,N.SPAN,N.STRONG,N.STRIKE,N.SUB,N.SUP,N.TABLE,N.TT,N.U,N.UL,N.VAR])});function Gtn(e,t){let r=e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);return r?e.openElements.contains(r.element)?e.openElements.hasInScope(t.tagID)||(r=null):(e.activeFormattingElements.removeEntry(r),r=null):o2t(e,t),r}function ztn(e,t){let r=null,n=e.openElements.stackTop;for(;n>=0;n--){let s=e.openElements.items[n];if(s===t.element)break;e._isSpecialElement(s,e.openElements.tagIDs[n])&&(r=s)}return r||(e.openElements.shortenToLength(Math.max(n,0)),e.activeFormattingElements.removeEntry(t)),r}function Ytn(e,t,r){let n=t,s=e.openElements.getCommonAncestor(t);for(let i=0,a=s;a!==r;i++,a=s){s=e.openElements.getCommonAncestor(a);let o=e.activeFormattingElements.getElementEntry(a),c=o&&i>=jtn;!o||c?(c&&e.activeFormattingElements.removeEntry(o),e.openElements.remove(a)):(a=Qtn(e,o),n===t&&(e.activeFormattingElements.bookmark=o),e.treeAdapter.detachNode(n),e.treeAdapter.appendChild(a,n),n=a)}return n}function Qtn(e,t){let r=e.treeAdapter.getNamespaceURI(t.element),n=e.treeAdapter.createElement(t.token.tagName,r,t.token.attrs);return e.openElements.replace(t.element,n),t.element=n,n}function Wtn(e,t,r){let n=e.treeAdapter.getTagName(t),s=bE(n);if(e._isElementCausesFosterParenting(s))e._fosterParentElement(r);else{let i=e.treeAdapter.getNamespaceURI(t);s===N.TEMPLATE&&i===Ve.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,r)}}function Xtn(e,t,r){let n=e.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=e.treeAdapter.createElement(s.tagName,n,s.attrs);e._adoptNodes(t,i),e.treeAdapter.appendChild(t,i),e.activeFormattingElements.insertElementAfterBookmark(i,s),e.activeFormattingElements.removeEntry(r),e.openElements.remove(r.element),e.openElements.insertAfter(t,i,s.tagID)}function xbe(e,t){for(let r=0;r=r;n--)e._setEndLocation(e.openElements.items[n],t);if(!e.fragmentContext&&e.openElements.stackTop>=0){let n=e.openElements.items[0],s=e.treeAdapter.getNodeSourceCodeLocation(n);if(s&&!s.endTag&&(e._setEndLocation(n,t),e.openElements.stackTop>=1)){let i=e.openElements.items[1],a=e.treeAdapter.getNodeSourceCodeLocation(i);a&&!a.endTag&&e._setEndLocation(i,t)}}}}function ern(e,t){e._setDocumentType(t);let r=t.forceQuirks?nc.QUIRKS:GOt(t);KOt(t)||e._err(t,Pe.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,r),e.insertionMode=_e.BEFORE_HTML}function t4(e,t){e._err(t,Pe.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,nc.QUIRKS),e.insertionMode=_e.BEFORE_HTML,e._processToken(t)}function trn(e,t){t.tagID===N.HTML?(e._insertElement(t,Ve.HTML),e.insertionMode=_e.BEFORE_HEAD):n4(e,t)}function rrn(e,t){let r=t.tagID;(r===N.HTML||r===N.HEAD||r===N.BODY||r===N.BR)&&n4(e,t)}function n4(e,t){e._insertFakeRootElement(),e.insertionMode=_e.BEFORE_HEAD,e._processToken(t)}function nrn(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.HEAD:{e._insertElement(t,Ve.HTML),e.headElement=e.openElements.current,e.insertionMode=_e.IN_HEAD;break}default:s4(e,t)}}function srn(e,t){let r=t.tagID;r===N.HEAD||r===N.BODY||r===N.HTML||r===N.BR?s4(e,t):e._err(t,Pe.endTagWithoutMatchingOpenElement)}function s4(e,t){e._insertFakeElement(Ce.HEAD,N.HEAD),e.headElement=e.openElements.current,e.insertionMode=_e.IN_HEAD,e._processToken(t)}function h0(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.BASE:case N.BASEFONT:case N.BGSOUND:case N.LINK:case N.META:{e._appendElement(t,Ve.HTML),t.ackSelfClosing=!0;break}case N.TITLE:{e._switchToTextParsing(t,sc.RCDATA);break}case N.NOSCRIPT:{e.options.scriptingEnabled?e._switchToTextParsing(t,sc.RAWTEXT):(e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_HEAD_NO_SCRIPT);break}case N.NOFRAMES:case N.STYLE:{e._switchToTextParsing(t,sc.RAWTEXT);break}case N.SCRIPT:{e._switchToTextParsing(t,sc.SCRIPT_DATA);break}case N.TEMPLATE:{e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=_e.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(_e.IN_TEMPLATE);break}case N.HEAD:{e._err(t,Pe.misplacedStartTagForHeadElement);break}default:i4(e,t)}}function irn(e,t){switch(t.tagID){case N.HEAD:{e.openElements.pop(),e.insertionMode=_e.AFTER_HEAD;break}case N.BODY:case N.BR:case N.HTML:{i4(e,t);break}case N.TEMPLATE:{RT(e,t);break}default:e._err(t,Pe.endTagWithoutMatchingOpenElement)}}function RT(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==N.TEMPLATE&&e._err(t,Pe.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(N.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,Pe.endTagWithoutMatchingOpenElement)}function i4(e,t){e.openElements.pop(),e.insertionMode=_e.AFTER_HEAD,e._processToken(t)}function arn(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.BASEFONT:case N.BGSOUND:case N.HEAD:case N.LINK:case N.META:case N.NOFRAMES:case N.STYLE:{h0(e,t);break}case N.NOSCRIPT:{e._err(t,Pe.nestedNoscriptInHead);break}default:a4(e,t)}}function orn(e,t){switch(t.tagID){case N.NOSCRIPT:{e.openElements.pop(),e.insertionMode=_e.IN_HEAD;break}case N.BR:{a4(e,t);break}default:e._err(t,Pe.endTagWithoutMatchingOpenElement)}}function a4(e,t){let r=t.type===pn.EOF?Pe.openElementsLeftAfterEof:Pe.disallowedContentInNoscriptInHead;e._err(t,r),e.openElements.pop(),e.insertionMode=_e.IN_HEAD,e._processToken(t)}function crn(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.BODY:{e._insertElement(t,Ve.HTML),e.framesetOk=!1,e.insertionMode=_e.IN_BODY;break}case N.FRAMESET:{e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_FRAMESET;break}case N.BASE:case N.BASEFONT:case N.BGSOUND:case N.LINK:case N.META:case N.NOFRAMES:case N.SCRIPT:case N.STYLE:case N.TEMPLATE:case N.TITLE:{e._err(t,Pe.abandonedHeadElementChild),e.openElements.push(e.headElement,N.HEAD),h0(e,t),e.openElements.remove(e.headElement);break}case N.HEAD:{e._err(t,Pe.misplacedStartTagForHeadElement);break}default:o4(e,t)}}function urn(e,t){switch(t.tagID){case N.BODY:case N.HTML:case N.BR:{o4(e,t);break}case N.TEMPLATE:{RT(e,t);break}default:e._err(t,Pe.endTagWithoutMatchingOpenElement)}}function o4(e,t){e._insertFakeElement(Ce.BODY,N.BODY),e.insertionMode=_e.IN_BODY,ZV(e,t)}function ZV(e,t){switch(t.type){case pn.CHARACTER:{s2t(e,t);break}case pn.WHITESPACE_CHARACTER:{n2t(e,t);break}case pn.COMMENT:{Rbe(e,t);break}case pn.START_TAG:{ic(e,t);break}case pn.END_TAG:{e7(e,t);break}case pn.EOF:{c2t(e,t);break}default:}}function n2t(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function s2t(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function lrn(e,t){e.openElements.tmplCount===0&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}function drn(e,t){let r=e.openElements.tryPeekProperlyNestedBodyElement();r&&e.openElements.tmplCount===0&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(r,t.attrs))}function frn(e,t){let r=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&r&&(e.treeAdapter.detachNode(r),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_FRAMESET)}function hrn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML)}function prn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e.openElements.currentTagId!==void 0&&XC.has(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,Ve.HTML)}function mrn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}function grn(e,t){let r=e.openElements.tmplCount>0;(!e.formElement||r)&&(e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),r||(e.formElement=e.openElements.current))}function _rn(e,t){e.framesetOk=!1;let r=t.tagID;for(let n=e.openElements.stackTop;n>=0;n--){let s=e.openElements.tagIDs[n];if(r===N.LI&&s===N.LI||(r===N.DD||r===N.DT)&&(s===N.DD||s===N.DT)){e.openElements.generateImpliedEndTagsWithExclusion(s),e.openElements.popUntilTagNamePopped(s);break}if(s!==N.ADDRESS&&s!==N.DIV&&s!==N.P&&e._isSpecialElement(e.openElements.items[n],s))break}e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML)}function Arn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),e.tokenizer.state=sc.PLAINTEXT}function Ern(e,t){e.openElements.hasInScope(N.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(N.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.framesetOk=!1}function yrn(e,t){let r=e.activeFormattingElements.getElementEntryInScopeWithTagName(Ce.A);r&&(xbe(e,t),e.openElements.remove(r.element),e.activeFormattingElements.removeEntry(r)),e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function vrn(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function Srn(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(N.NOBR)&&(xbe(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,Ve.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function Trn(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}function brn(e,t){e.treeAdapter.getDocumentMode(e.document)!==nc.QUIRKS&&e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._insertElement(t,Ve.HTML),e.framesetOk=!1,e.insertionMode=_e.IN_TABLE}function i2t(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Ve.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function a2t(e){let t=FV(e,rp.TYPE);return t!=null&&t.toLowerCase()===Htn}function Irn(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Ve.HTML),a2t(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}function Rrn(e,t){e._appendElement(t,Ve.HTML),t.ackSelfClosing=!0}function Crn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._appendElement(t,Ve.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function xrn(e,t){t.tagName=Ce.IMG,t.tagID=N.IMG,i2t(e,t)}function wrn(e,t){e._insertElement(t,Ve.HTML),e.skipNextNewLine=!0,e.tokenizer.state=sc.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=_e.TEXT}function Nrn(e,t){e.openElements.hasInButtonScope(N.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,sc.RAWTEXT)}function Orn(e,t){e.framesetOk=!1,e._switchToTextParsing(t,sc.RAWTEXT)}function e2t(e,t){e._switchToTextParsing(t,sc.RAWTEXT)}function Drn(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===_e.IN_TABLE||e.insertionMode===_e.IN_CAPTION||e.insertionMode===_e.IN_TABLE_BODY||e.insertionMode===_e.IN_ROW||e.insertionMode===_e.IN_CELL?_e.IN_SELECT_IN_TABLE:_e.IN_SELECT}function Prn(e,t){e.openElements.currentTagId===N.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML)}function Lrn(e,t){e.openElements.hasInScope(N.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,Ve.HTML)}function Mrn(e,t){e.openElements.hasInScope(N.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(N.RTC),e._insertElement(t,Ve.HTML)}function krn(e,t){e._reconstructActiveFormattingElements(),Sbe(t),QV(t),t.selfClosing?e._appendElement(t,Ve.MATHML):e._insertElement(t,Ve.MATHML),t.ackSelfClosing=!0}function Brn(e,t){e._reconstructActiveFormattingElements(),Tbe(t),QV(t),t.selfClosing?e._appendElement(t,Ve.SVG):e._insertElement(t,Ve.SVG),t.ackSelfClosing=!0}function t2t(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Ve.HTML)}function ic(e,t){switch(t.tagID){case N.I:case N.S:case N.B:case N.U:case N.EM:case N.TT:case N.BIG:case N.CODE:case N.FONT:case N.SMALL:case N.STRIKE:case N.STRONG:{vrn(e,t);break}case N.A:{yrn(e,t);break}case N.H1:case N.H2:case N.H3:case N.H4:case N.H5:case N.H6:{prn(e,t);break}case N.P:case N.DL:case N.OL:case N.UL:case N.DIV:case N.DIR:case N.NAV:case N.MAIN:case N.MENU:case N.ASIDE:case N.CENTER:case N.FIGURE:case N.FOOTER:case N.HEADER:case N.HGROUP:case N.DIALOG:case N.DETAILS:case N.ADDRESS:case N.ARTICLE:case N.SEARCH:case N.SECTION:case N.SUMMARY:case N.FIELDSET:case N.BLOCKQUOTE:case N.FIGCAPTION:{hrn(e,t);break}case N.LI:case N.DD:case N.DT:{_rn(e,t);break}case N.BR:case N.IMG:case N.WBR:case N.AREA:case N.EMBED:case N.KEYGEN:{i2t(e,t);break}case N.HR:{Crn(e,t);break}case N.RB:case N.RTC:{Lrn(e,t);break}case N.RT:case N.RP:{Mrn(e,t);break}case N.PRE:case N.LISTING:{mrn(e,t);break}case N.XMP:{Nrn(e,t);break}case N.SVG:{Brn(e,t);break}case N.HTML:{lrn(e,t);break}case N.BASE:case N.LINK:case N.META:case N.STYLE:case N.TITLE:case N.SCRIPT:case N.BGSOUND:case N.BASEFONT:case N.TEMPLATE:{h0(e,t);break}case N.BODY:{drn(e,t);break}case N.FORM:{grn(e,t);break}case N.NOBR:{Srn(e,t);break}case N.MATH:{krn(e,t);break}case N.TABLE:{brn(e,t);break}case N.INPUT:{Irn(e,t);break}case N.PARAM:case N.TRACK:case N.SOURCE:{Rrn(e,t);break}case N.IMAGE:{xrn(e,t);break}case N.BUTTON:{Ern(e,t);break}case N.APPLET:case N.OBJECT:case N.MARQUEE:{Trn(e,t);break}case N.IFRAME:{Orn(e,t);break}case N.SELECT:{Drn(e,t);break}case N.OPTION:case N.OPTGROUP:{Prn(e,t);break}case N.NOEMBED:case N.NOFRAMES:{e2t(e,t);break}case N.FRAMESET:{frn(e,t);break}case N.TEXTAREA:{wrn(e,t);break}case N.NOSCRIPT:{e.options.scriptingEnabled?e2t(e,t):t2t(e,t);break}case N.PLAINTEXT:{Arn(e,t);break}case N.COL:case N.TH:case N.TD:case N.TR:case N.HEAD:case N.FRAME:case N.TBODY:case N.TFOOT:case N.THEAD:case N.CAPTION:case N.COLGROUP:break;default:t2t(e,t)}}function Urn(e,t){if(e.openElements.hasInScope(N.BODY)&&(e.insertionMode=_e.AFTER_BODY,e.options.sourceCodeLocationInfo)){let r=e.openElements.tryPeekProperlyNestedBodyElement();r&&e._setEndLocation(r,t)}}function Frn(e,t){e.openElements.hasInScope(N.BODY)&&(e.insertionMode=_e.AFTER_BODY,g2t(e,t))}function $rn(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(r))}function qrn(e){let t=e.openElements.tmplCount>0,{formElement:r}=e;t||(e.formElement=null),(r||t)&&e.openElements.hasInScope(N.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(N.FORM):r&&e.openElements.remove(r))}function Hrn(e){e.openElements.hasInButtonScope(N.P)||e._insertFakeElement(Ce.P,N.P),e._closePElement()}function Vrn(e){e.openElements.hasInListItemScope(N.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(N.LI),e.openElements.popUntilTagNamePopped(N.LI))}function jrn(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.popUntilTagNamePopped(r))}function Krn(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}function Grn(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(r),e.activeFormattingElements.clearToLastMarker())}function zrn(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(Ce.BR,N.BR),e.openElements.pop(),e.framesetOk=!1}function o2t(e,t){let r=t.tagName,n=t.tagID;for(let s=e.openElements.stackTop;s>0;s--){let i=e.openElements.items[s],a=e.openElements.tagIDs[s];if(n===a&&(n!==N.UNKNOWN||e.treeAdapter.getTagName(i)===r)){e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.stackTop>=s&&e.openElements.shortenToLength(s);break}if(e._isSpecialElement(i,a))break}}function e7(e,t){switch(t.tagID){case N.A:case N.B:case N.I:case N.S:case N.U:case N.EM:case N.TT:case N.BIG:case N.CODE:case N.FONT:case N.NOBR:case N.SMALL:case N.STRIKE:case N.STRONG:{xbe(e,t);break}case N.P:{Hrn(e);break}case N.DL:case N.UL:case N.OL:case N.DIR:case N.DIV:case N.NAV:case N.PRE:case N.MAIN:case N.MENU:case N.ASIDE:case N.BUTTON:case N.CENTER:case N.FIGURE:case N.FOOTER:case N.HEADER:case N.HGROUP:case N.DIALOG:case N.ADDRESS:case N.ARTICLE:case N.DETAILS:case N.SEARCH:case N.SECTION:case N.SUMMARY:case N.LISTING:case N.FIELDSET:case N.BLOCKQUOTE:case N.FIGCAPTION:{$rn(e,t);break}case N.LI:{Vrn(e);break}case N.DD:case N.DT:{jrn(e,t);break}case N.H1:case N.H2:case N.H3:case N.H4:case N.H5:case N.H6:{Krn(e);break}case N.BR:{zrn(e);break}case N.BODY:{Urn(e,t);break}case N.HTML:{Frn(e,t);break}case N.FORM:{qrn(e);break}case N.APPLET:case N.OBJECT:case N.MARQUEE:{Grn(e,t);break}case N.TEMPLATE:{RT(e,t);break}default:o2t(e,t)}}function c2t(e,t){e.tmplInsertionModeStack.length>0?m2t(e,t):wbe(e,t)}function Yrn(e,t){var r;t.tagID===N.SCRIPT&&((r=e.scriptHandler)===null||r===void 0||r.call(e,e.openElements.current)),e.openElements.pop(),e.insertionMode=e.originalInsertionMode}function Qrn(e,t){e._err(t,Pe.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}function Ibe(e,t){if(e.openElements.currentTagId!==void 0&&r2t.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=_e.IN_TABLE_TEXT,t.type){case pn.CHARACTER:{l2t(e,t);break}case pn.WHITESPACE_CHARACTER:{u2t(e,t);break}}else u4(e,t)}function Wrn(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_CAPTION}function Xrn(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_COLUMN_GROUP}function Jrn(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(Ce.COLGROUP,N.COLGROUP),e.insertionMode=_e.IN_COLUMN_GROUP,Nbe(e,t)}function Zrn(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Ve.HTML),e.insertionMode=_e.IN_TABLE_BODY}function enn(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(Ce.TBODY,N.TBODY),e.insertionMode=_e.IN_TABLE_BODY,t7(e,t)}function tnn(e,t){e.openElements.hasInTableScope(N.TABLE)&&(e.openElements.popUntilTagNamePopped(N.TABLE),e._resetInsertionMode(),e._processStartTag(t))}function rnn(e,t){a2t(t)?e._appendElement(t,Ve.HTML):u4(e,t),t.ackSelfClosing=!0}function nnn(e,t){!e.formElement&&e.openElements.tmplCount===0&&(e._insertElement(t,Ve.HTML),e.formElement=e.openElements.current,e.openElements.pop())}function ZC(e,t){switch(t.tagID){case N.TD:case N.TH:case N.TR:{enn(e,t);break}case N.STYLE:case N.SCRIPT:case N.TEMPLATE:{h0(e,t);break}case N.COL:{Jrn(e,t);break}case N.FORM:{nnn(e,t);break}case N.TABLE:{tnn(e,t);break}case N.TBODY:case N.TFOOT:case N.THEAD:{Zrn(e,t);break}case N.INPUT:{rnn(e,t);break}case N.CAPTION:{Wrn(e,t);break}case N.COLGROUP:{Xrn(e,t);break}default:u4(e,t)}}function c4(e,t){switch(t.tagID){case N.TABLE:{e.openElements.hasInTableScope(N.TABLE)&&(e.openElements.popUntilTagNamePopped(N.TABLE),e._resetInsertionMode());break}case N.TEMPLATE:{RT(e,t);break}case N.BODY:case N.CAPTION:case N.COL:case N.COLGROUP:case N.HTML:case N.TBODY:case N.TD:case N.TFOOT:case N.TH:case N.THEAD:case N.TR:break;default:u4(e,t)}}function u4(e,t){let r=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,ZV(e,t),e.fosterParentingEnabled=r}function u2t(e,t){e.pendingCharacterTokens.push(t)}function l2t(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function r4(e,t){let r=0;if(e.hasNonWhitespacePendingCharacterToken)for(;r0&&e.openElements.currentTagId===N.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===N.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===N.OPTGROUP&&e.openElements.pop();break}case N.OPTION:{e.openElements.currentTagId===N.OPTION&&e.openElements.pop();break}case N.SELECT:{e.openElements.hasInSelectScope(N.SELECT)&&(e.openElements.popUntilTagNamePopped(N.SELECT),e._resetInsertionMode());break}case N.TEMPLATE:{RT(e,t);break}default:}}function unn(e,t){let r=t.tagID;r===N.CAPTION||r===N.TABLE||r===N.TBODY||r===N.TFOOT||r===N.THEAD||r===N.TR||r===N.TD||r===N.TH?(e.openElements.popUntilTagNamePopped(N.SELECT),e._resetInsertionMode(),e._processStartTag(t)):h2t(e,t)}function lnn(e,t){let r=t.tagID;r===N.CAPTION||r===N.TABLE||r===N.TBODY||r===N.TFOOT||r===N.THEAD||r===N.TR||r===N.TD||r===N.TH?e.openElements.hasInTableScope(r)&&(e.openElements.popUntilTagNamePopped(N.SELECT),e._resetInsertionMode(),e.onEndTag(t)):p2t(e,t)}function dnn(e,t){switch(t.tagID){case N.BASE:case N.BASEFONT:case N.BGSOUND:case N.LINK:case N.META:case N.NOFRAMES:case N.SCRIPT:case N.STYLE:case N.TEMPLATE:case N.TITLE:{h0(e,t);break}case N.CAPTION:case N.COLGROUP:case N.TBODY:case N.TFOOT:case N.THEAD:{e.tmplInsertionModeStack[0]=_e.IN_TABLE,e.insertionMode=_e.IN_TABLE,ZC(e,t);break}case N.COL:{e.tmplInsertionModeStack[0]=_e.IN_COLUMN_GROUP,e.insertionMode=_e.IN_COLUMN_GROUP,Nbe(e,t);break}case N.TR:{e.tmplInsertionModeStack[0]=_e.IN_TABLE_BODY,e.insertionMode=_e.IN_TABLE_BODY,t7(e,t);break}case N.TD:case N.TH:{e.tmplInsertionModeStack[0]=_e.IN_ROW,e.insertionMode=_e.IN_ROW,r7(e,t);break}default:e.tmplInsertionModeStack[0]=_e.IN_BODY,e.insertionMode=_e.IN_BODY,ic(e,t)}}function fnn(e,t){t.tagID===N.TEMPLATE&&RT(e,t)}function m2t(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(N.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):wbe(e,t)}function hnn(e,t){t.tagID===N.HTML?ic(e,t):JV(e,t)}function g2t(e,t){var r;if(t.tagID===N.HTML){if(e.fragmentContext||(e.insertionMode=_e.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===N.HTML){e._setEndLocation(e.openElements.items[0],t);let n=e.openElements.items[1];n&&!(!((r=e.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&e._setEndLocation(n,t)}}else JV(e,t)}function JV(e,t){e.insertionMode=_e.IN_BODY,ZV(e,t)}function pnn(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.FRAMESET:{e._insertElement(t,Ve.HTML);break}case N.FRAME:{e._appendElement(t,Ve.HTML),t.ackSelfClosing=!0;break}case N.NOFRAMES:{h0(e,t);break}default:}}function mnn(e,t){t.tagID===N.FRAMESET&&!e.openElements.isRootHtmlElementCurrent()&&(e.openElements.pop(),!e.fragmentContext&&e.openElements.currentTagId!==N.FRAMESET&&(e.insertionMode=_e.AFTER_FRAMESET))}function gnn(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.NOFRAMES:{h0(e,t);break}default:}}function _nn(e,t){t.tagID===N.HTML&&(e.insertionMode=_e.AFTER_AFTER_FRAMESET)}function Ann(e,t){t.tagID===N.HTML?ic(e,t):WV(e,t)}function WV(e,t){e.insertionMode=_e.IN_BODY,ZV(e,t)}function Enn(e,t){switch(t.tagID){case N.HTML:{ic(e,t);break}case N.NOFRAMES:{h0(e,t);break}default:}}function ynn(e,t){t.chars=Fs,e._insertCharacters(t)}function vnn(e,t){e._insertCharacters(t),e.framesetOk=!1}function _2t(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==Ve.HTML&&e.openElements.currentTagId!==void 0&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function Snn(e,t){if(QOt(t))_2t(e),e._startTagOutsideForeignContent(t);else{let r=e._getAdjustedCurrentElement(),n=e.treeAdapter.getNamespaceURI(r);n===Ve.MATHML?Sbe(t):n===Ve.SVG&&(WOt(t),Tbe(t)),QV(t),t.selfClosing?e._appendElement(t,n):e._insertElement(t,n),t.ackSelfClosing=!0}}function Tnn(e,t){if(t.tagID===N.P||t.tagID===N.BR){_2t(e),e._endTagOutsideForeignContent(t);return}for(let r=e.openElements.stackTop;r>0;r--){let n=e.openElements.items[r];if(e.treeAdapter.getNamespaceURI(n)===Ve.HTML){e._endTagOutsideForeignContent(t);break}let s=e.treeAdapter.getTagName(n);if(s.toLowerCase()===t.tagName){t.tagName=s,e.openElements.shortenToLength(r);break}}}var Htn,Vtn,jtn,_e,Ktn,r2t,ZOt,JC,d2t,Obe=ie(()=>{vbe();UOt();$Ot();YV();zOt();bbe();Jk();BV();Dg();$V();Htn="hidden",Vtn=8,jtn=3;(function(e){e[e.INITIAL=0]="INITIAL",e[e.BEFORE_HTML=1]="BEFORE_HTML",e[e.BEFORE_HEAD=2]="BEFORE_HEAD",e[e.IN_HEAD=3]="IN_HEAD",e[e.IN_HEAD_NO_SCRIPT=4]="IN_HEAD_NO_SCRIPT",e[e.AFTER_HEAD=5]="AFTER_HEAD",e[e.IN_BODY=6]="IN_BODY",e[e.TEXT=7]="TEXT",e[e.IN_TABLE=8]="IN_TABLE",e[e.IN_TABLE_TEXT=9]="IN_TABLE_TEXT",e[e.IN_CAPTION=10]="IN_CAPTION",e[e.IN_COLUMN_GROUP=11]="IN_COLUMN_GROUP",e[e.IN_TABLE_BODY=12]="IN_TABLE_BODY",e[e.IN_ROW=13]="IN_ROW",e[e.IN_CELL=14]="IN_CELL",e[e.IN_SELECT=15]="IN_SELECT",e[e.IN_SELECT_IN_TABLE=16]="IN_SELECT_IN_TABLE",e[e.IN_TEMPLATE=17]="IN_TEMPLATE",e[e.AFTER_BODY=18]="AFTER_BODY",e[e.IN_FRAMESET=19]="IN_FRAMESET",e[e.AFTER_FRAMESET=20]="AFTER_FRAMESET",e[e.AFTER_AFTER_BODY=21]="AFTER_AFTER_BODY",e[e.AFTER_AFTER_FRAMESET=22]="AFTER_AFTER_FRAMESET"})(_e||(_e={}));Ktn={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},r2t=new Set([N.TABLE,N.TBODY,N.TFOOT,N.THEAD,N.TR]),ZOt={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:Wd,onParseError:null},JC=class{constructor(t,r,n=null,s=null){this.fragmentContext=n,this.scriptHandler=s,this.currentToken=null,this.stopped=!1,this.insertionMode=_e.INITIAL,this.originalInsertionMode=_e.INITIAL,this.headElement=null,this.formElement=null,this.currentNotInHTML=!1,this.tmplInsertionModeStack=[],this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1,this.options={...ZOt,...t},this.treeAdapter=this.options.treeAdapter,this.onParseError=this.options.onParseError,this.onParseError&&(this.options.sourceCodeLocationInfo=!0),this.document=r??this.treeAdapter.createDocument(),this.tokenizer=new e4(this.options,this),this.activeFormattingElements=new zV(this.treeAdapter),this.fragmentContextID=n?bE(this.treeAdapter.getTagName(n)):N.UNKNOWN,this._setContextModes(n??this.document,this.fragmentContextID),this.openElements=new GV(this.document,this.treeAdapter,this)}static parse(t,r){let n=new this(r);return n.tokenizer.write(t,!0),n.document}static getFragmentParser(t,r){let n={...ZOt,...r};t??(t=n.treeAdapter.createElement(Ce.TEMPLATE,Ve.HTML,[]));let s=n.treeAdapter.createElement("documentmock",Ve.HTML,[]),i=new this(n,s,t);return i.fragmentContextID===N.TEMPLATE&&i.tmplInsertionModeStack.unshift(_e.IN_TEMPLATE),i._initTokenizerForFragmentParsing(),i._insertFakeRootElement(),i._resetInsertionMode(),i._findFormInFragmentContext(),i}getFragment(){let t=this.treeAdapter.getFirstChild(this.document),r=this.treeAdapter.createDocumentFragment();return this._adoptNodes(t,r),r}_err(t,r,n){var s;if(!this.onParseError)return;let i=(s=t.location)!==null&&s!==void 0?s:Ktn,a={code:r,startLine:i.startLine,startCol:i.startCol,startOffset:i.startOffset,endLine:n?i.startLine:i.endLine,endCol:n?i.startCol:i.endCol,endOffset:n?i.startOffset:i.endOffset};this.onParseError(a)}onItemPush(t,r,n){var s,i;(i=(s=this.treeAdapter).onItemPush)===null||i===void 0||i.call(s,t),n&&this.openElements.stackTop>0&&this._setContextModes(t,r)}onItemPop(t,r){var n,s;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(t,this.currentToken),(s=(n=this.treeAdapter).onItemPop)===null||s===void 0||s.call(n,t,this.openElements.current),r){let i,a;this.openElements.stackTop===0&&this.fragmentContext?(i=this.fragmentContext,a=this.fragmentContextID):{current:i,currentTagId:a}=this.openElements,this._setContextModes(i,a)}}_setContextModes(t,r){let n=t===this.document||t&&this.treeAdapter.getNamespaceURI(t)===Ve.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&t!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,t)}_switchToTextParsing(t,r){this._insertElement(t,Ve.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=_e.TEXT}switchToPlaintextParsing(){this.insertionMode=_e.TEXT,this.originalInsertionMode=_e.IN_BODY,this.tokenizer.state=sc.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let t=this.fragmentContext;for(;t;){if(this.treeAdapter.getTagName(t)===Ce.FORM){this.formElement=t;break}t=this.treeAdapter.getParentNode(t)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ve.HTML))switch(this.fragmentContextID){case N.TITLE:case N.TEXTAREA:{this.tokenizer.state=sc.RCDATA;break}case N.STYLE:case N.XMP:case N.IFRAME:case N.NOEMBED:case N.NOFRAMES:case N.NOSCRIPT:{this.tokenizer.state=sc.RAWTEXT;break}case N.SCRIPT:{this.tokenizer.state=sc.SCRIPT_DATA;break}case N.PLAINTEXT:{this.tokenizer.state=sc.PLAINTEXT;break}default:}}_setDocumentType(t){let r=t.name||"",n=t.publicId||"",s=t.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),t.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,t.location)}}_attachElementToTree(t,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(t,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(t);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,t)}}_appendElement(t,r){let n=this.treeAdapter.createElement(t.tagName,r,t.attrs);this._attachElementToTree(n,t.location)}_insertElement(t,r){let n=this.treeAdapter.createElement(t.tagName,r,t.attrs);this._attachElementToTree(n,t.location),this.openElements.push(n,t.tagID)}_insertFakeElement(t,r){let n=this.treeAdapter.createElement(t,Ve.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(t){let r=this.treeAdapter.createElement(t.tagName,Ve.HTML,t.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,t.location),this.openElements.push(r,t.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let t=this.treeAdapter.createElement(Ce.HTML,Ve.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(t,null),this.treeAdapter.appendChild(this.openElements.current,t),this.openElements.push(t,N.HTML)}_appendCommentNode(t,r){let n=this.treeAdapter.createCommentNode(t.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,t.location)}_insertCharacters(t){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,t.chars,n):this.treeAdapter.insertText(r,t.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,t.chars)),!t.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=t.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,t.location)}_adoptNodes(t,r){for(let n=this.treeAdapter.getFirstChild(t);n;n=this.treeAdapter.getFirstChild(t))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(t,r){if(this.treeAdapter.getNodeSourceCodeLocation(t)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(t),i=r.type===pn.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(t,i)}}shouldProcessStartTagTokenInForeignContent(t){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,t.tagID===N.SVG&&this.treeAdapter.getTagName(r)===Ce.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ve.MATHML?!1:this.tokenizer.inForeignNode||(t.tagID===N.MGLYPH||t.tagID===N.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ve.HTML)}_processToken(t){switch(t.type){case pn.CHARACTER:{this.onCharacter(t);break}case pn.NULL_CHARACTER:{this.onNullCharacter(t);break}case pn.COMMENT:{this.onComment(t);break}case pn.DOCTYPE:{this.onDoctype(t);break}case pn.START_TAG:{this._processStartTag(t);break}case pn.END_TAG:{this.onEndTag(t);break}case pn.EOF:{this.onEof(t);break}case pn.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(t);break}}}_isIntegrationPoint(t,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return XOt(t,s,i,n)}_reconstructActiveFormattingElements(){let t=this.activeFormattingElements.entries.length;if(t){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===f0.Marker||this.openElements.contains(s.element)),n=r===-1?t-1:r-1;for(let s=n;s>=0;s--){let i=this.activeFormattingElements.entries[s];this._insertElement(i.token,this.treeAdapter.getNamespaceURI(i.element)),i.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=_e.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(N.P),this.openElements.popUntilTagNamePopped(N.P)}_resetInsertionMode(){for(let t=this.openElements.stackTop;t>=0;t--)switch(t===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[t]){case N.TR:{this.insertionMode=_e.IN_ROW;return}case N.TBODY:case N.THEAD:case N.TFOOT:{this.insertionMode=_e.IN_TABLE_BODY;return}case N.CAPTION:{this.insertionMode=_e.IN_CAPTION;return}case N.COLGROUP:{this.insertionMode=_e.IN_COLUMN_GROUP;return}case N.TABLE:{this.insertionMode=_e.IN_TABLE;return}case N.BODY:{this.insertionMode=_e.IN_BODY;return}case N.FRAMESET:{this.insertionMode=_e.IN_FRAMESET;return}case N.SELECT:{this._resetInsertionModeForSelect(t);return}case N.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case N.HTML:{this.insertionMode=this.headElement?_e.AFTER_HEAD:_e.BEFORE_HEAD;return}case N.TD:case N.TH:{if(t>0){this.insertionMode=_e.IN_CELL;return}break}case N.HEAD:{if(t>0){this.insertionMode=_e.IN_HEAD;return}break}}this.insertionMode=_e.IN_BODY}_resetInsertionModeForSelect(t){if(t>0)for(let r=t-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===N.TEMPLATE)break;if(n===N.TABLE){this.insertionMode=_e.IN_SELECT_IN_TABLE;return}}this.insertionMode=_e.IN_SELECT}_isElementCausesFosterParenting(t){return r2t.has(t)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let t=this.openElements.stackTop;t>=0;t--){let r=this.openElements.items[t];switch(this.openElements.tagIDs[t]){case N.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ve.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case N.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[t-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(t){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,t,r.beforeElement):this.treeAdapter.appendChild(r.parent,t)}_isSpecialElement(t,r){let n=this.treeAdapter.getNamespaceURI(t);return Ebe[n].has(r)}onCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){vnn(this,t);return}switch(this.insertionMode){case _e.INITIAL:{t4(this,t);break}case _e.BEFORE_HTML:{n4(this,t);break}case _e.BEFORE_HEAD:{s4(this,t);break}case _e.IN_HEAD:{i4(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{a4(this,t);break}case _e.AFTER_HEAD:{o4(this,t);break}case _e.IN_BODY:case _e.IN_CAPTION:case _e.IN_CELL:case _e.IN_TEMPLATE:{s2t(this,t);break}case _e.TEXT:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:{this._insertCharacters(t);break}case _e.IN_TABLE:case _e.IN_TABLE_BODY:case _e.IN_ROW:{Ibe(this,t);break}case _e.IN_TABLE_TEXT:{l2t(this,t);break}case _e.IN_COLUMN_GROUP:{XV(this,t);break}case _e.AFTER_BODY:{JV(this,t);break}case _e.AFTER_AFTER_BODY:{WV(this,t);break}default:}}onNullCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){ynn(this,t);return}switch(this.insertionMode){case _e.INITIAL:{t4(this,t);break}case _e.BEFORE_HTML:{n4(this,t);break}case _e.BEFORE_HEAD:{s4(this,t);break}case _e.IN_HEAD:{i4(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{a4(this,t);break}case _e.AFTER_HEAD:{o4(this,t);break}case _e.TEXT:{this._insertCharacters(t);break}case _e.IN_TABLE:case _e.IN_TABLE_BODY:case _e.IN_ROW:{Ibe(this,t);break}case _e.IN_COLUMN_GROUP:{XV(this,t);break}case _e.AFTER_BODY:{JV(this,t);break}case _e.AFTER_AFTER_BODY:{WV(this,t);break}default:}}onComment(t){if(this.skipNextNewLine=!1,this.currentNotInHTML){Rbe(this,t);return}switch(this.insertionMode){case _e.INITIAL:case _e.BEFORE_HTML:case _e.BEFORE_HEAD:case _e.IN_HEAD:case _e.IN_HEAD_NO_SCRIPT:case _e.AFTER_HEAD:case _e.IN_BODY:case _e.IN_TABLE:case _e.IN_CAPTION:case _e.IN_COLUMN_GROUP:case _e.IN_TABLE_BODY:case _e.IN_ROW:case _e.IN_CELL:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:case _e.IN_TEMPLATE:case _e.IN_FRAMESET:case _e.AFTER_FRAMESET:{Rbe(this,t);break}case _e.IN_TABLE_TEXT:{r4(this,t);break}case _e.AFTER_BODY:{Jtn(this,t);break}case _e.AFTER_AFTER_BODY:case _e.AFTER_AFTER_FRAMESET:{Ztn(this,t);break}default:}}onDoctype(t){switch(this.skipNextNewLine=!1,this.insertionMode){case _e.INITIAL:{ern(this,t);break}case _e.BEFORE_HEAD:case _e.IN_HEAD:case _e.IN_HEAD_NO_SCRIPT:case _e.AFTER_HEAD:{this._err(t,Pe.misplacedDoctype);break}case _e.IN_TABLE_TEXT:{r4(this,t);break}default:}}onStartTag(t){this.skipNextNewLine=!1,this.currentToken=t,this._processStartTag(t),t.selfClosing&&!t.ackSelfClosing&&this._err(t,Pe.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(t){this.shouldProcessStartTagTokenInForeignContent(t)?Snn(this,t):this._startTagOutsideForeignContent(t)}_startTagOutsideForeignContent(t){switch(this.insertionMode){case _e.INITIAL:{t4(this,t);break}case _e.BEFORE_HTML:{trn(this,t);break}case _e.BEFORE_HEAD:{nrn(this,t);break}case _e.IN_HEAD:{h0(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{arn(this,t);break}case _e.AFTER_HEAD:{crn(this,t);break}case _e.IN_BODY:{ic(this,t);break}case _e.IN_TABLE:{ZC(this,t);break}case _e.IN_TABLE_TEXT:{r4(this,t);break}case _e.IN_CAPTION:{snn(this,t);break}case _e.IN_COLUMN_GROUP:{Nbe(this,t);break}case _e.IN_TABLE_BODY:{t7(this,t);break}case _e.IN_ROW:{r7(this,t);break}case _e.IN_CELL:{onn(this,t);break}case _e.IN_SELECT:{h2t(this,t);break}case _e.IN_SELECT_IN_TABLE:{unn(this,t);break}case _e.IN_TEMPLATE:{dnn(this,t);break}case _e.AFTER_BODY:{hnn(this,t);break}case _e.IN_FRAMESET:{pnn(this,t);break}case _e.AFTER_FRAMESET:{gnn(this,t);break}case _e.AFTER_AFTER_BODY:{Ann(this,t);break}case _e.AFTER_AFTER_FRAMESET:{Enn(this,t);break}default:}}onEndTag(t){this.skipNextNewLine=!1,this.currentToken=t,this.currentNotInHTML?Tnn(this,t):this._endTagOutsideForeignContent(t)}_endTagOutsideForeignContent(t){switch(this.insertionMode){case _e.INITIAL:{t4(this,t);break}case _e.BEFORE_HTML:{rrn(this,t);break}case _e.BEFORE_HEAD:{srn(this,t);break}case _e.IN_HEAD:{irn(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{orn(this,t);break}case _e.AFTER_HEAD:{urn(this,t);break}case _e.IN_BODY:{e7(this,t);break}case _e.TEXT:{Yrn(this,t);break}case _e.IN_TABLE:{c4(this,t);break}case _e.IN_TABLE_TEXT:{r4(this,t);break}case _e.IN_CAPTION:{inn(this,t);break}case _e.IN_COLUMN_GROUP:{ann(this,t);break}case _e.IN_TABLE_BODY:{Cbe(this,t);break}case _e.IN_ROW:{f2t(this,t);break}case _e.IN_CELL:{cnn(this,t);break}case _e.IN_SELECT:{p2t(this,t);break}case _e.IN_SELECT_IN_TABLE:{lnn(this,t);break}case _e.IN_TEMPLATE:{fnn(this,t);break}case _e.AFTER_BODY:{g2t(this,t);break}case _e.IN_FRAMESET:{mnn(this,t);break}case _e.AFTER_FRAMESET:{_nn(this,t);break}case _e.AFTER_AFTER_BODY:{WV(this,t);break}default:}}onEof(t){switch(this.insertionMode){case _e.INITIAL:{t4(this,t);break}case _e.BEFORE_HTML:{n4(this,t);break}case _e.BEFORE_HEAD:{s4(this,t);break}case _e.IN_HEAD:{i4(this,t);break}case _e.IN_HEAD_NO_SCRIPT:{a4(this,t);break}case _e.AFTER_HEAD:{o4(this,t);break}case _e.IN_BODY:case _e.IN_TABLE:case _e.IN_CAPTION:case _e.IN_COLUMN_GROUP:case _e.IN_TABLE_BODY:case _e.IN_ROW:case _e.IN_CELL:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:{c2t(this,t);break}case _e.TEXT:{Qrn(this,t);break}case _e.IN_TABLE_TEXT:{r4(this,t);break}case _e.IN_TEMPLATE:{m2t(this,t);break}case _e.AFTER_BODY:case _e.IN_FRAMESET:case _e.AFTER_FRAMESET:case _e.AFTER_AFTER_BODY:case _e.AFTER_AFTER_FRAMESET:{wbe(this,t);break}default:}}onWhitespaceCharacter(t){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,t.chars.charCodeAt(0)===ue.LINE_FEED)){if(t.chars.length===1)return;t.chars=t.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(t);return}switch(this.insertionMode){case _e.IN_HEAD:case _e.IN_HEAD_NO_SCRIPT:case _e.AFTER_HEAD:case _e.TEXT:case _e.IN_COLUMN_GROUP:case _e.IN_SELECT:case _e.IN_SELECT_IN_TABLE:case _e.IN_FRAMESET:case _e.AFTER_FRAMESET:{this._insertCharacters(t);break}case _e.IN_BODY:case _e.IN_CAPTION:case _e.IN_CELL:case _e.IN_TEMPLATE:case _e.AFTER_BODY:case _e.AFTER_AFTER_BODY:case _e.AFTER_AFTER_FRAMESET:{n2t(this,t);break}case _e.IN_TABLE:case _e.IN_TABLE_BODY:case _e.IN_ROW:{Ibe(this,t);break}case _e.IN_TABLE_TEXT:{u2t(this,t);break}default:}}};d2t=new Set([N.CAPTION,N.COL,N.COLGROUP,N.TBODY,N.TD,N.TFOOT,N.TH,N.THEAD,N.TR])});function A2t(e,t){return function(n){let s,i=0,a="";for(;s=e.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=t.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var ySs,E2t,y2t,v2t=ie(()=>{ySs=String.prototype.codePointAt==null?(e,t)=>(e.charCodeAt(t)&64512)===55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t):(e,t)=>e.codePointAt(t);E2t=A2t(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),y2t=A2t(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))});function Inn(e,t){return t.treeAdapter.isElementNode(e)&&t.treeAdapter.getNamespaceURI(e)===Ve.HTML&&bnn.has(t.treeAdapter.getTagName(e))}function Dbe(e,t){let r={...Rnn,...t};return S2t(e,r)}function Cnn(e,t){let r="",n=t.treeAdapter.isElementNode(e)&&t.treeAdapter.getTagName(e)===Ce.TEMPLATE&&t.treeAdapter.getNamespaceURI(e)===Ve.HTML?t.treeAdapter.getTemplateContent(e):e,s=t.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=S2t(i,t);return r}function S2t(e,t){return t.treeAdapter.isElementNode(e)?xnn(e,t):t.treeAdapter.isTextNode(e)?Nnn(e,t):t.treeAdapter.isCommentNode(e)?Onn(e,t):t.treeAdapter.isDocumentTypeNode(e)?Dnn(e,t):""}function xnn(e,t){let r=t.treeAdapter.getTagName(e);return`<${r}${wnn(e,t)}>${Inn(e,t)?"":`${Cnn(e,t)}`}`}function wnn(e,{treeAdapter:t}){let r="";for(let n of t.getAttrList(e)){if(r+=" ",n.namespace)switch(n.namespace){case Ve.XML:{r+=`xml:${n.name}`;break}case Ve.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ve.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${E2t(n.value)}"`}return r}function Nnn(e,t){let{treeAdapter:r}=t,n=r.getTextNodeContent(e),s=r.getParentNode(e),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ve.HTML&&ybe(i,t.scriptingEnabled)?n:y2t(n)}function Onn(e,{treeAdapter:t}){return``}function Dnn(e,{treeAdapter:t}){return``}var bnn,Rnn,T2t=ie(()=>{Dg();v2t();YV();bnn=new Set([Ce.AREA,Ce.BASE,Ce.BASEFONT,Ce.BGSOUND,Ce.BR,Ce.COL,Ce.EMBED,Ce.FRAME,Ce.HR,Ce.IMG,Ce.INPUT,Ce.KEYGEN,Ce.LINK,Ce.META,Ce.PARAM,Ce.SOURCE,Ce.TRACK,Ce.WBR]);Rnn={treeAdapter:Wd,scriptingEnabled:!0}});function b2t(e,t){return JC.parse(e,t)}function I2t(e,t,r){typeof e=="string"&&(r=t,t=e,e=null);let n=JC.getFragmentParser(e,r);return n.tokenizer.write(t,!0),n.getFragment()}var Pbe=ie(()=>{Obe();YV();Obe();T2t();Jk();bbe();Dg();$V();vbe()});function R2t(e){let t=e.includes('"')?"'":'"';return t+e+t}function Pnn(e,t,r){let n="!DOCTYPE ";return e&&(n+=e),t?n+=` PUBLIC ${R2t(t)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${R2t(r)}`),n}var Pg,C2t=ie(()=>{Pbe();rc();Pg={isCommentNode:yT,isElementNode:It,isTextNode:zu,createDocument(){let e=new Ul([]);return e["x-mode"]=VV.DOCUMENT_MODE.NO_QUIRKS,e},createDocumentFragment(){return new Ul([])},createElement(e,t,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;otV(a)&&a.name==="!doctype");i?i.data=s??null:(i=new AT("!doctype",s),Pg.appendChild(e,i)),i["x-name"]=t,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(e,t){e["x-mode"]=t},getDocumentMode(e){return e["x-mode"]},detachNode(e){if(e.parent){let t=e.parent.children.indexOf(e),{prev:r,next:n}=e;e.prev=null,e.next=null,r&&(r.next=n),n&&(n.prev=r),e.parent.children.splice(t,1),e.parent=null}},insertText(e,t){let r=e.children[e.children.length-1];r&&zu(r)?r.data+=t:Pg.appendChild(e,Pg.createTextNode(t))},insertTextBefore(e,t,r){let n=e.children[e.children.indexOf(r)-1];n&&zu(n)?n.data+=t:Pg.insertBefore(e,Pg.createTextNode(t),r)},adoptAttributes(e,t){for(let r=0;r{rc();Pbe();C2t();Lnn={treeAdapter:Pg}});function Lg(e){return e===pt.Space||e===pt.NewLine||e===pt.Tab||e===pt.FormFeed||e===pt.CarriageReturn}function n7(e){return e===pt.Slash||e===pt.Gt||Lg(e)}function O2t(e){return e>=pt.Zero&&e<=pt.Nine}function Mnn(e){return e>=pt.LowerA&&e<=pt.LowerZ||e>=pt.UpperA&&e<=pt.UpperZ}function knn(e){return e>=pt.UpperA&&e<=pt.UpperF||e>=pt.LowerA&&e<=pt.LowerF}var pt,Ke,p0,Xu,ex,Lbe=ie(()=>{qk();(function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"})(pt||(pt={}));(function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"})(Ke||(Ke={}));(function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"})(p0||(p0={}));Xu={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},ex=class{constructor({xmlMode:t=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=Ke.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ke.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=t,this.decodeEntities=r,this.entityTrie=t?nV:rV}reset(){this.state=Ke.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ke.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(t){this.offset+=this.buffer.length,this.buffer=t,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=Ke.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&t===pt.Amp&&(this.state=Ke.BeforeEntity)}stateSpecialStartSequence(t){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?n7(t):(t|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=Ke.InTagName,this.stateInTagName(t)}stateInSpecialTag(t){if(this.sequenceIndex===this.currentSequence.length){if(t===pt.Gt||Lg(t)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&t!==pt.Semi)this.trieIndex+=n;else{let s=this.index-this.entityExcess+1;s>this.sectionStart&&this.emitPartial(this.sectionStart,s),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,n===0&&this.emitNamedEntity()}}}emitNamedEntity(){if(this.state=this.baseState,this.entityResult===0)return;switch((this.entityTrie[this.entityResult]&Gd.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~Gd.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(t){(t|32)===pt.LowerX?(this.entityExcess++,this.state=Ke.InHexEntity):(this.state=Ke.InNumericEntity,this.stateInNumericEntity(t))}emitNumericEntity(t){let r=this.index-this.entityExcess-1;r+2+ +(this.state===Ke.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(t),this.emitCodePoint($k(this.entityResult))),this.state=this.baseState}stateInNumericEntity(t){t===pt.Semi?this.emitNumericEntity(!0):O2t(t)?(this.entityResult=this.entityResult*10+(t-pt.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(t){t===pt.Semi?this.emitNumericEntity(!0):O2t(t)?(this.entityResult=this.entityResult*16+(t-pt.Zero),this.entityExcess++):knn(t)?(this.entityResult=this.entityResult*16+((t|32)-pt.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===Ke.Text||this.baseState===Ke.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===Ke.Text||this.state===Ke.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===Ke.InAttributeValueDq||this.state===Ke.InAttributeValueSq||this.state===Ke.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index{Lbe();qk();tx=new Set(["input","option","optgroup","select","button","datalist","textarea"]),gs=new Set(["p"]),D2t=new Set(["thead","tbody"]),P2t=new Set(["dd","dt"]),L2t=new Set(["rt","rp"]),Bnn=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",gs],["h1",gs],["h2",gs],["h3",gs],["h4",gs],["h5",gs],["h6",gs],["select",tx],["input",tx],["output",tx],["button",tx],["datalist",tx],["textarea",tx],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",P2t],["dt",P2t],["address",gs],["article",gs],["aside",gs],["blockquote",gs],["details",gs],["div",gs],["dl",gs],["fieldset",gs],["figcaption",gs],["figure",gs],["footer",gs],["form",gs],["header",gs],["hr",gs],["main",gs],["nav",gs],["ol",gs],["pre",gs],["section",gs],["table",gs],["ul",gs],["rt",L2t],["rp",L2t],["tbody",D2t],["tfoot",D2t]]),Unn=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),M2t=new Set(["math","svg"]),k2t=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),Fnn=/\s|\//,l4=class{constructor(t,r={}){var n,s,i,a,o;this.options=r,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=t??{},this.lowerCaseTagNames=(n=r.lowerCaseTags)!==null&&n!==void 0?n:!r.xmlMode,this.lowerCaseAttributeNames=(s=r.lowerCaseAttributeNames)!==null&&s!==void 0?s:!r.xmlMode,this.tokenizer=new((i=r.Tokenizer)!==null&&i!==void 0?i:ex)(this.options,this),(o=(a=this.cbs).onparserinit)===null||o===void 0||o.call(a,this)}ontext(t,r){var n,s;let i=this.getSlice(t,r);this.endIndex=r-1,(s=(n=this.cbs).ontext)===null||s===void 0||s.call(n,i),this.startIndex=r}ontextentity(t){var r,n;let s=this.tokenizer.getSectionStart();this.endIndex=s-1,(n=(r=this.cbs).ontext)===null||n===void 0||n.call(r,UC(t)),this.startIndex=s}isVoidElement(t){return!this.options.xmlMode&&Unn.has(t)}onopentagname(t,r){this.endIndex=r;let n=this.getSlice(t,r);this.lowerCaseTagNames&&(n=n.toLowerCase()),this.emitOpenTag(n)}emitOpenTag(t){var r,n,s,i;this.openTagStart=this.startIndex,this.tagname=t;let a=!this.options.xmlMode&&Bnn.get(t);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){let o=this.stack.pop();(n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,o,!0)}this.isVoidElement(t)||(this.stack.push(t),M2t.has(t)?this.foreignContext.push(!0):k2t.has(t)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,t),this.cbs.onopentag&&(this.attribs={})}endOpenTag(t){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,t),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(t){this.endIndex=t,this.endOpenTag(!1),this.startIndex=t+1}onclosetag(t,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(t,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(M2t.has(u)||k2t.has(u))&&this.foreignContext.pop(),this.isVoidElement(u))!this.options.xmlMode&&u==="br"&&((s=(n=this.cbs).onopentagname)===null||s===void 0||s.call(n,"br"),(a=(i=this.cbs).onopentag)===null||a===void 0||a.call(i,"br",{},!0),(c=(o=this.cbs).onclosetag)===null||c===void 0||c.call(o,"br",!1));else{let l=this.stack.lastIndexOf(u);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&u==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(t){this.endIndex=t,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=t+1):this.onopentagend(t)}closeCurrentTag(t){var r,n;let s=this.tagname;this.endOpenTag(t),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!t),this.stack.pop())}onattribname(t,r){this.startIndex=t;let n=this.getSlice(t,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(t,r){this.attribvalue+=this.getSlice(t,r)}onattribentity(t){this.attribvalue+=UC(t)}onattribend(t,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,t===p0.Double?'"':t===p0.Single?"'":t===p0.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(t){let r=t.search(Fnn),n=r<0?t:t.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(t,r){this.endIndex=r;let n=this.getSlice(t,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(t,r){this.endIndex=r;let n=this.getSlice(t,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(t,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(t,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(t,r,n){var s,i,a,o,c,u,l,d,f,h;this.endIndex=r;let p=this.getSlice(t,r-n);this.options.xmlMode||this.options.recognizeCDATA?((i=(s=this.cbs).oncdatastart)===null||i===void 0||i.call(s),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,p),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${p}]]`),(h=(f=this.cbs).oncommentend)===null||h===void 0||h.call(f)),this.startIndex=r+1}onend(){var t,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(t=this.cbs).onend)===null||r===void 0||r.call(t)}reset(){var t,r,n,s;(r=(t=this.cbs).onreset)===null||r===void 0||r.call(t),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(s=(n=this.cbs).onparserinit)===null||s===void 0||s.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(t){this.reset(),this.end(t)}getSlice(t,r){for(;t-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(t-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(t){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(t),this.tokenizer.running&&(this.tokenizer.write(t),this.writeIndex++)}end(t){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}t&&this.write(t),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{Mbe();Mbe();rc();rc();Lbe();MC();l0();l0();l0()});var $nn,Xt,CT,iTs,aTs,oTs,cTs,Xd=ie(()=>{Ewt();IOt();ube();N2t();bTe();U2t();ST();ST();$nn=hOt((e,t,r,n)=>t.xmlMode||t._useHtmlParser2?B2t(e,t):x2t(e,t,r,n)),Xt=bOt($nn,(e,t)=>t.xmlMode||t._useHtmlParser2?uV(e,t):w2t(e)),CT=Xt([]),{contains:iTs}=AE,{merge:aTs}=AE,{parseHTML:oTs}=AE,{root:cTs}=AE});var rn=S((s7,$2t)=>{(function(e,t){typeof s7=="object"?$2t.exports=s7=t():typeof define=="function"&&define.amd?define([],t):e.CryptoJS=t()})(s7,function(){var e=e||function(t,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var s=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},i=Object.create||function(){function _(){}return function(y){var A;return _.prototype=y,A=new _,_.prototype=null,A}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(_){var y=i(this);return _&&y.mixIn(_),(!y.hasOwnProperty("init")||this.init===y.init)&&(y.init=function(){y.$super.init.apply(this,arguments)}),y.init.prototype=y,y.$super=this,y},create:function(){var _=this.extend();return _.init.apply(_,arguments),_},init:function(){},mixIn:function(_){for(var y in _)_.hasOwnProperty(y)&&(this[y]=_[y]);_.hasOwnProperty("toString")&&(this.toString=_.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(_,y){_=this.words=_||[],y!=r?this.sigBytes=y:this.sigBytes=_.length*4},toString:function(_){return(_||d).stringify(this)},concat:function(_){var y=this.words,A=_.words,E=this.sigBytes,v=_.sigBytes;if(this.clamp(),E%4)for(var b=0;b>>2]>>>24-b%4*8&255;y[E+b>>>2]|=I<<24-(E+b)%4*8}else for(var T=0;T>>2]=A[T>>>2];return this.sigBytes+=v,this},clamp:function(){var _=this.words,y=this.sigBytes;_[y>>>2]&=4294967295<<32-y%4*8,_.length=t.ceil(y/4)},clone:function(){var _=c.clone.call(this);return _.words=this.words.slice(0),_},random:function(_){for(var y=[],A=0;A<_;A+=4)y.push(s());return new u.init(y,_)}}),l=a.enc={},d=l.Hex={stringify:function(_){for(var y=_.words,A=_.sigBytes,E=[],v=0;v>>2]>>>24-v%4*8&255;E.push((b>>>4).toString(16)),E.push((b&15).toString(16))}return E.join("")},parse:function(_){for(var y=_.length,A=[],E=0;E>>3]|=parseInt(_.substr(E,2),16)<<24-E%8*4;return new u.init(A,y/2)}},f=l.Latin1={stringify:function(_){for(var y=_.words,A=_.sigBytes,E=[],v=0;v>>2]>>>24-v%4*8&255;E.push(String.fromCharCode(b))}return E.join("")},parse:function(_){for(var y=_.length,A=[],E=0;E>>2]|=(_.charCodeAt(E)&255)<<24-E%4*8;return new u.init(A,y)}},h=l.Utf8={stringify:function(_){try{return decodeURIComponent(escape(f.stringify(_)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(_){return f.parse(unescape(encodeURIComponent(_)))}},p=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(_){typeof _=="string"&&(_=h.parse(_)),this._data.concat(_),this._nDataBytes+=_.sigBytes},_process:function(_){var y,A=this._data,E=A.words,v=A.sigBytes,b=this.blockSize,I=b*4,T=v/I;_?T=t.ceil(T):T=t.max((T|0)-this._minBufferSize,0);var x=T*b,w=t.min(x*4,v);if(x){for(var D=0;D{(function(e,t){typeof i7=="object"?q2t.exports=i7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(i7,function(e){return function(t){var r=e,n=r.lib,s=n.Base,i=n.WordArray,a=r.x64={},o=a.Word=s.extend({init:function(u,l){this.high=u,this.low=l}}),c=a.WordArray=s.extend({init:function(u,l){u=this.words=u||[],l!=t?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f{(function(e,t){typeof a7=="object"?H2t.exports=a7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(a7,function(e){return function(){if(typeof ArrayBuffer=="function"){var t=e,r=t.lib,n=r.WordArray,s=n.init,i=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,c=[],u=0;u>>2]|=a[u]<<24-u%4*8;s.call(this,c,o)}else s.apply(this,arguments)};i.prototype=n}}(),e.lib.WordArray})});var K2t=S((o7,j2t)=>{(function(e,t){typeof o7=="object"?j2t.exports=o7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(o7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.enc,i=s.Utf16=s.Utf16BE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535;l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=o.charCodeAt(l)<<16-l%2*16;return n.create(u,c*2)}};s.Utf16LE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535);l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=a(o.charCodeAt(l)<<16-l%2*16);return n.create(u,c*2)}};function a(o){return o<<8&4278255360|o>>>8&16711935}}(),e.enc.Utf16})});var RE=S((c7,G2t)=>{(function(e,t){typeof c7=="object"?G2t.exports=c7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(c7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.enc,i=s.Base64={stringify:function(o){var c=o.words,u=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f>>2]>>>24-f%4*8&255,p=c[f+1>>>2]>>>24-(f+1)%4*8&255,m=c[f+2>>>2]>>>24-(f+2)%4*8&255,g=h<<16|p<<8|m,_=0;_<4&&f+_*.75>>6*(3-_)&63));var y=l.charAt(64);if(y)for(;d.length%4;)d.push(y);return d.join("")},parse:function(o){var c=o.length,u=this._map,l=this._reverseMap;if(!l){l=this._reverseMap=[];for(var d=0;d>>6-f%4*2,m=h|p;l[d>>>2]|=m<<24-d%4*8,d++}return n.create(l,d)}}(),e.enc.Base64})});var Y2t=S((u7,z2t)=>{(function(e,t){typeof u7=="object"?z2t.exports=u7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(u7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.enc,i=s.Base64url={stringify:function(o,c){c===void 0&&(c=!0);var u=o.words,l=o.sigBytes,d=c?this._safe_map:this._map;o.clamp();for(var f=[],h=0;h>>2]>>>24-h%4*8&255,m=u[h+1>>>2]>>>24-(h+1)%4*8&255,g=u[h+2>>>2]>>>24-(h+2)%4*8&255,_=p<<16|m<<8|g,y=0;y<4&&h+y*.75>>6*(3-y)&63));var A=d.charAt(64);if(A)for(;f.length%4;)f.push(A);return f.join("")},parse:function(o,c){c===void 0&&(c=!0);var u=o.length,l=c?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f>>6-f%4*2,m=h|p;l[d>>>2]|=m<<24-d%4*8,d++}return n.create(l,d)}}(),e.enc.Base64url})});var CE=S((l7,Q2t)=>{(function(e,t){typeof l7=="object"?Q2t.exports=l7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(l7,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var h=0;h<64;h++)o[h]=t.abs(t.sin(h+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(h,p){for(var m=0;m<16;m++){var g=p+m,_=h[g];h[g]=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360}var y=this._hash.words,A=h[p+0],E=h[p+1],v=h[p+2],b=h[p+3],I=h[p+4],T=h[p+5],x=h[p+6],w=h[p+7],D=h[p+8],M=h[p+9],L=h[p+10],U=h[p+11],G=h[p+12],$=h[p+13],K=h[p+14],ee=h[p+15],z=y[0],oe=y[1],le=y[2],te=y[3];z=u(z,oe,le,te,A,7,o[0]),te=u(te,z,oe,le,E,12,o[1]),le=u(le,te,z,oe,v,17,o[2]),oe=u(oe,le,te,z,b,22,o[3]),z=u(z,oe,le,te,I,7,o[4]),te=u(te,z,oe,le,T,12,o[5]),le=u(le,te,z,oe,x,17,o[6]),oe=u(oe,le,te,z,w,22,o[7]),z=u(z,oe,le,te,D,7,o[8]),te=u(te,z,oe,le,M,12,o[9]),le=u(le,te,z,oe,L,17,o[10]),oe=u(oe,le,te,z,U,22,o[11]),z=u(z,oe,le,te,G,7,o[12]),te=u(te,z,oe,le,$,12,o[13]),le=u(le,te,z,oe,K,17,o[14]),oe=u(oe,le,te,z,ee,22,o[15]),z=l(z,oe,le,te,E,5,o[16]),te=l(te,z,oe,le,x,9,o[17]),le=l(le,te,z,oe,U,14,o[18]),oe=l(oe,le,te,z,A,20,o[19]),z=l(z,oe,le,te,T,5,o[20]),te=l(te,z,oe,le,L,9,o[21]),le=l(le,te,z,oe,ee,14,o[22]),oe=l(oe,le,te,z,I,20,o[23]),z=l(z,oe,le,te,M,5,o[24]),te=l(te,z,oe,le,K,9,o[25]),le=l(le,te,z,oe,b,14,o[26]),oe=l(oe,le,te,z,D,20,o[27]),z=l(z,oe,le,te,$,5,o[28]),te=l(te,z,oe,le,v,9,o[29]),le=l(le,te,z,oe,w,14,o[30]),oe=l(oe,le,te,z,G,20,o[31]),z=d(z,oe,le,te,T,4,o[32]),te=d(te,z,oe,le,D,11,o[33]),le=d(le,te,z,oe,U,16,o[34]),oe=d(oe,le,te,z,K,23,o[35]),z=d(z,oe,le,te,E,4,o[36]),te=d(te,z,oe,le,I,11,o[37]),le=d(le,te,z,oe,w,16,o[38]),oe=d(oe,le,te,z,L,23,o[39]),z=d(z,oe,le,te,$,4,o[40]),te=d(te,z,oe,le,A,11,o[41]),le=d(le,te,z,oe,b,16,o[42]),oe=d(oe,le,te,z,x,23,o[43]),z=d(z,oe,le,te,M,4,o[44]),te=d(te,z,oe,le,G,11,o[45]),le=d(le,te,z,oe,ee,16,o[46]),oe=d(oe,le,te,z,v,23,o[47]),z=f(z,oe,le,te,A,6,o[48]),te=f(te,z,oe,le,w,10,o[49]),le=f(le,te,z,oe,K,15,o[50]),oe=f(oe,le,te,z,T,21,o[51]),z=f(z,oe,le,te,G,6,o[52]),te=f(te,z,oe,le,b,10,o[53]),le=f(le,te,z,oe,L,15,o[54]),oe=f(oe,le,te,z,E,21,o[55]),z=f(z,oe,le,te,D,6,o[56]),te=f(te,z,oe,le,ee,10,o[57]),le=f(le,te,z,oe,x,15,o[58]),oe=f(oe,le,te,z,$,21,o[59]),z=f(z,oe,le,te,I,6,o[60]),te=f(te,z,oe,le,U,10,o[61]),le=f(le,te,z,oe,v,15,o[62]),oe=f(oe,le,te,z,M,21,o[63]),y[0]=y[0]+z|0,y[1]=y[1]+oe|0,y[2]=y[2]+le|0,y[3]=y[3]+te|0},_doFinalize:function(){var h=this._data,p=h.words,m=this._nDataBytes*8,g=h.sigBytes*8;p[g>>>5]|=128<<24-g%32;var _=t.floor(m/4294967296),y=m;p[(g+64>>>9<<4)+15]=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,p[(g+64>>>9<<4)+14]=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,h.sigBytes=(p.length+1)*4,this._process();for(var A=this._hash,E=A.words,v=0;v<4;v++){var b=E[v];E[v]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360}return A},clone:function(){var h=i.clone.call(this);return h._hash=this._hash.clone(),h}});function u(h,p,m,g,_,y,A){var E=h+(p&m|~p&g)+_+A;return(E<>>32-y)+p}function l(h,p,m,g,_,y,A){var E=h+(p&g|m&~g)+_+A;return(E<>>32-y)+p}function d(h,p,m,g,_,y,A){var E=h+(p^m^g)+_+A;return(E<>>32-y)+p}function f(h,p,m,g,_,y,A){var E=h+(m^(p|~g))+_+A;return(E<>>32-y)+p}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),e.MD5})});var kbe=S((d7,W2t)=>{(function(e,t){typeof d7=="object"?W2t.exports=d7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(d7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=r.Hasher,i=t.algo,a=[],o=i.SHA1=s.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(c,u){for(var l=this._hash.words,d=l[0],f=l[1],h=l[2],p=l[3],m=l[4],g=0;g<80;g++){if(g<16)a[g]=c[u+g]|0;else{var _=a[g-3]^a[g-8]^a[g-14]^a[g-16];a[g]=_<<1|_>>>31}var y=(d<<5|d>>>27)+m+a[g];g<20?y+=(f&h|~f&p)+1518500249:g<40?y+=(f^h^p)+1859775393:g<60?y+=(f&h|f&p|h&p)-1894007588:y+=(f^h^p)-899497514,m=p,p=h,h=f<<30|f>>>2,f=d,d=y}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+h|0,l[3]=l[3]+p|0,l[4]=l[4]+m|0},_doFinalize:function(){var c=this._data,u=c.words,l=this._nDataBytes*8,d=c.sigBytes*8;return u[d>>>5]|=128<<24-d%32,u[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),u[(d+64>>>9<<4)+15]=l,c.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var c=s.clone.call(this);return c._hash=this._hash.clone(),c}});t.SHA1=s._createHelper(o),t.HmacSHA1=s._createHmacHelper(o)}(),e.SHA1})});var h7=S((f7,X2t)=>{(function(e,t){typeof f7=="object"?X2t.exports=f7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(f7,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(m){for(var g=t.sqrt(m),_=2;_<=g;_++)if(!(m%_))return!1;return!0}function f(m){return(m-(m|0))*4294967296|0}for(var h=2,p=0;p<64;)d(h)&&(p<8&&(o[p]=f(t.pow(h,1/2))),c[p]=f(t.pow(h,1/3)),p++),h++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var h=this._hash.words,p=h[0],m=h[1],g=h[2],_=h[3],y=h[4],A=h[5],E=h[6],v=h[7],b=0;b<64;b++){if(b<16)u[b]=d[f+b]|0;else{var I=u[b-15],T=(I<<25|I>>>7)^(I<<14|I>>>18)^I>>>3,x=u[b-2],w=(x<<15|x>>>17)^(x<<13|x>>>19)^x>>>10;u[b]=T+u[b-7]+w+u[b-16]}var D=y&A^~y&E,M=p&m^p&g^m&g,L=(p<<30|p>>>2)^(p<<19|p>>>13)^(p<<10|p>>>22),U=(y<<26|y>>>6)^(y<<21|y>>>11)^(y<<7|y>>>25),G=v+U+D+c[b]+u[b],$=L+M;v=E,E=A,A=y,y=_+G|0,_=g,g=m,m=p,p=G+$|0}h[0]=h[0]+p|0,h[1]=h[1]+m|0,h[2]=h[2]+g|0,h[3]=h[3]+_|0,h[4]=h[4]+y|0,h[5]=h[5]+A|0,h[6]=h[6]+E|0,h[7]=h[7]+v|0},_doFinalize:function(){var d=this._data,f=d.words,h=this._nDataBytes*8,p=d.sigBytes*8;return f[p>>>5]|=128<<24-p%32,f[(p+64>>>9<<4)+14]=t.floor(h/4294967296),f[(p+64>>>9<<4)+15]=h,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=i.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=i._createHelper(l),r.HmacSHA256=i._createHmacHelper(l)}(Math),e.SHA256})});var Z2t=S((p7,J2t)=>{(function(e,t,r){typeof p7=="object"?J2t.exports=p7=t(rn(),h7()):typeof define=="function"&&define.amd?define(["./core","./sha256"],t):t(e.CryptoJS)})(p7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=t.algo,i=s.SHA256,a=s.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=i._doFinalize.call(this);return o.sigBytes-=4,o}});t.SHA224=i._createHelper(a),t.HmacSHA224=i._createHmacHelper(a)}(),e.SHA224})});var Bbe=S((m7,eDt)=>{(function(e,t,r){typeof m7=="object"?eDt.exports=m7=t(rn(),d4()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],t):t(e.CryptoJS)})(m7,function(e){return function(){var t=e,r=t.lib,n=r.Hasher,s=t.x64,i=s.Word,a=s.WordArray,o=t.algo;function c(){return i.create.apply(i,arguments)}var u=[c(1116352408,3609767458),c(1899447441,602891725),c(3049323471,3964484399),c(3921009573,2173295548),c(961987163,4081628472),c(1508970993,3053834265),c(2453635748,2937671579),c(2870763221,3664609560),c(3624381080,2734883394),c(310598401,1164996542),c(607225278,1323610764),c(1426881987,3590304994),c(1925078388,4068182383),c(2162078206,991336113),c(2614888103,633803317),c(3248222580,3479774868),c(3835390401,2666613458),c(4022224774,944711139),c(264347078,2341262773),c(604807628,2007800933),c(770255983,1495990901),c(1249150122,1856431235),c(1555081692,3175218132),c(1996064986,2198950837),c(2554220882,3999719339),c(2821834349,766784016),c(2952996808,2566594879),c(3210313671,3203337956),c(3336571891,1034457026),c(3584528711,2466948901),c(113926993,3758326383),c(338241895,168717936),c(666307205,1188179964),c(773529912,1546045734),c(1294757372,1522805485),c(1396182291,2643833823),c(1695183700,2343527390),c(1986661051,1014477480),c(2177026350,1206759142),c(2456956037,344077627),c(2730485921,1290863460),c(2820302411,3158454273),c(3259730800,3505952657),c(3345764771,106217008),c(3516065817,3606008344),c(3600352804,1432725776),c(4094571909,1467031594),c(275423344,851169720),c(430227734,3100823752),c(506948616,1363258195),c(659060556,3750685593),c(883997877,3785050280),c(958139571,3318307427),c(1322822218,3812723403),c(1537002063,2003034995),c(1747873779,3602036899),c(1955562222,1575990012),c(2024104815,1125592928),c(2227730452,2716904306),c(2361852424,442776044),c(2428436474,593698344),c(2756734187,3733110249),c(3204031479,2999351573),c(3329325298,3815920427),c(3391569614,3928383900),c(3515267271,566280711),c(3940187606,3454069534),c(4118630271,4000239992),c(116418474,1914138554),c(174292421,2731055270),c(289380356,3203993006),c(460393269,320620315),c(685471733,587496836),c(852142971,1086792851),c(1017036298,365543100),c(1126000580,2618297676),c(1288033470,3409855158),c(1501505948,4234509866),c(1607167915,987167468),c(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=c()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(f,h){for(var p=this._hash.words,m=p[0],g=p[1],_=p[2],y=p[3],A=p[4],E=p[5],v=p[6],b=p[7],I=m.high,T=m.low,x=g.high,w=g.low,D=_.high,M=_.low,L=y.high,U=y.low,G=A.high,$=A.low,K=E.high,ee=E.low,z=v.high,oe=v.low,le=b.high,te=b.low,Q=I,Z=T,de=x,B=w,k=D,W=M,P=L,H=U,j=G,q=$,Y=K,X=ee,ae=z,ne=oe,se=le,J=te,ce=0;ce<80;ce++){var ge,be,Te=l[ce];if(ce<16)be=Te.high=f[h+ce*2]|0,ge=Te.low=f[h+ce*2+1]|0;else{var xe=l[ce-15],Fe=xe.high,Ee=xe.low,me=(Fe>>>1|Ee<<31)^(Fe>>>8|Ee<<24)^Fe>>>7,Ae=(Ee>>>1|Fe<<31)^(Ee>>>8|Fe<<24)^(Ee>>>7|Fe<<25),pe=l[ce-2],Se=pe.high,Ie=pe.low,Le=(Se>>>19|Ie<<13)^(Se<<3|Ie>>>29)^Se>>>6,we=(Ie>>>19|Se<<13)^(Ie<<3|Se>>>29)^(Ie>>>6|Se<<26),He=l[ce-7],Ge=He.high,ke=He.low,Qe=l[ce-16],Rt=Qe.high,ze=Qe.low;ge=Ae+ke,be=me+Ge+(ge>>>0>>0?1:0),ge=ge+we,be=be+Le+(ge>>>0>>0?1:0),ge=ge+ze,be=be+Rt+(ge>>>0>>0?1:0),Te.high=be,Te.low=ge}var ot=j&Y^~j&ae,lt=q&X^~q&ne,At=Q&de^Q&k^de&k,gr=Z&B^Z&W^B&W,Vt=(Q>>>28|Z<<4)^(Q<<30|Z>>>2)^(Q<<25|Z>>>7),it=(Z>>>28|Q<<4)^(Z<<30|Q>>>2)^(Z<<25|Q>>>7),vt=(j>>>14|q<<18)^(j>>>18|q<<14)^(j<<23|q>>>9),bs=(q>>>14|j<<18)^(q>>>18|j<<14)^(q<<23|j>>>9),Un=u[ce],Ls=Un.high,Vs=Un.low,Fn=J+bs,lo=se+vt+(Fn>>>0>>0?1:0),Fn=Fn+lt,lo=lo+ot+(Fn>>>0>>0?1:0),Fn=Fn+Vs,lo=lo+Ls+(Fn>>>0>>0?1:0),Fn=Fn+ge,lo=lo+be+(Fn>>>0>>0?1:0),yl=it+gr,Lo=Vt+At+(yl>>>0>>0?1:0);se=ae,J=ne,ae=Y,ne=X,Y=j,X=q,q=H+Fn|0,j=P+lo+(q>>>0>>0?1:0)|0,P=k,H=W,k=de,W=B,de=Q,B=Z,Z=Fn+yl|0,Q=lo+Lo+(Z>>>0>>0?1:0)|0}T=m.low=T+Z,m.high=I+Q+(T>>>0>>0?1:0),w=g.low=w+B,g.high=x+de+(w>>>0>>0?1:0),M=_.low=M+W,_.high=D+k+(M>>>0>>0?1:0),U=y.low=U+H,y.high=L+P+(U>>>0>>0?1:0),$=A.low=$+q,A.high=G+j+($>>>0>>0?1:0),ee=E.low=ee+X,E.high=K+Y+(ee>>>0>>0?1:0),oe=v.low=oe+ne,v.high=z+ae+(oe>>>0>>0?1:0),te=b.low=te+J,b.high=le+se+(te>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,h=f.words,p=this._nDataBytes*8,m=f.sigBytes*8;h[m>>>5]|=128<<24-m%32,h[(m+128>>>10<<5)+30]=Math.floor(p/4294967296),h[(m+128>>>10<<5)+31]=p,f.sigBytes=h.length*4,this._process();var g=this._hash.toX32();return g},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});t.SHA512=n._createHelper(d),t.HmacSHA512=n._createHmacHelper(d)}(),e.SHA512})});var rDt=S((g7,tDt)=>{(function(e,t,r){typeof g7=="object"?tDt.exports=g7=t(rn(),d4(),Bbe()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],t):t(e.CryptoJS)})(g7,function(e){return function(){var t=e,r=t.x64,n=r.Word,s=r.WordArray,i=t.algo,a=i.SHA512,o=i.SHA384=a.extend({_doReset:function(){this._hash=new s.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var c=a._doFinalize.call(this);return c.sigBytes-=16,c}});t.SHA384=a._createHelper(o),t.HmacSHA384=a._createHmacHelper(o)}(),e.SHA384})});var sDt=S((_7,nDt)=>{(function(e,t,r){typeof _7=="object"?nDt.exports=_7=t(rn(),d4()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],t):t(e.CryptoJS)})(_7,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var p=1,m=0,g=0;g<24;g++){u[p+5*m]=(g+1)*(g+2)/2%64;var _=m%5,y=(2*p+3*m)%5;p=_,m=y}for(var p=0;p<5;p++)for(var m=0;m<5;m++)l[p+5*m]=m+(2*p+3*m)%5*5;for(var A=1,E=0;E<24;E++){for(var v=0,b=0,I=0;I<7;I++){if(A&1){var T=(1<>>24)&16711935|(A<<24|A>>>8)&4278255360,E=(E<<8|E>>>24)&16711935|(E<<24|E>>>8)&4278255360;var v=g[y];v.high^=E,v.low^=A}for(var b=0;b<24;b++){for(var I=0;I<5;I++){for(var T=0,x=0,w=0;w<5;w++){var v=g[I+5*w];T^=v.high,x^=v.low}var D=f[I];D.high=T,D.low=x}for(var I=0;I<5;I++)for(var M=f[(I+4)%5],L=f[(I+1)%5],U=L.high,G=L.low,T=M.high^(U<<1|G>>>31),x=M.low^(G<<1|U>>>31),w=0;w<5;w++){var v=g[I+5*w];v.high^=T,v.low^=x}for(var $=1;$<25;$++){var T,x,v=g[$],K=v.high,ee=v.low,z=u[$];z<32?(T=K<>>32-z,x=ee<>>32-z):(T=ee<>>64-z,x=K<>>64-z);var oe=f[l[$]];oe.high=T,oe.low=x}var le=f[0],te=g[0];le.high=te.high,le.low=te.low;for(var I=0;I<5;I++)for(var w=0;w<5;w++){var $=I+5*w,v=g[$],Q=f[$],Z=f[(I+1)%5+5*w],de=f[(I+2)%5+5*w];v.high=Q.high^~Z.high&de.high,v.low=Q.low^~Z.low&de.low}var v=g[0],B=d[b];v.high^=B.high,v.low^=B.low}},_doFinalize:function(){var p=this._data,m=p.words,g=this._nDataBytes*8,_=p.sigBytes*8,y=this.blockSize*32;m[_>>>5]|=1<<24-_%32,m[(t.ceil((_+1)/y)*y>>>5)-1]|=128,p.sigBytes=m.length*4,this._process();for(var A=this._state,E=this.cfg.outputLength/8,v=E/8,b=[],I=0;I>>24)&16711935|(x<<24|x>>>8)&4278255360,w=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360,b.push(w),b.push(x)}return new s.init(b,E)},clone:function(){for(var p=i.clone.call(this),m=p._state=this._state.slice(0),g=0;g<25;g++)m[g]=m[g].clone();return p}});r.SHA3=i._createHelper(h),r.HmacSHA3=i._createHmacHelper(h)}(Math),e.SHA3})});var aDt=S((A7,iDt)=>{(function(e,t){typeof A7=="object"?iDt.exports=A7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(A7,function(e){return function(t){var r=e,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=s.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=s.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=s.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=s.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=s.create([0,1518500249,1859775393,2400959708,2840853838]),f=s.create([1352829926,1548603684,1836072691,2053994217,0]),h=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(E,v){for(var b=0;b<16;b++){var I=v+b,T=E[I];E[I]=(T<<8|T>>>24)&16711935|(T<<24|T>>>8)&4278255360}var x=this._hash.words,w=d.words,D=f.words,M=o.words,L=c.words,U=u.words,G=l.words,$,K,ee,z,oe,le,te,Q,Z,de;le=$=x[0],te=K=x[1],Q=ee=x[2],Z=z=x[3],de=oe=x[4];for(var B,b=0;b<80;b+=1)B=$+E[v+M[b]]|0,b<16?B+=p(K,ee,z)+w[0]:b<32?B+=m(K,ee,z)+w[1]:b<48?B+=g(K,ee,z)+w[2]:b<64?B+=_(K,ee,z)+w[3]:B+=y(K,ee,z)+w[4],B=B|0,B=A(B,U[b]),B=B+oe|0,$=oe,oe=z,z=A(ee,10),ee=K,K=B,B=le+E[v+L[b]]|0,b<16?B+=y(te,Q,Z)+D[0]:b<32?B+=_(te,Q,Z)+D[1]:b<48?B+=g(te,Q,Z)+D[2]:b<64?B+=m(te,Q,Z)+D[3]:B+=p(te,Q,Z)+D[4],B=B|0,B=A(B,G[b]),B=B+de|0,le=de,de=Z,Z=A(Q,10),Q=te,te=B;B=x[1]+ee+Z|0,x[1]=x[2]+z+de|0,x[2]=x[3]+oe+le|0,x[3]=x[4]+$+te|0,x[4]=x[0]+K+Q|0,x[0]=B},_doFinalize:function(){var E=this._data,v=E.words,b=this._nDataBytes*8,I=E.sigBytes*8;v[I>>>5]|=128<<24-I%32,v[(I+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,E.sigBytes=(v.length+1)*4,this._process();for(var T=this._hash,x=T.words,w=0;w<5;w++){var D=x[w];x[w]=(D<<8|D>>>24)&16711935|(D<<24|D>>>8)&4278255360}return T},clone:function(){var E=i.clone.call(this);return E._hash=this._hash.clone(),E}});function p(E,v,b){return E^v^b}function m(E,v,b){return E&v|~E&b}function g(E,v,b){return(E|~v)^b}function _(E,v,b){return E&b|v&~b}function y(E,v,b){return E^(v|~b)}function A(E,v){return E<>>32-v}r.RIPEMD160=i._createHelper(h),r.HmacRIPEMD160=i._createHmacHelper(h)}(Math),e.RIPEMD160})});var y7=S((E7,oDt)=>{(function(e,t){typeof E7=="object"?oDt.exports=E7=t(rn()):typeof define=="function"&&define.amd?define(["./core"],t):t(e.CryptoJS)})(E7,function(e){(function(){var t=e,r=t.lib,n=r.Base,s=t.enc,i=s.Utf8,a=t.algo,o=a.HMAC=n.extend({init:function(c,u){c=this._hasher=new c.init,typeof u=="string"&&(u=i.parse(u));var l=c.blockSize,d=l*4;u.sigBytes>d&&(u=c.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),h=this._iKey=u.clone(),p=f.words,m=h.words,g=0;g{(function(e,t,r){typeof v7=="object"?cDt.exports=v7=t(rn(),h7(),y7()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],t):t(e.CryptoJS)})(v7,function(e){return function(){var t=e,r=t.lib,n=r.Base,s=r.WordArray,i=t.algo,a=i.SHA256,o=i.HMAC,c=i.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,l){for(var d=this.cfg,f=o.create(d.hasher,u),h=s.create(),p=s.create([1]),m=h.words,g=p.words,_=d.keySize,y=d.iterations;m.length<_;){var A=f.update(l).finalize(p);f.reset();for(var E=A.words,v=E.length,b=A,I=1;I{(function(e,t,r){typeof S7=="object"?lDt.exports=S7=t(rn(),kbe(),y7()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],t):t(e.CryptoJS)})(S7,function(e){return function(){var t=e,r=t.lib,n=r.Base,s=r.WordArray,i=t.algo,a=i.MD5,o=i.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,u){for(var l,d=this.cfg,f=d.hasher.create(),h=s.create(),p=h.words,m=d.keySize,g=d.iterations;p.length{(function(e,t,r){typeof T7=="object"?dDt.exports=T7=t(rn(),Mg()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],t):t(e.CryptoJS)})(T7,function(e){e.lib.Cipher||function(t){var r=e,n=r.lib,s=n.Base,i=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,c=o.Utf8,u=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:s.extend(),createEncryptor:function(D,M){return this.create(this._ENC_XFORM_MODE,D,M)},createDecryptor:function(D,M){return this.create(this._DEC_XFORM_MODE,D,M)},init:function(D,M,L){this.cfg=this.cfg.extend(L),this._xformMode=D,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(D){return this._append(D),this._process()},finalize:function(D){D&&this._append(D);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function D(M){return typeof M=="string"?w:I}return function(M){return{encrypt:function(L,U,G){return D(U).encrypt(M,L,U,G)},decrypt:function(L,U,G){return D(U).decrypt(M,L,U,G)}}}}()}),h=n.StreamCipher=f.extend({_doFinalize:function(){var D=this._process(!0);return D},blockSize:1}),p=r.mode={},m=n.BlockCipherMode=s.extend({createEncryptor:function(D,M){return this.Encryptor.create(D,M)},createDecryptor:function(D,M){return this.Decryptor.create(D,M)},init:function(D,M){this._cipher=D,this._iv=M}}),g=p.CBC=function(){var D=m.extend();D.Encryptor=D.extend({processBlock:function(L,U){var G=this._cipher,$=G.blockSize;M.call(this,L,U,$),G.encryptBlock(L,U),this._prevBlock=L.slice(U,U+$)}}),D.Decryptor=D.extend({processBlock:function(L,U){var G=this._cipher,$=G.blockSize,K=L.slice(U,U+$);G.decryptBlock(L,U),M.call(this,L,U,$),this._prevBlock=K}});function M(L,U,G){var $,K=this._iv;K?($=K,this._iv=t):$=this._prevBlock;for(var ee=0;ee>>2]&255;D.sigBytes-=M}},A=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:g,padding:y}),reset:function(){var D;f.reset.call(this);var M=this.cfg,L=M.iv,U=M.mode;this._xformMode==this._ENC_XFORM_MODE?D=U.createEncryptor:(D=U.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==D?this._mode.init(this,L&&L.words):(this._mode=D.call(U,this,L&&L.words),this._mode.__creator=D)},_doProcessBlock:function(D,M){this._mode.processBlock(D,M)},_doFinalize:function(){var D,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),D=this._process(!0)):(D=this._process(!0),M.unpad(D)),D},blockSize:128/32}),E=n.CipherParams=s.extend({init:function(D){this.mixIn(D)},toString:function(D){return(D||this.formatter).stringify(this)}}),v=r.format={},b=v.OpenSSL={stringify:function(D){var M,L=D.ciphertext,U=D.salt;return U?M=i.create([1398893684,1701076831]).concat(U).concat(L):M=L,M.toString(u)},parse:function(D){var M,L=u.parse(D),U=L.words;return U[0]==1398893684&&U[1]==1701076831&&(M=i.create(U.slice(2,4)),U.splice(0,4),L.sigBytes-=16),E.create({ciphertext:L,salt:M})}},I=n.SerializableCipher=s.extend({cfg:s.extend({format:b}),encrypt:function(D,M,L,U){U=this.cfg.extend(U);var G=D.createEncryptor(L,U),$=G.finalize(M),K=G.cfg;return E.create({ciphertext:$,key:L,iv:K.iv,algorithm:D,mode:K.mode,padding:K.padding,blockSize:D.blockSize,formatter:U.format})},decrypt:function(D,M,L,U){U=this.cfg.extend(U),M=this._parse(M,U.format);var G=D.createDecryptor(L,U).finalize(M.ciphertext);return G},_parse:function(D,M){return typeof D=="string"?M.parse(D,this):D}}),T=r.kdf={},x=T.OpenSSL={execute:function(D,M,L,U,G){if(U||(U=i.random(64/8)),G)var $=d.create({keySize:M+L,hasher:G}).compute(D,U);else var $=d.create({keySize:M+L}).compute(D,U);var K=i.create($.words.slice(M),L*4);return $.sigBytes=M*4,E.create({key:$,iv:K,salt:U})}},w=n.PasswordBasedCipher=I.extend({cfg:I.cfg.extend({kdf:x}),encrypt:function(D,M,L,U){U=this.cfg.extend(U);var G=U.kdf.execute(L,D.keySize,D.ivSize,U.salt,U.hasher);U.iv=G.iv;var $=I.encrypt.call(this,D,M,G.key,U);return $.mixIn(G),$},decrypt:function(D,M,L,U){U=this.cfg.extend(U),M=this._parse(M,U.format);var G=U.kdf.execute(L,D.keySize,D.ivSize,M.salt,U.hasher);U.iv=G.iv;var $=I.decrypt.call(this,D,M,G.key,U);return $}})}()})});var hDt=S((b7,fDt)=>{(function(e,t,r){typeof b7=="object"?fDt.exports=b7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(b7,function(e){return e.mode.CFB=function(){var t=e.lib.BlockCipherMode.extend();t.Encryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize;r.call(this,n,s,a,i),this._prevBlock=n.slice(s,s+a)}}),t.Decryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=n.slice(s,s+a);r.call(this,n,s,a,i),this._prevBlock=o}});function r(n,s,i,a){var o,c=this._iv;c?(o=c.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var u=0;u{(function(e,t,r){typeof I7=="object"?pDt.exports=I7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(I7,function(e){return e.mode.CTR=function(){var t=e.lib.BlockCipherMode.extend(),r=t.Encryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._counter;o&&(c=this._counter=o.slice(0),this._iv=void 0);var u=c.slice(0);i.encryptBlock(u,0),c[a-1]=c[a-1]+1|0;for(var l=0;l{(function(e,t,r){typeof R7=="object"?gDt.exports=R7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(R7,function(e){return e.mode.CTRGladman=function(){var t=e.lib.BlockCipherMode.extend();function r(i){if((i>>24&255)===255){var a=i>>16&255,o=i>>8&255,c=i&255;a===255?(a=0,o===255?(o=0,c===255?c=0:++c):++o):++a,i=0,i+=a<<16,i+=o<<8,i+=c}else i+=1<<24;return i}function n(i){return(i[0]=r(i[0]))===0&&(i[1]=r(i[1])),i}var s=t.Encryptor=t.extend({processBlock:function(i,a){var o=this._cipher,c=o.blockSize,u=this._iv,l=this._counter;u&&(l=this._counter=u.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f{(function(e,t,r){typeof C7=="object"?ADt.exports=C7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(C7,function(e){return e.mode.OFB=function(){var t=e.lib.BlockCipherMode.extend(),r=t.Encryptor=t.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._keystream;o&&(c=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(c,0);for(var u=0;u{(function(e,t,r){typeof x7=="object"?yDt.exports=x7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(x7,function(e){return e.mode.ECB=function(){var t=e.lib.BlockCipherMode.extend();return t.Encryptor=t.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),t.Decryptor=t.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),t}(),e.mode.ECB})});var TDt=S((w7,SDt)=>{(function(e,t,r){typeof w7=="object"?SDt.exports=w7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(w7,function(e){return e.pad.AnsiX923={pad:function(t,r){var n=t.sigBytes,s=r*4,i=s-n%s,a=n+i-1;t.clamp(),t.words[a>>>2]|=i<<24-a%4*8,t.sigBytes+=i},unpad:function(t){var r=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=r}},e.pad.Ansix923})});var IDt=S((N7,bDt)=>{(function(e,t,r){typeof N7=="object"?bDt.exports=N7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(N7,function(e){return e.pad.Iso10126={pad:function(t,r){var n=r*4,s=n-t.sigBytes%n;t.concat(e.lib.WordArray.random(s-1)).concat(e.lib.WordArray.create([s<<24],1))},unpad:function(t){var r=t.words[t.sigBytes-1>>>2]&255;t.sigBytes-=r}},e.pad.Iso10126})});var CDt=S((O7,RDt)=>{(function(e,t,r){typeof O7=="object"?RDt.exports=O7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(O7,function(e){return e.pad.Iso97971={pad:function(t,r){t.concat(e.lib.WordArray.create([2147483648],1)),e.pad.ZeroPadding.pad(t,r)},unpad:function(t){e.pad.ZeroPadding.unpad(t),t.sigBytes--}},e.pad.Iso97971})});var wDt=S((D7,xDt)=>{(function(e,t,r){typeof D7=="object"?xDt.exports=D7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(D7,function(e){return e.pad.ZeroPadding={pad:function(t,r){var n=r*4;t.clamp(),t.sigBytes+=n-(t.sigBytes%n||n)},unpad:function(t){for(var r=t.words,n=t.sigBytes-1,n=t.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){t.sigBytes=n+1;break}}},e.pad.ZeroPadding})});var ODt=S((P7,NDt)=>{(function(e,t,r){typeof P7=="object"?NDt.exports=P7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(P7,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})});var PDt=S((L7,DDt)=>{(function(e,t,r){typeof L7=="object"?DDt.exports=L7=t(rn(),va()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],t):t(e.CryptoJS)})(L7,function(e){return function(t){var r=e,n=r.lib,s=n.CipherParams,i=r.enc,a=i.Hex,o=r.format,c=o.Hex={stringify:function(u){return u.ciphertext.toString(a)},parse:function(u){var l=a.parse(u);return s.create({ciphertext:l})}}}(),e.format.Hex})});var MDt=S((M7,LDt)=>{(function(e,t,r){typeof M7=="object"?LDt.exports=M7=t(rn(),RE(),CE(),Mg(),va()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(M7,function(e){return function(){var t=e,r=t.lib,n=r.BlockCipher,s=t.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],h=[],p=[];(function(){for(var _=[],y=0;y<256;y++)y<128?_[y]=y<<1:_[y]=y<<1^283;for(var A=0,E=0,y=0;y<256;y++){var v=E^E<<1^E<<2^E<<3^E<<4;v=v>>>8^v&255^99,i[A]=v,a[v]=A;var b=_[A],I=_[b],T=_[I],x=_[v]*257^v*16843008;o[A]=x<<24|x>>>8,c[A]=x<<16|x>>>16,u[A]=x<<8|x>>>24,l[A]=x;var x=T*16843009^I*65537^b*257^A*16843008;d[v]=x<<24|x>>>8,f[v]=x<<16|x>>>16,h[v]=x<<8|x>>>24,p[v]=x,A?(A=b^_[_[_[T^b]]],E^=_[_[E]]):A=E=1}})();var m=[0,1,2,4,8,16,32,64,128,27,54],g=s.AES=n.extend({_doReset:function(){var _;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var y=this._keyPriorReset=this._key,A=y.words,E=y.sigBytes/4,v=this._nRounds=E+6,b=(v+1)*4,I=this._keySchedule=[],T=0;T6&&T%E==4&&(_=i[_>>>24]<<24|i[_>>>16&255]<<16|i[_>>>8&255]<<8|i[_&255]):(_=_<<8|_>>>24,_=i[_>>>24]<<24|i[_>>>16&255]<<16|i[_>>>8&255]<<8|i[_&255],_^=m[T/E|0]<<24),I[T]=I[T-E]^_);for(var x=this._invKeySchedule=[],w=0;w>>24]]^f[i[_>>>16&255]]^h[i[_>>>8&255]]^p[i[_&255]]}}},encryptBlock:function(_,y){this._doCryptBlock(_,y,this._keySchedule,o,c,u,l,i)},decryptBlock:function(_,y){var A=_[y+1];_[y+1]=_[y+3],_[y+3]=A,this._doCryptBlock(_,y,this._invKeySchedule,d,f,h,p,a);var A=_[y+1];_[y+1]=_[y+3],_[y+3]=A},_doCryptBlock:function(_,y,A,E,v,b,I,T){for(var x=this._nRounds,w=_[y]^A[0],D=_[y+1]^A[1],M=_[y+2]^A[2],L=_[y+3]^A[3],U=4,G=1;G>>24]^v[D>>>16&255]^b[M>>>8&255]^I[L&255]^A[U++],K=E[D>>>24]^v[M>>>16&255]^b[L>>>8&255]^I[w&255]^A[U++],ee=E[M>>>24]^v[L>>>16&255]^b[w>>>8&255]^I[D&255]^A[U++],z=E[L>>>24]^v[w>>>16&255]^b[D>>>8&255]^I[M&255]^A[U++];w=$,D=K,M=ee,L=z}var $=(T[w>>>24]<<24|T[D>>>16&255]<<16|T[M>>>8&255]<<8|T[L&255])^A[U++],K=(T[D>>>24]<<24|T[M>>>16&255]<<16|T[L>>>8&255]<<8|T[w&255])^A[U++],ee=(T[M>>>24]<<24|T[L>>>16&255]<<16|T[w>>>8&255]<<8|T[D&255])^A[U++],z=(T[L>>>24]<<24|T[w>>>16&255]<<16|T[D>>>8&255]<<8|T[M&255])^A[U++];_[y]=$,_[y+1]=K,_[y+2]=ee,_[y+3]=z},keySize:256/32});t.AES=n._createHelper(g)}(),e.AES})});var BDt=S((k7,kDt)=>{(function(e,t,r){typeof k7=="object"?kDt.exports=k7=t(rn(),RE(),CE(),Mg(),va()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(k7,function(e){return function(){var t=e,r=t.lib,n=r.WordArray,s=r.BlockCipher,i=t.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var m=this._key,g=m.words,_=[],y=0;y<56;y++){var A=a[y]-1;_[y]=g[A>>>5]>>>31-A%32&1}for(var E=this._subKeys=[],v=0;v<16;v++){for(var b=E[v]=[],I=c[v],y=0;y<24;y++)b[y/6|0]|=_[(o[y]-1+I)%28]<<31-y%6,b[4+(y/6|0)]|=_[28+(o[y+24]-1+I)%28]<<31-y%6;b[0]=b[0]<<1|b[0]>>>31;for(var y=1;y<7;y++)b[y]=b[y]>>>(y-1)*4+3;b[7]=b[7]<<5|b[7]>>>27}for(var T=this._invSubKeys=[],y=0;y<16;y++)T[y]=E[15-y]},encryptBlock:function(m,g){this._doCryptBlock(m,g,this._subKeys)},decryptBlock:function(m,g){this._doCryptBlock(m,g,this._invSubKeys)},_doCryptBlock:function(m,g,_){this._lBlock=m[g],this._rBlock=m[g+1],f.call(this,4,252645135),f.call(this,16,65535),h.call(this,2,858993459),h.call(this,8,16711935),f.call(this,1,1431655765);for(var y=0;y<16;y++){for(var A=_[y],E=this._lBlock,v=this._rBlock,b=0,I=0;I<8;I++)b|=u[I][((v^A[I])&l[I])>>>0];this._lBlock=v,this._rBlock=E^b}var T=this._lBlock;this._lBlock=this._rBlock,this._rBlock=T,f.call(this,1,1431655765),h.call(this,8,16711935),h.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),m[g]=this._lBlock,m[g+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(m,g){var _=(this._lBlock>>>m^this._rBlock)&g;this._rBlock^=_,this._lBlock^=_<>>m^this._lBlock)&g;this._lBlock^=_,this._rBlock^=_<192.");var _=g.slice(0,2),y=g.length<4?g.slice(0,2):g.slice(2,4),A=g.length<6?g.slice(0,2):g.slice(4,6);this._des1=d.createEncryptor(n.create(_)),this._des2=d.createEncryptor(n.create(y)),this._des3=d.createEncryptor(n.create(A))},encryptBlock:function(m,g){this._des1.encryptBlock(m,g),this._des2.decryptBlock(m,g),this._des3.encryptBlock(m,g)},decryptBlock:function(m,g){this._des3.decryptBlock(m,g),this._des2.encryptBlock(m,g),this._des1.decryptBlock(m,g)},keySize:192/32,ivSize:64/32,blockSize:64/32});t.TripleDES=s._createHelper(p)}(),e.TripleDES})});var FDt=S((B7,UDt)=>{(function(e,t,r){typeof B7=="object"?UDt.exports=B7=t(rn(),RE(),CE(),Mg(),va()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(B7,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,s=t.algo,i=s.RC4=n.extend({_doReset:function(){for(var c=this._key,u=c.words,l=c.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,h=0;f<256;f++){var p=f%l,m=u[p>>>2]>>>24-p%4*8&255;h=(h+d[f]+m)%256;var g=d[f];d[f]=d[h],d[h]=g}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var h=c[u];c[u]=c[l],c[l]=h,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}t.RC4=n._createHelper(i);var o=s.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var c=this.cfg.drop;c>0;c--)a.call(this)}});t.RC4Drop=n._createHelper(o)}(),e.RC4})});var qDt=S((U7,$Dt)=>{(function(e,t,r){typeof U7=="object"?$Dt.exports=U7=t(rn(),RE(),CE(),Mg(),va()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(U7,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,s=t.algo,i=[],a=[],o=[],c=s.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var h=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)p[f]^=h[f+4&7];if(d){var m=d.words,g=m[0],_=m[1],y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,A=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,E=y>>>16|A&4294901760,v=A<<16|y&65535;p[0]^=y,p[1]^=E,p[2]^=A,p[3]^=v,p[4]^=y,p[5]^=E,p[6]^=A,p[7]^=v;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var h=0;h<4;h++)i[h]=(i[h]<<8|i[h]>>>24)&16711935|(i[h]<<24|i[h]>>>8)&4278255360,l[d+h]^=i[h]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var h=l[f]+d[f],p=h&65535,m=h>>>16,g=((p*p>>>17)+p*m>>>15)+m*m,_=((h&4294901760)*h|0)+((h&65535)*h|0);o[f]=g^_}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.Rabbit=n._createHelper(c)}(),e.Rabbit})});var VDt=S((F7,HDt)=>{(function(e,t,r){typeof F7=="object"?HDt.exports=F7=t(rn(),RE(),CE(),Mg(),va()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})(F7,function(e){return function(){var t=e,r=t.lib,n=r.StreamCipher,s=t.algo,i=[],a=[],o=[],c=s.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],h=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var p=0;p<4;p++)u.call(this);for(var p=0;p<8;p++)h[p]^=f[p+4&7];if(d){var m=d.words,g=m[0],_=m[1],y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,A=(_<<8|_>>>24)&16711935|(_<<24|_>>>8)&4278255360,E=y>>>16|A&4294901760,v=A<<16|y&65535;h[0]^=y,h[1]^=E,h[2]^=A,h[3]^=v,h[4]^=y,h[5]^=E,h[6]^=A,h[7]^=v;for(var p=0;p<4;p++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var h=0;h<4;h++)i[h]=(i[h]<<8|i[h]>>>24)&16711935|(i[h]<<24|i[h]>>>8)&4278255360,l[d+h]^=i[h]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var h=l[f]+d[f],p=h&65535,m=h>>>16,g=((p*p>>>17)+p*m>>>15)+m*m,_=((h&4294901760)*h|0)+((h&65535)*h|0);o[f]=g^_}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}t.RabbitLegacy=n._createHelper(c)}(),e.RabbitLegacy})});var KDt=S(($7,jDt)=>{(function(e,t,r){typeof $7=="object"?jDt.exports=$7=t(rn(),RE(),CE(),Mg(),va()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],t):t(e.CryptoJS)})($7,function(e){return function(){var t=e,r=t.lib,n=r.BlockCipher,s=t.algo;let i=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var c={pbox:[],sbox:[]};function u(p,m){let g=m>>24&255,_=m>>16&255,y=m>>8&255,A=m&255,E=p.sbox[0][g]+p.sbox[1][_];return E=E^p.sbox[2][y],E=E+p.sbox[3][A],E}function l(p,m,g){let _=m,y=g,A;for(let E=0;E1;--E)_=_^p.pbox[E],y=u(p,_)^y,A=_,_=y,y=A;return A=_,_=y,y=A,y=y^p.pbox[1],_=_^p.pbox[0],{left:_,right:y}}function f(p,m,g){for(let v=0;v<4;v++){p.sbox[v]=[];for(let b=0;b<256;b++)p.sbox[v][b]=o[v][b]}let _=0;for(let v=0;v=g&&(_=0);let y=0,A=0,E=0;for(let v=0;v{(function(e,t,r){typeof q7=="object"?GDt.exports=q7=t(rn(),d4(),V2t(),K2t(),RE(),Y2t(),CE(),kbe(),h7(),Z2t(),Bbe(),rDt(),sDt(),aDt(),y7(),uDt(),Mg(),va(),hDt(),mDt(),_Dt(),EDt(),vDt(),TDt(),IDt(),CDt(),wDt(),ODt(),PDt(),MDt(),BDt(),FDt(),qDt(),VDt(),KDt()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],t):e.CryptoJS=t(e.CryptoJS)})(q7,function(e){return e})});var m0=S((dTs,zDt)=>{"use strict";var H7=require("buffer"),rx=H7.Buffer,Jd={},Zd;for(Zd in H7)H7.hasOwnProperty(Zd)&&(Zd==="SlowBuffer"||Zd==="Buffer"||(Jd[Zd]=H7[Zd]));var nx=Jd.Buffer={};for(Zd in rx)rx.hasOwnProperty(Zd)&&(Zd==="allocUnsafe"||Zd==="allocUnsafeSlow"||(nx[Zd]=rx[Zd]));Jd.Buffer.prototype=rx.prototype;(!nx.from||nx.from===Uint8Array.from)&&(nx.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return rx(e,t,r)});nx.alloc||(nx.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=rx(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!Jd.kStringMaxLength)try{Jd.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Jd.constants||(Jd.constants={MAX_LENGTH:Jd.kMaxLength},Jd.kStringMaxLength&&(Jd.constants.MAX_STRING_LENGTH=Jd.kStringMaxLength));zDt.exports=Jd});var QDt=S($be=>{"use strict";var YDt="\uFEFF";$be.PrependBOM=Ube;function Ube(e,t){this.encoder=e,this.addBOM=!0}Ube.prototype.write=function(e){return this.addBOM&&(e=YDt+e,this.addBOM=!1),this.encoder.write(e)};Ube.prototype.end=function(){return this.encoder.end()};$be.StripBOM=Fbe;function Fbe(e,t){this.decoder=e,this.pass=!1,this.options=t||{}}Fbe.prototype.write=function(e){var t=this.decoder.write(e);return this.pass||!t||(t[0]===YDt&&(t=t.slice(1),typeof this.options.stripBOM=="function"&&this.options.stripBOM()),this.pass=!0),t};Fbe.prototype.end=function(){return this.decoder.end()}});var XDt=S((hTs,WDt)=>{"use strict";var xT=m0().Buffer;WDt.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:Hbe};function Hbe(e,t){this.enc=e.encodingName,this.bomAware=e.bomAware,this.enc==="base64"?this.encoder=Kbe:this.enc==="cesu8"&&(this.enc="utf8",this.encoder=Gbe,xT.from("eda0bdedb2a9","hex").toString()!=="\u{1F4A9}"&&(this.decoder=zbe,this.defaultCharUnicode=t.defaultCharUnicode))}Hbe.prototype.encoder=jbe;Hbe.prototype.decoder=Vbe;var qbe=require("string_decoder").StringDecoder;qbe.prototype.end||(qbe.prototype.end=function(){});function Vbe(e,t){this.decoder=new qbe(t.enc)}Vbe.prototype.write=function(e){return xT.isBuffer(e)||(e=xT.from(e)),this.decoder.write(e)};Vbe.prototype.end=function(){return this.decoder.end()};function jbe(e,t){this.enc=t.enc}jbe.prototype.write=function(e){return xT.from(e,this.enc)};jbe.prototype.end=function(){};function Kbe(e,t){this.prevStr=""}Kbe.prototype.write=function(e){e=this.prevStr+e;var t=e.length-e.length%4;return this.prevStr=e.slice(t),e=e.slice(0,t),xT.from(e,"base64")};Kbe.prototype.end=function(){return xT.from(this.prevStr,"base64")};function Gbe(e,t){}Gbe.prototype.write=function(e){for(var t=xT.alloc(e.length*3),r=0,n=0;n>>6),t[r++]=128+(s&63)):(t[r++]=224+(s>>>12),t[r++]=128+(s>>>6&63),t[r++]=128+(s&63))}return t.slice(0,r)};Gbe.prototype.end=function(){};function zbe(e,t){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=t.defaultCharUnicode}zbe.prototype.write=function(e){for(var t=this.acc,r=this.contBytes,n=this.accBytes,s="",i=0;i0&&(s+=this.defaultCharUnicode,r=0),a<128?s+=String.fromCharCode(a):a<224?(t=a&31,r=1,n=1):a<240?(t=a&15,r=2,n=1):s+=this.defaultCharUnicode):r>0?(t=t<<6|a&63,r--,n++,r===0&&(n===2&&t<128&&t>0?s+=this.defaultCharUnicode:n===3&&t<2048?s+=this.defaultCharUnicode:s+=String.fromCharCode(t))):s+=this.defaultCharUnicode}return this.acc=t,this.contBytes=r,this.accBytes=n,s};zbe.prototype.end=function(){var e=0;return this.contBytes>0&&(e+=this.defaultCharUnicode),e}});var ePt=S(xE=>{"use strict";var V7=m0().Buffer;xE._utf32=Ybe;function Ybe(e,t){this.iconv=t,this.bomAware=!0,this.isLE=e.isLE}xE.utf32le={type:"_utf32",isLE:!0};xE.utf32be={type:"_utf32",isLE:!1};xE.ucs4le="utf32le";xE.ucs4be="utf32be";Ybe.prototype.encoder=Qbe;Ybe.prototype.decoder=Wbe;function Qbe(e,t){this.isLE=t.isLE,this.highSurrogate=0}Qbe.prototype.write=function(e){for(var t=V7.from(e,"ucs2"),r=V7.alloc(t.length*2),n=this.isLE?r.writeUInt32LE:r.writeUInt32BE,s=0,i=0;i0){for(;t1114111)&&(r=n),r>=65536){r-=65536;var s=55296|r>>10;e[t++]=s&255,e[t++]=s>>8;var r=56320|r&1023}return e[t++]=r&255,e[t++]=r>>8,t}Wbe.prototype.end=function(){this.overflow.length=0};xE.utf32=Xbe;xE.ucs4="utf32";function Xbe(e,t){this.iconv=t}Xbe.prototype.encoder=Jbe;Xbe.prototype.decoder=Zbe;function Jbe(e,t){e=e||{},e.addBOM===void 0&&(e.addBOM=!0),this.encoder=t.iconv.getEncoder(e.defaultEncoding||"utf-32le",e)}Jbe.prototype.write=function(e){return this.encoder.write(e)};Jbe.prototype.end=function(){return this.encoder.end()};function Zbe(e,t){this.decoder=null,this.initialBufs=[],this.initialBufsLen=0,this.options=e||{},this.iconv=t.iconv}Zbe.prototype.write=function(e){if(!this.decoder){if(this.initialBufs.push(e),this.initialBufsLen+=e.length,this.initialBufsLen<32)return"";var t=ZDt(this.initialBufs,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(t,this.options);for(var r="",n=0;n16)&&i++,(r[3]!==0||r[2]>16)&&s++,r[0]===0&&r[1]===0&&(r[2]!==0||r[3]!==0)&&o++,(r[0]!==0||r[1]!==0)&&r[2]===0&&r[3]===0&&a++,r.length=0,n++,n>=100)break e}return o-i>a-s?"utf-32be":o-i{"use strict";var tPt=m0().Buffer;i1e.utf16be=j7;function j7(){}j7.prototype.encoder=e1e;j7.prototype.decoder=t1e;j7.prototype.bomAware=!0;function e1e(){}e1e.prototype.write=function(e){for(var t=tPt.from(e,"ucs2"),r=0;r=100)break e}return i>s?"utf-16be":i{"use strict";var np=m0().Buffer;z7.utf7=K7;z7.unicode11utf7="utf7";function K7(e,t){this.iconv=t}K7.prototype.encoder=o1e;K7.prototype.decoder=c1e;K7.prototype.bomAware=!0;var qnn=/[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;function o1e(e,t){this.iconv=t.iconv}o1e.prototype.write=function(e){return np.from(e.replace(qnn,function(t){return"+"+(t==="+"?"":this.iconv.encode(t,"utf16-be").toString("base64").replace(/=+$/,""))+"-"}.bind(this)))};o1e.prototype.end=function(){};function c1e(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var Hnn=/[A-Za-z0-9\/+]/,u1e=[];for(f4=0;f4<256;f4++)u1e[f4]=Hnn.test(String.fromCharCode(f4));var f4,Vnn=43,wT=45,a1e=38;c1e.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(e=this.iconv.decode(np.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e};z7.utf7imap=G7;function G7(e,t){this.iconv=t}G7.prototype.encoder=l1e;G7.prototype.decoder=d1e;G7.prototype.bomAware=!0;function l1e(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=np.alloc(6),this.base64AccumIdx=0}l1e.prototype.write=function(e){for(var t=this.inBase64,r=this.base64Accum,n=this.base64AccumIdx,s=np.alloc(e.length*5+10),i=0,a=0;a0&&(i+=s.write(r.slice(0,n).toString("base64").replace(/\//g,",").replace(/=+$/,""),i),n=0),s[i++]=wT,t=!1),t||(s[i++]=o,o===a1e&&(s[i++]=wT))):(t||(s[i++]=a1e,t=!0),t&&(r[n++]=o>>8,r[n++]=o&255,n==r.length&&(i+=s.write(r.toString("base64").replace(/\//g,","),i),n=0)))}return this.inBase64=t,this.base64AccumIdx=n,s.slice(0,i)};l1e.prototype.end=function(){var e=np.alloc(10),t=0;return this.inBase64&&(this.base64AccumIdx>0&&(t+=e.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),t),this.base64AccumIdx=0),e[t++]=wT,this.inBase64=!1),e.slice(0,t)};function d1e(e,t){this.iconv=t.iconv,this.inBase64=!1,this.base64Accum=""}var sPt=u1e.slice();sPt[44]=!0;d1e.prototype.write=function(e){for(var t="",r=0,n=this.inBase64,s=this.base64Accum,i=0;i0&&(e=this.iconv.decode(np.from(this.base64Accum,"base64"),"utf16-be")),this.inBase64=!1,this.base64Accum="",e}});var oPt=S(aPt=>{"use strict";var Y7=m0().Buffer;aPt._sbcs=f1e;function f1e(e,t){if(!e)throw new Error("SBCS codec is called without the data.");if(!e.chars||e.chars.length!==128&&e.chars.length!==256)throw new Error("Encoding '"+e.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(e.chars.length===128){for(var r="",n=0;n<128;n++)r+=String.fromCharCode(n);e.chars=r+e.chars}this.decodeBuf=Y7.from(e.chars,"ucs2");for(var s=Y7.alloc(65536,t.defaultCharSingleByte.charCodeAt(0)),n=0;n{"use strict";cPt.exports={10029:"maccenteuro",maccenteuro:{type:"_sbcs",chars:"\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"},808:"cp808",ibm808:"cp808",cp808:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"},mik:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},cp720:{type:"_sbcs",chars:"\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ascii8bit:"ascii",usascii:"ascii",ansix34:"ascii",ansix341968:"ascii",ansix341986:"ascii",csascii:"ascii",cp367:"ascii",ibm367:"ascii",isoir6:"ascii",iso646us:"ascii",iso646irv:"ascii",us:"ascii",latin1:"iso88591",latin2:"iso88592",latin3:"iso88593",latin4:"iso88594",latin5:"iso88599",latin6:"iso885910",latin7:"iso885913",latin8:"iso885914",latin9:"iso885915",latin10:"iso885916",csisolatin1:"iso88591",csisolatin2:"iso88592",csisolatin3:"iso88593",csisolatin4:"iso88594",csisolatincyrillic:"iso88595",csisolatinarabic:"iso88596",csisolatingreek:"iso88597",csisolatinhebrew:"iso88598",csisolatin5:"iso88599",csisolatin6:"iso885910",l1:"iso88591",l2:"iso88592",l3:"iso88593",l4:"iso88594",l5:"iso88599",l6:"iso885910",l7:"iso885913",l8:"iso885914",l9:"iso885915",l10:"iso885916",isoir14:"iso646jp",isoir57:"iso646cn",isoir100:"iso88591",isoir101:"iso88592",isoir109:"iso88593",isoir110:"iso88594",isoir144:"iso88595",isoir127:"iso88596",isoir126:"iso88597",isoir138:"iso88598",isoir148:"iso88599",isoir157:"iso885910",isoir166:"tis620",isoir179:"iso885913",isoir199:"iso885914",isoir203:"iso885915",isoir226:"iso885916",cp819:"iso88591",ibm819:"iso88591",cyrillic:"iso88595",arabic:"iso88596",arabic8:"iso88596",ecma114:"iso88596",asmo708:"iso88596",greek:"iso88597",greek8:"iso88597",ecma118:"iso88597",elot928:"iso88597",hebrew:"iso88598",hebrew8:"iso88598",turkish:"iso88599",turkish8:"iso88599",thai:"iso885911",thai8:"iso885911",celtic:"iso885914",celtic8:"iso885914",isoceltic:"iso885914",tis6200:"tis620",tis62025291:"tis620",tis62025330:"tis620",1e4:"macroman",10006:"macgreek",10007:"maccyrillic",10079:"maciceland",10081:"macturkish",cspc8codepage437:"cp437",cspc775baltic:"cp775",cspc850multilingual:"cp850",cspcp852:"cp852",cspc862latinhebrew:"cp862",cpgr:"cp869",msee:"cp1250",mscyrl:"cp1251",msansi:"cp1252",msgreek:"cp1253",msturk:"cp1254",mshebr:"cp1255",msarab:"cp1256",winbaltrim:"cp1257",cp20866:"koi8r",20866:"koi8r",ibm878:"koi8r",cskoi8r:"koi8r",cp21866:"koi8u",21866:"koi8u",ibm1168:"koi8u",strk10482002:"rk1048",tcvn5712:"tcvn",tcvn57121:"tcvn",gb198880:"iso646cn",cn:"iso646cn",csiso14jisc6220ro:"iso646jp",jisc62201969ro:"iso646jp",jp:"iso646jp",cshproman8:"hproman8",r8:"hproman8",roman8:"hproman8",xroman8:"hproman8",ibm1051:"hproman8",mac:"macintosh",csmacintosh:"macintosh"}});var dPt=S((ETs,lPt)=>{"use strict";lPt.exports={437:"cp437",737:"cp737",775:"cp775",850:"cp850",852:"cp852",855:"cp855",856:"cp856",857:"cp857",858:"cp858",860:"cp860",861:"cp861",862:"cp862",863:"cp863",864:"cp864",865:"cp865",866:"cp866",869:"cp869",874:"windows874",922:"cp922",1046:"cp1046",1124:"cp1124",1125:"cp1125",1129:"cp1129",1133:"cp1133",1161:"cp1161",1162:"cp1162",1163:"cp1163",1250:"windows1250",1251:"windows1251",1252:"windows1252",1253:"windows1253",1254:"windows1254",1255:"windows1255",1256:"windows1256",1257:"windows1257",1258:"windows1258",28591:"iso88591",28592:"iso88592",28593:"iso88593",28594:"iso88594",28595:"iso88595",28596:"iso88596",28597:"iso88597",28598:"iso88598",28599:"iso88599",28600:"iso885910",28601:"iso885911",28603:"iso885913",28604:"iso885914",28605:"iso885915",28606:"iso885916",windows874:{type:"_sbcs",chars:"\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},win874:"windows874",cp874:"windows874",windows1250:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},win1250:"windows1250",cp1250:"windows1250",windows1251:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},win1251:"windows1251",cp1251:"windows1251",windows1252:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},win1252:"windows1252",cp1252:"windows1252",windows1253:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},win1253:"windows1253",cp1253:"windows1253",windows1254:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},win1254:"windows1254",cp1254:"windows1254",windows1255:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},win1255:"windows1255",cp1255:"windows1255",windows1256:{type:"_sbcs",chars:"\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"},win1256:"windows1256",cp1256:"windows1256",windows1257:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"},win1257:"windows1257",cp1257:"windows1257",windows1258:{type:"_sbcs",chars:"\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},win1258:"windows1258",cp1258:"windows1258",iso88591:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28591:"iso88591",iso88592:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"},cp28592:"iso88592",iso88593:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"},cp28593:"iso88593",iso88594:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"},cp28594:"iso88594",iso88595:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},cp28595:"iso88595",iso88596:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},cp28596:"iso88596",iso88597:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"},cp28597:"iso88597",iso88598:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"},cp28598:"iso88598",iso88599:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"},cp28599:"iso88599",iso885910:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"},cp28600:"iso885910",iso885911:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},cp28601:"iso885911",iso885913:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"},cp28603:"iso885913",iso885914:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"},cp28604:"iso885914",iso885915:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},cp28605:"iso885915",iso885916:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"},cp28606:"iso885916",cp437:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm437:"cp437",csibm437:"cp437",cp737:{type:"_sbcs",chars:"\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm737:"cp737",csibm737:"cp737",cp775:{type:"_sbcs",chars:"\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm775:"cp775",csibm775:"cp775",cp850:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm850:"cp850",csibm850:"cp850",cp852:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"},ibm852:"cp852",csibm852:"cp852",cp855:{type:"_sbcs",chars:"\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"},ibm855:"cp855",csibm855:"cp855",cp856:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm856:"cp856",csibm856:"cp856",cp857:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm857:"cp857",csibm857:"cp857",cp858:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"},ibm858:"cp858",csibm858:"cp858",cp860:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm860:"cp860",csibm860:"cp860",cp861:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm861:"cp861",csibm861:"cp861",cp862:{type:"_sbcs",chars:"\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm862:"cp862",csibm862:"cp862",cp863:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm863:"cp863",csibm863:"cp863",cp864:{type:"_sbcs",chars:`\0\x07\b +\v\f\r\x1B !"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"},maccyrillic:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},macgreek:{type:"_sbcs",chars:"\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"},maciceland:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macroman:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macromania:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macthai:{type:"_sbcs",chars:"\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"},macturkish:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},macukraine:{type:"_sbcs",chars:"\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"},koi8r:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8u:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8ru:{type:"_sbcs",chars:"\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},koi8t:{type:"_sbcs",chars:"\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"},armscii8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"},rk1048:{type:"_sbcs",chars:"\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},tcvn:{type:"_sbcs",chars:`\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b +\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0`},georgianacademy:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},georgianps:{type:"_sbcs",chars:"\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"},pt154:{type:"_sbcs",chars:"\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"},viscii:{type:"_sbcs",chars:`\0\u1EB2\u1EB4\u1EAA\x07\b +\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b +\v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b +\v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var pPt=S(hPt=>{"use strict";var m1e=m0().Buffer;hPt._dbcs=kg;var Co=-1,fPt=-2,ef=-10,Xc=-1e3,sx=new Array(256),h4=-1;for(Q7=0;Q7<256;Q7++)sx[Q7]=Co;var Q7;function kg(e,t){if(this.encodingName=e.encodingName,!e)throw new Error("DBCS codec is called without the data.");if(!e.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var r=e.table();this.decodeTables=[],this.decodeTables[0]=sx.slice(0),this.decodeTableSeq=[];for(var n=0;nXc)throw new Error("gb18030 decode tables conflict at byte 2");for(var u=this.decodeTables[Xc-o[c]],l=129;l<=254;l++){if(u[l]===Co)u[l]=Xc-i;else{if(u[l]===Xc-i)continue;if(u[l]>Xc)throw new Error("gb18030 decode tables conflict at byte 3")}for(var d=this.decodeTables[Xc-u[l]],f=48;f<=57;f++)d[f]===Co&&(d[f]=fPt)}}}this.defaultCharUnicode=t.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var h={};if(e.encodeSkipVals)for(var n=0;n0;e>>>=8)t.push(e&255);t.length==0&&t.push(0);for(var r=this.decodeTables[0],n=t.length-1;n>0;n--){var s=r[t[n]];if(s==Co)r[t[n]]=Xc-this.decodeTables.length,this.decodeTables.push(r=sx.slice(0));else if(s<=Xc)r=this.decodeTables[Xc-s];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+e.toString(16))}return r};kg.prototype._addDecodeChunk=function(e){var t=parseInt(e[0],16),r=this._getDecodeTrieNode(t);t=t&255;for(var n=1;n255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+e[0]+": too long"+t)};kg.prototype._getEncodeBucket=function(e){var t=e>>8;return this.encodeTable[t]===void 0&&(this.encodeTable[t]=sx.slice(0)),this.encodeTable[t]};kg.prototype._setEncodeChar=function(e,t){var r=this._getEncodeBucket(e),n=e&255;r[n]<=ef?this.encodeTableSeq[ef-r[n]][h4]=t:r[n]==Co&&(r[n]=t)};kg.prototype._setEncodeSequence=function(e,t){var r=e[0],n=this._getEncodeBucket(r),s=r&255,i;n[s]<=ef?i=this.encodeTableSeq[ef-n[s]]:(i={},n[s]!==Co&&(i[h4]=n[s]),n[s]=ef-this.encodeTableSeq.length,this.encodeTableSeq.push(i));for(var a=1;a=0)this._setEncodeChar(o,c),s=!0;else if(o<=Xc){var u=Xc-o;if(!i[u]){var l=c<<8>>>0;this._fillEncodeTable(u,l,r)?s=!0:i[u]=!0}}else o<=ef&&(this._setEncodeSequence(this.decodeTableSeq[ef-o],c),s=!0)}return s};function W7(e,t){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=t.encodeTable,this.encodeTableSeq=t.encodeTableSeq,this.defaultCharSingleByte=t.defCharSB,this.gb18030=t.gb18030}W7.prototype.write=function(e){for(var t=m1e.alloc(e.length*(this.gb18030?4:3)),r=this.leadSurrogate,n=this.seqObj,s=-1,i=0,a=0;;){if(s===-1){if(i==e.length)break;var o=e.charCodeAt(i++)}else{var o=s;s=-1}if(55296<=o&&o<57344)if(o<56320)if(r===-1){r=o;continue}else r=o,o=Co;else r!==-1?(o=65536+(r-55296)*1024+(o-56320),r=-1):o=Co;else r!==-1&&(s=o,o=Co,r=-1);var c=Co;if(n!==void 0&&o!=Co){var u=n[o];if(typeof u=="object"){n=u;continue}else typeof u=="number"?c=u:u==null&&(u=n[h4],u!==void 0&&(c=u,s=o));n=void 0}else if(o>=0){var l=this.encodeTable[o>>8];if(l!==void 0&&(c=l[o&255]),c<=ef){n=this.encodeTableSeq[ef-c];continue}if(c==Co&&this.gb18030){var d=_1e(this.gb18030.uChars,o);if(d!=-1){var c=this.gb18030.gbChars[d]+(o-this.gb18030.uChars[d]);t[a++]=129+Math.floor(c/12600),c=c%12600,t[a++]=48+Math.floor(c/1260),c=c%1260,t[a++]=129+Math.floor(c/10),c=c%10,t[a++]=48+c;continue}}}c===Co&&(c=this.defaultCharSingleByte),c<256?t[a++]=c:c<65536?(t[a++]=c>>8,t[a++]=c&255):c<16777216?(t[a++]=c>>16,t[a++]=c>>8&255,t[a++]=c&255):(t[a++]=c>>>24,t[a++]=c>>>16&255,t[a++]=c>>>8&255,t[a++]=c&255)}return this.seqObj=n,this.leadSurrogate=r,t.slice(0,a)};W7.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var e=m1e.alloc(10),t=0;if(this.seqObj){var r=this.seqObj[h4];r!==void 0&&(r<256?e[t++]=r:(e[t++]=r>>8,e[t++]=r&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(e[t++]=this.defaultCharSingleByte,this.leadSurrogate=-1),e.slice(0,t)}};W7.prototype.findIdx=_1e;function g1e(e,t){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=t.decodeTables,this.decodeTableSeq=t.decodeTableSeq,this.defaultCharUnicode=t.defaultCharUnicode,this.gb18030=t.gb18030}g1e.prototype.write=function(e){for(var t=m1e.alloc(e.length*2),r=this.nodeIdx,n=this.prevBytes,s=this.prevBytes.length,i=-this.prevBytes.length,a,o=0,c=0;o=0?e[o]:n[o+s],a=this.decodeTables[r][u];if(!(a>=0))if(a===Co)a=this.defaultCharUnicode.charCodeAt(0),o=i;else if(a===fPt){if(o>=3)var l=(e[o-3]-129)*12600+(e[o-2]-48)*1260+(e[o-1]-129)*10+(u-48);else var l=(n[o-3+s]-129)*12600+((o-2>=0?e[o-2]:n[o-2+s])-48)*1260+((o-1>=0?e[o-1]:n[o-1+s])-129)*10+(u-48);var d=_1e(this.gb18030.gbChars,l);a=this.gb18030.uChars[d]+l-this.gb18030.gbChars[d]}else if(a<=Xc){r=Xc-a;continue}else if(a<=ef){for(var f=this.decodeTableSeq[ef-a],h=0;h>8;a=f[f.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+a+" at "+r+"/"+u);if(a>=65536){a-=65536;var p=55296|a>>10;t[c++]=p&255,t[c++]=p>>8,a=56320|a&1023}t[c++]=a&255,t[c++]=a>>8,r=0,i=o+1}return this.nodeIdx=r,this.prevBytes=i>=0?Array.prototype.slice.call(e,i):n.slice(i+s).concat(Array.prototype.slice.call(e)),t.slice(0,c).toString("ucs2")};g1e.prototype.end=function(){for(var e="";this.prevBytes.length>0;){e+=this.defaultCharUnicode;var t=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,t.length>0&&(e+=this.write(t))}return this.prevBytes=[],this.nodeIdx=0,e};function _1e(e,t){if(e[0]>t)return-1;for(var r=0,n=e.length;r>1);e[s]<=t?r=s:n=s}return r}});var mPt=S((vTs,jnn)=>{jnn.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var gPt=S((STs,Knn)=>{Knn.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var X7=S((TTs,Gnn)=>{Gnn.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var A1e=S((bTs,znn)=>{znn.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var _Pt=S((ITs,Ynn)=>{Ynn.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var APt=S((RTs,Qnn)=>{Qnn.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var E1e=S((CTs,Wnn)=>{Wnn.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var EPt=S((xTs,Xnn)=>{Xnn.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var vPt=S((wTs,yPt)=>{"use strict";yPt.exports={shiftjis:{type:"_dbcs",table:function(){return mPt()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return gPt()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return X7()}},gbk:{type:"_dbcs",table:function(){return X7().concat(A1e())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return X7().concat(A1e())},gb18030:function(){return _Pt()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return APt()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return E1e()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return E1e().concat(EPt())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var bPt=S((TPt,ix)=>{"use strict";var SPt=[XDt(),ePt(),nPt(),iPt(),oPt(),uPt(),dPt(),pPt(),vPt()];for(J7=0;J7{"use strict";var IPt=m0().Buffer;RPt.exports=function(e){var t=e.Transform;function r(s,i){this.conv=s,i=i||{},i.decodeStrings=!1,t.call(this,i)}r.prototype=Object.create(t.prototype,{constructor:{value:r}}),r.prototype._transform=function(s,i,a){if(typeof s!="string")return a(new Error("Iconv encoding stream needs strings as its input."));try{var o=this.conv.write(s);o&&o.length&&this.push(o),a()}catch(c){a(c)}},r.prototype._flush=function(s){try{var i=this.conv.end();i&&i.length&&this.push(i),s()}catch(a){s(a)}},r.prototype.collect=function(s){var i=[];return this.on("error",s),this.on("data",function(a){i.push(a)}),this.on("end",function(){s(null,IPt.concat(i))}),this};function n(s,i){this.conv=s,i=i||{},i.encoding=this.encoding="utf8",t.call(this,i)}return n.prototype=Object.create(t.prototype,{constructor:{value:n}}),n.prototype._transform=function(s,i,a){if(!IPt.isBuffer(s)&&!(s instanceof Uint8Array))return a(new Error("Iconv decoding stream needs buffers as its input."));try{var o=this.conv.write(s);o&&o.length&&this.push(o,this.encoding),a()}catch(c){a(c)}},n.prototype._flush=function(s){try{var i=this.conv.end();i&&i.length&&this.push(i,this.encoding),s()}catch(a){s(a)}},n.prototype.collect=function(s){var i="";return this.on("error",s),this.on("data",function(a){i+=a}),this.on("end",function(){s(null,i)}),this},{IconvLiteEncoderStream:r,IconvLiteDecoderStream:n}}});var OPt=S((OTs,NPt)=>{"use strict";var xPt=m0().Buffer,wPt=QDt(),hr=NPt.exports;hr.encodings=null;hr.defaultCharUnicode="\uFFFD";hr.defaultCharSingleByte="?";hr.encode=function(t,r,n){t=""+(t||"");var s=hr.getEncoder(r,n),i=s.write(t),a=s.end();return a&&a.length>0?xPt.concat([i,a]):i};hr.decode=function(t,r,n){typeof t=="string"&&(hr.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),hr.skipDecodeWarning=!0),t=xPt.from(""+(t||""),"binary"));var s=hr.getDecoder(r,n),i=s.write(t),a=s.end();return a?i+a:i};hr.encodingExists=function(t){try{return hr.getCodec(t),!0}catch{return!1}};hr.toEncoding=hr.encode;hr.fromEncoding=hr.decode;hr._codecDataCache={};hr.getCodec=function(t){hr.encodings||(hr.encodings=bPt());for(var r=hr._canonicalizeEncoding(t),n={};;){var s=hr._codecDataCache[r];if(s)return s;var i=hr.encodings[r];switch(typeof i){case"string":r=i;break;case"object":for(var a in i)n[a]=i[a];n.encodingName||(n.encodingName=r),r=i.type;break;case"function":return n.encodingName||(n.encodingName=r),s=new i(n,hr),hr._codecDataCache[n.encodingName]=s,s;default:throw new Error("Encoding not recognized: '"+t+"' (searched as: '"+r+"')")}}};hr._canonicalizeEncoding=function(e){return(""+e).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};hr.getEncoder=function(t,r){var n=hr.getCodec(t),s=new n.encoder(r,n);return n.bomAware&&r&&r.addBOM&&(s=new wPt.PrependBOM(s,r)),s};hr.getDecoder=function(t,r){var n=hr.getCodec(t),s=new n.decoder(r,n);return n.bomAware&&!(r&&r.stripBOM===!1)&&(s=new wPt.StripBOM(s,r)),s};hr.enableStreamingAPI=function(t){if(!hr.supportsStreams){var r=CPt()(t);hr.IconvLiteEncoderStream=r.IconvLiteEncoderStream,hr.IconvLiteDecoderStream=r.IconvLiteDecoderStream,hr.encodeStream=function(s,i){return new hr.IconvLiteEncoderStream(hr.getEncoder(s,i),i)},hr.decodeStream=function(s,i){return new hr.IconvLiteDecoderStream(hr.getDecoder(s,i),i)},hr.supportsStreams=!0}};var ej;try{ej=require("stream")}catch{}ej&&ej.Transform?hr.enableStreamingAPI(ej):hr.encodeStream=hr.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var LPt=S((DTs,tj)=>{var PPt=PPt||function(e){return Buffer.from(e).toString("base64")};function Jnn(e){var t=this,r=Math.round,n=Math.floor,s=new Array(64),i=new Array(64),a=new Array(64),o=new Array(64),c,u,l,d,f=new Array(65535),h=new Array(65535),p=new Array(64),m=new Array(64),g=[],_=0,y=7,A=new Array(64),E=new Array(64),v=new Array(64),b=new Array(256),I=new Array(2048),T,x=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],w=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],D=[0,1,2,3,4,5,6,7,8,9,10,11],M=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],L=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],U=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],G=[0,1,2,3,4,5,6,7,8,9,10,11],$=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],K=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function ee(J){for(var ce=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],ge=0;ge<64;ge++){var be=n((ce[ge]*J+50)/100);be<1?be=1:be>255&&(be=255),s[x[ge]]=be}for(var Te=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],xe=0;xe<64;xe++){var Fe=n((Te[xe]*J+50)/100);Fe<1?Fe=1:Fe>255&&(Fe=255),i[x[xe]]=Fe}for(var Ee=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],me=0,Ae=0;Ae<8;Ae++)for(var pe=0;pe<8;pe++)a[me]=1/(s[x[me]]*Ee[Ae]*Ee[pe]*8),o[me]=1/(i[x[me]]*Ee[Ae]*Ee[pe]*8),me++}function z(J,ce){for(var ge=0,be=0,Te=new Array,xe=1;xe<=16;xe++){for(var Fe=1;Fe<=J[xe];Fe++)Te[ce[be]]=[],Te[ce[be]][0]=ge,Te[ce[be]][1]=xe,be++,ge++;ge*=2}return Te}function oe(){c=z(w,D),u=z(U,G),l=z(M,L),d=z($,K)}function le(){for(var J=1,ce=2,ge=1;ge<=15;ge++){for(var be=J;be>0]=38470*J,I[J+512>>0]=7471*J+32768,I[J+768>>0]=-11059*J,I[J+1024>>0]=-21709*J,I[J+1280>>0]=32768*J+8421375,I[J+1536>>0]=-27439*J,I[J+1792>>0]=-5329*J}function Q(J){for(var ce=J[0],ge=J[1]-1;ge>=0;)ce&1<>8&255),Z(J&255)}function B(J,ce){var ge,be,Te,xe,Fe,Ee,me,Ae,pe=0,Se,Ie=8,Le=64;for(Se=0;Se0?Zy+.5|0:Zy-.5|0;return p}function k(){de(65504),de(16),Z(74),Z(70),Z(73),Z(70),Z(0),Z(1),Z(1),Z(0),de(1),de(1),Z(0),Z(0)}function W(J){if(J){de(65505),J[0]===69&&J[1]===120&&J[2]===105&&J[3]===102?de(J.length+2):(de(J.length+5+2),Z(69),Z(120),Z(105),Z(102),Z(0));for(var ce=0;ce"u"||J.constructor!==Array||J.forEach(ce=>{if(typeof ce=="string"){de(65534);var ge=ce.length;de(ge+2);var be;for(be=0;be0&&m[we]==0;we--);if(we==0)return Q(xe),ge;for(var He=1,Ge;He<=we;){for(var ke=He;m[He]==0&&He<=we;++He);var Qe=He-ke;if(Qe>=me){Ge=Qe>>4;for(var Rt=1;Rt<=Ge;++Rt)Q(Fe);Qe=Qe&15}Ee=32767+m[He],Q(Te[(Qe<<4)+h[Ee]]),Q(f[Ee]),He++}return we!=Ae&&Q(xe),ge}function ae(){for(var J=String.fromCharCode,ce=0;ce<256;ce++)b[ce]=J(ce)}this.encode=function(J,ce){var ge=new Date().getTime();ce&&ne(ce),g=new Array,_=0,y=7,de(65496),k(),q(J.comments),W(J.exifBuffer),H(),P(J.width,J.height),j(),Y();var be=0,Te=0,xe=0;_=0,y=7,this.encode.displayName="_encode_";for(var Fe=J.data,Ee=J.width,me=J.height,Ae=Ee*4,pe=Ee*3,Se,Ie=0,Le,we,He,Ge,ke,Qe,Rt,ze;Ie>3,Qe=(ze&7)*4,ke=Ge+Rt*Ae+Qe,Ie+Rt>=me&&(ke-=Ae*(Ie+1+Rt-me)),Se+Qe>=Ae&&(ke-=Se+Qe-Ae+4),Le=Fe[ke++],we=Fe[ke++],He=Fe[ke++],A[ze]=(I[Le]+I[we+256>>0]+I[He+512>>0]>>16)-128,E[ze]=(I[Le+768>>0]+I[we+1024>>0]+I[He+1280>>0]>>16)-128,v[ze]=(I[Le+1280>>0]+I[we+1536>>0]+I[He+1792>>0]>>16)-128;be=X(A,a,be,c,l),Te=X(E,o,Te,u,d),xe=X(v,o,xe,u,d),Se+=32}Ie+=8}if(y>=0){var ot=[];ot[1]=y+1,ot[0]=(1<"u")return new Uint8Array(g);return Buffer.from(g);var lt,At};function ne(J){if(J<=0&&(J=1),J>100&&(J=100),T!=J){var ce=0;J<50?ce=Math.floor(5e3/J):ce=Math.floor(200-J*2),ee(ce),T=J}}function se(){var J=new Date().getTime();e||(e=50),ae(),oe(),le(),te(),ne(e);var ce=new Date().getTime()-J}se()}typeof tj<"u"?tj.exports=DPt:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].encode=DPt);function DPt(e,t){typeof t>"u"&&(t=50);var r=new Jnn(t),n=r.encode(e,t);return{data:n,width:e.width,height:e.height}}});var kPt=S((PTs,v1e)=>{var y1e=function(){"use strict";var t=new Int32Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),r=4017,n=799,s=3406,i=2276,a=1567,o=3784,c=5793,u=2896;function l(){}function d(y,A){for(var E=0,v=[],b,I,T=16;T>0&&!y[T-1];)T--;v.push({children:[],index:0});var x=v[0],w;for(b=0;b0;){if(v.length===0)throw new Error("Could not recreate Huffman Table");x=v.pop()}for(x.index++,v.push(x);v.length<=b;)v.push(w={children:[],index:0}),x.children[x.index]=w.children,x=w;E++}b+10)return le--,oe>>le&1;if(oe=y[A++],oe==255){var pe=y[A++];if(pe)throw new Error("unexpected marker: "+(oe<<8|pe).toString(16))}return le=7,oe>>>7}function Q(pe){for(var Se=pe,Ie;(Ie=te())!==null;){if(Se=Se[Ie],typeof Se=="number")return Se;if(typeof Se!="object")throw new Error("invalid huffman sequence")}return null}function Z(pe){for(var Se=0;pe>0;){var Ie=te();if(Ie===null)return;Se=Se<<1|Ie,pe--}return Se}function de(pe){var Se=Z(pe);return Se>=1<>4;if(Ge===0){if(ke<15)break;we+=16;continue}we+=ke;var Qe=t[we];Se[Qe]=de(Ge),we++}}function k(pe,Se){var Ie=Q(pe.huffmanTableDC),Le=Ie===0?0:de(Ie)<0){P--;return}for(var Ie=I,Le=T;Ie<=Le;){var we=Q(pe.huffmanTableAC),He=we&15,Ge=we>>4;if(He===0){if(Ge<15){P=Z(Ge)+(1<>4;if(Qe===0)we<15?(P=Z(we)+(1<=65488&&Fe<=65495)A+=2;else break}return A-z}function h(y,A){var E=[],v=A.blocksPerLine,b=A.blocksPerColumn,I=v<<3,T=new Int32Array(64),x=new Uint8Array(64);function w(z,oe,le){var te=A.quantizationTable,Q,Z,de,B,k,W,P,H,j,q=le,Y;for(Y=0;Y<64;Y++)q[Y]=z[Y]*te[Y];for(Y=0;Y<8;++Y){var X=8*Y;if(q[1+X]==0&&q[2+X]==0&&q[3+X]==0&&q[4+X]==0&&q[5+X]==0&&q[6+X]==0&&q[7+X]==0){j=c*q[0+X]+512>>10,q[0+X]=j,q[1+X]=j,q[2+X]=j,q[3+X]=j,q[4+X]=j,q[5+X]=j,q[6+X]=j,q[7+X]=j;continue}Q=c*q[0+X]+128>>8,Z=c*q[4+X]+128>>8,de=q[2+X],B=q[6+X],k=u*(q[1+X]-q[7+X])+128>>8,H=u*(q[1+X]+q[7+X])+128>>8,W=q[3+X]<<4,P=q[5+X]<<4,j=Q-Z+1>>1,Q=Q+Z+1>>1,Z=j,j=de*o+B*a+128>>8,de=de*a-B*o+128>>8,B=j,j=k-P+1>>1,k=k+P+1>>1,P=j,j=H+W+1>>1,W=H-W+1>>1,H=j,j=Q-B+1>>1,Q=Q+B+1>>1,B=j,j=Z-de+1>>1,Z=Z+de+1>>1,de=j,j=k*i+H*s+2048>>12,k=k*s-H*i+2048>>12,H=j,j=W*n+P*r+2048>>12,W=W*r-P*n+2048>>12,P=j,q[0+X]=Q+H,q[7+X]=Q-H,q[1+X]=Z+P,q[6+X]=Z-P,q[2+X]=de+W,q[5+X]=de-W,q[3+X]=B+k,q[4+X]=B-k}for(Y=0;Y<8;++Y){var ae=Y;if(q[8+ae]==0&&q[16+ae]==0&&q[24+ae]==0&&q[32+ae]==0&&q[40+ae]==0&&q[48+ae]==0&&q[56+ae]==0){j=c*le[Y+0]+8192>>14,q[0+ae]=j,q[8+ae]=j,q[16+ae]=j,q[24+ae]=j,q[32+ae]=j,q[40+ae]=j,q[48+ae]=j,q[56+ae]=j;continue}Q=c*q[0+ae]+2048>>12,Z=c*q[32+ae]+2048>>12,de=q[16+ae],B=q[48+ae],k=u*(q[8+ae]-q[56+ae])+2048>>12,H=u*(q[8+ae]+q[56+ae])+2048>>12,W=q[24+ae],P=q[40+ae],j=Q-Z+1>>1,Q=Q+Z+1>>1,Z=j,j=de*o+B*a+2048>>12,de=de*a-B*o+2048>>12,B=j,j=k-P+1>>1,k=k+P+1>>1,P=j,j=H+W+1>>1,W=H-W+1>>1,H=j,j=Q-B+1>>1,Q=Q+B+1>>1,B=j,j=Z-de+1>>1,Z=Z+de+1>>1,de=j,j=k*i+H*s+2048>>12,k=k*s-H*i+2048>>12,H=j,j=W*n+P*r+2048>>12,W=W*r-P*n+2048>>12,P=j,q[0+ae]=Q+H,q[56+ae]=Q-H,q[8+ae]=Z+P,q[48+ae]=Z-P,q[16+ae]=de+W,q[40+ae]=de-W,q[24+ae]=B+k,q[32+ae]=B-k}for(Y=0;Y<64;++Y){var ne=128+(q[Y]+8>>4);oe[Y]=ne<0?0:ne>255?255:ne}}_(I*b*8);for(var D,M,L=0;L255?255:y}l.prototype={load:function(A){var E=new XMLHttpRequest;E.open("GET",A,!0),E.responseType="arraybuffer",E.onload=function(){var v=new Uint8Array(E.response||E.mozResponseArrayBuffer);this.parse(v),this.onload&&this.onload()}.bind(this),E.send(null)},parse:function(A){var E=this.opts.maxResolutionInMP*1e3*1e3,v=0,b=A.length;function I(){var ke=A[v]<<8|A[v+1];return v+=2,ke}function T(){var ke=I(),Qe=A.subarray(v,v+ke-2);return v+=Qe.length,Qe}function x(ke){var Qe=1,Rt=1,ze,ot;for(ot in ke.components)ke.components.hasOwnProperty(ot)&&(ze=ke.components[ot],Qe>4)if(W>>4===1)for(te=0;te<64;te++){var H=t[te];P[H]=I()}else throw new Error("DQT: invalid table spec");else for(te=0;te<64;te++){var H=t[te];P[H]=A[v++]}G[W&15]=P}break;case 65472:case 65473:case 65474:I(),L={},L.extended=z===65473,L.progressive=z===65474,L.precision=A[v++],L.scanLines=I(),L.samplesPerLine=I(),L.components={},L.componentsOrder=[];var j=L.scanLines*L.samplesPerLine;if(j>E){var q=Math.ceil((j-E)/1e6);throw new Error(`maxResolutionInMP limit exceeded by ${q}MP`)}var Y=A[v++],X,ae=0,ne=0;for(le=0;le>4,J=A[v+1]&15,ce=A[v+2];if(se<=0||J<=0)throw new Error("Invalid sampling factor, expected values above 0");L.componentsOrder.push(X),L.components[X]={h:se,v:J,quantizationIdx:ce},v+=3}x(L),$.push(L);break;case 65476:var ge=I();for(le=2;le>4?K:ee)[be&15]=d(Te,Fe)}break;case 65501:I(),U=I();break;case 65500:I(),I();break;case 65498:var Ee=I(),me=A[v++],Ae=[],pe;for(le=0;le>4],pe.huffmanTableAC=K[Se&15],Ae.push(pe)}var Ie=A[v++],Le=A[v++],we=A[v++],He=f(A,v,L,Ae,U,Ie,Le,we>>4,we&15,this.opts);v+=He;break;case 65535:A[v]!==255&&v--;break;default:if(A[v-3]==255&&A[v-2]>=192&&A[v-2]<=254){v-=3;break}else if(z===224||z==225){if(oe!==-1)throw new Error(`first unknown JPEG marker at offset ${oe.toString(16)}, second unknown JPEG marker ${z.toString(16)} at offset ${(v-1).toString(16)}`);oe=v-1;let ke=I();if(A[v+ke-2]===255){v+=ke-2;break}}throw new Error("unknown JPEG marker "+z.toString(16))}z=I()}if($.length!=1)throw new Error("only single frame JPEGs supported");for(var le=0;le<$.length;le++){var Ge=$[le].components;for(var te in Ge)Ge[te].quantizationTable=G[Ge[te].quantizationIdx],delete Ge[te].quantizationIdx}this.width=L.samplesPerLine,this.height=L.scanLines,this.jfif=w,this.adobe=D,this.components=[];for(var le=0;leg){var E=Math.ceil((A-g)/1024/1024);throw new Error(`maxMemoryUsageInMB limit exceeded by at least ${E}MB`)}m=A}return l.resetMaxMemoryUsage=function(y){m=0,g=y},l.getBytesAllocated=function(){return m},l.requestMemoryAllocation=_,l}();typeof v1e<"u"?v1e.exports=MPt:typeof window<"u"&&(window["jpeg-js"]=window["jpeg-js"]||{},window["jpeg-js"].decode=MPt);function MPt(e,t={}){var r={colorTransform:void 0,useTArray:!1,formatAsRGBA:!0,tolerantDecoding:!0,maxResolutionInMP:100,maxMemoryUsageInMB:512},n={...r,...t},s=new Uint8Array(e),i=new y1e;i.opts=n,y1e.resetMaxMemoryUsage(n.maxMemoryUsageInMB*1024*1024),i.parse(s);var a=n.formatAsRGBA?4:3,o=i.width*i.height*a;try{y1e.requestMemoryAllocation(o);var c={width:i.width,height:i.height,exifBuffer:i.exifBuffer,data:n.useTArray?new Uint8Array(o):Buffer.alloc(o)};i.comments.length>0&&(c.comments=i.comments)}catch(u){throw u instanceof RangeError?new Error("Could not allocate enough memory for the image. Required: "+o):u instanceof ReferenceError&&u.message==="Buffer is not defined"?new Error("Buffer is not globally defined in this environment. Consider setting useTArray to true"):u}return i.copyToImageData(c,n.formatAsRGBA),c}});var UPt=S((LTs,BPt)=>{var Znn=LPt(),esn=kPt();BPt.exports={encode:Znn,decode:esn}});var $Pt=S((MTs,FPt)=>{FPt.exports=require("util").inspect});var A4=S((kTs,aLt)=>{var O1e=typeof Map=="function"&&Map.prototype,S1e=Object.getOwnPropertyDescriptor&&O1e?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,nj=O1e&&S1e&&typeof S1e.get=="function"?S1e.get:null,qPt=O1e&&Map.prototype.forEach,D1e=typeof Set=="function"&&Set.prototype,T1e=Object.getOwnPropertyDescriptor&&D1e?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,sj=D1e&&T1e&&typeof T1e.get=="function"?T1e.get:null,HPt=D1e&&Set.prototype.forEach,tsn=typeof WeakMap=="function"&&WeakMap.prototype,m4=tsn?WeakMap.prototype.has:null,rsn=typeof WeakSet=="function"&&WeakSet.prototype,g4=rsn?WeakSet.prototype.has:null,nsn=typeof WeakRef=="function"&&WeakRef.prototype,VPt=nsn?WeakRef.prototype.deref:null,ssn=Boolean.prototype.valueOf,isn=Object.prototype.toString,asn=Function.prototype.toString,osn=String.prototype.match,P1e=String.prototype.slice,wE=String.prototype.replace,csn=String.prototype.toUpperCase,jPt=String.prototype.toLowerCase,ZPt=RegExp.prototype.test,KPt=Array.prototype.concat,sp=Array.prototype.join,usn=Array.prototype.slice,GPt=Math.floor,R1e=typeof BigInt=="function"?BigInt.prototype.valueOf:null,b1e=Object.getOwnPropertySymbols,C1e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,ax=typeof Symbol=="function"&&typeof Symbol.iterator=="object",_4=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===ax||!0)?Symbol.toStringTag:null,eLt=Object.prototype.propertyIsEnumerable,zPt=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function YPt(e,t){if(e===1/0||e===-1/0||e!==e||e&&e>-1e3&&e<1e3||ZPt.call(/e/,t))return t;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof e=="number"){var n=e<0?-GPt(-e):GPt(e);if(n!==e){var s=String(n),i=P1e.call(t,s.length+1);return wE.call(s,r,"$&_")+"."+wE.call(wE.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return wE.call(t,r,"$&_")}var x1e=$Pt(),QPt=x1e.custom,WPt=nLt(QPt)?QPt:null,tLt={__proto__:null,double:'"',single:"'"},lsn={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};aLt.exports=function e(t,r,n,s){var i=r||{};if(Bg(i,"quoteStyle")&&!Bg(tLt,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Bg(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=Bg(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Bg(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Bg(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof t>"u")return"undefined";if(t===null)return"null";if(typeof t=="boolean")return t?"true":"false";if(typeof t=="string")return iLt(t,i);if(typeof t=="number"){if(t===0)return 1/0/t>0?"0":"-0";var c=String(t);return o?YPt(t,c):c}if(typeof t=="bigint"){var u=String(t)+"n";return o?YPt(t,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof t=="object")return w1e(t)?"[Array]":"[Object]";var d=xsn(i,n);if(typeof s>"u")s=[];else if(sLt(s,t)>=0)return"[Circular]";function f(L,U,G){if(U&&(s=usn.call(s),s.push(U)),G){var $={depth:i.depth};return Bg(i,"quoteStyle")&&($.quoteStyle=i.quoteStyle),e(L,$,n+1,s)}return e(L,i,n+1,s)}if(typeof t=="function"&&!XPt(t)){var h=Esn(t),p=rj(t,f);return"[Function"+(h?": "+h:" (anonymous)")+"]"+(p.length>0?" { "+sp.call(p,", ")+" }":"")}if(nLt(t)){var m=ax?wE.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):C1e.call(t);return typeof t=="object"&&!ax?p4(m):m}if(Isn(t)){for(var g="<"+jPt.call(String(t.nodeName)),_=t.attributes||[],y=0;y<_.length;y++)g+=" "+_[y].name+"="+rLt(dsn(_[y].value),"double",i);return g+=">",t.childNodes&&t.childNodes.length&&(g+="..."),g+="",g}if(w1e(t)){if(t.length===0)return"[]";var A=rj(t,f);return d&&!Csn(A)?"["+N1e(A,d)+"]":"[ "+sp.call(A,", ")+" ]"}if(hsn(t)){var E=rj(t,f);return!("cause"in Error.prototype)&&"cause"in t&&!eLt.call(t,"cause")?"{ ["+String(t)+"] "+sp.call(KPt.call("[cause]: "+f(t.cause),E),", ")+" }":E.length===0?"["+String(t)+"]":"{ ["+String(t)+"] "+sp.call(E,", ")+" }"}if(typeof t=="object"&&a){if(WPt&&typeof t[WPt]=="function"&&x1e)return x1e(t,{depth:l-n});if(a!=="symbol"&&typeof t.inspect=="function")return t.inspect()}if(ysn(t)){var v=[];return qPt&&qPt.call(t,function(L,U){v.push(f(U,t,!0)+" => "+f(L,t))}),JPt("Map",nj.call(t),v,d)}if(Tsn(t)){var b=[];return HPt&&HPt.call(t,function(L){b.push(f(L,t))}),JPt("Set",sj.call(t),b,d)}if(vsn(t))return I1e("WeakMap");if(bsn(t))return I1e("WeakSet");if(Ssn(t))return I1e("WeakRef");if(msn(t))return p4(f(Number(t)));if(_sn(t))return p4(f(R1e.call(t)));if(gsn(t))return p4(ssn.call(t));if(psn(t))return p4(f(String(t)));if(typeof window<"u"&&t===window)return"{ [object Window] }";if(typeof globalThis<"u"&&t===globalThis||typeof global<"u"&&t===global)return"{ [object globalThis] }";if(!fsn(t)&&!XPt(t)){var I=rj(t,f),T=zPt?zPt(t)===Object.prototype:t instanceof Object||t.constructor===Object,x=t instanceof Object?"":"null prototype",w=!T&&_4&&Object(t)===t&&_4 in t?P1e.call(NE(t),8,-1):x?"Object":"",D=T||typeof t.constructor!="function"?"":t.constructor.name?t.constructor.name+" ":"",M=D+(w||x?"["+sp.call(KPt.call([],w||[],x||[]),": ")+"] ":"");return I.length===0?M+"{}":d?M+"{"+N1e(I,d)+"}":M+"{ "+sp.call(I,", ")+" }"}return String(t)};function rLt(e,t,r){var n=r.quoteStyle||t,s=tLt[n];return s+e+s}function dsn(e){return wE.call(String(e),/"/g,""")}function NT(e){return!_4||!(typeof e=="object"&&(_4 in e||typeof e[_4]<"u"))}function w1e(e){return NE(e)==="[object Array]"&&NT(e)}function fsn(e){return NE(e)==="[object Date]"&&NT(e)}function XPt(e){return NE(e)==="[object RegExp]"&&NT(e)}function hsn(e){return NE(e)==="[object Error]"&&NT(e)}function psn(e){return NE(e)==="[object String]"&&NT(e)}function msn(e){return NE(e)==="[object Number]"&&NT(e)}function gsn(e){return NE(e)==="[object Boolean]"&&NT(e)}function nLt(e){if(ax)return e&&typeof e=="object"&&e instanceof Symbol;if(typeof e=="symbol")return!0;if(!e||typeof e!="object"||!C1e)return!1;try{return C1e.call(e),!0}catch{}return!1}function _sn(e){if(!e||typeof e!="object"||!R1e)return!1;try{return R1e.call(e),!0}catch{}return!1}var Asn=Object.prototype.hasOwnProperty||function(e){return e in this};function Bg(e,t){return Asn.call(e,t)}function NE(e){return isn.call(e)}function Esn(e){if(e.name)return e.name;var t=osn.call(asn.call(e),/^function\s*([\w$]+)/);return t?t[1]:null}function sLt(e,t){if(e.indexOf)return e.indexOf(t);for(var r=0,n=e.length;rt.maxStringLength){var r=e.length-t.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return iLt(P1e.call(e,0,t.maxStringLength),t)+n}var s=lsn[t.quoteStyle||"single"];s.lastIndex=0;var i=wE.call(wE.call(e,s,"\\$1"),/[\x00-\x1f]/g,Rsn);return rLt(i,"single",t)}function Rsn(e){var t=e.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return r?"\\"+r:"\\x"+(t<16?"0":"")+csn.call(t.toString(16))}function p4(e){return"Object("+e+")"}function I1e(e){return e+" { ? }"}function JPt(e,t,r,n){var s=n?N1e(r,n):sp.call(r,", ");return e+" ("+t+") {"+s+"}"}function Csn(e){for(var t=0;t=0)return!1;return!0}function xsn(e,t){var r;if(e.indent===" ")r=" ";else if(typeof e.indent=="number"&&e.indent>0)r=sp.call(Array(e.indent+1)," ");else return null;return{base:r,prev:sp.call(Array(t+1),r)}}function N1e(e,t){if(e.length===0)return"";var r=` +`+t.prev+t.base;return r+sp.call(e,","+r)+` +`+t.prev}function rj(e,t){var r=w1e(e),n=[];if(r){n.length=e.length;for(var s=0;s{"use strict";var wsn=A4(),Nsn=DA(),ij=function(e,t,r){for(var n=e,s;(s=n.next)!=null;n=s)if(s.key===t)return n.next=s.next,r||(s.next=e.next,e.next=s),s},Osn=function(e,t){if(e){var r=ij(e,t);return r&&r.value}},Dsn=function(e,t,r){var n=ij(e,t);n?n.value=r:e.next={key:t,next:e.next,value:r}},Psn=function(e,t){return e?!!ij(e,t):!1},Lsn=function(e,t){if(e)return ij(e,t,!0)};oLt.exports=function(){var t,r={assert:function(n){if(!r.has(n))throw new Nsn("Side channel does not contain "+wsn(n))},delete:function(n){var s=t&&t.next,i=Lsn(t,n);return i&&s&&s===i&&(t=void 0),!!i},get:function(n){return Osn(t,n)},has:function(n){return Psn(t,n)},set:function(n,s){t||(t={next:void 0}),Dsn(t,n,s)}};return r}});var L1e=S((UTs,dLt)=>{"use strict";var uLt=GD(),lLt=Xue(),Msn=lLt([uLt("%String.prototype.indexOf%")]);dLt.exports=function(t,r){var n=uLt(t,!!r);return typeof n=="function"&&Msn(t,".prototype.")>-1?lLt([n]):n}});var M1e=S((FTs,hLt)=>{"use strict";var ksn=GD(),E4=L1e(),Bsn=A4(),Usn=DA(),fLt=ksn("%Map%",!0),Fsn=E4("Map.prototype.get",!0),$sn=E4("Map.prototype.set",!0),qsn=E4("Map.prototype.has",!0),Hsn=E4("Map.prototype.delete",!0),Vsn=E4("Map.prototype.size",!0);hLt.exports=!!fLt&&function(){var t,r={assert:function(n){if(!r.has(n))throw new Usn("Side channel does not contain "+Bsn(n))},delete:function(n){if(t){var s=Hsn(t,n);return Vsn(t)===0&&(t=void 0),s}return!1},get:function(n){if(t)return Fsn(t,n)},has:function(n){return t?qsn(t,n):!1},set:function(n,s){t||(t=new fLt),$sn(t,n,s)}};return r}});var mLt=S(($Ts,pLt)=>{"use strict";var jsn=GD(),oj=L1e(),Ksn=A4(),aj=M1e(),Gsn=DA(),ox=jsn("%WeakMap%",!0),zsn=oj("WeakMap.prototype.get",!0),Ysn=oj("WeakMap.prototype.set",!0),Qsn=oj("WeakMap.prototype.has",!0),Wsn=oj("WeakMap.prototype.delete",!0);pLt.exports=ox?function(){var t,r,n={assert:function(s){if(!n.has(s))throw new Gsn("Side channel does not contain "+Ksn(s))},delete:function(s){if(ox&&s&&(typeof s=="object"||typeof s=="function")){if(t)return Wsn(t,s)}else if(aj&&r)return r.delete(s);return!1},get:function(s){return ox&&s&&(typeof s=="object"||typeof s=="function")&&t?zsn(t,s):r&&r.get(s)},has:function(s){return ox&&s&&(typeof s=="object"||typeof s=="function")&&t?Qsn(t,s):!!r&&r.has(s)},set:function(s,i){ox&&s&&(typeof s=="object"||typeof s=="function")?(t||(t=new ox),Ysn(t,s,i)):aj&&(r||(r=aj()),r.set(s,i))}};return n}:aj});var _Lt=S((qTs,gLt)=>{"use strict";var Xsn=DA(),Jsn=A4(),Zsn=cLt(),ein=M1e(),tin=mLt(),rin=tin||ein||Zsn;gLt.exports=function(){var t,r={assert:function(n){if(!r.has(n))throw new Xsn("Side channel does not contain "+Jsn(n))},delete:function(n){return!!t&&t.delete(n)},get:function(n){return t&&t.get(n)},has:function(n){return!!t&&t.has(n)},set:function(n,s){t||(t=rin()),t.set(n,s)}};return r}});var cj=S((HTs,ALt)=>{"use strict";var nin=String.prototype.replace,sin=/%20/g,k1e={RFC1738:"RFC1738",RFC3986:"RFC3986"};ALt.exports={default:k1e.RFC3986,formatters:{RFC1738:function(e){return nin.call(e,sin,"+")},RFC3986:function(e){return String(e)}},RFC1738:k1e.RFC1738,RFC3986:k1e.RFC3986}});var F1e=S((VTs,yLt)=>{"use strict";var iin=cj(),B1e=Object.prototype.hasOwnProperty,OT=Array.isArray,ip=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),ain=function(t){for(;t.length>1;){var r=t.pop(),n=r.obj[r.prop];if(OT(n)){for(var s=[],i=0;i=U1e?a.slice(c,c+U1e):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===iin.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=ip[f];continue}if(f<2048){l[l.length]=ip[192|f>>6]+ip[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=ip[224|f>>12]+ip[128|f>>6&63]+ip[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=ip[240|f>>18]+ip[128|f>>12&63]+ip[128|f>>6&63]+ip[128|f&63]}o+=l.join("")}return o},din=function(t){for(var r=[{obj:{o:t},prop:"o"}],n=[],s=0;s{"use strict";var SLt=_Lt(),uj=F1e(),y4=cj(),gin=Object.prototype.hasOwnProperty,TLt={brackets:function(t){return t+"[]"},comma:"comma",indices:function(t,r){return t+"["+r+"]"},repeat:function(t){return t}},ap=Array.isArray,_in=Array.prototype.push,bLt=function(e,t){_in.apply(e,ap(t)?t:[t])},Ain=Date.prototype.toISOString,vLt=y4.default,Sa={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:uj.encode,encodeValuesOnly:!1,filter:void 0,format:vLt,formatter:y4.formatters[vLt],indices:!1,serializeDate:function(t){return Ain.call(t)},skipNulls:!1,strictNullHandling:!1},Ein=function(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"||typeof t=="symbol"||typeof t=="bigint"},$1e={},yin=function e(t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y){for(var A=t,E=y,v=0,b=!1;(E=E.get($1e))!==void 0&&!b;){var I=E.get(t);if(v+=1,typeof I<"u"){if(I===v)throw new RangeError("Cyclic object value");b=!0}typeof E.get($1e)>"u"&&(v=0)}if(typeof l=="function"?A=l(r,A):A instanceof Date?A=h(A):n==="comma"&&ap(A)&&(A=uj.maybeMap(A,function(oe){return oe instanceof Date?h(oe):oe})),A===null){if(a)return u&&!g?u(r,Sa.encoder,_,"key",p):r;A=""}if(Ein(A)||uj.isBuffer(A)){if(u){var T=g?r:u(r,Sa.encoder,_,"key",p);return[m(T)+"="+m(u(A,Sa.encoder,_,"value",p))]}return[m(r)+"="+m(String(A))]}var x=[];if(typeof A>"u")return x;var w;if(n==="comma"&&ap(A))g&&u&&(A=uj.maybeMap(A,u)),w=[{value:A.length>0?A.join(",")||null:void 0}];else if(ap(l))w=l;else{var D=Object.keys(A);w=d?D.sort(d):D}var M=c?String(r).replace(/\./g,"%2E"):String(r),L=s&&ap(A)&&A.length===1?M+"[]":M;if(i&&ap(A)&&A.length===0)return L+"[]";for(var U=0;U"u"?t.encodeDotInKeys===!0?!0:Sa.allowDots:!!t.allowDots;return{addQueryPrefix:typeof t.addQueryPrefix=="boolean"?t.addQueryPrefix:Sa.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:Sa.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:Sa.charsetSentinel,commaRoundTrip:!!t.commaRoundTrip,delimiter:typeof t.delimiter>"u"?Sa.delimiter:t.delimiter,encode:typeof t.encode=="boolean"?t.encode:Sa.encode,encodeDotInKeys:typeof t.encodeDotInKeys=="boolean"?t.encodeDotInKeys:Sa.encodeDotInKeys,encoder:typeof t.encoder=="function"?t.encoder:Sa.encoder,encodeValuesOnly:typeof t.encodeValuesOnly=="boolean"?t.encodeValuesOnly:Sa.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof t.serializeDate=="function"?t.serializeDate:Sa.serializeDate,skipNulls:typeof t.skipNulls=="boolean"?t.skipNulls:Sa.skipNulls,sort:typeof t.sort=="function"?t.sort:null,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:Sa.strictNullHandling}};ILt.exports=function(e,t){var r=e,n=vin(t),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):ap(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=TLt[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=SLt(),l=0;l0?p+h:""}});var NLt=S((KTs,wLt)=>{"use strict";var DT=F1e(),q1e=Object.prototype.hasOwnProperty,CLt=Array.isArray,Oi={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:DT.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},Sin=function(e){return e.replace(/&#(\d+);/g,function(t,r){return String.fromCharCode(parseInt(r,10))})},xLt=function(e,t,r){if(e&&typeof e=="string"&&t.comma&&e.indexOf(",")>-1)return e.split(",");if(t.throwOnLimitExceeded&&r>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(t.arrayLimit===1?"":"s")+" allowed in an array.");return e},Tin="utf8=%26%2310003%3B",bin="utf8=%E2%9C%93",Iin=function(t,r){var n={__proto__:null},s=r.ignoreQueryPrefix?t.replace(/^\?/,""):t;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(p=CLt(p)?[p]:p);var m=q1e.call(n,h);m&&r.duplicates==="combine"?n[h]=DT.combine(n[h],p):(!m||r.duplicates==="last")&&(n[h]=p)}return n},Rin=function(e,t,r,n){var s=0;if(e.length>0&&e[e.length-1]==="[]"){var i=e.slice(0,-1).join("");s=Array.isArray(t)&&t[i]?t[i].length:0}for(var a=n?t:xLt(t,r,s),o=e.length-1;o>=0;--o){var c,u=e[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:DT.combine([],a);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?c={0:a}:!isNaN(f)&&u!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(c=[],c[f]=a):d!=="__proto__"&&(c[d]=a)}a=c}return a},Cin=function(t,r,n,s){if(t){var i=n.allowDots?t.replace(/\.([^.[]+)/g,"[$1]"):t,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&q1e.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d"u"?Oi.charset:t.charset,n=typeof t.duplicates>"u"?Oi.duplicates:t.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof t.allowDots>"u"?t.decodeDotInKeys===!0?!0:Oi.allowDots:!!t.allowDots;return{allowDots:s,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:Oi.allowEmptyArrays,allowPrototypes:typeof t.allowPrototypes=="boolean"?t.allowPrototypes:Oi.allowPrototypes,allowSparse:typeof t.allowSparse=="boolean"?t.allowSparse:Oi.allowSparse,arrayLimit:typeof t.arrayLimit=="number"?t.arrayLimit:Oi.arrayLimit,charset:r,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:Oi.charsetSentinel,comma:typeof t.comma=="boolean"?t.comma:Oi.comma,decodeDotInKeys:typeof t.decodeDotInKeys=="boolean"?t.decodeDotInKeys:Oi.decodeDotInKeys,decoder:typeof t.decoder=="function"?t.decoder:Oi.decoder,delimiter:typeof t.delimiter=="string"||DT.isRegExp(t.delimiter)?t.delimiter:Oi.delimiter,depth:typeof t.depth=="number"||t.depth===!1?+t.depth:Oi.depth,duplicates:n,ignoreQueryPrefix:t.ignoreQueryPrefix===!0,interpretNumericEntities:typeof t.interpretNumericEntities=="boolean"?t.interpretNumericEntities:Oi.interpretNumericEntities,parameterLimit:typeof t.parameterLimit=="number"?t.parameterLimit:Oi.parameterLimit,parseArrays:t.parseArrays!==!1,plainObjects:typeof t.plainObjects=="boolean"?t.plainObjects:Oi.plainObjects,strictDepth:typeof t.strictDepth=="boolean"?!!t.strictDepth:Oi.strictDepth,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:Oi.strictNullHandling,throwOnLimitExceeded:typeof t.throwOnLimitExceeded=="boolean"?t.throwOnLimitExceeded:!1}};wLt.exports=function(e,t){var r=xin(t);if(e===""||e===null||typeof e>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof e=="string"?Iin(e,r):e,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var win=RLt(),Nin=NLt(),Oin=cj();OLt.exports={formats:Oin,parse:Nin,stringify:win}});var H1e={};kt(H1e,{default:()=>Din,getPanEnabled:()=>Ug,getPanName:()=>ht,getPans:()=>Zs,publishPans:()=>OE});function Zs(){let e=globalThis?.Pans;return Array.isArray(e)?e:[]}function ht(e){return e==="magnet"?"\u78C1\u529B":Zs().find(r=>r?.key===e)?.name||e}function Ug(e,t=Zs()){let r=Array.isArray(t)?t:[];return e==="magnet"?r.some(s=>["magnet","magnet_guangya"].includes(s?.key)&&!!s?.enable):!!r.find(s=>s?.key===e)?.enable}function OE(e){let t=Array.isArray(e)?e:[];return globalThis.Pans=t,globalThis.getPanName=ht,globalThis.getPanEnabled=Ug,t}var Din,yi=ie(()=>{Din={getPans:Zs,getPanName:ht,getPanEnabled:Ug,publishPans:OE}});var rIe={};kt(rIe,{IOS_UA:()=>lx,MAC_UA:()=>Qin,MOBILE_UA:()=>Kin,PC_UA:()=>Gin,UA:()=>zin,UC_UA:()=>Yin,conversion:()=>Zu,delay:()=>Yt,findBestLCS:()=>ean,fixUrl:()=>Jin,formatPlayUrl:()=>S4,formatPlayUrl2:()=>Win,getCookieArray:()=>g0,isEmpty:()=>tIe,jsonParse:()=>Zin,lcs:()=>ULt,rand:()=>PT,randDevice:()=>BLt,randDeviceWithId:()=>eIe,randMAC:()=>jin,randStr:()=>Ta,randUUID:()=>Vin,stripHtmlTag:()=>Xin});function PT(e,t){return Math.floor(Math.random()*(t-e+1))+e}function Ta(e,t,r){var n="";let s=t===void 0?!0:t;for(var i=0;i|《|》/g,"").replace(/\$|#/g," ").trim()}function Win(e,t){var r=t.indexOf("$");return r<=0?S4(e,t):S4(e,t.substring(0,r))+t.substring(r)}function Xin(e){return e.replace(/<\/?[^>]+(>|$)/g,"").replace(/&.{1,5};/g,"").replace(/\s{2,}/g," ")}function Jin(e,t){try{if(t.startsWith("//")){let r=new URL(e);t.substring(2,t.indexOf("/",2)).includes(".")?t=r.protocol+":"+t:t=r.protocol+"://"+r.host+t.substring(1)}else if(!t.includes("://")){let r=new URL(e);t=r.protocol+"://"+r.host+t}}catch{}return t}function Zin(e,t){try{let r=t.url||"";if(r.startsWith("//")&&(r="https:"+r),!r.startsWith("http"))return{};let n=t.headers||{},s=(t["user-agent"]||"").trim();s.length>0&&(n["User-Agent"]=s);let i=(t.referer||"").trim();return i.length>0&&(n.Referer=i),{header:n,url:r}}catch{}return{}}function Zu(e){let t=e/1048576;return t>1024?`${(t/1024).toFixed(2)}GB`:`${parseInt(t).toFixed(0)}MB`}function tIe(e){return e==null?!0:typeof e=="string"||Array.isArray(e)?e.length===0:!1}function ULt(e,t){if(!e||!t)return{length:0,sequence:"",offset:0};for(var r="",n=e.length,s=t.length,i=new Array(n),a=0,o=0,c=0;ca&&(a=i[c][l],d=c-i[c][l]+1,o===d?r+=e[c]:(o=d,r="",r+=e.substr(o,c+1-o))));return{length:a,sequence:r,offset:d}}function ean(e,t){let r=[],n=0;for(let i=0;ir[n].lcs.length&&(n=i)}let s=r[n];return{allLCS:r,bestMatch:s,bestMatchIndex:n}}function Yt(e){return new Promise(t=>setTimeout(t,e))}var v4,MLt,kLt,Kin,Gin,zin,Yin,lx,Qin,g0,Ds=ie(()=>{v4="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";MLt=["Huawei","Xiaomi"],kLt=[["MHA-AL00","HUAWEI Mate 9","MHA-TL00","HUAWEI Mate 9","LON-AL00","HUAWEI Mate 9 Pro","ALP-AL00","HUAWEI Mate 10","ALP-TL00","HUAWEI Mate 10","BLA-AL00","HUAWEI Mate 10 Pro","BLA-TL00","HUAWEI Mate 10 Pro","HMA-AL00","HUAWEI Mate 20","HMA-TL00","HUAWEI Mate 20","LYA-AL00","HUAWEI Mate 20 Pro","LYA-AL10","HUAWEI Mate 20 Pro","LYA-TL00","HUAWEI Mate 20 Pro","EVR-AL00","HUAWEI Mate 20 X","EVR-TL00","HUAWEI Mate 20 X","EVR-AN00","HUAWEI Mate 20 X","TAS-AL00","HUAWEI Mate 30","TAS-TL00","HUAWEI Mate 30","TAS-AN00","HUAWEI Mate 30","TAS-TN00","HUAWEI Mate 30","LIO-AL00","HUAWEI Mate 30 Pro","LIO-TL00","HUAWEI Mate 30 Pro","LIO-AN00","HUAWEI Mate 30 Pro","LIO-TN00","HUAWEI Mate 30 Pro","LIO-AN00m","HUAWEI Mate 30E Pro","OCE-AN10","HUAWEI Mate 40","OCE-AN50","HUAWEI Mate 40E","OCE-AL50","HUAWEI Mate 40E","NOH-AN00","HUAWEI Mate 40 Pro","NOH-AN01","HUAWEI Mate 40 Pro","NOH-AL00","HUAWEI Mate 40 Pro","NOH-AL10","HUAWEI Mate 40 Pro","NOH-AN50","HUAWEI Mate 40E Pro","NOP-AN00","HUAWEI Mate 40 Pro","CET-AL00","HUAWEI Mate 50","CET-AL60","HUAWEI Mate 50E","DCO-AL00","HUAWEI Mate 50 Pro","TAH-AN00","HUAWEI Mate X","TAH-AN00m","HUAWEI Mate Xs","TET-AN00","HUAWEI Mate X2","TET-AN10","HUAWEI Mate X2","TET-AN50","HUAWEI Mate X2","TET-AL00","HUAWEI Mate X2","PAL-AL00","HUAWEI Mate Xs 2","PAL-AL10","HUAWEI Mate Xs 2","EVA-AL00","HUAWEI P9","EVA-AL10","HUAWEI P9","EVA-TL00","HUAWEI P9","EVA-DL00","HUAWEI P9","EVA-CL00","HUAWEI P9","VIE-AL10","HUAWEI P9 Plus","VTR-AL00","HUAWEI P10","VTR-TL00","HUAWEI P10","VKY-AL00","HUAWEI P10 Plus","VKY-TL00","HUAWEI P10 Plus","EML-AL00","HUAWEI P20","EML-TL00","HUAWEI P20","CLT-AL00","HUAWEI P20 Pro","CLT-AL01","HUAWEI P20 Pro","CLT-AL00l","HUAWEI P20 Pro","CLT-TL00","HUAWEI P20 Pro","CLT-TL01","HUAWEI P20 Pro","ELE-AL00","HUAWEI P30","ELE-TL00","HUAWEI P30","VOG-AL00","HUAWEI P30 Pro","VOG-AL10","HUAWEI P30 Pro","VOG-TL00","HUAWEI P30 Pro","ANA-AL00","HUAWEI P40","ANA-AN00","HUAWEI P40","ANA-TN00","HUAWEI P40","ELS-AN00","HUAWEI P40 Pro","ELS-TN00","HUAWEI P40 Pro","ELS-AN10","HUAWEI P40 Pro","ELS-TN10","HUAWEI P40 Pro","ABR-AL00","HUAWEI P50","ABR-AL80","HUAWEI P50","ABR-AL60","HUAWEI P50E","ABR-AL90","HUAWEI P50E","JAD-AL00","HUAWEI P50 Pro","JAD-AL80","HUAWEI P50 Pro","JAD-AL50","HUAWEI P50 Pro","JAD-AL60","HUAWEI P50 Pro","BAL-AL00","HUAWEI P50 Pocket","BAL-AL60","HUAWEI Pocket S","PIC-AL00","HUAWEI nova 2","PIC-TL00","HUAWEI nova 2","BAC-AL00","HUAWEI nova 2 Plus","BAC-TL00","HUAWEI nova 2 Plus","HWI-AL00","HUAWEI nova 2s","HWI-TL00","HUAWEI nova 2s","ANE-AL00","HUAWEI nova 3e","ANE-TL00","HUAWEI nova 3e","PAR-AL00","HUAWEI nova 3","PAR-TL00","HUAWEI nova 3","INE-AL00","HUAWEI nova 3i","INE-TL00","HUAWEI nova 3i","VCE-AL00","HUAWEI nova 4","VCE-TL00","HUAWEI nova 4","MAR-AL00","HUAWEI nova 4e","MAR-TL00","HUAWEI nova 4e","SEA-AL00","HUAWEI nova 5","SEA-TL00","HUAWEI nova 5","SEA-AL10","HUAWEI nova 5 Pro","SEA-TL10","HUAWEI nova 5 Pro","GLK-AL00","HUAWEI nova 5i","GLK-TL00","HUAWEI nova 5i","GLK-LX1U","HUAWEI nova 5i","SPN-TL00","HUAWEI nova 5i Pro","SPN-AL00","HUAWEI nova 5z","WLZ-AL10","HUAWEI nova 6","WLZ-AN00","HUAWEI nova 6","JNY-AL10","HUAWEI nova 6 SE","JNY-TL10","HUAWEI nova 6 SE","JEF-AN00","HUAWEI nova 7","JEF-AN20","HUAWEI nova 7","JEF-TN00","HUAWEI nova 7","JEF-TN20","HUAWEI nova 7","JER-AN10","HUAWEI nova 7 Pro","JER-AN20","HUAWEI nova 7 Pro","JER-TN10","HUAWEI nova 7 Pro","JER-TN20","HUAWEI nova 7 Pro","CDY-AN00","HUAWEI nova 7 SE","CDY-AN20","HUAWEI nova 7 SE","CDY-TN00","HUAWEI nova 7 SE","CDY-TN20","HUAWEI nova 7 SE","ANG-AN00","HUAWEI nova 8","BRQ-AN00","HUAWEI nova 8 Pro","BRQ-AL00","HUAWEI nova 8 Pro","JSC-AN00","HUAWEI nova 8 SE","JSC-TN00","HUAWEI nova 8 SE","JSC-AL50","HUAWEI nova 8 SE","NAM-AL00","HUAWEI nova 9","RTE-AL00","HUAWEI nova 9 Pro","JLN-AL00","HUAWEI nova 9 SE","NCO-AL00","HUAWEI nova 10","GLA-AL00","HUAWEI nova 10 Pro","CHA-AL80","HUAWEI nova 10z"],["M2001J2C","Xiaomi 10","M2001J2G","Xiaomi 10","M2001J2I","Xiaomi 10","M2011K2C","Xiaomi 11","M2011K2G","Xiaomi 11","2201123C","Xiaomi 12","2201123G","Xiaomi 12","2112123AC","Xiaomi 12X","2112123AG","Xiaomi 12X","2201122C","Xiaomi 12 Pro","2201122G","Xiaomi 12 Pro"]];Kin="Mozilla/5.0 (Linux; Android 11; M2007J3SC Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045714 Mobile Safari/537.36",Gin="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36",zin="Mozilla/5.0",Yin="Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36",lx="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",Qin="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0";g0=e=>e.map(t=>t.split(";")[0]+";")});var T4=S((nIe,sIe)=>{(function(e,t){typeof nIe=="object"&&typeof sIe<"u"?sIe.exports=t():typeof define=="function"&&define.amd?define(t):(e=typeof globalThis<"u"?globalThis:e||self).dayjs=t()})(nIe,function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",h="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var L=["th","st","nd","rd"],U=M%100;return"["+M+(L[(U-20)%10]||L[U]||L[0])+"]"}},_=function(M,L,U){var G=String(M);return!G||G.length>=L?M:""+Array(L+1-G.length).join(U)+M},y={s:_,z:function(M){var L=-M.utcOffset(),U=Math.abs(L),G=Math.floor(U/60),$=U%60;return(L<=0?"+":"-")+_(G,2,"0")+":"+_($,2,"0")},m:function M(L,U){if(L.date()1)return M(ee[0])}else{var z=L.name;E[z]=L,$=z}return!G&&$&&(A=$),$||!G&&A},T=function(M,L){if(b(M))return M.clone();var U=typeof L=="object"?L:{};return U.date=M,U.args=arguments,new w(U)},x=y;x.l=I,x.i=b,x.w=function(M,L){return T(M,{locale:L.$L,utc:L.$u,x:L.$x,$offset:L.$offset})};var w=function(){function M(U){this.$L=I(U.locale,null,!0),this.parse(U),this.$x=this.$x||U.x||{},this[v]=!0}var L=M.prototype;return L.parse=function(U){this.$d=function(G){var $=G.date,K=G.utc;if($===null)return new Date(NaN);if(x.u($))return new Date;if($ instanceof Date)return new Date($);if(typeof $=="string"&&!/Z$/i.test($)){var ee=$.match(p);if(ee){var z=ee[2]-1||0,oe=(ee[7]||"0").substring(0,3);return K?new Date(Date.UTC(ee[1],z,ee[3]||1,ee[4]||0,ee[5]||0,ee[6]||0,oe)):new Date(ee[1],z,ee[3]||1,ee[4]||0,ee[5]||0,ee[6]||0,oe)}}return new Date($)}(U),this.init()},L.init=function(){var U=this.$d;this.$y=U.getFullYear(),this.$M=U.getMonth(),this.$D=U.getDate(),this.$W=U.getDay(),this.$H=U.getHours(),this.$m=U.getMinutes(),this.$s=U.getSeconds(),this.$ms=U.getMilliseconds()},L.$utils=function(){return x},L.isValid=function(){return this.$d.toString()!==h},L.isSame=function(U,G){var $=T(U);return this.startOf(G)<=$&&$<=this.endOf(G)},L.isAfter=function(U,G){return T(U){"use strict";Object.defineProperty(jr,"__esModule",{value:!0});jr.getOptions=jr.setOptions=jr.hasOwnProp=jr.formatDate=jr.camelify=jr.splitByCommaWithPreservingQuotes=jr.trim=jr.splitAt=jr.tryCatch=jr.byteSequenceToHex=jr.hexToByteSequence=jr.toNumber=jr.INVALIDPLAYLIST=jr.CONDITIONALPARAMCHECK=jr.PARAMCHECK=jr.CONDITIONALASSERT=jr.ASSERT=jr.THROW=void 0;var b4={};function LT(e){if(!b4.strictMode){b4.silent||console.error(e.message);return}throw e}jr.THROW=LT;function tan(e,...t){for(let[r,n]of t.entries())n||LT(new Error(`${e} : Failed at [${r}]`))}jr.ASSERT=tan;function ran(...e){for(let[t,[r,n]]of e.entries())r&&(n||LT(new Error(`Conditional Assert : Failed at [${t}]`)))}jr.CONDITIONALASSERT=ran;function nan(...e){for(let[t,r]of e.entries())r===void 0&<(new Error(`Param Check : Failed at [${t}]`))}jr.PARAMCHECK=nan;function san(...e){for(let[t,[r,n]]of e.entries())r&&n===void 0&<(new Error(`Conditional Param Check : Failed at [${t}]`))}jr.CONDITIONALPARAMCHECK=san;function ian(e){LT(new Error(`Invalid Playlist : ${e}`))}jr.INVALIDPLAYLIST=ian;function FLt(e,t=10){if(typeof e=="number")return e;let r=t===10?Number.parseFloat(e):Number.parseInt(e,t);return Number.isNaN(r)?0:r}jr.toNumber=FLt;function aan(e){(e.startsWith("0x")||e.startsWith("0X"))&&(e=e.slice(2));let t=[];for(let r=0;r{"use strict";var _an=nn&&nn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Aan=nn&&nn.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Ean=nn&&nn.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&_an(t,e,r);return Aan(t,e),t};Object.defineProperty(nn,"__esModule",{value:!0});nn.RenditionReport=nn.PrefetchSegment=nn.PartialSegment=nn.Segment=nn.MediaPlaylist=nn.MasterPlaylist=nn.Playlist=nn.SpliceInfo=nn.DateRange=nn.MediaInitializationSection=nn.Key=nn.SessionData=nn.Variant=nn.Rendition=void 0;var ca=Ean(I4()),iIe=class{constructor({type:t,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){ca.PARAMCHECK(t,n,a),ca.CONDITIONALASSERT([t==="SUBTITLES",r],[t==="CLOSED-CAPTIONS",l],[t==="CLOSED-CAPTIONS",!r],[u,t==="SUBTITLES"]),this.type=t,this.uri=r,this.groupId=n,this.language=s,this.assocLanguage=i,this.name=a,this.isDefault=o,this.autoselect=c,this.forced=u,this.instreamId=l,this.characteristics=d,this.channels=f}};nn.Rendition=iIe;var aIe=class{constructor({uri:t,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:h,audio:p=[],video:m=[],subtitles:g=[],closedCaptions:_=[],currentRenditions:y={audio:0,video:0,subtitles:0,closedCaptions:0}}){ca.PARAMCHECK(t,n),this.uri=t,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=s,this.score=i,this.codecs=a,this.resolution=o,this.frameRate=c,this.hdcpLevel=u,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=h,this.audio=p,this.video=m,this.subtitles=g,this.closedCaptions=_,this.currentRenditions=y}};nn.Variant=aIe;var oIe=class{constructor({id:t,value:r,uri:n,language:s}){ca.PARAMCHECK(t,r||n),ca.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=t,this.value=r,this.uri=n,this.language=s}};nn.SessionData=oIe;var cIe=class{constructor({method:t,uri:r,iv:n,format:s,formatVersion:i}){ca.PARAMCHECK(t),ca.CONDITIONALPARAMCHECK([t!=="NONE",r]),ca.CONDITIONALASSERT([t==="NONE",!(r||n||s||i)]),this.method=t,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};nn.Key=cIe;var uIe=class{constructor({hint:t=!1,uri:r,mimeType:n,byterange:s}){ca.PARAMCHECK(r),this.hint=t,this.uri=r,this.mimeType=n,this.byterange=s}};nn.MediaInitializationSection=uIe;var lIe=class{constructor({id:t,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){ca.PARAMCHECK(t),ca.CONDITIONALPARAMCHECK([o===!0,r]),ca.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=t,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};nn.DateRange=lIe;var dIe=class{constructor({type:t,duration:r,tagName:n,value:s}){ca.PARAMCHECK(t),ca.CONDITIONALPARAMCHECK([t==="OUT",r]),ca.CONDITIONALPARAMCHECK([t==="RAW",n]),this.type=t,this.duration=r,this.tagName=n,this.value=s}};nn.SpliceInfo=dIe;var dx=class{constructor(t){ca.PARAMCHECK(t),this.type=t}},R4=class extends dx{constructor({isMasterPlaylist:t,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),ca.PARAMCHECK(t),this.isMasterPlaylist=t,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};nn.Playlist=R4;var fIe=class extends R4{constructor(t={}){super({...t,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=t;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};nn.MasterPlaylist=fIe;var hIe=class extends R4{constructor(t={}){super({...t,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:s=0,endlist:i=!1,playlistType:a,isIFrame:o,segments:c=[],prefetchSegments:u=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:h=0,hash:p}=t;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=s,this.endlist=i,this.playlistType=a,this.isIFrame=o,this.segments=c,this.prefetchSegments=u,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=h,this.hash=p}};nn.MediaPlaylist=hIe;var pIe=class extends dx{constructor({uri:t,mimeType:r,data:n,duration:s,title:i,byterange:a,discontinuity:o,mediaSequenceNumber:c=0,discontinuitySequence:u=0,key:l,map:d,programDateTime:f,dateRange:h,markers:p=[],parts:m=[]}){super("segment"),this.uri=t,this.mimeType=r,this.data=n,this.duration=s,this.title=i,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=c,this.discontinuitySequence=u,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=h,this.markers=p,this.parts=m}};nn.Segment=pIe;var mIe=class extends dx{constructor({hint:t=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),ca.PARAMCHECK(r),this.hint=t,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};nn.PartialSegment=mIe;var gIe=class extends dx{constructor({uri:t,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),ca.PARAMCHECK(t),this.uri=t,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};nn.PrefetchSegment=gIe;var _Ie=class{constructor({uri:t,lastMSN:r,lastPart:n}){ca.PARAMCHECK(t),this.uri=t,this.lastMSN=r,this.lastPart=n}};nn.RenditionReport=_Ie});var zLt=S($g=>{"use strict";var yan=$g&&$g.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),van=$g&&$g.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),San=$g&&$g.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&yan(t,e,r);return van(t,e),t};Object.defineProperty($g,"__esModule",{value:!0});var nt=San(I4()),Xa=AIe();function KLt(e){return nt.trim(e,'"')}function Tan(e){switch(e){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function ban(e){let t=nt.splitAt(e,",");return{duration:nt.toNumber(t[0]),title:decodeURIComponent(escape(t[1]))}}function GLt(e){let t=nt.splitAt(e,"@");return{length:nt.toNumber(t[0]),offset:t[1]?nt.toNumber(t[1]):-1}}function Ian(e){let t=nt.splitAt(e,"x");return{width:nt.toNumber(t[0]),height:nt.toNumber(t[1])}}function Ran(e){let t="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=e.split(",");r.length===0&&nt.INVALIDPLAYLIST(t);let n=[];for(let s of r){let[i,a]=nt.splitAt(s,":");if(!i||!a){nt.INVALIDPLAYLIST(t);continue}n.push({format:i,cpcList:a.split("/")})}return n}function Can(e){let t=nt.hexToByteSequence(e);return t.length!==16&&nt.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),t}function xan(e){return e.startsWith('"')?KLt(e):e.startsWith("0x")||e.startsWith("0X")?nt.hexToByteSequence(e):nt.toNumber(e)}function EIe(e,t){t.IV&&e.compatibleVersion<2&&(e.compatibleVersion=2),(t.KEYFORMAT||t.KEYFORMATVERSIONS)&&e.compatibleVersion<5&&(e.compatibleVersion=5)}function $Lt(e){let t={};for(let r of nt.splitByCommaWithPreservingQuotes(e)){let[n,s]=nt.splitAt(r,"="),i=KLt(s);switch(n){case"URI":t[n]=i;break;case"START-DATE":case"END-DATE":t[n]=new Date(i);break;case"IV":t[n]=Can(i);break;case"BYTERANGE":t[n]=GLt(i);break;case"RESOLUTION":t[n]=Ian(i);break;case"ALLOWED-CPC":t[n]=Ran(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":t[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":t[n]=nt.toNumber(i);break;default:n.startsWith("SCTE35-")?t[n]=nt.hexToByteSequence(i):n.startsWith("X-")?t[n]=xan(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&nt.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),t[n]=i)}}return t}function wan(e,t){switch(e){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[nt.toNumber(t),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(t))?[null,$Lt(t)]:[nt.toNumber(t),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,$Lt(t)];case"EXTINF":return[ban(t),null];case"EXT-X-BYTERANGE":return[GLt(t),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(t),null];case"EXT-X-PLAYLIST-TYPE":return[t,null];default:return[t,null]}}function qLt(){nt.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function Nan(e){let t=e.indexOf(":");return t===-1?[e.slice(1).trim(),null]:[e.slice(1,t).trim(),e.slice(t+1).trim()]}function Oan({attributes:e}){return new Xa.Rendition({type:e.TYPE,uri:e.URI,groupId:e["GROUP-ID"],language:e.LANGUAGE,assocLanguage:e["ASSOC-LANGUAGE"],name:e.NAME,isDefault:e.DEFAULT,autoselect:e.AUTOSELECT,forced:e.FORCED,instreamId:e["INSTREAM-ID"],characteristics:e.CHARACTERISTICS,channels:e.CHANNELS})}function Dan(e,t){let r=!1;for(let n of e){if(n.name===t.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&t.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function Pan(e,t,r){let n=Oan(t),s=e[nt.camelify(r)],i=Dan(s,n);i&&nt.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(e.currentRenditions[nt.camelify(r)]=s.length-1)}function Lan(e,t,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&e[n]==="NONE"?(r.isClosedCaptionsNone=!0,t.closedCaptions=[]):e[n]&&!t[nt.camelify(n)].some(s=>s.groupId===e[n])&&nt.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function HLt(e,t,r,n,s){let i=new Xa.Variant({uri:r,bandwidth:t.BANDWIDTH,averageBandwidth:t["AVERAGE-BANDWIDTH"],score:t.SCORE,codecs:t.CODECS,resolution:t.RESOLUTION,frameRate:t["FRAME-RATE"],hdcpLevel:t["HDCP-LEVEL"],allowedCpc:t["ALLOWED-CPC"],videoRange:t["VIDEO-RANGE"],stableVariantId:t["STABLE-VARIANT-ID"],programId:t["PROGRAM-ID"]});for(let a of e)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&nt.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),t[c]===o["GROUP-ID"]&&(Pan(i,a,c),c==="CLOSED-CAPTIONS")){for(let{instreamId:u}of i.closedCaptions)if(u&&u.startsWith("SERVICE")&&s.compatibleVersion<7){s.compatibleVersion=7;break}}}return Lan(t,i,s),i.isIFrameOnly=n,i}function Man(e,t){if(e.method!==t.method||e.uri!==t.uri)return!1;if(e.iv){if(!t.iv||e.iv.length!==t.iv.length)return!1;for(let r=0;ru.id===c.id&&u.language===c.language)&&nt.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&nt.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new Xa.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>Man(u,c))&&nt.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),EIe(t,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&nt.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&nt.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&nt.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&nt.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(t.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&nt.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function VLt(e,t,r,n,s,i,a){let o=new Xa.Segment({uri:t,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:h}=e[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&nt.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&nt.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&nt.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),EIe(a,h),o.key=new Xa.Key({method:h.METHOD,uri:h.URI,iv:h.IV,format:h.KEYFORMAT,formatVersion:h.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&nt.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new Xa.MediaInitializationSection({uri:h.URI,byterange:h.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let p={};for(let m of Object.keys(h))(m.startsWith("SCTE35-")||m.startsWith("X-"))&&(p[m]=h[m]);o.dateRange=new Xa.DateRange({id:h.ID,classId:h.CLASS,start:h["START-DATE"],end:h["END-DATE"],duration:h.DURATION,plannedDuration:h["PLANNED-DURATION"],endOnNext:h["END-ON-NEXT"],attributes:p})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new Xa.SpliceInfo({type:"OUT",duration:h&&h.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new Xa.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new Xa.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!h.TYPE)nt.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&h.TYPE==="PART"&&u)nt.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!h.URI)nt.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&h.TYPE==="MAP")c&&nt.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new Xa.MediaInitializationSection({hint:!0,uri:h.URI,byterange:{length:h["BYTERANGE-LENGTH"],offset:h["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&h.TYPE==="PART"){d==="EXT-X-PART"&&!h.DURATION&&nt.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let p=new Xa.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:h.URI,byterange:d==="EXT-X-PART"?h.BYTERANGE:{length:h["BYTERANGE-LENGTH"],offset:h["BYTERANGE-START"]||0},duration:h.DURATION,independent:h.INDEPENDENT,gap:h.GAP});o.parts.push(p)}}return o}function Ban(e,t,r,n,s,i,a){let o=new Xa.PrefetchSegment({uri:t,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=e[c];u==="EXTINF"?nt.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?nt.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?(EIe(a,l),o.key=new Xa.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&nt.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function Uan(e,t){let r=new Xa.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of e.entries()){let{name:h,value:p,attributes:m,category:g}=f;if(g==="Segment"){n===-1&&(n=d),h==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(h==="EXT-X-VERSION")r.version===void 0?r.version=p:nt.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(h==="EXT-X-TARGETDURATION")r.targetDuration=t.targetDuration=p;else if(h==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&nt.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=p;else if(h==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&nt.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&nt.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=p;else if(h==="EXT-X-ENDLIST")r.endlist=!0;else if(h==="EXT-X-PLAYLIST-TYPE")r.playlistType=p;else if(h==="EXT-X-I-FRAMES-ONLY")t.compatibleVersion<4&&(t.compatibleVersion=4),r.isIFrame=!0;else if(h==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&nt.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(h==="EXT-X-START")r.start&&nt.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof m["TIME-OFFSET"]!="number"&&nt.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:m["TIME-OFFSET"],precise:m.PRECISE||!1};else if(h==="EXT-X-SERVER-CONTROL")m["CAN-BLOCK-RELOAD"]||nt.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:m["CAN-BLOCK-RELOAD"],canSkipUntil:m["CAN-SKIP-UNTIL"],holdBack:m["HOLD-BACK"],partHoldBack:m["PART-HOLD-BACK"]};else if(h==="EXT-X-PART-INF")m["PART-TARGET"]||nt.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=m["PART-TARGET"];else if(h==="EXT-X-RENDITION-REPORT")m.URI||nt.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),m.URI.search(/^[a-z]+:/)===0&&nt.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new Xa.RenditionReport({uri:m.URI,lastMSN:m["LAST-MSN"],lastPart:m["LAST-PART"]}));else if(h==="EXT-X-SKIP")m["SKIPPED-SEGMENTS"]||nt.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),t.compatibleVersion<9&&(t.compatibleVersion=9),r.skip=m["SKIPPED-SEGMENTS"],s+=r.skip;else if(h==="EXT-X-PREFETCH"){let _=Ban(e,p,n===-1?d:n,d-1,s++,o,t);_&&(_.discontinuity&&(_.discontinuitySequence++,o=_.discontinuitySequence),_.key?c=_.key:_.key=c,r.prefetchSegments.push(_)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&nt.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||nt.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&nt.INVALIDPLAYLIST("These segments must appear after all complete segments.");let _=VLt(e,f,n,d-1,s++,o,t);_&&([o,c,u]=jLt(r,_,o,c,u),!l&&_.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=VLt(e,"",n,e.length-1,s++,o,t);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&nt.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),jLt(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return Fan(r.segments),r.lowLatencyCompatibility&&$an(r,l),r}function jLt(e,t,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=t;if(i&&(t.discontinuitySequence=r+1),a||(t.key=n),o||(t.map=s),c&&c.offset===-1){let{segments:l}=e;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:nt.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else nt.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return e.segments.push(t),[t.discontinuitySequence,t.key,t.map]}function Fan(e){let t=new Map,r=new Map,n=!1,s=!1;for(let i=e.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=e[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&nt.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&nt.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=t.get(o.classId)),t.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start0&&ur&&nt.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(u.lastPart=l.parts.length-1)}}function qan(e,t){if(e==="Segment"||e==="MediaPlaylist"){if(t.isMasterPlaylist===void 0){t.isMasterPlaylist=!1;return}t.isMasterPlaylist&&qLt();return}if(e==="MasterPlaylist"){if(t.isMasterPlaylist===void 0){t.isMasterPlaylist=!0;return}t.isMasterPlaylist===!1&&qLt()}}function Han(e,t){let[r,n]=Nan(e),s=Tan(r);if(qan(s,t),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(t.hash[r]&&nt.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),t.hash[r]=!0);let[i,a]=wan(r,n);return{name:r,category:s,value:i,attributes:a}}function Van(e,t){let r=[];for(let n of e.split(` +`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=Han(s,t);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&nt.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function jan(e,t){let r;return t.isMasterPlaylist?r=kan(e,t):(r=Uan(e,t),!r.isIFrame&&t.hasMap&&t.compatibleVersion<6&&(t.compatibleVersion=6)),t.compatibleVersion>1&&(!r.version||r.version{"use strict";var Gan=qg&&qg.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),zan=qg&&qg.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Yan=qg&&qg.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&Gan(t,e,r);return zan(t,e),t};Object.defineProperty(qg,"__esModule",{value:!0});var _0=Yan(I4()),Qan=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],Wan=["#EXT-X-MEDIA"],yIe=class extends Array{constructor(t){super(),this.baseUri=t}push(...t){for(let r of t){if(!r.startsWith("#")){super.push(r);continue}if(Qan.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(Wan.some(n=>r.startsWith(n)))continue;_0.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function vIe(e,t){let r=1e3;t&&(r=10**t);let n=Math.round(e*r)/r;return t?n.toFixed(t):n}function Xan(e){let t=e.toString(10),r=t.indexOf(".");return r===-1?0:t.length-r-1}function Jan(e,t){for(let r of t.sessionDataList)e.push(Zan(r));for(let r of t.sessionKeyList)e.push(YLt(r,!0));for(let r of t.variants)eon(e,r)}function Zan(e){let t=[`DATA-ID="${e.id}"`];return e.language&&t.push(`LANGUAGE="${e.language}"`),e.value?t.push(`VALUE="${e.value}"`):e.uri&&t.push(`URI="${e.uri}"`),`#EXT-X-SESSION-DATA:${t.join(",")}`}function YLt(e,t){let r=t?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${e.method}`];return e.uri&&n.push(`URI="${e.uri}"`),e.iv&&(e.iv.length!==16&&_0.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${_0.byteSequenceToHex(e.iv)}`)),e.format&&n.push(`KEYFORMAT="${e.format}"`),e.formatVersion&&n.push(`KEYFORMATVERSIONS="${e.formatVersion}"`),`${r}:${n.join(",")}`}function eon(e,t){let r=t.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${t.bandwidth}`];if(t.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${t.averageBandwidth}`),t.isIFrameOnly&&n.push(`URI="${t.uri}"`),t.codecs&&n.push(`CODECS="${t.codecs}"`),t.resolution&&n.push(`RESOLUTION=${t.resolution.width}x${t.resolution.height}`),t.frameRate&&n.push(`FRAME-RATE=${vIe(t.frameRate,3)}`),t.hdcpLevel&&n.push(`HDCP-LEVEL=${t.hdcpLevel}`),t.audio.length>0){n.push(`AUDIO="${t.audio[0].groupId}"`);for(let s of t.audio)e.push(dj(s))}if(t.video.length>0){n.push(`VIDEO="${t.video[0].groupId}"`);for(let s of t.video)e.push(dj(s))}if(t.subtitles.length>0){n.push(`SUBTITLES="${t.subtitles[0].groupId}"`);for(let s of t.subtitles)e.push(dj(s))}if(_0.getOptions().allowClosedCaptionsNone&&t.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(t.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${t.closedCaptions[0].groupId}"`);for(let s of t.closedCaptions)e.push(dj(s))}if(t.score&&n.push(`SCORE=${t.score}`),t.allowedCpc){let s=[];for(let{format:i,cpcList:a}of t.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}t.videoRange&&n.push(`VIDEO-RANGE=${t.videoRange}`),t.stableVariantId&&n.push(`STABLE-VARIANT-ID="${t.stableVariantId}"`),t.programId&&n.push(`PROGRAM-ID=${t.programId}`),e.push(`${r}:${n.join(",")}`),t.isIFrameOnly||e.push(`${t.uri}`)}function dj(e){let t=[`TYPE=${e.type}`,`GROUP-ID="${e.groupId}"`,`NAME="${e.name}"`];return e.isDefault!==void 0&&t.push(`DEFAULT=${e.isDefault?"YES":"NO"}`),e.autoselect!==void 0&&t.push(`AUTOSELECT=${e.autoselect?"YES":"NO"}`),e.forced!==void 0&&t.push(`FORCED=${e.forced?"YES":"NO"}`),e.language&&t.push(`LANGUAGE="${e.language}"`),e.assocLanguage&&t.push(`ASSOC-LANGUAGE="${e.assocLanguage}"`),e.instreamId&&t.push(`INSTREAM-ID="${e.instreamId}"`),e.characteristics&&t.push(`CHARACTERISTICS="${e.characteristics}"`),e.channels&&t.push(`CHANNELS="${e.channels}"`),e.uri&&t.push(`URI="${e.uri}"`),`#EXT-X-MEDIA:${t.join(",")}`}function ton(e,t){let r="",n="",s=!1;if(t.targetDuration&&e.push(`#EXT-X-TARGETDURATION:${t.targetDuration}`),t.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=t.lowLatencyCompatibility,u=[];u.push(`CAN-BLOCK-RELOAD=${i?"YES":"NO"}`),a!==void 0&&u.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&u.push(`HOLD-BACK=${o}`),c!==void 0&&u.push(`PART-HOLD-BACK=${c}`),e.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}t.partTargetDuration&&e.push(`#EXT-X-PART-INF:PART-TARGET=${t.partTargetDuration}`),t.mediaSequenceBase&&e.push(`#EXT-X-MEDIA-SEQUENCE:${t.mediaSequenceBase}`),t.discontinuitySequenceBase&&e.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${t.discontinuitySequenceBase}`),t.playlistType&&e.push(`#EXT-X-PLAYLIST-TYPE:${t.playlistType}`),t.isIFrame&&e.push("#EXT-X-I-FRAMES-ONLY"),t.skip>0&&e.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${t.skip}`);for(let i of t.segments){let a="";[r,n,a]=ron(e,i,r,n,t.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}t.playlistType==="VOD"&&s&&e.push("#EXT-X-CUE-IN"),t.prefetchSegments.length>2&&_0.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of t.prefetchSegments)i.discontinuity&&e.push("#EXT-X-PREFETCH-DISCONTINUITY"),e.push(`#EXT-X-PREFETCH:${i.uri}`);t.endlist&&e.push("#EXT-X-ENDLIST");for(let i of t.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),e.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function ron(e,t,r,n,s=1){let i=!1,a="";if(t.discontinuity&&e.push("#EXT-X-DISCONTINUITY"),t.key){let c=YLt(t.key);c!==r&&(e.push(c),r=c)}if(t.map){let c=non(t.map);c!==n&&(e.push(c),n=c)}if(t.programDateTime&&e.push(`#EXT-X-PROGRAM-DATE-TIME:${_0.formatDate(t.programDateTime)}`),t.dateRange&&e.push(son(t.dateRange)),t.markers.length>0&&(a=ion(e,t.markers)),t.parts.length>0&&(i=aon(e,t.parts)),i)return[r,n];let o=s<3?Math.round(t.duration):vIe(t.duration,Xan(t.duration));return e.push(`#EXTINF:${o},${unescape(encodeURIComponent(t.title||""))}`),t.byterange&&e.push(`#EXT-X-BYTERANGE:${SIe(t.byterange)}`),Array.prototype.push.call(e,`${t.uri}`),[r,n,a]}function non(e){let t=[`URI="${e.uri}"`];return e.byterange&&t.push(`BYTERANGE="${SIe(e.byterange)}"`),`#EXT-X-MAP:${t.join(",")}`}function SIe({offset:e,length:t}){return`${t}@${e}`}function son(e){let t=[`ID="${e.id}"`];e.start&&t.push(`START-DATE="${_0.formatDate(e.start)}"`),e.end&&t.push(`END-DATE="${_0.formatDate(e.end)}"`),e.duration&&t.push(`DURATION=${e.duration}`),e.plannedDuration&&t.push(`PLANNED-DURATION=${e.plannedDuration}`),e.classId&&t.push(`CLASS="${e.classId}"`),e.endOnNext&&t.push("END-ON-NEXT=YES");for(let r of Object.keys(e.attributes))r.startsWith("X-")?typeof e.attributes[r]=="number"?t.push(`${r}=${e.attributes[r]}`):t.push(`${r}="${e.attributes[r]}"`):r.startsWith("SCTE35-")&&t.push(`${r}=${_0.byteSequenceToHex(e.attributes[r])}`);return`#EXT-X-DATERANGE:${t.join(",")}`}function ion(e,t){let r="";for(let n of t)if(n.type==="OUT")r="OUT",e.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",e.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";e.push(`#${n.tagName}${s}`)}return r}function aon(e,t){let r=!1;for(let n of t)if(n.hint){let s=[];if(s.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:i,length:a}=n.byterange;s.push(`BYTERANGE-START=${i}`),a&&s.push(`BYTERANGE-LENGTH=${a}`)}e.push(`#EXT-X-PRELOAD-HINT:${s.join(",")}`),r=!0}else{let s=[];s.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&s.push(`BYTERANGE=${SIe(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),e.push(`#EXT-X-PART:${s.join(",")}`)}return r}function oon(e){_0.PARAMCHECK(e),_0.ASSERT("Not a playlist",e.type==="playlist");let t=new yIe(e.uri);return t.push("#EXTM3U"),e.version&&t.push(`#EXT-X-VERSION:${e.version}`),e.independentSegments&&t.push("#EXT-X-INDEPENDENT-SEGMENTS"),e.start&&t.push(`#EXT-X-START:TIME-OFFSET=${vIe(e.start.offset)}${e.start.precise?",PRECISE=YES":""}`),e.isMasterPlaylist?Jan(t,e):ton(t,e),t.join(` +`)}qg.default=oon});var JLt=S(ua=>{"use strict";var con=ua&&ua.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),uon=ua&&ua.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),lon=ua&&ua.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&con(t,e,r);return uon(t,e),t},WLt=ua&&ua.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ua,"__esModule",{value:!0});ua.setOptions=ua.getOptions=ua.types=ua.stringify=ua.parse=void 0;var XLt=I4();Object.defineProperty(ua,"getOptions",{enumerable:!0,get:function(){return XLt.getOptions}});Object.defineProperty(ua,"setOptions",{enumerable:!0,get:function(){return XLt.setOptions}});var don=WLt(zLt());ua.parse=don.default;var fon=WLt(QLt());ua.stringify=fon.default;var hon=lon(AIe());ua.types=hon});function fx(e,t={}){if(!e||typeof e!="string")throw new TypeError("createCache: name \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");if(TIe.has(e))return TIe.get(e).cache;let r=new _t(t.maxSize??100,t.ttl??5*60*1e3);return TIe.set(e,{cache:r,options:{maxSize:r.maxSize,ttl:r.ttl},createdAt:Date.now()}),r}function ts(e,t={}){let r=fx(e,t),n=Symbol("absent");return{has(s){return r.cache.has(s)},get(s){let i=r.get(s);if(!(i===null&&!r.cache.has(s)))return i},set(s,i){return r.set(s,i),this},delete(s){return r.delete(s)},clear(){r.clear()},get size(){return r.size},*entries(){yield*r.entries()},*keys(){for(let[s]of r.entries())yield s},*values(){for(let[,s]of r.entries())yield s},[Symbol.iterator](){return r.entries()}}}var TIe,A0=ie(()=>{ia();TIe=new Map});function pon(e){if(!e||typeof e!="string")return null;let t=hx.chineseEpisode.exec(e);if(t){let o=t[0].replace(/第|[集話话]/g,"");if(ZLt.has(o))return ZLt.get(o);if(/^\d+$/.test(o))return parseInt(o,10)}let r=hx.epFormat.exec(e);if(r)return parseInt(r[1],10);let n=hx.seasonEpisode.exec(e);if(n)return parseInt(n[2],10);let s=hx.bracketNumber.exec(e);if(s)return parseInt(s[1],10);let i=hx.plainNumber.exec(e);if(i){let o=parseInt(i[1],10);if(o<1e3)return o}let a=hx.simpleEpisode.exec(e);return a?parseInt(a[1],10):null}function Gt(e){return!e||e.length<=1?e:e.map(r=>{let n=r.vod_name||r.n||r.name||r.file_name||r.FileName||"",s=n,i=eMt.get(s);return i===void 0&&(i=pon(n),eMt.set(s,i)),{video:r,name:n,number:i}}).sort((r,n)=>r.number!==null&&n.number!==null?r.number-n.number:r.number!==null&&n.number===null?-1:r.number===null&&n.number!==null?1:r.name.localeCompare(n.name,"zh-CN")).map(r=>r.video)}async function E0(e,t,r=5){if(!Array.isArray(e)||e.length===0)return[];let n=[],s=0;async function i(){for(;;){let c=s++;if(c>=e.length)return;let u=e[c];if(u!==void 0)try{let l=await t(u);l&&n.push(l)}catch(l){console.error("Parallel processing error:",l)}}}let a=Math.min(r,e.length),o=Array.from({length:a},()=>i());return await Promise.all(o),n}function xo(e,t,r=!1){if(!t||t.length===0)return{};let i=(r?Gt(t):t).map(a=>{let o=Zu(a.vod_size),u=(a.vod_name||"").replace(/\.[^.]+$/,"");return{vod_id:a.vod_id,vod_name:S4("",` ${u} [${o}]`)}}).map(a=>`${a.vod_name}$${a.vod_id}`).join("#");return{from:e,url:i}}async function fj(e,t){if(!Array.isArray(e)||e.length===0)return null;let r=[...new Set(e.map(l=>String(l||"").trim()).filter(Boolean))];if(r.length===0)return null;let n=r.map(l=>{try{let d=new URL(l);return{url:l,host:d.host,origin:d.origin}}catch{return{url:l,host:"",origin:""}}}),s=l=>{let d=Number(l||0);return d===200||d===204||d===301||d===302||d===401||d===403||d===405},i=(l,d)=>{let f=d?.request?.res?.responseUrl||d?.config?.url||l.url;try{let h=new URL(f).host;return!!h&&h===l.host}catch{return!1}},a=(l,d)=>{let f=String(l||"").toLowerCase();return!f||d.host&&f.includes(d.host.toLowerCase())?!1:f.includes("/en/?")||f.includes("access denied")||f.includes("forbidden")||f.includes("captcha")||f.includes("cloudflare")},o=async l=>{let d=Date.now();try{let f=await ye({method:"head",url:l.url,headers:t,timeout:5e3,maxRedirects:5,validateStatus:()=>!0});if(s(f?.status)&&i(l,f))return{url:l.url,elapsedMs:Date.now()-d,status:Number(f?.status||0),method:"head"}}catch{}try{let f=await ye({method:"get",url:l.url,headers:t,timeout:5e3,maxRedirects:5,validateStatus:()=>!0});return!s(f?.status)||!i(l,f)||a(f?.data,l)?null:{url:l.url,elapsedMs:Date.now()-d,status:Number(f?.status||0),method:"get"}}catch{return null}},u=(await Promise.all(n.map(o))).filter(Boolean);return u.length===0?null:(u.sort((l,d)=>l.elapsedMs!==d.elapsedMs?l.elapsedMs-d.elapsedMs:l.url.localeCompare(d.url)),u[0].url)}var hx,ZLt,eMt,la=ie(()=>{Ds();vr();A0();hx={chineseEpisode:/第[零一二三四五六七八九十百千万0-9]+[集話话]/,epFormat:/(?:E|EP)[\s_-]*(\d+)/i,seasonEpisode:/S(\d+)[\s_-]*E(\d+)/i,bracketNumber:/[\[【\(](\d+)[\]】\)]/,plainNumber:/\b(\d{1,4})\b/,simpleEpisode:/(\d+)[集話话]/},ZLt=new Map([["\u96F6",0],["\u3007",0],["\u4E00",1],["\u4E8C",2],["\u4E09",3],["\u56DB",4],["\u4E94",5],["\u516D",6],["\u4E03",7],["\u516B",8],["\u4E5D",9],["\u5341",10],["\u5341\u4E00",11],["\u5341\u4E8C",12],["\u5341\u4E09",13],["\u5341\u56DB",14],["\u5341\u4E94",15],["\u5341\u516D",16],["\u5341\u4E03",17],["\u5341\u516B",18],["\u5341\u4E5D",19],["\u4E8C\u5341",20],["\u4E8C\u5341\u4E00",21],["\u4E8C\u5341\u4E8C",22],["\u4E8C\u5341\u4E09",23],["\u4E8C\u5341\u56DB",24],["\u4E8C\u5341\u4E94",25],["\u4E8C\u5341\u516D",26],["\u4E8C\u5341\u4E03",27],["\u4E8C\u5341\u516B",28],["\u4E8C\u5341\u4E5D",29],["\u4E09\u5341",30],["\u4E09\u5341\u4E00",31],["\u4E09\u5341\u4E8C",32],["\u4E09\u5341\u4E09",33],["\u4E09\u5341\u56DB",34],["\u4E09\u5341\u4E94",35],["\u4E09\u5341\u516D",36],["\u4E09\u5341\u4E03",37],["\u4E09\u5341\u516B",38],["\u4E09\u5341\u4E5D",39],["\u56DB\u5341",40]]);eMt=ts("utils.vodNumber",{maxSize:5e3,ttl:60*60*1e3})});function gon(){let e=Zs();if(!Array.isArray(e)||e.length===0)return null;let t={};for(let r of e)r?.key&&(t[r.key]=r.enable!==!1);return t.magnet=t.magnet===!0||t.magnet_guangya===!0,t}function _on(e=Date.now()){return hj&&e-tMt{yi();rMt={ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9_-]+(\/folder\/[a-zA-Z0-9_-]+)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]+)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+|web\/share\?code=[^&\s]+)/i,yd:/https?:\/\/(?:yun\.139\.com\/shareweb\/#\/w\/i\/|caiyun\.139\.com\/(?:m\/i\?|w\/i\/))[^&\s]+/i,quark:/https?:\/\/(?:pan\.quark\.cn|pan\.qoark\.cn)\/s\/[a-zA-Z0-9_-]+/i,uc:/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[^/?#\s]+(?:\?[^\s]*)?/i,baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[^?\s]+(?:\?[^\s]*)?/i,guangya:/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/i,magnet:/^(?:magnet:\?xt=urn:btih:[A-Za-z0-9]+|ed2k:\/\/\|file\|)/i},nMt={ali:"ali",quark:"quark",baidu:"baidu",uc:"uc",tianyi:"tianyi",yd:"yidong",pan123:"123",pan115:"115",xunlei:"xunlei",magnet:"magnet",guangya:"guangya"},hj=null,tMt=0,mon=3e4;sMt=async e=>pj(e)==="ali",iMt=async e=>pj(e)==="quark",aMt=async e=>pj(e)==="uc",mj=e=>y0(e)==="ali",gj=e=>y0(e)==="quark",_j=e=>y0(e)==="uc",Aj=e=>y0(e)==="tianyi",Ej=e=>y0(e)==="yidong",yj=e=>y0(e)==="123",vj=e=>y0(e)==="115",Sj=e=>y0(e)==="baidu",oMt=e=>y0(e)==="xunlei",Tj=e=>y0(e)==="magnet",bj=e=>y0(e)==="guangya",Ij=async e=>pj(e)});function St(e){return!!e&&Aon.test(String(e))}function dMt(e){return String(e||"").replace(/\.[^.]+$/,"")}function rr(e){let t=String(e||"").toLowerCase().match(/\.([^.]+)$/),r=t?t[1]:"";return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}function Cj(e){let t=String(e||"").toLowerCase();return t=dMt(t),t=t.replace(/[\[\((【].*?[\]\))】]/g," "),t=t.replace(/(?:[._\-\s]|^)(?:chs|cht|chi|zh-cn|zh|cn|sc|tc|eng|en|jpn|jp|简中|繁中|中字|双语|中英|外挂字幕|内封字幕|sub|subtitle)(?:[._\-\s]|$)/gi," "),t=t.replace(/[._\-]+/g," "),t=t.replace(/\s+/g," ").trim(),t.replace(/\s+/g,"")}function xj(e){let t=String(e||"").toLowerCase().match(/\.([^.]+)$/);return t?t[1]:""}function wj(e){return dMt(String(e||"")).trim().toLowerCase()}function cMt(e,t){return!Array.isArray(e)||e.length===0?null:e.slice().sort((n,s)=>{let i=Rj[xj(t(n))]||99,a=Rj[xj(t(s))]||99;return i!==a?i-a:String(t(n)||"").localeCompare(String(t(s)||""),"zh-CN")})[0]}function uMt(e,t){return!Array.isArray(e)||e.length===0?[]:e.slice().sort((r,n)=>{let s=Rj[xj(t(r))]||99,i=Rj[xj(t(n))]||99;return s!==i?s-i:String(t(r)||"").localeCompare(String(t(n)||""),"zh-CN")})}function ac(e,t,r){if(!e||!Array.isArray(t)||t.length===0)return[];let n=wj(e);if(!n)return[];let s=t.filter(o=>wj(r(o))===n);if(s.length>0)return uMt(s,r);let i=Cj(e);if(!i)return[];let a=[];for(let o of t){let c=r(o),u=Cj(c);u&&(u===i||u.startsWith(i)||i.startsWith(u))&&a.push(o)}return uMt(a,r)}function xr(e,t,r){if(!e||!Array.isArray(t)||t.length===0)return null;let n=wj(e);if(!n)return null;let s=t.filter(o=>wj(r(o))===n);if(s.length>0)return cMt(s,r);let i=Cj(e);if(!i)return null;let a=[];for(let o of t){let c=r(o),u=Cj(c);u&&(u===i||u.startsWith(i)||i.startsWith(u))&&a.push(o)}return cMt(a,r)}function lMt(e){let t=String(e||"").trim().match(/^(\d+):(\d{1,2}):(\d{1,2})[.](\d{1,2})$/);if(!t)return"00:00:00,000";let r=String(Number(t[1])).padStart(2,"0"),n=String(Number(t[2])).padStart(2,"0"),s=String(Number(t[3])).padStart(2,"0"),i=Number(t[4]),a=String(i*10).padStart(3,"0");return`${r}:${n}:${s},${a}`}function Eon(e){return String(e||"").replace(/\{[^}]*\}/g,"").replace(/\\N/g,` +`).replace(/\\n/g,` +`).replace(/\\h/g," ").trim()}function yon(e){let t=String(e||"");return/[\u4e00-\u9fff]/.test(t)?t.split(` +`).map(r=>r.replace(/[A-Za-z][A-Za-z0-9\s.,!?;:'"()\-_/\\[\]{}<>`~@#$%^&*+=|]*/g,"").replace(/\s{2,}/g," ").trim()).filter(Boolean).join(` +`):t}function MT(e){let t=String(e||"").split(/\r?\n/),r=[],n=1;for(let s of t){if(!s.startsWith("Dialogue:"))continue;let a=s.slice(9).trim().split(",");if(a.length<10)continue;let o=lMt(a[1]),c=lMt(a[2]),u=yon(Eon(a.slice(9).join(",")));u&&(r.push(String(n++)),r.push(`${o} --> ${c}`),r.push(u),r.push(""))}return r.join(` +`)}var Aon,Rj,Jc=ie(()=>{Aon=/\.(srt|ass|ssa|vtt|sub|idx|smi|txt)$/i,Rj={ass:1,ssa:2,srt:3,vtt:4,sub:5,idx:6,smi:7,txt:8}});function Dt(e,t={}){let{fieldOrder:r,encodeUri:n=!1,structured:s=!1}=t,i;if(Array.isArray(e))i=e.map(bIe);else if(e&&typeof e=="object"){if(!Array.isArray(r)||r.length===0)throw new TypeError("encodeVodId: object payload requires options.fieldOrder");i=r.map(o=>bIe(e[o]))}else{let o=bIe(e);return n?encodeURIComponent(o):o}let a=s?von(i):i.join(fMt);return n?encodeURIComponent(a):a}function Br(e,t={}){let{fieldOrder:r,decodeUri:n=!1,minLength:s}=t;if(e==null)return Array.isArray(r)?{}:[];let i=String(e);if(n)try{i=decodeURIComponent(i)}catch{}let a=Son(i);if(a===null&&(a=i.split(fMt)),typeof s=="number"&&a.length{o[c]=a[u]??""}),a.length>r.length&&(o._rest=a.slice(r.length)),o}function bIe(e){return e==null?"":String(e)}function von(e){let t=JSON.stringify(e),r=Buffer.from(t,"utf8").toString("base64url");return IIe+r}function Son(e){if(typeof e!="string"||!e.startsWith(IIe))return null;try{let t=e.slice(IIe.length),r=Buffer.from(t,"base64url").toString("utf8"),n=JSON.parse(r);return Array.isArray(n)?n.map(s=>s==null?"":String(s)):null}catch{return null}}var fMt,IIe,Zc=ie(()=>{fMt="*",IIe="!vod1!"});function Hg(e,t,r=!1){let n=Array.isArray(t)?t.filter(Boolean):[];if(!e||n.length===0)return null;let s=xo(e,n,r);return!s?.from||!s?.url?null:s}function ba(e,t,r=!1){let n=Hg(e,t,r);return n?[n]:[]}function Vg(e,t){let r=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",n=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return`${n?`${r}://${n}`:e.server.address().url}${e.server.prefix}/proxy/${t}`}function px(e,t,r,n,s,i=".bin"){return`${Vg(e,t)}/src/${r}/${n}/${s}/${i}`}function Ia(e,t,r,n,s,i,a=".bin"){return[String(r||""),px(e,t,n,s,i,a)]}function hMt(e,t,r,n,s,i=".m3u8"){return`${Vg(e,t)}/trans/${r}/${n}/${s}/${i}`}function v0(e,t,r,n,s=".srt",i={}){return{name:i.name?String(i.name):"\u5916\u6302\u5B57\u5E55",url:px(e,t,"subt",r,n,s),format:i.format?String(i.format):s.replace(/^\./,"")||"srt"}}var ql=ie(()=>{la()});function RIe(e={}){let t=e&&typeof e.url=="string"?e.url:"";return t?{url:t,name:e.name?String(e.name):Ton,format:e.format?String(e.format):bon}:null}function ei(e={}){let{parse:t,urls:r,subtitles:n,extra:s,header:i}=e||{},a={parse:t===1?1:0,url:Array.isArray(r)?r.slice():[]};i&&typeof i=="object"&&!Array.isArray(i)&&(a.header={...i});let o=Array.isArray(n)?n.map(u=>u&&typeof u=="object"?RIe(u):null).filter(Boolean):[];o.length>0&&(a.subs=o,a.subt=o[0].url,a.subtitle=o[0].url,a.subs_urls=o.map(u=>u.url));let c=s&&typeof s=="object"?{...s}:null;if(o.length>0){let u=o.map(d=>d.url),l=c||{};l.subt||(l.subt=o[0].url),l.subtitle||(l.subtitle=o[0].url),(!Array.isArray(l.subs_urls)||l.subs_urls.length===0)&&(l.subs_urls=u),(!Array.isArray(l.subs)||l.subs.length===0)&&(l.subs=o.map(d=>({name:d.name,url:d.url,format:d.format}))),Object.keys(l).length>0&&(a.extra=l)}else c&&Object.keys(c).length>0&&(a.extra=c);return a}function Xr(e,t){let r={parse:0,url:[],error:String(e??"\u64AD\u653E\u5931\u8D25")};return t&&typeof t=="object"?{...r,...t}:r}var Ton,bon,S0=ie(()=>{Ton="\u5916\u6302\u5B57\u5E55",bon="srt"});function pMt(e,t){let r=kT[e];if(!r)return[];let n=new Set(r),s=new Set,i=[];for(let a of Array.isArray(t)?t:[])!n.has(a)||s.has(a)||(s.add(a),i.push(a));for(let a of r)s.has(a)||(s.add(a),i.push(a));return i}function mMt(e){return(Array.isArray(e)?e:[]).map(t=>kT[t?.key]?{...t,routeOrder:pMt(t.key,t.routeOrder)}:{...t})}function Ion(e,t=Zs()){let r=(Array.isArray(t)?t:[]).find(n=>n?.key===e);return pMt(e,r?.routeOrder)}function Nj(e,t,r=Zs()){let n=Ion(e,r),s=n.indexOf(t);return s>=0?s:n.length}function tf(e,t){return(Array.isArray(t)?t:[]).filter(r=>r?.from&&r?.url).map(r=>({...r,routeKey:e}))}function Ron(e,t,r=Zs()){return(Array.isArray(t)?t:[]).map((n,s)=>({route:n,index:s})).filter(({route:n})=>n?.from&&n?.url).sort((n,s)=>Nj(e,n.route.routeKey,r)-Nj(e,s.route.routeKey,r)||n.index-s.index).map(({route:n})=>n)}function op(e,t,r=Zs()){let n=Ron(e,t,r);return{routes:n,from:n.map(s=>s.from).join("$$$"),url:n.map(s=>s.url).join("$$$")}}var ar,kT,mbs,jg=ie(()=>{yi();ar=Object.freeze({ali:Object.freeze({original:"ali.original",rapid115:"ali.rapid115"}),123:Object.freeze({direct:"123.direct",original:"123.original"}),115:Object.freeze({original:"115.original",rapid123:"115.rapid123"}),uc:Object.freeze({unlimited:"uc.unlimited",original:"uc.original"})}),kT=Object.freeze({ali:Object.freeze([ar.ali.original,ar.ali.rapid115]),123:Object.freeze([ar[123].direct,ar[123].original]),115:Object.freeze([ar[115].original,ar[115].rapid123]),uc:Object.freeze([ar.uc.unlimited,ar.uc.original])}),mbs=Object.freeze({[ar.ali.original]:"\u963F\u91CC",[ar.ali.rapid115]:"\u79D2\u4F20115",[ar[123].direct]:"123\u65E0\u9650",[ar[123].original]:"P123",[ar[115].original]:"P115",[ar[115].rapid123]:"\u79D2\u4F20123",[ar.uc.unlimited]:"UC\u65E0\u9650",[ar.uc.original]:"UC"})});function mx(e,t){let r=String(e||"").trim(),n=/^bytes=(\d*)-(\d*)$/i.exec(r);if(!n)return null;let s=n[1]===""?null:Number(n[1]),i=n[2]===""?null:Number(n[2]);if(s===null&&i===null)return null;if(s===null){let a=Number(i);if(!Number.isFinite(a)||a<=0)return null;s=Math.max(t-a,0),i=t-1}else if(!Number.isFinite(s)||s<0||(i===null&&(i=t-1),!Number.isFinite(i)||i=t?{unsatisfied:!0}:(i=Math.min(i,t-1),{start:s,end:i})}var Oj=ie(()=>{});function Dj(e,t,r,n){let s=Number(e);if(!Number.isFinite(s))return t;let i=Math.floor(s);return iAs.maxChunkSize||e.poolSizeAs.maxPoolSize)return null;let n=Qi(e,t);if(r.requireEnableFast){if(typeof e.enableFast!="boolean")return null;n.enableFast=e.enableFast}return n}var Con,As,el=ie(()=>{Con={chunkSize:524288,poolSize:4,useMultithread:!0},As={minChunkSize:1024,maxChunkSize:10*1024*1024,minPoolSize:1,maxPoolSize:200,minTimeout:1e3,maxTimeout:120*1e3,minRetries:1,maxRetries:10}});async function xon(e,t={}){let r=await Xe.get(e,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},t)}).catch(n=>n.response||{status:500,data:{}});if(r?.data&&typeof r.data.destroy=="function"&&r.data.destroy(),r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",s=r.headers["content-range"],i=parseInt(r.headers["content-length"]),a=n||!!s||i===1,o=s?parseInt(s.split("/")[1]):i;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}async function EMt(e){try{if(di.default.existsSync(e)){let t=await di.default.promises.readdir(e);await Promise.all(t.map(async r=>{let n=`${e}/${r}`;(await di.default.promises.stat(n)).isDirectory()?await EMt(n):await di.default.promises.unlink(n)})),await di.default.promises.rmdir(e)}}catch{}}function yMt(e){if(!e||(ME.get(e)||0)>0)return Promise.resolve();let t=C4.get(e);if(t)return t;let r=di.default.promises.rm((0,gx.join)(BT,e),{recursive:!0,force:!0}).catch(()=>{}).finally(()=>{C4.get(e)===r&&C4.delete(e)});return C4.set(e,r),r}async function Non(e){let t=C4.get(e);t&&await t.catch(()=>{})}function Oon(){try{di.default.readdir(BT,(e,t)=>{if(t)for(let r of t){if(ME.has(r)&&ME.get(r)>0)continue;let n=(0,gx.join)(BT,r);di.default.stat(n,(s,i)=>{i&&i.isDirectory()&&yMt(r)})}})}catch{}}function Don(e){ME.set(e,(ME.get(e)||0)+1);let t=!1;return()=>{if(t)return;t=!0;let r=(ME.get(e)||1)-1;r<=0?ME.delete(e):ME.set(e,r)}}async function CIe(e){let t=await di.default.promises.stat(e).catch(()=>null);return t&&t.isFile()?t.size:-1}async function Pon(e,t,r,n,s,i,a=null,o=!1,c=0){await won,n=xIe.default.enc.Hex.stringify(xIe.default.MD5(n||r)).toString();let u=Don(n);await Non(n);let l=i&&typeof i=="object"?i:{},d=typeof l.resolveUrl=="function"?l.resolveUrl:null,f=typeof l.disposeUrlResolver=="function"?l.disposeUrlResolver:null,h=!1,p=async()=>{h||!f||(h=!0,await f())};Oon();try{s=s||{},c=Math.max(Number(c)||0,0);let m=Number(a);(!Number.isFinite(m)||m<=0)&&(m=null);let g=gMt.get(n);if(!m||!o){if(!g){let[Te,xe]=await xon(r,s);if(!Te||!xe?.["content-length"]){await p().catch(()=>{}),u(),t.redirect(r);return}gMt.set(n,xe),g=xe}m||(m=parseInt(g["content-length"]))}if(!Number.isFinite(m)||m<=0){await p().catch(()=>{}),u(),t.redirect(r);return}await di.default.promises.mkdir((0,gx.join)(BT,n),{recursive:!0});let _=0,y=m-1,A={"accept-ranges":"bytes","cache-control":"no-store"};if(e.headers.range){let Te=mx(e.headers.range,m);if(!Te||Te.unsatisfied){await p().catch(()=>{}),u(),t.code(416).headers({"content-range":`bytes */${m}`,"accept-ranges":"bytes"});return}_=Te.start,y=Te.end,Object.assign(A,g||{}),A["accept-ranges"]="bytes",A["cache-control"]="no-store",A["content-length"]=(y-_+1).toString(),A["content-range"]=`bytes ${_}-${y}/${m}`,t.code(206)}else Object.assign(A,g||{}),A["accept-ranges"]="bytes",A["cache-control"]="no-store",A["content-length"]=m.toString(),t.code(200);let E=Number(l.maxCacheBytes),v=Number.isFinite(E)?Math.max(1024*1024,Math.min(_Mt,Math.floor(E))):_Mt;i=Qi(l,{chunkSize:1024*256,poolSize:5,timeout:1e3*10,maxRetries:4});let b=i.chunkSize,I=i.poolSize,T=i.timeout,x=i.maxRetries,w=Number(l.initialChunkSize),D=Number.isFinite(w)?Math.max(1024,Math.min(b,Math.floor(w))):b,M=D=I,te=!1,Q=null,Z=new Set,de=new Set,B=new Set,k=new Set,W={},P={},H={},j=new AMt.PassThrough,q=()=>{for(let Te of k)Te.source&&typeof Te.source.destroy=="function"&&Te.source.destroy(),Te.writer&&typeof Te.writer.destroy=="function"&&Te.writer.destroy();k.clear()},Y=e?.raw,X=t?.raw,ae=()=>{te=!0,q(),j.destroyed||j.destroy()};Y&&typeof Y.once=="function"&&Y.once("aborted",ae),X&&typeof X.once=="function"&&X.once("close",ae);let ne=()=>{Y&&typeof Y.removeListener=="function"&&Y.removeListener("aborted",ae),X&&typeof X.removeListener=="function"&&X.removeListener("close",ae)},se=Te=>(0,gx.join)(BT,n,`${e.id}-${c}-${m}-${b}-${Te}.p`),J=Te=>(0,gx.join)(BT,n,`${e.id}-${Te}-${Date.now()}.dl`),ce=Te=>{if(M){let Ae=Te===0?_:_+U+(Te-1)*b,pe=Math.min(y,Ae+(Te===0?U:b)-1);return{downloadByteStart:Ae,downloadByteEnd:pe,readFileStart:0,readLength:pe-Ae+1}}let xe=Te*b,Fe=Math.min(m-1,(Te+1)*b-1),Ee=Math.max(_,xe),me=Math.min(y,Fe);return{downloadByteStart:xe,downloadByteEnd:Fe,readFileStart:Ee-xe,readLength:me-Ee+1}},ge=(Te,xe)=>{if(Q||te)return;let Fe=Number(xe?.response?.status||xe?.statusCode||xe?.status||0),Ee=(W[Te]||0)+1;if(W[Te]=Ee,!(!d&&(Fe===401||Fe===403||Fe===404)||Ee>=x))return;let Ae=Fe?` status=${Fe}`:"",pe=xe?.message?` ${xe.message}`:"";Q=new Error(`chunk ${Te} failed after ${Ee} attempts.${Ae}${pe}`.trim()),Fe&&(Q.statusCode=Fe),te=!0,j.destroy(Q)},be=Te=>{Q||te||(Q=Te instanceof Error?Te:new Error(String(Te||"chunk stream failed")),te=!0,j.destroy(Q))};for(let Te=0;Te{(async function Ee(me){if(te||Q||me===void 0&&$>=G){Fe();return}if(me===void 0&&!le&&xe>=oe){setTimeout(Ee,5);return}if(me===void 0&&($-K)*b>=v){setTimeout(Ee,5);return}let Ae=me??$++,pe=se(Ae),Se=ce(Ae),Ie=Se.downloadByteEnd-Se.downloadByteStart+1,Le=null,we=!1,He=async(Ge={})=>{we||(we=!0,typeof Le?.release=="function"&&await Le.release(Ge))};try{let Ge=await CIe(pe);if(Ge=0&&await di.default.promises.rm(pe).catch(()=>{});let ke=Se.downloadByteStart+c,Qe=Se.downloadByteEnd+c;Le=d?await d({chunkIndex:Ae,byteStart:ke,byteEnd:Qe,attempt:W[Ae]||0,previousStatus:P[Ae]||0,previousSource:H[Ae]||null}):{url:r,headers:s};let Rt=String(Le?.url||"").trim();if(!Rt)throw new Error(`chunk ${Ae} source url is empty`);H[Ae]={signatureKey:Le?.signatureKey||"",hostKey:Le?.hostKey||""};let ze=await Xe.get(Rt,{responseType:"stream",timeout:T,...d?{validateStatus:()=>!0}:{},maxContentLength:1/0,maxBodyLength:1/0,headers:Object.assign({Range:`bytes=${ke}-${Qe}`},s,Le?.headers||{})});if(d&&Number(ze.status)!==206){ze.data&&typeof ze.data.destroy=="function"&&ze.data.destroy();let vt=new Error(`chunk source returned HTTP ${ze.status}`);throw vt.statusCode=Number(ze.status)||502,vt}let ot=J(Ae);de.add(ot);let lt=di.default.createWriteStream(ot),At={source:ze.data,writer:lt};k.add(At);let gr=setTimeout(()=>{lt.destroy(new Error(`${e.id}-${Ae} read timeout`))},T),Vt=new Promise(vt=>{let bs=!1,Un=async Ls=>{bs||(bs=!0,clearTimeout(gr),k.delete(At),de.delete(ot),vt(Ls))};lt.on("finish",async()=>{if(te){await di.default.promises.rm(ot).catch(()=>{}),await Un({ok:!1,error:Q});return}try{if(await di.default.promises.rename(ot,pe),d&&await CIe(pe)!==Ie){await di.default.promises.rm(pe).catch(()=>{});let Vs=new Error(`chunk ${Ae} length mismatch`);Vs.statusCode=502,await Un({ok:!1,error:Vs});return}await Un({ok:!0})}catch(Ls){let Vs=await CIe(pe);await di.default.promises.rm(ot).catch(()=>{}),await Un({ok:Vs>=Ie,error:Ls})}}),lt.on("error",async Ls=>{await Un({ok:!1,error:Ls}),await di.default.promises.rm(ot).catch(()=>{})}),lt.on("close",async()=>{bs||(await di.default.promises.rm(ot).catch(()=>{}),await Un({ok:!1,error:new Error(`chunk ${Ae} download canceled`)}))}),ze.data.on("error",Ls=>{lt.destroy(Ls)})});ze.data.pipe(lt);let it=await Vt;if(await He({status:Number(ze.status)||0,ok:it.ok}),!it.ok){if(ge(Ae,it.error),te||Q){Fe();return}setTimeout(()=>{Ee(Ae)},15);return}}B.add(pe),Z.add(Ae),Ae===ee&&(le=!0),setTimeout(Ee,5)}catch(Ge){let ke=Number(Ge?.response?.status||Ge?.statusCode||Ge?.status||0);if(P[Ae]=ke,Ge?.response?.data&&typeof Ge.response.data.destroy=="function"&&Ge.response.data.destroy(),await He({status:ke,ok:!1,error:Ge}).catch(()=>{}),ge(Ae,Ge),te||Q){Fe();return}let Qe=ke===503?Math.min(750,100*(W[Ae]||1)):15;setTimeout(()=>{Ee(Ae)},Qe)}})()})}return t.headers(A),new Promise(Te=>{let xe=!0;(async function Fe(){try{if(Q){Te();return}if(K>=G||te){j.end(),Te();return}if(!xe){setTimeout(Fe,5);return}if(!Z.has(K)){setTimeout(Fe,5);return}Z.delete(K);let Ee=ce(K),me=se(K),Ae=await di.default.promises.open(me,"r"),pe=Ee.readLength;if(pe<=0){await Ae.close().catch(()=>{}),B.delete(me),await di.default.promises.rm(me).catch(()=>{}),K++,setTimeout(Fe,5);return}let Se=Buffer.alloc(pe);await Ae.read(Se,0,pe,Ee.readFileStart),await Ae.close().catch(()=>{}),B.delete(me),await di.default.promises.rm(me).catch(()=>{}),xe=j.write(Se),xe||j.once("drain",()=>{xe=!0}),K++,setTimeout(Fe,5)}catch(Ee){be(Ee),Te()}})()}),j.on("close",async()=>{te=!0,ne(),q();for(let Te of de)di.default.rm(Te,{recursive:!0},()=>{});de.clear();for(let Te of B)di.default.rm(Te,{recursive:!0},()=>{});B.clear(),await p().catch(()=>{}),u(),await yMt(n)}),j}catch(m){throw await p().catch(()=>{}),u(),m}}var xIe,gx,di,AMt,gMt,ME,C4,BT,_Mt,won,oc,kE=ie(()=>{Cr();xIe=Ne(Yi(),1),gx=require("path"),di=Ne(require("fs"),1),AMt=require("stream");A0();Oj();el();gMt=ts("chunk.urlHead",{maxSize:200,ttl:30*60*1e3}),ME=new Map,C4=new Map,BT=(process.env.NODE_PATH||".")+"/vod_cache",_Mt=1024*1024*100;won=EMt(BT).catch(()=>{});oc=Pon});var wIe=S((bbs,vMt)=>{vMt.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var BE=S(UT=>{var NIe,Lon=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];UT.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17};UT.getSymbolTotalCodewords=function(t){return Lon[t]};UT.getBCHDigit=function(e){let t=0;for(;e!==0;)t++,e>>>=1;return t};UT.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');NIe=t};UT.isKanjiModeEnabled=function(){return typeof NIe<"u"};UT.toSJIS=function(t){return NIe(t)}});var Pj=S(rf=>{rf.L={bit:1};rf.M={bit:0};rf.Q={bit:3};rf.H={bit:2};function Mon(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"l":case"low":return rf.L;case"m":case"medium":return rf.M;case"q":case"quartile":return rf.Q;case"h":case"high":return rf.H;default:throw new Error("Unknown EC Level: "+e)}}rf.isValid=function(t){return t&&typeof t.bit<"u"&&t.bit>=0&&t.bit<4};rf.from=function(t,r){if(rf.isValid(t))return t;try{return Mon(t)}catch{return r}}});var bMt=S((Cbs,TMt)=>{function SMt(){this.buffer=[],this.length=0}SMt.prototype={get:function(e){let t=Math.floor(e/8);return(this.buffer[t]>>>7-e%8&1)===1},put:function(e,t){for(let r=0;r>>t-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){let t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}};TMt.exports=SMt});var RMt=S((xbs,IMt)=>{function x4(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}x4.prototype.set=function(e,t,r,n){let s=e*this.size+t;this.data[s]=r,n&&(this.reservedBit[s]=!0)};x4.prototype.get=function(e,t){return this.data[e*this.size+t]};x4.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r};x4.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]};IMt.exports=x4});var CMt=S(Lj=>{var kon=BE().getSymbolSize;Lj.getRowColCoords=function(t){if(t===1)return[];let r=Math.floor(t/7)+2,n=kon(t),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a{var Bon=BE().getSymbolSize,xMt=7;wMt.getPositions=function(t){let r=Bon(t);return[[0,0],[r-xMt,0],[0,r-xMt]]}});var OMt=S($s=>{$s.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var FT={N1:3,N2:3,N3:40,N4:10};$s.isValid=function(t){return t!=null&&t!==""&&!isNaN(t)&&t>=0&&t<=7};$s.from=function(t){return $s.isValid(t)?parseInt(t,10):void 0};$s.getPenaltyN1=function(t){let r=t.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c=5&&(n+=FT.N1+(s-5)),a=l,s=1),l=t.get(u,c),l===o?i++:(i>=5&&(n+=FT.N1+(i-5)),o=l,i=1)}s>=5&&(n+=FT.N1+(s-5)),i>=5&&(n+=FT.N1+(i-5))}return n};$s.getPenaltyN2=function(t){let r=t.size,n=0;for(let s=0;s=10&&(s===1488||s===93)&&n++,i=i<<1&2047|t.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*FT.N3};$s.getPenaltyN4=function(t){let r=0,n=t.data.length;for(let i=0;i{var UE=Pj(),Mj=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],kj=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];OIe.getBlocksCount=function(t,r){switch(r){case UE.L:return Mj[(t-1)*4+0];case UE.M:return Mj[(t-1)*4+1];case UE.Q:return Mj[(t-1)*4+2];case UE.H:return Mj[(t-1)*4+3];default:return}};OIe.getTotalCodewordsCount=function(t,r){switch(r){case UE.L:return kj[(t-1)*4+0];case UE.M:return kj[(t-1)*4+1];case UE.Q:return kj[(t-1)*4+2];case UE.H:return kj[(t-1)*4+3];default:return}}});var DMt=S(Uj=>{var w4=new Uint8Array(512),Bj=new Uint8Array(256);(function(){let t=1;for(let r=0;r<255;r++)w4[r]=t,Bj[t]=r,t<<=1,t&256&&(t^=285);for(let r=255;r<512;r++)w4[r]=w4[r-255]})();Uj.log=function(t){if(t<1)throw new Error("log("+t+")");return Bj[t]};Uj.exp=function(t){return w4[t]};Uj.mul=function(t,r){return t===0||r===0?0:w4[Bj[t]+Bj[r]]}});var PMt=S(N4=>{var PIe=DMt();N4.mul=function(t,r){let n=new Uint8Array(t.length+r.length-1);for(let s=0;s=0;){let s=n[0];for(let a=0;a{var LMt=PMt();function LIe(e){this.genPoly=void 0,this.degree=e,this.degree&&this.initialize(this.degree)}LIe.prototype.initialize=function(t){this.degree=t,this.genPoly=LMt.generateECPolynomial(this.degree)};LIe.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(t.length+this.degree);r.set(t);let n=LMt.mod(r,this.genPoly),s=this.degree-n.length;if(s>0){let i=new Uint8Array(this.degree);return i.set(n,s),i}return n};MMt.exports=LIe});var MIe=S(BMt=>{BMt.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}});var kIe=S(Kg=>{var UMt="[0-9]+",Fon="[A-Z $%*+\\-./:]+",O4="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";O4=O4.replace(/u/g,"\\u");var $on="(?:(?![A-Z0-9 $%*+\\-./:]|"+O4+`)(?:.|[\r +]))+`;Kg.KANJI=new RegExp(O4,"g");Kg.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");Kg.BYTE=new RegExp($on,"g");Kg.NUMERIC=new RegExp(UMt,"g");Kg.ALPHANUMERIC=new RegExp(Fon,"g");var qon=new RegExp("^"+O4+"$"),Hon=new RegExp("^"+UMt+"$"),Von=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Kg.testKanji=function(t){return qon.test(t)};Kg.testNumeric=function(t){return Hon.test(t)};Kg.testAlphanumeric=function(t){return Von.test(t)}});var FE=S(da=>{var jon=MIe(),BIe=kIe();da.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};da.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};da.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};da.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};da.MIXED={bit:-1};da.getCharCountIndicator=function(t,r){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!jon.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?t.ccBits[0]:r<27?t.ccBits[1]:t.ccBits[2]};da.getBestModeForData=function(t){return BIe.testNumeric(t)?da.NUMERIC:BIe.testAlphanumeric(t)?da.ALPHANUMERIC:BIe.testKanji(t)?da.KANJI:da.BYTE};da.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")};da.isValid=function(t){return t&&t.bit&&t.ccBits};function Kon(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return da.NUMERIC;case"alphanumeric":return da.ALPHANUMERIC;case"kanji":return da.KANJI;case"byte":return da.BYTE;default:throw new Error("Unknown mode: "+e)}}da.from=function(t,r){if(da.isValid(t))return t;try{return Kon(t)}catch{return r}}});var VMt=S($T=>{var Fj=BE(),Gon=DIe(),FMt=Pj(),$E=FE(),UIe=MIe(),qMt=7973,$Mt=Fj.getBCHDigit(qMt);function zon(e,t,r){for(let n=1;n<=40;n++)if(t<=$T.getCapacity(n,r,e))return n}function HMt(e,t){return $E.getCharCountIndicator(e,t)+4}function Yon(e,t){let r=0;return e.forEach(function(n){let s=HMt(n.mode,t);r+=s+n.getBitsLength()}),r}function Qon(e,t){for(let r=1;r<=40;r++)if(Yon(e,r)<=$T.getCapacity(r,t,$E.MIXED))return r}$T.from=function(t,r){return UIe.isValid(t)?parseInt(t,10):r};$T.getCapacity=function(t,r,n){if(!UIe.isValid(t))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=$E.BYTE);let s=Fj.getSymbolTotalCodewords(t),i=Gon.getTotalCodewordsCount(t,r),a=(s-i)*8;if(n===$E.MIXED)return a;let o=a-HMt(n,t);switch(n){case $E.NUMERIC:return Math.floor(o/10*3);case $E.ALPHANUMERIC:return Math.floor(o/11*2);case $E.KANJI:return Math.floor(o/13);case $E.BYTE:default:return Math.floor(o/8)}};$T.getBestVersionForData=function(t,r){let n,s=FMt.from(r,FMt.M);if(Array.isArray(t)){if(t.length>1)return Qon(t,s);if(t.length===0)return 1;n=t[0]}else n=t;return zon(n.mode,n.getLength(),s)};$T.getEncodedBits=function(t){if(!UIe.isValid(t)||t<7)throw new Error("Invalid QR Code version");let r=t<<12;for(;Fj.getBCHDigit(r)-$Mt>=0;)r^=qMt<{var FIe=BE(),KMt=1335,Won=21522,jMt=FIe.getBCHDigit(KMt);GMt.getEncodedBits=function(t,r){let n=t.bit<<3|r,s=n<<10;for(;FIe.getBCHDigit(s)-jMt>=0;)s^=KMt<{var Xon=FE();function _x(e){this.mode=Xon.NUMERIC,this.data=e.toString()}_x.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)};_x.prototype.getLength=function(){return this.data.length};_x.prototype.getBitsLength=function(){return _x.getBitsLength(this.data.length)};_x.prototype.write=function(t){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),t.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),t.put(s,i*3+1))};YMt.exports=_x});var XMt=S((Hbs,WMt)=>{var Jon=FE(),$Ie=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function Ax(e){this.mode=Jon.ALPHANUMERIC,this.data=e}Ax.getBitsLength=function(t){return 11*Math.floor(t/2)+6*(t%2)};Ax.prototype.getLength=function(){return this.data.length};Ax.prototype.getBitsLength=function(){return Ax.getBitsLength(this.data.length)};Ax.prototype.write=function(t){let r;for(r=0;r+2<=this.data.length;r+=2){let n=$Ie.indexOf(this.data[r])*45;n+=$Ie.indexOf(this.data[r+1]),t.put(n,11)}this.data.length%2&&t.put($Ie.indexOf(this.data[r]),6)};WMt.exports=Ax});var ZMt=S((Vbs,JMt)=>{var Zon=FE();function Ex(e){this.mode=Zon.BYTE,typeof e=="string"?this.data=new TextEncoder().encode(e):this.data=new Uint8Array(e)}Ex.getBitsLength=function(t){return t*8};Ex.prototype.getLength=function(){return this.data.length};Ex.prototype.getBitsLength=function(){return Ex.getBitsLength(this.data.length)};Ex.prototype.write=function(e){for(let t=0,r=this.data.length;t{var ecn=FE(),tcn=BE();function yx(e){this.mode=ecn.KANJI,this.data=e}yx.getBitsLength=function(t){return t*13};yx.prototype.getLength=function(){return this.data.length};yx.prototype.getBitsLength=function(){return yx.getBitsLength(this.data.length)};yx.prototype.write=function(e){let t;for(t=0;t=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[t]+` +Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),e.put(r,13)}};ekt.exports=yx});var rkt=S((Kbs,qIe)=>{"use strict";var D4={single_source_shortest_paths:function(e,t,r){var n={},s={};s[t]=0;var i=D4.PriorityQueue.make();i.push(t,0);for(var a,o,c,u,l,d,f,h,p;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=e[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,h=s[c],p=typeof s[c]>"u",(p||h>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var m=["Could not find a path from ",t," to ",r,"."].join("");throw new Error(m)}return n},extract_shortest_path_from_predecessor_list:function(e,t){for(var r=[],n=t,s;n;)r.push(n),s=e[n],n=e[n];return r.reverse(),r},find_path:function(e,t,r){var n=D4.single_source_shortest_paths(e,t,r);return D4.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(e){var t=D4.PriorityQueue,r={},n;e=e||{};for(n in t)t.hasOwnProperty(n)&&(r[n]=t[n]);return r.queue=[],r.sorter=e.sorter||t.default_sorter,r},default_sorter:function(e,t){return e.cost-t.cost},push:function(e,t){var r={value:e,cost:t};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof qIe<"u"&&(qIe.exports=D4)});var lkt=S(vx=>{var Xn=FE(),ikt=QMt(),akt=XMt(),okt=ZMt(),ckt=tkt(),P4=kIe(),$j=BE(),rcn=rkt();function nkt(e){return unescape(encodeURIComponent(e)).length}function L4(e,t,r){let n=[],s;for(;(s=e.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:t,length:s[0].length});return n}function ukt(e){let t=L4(P4.NUMERIC,Xn.NUMERIC,e),r=L4(P4.ALPHANUMERIC,Xn.ALPHANUMERIC,e),n,s;return $j.isKanjiModeEnabled()?(n=L4(P4.BYTE,Xn.BYTE,e),s=L4(P4.KANJI,Xn.KANJI,e)):(n=L4(P4.BYTE_KANJI,Xn.BYTE,e),s=[]),t.concat(r,n,s).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function HIe(e,t){switch(t){case Xn.NUMERIC:return ikt.getBitsLength(e);case Xn.ALPHANUMERIC:return akt.getBitsLength(e);case Xn.KANJI:return ckt.getBitsLength(e);case Xn.BYTE:return okt.getBitsLength(e)}}function ncn(e){return e.reduce(function(t,r){let n=t.length-1>=0?t[t.length-1]:null;return n&&n.mode===r.mode?(t[t.length-1].data+=r.data,t):(t.push(r),t)},[])}function scn(e){let t=[];for(let r=0;r{var Hj=BE(),VIe=Pj(),acn=bMt(),ocn=RMt(),ccn=CMt(),ucn=NMt(),GIe=OMt(),zIe=DIe(),lcn=kMt(),qj=VMt(),dcn=zMt(),fcn=FE(),jIe=lkt();function hcn(e,t){let r=e.size,n=ucn.getPositions(t);for(let s=0;s=0&&o<=6&&(c===0||c===6)||c>=0&&c<=6&&(o===0||o===6)||o>=2&&o<=4&&c>=2&&c<=4?e.set(i+o,a+c,!0,!0):e.set(i+o,a+c,!1,!0))}}function pcn(e){let t=e.size;for(let r=8;r>o&1)===1,e.set(s,i,a,!0),e.set(i,s,a,!0)}function KIe(e,t,r){let n=e.size,s=dcn.getEncodedBits(t,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?e.set(i,8,a,!0):i<8?e.set(i+1,8,a,!0):e.set(n-15+i,8,a,!0),i<8?e.set(8,n-i-1,a,!0):i<9?e.set(8,15-i-1+1,a,!0):e.set(8,15-i-1,a,!0);e.set(n-8,8,1,!0)}function _cn(e,t){let r=e.size,n=-1,s=r-1,i=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let c=0;c<2;c++)if(!e.isReserved(s,o-c)){let u=!1;a>>i&1)===1),e.set(s,o-c,u),i--,i===-1&&(a++,i=7)}if(s+=n,s<0||r<=s){s-=n,n=-n;break}}}function Acn(e,t,r){let n=new acn;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),fcn.getCharCountIndicator(c.mode,e)),c.write(n)});let s=Hj.getSymbolTotalCodewords(e),i=zIe.getTotalCodewordsCount(e,t),a=(s-i)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let c=0;c=7&&Yqr(u,t),Wqr(u,a),isNaN(n)&&(n=O_e.getBestMask(u,k_e.bind(null,u,r))),O_e.applyMask(n,u),k_e(u,r,n),{modules:u,version:t,errorCorrectionLevel:r,maskPattern:n,segments:i}}Pwt.create=function(t,r){if(typeof t>"u"||t==="")throw new Error("No input text");let n=R_e.M,i,s;return typeof r<"u"&&(n=R_e.from(r.errorCorrectionLevel,R_e.M),i=pj.from(r.version),s=O_e.from(r.maskPattern),r.toSJISFunc&&hj.setToSJISFunction(r.toSJISFunc)),Zqr(t,i,n,s)}});var L_e=b((Mei,Lwt)=>{"use strict";var ejr=require("util"),Mwt=require("stream"),af=Lwt.exports=function(){Mwt.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};ejr.inherits(af,Mwt);af.prototype.read=function(e,t){this._reads.push({length:Math.abs(e),allowLess:e<0,func:t}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};af.prototype.write=function(e,t){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(e)?r=e:r=Buffer.from(e,t||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};af.prototype.end=function(e,t){e&&this.write(e,t),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};af.prototype.destroySoon=af.prototype.end;af.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};af.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};af.prototype._processReadAllowingLess=function(e){this._reads.shift();let t=this._buffers[0];t.length>e.length?(this._buffered-=e.length,this._buffers[0]=t.slice(e.length),e.func.call(this,t.slice(0,e.length))):(this._buffered-=t.length,this._buffers.shift(),e.func.call(this,t))};af.prototype._processRead=function(e){this._reads.shift();let t=0,r=0,n=Buffer.alloc(e.length);for(;t0&&this._buffers.splice(0,r),this._buffered-=e.length,e.func.call(this,n)};af.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let e=this._reads[0];if(e.allowLess)this._processReadAllowingLess(e);else if(this._buffered>=e.length)this._processRead(e);else break}this._buffers&&!this.writable&&this._end()}catch(e){this.emit("error",e)}}});var $_e=b(B_e=>{"use strict";var jy=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];B_e.getImagePasses=function(e,t){let r=[],n=e%8,i=t%8,s=(e-n)/8,a=(t-i)/8;for(let o=0;o0&&l>0&&r.push({width:c,height:l,index:o})}return r};B_e.getInterlaceIterator=function(e){return function(t,r,n){let i=t%jy[n].x.length,s=(t-i)/jy[n].x.length*8+jy[n].x[i],a=r%jy[n].y.length,o=(r-a)/jy[n].y.length*8+jy[n].y[a];return s*4+o*e*4}}});var F_e=b((Bei,Bwt)=>{"use strict";Bwt.exports=function(t,r,n){let i=t+r-n,s=Math.abs(i-t),a=Math.abs(i-r),o=Math.abs(i-n);return s<=a&&s<=o?t:a<=o?r:n}});var U_e=b(($ei,Fwt)=>{"use strict";var tjr=$_e(),rjr=F_e();function $wt(e,t,r){let n=e*t;return r!==8&&(n=Math.ceil(n/(8/r))),n}var jI=Fwt.exports=function(e,t){let r=e.width,n=e.height,i=e.interlace,s=e.bpp,a=e.depth;if(this.read=t.read,this.write=t.write,this.complete=t.complete,this._imageIndex=0,this._images=[],i){let o=tjr.getImagePasses(r,n);for(let u=0;ui?t[s-n]:0;t[s]=a+o}};jI.prototype._unFilterType2=function(e,t,r){let n=this._lastLine;for(let i=0;ii?t[a-n]:0,l=Math.floor((c+u)/2);t[a]=o+l}};jI.prototype._unFilterType4=function(e,t,r){let n=this._xComparison,i=n-1,s=this._lastLine;for(let a=0;ai?t[a-n]:0,l=a>i&&s?s[a-n]:0,d=rjr(c,u,l);t[a]=o+d}};jI.prototype._reverseFilterLine=function(e){let t=e[0],r,n=this._images[this._imageIndex],i=n.byteWidth;if(t===0)r=e.slice(1,i+1);else switch(r=Buffer.alloc(i),t){case 1:this._unFilterType1(e,r,i);break;case 2:this._unFilterType2(e,r,i);break;case 3:this._unFilterType3(e,r,i);break;case 4:this._unFilterType4(e,r,i);break;default:throw new Error("Unrecognised filter type - "+t)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var jwt=b((Fei,qwt)=>{"use strict";var njr=require("util"),Uwt=L_e(),ijr=U_e(),sjr=qwt.exports=function(e){Uwt.call(this);let t=[],r=this;this._filter=new ijr(e,{read:this.read.bind(this),write:function(n){t.push(n)},complete:function(){r.emit("complete",Buffer.concat(t))}}),this._filter.start()};njr.inherits(sjr,Uwt)});var HI=b((Uei,Hwt)=>{"use strict";Hwt.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var H_e=b((qei,Kwt)=>{"use strict";var q_e=[];(function(){for(let e=0;e<256;e++){let t=e;for(let r=0;r<8;r++)t&1?t=3988292384^t>>>1:t=t>>>1;q_e[e]=t}})();var j_e=Kwt.exports=function(){this._crc=-1};j_e.prototype.write=function(e){for(let t=0;t>>8;return!0};j_e.prototype.crc32=function(){return this._crc^-1};j_e.crc32=function(e){let t=-1;for(let r=0;r>>8;return t^-1}});var K_e=b((jei,Vwt)=>{"use strict";var Ls=HI(),ajr=H_e(),ha=Vwt.exports=function(e,t){this._options=e,e.checkCRC=e.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ls.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ls.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ls.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ls.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ls.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ls.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=t.read,this.error=t.error,this.metadata=t.metadata,this.gamma=t.gamma,this.transColor=t.transColor,this.palette=t.palette,this.parsed=t.parsed,this.inflateData=t.inflateData,this.finished=t.finished,this.simpleTransparency=t.simpleTransparency,this.headersFinished=t.headersFinished||function(){}};ha.prototype.start=function(){this.read(Ls.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ha.prototype._parseSignature=function(e){let t=Ls.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let t=0;t0?this._handleIDAT(r):this._handleChunkEnd()};ha.prototype._handleIEND=function(e){this.read(e,this._parseIEND.bind(this))};ha.prototype._parseIEND=function(e){this._crc.write(e),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var V_e=b(Qwt=>{"use strict";var zwt=$_e(),ojr=[function(){},function(e,t,r,n){if(n===t.length)throw new Error("Ran out of data");let i=t[n];e[r]=i,e[r+1]=i,e[r+2]=i,e[r+3]=255},function(e,t,r,n){if(n+1>=t.length)throw new Error("Ran out of data");let i=t[n];e[r]=i,e[r+1]=i,e[r+2]=i,e[r+3]=t[n+1]},function(e,t,r,n){if(n+2>=t.length)throw new Error("Ran out of data");e[r]=t[n],e[r+1]=t[n+1],e[r+2]=t[n+2],e[r+3]=255},function(e,t,r,n){if(n+3>=t.length)throw new Error("Ran out of data");e[r]=t[n],e[r+1]=t[n+1],e[r+2]=t[n+2],e[r+3]=t[n+3]}],ujr=[function(){},function(e,t,r,n){let i=t[0];e[r]=i,e[r+1]=i,e[r+2]=i,e[r+3]=n},function(e,t,r){let n=t[0];e[r]=n,e[r+1]=n,e[r+2]=n,e[r+3]=t[1]},function(e,t,r,n){e[r]=t[0],e[r+1]=t[1],e[r+2]=t[2],e[r+3]=n},function(e,t,r){e[r]=t[0],e[r+1]=t[1],e[r+2]=t[2],e[r+3]=t[3]}];function cjr(e,t){let r=[],n=0;function i(){if(n===e.length)throw new Error("Ran out of data");let s=e[n];n++;let a,o,u,c,l,d,f,p;switch(t){default:throw new Error("unrecognised depth");case 16:f=e[n],n++,r.push((s<<8)+f);break;case 4:f=s&15,p=s>>4,r.push(p,f);break;case 2:l=s&3,d=s>>2&3,f=s>>4&3,p=s>>6&3,r.push(p,f,d,l);break;case 1:a=s&1,o=s>>1&1,u=s>>2&1,c=s>>3&1,l=s>>4&1,d=s>>5&1,f=s>>6&1,p=s>>7&1,r.push(p,f,d,l,c,u,o,a);break}}return{get:function(s){for(;r.length{"use strict";function fjr(e,t,r,n,i){let s=0;for(let a=0;a{"use strict";var mjr=require("util"),Q_e=require("zlib"),Ywt=L_e(),gjr=jwt(),yjr=K_e(),_jr=V_e(),Ajr=z_e(),$p=Wwt.exports=function(e){Ywt.call(this),this._parser=new yjr(e,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=e,this.writable=!0,this._parser.start()};mjr.inherits($p,Ywt);$p.prototype._handleError=function(e){this.emit("error",e),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};$p.prototype._inflateData=function(e){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=Q_e.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,Q_e.Z_MIN_CHUNK);this._inflate=Q_e.createInflate({chunkSize:n});let i=r,s=this.emit.bind(this,"error");this._inflate.on("error",function(o){i&&s(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){i&&(o.length>i&&(o=o.slice(0,i)),i-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(e)};$p.prototype._handleMetaData=function(e){this._metaData=e,this._bitmapInfo=Object.create(e),this._filter=new gjr(this._bitmapInfo)};$p.prototype._handleTransColor=function(e){this._bitmapInfo.transColor=e};$p.prototype._handlePalette=function(e){this._bitmapInfo.palette=e};$p.prototype._simpleTransparency=function(){this._metaData.alpha=!0};$p.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};$p.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};$p.prototype._complete=function(e){if(this.errord)return;let t;try{let r=_jr.dataToBitMap(e,this._bitmapInfo);t=Ajr(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",t)}});var Zwt=b((zei,Jwt)=>{"use strict";var $l=HI();Jwt.exports=function(e,t,r,n){let i=[$l.COLORTYPE_COLOR_ALPHA,$l.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let h=function(){let m=new ArrayBuffer(2);return new DataView(m).setInt16(0,256,!0),new Int16Array(m)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&h)return e}let s=n.bitDepth!==16?e:new Uint16Array(e.buffer),a=255,o=$l.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let u=$l.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,u*=2);let c=Buffer.alloc(t*r*u),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function p(){let h,m,y,g=a;switch(n.inputColorType){case $l.COLORTYPE_COLOR_ALPHA:g=s[l+3],h=s[l],m=s[l+1],y=s[l+2];break;case $l.COLORTYPE_COLOR:h=s[l],m=s[l+1],y=s[l+2];break;case $l.COLORTYPE_ALPHA:g=s[l+1],h=s[l],m=h,y=h;break;case $l.COLORTYPE_GRAYSCALE:h=s[l],m=h,y=h;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(i||(g/=a,h=Math.min(Math.max(Math.round((1-g)*f.red+g*h),0),a),m=Math.min(Math.max(Math.round((1-g)*f.green+g*m),0),a),y=Math.min(Math.max(Math.round((1-g)*f.blue+g*y),0),a))),{red:h,green:m,blue:y,alpha:g}}for(let h=0;h{"use strict";var eIt=F_e();function vjr(e,t,r,n,i){for(let s=0;s=s?e[t+a-s]:0,u=e[t+a]-o;n[i+a]=u}}function Sjr(e,t,r,n){let i=0;for(let s=0;s=n?e[t+s-n]:0,o=e[t+s]-a;i+=Math.abs(o)}return i}function wjr(e,t,r,n,i){for(let s=0;s0?e[t+s-r]:0,o=e[t+s]-a;n[i+s]=o}}function Ijr(e,t,r){let n=0,i=t+r;for(let s=t;s0?e[s-r]:0,o=e[s]-a;n+=Math.abs(o)}return n}function xjr(e,t,r,n,i,s){for(let a=0;a=s?e[t+a-s]:0,u=t>0?e[t+a-r]:0,c=e[t+a]-(o+u>>1);n[i+a]=c}}function Cjr(e,t,r,n){let i=0;for(let s=0;s=n?e[t+s-n]:0,o=t>0?e[t+s-r]:0,u=e[t+s]-(a+o>>1);i+=Math.abs(u)}return i}function Tjr(e,t,r,n,i,s){for(let a=0;a=s?e[t+a-s]:0,u=t>0?e[t+a-r]:0,c=t>0&&a>=s?e[t+a-(r+s)]:0,l=e[t+a]-eIt(o,u,c);n[i+a]=l}}function Njr(e,t,r,n){let i=0;for(let s=0;s=n?e[t+s-n]:0,o=t>0?e[t+s-r]:0,u=t>0&&s>=n?e[t+s-(r+n)]:0,c=e[t+s]-eIt(a,o,u);i+=Math.abs(c)}return i}var Rjr={0:vjr,1:Ejr,2:wjr,3:xjr,4:Tjr},Djr={0:bjr,1:Sjr,2:Ijr,3:Cjr,4:Njr};tIt.exports=function(e,t,r,n,i){let s;if(!("filterType"in n)||n.filterType===-1)s=[0,1,2,3,4];else if(typeof n.filterType=="number")s=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(i*=2);let a=t*i,o=0,u=0,c=Buffer.alloc((a+1)*r),l=s[0];for(let d=0;d1){let f=1/0;for(let p=0;p{"use strict";var yo=HI(),kjr=H_e(),Ojr=Zwt(),Pjr=rIt(),Mjr=require("zlib"),Hy=nIt.exports=function(e){if(this._options=e,e.deflateChunkSize=e.deflateChunkSize||32*1024,e.deflateLevel=e.deflateLevel!=null?e.deflateLevel:9,e.deflateStrategy=e.deflateStrategy!=null?e.deflateStrategy:3,e.inputHasAlpha=e.inputHasAlpha!=null?e.inputHasAlpha:!0,e.deflateFactory=e.deflateFactory||Mjr.createDeflate,e.bitDepth=e.bitDepth||8,e.colorType=typeof e.colorType=="number"?e.colorType:yo.COLORTYPE_COLOR_ALPHA,e.inputColorType=typeof e.inputColorType=="number"?e.inputColorType:yo.COLORTYPE_COLOR_ALPHA,[yo.COLORTYPE_GRAYSCALE,yo.COLORTYPE_COLOR,yo.COLORTYPE_COLOR_ALPHA,yo.COLORTYPE_ALPHA].indexOf(e.colorType)===-1)throw new Error("option color type:"+e.colorType+" is not supported at present");if([yo.COLORTYPE_GRAYSCALE,yo.COLORTYPE_COLOR,yo.COLORTYPE_COLOR_ALPHA,yo.COLORTYPE_ALPHA].indexOf(e.inputColorType)===-1)throw new Error("option input color type:"+e.inputColorType+" is not supported at present");if(e.bitDepth!==8&&e.bitDepth!==16)throw new Error("option bit depth:"+e.bitDepth+" is not supported at present")};Hy.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};Hy.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};Hy.prototype.filterData=function(e,t,r){let n=Ojr(e,t,r,this._options),i=yo.COLORTYPE_TO_BPP_MAP[this._options.colorType];return Pjr(n,t,r,this._options,i)};Hy.prototype._packChunk=function(e,t){let r=t?t.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(e,4),t&&t.copy(n,8),n.writeInt32BE(kjr.crc32(n.slice(4,n.length-4)),n.length-4),n};Hy.prototype.packGAMA=function(e){let t=Buffer.alloc(4);return t.writeUInt32BE(Math.floor(e*yo.GAMMA_DIVISION),0),this._packChunk(yo.TYPE_gAMA,t)};Hy.prototype.packIHDR=function(e,t){let r=Buffer.alloc(13);return r.writeUInt32BE(e,0),r.writeUInt32BE(t,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(yo.TYPE_IHDR,r)};Hy.prototype.packIDAT=function(e){return this._packChunk(yo.TYPE_IDAT,e)};Hy.prototype.packIEND=function(){return this._packChunk(yo.TYPE_IEND,null)}});var oIt=b((Yei,aIt)=>{"use strict";var Ljr=require("util"),iIt=require("stream"),Bjr=HI(),$jr=G_e(),sIt=aIt.exports=function(e){iIt.call(this);let t=e||{};this._packer=new $jr(t),this._deflate=this._packer.createDeflate(),this.readable=!0};Ljr.inherits(sIt,iIt);sIt.prototype.pack=function(e,t,r,n){this.emit("data",Buffer.from(Bjr.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(t,r)),n&&this.emit("data",this._packer.packGAMA(n));let i=this._packer.filterData(e,t,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(s){this.emit("data",this._packer.packIDAT(s))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(i)}});var pIt=b((AP,fIt)=>{"use strict";var uIt=require("assert").ok,KI=require("zlib"),Fjr=require("util"),cIt=require("buffer").kMaxLength;function Nb(e){if(!(this instanceof Nb))return new Nb(e);e&&e.chunkSize=0,"have should not go down"),y>0){let g=n._buffer.slice(n._offset,n._offset+y);if(n._offset+=y,g.length>a&&(g=g.slice(0,a)),u.push(g),c+=g.length,a-=g.length,a===0)return!1}return(m===0||n._offset>=n._chunkSize)&&(s=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),m===0?(o+=i-h,i=h,!0):!1}uIt(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(t,e,o,i,this._buffer,this._offset,s),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(c>=cIt)throw lIt(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+cIt.toString(16)+" bytes");let p=Buffer.concat(u,c);return lIt(this),p};Fjr.inherits(Nb,KI.Inflate);function qjr(e,t){if(typeof t=="string"&&(t=Buffer.from(t)),!(t instanceof Buffer))throw new TypeError("Not a string or buffer");let r=e._finishFlushFlag;return r==null&&(r=KI.Z_FINISH),e._processChunk(t,r)}function dIt(e,t){return qjr(new Nb(t),e)}fIt.exports=AP=dIt;AP.Inflate=Nb;AP.createInflate=Ujr;AP.inflateSync=dIt});var Y_e=b((Wei,mIt)=>{"use strict";var hIt=mIt.exports=function(e){this._buffer=e,this._reads=[]};hIt.prototype.read=function(e,t){this._reads.push({length:Math.abs(e),allowLess:e<0,func:t})};hIt.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let e=this._reads[0];if(this._buffer.length&&(this._buffer.length>=e.length||e.allowLess)){this._reads.shift();let t=this._buffer;this._buffer=t.slice(e.length),e.func.call(this,t.slice(0,e.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var yIt=b(gIt=>{"use strict";var jjr=Y_e(),Hjr=U_e();gIt.process=function(e,t){let r=[],n=new jjr(e);return new Hjr(t,{read:n.read.bind(n),write:function(s){r.push(s)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var bIt=b((Jei,vIt)=>{"use strict";var _It=!0,AIt=require("zlib"),Kjr=pIt();AIt.deflateSync||(_It=!1);var Vjr=Y_e(),zjr=yIt(),Qjr=K_e(),Gjr=V_e(),Yjr=z_e();vIt.exports=function(e,t){if(!_It)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(_){r=_}let i;function s(_){i=_}function a(_){i.transColor=_}function o(_){i.palette=_}function u(){i.alpha=!0}let c;function l(_){c=_}let d=[];function f(_){d.push(_)}let p=new Vjr(e);if(new Qjr(t,{read:p.read.bind(p),error:n,metadata:s,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:u}).start(),p.process(),r)throw r;let m=Buffer.concat(d);d.length=0;let y;if(i.interlace)y=AIt.inflateSync(m);else{let E=((i.width*i.bpp*i.depth+7>>3)+1)*i.height;y=Kjr(m,{chunkSize:E,maxLength:E})}if(m=null,!y||!y.length)throw new Error("bad png - invalid inflate data response");let g=zjr.process(y,i);m=null;let v=Gjr.dataToBitMap(g,i);g=null;let A=Yjr(v,i);return i.data=A,i.gamma=c||0,i}});var IIt=b((Zei,wIt)=>{"use strict";var EIt=!0,SIt=require("zlib");SIt.deflateSync||(EIt=!1);var Wjr=HI(),Xjr=G_e();wIt.exports=function(e,t){if(!EIt)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=t||{},n=new Xjr(r),i=[];i.push(Buffer.from(Wjr.PNG_SIGNATURE)),i.push(n.packIHDR(e.width,e.height)),e.gamma&&i.push(n.packGAMA(e.gamma));let s=n.filterData(e.data,e.width,e.height),a=SIt.deflateSync(s,n.getDeflateOptions());if(s=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return i.push(n.packIDAT(a)),i.push(n.packIEND()),Buffer.concat(i)}});var xIt=b(W_e=>{"use strict";var Jjr=bIt(),Zjr=IIt();W_e.read=function(e,t){return Jjr(e,t||{})};W_e.write=function(e,t){return Zjr(e,t)}});var X_e=b(TIt=>{"use strict";var e9r=require("util"),CIt=require("stream"),t9r=Xwt(),r9r=oIt(),n9r=xIt(),au=TIt.PNG=function(e){CIt.call(this),e=e||{},this.width=e.width|0,this.height=e.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,e.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new t9r(e),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new r9r(e),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};e9r.inherits(au,CIt);au.sync=n9r;au.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};au.prototype.parse=function(e,t){if(t){let r,n;r=function(i){this.removeListener("error",n),this.data=i,t(null,this)}.bind(this),n=function(i){this.removeListener("parsed",r),t(i,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(e),this};au.prototype.write=function(e){return this._parser.write(e),!0};au.prototype.end=function(e){this._parser.end(e)};au.prototype._metadata=function(e){this.width=e.width,this.height=e.height,this.emit("metadata",e)};au.prototype._gamma=function(e){this.gamma=e};au.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};au.bitblt=function(e,t,r,n,i,s,a,o){if(r|=0,n|=0,i|=0,s|=0,a|=0,o|=0,r>e.width||n>e.height||r+i>e.width||n+s>e.height)throw new Error("bitblt reading outside image");if(a>t.width||o>t.height||a+i>t.width||o+s>t.height)throw new Error("bitblt writing outside image");for(let u=0;u{function NIt(e){if(typeof e=="number"&&(e=e.toString()),typeof e!="string")throw new Error("Color should be defined as hex string");let t=e.slice().replace("#","").split("");if(t.length<3||t.length===5||t.length>8)throw new Error("Invalid hex color: "+e);(t.length===3||t.length===4)&&(t=Array.prototype.concat.apply([],t.map(function(n){return[n,n]}))),t.length===6&&t.push("F","F");let r=parseInt(t.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+t.slice(0,6).join("")}}Rb.getOptions=function(t){t||(t={}),t.color||(t.color={});let r=typeof t.margin>"u"||t.margin===null||t.margin<0?4:t.margin,n=t.width&&t.width>=21?t.width:void 0,i=t.scale||4;return{width:n,scale:n?4:i,margin:r,color:{dark:NIt(t.color.dark||"#000000ff"),light:NIt(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}};Rb.getScale=function(t,r){return r.width&&r.width>=t+r.margin*2?r.width/(t+r.margin*2):r.scale};Rb.getImageWidth=function(t,r){let n=Rb.getScale(t,r);return Math.floor((t+r.margin*2)*n)};Rb.qrToImageData=function(t,r,n){let i=r.modules.size,s=r.modules.data,a=Rb.getScale(i,n),o=Math.floor((i+n.margin*2)*a),u=n.margin*a,c=[n.color.light,n.color.dark];for(let l=0;l=u&&d>=u&&l{var i9r=require("fs"),s9r=X_e().PNG,J_e=vP();Fp.render=function(t,r){let n=J_e.getOptions(r),i=n.rendererOpts,s=J_e.getImageWidth(t.modules.size,n);i.width=s,i.height=s;let a=new s9r(i);return J_e.qrToImageData(a.data,t,n),a};Fp.renderToDataURL=function(t,r,n){typeof n>"u"&&(n=r,r=void 0),Fp.renderToBuffer(t,r,function(i,s){i&&n(i);let a="data:image/png;base64,";a+=s.toString("base64"),n(null,a)})};Fp.renderToBuffer=function(t,r,n){typeof n>"u"&&(n=r,r=void 0);let i=Fp.render(t,r),s=[];i.on("error",n),i.on("data",function(a){s.push(a)}),i.on("end",function(){n(null,Buffer.concat(s))}),i.pack()};Fp.renderToFile=function(t,r,n,i){typeof i>"u"&&(i=n,n=void 0);let s=!1,a=(...u)=>{s||(s=!0,i.apply(null,u))},o=i9r.createWriteStream(t);o.on("error",a),o.on("close",a),Fp.renderToFileStream(o,r,n)};Fp.renderToFileStream=function(t,r,n){Fp.render(r,n).pack().pipe(t)}});var DIt=b(mj=>{var a9r=vP(),o9r={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},u9r={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function c9r(e,t,r){return e&&t?r.BB:e&&!t?r.BW:!e&&t?r.WB:r.WW}mj.render=function(e,t,r){let n=a9r.getOptions(t),i=o9r;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(i=u9r);let s=e.modules.size,a=e.modules.data,o="",u=Array(s+n.margin*2+1).join(i.WW);u=Array(n.margin/2+1).join(u+` -`);let c=Array(n.margin+1).join(i.WW);o+=u;for(let l=0;l"u"&&(i=n,n=void 0);let s=require("fs"),a=mj.render(r,n);s.writeFile(t,a,i)}});var OIt=b(kIt=>{kIt.render=function(e,t,r){let n=e.modules.size,i=e.modules.data,s="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",u=Array(n+3).join(a),c=Array(2).join(a);o+=u+` -`;for(let l=0;l{var l9r="\x1B[47m",d9r="\x1B[40m",Z_e="\x1B[37m",eAe="\x1B[30m",Db="\x1B[0m",f9r=l9r+eAe,p9r=d9r+Z_e,h9r=function(e,t,r){return{"00":Db+" "+e,"01":Db+t+"\u2584"+e,"02":Db+r+"\u2584"+e,10:Db+t+"\u2580"+e,11:" ",12:"\u2584",20:Db+r+"\u2580"+e,21:"\u2580",22:"\u2588"}},PIt=function(e,t,r,n){let i=t+1;if(r>=i||n>=i||n<-1||r<-1)return"0";if(r>=t||n>=t||n<0||r<0)return"1";let s=n*t+r;return e[s]?"2":"1"},MIt=function(e,t,r,n){return PIt(e,t,r,n)+PIt(e,t,r,n+1)};LIt.render=function(e,t,r){let n=e.modules.size,i=e.modules.data,s=!!(t&&t.inverse),a=t&&t.inverse?p9r:f9r,c=h9r(a,s?eAe:Z_e,s?Z_e:eAe),l=Db+` -`+a,d=a;for(let f=-1;f{var m9r=OIt(),g9r=BIt();$It.render=function(e,t,r){return t&&t.small?g9r.render(e,t,r):m9r.render(e,t,r)}});var rAe=b(qIt=>{var y9r=vP();function UIt(e,t){let r=e.a/255,n=t+'="'+e.hex+'"';return r<1?n+" "+t+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function tAe(e,t,r){let n=e+t;return typeof r<"u"&&(n+=" "+r),n}function _9r(e,t,r){let n="",i=0,s=!1,a=0;for(let o=0;o0&&u>0&&e[o-1]||(n+=s?tAe("M",u+r,.5+c+r):tAe("m",i,0),i=0,s=!1),u+1':"",c="',l='viewBox="0 0 '+o+" "+o+'"',f=''+u+c+` -`;return typeof n=="function"&&n(null,f),f}});var jIt=b(gj=>{var A9r=rAe();gj.render=A9r.render;gj.renderToFile=function(t,r,n,i){typeof i>"u"&&(i=n,n=void 0);let s=require("fs"),o=''+gj.render(r,n);s.writeFile(t,o,i)}});var HIt=b(yj=>{var nAe=vP();function v9r(e,t,r){e.clearRect(0,0,t.width,t.height),t.style||(t.style={}),t.height=r,t.width=r,t.style.height=r+"px",t.style.width=r+"px"}function b9r(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}yj.render=function(t,r,n){let i=n,s=r;typeof i>"u"&&(!r||!r.getContext)&&(i=r,r=void 0),r||(s=b9r()),i=nAe.getOptions(i);let a=nAe.getImageWidth(t.modules.size,i),o=s.getContext("2d"),u=o.createImageData(a,a);return nAe.qrToImageData(u.data,t,i),v9r(o,s,a),o.putImageData(u,0,0),s};yj.renderToDataURL=function(t,r,n){let i=n;typeof i>"u"&&(!r||!r.getContext)&&(i=r,r=void 0),i||(i={});let s=yj.render(t,r,i),a=i.type||"image/png",o=i.rendererOpts||{};return s.toDataURL(a,o.quality)}});var VIt=b(bP=>{var E9r=g_e(),iAe=M_e(),KIt=HIt(),S9r=rAe();function sAe(e,t,r,n,i){let s=[].slice.call(arguments,1),a=s.length,o=typeof s[a-1]=="function";if(!o&&!E9r())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(i=r,r=t,t=n=void 0):a===3&&(t.getContext&&typeof i>"u"?(i=n,n=void 0):(i=n,n=r,r=t,t=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=t,t=n=void 0):a===2&&!t.getContext&&(n=r,r=t,t=void 0),new Promise(function(u,c){try{let l=iAe.create(r,n);u(e(l,t,n))}catch(l){c(l)}})}try{let u=iAe.create(r,n);i(null,e(u,t,n))}catch(u){i(u)}}bP.create=iAe.create;bP.toCanvas=sAe.bind(null,KIt.render);bP.toDataURL=sAe.bind(null,KIt.renderToDataURL);bP.toString=sAe.bind(null,function(e,t,r){return S9r.render(e,r)})});var YIt=b(Ky=>{var zIt=g_e(),aAe=M_e(),w9r=RIt(),QIt=DIt(),I9r=FIt(),GIt=jIt();function EP(e,t,r){if(typeof e>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=t,t={}),typeof r!="function")if(zIt())t=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:t,cb:r}}function x9r(e){return e.slice((e.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function _j(e){switch(e){case"svg":return GIt;case"txt":case"utf8":return QIt;case"png":case"image/png":default:return w9r}}function C9r(e){switch(e){case"svg":return GIt;case"terminal":return I9r;case"utf8":default:return QIt}}function SP(e,t,r){if(!r.cb)return new Promise(function(n,i){try{let s=aAe.create(t,r.opts);return e(s,r.opts,function(a,o){return a?i(a):n(o)})}catch(s){i(s)}});try{let n=aAe.create(t,r.opts);return e(n,r.opts,r.cb)}catch(n){r.cb(n)}}Ky.create=aAe.create;Ky.toCanvas=VIt().toCanvas;Ky.toString=function(t,r,n){let i=EP(t,r,n),s=i.opts?i.opts.type:void 0,a=C9r(s);return SP(a.render,t,i)};Ky.toDataURL=function(t,r,n){let i=EP(t,r,n),s=_j(i.opts.type);return SP(s.renderToDataURL,t,i)};Ky.toBuffer=function(t,r,n){let i=EP(t,r,n),s=_j(i.opts.type);return SP(s.renderToBuffer,t,i)};Ky.toFile=function(t,r,n,i){if(typeof t!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!zIt())throw new Error("Too few arguments provided");let s=EP(r,n,i),a=s.opts.type||x9r(t),u=_j(a).renderToFile.bind(null,t);return SP(u,r,s)};Ky.toFileStream=function(t,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let i=EP(r,n,t.emit.bind(t,"error")),a=_j("png").renderToFileStream.bind(null,t);SP(a,r,i)}});var kb=b((pti,WIt)=>{WIt.exports=YIt()});var gCt=b((Uti,mCt)=>{mCt.exports=require("util").inspect});var kP=b((qti,LCt)=>{var zAe=typeof Map=="function"&&Map.prototype,BAe=Object.getOwnPropertyDescriptor&&zAe?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,Uj=zAe&&BAe&&typeof BAe.get=="function"?BAe.get:null,yCt=zAe&&Map.prototype.forEach,QAe=typeof Set=="function"&&Set.prototype,$Ae=Object.getOwnPropertyDescriptor&&QAe?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,qj=QAe&&$Ae&&typeof $Ae.get=="function"?$Ae.get:null,_Ct=QAe&&Set.prototype.forEach,XHr=typeof WeakMap=="function"&&WeakMap.prototype,NP=XHr?WeakMap.prototype.has:null,JHr=typeof WeakSet=="function"&&WeakSet.prototype,RP=JHr?WeakSet.prototype.has:null,ZHr=typeof WeakRef=="function"&&WeakRef.prototype,ACt=ZHr?WeakRef.prototype.deref:null,eKr=Boolean.prototype.valueOf,tKr=Object.prototype.toString,rKr=Function.prototype.toString,nKr=String.prototype.match,GAe=String.prototype.slice,Wy=String.prototype.replace,iKr=String.prototype.toUpperCase,vCt=String.prototype.toLowerCase,NCt=RegExp.prototype.test,bCt=Array.prototype.concat,Vp=Array.prototype.join,sKr=Array.prototype.slice,ECt=Math.floor,qAe=typeof BigInt=="function"?BigInt.prototype.valueOf:null,FAe=Object.getOwnPropertySymbols,jAe=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,nx=typeof Symbol=="function"&&typeof Symbol.iterator=="object",DP=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===nx||!0)?Symbol.toStringTag:null,RCt=Object.prototype.propertyIsEnumerable,SCt=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function wCt(e,t){if(e===1/0||e===-1/0||e!==e||e&&e>-1e3&&e<1e3||NCt.call(/e/,t))return t;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof e=="number"){var n=e<0?-ECt(-e):ECt(e);if(n!==e){var i=String(n),s=GAe.call(t,i.length+1);return Wy.call(i,r,"$&_")+"."+Wy.call(Wy.call(s,/([0-9]{3})/g,"$&_"),/_$/,"")}}return Wy.call(t,r,"$&_")}var HAe=gCt(),ICt=HAe.custom,xCt=OCt(ICt)?ICt:null,DCt={__proto__:null,double:'"',single:"'"},aKr={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};LCt.exports=function e(t,r,n,i){var s=r||{};if(o0(s,"quoteStyle")&&!o0(DCt,s.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(o0(s,"maxStringLength")&&(typeof s.maxStringLength=="number"?s.maxStringLength<0&&s.maxStringLength!==1/0:s.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=o0(s,"customInspect")?s.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(o0(s,"indent")&&s.indent!==null&&s.indent!==" "&&!(parseInt(s.indent,10)===s.indent&&s.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(o0(s,"numericSeparator")&&typeof s.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=s.numericSeparator;if(typeof t>"u")return"undefined";if(t===null)return"null";if(typeof t=="boolean")return t?"true":"false";if(typeof t=="string")return MCt(t,s);if(typeof t=="number"){if(t===0)return 1/0/t>0?"0":"-0";var u=String(t);return o?wCt(t,u):u}if(typeof t=="bigint"){var c=String(t)+"n";return o?wCt(t,c):c}var l=typeof s.depth>"u"?5:s.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof t=="object")return KAe(t)?"[Array]":"[Object]";var d=wKr(s,n);if(typeof i>"u")i=[];else if(PCt(i,t)>=0)return"[Circular]";function f(P,$,Q){if($&&(i=sKr.call(i),i.push($)),Q){var j={depth:s.depth};return o0(s,"quoteStyle")&&(j.quoteStyle=s.quoteStyle),e(P,j,n+1,i)}return e(P,s,n+1,i)}if(typeof t=="function"&&!CCt(t)){var p=mKr(t),h=Fj(t,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(h.length>0?" { "+Vp.call(h,", ")+" }":"")}if(OCt(t)){var m=nx?Wy.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):jAe.call(t);return typeof t=="object"&&!nx?TP(m):m}if(bKr(t)){for(var y="<"+vCt.call(String(t.nodeName)),g=t.attributes||[],v=0;v",y}if(KAe(t)){if(t.length===0)return"[]";var A=Fj(t,f);return d&&!SKr(A)?"["+VAe(A,d)+"]":"[ "+Vp.call(A,", ")+" ]"}if(cKr(t)){var _=Fj(t,f);return!("cause"in Error.prototype)&&"cause"in t&&!RCt.call(t,"cause")?"{ ["+String(t)+"] "+Vp.call(bCt.call("[cause]: "+f(t.cause),_),", ")+" }":_.length===0?"["+String(t)+"]":"{ ["+String(t)+"] "+Vp.call(_,", ")+" }"}if(typeof t=="object"&&a){if(xCt&&typeof t[xCt]=="function"&&HAe)return HAe(t,{depth:l-n});if(a!=="symbol"&&typeof t.inspect=="function")return t.inspect()}if(gKr(t)){var E=[];return yCt&&yCt.call(t,function(P,$){E.push(f($,t,!0)+" => "+f(P,t))}),TCt("Map",Uj.call(t),E,d)}if(AKr(t)){var S=[];return _Ct&&_Ct.call(t,function(P){S.push(f(P,t))}),TCt("Set",qj.call(t),S,d)}if(yKr(t))return UAe("WeakMap");if(vKr(t))return UAe("WeakSet");if(_Kr(t))return UAe("WeakRef");if(dKr(t))return TP(f(Number(t)));if(pKr(t))return TP(f(qAe.call(t)));if(fKr(t))return TP(eKr.call(t));if(lKr(t))return TP(f(String(t)));if(typeof window<"u"&&t===window)return"{ [object Window] }";if(typeof globalThis<"u"&&t===globalThis||typeof global<"u"&&t===global)return"{ [object globalThis] }";if(!uKr(t)&&!CCt(t)){var C=Fj(t,f),I=SCt?SCt(t)===Object.prototype:t instanceof Object||t.constructor===Object,N=t instanceof Object?"":"null prototype",T=!I&&DP&&Object(t)===t&&DP in t?GAe.call(Xy(t),8,-1):N?"Object":"",k=I||typeof t.constructor!="function"?"":t.constructor.name?t.constructor.name+" ":"",O=k+(T||N?"["+Vp.call(bCt.call([],T||[],N||[]),": ")+"] ":"");return C.length===0?O+"{}":d?O+"{"+VAe(C,d)+"}":O+"{ "+Vp.call(C,", ")+" }"}return String(t)};function kCt(e,t,r){var n=r.quoteStyle||t,i=DCt[n];return i+e+i}function oKr(e){return Wy.call(String(e),/"/g,""")}function Bb(e){return!DP||!(typeof e=="object"&&(DP in e||typeof e[DP]<"u"))}function KAe(e){return Xy(e)==="[object Array]"&&Bb(e)}function uKr(e){return Xy(e)==="[object Date]"&&Bb(e)}function CCt(e){return Xy(e)==="[object RegExp]"&&Bb(e)}function cKr(e){return Xy(e)==="[object Error]"&&Bb(e)}function lKr(e){return Xy(e)==="[object String]"&&Bb(e)}function dKr(e){return Xy(e)==="[object Number]"&&Bb(e)}function fKr(e){return Xy(e)==="[object Boolean]"&&Bb(e)}function OCt(e){if(nx)return e&&typeof e=="object"&&e instanceof Symbol;if(typeof e=="symbol")return!0;if(!e||typeof e!="object"||!jAe)return!1;try{return jAe.call(e),!0}catch{}return!1}function pKr(e){if(!e||typeof e!="object"||!qAe)return!1;try{return qAe.call(e),!0}catch{}return!1}var hKr=Object.prototype.hasOwnProperty||function(e){return e in this};function o0(e,t){return hKr.call(e,t)}function Xy(e){return tKr.call(e)}function mKr(e){if(e.name)return e.name;var t=nKr.call(rKr.call(e),/^function\s*([\w$]+)/);return t?t[1]:null}function PCt(e,t){if(e.indexOf)return e.indexOf(t);for(var r=0,n=e.length;rt.maxStringLength){var r=e.length-t.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return MCt(GAe.call(e,0,t.maxStringLength),t)+n}var i=aKr[t.quoteStyle||"single"];i.lastIndex=0;var s=Wy.call(Wy.call(e,i,"\\$1"),/[\x00-\x1f]/g,EKr);return kCt(s,"single",t)}function EKr(e){var t=e.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return r?"\\"+r:"\\x"+(t<16?"0":"")+iKr.call(t.toString(16))}function TP(e){return"Object("+e+")"}function UAe(e){return e+" { ? }"}function TCt(e,t,r,n){var i=n?VAe(r,n):Vp.call(r,", ");return e+" ("+t+") {"+i+"}"}function SKr(e){for(var t=0;t=0)return!1;return!0}function wKr(e,t){var r;if(e.indent===" ")r=" ";else if(typeof e.indent=="number"&&e.indent>0)r=Vp.call(Array(e.indent+1)," ");else return null;return{base:r,prev:Vp.call(Array(t+1),r)}}function VAe(e,t){if(e.length===0)return"";var r=` -`+t.prev+t.base;return r+Vp.call(e,","+r)+` -`+t.prev}function Fj(e,t){var r=KAe(e),n=[];if(r){n.length=e.length;for(var i=0;i{"use strict";var IKr=kP(),xKr=Fg(),jj=function(e,t,r){for(var n=e,i;(i=n.next)!=null;n=i)if(i.key===t)return n.next=i.next,r||(i.next=e.next,e.next=i),i},CKr=function(e,t){if(e){var r=jj(e,t);return r&&r.value}},TKr=function(e,t,r){var n=jj(e,t);n?n.value=r:e.next={key:t,next:e.next,value:r}},NKr=function(e,t){return e?!!jj(e,t):!1},RKr=function(e,t){if(e)return jj(e,t,!0)};BCt.exports=function(){var t,r={assert:function(n){if(!r.has(n))throw new xKr("Side channel does not contain "+IKr(n))},delete:function(n){var i=t&&t.next,s=RKr(t,n);return s&&i&&i===s&&(t=void 0),!!s},get:function(n){return CKr(t,n)},has:function(n){return NKr(t,n)},set:function(n,i){t||(t={next:void 0}),TKr(t,n,i)}};return r}});var YAe=b((Hti,qCt)=>{"use strict";var FCt=jN(),UCt=Lne(),DKr=UCt([FCt("%String.prototype.indexOf%")]);qCt.exports=function(t,r){var n=FCt(t,!!r);return typeof n=="function"&&DKr(t,".prototype.")>-1?UCt([n]):n}});var WAe=b((Kti,HCt)=>{"use strict";var kKr=jN(),OP=YAe(),OKr=kP(),PKr=Fg(),jCt=kKr("%Map%",!0),MKr=OP("Map.prototype.get",!0),LKr=OP("Map.prototype.set",!0),BKr=OP("Map.prototype.has",!0),$Kr=OP("Map.prototype.delete",!0),FKr=OP("Map.prototype.size",!0);HCt.exports=!!jCt&&function(){var t,r={assert:function(n){if(!r.has(n))throw new PKr("Side channel does not contain "+OKr(n))},delete:function(n){if(t){var i=$Kr(t,n);return FKr(t)===0&&(t=void 0),i}return!1},get:function(n){if(t)return MKr(t,n)},has:function(n){return t?BKr(t,n):!1},set:function(n,i){t||(t=new jCt),LKr(t,n,i)}};return r}});var VCt=b((Vti,KCt)=>{"use strict";var UKr=jN(),Kj=YAe(),qKr=kP(),Hj=WAe(),jKr=Fg(),ix=UKr("%WeakMap%",!0),HKr=Kj("WeakMap.prototype.get",!0),KKr=Kj("WeakMap.prototype.set",!0),VKr=Kj("WeakMap.prototype.has",!0),zKr=Kj("WeakMap.prototype.delete",!0);KCt.exports=ix?function(){var t,r,n={assert:function(i){if(!n.has(i))throw new jKr("Side channel does not contain "+qKr(i))},delete:function(i){if(ix&&i&&(typeof i=="object"||typeof i=="function")){if(t)return zKr(t,i)}else if(Hj&&r)return r.delete(i);return!1},get:function(i){return ix&&i&&(typeof i=="object"||typeof i=="function")&&t?HKr(t,i):r&&r.get(i)},has:function(i){return ix&&i&&(typeof i=="object"||typeof i=="function")&&t?VKr(t,i):!!r&&r.has(i)},set:function(i,s){ix&&i&&(typeof i=="object"||typeof i=="function")?(t||(t=new ix),KKr(t,i,s)):Hj&&(r||(r=Hj()),r.set(i,s))}};return n}:Hj});var QCt=b((zti,zCt)=>{"use strict";var QKr=Fg(),GKr=kP(),YKr=$Ct(),WKr=WAe(),XKr=VCt(),JKr=XKr||WKr||YKr;zCt.exports=function(){var t,r={assert:function(n){if(!r.has(n))throw new QKr("Side channel does not contain "+GKr(n))},delete:function(n){return!!t&&t.delete(n)},get:function(n){return t&&t.get(n)},has:function(n){return!!t&&t.has(n)},set:function(n,i){t||(t=JKr()),t.set(n,i)}};return r}});var Vj=b((Qti,GCt)=>{"use strict";var ZKr=String.prototype.replace,eVr=/%20/g,XAe={RFC1738:"RFC1738",RFC3986:"RFC3986"};GCt.exports={default:XAe.RFC3986,formatters:{RFC1738:function(e){return ZKr.call(e,eVr,"+")},RFC3986:function(e){return String(e)}},RFC1738:XAe.RFC1738,RFC3986:XAe.RFC3986}});var eve=b((Gti,WCt)=>{"use strict";var tVr=Vj(),JAe=Object.prototype.hasOwnProperty,$b=Array.isArray,zp=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),rVr=function(t){for(;t.length>1;){var r=t.pop(),n=r.obj[r.prop];if($b(n)){for(var i=[],s=0;s=ZAe?a.slice(u,u+ZAe):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||s===tVr.RFC1738&&(f===40||f===41)){l[l.length]=c.charAt(d);continue}if(f<128){l[l.length]=zp[f];continue}if(f<2048){l[l.length]=zp[192|f>>6]+zp[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=zp[224|f>>12]+zp[128|f>>6&63]+zp[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|c.charCodeAt(d)&1023),l[l.length]=zp[240|f>>18]+zp[128|f>>12&63]+zp[128|f>>6&63]+zp[128|f&63]}o+=l.join("")}return o},oVr=function(t){for(var r=[{obj:{o:t},prop:"o"}],n=[],i=0;i{"use strict";var JCt=QCt(),zj=eve(),PP=Vj(),fVr=Object.prototype.hasOwnProperty,ZCt={brackets:function(t){return t+"[]"},comma:"comma",indices:function(t,r){return t+"["+r+"]"},repeat:function(t){return t}},Qp=Array.isArray,pVr=Array.prototype.push,eTt=function(e,t){pVr.apply(e,Qp(t)?t:[t])},hVr=Date.prototype.toISOString,XCt=PP.default,Bs={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:zj.encode,encodeValuesOnly:!1,filter:void 0,format:XCt,formatter:PP.formatters[XCt],indices:!1,serializeDate:function(t){return hVr.call(t)},skipNulls:!1,strictNullHandling:!1},mVr=function(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"||typeof t=="symbol"||typeof t=="bigint"},tve={},gVr=function e(t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v){for(var A=t,_=v,E=0,S=!1;(_=_.get(tve))!==void 0&&!S;){var C=_.get(t);if(E+=1,typeof C<"u"){if(C===E)throw new RangeError("Cyclic object value");S=!0}typeof _.get(tve)>"u"&&(E=0)}if(typeof l=="function"?A=l(r,A):A instanceof Date?A=p(A):n==="comma"&&Qp(A)&&(A=zj.maybeMap(A,function(Z){return Z instanceof Date?p(Z):Z})),A===null){if(a)return c&&!y?c(r,Bs.encoder,g,"key",h):r;A=""}if(mVr(A)||zj.isBuffer(A)){if(c){var I=y?r:c(r,Bs.encoder,g,"key",h);return[m(I)+"="+m(c(A,Bs.encoder,g,"value",h))]}return[m(r)+"="+m(String(A))]}var N=[];if(typeof A>"u")return N;var T;if(n==="comma"&&Qp(A))y&&c&&(A=zj.maybeMap(A,c)),T=[{value:A.length>0?A.join(",")||null:void 0}];else if(Qp(l))T=l;else{var k=Object.keys(A);T=d?k.sort(d):k}var O=u?String(r).replace(/\./g,"%2E"):String(r),P=i&&Qp(A)&&A.length===1?O+"[]":O;if(s&&Qp(A)&&A.length===0)return P+"[]";for(var $=0;$"u"?t.encodeDotInKeys===!0?!0:Bs.allowDots:!!t.allowDots;return{addQueryPrefix:typeof t.addQueryPrefix=="boolean"?t.addQueryPrefix:Bs.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:Bs.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:Bs.charsetSentinel,commaRoundTrip:!!t.commaRoundTrip,delimiter:typeof t.delimiter>"u"?Bs.delimiter:t.delimiter,encode:typeof t.encode=="boolean"?t.encode:Bs.encode,encodeDotInKeys:typeof t.encodeDotInKeys=="boolean"?t.encodeDotInKeys:Bs.encodeDotInKeys,encoder:typeof t.encoder=="function"?t.encoder:Bs.encoder,encodeValuesOnly:typeof t.encodeValuesOnly=="boolean"?t.encodeValuesOnly:Bs.encodeValuesOnly,filter:s,format:n,formatter:i,serializeDate:typeof t.serializeDate=="function"?t.serializeDate:Bs.serializeDate,skipNulls:typeof t.skipNulls=="boolean"?t.skipNulls:Bs.skipNulls,sort:typeof t.sort=="function"?t.sort:null,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:Bs.strictNullHandling}};tTt.exports=function(e,t){var r=e,n=yVr(t),i,s;typeof n.filter=="function"?(s=n.filter,r=s("",r)):Qp(n.filter)&&(s=n.filter,i=s);var a=[];if(typeof r!="object"||r===null)return"";var o=ZCt[n.arrayFormat],u=o==="comma"&&n.commaRoundTrip;i||(i=Object.keys(r)),n.sort&&i.sort(n.sort);for(var c=JCt(),l=0;l0?h+p:""}});var aTt=b((Wti,sTt)=>{"use strict";var Fb=eve(),rve=Object.prototype.hasOwnProperty,nTt=Array.isArray,Hi={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Fb.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},_Vr=function(e){return e.replace(/&#(\d+);/g,function(t,r){return String.fromCharCode(parseInt(r,10))})},iTt=function(e,t,r){if(e&&typeof e=="string"&&t.comma&&e.indexOf(",")>-1)return e.split(",");if(t.throwOnLimitExceeded&&r>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(t.arrayLimit===1?"":"s")+" allowed in an array.");return e},AVr="utf8=%26%2310003%3B",vVr="utf8=%E2%9C%93",bVr=function(t,r){var n={__proto__:null},i=r.ignoreQueryPrefix?t.replace(/^\?/,""):t;i=i.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var s=r.parameterLimit===1/0?void 0:r.parameterLimit,a=i.split(r.delimiter,r.throwOnLimitExceeded?s+1:s);if(r.throwOnLimitExceeded&&a.length>s)throw new RangeError("Parameter limit exceeded. Only "+s+" parameter"+(s===1?"":"s")+" allowed.");var o=-1,u,c=r.charset;if(r.charsetSentinel)for(u=0;u-1&&(h=nTt(h)?[h]:h);var m=rve.call(n,p);m&&r.duplicates==="combine"?n[p]=Fb.combine(n[p],h):(!m||r.duplicates==="last")&&(n[p]=h)}return n},EVr=function(e,t,r,n){var i=0;if(e.length>0&&e[e.length-1]==="[]"){var s=e.slice(0,-1).join("");i=Array.isArray(t)&&t[s]?t[s].length:0}for(var a=n?t:iTt(t,r,i),o=e.length-1;o>=0;--o){var u,c=e[o];if(c==="[]"&&r.parseArrays)u=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Fb.combine([],a);else{u=r.plainObjects?{__proto__:null}:{};var l=c.charAt(0)==="["&&c.charAt(c.length-1)==="]"?c.slice(1,-1):c,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?u={0:a}:!isNaN(f)&&c!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(u=[],u[f]=a):d!=="__proto__"&&(u[d]=a)}a=u}return a},SVr=function(t,r,n,i){if(t){var s=n.allowDots?t.replace(/\.([^.[]+)/g,"[$1]"):t,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,u=n.depth>0&&a.exec(s),c=u?s.slice(0,u.index):s,l=[];if(c){if(!n.plainObjects&&rve.call(Object.prototype,c)&&!n.allowPrototypes)return;l.push(c)}for(var d=0;n.depth>0&&(u=o.exec(s))!==null&&d"u"?Hi.charset:t.charset,n=typeof t.duplicates>"u"?Hi.duplicates:t.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var i=typeof t.allowDots>"u"?t.decodeDotInKeys===!0?!0:Hi.allowDots:!!t.allowDots;return{allowDots:i,allowEmptyArrays:typeof t.allowEmptyArrays=="boolean"?!!t.allowEmptyArrays:Hi.allowEmptyArrays,allowPrototypes:typeof t.allowPrototypes=="boolean"?t.allowPrototypes:Hi.allowPrototypes,allowSparse:typeof t.allowSparse=="boolean"?t.allowSparse:Hi.allowSparse,arrayLimit:typeof t.arrayLimit=="number"?t.arrayLimit:Hi.arrayLimit,charset:r,charsetSentinel:typeof t.charsetSentinel=="boolean"?t.charsetSentinel:Hi.charsetSentinel,comma:typeof t.comma=="boolean"?t.comma:Hi.comma,decodeDotInKeys:typeof t.decodeDotInKeys=="boolean"?t.decodeDotInKeys:Hi.decodeDotInKeys,decoder:typeof t.decoder=="function"?t.decoder:Hi.decoder,delimiter:typeof t.delimiter=="string"||Fb.isRegExp(t.delimiter)?t.delimiter:Hi.delimiter,depth:typeof t.depth=="number"||t.depth===!1?+t.depth:Hi.depth,duplicates:n,ignoreQueryPrefix:t.ignoreQueryPrefix===!0,interpretNumericEntities:typeof t.interpretNumericEntities=="boolean"?t.interpretNumericEntities:Hi.interpretNumericEntities,parameterLimit:typeof t.parameterLimit=="number"?t.parameterLimit:Hi.parameterLimit,parseArrays:t.parseArrays!==!1,plainObjects:typeof t.plainObjects=="boolean"?t.plainObjects:Hi.plainObjects,strictDepth:typeof t.strictDepth=="boolean"?!!t.strictDepth:Hi.strictDepth,strictNullHandling:typeof t.strictNullHandling=="boolean"?t.strictNullHandling:Hi.strictNullHandling,throwOnLimitExceeded:typeof t.throwOnLimitExceeded=="boolean"?t.throwOnLimitExceeded:!1}};sTt.exports=function(e,t){var r=wVr(t);if(e===""||e===null||typeof e>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof e=="string"?bVr(e,r):e,i=r.plainObjects?{__proto__:null}:{},s=Object.keys(n),a=0;a{"use strict";var IVr=rTt(),xVr=aTt(),CVr=Vj();oTt.exports={formats:CVr,parse:xVr,stringify:IVr}});var nve=b((uTt,Qj)=>{(function(e){"use strict";var t,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,i=Math.floor,s="[BigNumber Error] ",a=s+"Number primitive has more than 15 significant digits: ",o=1e14,u=14,c=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function p(E){var S,C,I,N=ue.prototype={constructor:ue,toString:null,valueOf:null},T=new ue(1),k=20,O=4,P=-7,$=21,Q=-1e7,j=1e7,z=!1,X=1,K=0,Z={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},Y="0123456789abcdefghijklmnopqrstuvwxyz",ie=!0;function ue(M,F){var V,H,G,J,ee,te,re,ce,de=this;if(!(de instanceof ue))return new ue(M,F);if(F==null){if(M&&M._isBigNumber===!0){de.s=M.s,!M.c||M.e>j?de.c=de.e=null:M.e=10;ee/=10,J++);J>j?de.c=de.e=null:(de.e=J,de.c=[M]);return}ce=String(M)}else{if(!r.test(ce=String(M)))return I(de,ce,te);de.s=ce.charCodeAt(0)==45?(ce=ce.slice(1),-1):1}(J=ce.indexOf("."))>-1&&(ce=ce.replace(".","")),(ee=ce.search(/e/i))>0?(J<0&&(J=ee),J+=+ce.slice(ee+1),ce=ce.substring(0,ee)):J<0&&(J=ce.length)}else{if(g(F,2,Y.length,"Base"),F==10&&ie)return de=new ue(M),B(de,k+de.e+1,O);if(ce=String(M),te=typeof M=="number"){if(M*0!=0)return I(de,ce,te,F);if(de.s=1/M<0?(ce=ce.slice(1),-1):1,ue.DEBUG&&ce.replace(/^0\.0*|\./,"").length>15)throw Error(a+M)}else de.s=ce.charCodeAt(0)===45?(ce=ce.slice(1),-1):1;for(V=Y.slice(0,F),J=ee=0,re=ce.length;eeJ){J=re;continue}}else if(!G&&(ce==ce.toUpperCase()&&(ce=ce.toLowerCase())||ce==ce.toLowerCase()&&(ce=ce.toUpperCase()))){G=!0,ee=-1,J=0;continue}return I(de,String(M),te,F)}te=!1,ce=C(ce,F,10,de.s),(J=ce.indexOf("."))>-1?ce=ce.replace(".",""):J=ce.length}for(ee=0;ce.charCodeAt(ee)===48;ee++);for(re=ce.length;ce.charCodeAt(--re)===48;);if(ce=ce.slice(ee,++re)){if(re-=ee,te&&ue.DEBUG&&re>15&&(M>c||M!==i(M)))throw Error(a+de.s*M);if((J=J-ee-1)>j)de.c=de.e=null;else if(J=-f&&G<=f&&G===i(G)){if(H[0]===0){if(G===0&&H.length===1)return!0;break e}if(F=(G+1)%u,F<1&&(F+=u),String(H[0]).length==F){for(F=0;F=o||V!==i(V))break e;if(V!==0)return!0}}}else if(H===null&&G===null&&(J===null||J===1||J===-1))return!0;throw Error(s+"Invalid BigNumber: "+M)},ue.maximum=ue.max=function(){return ye(arguments,-1)},ue.minimum=ue.min=function(){return ye(arguments,1)},ue.random=function(){var M=9007199254740992,F=Math.random()*M&2097151?function(){return i(Math.random()*M)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(V){var H,G,J,ee,te,re=0,ce=[],de=new ue(T);if(V==null?V=k:g(V,0,f),ee=n(V/u),z)if(crypto.getRandomValues){for(H=crypto.getRandomValues(new Uint32Array(ee*=2));re>>11),te>=9e15?(G=crypto.getRandomValues(new Uint32Array(2)),H[re]=G[0],H[re+1]=G[1]):(ce.push(te%1e14),re+=2);re=ee/2}else if(crypto.randomBytes){for(H=crypto.randomBytes(ee*=7);re=9e15?crypto.randomBytes(7).copy(H,re):(ce.push(te%1e14),re+=7);re=ee/7}else throw z=!1,Error(s+"crypto unavailable");if(!z)for(;re=10;te/=10,re++);reG-1&&(te[ee+1]==null&&(te[ee+1]=0),te[ee+1]+=te[ee]/G|0,te[ee]%=G)}return te.reverse()}return function(V,H,G,J,ee){var te,re,ce,de,pe,Ce,$e,We,Ve=V.indexOf("."),Te=k,Ne=O;for(Ve>=0&&(de=K,K=0,V=V.replace(".",""),We=new ue(H),Ce=We.pow(V.length-Ve),K=de,We.c=F(_(m(Ce.c),Ce.e,"0"),10,G,M),We.e=We.c.length),$e=F(V,H,G,ee?(te=Y,M):(te=M,Y)),ce=de=$e.length;$e[--de]==0;$e.pop());if(!$e[0])return te.charAt(0);if(Ve<0?--ce:(Ce.c=$e,Ce.e=ce,Ce.s=J,Ce=S(Ce,We,Te,Ne,G),$e=Ce.c,pe=Ce.r,ce=Ce.e),re=ce+Te+1,Ve=$e[re],de=G/2,pe=pe||re<0||$e[re+1]!=null,pe=Ne<4?(Ve!=null||pe)&&(Ne==0||Ne==(Ce.s<0?3:2)):Ve>de||Ve==de&&(Ne==4||pe||Ne==6&&$e[re-1]&1||Ne==(Ce.s<0?8:7)),re<1||!$e[0])V=pe?_(te.charAt(1),-Te,te.charAt(0)):te.charAt(0);else{if($e.length=re,pe)for(--G;++$e[--re]>G;)$e[re]=0,re||(++ce,$e=[1].concat($e));for(de=$e.length;!$e[--de];);for(Ve=0,V="";Ve<=de;V+=te.charAt($e[Ve++]));V=_(V,ce,te.charAt(0))}return V}}(),S=function(){function M(H,G,J){var ee,te,re,ce,de=0,pe=H.length,Ce=G%d,$e=G/d|0;for(H=H.slice();pe--;)re=H[pe]%d,ce=H[pe]/d|0,ee=$e*re+ce*Ce,te=Ce*re+ee%d*d+de,de=(te/J|0)+(ee/d|0)+$e*ce,H[pe]=te%J;return de&&(H=[de].concat(H)),H}function F(H,G,J,ee){var te,re;if(J!=ee)re=J>ee?1:-1;else for(te=re=0;teG[te]?1:-1;break}return re}function V(H,G,J,ee){for(var te=0;J--;)H[J]-=te,te=H[J]1;H.splice(0,1));}return function(H,G,J,ee,te){var re,ce,de,pe,Ce,$e,We,Ve,Te,Ne,Ue,Me,Ge,Be,It,Ze,$t,Nt=H.s==G.s?1:-1,St=H.c,ft=G.c;if(!St||!St[0]||!ft||!ft[0])return new ue(!H.s||!G.s||(St?ft&&St[0]==ft[0]:!ft)?NaN:St&&St[0]==0||!ft?Nt*0:Nt/0);for(Ve=new ue(Nt),Te=Ve.c=[],ce=H.e-G.e,Nt=J+ce+1,te||(te=o,ce=h(H.e/u)-h(G.e/u),Nt=Nt/u|0),de=0;ft[de]==(St[de]||0);de++);if(ft[de]>(St[de]||0)&&ce--,Nt<0)Te.push(1),pe=!0;else{for(Be=St.length,Ze=ft.length,de=0,Nt+=2,Ce=i(te/(ft[0]+1)),Ce>1&&(ft=M(ft,Ce,te),St=M(St,Ce,te),Ze=ft.length,Be=St.length),Ge=Ze,Ne=St.slice(0,Ze),Ue=Ne.length;Ue=te/2&&It++;do{if(Ce=0,re=F(ft,Ne,Ze,Ue),re<0){if(Me=Ne[0],Ze!=Ue&&(Me=Me*te+(Ne[1]||0)),Ce=i(Me/It),Ce>1)for(Ce>=te&&(Ce=te-1),$e=M(ft,Ce,te),We=$e.length,Ue=Ne.length;F($e,Ne,We,Ue)==1;)Ce--,V($e,Ze=10;Nt/=10,de++);B(Ve,J+(Ve.e=de+ce*u-1)+1,ee,pe)}else Ve.e=ce,Ve.r=+pe;return Ve}}();function he(M,F,V,H){var G,J,ee,te,re;if(V==null?V=O:g(V,0,8),!M.c)return M.toString();if(G=M.c[0],ee=M.e,F==null)re=m(M.c),re=H==1||H==2&&(ee<=P||ee>=$)?A(re,ee):_(re,ee,"0");else if(M=B(new ue(M),F,V),J=M.e,re=m(M.c),te=re.length,H==1||H==2&&(F<=J||J<=P)){for(;teee),re=_(re,J,"0"),J+1>te){if(--F>0)for(re+=".";F--;re+="0");}else if(F+=J-te,F>0)for(J+1==te&&(re+=".");F--;re+="0");return M.s<0&&G?"-"+re:re}function ye(M,F){for(var V,H,G=1,J=new ue(M[0]);G=10;G/=10,H++);return(V=H+V*u-1)>j?M.c=M.e=null:V=10;te/=10,G++);if(J=F-G,J<0)J+=u,ee=F,re=pe[ce=0],de=i(re/Ce[G-ee-1]%10);else if(ce=n((J+1)/u),ce>=pe.length)if(H){for(;pe.length<=ce;pe.push(0));re=de=0,G=1,J%=u,ee=J-u+1}else break e;else{for(re=te=pe[ce],G=1;te>=10;te/=10,G++);J%=u,ee=J-u+G,de=ee<0?0:i(re/Ce[G-ee-1]%10)}if(H=H||F<0||pe[ce+1]!=null||(ee<0?re:re%Ce[G-ee-1]),H=V<4?(de||H)&&(V==0||V==(M.s<0?3:2)):de>5||de==5&&(V==4||H||V==6&&(J>0?ee>0?re/Ce[G-ee]:0:pe[ce-1])%10&1||V==(M.s<0?8:7)),F<1||!pe[0])return pe.length=0,H?(F-=M.e+1,pe[0]=Ce[(u-F%u)%u],M.e=-F||0):pe[0]=M.e=0,M;if(J==0?(pe.length=ce,te=1,ce--):(pe.length=ce+1,te=Ce[u-J],pe[ce]=ee>0?i(re/Ce[G-ee]%Ce[ee])*te:0),H)for(;;)if(ce==0){for(J=1,ee=pe[0];ee>=10;ee/=10,J++);for(ee=pe[0]+=te,te=1;ee>=10;ee/=10,te++);J!=te&&(M.e++,pe[0]==o&&(pe[0]=1));break}else{if(pe[ce]+=te,pe[ce]!=o)break;pe[ce--]=0,te=1}for(J=pe.length;pe[--J]===0;pe.pop());}M.e>j?M.c=M.e=null:M.e=$?A(F,V):_(F,V,"0"),M.s<0?"-"+F:F)}return N.absoluteValue=N.abs=function(){var M=new ue(this);return M.s<0&&(M.s=1),M},N.comparedTo=function(M,F){return y(this,new ue(M,F))},N.decimalPlaces=N.dp=function(M,F){var V,H,G,J=this;if(M!=null)return g(M,0,f),F==null?F=O:g(F,0,8),B(new ue(J),M+J.e+1,F);if(!(V=J.c))return null;if(H=((G=V.length-1)-h(this.e/u))*u,G=V[G])for(;G%10==0;G/=10,H--);return H<0&&(H=0),H},N.dividedBy=N.div=function(M,F){return S(this,new ue(M,F),k,O)},N.dividedToIntegerBy=N.idiv=function(M,F){return S(this,new ue(M,F),0,1)},N.exponentiatedBy=N.pow=function(M,F){var V,H,G,J,ee,te,re,ce,de,pe=this;if(M=new ue(M),M.c&&!M.isInteger())throw Error(s+"Exponent not an integer: "+ae(M));if(F!=null&&(F=new ue(F)),te=M.e>14,!pe.c||!pe.c[0]||pe.c[0]==1&&!pe.e&&pe.c.length==1||!M.c||!M.c[0])return de=new ue(Math.pow(+ae(pe),te?M.s*(2-v(M)):+ae(M))),F?de.mod(F):de;if(re=M.s<0,F){if(F.c?!F.c[0]:!F.s)return new ue(NaN);H=!re&&pe.isInteger()&&F.isInteger(),H&&(pe=pe.mod(F))}else{if(M.e>9&&(pe.e>0||pe.e<-1||(pe.e==0?pe.c[0]>1||te&&pe.c[1]>=24e7:pe.c[0]<8e13||te&&pe.c[0]<=9999975e7)))return J=pe.s<0&&v(M)?-0:0,pe.e>-1&&(J=1/J),new ue(re?1/J:J);K&&(J=n(K/u+2))}for(te?(V=new ue(.5),re&&(M.s=1),ce=v(M)):(G=Math.abs(+ae(M)),ce=G%2),de=new ue(T);;){if(ce){if(de=de.times(pe),!de.c)break;J?de.c.length>J&&(de.c.length=J):H&&(de=de.mod(F))}if(G){if(G=i(G/2),G===0)break;ce=G%2}else if(M=M.times(V),B(M,M.e+1,1),M.e>14)ce=v(M);else{if(G=+ae(M),G===0)break;ce=G%2}pe=pe.times(pe),J?pe.c&&pe.c.length>J&&(pe.c.length=J):H&&(pe=pe.mod(F))}return H?de:(re&&(de=T.div(de)),F?de.mod(F):J?B(de,K,O,ee):de)},N.integerValue=function(M){var F=new ue(this);return M==null?M=O:g(M,0,8),B(F,F.e+1,M)},N.isEqualTo=N.eq=function(M,F){return y(this,new ue(M,F))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(M,F){return y(this,new ue(M,F))>0},N.isGreaterThanOrEqualTo=N.gte=function(M,F){return(F=y(this,new ue(M,F)))===1||F===0},N.isInteger=function(){return!!this.c&&h(this.e/u)>this.c.length-2},N.isLessThan=N.lt=function(M,F){return y(this,new ue(M,F))<0},N.isLessThanOrEqualTo=N.lte=function(M,F){return(F=y(this,new ue(M,F)))===-1||F===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(M,F){var V,H,G,J,ee=this,te=ee.s;if(M=new ue(M,F),F=M.s,!te||!F)return new ue(NaN);if(te!=F)return M.s=-F,ee.plus(M);var re=ee.e/u,ce=M.e/u,de=ee.c,pe=M.c;if(!re||!ce){if(!de||!pe)return de?(M.s=-F,M):new ue(pe?ee:NaN);if(!de[0]||!pe[0])return pe[0]?(M.s=-F,M):new ue(de[0]?ee:O==3?-0:0)}if(re=h(re),ce=h(ce),de=de.slice(),te=re-ce){for((J=te<0)?(te=-te,G=de):(ce=re,G=pe),G.reverse(),F=te;F--;G.push(0));G.reverse()}else for(H=(J=(te=de.length)<(F=pe.length))?te:F,te=F=0;F0)for(;F--;de[V++]=0);for(F=o-1;H>te;){if(de[--H]=0;){for(V=0,Ce=Me[G]%Te,$e=Me[G]/Te|0,ee=re,J=G+ee;J>G;)ce=Ue[--ee]%Te,de=Ue[ee]/Te|0,te=$e*ce+de*Ce,ce=Ce*ce+te%Te*Te+We[J]+V,V=(ce/Ve|0)+(te/Te|0)+$e*de,We[J--]=ce%Ve;We[J]=V}return V?++H:We.splice(0,1),q(M,We,H)},N.negated=function(){var M=new ue(this);return M.s=-M.s||null,M},N.plus=function(M,F){var V,H=this,G=H.s;if(M=new ue(M,F),F=M.s,!G||!F)return new ue(NaN);if(G!=F)return M.s=-F,H.minus(M);var J=H.e/u,ee=M.e/u,te=H.c,re=M.c;if(!J||!ee){if(!te||!re)return new ue(G/0);if(!te[0]||!re[0])return re[0]?M:new ue(te[0]?H:G*0)}if(J=h(J),ee=h(ee),te=te.slice(),G=J-ee){for(G>0?(ee=J,V=re):(G=-G,V=te),V.reverse();G--;V.push(0));V.reverse()}for(G=te.length,F=re.length,G-F<0&&(V=re,re=te,te=V,F=G),G=0;F;)G=(te[--F]=te[F]+re[F]+G)/o|0,te[F]=o===te[F]?0:te[F]%o;return G&&(te=[G].concat(te),++ee),q(M,te,ee)},N.precision=N.sd=function(M,F){var V,H,G,J=this;if(M!=null&&M!==!!M)return g(M,1,f),F==null?F=O:g(F,0,8),B(new ue(J),M,F);if(!(V=J.c))return null;if(G=V.length-1,H=G*u+1,G=V[G]){for(;G%10==0;G/=10,H--);for(G=V[0];G>=10;G/=10,H++);}return M&&J.e+1>H&&(H=J.e+1),H},N.shiftedBy=function(M){return g(M,-c,c),this.times("1e"+M)},N.squareRoot=N.sqrt=function(){var M,F,V,H,G,J=this,ee=J.c,te=J.s,re=J.e,ce=k+4,de=new ue("0.5");if(te!==1||!ee||!ee[0])return new ue(!te||te<0&&(!ee||ee[0])?NaN:ee?J:1/0);if(te=Math.sqrt(+ae(J)),te==0||te==1/0?(F=m(ee),(F.length+re)%2==0&&(F+="0"),te=Math.sqrt(+F),re=h((re+1)/2)-(re<0||re%2),te==1/0?F="5e"+re:(F=te.toExponential(),F=F.slice(0,F.indexOf("e")+1)+re),V=new ue(F)):V=new ue(te+""),V.c[0]){for(re=V.e,te=re+ce,te<3&&(te=0);;)if(G=V,V=de.times(G.plus(S(J,G,ce,1))),m(G.c).slice(0,te)===(F=m(V.c)).slice(0,te))if(V.e0&&We>0){for(J=We%te||te,de=$e.substr(0,J);J0&&(de+=ce+$e.slice(J)),Ce&&(de="-"+de)}H=pe?de+(V.decimalSeparator||"")+((re=+V.fractionGroupSize)?pe.replace(new RegExp("\\d{"+re+"}\\B","g"),"$&"+(V.fractionGroupSeparator||"")):pe):de}return(V.prefix||"")+H+(V.suffix||"")},N.toFraction=function(M){var F,V,H,G,J,ee,te,re,ce,de,pe,Ce,$e=this,We=$e.c;if(M!=null&&(te=new ue(M),!te.isInteger()&&(te.c||te.s!==1)||te.lt(T)))throw Error(s+"Argument "+(te.isInteger()?"out of range: ":"not an integer: ")+ae(te));if(!We)return new ue($e);for(F=new ue(T),ce=V=new ue(T),H=re=new ue(T),Ce=m(We),J=F.e=Ce.length-$e.e-1,F.c[0]=l[(ee=J%u)<0?u+ee:ee],M=!M||te.comparedTo(F)>0?J>0?F:ce:te,ee=j,j=1/0,te=new ue(Ce),re.c[0]=0;de=S(te,F,0,1),G=V.plus(de.times(H)),G.comparedTo(M)!=1;)V=H,H=G,ce=re.plus(de.times(G=ce)),re=G,F=te.minus(de.times(G=F)),te=G;return G=S(M.minus(V),H,0,1),re=re.plus(G.times(ce)),V=V.plus(G.times(H)),re.s=ce.s=$e.s,J=J*2,pe=S(ce,H,J,O).minus($e).abs().comparedTo(S(re,V,J,O).minus($e).abs())<1?[ce,H]:[re,V],j=ee,pe},N.toNumber=function(){return+ae(this)},N.toPrecision=function(M,F){return M!=null&&g(M,1,f),he(this,M,F,2)},N.toString=function(M){var F,V=this,H=V.s,G=V.e;return G===null?H?(F="Infinity",H<0&&(F="-"+F)):F="NaN":(M==null?F=G<=P||G>=$?A(m(V.c),G):_(m(V.c),G,"0"):M===10&&ie?(V=B(new ue(V),k+G+1,O),F=_(m(V.c),V.e,"0")):(g(M,2,Y.length,"Base"),F=C(_(m(V.c),G,"0"),10,M,H,!0)),H<0&&V.c[0]&&(F="-"+F)),F},N.valueOf=N.toJSON=function(){return ae(this)},N._isBigNumber=!0,E!=null&&ue.set(E),ue}function h(E){var S=E|0;return E>0||E===S?S:S-1}function m(E){for(var S,C,I=1,N=E.length,T=E[0]+"";I$^C?1:-1;for(O=(P=N.length)<($=T.length)?P:$,k=0;kT[k]^C?1:-1;return P==$?0:P>$^C?1:-1}function g(E,S,C,I){if(EC||E!==i(E))throw Error(s+(I||"Argument")+(typeof E=="number"?EC?" out of range: ":" not an integer: ":" not a primitive number: ")+String(E))}function v(E){var S=E.c.length-1;return h(E.e/u)==S&&E.c[S]%2!=0}function A(E,S){return(E.length>1?E.charAt(0)+"."+E.slice(1):E)+(S<0?"e":"e+")+S}function _(E,S,C){var I,N;if(S<0){for(N=C+".";++S;N+=C);E=N+E}else if(I=E.length,++S>I){for(N=C,S-=I;--S;N+=C);E+=N}else S{var cTt=nve(),lTt=dTt.exports;(function(){"use strict";function e(c){return c<10?"0"+c:c}var t=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,i,s={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(c){return r.lastIndex=0,r.test(c)?'"'+c.replace(r,function(l){var d=s[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+c+'"'}function u(c,l){var d,f,p,h,m=n,y,g=l[c],v=g!=null&&(g instanceof cTt||cTt.isBigNumber(g));switch(g&&typeof g=="object"&&typeof g.toJSON=="function"&&(g=g.toJSON(c)),typeof a=="function"&&(g=a.call(l,c,g)),typeof g){case"string":return v?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=i,y=[],Object.prototype.toString.apply(g)==="[object Array]"){for(h=g.length,d=0;d=7&&gcn(c,t),_cn(c,a),isNaN(n)&&(n=GIe.getBestMask(c,KIe.bind(null,c,r))),GIe.applyMask(n,c),KIe(c,r,n),{modules:c,version:t,errorCorrectionLevel:r,maskPattern:n,segments:s}}dkt.create=function(t,r){if(typeof t>"u"||t==="")throw new Error("No input text");let n=VIe.M,s,i;return typeof r<"u"&&(n=VIe.from(r.errorCorrectionLevel,VIe.M),s=qj.from(r.version),i=GIe.from(r.maskPattern),r.toSJISFunc&&Hj.setToSJISFunction(r.toSJISFunc)),ycn(t,s,n,i)}});var QIe=S((Ybs,hkt)=>{"use strict";var vcn=require("util"),fkt=require("stream"),T0=hkt.exports=function(){fkt.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};vcn.inherits(T0,fkt);T0.prototype.read=function(e,t){this._reads.push({length:Math.abs(e),allowLess:e<0,func:t}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};T0.prototype.write=function(e,t){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(e)?r=e:r=Buffer.from(e,t||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};T0.prototype.end=function(e,t){e&&this.write(e,t),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};T0.prototype.destroySoon=T0.prototype.end;T0.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};T0.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};T0.prototype._processReadAllowingLess=function(e){this._reads.shift();let t=this._buffers[0];t.length>e.length?(this._buffered-=e.length,this._buffers[0]=t.slice(e.length),e.func.call(this,t.slice(0,e.length))):(this._buffered-=t.length,this._buffers.shift(),e.func.call(this,t))};T0.prototype._processRead=function(e){this._reads.shift();let t=0,r=0,n=Buffer.alloc(e.length);for(;t0&&this._buffers.splice(0,r),this._buffered-=e.length,e.func.call(this,n)};T0.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let e=this._reads[0];if(e.allowLess)this._processReadAllowingLess(e);else if(this._buffered>=e.length)this._processRead(e);else break}this._buffers&&!this.writable&&this._end()}catch(e){this.emit("error",e)}}});var XIe=S(WIe=>{"use strict";var qE=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];WIe.getImagePasses=function(e,t){let r=[],n=e%8,s=t%8,i=(e-n)/8,a=(t-s)/8;for(let o=0;o0&&l>0&&r.push({width:u,height:l,index:o})}return r};WIe.getInterlaceIterator=function(e){return function(t,r,n){let s=t%qE[n].x.length,i=(t-s)/qE[n].x.length*8+qE[n].x[s],a=r%qE[n].y.length,o=(r-a)/qE[n].y.length*8+qE[n].y[a];return i*4+o*e*4}}});var JIe=S((Wbs,pkt)=>{"use strict";pkt.exports=function(t,r,n){let s=t+r-n,i=Math.abs(s-t),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?t:a<=o?r:n}});var ZIe=S((Xbs,gkt)=>{"use strict";var Scn=XIe(),Tcn=JIe();function mkt(e,t,r){let n=e*t;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Sx=gkt.exports=function(e,t){let r=e.width,n=e.height,s=e.interlace,i=e.bpp,a=e.depth;if(this.read=t.read,this.write=t.write,this.complete=t.complete,this._imageIndex=0,this._images=[],s){let o=Scn.getImagePasses(r,n);for(let c=0;cs?t[i-n]:0;t[i]=a+o}};Sx.prototype._unFilterType2=function(e,t,r){let n=this._lastLine;for(let s=0;ss?t[a-n]:0,l=Math.floor((u+c)/2);t[a]=o+l}};Sx.prototype._unFilterType4=function(e,t,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;as?t[a-n]:0,l=a>s&&i?i[a-n]:0,d=Tcn(u,c,l);t[a]=o+d}};Sx.prototype._reverseFilterLine=function(e){let t=e[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(t===0)r=e.slice(1,s+1);else switch(r=Buffer.alloc(s),t){case 1:this._unFilterType1(e,r,s);break;case 2:this._unFilterType2(e,r,s);break;case 3:this._unFilterType3(e,r,s);break;case 4:this._unFilterType4(e,r,s);break;default:throw new Error("Unrecognised filter type - "+t)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var Ekt=S((Jbs,Akt)=>{"use strict";var bcn=require("util"),_kt=QIe(),Icn=ZIe(),Rcn=Akt.exports=function(e){_kt.call(this);let t=[],r=this;this._filter=new Icn(e,{read:this.read.bind(this),write:function(n){t.push(n)},complete:function(){r.emit("complete",Buffer.concat(t))}}),this._filter.start()};bcn.inherits(Rcn,_kt)});var Tx=S((Zbs,ykt)=>{"use strict";ykt.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var rRe=S((e1s,vkt)=>{"use strict";var eRe=[];(function(){for(let e=0;e<256;e++){let t=e;for(let r=0;r<8;r++)t&1?t=3988292384^t>>>1:t=t>>>1;eRe[e]=t}})();var tRe=vkt.exports=function(){this._crc=-1};tRe.prototype.write=function(e){for(let t=0;t>>8;return!0};tRe.prototype.crc32=function(){return this._crc^-1};tRe.crc32=function(e){let t=-1;for(let r=0;r>>8;return t^-1}});var nRe=S((t1s,Skt)=>{"use strict";var Ra=Tx(),Ccn=rRe(),Ja=Skt.exports=function(e,t){this._options=e,e.checkCRC=e.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ra.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ra.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ra.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ra.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ra.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ra.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=t.read,this.error=t.error,this.metadata=t.metadata,this.gamma=t.gamma,this.transColor=t.transColor,this.palette=t.palette,this.parsed=t.parsed,this.inflateData=t.inflateData,this.finished=t.finished,this.simpleTransparency=t.simpleTransparency,this.headersFinished=t.headersFinished||function(){}};Ja.prototype.start=function(){this.read(Ra.PNG_SIGNATURE.length,this._parseSignature.bind(this))};Ja.prototype._parseSignature=function(e){let t=Ra.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let t=0;t0?this._handleIDAT(r):this._handleChunkEnd()};Ja.prototype._handleIEND=function(e){this.read(e,this._parseIEND.bind(this))};Ja.prototype._parseIEND=function(e){this._crc.write(e),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var sRe=S(bkt=>{"use strict";var Tkt=XIe(),xcn=[function(){},function(e,t,r,n){if(n===t.length)throw new Error("Ran out of data");let s=t[n];e[r]=s,e[r+1]=s,e[r+2]=s,e[r+3]=255},function(e,t,r,n){if(n+1>=t.length)throw new Error("Ran out of data");let s=t[n];e[r]=s,e[r+1]=s,e[r+2]=s,e[r+3]=t[n+1]},function(e,t,r,n){if(n+2>=t.length)throw new Error("Ran out of data");e[r]=t[n],e[r+1]=t[n+1],e[r+2]=t[n+2],e[r+3]=255},function(e,t,r,n){if(n+3>=t.length)throw new Error("Ran out of data");e[r]=t[n],e[r+1]=t[n+1],e[r+2]=t[n+2],e[r+3]=t[n+3]}],wcn=[function(){},function(e,t,r,n){let s=t[0];e[r]=s,e[r+1]=s,e[r+2]=s,e[r+3]=n},function(e,t,r){let n=t[0];e[r]=n,e[r+1]=n,e[r+2]=n,e[r+3]=t[1]},function(e,t,r,n){e[r]=t[0],e[r+1]=t[1],e[r+2]=t[2],e[r+3]=n},function(e,t,r){e[r]=t[0],e[r+1]=t[1],e[r+2]=t[2],e[r+3]=t[3]}];function Ncn(e,t){let r=[],n=0;function s(){if(n===e.length)throw new Error("Ran out of data");let i=e[n];n++;let a,o,c,u,l,d,f,h;switch(t){default:throw new Error("unrecognised depth");case 16:f=e[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,h=i>>4,r.push(h,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,h=i>>6&3,r.push(h,f,d,l);break;case 1:a=i&1,o=i>>1&1,c=i>>2&1,u=i>>3&1,l=i>>4&1,d=i>>5&1,f=i>>6&1,h=i>>7&1,r.push(h,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length{"use strict";function Pcn(e,t,r,n,s){let i=0;for(let a=0;a{"use strict";var kcn=require("util"),aRe=require("zlib"),Rkt=QIe(),Bcn=Ekt(),Ucn=nRe(),Fcn=sRe(),$cn=iRe(),cp=Ckt.exports=function(e){Rkt.call(this),this._parser=new Ucn(e,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=e,this.writable=!0,this._parser.start()};kcn.inherits(cp,Rkt);cp.prototype._handleError=function(e){this.emit("error",e),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};cp.prototype._inflateData=function(e){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=aRe.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,aRe.Z_MIN_CHUNK);this._inflate=aRe.createInflate({chunkSize:n});let s=r,i=this.emit.bind(this,"error");this._inflate.on("error",function(o){s&&i(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){s&&(o.length>s&&(o=o.slice(0,s)),s-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(e)};cp.prototype._handleMetaData=function(e){this._metaData=e,this._bitmapInfo=Object.create(e),this._filter=new Bcn(this._bitmapInfo)};cp.prototype._handleTransColor=function(e){this._bitmapInfo.transColor=e};cp.prototype._handlePalette=function(e){this._bitmapInfo.palette=e};cp.prototype._simpleTransparency=function(){this._metaData.alpha=!0};cp.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};cp.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};cp.prototype._complete=function(e){if(this.errord)return;let t;try{let r=Fcn.dataToBitMap(e,this._bitmapInfo);t=$cn(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",t)}});var Nkt=S((i1s,wkt)=>{"use strict";var nf=Tx();wkt.exports=function(e,t,r,n){let s=[nf.COLORTYPE_COLOR_ALPHA,nf.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let p=function(){let m=new ArrayBuffer(2);return new DataView(m).setInt16(0,256,!0),new Int16Array(m)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&p)return e}let i=n.bitDepth!==16?e:new Uint16Array(e.buffer),a=255,o=nf.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=nf.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(t*r*c),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function h(){let p,m,g,_=a;switch(n.inputColorType){case nf.COLORTYPE_COLOR_ALPHA:_=i[l+3],p=i[l],m=i[l+1],g=i[l+2];break;case nf.COLORTYPE_COLOR:p=i[l],m=i[l+1],g=i[l+2];break;case nf.COLORTYPE_ALPHA:_=i[l+1],p=i[l],m=p,g=p;break;case nf.COLORTYPE_GRAYSCALE:p=i[l],m=p,g=p;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(_/=a,p=Math.min(Math.max(Math.round((1-_)*f.red+_*p),0),a),m=Math.min(Math.max(Math.round((1-_)*f.green+_*m),0),a),g=Math.min(Math.max(Math.round((1-_)*f.blue+_*g),0),a))),{red:p,green:m,blue:g,alpha:_}}for(let p=0;p{"use strict";var Okt=JIe();function qcn(e,t,r,n,s){for(let i=0;i=i?e[t+a-i]:0,c=e[t+a]-o;n[s+a]=c}}function jcn(e,t,r,n){let s=0;for(let i=0;i=n?e[t+i-n]:0,o=e[t+i]-a;s+=Math.abs(o)}return s}function Kcn(e,t,r,n,s){for(let i=0;i0?e[t+i-r]:0,o=e[t+i]-a;n[s+i]=o}}function Gcn(e,t,r){let n=0,s=t+r;for(let i=t;i0?e[i-r]:0,o=e[i]-a;n+=Math.abs(o)}return n}function zcn(e,t,r,n,s,i){for(let a=0;a=i?e[t+a-i]:0,c=t>0?e[t+a-r]:0,u=e[t+a]-(o+c>>1);n[s+a]=u}}function Ycn(e,t,r,n){let s=0;for(let i=0;i=n?e[t+i-n]:0,o=t>0?e[t+i-r]:0,c=e[t+i]-(a+o>>1);s+=Math.abs(c)}return s}function Qcn(e,t,r,n,s,i){for(let a=0;a=i?e[t+a-i]:0,c=t>0?e[t+a-r]:0,u=t>0&&a>=i?e[t+a-(r+i)]:0,l=e[t+a]-Okt(o,c,u);n[s+a]=l}}function Wcn(e,t,r,n){let s=0;for(let i=0;i=n?e[t+i-n]:0,o=t>0?e[t+i-r]:0,c=t>0&&i>=n?e[t+i-(r+n)]:0,u=e[t+i]-Okt(a,o,c);s+=Math.abs(u)}return s}var Xcn={0:qcn,1:Vcn,2:Kcn,3:zcn,4:Qcn},Jcn={0:Hcn,1:jcn,2:Gcn,3:Ycn,4:Wcn};Dkt.exports=function(e,t,r,n,s){let i;if(!("filterType"in n)||n.filterType===-1)i=[0,1,2,3,4];else if(typeof n.filterType=="number")i=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(s*=2);let a=t*s,o=0,c=0,u=Buffer.alloc((a+1)*r),l=i[0];for(let d=0;d1){let f=1/0;for(let h=0;h{"use strict";var cc=Tx(),Zcn=rRe(),eun=Nkt(),tun=Pkt(),run=require("zlib"),HE=Lkt.exports=function(e){if(this._options=e,e.deflateChunkSize=e.deflateChunkSize||32*1024,e.deflateLevel=e.deflateLevel!=null?e.deflateLevel:9,e.deflateStrategy=e.deflateStrategy!=null?e.deflateStrategy:3,e.inputHasAlpha=e.inputHasAlpha!=null?e.inputHasAlpha:!0,e.deflateFactory=e.deflateFactory||run.createDeflate,e.bitDepth=e.bitDepth||8,e.colorType=typeof e.colorType=="number"?e.colorType:cc.COLORTYPE_COLOR_ALPHA,e.inputColorType=typeof e.inputColorType=="number"?e.inputColorType:cc.COLORTYPE_COLOR_ALPHA,[cc.COLORTYPE_GRAYSCALE,cc.COLORTYPE_COLOR,cc.COLORTYPE_COLOR_ALPHA,cc.COLORTYPE_ALPHA].indexOf(e.colorType)===-1)throw new Error("option color type:"+e.colorType+" is not supported at present");if([cc.COLORTYPE_GRAYSCALE,cc.COLORTYPE_COLOR,cc.COLORTYPE_COLOR_ALPHA,cc.COLORTYPE_ALPHA].indexOf(e.inputColorType)===-1)throw new Error("option input color type:"+e.inputColorType+" is not supported at present");if(e.bitDepth!==8&&e.bitDepth!==16)throw new Error("option bit depth:"+e.bitDepth+" is not supported at present")};HE.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};HE.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};HE.prototype.filterData=function(e,t,r){let n=eun(e,t,r,this._options),s=cc.COLORTYPE_TO_BPP_MAP[this._options.colorType];return tun(n,t,r,this._options,s)};HE.prototype._packChunk=function(e,t){let r=t?t.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(e,4),t&&t.copy(n,8),n.writeInt32BE(Zcn.crc32(n.slice(4,n.length-4)),n.length-4),n};HE.prototype.packGAMA=function(e){let t=Buffer.alloc(4);return t.writeUInt32BE(Math.floor(e*cc.GAMMA_DIVISION),0),this._packChunk(cc.TYPE_gAMA,t)};HE.prototype.packIHDR=function(e,t){let r=Buffer.alloc(13);return r.writeUInt32BE(e,0),r.writeUInt32BE(t,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(cc.TYPE_IHDR,r)};HE.prototype.packIDAT=function(e){return this._packChunk(cc.TYPE_IDAT,e)};HE.prototype.packIEND=function(){return this._packChunk(cc.TYPE_IEND,null)}});var Ukt=S((c1s,Bkt)=>{"use strict";var nun=require("util"),Mkt=require("stream"),sun=Tx(),iun=oRe(),kkt=Bkt.exports=function(e){Mkt.call(this);let t=e||{};this._packer=new iun(t),this._deflate=this._packer.createDeflate(),this.readable=!0};nun.inherits(kkt,Mkt);kkt.prototype.pack=function(e,t,r,n){this.emit("data",Buffer.from(sun.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(t,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(e,t,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(i){this.emit("data",this._packer.packIDAT(i))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(s)}});var jkt=S((M4,Vkt)=>{"use strict";var Fkt=require("assert").ok,bx=require("zlib"),aun=require("util"),$kt=require("buffer").kMaxLength;function qT(e){if(!(this instanceof qT))return new qT(e);e&&e.chunkSize=0,"have should not go down"),g>0){let _=n._buffer.slice(n._offset,n._offset+g);if(n._offset+=g,_.length>a&&(_=_.slice(0,a)),c.push(_),u+=_.length,a-=_.length,a===0)return!1}return(m===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),m===0?(o+=s-p,s=p,!0):!1}Fkt(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(t,e,o,s,this._buffer,this._offset,i),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(u>=$kt)throw qkt(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+$kt.toString(16)+" bytes");let h=Buffer.concat(c,u);return qkt(this),h};aun.inherits(qT,bx.Inflate);function cun(e,t){if(typeof t=="string"&&(t=Buffer.from(t)),!(t instanceof Buffer))throw new TypeError("Not a string or buffer");let r=e._finishFlushFlag;return r==null&&(r=bx.Z_FINISH),e._processChunk(t,r)}function Hkt(e,t){return cun(new qT(t),e)}Vkt.exports=M4=Hkt;M4.Inflate=qT;M4.createInflate=oun;M4.inflateSync=Hkt});var cRe=S((u1s,Gkt)=>{"use strict";var Kkt=Gkt.exports=function(e){this._buffer=e,this._reads=[]};Kkt.prototype.read=function(e,t){this._reads.push({length:Math.abs(e),allowLess:e<0,func:t})};Kkt.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let e=this._reads[0];if(this._buffer.length&&(this._buffer.length>=e.length||e.allowLess)){this._reads.shift();let t=this._buffer;this._buffer=t.slice(e.length),e.func.call(this,t.slice(0,e.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var Ykt=S(zkt=>{"use strict";var uun=cRe(),lun=ZIe();zkt.process=function(e,t){let r=[],n=new uun(e);return new lun(t,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var Jkt=S((d1s,Xkt)=>{"use strict";var Qkt=!0,Wkt=require("zlib"),dun=jkt();Wkt.deflateSync||(Qkt=!1);var fun=cRe(),hun=Ykt(),pun=nRe(),mun=sRe(),gun=iRe();Xkt.exports=function(e,t){if(!Qkt)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(E){r=E}let s;function i(E){s=E}function a(E){s.transColor=E}function o(E){s.palette=E}function c(){s.alpha=!0}let u;function l(E){u=E}let d=[];function f(E){d.push(E)}let h=new fun(e);if(new pun(t,{read:h.read.bind(h),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),h.process(),r)throw r;let m=Buffer.concat(d);d.length=0;let g;if(s.interlace)g=Wkt.inflateSync(m);else{let v=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;g=dun(m,{chunkSize:v,maxLength:v})}if(m=null,!g||!g.length)throw new Error("bad png - invalid inflate data response");let _=hun.process(g,s);m=null;let y=mun.dataToBitMap(_,s);_=null;let A=gun(y,s);return s.data=A,s.gamma=u||0,s}});var r4t=S((f1s,t4t)=>{"use strict";var Zkt=!0,e4t=require("zlib");e4t.deflateSync||(Zkt=!1);var _un=Tx(),Aun=oRe();t4t.exports=function(e,t){if(!Zkt)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=t||{},n=new Aun(r),s=[];s.push(Buffer.from(_un.PNG_SIGNATURE)),s.push(n.packIHDR(e.width,e.height)),e.gamma&&s.push(n.packGAMA(e.gamma));let i=n.filterData(e.data,e.width,e.height),a=e4t.deflateSync(i,n.getDeflateOptions());if(i=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return s.push(n.packIDAT(a)),s.push(n.packIEND()),Buffer.concat(s)}});var n4t=S(uRe=>{"use strict";var Eun=Jkt(),yun=r4t();uRe.read=function(e,t){return Eun(e,t||{})};uRe.write=function(e,t){return yun(e,t)}});var lRe=S(i4t=>{"use strict";var vun=require("util"),s4t=require("stream"),Sun=xkt(),Tun=Ukt(),bun=n4t(),eu=i4t.PNG=function(e){s4t.call(this),e=e||{},this.width=e.width|0,this.height=e.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,e.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new Sun(e),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(t){this.data=t,this.emit("parsed",t)}.bind(this)),this._packer=new Tun(e),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};vun.inherits(eu,s4t);eu.sync=bun;eu.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};eu.prototype.parse=function(e,t){if(t){let r,n;r=function(s){this.removeListener("error",n),this.data=s,t(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),t(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(e),this};eu.prototype.write=function(e){return this._parser.write(e),!0};eu.prototype.end=function(e){this._parser.end(e)};eu.prototype._metadata=function(e){this.width=e.width,this.height=e.height,this.emit("metadata",e)};eu.prototype._gamma=function(e){this.gamma=e};eu.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};eu.bitblt=function(e,t,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>e.width||n>e.height||r+s>e.width||n+i>e.height)throw new Error("bitblt reading outside image");if(a>t.width||o>t.height||a+s>t.width||o+i>t.height)throw new Error("bitblt writing outside image");for(let c=0;c{function a4t(e){if(typeof e=="number"&&(e=e.toString()),typeof e!="string")throw new Error("Color should be defined as hex string");let t=e.slice().replace("#","").split("");if(t.length<3||t.length===5||t.length>8)throw new Error("Invalid hex color: "+e);(t.length===3||t.length===4)&&(t=Array.prototype.concat.apply([],t.map(function(n){return[n,n]}))),t.length===6&&t.push("F","F");let r=parseInt(t.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+t.slice(0,6).join("")}}HT.getOptions=function(t){t||(t={}),t.color||(t.color={});let r=typeof t.margin>"u"||t.margin===null||t.margin<0?4:t.margin,n=t.width&&t.width>=21?t.width:void 0,s=t.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:a4t(t.color.dark||"#000000ff"),light:a4t(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}};HT.getScale=function(t,r){return r.width&&r.width>=t+r.margin*2?r.width/(t+r.margin*2):r.scale};HT.getImageWidth=function(t,r){let n=HT.getScale(t,r);return Math.floor((t+r.margin*2)*n)};HT.qrToImageData=function(t,r,n){let s=r.modules.size,i=r.modules.data,a=HT.getScale(s,n),o=Math.floor((s+n.margin*2)*a),c=n.margin*a,u=[n.color.light,n.color.dark];for(let l=0;l=c&&d>=c&&l{var Iun=require("fs"),Run=lRe().PNG,dRe=k4();up.render=function(t,r){let n=dRe.getOptions(r),s=n.rendererOpts,i=dRe.getImageWidth(t.modules.size,n);s.width=i,s.height=i;let a=new Run(s);return dRe.qrToImageData(a.data,t,n),a};up.renderToDataURL=function(t,r,n){typeof n>"u"&&(n=r,r=void 0),up.renderToBuffer(t,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};up.renderToBuffer=function(t,r,n){typeof n>"u"&&(n=r,r=void 0);let s=up.render(t,r),i=[];s.on("error",n),s.on("data",function(a){i.push(a)}),s.on("end",function(){n(null,Buffer.concat(i))}),s.pack()};up.renderToFile=function(t,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=Iun.createWriteStream(t);o.on("error",a),o.on("close",a),up.renderToFileStream(o,r,n)};up.renderToFileStream=function(t,r,n){up.render(r,n).pack().pipe(t)}});var c4t=S(Vj=>{var Cun=k4(),xun={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},wun={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function Nun(e,t,r){return e&&t?r.BB:e&&!t?r.BW:!e&&t?r.WB:r.WW}Vj.render=function(e,t,r){let n=Cun.getOptions(t),s=xun;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=wun);let i=e.modules.size,a=e.modules.data,o="",c=Array(i+n.margin*2+1).join(s.WW);c=Array(n.margin/2+1).join(c+` +`);let u=Array(n.margin+1).join(s.WW);o+=c;for(let l=0;l"u"&&(s=n,n=void 0);let i=require("fs"),a=Vj.render(r,n);i.writeFile(t,a,s)}});var l4t=S(u4t=>{u4t.render=function(e,t,r){let n=e.modules.size,s=e.modules.data,i="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",c=Array(n+3).join(a),u=Array(2).join(a);o+=c+` +`;for(let l=0;l{var Oun="\x1B[47m",Dun="\x1B[40m",fRe="\x1B[37m",hRe="\x1B[30m",VT="\x1B[0m",Pun=Oun+hRe,Lun=Dun+fRe,Mun=function(e,t,r){return{"00":VT+" "+e,"01":VT+t+"\u2584"+e,"02":VT+r+"\u2584"+e,10:VT+t+"\u2580"+e,11:" ",12:"\u2584",20:VT+r+"\u2580"+e,21:"\u2580",22:"\u2588"}},d4t=function(e,t,r,n){let s=t+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=t||n>=t||n<0||r<0)return"1";let i=n*t+r;return e[i]?"2":"1"},f4t=function(e,t,r,n){return d4t(e,t,r,n)+d4t(e,t,r,n+1)};h4t.render=function(e,t,r){let n=e.modules.size,s=e.modules.data,i=!!(t&&t.inverse),a=t&&t.inverse?Lun:Pun,u=Mun(a,i?hRe:fRe,i?fRe:hRe),l=VT+` +`+a,d=a;for(let f=-1;f{var kun=l4t(),Bun=p4t();m4t.render=function(e,t,r){return t&&t.small?Bun.render(e,t,r):kun.render(e,t,r)}});var mRe=S(A4t=>{var Uun=k4();function _4t(e,t){let r=e.a/255,n=t+'="'+e.hex+'"';return r<1?n+" "+t+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function pRe(e,t,r){let n=e+t;return typeof r<"u"&&(n+=" "+r),n}function Fun(e,t,r){let n="",s=0,i=!1,a=0;for(let o=0;o0&&c>0&&e[o-1]||(n+=i?pRe("M",c+r,.5+u+r):pRe("m",s,0),s=0,i=!1),c+1':"",u="',l='viewBox="0 0 '+o+" "+o+'"',f=''+c+u+` +`;return typeof n=="function"&&n(null,f),f}});var E4t=S(jj=>{var $un=mRe();jj.render=$un.render;jj.renderToFile=function(t,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o=''+jj.render(r,n);i.writeFile(t,o,s)}});var y4t=S(Kj=>{var gRe=k4();function qun(e,t,r){e.clearRect(0,0,t.width,t.height),t.style||(t.style={}),t.height=r,t.width=r,t.style.height=r+"px",t.style.width=r+"px"}function Hun(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}Kj.render=function(t,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=Hun()),s=gRe.getOptions(s);let a=gRe.getImageWidth(t.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return gRe.qrToImageData(c.data,t,s),qun(o,i,a),o.putImageData(c,0,0),i};Kj.renderToDataURL=function(t,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=Kj.render(t,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var S4t=S(B4=>{var Vun=wIe(),_Re=YIe(),v4t=y4t(),jun=mRe();function ARe(e,t,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!Vun())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(s=r,r=t,t=n=void 0):a===3&&(t.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=t,t=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=t,t=n=void 0):a===2&&!t.getContext&&(n=r,r=t,t=void 0),new Promise(function(c,u){try{let l=_Re.create(r,n);c(e(l,t,n))}catch(l){u(l)}})}try{let c=_Re.create(r,n);s(null,e(c,t,n))}catch(c){s(c)}}B4.create=_Re.create;B4.toCanvas=ARe.bind(null,v4t.render);B4.toDataURL=ARe.bind(null,v4t.renderToDataURL);B4.toString=ARe.bind(null,function(e,t,r){return jun.render(e,r)})});var R4t=S(VE=>{var T4t=wIe(),ERe=YIe(),Kun=o4t(),b4t=c4t(),Gun=g4t(),I4t=E4t();function U4(e,t,r){if(typeof e>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=t,t={}),typeof r!="function")if(T4t())t=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:t,cb:r}}function zun(e){return e.slice((e.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function Gj(e){switch(e){case"svg":return I4t;case"txt":case"utf8":return b4t;case"png":case"image/png":default:return Kun}}function Yun(e){switch(e){case"svg":return I4t;case"terminal":return Gun;case"utf8":default:return b4t}}function F4(e,t,r){if(!r.cb)return new Promise(function(n,s){try{let i=ERe.create(t,r.opts);return e(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=ERe.create(t,r.opts);return e(n,r.opts,r.cb)}catch(n){r.cb(n)}}VE.create=ERe.create;VE.toCanvas=S4t().toCanvas;VE.toString=function(t,r,n){let s=U4(t,r,n),i=s.opts?s.opts.type:void 0,a=Yun(i);return F4(a.render,t,s)};VE.toDataURL=function(t,r,n){let s=U4(t,r,n),i=Gj(s.opts.type);return F4(i.renderToDataURL,t,s)};VE.toBuffer=function(t,r,n){let s=U4(t,r,n),i=Gj(s.opts.type);return F4(i.renderToBuffer,t,s)};VE.toFile=function(t,r,n,s){if(typeof t!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!T4t())throw new Error("Too few arguments provided");let i=U4(r,n,s),a=i.opts.type||zun(t),c=Gj(a).renderToFile.bind(null,t);return F4(c,r,i)};VE.toFileStream=function(t,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=U4(r,n,t.emit.bind(t,"error")),a=Gj("png").renderToFileStream.bind(null,t);F4(a,r,s)}});var jE=S((R1s,C4t)=>{C4t.exports=R4t()});function gt(e){return String(e??"").trim()}function tln(e=""){let t=gt(e);return t?t.length<=12?`${t.slice(0,3)}***`:`${t.slice(0,6)}...${t.slice(-4)}`:""}function O4t(e=""){let t=gt(e);return t?vRe.default.createHash("sha256").update(t).digest("hex").slice(0,16):""}function KE(){return gt(process.env.PAN123_OPEN_OAUTH_SERVER||process.env.LITEPAN_OAUTH_SERVER)||Xun}function V4(e={}){let t=[e,e?.data,e?.data?.token_data,e?.token_data,e?.result,e?.data?.result].filter(r=>r&&typeof r=="object");for(let r of t){let n=gt(r.access_token||r.accessToken||r.token);if(n)return{access_token:n,refresh_token:gt(r.refresh_token||r.refreshToken),expires_in:Number(r.expires_in||r.expiresIn||0),token_type:gt(r.token_type||r.tokenType||"Bearer")||"Bearer"}}return null}async function IRe(e){try{let t=await e?.db?.getObjectDefault?.(TRe,{});return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return{}}}async function tl(e){let t=await IRe(e);return{...t,enabled:t.enabled===!0||String(process.env.PAN123_OPEN_TRANSFER_ENABLED||"").toLowerCase()==="true",access_token:gt(t.access_token||process.env.PAN123_OPEN_ACCESS_TOKEN||process.env.PAN123_OPEN_TOKEN),refresh_token:gt(t.refresh_token||process.env.PAN123_OPEN_REFRESH_TOKEN),target_parent_id:gt(t.target_parent_id||process.env.PAN123_OPEN_TRANSFER_PARENT_ID||"0")||"0",target_parent_name:gt(t.target_parent_name||"\u6839\u76EE\u5F55")||"\u6839\u76EE\u5F55",oauth_server:gt(t.oauth_server||KE())||KE()}}async function RRe(e,t={}){let n={...await IRe(e),...t,updated_at:new Date().toISOString()};return await e.db.push(TRe,n),n}async function j4(e,t={},r={}){let n=V4(t);if(!n?.access_token)throw new Error("123 Open \u54CD\u5E94\u4E2D\u6CA1\u6709 access_token");let s=await IRe(e),i=n.refresh_token||gt(s.refresh_token),a={...s,access_token:n.access_token,refresh_token:i,token_type:n.token_type,expires_in:n.expires_in,...n.expires_in>0?{expires_at:Date.now()+n.expires_in*1e3}:{},...r,updated_at:new Date().toISOString()};return await e.db.push(TRe,a),a}function rln(e){let t=Number(e?.status||0),r=e?.data||{},n=String(r?.code??""),s=gt(r?.message||r?.msg).toLowerCase();return t===401||n.startsWith("401")||s.includes("\u672A\u6388\u6743")||s.includes("access_token")||s.includes("token")&&(s.includes("\u8FC7\u671F")||s.includes("invalid")||s.includes("\u5931\u6548"))}function nln(e){let t=Number(e?.status||0),r=e?.data||{},n=String(r?.code??r?.data?.code??""),s=gt(r?.message||r?.msg||r?.data?.message||r?.data?.msg).toLowerCase();return t===401||n==="401"||n==="401401"||s.includes("unauthorized")||s.includes("\u672A\u767B\u5F55")||s.includes("token")&&(s.includes("\u8FC7\u671F")||s.includes("\u5931\u6548")||s.includes("invalid"))}function CRe(e=""){return{"User-Agent":Wun,Accept:"application/json, text/plain, */*",platform:"android","App-Version":"43",...e?{Authorization:`Bearer ${e}`}:{}}}async function D4t(e){try{let t=await e?.db?.getObjectDefault?.("/pan123",{});return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{return{}}}async function x4t(e){if(q4)return q4;q4=(async()=>{let t=await D4t(e),r=gt(t.pan_passport||e?.config?.pan123?.username),n=gt(t.pan_password||e?.config?.pan123?.password);if(!r||!n)throw new Error("\u8BF7\u5148\u4FDD\u5B58123\u8D26\u53F7\u548C\u5BC6\u7801\uFF0C\u4EE5\u521B\u5EFA\u4E34\u65F6123\u65E0\u9650\u5206\u4EAB");let s=await ye.post(Qun,{passport:r,password:n,remember:!0},{headers:{...CRe(),"Content-Type":"application/json",Referer:"https://login.123pan.com/centerlogin?redirect_url=https%3A%2F%2Fwww.123684.com&source_page=website"},timeout:bRe,validateStatus:()=>!0}),i=gt(s.data?.data?.token);if(s.status!==200||Number(s.data?.code||0)!==0||!i)throw new Error(s.data?.message||s.data?.msg||"123\u8D26\u53F7\u767B\u5F55\u5931\u8D25");return await e.db.push("/pan123/pan_auth",i),i})();try{return await q4}finally{q4=null}}async function Yj(e,t,r,n={},s=!1){let i=await D4t(e),a=gt(i.pan_auth)||await x4t(e),o=await ye.request({method:t,url:`${N4t}${r}`,params:n.params,data:n.data,headers:{...CRe(a),...n.headers||{}},timeout:bRe,validateStatus:()=>!0});if(!s&&nln(o))return await x4t(e),Yj(e,t,r,n,!0);let c=o.data&&typeof o.data=="object"?o.data:{},u=Number(c.code??c.data?.code??0);if(o.status!==200||u!==0){let l=new Error(c.message||c.msg||c.data?.message||c.data?.msg||`123\u7F51\u9875\u63A5\u53E3\u5931\u8D25 (${o.status})`);throw l.statusCode=o.status>=400?o.status:502,l.code=c.code??c.data?.code,l}return c.data??c}function sln(e){let t=-e.getTimezoneOffset(),r=t>=0?"+":"-",n=s=>String(Math.floor(Math.abs(s))).padStart(2,"0");return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())}T${n(e.getHours())}:${n(e.getMinutes())}:${n(e.getSeconds())}${r}${n(t/60)}:${n(t%60)}`}function xRe(e){let t=gt(e),r=/^\d+$/.test(t)?Number(t):NaN;return Number.isSafeInteger(r)?r:t}async function K4(e,t,r,n={}){let s=await tl(e),i=gt(s.oauth_server||KE()).replace(/\/+$/,""),a=await ye.request({method:t,url:`${i}${r}`,headers:{Accept:"application/json",...n.headers||{}},params:n.params,data:n.data,timeout:Jun,validateStatus:()=>!0});if(a.status>=400){let o=new Error(a.data?.message||a.data?.detail||`OAuth\u670D\u52A1\u8BF7\u6C42\u5931\u8D25 (${a.status})`);throw o.statusCode=a.status,o.code=a.data?.code,o}return a.data||{}}function yRe(){return{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/140 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:"https://yun.123pan.com",Referer:"https://yun.123pan.com/"}}async function iln(e,t,r=40){for(let n=0;nsetTimeout(a,500))}throw new Error("123 Open\u6388\u6743\u8D85\u65F6\uFF0C\u8BF7\u91CD\u8BD5")}async function P4t(e,t={}){let r=gt(t.passport||t.username),n=gt(t.password);if(!r||!n)throw new Error("\u8BF7\u5148\u4FDD\u5B58123\u8D26\u53F7\u548C\u5BC6\u7801");let s=await K4(e,"POST","/api/oauth/quick-auth",{params:{driver_type:SRe,server_use:!0}}),i=s?.data&&typeof s.data=="object"?s.data:s,a=gt(i?.session_id||i?.sessionId),o=gt(i?.oauth_url||i?.url);if(!a||!o)throw new Error("OAuth\u4EE3\u7406\u672A\u8FD4\u56DE\u6388\u6743\u4F1A\u8BDD");let c=new URL(o),u=gt(c.searchParams.get("client_id")),l=gt(c.searchParams.get("redirect_uri")),d=gt(c.searchParams.get("scope")),f=gt(c.searchParams.get("state")||a);if(!u||!l||!d)throw new Error("OAuth\u4EE3\u7406\u8FD4\u56DE\u7684\u6388\u6743\u53C2\u6570\u4E0D\u5B8C\u6574");let h=await ye.post(`${zj}/api/v1/oauth2/app/verify`,{appId:u,redirectUri:l,scope:d},{headers:yRe(),timeout:H4,validateStatus:()=>!0});if(h.status!==200||Number(h.data?.code||0)!==0)throw new Error(h.data?.message||"123 Open\u5E94\u7528\u9A8C\u8BC1\u5931\u8D25");let p=/^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(r)?2:1,m=await ye.post("https://api.123278.com/api/restful/goapi/v1/oauth2/user/login",{passport:r,password:n,loginType:p,appId:u},{headers:yRe(),timeout:H4,validateStatus:()=>!0}),g=gt(m.data?.data?.accessToken);if(m.status!==200||Number(m.data?.code||0)!==0||!g)throw new Error(m.data?.message||"123\u8D26\u53F7\u5BC6\u7801\u6388\u6743\u767B\u5F55\u5931\u8D25");let _=await ye.get(`${zj}/api/v1/oauth2/user/authorize`,{params:{redirect_uri:l,response_type:"code",client_id:u,scope:d,state:f,accessToken:g},headers:{...yRe(),"Content-Type":void 0},timeout:H4,maxRedirects:10,validateStatus:A=>A>=200&&A<400});if(_.status>=400)throw new Error(`123 Open\u6388\u6743\u786E\u8BA4\u5931\u8D25 (${_.status})`);let{token:y}=await iln(e,a);await j4(e,y,{oauth_session_id:a});try{await NRe(e,a)}catch{}return await tl(e)}async function L4t(e,t={}){let r=await tl(e),n=gt(t.oauthServer||r.oauth_server||KE()).replace(/\/+$/,"");return await K4(e,"POST","/api/oauth/start",{headers:{"Content-Type":"application/json"},data:{driver_type:SRe,callback_url:gt(t.callbackUrl)||`${n}/callback-popup`}})}function wRe(e,t){return K4(e,"GET",`/api/oauth/status/${encodeURIComponent(gt(t))}`)}function NRe(e,t){return K4(e,"POST",`/api/oauth/confirm-received/${encodeURIComponent(gt(t))}`)}function aln(e,t){return K4(e,"POST","/api/oauth/refresh",{headers:{"Content-Type":"application/json"},data:{driver_type:SRe,refresh_token:gt(t)}})}async function ORe(e){if($4)return $4;$4=(async()=>{let t=await tl(e);if(!t.refresh_token)throw new Error("\u672A\u4FDD\u5B58123 Open refresh_token");let r=await aln(e,t.refresh_token),n=V4(r);if(!n?.access_token)throw new Error("OAuth\u5237\u65B0\u6210\u529F\u4F46\u6CA1\u6709\u8FD4\u56DE access_token");return n.refresh_token||(n.refresh_token=t.refresh_token),await j4(e,n)})();try{return await $4}finally{$4=null}}async function G4(e,t,r,n={},s=!1){let i=await tl(e);if(!i.access_token)throw new Error("\u672A\u914D\u7F6E123 Open access_token");let a=await ye.request({method:t,url:`${zj}${r}`,params:n.params,data:n.data,headers:{Authorization:`Bearer ${i.access_token}`,Accept:"application/json",Platform:"open_platform","User-Agent":"CatPawOpen/123Open",...n.headers||{}},timeout:H4,validateStatus:()=>!0});if(!s&&rln(a))return await ORe(e),G4(e,t,r,n,!0);let o=a.data&&typeof a.data=="object"?a.data:{},c=Number(o.code||0);if(a.status!==200||c!==0){let u=new Error(o.message||o.msg||`123 Open\u63A5\u53E3\u5931\u8D25 (${a.status})`);throw u.statusCode=a.status>=400?a.status:502,u.code=o.code,u}return o.data??o}async function M4t(e){return{configured:!0,data:await G4(e,"GET","/api/v1/user/info")}}async function k4t(e){let t=gt(e);if(!t)throw new Error("access_token is required");let r=await ye.get(`${zj}/api/v1/user/info`,{headers:{Authorization:`Bearer ${t}`,Accept:"application/json",Platform:"open_platform","User-Agent":"CatPawOpen/123Open"},timeout:H4,validateStatus:()=>!0}),n=r.data&&typeof r.data=="object"?r.data:{};if(r.status!==200||Number(n.code||0)!==0)throw new Error(n.message||n.msg||`123 Open Token\u9A8C\u8BC1\u5931\u8D25 (${r.status})`);return n.data??n}async function B4t(e,t="0"){let r=[],n="";for(let s=0;s<100;s+=1){let i={parentFileId:gt(t||"0"),limit:100};n&&n!=="-1"&&(i.lastFileId=n);let a=await G4(e,"GET","/api/v2/file/list",{params:i}),o=[a?.fileList,a?.file_list,a?.list].find(Array.isArray)||[];for(let u of o)(Number(u?.type??u?.Type??u?.fileType)===1||String(u?.type||"").toLowerCase()==="folder")&&r.push({id:gt(u.fileId||u.FileId||u.file_id||u.id),name:gt(u.filename||u.fileName||u.FileName||u.name||"\u672A\u547D\u540D\u76EE\u5F55")});let c=gt(a?.lastFileId??a?.last_file_id??"-1");if(!c||c==="-1"||c===n||o.length===0)break;n=c}return r.filter(s=>s.id)}async function U4t(e,t,r="0"){let n=await G4(e,"POST","/upload/v2/file/sha1_reuse",{headers:{"Content-Type":"application/json"},data:{parentFileID:xRe(r),filename:gt(t.name),sha1:gt(t.sha1).toLowerCase(),size:Number(t.size),duplicate:1}});return{reuse:n?.reuse===!0||n?.Reuse===!0||Number(n?.reuse||n?.Reuse)===1,fileId:gt(n?.fileID||n?.fileId||n?.FileID)}}async function F4t(e,t={}){let r=gt(t.fileId||t.file_id||t.id);if(!r)throw new Error("\u521B\u5EFA123\u65E0\u9650\u4E34\u65F6\u5206\u4EAB\u7F3A\u5C11\u6587\u4EF6ID");let n=`CatPawOpen-${Date.now()}-${vRe.default.randomBytes(3).toString("hex")}`,s=await Yj(e,"POST","/share/create",{headers:{"Content-Type":"application/json;charset=UTF-8"},data:{driveId:0,expiration:sln(new Date(Date.now()+24*60*60*1e3)),fileIdList:r,shareName:n,sharePwd:"",fileNum:1,renameVisible:!0,shareModality:1,trafficSwitch:1,fillPwdSwitch:0}}),i=s?.data&&typeof s.data=="object"?s.data:s,a=gt(i?.ShareId||i?.shareId),o=i?.shareLinkList?.list||i?.ShareLinkList?.list||[],c=Array.isArray(o)?gt(o[0]):gt(o||i?.shareLink),u=c.match(/\/(?:s|123pan)\/([^/?#]+)/i),l=gt(u?.[1]);if(!a||!l)throw new Error("123\u4E34\u65F6\u5206\u4EAB\u672A\u8FD4\u56DE\u53EF\u7528\u7684\u5206\u4EAB\u6807\u8BC6");return{shareId:a,shareKey:l,sharePwd:"",shareLink:c}}function w4t(e=""){let t=gt(e);if(!t)return"";try{let r=new URL(t).searchParams.get("params");if(!r)return t;let n=Buffer.from(r,"base64").toString("utf8").trim();return/^https?:\/\//i.test(n)?n:t}catch{return t}}async function oln(e,t,r){let n=[];for(let s=1;s<=eln;s+=1){let i=await ye.get(`${N4t}/share/get`,{params:{limit:"100",next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:e,SharePwd:t,ParentFileId:gt(r||"0"),Page:String(s)},headers:CRe(),timeout:bRe,validateStatus:()=>!0}),a=i.data&&typeof i.data=="object"?i.data:{};if(i.status!==200||Number(a.code||0)!==0)throw new Error(a.message||a.msg||`123\u65E0\u9650\u5206\u4EAB\u5217\u8868\u8BF7\u6C42\u5931\u8D25 (${i.status})`);let o=a.data&&typeof a.data=="object"?a.data:{},c=Array.isArray(o.InfoList)?o.InfoList:[];n.push(...c);let u=Number(o.Total||o.total||0);if(c.length<100||u>0&&n.length>=u)break}return n}async function cln(e,t,r={}){let n=gt(r.fileId||r.file_id||r.id),s=Number(r.size||r.file_size||0),i=gt(r.name||r.file_name),a=["0"],o=new Set,c=[];for(;a.length&&o.sizen&>(f?.FileId||f?.fileId||f?.file_id)===n);if(u)return u;let l=c.find(f=>s>0&&Number(f?.Size||f?.size||0)===s&&(!i||gt(f?.FileName||f?.filename||f?.fileName)===i));if(l)return l;let d=s>0?c.filter(f=>Number(f?.Size||f?.size||0)===s):[];return d.length===1?d[0]:c.length===1?c[0]:null}async function $4t(e,t={},r={}){let n=gt(t.shareKey||t.share_key);if(!n)throw new Error("123\u65E0\u9650\u53D6\u94FE\u7F3A\u5C11shareKey");let s=gt(t.sharePwd||t.share_pwd),i=await cln(n,s,r);if(!i)throw new Error("123\u65E0\u9650\u4E34\u65F6\u5206\u4EAB\u4E2D\u672A\u627E\u5230\u771F\u5B9E\u6587\u4EF6");let a=w4t(i?.DownloadUrl||i?.DownloadURL||i?.downloadUrl||i?.download_url);if(a)return a;let o=gt(i?.FileId||i?.fileId||i?.file_id);if(!o)throw new Error("123\u65E0\u9650\u4E34\u65F6\u5206\u4EAB\u6587\u4EF6\u7F3A\u5C11FileId");let c=await Yj(e,"POST","/share/download/info",{headers:{"Content-Type":"application/json;charset=UTF-8"},data:{ShareKey:n,FileID:xRe(o),S3KeyFlag:i?.S3KeyFlag??i?.s3KeyFlag??i?.s3_key_flag,Size:Number(i?.Size||i?.size||r.size||0),Etag:gt(i?.Etag||i?.etag)}}),u=w4t(c?.DownloadURL||c?.DownloadUrl||c?.downloadUrl||c?.download_url);if(!u)throw new Error("123\u65E0\u9650\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DEDownloadUrl");return u}async function q4t(e,t){let r=gt(t);return r?(await Yj(e,"POST","/share/delete",{headers:{"Content-Type":"application/json;charset=UTF-8"},data:{driveId:0,shareInfoList:[{shareId:xRe(r)}],isPayShare:0}}),!0):!1}async function H4t(e,t=[]){let r=[...new Set((Array.isArray(t)?t:[t]).map(n=>gt(n)).filter(Boolean))];return r.length?(await G4(e,"POST","/api/v1/file/trash",{headers:{"Content-Type":"application/json"},data:{fileIDs:r.map(n=>{let s=/^\d+$/.test(n)?Number(n):NaN;return Number.isSafeInteger(s)?s:n})}}),r.length):0}function jT(e={}){return{enabled:e.enabled===!0,configured:!!e.access_token,access_token_masked:tln(e.access_token),has_refresh_token:!!e.refresh_token,expires_at:Number(e.expires_at||0),target_parent_id:gt(e.target_parent_id||"0")||"0",target_parent_name:gt(e.target_parent_name||"\u6839\u76EE\u5F55")||"\u6839\u76EE\u5F55",oauth_server:gt(e.oauth_server||KE()),updated_at:gt(e.updated_at)}}var vRe,zj,N4t,Qun,Wun,Xun,SRe,TRe,H4,Jun,bRe,Zun,eln,$4,q4,DRe=ie(()=>{vr();vRe=Ne(require("node:crypto"),1),zj="https://open-api.123pan.com",N4t="https://www.123684.com/b/api",Qun="https://login.123pan.com/api/user/sign_in",Wun="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Xun="https://oauth.litepan.top",SRe="123\u4E91\u76D8Open",TRe="/pan123_open",H4=Math.max(5e3,Number(process.env.PAN123_OPEN_TIMEOUT_MS||2e4)),Jun=Math.max(5e3,Number(process.env.PAN123_OPEN_OAUTH_TIMEOUT_MS||15e3)),bRe=Math.max(5e3,Number(process.env.PAN123_WEB_TIMEOUT_MS||15e3)),Zun=64,eln=20,$4=null,q4=null});function Hl(e){return String(e??"").trim()}function gln(e){let t=0,r=0,n=[];for(let s of e.toUpperCase()){let i=mln.indexOf(s);if(i<0)return null;t=t<<5|i,r+=5,r>=8&&(r-=8,n.push(t>>r&255))}return n.length===20?Buffer.from(n):null}function sf(e=""){let t=Hl(e);if(hln.test(t))return t.toLowerCase();if(!pln.test(t))return"";let r=gln(t);return r?r.toString("hex"):""}function Wj(e,t){let r=Array.from(String(e||""));return r.length<=t?r.join(""):r.slice(0,t).join("")}function _ln(e="",t="CatPawOpen-video"){let n=Hl(e).normalize("NFC").replace(dln," ").replace(lln,u=>fln[u]||" ").replace(/\s+/g," ").replace(/[. ]+$/g,"").trim();if((!n||n==="."||n==="..")&&(n=Hl(t)||"CatPawOpen-video"),Array.from(n).length<=Qj)return n;let s=n.lastIndexOf(".");if(!(s>0&&suln)return{success:!1,mode:"file_too_large",downloaded:!1,uploaded:!1,file:n,message:"\u6587\u4EF6\u8D85\u8FC7123 Open\u5355\u6587\u4EF6100 GiB\u9650\u5236\uFF0C\u672A\u8C03\u7528123\u63A5\u53E3\uFF0C\u4E5F\u672A\u6267\u884C\u4E0B\u8F7D\u6216\u4E0A\u4F20"};let s=vln(r,n);if(z4.has(s))return await z4.get(s);let i=(async()=>{let a=await Sln(e,s);if((a?.file_id||a?.share_id)&&!(await PRe(e,s,a)).cleaned)return{success:!1,mode:"cleanup_pending",downloaded:!1,uploaded:!1,file:n,message:"\u4E0A\u6B21\u79D2\u4F20123\u4E34\u65F6\u6587\u4EF6\u6216\u5206\u4EAB\u5C1A\u672A\u6E05\u7406\u5B8C\u6210\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"};let o;try{o=await U4t(e,n,r.target_parent_id)}catch(d){let f=Eln(d);return{success:!1,mode:f.mode,downloaded:!1,uploaded:!1,file:n,message:f.message}}if(!o.reuse||!o.fileId)return{success:!1,mode:"miss",downloaded:!1,uploaded:!1,file:n,message:"123\u672A\u547D\u4E2DSHA1\u79D2\u4F20\uFF0C\u672A\u6267\u884C\u4E0B\u8F7D\u6216\u4E0A\u4F20"};let c=null,u="";try{c=await F4t(e,{fileId:o.fileId,name:n.name,size:n.size}),u=await $4t(e,c,{fileId:o.fileId,name:n.name,size:n.size})}catch(d){let f=await PRe(e,s,{fileId:o.fileId,shareId:c?.shareId});await V4t(e,s,r,n,{fileId:o.fileId,shareId:c?.shareId},f);let h=yln(d);return{success:!1,mode:h.mode,downloaded:!1,uploaded:!1,cleaned:f.cleaned,file:n,message:h.message}}let l=await PRe(e,s,{fileId:o.fileId,shareId:c.shareId});return await V4t(e,s,r,n,{fileId:o.fileId,shareId:c.shareId},l),{success:!0,mode:"rapid",downloaded:!1,uploaded:!1,file:n,target:{parentFileId:r.target_parent_id,fileId:o.fileId},downloadUrl:u,cleaned:l.cleaned}})();z4.set(s,i);try{return await i}finally{z4.get(s)===i&&z4.delete(s)}}var j4t,z4,uln,Qj,lln,dln,fln,hln,pln,mln,Xj=ie(()=>{j4t=Ne(require("node:crypto"),1);DRe();z4=new Map,uln=100*1024*1024*1024,Qj=255,lln=/["\\/:*?|><]/g,dln=/[\u0000-\u001f\u007f]/g,fln={'"':"\uFF02","\\":"\uFF3C","/":"\uFF0F",":":"\uFF1A","*":"\uFF0A","?":"\uFF1F","|":"\uFF5C",">":"\uFF1E","<":"\uFF1C"};hln=/^[a-f0-9]{40}$/i,pln=/^[a-z2-7]{32}$/i,mln="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"});function K4t(e){return Buffer.from(e,"base64").toString("utf8")}function z4t(e){let t=Number(e?.code),r=String(e?.message||e?.msg||"").toLowerCase();return t===401||t===401401||r.includes("token")||r.includes("unauthorized")||r.includes("\u767B\u5F55")||r.includes("auth")}function KT(e=""){let t=String(e||"").trim();if(!t)return"";try{t=decodeURIComponent(t)}catch{}try{let r=new URL(t);r.pathname=r.pathname.replace(/_24_24(?=\/|$)/g,"");for(let n of["w","h","trade_key","type"])r.searchParams.delete(n);return r.toString()}catch{return""}}function zg(e){let t=Number(e);return Number.isSafeInteger(t)&&t>0?t:0}function Nln(e=""){let t=String(e||"").match(/^bytes\s+(?:\d+-\d+|\*)\/(\d+|\*)$/i);return!t||t[1]==="*"?0:zg(t[1])}function Oln(e=""){let t=String(e||"").toLowerCase().replace(/\.$/,"");return/(?:^|\.)123[a-z0-9-]*\.(?:com|cn)$/.test(t)}function Y4t(e,t){if(Ix.set(e,{...t,timestamp:Date.now()}),Ix.size<=xln)return;let r=Ix.keys().next().value;r!==void 0&&Ix.delete(r)}async function Dln(e,t){let r=zg(t);if(!e||!r)return{mismatch:!1,expectedSize:r,actualSize:0};let n=`${r}:${e}`,s=Ix.get(n);if(s&&Date.now()-s.timestampl>=200&&l<500});let a=Nln(i.headers?.["content-range"]),o=i.status===200?zg(i.headers?.["content-length"]):0,c=a||o,u={mismatch:c>0&&c=r)return{ok:!1,reason:"range start out of bounds"};if(o!==null&&(!Number.isSafeInteger(o)||o=W4t&&YE.delete(i);for(;YE.size>wln;){let i=YE.keys().next().value;if(i===void 0)break;YE.delete(i)}return n}function kln(e=""){let t=String(e||"").trim().toLowerCase();if(!/^[a-f0-9]{32}$/.test(t))return null;let r=YE.get(t);return r?Date.now()-r.timestamp>=W4t?(YE.delete(t),null):(r.timestamp=Date.now(),r):null}function Bln(e,t,r){let n=Mln(t,r);return`${Vg(e,"123")}/src/direct/_/${n}/.mp4`}function rK(e="",t=0){let r=KT(e);return r?Dt(["direct",r,zg(t)],{structured:!0}):""}function GT(e=""){let t=KT(e);return t?{parse:0,url:["\u539F\u753B",t]}:null}async function nK(e,t="",r=0){let n=GT(t);if(!n)return null;let s=zg(r);if(!e||!s)return n;let i=n.url[1],a=await Dln(i,s);return a.mismatch?(console.warn("[123\u65E0\u9650] CDN\u9996\u6BB5\u957F\u5EA6\u5F02\u5E38\uFF0C\u542F\u7528Range\u4FEE\u590D\u4EE3\u7406 expected=%s actual=%s",a.expectedSize,a.actualSize),{parse:0,url:["\u539F\u753B",Bln(e,i,s)]}):n}async function Uln(e,t,r="",n=0){let s=KT(r),i=zg(n);if(!s||!i)return t.code(400),{error:"123\u65E0\u9650\u4EE3\u7406\u53C2\u6570\u65E0\u6548"};let a=await pT(s);if(!a.ok||!Oln(a.parsed?.hostname||a.host))return t.code(403),{error:"123\u65E0\u9650\u4EE3\u7406\u5730\u5740\u4E0D\u53D7\u4FE1\u4EFB"};if(t.header("Accept-Ranges","bytes").header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges, Content-Type"),String(e.method||"").toUpperCase()==="HEAD")return t.hijack(),t.raw.statusCode=200,t.raw.setHeader("Content-Type","video/mp4"),t.raw.setHeader("Content-Length",String(i)),t.raw.setHeader("Accept-Ranges","bytes"),t.raw.setHeader("Access-Control-Allow-Origin","*"),t.raw.setHeader("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges, Content-Type"),t.raw.end(),t;let o=Pln(e.headers?.range,i);if(!o.ok)return t.header("Content-Range",`bytes */${i}`),t.code(416).send(o.reason);let c;try{c=await ye.get(s,{headers:{Range:o.range,Accept:e.headers?.accept||"*/*","User-Agent":e.headers?.["user-agent"]||eK},responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:p=>p>=200&&p<500});let u=c.headers?.["content-range"],l=Lln(u,i),d=c.headers?.["content-length"];l&&t.header("Content-Range",l),d&&t.header("Content-Length",d);let f=String(c.headers?.["content-type"]||"").trim();t.header("Content-Type",!f||f==="application/octet-stream"?"video/mp4":f),c.headers?.["cache-control"]&&t.header("Cache-Control",c.headers["cache-control"]),c.headers?.["last-modified"]&&t.header("Last-Modified",c.headers["last-modified"]);let h=()=>{try{c?.data?.destroy?.()}catch{}};return e.raw?.once?.("close",h),c.data?.once?.("close",()=>e.raw?.off?.("close",h)),t.code(c.status).send(c.data)}catch(u){try{c?.data?.destroy?.()}catch{}return console.warn("[123\u65E0\u9650] Range\u4FEE\u590D\u4EE3\u7406\u5931\u8D25:",u?.message||u),t.code(502).send("123\u65E0\u9650\u4EE3\u7406\u8BF7\u6C42\u5931\u8D25")}}async function X4t(e,t,r=""){let n=kln(r);return n?Uln(e,t,n.downloadUrl,n.expectedSize):t.code(404).send("123\u65E0\u9650\u4EE3\u7406\u5730\u5740\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u64AD\u653E")}function Fln(e){let t=String(e||"").trim();if(!t)return"";if(t.includes("\u539F\u753B")||t.includes("\u539F\u6587\u4EF6"))return"\u539F\u753B";if(t.includes("\u8D85\u6E05"))return"\u8D85\u6E05";if(t.includes("\u84DD\u5149"))return"\u84DD\u5149";if(t.includes("\u9AD8\u6E05"))return"\u9AD8\u6E05";if(t.includes("\u6807\u6E05"))return"\u6807\u6E05";if(t.includes("\u666E\u753B"))return"\u666E\u753B";if(t.includes("\u6781\u901F")||t.includes("\u6D41\u7545"))return"\u6781\u901F";let r=t.toLowerCase().replace(/\s+/g,"").replace(/[_-]+/g,"");return Q4t[r]?Q4t[r]:/(?:^|[^\d])2160p?(?:$|[^\d])|4k|uhd/.test(r)?"\u8D85\u6E05":/(?:^|[^\d])1440p?(?:$|[^\d])|2k|qhd/.test(r)?"\u84DD\u5149":/(?:^|[^\d])1080p?(?:$|[^\d])|super|fullhd|fhd/.test(r)?"\u9AD8\u6E05":/(?:^|[^\d])720p?(?:$|[^\d])|high|hd/.test(r)?"\u6807\u6E05":/(?:^|[^\d])480p?(?:$|[^\d])|low|sd/.test(r)?"\u666E\u753B":/(?:^|[^\d])360p?(?:$|[^\d])|normal|smooth|ld/.test(r)?"\u6781\u901F":t}async function J4t(e,t){t&&await b0(t);let r=rl.getShareData(e);if(!r)return[];let n=await rl.getFilesByShareUrl(r);if(!n?.length)return[];let s=await ht("123"),i=n.filter(u=>u?.vod_direct_id).map(u=>({...u,vod_id:u.vod_direct_id})),a=Hg(Rx,i),o=tf(ar[123].direct,a?[a]:[]),c=tf(ar[123].original,ba(s,n));return[...o,...c]}var Zj,Rx,Iln,G4t,eK,Rln,Cln,xln,Ix,W4t,wln,YE,Q4t,tK,LRe,Jj,b0,Gg,rl,Y4=ie(()=>{vr();Zj=Ne(Yi(),1);la();Jc();jd();Zc();yi();ql();jg();GH();Rx="123\u65E0\u9650",Iln=100,G4t="https://www.123684.com/b/api",eK="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Rln=Math.max(3e3,Number(process.env.PAN123_DIRECT_PROBE_TIMEOUT_MS||1e4)),Cln=10*60*1e3,xln=100,Ix=new Map,W4t=2*60*60*1e3,wln=256,YE=new Map;Q4t={"4k":"\u8D85\u6E05","2160p":"\u8D85\u6E05",2160:"\u8D85\u6E05",uhd:"\u8D85\u6E05","2k":"\u84DD\u5149","1440p":"\u84DD\u5149",1440:"\u84DD\u5149",qhd:"\u84DD\u5149",super:"\u9AD8\u6E05","1080p":"\u9AD8\u6E05",1080:"\u9AD8\u6E05",fhd:"\u9AD8\u6E05",fullhd:"\u9AD8\u6E05",high:"\u6807\u6E05","720p":"\u6807\u6E05",720:"\u6807\u6E05",hd:"\u6807\u6E05",low:"\u666E\u753B","480p":"\u666E\u753B",480:"\u666E\u753B",sd:"\u666E\u753B",normal:"\u6781\u901F","360p":"\u6781\u901F",360:"\u6781\u901F",ld:"\u6781\u901F",smooth:"\u6781\u901F"};LRe={},Jj={async set(e,t){LRe[e]=t,tK&&await tK.push(`/pan123/${e}`,t)},get(e){return LRe[e]}},b0=async e=>{tK=e.server.db,LRe=await tK.getObjectDefault("/pan123",{})};Gg=class{constructor(){this.regex=/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)([^/?#\s]+)/i,this.api="https://www.123684.com/b/api/share/",this.loginUrl="https://login.123pan.com/api/user/sign_in",this.cate="",this.SharePwd=""}async init(){if(!this.auth){await this.login();return}try{let t=JSON.parse(Zj.default.enc.Base64.parse(this.auth.split(".")[1]).toString(Zj.default.enc.Utf8));(!t.exp||t.exp<=Math.floor(Date.now()/1e3))&&await this.login()}catch{await this.login()}}get passport(){return Jj.get("pan_passport")}get password(){return Jj.get("pan_password")}get auth(){return Jj.get("pan_auth")}async login(){let t=JSON.stringify({passport:this.passport,password:this.password,remember:!0}),r={method:"POST",url:this.loginUrl,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36","Content-Type":"application/json","App-Version":"43",Referer:"https://login.123pan.com/centerlogin?redirect_url=https%3A%2F%2Fwww.123684.com&source_page=website"},data:t};try{let s=(await ye.request(r)).data;if(s?.data?.token)await Jj.set("pan_auth",s.data.token);else throw new Error("\u767B\u5F55\u5931\u8D25")}catch(n){throw console.error("\u767B\u5F55\u5931\u8D25:",n),tn.toast("123\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),n}}getShareData(t){t=decodeURIComponent(t);let r=this.regex.exec(t);if(!r||r.length<2)return console.error("\u65E0\u6CD5\u5339\u914D123\u7F51\u76D8URL:",t),null;let n=r[1],s="",a=/[?&](?:pwd|password|提取码|passcode|SharePwd)(?:=|:|:)([^&#\s]+)/i.exec(t);return a&&a[1]&&(s=a[1]),{shareKey:n,sharePwd:s}}async getFilesByShareUrl(t){try{let r=[],n=typeof t=="string"?t:t.shareKey,s=typeof t=="object"&&t.sharePwd||"",i={scanCalls:0,folderVisits:0},a=Date.now(),o=async(u,l)=>{let d=[],f=[],h=[],p=1,m=100;for(;;){let g=await ye.get(this.api+"get",{params:{limit:String(m),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:n,SharePwd:s,ParentFileId:u,Page:p.toString()},timeout:1e4});if(l&&(l.scanCalls+=1),g.status!==200||g.data.code===5103)break;let _=g.data.data||{},y=_.InfoList||[];for(let E of y)if(E.Category===0)d.push({filename:E.FileName,shareKey:n,SharePwd:s,next:_.Next||"0",fileId:E.FileId});else if(E.Category===2){let v=KT(E.DownloadUrl||E.DownloadURL||"");f.push({ShareKey:n,FileId:E.FileId,S3KeyFlag:E.S3KeyFlag,Size:E.Size,Etag:E.Etag,FileName:E.FileName,DownloadUrl:v})}else E.Category!==0&&St(E.FileName)&&h.push({ShareKey:n,FileId:E.FileId,S3KeyFlag:E.S3KeyFlag,Size:E.Size,Etag:E.Etag,FileName:E.FileName});let A=Number(_?.Total||_?.total||0);if(y.length0&&p*m>=A)break;p++}for(let g of f){let _=xr(g.FileName,h,y=>y.FileName);_?.FileId&&(g.subtitle={FileId:_.FileId,S3KeyFlag:_.S3KeyFlag,Size:_.Size,Etag:_.Etag,FileName:_.FileName})}return{folders:d,videos:f}},c=async(u=0,l="")=>{i.folderVisits+=1;try{let d=await o(u,i),f=d?.videos||[];if(f.length>0){let p=Gt(f);r.push(...p)}let h=d?.folders||[];if(h.length===0)return;for(let p of h)await c(p.fileId||p.FileId,l+(l?"/":"")+(p.filename||p.FileName))}catch(d){console.error(`[123\u7F51\u76D8] \u5904\u7406\u6587\u4EF6\u5939\u5931\u8D25 parentFileId=${u}:`,d.message)}};return await c(0,""),console.log("[123 detail] perf",JSON.stringify({shareKey:n,ms:Date.now()-a,videos:r.length,...i})),r.map(u=>({vod_id:Dt([u.ShareKey,u.FileId,u.S3KeyFlag,u.Size,u.Etag,u.subtitle?.FileId||"",u.subtitle?.S3KeyFlag||"",u.subtitle?.Size||"",u.subtitle?.Etag||""],{structured:!0}),vod_direct_id:rK(u.DownloadUrl||"",u.Size),vod_name:u.FileName,vod_size:u.Size}))}catch(r){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u6587\u4EF6\u5931\u8D25:",r),[]}}async getShareInfo(t,r,n,s,i){try{let a=[],o=1,c=100;for(;;){let u=await ye.get(this.api+"get",{params:{limit:String(c),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:t,SharePwd:r,ParentFileId:s,Page:o.toString()},timeout:1e4});if(i&&(i.infoCalls+=1),u.status===200&&u.data.code!==5103){let l=u.data.data,d=l.InfoList||[],f=d.filter(p=>p.Category===0);a.push(...f.map(p=>({filename:p.FileName,shareKey:t,SharePwd:r,next:l.Next||"0",fileId:p.FileId})));let h=Number(l?.Total||l?.total||0);if(d.length0&&o*c>=h)break;o++}else break}return a}catch(a){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",a.message),[]}}async getShareList(t,r,n,s,i){try{let a=[],o=[],c=1,u=100;for(;;){let l=await ye.get(this.api+"get",{params:{limit:String(u),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:t,SharePwd:r,ParentFileId:s,Page:c.toString()},timeout:1e4});i&&(i.listCalls+=1);let d=l.data.data,f=d?.InfoList||[];f.forEach(p=>{if(p.Category===2){let m=KT(p.DownloadUrl||p.DownloadURL||"");a.push({ShareKey:t,FileId:p.FileId,S3KeyFlag:p.S3KeyFlag,Size:p.Size,Etag:p.Etag,FileName:p.FileName,DownloadUrl:m})}else p.Category!==0&&St(p.FileName)&&o.push({ShareKey:t,FileId:p.FileId,S3KeyFlag:p.S3KeyFlag,Size:p.Size,Etag:p.Etag,FileName:p.FileName})});let h=Number(d?.Total||d?.total||0);if(f.length0&&c*u>=h)break;c++}for(let l of a){let d=xr(l.FileName,o,f=>f.FileName);d?.FileId&&(l.subtitle={FileId:d.FileId,S3KeyFlag:d.S3KeyFlag,Size:d.Size,Etag:d.Etag,FileName:d.FileName})}return a}catch(a){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u5217\u8868\u5931\u8D25:",a),[]}}async listShareFilesOneLayer(t,r="0",n={}){let s=typeof t=="string"?t:t?.shareKey,i=typeof t=="object"&&(t.sharePwd||t.SharePwd)||"";if(!s)return[];let a=Math.max(0,Number.parseInt(n.page||n.pg,10)||0),o=a>0,c=Math.max(1,Math.min(Iln,Number(n.batchSize)||100)),u=Math.max(0,Math.min(1e4,Number(n.batchIntervalMs)||0)),l=Math.max(1e4,Math.min(18e4,Number(n.timeoutMs)||6e4)),d=[],f=o?a:1,h=0,p=!1;for(;;){let m=await ye.get(this.api+"get",{params:{limit:String(c),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:s,SharePwd:i,ParentFileId:String(r||"0"),Page:f.toString()},timeout:l});if(m.status!==200||m.data.code===5103)break;let g=m.data.data||{},_=Array.isArray(g.InfoList)?g.InfoList:[];if(d.push(..._.map(y=>({...y,ShareKey:s,SharePwd:i}))),h=Number(g?.Total||g?.total||h||0),p=_.length>=c&&!(h>0&&f*c>=h),o||!p)break;f+=1,u>0&&await new Promise(y=>setTimeout(y,u))}return o?{items:d,paged:!0,page:a,pageSize:c,total:h>0?h:(a-1)*c+d.length+(p?c:0)}:d}async getDownload(t,r,n,s,i){await this.init();let a=JSON.stringify({ShareKey:t,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),o={method:"POST",url:`${this.api}download/info`,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android"},data:a,timeout:15e3};try{let c=await ye.request(o),u=c.data?.data,l=String(u?.DownloadURL||u?.DownloadUrl||"").trim();if(!l)return console.warn("[123 share][down] \u7A7A\u54CD\u5E94, code=%s msg=%s",c.data?.code,c.data?.message),"";let d=new URL(l).searchParams.get("params");return d?K4t(d):l}catch(c){throw console.error("\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25:",c),c}}async getLiveTranscoding(t,r,n,s,i){await this.init();let a={method:"GET",url:"https://www.123684.com/b/api/video/play/info",headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android"},params:{etag:i,size:s,from:"1",shareKey:t},timeout:15e3};try{let c=(await ye.request(a)).data.data?.video_play_info||[],u=[];return c.forEach(l=>{l.url&&u.push({name:Fln(l.resolution),url:l.url})}),u}catch(o){return console.error("\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\u5931\u8D25:",o),[]}}async listOwnFiles(t="0",r=1,n=100){await this.init();let s=Math.max(1,Number.parseInt(r,10)||1),i={method:"GET",url:`${G4t}/file/list/new`,headers:{"User-Agent":eK,Authorization:`Bearer ${this.auth}`,platform:"android","App-Version":"43"},params:{driveId:"0",limit:String(n),next:"0",orderBy:"file_id",orderDirection:"desc",parentFileId:String(t||"0"),trashed:"false",SearchData:"",Page:String(s)},timeout:15e3};try{let a=await ye.request(i);z4t(a.data)&&(await this.login(),i.headers.Authorization=`Bearer ${this.auth}`,a=await ye.request(i)),Number(a.data?.code)!==0&&a.data?.code!==void 0&&console.warn("[123 own] listOwnFiles empty, code=%s msg=%s",a.data?.code,a.data?.message||a.data?.msg||"");let o=a.data?.data||{},c=Array.isArray(o.InfoList)?o.InfoList:[],u=[],l=[];return c.forEach(d=>{Number(d.Type)===1?u.push(d):l.push(d)}),{folderList:u,fileList:l,count:Number(o.Total||c.length||0),next:String(o.Next||"0")}}catch(a){return console.error("[123 own] listOwnFiles \u5931\u8D25:",a?.message||a),{folderList:[],fileList:[],count:0,next:"0"}}}async getOwnDownload(t,r,n,s,i=""){await this.init();let a={driveId:0,FileID:Number(t)||t,S3KeyFlag:r,Size:Number(n)||n,Etag:s};i&&(a.FileName=i);let o={method:"POST",url:`${G4t}/file/download_info`,headers:{"User-Agent":eK,Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android","App-Version":"43"},data:JSON.stringify(a),timeout:15e3};try{let c=await ye.request(o);z4t(c.data)&&(await this.login(),o.headers.Authorization=`Bearer ${this.auth}`,c=await ye.request(o));let u=c.data?.data,l=String(u?.DownloadUrl||u?.DownloadURL||"").trim();if(!l)return console.warn("[123 own][down] empty url, code=%s msg=%s",c.data?.code,c.data?.message),"";try{let d=new URL(l).searchParams.get("params");if(d){let f=K4t(d);if(f.startsWith("http"))return f}}catch{}return l}catch(c){return console.error("[123 own] getOwnDownload \u5931\u8D25:",c?.message||c),""}}},rl={getShareData:e=>new Gg().getShareData(e),getFilesByShareUrl:async e=>await new Gg().getFilesByShareUrl(e),listShareFilesOneLayer:async(e,t,r)=>await new Gg().listShareFilesOneLayer(e,t,r),getDownload:async(e,t,r,n,s)=>await new Gg().getDownload(e,t,r,n,s),getLiveTranscoding:async(e,t,r,n,s)=>await new Gg().getLiveTranscoding(e,t,r,n,s),listOwnFiles:async(e,t,r)=>await new Gg().listOwnFiles(e,t,r),getOwnDownload:async(e,t,r,n,s)=>await new Gg().getOwnDownload(e,t,r,n,s)}});function qln(e){let t=$ln.exec(e);return t?{shareCode:t[1],receiveCode:t[2]}:null}function Z4t(e){if(!e)return!1;let t=e.lastIndexOf(".");if(t===-1)return!1;let r=e.slice(t+1).toLowerCase();return Hln.has(r)}async function Vln(e,t="GET",r=null,n=null){let s=new URL(e);await XSe();let i=!1,a=()=>{if(!i){i=!0;try{JSe()}catch{}}};try{return await new Promise((o,c)=>{let u={hostname:s.hostname,path:`${s.pathname}${s.search}`,method:t,headers:r},d=(s.protocol==="https:"?iBt.request:sBt.request)(u,f=>{let h="";f.on("data",p=>{h+=p}),f.on("end",()=>{a();try{o(JSON.parse(h))}catch{c(h)}})});d.on("error",f=>{a(),c(f)}),d.setTimeout(1e4,()=>{d.destroy(),a(),c(new Error("\u8BF7\u6C42\u8D85\u65F6"))}),n&&d.write(n),d.end()})}catch(o){throw a(),o}}function cBt(e,t){t==null&&(t=Math.ceil(e.toString(16).length/2));let r=new Uint8Array(t),n=e;for(let s=t-1;s>=0;s--)r[s]=Number(n&0xffn),n>>=8n;return r}function uBt(e){let t=0n;for(let r of e)t=t<<8n|BigInt(r);return t}function*MRe(e,t,r=1){for(let n=e+r;n0n;)t&1n&&(n=n*e%r),t>>=1n,e=e*e%r;return n}function dBt(e){(typeof e=="string"||e instanceof String)&&(e=new TextEncoder().encode(e));let t=new Uint8Array(16+e.length);t.set(sK(sK(e,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(t.length/117)*128),n=0;for(let[s,i]of MRe(0,t.length,117)){let a=t.subarray(s,i),o=lBt(Kln(a),oBt,aBt);r.set(cBt(o,128),n),n+=128}return Buffer.from(r).toString("base64")}function fBt(e){let t=new Uint8Array(Buffer.from(e,"base64")),r=[];for(let[i,a]of MRe(0,t.length,128)){let o=lBt(uBt(t.subarray(i,a)),oBt,aBt),c=cBt(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=jln(r.subarray(0,16),12),s=sK(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(sK(s,new Uint8Array([141,165,165,141])))}async function iK(e,t,r,n=""){if(!e||!t||!n)return[];let s=await ye.get("https://proapi.115.com/android/2.0/share/snap",{params:{share_code:e,receive_code:t,cid:r&&String(r)!==String(e)?String(r):0,limit:1e3,offset:0},headers:{...Gln,Cookie:n},timeout:15e3,validateStatus:()=>!0}),i=s?.data;if(s.status>=400||i?.state===!1)throw new Error(i?.error||i?.message||`115 app share snap status=${s.status}`);return(Array.isArray(i?.data?.list)?i.data.list:[]).map(o=>({fid:String(o?.fid||o?.file_id||""),name:String(o?.fn||o?.file_name||o?.name||""),size:Number(o?.fs||o?.file_size||o?.size||0),sha1:sf(o?.sha1||o?.sha||o?.file_sha1),raw:o})).filter(o=>o.fid)}async function zln({shareCode:e,receiveCode:t,dirID:r=""},n=""){let s=[],i=async(a,o="")=>{try{let c=0,u=9999,l=[];for(;;){let A=(await ye.get("https://webapi.115.com/share/snap",{params:{share_code:e,receive_code:t,cid:a,limit:String(u),offset:String(c)},timeout:15e3})).data?.data?.list||[];if(A.length===0||(l.push(...A),A.lengthZ4t(y?.n)&&!sf(y?.sha1||y?.sha||y?.file_sha1)))try{let y=await iK(e,t,a,n),A=new Map(y.map(E=>[String(E.fid),E]));for(let E of l){let v=A.get(String(E?.fid||E?.file_id||""));v&&(!E.n&&v.name&&(E.n=v.name),!E.s&&v.size&&(E.s=v.size),sf(E.sha1||E.sha||E.file_sha1)||(E.sha1=v.sha1))}}catch(y){console.warn("[115 share][app snap] SHA1 metadata supplement failed:",y?.message||y)}let f=[],h=[];for(let y of l)y.fc===1?f.push(y):y.fc===0&&h.push(y);let p=[],m=[];for(let y of f)Z4t(y.n)?p.push({...y,shareCode:e,receiveCode:t,parentCid:String(a||"")}):St(y.n)&&m.push(y);for(let y of p){let A=xr(y.n,m,E=>E.n);A?.fid&&(y.subtitle={fid:A.fid})}let g=Gt(p);s.push(...g);let _=h.map(y=>i(y.cid,o+(o?"/":"")+y.n));await Promise.all(_)}catch(c){console.error("\u83B7\u53D6115\u6587\u4EF6\u5217\u8868\u5931\u8D25:",c.message)}};return await i(r||e,""),s}async function lp(e){rBt||(rBt=!0)}async function hBt(e,t){try{t&&await lp(t);let r=qln(e);if(!r)return[];let n=t?await Za(t.server):"",s=await zln(r,n);if(!s?.length)return[];let i=await ht("115"),a=s.map(c=>({vod_id:Dt([r.shareCode,r.receiveCode,c.fid,c.subtitle?.fid||""],{structured:!0}),vod_name:c.n,vod_size:c.s})),o=tf(ar[115].original,ba(i,a));if(t&&await GE(t.server)){let c=s.map(l=>({vod_id:Dt(["rapid-share",r.shareCode,r.receiveCode,l.fid,l.subtitle?.fid||"","bin",l.n,l.s,sf(l.sha1||l.sha||l.file_sha1),l.pc||l.pick_code||"",l.parentCid||""],{structured:!0}),vod_name:l.n,vod_size:l.s})),u=Hg("\u79D2\u4F20123",c);u&&o.push(...tf(ar[115].rapid123,[u]))}return o}catch(r){return console.error("115\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",r),[]}}async function kRe(e,t){try{await lp(e);let r=e.body.id,n=await Za(e.server),s=Br(r);if(s[0]==="rapid-share"){let[,d,f,h,,,p,m,g,_,y]=s,A=await zE(e.server,{fileId:h,name:p,size:Number(m||0),sha1:g,pickCode:_});if(A.mode==="invalid_metadata"&&y)try{let I=(await iK(d,f,y,n)).find(T=>String(T.fid)===String(h));I&&(A=await zE(e.server,{fileId:h,name:p||I.name,size:Number(m||I.size||0),sha1:g||I.sha1,pickCode:_}))}catch(b){console.warn("[115 share][downlist] rapid metadata lookup failed:",b?.message||b)}if(!A.success||!A.downloadUrl)return Xr(A.message||"115\u2192\u79D2\u4F20123\u5931\u8D25",{mode:A.mode,downloaded:!1,uploaded:!1,...typeof A.cleaned=="boolean"?{cleaned:A.cleaned}:{}});let E=[],v=GT(A.downloadUrl);return v?ei({parse:v.parse,urls:v.url,subtitles:E,extra:{rapidTransfer:{mode:A.mode,downloaded:!1,uploaded:!1,cleaned:A.cleaned===!0}}}):Xr("\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u64AD\u653E\u5730\u5740\u65E0\u6548")}let{shareCode:i,receiveCode:a,fileId:o,subtitleId:c=""}=Br(r,{fieldOrder:["shareCode","receiveCode","fileId","subtitleId"]}),u=await mBt(i,a,o,n);if(!u)return Xr("115 \u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25");let l=[];if(c){let d=encodeURIComponent(Dt([a,c],{structured:!0})),f=px(e,"115","subt",i,d,".bin");l.push(RIe({url:f,name:"\u5916\u6302\u5B57\u5E55",format:"bin"}))}return ei({parse:0,urls:["\u539F\u753B",u],subtitles:l,header:{"User-Agent":BRe,Cookie:n,Referer:"https://115.com/",Origin:"https://115.com"}})}catch(r){return console.error("115\u64AD\u653E\u5931\u8D25:",r),console.error("\u9519\u8BEF\u8BE6\u60C5:",r.stack),Xr("115 \u64AD\u653E\u5931\u8D25")}}async function pBt(e,t){try{await lp(e);let{site:r,flag:n,shareId:s,fileId:i}=e.params;if(r!=="115"||n!=="subt")return;let{receiveCode:a,subtitleFileId:o}=Br(String(i||""),{fieldOrder:["receiveCode","subtitleFileId"]});if(!s||!a||!o)return t.code(400),"Invalid subtitle parameters";let c=await Za(e.server),u=await mBt(s,a,o,c);if(!u)return t.code(404),"Subtitle not found";t.redirect(u)}catch(r){return console.error("115\u5B57\u5E55\u4EE3\u7406\u5931\u8D25:",r),t.code(500),"Subtitle proxy error"}}async function mBt(e,t,r,n){return await aK(e,t,r,n,{legacyString:!0})}async function aK(e,t,r,n,s={}){if(!n)return s.legacyString?null:{url:"",msg:"115 Cookie \u7F3A\u5931"};if(!e||!t||!r)return s.legacyString?null:{url:"",msg:"115 \u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let i=`data=${encodeURIComponent(dBt(`{"share_code":"${e}","receive_code":"${t}","file_id":"${r}"}`))}`,a=await Vln("https://proapi.115.com/app/share/downurl","POST",{"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(i),Cookie:n,"User-Agent":BRe,Referer:"https://115.com/",Origin:"https://115.com"},i);if(a?.error)return a.error.includes?.("\u767B\u5F55")&&tn.toast("115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),s.legacyString?null:{url:"",msg:a.error};if(!a||typeof a!="object")return s.legacyString?null:{url:"",msg:"115 \u5206\u4EAB\u63A5\u53E3\u54CD\u5E94\u5F02\u5E38"};if(!a.data){let f=a?.msg||a?.message||a?.error_msg||a?.errno||a?.errcode||"115 \u5206\u4EAB\u63A5\u53E3\u672A\u8FD4\u56DE data \u5B57\u6BB5";return console.warn("[115 share][down] missing data, raw=%s",JSON.stringify(a).slice(0,300)),s.legacyString?null:{url:"",msg:String(f)}}let o=JSON.parse(fBt(a.data)),c=o&&typeof o=="object"?Object.keys(o).find(f=>/^\d+$/.test(f)):"",u=c?o[c]:o,l=u?.url?.url||o?.url?.url||"";if(!l)return console.error("115\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25:",o),s.legacyString?null:{url:"",msg:o?.error||"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"};let d={url:l,cookie:n,fileId:c||String(u?.file_id||u?.fid||r||""),fileName:String(u?.file_name||u?.name||""),fileSize:Number(u?.file_size||u?.size||0),pickCode:String(u?.pick_code||u?.pickcode||u?.pc||""),sha1:String(u?.sha1||u?.sha||u?.file_sha1||"").toLowerCase()};return s.legacyString?l:d}catch(i){return console.error("[115 share][down] error:",i?.message||i),s.legacyString?null:{url:"",msg:`115 \u5206\u4EAB\u63A5\u53E3\u5F02\u5E38: ${i?.message||i}`}}}async function Cx(e,t="0",r=1){if(!e)return{list:[],count:0};let s=(Math.max(1,Number.parseInt(r,10)||1)-1)*nBt,i=`https://webapi.115.com/files?aid=&cid=${encodeURIComponent(t||"0")}&o=user_ptime&asc=0&offset=${s}&show_dir=1&limit=${nBt}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let o=(await ye.get(i,{headers:{...Yln,Cookie:e},timeout:15e3}))?.data;if(o?.state)return{list:Array.isArray(o.data)?o.data:[],count:Number.parseInt(o.count,10)||0};console.warn("[115 own][list] non-state response, raw=%s",JSON.stringify(o).slice(0,300))}catch(a){console.error("[115 own] list error:",a?.message||a)}return{list:[],count:0}}async function xx(e,t){let r=String(t||"").trim();if(!e)return{url:"",msg:"115 Cookie \u7F3A\u5931"};if(!r)return{url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,s=`data=${encodeURIComponent(dBt(JSON.stringify({pickcode:r})))}`;try{let i=await ye.post(n,s,{headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":BRe,Referer:"https://115.com/",Origin:"https://115.com",Cookie:e},timeout:15e3,validateStatus:()=>!0}),a=i?.data;if(!a||a.error)return{url:"",msg:a?.error||`115 \u63A5\u53E3\u8FD4\u56DE status=${i?.status}`};if(typeof a!="object"||!a.data)return{url:"",msg:a?.msg||a?.message||a?.error_msg||"115 \u63A5\u53E3\u672A\u8FD4\u56DE data \u5B57\u6BB5"};let o;try{o=JSON.parse(fBt(a.data))}catch(h){return console.warn("[115 own][down] decrypt failed:",h?.message),{url:"",msg:"115 \u89E3\u5BC6\u5931\u8D25"}}let c=o&&typeof o=="object"?Object.keys(o)[0]:"",u=c?o[c]:null,l=u?.url?.url||o?.url?.url||"";if(!l)return console.warn("[115 own][down] decoded missing url, raw=%s",JSON.stringify(o).slice(0,300)),{url:"",msg:"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"};let d=Qln(e,i.headers?.["set-cookie"]),f=c&&/^\d+$/.test(c)?c:"";return{url:l,cookie:d,fileId:f,fileName:String(u?.file_name||u?.name||""),fileSize:Number(u?.file_size||u?.size||0),pickCode:String(u?.pick_code||u?.pickcode||u?.pc||r),sha1:String(u?.sha1||u?.sha||u?.file_sha1||"").toLowerCase()}}catch(i){return console.error("[115 own][down] error:",i?.message||i),{url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${i?.message||i}`}}}function Qln(e,t){if(!t)return e;let r=Array.isArray(t)?t:[t],n=new Map;for(let s of String(e||"").split(";").map(i=>i.trim()).filter(Boolean)){let i=s.indexOf("=");i>0&&n.set(s.slice(0,i).trim(),s.slice(i+1))}for(let s of r){let i=String(s||"").split(";")[0].trim(),a=i.indexOf("=");if(a<=0)continue;let o=i.slice(0,a).trim(),c=i.slice(a+1);if(o){if(/expires=thu, 01 jan 1970/i.test(String(s))){n.delete(o);continue}n.set(o,c)}}return Array.from(n.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}async function gBt(e){if(!e)throw new Error("115 Cookie required");let t="https://proapi.115.com/app/uploadinfo";try{let n=(await ye.post(t,"",{headers:{Cookie:e,"User-Agent":"Mozilla/5.0 115disk/27.0.5.7","Content-Type":"application/x-www-form-urlencoded"},timeout:1e4}))?.data;if(!n||n.state===!1)throw new Error(n?.error||"\u83B7\u53D6 userkey \u5931\u8D25");return{userId:n.user_id,userKey:n.userkey}}catch(r){throw console.error("[115][getUserKey] error:",r?.message||r),r}}async function _Bt(e,t){let r=await xx(e,t);if(!r.url)throw new Error(r.msg||"\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25");return{url:r.url,cookie:r.cookie,fileId:r.fileId}}async function URe(e,t){if(!e||!t)return;let r="https://webapi.115.com/rb/delete",n=`fid=${t}`;try{let i=(await ye.post(r,n,{headers:{Cookie:e,"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 115disk/27.0.5.7"},timeout:1e4}))?.data;(!i||!i.state)&&console.warn("[115][deleteFile] failed:",i?.error||"unknown")}catch(s){console.warn("[115][deleteFile] error:",s?.message||s)}}var sBt,iBt,$ln,Hln,eBt,aBt,oBt,Gln,rBt,Yln,BRe,nBt,QE=ie(()=>{Ds();vr();zT();sBt=require("http"),iBt=require("https");Cr();la();Jc();jd();yi();Zc();ql();S0();Xj();Y4();jg();$ln=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/;Hln=new Set(["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso","rmvb","rm","m4v","f4v","m4a"]);eBt=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),aBt=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,oBt=0x10001n;Gln={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};rBt=!1;Yln={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"},BRe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",nBt=115});function cK(e){return{"User-Agent":Wln,Cookie:e,Referer:"https://115.com/",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"}}function TBt(e){if(!e)return"";let t=String(e).match(/UID=([^;\s]+)/i);if(!t)return"";let r=t[1],n=r.match(/^(\d+)/);return n?n[1]:r}function bBt(e){if(!e)return"";let t=String(e).match(/xt=urn:btih:([A-Za-z0-9]+)/i);return t?t[1].toLowerCase():""}function tdn(e){if(!e)return"";let t=String(e).match(/[&?]dn=([^&]+)/i);if(!t)return"";try{return decodeURIComponent(t[1])}catch{return t[1]}}function rdn(e){return String(e||"").trim()}async function IBt(e){let t=await ye.get(Xln,{headers:cK(e),timeout:15e3,validateStatus:()=>!0}),r=t?.data;if(!r||r.state===!1)throw new Error(`115 \u79BB\u7EBF space \u5931\u8D25: ${r?.error||r?.error_msg||t?.status}`);let n=r.sign||r.data?.sign,s=r.time||r.data?.time;if(!n||!s)throw new Error("115 \u79BB\u7EBF space \u54CD\u5E94\u7F3A\u5C11 sign/time");return{sign:n,time:String(s)}}async function ndn(e,t){let r=`${edn}?aid=&cid=${encodeURIComponent(t||"0")}&o=user_ptime&asc=0&offset=0&show_dir=1&limit=115&snap=0&natsort=1&format=json`,s=(await ye.get(r,{headers:cK(e),timeout:15e3,validateStatus:()=>!0}))?.data;return s?.state?Array.isArray(s.data)?s.data:[]:[]}async function RBt(e,t="0"){if(!e)return[];let r=await ndn(e,t),n=[];for(let s of r){if(Number(s?.iv)===1||Number(s?.fc)!==0)continue;let i=String(s.cid||"");i&&n.push({cid:i,name:String(s.n||s.name||i),has_children:Number(s?.ns)>0||Number(s?.fc)===0})}return n}async function CBt(e,t,r={}){let{savePath:n="0",pollAttempts:s=6,pollIntervalMs:i=1500}=r;if(!e)throw new Error("115 cookie \u7F3A\u5931");let a=TBt(e);if(!a)throw new Error("cookie \u4E2D\u6CA1\u6709 UID \u5B57\u6BB5");console.log(`[115-offline] \u5F00\u59CB\u6DFB\u52A0\u79BB\u7EBF\u4EFB\u52A1\uFF0CsavePath=${n}, pollAttempts=${s}`);let{sign:o,time:c}=await IBt(e),u=new URLSearchParams;u.set("url",rdn(t)),u.set("uid",a),u.set("sign",o),u.set("time",c),u.set("wp_path_id",String(n||"0"));let l=async()=>(await ye.post(Jln,u.toString(),{headers:{...cK(e),"Content-Type":"application/x-www-form-urlencoded"},timeout:3e4,validateStatus:()=>!0}))?.data,d=await l();if(!d)throw new Error("115 \u79BB\u7EBF\u6DFB\u52A0\u65E0\u54CD\u5E94");let f=Number(d.errcode)===10008||/任务已存在/i.test(String(d.error_msg||d.error||""));if(d.state===!1&&!f)throw new Error(`115 \u79BB\u7EBF\u6DFB\u52A0\u5931\u8D25: ${d.error_msg||d.error||d.errcode}`);if(console.log(`[115-offline] \u79BB\u7EBF\u4EFB\u52A1\u6DFB\u52A0\u6210\u529F\uFF0Cstate=${d.state}, isDuplicate=${f}, files\u6570\u91CF=${d.files?.length||0}`),d.files&&d.files.length>0){let p=yBt(d.files);console.log(`[115-offline] \u7B2C\u4E00\u6B21\u8C03\u7528\u5373\u8FD4\u56DE ${d.files.length} \u4E2A\u6587\u4EF6\uFF0C\u79CD\u5B50\u76EE\u5F55\u540D: "${p}"`),EBt("\u7B2C\u4E00\u6B21\u8FD4\u56DE",d.files);let m=await FRe(e,n,p,{...r,magnet:t,taskFiles:d.files});if(m.length>0)return console.log(`[115-offline] \u7ACB\u5373\u627E\u5230 ${m.length} \u4E2A\u5A92\u4F53\u6587\u4EF6`),m}console.log(`[115-offline] files\u4E3A\u7A7A\uFF0C\u5F00\u59CB\u8F6E\u8BE2 add_task_url \u63A5\u53E3 ${s} \u6B21\uFF0C\u95F4\u9694 ${i}ms`);for(let p=0;p0){let m=yBt(d.files);console.log(`[115-offline] \u8F6E\u8BE2\u6210\u529F\uFF0C\u63A5\u53E3\u8FD4\u56DE ${d.files.length} \u4E2A\u6587\u4EF6\uFF0C\u79CD\u5B50\u76EE\u5F55\u540D: "${m}"`),EBt("\u8F6E\u8BE2\u8FD4\u56DE",d.files);let g=await FRe(e,n,m,{...r,magnet:t,taskFiles:d.files});if(g.length>0)return console.log(`[115-offline] \u627E\u5230 ${g.length} \u4E2A\u5A92\u4F53\u6587\u4EF6`),g}let h=!!r.allowFallbackScan;if((n||n==="0")&&h){console.log(`[115-offline] \u8F6E\u8BE2 ${s} \u6B21\u540E\u4ECD\u672A\u83B7\u53D6\u5230\u6587\u4EF6\u5217\u8868\uFF0C\u5C1D\u8BD5\u626B\u63CF savePath=${n}`);let p=await FRe(e,n,"",{...r,magnet:t});if(p.length>0)return p}return console.warn(`[115-offline] \u8F6E\u8BE2 ${s} \u6B21\u540E\u4ECD\u672A\u83B7\u53D6\u5230\u6587\u4EF6\u5217\u8868${h?"":"\uFF0C\u8DF3\u8FC7 savePath \u9012\u5F52\u626B\u63CF"}`),[]}function sdn(e){return Array.isArray(e)?e.slice(0,5).map(t=>{let r={};for(let n of["name","n","file_name","file_size","size","s","pick_code","pc","cid","fid","file_id","wanted","path","wp_path","sha1"])t?.[n]!==void 0&&(r[n]=t[n]);return r}):[]}function EBt(e,t){if(!(!Array.isArray(t)||t.length===0))try{let r=Object.keys(t[0]||{}).join(",");console.log(`[115-offline] ${e} files[0] keys=${r}, sample=${JSON.stringify(sdn(t))}`)}catch{}}function yBt(e){if(!Array.isArray(e))return"";let t="";for(let r of e){let n=String(r?.name||r?.n||r?.file_name||"");if(!n)continue;let s=n.indexOf("/");if(s>0)return n.slice(0,s);let i=uK(n);!t&&wx(i)&&(t=i)}return t}function idn(e){let t=tdn(e);return t?uK(t).replace(/\.[^.]+$/,"").trim():""}function vBt(e){return String(e||"").trim().toLowerCase().replace(/[\s._-]+/g,"").replace(/[\[\]【】()()]/g,"")}function adn(e,t){let r=vBt(e),n=vBt(t);return!!(r&&n&&(r===n||r.includes(n)||n.includes(r)))}function wx(e){if(!e)return!1;let t=e.lastIndexOf(".");return t<0?!1:odn.has(e.slice(t+1).toLowerCase())}function uK(e){let t=String(e||"").trim();if(!t)return"";let r=t.split("/").filter(Boolean);return r.length?r[r.length-1]:t}function cdn(e){let t=Number(e?.file_size??e?.size??e?.s??0);return Number.isFinite(t)&&t>0?t:0}function udn(e){if(!Array.isArray(e))return[];let t=[],r=new Set;for(let n of e){let s=uK(n?.name||n?.n||n?.file_name);if(!wx(s))continue;let i=cdn(n),a=`${s}::${i||""}`;r.has(a)||(r.add(a),t.push({name:s,size:i}))}return t}function SBt(e,t){if(!t?.length)return null;let r=uK(e?.n||e?.name||e?.file_name),n=Number(e?.s||e?.size||e?.file_size||0);return t.find(s=>s.name===r&&(!s.size||!n||Number(s.size)===Number(n)))||null}function ldn(e){return[...e].sort((t,r)=>{let n=Number(t?.upt||t?.te||t?.tp||t?.user_ptime||t?.ptime||t?.mtime||0);return Number(r?.upt||r?.te||r?.tp||r?.user_ptime||r?.ptime||r?.mtime||0)-n})}async function ddn(e,t,r){if(!r?.length||!t?.length)return null;let n=null,s=ldn(t);for(let i of s){let a=String(i?.cid||"");if(!a)continue;let o=await xBt(e,[],r,[a]);if(!o.length)continue;let c=o.length;if((!n||c>n.score)&&(n={dir:i,found:o,score:c},c>=r.length))break}return n}async function xBt(e,t,r,n=[]){if(!r?.length)return[];let s=new Map,i=Array.isArray(n)?[...n].filter(Boolean):[];for(let o of t){if(Number(o?.fc)===0){o?.cid&&i.push(String(o.cid));continue}if(Number(o?.fc)===1&&wx(String(o?.n||""))){let c=SBt(o,r);if(c){let u=`${c.name}::${c.size||""}`;if(!s.has(u)){let l=oK(o);l.pick_code&&s.set(u,l)}}}}let a=new Set;for(;i.length>0&&s.sizes.get(`${o.name}::${o.size||""}`)).filter(Boolean)}async function FRe(e,t,r,n={}){let s=await qRe(e,t);if(s.length===0)return console.log(`[115-offline] savePath=${t} \u4E0B\u6CA1\u6709\u4EFB\u4F55\u6587\u4EF6\u6216\u76EE\u5F55`),[];let i=s.filter(d=>Number(d?.fc)===0);console.log(`[115-offline] savePath=${t} \u4E0B\u5171\u6709 ${i.length} \u4E2A\u76EE\u5F55`);let a="";if(r){let d=s.find(f=>Number(f?.fc)===0&&String(f?.n||"").trim()===r);d?(a=String(d.cid||""),console.log(`[115-offline] \u7CBE\u786E\u5339\u914D\u5230\u76EE\u5F55: "${d.n||d.name}", cid=${a}`)):console.log(`[115-offline] \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D\u7684\u76EE\u5F55: "${r}"`)}if(a)return await $Re(e,a);let o=idn(n.magnet);if(o){let d=i.filter(f=>adn(f?.n||f?.name,o));if(d.length>0){let f=d[0];console.log(`[115-offline] \u6309\u78C1\u529B dn \u5339\u914D\u5230\u76EE\u5F55: "${f.n||f.name}", cid=${f.cid}`);let h=await $Re(e,String(f.cid||""));if(h.length>0)return h}else console.log(`[115-offline] \u672A\u6309\u78C1\u529B dn \u5339\u914D\u5230\u76EE\u5F55: "${o}"`)}let c=udn(n.taskFiles);if(c.length>0){console.log(`[115-offline] \u672A\u627E\u5230\u79CD\u5B50\u76EE\u5F55\uFF0C\u6309\u63A5\u53E3\u6587\u4EF6\u540D\u53CD\u63A8\u771F\u5B9E\u76EE\u5F55 ${c.length} \u4E2A\u5A92\u4F53\u6587\u4EF6`);let d=await ddn(e,i,c);if(d?.found?.length)return console.log(`[115-offline] \u6309\u63A5\u53E3\u6587\u4EF6\u540D\u5339\u914D\u5230\u76EE\u5F55: "${d.dir.n||d.dir.name}", \u547D\u4E2D ${d.found.length}/${c.length}`),d.found;let f=await xBt(e,s,c);return f.length>0?f:(console.log("[115-offline] \u6309\u63A5\u53E3\u6587\u4EF6\u540D\u7CBE\u786E\u67E5\u627E\u672A\u547D\u4E2D\uFF0C\u4E0D\u626B\u63CF\u65E0\u5173\u76EE\u5F55"),[])}if(!n.allowFallbackScan)return console.log("[115-offline] \u672A\u627E\u5230\u79CD\u5B50\u76EE\u5F55\u4E14\u65E0\u63A5\u53E3\u6587\u4EF6\u540D\uFF0C\u8DF3\u8FC7\u9012\u5F52\u67E5\u627E\u5A92\u4F53\u6587\u4EF6"),[];console.log("[115-offline] \u672A\u627E\u5230\u79CD\u5B50\u76EE\u5F55\u4E14\u65E0\u63A5\u53E3\u6587\u4EF6\u540D\uFF0C\u5C1D\u8BD5\u9012\u5F52\u67E5\u627E\u5A92\u4F53\u6587\u4EF6");let u=s.filter(d=>Number(d?.fc)===1&&wx(String(d?.n||"")));if(u.length>0)return u.map(oK).filter(d=>d.pick_code);let l=i.map(d=>String(d.cid||"")).filter(Boolean);for(let d of l){let f=await $Re(e,d);if(f.length>0)return f}return console.log("[115-offline] \u9012\u5F52\u626B\u63CF\u6240\u6709\u5B50\u76EE\u5F55\u540E\u4ECD\u672A\u627E\u5230\u5A92\u4F53\u6587\u4EF6"),[]}async function $Re(e,t){let r=[t],n=[],s=new Set;for(;r.length>0;){let i=r.shift();if(s.has(i))continue;s.add(i);let a=await qRe(e,i);for(let o of a){if(Number(o?.fc)===0){o?.cid&&r.push(String(o.cid));continue}if(Number(o?.fc)===1&&wx(String(o?.n||""))){let c=oK(o);c.pick_code&&n.push(c)}}}return n}async function qRe(e,t){let r=[];for(let n=1;n<=30;n++){let{list:s,count:i}=await Cx(e,t,n);if(!Array.isArray(s)||s.length===0||(r.push(...s),r.length>=i))break}return r}function oK(e){return{file_id:String(e?.fid||e?.cid||e?.file_id||""),file_name:String(e?.n||e?.name||e?.file_name||""),file_size:Number(e?.s||e?.size||e?.file_size||0),pick_code:String(e?.pc||e?.pick_code||"")}}function fdn(e){return new Promise(t=>setTimeout(t,Math.max(0,e)))}async function wBt(e,{deleteSource:t=!1}={}){if(!e)throw new Error("115 cookie \u7F3A\u5931");let r=TBt(e);if(!r)throw new Error("cookie \u4E2D\u6CA1\u6709 UID \u5B57\u6BB5");let{sign:n,time:s}=await IBt(e),i=new URLSearchParams;i.set("flag",t?"5":"0"),i.set("uid",r),i.set("sign",n),i.set("time",s);let a=await ye.post(Zln,i.toString(),{headers:{...cK(e),"Content-Type":"application/x-www-form-urlencoded"},timeout:3e4,validateStatus:()=>!0}),o=a?.data;if(!o)throw new Error(`115 \u6E05\u7A7A\u79BB\u7EBF\u65E0\u54CD\u5E94 status=${a?.status}`);if(o.state===!1)throw new Error(`115 \u6E05\u7A7A\u79BB\u7EBF\u5931\u8D25: ${o.error_msg||o.error||o.errcode}`);return{ok:!0}}var Wln,Xln,Jln,Zln,edn,odn,HRe=ie(()=>{vr();QE();Wln="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Xln="https://115.com/?ct=offline&ac=space",Jln="https://115.com/web/lixian/?ct=lixian&ac=add_task_url",Zln="https://115.com/web/lixian/?ct=lixian&ac=task_clear",edn="https://webapi.115.com/files";odn=new Set(["mp4","mkv","mov","avi","wmv","flv","webm","m2ts","ts","rmvb","rm","m4v","f4v","3gp","mpeg","iso"])});function gdn(e){return{Cookie:e,"User-Agent":"Mozilla/5.0 115disk/27.0.5.7",Referer:"https://115.com/",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded"}}async function DBt(e,t,r){let n=await ye.post(t,r,{headers:gdn(e),timeout:3e4,validateStatus:()=>!0}),s=n?.data;if(!s||typeof s!="object")throw new Error(`115 \u56DE\u6536\u7AD9\u63A5\u53E3\u54CD\u5E94\u5F02\u5E38 status=${n?.status}`);if(!s.state)throw new Error(s.error||s.error_msg||`115 \u56DE\u6536\u7AD9\u64CD\u4F5C\u5931\u8D25 (errcode=${s.errcode})`);return s}async function PBt(e,t){let r=[];for(let n=1;n<=mdn;n++){let{list:s,count:i}=await Cx(e,t,n);if(!Array.isArray(s)||s.length===0||(r.push(...s),r.length>=i))break}return r}async function _dn(e){let r=(await PBt(e,"0")).find(n=>n.fid===void 0&&String(n.n||"")===OBt);return r?{cid:String(r.cid),name:String(r.n)}:null}async function Adn(e,t){let r=[String(t)],n=new Set,s=[];for(;r.length>0;){let i=r.shift();if(n.has(i))continue;n.add(i);let a=await PBt(e,i);for(let o of a)o.fid!==void 0?s.push(String(o.fid)):o.cid&&r.push(String(o.cid))}return s}async function Edn(e,t){let r=0;for(let n=0;ni.set(`fid[${o}]`,a));try{await DBt(e,hdn,i.toString())}catch(a){throw new Error(`\u79FB\u5165\u56DE\u6536\u7AD9\u5931\u8D25 (\u5DF2\u6210\u529F ${r}/${t.length}): ${a?.message||a}`)}r+=s.length}return r}async function LBt(e,{doRecent:t=!1,doRecycle:r=!1}={}){if(!e)throw new Error("115 cookie \u7F3A\u5931");if(!t&&!r)throw new Error("\u672A\u9009\u62E9\u6E05\u7406\u9879");let n=null;if(t){let i=await _dn(e);if(!i)n={found:!1,name:OBt,moved:0};else{let a=await Adn(e,i.cid),o=a.length?await Edn(e,a):0;n={found:!0,name:i.name,moved:o}}}let s=null;return r&&(await DBt(e,pdn,""),s={cleared:!0}),{recent:n,recycle:s}}var hdn,pdn,OBt,NBt,mdn,MBt=ie(()=>{vr();QE();hdn="https://webapi.115.com/rb/delete",pdn="https://webapi.115.com/rb/clean",OBt="\u6700\u8FD1\u63A5\u6536",NBt=50,mdn=50});function ydn(e,t){let r=Qi(e,{...t,useMultithread:!0,timeout:3e4,maxRetries:6});return{chunkSize:r.chunkSize,poolSize:r.poolSize}}function BBt(e={}){let t=e&&typeof e=="object"?e:{},r=t.stable&&typeof t.stable=="object"?t.stable:t;return ydn(r,kBt)}function vdn(e){return!(!e||typeof e!="object"||typeof e.chunkSize!="number"||!Number.isFinite(e.chunkSize)||typeof e.poolSize!="number"||!Number.isFinite(e.poolSize)||!Number.isInteger(e.chunkSize)||!Number.isInteger(e.poolSize)||e.chunkSizeAs.maxChunkSize||e.poolSizeAs.maxPoolSize)}function UBt(e={}){return vdn(e)?BBt(e):null}async function lK(e){let t=await e.db.getObjectDefault(VRe,kBt);return BBt(t)}var VRe,kBt,jRe=ie(()=>{el();VRe="/guangya_proxy_settings",kBt=Object.freeze({chunkSize:1024*1024,poolSize:16})});function gK(e){let t=qe(e).toLowerCase().replace(/^wdi10\./,"").replace(/x+$/g,"").replace(/[^0-9a-f]/g,"");return t.length===32?t:""}function xdn(){try{return X4.default.randomBytes(16).toString("hex")}catch{return QRe}}function WRe(e){let t=gK(e)||QRe;return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":pK,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}function ZBt(e="",t=""){let r={Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:"https://www.guangyapan.com",Referer:"https://www.guangyapan.com/",Did:gK(t)||QRe,Dt:"4"};return e&&(r.Authorization=`Bearer ${e}`),r}async function WE(e){let t=await e.db.getObjectDefault("/guangya",{});return{accessToken:qe(t?.accessToken),refreshToken:qe(t?.refreshToken),deviceId:gK(t?.deviceId)||xdn(),updatedAt:qe(t?.updatedAt)}}async function XRe(e,{reveal:t=!1}={}){let r=await WE(e);return t?r:{deviceId:r.deviceId,updatedAt:r.updatedAt,loggedIn:!!(r.accessToken||r.refreshToken)}}async function J4(e,t={}){let r=await WE(e),n={accessToken:qe(t.accessToken??t.access_token??r.accessToken),refreshToken:qe(t.refreshToken??t.refresh_token??t.cookie??r.refreshToken),deviceId:gK(t.deviceId??t.device_id??r.deviceId)||r.deviceId,updatedAt:new Date().toISOString()};return await e.db.push("/guangya",n),n}async function e3t(e){let t=await WE(e),r=await Xe.post(`${YRe}/v1/auth/device/code`,{scope:"user",client_id:pK},{headers:WRe(t.deviceId),validateStatus:()=>!0}),n=r?.data||{};if(r.status<200||r.status>=300||!n.device_code)throw new Error(qe(n.error_description||n.message||`HTTP ${r.status}`));return{deviceCode:qe(n.device_code),verificationUrl:qe(n.verification_uri_complete||n.verification_url),expiresIn:Number(n.expires_in||120),interval:Math.max(1,Number(n.interval||2)||2),deviceId:t.deviceId}}function wdn(e={}){let t=e?.data||{},r=qe(t.access_token||t.accessToken),n=qe(t.refresh_token||t.refreshToken);if(Number(e?.status)>=200&&Number(e?.status)<300&&(r||n))return{status:"CONFIRMED",message:"\u626B\u7801\u6210\u529F",accessToken:r,refreshToken:n};let s=qe(t.error||t.code).toLowerCase(),i=qe(t.error_description||t.message||t.msg);return s==="authorization_pending"||s==="slow_down"?{status:"NEW",message:s==="slow_down"?"\u7B49\u5F85\u626B\u7801\u786E\u8BA4\uFF0C\u8BF7\u7A0D\u5019":"\u7B49\u5F85\u626B\u7801\u786E\u8BA4"}:s==="access_denied"?{status:"CANCELED",message:i||"\u5DF2\u53D6\u6D88\u767B\u5F55"}:s==="expired_token"||s==="invalid_grant"||s.includes("expired")?{status:"EXPIRED",message:i||"\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F"}:{status:"FAILED",message:i||s||`\u5149\u9E2D\u767B\u5F55\u72B6\u6001\u68C0\u67E5\u5931\u8D25 HTTP ${e?.status||500}`}}async function t3t(e,t={},{persist:r=!0}={}){let n=await Xe.post(`${YRe}/v1/auth/token`,{grant_type:Sdn,device_code:qe(t.deviceCode),client_id:pK},{headers:WRe(t.deviceId),validateStatus:()=>!0}),s=wdn(n);if(s.status==="CONFIRMED")return r&&await J4(e,{accessToken:s.accessToken,refreshToken:s.refreshToken,deviceId:t.deviceId}),{status:s.status,message:r?"\u767B\u5F55\u6210\u529F\uFF0C\u8D26\u53F7\u4FE1\u606F\u5DF2\u4FDD\u5B58":"\u626B\u7801\u6210\u529F\uFF0C\u8BF7\u70B9\u51FB\u5165\u5E93\u4FDD\u5B58",accessToken:s.accessToken,refreshToken:s.refreshToken,deviceId:qe(t.deviceId)};if(s.status==="FAILED")throw new Error(s.message);return s}async function qBt(e){let t=await WE(e);if(!t.refreshToken)throw new Error("\u8BF7\u5148\u5728\u7F51\u76D8\u914D\u7F6E\u4E2D\u767B\u5F55\u5149\u9E2D");let n=(await Xe.post(`${YRe}/v1/auth/token`,{client_id:pK,grant_type:"refresh_token",refresh_token:t.refreshToken},{headers:WRe(t.deviceId),validateStatus:()=>!0}))?.data||{},s=qe(n.access_token||n.accessToken);if(!s)throw new Error(qe(n.error_description||n.message||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"));return await J4(e,{accessToken:s,refreshToken:qe(n.refresh_token||n.refreshToken)||t.refreshToken,deviceId:t.deviceId}),s}async function nl(e,t,r,n=!0){let s=await WE(e);s.accessToken||(await qBt(e),s=await WE(e));let i=await Xe.post(`${zBt}${t}`,r,{headers:ZBt(s.accessToken,s.deviceId),validateStatus:()=>!0}),a=i?.data||{},o=qe(a.msg||a.message||a.error);if((i.status===401||i.status===403||Number(a.code)===401||Number(a.code)===403||/token|unauthorized/i.test(o))&&n)return await qBt(e),nl(e,t,r,!1);if(i.status<200||i.status>=300||a.code!=null&&Number(a.code)!==0){let u=new Error(o||`\u5149\u9E2D\u63A5\u53E3\u5931\u8D25 HTTP ${i.status}`);throw u.name="GuangyaApiError",u.code=Number.isFinite(Number(a.code))?Number(a.code):0,u.httpStatus=Number(i.status||0),u.apiPath=t,u}return a.data||{}}function Nx(e){return Number(e?.resType)===2}function JRe(e){if(Number(e?.resType)!==1)return!1;let t=qe(e?.fileName||e?.name||e?.vod_name).toLowerCase(),r=qe(e?.ext).toLowerCase(),n=qe(e?.mineType||e?.mimeType).toLowerCase();return Number(e?.fileType)===2||n.startsWith("video/")||WBt.some(s=>r===s||t.endsWith(s))}function Ndn(e){return Number(e?.resType)!==1?!1:St(qe(e?.fileName||e?.name||e?.vod_name))}function _K(e={},t={}){let r=qe(e?.fileId||e?.id||e?.resId),n=qe(e?.fileName||e?.name||e?.vod_name)||"\u672A\u77E5",s=Number(e?.fileSize||e?.size||e?.vod_size||0)||0,i=qe(t.parentId??e?.parentId),a=qe(t.currentPath),o=qe(t.path)||[a,n].filter(Boolean).join("/"),c={...e,fileId:r,fileName:n,fileSize:s,name:n,vod_name:n,vod_size:s,parentId:i,path:o};return c.isFolder=Nx(c),c.isSubtitle=Ndn(c),c.isVideo=!c.isSubtitle&&JRe(c),c.subtitleExt=c.isSubtitle?rr(n):"",c}async function YT(e,t="",r=1,n=200){let s=Math.max(1,Number(r)||1),i={parentId:qe(t),pageSize:n,orderBy:3,sortType:1,fileTypes:[]};s>1&&(i.cursor=(s-1)*n);let a=await nl(e,"/nd.bizuserres.s/v1/file/get_file_list",i);return{list:(Array.isArray(a.list)?a.list:[]).map(c=>_K(c,{parentId:qe(t)})),total:Number(a.total||0),cursor:qe(a.cursor),nextCursor:qe(a.nextCursor||a.next_cursor||a.cursor)}}async function r3t(e,t){let r=await nl(e,"/nd.bizuserres.s/v1/get_res_download_url",{fileId:qe(t)});return qe(r.signedURL||r.downloadUrl||r.url)}function Odn(e={}){let t=qe(e?.signedURL||e?.signedUrl||e?.downloadUrl||e?.url);if(t)return t;let r=[e?.downloadInfo,e?.fileInfo,e?.resource,e?.normal,e?.data];for(let s of r){let i=qe(s?.signedURL||s?.signedUrl||s?.downloadUrl||s?.url);if(i)return i}let n=[e?.list,e?.urls,e?.downloadUrls,e?.resources];for(let s of n)if(Array.isArray(s))for(let i of s){let a=qe(typeof i=="string"?i:i?.signedURL||i?.signedUrl||i?.downloadUrl||i?.url);if(a)return a}return""}async function Ddn(e,t){let r=await nl(e,"/userres/v1/get_res_download_url",{fileId:qe(t)}),n=Odn(r);if(!n)throw new Error("\u5149\u9E2D\u666E\u901A\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DE\u7B7E\u540D\u5730\u5740");return n}function dK(e=""){return qe(e).toLowerCase().replace(/\.[a-z0-9]{2,6}$/i,"").replace(/[\s\[\]()()【】._\-]+/g,"")}async function Pdn(e,t=YBt,r=""){let s=(await YT(e,r,1,200)).list.find(c=>Nx(c)&&qe(c?.fileName)===t);if(s?.fileId)return qe(s.fileId);let i=[["/userres/v1/file/create_dir",{parentId:r,dirName:t}],["/userres/v1/file/create_dir",{parentId:r,fileName:t}],["/userres/v1/file/create_dir",{parentId:r,name:t}],["/nd.bizuserres.s/v1/file/create_dir",{parentId:r,dirName:t}]];for(let[c,u]of i)try{let l=await nl(e,c,u),d=qe(l.fileId||l.id||l.folderId||l.resId);if(d)return d}catch{}let o=(await YT(e,r,1,200)).list.find(c=>Nx(c)&&qe(c?.fileName)===t);if(o?.fileId)return qe(o.fileId);throw new Error(`\u521B\u5EFA\u5149\u9E2D\u8F6C\u5B58\u76EE\u5F55\u5931\u8D25: ${t}`)}async function fK(e,t="",r=5e3){let n=[],s="",i=new Set;for(let a=0;a<100&&n.length_K(f,{parentId:qe(t)})));let l=qe(c.nextCursor||c.next_cursor||c.cursor||(Number(c.total||0)>n.length?n.length:"")),d=Number(c.total||0);if(!u.length||d>0&&n.length>=d||!l||i.has(l))break;i.add(l),s=l}return n.slice(0,r)}async function Ldn(e,t,{attempts:r=30,intervalMs:n=500}={}){if(t){for(let s=0;s0&&await new Promise(o=>setTimeout(o,n));let i=await nl(e,"/userres/v1/get_task_status",{taskId:qe(t)}),a=Number(i.status);if(a===2)return;if(a===3)throw new Error(qe(i?.detail?.msg||i?.message||"\u5149\u9E2D\u6587\u4EF6\u5220\u9664\u4EFB\u52A1\u5931\u8D25"))}throw new Error("\u5149\u9E2D\u6587\u4EF6\u5220\u9664\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6")}}async function n3t(e,t=[]){let r=[...new Set((Array.isArray(t)?t:[]).map(qe).filter(Boolean))],n=0;for(let s=0;sn?.fileId))}async function kdn(e,t=QBt){let r=[],n="",s=new Set;for(let i=0;i<100;i+=1){let a={pageSize:100,status:t};n&&(a.cursor=n);let o=await nl(e,"/cloudcollection/v1/list_task",a),c=Array.isArray(o.list)?o.list:[];r.push(...c);let u=qe(o.nextCursor||o.next_cursor||o.cursor||(Number(o.total||0)>r.length?r.length:"")),l=Number(o.total||0);if(!c.length||l>0&&r.length>=l||!u||s.has(u))break;s.add(u),n=u}return r}async function s3t(e,{deleteFiles:t=!1}={}){let r=await kdn(e),n=t?r.filter(i=>i?.fileDeleted!==!0).flatMap(i=>[i?.fileId,i?.targetFileId,...Array.isArray(i?.fileIds)?i.fileIds:[]]):[];r.length&&await nl(e,"/cloudcollection/v2/delete_task",{status:QBt});let s=t?await n3t(e,n):0;return{taskCount:r.length,fileCount:s}}function HBt(e,t){let r=qe(t?.fileName),n=e.find(i=>qe(i?.fileName)===r);if(n)return n;let s=dK(r);return s&&e.find(i=>{let a=dK(i?.fileName);return a===s||a.includes(s)||s.includes(a)})||null}async function Bdn(e,t=[]){let r=(Array.isArray(t)?t:[]).map(f=>({shareId:qe(f?.shareId),fileId:qe(f?.fileId),code:qe(f?.code),fileName:qe(f?.fileName),fileSize:Number(f?.fileSize||0)||0,ext:qe(f?.ext||rr(f?.fileName))})).filter(f=>f.shareId&&f.fileId&&f.fileName);if(!r.length)throw new Error("\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u53C2\u6570\u4E0D\u5B8C\u6574");let n=r[0].shareId,s=r[0].code;if(r.some(f=>f.shareId!==n||f.code!==s))throw new Error("\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u6587\u4EF6\u4E0D\u5C5E\u4E8E\u540C\u4E00\u5206\u4EAB");let i=await Pdn(e,YBt);await Mdn(e,i);let a=await zRe({shareId:n,code:s}),o=await nl(e,"/userres/v1/restore_share",{accessToken:a,fileIds:[...new Set(r.map(f=>f.fileId))],parentId:i}),c=qe(o.taskId||o.task_id),u=[];for(let f=0;f<24;f+=1){if(f>0&&await new Promise(p=>setTimeout(p,500)),c)try{let p=await nl(e,"/userres/v1/get_task_status",{taskId:c});if(Number(p?.status)===3)throw new Error(qe(p?.detail?.msg||p?.message||"\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u4EFB\u52A1\u5931\u8D25"))}catch(p){if(f>=23)throw p}if(u=await fK(e,i,5e3),r.filter(p=>HBt(u,p)).length>=r.length)break}let l=u.slice(),d=r.map(f=>{let h=HBt(l,f);if(h){let p=l.indexOf(h);p>=0&&l.splice(p,1)}return h?{...f,ownFile:_K(h,{parentId:i})}:{...f,ownFile:null}});return{parentId:i,results:d}}function Udn(e){let t=VBt.then(e,e);return VBt=t.catch(()=>{}),t}function jBt(e){let r=qe(e).match(bdn);if(!r)return null;let n="";try{let s=new URL(r[0]);n=qe(s.searchParams.get("code")||s.searchParams.get("pwd")),!n&&s.hash&&(n=qe(new URLSearchParams(s.hash.slice(1)).get("code")||s.hash.slice(1)))}catch{}return{url:r[0],shareId:r[1],code:n}}function ZRe(e){if(typeof e=="string")return jBt(e);let t=qe(e?.shareId);return t?{url:qe(e?.url),shareId:t,code:qe(e?.code||e?.pwd||e?.password)}:jBt(e?.url||"")}async function hK(e,t,r=3){let n=await Xe.post(`${zBt}${e}`,t,{headers:ZBt(),validateStatus:()=>!0}),s=n?.data||{};if(n.status<200||n.status>=300||Number(s.code||0)!==0){if(r>1&&(n.status===400||n.status===429||n.status>=500))return await new Promise(i=>setTimeout(i,150*(4-r))),hK(e,t,r-1);throw new Error(qe(s.msg||s.message||`\u5149\u9E2D\u5206\u4EAB\u63A5\u53E3\u5931\u8D25 HTTP ${n.status}`))}return s.data||{}}function Fdn(e){return X4.default.createHash("sha256").update(`${e.shareId} +${e.code||""}`).digest("hex").slice(0,32)}async function zRe(e,t=!1){let r=Fdn(e);if(!t){let a=FBt.get(r);if(a)return a}let n={shareId:e.shareId};e.code&&(n.code=e.code);let s=await hK("/userres/v1/get_share_access_token",n),i=qe(s.accessToken);return i&&FBt.set(r,i),i}async function Z4(e,t="",r={}){let n=ZRe(e);if(!n)throw new Error("\u5149\u9E2D\u5206\u4EAB\u94FE\u63A5\u65E0\u6548");let s=await zRe(n),i=Math.max(1,Number(r.page)||1),a=Math.max(1,Math.min(200,Number(r.pageSize)||200)),o=qe(r.currentPath),c={accessToken:s,parentId:qe(t),pageSize:a,orderBy:0,sortType:0},u=qe(r.cursor||(i>1?(i-1)*a:""));u&&(c.cursor=u);let l;try{l=await hK("/userres/v1/get_share_page_files_list",c)}catch(g){if(!/token|access|授权|登录/i.test(g?.message||""))throw g;let _=await zRe(n,!0);l=await hK("/userres/v1/get_share_page_files_list",{...c,accessToken:_})}let d=(Array.isArray(l.list)?l.list:[]).map(g=>_K(g,{parentId:qe(t),currentPath:o})),f=Number(l.total||0),h=qe(l.nextCursor||l.next_cursor||l.cursor),p=(i-1)*a+d.length,m=d.length>0&&(f>0?p0?f:p+(m?a:0),nextCursor:m?h:"",hasMore:m,parentId:qe(t),currentPath:o}}async function $dn(e,t=Rdn,r=Cdn){let n=ZRe(e);if(!n)throw new Error("\u5149\u9E2D\u5206\u4EAB\u94FE\u63A5\u65E0\u6548");let s=[],i=[],a=[],o=[],c=new Set,u=!1;async function l(d="",f=0,h=""){if(f>t||s.length>=r||c.has(d||"__root__")){(f>t||s.length>=r)&&(u=!0);return}c.add(d||"__root__");let p=[],m=1;for(;m<=100;m+=1){let A=await Z4(n,d,{page:m,pageSize:200,currentPath:h});if(p.push(...A.items),!A.hasMore||A.items.length===0)break}let g=p.filter(A=>A.isVideo),_=p.filter(A=>A.isSubtitle),y=p.filter(A=>A.isFolder);i.push(..._),a.push(...y);for(let A of Gt(g)){let E=ac(A.fileName,_,v=>v.fileName);if(s.push({...A,subtitles:E}),s.length>=r){u=!0;break}}s.length>=r||!y.length||await E0(y,async A=>{try{await l(A.fileId,f+1,A.path||[h,A.fileName].filter(Boolean).join("/"))}catch(E){o.push({path:A.path||A.fileName,message:E?.message||String(E)})}return!0},3)}return await l("",0,""),{matched:n,videos:Gt(s),subtitles:i,folders:a,truncated:u,errors:o}}function eCe(e=[]){return(Array.isArray(e)?e:[]).map(t=>({fileId:qe(t?.fileId||t?.id),fileName:qe(t?.fileName||t?.name),fileSize:Number(t?.fileSize||t?.size||0)||0,ext:qe(t?.ext||t?.subtitleExt||rr(t?.fileName||t?.name))})).filter(t=>t.fileId&&t.fileName)}function AK(e,t,r=t?.subtitles||[]){let n=ZRe(e);if(!n||!t?.fileId)return"";let s=JSON.stringify({v:2,ss:eCe(r)});return Dt([n.shareId,qe(t.fileId),n.code,qe(t.fileName||t.name),Number(t.fileSize||t.vod_size||0)||0,s],{structured:!0})}function qdn(e){let t=Br(e),r=[];if(t[5])try{let n=JSON.parse(t[5]);r=eCe(n?.ss||n?.subtitles||[])}catch{}return{shareId:qe(t[0]),fileId:qe(t[1]),code:qe(t[2]),fileName:qe(t[3]),fileSize:Number(t[4]||0)||0,subtitles:r}}function Hdn(e,t=[]){return t.length?ba("\u5149\u9E2D",t.map((r,n)=>({vod_id:AK(e,r,r.subtitles),vod_name:qe(r.fileName)||`\u89C6\u9891${n+1}`,vod_size:Number(r.fileSize||0)||0}))):[]}async function i3t(e){let{matched:t,videos:r}=await $dn(e);return Hdn(t,r)}async function Vdn(e,t={}){let r={shareId:qe(t.shareId),fileId:qe(t.fileId),code:qe(t.code),fileName:qe(t.fileName),fileSize:Number(t.fileSize||0)||0};if(!e||!r.shareId||!r.fileId||!r.fileName)throw new Error("\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u4E0D\u5B8C\u6574");let n=eCe(t.subtitles).map(s=>({...s,shareId:r.shareId,code:r.code}));return Udn(async()=>{let s=await Bdn(e,[r,...n]),i=s.results[0]?.ownFile;if(!i?.fileId)throw new Error(`\u5149\u9E2D\u8F6C\u5B58\u540E\u672A\u627E\u5230\u6587\u4EF6: ${r.fileName}`);let a=s.results.slice(1).map(o=>o.ownFile?{...o.ownFile,ext:o.ext||rr(o.fileName)}:null).filter(Boolean);return{video:i,subtitles:a}})}function jdn(e="",t="\u78C1\u529B\u4E91\u6DFB\u52A0"){return(qe(e).replace(/[\\/:*?"<>|]/g," ").replace(/\s+/g," ").trim()||t).slice(0,120)}function Kdn(e={}){let t=[e],r=new Set,n=[];for(;t.length&&r.size<200&&!n.length;){let s=t.shift();if(!(!s||typeof s!="object"||r.has(s))){if(r.add(s),Array.isArray(s)){s.some(i=>i&&typeof i=="object"&&(i.fileName||i.name||i.file_name||i.path))&&(n=s);continue}for(let i of Object.values(s))i&&typeof i=="object"&&t.push(i)}}return n.map((s,i)=>({index:Number.isFinite(Number(s?.fileIndex??s?.file_index??s?.index??s?.idx??s?.id))?Number(s.fileIndex??s.file_index??s.index??s.idx??s.id):i,name:qe(s?.fileName||s?.name||s?.file_name||s?.filename||s?.path||`\u6587\u4EF6${i+1}`),size:Number(s?.fileSize||s?.size||s?.length||0)||0,raw:s})).filter(s=>s.name)}function Gdn(e={}){let t=qe(e?.name).toLowerCase(),r=t.includes(".")?`.${t.split(".").pop().split(/[?#]/)[0]}`:"",n=qe(e?.raw?.mineType||e?.raw?.mimeType||e?.raw?.contentType).toLowerCase();return Number(e?.raw?.fileType)===2||n.startsWith("video/")||WBt.includes(r)}function zdn(e=""){let t=qe(e).toLowerCase();return/(?:^|[\\/._\-\s])(sample|samples|trailer|preview|teaser|promo)(?:$|[\\/._\-\s])/i.test(t)||/(?:样片|预告|花絮|试看|宣传片)/.test(t)}function Ydn(e=[]){let t=Array.isArray(e)?e.filter(c=>c?.name):[],r=t.filter(Gdn),n=r.filter(c=>!zdn(c.name)),s=n.length?n:r;if(!s.length)return[];let i=t.filter(c=>{let u=qe(c.name).toLowerCase().split(/[?#]/)[0];return Tdn.some(l=>u.endsWith(l))}),a=[...s,...i],o=new Set;return a.filter(c=>{let u=String(c.index);return o.has(u)?!1:(o.add(u),!0)})}function a3t(e=Date.now()){let t=new Intl.DateTimeFormat("en-US",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(e)),r=Object.fromEntries(t.map(c=>[c.type,c.value])),n=Number(r.year),s=Number(r.month),i=Number(r.day),a=`${String(n).padStart(4,"0")}-${String(s).padStart(2,"0")}-${String(i).padStart(2,"0")}`,o=Date.UTC(n,s-1,i+1)-8*60*60*1e3;return{day:a,resetAt:o}}function o3t(e={}){let t=qe(e.refreshToken||e.accessToken||e.deviceId||"anonymous");return X4.default.createHash("sha256").update(t).digest("hex").slice(0,24)}function tCe(e){return new Intl.DateTimeFormat("zh-CN",{timeZone:"Asia/Shanghai",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).format(new Date(e))}function Q4(e={}){let t=e.resetText||tCe(e.resetAt),r=new Error(`\u5149\u9E2D\u7F51\u9875\u4E91\u6DFB\u52A0\u989D\u5EA6\u5DF2\u7528\u5B8C\uFF0C\u5C06\u4E8E ${t}\uFF08\u5317\u4EAC\u65F6\u95F4\uFF09\u5237\u65B0\uFF1B\u5B98\u65B9 App \u4F7F\u7528\u72EC\u7ACB\u4E91\u6DFB\u52A0\u94FE\u8DEF\uFF0CApp \u53EF\u7528\u4E0D\u4EE3\u8868\u7F51\u9875\u63A5\u53E3\u4ECD\u6709\u989D\u5EA6`);return r.name="GuangyaCloudQuotaError",r.code=mK,r.quotaLimited=!0,r.blockedUntil=Number(e.resetAt||0),r}function Qdn(e){return Number(e?.code)===mK||e?.quotaLimited===!0||/云添加次数超限|云添加额度已用完|下个自然日刷新/.test(qe(e?.message))}async function rCe(e,{now:t=Date.now()}={}){let r=await WE(e),n=o3t(r),s=a3t(t),i=GRe.get(n);if((!i||i.day!==s.day||Number(i?.blockedUntil||0)<=t)&&e?.db?.getObjectDefault)try{i=await e.db.getObjectDefault(XBt,{})}catch{i=null}let a=i?.accountKey===n&&i?.day===s.day&&Number(i?.blockedUntil||0)>t,o={limited:a,day:s.day,resetAt:a?Number(i.blockedUntil):s.resetAt,resetText:tCe(a?Number(i.blockedUntil):s.resetAt)};return a&&(o.code=mK,o.message=Q4(o).message,GRe.set(n,{...i,...o,accountKey:n})),o}async function KBt(e,t,r=Date.now()){if(!Qdn(t))return null;let n=await WE(e),s=o3t(n),i=a3t(r),a={accountKey:s,limited:!0,code:mK,day:i.day,blockedUntil:i.resetAt,resetAt:i.resetAt,resetText:tCe(i.resetAt),updatedAt:new Date(r).toISOString()};if(a.message=Q4(a).message,GRe.set(s,a),e?.db?.push)try{await e.db.push(XBt,a)}catch{}return a}async function GBt(e,t,r,n=[]){let s=await fK(e,t,1e4),i=s.find(d=>Nx(d)&&qe(d?.fileName)===r),a=i?.fileId?qe(i.fileId):t,o=[],c=new Set;async function u(d,f=0){if(f>20||c.has(d||"__root__")||o.length>=1e4)return;c.add(d||"__root__");let h=d===t&&!i?.fileId?s:await fK(e,d,1e4);o.push(...h.filter(m=>m.isVideo));let p=h.filter(m=>m.isFolder&&m.fileId);await E0(p,async m=>(await u(m.fileId,f+1),!0),3)}await u(a,0);let l=Gt(o);return n.length?l.filter(d=>n.some(f=>{let h=dK(d?.fileName),p=dK(f?.name);return h&&p&&(h===p||h.includes(p)||p.includes(h))})):l}async function c3t(e,t,r={}){let n=qe(t);if(!/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i.test(n))throw new Error("\u5149\u9E2D\u4E91\u8F6C\u5B58\u4EC5\u652F\u6301 magnet \u94FE\u63A5");let s;try{s=await nl(e,"/cloudcollection/v1/resolve_res",{url:n})}catch(d){let f=await KBt(e,d);throw f?Q4(f):d}let i=Kdn(s);if(!i.length)throw new Error("\u5149\u9E2D\u78C1\u529B\u89E3\u6790\u672A\u8FD4\u56DE\u6587\u4EF6");let a=Ydn(i);if(!a.length)throw new Error("\u5149\u9E2D\u78C1\u529B\u5185\u672A\u53D1\u73B0\u53EF\u64AD\u653E\u89C6\u9891\uFF0C\u5DF2\u53D6\u6D88\u521B\u5EFA\u4E91\u6DFB\u52A0\u4EFB\u52A1");let o=qe(r.savePath||"root"),c=!o||o==="root"||o==="auto"?"":o,u=jdn(r.name||s.name||s.title||a[0]?.name||"\u78C1\u529B\u4E91\u6DFB\u52A0"),l=await GBt(e,c,u,a);if(!l.length){let d=await rCe(e);if(d.limited)throw Q4(d);try{await nl(e,"/cloudcollection/v1/create_task",{fileIndexes:a.map(p=>p.index),url:n,parentId:c,newName:u})}catch(p){let m=await KBt(e,p);throw m?Q4(m):p}let f=Math.max(1,Math.min(50,Number(r.pollAttempts||20))),h=Math.max(200,Math.min(1e4,Number(r.pollIntervalMs||1500)));for(let p=0;p0&&await new Promise(m=>setTimeout(m,h)),l=await GBt(e,c,u,a).catch(()=>[]),!l.length);p+=1);}if(!l.length)throw new Error("\u5149\u9E2D\u4E91\u8F6C\u5B58\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u751F\u6210\u53EF\u64AD\u653E\u6587\u4EF6");return l.map(d=>({fileId:qe(d?.fileId),fileName:qe(d?.fileName),fileSize:Number(d?.fileSize||d?.size||0)||0,name:qe(d?.fileName),vod_name:qe(d?.fileName),vod_size:Number(d?.fileSize||d?.size||0)||0})).filter(d=>d.fileId)}function W4(e=""){let t=qe(e).toLowerCase().match(/\.([a-z0-9]+)(?:$|\?)/);return t?t[1]:""}function u3t(e=""){let t=qe(e).replace(/^\./,"").toLowerCase(),r=JBt[t]?t:rr(e)||W4(e)||"srt";return r==="ass"||r==="ssa"?"srt":r}function Wdn(e){e.header("Access-Control-Allow-Origin","*"),e.header("Access-Control-Allow-Headers","Range, Content-Type, Origin, Accept"),e.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges, Content-Type"),e.header("Cache-Control","no-store")}function Xdn(e,t,r={}){let n=Math.max(As.minPoolSize,Math.min(As.maxPoolSize,Number(r.poolSize)||24)),s=5,i=11,a=Math.min(12,Math.max(4,Math.ceil(n/s)+2)),o=[],c=new Map,u=new Set,l=typeof r.resolveDownload=="function"?r.resolveDownload:Ddn,d=!1,f=0,h=null,p=T=>X4.default.createHash("sha1").update(T).digest("hex"),m=()=>o.filter(T=>!T.invalid),g=()=>{for(let T of u)T();u.clear()},_=async()=>{d||await new Promise(T=>{let x=setTimeout(()=>{u.delete(w),T()},250),w=()=>{clearTimeout(x),u.delete(w),T()};u.add(w)})},y=async()=>{if(d)return null;f+=1;try{let T=qe(await l(e,t));if(!T)throw new Error("\u5149\u9E2D\u7B7E\u540D\u5730\u5740\u4E3A\u7A7A");let x=new URL(T).host,w=p(T),D=o.find(L=>!L.invalid&&L.signatureKey===w);if(D)return D;let M={url:T,hostKey:x,signatureKey:w,active:0,invalid:!1};return o.push(M),h=null,M}catch(T){return h=T,null}finally{f=Math.max(0,f-1),g()}},A=()=>{if(d)return;let T=a-m().length-f;for(let x=0;x{let x=m().filter(M=>M.activeL.signatureKey!==w);M.length&&(x=M)}if(Number(T.previousStatus)===503&&D){let M=x.filter(L=>L.hostKey===D);M.length&&(x=M)}return x.sort((M,L)=>{let U=(c.get(M.hostKey)||0)-(c.get(L.hostKey)||0);return U!==0?U:M.active-L.active}),x[0]||null};return{signatureLimit:s,hostLimit:i,initialize:async()=>{let T=m()[0]||null;if(T||(T=await y()),!T)throw h||new Error("\u5149\u9E2D\u7B7E\u540D\u6C60\u521D\u59CB\u5316\u5931\u8D25");return A(),T.url},acquire:async(T={})=>{for(;!d;){let x=E(T);if(x){x.active+=1,c.set(x.hostKey,(c.get(x.hostKey)||0)+1);let w=!1;return{url:x.url,signatureKey:x.signatureKey,hostKey:x.hostKey,release:async(D={})=>{if(w)return;w=!0,x.active=Math.max(0,x.active-1);let M=Math.max(0,(c.get(x.hostKey)||1)-1);M>0?c.set(x.hostKey,M):c.delete(x.hostKey);let L=Number(D.status||0);[401,403,404,410,503].includes(L)&&(x.invalid=!0),A(),g()}}}if(!(m().length+f{d=!0;for(let T of o)T.invalid=!0;g()}}}async function KRe(e,t,r,n={}){let s=n.resolveDownload||r3t,i=null;for(let a=0;a<2;a+=1){let o=await s(e.server,t);if(!o)throw new Error("\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let c={...QT,Accept:n.accept||"*/*","Accept-Encoding":"identity"};n.range&&(c.Range=n.range);let u=await Xe.get(o,{responseType:r,headers:c,timeout:3e4,maxRedirects:5,maxContentLength:n.maxContentLength??1/0,maxBodyLength:n.maxContentLength??1/0,validateStatus:()=>!0});if(u.__guangyaDownloadUrl=o,i=u,![401,403,404,410].includes(Number(u.status))||a>0)return u;u.data&&typeof u.data.destroy=="function"&&u.data.destroy()}return i}function Jdn(e,t){let r=String(e||"");if(!r.includes("#EXTM3U"))return r;let n=s=>{let i=String(s||"").trim();if(!i||/^(?:https?:|data:|blob:)/i.test(i))return i;try{return new URL(i,t).toString()}catch{return i}};return r.split(/\r?\n/).map(s=>{let i=s.trim();return i?i.startsWith("#")?s.replace(/URI="([^"]+)"/gi,(a,o)=>`URI="${n(o)}"`):n(i):s}).join(` +`)}async function nCe(e,t,r={}){let n=qe(r.fileId),s=qe(r.fileName),i=Number(r.fileSize||0)||0,a=qe(r.mode||"down");if(!n)return t.code(400),"\u5149\u9E2D\u6587\u4EF6\u53C2\u6570\u65E0\u6548";Wdn(t);try{if(a==="redirect"){let l=await(r.resolveDownload||r3t)(e.server,n);return l?t.redirect(l):(t.code(404),"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740")}if(a==="subt"){let u=rr(s)||qe(r.format)||"srt",l=u3t(r.end||s||u),d=await KRe(e,n,"arraybuffer",{resolveDownload:r.resolveDownload,accept:"text/plain,text/vtt,*/*",maxContentLength:Idn});if(d.status<200||d.status>=400)return t.code(d.status||502),`\u5149\u9E2D\u5B57\u5E55\u83B7\u53D6\u5931\u8D25: ${d.status||502}`;let f=Buffer.isBuffer(d.data)?d.data:Buffer.from(d.data||"");return(u==="ass"||u==="ssa")&&l==="srt"&&(f=Buffer.from(MT(f.toString("utf8")),"utf8")),t.code(200),t.header("Content-Type",JBt[l]||"text/plain; charset=utf-8"),t.header("Content-Length",String(f.length)),f}let o=qe(e?.headers?.range);if(W4(s)==="m3u8"&&!o){let u=await KRe(e,n,"text",{resolveDownload:r.resolveDownload,accept:"application/vnd.apple.mpegurl,application/x-mpegURL,text/plain,*/*",maxContentLength:4194304});if(u.status<200||u.status>=400||!String(u.data||"").includes("#EXTM3U"))return t.code(u.status>=400?u.status:502),"\u5149\u9E2D HLS \u64AD\u653E\u5217\u8868\u83B7\u53D6\u5931\u8D25";let l=u?.request?.res?.responseUrl||u.__guangyaDownloadUrl||"",d=Jdn(u.data,l);return t.code(200),t.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8"),t.header("Content-Length",String(Buffer.byteLength(d))),d}if(i>0){let u=null;try{let l=await lK(e.server);u=Xdn(e.server,n,{poolSize:l.poolSize,resolveDownload:r.resolveChunkDownload});let d=await u.initialize();return t.header("Content-Type",$Bt[W4(s)]||"application/octet-stream"),await oc(e,t,d,`guangya_${n}`,QT,{chunkSize:l.chunkSize,poolSize:l.poolSize,initialChunkSize:Math.min(l.chunkSize,128*1024),startupPoolSize:1,timeout:60*1e3,maxRetries:6,maxCacheBytes:64*1024*1024,resolveUrl:f=>u.acquire(f),disposeUrlResolver:()=>u.dispose()},i,!0)}catch(l){if(u&&await u.dispose().catch(()=>{}),t.sent)throw l;console.warn("[guangya proxy] dynamic chunk startup failed, using direct stream:",l?.message||l)}}let c=await KRe(e,n,"stream",{resolveDownload:r.resolveDownload,range:o});return c.status<200||c.status>=400?(c.data&&typeof c.data.destroy=="function"&&c.data.destroy(),t.code(c.status||502),`\u5149\u9E2D\u5A92\u4F53\u83B7\u53D6\u5931\u8D25: ${c.status||502}`):(t.code(c.status||(o?206:200)),t.header("Accept-Ranges",c.headers?.["accept-ranges"]||"bytes"),t.header("Content-Type",c.headers?.["content-type"]||$Bt[W4(s)]||"application/octet-stream"),c.headers?.["content-length"]&&t.header("Content-Length",c.headers["content-length"]),c.headers?.["content-range"]&&t.header("Content-Range",c.headers["content-range"]),c.headers?.etag&&t.header("ETag",c.headers.etag),c.headers?.["last-modified"]&&t.header("Last-Modified",c.headers["last-modified"]),t.send(c.data))}catch(o){return t.sent||t.code(502),`\u5149\u9E2D\u4EE3\u7406\u5931\u8D25: ${o?.message||o}`}}function Zdn(e,t={},r={}){let n=t.video;if(!n?.fileId)return Xr("\u5149\u9E2D\u5206\u4EAB\u8F6C\u5B58\u6587\u4EF6\u65E0\u6548");let s=encodeURIComponent(Dt([n.fileId,n.fileName,n.fileSize||r.fileSize||0],{structured:!0})),i=`.${W4(n.fileName)||"bin"}`,a=[...Ia(e,"guangya","\u4EE3\u7406","down","own",s,i),...Ia(e,"guangya","\u539F\u753B","redirect","own",s,i)],o=(Array.isArray(t.subtitles)?t.subtitles:[]).map(c=>{let u=rr(c.fileName)||c.ext||"srt",l=u3t(u),d=encodeURIComponent(Dt([c.fileId,c.fileName,c.fileSize||0,u],{structured:!0}));return v0(e,"guangya","own",d,`.${l}`,{name:c.fileName||"\u5916\u6302\u5B57\u5E55",format:l})}).filter(c=>c.url);return ei({parse:0,urls:a,subtitles:o,header:QT})}async function EK(e){let t=qdn(e?.body?.id||"");if(!t.shareId||!t.fileId||!t.fileName||!e?.server)return Xr("\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");try{let r=await Vdn(e.server,t);return Zdn(e,r,t)}catch(r){return Xr(`\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u5931\u8D25: ${r?.message||r}`)}}async function l3t(e,t){if(qe(e?.params?.what)!=="src")return t.code(404),{error:"\u4E0D\u652F\u6301\u7684\u5149\u9E2D\u4EE3\u7406\u7C7B\u578B"};let r=qe(e?.params?.fileId);try{r=decodeURIComponent(r)}catch{}let n=Br(r),s=qe(n[0]),i=qe(n[1]),a=Number(n[2]||0)||0,o=qe(n[3]);return nCe(e,t,{fileId:s,fileName:i,fileSize:a,format:o,mode:qe(e?.params?.flag),end:qe(e?.params?.end)})}var X4,YRe,zBt,pK,Sdn,QRe,YBt,QBt,WBt,Tdn,bdn,Idn,Rdn,Cdn,FBt,GRe,XBt,mK,$Bt,JBt,qe,VBt,QT,Ox=ie(()=>{X4=Ne(require("crypto"),1);Cr();Zc();la();Jc();ql();S0();A0();kE();jRe();el();YRe="https://account.guangyapan.com",zBt="https://api.guangyapan.com",pK="aMe-8VSlkrbQXpUR",Sdn="urn:ietf:params:oauth:grant-type:device_code",QRe="0123456789abcdef0123456789abcdef",YBt="CatPawOpen",QBt=[0,1,2,3,4,5],WBt=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".mts",".3gp",".rm",".rmvb",".iso",".vob",".asf",".divx",".m3u8",".f4v",".mxf",".ogv",".ogm"],Tdn=[".srt",".ass",".ssa",".vtt",".sub",".idx",".smi"],bdn=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([a-zA-Z0-9_-]+)(?:\?[^\s#]*)?(?:#[^\s]*)?/i,Idn=4*1024*1024,Rdn=20,Cdn=5e3,FBt=ts("guangya.shareToken",{maxSize:500,ttl:10*60*1e3}),GRe=ts("guangya.cloudQuota",{maxSize:20,ttl:26*60*60*1e3}),XBt="/guangya_cloud_quota",mK=354,$Bt={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",webm:"video/webm",avi:"video/x-msvideo",mov:"video/quicktime",flv:"video/x-flv",wmv:"video/x-ms-wmv",ts:"video/mp2t",m2ts:"video/mp2t",mts:"video/mp2t",m3u8:"application/vnd.apple.mpegurl",f4v:"video/mp4"},JBt={srt:"application/x-subrip; charset=utf-8",ass:"text/x-ssa; charset=utf-8",ssa:"text/x-ssa; charset=utf-8",vtt:"text/vtt; charset=utf-8",sub:"text/plain; charset=utf-8",idx:"text/plain; charset=utf-8",smi:"text/plain; charset=utf-8",txt:"text/plain; charset=utf-8"},qe=e=>String(e??"").trim();VBt=Promise.resolve();QT={Referer:"https://www.guangyapan.com/",Origin:"https://www.guangyapan.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/147.0.0.0 Safari/537.36"}});function sCe(e,t=Date.now()){let r=af.get(e);return r?(Number(r.expiresAt||0)>0?tn?.key==="magnet")?.enable===!0;return e.find(n=>n?.key==="magnet_guangya")?.enable===!0?"guangya":t?"115":""}async function f3t(e,t){if(!e?.db)return null;try{return(await e.db.getObjectDefault("/y115_offline",{}))?.[t]||null}catch{return null}}async function h3t(e,t,r){if(e?.db)try{await e.db.push(`/y115_offline/${t}`,r)}catch(n){console.warn("[magnet] persist offline cache failed:",n?.message)}}async function afn(e){let t=e?.config?.y115?.offline||{},r={savePath:t.savePath||"0",pollAttempts:t.pollAttempts??20,pollIntervalMs:t.pollIntervalMs??1500};if(!e?.db?.getObjectDefault)return r;try{let n=await e.db.getObjectDefault("/y115_settings",r);return{...r,...n||{}}}catch{return r}}async function ofn(e){let t={savePath:"root",pollAttempts:20,pollIntervalMs:1500};if(!e?.db?.getObjectDefault)return t;try{let r=await e.db.getObjectDefault("/guangya_cloud_settings",t),n={...t,...r||{}};return(!n.savePath||n.savePath==="auto")&&(n.savePath="root"),n}catch{return t}}function cfn(e){return/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i.test(String(e||""))}function ufn(e){return/^ed2k:\/\//i.test(String(e||""))}function lfn(e){let t=String(e||"").split("|");return t.length>=5?t[4].toLowerCase():""}function I0(e){return[{from:"\u78C1\u529B",url:`${e}$`}]}function iCe(e){let t=e.filter(r=>r.pick_code).map(r=>{let n=String(r.file_name||"unknown"),s=n.replace(/\.[^.]+$/,""),i=r.file_size?Zu(r.file_size):"";return`${i?`${s} [${i}]`:n}$own*${r.pick_code}`});return t.length===0?[]:[{from:"\u78C1\u529B",url:t.join("#")}]}function vK(e){let r=Gt((e||[]).map(n=>({...n,vod_name:n.vod_name||n.fileName||n.name||"",vod_size:Number(n.vod_size||n.fileSize||0)||0}))).filter(n=>n.fileId).map(n=>{let s=String(n.fileName||"unknown"),i=s.replace(/\.[^.]+$/,""),a=n.fileSize?Zu(n.fileSize):"";return`${a?`${i} [${a}]`:s}$gyown*${n.fileId}*${encodeURIComponent(s)}*${Number(n.fileSize||n.vod_size||0)||0}`});return r.length?[{from:"\u78C1\u529B",url:r.join("#")}]:[]}async function p3t(e,t){let r=ufn(e);if(!r&&!cfn(e))return[];let n=t?.server||t?.raw?.server||t?.routeOptions?.config?.server||globalThis.server;if(!n)return I0("\u274C \u7F3A\u5C11 server \u4E0A\u4E0B\u6587");let s=ifn();if(!s)return I0("\u274C 115\u4E91\u8F6C\u5B58\u548C\u5149\u9E2D\u4E91\u8F6C\u5B58\u5747\u672A\u5F00\u542F");let i=r?lfn(e):bBt(e);if(!i)return I0(r?"\u274C ed2k \u94FE\u63A5\u7F3A\u5C11 hash":"\u274C \u78C1\u529B\u94FE\u63A5\u7F3A\u5C11 btih");if(s==="guangya"){if(r)return I0("\u274C \u5149\u9E2D\u4E91\u8F6C\u5B58\u6682\u4E0D\u652F\u6301 ed2k");let m=d3t("guangya",i,"guangya"),g=Date.now(),_=sCe(m,g);return _?_.error?I0(_.error):vK(_.files||[]):nfn(m,async()=>{let y=Date.now(),A=sCe(m,y);if(A)return A.error?I0(A.error):vK(A.files||[]);let E=await f3t(n,m);if(E?.files?.length&&E.version===eB)return af.set(m,{ts:y,files:E.files}),vK(E.files);try{let v=await ofn(n),b=await c3t(n,e,v),I=Date.now();return af.set(m,{ts:I,files:b}),await h3t(n,m,{files:b,ts:I,version:eB,provider:"guangya"}),vK(b)}catch(v){let b=Date.now(),I=`\u274C \u5149\u9E2D\u4E91\u8F6C\u5B58\u5931\u8D25\uFF1A${v?.message||v}`,T={ts:b,error:I};return Number(v?.blockedUntil||0)>b&&(T.expiresAt=Number(v.blockedUntil)),af.set(m,T),I0(I)}})}let a=await Za(n);if(!a)return I0("\u274C \u672A\u914D\u7F6E 115 cookie");let o=d3t(a,i,"115"),c=Date.now(),u=sCe(o,c);if(u)return u.error?I0(u.error):iCe(u.files||[]);let l=await f3t(n,o);if(l?.files?.length&&l.version===eB)return af.set(o,{ts:c,files:l.files}),iCe(l.files);let d=await afn(n),f=r?1:d.pollAttempts||20,h=r?3e3:d.pollIntervalMs||1500;console.log(`[magnet] \u5F00\u59CB\u8F6C\u5B58 ${i} (${r?"ed2k":"magnet"}), pollAttempts=${f}, pollIntervalMs=${h}`);let p=[];try{p=await CBt(a,e,{savePath:d.savePath||"0",pollAttempts:f,pollIntervalMs:h,magnet:e,allowFallbackScan:r}),console.log(`[magnet] \u8F6C\u5B58\u5B8C\u6210 ${i}\uFF0C\u83B7\u5F97 ${p.length} \u4E2A\u6587\u4EF6`)}catch(m){let g=`\u274C \u79BB\u7EBF\u5931\u8D25\uFF1A${m?.message||"\u672A\u77E5\u9519\u8BEF"}`;return console.error(`[magnet] \u8F6C\u5B58\u5931\u8D25 ${i}:`,m?.message),af.set(o,{ts:c,error:g}),I0(g)}if(!p.length){let m="\u274C \u79BB\u7EBF\u5931\u8D25\uFF1A\u672A\u6293\u5230\u4E0B\u8F7D\u6587\u4EF6\uFF0C\u53EF\u80FD\u4ECD\u5728 115 \u540E\u53F0\u8F6C\u5B58\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5";return console.warn(`[magnet] \u672A\u83B7\u53D6\u5230\u6587\u4EF6 ${i}\uFF0C\u5DF2\u8F6E\u8BE2 ${f} \u6B21`),af.set(o,{ts:c,error:m}),I0(m)}return af.set(o,{ts:c,files:p}),await h3t(n,o,{files:p,ts:c,version:eB}),iCe(p)}async function m3t(e,t){let r=String(e.body?.id||"").split("*");if(!["own","gyown"].includes(r[0])||!r[1])return Xr("\u78C1\u529B\u64AD\u653E\u53C2\u6570\u9519\u8BEF",{msg:"\u78C1\u529B\u64AD\u653E\u53C2\u6570\u9519\u8BEF"});let n=e.server||e.raw?.server||e.routeOptions?.config?.server||globalThis.server;if(!n)return Xr("\u7F3A\u5C11 server \u4E0A\u4E0B\u6587",{msg:"\u7F3A\u5C11 server \u4E0A\u4E0B\u6587"});if(r[0]==="gyown"){let a="";try{a=decodeURIComponent(r[2]||"")}catch{a=String(r[2]||"")}let o=encodeURIComponent(Dt([r[1],a,Number(r[3]||0)||0],{structured:!0})),c=a.includes(".")?`.${a.split(".").pop()}`:".bin";return ei({parse:0,urls:[...Ia(e,"guangya","\u4EE3\u7406","down","own",o,c),...Ia(e,"guangya","\u539F\u753B","redirect","own",o,c)],header:QT})}let s=await Za(n);if(!s)return Xr("\u672A\u914D\u7F6E 115 cookie",{msg:"\u672A\u914D\u7F6E 115 cookie"});let i=await xx(s,r[1]);if(!i?.url){let a=i?.msg||"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740";return Xr(a,{msg:a})}return ei({parse:0,urls:["\u539F\u753B",i.url],header:{"User-Agent":efn,Cookie:i.cookie||s,Referer:"https://115.com/",Origin:"https://115.com"}})}async function g3t(e){if(af.clear(),!!e?.db)try{await e.db.delete("/y115_offline")}catch(t){console.warn("[magnet] clear /y115_offline failed:",t?.message)}}async function oCe(e){for(let t of af.keys())t.includes(":guangya:")&&af.delete(t);if(e?.db)try{let t=await e.db.getObjectDefault("/y115_offline",{}),r=Object.fromEntries(Object.entries(t||{}).filter(([n])=>!n.includes(":guangya:")));await e.db.push("/y115_offline",r)}catch(t){console.warn("[magnet] clear guangya offline cache failed:",t?.message)}}var aCe,efn,tfn,eB,rfn,af,yK,SK=ie(()=>{aCe=Ne(Yi(),1);zT();QE();HRe();Ds();yi();Ox();la();S0();ql();Zc();efn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",tfn=30*60*1e3,eB=5,rfn=60*1e3,af=new Map,yK=new Map});var E3t={};kt(E3t,{default:()=>TK,getCache:()=>Za,setCache:()=>A3t});async function TK(e){e.get("/qrcode",async(t,r)=>{Dx=(await ye.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{"User-Agent":cCe,referer:"https://115.com/"})).data.data;let s=await _3t.default.toBuffer(Dx.qrcode,{width:300,height:300});r.send(s)}),e.post("/cookie",(t,r)=>{ye.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${Dx.sign}&time=${Dx.time}&uid=${Dx.uid}`,{"User-Agent":cCe,referer:"https://115.com/"}).then(n=>n.data.data.status===2?Promise.resolve():Promise.reject(new Error(`\u626B\u7801\u72B6\u6001\u68C0\u6D4B\u5931\u8D25: ${n.data.message}`))).then(async()=>{let n=new URLSearchParams({account:Dx.uid,app:"android"}),s=await ye.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",n,{headers:{"User-Agent":cCe,referer:"https://115.com/"}});if(s.data.state===1)r.send({code:0,data:g0(s.headers["set-cookie"]).join("")});else return Promise.reject(new Error(`\u767B\u5F55\u5931\u8D25\uFF1A${s.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await Za(t.server)})}),e.put("/cookie",async(t,r)=>{await A3t(t.server,t.body.cookie),r.send({code:0})}),e.get("/folders",async(t,r)=>{try{let n=await Za(t.server);if(!n)return r.send({code:-1,message:"\u672A\u914D\u7F6E 115 cookie"});let s=String(t.query?.cid||"0"),i=await RBt(n,s);return r.send({code:0,data:i})}catch(n){return console.error("[115/folders]",n?.message),r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u76EE\u5F55\u5931\u8D25"})}}),e.get("/offline/settings",async(t,r)=>{let n={savePath:"0",pollAttempts:20,pollIntervalMs:1500},s=await t.server.db.getObjectDefault("/y115_settings",n);r.send({code:0,data:{...n,...s||{}}})}),e.post("/offline/settings",async(t,r)=>{let n=t.body||{},s={savePath:String(n.savePath||"0"),pollAttempts:Math.max(0,Math.min(50,Number(n.pollAttempts)||20)),pollIntervalMs:Math.max(200,Math.min(1e4,Number(n.pollIntervalMs)||1500))};await t.server.db.push("/y115_settings",s),r.send({code:0,data:s})}),e.post("/offline/clear",async(t,r)=>{try{let n=await Za(t.server);if(!n)return r.send({code:-1,message:"\u672A\u914D\u7F6E 115 cookie"});let s=!!t.body?.deleteSource;return await wBt(n,{deleteSource:s}),await g3t(t.server),r.send({code:0,data:{deleteSource:s}})}catch(n){return console.error("[115/offline/clear]",n?.message),r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u79BB\u7EBF\u5217\u8868\u5931\u8D25"})}}),e.post("/files/clean",async(t,r)=>{try{let n=await Za(t.server);if(!n)return r.send({code:-1,message:"\u672A\u914D\u7F6E 115 cookie"});let s=!!t.body?.recent,i=!!t.body?.recycle;if(!s&&!i)return r.send({code:-1,message:"\u672A\u9009\u62E9\u6E05\u7406\u9879"});let a=await LBt(n,{doRecent:s,doRecycle:i});return r.send({code:0,data:a})}catch(n){return console.error("[115/files/clean]",n?.message),r.send({code:-1,message:n?.message||"\u6E05\u7406 115 \u6587\u4EF6\u5931\u8D25"})}})}var _3t,tB,cCe,Dx,Za,A3t,zT=ie(()=>{vr();_3t=Ne(jE(),1),tB=Ne(Yi(),1);Ds();HRe();MBt();SK();cCe="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Dx={},Za=async e=>{let t=String(e.config?.y115?.cookie||""),r=tB.default.enc.Hex.stringify(tB.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/y115",{});return n[r]?n[r]:t?(await e.db.push(`/y115/${r}`,t),t):""},A3t=async(e,t)=>{let r=tB.default.enc.Hex.stringify(tB.default.MD5(e.config.y115.cookie)).toString();await e.db.push(`/y115/${r}`,t)}});function b3t(e){let t=4294967295;for(let r=0;r>>1^3988292384&-(t&1)}return(t^4294967295)>>>0}function I3t(e,t=8192){let r=0,n=Buffer.alloc(t),s=0;for(;r>4;if(a===15){let u;do{if(r>=e.length)throw new Error("LZ4 literal length overflow");u=e[r++],a+=u}while(u===255)}if(a>0){if(r+a>e.length)throw new Error("LZ4 literal out of bounds");if(s+a>n.length)throw new Error("LZ4 literal exceeds output");e.copy(n,s,r,r+a),r+=a,s+=a}if(r>=e.length)break;if(r+2>e.length)throw new Error("LZ4 missing match offset");let o=e[r]|e[r+1]<<8;if(r+=2,o<=0||o>s)throw new Error(`LZ4 invalid match offset: ${o}`);let c=i&15;if(c===15){let u;do{if(r>=e.length)throw new Error("LZ4 match length overflow");u=e[r++],c+=u}while(u===255)}if(c+=4,s+c>n.length)throw new Error("LZ4 match exceeds output");for(let u=0;u{XE=Ne(require("crypto"),1),ffn=Buffer.from([87,162,146,87,205,35,32,229,214,209,67,50,47,164,187,138,60,249,211,204,98,62,245,237,172,98,183,103,138,137,201,26,131,186,128,13,97,41,245,34,208,52,200,149,221,36,101,36,58,221,194,80,149,59,238,186]),uCe=28,T3t="^j>WD3Kr?J2gLFjD4W2y@",y3t=Buffer.from([251,26,25,214,82,245,170,247,188,101,29,15,105,191,66,47]),v3t=Buffer.from([105,191,66,47,73,150,5,80,160,173,68,236,52,70,203,76]),S3t=Buffer.from([29,3,14,128,161,120,220,238,206,205,163,119,222,18,141,142,217,221,207,85,174,97,237,70,234,18,26,28,252,129]);bK=class{static encodeToken(t){let r=Buffer.alloc(48),n=0;S3t.slice(0,15).copy(r,n),n+=15,r[n++]=0,r[n++]=115,r[n++]=0,r[n++]=0,r[n++]=0,r.writeUInt32LE(t,n),n+=4,S3t.slice(15).copy(r,n),n+=15,r[n++]=0,r[n++]=1,r[n++]=0,r[n++]=0,r[n++]=0;let s=b3t(Buffer.concat([Buffer.from(T3t),r.slice(0,44)]));return r.writeUInt32LE(s,n),r.toString("base64")}static encrypt(t){let r=Buffer.from(t),n=(16-r.length%16)%16,s=n?Buffer.concat([r,Buffer.alloc(n,n)]):r,i=XE.default.createCipheriv("aes-128-cbc",y3t,v3t);return i.setAutoPadding(!1),Buffer.concat([i.update(s),i.final()])}static decrypt(t){let r=t.length-t.length%16,n=XE.default.createDecipheriv("aes-128-cbc",y3t,v3t);n.setAutoPadding(!1);let s=Buffer.concat([n.update(t.slice(0,r)),n.final()]);if(s.length>=2){let a=s[0]|s[1]<<8;if(a>0&&a<=s.length-2)try{return I3t(s.slice(2,a+2))}catch(o){console.warn("[115-cipher] static LZ4 decompression failed, using raw decrypted data:",o?.message||o)}}let i=s[s.length-1];return i>0&&i<=16&&s.slice(-i).every(a=>a===i)&&(s=s.slice(0,-i)),s}},IK=class e{constructor(){this.key=null,this.iv=null,this.pubKey=null}static create(){let t=new e,r=XE.default.createECDH("secp224r1");r.generateKeys();let n=r.getPublicKey(),s=Buffer.concat([Buffer.from([4]),ffn]),i=r.computeSecret(s);t.key=i.slice(0,16),t.iv=i.slice(i.length-16);let a=n.slice(1,uCe+1),o=n.slice(uCe+1),u=(o[o.length-1]&1)===1?3:2;return t.pubKey=Buffer.concat([Buffer.from([uCe+1,u]),a]),t}encrypt(t){let r=hfn(Buffer.from(t),16),n=Buffer.alloc(r.length),s=Buffer.from(this.iv),i=XE.default.createCipheriv("aes-128-ecb",this.key,null);i.setAutoPadding(!1);for(let a=0;a=2){let o=a[0]|a[1]<<8;if(o>0&&o<=a.length-2)try{return I3t(a.slice(2,o+2))}catch(c){console.warn("[115-cipher] LZ4 decompression failed, using raw decrypted data:",c?.message||c)}}return a}encodeToken(t){let r=XE.default.randomBytes(1)[0],n=XE.default.randomBytes(1)[0],s=Buffer.alloc(48),i=Buffer.alloc(4);i.writeUInt32BE(t,0);let a=0;for(let l=0;l<15;l++)s[a++]=this.pubKey[l]^r;s[a++]=r,s[a++]=115^r;for(let l=0;l<3;l++)s[a++]=r;for(let l=0;l<4;l++)s[a++]=r^i[3-l];for(let l=15;ls||s>=e.length)throw new Error(`Range ${t} out of bounds for buffer size ${e.length}`);let i=e.slice(n,s+1);return WT.default.createHash("sha1").update(i).digest("hex").toUpperCase()}async function x3t(e){let{cookie:t,userId:r,userKey:n,fileName:s,fileSize:i,fileID:a,preID:o,dirID:c="0",buffer:u=null,readRangeBytes:l=null}=e,d=`U_1_${c}`,f=i.toString(),h=r.toString(),p=process.env.PAN115_RAPID_DYNAMIC_ECDH?IK.create():bK,m="",g="",_=!0;for(;_;){let y=Math.floor(Date.now()/1e3),A=y.toString(),E=p.encodeToken(y),v=[["appid",fCe==="0"?"":fCe],["appversion",C3t],["userid",h],["userkey",n],["filename",s],["filesize",f],["fileid",a],["target",d],["sig",_fn(n,h,a,d)],["t",A],["token",Afn(h,a,f,A,m,g,o)],["topupload",process.env.PAN115_RAPID_TOPUPLOAD||"true"],["sign_key",m],["sign_val",g]],b=new URLSearchParams(v.filter(([,G])=>G).sort(([G],[$])=>G.localeCompare($))).toString(),I=p.encrypt(b),T=`${mfn}?k_ec=${encodeURIComponent(E)}`,x=await fetch(T,{method:"POST",headers:{Cookie:t,"Content-Type":"application/x-www-form-urlencoded","User-Agent":gfn},body:I});if(!x.ok)throw new Error(`HTTP ${x.status}: ${x.statusText}`);let w=Buffer.from(await x.arrayBuffer()),D=p.decrypt(w),M=(()=>{let G=D.indexOf(123),$=D.indexOf(91);return G===-1?$:$===-1?G:Math.min(G,$)})();if(M<0)throw new Error(`115 API returned non-JSON response: ${D.slice(0,32).toString("hex")}`);let L=D.slice(M).toString("utf8").trim(),U;try{U=JSON.parse(L)}catch(G){throw new Error(`115 API JSON parse failed: ${G.message}; text=${L.slice(0,160)}; hex=${D.slice(0,96).toString("hex")}`)}if(U.status===7&&U.sign_key&&U.sign_check){if(m=U.sign_key,u)g=Efn(u,U.sign_check);else if(typeof l=="function"){let G=Buffer.from(await l(U.sign_check));g=WT.default.createHash("sha1").update(G).digest("hex").toUpperCase()}else throw new Error("Status 7 requires file buffer or readRangeBytes for sign_val, but neither was provided");continue}if(U.statuscode&&U.statuscode!==0)throw new Error(`115 API error ${U.statuscode}: ${U.statusmsg||"Unknown error"}`);if(U.status===7)throw new Error("Status 7 missing sign_key/sign_check");return _=!1,{pickCode:U.pickcode,status:U.status,fileID:U.fileid,target:U.target,sha1:a}}}var WT,mfn,lCe,fCe,C3t,gfn,dCe,w3t=ie(()=>{WT=Ne(require("crypto"),1);R3t();mfn=process.env.PAN115_RAPID_INIT_URL||"https://uplb.115.com/4.0/initupload.php",lCe="Qclm8MGWUv59TnrR0XPg",fCe=process.env.PAN115_RAPID_APP_ID||"0",C3t=process.env.PAN115_RAPID_APP_VERSION||"99.99.99.99",gfn=process.env.PAN115_RAPID_UA||"Mozilla/5.0 115disk/99.99.99.99 115Browser/99.99.99.99 115wangpan_android/99.99.99.99",dCe=process.env.PAN115_RAPID_TOKEN_VERSION||C3t});var O3t={};kt(O3t,{aliTo115:()=>N3t,aliTo115FullFlow:()=>bfn,cancelAllCleanups:()=>Ifn});function Sfn(e,t,r){let n=setTimeout(async()=>{try{await URe(e,t),console.log(`[ali-to-115] Cleaned up 115 temp file: ${t}`)}catch(s){console.warn(`[ali-to-115] 115 cleanup failed for ${t}:`,s?.message)}finally{RK.delete(n)}},r);return RK.add(n),n}function Tfn(e){hCe(e).then(()=>console.log(`[ali-to-115] Cleaned up Ali temp file: ${e}`),t=>console.warn(`[ali-to-115] Ali cleanup failed for ${e}:`,t?.message))}async function N3t(e){let{shareUrl:t,fileId:r,fileName:n,fileSize:s,cookie115:i}=e;console.log(`[ali-to-115] Starting: ${n} (${s} bytes)`);let a=null,o=null;try{let c=JE(t);if(!c)throw new Error("Invalid Aliyun share URL");console.log(`[ali-to-115] Step 1: Parsed share ${c.shareId}`),a=await P3t(c.shareId,r),console.log(`[ali-to-115] Step 2: Saved to Aliyun drive: ${a}`);let u=await L3t(a);if(!u.contentHash)throw new Error("Aliyun did not return content_hash");console.log(`[ali-to-115] Step 3: Got content_hash: ${u.contentHash}`);let l=await gBt(i);console.log(`[ali-to-115] Step 4: Got 115 user info: ${l.userId}`);let d="0";console.log(`[ali-to-115] Step 5: Using 115 target dir: ${d} (root)`);let f=async m=>{let g=await fetch(u.url,{headers:{Range:`bytes=${m}`,"User-Agent":"Mozilla/5.0"},redirect:"follow"});if(!g.ok&&g.status!==206)throw new Error(`Aliyun range fetch failed: HTTP ${g.status}`);return Buffer.from(await g.arrayBuffer())},h=await x3t({cookie:i,userId:l.userId,userKey:l.userKey,fileName:n,fileSize:s,fileID:u.contentHash,preID:yfn,dirID:d,readRangeBytes:f});o=h.fileID,console.log(`[ali-to-115] Step 6: Rapid upload success! pickCode: ${h.pickCode}`);let p=await _Bt(i,h.pickCode);return p.fileId&&(o=p.fileId),console.log(`[ali-to-115] Step 7: Got 115 direct URL, fileId=${o||"(unknown)"}`),o?Sfn(i,o,vfn):console.warn("[ali-to-115] Step 8: skipping 115 cleanup \u2014 no file_id resolved"),Tfn(a),a=null,{pickCode:h.pickCode,contentHash:u.contentHash,url:p.url,cookie:p.cookie}}catch(c){throw console.error(`[ali-to-115] Failed for ${n}:`,c?.message||c),a&&hCe(a).catch(u=>console.warn("[ali-to-115] Ali error-cleanup failed:",u?.message)),o&&URe(i,o).catch(u=>console.warn("[ali-to-115] 115 error-cleanup failed:",u?.message)),c}}function Ifn(){for(let e of RK)clearTimeout(e);RK.clear(),console.log("[ali-to-115] All cleanup tasks cancelled")}var yfn,vfn,RK,bfn,D3t=ie(()=>{Px();QE();w3t();yfn="2EF7BDE608CE5404E97D5F042F95F89F1C232871",vfn=30*1e3,RK=new Set;bfn=N3t});function JE(e){let t=Rfn.exec(e);return t?{shareId:t[1]||t[4],folderId:t[3]||t[6]||"root"}:null}async function Wg(e){if(k3t&&ey)return;ey=e.server.db;let t=e.server.config?.ali||{},r=String(t?.token||"").trim();ty=Qg.default.enc.Hex.stringify(Qg.default.MD5(r)).toString();let n=await ey.getObjectDefault(H3t,{});n[ty]?JT=n[ty]:r?JT=r:JT="",k3t=!0}async function PK(e,t=3,r=1e3){for(let n=0;n{let i=await Xe.post(`${Cfn}/${e}`,t,{headers:r}).catch(a=>(console.error(a),a.response||{status:500,data:{}}));return i.status===429&&(n||3)>0?(await Yt(1e3),await eb(e,t,r,(n||3)-1)):i.data||{}},3,1e3)}async function of(e,t,r,n){return r=r||{},Object.assign(r,{Authorization:eo.auth}),PK(async()=>{let i=await Xe.post(`${xfn}/${e}`,t,{headers:r}).catch(a=>(console.error(a),a.response||{status:500,data:{}}));return i.status===429&&(n||3)>0?(await Yt(1e3),await of(e,t,r,(n||3)-1)):i.data||{}},3,1e3)}async function rB(){if(!JT){Yn={};return}if(!Yn.user_id||Yn.expire_time-(0,Yg.default)().unix()<120){let e=await Xe.post("https://auth.aliyundrive.com/v2/account/token",{refresh_token:JT,grant_type:"refresh_token"},{headers:gCe}).catch(t=>t.response||{status:500,data:{}});e.status===200&&(Yn=e.data,Yn.expire_time=(0,Yg.default)(e.data.expire_time).unix(),Yn.auth=`${Yn.token_type} ${Yn.access_token}`,JT=Yn.refresh_token,await ey.push(H3t+"/"+ty,Yn.refresh_token))}}function j3t(e={}){if(!e?.access_token)return null;let t={...e};if(!t.expire_time)try{let r=String(t.access_token||"").split(".")[1],n=JSON.parse(Qg.default.enc.Base64.parse(r).toString(Qg.default.enc.Utf8));t.expire_time=Number(n.exp||0)}catch{t.expire_time=(0,Yg.default)().unix()+Math.max(Number(t.expires_in||7200)-60,300)}return t.token_type=t.token_type||"Bearer",t.auth=`${t.token_type} ${t.access_token}`,t.expire_time>(0,Yg.default)().unix()?t:null}async function wfn(){if(!ey||!ty)return null;let e=await ey.getObjectDefault(`${V3t}/${ty}`,null),t=j3t(e);return t&&t.expire_time-(0,Yg.default)().unix()>120?(eo=t,eo):null}async function K3t(e){let t=j3t(e);return t?(eo=t,ey&&ty&&await ey.push(`${V3t}/${ty}`,t),eo):null}async function G3t(e){let t=await PK(()=>Xe.post("https://aliyundrive-oauth.messense.me/oauth/access_token",e,{timeout:15e3,headers:{"Content-Type":"application/json"}}),2,1200);return t?.status===200?t.data:null}async function Nfn(){if(!eo?.refresh_token)return null;try{let e=await G3t({refresh_token:eo.refresh_token,grant_type:"refresh_token"});return await K3t(e)}catch(e){return console.warn("[ali] OpenAPI refresh_token \u5237\u65B0\u5931\u8D25\uFF0C\u51C6\u5907\u56DE\u9000\u4E8C\u7EF4\u7801\u6388\u6743:",e?.message||e),null}}async function Ofn(){let e=await PK(()=>Xe.post("https://aliyundrive-oauth.messense.me/oauth/authorize/qrcode",{scopes:["user:base","file:all:read","file:all:write"],width:300,height:300},{timeout:15e3,headers:{"Content-Type":"application/json"}}),2,1200);if(!e.data?.sid)return console.error("\u83B7\u53D6sid\u5931\u8D25"),null;let t=e.data.sid;if(!(await Xe.post(`https://open.aliyundrive.com/oauth/users/qrcode/authorize?sid=${t}`,{authorize:1,scope:"user:base,file:all:read,file:all:write",drives:["backup","resource"],scopes:["user:base","file:all:read","file:all:write"],sid:t},{timeout:15e3,headers:{authorization:Yn.auth}})).data?.result)return console.error("\u83B7\u53D6\u6388\u6743flag\u5931\u8D25"),null;let n=null;for(let i=0;i<30;i++){await Yt(1e3);let a=await Xe.get(`https://openapi.aliyundrive.com/oauth/qrcode/${t}/status`,{timeout:1e4});if(a.data?.status==="LoginSuccess"){n=a.data.authCode;break}}if(!n)return console.error("\u83B7\u53D6\u6388\u6743code\u8D85\u65F6"),null;let s=await G3t({code:n,grant_type:"authorization_code"});return await K3t(s)}async function Dfn(){if(eo?.access_token&&eo.expire_time-(0,Yg.default)().unix()>120||await wfn())return eo;if(await rB(),!Yn.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6\u7528\u6237\u6388\u6743"),null;if(await Nfn())return eo;try{return await Ofn()}catch(e){return console.error("driveAuth\u5931\u8D25:",e?.message||e),null}}async function nB(){return CK||(CK=Dfn().finally(()=>{CK=null})),await CK}async function U3t(){let e=await of("openFile/list",{drive_id:Yn.drive.resource_drive_id,parent_file_id:ZE,limit:100,order_by:"updated_at",order_direction:"DESC"});if(e.items){let t=e.items.map(r=>of("openFile/delete",{drive_id:Yn.drive.resource_drive_id,file_id:r.file_id}));await Promise.all(t)}}async function z3t(e){if(!Yn.device_id)return;if(ZE){e&&await U3t();return}if(await nB(),!eo.auth){console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743");return}let t=await of("user/getDriveInfo",{});if(t.resource_drive_id){Yn.drive=t;let r=t.resource_drive_id,n=await of("openFile/list",{drive_id:r,parent_file_id:"root",limit:100,order_by:"updated_at",order_direction:"DESC"});if(n.items){for(let s of n.items)if(s.name===B3t){ZE=s.file_id,await U3t();break}if(!ZE){let s=await of("openFile/create",{check_name_mode:"refuse",drive_id:r,name:B3t,parent_file_id:"root",type:"folder"});s.file_id&&(ZE=s.file_id)}}}}async function LK(e){let t=e.shareId,r=XT.get(t);if(!r||r.expire_time-(0,Yg.default)().unix()<120){if(xK.has(t)){await xK.get(t);return}let n=(async()=>{try{XT.delete(t);let s=await eb("v2/share_link/get_share_token",{share_id:e.shareId,share_pwd:e.sharePwd||""});s?.expire_time?(s.expire_time=(0,Yg.default)(s.expire_time).unix(),XT.set(t,s)):console.warn("[ali detail] get_share_token empty",JSON.stringify({shareId:e.shareId,folderId:e.folderId||"root",hasToken:!!s?.share_token,code:s?.code??null,message:s?.message||""}))}finally{xK.delete(t)}})();xK.set(t,n),await n}}async function Y3t(e,t,r={}){let n=typeof e=="string"?JE(e):e;if(!n)return[];await LK(n);let s=XT.get(n.shareId);if(!s)return console.warn("[ali share] no cached share token",JSON.stringify({shareId:n.shareId,folderId:t||n.folderId||"root"})),[];let i=[],a=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),o=a>0,c=Math.max(1,Math.min(200,Number(r.pageLimit||r.perPage||r.batchSize)||200)),u=Math.max(1,Number(r.batchSize)||500),l=Math.max(0,Number(r.batchIntervalMs)||0),d="",f=0,h=1,p=0,m=0;do{let g=await eb("adrive/v2/file/list_by_share",{share_id:n.shareId,parent_file_id:t||n.folderId||"root",limit:c,order_by:"name",order_direction:"ASC",marker:d},{"X-Share-Token":s.share_token}),_=Array.isArray(g?.items)?g.items:[];if(m+=_.length,(!o||h===a)&&i.push(..._),f+=_.length,p=Number(g?.total||g?.total_count||p||0),d=g?.next_marker||"",o&&h>=a){let y=p>0?p:(a-1)*c+_.length+(d?c:0);return{items:i,paged:!0,page:a,pageSize:c,total:Math.max(y,(a-1)*c+i.length)}}d&&l>0&&f>=u&&(f=0,await Yt(l)),h+=1}while(d);if(o){let g=p>0?p:m;return{items:i,paged:!0,page:a,pageSize:c,total:g}}return i}async function Q3t(e){let t=typeof e=="string"?JE(e):e;if(!t)return[];await LK(t);let r=XT.get(t.shareId);if(!r)return console.warn("[ali detail] no cached share token",JSON.stringify({shareId:t.shareId,folderId:t.folderId||"root"})),[];let n=[],s=async(i,a,o="",c)=>{let u=await eb("adrive/v2/file/list_by_share",{share_id:i,parent_file_id:a,limit:200,order_by:"name",order_direction:"ASC",marker:c||""},{"X-Share-Token":r.share_token}),l=u.items;if(!l){console.warn("[ali detail] list items empty",JSON.stringify({shareId:i,folderId:a,currentPath:o,nextMarker:c||"",code:u?.code??null,message:u?.message||""}));return}let d=[],f=[],h=[];for(let g of l)g.type==="folder"?h.push({item:g,path:o+(o?"/":"")+g.name}):g.type==="file"&&g.category==="video"?(g.name=g.name.replace(/玩偶哥.*【神秘的哥哥们】/g,""),g.fullPath=o+(o?"/":"")+g.name,d.push(g)):g.type==="file"&&St(g.name)&&f.push(g);for(let g of d){let _=xr(g.name,f,y=>y.name);_?.file_id&&(g.subtitle={file_id:_.file_id})}let p=Gt(d);n.push(...p);let m=h.map(g=>s(i,g.item.file_id,g.path));await Promise.all(m),u.next_marker&&await s(i,a,o,u.next_marker)};return await s(t.shareId,t.folderId,""),n}function Pfn(e,t){let n=(wK.get(e)||Promise.resolve()).catch(()=>{}).then(()=>t()),s=n.catch(()=>{});return wK.set(e,s),s.finally(()=>{wK.get(e)===s&&wK.delete(e)}),n}async function W3t(e,t,r){return Pfn(e,()=>Lfn(e,t,r))}async function Lfn(e,t,r){if(await rB(),await z3t(r),r&&ZT.clear(),!ZE)return null;await LK({shareId:e});let n=XT.get(e);return n?(await eb("adrive/v2/file/copy",{file_id:t,share_id:e,auto_rename:!0,to_parent_file_id:ZE,to_drive_id:Yn.drive.resource_drive_id},{"X-Share-Token":n.share_token})).file_id||!1:null}async function X3t(e,t){if(!ZT.has(t)){let s=await W3t(e,t,!0);if(!s)return null;ZT.set(t,s)}if(await nB(),!eo.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743\uFF0C\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F"),null;let n=(await of("openFile/getVideoPreviewPlayInfo",{file_id:ZT.get(t),drive_id:Yn.drive.resource_drive_id,category:"live_transcoding",url_expire_sec:"14400"}))?.video_preview_play_info;return n?.quick_video_list??n?.live_transcoding_task_list}async function Mfn(e,t){if(!ZT.has(t)){let n=await W3t(e,t,!0);if(!n)return null;ZT.set(t,n)}if(await nB(),!eo.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743\uFF0C\u65E0\u6CD5\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5"),null;let r=await of("openFile/getDownloadUrl",{file_id:ZT.get(t),drive_id:Yn.drive.resource_drive_id});return r.url?r:null}async function J3t(e,t){if(t&&await Wg(t),await sMt(e)){let r=JE(e);if(r){let n=await Q3t(r);if(n?.length>0){let s=await ht("ali"),i=n.map(c=>({vod_id:Dt([c.share_id,c.file_id,c.subtitle?.file_id||""],{structured:!0}),vod_name:c.name,vod_size:c.size})),a=tf(ar.ali.original,ba(s,i)),o=tf(ar.ali.rapid115,ba("\u79D2\u4F20115",n.map(c=>({vod_id:Dt([r.shareId,c.file_id,c.subtitle?.file_id||"",e,c.name||"",c.size??""],{structured:!0}),vod_name:c.name,vod_size:c.size}))));return[...a,...o]}}}return[]}function qfn(e){let t=F3t.get(e);return t||(t=new mCe(Z3t),F3t.set(e,t)),t}function Hfn(e){let t=String(e||"").match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z$/);return t?Date.UTC(Number(t[1]),Number(t[2])-1,Number(t[3]),Number(t[4]),Number(t[5]),Number(t[6])):0}function Vfn(e){try{let t=new URL(e),r=Hfn(t.searchParams.get("x-oss-date")),n=Number(t.searchParams.get("x-oss-expires")||0);if(r>0&&Number.isFinite(n)&&n>0)return r+n*1e3;let s=Number(t.searchParams.get("Expires")||t.searchParams.get("expires")||0);if(Number.isFinite(s)&&s>1e9)return s*1e3}catch{}return 0}function OK(e,t=$fn){let r=Vfn(e);return r>0&&r-Date.now()<=t}function _Ce(e){let t=String(e?.server?.config?.ali?.token||"");return Qg.default.enc.Hex.stringify(Qg.default.MD5(t)).toString()}async function jfn(e){let t=_Ce(e),r=await e.server.db.getObjectDefault(`/ali/settings/${t}`,$3t),n=Qi(r,$3t);return n.poolSize=Math.min(Z3t,n.poolSize),n}function eUt(e,t,r){return`${_Ce(e)}:${t}:${r}`}async function ACe(e,t,r,n=!1){let s=eUt(e,t,r),i=n?null:Lx.get(s);return i?.url&&OK(i.url)&&(Lx.delete(s),i=null),i||(i=await Mfn(t,r),i?.url&&Lx.set(s,i)),{cacheKey:s,down:i}}function Kfn(e,t,r,n){let s=_Ce(e),i=eUt(e,t,r),a=qfn(s),o={disposed:!1},c=n,u=null,l=0,d=async()=>(u||(u=ACe(e,t,r,!0).then(f=>{if(c=f.down,!c?.url)throw new Error("\u65E0\u6CD5\u5237\u65B0\u963F\u91CC\u4E0B\u8F7D\u94FE\u63A5");return c}).finally(()=>{u=null})),u);return{async resolve(f={}){if(o.disposed)throw new Error("ali source resolver disposed");let h=Number(f.previousStatus||0),p=Number(f.attempt||0),m=!c?.url||OK(c.url),g=[401,404,410].includes(h)||h===403&&(m||p>=2);m||g?(Lx.delete(i),await d()):h===403&&l>Date.now()&&await Yt(l-Date.now());let _=await a.acquire(o);if(o.disposed)throw _(),new Error("ali source resolver disposed");let y=c.url,A="";try{A=new URL(y).host}catch{}let E=Qg.default.enc.Hex.stringify(Qg.default.MD5(y)).toString();return{url:y,hostKey:A,signatureKey:E,release(v={}){let b=Number(v.status||0);[401,404,410].includes(b)||b===403&&OK(y)?(Lx.delete(i),c?.url===y&&(c=null)):b===403&&(a.penalize(),l=Math.max(l,Date.now()+250)),_()}}},dispose(){o.disposed||(o.disposed=!0,a.cancel(o))}}}async function q3t(e){if(e.plist)return e.plist;let t=await Xe.get(e.url,{headers:{"User-Agent":lx}}),r=DK.parse(t.data);return r.segments.forEach((n,s)=>{let i=n.uri.startsWith("http")?n.uri:new URL(n.uri,e.url).toString();n.suri=i,n.uri=`${s}.ts`}),e.plist=r,r}async function tUt(e,t){await Wg(e);let r=e.params.site,n=e.params.what,s=e.params.shareId,i=e.params.fileId;if(r!=="ali")return;let a=e.params.flag,o=e.params.end;if(n==="trans"){let c=NK.get(i);if(c){let l=c.find(d=>d.template_id.toLowerCase()===a)?.url;l&&OK(l,15*1e3)&&(NK.delete(i),c=null)}if(!c){if(c=await X3t(s,i),!c)return t.code(500),"\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\uFF0C\u8BF7\u68C0\u67E5\u6388\u6743";NK.set(i,c)}let u=c.find(l=>l.template_id.toLowerCase()===a);if(!u?.url)return t.code(404),"\u6307\u5B9A\u7684\u963F\u91CC\u8F6C\u7801\u683C\u5F0F\u6682\u65E0\u53EF\u7528\u5730\u5740";if(o?.endsWith(".ts")){await q3t(u);let l=Number.parseInt(o.replace(/\.ts$/i,""),10),d=u.plist.segments[l];if(d?.suri){t.redirect(d.suri);return}return t.code(404),"\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u963F\u91CC\u8F6C\u7801\u5206\u7247"}else{await q3t(u);let l=DK.stringify(u.plist);return t.code(200).headers({"content-type":"audio/x-mpegurl","content-length":l.length.toString()}),l}}else{let c=await ACe(e,s,i),u=c.down;if(!u)return t.code(500),"\u65E0\u6CD5\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\uFF0C\u8BF7\u68C0\u67E5\u6388\u6743";if(a==="subt"){t.redirect(u.url);return}if(a==="redirect"){t.redirect(u.url);return}if(a==="down"){let l=await jfn(e);if(!l.useMultithread){t.redirect(u.url);return}let d=Number(u.size||u.file_size||u.fileSize||0),f=d>0?d:null,h=Kfn(e,s,i,u);try{return await oc(e,t,u.url,c.cacheKey,{},{chunkSize:l.chunkSize,poolSize:l.poolSize,timeout:Ufn,maxRetries:Ffn,initialChunkSize:Math.min(kfn,l.chunkSize),startupPoolSize:1,maxCacheBytes:64*1024*1024,resolveUrl:p=>h.resolve(p),disposeUrlResolver:()=>h.dispose()},f,!0)}catch(p){console.error("[ali proxy] chunkStream error, clearing cache:",p.message),Lx.delete(c.cacheKey),t.sent||t.code(503).send({error:"stream error, please retry"});return}}t.sent||t.code(400).send({error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"})}}async function sB(e,t){await Wg(e);let r=e.body.flag,n=e.body.id;if(r.startsWith("\u79D2\u4F20115")){let s;try{s=Br(n,{minLength:3,fieldOrder:[...M3t,"shareUrl","fileName","fileSize"]})}catch{return Xr("\u79D2\u4F20115\u64AD\u653E\u53C2\u6570\u65E0\u6548")}let{shareId:i,fileId:a,shareUrl:o,fileName:c="",fileSize:u=""}=s,l=JE(o);if(!l)return Xr("\u65E0\u6548\u7684\u963F\u91CC\u4E91\u76D8\u5206\u4EAB\u94FE\u63A5");let d=c,f=u;if(!d){let p=(await Q3t(l)).find(m=>m.file_id===a);if(!p)return Xr("\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u6587\u4EF6");d=p.name,f=p.size}console.log(`[ali-to-115] Play request: ${d}`);try{let{getCache:h}=await Promise.resolve().then(()=>(zT(),E3t)),p=await h(e.server);if(!p)return Xr("115 Cookie \u672A\u914D\u7F6E\uFF0C\u8BF7\u5148\u914D\u7F6E115\u8D26\u53F7");let{aliTo115FullFlow:m}=await Promise.resolve().then(()=>(D3t(),O3t)),g=await m({shareUrl:o,fileId:a,fileName:d,fileSize:f,cookie115:p});return console.log(`[ali-to-115] Success: ${d}`),ei({parse:0,urls:["\u539F\u753B",g.url],header:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Cookie:g.cookie||p,Referer:"https://115.com/",Origin:"https://115.com"}})}catch(h){return console.error(`[ali-to-115] Play failed for ${d}:`,h?.message||h),Xr(`\u79D2\u4F20115\u5931\u8D25: ${h?.message||"\u672A\u77E5\u9519\u8BEF"}`)}}if(r.startsWith(await ht("ali"))){let s;try{s=Br(n,{minLength:2,fieldOrder:M3t})}catch{return Xr("\u963F\u91CC\u4E91\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}let{shareId:i,fileId:a,subtitleFileId:o=""}=s,u=(await ACe(e,i,a)).down?.url||"",l=[...Ia(e,"ali","\u4EE3\u7406","down",i,a,".bin"),...u?["\u539F\u753B",u]:Ia(e,"ali","\u539F\u753B","redirect",i,a,".bin")],d=[];o&&d.push(v0(e,"ali",i,o,".bin",{name:"\u5916\u6302\u5B57\u5E55",format:"bin"}));let f=await X3t(i,a);if(f){NK.set(a,f),f.sort((_,y)=>y.template_width-_.template_width);let h={QHD:"\u8D85\u6E05",FHD:"\u9AD8\u6E05",HD:"\u6807\u6E05",SD:"\u666E\u753B",LD:"\u6781\u901F"},p=f.filter(_=>{if(!_?.url)return!1;try{let y=new URL(_.url);return y.protocol==="http:"||y.protocol==="https:"}catch{return!1}}),m=f.some(_=>String(_?.template_id).toUpperCase()==="QHD"),g=p.some(_=>String(_.template_id).toUpperCase()==="QHD");m&&!g&&u&&l.push("\u8D85\u6E05",u),p.forEach(_=>{let y=h[_.template_id]||_.template_id;l.push(y,hMt(e,"ali",_.template_id.toLowerCase(),i,a,".m3u8"))})}else console.warn("[ali play] \u8F6C\u7801\u4FE1\u606F\u83B7\u53D6\u5931\u8D25\uFF0C\u964D\u7EA7\u4E3A\u4EE3\u7406/\u539F\u753B\u7EBF\u8DEF");return ei({parse:0,urls:l,subtitles:d,header:gCe})}}async function rUt(){if(await rB(),!Yn.auth||(await nB(),!eo.auth))return null;if(!Yn.drive?.resource_drive_id){let e=await of("user/getDriveInfo",{});e?.resource_drive_id&&(Yn.drive=e)}return Yn.drive?.resource_drive_id||Yn.drive?.default_drive_id||""}async function nUt(e="root",t=""){let r=await rUt();if(!r)return{items:[],next_marker:"",drive_id:""};let n=await of("openFile/list",{drive_id:r,parent_file_id:e||"root",limit:200,order_by:"name",order_direction:"ASC",marker:t||""});return{items:Array.isArray(n?.items)?n.items:[],next_marker:String(n?.next_marker||""),drive_id:r}}async function ECe(e){let t=await rUt();if(!t||!e)return"";let r=await of("openFile/getDownloadUrl",{drive_id:t,file_id:e});return String(r?.url||"").trim()}async function P3t(e,t,r=null){if(await rB(),r||(await z3t(!1),r=ZE),!r){let i={hasToken:!!JT,hasUser:!!Yn.user_id,hasDeviceId:!!Yn.device_id,hasOauth:!!eo.auth,hasDrive:!!Yn.drive?.resource_drive_id};throw console.error("[ali][saveShareFile] \u65E0\u6CD5\u521B\u5EFA\u4FDD\u5B58\u76EE\u5F55\uFF0C\u8C03\u8BD5\u4FE1\u606F:",JSON.stringify(i)),new Error(`\u65E0\u6CD5\u521B\u5EFA\u4FDD\u5B58\u76EE\u5F55: ${JSON.stringify(i)}`)}await LK({shareId:e});let n=XT.get(e);if(!n)throw new Error("\u65E0\u6CD5\u83B7\u53D6\u5206\u4EAB token");let s=await eb("adrive/v2/file/copy",{file_id:t,share_id:e,auto_rename:!0,to_parent_file_id:r,to_drive_id:Yn.drive.resource_drive_id},{"X-Share-Token":n.share_token});if(!s.file_id)throw new Error("\u4FDD\u5B58\u6587\u4EF6\u5931\u8D25");return s.file_id}async function L3t(e){if(await nB(),!eo.auth)throw new Error("\u65E0\u6CD5\u83B7\u53D6 OpenAPI \u6388\u6743");let t=await of("openFile/getDownloadUrl",{file_id:e,drive_id:Yn.drive.resource_drive_id});if(!t.url)throw new Error("\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25");return{url:t.url,contentHash:t.content_hash||null,size:t.size||0,expiration:t.expiration||null}}async function hCe(e){if(e){await rB();try{await eb("adrive/v2/recyclebin/trash",{drive_id:Yn.drive.resource_drive_id,file_id:e})}catch(t){console.warn("[ali][deleteFile] failed:",t?.message||t)}}}var Yg,Qg,DK,M3t,Rfn,Cfn,xfn,XT,Yn,eo,ey,k3t,H3t,B3t,ZE,ty,JT,CK,V3t,gCe,xK,ZT,wK,NK,Lx,kfn,Bfn,Z3t,Ufn,Ffn,$fn,mCe,F3t,$3t,Px=ie(()=>{Yg=Ne(T4(),1),Qg=Ne(Yi(),1);Ds();Cr();DK=Ne(JLt(),1);la();PE();Jc();yi();Zc();ql();S0();A0();jg();kE();el();M3t=["shareId","fileId","subtitleFileId"],Rfn=/https:\/\/www\.alipan\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?|https:\/\/www\.aliyundrive\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?/;Cfn="https://api.aliyundrive.com",xfn="https://open.aliyundrive.com/adrive/v1.0",XT=ts("ali.shareToken",{maxSize:200,ttl:30*60*1e3}),Yn={},eo={},ey=null,k3t=!1,H3t="/ali",B3t="CatVodOpen",ZE=null,ty="",JT="",CK=null,V3t="/ali/oauth",gCe={"User-Agent":lx,Referer:"https://www.aliyundrive.com/"};xK=new Map;ZT=ts("ali.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),wK=new Map;NK=ts("ali.transcoding",{maxSize:500,ttl:30*60*1e3}),Lx=ts("ali.downloading",{maxSize:500,ttl:60*60*1e3}),kfn=128*1024,Bfn=6,Z3t=As.maxPoolSize,Ufn=15*1e3,Ffn=4,$fn=2*60*1e3,mCe=class{constructor(t){this.maxActive=t,this.active=0,this.waiting=[],this.penaltyUntil=0}getEffectiveMax(){return Date.now(){this.waiting.push({owner:t,resolve:r,reject:n})})}createRelease(){let t=!1;return()=>{t||(t=!0,this.active=Math.max(0,this.active-1),this.drain())}}cancel(t){let r=[];for(let n of this.waiting)n.owner===t?n.reject(new Error("ali source resolver disposed")):r.push(n);this.waiting=r}drain(){for(;this.active0;){let t=this.waiting.shift();if(t.owner.disposed){t.reject(new Error("ali source resolver disposed"));continue}this.active+=1,t.resolve(this.createRelease())}}},F3t=new Map;$3t={chunkSize:512*1024,poolSize:Bfn,useMultithread:!0}});async function oB(e){if(e.includes("pan.qoark.cn"))try{let r=sUt.exec(e);if(r&&r[1])return{shareId:r[1],folderId:"0"};let n=await ye.get(e,{maxRedirects:2,timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"}}),s=n.request?.res?.responseUrl||n.headers?.location||e;if(s.startsWith("/")){let i=new URL(e);s=`${i.protocol}//${i.host}${s}`}e=s}catch(r){console.error("\u5938\u514B\u77ED\u94FE\u63A5\u91CD\u5B9A\u5411\u5931\u8D25:",r);let n=sUt.exec(e);return n&&n[1]?{shareId:n[1],folderId:"0"}:null}let t=Gfn.exec(e);return t?{shareId:t[1],folderId:"0"}:null}async function dp(e){let r=(e?.server?.config?.quark||{}).cookie||"",n=nb.default.enc.Hex.stringify(nb.default.MD5(r)).toString();if((!iUt||!Mx||tb!==n||!vi)&&(Mx=e.server.db,vi=r,tb=n),Mx){let s=await Mx.getObjectDefault("/quark",{});s[tb]&&s[tb]!==vi&&(vi=s[tb])}iUt=!0}async function jl(e,t,r,n,s){return r=r||{},Object.assign(r,ry),Object.assign(r,{Cookie:vi||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await Xe.get(`${aUt}/${e}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&tn.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await Xe.post(`${aUt}/${e}`,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&tn.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&vi.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(vi=vi.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Mx.push(`/quark/${tb}`,vi))}return a.status===429&&(s||3)>0?(await Yt(1e3),await jl(e,t,r,n,(s||3)-1)):a.data||{}})()}async function TCe(e,t,r,n,s){return r=r||{},Object.assign(r,ry),Object.assign(r,{Cookie:vi||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await Xe.get(e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&tn.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await Xe.post(e,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&tn.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&vi.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(vi=vi.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Mx.push(`/quark/${tb}`,vi))}return a.status===429&&(s||3)>0?(await Yt(1e3),await TCe(e,t,r,n,(s||3)-1)):a.data||{}})()}async function uUt(){let e=await jl(`file/sort?${Vl}&pdir_fid=${rb}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data?.list?.length>0){let t=e.data.list.map(r=>jl(`file/delete?${Vl}`,{action_type:2,filelist:[r.fid],exclude_fids:[]}));await Promise.all(t)}}async function zfn(e){if(rb){e&&await uUt();return}let t=await jl(`file/sort?${Vl}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data?.list){for(let r of t.data.list)if(r.file_name===cUt){rb=r.fid,await uUt();break}}if(!rb){let r=await jl(`file?${Vl}`,{pdir_fid:"0",file_name:cUt,dir_path:"",dir_init_lock:!1});r.data?.fid&&(rb=r.data.fid)}}function Qfn(e){if(e?.file!==!0)return!1;if(e.obj_category==="video")return!0;let t=String(e.file_name||"").toLowerCase();return Yfn.some(r=>t.endsWith(r))}async function aB(e){let t=`${e.shareId}_${e.sharePwd||""}`,r=oUt.get(t);if(r)return r;if(MK.has(t))return await MK.get(t);let n=(async()=>{try{let s=await jl(`share/sharepage/token?${Vl}`,{pwd_id:e.shareId,passcode:e.sharePwd||""});return s.data?.stoken?(oUt.set(t,s.data),s.data):null}finally{MK.delete(t)}})();return MK.set(t,n),await n}async function hUt(e,t,r={}){let n=typeof e=="string"?await oB(e):e;if(!n)return[];let s=await aB(n);if(!s)return[];let i=[],a=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),o=a>0,c=Math.max(1,Math.min(200,Number(r.pageLimit||r.perPage||200)||200)),u=Math.max(1,Number(r.batchSize)||1e3),l=Math.max(0,Number(r.batchIntervalMs)||0),d=o?a:1,f=1,h=0,p=0,m=!1;do{let _=await jl(`share/sharepage/detail?${Vl}&pwd_id=${n.shareId}&stoken=${encodeURIComponent(s.stoken)}&pdir_fid=${t||n.folderId||"0"}&force=0&_page=${d}&_size=${c}&_sort=file_type:asc,file_name:asc`,{},{},"get"),y=Array.isArray(_?.data?.list)?_.data.list:[];i.push(...y),p+=y.length;let A=Number(_?.metadata?._total||_?.data?._total||_?.data?.total||0);if(A>0&&(h=A),m=A>0?d*c=c,f=A>0?Math.max(1,Math.ceil(A/c)):m?d+1:d,o)break;m&&l>0&&p>=u&&(p=0,await Yt(l)),d+=1}while(d<=f);let g=i.map(_=>({..._,stoken:s.stoken,share_fid_token:_?.share_fid_token||_?.fid_token||_?.file_token||_?.share_file_token||_?.obj_token||"",size:Number(_?.size||_?.file_size||_?.fileSize||_?.file?.size||0)}));return o?{items:g,paged:!0,page:a,pageSize:c,total:h>0?h:(a-1)*c+g.length+(m?c:0)}:g}async function Wfn(e){let t=typeof e=="string"?await oB(e):e;if(!t)return[];let r=await aB(t);if(!r)return[];let n=[],s=async(i,a,o="",c=1)=>{let l=await jl(`share/sharepage/detail?${Vl}&pwd_id=${i}&stoken=${encodeURIComponent(r.stoken)}&pdir_fid=${a}&force=0&_page=${c}&_size=100&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!l.data)return;let d=l.data.list;if(!d)return;let f=[],h=[],p=[];for(let _ of d)_.dir===!0?f.push({item:_,path:o+(o?"/":"")+_.file_name}):Qfn(_)?(_.stoken=r.stoken,h.push(_)):_.file===!0&&St(_.file_name)&&p.push(_);for(let _ of h){let y=xr(_.file_name,p,E=>E.file_name),A=y?.share_fid_token||y?.fid_token||"";y?.fid&&A&&(_.subtitle={fid:y.fid,share_fid_token:A,ext:rr(y.file_name)})}let m=Gt(h);n.push(...m),cs(i,_.item.fid,_.path));await Promise.all(g)};return await s(t.shareId,t.folderId,""),n}function Xfn(e,t){let n=(kK.get(e)||Promise.resolve()).catch(()=>{}).then(()=>t()),s=n.catch(()=>{});return kK.set(e,s),s.finally(()=>{kK.get(e)===s&&kK.delete(e)}),n}async function Jfn(){let e=Date.now();if(iB.token&&e-iB.ts<55*1e3)return iB.token;let t={conversation_id:`300000${e}`,conversation_type:3,msg_id:`${e}000`},n=await TCe("https://drive-social-api.quark.cn/1/clouddrive/chat/conv/file/acquire_dl_token?pr=ucpro&fr=pc&sys=darwin&ve=3.19",t,{"Content-Type":"application/json"}),s=n?.status===200&&n?.code===0?n?.data?.token:"";return s&&(iB.token=s,iB.ts=e),s||""}async function Zfn(e,t,r,n){if(!e||!r||!n)return null;let s=t;s||(s=(await aB({shareId:e,sharePwd:""}))?.stoken||"");let i={fids:[r],fids_token:[n],pwd_id:e,stoken:s||"",speedup_session:""},a=await Jfn();a&&(i.token=a);let c=(await TCe(`https://drive-pc.quark.cn/1/clouddrive/file/download?${Vl}`,i))?.data?.[0];return c?.download_url?c:null}async function e0n(e,t,r,n,s){return Xfn(e,()=>t0n(e,t,r,n,s))}async function t0n(e,t,r,n,s){if(await zfn(s),s&&BK.clear(),!rb)return null;let i=t;if(!i&&(i=(await aB({shareId:e,sharePwd:""}))?.stoken||"",!i))return null;let a=async c=>await jl(`share/sharepage/save?${Vl}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:rb,pwd_id:e,stoken:c,pdir_fid:"0",scene:"link"}),o=await a(i);if(!o?.data?.task_id){let u=(await aB({shareId:e,sharePwd:""}))?.stoken||"";if(!u)return!1;o=await a(u)}if(o.data?.task_id){let c=0;for(;c<=5;){let u=await jl(`task?${Vl}&task_id=${o.data.task_id}&retry_index=${c}`,{},{},"get");if(u.data?.save_as?.save_as_top_fids?.length>0)return u.data.save_as.save_as_top_fids[0];c++,await Yt(1e3)}}return!1}async function lUt(e,t,r,n,s){if(!BK.has(r)){let a=await e0n(e,t,r,n,s);if(!a)return null;BK.set(r,a)}return(await jl(`file/download?${Vl}`,{fids:[BK.get(r)]})).data?.[0]||null}function r0n(e){if(!e||e.length<16||!e.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])))return!1;let r=e.subarray(8,12).equals(Buffer.from([26,69,223,163])),n=e.subarray(12,16).equals(Buffer.from("ftyp"));return r||n}async function dUt(e,t){if(!e)return!1;if(yCe.has(t))return yCe.get(t);try{let r=await ye.get(e,{headers:{Cookie:vi,...ry,Range:"bytes=0-15"},responseType:"arraybuffer",timeout:2e4,validateStatus:s=>s===200||s===206}),n=r0n(r.data||Buffer.alloc(0));return yCe.set(t,n),n}catch{return!1}}async function fUt(e,t,r,n,s,i){let a=Number(n?.size||n?.file_size||n?.fileSize||0),o=Math.max(a-8,0);if(o<=0){t.sent||t.code(502).send({error:"invalid disguised media size"});return}return mx(e.headers.range,o)?.unsatisfied?(t.code(416).headers({"content-range":`bytes */${o}`,"accept-ranges":"bytes","cache-control":"no-store"}),""):await oc(e,t,r,i,{Cookie:vi,...ry},{chunkSize:s.chunkSize,poolSize:s.poolSize,timeout:1e3*10},o,!0,8)}async function pUt(e,t){if(t&&await dp(t),await iMt(e)){let r=await oB(e);if(r){let n=await Wfn(r);if(n?.length>0){let s=await ht("quark"),i=n.map(a=>({vod_id:Dt([r.shareId,a.stoken,a.fid,a.share_fid_token,a.subtitle?.fid||"",a.subtitle?.share_fid_token||"",a.subtitle?.ext||""],{structured:!0}),vod_name:a.file_name,vod_size:a.size}));return ba(s,i)}}}return[]}async function mUt(e,t){try{await dp(e);let r=e.params.site,n=e.params.what,s=e.params.shareId,i=e.params.fileId;if(r!=="quark")return;let a=Br(i,{fieldOrder:["stoken","fid","shareFidToken"]}),o=e.params.flag,c=nb.default.enc.Hex.stringify(nb.default.MD5(e.server.config.quark.cookie)).toString(),u=Qi(await e.server.db.getObjectDefault(`/quark/settings/${c}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1});if(n==="trans"){t.sent||t.code(404).send({error:"quark transcoding disabled"});return}else{if(o==="subt"){let d=await lUt(s,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,!1);if(!d?.download_url){t.sent||t.code(404).send({error:"subtitle not found"});return}let f=await s0n(d.download_url);if(!f){t.sent||t.code(502).send({error:"subtitle fetch failed"});return}let h=f;if(String(e.params.end||"").toLowerCase().endsWith(".srt")&&a0n(f)){let g=MT(f.toString("utf8"));h=Buffer.from(g,"utf8")}let m=i0n(h,e.params.end);return t.code(200).headers({"content-type":m,"content-length":String(h.length),"cache-control":"no-store"}),h}if(o==="fast"){if(!u.enableFast){t.sent||t.code(403).send({error:"fast disabled"});return}let d=Date.now(),f=SCe.get(a.fid),h=f&&d-f.ts0?m:null;if(!u.useMultithread){t.redirect(h.download_url);return}try{return await oc(e,t,h.download_url,`fast_${a.fid}`,{Cookie:vi,...ry},{chunkSize:u.chunkSize,poolSize:u.poolSize,timeout:1e3*10},g,!0)}catch(_){console.error("[quark fast] chunkStream error, clearing cache:",_.message),SCe.delete(a.fid),t.sent||t.code(503).send({error:"fast stream error, please retry"})}}return}let l=vCe.get(a.fid);if(l||(l=await lUt(s,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,o==="down"),l&&vCe.set(a.fid,l)),l?.download_url){if(o==="redirect"||!u.useMultithread){t.redirect(l.download_url);return}if(await dUt(l.download_url,a.fid))return await fUt(e,t,l.download_url,l,u,a.fid);let f=Number(l.size||l.file_size||l.fileSize||0),h=f>0?f:null;try{return await oc(e,t,l.download_url,a.fid,{Cookie:vi,...ry},{chunkSize:u.chunkSize,poolSize:u.poolSize,timeout:1e3*10},h,!0)}catch(p){console.error("[quark proxy] chunkStream error, clearing cache:",p.message),vCe.delete(a.fid),t.sent||t.code(503).send({error:"stream error, please retry"})}}}}catch(r){console.error("[quark proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function UK(e,t){await dp(e);let r=e.body.flag,n=e.body.id;if(r.startsWith(await ht("quark"))){let{shareId:s,stoken:i,fid:a,shareFidToken:o,subtitleFid:c="",subtitleShareFidToken:u="",subtitleExt:l=""}=Br(n,{fieldOrder:["shareId","stoken","fid","shareFidToken","subtitleFid","subtitleShareFidToken","subtitleExt"]}),d=nb.default.enc.Hex.stringify(nb.default.MD5(e.server.config.quark.cookie)).toString(),f=Qi(await e.server.db.getObjectDefault(`/quark/settings/${d}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),h=encodeURIComponent(Dt([i,a,o],{structured:!0})),p=[],m=Ia(e,"quark","\u5FEB\u4F20","fast",s,h,".bin"),g=Ia(e,"quark","\u4EE3\u7406","down",s,h,".bin"),_=Ia(e,"quark","\u539F\u753B","redirect",s,h,".bin");f.enableFast?p.push(...m,...g,..._):p.push(...g,..._);let y=[],A={Cookie:vi,...ry};if(c){let E=o0n(l||"")||"srt",v=encodeURIComponent(Dt([i,c,u,E],{structured:!0}));y.push(v0(e,"quark",s,v,`.${E}`,{name:"\u5916\u6302\u5B57\u5E55",format:E}))}return ei({parse:0,urls:p,subtitles:y,header:A})}return Xr("\u5938\u514B\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}async function s0n(e){if(!e)return null;let t={Cookie:vi,...ry};try{let r=await ye.get(e,{headers:t,responseType:"arraybuffer",maxRedirects:0,timeout:2e4,validateStatus:a=>a>=200&&a<400});if(r.status===200&&r.data)return r.data;let n=r.headers?.location;if(r.data=null,!n)return null;let s=new URL(n,e).toString(),i=await ye.get(s,{headers:t,responseType:"arraybuffer",timeout:3e4,validateStatus:a=>a===200});try{return i.data||null}finally{i.data&&(i.data=null)}}catch{return null}}function i0n(e,t=""){let r=String(t||"").toLowerCase();if(r.endsWith(".ass")||r.endsWith(".ssa"))return"text/x-ssa; charset=utf-8";if(r.endsWith(".vtt"))return"text/vtt; charset=utf-8";if(r.endsWith(".srt"))return"application/x-subrip; charset=utf-8";let n=Buffer.from(e).subarray(0,4096).toString("utf8").toLowerCase();return n.includes("[script info]")?"text/x-ssa; charset=utf-8":n.includes("webvtt")?"text/vtt; charset=utf-8":n.includes("-->")?"application/x-subrip; charset=utf-8":"text/plain; charset=utf-8"}function a0n(e){let t=Buffer.from(e).subarray(0,8192).toString("utf8").toLowerCase();return t.includes("[script info]")||t.includes("[events]")||t.includes("dialogue:")}function o0n(e=""){let t=rr(e);if(t)return t;let r=String(e||"").replace(/^\./,"").toLowerCase();return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}async function gUt(e="0",t=1,r=200){let n=Math.max(1,Number.parseInt(t,10)||1),s=`file/sort?${Vl}&pdir_fid=${encodeURIComponent(e||"0")}&_page=${n}&_size=${r}&_sort=file_type:asc,updated_at:desc`,i=await jl(s,{},{},"get"),a=Array.isArray(i?.data?.list)?i.data.list:[],o=[],c=[];return a.forEach(u=>{u?.dir===!0||u?.dir===1||u?.file_type===0?o.push(u):c.push(u)}),{folderList:o,fileList:c,count:Number(i?.metadata?._total||a.length||0)}}async function FK(e){return e&&(await jl(`file/download?${Vl}`,{fids:[e]}))?.data?.[0]||null}var nb,sUt,Gfn,Vl,ry,Mx,tb,iUt,aUt,vi,oUt,cUt,rb,MK,Yfn,BK,kK,iB,yCe,vCe,SCe,n0n,cB=ie(()=>{Cr();vr();kE();nb=Ne(Yi(),1);Ds();la();PE();Jc();jd();yi();A0();Oj();Zc();ql();S0();el();sUt=/pan\.qoark\.cn\/s\/([^\/?#]+)/,Gfn=/https:\/\/pan\.quark\.cn\/s\/([^\/?#]+)/;Vl="pr=ucpro&fr=pc",ry={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) quark-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://pan.quark.cn"},Mx=null,tb=null,iUt=!1,aUt="https://drive.quark.cn/1/clouddrive/",vi="",oUt=ts("quark.shareToken",{maxSize:200,ttl:30*60*1e3}),cUt="CatVodOpen",rb=null;MK=new Map,Yfn=[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".m4v",".mpg",".mpeg",".3gp",".f4v",".vob",".rm",".iso",".asf",".divx"];BK=ts("quark.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),kK=new Map;iB={token:"",ts:0};yCe=ts("quark.disguisedHeader",{maxSize:500,ttl:60*60*1e3});vCe=ts("quark.downloading",{maxSize:500,ttl:5*60*1e3}),SCe=ts("quark.fast",{maxSize:500,ttl:60*1e3}),n0n=60*1e3});async function xCe(e){e.get("/qrcode",async(t,r)=>{let n=await ye.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":bCe,referer:"https://drive.uc.cn"}});AUt=g0(n.headers["set-cookie"]),ICe=n.data.data.members.token;let s=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${ICe}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,i=await EUt.default.toBuffer(s,{width:300,height:300});r.send(i)}),e.post("/cookie",(t,r)=>{ye.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${ICe}&client_id=381&v=1.2&request_id=${Date.now()}`).then(n=>n.data.status===2e6?{data:n.data.data,cookies:AUt}:Promise.reject(new Error(`service_ticket\u83B7\u53D6\u5931\u8D25: ${n.data.message}`))).then(async({data:n,cookies:s})=>{let i=await ye.get(`https://drive.uc.cn/account/info?st=${n.members.service_ticket}&fr=pc&platform=pc`,{headers:{"User-Agent":bCe,Cookie:s.join(""),referer:"https://drive.uc.cn"}});return i.headers["set-cookie"]?s.concat(g0(i.headers["set-cookie"])):Promise.reject(new Error(`\u4E2A\u4EBAPus\u83B7\u53D6\u5931\u8D25\uFF1A${i.data.message}`))}).then(async n=>{let s=await ye.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":bCe,Cookie:n.join("")}});if(s.headers["set-cookie"])r.send({code:0,data:n.concat(g0(s.headers["set-cookie"])).join("")});else return Promise.reject(new Error(`\u4E2A\u4EBAPuus\u83B7\u53D6\u5931\u8D25\uFF1A${s.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await c0n(t.server)})}),e.put("/cookie",async(t,r)=>{await u0n(t.server,t.body.cookie),r.send({code:0})}),e.get("/ut",async(t,r)=>{r.send({code:0,data:await RCe(t.server)})}),e.put("/ut",async(t,r)=>{await CCe(t.server,t.body.ut),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=Xg.default.enc.Hex.stringify(Xg.default.MD5(t.server.config.uc.cookie)).toString(),s={chunkSize:64*1024,poolSize:16,useMultithread:!0},i=await t.server.db.getObjectDefault(`/uc/settings/${n}`,s),a=Qi(i,s),o={chunkSize:a.chunkSize,poolSize:a.poolSize,useMultithread:a.useMultithread};r.send({code:0,data:o})}catch(n){console.error("\u83B7\u53D6UC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=LE(t.body,{chunkSize:65536,poolSize:16,useMultithread:!0});if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let s=Xg.default.enc.Hex.stringify(Xg.default.MD5(t.server.config.uc.cookie)).toString();await t.server.db.push(`/uc/settings/${s}`,n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58UC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var EUt,Xg,bCe,$K,qK,AUt,ICe,c0n,u0n,RCe,CCe,wCe=ie(()=>{vr();EUt=Ne(jE(),1),Xg=Ne(Yi(),1);Ds();el();bCe="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",$K="cookie",qK="ut",AUt=[],ICe=null,c0n=async e=>{let t=String(e.config?.uc?.cookie||""),r=Xg.default.enc.Hex.stringify(Xg.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[$K]?n[$K]:n[r]?n[r]:t?(await e.db.push(`/uc/${$K}`,t),t):""},u0n=async(e,t)=>{await e.db.push(`/uc/${$K}`,t)},RCe=async e=>{let t=String(e.config?.uc?.ut||""),r=Xg.default.enc.Hex.stringify(Xg.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[qK]?n[qK]:n[r]?n[r]:t?(await e.db.push(`/uc/${qK}`,t),t):""},CCe=async(e,t)=>{await e.db.push(`/uc/${qK}`,t)}});function kx(e,t){let r=t?e:tu.DeviceID,n=t||e;return R0.default.MD5(r+n).toString().slice(0,16)}function YK(e,t,r,n){return R0.default.SHA256((e||"GET")+"&"+(t||"/file")+"&"+r+"&"+(n||fi.signKey)).toString()}function dB(e){let t=l0n.exec(e);if(!t)return null;let r="";try{let n=new URL(String(e||""));r=n.searchParams.get("pwd")||n.searchParams.get("password")||n.searchParams.get("passcode")||""}catch{}return{shareId:t[1],sharePwd:r,folderId:"0",url:String(e||"")}}function wUt(){return{Cookie:cf||"","User-Agent":WK["User-Agent"]}}async function hp(e){let t=e.server.config.uc,r=R0.default.enc.Hex.stringify(R0.default.MD5(t.cookie)).toString(),n=R0.default.enc.Hex.stringify(R0.default.MD5(t.token)).toString(),s=R0.default.enc.Hex.stringify(R0.default.MD5(t.ut)).toString();if(yUt&&fp&&uB===r&&PCe===n&&LCe===s)return;fp=e.server.db,cf=t.cookie,MCe=String(t.token||""),uB=r,PCe=n,LCe=s;let i=await fp.getObjectDefault("/uc",{});if(i[kCe]?cf=i[kCe]:i[uB]&&(cf=i[uB]),HK=await RCe(e.server),!HK)try{await Xe.get(`${GK}/file`)}catch(a){a?.response?.data&&(HK=a.response.data,CCe(e.server,HK))}yUt=!0}async function Kl(e,t,r,n,s){return r=r||{},Object.assign(r,WK),Object.assign(r,{Cookie:cf||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await Xe.get(`${GK}/${e}`,{headers:r}).catch(o=>(console.error("[uc api] request failed:",n.toUpperCase(),e,o?.response?.status||o?.code||o?.message),o?.response?.status===401&&tn.toast("UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await Xe.post(`${GK}/${e}`,t,{headers:r}).catch(o=>(console.error("[uc api] request failed:",n.toUpperCase(),e,o?.response?.status||o?.code||o?.message),o?.response?.status===401&&tn.toast("UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&cf.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(cf=cf.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await fp.push(`/uc/${kCe}`,cf))}return a.status===429&&(s||3)>0?(await Yt(1e3),await Kl(e,t,r,n,(s||3)-1)):a.data||{}})()}async function TUt(){let e=await Kl(`file/sort?${ru}&pdir_fid=${sb}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data?.list?.length>0){let t=e.data.list.map(r=>Kl(`file/delete?${ru}`,{action_type:2,filelist:[r.fid],exclude_fids:[]}));await Promise.all(t)}}async function h0n(e){if(sb){e&&await TUt();return}let t=await Kl(`file/sort?${ru}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data?.list){for(let r of t.data.list)if(r.file_name===SUt){sb=r.fid,await TUt();break}}if(!sb){let r=await Kl(`file?${ru}`,{pdir_fid:"0",file_name:SUt,dir_path:"",dir_init_lock:!1});r.data?.fid&&(sb=r.data.fid)}}async function zK(e){let t=`${e.shareId}_${e.sharePwd||""}`,r=vUt.get(t);if(r)return r;if(VK.has(t))return await VK.get(t);let n=(async()=>{try{let s=await Kl(`share/sharepage/token?${ru}`,{pwd_id:e.shareId,passcode:e.sharePwd||""});return s.data?.stoken?(vUt.set(t,s.data),s.data):null}finally{VK.delete(t)}})();return VK.set(t,n),await n}async function p0n(e){let t=typeof e=="string"?dB(e):e;if(!t)return[];let r=await zK(t);if(!r)return[];let n=[],s=async(i,a,o="",c=1)=>{let l=await Kl(`share/sharepage/detail?${ru}&pwd_id=${i}&stoken=${encodeURIComponent(r.stoken)}&pdir_fid=${a}&force=0&_page=${c}&_size=100&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!l.data)return;let d=l.data.list;if(!d)return;let f=[],h=[],p=[];for(let _ of d)_.dir===!0?f.push({item:_,path:o+(o?"/":"")+_.file_name}):_.file===!0&&_.obj_category==="video"?(_.stoken=r.stoken,_.pdir_fid=a,h.push(_)):_.file===!0&&St(_.file_name)&&p.push(_);for(let _ of h){let y=xr(_.file_name,p,E=>E.file_name),A=y?.share_fid_token||y?.fid_token||"";y?.fid&&A&&(_.subtitle={fid:y.fid,share_fid_token:A,ext:rr(y.file_name),pdir_fid:a,size:y.size||y.file_size||0})}let m=Gt(h);n.push(...m),cs(i,_.item.fid,_.path));await Promise.all(g)};return await s(t.shareId,t.folderId,""),n}async function NUt(e,t="0",r={}){let n=typeof e=="string"?dB(e):e;if(!n?.shareId)return{items:[],stoken:""};let s=await zK(n);if(!s?.stoken)return{items:[],stoken:""};let i=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),a=i>0,o=Math.max(1,Math.min(1e3,Number(r.batchSize)||200)),c=Math.max(0,Math.min(1e4,Number(r.batchIntervalMs)||0)),u=String(t||n.folderId||"0"),l=[],d=a?i:1,f=0,h=!1;for(;;){let p=await Kl(`share/sharepage/detail?${ru}&pwd_id=${n.shareId}&stoken=${encodeURIComponent(s.stoken)}&pdir_fid=${u}&force=0&_page=${d}&_size=${o}&_sort=file_type:asc,file_name:asc`,{},{},"get"),m=Array.isArray(p?.data?.list)?p.data.list:[];if(m.forEach(g=>{g.stoken=s.stoken}),l.push(...m),f=Number(p?.metadata?._total||p?.data?._total||p?.data?.total||f||0),h=m.length>=o&&!(f>0&&d*o>=f),a||!h)break;d+=1,c>0&&await Yt(c)}return a?{items:l,stoken:s.stoken,paged:!0,page:i,pageSize:o,total:f>0?f:(i-1)*o+l.length+(h?o:0)}:{items:l,stoken:s.stoken}}function m0n(e,t){let n=(jK.get(e)||Promise.resolve()).catch(()=>{}).then(()=>t()),s=n.catch(()=>{});return jK.set(e,s),s.finally(()=>{jK.get(e)===s&&jK.delete(e)}),n}async function g0n(e,t,r,n,s){return m0n(e,()=>_0n(e,t,r,n,s))}async function _0n(e,t,r,n,s){if(await h0n(s),s&&lB.clear(),!sb)return null;let i=t;if(!i&&(i=(await zK({shareId:e,sharePwd:""}))?.stoken||"",!i))return null;let a=async c=>await Kl(`share/sharepage/save?${ru}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:sb,pwd_id:e,stoken:c,pdir_fid:"0",scene:"link"}),o=await a(i);if(!o?.data?.task_id){let u=(await zK({shareId:e,sharePwd:""}))?.stoken||"";if(!u)return!1;o=await a(u)}if(o.data?.task_id){let c=0;for(;c<=5;){let u=await Kl(`task?${ru}&task_id=${o.data.task_id}&retry_index=${c}`,{},{},"get");if(u.data?.save_as?.save_as_top_fids?.length>0)return u.data.save_as.save_as_top_fids[0];c++,await Yt(1e3)}}return!1}async function A0n(){if(!fp)return null;let e=String(await fp.getObjectDefault("/uc/refresh_token","")||"").trim();if(!e)return null;let t=Math.floor(Date.now()/1e3).toString()+"000",n={req_id:kx(tu.DeviceID,t),app_ver:fi.appVer,device_id:tu.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:fi.channel,refresh_token:e};try{let i=(await ye.post(`${fi.codeApi}/token`,n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"},timeout:1e4}))?.data;if(i?.code===200&&i.data?.access_token)return await fp.push("/uc/token",i.data.access_token),i.data.refresh_token&&await fp.push("/uc/refresh_token",i.data.refresh_token),console.log("[uc] access_token \u5DF2\u81EA\u52A8\u5237\u65B0"),i.data.access_token;console.warn("[uc] refresh \u54CD\u5E94\u5F02\u5E38:",JSON.stringify(i||{}).slice(0,200))}catch(s){console.error("[uc] refreshAccessToken \u5931\u8D25:",s?.response?.data?JSON.stringify(s.response.data).slice(0,200):s?.message)}return null}function E0n(e){if(!e)return!1;if(e.status===-1&&(e.errno===10001||e.errno===11001))return!0;let t=String(e.error_info||"").toLowerCase();return t.includes("access token")||t.includes("access_token")||t.includes("token\u65E0\u6548")||t.includes("token \u65E0\u6548")}async function BCe(){let e=await fp.getObjectDefault("/uc",{});return e[d0n]||(MCe?e[PCe]||MCe:"")}async function bUt(e,t,r,n,s,i={}){let a=i?.mode||"auto",o=a==="cookie"?"":await BCe();if(a==="token"&&!o)return null;if(!lB.has(r)){let l=await g0n(e,t,r,n,s);if(!l)return null;lB.set(r,l)}let c=await fp.getObjectDefault("/uc",{}),u=c[f0n]||c[LCe];if(o){let l=f=>{let h=Math.floor(Date.now()/1e3).toString()+"000",p=kx(h),m=YK("GET","/file",h,fi.signKey);return{method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:p,access_token:f,app_ver:fi.appVer,device_id:tu.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:fi.channel,method:"streaming",group_by:"source",fid:lB.get(r),resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":h,"x-pan-token":m,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":fi.clientID},timeout:15e3}},d=o;for(let f=0;f<2;f++)try{let h=await ye.request(l(d));if(h.status===200){let p=h.data.data?.video_info?.filter(m=>m.accessable)?.[0];if(p)return p.download_url=p.url,p}break}catch(h){if(f===0&&E0n(h?.response?.data)){let p=await A0n();if(p){d=p;continue}}break}if(a==="token")return null}if(a==="token")return null;{let l=`file/download?${ru}`;return u&&(l+=`&ut=${u}`),(await Kl(l,{fids:[lB.get(r)]})).data?.[0]||null}return null}async function OUt(e,t){if(t&&await hp(t),await aMt(e)){let r=dB(e);if(r){let n=await p0n(r);if(n?.length>0){let s=await ht("uc"),i=n.map(u=>({vod_id:Dt([r.shareId,u.stoken,u.fid,u.share_fid_token,u.subtitle?.fid||"",u.subtitle?.share_fid_token||"",u.subtitle?.ext||"",r.sharePwd||"",u.pdir_fid||"0",u.size||u.file_size||0,u.subtitle?.pdir_fid||u.pdir_fid||"0",u.subtitle?.size||0],{structured:!0}),vod_name:u.file_name,vod_size:u.size})),a=Hg(QK,i),o=tf(ar.uc.unlimited,a?[a]:[]),c=tf(ar.uc.original,ba(s,i));return[...o,...c]}}}return[]}async function y0n(e){let t=uB||R0.default.enc.Hex.stringify(R0.default.MD5(e.config.uc.cookie)).toString(),r=await e.db.getObjectDefault(`/uc/settings/${t}`,IUt),n=Qi(r,IUt);return{chunkSize:n.chunkSize,poolSize:n.poolSize,useMultithread:n.useMultithread}}function v0n(e){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}async function UCe(e,t={},r="post"){return(await ye.request({method:r,url:`${GK}${e}`,data:r==="get"?void 0:t,headers:{...WK,"Content-Type":"application/json"},timeout:2e4,validateStatus:s=>s>=200&&s<500}))?.data||{}}async function RUt(e,t="",r=!1){let n=`${e}_${t||""}`;r&&OCe.delete(n);let s=OCe.get(n);if(s?.stoken)return s;let a=(await UCe(`share/sharepage/token?${ru}`,{pwd_id:e,passcode:t||""}))?.data;return a?.stoken?(OCe.set(n,a),a):null}async function S0n(e,t,r,n=1){return UCe(`share/sharepage/detail?${ru}&pwd_id=${encodeURIComponent(e)}&stoken=${encodeURIComponent(t)}&pdir_fid=${encodeURIComponent(r||"0")}&force=0&_page=${n}&_size=100&_sort=file_type:asc,file_name:asc`,{},"get")}async function T0n(e,t,r,n=""){let s=[];n&&n!=="0"&&s.push(String(n)),s.push("0");let i=new Set;for(;s.length>0&&i.size<2e3;){let a=s.shift();if(i.has(a))continue;i.add(a);let o=1;for(;o<=100;){let c=await S0n(e,t,a,o),u=Array.isArray(c?.data?.list)?c.data.list:[];for(let d of u){if(d?.file===!0&&String(d.fid)===String(r))return d;d?.dir===!0&&d.fid&&s.push(String(d.fid))}let l=Number(c?.metadata?._total||c?.data?.metadata?._total||u.length||0);if(u.length===0||o*100>=l)break;o+=1}}return null}async function CUt(e,t,r,n){if(!e||!t||!r||!n)return null;let i=(await UCe(`file/download?${ru}`,{fids:[r],fids_token:[n],pwd_id:e,stoken:t,speedup_session:""}))?.data?.[0];return i?.download_url?i:null}function DUt(e,t){return`${e}:${t}`}async function b0n(e,t=!1){let{shareId:r,fileId:n,sharePwd:s="",parentFid:i="",size:a=0}=e||{};if(!r||!n)return null;let o=DUt(r,n);t&&KK.delete(o);let c=KK.get(o);if(c?.download_url)return c;let u=v0n(e?.stoken),l=e?.fileToken||"";u||(u=(await RUt(r,s))?.stoken||"");let d=await CUt(r,u,n,l);if(!d){u=(await RUt(r,s,!0))?.stoken||"";let p=u?await T0n(r,u,n,i):null;l=p?.share_fid_token||p?.fid_token||"",d=await CUt(r,u,n,l)}if(!d?.download_url)return null;let f={...d,size:Number(d.size||d.file_size||d.fileSize||a||0)};return KK.set(o,f),f}function I0n(e,t=""){let r={"User-Agent":WK["User-Agent"],Referer:`${e}\\ `,"Accept-Encoding":"identity"};return t&&(r.Range=t),r}async function R0n(e,{range:t="",responseType:r="stream"}={}){let n=I0n(e,t);return ye.request({method:"get",url:e,headers:n,responseType:r,timeout:3e4,maxRedirects:5,maxBodyLength:1/0,maxContentLength:1/0,decompress:!1,beforeRedirect:s=>{s.headers={...s.headers||{},...n},delete s.headers.Cookie,delete s.headers.cookie},validateStatus:s=>s===200||s===206||s===416})}function C0n(e){return Br(e,{fieldOrder:["stoken","fid","shareFidToken","sharePwd","parentFid","size"]})}function x0n(e){let t=String(e||"").match(/\/([0-9]+)$/);return t?Number(t[1]):0}function DCe(e,t=0){let r=e?.headers||{},n={"accept-ranges":"bytes","cache-control":"no-store"};for(let s of["content-type","content-length","content-range","etag","last-modified"])r[s]!==void 0&&(n[s]=String(r[s]));return n["content-type"]||(n["content-type"]="application/octet-stream"),!n["content-length"]&&Number(t)>0&&(n["content-length"]=String(Number(t))),n}function w0n(e,t,r){let n=!1,s=()=>{e.raw?.removeListener("aborted",a),t.raw?.removeListener("close",a)},i=()=>{n=!0,s()},a=()=>{!n&&r&&!r.destroyed&&r.destroy(),s()};return e.raw?.once("aborted",a),t.raw?.once("close",a),r.once("end",i),r.once("close",i),r.once("error",i),r}async function PUt(e,t,r){let n=null;for(let s=0;s<2;s+=1){let i=await b0n({shareId:t,stoken:e.stoken,fileId:e.fid,fileToken:e.shareFidToken,sharePwd:e.sharePwd,parentFid:e.parentFid,size:e.size},s>0);if(!i?.download_url)return{response:null,downloadInfo:null};try{return{response:await R0n(i.download_url,r),downloadInfo:i}}catch(a){n=a;let o=Number(a?.response?.status||0);if(s===0&&(o===401||o===403||o===404||o===410)){KK.delete(DUt(t,e.fid));continue}break}}if(n)throw n;return{response:null,downloadInfo:null}}async function N0n(e,t,r,n){let{response:s}=await PUt(r,n,{responseType:"arraybuffer"});if(!s||s.status!==200||!s.data){t.sent||t.code(404).send({error:"UC\u65E0\u9650\u5B57\u5E55\u83B7\u53D6\u5931\u8D25"});return}let i=Buffer.from(s.data);return String(e.params.end||"").toLowerCase().endsWith(".srt")&&kUt(i)&&(i=Buffer.from(MT(i.toString("utf8")),"utf8")),t.code(200).headers({"content-type":MUt(i,e.params.end),"content-length":String(i.length),"cache-control":"no-store"}),i}async function O0n(e,t,r,n){let s=String(e.method||"").toUpperCase()==="HEAD",i=s?"bytes=0-0":String(e.headers?.range||""),{response:a,downloadInfo:o}=await PUt(r,n,{range:i,responseType:"stream"});if(!a||!o){t.sent||t.code(404).send({error:"UC\u65E0\u9650\u64AD\u653E\u5730\u5740\u83B7\u53D6\u5931\u8D25"});return}if(a.status===416){a.data?.destroy?.(),t.code(416).headers(DCe(a)),t.send();return}if(s){let u=x0n(a.headers?.["content-range"])||Number(o.size||r.size||0),l=DCe(a,u);delete l["content-range"],u>0&&(l["content-length"]=String(u)),a.data?.destroy?.(),t.hijack(),t.raw.writeHead(200,l),t.raw.end();return}let c=DCe(a,o.size||r.size);return t.code(a.status===206?206:200).headers(c),w0n(e,t,a.data)}async function LUt(e,t){try{let r=e.params.site,n=e.params.what,s=e.params.shareId,i=e.params.fileId,a=e.params.flag;if(r!=="uc")return;if(a==="unlimited"||a==="unlimited_subt"){let l=C0n(i);return a==="unlimited_subt"?await N0n(e,t,l,s):await O0n(e,t,l,s)}if(a==="fast"){t.sent||t.code(404).send({error:"UC\u5FEB\u4F20\u5DF2\u5220\u9664"});return}await hp(e);let o=Br(i,{fieldOrder:["stoken","fid","shareFidToken"]}),c=await y0n(e.server),u=await BCe();if(n==="trans"){t.sent||t.code(404).send({error:"uc transcoding disabled"});return}else{if(a==="subt"){let h=await bUt(s,decodeURIComponent(o.stoken),o.fid,o.shareFidToken,!1,{mode:u?"token":"cookie"});if(!h?.download_url){t.sent||t.code(404).send({error:"subtitle not found"});return}let p=await D0n(h.download_url);if(!p){t.sent||t.code(502).send({error:"subtitle fetch failed"});return}let m=p;if(String(e.params.end||"").toLowerCase().endsWith(".srt")&&kUt(p)){let y=MT(p.toString("utf8"));m=Buffer.from(y,"utf8")}let _=MUt(m,e.params.end);return t.code(200).headers({"content-type":_,"content-length":String(m.length),"cache-control":"no-store"}),m}let l=u?"auto":"cookie",d=`${l}_${o.fid}`,f=NCe.get(d);if(f||(f=await bUt(s,decodeURIComponent(o.stoken),o.fid,o.shareFidToken,a==="down"||a==="cookie"||a==="token",{mode:l}),f&&NCe.set(d,f)),f?.download_url){if(a==="redirect"||!c.useMultithread){t.redirect(f.download_url);return}let h=f.size;try{return await oc(e,t,f.download_url,o.fid,wUt(),{chunkSize:c.chunkSize,poolSize:c.poolSize,timeout:1e3*10},h,!0)}catch(p){console.error("[uc proxy] chunkStream error, clearing cache:",p.message),NCe.delete(d),t.sent||t.code(503).send({error:"stream error, please retry"})}}}}catch(r){console.error("[uc proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function fB(e,t){let r=String(e.body?.flag||""),n=String(e.body?.id||""),{shareId:s,stoken:i,fid:a,shareFidToken:o,subtitleFid:c="",subtitleShareFidToken:u="",subtitleExt:l="",sharePwd:d="",parentFid:f="0",size:h=0,subtitleParentFid:p="0",subtitleSize:m=0}=Br(n,{fieldOrder:["shareId","stoken","fid","shareFidToken","subtitleFid","subtitleShareFidToken","subtitleExt","sharePwd","parentFid","size","subtitleParentFid","subtitleSize"]});if(r.startsWith(QK)){let g=encodeURIComponent(Dt([i,a,o,d,f,h],{structured:!0})),_=Ia(e,"uc","\u539F\u753B","unlimited",s,g,".bin"),y=[];if(c){let A=xUt(l||"")||"srt",E=encodeURIComponent(Dt([i,c,u,d,p||f,m],{structured:!0})),v=v0(e,"uc",s,E,`.${A}`,{name:"\u5916\u6302\u5B57\u5E55",format:A});v.url=v.url.replace("/src/subt/","/src/unlimited_subt/"),y.push(v)}return ei({parse:0,urls:_,subtitles:y})}if(await hp(e),r.startsWith(await ht("uc"))){let g=await BCe(),_=encodeURIComponent(Dt([i,a,o],{structured:!0})),y=[];y.push(...Ia(e,"uc","\u4EE3\u7406",g?"token":"cookie",s,_,".bin")),y.push(...Ia(e,"uc","\u539F\u753B","redirect",s,_,".bin"));let A=[];if(c){let E=xUt(l||"")||"srt",v=encodeURIComponent(Dt([i,c,u,E],{structured:!0}));A.push(v0(e,"uc",s,v,`.${E}`,{name:"\u5916\u6302\u5B57\u5E55",format:E}))}return ei({parse:0,urls:y,subtitles:A})}return Xr("UC \u7F51\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}async function D0n(e){if(!e)return null;let t=wUt();try{let r=await ye.get(e,{headers:t,responseType:"arraybuffer",maxRedirects:0,timeout:2e4,validateStatus:a=>a>=200&&a<400});if(r.status===200&&r.data)return r.data;let n=r.headers?.location;if(r.data=null,!n)return null;let s=new URL(n,e).toString(),i=await ye.get(s,{headers:t,responseType:"arraybuffer",timeout:3e4,validateStatus:a=>a===200});try{return i.data||null}finally{i.data&&(i.data=null)}}catch{return null}}function MUt(e,t=""){let r=String(t||"").toLowerCase();if(r.endsWith(".ass")||r.endsWith(".ssa"))return"text/x-ssa; charset=utf-8";if(r.endsWith(".vtt"))return"text/vtt; charset=utf-8";if(r.endsWith(".srt"))return"application/x-subrip; charset=utf-8";let n=(Buffer.isBuffer(e)?e:Buffer.from(e)).subarray(0,4096).toString("utf8").toLowerCase();return n.includes("[script info]")?"text/x-ssa; charset=utf-8":n.includes("webvtt")?"text/vtt; charset=utf-8":n.includes("-->")?"application/x-subrip; charset=utf-8":"text/plain; charset=utf-8"}function kUt(e){let t=(Buffer.isBuffer(e)?e:Buffer.from(e)).subarray(0,8192).toString("utf8").toLowerCase();return t.includes("[script info]")||t.includes("[events]")||t.includes("dialogue:")}function xUt(e=""){let t=rr(e);if(t)return t;let r=String(e||"").replace(/^\./,"").toLowerCase();return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}async function BUt(e="0",t=1,r=200){let n=Math.max(1,Number.parseInt(t,10)||1),s=`file/sort?${ru}&pdir_fid=${encodeURIComponent(e||"0")}&_page=${n}&_size=${r}&_sort=file_type:asc,updated_at:desc`,i=await Kl(s,{},{},"get"),a=Array.isArray(i?.data?.list)?i.data.list:[],o=[],c=[];return a.forEach(u=>{u?.dir===!0||u?.dir===1||u?.file_type===0?o.push(u):c.push(u)}),{folderList:o,fileList:c,count:Number(i?.metadata?._total||a.length||0)}}async function XK(e){return e&&(await Kl(`file/download?${ru}`,{fids:[e]}))?.data?.[0]||null}var R0,tu,fi,l0n,ru,QK,WK,fp,uB,yUt,GK,cf,PCe,LCe,MCe,kCe,d0n,f0n,vUt,SUt,sb,HK,VK,lB,jK,NCe,IUt,OCe,KK,hB=ie(()=>{Cr();kE();R0=Ne(Yi(),1);Ds();vr();la();PE();wCe();Jc();jd();Zc();ql();S0();A0();el();yi();jg();tu={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},fi={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};l0n=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/;ru="pr=UCBrowser&fr=pc",QK="UC\u65E0\u9650",WK={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"};fp=null,uB=null,yUt=!1,GK="https://pc-api.uc.cn/1/clouddrive/",cf="",PCe="",LCe="",MCe="",kCe="cookie",d0n="token",f0n="ut",vUt=ts("uc.shareToken",{maxSize:200,ttl:30*60*1e3}),SUt="CatVodOpen",sb=null,HK="";VK=new Map;lB=ts("uc.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),jK=new Map;NCe=ts("uc.downloading",{maxSize:500,ttl:5*60*1e3}),IUt={chunkSize:64*1024,poolSize:16,useMultithread:!0};OCe=ts("uc.unlimited.token",{maxSize:200,ttl:30*60*1e3}),KK=ts("uc.unlimited.download",{maxSize:500,ttl:5*60*1e3})});function pB(e){return e?L0n.test(e):!1}var FCe,L0n,JK=ie(()=>{FCe=new Set(["mp4","mkv","avi","mov","flv","wmv","m3u8","ts","rmvb","webm","m4v","mpg","mpeg","3gp","f4v","vob","rm","iso","asf","divx","m2ts"]),L0n=new RegExp(`\\.(${[...FCe].join("|")})$`,"i")});var Bx,$Ce=ie(()=>{Bx=class{constructor(t=200){this.limit=Math.max(1,t),this.items=[]}push(t){this.items.push(t),this.items.length>this.limit&&this.items.splice(0,this.items.length-this.limit)}toArray(){return this.items.slice()}recent(t=this.items.length){return this.items.slice(-Math.max(0,t))}clear(){this.items.length=0}get length(){return this.items.length}}});async function Vx(e={}){for(let[t,r]of Object.entries(e))await Ze.set(t,r)}function X0n(e={}){YCe.push({ts:new Date().toISOString(),...e})}function aFt(){return YCe.toArray()}function oFt(){YCe.clear()}async function nu(e){if($Ut&&mB)return;mB=e.server.db,$x=await mB.getObjectDefault("/xunlei",{});let t=e.server.config?.xunlei||{username:"",password:""};ti={username:$x.username||t.username||"",password:$x.password||t.password||""},$Ut=!0}function cFt(){Gl=null,rG.clear()}function uFt(e=""){try{let t=new URL(String(e||"").trim()),r=Number(t.searchParams.get("e")||0);return!Number.isFinite(r)||r<=0?0:r*1e3}catch{return 0}}function lFt(e={}){let t=String(e?.label||"").trim().toUpperCase(),r=String(e?.usage||"").trim().toUpperCase();return t&&t!=="\u539F\u6587\u4EF6"&&t!=="\u7F51\u9875\u4E0B\u8F7D"&&t!=="\u4E0B\u8F7D\u94FE\u63A5"?0:r==="PLAY"?1:r==="CONSUME"?2:r==="DEFAULT"?3:r==="FETCH"?4:3}function jx(e={}){let t={url:String(e?.url||"").trim(),label:String(e?.label||"\u539F\u753B").trim(),usage:String(e?.usage||"").trim().toUpperCase(),expiresAt:Number(e?.expiresAt||uFt(e?.url||"")),probeMs:Number(e?.probeMs||0)};return t.priority=Number.isFinite(Number(e?.priority))?Number(e.priority):lFt(t),t}function J0n(e=""){let t=nG.get(e);if(!t)return null;if(typeof t=="string"){let n=jx({url:t,label:"\u539F\u753B"}),s={url:t,candidates:[n],expiresAt:n.expiresAt};return nG.set(e,s),s}if(!t?.url&&!Array.isArray(t?.candidates))return null;let r=Array.isArray(t.candidates)&&t.candidates.length>0?t.candidates:t.url?[{url:t.url,label:t.label||"\u539F\u753B"}]:[];return{...t,url:String(t.url||r[0]?.url||"").trim(),candidates:r.map(n=>jx(n)).filter(n=>n.url)}}function HCe(e=""){nG.delete(e)}function Z0n(e="",t=[]){let r=t.map(n=>jx(n)).filter(n=>n.url).slice(0,zCe);!e||r.length===0||nG.set(e,{url:r[0].url,label:r[0].label,candidates:r,expiresAt:r[0].expiresAt})}function ehn(e){if(Array.isArray(e?.candidates)&&e.candidates.length>0)return!e.candidates.some(r=>{let n=Number(r?.expiresAt||uFt(r?.url||""));return!n||n>Date.now()+Hx});let t=Number(e?.expiresAt||0);return t>0&&t<=Date.now()+Hx}async function thn(e="",t={},r=0){let n=String(e||"").trim();if(!n)return{ok:!1,status:0};let s=Date.now();try{let i=await Xe.get(n,{responseType:"stream",timeout:1e4,headers:{Range:"bytes=0-0",...t},validateStatus:()=>!0});i?.data?.destroy?.();let a=String(i?.headers?.["content-range"]||""),o=Number(a.match(/\/([0-9]+)$/)?.[1]||i?.headers?.["content-length"]||0);return{ok:i.status===206&&(!r||!o||o===Number(r))||i.status===200&&!r,status:Number(i.status||0),totalSize:o,probeMs:Date.now()-s}}catch(i){return i?.response?.data?.destroy?.(),{ok:!1,status:Number(i?.response?.status||0),message:i?.message||String(i),probeMs:Date.now()-s}}}async function AB(e,{username:t="",password:r=""}={}){await nu(e);let n={username:String(t||"").trim(),password:String(r||"").trim()},s=n.username!==ti.username||n.password!==ti.password;ti={...n},await Vx({username:ti.username,password:ti.password}),s&&await dFt(!0)}async function dFt(e=!1,t={}){let r=!!t.preserveReviewSmsToken;await Vx({auth:"",appAuth:"",refreshToken:"",userId:"",...r?{}:{reviewSmsToken:"",reviewSmsExpiresAt:""}}),e&&await Vx({creditKey:"",reviewUserId:"",reviewMainHost:"",reviewMobile:"",reviewUrl:"",reviewQuery:"",reviewCookie:"",reviewCsrfToken:"",reviewActiveHost:""}),cFt()}function Jg(e){if(!e)return!1;let t=e.lastIndexOf(".");if(t<0)return!1;let r=e.slice(t+1).toLowerCase();return FCe.has(r)}function rhn(e=""){let t=String(e||"").lastIndexOf(".");if(t<0)return"application/octet-stream";switch(e.slice(t+1).toLowerCase()){case"mkv":return"video/x-matroska";case"mp4":case"m4v":case"mov":return"video/mp4";case"webm":return"video/webm";case"avi":return"video/x-msvideo";case"flv":return"video/x-flv";case"wmv":case"asf":return"video/x-ms-wmv";case"ts":return"video/mp2t";case"m3u8":return"application/vnd.apple.mpegurl";case"mpg":case"mpeg":case"vob":return"video/mpeg";case"3gp":return"video/3gpp";default:return"application/octet-stream"}}function fFt(e){try{let r=(e.includes(" ")?e.split(" ")[1]:e).split(".");if(r.length<2)return null;let n=r[1].replace(/-/g,"+").replace(/_/g,"/"),s=Buffer.from(n,"base64").toString("utf8");return JSON.parse(s)}catch{return null}}function nhn(e){if(!e)return!1;let t=fFt(e);if(!t?.exp)return!1;let r=Math.floor(Date.now()/1e3);return t.exp>r+Y0n}function Si(e=""){return String(fFt(e)?.aud||"").trim()}function shn(e=""){return nhn(e)&&Si(e)===iy}function ny(e=""){return shn(e)}function oG(e){return Ux.default.MD5(e).toString()}function cG(e){return typeof e=="string"&&e.includes("@")}function ihn(e){let t=String(e||"").trim();if(!t)return"";if(t.startsWith("+"))return t;let r=t.replace(/\D/g,"");return r?r.length===11&&!r.startsWith("86")?`+86 ${r}`:r.startsWith("86")?`+${r}`:`+${r}`:t}function lf(e){let t=String(e||"").trim();if(!t)return{account:"",captchaMeta:{}};if(cG(t))return{account:t,captchaMeta:{email:t}};let r=ihn(t);return{account:r,captchaMeta:{phone_number:r}}}function ahn(e){let t=String(e||"").trim();if(!t||cG(t))return t;let r=t.replace(/\D/g,"");return r.length===13&&r.startsWith("86")?r.slice(2):r||t}function sy(e){let t=e?.response?.data;return t?t?.details?.find(n=>n?.message)?.message||t.error_description||t.message||e?.message||String(e):e?.message||String(e)}function uc(e,t={}){let r=new Error(e);return r.data=t,r}function rs(e,t={}){try{let r=JSON.stringify(t,null,2);console.error(`[\u8FC5\u96F7\u8C03\u8BD5] ${e}: ${r}`)}catch{console.error(`[\u8FC5\u96F7\u8C03\u8BD5] ${e}:`,t)}}function pp(e){return{message:e?.message||String(e),response:e?.response?.data||e?.data?.response||e?.data||null}}function gp(){let e=String(ti.username||"").trim(),t=String(ti.password||"").trim(),r=e||t?`${e}${t}`:"CatVodOpenXunlei";return oG(r)}function hFt(e=gp(),t=sG){return`div101.${e}${oG(Ux.default.SHA1(`${e}${t}${iG}${F0n}`).toString())}`}function ohn(e=gp()){let t=String(Date.now()),r=`${Kx}${ab}${sG}${e}${t}`;for(let n of j0n)r=oG(r+n);return{timestamp:t,sign:`1.${r}`}}function chn(e=Fx){let t=String(Date.now()),r=`${VCe}${sFt}${nFt}${e}${t}`;for(let n of G0n)r=oG(r+n);return{timestamp:t,sign:`1.${r}`}}function pFt(e=""){return Si(e)===uf?{kind:"web",clientId:uf,deviceId:Gx,userAgent:zx,clientVersionHeader:JUt}:{kind:"app",clientId:Kx,deviceId:gp(),userAgent:ob,clientVersionHeader:ab}}function QCe({authorization:e="",captchaToken:t="",contentType:r="application/json",userAgent:n,acceptLanguage:s="zh-cn",clientId:i,deviceId:a,clientVersion:o,extra:c={}}={}){let u=e?pFt(e):null,l=i||u?.clientId||Kx,d=a||u?.deviceId||gp(),f=n||u?.userAgent||ob,h=o!==void 0?o:u?.clientVersionHeader??ab,p={"User-Agent":f,Accept:"application/json;charset=UTF-8","x-client-id":l,"x-device-id":d,...c};return h&&(p["x-client-version"]=h),r&&(p["Content-Type"]=r),s&&(p["accept-language"]=s),e&&(p.authorization=e),t&&(p["x-captcha-token"]=t),p}function cb({authorization:e="",captchaToken:t="",contentType:r="application/json",userAgent:n,acceptLanguage:s,clientVersion:i,extra:a={}}={}){let o=e?pFt(e):null,c=o?.clientId||iy,u=o?.deviceId||gp(),l=n||o?.userAgent||tFt,d=i!==void 0?i:o?.clientVersionHeader??ab,f=s!==void 0?s:o?.kind==="web"?"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6":"zh-cn",h={"User-Agent":l,"x-client-id":c,"x-device-id":u,...a};return d&&(h["x-client-version"]=d),r&&(h["Content-Type"]=r),f&&(h["accept-language"]=f),e&&(h.authorization=e),t&&(h["x-captcha-token"]=t),h}function KCe(){return String(Ze.get("reviewActiveHost")||Ze.get("reviewMainHost")||"xluser-ssl.xunlei.com").split(",").find(Boolean)||"xluser-ssl.xunlei.com"}function uhn(){return`https://${KCe()}`}function lhn(){return String(Ze.get("reviewMainHost")||"xluser-ssl.xunlei.com").split(",").map(e=>String(e||"").trim()).filter(Boolean)}function mFt(){return String(Ze.get("reviewUrl")||"").trim()}function dhn(){return mFt()||"https://i.xunlei.com/xlcaptcha/vertifyPhone.html"}function fhn(e=[]){return(Array.isArray(e)?e:[e]).map(t=>String(t||"").split(";")[0]?.trim()).filter(Boolean).join("; ")}function qUt(e=[]){let t=Array.isArray(e)?e:[e],r={};for(let n of t){let s=String(n||"").split(";")[0]?.trim();if(!s)continue;let i=s.indexOf("=");if(i<=0)continue;let a=s.slice(0,i).trim(),o=s.slice(i+1).trim();a&&(r[a]=decodeURIComponent(o||""))}return r}function hhn(...e){return Object.assign({},...e.filter(t=>t&&typeof t=="object"))}function HUt(e={}){return Object.entries(e).map(([t,r])=>`${t}=${r}`).join("; ")}function gFt(e="",t=""){if(!e||!t)return"";let r=new RegExp(`(?:^|;\\s*)${t}=([^;]*)`),n=String(e).match(r);return n?decodeURIComponent(n[1]):""}function _Ft(){return String(Ze.get("reviewCookie")||"").trim()}function phn(){return String(Ze.get("reviewCsrfToken")||"").trim()}function AFt(){try{let e=String(Ze.get("reviewQuery")||"").trim();return e?JSON.parse(e):{}}catch{return{}}}function gB(){return{creditKey:String(Ze.get("creditKey")||"").trim(),reviewUrl:String(Ze.get("reviewUrl")||"").trim(),reviewQuery:String(Ze.get("reviewQuery")||"").trim(),reviewMainHost:String(Ze.get("reviewMainHost")||"").trim(),reviewUserId:String(Ze.get("reviewUserId")||"").trim(),reviewMobile:String(Ze.get("reviewMobile")||"").trim(),reviewActiveHost:String(Ze.get("reviewActiveHost")||"").trim(),reviewCookie:String(Ze.get("reviewCookie")||"").trim(),reviewCsrfToken:String(Ze.get("reviewCsrfToken")||"").trim(),reviewSmsToken:String(Ze.get("reviewSmsToken")||"").trim(),reviewSmsExpiresAt:String(Ze.get("reviewSmsExpiresAt")||"").trim()}}function mhn(){let e=gB();return!!(e.creditKey&&(e.reviewUrl||e.reviewMainHost))}async function EFt(e,t={}){!t||typeof t!="object"||await Vx({creditKey:String(t.creditKey||"").trim(),reviewUrl:String(t.reviewUrl||"").trim(),reviewQuery:String(t.reviewQuery||"").trim(),reviewMainHost:String(t.reviewMainHost||"").trim(),reviewUserId:String(t.reviewUserId||"").trim(),reviewMobile:String(t.reviewMobile||"").trim(),reviewActiveHost:String(t.reviewActiveHost||"").trim(),reviewCookie:String(t.reviewCookie||"").trim(),reviewCsrfToken:String(t.reviewCsrfToken||"").trim(),reviewSmsToken:String(t.reviewSmsToken||"").trim(),reviewSmsExpiresAt:String(t.reviewSmsExpiresAt||"").trim()})}function ghn(e=""){let t=String(e||"").replace(/\D/g,"");return t.length<7?t:`${t.slice(0,3)}****${t.slice(-4)}`}function _hn(e="",t=""){if(t&&Ze.set("creditKey",t),!!e)try{let r=new URL(e);Ze.set("reviewUrl",e),Ze.set("reviewQuery",JSON.stringify(Object.fromEntries(r.searchParams.entries())));let n=r.searchParams.get("mainHost")||"",s=r.searchParams.get("userID")||"",i=r.searchParams.get("mobile")||"";n&&Ze.set("reviewMainHost",n),s&&Ze.set("reviewUserId",s),i&&Ze.set("reviewMobile",i)}catch{}}function uG(e=""){let t=String(e||"").trim();if(t){Ze.set("creditKey",t);try{let r=String(Ze.get("reviewUrl")||"").trim();if(r){let n=new URL(r);n.searchParams.set("creditkey",t),Ze.set("reviewUrl",n.toString()),Ze.set("reviewQuery",JSON.stringify(Object.fromEntries(n.searchParams.entries())));return}}catch{}try{let r=AFt();Object.keys(r).length>0&&(r.creditkey=t,Ze.set("reviewQuery",JSON.stringify(r)))}catch{}}}function yFt(e={}){let t=lf(ti.username).account,r=AFt(),n=String(r.platformVersion||ZK||"").trim();return{appid:r.appid||iG,appName:r.appName||eFt,clientVersion:r.clientVersion||ab,event:r.event||"login3",platformVersion:n||ZK,protocolVersion:r.protocolVersion||ZUt,providerName:r.providerName||"NONE",OSVersion:r.OSVersion||"NONE",deviceName:r.deviceName||"NONE",deviceModel:r.deviceModel||"NONE",netWorkType:r.netWorkType||"NONE",userID:r.userID||Ze.get("reviewUserId")||"",mobile:r.mobile||Ze.get("reviewMobile")||ghn(t),creditkey:Ze.get("creditKey")||"",smsEvent:r.smsEvent||"34",trigger:r.trigger||"0",privateStyle:r.privateStyle||"",deviceid:gp(),devicesign:hFt(),fromPlatformVersion:n||ZK,sdkVersion:"1.0",hl:r.hl||"",timestamp:Date.now(),...e}}async function Ahn(e,t={},r={}){let n=`jsonp_${Date.now()}_${Math.random().toString(36).slice(2,10)}`,s=await Xe.get(e,{params:{...t,callback:n},headers:r,timeout:15e3,responseType:"text",transformResponse:[o=>o]}),a=String(s.data||"").trim().match(/^[^(]+\(([\s\S]*)\)\s*;?\s*$/);return a?JSON.parse(a[1]):typeof s.data=="string"?JSON.parse(s.data):s.data}async function Ehn(e,t={},r={}){let n=new QUt.default;for(let[f,h]of Object.entries(t))n.append(f,h==null?"":String(h));let s=hhn(qUt(_Ft().split(/,(?=[^;]+?=)/))),i=e,a="post",o="https://i.xunlei.com/xlcaptcha/vertifyPhone.html",c=n,u=null,l="";for(let f=0;f<5;f++){let h=HUt(s),p={Referer:o,"User-Agent":ob,...a==="post"?n.getHeaders():{},...h?{Cookie:h}:{},...r};u=a==="post"?await Xe.post(i,c,{headers:p,timeout:15e3,maxRedirects:0,validateStatus:()=>!0,responseType:"text",transformResponse:[_=>_]}):await Xe.get(i,{headers:p,timeout:15e3,maxRedirects:0,validateStatus:()=>!0,responseType:"text",transformResponse:[_=>_]}),Object.assign(s,qUt(u?.headers?.["set-cookie"]||[])),l=String(u?.data||"").trim();let m=HUt(s);if(m){Ze.set("reviewCookie",m);let _=gFt(m,"csrf_token");_&&Ze.set("reviewCsrfToken",_)}let g=String(u?.headers?.location||"").trim();if(!g)break;i=/^https?:\/\//i.test(g)?g:new URL(g,i).toString(),o=i,a="get",c=void 0}let d=l.match(/\{[\s\S]*?\}/);return d?{...JSON.parse(d[0]),...s,response:l}:{...s,response:l}}async function WCe(){let e=mFt();if(e)try{let t=await Xe.get(e,{headers:{Referer:"https://i.xunlei.com/xlcaptcha/vertifyPhone.html","User-Agent":ob},timeout:15e3,maxRedirects:5}),r=fhn(t?.headers?.["set-cookie"]||[]);if(r){Ze.set("reviewCookie",r);let n=gFt(r,"csrf_token");n&&Ze.set("reviewCsrfToken",n)}}catch{}}function vFt(e={}){let t=_Ft();return{Referer:dhn(),"User-Agent":ob,...t?{Cookie:t}:{},...e}}function SFt(e={}){let t=phn();return{...t?{csrf_token:t}:{},...e}}function yhn(e=[]){if(!e.length)return null;let t=e.find(s=>String(s?.payload?.errorCode)==="0"&&s?.payload?.token);if(t)return t;let r=e.find(s=>["51","28"].includes(String(s?.payload?.errorCode)));if(r)return r;let n=e.find(s=>["33","12","13"].includes(String(s?.payload?.errorCode)));return n||e[0]}async function TFt(e,t={},r={}){let n=lhn(),s=[];for(let a of n.length?n:[KCe()]){let o=await Ahn(`https://${a}${e}`,SFt(t),vFt(r));if(s.push({host:a,payload:o}),String(o?.errorCode)==="0"&&o?.token)return Ze.set("reviewActiveHost",a),{host:a,payload:o,attempts:s}}let i=yhn(s)||{host:KCe(),payload:{}};return i?.host&&Ze.set("reviewActiveHost",i.host),{host:i.host,payload:i.payload,attempts:s}}async function zl(e,t,r={},n=2){try{let s=await Xe.post(e,t,{headers:r,timeout:15e3});return s.status===429&&n>0?(await Yt(1e3),await zl(e,t,r,n-1)):s}catch(s){if(s?.response?.status===429&&n>0)return await Yt(1e3),await zl(e,t,r,n-1);throw s}}async function mp(e,t={},r=2){try{let n=await Xe.get(e,{headers:t,timeout:15e3});return n.status===429&&r>0?(await Yt(1e3),await mp(e,t,r-1)):n}catch(n){if(n?.response?.status===429&&r>0)return await Yt(1e3),await mp(e,t,r-1);throw n}}async function bFt(e="GET:drive/v1/files",t={}){let r=gp(),{timestamp:n,sign:s}=ohn(r),i={client_id:Kx,action:e,device_id:r,captcha_token:"",meta:{client_version:ab,package_name:sG,timestamp:n,captcha_sign:s,user_id:Ze.get("userId")||"",...t},redirect_uri:K0n},a=QCe();try{let c=(await zl(`${ay}v1/shield/captcha/init`,i,a)).data||{};return{token:c.captcha_token||"",url:c.url||"",expiresIn:c.expires_in||0,raw:c}}catch(o){throw rs("getAppActionCaptchaInfo error",{action:e,message:o?.message||String(o),response:o?.response?.data||null,data:i}),o}}async function vhn(e){let t=lf(e);return t.account?await bFt("POST:/v1/auth/signin/token",t.captchaMeta):{token:"",url:"",expiresIn:0,raw:{}}}async function Shn(e){let t=lf(e);if(!t.account)return{token:"",url:"",expiresIn:0,raw:{}};let r={client_id:uf,action:"POST:/v1/auth/signin",device_id:Gx,captcha_token:"",meta:t.captchaMeta},s=(await zl(`${ay}v1/shield/captcha/init`,r,{"User-Agent":zx,"Content-Type":"application/json"})).data||{};return{token:s.captcha_token||"",url:s.url||"",expiresIn:s.expires_in||0,raw:s}}async function IFt(){await WCe();let{payload:e}=await TFt("/xluser.core.login/v3/sendsms",yFt()),t=JCe(lf(ti.username).account);if(["28","51"].includes(String(e?.errorCode||"").trim())&&t?.verificationId)return{...e,token:t.verificationId,reviewState:t.reviewState||gB(),reused:!0};if(String(e?.errorCode)!=="0"||!e?.token){let n=e?.reviewurl?`https://i.xunlei.com${e.reviewurl}`:"";throw uc(e?.errorDesc||e?.error_description||e?.error||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",{verifyUrl:n,response:e})}e.creditkey&&uG(e.creditkey);let r=Date.now()+Number(e.expires_in||e.expiresIn||300)*1e3;return e.token&&(await Ze.set("reviewSmsToken",e.token),await Ze.set("reviewSmsExpiresAt",String(r))),{...e,expiresAt:r,reviewState:{...gB(),creditKey:String(e.creditkey||Ze.get("creditKey")||"").trim(),reviewSmsToken:String(e.token||"").trim(),reviewSmsExpiresAt:String(r)}}}function XCe(e,t={}){let r=Number(t.expiresAt||Ze.get("reviewSmsExpiresAt")||0);return{phone:e,verificationId:t.token||"",expiresAt:r,expiresIn:r>Date.now()?Math.max(0,Math.ceil((r-Date.now())/1e3)):Number(t.expiresIn||300),selectedChannel:"sms",remaining:null,reviewState:t.reviewState||gB()}}function JCe(e=""){let t=String(Ze.get("reviewSmsToken")||"").trim(),r=Number(Ze.get("reviewSmsExpiresAt")||0);if(!t||r>0&&r<=Date.now())return null;let n=gB();return n.creditKey&&(n.reviewUrl||n.reviewMainHost)?XCe(e,{token:t,expiresAt:r,reviewState:n}):null}function Thn(e){let t=String(e?.data?.response?.errorCode||"").trim();return t==="12"||t==="13"}async function bhn(e,t={}){if(!!!t.forceSend){let s=JCe(e);if(s)return s}let n=await IFt();return XCe(e,n)}async function Ihn(e,t){await WCe();let r=await Ehn(`${uhn()}/xluser.core.login/v3/checksms`,SFt(yFt({token:t,smsCode:String(e||"").trim()})),vFt());if(rs("checksms payload",r),(r?.creditkey||r?.creditKey)&&uG(r.creditkey||r.creditKey),!(String(r?.blogresult||"").trim()==="0"||String(r?.errorCode||"").trim()==="0"||String(r?.error||"").trim().toLowerCase()==="success"))throw uc(r?.msg||r?.errorDesc||"\u9A8C\u8BC1\u7801\u6821\u9A8C\u5931\u8D25",{response:r});let s=String(r?.userid||r?.userID||"").trim();s&&await Ze.set("reviewUserId",s);let i=String(r?.securitytoken||r?.securityToken||"").trim();return i&&await Ze.set("reviewSecurityToken",i),r}async function Rhn(e){await WCe();let{payload:t}=await TFt("/credit/v1/report",{deviceid:gp(),creditkey:Ze.get("creditKey")||"",type:"sms",scene:"34",userid:Ze.get("reviewUserId")||"",data:e,result:"0",appid:iG});return Number(t?.code)===200&&t?.creditkey&&uG(t.creditkey),t}async function ZCe(e,t,r=Ze.get("creditKey")||""){if(!lf(e).account)return"";let s=ahn(e),a=(await zl(`${ay}xluser.core.login/v3/login`,{protocolVersion:ZUt,sequenceNo:"1000012",platformVersion:ZK,isCompressed:"0",appid:iG,clientVersion:ab,peerID:"00000000000000000000000000000000",appName:eFt,sdkVersion:$0n,devicesign:hFt(),netWorkType:"WIFI",providerName:"NONE",deviceModel:"M2004J7AC",deviceName:"Xiaomi_M2004j7ac",OSVersion:"12",creditkey:r,hl:"zh-CN",userName:s,passWord:t,verifyKey:"",verifyCode:"",isMd5Pwd:"0"},QCe({userAgent:q0n,acceptLanguage:""}))).data||{};if(rs("coreLogin response",{creditKey:r,data:a}),a?.error==="review_panel")throw _hn(a.reviewurl||"",a.creditkey||r),uc(a.error_description||a.errorDesc||"\u9700\u8981\u5B89\u5168\u9A8C\u8BC1",{verifyUrl:a.reviewurl||"",reviewUrl:a.reviewurl||"",creditKey:a.creditkey||r||"",reviewUserId:Ze.get("reviewUserId")||"",response:a});if(!a?.sessionID)throw uc(a?.error_description||a?.errorDesc||a?.error||"\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:a});return a.sessionID}async function exe(e,t){let r=lf(e),n=await vhn(r.account);if(!n.token)throw uc("\u83B7\u53D6\u767B\u5F55\u9A8C\u8BC1\u7801\u4EE4\u724C\u5931\u8D25",{verifyUrl:n.url||""});let i=(await zl(`${ay}v1/auth/signin/token`,{client_id:Kx,client_secret:XUt,provider:"access_end_point_token",signin_token:t},QCe({captchaToken:n.token}))).data||{};return rs("signInWithSessionToken response",i),i}async function Chn(e,t){let r=lf(e),n=await Shn(r.account);if(!n.token)throw uc("\u83B7\u53D6\u7F51\u9875\u767B\u5F55\u9A8C\u8BC1\u7801\u4EE4\u724C\u5931\u8D25",{verifyUrl:n.url||"",response:n.raw||null});let i=(await zl(`${ay}v1/auth/signin`,{username:r.account,password:t,client_id:uf},{"User-Agent":zx,"Content-Type":"application/json","accept-language":"zh-cn","x-captcha-token":n.token,"x-client-id":uf,"x-device-id":Gx})).data||{};return rs("signInWithWebCredentials response",i),i}async function lG(e={}){if(!(e.token_type&&e.access_token))return"";let t=`${e.token_type} ${e.access_token}`,r=Si(t);return await Vx({auth:t,appAuth:r===iy?t:"",userId:e.user_id||"",refreshToken:e.refresh_token||"",reviewSmsToken:"",reviewSmsExpiresAt:""}),cFt(),t}function xhn(){return{auth:String(Ze.get("auth")||"").trim(),appAuth:String(Ze.get("appAuth")||"").trim(),refreshToken:String(Ze.get("refreshToken")||"").trim(),userId:String(Ze.get("userId")||"").trim()}}function dG(e="\u8FC5\u96F7\u767B\u5F55\u6001\u672A\u5B8C\u6574\u4FDD\u5B58",t={}){let r=t.requireAppAuth!==!1,n=xhn();if(!(r?n.auth&&n.appAuth&&n.refreshToken&&n.userId:n.auth&&n.refreshToken&&n.userId))throw uc(e,{state:n});return n}async function EB(e){let t=String(e||Ze.get("appAuth")||Ze.get("auth")||"").trim();if(!t)throw uc("\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u4E3A\u7A7A");let r=await lb(t,"GET:drive/v1/files"),n=cb({authorization:t,captchaToken:r}),s=new URLSearchParams({parent_id:"",limit:"1",with_audit:"true",thumbnail_size:"SIZE_SMALL"});try{await mp(`${C0}drive/v1/files?${s.toString()}`,n,0)}catch(i){throw rs("validatePanAuthState error",i?.response?.data||{message:i?.message||""}),uc(sy(i)||"\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u6821\u9A8C\u5931\u8D25",{response:i?.response?.data||null})}}async function whn(e){let t=[],r=String(Ze.get("creditKey")||"").trim();r&&t.push(r),t.push("");let n=null;for(let s of[...new Set(t)])try{let i=await ZCe(e,ti.password,s),a=await exe(e,i);if(!await lG(a))throw uc("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:a});let c=dG("\u8FC5\u96F7\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93");return await EB(c.appAuth),c}catch(i){n=i}throw n||uc("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25")}async function txe(){if(!String(Ze.get("refreshToken")||"").trim())return"";try{let t=await qx(iy,tG,ib);if(t)return t}catch(t){console.error("[\u8FC5\u96F7] \u5237\u65B0Pan\u8BA4\u8BC1\u5931\u8D25:",sy(t))}try{let t=await qx(uf,WUt,aG);t&&await Ze.set("auth",t)}catch(t){console.error("[\u8FC5\u96F7] \u5237\u65B0\u7F51\u9875\u767B\u5F55\u8BA4\u8BC1\u5931\u8D25:",sy(t))}try{let t=await qx(iy,tG,ib);if(t)return t}catch(t){console.error("[\u8FC5\u96F7] \u4F7F\u7528\u6700\u65B0\u5237\u65B0\u4EE4\u724C\u91CD\u8BD5Pan\u8BA4\u8BC1\u5931\u8D25:",sy(t))}return""}async function VUt(e=ti.username,t=ti.password){let r=lf(e);if(!r.account||!t)return"";try{let n=await fG(r.account,t);rs("recoverPanAuthWithWebSignin web state",{userId:n.userId,audience:Si(n.auth),hasRefreshToken:!!n.refreshToken});let s=await txe(),i=ny(s)?s:ny(n.auth)?n.auth:"";if(!i)throw uc("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6210\u529F\uFF0C\u4F46\u672A\u80FD\u6362\u53D6\u7F51\u76D8\u767B\u5F55\u6001");return await Ze.set("appAuth",i),await EB(i),i}catch(n){return console.error("[\u8FC5\u96F7] \u91CD\u65B0\u7F51\u9875\u767B\u5F55\u6362\u53D6Pan\u8BA4\u8BC1\u5931\u8D25:",sy(n)),""}}async function Nhn(e,t=ti.password){let r=await fG(e,t);rs("bootstrapPanAuthFromWebSignin web state",{userId:r.userId,audience:Si(r.auth),hasRefreshToken:!!r.refreshToken});let n=await txe(),s=ny(n)?n:ny(r.auth)?r.auth:"";if(!s)throw uc("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6210\u529F\uFF0C\u4F46\u672A\u80FD\u6362\u53D6\u7F51\u76D8\u767B\u5F55\u6001");await Ze.set("appAuth",s);let i=dG("\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u6362\u53D6\u7ED3\u679C\u672A\u843D\u5E93");return await EB(s),{...i,appAuth:s}}async function fG(e,t=ti.password){let r=await Chn(e,t);if(!await lG(r))throw uc(sy({response:{data:r}})||"\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:r});return dG("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93",{requireAppAuth:!1})}async function RFt(e,t,r={}){await nu(e);let n=!!r.forceSend,s=lf(t);if(!s.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(cG(s.account))throw new Error("\u9A8C\u8BC1\u7801\u767B\u5F55\u4EC5\u652F\u6301\u624B\u673A\u53F7");if(!ti.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");if(!n){let i=JCe(s.account);if(i)return i}if(mhn())try{return await bhn(s.account,{forceSend:n})}catch(i){if(!Thn(i))throw i;await Vx({reviewSmsToken:"",reviewCookie:"",reviewCsrfToken:"",reviewActiveHost:""})}try{let i=await ZCe(s.account,ti.password),a=await exe(s.account,i);if(!await lG(a))throw uc("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25\uFF0C\u672A\u83B7\u53D6\u5230\u767B\u5F55\u6001",{response:a});let c=dG("\u8FC5\u96F7\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93");return await EB(c.appAuth),{autoLoggedIn:!0,userId:c.userId,hasRefreshToken:!!c.refreshToken}}catch(i){if(i?.data?.verifyUrl||i?.data?.reviewUrl||i?.data?.response?.error==="review_panel"){let a=await IFt();return XCe(s.account,a)}throw i}}async function CFt(e,{username:t="",password:r=""}={}){await AB(e,{username:t,password:r});let n=lf(ti.username);if(!n.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(!ti.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");let s=await fG(n.account,ti.password);return{userId:s.userId,hasRefreshToken:!!s.refreshToken,audience:Si(s.auth)}}async function xFt(e,{username:t="",password:r="",verificationId:n="",verificationCode:s=""}={}){await AB(e,{username:t,password:r});let i=lf(ti.username);if(!i.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(cG(i.account))throw new Error("\u9A8C\u8BC1\u7801\u767B\u5F55\u4EC5\u652F\u6301\u624B\u673A\u53F7");if(!ti.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");let a=String(n||"").trim()||String(Ze.get("reviewSmsToken")||"").trim();if(!a)throw new Error("\u8BF7\u5148\u53D1\u9001\u9A8C\u8BC1\u7801");if(!String(s||"").trim())throw new Error("\u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801");try{let o=await Ihn(String(s||"").trim(),a);if(o?.securitytoken)try{await Rhn(o.securitytoken)}catch{}(o?.creditkey||o?.creditKey)&&uG(o.creditkey||o.creditKey);try{let u=await Nhn(i.account,ti.password);return{userId:u.userId,hasRefreshToken:!!u.refreshToken}}catch(u){rs("verified web signin fallback",{message:sy(u),response:u?.response?.data||u?.data?.response||null})}let c=await whn(i.account);return{userId:c.userId,hasRefreshToken:!!c.refreshToken}}catch(o){await dFt(!1,{preserveReviewSmsToken:!0});let c=sy(o);throw uc(c==="\u64CD\u4F5C\u6210\u529F"?"\u77ED\u4FE1\u9A8C\u8BC1\u7801\u5DF2\u6821\u9A8C\uFF0C\u4F46\u8FC5\u96F7\u6CA1\u6709\u8FD4\u56DE\u53EF\u7528\u767B\u5F55\u6001":c,{verifyUrl:o?.data?.verifyUrl||o?.data?.reviewUrl||"",response:o?.data?.response||null})}}async function qx(e,t,r=ob){let n=Ze.get("refreshToken");if(!n)return"";let s={client_id:e,client_secret:t,grant_type:"refresh_token",refresh_token:n},a=(await zl(`${ay}v1/auth/token`,s,{"User-Agent":r,"Content-Type":"application/json","x-client-id":e,"x-device-id":e===uf?Gx:gp()})).data||{};return a.refresh_token&&await Ze.set("refreshToken",a.refresh_token),a.token_type&&a.access_token?`${a.token_type} ${a.access_token}`:""}async function Ohn(){let e=Ze.get("refreshToken");if(!e)return await VUt();if(!e)return"";let t=await txe();return ny(t)?(await Ze.set("appAuth",t),t):await VUt()}async function ub(){let e=Ze.get("appAuth");if(ny(e))return rs("getAppAuth cached appAuth",{audience:Si(e),userId:Ze.get("userId")||""}),e;let t=Ze.get("auth");if(ny(t))return await Ze.set("appAuth",t),rs("getAppAuth promote auth",{audience:Si(t),userId:Ze.get("userId")||""}),t;let r=await Ohn();return ny(r)?(await Ze.set("appAuth",r),rs("getAppAuth refreshed",{audience:Si(r),userId:Ze.get("userId")||""}),r):""}async function wFt(e,t){let{timestamp:r,sign:n}=chn(Fx),s={client_id:VCe,action:`${t}:${e}`,device_id:Fx,captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:V0n,client_version:sFt,captcha_sign:n,timestamp:r,user_id:Ze.get("userId")||""}},i={"User-Agent":zx,"Content-Type":"application/json","x-client-id":VCe,"x-device-id":Fx};return(await zl(`${ay}v1/shield/captcha/init`,s,i)).data?.captcha_token||""}async function NFt(e="GET:drive/v1/files"){let t={client_id:uf,action:e,device_id:Gx,captcha_token:"",meta:{package_name:k0n,client_version:e==="GET:CAPTCHA_TOKEN"?M0n:JUt,captcha_sign:e==="GET:CAPTCHA_TOKEN"?U0n:B0n,timestamp:String(Date.now()),user_id:Ze.get("userId")||""}};return(await zl(`${ay}v1/shield/captcha/init`,t,{"User-Agent":e==="GET:CAPTCHA_TOKEN"?aG:zx,"Content-Type":"application/json",...e==="GET:CAPTCHA_TOKEN"?{"Accept-Encoding":"gzip, deflate, br"}:{}})).data?.captcha_token||""}async function OFt(e="GET:drive/v1/files"){return(await bFt(e)).token||""}async function lb(e="",t="GET:drive/v1/files"){return Si(e)===uf?await NFt(t==="GET:CAPTCHA_TOKEN"?"GET:CAPTCHA_TOKEN":t):await OFt(t)}async function Dhn(){let e=String(Ze.get("appAuth")||Ze.get("auth")||"").trim();return Si(e)===uf?await NFt("GET:CAPTCHA_TOKEN"):await OFt("GET:CAPTCHA_TOKEN")}function DFt(e){if(!e||typeof e!="string")return null;try{let t=new URL(e);if(!t.hostname.includes("pan.xunlei.com"))return null;let r=t.pathname.split("/").filter(Boolean).pop();if(!r)return null;let n=t.searchParams.get("pwd")||t.searchParams.get("passcode")||t.searchParams.get("password")||"";return{shareId:r,passCode:n}}catch{let r=z0n.exec(e);return r?{shareId:r[1],passCode:r[2]||""}:null}}function PFt(e=[]){return e.map(t=>({id:t.id,name:t.name,parentId:t.parent_id||t.parentId||"",size:t.size||0,isDirectory:!t.mime_type}))}async function Phn(e,t,r=""){let s={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36","accept-language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6","x-captcha-token":await wFt("/drive/v1/share","GET"),"x-client-id":GCe,"x-device-id":Fx},i=`${C0}drive/v1/share?share_id=${e}&pass_code=${t||""}&limit=100&page_token=${r||""}&thumbnail_size=SIZE_SMALL`,o=(await mp(i,s)).data||{};return{files:PFt(o.files||[]),passCodeToken:o.pass_code_token||"",nextPageToken:o.next_page_token||o.nextPageToken||o.page_token||""}}async function Lhn(e,t,r,n=""){let i={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36","accept-language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6","x-captcha-token":await wFt("/drive/v1/share","GET"),"x-client-id":GCe,"x-device-id":Fx},a=`${C0}drive/v1/share/detail?share_id=${e}&parent_id=${r||""}&pass_code_token=${encodeURIComponent(t||"")}&limit=100&page_token=${n||""}&thumbnail_size=SIZE_SMALL`,c=(await mp(a,i)).data||{};return{files:PFt(c.files||[]),nextPageToken:c.next_page_token||c.nextPageToken||c.page_token||""}}async function Mhn(e,t){let r="",n="",s=[];do{let{files:i,passCodeToken:a,nextPageToken:o}=await Phn(e,t,r);a&&(n=a),s.push(...i),r=o}while(r);return{files:s,passCodeToken:n}}async function khn(e,t,r){let n="",s=[];do{let{files:i,nextPageToken:a}=await Lhn(e,t,r,n);s.push(...i),n=a}while(n);return s}function jUt(e={}){if(!e?.link?.url||e?.is_visible===!1)return Number.NEGATIVE_INFINITY;let t=0;e?.is_origin&&(t+=1e7);let r=String(e?.resolution_name||e?.media_name||"").trim().toUpperCase(),n=r.match(/(\d+(?:\.\d+)?)\s*K/);n&&(t+=Math.round(Number(n[1])*1e6));let s=r.match(/(\d{3,4})\s*P/);s&&(t+=Number(s[1])*1e4),r.includes("\u539F\u753B")&&(t+=1e7),r.includes("\u84DD\u5149")&&(t+=3e6),r.includes("\u8D85\u6E05")&&(t+=108e4),r.includes("\u9AD8\u6E05")&&(t+=72e4),r.includes("\u6807\u6E05")&&(t+=48e4);let i=e?.video||{},a=Number.isFinite(Number(i?.width))?Number(i.width):0,o=Number.isFinite(Number(i?.height))?Number(i.height):0,c=Number.isFinite(Number(i?.bit_rate))?Number(i.bit_rate):0,u=Number.isFinite(Number(i?.frame_rate))?Number(i.frame_rate):0,l=Number.isFinite(Number(e?.priority))?Number(e.priority):999;return t+=Math.max(a,o)*100,t+=Math.min(a,o),t+=Math.round(c/100),t+=u*10,t+=Math.max(0,1e3-l),t}function rxe(e=[]){return e.filter(t=>t?.is_visible!==!1&&t?.link?.url).sort((t,r)=>jUt(r)-jUt(t))}function Bhn(e={}){let t=rxe(Array.isArray(e.medias)?e.medias:[]);if(t.length>0)return t[0].link.url||"";let r=e?.links?.["application/octet-stream"]?.url;if(r)return r;let n=Object.values(e?.links||{}).find(s=>s?.url)?.url;return n||e?.web_content_link||""}function Uhn(e=""){let t=String(e||"").toLowerCase();return t.includes("video_x_matroska")||t.includes("matroska")||t.includes("fext=mkv")||/\.mkv(?:[?#]|$)/.test(t)}function KUt(e=""){let t=String(e||"").toLowerCase();return t.includes("fext=mp4")||t.includes("video_mp4")||/\.mp4(?:[?#]|$)/.test(t)||/\.m3u8(?:[?#]|$)/.test(t)}function _B(e="",t=""){let r=$hn(e);KUt(t)&&(r+=1e7),Uhn(t)&&(r-=1e7);let n=String(e||"").trim().toUpperCase();return(n==="\u539F\u753B"||n==="\u539F\u6587\u4EF6")&&!KUt(t)&&(r-=1e5),r}function nxe(e={},t=""){let r=[],n=new Set,s=(a,o)=>{!a||!o||n.has(o)||(n.add(o),r.push(a,o))};if(Jg(t)){let a=rxe(Array.isArray(e.medias)?e.medias:[]).sort((o,c)=>_B(eG(c,e,"\u539F\u753B"),c?.link?.url||"")-_B(eG(o,e,"\u539F\u753B"),o?.link?.url||""));for(let o of a)s(eG(o,e,"\u539F\u753B"),o?.link?.url||"")}let i=e?.links?.["application/octet-stream"]?.url;i&&s("\u539F\u6587\u4EF6",i),e?.web_content_link&&s(Jg(t)?"\u539F\u6587\u4EF6":"\u7F51\u9875\u4E0B\u8F7D",e.web_content_link);for(let a of Object.values(e?.links||{}))a?.url&&s(Jg(t)?"\u539F\u6587\u4EF6":"\u4E0B\u8F7D\u94FE\u63A5",a.url);return r.length>0?r:Fhn(e,t)}function eG(e={},t={},r="\u539F\u753B"){if(e?.is_origin)return"\u539F\u753B";let n=String(e?.resolution_name||"").trim();if(n)return n.toUpperCase();let s=String(e?.media_name||"").trim();return s?s.replace(/\s+/g," "):t?.mime_type?.startsWith("video/")?r:"\u539F\u6587\u4EF6"}function Fhn(e={},t=""){let r=[],n=new Set,s=(o,c)=>{!o||!c||n.has(c)||(n.add(c),r.push(o,c))},i=rxe(Array.isArray(e.medias)?e.medias:[]);for(let o of i)s(eG(o,e,Jg(t)?"\u539F\u753B":"\u539F\u6587\u4EF6"),o.link.url);if(r.length>0)return r;let a=Bhn(e);return a&&s(Jg(t)?"\u539F\u753B":"\u539F\u6587\u4EF6",a),r}function $hn(e=""){let t=String(e||"").trim().toUpperCase();if(!t)return 0;if(t==="\u539F\u753B"||t==="\u539F\u6587\u4EF6")return 1e4;let r=t.match(/(\d+(?:\.\d+)?)\s*K/);if(r)return Math.round(Number(r[1])*1e3);let n=t.match(/(\d{3,4})\s*P/);return n?Number(n[1]):t.includes("\u84DD\u5149")?3e3:t.includes("\u8D85\u6E05")?1080:t.includes("\u9AD8\u6E05")?720:t.includes("\u6807\u6E05")?480:1}function LFt(e=[],t=[],r=""){let n=[],s=new Set,i=new Set,a=(c,u)=>{!c||!u||s.has(u)||Jg(r)&&i.has(String(c||"").trim().toUpperCase())||(s.add(u),Jg(r)&&i.add(String(c||"").trim().toUpperCase()),n.push(c,u))};for(let c=0;cu.score-c.score),o.flatMap(c=>[c.label,c.url])}function MFt(e=[]){let t=[];for(let r=0;r{let s=String(n.label||"").trim().toUpperCase();return s==="\u539F\u753B"||s==="\u539F\u6587\u4EF6"});return r.sort((n,s)=>{let i=a=>String(a.label||"").trim().toUpperCase()==="\u539F\u753B"?2:1;return i(s)-i(n)||_B(s.label,s.url)-_B(n.label,n.url)}),r[0]||null}function Hhn({shareId:e="",fileId:t="",passCodeToken:r="",fileName:n="",fileSize:s=""}={}){return[e,t,r,n,s].join("*")}async function sxe(e,t=""){if(!e)return null;let r=await ub();if(!r)return null;let n=Si(r)===uf,s=t==="FETCH",i=s&&!n?await Dhn():await lb(r,"GET:drive/v1/files"),a=s?n?{"User-Agent":aG,Accept:"*/*","Accept-Encoding":"gzip, deflate, br",authorization:r,"content-type":"application/json","x-device-id":Gx,"x-captcha-token":i}:{"User-Agent":ib,Accept:"*/*","Accept-Encoding":"gzip, deflate, br",authorization:r,"content-type":"application/json","x-client-id":iy,"x-device-id":gp(),"x-captcha-token":i}:cb({authorization:r,captchaToken:i,userAgent:n?zx:tFt,acceptLanguage:n?"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6":"zh-cn"}),o=new URLSearchParams({space:"","with[0]":"public_share_tag"});t&&o.set("usage",t);let c;try{c=await mp(`${C0}drive/v1/files/${e}?${o.toString()}`,a),rs("fetchDriveFileInfo response",{fileId:e,usage:t,hasLinks:!!c?.data?.links,linkTypes:Object.keys(c?.data?.links||{}),hasWebContentLink:!!c?.data?.web_content_link,mediaCount:Array.isArray(c?.data?.medias)?c.data.medias.length:0})}catch(u){throw rs("fetchDriveFileInfo error",{fileId:e,usage:t,message:u?.message||String(u),response:u?.response?.data||null}),u}return c.data||null}function Vhn(e=""){let t=String(e??"").trim();return!t||t==="0"||t==="/"||t.toLowerCase()==="root"?"":t}function GUt(e={}){return String(e?.kind||"").toLowerCase().includes("folder")}async function kFt(e,t="",r=1,n=100){await nu(e);let s=await ub();if(!s)return{page:1,pagecount:1,limit:n,total:0,count:0,list:[],folderList:[],fileList:[],nextPageToken:""};let i=Math.max(1,Number.parseInt(r,10)||1),a=Math.min(200,Math.max(1,Number.parseInt(n,10)||100)),o=await lb(s,"GET:drive/v1/files"),c=cb({authorization:s,captchaToken:o}),u="",l={};for(let g=1;g<=i;g+=1){let _=new URLSearchParams({parent_id:Vhn(t),page_token:u,space:"",with_audit:"true",thumbnail_size:"SIZE_SMALL",limit:String(a),filters:'{"phase":{"eq":"PHASE_TYPE_COMPLETE"},"trashed":{"eq":false}}'});if(l=(await mp(`${C0}drive/v1/files?${_.toString()}`,c)).data||{},g>=i||(u=String(l.next_page_token||l.nextPageToken||l.page_token||"").trim(),!u))break}let d=Array.isArray(l.files)?l.files:[],f=String(l.next_page_token||l.nextPageToken||l.page_token||"").trim(),h=d.filter(GUt),p=d.filter(g=>!GUt(g)),m=(i-1)*a+d.length+(f?a:0);return{page:i,pagecount:f?i+1:i,limit:a,total:Number(l.count||m||d.length||0),count:Number(l.count||m||d.length||0),list:d,folderList:h,fileList:p,nextPageToken:f}}async function ixe(e,t="",r=""){if(await nu(e),!t)return[];let n=[];for(let s of["FETCH","","CONSUME","PLAY","DISPLAY"])try{let i=await sxe(t,s),a=nxe(i||{},r);a.length>0&&(n=LFt(n,a,r))}catch(i){console.error(`[\u8FC5\u96F7] \u83B7\u53D6\u81EA\u6709\u6587\u4EF6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25(${s||"DEFAULT"}):`,i.message||i)}return n}async function BFt(e,t="",r=""){let n=await ixe(e,t,r);return{url:n[1]||"",entries:n}}async function UFt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i,allEntries:a=!1}){let o=Hhn({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s}),c=rG.get(o)||"";if(!c){if(rs("getSavedFileEntries save start",{shareId:e,fileId:t,fileName:n,fileSize:s,clean:i}),c=await $Ft({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i}),!c)return[];rG.set(o,c)}rs("getSavedFileEntries saved file",{cacheKey:o,savedFileId:c});let u=[],l=[],d=new Set;for(let f of["FETCH","","CONSUME","PLAY","DISPLAY"])try{rs("getSavedFileEntries fetch usage",{savedFileId:c,usage:f});let h=await sxe(c,f),p=nxe(h||{},n);for(let m=0;m0&&(u=LFt(u,p,n))}catch(h){console.error(`[\u8FC5\u96F7] \u901A\u8FC7\u8F6C\u5B58\u6587\u4EF6\u83B7\u53D6\u94FE\u63A5\u5931\u8D25(${f||"DEFAULT"}):`,h.message||h)}return a?l:u}function jhn({shareId:e,fileId:t,passCodeToken:r,size:n,name:s,subtitle:i}){let a=[e,t,r||"",n||0,encodeURIComponent(s||"")];return i?.id&&a.push(i.id,i.size||0,encodeURIComponent(i.name||""),i.ext||""),Dt(a,{structured:!0})}async function Khn(e){let t=typeof e=="string"?DFt(e):e;if(!t?.shareId)return[];let{files:r,passCodeToken:n}=await Mhn(t.shareId,t.passCode||"");if(!n)return[];let s=[],i=(o,c="")=>{if(!o?.length)return;let u=[],l=[],d=[];for(let h of o)h.isDirectory?u.push({id:h.id,path:c+(c?"/":"")+h.name}):Jg(h.name)?l.push(h):St(h.name)&&d.push(h);let f=Gt(l.map(h=>({vod_id:h.id,vod_name:h.name,vod_size:h.size,raw:h})));for(let h of f){let p=h.raw,m=xr(p.name,d,_=>_.name),g=m?{id:m.id,size:m.size,name:m.name,ext:rr(m.name)}:null;s.push({vod_id:jhn({shareId:t.shareId,fileId:p.id,passCodeToken:n,size:p.size,name:p.name,subtitle:g}),vod_name:p.name,vod_size:p.size})}return u},a=async(o,c)=>{let u=i(o,c)||[];u.length!==0&&await E0(u,async l=>{let d=await khn(t.shareId,n,l.id);await a(d,l.path)},3)};return await a(r,""),s}async function zUt(){if(!Gl)return;let e=await ub();if(!e)return;let t=await lb(e,"GET:drive/v1/files"),r=cb({authorization:e,captchaToken:t}),n=`${C0}drive/v1/files?parent_id=${Gl}&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,s;try{s=await mp(n,r)}catch(c){throw rs("clearSaveDir list error",{message:c?.message||String(c),response:c?.response?.data||null}),c}let i=s.data?.files||[];if(!i.length)return;let o={ids:i.map(c=>c.id),space:""};try{await zl(`${C0}drive/v1/files:batchDelete`,o,r)}catch(c){throw rs("clearSaveDir delete error",{message:c?.message||String(c),response:c?.response?.data||null,body:o}),c}}async function Ghn(e){if(Gl){e&&await zUt();return}let t=await ub();if(!t)return;let r=await lb(t,"GET:drive/v1/files"),n=cb({authorization:t,captchaToken:r}),s=`${C0}drive/v1/files?parent_id=&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,i;try{i=await mp(s,n)}catch(u){throw rs("createSaveDir list error",{message:u?.message||String(u),response:u?.response?.data||null}),u}let a=i.data?.files||[];for(let u of a)if(u?.name===UUt){Gl=u.id,rs("createSaveDir reuse",{saveDirId:Gl,clean:e}),e&&await zUt();return}let o={parent_id:"",name:UUt,kind:"drive#folder",space:""},c;try{c=await zl(`${C0}drive/v1/files`,o,n)}catch(u){throw rs("createSaveDir create error",{message:u?.message||String(u),response:u?.response?.data||null,body:o}),u}c.data?.file?.id&&(Gl=c.data.file.id,rs("createSaveDir created",{saveDirId:Gl,clean:e}))}async function FFt(){if(!Gl)return[];let e=await ub();if(!e)return[];let t=await lb(e,"GET:drive/v1/files"),r=cb({authorization:e,captchaToken:t}),n=`${C0}drive/v1/files?parent_id=${Gl}&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,s;try{s=await mp(n,r)}catch(i){throw rs("listFolderFiles error",{message:i?.message||String(i),response:i?.response?.data||null,saveDirId:Gl}),i}return s.data?.files||[]}async function zhn(e,t){let r=await FFt();if(rs("findSavedFileId list",{expectedName:e,expectedSize:t,files:r.map(i=>({id:i?.id,name:i?.name,size:i?.size,phase:i?.phase}))}),!r.length)return"";let n=Number(t||0),s=r.find(i=>i.name===e&&(!n||i.size===n));return s||(s=r.find(i=>i.name===e),s)||n&&(s=r.find(i=>i.size===n),s)?s.id:r[0]?.id||""}async function $Ft({fileId:e,shareId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i}){if(await Ghn(i),i&&rG.clear(),!Gl)return"";let a=await ub();if(!a)return"";let o=await lb(a,"POST:drive/v1/share/restore"),c=cb({authorization:a,captchaToken:o}),u={parent_id:Gl,share_id:t,pass_code_token:r,ancestor_ids:[],file_ids:[e],specify_parent_id:!0},l;try{l=await zl(`${C0}drive/v1/share/restore`,u,c)}catch(h){return rs("share restore error",{message:h?.message||String(h),response:h?.response?.data||null,body:u}),console.error("[\u8FC5\u96F7] \u8F6C\u5B58\u5931\u8D25:",h.message||h),""}let d=l.data||{};rs("share restore response",{data:d,expectedName:n,expectedSize:s});let f=d?.file?.id||d?.file_id||d?.files?.[0]?.id||"";for(let h=0;h<5;h++){await Yt(1e3*(h+1));let p=await zhn(n,s);if(p)return p}return f}async function qFt(e,t,r,n,s,i=!0){return!e||!t?"":(await axe(e,t,r,n,s,i))[1]||""}async function axe(e,t,r,n,s,i=!0){if(!e||!t)return[];try{return await UFt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i})}catch(a){console.error("[\u8FC5\u96F7] \u901A\u8FC7\u8F6C\u5B58\u6587\u4EF6\u83B7\u53D6\u76F4\u94FE\u5931\u8D25:",a.message||a)}return[]}async function Yhn(e,t,r,n,s,i=!0){if(!e||!t)return[];try{return await UFt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:s,clean:i,allEntries:!0})}catch(a){console.error("[\u8FC5\u96F7] \u83B7\u53D6\u5019\u9009\u76F4\u94FE\u5931\u8D25:",a.message||a)}return[]}async function YUt(e=[],t={},r=0){let n=new Set,s=e.map(a=>jx(a)).filter(a=>!a.url||n.has(a.url)?!1:(n.add(a.url),!a.expiresAt||a.expiresAt>Date.now()+Hx));return(await Promise.all(s.map(async a=>{let o=await thn(a.url,t,r);return o.ok?{...a,priority:lFt(a),probeMs:o.probeMs,totalSize:o.totalSize}:null}))).filter(Boolean).sort((a,o)=>a.priority-o.priority||a.probeMs-o.probeMs||a.usage.localeCompare(o.usage)).slice(0,zCe)}function Qhn(e=[],t=null){let r=e.map((o,c)=>({...jx(o),index:c,active:0,invalid:!1})),n=null,s=!1,i={disposed:!1},a=async()=>{s||typeof t!="function"||(n||(n=Promise.resolve(t()).then(o=>{for(let c of o||[]){if(!c?.url)continue;let u=jx(c),l=r.find(d=>d.url===c.url);if(l){Object.assign(l,u,{invalid:!1});continue}r.push({...u,index:r.length,active:0,invalid:!1})}}).finally(()=>{n=null})),await n)};return{async resolve(o={}){if(i.disposed)throw new Error("xunlei candidate pool disposed");let c=r.filter(d=>!d.invalid&&(!d.expiresAt||d.expiresAt>Date.now()+Hx));if(c.length===0&&(await a(),c=r.filter(d=>!d.invalid&&(!d.expiresAt||d.expiresAt>Date.now()+Hx))),c.length===0){let d=new Error(`chunk ${o.chunkIndex??0} has no usable \u8FC5\u96F7 download URL`);throw d.statusCode=502,d}let u=Math.min(...c.map(d=>Number(d.priority||0)));c=c.filter(d=>Number(d.priority||0)===u);let l=await qCe.acquire(i);if(i.disposed)throw l(),new Error("xunlei candidate pool disposed");try{let d=String(o.previousSource?.signatureKey||"").trim();c.sort((p,m)=>{let g=Ux.default.SHA1(p.url).toString(),_=Ux.default.SHA1(m.url).toString(),y=d&&g===d?1:0,A=d&&_===d?1:0;return p.active+y-(m.active+A)||p.index-m.index});let f=c[0];f.active+=1;let h=!1;return{url:f.url,headers:{},label:f.label,hostKey:(()=>{try{return new URL(f.url).host}catch{return""}})(),signatureKey:Ux.default.SHA1(f.url).toString(),release:async({status:p=0}={})=>{if(h)return;h=!0,f.active=Math.max(0,f.active-1);let m=Number(p);[401,403,404,410].includes(m)&&(f.invalid=!0),m===503&&qCe.penalize(),l()}}}catch(d){throw l(),d}},async dispose(){s=!0,i.disposed=!0,qCe.cancel(i);for(let o of r)o.active=0}}}async function HFt(e,t){let r={reqId:String(e.id||""),method:String(e.method||"").toUpperCase(),url:String(e.url||""),routeFlag:String(e.params?.flag||""),range:String(e.headers?.range||""),userAgent:String(e.headers?.["user-agent"]||""),referer:String(e.headers?.referer||""),cacheHit:!1,downloadUrlSource:"",downloadUrlAudience:"",candidateCount:0,statusCode:0,elapsedMs:0,error:""},n=Date.now();try{await nu(e);let s=e.params.site,i=e.params.what;if(s!=="xunlei"||i!=="src")return;let a;try{a=Br(String(e.params.fileId||""),{decodeUri:!0,minLength:4,fieldOrder:["fileId","passCodeToken","fileSize","encodedFileName"]})}catch{t.sent||t.code(400).send({error:"\u53C2\u6570\u65E0\u6548"});return}let o=String(e.params.shareId||"").trim(),c=String(a.fileId||"").trim(),u=String(a.passCodeToken||"").trim(),l=String(a.fileSize||"").trim(),d="";try{d=decodeURIComponent(a.encodedFileName||"")}catch{d=String(a.encodedFileName||"").trim()}let f=[o,c,u,l,d].join("*"),h={"User-Agent":ib,Accept:"*/*","Accept-Encoding":"identity"},p=Number(l||0),m=Number.isFinite(p)&&p>0?p:0,g=[],_=J0n(f);if(_&&!ehn(_)){let b=_.candidates.filter(I=>!I.expiresAt||I.expiresAt>Date.now()+Hx);g=String(e.params.flag||"").trim()==="redirect"?await YUt(b,h,m):b.slice(0,zCe),g.length>0?(r.cacheHit=!0,r.downloadUrlSource="cache"):(rs("proxy cached original url invalid",{cacheKey:f,expiresAt:_.expiresAt||0}),HCe(f))}else _&&HCe(f);let y=async()=>{let b=await Yhn(o,c,u,d,l,!1),I=await YUt(b,h,m);return I.length>0&&Z0n(f,I),I};g.length===0&&(g=await y(),g.length>0&&(r.downloadUrlSource="fresh"));let A=String(g[0]?.url||"").trim();if(!A){r.statusCode=404,r.error="\u539F\u753B\u5730\u5740\u83B7\u53D6\u5931\u8D25",t.sent||t.code(404).send({error:"\u539F\u753B\u5730\u5740\u83B7\u53D6\u5931\u8D25"});return}if(r.candidateCount=g.length,r.downloadUrlAudience=Si(String(Ze.get("appAuth")||Ze.get("auth")||"")),String(e.params.flag||"").trim()==="redirect"){r.statusCode=302,t.redirect(A);return}let E=Qi(await e.server.db.getObjectDefault("/xunlei/settings",{chunkSize:512*1024,poolSize:FUt,useMultithread:!0,timeout:1e3*60}),{chunkSize:512*1024,poolSize:FUt,useMultithread:!0,timeout:1e3*60});if(!E.useMultithread){t.redirect(A);return}let v=Qhn(g,y);try{return t.headers({"accept-ranges":"bytes","cache-control":"no-store","content-type":rhn(d)}),await oc(e,t,A,f,h,{chunkSize:E.chunkSize,poolSize:Math.min(iFt,E.poolSize),timeout:E.timeout,maxRetries:6,initialChunkSize:Math.min(Q0n,E.chunkSize),startupPoolSize:1,maxCacheBytes:64*1024*1024,resolveUrl:b=>v.resolve(b),disposeUrlResolver:()=>v.dispose()},Number.isFinite(p)&&p>0?p:null,!0)}catch(b){r.error=b?.message||String(b),console.error("[xunlei proxy] chunkStream error, clearing cache:",b.message||b),HCe(f),t.sent||t.redirect(A)}}catch(s){r.error=s?.message||String(s),console.error("[xunlei proxy] error:",s.message||s),t.sent||t.code(500).send({error:s.message||"xunlei proxy error"})}finally{r.elapsedMs=Date.now()-n,r.statusCode=r.statusCode||Number(t?.statusCode||0),X0n(r)}}async function VFt(e,{shareId:t="",fileId:r="",passCodeToken:n="",fileName:s="",fileSize:i="",clean:a=!0}={}){await nu(e);let o={shareId:t,fileId:r,fileName:s,fileSize:i,authAudience:Si(Ze.get("auth")),appAuthAudience:Si(Ze.get("appAuth")),userId:Ze.get("userId")||"",hasRefreshToken:!!Ze.get("refreshToken")},c="";try{c=await ub(),o.resolvedAppAuthAudience=Si(c),o.hasResolvedAppAuth=!!c}catch(l){return o.getAppAuthError=pp(l),o}if(!c){let l=!1;try{let d=await qx(iy,tG,ib);o.appRefreshAttempt={ok:!!d,audience:Si(d)}}catch(d){o.appRefreshAttempt={ok:!1,error:pp(d)}}try{let d=await qx(uf,WUt,aG);o.webRefreshAttempt={ok:!!d,audience:Si(d)},l=!!d}catch(d){o.webRefreshAttempt={ok:!1,error:pp(d)}}if(l)try{let d=await qx(iy,tG,ib);o.appRefreshAfterWebAttempt={ok:!!d,audience:Si(d)}}catch(d){o.appRefreshAfterWebAttempt={ok:!1,error:pp(d)}}}let u="";try{u=await $Ft({shareId:t,fileId:r,passCodeToken:n,fileName:s,fileSize:i,clean:a}),o.savedFileId=u}catch(l){return o.saveError=pp(l),o}try{o.folderFiles=(await FFt()).map(l=>({id:l?.id||"",name:l?.name||"",size:l?.size||0,phase:l?.phase||""}))}catch(l){o.listFolderFilesError=pp(l)}if(!u)return o;o.usages=[];for(let l of["FETCH","","CONSUME","PLAY","DISPLAY"])try{let d=await sxe(u,l),f=nxe(d||{},s),h=MFt(f),p=qhn(f);o.usages.push({usage:l||"DEFAULT",linkTypes:Object.keys(d?.links||{}),links:Object.fromEntries(Object.entries(d?.links||{}).map(([m,g])=>[m,{url:g?.url||""}])),hasWebContentLink:!!d?.web_content_link,webContentLink:d?.web_content_link||"",mediaCount:Array.isArray(d?.medias)?d.medias.length:0,medias:Array.isArray(d?.medias)?d.medias.map(m=>({resolutionName:m?.resolution_name||"",mediaName:m?.media_name||"",isOrigin:!!m?.is_origin,width:Number(m?.video?.width||0),height:Number(m?.video?.height||0),codec:m?.video?.codec||"",linkUrl:m?.link?.url||""})):[],entryCount:f.length/2,labels:f.filter((m,g)=>g%2===0),entries:h,pickedOriginalEntry:p})}catch(d){o.usages.push({usage:l||"DEFAULT",error:pp(d)})}return o}async function jFt(e){await nu(e);let t=String(ti.username||"").trim(),r=String(ti.password||"").trim(),n=lf(t),s={username:n.account,hasPassword:!!r,authAudience:Si(Ze.get("auth")),appAuthAudience:Si(Ze.get("appAuth")),userId:Ze.get("userId")||"",hasRefreshToken:!!Ze.get("refreshToken"),creditKey:String(Ze.get("creditKey")||"").trim()};try{let o=await fG(n.account,r);s.webSignin={ok:!0,audience:Si(o.auth),userId:o.userId,hasRefreshToken:!!o.refreshToken}}catch(o){s.webSignin={ok:!1,error:pp(o)}}s.appSigninAttempts=[];let i=[],a=String(Ze.get("creditKey")||"").trim();a&&i.push(a),i.push("");for(let o of[...new Set(i)]){let c={creditKey:o};try{let u=await ZCe(n.account,r,o);c.coreLogin={ok:!0,sessionId:u};let l=await exe(n.account,u),d=await lG(l);c.signInWithSessionToken={ok:!!d,audience:Si(d)};try{await EB(d),c.validatePanAuthState={ok:!0}}catch(f){c.validatePanAuthState={ok:!1,error:pp(f)}}}catch(u){c.error=pp(u)}s.appSigninAttempts.push(c)}return s}async function KFt(e,t){t&&await nu(t);let r=DFt(e);if(!r)return[];let n=await Khn(r);if(!n?.length)return[];let s=await ht("xunlei");return ba(s,n)}var Ux,QUt,ay,C0,Kx,uf,WUt,GCe,Fx,Gx,XUt,ab,JUt,M0n,sG,k0n,B0n,U0n,iG,F0n,ZUt,ZK,$0n,eFt,ob,q0n,H0n,zx,aG,iy,tG,tFt,ib,rFt,nFt,sFt,VCe,V0n,j0n,UUt,K0n,G0n,z0n,Y0n,Hx,eCs,FUt,iFt,zCe,Q0n,W0n,mB,$x,$Ut,ti,Gl,rG,nG,YCe,Ze,jCe,qCe,hG=ie(()=>{Cr();Ux=Ne(Yi(),1),QUt=Ne(ile(),1);kE();Ds();la();Jc();yi();Zc();ql();A0();JK();$Ce();el();ay="https://xluser-ssl.xunlei.com/",C0="https://api-pan.xunlei.com/",Kx="Xp6vsxz_7IYVw2BB",uf="XW-G4v1H72tgfJym",WUt="Qbaferw2knfQKqxa25EYJGtZ2_6755CMwzXBN3ctW54",GCe="Xqp0kJBXWhwaTpB6",Fx="1bf91caf40093318e8040916eb7ad16a",Gx="652c6bb3cacdb4b80e852dfc3cb3cca4",XUt="Xp6vsy4tN9toTVdMSpomVdXpRmES",ab="8.31.0.9726",JUt="3.1.5",M0n="3.1.1",sG="com.xunlei.downloadprovider",k0n="ThunderPanPlugin",B0n="1.ee2cef5f061a7cdf4374df81b370d2ec",U0n="1.0eada0deeeaac52a6376f2e167fa9f29",iG="40",F0n="34a062aaa22f906fca4fefe9fb3a3021",ZUt="301",ZK="10",$0n="512000",eFt=`ANDROID-${sG}`,ob="ANDROID-com.xunlei.downloadprovider/8.31.0.9726 netWorkType/5G appid/40 deviceName/Xiaomi_M2004j7ac deviceModel/M2004J7AC OSVersion/12 protocolVersion/301 platformVersion/10 sdkVersion/512000 Oauth2Client/0.9 (Linux 4_14_186-perf-gddfs8vbb238b) (JAVA 0)",q0n="android-ok-http-client/xl-acc-sdk/version-5.0.12.512000",H0n="Dalvik/2.1.0 (Linux; U; Android 12; M2004J7AC Build/SP1A.210812.016)",zx="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",aG="thunder/12.4.4.3740 Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.215 XDASKernel/22.3.27 Safari/537.36",iy=Kx,tG=XUt,tFt=ob,ib=H0n,rFt={"User-Agent":ib},nFt="pan.xunlei.com",sFt="1.92.9",VCe=GCe,V0n=nFt,j0n=["9uJNVj/wLmdwKrJaVj/omlQ","Oz64Lp0GigmChHMf/6TNfxx7O9PyopcczMsnf","Eb+L7Ce+Ej48u","jKY0","ASr0zCl6v8W4aidjPK5KHd1Lq3t+vBFf41dqv5+fnOd","wQlozdg6r1qxh0eRmt3QgNXOvSZO6q/GXK","gmirk+ciAvIgA/cxUUCema47jr/YToixTT+Q6O","5IiCoM9B1/788ntB","P07JH0h6qoM6TSUAK2aL9T5s2QBVeY9JWvalf","+oK0AN"],UUt="CatVodOpen",K0n="xlaccsdk01://xunlei.com/callback?state=harbor",G0n=["QG3/GhopO+5+T","1Sv94+ANND3lDmmw","q2eTxRva8b3B5d","m2","VIc5CZRBMU71ENfbOh0+RgWIuzLy","66M8Wpw6nkBEekOtL6e","N0rucK7S8W/vrRkfPto5urIJJS8dVY0S","oLAR7pdUVUAp9xcuHWzrU057aUhdCJrt","6lxcykBSsfI//GR9","r50cz+1I4gbU/fk8","tdwzrTc4SNFC4marNGTgf05flC85A","qvNVUDFjfsOMqvdi2gB8gCvtaJAIqxXs"],z0n=/https?:\/\/pan\.xunlei\.com\/s\/([^?#/]+)(?:\?[^#]*?(?:pwd|passcode|password)=([^&#]+))?/i,Y0n=60,Hx=60*1e3,eCs=64*1024,FUt=10,iFt=As.maxPoolSize,zCe=4,Q0n=256*1024,W0n=8,mB=null,$x={},$Ut=!1,ti={username:"",password:""},Gl=null,rG=ts("xunlei.saveFileId",{maxSize:1e3,ttl:60*60*1e3}),nG=ts("xunlei.downloading",{maxSize:500,ttl:5*60*1e3}),YCe=new Bx(200),Ze={get(e){return $x[e]||""},set(e,t){return $x[e]=t||"",mB?mB.push(`/xunlei/${e}`,$x[e]):Promise.resolve()}};jCe=class{constructor(t){this.maxActive=t,this.active=0,this.waiting=[],this.penaltyUntil=0}getEffectiveMax(){return Date.now(){this.waiting.push({owner:t,resolve:r,reject:n})})}createRelease(){let t=!1;return()=>{t||(t=!0,this.active=Math.max(0,this.active-1),this.drain())}}cancel(t){let r=[];for(let n of this.waiting)n.owner===t?n.reject(new Error("xunlei candidate pool disposed")):r.push(n);this.waiting=r}drain(){for(;this.active0;){let t=this.waiting.shift();if(t.owner.disposed){t.reject(new Error("xunlei candidate pool disposed"));continue}this.active+=1,t.resolve(this.createRelease())}}},qCe=new jCe(iFt)});var oxe=S((GFt,pG)=>{(function(e){"use strict";var t,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",a=i+"Number primitive has more than 15 significant digits: ",o=1e14,c=14,u=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function h(v){var b,I,T,x=Q.prototype={constructor:Q,toString:null,valueOf:null},w=new Q(1),D=20,M=4,L=-7,U=21,G=-1e7,$=1e7,K=!1,ee=1,z=0,oe={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},le="0123456789abcdefghijklmnopqrstuvwxyz",te=!0;function Q(P,H){var j,q,Y,X,ae,ne,se,J,ce=this;if(!(ce instanceof Q))return new Q(P,H);if(H==null){if(P&&P._isBigNumber===!0){ce.s=P.s,!P.c||P.e>$?ce.c=ce.e=null:P.e=10;ae/=10,X++);X>$?ce.c=ce.e=null:(ce.e=X,ce.c=[P]);return}J=String(P)}else{if(!r.test(J=String(P)))return T(ce,J,ne);ce.s=J.charCodeAt(0)==45?(J=J.slice(1),-1):1}(X=J.indexOf("."))>-1&&(J=J.replace(".","")),(ae=J.search(/e/i))>0?(X<0&&(X=ae),X+=+J.slice(ae+1),J=J.substring(0,ae)):X<0&&(X=J.length)}else{if(_(H,2,le.length,"Base"),H==10&&te)return ce=new Q(P),k(ce,D+ce.e+1,M);if(J=String(P),ne=typeof P=="number"){if(P*0!=0)return T(ce,J,ne,H);if(ce.s=1/P<0?(J=J.slice(1),-1):1,Q.DEBUG&&J.replace(/^0\.0*|\./,"").length>15)throw Error(a+P)}else ce.s=J.charCodeAt(0)===45?(J=J.slice(1),-1):1;for(j=le.slice(0,H),X=ae=0,se=J.length;aeX){X=se;continue}}else if(!Y&&(J==J.toUpperCase()&&(J=J.toLowerCase())||J==J.toLowerCase()&&(J=J.toUpperCase()))){Y=!0,ae=-1,X=0;continue}return T(ce,String(P),ne,H)}ne=!1,J=I(J,H,10,ce.s),(X=J.indexOf("."))>-1?J=J.replace(".",""):X=J.length}for(ae=0;J.charCodeAt(ae)===48;ae++);for(se=J.length;J.charCodeAt(--se)===48;);if(J=J.slice(ae,++se)){if(se-=ae,ne&&Q.DEBUG&&se>15&&(P>u||P!==s(P)))throw Error(a+ce.s*P);if((X=X-ae-1)>$)ce.c=ce.e=null;else if(X=-f&&Y<=f&&Y===s(Y)){if(q[0]===0){if(Y===0&&q.length===1)return!0;break e}if(H=(Y+1)%c,H<1&&(H+=c),String(q[0]).length==H){for(H=0;H=o||j!==s(j))break e;if(j!==0)return!0}}}else if(q===null&&Y===null&&(X===null||X===1||X===-1))return!0;throw Error(i+"Invalid BigNumber: "+P)},Q.maximum=Q.max=function(){return de(arguments,-1)},Q.minimum=Q.min=function(){return de(arguments,1)},Q.random=function(){var P=9007199254740992,H=Math.random()*P&2097151?function(){return s(Math.random()*P)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(j){var q,Y,X,ae,ne,se=0,J=[],ce=new Q(w);if(j==null?j=D:_(j,0,f),ae=n(j/c),K)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ae*=2));se>>11),ne>=9e15?(Y=crypto.getRandomValues(new Uint32Array(2)),q[se]=Y[0],q[se+1]=Y[1]):(J.push(ne%1e14),se+=2);se=ae/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ae*=7);se=9e15?crypto.randomBytes(7).copy(q,se):(J.push(ne%1e14),se+=7);se=ae/7}else throw K=!1,Error(i+"crypto unavailable");if(!K)for(;se=10;ne/=10,se++);seY-1&&(ne[ae+1]==null&&(ne[ae+1]=0),ne[ae+1]+=ne[ae]/Y|0,ne[ae]%=Y)}return ne.reverse()}return function(j,q,Y,X,ae){var ne,se,J,ce,ge,be,Te,xe,Fe=j.indexOf("."),Ee=D,me=M;for(Fe>=0&&(ce=z,z=0,j=j.replace(".",""),xe=new Q(q),be=xe.pow(j.length-Fe),z=ce,xe.c=H(E(m(be.c),be.e,"0"),10,Y,P),xe.e=xe.c.length),Te=H(j,q,Y,ae?(ne=le,P):(ne=P,le)),J=ce=Te.length;Te[--ce]==0;Te.pop());if(!Te[0])return ne.charAt(0);if(Fe<0?--J:(be.c=Te,be.e=J,be.s=X,be=b(be,xe,Ee,me,Y),Te=be.c,ge=be.r,J=be.e),se=J+Ee+1,Fe=Te[se],ce=Y/2,ge=ge||se<0||Te[se+1]!=null,ge=me<4?(Fe!=null||ge)&&(me==0||me==(be.s<0?3:2)):Fe>ce||Fe==ce&&(me==4||ge||me==6&&Te[se-1]&1||me==(be.s<0?8:7)),se<1||!Te[0])j=ge?E(ne.charAt(1),-Ee,ne.charAt(0)):ne.charAt(0);else{if(Te.length=se,ge)for(--Y;++Te[--se]>Y;)Te[se]=0,se||(++J,Te=[1].concat(Te));for(ce=Te.length;!Te[--ce];);for(Fe=0,j="";Fe<=ce;j+=ne.charAt(Te[Fe++]));j=E(j,J,ne.charAt(0))}return j}}(),b=function(){function P(q,Y,X){var ae,ne,se,J,ce=0,ge=q.length,be=Y%d,Te=Y/d|0;for(q=q.slice();ge--;)se=q[ge]%d,J=q[ge]/d|0,ae=Te*se+J*be,ne=be*se+ae%d*d+ce,ce=(ne/X|0)+(ae/d|0)+Te*J,q[ge]=ne%X;return ce&&(q=[ce].concat(q)),q}function H(q,Y,X,ae){var ne,se;if(X!=ae)se=X>ae?1:-1;else for(ne=se=0;neY[ne]?1:-1;break}return se}function j(q,Y,X,ae){for(var ne=0;X--;)q[X]-=ne,ne=q[X]1;q.splice(0,1));}return function(q,Y,X,ae,ne){var se,J,ce,ge,be,Te,xe,Fe,Ee,me,Ae,pe,Se,Ie,Le,we,He,Ge=q.s==Y.s?1:-1,ke=q.c,Qe=Y.c;if(!ke||!ke[0]||!Qe||!Qe[0])return new Q(!q.s||!Y.s||(ke?Qe&&ke[0]==Qe[0]:!Qe)?NaN:ke&&ke[0]==0||!Qe?Ge*0:Ge/0);for(Fe=new Q(Ge),Ee=Fe.c=[],J=q.e-Y.e,Ge=X+J+1,ne||(ne=o,J=p(q.e/c)-p(Y.e/c),Ge=Ge/c|0),ce=0;Qe[ce]==(ke[ce]||0);ce++);if(Qe[ce]>(ke[ce]||0)&&J--,Ge<0)Ee.push(1),ge=!0;else{for(Ie=ke.length,we=Qe.length,ce=0,Ge+=2,be=s(ne/(Qe[0]+1)),be>1&&(Qe=P(Qe,be,ne),ke=P(ke,be,ne),we=Qe.length,Ie=ke.length),Se=we,me=ke.slice(0,we),Ae=me.length;Ae=ne/2&&Le++;do{if(be=0,se=H(Qe,me,we,Ae),se<0){if(pe=me[0],we!=Ae&&(pe=pe*ne+(me[1]||0)),be=s(pe/Le),be>1)for(be>=ne&&(be=ne-1),Te=P(Qe,be,ne),xe=Te.length,Ae=me.length;H(Te,me,xe,Ae)==1;)be--,j(Te,we=10;Ge/=10,ce++);k(Fe,X+(Fe.e=ce+J*c-1)+1,ae,ge)}else Fe.e=J,Fe.r=+ge;return Fe}}();function Z(P,H,j,q){var Y,X,ae,ne,se;if(j==null?j=M:_(j,0,8),!P.c)return P.toString();if(Y=P.c[0],ae=P.e,H==null)se=m(P.c),se=q==1||q==2&&(ae<=L||ae>=U)?A(se,ae):E(se,ae,"0");else if(P=k(new Q(P),H,j),X=P.e,se=m(P.c),ne=se.length,q==1||q==2&&(H<=X||X<=L)){for(;neae),se=E(se,X,"0"),X+1>ne){if(--H>0)for(se+=".";H--;se+="0");}else if(H+=X-ne,H>0)for(X+1==ne&&(se+=".");H--;se+="0");return P.s<0&&Y?"-"+se:se}function de(P,H){for(var j,q,Y=1,X=new Q(P[0]);Y=10;Y/=10,q++);return(j=q+j*c-1)>$?P.c=P.e=null:j=10;ne/=10,Y++);if(X=H-Y,X<0)X+=c,ae=H,se=ge[J=0],ce=s(se/be[Y-ae-1]%10);else if(J=n((X+1)/c),J>=ge.length)if(q){for(;ge.length<=J;ge.push(0));se=ce=0,Y=1,X%=c,ae=X-c+1}else break e;else{for(se=ne=ge[J],Y=1;ne>=10;ne/=10,Y++);X%=c,ae=X-c+Y,ce=ae<0?0:s(se/be[Y-ae-1]%10)}if(q=q||H<0||ge[J+1]!=null||(ae<0?se:se%be[Y-ae-1]),q=j<4?(ce||q)&&(j==0||j==(P.s<0?3:2)):ce>5||ce==5&&(j==4||q||j==6&&(X>0?ae>0?se/be[Y-ae]:0:ge[J-1])%10&1||j==(P.s<0?8:7)),H<1||!ge[0])return ge.length=0,q?(H-=P.e+1,ge[0]=be[(c-H%c)%c],P.e=-H||0):ge[0]=P.e=0,P;if(X==0?(ge.length=J,ne=1,J--):(ge.length=J+1,ne=be[c-X],ge[J]=ae>0?s(se/be[Y-ae]%be[ae])*ne:0),q)for(;;)if(J==0){for(X=1,ae=ge[0];ae>=10;ae/=10,X++);for(ae=ge[0]+=ne,ne=1;ae>=10;ae/=10,ne++);X!=ne&&(P.e++,ge[0]==o&&(ge[0]=1));break}else{if(ge[J]+=ne,ge[J]!=o)break;ge[J--]=0,ne=1}for(X=ge.length;ge[--X]===0;ge.pop());}P.e>$?P.c=P.e=null:P.e=U?A(H,j):E(H,j,"0"),P.s<0?"-"+H:H)}return x.absoluteValue=x.abs=function(){var P=new Q(this);return P.s<0&&(P.s=1),P},x.comparedTo=function(P,H){return g(this,new Q(P,H))},x.decimalPlaces=x.dp=function(P,H){var j,q,Y,X=this;if(P!=null)return _(P,0,f),H==null?H=M:_(H,0,8),k(new Q(X),P+X.e+1,H);if(!(j=X.c))return null;if(q=((Y=j.length-1)-p(this.e/c))*c,Y=j[Y])for(;Y%10==0;Y/=10,q--);return q<0&&(q=0),q},x.dividedBy=x.div=function(P,H){return b(this,new Q(P,H),D,M)},x.dividedToIntegerBy=x.idiv=function(P,H){return b(this,new Q(P,H),0,1)},x.exponentiatedBy=x.pow=function(P,H){var j,q,Y,X,ae,ne,se,J,ce,ge=this;if(P=new Q(P),P.c&&!P.isInteger())throw Error(i+"Exponent not an integer: "+W(P));if(H!=null&&(H=new Q(H)),ne=P.e>14,!ge.c||!ge.c[0]||ge.c[0]==1&&!ge.e&&ge.c.length==1||!P.c||!P.c[0])return ce=new Q(Math.pow(+W(ge),ne?P.s*(2-y(P)):+W(P))),H?ce.mod(H):ce;if(se=P.s<0,H){if(H.c?!H.c[0]:!H.s)return new Q(NaN);q=!se&&ge.isInteger()&&H.isInteger(),q&&(ge=ge.mod(H))}else{if(P.e>9&&(ge.e>0||ge.e<-1||(ge.e==0?ge.c[0]>1||ne&&ge.c[1]>=24e7:ge.c[0]<8e13||ne&&ge.c[0]<=9999975e7)))return X=ge.s<0&&y(P)?-0:0,ge.e>-1&&(X=1/X),new Q(se?1/X:X);z&&(X=n(z/c+2))}for(ne?(j=new Q(.5),se&&(P.s=1),J=y(P)):(Y=Math.abs(+W(P)),J=Y%2),ce=new Q(w);;){if(J){if(ce=ce.times(ge),!ce.c)break;X?ce.c.length>X&&(ce.c.length=X):q&&(ce=ce.mod(H))}if(Y){if(Y=s(Y/2),Y===0)break;J=Y%2}else if(P=P.times(j),k(P,P.e+1,1),P.e>14)J=y(P);else{if(Y=+W(P),Y===0)break;J=Y%2}ge=ge.times(ge),X?ge.c&&ge.c.length>X&&(ge.c.length=X):q&&(ge=ge.mod(H))}return q?ce:(se&&(ce=w.div(ce)),H?ce.mod(H):X?k(ce,z,M,ae):ce)},x.integerValue=function(P){var H=new Q(this);return P==null?P=M:_(P,0,8),k(H,H.e+1,P)},x.isEqualTo=x.eq=function(P,H){return g(this,new Q(P,H))===0},x.isFinite=function(){return!!this.c},x.isGreaterThan=x.gt=function(P,H){return g(this,new Q(P,H))>0},x.isGreaterThanOrEqualTo=x.gte=function(P,H){return(H=g(this,new Q(P,H)))===1||H===0},x.isInteger=function(){return!!this.c&&p(this.e/c)>this.c.length-2},x.isLessThan=x.lt=function(P,H){return g(this,new Q(P,H))<0},x.isLessThanOrEqualTo=x.lte=function(P,H){return(H=g(this,new Q(P,H)))===-1||H===0},x.isNaN=function(){return!this.s},x.isNegative=function(){return this.s<0},x.isPositive=function(){return this.s>0},x.isZero=function(){return!!this.c&&this.c[0]==0},x.minus=function(P,H){var j,q,Y,X,ae=this,ne=ae.s;if(P=new Q(P,H),H=P.s,!ne||!H)return new Q(NaN);if(ne!=H)return P.s=-H,ae.plus(P);var se=ae.e/c,J=P.e/c,ce=ae.c,ge=P.c;if(!se||!J){if(!ce||!ge)return ce?(P.s=-H,P):new Q(ge?ae:NaN);if(!ce[0]||!ge[0])return ge[0]?(P.s=-H,P):new Q(ce[0]?ae:M==3?-0:0)}if(se=p(se),J=p(J),ce=ce.slice(),ne=se-J){for((X=ne<0)?(ne=-ne,Y=ce):(J=se,Y=ge),Y.reverse(),H=ne;H--;Y.push(0));Y.reverse()}else for(q=(X=(ne=ce.length)<(H=ge.length))?ne:H,ne=H=0;H0)for(;H--;ce[j++]=0);for(H=o-1;q>ne;){if(ce[--q]=0;){for(j=0,be=pe[Y]%Ee,Te=pe[Y]/Ee|0,ae=se,X=Y+ae;X>Y;)J=Ae[--ae]%Ee,ce=Ae[ae]/Ee|0,ne=Te*J+ce*be,J=be*J+ne%Ee*Ee+xe[X]+j,j=(J/Fe|0)+(ne/Ee|0)+Te*ce,xe[X--]=J%Fe;xe[X]=j}return j?++q:xe.splice(0,1),B(P,xe,q)},x.negated=function(){var P=new Q(this);return P.s=-P.s||null,P},x.plus=function(P,H){var j,q=this,Y=q.s;if(P=new Q(P,H),H=P.s,!Y||!H)return new Q(NaN);if(Y!=H)return P.s=-H,q.minus(P);var X=q.e/c,ae=P.e/c,ne=q.c,se=P.c;if(!X||!ae){if(!ne||!se)return new Q(Y/0);if(!ne[0]||!se[0])return se[0]?P:new Q(ne[0]?q:Y*0)}if(X=p(X),ae=p(ae),ne=ne.slice(),Y=X-ae){for(Y>0?(ae=X,j=se):(Y=-Y,j=ne),j.reverse();Y--;j.push(0));j.reverse()}for(Y=ne.length,H=se.length,Y-H<0&&(j=se,se=ne,ne=j,H=Y),Y=0;H;)Y=(ne[--H]=ne[H]+se[H]+Y)/o|0,ne[H]=o===ne[H]?0:ne[H]%o;return Y&&(ne=[Y].concat(ne),++ae),B(P,ne,ae)},x.precision=x.sd=function(P,H){var j,q,Y,X=this;if(P!=null&&P!==!!P)return _(P,1,f),H==null?H=M:_(H,0,8),k(new Q(X),P,H);if(!(j=X.c))return null;if(Y=j.length-1,q=Y*c+1,Y=j[Y]){for(;Y%10==0;Y/=10,q--);for(Y=j[0];Y>=10;Y/=10,q++);}return P&&X.e+1>q&&(q=X.e+1),q},x.shiftedBy=function(P){return _(P,-u,u),this.times("1e"+P)},x.squareRoot=x.sqrt=function(){var P,H,j,q,Y,X=this,ae=X.c,ne=X.s,se=X.e,J=D+4,ce=new Q("0.5");if(ne!==1||!ae||!ae[0])return new Q(!ne||ne<0&&(!ae||ae[0])?NaN:ae?X:1/0);if(ne=Math.sqrt(+W(X)),ne==0||ne==1/0?(H=m(ae),(H.length+se)%2==0&&(H+="0"),ne=Math.sqrt(+H),se=p((se+1)/2)-(se<0||se%2),ne==1/0?H="5e"+se:(H=ne.toExponential(),H=H.slice(0,H.indexOf("e")+1)+se),j=new Q(H)):j=new Q(ne+""),j.c[0]){for(se=j.e,ne=se+J,ne<3&&(ne=0);;)if(Y=j,j=ce.times(Y.plus(b(X,Y,J,1))),m(Y.c).slice(0,ne)===(H=m(j.c)).slice(0,ne))if(j.e0&&xe>0){for(X=xe%ne||ne,ce=Te.substr(0,X);X0&&(ce+=J+Te.slice(X)),be&&(ce="-"+ce)}q=ge?ce+(j.decimalSeparator||"")+((se=+j.fractionGroupSize)?ge.replace(new RegExp("\\d{"+se+"}\\B","g"),"$&"+(j.fractionGroupSeparator||"")):ge):ce}return(j.prefix||"")+q+(j.suffix||"")},x.toFraction=function(P){var H,j,q,Y,X,ae,ne,se,J,ce,ge,be,Te=this,xe=Te.c;if(P!=null&&(ne=new Q(P),!ne.isInteger()&&(ne.c||ne.s!==1)||ne.lt(w)))throw Error(i+"Argument "+(ne.isInteger()?"out of range: ":"not an integer: ")+W(ne));if(!xe)return new Q(Te);for(H=new Q(w),J=j=new Q(w),q=se=new Q(w),be=m(xe),X=H.e=be.length-Te.e-1,H.c[0]=l[(ae=X%c)<0?c+ae:ae],P=!P||ne.comparedTo(H)>0?X>0?H:J:ne,ae=$,$=1/0,ne=new Q(be),se.c[0]=0;ce=b(ne,H,0,1),Y=j.plus(ce.times(q)),Y.comparedTo(P)!=1;)j=q,q=Y,J=se.plus(ce.times(Y=J)),se=Y,H=ne.minus(ce.times(Y=H)),ne=Y;return Y=b(P.minus(j),q,0,1),se=se.plus(Y.times(J)),j=j.plus(Y.times(q)),se.s=J.s=Te.s,X=X*2,ge=b(J,q,X,M).minus(Te).abs().comparedTo(b(se,j,X,M).minus(Te).abs())<1?[J,q]:[se,j],$=ae,ge},x.toNumber=function(){return+W(this)},x.toPrecision=function(P,H){return P!=null&&_(P,1,f),Z(this,P,H,2)},x.toString=function(P){var H,j=this,q=j.s,Y=j.e;return Y===null?q?(H="Infinity",q<0&&(H="-"+H)):H="NaN":(P==null?H=Y<=L||Y>=U?A(m(j.c),Y):E(m(j.c),Y,"0"):P===10&&te?(j=k(new Q(j),D+Y+1,M),H=E(m(j.c),j.e,"0")):(_(P,2,le.length,"Base"),H=I(E(m(j.c),Y,"0"),10,P,q,!0)),q<0&&j.c[0]&&(H="-"+H)),H},x.valueOf=x.toJSON=function(){return W(this)},x._isBigNumber=!0,v!=null&&Q.set(v),Q}function p(v){var b=v|0;return v>0||v===b?b:b-1}function m(v){for(var b,I,T=1,x=v.length,w=v[0]+"";TU^I?1:-1;for(M=(L=x.length)<(U=w.length)?L:U,D=0;Dw[D]^I?1:-1;return L==U?0:L>U^I?1:-1}function _(v,b,I,T){if(vI||v!==s(v))throw Error(i+(T||"Argument")+(typeof v=="number"?vI?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function y(v){var b=v.c.length-1;return p(v.e/c)==b&&v.c[b]%2!=0}function A(v,b){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(b<0?"e":"e+")+b}function E(v,b,I){var T,x;if(b<0){for(x=I+".";++b;x+=I);v=x+v}else if(T=v.length,++b>T){for(x=I,b-=T;--b;x+=I);v+=x}else b{var zFt=oxe(),YFt=QFt.exports;(function(){"use strict";function e(u){return u<10?"0"+u:u}var t=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(u){return r.lastIndex=0,r.test(u)?'"'+u.replace(r,function(l){var d=i[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function c(u,l){var d,f,h,p,m=n,g,_=l[u],y=_!=null&&(_ instanceof zFt||zFt.isBigNumber(_));switch(_&&typeof _=="object"&&typeof _.toJSON=="function"&&(_=_.toJSON(u)),typeof a=="function"&&(_=a.call(l,u,_)),typeof _){case"string":return y?_:o(_);case"number":return isFinite(_)?String(_):"null";case"boolean":case"null":case"bigint":return String(_);case"object":if(!_)return"null";if(n+=s,g=[],Object.prototype.toString.apply(_)==="[object Array]"){for(p=_.length,d=0;d{var Gj=null,TVr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,NVr=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,RVr=function(e){"use strict";var t={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(e!=null){if(e.strict===!0&&(t.strict=!0),e.storeAsString===!0&&(t.storeAsString=!0),t.alwaysParseAsBig=e.alwaysParseAsBig===!0?e.alwaysParseAsBig:!1,t.useNativeBigInt=e.useNativeBigInt===!0?e.useNativeBigInt:!1,typeof e.constructorAction<"u")if(e.constructorAction==="error"||e.constructorAction==="ignore"||e.constructorAction==="preserve")t.constructorAction=e.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${e.constructorAction}`);if(typeof e.protoAction<"u")if(e.protoAction==="error"||e.protoAction==="ignore"||e.protoAction==="preserve")t.protoAction=e.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${e.protoAction}`)}var r,n,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` -`,r:"\r",t:" "},s,a=function(m){throw{name:"SyntaxError",message:m,at:r,text:s}},o=function(m){return m&&m!==n&&a("Expected '"+m+"' instead of '"+n+"'"),n=s.charAt(r),r+=1,n},u=function(){var m,y="";for(n==="-"&&(y="-",o("-"));n>="0"&&n<="9";)y+=n,o();if(n===".")for(y+=".";o()&&n>="0"&&n<="9";)y+=n;if(n==="e"||n==="E")for(y+=n,o(),(n==="-"||n==="+")&&(y+=n,o());n>="0"&&n<="9";)y+=n,o();if(m=+y,!isFinite(m))a("Bad number");else return Gj==null&&(Gj=nve()),y.length>15?t.storeAsString?y:t.useNativeBigInt?BigInt(y):new Gj(y):t.alwaysParseAsBig?t.useNativeBigInt?BigInt(m):new Gj(m):m},c=function(){var m,y,g="",v;if(n==='"')for(var A=r;o();){if(n==='"')return r-1>A&&(g+=s.substring(A,r-1)),o(),g;if(n==="\\"){if(r-1>A&&(g+=s.substring(A,r-1)),o(),n==="u"){for(v=0,y=0;y<4&&(m=parseInt(o(),16),!!isFinite(m));y+=1)v=v*16+m;g+=String.fromCharCode(v)}else if(typeof i[n]=="string")g+=i[n];else break;A=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,p=function(){var m=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),m;for(;n;){if(m.push(f()),l(),n==="]")return o("]"),m;o(","),l()}}a("Bad array")},h=function(){var m,y=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),y;for(;n;){if(m=c(),l(),o(":"),t.strict===!0&&Object.hasOwnProperty.call(y,m)&&a('Duplicate key "'+m+'"'),TVr.test(m)===!0?t.protoAction==="error"?a("Object contains forbidden prototype property"):t.protoAction==="ignore"?f():y[m]=f():NVr.test(m)===!0?t.constructorAction==="error"?a("Object contains forbidden constructor property"):t.constructorAction==="ignore"?f():y[m]=f():y[m]=f(),l(),n==="}")return o("}"),y;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return h();case"[":return p();case'"':return c();case"-":return u();default:return n>="0"&&n<="9"?u():d()}},function(m,y){var g;return s=m+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof y=="function"?function v(A,_){var E,S,C=A[_];return C&&typeof C=="object"&&Object.keys(C).forEach(function(I){S=v(C,I),S!==void 0?C[I]=S:delete C[I]}),y.call(A,_,C)}({"":g},""):g}};pTt.exports=RVr});var yTt=b((eri,Yj)=>{var mTt=fTt().stringify,gTt=hTt();Yj.exports=function(e){return{parse:gTt(e),stringify:mTt}};Yj.exports.parse=gTt();Yj.exports.stringify=mTt});var Wj=b(ive=>{(function(){ive.defaults={"0.1":{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},"0.2":{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:` -`},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(ive)});var Gp=b((_Tt,Jy)=>{(function(){var e,t,r,n,i,s,a,o=[].slice,u={}.hasOwnProperty;e=function(){var c,l,d,f,p,h;if(h=arguments[0],p=2<=arguments.length?o.call(arguments,1):[],i(Object.assign))Object.assign.apply(null,arguments);else for(c=0,d=p.length;c{(function(){var e;vTt.exports=e=function(){function t(){}return t.prototype.hasFeature=function(r,n){return!0},t.prototype.createDocumentType=function(r,n,i){throw new Error("This DOM method is not implemented.")},t.prototype.createDocument=function(r,n,i){throw new Error("This DOM method is not implemented.")},t.prototype.createHTMLDocument=function(r){throw new Error("This DOM method is not implemented.")},t.prototype.getFeature=function(r,n){throw new Error("This DOM method is not implemented.")},t}()}).call(ATt)});var STt=b((bTt,ETt)=>{(function(){var e;ETt.exports=e=function(){function t(){}return t.prototype.handleError=function(r){throw new Error(r)},t}()}).call(bTt)});var xTt=b((wTt,ITt)=>{(function(){var e;ITt.exports=e=function(){function t(r){this.arr=r||[]}return Object.defineProperty(t.prototype,"length",{get:function(){return this.arr.length}}),t.prototype.item=function(r){return this.arr[r]||null},t.prototype.contains=function(r){return this.arr.indexOf(r)!==-1},t}()}).call(wTt)});var NTt=b((CTt,TTt)=>{(function(){var e,t,r;t=STt(),r=xTt(),TTt.exports=e=function(){function n(){var i;this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=i=Object.create(this.defaultParams)}return Object.defineProperty(n.prototype,"parameterNames",{get:function(){return new r(Object.keys(this.defaultParams))}}),n.prototype.getParameter=function(i){return this.params.hasOwnProperty(i)?this.params[i]:null},n.prototype.canSetParameter=function(i,s){return!0},n.prototype.setParameter=function(i,s){return s!=null?this.params[i]=s:delete this.params[i]},n}()}).call(CTt)});var cs=b((RTt,DTt)=>{(function(){DTt.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(RTt)});var ave=b((kTt,OTt)=>{(function(){var e,t,r;e=cs(),r=Uc(),OTt.exports=t=function(){function n(i,s,a){if(this.parent=i,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),s==null)throw new Error("Missing attribute name. "+this.debugInfo(s));this.name=this.stringify.name(s),this.value=this.stringify.attValue(a),this.type=e.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(n.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(n.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(n.prototype,"textContent",{get:function(){return this.value},set:function(i){return this.value=i||""}}),Object.defineProperty(n.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(n.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(n.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(n.prototype,"specified",{get:function(){return!0}}),n.prototype.clone=function(){return Object.create(this)},n.prototype.toString=function(i){return this.options.writer.attribute(this,this.options.writer.filterOptions(i))},n.prototype.debugInfo=function(i){return i=i||this.name,i==null?"parent: <"+this.parent.name+">":"attribute: {"+i+"}, parent: <"+this.parent.name+">"},n.prototype.isEqualNode=function(i){return!(i.namespaceURI!==this.namespaceURI||i.prefix!==this.prefix||i.localName!==this.localName||i.value!==this.value)},n}()}).call(kTt)});var Xj=b((PTt,MTt)=>{(function(){var e;MTt.exports=e=function(){function t(r){this.nodes=r}return Object.defineProperty(t.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.getNamedItem=function(r){return this.nodes[r]},t.prototype.setNamedItem=function(r){var n;return n=this.nodes[r.nodeName],this.nodes[r.nodeName]=r,n||null},t.prototype.removeNamedItem=function(r){var n;return n=this.nodes[r],delete this.nodes[r],n||null},t.prototype.item=function(r){return this.nodes[Object.keys(this.nodes)[r]]||null},t.prototype.getNamedItemNS=function(r,n){throw new Error("This DOM method is not implemented.")},t.prototype.setNamedItemNS=function(r){throw new Error("This DOM method is not implemented.")},t.prototype.removeNamedItemNS=function(r,n){throw new Error("This DOM method is not implemented.")},t}()}).call(PTt)});var Jj=b((LTt,BTt)=>{(function(){var e,t,r,n,i,s,a,o,u,c=function(d,f){for(var p in f)l.call(f,p)&&(d[p]=f[p]);function h(){this.constructor=d}return h.prototype=f.prototype,d.prototype=new h,d.__super__=f.prototype,d},l={}.hasOwnProperty;u=Gp(),o=u.isObject,a=u.isFunction,s=u.getValue,i=Uc(),e=cs(),t=ave(),n=Xj(),BTt.exports=r=function(d){c(f,d);function f(p,h,m){var y,g,v,A;if(f.__super__.constructor.call(this,p),h==null)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(h),this.type=e.Element,this.attribs={},this.schemaTypeInfo=null,m!=null&&this.attribute(m),p.type===e.Document&&(this.isRoot=!0,this.documentObject=p,p.rootObject=this,p.children)){for(A=p.children,g=0,v=A.length;g=y;h=0<=y?++m:--m)if(!this.attribs[h].isEqualNode(p.attribs[h]))return!1;return!0},f}(i)}).call(LTt)});var LP=b(($Tt,FTt)=>{(function(){var e,t,r=function(i,s){for(var a in s)n.call(s,a)&&(i[a]=s[a]);function o(){this.constructor=i}return o.prototype=s.prototype,i.prototype=new o,i.__super__=s.prototype,i},n={}.hasOwnProperty;t=Uc(),FTt.exports=e=function(i){r(s,i);function s(a){s.__super__.constructor.call(this,a),this.value=""}return Object.defineProperty(s.prototype,"data",{get:function(){return this.value},set:function(a){return this.value=a||""}}),Object.defineProperty(s.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(s.prototype,"textContent",{get:function(){return this.value},set:function(a){return this.value=a||""}}),s.prototype.clone=function(){return Object.create(this)},s.prototype.substringData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.appendData=function(a){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.insertData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.deleteData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.replaceData=function(a,o,u){throw new Error("This DOM method is not implemented."+this.debugInfo())},s.prototype.isEqualNode=function(a){return!(!s.__super__.isEqualNode.apply(this,arguments).isEqualNode(a)||a.data!==this.data)},s}(t)}).call($Tt)});var Zj=b((UTt,qTt)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;e=cs(),r=LP(),qTt.exports=t=function(s){n(a,s);function a(o,u){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=e.CData,this.value=this.stringify.cdata(u)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.cdata(this,this.options.writer.filterOptions(o))},a}(r)}).call(UTt)});var e9=b((jTt,HTt)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;e=cs(),t=LP(),HTt.exports=r=function(s){n(a,s);function a(o,u){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=e.Comment,this.value=this.stringify.comment(u)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.comment(this,this.options.writer.filterOptions(o))},a}(t)}).call(jTt)});var t9=b((KTt,VTt)=>{(function(){var e,t,r,n,i=function(a,o){for(var u in o)s.call(o,u)&&(a[u]=o[u]);function c(){this.constructor=a}return c.prototype=o.prototype,a.prototype=new c,a.__super__=o.prototype,a},s={}.hasOwnProperty;n=Gp().isObject,r=Uc(),e=cs(),VTt.exports=t=function(a){i(o,a);function o(u,c,l,d){var f;o.__super__.constructor.call(this,u),n(c)&&(f=c,c=f.version,l=f.encoding,d=f.standalone),c||(c="1.0"),this.type=e.Declaration,this.version=this.stringify.xmlVersion(c),l!=null&&(this.encoding=this.stringify.xmlEncoding(l)),d!=null&&(this.standalone=this.stringify.xmlStandalone(d))}return o.prototype.toString=function(u){return this.options.writer.declaration(this,this.options.writer.filterOptions(u))},o}(r)}).call(KTt)});var r9=b((zTt,QTt)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;r=Uc(),e=cs(),QTt.exports=t=function(s){n(a,s);function a(o,u,c,l,d,f){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing DTD element name. "+this.debugInfo());if(c==null)throw new Error("Missing DTD attribute name. "+this.debugInfo(u));if(!l)throw new Error("Missing DTD attribute type. "+this.debugInfo(u));if(!d)throw new Error("Missing DTD attribute default. "+this.debugInfo(u));if(d.indexOf("#")!==0&&(d="#"+d),!d.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(u));if(f&&!d.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(u));this.elementName=this.stringify.name(u),this.type=e.AttributeDeclaration,this.attributeName=this.stringify.name(c),this.attributeType=this.stringify.dtdAttType(l),f&&(this.defaultValue=this.stringify.dtdAttDefault(f)),this.defaultValueType=d}return a.prototype.toString=function(o){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(o))},a}(r)}).call(zTt)});var n9=b((GTt,YTt)=>{(function(){var e,t,r,n,i=function(a,o){for(var u in o)s.call(o,u)&&(a[u]=o[u]);function c(){this.constructor=a}return c.prototype=o.prototype,a.prototype=new c,a.__super__=o.prototype,a},s={}.hasOwnProperty;n=Gp().isObject,r=Uc(),e=cs(),YTt.exports=t=function(a){i(o,a);function o(u,c,l,d){if(o.__super__.constructor.call(this,u),l==null)throw new Error("Missing DTD entity name. "+this.debugInfo(l));if(d==null)throw new Error("Missing DTD entity value. "+this.debugInfo(l));if(this.pe=!!c,this.name=this.stringify.name(l),this.type=e.EntityDeclaration,!n(d))this.value=this.stringify.dtdEntityValue(d),this.internal=!0;else{if(!d.pubID&&!d.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(l));if(d.pubID&&!d.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(l));if(this.internal=!1,d.pubID!=null&&(this.pubID=this.stringify.dtdPubID(d.pubID)),d.sysID!=null&&(this.sysID=this.stringify.dtdSysID(d.sysID)),d.nData!=null&&(this.nData=this.stringify.dtdNData(d.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(l))}}return Object.defineProperty(o.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(o.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(o.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(o.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(o.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(o.prototype,"xmlVersion",{get:function(){return null}}),o.prototype.toString=function(u){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(u))},o}(r)}).call(GTt)});var i9=b((WTt,XTt)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;r=Uc(),e=cs(),XTt.exports=t=function(s){n(a,s);function a(o,u,c){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing DTD element name. "+this.debugInfo());c||(c="(#PCDATA)"),Array.isArray(c)&&(c="("+c.join(",")+")"),this.name=this.stringify.name(u),this.type=e.ElementDeclaration,this.value=this.stringify.dtdElementValue(c)}return a.prototype.toString=function(o){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(o))},a}(r)}).call(WTt)});var s9=b((JTt,ZTt)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;r=Uc(),e=cs(),ZTt.exports=t=function(s){n(a,s);function a(o,u,c){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing DTD notation name. "+this.debugInfo(u));if(!c.pubID&&!c.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(u));this.name=this.stringify.name(u),this.type=e.NotationDeclaration,c.pubID!=null&&(this.pubID=this.stringify.dtdPubID(c.pubID)),c.sysID!=null&&(this.sysID=this.stringify.dtdSysID(c.sysID))}return Object.defineProperty(a.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(a.prototype,"systemId",{get:function(){return this.sysID}}),a.prototype.toString=function(o){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(o))},a}(r)}).call(JTt)});var a9=b((e2t,t2t)=>{(function(){var e,t,r,n,i,s,a,o,u,c=function(d,f){for(var p in f)l.call(f,p)&&(d[p]=f[p]);function h(){this.constructor=d}return h.prototype=f.prototype,d.prototype=new h,d.__super__=f.prototype,d},l={}.hasOwnProperty;u=Gp().isObject,o=Uc(),e=cs(),t=r9(),n=n9(),r=i9(),i=s9(),a=Xj(),t2t.exports=s=function(d){c(f,d);function f(p,h,m){var y,g,v,A,_,E;if(f.__super__.constructor.call(this,p),this.type=e.DocType,p.children){for(A=p.children,g=0,v=A.length;g{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;e=cs(),t=Uc(),n2t.exports=r=function(s){n(a,s);function a(o,u){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing raw text. "+this.debugInfo());this.type=e.Raw,this.value=this.stringify.raw(u)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.raw(this,this.options.writer.filterOptions(o))},a}(t)}).call(r2t)});var u9=b((i2t,s2t)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;e=cs(),t=LP(),s2t.exports=r=function(s){n(a,s);function a(o,u){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=e.Text,this.value=this.stringify.text(u)}return Object.defineProperty(a.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"wholeText",{get:function(){var o,u,c;for(c="",u=this.previousSibling;u;)c=u.data+c,u=u.previousSibling;for(c+=this.data,o=this.nextSibling;o;)c=c+o.data,o=o.nextSibling;return c}}),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.text(this,this.options.writer.filterOptions(o))},a.prototype.splitText=function(o){throw new Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.replaceWholeText=function(o){throw new Error("This DOM method is not implemented."+this.debugInfo())},a}(t)}).call(i2t)});var c9=b((a2t,o2t)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;e=cs(),t=LP(),o2t.exports=r=function(s){n(a,s);function a(o,u,c){if(a.__super__.constructor.call(this,o),u==null)throw new Error("Missing instruction target. "+this.debugInfo());this.type=e.ProcessingInstruction,this.target=this.stringify.insTarget(u),this.name=this.target,c&&(this.value=this.stringify.insValue(c))}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(o))},a.prototype.isEqualNode=function(o){return!(!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(o)||o.target!==this.target)},a}(t)}).call(a2t)});var ove=b((u2t,c2t)=>{(function(){var e,t,r,n=function(s,a){for(var o in a)i.call(a,o)&&(s[o]=a[o]);function u(){this.constructor=s}return u.prototype=a.prototype,s.prototype=new u,s.__super__=a.prototype,s},i={}.hasOwnProperty;r=Uc(),e=cs(),c2t.exports=t=function(s){n(a,s);function a(o){a.__super__.constructor.call(this,o),this.type=e.Dummy}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return""},a}(r)}).call(u2t)});var f2t=b((l2t,d2t)=>{(function(){var e;d2t.exports=e=function(){function t(r){this.nodes=r}return Object.defineProperty(t.prototype,"length",{get:function(){return this.nodes.length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.item=function(r){return this.nodes[r]||null},t}()}).call(l2t)});var m2t=b((p2t,h2t)=>{(function(){h2t.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(p2t)});var Uc=b((g2t,y2t)=>{(function(){var e,t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v,A={}.hasOwnProperty;v=Gp(),g=v.isObject,y=v.isFunction,m=v.isEmpty,h=v.getValue,o=null,r=null,n=null,i=null,s=null,f=null,p=null,d=null,a=null,t=null,l=null,u=null,e=null,y2t.exports=c=function(){function _(E){this.parent=E,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,o||(o=Jj(),r=Zj(),n=e9(),i=t9(),s=a9(),f=o9(),p=u9(),d=c9(),a=ove(),t=cs(),l=f2t(),u=Xj(),e=m2t())}return Object.defineProperty(_.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(_.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(_.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(_.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(_.prototype,"childNodes",{get:function(){return(!this.childNodeList||!this.childNodeList.nodes)&&(this.childNodeList=new l(this.children)),this.childNodeList}}),Object.defineProperty(_.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(_.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(_.prototype,"previousSibling",{get:function(){var E;return E=this.parent.children.indexOf(this),this.parent.children[E-1]||null}}),Object.defineProperty(_.prototype,"nextSibling",{get:function(){var E;return E=this.parent.children.indexOf(this),this.parent.children[E+1]||null}}),Object.defineProperty(_.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(_.prototype,"textContent",{get:function(){var E,S,C,I,N;if(this.nodeType===t.Element||this.nodeType===t.DocumentFragment){for(N="",I=this.children,S=0,C=I.length;S":(C=this.parent)!=null&&C.name?"node: <"+E+">, parent: <"+this.parent.name+">":"node: <"+E+">"},_.prototype.ele=function(E,S,C){return this.element(E,S,C)},_.prototype.nod=function(E,S,C){return this.node(E,S,C)},_.prototype.txt=function(E){return this.text(E)},_.prototype.dat=function(E){return this.cdata(E)},_.prototype.com=function(E){return this.comment(E)},_.prototype.ins=function(E,S){return this.instruction(E,S)},_.prototype.doc=function(){return this.document()},_.prototype.dec=function(E,S,C){return this.declaration(E,S,C)},_.prototype.e=function(E,S,C){return this.element(E,S,C)},_.prototype.n=function(E,S,C){return this.node(E,S,C)},_.prototype.t=function(E){return this.text(E)},_.prototype.d=function(E){return this.cdata(E)},_.prototype.c=function(E){return this.comment(E)},_.prototype.r=function(E){return this.raw(E)},_.prototype.i=function(E,S){return this.instruction(E,S)},_.prototype.u=function(){return this.up()},_.prototype.importXMLBuilder=function(E){return this.importDocument(E)},_.prototype.replaceChild=function(E,S){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.removeChild=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.appendChild=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.hasChildNodes=function(){return this.children.length!==0},_.prototype.cloneNode=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.isSupported=function(E,S){return!0},_.prototype.hasAttributes=function(){return this.attribs.length!==0},_.prototype.compareDocumentPosition=function(E){var S,C;return S=this,S===E?0:this.document()!==E.document()?(C=e.Disconnected|e.ImplementationSpecific,Math.random()<.5?C|=e.Preceding:C|=e.Following,C):S.isAncestor(E)?e.Contains|e.Preceding:S.isDescendant(E)?e.Contains|e.Following:S.isPreceding(E)?e.Preceding:e.Following},_.prototype.isSameNode=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.lookupPrefix=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.isDefaultNamespace=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.lookupNamespaceURI=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.isEqualNode=function(E){var S,C,I;if(E.nodeType!==this.nodeType||E.children.length!==this.children.length)return!1;for(S=C=0,I=this.children.length-1;0<=I?C<=I:C>=I;S=0<=I?++C:--C)if(!this.children[S].isEqualNode(E.children[S]))return!1;return!0},_.prototype.getFeature=function(E,S){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.setUserData=function(E,S,C){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.getUserData=function(E){throw new Error("This DOM method is not implemented."+this.debugInfo())},_.prototype.contains=function(E){return E?E===this||this.isDescendant(E):!1},_.prototype.isDescendant=function(E){var S,C,I,N,T;for(T=this.children,I=0,N=T.length;IC},_.prototype.treePosition=function(E){var S,C;return C=0,S=!1,this.foreachTreeNode(this.document(),function(I){if(C++,!S&&I===E)return S=!0}),S?C:-1},_.prototype.foreachTreeNode=function(E,S){var C,I,N,T,k;for(E||(E=this.document()),T=E.children,I=0,N=T.length;I{(function(){var e,t=function(n,i){return function(){return n.apply(i,arguments)}},r={}.hasOwnProperty;A2t.exports=e=function(){function n(i){this.assertLegalName=t(this.assertLegalName,this),this.assertLegalChar=t(this.assertLegalChar,this);var s,a,o;i||(i={}),this.options=i,this.options.version||(this.options.version="1.0"),a=i.stringify||{};for(s in a)r.call(a,s)&&(o=a[s],this[s]=o)}return n.prototype.name=function(i){return this.options.noValidation?i:this.assertLegalName(""+i||"")},n.prototype.text=function(i){return this.options.noValidation?i:this.assertLegalChar(this.textEscape(""+i||""))},n.prototype.cdata=function(i){return this.options.noValidation?i:(i=""+i||"",i=i.replace("]]>","]]]]>"),this.assertLegalChar(i))},n.prototype.comment=function(i){if(this.options.noValidation)return i;if(i=""+i||"",i.match(/--/))throw new Error("Comment text cannot contain double-hypen: "+i);return this.assertLegalChar(i)},n.prototype.raw=function(i){return this.options.noValidation?i:""+i||""},n.prototype.attValue=function(i){return this.options.noValidation?i:this.assertLegalChar(this.attEscape(i=""+i||""))},n.prototype.insTarget=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.insValue=function(i){if(this.options.noValidation)return i;if(i=""+i||"",i.match(/\?>/))throw new Error("Invalid processing instruction value: "+i);return this.assertLegalChar(i)},n.prototype.xmlVersion=function(i){if(this.options.noValidation)return i;if(i=""+i||"",!i.match(/1\.[0-9]+/))throw new Error("Invalid version number: "+i);return i},n.prototype.xmlEncoding=function(i){if(this.options.noValidation)return i;if(i=""+i||"",!i.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+i);return this.assertLegalChar(i)},n.prototype.xmlStandalone=function(i){return this.options.noValidation?i:i?"yes":"no"},n.prototype.dtdPubID=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.dtdSysID=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.dtdElementValue=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.dtdAttType=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.dtdAttDefault=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.dtdEntityValue=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.dtdNData=function(i){return this.options.noValidation?i:this.assertLegalChar(""+i||"")},n.prototype.convertAttKey="@",n.prototype.convertPIKey="?",n.prototype.convertTextKey="#text",n.prototype.convertCDataKey="#cdata",n.prototype.convertCommentKey="#comment",n.prototype.convertRawKey="#raw",n.prototype.assertLegalChar=function(i){var s,a;if(this.options.noValidation)return i;if(s="",this.options.version==="1.0"){if(s=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,a=i.match(s))throw new Error("Invalid character in string: "+i+" at index "+a.index)}else if(this.options.version==="1.1"&&(s=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,a=i.match(s)))throw new Error("Invalid character in string: "+i+" at index "+a.index);return i},n.prototype.assertLegalName=function(i){var s;if(this.options.noValidation)return i;if(this.assertLegalChar(i),s=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!i.match(s))throw new Error("Invalid character in name");return i},n.prototype.textEscape=function(i){var s;return this.options.noValidation?i:(s=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,i.replace(s,"&").replace(//g,">").replace(/\r/g," "))},n.prototype.attEscape=function(i){var s;return this.options.noValidation?i:(s=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,i.replace(s,"&").replace(/{(function(){b2t.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(v2t)});var cve=b((E2t,S2t)=>{(function(){var e,t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g={}.hasOwnProperty;y=Gp().assign,e=cs(),u=t9(),c=a9(),r=Zj(),n=e9(),d=Jj(),p=o9(),h=u9(),f=c9(),l=ove(),i=r9(),s=i9(),a=n9(),o=s9(),t=BP(),S2t.exports=m=function(){function v(A){var _,E,S;A||(A={}),this.options=A,E=A.writer||{};for(_ in E)g.call(E,_)&&(S=E[_],this["_"+_]=this[_],this[_]=S)}return v.prototype.filterOptions=function(A){var _,E,S,C,I,N,T,k;return A||(A={}),A=y({},this.options,A),_={writer:this},_.pretty=A.pretty||!1,_.allowEmpty=A.allowEmpty||!1,_.indent=(E=A.indent)!=null?E:" ",_.newline=(S=A.newline)!=null?S:` -`,_.offset=(C=A.offset)!=null?C:0,_.dontPrettyTextNodes=(I=(N=A.dontPrettyTextNodes)!=null?N:A.dontprettytextnodes)!=null?I:0,_.spaceBeforeSlash=(T=(k=A.spaceBeforeSlash)!=null?k:A.spacebeforeslash)!=null?T:"",_.spaceBeforeSlash===!0&&(_.spaceBeforeSlash=" "),_.suppressPrettyCount=0,_.user={},_.state=t.None,_},v.prototype.indent=function(A,_,E){var S;return!_.pretty||_.suppressPrettyCount?"":_.pretty&&(S=(E||0)+_.offset+1,S>0)?new Array(S).join(_.indent):""},v.prototype.endline=function(A,_,E){return!_.pretty||_.suppressPrettyCount?"":_.newline},v.prototype.attribute=function(A,_,E){var S;return this.openAttribute(A,_,E),S=" "+A.name+'="'+A.value+'"',this.closeAttribute(A,_,E),S},v.prototype.cdata=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+""+this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.comment=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+""+this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.declaration=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+"",S+=this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.docType=function(A,_,E){var S,C,I,N,T;if(E||(E=0),this.openNode(A,_,E),_.state=t.OpenTag,N=this.indent(A,_,E),N+="0){for(N+=" [",N+=this.endline(A,_,E),_.state=t.InsideTag,T=A.children,C=0,I=T.length;C",N+=this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),N},v.prototype.element=function(A,_,E){var S,C,I,N,T,k,O,P,$,Q,j,z,X,K;E||(E=0),Q=!1,j="",this.openNode(A,_,E),_.state=t.OpenTag,j+=this.indent(A,_,E)+"<"+A.name,z=A.attribs;for($ in z)g.call(z,$)&&(S=z[$],j+=this.attribute(S,_,E));if(I=A.children.length,N=I===0?null:A.children[0],I===0||A.children.every(function(Z){return(Z.type===e.Text||Z.type===e.Raw)&&Z.value===""}))_.allowEmpty?(j+=">",_.state=t.CloseTag,j+=""+this.endline(A,_,E)):(_.state=t.CloseTag,j+=_.spaceBeforeSlash+"/>"+this.endline(A,_,E));else if(_.pretty&&I===1&&(N.type===e.Text||N.type===e.Raw)&&N.value!=null)j+=">",_.state=t.InsideTag,_.suppressPrettyCount++,Q=!0,j+=this.writeChildNode(N,_,E+1),_.suppressPrettyCount--,Q=!1,_.state=t.CloseTag,j+=""+this.endline(A,_,E);else{if(_.dontPrettyTextNodes){for(X=A.children,T=0,O=X.length;T"+this.endline(A,_,E),_.state=t.InsideTag,K=A.children,k=0,P=K.length;k",Q&&_.suppressPrettyCount--,j+=this.endline(A,_,E),_.state=t.None}return this.closeNode(A,_,E),j},v.prototype.writeChildNode=function(A,_,E){switch(A.type){case e.CData:return this.cdata(A,_,E);case e.Comment:return this.comment(A,_,E);case e.Element:return this.element(A,_,E);case e.Raw:return this.raw(A,_,E);case e.Text:return this.text(A,_,E);case e.ProcessingInstruction:return this.processingInstruction(A,_,E);case e.Dummy:return"";case e.Declaration:return this.declaration(A,_,E);case e.DocType:return this.docType(A,_,E);case e.AttributeDeclaration:return this.dtdAttList(A,_,E);case e.ElementDeclaration:return this.dtdElement(A,_,E);case e.EntityDeclaration:return this.dtdEntity(A,_,E);case e.NotationDeclaration:return this.dtdNotation(A,_,E);default:throw new Error("Unknown XML node type: "+A.constructor.name)}},v.prototype.processingInstruction=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+"",S+=this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.raw=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E),_.state=t.InsideTag,S+=A.value,_.state=t.CloseTag,S+=this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.text=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E),_.state=t.InsideTag,S+=A.value,_.state=t.CloseTag,S+=this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.dtdAttList=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+""+this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.dtdElement=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+""+this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.dtdEntity=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+""+this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.dtdNotation=function(A,_,E){var S;return this.openNode(A,_,E),_.state=t.OpenTag,S=this.indent(A,_,E)+""+this.endline(A,_,E),_.state=t.None,this.closeNode(A,_,E),S},v.prototype.openNode=function(A,_,E){},v.prototype.closeNode=function(A,_,E){},v.prototype.openAttribute=function(A,_,E){},v.prototype.closeAttribute=function(A,_,E){},v}()}).call(E2t)});var l9=b((w2t,I2t)=>{(function(){var e,t,r=function(i,s){for(var a in s)n.call(s,a)&&(i[a]=s[a]);function o(){this.constructor=i}return o.prototype=s.prototype,i.prototype=new o,i.__super__=s.prototype,i},n={}.hasOwnProperty;t=cve(),I2t.exports=e=function(i){r(s,i);function s(a){s.__super__.constructor.call(this,a)}return s.prototype.document=function(a,o){var u,c,l,d,f;for(o=this.filterOptions(o),d="",f=a.children,c=0,l=f.length;c{(function(){var e,t,r,n,i,s,a,o,u=function(l,d){for(var f in d)c.call(d,f)&&(l[f]=d[f]);function p(){this.constructor=l}return p.prototype=d.prototype,l.prototype=new p,l.__super__=d.prototype,l},c={}.hasOwnProperty;o=Gp().isPlainObject,r=sve(),t=NTt(),i=Uc(),e=cs(),a=uve(),s=l9(),C2t.exports=n=function(l){u(d,l);function d(f){d.__super__.constructor.call(this,null),this.name="#document",this.type=e.Document,this.documentURI=null,this.domConfig=new t,f||(f={}),f.writer||(f.writer=new s),this.options=f,this.stringify=new a(f)}return Object.defineProperty(d.prototype,"implementation",{value:new r}),Object.defineProperty(d.prototype,"doctype",{get:function(){var f,p,h,m;for(m=this.children,p=0,h=m.length;p{(function(){var e,t,r,n,i,s,a,o,u,c,l,d,f,p,h,m,y,g,v,A,_,E,S,C,I={}.hasOwnProperty;C=Gp(),E=C.isObject,_=C.isFunction,S=C.isPlainObject,A=C.getValue,e=cs(),d=lve(),p=Jj(),n=Zj(),i=e9(),m=o9(),v=u9(),h=c9(),c=t9(),l=a9(),s=r9(),o=n9(),a=i9(),u=s9(),r=ave(),g=uve(),y=l9(),t=BP(),N2t.exports=f=function(){function N(T,k,O){var P;this.name="?xml",this.type=e.Document,T||(T={}),P={},T.writer?S(T.writer)&&(P=T.writer,T.writer=new y):T.writer=new y,this.options=T,this.writer=T.writer,this.writerOptions=this.writer.filterOptions(P),this.stringify=new g(T),this.onDataCallback=k||function(){},this.onEndCallback=O||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return N.prototype.createChildNode=function(T){var k,O,P,$,Q,j,z,X;switch(T.type){case e.CData:this.cdata(T.value);break;case e.Comment:this.comment(T.value);break;case e.Element:P={},z=T.attribs;for(O in z)I.call(z,O)&&(k=z[O],P[O]=k.value);this.node(T.name,P);break;case e.Dummy:this.dummy();break;case e.Raw:this.raw(T.value);break;case e.Text:this.text(T.value);break;case e.ProcessingInstruction:this.instruction(T.target,T.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+T.constructor.name)}for(X=T.children,Q=0,j=X.length;Q=0;)this.up();return this.onEnd()},N.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},N.prototype.openNode=function(T){var k,O,P,$;if(!T.isOpen){if(!this.root&&this.currentLevel===0&&T.type===e.Element&&(this.root=T),O="",T.type===e.Element){this.writerOptions.state=t.OpenTag,O=this.writer.indent(T,this.writerOptions,this.currentLevel)+"<"+T.name,$=T.attribs;for(P in $)I.call($,P)&&(k=$[P],O+=this.writer.attribute(k,this.writerOptions,this.currentLevel));O+=(T.children?">":"/>")+this.writer.endline(T,this.writerOptions,this.currentLevel),this.writerOptions.state=t.InsideTag}else this.writerOptions.state=t.OpenTag,O=this.writer.indent(T,this.writerOptions,this.currentLevel)+""),O+=this.writer.endline(T,this.writerOptions,this.currentLevel);return this.onData(O,this.currentLevel),T.isOpen=!0}},N.prototype.closeNode=function(T){var k;if(!T.isClosed)return k="",this.writerOptions.state=t.CloseTag,T.type===e.Element?k=this.writer.indent(T,this.writerOptions,this.currentLevel)+""+this.writer.endline(T,this.writerOptions,this.currentLevel):k=this.writer.indent(T,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(T,this.writerOptions,this.currentLevel),this.writerOptions.state=t.None,this.onData(k,this.currentLevel),T.isClosed=!0},N.prototype.onData=function(T,k){return this.documentStarted=!0,this.onDataCallback(T,k+1)},N.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},N.prototype.debugInfo=function(T){return T==null?"":"node: <"+T+">"},N.prototype.ele=function(){return this.element.apply(this,arguments)},N.prototype.nod=function(T,k,O){return this.node(T,k,O)},N.prototype.txt=function(T){return this.text(T)},N.prototype.dat=function(T){return this.cdata(T)},N.prototype.com=function(T){return this.comment(T)},N.prototype.ins=function(T,k){return this.instruction(T,k)},N.prototype.dec=function(T,k,O){return this.declaration(T,k,O)},N.prototype.dtd=function(T,k,O){return this.doctype(T,k,O)},N.prototype.e=function(T,k,O){return this.element(T,k,O)},N.prototype.n=function(T,k,O){return this.node(T,k,O)},N.prototype.t=function(T){return this.text(T)},N.prototype.d=function(T){return this.cdata(T)},N.prototype.c=function(T){return this.comment(T)},N.prototype.r=function(T){return this.raw(T)},N.prototype.i=function(T,k){return this.instruction(T,k)},N.prototype.att=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},N.prototype.a=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},N.prototype.ent=function(T,k){return this.entity(T,k)},N.prototype.pent=function(T,k){return this.pEntity(T,k)},N.prototype.not=function(T,k){return this.notation(T,k)},N}()}).call(T2t)});var O2t=b((D2t,k2t)=>{(function(){var e,t,r,n,i=function(a,o){for(var u in o)s.call(o,u)&&(a[u]=o[u]);function c(){this.constructor=a}return c.prototype=o.prototype,a.prototype=new c,a.__super__=o.prototype,a},s={}.hasOwnProperty;e=cs(),n=cve(),t=BP(),k2t.exports=r=function(a){i(o,a);function o(u,c){this.stream=u,o.__super__.constructor.call(this,c)}return o.prototype.endline=function(u,c,l){return u.isLastRootNode&&c.state===t.CloseTag?"":o.__super__.endline.call(this,u,c,l)},o.prototype.document=function(u,c){var l,d,f,p,h,m,y,g,v;for(y=u.children,d=f=0,h=y.length;f0){for(this.stream.write(" ["),this.stream.write(this.endline(u,c,l)),c.state=t.InsideTag,h=u.children,f=0,p=h.length;f"),this.stream.write(this.endline(u,c,l)),c.state=t.None,this.closeNode(u,c,l)},o.prototype.element=function(u,c,l){var d,f,p,h,m,y,g,v,A,_;l||(l=0),this.openNode(u,c,l),c.state=t.OpenTag,this.stream.write(this.indent(u,c,l)+"<"+u.name),A=u.attribs;for(g in A)s.call(A,g)&&(d=A[g],this.attribute(d,c,l));if(p=u.children.length,h=p===0?null:u.children[0],p===0||u.children.every(function(E){return(E.type===e.Text||E.type===e.Raw)&&E.value===""}))c.allowEmpty?(this.stream.write(">"),c.state=t.CloseTag,this.stream.write("")):(c.state=t.CloseTag,this.stream.write(c.spaceBeforeSlash+"/>"));else if(c.pretty&&p===1&&(h.type===e.Text||h.type===e.Raw)&&h.value!=null)this.stream.write(">"),c.state=t.InsideTag,c.suppressPrettyCount++,v=!0,this.writeChildNode(h,c,l+1),c.suppressPrettyCount--,v=!1,c.state=t.CloseTag,this.stream.write("");else{for(this.stream.write(">"+this.endline(u,c,l)),c.state=t.InsideTag,_=u.children,m=0,y=_.length;m")}return this.stream.write(this.endline(u,c,l)),c.state=t.None,this.closeNode(u,c,l)},o.prototype.processingInstruction=function(u,c,l){return this.stream.write(o.__super__.processingInstruction.call(this,u,c,l))},o.prototype.raw=function(u,c,l){return this.stream.write(o.__super__.raw.call(this,u,c,l))},o.prototype.text=function(u,c,l){return this.stream.write(o.__super__.text.call(this,u,c,l))},o.prototype.dtdAttList=function(u,c,l){return this.stream.write(o.__super__.dtdAttList.call(this,u,c,l))},o.prototype.dtdElement=function(u,c,l){return this.stream.write(o.__super__.dtdElement.call(this,u,c,l))},o.prototype.dtdEntity=function(u,c,l){return this.stream.write(o.__super__.dtdEntity.call(this,u,c,l))},o.prototype.dtdNotation=function(u,c,l){return this.stream.write(o.__super__.dtdNotation.call(this,u,c,l))},o}(n)}).call(D2t)});var M2t=b((P2t,Zy)=>{(function(){var e,t,r,n,i,s,a,o,u,c;c=Gp(),o=c.assign,u=c.isFunction,r=sve(),n=lve(),i=R2t(),a=l9(),s=O2t(),e=cs(),t=BP(),Zy.exports.create=function(l,d,f,p){var h,m;if(l==null)throw new Error("Root element needs a name.");return p=o({},d,f,p),h=new n(p),m=h.element(l),p.headless||(h.declaration(p),(p.pubID!=null||p.sysID!=null)&&h.dtd(p)),m},Zy.exports.begin=function(l,d,f){var p;return u(l)&&(p=[l,d],d=p[0],f=p[1],l={}),d?new i(l,d,f):new n(l)},Zy.exports.stringWriter=function(l){return new a(l)},Zy.exports.streamWriter=function(l,d){return new s(l,d)},Zy.exports.implementation=new r,Zy.exports.nodeType=e,Zy.exports.writerState=t}).call(P2t)});var L2t=b(dve=>{(function(){"use strict";var e,t,r,n,i,s={}.hasOwnProperty;e=M2t(),t=Wj().defaults,n=function(a){return typeof a=="string"&&(a.indexOf("&")>=0||a.indexOf(">")>=0||a.indexOf("<")>=0)},i=function(a){return""},r=function(a){return a.replace("]]>","]]]]>")},dve.Builder=function(){function a(o){var u,c,l;this.options={},c=t["0.2"];for(u in c)s.call(c,u)&&(l=c[u],this.options[u]=l);for(u in o)s.call(o,u)&&(l=o[u],this.options[u]=l)}return a.prototype.buildObject=function(o){var u,c,l,d,f;return u=this.options.attrkey,c=this.options.charkey,Object.keys(o).length===1&&this.options.rootName===t["0.2"].rootName?(f=Object.keys(o)[0],o=o[f]):f=this.options.rootName,l=function(p){return function(h,m){var y,g,v,A,_,E;if(typeof m!="object")p.options.cdata&&n(m)?h.raw(i(m)):h.txt(m);else if(Array.isArray(m)){for(A in m)if(s.call(m,A)){g=m[A];for(_ in g)v=g[_],h=l(h.ele(_),v).up()}}else for(_ in m)if(s.call(m,_))if(g=m[_],_===u){if(typeof g=="object")for(y in g)E=g[y],h=h.att(y,E)}else if(_===c)p.options.cdata&&n(g)?h=h.raw(i(g)):h=h.txt(g);else if(Array.isArray(g))for(A in g)s.call(g,A)&&(v=g[A],typeof v=="string"?p.options.cdata&&n(v)?h=h.ele(_).raw(i(v)).up():h=h.ele(_,v).up():h=l(h.ele(_),v).up());else typeof g=="object"?h=l(h.ele(_),g).up():typeof g=="string"&&p.options.cdata&&n(g)?h=h.ele(_).raw(i(g)).up():(g==null&&(g=""),h=h.ele(_,g.toString()).up());return h}}(this),d=e.create(f,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),l(d,o).end(this.options.renderOpts)},a}()}).call(dve)});var B2t=b(d9=>{(function(e){e.parser=function(q,B){return new r(q,B)},e.SAXParser=r,e.SAXStream=c,e.createStream=u,e.MAX_BUFFER_LENGTH=64*1024;var t=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"];function r(q,B){if(!(this instanceof r))return new r(q,B);var ae=this;i(ae),ae.q=ae.c="",ae.bufferCheckPosition=e.MAX_BUFFER_LENGTH,ae.opt=B||{},ae.opt.lowercase=ae.opt.lowercase||ae.opt.lowercasetags,ae.looseCase=ae.opt.lowercase?"toLowerCase":"toUpperCase",ae.tags=[],ae.closed=ae.closedRoot=ae.sawRoot=!1,ae.tag=ae.error=null,ae.strict=!!q,ae.noscript=!!(q||ae.opt.noscript),ae.state=I.BEGIN,ae.strictEntities=ae.opt.strictEntities,ae.ENTITIES=ae.strictEntities?Object.create(e.XML_ENTITIES):Object.create(e.ENTITIES),ae.attribList=[],ae.opt.xmlns&&(ae.ns=Object.create(h)),ae.opt.unquotedAttributeValues===void 0&&(ae.opt.unquotedAttributeValues=!q),ae.trackPosition=ae.opt.position!==!1,ae.trackPosition&&(ae.position=ae.line=ae.column=0),T(ae,"onready")}Object.create||(Object.create=function(q){function B(){}B.prototype=q;var ae=new B;return ae}),Object.keys||(Object.keys=function(q){var B=[];for(var ae in q)q.hasOwnProperty(ae)&&B.push(ae);return B});function n(q){for(var B=Math.max(e.MAX_BUFFER_LENGTH,10),ae=0,M=0,F=t.length;MB)switch(t[M]){case"textNode":O(q);break;case"cdata":k(q,"oncdata",q.cdata),q.cdata="";break;case"script":k(q,"onscript",q.script),q.script="";break;default:$(q,"Max buffer length exceeded: "+t[M])}ae=Math.max(ae,V)}var H=e.MAX_BUFFER_LENGTH-ae;q.bufferCheckPosition=H+q.position}function i(q){for(var B=0,ae=t.length;B"||A(q)}function S(q,B){return q.test(B)}function C(q,B){return!S(q,B)}var I=0;e.STATE={BEGIN:I++,BEGIN_WHITESPACE:I++,TEXT:I++,TEXT_ENTITY:I++,OPEN_WAKA:I++,SGML_DECL:I++,SGML_DECL_QUOTED:I++,DOCTYPE:I++,DOCTYPE_QUOTED:I++,DOCTYPE_DTD:I++,DOCTYPE_DTD_QUOTED:I++,COMMENT_STARTING:I++,COMMENT:I++,COMMENT_ENDING:I++,COMMENT_ENDED:I++,CDATA:I++,CDATA_ENDING:I++,CDATA_ENDING_2:I++,PROC_INST:I++,PROC_INST_BODY:I++,PROC_INST_ENDING:I++,OPEN_TAG:I++,OPEN_TAG_SLASH:I++,ATTRIB:I++,ATTRIB_NAME:I++,ATTRIB_NAME_SAW_WHITE:I++,ATTRIB_VALUE:I++,ATTRIB_VALUE_QUOTED:I++,ATTRIB_VALUE_CLOSED:I++,ATTRIB_VALUE_UNQUOTED:I++,ATTRIB_VALUE_ENTITY_Q:I++,ATTRIB_VALUE_ENTITY_U:I++,CLOSE_TAG:I++,CLOSE_TAG_SAW_WHITE:I++,SCRIPT:I++,SCRIPT_ENDING:I++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach(function(q){var B=e.ENTITIES[q],ae=typeof B=="number"?String.fromCharCode(B):B;e.ENTITIES[q]=ae});for(var N in e.STATE)e.STATE[e.STATE[N]]=N;I=e.STATE;function T(q,B,ae){q[B]&&q[B](ae)}function k(q,B,ae){q.textNode&&O(q),T(q,B,ae)}function O(q){q.textNode=P(q.opt,q.textNode),q.textNode&&T(q,"ontext",q.textNode),q.textNode=""}function P(q,B){return q.trim&&(B=B.trim()),q.normalize&&(B=B.replace(/\s+/g," ")),B}function $(q,B){return O(q),q.trackPosition&&(B+=` -Line: `+q.line+` -Column: `+q.column+` -Char: `+q.c),B=new Error(B),q.error=B,T(q,"onerror",B),q}function Q(q){return q.sawRoot&&!q.closedRoot&&j(q,"Unclosed root tag"),q.state!==I.BEGIN&&q.state!==I.BEGIN_WHITESPACE&&q.state!==I.TEXT&&$(q,"Unexpected end"),O(q),q.c="",q.closed=!0,T(q,"onend"),r.call(q,q.strict,q.opt),q}function j(q,B){if(typeof q!="object"||!(q instanceof r))throw new Error("bad call to strictFail");q.strict&&$(q,B)}function z(q){q.strict||(q.tagName=q.tagName[q.looseCase]());var B=q.tags[q.tags.length-1]||q,ae=q.tag={name:q.tagName,attributes:{}};q.opt.xmlns&&(ae.ns=B.ns),q.attribList.length=0,k(q,"onopentagstart",ae)}function X(q,B){var ae=q.indexOf(":"),M=ae<0?["",q]:q.split(":"),F=M[0],V=M[1];return B&&q==="xmlns"&&(F="xmlns",V=""),{prefix:F,local:V}}function K(q){if(q.strict||(q.attribName=q.attribName[q.looseCase]()),q.attribList.indexOf(q.attribName)!==-1||q.tag.attributes.hasOwnProperty(q.attribName)){q.attribName=q.attribValue="";return}if(q.opt.xmlns){var B=X(q.attribName,!0),ae=B.prefix,M=B.local;if(ae==="xmlns")if(M==="xml"&&q.attribValue!==f)j(q,"xml: prefix must be bound to "+f+` -Actual: `+q.attribValue);else if(M==="xmlns"&&q.attribValue!==p)j(q,"xmlns: prefix must be bound to "+p+` -Actual: `+q.attribValue);else{var F=q.tag,V=q.tags[q.tags.length-1]||q;F.ns===V.ns&&(F.ns=Object.create(V.ns)),F.ns[M]=q.attribValue}q.attribList.push([q.attribName,q.attribValue])}else q.tag.attributes[q.attribName]=q.attribValue,k(q,"onattribute",{name:q.attribName,value:q.attribValue});q.attribName=q.attribValue=""}function Z(q,B){if(q.opt.xmlns){var ae=q.tag,M=X(q.tagName);ae.prefix=M.prefix,ae.local=M.local,ae.uri=ae.ns[M.prefix]||"",ae.prefix&&!ae.uri&&(j(q,"Unbound namespace prefix: "+JSON.stringify(q.tagName)),ae.uri=M.prefix);var F=q.tags[q.tags.length-1]||q;ae.ns&&F.ns!==ae.ns&&Object.keys(ae.ns).forEach(function(Ce){k(q,"onopennamespace",{prefix:Ce,uri:ae.ns[Ce]})});for(var V=0,H=q.attribList.length;V",q.tagName="",q.state=I.SCRIPT;return}k(q,"onscript",q.script),q.script=""}var B=q.tags.length,ae=q.tagName;q.strict||(ae=ae[q.looseCase]());for(var M=ae;B--;){var F=q.tags[B];if(F.name!==M)j(q,"Unexpected close tag");else break}if(B<0){j(q,"Unmatched closing tag: "+q.tagName),q.textNode+="",q.state=I.TEXT;return}q.tagName=ae;for(var V=q.tags.length;V-- >B;){var H=q.tag=q.tags.pop();q.tagName=q.tag.name,k(q,"onclosetag",q.tagName);var G={};for(var J in H.ns)G[J]=H.ns[J];var ee=q.tags[q.tags.length-1]||q;q.opt.xmlns&&H.ns!==ee.ns&&Object.keys(H.ns).forEach(function(te){var re=H.ns[te];k(q,"onclosenamespace",{prefix:te,uri:re})})}B===0&&(q.closedRoot=!0),q.tagName=q.attribValue=q.attribName="",q.attribList.length=0,q.state=I.TEXT}function ie(q){var B=q.entity,ae=B.toLowerCase(),M,F="";return q.ENTITIES[B]?q.ENTITIES[B]:q.ENTITIES[ae]?q.ENTITIES[ae]:(B=ae,B.charAt(0)==="#"&&(B.charAt(1)==="x"?(B=B.slice(2),M=parseInt(B,16),F=M.toString(16)):(B=B.slice(1),M=parseInt(B,10),F=M.toString(10))),B=B.replace(/^0+/,""),isNaN(M)||F.toLowerCase()!==B||M<0||M>1114111?(j(q,"Invalid character entity"),"&"+q.entity+";"):String.fromCodePoint(M))}function ue(q,B){B==="<"?(q.state=I.OPEN_WAKA,q.startTagPosition=q.position):A(B)||(j(q,"Non-whitespace before first tag."),q.textNode=B,q.state=I.TEXT)}function he(q,B){var ae="";return B"?(k(B,"onsgmldeclaration",B.sgmlDecl),B.sgmlDecl="",B.state=I.TEXT):(_(M)&&(B.state=I.SGML_DECL_QUOTED),B.sgmlDecl+=M);continue;case I.SGML_DECL_QUOTED:M===B.q&&(B.state=I.SGML_DECL,B.q=""),B.sgmlDecl+=M;continue;case I.DOCTYPE:M===">"?(B.state=I.TEXT,k(B,"ondoctype",B.doctype),B.doctype=!0):(B.doctype+=M,M==="["?B.state=I.DOCTYPE_DTD:_(M)&&(B.state=I.DOCTYPE_QUOTED,B.q=M));continue;case I.DOCTYPE_QUOTED:B.doctype+=M,M===B.q&&(B.q="",B.state=I.DOCTYPE);continue;case I.DOCTYPE_DTD:M==="]"?(B.doctype+=M,B.state=I.DOCTYPE):M==="<"?(B.state=I.OPEN_WAKA,B.startTagPosition=B.position):_(M)?(B.doctype+=M,B.state=I.DOCTYPE_DTD_QUOTED,B.q=M):B.doctype+=M;continue;case I.DOCTYPE_DTD_QUOTED:B.doctype+=M,M===B.q&&(B.state=I.DOCTYPE_DTD,B.q="");continue;case I.COMMENT:M==="-"?B.state=I.COMMENT_ENDING:B.comment+=M;continue;case I.COMMENT_ENDING:M==="-"?(B.state=I.COMMENT_ENDED,B.comment=P(B.opt,B.comment),B.comment&&k(B,"oncomment",B.comment),B.comment=""):(B.comment+="-"+M,B.state=I.COMMENT);continue;case I.COMMENT_ENDED:M!==">"?(j(B,"Malformed comment"),B.comment+="--"+M,B.state=I.COMMENT):B.doctype&&B.doctype!==!0?B.state=I.DOCTYPE_DTD:B.state=I.TEXT;continue;case I.CDATA:for(var V=ae-1;M&&M!=="]";)M=he(q,ae++),M&&B.trackPosition&&(B.position++,M===` -`?(B.line++,B.column=0):B.column++);B.cdata+=q.substring(V,ae-1),M==="]"&&(B.state=I.CDATA_ENDING);continue;case I.CDATA_ENDING:M==="]"?B.state=I.CDATA_ENDING_2:(B.cdata+="]"+M,B.state=I.CDATA);continue;case I.CDATA_ENDING_2:M===">"?(B.cdata&&k(B,"oncdata",B.cdata),k(B,"onclosecdata"),B.cdata="",B.state=I.TEXT):M==="]"?B.cdata+="]":(B.cdata+="]]"+M,B.state=I.CDATA);continue;case I.PROC_INST:M==="?"?B.state=I.PROC_INST_ENDING:A(M)?B.state=I.PROC_INST_BODY:B.procInstName+=M;continue;case I.PROC_INST_BODY:if(!B.procInstBody&&A(M))continue;M==="?"?B.state=I.PROC_INST_ENDING:B.procInstBody+=M;continue;case I.PROC_INST_ENDING:M===">"?(k(B,"onprocessinginstruction",{name:B.procInstName,body:B.procInstBody}),B.procInstName=B.procInstBody="",B.state=I.TEXT):(B.procInstBody+="?"+M,B.state=I.PROC_INST_BODY);continue;case I.OPEN_TAG:S(y,M)?B.tagName+=M:(z(B),M===">"?Z(B):M==="/"?B.state=I.OPEN_TAG_SLASH:(A(M)||j(B,"Invalid character in tag name"),B.state=I.ATTRIB));continue;case I.OPEN_TAG_SLASH:M===">"?(Z(B,!0),Y(B)):(j(B,"Forward-slash in opening tag not followed by >"),B.state=I.ATTRIB);continue;case I.ATTRIB:if(A(M))continue;M===">"?Z(B):M==="/"?B.state=I.OPEN_TAG_SLASH:S(m,M)?(B.attribName=M,B.attribValue="",B.state=I.ATTRIB_NAME):j(B,"Invalid attribute name");continue;case I.ATTRIB_NAME:M==="="?B.state=I.ATTRIB_VALUE:M===">"?(j(B,"Attribute without value"),B.attribValue=B.attribName,K(B),Z(B)):A(M)?B.state=I.ATTRIB_NAME_SAW_WHITE:S(y,M)?B.attribName+=M:j(B,"Invalid attribute name");continue;case I.ATTRIB_NAME_SAW_WHITE:if(M==="=")B.state=I.ATTRIB_VALUE;else{if(A(M))continue;j(B,"Attribute without value"),B.tag.attributes[B.attribName]="",B.attribValue="",k(B,"onattribute",{name:B.attribName,value:""}),B.attribName="",M===">"?Z(B):S(m,M)?(B.attribName=M,B.state=I.ATTRIB_NAME):(j(B,"Invalid attribute name"),B.state=I.ATTRIB)}continue;case I.ATTRIB_VALUE:if(A(M))continue;_(M)?(B.q=M,B.state=I.ATTRIB_VALUE_QUOTED):(B.opt.unquotedAttributeValues||$(B,"Unquoted attribute value"),B.state=I.ATTRIB_VALUE_UNQUOTED,B.attribValue=M);continue;case I.ATTRIB_VALUE_QUOTED:if(M!==B.q){M==="&"?B.state=I.ATTRIB_VALUE_ENTITY_Q:B.attribValue+=M;continue}K(B),B.q="",B.state=I.ATTRIB_VALUE_CLOSED;continue;case I.ATTRIB_VALUE_CLOSED:A(M)?B.state=I.ATTRIB:M===">"?Z(B):M==="/"?B.state=I.OPEN_TAG_SLASH:S(m,M)?(j(B,"No whitespace between attributes"),B.attribName=M,B.attribValue="",B.state=I.ATTRIB_NAME):j(B,"Invalid attribute name");continue;case I.ATTRIB_VALUE_UNQUOTED:if(!E(M)){M==="&"?B.state=I.ATTRIB_VALUE_ENTITY_U:B.attribValue+=M;continue}K(B),M===">"?Z(B):B.state=I.ATTRIB;continue;case I.CLOSE_TAG:if(B.tagName)M===">"?Y(B):S(y,M)?B.tagName+=M:B.script?(B.script+=""?Y(B):j(B,"Invalid characters in closing tag");continue;case I.TEXT_ENTITY:case I.ATTRIB_VALUE_ENTITY_Q:case I.ATTRIB_VALUE_ENTITY_U:var H,G;switch(B.state){case I.TEXT_ENTITY:H=I.TEXT,G="textNode";break;case I.ATTRIB_VALUE_ENTITY_Q:H=I.ATTRIB_VALUE_QUOTED,G="attribValue";break;case I.ATTRIB_VALUE_ENTITY_U:H=I.ATTRIB_VALUE_UNQUOTED,G="attribValue";break}if(M===";"){var J=ie(B);B.opt.unparsedEntities&&!Object.values(e.XML_ENTITIES).includes(J)?(B.entity="",B.state=H,B.write(J)):(B[G]+=J,B.entity="",B.state=H)}else S(B.entity.length?v:g,M)?B.entity+=M:(j(B,"Invalid character in entity name"),B[G]+="&"+B.entity+M,B.entity="",B.state=H);continue;default:throw new Error(B,"Unknown state: "+B.state)}return B.position>=B.bufferCheckPosition&&n(B),B}String.fromCodePoint||function(){var q=String.fromCharCode,B=Math.floor,ae=function(){var M=16384,F=[],V,H,G=-1,J=arguments.length;if(!J)return"";for(var ee="";++G1114111||B(te)!==te)throw RangeError("Invalid code point: "+te);te<=65535?F.push(te):(te-=65536,V=(te>>10)+55296,H=te%1024+56320,F.push(V,H)),(G+1===J||F.length>M)&&(ee+=q.apply(null,F),F.length=0)}return ee};Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:ae,configurable:!0,writable:!0}):String.fromCodePoint=ae}()})(typeof d9>"u"?d9.sax={}:d9)});var $2t=b(fve=>{(function(){"use strict";fve.stripBOM=function(e){return e[0]==="\uFEFF"?e.substring(1):e}}).call(fve)});var pve=b(Ub=>{(function(){"use strict";var e;e=new RegExp(/(?!xmlns)^.*:/),Ub.normalize=function(t){return t.toLowerCase()},Ub.firstCharLowerCase=function(t){return t.charAt(0).toLowerCase()+t.slice(1)},Ub.stripPrefix=function(t){return t.replace(e,"")},Ub.parseNumbers=function(t){return isNaN(t)||(t=t%1===0?parseInt(t,10):parseFloat(t)),t},Ub.parseBooleans=function(t){return/^(?:true|false)$/i.test(t)&&(t=t.toLowerCase()==="true"),t}}).call(Ub)});var F2t=b(u0=>{(function(){"use strict";var e,t,r,n,i,s,a,o,u,c=function(f,p){return function(){return f.apply(p,arguments)}},l=function(f,p){for(var h in p)d.call(p,h)&&(f[h]=p[h]);function m(){this.constructor=f}return m.prototype=p.prototype,f.prototype=new m,f.__super__=p.prototype,f},d={}.hasOwnProperty;o=B2t(),n=require("events"),e=$2t(),a=pve(),u=require("timers").setImmediate,t=Wj().defaults,i=function(f){return typeof f=="object"&&f!=null&&Object.keys(f).length===0},s=function(f,p,h){var m,y,g;for(m=0,y=f.length;m0&&(S[v.options.childkey]=I),I=S;else if(k){k[v.options.childkey]=k[v.options.childkey]||[],N={};for(E in I)d.call(I,E)&&r(N,E,I[E]);k[v.options.childkey].push(N),delete I["#name"],Object.keys(I).length===1&&m in I&&!v.EXPLICIT_CHARKEY&&(I=I[m])}}return g.length>0?v.assignOrPush(k,C,I):(v.options.explicitRoot&&(T=I,I={},r(I,C,T)),v.resultObject=I,v.saxParser.ended=!0,v.emit("end",v.resultObject))}}(this),y=function(v){return function(A){var _,E;if(E=g[g.length-1],E)return E[m]+=A,v.options.explicitChildren&&v.options.preserveChildrenOrder&&v.options.charsAsChildren&&(v.options.includeWhiteChars||A.replace(/\\n/g,"").trim()!=="")&&(E[v.options.childkey]=E[v.options.childkey]||[],_={"#name":"__text__"},_[m]=A,v.options.normalize&&(_[m]=_[m].replace(/\s{2,}/g," ").trim()),E[v.options.childkey].push(_)),E}}(this),this.saxParser.ontext=y,this.saxParser.oncdata=function(v){return function(A){var _;if(_=y(A),_)return _.cdata=!0}}(this)},p.prototype.parseString=function(h,m){var y;m!=null&&typeof m=="function"&&(this.on("end",function(g){return this.reset(),m(null,g)}),this.on("error",function(g){return this.reset(),m(g)}));try{return h=h.toString(),h.trim()===""?(this.emit("end",null),!0):(h=e.stripBOM(h),this.options.async?(this.remaining=h,u(this.processAsync),this.saxParser):this.saxParser.write(h).close())}catch(g){if(y=g,this.saxParser.errThrown||this.saxParser.ended){if(this.saxParser.ended)throw y}else return this.emit("error",y),this.saxParser.errThrown=!0}},p.prototype.parseStringPromise=function(h){return new Promise(function(m){return function(y,g){return m.parseString(h,function(v,A){return v?g(v):y(A)})}}(this))},p}(n),u0.parseString=function(f,p,h){var m,y,g;return h!=null?(typeof h=="function"&&(m=h),typeof p=="object"&&(y=p)):(typeof p=="function"&&(m=p),y={}),g=new u0.Parser(y),g.parseString(f,m)},u0.parseStringPromise=function(f,p){var h,m;return typeof p=="object"&&(h=p),m=new u0.Parser(h),m.parseStringPromise(f)}}).call(u0)});var U2t=b(c0=>{(function(){"use strict";var e,t,r,n,i=function(a,o){for(var u in o)s.call(o,u)&&(a[u]=o[u]);function c(){this.constructor=a}return c.prototype=o.prototype,a.prototype=new c,a.__super__=o.prototype,a},s={}.hasOwnProperty;t=Wj(),e=L2t(),r=F2t(),n=pve(),c0.defaults=t.defaults,c0.processors=n,c0.ValidationError=function(a){i(o,a);function o(u){this.message=u}return o}(Error),c0.Builder=e.Builder,c0.Parser=r.Parser,c0.parseString=r.parseString,c0.parseStringPromise=r.parseStringPromise}).call(c0)});var X9=b(h0=>{"use strict";Object.defineProperty(h0,"__esModule",{value:!0});h0.DefaultXMLBuilderCBOptions=h0.XMLBuilderOptionKeys=h0.DefaultBuilderOptions=void 0;h0.DefaultBuilderOptions={version:"1.0",encoding:void 0,standalone:void 0,keepNullNodes:!1,keepNullAttributes:!1,ignoreConverters:!1,skipWhitespaceOnlyText:!0,convert:{att:"@",ins:"?",text:"#",cdata:"$",comment:"!"},defaultNamespace:{ele:void 0,att:void 0},namespaceAlias:{html:"http://www.w3.org/1999/xhtml",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"},invalidCharReplacement:void 0,parser:void 0};h0.XMLBuilderOptionKeys=new Set(Object.keys(h0.DefaultBuilderOptions));h0.DefaultXMLBuilderCBOptions={format:"xml",wellFormed:!1,prettyPrint:!1,indent:" ",newline:` -`,offset:0,width:0,allowEmptyTags:!1,spaceBeforeSlash:!1,keepNullNodes:!1,keepNullAttributes:!1,ignoreConverters:!1,convert:{att:"@",ins:"?",text:"#",cdata:"$",comment:"!"},defaultNamespace:{ele:void 0,att:void 0},namespaceAlias:{html:"http://www.w3.org/1999/xhtml",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"}}});var vDt=b(J9=>{"use strict";Object.defineProperty(J9,"__esModule",{value:!0});J9.FixedSizeSet=void 0;var nEe=class{_limit;_items=new Set;constructor(t=1e3){this._limit=t}add(t){if(this._items.add(t),this._items.size>this._limit){let r=this._items.values().next();r.done||this._items.delete(r.value)}return this}delete(t){return this._items.delete(t)}has(t){return this._items.has(t)}clear(){this._items.clear()}get size(){return this._items.size}forEach(t,r){this._items.forEach(n=>t.call(r,n,n,this))}*keys(){yield*this._items.keys()}*values(){yield*this._items.values()}*entries(){yield*this._items.entries()}*[Symbol.iterator](){yield*this._items}get[Symbol.toStringTag](){return"FixedSizeSet"}};J9.FixedSizeSet=nEe});var bDt=b(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});Z9.ObjectCache=void 0;var iEe=class{_limit;_items=new Map;constructor(t=1e3){this._limit=t}get(t){return this._items.get(t)}set(t,r){if(this._items.set(t,r),this._items.size>this._limit){let n=this._items.keys().next();n.done||this._items.delete(n.value)}}delete(t){return this._items.delete(t)}has(t){return this._items.has(t)}clear(){this._items.clear()}get size(){return this._items.size}forEach(t,r){this._items.forEach((n,i)=>t.call(r,i,n))}*keys(){yield*this._items.keys()}*values(){yield*this._items.values()}*entries(){yield*this._items.entries()}*[Symbol.iterator](){yield*this._items}get[Symbol.toStringTag](){return"ObjectCache"}};Z9.ObjectCache=iEe});var EDt=b(eH=>{"use strict";Object.defineProperty(eH,"__esModule",{value:!0});eH.CompareCache=void 0;var sEe=class{_limit;_items=new Map;constructor(t=1e3){this._limit=t}check(t,r){if(this._items.get(t)===r)return!0;if(this._items.get(r)===t)return!1;let n=Math.random()<.5;if(n?this._items.set(t,r):this._items.set(r,t),this._items.size>this._limit){let i=this._items.keys().next();i.done||this._items.delete(i.value)}return n}};eH.CompareCache=sEe});var SDt=b(tH=>{"use strict";Object.defineProperty(tH,"__esModule",{value:!0});tH.Lazy=void 0;var aEe=class{_initialized=!1;_initFunc;_value;constructor(t){this._value=void 0,this._initFunc=t}get value(){return this._initialized||(this._value=this._initFunc(),this._initialized=!0),this._value}};tH.Lazy=aEe});var wDt=b(rH=>{"use strict";Object.defineProperty(rH,"__esModule",{value:!0});rH.StringWalker=void 0;var oEe=class{_chars;_length;_pointer=0;_codePoint;_c;_remaining;_substring;constructor(t){this._chars=Array.from(t),this._length=this._chars.length}get eof(){return this._pointer>=this._length}get length(){return this._length}codePoint(){if(this._codePoint===void 0)if(this.eof)this._codePoint=-1;else{let t=this._chars[this._pointer].codePointAt(0);t!==void 0?this._codePoint=t:this._codePoint=-1}return this._codePoint}c(){return this._c===void 0&&(this._c=this.eof?"":this._chars[this._pointer]),this._c}remaining(){return this._remaining===void 0&&(this._remaining=this.eof?"":this._chars.slice(this._pointer+1).join("")),this._remaining}substring(){return this._substring===void 0&&(this._substring=this.eof?"":this._chars.slice(this._pointer).join("")),this._substring}get pointer(){return this._pointer}set pointer(t){t!==this._pointer&&(this._pointer=t,this._codePoint=void 0,this._c=void 0,this._remaining=void 0,this._substring=void 0)}};rH.StringWalker=oEe});var gn=b(Dr=>{"use strict";Object.defineProperty(Dr,"__esModule",{value:!0});Dr.StringWalker=Dr.Lazy=Dr.CompareCache=Dr.ObjectCache=Dr.FixedSizeSet=void 0;Dr.applyMixin=mWr;Dr.applyDefaults=IDt;Dr.forEachArray=gWr;Dr.forEachObject=xDt;Dr.arrayLength=yWr;Dr.objectLength=_Wr;Dr.getObjectValue=AWr;Dr.removeObjectValue=vWr;Dr.clone=nH;Dr.isBoolean=bWr;Dr.isNumber=EWr;Dr.isString=SWr;Dr.isFunction=uEe;Dr.isObject=cEe;Dr.isArray=lEe;Dr.isSet=dEe;Dr.isMap=Ax;Dr.isEmpty=wWr;Dr.isPlainObject=fEe;Dr.isIterable=IWr;Dr.getValue=xWr;Dr.utf8Encode=CWr;Dr.utf8Decode=TWr;var lWr=vDt();Object.defineProperty(Dr,"FixedSizeSet",{enumerable:!0,get:function(){return lWr.FixedSizeSet}});var dWr=bDt();Object.defineProperty(Dr,"ObjectCache",{enumerable:!0,get:function(){return dWr.ObjectCache}});var fWr=EDt();Object.defineProperty(Dr,"CompareCache",{enumerable:!0,get:function(){return fWr.CompareCache}});var pWr=SDt();Object.defineProperty(Dr,"Lazy",{enumerable:!0,get:function(){return pWr.Lazy}});var hWr=wDt();Object.defineProperty(Dr,"StringWalker",{enumerable:!0,get:function(){return hWr.StringWalker}});function mWr(e,t,...r){Object.getOwnPropertyNames(t.prototype).forEach(n=>{if(n!=="constructor"){if(r.indexOf(n)!==-1){let s=Object.getOwnPropertyDescriptor(e.prototype,n);s&&Object.defineProperty(e.prototype,"_"+n,s)}let i=Object.getOwnPropertyDescriptor(t.prototype,n);i&&Object.defineProperty(e.prototype,n,i)}})}function IDt(e,t,r=!1){let n=nH(e||{});return xDt(t,(i,s)=>{fEe(s)?n[i]=IDt(n[i],s,r):(r||n[i]===void 0)&&(n[i]=s)}),n}function gWr(e,t,r){e.forEach(t,r)}function xDt(e,t,r){if(Ax(e))e.forEach((n,i)=>t.call(r,i,n));else for(let n in e)e.hasOwnProperty(n)&&t.call(r,n,e[n])}function yWr(e){return dEe(e)?e.size:e.length}function _Wr(e){return Ax(e)?e.size:Object.keys(e).length}function AWr(e,t){return Ax(e)?e.get(t):e[t]}function vWr(e,t){Ax(e)?e.delete(t):delete e[t]}function nH(e){if(uEe(e))return e;if(lEe(e)){let t=[];for(let r of e)t.push(nH(r));return t}else if(fEe(e)){let t={};for(let r in e)if(e.hasOwnProperty(r)){let n=e[r];t[r]=nH(n)}return t}else return e}function bWr(e){return typeof e=="boolean"}function EWr(e){return typeof e=="number"}function SWr(e){return typeof e=="string"}function uEe(e){return!!e&&typeof e=="function"}function cEe(e){let t=typeof e;return!!e&&(t==="function"||t==="object")}function lEe(e){return Array.isArray(e)}function dEe(e){return e instanceof Set}function Ax(e){return e instanceof Map}function wWr(e){if(lEe(e))return!e.length;if(dEe(e))return!e.size;if(Ax(e))return!e.size;if(cEe(e)){for(let t in e)if(e.hasOwnProperty(t))return!1;return!0}return!1}function fEe(e){if(cEe(e)){let t=Object.getPrototypeOf(e),r=t.constructor;return t&&r&&typeof r=="function"&&r instanceof r&&Function.prototype.toString.call(r)===Function.prototype.toString.call(Object)}return!1}function IWr(e){return e&&typeof e[Symbol.iterator]=="function"}function xWr(e){return uEe(e.valueOf)?e.valueOf():e}function CWr(e){let t=new Uint8Array(e.length*4),r=0;for(let n=0;n>6|192;else{if(i>55295&&i<56320){if(++n>=e.length)throw new Error("Incomplete surrogate pair.");let s=e.charCodeAt(n);if(s<56320||s>57343)throw new Error("Invalid surrogate character.");i=65536+((i&1023)<<10)+(s&1023),t[r++]=i>>18|240,t[r++]=i>>12&63|128}else t[r++]=i>>12|224;t[r++]=i>>6&63|128}t[r++]=i&63|128}return t.subarray(0,r)}function TWr(e){let t="",r=0;for(;r127)if(n>191&&n<224){if(r>=e.length)throw new Error("Incomplete 2-byte sequence.");n=(n&31)<<6|e[r++]&63}else if(n>223&&n<240){if(r+1>=e.length)throw new Error("Incomplete 3-byte sequence.");n=(n&15)<<12|(e[r++]&63)<<6|e[r++]&63}else if(n>239&&n<248){if(r+2>=e.length)throw new Error("Incomplete 4-byte sequence.");n=(n&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63}else throw new Error("Unknown multi-byte start.");if(n<=65535)t+=String.fromCharCode(n);else if(n<=1114111)n-=65536,t+=String.fromCharCode(n>>10|55296),t+=String.fromCharCode(n&1023|56320);else throw new Error("Code point exceeds UTF-16 limit.")}return t}});var fn=b(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.HowToCompare=bo.WhatToShow=bo.FilterResult=bo.Position=bo.NodeType=bo.EventPhase=bo.BoundaryPosition=void 0;var CDt;(function(e){e[e.Before=0]="Before",e[e.Equal=1]="Equal",e[e.After=2]="After"})(CDt||(bo.BoundaryPosition=CDt={}));var TDt;(function(e){e[e.None=0]="None",e[e.Capturing=1]="Capturing",e[e.AtTarget=2]="AtTarget",e[e.Bubbling=3]="Bubbling"})(TDt||(bo.EventPhase=TDt={}));var NDt;(function(e){e[e.Element=1]="Element",e[e.Attribute=2]="Attribute",e[e.Text=3]="Text",e[e.CData=4]="CData",e[e.EntityReference=5]="EntityReference",e[e.Entity=6]="Entity",e[e.ProcessingInstruction=7]="ProcessingInstruction",e[e.Comment=8]="Comment",e[e.Document=9]="Document",e[e.DocumentType=10]="DocumentType",e[e.DocumentFragment=11]="DocumentFragment",e[e.Notation=12]="Notation"})(NDt||(bo.NodeType=NDt={}));var RDt;(function(e){e[e.SameNode=0]="SameNode",e[e.Disconnected=1]="Disconnected",e[e.Preceding=2]="Preceding",e[e.Following=4]="Following",e[e.Contains=8]="Contains",e[e.ContainedBy=16]="ContainedBy",e[e.ImplementationSpecific=32]="ImplementationSpecific"})(RDt||(bo.Position=RDt={}));var DDt;(function(e){e[e.Accept=1]="Accept",e[e.Reject=2]="Reject",e[e.Skip=3]="Skip"})(DDt||(bo.FilterResult=DDt={}));var kDt;(function(e){e[e.All=4294967295]="All",e[e.Element=1]="Element",e[e.Attribute=2]="Attribute",e[e.Text=4]="Text",e[e.CDataSection=8]="CDataSection",e[e.EntityReference=16]="EntityReference",e[e.Entity=32]="Entity",e[e.ProcessingInstruction=64]="ProcessingInstruction",e[e.Comment=128]="Comment",e[e.Document=256]="Document",e[e.DocumentType=512]="DocumentType",e[e.DocumentFragment=1024]="DocumentFragment",e[e.Notation=2048]="Notation"})(kDt||(bo.WhatToShow=kDt={}));var ODt;(function(e){e[e.StartToStart=0]="StartToStart",e[e.StartToEnd=1]="StartToEnd",e[e.EndToEnd=2]="EndToEnd",e[e.EndToStart=3]="EndToStart"})(ODt||(bo.HowToCompare=ODt={}))});var oM=b(iH=>{"use strict";Object.defineProperty(iH,"__esModule",{value:!0});iH.LocalNameSet=void 0;var pEe=class{_items={};_nullItems={};set(t,r){t===null?this._nullItems[r]=!0:this._items[t]?this._items[t][r]=!0:(this._items[t]={},this._items[t][r]=!0)}has(t,r){return t===null?this._nullItems[r]===!0:this._items[t]?this._items[t][r]===!0:!1}};iH.LocalNameSet=pEe});var aH=b(sH=>{"use strict";Object.defineProperty(sH,"__esModule",{value:!0});sH.NamespacePrefixMap=void 0;var hEe=class e{_items={};_nullItems=[];copy(){let t=new e;for(let r in this._items)t._items[r]=this._items[r].slice(0);return t._nullItems=this._nullItems.slice(0),t}get(t,r){let n=r===null?this._nullItems:this._items[r]||null;if(n===null)return null;let i=null;for(let s=0;s{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.ASCIIAlphanumeric=Er.ASCIIAlpha=Er.ASCIILowerAlpha=Er.ASCIIUpperAlpha=Er.ASCIIHexDigit=Er.ASCIILowerHexDigit=Er.ASCIIUpperHexDigit=Er.ASCIIDigit=Er.Control=Er.C0ControlOrSpace=Er.C0Control=Er.ASCIIWhiteSpace=Er.ASCIITabOrNewLine=Er.ASCIICodePoint=Er.NonCharacter=Er.ScalarValue=Er.Surrogate=void 0;Er.Surrogate=/[\uD800-\uDFFF]/;Er.ScalarValue=/[\uD800-\uDFFF]/;Er.NonCharacter=/[\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]/;Er.ASCIICodePoint=/[\u0000-\u007F]/;Er.ASCIITabOrNewLine=/[\t\n\r]/;Er.ASCIIWhiteSpace=/[\t\n\f\r ]/;Er.C0Control=/[\u0000-\u001F]/;Er.C0ControlOrSpace=/[\u0000-\u001F ]/;Er.Control=/[\u0000-\u001F\u007F-\u009F]/;Er.ASCIIDigit=/[0-9]/;Er.ASCIIUpperHexDigit=/[0-9A-F]/;Er.ASCIILowerHexDigit=/[0-9a-f]/;Er.ASCIIHexDigit=/[0-9A-Fa-f]/;Er.ASCIIUpperAlpha=/[A-Z]/;Er.ASCIILowerAlpha=/[a-z]/;Er.ASCIIAlpha=/[A-Za-z]/;Er.ASCIIAlphanumeric=/[0-9A-Za-z]/});var PDt=b(uH=>{"use strict";Object.defineProperty(uH,"__esModule",{value:!0});uH.forgivingBase64Encode=RWr;uH.forgivingBase64Decode=DWr;var NWr=oH();function RWr(e){return Buffer.from(e).toString("base64")}function DWr(e){return e===""?"":(e=e.replace(NWr.ASCIIWhiteSpace,""),e.length%4===0&&(e.endsWith("==")?e=e.substr(0,e.length-2):e.endsWith("=")&&(e=e.substr(0,e.length-1))),e.length%4===1||!/[0-9A-Za-z+/]/.test(e)?null:Buffer.from(e,"base64").toString("utf8"))}});var gEe=b(mEe=>{"use strict";Object.defineProperty(mEe,"__esModule",{value:!0});mEe.isASCIIByte=kWr;function kWr(e){return e>=0&&e<=127}});var yEe=b(m0=>{"use strict";Object.defineProperty(m0,"__esModule",{value:!0});m0.length=OWr;m0.byteLowercase=PWr;m0.byteUppercase=MWr;m0.byteCaseInsensitiveMatch=LWr;m0.startsWith=BWr;m0.byteLessThan=$Wr;m0.isomorphicDecode=FWr;function OWr(e){return e.length}function PWr(e){for(let t=0;t=65&&r<=90&&(e[t]=r+32)}}function MWr(e){for(let t=0;t=97&&r<=122&&(e[t]=r-32)}}function LWr(e,t){if(e.length!==t.length)return!1;for(let r=0;r=65&&n<=90&&(n+=32),i>=65&&i<=90&&(i+=32),n!==i)return!1}return!0}function BWr(e,t){let r=0;for(;;){if(r>=e.length)return!1;if(r>=t.length)return!0;if(e[r]!==t[r])return!1;r++}}function $Wr(e,t){let r=0;for(;;){if(r>=e.length)return!1;if(r>=t.length)return!0;let n=e[r],i=t[r];if(ni)return!1;r++}}function FWr(e){return String.fromCodePoint(...e)}});var MDt=b(bx=>{"use strict";Object.defineProperty(bx,"__esModule",{value:!0});bx.parseJSONFromBytes=UWr;bx.serializeJSONToBytes=qWr;bx.parseJSONIntoInfraValues=jWr;bx.convertAJSONDerivedJavaScriptValueToAnInfraValue=cH;var vx=gn();function UWr(e){let t=(0,vx.utf8Decode)(e);return JSON.parse.call(void 0,t)}function qWr(e){let t=JSON.stringify.call(void 0,e);return(0,vx.utf8Encode)(t)}function jWr(e){let t=JSON.parse.call(void 0,e);return cH(t)}function cH(e){if(e===null||(0,vx.isString)(e)||(0,vx.isNumber)(e))return e;if((0,vx.isArray)(e)){let t=new Array;for(let r of e)t.push(cH(r));return t}else if((0,vx.isObject)(e)){let t=new Map;for(let r in e)if(e.hasOwnProperty(r)){let n=e[r];t.set(r,cH(n))}return t}return e}});var LDt=b(Eo=>{"use strict";Object.defineProperty(Eo,"__esModule",{value:!0});Eo.append=HWr;Eo.extend=KWr;Eo.prepend=VWr;Eo.replace=zWr;Eo.insert=QWr;Eo.remove=GWr;Eo.empty=YWr;Eo.contains=WWr;Eo.size=XWr;Eo.isEmpty=JWr;Eo.forEach=ZWr;Eo.clone=eXr;Eo.sortInAscendingOrder=tXr;Eo.sortInDescendingOrder=rXr;var _Ee=gn();function HWr(e,t){e.push(t)}function KWr(e,t){e.push(...t)}function VWr(e,t){e.unshift(t)}function zWr(e,t,r){let n=0;for(let i of e){if((0,_Ee.isFunction)(t))t.call(null,i)&&(e[n]=r);else if(i===t){e[n]=r;return}n++}}function QWr(e,t,r){e.splice(r,0,t)}function GWr(e,t){let r=e.length;for(;r--;){let n=e[r];if((0,_Ee.isFunction)(t))t.call(null,n)&&e.splice(r,1);else if(n===t){e.splice(r,1);return}}}function YWr(e){e.length=0}function WWr(e,t){for(let r of e)if((0,_Ee.isFunction)(t)){if(t.call(null,r))return!0}else if(r===t)return!0;return!1}function XWr(e,t){if(t===void 0)return e.length;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function JWr(e){return e.length===0}function*ZWr(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function eXr(e){return new Array(...e)}function tXr(e,t){return e.sort((r,n)=>t.call(null,r,n)?-1:1)}function rXr(e,t){return e.sort((r,n)=>t.call(null,r,n)?1:-1)}});var $Dt=b(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.get=nXr;tc.set=iXr;tc.remove=sXr;tc.contains=aXr;tc.keys=oXr;tc.values=uXr;tc.size=cXr;tc.isEmpty=lXr;tc.forEach=dXr;tc.clone=fXr;tc.sortInAscendingOrder=pXr;tc.sortInDescendingOrder=hXr;var BDt=gn();function nXr(e,t){return e.get(t)}function iXr(e,t,r){e.set(t,r)}function sXr(e,t){if(!(0,BDt.isFunction)(t))e.delete(t);else{let r=[];for(let n of e)t.call(null,n)&&r.push(n[0]);for(let n of r)e.delete(n)}}function aXr(e,t){if((0,BDt.isFunction)(t)){for(let r of e)if(t.call(null,r))return!0;return!1}else return e.has(t)}function oXr(e){return new Set(e.keys())}function uXr(e){return[...e.values()]}function cXr(e,t){if(t===void 0)return e.size;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function lXr(e){return e.size===0}function*dXr(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function fXr(e){return new Map(e)}function pXr(e,t){let r=new Array(...e);return r.sort((n,i)=>t.call(null,n,i)?-1:1),new Map(r)}function hXr(e,t){let r=new Array(...e);return r.sort((n,i)=>t.call(null,n,i)?1:-1),new Map(r)}});var FDt=b(rc=>{"use strict";Object.defineProperty(rc,"__esModule",{value:!0});rc.XLink=rc.SVG=rc.MathML=rc.XMLNS=rc.XML=rc.HTML=void 0;rc.HTML="http://www.w3.org/1999/xhtml";rc.XML="http://www.w3.org/XML/1998/namespace";rc.XMLNS="http://www.w3.org/2000/xmlns/";rc.MathML="http://www.w3.org/1998/Math/MathML";rc.SVG="http://www.w3.org/2000/svg";rc.XLink="http://www.w3.org/1999/xlink"});var UDt=b(lH=>{"use strict";Object.defineProperty(lH,"__esModule",{value:!0});lH.enqueue=mXr;lH.dequeue=gXr;function mXr(e,t){e.push(t)}function gXr(e){return e.shift()||null}});var jDt=b(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.append=yXr;ds.extend=_Xr;ds.prepend=AXr;ds.replace=vXr;ds.insert=bXr;ds.remove=EXr;ds.empty=SXr;ds.contains=wXr;ds.size=IXr;ds.isEmpty=xXr;ds.forEach=CXr;ds.clone=TXr;ds.sortInAscendingOrder=NXr;ds.sortInDescendingOrder=RXr;ds.isSubsetOf=qDt;ds.isSupersetOf=DXr;ds.intersection=kXr;ds.union=OXr;ds.range=PXr;var AEe=gn();function yXr(e,t){e.add(t)}function _Xr(e,t){t.forEach(e.add,e)}function AXr(e,t){let r=new Set(e);e.clear(),e.add(t),r.forEach(e.add,e)}function vXr(e,t,r){let n=new Set;for(let i of e)(0,AEe.isFunction)(t)?t.call(null,i)?n.add(r):n.add(i):i===t?n.add(r):n.add(i);e.clear(),n.forEach(e.add,e)}function bXr(e,t,r){let n=new Set,i=0;for(let s of e)i===r&&n.add(t),n.add(s),i++;e.clear(),n.forEach(e.add,e)}function EXr(e,t){if(!(0,AEe.isFunction)(t))e.delete(t);else{let r=[];for(let n of e)t.call(null,n)&&r.push(n);for(let n of r)e.delete(n)}}function SXr(e){e.clear()}function wXr(e,t){if((0,AEe.isFunction)(t)){for(let r of e)if(t.call(null,r))return!0}else return e.has(t);return!1}function IXr(e,t){if(t===void 0)return e.size;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function xXr(e){return e.size===0}function*CXr(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function TXr(e){return new Set(e)}function NXr(e,t){let r=new Array(...e);return r.sort((n,i)=>t.call(null,n,i)?-1:1),new Set(r)}function RXr(e,t){let r=new Array(...e);return r.sort((n,i)=>t.call(null,n,i)?1:-1),new Set(r)}function qDt(e,t){for(let r of e)if(!t.has(r))return!1;return!0}function DXr(e,t){return qDt(t,e)}function kXr(e,t){let r=new Set;for(let n of e)t.has(n)&&r.add(n);return r}function OXr(e,t){let r=new Set(e);return t.forEach(r.add,r),r}function PXr(e,t){let r=new Set;for(let n=e;n<=t;n++)r.add(n);return r}});var HDt=b(dH=>{"use strict";Object.defineProperty(dH,"__esModule",{value:!0});dH.push=MXr;dH.pop=LXr;function MXr(e,t){e.push(t)}function LXr(e){return e.pop()||null}});var WDt=b(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.isCodeUnitPrefix=vEe;fs.isCodeUnitLessThan=FXr;fs.isomorphicEncode=VDt;fs.isASCIIString=zDt;fs.asciiLowercase=bEe;fs.asciiUppercase=UXr;fs.asciiCaseInsensitiveMatch=qXr;fs.asciiEncode=jXr;fs.asciiDecode=HXr;fs.stripNewlines=KXr;fs.normalizeNewlines=VXr;fs.stripLeadingAndTrailingASCIIWhitespace=SEe;fs.stripAndCollapseASCIIWhitespace=zXr;fs.collectASequenceOfCodePoints=Gb;fs.skipASCIIWhitespace=EEe;fs.strictlySplit=QDt;fs.splitAStringOnASCIIWhitespace=GDt;fs.splitAStringOnCommas=YDt;fs.concatenate=QXr;var KDt=oH(),BXr=yEe(),$Xr=gEe(),fH=gn();function vEe(e,t){let r=0;for(;;){let n=r=65&&n<=90?t+=String.fromCodePoint(n+32):t+=r}return t}function UXr(e){let t="";for(let r of e){let n=r.codePointAt(0);n!==void 0&&n>=97&&n<=122?t+=String.fromCodePoint(n-32):t+=r}return t}function qXr(e,t){return bEe(e)===bEe(t)}function jXr(e){return console.assert(zDt(e),"asciiEncode requires an ASCII string."),VDt(e)}function HXr(e){for(let t of e)console.assert((0,$Xr.isASCIIByte)(t),"asciiDecode requires an ASCII byte sequence.");return(0,BXr.isomorphicDecode)(e)}function KXr(e){return e.replace(/[\n\r]/g,"")}function VXr(e){return e.replace(/\r\n/g,` +`+m+"}":"{"+g.join(",")+"}",n=m,h}}typeof YFt.stringify!="function"&&(YFt.stringify=function(u,l,d){var f;if(n="",s="",typeof d=="number")for(f=0;f{var mG=null,Xhn=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,Jhn=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,Zhn=function(e){"use strict";var t={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(e!=null){if(e.strict===!0&&(t.strict=!0),e.storeAsString===!0&&(t.storeAsString=!0),t.alwaysParseAsBig=e.alwaysParseAsBig===!0?e.alwaysParseAsBig:!1,t.useNativeBigInt=e.useNativeBigInt===!0?e.useNativeBigInt:!1,typeof e.constructorAction<"u")if(e.constructorAction==="error"||e.constructorAction==="ignore"||e.constructorAction==="preserve")t.constructorAction=e.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${e.constructorAction}`);if(typeof e.protoAction<"u")if(e.protoAction==="error"||e.protoAction==="ignore"||e.protoAction==="preserve")t.protoAction=e.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${e.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "},i,a=function(m){throw{name:"SyntaxError",message:m,at:r,text:i}},o=function(m){return m&&m!==n&&a("Expected '"+m+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var m,g="";for(n==="-"&&(g="-",o("-"));n>="0"&&n<="9";)g+=n,o();if(n===".")for(g+=".";o()&&n>="0"&&n<="9";)g+=n;if(n==="e"||n==="E")for(g+=n,o(),(n==="-"||n==="+")&&(g+=n,o());n>="0"&&n<="9";)g+=n,o();if(m=+g,!isFinite(m))a("Bad number");else return mG==null&&(mG=oxe()),g.length>15?t.storeAsString?g:t.useNativeBigInt?BigInt(g):new mG(g):t.alwaysParseAsBig?t.useNativeBigInt?BigInt(m):new mG(m):m},u=function(){var m,g,_="",y;if(n==='"')for(var A=r;o();){if(n==='"')return r-1>A&&(_+=i.substring(A,r-1)),o(),_;if(n==="\\"){if(r-1>A&&(_+=i.substring(A,r-1)),o(),n==="u"){for(y=0,g=0;g<4&&(m=parseInt(o(),16),!!isFinite(m));g+=1)y=y*16+m;_+=String.fromCharCode(y)}else if(typeof s[n]=="string")_+=s[n];else break;A=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,h=function(){var m=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),m;for(;n;){if(m.push(f()),l(),n==="]")return o("]"),m;o(","),l()}}a("Bad array")},p=function(){var m,g=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),g;for(;n;){if(m=u(),l(),o(":"),t.strict===!0&&Object.hasOwnProperty.call(g,m)&&a('Duplicate key "'+m+'"'),Xhn.test(m)===!0?t.protoAction==="error"?a("Object contains forbidden prototype property"):t.protoAction==="ignore"?f():g[m]=f():Jhn.test(m)===!0?t.constructorAction==="error"?a("Object contains forbidden constructor property"):t.constructorAction==="ignore"?f():g[m]=f():g[m]=f(),l(),n==="}")return o("}"),g;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return p();case"[":return h();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(m,g){var _;return i=m+"",r=0,n=" ",_=f(),l(),n&&a("Syntax error"),typeof g=="function"?function y(A,E){var v,b,I=A[E];return I&&typeof I=="object"&&Object.keys(I).forEach(function(T){b=y(I,T),b!==void 0?I[T]=b:delete I[T]}),g.call(A,E,I)}({"":_},""):_}};XFt.exports=Zhn});var t6t=S((nCs,gG)=>{var ZFt=WFt().stringify,e6t=JFt();gG.exports=function(e){return{parse:e6t(e),stringify:ZFt}};gG.exports.parse=e6t();gG.exports.stringify=ZFt});var _G=S(cxe=>{(function(){cxe.defaults={"0.1":{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},"0.2":{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:` +`},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(cxe)});var _p=S((r6t,oy)=>{(function(){var e,t,r,n,s,i,a,o=[].slice,c={}.hasOwnProperty;e=function(){var u,l,d,f,h,p;if(p=arguments[0],h=2<=arguments.length?o.call(arguments,1):[],s(Object.assign))Object.assign.apply(null,arguments);else for(u=0,d=h.length;u{(function(){var e;s6t.exports=e=function(){function t(){}return t.prototype.hasFeature=function(r,n){return!0},t.prototype.createDocumentType=function(r,n,s){throw new Error("This DOM method is not implemented.")},t.prototype.createDocument=function(r,n,s){throw new Error("This DOM method is not implemented.")},t.prototype.createHTMLDocument=function(r){throw new Error("This DOM method is not implemented.")},t.prototype.getFeature=function(r,n){throw new Error("This DOM method is not implemented.")},t}()}).call(n6t)});var o6t=S((i6t,a6t)=>{(function(){var e;a6t.exports=e=function(){function t(){}return t.prototype.handleError=function(r){throw new Error(r)},t}()}).call(i6t)});var l6t=S((c6t,u6t)=>{(function(){var e;u6t.exports=e=function(){function t(r){this.arr=r||[]}return Object.defineProperty(t.prototype,"length",{get:function(){return this.arr.length}}),t.prototype.item=function(r){return this.arr[r]||null},t.prototype.contains=function(r){return this.arr.indexOf(r)!==-1},t}()}).call(c6t)});var h6t=S((d6t,f6t)=>{(function(){var e,t,r;t=o6t(),r=l6t(),f6t.exports=e=function(){function n(){var s;this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=s=Object.create(this.defaultParams)}return Object.defineProperty(n.prototype,"parameterNames",{get:function(){return new r(Object.keys(this.defaultParams))}}),n.prototype.getParameter=function(s){return this.params.hasOwnProperty(s)?this.params[s]:null},n.prototype.canSetParameter=function(s,i){return!0},n.prototype.setParameter=function(s,i){return i!=null?this.params[s]=i:delete this.params[s]},n}()}).call(d6t)});var Wi=S((p6t,m6t)=>{(function(){m6t.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(p6t)});var lxe=S((g6t,_6t)=>{(function(){var e,t,r;e=Wi(),r=Yl(),_6t.exports=t=function(){function n(s,i,a){if(this.parent=s,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),i==null)throw new Error("Missing attribute name. "+this.debugInfo(i));this.name=this.stringify.name(i),this.value=this.stringify.attValue(a),this.type=e.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(n.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(n.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(n.prototype,"textContent",{get:function(){return this.value},set:function(s){return this.value=s||""}}),Object.defineProperty(n.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(n.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(n.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(n.prototype,"specified",{get:function(){return!0}}),n.prototype.clone=function(){return Object.create(this)},n.prototype.toString=function(s){return this.options.writer.attribute(this,this.options.writer.filterOptions(s))},n.prototype.debugInfo=function(s){return s=s||this.name,s==null?"parent: <"+this.parent.name+">":"attribute: {"+s+"}, parent: <"+this.parent.name+">"},n.prototype.isEqualNode=function(s){return!(s.namespaceURI!==this.namespaceURI||s.prefix!==this.prefix||s.localName!==this.localName||s.value!==this.value)},n}()}).call(g6t)});var AG=S((A6t,E6t)=>{(function(){var e;E6t.exports=e=function(){function t(r){this.nodes=r}return Object.defineProperty(t.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.getNamedItem=function(r){return this.nodes[r]},t.prototype.setNamedItem=function(r){var n;return n=this.nodes[r.nodeName],this.nodes[r.nodeName]=r,n||null},t.prototype.removeNamedItem=function(r){var n;return n=this.nodes[r],delete this.nodes[r],n||null},t.prototype.item=function(r){return this.nodes[Object.keys(this.nodes)[r]]||null},t.prototype.getNamedItemNS=function(r,n){throw new Error("This DOM method is not implemented.")},t.prototype.setNamedItemNS=function(r){throw new Error("This DOM method is not implemented.")},t.prototype.removeNamedItemNS=function(r,n){throw new Error("This DOM method is not implemented.")},t}()}).call(A6t)});var EG=S((y6t,v6t)=>{(function(){var e,t,r,n,s,i,a,o,c,u=function(d,f){for(var h in f)l.call(f,h)&&(d[h]=f[h]);function p(){this.constructor=d}return p.prototype=f.prototype,d.prototype=new p,d.__super__=f.prototype,d},l={}.hasOwnProperty;c=_p(),o=c.isObject,a=c.isFunction,i=c.getValue,s=Yl(),e=Wi(),t=lxe(),n=AG(),v6t.exports=r=function(d){u(f,d);function f(h,p,m){var g,_,y,A;if(f.__super__.constructor.call(this,h),p==null)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(p),this.type=e.Element,this.attribs={},this.schemaTypeInfo=null,m!=null&&this.attribute(m),h.type===e.Document&&(this.isRoot=!0,this.documentObject=h,h.rootObject=this,h.children)){for(A=h.children,_=0,y=A.length;_=g;p=0<=g?++m:--m)if(!this.attribs[p].isEqualNode(h.attribs[p]))return!1;return!0},f}(s)}).call(y6t)});var yB=S((S6t,T6t)=>{(function(){var e,t,r=function(s,i){for(var a in i)n.call(i,a)&&(s[a]=i[a]);function o(){this.constructor=s}return o.prototype=i.prototype,s.prototype=new o,s.__super__=i.prototype,s},n={}.hasOwnProperty;t=Yl(),T6t.exports=e=function(s){r(i,s);function i(a){i.__super__.constructor.call(this,a),this.value=""}return Object.defineProperty(i.prototype,"data",{get:function(){return this.value},set:function(a){return this.value=a||""}}),Object.defineProperty(i.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(i.prototype,"textContent",{get:function(){return this.value},set:function(a){return this.value=a||""}}),i.prototype.clone=function(){return Object.create(this)},i.prototype.substringData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.appendData=function(a){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.insertData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.deleteData=function(a,o){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.replaceData=function(a,o,c){throw new Error("This DOM method is not implemented."+this.debugInfo())},i.prototype.isEqualNode=function(a){return!(!i.__super__.isEqualNode.apply(this,arguments).isEqualNode(a)||a.data!==this.data)},i}(t)}).call(S6t)});var yG=S((b6t,I6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Wi(),r=yB(),I6t.exports=t=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=e.CData,this.value=this.stringify.cdata(c)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.cdata(this,this.options.writer.filterOptions(o))},a}(r)}).call(b6t)});var vG=S((R6t,C6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Wi(),t=yB(),C6t.exports=r=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=e.Comment,this.value=this.stringify.comment(c)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.comment(this,this.options.writer.filterOptions(o))},a}(t)}).call(R6t)});var SG=S((x6t,w6t)=>{(function(){var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;n=_p().isObject,r=Yl(),e=Wi(),w6t.exports=t=function(a){s(o,a);function o(c,u,l,d){var f;o.__super__.constructor.call(this,c),n(u)&&(f=u,u=f.version,l=f.encoding,d=f.standalone),u||(u="1.0"),this.type=e.Declaration,this.version=this.stringify.xmlVersion(u),l!=null&&(this.encoding=this.stringify.xmlEncoding(l)),d!=null&&(this.standalone=this.stringify.xmlStandalone(d))}return o.prototype.toString=function(c){return this.options.writer.declaration(this,this.options.writer.filterOptions(c))},o}(r)}).call(x6t)});var TG=S((N6t,O6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Yl(),e=Wi(),O6t.exports=t=function(i){n(a,i);function a(o,c,u,l,d,f){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing DTD element name. "+this.debugInfo());if(u==null)throw new Error("Missing DTD attribute name. "+this.debugInfo(c));if(!l)throw new Error("Missing DTD attribute type. "+this.debugInfo(c));if(!d)throw new Error("Missing DTD attribute default. "+this.debugInfo(c));if(d.indexOf("#")!==0&&(d="#"+d),!d.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(c));if(f&&!d.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(c));this.elementName=this.stringify.name(c),this.type=e.AttributeDeclaration,this.attributeName=this.stringify.name(u),this.attributeType=this.stringify.dtdAttType(l),f&&(this.defaultValue=this.stringify.dtdAttDefault(f)),this.defaultValueType=d}return a.prototype.toString=function(o){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(o))},a}(r)}).call(N6t)});var bG=S((D6t,P6t)=>{(function(){var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;n=_p().isObject,r=Yl(),e=Wi(),P6t.exports=t=function(a){s(o,a);function o(c,u,l,d){if(o.__super__.constructor.call(this,c),l==null)throw new Error("Missing DTD entity name. "+this.debugInfo(l));if(d==null)throw new Error("Missing DTD entity value. "+this.debugInfo(l));if(this.pe=!!u,this.name=this.stringify.name(l),this.type=e.EntityDeclaration,!n(d))this.value=this.stringify.dtdEntityValue(d),this.internal=!0;else{if(!d.pubID&&!d.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(l));if(d.pubID&&!d.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(l));if(this.internal=!1,d.pubID!=null&&(this.pubID=this.stringify.dtdPubID(d.pubID)),d.sysID!=null&&(this.sysID=this.stringify.dtdSysID(d.sysID)),d.nData!=null&&(this.nData=this.stringify.dtdNData(d.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(l))}}return Object.defineProperty(o.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(o.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(o.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(o.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(o.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(o.prototype,"xmlVersion",{get:function(){return null}}),o.prototype.toString=function(c){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(c))},o}(r)}).call(D6t)});var IG=S((L6t,M6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Yl(),e=Wi(),M6t.exports=t=function(i){n(a,i);function a(o,c,u){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing DTD element name. "+this.debugInfo());u||(u="(#PCDATA)"),Array.isArray(u)&&(u="("+u.join(",")+")"),this.name=this.stringify.name(c),this.type=e.ElementDeclaration,this.value=this.stringify.dtdElementValue(u)}return a.prototype.toString=function(o){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(o))},a}(r)}).call(L6t)});var RG=S((k6t,B6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Yl(),e=Wi(),B6t.exports=t=function(i){n(a,i);function a(o,c,u){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing DTD notation name. "+this.debugInfo(c));if(!u.pubID&&!u.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(c));this.name=this.stringify.name(c),this.type=e.NotationDeclaration,u.pubID!=null&&(this.pubID=this.stringify.dtdPubID(u.pubID)),u.sysID!=null&&(this.sysID=this.stringify.dtdSysID(u.sysID))}return Object.defineProperty(a.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(a.prototype,"systemId",{get:function(){return this.sysID}}),a.prototype.toString=function(o){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(o))},a}(r)}).call(k6t)});var CG=S((U6t,F6t)=>{(function(){var e,t,r,n,s,i,a,o,c,u=function(d,f){for(var h in f)l.call(f,h)&&(d[h]=f[h]);function p(){this.constructor=d}return p.prototype=f.prototype,d.prototype=new p,d.__super__=f.prototype,d},l={}.hasOwnProperty;c=_p().isObject,o=Yl(),e=Wi(),t=TG(),n=bG(),r=IG(),s=RG(),a=AG(),F6t.exports=i=function(d){u(f,d);function f(h,p,m){var g,_,y,A,E,v;if(f.__super__.constructor.call(this,h),this.type=e.DocType,h.children){for(A=h.children,_=0,y=A.length;_{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Wi(),t=Yl(),q6t.exports=r=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing raw text. "+this.debugInfo());this.type=e.Raw,this.value=this.stringify.raw(c)}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.raw(this,this.options.writer.filterOptions(o))},a}(t)}).call($6t)});var wG=S((H6t,V6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Wi(),t=yB(),V6t.exports=r=function(i){n(a,i);function a(o,c){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=e.Text,this.value=this.stringify.text(c)}return Object.defineProperty(a.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"wholeText",{get:function(){var o,c,u;for(u="",c=this.previousSibling;c;)u=c.data+u,c=c.previousSibling;for(u+=this.data,o=this.nextSibling;o;)u=u+o.data,o=o.nextSibling;return u}}),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.text(this,this.options.writer.filterOptions(o))},a.prototype.splitText=function(o){throw new Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.replaceWholeText=function(o){throw new Error("This DOM method is not implemented."+this.debugInfo())},a}(t)}).call(H6t)});var NG=S((j6t,K6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;e=Wi(),t=yB(),K6t.exports=r=function(i){n(a,i);function a(o,c,u){if(a.__super__.constructor.call(this,o),c==null)throw new Error("Missing instruction target. "+this.debugInfo());this.type=e.ProcessingInstruction,this.target=this.stringify.insTarget(c),this.name=this.target,u&&(this.value=this.stringify.insValue(u))}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(o))},a.prototype.isEqualNode=function(o){return!(!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(o)||o.target!==this.target)},a}(t)}).call(j6t)});var dxe=S((G6t,z6t)=>{(function(){var e,t,r,n=function(i,a){for(var o in a)s.call(a,o)&&(i[o]=a[o]);function c(){this.constructor=i}return c.prototype=a.prototype,i.prototype=new c,i.__super__=a.prototype,i},s={}.hasOwnProperty;r=Yl(),e=Wi(),z6t.exports=t=function(i){n(a,i);function a(o){a.__super__.constructor.call(this,o),this.type=e.Dummy}return a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(o){return""},a}(r)}).call(G6t)});var W6t=S((Y6t,Q6t)=>{(function(){var e;Q6t.exports=e=function(){function t(r){this.nodes=r}return Object.defineProperty(t.prototype,"length",{get:function(){return this.nodes.length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.item=function(r){return this.nodes[r]||null},t}()}).call(Y6t)});var Z6t=S((X6t,J6t)=>{(function(){J6t.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(X6t)});var Yl=S((e5t,t5t)=>{(function(){var e,t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y,A={}.hasOwnProperty;y=_p(),_=y.isObject,g=y.isFunction,m=y.isEmpty,p=y.getValue,o=null,r=null,n=null,s=null,i=null,f=null,h=null,d=null,a=null,t=null,l=null,c=null,e=null,t5t.exports=u=function(){function E(v){this.parent=v,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,o||(o=EG(),r=yG(),n=vG(),s=SG(),i=CG(),f=xG(),h=wG(),d=NG(),a=dxe(),t=Wi(),l=W6t(),c=AG(),e=Z6t())}return Object.defineProperty(E.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(E.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(E.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(E.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(E.prototype,"childNodes",{get:function(){return(!this.childNodeList||!this.childNodeList.nodes)&&(this.childNodeList=new l(this.children)),this.childNodeList}}),Object.defineProperty(E.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(E.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(E.prototype,"previousSibling",{get:function(){var v;return v=this.parent.children.indexOf(this),this.parent.children[v-1]||null}}),Object.defineProperty(E.prototype,"nextSibling",{get:function(){var v;return v=this.parent.children.indexOf(this),this.parent.children[v+1]||null}}),Object.defineProperty(E.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(E.prototype,"textContent",{get:function(){var v,b,I,T,x;if(this.nodeType===t.Element||this.nodeType===t.DocumentFragment){for(x="",T=this.children,b=0,I=T.length;b":(I=this.parent)!=null&&I.name?"node: <"+v+">, parent: <"+this.parent.name+">":"node: <"+v+">"},E.prototype.ele=function(v,b,I){return this.element(v,b,I)},E.prototype.nod=function(v,b,I){return this.node(v,b,I)},E.prototype.txt=function(v){return this.text(v)},E.prototype.dat=function(v){return this.cdata(v)},E.prototype.com=function(v){return this.comment(v)},E.prototype.ins=function(v,b){return this.instruction(v,b)},E.prototype.doc=function(){return this.document()},E.prototype.dec=function(v,b,I){return this.declaration(v,b,I)},E.prototype.e=function(v,b,I){return this.element(v,b,I)},E.prototype.n=function(v,b,I){return this.node(v,b,I)},E.prototype.t=function(v){return this.text(v)},E.prototype.d=function(v){return this.cdata(v)},E.prototype.c=function(v){return this.comment(v)},E.prototype.r=function(v){return this.raw(v)},E.prototype.i=function(v,b){return this.instruction(v,b)},E.prototype.u=function(){return this.up()},E.prototype.importXMLBuilder=function(v){return this.importDocument(v)},E.prototype.replaceChild=function(v,b){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.removeChild=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.appendChild=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.hasChildNodes=function(){return this.children.length!==0},E.prototype.cloneNode=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.isSupported=function(v,b){return!0},E.prototype.hasAttributes=function(){return this.attribs.length!==0},E.prototype.compareDocumentPosition=function(v){var b,I;return b=this,b===v?0:this.document()!==v.document()?(I=e.Disconnected|e.ImplementationSpecific,Math.random()<.5?I|=e.Preceding:I|=e.Following,I):b.isAncestor(v)?e.Contains|e.Preceding:b.isDescendant(v)?e.Contains|e.Following:b.isPreceding(v)?e.Preceding:e.Following},E.prototype.isSameNode=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.lookupPrefix=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.isDefaultNamespace=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.lookupNamespaceURI=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.isEqualNode=function(v){var b,I,T;if(v.nodeType!==this.nodeType||v.children.length!==this.children.length)return!1;for(b=I=0,T=this.children.length-1;0<=T?I<=T:I>=T;b=0<=T?++I:--I)if(!this.children[b].isEqualNode(v.children[b]))return!1;return!0},E.prototype.getFeature=function(v,b){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.setUserData=function(v,b,I){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.getUserData=function(v){throw new Error("This DOM method is not implemented."+this.debugInfo())},E.prototype.contains=function(v){return v?v===this||this.isDescendant(v):!1},E.prototype.isDescendant=function(v){var b,I,T,x,w;for(w=this.children,T=0,x=w.length;TI},E.prototype.treePosition=function(v){var b,I;return I=0,b=!1,this.foreachTreeNode(this.document(),function(T){if(I++,!b&&T===v)return b=!0}),b?I:-1},E.prototype.foreachTreeNode=function(v,b){var I,T,x,w,D;for(v||(v=this.document()),w=v.children,T=0,x=w.length;T{(function(){var e,t=function(n,s){return function(){return n.apply(s,arguments)}},r={}.hasOwnProperty;n5t.exports=e=function(){function n(s){this.assertLegalName=t(this.assertLegalName,this),this.assertLegalChar=t(this.assertLegalChar,this);var i,a,o;s||(s={}),this.options=s,this.options.version||(this.options.version="1.0"),a=s.stringify||{};for(i in a)r.call(a,i)&&(o=a[i],this[i]=o)}return n.prototype.name=function(s){return this.options.noValidation?s:this.assertLegalName(""+s||"")},n.prototype.text=function(s){return this.options.noValidation?s:this.assertLegalChar(this.textEscape(""+s||""))},n.prototype.cdata=function(s){return this.options.noValidation?s:(s=""+s||"",s=s.replace("]]>","]]]]>"),this.assertLegalChar(s))},n.prototype.comment=function(s){if(this.options.noValidation)return s;if(s=""+s||"",s.match(/--/))throw new Error("Comment text cannot contain double-hypen: "+s);return this.assertLegalChar(s)},n.prototype.raw=function(s){return this.options.noValidation?s:""+s||""},n.prototype.attValue=function(s){return this.options.noValidation?s:this.assertLegalChar(this.attEscape(s=""+s||""))},n.prototype.insTarget=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.insValue=function(s){if(this.options.noValidation)return s;if(s=""+s||"",s.match(/\?>/))throw new Error("Invalid processing instruction value: "+s);return this.assertLegalChar(s)},n.prototype.xmlVersion=function(s){if(this.options.noValidation)return s;if(s=""+s||"",!s.match(/1\.[0-9]+/))throw new Error("Invalid version number: "+s);return s},n.prototype.xmlEncoding=function(s){if(this.options.noValidation)return s;if(s=""+s||"",!s.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+s);return this.assertLegalChar(s)},n.prototype.xmlStandalone=function(s){return this.options.noValidation?s:s?"yes":"no"},n.prototype.dtdPubID=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdSysID=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdElementValue=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdAttType=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdAttDefault=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdEntityValue=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.dtdNData=function(s){return this.options.noValidation?s:this.assertLegalChar(""+s||"")},n.prototype.convertAttKey="@",n.prototype.convertPIKey="?",n.prototype.convertTextKey="#text",n.prototype.convertCDataKey="#cdata",n.prototype.convertCommentKey="#comment",n.prototype.convertRawKey="#raw",n.prototype.assertLegalChar=function(s){var i,a;if(this.options.noValidation)return s;if(i="",this.options.version==="1.0"){if(i=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,a=s.match(i))throw new Error("Invalid character in string: "+s+" at index "+a.index)}else if(this.options.version==="1.1"&&(i=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,a=s.match(i)))throw new Error("Invalid character in string: "+s+" at index "+a.index);return s},n.prototype.assertLegalName=function(s){var i;if(this.options.noValidation)return s;if(this.assertLegalChar(s),i=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!s.match(i))throw new Error("Invalid character in name");return s},n.prototype.textEscape=function(s){var i;return this.options.noValidation?s:(i=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,s.replace(i,"&").replace(//g,">").replace(/\r/g," "))},n.prototype.attEscape=function(s){var i;return this.options.noValidation?s:(i=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,s.replace(i,"&").replace(/{(function(){i5t.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(s5t)});var hxe=S((a5t,o5t)=>{(function(){var e,t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_={}.hasOwnProperty;g=_p().assign,e=Wi(),c=SG(),u=CG(),r=yG(),n=vG(),d=EG(),h=xG(),p=wG(),f=NG(),l=dxe(),s=TG(),i=IG(),a=bG(),o=RG(),t=vB(),o5t.exports=m=function(){function y(A){var E,v,b;A||(A={}),this.options=A,v=A.writer||{};for(E in v)_.call(v,E)&&(b=v[E],this["_"+E]=this[E],this[E]=b)}return y.prototype.filterOptions=function(A){var E,v,b,I,T,x,w,D;return A||(A={}),A=g({},this.options,A),E={writer:this},E.pretty=A.pretty||!1,E.allowEmpty=A.allowEmpty||!1,E.indent=(v=A.indent)!=null?v:" ",E.newline=(b=A.newline)!=null?b:` +`,E.offset=(I=A.offset)!=null?I:0,E.dontPrettyTextNodes=(T=(x=A.dontPrettyTextNodes)!=null?x:A.dontprettytextnodes)!=null?T:0,E.spaceBeforeSlash=(w=(D=A.spaceBeforeSlash)!=null?D:A.spacebeforeslash)!=null?w:"",E.spaceBeforeSlash===!0&&(E.spaceBeforeSlash=" "),E.suppressPrettyCount=0,E.user={},E.state=t.None,E},y.prototype.indent=function(A,E,v){var b;return!E.pretty||E.suppressPrettyCount?"":E.pretty&&(b=(v||0)+E.offset+1,b>0)?new Array(b).join(E.indent):""},y.prototype.endline=function(A,E,v){return!E.pretty||E.suppressPrettyCount?"":E.newline},y.prototype.attribute=function(A,E,v){var b;return this.openAttribute(A,E,v),b=" "+A.name+'="'+A.value+'"',this.closeAttribute(A,E,v),b},y.prototype.cdata=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.comment=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.declaration=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+"",b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.docType=function(A,E,v){var b,I,T,x,w;if(v||(v=0),this.openNode(A,E,v),E.state=t.OpenTag,x=this.indent(A,E,v),x+="0){for(x+=" [",x+=this.endline(A,E,v),E.state=t.InsideTag,w=A.children,I=0,T=w.length;I",x+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),x},y.prototype.element=function(A,E,v){var b,I,T,x,w,D,M,L,U,G,$,K,ee,z;v||(v=0),G=!1,$="",this.openNode(A,E,v),E.state=t.OpenTag,$+=this.indent(A,E,v)+"<"+A.name,K=A.attribs;for(U in K)_.call(K,U)&&(b=K[U],$+=this.attribute(b,E,v));if(T=A.children.length,x=T===0?null:A.children[0],T===0||A.children.every(function(oe){return(oe.type===e.Text||oe.type===e.Raw)&&oe.value===""}))E.allowEmpty?($+=">",E.state=t.CloseTag,$+=""+this.endline(A,E,v)):(E.state=t.CloseTag,$+=E.spaceBeforeSlash+"/>"+this.endline(A,E,v));else if(E.pretty&&T===1&&(x.type===e.Text||x.type===e.Raw)&&x.value!=null)$+=">",E.state=t.InsideTag,E.suppressPrettyCount++,G=!0,$+=this.writeChildNode(x,E,v+1),E.suppressPrettyCount--,G=!1,E.state=t.CloseTag,$+=""+this.endline(A,E,v);else{if(E.dontPrettyTextNodes){for(ee=A.children,w=0,M=ee.length;w"+this.endline(A,E,v),E.state=t.InsideTag,z=A.children,D=0,L=z.length;D",G&&E.suppressPrettyCount--,$+=this.endline(A,E,v),E.state=t.None}return this.closeNode(A,E,v),$},y.prototype.writeChildNode=function(A,E,v){switch(A.type){case e.CData:return this.cdata(A,E,v);case e.Comment:return this.comment(A,E,v);case e.Element:return this.element(A,E,v);case e.Raw:return this.raw(A,E,v);case e.Text:return this.text(A,E,v);case e.ProcessingInstruction:return this.processingInstruction(A,E,v);case e.Dummy:return"";case e.Declaration:return this.declaration(A,E,v);case e.DocType:return this.docType(A,E,v);case e.AttributeDeclaration:return this.dtdAttList(A,E,v);case e.ElementDeclaration:return this.dtdElement(A,E,v);case e.EntityDeclaration:return this.dtdEntity(A,E,v);case e.NotationDeclaration:return this.dtdNotation(A,E,v);default:throw new Error("Unknown XML node type: "+A.constructor.name)}},y.prototype.processingInstruction=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+"",b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.raw=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v),E.state=t.InsideTag,b+=A.value,E.state=t.CloseTag,b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.text=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v),E.state=t.InsideTag,b+=A.value,E.state=t.CloseTag,b+=this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdAttList=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdElement=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdEntity=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.dtdNotation=function(A,E,v){var b;return this.openNode(A,E,v),E.state=t.OpenTag,b=this.indent(A,E,v)+""+this.endline(A,E,v),E.state=t.None,this.closeNode(A,E,v),b},y.prototype.openNode=function(A,E,v){},y.prototype.closeNode=function(A,E,v){},y.prototype.openAttribute=function(A,E,v){},y.prototype.closeAttribute=function(A,E,v){},y}()}).call(a5t)});var OG=S((c5t,u5t)=>{(function(){var e,t,r=function(s,i){for(var a in i)n.call(i,a)&&(s[a]=i[a]);function o(){this.constructor=s}return o.prototype=i.prototype,s.prototype=new o,s.__super__=i.prototype,s},n={}.hasOwnProperty;t=hxe(),u5t.exports=e=function(s){r(i,s);function i(a){i.__super__.constructor.call(this,a)}return i.prototype.document=function(a,o){var c,u,l,d,f;for(o=this.filterOptions(o),d="",f=a.children,u=0,l=f.length;u{(function(){var e,t,r,n,s,i,a,o,c=function(l,d){for(var f in d)u.call(d,f)&&(l[f]=d[f]);function h(){this.constructor=l}return h.prototype=d.prototype,l.prototype=new h,l.__super__=d.prototype,l},u={}.hasOwnProperty;o=_p().isPlainObject,r=uxe(),t=h6t(),s=Yl(),e=Wi(),a=fxe(),i=OG(),d5t.exports=n=function(l){c(d,l);function d(f){d.__super__.constructor.call(this,null),this.name="#document",this.type=e.Document,this.documentURI=null,this.domConfig=new t,f||(f={}),f.writer||(f.writer=new i),this.options=f,this.stringify=new a(f)}return Object.defineProperty(d.prototype,"implementation",{value:new r}),Object.defineProperty(d.prototype,"doctype",{get:function(){var f,h,p,m;for(m=this.children,h=0,p=m.length;h{(function(){var e,t,r,n,s,i,a,o,c,u,l,d,f,h,p,m,g,_,y,A,E,v,b,I,T={}.hasOwnProperty;I=_p(),v=I.isObject,E=I.isFunction,b=I.isPlainObject,A=I.getValue,e=Wi(),d=pxe(),h=EG(),n=yG(),s=vG(),m=xG(),y=wG(),p=NG(),u=SG(),l=CG(),i=TG(),o=bG(),a=IG(),c=RG(),r=lxe(),_=fxe(),g=OG(),t=vB(),h5t.exports=f=function(){function x(w,D,M){var L;this.name="?xml",this.type=e.Document,w||(w={}),L={},w.writer?b(w.writer)&&(L=w.writer,w.writer=new g):w.writer=new g,this.options=w,this.writer=w.writer,this.writerOptions=this.writer.filterOptions(L),this.stringify=new _(w),this.onDataCallback=D||function(){},this.onEndCallback=M||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return x.prototype.createChildNode=function(w){var D,M,L,U,G,$,K,ee;switch(w.type){case e.CData:this.cdata(w.value);break;case e.Comment:this.comment(w.value);break;case e.Element:L={},K=w.attribs;for(M in K)T.call(K,M)&&(D=K[M],L[M]=D.value);this.node(w.name,L);break;case e.Dummy:this.dummy();break;case e.Raw:this.raw(w.value);break;case e.Text:this.text(w.value);break;case e.ProcessingInstruction:this.instruction(w.target,w.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+w.constructor.name)}for(ee=w.children,G=0,$=ee.length;G<$;G++)U=ee[G],this.createChildNode(U),U.type===e.Element&&this.up();return this},x.prototype.dummy=function(){return this},x.prototype.node=function(w,D,M){var L;if(w==null)throw new Error("Missing node name.");if(this.root&&this.currentLevel===-1)throw new Error("Document can only have one root node. "+this.debugInfo(w));return this.openCurrent(),w=A(w),D==null&&(D={}),D=A(D),v(D)||(L=[D,M],M=L[0],D=L[1]),this.currentNode=new h(this,w,D),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,M!=null&&this.text(M),this},x.prototype.element=function(w,D,M){var L,U,G,$,K,ee;if(this.currentNode&&this.currentNode.type===e.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(w)||v(w)||E(w))for($=this.options.noValidation,this.options.noValidation=!0,ee=new d(this.options).element("TEMP_ROOT"),ee.element(w),this.options.noValidation=$,K=ee.children,U=0,G=K.length;U=0;)this.up();return this.onEnd()},x.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},x.prototype.openNode=function(w){var D,M,L,U;if(!w.isOpen){if(!this.root&&this.currentLevel===0&&w.type===e.Element&&(this.root=w),M="",w.type===e.Element){this.writerOptions.state=t.OpenTag,M=this.writer.indent(w,this.writerOptions,this.currentLevel)+"<"+w.name,U=w.attribs;for(L in U)T.call(U,L)&&(D=U[L],M+=this.writer.attribute(D,this.writerOptions,this.currentLevel));M+=(w.children?">":"/>")+this.writer.endline(w,this.writerOptions,this.currentLevel),this.writerOptions.state=t.InsideTag}else this.writerOptions.state=t.OpenTag,M=this.writer.indent(w,this.writerOptions,this.currentLevel)+""),M+=this.writer.endline(w,this.writerOptions,this.currentLevel);return this.onData(M,this.currentLevel),w.isOpen=!0}},x.prototype.closeNode=function(w){var D;if(!w.isClosed)return D="",this.writerOptions.state=t.CloseTag,w.type===e.Element?D=this.writer.indent(w,this.writerOptions,this.currentLevel)+""+this.writer.endline(w,this.writerOptions,this.currentLevel):D=this.writer.indent(w,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(w,this.writerOptions,this.currentLevel),this.writerOptions.state=t.None,this.onData(D,this.currentLevel),w.isClosed=!0},x.prototype.onData=function(w,D){return this.documentStarted=!0,this.onDataCallback(w,D+1)},x.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},x.prototype.debugInfo=function(w){return w==null?"":"node: <"+w+">"},x.prototype.ele=function(){return this.element.apply(this,arguments)},x.prototype.nod=function(w,D,M){return this.node(w,D,M)},x.prototype.txt=function(w){return this.text(w)},x.prototype.dat=function(w){return this.cdata(w)},x.prototype.com=function(w){return this.comment(w)},x.prototype.ins=function(w,D){return this.instruction(w,D)},x.prototype.dec=function(w,D,M){return this.declaration(w,D,M)},x.prototype.dtd=function(w,D,M){return this.doctype(w,D,M)},x.prototype.e=function(w,D,M){return this.element(w,D,M)},x.prototype.n=function(w,D,M){return this.node(w,D,M)},x.prototype.t=function(w){return this.text(w)},x.prototype.d=function(w){return this.cdata(w)},x.prototype.c=function(w){return this.comment(w)},x.prototype.r=function(w){return this.raw(w)},x.prototype.i=function(w,D){return this.instruction(w,D)},x.prototype.att=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},x.prototype.a=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},x.prototype.ent=function(w,D){return this.entity(w,D)},x.prototype.pent=function(w,D){return this.pEntity(w,D)},x.prototype.not=function(w,D){return this.notation(w,D)},x}()}).call(f5t)});var _5t=S((m5t,g5t)=>{(function(){var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;e=Wi(),n=hxe(),t=vB(),g5t.exports=r=function(a){s(o,a);function o(c,u){this.stream=c,o.__super__.constructor.call(this,u)}return o.prototype.endline=function(c,u,l){return c.isLastRootNode&&u.state===t.CloseTag?"":o.__super__.endline.call(this,c,u,l)},o.prototype.document=function(c,u){var l,d,f,h,p,m,g,_,y;for(g=c.children,d=f=0,p=g.length;f0){for(this.stream.write(" ["),this.stream.write(this.endline(c,u,l)),u.state=t.InsideTag,p=c.children,f=0,h=p.length;f"),this.stream.write(this.endline(c,u,l)),u.state=t.None,this.closeNode(c,u,l)},o.prototype.element=function(c,u,l){var d,f,h,p,m,g,_,y,A,E;l||(l=0),this.openNode(c,u,l),u.state=t.OpenTag,this.stream.write(this.indent(c,u,l)+"<"+c.name),A=c.attribs;for(_ in A)i.call(A,_)&&(d=A[_],this.attribute(d,u,l));if(h=c.children.length,p=h===0?null:c.children[0],h===0||c.children.every(function(v){return(v.type===e.Text||v.type===e.Raw)&&v.value===""}))u.allowEmpty?(this.stream.write(">"),u.state=t.CloseTag,this.stream.write("")):(u.state=t.CloseTag,this.stream.write(u.spaceBeforeSlash+"/>"));else if(u.pretty&&h===1&&(p.type===e.Text||p.type===e.Raw)&&p.value!=null)this.stream.write(">"),u.state=t.InsideTag,u.suppressPrettyCount++,y=!0,this.writeChildNode(p,u,l+1),u.suppressPrettyCount--,y=!1,u.state=t.CloseTag,this.stream.write("");else{for(this.stream.write(">"+this.endline(c,u,l)),u.state=t.InsideTag,E=c.children,m=0,g=E.length;m")}return this.stream.write(this.endline(c,u,l)),u.state=t.None,this.closeNode(c,u,l)},o.prototype.processingInstruction=function(c,u,l){return this.stream.write(o.__super__.processingInstruction.call(this,c,u,l))},o.prototype.raw=function(c,u,l){return this.stream.write(o.__super__.raw.call(this,c,u,l))},o.prototype.text=function(c,u,l){return this.stream.write(o.__super__.text.call(this,c,u,l))},o.prototype.dtdAttList=function(c,u,l){return this.stream.write(o.__super__.dtdAttList.call(this,c,u,l))},o.prototype.dtdElement=function(c,u,l){return this.stream.write(o.__super__.dtdElement.call(this,c,u,l))},o.prototype.dtdEntity=function(c,u,l){return this.stream.write(o.__super__.dtdEntity.call(this,c,u,l))},o.prototype.dtdNotation=function(c,u,l){return this.stream.write(o.__super__.dtdNotation.call(this,c,u,l))},o}(n)}).call(m5t)});var E5t=S((A5t,cy)=>{(function(){var e,t,r,n,s,i,a,o,c,u;u=_p(),o=u.assign,c=u.isFunction,r=uxe(),n=pxe(),s=p5t(),a=OG(),i=_5t(),e=Wi(),t=vB(),cy.exports.create=function(l,d,f,h){var p,m;if(l==null)throw new Error("Root element needs a name.");return h=o({},d,f,h),p=new n(h),m=p.element(l),h.headless||(p.declaration(h),(h.pubID!=null||h.sysID!=null)&&p.dtd(h)),m},cy.exports.begin=function(l,d,f){var h;return c(l)&&(h=[l,d],d=h[0],f=h[1],l={}),d?new s(l,d,f):new n(l)},cy.exports.stringWriter=function(l){return new a(l)},cy.exports.streamWriter=function(l,d){return new i(l,d)},cy.exports.implementation=new r,cy.exports.nodeType=e,cy.exports.writerState=t}).call(A5t)});var y5t=S(mxe=>{(function(){"use strict";var e,t,r,n,s,i={}.hasOwnProperty;e=E5t(),t=_G().defaults,n=function(a){return typeof a=="string"&&(a.indexOf("&")>=0||a.indexOf(">")>=0||a.indexOf("<")>=0)},s=function(a){return""},r=function(a){return a.replace("]]>","]]]]>")},mxe.Builder=function(){function a(o){var c,u,l;this.options={},u=t["0.2"];for(c in u)i.call(u,c)&&(l=u[c],this.options[c]=l);for(c in o)i.call(o,c)&&(l=o[c],this.options[c]=l)}return a.prototype.buildObject=function(o){var c,u,l,d,f;return c=this.options.attrkey,u=this.options.charkey,Object.keys(o).length===1&&this.options.rootName===t["0.2"].rootName?(f=Object.keys(o)[0],o=o[f]):f=this.options.rootName,l=function(h){return function(p,m){var g,_,y,A,E,v;if(typeof m!="object")h.options.cdata&&n(m)?p.raw(s(m)):p.txt(m);else if(Array.isArray(m)){for(A in m)if(i.call(m,A)){_=m[A];for(E in _)y=_[E],p=l(p.ele(E),y).up()}}else for(E in m)if(i.call(m,E))if(_=m[E],E===c){if(typeof _=="object")for(g in _)v=_[g],p=p.att(g,v)}else if(E===u)h.options.cdata&&n(_)?p=p.raw(s(_)):p=p.txt(_);else if(Array.isArray(_))for(A in _)i.call(_,A)&&(y=_[A],typeof y=="string"?h.options.cdata&&n(y)?p=p.ele(E).raw(s(y)).up():p=p.ele(E,y).up():p=l(p.ele(E),y).up());else typeof _=="object"?p=l(p.ele(E),_).up():typeof _=="string"&&h.options.cdata&&n(_)?p=p.ele(E).raw(s(_)).up():(_==null&&(_=""),p=p.ele(E,_.toString()).up());return p}}(this),d=e.create(f,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),l(d,o).end(this.options.renderOpts)},a}()}).call(mxe)});var v5t=S(DG=>{(function(e){e.parser=function(B,k){return new r(B,k)},e.SAXParser=r,e.SAXStream=u,e.createStream=c,e.MAX_BUFFER_LENGTH=64*1024;var t=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"];function r(B,k){if(!(this instanceof r))return new r(B,k);var W=this;s(W),W.q=W.c="",W.bufferCheckPosition=e.MAX_BUFFER_LENGTH,W.opt=k||{},W.opt.lowercase=W.opt.lowercase||W.opt.lowercasetags,W.looseCase=W.opt.lowercase?"toLowerCase":"toUpperCase",W.tags=[],W.closed=W.closedRoot=W.sawRoot=!1,W.tag=W.error=null,W.strict=!!B,W.noscript=!!(B||W.opt.noscript),W.state=T.BEGIN,W.strictEntities=W.opt.strictEntities,W.ENTITIES=W.strictEntities?Object.create(e.XML_ENTITIES):Object.create(e.ENTITIES),W.attribList=[],W.opt.xmlns&&(W.ns=Object.create(p)),W.opt.unquotedAttributeValues===void 0&&(W.opt.unquotedAttributeValues=!B),W.trackPosition=W.opt.position!==!1,W.trackPosition&&(W.position=W.line=W.column=0),w(W,"onready")}Object.create||(Object.create=function(B){function k(){}k.prototype=B;var W=new k;return W}),Object.keys||(Object.keys=function(B){var k=[];for(var W in B)B.hasOwnProperty(W)&&k.push(W);return k});function n(B){for(var k=Math.max(e.MAX_BUFFER_LENGTH,10),W=0,P=0,H=t.length;Pk)switch(t[P]){case"textNode":M(B);break;case"cdata":D(B,"oncdata",B.cdata),B.cdata="";break;case"script":D(B,"onscript",B.script),B.script="";break;default:U(B,"Max buffer length exceeded: "+t[P])}W=Math.max(W,j)}var q=e.MAX_BUFFER_LENGTH-W;B.bufferCheckPosition=q+B.position}function s(B){for(var k=0,W=t.length;k"||A(B)}function b(B,k){return B.test(k)}function I(B,k){return!b(B,k)}var T=0;e.STATE={BEGIN:T++,BEGIN_WHITESPACE:T++,TEXT:T++,TEXT_ENTITY:T++,OPEN_WAKA:T++,SGML_DECL:T++,SGML_DECL_QUOTED:T++,DOCTYPE:T++,DOCTYPE_QUOTED:T++,DOCTYPE_DTD:T++,DOCTYPE_DTD_QUOTED:T++,COMMENT_STARTING:T++,COMMENT:T++,COMMENT_ENDING:T++,COMMENT_ENDED:T++,CDATA:T++,CDATA_ENDING:T++,CDATA_ENDING_2:T++,PROC_INST:T++,PROC_INST_BODY:T++,PROC_INST_ENDING:T++,OPEN_TAG:T++,OPEN_TAG_SLASH:T++,ATTRIB:T++,ATTRIB_NAME:T++,ATTRIB_NAME_SAW_WHITE:T++,ATTRIB_VALUE:T++,ATTRIB_VALUE_QUOTED:T++,ATTRIB_VALUE_CLOSED:T++,ATTRIB_VALUE_UNQUOTED:T++,ATTRIB_VALUE_ENTITY_Q:T++,ATTRIB_VALUE_ENTITY_U:T++,CLOSE_TAG:T++,CLOSE_TAG_SAW_WHITE:T++,SCRIPT:T++,SCRIPT_ENDING:T++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach(function(B){var k=e.ENTITIES[B],W=typeof k=="number"?String.fromCharCode(k):k;e.ENTITIES[B]=W});for(var x in e.STATE)e.STATE[e.STATE[x]]=x;T=e.STATE;function w(B,k,W){B[k]&&B[k](W)}function D(B,k,W){B.textNode&&M(B),w(B,k,W)}function M(B){B.textNode=L(B.opt,B.textNode),B.textNode&&w(B,"ontext",B.textNode),B.textNode=""}function L(B,k){return B.trim&&(k=k.trim()),B.normalize&&(k=k.replace(/\s+/g," ")),k}function U(B,k){return M(B),B.trackPosition&&(k+=` +Line: `+B.line+` +Column: `+B.column+` +Char: `+B.c),k=new Error(k),B.error=k,w(B,"onerror",k),B}function G(B){return B.sawRoot&&!B.closedRoot&&$(B,"Unclosed root tag"),B.state!==T.BEGIN&&B.state!==T.BEGIN_WHITESPACE&&B.state!==T.TEXT&&U(B,"Unexpected end"),M(B),B.c="",B.closed=!0,w(B,"onend"),r.call(B,B.strict,B.opt),B}function $(B,k){if(typeof B!="object"||!(B instanceof r))throw new Error("bad call to strictFail");B.strict&&U(B,k)}function K(B){B.strict||(B.tagName=B.tagName[B.looseCase]());var k=B.tags[B.tags.length-1]||B,W=B.tag={name:B.tagName,attributes:{}};B.opt.xmlns&&(W.ns=k.ns),B.attribList.length=0,D(B,"onopentagstart",W)}function ee(B,k){var W=B.indexOf(":"),P=W<0?["",B]:B.split(":"),H=P[0],j=P[1];return k&&B==="xmlns"&&(H="xmlns",j=""),{prefix:H,local:j}}function z(B){if(B.strict||(B.attribName=B.attribName[B.looseCase]()),B.attribList.indexOf(B.attribName)!==-1||B.tag.attributes.hasOwnProperty(B.attribName)){B.attribName=B.attribValue="";return}if(B.opt.xmlns){var k=ee(B.attribName,!0),W=k.prefix,P=k.local;if(W==="xmlns")if(P==="xml"&&B.attribValue!==f)$(B,"xml: prefix must be bound to "+f+` +Actual: `+B.attribValue);else if(P==="xmlns"&&B.attribValue!==h)$(B,"xmlns: prefix must be bound to "+h+` +Actual: `+B.attribValue);else{var H=B.tag,j=B.tags[B.tags.length-1]||B;H.ns===j.ns&&(H.ns=Object.create(j.ns)),H.ns[P]=B.attribValue}B.attribList.push([B.attribName,B.attribValue])}else B.tag.attributes[B.attribName]=B.attribValue,D(B,"onattribute",{name:B.attribName,value:B.attribValue});B.attribName=B.attribValue=""}function oe(B,k){if(B.opt.xmlns){var W=B.tag,P=ee(B.tagName);W.prefix=P.prefix,W.local=P.local,W.uri=W.ns[P.prefix]||"",W.prefix&&!W.uri&&($(B,"Unbound namespace prefix: "+JSON.stringify(B.tagName)),W.uri=P.prefix);var H=B.tags[B.tags.length-1]||B;W.ns&&H.ns!==W.ns&&Object.keys(W.ns).forEach(function(be){D(B,"onopennamespace",{prefix:be,uri:W.ns[be]})});for(var j=0,q=B.attribList.length;j",B.tagName="",B.state=T.SCRIPT;return}D(B,"onscript",B.script),B.script=""}var k=B.tags.length,W=B.tagName;B.strict||(W=W[B.looseCase]());for(var P=W;k--;){var H=B.tags[k];if(H.name!==P)$(B,"Unexpected close tag");else break}if(k<0){$(B,"Unmatched closing tag: "+B.tagName),B.textNode+="",B.state=T.TEXT;return}B.tagName=W;for(var j=B.tags.length;j-- >k;){var q=B.tag=B.tags.pop();B.tagName=B.tag.name,D(B,"onclosetag",B.tagName);var Y={};for(var X in q.ns)Y[X]=q.ns[X];var ae=B.tags[B.tags.length-1]||B;B.opt.xmlns&&q.ns!==ae.ns&&Object.keys(q.ns).forEach(function(ne){var se=q.ns[ne];D(B,"onclosenamespace",{prefix:ne,uri:se})})}k===0&&(B.closedRoot=!0),B.tagName=B.attribValue=B.attribName="",B.attribList.length=0,B.state=T.TEXT}function te(B){var k=B.entity,W=k.toLowerCase(),P,H="";return B.ENTITIES[k]?B.ENTITIES[k]:B.ENTITIES[W]?B.ENTITIES[W]:(k=W,k.charAt(0)==="#"&&(k.charAt(1)==="x"?(k=k.slice(2),P=parseInt(k,16),H=P.toString(16)):(k=k.slice(1),P=parseInt(k,10),H=P.toString(10))),k=k.replace(/^0+/,""),isNaN(P)||H.toLowerCase()!==k||P<0||P>1114111?($(B,"Invalid character entity"),"&"+B.entity+";"):String.fromCodePoint(P))}function Q(B,k){k==="<"?(B.state=T.OPEN_WAKA,B.startTagPosition=B.position):A(k)||($(B,"Non-whitespace before first tag."),B.textNode=k,B.state=T.TEXT)}function Z(B,k){var W="";return k"?(D(k,"onsgmldeclaration",k.sgmlDecl),k.sgmlDecl="",k.state=T.TEXT):(E(P)&&(k.state=T.SGML_DECL_QUOTED),k.sgmlDecl+=P);continue;case T.SGML_DECL_QUOTED:P===k.q&&(k.state=T.SGML_DECL,k.q=""),k.sgmlDecl+=P;continue;case T.DOCTYPE:P===">"?(k.state=T.TEXT,D(k,"ondoctype",k.doctype),k.doctype=!0):(k.doctype+=P,P==="["?k.state=T.DOCTYPE_DTD:E(P)&&(k.state=T.DOCTYPE_QUOTED,k.q=P));continue;case T.DOCTYPE_QUOTED:k.doctype+=P,P===k.q&&(k.q="",k.state=T.DOCTYPE);continue;case T.DOCTYPE_DTD:P==="]"?(k.doctype+=P,k.state=T.DOCTYPE):P==="<"?(k.state=T.OPEN_WAKA,k.startTagPosition=k.position):E(P)?(k.doctype+=P,k.state=T.DOCTYPE_DTD_QUOTED,k.q=P):k.doctype+=P;continue;case T.DOCTYPE_DTD_QUOTED:k.doctype+=P,P===k.q&&(k.state=T.DOCTYPE_DTD,k.q="");continue;case T.COMMENT:P==="-"?k.state=T.COMMENT_ENDING:k.comment+=P;continue;case T.COMMENT_ENDING:P==="-"?(k.state=T.COMMENT_ENDED,k.comment=L(k.opt,k.comment),k.comment&&D(k,"oncomment",k.comment),k.comment=""):(k.comment+="-"+P,k.state=T.COMMENT);continue;case T.COMMENT_ENDED:P!==">"?($(k,"Malformed comment"),k.comment+="--"+P,k.state=T.COMMENT):k.doctype&&k.doctype!==!0?k.state=T.DOCTYPE_DTD:k.state=T.TEXT;continue;case T.CDATA:for(var j=W-1;P&&P!=="]";)P=Z(B,W++),P&&k.trackPosition&&(k.position++,P===` +`?(k.line++,k.column=0):k.column++);k.cdata+=B.substring(j,W-1),P==="]"&&(k.state=T.CDATA_ENDING);continue;case T.CDATA_ENDING:P==="]"?k.state=T.CDATA_ENDING_2:(k.cdata+="]"+P,k.state=T.CDATA);continue;case T.CDATA_ENDING_2:P===">"?(k.cdata&&D(k,"oncdata",k.cdata),D(k,"onclosecdata"),k.cdata="",k.state=T.TEXT):P==="]"?k.cdata+="]":(k.cdata+="]]"+P,k.state=T.CDATA);continue;case T.PROC_INST:P==="?"?k.state=T.PROC_INST_ENDING:A(P)?k.state=T.PROC_INST_BODY:k.procInstName+=P;continue;case T.PROC_INST_BODY:if(!k.procInstBody&&A(P))continue;P==="?"?k.state=T.PROC_INST_ENDING:k.procInstBody+=P;continue;case T.PROC_INST_ENDING:P===">"?(D(k,"onprocessinginstruction",{name:k.procInstName,body:k.procInstBody}),k.procInstName=k.procInstBody="",k.state=T.TEXT):(k.procInstBody+="?"+P,k.state=T.PROC_INST_BODY);continue;case T.OPEN_TAG:b(g,P)?k.tagName+=P:(K(k),P===">"?oe(k):P==="/"?k.state=T.OPEN_TAG_SLASH:(A(P)||$(k,"Invalid character in tag name"),k.state=T.ATTRIB));continue;case T.OPEN_TAG_SLASH:P===">"?(oe(k,!0),le(k)):($(k,"Forward-slash in opening tag not followed by >"),k.state=T.ATTRIB);continue;case T.ATTRIB:if(A(P))continue;P===">"?oe(k):P==="/"?k.state=T.OPEN_TAG_SLASH:b(m,P)?(k.attribName=P,k.attribValue="",k.state=T.ATTRIB_NAME):$(k,"Invalid attribute name");continue;case T.ATTRIB_NAME:P==="="?k.state=T.ATTRIB_VALUE:P===">"?($(k,"Attribute without value"),k.attribValue=k.attribName,z(k),oe(k)):A(P)?k.state=T.ATTRIB_NAME_SAW_WHITE:b(g,P)?k.attribName+=P:$(k,"Invalid attribute name");continue;case T.ATTRIB_NAME_SAW_WHITE:if(P==="=")k.state=T.ATTRIB_VALUE;else{if(A(P))continue;$(k,"Attribute without value"),k.tag.attributes[k.attribName]="",k.attribValue="",D(k,"onattribute",{name:k.attribName,value:""}),k.attribName="",P===">"?oe(k):b(m,P)?(k.attribName=P,k.state=T.ATTRIB_NAME):($(k,"Invalid attribute name"),k.state=T.ATTRIB)}continue;case T.ATTRIB_VALUE:if(A(P))continue;E(P)?(k.q=P,k.state=T.ATTRIB_VALUE_QUOTED):(k.opt.unquotedAttributeValues||U(k,"Unquoted attribute value"),k.state=T.ATTRIB_VALUE_UNQUOTED,k.attribValue=P);continue;case T.ATTRIB_VALUE_QUOTED:if(P!==k.q){P==="&"?k.state=T.ATTRIB_VALUE_ENTITY_Q:k.attribValue+=P;continue}z(k),k.q="",k.state=T.ATTRIB_VALUE_CLOSED;continue;case T.ATTRIB_VALUE_CLOSED:A(P)?k.state=T.ATTRIB:P===">"?oe(k):P==="/"?k.state=T.OPEN_TAG_SLASH:b(m,P)?($(k,"No whitespace between attributes"),k.attribName=P,k.attribValue="",k.state=T.ATTRIB_NAME):$(k,"Invalid attribute name");continue;case T.ATTRIB_VALUE_UNQUOTED:if(!v(P)){P==="&"?k.state=T.ATTRIB_VALUE_ENTITY_U:k.attribValue+=P;continue}z(k),P===">"?oe(k):k.state=T.ATTRIB;continue;case T.CLOSE_TAG:if(k.tagName)P===">"?le(k):b(g,P)?k.tagName+=P:k.script?(k.script+=""?le(k):$(k,"Invalid characters in closing tag");continue;case T.TEXT_ENTITY:case T.ATTRIB_VALUE_ENTITY_Q:case T.ATTRIB_VALUE_ENTITY_U:var q,Y;switch(k.state){case T.TEXT_ENTITY:q=T.TEXT,Y="textNode";break;case T.ATTRIB_VALUE_ENTITY_Q:q=T.ATTRIB_VALUE_QUOTED,Y="attribValue";break;case T.ATTRIB_VALUE_ENTITY_U:q=T.ATTRIB_VALUE_UNQUOTED,Y="attribValue";break}if(P===";"){var X=te(k);k.opt.unparsedEntities&&!Object.values(e.XML_ENTITIES).includes(X)?(k.entity="",k.state=q,k.write(X)):(k[Y]+=X,k.entity="",k.state=q)}else b(k.entity.length?y:_,P)?k.entity+=P:($(k,"Invalid character in entity name"),k[Y]+="&"+k.entity+P,k.entity="",k.state=q);continue;default:throw new Error(k,"Unknown state: "+k.state)}return k.position>=k.bufferCheckPosition&&n(k),k}String.fromCodePoint||function(){var B=String.fromCharCode,k=Math.floor,W=function(){var P=16384,H=[],j,q,Y=-1,X=arguments.length;if(!X)return"";for(var ae="";++Y1114111||k(ne)!==ne)throw RangeError("Invalid code point: "+ne);ne<=65535?H.push(ne):(ne-=65536,j=(ne>>10)+55296,q=ne%1024+56320,H.push(j,q)),(Y+1===X||H.length>P)&&(ae+=B.apply(null,H),H.length=0)}return ae};Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:W,configurable:!0,writable:!0}):String.fromCodePoint=W}()})(typeof DG>"u"?DG.sax={}:DG)});var S5t=S(gxe=>{(function(){"use strict";gxe.stripBOM=function(e){return e[0]==="\uFEFF"?e.substring(1):e}}).call(gxe)});var _xe=S(db=>{(function(){"use strict";var e;e=new RegExp(/(?!xmlns)^.*:/),db.normalize=function(t){return t.toLowerCase()},db.firstCharLowerCase=function(t){return t.charAt(0).toLowerCase()+t.slice(1)},db.stripPrefix=function(t){return t.replace(e,"")},db.parseNumbers=function(t){return isNaN(t)||(t=t%1===0?parseInt(t,10):parseFloat(t)),t},db.parseBooleans=function(t){return/^(?:true|false)$/i.test(t)&&(t=t.toLowerCase()==="true"),t}}).call(db)});var T5t=S(Zg=>{(function(){"use strict";var e,t,r,n,s,i,a,o,c,u=function(f,h){return function(){return f.apply(h,arguments)}},l=function(f,h){for(var p in h)d.call(h,p)&&(f[p]=h[p]);function m(){this.constructor=f}return m.prototype=h.prototype,f.prototype=new m,f.__super__=h.prototype,f},d={}.hasOwnProperty;o=v5t(),n=require("events"),e=S5t(),a=_xe(),c=require("timers").setImmediate,t=_G().defaults,s=function(f){return typeof f=="object"&&f!=null&&Object.keys(f).length===0},i=function(f,h,p){var m,g,_;for(m=0,g=f.length;m0&&(b[y.options.childkey]=T),T=b;else if(D){D[y.options.childkey]=D[y.options.childkey]||[],x={};for(v in T)d.call(T,v)&&r(x,v,T[v]);D[y.options.childkey].push(x),delete T["#name"],Object.keys(T).length===1&&m in T&&!y.EXPLICIT_CHARKEY&&(T=T[m])}}return _.length>0?y.assignOrPush(D,I,T):(y.options.explicitRoot&&(w=T,T={},r(T,I,w)),y.resultObject=T,y.saxParser.ended=!0,y.emit("end",y.resultObject))}}(this),g=function(y){return function(A){var E,v;if(v=_[_.length-1],v)return v[m]+=A,y.options.explicitChildren&&y.options.preserveChildrenOrder&&y.options.charsAsChildren&&(y.options.includeWhiteChars||A.replace(/\\n/g,"").trim()!=="")&&(v[y.options.childkey]=v[y.options.childkey]||[],E={"#name":"__text__"},E[m]=A,y.options.normalize&&(E[m]=E[m].replace(/\s{2,}/g," ").trim()),v[y.options.childkey].push(E)),v}}(this),this.saxParser.ontext=g,this.saxParser.oncdata=function(y){return function(A){var E;if(E=g(A),E)return E.cdata=!0}}(this)},h.prototype.parseString=function(p,m){var g;m!=null&&typeof m=="function"&&(this.on("end",function(_){return this.reset(),m(null,_)}),this.on("error",function(_){return this.reset(),m(_)}));try{return p=p.toString(),p.trim()===""?(this.emit("end",null),!0):(p=e.stripBOM(p),this.options.async?(this.remaining=p,c(this.processAsync),this.saxParser):this.saxParser.write(p).close())}catch(_){if(g=_,this.saxParser.errThrown||this.saxParser.ended){if(this.saxParser.ended)throw g}else return this.emit("error",g),this.saxParser.errThrown=!0}},h.prototype.parseStringPromise=function(p){return new Promise(function(m){return function(g,_){return m.parseString(p,function(y,A){return y?_(y):g(A)})}}(this))},h}(n),Zg.parseString=function(f,h,p){var m,g,_;return p!=null?(typeof p=="function"&&(m=p),typeof h=="object"&&(g=h)):(typeof h=="function"&&(m=h),g={}),_=new Zg.Parser(g),_.parseString(f,m)},Zg.parseStringPromise=function(f,h){var p,m;return typeof h=="object"&&(p=h),m=new Zg.Parser(p),m.parseStringPromise(f)}}).call(Zg)});var b5t=S(e_=>{(function(){"use strict";var e,t,r,n,s=function(a,o){for(var c in o)i.call(o,c)&&(a[c]=o[c]);function u(){this.constructor=a}return u.prototype=o.prototype,a.prototype=new u,a.__super__=o.prototype,a},i={}.hasOwnProperty;t=_G(),e=y5t(),r=T5t(),n=_xe(),e_.defaults=t.defaults,e_.processors=n,e_.ValidationError=function(a){s(o,a);function o(c){this.message=c}return o}(Error),e_.Builder=e.Builder,e_.Parser=r.Parser,e_.parseString=r.parseString,e_.parseStringPromise=r.parseStringPromise}).call(e_)});function M5t(e){return e===400||e===401||e===403}function k5t(e,t=300){if(e==null)return"empty";if(typeof e=="string")return e.slice(0,t).replace(/\s+/g," ");try{return JSON.stringify(e).slice(0,t)}catch{return"[unserializable]"}}function C5t(e,t){let r=k5t(e,500),n=r.toLowerCase(),s=/invalidsessionkey|cookieusersession is null or invalid|usersessionbo is null/.test(n),i=/check ip error|cookiesip=|curip=/.test(n),a=/permissiondenied|file type error or not support|forbidden|access denied|无权限/.test(n),o=M5t(t)||s||i||a,c="unknown",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=o,d="refresh_share_cookie";return i?(c="ip_mismatch",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u7F51\u7EDC\u51FA\u53E3\u53D8\u5316\u5BFC\u81F4\u4F1A\u8BDD\u5931\u6548\uFF0C\u5DF2\u5C1D\u8BD5\u5207\u6362 IPv4 \u4F1A\u8BDD",l=!0,d="force_share_login_ipv4_once"):s?(c="invalid_session",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5DF2\u5931\u6548\uFF0C\u5DF2\u5C1D\u8BD5\u81EA\u52A8\u5237\u65B0",l=!0,d="refresh_share_cookie"):a?(c="access_denied",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u5206\u4EAB\u4F1A\u8BDD\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=!1,d="no_retry"):o&&(c="auth",u="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=!0,d="refresh_share_cookie"),{authFailure:o,category:c,detail:r,message:u,retryable:l,retryAdvice:d}}function tpn(e){switch(e){case"ip_mismatch":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u7F51\u7EDC\u51FA\u53E3\u53D8\u5316\u5BFC\u81F4\u4F1A\u8BDD\u5931\u6548\uFF0C\u5DF2\u81EA\u52A8\u91CD\u5EFA IPv4 \u4F1A\u8BDD\uFF1B\u82E5\u4ECD\u5931\u8D25\u8BF7\u7A0D\u540E\u91CD\u8BD5";case"invalid_session":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u6548\uFF0C\u5DF2\u81EA\u52A8\u91CD\u8BD5\uFF1B\u82E5\u4ECD\u5931\u8D25\u8BF7\u7A0D\u540E\u518D\u8BD5";case"access_denied":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u5206\u4EAB\u4F1A\u8BDD\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5";default:return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"}}function Ap(e={}){let t={...e||{}};return t.httpAgent=t.httpAgent||rpn,t.httpsAgent=t.httpsAgent||npn,t.family=4,t}function fb(e){return Array.isArray(e)?e.map(t=>String(t||"").split(";")[0].trim()).filter(Boolean):[]}function Yx(e){let t=new Map;return e.forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&t.set(s,`${s}=${i}`)}),Array.from(t.values())}function x5t(e,t={}){return e?.toUrl||e?.data?.toUrl||e?.returnUrl||e?.data?.returnUrl||e?.redirectUrl||e?.data?.redirectUrl||t?.location||""}function Axe(e=""){return/\.cas$/i.test(String(e||""))}function TB(e=""){return String(e||"").replace(/\.cas$/i,"")}function Txe(e=""){let t=String(e||"").trim();if(!t||/[\\/]/.test(t))throw new Error(`\u65E0\u6548\u7684\u6E90\u6587\u4EF6\u540D: ${e}`);return t}function spn(e={}){let t=JSON.stringify(e||{});return vxe+Buffer.from(t,"utf8").toString("base64url")}function B5t(e=""){let t=String(e||"");if(!t.startsWith(vxe))return null;try{let r=Buffer.from(t.slice(vxe.length),"base64url").toString("utf8"),n=JSON.parse(r);return n&&typeof n=="object"?n:null}catch{return null}}function U5t(e=""){return!!B5t(e)}function ipn(e=""){let t=Txe(e||`video-${Date.now()}.cas`),r=t.lastIndexOf("."),n=`${Date.now()}_${Math.floor(Math.random()*1e5)}`;return r<=0?`${t}.${n}`:`${t.slice(0,r)}.${n}${t.slice(r)}`}function apn(){return mn.TEMP_DIR_NAME}function Qx(e){return e==null?"":typeof e=="string"?e.trim():String(typeof e=="number"||typeof e=="boolean"?e:typeof e=="object"?e.code||e.errorCode||e.message||e.errorMsg||JSON.stringify(e):e)}function Exe(e){if(!e)return"";let t=typeof e=="string"?MG(e):e;if(!t||typeof t!="object")return"";let r=t.res_code;return typeof r=="number"&&r!==0?`res_code: ${r} ${Qx(t.res_message)}`.trim():typeof r=="string"&&r?`res_code: ${r} ${Qx(t.res_message)}`.trim():t.code&&t.code!=="SUCCESS"?`code: ${t.code} ${Qx(t.msg||t.message)}`.trim():t.errorCode?`err_code: ${t.errorCode} ${Qx(t.errorMsg)}`.trim():t.error?`error: ${Qx(t.error)} ${Qx(t.message)}`.trim():""}function MG(e=""){try{return JSON.parse(String(e||""))}catch{return null}}function yxe(){return{clientType:mn.PC,version:mn.VERSION,channelId:mn.CHANNEL_ID,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function opn(){return new Date().toUTCString()}function cpn(){return Date.now()}function PG(e="",t){return String(e||"").match(t)?.[1]||""}function uy(e={}){if(!e||typeof e!="object")return{};for(let t of upn)if(e[t]&&typeof e[t]=="object")return e[t];return e}function bB(e){return Array.isArray(e)?e:e?[e]:[]}function Sxe(e={},t={}){let r=uy(e);return{...t,accessToken:String(r?.accessToken||t?.accessToken||""),refreshToken:String(r?.refreshToken||t?.refreshToken||""),sessionKey:String(r?.sessionKey||t?.sessionKey||""),sessionSecret:String(r?.sessionSecret||t?.sessionSecret||""),familySessionKey:String(r?.familySessionKey||t?.familySessionKey||""),familySessionSecret:String(r?.familySessionSecret||t?.familySessionSecret||""),loginName:String(r?.loginName||t?.loginName||"")}}async function w5t(e){let t=await F5t(e);return Sxe(t)}async function F5t(e){if(e&&typeof e=="object")return e;let t=String(e||"").trim();if(!t)return{};if(t.startsWith("{")||t.startsWith("["))return MG(t)||{};if(!t.startsWith("<"))return{};try{return await(0,L5t.parseStringPromise)(t,{explicitArray:!1,trim:!0})||{}}catch{return{}}}function lpn(e,t,r,n,s,i=""){let a=new URL(n).pathname,o=pb.default.createHmac("sha1",e),c=`SessionKey=${t}&Operate=${r}&RequestURI=${a}&Date=${s}`;return i&&(c+=`¶ms=${i}`),o.update(c),o.digest("hex").toUpperCase()}function dpn(e,t){let r=e.length%t,n=r===0?t:t-r;return Buffer.concat([e,Buffer.alloc(n,n)])}function fpn(e,t){let r=Buffer.from(String(t||"").slice(0,16),"utf8"),n=pb.default.createCipheriv("aes-128-ecb",r,null);n.setAutoPadding(!1);let s=dpn(Buffer.from(String(e||""),"utf8"),16);return Buffer.concat([n.update(s),n.final()]).toString("hex").toUpperCase()}function hpn(e={},t=""){let n=Object.entries(e||{}).filter(([,s])=>s!=null&&s!=="").sort(([s],[i])=>s.localeCompare(i)).map(([s,i])=>`${s}=${i}`).join("&");return n?fpn(n,t):""}function ppn(e){return e>10485760*2*999?Math.max(Math.ceil(e/1999/10485760),5)*10485760:e>10485760*999?10485760*2:10485760}function mpn(e){let t=Buffer.from(e||[]).toString("utf8").replace(/^\uFEFF/,"").trim();if(!t)throw new Error("\u7A7A\u7684 .cas \u6587\u4EF6");let r=null;if(t.startsWith("{")&&t.endsWith("}")&&(r=MG(t)),!r){let s=Buffer.from(t,"base64").toString("utf8");r=MG(s)}if(!r||typeof r!="object")throw new Error("\u89E3\u6790 .cas \u5931\u8D25");let n={name:Txe(r.name||""),size:Number(r.size||0),md5:String(r.md5||"").trim(),sliceMd5:String(r.sliceMd5||r.slice_md5||"").trim(),createTime:String(r.create_time||"").trim()};if(!n.md5||!n.sliceMd5||!Number.isFinite(n.size)||n.size<0)throw new Error("\u65E0\u6548\u7684 .cas \u5143\u6570\u636E");return n}function N5t(e=""){return String(e||"").trim().toUpperCase()}var O5t,D5t,hb,P5t,L5t,pb,ly,dc,mn,vxe,SB,to,epn,lc,I5t,R5t,LG,mb,rpn,npn,upn,Wx,dy,bxe=ie(()=>{vr();O5t=Ne(require("http"),1),D5t=Ne(require("https"),1),hb=Ne(cx(),1),P5t=Ne(t6t(),1),L5t=Ne(b5t(),1),pb=Ne(require("crypto"),1);la();Jc();jd();Zc();yi();ql();dc={},mn={WEB_URL:"https://cloud.189.cn",API_URL:"https://api.cloud.189.cn",UPLOAD_URL:"https://upload.cloud.189.cn",PC:"TELEPC",VERSION:"6.2",CHANNEL_ID:"web_cloud.189.cn",APP_ID:"8025431004",ACCOUNT_TYPE:"02",LOGIN_CLIENT_TYPE:"10020",RETURN_URL:"https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",ROOT_FOLDER_ID:"-11",TEMP_DIR_NAME:"CatVodOpen",TEMP_DIR_PREFIX:"CatVodOpen-cas-",DELETE_DELAY_MS:2*60*60*1e3},vxe="!tycas1!",SB="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",to={legacy:"cloud_cookie",private:"cloud_cookie_private",share:"cloud_cookie_share"},epn=2,lc={set(e,t){if(dc[e]=t,!ly)return Promise.resolve();let r=ly.push(`/tyi/${e}`,t);return r&&typeof r.catch=="function"&&r.catch(n=>console.warn(`[cloud] db.push /tyi/${e} \u5931\u8D25:`,n.message)),r},get(e){return dc[e]}},I5t=(e,t={})=>{let r=t.method||"GET",n=t.headers||{};return ye({method:r,url:e,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},R5t=(0,P5t.default)({storeAsString:!0}),LG=class{publicKey=null;setPublicKey(t){this.publicKey=t}encrypt(t){let r=Buffer.from(t,"utf8");return pb.default.publicEncrypt({key:this.publicKey,padding:pb.default.constants.RSA_PKCS1_PADDING},r).toString("base64")}},mb=async e=>{ly=e.server.db,dc=await ly.getObjectDefault("/tyi",{});let t=String(e?.server?.config?.tianyi?.username||""),r=String(e?.server?.config?.tianyi?.password||"");!dc.cloud_account&&t&&(dc.cloud_account=t,await ly.push("/tyi/cloud_account",t)),!dc.cloud_password&&r&&(dc.cloud_password=r,await ly.push("/tyi/cloud_password",r));let n=String(dc[to.legacy]||"").trim(),s=String(dc[to.private]||"").trim(),i=String(dc[to.share]||"").trim();n&&(s||(dc[to.private]=n,await ly.push(`/tyi/${to.private}`,n)),i||(dc[to.share]=n,await ly.push(`/tyi/${to.share}`,n))),console.log(`[Tianyi] initCloud account=${dc.cloud_account?"set":"empty"} password=${dc.cloud_password?"set":"empty"} privateCookie=${String(dc[to.private]||n).trim()?"set":"empty"} shareCookie=${String(dc[to.share]||n).trim()?"set":"empty"}`)};rpn=new O5t.default.Agent({keepAlive:!0,family:4}),npn=new D5t.default.Agent({keepAlive:!0,family:4});upn=["data","userSession","folder","listFiles","fileDownload","commitMultiUploadFile","initMultiUpload","TaskIdResp","taskState","batchTask"];Wx=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this._privateCookie=String(lc.get(to.private)||lc.get(to.legacy)||"").trim(),this._shareCookie=String(lc.get(to.share)||"").trim(),this._shareAuthRetryCount=0,this._shareAuthLastError=null}get account(){return lc.get("cloud_account")}get password(){return lc.get("cloud_password")}get cookie(){return this.privateCookie}set cookie(t){this.privateCookie=t}get privateCookie(){return String(this._privateCookie||lc.get(to.private)||lc.get(to.legacy)||"").trim()}set privateCookie(t){this._privateCookie=String(t||"").trim(),lc.set(to.private,this._privateCookie),lc.set(to.legacy,this._privateCookie)}get shareCookie(){return String(this._shareCookie||lc.get(to.share)||"").trim()}set shareCookie(t){this._shareCookie=String(t||"").trim(),lc.set(to.share,this._shareCookie)}get tokenInfo(){return lc.get("cloud_token_info")||null}set tokenInfo(t){t&&typeof t=="object"?lc.set("cloud_token_info",t):lc.set("cloud_token_info",null)}get tempDirId(){return lc.get("cloud_temp_dir_id")||""}set tempDirId(t){lc.set("cloud_temp_dir_id",String(t||""))}hasCookie(){return this.hasPrivateCookie()}hasPrivateCookie(){return!!String(this.privateCookie||"").trim()}hasShareCookie(){return!!String(this.shareCookie||"").trim()}hasTokenInfo(){let t=this.tokenInfo;return!!(t?.sessionKey&&t?.sessionSecret)}async ensureLogin(){if(!this.account||!this.password)throw new Error("\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\u4E3A\u7A7A\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u586B\u5199");(!this.hasPrivateCookie()||!this.hasTokenInfo())&&await this.login(this.account,this.password)}clearAuthState(){this.clearPrivateAuthState()}clearPrivateAuthState(){this.privateCookie="",this.tokenInfo=null}clearShareAuthState(){this.shareCookie=""}resetShareAuthRetryState(){this._shareAuthRetryCount=0,this._shareAuthLastError=null}rememberShareAuthError(t){this._shareAuthLastError=t||null}flushShareAuthFailure(t={}){let r=t?.silentAuthFailure===!0,n=this._shareAuthLastError;this.resetShareAuthRetryState(),!(r||!n)&&tn.toast(tpn(n.authCategory),{duration:5})}buildShareAuthError(t,r,n="\u5929\u7FFC\u64AD\u653E\u9274\u6743\u5931\u8D25"){let s=C5t(r,t),i=new Error(`${n} status=${t||"unknown"} body=${s.detail}`);return i.isAuthFailure=s.authFailure,i.authCategory=s.category,i.userMessage=s.message,i.response={status:t,data:r},i}getSessionHeader(t,r,n="",s=!1){let i=this.tokenInfo;if(!i)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD");let a=s?i.familySessionKey:i.sessionKey,o=s?i.familySessionSecret:i.sessionSecret;if(!a||!o)throw new Error("\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u4E0D\u5B8C\u6574");let c=opn();return{Date:c,SessionKey:a,"X-Request-ID":pb.default.randomUUID(),Signature:lpn(o,a,r,t,c,n)}}encryptPrivateParams(t={},r=!1){let n=this.tokenInfo;if(!n)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD");let s=r?n.familySessionSecret:n.sessionSecret;if(!s)throw new Error("\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u5BC6\u94A5\u7F3A\u5931");return hpn(t,s)}async refreshSession(){let t=this.tokenInfo;if(!t?.accessToken)throw new Error("\u7F3A\u5C11 accessToken\uFF0C\u65E0\u6CD5\u5237\u65B0\u4F1A\u8BDD");let r=await ye.get(`${mn.API_URL}/getSessionForPC.action`,{params:{...yxe(),appId:mn.APP_ID,accessToken:t.accessToken},headers:{"User-Agent":SB,"X-Request-ID":pb.default.randomUUID(),...this.hasPrivateCookie()?{Cookie:String(this.privateCookie||"").trim()}:{}},validateStatus:null}),n=Exe(r.data);if(n)throw new Error(n);let s=Sxe(await w5t(r.data),t);if(!s.sessionKey||!s.sessionSecret)throw new Error("\u5237\u65B0\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u5931\u8D25\uFF1A\u672A\u8FD4\u56DE sessionKey");return this.tokenInfo=s,s}async requestPrivateApi(t,r="GET",n={},{isFamily:s=!1,form:i=null,encryptedParams:a=null}={}){await this.ensureLogin();let o=async()=>{let c=a?this.encryptPrivateParams(a,s):"",u={...yxe(),...Object.fromEntries(Object.entries(n||{}).filter(([,m])=>m!=null&&m!==""))};c&&(u.params=c);let l={"User-Agent":SB,Referer:mn.WEB_URL,...this.getSessionHeader(t,r,c,s)},d={method:r,url:t,params:u,headers:l,validateStatus:null};i&&(d.headers["Content-Type"]="application/x-www-form-urlencoded",d.data=hb.default.stringify(Object.fromEntries(Object.entries(i).filter(([,m])=>m!=null&&m!==""))));let f=await ye(d),h=await F5t(f.data),p=Exe(h);if(typeof f.data=="string"&&/InvalidSessionKey|userSessionBO is null/.test(f.data)){let m=new Error("InvalidSessionKey");throw m.code="INVALID_SESSION_KEY",m}if(p){let m=new Error(p);throw/UserInvalidOpenToken|InvalidSessionKey/i.test(p)&&(m.code="INVALID_SESSION_KEY"),m}return h};try{return await o()}catch(c){if(c?.code==="INVALID_SESSION_KEY")return await this.refreshSession(),await o();throw c}}async createTempDir(t=!1){let r={id:mn.ROOT_FOLDER_ID,name:"root"};try{await this.makeDir(r,mn.TEMP_DIR_NAME)}catch{}let s=(await this.getPrivateFiles(mn.ROOT_FOLDER_ID,!1,"filename","asc",50)).find(i=>i.isFolder&&i.name===mn.TEMP_DIR_NAME);if(!s?.id)throw new Error("\u521B\u5EFA\u5929\u7FFC\u4E34\u65F6\u76EE\u5F55\u5931\u8D25");return this.tempDirId=s.id,t&&await this.clearTempDir(s.id),s.id}async ensureTempDir(t=!1){await this.ensureLogin();let r=this.tempDirId||await this.createTempDir(t);return console.log(`[Tianyi][temp] ensureTempDir dirId=${r} clean=${t?1:0}`),t&&await this.clearTempDir(r),r}async clearTempDir(t=""){let r=String(t||this.tempDirId||"");if(!r)return;let n=await this.getPrivateFiles(r,!1,"filename","asc",200);if(console.log(`[Tianyi][temp] \u6E05\u7406\u4E34\u65F6\u76EE\u5F55 dirId=${r} fileCount=${n.length}`),!!n.length){for(let s of n)console.log(`[Tianyi][temp] \u5220\u9664\u4E34\u65F6\u6587\u4EF6 id=${s.id} name=${s.name} isFolder=${s.isFolder?1:0} size=${s.size||0}`),await this.deletePrivateFile(s.id,s.name,s.isFolder,{wait:!0});for(let s=1;s<=10;s++){let i=await this.getPrivateFiles(r,!1,"filename","asc",200);if(console.log(`[Tianyi][temp] \u6E05\u7406\u540E\u5269\u4F59 dirId=${r} remain=${i.length} attempt=${s}`),!i.length)return;await new Promise(a=>setTimeout(a,500*s))}}}async makeDir(t,r){let n=await this.requestPrivateApi(`${mn.API_URL}/createFolder.action`,"POST",{folderName:r,relativePath:"",parentFolderId:t.id}),s=n?.folder||n;return{id:String(s?.id||""),name:r,isFolder:!0}}async getPrivateFiles(t,r=!1,n="filename",s="asc",i=1e3){let a=[];for(let o=1;;o++){let c=`${mn.API_URL}${r?"/family/file":""}/listFiles.action`,u=await this.requestPrivateApi(c,"GET",{folderId:t,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(o),pageSize:String(i),recursive:r?void 0:"0",orderBy:n,descending:s==="desc"?"true":"false"},{isFamily:r}),l=uy(u),d=l?.fileListAO||l?.fileList||l,f=d?.folderList||d?.folder||[],h=d?.fileList||d?.file||[],p=bB(f),m=bB(h),g=p.length>0||m.length>0,_=Number(d?.count||(g?p.length+m.length:0)||0);if(!g&&!_||(p.forEach(y=>{a.push({id:String(y.id||""),name:String(y.name||""),isFolder:!0})}),m.forEach(y=>{a.push({id:String(y.id||""),name:String(y.name||""),size:Number(y.size||0),md5:String(y.md5||""),isFolder:!1})}),!g||_!i.isFolder&&i.name===r)||null}async findPrivateFileByPredicate(t,r,n=!1,s="filename",i="asc",a=200){return(await this.getPrivateFiles(t,n,s,i,a)).find(c=>{try{return!!r(c)}catch{return!1}})||null}async createBatchTask(t,r,n,s={},i=[]){let a={type:t,taskInfos:JSON.stringify(i),...s};n&&(a.targetFolderId=n),r&&(a.familyId=r);let o=await this.requestPrivateApi(`${mn.API_URL}/batch/createBatchTask.action`,"POST",{},{isFamily:!!r,form:a}),c=uy(o);return{...c,taskId:String(c?.taskId||"")}}async checkBatchTask(t,r){let n=await this.requestPrivateApi(`${mn.API_URL}/batch/checkBatchTask.action`,"POST",{},{form:{type:t,taskId:r}}),s=uy(n),i=s?.TaskResultResp||s?.taskResultResp||s;return{...s,TaskResultResp:i,taskId:String(i?.taskId||s?.taskId||r||""),taskStatus:Number(i?.taskStatus||s?.taskStatus||0),successedCount:Number(i?.successedCount||s?.successedCount||0),failedCount:Number(i?.failedCount||s?.failedCount||0),skipCount:Number(i?.skipCount||s?.skipCount||0),errorCode:String(i?.errorCode||s?.errorCode||"")}}async getConflictTaskInfo(t,r){let n=await this.requestPrivateApi(`${mn.API_URL}/batch/getConflictTaskInfo.action`,"POST",{},{form:{type:t,taskId:r}});return uy(n)||{}}async manageBatchTask(t,r,n,s=[]){await this.requestPrivateApi(`${mn.API_URL}/batch/manageBatchTask.action`,"POST",{},{form:{type:t,taskId:r,targetFolderId:String(n||""),taskInfos:JSON.stringify(s||[])}})}async waitBatchTask(t,r,n=1e3,s=0){let i=0;for(;;){i+=1;let a=await this.checkBatchTask(t,r);if(console.log(`[Tianyi][task] type=${t} taskId=${r} poll=${i} status=${Number(a?.taskStatus||0)} failed=${Number(a?.failedCount||0)} errorCode=${a?.errorCode||""}`),Number(a?.taskStatus)===2){let o=new Error("there is a conflict with the target object");throw o.code="TASK_CONFLICT",o}if(Number(a?.taskStatus)===4){if(Number(a?.failedCount||0)>0){let o=new Error(a?.errorCode||`batch task failed type=${t} taskId=${r}`);throw o.code=a?.errorCode||"TASK_FAILED",o.taskState=a,o}return}if(s>0&&i>=s){let o=new Error(`batch task timeout type=${t} taskId=${r} status=${Number(a?.taskStatus||0)}`);throw o.code="TASK_TIMEOUT",o.taskStatus=Number(a?.taskStatus||0),o}await new Promise(o=>setTimeout(o,n))}}async ensureCasTempDir(t=!1){await this.ensureLogin();let r={id:mn.ROOT_FOLDER_ID,name:"root"},n=apn();try{await this.makeDir(r,n)}catch{}let i=(await this.getPrivateFiles(mn.ROOT_FOLDER_ID,!1,"filename","asc",200)).find(o=>o.isFolder&&o.name===n),a=String(i?.id||"");if(!a)throw new Error("\u521B\u5EFA\u5929\u7FFC CAS \u4E34\u65F6\u76EE\u5F55\u5931\u8D25");return t&&await this.clearTempDir(a),console.log(`[Tianyi][cas] ensureCasTempDir dirId=${a} name=${n} clean=${t?1:0}`),{id:a,name:n}}async transferShareFile(t,r,n,s={}){let i=String(s?.targetDirId||"")||await this.ensureTempDir(!0),a={fileId:String(r),fileName:n,isFolder:0},o=TB(String(n||"")),c=o?o.replace(/\.\d{13,}_[0-9]+$/,""):"",u=Array.from(new Set([String(n||"").trim(),o?`${o}.cas`:"",o,c?`${c}.cas`:"",c].filter(Boolean))),l;console.log(`[Tianyi][share-save] start shareId=${t} fileId=${r} tempDirId=${i} fileName=${n}`);try{l=await this.createBatchTask("SHARE_SAVE","",i,{shareId:String(t)},[a]),console.log(`[Tianyi][share-save] created taskId=${l?.taskId||""} shareId=${t} fileId=${r}`)}catch(p){let m=String(p?.message||"");if(p?.code!=="TASK_CONFLICT"&&p?.code!=="FileAlreadyExists"&&!/conflict/i.test(m)&&!/FileAlreadyExists/i.test(m)&&!/ShareSaveTaskIsAlreadyExist|already exist/i.test(m))throw p;console.warn("[Tianyi] \u590D\u7528\u5DF2\u6709\u8F6C\u5B58\u4EFB\u52A1:",m||"share save task already exists")}let d=async()=>{let p=await this.findPrivateFileByName(i,n,!1);return p?.id?p:(await this.getPrivateFiles(i,!1,"lastOpTime","desc",200)).find(_=>{if(!_||_.isFolder)return!1;let y=String(_.name||"").trim();return y?!!(u.includes(y)||Axe(y)&&o&&TB(y)===o||Axe(y)&&c&&TB(y)===c):!1})||null},f=async()=>{for(let p=1;p<=24;p++){let m=await d();if(console.log(`[Tianyi][share-save] lookup attempt=${p} tempDirId=${i} found=${m?.id?1:0} fileId=${m?.id||""} name=${m?.name||""}`),m?.id)return m;if(l?.taskId)try{let g=await this.checkBatchTask("SHARE_SAVE",l.taskId);if(console.log(`[Tianyi][share-save] taskState attempt=${p} taskId=${l.taskId} status=${Number(g?.taskStatus||0)} failed=${Number(g?.failedCount||0)} errorCode=${g?.errorCode||""}`),Number(g?.taskStatus)===2){let _=new Error("there is a conflict with the target object");throw _.code="TASK_CONFLICT",_}if(Number(g?.taskStatus)===4&&Number(g?.failedCount||0)>0){let _=new Error(g?.errorCode||"share save failed");throw _.code=g?.errorCode||"TASK_FAILED",_.taskState=g,_}}catch(g){if(g?.code==="TASK_CONFLICT"||g?.code==="FileAlreadyExists")throw g;console.warn(`[Tianyi][share-save] check task failed attempt=${p} taskId=${l.taskId} reason=${g?.message||g}`)}await new Promise(g=>setTimeout(g,1e3))}return null},h=async()=>{if(!l?.taskId)return null;try{let p=await this.getConflictTaskInfo("SHARE_SAVE",l.taskId),m=bB(p?.taskInfos||p?.taskInfo||p?.data?.taskInfos||[]);if(m.length)try{await this.manageBatchTask("SHARE_SAVE",l.taskId,i,m)}catch(g){console.warn(`[Tianyi][share-save] manageBatchTask failed taskId=${l.taskId} reason=${g?.message||g}`)}}catch(p){console.warn(`[Tianyi][share-save] getConflictTaskInfo failed taskId=${l?.taskId||""} reason=${p?.message||p}`)}return await d()};try{let p=await f();if(!p?.id)throw new Error("\u6587\u4EF6\u8F6C\u5B58\u5931\u8D25");return p}catch(p){let m=String(p?.message||"");if(p?.code!=="TASK_CONFLICT"&&p?.code!=="FileAlreadyExists"&&!/conflict/i.test(m)&&!/FileAlreadyExists/i.test(m)&&!/ShareSaveTaskIsAlreadyExist|already exist/i.test(m))throw p;console.warn("[Tianyi] \u590D\u7528\u5DF2\u6709\u8F6C\u5B58\u7ED3\u679C:",m||"share save task already exists");let g=await h();if(g?.id)return g;let _=await d();if(!_?.id)throw new Error("\u6587\u4EF6\u8F6C\u5B58\u5931\u8D25");return _}}async getPrivateDownloadLink(t,r=!1){let n=`${mn.API_URL}${r?"/family/file":""}/getFileDownloadUrl.action`,s=r?{fileId:String(t),familyId:this.tokenInfo?.familyId||""}:{fileId:String(t),dt:"3",flag:"1"},i=await this.requestPrivateApi(n,"GET",s,{isFamily:r}),a=uy(i),o=String(a?.fileDownloadUrl||a?.url||"").replaceAll("&","&").replace(/^http:\/\//i,"https://");if(console.log(`[Tianyi][private] getPrivateDownloadLink fileId=${t} isFamily=${r?1:0} hasUrl=${o?1:0}`),!o)throw console.warn("[Tianyi][private] getPrivateDownloadLink raw=",JSON.stringify(i).slice(0,500)),new Error("\u83B7\u53D6\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u5730\u5740\u5931\u8D25");let c=async()=>{console.log(`[Tianyi][private] rawDownloadUrl=${o}`);let u=await ye.get(o,{maxRedirects:0,validateStatus:null}),l=typeof u.data=="string"?u.data.slice(0,300).replace(/\s+/g," "):JSON.stringify(u.data).slice(0,300);if(console.log(`[Tianyi][private] rawDownloadResp status=${u.status} location=${u.headers.location||""} body=${l}`),u.status>=300&&u.status<400&&u.headers.location)return u.headers.location;if(u.status>=200&&u.status<300)return o;let d=new Error(`\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u8DF3\u8F6C\u5931\u8D25 status=${u.status}`);throw d.status=u.status,d.bodyText=l,d};for(let u=0;u<6;u++)try{return await c()}catch(l){let d=`${l?.message||""} ${l?.bodyText||""}`;if(!/FileNotFound/i.test(d)||u>=5)throw l;let h=1e3*(u+1);console.warn(`[Tianyi][private] \u4E0B\u8F7D\u8282\u70B9\u672A\u5C31\u7EEA\uFF0C\u7B49\u5F85\u91CD\u8BD5 attempt=${u+1} waitMs=${h} fileId=${t}`),await new Promise(p=>setTimeout(p,h))}throw new Error("\u83B7\u53D6\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}async deletePrivateFile(t,r,n=!1,s={}){let i=s?.wait!==!1;try{let a={fileId:String(t),fileName:r,isFolder:n?1:0},o=await this.createBatchTask("DELETE","","",{},[a]);console.log(`[Tianyi][temp] \u5220\u9664\u4EFB\u52A1\u5DF2\u521B\u5EFA taskId=${o?.taskId||""} fileId=${t} name=${r} wait=${i?1:0}`),i&&o?.taskId&&await this.waitBatchTask("DELETE",o.taskId,200,50)}catch(a){console.warn("[Tianyi] \u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",a?.message||a)}}scheduleDeletePrivateFile(t,r){setTimeout(()=>{this.deletePrivateFile(t,r).catch(n=>{console.warn("[Tianyi] \u5EF6\u8FDF\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",n?.message||n)})},mn.DELETE_DELAY_MS)}async restoreSourceFromCASInfo(t,r){let n=await this.ensureTempDir(!1),s=Txe(t?.name||TB(r)),i=`${mn.UPLOAD_URL}/person/initMultiUpload`,a=await this.requestPrivateApi(i,"GET",{},{encryptedParams:{parentFolderId:n,fileName:encodeURIComponent(s),fileSize:String(t.size),sliceSize:String(ppn(t.size)),fileMd5:N5t(t.md5),sliceMd5:N5t(t.sliceMd5)}}),o=uy(a),c=o?.data||o||{};if(Number(c?.fileDataExists)!==1)throw new Error(`restore from .cas failed: source data for ${s} was not found in 189CloudPC`);let u=await this.requestPrivateApi(`${mn.UPLOAD_URL}/person/commitMultiUploadFile`,"GET",{},{encryptedParams:{uploadFileId:String(c?.uploadFileId||c?.uploadFileID||""),isLog:"0",opertype:"3"}}),l=uy(u),d=l?.file||l||{};if(!d.userFileId)throw new Error("\u63D0\u4EA4 .cas \u8FD8\u539F\u5931\u8D25");return{id:String(d.userFileId),name:String(d.fileName||s),size:Number(d.fileSize||t.size||0),isFolder:!1}}async downloadShareFileBuffer(t,r){console.log(`[Tianyi][cas] \u5F00\u59CB\u5206\u4EAB\u4FA7\u4E0B\u8F7D .cas shareId=${r} fileId=${t}`);let n=await this.getShareUrl(t,r,{rawOnly:!0,disablePrivateFallback:!0,silentAuthFailure:!0});console.log(`[Tianyi][cas] \u5206\u4EAB\u4FA7 .cas \u4E0B\u8F7D\u5730\u5740\u5DF2\u83B7\u53D6 shareId=${r} fileId=${t} url=${n}`);let s=await ye.get(n,{responseType:"arraybuffer",maxRedirects:5,validateStatus:i=>i>=200&&i<300});return console.log(`[Tianyi][cas] \u5206\u4EAB\u4FA7 .cas \u4E0B\u8F7D\u6210\u529F shareId=${r} fileId=${t} bytes=${Number(s?.data?.byteLength||s?.data?.length||0)}`),s.data||Buffer.alloc(0)}async restoreShareCAS(t,r,n,s={}){let i=await this.ensureCasTempDir(!1),a=ipn(n||"video.cas"),o=await this.transferShareFile(t,r,a,{targetDirId:i.id}),c,u=s?.preferPrivate!==!1,l=u?"private":"share";if(u)console.log(`[Tianyi][cas] \u76F4\u63A5\u4F18\u5148\u79C1\u6709\u76D8\u6062\u590D shareId=${t} fileId=${r}`),c=await ye.get(await this.getPrivateDownloadLink(o.id,!1),Ap({responseType:"arraybuffer",maxRedirects:5,validateStatus:h=>h>=200&&h<300})).then(h=>h.data||Buffer.alloc(0));else try{c=await this.downloadShareFileBuffer(r,t)}catch(h){l="private",console.warn(`[Tianyi][cas] \u5206\u4EAB\u4FA7\u4E0B\u8F7D .cas \u5931\u8D25\uFF0C\u56DE\u9000\u79C1\u6709\u76D8\u4E0B\u8F7D shareId=${t} fileId=${r} reason=${h?.message||h}`),c=await ye.get(await this.getPrivateDownloadLink(o.id,!1),Ap({responseType:"arraybuffer",maxRedirects:5,validateStatus:p=>p>=200&&p<300})).then(p=>p.data||Buffer.alloc(0))}let d=mpn(c),f=await this.restoreSourceFromCASInfo(d,n);return this.scheduleDeletePrivateFile(o.id,o.name),this.scheduleDeletePrivateFile(f.id,f.name),console.log(`[Tianyi][cas] .cas \u89E3\u6790\u4E0E\u6062\u590D\u5B8C\u6210 source=${l} shareId=${t} fileId=${r} restoredId=${f.id}`),await this.getPrivateDownloadLink(f.id,!1)}async loginForNormalShare(t,r){try{console.log("[Tianyi] \u5F00\u59CB\u6267\u884C\u666E\u901A\u5206\u4EAB\u767B\u5F55\u6D41\u7A0B"),this.clearShareAuthState();let n=await ye.get("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud",Ap({validateStatus:null})),s=String(n?.data?.data?.pubKey||"");if(!s)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u672A\u8FD4\u56DE RSA \u516C\u94A5");n=await ye.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action",Ap({validateStatus:null}));let i=String(n?.request?.path||""),a=(i.match(/reqId=(\w+)/)||[])[1]||"",o=(i.match(/lt=(\w+)/)||[])[1]||"";if(!a||!o)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u9875\u53C2\u6570\u63D0\u53D6\u5931\u8D25");let c={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:o,Reqid:a},u={version:"2.0",appKey:"cloud"};n=await ye.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",hb.default.stringify(u),Ap({headers:c,validateStatus:null}));let l=String(n?.data?.data?.returnUrl||""),d=String(n?.data?.data?.paramId||"");if(!l||!d)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55 appConf \u8FD4\u56DE\u4E0D\u5B8C\u6574");let f=`-----BEGIN PUBLIC KEY----- +${s} +-----END PUBLIC KEY-----`,h=new LG;h.setPublicKey(f);let p=h.encrypt(t),m=h.encrypt(r);if(!p||!m)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55 RSA \u52A0\u5BC6\u5931\u8D25");u={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:l,paramId:d,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${Buffer.from(p,"base64").toString("hex")}`,password:`{NRP}${Buffer.from(m,"base64").toString("hex")}`},n=await ye.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",hb.default.stringify(u),Ap({headers:c,validateStatus:null}));let g=x5t(n?.data,n?.headers),_=n?.data,y=_?typeof _=="string"?_.slice(0,120).replace(/\s+/g," "):JSON.stringify({msg:_?.msg||_?.message||"",result:_?.result||_?.resultCode||"",errorCode:_?.errorCode||""}):"empty",E=[...fb(n?.headers?.["set-cookie"])];if(g){let b=g;for(let I=0;I<3&&b;I++){let T=Yx(E).join("; "),x=await ye.get(b,Ap({headers:{...this.headers,Cookie:T},maxRedirects:0,validateStatus:null})),w=fb(x?.headers?.["set-cookie"]);if(w.length>0&&E.push(...w),x.status>=300&&x.status<400&&x.headers?.location)b=new URL(x.headers.location,b).toString();else break}}else if(E.length>0){let b=await ye.get("https://cloud.189.cn/web/main.action",Ap({headers:{...this.headers,Cookie:Yx(E).join("; ")},maxRedirects:0,validateStatus:null})),I=fb(b?.headers?.["set-cookie"]);I.length>0&&E.push(...I)}else throw new Error(`\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u8FD4\u56DE\u53EF\u7528 cookie (${y})`);let v=Yx(E).join("; ").trim();if(!v)throw new Error(`\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u83B7\u53D6\u5230\u6709\u6548 cookie (${y})`);this.shareCookie=v,console.log(`[Tianyi] \u666E\u901A\u5206\u4EAB\u767B\u5F55\u6210\u529F\uFF0Ccookie length=${v.length}`)}catch(n){console.error("[Tianyi] \u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25:",n);let s=new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25");throw s.isAuthFailure=!0,s.cause=n,s}}async login(t,r){try{console.log("[Tianyi] \u5F00\u59CB\u6267\u884C\u767B\u5F55\u6D41\u7A0B"),this.clearPrivateAuthState(),this.tempDirId="";let n=await ye.get("https://cloud.189.cn/api/portal/unifyLoginForPC.action",{params:{appId:mn.APP_ID,clientType:mn.LOGIN_CLIENT_TYPE,returnURL:mn.RETURN_URL,timeStamp:String(cpn())},headers:{"User-Agent":SB,Referer:mn.WEB_URL},validateStatus:null}),s=String(n?.data||""),i=PG(s,/'captchaToken' value='(.+?)'/),a=PG(s,/lt = "(.+?)"/),o=PG(s,/reqId = "(.+?)"/),c=PG(s,/paramId = "(.+?)"/);if(!i||!a||!o||!c)throw new Error("\u5929\u7FFC\u767B\u5F55\u9875\u53C2\u6570\u63D0\u53D6\u5931\u8D25");let u={"Content-Type":"application/x-www-form-urlencoded","User-Agent":SB,Referer:"https://open.e.189.cn/",lt:a,REQID:o},l=await ye.post("https://open.e.189.cn/api/logbox/config/encryptConf.do",hb.default.stringify({appId:mn.APP_ID}),{headers:u,validateStatus:null}),d=String(l?.data?.data?.pubKey||""),f=String(l?.data?.data?.pre||"{NRP}");if(!d)throw new Error("\u5929\u7FFC\u767B\u5F55\u672A\u8FD4\u56DE RSA \u516C\u94A5");let h=`-----BEGIN PUBLIC KEY----- +${d} +-----END PUBLIC KEY-----`,p=new LG;p.setPublicKey(h);let m=f+Buffer.from(p.encrypt(t),"base64").toString("hex").toUpperCase(),g=f+Buffer.from(p.encrypt(r),"base64").toString("hex").toUpperCase();l=await ye.post("https://open.e.189.cn/api/logbox/oauth2/needcaptcha.do",hb.default.stringify({appKey:mn.APP_ID,accountType:mn.ACCOUNT_TYPE,userName:m}),{headers:u,validateStatus:null});let _=String(l?.data||"").trim();if(_&&_!=="0")throw new Error("\u5F53\u524D\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");l=await ye.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",hb.default.stringify({appKey:mn.APP_ID,accountType:mn.ACCOUNT_TYPE,userName:m,password:g,validateCode:"",captchaToken:i,returnUrl:mn.RETURN_URL,dynamicCheck:"FALSE",clientType:mn.LOGIN_CLIENT_TYPE,cb_SaveName:"1",isOauth2:"false",state:"",paramId:c}),{headers:u,validateStatus:null});let y=x5t(l?.data,l?.headers),A=l?.data,E=A?typeof A=="string"?A.slice(0,160).replace(/\s+/g," "):JSON.stringify({msg:A?.msg||A?.message||"",result:A?.result||A?.resultCode||"",errorCode:A?.errorCode||""}):"empty",v=fb(n?.headers?.["set-cookie"]).concat(fb(l?.headers?.["set-cookie"]));if(y){let w=y;for(let D=0;D<3&&w;D++){let M=Yx(v).join("; "),L=await ye.get(w,{headers:{...this.headers,Cookie:M},maxRedirects:0,validateStatus:null}),U=fb(L?.headers?.["set-cookie"]);if(U.length>0&&v.push(...U),L.status>=300&&L.status<400&&L.headers?.location)w=new URL(L.headers.location,w).toString();else break}}else if(console.warn(`[Tianyi] \u767B\u5F55\u54CD\u5E94\u672A\u63D0\u4F9B\u8DF3\u8F6C\u5730\u5740\uFF0Ccookies=${v.length}, data=${E}`),v.length>0){let w=await ye.get("https://cloud.189.cn/web/main.action",{headers:{...this.headers,Cookie:Yx(v).join("; ")},maxRedirects:0,validateStatus:null}),D=fb(w?.headers?.["set-cookie"]);D.length>0&&v.push(...D)}let b=Yx(v).join("; ").trim();if(!b)throw new Error(`\u5929\u7FFC\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u83B7\u53D6\u5230\u6709\u6548 cookie (${E})`);if(this.privateCookie=b,!y){this.tokenInfo=null,console.log(`[Tianyi] \u767B\u5F55\u6210\u529F\uFF08cookie-only\uFF09\uFF0Ccookie length=${b.length}`);return}let I=await ye.post(`${mn.API_URL}/getSessionForPC.action`,null,{params:{...yxe(),redirectURL:y},headers:{"User-Agent":SB,Cookie:b},validateStatus:null}),T=Exe(I.data);if(T)throw new Error(`\u5929\u7FFC\u4F1A\u8BDD\u521D\u59CB\u5316\u5931\u8D25: ${T}`);let x=Sxe(await w5t(I.data));if(!x.accessToken||!x.refreshToken||!x.sessionKey||!x.sessionSecret)throw new Error(`\u5929\u7FFC\u4F1A\u8BDD\u521D\u59CB\u5316\u5931\u8D25\uFF1A\u8FD4\u56DE\u5B57\u6BB5\u4E0D\u5B8C\u6574 ${JSON.stringify(I.data||{})}`);this.privateCookie=b,this.tokenInfo=x,console.log(`[Tianyi] \u767B\u5F55\u6210\u529F\uFF0Ccookie length=${b.length}`)}catch(n){console.error("[Tianyi] \u767B\u5F55\u5931\u8D25:",n);let s=new Error("\u5929\u7FFC\u767B\u5F55\u5931\u8D25");throw s.isAuthFailure=!0,s.cause=n,s}}async getShareID(t,r){let n=this.regex.exec(t);if(n&&n[1]){this.shareCode=n[1];let s=this.shareCode.match(/访问码:([a-zA-Z0-9]+)/);this.accessCode=s?s[1]:""}else{let s=t.match(/https?:\/\/cloud\.189\.cn\/t\/([^&]+)/);this.shareCode=s?s[1]:null;let i=this.shareCode.match(/访问码:([a-zA-Z0-9]+)/);this.accessCode=i?i[1]:""}r&&(this.accessCode=r)}async getShareData(t,r){let n=[],s=await this.getShareInfo(t,r);if(s){let i=await this.getShareList(s),a=await this.getShareFile(s);if(a?.length>0){let o=Gt(a);n.push(...o)}Array.isArray(i)&&i.length>0&&(await E0(i,async u=>await this.getShareFile(u.id)||[],5)).forEach(u=>{if(u?.length>0){let l=Gt(u);n.push(...l)}})}return n.map(i=>({vod_id:Dt([i.cas?spn({fileId:i.fileId,fileName:i.sourceName||`${i.name}.cas`,shareId:i.shareId}):i.fileId,i.shareId,i.name||"",i.subtitle?.fileId||""],{structured:!0}),vod_name:i.name,vod_size:i.size}))}async getShareInfo(t,r){t.startsWith("http")?await this.getShareID(t,r):this.shareCode=t;try{if(r){let i=await ye.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${this.shareCode}&accessCode=${this.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});i.status===200&&(this.shareId=i.data.shareId)}let n=await ye.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${this.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),s=n.data.fileId;return this.shareId=n.data.shareId||this.shareId,this.shareMode=n.data.shareMode,this.isFolder=n.data.isFolder,s}catch(n){return console.error("\u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",n),null}}async getShareList(t){try{let r=[],n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},s=async(l,d=1)=>{let f=await I5t(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=${d}&pageSize=200&fileId=${l}&shareDirFileId=${l}&isFolder=${this.isFolder}&shareId=${this.shareId}&shareMode=${this.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${this.accessCode}&noCache=${Math.random()}`,{method:"GET",headers:n});return R5t.parse(await f.text())?.fileListAO||{}},i=[],a=1;for(;;){let l=await s(t,a),d=bB(l?.folderList||l?.folder||[]);if(d.length===0)break;i.push(...d);let f=Number(l?.count||d.length||0);if(d.length<200||f>0&&i.length>=f)break;a+=1}if(i.length===0)return null;i.forEach(l=>{r.push({name:l.name,id:l.id,type:"folder"})});let o=async l=>{try{return await this.getShareList(l)}catch{return null}},u=(await E0(i.map(l=>l.id),o,3)).filter(l=>l!=null);return[...r,...u.flat()]}catch(r){return console.error("\u83B7\u53D6\u5206\u4EAB\u5217\u8868\u5931\u8D25:",r),null}}async getShareFile(t){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},n=async(c,u=1)=>{let l=await I5t(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=${u}&pageSize=200&fileId=${c}&shareDirFileId=${c}&isFolder=${this.isFolder}&shareId=${this.shareId}&shareMode=${this.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${this.accessCode}&noCache=${Math.random()}`,{method:"GET",headers:r});return R5t.parse(await l.text())?.fileListAO||{}},s=[],i=[],a=[],o=1;for(;;){let c=await n(t,o),u=bB(c?.fileList||c?.file||[]);if(u.length===0)break;a.push(...u);let l=Number(c?.count||c?.fileListSize||u.length||0);if(u.length<200||l>0&&a.length>=l)break;o+=1}if(a.length===0)return null;for(let c of a){let u=c?.name||"",l=c?.id;c.mediaType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(u)?s.push({name:u,fileId:l,shareId:this.shareId,size:c.size}):Axe(u)?s.push({name:TB(u),fileId:l,shareId:this.shareId,size:c.size,cas:!0,sourceName:u}):St(u)&&i.push({name:u,fileId:l,shareId:this.shareId,size:c.size})}for(let c of s){let u=xr(c.name,i,l=>l.name);u?.fileId&&(c.subtitle={fileId:u.fileId,shareId:this.shareId,size:u.size,name:u.name})}return s}catch(r){return console.error("\u83B7\u53D6\u5206\u4EAB\u6587\u4EF6\u5931\u8D25:",r),null}}async getShareUrlNormal(t,r,n={}){let s={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd",Referer:"https://cloud.189.cn/web/main/file",Origin:"https://cloud.189.cn","X-Requested-With":"XMLHttpRequest"},i=n?.silentAuthFailure===!0;for(this.resetShareAuthRetryState();;)try{if(!this.hasShareCookie()){if(!this.account||!this.password)throw new Error("\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\u4E3A\u7A7A\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u586B\u5199");if(await this.loginForNormalShare(this.account,this.password),!this.hasShareCookie()){let u=this.buildShareAuthError(0,"share cookie empty after login","\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u540E\u4ECD\u672A\u62FF\u5230 cookie");throw this.rememberShareAuthError(u),u}}s.Cookie=String(this.shareCookie||"").trim();let a=await ye.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${t}&type=4&key=noCache`,Ap({headers:s,validateStatus:null}));if(!a?.data?.normal?.url)throw this.buildShareAuthError(a?.status,a?.data);let o=await ye.get(a.data.normal.url,Ap({maxRedirects:0,validateStatus:u=>u>=200&&u<400})),c="";return o.status>=300&&o.status<400&&o.headers.location?c=o.headers.location:c=a.data.normal.url,this.resetShareAuthRetryState(),c}catch(a){let o=a?.response?.status,c=a?.isAuthFailure||M5t(o),u=c?C5t(a?.response?.data,o):{authFailure:!1,category:"unknown",detail:k5t(a?.response?.data||a?.message||""),message:a?.message||"\u83B7\u53D6\u5206\u4EABURL\u5931\u8D25",retryable:!1,retryAdvice:"none"};c&&(a.authCategory=a?.authCategory||u.category,a.userMessage=a?.userMessage||u.message,a.retryable=u.retryable,a.retryAdvice=u.retryAdvice,this.rememberShareAuthError(a));let l=u.retryAdvice==="force_share_login_ipv4_once"?1:epn;if(c&&u.retryable&&this.account&&this.password&&this._shareAuthRetryCountawait new Wx().getShareData(e,t),getShareUrl:async(e,t,r={})=>{let n=new Wx;return n.shareId=t,await n.getShareUrl(e,t,r)},listOwnFiles:async(e="-11",{isFamily:t=!1,orderBy:r="filename",orderDirection:n="asc",pageSize:s=200}={})=>await new Wx().getPrivateFiles(String(e||"-11"),t,r,n,s),getOwnDownload:async(e,{isFamily:t=!1}={})=>e?await new Wx().getPrivateDownloadLink(String(e),t):""}});function gpn(e=""){let t=String(e||"").trim();return!t||t==="root"}async function H5t(e,t="root",r={}){let n=new Xx,s=typeof e=="string"?e:String(e?.url||""),i=typeof e=="object"?String(e?.linkID||""):"";if(s?await n.getShareID(s):n.linkID=i,!n.linkID)return{items:[],linkID:""};let a=gpn(t)?"root":String(t||"root"),o=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),c=o>0,u=Math.max(1,Math.min(q5t,Number(r.batchSize)||200)),l=Math.max(0,Math.min(1e4,Number(r.batchIntervalMs)||0)),d=Math.max(1e4,Math.min(18e4,Number(r.timeoutMs)||6e4)),f=[],h=[],p=c?o:1,m=!1,g=0;for(;;){let _=await n.getShareInfo(a,{pageNum:p,pageSize:u,timeoutMs:d});if(!_)break;let y=Math.max(0,Number(_.caLength||0)),A=Math.max(0,Number(_.coLength||0));if(g=y+A,p===1&&Array.isArray(_.caLst)){let b=/App|活动中心|免费|1T空间|免流/;f.push(..._.caLst.filter(I=>I?.caName&&!b.test(I.caName)).map(I=>({...I,itemType:"folder"})))}let E=(p-1)*u,v=c&&p>1&&A>0&&E>=A?[]:Array.isArray(_.coLst)?_.coLst:[];if(h.push(...v.map(b=>({...b,itemType:"file"}))),m=A>0?p*u=u,c||v.length0&&await new Promise(b=>setTimeout(b,l))}return{items:[...f,...h],linkID:n.linkID,...c?{paged:!0,page:o,pageSize:u,total:g||(o-1)*u+h.length+f.length+(m?u:0)}:{}}}var Xi,$5t,q5t,Xx,gb,Ixe=ie(()=>{vr();Xi=Ne(Yi(),1);la();Jc();Zc();yi();ql();A0();JK();$5t=fx("yun.shareInfo",{maxSize:200,ttl:5*60*1e3}),q5t=200,Xx=class{constructor(){this.regexs=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&]+)/],this.x=Xi.default.enc.Utf8.parse("PVGDwmcvfs1uV3d1"),this.baseUrl="https://share-kd-njs.yun.139.com/yun-share/richlifeApp/devapp/IOutLink/",this.baseHeader={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json","hcy-cool-flag":"1","x-deviceinfo":"||3|12.27.0|chrome|131.0.0.0|5c7c68368f048245e1ce47f1c0f8f2d0||windows 10|1536X695|zh-CN|||"},this.linkID="",this.passwd=""}encrypt(t){let r=Xi.default.lib.WordArray.random(16),n;if(typeof t=="string"){let s=Xi.default.enc.Utf8.parse(t);n=Xi.default.AES.encrypt(s,this.x,{iv:r,mode:Xi.default.mode.CBC,padding:Xi.default.pad.Pkcs7})}else if(typeof t=="object"&&t!==null){let s=Xi.default.enc.Utf8.parse(JSON.stringify(t));n=Xi.default.AES.encrypt(s,this.x,{iv:r,mode:Xi.default.mode.CBC,padding:Xi.default.pad.Pkcs7})}else throw new Error("Invalid data type");return Xi.default.enc.Base64.stringify(r.concat(n.ciphertext))}decrypt(t){let r=Xi.default.enc.Base64.parse(t),n=r.clone(),s=n.words.splice(4);n.init(n.words),r.init(s);let i=Xi.default.enc.Base64.stringify(r);return Xi.default.AES.decrypt(i,this.x,{iv:n,mode:Xi.default.mode.CBC,padding:Xi.default.pad.Pkcs7}).toString(Xi.default.enc.Utf8)}md5(t){return Xi.default.MD5(String(t||"")).toString()}base64Utf8(t){return Xi.default.enc.Base64.stringify(Xi.default.enc.Utf8.parse(String(t||"")))}randomString(t=16){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n="";for(let s=0;sString(s).padStart(2,"0");return[`${r.getFullYear()}-${n(r.getMonth()+1)}-${n(r.getDate())}`,`${n(r.getHours())}:${n(r.getMinutes())}:${n(r.getSeconds())}`].join(" ")}getMcloudSign(t,r,n){let s="";t&&typeof t=="object"&&(s=encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""));let i=this.md5(this.base64Utf8(s)),a=this.md5(`${r}:${n}`);return this.md5(i+a).toUpperCase()}buildSignedHeaders(t){let r=this.randomString(16),n=this.formatSignTime(),s=this.getMcloudSign(t,n,r);return{...this.baseHeader,"X-Requested-With":"XMLHttpRequest","CMS-DEVICE":"default","x-yun-channel-source":"10230043","x-huawei-channelSrc":"10230043","x-yun-svc-type":"1","x-SvcType":"1","x-m4c-caller":"PC","x-m4c-src":"10002","x-inner-ntwk":"2","mcloud-route":"001","mcloud-version":"12.27.0","mcloud-channel":"1000101","mcloud-client":"1001000021","mcloud-sign":`${n},${r},${s}`,"INNER-HCY-ROUTER-HTTPS":"1","x-yun-module-type":"100","x-yun-api-version":"v1","x-yun-app-channel":"10230043","x-yun-client-info":"||9|12.27.0|chrome|131.0.0.0|visitor||windows 10||zh-CN|||Y2hyb21l||",Referer:"https://yun.139.com/shareweb/"}}parseMaybeEncryptedResponse(t){if(typeof t!="string")return t;try{return JSON.parse(this.decrypt(t))}catch{return t}}pickPreviewUrl(t={}){return String(t?.presentUURL||t?.presentHURL||t?.presentURL||t?.presentLURL||"").trim()}buildFilePathFromContentInfo(t={}){let r=String(t?.contentID||t?.contentId||"").trim(),n=String(t?.parentCatalogId||t?.parentCatalogID||"").trim();return!r||!n?"":`${n}/${r}`}extractDownloadUrl(t={}){let r=t?.data??t;if(typeof r=="string"&&/^https?:\/\//i.test(r))return r;if(!r||typeof r!="object")return"";let n=r.extInfo&&typeof r.extInfo=="object"?r.extInfo:{},i=(Array.isArray(n.item)?n.item:[]).find(a=>a?.key==="cdnDownloadUrl"&&a?.value);return String(n.cdnDownloadUrl||i?.value||r.downloadURL||r.downloadUrl||r.redrUrl||r.url||"").trim()}downloadErrorMessage(t={}){let r=String(t?.resultCode||t?.code||t?.status||t?.mcsCode||"").trim(),n=String(t?.desc||t?.message||t?.resultDesc||"").trim();return r&&r!=="0"&&r!=="0000"?n?`\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u5F02\u5E38 ${r}: ${n}`:`\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u5F02\u5E38 ${r}`:n||""}async getShareID(t){for(let r of this.regexs){let n=r.exec(t);if(n&&n[1]){this.linkID=n[1];break}}}async getShareInfo(t,r={}){if(!this.linkID)return console.error("linkID is not set"),null;let n=Math.max(1,Number(r.pageNum||1)),s=Math.max(1,Math.min(q5t,Number(r.pageSize||200))),i=Math.max(1e4,Math.min(18e4,Number(r.timeoutMs)||6e4)),a=`${this.linkID}-${t}-${n}-${s}`,o=$5t.get(a);if(o)return o;let c=JSON.stringify(this.encrypt(JSON.stringify({getOutLinkInfoReq:{account:"",linkID:this.linkID,passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:n,pCaID:t,eNum:s},commonAccountInfo:{account:"",accountType:1}})));try{let u=await ye.post(this.baseUrl+"getOutLinkInfoV6",c,{headers:this.baseHeader,timeout:i});if(u.status!==200)return null;let l=JSON.parse(this.decrypt(u.data)).data;return $5t.set(a,l),l}catch(u){return console.error("\u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",u),null}}async getShareData(t){if(!t)return[];let r=t.startsWith("http"),n=r?"root":t;return r&&await this.getShareID(t),await this.getFilesWithFolderSort(n)}async getFilesWithFolderSort(t){try{let r=[],n={shareInfoCalls:0,folderVisits:0},s=Date.now(),i=async(o,c)=>{let u=[],l=[],d=[],f=1,h=200;for(;;){let p=await this.getShareInfo(o,{pageNum:f,pageSize:h});if(c&&(c.shareInfoCalls+=1),f===1){let g=Array.isArray(p?.caLst)?p.caLst:[],_=/App|活动中心|免费|1T空间|免流/;d.push(...g.filter(y=>!_.test(y.caName)))}let m=Array.isArray(p?.coLst)?p.coLst:[];if(m.length===0)break;for(let g of m){if(!g?.coName)continue;let _={name:g.coName,contentId:g.coID,linkID:this.linkID,size:g.coSize,path:g.path};g.coType===3||pB(g.coName)?u.push(_):St(g.coName)&&l.push(_)}if(m.lengthg.name);m?.contentId&&(p.subtitle={contentId:m.contentId,name:m.name,path:m.path})}return{videos:u,folders:d}},a=async o=>{n.folderVisits+=1;let c=await i(o,n);if(c.videos?.length>0){let u=Gt(c.videos);r.push(...u)}c.folders?.length>0&&await E0(c.folders,async u=>{await a(u.caID)},5)};return await a(t),console.log("[139 detail] perf",JSON.stringify({linkID:this.linkID,ms:Date.now()-s,videos:r.length,...n})),r.map(o=>({vod_name:o.name,vod_id:Dt([o.contentId,o.linkID,o.subtitle?.contentId||"",o.path||"",o.subtitle?.path||""],{structured:!0}),vod_size:o.size}))}catch(r){return console.error("\u83B7\u53D6\u6587\u4EF6\u5931\u8D25:",r),[]}}async getCurrentDirFiles(t,r){try{let n=[],s=[],i=1,a=200;for(;;){let o=await this.getShareInfo(t,{pageNum:i,pageSize:a});r&&(r.shareInfoCalls+=1);let c=Array.isArray(o?.coLst)?o.coLst:[];if(c.length===0)break;for(let u of c){if(!u?.coName)continue;let l={name:u.coName,contentId:u.coID,linkID:this.linkID,size:u.coSize,path:u.path};u.coType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(u.coName)?n.push(l):St(u.coName)&&s.push(l)}if(c.lengthu.name);c?.contentId&&(o.subtitle={contentId:c.contentId,name:c.name,path:c.path})}return n}catch(n){return console.error("\u83B7\u53D6\u5F53\u524D\u76EE\u5F55\u6587\u4EF6\u5931\u8D25:",n),[]}}async processSubFolders(t,r,n){try{let s=await this.getShareInfo(t);if(n&&(n.shareInfoCalls+=1),!s||!s.caLst)return;let i=s.caLst,a=/App|活动中心|免费|1T空间|免流/,o=i.filter(u=>!a.test(u.caName));await E0(o,async u=>{n&&(n.folderVisits+=1);try{let l=await this.getCurrentDirFiles(u.caID,n);if(l?.length>0){let d=Gt(l);r.push(...d)}await this.processSubFolders(u.caID,r,n)}catch(l){console.error(`\u5904\u7406\u5B50\u6587\u4EF6\u5939\u5931\u8D25 ${u.caName}:`,l)}},5)}catch(s){console.error("\u5904\u7406\u5B50\u6587\u4EF6\u5939\u5931\u8D25:",s)}}async getShareDownload(t,r){let n=String(t||"").trim();if(!n||!r)return{url:"",error:"\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u53C2\u6570\u7F3A\u5C11\u6587\u4EF6\u8DEF\u5F84"};let s=[{linkID:r,coIDLst:{items:[n]},caIDLst:{items:[]}},{dlFromOutLinkReqV3:{linkID:r,account:"",coIDLst:{item:[n]}}}],i="";for(let a of s)try{let o=await ye.post(this.baseUrl+"dlFromOutLinkV3",this.encrypt(a),{headers:this.buildSignedHeaders(a),timeout:15e3,validateStatus:()=>!0});if(o.status!==200){i=`\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3 HTTP ${o.status}`;continue}let c=this.parseMaybeEncryptedResponse(o.data),u=this.extractDownloadUrl(c);if(u)return{url:u,source:"download"};i=this.downloadErrorMessage(c)||"\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}catch(o){i=o?.message||String(o)}return{url:"",error:i||"\u79FB\u52A8\u4E91\u76D8\u4E0B\u8F7D\u63A5\u53E3\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async getSharePlayInfo(t,r,n=""){let s={getContentInfoFromOutLinkReq:{contentId:t,linkID:r,account:""},commonAccountInfo:{account:"",accountType:1}};try{let i=await ye.post(this.baseUrl+"getContentInfoFromOutLink",s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br, zstd","Content-Type":"application/json"},timeout:15e3});if(i.status===200&&i.data.data){let a=i.data.data.contentInfo||{},o=this.pickPreviewUrl(a);if(o)return{url:o,source:"preview"};let c=String(n||"").trim()||this.buildFilePathFromContentInfo(a);if(c){let u=await this.getShareDownload(c,r);return u?.url?u:{url:"",source:"download",error:u?.error||"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u9884\u89C8\u5730\u5740\uFF0C\u4E0B\u8F7D\u63A5\u53E3\u4E5F\u672A\u8FD4\u56DE\u5730\u5740"}}return{url:"",source:"preview",error:"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u9884\u89C8\u5730\u5740\uFF0C\u4E14\u65E0\u6CD5\u786E\u5B9A\u6587\u4EF6\u8DEF\u5F84"}}}catch(i){throw console.error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25:",i),i}return{url:"",error:"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u64AD\u653E\u4FE1\u606F"}}async getSharePlay(t,r,n=""){let s=await this.getSharePlayInfo(t,r,n);return!s?.url&&s?.error&&console.warn("[139 play] no playable url:",s.error),s?.url||null}};gb={async getShareData(e){let t=new Xx;if(!e)return[];let r=e.startsWith("http"),n=r?"root":e;return r?await t.getShareID(e):t.linkID=e,t.getFilesWithFolderSort(n)},async getSharePlay(e,t,r=""){let n=new Xx;return n.linkID=t,n.getSharePlay(e,t,r)},async getSharePlayInfo(e,t,r=""){let n=new Xx;return n.linkID=t,n.getSharePlayInfo(e,t,r)}}});function su(e="",t=16){return r_.default.SHA256(String(e||"")).toString(r_.default.enc.Hex).slice(0,t)}function s8t(e="",t=""){let r=String(t||"").trim().toLowerCase();return String(e||"").split(";").map(n=>n.trim()).filter(Boolean).filter(n=>String(n.split("=",1)[0]||"").trim().toLowerCase()!==r).join("; ")}function V5t(e="",t="",r=""){let n=s8t(e,t),s=`${String(t||"").trim()}=${String(r||"")}`;return n?`${n}; ${s}`:s}function i8t(){return String(sl.get("baidu_cookie")||"")}function a8t(){return s8t(i8t(),"BDCLND")}function x0(e=a8t()){return su(e||"anonymous-baidu-account",24)}function HG({surl:e="",pwd:t="",accountKey:r=x0()}={}){return`${r}:${su(`${e}\0${t}`,24)}`}function Tpn({surl:e="",shareid:t="",fsid:r="",accountKey:n=x0()}={}){return`${n}:${su(`${e}\0${t}\0${r}`,32)}`}async function Cxe(e,t,r){let n=e.get(t);if(n)return await n;let s=Promise.resolve().then(r);e.set(t,s);try{return await s}finally{e.get(t)===s&&e.delete(t)}}function o8t(e={}){let t=HG(e),r=CB.get(t);return r?(r.expiresAt||0)<=Date.now()?(CB.delete(t),null):r:null}function j5t(e={},t=""){if(!e.surl||!t)return null;let r=e.accountKey||x0(),n=HG({...e,accountKey:r}),s={accountKey:r,surl:String(e.surl||""),pwdHash:su(e.pwd||"",16),randsk:String(t||""),createdAt:Date.now(),expiresAt:Date.now()+Epn};return CB.set(n,s),s}function K5t(e={}){let t=HG(e);return CB.delete(t)}function BG(e){if(!e?.surl||e.randsk)return e?.randsk||"";let t=o8t({surl:e.surl,pwd:e.pwd,accountKey:e.accountKey});return t?.randsk&&(e.randsk=t.randsk),e.randsk||""}function bpn(e,t={}){let r=String(t.surl||e||"");if(!r)return null;let n={surl:r,pwd:String(t.pwd||""),uk:String(t.uk||""),shareid:String(t.shareid||""),accountKey:t.accountKey||x0(),updatedAt:Date.now(),expiresAt:Date.now()+ypn};return UG.set(String(e||r),n),n}function Ipn(e){let t=String(e||""),r=UG.get(t);return r?(r.expiresAt||0)<=Date.now()||r.accountKey!==x0()?(UG.delete(t),null):r:null}function Rpn(e="",t=Date.now()){try{let r=new URL(String(e||"")),n=String(r.searchParams.get("expires")||"").trim().toLowerCase(),s=Number(r.searchParams.get("dstime")||0),i=s>1e9?s*1e3:t;if(/^\d{10,13}$/.test(n)){let c=Number(n);return c>1e12?c:c*1e3}let a=/^(\d+)([smhd])$/.exec(n);if(!a)return 0;let o=a[2]==="s"?1e3:a[2]==="m"?60*1e3:a[2]==="h"?60*60*1e3:24*60*60*1e3;return i+Number(a[1])*o}catch{return 0}}function kxe(e){let r=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/.exec(e);return r&&r[1]?{shareId:r[1],sharePwd:r[2]||"",url:String(e||"")}:null}function xxe(e="",t=""){let r=String(t||"").trim();if(!r)return"";let n=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),s=String(e||"").match(new RegExp(`(?:^|;\\s*)${n}=([^;]*)`));return s?s[1]:""}function c8t({sha1:e,bduss:t,uid:r,time:n}){return e(e(t)+r+Apn+n+Mxe+_pn)}function u8t(e={}){return Array.isArray(e?.list)?e.list:Array.isArray(e?.info)?e.info:[]}function Cpn(e=""){let t=String(e||"").trim();return!t||t==="/"||t==="root"}function G5t(e){let t=String(e?.shareId||"").trim(),r=String(e?.sharePwd||"").trim();return t?`https://pan.baidu.com/s/${t}${r?`?pwd=${encodeURIComponent(r)}`:""}`:""}async function wxe(e,t,r,n=6e4){return(await ye.get(`${e.api}/share/list?web=5&app_id=${e.app_id}&desc=1&showempty=0&page=${t}&num=${r}&order=time&shorturl=${e.shorturl}&root=1&view_mode=${e.view_mode}&channel=${e.channel}&web=1&clienttype=0`,{headers:e.headers,timeout:n})).data||{}}async function xpn(e,t=6e4){if(e.uk&&e.shareid)return;let r=await wxe(e,1,1,t);Number(r?.errno)===0&&(e.uk=r?.uk||e.uk||"",e.shareid=r?.share_id||r?.shareid||e.shareid||"")}function kG(e={}){return Number(e.has_more||e.hasMore||e.records?.has_more||0)===1}function z5t(e={}){return Number(e?.total||e?.records?.total||0)}async function l8t(e,t="/",r={}){let n=typeof e=="string"?kxe(e):e;if(!n?.shareId)return{items:[],meta:{}};let s=new Zx;await s.getSurl(n.url||G5t(n)),s.surl||(s.surl=String(n.shareId||""),s.shorturl=s.surl?s.surl.slice(1):"",s.pwd=String(n.sharePwd||""),s.link=G5t(n));let i=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),a=i>0,o=Math.max(1,Math.min(500,Number(r.batchSize)||100)),c=Math.max(0,Math.min(1e4,Number(r.batchIntervalMs)||0)),u=Math.max(1e4,Math.min(18e4,Number(r.timeoutMs)||6e4));await s.getRandsk(u),s.headers.cookie=s.shareCookie;let l=[],d=a?i:1,f=!1,h=0;if(Cpn(t))for(;;){let m=await wxe(s,d,o,u);if(Number(m?.errno)!==0||!Array.isArray(m.list))break;s.uk=m?.uk||s.uk||"",s.shareid=m?.share_id||m?.shareid||s.shareid||"";let g=m.list;if(h=z5t(m)||h,f=kG(m),a&&d>1&&h<=0&&!f&&g.length0&&await new Promise(_=>setTimeout(_,c))}else{if(await xpn(s,u),!s.uk||!s.shareid)return{items:[],meta:{surl:s.surl,pwd:s.pwd}};let m=String(t||"/");for(;;){let _=(await ye.get(`${s.api}/share/list?is_from_web=true&uk=${s.uk}&shareid=${s.shareid}&order=name&desc=0&showempty=0&view_mode=${s.view_mode}&web=1&page=${d}&num=${o}&dir=${encodeURIComponent(m)}&channel=${s.channel}&web=1&app_id=${s.app_id}`,{headers:s.headers,timeout:u})).data||{};if(Number(_?.errno)!==0||!Array.isArray(_.list))break;let y=_.list;if(h=z5t(_)||h,f=kG(_),a&&d>1&&h<=0&&!f&&y.length0&&await new Promise(A=>setTimeout(A,c))}}let p={uk:s.uk||"",shareid:s.shareid||"",surl:s.surl||"",pwd:s.pwd||""};for(let m of l){let g=m?.fs_id||m?.fsid;g&&RB.set(`${s.surl}_${g}`,m.size)}if(a){let m=h>0?h:(i-1)*o+l.length+(f?o:0);return{items:l,meta:p,paged:!0,page:i,pageSize:o,total:m}}return{items:l,meta:p}}function Upn(){CB.clear(),UG.clear(),IB.clear(),t8t.clear(),r8t.clear(),n8t.clear();for(let e of Object.keys(fy))delete fy[e]}function VG(e=""){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}function Fpn(e=""){if(Br(e).length>=7){let n=Br(e,{fieldOrder:["path","uk","shareid","fsid","surl","encodedPwd","subtitleFsid"]});return{path:n.path||"",uk:n.uk||"",shareid:n.shareid||"",fsid:n.fsid||"",surl:n.surl||"",pwd:VG(n.encodedPwd||""),subtitleFsid:n.subtitleFsid||""}}let r=Br(e,{fieldOrder:["path","uk","shareid","fsid","surl","subtitleFsid"]});return{path:r.path||"",uk:r.uk||"",shareid:r.shareid||"",fsid:r.fsid||"",surl:r.surl||"",pwd:"",subtitleFsid:r.subtitleFsid||""}}function $pn(e){return e&&sl.get(`baidu_share_${e}`)||null}function h8t(e={},t=""){let r=$pn(t);return{surl:e.surl||r?.surl||"",pwd:e.pwd||r?.pwd||"",uk:e.uk||r?.uk||"",shareid:e.shareid||r?.shareid||"",link:e.link||r?.link||""}}function qpn(e,{surl:t="",pwd:r="",uk:n="",shareid:s=""}){e.surl=t,e.shorturl=e.surl?e.surl.slice(1):"",e.pwd=r,e.link=e.surl?`https://pan.baidu.com/s/${e.surl}${e.pwd?`?pwd=${e.pwd}`:""}`:"",e.uk=n,e.shareid=s,BG(e)}function Hpn(e,t={},r=""){let n=h8t(t,r);return qpn(e,n),n.link&&(e.link=n.link),n}function Bxe(e={},t=""){let r=new Zx,n=Hpn(r,e,t);return{drive:r,shareContext:n}}async function Uxe({drive:e,path:t,uk:r,shareid:n,fsid:s,surl:i}){let a=e.accountKey,o=Tpn({surl:i,shareid:n,fsid:s,accountKey:a});return await Cxe(n8t,o,async()=>{let c=Date.now(),u=await e.getAppShareUrl(t,r,n,s);return console.log("[baidu play] dlink",JSON.stringify({shareKey:su(i,12),fileKey:su(s,12),ok:!!u,ms:Date.now()-c})),u})}function Vpn(e=""){let r=VG(e).split("*");if(r.length<4)return null;let n=r.pop()||"",s=r.pop()||"",i=r.pop()||"",a=r.join("*");return!a||!i||!s||!n?null:{path:a,uk:i,shareid:s,fsid:n,fileId:`${a}*${i}*${s}*${n}`}}function jpn(e){return!e?.cacheEntry?.directUrl||e.kind!==iu||e.cacheEntry.source!==NB||e.cacheEntry.accountKey&&e.cacheEntry.accountKey!==x0()||$xe(e)||_8t(e)?!1:(e.expiresAt||0)>Date.now()}async function Kpn({shareId:e,fileId:t}){let r=Ipn(e),n=Vpn(t);if(!r||!n)return{statusCode:410,error:"\u64AD\u653E\u5730\u5740\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u8BF7\u6C42\u64AD\u653E\u5730\u5740"};let{drive:s}=Bxe({surl:r.surl,pwd:r.pwd,uk:n.uk||r.uk,shareid:n.shareid||r.shareid},e);try{let i=await Uxe({drive:s,path:n.path,uk:n.uk,shareid:n.shareid,fsid:n.fsid,surl:r.surl});if(!i)return{statusCode:503,error:"\u767E\u5EA6\u7F51\u76D8\u6682\u672A\u8FD4\u56DE\u539F\u753B\u5730\u5740\uFF0C\u8BF7\u91CD\u8BD5"};let a=p8t({fileId:n.fileId,fileSize:RB.get(`${r.surl}_${n.fsid}`),directUrl:i,accountKey:s.accountKey});return Hxe(e,a,n.fileId),{cacheEntry:a,recovered:!0}}catch(i){return console.warn("[baidu proxy] handoff recovery failed",{shareKey:su(e,12),fileKey:su(n.fsid,12),code:String(i?.code||""),message:String(i?.message||"").slice(0,120)}),{statusCode:503,error:"\u767E\u5EA6\u539F\u753B\u5730\u5740\u5237\u65B0\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5"}}}function p8t({fileId:e,fileSize:t,directUrl:r,accountKey:n=x0()}){return{kind:iu,source:NB,directUrl:r,fileId:e,fileSize:t,accountKey:n,requestHeaders:{"User-Agent":qG,Referer:"https://pan.baidu.com/"}}}function Gpn({fileId:e,directUrl:t,accountKey:r=x0()}){return{kind:t_,source:NB,directUrl:t,fileId:e,accountKey:r,requestHeaders:{"User-Agent":qG,Referer:"https://pan.baidu.com/"}}}function Nxe(e){return!!e&&typeof e=="object"&&typeof e.source=="string"}function zpn(e){return e?.kind===t_?t_:iu}function jG(e){return!e||typeof e!="object"||Nxe(e)?!1:!!(e.recordsByPrimaryKey||e.primaryKeyByFileAlias||e.entriesByFileId||e.latestEntry||e.latestPrimaryKey)}function Fxe(e=""){let t=String(e||""),r=[],n=new Set,s=i=>{let a=String(i||"");!a||n.has(a)||(n.add(a),r.push(a))};s(t),s(VG(t));try{s(encodeURIComponent(t))}catch{}return r}function Oxe(){return{latestPrimaryKey:"",recordsByPrimaryKey:Object.create(null),primaryKeyByFileAlias:Object.create(null)}}function m8t(e,t){let r={...e,kind:zpn(e)},n=Fxe(t||e.fileId),s=n[0]||String(e.fileId||""),i=Date.now(),a=e.directUrl?Rpn(e.directUrl,i):0,o=a>i?Math.min(i+Y5t,a-Spn):i+Y5t;return{kind:r.kind,primaryFileKey:s,fileKeys:n,cacheEntry:r,createdAt:i,lastAccessAt:i,upstreamExpiresAt:a,expiresAt:Math.max(i+1e3,o)}}function OB(e,t){let r=e.recordsByPrimaryKey[t];if(r){for(let n of r.fileKeys||[])e.primaryKeyByFileAlias[n]===t&&delete e.primaryKeyByFileAlias[n];delete e.recordsByPrimaryKey[t],e.latestPrimaryKey===t&&(e.latestPrimaryKey="")}}function g8t(e,t){e.recordsByPrimaryKey[t.primaryFileKey]=t;for(let r of t.fileKeys)e.primaryKeyByFileAlias[r]=t.primaryFileKey;e.latestPrimaryKey=t.primaryFileKey}function Q5t(e){let t=Date.now();e.lastAccessAt=t;let r=DB(e);return r?.disposition===wB?e.expiresAt=Math.min(e.expiresAt||1/0,t+Lpn):r?.disposition===tw&&(e.expiresAt=Math.min(e.expiresAt||1/0,t+Mpn)),e}function DB(e){let t=e?.failureState;return!t?.observedAt||Date.now()-t.observedAt>Ppn?null:t}function $xe(e){let t=DB(e);return t?t.disposition===wB:!1}function _8t(e){let t=DB(e);return t?t.disposition===tw:!1}function Ypn(e){let t=DB(e);return t?t.disposition===ew||t.disposition===wB:!1}function Qpn(e){let t=DB(e);return t?t.disposition===tw:!1}function Wpn(e){let t=Number(e?.lastProbeAt||0);return!t||Date.now()-t>=Bpn}function W5t(e,t){return e&&(e.lastProbeAt=Date.now(),t&&delete e.failureState,e)}function rw(e,t=""){let r=Object.values(e.recordsByPrimaryKey||{});return t?r.filter(n=>n.kind===t):r}function Xpn(e){let t=Date.now(),r=x0();for(let n of rw(e)){let s=n?.cacheEntry?.accountKey;((n.expiresAt||0)<=t||s&&s!==r)&&OB(e,n.primaryFileKey)}}function Jpn(e){let t=(n,s)=>{let i=rw(e,n).sort((a,o)=>(o.lastAccessAt||0)-(a.lastAccessAt||0));for(let a=s;a(s.lastAccessAt||0)-(n.lastAccessAt||0));(!e.latestPrimaryKey||!e.recordsByPrimaryKey[e.latestPrimaryKey])&&(e.latestPrimaryKey=r[0]?.primaryFileKey||"")}function X5t(e,t){let r=[];for(let[n,s]of Object.entries(fy))if(jG(s)){PB(s);for(let i of rw(s,e))r.push({shareId:n,bucket:s,record:i})}r.sort((n,s)=>(s.record.lastAccessAt||0)-(n.record.lastAccessAt||0));for(let n=t;n{!Nxe(i)||r.has(i)||(r.add(i),n.push(i))};if(Nxe(e))s(e);else if(jG(e)){if(e.entriesByFileId&&typeof e.entriesByFileId=="object")for(let i of Object.values(e.entriesByFileId))s(i);s(e.latestEntry)}for(let i of n)g8t(t,m8t(i,i.fileId));return PB(t)}function A8t(e){let t=fy[e];if(jG(t)&&t.recordsByPrimaryKey&&t.primaryKeyByFileAlias){let n=PB(t);if(qxe(n)){let s=Oxe();return fy[e]=s,s}return n}let r=t?Zpn(t):Oxe();return fy[e]=r,r}function Hxe(e,t,r){let n=A8t(e),s=m8t(t,r);return OB(n,s.primaryFileKey),g8t(n,s),PB(n),X5t(iu,Opn),X5t(t_,Dpn),s}function emn(e,t,r=iu){let n=rw(e,r).filter(s=>!$xe(s));return n.length!==1||t&&Fxe(t).length>0?null:n[0]||null}function E8t(e,t,r=iu){let n=Fxe(t),s=null;for(let i of n){let a=e.primaryKeyByFileAlias[i],o=a?e.recordsByPrimaryKey[a]:null;if(o&&o.kind===r){if($xe(o))continue;if(_8t(o)){s=s||o;continue}return o}}return s}function nw(e,t,r=iu){let n=A8t(e);if(qxe(n))return FG(e,n),null;let s=E8t(n,t,r);if(s)return n.latestPrimaryKey=s.primaryFileKey,Q5t(s);let i=emn(n,t,r);return i?(n.latestPrimaryKey=i.primaryFileKey,Q5t(i)):null}function tmn(e,t){let r=nw(e,t,iu);return r?r.cacheEntry:null}function rmn(e,t){let r=nw(e,t,t_);return r?r.cacheEntry:null}function nmn(e,t,r=iu){let n=fy[e];if(!n||!jG(n))return!1;PB(n);let s=E8t(n,t,r);return s?(OB(n,s.primaryFileKey),FG(e,n),!0):(FG(e,n),!1)}function smn(e,t,r,n){return n.source===NB?[...Ia(e,"baidu","\u539F\u753B","redirect",t,r,".bin")]:n.source===d8t?n.qualityUrls.flatMap(s=>[s.name,px(e,"baidu",s.name,t,r,".bin")]):[]}function J5t(e,{shareId:t,encodedFileId:r,cacheEntry:n,subtitleRef:s=null,skipReuse:i=!1}){return i||Hxe(t,n,n.fileId),ei({parse:0,urls:smn(e,t,r,n),subtitles:s?[s]:[],extra:{header:{}}})}function imn(e,t){if(!e)return{statusCode:404,error:"\u64AD\u653EURL\u672A\u627E\u5230"};if(e.source===NB)return{targetUrl:e.directUrl,requestHeaders:e.requestHeaders,contentLength:e.fileSize};if(e.source===d8t){let r=e.qualityUrls.find(n=>n.name===t);return r?{targetUrl:r.url,requestHeaders:e.requestHeaders,contentLength:e.fileSize}:{statusCode:404,error:"\u753B\u8D28\u672A\u627E\u5230"}}return{statusCode:500,error:"\u65E0\u6548\u7684\u7F13\u5B58\u7C7B\u578B"}}async function amn(e){let t=r_.default.enc.Hex.stringify(r_.default.MD5(e.server.config.baidu.cookie)).toString(),r=await e.server.db.getObjectDefault(`/baidu/settings/${t}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0});return Qi(r,{chunkSize:512*1024,poolSize:8,useMultithread:!0})}function omn(e){return e.useMultithread?f8t:xB}function Dxe(e){e.header("Cache-Control","no-store, no-cache, must-revalidate"),e.header("Pragma","no-cache"),e.header("Expires","0")}async function cmn(e,t={}){try{let r=await ye.head(e,{headers:t,timeout:kpn,maxRedirects:0,validateStatus:()=>!0});return{ok:r.status>=200&&r.status<400,statusCode:r.status,response:r}}catch(r){return{ok:!1,error:r}}}async function Pxe({shareId:e,fileId:t,expectedKind:r,targetUrl:n,requestHeaders:s,force:i=!1}){let a=nw(e,t,r);if(!a||!i&&!Ypn(a)||!Wpn(a))return null;let o=await cmn(n,s);if(o.ok)return W5t(a,!0),{action:"retain",probe:o};W5t(a,!1);let c=$G(e,t,r,o.error||{response:{status:o.statusCode},message:`redirect probe failed with status ${o.statusCode||0}`},{stage:i?"redirect_retain_probe":"redirect_probe",deliveryMode:xB});return{action:c.disposition,probe:o,failure:c}}async function umn(e,t,{targetUrl:r,fileId:n,requestHeaders:s,contentLength:i,settings:a}){let o=e.params.flag===xB?xB:omn(a),c=nw(e.params.shareId,n,iu);if(o===f8t)try{return await oc(e,t,r,n,s,{chunkSize:a.chunkSize,poolSize:a.poolSize,timeout:1e3*10},i,!0)}catch(d){console.error("[baidu proxy] chunkStream error:",d.message),$G(e.params.shareId,n,iu,d,{stage:"chunk_stream",deliveryMode:o}),t.sent||t.code(503).send({error:"stream error, please retry"});return}let u=c&&Qpn(c)?await Pxe({shareId:e.params.shareId,fileId:n,expectedKind:iu,targetUrl:r,requestHeaders:s,force:!0}):null;if(u?.failure?.disposition===ew){t.sent||t.code(503).send({error:"redirect target unavailable, please retry"});return}if((u||await Pxe({shareId:e.params.shareId,fileId:n,expectedKind:iu,targetUrl:r,requestHeaders:s}))?.failure?.disposition===ew){t.sent||t.code(503).send({error:"redirect target unavailable, please retry"});return}Dxe(t),t.redirect(r)}function lmn(e,{path:t,uk:r,shareid:n,subtitleFsid:s,surl:i,pwd:a}){if(!s)return null;let o=encodeURIComponent(Dt([t,r,n,s,i,encodeURIComponent(a||"")],{structured:!0}));return{fileId:o,ref:v0(e,"baidu",i,o,".srt",{name:"\u5916\u6302\u5B57\u5E55",format:"srt"})}}function dmn(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||t==="ESOCKETTIMEDOUT"||r.includes("timeout")}function fmn(e){let t=String(e?.code||"").toUpperCase();return t==="ECONNRESET"||t==="EAI_AGAIN"||t==="ENOTFOUND"||t==="ECONNREFUSED"||t==="EPIPE"}function hmn(e=null){return{statusCode:Number(e?.response?.status||e?.statusCode||0)||0,code:String(e?.code||""),message:String(e?.message||""),name:String(e?.name||"")}}function pmn(e,t={}){let r=hmn(e);return r.statusCode>=400&&r.statusCode<500?{disposition:ew,category:"upstream_4xx",...r,...t}:r.statusCode>=500?{disposition:tw,category:"upstream_5xx",...r,...t}:dmn(e)?{disposition:tw,category:"timeout",...r,...t}:fmn(e)?{disposition:wB,category:"network_error",...r,...t}:{disposition:wB,category:"uncertain_failure",...r,...t}}function mmn(e,t){return e&&(e.failureState={category:t.category,disposition:t.disposition,statusCode:t.statusCode||0,code:t.code||"",message:t.message||"",stage:t.stage||"",deliveryMode:t.deliveryMode||"",observedAt:Date.now()},e)}function $G(e,t,r,n,s={}){let i=pmn(n,{expectedKind:r,...s});if(i.disposition===ew){let c=nmn(e,t,r);return console.warn("[baidu proxy] invalidate handoff record:",i.category,{shareId:e,expectedKind:r,invalidated:c,statusCode:i.statusCode,code:i.code,stage:i.stage}),i}let a=nw(e,t,r);a&&mmn(a,i);let o=i.disposition===tw?"warn":"info";return console[o]("[baidu proxy] keep handoff record:",i.category,{shareId:e,expectedKind:r,statusCode:i.statusCode,code:i.code,stage:i.stage}),i}async function y8t(e,t){await n_(t);let r=await ht("baidu");if(Array.isArray(e)){let n=[];for(let s of e)try{let i=new Zx;await i.getSurl(s);let a=await i.getShareList();if(!a)continue;let o=Hg(r,a);o?.from&&o?.url&&n.push(o)}catch(i){console.error(`\u5904\u7406\u767E\u5EA6\u94FE\u63A5\u5931\u8D25: ${s}`,i.message)}return n}else try{let n=new Zx;await n.getSurl(e);let s=await n.getShareList();return s?ba(r,s):[]}catch(n){return console.error("\u5904\u7406\u767E\u5EA6\u94FE\u63A5\u5931\u8D25:",e,n.message),[]}}async function KG(e,t){let r=Date.now();await n_(e);let{path:n,uk:s,shareid:i,fsid:a,surl:o,pwd:c,subtitleFsid:u}=Fpn(e.body.id),l=h8t({surl:o,pwd:c,uk:s,shareid:i},o),d=l.surl||o,f=l.uk||s,h=l.shareid||i;if(!n||!d||!f||!h||!a)return Xr("\u767E\u5EA6\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u4E0D\u5B8C\u6574");let p=`${n}*${f}*${h}*${a}`,m=encodeURIComponent(p),g=d,_=RB.get(`${d}_${a}`),y=x0();bpn(g,{surl:d,pwd:l.pwd,uk:f,shareid:h,accountKey:y});let A=u?lmn(e,{path:n,uk:f,shareid:h,subtitleFsid:u,surl:d,pwd:l.pwd}):null,E=A?A.ref:null,v=nw(g,p,iu);if(jpn(v))return console.log("[baidu play] perf",JSON.stringify({shareKey:su(g,12),fileKey:su(a,12),cacheHit:!0,handoffAgeMs:Date.now()-Number(v.createdAt||Date.now()),handoffRemainingMs:Math.max(0,Number(v.expiresAt||0)-Date.now()),totalMs:Date.now()-r})),J5t(e,{shareId:g,encodedFileId:m,cacheEntry:v.cacheEntry,subtitleRef:E,skipReuse:!0});let{drive:b}=Bxe({surl:d,pwd:l.pwd,uk:f,shareid:h},d);try{let I=await Uxe({drive:b,path:n,uk:f,shareid:h,fsid:a,surl:d});if(I){let T=p8t({fileId:p,fileSize:_,directUrl:I,accountKey:b.accountKey}),x=J5t(e,{shareId:g,encodedFileId:m,cacheEntry:T,subtitleRef:E});return console.log("[baidu play] perf",JSON.stringify({shareKey:su(g,12),fileKey:su(a,12),cacheHit:!1,totalMs:Date.now()-r})),x}}catch(I){console.debug("[baidu play] app dlink failed:",String(I?.message||I).slice(0,160))}return console.error("\u83B7\u53D6\u767E\u5EA6\u539F\u753B\u76F4\u94FE\u5931\u8D25"),Xr("\u767E\u5EA6\u7F51\u76D8\u83B7\u53D6\u539F\u753B\u76F4\u94FE\u5931\u8D25")}async function v8t(e,t){try{let r=e.params.site,n=e.params.shareId,s=e.params.fileId,i=e.params.flag;if(r!=="baidu")return t.status(400).send({error:"\u65E0\u6548\u7684\u7AD9\u70B9"});if(i==="subt"){let u=rmn(n,s);if(u?.directUrl){if((await Pxe({shareId:n,fileId:s,expectedKind:t_,targetUrl:u.directUrl,requestHeaders:u.requestHeaders}))?.failure?.disposition===ew)return t.status(503).send({error:"\u5B57\u5E55\u5730\u5740\u6682\u4E0D\u53EF\u7528\uFF0C\u8BF7\u91CD\u8BD5"});Dxe(t),t.redirect(u.directUrl);return}let l=Br(decodeURIComponent(String(s||"")),{fieldOrder:["subPath","subUk","subShareId","subFsid","subSurl","encodedPwd"]});if(!l.subPath||!l.subUk||!l.subShareId||!l.subFsid)return t.status(400).send({error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"});let{subPath:d,subUk:f,subShareId:h,subFsid:p,subSurl:m="",encodedPwd:g=""}=l,{drive:_}=Bxe({surl:m,pwd:g?VG(g):"",uk:f,shareid:h},m||n),y=null;try{y=await Uxe({drive:_,path:d,uk:f,shareid:h,fsid:p,surl:m||n})}catch(A){throw $G(n,s,t_,A,{stage:"subtitle_fetch",deliveryMode:"redirect"}),A}if(!y)return $G(n,s,t_,{response:{status:404},message:"subtitle direct url empty"},{stage:"subtitle_fetch_empty",deliveryMode:"redirect"}),t.status(404).send({error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"});Hxe(n,Gpn({fileId:s,directUrl:y}),s),Dxe(t),t.redirect(y);return}let a=tmn(n,s);if(!a&&(i===xB||i==="down")){let u=await Kpn({shareId:n,fileId:s});if(!u.cacheEntry)return t.status(u.statusCode||410).send({error:u.error||"\u64AD\u653E\u5730\u5740\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u8BF7\u6C42\u64AD\u653E\u5730\u5740"});a=u.cacheEntry}let o=imn(a,i);if(!o.targetUrl)return t.status(o.statusCode||500).send({error:o.error||"\u4EE3\u7406\u5931\u8D25"});let c=await amn(e);return await umn(e,t,{targetUrl:o.targetUrl,fileId:s,requestHeaders:o.requestHeaders,contentLength:o.contentLength,settings:c})}catch(r){console.error("[baidu proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function b8t(e="/",t=1,r=100){let n=sl.get("baidu_cookie")||"";if(!n)return console.warn("[baidu own][list] cookie empty"),{folderList:[],fileList:[],count:0};let s=Math.max(1,Number.parseInt(t,10)||1),i="https://pan.baidu.com/api/list";try{let a=await ye.get(i,{headers:{"User-Agent":S8t,Referer:"https://pan.baidu.com/disk/main",cookie:n},params:{order:"time",desc:1,showempty:0,web:5,page:s,num:r,dir:e||"/",clienttype:0,app_id:250528},timeout:1e4});if(Number(a.data?.errno)!==0||!Array.isArray(a.data?.list))return console.warn("[baidu own][list] non-zero errno=%s",a.data?.errno),{folderList:[],fileList:[],count:0};let o=[],c=[];return a.data.list.forEach(u=>{Number(u.isdir)===1?o.push(u):c.push(u)}),{folderList:o,fileList:c,count:a.data.list.length}}catch(a){return console.error("[baidu own] listOwnFiles \u5931\u8D25:",a?.message||a),{folderList:[],fileList:[],count:0}}}async function gmn(e){try{return(await ye.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%5B%22uid%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:{"User-Agent":S8t,cookie:e},timeout:8e3})).data?.data?.fields?.uid||"default_uid"}catch{return"default_uid"}}async function GG(e){let t=sl.get("baidu_cookie")||"";if(!t||!e)return"";let r=xxe(t,"BDUSS");if(!r)return console.warn("[baidu own][download] cookie missing BDUSS"),"";try{let n=await gmn(t),s=String(Date.now()),a=c8t({sha1:u=>r_.default.SHA1(u).toString(r_.default.enc.Hex),bduss:r,uid:n,time:s}),o=`https://pan.baidu.com/api/filemetas?app_id=250528&fsids=%5B${encodeURIComponent(String(e))}%5D&dlink=1&origin=dlna&devuid=${Mxe}&clienttype=1&channel=${e8t}&version=${Lxe}&time=${s}&rand=${a}`,c=await ye.get(o,{headers:{"User-Agent":T8t,Referer:"https://pan.baidu.com/",cookie:t},timeout:1e4});if(Number(c.data?.errno)===0){let u=u8t(c.data);if(u[0]?.dlink)return u[0].dlink}return console.warn("[baidu own][download] errno=%s, body=%s",c.data?.errno,JSON.stringify(c.data||{}).slice(0,200)),""}catch(n){return console.error("[baidu own] getOwnDownload \u5931\u8D25:",n?.message||n),""}}var Z5t,r_,Rxe,sl,RB,Lxe,e8t,_pn,qG,Mxe,Apn,Jx,Epn,ypn,vpn,Spn,CB,UG,IB,t8t,r8t,n8t,n_,Zx,NB,d8t,xB,f8t,iu,t_,Y5t,wpn,Npn,Opn,Dpn,ew,tw,wB,Ppn,Lpn,Mpn,kpn,Bpn,fy,S8t,T8t,I8t,LB=ie(()=>{vr();Z5t=Ne(cx(),1),r_=Ne(Yi(),1);la();kE();Jc();yi();Zc();ql();S0();A0();el();Rxe=class{constructor(){this.localData={},this.db=null,this.initialized=!1,this._writeChain=Promise.resolve()}async init(t){this.db=t;try{let r=await this.db.getObjectDefault("/baidu_driver",{});return this.localData=r,this.initialized=!0,!0}catch{return this.localData={},this.initialized=!1,!1}}_enqueue(t){let r=this._writeChain.then(t,t);return this._writeChain=r.catch(()=>{}),r}async set(t,r){return this.db?this._enqueue(async()=>{let n=this.localData[t];this.localData[t]=r;try{let s={};try{s=await this.db.getObjectDefault("/baidu_driver",{})}catch{}let i={...s,...this.localData,[t]:r};return await this.db.push("/baidu_driver",i),t==="baidu_cookie"&&n!==r&&Upn(),!0}catch{return!1}}):!1}get(t){return this.localData[t]}async delete(t){return this.db?this._enqueue(async()=>{delete this.localData[t];try{let r=await this.db.getObjectDefault("/baidu_driver",{});delete r[t];let n={...r,...this.localData};return await this.db.push("/baidu_driver",n),!0}catch{return!1}}):!1}getAll(){return{...this.localData}}async clear(){return this._enqueue(async()=>{this.localData={};try{return await this.db.delete("/baidu_driver"),!0}catch{return!1}})}isInitialized(){return this.initialized}},sl=new Rxe,RB=ts("baidu.fileSize",{maxSize:2e3,ttl:60*60*1e3}),Lxe="12.0.0",e8t="android_12_zhao_bd-netdisk_1024266h",_pn=`${Lxe}ae5821440fab5e1a61a025f014bd8972`,qG="netdisk;P2SP;2.2.91.136;android-android;",Mxe="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",Apn="ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF",Jx=500,Epn=60*60*1e3,ypn=2*60*60*1e3,vpn=12*60*60*1e3,Spn=5*60*1e3,CB=new Map,UG=new Map,IB=new Map,t8t=new Map,r8t=new Map,n8t=new Map;n_=async e=>{sl.isInitialized()||await sl.init(e.server.db)};Zx=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.randsk=""}get cookie(){return a8t()}get legacyCookie(){return i8t()}get shareCookie(){return this.randsk?V5t(this.cookie,"BDCLND",this.randsk):this.cookie}get accountKey(){return x0(this.cookie)}async getSurl(t){this.link=t;let r=this.regex.exec(t);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.slice(1),this.pwd=r[2]||"",BG(this))}async getSign(){let t={...this.headers,cookie:this.shareCookie},r=await ye.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:t,timeout:8e3});if(!r.data?.data?.sign)throw new Error("\u83B7\u53D6sign\u5931\u8D25");return r.data.data.sign}async getRandsk(t=1e4,r={}){let n=r?.forceRefresh===!0,s={surl:this.surl,pwd:this.pwd,accountKey:this.accountKey};if(n)this.randsk="",K5t(s);else if(BG(this),this.randsk)return this.randsk;let i=HG(s),a=await Cxe(t8t,i,async()=>{let o=n?null:o8t(s);if(o?.randsk)return o.randsk;let c=Z5t.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),u=this.link;try{u=new URL(this.link).toString()}catch{u=`${this.api}/s/${this.surl}${this.pwd?`?pwd=${encodeURIComponent(this.pwd)}`:""}`}let l=await ye.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,c,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Referer:u},timeout:t});if(!l.data?.randsk){console.warn("[baidu auth] share verify missing randsk",{errno:l.data?.errno,shareKey:su(this.surl,12),accountKey:this.accountKey.slice(0,12)});let d=new Error("\u83B7\u53D6randsk\u5931\u8D25");throw d.baiduErrno=Number(l.data?.errno),d}return j5t(s,l.data.randsk),l.data.randsk});return this.randsk=a,a}async getShareList(){let t=Date.now();BG(this),this.headers.cookie=this.randsk?this.shareCookie:this.legacyCookie||this.cookie;let r=!1,n=async(a=1,o=[],c={})=>{let l=(await ye.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=${a}&num=${Jx}&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers,timeout:1e4})).data;if(a===1&&(c.uk=l?.uk||c.uk||"",c.shareid=l?.share_id||l?.shareid||c.shareid||"",c.errno=Number(l?.errno),c.hasList=Array.isArray(l?.list)),Number(l?.errno)===-21)return console.warn("[baidu detail] share canceled",JSON.stringify({surl:this.surl,shorturl:this.shorturl})),c.canceled=!0,{items:o,meta:c};if(l.errno!==0||!Array.isArray(l.list)||l.list.length===0)return{items:o,meta:c};o.push(...l.list);let d=Number(l.has_more||l.hasMore||0)===1||Number(l.records?.has_more||0)===1,f=Number(l.num||Jx);return d||l.list.length>=f?await n(a+1,o,c):{items:o,meta:c}},s=await n();if(s.items.length>0&&!this.randsk){let a=xxe(this.legacyCookie,"BDCLND");a&&(this.randsk=a,j5t({surl:this.surl,pwd:this.pwd,accountKey:this.accountKey},a))}!s.meta?.canceled&&s.items.length===0&&(s.meta?.errno!==0||!s.meta?.hasList)&&(await this.getRandsk(),r=!0,this.headers.cookie=this.shareCookie,s=await n(1,[],{retriedAfterVerify:!0}));let i=s.items||[];if(s.meta?.canceled)return[];if(i.length>0){let a=[],o=[];this.uk=s.meta?.uk||i[0]?.uk||this.uk,this.shareid=s.meta?.shareid||i[0]?.share_id||i[0]?.shareid||this.shareid;let c=[],u=[];for(let d of i)if((d.category==="6"||d.category===6)&&o.push(d.path),d.category==="1"||d.category===1)d.name=d.server_filename||d.path.split("/").pop(),c.push(d);else{let f=d.server_filename||d.path?.split("/").pop()||"";St(f)&&(d.name=f,u.push(d))}let l=Gt(c);for(let d of l){let f=d.fs_id||d.fsid,h=xr(d.name,u,_=>_.server_filename||_.path?.split("/").pop()||_.name||""),p=h&&(h.fs_id||h.fsid)||"",m=encodeURIComponent(this.pwd||""),g=d.path.replaceAll("#","\0");RB.set(`${this.surl}_${f}`,d.size),a.push({vod_name:d.name,vod_id:Dt([g,this.uk,this.shareid,f,this.surl,m,p],{structured:!0}),vod_size:d.size})}if(o.length>0){let d=Date.now(),f=o.map(p=>this.getSharepath(p));(await Promise.allSettled(f)).forEach(p=>{p.status==="fulfilled"&&p.value?.length>0&&a.push(...p.value)}),console.log("[baidu detail] perf",JSON.stringify({surl:this.surl,rootItems:i.length,rootDirs:o.length,totalVideos:a.length,verifiedForList:r,pageSize:Jx,subdirMs:Date.now()-d,totalMs:Date.now()-t}))}else console.log("[baidu detail] perf",JSON.stringify({surl:this.surl,rootItems:i.length,rootDirs:0,totalVideos:a.length,verifiedForList:r,pageSize:Jx,subdirMs:0,totalMs:Date.now()-t}));return a}return null}async getSharepath(t){this.headers.cookie=this.shareCookie;let r=async(s=1,i=[])=>{let o=(await ye.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=${s}&num=${Jx}&dir=${encodeURIComponent(t)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers,timeout:8e3})).data;if(o.errno!==0||!Array.isArray(o.list)||o.list.length===0)return i;i.push(...o.list);let c=Number(o.has_more||o.hasMore||0)===1||Number(o.records?.has_more||0)===1,u=Number(o.num||Jx);return c||o.list.length>=u?await r(s+1,i):i},n=await r();if(n.length>0){let s=[],i=[],a=[];for(let u of n)if((u.category==="6"||u.category===6)&&s.push(u.path),u.category==="1"||u.category===1)u.name=u.server_filename||u.path.split("/").pop(),i.push(u);else{let l=u.server_filename||u.path?.split("/").pop()||"";St(l)&&(u.name=l,a.push(u))}let o=Gt(i),c=[];for(let u of o){let l=u.fs_id||u.fsid,d=xr(u.name,a,m=>m.server_filename||m.path?.split("/").pop()||m.name||""),f=d&&(d.fs_id||d.fsid)||"",h=encodeURIComponent(this.pwd||""),p=u.path.replaceAll("#","\0");RB.set(`${this.surl}_${l}`,u.size),c.push({vod_name:u.name,vod_id:Dt([p,this.uk,this.shareid,l,this.surl,h,f],{structured:!0}),vod_size:u.size})}if(s.length>0){let u=s.map(f=>this.getSharepath(f)),d=(await Promise.allSettled(u)).filter(f=>f.status==="fulfilled"&&f.value?.length>0).flatMap(f=>f.value);return[...c,...d]}return c}return[]}sha1(t){return r_.default.SHA1(t).toString(r_.default.enc.Hex)}async getUid(){let t=this.accountKey,r=IB.get(t);return r&&(r.expiresAt||0)>Date.now()?r.uid:(r&&IB.delete(t),await Cxe(r8t,t,async()=>{let n=IB.get(t);if(n&&(n.expiresAt||0)>Date.now())return n.uid;let s={...this.headers,cookie:this.cookie},a=(await ye.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:s,timeout:8e3})).data?.data?.fields?.uid;return a?(IB.set(t,{uid:a,createdAt:Date.now(),expiresAt:Date.now()+vpn}),a):"default_uid"}))}async getShareUrl(t,r,n,s){t=t.replaceAll("\0","#");let i=await this.getSign(),a=Math.floor(Date.now()/1e3),o=[];return this.type.forEach(c=>{o.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${a}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),o}async getAppShareUrl(t,r,n,s){t=t.replaceAll("\0","#");let[i,a]=await Promise.all([this.getUid(),this.getRandsk()]),o=a,c=this.cookie,u=xxe(c,"BDUSS");if(!u)return console.warn("[baidu share][app] cookie missing BDUSS"),null;let l=async f=>{let h={...this.headers,"User-Agent":qG,Referer:"https://pan.baidu.com/",cookie:V5t(c,"BDCLND",f)},p=String(Date.now()),m=c8t({sha1:this.sha1.bind(this),bduss:u,uid:i,time:p}),g=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+f+"&origin=dlna&devuid="+Mxe+"&clienttype=1&channel="+e8t+"&version="+Lxe+"&time="+p+"&rand="+m,_=await ye.get(g,{headers:h,timeout:1e4}),y=Number(_.data?.errno)===0?u8t(_.data):[];return{errno:Number(_.data?.errno),directUrl:y[0]?.dlink||"",hasList:Array.isArray(_.data?.list),hasInfo:Array.isArray(_.data?.info)}},d=await l(o);return!d.directUrl&&d.errno===-9&&this.pwd&&(K5t({surl:this.surl,pwd:this.pwd,accountKey:this.accountKey}),o=await this.getRandsk(1e4,{forceRefresh:!0}),d=await l(o)),d.directUrl?d.directUrl:(console.warn("[baidu share][app] no dlink errno=%s hasList=%s hasInfo=%s shareKey=%s fileKey=%s",d.errno,d.hasList,d.hasInfo,su(this.surl,12),su(s,12)),null)}};NB="app",d8t="web",xB="redirect",f8t="chunk",iu="play",t_="subtitle",Y5t=30*60*1e3,wpn=128,Npn=128,Opn=1024,Dpn=1024,ew="invalidate",tw="retain",wB="mark",Ppn=5*60*1e3,Lpn=2*60*1e3,Mpn=10*60*1e3,kpn=2500,Bpn=60*1e3,fy=Object.create(null);S8t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",T8t=qG;I8t={"User-Agent":T8t,Referer:"https://pan.baidu.com/"}});var jxe={};kt(jxe,{detail:()=>Es,getPanInfos:()=>Ca,init:()=>Ti,isEmpty:()=>tIe,play:()=>Ps,proxy:()=>ys,test:()=>bmn,ua:()=>MB});async function Ti(e,t){return{}}function zG(e,t="srt",r="\u5916\u6302\u5B57\u5E55"){return e?[{url:e,name:r,format:t||"srt"}]:[]}async function vmn(e){let t=new Map,r=20;for(let n=0;n{let o=`type_${a}`,c=s_.get(o);if(c&&Date.now()-c.timestamp{try{let a=null;switch(e){case"ali":a=await J3t(t,r);break;case"quark":a=await pUt(t,r);break;case"uc":a=await OUt(t,r);break;case"tianyi":let o=await dy.getShareData(t);if(o?.length>0){let u=await ht("tianyi"),l=xo(u,o,!1);l&&(a=[l])}break;case"yidong":let c=await gb.getShareData(t);if(c?.length>0){let u=await ht("yidong"),l=xo(u,c,!1);l&&(a=[l])}break;case"123":a=await J4t(t,r);break;case"115":a=await hBt(t,r);break;case"baidu":a=await y8t(t,r);break;case"xunlei":a=await KFt(t,r);break;case"magnet":a=await p3t(t,r);break;case"guangya":a=await i3t(t);break}if(a=Array.isArray(a)?a:[],s&&s_.set(n,{data:a,timestamp:Date.now()}),s_.size>200){let o=Array.from(s_.keys());for(let c=0;c<50;c++)s_.delete(o[c])}return{data:a,type:e}}catch(a){return console.debug(`\u5904\u7406${e}\u94FE\u63A5\u5931\u8D25:`,t,a.message),{data:[],type:e}}})}function Tmn(e,t){let r=new Map,n=[];for(let s=0;sC8t&&s_.delete(y);if(e=Array.isArray(e)?e:[e],e.length===0)return{froms:"",urls:"",links:[]};let n=await vmn(e),s=new Map;for(let[y,A]of e.entries()){let E=n.get(A);E&&(s.has(E)||s.set(E,[]),s.get(E).push({url:A,sourceIndex:y}))}let i=[],a=[],o=Array.from(s.entries()).map(async([y,A])=>{let E=A.map(({url:b,sourceIndex:I})=>Smn(y,b,t).then(T=>({...T,shareUrl:b,sourceIndex:I})));(await Promise.allSettled(E)).forEach(b=>{if(b.status==="fulfilled"&&b.value.data.length>0){let I=!1;b.value.data.forEach((T,x)=>{T?.from&&T?.url&&(i.push({from:T.from,url:T.url,type:b.value.type,routeKey:T.routeKey||"",sourceIndex:b.value.sourceIndex,routeIndex:x}),I=!0)}),I&&a.push({type:b.value.type,url:b.value.shareUrl,sourceIndex:b.value.sourceIndex})}})});if(await Promise.all(o),i.length===0)return{froms:"",urls:"",links:[]};let c=globalThis.Pans||[],u=new Map;c.forEach((y,A)=>{u.set(y.key,A)});let l=[];for(let y of i){let A=y.type,E=A==="magnet"?c.find(v=>v.key==="magnet"&&v.enable)||c.find(v=>v.key==="magnet_guangya"&&v.enable):c.find(v=>v.key===A);E&&E.enable&&l.push({...y,order:u.get(A)??999,subOrder:Nj(A,y.routeKey,c)})}if(l.sort((y,A)=>y.order-A.order||y.sourceIndex-A.sourceIndex||y.subOrder-A.subOrder||y.routeIndex-A.routeIndex),l.length===0)return{froms:"",urls:"",links:[]};let d=l.map(y=>y.from),f=l.map(y=>y.url),h=l.map(y=>y.type),p=Tmn(d,h),m=new Set(l.map(y=>y.type)),g=new Map,_=a.filter(y=>m.has(y.type)).sort((y,A)=>(u.get(y.type)??999)-(u.get(A.type)??999)||y.sourceIndex-A.sourceIndex).map(y=>{let A=c.find(v=>v.key===y.type)?.name||ht(y.type)||y.type,E=(g.get(A)||0)+1;return g.set(A,E),{name:E===1?A:`${A}${E}`,url:y.url}});return{froms:p.join("$$$"),urls:f.join("$$$"),links:_}}async function ys(e,t){switch(e.params.site){case"ali":return await tUt(e,t);case"quark":return await mUt(e,t);case"uc":return await LUt(e,t);case"baidu":return await v8t(e,t);case"115":return await pBt(e,t);case"tianyi":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};await mb(e);{let n=await dy.getShareUrl(e.params.fileId,e.params.shareId);if(!n)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(n);return}case"yidong":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};{let n=await gb.getSharePlay(e.params.fileId,e.params.shareId);if(!n)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(n);return}case"123":if(e.params.flag==="direct")return await X4t(e,t,e.params.fileId);if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};await b0(e);{let n=String(e.params.fileId||""),s=n;try{s=decodeURIComponent(n)}catch{}let i=s.split("*");if(i.length<4)return t.code(400),{error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"};let a=await rl.getDownload(e.params.shareId,i[0],i[1],i[2],i[3]);if(!a)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(a);return}case"xunlei":if(e.params.flag==="subt"){await nu(e);{let n=String(e.params.fileId||""),s=Br(n,{decodeUri:!0});if(s.length<4)return t.code(400),{error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"};let i=await qFt(e.params.shareId,s[0],s[1],s[2],s[3],!1);if(!i)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(i);return}}return await HFt(e,t);case"guangya":return await l3t(e,t);default:return{error:"\u4E0D\u652F\u6301\u7684\u7AD9\u70B9"}}}async function Ps(e,t){let r=String(e?.body?.flag||""),n=String(e?.body?.id||""),s=["\u78C1\u529B","115\u4E91\u8F6C\u5B58","\u5149\u9E2D\u4E91\u8F6C\u5B58",ht("magnet"),ht("magnet_guangya")].filter(Boolean),i=n.startsWith("gyown*")||s.some(a=>r.startsWith(a));if(r.startsWith("\u79D2\u4F20115"))return await sB(e,t);if(r.startsWith("\u79D2\u4F20123"))return await kRe(e,t);if(r.startsWith(QK))return await fB(e,t);if(i)return await m3t(e,t);if(r.startsWith(await ht("ali")))return await sB(e,t);if(r.startsWith(await ht("quark")))return await UK(e,t);if(r.startsWith(await ht("uc")))return await fB(e,t);if(r.startsWith(await ht("tianyi"))){let a=Br(n);await mb(e);let o=await dy.getShareUrl(a[0],a[1]),c=Vg(e,"tianyi"),u={parse:0,url:U5t(a[0])?["\u5FEB\u4F20",o]:["\u539F\u753B",o]};if(a[3]){let l=`${c}/src/subt/${a[1]}/${encodeURIComponent(a[3])}/.srt`;return ei({parse:0,urls:u.url,subtitles:zG(l,"srt")})}return u}else if(r.startsWith(await ht("yidong"))){let a=Br(n),o;try{o=await gb.getSharePlayInfo(a[0],a[1],a[3]||"")}catch(d){return Xr(`\u79FB\u52A8\u4E91\u76D8\u64AD\u653E\u5931\u8D25: ${d?.message||d}`)}let c=o?.url||"";if(!c)return Xr(o?.error||"\u79FB\u52A8\u4E91\u76D8\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");let u=Vg(e,"yidong"),l={parse:0,url:["\u539F\u753B",c]};if(a[2]){let d=`${u}/src/subt/${a[1]}/${encodeURIComponent(a[2])}/.srt`;return ei({parse:0,urls:l.url,subtitles:zG(d,"srt")})}return l}else{if(r.startsWith(await ht("guangya")))return await EK(e);if(r.startsWith(Rx)){let a=Br(n),o=a[0]==="direct"?String(a[1]||"").trim():"";return await nK(e,o,a[2])||Xr("123\u65E0\u9650\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740")}else if(r.startsWith(await ht("123"))){await b0(e);let a=Br(n),o=Vg(e,"123"),u={parse:0,url:["\u539F\u753B",await rl.getDownload(a[0],a[1],a[2],a[3],a[4])]};if(a[5]&&a[6]&&a[7]&&a[8]){let l=encodeURIComponent([a[5],a[6],a[7],a[8]].join("*")),d=`${o}/src/subt/${a[0]}/${l}/.srt`;return ei({parse:0,urls:u.url,subtitles:zG(d,"srt")})}return u}else{if(r.startsWith(await ht("115")))return await kRe(e,t);if(r.startsWith(await ht("baidu")))return await KG(e,t);if(r.startsWith(await ht("xunlei"))){await nu(e);let a=Br(n),o=a[0]||"",c=a[1]||"",u=a[2]||"",l=a[3]||"",d=a[4]?decodeURIComponent(a[4]):"",f=await axe(o,c,u,d,l,!0),h=Vg(e,"xunlei"),p=encodeURIComponent([c,u,l,encodeURIComponent(d||"")].join("*")),m=["\u4EE3\u7406",`${h}/src/down/${a[0]}/${p}/.bin`],g=["\u539F\u753B",`${h}/src/redirect/${a[0]}/${p}/.bin`],_=[...m];for(let A=0;A0){let a=n.home.class[0].type_id,o={};if(n.home.filters?.[a]&&n.home.filters[a].forEach(c=>{let u=c.init;u&&c.value.forEach(l=>{l.v==u&&(o[c.key]=u)})}),s=await e.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),console.debug(s.json()),n.category.list?.length>0){i=!0;let c=n.category.list[0].vod_id;await R8t(e,c,n)}}if(s=await e.server.inject().post(`${r}/search`).payload({wd:"\u6D4B\u8BD5",page:1}),n.search=s.json(),console.debug(s.json()),!i&&n.search.list?.length>0){let a=n.search.list[0].vod_id;await R8t(e,a,n)}return n}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}async function R8t(e,t,r){let n=e.server.prefix,s=await e.server.inject().post(`${n}/detail`).payload({id:t});if(r.detail=s.json(),console.debug(s.json()),r.detail.list?.length>0){r.play=[];for(let i of r.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{Ds();Px();cB();hB();hG();SK();bxe();Ixe();Y4();QE();LB();Ox();la();PE();Zc();yi();S0();ql();jg();PE();MB=lx,Vxe=class{constructor(t=5){this.maxConcurrency=t,this.queue=[],this.running=0}async process(t){return new Promise((r,n)=>{this.queue.push({task:t,resolve:r,reject:n}),this.run()})}async run(){if(this.running>=this.maxConcurrency||this.queue.length===0)return;this.running++;let{task:t,resolve:r,reject:n}=this.queue.shift();try{let s=await t();r(s)}catch(s){n(s)}finally{this.running--,this.run()}}};s_=new Map,C8t=10*60*1e3,Amn=5*60*1e3,Emn="subtitle_v2";ymn=new Vxe(10);Ca=()=>[{key:"yidong",name:ht("yidong"),validator:Ej,pic:"https://pp.myapp.com/ma_icon/0/icon_242055_1780279783/256"},{key:"tianyi",name:ht("tianyi"),validator:Aj,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"115",name:ht("115"),validator:vj,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"quark",name:ht("quark"),validator:gj,pic:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTxSZTMZgv4lvF6G3HU0O9yXx59bF4vNJkY_ZvT5lQWog&s=10"},{key:"uc",name:ht("uc"),validator:_j,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0"},{key:"ali",name:ht("ali"),validator:mj,pic:"https://cdn-1.webcatalog.io/catalog/aliyundrive/aliyundrive-icon-filled-256.png?v=1714773187515"},{key:"123",name:ht("123"),validator:yj,pic:"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSr7z3sM7s5fyeHphwYvBGwjOroJIEltqMqB9b8W5WFfSXViOzxMRjmgv0&s=10"},{key:"baidu",name:ht("baidu"),validator:Sj,pic:"https://p1.ssl.qhimgs1.com/bdr/576__/t0414ace7e627f1689b.jpg"},{key:"xunlei",name:ht("xunlei"),validator:oMt,pic:"https://img.nkzy.com/nkzy/imgfile/20240130/30171032v4el.png"},{key:"guangya",name:ht("guangya"),validator:bj,pic:"https://pp.myapp.com/ma_icon/0/icon_54641066_1783673467/256"},{key:"magnet",name:ht("magnet"),validator:Tj,pic:"https://img.icons8.com/fluency/96/magnet.png"}]});var Qxe={};kt(Qxe,{buildRequestKey:()=>_b,clearInflightRequests:()=>Rmn,getConcurrencyStats:()=>Yxe,getInflightStats:()=>N8t,getLimiter:()=>QG,getLimiterStats:()=>w8t,limiterTypeFromSpiderUrl:()=>Gxe,resetInflightStats:()=>zxe,withConcurrencyControl:()=>$n,withInflightDedup:()=>sw});function QG(e="default"){return YG[e]||YG.default}function Gxe(e){if(typeof e!="string"||!e.startsWith("/spider/"))return null;let t=e.match(/^\/spider\/[^/]+\/[^/]+\/([^/?]+)/);if(!t)return null;let r=t[1];return Object.prototype.hasOwnProperty.call(x8t,r)&&r!=="default"?r:null}function w8t(){return Object.entries(YG).map(([e,t])=>({type:e,...t.stats}))}async function sw(e,t,r=3e4){if(w0.totalRequests++,Ep.has(e))return w0.dedupedRequests++,Ep.get(e);let n=Promise.race([t(),new Promise((s,i)=>setTimeout(()=>i(new Error(`Request timeout after ${r}ms`)),r))]).finally(()=>{Ep.delete(e),w0.activeRequests=Ep.size});return Ep.set(e,n),w0.activeRequests=Ep.size,n}function N8t(){return{count:Ep.size,totalRequests:w0.totalRequests,dedupedRequests:w0.dedupedRequests,dedupRate:w0.totalRequests>0?w0.dedupedRequests/w0.totalRequests:0,keys:Array.from(Ep.keys())}}function zxe(){w0={totalRequests:0,dedupedRequests:0,activeRequests:Ep.size}}async function $n(e,t,r,n,s={}){let{enableDedup:i=!0,timeout:a=3e4,limiterType:o=t}=s,c=QG(o),u=`${e}:${t}:${r}`;return c.run(async()=>i?sw(u,n,a):n())}function _b(e,t={}){let r=Object.entries(t).filter(([n,s])=>s!=null).sort(([n],[s])=>n.localeCompare(s));return r.length===0?e:`${e}:${JSON.stringify(r)}`}function Rmn(){Ep.clear(),w0.activeRequests=0}function Yxe(){return{limiters:w8t(),inflight:N8t()}}var Kxe,Imn,x8t,YG,Ep,w0,fa=ie(()=>{Kxe=class{constructor(t){this.baseConcurrency=t,this.concurrency=t,this.activeCount=0,this.pendingCount=0,this.queue=[],this.memoryPressureMode=!1}adjustConcurrency(){let r=process.memoryUsage().rss,n=200*1024*1024,s=240*1024*1024;r>s?(this.concurrency=Math.max(5,Math.floor(this.baseConcurrency*.2)),this.memoryPressureMode=!0):r>n?(this.concurrency=Math.max(10,Math.floor(this.baseConcurrency*.5)),this.memoryPressureMode=!0):(this.concurrency=this.baseConcurrency,this.memoryPressureMode=!1)}async run(t){return new Promise((r,n)=>{this.queue.push({fn:t,resolve:r,reject:n}),this.pendingCount=this.queue.length,this.tryRun()})}tryRun(){if(this.activeCount%10===0&&this.adjustConcurrency(),this.activeCount>=this.concurrency||this.queue.length===0)return;let{fn:t,resolve:r,reject:n}=this.queue.shift();this.pendingCount=this.queue.length,this.activeCount++,Promise.resolve().then(()=>t()).then(r,n).finally(()=>{this.activeCount--,this.tryRun()})}get stats(){return{activeCount:this.activeCount,pendingCount:this.pendingCount,limit:this.concurrency,baseLimit:this.baseConcurrency,memoryPressure:this.memoryPressureMode}}async acquire(){return new Promise(t=>{this.queue.push({fn:()=>new Promise(r=>t(r)),resolve:()=>{},reject:()=>{}}),this.pendingCount=this.queue.length,this.tryRun()})}},Imn=parseInt(process.env.SEARCH_CONCURRENCY||"50",10),x8t={home:20,category:30,detail:30,play:40,search:Imn,default:50},YG={};for(let[e,t]of Object.entries(x8t))YG[e]=new Kxe(t);Ep=new Map,w0={totalRequests:0,dedupedRequests:0,activeRequests:0}});var Xxe={};kt(Xxe,{AD_QUERY_KEY_RE:()=>O8t,isLikelyAdSegment:()=>P8t,normalizeM3U8Content:()=>Wxe,sanitizeMediaUrl:()=>Ab,stripAivinLeadingAdBlock:()=>L8t});function xmn(e){if(typeof e!="string")return"";try{return decodeURIComponent(e)}catch{return e}}function D8t(e,t=3){let r=String(e||"").trim();for(let n=0;n0&&t<=2&&/(ad|gg|promo)/i.test(r)):!1}function Nmn(e,t){let r=String(e||"").trim();return!r||!/URI=/i.test(r)?r:r.replace(/URI=(?:"([^"]+)"|([^,]+))/i,(n,s,i)=>{let a=String(s||i||"").trim();if(!a)return n;let o=Ab(WG(D8t(a),t));return/^https?:\/\//i.test(o)?`URI="${o}"`:n})}function Omn(e,t=2){try{let r=new URL(e),s=(r.pathname||"").split("/").filter(Boolean).slice(0,t).join("/");return`${r.host}/${s}`}catch{return""}}function L8t(e,t){let r=e.map(p=>String(p||"").trim()).filter(Boolean),n=NaN,s=[],i=new Map;for(let p=0;po&&(a=p,o=m);if(!a||op.sig===a);if(!c||!u||u.lineIndex<=c.lineIndex)return r;let l=[];for(let p=0;p=0;p--){let m=r[p];if(m){if(!m.startsWith("#"))break;if(m.startsWith("#EXTINF:")||m.startsWith("#EXT-X-KEY")||m.startsWith("#EXT-X-MAP")||m.startsWith("#EXT-X-BYTERANGE")||m==="#EXT-X-DISCONTINUITY"){d=p;continue}break}}let f=r.slice(d);for(;f.length>0&&f[0]==="#EXT-X-DISCONTINUITY";)f.shift();for(;f.length>0&&f[f.length-1]==="#EXT-X-DISCONTINUITY";)f.pop();if(f.length===0)return r;let h=[...l.filter((p,m)=>l.indexOf(p)===m&&!f.includes(p)),...f];return h[0]!=="#EXTM3U"&&h.unshift("#EXTM3U"),h}function Wxe(e,t,r=null){let n=wmn(e);if(!n.includes("#EXTM3U"))return n;let s=n.replace(/\r\n/g,` +`).split(` +`),i=[];for(let c=0;c0&&i[i.length-1]==="#EXT-X-DISCONTINUITY"&&i.pop(),c=p;continue}}}i.push(f);continue}let d=Ab(WG(l,t));d&&(d.toLowerCase().includes(".m3u8")&&typeof r=="function"?i.push(r(d)):i.push(d))}let a=L8t(i,t),o=[];for(let c=0;c{Cmn=/^#EXT-(?:X-DATERANGE|X-CUE-OUT|X-CUE-OUT-CONT|X-CUE-IN|X-ASSET|OATCLS-SCTE35|X-SCTE35)/i,O8t=/^(ad|ads|adv|advert|advertise|adtag|adid|adurl|adtoken|gg|popup|pop|commercial)$/i});var sz=S(i_=>{"use strict";Object.defineProperty(i_,"__esModule",{value:!0});i_.DefaultXMLBuilderCBOptions=i_.XMLBuilderOptionKeys=i_.DefaultBuilderOptions=void 0;i_.DefaultBuilderOptions={version:"1.0",encoding:void 0,standalone:void 0,keepNullNodes:!1,keepNullAttributes:!1,ignoreConverters:!1,skipWhitespaceOnlyText:!0,convert:{att:"@",ins:"?",text:"#",cdata:"$",comment:"!"},defaultNamespace:{ele:void 0,att:void 0},namespaceAlias:{html:"http://www.w3.org/1999/xhtml",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"},invalidCharReplacement:void 0,parser:void 0};i_.XMLBuilderOptionKeys=new Set(Object.keys(i_.DefaultBuilderOptions));i_.DefaultXMLBuilderCBOptions={format:"xml",wellFormed:!1,prettyPrint:!1,indent:" ",newline:` +`,offset:0,width:0,allowEmptyTags:!1,spaceBeforeSlash:!1,keepNullNodes:!1,keepNullAttributes:!1,ignoreConverters:!1,convert:{att:"@",ins:"?",text:"#",cdata:"$",comment:"!"},defaultNamespace:{ele:void 0,att:void 0},namespaceAlias:{html:"http://www.w3.org/1999/xhtml",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"}}});var G8t=S(iz=>{"use strict";Object.defineProperty(iz,"__esModule",{value:!0});iz.FixedSizeSet=void 0;var fwe=class{_limit;_items=new Set;constructor(t=1e3){this._limit=t}add(t){if(this._items.add(t),this._items.size>this._limit){let r=this._items.values().next();r.done||this._items.delete(r.value)}return this}delete(t){return this._items.delete(t)}has(t){return this._items.has(t)}clear(){this._items.clear()}get size(){return this._items.size}forEach(t,r){this._items.forEach(n=>t.call(r,n,n,this))}*keys(){yield*this._items.keys()}*values(){yield*this._items.values()}*entries(){yield*this._items.entries()}*[Symbol.iterator](){yield*this._items}get[Symbol.toStringTag](){return"FixedSizeSet"}};iz.FixedSizeSet=fwe});var z8t=S(az=>{"use strict";Object.defineProperty(az,"__esModule",{value:!0});az.ObjectCache=void 0;var hwe=class{_limit;_items=new Map;constructor(t=1e3){this._limit=t}get(t){return this._items.get(t)}set(t,r){if(this._items.set(t,r),this._items.size>this._limit){let n=this._items.keys().next();n.done||this._items.delete(n.value)}}delete(t){return this._items.delete(t)}has(t){return this._items.has(t)}clear(){this._items.clear()}get size(){return this._items.size}forEach(t,r){this._items.forEach((n,s)=>t.call(r,s,n))}*keys(){yield*this._items.keys()}*values(){yield*this._items.values()}*entries(){yield*this._items.entries()}*[Symbol.iterator](){yield*this._items}get[Symbol.toStringTag](){return"ObjectCache"}};az.ObjectCache=hwe});var Y8t=S(oz=>{"use strict";Object.defineProperty(oz,"__esModule",{value:!0});oz.CompareCache=void 0;var pwe=class{_limit;_items=new Map;constructor(t=1e3){this._limit=t}check(t,r){if(this._items.get(t)===r)return!0;if(this._items.get(r)===t)return!1;let n=Math.random()<.5;if(n?this._items.set(t,r):this._items.set(r,t),this._items.size>this._limit){let s=this._items.keys().next();s.done||this._items.delete(s.value)}return n}};oz.CompareCache=pwe});var Q8t=S(cz=>{"use strict";Object.defineProperty(cz,"__esModule",{value:!0});cz.Lazy=void 0;var mwe=class{_initialized=!1;_initFunc;_value;constructor(t){this._value=void 0,this._initFunc=t}get value(){return this._initialized||(this._value=this._initFunc(),this._initialized=!0),this._value}};cz.Lazy=mwe});var W8t=S(uz=>{"use strict";Object.defineProperty(uz,"__esModule",{value:!0});uz.StringWalker=void 0;var gwe=class{_chars;_length;_pointer=0;_codePoint;_c;_remaining;_substring;constructor(t){this._chars=Array.from(t),this._length=this._chars.length}get eof(){return this._pointer>=this._length}get length(){return this._length}codePoint(){if(this._codePoint===void 0)if(this.eof)this._codePoint=-1;else{let t=this._chars[this._pointer].codePointAt(0);t!==void 0?this._codePoint=t:this._codePoint=-1}return this._codePoint}c(){return this._c===void 0&&(this._c=this.eof?"":this._chars[this._pointer]),this._c}remaining(){return this._remaining===void 0&&(this._remaining=this.eof?"":this._chars.slice(this._pointer+1).join("")),this._remaining}substring(){return this._substring===void 0&&(this._substring=this.eof?"":this._chars.slice(this._pointer).join("")),this._substring}get pointer(){return this._pointer}set pointer(t){t!==this._pointer&&(this._pointer=t,this._codePoint=void 0,this._c=void 0,this._remaining=void 0,this._substring=void 0)}};uz.StringWalker=gwe});var Jn=S(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});gn.StringWalker=gn.Lazy=gn.CompareCache=gn.ObjectCache=gn.FixedSizeSet=void 0;gn.applyMixin=fgn;gn.applyDefaults=X8t;gn.forEachArray=hgn;gn.forEachObject=J8t;gn.arrayLength=pgn;gn.objectLength=mgn;gn.getObjectValue=ggn;gn.removeObjectValue=_gn;gn.clone=lz;gn.isBoolean=Agn;gn.isNumber=Egn;gn.isString=ygn;gn.isFunction=_we;gn.isObject=Awe;gn.isArray=Ewe;gn.isSet=ywe;gn.isMap=iw;gn.isEmpty=vgn;gn.isPlainObject=vwe;gn.isIterable=Sgn;gn.getValue=Tgn;gn.utf8Encode=bgn;gn.utf8Decode=Ign;var ogn=G8t();Object.defineProperty(gn,"FixedSizeSet",{enumerable:!0,get:function(){return ogn.FixedSizeSet}});var cgn=z8t();Object.defineProperty(gn,"ObjectCache",{enumerable:!0,get:function(){return cgn.ObjectCache}});var ugn=Y8t();Object.defineProperty(gn,"CompareCache",{enumerable:!0,get:function(){return ugn.CompareCache}});var lgn=Q8t();Object.defineProperty(gn,"Lazy",{enumerable:!0,get:function(){return lgn.Lazy}});var dgn=W8t();Object.defineProperty(gn,"StringWalker",{enumerable:!0,get:function(){return dgn.StringWalker}});function fgn(e,t,...r){Object.getOwnPropertyNames(t.prototype).forEach(n=>{if(n!=="constructor"){if(r.indexOf(n)!==-1){let i=Object.getOwnPropertyDescriptor(e.prototype,n);i&&Object.defineProperty(e.prototype,"_"+n,i)}let s=Object.getOwnPropertyDescriptor(t.prototype,n);s&&Object.defineProperty(e.prototype,n,s)}})}function X8t(e,t,r=!1){let n=lz(e||{});return J8t(t,(s,i)=>{vwe(i)?n[s]=X8t(n[s],i,r):(r||n[s]===void 0)&&(n[s]=i)}),n}function hgn(e,t,r){e.forEach(t,r)}function J8t(e,t,r){if(iw(e))e.forEach((n,s)=>t.call(r,s,n));else for(let n in e)e.hasOwnProperty(n)&&t.call(r,n,e[n])}function pgn(e){return ywe(e)?e.size:e.length}function mgn(e){return iw(e)?e.size:Object.keys(e).length}function ggn(e,t){return iw(e)?e.get(t):e[t]}function _gn(e,t){iw(e)?e.delete(t):delete e[t]}function lz(e){if(_we(e))return e;if(Ewe(e)){let t=[];for(let r of e)t.push(lz(r));return t}else if(vwe(e)){let t={};for(let r in e)if(e.hasOwnProperty(r)){let n=e[r];t[r]=lz(n)}return t}else return e}function Agn(e){return typeof e=="boolean"}function Egn(e){return typeof e=="number"}function ygn(e){return typeof e=="string"}function _we(e){return!!e&&typeof e=="function"}function Awe(e){let t=typeof e;return!!e&&(t==="function"||t==="object")}function Ewe(e){return Array.isArray(e)}function ywe(e){return e instanceof Set}function iw(e){return e instanceof Map}function vgn(e){if(Ewe(e))return!e.length;if(ywe(e))return!e.size;if(iw(e))return!e.size;if(Awe(e)){for(let t in e)if(e.hasOwnProperty(t))return!1;return!0}return!1}function vwe(e){if(Awe(e)){let t=Object.getPrototypeOf(e),r=t.constructor;return t&&r&&typeof r=="function"&&r instanceof r&&Function.prototype.toString.call(r)===Function.prototype.toString.call(Object)}return!1}function Sgn(e){return e&&typeof e[Symbol.iterator]=="function"}function Tgn(e){return _we(e.valueOf)?e.valueOf():e}function bgn(e){let t=new Uint8Array(e.length*4),r=0;for(let n=0;n>6|192;else{if(s>55295&&s<56320){if(++n>=e.length)throw new Error("Incomplete surrogate pair.");let i=e.charCodeAt(n);if(i<56320||i>57343)throw new Error("Invalid surrogate character.");s=65536+((s&1023)<<10)+(i&1023),t[r++]=s>>18|240,t[r++]=s>>12&63|128}else t[r++]=s>>12|224;t[r++]=s>>6&63|128}t[r++]=s&63|128}return t.subarray(0,r)}function Ign(e){let t="",r=0;for(;r127)if(n>191&&n<224){if(r>=e.length)throw new Error("Incomplete 2-byte sequence.");n=(n&31)<<6|e[r++]&63}else if(n>223&&n<240){if(r+1>=e.length)throw new Error("Incomplete 3-byte sequence.");n=(n&15)<<12|(e[r++]&63)<<6|e[r++]&63}else if(n>239&&n<248){if(r+2>=e.length)throw new Error("Incomplete 4-byte sequence.");n=(n&7)<<18|(e[r++]&63)<<12|(e[r++]&63)<<6|e[r++]&63}else throw new Error("Unknown multi-byte start.");if(n<=65535)t+=String.fromCharCode(n);else if(n<=1114111)n-=65536,t+=String.fromCharCode(n>>10|55296),t+=String.fromCharCode(n&1023|56320);else throw new Error("Code point exceeds UTF-16 limit.")}return t}});var Qn=S(hc=>{"use strict";Object.defineProperty(hc,"__esModule",{value:!0});hc.HowToCompare=hc.WhatToShow=hc.FilterResult=hc.Position=hc.NodeType=hc.EventPhase=hc.BoundaryPosition=void 0;var Z8t;(function(e){e[e.Before=0]="Before",e[e.Equal=1]="Equal",e[e.After=2]="After"})(Z8t||(hc.BoundaryPosition=Z8t={}));var e$t;(function(e){e[e.None=0]="None",e[e.Capturing=1]="Capturing",e[e.AtTarget=2]="AtTarget",e[e.Bubbling=3]="Bubbling"})(e$t||(hc.EventPhase=e$t={}));var t$t;(function(e){e[e.Element=1]="Element",e[e.Attribute=2]="Attribute",e[e.Text=3]="Text",e[e.CData=4]="CData",e[e.EntityReference=5]="EntityReference",e[e.Entity=6]="Entity",e[e.ProcessingInstruction=7]="ProcessingInstruction",e[e.Comment=8]="Comment",e[e.Document=9]="Document",e[e.DocumentType=10]="DocumentType",e[e.DocumentFragment=11]="DocumentFragment",e[e.Notation=12]="Notation"})(t$t||(hc.NodeType=t$t={}));var r$t;(function(e){e[e.SameNode=0]="SameNode",e[e.Disconnected=1]="Disconnected",e[e.Preceding=2]="Preceding",e[e.Following=4]="Following",e[e.Contains=8]="Contains",e[e.ContainedBy=16]="ContainedBy",e[e.ImplementationSpecific=32]="ImplementationSpecific"})(r$t||(hc.Position=r$t={}));var n$t;(function(e){e[e.Accept=1]="Accept",e[e.Reject=2]="Reject",e[e.Skip=3]="Skip"})(n$t||(hc.FilterResult=n$t={}));var s$t;(function(e){e[e.All=4294967295]="All",e[e.Element=1]="Element",e[e.Attribute=2]="Attribute",e[e.Text=4]="Text",e[e.CDataSection=8]="CDataSection",e[e.EntityReference=16]="EntityReference",e[e.Entity=32]="Entity",e[e.ProcessingInstruction=64]="ProcessingInstruction",e[e.Comment=128]="Comment",e[e.Document=256]="Document",e[e.DocumentType=512]="DocumentType",e[e.DocumentFragment=1024]="DocumentFragment",e[e.Notation=2048]="Notation"})(s$t||(hc.WhatToShow=s$t={}));var i$t;(function(e){e[e.StartToStart=0]="StartToStart",e[e.StartToEnd=1]="StartToEnd",e[e.EndToEnd=2]="EndToEnd",e[e.EndToStart=3]="EndToStart"})(i$t||(hc.HowToCompare=i$t={}))});var kB=S(dz=>{"use strict";Object.defineProperty(dz,"__esModule",{value:!0});dz.LocalNameSet=void 0;var Swe=class{_items={};_nullItems={};set(t,r){t===null?this._nullItems[r]=!0:this._items[t]?this._items[t][r]=!0:(this._items[t]={},this._items[t][r]=!0)}has(t,r){return t===null?this._nullItems[r]===!0:this._items[t]?this._items[t][r]===!0:!1}};dz.LocalNameSet=Swe});var hz=S(fz=>{"use strict";Object.defineProperty(fz,"__esModule",{value:!0});fz.NamespacePrefixMap=void 0;var Twe=class e{_items={};_nullItems=[];copy(){let t=new e;for(let r in this._items)t._items[r]=this._items[r].slice(0);return t._nullItems=this._nullItems.slice(0),t}get(t,r){let n=r===null?this._nullItems:this._items[r]||null;if(n===null)return null;let s=null;for(let i=0;i{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.ASCIIAlphanumeric=sn.ASCIIAlpha=sn.ASCIILowerAlpha=sn.ASCIIUpperAlpha=sn.ASCIIHexDigit=sn.ASCIILowerHexDigit=sn.ASCIIUpperHexDigit=sn.ASCIIDigit=sn.Control=sn.C0ControlOrSpace=sn.C0Control=sn.ASCIIWhiteSpace=sn.ASCIITabOrNewLine=sn.ASCIICodePoint=sn.NonCharacter=sn.ScalarValue=sn.Surrogate=void 0;sn.Surrogate=/[\uD800-\uDFFF]/;sn.ScalarValue=/[\uD800-\uDFFF]/;sn.NonCharacter=/[\uFDD0-\uFDEF\uFFFE\uFFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]/;sn.ASCIICodePoint=/[\u0000-\u007F]/;sn.ASCIITabOrNewLine=/[\t\n\r]/;sn.ASCIIWhiteSpace=/[\t\n\f\r ]/;sn.C0Control=/[\u0000-\u001F]/;sn.C0ControlOrSpace=/[\u0000-\u001F ]/;sn.Control=/[\u0000-\u001F\u007F-\u009F]/;sn.ASCIIDigit=/[0-9]/;sn.ASCIIUpperHexDigit=/[0-9A-F]/;sn.ASCIILowerHexDigit=/[0-9a-f]/;sn.ASCIIHexDigit=/[0-9A-Fa-f]/;sn.ASCIIUpperAlpha=/[A-Z]/;sn.ASCIILowerAlpha=/[a-z]/;sn.ASCIIAlpha=/[A-Za-z]/;sn.ASCIIAlphanumeric=/[0-9A-Za-z]/});var a$t=S(mz=>{"use strict";Object.defineProperty(mz,"__esModule",{value:!0});mz.forgivingBase64Encode=Cgn;mz.forgivingBase64Decode=xgn;var Rgn=pz();function Cgn(e){return Buffer.from(e).toString("base64")}function xgn(e){return e===""?"":(e=e.replace(Rgn.ASCIIWhiteSpace,""),e.length%4===0&&(e.endsWith("==")?e=e.substr(0,e.length-2):e.endsWith("=")&&(e=e.substr(0,e.length-1))),e.length%4===1||!/[0-9A-Za-z+/]/.test(e)?null:Buffer.from(e,"base64").toString("utf8"))}});var Iwe=S(bwe=>{"use strict";Object.defineProperty(bwe,"__esModule",{value:!0});bwe.isASCIIByte=wgn;function wgn(e){return e>=0&&e<=127}});var Rwe=S(a_=>{"use strict";Object.defineProperty(a_,"__esModule",{value:!0});a_.length=Ngn;a_.byteLowercase=Ogn;a_.byteUppercase=Dgn;a_.byteCaseInsensitiveMatch=Pgn;a_.startsWith=Lgn;a_.byteLessThan=Mgn;a_.isomorphicDecode=kgn;function Ngn(e){return e.length}function Ogn(e){for(let t=0;t=65&&r<=90&&(e[t]=r+32)}}function Dgn(e){for(let t=0;t=97&&r<=122&&(e[t]=r-32)}}function Pgn(e,t){if(e.length!==t.length)return!1;for(let r=0;r=65&&n<=90&&(n+=32),s>=65&&s<=90&&(s+=32),n!==s)return!1}return!0}function Lgn(e,t){let r=0;for(;;){if(r>=e.length)return!1;if(r>=t.length)return!0;if(e[r]!==t[r])return!1;r++}}function Mgn(e,t){let r=0;for(;;){if(r>=e.length)return!1;if(r>=t.length)return!0;let n=e[r],s=t[r];if(ns)return!1;r++}}function kgn(e){return String.fromCodePoint(...e)}});var o$t=S(ow=>{"use strict";Object.defineProperty(ow,"__esModule",{value:!0});ow.parseJSONFromBytes=Bgn;ow.serializeJSONToBytes=Ugn;ow.parseJSONIntoInfraValues=Fgn;ow.convertAJSONDerivedJavaScriptValueToAnInfraValue=gz;var aw=Jn();function Bgn(e){let t=(0,aw.utf8Decode)(e);return JSON.parse.call(void 0,t)}function Ugn(e){let t=JSON.stringify.call(void 0,e);return(0,aw.utf8Encode)(t)}function Fgn(e){let t=JSON.parse.call(void 0,e);return gz(t)}function gz(e){if(e===null||(0,aw.isString)(e)||(0,aw.isNumber)(e))return e;if((0,aw.isArray)(e)){let t=new Array;for(let r of e)t.push(gz(r));return t}else if((0,aw.isObject)(e)){let t=new Map;for(let r in e)if(e.hasOwnProperty(r)){let n=e[r];t.set(r,gz(n))}return t}return e}});var c$t=S(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});pc.append=$gn;pc.extend=qgn;pc.prepend=Hgn;pc.replace=Vgn;pc.insert=jgn;pc.remove=Kgn;pc.empty=Ggn;pc.contains=zgn;pc.size=Ygn;pc.isEmpty=Qgn;pc.forEach=Wgn;pc.clone=Xgn;pc.sortInAscendingOrder=Jgn;pc.sortInDescendingOrder=Zgn;var Cwe=Jn();function $gn(e,t){e.push(t)}function qgn(e,t){e.push(...t)}function Hgn(e,t){e.unshift(t)}function Vgn(e,t,r){let n=0;for(let s of e){if((0,Cwe.isFunction)(t))t.call(null,s)&&(e[n]=r);else if(s===t){e[n]=r;return}n++}}function jgn(e,t,r){e.splice(r,0,t)}function Kgn(e,t){let r=e.length;for(;r--;){let n=e[r];if((0,Cwe.isFunction)(t))t.call(null,n)&&e.splice(r,1);else if(n===t){e.splice(r,1);return}}}function Ggn(e){e.length=0}function zgn(e,t){for(let r of e)if((0,Cwe.isFunction)(t)){if(t.call(null,r))return!0}else if(r===t)return!0;return!1}function Ygn(e,t){if(t===void 0)return e.length;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function Qgn(e){return e.length===0}function*Wgn(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function Xgn(e){return new Array(...e)}function Jgn(e,t){return e.sort((r,n)=>t.call(null,r,n)?-1:1)}function Zgn(e,t){return e.sort((r,n)=>t.call(null,r,n)?1:-1)}});var l$t=S(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});il.get=e_n;il.set=t_n;il.remove=r_n;il.contains=n_n;il.keys=s_n;il.values=i_n;il.size=a_n;il.isEmpty=o_n;il.forEach=c_n;il.clone=u_n;il.sortInAscendingOrder=l_n;il.sortInDescendingOrder=d_n;var u$t=Jn();function e_n(e,t){return e.get(t)}function t_n(e,t,r){e.set(t,r)}function r_n(e,t){if(!(0,u$t.isFunction)(t))e.delete(t);else{let r=[];for(let n of e)t.call(null,n)&&r.push(n[0]);for(let n of r)e.delete(n)}}function n_n(e,t){if((0,u$t.isFunction)(t)){for(let r of e)if(t.call(null,r))return!0;return!1}else return e.has(t)}function s_n(e){return new Set(e.keys())}function i_n(e){return[...e.values()]}function a_n(e,t){if(t===void 0)return e.size;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function o_n(e){return e.size===0}function*c_n(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function u_n(e){return new Map(e)}function l_n(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?-1:1),new Map(r)}function d_n(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?1:-1),new Map(r)}});var d$t=S(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.XLink=al.SVG=al.MathML=al.XMLNS=al.XML=al.HTML=void 0;al.HTML="http://www.w3.org/1999/xhtml";al.XML="http://www.w3.org/XML/1998/namespace";al.XMLNS="http://www.w3.org/2000/xmlns/";al.MathML="http://www.w3.org/1998/Math/MathML";al.SVG="http://www.w3.org/2000/svg";al.XLink="http://www.w3.org/1999/xlink"});var f$t=S(_z=>{"use strict";Object.defineProperty(_z,"__esModule",{value:!0});_z.enqueue=f_n;_z.dequeue=h_n;function f_n(e,t){e.push(t)}function h_n(e){return e.shift()||null}});var p$t=S(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.append=p_n;Ji.extend=m_n;Ji.prepend=g_n;Ji.replace=__n;Ji.insert=A_n;Ji.remove=E_n;Ji.empty=y_n;Ji.contains=v_n;Ji.size=S_n;Ji.isEmpty=T_n;Ji.forEach=b_n;Ji.clone=I_n;Ji.sortInAscendingOrder=R_n;Ji.sortInDescendingOrder=C_n;Ji.isSubsetOf=h$t;Ji.isSupersetOf=x_n;Ji.intersection=w_n;Ji.union=N_n;Ji.range=O_n;var xwe=Jn();function p_n(e,t){e.add(t)}function m_n(e,t){t.forEach(e.add,e)}function g_n(e,t){let r=new Set(e);e.clear(),e.add(t),r.forEach(e.add,e)}function __n(e,t,r){let n=new Set;for(let s of e)(0,xwe.isFunction)(t)?t.call(null,s)?n.add(r):n.add(s):s===t?n.add(r):n.add(s);e.clear(),n.forEach(e.add,e)}function A_n(e,t,r){let n=new Set,s=0;for(let i of e)s===r&&n.add(t),n.add(i),s++;e.clear(),n.forEach(e.add,e)}function E_n(e,t){if(!(0,xwe.isFunction)(t))e.delete(t);else{let r=[];for(let n of e)t.call(null,n)&&r.push(n);for(let n of r)e.delete(n)}}function y_n(e){e.clear()}function v_n(e,t){if((0,xwe.isFunction)(t)){for(let r of e)if(t.call(null,r))return!0}else return e.has(t);return!1}function S_n(e,t){if(t===void 0)return e.size;{let r=0;for(let n of e)t.call(null,n)&&r++;return r}}function T_n(e){return e.size===0}function*b_n(e,t){if(t===void 0)yield*e;else for(let r of e)t.call(null,r)&&(yield r)}function I_n(e){return new Set(e)}function R_n(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?-1:1),new Set(r)}function C_n(e,t){let r=new Array(...e);return r.sort((n,s)=>t.call(null,n,s)?1:-1),new Set(r)}function h$t(e,t){for(let r of e)if(!t.has(r))return!1;return!0}function x_n(e,t){return h$t(t,e)}function w_n(e,t){let r=new Set;for(let n of e)t.has(n)&&r.add(n);return r}function N_n(e,t){let r=new Set(e);return t.forEach(r.add,r),r}function O_n(e,t){let r=new Set;for(let n=e;n<=t;n++)r.add(n);return r}});var m$t=S(Az=>{"use strict";Object.defineProperty(Az,"__esModule",{value:!0});Az.push=D_n;Az.pop=P_n;function D_n(e,t){e.push(t)}function P_n(e){return e.pop()||null}});var S$t=S(Zi=>{"use strict";Object.defineProperty(Zi,"__esModule",{value:!0});Zi.isCodeUnitPrefix=wwe;Zi.isCodeUnitLessThan=k_n;Zi.isomorphicEncode=_$t;Zi.isASCIIString=A$t;Zi.asciiLowercase=Nwe;Zi.asciiUppercase=B_n;Zi.asciiCaseInsensitiveMatch=U_n;Zi.asciiEncode=F_n;Zi.asciiDecode=$_n;Zi.stripNewlines=q_n;Zi.normalizeNewlines=H_n;Zi.stripLeadingAndTrailingASCIIWhitespace=Dwe;Zi.stripAndCollapseASCIIWhitespace=V_n;Zi.collectASequenceOfCodePoints=Eb;Zi.skipASCIIWhitespace=Owe;Zi.strictlySplit=E$t;Zi.splitAStringOnASCIIWhitespace=y$t;Zi.splitAStringOnCommas=v$t;Zi.concatenate=j_n;var g$t=pz(),L_n=Rwe(),M_n=Iwe(),Ez=Jn();function wwe(e,t){let r=0;for(;;){let n=r=65&&n<=90?t+=String.fromCodePoint(n+32):t+=r}return t}function B_n(e){let t="";for(let r of e){let n=r.codePointAt(0);n!==void 0&&n>=97&&n<=122?t+=String.fromCodePoint(n-32):t+=r}return t}function U_n(e,t){return Nwe(e)===Nwe(t)}function F_n(e){return console.assert(A$t(e),"asciiEncode requires an ASCII string."),_$t(e)}function $_n(e){for(let t of e)console.assert((0,M_n.isASCIIByte)(t),"asciiDecode requires an ASCII byte sequence.");return(0,L_n.isomorphicDecode)(e)}function q_n(e){return e.replace(/[\n\r]/g,"")}function H_n(e){return e.replace(/\r\n/g,` `).replace(/\r/g,` -`)}function SEe(e){return e.replace(/^[\t\n\f\r ]+/,"").replace(/[\t\n\f\r ]+$/,"")}function zXr(e){return SEe(e.replace(/[\t\n\f\r ]{2,}/g," "))}function Gb(e,t,r){if(!(0,fH.isArray)(t))return Gb(e,Array.from(t),r);let n="";for(;r.positionKDt.ASCIIWhiteSpace.test(r),e,t)}function QDt(e,t){if(!(0,fH.isArray)(e))return QDt(Array.from(e),t);let r={position:0},n=[],i=Gb(s=>t!==s,e,r);for(n.push(i);r.positiont!==s,e,r),n.push(i);return n}function GDt(e){if(!(0,fH.isArray)(e))return GDt(Array.from(e));let t={position:0},r=[];for(EEe(e,t);t.position!KDt.ASCIIWhiteSpace.test(i),e,t);r.push(n),EEe(e,t)}return r}function YDt(e){if(!(0,fH.isArray)(e))return YDt(Array.from(e));let t={position:0},r=[];for(;t.positioni!==",",e,t);r.push(SEe(n)),t.position{"use strict";var GXr=nn&&nn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),YXr=nn&&nn.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),Kl=nn&&nn.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(n[n.length]=i);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),i=0;i{"use strict";Object.defineProperty(wEe,"__esModule",{value:!0});wEe.idl_defineConst=uJr;function uJr(e,t,r){Object.defineProperty(e,t,{writable:!1,enumerable:!0,configurable:!1,value:r})}});var IEe=b(hH=>{"use strict";Object.defineProperty(hH,"__esModule",{value:!0});hH.DOMImplementationImpl=void 0;var cJr=ps(),Ex=Ts(),df=en(),lJr=So(),pH=class e{_ID="@oozcitak/dom";_associatedDocument;constructor(t){this._associatedDocument=t||cJr.dom.window.document}createDocumentType(t,r,n){return(0,df.namespace_validate)(t),(0,df.create_documentType)(this._associatedDocument,t,r,n)}createDocument(t,r,n=null){let i=(0,df.create_xmlDocument)(),s=null;return r&&(s=(0,df.document_internalCreateElementNS)(i,t,r)),n&&i.appendChild(n),s&&i.appendChild(s),i._origin=this._associatedDocument._origin,t===Ex.namespace.HTML?i._contentType="application/xhtml+xml":t===Ex.namespace.SVG?i._contentType="image/svg+xml":i._contentType="application/xml",i}createHTMLDocument(t){let r=(0,df.create_document)();r._type="html",r._contentType="text/html",r.appendChild((0,df.create_documentType)(r,"html","",""));let n=(0,df.element_createAnElement)(r,"html",Ex.namespace.HTML);r.appendChild(n);let i=(0,df.element_createAnElement)(r,"head",Ex.namespace.HTML);if(n.appendChild(i),t!==void 0){let a=(0,df.element_createAnElement)(r,"title",Ex.namespace.HTML);i.appendChild(a);let o=(0,df.create_text)(r,t);a.appendChild(o)}let s=(0,df.element_createAnElement)(r,"body",Ex.namespace.HTML);return n.appendChild(s),r._origin=this._associatedDocument._origin,r}hasFeature(){return!0}static _create(t){return new e(t)}};hH.DOMImplementationImpl=pH;(0,lJr.idl_defineConst)(pH.prototype,"_ID","@oozcitak/dom")});var $s=b(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.InvalidCharacterError=ht.SyntaxError=ht.IndexSizeError=ht.NotFoundError=ht.HierarchyRequestError=ht.NotImplementedError=ht.DataCloneError=ht.InvalidNodeTypeError=ht.TimeoutError=ht.QuotaExceededError=ht.URLMismatchError=ht.AbortError=ht.NetworkError=ht.SecurityError=ht.TypeMismatchError=ht.ValidationError=ht.InvalidAccessError=ht.NamespaceError=ht.InvalidModificationError=ht.InvalidStateError=ht.InUseAttributeError=ht.NotSupportedError=ht.NoModificationAllowedError=ht.NoDataAllowedError=ht.WrongDocumentError=ht.DOMStringSizeError=ht.DOMException=void 0;var vn=class extends Error{name;constructor(t,r=""){super(r),this.name=t}};ht.DOMException=vn;var xEe=class extends vn{constructor(t=""){super("DOMStringSizeError",t)}};ht.DOMStringSizeError=xEe;var CEe=class extends vn{constructor(t=""){super("WrongDocumentError","The object is in the wrong document. "+t)}};ht.WrongDocumentError=CEe;var TEe=class extends vn{constructor(t=""){super("NoDataAllowedError",t)}};ht.NoDataAllowedError=TEe;var NEe=class extends vn{constructor(t=""){super("NoModificationAllowedError","The object can not be modified. "+t)}};ht.NoModificationAllowedError=NEe;var REe=class extends vn{constructor(t=""){super("NotSupportedError","The operation is not supported. "+t)}};ht.NotSupportedError=REe;var DEe=class extends vn{constructor(t=""){super("InUseAttributeError",t)}};ht.InUseAttributeError=DEe;var kEe=class extends vn{constructor(t=""){super("InvalidStateError","The object is in an invalid state. "+t)}};ht.InvalidStateError=kEe;var OEe=class extends vn{constructor(t=""){super("InvalidModificationError","The object can not be modified in this way. "+t)}};ht.InvalidModificationError=OEe;var PEe=class extends vn{constructor(t=""){super("NamespaceError","The operation is not allowed by Namespaces in XML. [XMLNS] "+t)}};ht.NamespaceError=PEe;var MEe=class extends vn{constructor(t=""){super("InvalidAccessError","The object does not support the operation or argument. "+t)}};ht.InvalidAccessError=MEe;var LEe=class extends vn{constructor(t=""){super("ValidationError",t)}};ht.ValidationError=LEe;var BEe=class extends vn{constructor(t=""){super("TypeMismatchError",t)}};ht.TypeMismatchError=BEe;var $Ee=class extends vn{constructor(t=""){super("SecurityError","The operation is insecure. "+t)}};ht.SecurityError=$Ee;var FEe=class extends vn{constructor(t=""){super("NetworkError","A network error occurred. "+t)}};ht.NetworkError=FEe;var UEe=class extends vn{constructor(t=""){super("AbortError","The operation was aborted. "+t)}};ht.AbortError=UEe;var qEe=class extends vn{constructor(t=""){super("URLMismatchError","The given URL does not match another URL. "+t)}};ht.URLMismatchError=qEe;var jEe=class extends vn{constructor(t=""){super("QuotaExceededError","The quota has been exceeded. "+t)}};ht.QuotaExceededError=jEe;var HEe=class extends vn{constructor(t=""){super("TimeoutError","The operation timed out. "+t)}};ht.TimeoutError=HEe;var KEe=class extends vn{constructor(t=""){super("InvalidNodeTypeError","The supplied node is incorrect or has an incorrect ancestor for this operation. "+t)}};ht.InvalidNodeTypeError=KEe;var VEe=class extends vn{constructor(t=""){super("DataCloneError","The object can not be cloned. "+t)}};ht.DataCloneError=VEe;var zEe=class extends vn{constructor(t=""){super("NotImplementedError","The DOM method is not implemented by this module. "+t)}};ht.NotImplementedError=zEe;var QEe=class extends vn{constructor(t=""){super("HierarchyRequestError","The operation would yield an incorrect node tree. "+t)}};ht.HierarchyRequestError=QEe;var GEe=class extends vn{constructor(t=""){super("NotFoundError","The object can not be found here. "+t)}};ht.NotFoundError=GEe;var YEe=class extends vn{constructor(t=""){super("IndexSizeError","The index is not in the allowed range. "+t)}};ht.IndexSizeError=YEe;var WEe=class extends vn{constructor(t=""){super("SyntaxError","The string did not match the expected pattern. "+t)}};ht.SyntaxError=WEe;var XEe=class extends vn{constructor(t=""){super("InvalidCharacterError","The string contains invalid characters. "+t)}};ht.InvalidCharacterError=XEe});var ZEe=b(mH=>{"use strict";Object.defineProperty(mH,"__esModule",{value:!0});mH.Guard=void 0;var ou=fn(),JEe=class e{static isNode(t){return!!t&&t._nodeType!==void 0}static isDocumentNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.Document}static isDocumentTypeNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.DocumentType}static isDocumentFragmentNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.DocumentFragment}static isAttrNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.Attribute}static isCharacterDataNode(t){if(!e.isNode(t))return!1;let r=t._nodeType;return r===ou.NodeType.Text||r===ou.NodeType.ProcessingInstruction||r===ou.NodeType.Comment||r===ou.NodeType.CData}static isTextNode(t){return e.isNode(t)&&(t._nodeType===ou.NodeType.Text||t._nodeType===ou.NodeType.CData)}static isExclusiveTextNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.Text}static isCDATASectionNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.CData}static isCommentNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.Comment}static isProcessingInstructionNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.ProcessingInstruction}static isElementNode(t){return e.isNode(t)&&t._nodeType===ou.NodeType.Element}static isCustomElementNode(t){return e.isElementNode(t)&&t._customElementState==="custom"}static isShadowRoot(t){return!!t&&t.host!==void 0}static isMouseEvent(t){return!!t&&t.screenX!==void 0&&t.screenY!=null}static isSlotable(t){return!!t&&t._name!==void 0&&t._assignedSlot!==void 0&&(e.isTextNode(t)||e.isElementNode(t))}static isSlot(t){return!!t&&t._name!==void 0&&t._assignedNodes!==void 0&&e.isElementNode(t)}static isWindow(t){return!!t&&t.navigator!==void 0}static isEventListener(t){return!!t&&t.handleEvent!==void 0}static isRegisteredObserver(t){return!!t&&t.observer!==void 0&&t.options!==void 0}static isTransientRegisteredObserver(t){return!!t&&t.source!==void 0&&e.isRegisteredObserver(t)}};mH.Guard=JEe});var XDt=b(gH=>{"use strict";Object.defineProperty(gH,"__esModule",{value:!0});gH.Cast=void 0;var dJr=ZEe(),e1e=class{static asNode(t){if(dJr.Guard.isNode(t))return t;throw new Error("Invalid object. Node expected.")}};gH.Cast=e1e});var JDt=b(yH=>{"use strict";Object.defineProperty(yH,"__esModule",{value:!0});yH.EmptySet=void 0;var t1e=class{get size(){return 0}add(t){throw new Error("Cannot add to an empty set.")}clear(){}delete(t){return!1}forEach(t,r){}has(t){return!1}[Symbol.iterator](){return new Sx}entries(){return new Sx}keys(){return new Sx}values(){return new Sx}get[Symbol.toStringTag](){return"EmptySet"}};yH.EmptySet=t1e;var Sx=class{[Symbol.iterator](){return this}next(){return{done:!0,value:null}}}});var Ln=b(u_=>{"use strict";Object.defineProperty(u_,"__esModule",{value:!0});u_.EmptySet=u_.Guard=u_.Cast=void 0;var fJr=XDt();Object.defineProperty(u_,"Cast",{enumerable:!0,get:function(){return fJr.Cast}});var pJr=ZEe();Object.defineProperty(u_,"Guard",{enumerable:!0,get:function(){return pJr.Guard}});var hJr=JDt();Object.defineProperty(u_,"EmptySet",{enumerable:!0,get:function(){return hJr.EmptySet}})});var uM=b(_H=>{"use strict";Object.defineProperty(_H,"__esModule",{value:!0});_H.EventTargetImpl=void 0;var mJr=$s(),ZDt=Ln(),wx=en(),r1e=class{__eventListenerList;get _eventListenerList(){return this.__eventListenerList||(this.__eventListenerList=[])}__eventHandlerMap;get _eventHandlerMap(){return this.__eventHandlerMap||(this.__eventHandlerMap={})}constructor(){}addEventListener(t,r,n={passive:!1,once:!1,capture:!1}){let[i,s,a]=(0,wx.eventTarget_flattenMore)(n),o;if(r)ZDt.Guard.isEventListener(r)?o=r:o={handleEvent:r};else return;(0,wx.eventTarget_addEventListener)(this,{type:t,callback:o,capture:i,passive:s,once:a,removed:!1})}removeEventListener(t,r,n={capture:!1}){let i=(0,wx.eventTarget_flatten)(n);if(r)for(let s=0;s{"use strict";Object.defineProperty(AH,"__esModule",{value:!0});AH.WindowImpl=void 0;var gJr=uM(),yJr=gn(),_Jr=en(),n1e=class e extends gJr.EventTargetImpl{_currentEvent;_signalSlots=new Set;_mutationObserverMicrotaskQueued=!1;_mutationObservers=new Set;_associatedDocument;_iteratorList=new yJr.FixedSizeSet;constructor(){super(),this._associatedDocument=(0,_Jr.create_document)()}get document(){return this._associatedDocument}get event(){return this._currentEvent}static _create(){return new e}};AH.WindowImpl=n1e});var tkt=b(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});Ix.OpaqueOrigin=Ix.ParserState=void 0;var ekt;(function(e){e[e.SchemeStart=0]="SchemeStart",e[e.Scheme=1]="Scheme",e[e.NoScheme=2]="NoScheme",e[e.SpecialRelativeOrAuthority=3]="SpecialRelativeOrAuthority",e[e.PathOrAuthority=4]="PathOrAuthority",e[e.Relative=5]="Relative",e[e.RelativeSlash=6]="RelativeSlash",e[e.SpecialAuthoritySlashes=7]="SpecialAuthoritySlashes",e[e.SpecialAuthorityIgnoreSlashes=8]="SpecialAuthorityIgnoreSlashes",e[e.Authority=9]="Authority",e[e.Host=10]="Host",e[e.Hostname=11]="Hostname",e[e.Port=12]="Port",e[e.File=13]="File",e[e.FileSlash=14]="FileSlash",e[e.FileHost=15]="FileHost",e[e.PathStart=16]="PathStart",e[e.Path=17]="Path",e[e.CannotBeABaseURLPath=18]="CannotBeABaseURLPath",e[e.Query=19]="Query",e[e.Fragment=20]="Fragment"})(ekt||(Ix.ParserState=ekt={}));Ix.OpaqueOrigin=["","",null,null]});var g1e=b(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.setValidationErrorCallback=EJr;jt.newURL=skt;jt.isSpecialScheme=xx;jt.isSpecial=Fs;jt.defaultPort=a1e;jt.includesCredentials=EH;jt.cannotHaveAUsernamePasswordPort=SJr;jt.urlSerializer=o1e;jt.hostSerializer=p1e;jt.iPv4Serializer=akt;jt.iPv6Serializer=okt;jt.urlParser=wJr;jt.basicURLParser=h1e;jt.setTheUsername=IJr;jt.setThePassword=xJr;jt.isSingleDotPathSegment=u1e;jt.isDoubleDotPathSegment=ukt;jt.shorten=c1e;jt.isNormalizedWindowsDriveLetter=m1e;jt.isWindowsDriveLetter=SH;jt.startsWithAWindowsDriveLetter=l1e;jt.hostParser=bH;jt.iPv4NumberParser=ckt;jt.iPv4Parser=lkt;jt.iPv6Parser=dkt;jt.opaqueHostParser=fkt;jt.resolveABlobURL=pkt;jt.percentEncode=wH;jt.percentDecode=hkt;jt.stringPercentDecode=mkt;jt.utf8PercentEncode=c_;jt.hostEquals=CJr;jt.urlEquals=TJr;jt.urlEncodedStringParser=NJr;jt.urlEncodedParser=gkt;jt.urlEncodedByteSerializer=d1e;jt.urlEncodedSerializer=RJr;jt.origin=ykt;jt.domainToASCII=_kt;jt.domainToUnicode=DJr;jt.asciiSerializationOfAnOrigin=kJr;var uu=gn(),Ye=tkt(),ya=Ts(),rkt=require("url"),s1e,nkt={ftp:21,file:null,http:80,https:443,ws:80,wss:443},ikt=/[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,AJr=/[ "<>`]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,vJr=/[ "<>`#?{}]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,f1e=/[ "<>`#?{}/:;=@\[\]\\\^\|]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,vH=/[0-9A-Za-z!\$&-\/:;=\?@_~\xA0-\uD7FF\uE000-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uD83E\uD840-\uD87E\uD880-\uD8BE\uD8C0-\uD8FE\uD900-\uD93E\uD940-\uD97E\uD980-\uD9BE\uD9C0-\uD9FE\uDA00-\uDA3E\uDA40-\uDA7E\uDA80-\uDABE\uDAC0-\uDAFE\uDB00-\uDB3E\uDB40-\uDB7E\uDB80-\uDBBE\uDBC0-\uDBFE][\uDC00-\uDFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDC00-\uDFFD]/,bJr=/[\0\t\f\r #%/:?@\[\\\]]/;function EJr(e){s1e=e}function dt(e){s1e!==void 0&&s1e.call(null,"Validation Error: "+e)}function skt(){return{scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,_cannotBeABaseURLFlag:!1,_blobURLEntry:null}}function xx(e){return e in nkt}function Fs(e){return xx(e.scheme)}function a1e(e){return nkt[e]||null}function EH(e){return e.username!==""||e.password!==""}function SJr(e){return e.host===null||e.host===""||e._cannotBeABaseURLFlag||e.scheme==="file"}function o1e(e,t=!1){let r=e.scheme+":";if(e.host!==null?(r+="//",EH(e)&&(r+=e.username,e.password!==""&&(r+=":"+e.password),r+="@"),r+=p1e(e.host),e.port!==null&&(r+=":"+e.port)):e.host===null&&e.scheme==="file"&&(r+="//"),e._cannotBeABaseURLFlag)r+=e.path[0];else for(let n of e.path)r+="/"+n;return e.query!==null&&(r+="?"+e.query),!t&&e.fragment!==null&&(r+="#"+e.fragment),r}function p1e(e){return(0,uu.isNumber)(e)?akt(e):(0,uu.isArray)(e)?"["+okt(e)+"]":e}function akt(e){let t="",r=e;for(let n=1;n<=4;n++)t=(r%256).toString()+t,n!==4&&(t="."+t),r=Math.floor(r/256);return t}function okt(e){let t="",r=null,n=-1,i=0,s=0;for(let o=0;o<8;o++)if(e[o]===0){i=1;for(let u=o+1;u<8&&e[u]===0;u++)i++;i>s&&(s=i,n=o)}s>1&&(r=n);let a=!1;for(let o=0;o<8;o++)if(!(a&&e[o]===0)){if(a&&(a=!1),r===o){t+=o===0?"::":":",a=!0;continue}t+=e[o].toString(16),o!==7&&(t+=":")}return t}function wJr(e,t,r){let n=h1e(e,t,r);if(n===null)return null;if(n.scheme!=="blob")return n;let i=pkt(n);return i!==null?n._blobURLEntry=i:n._blobURLEntry=null,n}function h1e(e,t,r,n,i){if(n===void 0){n=skt();let h=/^[\u0000-\u001F\u0020]+/,m=/[\u0000-\u001F\u0020]+$/;(h.test(e)||m.test(e))&&dt("Input string contains leading or trailing control characters or space."),e=e.replace(h,""),e=e.replace(m,"")}let s=/[\u0009\u000A\u000D]/g;s.test(e)&&dt("Input string contains tab or newline characters."),e=e.replace(s,"");let a=i===void 0?Ye.ParserState.SchemeStart:i;t===void 0&&(t=null);let o=r===void 0||r==="replacement"||r==="UTF-16BE"||r==="UTF-16LE"?"UTF-8":r,u="",c=!1,l=!1,d=!1,f="",p=new uu.StringWalker(e);for(;;){switch(a){case Ye.ParserState.SchemeStart:if(ya.codePoint.ASCIIAlpha.test(p.c()))u+=p.c().toLowerCase(),a=Ye.ParserState.Scheme;else if(i===void 0)a=Ye.ParserState.NoScheme,p.pointer--;else return dt("Invalid scheme start character."),null;break;case Ye.ParserState.Scheme:if(ya.codePoint.ASCIIAlphanumeric.test(p.c())||p.c()==="+"||p.c()==="-"||p.c()===".")u+=p.c().toLowerCase();else if(p.c()===":"){if(i!==void 0&&(xx(n.scheme)&&!xx(u)||!xx(n.scheme)&&xx(u)||(EH(n)||n.port!==null)&&u==="file"||n.scheme==="file"&&(n.host===""||n.host===null)))return n;if(n.scheme=u,i!==void 0)return n.port===a1e(n.scheme)&&(n.port=null),n;u="",n.scheme==="file"?(p.remaining().startsWith("//")||dt("Invalid file URL scheme, '//' expected."),a=Ye.ParserState.File):Fs(n)&&t!==null&&t.scheme===n.scheme?a=Ye.ParserState.SpecialRelativeOrAuthority:Fs(n)?a=Ye.ParserState.SpecialAuthoritySlashes:p.remaining().startsWith("/")?(a=Ye.ParserState.PathOrAuthority,p.pointer++):(n._cannotBeABaseURLFlag=!0,n.path.push(""),a=Ye.ParserState.CannotBeABaseURLPath)}else if(i===void 0){u="",a=Ye.ParserState.NoScheme,p.pointer=0;continue}else return dt("Invalid input string."),null;break;case Ye.ParserState.NoScheme:if(t===null||t._cannotBeABaseURLFlag&&p.c()!=="#")return dt("Invalid input string."),null;t._cannotBeABaseURLFlag&&p.c()==="#"?(n.scheme=t.scheme,n.path=ya.list.clone(t.path),n.query=t.query,n.fragment="",n._cannotBeABaseURLFlag=!0,a=Ye.ParserState.Fragment):t.scheme!=="file"?(a=Ye.ParserState.Relative,p.pointer--):(a=Ye.ParserState.File,p.pointer--);break;case Ye.ParserState.SpecialRelativeOrAuthority:p.c()==="/"&&p.remaining().startsWith("/")?(a=Ye.ParserState.SpecialAuthorityIgnoreSlashes,p.pointer++):(dt("Invalid input string."),a=Ye.ParserState.Relative,p.pointer--);break;case Ye.ParserState.PathOrAuthority:p.c()==="/"?a=Ye.ParserState.Authority:(a=Ye.ParserState.Path,p.pointer--);break;case Ye.ParserState.Relative:if(t===null)throw new Error("Invalid parser state. Base URL is null.");switch(n.scheme=t.scheme,p.c()){case f:n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ya.list.clone(t.path),n.query=t.query;break;case"/":a=Ye.ParserState.RelativeSlash;break;case"?":n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ya.list.clone(t.path),n.query="",a=Ye.ParserState.Query;break;case"#":n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ya.list.clone(t.path),n.query=t.query,n.fragment="",a=Ye.ParserState.Fragment;break;default:Fs(n)&&p.c()==="\\"?(dt("Invalid input string."),a=Ye.ParserState.RelativeSlash):(n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ya.list.clone(t.path),n.path.length!==0&&n.path.splice(n.path.length-1,1),a=Ye.ParserState.Path,p.pointer--);break}break;case Ye.ParserState.RelativeSlash:if(Fs(n)&&(p.c()==="/"||p.c()==="\\"))p.c()==="\\"&&dt("Invalid input string."),a=Ye.ParserState.SpecialAuthorityIgnoreSlashes;else if(p.c()==="/")a=Ye.ParserState.Authority;else{if(t===null)throw new Error("Invalid parser state. Base URL is null.");n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,a=Ye.ParserState.Path,p.pointer--}break;case Ye.ParserState.SpecialAuthoritySlashes:p.c()==="/"&&p.remaining().startsWith("/")?(a=Ye.ParserState.SpecialAuthorityIgnoreSlashes,p.pointer++):(dt("Expected '//'."),a=Ye.ParserState.SpecialAuthorityIgnoreSlashes,p.pointer--);break;case Ye.ParserState.SpecialAuthorityIgnoreSlashes:p.c()!=="/"&&p.c()!=="\\"?(a=Ye.ParserState.Authority,p.pointer--):dt("Unexpected '/' or '\\'.");break;case Ye.ParserState.Authority:if(p.c()==="@"){dt("Unexpected '@'."),c&&(u="%40"+u),c=!0;for(let h of u){if(h===":"&&!d){d=!0;continue}let m=c_(h,f1e);d?n.password+=m:n.username+=m}u=""}else if(p.c()===f||p.c()==="/"||p.c()==="?"||p.c()==="#"||Fs(n)&&p.c()==="\\"){if(c&&u==="")return dt("Invalid input string."),null;p.pointer-=u.length+1,u="",a=Ye.ParserState.Host}else u+=p.c();break;case Ye.ParserState.Host:case Ye.ParserState.Hostname:if(i!==void 0&&n.scheme==="file")p.pointer--,a=Ye.ParserState.FileHost;else if(p.c()===":"&&!l){if(u==="")return dt("Invalid input string."),null;let h=bH(u,!Fs(n));if(h===null)return null;if(n.host=h,u="",a=Ye.ParserState.Port,i===Ye.ParserState.Hostname)return n}else if(p.c()===f||p.c()==="/"||p.c()==="?"||p.c()==="#"||Fs(n)&&p.c()==="\\"){if(p.pointer--,Fs(n)&&u==="")return dt("Invalid input string."),null;if(i!==void 0&&u===""&&(EH(n)||n.port!==null))return dt("Invalid input string."),n;let h=bH(u,!Fs(n));if(h===null)return null;if(n.host=h,u="",a=Ye.ParserState.PathStart,i!==void 0)return n}else p.c()==="["&&(l=!0),p.c()==="]"&&(l=!1),u+=p.c();break;case Ye.ParserState.Port:if(ya.codePoint.ASCIIDigit.test(p.c()))u+=p.c();else if(p.c()===f||p.c()==="/"||p.c()==="?"||p.c()==="#"||Fs(n)&&p.c()==="\\"||i){if(u!==""&&u!==""){let h=parseInt(u,10);if(h>Math.pow(2,16)-1)return dt("Invalid port number."),null;n.port=h===a1e(n.scheme)?null:h,u=""}if(i!==void 0)return n;a=Ye.ParserState.PathStart,p.pointer--}else return dt("Invalid input string."),null;break;case Ye.ParserState.File:if(n.scheme="file",p.c()==="/"||p.c()==="\\")p.c()==="\\"&&dt("Invalid input string."),a=Ye.ParserState.FileSlash;else if(t!==null&&t.scheme==="file")switch(p.c()){case f:n.host=t.host,n.path=ya.list.clone(t.path),n.query=t.query;break;case"?":n.host=t.host,n.path=ya.list.clone(t.path),n.query="",a=Ye.ParserState.Query;break;case"#":n.host=t.host,n.path=ya.list.clone(t.path),n.query=t.query,n.fragment="",a=Ye.ParserState.Fragment;break;default:l1e(p.substring())?dt("Unexpected windows drive letter in input string."):(n.host=t.host,n.path=ya.list.clone(t.path),c1e(n)),a=Ye.ParserState.Path,p.pointer--;break}else a=Ye.ParserState.Path,p.pointer--;break;case Ye.ParserState.FileSlash:p.c()==="/"||p.c()==="\\"?(p.c()==="\\"&&dt("Invalid input string."),a=Ye.ParserState.FileHost):(t!==null&&t.scheme==="file"&&!l1e(p.substring())&&(m1e(t.path[0])?n.path.push(t.path[0]):n.host=t.host),a=Ye.ParserState.Path,p.pointer--);break;case Ye.ParserState.FileHost:if(p.c()===f||p.c()==="/"||p.c()==="\\"||p.c()==="?"||p.c()==="#")if(p.pointer--,i===void 0&&SH(u))dt("Unexpected windows drive letter in input string."),a=Ye.ParserState.Path;else if(u===""){if(n.host="",i!==void 0)return n;a=Ye.ParserState.PathStart}else{let h=bH(u,!Fs(n));if(h===null)return null;if(h==="localhost"&&(h=""),n.host=h,i!==void 0)return n;u="",a=Ye.ParserState.PathStart}else u+=p.c();break;case Ye.ParserState.PathStart:Fs(n)?(p.c()==="\\"&&dt("Invalid input string."),a=Ye.ParserState.Path,p.c()!=="/"&&p.c()!=="\\"&&p.pointer--):i===void 0&&p.c()==="?"?(n.query="",a=Ye.ParserState.Query):i===void 0&&p.c()==="#"?(n.fragment="",a=Ye.ParserState.Fragment):p.c()!==f&&(a=Ye.ParserState.Path,p.c()!=="/"&&p.pointer--);break;case Ye.ParserState.Path:if(p.c()===f||p.c()==="/"||Fs(n)&&p.c()==="\\"||i===void 0&&(p.c()==="?"||p.c()==="#")){if(Fs(n)&&p.c()==="\\"&&dt("Invalid input string."),ukt(u))c1e(n),p.c()!=="/"&&!(Fs(n)&&p.c()==="\\")&&n.path.push("");else if(u1e(u)&&p.c()!=="/"&&!(Fs(n)&&p.c()==="\\"))n.path.push("");else if(!u1e(u)){if(n.scheme==="file"&&n.path.length===0&&SH(u)){n.host!==null&&n.host!==""&&(dt("Invalid input string."),n.host="");let h=Array.from(u);u=h.slice(0,1)+":"+h.slice(2)}n.path.push(u)}if(u="",n.scheme==="file"&&(p.c()===f||p.c()==="?"||p.c()==="#"))for(;n.path.length>1&&n.path[0]==="";)dt("Invalid input string."),n.path.splice(0,1);p.c()==="?"&&(n.query="",a=Ye.ParserState.Query),p.c()==="#"&&(n.fragment="",a=Ye.ParserState.Fragment)}else!vH.test(p.c())&&p.c()!=="%"&&dt("Character is not a URL code point or a percent encoded character."),p.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(p.remaining())&&dt("Percent encoded character must be followed by two hex digits."),u+=c_(p.c(),vJr);break;case Ye.ParserState.CannotBeABaseURLPath:p.c()==="?"?(n.query="",a=Ye.ParserState.Query):p.c()==="#"?(n.fragment="",a=Ye.ParserState.Fragment):(p.c()!==f&&!vH.test(p.c())&&p.c()!=="%"&&dt("Character is not a URL code point or a percent encoded character."),p.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(p.remaining())&&dt("Percent encoded character must be followed by two hex digits."),p.c()!==f&&(n.path[0]+=c_(p.c(),ikt)));break;case Ye.ParserState.Query:if(o!=="UTF-8"&&(!Fs(n)||n.scheme==="ws"||n.scheme==="wss")&&(o="UTF-8"),i===void 0&&p.c()==="#")n.fragment="",a=Ye.ParserState.Fragment;else if(p.c()!==f){if(!vH.test(p.c())&&p.c()!=="%"&&dt("Character is not a URL code point or a percent encoded character."),p.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(p.remaining())&&dt("Percent encoded character must be followed by two hex digits."),o.toUpperCase()!=="UTF-8")throw new Error("Only UTF-8 encoding is supported.");let h=(0,uu.utf8Encode)(p.c());if(h.length>=3&&h[0]===38&&h[1]===35&&h[h.length-1]===59)h=h.subarray(2,h.length-1),n.query+="%26%23"+ya.byteSequence.isomorphicDecode(h)+"%3B";else for(let m of h)m<33||m>126||m===34||m===35||m===60||m===62||m===39&&Fs(n)?n.query+=wH(m):n.query+=String.fromCharCode(m)}break;case Ye.ParserState.Fragment:p.c()===f||(p.c()==="\0"?dt("NULL character in input string."):(!vH.test(p.c())&&p.c()!=="%"&&dt("Unexpected character in fragment string."),p.c()==="%"&&!/^[A-Za-z0-9][A-Za-z0-9]/.test(p.remaining())&&dt("Unexpected character in fragment string."),n.fragment+=c_(p.c(),AJr)));break}if(p.eof)break;p.pointer++}return n}function IJr(e,t){let r="";for(let n of t)r+=c_(n,f1e);e.username=r}function xJr(e,t){let r="";for(let n of t)r+=c_(n,f1e);e.password=r}function u1e(e){return e==="."||e.toLowerCase()==="%2e"}function ukt(e){let t=e.toLowerCase();return t===".."||t===".%2e"||t==="%2e."||t==="%2e%2e"}function c1e(e){let t=e.path;t.length!==0&&(e.scheme==="file"&&t.length===1&&m1e(t[0])||e.path.splice(e.path.length-1,1))}function m1e(e){return e.length>=2&&ya.codePoint.ASCIIAlpha.test(e[0])&&e[1]===":"}function SH(e){return e.length>=2&&ya.codePoint.ASCIIAlpha.test(e[0])&&(e[1]===":"||e[1]==="|")}function l1e(e){return e.length>=2&&SH(e)&&(e.length===2||e[2]==="/"||e[2]==="\\"||e[2]==="?"||e[2]==="#")}function bH(e,t=!1){if(e.startsWith("["))return e.endsWith("]")?dkt(e.substring(1,e.length-1)):(dt("Expected ']' after '['."),null);if(t)return fkt(e);let r=(0,uu.utf8Decode)(mkt(e)),n=_kt(r);if(n===null||bJr.test(n))return dt("Invalid domain."),null;let i=lkt(n);return i===null||(0,uu.isNumber)(i)?i:n}function ckt(e,t={value:!1}){let r=10;return e.startsWith("0x")||e.startsWith("0X")?(t.value=!0,e=e.substr(2),r=16):e.length>=2&&e[0]==="0"&&(t.value=!0,e=e.substr(1),r=8),e===""?0:(r===10?/^[0-9]+$/:r===16?/^[0-9A-Fa-f]+$/:/^[0-7]+$/).test(e)?parseInt(e,r):null}function lkt(e){let t={value:!1},r=e.split(".");if(r[r.length-1]===""&&(t.value=!0,r.length>1&&r.pop()),r.length>4)return e;let n=[];for(let a of r){if(a==="")return e;let o=ckt(a,t);if(o===null)return e;n.push(o)}t.value&&dt("Invalid IP v4 address.");for(let a=0;a255&&(dt("Invalid IP v4 address."),a=Math.pow(256,5-n.length))return dt("Invalid IP v4 address."),null;let i=n[n.length-1];n.pop();let s=0;for(let a of n)i+=a*Math.pow(256,3-s),s++;return i}function dkt(e){let t="",r=[0,0,0,0,0,0,0,0],n=0,i=null,s=new uu.StringWalker(e);if(s.c()===":"){if(!s.remaining().startsWith(":"))return dt("Invalid IP v6 address."),null;s.pointer+=2,n+=1,i=n}for(;s.c()!==t;){if(n===8)return dt("Invalid IP v6 address."),null;if(s.c()===":"){if(i!==null)return dt("Invalid IP v6 address."),null;s.pointer++,n++,i=n;continue}let a=0,o=0;for(;o<4&&ya.codePoint.ASCIIHexDigit.test(s.c());)a=a*16+parseInt(s.c(),16),s.pointer++,o++;if(s.c()==="."){if(o===0||(s.pointer-=o,n>6))return dt("Invalid IP v6 address."),null;let u=0;for(;s.c()!==t;){let c=null;if(u>0)if(s.c()==="."&&u<4)s.pointer++;else return dt("Invalid IP v6 address."),null;if(!ya.codePoint.ASCIIDigit.test(s.c()))return dt("Invalid IP v6 address."),null;for(;ya.codePoint.ASCIIDigit.test(s.c());){let l=parseInt(s.c(),10);if(c===null)c=l;else{if(c===0)return dt("Invalid IP v6 address."),null;c=c*10+l}if(c>255)return dt("Invalid IP v6 address."),null;s.pointer++}if(c===null)return dt("Invalid IP v6 address."),null;r[n]=r[n]*256+c,u++,(u===2||u===4)&&n++}if(u!==4)return dt("Invalid IP v6 address."),null;break}else if(s.c()===":"){if(s.pointer++,s.c()===t)return dt("Invalid IP v6 address."),null}else if(s.c()!==t)return dt("Invalid IP v6 address."),null;r[n]=a,n++}if(i!==null){let a=n-i;for(n=7;n!==0&&a>0;)[r[n],r[i+a-1]]=[r[i+a-1],r[n]],n--,a--}else if(i===null&&n!==8)return dt("Invalid IP v6 address."),null;return r}function fkt(e){if(/[\x00\t\f\r #/:?@\[\\\]]/.test(e))return dt("Invalid host string."),null;let r="";for(let n of e)r+=c_(n,ikt);return r}function pkt(e){return null}function wH(e){return"%"+("00"+e.toString(16).toUpperCase()).slice(-2)}function hkt(e){let t=i=>i>=48&&i<=57||i>=65&&i<=70||i>=97&&i<=102,r=new Uint8Array(e.length),n=0;for(let i=0;i=e.length-2)r[n]=s,n++;else if(s===37&&(!t(e[i+1])||!t(e[i+2])))r[n]=s,n++;else{let a=parseInt((0,uu.utf8Decode)(Uint8Array.of(e[i+1],e[i+2])),16);r[n]=a,n++,i+=2}}return r.subarray(0,n)}function mkt(e){return hkt((0,uu.utf8Encode)(e))}function c_(e,t){if(!t.test(e))return e;let r=(0,uu.utf8Encode)(e),n="";for(let i of r)n+=wH(i);return n}function CJr(e,t){return e===t}function TJr(e,t,r=!1){return o1e(e,r)===o1e(t,r)}function NJr(e){return gkt((0,uu.utf8Encode)(e))}function gkt(e){let t=[],r=[];for(let i of e)i===38?(t.push(Uint8Array.from(r)),r=[]):r.push(i);r.length!==0&&t.push(Uint8Array.from(r));let n=[];for(let i of t){if(i.length===0)continue;let s=i.indexOf(61),a=s!==-1?i.slice(0,s):i,o=s!==-1?i.slice(s+1):new Uint8Array;for(let l=0;l=48&&r<=57||r>=65&&r<=90||r===95||r>=97&&r<=122?t+=String.fromCodePoint(r):t+=wH(r);return t}function RJr(e,t){if((t===void 0||t==="replacement"||t==="UTF-16BE"||t==="UTF-16LE"?"UTF-8":t).toUpperCase()!=="UTF-8")throw new Error("Only UTF-8 encoding is supported.");let n="";for(let i of e){let s=d1e((0,uu.utf8Encode)(i[0])),a=i[1];a=d1e((0,uu.utf8Encode)(a)),n!==""&&(n+="&"),n+=s+"="+a}return n}function ykt(e){switch(e.scheme){case"blob":e._blobURLEntry;let t=h1e(e.path[0]);return t===null?Ye.OpaqueOrigin:ykt(t);case"ftp":case"http":case"https":case"ws":case"wss":return[e.scheme,e.host===null?"":e.host,e.port,null];case"file":return Ye.OpaqueOrigin;default:return Ye.OpaqueOrigin}}function _kt(e,t=!1){let r=(0,rkt.domainToASCII)(e);return r===""?(dt("Invalid domain name."),null):r}function DJr(e,t=!1){let r=(0,rkt.domainToUnicode)(e);return r===""&&dt("Invalid domain name."),r}function kJr(e){if(e[0]===""&&e[1]===""&&e[2]===null&&e[3]===null)return"null";let t=e[0]+"://"+p1e(e[1]);return e[2]!==null&&(t+=":"+e[2].toString()),t}});var l_=b(xH=>{"use strict";Object.defineProperty(xH,"__esModule",{value:!0});xH.NodeImpl=void 0;var IH=ps(),Ua=fn(),OJr=uM(),fr=Ln(),PJr=$s(),Jt=en(),MJr=g1e(),_a=So(),Vi=class extends OJr.EventTargetImpl{static ELEMENT_NODE=1;static ATTRIBUTE_NODE=2;static TEXT_NODE=3;static CDATA_SECTION_NODE=4;static ENTITY_REFERENCE_NODE=5;static ENTITY_NODE=6;static PROCESSING_INSTRUCTION_NODE=7;static COMMENT_NODE=8;static DOCUMENT_NODE=9;static DOCUMENT_TYPE_NODE=10;static DOCUMENT_FRAGMENT_NODE=11;static NOTATION_NODE=12;static DOCUMENT_POSITION_DISCONNECTED=1;static DOCUMENT_POSITION_PRECEDING=2;static DOCUMENT_POSITION_FOLLOWING=4;static DOCUMENT_POSITION_CONTAINS=8;static DOCUMENT_POSITION_CONTAINED_BY=16;static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;ELEMENT_NODE=1;ATTRIBUTE_NODE=2;TEXT_NODE=3;CDATA_SECTION_NODE=4;ENTITY_REFERENCE_NODE=5;ENTITY_NODE=6;PROCESSING_INSTRUCTION_NODE=7;COMMENT_NODE=8;DOCUMENT_NODE=9;DOCUMENT_TYPE_NODE=10;DOCUMENT_FRAGMENT_NODE=11;NOTATION_NODE=12;DOCUMENT_POSITION_DISCONNECTED=1;DOCUMENT_POSITION_PRECEDING=2;DOCUMENT_POSITION_FOLLOWING=4;DOCUMENT_POSITION_CONTAINS=8;DOCUMENT_POSITION_CONTAINED_BY=16;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;__childNodes;get _childNodes(){return this.__childNodes||(this.__childNodes=(0,Jt.create_nodeList)(this))}_nodeDocumentOverride;get _nodeDocument(){return this._nodeDocumentOverride||IH.dom.window._associatedDocument}set _nodeDocument(t){this._nodeDocumentOverride=t}__registeredObserverList;get _registeredObserverList(){return this.__registeredObserverList||(this.__registeredObserverList=[])}_parent=null;_children=new fr.EmptySet;_firstChild=null;_lastChild=null;_previousSibling=null;_nextSibling=null;constructor(){super()}get nodeType(){return this._nodeType}get nodeName(){return fr.Guard.isElementNode(this)?this._htmlUppercasedQualifiedName:fr.Guard.isAttrNode(this)?this._qualifiedName:fr.Guard.isExclusiveTextNode(this)?"#text":fr.Guard.isCDATASectionNode(this)?"#cdata-section":fr.Guard.isProcessingInstructionNode(this)?this._target:fr.Guard.isCommentNode(this)?"#comment":fr.Guard.isDocumentNode(this)?"#document":fr.Guard.isDocumentTypeNode(this)?this._name:fr.Guard.isDocumentFragmentNode(this)?"#document-fragment":""}get baseURI(){return(0,MJr.urlSerializer)(this._nodeDocument._URL)}get isConnected(){return fr.Guard.isElementNode(this)&&(0,Jt.shadowTree_isConnected)(this)}get ownerDocument(){return this._nodeType===Ua.NodeType.Document?null:this._nodeDocument}getRootNode(t){return(0,Jt.tree_rootNode)(this,!!t&&t.composed)}get parentNode(){return this._nodeType===Ua.NodeType.Attribute?null:this._parent}get parentElement(){return this._parent&&fr.Guard.isElementNode(this._parent)?this._parent:null}hasChildNodes(){return this._firstChild!==null}get childNodes(){return this._childNodes}get firstChild(){return this._firstChild}get lastChild(){return this._lastChild}get previousSibling(){return this._previousSibling}get nextSibling(){return this._nextSibling}get nodeValue(){return fr.Guard.isAttrNode(this)?this._value:fr.Guard.isCharacterDataNode(this)?this._data:null}set nodeValue(t){t===null&&(t=""),fr.Guard.isAttrNode(this)?(0,Jt.attr_setAnExistingAttributeValue)(this,t):fr.Guard.isCharacterDataNode(this)&&(0,Jt.characterData_replaceData)(this,0,this._data.length,t)}get textContent(){return fr.Guard.isDocumentFragmentNode(this)||fr.Guard.isElementNode(this)?(0,Jt.text_descendantTextContent)(this):fr.Guard.isAttrNode(this)?this._value:fr.Guard.isCharacterDataNode(this)?this._data:null}set textContent(t){t===null&&(t=""),fr.Guard.isDocumentFragmentNode(this)||fr.Guard.isElementNode(this)?(0,Jt.node_stringReplaceAll)(t,this):fr.Guard.isAttrNode(this)?(0,Jt.attr_setAnExistingAttributeValue)(this,t):fr.Guard.isCharacterDataNode(this)&&(0,Jt.characterData_replaceData)(this,0,(0,Jt.tree_nodeLength)(this),t)}normalize(){let t=[],r=(0,Jt.tree_getFirstDescendantNode)(this,!1,!1,n=>fr.Guard.isExclusiveTextNode(n));for(;r!==null;)t.push(r),r=(0,Jt.tree_getNextDescendantNode)(this,r,!1,!1,n=>fr.Guard.isExclusiveTextNode(n));for(let n=0;n{"use strict";Object.defineProperty(NH,"__esModule",{value:!0});NH.DocumentImpl=void 0;var LJr=ps(),CH=fn(),g0=$s(),BJr=l_(),cM=Ln(),y1e=gn(),$Jr=Ts(),FJr=g1e(),ei=en(),UJr=So(),TH=class extends BJr.NodeImpl{_nodeType=CH.NodeType.Document;_children=new Set;_encoding={name:"UTF-8",labels:["unicode-1-1-utf-8","utf-8","utf8"]};_contentType="application/xml";_URL={scheme:"about",username:"",password:"",host:null,port:null,path:["blank"],query:null,fragment:null,_cannotBeABaseURLFlag:!0,_blobURLEntry:null};_origin=null;_type="xml";_mode="no-quirks";_implementation;_documentElement=null;_hasNamespaces=!1;_nodeDocumentOverwrite=null;get _nodeDocument(){return this._nodeDocumentOverwrite||this}set _nodeDocument(t){this._nodeDocumentOverwrite=t}constructor(){super()}get implementation(){return this._implementation||(this._implementation=(0,ei.create_domImplementation)(this))}get URL(){return(0,FJr.urlSerializer)(this._URL)}get documentURI(){return this.URL}get origin(){return"null"}get compatMode(){return this._mode==="quirks"?"BackCompat":"CSS1Compat"}get characterSet(){return this._encoding.name}get charset(){return this._encoding.name}get inputEncoding(){return this._encoding.name}get contentType(){return this._contentType}get doctype(){for(let t of this._children)if(cM.Guard.isDocumentTypeNode(t))return t;return null}get documentElement(){return this._documentElement}getElementsByTagName(t){return(0,ei.node_listOfElementsWithQualifiedName)(t,this)}getElementsByTagNameNS(t,r){return(0,ei.node_listOfElementsWithNamespace)(t,r,this)}getElementsByClassName(t){return(0,ei.node_listOfElementsWithClassNames)(t,this)}createElement(t,r){if(!(0,ei.xml_isName)(t))throw new g0.InvalidCharacterError;this._type==="html"&&(t=t.toLowerCase());let n=null;r!==void 0&&((0,y1e.isString)(r)?n=r:n=r.is);let i=this._type==="html"||this._contentType==="application/xhtml+xml"?$Jr.namespace.HTML:null;return(0,ei.element_createAnElement)(this,t,i,null,n,!0)}createElementNS(t,r,n){return(0,ei.document_internalCreateElementNS)(this,t,r,n)}createDocumentFragment(){return(0,ei.create_documentFragment)(this)}createTextNode(t){return(0,ei.create_text)(this,t)}createCDATASection(t){if(this._type==="html")throw new g0.NotSupportedError;if(t.indexOf("]]>")!==-1)throw new g0.InvalidCharacterError;return(0,ei.create_cdataSection)(this,t)}createComment(t){return(0,ei.create_comment)(this,t)}createProcessingInstruction(t,r){if(!(0,ei.xml_isName)(t))throw new g0.InvalidCharacterError;if(r.indexOf("?>")!==-1)throw new g0.InvalidCharacterError;return(0,ei.create_processingInstruction)(this,t,r)}importNode(t,r=!1){if(cM.Guard.isDocumentNode(t)||cM.Guard.isShadowRoot(t))throw new g0.NotSupportedError;return(0,ei.node_clone)(t,this,r)}adoptNode(t){if(cM.Guard.isDocumentNode(t))throw new g0.NotSupportedError;if(cM.Guard.isShadowRoot(t))throw new g0.HierarchyRequestError;return(0,ei.document_adopt)(t,this),t}createAttribute(t){if(!(0,ei.xml_isName)(t))throw new g0.InvalidCharacterError;return this._type==="html"&&(t=t.toLowerCase()),(0,ei.create_attr)(this,t)}createAttributeNS(t,r){let[n,i,s]=(0,ei.namespace_validateAndExtract)(t,r),a=(0,ei.create_attr)(this,s);return a._namespace=n,a._namespacePrefix=i,a}createEvent(t){return(0,ei.event_createLegacyEvent)(t)}createRange(){let t=(0,ei.create_range)();return t._start=[this,0],t._end=[this,0],t}createNodeIterator(t,r=CH.WhatToShow.All,n=null){let i=(0,ei.create_nodeIterator)(t,t,!0);return i._whatToShow=r,i._iteratorCollection=(0,ei.create_nodeList)(t),(0,y1e.isFunction)(n)?(i._filter=(0,ei.create_nodeFilter)(),i._filter.acceptNode=n):i._filter=n,i}createTreeWalker(t,r=CH.WhatToShow.All,n=null){let i=(0,ei.create_treeWalker)(t,t);return i._whatToShow=r,(0,y1e.isFunction)(n)?(i._filter=(0,ei.create_nodeFilter)(),i._filter.acceptNode=n):i._filter=n,i}_getTheParent(t){return t._type==="load"?null:LJr.dom.window}getElementById(t){throw new Error("Mixin: NonElementParentNode not implemented.")}get children(){throw new Error("Mixin: ParentNode not implemented.")}get firstElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get lastElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get childElementCount(){throw new Error("Mixin: ParentNode not implemented.")}prepend(...t){throw new Error("Mixin: ParentNode not implemented.")}append(...t){throw new Error("Mixin: ParentNode not implemented.")}querySelector(t){throw new Error("Mixin: ParentNode not implemented.")}querySelectorAll(t){throw new Error("Mixin: ParentNode not implemented.")}};NH.DocumentImpl=TH;(0,UJr.idl_defineConst)(TH.prototype,"_nodeType",CH.NodeType.Document)});var A1e=b(DH=>{"use strict";Object.defineProperty(DH,"__esModule",{value:!0});DH.XMLDocumentImpl=void 0;var qJr=RH(),_1e=class extends qJr.DocumentImpl{constructor(){super()}};DH.XMLDocumentImpl=_1e});var b1e=b(kH=>{"use strict";Object.defineProperty(kH,"__esModule",{value:!0});kH.AbortControllerImpl=void 0;var Akt=en(),v1e=class{_signal;constructor(){this._signal=(0,Akt.create_abortSignal)()}get signal(){return this._signal}abort(){(0,Akt.abort_signalAbort)(this._signal)}};kH.AbortControllerImpl=v1e});var S1e=b(OH=>{"use strict";Object.defineProperty(OH,"__esModule",{value:!0});OH.AbortSignalImpl=void 0;var jJr=uM(),vkt=en(),E1e=class e extends jJr.EventTargetImpl{_abortedFlag=!1;_abortAlgorithms=new Set;constructor(){super()}get aborted(){return this._abortedFlag}get onabort(){return(0,vkt.event_getterEventHandlerIDLAttribute)(this,"onabort")}set onabort(t){(0,vkt.event_setterEventHandlerIDLAttribute)(this,"onabort",t)}static _create(){return new e}};OH.AbortSignalImpl=E1e});var w1e=b(MH=>{"use strict";Object.defineProperty(MH,"__esModule",{value:!0});MH.DocumentTypeImpl=void 0;var bkt=fn(),HJr=l_(),KJr=So(),PH=class e extends HJr.NodeImpl{_nodeType=bkt.NodeType.DocumentType;_name="";_publicId="";_systemId="";constructor(t,r,n){super(),this._name=t,this._publicId=r,this._systemId=n}get name(){return this._name}get publicId(){return this._publicId}get systemId(){return this._systemId}before(...t){throw new Error("Mixin: ChildNode not implemented.")}after(...t){throw new Error("Mixin: ChildNode not implemented.")}replaceWith(...t){throw new Error("Mixin: ChildNode not implemented.")}remove(){throw new Error("Mixin: ChildNode not implemented.")}static _create(t,r,n="",i=""){let s=new e(r,n,i);return s._nodeDocument=t,s}};MH.DocumentTypeImpl=PH;(0,KJr.idl_defineConst)(PH.prototype,"_nodeType",bkt.NodeType.DocumentType)});var $H=b(BH=>{"use strict";Object.defineProperty(BH,"__esModule",{value:!0});BH.ElementImpl=void 0;var Ekt=fn(),VJr=l_(),y0=$s(),lM=Ts(),Zt=en(),zJr=So(),LH=class e extends VJr.NodeImpl{_nodeType=Ekt.NodeType.Element;_children=new Set;_namespace=null;_namespacePrefix=null;_localName="";_customElementState="undefined";_customElementDefinition=null;_is=null;_shadowRoot=null;_attributeList=(0,Zt.create_namedNodeMap)(this);_uniqueIdentifier;_attributeChangeSteps=[];_name="";_assignedSlot=null;constructor(){super()}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get tagName(){return this._htmlUppercasedQualifiedName}get id(){return(0,Zt.element_getAnAttributeValue)(this,"id")}set id(t){(0,Zt.element_setAnAttributeValue)(this,"id",t)}get className(){return(0,Zt.element_getAnAttributeValue)(this,"class")}set className(t){(0,Zt.element_setAnAttributeValue)(this,"class",t)}get classList(){let t=(0,Zt.element_getAnAttributeByName)("class",this);return t===null&&(t=(0,Zt.create_attr)(this._nodeDocument,"class")),(0,Zt.create_domTokenList)(this,t)}get slot(){return(0,Zt.element_getAnAttributeValue)(this,"slot")}set slot(t){(0,Zt.element_setAnAttributeValue)(this,"slot",t)}hasAttributes(){return this._attributeList.length!==0}get attributes(){return this._attributeList}getAttributeNames(){let t=[];for(let r of this._attributeList)t.push(r._qualifiedName);return t}getAttribute(t){let r=(0,Zt.element_getAnAttributeByName)(t,this);return r?r._value:null}getAttributeNS(t,r){let n=(0,Zt.element_getAnAttributeByNamespaceAndLocalName)(t,r,this);return n?n._value:null}setAttribute(t,r){if(!(0,Zt.xml_isName)(t))throw new y0.InvalidCharacterError;this._namespace===lM.namespace.HTML&&this._nodeDocument._type==="html"&&(t=t.toLowerCase());let n=null;for(let i=0;i{"use strict";Object.defineProperty(UH,"__esModule",{value:!0});UH.DocumentFragmentImpl=void 0;var Skt=fn(),QJr=l_(),GJr=So(),FH=class e extends QJr.NodeImpl{_nodeType=Skt.NodeType.DocumentFragment;_children=new Set;_host;constructor(t=null){super(),this._host=t}getElementById(t){throw new Error("Mixin: NonElementParentNode not implemented.")}get children(){throw new Error("Mixin: ParentNode not implemented.")}get firstElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get lastElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get childElementCount(){throw new Error("Mixin: ParentNode not implemented.")}prepend(...t){throw new Error("Mixin: ParentNode not implemented.")}append(...t){throw new Error("Mixin: ParentNode not implemented.")}querySelector(t){throw new Error("Mixin: ParentNode not implemented.")}querySelectorAll(t){throw new Error("Mixin: ParentNode not implemented.")}static _create(t,r=null){let n=new e(r);return n._nodeDocument=t,n}};UH.DocumentFragmentImpl=FH;(0,GJr.idl_defineConst)(FH.prototype,"_nodeType",Skt.NodeType.DocumentFragment)});var x1e=b(jH=>{"use strict";Object.defineProperty(jH,"__esModule",{value:!0});jH.ShadowRootImpl=void 0;var YJr=qH(),WJr=gn(),XJr=en(),I1e=class e extends YJr.DocumentFragmentImpl{_host;_mode;constructor(t,r){super(),this._host=t,this._mode=r}get mode(){return this._mode}get host(){return this._host}_getTheParent(t){return!t._composedFlag&&!(0,WJr.isEmpty)(t._path)&&(0,XJr.tree_rootNode)(t._path[0].invocationTarget)===this?null:this._host}static _create(t,r){return new e(r,"closed")}};jH.ShadowRootImpl=I1e});var C1e=b(HH=>{"use strict";Object.defineProperty(HH,"__esModule",{value:!0});HH.AttrImpl=void 0;var wkt=fn(),JJr=l_(),ZJr=en(),Ikt=So(),dM=class e extends JJr.NodeImpl{_nodeType=wkt.NodeType.Attribute;_localName;_namespace=null;_namespacePrefix=null;_element=null;_value="";constructor(t){super(),this._localName=t}specified;get ownerElement(){return this._element}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get name(){return this._qualifiedName}get value(){return this._value}set value(t){(0,ZJr.attr_setAnExistingAttributeValue)(this,t)}get _qualifiedName(){return this._namespacePrefix!==null?this._namespacePrefix+":"+this._localName:this._localName}static _create(t,r){let n=new e(r);return n._nodeDocument=t,n}};HH.AttrImpl=dM;(0,Ikt.idl_defineConst)(dM.prototype,"_nodeType",wkt.NodeType.Attribute);(0,Ikt.idl_defineConst)(dM.prototype,"specified",!0)});var fM=b(KH=>{"use strict";Object.defineProperty(KH,"__esModule",{value:!0});KH.CharacterDataImpl=void 0;var eZr=l_(),Cx=en(),T1e=class extends eZr.NodeImpl{_data;constructor(t){super(),this._data=t}get data(){return this._data}set data(t){(0,Cx.characterData_replaceData)(this,0,this._data.length,t)}get length(){return this._data.length}substringData(t,r){return(0,Cx.characterData_substringData)(this,t,r)}appendData(t){return(0,Cx.characterData_replaceData)(this,this._data.length,0,t)}insertData(t,r){(0,Cx.characterData_replaceData)(this,t,0,r)}deleteData(t,r){(0,Cx.characterData_replaceData)(this,t,r,"")}replaceData(t,r,n){(0,Cx.characterData_replaceData)(this,t,r,n)}get previousElementSibling(){throw new Error("Mixin: NonDocumentTypeChildNode not implemented.")}get nextElementSibling(){throw new Error("Mixin: NonDocumentTypeChildNode not implemented.")}before(...t){throw new Error("Mixin: ChildNode not implemented.")}after(...t){throw new Error("Mixin: ChildNode not implemented.")}replaceWith(...t){throw new Error("Mixin: ChildNode not implemented.")}remove(){throw new Error("Mixin: ChildNode not implemented.")}};KH.CharacterDataImpl=T1e});var QH=b(zH=>{"use strict";Object.defineProperty(zH,"__esModule",{value:!0});zH.TextImpl=void 0;var Ckt=fn(),tZr=fM(),xkt=en(),rZr=So(),VH=class e extends tZr.CharacterDataImpl{_nodeType=Ckt.NodeType.Text;_name="";_assignedSlot=null;constructor(t=""){super(t)}get wholeText(){let t="";for(let r of(0,xkt.text_contiguousTextNodes)(this,!0))t=t+r._data;return t}splitText(t){return(0,xkt.text_split)(this,t)}get assignedSlot(){throw new Error("Mixin: Slotable not implemented.")}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};zH.TextImpl=VH;(0,rZr.idl_defineConst)(VH.prototype,"_nodeType",Ckt.NodeType.Text)});var N1e=b(YH=>{"use strict";Object.defineProperty(YH,"__esModule",{value:!0});YH.CDATASectionImpl=void 0;var nZr=QH(),Tkt=fn(),iZr=So(),GH=class e extends nZr.TextImpl{_nodeType=Tkt.NodeType.CData;constructor(t){super(t)}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};YH.CDATASectionImpl=GH;(0,iZr.idl_defineConst)(GH.prototype,"_nodeType",Tkt.NodeType.CData)});var R1e=b(XH=>{"use strict";Object.defineProperty(XH,"__esModule",{value:!0});XH.CommentImpl=void 0;var Nkt=fn(),sZr=fM(),aZr=So(),WH=class e extends sZr.CharacterDataImpl{_nodeType=Nkt.NodeType.Comment;constructor(t=""){super(t)}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};XH.CommentImpl=WH;(0,aZr.idl_defineConst)(WH.prototype,"_nodeType",Nkt.NodeType.Comment)});var D1e=b(ZH=>{"use strict";Object.defineProperty(ZH,"__esModule",{value:!0});ZH.ProcessingInstructionImpl=void 0;var Rkt=fn(),oZr=fM(),uZr=So(),JH=class e extends oZr.CharacterDataImpl{_nodeType=Rkt.NodeType.ProcessingInstruction;_target;constructor(t,r){super(r),this._target=t}get target(){return this._target}static _create(t,r,n){let i=new e(r,n);return i._nodeDocument=t,i}};ZH.ProcessingInstructionImpl=JH;(0,uZr.idl_defineConst)(JH.prototype,"_nodeType",Rkt.NodeType.ProcessingInstruction)});var O1e=b(eK=>{"use strict";Object.defineProperty(eK,"__esModule",{value:!0});eK.HTMLCollectionImpl=void 0;var cZr=Ts(),_0=en(),d_=Ln(),Dkt=gn(),k1e=class e{_live=!0;_root;_filter;static reservedNames=["_root","_live","_filter","length","item","namedItem","get","set"];constructor(t,r){return this._root=t,this._filter=r,new Proxy(this,this)}get length(){let t=0,r=(0,_0.tree_getFirstDescendantNode)(this._root,!1,!1,n=>d_.Guard.isElementNode(n)&&this._filter(n));for(;r!==null;)t++,r=(0,_0.tree_getNextDescendantNode)(this._root,r,!1,!1,n=>d_.Guard.isElementNode(n)&&this._filter(n));return t}item(t){let r=0,n=(0,_0.tree_getFirstDescendantNode)(this._root,!1,!1,i=>d_.Guard.isElementNode(i)&&this._filter(i));for(;n!==null;){if(r===t)return n;r++,n=(0,_0.tree_getNextDescendantNode)(this._root,n,!1,!1,i=>d_.Guard.isElementNode(i)&&this._filter(i))}return null}namedItem(t){if(t==="")return null;let r=(0,_0.tree_getFirstDescendantNode)(this._root,!1,!1,n=>d_.Guard.isElementNode(n)&&this._filter(n));for(;r!=null;){if(r._uniqueIdentifier===t)return r;if(r._namespace===cZr.namespace.HTML)for(let n=0;nd_.Guard.isElementNode(n)&&this._filter(n))}return null}[Symbol.iterator](){let t=this._root,r=this._filter,n=(0,_0.tree_getFirstDescendantNode)(t,!1,!1,i=>d_.Guard.isElementNode(i)&&r(i));return{next(){if(n===null)return{done:!0,value:null};{let i={done:!1,value:n};return n=(0,_0.tree_getNextDescendantNode)(t,n,!1,!1,s=>d_.Guard.isElementNode(s)&&r(s)),i}}}}get(t,r,n){if(!(0,Dkt.isString)(r)||e.reservedNames.indexOf(r)!==-1)return Reflect.get(t,r,n);let i=Number(r);return isNaN(i)?t.namedItem(r)||void 0:t.item(i)||void 0}set(t,r,n,i){if(!(0,Dkt.isString)(r)||e.reservedNames.indexOf(r)!==-1)return Reflect.set(t,r,n,i);let s=Number(r),a=isNaN(s)?t.namedItem(r)||void 0:t.item(s)||void 0;return a&&a._parent?((0,_0.mutation_replace)(a,n,a._parent),!0):!1}static _create(t,r=()=>!0){return new e(t,r)}};eK.HTMLCollectionImpl=k1e});var M1e=b(tK=>{"use strict";Object.defineProperty(tK,"__esModule",{value:!0});tK.NodeListImpl=void 0;var lZr=ps(),kkt=gn(),dZr=en(),P1e=class e{_live=!0;_root;_filter=null;_length=0;constructor(t){return this._root=t,new Proxy(this,this)}get length(){return this._root._children.size}item(t){if(t<0||t>this.length-1)return null;if(t{"use strict";Object.defineProperty(rK,"__esModule",{value:!0});rK.NodeListStaticImpl=void 0;var fZr=ps(),Okt=gn(),L1e=class e{_live=!1;_root;_filter;_items=[];_length=0;constructor(t){return this._root=t,this._items=[],this._filter=function(r){return!0},new Proxy(this,this)}get length(){return this._items.length}item(t){return t<0||t>this.length-1?null:this._items[t]}keys(){return{[Symbol.iterator]:function(){let t=0;return{next:function(){return t===this.length?{done:!0,value:null}:{done:!1,value:t++}}.bind(this)}}.bind(this)}}values(){return{[Symbol.iterator]:function(){let t=this[Symbol.iterator]();return{next(){return t.next()}}}.bind(this)}}entries(){return{[Symbol.iterator]:function(){let t=this[Symbol.iterator](),r=0;return{next(){let n=t.next();return n.done?{done:!0,value:null}:{done:!1,value:[r++,n.value]}}}}.bind(this)}}[Symbol.iterator](){let t=this._items[Symbol.iterator]();return{next(){return t.next()}}}forEach(t,r){r===void 0&&(r=fZr.dom.window);let n=0;for(let i of this._items)t.call(r,i,n++,this)}get(t,r,n){if(!(0,Okt.isString)(r))return Reflect.get(t,r,n);let i=Number(r);return isNaN(i)?Reflect.get(t,r,n):t._items[i]||void 0}set(t,r,n,i){if(!(0,Okt.isString)(r))return Reflect.set(t,r,n,i);let s=Number(r);return isNaN(s)?Reflect.set(t,r,n,i):s>=0&&s{"use strict";Object.defineProperty(nK,"__esModule",{value:!0});nK.NamedNodeMapImpl=void 0;var Pkt=$s(),Tx=en(),$1e=class e extends Array{_element;constructor(t){super(),this._element=t,Object.setPrototypeOf(this,e.prototype)}_asArray(){return this}item(t){return this[t]||null}getNamedItem(t){return(0,Tx.element_getAnAttributeByName)(t,this._element)}getNamedItemNS(t,r){return(0,Tx.element_getAnAttributeByNamespaceAndLocalName)(t||"",r,this._element)}setNamedItem(t){return(0,Tx.element_setAnAttribute)(t,this._element)}setNamedItemNS(t){return(0,Tx.element_setAnAttribute)(t,this._element)}removeNamedItem(t){let r=(0,Tx.element_removeAnAttributeByName)(t,this._element);if(r===null)throw new Pkt.NotFoundError;return r}removeNamedItemNS(t,r){let n=(0,Tx.element_removeAnAttributeByNamespaceAndLocalName)(t||"",r,this._element);if(n===null)throw new Pkt.NotFoundError;return n}static _create(t){return new e(t)}};nK.NamedNodeMapImpl=$1e});var sK=b(iK=>{"use strict";Object.defineProperty(iK,"__esModule",{value:!0});iK.AbstractRangeImpl=void 0;var U1e=class{get _startNode(){return this._start[0]}get _startOffset(){return this._start[1]}get _endNode(){return this._end[0]}get _endOffset(){return this._end[1]}get _collapsed(){return this._start[0]===this._end[0]&&this._start[1]===this._end[1]}get startContainer(){return this._startNode}get startOffset(){return this._startOffset}get endContainer(){return this._endNode}get endOffset(){return this._endOffset}get collapsed(){return this._collapsed}};iK.AbstractRangeImpl=U1e});var j1e=b(oK=>{"use strict";Object.defineProperty(oK,"__esModule",{value:!0});oK.RangeImpl=void 0;var q1e=ps(),wo=fn(),pZr=sK(),cu=$s(),_t=en(),aK=So(),nc=Ln(),Yb=class e extends pZr.AbstractRangeImpl{static START_TO_START=0;static START_TO_END=1;static END_TO_END=2;static END_TO_START=3;START_TO_START=0;START_TO_END=1;END_TO_END=2;END_TO_START=3;_start;_end;constructor(){super();let t=q1e.dom.window._associatedDocument;this._start=[t,0],this._end=[t,0],q1e.dom.rangeList.add(this)}get commonAncestorContainer(){let t=this._start[0];for(;!(0,_t.tree_isAncestorOf)(this._end[0],t,!0);){if(t._parent===null)throw new Error("Parent node is null.");t=t._parent}return t}setStart(t,r){(0,_t.range_setTheStart)(this,t,r)}setEnd(t,r){(0,_t.range_setTheEnd)(this,t,r)}setStartBefore(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,_t.range_setTheStart)(this,r,(0,_t.tree_index)(t))}setStartAfter(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,_t.range_setTheStart)(this,r,(0,_t.tree_index)(t)+1)}setEndBefore(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,_t.range_setTheEnd)(this,r,(0,_t.tree_index)(t))}setEndAfter(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,_t.range_setTheEnd)(this,r,(0,_t.tree_index)(t)+1)}collapse(t){t?this._end=this._start:this._start=this._end}selectNode(t){(0,_t.range_select)(t,this)}selectNodeContents(t){if(nc.Guard.isDocumentTypeNode(t))throw new cu.InvalidNodeTypeError;let r=(0,_t.tree_nodeLength)(t);this._start=[t,0],this._end=[t,r]}compareBoundaryPoints(t,r){if(t!==wo.HowToCompare.StartToStart&&t!==wo.HowToCompare.StartToEnd&&t!==wo.HowToCompare.EndToEnd&&t!==wo.HowToCompare.EndToStart)throw new cu.NotSupportedError;if((0,_t.range_root)(this)!==(0,_t.range_root)(r))throw new cu.WrongDocumentError;let n,i;switch(t){case wo.HowToCompare.StartToStart:n=this._start,i=r._start;break;case wo.HowToCompare.StartToEnd:n=this._end,i=r._start;break;case wo.HowToCompare.EndToEnd:n=this._end,i=r._end;break;case wo.HowToCompare.EndToStart:n=this._start,i=r._end;break;default:throw new cu.NotSupportedError}let s=(0,_t.boundaryPoint_position)(n,i);return s===wo.BoundaryPosition.Before?-1:s===wo.BoundaryPosition.After?1:0}deleteContents(){if((0,_t.range_collapsed)(this))return;let t=this._startNode,r=this._startOffset,n=this._endNode,i=this._endOffset;if(t===n&&nc.Guard.isCharacterDataNode(t)){(0,_t.characterData_replaceData)(t,r,i-r,"");return}let s=[];for(let u of(0,_t.range_getContainedNodes)(this)){let c=u._parent;c!==null&&(0,_t.range_isContained)(c,this)||s.push(u)}let a,o;if((0,_t.tree_isAncestorOf)(n,t,!0))a=t,o=r;else{let u=t;for(;u._parent!==null&&!(0,_t.tree_isAncestorOf)(n,u._parent,!0);)u=u._parent;if(u._parent===null)throw new Error("Parent node is null.");a=u._parent,o=(0,_t.tree_index)(u)+1}nc.Guard.isCharacterDataNode(t)&&(0,_t.characterData_replaceData)(t,r,(0,_t.tree_nodeLength)(t)-r,"");for(let u of s)u._parent&&(0,_t.mutation_remove)(u,u._parent);nc.Guard.isCharacterDataNode(n)&&(0,_t.characterData_replaceData)(n,0,i,""),this._start=[a,o],this._end=[a,o]}extractContents(){return(0,_t.range_extract)(this)}cloneContents(){return(0,_t.range_cloneTheContents)(this)}insertNode(t){return(0,_t.range_insert)(t,this)}surroundContents(t){for(let n of(0,_t.range_getPartiallyContainedNodes)(this))if(!nc.Guard.isTextNode(n))throw new cu.InvalidStateError;if(nc.Guard.isDocumentNode(t)||nc.Guard.isDocumentTypeNode(t)||nc.Guard.isDocumentFragmentNode(t))throw new cu.InvalidNodeTypeError;let r=(0,_t.range_extract)(this);t._children.size!==0&&(0,_t.mutation_replaceAll)(null,t),(0,_t.range_insert)(t,this),(0,_t.mutation_append)(r,t),(0,_t.range_select)(t,this)}cloneRange(){return(0,_t.create_range)(this._start,this._end)}detach(){q1e.dom.rangeList.delete(this)}isPointInRange(t,r){if((0,_t.tree_rootNode)(t)!==(0,_t.range_root)(this))return!1;if(nc.Guard.isDocumentTypeNode(t))throw new cu.InvalidNodeTypeError;if(r>(0,_t.tree_nodeLength)(t))throw new cu.IndexSizeError;let n=[t,r];return!((0,_t.boundaryPoint_position)(n,this._start)===wo.BoundaryPosition.Before||(0,_t.boundaryPoint_position)(n,this._end)===wo.BoundaryPosition.After)}comparePoint(t,r){if((0,_t.tree_rootNode)(t)!==(0,_t.range_root)(this))throw new cu.WrongDocumentError;if(nc.Guard.isDocumentTypeNode(t))throw new cu.InvalidNodeTypeError;if(r>(0,_t.tree_nodeLength)(t))throw new cu.IndexSizeError;let n=[t,r];return(0,_t.boundaryPoint_position)(n,this._start)===wo.BoundaryPosition.Before?-1:(0,_t.boundaryPoint_position)(n,this._end)===wo.BoundaryPosition.After?1:0}intersectsNode(t){if((0,_t.tree_rootNode)(t)!==(0,_t.range_root)(this))return!1;let r=t._parent;if(r===null)return!0;let n=(0,_t.tree_index)(t);return(0,_t.boundaryPoint_position)([r,n],this._end)===wo.BoundaryPosition.Before&&(0,_t.boundaryPoint_position)([r,n+1],this._start)===wo.BoundaryPosition.After}toString(){let t="";if(this._startNode===this._endNode&&nc.Guard.isTextNode(this._startNode))return this._startNode._data.substring(this._startOffset,this._endOffset);nc.Guard.isTextNode(this._startNode)&&(t+=this._startNode._data.substring(this._startOffset));for(let r of(0,_t.range_getContainedNodes)(this))nc.Guard.isTextNode(r)&&(t+=r._data);return nc.Guard.isTextNode(this._endNode)&&(t+=this._endNode._data.substring(0,this._endOffset)),t}static _create(t,r){let n=new e;return t&&(n._start=t),r&&(n._end=r),n}};oK.RangeImpl=Yb;(0,aK.idl_defineConst)(Yb.prototype,"START_TO_START",0);(0,aK.idl_defineConst)(Yb.prototype,"START_TO_END",1);(0,aK.idl_defineConst)(Yb.prototype,"END_TO_END",2);(0,aK.idl_defineConst)(Yb.prototype,"END_TO_START",3)});var cK=b(uK=>{"use strict";Object.defineProperty(uK,"__esModule",{value:!0});uK.TraverserImpl=void 0;var hZr=fn(),H1e=class{_activeFlag;_root;_whatToShow;_filter;constructor(t){this._activeFlag=!1,this._root=t,this._whatToShow=hZr.WhatToShow.All,this._filter=null}get root(){return this._root}get whatToShow(){return this._whatToShow}get filter(){return this._filter}};uK.TraverserImpl=H1e});var V1e=b(dK=>{"use strict";Object.defineProperty(dK,"__esModule",{value:!0});dK.NodeIteratorImpl=void 0;var mZr=cK(),lK=en(),K1e=class e extends mZr.TraverserImpl{_iteratorCollection;_reference;_pointerBeforeReference;constructor(t,r,n){super(t),this._iteratorCollection=void 0,this._reference=r,this._pointerBeforeReference=n,(0,lK.nodeIterator_iteratorList)().add(this)}get referenceNode(){return this._reference}get pointerBeforeReferenceNode(){return this._pointerBeforeReference}nextNode(){return(0,lK.nodeIterator_traverse)(this,!0)}previousNode(){return(0,lK.nodeIterator_traverse)(this,!1)}detach(){(0,lK.nodeIterator_iteratorList)().delete(this)}static _create(t,r,n){return new e(t,r,n)}};dK.NodeIteratorImpl=K1e});var Q1e=b(fK=>{"use strict";Object.defineProperty(fK,"__esModule",{value:!0});fK.TreeWalkerImpl=void 0;var f_=fn(),gZr=cK(),Xp=en(),z1e=class e extends gZr.TraverserImpl{_current;constructor(t,r){super(t),this._current=r}get currentNode(){return this._current}set currentNode(t){this._current=t}parentNode(){let t=this._current;for(;t!==null&&t!==this._root;)if(t=t._parent,t!==null&&(0,Xp.traversal_filter)(this,t)===f_.FilterResult.Accept)return this._current=t,t;return null}firstChild(){return(0,Xp.treeWalker_traverseChildren)(this,!0)}lastChild(){return(0,Xp.treeWalker_traverseChildren)(this,!1)}nextSibling(){return(0,Xp.treeWalker_traverseSiblings)(this,!0)}previousNode(){let t=this._current;for(;t!==this._root;){let r=t._previousSibling;for(;r;){t=r;let n=(0,Xp.traversal_filter)(this,t);for(;n!==f_.FilterResult.Reject&&t._lastChild;)t=t._lastChild,n=(0,Xp.traversal_filter)(this,t);if(n===f_.FilterResult.Accept)return this._current=t,t;r=t._previousSibling}if(t===this._root||t._parent===null)return null;if(t=t._parent,(0,Xp.traversal_filter)(this,t)===f_.FilterResult.Accept)return this._current=t,t}return null}previousSibling(){return(0,Xp.treeWalker_traverseSiblings)(this,!1)}nextNode(){let t=this._current,r=f_.FilterResult.Accept;for(;;){for(;r!==f_.FilterResult.Reject&&t._firstChild;)if(t=t._firstChild,r=(0,Xp.traversal_filter)(this,t),r===f_.FilterResult.Accept)return this._current=t,t;let n=null,i=t;for(;i!==null;){if(i===this._root)return null;if(n=i._nextSibling,n!==null){t=n;break}i=i._parent}if(r=(0,Xp.traversal_filter)(this,t),r===f_.FilterResult.Accept)return this._current=t,t}}static _create(t,r){return new e(t,r)}};fK.TreeWalkerImpl=z1e});var G1e=b(pK=>{"use strict";Object.defineProperty(pK,"__esModule",{value:!0});pK.NodeFilterImpl=void 0;var yZr=fn(),Io=So(),Us=class e{static FILTER_ACCEPT=1;static FILTER_REJECT=2;static FILTER_SKIP=3;static SHOW_ALL=4294967295;static SHOW_ELEMENT=1;static SHOW_ATTRIBUTE=2;static SHOW_TEXT=4;static SHOW_CDATA_SECTION=8;static SHOW_ENTITY_REFERENCE=16;static SHOW_ENTITY=32;static SHOW_PROCESSING_INSTRUCTION=64;static SHOW_COMMENT=128;static SHOW_DOCUMENT=256;static SHOW_DOCUMENT_TYPE=512;static SHOW_DOCUMENT_FRAGMENT=1024;static SHOW_NOTATION=2048;FILTER_ACCEPT=1;FILTER_REJECT=2;FILTER_SKIP=3;SHOW_ALL=4294967295;SHOW_ELEMENT=1;SHOW_ATTRIBUTE=2;SHOW_TEXT=4;SHOW_CDATA_SECTION=8;SHOW_ENTITY_REFERENCE=16;SHOW_ENTITY=32;SHOW_PROCESSING_INSTRUCTION=64;SHOW_COMMENT=128;SHOW_DOCUMENT=256;SHOW_DOCUMENT_TYPE=512;SHOW_DOCUMENT_FRAGMENT=1024;SHOW_NOTATION=2048;constructor(){}acceptNode(t){return yZr.FilterResult.Accept}static _create(){return new e}};pK.NodeFilterImpl=Us;(0,Io.idl_defineConst)(Us.prototype,"FILTER_ACCEPT",1);(0,Io.idl_defineConst)(Us.prototype,"FILTER_REJECT",2);(0,Io.idl_defineConst)(Us.prototype,"FILTER_SKIP",3);(0,Io.idl_defineConst)(Us.prototype,"SHOW_ALL",4294967295);(0,Io.idl_defineConst)(Us.prototype,"SHOW_ELEMENT",1);(0,Io.idl_defineConst)(Us.prototype,"SHOW_ATTRIBUTE",2);(0,Io.idl_defineConst)(Us.prototype,"SHOW_TEXT",4);(0,Io.idl_defineConst)(Us.prototype,"SHOW_CDATA_SECTION",8);(0,Io.idl_defineConst)(Us.prototype,"SHOW_ENTITY_REFERENCE",16);(0,Io.idl_defineConst)(Us.prototype,"SHOW_ENTITY",32);(0,Io.idl_defineConst)(Us.prototype,"SHOW_PROCESSING_INSTRUCTION",64);(0,Io.idl_defineConst)(Us.prototype,"SHOW_COMMENT",128);(0,Io.idl_defineConst)(Us.prototype,"SHOW_DOCUMENT",256);(0,Io.idl_defineConst)(Us.prototype,"SHOW_DOCUMENT_TYPE",512);(0,Io.idl_defineConst)(Us.prototype,"SHOW_DOCUMENT_FRAGMENT",1024);(0,Io.idl_defineConst)(Us.prototype,"SHOW_NOTATION",2048)});var W1e=b(hK=>{"use strict";Object.defineProperty(hK,"__esModule",{value:!0});hK.MutationRecordImpl=void 0;var Y1e=class e{_type;_target;_addedNodes;_removedNodes;_previousSibling;_nextSibling;_attributeName;_attributeNamespace;_oldValue;constructor(t,r,n,i,s,a,o,u,c){this._type=t,this._target=r,this._addedNodes=n,this._removedNodes=i,this._previousSibling=s,this._nextSibling=a,this._attributeName=o,this._attributeNamespace=u,this._oldValue=c}get type(){return this._type}get target(){return this._target}get addedNodes(){return this._addedNodes}get removedNodes(){return this._removedNodes}get previousSibling(){return this._previousSibling}get nextSibling(){return this._nextSibling}get attributeName(){return this._attributeName}get attributeNamespace(){return this._attributeNamespace}get oldValue(){return this._oldValue}static _create(t,r,n,i,s,a,o,u,c){return new e(t,r,n,i,s,a,o,u,c)}};hK.MutationRecordImpl=Y1e});var J1e=b(mK=>{"use strict";Object.defineProperty(mK,"__esModule",{value:!0});mK.DOMTokenListImpl=void 0;var _Zr=ps(),p_=$s(),Nx=Ts(),ff=en(),X1e=class e{_element;_attribute;_tokenSet;constructor(t,r){this._element=t,this._attribute=r,this._tokenSet=new Set;let n=r._localName,i=(0,ff.element_getAnAttributeValue)(t,n),s=this;function a(o,u,c,l,d){u===s._attribute._localName&&d===null&&(l?s._tokenSet=(0,ff.orderedSet_parse)(l):s._tokenSet.clear())}this._element._attributeChangeSteps.push(a),_Zr.dom.features.steps&&(0,ff.dom_runAttributeChangeSteps)(t,n,i,i,null)}get length(){return this._tokenSet.size}item(t){let r=0;for(let n of this._tokenSet){if(r===t)return n;r++}return null}contains(t){return this._tokenSet.has(t)}add(...t){for(let r of t){if(r==="")throw new p_.SyntaxError("Cannot add an empty token.");if(Nx.codePoint.ASCIIWhiteSpace.test(r))throw new p_.InvalidCharacterError("Token cannot contain whitespace.");this._tokenSet.add(r)}(0,ff.tokenList_updateSteps)(this)}remove(...t){for(let r of t){if(r==="")throw new p_.SyntaxError("Cannot remove an empty token.");if(Nx.codePoint.ASCIIWhiteSpace.test(r))throw new p_.InvalidCharacterError("Token cannot contain whitespace.");this._tokenSet.delete(r)}(0,ff.tokenList_updateSteps)(this)}toggle(t,r=void 0){if(t==="")throw new p_.SyntaxError("Cannot toggle an empty token.");if(Nx.codePoint.ASCIIWhiteSpace.test(t))throw new p_.InvalidCharacterError("Token cannot contain whitespace.");return this._tokenSet.has(t)?r===void 0||r===!1?(this._tokenSet.delete(t),(0,ff.tokenList_updateSteps)(this),!1):!0:r===void 0||r===!0?(this._tokenSet.add(t),(0,ff.tokenList_updateSteps)(this),!0):!1}replace(t,r){if(t===""||r==="")throw new p_.SyntaxError("Cannot replace an empty token.");if(Nx.codePoint.ASCIIWhiteSpace.test(t)||Nx.codePoint.ASCIIWhiteSpace.test(r))throw new p_.InvalidCharacterError("Token cannot contain whitespace.");return this._tokenSet.has(t)?(Nx.set.replace(this._tokenSet,t,r),(0,ff.tokenList_updateSteps)(this),!0):!1}supports(t){return(0,ff.tokenList_validationSteps)(this,t)}get value(){return(0,ff.tokenList_serializeSteps)(this)}set value(t){(0,ff.element_setAnAttributeValue)(this._element,this._attribute._localName,t)}[Symbol.iterator](){let t=this._tokenSet[Symbol.iterator]();return{next(){return t.next()}}}static _create(t,r){return new e(t,r)}};mK.DOMTokenListImpl=X1e});var A0=b(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.create_domImplementation=HZr;bn.create_window=KZr;bn.create_xmlDocument=VZr;bn.create_document=zZr;bn.create_abortController=QZr;bn.create_abortSignal=GZr;bn.create_documentType=YZr;bn.create_element=WZr;bn.create_htmlElement=XZr;bn.create_htmlUnknownElement=JZr;bn.create_documentFragment=ZZr;bn.create_shadowRoot=een;bn.create_attr=ten;bn.create_text=ren;bn.create_cdataSection=nen;bn.create_comment=ien;bn.create_processingInstruction=sen;bn.create_htmlCollection=aen;bn.create_nodeList=oen;bn.create_nodeListStatic=uen;bn.create_namedNodeMap=cen;bn.create_range=len;bn.create_nodeIterator=den;bn.create_treeWalker=fen;bn.create_nodeFilter=pen;bn.create_mutationRecord=hen;bn.create_domTokenList=men;var AZr=IEe(),vZr=i1e(),bZr=A1e(),EZr=RH(),SZr=b1e(),wZr=S1e(),IZr=w1e(),Z1e=$H(),xZr=qH(),CZr=x1e(),TZr=C1e(),NZr=QH(),RZr=N1e(),DZr=R1e(),kZr=D1e(),OZr=O1e(),PZr=M1e(),MZr=B1e(),LZr=F1e(),BZr=j1e(),$Zr=V1e(),FZr=Q1e(),UZr=G1e(),qZr=W1e(),jZr=J1e();function HZr(e){return AZr.DOMImplementationImpl._create(e)}function KZr(){return vZr.WindowImpl._create()}function VZr(){return new bZr.XMLDocumentImpl}function zZr(){return new EZr.DocumentImpl}function QZr(){return new SZr.AbortControllerImpl}function GZr(){return wZr.AbortSignalImpl._create()}function YZr(e,t,r,n){return IZr.DocumentTypeImpl._create(e,t,r,n)}function WZr(e,t,r,n){return Z1e.ElementImpl._create(e,t,r,n)}function XZr(e,t,r,n){return Z1e.ElementImpl._create(e,t,r,n)}function JZr(e,t,r,n){return Z1e.ElementImpl._create(e,t,r,n)}function ZZr(e){return xZr.DocumentFragmentImpl._create(e)}function een(e,t){return CZr.ShadowRootImpl._create(e,t)}function ten(e,t){return TZr.AttrImpl._create(e,t)}function ren(e,t){return NZr.TextImpl._create(e,t)}function nen(e,t){return RZr.CDATASectionImpl._create(e,t)}function ien(e,t){return DZr.CommentImpl._create(e,t)}function sen(e,t,r){return kZr.ProcessingInstructionImpl._create(e,t,r)}function aen(e,t=()=>!0){return OZr.HTMLCollectionImpl._create(e,t)}function oen(e){return PZr.NodeListImpl._create(e)}function uen(e,t){return MZr.NodeListStaticImpl._create(e,t)}function cen(e){return LZr.NamedNodeMapImpl._create(e)}function len(e,t){return BZr.RangeImpl._create(e,t)}function den(e,t,r){return $Zr.NodeIteratorImpl._create(e,t,r)}function fen(e,t){return FZr.TreeWalkerImpl._create(e,t)}function pen(){return UZr.NodeFilterImpl._create()}function hen(e,t,r,n,i,s,a,o,u){return qZr.MutationRecordImpl._create(e,t,r,n,i,s,a,o,u)}function men(e,t){return jZr.DOMTokenListImpl._create(e,t)}});var ps=b(gK=>{"use strict";Object.defineProperty(gK,"__esModule",{value:!0});gK.dom=void 0;var eSe=gn(),gen=A0(),tSe=class e{static _instance;_features={mutationObservers:!0,customElements:!0,slots:!0,steps:!0};_window=null;_compareCache;_rangeList;constructor(){this._compareCache=new eSe.CompareCache,this._rangeList=new eSe.FixedSizeSet}setFeatures(t){if(t===void 0&&(t=!0),(0,eSe.isObject)(t))for(let r in t)this._features[r]=t[r]||!1;else for(let r in this._features)this._features[r]=t}get features(){return this._features}get window(){return this._window===null&&(this._window=(0,gen.create_window)()),this._window}get compareCache(){return this._compareCache}get rangeList(){return this._rangeList}static get instance(){return e._instance||(e._instance=new e),e._instance}};gK.dom=tSe.instance});var AK=b(_K=>{"use strict";Object.defineProperty(_K,"__esModule",{value:!0});_K.EventImpl=void 0;var yen=fn(),rSe=en(),yK=So(),Wb=class{static NONE=0;static CAPTURING_PHASE=1;static AT_TARGET=2;static BUBBLING_PHASE=3;NONE=0;CAPTURING_PHASE=1;AT_TARGET=2;BUBBLING_PHASE=3;_target=null;_relatedTarget=null;_touchTargetList=[];_path=[];_currentTarget=null;_eventPhase=yen.EventPhase.None;_stopPropagationFlag=!1;_stopImmediatePropagationFlag=!1;_canceledFlag=!1;_inPassiveListenerFlag=!1;_composedFlag=!1;_initializedFlag=!1;_dispatchFlag=!1;_isTrusted=!1;_type;_bubbles=!1;_cancelable=!1;_timeStamp;constructor(t,r){this._type=t,r&&(this._bubbles=r.bubbles||!1,this._cancelable=r.cancelable||!1,this._composedFlag=r.composed||!1),this._initializedFlag=!0,this._timeStamp=new Date().getTime()}get type(){return this._type}get target(){return this._target}get srcElement(){return this._target}get currentTarget(){return this._currentTarget}composedPath(){let t=[],r=this._path;if(r.length===0)return t;let n=this._currentTarget;if(n===null)throw new Error("Event currentTarget is null.");t.push(n);let i=0,s=0,a=r.length-1;for(;a>=0;){if(r[a].rootOfClosedTree&&s++,r[a].invocationTarget===n){i=a;break}r[a].slotInClosedTree&&s--,a--}let o=s,u=s;for(a=i-1;a>=0;)r[a].rootOfClosedTree&&o++,o<=u&&t.unshift(r[a].invocationTarget),r[a].slotInClosedTree&&(o--,o{"use strict";Object.defineProperty(vK,"__esModule",{value:!0});vK.CustomEventImpl=void 0;var _en=AK(),Aen=en(),nSe=class extends _en.EventImpl{_detail=null;constructor(t,r){super(t,r),this._detail=r&&r.detail||null}get detail(){return this._detail}initCustomEvent(t,r=!1,n=!1,i=null){this._dispatchFlag||((0,Aen.event_initialize)(this,t,r,n),this._detail=i)}};vK.CustomEventImpl=nSe});var Hc=b(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.tree_getFirstDescendantNode=sSe;sn.tree_getNextDescendantNode=aSe;sn.tree_getDescendantNodes=Mkt;sn.tree_getDescendantElements=ven;sn.tree_getSiblingNodes=ben;sn.tree_getFirstAncestorNode=bK;sn.tree_getNextAncestorNode=EK;sn.tree_getAncestorNodes=Een;sn.tree_getCommonAncestor=Sen;sn.tree_getFollowingNode=wen;sn.tree_getPrecedingNode=Ien;sn.tree_isConstrained=Lkt;sn.tree_nodeLength=Bkt;sn.tree_isEmpty=xen;sn.tree_rootNode=pf;sn.tree_isDescendantOf=Cen;sn.tree_isAncestorOf=oSe;sn.tree_isHostIncludingAncestorOf=$kt;sn.tree_isSiblingOf=Ten;sn.tree_isPreceding=Nen;sn.tree_isFollowing=Ren;sn.tree_isParentOf=Den;sn.tree_isChildOf=ken;sn.tree_previousSibling=Oen;sn.tree_nextSibling=Pen;sn.tree_firstChild=Men;sn.tree_lastChild=Len;sn.tree_treePosition=pM;sn.tree_index=Ben;sn.tree_retarget=$en;var Vl=Ln(),qa=fn();function Xb(e,t,r=!1){if(r&&Vl.Guard.isElementNode(t)&&Vl.Guard.isShadowRoot(t.shadowRoot)&&t.shadowRoot._firstChild)return t.shadowRoot._firstChild;if(t._firstChild)return t._firstChild;if(t===e)return null;if(t._nextSibling)return t._nextSibling;let n=t._parent;for(;n&&n!==e;){if(n._nextSibling)return n._nextSibling;n=n._parent}return null}function SK(){return{[Symbol.iterator]:()=>({next:()=>({done:!0,value:null})})}}function sSe(e,t=!1,r=!1,n){let i=t?e:Xb(e,e,r);for(;i&&n&&!n(i);)i=Xb(e,i,r);return i}function aSe(e,t,r=!1,n=!1,i){let s=Xb(e,t,n);for(;s&&i&&!i(s);)s=Xb(e,s,n);return s}function Mkt(e,t=!1,r=!1,n){return!t&&e._children.size===0?SK():{[Symbol.iterator]:()=>{let i=t?e:Xb(e,e,r);return{next:()=>{for(;i&&n&&!n(i);)i=Xb(e,i,r);if(i===null)return{done:!0,value:null};{let s={done:!1,value:i};return i=Xb(e,i,r),s}}}}}}function ven(e,t=!1,r=!1,n){return!t&&e._children.size===0?SK():{[Symbol.iterator]:()=>{let i=Mkt(e,t,r,a=>Vl.Guard.isElementNode(a))[Symbol.iterator](),s=i.next().value;return{next(){for(;s&&n&&!n(s);)s=i.next().value;if(s===null)return{done:!0,value:null};{let a={done:!1,value:s};return s=i.next().value,a}}}}}}function ben(e,t=!1,r){return!e._parent||e._parent._children.size===0?SK():{[Symbol.iterator](){let n=e._parent?e._parent._firstChild:null;return{next(){for(;n&&(r&&!r(n)||!t&&n===e);)n=n._nextSibling;if(n===null)return{done:!0,value:null};{let i={done:!1,value:n};return n=n._nextSibling,i}}}}}}function bK(e,t=!1,r){let n=t?e:e._parent;for(;n&&r&&!r(n);)n=n._parent;return n}function EK(e,t,r=!1,n){let i=t._parent;for(;i&&n&&!n(i);)i=i._parent;return i}function Een(e,t=!1,r){return!t&&!e._parent?SK():{[Symbol.iterator](){let n=bK(e,t,r);return{next(){if(n===null)return{done:!0,value:null};{let i={done:!1,value:n};return n=EK(e,n,t,r),i}}}}}}function Sen(e,t){if(e===t)return e._parent;let r=[],n=[],i=bK(e,!0);for(;i!==null;)r.push(i),i=EK(e,i,!0);let s=bK(t,!0);for(;s!==null;)n.push(s),s=EK(t,s,!0);let a=r.length,o=n.length,u=null;for(let c=Math.min(a,o);c>0;c--){let l=r[--a],d=n[--o];if(l!==d)break;u=l}return u}function wen(e,t){if(t._firstChild)return t._firstChild;if(t._nextSibling)return t._nextSibling;for(;;){let r=t._parent;if(r===null||r===e)return null;if(r._nextSibling)return r._nextSibling;t=r}}function Ien(e,t){return t===e?null:t._previousSibling?(t=t._previousSibling,t._lastChild?t._lastChild:t):t._parent}function Lkt(e){switch(e._nodeType){case qa.NodeType.Document:let t=!1,r=!1;for(let n of e._children)switch(n._nodeType){case qa.NodeType.ProcessingInstruction:case qa.NodeType.Comment:break;case qa.NodeType.DocumentType:if(t||r)return!1;t=!0;break;case qa.NodeType.Element:if(r)return!1;r=!0;break;default:return!1}break;case qa.NodeType.DocumentFragment:case qa.NodeType.Element:for(let n of e._children)switch(n._nodeType){case qa.NodeType.Element:case qa.NodeType.Text:case qa.NodeType.ProcessingInstruction:case qa.NodeType.CData:case qa.NodeType.Comment:break;default:return!1}break;case qa.NodeType.DocumentType:case qa.NodeType.Text:case qa.NodeType.ProcessingInstruction:case qa.NodeType.CData:case qa.NodeType.Comment:return!e.hasChildNodes()}for(let t of e._children)if(!Lkt(t))return!1;return!0}function Bkt(e){return Vl.Guard.isDocumentTypeNode(e)?0:Vl.Guard.isCharacterDataNode(e)?e._data.length:e._children.size}function xen(e){return Bkt(e)===0}function pf(e,t=!1){if(t){let r=pf(e,!1);return Vl.Guard.isShadowRoot(r)?pf(r._host,!0):r}else return e._parent?pf(e._parent):e}function Cen(e,t,r=!1,n=!1){let i=sSe(e,r,n);for(;i!==null;){if(i===t)return!0;i=aSe(e,i,r,n)}return!1}function oSe(e,t,r=!1,n=!1){let i=r?e:n&&Vl.Guard.isShadowRoot(e)?e._host:e._parent;for(;i!==null;){if(i===t)return!0;i=n&&Vl.Guard.isShadowRoot(i)?i._host:i._parent}return!1}function $kt(e,t,r=!1){if(oSe(e,t,r))return!0;let n=pf(e);return!!(Vl.Guard.isDocumentFragmentNode(n)&&n._host!==null&&$kt(n._host,t,r))}function Ten(e,t,r=!1){if(e===t){if(r)return!0}else return e._parent!==null&&e._parent===t._parent;return!1}function Nen(e,t){let r=pM(e),n=pM(t);return r===-1||n===-1||pf(e)!==pf(t)?!1:nr}function Den(e,t){return e._parent===t}function ken(e,t){return t._parent===e}function Oen(e){return e._previousSibling}function Pen(e){return e._nextSibling}function Men(e){return e._firstChild}function Len(e){return e._lastChild}function pM(e){let t=pf(e),r=0,n=sSe(t);for(;n!==null;){if(r++,n===e)return r;n=aSe(t,n)}return-1}function Ben(e){let t=0;for(;e._previousSibling!==null;)t++,e=e._previousSibling;return t}function $en(e,t){for(;;){if(!e||!Vl.Guard.isNode(e))return e;let r=pf(e);if(!Vl.Guard.isShadowRoot(r)||t&&Vl.Guard.isNode(t)&&oSe(r,t,!0,!0))return e;e=r.host}}});var Rx=b(Zb=>{"use strict";Object.defineProperty(Zb,"__esModule",{value:!0});Zb.observer_queueAMutationObserverMicrotask=Ukt;Zb.observer_notifyMutationObservers=qkt;Zb.observer_queueMutationRecord=lSe;Zb.observer_queueTreeMutationRecord=qen;Zb.observer_queueAttributeMutationRecord=jen;var cSe=ps(),Fen=Ln(),Jb=Ts(),uSe=A0(),Fkt=Hc(),Uen=wK();function Ukt(){let e=cSe.dom.window;e._mutationObserverMicrotaskQueued||(e._mutationObserverMicrotaskQueued=!0,Promise.resolve().then(()=>{qkt()}))}function qkt(){let e=cSe.dom.window;e._mutationObserverMicrotaskQueued=!1;let t=Jb.set.clone(e._mutationObservers),r=Jb.set.clone(e._signalSlots);Jb.set.empty(e._signalSlots);for(let n of t){let i=Jb.list.clone(n._recordQueue);Jb.list.empty(n._recordQueue);for(let s=0;sFen.Guard.isTransientRegisteredObserver(o)&&o.observer===n)}if(!Jb.list.isEmpty(i))try{n._callback.call(n,i,n)}catch{}}if(cSe.dom.features.slots)for(let n of r)(0,Uen.event_fireAnEvent)("slotchange",n,void 0,{bubbles:!0})}function lSe(e,t,r,n,i,s,a,o,u){let c=new Map,l=(0,Fkt.tree_getFirstAncestorNode)(t,!0);for(;l!==null;){for(let d=0;d{"use strict";Object.defineProperty(hf,"__esModule",{value:!0});hf.shadowTree_signalASlotChange=jkt;hf.shadowTree_isConnected=zen;hf.shadowTree_isAssigned=Qen;hf.shadowTree_findASlot=dSe;hf.shadowTree_findSlotables=fSe;hf.shadowTree_findFlattenedSlotables=Hkt;hf.shadowTree_assignSlotables=pSe;hf.shadowTree_assignSlotablesForATree=Gen;hf.shadowTree_assignASlot=Yen;var Hen=ps(),zl=Ln(),Ken=gn(),h_=Hc(),Ven=Rx();function jkt(e){Hen.dom.window._signalSlots.add(e),(0,Ven.observer_queueAMutationObserverMicrotask)()}function zen(e){return zl.Guard.isDocumentNode((0,h_.tree_rootNode)(e,!0))}function Qen(e){return e._assignedSlot!==null}function dSe(e,t=!1){let n=zl.Cast.asNode(e)._parent;if(n===null)return null;let i=n._shadowRoot||null;if(i===null||t&&i._mode!=="open")return null;let s=(0,h_.tree_getFirstDescendantNode)(i,!1,!0,a=>zl.Guard.isSlot(a));for(;s!==null;){if(s._name===e._name)return s;s=(0,h_.tree_getNextDescendantNode)(i,s,!1,!0,a=>zl.Guard.isSlot(a))}return null}function fSe(e){let t=[],r=(0,h_.tree_rootNode)(e);if(!zl.Guard.isShadowRoot(r))return t;let n=r._host;for(let i of n._children)zl.Guard.isSlotable(i)&&dSe(i)===e&&t.push(i);return t}function Hkt(e){let t=[],r=(0,h_.tree_rootNode)(e);if(!zl.Guard.isShadowRoot(r))return t;let n=fSe(e);if((0,Ken.isEmpty)(n))for(let i of e._children)zl.Guard.isSlotable(i)&&n.push(i);for(let i of n)if(zl.Guard.isSlot(i)&&zl.Guard.isShadowRoot((0,h_.tree_rootNode)(i))){let s=Hkt(i);t.push(...s)}else t.push(i);return t}function pSe(e){let t=fSe(e);if(t.length===e._assignedNodes.length){let r=!0;for(let n=0;nzl.Guard.isSlot(r));for(;t!==null;)pSe(t),t=(0,h_.tree_getNextDescendantNode)(e,t,!0,!1,r=>zl.Guard.isSlot(r))}function Yen(e){let t=dSe(e);t!==null&&pSe(t)}});var v0=b(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});Ql.dom_runRemovingSteps=Xen;Ql.dom_runCloningSteps=Jen;Ql.dom_runAdoptingSteps=Zen;Ql.dom_runAttributeChangeSteps=etn;Ql.dom_runInsertionSteps=ttn;Ql.dom_runNodeIteratorPreRemovingSteps=rtn;Ql.dom_hasSupportedTokens=ntn;Ql.dom_getSupportedTokens=itn;Ql.dom_runEventConstructingSteps=stn;Ql.dom_runChildTextContentChangeSteps=atn;var Wen=ps(),eE=Hc(),Kkt=Ln(),IK=hM(),Vkt=new Map;function Xen(e,t){}function Jen(e,t,r,n){}function Zen(e,t){}function etn(e,t,r,n,i){Wen.dom.features.slots&&(ctn.call(e,e,t,r,n,i),utn.call(e,e,t,r,n,i)),ltn.call(e,e,t,n,i);for(let s of e._attributeChangeSteps)s.call(e,e,t,r,n,i)}function ttn(e){}function rtn(e,t){otn.call(e,e,t)}function ntn(e){return Vkt.has(e)}function itn(e){return Vkt.get(e)||new Set}function stn(e){}function atn(e){}function otn(e,t){if(!(t===e._root||!(0,eE.tree_isAncestorOf)(e._reference,t,!0))){if(e._pointerBeforeReference)for(;;){let r=(0,eE.tree_getFollowingNode)(e._root,t);if(r!==null&&(0,eE.tree_isDescendantOf)(e._root,r,!0)&&!(0,eE.tree_isDescendantOf)(t,r,!0)){e._reference=r;return}else if(r===null){e._pointerBeforeReference=!1;return}}if(t._previousSibling===null)t._parent!==null&&(e._reference=t._parent);else{let r=t._previousSibling,n=(0,eE.tree_getFirstDescendantNode)(t._previousSibling,!0,!1);for(;n!==null;)n!==null&&(r=n),n=(0,eE.tree_getNextDescendantNode)(t._previousSibling,n,!0,!1);e._reference=r}}}function utn(e,t,r,n,i){if(Kkt.Guard.isSlot(e)&&t==="name"&&i===null){if(n===r||n===null&&r===""||n===""&&r===null)return;n===null||n===""?e._name="":e._name=n,(0,IK.shadowTree_assignSlotablesForATree)((0,eE.tree_rootNode)(e))}}function ctn(e,t,r,n,i){if(Kkt.Guard.isSlotable(e)&&t==="slot"&&i===null){if(n===r||n===null&&r===""||n===""&&r===null)return;n===null||n===""?e._name="":e._name=n,(0,IK.shadowTree_isAssigned)(e)&&(0,IK.shadowTree_assignSlotables)(e._assignedSlot),(0,IK.shadowTree_assignASlot)(e)}}function ltn(e,t,r,n){t==="id"&&n===null&&(r?e._uniqueIdentifier=r:e._uniqueIdentifier=void 0)}});var wK=b(Aa=>{"use strict";Object.defineProperty(Aa,"__esModule",{value:!0});Aa.event_setTheCanceledFlag=mtn;Aa.event_initialize=gtn;Aa.event_createAnEvent=Gkt;Aa.event_innerEventCreationSteps=Ykt;Aa.event_dispatch=Wkt;Aa.event_appendToAnEventPath=xK;Aa.event_invoke=hSe;Aa.event_innerInvoke=mSe;Aa.event_fireAnEvent=ytn;Aa.event_createLegacyEvent=_tn;Aa.event_getterEventHandlerIDLAttribute=Atn;Aa.event_setterEventHandlerIDLAttribute=vtn;Aa.event_determineTheTargetOfAnEventHandler=gSe;Aa.event_getTheCurrentValueOfAnEventHandler=Xkt;Aa.event_activateAnEventHandler=btn;Aa.event_deactivateAnEventHandler=Etn;var dtn=ps(),mM=fn(),hs=Ln(),ftn=iSe(),Qkt=AK(),ptn=$s(),mf=Hc(),zkt=hM(),htn=v0();function mtn(e){e._cancelable&&!e._inPassiveListenerFlag&&(e._canceledFlag=!0)}function gtn(e,t,r,n){e._initializedFlag=!0,e._stopPropagationFlag=!1,e._stopImmediatePropagationFlag=!1,e._canceledFlag=!1,e._isTrusted=!1,e._target=null,e._type=t,e._bubbles=r,e._cancelable=n}function Gkt(e,t=void 0){t===void 0&&(t=null);let n=Ykt(e,t,new Date,{});return n._isTrusted=!0,n}function Ykt(e,t,r,n){let i=new e("");return i._initializedFlag=!0,i._timeStamp=r.getTime(),Object.assign(i,n),dtn.dom.features.steps&&(0,htn.dom_runEventConstructingSteps)(i),i}function Wkt(e,t,r=!1,n={value:!1}){let i=!1;e._dispatchFlag=!0;let s=t;if(r){let u=t._associatedDocument;hs.Guard.isDocumentNode(u)&&(s=u)}let a=null,o=(0,mf.tree_retarget)(e._relatedTarget,t);if(t!==o||t===e._relatedTarget){let u=[];for(let m of e._touchTargetList)u.push((0,mf.tree_retarget)(m,t));xK(e,t,s,o,u,!1);let c=hs.Guard.isMouseEvent(e)&&e._type==="click";c&&t._activationBehavior!==void 0&&(a=t);let l=hs.Guard.isSlotable(t)&&(0,zkt.shadowTree_isAssigned)(t)?t:null,d=!1,f=t._getTheParent(e);for(;f!==null&&hs.Guard.isNode(f);){if(l!==null){if(!hs.Guard.isSlot(f))throw new Error("Parent node of a slotable should be a slot.");l=null;let m=(0,mf.tree_rootNode)(f,!0);hs.Guard.isShadowRoot(m)&&m._mode==="closed"&&(d=!0)}hs.Guard.isSlotable(f)&&(0,zkt.shadowTree_isAssigned)(f)&&(l=f),o=(0,mf.tree_retarget)(e._relatedTarget,f),u=[];for(let m of e._touchTargetList)u.push((0,mf.tree_retarget)(m,f));hs.Guard.isWindow(f)||hs.Guard.isNode(f)&&hs.Guard.isNode(t)&&(0,mf.tree_isAncestorOf)((0,mf.tree_rootNode)(t,!0),f,!0,!0)?(c&&e._bubbles&&a===null&&f._activationBehavior&&(a=f),xK(e,f,null,o,u,d)):f===o?f=null:(t=f,c&&a===null&&t._activationBehavior&&(a=t),xK(e,f,t,o,u,d)),f!==null&&(f=f._getTheParent(e)),d=!1}let p=null,h=e._path;for(let m=h.length-1;m>=0;m--){let y=h[m];if(y.shadowAdjustedTarget!==null){p=y;break}}if(p!==null)if(hs.Guard.isNode(p.shadowAdjustedTarget)&&hs.Guard.isShadowRoot((0,mf.tree_rootNode)(p.shadowAdjustedTarget,!0)))i=!0;else if(hs.Guard.isNode(p.relatedTarget)&&hs.Guard.isShadowRoot((0,mf.tree_rootNode)(p.relatedTarget,!0)))i=!0;else for(let m=0;m=0;m--){let y=h[m];y.shadowAdjustedTarget!==null?e._eventPhase=mM.EventPhase.AtTarget:e._eventPhase=mM.EventPhase.Capturing,hSe(y,e,"capturing",n)}for(let m=0;m0&&(l=i[s-1],l.shadowAdjustedTarget!==null&&(t._target=l.shadowAdjustedTarget))}if(t._relatedTarget=e.relatedTarget,t._touchTargetList=e.touchTargetList,t._stopPropagationFlag)return;t._currentTarget=e.invocationTarget;let o=t._currentTarget._eventListenerList,u=new Array(...o);if(!mSe(t,u,r,e,n)&&t._isTrusted){let l=t._type;l==="animationend"?t._type="webkitAnimationEnd":l==="animationiteration"?t._type="webkitAnimationIteration":l==="animationstart"?t._type="webkitAnimationStart":l==="transitionend"&&(t._type="webkitTransitionEnd"),mSe(t,u,r,e,n),t._type=l}}function mSe(e,t,r,n,i={value:!1}){let s=!1;for(let a=0;a{"use strict";Object.defineProperty(gM,"__esModule",{value:!0});gM.abort_add=wtn;gM.abort_remove=Itn;gM.abort_signalAbort=xtn;var Stn=wK();function wtn(e,t){t._abortedFlag||t._abortAlgorithms.add(e)}function Itn(e,t){t._abortAlgorithms.delete(e)}function xtn(e){if(!e._abortedFlag){e._abortedFlag=!0;for(let t of e._abortAlgorithms)t.call(e);e._abortAlgorithms.clear(),(0,Stn.event_fireAnEvent)("abort",e)}}});var yM=b(gf=>{"use strict";Object.defineProperty(gf,"__esModule",{value:!0});gf.customElement_isValidCustomElementName=ktn;gf.customElement_isValidElementName=Otn;gf.customElement_isVoidElementName=Ptn;gf.customElement_isValidShadowHostName=Mtn;gf.customElement_enqueueACustomElementUpgradeReaction=Ltn;gf.customElement_enqueueACustomElementCallbackReaction=Btn;gf.customElement_upgrade=$tn;gf.customElement_tryToUpgrade=Ftn;gf.customElement_lookUpACustomElementDefinition=Utn;var Ctn=/[a-z]([\0-\t\x2D\._a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*-([\0-\t\x2D\._a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*/,Ttn=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),Ntn=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]),Rtn=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]),Dtn=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]);function ktn(e){return!(!Ctn.test(e)||Ttn.has(e))}function Otn(e){return Ntn.has(e)}function Ptn(e){return Rtn.has(e)}function Mtn(e){return Dtn.has(e)}function Ltn(e,t){}function Btn(e,t,r){}function $tn(e,t){}function Ftn(e){}function Utn(e,t,r,n){return null}});var CK=b(_Se=>{"use strict";Object.defineProperty(_Se,"__esModule",{value:!0});_Se.traversal_filter=jtn;var ySe=fn(),qtn=$s();function jtn(e,t){if(e._activeFlag)throw new qtn.InvalidStateError;let n=1<{"use strict";Object.defineProperty(TK,"__esModule",{value:!0});TK.nodeIterator_traverse=ztn;TK.nodeIterator_iteratorList=Qtn;var Htn=ps(),Ktn=fn(),Vtn=CK(),Zkt=Hc();function ztn(e,t){let r=e._reference,n=e._pointerBeforeReference;for(;;){if(t)if(n)n=!1;else{let s=(0,Zkt.tree_getFollowingNode)(e._root,r);if(s)r=s;else return null}else if(n){let s=(0,Zkt.tree_getPrecedingNode)(e.root,r);if(s)r=s;else return null}else n=!0;if((0,Vtn.traversal_filter)(e,r)===Ktn.FilterResult.Accept)break}return e._reference=r,e._pointerBeforeReference=n,r}function Qtn(){return Htn.dom.window._iteratorList}});var vSe=b(Dx=>{"use strict";Object.defineProperty(Dx,"__esModule",{value:!0});Dx.xml_isName=Gtn;Dx.xml_isQName=Ytn;Dx.xml_isLegalChar=Wtn;Dx.xml_isPubidChar=Xtn;function Gtn(e){for(let t=0;t=97&&r<=122||r>=65&&r<=90||r===58||r===95||r>=192&&r<=214||r>=216&&r<=246||r>=248&&r<=767||r>=880&&r<=893||r>=895&&r<=8191||r>=8204&&r<=8205||r>=8304&&r<=8591||r>=11264&&r<=12271||r>=12289&&r<=55295||r>=63744&&r<=64975||r>=65008&&r<=65533)&&!(t!==0&&(r===45||r===46||r>=48&&r<=57||r===183||r>=768&&r<=879||r>=8255&&r<=8256))){if(r>=55296&&r<=56319&&t=56320&&n<=57343&&(r=(r-55296)*1024+n-56320+65536,t++,r>=65536&&r<=983039))continue}return!1}}return!0}function Ytn(e){let t=!1;for(let r=0;r=97&&n<=122||n>=65&&n<=90||n===95||n>=192&&n<=214||n>=216&&n<=246||n>=248&&n<=767||n>=880&&n<=893||n>=895&&n<=8191||n>=8204&&n<=8205||n>=8304&&n<=8591||n>=11264&&n<=12271||n>=12289&&n<=55295||n>=63744&&n<=64975||n>=65008&&n<=65533)){{if(r!==0&&(n===45||n===46||n>=48&&n<=57||n===183||n>=768&&n<=879||n>=8255&&n<=8256))continue;if(r!==0&&n===58){if(t||r===e.length-1)return!1;t=!0;continue}}if(n>=55296&&n<=56319&&r=56320&&i<=57343&&(n=(n-55296)*1024+i-56320+65536,r++,n>=65536&&n<=983039))continue}return!1}}return!0}function Wtn(e){for(let t=0;t=32&&r<=55295||r>=57344&&r<=65533)){if(r>=55296&&r<=56319&&t=56320&&n<=57343&&(r=(r-55296)*1024+n-56320+65536,t++,r>=65536&&r<=1114111))continue}return!1}}return!0}function Xtn(e){for(let t=0;t=97&&r<=122||r>=65&&r<=90||r>=39&&r<=59||r===32||r===13||r===10||r>=35&&r<=37||r===33||r===61||r===63||r===64||r===95))return!1}return!0}});var SSe=b(_M=>{"use strict";Object.defineProperty(_M,"__esModule",{value:!0});_M.namespace_validate=ESe;_M.namespace_validateAndExtract=Jtn;_M.namespace_extractQName=Ztn;var kx=$s(),bSe=Ts(),eOt=vSe();function ESe(e){if(!(0,eOt.xml_isName)(e))throw new kx.InvalidCharacterError(`Invalid XML name: ${e}`);if(!(0,eOt.xml_isQName)(e))throw new kx.InvalidCharacterError(`Invalid XML qualified name: ${e}.`)}function Jtn(e,t){e||(e=null),ESe(t);let r=t.split(":"),n=r.length===2?r[0]:null,i=r.length===2?r[1]:t;if(n&&e===null)throw new kx.NamespaceError("Qualified name includes a prefix but the namespace is null.");if(n==="xml"&&e!==bSe.namespace.XML)throw new kx.NamespaceError('Qualified name includes the "xml" prefix but the namespace is not the XML namespace.');if(e!==bSe.namespace.XMLNS&&(n==="xmlns"||t==="xmlns"))throw new kx.NamespaceError('Qualified name includes the "xmlns" prefix but the namespace is not the XMLNS namespace.');if(e===bSe.namespace.XMLNS&&n!=="xmlns"&&t!=="xmlns")throw new kx.NamespaceError('Qualified name does not include the "xmlns" prefix but the namespace is the XMLNS namespace.');return[e,n,i]}function Ztn(e){ESe(e);let t=e.split(":"),r=t.length===2?t[0]:null,n=t.length===2?t[1]:e;return[r,n]}});var NK=b(AM=>{"use strict";Object.defineProperty(AM,"__esModule",{value:!0});AM.document_elementInterface=orn;AM.document_internalCreateElementNS=urn;AM.document_adopt=crn;var tOt=ps(),rOt=Ln(),ern=gn(),trn=$H(),rrn=yM(),nOt=Hc(),nrn=SSe(),irn=v0(),srn=Ox(),arn=tE();function orn(e,t){return trn.ElementImpl}function urn(e,t,r,n){let[i,s,a]=(0,nrn.namespace_validateAndExtract)(t,r),o=null;return n!==void 0&&((0,ern.isString)(n)?o=n:o=n.is),(0,srn.element_createAnElement)(e,a,i,s,o,!0)}function crn(e,t){if(e._nodeDocument===t&&e._parent===null)return;let r=e._nodeDocument;if(e._parent&&(0,arn.mutation_remove)(e,e._parent),t!==r){let n=(0,nOt.tree_getFirstDescendantNode)(e,!0,!0);for(;n!==null;){if(n._nodeDocument=t,rOt.Guard.isElementNode(n))for(let i of n._attributeList._asArray())i._nodeDocument=t;tOt.dom.features.customElements&&rOt.Guard.isElementNode(n)&&n._customElementState==="custom"&&(0,rrn.customElement_enqueueACustomElementCallbackReaction)(n,"adoptedCallback",[r,t]),tOt.dom.features.steps&&(0,irn.dom_runAdoptingSteps)(n,r),n=(0,nOt.tree_getNextDescendantNode)(e,n,!0,!0)}}}});var tE=b(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.mutation_ensurePreInsertionValidity=sOt;Jp.mutation_preInsert=aOt;Jp.mutation_insert=RK;Jp.mutation_append=frn;Jp.mutation_replace=prn;Jp.mutation_replaceAll=hrn;Jp.mutation_preRemove=mrn;Jp.mutation_remove=vM;var tn=ps(),an=$s(),it=fn(),mi=Ln(),wSe=gn(),iOt=Ts(),Px=yM(),Ns=Hc(),lrn=ASe(),Kc=hM(),Mx=Rx(),m_=v0(),ISe=NK();function sOt(e,t,r){let n=t._nodeType,i=e._nodeType,s=r?r._nodeType:null;if(n!==it.NodeType.Document&&n!==it.NodeType.DocumentFragment&&n!==it.NodeType.Element)throw new an.HierarchyRequestError(`Only document, document fragment and element nodes can contain child nodes. Parent node is ${t.nodeName}.`);if((0,Ns.tree_isHostIncludingAncestorOf)(t,e,!0))throw new an.HierarchyRequestError(`The node to be inserted cannot be an inclusive ancestor of parent node. Node is ${e.nodeName}, parent node is ${t.nodeName}.`);if(r!==null&&r._parent!==t)throw new an.NotFoundError(`The reference child node cannot be found under parent node. Child node is ${r.nodeName}, parent node is ${t.nodeName}.`);if(i!==it.NodeType.DocumentFragment&&i!==it.NodeType.DocumentType&&i!==it.NodeType.Element&&i!==it.NodeType.Text&&i!==it.NodeType.ProcessingInstruction&&i!==it.NodeType.CData&&i!==it.NodeType.Comment)throw new an.HierarchyRequestError(`Only document fragment, document type, element, text, processing instruction, cdata section or comment nodes can be inserted. Node is ${e.nodeName}.`);if(i===it.NodeType.Text&&n===it.NodeType.Document)throw new an.HierarchyRequestError(`Cannot insert a text node as a child of a document node. Node is ${e.nodeName}.`);if(i===it.NodeType.DocumentType&&n!==it.NodeType.Document)throw new an.HierarchyRequestError(`A document type node can only be inserted under a document node. Parent node is ${t.nodeName}.`);if(n===it.NodeType.Document){if(i===it.NodeType.DocumentFragment){let a=0;for(let o of e._children)if(o._nodeType===it.NodeType.Element)a++;else if(o._nodeType===it.NodeType.Text)throw new an.HierarchyRequestError(`Cannot insert text a node as a child of a document node. Node is ${o.nodeName}.`);if(a>1)throw new an.HierarchyRequestError(`A document node can only have one document element node. Document fragment to be inserted has ${a} element nodes.`);if(a===1){for(let o of t._children)if(o._nodeType===it.NodeType.Element)throw new an.HierarchyRequestError("The document node already has a document element node.");if(r){if(s===it.NodeType.DocumentType)throw new an.HierarchyRequestError("Cannot insert an element node before a document type node.");let o=r._nextSibling;for(;o;){if(o._nodeType===it.NodeType.DocumentType)throw new an.HierarchyRequestError("Cannot insert an element node before a document type node.");o=o._nextSibling}}}}else if(i===it.NodeType.Element){for(let a of t._children)if(a._nodeType===it.NodeType.Element)throw new an.HierarchyRequestError(`Document already has a document element node. Node is ${e.nodeName}.`);if(r){if(s===it.NodeType.DocumentType)throw new an.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${e.nodeName}.`);let a=r._nextSibling;for(;a;){if(a._nodeType===it.NodeType.DocumentType)throw new an.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${e.nodeName}.`);a=a._nextSibling}}}else if(i===it.NodeType.DocumentType){for(let a of t._children)if(a._nodeType===it.NodeType.DocumentType)throw new an.HierarchyRequestError(`Document already has a document type node. Node is ${e.nodeName}.`);if(r){let a=r._previousSibling;for(;a;){if(a._nodeType===it.NodeType.Element)throw new an.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${e.nodeName}.`);a=a._previousSibling}}else{let a=t._firstChild;for(;a;){if(a._nodeType===it.NodeType.Element)throw new an.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${e.nodeName}.`);a=a._nextSibling}}}}}function aOt(e,t,r){sOt(e,t,r);let n=r;return n===e&&(n=e._nextSibling),(0,ISe.document_adopt)(e,t._nodeDocument),RK(e,t,n),e}function RK(e,t,r,n){if(r===null&&e._nodeType!==it.NodeType.DocumentFragment){drn(e,t,n);return}let i=e._nodeType===it.NodeType.DocumentFragment?e._children.size:1;if(r!==null&&tn.dom.rangeList.size!==0){let u=(0,Ns.tree_index)(r);for(let c of tn.dom.rangeList)c._start[0]===t&&c._start[1]>u&&(c._start[1]+=i),c._end[0]===t&&c._end[1]>u&&(c._end[1]+=i)}let s=e._nodeType===it.NodeType.DocumentFragment?new Array(...e._children):[e];if(e._nodeType===it.NodeType.DocumentFragment)for(;e._firstChild;)vM(e._firstChild,e,!0);tn.dom.features.mutationObservers&&e._nodeType===it.NodeType.DocumentFragment&&(0,Mx.observer_queueTreeMutationRecord)(e,[],s,null,null);let a=r?r._previousSibling:t._lastChild,o=r===null?-1:(0,Ns.tree_index)(r);for(let u=0;u1)throw new an.HierarchyRequestError(`A document node can only have one document element node. Document fragment to be inserted has ${o} element nodes.`);if(o===1){for(let c of r._children)if(c._nodeType===it.NodeType.Element&&c!==e)throw new an.HierarchyRequestError("The document node already has a document element node.");let u=e._nextSibling;for(;u;){if(u._nodeType===it.NodeType.DocumentType)throw new an.HierarchyRequestError("Cannot insert an element node before a document type node.");u=u._nextSibling}}}else if(t._nodeType===it.NodeType.Element){for(let u of r._children)if(u._nodeType===it.NodeType.Element&&u!==e)throw new an.HierarchyRequestError(`Document already has a document element node. Node is ${t.nodeName}.`);let o=e._nextSibling;for(;o;){if(o._nodeType===it.NodeType.DocumentType)throw new an.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${t.nodeName}.`);o=o._nextSibling}}else if(t._nodeType===it.NodeType.DocumentType){for(let u of r._children)if(u._nodeType===it.NodeType.DocumentType&&u!==e)throw new an.HierarchyRequestError(`Document already has a document type node. Node is ${t.nodeName}.`);let o=e._previousSibling;for(;o;){if(o._nodeType===it.NodeType.Element)throw new an.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${t.nodeName}.`);o=o._previousSibling}}}let n=e._nextSibling;n===t&&(n=t._nextSibling);let i=e._previousSibling;(0,ISe.document_adopt)(t,r._nodeDocument);let s=[];e._parent!==null&&(s.push(e),vM(e,e._parent,!0));let a=[];return t._nodeType===it.NodeType.DocumentFragment?a=Array.from(t._children):a.push(t),RK(t,r,n,!0),tn.dom.features.mutationObservers&&(0,Mx.observer_queueTreeMutationRecord)(r,a,s,i,n),e}function hrn(e,t){e!==null&&(0,ISe.document_adopt)(e,t._nodeDocument);let r=Array.from(t._children),n=[];e&&e._nodeType===it.NodeType.DocumentFragment?n=Array.from(e._children):e!==null&&n.push(e);for(let i of r)vM(i,t,!0);e!==null&&RK(e,t,null,!0),tn.dom.features.mutationObservers&&(0,Mx.observer_queueTreeMutationRecord)(t,n,r,null,null)}function mrn(e,t){if(e._parent!==t)throw new an.NotFoundError(`The child node cannot be found under parent node. Child node is ${e.nodeName}, parent node is ${t.nodeName}.`);return vM(e,t),e}function vM(e,t,r){if(tn.dom.rangeList.size!==0){let u=(0,Ns.tree_index)(e);for(let c of tn.dom.rangeList)(0,Ns.tree_isDescendantOf)(e,c._start[0],!0)&&(c._start=[t,u]),(0,Ns.tree_isDescendantOf)(e,c._end[0],!0)&&(c._end=[t,u]),c._start[0]===t&&c._start[1]>u&&c._start[1]--,c._end[0]===t&&c._end[1]>u&&c._end[1]--;for(let c of tn.dom.rangeList)c._start[0]===t&&c._start[1]>u&&(c._start[1]-=1),c._end[0]===t&&c._end[1]>u&&(c._end[1]-=1)}if(tn.dom.features.steps)for(let u of(0,lrn.nodeIterator_iteratorList)())u._root._nodeDocument===e._nodeDocument&&(0,m_.dom_runNodeIteratorPreRemovingSteps)(u,e);let n=e._previousSibling,i=e._nextSibling;mi.Guard.isDocumentNode(t)&&mi.Guard.isElementNode(e)&&(t._documentElement=null),e._parent=null,t._children.delete(e);let s=e._previousSibling,a=e._nextSibling;e._previousSibling=null,e._nextSibling=null,s&&(s._nextSibling=a),a&&(a._previousSibling=s),s||(t._firstChild=a),a||(t._lastChild=s),tn.dom.features.slots&&mi.Guard.isSlotable(e)&&e._assignedSlot!==null&&(0,Kc.shadowTree_isAssigned)(e)&&(0,Kc.shadowTree_assignSlotables)(e._assignedSlot),tn.dom.features.slots&&mi.Guard.isShadowRoot((0,Ns.tree_rootNode)(t))&&mi.Guard.isSlot(t)&&(0,wSe.isEmpty)(t._assignedNodes)&&(0,Kc.shadowTree_signalASlotChange)(t),tn.dom.features.slots&&(0,Ns.tree_getFirstDescendantNode)(e,!0,!1,c=>mi.Guard.isSlot(c))!==null&&((0,Kc.shadowTree_assignSlotablesForATree)((0,Ns.tree_rootNode)(t)),(0,Kc.shadowTree_assignSlotablesForATree)(e)),tn.dom.features.steps&&(0,m_.dom_runRemovingSteps)(e,t),tn.dom.features.customElements&&mi.Guard.isCustomElementNode(e)&&(0,Px.customElement_enqueueACustomElementCallbackReaction)(e,"disconnectedCallback",[]);let o=(0,Ns.tree_getFirstDescendantNode)(e,!1,!0);for(;o!==null;)tn.dom.features.steps&&(0,m_.dom_runRemovingSteps)(o,e),tn.dom.features.customElements&&mi.Guard.isCustomElementNode(o)&&(0,Px.customElement_enqueueACustomElementCallbackReaction)(o,"disconnectedCallback",[]),o=(0,Ns.tree_getNextDescendantNode)(e,o,!1,!0);if(tn.dom.features.mutationObservers){let u=(0,Ns.tree_getFirstAncestorNode)(t,!0);for(;u!==null;){for(let c of u._registeredObserverList)c.options.subtree&&e._registeredObserverList.push({observer:c.observer,options:c.options,source:c});u=(0,Ns.tree_getNextAncestorNode)(t,u,!0)}}tn.dom.features.mutationObservers&&(r||(0,Mx.observer_queueTreeMutationRecord)(t,[],[e],n,i)),tn.dom.features.steps&&mi.Guard.isTextNode(e)&&(0,m_.dom_runChildTextContentChangeSteps)(t)}});var Ox=b(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.element_has=grn;xo.element_change=uOt;xo.element_append=xSe;xo.element_remove=CSe;xo.element_replace=cOt;xo.element_getAnAttributeByName=lOt;xo.element_getAnAttributeByNamespaceAndLocalName=bM;xo.element_getAnAttributeValue=yrn;xo.element_setAnAttribute=_rn;xo.element_setAnAttributeValue=Arn;xo.element_removeAnAttributeByName=vrn;xo.element_removeAnAttributeByNamespaceAndLocalName=brn;xo.element_createAnElement=Ern;xo.element_insertAdjacent=Srn;var Vc=ps(),rE=Ts(),OK=Ln(),nE=$s(),kK=A0(),b0=yM(),PK=Rx(),MK=v0(),DK=tE(),oOt=NK();function grn(e,t){return t._attributeList._asArray().indexOf(e)!==-1}function uOt(e,t,r){Vc.dom.features.mutationObservers&&(0,PK.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,e._value),Vc.dom.features.customElements&&OK.Guard.isCustomElementNode(t)&&(0,b0.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,e._value,r,e._namespace]),Vc.dom.features.steps&&(0,MK.dom_runAttributeChangeSteps)(t,e._localName,e._value,r,e._namespace),e._value=r}function xSe(e,t){Vc.dom.features.mutationObservers&&(0,PK.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,null),Vc.dom.features.customElements&&OK.Guard.isCustomElementNode(t)&&(0,b0.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,null,e._value,e._namespace]),Vc.dom.features.steps&&(0,MK.dom_runAttributeChangeSteps)(t,e._localName,null,e._value,e._namespace),t._attributeList._asArray().push(e),e._element=t,!t._nodeDocument._hasNamespaces&&(e._namespace!==null||e._namespacePrefix!==null||e._localName==="xmlns")&&(t._nodeDocument._hasNamespaces=!0)}function CSe(e,t){Vc.dom.features.mutationObservers&&(0,PK.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,e._value),Vc.dom.features.customElements&&OK.Guard.isCustomElementNode(t)&&(0,b0.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,e._value,null,e._namespace]),Vc.dom.features.steps&&(0,MK.dom_runAttributeChangeSteps)(t,e._localName,e._value,null,e._namespace);let r=t._attributeList._asArray().indexOf(e);t._attributeList._asArray().splice(r,1),e._element=null}function cOt(e,t,r){Vc.dom.features.mutationObservers&&(0,PK.observer_queueAttributeMutationRecord)(r,e._localName,e._namespace,e._value),Vc.dom.features.customElements&&OK.Guard.isCustomElementNode(r)&&(0,b0.customElement_enqueueACustomElementCallbackReaction)(r,"attributeChangedCallback",[e._localName,e._value,t._value,e._namespace]),Vc.dom.features.steps&&(0,MK.dom_runAttributeChangeSteps)(r,e._localName,e._value,t._value,e._namespace);let n=r._attributeList._asArray().indexOf(e);n!==-1&&(r._attributeList._asArray()[n]=t),e._element=null,t._element=r,!r._nodeDocument._hasNamespaces&&(t._namespace!==null||t._namespacePrefix!==null||t._localName==="xmlns")&&(r._nodeDocument._hasNamespaces=!0)}function lOt(e,t){return t._namespace===rE.namespace.HTML&&t._nodeDocument._type==="html"&&(e=e.toLowerCase()),t._attributeList._asArray().find(r=>r._qualifiedName===e)||null}function bM(e,t,r){let n=e||null;return r._attributeList._asArray().find(i=>i._namespace===n&&i._localName===t)||null}function yrn(e,t,r=""){let n=bM(r,t,e);return n===null?"":n._value}function _rn(e,t){if(e._element!==null&&e._element!==t)throw new nE.InUseAttributeError(`This attribute already exists in the document: ${e._qualifiedName} as a child of ${e._element._qualifiedName}.`);let r=bM(e._namespace||"",e._localName,t);return r===e?e:(r!==null?cOt(r,e,t):xSe(e,t),r)}function Arn(e,t,r,n=null,i=null){let s=bM(i||"",t,e);if(s===null){let a=(0,kK.create_attr)(e._nodeDocument,t);a._namespace=i,a._namespacePrefix=n,a._value=r,xSe(a,e);return}uOt(s,e,r)}function vrn(e,t){let r=lOt(e,t);return r!==null&&CSe(r,t),r}function brn(e,t,r){let n=bM(e,t,r);return n!==null&&CSe(n,r),n}function Ern(e,t,r,n=null,i=null,s=!1){let a=null;if(!Vc.dom.features.customElements)return a=(0,kK.create_element)(e,t,r,n),a._customElementState="uncustomized",a._customElementDefinition=null,a._is=i,a;let o=(0,b0.customElement_lookUpACustomElementDefinition)(e,r,t,i);if(o!==null&&o.name!==o.localName){let u=(0,oOt.document_elementInterface)(t,rE.namespace.HTML);a=new u,a._localName=t,a._namespace=rE.namespace.HTML,a._namespacePrefix=n,a._customElementState="undefined",a._customElementDefinition=null,a._is=i,a._nodeDocument=e,s?(0,b0.customElement_upgrade)(o,a):(0,b0.customElement_enqueueACustomElementUpgradeReaction)(a,o)}else if(o!==null)if(s)try{let u=o.constructor,c=new u;if(console.assert(c._customElementState!==void 0),console.assert(c._customElementDefinition!==void 0),console.assert(c._namespace===rE.namespace.HTML),c._attributeList.length!==0)throw new nE.NotSupportedError("Custom element already has attributes.");if(c._children.size!==0)throw new nE.NotSupportedError("Custom element already has child nodes.");if(c._parent!==null)throw new nE.NotSupportedError("Custom element already has a parent node.");if(c._nodeDocument!==e)throw new nE.NotSupportedError("Custom element is already in a document.");if(c._localName!==t)throw new nE.NotSupportedError("Custom element has a different local name.");c._namespacePrefix=n,c._is=null}catch{a=(0,kK.create_htmlUnknownElement)(e,t,rE.namespace.HTML,n),a._customElementState="failed",a._customElementDefinition=null,a._is=null}else a=(0,kK.create_htmlElement)(e,t,rE.namespace.HTML,n),a._customElementState="undefined",a._customElementDefinition=null,a._is=null,(0,b0.customElement_enqueueACustomElementUpgradeReaction)(a,o);else{let u=(0,oOt.document_elementInterface)(t,r);a=new u,a._localName=t,a._namespace=r,a._namespacePrefix=n,a._customElementState="uncustomized",a._customElementDefinition=null,a._is=i,a._nodeDocument=e,r===rE.namespace.HTML&&(i!==null||(0,b0.customElement_isValidCustomElementName)(t))&&(a._customElementState="undefined")}if(a===null)throw new Error("Unable to create element.");return a}function Srn(e,t,r){switch(t.toLowerCase()){case"beforebegin":return e._parent===null?null:(0,DK.mutation_preInsert)(r,e._parent,e);case"afterbegin":return(0,DK.mutation_preInsert)(r,e,e._firstChild);case"beforeend":return(0,DK.mutation_preInsert)(r,e,null);case"afterend":return e._parent===null?null:(0,DK.mutation_preInsert)(r,e._parent,e._nextSibling);default:throw new nE.SyntaxError(`Invalid 'where' argument. "beforebegin", "afterbegin", "beforeend" or "afterend" expected`)}}});var dOt=b(TSe=>{"use strict";Object.defineProperty(TSe,"__esModule",{value:!0});TSe.attr_setAnExistingAttributeValue=Irn;var wrn=Ox();function Irn(e,t){e._element===null?e._value=t:(0,wrn.element_change)(e,e._element,t)}});var RSe=b(NSe=>{"use strict";Object.defineProperty(NSe,"__esModule",{value:!0});NSe.boundaryPoint_position=fOt;var E0=fn(),Lx=Hc();function fOt(e,t){let r=e[0],n=e[1],i=t[0],s=t[1];if(console.assert((0,Lx.tree_rootNode)(r)===(0,Lx.tree_rootNode)(i),"Boundary points must share the same root node."),r===i)return n===s?E0.BoundaryPosition.Equal:n{"use strict";Object.defineProperty(LK,"__esModule",{value:!0});LK.characterData_replaceData=Nrn;LK.characterData_substringData=Rrn;var DSe=ps(),xrn=Ln(),pOt=$s(),hOt=Hc(),Crn=Rx(),Trn=v0();function Nrn(e,t,r,n){let i=(0,hOt.tree_nodeLength)(e);if(t>i)throw new pOt.IndexSizeError(`Offset exceeds character data length. Offset: ${t}, Length: ${i}, Node is ${e.nodeName}.`);t+r>i&&(r=i-t),DSe.dom.features.mutationObservers&&(0,Crn.observer_queueMutationRecord)("characterData",e,null,null,e._data,[],[],null,null);let s=e._data.substring(0,t)+n+e._data.substring(t+r);e._data=s;for(let a of DSe.dom.rangeList)a._start[0]===e&&a._start[1]>t&&a._start[1]<=t+r&&(a._start[1]=t),a._end[0]===e&&a._end[1]>t&&a._end[1]<=t+r&&(a._end[1]=t),a._start[0]===e&&a._start[1]>t+r&&(a._start[1]+=n.length-r),a._end[0]===e&&a._end[1]>t+r&&(a._end[1]+=n.length-r);DSe.dom.features.steps&&xrn.Guard.isTextNode(e)&&e._parent!==null&&(0,Trn.dom_runChildTextContentChangeSteps)(e._parent)}function Rrn(e,t,r){let n=(0,hOt.tree_nodeLength)(e);if(t>n)throw new pOt.IndexSizeError(`Offset exceeds character data length. Offset: ${t}, Length: ${n}, Node is ${e.nodeName}.`);return t+r>n?e._data.substr(t):e._data.substr(t,r)}});var $K=b(Bx=>{"use strict";Object.defineProperty(Bx,"__esModule",{value:!0});Bx.orderedSet_parse=mOt;Bx.orderedSet_serialize=gOt;Bx.orderedSet_sanitize=krn;Bx.orderedSet_contains=Orn;var Drn=Ts();function mOt(e){let t=Drn.string.splitAStringOnASCIIWhitespace(e);return new Set(t)}function gOt(e){return[...e].join(" ")}function krn(e){return gOt(mOt(e))}function Orn(e,t,r){for(let n of t){let i=!1;for(let s of e)if(r){if(s===n){i=!0;break}}else if(s.toUpperCase()===n.toUpperCase()){i=!0;break}if(!i)return!1}return!0}});var AOt=b(EM=>{"use strict";Object.defineProperty(EM,"__esModule",{value:!0});EM.tokenList_validationSteps=Mrn;EM.tokenList_updateSteps=Lrn;EM.tokenList_serializeSteps=Brn;var Prn=$K(),yOt=v0(),_Ot=Ox();function Mrn(e,t){if(!(0,yOt.dom_hasSupportedTokens)(e._attribute._localName))throw new TypeError(`There are no supported tokens defined for attribute name: '${e._attribute._localName}'.`);return(0,yOt.dom_getSupportedTokens)(e._attribute._localName).has(t.toLowerCase())}function Lrn(e){!e._element.hasAttribute(e._attribute._localName)&&e._tokenSet.size===0||(0,_Ot.element_setAnAttributeValue)(e._element,e._attribute._localName,(0,Prn.orderedSet_serialize)(e._tokenSet))}function Brn(e){return(0,_Ot.element_getAnAttributeValue)(e._element,e._attribute._localName)}});var EOt=b(iE=>{"use strict";Object.defineProperty(iE,"__esModule",{value:!0});iE.eventTarget_flatten=bOt;iE.eventTarget_flattenMore=$rn;iE.eventTarget_addEventListener=Frn;iE.eventTarget_removeEventListener=Urn;iE.eventTarget_removeAllEventListeners=qrn;var vOt=gn();function bOt(e){return(0,vOt.isBoolean)(e)?e:e.capture||!1}function $rn(e){let t=bOt(e),r=!1,n=!1;return(0,vOt.isBoolean)(e)||(r=e.once||!1,n=e.passive||!1),[t,n,r]}function Frn(e,t){if(t.callback!==null){for(let r=0;r{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});Zp.node_stringReplaceAll=Krn;Zp.node_clone=kSe;Zp.node_equals=OSe;Zp.node_listOfElementsWithQualifiedName=Vrn;Zp.node_listOfElementsWithNamespace=zrn;Zp.node_listOfElementsWithClassNames=Qrn;Zp.node_locateANamespacePrefix=xOt;Zp.node_locateANamespace=SM;var jrn=ps(),En=Ln(),FK=Ts(),va=A0(),SOt=$K(),Hrn=v0(),IOt=tE(),wOt=Ox();function Krn(e,t){let r=null;e!==""&&(r=(0,va.create_text)(t._nodeDocument,e)),(0,IOt.mutation_replaceAll)(r,t)}function kSe(e,t=null,r=!1){t===null&&(t=e._nodeDocument);let n;if(En.Guard.isElementNode(e)){n=(0,wOt.element_createAnElement)(t,e._localName,e._namespace,e._namespacePrefix,e._is,!1);for(let i of e._attributeList){let s=kSe(i,t);(0,wOt.element_append)(s,n)}}else if(En.Guard.isDocumentNode(e)){let i=(0,va.create_document)();i._encoding=e._encoding,i._contentType=e._contentType,i._URL=e._URL,i._origin=e._origin,i._type=e._type,i._mode=e._mode,n=i}else if(En.Guard.isDocumentTypeNode(e))n=(0,va.create_documentType)(t,e._name,e._publicId,e._systemId);else if(En.Guard.isAttrNode(e)){let i=(0,va.create_attr)(t,e.localName);i._namespace=e._namespace,i._namespacePrefix=e._namespacePrefix,i._value=e._value,n=i}else En.Guard.isExclusiveTextNode(e)?n=(0,va.create_text)(t,e._data):En.Guard.isCDATASectionNode(e)?n=(0,va.create_cdataSection)(t,e._data):En.Guard.isCommentNode(e)?n=(0,va.create_comment)(t,e._data):En.Guard.isProcessingInstructionNode(e)?n=(0,va.create_processingInstruction)(t,e._target,e._data):En.Guard.isDocumentFragmentNode(e)?n=(0,va.create_documentFragment)(t):n=Object.create(e);if(En.Guard.isDocumentNode(n)?(n._nodeDocument=n,t=n):n._nodeDocument=t,jrn.dom.features.steps&&(0,Hrn.dom_runCloningSteps)(n,e,t,r),r)for(let i of e._children){let s=kSe(i,t,!0);(0,IOt.mutation_append)(s,n)}return n}function OSe(e,t){if(e._nodeType!==t._nodeType)return!1;if(En.Guard.isDocumentTypeNode(e)&&En.Guard.isDocumentTypeNode(t)){if(e._name!==t._name||e._publicId!==t._publicId||e._systemId!==t._systemId)return!1}else if(En.Guard.isElementNode(e)&&En.Guard.isElementNode(t)){if(e._namespace!==t._namespace||e._namespacePrefix!==t._namespacePrefix||e._localName!==t._localName||e._attributeList.length!==t._attributeList.length)return!1}else if(En.Guard.isAttrNode(e)&&En.Guard.isAttrNode(t)){if(e._namespace!==t._namespace||e._localName!==t._localName||e._value!==t._value)return!1}else if(En.Guard.isProcessingInstructionNode(e)&&En.Guard.isProcessingInstructionNode(t)){if(e._target!==t._target||e._data!==t._data)return!1}else if(En.Guard.isCharacterDataNode(e)&&En.Guard.isCharacterDataNode(t)&&e._data!==t._data)return!1;if(En.Guard.isElementNode(e)&&En.Guard.isElementNode(t)){let a={};for(let o of e._attributeList)a[o._localName]=o;for(let o of t._attributeList){let u=a[o._localName];if(!u||!OSe(u,o))return!1}}if(e._children.size!==t._children.size)return!1;let r=e._children[Symbol.iterator](),n=t._children[Symbol.iterator](),i=r.next(),s=n.next();for(;!i.done&&!s.done;){let a=i.value,o=s.value;if(!OSe(a,o))return!1;i=r.next(),s=n.next()}return!0}function Vrn(e,t){return e==="*"?(0,va.create_htmlCollection)(t):t._nodeDocument._type==="html"?(0,va.create_htmlCollection)(t,function(r){return r._namespace===FK.namespace.HTML&&r._qualifiedName===e.toLowerCase()?!0:r._namespace!==FK.namespace.HTML&&r._qualifiedName===e}):(0,va.create_htmlCollection)(t,function(r){return r._qualifiedName===e})}function zrn(e,t,r){return e===""&&(e=null),e==="*"&&t==="*"?(0,va.create_htmlCollection)(r):e==="*"?(0,va.create_htmlCollection)(r,function(n){return n._localName===t}):t==="*"?(0,va.create_htmlCollection)(r,function(n){return n._namespace===e}):(0,va.create_htmlCollection)(r,function(n){return n._localName===t&&n._namespace===e})}function Qrn(e,t){let r=(0,SOt.orderedSet_parse)(e);if(r.size===0)return(0,va.create_htmlCollection)(t,()=>!1);let n=t._nodeDocument._mode!=="quirks";return(0,va.create_htmlCollection)(t,function(i){let s=i.classList;return(0,SOt.orderedSet_contains)(s._tokenSet,r,n)})}function xOt(e,t){if(e._namespace===t&&e._namespacePrefix!==null)return e._namespacePrefix;for(let r=0;r{"use strict";Object.defineProperty(MSe,"__esModule",{value:!0});MSe.parentNode_convertNodesIntoANode=Yrn;var Grn=gn(),COt=A0();function Yrn(e,t){let r=null;for(let n=0;n{"use strict";Object.defineProperty($x,"__esModule",{value:!0});$x.text_contiguousTextNodes=enn;$x.text_contiguousExclusiveTextNodes=tnn;$x.text_descendantTextContent=rnn;$x.text_split=nnn;var Wrn=ps(),g_=Ln(),Xrn=$s(),Jrn=A0(),LSe=Hc(),NOt=BK(),Zrn=tE();function enn(e,t=!1){return{[Symbol.iterator](){let r=e;for(;r&&g_.Guard.isTextNode(r._previousSibling);)r=r._previousSibling;return{next(){if(r&&!t&&r===e&&(g_.Guard.isTextNode(r._nextSibling)?r=r._nextSibling:r=null),r===null)return{done:!0,value:null};{let n={done:!1,value:r};return g_.Guard.isTextNode(r._nextSibling)?r=r._nextSibling:r=null,n}}}}}}function tnn(e,t=!1){return{[Symbol.iterator](){let r=e;for(;r&&g_.Guard.isExclusiveTextNode(r._previousSibling);)r=r._previousSibling;return{next(){if(r&&!t&&r===e&&(g_.Guard.isExclusiveTextNode(r._nextSibling)?r=r._nextSibling:r=null),r===null)return{done:!0,value:null};{let n={done:!1,value:r};return g_.Guard.isExclusiveTextNode(r._nextSibling)?r=r._nextSibling:r=null,n}}}}}}function rnn(e){let t="",r=(0,LSe.tree_getFirstDescendantNode)(e,!1,!1,n=>g_.Guard.isTextNode(n));for(;r!==null;)t+=r._data,r=(0,LSe.tree_getNextDescendantNode)(e,r,!1,!1,n=>g_.Guard.isTextNode(n));return t}function nnn(e,t){let r=e._data.length;if(t>r)throw new Xrn.IndexSizeError;let n=r-t,i=(0,NOt.characterData_substringData)(e,t,n),s=(0,Jrn.create_text)(e._nodeDocument,i),a=e._parent;if(a!==null){(0,Zrn.mutation_insert)(s,a,e._nextSibling);for(let o of Wrn.dom.rangeList){o._start[0]===e&&o._start[1]>t&&(o._start[0]=s,o._start[1]-=t),o._end[0]===e&&o._end[1]>t&&(o._end[0]=s,o._end[1]-=t);let u=(0,LSe.tree_index)(e);o._start[0]===a&&o._start[1]===u+1&&o._start[1]++,o._end[0]===a&&o._end[1]===u+1&&o._end[1]++}}return(0,NOt.characterData_replaceData)(e,t,n,""),s}});var DOt=b(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.range_collapsed=HK;ic.range_root=KK;ic.range_isContained=VK;ic.range_isPartiallyContained=Ux;ic.range_setTheStart=snn;ic.range_setTheEnd=ann;ic.range_select=onn;ic.range_extract=jK;ic.range_cloneTheContents=ROt;ic.range_insert=unn;ic.range_getContainedNodes=cnn;ic.range_getPartiallyContainedNodes=lnn;var UK=fn(),y_=$s(),Co=Ln(),Fx=A0(),rn=Hc(),qK=RSe(),S0=BK(),yf=PSe(),ba=tE(),inn=BSe();function HK(e){return e._startNode===e._endNode&&e._startOffset===e._endOffset}function KK(e){return(0,rn.tree_rootNode)(e._startNode)}function VK(e,t){return(0,rn.tree_rootNode)(e)===KK(t)&&(0,qK.boundaryPoint_position)([e,0],t._start)===UK.BoundaryPosition.After&&(0,qK.boundaryPoint_position)([e,(0,rn.tree_nodeLength)(e)],t._end)===UK.BoundaryPosition.Before}function Ux(e,t){let r=(0,rn.tree_isAncestorOf)(t._startNode,e,!0),n=(0,rn.tree_isAncestorOf)(t._endNode,e,!0);return r&&!n||!r&&n}function snn(e,t,r){if(Co.Guard.isDocumentTypeNode(t))throw new y_.InvalidNodeTypeError;if(r>(0,rn.tree_nodeLength)(t))throw new y_.IndexSizeError;let n=[t,r];(KK(e)!==(0,rn.tree_rootNode)(t)||(0,qK.boundaryPoint_position)(n,e._end)===UK.BoundaryPosition.After)&&(e._end=n),e._start=n}function ann(e,t,r){if(Co.Guard.isDocumentTypeNode(t))throw new y_.InvalidNodeTypeError;if(r>(0,rn.tree_nodeLength)(t))throw new y_.IndexSizeError;let n=[t,r];(KK(e)!==(0,rn.tree_rootNode)(t)||(0,qK.boundaryPoint_position)(n,e._start)===UK.BoundaryPosition.Before)&&(e._start=n),e._end=n}function onn(e,t){let r=e._parent;if(r===null)throw new y_.InvalidNodeTypeError;let n=(0,rn.tree_index)(e);t._start=[r,n],t._end=[r,n+1]}function jK(e){let t=(0,Fx.create_documentFragment)(e._startNode._nodeDocument);if(HK(e))return t;let r=e._startNode,n=e._startOffset,i=e._endNode,s=e._endOffset;if(r===i&&Co.Guard.isCharacterDataNode(r)){let f=(0,yf.node_clone)(r);return f._data=(0,S0.characterData_substringData)(r,n,s-n),(0,ba.mutation_append)(f,t),(0,S0.characterData_replaceData)(r,n,s-n,""),t}let a=r;for(;!(0,rn.tree_isAncestorOf)(i,a,!0);){if(a._parent===null)throw new Error("Parent node is null.");a=a._parent}let o=null;if(!(0,rn.tree_isAncestorOf)(i,r,!0)){for(let f of a._children)if(Ux(f,e)){o=f;break}}let u=null;if(!(0,rn.tree_isAncestorOf)(r,i,!0)){let f=[...a._children];for(let p=f.length-1;p>0;p--){let h=f[p];if(Ux(h,e)){u=h;break}}}let c=[];for(let f of a._children)if(VK(f,e)){if(Co.Guard.isDocumentTypeNode(f))throw new y_.HierarchyRequestError;c.push(f)}let l,d;if((0,rn.tree_isAncestorOf)(i,r,!0))l=r,d=n;else{let f=r;for(;f._parent!==null&&!(0,rn.tree_isAncestorOf)(i,f._parent);)f=f._parent;if(f._parent===null)throw new Error("Parent node is null.");l=f._parent,d=1+(0,rn.tree_index)(f)}if(Co.Guard.isCharacterDataNode(o)){let f=(0,yf.node_clone)(r);f._data=(0,S0.characterData_substringData)(r,n,(0,rn.tree_nodeLength)(r)-n),(0,ba.mutation_append)(f,t),(0,S0.characterData_replaceData)(r,n,(0,rn.tree_nodeLength)(r)-n,"")}else if(o!==null){let f=(0,yf.node_clone)(o);(0,ba.mutation_append)(f,t);let p=(0,Fx.create_range)([r,n],[o,(0,rn.tree_nodeLength)(o)]),h=jK(p);(0,ba.mutation_append)(h,f)}for(let f of c)(0,ba.mutation_append)(f,t);if(Co.Guard.isCharacterDataNode(u)){let f=(0,yf.node_clone)(i);f._data=(0,S0.characterData_substringData)(i,0,s),(0,ba.mutation_append)(f,t),(0,S0.characterData_replaceData)(i,0,s,"")}else if(u!==null){let f=(0,yf.node_clone)(u);(0,ba.mutation_append)(f,t);let p=(0,Fx.create_range)([u,0],[i,s]),h=jK(p);(0,ba.mutation_append)(h,f)}return e._start=[l,d],e._end=[l,d],t}function ROt(e){let t=(0,Fx.create_documentFragment)(e._startNode._nodeDocument);if(HK(e))return t;let r=e._startNode,n=e._startOffset,i=e._endNode,s=e._endOffset;if(r===i&&Co.Guard.isCharacterDataNode(r)){let l=(0,yf.node_clone)(r);l._data=(0,S0.characterData_substringData)(r,n,s-n),(0,ba.mutation_append)(l,t)}let a=r;for(;!(0,rn.tree_isAncestorOf)(i,a,!0);){if(a._parent===null)throw new Error("Parent node is null.");a=a._parent}let o=null;if(!(0,rn.tree_isAncestorOf)(i,r,!0)){for(let l of a._children)if(Ux(l,e)){o=l;break}}let u=null;if(!(0,rn.tree_isAncestorOf)(r,i,!0)){let l=[...a._children];for(let d=l.length-1;d>0;d--){let f=l[d];if(Ux(f,e)){u=f;break}}}let c=[];for(let l of a._children)if(VK(l,e)){if(Co.Guard.isDocumentTypeNode(l))throw new y_.HierarchyRequestError;c.push(l)}if(Co.Guard.isCharacterDataNode(o)){let l=(0,yf.node_clone)(r);l._data=(0,S0.characterData_substringData)(r,n,(0,rn.tree_nodeLength)(r)-n),(0,ba.mutation_append)(l,t)}else if(o!==null){let l=(0,yf.node_clone)(o);(0,ba.mutation_append)(l,t);let d=(0,Fx.create_range)([r,n],[o,(0,rn.tree_nodeLength)(o)]),f=ROt(d);(0,ba.mutation_append)(f,l)}for(let l of c){let d=(0,yf.node_clone)(l);(0,ba.mutation_append)(d,t)}if(Co.Guard.isCharacterDataNode(u)){let l=(0,yf.node_clone)(i);l._data=(0,S0.characterData_substringData)(i,0,s),(0,ba.mutation_append)(l,t)}else if(u!==null){let l=(0,yf.node_clone)(u);t.append(l);let d=(0,Fx.create_range)([u,0],[i,s]),f=jK(d);(0,ba.mutation_append)(f,l)}return t}function unn(e,t){if(Co.Guard.isProcessingInstructionNode(t._startNode)||Co.Guard.isCommentNode(t._startNode)||Co.Guard.isTextNode(t._startNode)&&t._startNode._parent===null||t._startNode===e)throw new y_.HierarchyRequestError;let r=null;if(Co.Guard.isTextNode(t._startNode))r=t._startNode;else{let s=0;for(let a of t._startNode._children){if(s===t._startOffset){r=a;break}s++}}let n;if(r===null)n=t._startNode;else{if(r._parent===null)throw new Error("Parent node is null.");n=r._parent}(0,ba.mutation_ensurePreInsertionValidity)(e,n,r),Co.Guard.isTextNode(t._startNode)&&(r=(0,inn.text_split)(t._startNode,t._startOffset)),e===r&&(r=e._nextSibling),e._parent!==null&&(0,ba.mutation_remove)(e,e._parent);let i=r===null?(0,rn.tree_nodeLength)(n):(0,rn.tree_index)(r);Co.Guard.isDocumentFragmentNode(e)?i+=(0,rn.tree_nodeLength)(e):i++,(0,ba.mutation_preInsert)(e,n,r),HK(t)&&(t._end=[n,i])}function cnn(e){return{[Symbol.iterator]:()=>{let t=e.commonAncestorContainer,r=(0,rn.tree_getFirstDescendantNode)(t);return{next:()=>{for(;r&&!VK(r,e);)r=(0,rn.tree_getNextDescendantNode)(t,r);if(r===null)return{done:!0,value:null};{let n={done:!1,value:r};return r=(0,rn.tree_getNextDescendantNode)(t,r),n}}}}}}function lnn(e){return{[Symbol.iterator]:()=>{let t=e.commonAncestorContainer,r=(0,rn.tree_getFirstDescendantNode)(t);return{next:()=>{for(;r&&!Ux(r,e);)r=(0,rn.tree_getNextDescendantNode)(t,r);if(r===null)return{done:!0,value:null};{let n={done:!1,value:r};return r=(0,rn.tree_getNextDescendantNode)(t,r),n}}}}}}});var kOt=b($Se=>{"use strict";Object.defineProperty($Se,"__esModule",{value:!0});$Se.selectors_scopeMatchASelectorsString=fnn;var dnn=$s();function fnn(e,t){throw new dnn.NotSupportedError}});var OOt=b(zK=>{"use strict";Object.defineProperty(zK,"__esModule",{value:!0});zK.treeWalker_traverseChildren=pnn;zK.treeWalker_traverseSiblings=hnn;var wM=fn(),FSe=CK();function pnn(e,t){let r=t?e._current._firstChild:e._current._lastChild;for(;r!==null;){let n=(0,FSe.traversal_filter)(e,r);if(n===wM.FilterResult.Accept)return e._current=r,r;if(n===wM.FilterResult.Skip){let i=t?r._firstChild:r._lastChild;if(i!==null){r=i;continue}}for(;r!==null;){let i=t?r._nextSibling:r._previousSibling;if(i!==null){r=i;break}let s=r._parent;if(s===null||s===e._root||s===e._current)return null;r=s}}return null}function hnn(e,t){let r=e._current;if(r===e._root)return null;for(;;){let n=t?r._nextSibling:r._previousSibling;for(;n!==null;){r=n;let i=(0,FSe.traversal_filter)(e,r);if(i===wM.FilterResult.Accept)return e._current=r,r;n=t?r._firstChild:r._lastChild,(i===wM.FilterResult.Reject||n===null)&&(n=t?r._nextSibling:r._previousSibling)}if(r=r._parent,r===null||r===e._root||(0,FSe.traversal_filter)(e,r)===wM.FilterResult.Accept)return null}}});var en=b(qr=>{"use strict";var mnn=qr&&qr.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Bn=qr&&qr.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&mnn(t,e,r)};Object.defineProperty(qr,"__esModule",{value:!0});Bn(Jkt(),qr);Bn(dOt(),qr);Bn(RSe(),qr);Bn(BK(),qr);Bn(A0(),qr);Bn(yM(),qr);Bn(NK(),qr);Bn(v0(),qr);Bn(AOt(),qr);Bn(Ox(),qr);Bn(wK(),qr);Bn(EOt(),qr);Bn(tE(),qr);Bn(Rx(),qr);Bn(SSe(),qr);Bn(PSe(),qr);Bn(ASe(),qr);Bn($K(),qr);Bn(TOt(),qr);Bn(DOt(),qr);Bn(kOt(),qr);Bn(hM(),qr);Bn(BSe(),qr);Bn(CK(),qr);Bn(Hc(),qr);Bn(OOt(),qr);Bn(So(),qr);Bn(vSe(),qr)});var POt=b(QK=>{"use strict";Object.defineProperty(QK,"__esModule",{value:!0});QK.nonEntityAmpersandRegex=void 0;QK.nonEntityAmpersandRegex=/&(?![A-Za-z]+;|#\d+;)/g});var qx=b(GK=>{"use strict";Object.defineProperty(GK,"__esModule",{value:!0});GK.BaseWriter=void 0;var To=fn(),gnn=oM(),ynn=aH(),w0=Ts(),eh=en(),MOt=POt(),USe=class e{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);_builderOptions;_writerOptions;constructor(t){this._builderOptions=t}declaration(t,r,n){}docType(t,r,n){}comment(t){}text(t){}instruction(t,r){}cdata(t){}openTagBegin(t){}openTagEnd(t,r,n){}closeTag(t){}attributes(t){for(let r of t)this.attribute(r[1]===null?r[2]:r[1]+":"+r[2],r[3])}attribute(t,r){}beginElement(t){}endElement(t){}level=0;currentNode;serializeNode(t,r){let n=t._nodeDocument!==void 0&&t._nodeDocument._hasNamespaces;if(this.level=0,this.currentNode=t,n){let i=null,s=new ynn.NamespacePrefixMap;s.set("xml",w0.namespace.XML);let a={value:1};this._serializeNodeNS(t,i,s,a,r)}else this._serializeNode(t,r)}_serializeNodeNS(t,r,n,i,s){switch(this.currentNode=t,t.nodeType){case To.NodeType.Element:this._serializeElementNS(t,r,n,i,s);break;case To.NodeType.Document:this._serializeDocumentNS(t,r,n,i,s);break;case To.NodeType.Comment:this._serializeComment(t,s);break;case To.NodeType.Text:this._serializeText(t,s);break;case To.NodeType.DocumentFragment:this._serializeDocumentFragmentNS(t,r,n,i,s);break;case To.NodeType.DocumentType:this._serializeDocumentType(t,s);break;case To.NodeType.ProcessingInstruction:this._serializeProcessingInstruction(t,s);break;case To.NodeType.CData:this._serializeCData(t,s);break;default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeNode(t,r){switch(this.currentNode=t,t.nodeType){case To.NodeType.Element:this._serializeElement(t,r);break;case To.NodeType.Document:this._serializeDocument(t,r);break;case To.NodeType.Comment:this._serializeComment(t,r);break;case To.NodeType.Text:this._serializeText(t,r);break;case To.NodeType.DocumentFragment:this._serializeDocumentFragment(t,r);break;case To.NodeType.DocumentType:this._serializeDocumentType(t,r);break;case To.NodeType.ProcessingInstruction:this._serializeProcessingInstruction(t,r);break;case To.NodeType.CData:this._serializeCData(t,r);break;default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeElementNS(t,r,n,i,s){let a=[];if(s&&(t.localName.indexOf(":")!==-1||!(0,eh.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let o="",u=!1,c=!1,l=n.copy(),d={},f=this._recordNamespaceInformation(t,l,d),p=r,h=t.namespaceURI;if(p===h)f!==null&&(c=!0),h===w0.namespace.XML?o="xml:"+t.localName:o=t.localName,this.beginElement(o),this.openTagBegin(o);else{let y=t.prefix,g=null;if((y!==null||h!==f)&&(g=l.get(y,h)),y==="xmlns"){if(s)throw new Error("An element cannot have the 'xmlns' prefix (well-formed required).");g=y}g!==null?(o=g+":"+t.localName,f!==null&&f!==w0.namespace.XML&&(p=f||null),this.beginElement(o),this.openTagBegin(o)):y!==null?(y in d&&(y=this._generatePrefix(h,l,i)),l.set(y,h),o+=y+":"+t.localName,this.beginElement(o),this.openTagBegin(o),a.push([null,"xmlns",y,this._serializeAttributeValue(h,s)]),f!==null&&(p=f||null)):f===null||f!==null&&f!==h?(c=!0,o+=t.localName,p=h,this.beginElement(o),this.openTagBegin(o),a.push([null,null,"xmlns",this._serializeAttributeValue(h,s)])):(o+=t.localName,p=h,this.beginElement(o),this.openTagBegin(o))}a.push(...this._serializeAttributesNS(t,l,i,d,c,s)),this.attributes(a);let m=h===w0.namespace.HTML;if(m&&t.childNodes.length===0&&e._VoidElementNames.has(t.localName)?(this.openTagEnd(o,!0,!0),this.endElement(o),u=!0):!m&&t.childNodes.length===0?(this.openTagEnd(o,!0,!1),this.endElement(o),u=!0):this.openTagEnd(o,!1,!1),!u){if(!(m&&t.localName==="template"))for(let y of t.childNodes)this.level++,this._serializeNodeNS(y,p,l,i,s),this.level--;this.closeTag(o),this.endElement(o)}}_serializeElement(t,r){if(r&&(t.localName.indexOf(":")!==-1||!(0,eh.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let n=!1,i=t.localName;this.beginElement(i),this.openTagBegin(i);let s=this._serializeAttributes(t,r);if(this.attributes(s),t.hasChildNodes()?this.openTagEnd(i,!1,!1):(this.openTagEnd(i,!0,!1),this.endElement(i),n=!0),!n){for(let a of t._children)this.level++,this._serializeNode(a,r),this.level--;this.closeTag(i),this.endElement(i)}}_serializeDocumentNS(t,r,n,i,s){if(s&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");for(let a of t.childNodes)this._serializeNodeNS(a,r,n,i,s)}_serializeDocument(t,r){if(r&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");for(let n of t._children)this._serializeNode(n,r)}_serializeComment(t,r){if(r&&(!(0,eh.xml_isLegalChar)(t.data)||t.data.indexOf("--")!==-1||t.data.endsWith("-")))throw new Error("Comment data contains invalid characters (well-formed required).");this.comment(t.data)}_serializeText(t,r){if(r&&!(0,eh.xml_isLegalChar)(t.data))throw new Error("Text data contains invalid characters (well-formed required).");let n=t.data.replace(MOt.nonEntityAmpersandRegex,"&").replace(//g,">");this.text(n)}_serializeDocumentFragmentNS(t,r,n,i,s){for(let a of t.childNodes)this._serializeNodeNS(a,r,n,i,s)}_serializeDocumentFragment(t,r){for(let n of t._children)this._serializeNode(n,r)}_serializeDocumentType(t,r){if(r&&!(0,eh.xml_isPubidChar)(t.publicId))throw new Error("DocType public identifier does not match PubidChar construct (well-formed required).");if(r&&(!(0,eh.xml_isLegalChar)(t.systemId)||t.systemId.indexOf('"')!==-1&&t.systemId.indexOf("'")!==-1))throw new Error("DocType system identifier contains invalid characters (well-formed required).");this.docType(t.name,t.publicId,t.systemId)}_serializeProcessingInstruction(t,r){if(r&&(t.target.indexOf(":")!==-1||/^xml$/i.test(t.target)))throw new Error("Processing instruction target contains invalid characters (well-formed required).");if(r&&(!(0,eh.xml_isLegalChar)(t.data)||t.data.indexOf("?>")!==-1))throw new Error("Processing instruction data contains invalid characters (well-formed required).");this.instruction(t.target,t.data)}_serializeCData(t,r){if(r&&t.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters (well-formed required).");this.cdata(t.data)}_serializeAttributesNS(t,r,n,i,s,a){let o=[],u=a?new gnn.LocalNameSet:void 0;for(let c of t.attributes){if(!a&&!s&&c.namespaceURI===null){o.push([null,null,c.localName,this._serializeAttributeValue(c.value,a)]);continue}if(a&&u&&u.has(c.namespaceURI,c.localName))throw new Error("Element contains duplicate attributes (well-formed required).");a&&u&&u.set(c.namespaceURI,c.localName);let l=c.namespaceURI,d=null;if(l!==null)if(d=r.get(c.prefix,l),l===w0.namespace.XMLNS){if(c.value===w0.namespace.XML||c.prefix===null&&s||c.prefix!==null&&(!(c.localName in i)||i[c.localName]!==c.value)&&r.has(c.localName,c.value))continue;if(a&&c.value===w0.namespace.XMLNS)throw new Error("XMLNS namespace is reserved (well-formed required).");if(a&&c.value==="")throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required).");c.prefix==="xmlns"&&(d="xmlns")}else d===null&&(c.prefix!==null&&(!r.hasPrefix(c.prefix)||r.has(c.prefix,l))?d=c.prefix:d=this._generatePrefix(l,r,n),o.push([null,"xmlns",d,this._serializeAttributeValue(l,a)]));let f="";if(d!==null&&(f=d),a&&(c.localName.indexOf(":")!==-1||!(0,eh.xml_isName)(c.localName)||c.localName==="xmlns"&&l===null))throw new Error("Attribute local name contains invalid characters (well-formed required).");o.push([l,d,c.localName,this._serializeAttributeValue(c.value,a)])}return o}_serializeAttributes(t,r){let n=[],i=r?{}:void 0;for(let s of t.attributes){if(!r){n.push([null,null,s.localName,this._serializeAttributeValue(s.value,r)]);continue}if(r&&i&&s.localName in i)throw new Error("Element contains duplicate attributes (well-formed required).");if(r&&i&&(i[s.localName]=!0),r&&(s.localName.indexOf(":")!==-1||!(0,eh.xml_isName)(s.localName)))throw new Error("Attribute local name contains invalid characters (well-formed required).");n.push([null,null,s.localName,this._serializeAttributeValue(s.value,r)])}return n}_recordNamespaceInformation(t,r,n){let i=null;for(let s of t.attributes){let a=s.namespaceURI,o=s.prefix;if(a===w0.namespace.XMLNS)if(o===null){i=s.value;continue}else{let u=s.localName,c=s.value;if(c===w0.namespace.XML||(c===""&&(c=null),r.has(u,c)))continue;r.set(u,c),n[u]=c||""}}return i}_generatePrefix(t,r,n){let i="ns"+n.value.toString();return n.value++,r.set(i,t),i}_serializeAttributeValue(t,r){if(r&&t!==null&&!(0,eh.xml_isLegalChar)(t))throw new Error("Invalid characters in attribute value.");return t===null?"":t.replace(MOt.nonEntityAmpersandRegex,"&").replace(//g,">").replace(/"/g,""")}};GK.BaseWriter=USe});var IM=b(YK=>{"use strict";Object.defineProperty(YK,"__esModule",{value:!0});YK.ObjectWriter=void 0;var th=gn(),__=fn(),_nn=qx(),qSe=class extends _nn.BaseWriter{_currentList;_currentIndex;_listRegister;constructor(t,r){super(t),this._writerOptions=(0,th.applyDefaults)(r,{format:"object",wellFormed:!1,group:!1,verbose:!1})}serialize(t){return this._currentList=[],this._currentIndex=0,this._listRegister=[this._currentList],this.serializeNode(t,this._writerOptions.wellFormed),this._process(this._currentList,this._writerOptions)}_process(t,r){if(t.length===0)return{};let n={},i=!1,s=0,a=0,o=0,u=0;for(let h=0;h2)for(let o of t){let u=i+(a++).toString();r[u]=o}else{let o=s>1?i+(a++).toString():i;r[o]=t}return a}beginElement(t){let r=[];if(this._currentList.length===0)this._currentList.push({[t]:r});else{let n=this._currentList[this._currentList.length-1];this._isElementNode(n,t)?n[t].length!==0&&(0,th.isArray)(n[t][0])?n[t].push(r):n[t]=[n[t],r]:this._currentList.push({[t]:r})}this._currentIndex++,this._listRegister.length>this._currentIndex?this._listRegister[this._currentIndex]=r:this._listRegister.push(r),this._currentList=r}endElement(){this._currentList=this._listRegister[--this._currentIndex]}attribute(t,r){if(this._currentList.length===0)this._currentList.push({"@":{[t]:r}});else{let n=this._currentList[this._currentList.length-1];this._isAttrNode(n)?n["@"][t]=r:this._currentList.push({"@":{[t]:r}})}}comment(t){if(this._currentList.length===0)this._currentList.push({"!":t});else{let r=this._currentList[this._currentList.length-1];this._isCommentNode(r)?(0,th.isArray)(r["!"])?r["!"].push(t):r["!"]=[r["!"],t]:this._currentList.push({"!":t})}}text(t){if(this._currentList.length===0)this._currentList.push({"#":t});else{let r=this._currentList[this._currentList.length-1];this._isTextNode(r)?(0,th.isArray)(r["#"])?r["#"].push(t):r["#"]=[r["#"],t]:this._currentList.push({"#":t})}}instruction(t,r){let n=r===""?t:t+" "+r;if(this._currentList.length===0)this._currentList.push({"?":n});else{let i=this._currentList[this._currentList.length-1];this._isInstructionNode(i)?(0,th.isArray)(i["?"])?i["?"].push(n):i["?"]=[i["?"],n]:this._currentList.push({"?":n})}}cdata(t){if(this._currentList.length===0)this._currentList.push({$:t});else{let r=this._currentList[this._currentList.length-1];this._isCDATANode(r)?(0,th.isArray)(r.$)?r.$.push(t):r.$=[r.$,t]:this._currentList.push({$:t})}}_isAttrNode(t){return"@"in t}_isTextNode(t){return"#"in t}_isCommentNode(t){return"!"in t}_isInstructionNode(t){return"?"in t}_isCDATANode(t){return"$"in t}_isElementNode(t,r){return r in t}_getAttrKey(){return this._builderOptions.convert.att}_getNodeKey(t){switch(t){case __.NodeType.Comment:return this._builderOptions.convert.comment;case __.NodeType.Text:return this._builderOptions.convert.text;case __.NodeType.ProcessingInstruction:return this._builderOptions.convert.ins;case __.NodeType.CData:return this._builderOptions.convert.cdata;default:throw new Error("Invalid node type.")}}};YK.ObjectWriter=qSe});var LOt=b(XK=>{"use strict";Object.defineProperty(XK,"__esModule",{value:!0});XK.MapWriter=void 0;var WK=gn(),Ann=IM(),vnn=qx(),jSe=class extends vnn.BaseWriter{constructor(t,r){super(t),this._writerOptions=(0,WK.applyDefaults)(r,{format:"map",wellFormed:!1,group:!1,verbose:!1})}serialize(t){let r=(0,WK.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1,verbose:!1}),i=new Ann.ObjectWriter(this._builderOptions,r).serialize(t);return this._convertObject(i)}_convertObject(t){if((0,WK.isArray)(t)){for(let r=0;r{"use strict";Object.defineProperty(JK,"__esModule",{value:!0});JK.XMLWriter=void 0;var bnn=gn(),Enn=fn(),Snn=qx(),BOt=Ln(),HSe=class extends Snn.BaseWriter{_refs;_indentation={};_lengthToLastNewline=0;constructor(t,r){super(t),this._writerOptions=(0,bnn.applyDefaults)(r,{wellFormed:!1,headless:!1,prettyPrint:!1,indent:" ",newline:` -`,offset:0,width:0,allowEmptyTags:!1,indentTextOnlyNodes:!1,spaceBeforeSlash:!1})}serialize(t){return this._refs={suppressPretty:!1,emptyNode:!1,markup:""},t.nodeType===Enn.NodeType.Document&&!this._writerOptions.headless&&this.declaration(this._builderOptions.version,this._builderOptions.encoding,this._builderOptions.standalone),this.serializeNode(t,this._writerOptions.wellFormed),this._writerOptions.prettyPrint&&this._refs.markup.slice(-this._writerOptions.newline.length)===this._writerOptions.newline&&(this._refs.markup=this._refs.markup.slice(0,-this._writerOptions.newline.length)),this._refs.markup}declaration(t,r,n){this._beginLine(),this._refs.markup+='",this._endLine()}docType(t,r,n){this._beginLine(),r&&n?this._refs.markup+="':r?this._refs.markup+="':n?this._refs.markup+="':this._refs.markup+="",this._endLine()}openTagBegin(t){this._beginLine(),this._refs.markup+="<"+t}openTagEnd(t,r,n){if(this._refs.suppressPretty=!1,this._refs.emptyNode=!1,this._writerOptions.prettyPrint&&!r&&!n){let i=!0,s=!0,a=this.currentNode.firstChild,o=0,u=0;for(;a;){if(BOt.Guard.isExclusiveTextNode(a))u++;else if(BOt.Guard.isCDATASectionNode(a))o++;else{i=!1,s=!1;break}a.data!==""&&(s=!1),a=a.nextSibling}this._refs.suppressPretty=!this._writerOptions.indentTextOnlyNodes&&i&&(o<=1&&u===0||o===0),this._refs.emptyNode=s}(n||r||this._refs.emptyNode)&&this._writerOptions.allowEmptyTags?this._refs.markup+=">":this._refs.markup+=n?" />":r||this._refs.emptyNode?this._writerOptions.spaceBeforeSlash?" />":"/>":">",this._endLine()}closeTag(t){this._refs.emptyNode||(this._beginLine(),this._refs.markup+=""),this._refs.suppressPretty=!1,this._refs.emptyNode=!1,this._endLine()}attribute(t,r){let n=t+'="'+r+'"';this._writerOptions.prettyPrint&&this._writerOptions.width>0&&this._refs.markup.length-this._lengthToLastNewline+1+n.length>this._writerOptions.width?(this._endLine(),this._beginLine(),this._refs.markup+=this._indent(1)+n):this._refs.markup+=" "+n}text(t){t!==""&&(this._beginLine(),this._refs.markup+=t,this._endLine())}cdata(t){t!==""&&(this._beginLine(),this._refs.markup+="",this._endLine())}comment(t){this._beginLine(),this._refs.markup+="",this._endLine()}instruction(t,r){this._beginLine(),this._refs.markup+="",this._endLine()}_beginLine(){this._writerOptions.prettyPrint&&!this._refs.suppressPretty&&(this._refs.markup+=this._indent(this._writerOptions.offset+this.level))}_endLine(){this._writerOptions.prettyPrint&&!this._refs.suppressPretty&&(this._refs.markup+=this._writerOptions.newline,this._lengthToLastNewline=this._refs.markup.length)}_indent(t){if(t<=0)return"";if(this._indentation[t]!==void 0)return this._indentation[t];{let r=this._writerOptions.indent.repeat(t);return this._indentation[t]=r,r}}};JK.XMLWriter=HSe});var FOt=b(ZK=>{"use strict";Object.defineProperty(ZK,"__esModule",{value:!0});ZK.JSONWriter=void 0;var wnn=IM(),rh=gn(),Inn=qx(),KSe=class extends Inn.BaseWriter{constructor(t,r){super(t),this._writerOptions=(0,rh.applyDefaults)(r,{wellFormed:!1,prettyPrint:!1,indent:" ",newline:` -`,offset:0,group:!1,verbose:!1})}serialize(t){let r=(0,rh.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1}),i=new wnn.ObjectWriter(this._builderOptions,r).serialize(t);return this._beginLine(this._writerOptions,0)+this._convertObject(i,this._writerOptions)}_convertObject(t,r,n=0){let i="",s=this._isLeafNode(t);if((0,rh.isArray)(t)){i+="[";let a=t.length,o=0;for(let u of t)i+=this._endLine(r,n+1)+this._beginLine(r,n+1)+this._convertObject(u,r,n+1),o{s&&r.prettyPrint?i+=" ":i+=this._endLine(r,n+1)+this._beginLine(r,n+1),i+=this._key(u),r.prettyPrint&&(i+=" "),i+=this._convertObject(c,r,n+1),o0)return new Array(n).join(t.indent)}else return"";return""}_endLine(t,r){return t.prettyPrint?t.newline:""}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}_isLeafNode(t){return this._descendantCount(t)<=1}_descendantCount(t,r=0){return(0,rh.isArray)(t)?(0,rh.forEachArray)(t,n=>r+=this._descendantCount(n,r),this):(0,rh.isObject)(t)?(0,rh.forEachObject)(t,(n,i)=>r+=this._descendantCount(i,r),this):r++,r}};ZK.JSONWriter=KSe});var UOt=b(eV=>{"use strict";Object.defineProperty(eV,"__esModule",{value:!0});eV.YAMLWriter=void 0;var xnn=IM(),I0=gn(),Cnn=qx(),VSe=class extends Cnn.BaseWriter{constructor(t,r){if(super(t),this._writerOptions=(0,I0.applyDefaults)(r,{wellFormed:!1,indent:" ",newline:` -`,offset:0,group:!1,verbose:!1}),this._writerOptions.indent.length<2)throw new Error("YAML indententation string must be at least two characters long.");if(this._writerOptions.offset<0)throw new Error("YAML offset should be zero or a positive number.")}serialize(t){let r=(0,I0.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1}),i=new xnn.ObjectWriter(this._builderOptions,r).serialize(t),s=this._beginLine(this._writerOptions,0)+"---"+this._endLine(this._writerOptions)+this._convertObject(i,this._writerOptions,0);return s.slice(-this._writerOptions.newline.length)===this._writerOptions.newline&&(s=s.slice(0,-this._writerOptions.newline.length)),s}_convertObject(t,r,n,i=!1){let s="";if((0,I0.isArray)(t))for(let a of t)s+=this._beginLine(r,n,!0),(0,I0.isObject)(a)?(0,I0.isEmpty)(a)?s+='""'+this._endLine(r):s+=this._convertObject(a,r,n,!0):s+=this._val(a)+this._endLine(r);else(0,I0.forEachObject)(t,(a,o)=>{i?(s+=this._key(a),i=!1):s+=this._beginLine(r,n)+this._key(a),!(0,I0.isObject)(o)&&!(0,I0.isArray)(o)?s+=" "+this._val(o)+this._endLine(r):(0,I0.isEmpty)(o)?s+=' ""'+this._endLine(r):s+=this._endLine(r)+this._convertObject(o,r,n+1)},this);return s}_beginLine(t,r,n=!1){let i=t.offset+r+1,s=new Array(i).join(t.indent);return n?s.substr(0,s.length-2)+"-"+s.substr(-1,1):s}_endLine(t){return t.newline}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};eV.YAMLWriter=VSe});var qOt=b(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});Gl.YAMLWriter=Gl.JSONWriter=Gl.ObjectWriter=Gl.XMLWriter=Gl.MapWriter=void 0;var Tnn=LOt();Object.defineProperty(Gl,"MapWriter",{enumerable:!0,get:function(){return Tnn.MapWriter}});var Nnn=$Ot();Object.defineProperty(Gl,"XMLWriter",{enumerable:!0,get:function(){return Nnn.XMLWriter}});var Rnn=IM();Object.defineProperty(Gl,"ObjectWriter",{enumerable:!0,get:function(){return Rnn.ObjectWriter}});var Dnn=FOt();Object.defineProperty(Gl,"JSONWriter",{enumerable:!0,get:function(){return Dnn.JSONWriter}});var knn=UOt();Object.defineProperty(Gl,"YAMLWriter",{enumerable:!0,get:function(){return knn.YAMLWriter}})});var jOt=b(rV=>{"use strict";Object.defineProperty(rV,"__esModule",{value:!0});rV.ChildNodeImpl=void 0;var tV=Ln(),A_=en(),zSe=class{before(...t){let r=tV.Cast.asNode(this),n=r._parent;if(n===null)return;let i=r._previousSibling,s=!0;for(;s&&i;){s=!1;for(let o=0;o{"use strict";Object.defineProperty(nV,"__esModule",{value:!0});nV.DocumentOrShadowRootImpl=void 0;var QSe=class{};nV.DocumentOrShadowRootImpl=QSe});var KOt=b(iV=>{"use strict";Object.defineProperty(iV,"__esModule",{value:!0});iV.MutationObserverImpl=void 0;var Onn=ps(),Pnn=Ln(),GSe=Ts(),YSe=class{_callback;_nodeList=[];_recordQueue=[];constructor(t){this._callback=t;let r=Onn.dom.window;GSe.set.append(r._mutationObservers,this)}observe(t,r){if(r=r||{childList:!1,subtree:!1},(r.attributeOldValue!==void 0||r.attributeFilter!==void 0)&&r.attributes===void 0&&(r.attributes=!0),r.characterDataOldValue!==void 0&&r.characterData===void 0&&(r.characterData=!0),!r.childList&&!r.attributes&&!r.characterData)throw new TypeError;if(r.attributeOldValue&&!r.attributes)throw new TypeError;if(r.attributeFilter!==void 0&&!r.attributes)throw new TypeError;if(r.characterDataOldValue&&!r.characterData)throw new TypeError;let n=!1,i=r;for(let s of t._registeredObserverList)if(s.observer===this){n=!0;for(let a of this._nodeList)GSe.list.remove(a._registeredObserverList,o=>Pnn.Guard.isTransientRegisteredObserver(o)&&o.source===s);s.options=i}n||(t._registeredObserverList.push({observer:this,options:r}),this._nodeList.push(t))}disconnect(){for(let t of this._nodeList)GSe.list.remove(t._registeredObserverList,r=>r.observer===this);this._recordQueue=[]}takeRecords(){let t=this._recordQueue;return this._recordQueue=[],t}};iV.MutationObserverImpl=YSe});var VOt=b(aV=>{"use strict";Object.defineProperty(aV,"__esModule",{value:!0});aV.NonDocumentTypeChildNodeImpl=void 0;var sV=Ln(),WSe=class{get previousElementSibling(){let t=sV.Cast.asNode(this)._previousSibling;for(;t;){if(sV.Guard.isElementNode(t))return t;t=t._previousSibling}return null}get nextElementSibling(){let t=sV.Cast.asNode(this)._nextSibling;for(;t;){if(sV.Guard.isElementNode(t))return t;t=t._nextSibling}return null}};aV.NonDocumentTypeChildNodeImpl=WSe});var QOt=b(uV=>{"use strict";Object.defineProperty(uV,"__esModule",{value:!0});uV.NonElementParentNodeImpl=void 0;var oV=Ln(),zOt=en(),XSe=class{getElementById(t){let r=(0,zOt.tree_getFirstDescendantNode)(oV.Cast.asNode(this),!1,!1,n=>oV.Guard.isElementNode(n));for(;r!==null;){if(r._uniqueIdentifier===t)return r;r=(0,zOt.tree_getNextDescendantNode)(oV.Cast.asNode(this),r,!1,!1,n=>oV.Guard.isElementNode(n))}return null}};uV.NonElementParentNodeImpl=XSe});var GOt=b(cV=>{"use strict";Object.defineProperty(cV,"__esModule",{value:!0});cV.ParentNodeImpl=void 0;var _f=Ln(),v_=en(),JSe=class{get children(){return(0,v_.create_htmlCollection)(_f.Cast.asNode(this))}get firstElementChild(){let t=_f.Cast.asNode(this)._firstChild;for(;t;){if(_f.Guard.isElementNode(t))return t;t=t._nextSibling}return null}get lastElementChild(){let t=_f.Cast.asNode(this)._lastChild;for(;t;){if(_f.Guard.isElementNode(t))return t;t=t._previousSibling}return null}get childElementCount(){let t=0;for(let r of _f.Cast.asNode(this)._children)_f.Guard.isElementNode(r)&&t++;return t}prepend(...t){let r=_f.Cast.asNode(this),n=(0,v_.parentNode_convertNodesIntoANode)(t,r._nodeDocument);(0,v_.mutation_preInsert)(n,r,r._firstChild)}append(...t){let r=_f.Cast.asNode(this),n=(0,v_.parentNode_convertNodesIntoANode)(t,r._nodeDocument);(0,v_.mutation_append)(n,r)}querySelector(t){let r=_f.Cast.asNode(this),n=(0,v_.selectors_scopeMatchASelectorsString)(t,r);return n.length===0?null:n[0]}querySelectorAll(t){let r=_f.Cast.asNode(this),n=(0,v_.selectors_scopeMatchASelectorsString)(t,r);return(0,v_.create_nodeListStatic)(r,n)}};cV.ParentNodeImpl=JSe});var YOt=b(lV=>{"use strict";Object.defineProperty(lV,"__esModule",{value:!0});lV.SlotableImpl=void 0;var Mnn=en(),ZSe=class{__name;__assignedSlot;get _name(){return this.__name||""}set _name(t){this.__name=t}get _assignedSlot(){return this.__assignedSlot||null}set _assignedSlot(t){this.__assignedSlot=t}get assignedSlot(){return(0,Mnn.shadowTree_findASlot)(this,!0)}};lV.SlotableImpl=ZSe});var WOt=b(fV=>{"use strict";Object.defineProperty(fV,"__esModule",{value:!0});fV.StaticRangeImpl=void 0;var Lnn=sK(),Bnn=$s(),dV=Ln(),ewe=class extends Lnn.AbstractRangeImpl{_start;_end;constructor(t){if(super(),dV.Guard.isDocumentTypeNode(t.startContainer)||dV.Guard.isAttrNode(t.startContainer)||dV.Guard.isDocumentTypeNode(t.endContainer)||dV.Guard.isAttrNode(t.endContainer))throw new Bnn.InvalidNodeTypeError;this._start=[t.startContainer,t.startOffset],this._end=[t.endContainer,t.endOffset]}};fV.StaticRangeImpl=ewe});var hV=b(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.XMLDocument=Xe.Window=Xe.TreeWalker=Xe.Traverser=Xe.Text=Xe.StaticRange=Xe.ShadowRoot=Xe.Range=Xe.ProcessingInstruction=Xe.NodeListStatic=Xe.NodeList=Xe.NodeIterator=Xe.Node=Xe.NodeFilter=Xe.NamedNodeMap=Xe.MutationRecord=Xe.MutationObserver=Xe.HTMLCollection=Xe.EventTarget=Xe.Event=Xe.Element=Xe.DOMTokenList=Xe.DOMImplementation=Xe.dom=Xe.DocumentType=Xe.Document=Xe.DocumentFragment=Xe.CustomEvent=Xe.Comment=Xe.CharacterData=Xe.CDATASection=Xe.Attr=Xe.AbstractRange=Xe.AbortSignal=Xe.AbortController=void 0;var sc=gn(),$nn=b1e();Object.defineProperty(Xe,"AbortController",{enumerable:!0,get:function(){return $nn.AbortControllerImpl}});var Fnn=S1e();Object.defineProperty(Xe,"AbortSignal",{enumerable:!0,get:function(){return Fnn.AbortSignalImpl}});var Unn=sK();Object.defineProperty(Xe,"AbstractRange",{enumerable:!0,get:function(){return Unn.AbstractRangeImpl}});var qnn=C1e();Object.defineProperty(Xe,"Attr",{enumerable:!0,get:function(){return qnn.AttrImpl}});var jnn=N1e();Object.defineProperty(Xe,"CDATASection",{enumerable:!0,get:function(){return jnn.CDATASectionImpl}});var twe=fM();Object.defineProperty(Xe,"CharacterData",{enumerable:!0,get:function(){return twe.CharacterDataImpl}});var rwe=jOt(),Hnn=R1e();Object.defineProperty(Xe,"Comment",{enumerable:!0,get:function(){return Hnn.CommentImpl}});var Knn=iSe();Object.defineProperty(Xe,"CustomEvent",{enumerable:!0,get:function(){return Knn.CustomEventImpl}});var nwe=qH();Object.defineProperty(Xe,"DocumentFragment",{enumerable:!0,get:function(){return nwe.DocumentFragmentImpl}});var pV=RH();Object.defineProperty(Xe,"Document",{enumerable:!0,get:function(){return pV.DocumentImpl}});var XOt=HOt(),JOt=w1e();Object.defineProperty(Xe,"DocumentType",{enumerable:!0,get:function(){return JOt.DocumentTypeImpl}});var Vnn=ps();Object.defineProperty(Xe,"dom",{enumerable:!0,get:function(){return Vnn.dom}});var znn=IEe();Object.defineProperty(Xe,"DOMImplementation",{enumerable:!0,get:function(){return znn.DOMImplementationImpl}});var Qnn=J1e();Object.defineProperty(Xe,"DOMTokenList",{enumerable:!0,get:function(){return Qnn.DOMTokenListImpl}});var xM=$H();Object.defineProperty(Xe,"Element",{enumerable:!0,get:function(){return xM.ElementImpl}});var Gnn=AK();Object.defineProperty(Xe,"Event",{enumerable:!0,get:function(){return Gnn.EventImpl}});var Ynn=uM();Object.defineProperty(Xe,"EventTarget",{enumerable:!0,get:function(){return Ynn.EventTargetImpl}});var Wnn=O1e();Object.defineProperty(Xe,"HTMLCollection",{enumerable:!0,get:function(){return Wnn.HTMLCollectionImpl}});var Xnn=KOt();Object.defineProperty(Xe,"MutationObserver",{enumerable:!0,get:function(){return Xnn.MutationObserverImpl}});var Jnn=W1e();Object.defineProperty(Xe,"MutationRecord",{enumerable:!0,get:function(){return Jnn.MutationRecordImpl}});var Znn=F1e();Object.defineProperty(Xe,"NamedNodeMap",{enumerable:!0,get:function(){return Znn.NamedNodeMapImpl}});var ein=G1e();Object.defineProperty(Xe,"NodeFilter",{enumerable:!0,get:function(){return ein.NodeFilterImpl}});var tin=l_();Object.defineProperty(Xe,"Node",{enumerable:!0,get:function(){return tin.NodeImpl}});var rin=V1e();Object.defineProperty(Xe,"NodeIterator",{enumerable:!0,get:function(){return rin.NodeIteratorImpl}});var nin=M1e();Object.defineProperty(Xe,"NodeList",{enumerable:!0,get:function(){return nin.NodeListImpl}});var iin=B1e();Object.defineProperty(Xe,"NodeListStatic",{enumerable:!0,get:function(){return iin.NodeListStaticImpl}});var ZOt=VOt(),ePt=QOt(),iwe=GOt(),sin=D1e();Object.defineProperty(Xe,"ProcessingInstruction",{enumerable:!0,get:function(){return sin.ProcessingInstructionImpl}});var ain=j1e();Object.defineProperty(Xe,"Range",{enumerable:!0,get:function(){return ain.RangeImpl}});var tPt=x1e();Object.defineProperty(Xe,"ShadowRoot",{enumerable:!0,get:function(){return tPt.ShadowRootImpl}});var rPt=YOt(),oin=WOt();Object.defineProperty(Xe,"StaticRange",{enumerable:!0,get:function(){return oin.StaticRangeImpl}});var nPt=QH();Object.defineProperty(Xe,"Text",{enumerable:!0,get:function(){return nPt.TextImpl}});var uin=cK();Object.defineProperty(Xe,"Traverser",{enumerable:!0,get:function(){return uin.TraverserImpl}});var cin=Q1e();Object.defineProperty(Xe,"TreeWalker",{enumerable:!0,get:function(){return cin.TreeWalkerImpl}});var lin=i1e();Object.defineProperty(Xe,"Window",{enumerable:!0,get:function(){return lin.WindowImpl}});var din=A1e();Object.defineProperty(Xe,"XMLDocument",{enumerable:!0,get:function(){return din.XMLDocumentImpl}});(0,sc.applyMixin)(xM.ElementImpl,rwe.ChildNodeImpl);(0,sc.applyMixin)(twe.CharacterDataImpl,rwe.ChildNodeImpl);(0,sc.applyMixin)(JOt.DocumentTypeImpl,rwe.ChildNodeImpl);(0,sc.applyMixin)(pV.DocumentImpl,XOt.DocumentOrShadowRootImpl);(0,sc.applyMixin)(tPt.ShadowRootImpl,XOt.DocumentOrShadowRootImpl);(0,sc.applyMixin)(xM.ElementImpl,ZOt.NonDocumentTypeChildNodeImpl);(0,sc.applyMixin)(twe.CharacterDataImpl,ZOt.NonDocumentTypeChildNodeImpl);(0,sc.applyMixin)(pV.DocumentImpl,ePt.NonElementParentNodeImpl);(0,sc.applyMixin)(nwe.DocumentFragmentImpl,ePt.NonElementParentNodeImpl);(0,sc.applyMixin)(pV.DocumentImpl,iwe.ParentNodeImpl);(0,sc.applyMixin)(nwe.DocumentFragmentImpl,iwe.ParentNodeImpl);(0,sc.applyMixin)(xM.ElementImpl,iwe.ParentNodeImpl);(0,sc.applyMixin)(nPt.TextImpl,rPt.SlotableImpl);(0,sc.applyMixin)(xM.ElementImpl,rPt.SlotableImpl)});var gV=b(mV=>{"use strict";Object.defineProperty(mV,"__esModule",{value:!0});mV.TokenType=void 0;var iPt;(function(e){e[e.EOF=0]="EOF",e[e.Declaration=1]="Declaration",e[e.DocType=2]="DocType",e[e.Element=3]="Element",e[e.Text=4]="Text",e[e.CDATA=5]="CDATA",e[e.PI=6]="PI",e[e.Comment=7]="Comment",e[e.ClosingTag=8]="ClosingTag"})(iPt||(mV.TokenType=iPt={}))});var awe=b(yV=>{"use strict";Object.defineProperty(yV,"__esModule",{value:!0});yV.XMLStringLexer=void 0;var lu=gV(),swe=class e{_str;_index;_length;_options={skipWhitespaceOnlyText:!1};err={line:-1,col:-1,index:-1,str:""};constructor(t,r){this._str=t,this._index=0,this._length=t.length,r&&(this._options.skipWhitespaceOnlyText=r.skipWhitespaceOnlyText||!1)}nextToken(){if(this.eof())return{type:lu.TokenType.EOF};let t=this.skipIfStartsWith("<")?this.openBracket():this.text();return this._options.skipWhitespaceOnlyText&&t.type===lu.TokenType.Text&&e.isWhiteSpaceToken(t)&&(t=this.nextToken()),t}openBracket(){if(this.skipIfStartsWith("?"))return this.skipIfStartsWith("xml")?e.isSpace(this._str[this._index])?this.declaration():(this.seek(-3),this.pi()):this.pi();if(this.skipIfStartsWith("!")){if(this.skipIfStartsWith("--"))return this.comment();if(this.skipIfStartsWith("[CDATA["))return this.cdata();if(this.skipIfStartsWith("DOCTYPE"))return this.doctype();this.throwError("Invalid '!' in opening tag.")}else return this.skipIfStartsWith("/")?this.closeTag():this.openTag()}declaration(){let t="",r="",n="";for(;!this.eof();){if(this.skipSpace(),this.skipIfStartsWith("?>"))return{type:lu.TokenType.Declaration,version:t,encoding:r,standalone:n};{let[i,s]=this.attribute();i==="version"?t=s:i==="encoding"?r=s:i==="standalone"?n=s:this.throwError("Invalid attribute name: "+i)}}this.throwError("Missing declaration end symbol `?>`")}doctype(){let t="",r="";this.skipSpace();let n=this.takeUntil2("[",">",!0);return this.skipSpace(),this.skipIfStartsWith("PUBLIC")?(t=this.quotedString(),r=this.quotedString()):this.skipIfStartsWith("SYSTEM")&&(r=this.quotedString()),this.skipSpace(),this.skipIfStartsWith("[")&&(this.skipUntil("]"),this.skipIfStartsWith("]")||this.throwError("Missing end bracket of DTD internal subset")),this.skipSpace(),this.skipIfStartsWith(">")||this.throwError("Missing doctype end symbol `>`"),{type:lu.TokenType.DocType,name:n,pubId:t,sysId:r}}pi(){let t=this.takeUntilStartsWith("?>",!0);if(this.eof()&&this.throwError("Missing processing instruction end symbol `?>`"),this.skipSpace(),this.skipIfStartsWith("?>"))return{type:lu.TokenType.PI,target:t,data:""};let r=this.takeUntilStartsWith("?>");return this.eof()&&this.throwError("Missing processing instruction end symbol `?>`"),this.seek(2),{type:lu.TokenType.PI,target:t,data:r}}text(){let t=this.takeUntil("<");return{type:lu.TokenType.Text,data:t}}comment(){let t=this.takeUntilStartsWith("-->");return this.eof()&&this.throwError("Missing comment end symbol `-->`"),this.seek(3),{type:lu.TokenType.Comment,data:t}}cdata(){let t=this.takeUntilStartsWith("]]>");return this.eof()&&this.throwError("Missing CDATA end symbol `]>`"),this.seek(3),{type:lu.TokenType.CDATA,data:t}}openTag(){this.skipSpace();let t=this.takeUntil2(">","/",!0);if(this.skipSpace(),this.skipIfStartsWith(">"))return{type:lu.TokenType.Element,name:t,attributes:[],selfClosing:!1};if(this.skipIfStartsWith("/>"))return{type:lu.TokenType.Element,name:t,attributes:[],selfClosing:!0};let r=[];for(;!this.eof();){if(this.skipSpace(),this.skipIfStartsWith(">"))return{type:lu.TokenType.Element,name:t,attributes:r,selfClosing:!1};if(this.skipIfStartsWith("/>"))return{type:lu.TokenType.Element,name:t,attributes:r,selfClosing:!0};let n=this.attribute();r.push(n)}this.throwError("Missing opening element tag end symbol `>`")}closeTag(){this.skipSpace();let t=this.takeUntil(">",!0);return this.skipSpace(),this.skipIfStartsWith(">")||this.throwError("Missing closing element tag end symbol `>`"),{type:lu.TokenType.ClosingTag,name:t}}attribute(){this.skipSpace();let t=this.takeUntil("=",!0);this.skipSpace(),this.skipIfStartsWith("=")||this.throwError("Missing equals sign before attribute value");let r=this.quotedString();return[t,r]}quotedString(){this.skipSpace();let t=this.take(1);e.isQuote(t)||this.throwError("Missing start quote character before quoted value");let r=this.takeUntil(t);return this.skipIfStartsWith(t)||this.throwError("Missing end quote character after quoted value"),r}eof(){return this._index>=this._length}skipIfStartsWith(t){let r=t.length;if(r===1)return this._str[this._index]===t?(this._index++,!0):!1;for(let n=0;nthis._length&&(this._index=this._length)}skipSpace(){for(;!this.eof()&&e.isSpace(this._str[this._index]);)this._index++}take(t){if(t===1)return this._str[this._index++];let r=this._index;return this.seek(t),this._str.slice(r,this._index)}takeUntil(t,r=!1){let n=this._index;for(;this._indexthis._index){a=n.index;break}throw this.err={line:i,col:this._index-s,index:this._index,str:this._str.substring(s,a)},new Error(t+` +`)}function Dwe(e){return e.replace(/^[\t\n\f\r ]+/,"").replace(/[\t\n\f\r ]+$/,"")}function V_n(e){return Dwe(e.replace(/[\t\n\f\r ]{2,}/g," "))}function Eb(e,t,r){if(!(0,Ez.isArray)(t))return Eb(e,Array.from(t),r);let n="";for(;r.positiong$t.ASCIIWhiteSpace.test(r),e,t)}function E$t(e,t){if(!(0,Ez.isArray)(e))return E$t(Array.from(e),t);let r={position:0},n=[],s=Eb(i=>t!==i,e,r);for(n.push(s);r.positiont!==i,e,r),n.push(s);return n}function y$t(e){if(!(0,Ez.isArray)(e))return y$t(Array.from(e));let t={position:0},r=[];for(Owe(e,t);t.position!g$t.ASCIIWhiteSpace.test(s),e,t);r.push(n),Owe(e,t)}return r}function v$t(e){if(!(0,Ez.isArray)(e))return v$t(Array.from(e));let t={position:0},r=[];for(;t.positions!==",",e,t);r.push(Dwe(n)),t.position{"use strict";var K_n=qn&&qn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),G_n=qn&&qn.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),df=qn&&qn.__importStar||function(){var e=function(t){return e=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},e(t)};return function(t){if(t&&t.__esModule)return t;var r={};if(t!=null)for(var n=e(t),s=0;s{"use strict";Object.defineProperty(Pwe,"__esModule",{value:!0});Pwe.idl_defineConst=iAn;function iAn(e,t,r){Object.defineProperty(e,t,{writable:!1,enumerable:!0,configurable:!1,value:r})}});var Lwe=S(vz=>{"use strict";Object.defineProperty(vz,"__esModule",{value:!0});vz.DOMImplementationImpl=void 0;var aAn=ea(),cw=ha(),N0=Ln(),oAn=mc(),yz=class e{_ID="@oozcitak/dom";_associatedDocument;constructor(t){this._associatedDocument=t||aAn.dom.window.document}createDocumentType(t,r,n){return(0,N0.namespace_validate)(t),(0,N0.create_documentType)(this._associatedDocument,t,r,n)}createDocument(t,r,n=null){let s=(0,N0.create_xmlDocument)(),i=null;return r&&(i=(0,N0.document_internalCreateElementNS)(s,t,r)),n&&s.appendChild(n),i&&s.appendChild(i),s._origin=this._associatedDocument._origin,t===cw.namespace.HTML?s._contentType="application/xhtml+xml":t===cw.namespace.SVG?s._contentType="image/svg+xml":s._contentType="application/xml",s}createHTMLDocument(t){let r=(0,N0.create_document)();r._type="html",r._contentType="text/html",r.appendChild((0,N0.create_documentType)(r,"html","",""));let n=(0,N0.element_createAnElement)(r,"html",cw.namespace.HTML);r.appendChild(n);let s=(0,N0.element_createAnElement)(r,"head",cw.namespace.HTML);if(n.appendChild(s),t!==void 0){let a=(0,N0.element_createAnElement)(r,"title",cw.namespace.HTML);s.appendChild(a);let o=(0,N0.create_text)(r,t);a.appendChild(o)}let i=(0,N0.element_createAnElement)(r,"body",cw.namespace.HTML);return n.appendChild(i),r._origin=this._associatedDocument._origin,r}hasFeature(){return!0}static _create(t){return new e(t)}};vz.DOMImplementationImpl=yz;(0,oAn.idl_defineConst)(yz.prototype,"_ID","@oozcitak/dom")});var xa=S(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.InvalidCharacterError=Pt.SyntaxError=Pt.IndexSizeError=Pt.NotFoundError=Pt.HierarchyRequestError=Pt.NotImplementedError=Pt.DataCloneError=Pt.InvalidNodeTypeError=Pt.TimeoutError=Pt.QuotaExceededError=Pt.URLMismatchError=Pt.AbortError=Pt.NetworkError=Pt.SecurityError=Pt.TypeMismatchError=Pt.ValidationError=Pt.InvalidAccessError=Pt.NamespaceError=Pt.InvalidModificationError=Pt.InvalidStateError=Pt.InUseAttributeError=Pt.NotSupportedError=Pt.NoModificationAllowedError=Pt.NoDataAllowedError=Pt.WrongDocumentError=Pt.DOMStringSizeError=Pt.DOMException=void 0;var ns=class extends Error{name;constructor(t,r=""){super(r),this.name=t}};Pt.DOMException=ns;var Mwe=class extends ns{constructor(t=""){super("DOMStringSizeError",t)}};Pt.DOMStringSizeError=Mwe;var kwe=class extends ns{constructor(t=""){super("WrongDocumentError","The object is in the wrong document. "+t)}};Pt.WrongDocumentError=kwe;var Bwe=class extends ns{constructor(t=""){super("NoDataAllowedError",t)}};Pt.NoDataAllowedError=Bwe;var Uwe=class extends ns{constructor(t=""){super("NoModificationAllowedError","The object can not be modified. "+t)}};Pt.NoModificationAllowedError=Uwe;var Fwe=class extends ns{constructor(t=""){super("NotSupportedError","The operation is not supported. "+t)}};Pt.NotSupportedError=Fwe;var $we=class extends ns{constructor(t=""){super("InUseAttributeError",t)}};Pt.InUseAttributeError=$we;var qwe=class extends ns{constructor(t=""){super("InvalidStateError","The object is in an invalid state. "+t)}};Pt.InvalidStateError=qwe;var Hwe=class extends ns{constructor(t=""){super("InvalidModificationError","The object can not be modified in this way. "+t)}};Pt.InvalidModificationError=Hwe;var Vwe=class extends ns{constructor(t=""){super("NamespaceError","The operation is not allowed by Namespaces in XML. [XMLNS] "+t)}};Pt.NamespaceError=Vwe;var jwe=class extends ns{constructor(t=""){super("InvalidAccessError","The object does not support the operation or argument. "+t)}};Pt.InvalidAccessError=jwe;var Kwe=class extends ns{constructor(t=""){super("ValidationError",t)}};Pt.ValidationError=Kwe;var Gwe=class extends ns{constructor(t=""){super("TypeMismatchError",t)}};Pt.TypeMismatchError=Gwe;var zwe=class extends ns{constructor(t=""){super("SecurityError","The operation is insecure. "+t)}};Pt.SecurityError=zwe;var Ywe=class extends ns{constructor(t=""){super("NetworkError","A network error occurred. "+t)}};Pt.NetworkError=Ywe;var Qwe=class extends ns{constructor(t=""){super("AbortError","The operation was aborted. "+t)}};Pt.AbortError=Qwe;var Wwe=class extends ns{constructor(t=""){super("URLMismatchError","The given URL does not match another URL. "+t)}};Pt.URLMismatchError=Wwe;var Xwe=class extends ns{constructor(t=""){super("QuotaExceededError","The quota has been exceeded. "+t)}};Pt.QuotaExceededError=Xwe;var Jwe=class extends ns{constructor(t=""){super("TimeoutError","The operation timed out. "+t)}};Pt.TimeoutError=Jwe;var Zwe=class extends ns{constructor(t=""){super("InvalidNodeTypeError","The supplied node is incorrect or has an incorrect ancestor for this operation. "+t)}};Pt.InvalidNodeTypeError=Zwe;var eNe=class extends ns{constructor(t=""){super("DataCloneError","The object can not be cloned. "+t)}};Pt.DataCloneError=eNe;var tNe=class extends ns{constructor(t=""){super("NotImplementedError","The DOM method is not implemented by this module. "+t)}};Pt.NotImplementedError=tNe;var rNe=class extends ns{constructor(t=""){super("HierarchyRequestError","The operation would yield an incorrect node tree. "+t)}};Pt.HierarchyRequestError=rNe;var nNe=class extends ns{constructor(t=""){super("NotFoundError","The object can not be found here. "+t)}};Pt.NotFoundError=nNe;var sNe=class extends ns{constructor(t=""){super("IndexSizeError","The index is not in the allowed range. "+t)}};Pt.IndexSizeError=sNe;var iNe=class extends ns{constructor(t=""){super("SyntaxError","The string did not match the expected pattern. "+t)}};Pt.SyntaxError=iNe;var aNe=class extends ns{constructor(t=""){super("InvalidCharacterError","The string contains invalid characters. "+t)}};Pt.InvalidCharacterError=aNe});var cNe=S(Sz=>{"use strict";Object.defineProperty(Sz,"__esModule",{value:!0});Sz.Guard=void 0;var au=Qn(),oNe=class e{static isNode(t){return!!t&&t._nodeType!==void 0}static isDocumentNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.Document}static isDocumentTypeNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.DocumentType}static isDocumentFragmentNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.DocumentFragment}static isAttrNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.Attribute}static isCharacterDataNode(t){if(!e.isNode(t))return!1;let r=t._nodeType;return r===au.NodeType.Text||r===au.NodeType.ProcessingInstruction||r===au.NodeType.Comment||r===au.NodeType.CData}static isTextNode(t){return e.isNode(t)&&(t._nodeType===au.NodeType.Text||t._nodeType===au.NodeType.CData)}static isExclusiveTextNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.Text}static isCDATASectionNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.CData}static isCommentNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.Comment}static isProcessingInstructionNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.ProcessingInstruction}static isElementNode(t){return e.isNode(t)&&t._nodeType===au.NodeType.Element}static isCustomElementNode(t){return e.isElementNode(t)&&t._customElementState==="custom"}static isShadowRoot(t){return!!t&&t.host!==void 0}static isMouseEvent(t){return!!t&&t.screenX!==void 0&&t.screenY!=null}static isSlotable(t){return!!t&&t._name!==void 0&&t._assignedSlot!==void 0&&(e.isTextNode(t)||e.isElementNode(t))}static isSlot(t){return!!t&&t._name!==void 0&&t._assignedNodes!==void 0&&e.isElementNode(t)}static isWindow(t){return!!t&&t.navigator!==void 0}static isEventListener(t){return!!t&&t.handleEvent!==void 0}static isRegisteredObserver(t){return!!t&&t.observer!==void 0&&t.options!==void 0}static isTransientRegisteredObserver(t){return!!t&&t.source!==void 0&&e.isRegisteredObserver(t)}};Sz.Guard=oNe});var T$t=S(Tz=>{"use strict";Object.defineProperty(Tz,"__esModule",{value:!0});Tz.Cast=void 0;var cAn=cNe(),uNe=class{static asNode(t){if(cAn.Guard.isNode(t))return t;throw new Error("Invalid object. Node expected.")}};Tz.Cast=uNe});var b$t=S(bz=>{"use strict";Object.defineProperty(bz,"__esModule",{value:!0});bz.EmptySet=void 0;var lNe=class{get size(){return 0}add(t){throw new Error("Cannot add to an empty set.")}clear(){}delete(t){return!1}forEach(t,r){}has(t){return!1}[Symbol.iterator](){return new uw}entries(){return new uw}keys(){return new uw}values(){return new uw}get[Symbol.toStringTag](){return"EmptySet"}};bz.EmptySet=lNe;var uw=class{[Symbol.iterator](){return this}next(){return{done:!0,value:null}}}});var vs=S(hy=>{"use strict";Object.defineProperty(hy,"__esModule",{value:!0});hy.EmptySet=hy.Guard=hy.Cast=void 0;var uAn=T$t();Object.defineProperty(hy,"Cast",{enumerable:!0,get:function(){return uAn.Cast}});var lAn=cNe();Object.defineProperty(hy,"Guard",{enumerable:!0,get:function(){return lAn.Guard}});var dAn=b$t();Object.defineProperty(hy,"EmptySet",{enumerable:!0,get:function(){return dAn.EmptySet}})});var BB=S(Iz=>{"use strict";Object.defineProperty(Iz,"__esModule",{value:!0});Iz.EventTargetImpl=void 0;var fAn=xa(),I$t=vs(),lw=Ln(),dNe=class{__eventListenerList;get _eventListenerList(){return this.__eventListenerList||(this.__eventListenerList=[])}__eventHandlerMap;get _eventHandlerMap(){return this.__eventHandlerMap||(this.__eventHandlerMap={})}constructor(){}addEventListener(t,r,n={passive:!1,once:!1,capture:!1}){let[s,i,a]=(0,lw.eventTarget_flattenMore)(n),o;if(r)I$t.Guard.isEventListener(r)?o=r:o={handleEvent:r};else return;(0,lw.eventTarget_addEventListener)(this,{type:t,callback:o,capture:s,passive:i,once:a,removed:!1})}removeEventListener(t,r,n={capture:!1}){let s=(0,lw.eventTarget_flatten)(n);if(r)for(let i=0;i{"use strict";Object.defineProperty(Rz,"__esModule",{value:!0});Rz.WindowImpl=void 0;var hAn=BB(),pAn=Jn(),mAn=Ln(),fNe=class e extends hAn.EventTargetImpl{_currentEvent;_signalSlots=new Set;_mutationObserverMicrotaskQueued=!1;_mutationObservers=new Set;_associatedDocument;_iteratorList=new pAn.FixedSizeSet;constructor(){super(),this._associatedDocument=(0,mAn.create_document)()}get document(){return this._associatedDocument}get event(){return this._currentEvent}static _create(){return new e}};Rz.WindowImpl=fNe});var C$t=S(dw=>{"use strict";Object.defineProperty(dw,"__esModule",{value:!0});dw.OpaqueOrigin=dw.ParserState=void 0;var R$t;(function(e){e[e.SchemeStart=0]="SchemeStart",e[e.Scheme=1]="Scheme",e[e.NoScheme=2]="NoScheme",e[e.SpecialRelativeOrAuthority=3]="SpecialRelativeOrAuthority",e[e.PathOrAuthority=4]="PathOrAuthority",e[e.Relative=5]="Relative",e[e.RelativeSlash=6]="RelativeSlash",e[e.SpecialAuthoritySlashes=7]="SpecialAuthoritySlashes",e[e.SpecialAuthorityIgnoreSlashes=8]="SpecialAuthorityIgnoreSlashes",e[e.Authority=9]="Authority",e[e.Host=10]="Host",e[e.Hostname=11]="Hostname",e[e.Port=12]="Port",e[e.File=13]="File",e[e.FileSlash=14]="FileSlash",e[e.FileHost=15]="FileHost",e[e.PathStart=16]="PathStart",e[e.Path=17]="Path",e[e.CannotBeABaseURLPath=18]="CannotBeABaseURLPath",e[e.Query=19]="Query",e[e.Fragment=20]="Fragment"})(R$t||(dw.ParserState=R$t={}));dw.OpaqueOrigin=["","",null,null]});var INe=S(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.setValidationErrorCallback=EAn;pr.newURL=O$t;pr.isSpecialScheme=fw;pr.isSpecial=wa;pr.defaultPort=mNe;pr.includesCredentials=wz;pr.cannotHaveAUsernamePasswordPort=yAn;pr.urlSerializer=gNe;pr.hostSerializer=SNe;pr.iPv4Serializer=D$t;pr.iPv6Serializer=P$t;pr.urlParser=vAn;pr.basicURLParser=TNe;pr.setTheUsername=SAn;pr.setThePassword=TAn;pr.isSingleDotPathSegment=_Ne;pr.isDoubleDotPathSegment=L$t;pr.shorten=ANe;pr.isNormalizedWindowsDriveLetter=bNe;pr.isWindowsDriveLetter=Nz;pr.startsWithAWindowsDriveLetter=ENe;pr.hostParser=xz;pr.iPv4NumberParser=M$t;pr.iPv4Parser=k$t;pr.iPv6Parser=B$t;pr.opaqueHostParser=U$t;pr.resolveABlobURL=F$t;pr.percentEncode=Oz;pr.percentDecode=$$t;pr.stringPercentDecode=q$t;pr.utf8PercentEncode=py;pr.hostEquals=bAn;pr.urlEquals=IAn;pr.urlEncodedStringParser=RAn;pr.urlEncodedParser=H$t;pr.urlEncodedByteSerializer=yNe;pr.urlEncodedSerializer=CAn;pr.origin=V$t;pr.domainToASCII=j$t;pr.domainToUnicode=xAn;pr.asciiSerializationOfAnOrigin=wAn;var ou=Jn(),at=C$t(),ro=ha(),x$t=require("url"),pNe,w$t={ftp:21,file:null,http:80,https:443,ws:80,wss:443},N$t=/[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,gAn=/[ "<>`]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,_An=/[ "<>`#?{}]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,vNe=/[ "<>`#?{}/:;=@\[\]\\\^\|]|[\0-\x1F\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Cz=/[0-9A-Za-z!\$&-\/:;=\?@_~\xA0-\uD7FF\uE000-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uD83E\uD840-\uD87E\uD880-\uD8BE\uD8C0-\uD8FE\uD900-\uD93E\uD940-\uD97E\uD980-\uD9BE\uD9C0-\uD9FE\uDA00-\uDA3E\uDA40-\uDA7E\uDA80-\uDABE\uDAC0-\uDAFE\uDB00-\uDB3E\uDB40-\uDB7E\uDB80-\uDBBE\uDBC0-\uDBFE][\uDC00-\uDFFF]|[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDC00-\uDFFD]/,AAn=/[\0\t\f\r #%/:?@\[\\\]]/;function EAn(e){pNe=e}function Nt(e){pNe!==void 0&&pNe.call(null,"Validation Error: "+e)}function O$t(){return{scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,_cannotBeABaseURLFlag:!1,_blobURLEntry:null}}function fw(e){return e in w$t}function wa(e){return fw(e.scheme)}function mNe(e){return w$t[e]||null}function wz(e){return e.username!==""||e.password!==""}function yAn(e){return e.host===null||e.host===""||e._cannotBeABaseURLFlag||e.scheme==="file"}function gNe(e,t=!1){let r=e.scheme+":";if(e.host!==null?(r+="//",wz(e)&&(r+=e.username,e.password!==""&&(r+=":"+e.password),r+="@"),r+=SNe(e.host),e.port!==null&&(r+=":"+e.port)):e.host===null&&e.scheme==="file"&&(r+="//"),e._cannotBeABaseURLFlag)r+=e.path[0];else for(let n of e.path)r+="/"+n;return e.query!==null&&(r+="?"+e.query),!t&&e.fragment!==null&&(r+="#"+e.fragment),r}function SNe(e){return(0,ou.isNumber)(e)?D$t(e):(0,ou.isArray)(e)?"["+P$t(e)+"]":e}function D$t(e){let t="",r=e;for(let n=1;n<=4;n++)t=(r%256).toString()+t,n!==4&&(t="."+t),r=Math.floor(r/256);return t}function P$t(e){let t="",r=null,n=-1,s=0,i=0;for(let o=0;o<8;o++)if(e[o]===0){s=1;for(let c=o+1;c<8&&e[c]===0;c++)s++;s>i&&(i=s,n=o)}i>1&&(r=n);let a=!1;for(let o=0;o<8;o++)if(!(a&&e[o]===0)){if(a&&(a=!1),r===o){t+=o===0?"::":":",a=!0;continue}t+=e[o].toString(16),o!==7&&(t+=":")}return t}function vAn(e,t,r){let n=TNe(e,t,r);if(n===null)return null;if(n.scheme!=="blob")return n;let s=F$t(n);return s!==null?n._blobURLEntry=s:n._blobURLEntry=null,n}function TNe(e,t,r,n,s){if(n===void 0){n=O$t();let p=/^[\u0000-\u001F\u0020]+/,m=/[\u0000-\u001F\u0020]+$/;(p.test(e)||m.test(e))&&Nt("Input string contains leading or trailing control characters or space."),e=e.replace(p,""),e=e.replace(m,"")}let i=/[\u0009\u000A\u000D]/g;i.test(e)&&Nt("Input string contains tab or newline characters."),e=e.replace(i,"");let a=s===void 0?at.ParserState.SchemeStart:s;t===void 0&&(t=null);let o=r===void 0||r==="replacement"||r==="UTF-16BE"||r==="UTF-16LE"?"UTF-8":r,c="",u=!1,l=!1,d=!1,f="",h=new ou.StringWalker(e);for(;;){switch(a){case at.ParserState.SchemeStart:if(ro.codePoint.ASCIIAlpha.test(h.c()))c+=h.c().toLowerCase(),a=at.ParserState.Scheme;else if(s===void 0)a=at.ParserState.NoScheme,h.pointer--;else return Nt("Invalid scheme start character."),null;break;case at.ParserState.Scheme:if(ro.codePoint.ASCIIAlphanumeric.test(h.c())||h.c()==="+"||h.c()==="-"||h.c()===".")c+=h.c().toLowerCase();else if(h.c()===":"){if(s!==void 0&&(fw(n.scheme)&&!fw(c)||!fw(n.scheme)&&fw(c)||(wz(n)||n.port!==null)&&c==="file"||n.scheme==="file"&&(n.host===""||n.host===null)))return n;if(n.scheme=c,s!==void 0)return n.port===mNe(n.scheme)&&(n.port=null),n;c="",n.scheme==="file"?(h.remaining().startsWith("//")||Nt("Invalid file URL scheme, '//' expected."),a=at.ParserState.File):wa(n)&&t!==null&&t.scheme===n.scheme?a=at.ParserState.SpecialRelativeOrAuthority:wa(n)?a=at.ParserState.SpecialAuthoritySlashes:h.remaining().startsWith("/")?(a=at.ParserState.PathOrAuthority,h.pointer++):(n._cannotBeABaseURLFlag=!0,n.path.push(""),a=at.ParserState.CannotBeABaseURLPath)}else if(s===void 0){c="",a=at.ParserState.NoScheme,h.pointer=0;continue}else return Nt("Invalid input string."),null;break;case at.ParserState.NoScheme:if(t===null||t._cannotBeABaseURLFlag&&h.c()!=="#")return Nt("Invalid input string."),null;t._cannotBeABaseURLFlag&&h.c()==="#"?(n.scheme=t.scheme,n.path=ro.list.clone(t.path),n.query=t.query,n.fragment="",n._cannotBeABaseURLFlag=!0,a=at.ParserState.Fragment):t.scheme!=="file"?(a=at.ParserState.Relative,h.pointer--):(a=at.ParserState.File,h.pointer--);break;case at.ParserState.SpecialRelativeOrAuthority:h.c()==="/"&&h.remaining().startsWith("/")?(a=at.ParserState.SpecialAuthorityIgnoreSlashes,h.pointer++):(Nt("Invalid input string."),a=at.ParserState.Relative,h.pointer--);break;case at.ParserState.PathOrAuthority:h.c()==="/"?a=at.ParserState.Authority:(a=at.ParserState.Path,h.pointer--);break;case at.ParserState.Relative:if(t===null)throw new Error("Invalid parser state. Base URL is null.");switch(n.scheme=t.scheme,h.c()){case f:n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ro.list.clone(t.path),n.query=t.query;break;case"/":a=at.ParserState.RelativeSlash;break;case"?":n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ro.list.clone(t.path),n.query="",a=at.ParserState.Query;break;case"#":n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ro.list.clone(t.path),n.query=t.query,n.fragment="",a=at.ParserState.Fragment;break;default:wa(n)&&h.c()==="\\"?(Nt("Invalid input string."),a=at.ParserState.RelativeSlash):(n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,n.path=ro.list.clone(t.path),n.path.length!==0&&n.path.splice(n.path.length-1,1),a=at.ParserState.Path,h.pointer--);break}break;case at.ParserState.RelativeSlash:if(wa(n)&&(h.c()==="/"||h.c()==="\\"))h.c()==="\\"&&Nt("Invalid input string."),a=at.ParserState.SpecialAuthorityIgnoreSlashes;else if(h.c()==="/")a=at.ParserState.Authority;else{if(t===null)throw new Error("Invalid parser state. Base URL is null.");n.username=t.username,n.password=t.password,n.host=t.host,n.port=t.port,a=at.ParserState.Path,h.pointer--}break;case at.ParserState.SpecialAuthoritySlashes:h.c()==="/"&&h.remaining().startsWith("/")?(a=at.ParserState.SpecialAuthorityIgnoreSlashes,h.pointer++):(Nt("Expected '//'."),a=at.ParserState.SpecialAuthorityIgnoreSlashes,h.pointer--);break;case at.ParserState.SpecialAuthorityIgnoreSlashes:h.c()!=="/"&&h.c()!=="\\"?(a=at.ParserState.Authority,h.pointer--):Nt("Unexpected '/' or '\\'.");break;case at.ParserState.Authority:if(h.c()==="@"){Nt("Unexpected '@'."),u&&(c="%40"+c),u=!0;for(let p of c){if(p===":"&&!d){d=!0;continue}let m=py(p,vNe);d?n.password+=m:n.username+=m}c=""}else if(h.c()===f||h.c()==="/"||h.c()==="?"||h.c()==="#"||wa(n)&&h.c()==="\\"){if(u&&c==="")return Nt("Invalid input string."),null;h.pointer-=c.length+1,c="",a=at.ParserState.Host}else c+=h.c();break;case at.ParserState.Host:case at.ParserState.Hostname:if(s!==void 0&&n.scheme==="file")h.pointer--,a=at.ParserState.FileHost;else if(h.c()===":"&&!l){if(c==="")return Nt("Invalid input string."),null;let p=xz(c,!wa(n));if(p===null)return null;if(n.host=p,c="",a=at.ParserState.Port,s===at.ParserState.Hostname)return n}else if(h.c()===f||h.c()==="/"||h.c()==="?"||h.c()==="#"||wa(n)&&h.c()==="\\"){if(h.pointer--,wa(n)&&c==="")return Nt("Invalid input string."),null;if(s!==void 0&&c===""&&(wz(n)||n.port!==null))return Nt("Invalid input string."),n;let p=xz(c,!wa(n));if(p===null)return null;if(n.host=p,c="",a=at.ParserState.PathStart,s!==void 0)return n}else h.c()==="["&&(l=!0),h.c()==="]"&&(l=!1),c+=h.c();break;case at.ParserState.Port:if(ro.codePoint.ASCIIDigit.test(h.c()))c+=h.c();else if(h.c()===f||h.c()==="/"||h.c()==="?"||h.c()==="#"||wa(n)&&h.c()==="\\"||s){if(c!==""&&c!==""){let p=parseInt(c,10);if(p>Math.pow(2,16)-1)return Nt("Invalid port number."),null;n.port=p===mNe(n.scheme)?null:p,c=""}if(s!==void 0)return n;a=at.ParserState.PathStart,h.pointer--}else return Nt("Invalid input string."),null;break;case at.ParserState.File:if(n.scheme="file",h.c()==="/"||h.c()==="\\")h.c()==="\\"&&Nt("Invalid input string."),a=at.ParserState.FileSlash;else if(t!==null&&t.scheme==="file")switch(h.c()){case f:n.host=t.host,n.path=ro.list.clone(t.path),n.query=t.query;break;case"?":n.host=t.host,n.path=ro.list.clone(t.path),n.query="",a=at.ParserState.Query;break;case"#":n.host=t.host,n.path=ro.list.clone(t.path),n.query=t.query,n.fragment="",a=at.ParserState.Fragment;break;default:ENe(h.substring())?Nt("Unexpected windows drive letter in input string."):(n.host=t.host,n.path=ro.list.clone(t.path),ANe(n)),a=at.ParserState.Path,h.pointer--;break}else a=at.ParserState.Path,h.pointer--;break;case at.ParserState.FileSlash:h.c()==="/"||h.c()==="\\"?(h.c()==="\\"&&Nt("Invalid input string."),a=at.ParserState.FileHost):(t!==null&&t.scheme==="file"&&!ENe(h.substring())&&(bNe(t.path[0])?n.path.push(t.path[0]):n.host=t.host),a=at.ParserState.Path,h.pointer--);break;case at.ParserState.FileHost:if(h.c()===f||h.c()==="/"||h.c()==="\\"||h.c()==="?"||h.c()==="#")if(h.pointer--,s===void 0&&Nz(c))Nt("Unexpected windows drive letter in input string."),a=at.ParserState.Path;else if(c===""){if(n.host="",s!==void 0)return n;a=at.ParserState.PathStart}else{let p=xz(c,!wa(n));if(p===null)return null;if(p==="localhost"&&(p=""),n.host=p,s!==void 0)return n;c="",a=at.ParserState.PathStart}else c+=h.c();break;case at.ParserState.PathStart:wa(n)?(h.c()==="\\"&&Nt("Invalid input string."),a=at.ParserState.Path,h.c()!=="/"&&h.c()!=="\\"&&h.pointer--):s===void 0&&h.c()==="?"?(n.query="",a=at.ParserState.Query):s===void 0&&h.c()==="#"?(n.fragment="",a=at.ParserState.Fragment):h.c()!==f&&(a=at.ParserState.Path,h.c()!=="/"&&h.pointer--);break;case at.ParserState.Path:if(h.c()===f||h.c()==="/"||wa(n)&&h.c()==="\\"||s===void 0&&(h.c()==="?"||h.c()==="#")){if(wa(n)&&h.c()==="\\"&&Nt("Invalid input string."),L$t(c))ANe(n),h.c()!=="/"&&!(wa(n)&&h.c()==="\\")&&n.path.push("");else if(_Ne(c)&&h.c()!=="/"&&!(wa(n)&&h.c()==="\\"))n.path.push("");else if(!_Ne(c)){if(n.scheme==="file"&&n.path.length===0&&Nz(c)){n.host!==null&&n.host!==""&&(Nt("Invalid input string."),n.host="");let p=Array.from(c);c=p.slice(0,1)+":"+p.slice(2)}n.path.push(c)}if(c="",n.scheme==="file"&&(h.c()===f||h.c()==="?"||h.c()==="#"))for(;n.path.length>1&&n.path[0]==="";)Nt("Invalid input string."),n.path.splice(0,1);h.c()==="?"&&(n.query="",a=at.ParserState.Query),h.c()==="#"&&(n.fragment="",a=at.ParserState.Fragment)}else!Cz.test(h.c())&&h.c()!=="%"&&Nt("Character is not a URL code point or a percent encoded character."),h.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(h.remaining())&&Nt("Percent encoded character must be followed by two hex digits."),c+=py(h.c(),_An);break;case at.ParserState.CannotBeABaseURLPath:h.c()==="?"?(n.query="",a=at.ParserState.Query):h.c()==="#"?(n.fragment="",a=at.ParserState.Fragment):(h.c()!==f&&!Cz.test(h.c())&&h.c()!=="%"&&Nt("Character is not a URL code point or a percent encoded character."),h.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(h.remaining())&&Nt("Percent encoded character must be followed by two hex digits."),h.c()!==f&&(n.path[0]+=py(h.c(),N$t)));break;case at.ParserState.Query:if(o!=="UTF-8"&&(!wa(n)||n.scheme==="ws"||n.scheme==="wss")&&(o="UTF-8"),s===void 0&&h.c()==="#")n.fragment="",a=at.ParserState.Fragment;else if(h.c()!==f){if(!Cz.test(h.c())&&h.c()!=="%"&&Nt("Character is not a URL code point or a percent encoded character."),h.c()==="%"&&!/^[0-9a-fA-F][0-9a-fA-F]/.test(h.remaining())&&Nt("Percent encoded character must be followed by two hex digits."),o.toUpperCase()!=="UTF-8")throw new Error("Only UTF-8 encoding is supported.");let p=(0,ou.utf8Encode)(h.c());if(p.length>=3&&p[0]===38&&p[1]===35&&p[p.length-1]===59)p=p.subarray(2,p.length-1),n.query+="%26%23"+ro.byteSequence.isomorphicDecode(p)+"%3B";else for(let m of p)m<33||m>126||m===34||m===35||m===60||m===62||m===39&&wa(n)?n.query+=Oz(m):n.query+=String.fromCharCode(m)}break;case at.ParserState.Fragment:h.c()===f||(h.c()==="\0"?Nt("NULL character in input string."):(!Cz.test(h.c())&&h.c()!=="%"&&Nt("Unexpected character in fragment string."),h.c()==="%"&&!/^[A-Za-z0-9][A-Za-z0-9]/.test(h.remaining())&&Nt("Unexpected character in fragment string."),n.fragment+=py(h.c(),gAn)));break}if(h.eof)break;h.pointer++}return n}function SAn(e,t){let r="";for(let n of t)r+=py(n,vNe);e.username=r}function TAn(e,t){let r="";for(let n of t)r+=py(n,vNe);e.password=r}function _Ne(e){return e==="."||e.toLowerCase()==="%2e"}function L$t(e){let t=e.toLowerCase();return t===".."||t===".%2e"||t==="%2e."||t==="%2e%2e"}function ANe(e){let t=e.path;t.length!==0&&(e.scheme==="file"&&t.length===1&&bNe(t[0])||e.path.splice(e.path.length-1,1))}function bNe(e){return e.length>=2&&ro.codePoint.ASCIIAlpha.test(e[0])&&e[1]===":"}function Nz(e){return e.length>=2&&ro.codePoint.ASCIIAlpha.test(e[0])&&(e[1]===":"||e[1]==="|")}function ENe(e){return e.length>=2&&Nz(e)&&(e.length===2||e[2]==="/"||e[2]==="\\"||e[2]==="?"||e[2]==="#")}function xz(e,t=!1){if(e.startsWith("["))return e.endsWith("]")?B$t(e.substring(1,e.length-1)):(Nt("Expected ']' after '['."),null);if(t)return U$t(e);let r=(0,ou.utf8Decode)(q$t(e)),n=j$t(r);if(n===null||AAn.test(n))return Nt("Invalid domain."),null;let s=k$t(n);return s===null||(0,ou.isNumber)(s)?s:n}function M$t(e,t={value:!1}){let r=10;return e.startsWith("0x")||e.startsWith("0X")?(t.value=!0,e=e.substr(2),r=16):e.length>=2&&e[0]==="0"&&(t.value=!0,e=e.substr(1),r=8),e===""?0:(r===10?/^[0-9]+$/:r===16?/^[0-9A-Fa-f]+$/:/^[0-7]+$/).test(e)?parseInt(e,r):null}function k$t(e){let t={value:!1},r=e.split(".");if(r[r.length-1]===""&&(t.value=!0,r.length>1&&r.pop()),r.length>4)return e;let n=[];for(let a of r){if(a==="")return e;let o=M$t(a,t);if(o===null)return e;n.push(o)}t.value&&Nt("Invalid IP v4 address.");for(let a=0;a255&&(Nt("Invalid IP v4 address."),a=Math.pow(256,5-n.length))return Nt("Invalid IP v4 address."),null;let s=n[n.length-1];n.pop();let i=0;for(let a of n)s+=a*Math.pow(256,3-i),i++;return s}function B$t(e){let t="",r=[0,0,0,0,0,0,0,0],n=0,s=null,i=new ou.StringWalker(e);if(i.c()===":"){if(!i.remaining().startsWith(":"))return Nt("Invalid IP v6 address."),null;i.pointer+=2,n+=1,s=n}for(;i.c()!==t;){if(n===8)return Nt("Invalid IP v6 address."),null;if(i.c()===":"){if(s!==null)return Nt("Invalid IP v6 address."),null;i.pointer++,n++,s=n;continue}let a=0,o=0;for(;o<4&&ro.codePoint.ASCIIHexDigit.test(i.c());)a=a*16+parseInt(i.c(),16),i.pointer++,o++;if(i.c()==="."){if(o===0||(i.pointer-=o,n>6))return Nt("Invalid IP v6 address."),null;let c=0;for(;i.c()!==t;){let u=null;if(c>0)if(i.c()==="."&&c<4)i.pointer++;else return Nt("Invalid IP v6 address."),null;if(!ro.codePoint.ASCIIDigit.test(i.c()))return Nt("Invalid IP v6 address."),null;for(;ro.codePoint.ASCIIDigit.test(i.c());){let l=parseInt(i.c(),10);if(u===null)u=l;else{if(u===0)return Nt("Invalid IP v6 address."),null;u=u*10+l}if(u>255)return Nt("Invalid IP v6 address."),null;i.pointer++}if(u===null)return Nt("Invalid IP v6 address."),null;r[n]=r[n]*256+u,c++,(c===2||c===4)&&n++}if(c!==4)return Nt("Invalid IP v6 address."),null;break}else if(i.c()===":"){if(i.pointer++,i.c()===t)return Nt("Invalid IP v6 address."),null}else if(i.c()!==t)return Nt("Invalid IP v6 address."),null;r[n]=a,n++}if(s!==null){let a=n-s;for(n=7;n!==0&&a>0;)[r[n],r[s+a-1]]=[r[s+a-1],r[n]],n--,a--}else if(s===null&&n!==8)return Nt("Invalid IP v6 address."),null;return r}function U$t(e){if(/[\x00\t\f\r #/:?@\[\\\]]/.test(e))return Nt("Invalid host string."),null;let r="";for(let n of e)r+=py(n,N$t);return r}function F$t(e){return null}function Oz(e){return"%"+("00"+e.toString(16).toUpperCase()).slice(-2)}function $$t(e){let t=s=>s>=48&&s<=57||s>=65&&s<=70||s>=97&&s<=102,r=new Uint8Array(e.length),n=0;for(let s=0;s=e.length-2)r[n]=i,n++;else if(i===37&&(!t(e[s+1])||!t(e[s+2])))r[n]=i,n++;else{let a=parseInt((0,ou.utf8Decode)(Uint8Array.of(e[s+1],e[s+2])),16);r[n]=a,n++,s+=2}}return r.subarray(0,n)}function q$t(e){return $$t((0,ou.utf8Encode)(e))}function py(e,t){if(!t.test(e))return e;let r=(0,ou.utf8Encode)(e),n="";for(let s of r)n+=Oz(s);return n}function bAn(e,t){return e===t}function IAn(e,t,r=!1){return gNe(e,r)===gNe(t,r)}function RAn(e){return H$t((0,ou.utf8Encode)(e))}function H$t(e){let t=[],r=[];for(let s of e)s===38?(t.push(Uint8Array.from(r)),r=[]):r.push(s);r.length!==0&&t.push(Uint8Array.from(r));let n=[];for(let s of t){if(s.length===0)continue;let i=s.indexOf(61),a=i!==-1?s.slice(0,i):s,o=i!==-1?s.slice(i+1):new Uint8Array;for(let l=0;l=48&&r<=57||r>=65&&r<=90||r===95||r>=97&&r<=122?t+=String.fromCodePoint(r):t+=Oz(r);return t}function CAn(e,t){if((t===void 0||t==="replacement"||t==="UTF-16BE"||t==="UTF-16LE"?"UTF-8":t).toUpperCase()!=="UTF-8")throw new Error("Only UTF-8 encoding is supported.");let n="";for(let s of e){let i=yNe((0,ou.utf8Encode)(s[0])),a=s[1];a=yNe((0,ou.utf8Encode)(a)),n!==""&&(n+="&"),n+=i+"="+a}return n}function V$t(e){switch(e.scheme){case"blob":e._blobURLEntry;let t=TNe(e.path[0]);return t===null?at.OpaqueOrigin:V$t(t);case"ftp":case"http":case"https":case"ws":case"wss":return[e.scheme,e.host===null?"":e.host,e.port,null];case"file":return at.OpaqueOrigin;default:return at.OpaqueOrigin}}function j$t(e,t=!1){let r=(0,x$t.domainToASCII)(e);return r===""?(Nt("Invalid domain name."),null):r}function xAn(e,t=!1){let r=(0,x$t.domainToUnicode)(e);return r===""&&Nt("Invalid domain name."),r}function wAn(e){if(e[0]===""&&e[1]===""&&e[2]===null&&e[3]===null)return"null";let t=e[0]+"://"+SNe(e[1]);return e[2]!==null&&(t+=":"+e[2].toString()),t}});var my=S(Pz=>{"use strict";Object.defineProperty(Pz,"__esModule",{value:!0});Pz.NodeImpl=void 0;var Dz=ea(),wo=Qn(),NAn=BB(),Kr=vs(),OAn=xa(),wr=Ln(),DAn=INe(),no=mc(),Di=class extends NAn.EventTargetImpl{static ELEMENT_NODE=1;static ATTRIBUTE_NODE=2;static TEXT_NODE=3;static CDATA_SECTION_NODE=4;static ENTITY_REFERENCE_NODE=5;static ENTITY_NODE=6;static PROCESSING_INSTRUCTION_NODE=7;static COMMENT_NODE=8;static DOCUMENT_NODE=9;static DOCUMENT_TYPE_NODE=10;static DOCUMENT_FRAGMENT_NODE=11;static NOTATION_NODE=12;static DOCUMENT_POSITION_DISCONNECTED=1;static DOCUMENT_POSITION_PRECEDING=2;static DOCUMENT_POSITION_FOLLOWING=4;static DOCUMENT_POSITION_CONTAINS=8;static DOCUMENT_POSITION_CONTAINED_BY=16;static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;ELEMENT_NODE=1;ATTRIBUTE_NODE=2;TEXT_NODE=3;CDATA_SECTION_NODE=4;ENTITY_REFERENCE_NODE=5;ENTITY_NODE=6;PROCESSING_INSTRUCTION_NODE=7;COMMENT_NODE=8;DOCUMENT_NODE=9;DOCUMENT_TYPE_NODE=10;DOCUMENT_FRAGMENT_NODE=11;NOTATION_NODE=12;DOCUMENT_POSITION_DISCONNECTED=1;DOCUMENT_POSITION_PRECEDING=2;DOCUMENT_POSITION_FOLLOWING=4;DOCUMENT_POSITION_CONTAINS=8;DOCUMENT_POSITION_CONTAINED_BY=16;DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;__childNodes;get _childNodes(){return this.__childNodes||(this.__childNodes=(0,wr.create_nodeList)(this))}_nodeDocumentOverride;get _nodeDocument(){return this._nodeDocumentOverride||Dz.dom.window._associatedDocument}set _nodeDocument(t){this._nodeDocumentOverride=t}__registeredObserverList;get _registeredObserverList(){return this.__registeredObserverList||(this.__registeredObserverList=[])}_parent=null;_children=new Kr.EmptySet;_firstChild=null;_lastChild=null;_previousSibling=null;_nextSibling=null;constructor(){super()}get nodeType(){return this._nodeType}get nodeName(){return Kr.Guard.isElementNode(this)?this._htmlUppercasedQualifiedName:Kr.Guard.isAttrNode(this)?this._qualifiedName:Kr.Guard.isExclusiveTextNode(this)?"#text":Kr.Guard.isCDATASectionNode(this)?"#cdata-section":Kr.Guard.isProcessingInstructionNode(this)?this._target:Kr.Guard.isCommentNode(this)?"#comment":Kr.Guard.isDocumentNode(this)?"#document":Kr.Guard.isDocumentTypeNode(this)?this._name:Kr.Guard.isDocumentFragmentNode(this)?"#document-fragment":""}get baseURI(){return(0,DAn.urlSerializer)(this._nodeDocument._URL)}get isConnected(){return Kr.Guard.isElementNode(this)&&(0,wr.shadowTree_isConnected)(this)}get ownerDocument(){return this._nodeType===wo.NodeType.Document?null:this._nodeDocument}getRootNode(t){return(0,wr.tree_rootNode)(this,!!t&&t.composed)}get parentNode(){return this._nodeType===wo.NodeType.Attribute?null:this._parent}get parentElement(){return this._parent&&Kr.Guard.isElementNode(this._parent)?this._parent:null}hasChildNodes(){return this._firstChild!==null}get childNodes(){return this._childNodes}get firstChild(){return this._firstChild}get lastChild(){return this._lastChild}get previousSibling(){return this._previousSibling}get nextSibling(){return this._nextSibling}get nodeValue(){return Kr.Guard.isAttrNode(this)?this._value:Kr.Guard.isCharacterDataNode(this)?this._data:null}set nodeValue(t){t===null&&(t=""),Kr.Guard.isAttrNode(this)?(0,wr.attr_setAnExistingAttributeValue)(this,t):Kr.Guard.isCharacterDataNode(this)&&(0,wr.characterData_replaceData)(this,0,this._data.length,t)}get textContent(){return Kr.Guard.isDocumentFragmentNode(this)||Kr.Guard.isElementNode(this)?(0,wr.text_descendantTextContent)(this):Kr.Guard.isAttrNode(this)?this._value:Kr.Guard.isCharacterDataNode(this)?this._data:null}set textContent(t){t===null&&(t=""),Kr.Guard.isDocumentFragmentNode(this)||Kr.Guard.isElementNode(this)?(0,wr.node_stringReplaceAll)(t,this):Kr.Guard.isAttrNode(this)?(0,wr.attr_setAnExistingAttributeValue)(this,t):Kr.Guard.isCharacterDataNode(this)&&(0,wr.characterData_replaceData)(this,0,(0,wr.tree_nodeLength)(this),t)}normalize(){let t=[],r=(0,wr.tree_getFirstDescendantNode)(this,!1,!1,n=>Kr.Guard.isExclusiveTextNode(n));for(;r!==null;)t.push(r),r=(0,wr.tree_getNextDescendantNode)(this,r,!1,!1,n=>Kr.Guard.isExclusiveTextNode(n));for(let n=0;n{"use strict";Object.defineProperty(kz,"__esModule",{value:!0});kz.DocumentImpl=void 0;var PAn=ea(),Lz=Qn(),o_=xa(),LAn=my(),UB=vs(),RNe=Jn(),MAn=ha(),kAn=INe(),qs=Ln(),BAn=mc(),Mz=class extends LAn.NodeImpl{_nodeType=Lz.NodeType.Document;_children=new Set;_encoding={name:"UTF-8",labels:["unicode-1-1-utf-8","utf-8","utf8"]};_contentType="application/xml";_URL={scheme:"about",username:"",password:"",host:null,port:null,path:["blank"],query:null,fragment:null,_cannotBeABaseURLFlag:!0,_blobURLEntry:null};_origin=null;_type="xml";_mode="no-quirks";_implementation;_documentElement=null;_hasNamespaces=!1;_nodeDocumentOverwrite=null;get _nodeDocument(){return this._nodeDocumentOverwrite||this}set _nodeDocument(t){this._nodeDocumentOverwrite=t}constructor(){super()}get implementation(){return this._implementation||(this._implementation=(0,qs.create_domImplementation)(this))}get URL(){return(0,kAn.urlSerializer)(this._URL)}get documentURI(){return this.URL}get origin(){return"null"}get compatMode(){return this._mode==="quirks"?"BackCompat":"CSS1Compat"}get characterSet(){return this._encoding.name}get charset(){return this._encoding.name}get inputEncoding(){return this._encoding.name}get contentType(){return this._contentType}get doctype(){for(let t of this._children)if(UB.Guard.isDocumentTypeNode(t))return t;return null}get documentElement(){return this._documentElement}getElementsByTagName(t){return(0,qs.node_listOfElementsWithQualifiedName)(t,this)}getElementsByTagNameNS(t,r){return(0,qs.node_listOfElementsWithNamespace)(t,r,this)}getElementsByClassName(t){return(0,qs.node_listOfElementsWithClassNames)(t,this)}createElement(t,r){if(!(0,qs.xml_isName)(t))throw new o_.InvalidCharacterError;this._type==="html"&&(t=t.toLowerCase());let n=null;r!==void 0&&((0,RNe.isString)(r)?n=r:n=r.is);let s=this._type==="html"||this._contentType==="application/xhtml+xml"?MAn.namespace.HTML:null;return(0,qs.element_createAnElement)(this,t,s,null,n,!0)}createElementNS(t,r,n){return(0,qs.document_internalCreateElementNS)(this,t,r,n)}createDocumentFragment(){return(0,qs.create_documentFragment)(this)}createTextNode(t){return(0,qs.create_text)(this,t)}createCDATASection(t){if(this._type==="html")throw new o_.NotSupportedError;if(t.indexOf("]]>")!==-1)throw new o_.InvalidCharacterError;return(0,qs.create_cdataSection)(this,t)}createComment(t){return(0,qs.create_comment)(this,t)}createProcessingInstruction(t,r){if(!(0,qs.xml_isName)(t))throw new o_.InvalidCharacterError;if(r.indexOf("?>")!==-1)throw new o_.InvalidCharacterError;return(0,qs.create_processingInstruction)(this,t,r)}importNode(t,r=!1){if(UB.Guard.isDocumentNode(t)||UB.Guard.isShadowRoot(t))throw new o_.NotSupportedError;return(0,qs.node_clone)(t,this,r)}adoptNode(t){if(UB.Guard.isDocumentNode(t))throw new o_.NotSupportedError;if(UB.Guard.isShadowRoot(t))throw new o_.HierarchyRequestError;return(0,qs.document_adopt)(t,this),t}createAttribute(t){if(!(0,qs.xml_isName)(t))throw new o_.InvalidCharacterError;return this._type==="html"&&(t=t.toLowerCase()),(0,qs.create_attr)(this,t)}createAttributeNS(t,r){let[n,s,i]=(0,qs.namespace_validateAndExtract)(t,r),a=(0,qs.create_attr)(this,i);return a._namespace=n,a._namespacePrefix=s,a}createEvent(t){return(0,qs.event_createLegacyEvent)(t)}createRange(){let t=(0,qs.create_range)();return t._start=[this,0],t._end=[this,0],t}createNodeIterator(t,r=Lz.WhatToShow.All,n=null){let s=(0,qs.create_nodeIterator)(t,t,!0);return s._whatToShow=r,s._iteratorCollection=(0,qs.create_nodeList)(t),(0,RNe.isFunction)(n)?(s._filter=(0,qs.create_nodeFilter)(),s._filter.acceptNode=n):s._filter=n,s}createTreeWalker(t,r=Lz.WhatToShow.All,n=null){let s=(0,qs.create_treeWalker)(t,t);return s._whatToShow=r,(0,RNe.isFunction)(n)?(s._filter=(0,qs.create_nodeFilter)(),s._filter.acceptNode=n):s._filter=n,s}_getTheParent(t){return t._type==="load"?null:PAn.dom.window}getElementById(t){throw new Error("Mixin: NonElementParentNode not implemented.")}get children(){throw new Error("Mixin: ParentNode not implemented.")}get firstElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get lastElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get childElementCount(){throw new Error("Mixin: ParentNode not implemented.")}prepend(...t){throw new Error("Mixin: ParentNode not implemented.")}append(...t){throw new Error("Mixin: ParentNode not implemented.")}querySelector(t){throw new Error("Mixin: ParentNode not implemented.")}querySelectorAll(t){throw new Error("Mixin: ParentNode not implemented.")}};kz.DocumentImpl=Mz;(0,BAn.idl_defineConst)(Mz.prototype,"_nodeType",Lz.NodeType.Document)});var xNe=S(Uz=>{"use strict";Object.defineProperty(Uz,"__esModule",{value:!0});Uz.XMLDocumentImpl=void 0;var UAn=Bz(),CNe=class extends UAn.DocumentImpl{constructor(){super()}};Uz.XMLDocumentImpl=CNe});var NNe=S(Fz=>{"use strict";Object.defineProperty(Fz,"__esModule",{value:!0});Fz.AbortControllerImpl=void 0;var K$t=Ln(),wNe=class{_signal;constructor(){this._signal=(0,K$t.create_abortSignal)()}get signal(){return this._signal}abort(){(0,K$t.abort_signalAbort)(this._signal)}};Fz.AbortControllerImpl=wNe});var DNe=S($z=>{"use strict";Object.defineProperty($z,"__esModule",{value:!0});$z.AbortSignalImpl=void 0;var FAn=BB(),G$t=Ln(),ONe=class e extends FAn.EventTargetImpl{_abortedFlag=!1;_abortAlgorithms=new Set;constructor(){super()}get aborted(){return this._abortedFlag}get onabort(){return(0,G$t.event_getterEventHandlerIDLAttribute)(this,"onabort")}set onabort(t){(0,G$t.event_setterEventHandlerIDLAttribute)(this,"onabort",t)}static _create(){return new e}};$z.AbortSignalImpl=ONe});var PNe=S(Hz=>{"use strict";Object.defineProperty(Hz,"__esModule",{value:!0});Hz.DocumentTypeImpl=void 0;var z$t=Qn(),$An=my(),qAn=mc(),qz=class e extends $An.NodeImpl{_nodeType=z$t.NodeType.DocumentType;_name="";_publicId="";_systemId="";constructor(t,r,n){super(),this._name=t,this._publicId=r,this._systemId=n}get name(){return this._name}get publicId(){return this._publicId}get systemId(){return this._systemId}before(...t){throw new Error("Mixin: ChildNode not implemented.")}after(...t){throw new Error("Mixin: ChildNode not implemented.")}replaceWith(...t){throw new Error("Mixin: ChildNode not implemented.")}remove(){throw new Error("Mixin: ChildNode not implemented.")}static _create(t,r,n="",s=""){let i=new e(r,n,s);return i._nodeDocument=t,i}};Hz.DocumentTypeImpl=qz;(0,qAn.idl_defineConst)(qz.prototype,"_nodeType",z$t.NodeType.DocumentType)});var Kz=S(jz=>{"use strict";Object.defineProperty(jz,"__esModule",{value:!0});jz.ElementImpl=void 0;var Y$t=Qn(),HAn=my(),c_=xa(),FB=ha(),Nr=Ln(),VAn=mc(),Vz=class e extends HAn.NodeImpl{_nodeType=Y$t.NodeType.Element;_children=new Set;_namespace=null;_namespacePrefix=null;_localName="";_customElementState="undefined";_customElementDefinition=null;_is=null;_shadowRoot=null;_attributeList=(0,Nr.create_namedNodeMap)(this);_uniqueIdentifier;_attributeChangeSteps=[];_name="";_assignedSlot=null;constructor(){super()}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get tagName(){return this._htmlUppercasedQualifiedName}get id(){return(0,Nr.element_getAnAttributeValue)(this,"id")}set id(t){(0,Nr.element_setAnAttributeValue)(this,"id",t)}get className(){return(0,Nr.element_getAnAttributeValue)(this,"class")}set className(t){(0,Nr.element_setAnAttributeValue)(this,"class",t)}get classList(){let t=(0,Nr.element_getAnAttributeByName)("class",this);return t===null&&(t=(0,Nr.create_attr)(this._nodeDocument,"class")),(0,Nr.create_domTokenList)(this,t)}get slot(){return(0,Nr.element_getAnAttributeValue)(this,"slot")}set slot(t){(0,Nr.element_setAnAttributeValue)(this,"slot",t)}hasAttributes(){return this._attributeList.length!==0}get attributes(){return this._attributeList}getAttributeNames(){let t=[];for(let r of this._attributeList)t.push(r._qualifiedName);return t}getAttribute(t){let r=(0,Nr.element_getAnAttributeByName)(t,this);return r?r._value:null}getAttributeNS(t,r){let n=(0,Nr.element_getAnAttributeByNamespaceAndLocalName)(t,r,this);return n?n._value:null}setAttribute(t,r){if(!(0,Nr.xml_isName)(t))throw new c_.InvalidCharacterError;this._namespace===FB.namespace.HTML&&this._nodeDocument._type==="html"&&(t=t.toLowerCase());let n=null;for(let s=0;s{"use strict";Object.defineProperty(zz,"__esModule",{value:!0});zz.DocumentFragmentImpl=void 0;var Q$t=Qn(),jAn=my(),KAn=mc(),Gz=class e extends jAn.NodeImpl{_nodeType=Q$t.NodeType.DocumentFragment;_children=new Set;_host;constructor(t=null){super(),this._host=t}getElementById(t){throw new Error("Mixin: NonElementParentNode not implemented.")}get children(){throw new Error("Mixin: ParentNode not implemented.")}get firstElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get lastElementChild(){throw new Error("Mixin: ParentNode not implemented.")}get childElementCount(){throw new Error("Mixin: ParentNode not implemented.")}prepend(...t){throw new Error("Mixin: ParentNode not implemented.")}append(...t){throw new Error("Mixin: ParentNode not implemented.")}querySelector(t){throw new Error("Mixin: ParentNode not implemented.")}querySelectorAll(t){throw new Error("Mixin: ParentNode not implemented.")}static _create(t,r=null){let n=new e(r);return n._nodeDocument=t,n}};zz.DocumentFragmentImpl=Gz;(0,KAn.idl_defineConst)(Gz.prototype,"_nodeType",Q$t.NodeType.DocumentFragment)});var MNe=S(Qz=>{"use strict";Object.defineProperty(Qz,"__esModule",{value:!0});Qz.ShadowRootImpl=void 0;var GAn=Yz(),zAn=Jn(),YAn=Ln(),LNe=class e extends GAn.DocumentFragmentImpl{_host;_mode;constructor(t,r){super(),this._host=t,this._mode=r}get mode(){return this._mode}get host(){return this._host}_getTheParent(t){return!t._composedFlag&&!(0,zAn.isEmpty)(t._path)&&(0,YAn.tree_rootNode)(t._path[0].invocationTarget)===this?null:this._host}static _create(t,r){return new e(r,"closed")}};Qz.ShadowRootImpl=LNe});var kNe=S(Wz=>{"use strict";Object.defineProperty(Wz,"__esModule",{value:!0});Wz.AttrImpl=void 0;var W$t=Qn(),QAn=my(),WAn=Ln(),X$t=mc(),$B=class e extends QAn.NodeImpl{_nodeType=W$t.NodeType.Attribute;_localName;_namespace=null;_namespacePrefix=null;_element=null;_value="";constructor(t){super(),this._localName=t}specified;get ownerElement(){return this._element}get namespaceURI(){return this._namespace}get prefix(){return this._namespacePrefix}get localName(){return this._localName}get name(){return this._qualifiedName}get value(){return this._value}set value(t){(0,WAn.attr_setAnExistingAttributeValue)(this,t)}get _qualifiedName(){return this._namespacePrefix!==null?this._namespacePrefix+":"+this._localName:this._localName}static _create(t,r){let n=new e(r);return n._nodeDocument=t,n}};Wz.AttrImpl=$B;(0,X$t.idl_defineConst)($B.prototype,"_nodeType",W$t.NodeType.Attribute);(0,X$t.idl_defineConst)($B.prototype,"specified",!0)});var qB=S(Xz=>{"use strict";Object.defineProperty(Xz,"__esModule",{value:!0});Xz.CharacterDataImpl=void 0;var XAn=my(),hw=Ln(),BNe=class extends XAn.NodeImpl{_data;constructor(t){super(),this._data=t}get data(){return this._data}set data(t){(0,hw.characterData_replaceData)(this,0,this._data.length,t)}get length(){return this._data.length}substringData(t,r){return(0,hw.characterData_substringData)(this,t,r)}appendData(t){return(0,hw.characterData_replaceData)(this,this._data.length,0,t)}insertData(t,r){(0,hw.characterData_replaceData)(this,t,0,r)}deleteData(t,r){(0,hw.characterData_replaceData)(this,t,r,"")}replaceData(t,r,n){(0,hw.characterData_replaceData)(this,t,r,n)}get previousElementSibling(){throw new Error("Mixin: NonDocumentTypeChildNode not implemented.")}get nextElementSibling(){throw new Error("Mixin: NonDocumentTypeChildNode not implemented.")}before(...t){throw new Error("Mixin: ChildNode not implemented.")}after(...t){throw new Error("Mixin: ChildNode not implemented.")}replaceWith(...t){throw new Error("Mixin: ChildNode not implemented.")}remove(){throw new Error("Mixin: ChildNode not implemented.")}};Xz.CharacterDataImpl=BNe});var eY=S(Zz=>{"use strict";Object.defineProperty(Zz,"__esModule",{value:!0});Zz.TextImpl=void 0;var Z$t=Qn(),JAn=qB(),J$t=Ln(),ZAn=mc(),Jz=class e extends JAn.CharacterDataImpl{_nodeType=Z$t.NodeType.Text;_name="";_assignedSlot=null;constructor(t=""){super(t)}get wholeText(){let t="";for(let r of(0,J$t.text_contiguousTextNodes)(this,!0))t=t+r._data;return t}splitText(t){return(0,J$t.text_split)(this,t)}get assignedSlot(){throw new Error("Mixin: Slotable not implemented.")}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};Zz.TextImpl=Jz;(0,ZAn.idl_defineConst)(Jz.prototype,"_nodeType",Z$t.NodeType.Text)});var UNe=S(rY=>{"use strict";Object.defineProperty(rY,"__esModule",{value:!0});rY.CDATASectionImpl=void 0;var eEn=eY(),e9t=Qn(),tEn=mc(),tY=class e extends eEn.TextImpl{_nodeType=e9t.NodeType.CData;constructor(t){super(t)}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};rY.CDATASectionImpl=tY;(0,tEn.idl_defineConst)(tY.prototype,"_nodeType",e9t.NodeType.CData)});var FNe=S(sY=>{"use strict";Object.defineProperty(sY,"__esModule",{value:!0});sY.CommentImpl=void 0;var t9t=Qn(),rEn=qB(),nEn=mc(),nY=class e extends rEn.CharacterDataImpl{_nodeType=t9t.NodeType.Comment;constructor(t=""){super(t)}static _create(t,r=""){let n=new e(r);return n._nodeDocument=t,n}};sY.CommentImpl=nY;(0,nEn.idl_defineConst)(nY.prototype,"_nodeType",t9t.NodeType.Comment)});var $Ne=S(aY=>{"use strict";Object.defineProperty(aY,"__esModule",{value:!0});aY.ProcessingInstructionImpl=void 0;var r9t=Qn(),sEn=qB(),iEn=mc(),iY=class e extends sEn.CharacterDataImpl{_nodeType=r9t.NodeType.ProcessingInstruction;_target;constructor(t,r){super(r),this._target=t}get target(){return this._target}static _create(t,r,n){let s=new e(r,n);return s._nodeDocument=t,s}};aY.ProcessingInstructionImpl=iY;(0,iEn.idl_defineConst)(iY.prototype,"_nodeType",r9t.NodeType.ProcessingInstruction)});var HNe=S(oY=>{"use strict";Object.defineProperty(oY,"__esModule",{value:!0});oY.HTMLCollectionImpl=void 0;var aEn=ha(),u_=Ln(),gy=vs(),n9t=Jn(),qNe=class e{_live=!0;_root;_filter;static reservedNames=["_root","_live","_filter","length","item","namedItem","get","set"];constructor(t,r){return this._root=t,this._filter=r,new Proxy(this,this)}get length(){let t=0,r=(0,u_.tree_getFirstDescendantNode)(this._root,!1,!1,n=>gy.Guard.isElementNode(n)&&this._filter(n));for(;r!==null;)t++,r=(0,u_.tree_getNextDescendantNode)(this._root,r,!1,!1,n=>gy.Guard.isElementNode(n)&&this._filter(n));return t}item(t){let r=0,n=(0,u_.tree_getFirstDescendantNode)(this._root,!1,!1,s=>gy.Guard.isElementNode(s)&&this._filter(s));for(;n!==null;){if(r===t)return n;r++,n=(0,u_.tree_getNextDescendantNode)(this._root,n,!1,!1,s=>gy.Guard.isElementNode(s)&&this._filter(s))}return null}namedItem(t){if(t==="")return null;let r=(0,u_.tree_getFirstDescendantNode)(this._root,!1,!1,n=>gy.Guard.isElementNode(n)&&this._filter(n));for(;r!=null;){if(r._uniqueIdentifier===t)return r;if(r._namespace===aEn.namespace.HTML)for(let n=0;ngy.Guard.isElementNode(n)&&this._filter(n))}return null}[Symbol.iterator](){let t=this._root,r=this._filter,n=(0,u_.tree_getFirstDescendantNode)(t,!1,!1,s=>gy.Guard.isElementNode(s)&&r(s));return{next(){if(n===null)return{done:!0,value:null};{let s={done:!1,value:n};return n=(0,u_.tree_getNextDescendantNode)(t,n,!1,!1,i=>gy.Guard.isElementNode(i)&&r(i)),s}}}}get(t,r,n){if(!(0,n9t.isString)(r)||e.reservedNames.indexOf(r)!==-1)return Reflect.get(t,r,n);let s=Number(r);return isNaN(s)?t.namedItem(r)||void 0:t.item(s)||void 0}set(t,r,n,s){if(!(0,n9t.isString)(r)||e.reservedNames.indexOf(r)!==-1)return Reflect.set(t,r,n,s);let i=Number(r),a=isNaN(i)?t.namedItem(r)||void 0:t.item(i)||void 0;return a&&a._parent?((0,u_.mutation_replace)(a,n,a._parent),!0):!1}static _create(t,r=()=>!0){return new e(t,r)}};oY.HTMLCollectionImpl=qNe});var jNe=S(cY=>{"use strict";Object.defineProperty(cY,"__esModule",{value:!0});cY.NodeListImpl=void 0;var oEn=ea(),s9t=Jn(),cEn=Ln(),VNe=class e{_live=!0;_root;_filter=null;_length=0;constructor(t){return this._root=t,new Proxy(this,this)}get length(){return this._root._children.size}item(t){if(t<0||t>this.length-1)return null;if(t{"use strict";Object.defineProperty(uY,"__esModule",{value:!0});uY.NodeListStaticImpl=void 0;var uEn=ea(),i9t=Jn(),KNe=class e{_live=!1;_root;_filter;_items=[];_length=0;constructor(t){return this._root=t,this._items=[],this._filter=function(r){return!0},new Proxy(this,this)}get length(){return this._items.length}item(t){return t<0||t>this.length-1?null:this._items[t]}keys(){return{[Symbol.iterator]:function(){let t=0;return{next:function(){return t===this.length?{done:!0,value:null}:{done:!1,value:t++}}.bind(this)}}.bind(this)}}values(){return{[Symbol.iterator]:function(){let t=this[Symbol.iterator]();return{next(){return t.next()}}}.bind(this)}}entries(){return{[Symbol.iterator]:function(){let t=this[Symbol.iterator](),r=0;return{next(){let n=t.next();return n.done?{done:!0,value:null}:{done:!1,value:[r++,n.value]}}}}.bind(this)}}[Symbol.iterator](){let t=this._items[Symbol.iterator]();return{next(){return t.next()}}}forEach(t,r){r===void 0&&(r=uEn.dom.window);let n=0;for(let s of this._items)t.call(r,s,n++,this)}get(t,r,n){if(!(0,i9t.isString)(r))return Reflect.get(t,r,n);let s=Number(r);return isNaN(s)?Reflect.get(t,r,n):t._items[s]||void 0}set(t,r,n,s){if(!(0,i9t.isString)(r))return Reflect.set(t,r,n,s);let i=Number(r);return isNaN(i)?Reflect.set(t,r,n,s):i>=0&&i{"use strict";Object.defineProperty(lY,"__esModule",{value:!0});lY.NamedNodeMapImpl=void 0;var a9t=xa(),pw=Ln(),zNe=class e extends Array{_element;constructor(t){super(),this._element=t,Object.setPrototypeOf(this,e.prototype)}_asArray(){return this}item(t){return this[t]||null}getNamedItem(t){return(0,pw.element_getAnAttributeByName)(t,this._element)}getNamedItemNS(t,r){return(0,pw.element_getAnAttributeByNamespaceAndLocalName)(t||"",r,this._element)}setNamedItem(t){return(0,pw.element_setAnAttribute)(t,this._element)}setNamedItemNS(t){return(0,pw.element_setAnAttribute)(t,this._element)}removeNamedItem(t){let r=(0,pw.element_removeAnAttributeByName)(t,this._element);if(r===null)throw new a9t.NotFoundError;return r}removeNamedItemNS(t,r){let n=(0,pw.element_removeAnAttributeByNamespaceAndLocalName)(t||"",r,this._element);if(n===null)throw new a9t.NotFoundError;return n}static _create(t){return new e(t)}};lY.NamedNodeMapImpl=zNe});var fY=S(dY=>{"use strict";Object.defineProperty(dY,"__esModule",{value:!0});dY.AbstractRangeImpl=void 0;var QNe=class{get _startNode(){return this._start[0]}get _startOffset(){return this._start[1]}get _endNode(){return this._end[0]}get _endOffset(){return this._end[1]}get _collapsed(){return this._start[0]===this._end[0]&&this._start[1]===this._end[1]}get startContainer(){return this._startNode}get startOffset(){return this._startOffset}get endContainer(){return this._endNode}get endOffset(){return this._endOffset}get collapsed(){return this._collapsed}};dY.AbstractRangeImpl=QNe});var XNe=S(pY=>{"use strict";Object.defineProperty(pY,"__esModule",{value:!0});pY.RangeImpl=void 0;var WNe=ea(),gc=Qn(),lEn=fY(),cu=xa(),Ft=Ln(),hY=mc(),ol=vs(),yb=class e extends lEn.AbstractRangeImpl{static START_TO_START=0;static START_TO_END=1;static END_TO_END=2;static END_TO_START=3;START_TO_START=0;START_TO_END=1;END_TO_END=2;END_TO_START=3;_start;_end;constructor(){super();let t=WNe.dom.window._associatedDocument;this._start=[t,0],this._end=[t,0],WNe.dom.rangeList.add(this)}get commonAncestorContainer(){let t=this._start[0];for(;!(0,Ft.tree_isAncestorOf)(this._end[0],t,!0);){if(t._parent===null)throw new Error("Parent node is null.");t=t._parent}return t}setStart(t,r){(0,Ft.range_setTheStart)(this,t,r)}setEnd(t,r){(0,Ft.range_setTheEnd)(this,t,r)}setStartBefore(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,Ft.range_setTheStart)(this,r,(0,Ft.tree_index)(t))}setStartAfter(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,Ft.range_setTheStart)(this,r,(0,Ft.tree_index)(t)+1)}setEndBefore(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,Ft.range_setTheEnd)(this,r,(0,Ft.tree_index)(t))}setEndAfter(t){let r=t._parent;if(r===null)throw new cu.InvalidNodeTypeError;(0,Ft.range_setTheEnd)(this,r,(0,Ft.tree_index)(t)+1)}collapse(t){t?this._end=this._start:this._start=this._end}selectNode(t){(0,Ft.range_select)(t,this)}selectNodeContents(t){if(ol.Guard.isDocumentTypeNode(t))throw new cu.InvalidNodeTypeError;let r=(0,Ft.tree_nodeLength)(t);this._start=[t,0],this._end=[t,r]}compareBoundaryPoints(t,r){if(t!==gc.HowToCompare.StartToStart&&t!==gc.HowToCompare.StartToEnd&&t!==gc.HowToCompare.EndToEnd&&t!==gc.HowToCompare.EndToStart)throw new cu.NotSupportedError;if((0,Ft.range_root)(this)!==(0,Ft.range_root)(r))throw new cu.WrongDocumentError;let n,s;switch(t){case gc.HowToCompare.StartToStart:n=this._start,s=r._start;break;case gc.HowToCompare.StartToEnd:n=this._end,s=r._start;break;case gc.HowToCompare.EndToEnd:n=this._end,s=r._end;break;case gc.HowToCompare.EndToStart:n=this._start,s=r._end;break;default:throw new cu.NotSupportedError}let i=(0,Ft.boundaryPoint_position)(n,s);return i===gc.BoundaryPosition.Before?-1:i===gc.BoundaryPosition.After?1:0}deleteContents(){if((0,Ft.range_collapsed)(this))return;let t=this._startNode,r=this._startOffset,n=this._endNode,s=this._endOffset;if(t===n&&ol.Guard.isCharacterDataNode(t)){(0,Ft.characterData_replaceData)(t,r,s-r,"");return}let i=[];for(let c of(0,Ft.range_getContainedNodes)(this)){let u=c._parent;u!==null&&(0,Ft.range_isContained)(u,this)||i.push(c)}let a,o;if((0,Ft.tree_isAncestorOf)(n,t,!0))a=t,o=r;else{let c=t;for(;c._parent!==null&&!(0,Ft.tree_isAncestorOf)(n,c._parent,!0);)c=c._parent;if(c._parent===null)throw new Error("Parent node is null.");a=c._parent,o=(0,Ft.tree_index)(c)+1}ol.Guard.isCharacterDataNode(t)&&(0,Ft.characterData_replaceData)(t,r,(0,Ft.tree_nodeLength)(t)-r,"");for(let c of i)c._parent&&(0,Ft.mutation_remove)(c,c._parent);ol.Guard.isCharacterDataNode(n)&&(0,Ft.characterData_replaceData)(n,0,s,""),this._start=[a,o],this._end=[a,o]}extractContents(){return(0,Ft.range_extract)(this)}cloneContents(){return(0,Ft.range_cloneTheContents)(this)}insertNode(t){return(0,Ft.range_insert)(t,this)}surroundContents(t){for(let n of(0,Ft.range_getPartiallyContainedNodes)(this))if(!ol.Guard.isTextNode(n))throw new cu.InvalidStateError;if(ol.Guard.isDocumentNode(t)||ol.Guard.isDocumentTypeNode(t)||ol.Guard.isDocumentFragmentNode(t))throw new cu.InvalidNodeTypeError;let r=(0,Ft.range_extract)(this);t._children.size!==0&&(0,Ft.mutation_replaceAll)(null,t),(0,Ft.range_insert)(t,this),(0,Ft.mutation_append)(r,t),(0,Ft.range_select)(t,this)}cloneRange(){return(0,Ft.create_range)(this._start,this._end)}detach(){WNe.dom.rangeList.delete(this)}isPointInRange(t,r){if((0,Ft.tree_rootNode)(t)!==(0,Ft.range_root)(this))return!1;if(ol.Guard.isDocumentTypeNode(t))throw new cu.InvalidNodeTypeError;if(r>(0,Ft.tree_nodeLength)(t))throw new cu.IndexSizeError;let n=[t,r];return!((0,Ft.boundaryPoint_position)(n,this._start)===gc.BoundaryPosition.Before||(0,Ft.boundaryPoint_position)(n,this._end)===gc.BoundaryPosition.After)}comparePoint(t,r){if((0,Ft.tree_rootNode)(t)!==(0,Ft.range_root)(this))throw new cu.WrongDocumentError;if(ol.Guard.isDocumentTypeNode(t))throw new cu.InvalidNodeTypeError;if(r>(0,Ft.tree_nodeLength)(t))throw new cu.IndexSizeError;let n=[t,r];return(0,Ft.boundaryPoint_position)(n,this._start)===gc.BoundaryPosition.Before?-1:(0,Ft.boundaryPoint_position)(n,this._end)===gc.BoundaryPosition.After?1:0}intersectsNode(t){if((0,Ft.tree_rootNode)(t)!==(0,Ft.range_root)(this))return!1;let r=t._parent;if(r===null)return!0;let n=(0,Ft.tree_index)(t);return(0,Ft.boundaryPoint_position)([r,n],this._end)===gc.BoundaryPosition.Before&&(0,Ft.boundaryPoint_position)([r,n+1],this._start)===gc.BoundaryPosition.After}toString(){let t="";if(this._startNode===this._endNode&&ol.Guard.isTextNode(this._startNode))return this._startNode._data.substring(this._startOffset,this._endOffset);ol.Guard.isTextNode(this._startNode)&&(t+=this._startNode._data.substring(this._startOffset));for(let r of(0,Ft.range_getContainedNodes)(this))ol.Guard.isTextNode(r)&&(t+=r._data);return ol.Guard.isTextNode(this._endNode)&&(t+=this._endNode._data.substring(0,this._endOffset)),t}static _create(t,r){let n=new e;return t&&(n._start=t),r&&(n._end=r),n}};pY.RangeImpl=yb;(0,hY.idl_defineConst)(yb.prototype,"START_TO_START",0);(0,hY.idl_defineConst)(yb.prototype,"START_TO_END",1);(0,hY.idl_defineConst)(yb.prototype,"END_TO_END",2);(0,hY.idl_defineConst)(yb.prototype,"END_TO_START",3)});var gY=S(mY=>{"use strict";Object.defineProperty(mY,"__esModule",{value:!0});mY.TraverserImpl=void 0;var dEn=Qn(),JNe=class{_activeFlag;_root;_whatToShow;_filter;constructor(t){this._activeFlag=!1,this._root=t,this._whatToShow=dEn.WhatToShow.All,this._filter=null}get root(){return this._root}get whatToShow(){return this._whatToShow}get filter(){return this._filter}};mY.TraverserImpl=JNe});var eOe=S(AY=>{"use strict";Object.defineProperty(AY,"__esModule",{value:!0});AY.NodeIteratorImpl=void 0;var fEn=gY(),_Y=Ln(),ZNe=class e extends fEn.TraverserImpl{_iteratorCollection;_reference;_pointerBeforeReference;constructor(t,r,n){super(t),this._iteratorCollection=void 0,this._reference=r,this._pointerBeforeReference=n,(0,_Y.nodeIterator_iteratorList)().add(this)}get referenceNode(){return this._reference}get pointerBeforeReferenceNode(){return this._pointerBeforeReference}nextNode(){return(0,_Y.nodeIterator_traverse)(this,!0)}previousNode(){return(0,_Y.nodeIterator_traverse)(this,!1)}detach(){(0,_Y.nodeIterator_iteratorList)().delete(this)}static _create(t,r,n){return new e(t,r,n)}};AY.NodeIteratorImpl=ZNe});var rOe=S(EY=>{"use strict";Object.defineProperty(EY,"__esModule",{value:!0});EY.TreeWalkerImpl=void 0;var _y=Qn(),hEn=gY(),yp=Ln(),tOe=class e extends hEn.TraverserImpl{_current;constructor(t,r){super(t),this._current=r}get currentNode(){return this._current}set currentNode(t){this._current=t}parentNode(){let t=this._current;for(;t!==null&&t!==this._root;)if(t=t._parent,t!==null&&(0,yp.traversal_filter)(this,t)===_y.FilterResult.Accept)return this._current=t,t;return null}firstChild(){return(0,yp.treeWalker_traverseChildren)(this,!0)}lastChild(){return(0,yp.treeWalker_traverseChildren)(this,!1)}nextSibling(){return(0,yp.treeWalker_traverseSiblings)(this,!0)}previousNode(){let t=this._current;for(;t!==this._root;){let r=t._previousSibling;for(;r;){t=r;let n=(0,yp.traversal_filter)(this,t);for(;n!==_y.FilterResult.Reject&&t._lastChild;)t=t._lastChild,n=(0,yp.traversal_filter)(this,t);if(n===_y.FilterResult.Accept)return this._current=t,t;r=t._previousSibling}if(t===this._root||t._parent===null)return null;if(t=t._parent,(0,yp.traversal_filter)(this,t)===_y.FilterResult.Accept)return this._current=t,t}return null}previousSibling(){return(0,yp.treeWalker_traverseSiblings)(this,!1)}nextNode(){let t=this._current,r=_y.FilterResult.Accept;for(;;){for(;r!==_y.FilterResult.Reject&&t._firstChild;)if(t=t._firstChild,r=(0,yp.traversal_filter)(this,t),r===_y.FilterResult.Accept)return this._current=t,t;let n=null,s=t;for(;s!==null;){if(s===this._root)return null;if(n=s._nextSibling,n!==null){t=n;break}s=s._parent}if(r=(0,yp.traversal_filter)(this,t),r===_y.FilterResult.Accept)return this._current=t,t}}static _create(t,r){return new e(t,r)}};EY.TreeWalkerImpl=tOe});var nOe=S(yY=>{"use strict";Object.defineProperty(yY,"__esModule",{value:!0});yY.NodeFilterImpl=void 0;var pEn=Qn(),_c=mc(),Na=class e{static FILTER_ACCEPT=1;static FILTER_REJECT=2;static FILTER_SKIP=3;static SHOW_ALL=4294967295;static SHOW_ELEMENT=1;static SHOW_ATTRIBUTE=2;static SHOW_TEXT=4;static SHOW_CDATA_SECTION=8;static SHOW_ENTITY_REFERENCE=16;static SHOW_ENTITY=32;static SHOW_PROCESSING_INSTRUCTION=64;static SHOW_COMMENT=128;static SHOW_DOCUMENT=256;static SHOW_DOCUMENT_TYPE=512;static SHOW_DOCUMENT_FRAGMENT=1024;static SHOW_NOTATION=2048;FILTER_ACCEPT=1;FILTER_REJECT=2;FILTER_SKIP=3;SHOW_ALL=4294967295;SHOW_ELEMENT=1;SHOW_ATTRIBUTE=2;SHOW_TEXT=4;SHOW_CDATA_SECTION=8;SHOW_ENTITY_REFERENCE=16;SHOW_ENTITY=32;SHOW_PROCESSING_INSTRUCTION=64;SHOW_COMMENT=128;SHOW_DOCUMENT=256;SHOW_DOCUMENT_TYPE=512;SHOW_DOCUMENT_FRAGMENT=1024;SHOW_NOTATION=2048;constructor(){}acceptNode(t){return pEn.FilterResult.Accept}static _create(){return new e}};yY.NodeFilterImpl=Na;(0,_c.idl_defineConst)(Na.prototype,"FILTER_ACCEPT",1);(0,_c.idl_defineConst)(Na.prototype,"FILTER_REJECT",2);(0,_c.idl_defineConst)(Na.prototype,"FILTER_SKIP",3);(0,_c.idl_defineConst)(Na.prototype,"SHOW_ALL",4294967295);(0,_c.idl_defineConst)(Na.prototype,"SHOW_ELEMENT",1);(0,_c.idl_defineConst)(Na.prototype,"SHOW_ATTRIBUTE",2);(0,_c.idl_defineConst)(Na.prototype,"SHOW_TEXT",4);(0,_c.idl_defineConst)(Na.prototype,"SHOW_CDATA_SECTION",8);(0,_c.idl_defineConst)(Na.prototype,"SHOW_ENTITY_REFERENCE",16);(0,_c.idl_defineConst)(Na.prototype,"SHOW_ENTITY",32);(0,_c.idl_defineConst)(Na.prototype,"SHOW_PROCESSING_INSTRUCTION",64);(0,_c.idl_defineConst)(Na.prototype,"SHOW_COMMENT",128);(0,_c.idl_defineConst)(Na.prototype,"SHOW_DOCUMENT",256);(0,_c.idl_defineConst)(Na.prototype,"SHOW_DOCUMENT_TYPE",512);(0,_c.idl_defineConst)(Na.prototype,"SHOW_DOCUMENT_FRAGMENT",1024);(0,_c.idl_defineConst)(Na.prototype,"SHOW_NOTATION",2048)});var iOe=S(vY=>{"use strict";Object.defineProperty(vY,"__esModule",{value:!0});vY.MutationRecordImpl=void 0;var sOe=class e{_type;_target;_addedNodes;_removedNodes;_previousSibling;_nextSibling;_attributeName;_attributeNamespace;_oldValue;constructor(t,r,n,s,i,a,o,c,u){this._type=t,this._target=r,this._addedNodes=n,this._removedNodes=s,this._previousSibling=i,this._nextSibling=a,this._attributeName=o,this._attributeNamespace=c,this._oldValue=u}get type(){return this._type}get target(){return this._target}get addedNodes(){return this._addedNodes}get removedNodes(){return this._removedNodes}get previousSibling(){return this._previousSibling}get nextSibling(){return this._nextSibling}get attributeName(){return this._attributeName}get attributeNamespace(){return this._attributeNamespace}get oldValue(){return this._oldValue}static _create(t,r,n,s,i,a,o,c,u){return new e(t,r,n,s,i,a,o,c,u)}};vY.MutationRecordImpl=sOe});var oOe=S(SY=>{"use strict";Object.defineProperty(SY,"__esModule",{value:!0});SY.DOMTokenListImpl=void 0;var mEn=ea(),Ay=xa(),mw=ha(),O0=Ln(),aOe=class e{_element;_attribute;_tokenSet;constructor(t,r){this._element=t,this._attribute=r,this._tokenSet=new Set;let n=r._localName,s=(0,O0.element_getAnAttributeValue)(t,n),i=this;function a(o,c,u,l,d){c===i._attribute._localName&&d===null&&(l?i._tokenSet=(0,O0.orderedSet_parse)(l):i._tokenSet.clear())}this._element._attributeChangeSteps.push(a),mEn.dom.features.steps&&(0,O0.dom_runAttributeChangeSteps)(t,n,s,s,null)}get length(){return this._tokenSet.size}item(t){let r=0;for(let n of this._tokenSet){if(r===t)return n;r++}return null}contains(t){return this._tokenSet.has(t)}add(...t){for(let r of t){if(r==="")throw new Ay.SyntaxError("Cannot add an empty token.");if(mw.codePoint.ASCIIWhiteSpace.test(r))throw new Ay.InvalidCharacterError("Token cannot contain whitespace.");this._tokenSet.add(r)}(0,O0.tokenList_updateSteps)(this)}remove(...t){for(let r of t){if(r==="")throw new Ay.SyntaxError("Cannot remove an empty token.");if(mw.codePoint.ASCIIWhiteSpace.test(r))throw new Ay.InvalidCharacterError("Token cannot contain whitespace.");this._tokenSet.delete(r)}(0,O0.tokenList_updateSteps)(this)}toggle(t,r=void 0){if(t==="")throw new Ay.SyntaxError("Cannot toggle an empty token.");if(mw.codePoint.ASCIIWhiteSpace.test(t))throw new Ay.InvalidCharacterError("Token cannot contain whitespace.");return this._tokenSet.has(t)?r===void 0||r===!1?(this._tokenSet.delete(t),(0,O0.tokenList_updateSteps)(this),!1):!0:r===void 0||r===!0?(this._tokenSet.add(t),(0,O0.tokenList_updateSteps)(this),!0):!1}replace(t,r){if(t===""||r==="")throw new Ay.SyntaxError("Cannot replace an empty token.");if(mw.codePoint.ASCIIWhiteSpace.test(t)||mw.codePoint.ASCIIWhiteSpace.test(r))throw new Ay.InvalidCharacterError("Token cannot contain whitespace.");return this._tokenSet.has(t)?(mw.set.replace(this._tokenSet,t,r),(0,O0.tokenList_updateSteps)(this),!0):!1}supports(t){return(0,O0.tokenList_validationSteps)(this,t)}get value(){return(0,O0.tokenList_serializeSteps)(this)}set value(t){(0,O0.element_setAnAttributeValue)(this._element,this._attribute._localName,t)}[Symbol.iterator](){let t=this._tokenSet[Symbol.iterator]();return{next(){return t.next()}}}static _create(t,r){return new e(t,r)}};SY.DOMTokenListImpl=aOe});var l_=S(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.create_domImplementation=$En;ss.create_window=qEn;ss.create_xmlDocument=HEn;ss.create_document=VEn;ss.create_abortController=jEn;ss.create_abortSignal=KEn;ss.create_documentType=GEn;ss.create_element=zEn;ss.create_htmlElement=YEn;ss.create_htmlUnknownElement=QEn;ss.create_documentFragment=WEn;ss.create_shadowRoot=XEn;ss.create_attr=JEn;ss.create_text=ZEn;ss.create_cdataSection=eyn;ss.create_comment=tyn;ss.create_processingInstruction=ryn;ss.create_htmlCollection=nyn;ss.create_nodeList=syn;ss.create_nodeListStatic=iyn;ss.create_namedNodeMap=ayn;ss.create_range=oyn;ss.create_nodeIterator=cyn;ss.create_treeWalker=uyn;ss.create_nodeFilter=lyn;ss.create_mutationRecord=dyn;ss.create_domTokenList=fyn;var gEn=Lwe(),_En=hNe(),AEn=xNe(),EEn=Bz(),yEn=NNe(),vEn=DNe(),SEn=PNe(),cOe=Kz(),TEn=Yz(),bEn=MNe(),IEn=kNe(),REn=eY(),CEn=UNe(),xEn=FNe(),wEn=$Ne(),NEn=HNe(),OEn=jNe(),DEn=GNe(),PEn=YNe(),LEn=XNe(),MEn=eOe(),kEn=rOe(),BEn=nOe(),UEn=iOe(),FEn=oOe();function $En(e){return gEn.DOMImplementationImpl._create(e)}function qEn(){return _En.WindowImpl._create()}function HEn(){return new AEn.XMLDocumentImpl}function VEn(){return new EEn.DocumentImpl}function jEn(){return new yEn.AbortControllerImpl}function KEn(){return vEn.AbortSignalImpl._create()}function GEn(e,t,r,n){return SEn.DocumentTypeImpl._create(e,t,r,n)}function zEn(e,t,r,n){return cOe.ElementImpl._create(e,t,r,n)}function YEn(e,t,r,n){return cOe.ElementImpl._create(e,t,r,n)}function QEn(e,t,r,n){return cOe.ElementImpl._create(e,t,r,n)}function WEn(e){return TEn.DocumentFragmentImpl._create(e)}function XEn(e,t){return bEn.ShadowRootImpl._create(e,t)}function JEn(e,t){return IEn.AttrImpl._create(e,t)}function ZEn(e,t){return REn.TextImpl._create(e,t)}function eyn(e,t){return CEn.CDATASectionImpl._create(e,t)}function tyn(e,t){return xEn.CommentImpl._create(e,t)}function ryn(e,t,r){return wEn.ProcessingInstructionImpl._create(e,t,r)}function nyn(e,t=()=>!0){return NEn.HTMLCollectionImpl._create(e,t)}function syn(e){return OEn.NodeListImpl._create(e)}function iyn(e,t){return DEn.NodeListStaticImpl._create(e,t)}function ayn(e){return PEn.NamedNodeMapImpl._create(e)}function oyn(e,t){return LEn.RangeImpl._create(e,t)}function cyn(e,t,r){return MEn.NodeIteratorImpl._create(e,t,r)}function uyn(e,t){return kEn.TreeWalkerImpl._create(e,t)}function lyn(){return BEn.NodeFilterImpl._create()}function dyn(e,t,r,n,s,i,a,o,c){return UEn.MutationRecordImpl._create(e,t,r,n,s,i,a,o,c)}function fyn(e,t){return FEn.DOMTokenListImpl._create(e,t)}});var ea=S(TY=>{"use strict";Object.defineProperty(TY,"__esModule",{value:!0});TY.dom=void 0;var uOe=Jn(),hyn=l_(),lOe=class e{static _instance;_features={mutationObservers:!0,customElements:!0,slots:!0,steps:!0};_window=null;_compareCache;_rangeList;constructor(){this._compareCache=new uOe.CompareCache,this._rangeList=new uOe.FixedSizeSet}setFeatures(t){if(t===void 0&&(t=!0),(0,uOe.isObject)(t))for(let r in t)this._features[r]=t[r]||!1;else for(let r in this._features)this._features[r]=t}get features(){return this._features}get window(){return this._window===null&&(this._window=(0,hyn.create_window)()),this._window}get compareCache(){return this._compareCache}get rangeList(){return this._rangeList}static get instance(){return e._instance||(e._instance=new e),e._instance}};TY.dom=lOe.instance});var RY=S(IY=>{"use strict";Object.defineProperty(IY,"__esModule",{value:!0});IY.EventImpl=void 0;var pyn=Qn(),dOe=Ln(),bY=mc(),vb=class{static NONE=0;static CAPTURING_PHASE=1;static AT_TARGET=2;static BUBBLING_PHASE=3;NONE=0;CAPTURING_PHASE=1;AT_TARGET=2;BUBBLING_PHASE=3;_target=null;_relatedTarget=null;_touchTargetList=[];_path=[];_currentTarget=null;_eventPhase=pyn.EventPhase.None;_stopPropagationFlag=!1;_stopImmediatePropagationFlag=!1;_canceledFlag=!1;_inPassiveListenerFlag=!1;_composedFlag=!1;_initializedFlag=!1;_dispatchFlag=!1;_isTrusted=!1;_type;_bubbles=!1;_cancelable=!1;_timeStamp;constructor(t,r){this._type=t,r&&(this._bubbles=r.bubbles||!1,this._cancelable=r.cancelable||!1,this._composedFlag=r.composed||!1),this._initializedFlag=!0,this._timeStamp=new Date().getTime()}get type(){return this._type}get target(){return this._target}get srcElement(){return this._target}get currentTarget(){return this._currentTarget}composedPath(){let t=[],r=this._path;if(r.length===0)return t;let n=this._currentTarget;if(n===null)throw new Error("Event currentTarget is null.");t.push(n);let s=0,i=0,a=r.length-1;for(;a>=0;){if(r[a].rootOfClosedTree&&i++,r[a].invocationTarget===n){s=a;break}r[a].slotInClosedTree&&i--,a--}let o=i,c=i;for(a=s-1;a>=0;)r[a].rootOfClosedTree&&o++,o<=c&&t.unshift(r[a].invocationTarget),r[a].slotInClosedTree&&(o--,o{"use strict";Object.defineProperty(CY,"__esModule",{value:!0});CY.CustomEventImpl=void 0;var myn=RY(),gyn=Ln(),fOe=class extends myn.EventImpl{_detail=null;constructor(t,r){super(t,r),this._detail=r&&r.detail||null}get detail(){return this._detail}initCustomEvent(t,r=!1,n=!1,s=null){this._dispatchFlag||((0,gyn.event_initialize)(this,t,r,n),this._detail=s)}};CY.CustomEventImpl=fOe});var Wl=S(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.tree_getFirstDescendantNode=pOe;Hn.tree_getNextDescendantNode=mOe;Hn.tree_getDescendantNodes=o9t;Hn.tree_getDescendantElements=_yn;Hn.tree_getSiblingNodes=Ayn;Hn.tree_getFirstAncestorNode=xY;Hn.tree_getNextAncestorNode=wY;Hn.tree_getAncestorNodes=Eyn;Hn.tree_getCommonAncestor=yyn;Hn.tree_getFollowingNode=vyn;Hn.tree_getPrecedingNode=Syn;Hn.tree_isConstrained=c9t;Hn.tree_nodeLength=u9t;Hn.tree_isEmpty=Tyn;Hn.tree_rootNode=D0;Hn.tree_isDescendantOf=byn;Hn.tree_isAncestorOf=gOe;Hn.tree_isHostIncludingAncestorOf=l9t;Hn.tree_isSiblingOf=Iyn;Hn.tree_isPreceding=Ryn;Hn.tree_isFollowing=Cyn;Hn.tree_isParentOf=xyn;Hn.tree_isChildOf=wyn;Hn.tree_previousSibling=Nyn;Hn.tree_nextSibling=Oyn;Hn.tree_firstChild=Dyn;Hn.tree_lastChild=Pyn;Hn.tree_treePosition=HB;Hn.tree_index=Lyn;Hn.tree_retarget=Myn;var ff=vs(),No=Qn();function Sb(e,t,r=!1){if(r&&ff.Guard.isElementNode(t)&&ff.Guard.isShadowRoot(t.shadowRoot)&&t.shadowRoot._firstChild)return t.shadowRoot._firstChild;if(t._firstChild)return t._firstChild;if(t===e)return null;if(t._nextSibling)return t._nextSibling;let n=t._parent;for(;n&&n!==e;){if(n._nextSibling)return n._nextSibling;n=n._parent}return null}function NY(){return{[Symbol.iterator]:()=>({next:()=>({done:!0,value:null})})}}function pOe(e,t=!1,r=!1,n){let s=t?e:Sb(e,e,r);for(;s&&n&&!n(s);)s=Sb(e,s,r);return s}function mOe(e,t,r=!1,n=!1,s){let i=Sb(e,t,n);for(;i&&s&&!s(i);)i=Sb(e,i,n);return i}function o9t(e,t=!1,r=!1,n){return!t&&e._children.size===0?NY():{[Symbol.iterator]:()=>{let s=t?e:Sb(e,e,r);return{next:()=>{for(;s&&n&&!n(s);)s=Sb(e,s,r);if(s===null)return{done:!0,value:null};{let i={done:!1,value:s};return s=Sb(e,s,r),i}}}}}}function _yn(e,t=!1,r=!1,n){return!t&&e._children.size===0?NY():{[Symbol.iterator]:()=>{let s=o9t(e,t,r,a=>ff.Guard.isElementNode(a))[Symbol.iterator](),i=s.next().value;return{next(){for(;i&&n&&!n(i);)i=s.next().value;if(i===null)return{done:!0,value:null};{let a={done:!1,value:i};return i=s.next().value,a}}}}}}function Ayn(e,t=!1,r){return!e._parent||e._parent._children.size===0?NY():{[Symbol.iterator](){let n=e._parent?e._parent._firstChild:null;return{next(){for(;n&&(r&&!r(n)||!t&&n===e);)n=n._nextSibling;if(n===null)return{done:!0,value:null};{let s={done:!1,value:n};return n=n._nextSibling,s}}}}}}function xY(e,t=!1,r){let n=t?e:e._parent;for(;n&&r&&!r(n);)n=n._parent;return n}function wY(e,t,r=!1,n){let s=t._parent;for(;s&&n&&!n(s);)s=s._parent;return s}function Eyn(e,t=!1,r){return!t&&!e._parent?NY():{[Symbol.iterator](){let n=xY(e,t,r);return{next(){if(n===null)return{done:!0,value:null};{let s={done:!1,value:n};return n=wY(e,n,t,r),s}}}}}}function yyn(e,t){if(e===t)return e._parent;let r=[],n=[],s=xY(e,!0);for(;s!==null;)r.push(s),s=wY(e,s,!0);let i=xY(t,!0);for(;i!==null;)n.push(i),i=wY(t,i,!0);let a=r.length,o=n.length,c=null;for(let u=Math.min(a,o);u>0;u--){let l=r[--a],d=n[--o];if(l!==d)break;c=l}return c}function vyn(e,t){if(t._firstChild)return t._firstChild;if(t._nextSibling)return t._nextSibling;for(;;){let r=t._parent;if(r===null||r===e)return null;if(r._nextSibling)return r._nextSibling;t=r}}function Syn(e,t){return t===e?null:t._previousSibling?(t=t._previousSibling,t._lastChild?t._lastChild:t):t._parent}function c9t(e){switch(e._nodeType){case No.NodeType.Document:let t=!1,r=!1;for(let n of e._children)switch(n._nodeType){case No.NodeType.ProcessingInstruction:case No.NodeType.Comment:break;case No.NodeType.DocumentType:if(t||r)return!1;t=!0;break;case No.NodeType.Element:if(r)return!1;r=!0;break;default:return!1}break;case No.NodeType.DocumentFragment:case No.NodeType.Element:for(let n of e._children)switch(n._nodeType){case No.NodeType.Element:case No.NodeType.Text:case No.NodeType.ProcessingInstruction:case No.NodeType.CData:case No.NodeType.Comment:break;default:return!1}break;case No.NodeType.DocumentType:case No.NodeType.Text:case No.NodeType.ProcessingInstruction:case No.NodeType.CData:case No.NodeType.Comment:return!e.hasChildNodes()}for(let t of e._children)if(!c9t(t))return!1;return!0}function u9t(e){return ff.Guard.isDocumentTypeNode(e)?0:ff.Guard.isCharacterDataNode(e)?e._data.length:e._children.size}function Tyn(e){return u9t(e)===0}function D0(e,t=!1){if(t){let r=D0(e,!1);return ff.Guard.isShadowRoot(r)?D0(r._host,!0):r}else return e._parent?D0(e._parent):e}function byn(e,t,r=!1,n=!1){let s=pOe(e,r,n);for(;s!==null;){if(s===t)return!0;s=mOe(e,s,r,n)}return!1}function gOe(e,t,r=!1,n=!1){let s=r?e:n&&ff.Guard.isShadowRoot(e)?e._host:e._parent;for(;s!==null;){if(s===t)return!0;s=n&&ff.Guard.isShadowRoot(s)?s._host:s._parent}return!1}function l9t(e,t,r=!1){if(gOe(e,t,r))return!0;let n=D0(e);return!!(ff.Guard.isDocumentFragmentNode(n)&&n._host!==null&&l9t(n._host,t,r))}function Iyn(e,t,r=!1){if(e===t){if(r)return!0}else return e._parent!==null&&e._parent===t._parent;return!1}function Ryn(e,t){let r=HB(e),n=HB(t);return r===-1||n===-1||D0(e)!==D0(t)?!1:nr}function xyn(e,t){return e._parent===t}function wyn(e,t){return t._parent===e}function Nyn(e){return e._previousSibling}function Oyn(e){return e._nextSibling}function Dyn(e){return e._firstChild}function Pyn(e){return e._lastChild}function HB(e){let t=D0(e),r=0,n=pOe(t);for(;n!==null;){if(r++,n===e)return r;n=mOe(t,n)}return-1}function Lyn(e){let t=0;for(;e._previousSibling!==null;)t++,e=e._previousSibling;return t}function Myn(e,t){for(;;){if(!e||!ff.Guard.isNode(e))return e;let r=D0(e);if(!ff.Guard.isShadowRoot(r)||t&&ff.Guard.isNode(t)&&gOe(r,t,!0,!0))return e;e=r.host}}});var gw=S(bb=>{"use strict";Object.defineProperty(bb,"__esModule",{value:!0});bb.observer_queueAMutationObserverMicrotask=f9t;bb.observer_notifyMutationObservers=h9t;bb.observer_queueMutationRecord=EOe;bb.observer_queueTreeMutationRecord=Uyn;bb.observer_queueAttributeMutationRecord=Fyn;var AOe=ea(),kyn=vs(),Tb=ha(),_Oe=l_(),d9t=Wl(),Byn=OY();function f9t(){let e=AOe.dom.window;e._mutationObserverMicrotaskQueued||(e._mutationObserverMicrotaskQueued=!0,Promise.resolve().then(()=>{h9t()}))}function h9t(){let e=AOe.dom.window;e._mutationObserverMicrotaskQueued=!1;let t=Tb.set.clone(e._mutationObservers),r=Tb.set.clone(e._signalSlots);Tb.set.empty(e._signalSlots);for(let n of t){let s=Tb.list.clone(n._recordQueue);Tb.list.empty(n._recordQueue);for(let i=0;ikyn.Guard.isTransientRegisteredObserver(o)&&o.observer===n)}if(!Tb.list.isEmpty(s))try{n._callback.call(n,s,n)}catch{}}if(AOe.dom.features.slots)for(let n of r)(0,Byn.event_fireAnEvent)("slotchange",n,void 0,{bubbles:!0})}function EOe(e,t,r,n,s,i,a,o,c){let u=new Map,l=(0,d9t.tree_getFirstAncestorNode)(t,!0);for(;l!==null;){for(let d=0;d{"use strict";Object.defineProperty(P0,"__esModule",{value:!0});P0.shadowTree_signalASlotChange=p9t;P0.shadowTree_isConnected=Vyn;P0.shadowTree_isAssigned=jyn;P0.shadowTree_findASlot=yOe;P0.shadowTree_findSlotables=vOe;P0.shadowTree_findFlattenedSlotables=m9t;P0.shadowTree_assignSlotables=SOe;P0.shadowTree_assignSlotablesForATree=Kyn;P0.shadowTree_assignASlot=Gyn;var $yn=ea(),hf=vs(),qyn=Jn(),Ey=Wl(),Hyn=gw();function p9t(e){$yn.dom.window._signalSlots.add(e),(0,Hyn.observer_queueAMutationObserverMicrotask)()}function Vyn(e){return hf.Guard.isDocumentNode((0,Ey.tree_rootNode)(e,!0))}function jyn(e){return e._assignedSlot!==null}function yOe(e,t=!1){let n=hf.Cast.asNode(e)._parent;if(n===null)return null;let s=n._shadowRoot||null;if(s===null||t&&s._mode!=="open")return null;let i=(0,Ey.tree_getFirstDescendantNode)(s,!1,!0,a=>hf.Guard.isSlot(a));for(;i!==null;){if(i._name===e._name)return i;i=(0,Ey.tree_getNextDescendantNode)(s,i,!1,!0,a=>hf.Guard.isSlot(a))}return null}function vOe(e){let t=[],r=(0,Ey.tree_rootNode)(e);if(!hf.Guard.isShadowRoot(r))return t;let n=r._host;for(let s of n._children)hf.Guard.isSlotable(s)&&yOe(s)===e&&t.push(s);return t}function m9t(e){let t=[],r=(0,Ey.tree_rootNode)(e);if(!hf.Guard.isShadowRoot(r))return t;let n=vOe(e);if((0,qyn.isEmpty)(n))for(let s of e._children)hf.Guard.isSlotable(s)&&n.push(s);for(let s of n)if(hf.Guard.isSlot(s)&&hf.Guard.isShadowRoot((0,Ey.tree_rootNode)(s))){let i=m9t(s);t.push(...i)}else t.push(s);return t}function SOe(e){let t=vOe(e);if(t.length===e._assignedNodes.length){let r=!0;for(let n=0;nhf.Guard.isSlot(r));for(;t!==null;)SOe(t),t=(0,Ey.tree_getNextDescendantNode)(e,t,!0,!1,r=>hf.Guard.isSlot(r))}function Gyn(e){let t=yOe(e);t!==null&&SOe(t)}});var d_=S(pf=>{"use strict";Object.defineProperty(pf,"__esModule",{value:!0});pf.dom_runRemovingSteps=Yyn;pf.dom_runCloningSteps=Qyn;pf.dom_runAdoptingSteps=Wyn;pf.dom_runAttributeChangeSteps=Xyn;pf.dom_runInsertionSteps=Jyn;pf.dom_runNodeIteratorPreRemovingSteps=Zyn;pf.dom_hasSupportedTokens=evn;pf.dom_getSupportedTokens=tvn;pf.dom_runEventConstructingSteps=rvn;pf.dom_runChildTextContentChangeSteps=nvn;var zyn=ea(),Ib=Wl(),g9t=vs(),DY=VB(),_9t=new Map;function Yyn(e,t){}function Qyn(e,t,r,n){}function Wyn(e,t){}function Xyn(e,t,r,n,s){zyn.dom.features.slots&&(avn.call(e,e,t,r,n,s),ivn.call(e,e,t,r,n,s)),ovn.call(e,e,t,n,s);for(let i of e._attributeChangeSteps)i.call(e,e,t,r,n,s)}function Jyn(e){}function Zyn(e,t){svn.call(e,e,t)}function evn(e){return _9t.has(e)}function tvn(e){return _9t.get(e)||new Set}function rvn(e){}function nvn(e){}function svn(e,t){if(!(t===e._root||!(0,Ib.tree_isAncestorOf)(e._reference,t,!0))){if(e._pointerBeforeReference)for(;;){let r=(0,Ib.tree_getFollowingNode)(e._root,t);if(r!==null&&(0,Ib.tree_isDescendantOf)(e._root,r,!0)&&!(0,Ib.tree_isDescendantOf)(t,r,!0)){e._reference=r;return}else if(r===null){e._pointerBeforeReference=!1;return}}if(t._previousSibling===null)t._parent!==null&&(e._reference=t._parent);else{let r=t._previousSibling,n=(0,Ib.tree_getFirstDescendantNode)(t._previousSibling,!0,!1);for(;n!==null;)n!==null&&(r=n),n=(0,Ib.tree_getNextDescendantNode)(t._previousSibling,n,!0,!1);e._reference=r}}}function ivn(e,t,r,n,s){if(g9t.Guard.isSlot(e)&&t==="name"&&s===null){if(n===r||n===null&&r===""||n===""&&r===null)return;n===null||n===""?e._name="":e._name=n,(0,DY.shadowTree_assignSlotablesForATree)((0,Ib.tree_rootNode)(e))}}function avn(e,t,r,n,s){if(g9t.Guard.isSlotable(e)&&t==="slot"&&s===null){if(n===r||n===null&&r===""||n===""&&r===null)return;n===null||n===""?e._name="":e._name=n,(0,DY.shadowTree_isAssigned)(e)&&(0,DY.shadowTree_assignSlotables)(e._assignedSlot),(0,DY.shadowTree_assignASlot)(e)}}function ovn(e,t,r,n){t==="id"&&n===null&&(r?e._uniqueIdentifier=r:e._uniqueIdentifier=void 0)}});var OY=S(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.event_setTheCanceledFlag=fvn;so.event_initialize=hvn;so.event_createAnEvent=y9t;so.event_innerEventCreationSteps=v9t;so.event_dispatch=S9t;so.event_appendToAnEventPath=PY;so.event_invoke=TOe;so.event_innerInvoke=bOe;so.event_fireAnEvent=pvn;so.event_createLegacyEvent=mvn;so.event_getterEventHandlerIDLAttribute=gvn;so.event_setterEventHandlerIDLAttribute=_vn;so.event_determineTheTargetOfAnEventHandler=IOe;so.event_getTheCurrentValueOfAnEventHandler=T9t;so.event_activateAnEventHandler=Avn;so.event_deactivateAnEventHandler=Evn;var cvn=ea(),jB=Qn(),ta=vs(),uvn=hOe(),E9t=RY(),lvn=xa(),L0=Wl(),A9t=VB(),dvn=d_();function fvn(e){e._cancelable&&!e._inPassiveListenerFlag&&(e._canceledFlag=!0)}function hvn(e,t,r,n){e._initializedFlag=!0,e._stopPropagationFlag=!1,e._stopImmediatePropagationFlag=!1,e._canceledFlag=!1,e._isTrusted=!1,e._target=null,e._type=t,e._bubbles=r,e._cancelable=n}function y9t(e,t=void 0){t===void 0&&(t=null);let n=v9t(e,t,new Date,{});return n._isTrusted=!0,n}function v9t(e,t,r,n){let s=new e("");return s._initializedFlag=!0,s._timeStamp=r.getTime(),Object.assign(s,n),cvn.dom.features.steps&&(0,dvn.dom_runEventConstructingSteps)(s),s}function S9t(e,t,r=!1,n={value:!1}){let s=!1;e._dispatchFlag=!0;let i=t;if(r){let c=t._associatedDocument;ta.Guard.isDocumentNode(c)&&(i=c)}let a=null,o=(0,L0.tree_retarget)(e._relatedTarget,t);if(t!==o||t===e._relatedTarget){let c=[];for(let m of e._touchTargetList)c.push((0,L0.tree_retarget)(m,t));PY(e,t,i,o,c,!1);let u=ta.Guard.isMouseEvent(e)&&e._type==="click";u&&t._activationBehavior!==void 0&&(a=t);let l=ta.Guard.isSlotable(t)&&(0,A9t.shadowTree_isAssigned)(t)?t:null,d=!1,f=t._getTheParent(e);for(;f!==null&&ta.Guard.isNode(f);){if(l!==null){if(!ta.Guard.isSlot(f))throw new Error("Parent node of a slotable should be a slot.");l=null;let m=(0,L0.tree_rootNode)(f,!0);ta.Guard.isShadowRoot(m)&&m._mode==="closed"&&(d=!0)}ta.Guard.isSlotable(f)&&(0,A9t.shadowTree_isAssigned)(f)&&(l=f),o=(0,L0.tree_retarget)(e._relatedTarget,f),c=[];for(let m of e._touchTargetList)c.push((0,L0.tree_retarget)(m,f));ta.Guard.isWindow(f)||ta.Guard.isNode(f)&&ta.Guard.isNode(t)&&(0,L0.tree_isAncestorOf)((0,L0.tree_rootNode)(t,!0),f,!0,!0)?(u&&e._bubbles&&a===null&&f._activationBehavior&&(a=f),PY(e,f,null,o,c,d)):f===o?f=null:(t=f,u&&a===null&&t._activationBehavior&&(a=t),PY(e,f,t,o,c,d)),f!==null&&(f=f._getTheParent(e)),d=!1}let h=null,p=e._path;for(let m=p.length-1;m>=0;m--){let g=p[m];if(g.shadowAdjustedTarget!==null){h=g;break}}if(h!==null)if(ta.Guard.isNode(h.shadowAdjustedTarget)&&ta.Guard.isShadowRoot((0,L0.tree_rootNode)(h.shadowAdjustedTarget,!0)))s=!0;else if(ta.Guard.isNode(h.relatedTarget)&&ta.Guard.isShadowRoot((0,L0.tree_rootNode)(h.relatedTarget,!0)))s=!0;else for(let m=0;m=0;m--){let g=p[m];g.shadowAdjustedTarget!==null?e._eventPhase=jB.EventPhase.AtTarget:e._eventPhase=jB.EventPhase.Capturing,TOe(g,e,"capturing",n)}for(let m=0;m0&&(l=s[i-1],l.shadowAdjustedTarget!==null&&(t._target=l.shadowAdjustedTarget))}if(t._relatedTarget=e.relatedTarget,t._touchTargetList=e.touchTargetList,t._stopPropagationFlag)return;t._currentTarget=e.invocationTarget;let o=t._currentTarget._eventListenerList,c=new Array(...o);if(!bOe(t,c,r,e,n)&&t._isTrusted){let l=t._type;l==="animationend"?t._type="webkitAnimationEnd":l==="animationiteration"?t._type="webkitAnimationIteration":l==="animationstart"?t._type="webkitAnimationStart":l==="transitionend"&&(t._type="webkitTransitionEnd"),bOe(t,c,r,e,n),t._type=l}}function bOe(e,t,r,n,s={value:!1}){let i=!1;for(let a=0;a{"use strict";Object.defineProperty(KB,"__esModule",{value:!0});KB.abort_add=vvn;KB.abort_remove=Svn;KB.abort_signalAbort=Tvn;var yvn=OY();function vvn(e,t){t._abortedFlag||t._abortAlgorithms.add(e)}function Svn(e,t){t._abortAlgorithms.delete(e)}function Tvn(e){if(!e._abortedFlag){e._abortedFlag=!0;for(let t of e._abortAlgorithms)t.call(e);e._abortAlgorithms.clear(),(0,yvn.event_fireAnEvent)("abort",e)}}});var GB=S(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0});M0.customElement_isValidCustomElementName=wvn;M0.customElement_isValidElementName=Nvn;M0.customElement_isVoidElementName=Ovn;M0.customElement_isValidShadowHostName=Dvn;M0.customElement_enqueueACustomElementUpgradeReaction=Pvn;M0.customElement_enqueueACustomElementCallbackReaction=Lvn;M0.customElement_upgrade=Mvn;M0.customElement_tryToUpgrade=kvn;M0.customElement_lookUpACustomElementDefinition=Bvn;var bvn=/[a-z]([\0-\t\x2D\._a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*-([\0-\t\x2D\._a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*/,Ivn=new Set(["annotation-xml","color-profile","font-face","font-face-src","font-face-uri","font-face-format","font-face-name","missing-glyph"]),Rvn=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]),Cvn=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]),xvn=new Set(["article","aside","blockquote","body","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"]);function wvn(e){return!(!bvn.test(e)||Ivn.has(e))}function Nvn(e){return Rvn.has(e)}function Ovn(e){return Cvn.has(e)}function Dvn(e){return xvn.has(e)}function Pvn(e,t){}function Lvn(e,t,r){}function Mvn(e,t){}function kvn(e){}function Bvn(e,t,r,n){return null}});var LY=S(COe=>{"use strict";Object.defineProperty(COe,"__esModule",{value:!0});COe.traversal_filter=Fvn;var ROe=Qn(),Uvn=xa();function Fvn(e,t){if(e._activeFlag)throw new Uvn.InvalidStateError;let n=1<{"use strict";Object.defineProperty(MY,"__esModule",{value:!0});MY.nodeIterator_traverse=Vvn;MY.nodeIterator_iteratorList=jvn;var $vn=ea(),qvn=Qn(),Hvn=LY(),I9t=Wl();function Vvn(e,t){let r=e._reference,n=e._pointerBeforeReference;for(;;){if(t)if(n)n=!1;else{let i=(0,I9t.tree_getFollowingNode)(e._root,r);if(i)r=i;else return null}else if(n){let i=(0,I9t.tree_getPrecedingNode)(e.root,r);if(i)r=i;else return null}else n=!0;if((0,Hvn.traversal_filter)(e,r)===qvn.FilterResult.Accept)break}return e._reference=r,e._pointerBeforeReference=n,r}function jvn(){return $vn.dom.window._iteratorList}});var wOe=S(_w=>{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});_w.xml_isName=Kvn;_w.xml_isQName=Gvn;_w.xml_isLegalChar=zvn;_w.xml_isPubidChar=Yvn;function Kvn(e){for(let t=0;t=97&&r<=122||r>=65&&r<=90||r===58||r===95||r>=192&&r<=214||r>=216&&r<=246||r>=248&&r<=767||r>=880&&r<=893||r>=895&&r<=8191||r>=8204&&r<=8205||r>=8304&&r<=8591||r>=11264&&r<=12271||r>=12289&&r<=55295||r>=63744&&r<=64975||r>=65008&&r<=65533)&&!(t!==0&&(r===45||r===46||r>=48&&r<=57||r===183||r>=768&&r<=879||r>=8255&&r<=8256))){if(r>=55296&&r<=56319&&t=56320&&n<=57343&&(r=(r-55296)*1024+n-56320+65536,t++,r>=65536&&r<=983039))continue}return!1}}return!0}function Gvn(e){let t=!1;for(let r=0;r=97&&n<=122||n>=65&&n<=90||n===95||n>=192&&n<=214||n>=216&&n<=246||n>=248&&n<=767||n>=880&&n<=893||n>=895&&n<=8191||n>=8204&&n<=8205||n>=8304&&n<=8591||n>=11264&&n<=12271||n>=12289&&n<=55295||n>=63744&&n<=64975||n>=65008&&n<=65533)){{if(r!==0&&(n===45||n===46||n>=48&&n<=57||n===183||n>=768&&n<=879||n>=8255&&n<=8256))continue;if(r!==0&&n===58){if(t||r===e.length-1)return!1;t=!0;continue}}if(n>=55296&&n<=56319&&r=56320&&s<=57343&&(n=(n-55296)*1024+s-56320+65536,r++,n>=65536&&n<=983039))continue}return!1}}return!0}function zvn(e){for(let t=0;t=32&&r<=55295||r>=57344&&r<=65533)){if(r>=55296&&r<=56319&&t=56320&&n<=57343&&(r=(r-55296)*1024+n-56320+65536,t++,r>=65536&&r<=1114111))continue}return!1}}return!0}function Yvn(e){for(let t=0;t=97&&r<=122||r>=65&&r<=90||r>=39&&r<=59||r===32||r===13||r===10||r>=35&&r<=37||r===33||r===61||r===63||r===64||r===95))return!1}return!0}});var DOe=S(zB=>{"use strict";Object.defineProperty(zB,"__esModule",{value:!0});zB.namespace_validate=OOe;zB.namespace_validateAndExtract=Qvn;zB.namespace_extractQName=Wvn;var Aw=xa(),NOe=ha(),R9t=wOe();function OOe(e){if(!(0,R9t.xml_isName)(e))throw new Aw.InvalidCharacterError(`Invalid XML name: ${e}`);if(!(0,R9t.xml_isQName)(e))throw new Aw.InvalidCharacterError(`Invalid XML qualified name: ${e}.`)}function Qvn(e,t){e||(e=null),OOe(t);let r=t.split(":"),n=r.length===2?r[0]:null,s=r.length===2?r[1]:t;if(n&&e===null)throw new Aw.NamespaceError("Qualified name includes a prefix but the namespace is null.");if(n==="xml"&&e!==NOe.namespace.XML)throw new Aw.NamespaceError('Qualified name includes the "xml" prefix but the namespace is not the XML namespace.');if(e!==NOe.namespace.XMLNS&&(n==="xmlns"||t==="xmlns"))throw new Aw.NamespaceError('Qualified name includes the "xmlns" prefix but the namespace is not the XMLNS namespace.');if(e===NOe.namespace.XMLNS&&n!=="xmlns"&&t!=="xmlns")throw new Aw.NamespaceError('Qualified name does not include the "xmlns" prefix but the namespace is the XMLNS namespace.');return[e,n,s]}function Wvn(e){OOe(e);let t=e.split(":"),r=t.length===2?t[0]:null,n=t.length===2?t[1]:e;return[r,n]}});var kY=S(YB=>{"use strict";Object.defineProperty(YB,"__esModule",{value:!0});YB.document_elementInterface=sSn;YB.document_internalCreateElementNS=iSn;YB.document_adopt=aSn;var C9t=ea(),x9t=vs(),Xvn=Jn(),Jvn=Kz(),Zvn=GB(),w9t=Wl(),eSn=DOe(),tSn=d_(),rSn=Ew(),nSn=Rb();function sSn(e,t){return Jvn.ElementImpl}function iSn(e,t,r,n){let[s,i,a]=(0,eSn.namespace_validateAndExtract)(t,r),o=null;return n!==void 0&&((0,Xvn.isString)(n)?o=n:o=n.is),(0,rSn.element_createAnElement)(e,a,s,i,o,!0)}function aSn(e,t){if(e._nodeDocument===t&&e._parent===null)return;let r=e._nodeDocument;if(e._parent&&(0,nSn.mutation_remove)(e,e._parent),t!==r){let n=(0,w9t.tree_getFirstDescendantNode)(e,!0,!0);for(;n!==null;){if(n._nodeDocument=t,x9t.Guard.isElementNode(n))for(let s of n._attributeList._asArray())s._nodeDocument=t;C9t.dom.features.customElements&&x9t.Guard.isElementNode(n)&&n._customElementState==="custom"&&(0,Zvn.customElement_enqueueACustomElementCallbackReaction)(n,"adoptedCallback",[r,t]),C9t.dom.features.steps&&(0,tSn.dom_runAdoptingSteps)(n,r),n=(0,w9t.tree_getNextDescendantNode)(e,n,!0,!0)}}}});var Rb=S(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});vp.mutation_ensurePreInsertionValidity=O9t;vp.mutation_preInsert=D9t;vp.mutation_insert=BY;vp.mutation_append=uSn;vp.mutation_replace=lSn;vp.mutation_replaceAll=dSn;vp.mutation_preRemove=fSn;vp.mutation_remove=QB;var Mn=ea(),Vn=xa(),yt=Qn(),ri=vs(),POe=Jn(),N9t=ha(),yw=GB(),pa=Wl(),oSn=xOe(),Xl=VB(),vw=gw(),yy=d_(),LOe=kY();function O9t(e,t,r){let n=t._nodeType,s=e._nodeType,i=r?r._nodeType:null;if(n!==yt.NodeType.Document&&n!==yt.NodeType.DocumentFragment&&n!==yt.NodeType.Element)throw new Vn.HierarchyRequestError(`Only document, document fragment and element nodes can contain child nodes. Parent node is ${t.nodeName}.`);if((0,pa.tree_isHostIncludingAncestorOf)(t,e,!0))throw new Vn.HierarchyRequestError(`The node to be inserted cannot be an inclusive ancestor of parent node. Node is ${e.nodeName}, parent node is ${t.nodeName}.`);if(r!==null&&r._parent!==t)throw new Vn.NotFoundError(`The reference child node cannot be found under parent node. Child node is ${r.nodeName}, parent node is ${t.nodeName}.`);if(s!==yt.NodeType.DocumentFragment&&s!==yt.NodeType.DocumentType&&s!==yt.NodeType.Element&&s!==yt.NodeType.Text&&s!==yt.NodeType.ProcessingInstruction&&s!==yt.NodeType.CData&&s!==yt.NodeType.Comment)throw new Vn.HierarchyRequestError(`Only document fragment, document type, element, text, processing instruction, cdata section or comment nodes can be inserted. Node is ${e.nodeName}.`);if(s===yt.NodeType.Text&&n===yt.NodeType.Document)throw new Vn.HierarchyRequestError(`Cannot insert a text node as a child of a document node. Node is ${e.nodeName}.`);if(s===yt.NodeType.DocumentType&&n!==yt.NodeType.Document)throw new Vn.HierarchyRequestError(`A document type node can only be inserted under a document node. Parent node is ${t.nodeName}.`);if(n===yt.NodeType.Document){if(s===yt.NodeType.DocumentFragment){let a=0;for(let o of e._children)if(o._nodeType===yt.NodeType.Element)a++;else if(o._nodeType===yt.NodeType.Text)throw new Vn.HierarchyRequestError(`Cannot insert text a node as a child of a document node. Node is ${o.nodeName}.`);if(a>1)throw new Vn.HierarchyRequestError(`A document node can only have one document element node. Document fragment to be inserted has ${a} element nodes.`);if(a===1){for(let o of t._children)if(o._nodeType===yt.NodeType.Element)throw new Vn.HierarchyRequestError("The document node already has a document element node.");if(r){if(i===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError("Cannot insert an element node before a document type node.");let o=r._nextSibling;for(;o;){if(o._nodeType===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError("Cannot insert an element node before a document type node.");o=o._nextSibling}}}}else if(s===yt.NodeType.Element){for(let a of t._children)if(a._nodeType===yt.NodeType.Element)throw new Vn.HierarchyRequestError(`Document already has a document element node. Node is ${e.nodeName}.`);if(r){if(i===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${e.nodeName}.`);let a=r._nextSibling;for(;a;){if(a._nodeType===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${e.nodeName}.`);a=a._nextSibling}}}else if(s===yt.NodeType.DocumentType){for(let a of t._children)if(a._nodeType===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError(`Document already has a document type node. Node is ${e.nodeName}.`);if(r){let a=r._previousSibling;for(;a;){if(a._nodeType===yt.NodeType.Element)throw new Vn.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${e.nodeName}.`);a=a._previousSibling}}else{let a=t._firstChild;for(;a;){if(a._nodeType===yt.NodeType.Element)throw new Vn.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${e.nodeName}.`);a=a._nextSibling}}}}}function D9t(e,t,r){O9t(e,t,r);let n=r;return n===e&&(n=e._nextSibling),(0,LOe.document_adopt)(e,t._nodeDocument),BY(e,t,n),e}function BY(e,t,r,n){if(r===null&&e._nodeType!==yt.NodeType.DocumentFragment){cSn(e,t,n);return}let s=e._nodeType===yt.NodeType.DocumentFragment?e._children.size:1;if(r!==null&&Mn.dom.rangeList.size!==0){let c=(0,pa.tree_index)(r);for(let u of Mn.dom.rangeList)u._start[0]===t&&u._start[1]>c&&(u._start[1]+=s),u._end[0]===t&&u._end[1]>c&&(u._end[1]+=s)}let i=e._nodeType===yt.NodeType.DocumentFragment?new Array(...e._children):[e];if(e._nodeType===yt.NodeType.DocumentFragment)for(;e._firstChild;)QB(e._firstChild,e,!0);Mn.dom.features.mutationObservers&&e._nodeType===yt.NodeType.DocumentFragment&&(0,vw.observer_queueTreeMutationRecord)(e,[],i,null,null);let a=r?r._previousSibling:t._lastChild,o=r===null?-1:(0,pa.tree_index)(r);for(let c=0;c1)throw new Vn.HierarchyRequestError(`A document node can only have one document element node. Document fragment to be inserted has ${o} element nodes.`);if(o===1){for(let u of r._children)if(u._nodeType===yt.NodeType.Element&&u!==e)throw new Vn.HierarchyRequestError("The document node already has a document element node.");let c=e._nextSibling;for(;c;){if(c._nodeType===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError("Cannot insert an element node before a document type node.");c=c._nextSibling}}}else if(t._nodeType===yt.NodeType.Element){for(let c of r._children)if(c._nodeType===yt.NodeType.Element&&c!==e)throw new Vn.HierarchyRequestError(`Document already has a document element node. Node is ${t.nodeName}.`);let o=e._nextSibling;for(;o;){if(o._nodeType===yt.NodeType.DocumentType)throw new Vn.HierarchyRequestError(`Cannot insert an element node before a document type node. Node is ${t.nodeName}.`);o=o._nextSibling}}else if(t._nodeType===yt.NodeType.DocumentType){for(let c of r._children)if(c._nodeType===yt.NodeType.DocumentType&&c!==e)throw new Vn.HierarchyRequestError(`Document already has a document type node. Node is ${t.nodeName}.`);let o=e._previousSibling;for(;o;){if(o._nodeType===yt.NodeType.Element)throw new Vn.HierarchyRequestError(`Cannot insert a document type node before an element node. Node is ${t.nodeName}.`);o=o._previousSibling}}}let n=e._nextSibling;n===t&&(n=t._nextSibling);let s=e._previousSibling;(0,LOe.document_adopt)(t,r._nodeDocument);let i=[];e._parent!==null&&(i.push(e),QB(e,e._parent,!0));let a=[];return t._nodeType===yt.NodeType.DocumentFragment?a=Array.from(t._children):a.push(t),BY(t,r,n,!0),Mn.dom.features.mutationObservers&&(0,vw.observer_queueTreeMutationRecord)(r,a,i,s,n),e}function dSn(e,t){e!==null&&(0,LOe.document_adopt)(e,t._nodeDocument);let r=Array.from(t._children),n=[];e&&e._nodeType===yt.NodeType.DocumentFragment?n=Array.from(e._children):e!==null&&n.push(e);for(let s of r)QB(s,t,!0);e!==null&&BY(e,t,null,!0),Mn.dom.features.mutationObservers&&(0,vw.observer_queueTreeMutationRecord)(t,n,r,null,null)}function fSn(e,t){if(e._parent!==t)throw new Vn.NotFoundError(`The child node cannot be found under parent node. Child node is ${e.nodeName}, parent node is ${t.nodeName}.`);return QB(e,t),e}function QB(e,t,r){if(Mn.dom.rangeList.size!==0){let c=(0,pa.tree_index)(e);for(let u of Mn.dom.rangeList)(0,pa.tree_isDescendantOf)(e,u._start[0],!0)&&(u._start=[t,c]),(0,pa.tree_isDescendantOf)(e,u._end[0],!0)&&(u._end=[t,c]),u._start[0]===t&&u._start[1]>c&&u._start[1]--,u._end[0]===t&&u._end[1]>c&&u._end[1]--;for(let u of Mn.dom.rangeList)u._start[0]===t&&u._start[1]>c&&(u._start[1]-=1),u._end[0]===t&&u._end[1]>c&&(u._end[1]-=1)}if(Mn.dom.features.steps)for(let c of(0,oSn.nodeIterator_iteratorList)())c._root._nodeDocument===e._nodeDocument&&(0,yy.dom_runNodeIteratorPreRemovingSteps)(c,e);let n=e._previousSibling,s=e._nextSibling;ri.Guard.isDocumentNode(t)&&ri.Guard.isElementNode(e)&&(t._documentElement=null),e._parent=null,t._children.delete(e);let i=e._previousSibling,a=e._nextSibling;e._previousSibling=null,e._nextSibling=null,i&&(i._nextSibling=a),a&&(a._previousSibling=i),i||(t._firstChild=a),a||(t._lastChild=i),Mn.dom.features.slots&&ri.Guard.isSlotable(e)&&e._assignedSlot!==null&&(0,Xl.shadowTree_isAssigned)(e)&&(0,Xl.shadowTree_assignSlotables)(e._assignedSlot),Mn.dom.features.slots&&ri.Guard.isShadowRoot((0,pa.tree_rootNode)(t))&&ri.Guard.isSlot(t)&&(0,POe.isEmpty)(t._assignedNodes)&&(0,Xl.shadowTree_signalASlotChange)(t),Mn.dom.features.slots&&(0,pa.tree_getFirstDescendantNode)(e,!0,!1,u=>ri.Guard.isSlot(u))!==null&&((0,Xl.shadowTree_assignSlotablesForATree)((0,pa.tree_rootNode)(t)),(0,Xl.shadowTree_assignSlotablesForATree)(e)),Mn.dom.features.steps&&(0,yy.dom_runRemovingSteps)(e,t),Mn.dom.features.customElements&&ri.Guard.isCustomElementNode(e)&&(0,yw.customElement_enqueueACustomElementCallbackReaction)(e,"disconnectedCallback",[]);let o=(0,pa.tree_getFirstDescendantNode)(e,!1,!0);for(;o!==null;)Mn.dom.features.steps&&(0,yy.dom_runRemovingSteps)(o,e),Mn.dom.features.customElements&&ri.Guard.isCustomElementNode(o)&&(0,yw.customElement_enqueueACustomElementCallbackReaction)(o,"disconnectedCallback",[]),o=(0,pa.tree_getNextDescendantNode)(e,o,!1,!0);if(Mn.dom.features.mutationObservers){let c=(0,pa.tree_getFirstAncestorNode)(t,!0);for(;c!==null;){for(let u of c._registeredObserverList)u.options.subtree&&e._registeredObserverList.push({observer:u.observer,options:u.options,source:u});c=(0,pa.tree_getNextAncestorNode)(t,c,!0)}}Mn.dom.features.mutationObservers&&(r||(0,vw.observer_queueTreeMutationRecord)(t,[],[e],n,s)),Mn.dom.features.steps&&ri.Guard.isTextNode(e)&&(0,yy.dom_runChildTextContentChangeSteps)(t)}});var Ew=S(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.element_has=hSn;Ac.element_change=L9t;Ac.element_append=MOe;Ac.element_remove=kOe;Ac.element_replace=M9t;Ac.element_getAnAttributeByName=k9t;Ac.element_getAnAttributeByNamespaceAndLocalName=WB;Ac.element_getAnAttributeValue=pSn;Ac.element_setAnAttribute=mSn;Ac.element_setAnAttributeValue=gSn;Ac.element_removeAnAttributeByName=_Sn;Ac.element_removeAnAttributeByNamespaceAndLocalName=ASn;Ac.element_createAnElement=ESn;Ac.element_insertAdjacent=ySn;var Jl=ea(),Cb=ha(),$Y=vs(),xb=xa(),FY=l_(),f_=GB(),qY=gw(),HY=d_(),UY=Rb(),P9t=kY();function hSn(e,t){return t._attributeList._asArray().indexOf(e)!==-1}function L9t(e,t,r){Jl.dom.features.mutationObservers&&(0,qY.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,e._value),Jl.dom.features.customElements&&$Y.Guard.isCustomElementNode(t)&&(0,f_.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,e._value,r,e._namespace]),Jl.dom.features.steps&&(0,HY.dom_runAttributeChangeSteps)(t,e._localName,e._value,r,e._namespace),e._value=r}function MOe(e,t){Jl.dom.features.mutationObservers&&(0,qY.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,null),Jl.dom.features.customElements&&$Y.Guard.isCustomElementNode(t)&&(0,f_.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,null,e._value,e._namespace]),Jl.dom.features.steps&&(0,HY.dom_runAttributeChangeSteps)(t,e._localName,null,e._value,e._namespace),t._attributeList._asArray().push(e),e._element=t,!t._nodeDocument._hasNamespaces&&(e._namespace!==null||e._namespacePrefix!==null||e._localName==="xmlns")&&(t._nodeDocument._hasNamespaces=!0)}function kOe(e,t){Jl.dom.features.mutationObservers&&(0,qY.observer_queueAttributeMutationRecord)(t,e._localName,e._namespace,e._value),Jl.dom.features.customElements&&$Y.Guard.isCustomElementNode(t)&&(0,f_.customElement_enqueueACustomElementCallbackReaction)(t,"attributeChangedCallback",[e._localName,e._value,null,e._namespace]),Jl.dom.features.steps&&(0,HY.dom_runAttributeChangeSteps)(t,e._localName,e._value,null,e._namespace);let r=t._attributeList._asArray().indexOf(e);t._attributeList._asArray().splice(r,1),e._element=null}function M9t(e,t,r){Jl.dom.features.mutationObservers&&(0,qY.observer_queueAttributeMutationRecord)(r,e._localName,e._namespace,e._value),Jl.dom.features.customElements&&$Y.Guard.isCustomElementNode(r)&&(0,f_.customElement_enqueueACustomElementCallbackReaction)(r,"attributeChangedCallback",[e._localName,e._value,t._value,e._namespace]),Jl.dom.features.steps&&(0,HY.dom_runAttributeChangeSteps)(r,e._localName,e._value,t._value,e._namespace);let n=r._attributeList._asArray().indexOf(e);n!==-1&&(r._attributeList._asArray()[n]=t),e._element=null,t._element=r,!r._nodeDocument._hasNamespaces&&(t._namespace!==null||t._namespacePrefix!==null||t._localName==="xmlns")&&(r._nodeDocument._hasNamespaces=!0)}function k9t(e,t){return t._namespace===Cb.namespace.HTML&&t._nodeDocument._type==="html"&&(e=e.toLowerCase()),t._attributeList._asArray().find(r=>r._qualifiedName===e)||null}function WB(e,t,r){let n=e||null;return r._attributeList._asArray().find(s=>s._namespace===n&&s._localName===t)||null}function pSn(e,t,r=""){let n=WB(r,t,e);return n===null?"":n._value}function mSn(e,t){if(e._element!==null&&e._element!==t)throw new xb.InUseAttributeError(`This attribute already exists in the document: ${e._qualifiedName} as a child of ${e._element._qualifiedName}.`);let r=WB(e._namespace||"",e._localName,t);return r===e?e:(r!==null?M9t(r,e,t):MOe(e,t),r)}function gSn(e,t,r,n=null,s=null){let i=WB(s||"",t,e);if(i===null){let a=(0,FY.create_attr)(e._nodeDocument,t);a._namespace=s,a._namespacePrefix=n,a._value=r,MOe(a,e);return}L9t(i,e,r)}function _Sn(e,t){let r=k9t(e,t);return r!==null&&kOe(r,t),r}function ASn(e,t,r){let n=WB(e,t,r);return n!==null&&kOe(n,r),n}function ESn(e,t,r,n=null,s=null,i=!1){let a=null;if(!Jl.dom.features.customElements)return a=(0,FY.create_element)(e,t,r,n),a._customElementState="uncustomized",a._customElementDefinition=null,a._is=s,a;let o=(0,f_.customElement_lookUpACustomElementDefinition)(e,r,t,s);if(o!==null&&o.name!==o.localName){let c=(0,P9t.document_elementInterface)(t,Cb.namespace.HTML);a=new c,a._localName=t,a._namespace=Cb.namespace.HTML,a._namespacePrefix=n,a._customElementState="undefined",a._customElementDefinition=null,a._is=s,a._nodeDocument=e,i?(0,f_.customElement_upgrade)(o,a):(0,f_.customElement_enqueueACustomElementUpgradeReaction)(a,o)}else if(o!==null)if(i)try{let c=o.constructor,u=new c;if(console.assert(u._customElementState!==void 0),console.assert(u._customElementDefinition!==void 0),console.assert(u._namespace===Cb.namespace.HTML),u._attributeList.length!==0)throw new xb.NotSupportedError("Custom element already has attributes.");if(u._children.size!==0)throw new xb.NotSupportedError("Custom element already has child nodes.");if(u._parent!==null)throw new xb.NotSupportedError("Custom element already has a parent node.");if(u._nodeDocument!==e)throw new xb.NotSupportedError("Custom element is already in a document.");if(u._localName!==t)throw new xb.NotSupportedError("Custom element has a different local name.");u._namespacePrefix=n,u._is=null}catch{a=(0,FY.create_htmlUnknownElement)(e,t,Cb.namespace.HTML,n),a._customElementState="failed",a._customElementDefinition=null,a._is=null}else a=(0,FY.create_htmlElement)(e,t,Cb.namespace.HTML,n),a._customElementState="undefined",a._customElementDefinition=null,a._is=null,(0,f_.customElement_enqueueACustomElementUpgradeReaction)(a,o);else{let c=(0,P9t.document_elementInterface)(t,r);a=new c,a._localName=t,a._namespace=r,a._namespacePrefix=n,a._customElementState="uncustomized",a._customElementDefinition=null,a._is=s,a._nodeDocument=e,r===Cb.namespace.HTML&&(s!==null||(0,f_.customElement_isValidCustomElementName)(t))&&(a._customElementState="undefined")}if(a===null)throw new Error("Unable to create element.");return a}function ySn(e,t,r){switch(t.toLowerCase()){case"beforebegin":return e._parent===null?null:(0,UY.mutation_preInsert)(r,e._parent,e);case"afterbegin":return(0,UY.mutation_preInsert)(r,e,e._firstChild);case"beforeend":return(0,UY.mutation_preInsert)(r,e,null);case"afterend":return e._parent===null?null:(0,UY.mutation_preInsert)(r,e._parent,e._nextSibling);default:throw new xb.SyntaxError(`Invalid 'where' argument. "beforebegin", "afterbegin", "beforeend" or "afterend" expected`)}}});var B9t=S(BOe=>{"use strict";Object.defineProperty(BOe,"__esModule",{value:!0});BOe.attr_setAnExistingAttributeValue=SSn;var vSn=Ew();function SSn(e,t){e._element===null?e._value=t:(0,vSn.element_change)(e,e._element,t)}});var FOe=S(UOe=>{"use strict";Object.defineProperty(UOe,"__esModule",{value:!0});UOe.boundaryPoint_position=U9t;var h_=Qn(),Sw=Wl();function U9t(e,t){let r=e[0],n=e[1],s=t[0],i=t[1];if(console.assert((0,Sw.tree_rootNode)(r)===(0,Sw.tree_rootNode)(s),"Boundary points must share the same root node."),r===s)return n===i?h_.BoundaryPosition.Equal:n{"use strict";Object.defineProperty(VY,"__esModule",{value:!0});VY.characterData_replaceData=RSn;VY.characterData_substringData=CSn;var $Oe=ea(),TSn=vs(),F9t=xa(),$9t=Wl(),bSn=gw(),ISn=d_();function RSn(e,t,r,n){let s=(0,$9t.tree_nodeLength)(e);if(t>s)throw new F9t.IndexSizeError(`Offset exceeds character data length. Offset: ${t}, Length: ${s}, Node is ${e.nodeName}.`);t+r>s&&(r=s-t),$Oe.dom.features.mutationObservers&&(0,bSn.observer_queueMutationRecord)("characterData",e,null,null,e._data,[],[],null,null);let i=e._data.substring(0,t)+n+e._data.substring(t+r);e._data=i;for(let a of $Oe.dom.rangeList)a._start[0]===e&&a._start[1]>t&&a._start[1]<=t+r&&(a._start[1]=t),a._end[0]===e&&a._end[1]>t&&a._end[1]<=t+r&&(a._end[1]=t),a._start[0]===e&&a._start[1]>t+r&&(a._start[1]+=n.length-r),a._end[0]===e&&a._end[1]>t+r&&(a._end[1]+=n.length-r);$Oe.dom.features.steps&&TSn.Guard.isTextNode(e)&&e._parent!==null&&(0,ISn.dom_runChildTextContentChangeSteps)(e._parent)}function CSn(e,t,r){let n=(0,$9t.tree_nodeLength)(e);if(t>n)throw new F9t.IndexSizeError(`Offset exceeds character data length. Offset: ${t}, Length: ${n}, Node is ${e.nodeName}.`);return t+r>n?e._data.substr(t):e._data.substr(t,r)}});var KY=S(Tw=>{"use strict";Object.defineProperty(Tw,"__esModule",{value:!0});Tw.orderedSet_parse=q9t;Tw.orderedSet_serialize=H9t;Tw.orderedSet_sanitize=wSn;Tw.orderedSet_contains=NSn;var xSn=ha();function q9t(e){let t=xSn.string.splitAStringOnASCIIWhitespace(e);return new Set(t)}function H9t(e){return[...e].join(" ")}function wSn(e){return H9t(q9t(e))}function NSn(e,t,r){for(let n of t){let s=!1;for(let i of e)if(r){if(i===n){s=!0;break}}else if(i.toUpperCase()===n.toUpperCase()){s=!0;break}if(!s)return!1}return!0}});var K9t=S(XB=>{"use strict";Object.defineProperty(XB,"__esModule",{value:!0});XB.tokenList_validationSteps=DSn;XB.tokenList_updateSteps=PSn;XB.tokenList_serializeSteps=LSn;var OSn=KY(),V9t=d_(),j9t=Ew();function DSn(e,t){if(!(0,V9t.dom_hasSupportedTokens)(e._attribute._localName))throw new TypeError(`There are no supported tokens defined for attribute name: '${e._attribute._localName}'.`);return(0,V9t.dom_getSupportedTokens)(e._attribute._localName).has(t.toLowerCase())}function PSn(e){!e._element.hasAttribute(e._attribute._localName)&&e._tokenSet.size===0||(0,j9t.element_setAnAttributeValue)(e._element,e._attribute._localName,(0,OSn.orderedSet_serialize)(e._tokenSet))}function LSn(e){return(0,j9t.element_getAnAttributeValue)(e._element,e._attribute._localName)}});var Y9t=S(wb=>{"use strict";Object.defineProperty(wb,"__esModule",{value:!0});wb.eventTarget_flatten=z9t;wb.eventTarget_flattenMore=MSn;wb.eventTarget_addEventListener=kSn;wb.eventTarget_removeEventListener=BSn;wb.eventTarget_removeAllEventListeners=USn;var G9t=Jn();function z9t(e){return(0,G9t.isBoolean)(e)?e:e.capture||!1}function MSn(e){let t=z9t(e),r=!1,n=!1;return(0,G9t.isBoolean)(e)||(r=e.once||!1,n=e.passive||!1),[t,n,r]}function kSn(e,t){if(t.callback!==null){for(let r=0;r{"use strict";Object.defineProperty(Sp,"__esModule",{value:!0});Sp.node_stringReplaceAll=qSn;Sp.node_clone=qOe;Sp.node_equals=HOe;Sp.node_listOfElementsWithQualifiedName=HSn;Sp.node_listOfElementsWithNamespace=VSn;Sp.node_listOfElementsWithClassNames=jSn;Sp.node_locateANamespacePrefix=J9t;Sp.node_locateANamespace=JB;var FSn=ea(),is=vs(),GY=ha(),io=l_(),Q9t=KY(),$Sn=d_(),X9t=Rb(),W9t=Ew();function qSn(e,t){let r=null;e!==""&&(r=(0,io.create_text)(t._nodeDocument,e)),(0,X9t.mutation_replaceAll)(r,t)}function qOe(e,t=null,r=!1){t===null&&(t=e._nodeDocument);let n;if(is.Guard.isElementNode(e)){n=(0,W9t.element_createAnElement)(t,e._localName,e._namespace,e._namespacePrefix,e._is,!1);for(let s of e._attributeList){let i=qOe(s,t);(0,W9t.element_append)(i,n)}}else if(is.Guard.isDocumentNode(e)){let s=(0,io.create_document)();s._encoding=e._encoding,s._contentType=e._contentType,s._URL=e._URL,s._origin=e._origin,s._type=e._type,s._mode=e._mode,n=s}else if(is.Guard.isDocumentTypeNode(e))n=(0,io.create_documentType)(t,e._name,e._publicId,e._systemId);else if(is.Guard.isAttrNode(e)){let s=(0,io.create_attr)(t,e.localName);s._namespace=e._namespace,s._namespacePrefix=e._namespacePrefix,s._value=e._value,n=s}else is.Guard.isExclusiveTextNode(e)?n=(0,io.create_text)(t,e._data):is.Guard.isCDATASectionNode(e)?n=(0,io.create_cdataSection)(t,e._data):is.Guard.isCommentNode(e)?n=(0,io.create_comment)(t,e._data):is.Guard.isProcessingInstructionNode(e)?n=(0,io.create_processingInstruction)(t,e._target,e._data):is.Guard.isDocumentFragmentNode(e)?n=(0,io.create_documentFragment)(t):n=Object.create(e);if(is.Guard.isDocumentNode(n)?(n._nodeDocument=n,t=n):n._nodeDocument=t,FSn.dom.features.steps&&(0,$Sn.dom_runCloningSteps)(n,e,t,r),r)for(let s of e._children){let i=qOe(s,t,!0);(0,X9t.mutation_append)(i,n)}return n}function HOe(e,t){if(e._nodeType!==t._nodeType)return!1;if(is.Guard.isDocumentTypeNode(e)&&is.Guard.isDocumentTypeNode(t)){if(e._name!==t._name||e._publicId!==t._publicId||e._systemId!==t._systemId)return!1}else if(is.Guard.isElementNode(e)&&is.Guard.isElementNode(t)){if(e._namespace!==t._namespace||e._namespacePrefix!==t._namespacePrefix||e._localName!==t._localName||e._attributeList.length!==t._attributeList.length)return!1}else if(is.Guard.isAttrNode(e)&&is.Guard.isAttrNode(t)){if(e._namespace!==t._namespace||e._localName!==t._localName||e._value!==t._value)return!1}else if(is.Guard.isProcessingInstructionNode(e)&&is.Guard.isProcessingInstructionNode(t)){if(e._target!==t._target||e._data!==t._data)return!1}else if(is.Guard.isCharacterDataNode(e)&&is.Guard.isCharacterDataNode(t)&&e._data!==t._data)return!1;if(is.Guard.isElementNode(e)&&is.Guard.isElementNode(t)){let a={};for(let o of e._attributeList)a[o._localName]=o;for(let o of t._attributeList){let c=a[o._localName];if(!c||!HOe(c,o))return!1}}if(e._children.size!==t._children.size)return!1;let r=e._children[Symbol.iterator](),n=t._children[Symbol.iterator](),s=r.next(),i=n.next();for(;!s.done&&!i.done;){let a=s.value,o=i.value;if(!HOe(a,o))return!1;s=r.next(),i=n.next()}return!0}function HSn(e,t){return e==="*"?(0,io.create_htmlCollection)(t):t._nodeDocument._type==="html"?(0,io.create_htmlCollection)(t,function(r){return r._namespace===GY.namespace.HTML&&r._qualifiedName===e.toLowerCase()?!0:r._namespace!==GY.namespace.HTML&&r._qualifiedName===e}):(0,io.create_htmlCollection)(t,function(r){return r._qualifiedName===e})}function VSn(e,t,r){return e===""&&(e=null),e==="*"&&t==="*"?(0,io.create_htmlCollection)(r):e==="*"?(0,io.create_htmlCollection)(r,function(n){return n._localName===t}):t==="*"?(0,io.create_htmlCollection)(r,function(n){return n._namespace===e}):(0,io.create_htmlCollection)(r,function(n){return n._localName===t&&n._namespace===e})}function jSn(e,t){let r=(0,Q9t.orderedSet_parse)(e);if(r.size===0)return(0,io.create_htmlCollection)(t,()=>!1);let n=t._nodeDocument._mode!=="quirks";return(0,io.create_htmlCollection)(t,function(s){let i=s.classList;return(0,Q9t.orderedSet_contains)(i._tokenSet,r,n)})}function J9t(e,t){if(e._namespace===t&&e._namespacePrefix!==null)return e._namespacePrefix;for(let r=0;r{"use strict";Object.defineProperty(jOe,"__esModule",{value:!0});jOe.parentNode_convertNodesIntoANode=GSn;var KSn=Jn(),Z9t=l_();function GSn(e,t){let r=null;for(let n=0;n{"use strict";Object.defineProperty(bw,"__esModule",{value:!0});bw.text_contiguousTextNodes=XSn;bw.text_contiguousExclusiveTextNodes=JSn;bw.text_descendantTextContent=ZSn;bw.text_split=eTn;var zSn=ea(),vy=vs(),YSn=xa(),QSn=l_(),KOe=Wl(),tqt=jY(),WSn=Rb();function XSn(e,t=!1){return{[Symbol.iterator](){let r=e;for(;r&&vy.Guard.isTextNode(r._previousSibling);)r=r._previousSibling;return{next(){if(r&&!t&&r===e&&(vy.Guard.isTextNode(r._nextSibling)?r=r._nextSibling:r=null),r===null)return{done:!0,value:null};{let n={done:!1,value:r};return vy.Guard.isTextNode(r._nextSibling)?r=r._nextSibling:r=null,n}}}}}}function JSn(e,t=!1){return{[Symbol.iterator](){let r=e;for(;r&&vy.Guard.isExclusiveTextNode(r._previousSibling);)r=r._previousSibling;return{next(){if(r&&!t&&r===e&&(vy.Guard.isExclusiveTextNode(r._nextSibling)?r=r._nextSibling:r=null),r===null)return{done:!0,value:null};{let n={done:!1,value:r};return vy.Guard.isExclusiveTextNode(r._nextSibling)?r=r._nextSibling:r=null,n}}}}}}function ZSn(e){let t="",r=(0,KOe.tree_getFirstDescendantNode)(e,!1,!1,n=>vy.Guard.isTextNode(n));for(;r!==null;)t+=r._data,r=(0,KOe.tree_getNextDescendantNode)(e,r,!1,!1,n=>vy.Guard.isTextNode(n));return t}function eTn(e,t){let r=e._data.length;if(t>r)throw new YSn.IndexSizeError;let n=r-t,s=(0,tqt.characterData_substringData)(e,t,n),i=(0,QSn.create_text)(e._nodeDocument,s),a=e._parent;if(a!==null){(0,WSn.mutation_insert)(i,a,e._nextSibling);for(let o of zSn.dom.rangeList){o._start[0]===e&&o._start[1]>t&&(o._start[0]=i,o._start[1]-=t),o._end[0]===e&&o._end[1]>t&&(o._end[0]=i,o._end[1]-=t);let c=(0,KOe.tree_index)(e);o._start[0]===a&&o._start[1]===c+1&&o._start[1]++,o._end[0]===a&&o._end[1]===c+1&&o._end[1]++}}return(0,tqt.characterData_replaceData)(e,t,n,""),i}});var nqt=S(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});cl.range_collapsed=WY;cl.range_root=XY;cl.range_isContained=JY;cl.range_isPartiallyContained=Rw;cl.range_setTheStart=rTn;cl.range_setTheEnd=nTn;cl.range_select=sTn;cl.range_extract=QY;cl.range_cloneTheContents=rqt;cl.range_insert=iTn;cl.range_getContainedNodes=aTn;cl.range_getPartiallyContainedNodes=oTn;var zY=Qn(),Sy=xa(),Ec=vs(),Iw=l_(),kn=Wl(),YY=FOe(),p_=jY(),k0=VOe(),ao=Rb(),tTn=GOe();function WY(e){return e._startNode===e._endNode&&e._startOffset===e._endOffset}function XY(e){return(0,kn.tree_rootNode)(e._startNode)}function JY(e,t){return(0,kn.tree_rootNode)(e)===XY(t)&&(0,YY.boundaryPoint_position)([e,0],t._start)===zY.BoundaryPosition.After&&(0,YY.boundaryPoint_position)([e,(0,kn.tree_nodeLength)(e)],t._end)===zY.BoundaryPosition.Before}function Rw(e,t){let r=(0,kn.tree_isAncestorOf)(t._startNode,e,!0),n=(0,kn.tree_isAncestorOf)(t._endNode,e,!0);return r&&!n||!r&&n}function rTn(e,t,r){if(Ec.Guard.isDocumentTypeNode(t))throw new Sy.InvalidNodeTypeError;if(r>(0,kn.tree_nodeLength)(t))throw new Sy.IndexSizeError;let n=[t,r];(XY(e)!==(0,kn.tree_rootNode)(t)||(0,YY.boundaryPoint_position)(n,e._end)===zY.BoundaryPosition.After)&&(e._end=n),e._start=n}function nTn(e,t,r){if(Ec.Guard.isDocumentTypeNode(t))throw new Sy.InvalidNodeTypeError;if(r>(0,kn.tree_nodeLength)(t))throw new Sy.IndexSizeError;let n=[t,r];(XY(e)!==(0,kn.tree_rootNode)(t)||(0,YY.boundaryPoint_position)(n,e._start)===zY.BoundaryPosition.Before)&&(e._start=n),e._end=n}function sTn(e,t){let r=e._parent;if(r===null)throw new Sy.InvalidNodeTypeError;let n=(0,kn.tree_index)(e);t._start=[r,n],t._end=[r,n+1]}function QY(e){let t=(0,Iw.create_documentFragment)(e._startNode._nodeDocument);if(WY(e))return t;let r=e._startNode,n=e._startOffset,s=e._endNode,i=e._endOffset;if(r===s&&Ec.Guard.isCharacterDataNode(r)){let f=(0,k0.node_clone)(r);return f._data=(0,p_.characterData_substringData)(r,n,i-n),(0,ao.mutation_append)(f,t),(0,p_.characterData_replaceData)(r,n,i-n,""),t}let a=r;for(;!(0,kn.tree_isAncestorOf)(s,a,!0);){if(a._parent===null)throw new Error("Parent node is null.");a=a._parent}let o=null;if(!(0,kn.tree_isAncestorOf)(s,r,!0)){for(let f of a._children)if(Rw(f,e)){o=f;break}}let c=null;if(!(0,kn.tree_isAncestorOf)(r,s,!0)){let f=[...a._children];for(let h=f.length-1;h>0;h--){let p=f[h];if(Rw(p,e)){c=p;break}}}let u=[];for(let f of a._children)if(JY(f,e)){if(Ec.Guard.isDocumentTypeNode(f))throw new Sy.HierarchyRequestError;u.push(f)}let l,d;if((0,kn.tree_isAncestorOf)(s,r,!0))l=r,d=n;else{let f=r;for(;f._parent!==null&&!(0,kn.tree_isAncestorOf)(s,f._parent);)f=f._parent;if(f._parent===null)throw new Error("Parent node is null.");l=f._parent,d=1+(0,kn.tree_index)(f)}if(Ec.Guard.isCharacterDataNode(o)){let f=(0,k0.node_clone)(r);f._data=(0,p_.characterData_substringData)(r,n,(0,kn.tree_nodeLength)(r)-n),(0,ao.mutation_append)(f,t),(0,p_.characterData_replaceData)(r,n,(0,kn.tree_nodeLength)(r)-n,"")}else if(o!==null){let f=(0,k0.node_clone)(o);(0,ao.mutation_append)(f,t);let h=(0,Iw.create_range)([r,n],[o,(0,kn.tree_nodeLength)(o)]),p=QY(h);(0,ao.mutation_append)(p,f)}for(let f of u)(0,ao.mutation_append)(f,t);if(Ec.Guard.isCharacterDataNode(c)){let f=(0,k0.node_clone)(s);f._data=(0,p_.characterData_substringData)(s,0,i),(0,ao.mutation_append)(f,t),(0,p_.characterData_replaceData)(s,0,i,"")}else if(c!==null){let f=(0,k0.node_clone)(c);(0,ao.mutation_append)(f,t);let h=(0,Iw.create_range)([c,0],[s,i]),p=QY(h);(0,ao.mutation_append)(p,f)}return e._start=[l,d],e._end=[l,d],t}function rqt(e){let t=(0,Iw.create_documentFragment)(e._startNode._nodeDocument);if(WY(e))return t;let r=e._startNode,n=e._startOffset,s=e._endNode,i=e._endOffset;if(r===s&&Ec.Guard.isCharacterDataNode(r)){let l=(0,k0.node_clone)(r);l._data=(0,p_.characterData_substringData)(r,n,i-n),(0,ao.mutation_append)(l,t)}let a=r;for(;!(0,kn.tree_isAncestorOf)(s,a,!0);){if(a._parent===null)throw new Error("Parent node is null.");a=a._parent}let o=null;if(!(0,kn.tree_isAncestorOf)(s,r,!0)){for(let l of a._children)if(Rw(l,e)){o=l;break}}let c=null;if(!(0,kn.tree_isAncestorOf)(r,s,!0)){let l=[...a._children];for(let d=l.length-1;d>0;d--){let f=l[d];if(Rw(f,e)){c=f;break}}}let u=[];for(let l of a._children)if(JY(l,e)){if(Ec.Guard.isDocumentTypeNode(l))throw new Sy.HierarchyRequestError;u.push(l)}if(Ec.Guard.isCharacterDataNode(o)){let l=(0,k0.node_clone)(r);l._data=(0,p_.characterData_substringData)(r,n,(0,kn.tree_nodeLength)(r)-n),(0,ao.mutation_append)(l,t)}else if(o!==null){let l=(0,k0.node_clone)(o);(0,ao.mutation_append)(l,t);let d=(0,Iw.create_range)([r,n],[o,(0,kn.tree_nodeLength)(o)]),f=rqt(d);(0,ao.mutation_append)(f,l)}for(let l of u){let d=(0,k0.node_clone)(l);(0,ao.mutation_append)(d,t)}if(Ec.Guard.isCharacterDataNode(c)){let l=(0,k0.node_clone)(s);l._data=(0,p_.characterData_substringData)(s,0,i),(0,ao.mutation_append)(l,t)}else if(c!==null){let l=(0,k0.node_clone)(c);t.append(l);let d=(0,Iw.create_range)([c,0],[s,i]),f=QY(d);(0,ao.mutation_append)(f,l)}return t}function iTn(e,t){if(Ec.Guard.isProcessingInstructionNode(t._startNode)||Ec.Guard.isCommentNode(t._startNode)||Ec.Guard.isTextNode(t._startNode)&&t._startNode._parent===null||t._startNode===e)throw new Sy.HierarchyRequestError;let r=null;if(Ec.Guard.isTextNode(t._startNode))r=t._startNode;else{let i=0;for(let a of t._startNode._children){if(i===t._startOffset){r=a;break}i++}}let n;if(r===null)n=t._startNode;else{if(r._parent===null)throw new Error("Parent node is null.");n=r._parent}(0,ao.mutation_ensurePreInsertionValidity)(e,n,r),Ec.Guard.isTextNode(t._startNode)&&(r=(0,tTn.text_split)(t._startNode,t._startOffset)),e===r&&(r=e._nextSibling),e._parent!==null&&(0,ao.mutation_remove)(e,e._parent);let s=r===null?(0,kn.tree_nodeLength)(n):(0,kn.tree_index)(r);Ec.Guard.isDocumentFragmentNode(e)?s+=(0,kn.tree_nodeLength)(e):s++,(0,ao.mutation_preInsert)(e,n,r),WY(t)&&(t._end=[n,s])}function aTn(e){return{[Symbol.iterator]:()=>{let t=e.commonAncestorContainer,r=(0,kn.tree_getFirstDescendantNode)(t);return{next:()=>{for(;r&&!JY(r,e);)r=(0,kn.tree_getNextDescendantNode)(t,r);if(r===null)return{done:!0,value:null};{let n={done:!1,value:r};return r=(0,kn.tree_getNextDescendantNode)(t,r),n}}}}}}function oTn(e){return{[Symbol.iterator]:()=>{let t=e.commonAncestorContainer,r=(0,kn.tree_getFirstDescendantNode)(t);return{next:()=>{for(;r&&!Rw(r,e);)r=(0,kn.tree_getNextDescendantNode)(t,r);if(r===null)return{done:!0,value:null};{let n={done:!1,value:r};return r=(0,kn.tree_getNextDescendantNode)(t,r),n}}}}}}});var sqt=S(zOe=>{"use strict";Object.defineProperty(zOe,"__esModule",{value:!0});zOe.selectors_scopeMatchASelectorsString=uTn;var cTn=xa();function uTn(e,t){throw new cTn.NotSupportedError}});var iqt=S(ZY=>{"use strict";Object.defineProperty(ZY,"__esModule",{value:!0});ZY.treeWalker_traverseChildren=lTn;ZY.treeWalker_traverseSiblings=dTn;var ZB=Qn(),YOe=LY();function lTn(e,t){let r=t?e._current._firstChild:e._current._lastChild;for(;r!==null;){let n=(0,YOe.traversal_filter)(e,r);if(n===ZB.FilterResult.Accept)return e._current=r,r;if(n===ZB.FilterResult.Skip){let s=t?r._firstChild:r._lastChild;if(s!==null){r=s;continue}}for(;r!==null;){let s=t?r._nextSibling:r._previousSibling;if(s!==null){r=s;break}let i=r._parent;if(i===null||i===e._root||i===e._current)return null;r=i}}return null}function dTn(e,t){let r=e._current;if(r===e._root)return null;for(;;){let n=t?r._nextSibling:r._previousSibling;for(;n!==null;){r=n;let s=(0,YOe.traversal_filter)(e,r);if(s===ZB.FilterResult.Accept)return e._current=r,r;n=t?r._firstChild:r._lastChild,(s===ZB.FilterResult.Reject||n===null)&&(n=t?r._nextSibling:r._previousSibling)}if(r=r._parent,r===null||r===e._root||(0,YOe.traversal_filter)(e,r)===ZB.FilterResult.Accept)return null}}});var Ln=S(Rn=>{"use strict";var fTn=Rn&&Rn.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(t,r);(!s||("get"in s?!t.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,s)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),Ss=Rn&&Rn.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&fTn(t,e,r)};Object.defineProperty(Rn,"__esModule",{value:!0});Ss(b9t(),Rn);Ss(B9t(),Rn);Ss(FOe(),Rn);Ss(jY(),Rn);Ss(l_(),Rn);Ss(GB(),Rn);Ss(kY(),Rn);Ss(d_(),Rn);Ss(K9t(),Rn);Ss(Ew(),Rn);Ss(OY(),Rn);Ss(Y9t(),Rn);Ss(Rb(),Rn);Ss(gw(),Rn);Ss(DOe(),Rn);Ss(VOe(),Rn);Ss(xOe(),Rn);Ss(KY(),Rn);Ss(eqt(),Rn);Ss(nqt(),Rn);Ss(sqt(),Rn);Ss(VB(),Rn);Ss(GOe(),Rn);Ss(LY(),Rn);Ss(Wl(),Rn);Ss(iqt(),Rn);Ss(mc(),Rn);Ss(wOe(),Rn)});var aqt=S(eQ=>{"use strict";Object.defineProperty(eQ,"__esModule",{value:!0});eQ.nonEntityAmpersandRegex=void 0;eQ.nonEntityAmpersandRegex=/&(?![A-Za-z]+;|#\d+;)/g});var Cw=S(tQ=>{"use strict";Object.defineProperty(tQ,"__esModule",{value:!0});tQ.BaseWriter=void 0;var yc=Qn(),hTn=kB(),pTn=hz(),m_=ha(),Tp=Ln(),oqt=aqt(),QOe=class e{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);_builderOptions;_writerOptions;constructor(t){this._builderOptions=t}declaration(t,r,n){}docType(t,r,n){}comment(t){}text(t){}instruction(t,r){}cdata(t){}openTagBegin(t){}openTagEnd(t,r,n){}closeTag(t){}attributes(t){for(let r of t)this.attribute(r[1]===null?r[2]:r[1]+":"+r[2],r[3])}attribute(t,r){}beginElement(t){}endElement(t){}level=0;currentNode;serializeNode(t,r){let n=t._nodeDocument!==void 0&&t._nodeDocument._hasNamespaces;if(this.level=0,this.currentNode=t,n){let s=null,i=new pTn.NamespacePrefixMap;i.set("xml",m_.namespace.XML);let a={value:1};this._serializeNodeNS(t,s,i,a,r)}else this._serializeNode(t,r)}_serializeNodeNS(t,r,n,s,i){switch(this.currentNode=t,t.nodeType){case yc.NodeType.Element:this._serializeElementNS(t,r,n,s,i);break;case yc.NodeType.Document:this._serializeDocumentNS(t,r,n,s,i);break;case yc.NodeType.Comment:this._serializeComment(t,i);break;case yc.NodeType.Text:this._serializeText(t,i);break;case yc.NodeType.DocumentFragment:this._serializeDocumentFragmentNS(t,r,n,s,i);break;case yc.NodeType.DocumentType:this._serializeDocumentType(t,i);break;case yc.NodeType.ProcessingInstruction:this._serializeProcessingInstruction(t,i);break;case yc.NodeType.CData:this._serializeCData(t,i);break;default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeNode(t,r){switch(this.currentNode=t,t.nodeType){case yc.NodeType.Element:this._serializeElement(t,r);break;case yc.NodeType.Document:this._serializeDocument(t,r);break;case yc.NodeType.Comment:this._serializeComment(t,r);break;case yc.NodeType.Text:this._serializeText(t,r);break;case yc.NodeType.DocumentFragment:this._serializeDocumentFragment(t,r);break;case yc.NodeType.DocumentType:this._serializeDocumentType(t,r);break;case yc.NodeType.ProcessingInstruction:this._serializeProcessingInstruction(t,r);break;case yc.NodeType.CData:this._serializeCData(t,r);break;default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeElementNS(t,r,n,s,i){let a=[];if(i&&(t.localName.indexOf(":")!==-1||!(0,Tp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let o="",c=!1,u=!1,l=n.copy(),d={},f=this._recordNamespaceInformation(t,l,d),h=r,p=t.namespaceURI;if(h===p)f!==null&&(u=!0),p===m_.namespace.XML?o="xml:"+t.localName:o=t.localName,this.beginElement(o),this.openTagBegin(o);else{let g=t.prefix,_=null;if((g!==null||p!==f)&&(_=l.get(g,p)),g==="xmlns"){if(i)throw new Error("An element cannot have the 'xmlns' prefix (well-formed required).");_=g}_!==null?(o=_+":"+t.localName,f!==null&&f!==m_.namespace.XML&&(h=f||null),this.beginElement(o),this.openTagBegin(o)):g!==null?(g in d&&(g=this._generatePrefix(p,l,s)),l.set(g,p),o+=g+":"+t.localName,this.beginElement(o),this.openTagBegin(o),a.push([null,"xmlns",g,this._serializeAttributeValue(p,i)]),f!==null&&(h=f||null)):f===null||f!==null&&f!==p?(u=!0,o+=t.localName,h=p,this.beginElement(o),this.openTagBegin(o),a.push([null,null,"xmlns",this._serializeAttributeValue(p,i)])):(o+=t.localName,h=p,this.beginElement(o),this.openTagBegin(o))}a.push(...this._serializeAttributesNS(t,l,s,d,u,i)),this.attributes(a);let m=p===m_.namespace.HTML;if(m&&t.childNodes.length===0&&e._VoidElementNames.has(t.localName)?(this.openTagEnd(o,!0,!0),this.endElement(o),c=!0):!m&&t.childNodes.length===0?(this.openTagEnd(o,!0,!1),this.endElement(o),c=!0):this.openTagEnd(o,!1,!1),!c){if(!(m&&t.localName==="template"))for(let g of t.childNodes)this.level++,this._serializeNodeNS(g,h,l,s,i),this.level--;this.closeTag(o),this.endElement(o)}}_serializeElement(t,r){if(r&&(t.localName.indexOf(":")!==-1||!(0,Tp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let n=!1,s=t.localName;this.beginElement(s),this.openTagBegin(s);let i=this._serializeAttributes(t,r);if(this.attributes(i),t.hasChildNodes()?this.openTagEnd(s,!1,!1):(this.openTagEnd(s,!0,!1),this.endElement(s),n=!0),!n){for(let a of t._children)this.level++,this._serializeNode(a,r),this.level--;this.closeTag(s),this.endElement(s)}}_serializeDocumentNS(t,r,n,s,i){if(i&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");for(let a of t.childNodes)this._serializeNodeNS(a,r,n,s,i)}_serializeDocument(t,r){if(r&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");for(let n of t._children)this._serializeNode(n,r)}_serializeComment(t,r){if(r&&(!(0,Tp.xml_isLegalChar)(t.data)||t.data.indexOf("--")!==-1||t.data.endsWith("-")))throw new Error("Comment data contains invalid characters (well-formed required).");this.comment(t.data)}_serializeText(t,r){if(r&&!(0,Tp.xml_isLegalChar)(t.data))throw new Error("Text data contains invalid characters (well-formed required).");let n=t.data.replace(oqt.nonEntityAmpersandRegex,"&").replace(//g,">");this.text(n)}_serializeDocumentFragmentNS(t,r,n,s,i){for(let a of t.childNodes)this._serializeNodeNS(a,r,n,s,i)}_serializeDocumentFragment(t,r){for(let n of t._children)this._serializeNode(n,r)}_serializeDocumentType(t,r){if(r&&!(0,Tp.xml_isPubidChar)(t.publicId))throw new Error("DocType public identifier does not match PubidChar construct (well-formed required).");if(r&&(!(0,Tp.xml_isLegalChar)(t.systemId)||t.systemId.indexOf('"')!==-1&&t.systemId.indexOf("'")!==-1))throw new Error("DocType system identifier contains invalid characters (well-formed required).");this.docType(t.name,t.publicId,t.systemId)}_serializeProcessingInstruction(t,r){if(r&&(t.target.indexOf(":")!==-1||/^xml$/i.test(t.target)))throw new Error("Processing instruction target contains invalid characters (well-formed required).");if(r&&(!(0,Tp.xml_isLegalChar)(t.data)||t.data.indexOf("?>")!==-1))throw new Error("Processing instruction data contains invalid characters (well-formed required).");this.instruction(t.target,t.data)}_serializeCData(t,r){if(r&&t.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters (well-formed required).");this.cdata(t.data)}_serializeAttributesNS(t,r,n,s,i,a){let o=[],c=a?new hTn.LocalNameSet:void 0;for(let u of t.attributes){if(!a&&!i&&u.namespaceURI===null){o.push([null,null,u.localName,this._serializeAttributeValue(u.value,a)]);continue}if(a&&c&&c.has(u.namespaceURI,u.localName))throw new Error("Element contains duplicate attributes (well-formed required).");a&&c&&c.set(u.namespaceURI,u.localName);let l=u.namespaceURI,d=null;if(l!==null)if(d=r.get(u.prefix,l),l===m_.namespace.XMLNS){if(u.value===m_.namespace.XML||u.prefix===null&&i||u.prefix!==null&&(!(u.localName in s)||s[u.localName]!==u.value)&&r.has(u.localName,u.value))continue;if(a&&u.value===m_.namespace.XMLNS)throw new Error("XMLNS namespace is reserved (well-formed required).");if(a&&u.value==="")throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required).");u.prefix==="xmlns"&&(d="xmlns")}else d===null&&(u.prefix!==null&&(!r.hasPrefix(u.prefix)||r.has(u.prefix,l))?d=u.prefix:d=this._generatePrefix(l,r,n),o.push([null,"xmlns",d,this._serializeAttributeValue(l,a)]));let f="";if(d!==null&&(f=d),a&&(u.localName.indexOf(":")!==-1||!(0,Tp.xml_isName)(u.localName)||u.localName==="xmlns"&&l===null))throw new Error("Attribute local name contains invalid characters (well-formed required).");o.push([l,d,u.localName,this._serializeAttributeValue(u.value,a)])}return o}_serializeAttributes(t,r){let n=[],s=r?{}:void 0;for(let i of t.attributes){if(!r){n.push([null,null,i.localName,this._serializeAttributeValue(i.value,r)]);continue}if(r&&s&&i.localName in s)throw new Error("Element contains duplicate attributes (well-formed required).");if(r&&s&&(s[i.localName]=!0),r&&(i.localName.indexOf(":")!==-1||!(0,Tp.xml_isName)(i.localName)))throw new Error("Attribute local name contains invalid characters (well-formed required).");n.push([null,null,i.localName,this._serializeAttributeValue(i.value,r)])}return n}_recordNamespaceInformation(t,r,n){let s=null;for(let i of t.attributes){let a=i.namespaceURI,o=i.prefix;if(a===m_.namespace.XMLNS)if(o===null){s=i.value;continue}else{let c=i.localName,u=i.value;if(u===m_.namespace.XML||(u===""&&(u=null),r.has(c,u)))continue;r.set(c,u),n[c]=u||""}}return s}_generatePrefix(t,r,n){let s="ns"+n.value.toString();return n.value++,r.set(s,t),s}_serializeAttributeValue(t,r){if(r&&t!==null&&!(0,Tp.xml_isLegalChar)(t))throw new Error("Invalid characters in attribute value.");return t===null?"":t.replace(oqt.nonEntityAmpersandRegex,"&").replace(//g,">").replace(/"/g,""")}};tQ.BaseWriter=QOe});var e3=S(rQ=>{"use strict";Object.defineProperty(rQ,"__esModule",{value:!0});rQ.ObjectWriter=void 0;var bp=Jn(),Ty=Qn(),mTn=Cw(),WOe=class extends mTn.BaseWriter{_currentList;_currentIndex;_listRegister;constructor(t,r){super(t),this._writerOptions=(0,bp.applyDefaults)(r,{format:"object",wellFormed:!1,group:!1,verbose:!1})}serialize(t){return this._currentList=[],this._currentIndex=0,this._listRegister=[this._currentList],this.serializeNode(t,this._writerOptions.wellFormed),this._process(this._currentList,this._writerOptions)}_process(t,r){if(t.length===0)return{};let n={},s=!1,i=0,a=0,o=0,c=0;for(let p=0;p2)for(let o of t){let c=s+(a++).toString();r[c]=o}else{let o=i>1?s+(a++).toString():s;r[o]=t}return a}beginElement(t){let r=[];if(this._currentList.length===0)this._currentList.push({[t]:r});else{let n=this._currentList[this._currentList.length-1];this._isElementNode(n,t)?n[t].length!==0&&(0,bp.isArray)(n[t][0])?n[t].push(r):n[t]=[n[t],r]:this._currentList.push({[t]:r})}this._currentIndex++,this._listRegister.length>this._currentIndex?this._listRegister[this._currentIndex]=r:this._listRegister.push(r),this._currentList=r}endElement(){this._currentList=this._listRegister[--this._currentIndex]}attribute(t,r){if(this._currentList.length===0)this._currentList.push({"@":{[t]:r}});else{let n=this._currentList[this._currentList.length-1];this._isAttrNode(n)?n["@"][t]=r:this._currentList.push({"@":{[t]:r}})}}comment(t){if(this._currentList.length===0)this._currentList.push({"!":t});else{let r=this._currentList[this._currentList.length-1];this._isCommentNode(r)?(0,bp.isArray)(r["!"])?r["!"].push(t):r["!"]=[r["!"],t]:this._currentList.push({"!":t})}}text(t){if(this._currentList.length===0)this._currentList.push({"#":t});else{let r=this._currentList[this._currentList.length-1];this._isTextNode(r)?(0,bp.isArray)(r["#"])?r["#"].push(t):r["#"]=[r["#"],t]:this._currentList.push({"#":t})}}instruction(t,r){let n=r===""?t:t+" "+r;if(this._currentList.length===0)this._currentList.push({"?":n});else{let s=this._currentList[this._currentList.length-1];this._isInstructionNode(s)?(0,bp.isArray)(s["?"])?s["?"].push(n):s["?"]=[s["?"],n]:this._currentList.push({"?":n})}}cdata(t){if(this._currentList.length===0)this._currentList.push({$:t});else{let r=this._currentList[this._currentList.length-1];this._isCDATANode(r)?(0,bp.isArray)(r.$)?r.$.push(t):r.$=[r.$,t]:this._currentList.push({$:t})}}_isAttrNode(t){return"@"in t}_isTextNode(t){return"#"in t}_isCommentNode(t){return"!"in t}_isInstructionNode(t){return"?"in t}_isCDATANode(t){return"$"in t}_isElementNode(t,r){return r in t}_getAttrKey(){return this._builderOptions.convert.att}_getNodeKey(t){switch(t){case Ty.NodeType.Comment:return this._builderOptions.convert.comment;case Ty.NodeType.Text:return this._builderOptions.convert.text;case Ty.NodeType.ProcessingInstruction:return this._builderOptions.convert.ins;case Ty.NodeType.CData:return this._builderOptions.convert.cdata;default:throw new Error("Invalid node type.")}}};rQ.ObjectWriter=WOe});var cqt=S(sQ=>{"use strict";Object.defineProperty(sQ,"__esModule",{value:!0});sQ.MapWriter=void 0;var nQ=Jn(),gTn=e3(),_Tn=Cw(),XOe=class extends _Tn.BaseWriter{constructor(t,r){super(t),this._writerOptions=(0,nQ.applyDefaults)(r,{format:"map",wellFormed:!1,group:!1,verbose:!1})}serialize(t){let r=(0,nQ.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1,verbose:!1}),s=new gTn.ObjectWriter(this._builderOptions,r).serialize(t);return this._convertObject(s)}_convertObject(t){if((0,nQ.isArray)(t)){for(let r=0;r{"use strict";Object.defineProperty(iQ,"__esModule",{value:!0});iQ.XMLWriter=void 0;var ATn=Jn(),ETn=Qn(),yTn=Cw(),uqt=vs(),JOe=class extends yTn.BaseWriter{_refs;_indentation={};_lengthToLastNewline=0;constructor(t,r){super(t),this._writerOptions=(0,ATn.applyDefaults)(r,{wellFormed:!1,headless:!1,prettyPrint:!1,indent:" ",newline:` +`,offset:0,width:0,allowEmptyTags:!1,indentTextOnlyNodes:!1,spaceBeforeSlash:!1})}serialize(t){return this._refs={suppressPretty:!1,emptyNode:!1,markup:""},t.nodeType===ETn.NodeType.Document&&!this._writerOptions.headless&&this.declaration(this._builderOptions.version,this._builderOptions.encoding,this._builderOptions.standalone),this.serializeNode(t,this._writerOptions.wellFormed),this._writerOptions.prettyPrint&&this._refs.markup.slice(-this._writerOptions.newline.length)===this._writerOptions.newline&&(this._refs.markup=this._refs.markup.slice(0,-this._writerOptions.newline.length)),this._refs.markup}declaration(t,r,n){this._beginLine(),this._refs.markup+='",this._endLine()}docType(t,r,n){this._beginLine(),r&&n?this._refs.markup+="':r?this._refs.markup+="':n?this._refs.markup+="':this._refs.markup+="",this._endLine()}openTagBegin(t){this._beginLine(),this._refs.markup+="<"+t}openTagEnd(t,r,n){if(this._refs.suppressPretty=!1,this._refs.emptyNode=!1,this._writerOptions.prettyPrint&&!r&&!n){let s=!0,i=!0,a=this.currentNode.firstChild,o=0,c=0;for(;a;){if(uqt.Guard.isExclusiveTextNode(a))c++;else if(uqt.Guard.isCDATASectionNode(a))o++;else{s=!1,i=!1;break}a.data!==""&&(i=!1),a=a.nextSibling}this._refs.suppressPretty=!this._writerOptions.indentTextOnlyNodes&&s&&(o<=1&&c===0||o===0),this._refs.emptyNode=i}(n||r||this._refs.emptyNode)&&this._writerOptions.allowEmptyTags?this._refs.markup+=">":this._refs.markup+=n?" />":r||this._refs.emptyNode?this._writerOptions.spaceBeforeSlash?" />":"/>":">",this._endLine()}closeTag(t){this._refs.emptyNode||(this._beginLine(),this._refs.markup+=""),this._refs.suppressPretty=!1,this._refs.emptyNode=!1,this._endLine()}attribute(t,r){let n=t+'="'+r+'"';this._writerOptions.prettyPrint&&this._writerOptions.width>0&&this._refs.markup.length-this._lengthToLastNewline+1+n.length>this._writerOptions.width?(this._endLine(),this._beginLine(),this._refs.markup+=this._indent(1)+n):this._refs.markup+=" "+n}text(t){t!==""&&(this._beginLine(),this._refs.markup+=t,this._endLine())}cdata(t){t!==""&&(this._beginLine(),this._refs.markup+="",this._endLine())}comment(t){this._beginLine(),this._refs.markup+="",this._endLine()}instruction(t,r){this._beginLine(),this._refs.markup+="",this._endLine()}_beginLine(){this._writerOptions.prettyPrint&&!this._refs.suppressPretty&&(this._refs.markup+=this._indent(this._writerOptions.offset+this.level))}_endLine(){this._writerOptions.prettyPrint&&!this._refs.suppressPretty&&(this._refs.markup+=this._writerOptions.newline,this._lengthToLastNewline=this._refs.markup.length)}_indent(t){if(t<=0)return"";if(this._indentation[t]!==void 0)return this._indentation[t];{let r=this._writerOptions.indent.repeat(t);return this._indentation[t]=r,r}}};iQ.XMLWriter=JOe});var dqt=S(aQ=>{"use strict";Object.defineProperty(aQ,"__esModule",{value:!0});aQ.JSONWriter=void 0;var vTn=e3(),Ip=Jn(),STn=Cw(),ZOe=class extends STn.BaseWriter{constructor(t,r){super(t),this._writerOptions=(0,Ip.applyDefaults)(r,{wellFormed:!1,prettyPrint:!1,indent:" ",newline:` +`,offset:0,group:!1,verbose:!1})}serialize(t){let r=(0,Ip.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1}),s=new vTn.ObjectWriter(this._builderOptions,r).serialize(t);return this._beginLine(this._writerOptions,0)+this._convertObject(s,this._writerOptions)}_convertObject(t,r,n=0){let s="",i=this._isLeafNode(t);if((0,Ip.isArray)(t)){s+="[";let a=t.length,o=0;for(let c of t)s+=this._endLine(r,n+1)+this._beginLine(r,n+1)+this._convertObject(c,r,n+1),o{i&&r.prettyPrint?s+=" ":s+=this._endLine(r,n+1)+this._beginLine(r,n+1),s+=this._key(c),r.prettyPrint&&(s+=" "),s+=this._convertObject(u,r,n+1),o0)return new Array(n).join(t.indent)}else return"";return""}_endLine(t,r){return t.prettyPrint?t.newline:""}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}_isLeafNode(t){return this._descendantCount(t)<=1}_descendantCount(t,r=0){return(0,Ip.isArray)(t)?(0,Ip.forEachArray)(t,n=>r+=this._descendantCount(n,r),this):(0,Ip.isObject)(t)?(0,Ip.forEachObject)(t,(n,s)=>r+=this._descendantCount(s,r),this):r++,r}};aQ.JSONWriter=ZOe});var fqt=S(oQ=>{"use strict";Object.defineProperty(oQ,"__esModule",{value:!0});oQ.YAMLWriter=void 0;var TTn=e3(),g_=Jn(),bTn=Cw(),e2e=class extends bTn.BaseWriter{constructor(t,r){if(super(t),this._writerOptions=(0,g_.applyDefaults)(r,{wellFormed:!1,indent:" ",newline:` +`,offset:0,group:!1,verbose:!1}),this._writerOptions.indent.length<2)throw new Error("YAML indententation string must be at least two characters long.");if(this._writerOptions.offset<0)throw new Error("YAML offset should be zero or a positive number.")}serialize(t){let r=(0,g_.applyDefaults)(this._writerOptions,{format:"object",wellFormed:!1}),s=new TTn.ObjectWriter(this._builderOptions,r).serialize(t),i=this._beginLine(this._writerOptions,0)+"---"+this._endLine(this._writerOptions)+this._convertObject(s,this._writerOptions,0);return i.slice(-this._writerOptions.newline.length)===this._writerOptions.newline&&(i=i.slice(0,-this._writerOptions.newline.length)),i}_convertObject(t,r,n,s=!1){let i="";if((0,g_.isArray)(t))for(let a of t)i+=this._beginLine(r,n,!0),(0,g_.isObject)(a)?(0,g_.isEmpty)(a)?i+='""'+this._endLine(r):i+=this._convertObject(a,r,n,!0):i+=this._val(a)+this._endLine(r);else(0,g_.forEachObject)(t,(a,o)=>{s?(i+=this._key(a),s=!1):i+=this._beginLine(r,n)+this._key(a),!(0,g_.isObject)(o)&&!(0,g_.isArray)(o)?i+=" "+this._val(o)+this._endLine(r):(0,g_.isEmpty)(o)?i+=' ""'+this._endLine(r):i+=this._endLine(r)+this._convertObject(o,r,n+1)},this);return i}_beginLine(t,r,n=!1){let s=t.offset+r+1,i=new Array(s).join(t.indent);return n?i.substr(0,i.length-2)+"-"+i.substr(-1,1):i}_endLine(t){return t.newline}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};oQ.YAMLWriter=e2e});var hqt=S(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});mf.YAMLWriter=mf.JSONWriter=mf.ObjectWriter=mf.XMLWriter=mf.MapWriter=void 0;var ITn=cqt();Object.defineProperty(mf,"MapWriter",{enumerable:!0,get:function(){return ITn.MapWriter}});var RTn=lqt();Object.defineProperty(mf,"XMLWriter",{enumerable:!0,get:function(){return RTn.XMLWriter}});var CTn=e3();Object.defineProperty(mf,"ObjectWriter",{enumerable:!0,get:function(){return CTn.ObjectWriter}});var xTn=dqt();Object.defineProperty(mf,"JSONWriter",{enumerable:!0,get:function(){return xTn.JSONWriter}});var wTn=fqt();Object.defineProperty(mf,"YAMLWriter",{enumerable:!0,get:function(){return wTn.YAMLWriter}})});var pqt=S(uQ=>{"use strict";Object.defineProperty(uQ,"__esModule",{value:!0});uQ.ChildNodeImpl=void 0;var cQ=vs(),by=Ln(),t2e=class{before(...t){let r=cQ.Cast.asNode(this),n=r._parent;if(n===null)return;let s=r._previousSibling,i=!0;for(;i&&s;){i=!1;for(let o=0;o{"use strict";Object.defineProperty(lQ,"__esModule",{value:!0});lQ.DocumentOrShadowRootImpl=void 0;var r2e=class{};lQ.DocumentOrShadowRootImpl=r2e});var gqt=S(dQ=>{"use strict";Object.defineProperty(dQ,"__esModule",{value:!0});dQ.MutationObserverImpl=void 0;var NTn=ea(),OTn=vs(),n2e=ha(),s2e=class{_callback;_nodeList=[];_recordQueue=[];constructor(t){this._callback=t;let r=NTn.dom.window;n2e.set.append(r._mutationObservers,this)}observe(t,r){if(r=r||{childList:!1,subtree:!1},(r.attributeOldValue!==void 0||r.attributeFilter!==void 0)&&r.attributes===void 0&&(r.attributes=!0),r.characterDataOldValue!==void 0&&r.characterData===void 0&&(r.characterData=!0),!r.childList&&!r.attributes&&!r.characterData)throw new TypeError;if(r.attributeOldValue&&!r.attributes)throw new TypeError;if(r.attributeFilter!==void 0&&!r.attributes)throw new TypeError;if(r.characterDataOldValue&&!r.characterData)throw new TypeError;let n=!1,s=r;for(let i of t._registeredObserverList)if(i.observer===this){n=!0;for(let a of this._nodeList)n2e.list.remove(a._registeredObserverList,o=>OTn.Guard.isTransientRegisteredObserver(o)&&o.source===i);i.options=s}n||(t._registeredObserverList.push({observer:this,options:r}),this._nodeList.push(t))}disconnect(){for(let t of this._nodeList)n2e.list.remove(t._registeredObserverList,r=>r.observer===this);this._recordQueue=[]}takeRecords(){let t=this._recordQueue;return this._recordQueue=[],t}};dQ.MutationObserverImpl=s2e});var _qt=S(hQ=>{"use strict";Object.defineProperty(hQ,"__esModule",{value:!0});hQ.NonDocumentTypeChildNodeImpl=void 0;var fQ=vs(),i2e=class{get previousElementSibling(){let t=fQ.Cast.asNode(this)._previousSibling;for(;t;){if(fQ.Guard.isElementNode(t))return t;t=t._previousSibling}return null}get nextElementSibling(){let t=fQ.Cast.asNode(this)._nextSibling;for(;t;){if(fQ.Guard.isElementNode(t))return t;t=t._nextSibling}return null}};hQ.NonDocumentTypeChildNodeImpl=i2e});var Eqt=S(mQ=>{"use strict";Object.defineProperty(mQ,"__esModule",{value:!0});mQ.NonElementParentNodeImpl=void 0;var pQ=vs(),Aqt=Ln(),a2e=class{getElementById(t){let r=(0,Aqt.tree_getFirstDescendantNode)(pQ.Cast.asNode(this),!1,!1,n=>pQ.Guard.isElementNode(n));for(;r!==null;){if(r._uniqueIdentifier===t)return r;r=(0,Aqt.tree_getNextDescendantNode)(pQ.Cast.asNode(this),r,!1,!1,n=>pQ.Guard.isElementNode(n))}return null}};mQ.NonElementParentNodeImpl=a2e});var yqt=S(gQ=>{"use strict";Object.defineProperty(gQ,"__esModule",{value:!0});gQ.ParentNodeImpl=void 0;var B0=vs(),Iy=Ln(),o2e=class{get children(){return(0,Iy.create_htmlCollection)(B0.Cast.asNode(this))}get firstElementChild(){let t=B0.Cast.asNode(this)._firstChild;for(;t;){if(B0.Guard.isElementNode(t))return t;t=t._nextSibling}return null}get lastElementChild(){let t=B0.Cast.asNode(this)._lastChild;for(;t;){if(B0.Guard.isElementNode(t))return t;t=t._previousSibling}return null}get childElementCount(){let t=0;for(let r of B0.Cast.asNode(this)._children)B0.Guard.isElementNode(r)&&t++;return t}prepend(...t){let r=B0.Cast.asNode(this),n=(0,Iy.parentNode_convertNodesIntoANode)(t,r._nodeDocument);(0,Iy.mutation_preInsert)(n,r,r._firstChild)}append(...t){let r=B0.Cast.asNode(this),n=(0,Iy.parentNode_convertNodesIntoANode)(t,r._nodeDocument);(0,Iy.mutation_append)(n,r)}querySelector(t){let r=B0.Cast.asNode(this),n=(0,Iy.selectors_scopeMatchASelectorsString)(t,r);return n.length===0?null:n[0]}querySelectorAll(t){let r=B0.Cast.asNode(this),n=(0,Iy.selectors_scopeMatchASelectorsString)(t,r);return(0,Iy.create_nodeListStatic)(r,n)}};gQ.ParentNodeImpl=o2e});var vqt=S(_Q=>{"use strict";Object.defineProperty(_Q,"__esModule",{value:!0});_Q.SlotableImpl=void 0;var DTn=Ln(),c2e=class{__name;__assignedSlot;get _name(){return this.__name||""}set _name(t){this.__name=t}get _assignedSlot(){return this.__assignedSlot||null}set _assignedSlot(t){this.__assignedSlot=t}get assignedSlot(){return(0,DTn.shadowTree_findASlot)(this,!0)}};_Q.SlotableImpl=c2e});var Sqt=S(EQ=>{"use strict";Object.defineProperty(EQ,"__esModule",{value:!0});EQ.StaticRangeImpl=void 0;var PTn=fY(),LTn=xa(),AQ=vs(),u2e=class extends PTn.AbstractRangeImpl{_start;_end;constructor(t){if(super(),AQ.Guard.isDocumentTypeNode(t.startContainer)||AQ.Guard.isAttrNode(t.startContainer)||AQ.Guard.isDocumentTypeNode(t.endContainer)||AQ.Guard.isAttrNode(t.endContainer))throw new LTn.InvalidNodeTypeError;this._start=[t.startContainer,t.startOffset],this._end=[t.endContainer,t.endOffset]}};EQ.StaticRangeImpl=u2e});var vQ=S(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.XMLDocument=ct.Window=ct.TreeWalker=ct.Traverser=ct.Text=ct.StaticRange=ct.ShadowRoot=ct.Range=ct.ProcessingInstruction=ct.NodeListStatic=ct.NodeList=ct.NodeIterator=ct.Node=ct.NodeFilter=ct.NamedNodeMap=ct.MutationRecord=ct.MutationObserver=ct.HTMLCollection=ct.EventTarget=ct.Event=ct.Element=ct.DOMTokenList=ct.DOMImplementation=ct.dom=ct.DocumentType=ct.Document=ct.DocumentFragment=ct.CustomEvent=ct.Comment=ct.CharacterData=ct.CDATASection=ct.Attr=ct.AbstractRange=ct.AbortSignal=ct.AbortController=void 0;var ul=Jn(),MTn=NNe();Object.defineProperty(ct,"AbortController",{enumerable:!0,get:function(){return MTn.AbortControllerImpl}});var kTn=DNe();Object.defineProperty(ct,"AbortSignal",{enumerable:!0,get:function(){return kTn.AbortSignalImpl}});var BTn=fY();Object.defineProperty(ct,"AbstractRange",{enumerable:!0,get:function(){return BTn.AbstractRangeImpl}});var UTn=kNe();Object.defineProperty(ct,"Attr",{enumerable:!0,get:function(){return UTn.AttrImpl}});var FTn=UNe();Object.defineProperty(ct,"CDATASection",{enumerable:!0,get:function(){return FTn.CDATASectionImpl}});var l2e=qB();Object.defineProperty(ct,"CharacterData",{enumerable:!0,get:function(){return l2e.CharacterDataImpl}});var d2e=pqt(),$Tn=FNe();Object.defineProperty(ct,"Comment",{enumerable:!0,get:function(){return $Tn.CommentImpl}});var qTn=hOe();Object.defineProperty(ct,"CustomEvent",{enumerable:!0,get:function(){return qTn.CustomEventImpl}});var f2e=Yz();Object.defineProperty(ct,"DocumentFragment",{enumerable:!0,get:function(){return f2e.DocumentFragmentImpl}});var yQ=Bz();Object.defineProperty(ct,"Document",{enumerable:!0,get:function(){return yQ.DocumentImpl}});var Tqt=mqt(),bqt=PNe();Object.defineProperty(ct,"DocumentType",{enumerable:!0,get:function(){return bqt.DocumentTypeImpl}});var HTn=ea();Object.defineProperty(ct,"dom",{enumerable:!0,get:function(){return HTn.dom}});var VTn=Lwe();Object.defineProperty(ct,"DOMImplementation",{enumerable:!0,get:function(){return VTn.DOMImplementationImpl}});var jTn=oOe();Object.defineProperty(ct,"DOMTokenList",{enumerable:!0,get:function(){return jTn.DOMTokenListImpl}});var t3=Kz();Object.defineProperty(ct,"Element",{enumerable:!0,get:function(){return t3.ElementImpl}});var KTn=RY();Object.defineProperty(ct,"Event",{enumerable:!0,get:function(){return KTn.EventImpl}});var GTn=BB();Object.defineProperty(ct,"EventTarget",{enumerable:!0,get:function(){return GTn.EventTargetImpl}});var zTn=HNe();Object.defineProperty(ct,"HTMLCollection",{enumerable:!0,get:function(){return zTn.HTMLCollectionImpl}});var YTn=gqt();Object.defineProperty(ct,"MutationObserver",{enumerable:!0,get:function(){return YTn.MutationObserverImpl}});var QTn=iOe();Object.defineProperty(ct,"MutationRecord",{enumerable:!0,get:function(){return QTn.MutationRecordImpl}});var WTn=YNe();Object.defineProperty(ct,"NamedNodeMap",{enumerable:!0,get:function(){return WTn.NamedNodeMapImpl}});var XTn=nOe();Object.defineProperty(ct,"NodeFilter",{enumerable:!0,get:function(){return XTn.NodeFilterImpl}});var JTn=my();Object.defineProperty(ct,"Node",{enumerable:!0,get:function(){return JTn.NodeImpl}});var ZTn=eOe();Object.defineProperty(ct,"NodeIterator",{enumerable:!0,get:function(){return ZTn.NodeIteratorImpl}});var ebn=jNe();Object.defineProperty(ct,"NodeList",{enumerable:!0,get:function(){return ebn.NodeListImpl}});var tbn=GNe();Object.defineProperty(ct,"NodeListStatic",{enumerable:!0,get:function(){return tbn.NodeListStaticImpl}});var Iqt=_qt(),Rqt=Eqt(),h2e=yqt(),rbn=$Ne();Object.defineProperty(ct,"ProcessingInstruction",{enumerable:!0,get:function(){return rbn.ProcessingInstructionImpl}});var nbn=XNe();Object.defineProperty(ct,"Range",{enumerable:!0,get:function(){return nbn.RangeImpl}});var Cqt=MNe();Object.defineProperty(ct,"ShadowRoot",{enumerable:!0,get:function(){return Cqt.ShadowRootImpl}});var xqt=vqt(),sbn=Sqt();Object.defineProperty(ct,"StaticRange",{enumerable:!0,get:function(){return sbn.StaticRangeImpl}});var wqt=eY();Object.defineProperty(ct,"Text",{enumerable:!0,get:function(){return wqt.TextImpl}});var ibn=gY();Object.defineProperty(ct,"Traverser",{enumerable:!0,get:function(){return ibn.TraverserImpl}});var abn=rOe();Object.defineProperty(ct,"TreeWalker",{enumerable:!0,get:function(){return abn.TreeWalkerImpl}});var obn=hNe();Object.defineProperty(ct,"Window",{enumerable:!0,get:function(){return obn.WindowImpl}});var cbn=xNe();Object.defineProperty(ct,"XMLDocument",{enumerable:!0,get:function(){return cbn.XMLDocumentImpl}});(0,ul.applyMixin)(t3.ElementImpl,d2e.ChildNodeImpl);(0,ul.applyMixin)(l2e.CharacterDataImpl,d2e.ChildNodeImpl);(0,ul.applyMixin)(bqt.DocumentTypeImpl,d2e.ChildNodeImpl);(0,ul.applyMixin)(yQ.DocumentImpl,Tqt.DocumentOrShadowRootImpl);(0,ul.applyMixin)(Cqt.ShadowRootImpl,Tqt.DocumentOrShadowRootImpl);(0,ul.applyMixin)(t3.ElementImpl,Iqt.NonDocumentTypeChildNodeImpl);(0,ul.applyMixin)(l2e.CharacterDataImpl,Iqt.NonDocumentTypeChildNodeImpl);(0,ul.applyMixin)(yQ.DocumentImpl,Rqt.NonElementParentNodeImpl);(0,ul.applyMixin)(f2e.DocumentFragmentImpl,Rqt.NonElementParentNodeImpl);(0,ul.applyMixin)(yQ.DocumentImpl,h2e.ParentNodeImpl);(0,ul.applyMixin)(f2e.DocumentFragmentImpl,h2e.ParentNodeImpl);(0,ul.applyMixin)(t3.ElementImpl,h2e.ParentNodeImpl);(0,ul.applyMixin)(wqt.TextImpl,xqt.SlotableImpl);(0,ul.applyMixin)(t3.ElementImpl,xqt.SlotableImpl)});var TQ=S(SQ=>{"use strict";Object.defineProperty(SQ,"__esModule",{value:!0});SQ.TokenType=void 0;var Nqt;(function(e){e[e.EOF=0]="EOF",e[e.Declaration=1]="Declaration",e[e.DocType=2]="DocType",e[e.Element=3]="Element",e[e.Text=4]="Text",e[e.CDATA=5]="CDATA",e[e.PI=6]="PI",e[e.Comment=7]="Comment",e[e.ClosingTag=8]="ClosingTag"})(Nqt||(SQ.TokenType=Nqt={}))});var m2e=S(bQ=>{"use strict";Object.defineProperty(bQ,"__esModule",{value:!0});bQ.XMLStringLexer=void 0;var uu=TQ(),p2e=class e{_str;_index;_length;_options={skipWhitespaceOnlyText:!1};err={line:-1,col:-1,index:-1,str:""};constructor(t,r){this._str=t,this._index=0,this._length=t.length,r&&(this._options.skipWhitespaceOnlyText=r.skipWhitespaceOnlyText||!1)}nextToken(){if(this.eof())return{type:uu.TokenType.EOF};let t=this.skipIfStartsWith("<")?this.openBracket():this.text();return this._options.skipWhitespaceOnlyText&&t.type===uu.TokenType.Text&&e.isWhiteSpaceToken(t)&&(t=this.nextToken()),t}openBracket(){if(this.skipIfStartsWith("?"))return this.skipIfStartsWith("xml")?e.isSpace(this._str[this._index])?this.declaration():(this.seek(-3),this.pi()):this.pi();if(this.skipIfStartsWith("!")){if(this.skipIfStartsWith("--"))return this.comment();if(this.skipIfStartsWith("[CDATA["))return this.cdata();if(this.skipIfStartsWith("DOCTYPE"))return this.doctype();this.throwError("Invalid '!' in opening tag.")}else return this.skipIfStartsWith("/")?this.closeTag():this.openTag()}declaration(){let t="",r="",n="";for(;!this.eof();){if(this.skipSpace(),this.skipIfStartsWith("?>"))return{type:uu.TokenType.Declaration,version:t,encoding:r,standalone:n};{let[s,i]=this.attribute();s==="version"?t=i:s==="encoding"?r=i:s==="standalone"?n=i:this.throwError("Invalid attribute name: "+s)}}this.throwError("Missing declaration end symbol `?>`")}doctype(){let t="",r="";this.skipSpace();let n=this.takeUntil2("[",">",!0);return this.skipSpace(),this.skipIfStartsWith("PUBLIC")?(t=this.quotedString(),r=this.quotedString()):this.skipIfStartsWith("SYSTEM")&&(r=this.quotedString()),this.skipSpace(),this.skipIfStartsWith("[")&&(this.skipUntil("]"),this.skipIfStartsWith("]")||this.throwError("Missing end bracket of DTD internal subset")),this.skipSpace(),this.skipIfStartsWith(">")||this.throwError("Missing doctype end symbol `>`"),{type:uu.TokenType.DocType,name:n,pubId:t,sysId:r}}pi(){let t=this.takeUntilStartsWith("?>",!0);if(this.eof()&&this.throwError("Missing processing instruction end symbol `?>`"),this.skipSpace(),this.skipIfStartsWith("?>"))return{type:uu.TokenType.PI,target:t,data:""};let r=this.takeUntilStartsWith("?>");return this.eof()&&this.throwError("Missing processing instruction end symbol `?>`"),this.seek(2),{type:uu.TokenType.PI,target:t,data:r}}text(){let t=this.takeUntil("<");return{type:uu.TokenType.Text,data:t}}comment(){let t=this.takeUntilStartsWith("-->");return this.eof()&&this.throwError("Missing comment end symbol `-->`"),this.seek(3),{type:uu.TokenType.Comment,data:t}}cdata(){let t=this.takeUntilStartsWith("]]>");return this.eof()&&this.throwError("Missing CDATA end symbol `]>`"),this.seek(3),{type:uu.TokenType.CDATA,data:t}}openTag(){this.skipSpace();let t=this.takeUntil2(">","/",!0);if(this.skipSpace(),this.skipIfStartsWith(">"))return{type:uu.TokenType.Element,name:t,attributes:[],selfClosing:!1};if(this.skipIfStartsWith("/>"))return{type:uu.TokenType.Element,name:t,attributes:[],selfClosing:!0};let r=[];for(;!this.eof();){if(this.skipSpace(),this.skipIfStartsWith(">"))return{type:uu.TokenType.Element,name:t,attributes:r,selfClosing:!1};if(this.skipIfStartsWith("/>"))return{type:uu.TokenType.Element,name:t,attributes:r,selfClosing:!0};let n=this.attribute();r.push(n)}this.throwError("Missing opening element tag end symbol `>`")}closeTag(){this.skipSpace();let t=this.takeUntil(">",!0);return this.skipSpace(),this.skipIfStartsWith(">")||this.throwError("Missing closing element tag end symbol `>`"),{type:uu.TokenType.ClosingTag,name:t}}attribute(){this.skipSpace();let t=this.takeUntil("=",!0);this.skipSpace(),this.skipIfStartsWith("=")||this.throwError("Missing equals sign before attribute value");let r=this.quotedString();return[t,r]}quotedString(){this.skipSpace();let t=this.take(1);e.isQuote(t)||this.throwError("Missing start quote character before quoted value");let r=this.takeUntil(t);return this.skipIfStartsWith(t)||this.throwError("Missing end quote character after quoted value"),r}eof(){return this._index>=this._length}skipIfStartsWith(t){let r=t.length;if(r===1)return this._str[this._index]===t?(this._index++,!0):!1;for(let n=0;nthis._length&&(this._index=this._length)}skipSpace(){for(;!this.eof()&&e.isSpace(this._str[this._index]);)this._index++}take(t){if(t===1)return this._str[this._index++];let r=this._index;return this.seek(t),this._str.slice(r,this._index)}takeUntil(t,r=!1){let n=this._index;for(;this._indexthis._index){a=n.index;break}throw this.err={line:s,col:this._index-i,index:this._index,str:this._str.substring(i,a)},new Error(t+` Index: `+this.err.index+` Ln: `+this.err.line+", Col: "+this.err.col+` -Input: `+this.err.str)}[Symbol.iterator](){return this._index=0,{next:function(){let t=this.nextToken();return t.type===lu.TokenType.EOF?{done:!0,value:null}:{done:!1,value:t}}.bind(this)}}};yV.XMLStringLexer=swe});var sPt=b(_V=>{"use strict";Object.defineProperty(_V,"__esModule",{value:!0});_V.XMLParserImpl=void 0;var fin=awe(),x0=gV(),owe=Ts(),Yl=en(),pin=oM(),uwe=class{parse(t){let r=new fin.XMLStringLexer(t,{skipWhitespaceOnlyText:!0}),n=(0,Yl.create_document)(),i=n,s=r.nextToken();for(;s.type!==x0.TokenType.EOF;){switch(s.type){case x0.TokenType.Declaration:let a=s;if(a.version!=="1.0")throw new Error("Invalid xml version: "+a.version);break;case x0.TokenType.DocType:let o=s;if(!(0,Yl.xml_isPubidChar)(o.pubId))throw new Error("DocType public identifier does not match PubidChar construct.");if(!(0,Yl.xml_isLegalChar)(o.sysId)||o.sysId.indexOf('"')!==-1&&o.sysId.indexOf("'")!==-1)throw new Error("DocType system identifier contains invalid characters.");i.appendChild(n.implementation.createDocumentType(o.name,o.pubId,o.sysId));break;case x0.TokenType.CDATA:let u=s;if(!(0,Yl.xml_isLegalChar)(u.data)||u.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters.");i.appendChild(n.createCDATASection(u.data));break;case x0.TokenType.Comment:let c=s;if(!(0,Yl.xml_isLegalChar)(c.data)||c.data.indexOf("--")!==-1||c.data.endsWith("-"))throw new Error("Comment data contains invalid characters.");i.appendChild(n.createComment(c.data));break;case x0.TokenType.PI:let l=s;if(l.target.indexOf(":")!==-1||/^xml$/i.test(l.target))throw new Error("Processing instruction target contains invalid characters.");if(!(0,Yl.xml_isLegalChar)(l.data)||l.data.indexOf("?>")!==-1)throw new Error("Processing instruction data contains invalid characters.");i.appendChild(n.createProcessingInstruction(l.target,l.data));break;case x0.TokenType.Text:let d=s;if(!(0,Yl.xml_isLegalChar)(d.data))throw new Error("Text data contains invalid characters.");i.appendChild(n.createTextNode(this._decodeText(d.data)));break;case x0.TokenType.Element:let f=s,[p,h]=(0,Yl.namespace_extractQName)(f.name);if(h.indexOf(":")!==-1||!(0,Yl.xml_isName)(h))throw new Error("Node local name contains invalid characters.");if(p==="xmlns")throw new Error("An element cannot have the 'xmlns' prefix.");let m=i.lookupNamespaceURI(p),y={};for(let[_,E]of f.attributes)if(_==="xmlns")m=E;else{let[S,C]=(0,Yl.namespace_extractQName)(_);S==="xmlns"&&(C===p&&(m=E),y[C]=E)}let g=m!==null?n.createElementNS(m,f.name):n.createElement(f.name);i.appendChild(g);let v=new pin.LocalNameSet;for(let[_,E]of f.attributes){let[S,C]=(0,Yl.namespace_extractQName)(_),I=null;if(S==="xmlns"||S===null&&C==="xmlns"?I=owe.namespace.XMLNS:(I=g.lookupNamespaceURI(S),I!==null&&g.isDefaultNamespace(I)?I=null:I===null&&S!==null&&(I=y[S]||null)),v.has(I,C))throw new Error("Element contains duplicate attributes.");if(v.set(I,C),I===owe.namespace.XMLNS&&E===owe.namespace.XMLNS)throw new Error("XMLNS namespace is reserved.");if(C.indexOf(":")!==-1||!(0,Yl.xml_isName)(C))throw new Error("Attribute local name contains invalid characters.");if(S==="xmlns"&&E==="")throw new Error("Empty XML namespace is not allowed.");I!==null?g.setAttributeNS(I,_,this._decodeAttributeValue(E)):g.setAttribute(_,this._decodeAttributeValue(E))}f.selfClosing||(i=g);break;case x0.TokenType.ClosingTag:if(s.name!==i.nodeName)throw new Error("Closing tag name does not match opening tag name.");i._parent&&(i=i._parent);break}s=r.nextToken()}return n}_decodeText(t){return t==null?t:t.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}_decodeAttributeValue(t){return t==null?t:t.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}};_V.XMLParserImpl=uwe});var aPt=b(AV=>{"use strict";Object.defineProperty(AV,"__esModule",{value:!0});AV.DOMParserImpl=void 0;var hin=en(),min=sPt(),cwe=class{parseFromString(t,r){if(r==="text/html")throw new Error("HTML parser not implemented.");try{let i=new min.XMLParserImpl().parse(t);return i._contentType=r,i}catch(n){let i="http://www.mozilla.org/newlayout/xml/parsererror.xml",s=(0,hin.create_xmlDocument)(),a=s.createElementNS(i,"parsererror"),o=s.createElementNS(i,"error");return o.setAttribute("message",n.message),a.appendChild(o),s.appendChild(a),s}}};AV.DOMParserImpl=cwe});var oPt=b(vV=>{"use strict";Object.defineProperty(vV,"__esModule",{value:!0});vV.DOMParser=void 0;var gin=aPt();Object.defineProperty(vV,"DOMParser",{enumerable:!0,get:function(){return gin.DOMParserImpl}})});var cPt=b(bV=>{"use strict";Object.defineProperty(bV,"__esModule",{value:!0});bV.XMLSerializerImpl=void 0;var No=fn(),yin=oM(),_in=aH(),uPt=$s(),C0=Ts(),nh=en(),lwe=class e{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);serializeToString(t){return this._xmlSerialization(t,!1)}_xmlSerialization(t,r){if(t._nodeDocument===void 0||t._nodeDocument._hasNamespaces){let i=new _in.NamespacePrefixMap;i.set("xml",C0.namespace.XML);let s={value:1};try{return this._serializeNodeNS(t,null,i,s,r)}catch{throw new uPt.InvalidStateError}}else try{return this._serializeNode(t,r)}catch{throw new uPt.InvalidStateError}}_serializeNodeNS(t,r,n,i,s){switch(t.nodeType){case No.NodeType.Element:return this._serializeElementNS(t,r,n,i,s);case No.NodeType.Document:return this._serializeDocumentNS(t,r,n,i,s);case No.NodeType.Comment:return this._serializeComment(t,s);case No.NodeType.Text:return this._serializeText(t,s);case No.NodeType.DocumentFragment:return this._serializeDocumentFragmentNS(t,r,n,i,s);case No.NodeType.DocumentType:return this._serializeDocumentType(t,s);case No.NodeType.ProcessingInstruction:return this._serializeProcessingInstruction(t,s);case No.NodeType.CData:return this._serializeCData(t,s);default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeNode(t,r){switch(t.nodeType){case No.NodeType.Element:return this._serializeElement(t,r);case No.NodeType.Document:return this._serializeDocument(t,r);case No.NodeType.Comment:return this._serializeComment(t,r);case No.NodeType.Text:return this._serializeText(t,r);case No.NodeType.DocumentFragment:return this._serializeDocumentFragment(t,r);case No.NodeType.DocumentType:return this._serializeDocumentType(t,r);case No.NodeType.ProcessingInstruction:return this._serializeProcessingInstruction(t,r);case No.NodeType.CData:return this._serializeCData(t,r);default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeElementNS(t,r,n,i,s){if(s&&(t.localName.indexOf(":")!==-1||!(0,nh.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let a="<",o="",u=!1,c=!1,l=n.copy(),d={},f=this._recordNamespaceInformation(t,l,d),p=r,h=t.namespaceURI;if(p===h)f!==null&&(c=!0),h===C0.namespace.XML?o="xml:"+t.localName:o=t.localName,a+=o;else{let y=t.prefix,g=null;if((y!==null||h!==f)&&(g=l.get(y,h)),y==="xmlns"){if(s)throw new Error("An element cannot have the 'xmlns' prefix (well-formed required).");g=y}g!==null?(o=g+":"+t.localName,f!==null&&f!==C0.namespace.XML&&(p=f||null),a+=o):y!==null?(y in d&&(y=this._generatePrefix(h,l,i)),l.set(y,h),o+=y+":"+t.localName,a+=o,a+=" xmlns:"+y+'="'+this._serializeAttributeValue(h,s)+'"',f!==null&&(p=f||null)):f===null||f!==null&&f!==h?(c=!0,o+=t.localName,p=h,a+=o,a+=' xmlns="'+this._serializeAttributeValue(h,s)+'"'):(o+=t.localName,p=h,a+=o)}a+=this._serializeAttributesNS(t,l,i,d,c,s);let m=h===C0.namespace.HTML;if(m&&t.childNodes.length===0&&e._VoidElementNames.has(t.localName)?(a+=" /",u=!0):!m&&t.childNodes.length===0&&(a+="/",u=!0),a+=">",u)return a;if(!(m&&t.localName==="template"))for(let y of t._children||t.childNodes)a+=this._serializeNodeNS(y,p,l,i,s);return a+="",a}_serializeDocumentNS(t,r,n,i,s){if(s&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");let a="";for(let o of t._children||t.childNodes)a+=this._serializeNodeNS(o,r,n,i,s);return a}_serializeComment(t,r){if(r&&(!(0,nh.xml_isLegalChar)(t.data)||t.data.indexOf("--")!==-1||t.data.endsWith("-")))throw new Error("Comment data contains invalid characters (well-formed required).");return""}_serializeText(t,r){if(r&&!(0,nh.xml_isLegalChar)(t.data))throw new Error("Text data contains invalid characters (well-formed required).");let n="";for(let i=0;i"?n+=">":n+=s}return n}_serializeDocumentFragmentNS(t,r,n,i,s){let a="";for(let o of t._children||t.childNodes)a+=this._serializeNodeNS(o,r,n,i,s);return a}_serializeDocumentType(t,r){if(r&&!(0,nh.xml_isPubidChar)(t.publicId))throw new Error("DocType public identifier does not match PubidChar construct (well-formed required).");if(r&&(!(0,nh.xml_isLegalChar)(t.systemId)||t.systemId.indexOf('"')!==-1&&t.systemId.indexOf("'")!==-1))throw new Error("DocType system identifier contains invalid characters (well-formed required).");return t.publicId&&t.systemId?"':t.publicId?"':t.systemId?"':""}_serializeProcessingInstruction(t,r){if(r&&(t.target.indexOf(":")!==-1||/^xml$/i.test(t.target)))throw new Error("Processing instruction target contains invalid characters (well-formed required).");if(r&&(!(0,nh.xml_isLegalChar)(t.data)||t.data.indexOf("?>")!==-1))throw new Error("Processing instruction data contains invalid characters (well-formed required).");return""}_serializeCData(t,r){if(r&&t.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters (well-formed required).");return""}_serializeAttributesNS(t,r,n,i,s,a){let o="",u=a?new yin.LocalNameSet:void 0;for(let c of t.attributes){if(!s&&!a&&c.namespaceURI===null){o+=" "+c.localName+'="'+this._serializeAttributeValue(c.value,a)+'"';continue}if(a&&u&&u.has(c.namespaceURI,c.localName))throw new Error("Element contains duplicate attributes (well-formed required).");a&&u&&u.set(c.namespaceURI,c.localName);let l=c.namespaceURI,d=null;if(l!==null)if(d=r.get(c.prefix,l),l===C0.namespace.XMLNS){if(c.value===C0.namespace.XML||c.prefix===null&&s||c.prefix!==null&&(!(c.localName in i)||i[c.localName]!==c.value)&&r.has(c.localName,c.value))continue;if(a&&c.value===C0.namespace.XMLNS)throw new Error("XMLNS namespace is reserved (well-formed required).");if(a&&c.value==="")throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required).");c.prefix==="xmlns"&&(d="xmlns")}else d===null&&(c.prefix!==null&&(!r.hasPrefix(c.prefix)||r.has(c.prefix,l))?d=c.prefix:d=this._generatePrefix(l,r,n),o+=" xmlns:"+d+'="'+this._serializeAttributeValue(l,a)+'"');if(o+=" ",d!==null&&(o+=d+":"),a&&(c.localName.indexOf(":")!==-1||!(0,nh.xml_isName)(c.localName)||c.localName==="xmlns"&&l===null))throw new Error("Attribute local name contains invalid characters (well-formed required).");o+=c.localName+'="'+this._serializeAttributeValue(c.value,a)+'"'}return o}_recordNamespaceInformation(t,r,n){let i=null;for(let s of t.attributes){let a=s.namespaceURI,o=s.prefix;if(a===C0.namespace.XMLNS)if(o===null){i=s.value;continue}else{let u=s.localName,c=s.value;if(c===C0.namespace.XML||(c===""&&(c=null),r.has(u,c)))continue;r.set(u,c),n[u]=c||""}}return i}_generatePrefix(t,r,n){let i="ns"+n.value;return n.value++,r.set(i,t),i}_serializeAttributeValue(t,r){if(r&&t!==null&&!(0,nh.xml_isLegalChar)(t))throw new Error("Invalid characters in attribute value.");if(t===null)return"";let n="";for(let i=0;i"?n+=">":n+=s}return n}_serializeElement(t,r){if(r&&(t.localName.indexOf(":")!==-1||!(0,nh.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let n=!1,i=t.localName,s="<"+i;if(s+=this._serializeAttributes(t,r),t._children.size===0&&(s+="/",n=!0),s+=">",n)return s;for(let a of t._children)s+=this._serializeNode(a,r);return s+="",s}_serializeDocument(t,r){if(r&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");let n="";for(let i of t._children)n+=this._serializeNode(i,r);return n}_serializeDocumentFragment(t,r){let n="";for(let i of t._children)n+=this._serializeNode(i,r);return n}_serializeAttributes(t,r){let n="",i=r?{}:void 0;for(let s of t.attributes){if(r&&i&&s.localName in i)throw new Error("Element contains duplicate attributes (well-formed required).");if(r&&i&&(i[s.localName]=!0),r&&(s.localName.indexOf(":")!==-1||!(0,nh.xml_isName)(s.localName)))throw new Error("Attribute local name contains invalid characters (well-formed required).");n+=" "+s.localName+'="'+this._serializeAttributeValue(s.value,r)+'"'}return n}};bV.XMLSerializerImpl=lwe});var lPt=b(EV=>{"use strict";Object.defineProperty(EV,"__esModule",{value:!0});EV.XMLSerializer=void 0;var Ain=cPt();Object.defineProperty(EV,"XMLSerializer",{enumerable:!0,get:function(){return Ain.XMLSerializerImpl}})});var dPt=b(b_=>{"use strict";Object.defineProperty(b_,"__esModule",{value:!0});b_.XMLSerializer=b_.DOMParser=b_.DOMImplementation=void 0;var vin=hV();vin.dom.setFeatures(!0);var bin=hV();Object.defineProperty(b_,"DOMImplementation",{enumerable:!0,get:function(){return bin.DOMImplementation}});var Ein=oPt();Object.defineProperty(b_,"DOMParser",{enumerable:!0,get:function(){return Ein.DOMParser}});var Sin=lPt();Object.defineProperty(b_,"XMLSerializer",{enumerable:!0,get:function(){return Sin.XMLSerializer}})});var wV=b(SV=>{"use strict";Object.defineProperty(SV,"__esModule",{value:!0});SV.createDocument=xin;SV.sanitizeInput=Cin;var win=dPt(),Iin=hV(),fPt=gn();Iin.dom.setFeatures(!1);function xin(){let t=new win.DOMImplementation().createDocument(null,"root",null);return t.documentElement&&t.removeChild(t.documentElement),t}function Cin(e,t){if(e==null)return e;if(t===void 0)return e+"";{let r="";e=e+"";for(let n=0;n=32&&i<=55295||i>=57344&&i<=65533)r+=e.charAt(n);else if(i>=55296&&i<=56319&&n=56320&&s<=57343?(i=(i-55296)*1024+s-56320+65536,r+=String.fromCodePoint(i),n++):r+=(0,fPt.isString)(t)?t:t(e.charAt(n),n,e)}else r+=(0,fPt.isString)(t)?t:t(e.charAt(n),n,e)}return r}}});var CM=b(IV=>{"use strict";Object.defineProperty(IV,"__esModule",{value:!0});IV.BaseReader=void 0;var Tin=wV(),dwe=class e{_builderOptions;static _entityTable={lt:"<",gt:">",amp:"&",quot:'"',apos:"'"};constructor(t){this._builderOptions=t,t.parser&&Object.assign(this,t.parser)}_docType(t,r,n,i){return t.dtd({name:r,pubID:n,sysID:i})}_comment(t,r){return t.com(r)}_text(t,r){return t.txt(r)}_instruction(t,r,n){return t.ins(r,n)}_cdata(t,r){return t.dat(r)}_element(t,r,n){return r===void 0?t.ele(n):t.ele(r,n)}_attribute(t,r,n,i){return r===void 0?t.att(n,i):t.att(r,n,i)}_sanitize(t){return(0,Tin.sanitizeInput)(t,this._builderOptions.invalidCharReplacement)}_decodeText(t){return t==null?t:t.replace(/&(quot|amp|apos|lt|gt);/g,(r,n)=>e._entityTable[n]).replace(/&#(?:x([a-fA-F0-9]+)|([0-9]+));/g,(r,n,i)=>String.fromCodePoint(parseInt(n||i,n?16:10)))}_decodeAttributeValue(t){return this._decodeText(t)}parse(t,r){return this._parse(t,r)}docType(t,r,n,i){return this._docType(t,r,n,i)}comment(t,r){return this._comment(t,r)}text(t,r){return this._text(t,r)}instruction(t,r,n){return this._instruction(t,r,n)}cdata(t,r){return this._cdata(t,r)}element(t,r,n){return this._element(t,r,n)}attribute(t,r,n,i){return this._attribute(t,r,n,i)}sanitize(t){return this._sanitize(t)}};IV.BaseReader=dwe});var pPt=b(xV=>{"use strict";Object.defineProperty(xV,"__esModule",{value:!0});xV.XMLReader=void 0;var Nin=awe(),T0=gV(),Rin=fn(),Din=Ts(),fwe=en(),kin=CM(),pwe=class extends kin.BaseReader{_parse(t,r){let n=new Nin.XMLStringLexer(r,{skipWhitespaceOnlyText:this._builderOptions.skipWhitespaceOnlyText}),i=t,s=t,a=n.nextToken();for(;a.type!==T0.TokenType.EOF;){switch(a.type){case T0.TokenType.Declaration:let o=a,u=this.sanitize(o.version);if(u!=="1.0")throw new Error("Invalid xml version: "+u);let c={version:u};o.encoding&&(c.encoding=this.sanitize(o.encoding)),o.standalone&&(c.standalone=this.sanitize(o.standalone)==="yes"),s.set(c);break;case T0.TokenType.DocType:let l=a;s=this.docType(s,this.sanitize(l.name),this.sanitize(l.pubId),this.sanitize(l.sysId))||s;break;case T0.TokenType.CDATA:let d=a;s=this.cdata(s,this.sanitize(d.data))||s;break;case T0.TokenType.Comment:let f=a;s=this.comment(s,this.sanitize(f.data))||s;break;case T0.TokenType.PI:let p=a;s=this.instruction(s,this.sanitize(p.target),this.sanitize(p.data))||s;break;case T0.TokenType.Text:if(s.node.nodeType===Rin.NodeType.Document)break;let h=a;s=this.text(s,this._decodeText(this.sanitize(h.data)))||s;break;case T0.TokenType.Element:let m=a,y=this.sanitize(m.name),[g]=(0,fwe.namespace_extractQName)(y),v=s.node.lookupNamespaceURI(g),A={};for(let[E,S]of m.attributes)if(E=this.sanitize(E),S=this.sanitize(S),E==="xmlns")v=S;else{let[C,I]=(0,fwe.namespace_extractQName)(E);C==="xmlns"&&(I===g&&(v=S),A[I]=S)}let _=v!==null?this.element(s,v,y):this.element(s,void 0,y);if(_===void 0)break;s.node===t.node&&(i=_);for(let[E,S]of m.attributes){E=this.sanitize(E),S=this.sanitize(S);let[C,I]=(0,fwe.namespace_extractQName)(E),N=null;C==="xmlns"||C===null&&I==="xmlns"?N=Din.namespace.XMLNS:(N=_.node.lookupNamespaceURI(C),N!==null&&_.node.isDefaultNamespace(N)?N=null:N===null&&C!==null&&(N=A[C]||null)),N!==null?this.attribute(_,N,E,this._decodeAttributeValue(S)):this.attribute(_,void 0,E,this._decodeAttributeValue(S))}m.selfClosing||(s=_);break;case T0.TokenType.ClosingTag:s.node.parentNode&&(s=s.up());break}a=n.nextToken()}return i}};xV.XMLReader=pwe});var TV=b(CV=>{"use strict";Object.defineProperty(CV,"__esModule",{value:!0});CV.ObjectReader=void 0;var Sr=gn(),Oin=CM(),hwe=class extends Oin.BaseReader{_parse(t,r){let n=this._builderOptions,i=null;return(0,Sr.isFunction)(r)?i=this.parse(t,r.call(this)):(0,Sr.isArray)(r)||(0,Sr.isSet)(r)?(0,Sr.forEachArray)(r,s=>i=this.parse(t,s),this):(0,Sr.isMap)(r)||(0,Sr.isObject)(r)?(0,Sr.forEachObject)(r,(s,a)=>{if((0,Sr.isFunction)(a)&&(a=a.call(this)),!n.ignoreConverters&&s.indexOf(n.convert.att)===0)if(s===n.convert.att){if((0,Sr.isArray)(a)||(0,Sr.isSet)(a))throw new Error("Invalid attribute: "+a.toString()+". "+t._debugInfo());(0,Sr.forEachObject)(a,(o,u)=>{i=this.attribute(t,void 0,this.sanitize(o),this._decodeAttributeValue(this.sanitize(u)))||i})}else i=this.attribute(t,void 0,this.sanitize(s.substring(n.convert.att.length)),this._decodeAttributeValue(this.sanitize(a?.toString())))||i;else if(!n.ignoreConverters&&s.indexOf(n.convert.text)===0)(0,Sr.isMap)(a)||(0,Sr.isObject)(a)?i=this.parse(t,a):i=this.text(t,this._decodeText(this.sanitize(a?.toString())))||i;else if(!n.ignoreConverters&&s.indexOf(n.convert.cdata)===0)(0,Sr.isArray)(a)||(0,Sr.isSet)(a)?(0,Sr.forEachArray)(a,o=>i=this.cdata(t,this.sanitize(o))||i,this):i=this.cdata(t,this.sanitize(a?.toString()))||i;else if(!n.ignoreConverters&&s.indexOf(n.convert.comment)===0)(0,Sr.isArray)(a)||(0,Sr.isSet)(a)?(0,Sr.forEachArray)(a,o=>i=this.comment(t,this.sanitize(o))||i,this):i=this.comment(t,this.sanitize(a?.toString()))||i;else if(!n.ignoreConverters&&s.indexOf(n.convert.ins)===0)if((0,Sr.isString)(a)){let o=a.indexOf(" "),u=o===-1?a:a.substr(0,o),c=o===-1?"":a.substr(o+1);i=this.instruction(t,this.sanitize(u),this.sanitize(c))||i}else(0,Sr.isArray)(a)||(0,Sr.isSet)(a)?(0,Sr.forEachArray)(a,o=>{let u=o.indexOf(" "),c=u===-1?o:o.substr(0,u),l=u===-1?"":o.substr(u+1);i=this.instruction(t,this.sanitize(c),this.sanitize(l))||i},this):(0,Sr.forEachObject)(a,(o,u)=>i=this.instruction(t,this.sanitize(o),this.sanitize(u))||i,this);else if(!(((0,Sr.isArray)(a)||(0,Sr.isSet)(a))&&(0,Sr.isEmpty)(a))){if(((0,Sr.isMap)(a)||(0,Sr.isObject)(a))&&(0,Sr.isEmpty)(a))i=this.element(t,void 0,this.sanitize(s))||i;else if(!(!n.keepNullNodes&&a==null))if((0,Sr.isArray)(a)||(0,Sr.isSet)(a))(0,Sr.forEachArray)(a,o=>{let u={};u[s]=o,i=this.parse(t,u)},this);else if((0,Sr.isMap)(a)||(0,Sr.isObject)(a)){let o=this.element(t,void 0,this.sanitize(s));o&&(i=o,this.parse(o,a))}else if(a!=null&&(!(0,Sr.isString)(a)||a!=="")){let o=this.element(t,void 0,this.sanitize(s));o&&(i=o,this.text(o,this._decodeText(this.sanitize(a?.toString()))))}else i=this.element(t,void 0,this.sanitize(s))||i}},this):!n.keepNullNodes&&r==null||(i=this.text(t,this._decodeText(this.sanitize(r?.toString())))||i),i||t}};CV.ObjectReader=hwe});var hPt=b(NV=>{"use strict";Object.defineProperty(NV,"__esModule",{value:!0});NV.JSONReader=void 0;var Pin=TV(),Min=CM(),mwe=class extends Min.BaseReader{_parse(t,r){return new Pin.ObjectReader(this._builderOptions).parse(t,JSON.parse(r))}};NV.JSONReader=mwe});var jx=b((loi,sE)=>{"use strict";function mPt(e){return typeof e>"u"||e===null}function Lin(e){return typeof e=="object"&&e!==null}function Bin(e){return Array.isArray(e)?e:mPt(e)?[]:[e]}function $in(e,t){var r,n,i,s;if(t)for(s=Object.keys(t),r=0,n=s.length;r{"use strict";function gPt(e,t){var r="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(r+='in "'+e.mark.name+'" '),r+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(r+=` +Input: `+this.err.str)}[Symbol.iterator](){return this._index=0,{next:function(){let t=this.nextToken();return t.type===uu.TokenType.EOF?{done:!0,value:null}:{done:!1,value:t}}.bind(this)}}};bQ.XMLStringLexer=p2e});var Oqt=S(IQ=>{"use strict";Object.defineProperty(IQ,"__esModule",{value:!0});IQ.XMLParserImpl=void 0;var ubn=m2e(),__=TQ(),g2e=ha(),gf=Ln(),lbn=kB(),_2e=class{parse(t){let r=new ubn.XMLStringLexer(t,{skipWhitespaceOnlyText:!0}),n=(0,gf.create_document)(),s=n,i=r.nextToken();for(;i.type!==__.TokenType.EOF;){switch(i.type){case __.TokenType.Declaration:let a=i;if(a.version!=="1.0")throw new Error("Invalid xml version: "+a.version);break;case __.TokenType.DocType:let o=i;if(!(0,gf.xml_isPubidChar)(o.pubId))throw new Error("DocType public identifier does not match PubidChar construct.");if(!(0,gf.xml_isLegalChar)(o.sysId)||o.sysId.indexOf('"')!==-1&&o.sysId.indexOf("'")!==-1)throw new Error("DocType system identifier contains invalid characters.");s.appendChild(n.implementation.createDocumentType(o.name,o.pubId,o.sysId));break;case __.TokenType.CDATA:let c=i;if(!(0,gf.xml_isLegalChar)(c.data)||c.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters.");s.appendChild(n.createCDATASection(c.data));break;case __.TokenType.Comment:let u=i;if(!(0,gf.xml_isLegalChar)(u.data)||u.data.indexOf("--")!==-1||u.data.endsWith("-"))throw new Error("Comment data contains invalid characters.");s.appendChild(n.createComment(u.data));break;case __.TokenType.PI:let l=i;if(l.target.indexOf(":")!==-1||/^xml$/i.test(l.target))throw new Error("Processing instruction target contains invalid characters.");if(!(0,gf.xml_isLegalChar)(l.data)||l.data.indexOf("?>")!==-1)throw new Error("Processing instruction data contains invalid characters.");s.appendChild(n.createProcessingInstruction(l.target,l.data));break;case __.TokenType.Text:let d=i;if(!(0,gf.xml_isLegalChar)(d.data))throw new Error("Text data contains invalid characters.");s.appendChild(n.createTextNode(this._decodeText(d.data)));break;case __.TokenType.Element:let f=i,[h,p]=(0,gf.namespace_extractQName)(f.name);if(p.indexOf(":")!==-1||!(0,gf.xml_isName)(p))throw new Error("Node local name contains invalid characters.");if(h==="xmlns")throw new Error("An element cannot have the 'xmlns' prefix.");let m=s.lookupNamespaceURI(h),g={};for(let[E,v]of f.attributes)if(E==="xmlns")m=v;else{let[b,I]=(0,gf.namespace_extractQName)(E);b==="xmlns"&&(I===h&&(m=v),g[I]=v)}let _=m!==null?n.createElementNS(m,f.name):n.createElement(f.name);s.appendChild(_);let y=new lbn.LocalNameSet;for(let[E,v]of f.attributes){let[b,I]=(0,gf.namespace_extractQName)(E),T=null;if(b==="xmlns"||b===null&&I==="xmlns"?T=g2e.namespace.XMLNS:(T=_.lookupNamespaceURI(b),T!==null&&_.isDefaultNamespace(T)?T=null:T===null&&b!==null&&(T=g[b]||null)),y.has(T,I))throw new Error("Element contains duplicate attributes.");if(y.set(T,I),T===g2e.namespace.XMLNS&&v===g2e.namespace.XMLNS)throw new Error("XMLNS namespace is reserved.");if(I.indexOf(":")!==-1||!(0,gf.xml_isName)(I))throw new Error("Attribute local name contains invalid characters.");if(b==="xmlns"&&v==="")throw new Error("Empty XML namespace is not allowed.");T!==null?_.setAttributeNS(T,E,this._decodeAttributeValue(v)):_.setAttribute(E,this._decodeAttributeValue(v))}f.selfClosing||(s=_);break;case __.TokenType.ClosingTag:if(i.name!==s.nodeName)throw new Error("Closing tag name does not match opening tag name.");s._parent&&(s=s._parent);break}i=r.nextToken()}return n}_decodeText(t){return t==null?t:t.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}_decodeAttributeValue(t){return t==null?t:t.replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}};IQ.XMLParserImpl=_2e});var Dqt=S(RQ=>{"use strict";Object.defineProperty(RQ,"__esModule",{value:!0});RQ.DOMParserImpl=void 0;var dbn=Ln(),fbn=Oqt(),A2e=class{parseFromString(t,r){if(r==="text/html")throw new Error("HTML parser not implemented.");try{let s=new fbn.XMLParserImpl().parse(t);return s._contentType=r,s}catch(n){let s="http://www.mozilla.org/newlayout/xml/parsererror.xml",i=(0,dbn.create_xmlDocument)(),a=i.createElementNS(s,"parsererror"),o=i.createElementNS(s,"error");return o.setAttribute("message",n.message),a.appendChild(o),i.appendChild(a),i}}};RQ.DOMParserImpl=A2e});var Pqt=S(CQ=>{"use strict";Object.defineProperty(CQ,"__esModule",{value:!0});CQ.DOMParser=void 0;var hbn=Dqt();Object.defineProperty(CQ,"DOMParser",{enumerable:!0,get:function(){return hbn.DOMParserImpl}})});var Mqt=S(xQ=>{"use strict";Object.defineProperty(xQ,"__esModule",{value:!0});xQ.XMLSerializerImpl=void 0;var vc=Qn(),pbn=kB(),mbn=hz(),Lqt=xa(),A_=ha(),Rp=Ln(),E2e=class e{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);serializeToString(t){return this._xmlSerialization(t,!1)}_xmlSerialization(t,r){if(t._nodeDocument===void 0||t._nodeDocument._hasNamespaces){let s=new mbn.NamespacePrefixMap;s.set("xml",A_.namespace.XML);let i={value:1};try{return this._serializeNodeNS(t,null,s,i,r)}catch{throw new Lqt.InvalidStateError}}else try{return this._serializeNode(t,r)}catch{throw new Lqt.InvalidStateError}}_serializeNodeNS(t,r,n,s,i){switch(t.nodeType){case vc.NodeType.Element:return this._serializeElementNS(t,r,n,s,i);case vc.NodeType.Document:return this._serializeDocumentNS(t,r,n,s,i);case vc.NodeType.Comment:return this._serializeComment(t,i);case vc.NodeType.Text:return this._serializeText(t,i);case vc.NodeType.DocumentFragment:return this._serializeDocumentFragmentNS(t,r,n,s,i);case vc.NodeType.DocumentType:return this._serializeDocumentType(t,i);case vc.NodeType.ProcessingInstruction:return this._serializeProcessingInstruction(t,i);case vc.NodeType.CData:return this._serializeCData(t,i);default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeNode(t,r){switch(t.nodeType){case vc.NodeType.Element:return this._serializeElement(t,r);case vc.NodeType.Document:return this._serializeDocument(t,r);case vc.NodeType.Comment:return this._serializeComment(t,r);case vc.NodeType.Text:return this._serializeText(t,r);case vc.NodeType.DocumentFragment:return this._serializeDocumentFragment(t,r);case vc.NodeType.DocumentType:return this._serializeDocumentType(t,r);case vc.NodeType.ProcessingInstruction:return this._serializeProcessingInstruction(t,r);case vc.NodeType.CData:return this._serializeCData(t,r);default:throw new Error(`Unknown node type: ${t.nodeType}`)}}_serializeElementNS(t,r,n,s,i){if(i&&(t.localName.indexOf(":")!==-1||!(0,Rp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let a="<",o="",c=!1,u=!1,l=n.copy(),d={},f=this._recordNamespaceInformation(t,l,d),h=r,p=t.namespaceURI;if(h===p)f!==null&&(u=!0),p===A_.namespace.XML?o="xml:"+t.localName:o=t.localName,a+=o;else{let g=t.prefix,_=null;if((g!==null||p!==f)&&(_=l.get(g,p)),g==="xmlns"){if(i)throw new Error("An element cannot have the 'xmlns' prefix (well-formed required).");_=g}_!==null?(o=_+":"+t.localName,f!==null&&f!==A_.namespace.XML&&(h=f||null),a+=o):g!==null?(g in d&&(g=this._generatePrefix(p,l,s)),l.set(g,p),o+=g+":"+t.localName,a+=o,a+=" xmlns:"+g+'="'+this._serializeAttributeValue(p,i)+'"',f!==null&&(h=f||null)):f===null||f!==null&&f!==p?(u=!0,o+=t.localName,h=p,a+=o,a+=' xmlns="'+this._serializeAttributeValue(p,i)+'"'):(o+=t.localName,h=p,a+=o)}a+=this._serializeAttributesNS(t,l,s,d,u,i);let m=p===A_.namespace.HTML;if(m&&t.childNodes.length===0&&e._VoidElementNames.has(t.localName)?(a+=" /",c=!0):!m&&t.childNodes.length===0&&(a+="/",c=!0),a+=">",c)return a;if(!(m&&t.localName==="template"))for(let g of t._children||t.childNodes)a+=this._serializeNodeNS(g,h,l,s,i);return a+="",a}_serializeDocumentNS(t,r,n,s,i){if(i&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");let a="";for(let o of t._children||t.childNodes)a+=this._serializeNodeNS(o,r,n,s,i);return a}_serializeComment(t,r){if(r&&(!(0,Rp.xml_isLegalChar)(t.data)||t.data.indexOf("--")!==-1||t.data.endsWith("-")))throw new Error("Comment data contains invalid characters (well-formed required).");return""}_serializeText(t,r){if(r&&!(0,Rp.xml_isLegalChar)(t.data))throw new Error("Text data contains invalid characters (well-formed required).");let n="";for(let s=0;s"?n+=">":n+=i}return n}_serializeDocumentFragmentNS(t,r,n,s,i){let a="";for(let o of t._children||t.childNodes)a+=this._serializeNodeNS(o,r,n,s,i);return a}_serializeDocumentType(t,r){if(r&&!(0,Rp.xml_isPubidChar)(t.publicId))throw new Error("DocType public identifier does not match PubidChar construct (well-formed required).");if(r&&(!(0,Rp.xml_isLegalChar)(t.systemId)||t.systemId.indexOf('"')!==-1&&t.systemId.indexOf("'")!==-1))throw new Error("DocType system identifier contains invalid characters (well-formed required).");return t.publicId&&t.systemId?"':t.publicId?"':t.systemId?"':""}_serializeProcessingInstruction(t,r){if(r&&(t.target.indexOf(":")!==-1||/^xml$/i.test(t.target)))throw new Error("Processing instruction target contains invalid characters (well-formed required).");if(r&&(!(0,Rp.xml_isLegalChar)(t.data)||t.data.indexOf("?>")!==-1))throw new Error("Processing instruction data contains invalid characters (well-formed required).");return""}_serializeCData(t,r){if(r&&t.data.indexOf("]]>")!==-1)throw new Error("CDATA contains invalid characters (well-formed required).");return""}_serializeAttributesNS(t,r,n,s,i,a){let o="",c=a?new pbn.LocalNameSet:void 0;for(let u of t.attributes){if(!i&&!a&&u.namespaceURI===null){o+=" "+u.localName+'="'+this._serializeAttributeValue(u.value,a)+'"';continue}if(a&&c&&c.has(u.namespaceURI,u.localName))throw new Error("Element contains duplicate attributes (well-formed required).");a&&c&&c.set(u.namespaceURI,u.localName);let l=u.namespaceURI,d=null;if(l!==null)if(d=r.get(u.prefix,l),l===A_.namespace.XMLNS){if(u.value===A_.namespace.XML||u.prefix===null&&i||u.prefix!==null&&(!(u.localName in s)||s[u.localName]!==u.value)&&r.has(u.localName,u.value))continue;if(a&&u.value===A_.namespace.XMLNS)throw new Error("XMLNS namespace is reserved (well-formed required).");if(a&&u.value==="")throw new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required).");u.prefix==="xmlns"&&(d="xmlns")}else d===null&&(u.prefix!==null&&(!r.hasPrefix(u.prefix)||r.has(u.prefix,l))?d=u.prefix:d=this._generatePrefix(l,r,n),o+=" xmlns:"+d+'="'+this._serializeAttributeValue(l,a)+'"');if(o+=" ",d!==null&&(o+=d+":"),a&&(u.localName.indexOf(":")!==-1||!(0,Rp.xml_isName)(u.localName)||u.localName==="xmlns"&&l===null))throw new Error("Attribute local name contains invalid characters (well-formed required).");o+=u.localName+'="'+this._serializeAttributeValue(u.value,a)+'"'}return o}_recordNamespaceInformation(t,r,n){let s=null;for(let i of t.attributes){let a=i.namespaceURI,o=i.prefix;if(a===A_.namespace.XMLNS)if(o===null){s=i.value;continue}else{let c=i.localName,u=i.value;if(u===A_.namespace.XML||(u===""&&(u=null),r.has(c,u)))continue;r.set(c,u),n[c]=u||""}}return s}_generatePrefix(t,r,n){let s="ns"+n.value;return n.value++,r.set(s,t),s}_serializeAttributeValue(t,r){if(r&&t!==null&&!(0,Rp.xml_isLegalChar)(t))throw new Error("Invalid characters in attribute value.");if(t===null)return"";let n="";for(let s=0;s"?n+=">":n+=i}return n}_serializeElement(t,r){if(r&&(t.localName.indexOf(":")!==-1||!(0,Rp.xml_isName)(t.localName)))throw new Error("Node local name contains invalid characters (well-formed required).");let n=!1,s=t.localName,i="<"+s;if(i+=this._serializeAttributes(t,r),t._children.size===0&&(i+="/",n=!0),i+=">",n)return i;for(let a of t._children)i+=this._serializeNode(a,r);return i+="",i}_serializeDocument(t,r){if(r&&t.documentElement===null)throw new Error("Missing document element (well-formed required).");let n="";for(let s of t._children)n+=this._serializeNode(s,r);return n}_serializeDocumentFragment(t,r){let n="";for(let s of t._children)n+=this._serializeNode(s,r);return n}_serializeAttributes(t,r){let n="",s=r?{}:void 0;for(let i of t.attributes){if(r&&s&&i.localName in s)throw new Error("Element contains duplicate attributes (well-formed required).");if(r&&s&&(s[i.localName]=!0),r&&(i.localName.indexOf(":")!==-1||!(0,Rp.xml_isName)(i.localName)))throw new Error("Attribute local name contains invalid characters (well-formed required).");n+=" "+i.localName+'="'+this._serializeAttributeValue(i.value,r)+'"'}return n}};xQ.XMLSerializerImpl=E2e});var kqt=S(wQ=>{"use strict";Object.defineProperty(wQ,"__esModule",{value:!0});wQ.XMLSerializer=void 0;var gbn=Mqt();Object.defineProperty(wQ,"XMLSerializer",{enumerable:!0,get:function(){return gbn.XMLSerializerImpl}})});var Bqt=S(Ry=>{"use strict";Object.defineProperty(Ry,"__esModule",{value:!0});Ry.XMLSerializer=Ry.DOMParser=Ry.DOMImplementation=void 0;var _bn=vQ();_bn.dom.setFeatures(!0);var Abn=vQ();Object.defineProperty(Ry,"DOMImplementation",{enumerable:!0,get:function(){return Abn.DOMImplementation}});var Ebn=Pqt();Object.defineProperty(Ry,"DOMParser",{enumerable:!0,get:function(){return Ebn.DOMParser}});var ybn=kqt();Object.defineProperty(Ry,"XMLSerializer",{enumerable:!0,get:function(){return ybn.XMLSerializer}})});var OQ=S(NQ=>{"use strict";Object.defineProperty(NQ,"__esModule",{value:!0});NQ.createDocument=Tbn;NQ.sanitizeInput=bbn;var vbn=Bqt(),Sbn=vQ(),Uqt=Jn();Sbn.dom.setFeatures(!1);function Tbn(){let t=new vbn.DOMImplementation().createDocument(null,"root",null);return t.documentElement&&t.removeChild(t.documentElement),t}function bbn(e,t){if(e==null)return e;if(t===void 0)return e+"";{let r="";e=e+"";for(let n=0;n=32&&s<=55295||s>=57344&&s<=65533)r+=e.charAt(n);else if(s>=55296&&s<=56319&&n=56320&&i<=57343?(s=(s-55296)*1024+i-56320+65536,r+=String.fromCodePoint(s),n++):r+=(0,Uqt.isString)(t)?t:t(e.charAt(n),n,e)}else r+=(0,Uqt.isString)(t)?t:t(e.charAt(n),n,e)}return r}}});var r3=S(DQ=>{"use strict";Object.defineProperty(DQ,"__esModule",{value:!0});DQ.BaseReader=void 0;var Ibn=OQ(),y2e=class e{_builderOptions;static _entityTable={lt:"<",gt:">",amp:"&",quot:'"',apos:"'"};constructor(t){this._builderOptions=t,t.parser&&Object.assign(this,t.parser)}_docType(t,r,n,s){return t.dtd({name:r,pubID:n,sysID:s})}_comment(t,r){return t.com(r)}_text(t,r){return t.txt(r)}_instruction(t,r,n){return t.ins(r,n)}_cdata(t,r){return t.dat(r)}_element(t,r,n){return r===void 0?t.ele(n):t.ele(r,n)}_attribute(t,r,n,s){return r===void 0?t.att(n,s):t.att(r,n,s)}_sanitize(t){return(0,Ibn.sanitizeInput)(t,this._builderOptions.invalidCharReplacement)}_decodeText(t){return t==null?t:t.replace(/&(quot|amp|apos|lt|gt);/g,(r,n)=>e._entityTable[n]).replace(/&#(?:x([a-fA-F0-9]+)|([0-9]+));/g,(r,n,s)=>String.fromCodePoint(parseInt(n||s,n?16:10)))}_decodeAttributeValue(t){return this._decodeText(t)}parse(t,r){return this._parse(t,r)}docType(t,r,n,s){return this._docType(t,r,n,s)}comment(t,r){return this._comment(t,r)}text(t,r){return this._text(t,r)}instruction(t,r,n){return this._instruction(t,r,n)}cdata(t,r){return this._cdata(t,r)}element(t,r,n){return this._element(t,r,n)}attribute(t,r,n,s){return this._attribute(t,r,n,s)}sanitize(t){return this._sanitize(t)}};DQ.BaseReader=y2e});var Fqt=S(PQ=>{"use strict";Object.defineProperty(PQ,"__esModule",{value:!0});PQ.XMLReader=void 0;var Rbn=m2e(),E_=TQ(),Cbn=Qn(),xbn=ha(),v2e=Ln(),wbn=r3(),S2e=class extends wbn.BaseReader{_parse(t,r){let n=new Rbn.XMLStringLexer(r,{skipWhitespaceOnlyText:this._builderOptions.skipWhitespaceOnlyText}),s=t,i=t,a=n.nextToken();for(;a.type!==E_.TokenType.EOF;){switch(a.type){case E_.TokenType.Declaration:let o=a,c=this.sanitize(o.version);if(c!=="1.0")throw new Error("Invalid xml version: "+c);let u={version:c};o.encoding&&(u.encoding=this.sanitize(o.encoding)),o.standalone&&(u.standalone=this.sanitize(o.standalone)==="yes"),i.set(u);break;case E_.TokenType.DocType:let l=a;i=this.docType(i,this.sanitize(l.name),this.sanitize(l.pubId),this.sanitize(l.sysId))||i;break;case E_.TokenType.CDATA:let d=a;i=this.cdata(i,this.sanitize(d.data))||i;break;case E_.TokenType.Comment:let f=a;i=this.comment(i,this.sanitize(f.data))||i;break;case E_.TokenType.PI:let h=a;i=this.instruction(i,this.sanitize(h.target),this.sanitize(h.data))||i;break;case E_.TokenType.Text:if(i.node.nodeType===Cbn.NodeType.Document)break;let p=a;i=this.text(i,this._decodeText(this.sanitize(p.data)))||i;break;case E_.TokenType.Element:let m=a,g=this.sanitize(m.name),[_]=(0,v2e.namespace_extractQName)(g),y=i.node.lookupNamespaceURI(_),A={};for(let[v,b]of m.attributes)if(v=this.sanitize(v),b=this.sanitize(b),v==="xmlns")y=b;else{let[I,T]=(0,v2e.namespace_extractQName)(v);I==="xmlns"&&(T===_&&(y=b),A[T]=b)}let E=y!==null?this.element(i,y,g):this.element(i,void 0,g);if(E===void 0)break;i.node===t.node&&(s=E);for(let[v,b]of m.attributes){v=this.sanitize(v),b=this.sanitize(b);let[I,T]=(0,v2e.namespace_extractQName)(v),x=null;I==="xmlns"||I===null&&T==="xmlns"?x=xbn.namespace.XMLNS:(x=E.node.lookupNamespaceURI(I),x!==null&&E.node.isDefaultNamespace(x)?x=null:x===null&&I!==null&&(x=A[I]||null)),x!==null?this.attribute(E,x,v,this._decodeAttributeValue(b)):this.attribute(E,void 0,v,this._decodeAttributeValue(b))}m.selfClosing||(i=E);break;case E_.TokenType.ClosingTag:i.node.parentNode&&(i=i.up());break}a=n.nextToken()}return s}};PQ.XMLReader=S2e});var MQ=S(LQ=>{"use strict";Object.defineProperty(LQ,"__esModule",{value:!0});LQ.ObjectReader=void 0;var an=Jn(),Nbn=r3(),T2e=class extends Nbn.BaseReader{_parse(t,r){let n=this._builderOptions,s=null;return(0,an.isFunction)(r)?s=this.parse(t,r.call(this)):(0,an.isArray)(r)||(0,an.isSet)(r)?(0,an.forEachArray)(r,i=>s=this.parse(t,i),this):(0,an.isMap)(r)||(0,an.isObject)(r)?(0,an.forEachObject)(r,(i,a)=>{if((0,an.isFunction)(a)&&(a=a.call(this)),!n.ignoreConverters&&i.indexOf(n.convert.att)===0)if(i===n.convert.att){if((0,an.isArray)(a)||(0,an.isSet)(a))throw new Error("Invalid attribute: "+a.toString()+". "+t._debugInfo());(0,an.forEachObject)(a,(o,c)=>{s=this.attribute(t,void 0,this.sanitize(o),this._decodeAttributeValue(this.sanitize(c)))||s})}else s=this.attribute(t,void 0,this.sanitize(i.substring(n.convert.att.length)),this._decodeAttributeValue(this.sanitize(a?.toString())))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.text)===0)(0,an.isMap)(a)||(0,an.isObject)(a)?s=this.parse(t,a):s=this.text(t,this._decodeText(this.sanitize(a?.toString())))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.cdata)===0)(0,an.isArray)(a)||(0,an.isSet)(a)?(0,an.forEachArray)(a,o=>s=this.cdata(t,this.sanitize(o))||s,this):s=this.cdata(t,this.sanitize(a?.toString()))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.comment)===0)(0,an.isArray)(a)||(0,an.isSet)(a)?(0,an.forEachArray)(a,o=>s=this.comment(t,this.sanitize(o))||s,this):s=this.comment(t,this.sanitize(a?.toString()))||s;else if(!n.ignoreConverters&&i.indexOf(n.convert.ins)===0)if((0,an.isString)(a)){let o=a.indexOf(" "),c=o===-1?a:a.substr(0,o),u=o===-1?"":a.substr(o+1);s=this.instruction(t,this.sanitize(c),this.sanitize(u))||s}else(0,an.isArray)(a)||(0,an.isSet)(a)?(0,an.forEachArray)(a,o=>{let c=o.indexOf(" "),u=c===-1?o:o.substr(0,c),l=c===-1?"":o.substr(c+1);s=this.instruction(t,this.sanitize(u),this.sanitize(l))||s},this):(0,an.forEachObject)(a,(o,c)=>s=this.instruction(t,this.sanitize(o),this.sanitize(c))||s,this);else if(!(((0,an.isArray)(a)||(0,an.isSet)(a))&&(0,an.isEmpty)(a))){if(((0,an.isMap)(a)||(0,an.isObject)(a))&&(0,an.isEmpty)(a))s=this.element(t,void 0,this.sanitize(i))||s;else if(!(!n.keepNullNodes&&a==null))if((0,an.isArray)(a)||(0,an.isSet)(a))(0,an.forEachArray)(a,o=>{let c={};c[i]=o,s=this.parse(t,c)},this);else if((0,an.isMap)(a)||(0,an.isObject)(a)){let o=this.element(t,void 0,this.sanitize(i));o&&(s=o,this.parse(o,a))}else if(a!=null&&(!(0,an.isString)(a)||a!=="")){let o=this.element(t,void 0,this.sanitize(i));o&&(s=o,this.text(o,this._decodeText(this.sanitize(a?.toString()))))}else s=this.element(t,void 0,this.sanitize(i))||s}},this):!n.keepNullNodes&&r==null||(s=this.text(t,this._decodeText(this.sanitize(r?.toString())))||s),s||t}};LQ.ObjectReader=T2e});var $qt=S(kQ=>{"use strict";Object.defineProperty(kQ,"__esModule",{value:!0});kQ.JSONReader=void 0;var Obn=MQ(),Dbn=r3(),b2e=class extends Dbn.BaseReader{_parse(t,r){return new Obn.ObjectReader(this._builderOptions).parse(t,JSON.parse(r))}};kQ.JSONReader=b2e});var xw=S((RNs,Nb)=>{"use strict";function qqt(e){return typeof e>"u"||e===null}function Pbn(e){return typeof e=="object"&&e!==null}function Lbn(e){return Array.isArray(e)?e:qqt(e)?[]:[e]}function Mbn(e,t){var r,n,s,i;if(t)for(i=Object.keys(t),r=0,n=i.length;r{"use strict";function Hqt(e,t){var r="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(r+='in "'+e.mark.name+'" '),r+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(r+=` -`+e.mark.snippet),n+" "+r):n}function TM(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=gPt(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}TM.prototype=Object.create(Error.prototype);TM.prototype.constructor=TM;TM.prototype.toString=function(t){return this.name+": "+gPt(this,t)};yPt.exports=TM});var APt=b((foi,_Pt)=>{"use strict";var NM=jx();function gwe(e,t,r,n,i){var s="",a="",o=Math.floor(i/2)-1;return n-t>o&&(s=" ... ",t=n-o+s.length),r-n>o&&(a=" ...",r=n+o-a.length),{str:s+e.slice(t,r).replace(/\t/g,"\u2192")+a,pos:n-t+s.length}}function ywe(e,t){return NM.repeat(" ",t-e.length)+e}function qin(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],i=[],s,a=-1;s=r.exec(e.buffer);)i.push(s.index),n.push(s.index+s[0].length),e.position<=s.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var o="",u,c,l=Math.min(e.line+t.linesAfter,i.length).toString().length,d=t.maxLength-(t.indent+l+3);for(u=1;u<=t.linesBefore&&!(a-u<0);u++)c=gwe(e.buffer,n[a-u],i[a-u],e.position-(n[a]-n[a-u]),d),o=NM.repeat(" ",t.indent)+ywe((e.line-u+1).toString(),l)+" | "+c.str+` -`+o;for(c=gwe(e.buffer,n[a],i[a],e.position,d),o+=NM.repeat(" ",t.indent)+ywe((e.line+1).toString(),l)+" | "+c.str+` -`,o+=NM.repeat("-",t.indent+l+3+c.pos)+`^ -`,u=1;u<=t.linesAfter&&!(a+u>=i.length);u++)c=gwe(e.buffer,n[a+u],i[a+u],e.position-(n[a]-n[a+u]),d),o+=NM.repeat(" ",t.indent)+ywe((e.line+u+1).toString(),l)+" | "+c.str+` -`;return o.replace(/\n$/,"")}_Pt.exports=qin});var Ro=b((poi,bPt)=>{"use strict";var vPt=Hx(),jin=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Hin=["scalar","sequence","mapping"];function Kin(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function Vin(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(jin.indexOf(r)===-1)throw new vPt('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=Kin(t.styleAliases||null),Hin.indexOf(this.kind)===-1)throw new vPt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}bPt.exports=Vin});var vwe=b((hoi,SPt)=>{"use strict";var RM=Hx(),_we=Ro();function EPt(e,t){var r=[];return e[t].forEach(function(n){var i=r.length;r.forEach(function(s,a){s.tag===n.tag&&s.kind===n.kind&&s.multi===n.multi&&(i=a)}),r[i]=n}),r}function zin(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,r;function n(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(t=0,r=arguments.length;t{"use strict";var Qin=Ro();wPt.exports=new Qin("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var Ewe=b((goi,IPt)=>{"use strict";var Gin=Ro();IPt.exports=new Gin("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var Swe=b((yoi,xPt)=>{"use strict";var Yin=Ro();xPt.exports=new Yin("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var wwe=b((_oi,CPt)=>{"use strict";var Win=vwe();CPt.exports=new Win({explicit:[bwe(),Ewe(),Swe()]})});var Iwe=b((Aoi,TPt)=>{"use strict";var Xin=Ro();function Jin(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function Zin(){return null}function esn(e){return e===null}TPt.exports=new Xin("tag:yaml.org,2002:null",{kind:"scalar",resolve:Jin,construct:Zin,predicate:esn,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"})});var xwe=b((voi,NPt)=>{"use strict";var tsn=Ro();function rsn(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function nsn(e){return e==="true"||e==="True"||e==="TRUE"}function isn(e){return Object.prototype.toString.call(e)==="[object Boolean]"}NPt.exports=new tsn("tag:yaml.org,2002:bool",{kind:"scalar",resolve:rsn,construct:nsn,predicate:isn,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var Cwe=b((boi,RPt)=>{"use strict";var ssn=jx(),asn=Ro();function osn(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function usn(e){return 48<=e&&e<=55}function csn(e){return 48<=e&&e<=57}function lsn(e){if(e===null)return!1;var t=e.length,r=0,n=!1,i;if(!t)return!1;if(i=e[r],(i==="-"||i==="+")&&(i=e[++r]),i==="0"){if(r+1===t)return!0;if(i=e[++r],i==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var Twe=b((Eoi,kPt)=>{"use strict";var DPt=jx(),psn=Ro(),hsn=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function msn(e){return!(e===null||!hsn.test(e)||e[e.length-1]==="_")}function gsn(e){var t,r;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:r*parseFloat(t,10)}var ysn=/^[-+]?[0-9]+e/;function _sn(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(DPt.isNegativeZero(e))return"-0.0";return r=e.toString(10),ysn.test(r)?r.replace("e",".e"):r}function Asn(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||DPt.isNegativeZero(e))}kPt.exports=new psn("tag:yaml.org,2002:float",{kind:"scalar",resolve:msn,construct:gsn,predicate:Asn,represent:_sn,defaultStyle:"lowercase"})});var Nwe=b((Soi,OPt)=>{"use strict";OPt.exports=wwe().extend({implicit:[Iwe(),xwe(),Cwe(),Twe()]})});var Rwe=b((woi,PPt)=>{"use strict";PPt.exports=Nwe()});var Dwe=b((Ioi,BPt)=>{"use strict";var vsn=Ro(),MPt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),LPt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function bsn(e){return e===null?!1:MPt.exec(e)!==null||LPt.exec(e)!==null}function Esn(e){var t,r,n,i,s,a,o,u=0,c=null,l,d,f;if(t=MPt.exec(e),t===null&&(t=LPt.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(r,n,i));if(s=+t[4],a=+t[5],o=+t[6],t[7]){for(u=t[7].slice(0,3);u.length<3;)u+="0";u=+u}return t[9]&&(l=+t[10],d=+(t[11]||0),c=(l*60+d)*6e4,t[9]==="-"&&(c=-c)),f=new Date(Date.UTC(r,n,i,s,a,o,u)),c&&f.setTime(f.getTime()-c),f}function Ssn(e){return e.toISOString()}BPt.exports=new vsn("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:bsn,construct:Esn,instanceOf:Date,represent:Ssn})});var kwe=b((xoi,$Pt)=>{"use strict";var wsn=Ro();function Isn(e){return e==="<<"||e===null}$Pt.exports=new wsn("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Isn})});var Pwe=b((Coi,FPt)=>{"use strict";var xsn=Ro(),Owe=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Csn(e){if(e===null)return!1;var t,r,n=0,i=e.length,s=Owe;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function Tsn(e){var t,r,n=e.replace(/[\r\n=]/g,""),i=n.length,s=Owe,a=0,o=[];for(t=0;t>16&255),o.push(a>>8&255),o.push(a&255)),a=a<<6|s.indexOf(n.charAt(t));return r=i%4*6,r===0?(o.push(a>>16&255),o.push(a>>8&255),o.push(a&255)):r===18?(o.push(a>>10&255),o.push(a>>2&255)):r===12&&o.push(a>>4&255),new Uint8Array(o)}function Nsn(e){var t="",r=0,n,i,s=e.length,a=Owe;for(n=0;n>18&63],t+=a[r>>12&63],t+=a[r>>6&63],t+=a[r&63]),r=(r<<8)+e[n];return i=s%3,i===0?(t+=a[r>>18&63],t+=a[r>>12&63],t+=a[r>>6&63],t+=a[r&63]):i===2?(t+=a[r>>10&63],t+=a[r>>4&63],t+=a[r<<2&63],t+=a[64]):i===1&&(t+=a[r>>2&63],t+=a[r<<4&63],t+=a[64],t+=a[64]),t}function Rsn(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}FPt.exports=new xsn("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Csn,construct:Tsn,predicate:Rsn,represent:Nsn})});var Mwe=b((Toi,UPt)=>{"use strict";var Dsn=Ro(),ksn=Object.prototype.hasOwnProperty,Osn=Object.prototype.toString;function Psn(e){if(e===null)return!0;var t=[],r,n,i,s,a,o=e;for(r=0,n=o.length;r{"use strict";var Lsn=Ro(),Bsn=Object.prototype.toString;function $sn(e){if(e===null)return!0;var t,r,n,i,s,a=e;for(s=new Array(a.length),t=0,r=a.length;t{"use strict";var Usn=Ro(),qsn=Object.prototype.hasOwnProperty;function jsn(e){if(e===null)return!0;var t,r=e;for(t in r)if(qsn.call(r,t)&&r[t]!==null)return!1;return!0}function Hsn(e){return e!==null?e:{}}jPt.exports=new Usn("tag:yaml.org,2002:set",{kind:"mapping",resolve:jsn,construct:Hsn})});var RV=b((Doi,HPt)=>{"use strict";HPt.exports=Rwe().extend({implicit:[Dwe(),kwe()],explicit:[Pwe(),Mwe(),Lwe(),Bwe()]})});var aMt=b((koi,qwe)=>{"use strict";var oE=jx(),WPt=Hx(),Ksn=APt(),Vsn=RV(),S_=Object.prototype.hasOwnProperty,kV=1,XPt=2,JPt=3,OV=4,$we=1,zsn=2,KPt=3,Qsn=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Gsn=/[\x85\u2028\u2029]/,Ysn=/[,\[\]\{\}]/,ZPt=/^(?:!|!!|![a-z\-]+!)$/i,eMt=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function VPt(e){return Object.prototype.toString.call(e)}function ih(e){return e===10||e===13}function uE(e){return e===9||e===32}function ac(e){return e===9||e===32||e===10||e===13}function Kx(e){return e===44||e===91||e===93||e===123||e===125}function Wsn(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function Xsn(e){return e===120?2:e===117?4:e===85?8:0}function Jsn(e){return 48<=e&&e<=57?e-48:-1}function zPt(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` -`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function Zsn(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function tMt(e,t,r){t==="__proto__"?Object.defineProperty(e,t,{configurable:!0,enumerable:!0,writable:!0,value:r}):e[t]=r}var rMt=new Array(256),nMt=new Array(256);for(aE=0;aE<256;aE++)rMt[aE]=zPt(aE)?1:0,nMt[aE]=zPt(aE);var aE;function ean(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||Vsn,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function iMt(e,t){var r={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return r.snippet=Ksn(r),new WPt(t,r)}function mt(e,t){throw iMt(e,t)}function PV(e,t){e.onWarning&&e.onWarning.call(null,iMt(e,t))}var QPt={YAML:function(t,r,n){var i,s,a;t.version!==null&&mt(t,"duplication of %YAML directive"),n.length!==1&&mt(t,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&mt(t,"ill-formed argument of the YAML directive"),s=parseInt(i[1],10),a=parseInt(i[2],10),s!==1&&mt(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=a<2,a!==1&&a!==2&&PV(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var i,s;n.length!==2&&mt(t,"TAG directive accepts exactly two arguments"),i=n[0],s=n[1],ZPt.test(i)||mt(t,"ill-formed tag handle (first argument) of the TAG directive"),S_.call(t.tagMap,i)&&mt(t,'there is a previously declared suffix for "'+i+'" tag handle'),eMt.test(s)||mt(t,"ill-formed tag prefix (second argument) of the TAG directive");try{s=decodeURIComponent(s)}catch{mt(t,"tag prefix is malformed: "+s)}t.tagMap[i]=s}};function E_(e,t,r,n){var i,s,a,o;if(t1&&(e.result+=oE.repeat(` -`,t-1))}function tan(e,t,r){var n,i,s,a,o,u,c,l,d=e.kind,f=e.result,p;if(p=e.input.charCodeAt(e.position),ac(p)||Kx(p)||p===35||p===38||p===42||p===33||p===124||p===62||p===39||p===34||p===37||p===64||p===96||(p===63||p===45)&&(i=e.input.charCodeAt(e.position+1),ac(i)||r&&Kx(i)))return!1;for(e.kind="scalar",e.result="",s=a=e.position,o=!1;p!==0;){if(p===58){if(i=e.input.charCodeAt(e.position+1),ac(i)||r&&Kx(i))break}else if(p===35){if(n=e.input.charCodeAt(e.position-1),ac(n))break}else{if(e.position===e.lineStart&&MV(e)||r&&Kx(p))break;if(ih(p))if(u=e.line,c=e.lineStart,l=e.lineIndent,Rs(e,!1,-1),e.lineIndent>=t){o=!0,p=e.input.charCodeAt(e.position);continue}else{e.position=a,e.line=u,e.lineStart=c,e.lineIndent=l;break}}o&&(E_(e,s,a,!1),Uwe(e,e.line-u),s=a=e.position,o=!1),uE(p)||(a=e.position+1),p=e.input.charCodeAt(++e.position)}return E_(e,s,a,!1),e.result?!0:(e.kind=d,e.result=f,!1)}function ran(e,t){var r,n,i;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=i=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(E_(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,i=e.position;else return!0;else ih(r)?(E_(e,n,i,!0),Uwe(e,Rs(e,!1,t)),n=i=e.position):e.position===e.lineStart&&MV(e)?mt(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);mt(e,"unexpected end of the stream within a single quoted scalar")}function nan(e,t){var r,n,i,s,a,o;if(o=e.input.charCodeAt(e.position),o!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(o=e.input.charCodeAt(e.position))!==0;){if(o===34)return E_(e,r,e.position,!0),e.position++,!0;if(o===92){if(E_(e,r,e.position,!0),o=e.input.charCodeAt(++e.position),ih(o))Rs(e,!1,t);else if(o<256&&rMt[o])e.result+=nMt[o],e.position++;else if((a=Xsn(o))>0){for(i=a,s=0;i>0;i--)o=e.input.charCodeAt(++e.position),(a=Wsn(o))>=0?s=(s<<4)+a:mt(e,"expected hexadecimal character");e.result+=Zsn(s),e.position++}else mt(e,"unknown escape sequence");r=n=e.position}else ih(o)?(E_(e,r,n,!0),Uwe(e,Rs(e,!1,t)),r=n=e.position):e.position===e.lineStart&&MV(e)?mt(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}mt(e,"unexpected end of the stream within a double quoted scalar")}function ian(e,t){var r=!0,n,i,s,a=e.tag,o,u=e.anchor,c,l,d,f,p,h=Object.create(null),m,y,g,v;if(v=e.input.charCodeAt(e.position),v===91)l=93,p=!1,o=[];else if(v===123)l=125,p=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),v=e.input.charCodeAt(++e.position);v!==0;){if(Rs(e,!0,t),v=e.input.charCodeAt(e.position),v===l)return e.position++,e.tag=a,e.anchor=u,e.kind=p?"mapping":"sequence",e.result=o,!0;r?v===44&&mt(e,"expected the node content, but found ','"):mt(e,"missed comma between flow collection entries"),y=m=g=null,d=f=!1,v===63&&(c=e.input.charCodeAt(e.position+1),ac(c)&&(d=f=!0,e.position++,Rs(e,!0,t))),n=e.line,i=e.lineStart,s=e.position,zx(e,t,kV,!1,!0),y=e.tag,m=e.result,Rs(e,!0,t),v=e.input.charCodeAt(e.position),(f||e.line===n)&&v===58&&(d=!0,v=e.input.charCodeAt(++e.position),Rs(e,!0,t),zx(e,t,kV,!1,!0),g=e.result),p?Vx(e,o,h,y,m,g,n,i,s):d?o.push(Vx(e,null,h,y,m,g,n,i,s)):o.push(m),Rs(e,!0,t),v=e.input.charCodeAt(e.position),v===44?(r=!0,v=e.input.charCodeAt(++e.position)):r=!1}mt(e,"unexpected end of the stream within a flow collection")}function san(e,t){var r,n,i=$we,s=!1,a=!1,o=t,u=0,c=!1,l,d;if(d=e.input.charCodeAt(e.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)$we===i?i=d===43?KPt:zsn:mt(e,"repeat of a chomping mode identifier");else if((l=Jsn(d))>=0)l===0?mt(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?mt(e,"repeat of an indentation width identifier"):(o=t+l-1,a=!0);else break;if(uE(d)){do d=e.input.charCodeAt(++e.position);while(uE(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!ih(d)&&d!==0)}for(;d!==0;){for(Fwe(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!a||e.lineIndento&&(o=e.lineIndent),ih(d)){u++;continue}if(e.lineIndentt)&&u!==0)mt(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(y&&(a=e.line,o=e.lineStart,u=e.position),zx(e,t,OV,!0,i)&&(y?h=e.result:m=e.result),y||(Vx(e,d,f,p,h,m,a,o,u),p=h=m=null),Rs(e,!0,-1),v=e.input.charCodeAt(e.position)),(e.line===s||e.lineIndent>t)&&v!==0)mt(e,"bad indentation of a mapping entry");else if(e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndentt?u=1:e.lineIndent===t?u=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),d=0,f=e.implicitTypes.length;d"),e.result!==null&&h.kind!==e.kind&&mt(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+h.kind+'", not "'+e.kind+'"'),h.resolve(e.result,e.tag)?(e.result=h.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):mt(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||l}function lan(e){var t=e.position,r,n,i,s=!1,a;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(a=e.input.charCodeAt(e.position))!==0&&(Rs(e,!0,-1),a=e.input.charCodeAt(e.position),!(e.lineIndent>0||a!==37));){for(s=!0,a=e.input.charCodeAt(++e.position),r=e.position;a!==0&&!ac(a);)a=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),i=[],n.length<1&&mt(e,"directive name must not be less than one character in length");a!==0;){for(;uE(a);)a=e.input.charCodeAt(++e.position);if(a===35){do a=e.input.charCodeAt(++e.position);while(a!==0&&!ih(a));break}if(ih(a))break;for(r=e.position;a!==0&&!ac(a);)a=e.input.charCodeAt(++e.position);i.push(e.input.slice(r,e.position))}a!==0&&Fwe(e),S_.call(QPt,n)?QPt[n](e,n,i):PV(e,'unknown document directive "'+n+'"')}if(Rs(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Rs(e,!0,-1)):s&&mt(e,"directives end mark is expected"),zx(e,e.lineIndent-1,OV,!1,!0),Rs(e,!0,-1),e.checkLineBreaks&&Gsn.test(e.input.slice(t,e.position))&&PV(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&MV(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Rs(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=sMt(e,r);if(typeof t!="function")return n;for(var i=0,s=n.length;i{"use strict";var $V=jx(),MM=Hx(),pan=RV(),mMt=Object.prototype.toString,gMt=Object.prototype.hasOwnProperty,zwe=65279,han=9,kM=10,man=13,gan=32,yan=33,_an=34,jwe=35,Aan=37,van=38,ban=39,Ean=42,yMt=44,San=45,LV=58,wan=61,Ian=62,xan=63,Can=64,_Mt=91,AMt=93,Tan=96,vMt=123,Nan=124,bMt=125,Do={};Do[0]="\\0";Do[7]="\\a";Do[8]="\\b";Do[9]="\\t";Do[10]="\\n";Do[11]="\\v";Do[12]="\\f";Do[13]="\\r";Do[27]="\\e";Do[34]='\\"';Do[92]="\\\\";Do[133]="\\N";Do[160]="\\_";Do[8232]="\\L";Do[8233]="\\P";var Ran=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Dan=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function kan(e,t){var r,n,i,s,a,o,u;if(t===null)return{};for(r={},n=Object.keys(t),i=0,s=n.length;i=55296&&r<=56319&&t+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function EMt(e){var t=/^\n* /;return t.test(e)}var SMt=1,Kwe=2,wMt=3,IMt=4,Qx=5;function Fan(e,t,r,n,i,s,a,o){var u,c=0,l=null,d=!1,f=!1,p=n!==-1,h=-1,m=Ban(DM(e,0))&&$an(DM(e,e.length-1));if(t||a)for(u=0;u=65536?u+=2:u++){if(c=DM(e,u),!PM(c))return Qx;m=m&&cMt(c,l,o),l=c}else{for(u=0;u=65536?u+=2:u++){if(c=DM(e,u),c===kM)d=!0,p&&(f=f||u-h-1>n&&e[h+1]!==" ",h=u);else if(!PM(c))return Qx;m=m&&cMt(c,l,o),l=c}f=f||p&&u-h-1>n&&e[h+1]!==" "}return!d&&!f?m&&!a&&!i(e)?SMt:s===OM?Qx:Kwe:r>9&&EMt(e)?Qx:a?s===OM?Qx:Kwe:f?IMt:wMt}function Uan(e,t,r,n,i){e.dump=function(){if(t.length===0)return e.quotingType===OM?'""':"''";if(!e.noCompatMode&&(Ran.indexOf(t)!==-1||Dan.test(t)))return e.quotingType===OM?'"'+t+'"':"'"+t+"'";var s=e.indent*Math.max(1,r),a=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-s),o=n||e.flowLevel>-1&&r>=e.flowLevel;function u(c){return Lan(e,c)}switch(Fan(t,o,e.indent,a,u,e.quotingType,e.forceQuotes&&!n,i)){case SMt:return t;case Kwe:return"'"+t.replace(/'/g,"''")+"'";case wMt:return"|"+lMt(t,e.indent)+dMt(oMt(t,s));case IMt:return">"+lMt(t,e.indent)+dMt(oMt(qan(t,a),s));case Qx:return'"'+jan(t,a)+'"';default:throw new MM("impossible error: invalid scalar style")}}()}function lMt(e,t){var r=EMt(e)?String(t):"",n=e[e.length-1]===` -`,i=n&&(e[e.length-2]===` +`+e.mark.snippet),n+" "+r):n}function n3(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=Hqt(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}n3.prototype=Object.create(Error.prototype);n3.prototype.constructor=n3;n3.prototype.toString=function(t){return this.name+": "+Hqt(this,t)};Vqt.exports=n3});var Kqt=S((xNs,jqt)=>{"use strict";var s3=xw();function I2e(e,t,r,n,s){var i="",a="",o=Math.floor(s/2)-1;return n-t>o&&(i=" ... ",t=n-o+i.length),r-n>o&&(a=" ...",r=n+o-a.length),{str:i+e.slice(t,r).replace(/\t/g,"\u2192")+a,pos:n-t+i.length}}function R2e(e,t){return s3.repeat(" ",t-e.length)+e}function Ubn(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],s=[],i,a=-1;i=r.exec(e.buffer);)s.push(i.index),n.push(i.index+i[0].length),e.position<=i.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var o="",c,u,l=Math.min(e.line+t.linesAfter,s.length).toString().length,d=t.maxLength-(t.indent+l+3);for(c=1;c<=t.linesBefore&&!(a-c<0);c++)u=I2e(e.buffer,n[a-c],s[a-c],e.position-(n[a]-n[a-c]),d),o=s3.repeat(" ",t.indent)+R2e((e.line-c+1).toString(),l)+" | "+u.str+` +`+o;for(u=I2e(e.buffer,n[a],s[a],e.position,d),o+=s3.repeat(" ",t.indent)+R2e((e.line+1).toString(),l)+" | "+u.str+` +`,o+=s3.repeat("-",t.indent+l+3+u.pos)+`^ +`,c=1;c<=t.linesAfter&&!(a+c>=s.length);c++)u=I2e(e.buffer,n[a+c],s[a+c],e.position-(n[a]-n[a+c]),d),o+=s3.repeat(" ",t.indent)+R2e((e.line+c+1).toString(),l)+" | "+u.str+` +`;return o.replace(/\n$/,"")}jqt.exports=Ubn});var Sc=S((wNs,zqt)=>{"use strict";var Gqt=ww(),Fbn=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],$bn=["scalar","sequence","mapping"];function qbn(e){var t={};return e!==null&&Object.keys(e).forEach(function(r){e[r].forEach(function(n){t[String(n)]=r})}),t}function Hbn(e,t){if(t=t||{},Object.keys(t).forEach(function(r){if(Fbn.indexOf(r)===-1)throw new Gqt('Unknown option "'+r+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(r){return r},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=qbn(t.styleAliases||null),$bn.indexOf(this.kind)===-1)throw new Gqt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}zqt.exports=Hbn});var w2e=S((NNs,Qqt)=>{"use strict";var i3=ww(),C2e=Sc();function Yqt(e,t){var r=[];return e[t].forEach(function(n){var s=r.length;r.forEach(function(i,a){i.tag===n.tag&&i.kind===n.kind&&i.multi===n.multi&&(s=a)}),r[s]=n}),r}function Vbn(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,r;function n(s){s.multi?(e.multi[s.kind].push(s),e.multi.fallback.push(s)):e[s.kind][s.tag]=e.fallback[s.tag]=s}for(t=0,r=arguments.length;t{"use strict";var jbn=Sc();Wqt.exports=new jbn("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}})});var O2e=S((DNs,Xqt)=>{"use strict";var Kbn=Sc();Xqt.exports=new Kbn("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}})});var D2e=S((PNs,Jqt)=>{"use strict";var Gbn=Sc();Jqt.exports=new Gbn("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}})});var P2e=S((LNs,Zqt)=>{"use strict";var zbn=w2e();Zqt.exports=new zbn({explicit:[N2e(),O2e(),D2e()]})});var L2e=S((MNs,eHt)=>{"use strict";var Ybn=Sc();function Qbn(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function Wbn(){return null}function Xbn(e){return e===null}eHt.exports=new Ybn("tag:yaml.org,2002:null",{kind:"scalar",resolve:Qbn,construct:Wbn,predicate:Xbn,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"})});var M2e=S((kNs,tHt)=>{"use strict";var Jbn=Sc();function Zbn(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function e1n(e){return e==="true"||e==="True"||e==="TRUE"}function t1n(e){return Object.prototype.toString.call(e)==="[object Boolean]"}tHt.exports=new Jbn("tag:yaml.org,2002:bool",{kind:"scalar",resolve:Zbn,construct:e1n,predicate:t1n,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})});var k2e=S((BNs,rHt)=>{"use strict";var r1n=xw(),n1n=Sc();function s1n(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function i1n(e){return 48<=e&&e<=55}function a1n(e){return 48<=e&&e<=57}function o1n(e){if(e===null)return!1;var t=e.length,r=0,n=!1,s;if(!t)return!1;if(s=e[r],(s==="-"||s==="+")&&(s=e[++r]),s==="0"){if(r+1===t)return!0;if(s=e[++r],s==="b"){for(r++;r=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var B2e=S((UNs,sHt)=>{"use strict";var nHt=xw(),l1n=Sc(),d1n=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function f1n(e){return!(e===null||!d1n.test(e)||e[e.length-1]==="_")}function h1n(e){var t,r;return t=e.replace(/_/g,"").toLowerCase(),r=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:r*parseFloat(t,10)}var p1n=/^[-+]?[0-9]+e/;function m1n(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(nHt.isNegativeZero(e))return"-0.0";return r=e.toString(10),p1n.test(r)?r.replace("e",".e"):r}function g1n(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||nHt.isNegativeZero(e))}sHt.exports=new l1n("tag:yaml.org,2002:float",{kind:"scalar",resolve:f1n,construct:h1n,predicate:g1n,represent:m1n,defaultStyle:"lowercase"})});var U2e=S((FNs,iHt)=>{"use strict";iHt.exports=P2e().extend({implicit:[L2e(),M2e(),k2e(),B2e()]})});var F2e=S(($Ns,aHt)=>{"use strict";aHt.exports=U2e()});var $2e=S((qNs,uHt)=>{"use strict";var _1n=Sc(),oHt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),cHt=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function A1n(e){return e===null?!1:oHt.exec(e)!==null||cHt.exec(e)!==null}function E1n(e){var t,r,n,s,i,a,o,c=0,u=null,l,d,f;if(t=oHt.exec(e),t===null&&(t=cHt.exec(e)),t===null)throw new Error("Date resolve error");if(r=+t[1],n=+t[2]-1,s=+t[3],!t[4])return new Date(Date.UTC(r,n,s));if(i=+t[4],a=+t[5],o=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+="0";c=+c}return t[9]&&(l=+t[10],d=+(t[11]||0),u=(l*60+d)*6e4,t[9]==="-"&&(u=-u)),f=new Date(Date.UTC(r,n,s,i,a,o,c)),u&&f.setTime(f.getTime()-u),f}function y1n(e){return e.toISOString()}uHt.exports=new _1n("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:A1n,construct:E1n,instanceOf:Date,represent:y1n})});var q2e=S((HNs,lHt)=>{"use strict";var v1n=Sc();function S1n(e){return e==="<<"||e===null}lHt.exports=new v1n("tag:yaml.org,2002:merge",{kind:"scalar",resolve:S1n})});var V2e=S((VNs,dHt)=>{"use strict";var T1n=Sc(),H2e=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function b1n(e){if(e===null)return!1;var t,r,n=0,s=e.length,i=H2e;for(r=0;r64)){if(t<0)return!1;n+=6}return n%8===0}function I1n(e){var t,r,n=e.replace(/[\r\n=]/g,""),s=n.length,i=H2e,a=0,o=[];for(t=0;t>16&255),o.push(a>>8&255),o.push(a&255)),a=a<<6|i.indexOf(n.charAt(t));return r=s%4*6,r===0?(o.push(a>>16&255),o.push(a>>8&255),o.push(a&255)):r===18?(o.push(a>>10&255),o.push(a>>2&255)):r===12&&o.push(a>>4&255),new Uint8Array(o)}function R1n(e){var t="",r=0,n,s,i=e.length,a=H2e;for(n=0;n>18&63],t+=a[r>>12&63],t+=a[r>>6&63],t+=a[r&63]),r=(r<<8)+e[n];return s=i%3,s===0?(t+=a[r>>18&63],t+=a[r>>12&63],t+=a[r>>6&63],t+=a[r&63]):s===2?(t+=a[r>>10&63],t+=a[r>>4&63],t+=a[r<<2&63],t+=a[64]):s===1&&(t+=a[r>>2&63],t+=a[r<<4&63],t+=a[64],t+=a[64]),t}function C1n(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}dHt.exports=new T1n("tag:yaml.org,2002:binary",{kind:"scalar",resolve:b1n,construct:I1n,predicate:C1n,represent:R1n})});var j2e=S((jNs,fHt)=>{"use strict";var x1n=Sc(),w1n=Object.prototype.hasOwnProperty,N1n=Object.prototype.toString;function O1n(e){if(e===null)return!0;var t=[],r,n,s,i,a,o=e;for(r=0,n=o.length;r{"use strict";var P1n=Sc(),L1n=Object.prototype.toString;function M1n(e){if(e===null)return!0;var t,r,n,s,i,a=e;for(i=new Array(a.length),t=0,r=a.length;t{"use strict";var B1n=Sc(),U1n=Object.prototype.hasOwnProperty;function F1n(e){if(e===null)return!0;var t,r=e;for(t in r)if(U1n.call(r,t)&&r[t]!==null)return!1;return!0}function $1n(e){return e!==null?e:{}}pHt.exports=new B1n("tag:yaml.org,2002:set",{kind:"mapping",resolve:F1n,construct:$1n})});var BQ=S((zNs,mHt)=>{"use strict";mHt.exports=F2e().extend({implicit:[$2e(),q2e()],explicit:[V2e(),j2e(),K2e(),G2e()]})});var DHt=S((YNs,W2e)=>{"use strict";var Db=xw(),SHt=ww(),q1n=Kqt(),H1n=BQ(),xy=Object.prototype.hasOwnProperty,UQ=1,THt=2,bHt=3,FQ=4,z2e=1,V1n=2,gHt=3,j1n=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,K1n=/[\x85\u2028\u2029]/,G1n=/[,\[\]\{\}]/,IHt=/^(?:!|!!|![a-z\-]+!)$/i,RHt=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function _Ht(e){return Object.prototype.toString.call(e)}function Cp(e){return e===10||e===13}function Pb(e){return e===9||e===32}function ll(e){return e===9||e===32||e===10||e===13}function Nw(e){return e===44||e===91||e===93||e===123||e===125}function z1n(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function Y1n(e){return e===120?2:e===117?4:e===85?8:0}function Q1n(e){return 48<=e&&e<=57?e-48:-1}function AHt(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` +`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function W1n(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function CHt(e,t,r){t==="__proto__"?Object.defineProperty(e,t,{configurable:!0,enumerable:!0,writable:!0,value:r}):e[t]=r}var xHt=new Array(256),wHt=new Array(256);for(Ob=0;Ob<256;Ob++)xHt[Ob]=AHt(Ob)?1:0,wHt[Ob]=AHt(Ob);var Ob;function X1n(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||H1n,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function NHt(e,t){var r={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return r.snippet=q1n(r),new SHt(t,r)}function Lt(e,t){throw NHt(e,t)}function $Q(e,t){e.onWarning&&e.onWarning.call(null,NHt(e,t))}var EHt={YAML:function(t,r,n){var s,i,a;t.version!==null&&Lt(t,"duplication of %YAML directive"),n.length!==1&&Lt(t,"YAML directive accepts exactly one argument"),s=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),s===null&&Lt(t,"ill-formed argument of the YAML directive"),i=parseInt(s[1],10),a=parseInt(s[2],10),i!==1&&Lt(t,"unacceptable YAML version of the document"),t.version=n[0],t.checkLineBreaks=a<2,a!==1&&a!==2&&$Q(t,"unsupported YAML version of the document")},TAG:function(t,r,n){var s,i;n.length!==2&&Lt(t,"TAG directive accepts exactly two arguments"),s=n[0],i=n[1],IHt.test(s)||Lt(t,"ill-formed tag handle (first argument) of the TAG directive"),xy.call(t.tagMap,s)&&Lt(t,'there is a previously declared suffix for "'+s+'" tag handle'),RHt.test(i)||Lt(t,"ill-formed tag prefix (second argument) of the TAG directive");try{i=decodeURIComponent(i)}catch{Lt(t,"tag prefix is malformed: "+i)}t.tagMap[s]=i}};function Cy(e,t,r,n){var s,i,a,o;if(t1&&(e.result+=Db.repeat(` +`,t-1))}function J1n(e,t,r){var n,s,i,a,o,c,u,l,d=e.kind,f=e.result,h;if(h=e.input.charCodeAt(e.position),ll(h)||Nw(h)||h===35||h===38||h===42||h===33||h===124||h===62||h===39||h===34||h===37||h===64||h===96||(h===63||h===45)&&(s=e.input.charCodeAt(e.position+1),ll(s)||r&&Nw(s)))return!1;for(e.kind="scalar",e.result="",i=a=e.position,o=!1;h!==0;){if(h===58){if(s=e.input.charCodeAt(e.position+1),ll(s)||r&&Nw(s))break}else if(h===35){if(n=e.input.charCodeAt(e.position-1),ll(n))break}else{if(e.position===e.lineStart&&qQ(e)||r&&Nw(h))break;if(Cp(h))if(c=e.line,u=e.lineStart,l=e.lineIndent,ma(e,!1,-1),e.lineIndent>=t){o=!0,h=e.input.charCodeAt(e.position);continue}else{e.position=a,e.line=c,e.lineStart=u,e.lineIndent=l;break}}o&&(Cy(e,i,a,!1),Q2e(e,e.line-c),i=a=e.position,o=!1),Pb(h)||(a=e.position+1),h=e.input.charCodeAt(++e.position)}return Cy(e,i,a,!1),e.result?!0:(e.kind=d,e.result=f,!1)}function Z1n(e,t){var r,n,s;if(r=e.input.charCodeAt(e.position),r!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=s=e.position;(r=e.input.charCodeAt(e.position))!==0;)if(r===39)if(Cy(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),r===39)n=e.position,e.position++,s=e.position;else return!0;else Cp(r)?(Cy(e,n,s,!0),Q2e(e,ma(e,!1,t)),n=s=e.position):e.position===e.lineStart&&qQ(e)?Lt(e,"unexpected end of the document within a single quoted scalar"):(e.position++,s=e.position);Lt(e,"unexpected end of the stream within a single quoted scalar")}function eIn(e,t){var r,n,s,i,a,o;if(o=e.input.charCodeAt(e.position),o!==34)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(o=e.input.charCodeAt(e.position))!==0;){if(o===34)return Cy(e,r,e.position,!0),e.position++,!0;if(o===92){if(Cy(e,r,e.position,!0),o=e.input.charCodeAt(++e.position),Cp(o))ma(e,!1,t);else if(o<256&&xHt[o])e.result+=wHt[o],e.position++;else if((a=Y1n(o))>0){for(s=a,i=0;s>0;s--)o=e.input.charCodeAt(++e.position),(a=z1n(o))>=0?i=(i<<4)+a:Lt(e,"expected hexadecimal character");e.result+=W1n(i),e.position++}else Lt(e,"unknown escape sequence");r=n=e.position}else Cp(o)?(Cy(e,r,n,!0),Q2e(e,ma(e,!1,t)),r=n=e.position):e.position===e.lineStart&&qQ(e)?Lt(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}Lt(e,"unexpected end of the stream within a double quoted scalar")}function tIn(e,t){var r=!0,n,s,i,a=e.tag,o,c=e.anchor,u,l,d,f,h,p=Object.create(null),m,g,_,y;if(y=e.input.charCodeAt(e.position),y===91)l=93,h=!1,o=[];else if(y===123)l=125,h=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),y=e.input.charCodeAt(++e.position);y!==0;){if(ma(e,!0,t),y=e.input.charCodeAt(e.position),y===l)return e.position++,e.tag=a,e.anchor=c,e.kind=h?"mapping":"sequence",e.result=o,!0;r?y===44&&Lt(e,"expected the node content, but found ','"):Lt(e,"missed comma between flow collection entries"),g=m=_=null,d=f=!1,y===63&&(u=e.input.charCodeAt(e.position+1),ll(u)&&(d=f=!0,e.position++,ma(e,!0,t))),n=e.line,s=e.lineStart,i=e.position,Dw(e,t,UQ,!1,!0),g=e.tag,m=e.result,ma(e,!0,t),y=e.input.charCodeAt(e.position),(f||e.line===n)&&y===58&&(d=!0,y=e.input.charCodeAt(++e.position),ma(e,!0,t),Dw(e,t,UQ,!1,!0),_=e.result),h?Ow(e,o,p,g,m,_,n,s,i):d?o.push(Ow(e,null,p,g,m,_,n,s,i)):o.push(m),ma(e,!0,t),y=e.input.charCodeAt(e.position),y===44?(r=!0,y=e.input.charCodeAt(++e.position)):r=!1}Lt(e,"unexpected end of the stream within a flow collection")}function rIn(e,t){var r,n,s=z2e,i=!1,a=!1,o=t,c=0,u=!1,l,d;if(d=e.input.charCodeAt(e.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)z2e===s?s=d===43?gHt:V1n:Lt(e,"repeat of a chomping mode identifier");else if((l=Q1n(d))>=0)l===0?Lt(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?Lt(e,"repeat of an indentation width identifier"):(o=t+l-1,a=!0);else break;if(Pb(d)){do d=e.input.charCodeAt(++e.position);while(Pb(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!Cp(d)&&d!==0)}for(;d!==0;){for(Y2e(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!a||e.lineIndento&&(o=e.lineIndent),Cp(d)){c++;continue}if(e.lineIndentt)&&c!==0)Lt(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(g&&(a=e.line,o=e.lineStart,c=e.position),Dw(e,t,FQ,!0,s)&&(g?p=e.result:m=e.result),g||(Ow(e,d,f,h,p,m,a,o,c),h=p=m=null),ma(e,!0,-1),y=e.input.charCodeAt(e.position)),(e.line===i||e.lineIndent>t)&&y!==0)Lt(e,"bad indentation of a mapping entry");else if(e.lineIndentt?c=1:e.lineIndent===t?c=0:e.lineIndentt?c=1:e.lineIndent===t?c=0:e.lineIndent tag; it should be "scalar", not "'+e.kind+'"'),d=0,f=e.implicitTypes.length;d"),e.result!==null&&p.kind!==e.kind&&Lt(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+p.kind+'", not "'+e.kind+'"'),p.resolve(e.result,e.tag)?(e.result=p.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Lt(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||l}function oIn(e){var t=e.position,r,n,s,i=!1,a;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(a=e.input.charCodeAt(e.position))!==0&&(ma(e,!0,-1),a=e.input.charCodeAt(e.position),!(e.lineIndent>0||a!==37));){for(i=!0,a=e.input.charCodeAt(++e.position),r=e.position;a!==0&&!ll(a);)a=e.input.charCodeAt(++e.position);for(n=e.input.slice(r,e.position),s=[],n.length<1&&Lt(e,"directive name must not be less than one character in length");a!==0;){for(;Pb(a);)a=e.input.charCodeAt(++e.position);if(a===35){do a=e.input.charCodeAt(++e.position);while(a!==0&&!Cp(a));break}if(Cp(a))break;for(r=e.position;a!==0&&!ll(a);)a=e.input.charCodeAt(++e.position);s.push(e.input.slice(r,e.position))}a!==0&&Y2e(e),xy.call(EHt,n)?EHt[n](e,n,s):$Q(e,'unknown document directive "'+n+'"')}if(ma(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,ma(e,!0,-1)):i&&Lt(e,"directives end mark is expected"),Dw(e,e.lineIndent-1,FQ,!1,!0),ma(e,!0,-1),e.checkLineBreaks&&K1n.test(e.input.slice(t,e.position))&&$Q(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&qQ(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,ma(e,!0,-1));return}if(e.position"u"&&(r=t,t=null);var n=OHt(e,r);if(typeof t!="function")return n;for(var s=0,i=n.length;s{"use strict";var jQ=xw(),l3=ww(),lIn=BQ(),qHt=Object.prototype.toString,HHt=Object.prototype.hasOwnProperty,tDe=65279,dIn=9,o3=10,fIn=13,hIn=32,pIn=33,mIn=34,X2e=35,gIn=37,_In=38,AIn=39,EIn=42,VHt=44,yIn=45,HQ=58,vIn=61,SIn=62,TIn=63,bIn=64,jHt=91,KHt=93,IIn=96,GHt=123,RIn=124,zHt=125,Tc={};Tc[0]="\\0";Tc[7]="\\a";Tc[8]="\\b";Tc[9]="\\t";Tc[10]="\\n";Tc[11]="\\v";Tc[12]="\\f";Tc[13]="\\r";Tc[27]="\\e";Tc[34]='\\"';Tc[92]="\\\\";Tc[133]="\\N";Tc[160]="\\_";Tc[8232]="\\L";Tc[8233]="\\P";var CIn=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],xIn=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function wIn(e,t){var r,n,s,i,a,o,c;if(t===null)return{};for(r={},n=Object.keys(t),s=0,i=n.length;s=55296&&r<=56319&&t+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function YHt(e){var t=/^\n* /;return t.test(e)}var QHt=1,Z2e=2,WHt=3,XHt=4,Pw=5;function kIn(e,t,r,n,s,i,a,o){var c,u=0,l=null,d=!1,f=!1,h=n!==-1,p=-1,m=LIn(a3(e,0))&&MIn(a3(e,e.length-1));if(t||a)for(c=0;c=65536?c+=2:c++){if(u=a3(e,c),!u3(u))return Pw;m=m&&MHt(u,l,o),l=u}else{for(c=0;c=65536?c+=2:c++){if(u=a3(e,c),u===o3)d=!0,h&&(f=f||c-p-1>n&&e[p+1]!==" ",p=c);else if(!u3(u))return Pw;m=m&&MHt(u,l,o),l=u}f=f||h&&c-p-1>n&&e[p+1]!==" "}return!d&&!f?m&&!a&&!s(e)?QHt:i===c3?Pw:Z2e:r>9&&YHt(e)?Pw:a?i===c3?Pw:Z2e:f?XHt:WHt}function BIn(e,t,r,n,s){e.dump=function(){if(t.length===0)return e.quotingType===c3?'""':"''";if(!e.noCompatMode&&(CIn.indexOf(t)!==-1||xIn.test(t)))return e.quotingType===c3?'"'+t+'"':"'"+t+"'";var i=e.indent*Math.max(1,r),a=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-i),o=n||e.flowLevel>-1&&r>=e.flowLevel;function c(u){return PIn(e,u)}switch(kIn(t,o,e.indent,a,c,e.quotingType,e.forceQuotes&&!n,s)){case QHt:return t;case Z2e:return"'"+t.replace(/'/g,"''")+"'";case WHt:return"|"+kHt(t,e.indent)+BHt(PHt(t,i));case XHt:return">"+kHt(t,e.indent)+BHt(PHt(UIn(t,a),i));case Pw:return'"'+FIn(t,a)+'"';default:throw new l3("impossible error: invalid scalar style")}}()}function kHt(e,t){var r=YHt(e)?String(t):"",n=e[e.length-1]===` +`,s=n&&(e[e.length-2]===` `||e===` -`),s=i?"+":n?"":"-";return r+s+` -`}function dMt(e){return e[e.length-1]===` -`?e.slice(0,-1):e}function qan(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var c=e.indexOf(` -`);return c=c!==-1?c:e.length,r.lastIndex=c,fMt(e.slice(0,c),t)}(),i=e[0]===` -`||e[0]===" ",s,a;a=r.exec(e);){var o=a[1],u=a[2];s=u[0]===" ",n+=o+(!i&&!s&&u!==""?` -`:"")+fMt(u,t),i=s}return n}function fMt(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,i=0,s,a=0,o=0,u="";n=r.exec(e);)o=n.index,o-i>t&&(s=a>i?a:o,u+=` -`+e.slice(i,s),i=s+1),a=o;return u+=` -`,e.length-i>t&&a>i?u+=e.slice(i,a)+` -`+e.slice(a+1):u+=e.slice(i),u.slice(1)}function jan(e){for(var t="",r=0,n,i=0;i=65536?i+=2:i++)r=DM(e,i),n=Do[r],!n&&PM(r)?(t+=e[i],r>=65536&&(t+=e[i+1])):t+=n||Oan(r);return t}function Han(e,t,r){var n="",i=e.tag,s,a,o;for(s=0,a=r.length;s"u"&&N0(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=i,e.dump="["+n+"]"}function pMt(e,t,r,n){var i="",s=e.tag,a,o,u;for(a=0,o=r.length;a"u"&&N0(e,t+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=Hwe(e,t)),e.dump&&kM===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=s,e.dump=i||"[]"}function Kan(e,t,r){var n="",i=e.tag,s=Object.keys(r),a,o,u,c,l;for(a=0,o=s.length;a1024&&(l+="? "),l+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),N0(e,t,c,!1,!1)&&(l+=e.dump,n+=l));e.tag=i,e.dump="{"+n+"}"}function Van(e,t,r,n){var i="",s=e.tag,a=Object.keys(r),o,u,c,l,d,f;if(e.sortKeys===!0)a.sort();else if(typeof e.sortKeys=="function")a.sort(e.sortKeys);else if(e.sortKeys)throw new MM("sortKeys must be a boolean or a function");for(o=0,u=a.length;o1024,d&&(e.dump&&kM===e.dump.charCodeAt(0)?f+="?":f+="? "),f+=e.dump,d&&(f+=Hwe(e,t)),N0(e,t+1,l,!0,d)&&(e.dump&&kM===e.dump.charCodeAt(0)?f+=":":f+=": ",f+=e.dump,i+=f));e.tag=s,e.dump=i||"{}"}function hMt(e,t,r){var n,i,s,a,o,u;for(i=r?e.explicitTypes:e.implicitTypes,s=0,a=i.length;s tag resolver accepts not "'+u+'" style');e.dump=n}return!0}return!1}function N0(e,t,r,n,i,s,a){e.tag=null,e.dump=r,hMt(e,r,!1)||hMt(e,r,!0);var o=mMt.call(e.dump),u=n,c;n&&(n=e.flowLevel<0||e.flowLevel>t);var l=o==="[object Object]"||o==="[object Array]",d,f;if(l&&(d=e.duplicates.indexOf(r),f=d!==-1),(e.tag!==null&&e.tag!=="?"||f||e.indent!==2&&t>0)&&(i=!1),f&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(l&&f&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),o==="[object Object]")n&&Object.keys(e.dump).length!==0?(Van(e,t,e.dump,i),f&&(e.dump="&ref_"+d+e.dump)):(Kan(e,t,e.dump),f&&(e.dump="&ref_"+d+" "+e.dump));else if(o==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!a&&t>0?pMt(e,t-1,e.dump,i):pMt(e,t,e.dump,i),f&&(e.dump="&ref_"+d+e.dump)):(Han(e,t,e.dump),f&&(e.dump="&ref_"+d+" "+e.dump));else if(o==="[object String]")e.tag!=="?"&&Uan(e,e.dump,t,s,u);else{if(o==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new MM("unacceptable kind of an object to dump "+o)}e.tag!==null&&e.tag!=="?"&&(c=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?c="!"+c:c.slice(0,18)==="tag:yaml.org,2002:"?c="!!"+c.slice(18):c="!<"+c+">",e.dump=c+" "+e.dump)}return!0}function zan(e,t){var r=[],n=[],i,s;for(Vwe(e,r,n),i=0,s=n.length;i{"use strict";var TMt=aMt(),Gan=CMt();function Qwe(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}du.exports.Type=Ro();du.exports.Schema=vwe();du.exports.FAILSAFE_SCHEMA=wwe();du.exports.JSON_SCHEMA=Nwe();du.exports.CORE_SCHEMA=Rwe();du.exports.DEFAULT_SCHEMA=RV();du.exports.load=TMt.load;du.exports.loadAll=TMt.loadAll;du.exports.dump=Gan.dump;du.exports.YAMLException=Hx();du.exports.types={binary:Pwe(),float:Twe(),map:Swe(),null:Iwe(),pairs:Lwe(),set:Bwe(),timestamp:Dwe(),bool:xwe(),int:Cwe(),merge:kwe(),omap:Mwe(),seq:Ewe(),str:bwe()};du.exports.safeLoad=Qwe("safeLoad","load");du.exports.safeLoadAll=Qwe("safeLoadAll","loadAll");du.exports.safeDump=Qwe("safeDump","dump")});var RMt=b(FV=>{"use strict";Object.defineProperty(FV,"__esModule",{value:!0});FV.YAMLReader=void 0;var Yan=TV(),Wan=CM(),Xan=NMt(),Gwe=class extends Wan.BaseReader{_parse(t,r){let n=(0,Xan.load)(r);if(n===void 0)throw new Error("Unable to parse YAML document.");return new Yan.ObjectReader(this._builderOptions).parse(t,n)}};FV.YAMLReader=Gwe});var DMt=b(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.YAMLReader=sh.JSONReader=sh.ObjectReader=sh.XMLReader=void 0;var Jan=pPt();Object.defineProperty(sh,"XMLReader",{enumerable:!0,get:function(){return Jan.XMLReader}});var Zan=TV();Object.defineProperty(sh,"ObjectReader",{enumerable:!0,get:function(){return Zan.ObjectReader}});var eon=hPt();Object.defineProperty(sh,"JSONReader",{enumerable:!0,get:function(){return eon.JSONReader}});var ton=RMt();Object.defineProperty(sh,"YAMLReader",{enumerable:!0,get:function(){return ton.YAMLReader}})});var OMt=b(qV=>{"use strict";Object.defineProperty(qV,"__esModule",{value:!0});qV.XMLBuilderImpl=void 0;var ron=X9(),jr=gn(),LM=qOt(),non=fn(),R0=Ln(),D0=en(),ko=wV(),kMt=Ts(),UV=DMt(),Ywe=class e{_domNode;constructor(t){this._domNode=t}get node(){return this._domNode}get options(){return this._options}set(t){return this._options=(0,jr.applyDefaults)((0,jr.applyDefaults)(this._options,t,!0),ron.DefaultBuilderOptions),this}ele(t,r,n){let i,s,a;if((0,jr.isObject)(t))return new UV.ObjectReader(this._options).parse(this,t);if((0,jr.isString)(t)&&t!==null&&/^\s*this.att(f,p),this),this;t!=null&&(t=(0,jr.getValue)(t+"")),r!=null&&(r=(0,jr.getValue)(r+"")),n!=null&&(n=(0,jr.getValue)(n+""));let i,s,a;if((t===null||(0,jr.isString)(t))&&(0,jr.isString)(r)&&(n===null||(0,jr.isString)(n)))[i,s,a]=[t,r,n];else if((0,jr.isString)(t)&&(r==null||(0,jr.isString)(r)))[i,s,a]=[void 0,t,r];else throw new Error("Attribute name and value not specified. "+this._debugInfo());if(this._options.keepNullAttributes&&a==null)a="";else if(a==null)return this;if(!R0.Guard.isElementNode(this.node))throw new Error("An attribute can only be assigned to an element node.");let o=this.node;[i,s]=this._extractNamespace(i,s,!1),s=(0,ko.sanitizeInput)(s,this._options.invalidCharReplacement),i=(0,ko.sanitizeInput)(i,this._options.invalidCharReplacement),a=(0,ko.sanitizeInput)(a,this._options.invalidCharReplacement);let[u,c]=(0,D0.namespace_extractQName)(s),[l]=(0,D0.namespace_extractQName)(o.prefix?o.prefix+":"+o.localName:o.localName),d=null;return u==="xmlns"?(i=kMt.namespace.XMLNS,o.namespaceURI===null&&l===c&&(d=a)):u===null&&c==="xmlns"&&l===null&&(i=kMt.namespace.XMLNS,d=a),d!==null&&(this._updateNamespace(d),o=this.node),i!==void 0?o.setAttributeNS(i,s,a):o.setAttribute(s,a),this}removeAtt(t,r){if(!R0.Guard.isElementNode(this.node))throw new Error("An attribute can only be removed from an element node.");t=(0,jr.getValue)(t),r!==void 0&&(r=(0,jr.getValue)(r));let n,i;if(t!==null&&r===void 0)i=t;else if((t===null||(0,jr.isString)(t))&&r!==void 0)n=t,i=r;else throw new Error("Attribute namespace must be a string. "+this._debugInfo());return(0,jr.isArray)(i)||(0,jr.isSet)(i)?(0,jr.forEachArray)(i,s=>n===void 0?this.removeAtt(s):this.removeAtt(n,s),this):n!==void 0?(i=(0,ko.sanitizeInput)(i,this._options.invalidCharReplacement),n=(0,ko.sanitizeInput)(n,this._options.invalidCharReplacement),this.node.removeAttributeNS(n,i)):(i=(0,ko.sanitizeInput)(i,this._options.invalidCharReplacement),this.node.removeAttribute(i)),this}txt(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createTextNode((0,ko.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}com(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createComment((0,ko.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}dat(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createCDATASection((0,ko.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}ins(t,r=""){if(r==null)if(this._options.keepNullNodes)r="";else return this;if((0,jr.isArray)(t)||(0,jr.isSet)(t))(0,jr.forEachArray)(t,n=>{n+="";let i=n.indexOf(" "),s=i===-1?n:n.substr(0,i),a=i===-1?"":n.substr(i+1);this.ins(s,a)},this);else if((0,jr.isMap)(t)||(0,jr.isObject)(t))(0,jr.forEachObject)(t,(n,i)=>this.ins(n,i),this);else{let n=this._doc.createProcessingInstruction((0,ko.sanitizeInput)(t,this._options.invalidCharReplacement),(0,ko.sanitizeInput)(r,this._options.invalidCharReplacement));this.node.appendChild(n)}return this}dec(t){return this._options.version=t.version||"1.0",this._options.encoding=t.encoding,this._options.standalone=t.standalone,this}dtd(t){let r=(0,ko.sanitizeInput)(t&&t.name||(this._doc.documentElement?this._doc.documentElement.tagName:"ROOT"),this._options.invalidCharReplacement),n=(0,ko.sanitizeInput)(t&&t.pubID||"",this._options.invalidCharReplacement),i=(0,ko.sanitizeInput)(t&&t.sysID||"",this._options.invalidCharReplacement);if(this._doc.documentElement!==null&&r!==this._doc.documentElement.tagName)throw new Error("DocType name does not match document element name.");let s=this._doc.implementation.createDocumentType(r,n,i);return this._doc.doctype!==null?this._doc.replaceChild(s,this._doc.doctype):this._doc.insertBefore(s,this._doc.documentElement),this}import(t){let r=this._domNode,n=this._doc,i=t.node,s=a=>{if(!a._namespace){let[o]=(0,D0.namespace_extractQName)(a.prefix?a.prefix+":"+a.localName:a.localName),u=r.lookupNamespaceURI(o);new e(a)._updateNamespace(u)}};if(R0.Guard.isDocumentNode(i)){let a=i.documentElement;if(a===null)throw new Error("Imported document has no document element node. "+this._debugInfo());let o=n.importNode(a,!0);r.appendChild(o),s(o)}else if(R0.Guard.isDocumentFragmentNode(i))for(let a of i.childNodes){let o=n.importNode(a,!0);r.appendChild(o),R0.Guard.isElementNode(o)&&s(o)}else{let a=n.importNode(i,!0);r.appendChild(a),R0.Guard.isElementNode(a)&&s(a)}return this}doc(){if(this._doc._isFragment){let t=this.node;for(;t&&t.nodeType!==non.NodeType.DocumentFragment;)t=t.parentNode;if(t===null)throw new Error("Node has no parent node while searching for document fragment ancestor. "+this._debugInfo());return new e(t)}else return new e(this._doc)}root(){let t=this._doc.documentElement;if(!t)throw new Error("Document root element is null. "+this._debugInfo());return new e(t)}up(){let t=this._domNode.parentNode;if(!t)throw new Error("Parent node is null. "+this._debugInfo());return new e(t)}prev(){let t=this._domNode.previousSibling;if(!t)throw new Error("Previous sibling node is null. "+this._debugInfo());return new e(t)}next(){let t=this._domNode.nextSibling;if(!t)throw new Error("Next sibling node is null. "+this._debugInfo());return new e(t)}first(){let t=this._domNode.firstChild;if(!t)throw new Error("First child node is null. "+this._debugInfo());return new e(t)}last(){let t=this._domNode.lastChild;if(!t)throw new Error("Last child node is null. "+this._debugInfo());return new e(t)}each(t,r=!1,n=!1,i){let s=this._getFirstDescendantNode(this._domNode,r,n);for(;s[0];){let a=this._getNextDescendantNode(this._domNode,s[0],n,s[1],s[2]);t.call(i,new e(s[0]),s[1],s[2]),s=a}return this}map(t,r=!1,n=!1,i){let s=[];return this.each((a,o,u)=>s.push(t.call(i,a,o,u)),r,n),s}reduce(t,r,n=!1,i=!1,s){let a=r;return this.each((o,u,c)=>a=t.call(s,a,o,u,c),n,i),a}find(t,r=!1,n=!1,i){let s=this._getFirstDescendantNode(this._domNode,r,n);for(;s[0];){let a=new e(s[0]);if(t.call(i,a,s[1],s[2]))return a;s=this._getNextDescendantNode(this._domNode,s[0],n,s[1],s[2])}}filter(t,r=!1,n=!1,i){let s=[];return this.each((a,o,u)=>{t.call(i,a,o,u)&&s.push(a)},r,n),s}every(t,r=!1,n=!1,i){let s=this._getFirstDescendantNode(this._domNode,r,n);for(;s[0];){let a=new e(s[0]);if(!t.call(i,a,s[1],s[2]))return!1;s=this._getNextDescendantNode(this._domNode,s[0],n,s[1],s[2])}return!0}some(t,r=!1,n=!1,i){let s=this._getFirstDescendantNode(this._domNode,r,n);for(;s[0];){let a=new e(s[0]);if(t.call(i,a,s[1],s[2]))return!0;s=this._getNextDescendantNode(this._domNode,s[0],n,s[1],s[2])}return!1}toArray(t=!1,r=!1){let n=[];return this.each(i=>n.push(i),t,r),n}toString(t){return t=t||{},t.format===void 0&&(t.format="xml"),this._serialize(t)}toObject(t){return t=t||{},t.format===void 0&&(t.format="object"),this._serialize(t)}end(t){return t=t||{},t.format===void 0&&(t.format="xml"),this.doc()._serialize(t)}_getFirstDescendantNode(t,r,n){return r?[this._domNode,0,0]:n?this._getNextDescendantNode(t,t,n,0,0):[this._domNode.firstChild,0,1]}_getNextDescendantNode(t,r,n,i,s){if(n){if(r.firstChild)return[r.firstChild,0,s+1];if(r===t)return[null,-1,-1];if(r.nextSibling)return[r.nextSibling,i+1,s];let a=r.parentNode;for(;a&&a!==t;){if(a.nextSibling)return[a.nextSibling,(0,D0.tree_index)(a.nextSibling),s-1];a=a.parentNode,s--}}else return t===r?[r.firstChild,0,s+1]:[r.nextSibling,i+1,s];return[null,-1,-1]}_serialize(t){if(t.format==="xml")return new LM.XMLWriter(this._options,t).serialize(this.node);if(t.format==="map")return new LM.MapWriter(this._options,t).serialize(this.node);if(t.format==="object")return new LM.ObjectWriter(this._options,t).serialize(this.node);if(t.format==="json")return new LM.JSONWriter(this._options,t).serialize(this.node);if(t.format==="yaml")return new LM.YAMLWriter(this._options,t).serialize(this.node);throw new Error("Invalid writer format: "+t.format+". "+this._debugInfo())}_extractNamespace(t,r,n){let i=r.indexOf("@");if(i>0&&(t===void 0&&(t=r.slice(i+1)),r=r.slice(0,i)),t===void 0)t=n?this._options.defaultNamespace.ele:this._options.defaultNamespace.att;else if(t!==null&&t[0]==="@"){let s=t.slice(1);if(t=this._options.namespaceAlias[s],t===void 0)throw new Error("Namespace alias `"+s+"` is not defined. "+this._debugInfo())}return[t,r]}_updateNamespace(t){let r=this._domNode;if(R0.Guard.isElementNode(r)&&t!==null&&r.namespaceURI!==t){let[n,i]=(0,D0.namespace_extractQName)(r.prefix?r.prefix+":"+r.localName:r.localName),s=(0,D0.create_element)(this._doc,i,t,n);for(let o of r.attributes){let u=o.prefix?o.prefix+":"+o.localName:o.localName,[c]=(0,D0.namespace_extractQName)(u),l=o.namespaceURI;l===null&&c!==null&&(l=r.lookupNamespaceURI(c)),l===null?s.setAttribute(u,o.value):s.setAttributeNS(l,u,o.value)}let a=r.parentNode;if(a===null)throw new Error("Parent node is null."+this._debugInfo());a.replaceChild(s,r),this._domNode=s;for(let o of r.childNodes){let u=o.cloneNode(!0);if(s.appendChild(u),R0.Guard.isElementNode(u)&&!u._namespace){let[c]=(0,D0.namespace_extractQName)(u.prefix?u.prefix+":"+u.localName:u.localName),l=s.lookupNamespaceURI(c);new e(u)._updateNamespace(l)}}}}get _doc(){let t=this.node;if(R0.Guard.isDocumentNode(t))return t;{let r=t.ownerDocument;if(!r)throw new Error("Owner document is null. "+this._debugInfo());return r}}_debugInfo(t){let r=this.node,n=r.parentNode;t=t||r.nodeName;let i=n?n.nodeName:"";return i?"node: <"+t+">, parent: <"+i+">":"node: <"+t+">"}get _options(){let t=this._doc;if(t._xmlBuilderOptions===void 0)throw new Error("Builder options is not set.");return t._xmlBuilderOptions}set _options(t){let r=this._doc;r._xmlBuilderOptions=t}};qV.XMLBuilderImpl=Ywe});var Xwe=b(Wx=>{"use strict";Object.defineProperty(Wx,"__esModule",{value:!0});Wx.builder=son;Wx.create=MMt;Wx.fragment=aon;Wx.convert=oon;var Yx=X9(),jV=gn(),ion=Ln(),HV=KV(),PMt=wV();function son(e,t){let r=Wwe(Gx(e)?e:Yx.DefaultBuilderOptions),n=ion.Guard.isNode(e)||(0,jV.isArray)(e)?e:t;if(n===void 0)throw new Error("Invalid arguments.");if((0,jV.isArray)(n)){let i=[];for(let s=0;s{"use strict";Object.defineProperty(VV,"__esModule",{value:!0});VV.BaseCBWriter=void 0;var Jwe=class{_builderOptions;_writerOptions;level=0;hasData;constructor(t){this._builderOptions=t,this._writerOptions=t}};VV.BaseCBWriter=Jwe});var BMt=b(QV=>{"use strict";Object.defineProperty(QV,"__esModule",{value:!0});QV.XMLCBWriter=void 0;var uon=zV(),Zwe=class extends uon.BaseCBWriter{_lineLength=0;constructor(t){super(t)}frontMatter(){return""}declaration(t,r,n){let i=this._beginLine()+"",i}docType(t,r,n){let i=this._beginLine();return r&&n?i+="':r?i+="':n?i+="':i+="",i}comment(t){return this._beginLine()+""}text(t){return t}instruction(t,r){return r?this._beginLine()+"":this._beginLine()+""}cdata(t){return this._beginLine()+""}openTagBegin(t){return this._lineLength+=1+t.length,this._beginLine()+"<"+t}openTagEnd(t,r,n){return n?" />":r?this._writerOptions.allowEmptyTags?">":this._writerOptions.spaceBeforeSlash?" />":"/>":">"}closeTag(t,r){return(r?"":this._beginLine())+""}attribute(t,r){let n=t+'="'+r+'"';return this._writerOptions.prettyPrint&&this._writerOptions.width>0&&this._lineLength+1+n.length>this._writerOptions.width?(n=this._beginLine()+this._indent(1)+n,this._lineLength=n.length,n):(this._lineLength+=1+n.length," "+n)}beginElement(t){}endElement(t){}_beginLine(){if(this._writerOptions.prettyPrint){let t=(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level);return this._lineLength=t.length,t}else return""}_indent(t){return t<=0?"":this._writerOptions.indent.repeat(t)}};QV.XMLCBWriter=Zwe});var $Mt=b(GV=>{"use strict";Object.defineProperty(GV,"__esModule",{value:!0});GV.JSONCBWriter=void 0;var con=zV(),eIe=class extends con.BaseCBWriter{_hasChildren=[];_additionalLevel=0;constructor(t){super(t)}frontMatter(){return""}declaration(t,r,n){return""}docType(t,r,n){return""}comment(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.comment)+this._sep()+this._val(t)+this._sep()+"}"}text(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.text)+this._sep()+this._val(t)+this._sep()+"}"}instruction(t,r){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.ins)+this._sep()+this._val(r?t+" "+r:t)+this._sep()+"}"}cdata(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.cdata)+this._sep()+this._val(t)+this._sep()+"}"}attribute(t,r){return this._comma()+this._beginLine(1)+"{"+this._sep()+this._key(this._builderOptions.convert.att+t)+this._sep()+this._val(r)+this._sep()+"}"}openTagBegin(t){let r=this._comma()+this._beginLine()+"{"+this._sep()+this._key(t)+this._sep()+"{";return this._additionalLevel++,this.hasData=!0,r+=this._beginLine()+this._key(this._builderOptions.convert.text)+this._sep()+"[",this._hasChildren.push(!1),r}openTagEnd(t,r,n){if(r){let i=this._sep()+"]";return this._additionalLevel--,i+=this._beginLine()+"}"+this._sep()+"}",i}else return""}closeTag(t){let r=this._beginLine()+"]";return this._additionalLevel--,r+=this._beginLine()+"}"+this._sep()+"}",r}beginElement(t){}endElement(t){this._hasChildren.pop()}_beginLine(t=0){return this._writerOptions.prettyPrint?(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level+t):""}_indent(t){return t+this._additionalLevel<=0?"":this._writerOptions.indent.repeat(t+this._additionalLevel)}_comma(){let t=this._hasChildren[this._hasChildren.length-1]?",":"";return this._hasChildren.length>0&&(this._hasChildren[this._hasChildren.length-1]=!0),t}_sep(){return this._writerOptions.prettyPrint?" ":""}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};GV.JSONCBWriter=eIe});var FMt=b(YV=>{"use strict";Object.defineProperty(YV,"__esModule",{value:!0});YV.YAMLCBWriter=void 0;var lon=zV(),tIe=class extends lon.BaseCBWriter{_rootWritten=!1;_additionalLevel=0;constructor(t){if(super(t),t.indent.length<2)throw new Error("YAML indententation string must be at least two characters long.");if(t.offset<0)throw new Error("YAML offset should be zero or a positive number.")}frontMatter(){return this._beginLine()+"---"}declaration(t,r,n){return""}docType(t,r,n){return""}comment(t){return this._beginLine()+this._key(this._builderOptions.convert.comment)+" "+this._val(t)}text(t){return this._beginLine()+this._key(this._builderOptions.convert.text)+" "+this._val(t)}instruction(t,r){return this._beginLine()+this._key(this._builderOptions.convert.ins)+" "+this._val(r?t+" "+r:t)}cdata(t){return this._beginLine()+this._key(this._builderOptions.convert.cdata)+" "+this._val(t)}attribute(t,r){this._additionalLevel++;let n=this._beginLine()+this._key(this._builderOptions.convert.att+t)+" "+this._val(r);return this._additionalLevel--,n}openTagBegin(t){let r=this._beginLine()+this._key(t);return this._rootWritten||(this._rootWritten=!0),this.hasData=!0,this._additionalLevel++,r+=this._beginLine(!0)+this._key(this._builderOptions.convert.text),r}openTagEnd(t,r,n){return r?" "+this._val(""):""}closeTag(t){return this._additionalLevel--,""}beginElement(t){}endElement(t){}_beginLine(t=!1){return(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level,t)}_indent(t,r){if(t+this._additionalLevel<=0)return"";{let n=this._writerOptions.indent.repeat(t+this._additionalLevel);return!r&&this._rootWritten?n.substr(0,n.length-2)+"-"+n.substr(-1,1):n}}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};YV.YAMLCBWriter=tIe});var UMt=b(WV=>{"use strict";Object.defineProperty(WV,"__esModule",{value:!0});WV.XMLBuilderCBImpl=void 0;var don=X9(),rIe=gn(),w_=Xwe(),I_=en(),k0=Ts(),fon=aH(),pon=oM(),BM=Ln(),hon=BMt(),mon=$Mt(),gon=FMt(),yon=require("events"),nIe=class e extends yon.EventEmitter{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);_options;_builderOptions;_writer;_fragment;_hasDeclaration=!1;_docTypeName="";_hasDocumentElement=!1;_currentElement;_currentElementSerialized=!1;_openTags=[];_prefixMap;_prefixIndex;_ended=!1;constructor(t,r=!1){super(),this._fragment=r,this._options=(0,rIe.applyDefaults)(t||{},don.DefaultXMLBuilderCBOptions),this._builderOptions={defaultNamespace:this._options.defaultNamespace,namespaceAlias:this._options.namespaceAlias},this._options.format==="json"?this._writer=new mon.JSONCBWriter(this._options):this._options.format==="yaml"?this._writer=new gon.YAMLCBWriter(this._options):this._writer=new hon.XMLCBWriter(this._options),this._options.data!==void 0&&this.on("data",this._options.data),this._options.end!==void 0&&this.on("end",this._options.end),this._options.error!==void 0&&this.on("error",this._options.error),this._prefixMap=new fon.NamespacePrefixMap,this._prefixMap.set("xml",k0.namespace.XML),this._prefixIndex={value:1},this._push(this._writer.frontMatter())}ele(t,r,n){if((0,rIe.isObject)(t)||(0,rIe.isString)(t)&&(/^\s*/g,">");this._push(this._writer.text(n));let i=this._openTags[this._openTags.length-1];return i&&(i[i.length-1]=!0),this}ins(t,r=""){this._serializeOpenTag(!0);let n;try{n=(0,w_.fragment)(this._builderOptions).ins(t,r).first().node}catch(i){return this.emit("error",i),this}return this._options.wellFormed&&(n.target.indexOf(":")!==-1||/^xml$/i.test(n.target))?(this.emit("error",new Error("Processing instruction target contains invalid characters (well-formed required).")),this):this._options.wellFormed&&!(0,I_.xml_isLegalChar)(n.data)?(this.emit("error",Error("Processing instruction data contains invalid characters (well-formed required).")),this):(this._push(this._writer.instruction(n.target,n.data)),this)}dat(t){this._serializeOpenTag(!0);let r;try{r=(0,w_.fragment)(this._builderOptions).dat(t).first().node}catch(n){return this.emit("error",n),this}return this._push(this._writer.cdata(r.data)),this}dec(t={version:"1.0"}){return this._fragment?(this.emit("error",Error("Cannot insert an XML declaration into a document fragment.")),this):this._hasDeclaration?(this.emit("error",Error("XML declaration is already inserted.")),this):(this._push(this._writer.declaration(t.version||"1.0",t.encoding,t.standalone)),this._hasDeclaration=!0,this)}dtd(t){if(this._fragment)return this.emit("error",Error("Cannot insert a DocType declaration into a document fragment.")),this;if(this._docTypeName!=="")return this.emit("error",new Error("DocType declaration is already inserted.")),this;if(this._hasDocumentElement)return this.emit("error",new Error("Cannot insert DocType declaration after document element.")),this;let r;try{r=(0,w_.create)().dtd(t).first().node}catch(n){return this.emit("error",n),this}return this._options.wellFormed&&!(0,I_.xml_isPubidChar)(r.publicId)?(this.emit("error",new Error("DocType public identifier does not match PubidChar construct (well-formed required).")),this):this._options.wellFormed&&(!(0,I_.xml_isLegalChar)(r.systemId)||r.systemId.indexOf('"')!==-1&&r.systemId.indexOf("'")!==-1)?(this.emit("error",new Error("DocType system identifier contains invalid characters (well-formed required).")),this):(this._docTypeName=t.name,this._push(this._writer.docType(t.name,r.publicId,r.systemId)),this)}import(t){let r=(0,w_.fragment)().set(this._options);try{r.import(t)}catch(n){return this.emit("error",n),this}for(let n of r.node.childNodes)this._fromNode(n);return this}up(){return this._serializeOpenTag(!1),this._serializeCloseTag(),this}end(){for(this._serializeOpenTag(!1);this._openTags.length>0;)this._serializeCloseTag();return this._push(null),this}_serializeOpenTag(t){if(this._currentElementSerialized||this._currentElement===void 0)return;let r=this._currentElement.node;if(this._options.wellFormed&&(r.localName.indexOf(":")!==-1||!(0,I_.xml_isName)(r.localName))){this.emit("error",new Error("Node local name contains invalid characters (well-formed required)."));return}let n="",i=!1,s=this._prefixMap.copy(),a={},o=this._recordNamespaceInformation(r,s,a),u=this._openTags.length===0?null:this._openTags[this._openTags.length-1][1],c=r.namespaceURI;if(c===null&&(c=u),u===c)o!==null&&(i=!0),c===k0.namespace.XML?n="xml:"+r.localName:n=r.localName,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n));else{let d=r.prefix,f=null;if((d!==null||c!==o)&&(f=s.get(d,c)),d==="xmlns"){if(this._options.wellFormed){this.emit("error",new Error("An element cannot have the 'xmlns' prefix (well-formed required)."));return}f=d}f!==null?(n=f+":"+r.localName,o!==null&&o!==k0.namespace.XML&&(u=o||null),this._writer.beginElement(n),this._push(this._writer.openTagBegin(n))):d!==null?(d in a&&(d=this._generatePrefix(c,s,this._prefixIndex)),s.set(d,c),n+=d+":"+r.localName,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)),this._push(this._writer.attribute("xmlns:"+d,this._serializeAttributeValue(c,this._options.wellFormed))),o!==null&&(u=o||null)):o===null||o!==null&&o!==c?(i=!0,n+=r.localName,u=c,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)),this._push(this._writer.attribute("xmlns",this._serializeAttributeValue(c,this._options.wellFormed)))):(n+=r.localName,u=c,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)))}this._serializeAttributes(r,s,this._prefixIndex,a,i,this._options.wellFormed);let l=c===k0.namespace.HTML;l&&!t&&e._VoidElementNames.has(r.localName)?(this._push(this._writer.openTagEnd(n,!0,!0)),this._writer.endElement(n)):!l&&!t?(this._push(this._writer.openTagEnd(n,!0,!1)),this._writer.endElement(n)):this._push(this._writer.openTagEnd(n,!1,!1)),this._currentElementSerialized=!0,this._openTags.push([n,u,this._prefixMap,t,void 0]),this._isPrefixMapModified(this._prefixMap,s)&&(this._prefixMap=s),this._writer.level++}_serializeCloseTag(){this._writer.level--;let t=this._openTags.pop();if(t===void 0){this.emit("error",new Error("Last element is undefined."));return}let[r,n,i,s,a]=t;this._prefixMap=i,s&&(this._push(this._writer.closeTag(r,a)),this._writer.endElement(r))}_push(t){t===null?(this._ended=!0,this.emit("end")):this._ended?this.emit("error",new Error("Cannot push to ended stream.")):t.length!==0&&(this._writer.hasData=!0,this.emit("data",t,this._writer.level))}_fromNode(t){if(BM.Guard.isElementNode(t)){let r=t.prefix?t.prefix+":"+t.localName:t.localName;t.namespaceURI!==null?this.ele(t.namespaceURI,r):this.ele(r);for(let n of t.attributes){let i=n.prefix?n.prefix+":"+n.localName:n.localName;n.namespaceURI!==null?this.att(n.namespaceURI,i,n.value):this.att(i,n.value)}for(let n of t.childNodes)this._fromNode(n);this.up()}else BM.Guard.isExclusiveTextNode(t)&&t.data?this.txt(t.data):BM.Guard.isCommentNode(t)?this.com(t.data):BM.Guard.isCDATASectionNode(t)?this.dat(t.data):BM.Guard.isProcessingInstructionNode(t)&&this.ins(t.target,t.data)}_serializeAttributes(t,r,n,i,s,a){let o=a?new pon.LocalNameSet:void 0;for(let u of t.attributes){if(!a&&!s&&u.namespaceURI===null){this._push(this._writer.attribute(u.localName,this._serializeAttributeValue(u.value,this._options.wellFormed)));continue}if(a&&o&&o.has(u.namespaceURI,u.localName)){this.emit("error",new Error("Element contains duplicate attributes (well-formed required)."));return}a&&o&&o.set(u.namespaceURI,u.localName);let c=u.namespaceURI,l=null;if(c!==null)if(l=r.get(u.prefix,c),c===k0.namespace.XMLNS){if(u.value===k0.namespace.XML||u.prefix===null&&s||u.prefix!==null&&(!(u.localName in i)||i[u.localName]!==u.value)&&r.has(u.localName,u.value))continue;if(a&&u.value===k0.namespace.XMLNS){this.emit("error",new Error("XMLNS namespace is reserved (well-formed required)."));return}if(a&&u.value===""){this.emit("error",new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required)."));return}u.prefix==="xmlns"&&(l="xmlns")}else l===null&&(u.prefix!==null&&(!r.hasPrefix(u.prefix)||r.has(u.prefix,c))?l=u.prefix:l=this._generatePrefix(c,r,n),this._push(this._writer.attribute("xmlns:"+l,this._serializeAttributeValue(c,this._options.wellFormed))));if(a&&(u.localName.indexOf(":")!==-1||!(0,I_.xml_isName)(u.localName)||u.localName==="xmlns"&&c===null)){this.emit("error",new Error("Attribute local name contains invalid characters (well-formed required)."));return}this._push(this._writer.attribute((l!==null?l+":":"")+u.localName,this._serializeAttributeValue(u.value,this._options.wellFormed)))}}_serializeAttributeValue(t,r){return r&&t!==null&&!(0,I_.xml_isLegalChar)(t)?(this.emit("error",new Error("Invalid characters in attribute value.")),""):t===null?"":t.replace(/(?!&(lt|gt|amp|apos|quot);)&/g,"&").replace(//g,">").replace(/"/g,""")}_recordNamespaceInformation(t,r,n){let i=null;for(let s of t.attributes){let a=s.namespaceURI,o=s.prefix;if(a===k0.namespace.XMLNS)if(o===null){i=s.value;continue}else{let u=s.localName,c=s.value;if(c===k0.namespace.XML||(c===""&&(c=null),r.has(u,c)))continue;r.set(u,c),n[u]=c||""}}return i}_generatePrefix(t,r,n){let i="ns"+n.value;return n.value++,r.set(i,t),i}_isPrefixMapModified(t,r){let n=t._items,i=r._items,s=t._nullItems,a=r._nullItems;for(let o in i){let u=n[o];if(u===void 0)return!0;let c=i[o];if(u.length!==c.length)return!0;for(let l=0;l{"use strict";Object.defineProperty(XV,"__esModule",{value:!0});XV.createCB=_on;XV.fragmentCB=Aon;var qMt=KV();function _on(e){return new qMt.XMLBuilderCBImpl(e)}function Aon(e){return new qMt.XMLBuilderCBImpl(e,!0)}});var KV=b(Ea=>{"use strict";Object.defineProperty(Ea,"__esModule",{value:!0});Ea.fragmentCB=Ea.createCB=Ea.convert=Ea.fragment=Ea.create=Ea.builder=Ea.XMLBuilderCBImpl=Ea.XMLBuilderImpl=void 0;var von=OMt();Object.defineProperty(Ea,"XMLBuilderImpl",{enumerable:!0,get:function(){return von.XMLBuilderImpl}});var bon=UMt();Object.defineProperty(Ea,"XMLBuilderCBImpl",{enumerable:!0,get:function(){return bon.XMLBuilderCBImpl}});var JV=Xwe();Object.defineProperty(Ea,"builder",{enumerable:!0,get:function(){return JV.builder}});Object.defineProperty(Ea,"create",{enumerable:!0,get:function(){return JV.create}});Object.defineProperty(Ea,"fragment",{enumerable:!0,get:function(){return JV.fragment}});Object.defineProperty(Ea,"convert",{enumerable:!0,get:function(){return JV.convert}});var HMt=jMt();Object.defineProperty(Ea,"createCB",{enumerable:!0,get:function(){return HMt.createCB}});Object.defineProperty(Ea,"fragmentCB",{enumerable:!0,get:function(){return HMt.fragmentCB}})});var KMt=b(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.fragmentCB=oc.createCB=oc.convert=oc.fragment=oc.create=oc.builder=void 0;var Xx=KV();Object.defineProperty(oc,"builder",{enumerable:!0,get:function(){return Xx.builder}});Object.defineProperty(oc,"create",{enumerable:!0,get:function(){return Xx.create}});Object.defineProperty(oc,"fragment",{enumerable:!0,get:function(){return Xx.fragment}});Object.defineProperty(oc,"convert",{enumerable:!0,get:function(){return Xx.convert}});Object.defineProperty(oc,"createCB",{enumerable:!0,get:function(){return Xx.createCB}});Object.defineProperty(oc,"fragmentCB",{enumerable:!0,get:function(){return Xx.fragmentCB}})});var fu=b((qui,tC)=>{var Uui=require("crypto");tC.exports.linebrk=function(e,t){for(var r="",n=0;n+t0){if(r>=4)return e.readUIntBE(t,r);for(var n=0,i=t+r,s=0;i>t;i--,s+=2)n+=e[i-1]*Math.pow(16,s);return n}else return NaN};tC.exports._={isObject:function(e){var t=typeof e;return!!e&&(t=="object"||t=="function")},isString:function(e){return typeof e=="string"||e instanceof String},isNumber:function(e){return typeof e=="number"||!isNaN(parseFloat(e))&&isFinite(e)},omit:function(e,t){var r={};for(var n in e)!e.hasOwnProperty(n)||n===t||(r[n]=e[n]);return r}};tC.exports.trimSurroundingText=function(e,t,r){var n=0,i=e.length,s=e.indexOf(t);s>=0&&(n=s+t.length);var a=e.indexOf(r,s);return a>=0&&(i=a),e.substring(n,i)}});var mE=b((Hui,PLt)=>{var vcn=require("crypto"),bcn=fu()._,rC,Ecn=0xdeadbeefcafe,jui=(Ecn&16777215)==15715070;function Pe(e,t){e!=null&&(typeof e=="number"?this.fromNumber(e,t):Buffer.isBuffer(e)?this.fromBuffer(e):t==null&&typeof e!="string"?this.fromByteArray(e):this.fromString(e,t))}function kr(){return new Pe(null)}function Scn(e,t,r,n,i,s){for(var a=t&16383,o=t>>14;--s>=0;){var u=this[e]&16383,c=this[e++]>>14,l=o*u+c*a;u=a*u+((l&16383)<<14)+r[n]+i,i=(u>>28)+(l>>14)+o*c,r[n++]=u&268435455}return i}Pe.prototype.am=Scn;rC=28;Pe.prototype.DB=rC;Pe.prototype.DM=(1<=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s}function xcn(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+DV:this.t=0}function C_(e){var t=kr();return t.fromInt(e),t}function Ccn(e,t,r){var n;switch(t){case 2:n=1;break;case 4:n=2;break;case 8:n=3;break;case 16:n=4;break;case 32:n=5;break;case 256:n=8;break;default:this.fromRadix(e,t);return}this.t=0,this.s=0;for(var i=e.length,s=!1,a=0;--i>=0;){var o=n==8?e[i]&255:RLt(e,i);if(o<0){e.charAt(i)=="-"&&(s=!0);continue}s=!1,a===0?this[this.t++]=o:a+n>this.DB?(this[this.t-1]|=(o&(1<>this.DB-a):this[this.t-1]|=o<=this.DB&&(a-=this.DB)}!r&&n==8&&e[0]&128&&(this.s=-1,a>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==e;)--this.t}function Dcn(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<0)for(o>o)>0&&(i=!0,s=qIe(n));a>=0;)o>(o+=this.DB-t)):(n=this[a]>>(o-=t)&r,o<=0&&(o+=this.DB,--a)),n>0&&(i=!0),i&&(s+=qIe(n));return i?s:"0"}function kcn(){var e=kr();return Pe.ZERO.subTo(this,e),e}function Ocn(){return this.s<0?this.negate():this}function Pcn(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this[r]-e[r])!=0)return t;return 0}function o7(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function Mcn(){return this.t<=0?0:this.DB*(this.t-1)+o7(this[this.t-1]^this.s&this.DM)}function Lcn(e,t){var r;for(r=this.t-1;r>=0;--r)t[r+e]=this[r];for(r=e-1;r>=0;--r)t[r]=0;t.t=this.t+e,t.s=this.s}function Bcn(e,t){for(var r=e;r=0;--o)t[o+s+1]=this[o]>>n|a,a=(this[o]&i)<=0;--o)t[o]=0;t[s]=a,t.t=this.t+s+1,t.s=this.s,t.clamp()}function Fcn(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,i=this.DB-n,s=(1<>n;for(var a=r+1;a>n;n>0&&(t[this.t-r-1]|=(this.s&s)<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:n>0&&(t[r++]=n),t.t=r,t.clamp()}function qcn(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t[i]=0;for(i=0;i=0;)e[r]=0;for(r=0;r=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(r,t[r],e,2*r,0,1)),e.s=0,e.clamp()}function Hcn(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t0?(n.lShiftTo(u,s),i.lShiftTo(u,r)):(n.copyTo(s),i.copyTo(r));var c=s.t,l=s[c-1];if(l!==0){var d=l*(1<1?s[c-2]>>this.F2:0),f=this.FV/d,p=(1<=0&&(r[r.t++]=1,r.subTo(g,r)),Pe.ONE.dlShiftTo(c,g),g.subTo(s,s);s.t=0;){var v=r[--m]==l?this.DM:Math.floor(r[m]*f+(r[m-1]+h)*p);if((r[m]+=s.am(0,v,r,y,0,c))0&&r.rShiftTo(u,r),a<0&&Pe.ZERO.subTo(r,r)}}}function Kcn(e){var t=kr();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(Pe.ZERO)>0&&e.subTo(t,t),t}function pE(e){this.m=e}function Vcn(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function zcn(e){return e}function Qcn(e){e.divRemTo(this.m,null,e)}function Gcn(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function Ycn(e,t){e.squareTo(t),this.reduce(t)}pE.prototype.convert=Vcn;pE.prototype.revert=zcn;pE.prototype.reduce=Qcn;pE.prototype.mulTo=Gcn;pE.prototype.sqrTo=Ycn;function Wcn(){if(this.t<1)return 0;var e=this[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function hE(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(t,t),t}function Jcn(e){var t=kr();return e.copyTo(t),this.reduce(t),t}function Zcn(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e[r]+=this.m.am(0,n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function eln(e,t){e.squareTo(t),this.reduce(t)}function tln(e,t,r){e.multiplyTo(t,r),this.reduce(r)}hE.prototype.convert=Xcn;hE.prototype.revert=Jcn;hE.prototype.reduce=Zcn;hE.prototype.mulTo=tln;hE.prototype.sqrTo=eln;function rln(){return(this.t>0?this[0]&1:this.s)===0}function nln(e,t){if(e>4294967295||e<1)return Pe.ONE;var r=kr(),n=kr(),i=t.convert(this),s=o7(e)-1;for(i.copyTo(r);--s>=0;)if(t.sqrTo(r,n),(e&1<0)t.mulTo(n,i,r);else{var a=r;r=n,n=a}return t.revert(r)}function iln(e,t){var r;return e<256||t.isEven()?r=new pE(t):r=new hE(t),this.exp(e,r)}function sln(){var e=kr();return this.copyTo(e),e}function aln(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t===0)return-1}else{if(this.t==1)return this[0];if(this.t===0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function uln(){return this.t==0?this.s:this[0]<<16>>16}function cln(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function lln(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function dln(e){if(e==null&&(e=10),this.signum()===0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=C_(r),i=kr(),s=kr(),a="";for(this.divRemTo(n,i,s);i.signum()>0;)a=(r+s.intValue()).toString(e).substr(1)+a,i.divRemTo(n,i,s);return s.intValue().toString(e)+a}function fln(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,s=0,a=0,o=0;o=r&&(this.dMultiply(n),this.dAddOffset(a,0),s=0,a=0)}s>0&&(this.dMultiply(Math.pow(t,s)),this.dAddOffset(a,0)),i&&Pe.ZERO.subTo(this,this)}function pln(e,t){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e),this.testBit(e-1)||this.bitwiseTo(Pe.ONE.shiftLeft(e-1),HIe,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(Pe.ONE.shiftLeft(e-1),this);else{var r=vcn.randomBytes((e>>3)+1),n=e&7;n>0?r[0]&=(1<0)for(r>r)!=(this.s&this.DM)>>r&&(t[i++]=n|this.s<=0;)r<8?(n=(this[e]&(1<>(r+=this.DB-8)):(n=this[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),i===0&&(this.s&128)!=(n&128)&&++i,(i>0||n!=this.s)&&(t[i++]=n);return t}function mln(e){var t=Buffer.from(this.toByteArray());if(e===!0&&t[0]===0)t=t.slice(1);else if(bcn.isNumber(e)){if(t.length>e){for(var r=0;r0?this:e}function Aln(e,t,r){var n,i,s=Math.min(e.t,this.t);for(n=0;n>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function Nln(){for(var e=0;e=this.t?this.s!=0:(this[t]&1<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[r++]=n:n<-1&&(t[r++]=this.DV+n),t.t=r,t.clamp()}function $ln(e){var t=kr();return this.addTo(e,t),t}function Fln(e){var t=kr();return this.subTo(e,t),t}function Uln(e){var t=kr();return this.multiplyTo(e,t),t}function qln(){var e=kr();return this.squareTo(e),e}function jln(e){var t=kr();return this.divRemTo(e,t,null),t}function Hln(e){var t=kr();return this.divRemTo(e,null,t),t}function Kln(e){var t=kr(),r=kr();return this.divRemTo(e,t,r),new Array(t,r)}function Vln(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function zln(e,t){if(e!==0){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}}function KM(){}function OLt(e){return e}function Qln(e,t,r){e.multiplyTo(t,r)}function Gln(e,t){e.squareTo(t)}KM.prototype.convert=OLt;KM.prototype.revert=OLt;KM.prototype.mulTo=Qln;KM.prototype.sqrTo=Gln;function Yln(e){return this.exp(e,new KM)}function Wln(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r[--n]=0;var i;for(i=r.t-this.t;n=0;)r[n]=0;for(n=Math.max(t-this.t,0);n2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=kr();return e.copyTo(t),this.reduce(t),t}function Zln(e){return e}function edn(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function tdn(e,t){e.squareTo(t),this.reduce(t)}function rdn(e,t,r){e.multiplyTo(t,r),this.reduce(r)}iC.prototype.convert=Jln;iC.prototype.revert=Zln;iC.prototype.reduce=edn;iC.prototype.mulTo=rdn;iC.prototype.sqrTo=tdn;function ndn(e,t){var r=e.bitLength(),n,i=C_(1),s;if(r<=0)return i;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?s=new pE(t):t.isEven()?s=new iC(t):s=new hE(t);var a=new Array,o=3,u=n-1,c=(1<1){var l=kr();for(s.sqrTo(a[1],l);o<=c;)a[o]=kr(),s.mulTo(l,a[o-2],a[o]),o+=2}var d=e.t-1,f,p=!0,h=kr(),m;for(r=o7(e[d])-1;d>=0;){for(r>=u?f=e[d]>>r-u&c:(f=(e[d]&(1<0&&(f|=e[d-1]>>this.DB+r-u)),o=n;!(f&1);)f>>=1,--o;if((r-=o)<0&&(r+=this.DB,--d),p)a[f].copyTo(i),p=!1;else{for(;o>1;)s.sqrTo(i,h),s.sqrTo(h,i),o-=2;o>0?s.sqrTo(i,h):(m=i,i=h,h=m),s.mulTo(h,a[f],i)}for(;d>=0&&!(e[d]&1<0&&(t.rShiftTo(s,t),r.rShiftTo(s,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return s>0&&r.lShiftTo(s,r),r}function sdn(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t===0)r=this[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this[n])%e;return r}function adn(e){var t=e.isEven();if(this.isEven()&&t||e.signum()===0)return Pe.ZERO;for(var r=e.clone(),n=this.clone(),i=C_(1),s=C_(0),a=C_(0),o=C_(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!i.isEven()||!s.isEven())&&(i.addTo(this,i),s.subTo(e,s)),i.rShiftTo(1,i)):s.isEven()||s.subTo(e,s),s.rShiftTo(1,s);for(;n.isEven();)n.rShiftTo(1,n),t?((!a.isEven()||!o.isEven())&&(a.addTo(this,a),o.subTo(e,o)),a.rShiftTo(1,a)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);r.compareTo(n)>=0?(r.subTo(n,r),t&&i.subTo(a,i),s.subTo(o,s)):(n.subTo(r,n),t&&a.subTo(i,a),o.subTo(s,o))}if(n.compareTo(Pe.ONE)!=0)return Pe.ZERO;if(o.compareTo(e)>=0)return o.subtract(e);if(o.signum()<0)o.addTo(e,o);else return o;return o.signum()<0?o.add(e):o}var pu=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],odn=(1<<26)/pu[pu.length-1];function udn(e){var t,r=this.abs();if(r.t==1&&r[0]<=pu[pu.length-1]){for(t=0;t>1,e>pu.length&&(e=pu.length);for(var i=kr(),s=0;s{var MLt=mE(),sC=require("crypto"),u7=require("constants"),ldn={md2:Buffer.from("3020300c06082a864886f70d020205000410","hex"),md5:Buffer.from("3020300c06082a864886f70d020505000410","hex"),sha1:Buffer.from("3021300906052b0e03021a05000414","hex"),sha224:Buffer.from("302d300d06096086480165030402040500041c","hex"),sha256:Buffer.from("3031300d060960864801650304020105000420","hex"),sha384:Buffer.from("3041300d060960864801650304020205000430","hex"),sha512:Buffer.from("3051300d060960864801650304020305000440","hex"),ripemd160:Buffer.from("3021300906052b2403020105000414","hex"),rmd160:Buffer.from("3021300906052b2403020105000414","hex")},LLt={ripemd160:"rmd160"},BLt="sha256";KIe.exports={isEncryption:!0,isSignature:!0};KIe.exports.makeScheme=function(e,t){function r(n,i){this.key=n,this.options=i}return r.prototype.maxMessageLength=function(){return this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==u7.RSA_NO_PADDING?this.key.encryptedDataLength:this.key.encryptedDataLength-11},r.prototype.encPad=function(n,i){i=i||{};var s;if(n.length>this.key.maxMessageLength)throw new Error("Message too long for RSA (n="+this.key.encryptedDataLength+", l="+n.length+")");if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==u7.RSA_NO_PADDING)return s=Buffer.alloc(this.key.maxMessageLength-n.length),s.fill(0),Buffer.concat([s,n]);if(i.type===1)return s=Buffer.alloc(this.key.encryptedDataLength-n.length-1),s.fill(255,0,s.length-1),s[0]=1,s[s.length-1]=0,Buffer.concat([s,n]);s=Buffer.alloc(this.key.encryptedDataLength-n.length),s[0]=0,s[1]=2;for(var a=sC.randomBytes(s.length-3),o=0;o=n.length)return null}else{if(n[0]!==0||n[1]!==2)return null;for(s=3;n[s]!==0;)if(++s>=n.length)return null}return n.slice(s+1,n.length)},r.prototype.sign=function(n){var i=this.options.signingSchemeOptions.hash||BLt;if(this.options.environment==="browser"){i=LLt[i]||i;var s=sC.createHash(i);s.update(n);var a=this.pkcs1pad(s.digest(),i),o=this.key.$doPrivate(new MLt(a)).toBuffer(this.key.encryptedDataLength);return o}else{var u=sC.createSign("RSA-"+i.toUpperCase());return u.update(n),u.sign(this.options.rsaUtils.exportKey("private"))}},r.prototype.verify=function(n,i,s){if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==u7.RSA_NO_PADDING)return!1;var a=this.options.signingSchemeOptions.hash||BLt;if(this.options.environment==="browser"){a=LLt[a]||a,s&&(i=Buffer.from(i,s));var o=sC.createHash(a);o.update(n);var u=this.pkcs1pad(o.digest(),a),c=this.key.$doPublic(new MLt(i));return c.toBuffer().toString("hex")==u.toString("hex")}else{var l=sC.createVerify("RSA-"+a.toUpperCase());return l.update(n),l.verify(this.options.rsaUtils.exportKey("public"),i,s)}},r.prototype.pkcs0pad=function(n){var i=Buffer.alloc(this.key.maxMessageLength-n.length);return i.fill(0),Buffer.concat([i,n])},r.prototype.pkcs0unpad=function(n){var i;return typeof n.lastIndexOf=="function"?i=n.slice(n.lastIndexOf("\0")+1,n.length):i=n.slice(String.prototype.lastIndexOf.call(n,"\0")+1,n.length),i},r.prototype.pkcs1pad=function(n,i){var s=ldn[i];if(!s)throw Error("Unsupported hash algorithm");var a=Buffer.concat([s,n]);if(a.length+10>this.key.encryptedDataLength)throw Error("Key is too short for signing algorithm ("+i+")");var o=Buffer.alloc(this.key.encryptedDataLength-a.length-1);o.fill(255,0,o.length-1),o[0]=1,o[o.length-1]=0;var u=Buffer.concat([o,a]);return u},new r(e,t)}});var FLt=b((zui,vf)=>{var Vui=mE(),c7=require("crypto");vf.exports={isEncryption:!0,isSignature:!1};vf.exports.digestLength={md4:16,md5:16,ripemd160:20,rmd160:20,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64};var l7="sha1";vf.exports.eme_oaep_mgf1=function(e,t,r){r=r||l7;for(var n=vf.exports.digestLength[r],i=Math.ceil(t/n),s=Buffer.alloc(n*i),a=Buffer.alloc(4),o=0;oo-2*u-2)throw new Error("Message is too long to encode into an encoded message with a length of "+o+" bytes, increaseemLen to fix this error (minimum value for given parameters and options: "+(o-2*u-2)+")");var c=c7.createHash(i);c.update(a),c=c.digest();var l=Buffer.alloc(o-n.length-2*u-1);l.fill(0),l[l.length-1]=1;for(var d=Buffer.concat([c,l,n]),f=c7.randomBytes(u),p=s(f,d.length,i),h=0;h{var ULt=mE(),VM=require("crypto");VIe.exports={isEncryption:!1,isSignature:!0};var d7="sha1",qLt=20;VIe.exports.makeScheme=function(e,t){var r=gE().pkcs1_oaep;function n(i,s){this.key=i,this.options=s}return n.prototype.sign=function(i){var s=VM.createHash(this.options.signingSchemeOptions.hash||d7);s.update(i);var a=this.emsa_pss_encode(s.digest(),this.key.keySize-1);return this.key.$doPrivate(new ULt(a)).toBuffer(this.key.encryptedDataLength)},n.prototype.verify=function(i,s,a){a&&(s=Buffer.from(s,a)),s=new ULt(s);var o=Math.ceil((this.key.keySize-1)/8),u=this.key.$doPublic(s).toBuffer(o),c=VM.createHash(this.options.signingSchemeOptions.hash||d7);return c.update(i),this.emsa_pss_verify(c.digest(),u,this.key.keySize-1)},n.prototype.emsa_pss_encode=function(i,s){var a=this.options.signingSchemeOptions.hash||d7,o=this.options.signingSchemeOptions.mgf||r.eme_oaep_mgf1,u=this.options.signingSchemeOptions.saltLength||qLt,c=r.digestLength[a],l=Math.ceil(s/8);if(l>8-A<<8-A;g[0]=g[0]&_;var E=Buffer.alloc(g.length+p.length+1);return g.copy(E,0),p.copy(E,g.length),E[E.length-1]=188,E},n.prototype.emsa_pss_verify=function(i,s,a){var o=this.options.signingSchemeOptions.hash||d7,u=this.options.signingSchemeOptions.mgf||r.eme_oaep_mgf1,c=this.options.signingSchemeOptions.saltLength||qLt,l=r.digestLength[o],d=Math.ceil(a/8);if(d>8-m<<8-m,f[0]=f[0]&p,h=0;f[h]===0&&h{aC.exports={pkcs1:$Lt(),pkcs1_oaep:FLt(),pss:jLt(),isEncryption:function(e){return aC.exports[e]&&aC.exports[e].isEncryption},isSignature:function(e){return aC.exports[e]&&aC.exports[e].isSignature}}});var QIe=b((Yui,HLt)=>{var zIe=mE(),ddn=gE();HLt.exports=function(e,t){var r=ddn.pkcs1.makeScheme(e,t);return{encrypt:function(n,i){var s,a;return i?(s=new zIe(r.encPad(n,{type:1})),a=e.$doPrivate(s)):(s=new zIe(e.encryptionScheme.encPad(n)),a=e.$doPublic(s)),a.toBuffer(e.encryptedDataLength)},decrypt:function(n,i){var s,a=new zIe(n);return i?(s=e.$doPublic(a),r.encUnPad(s.toBuffer(e.encryptedDataLength),{type:1})):(s=e.$doPrivate(a),e.encryptionScheme.encUnPad(s.toBuffer(e.encryptedDataLength)))}}}});var VLt=b((Wui,KLt)=>{var f7=require("crypto"),T_=require("constants"),fdn=gE();KLt.exports=function(e,t){var r=fdn.pkcs1.makeScheme(e,t);return{encrypt:function(n,i){var s;if(i)return s=T_.RSA_PKCS1_PADDING,t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(s=t.encryptionSchemeOptions.padding),f7.privateEncrypt({key:t.rsaUtils.exportKey("private"),padding:s},n);s=T_.RSA_PKCS1_OAEP_PADDING,t.encryptionScheme==="pkcs1"&&(s=T_.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(s=t.encryptionSchemeOptions.padding);var a=n;return s===T_.RSA_NO_PADDING&&(a=r.pkcs0pad(n)),f7.publicEncrypt({key:t.rsaUtils.exportKey("public"),padding:s},a)},decrypt:function(n,i){var s;if(i)return s=T_.RSA_PKCS1_PADDING,t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(s=t.encryptionSchemeOptions.padding),f7.publicDecrypt({key:t.rsaUtils.exportKey("public"),padding:s},n);s=T_.RSA_PKCS1_OAEP_PADDING,t.encryptionScheme==="pkcs1"&&(s=T_.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(s=t.encryptionSchemeOptions.padding);var a=f7.privateDecrypt({key:t.rsaUtils.exportKey("private"),padding:s},n);return s===T_.RSA_NO_PADDING?r.pkcs0unpad(a):a}}}});var GLt=b((Xui,QLt)=>{var zLt=require("crypto"),oC=require("constants"),pdn=gE();QLt.exports=function(e,t){var r=QIe()(e,t),n=pdn.pkcs1.makeScheme(e,t);return{encrypt:function(i,s){if(s)return r.encrypt(i,s);var a=oC.RSA_PKCS1_OAEP_PADDING;t.encryptionScheme==="pkcs1"&&(a=oC.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(a=t.encryptionSchemeOptions.padding);var o=i;return a===oC.RSA_NO_PADDING&&(o=n.pkcs0pad(i)),zLt.publicEncrypt({key:t.rsaUtils.exportKey("public"),padding:a},o)},decrypt:function(i,s){if(s)return r.decrypt(i,s);var a=oC.RSA_PKCS1_OAEP_PADDING;t.encryptionScheme==="pkcs1"&&(a=oC.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(a=t.encryptionSchemeOptions.padding);var o=zLt.privateDecrypt({key:t.rsaUtils.exportKey("private"),padding:a},i);return a===oC.RSA_NO_PADDING?n.pkcs0unpad(o):o}}}});var WLt=b((Jui,YLt)=>{var p7=require("crypto");YLt.exports={getEngine:function(e,t){var r=QIe();return t.environment==="node"&&typeof p7.publicEncrypt=="function"&&typeof p7.privateDecrypt=="function"&&(typeof p7.privateEncrypt=="function"&&typeof p7.publicDecrypt=="function"?r=VLt():r=GLt()),r(e,t)}}});var t4t=b((ZLt,e4t)=>{var h7=fu()._,Zui=require("crypto"),qs=mE(),XLt=fu(),JLt=gE(),hdn=WLt();ZLt.BigInteger=qs;e4t.exports.Key=function(){function e(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return e.prototype.setOptions=function(t){var r=JLt[t.signingScheme],n=JLt[t.encryptionScheme];r===n?this.signingScheme=this.encryptionScheme=n.makeScheme(this,t):(this.encryptionScheme=n.makeScheme(this,t),this.signingScheme=r.makeScheme(this,t)),this.encryptEngine=hdn.getEngine(this,t)},e.prototype.generate=function(t,r){var n=t>>1;this.e=parseInt(r,16);for(var i=new qs(r,16);;){for(;this.p=new qs(t-n,1),!(this.p.subtract(qs.ONE).gcd(i).compareTo(qs.ONE)===0&&this.p.isProbablePrime(10)););for(;this.q=new qs(n,1),!(this.q.subtract(qs.ONE).gcd(i).compareTo(qs.ONE)===0&&this.q.isProbablePrime(10)););if(this.p.compareTo(this.q)<=0){var s=this.p;this.p=this.q,this.q=s}var a=this.p.subtract(qs.ONE),o=this.q.subtract(qs.ONE),u=a.multiply(o);if(u.gcd(i).compareTo(qs.ONE)===0){if(this.n=this.p.multiply(this.q),this.n.bitLength()0&&(h7.isNumber(r)||r.length>0)&&n.length>0)this.n=new qs(t),this.e=h7.isNumber(r)?r:XLt.get32IntFromBuffer(r,0),this.d=new qs(n),i&&s&&a&&o&&u&&(this.p=new qs(i),this.q=new qs(s),this.dmp1=new qs(a),this.dmq1=new qs(o),this.coeff=new qs(u)),this.$$recalculateCache();else throw Error("Invalid RSA private key")},e.prototype.setPublic=function(t,r){if(t&&r&&t.length>0&&(h7.isNumber(r)||r.length>0))this.n=new qs(t),this.e=h7.isNumber(r)?r:XLt.get32IntFromBuffer(r,0),this.$$recalculateCache();else throw Error("Invalid RSA public key")},e.prototype.$doPrivate=function(t){if(this.p||this.q)return t.modPow(this.d,this.n);for(var r=t.mod(this.p).modPow(this.dmp1,this.p),n=t.mod(this.q).modPow(this.dmq1,this.q);r.compareTo(n)<0;)r=r.add(this.p);return r.subtract(n).multiply(this.coeff).mod(this.p).multiply(this.q).add(n)},e.prototype.$doPublic=function(t){return t.modPowInt(this.e,this.n)},e.prototype.encrypt=function(t,r){var n=[],i=[],s=t.length,a=Math.ceil(s/this.maxMessageLength)||1,o=Math.ceil(s/a||1);if(a==1)n.push(t);else for(var u=0;u0)throw Error("Incorrect data or key");for(var n=[],i=0,s=0,a=t.length/this.encryptedDataLength,o=0;o>3},e}()});var m7=b((eci,r4t)=>{r4t.exports={newInvalidAsn1Error:function(e){var t=new Error;return t.name="InvalidAsn1Error",t.message=e||"",t}}});var g7=b((tci,n4t)=>{n4t.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}});var GIe=b((rci,i4t)=>{"use strict";var y7=require("buffer"),uC=y7.Buffer,Xl={},Jl;for(Jl in y7)y7.hasOwnProperty(Jl)&&(Jl==="SlowBuffer"||Jl==="Buffer"||(Xl[Jl]=y7[Jl]));var cC=Xl.Buffer={};for(Jl in uC)uC.hasOwnProperty(Jl)&&(Jl==="allocUnsafe"||Jl==="allocUnsafeSlow"||(cC[Jl]=uC[Jl]));Xl.Buffer.prototype=uC.prototype;(!cC.from||cC.from===Uint8Array.from)&&(cC.from=function(e,t,r){if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type '+typeof e);if(e&&typeof e.length>"u")throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);return uC(e,t,r)});cC.alloc||(cC.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError('The "size" argument must be of type number. Received type '+typeof e);if(e<0||e>=2*(1<<30))throw new RangeError('The value "'+e+'" is invalid for option "size"');var n=uC(e);return!t||t.length===0?n.fill(0):typeof r=="string"?n.fill(t,r):n.fill(t),n});if(!Xl.kStringMaxLength)try{Xl.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch{}Xl.constants||(Xl.constants={MAX_LENGTH:Xl.kMaxLength},Xl.kStringMaxLength&&(Xl.constants.MAX_STRING_LENGTH=Xl.kStringMaxLength));i4t.exports=Xl});var o4t=b((nci,a4t)=>{var mdn=require("assert"),s4t=GIe().Buffer,zM=g7(),gdn=m7(),lC=gdn.newInvalidAsn1Error;function hu(e){if(!e||!s4t.isBuffer(e))throw new TypeError("data must be a node Buffer");this._buf=e,this._size=e.length,this._len=0,this._offset=0}Object.defineProperty(hu.prototype,"length",{enumerable:!0,get:function(){return this._len}});Object.defineProperty(hu.prototype,"offset",{enumerable:!0,get:function(){return this._offset}});Object.defineProperty(hu.prototype,"remain",{get:function(){return this._size-this._offset}});Object.defineProperty(hu.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}});hu.prototype.readByte=function(e){if(this._size-this._offset<1)return null;var t=this._buf[this._offset]&255;return e||(this._offset+=1),t};hu.prototype.peek=function(){return this.readByte(!0)};hu.prototype.readLength=function(e){if(e===void 0&&(e=this._offset),e>=this._size)return null;var t=this._buf[e++]&255;if(t===null)return null;if((t&128)===128){if(t&=127,t===0)throw lC("Indefinite length not supported");if(t>4)throw lC("encoding too long");if(this._size-ethis._size-n)return null;if(this._offset=n,this.length===0)return t?s4t.alloc(0):"";var i=this._buf.slice(this._offset,this._offset+this.length);return this._offset+=this.length,t?i:i.toString("utf8")};hu.prototype.readOID=function(e){e||(e=zM.OID);var t=this.readString(e,!0);if(t===null)return null;for(var r=[],n=0,i=0;i>0),r.join(".")};hu.prototype._readTag=function(e){mdn.ok(e!==void 0);var t=this.peek();if(t===null)return null;if(t!==e)throw lC("Expected 0x"+e.toString(16)+": got 0x"+t.toString(16));var r=this.readLength(this._offset+1);if(r===null)return null;if(this.length>4)throw lC("Integer too long: "+this.length);if(this.length>this._size-r)return null;this._offset=r;for(var n=this._buf[this._offset],i=0,s=0;s>0};a4t.exports=hu});var c4t=b((ici,u4t)=>{var N_=require("assert"),_7=GIe().Buffer,R_=g7(),ydn=m7(),A7=ydn.newInvalidAsn1Error,_dn={size:1024,growthFactor:8};function Adn(e,t){N_.ok(e),N_.equal(typeof e,"object"),N_.ok(t),N_.equal(typeof t,"object");var r=Object.getOwnPropertyNames(e);return r.forEach(function(n){if(!t[n]){var i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i)}}),t}function Po(e){e=Adn(_dn,e||{}),this._buf=_7.alloc(e.size||1024),this._size=this._buf.length,this._offset=0,this._options=e,this._seq=[]}Object.defineProperty(Po.prototype,"buffer",{get:function(){if(this._seq.length)throw A7(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}});Po.prototype.writeByte=function(e){if(typeof e!="number")throw new TypeError("argument must be a Number");this._ensure(1),this._buf[this._offset++]=e};Po.prototype.writeInt=function(e,t){if(typeof e!="number")throw new TypeError("argument must be a Number");typeof t!="number"&&(t=R_.Integer);for(var r=4;(!(e&4286578688)||(e&4286578688)===-8388608)&&r>1;)r--,e<<=8;if(r>4)throw A7("BER ints cannot be > 0xffffffff");for(this._ensure(2+r),this._buf[this._offset++]=t,this._buf[this._offset++]=r;r-- >0;)this._buf[this._offset++]=(e&4278190080)>>>24,e<<=8};Po.prototype.writeNull=function(){this.writeByte(R_.Null),this.writeByte(0)};Po.prototype.writeEnumeration=function(e,t){if(typeof e!="number")throw new TypeError("argument must be a Number");return typeof t!="number"&&(t=R_.Enumeration),this.writeInt(e,t)};Po.prototype.writeBoolean=function(e,t){if(typeof e!="boolean")throw new TypeError("argument must be a Boolean");typeof t!="number"&&(t=R_.Boolean),this._ensure(3),this._buf[this._offset++]=t,this._buf[this._offset++]=1,this._buf[this._offset++]=e?255:0};Po.prototype.writeString=function(e,t){if(typeof e!="string")throw new TypeError("argument must be a string (was: "+typeof e+")");typeof t!="number"&&(t=R_.OctetString);var r=_7.byteLength(e);this.writeByte(t),this.writeLength(r),r&&(this._ensure(r),this._buf.write(e,this._offset),this._offset+=r)};Po.prototype.writeBuffer=function(e,t){if(typeof t!="number")throw new TypeError("tag must be a number");if(!_7.isBuffer(e))throw new TypeError("argument must be a buffer");this.writeByte(t),this.writeLength(e.length),this._ensure(e.length),e.copy(this._buf,this._offset,0,e.length),this._offset+=e.length};Po.prototype.writeStringArray=function(e){if(!e instanceof Array)throw new TypeError("argument must be an Array[String]");var t=this;e.forEach(function(r){t.writeString(r)})};Po.prototype.writeOID=function(e,t){if(typeof e!="string")throw new TypeError("argument must be a string");if(typeof t!="number"&&(t=R_.OID),!/^([0-9]+\.){3,}[0-9]+$/.test(e))throw new Error("argument is not a valid OID string");function r(a,o){o<128?a.push(o):o<16384?(a.push(o>>>7|128),a.push(o&127)):o<2097152?(a.push(o>>>14|128),a.push((o>>>7|128)&255),a.push(o&127)):o<268435456?(a.push(o>>>21|128),a.push((o>>>14|128)&255),a.push((o>>>7|128)&255),a.push(o&127)):(a.push((o>>>28|128)&255),a.push((o>>>21|128)&255),a.push((o>>>14|128)&255),a.push((o>>>7|128)&255),a.push(o&127))}var n=e.split("."),i=[];i.push(parseInt(n[0],10)*40+parseInt(n[1],10)),n.slice(2).forEach(function(a){r(i,parseInt(a,10))});var s=this;this._ensure(2+i.length),this.writeByte(t),this.writeLength(i.length),i.forEach(function(a){s.writeByte(a)})};Po.prototype.writeLength=function(e){if(typeof e!="number")throw new TypeError("argument must be a Number");if(this._ensure(4),e<=127)this._buf[this._offset++]=e;else if(e<=255)this._buf[this._offset++]=129,this._buf[this._offset++]=e;else if(e<=65535)this._buf[this._offset++]=130,this._buf[this._offset++]=e>>8,this._buf[this._offset++]=e;else if(e<=16777215)this._buf[this._offset++]=131,this._buf[this._offset++]=e>>16,this._buf[this._offset++]=e>>8,this._buf[this._offset++]=e;else throw A7("Length too long (> 4 bytes)")};Po.prototype.startSequence=function(e){typeof e!="number"&&(e=R_.Sequence|R_.Constructor),this.writeByte(e),this._seq.push(this._offset),this._ensure(3),this._offset+=3};Po.prototype.endSequence=function(){var e=this._seq.pop(),t=e+3,r=this._offset-t;if(r<=127)this._shift(t,r,-2),this._buf[e]=r;else if(r<=255)this._shift(t,r,-1),this._buf[e]=129,this._buf[e+1]=r;else if(r<=65535)this._buf[e]=130,this._buf[e+1]=r>>8,this._buf[e+2]=r;else if(r<=16777215)this._shift(t,r,1),this._buf[e]=131,this._buf[e+1]=r>>16,this._buf[e+2]=r>>8,this._buf[e+3]=r;else throw A7("Sequence too long")};Po.prototype._shift=function(e,t,r){N_.ok(e!==void 0),N_.ok(t!==void 0),N_.ok(r),this._buf.copy(this._buf,e+r,e,e+t),this._offset+=r};Po.prototype._ensure=function(e){if(N_.ok(e),this._size-this._offset{var YIe=m7(),WIe=g7(),vdn=o4t(),bdn=c4t();E7.exports={Reader:vdn,Writer:bdn};for(v7 in WIe)WIe.hasOwnProperty(v7)&&(E7.exports[v7]=WIe[v7]);var v7;for(b7 in YIe)YIe.hasOwnProperty(b7)&&(E7.exports[b7]=YIe[b7]);var b7});var S7=b((aci,d4t)=>{var XIe=l4t();d4t.exports={Ber:XIe,BerReader:XIe.Reader,BerWriter:XIe.Writer}});var y4t=b((oci,x7)=>{var w7=S7().Ber,f4t=fu()._,I7=fu(),p4t="-----BEGIN RSA PRIVATE KEY-----",h4t="-----END RSA PRIVATE KEY-----",m4t="-----BEGIN RSA PUBLIC KEY-----",g4t="-----END RSA PUBLIC KEY-----";x7.exports={privateExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=e.d.toBuffer(),i=e.p.toBuffer(),s=e.q.toBuffer(),a=e.dmp1.toBuffer(),o=e.dmq1.toBuffer(),u=e.coeff.toBuffer(),c=r.length+n.length+i.length+s.length+a.length+o.length+u.length+512,l=new w7.Writer({size:c});return l.startSequence(),l.writeInt(0),l.writeBuffer(r,2),l.writeInt(e.e),l.writeBuffer(n,2),l.writeBuffer(i,2),l.writeBuffer(s,2),l.writeBuffer(a,2),l.writeBuffer(o,2),l.writeBuffer(u,2),l.endSequence(),t.type==="der"?l.buffer:p4t+` -`+I7.linebrk(l.buffer.toString("base64"),64)+` -`+h4t},privateImport:function(e,t,r){r=r||{};var n;if(r.type!=="der")if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),f4t.isString(t)){var i=I7.trimSurroundingText(t,p4t,h4t).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(i,"base64")}else throw Error("Unsupported key format");else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var s=new w7.Reader(n);s.readSequence(),s.readString(2,!0),e.setPrivate(s.readString(2,!0),s.readString(2,!0),s.readString(2,!0),s.readString(2,!0),s.readString(2,!0),s.readString(2,!0),s.readString(2,!0),s.readString(2,!0))},publicExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=r.length+512,i=new w7.Writer({size:n});return i.startSequence(),i.writeBuffer(r,2),i.writeInt(e.e),i.endSequence(),t.type==="der"?i.buffer:m4t+` -`+I7.linebrk(i.buffer.toString("base64"),64)+` -`+g4t},publicImport:function(e,t,r){r=r||{};var n;if(r.type!=="der"){if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),f4t.isString(t)){var i=I7.trimSurroundingText(t,m4t,g4t).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(i,"base64")}}else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var s=new w7.Reader(n);s.readSequence(),e.setPublic(s.readString(2,!0),s.readString(2,!0))},autoImport:function(e,t){return/^[\S\s]*-----BEGIN RSA PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PRIVATE KEY-----[\S\s]*$/g.test(t)?(x7.exports.privateImport(e,t),!0):/^[\S\s]*-----BEGIN RSA PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PUBLIC KEY-----[\S\s]*$/g.test(t)?(x7.exports.publicImport(e,t),!0):!1}}});var S4t=b((uci,N7)=>{var oh=S7().Ber,_4t=fu()._,C7="1.2.840.113549.1.1.1",T7=fu(),A4t="-----BEGIN PRIVATE KEY-----",v4t="-----END PRIVATE KEY-----",b4t="-----BEGIN PUBLIC KEY-----",E4t="-----END PUBLIC KEY-----";N7.exports={privateExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=e.d.toBuffer(),i=e.p.toBuffer(),s=e.q.toBuffer(),a=e.dmp1.toBuffer(),o=e.dmq1.toBuffer(),u=e.coeff.toBuffer(),c=r.length+n.length+i.length+s.length+a.length+o.length+u.length+512,l=new oh.Writer({size:c});l.startSequence(),l.writeInt(0),l.writeBuffer(r,2),l.writeInt(e.e),l.writeBuffer(n,2),l.writeBuffer(i,2),l.writeBuffer(s,2),l.writeBuffer(a,2),l.writeBuffer(o,2),l.writeBuffer(u,2),l.endSequence();var d=new oh.Writer({size:c});return d.startSequence(),d.writeInt(0),d.startSequence(),d.writeOID(C7),d.writeNull(),d.endSequence(),d.writeBuffer(l.buffer,4),d.endSequence(),t.type==="der"?d.buffer:A4t+` -`+T7.linebrk(d.buffer.toString("base64"),64)+` -`+v4t},privateImport:function(e,t,r){r=r||{};var n;if(r.type!=="der")if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),_4t.isString(t)){var i=T7.trimSurroundingText(t,A4t,v4t).replace("-----END PRIVATE KEY-----","").replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(i,"base64")}else throw Error("Unsupported key format");else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var s=new oh.Reader(n);s.readSequence(),s.readInt(0);var a=new oh.Reader(s.readString(48,!0));if(a.readOID(6,!0)!==C7)throw Error("Invalid Public key format");var o=new oh.Reader(s.readString(4,!0));o.readSequence(),o.readString(2,!0),e.setPrivate(o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0))},publicExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=r.length+512,i=new oh.Writer({size:n});i.writeByte(0),i.startSequence(),i.writeBuffer(r,2),i.writeInt(e.e),i.endSequence();var s=new oh.Writer({size:n});return s.startSequence(),s.startSequence(),s.writeOID(C7),s.writeNull(),s.endSequence(),s.writeBuffer(i.buffer,3),s.endSequence(),t.type==="der"?s.buffer:b4t+` -`+T7.linebrk(s.buffer.toString("base64"),64)+` -`+E4t},publicImport:function(e,t,r){r=r||{};var n;if(r.type!=="der"){if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),_4t.isString(t)){var i=T7.trimSurroundingText(t,b4t,E4t).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(i,"base64")}}else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var s=new oh.Reader(n);s.readSequence();var a=new oh.Reader(s.readString(48,!0));if(a.readOID(6,!0)!==C7)throw Error("Invalid Public key format");var o=new oh.Reader(s.readString(3,!0));o.readByte(),o.readSequence(),e.setPublic(o.readString(2,!0),o.readString(2,!0))},autoImport:function(e,t){return/^[\S\s]*-----BEGIN PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PRIVATE KEY-----[\S\s]*$/g.test(t)?(N7.exports.privateImport(e,t),!0):/^[\S\s]*-----BEGIN PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PUBLIC KEY-----[\S\s]*$/g.test(t)?(N7.exports.publicImport(e,t),!0):!1}}});var w4t=b((dci,R7)=>{var cci=fu()._,lci=fu();R7.exports={privateExport:function(e,t){return{n:e.n.toBuffer(),e:e.e,d:e.d.toBuffer(),p:e.p.toBuffer(),q:e.q.toBuffer(),dmp1:e.dmp1.toBuffer(),dmq1:e.dmq1.toBuffer(),coeff:e.coeff.toBuffer()}},privateImport:function(e,t,r){if(t.n&&t.e&&t.d&&t.p&&t.q&&t.dmp1&&t.dmq1&&t.coeff)e.setPrivate(t.n,t.e,t.d,t.p,t.q,t.dmp1,t.dmq1,t.coeff);else throw Error("Invalid key data")},publicExport:function(e,t){return{n:e.n.toBuffer(),e:e.e}},publicImport:function(e,t,r){if(t.n&&t.e)e.setPublic(t.n,t.e);else throw Error("Invalid key data")},autoImport:function(e,t){return t.n&&t.e?t.d&&t.p&&t.q&&t.dmp1&&t.dmq1&&t.coeff?(R7.exports.privateImport(e,t),!0):(R7.exports.publicImport(e,t),!0):!1}}});var N4t=b((fci,D7)=>{var I4t=fu()._,x4t=fu(),QM=mE(),C4t="-----BEGIN OPENSSH PRIVATE KEY-----",T4t="-----END OPENSSH PRIVATE KEY-----";D7.exports={privateExport:function(e,t){let r=e.n.toBuffer(),n=Buffer.alloc(4);for(n.writeUInt32BE(e.e,0);n[0]===0;)n=n.slice(1);let i=e.d.toBuffer(),s=e.coeff.toBuffer(),a=e.p.toBuffer(),o=e.q.toBuffer(),u;typeof e.sshcomment<"u"?u=Buffer.from(e.sshcomment):u=Buffer.from([]);let c=15+n.byteLength+4+r.byteLength,l=23+r.byteLength+4+n.byteLength+4+i.byteLength+4+s.byteLength+4+a.byteLength+4+o.byteLength+4+u.byteLength,d=43+c+4+l,f=Math.ceil(l/8)*8-l;d+=f;let p=Buffer.alloc(d),h={buf:p,off:0};p.write("openssh-key-v1","utf8"),p.writeUInt8(0,14),h.off+=15,Ha(h,Buffer.from("none")),Ha(h,Buffer.from("none")),Ha(h,Buffer.from("")),h.off=h.buf.writeUInt32BE(1,h.off),h.off=h.buf.writeUInt32BE(c,h.off),Ha(h,Buffer.from("ssh-rsa")),Ha(h,n),Ha(h,r),h.off=h.buf.writeUInt32BE(d-47-c,h.off),h.off+=8,Ha(h,Buffer.from("ssh-rsa")),Ha(h,r),Ha(h,n),Ha(h,i),Ha(h,s),Ha(h,a),Ha(h,o),Ha(h,u);let m=1;for(;h.off{var pci=fu()._;function R4t(e){e=e.split("-");for(var t="private",r={type:"default"},n=1;n{var k4t=require("constants"),Edn=t4t(),mci=require("crypto"),gci=S7().Ber,zc=fu()._,Sdn=fu(),O4t=gE(),P4t=D4t();typeof k4t.RSA_NO_PADDING>"u"&&(k4t.RSA_NO_PADDING=3);M4t.exports=function(){var e={node10:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],node:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],iojs:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],browser:["md5","ripemd160","sha1","sha256","sha512"]},t="pkcs1_oaep",r="pkcs1",n="private",i={private:"pkcs1-private-pem","private-der":"pkcs1-private-der",public:"pkcs8-public-pem","public-der":"pkcs8-public-der"};function s(a,o,u){if(!(this instanceof s))return new s(a,o,u);zc.isObject(o)&&(u=o,o=void 0),this.$options={signingScheme:r,signingSchemeOptions:{hash:"sha256",saltLength:null},encryptionScheme:t,encryptionSchemeOptions:{hash:"sha1",label:null},environment:Sdn.detectEnvironment(),rsaUtils:this},this.keyPair=new Edn.Key,this.$cache={},Buffer.isBuffer(a)||zc.isString(a)?this.importKey(a,o):zc.isObject(a)&&this.generateKeyPair(a.b,a.e),this.setOptions(u)}return s.prototype.setOptions=function(a){if(a=a||{},a.environment&&(this.$options.environment=a.environment),a.signingScheme){if(zc.isString(a.signingScheme)){var o=a.signingScheme.toLowerCase().split("-");o.length==1?e.node.indexOf(o[0])>-1?(this.$options.signingSchemeOptions={hash:o[0]},this.$options.signingScheme=r):(this.$options.signingScheme=o[0],this.$options.signingSchemeOptions={hash:null}):(this.$options.signingSchemeOptions={hash:o[1]},this.$options.signingScheme=o[0])}else zc.isObject(a.signingScheme)&&(this.$options.signingScheme=a.signingScheme.scheme||r,this.$options.signingSchemeOptions=zc.omit(a.signingScheme,"scheme"));if(!O4t.isSignature(this.$options.signingScheme))throw Error("Unsupported signing scheme");if(this.$options.signingSchemeOptions.hash&&e[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash)===-1)throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}if(a.encryptionScheme){if(zc.isString(a.encryptionScheme)?(this.$options.encryptionScheme=a.encryptionScheme.toLowerCase(),this.$options.encryptionSchemeOptions={}):zc.isObject(a.encryptionScheme)&&(this.$options.encryptionScheme=a.encryptionScheme.scheme||t,this.$options.encryptionSchemeOptions=zc.omit(a.encryptionScheme,"scheme")),!O4t.isEncryption(this.$options.encryptionScheme))throw Error("Unsupported encryption scheme");if(this.$options.encryptionSchemeOptions.hash&&e[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash)===-1)throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}this.keyPair.setOptions(this.$options)},s.prototype.generateKeyPair=function(a,o){if(a=a||2048,o=o||65537,a%8!==0)throw Error("Key size must be a multiple of 8.");return this.keyPair.generate(a,o.toString(16)),this.$cache={},this},s.prototype.importKey=function(a,o){if(!a)throw Error("Empty key given");if(o&&(o=i[o]||o),!P4t.detectAndImport(this.keyPair,a,o)&&o===void 0)throw Error("Key format must be specified");return this.$cache={},this},s.prototype.exportKey=function(a){return a=a||n,a=i[a]||a,this.$cache[a]||(this.$cache[a]=P4t.detectAndExport(this.keyPair,a)),this.$cache[a]},s.prototype.isPrivate=function(){return this.keyPair.isPrivate()},s.prototype.isPublic=function(a){return this.keyPair.isPublic(a)},s.prototype.isEmpty=function(a){return!(this.keyPair.n||this.keyPair.e||this.keyPair.d)},s.prototype.encrypt=function(a,o,u){return this.$$encryptKey(!1,a,o,u)},s.prototype.decrypt=function(a,o){return this.$$decryptKey(!1,a,o)},s.prototype.encryptPrivate=function(a,o,u){return this.$$encryptKey(!0,a,o,u)},s.prototype.decryptPublic=function(a,o){return this.$$decryptKey(!0,a,o)},s.prototype.$$encryptKey=function(a,o,u,c){try{var l=this.keyPair.encrypt(this.$getDataForEncrypt(o,c),a);return u=="buffer"||!u?l:l.toString(u)}catch(d){throw Error("Error during encryption. Original error: "+d)}},s.prototype.$$decryptKey=function(a,o,u){try{o=zc.isString(o)?Buffer.from(o,"base64"):o;var c=this.keyPair.decrypt(o,a);if(c===null)throw Error("Key decrypt method returns null.");return this.$getDecryptedData(c,u)}catch(l){throw Error("Error during decryption (probably incorrect key). Original error: "+l)}},s.prototype.sign=function(a,o,u){if(!this.isPrivate())throw Error("This is not private key");var c=this.keyPair.sign(this.$getDataForEncrypt(a,u));return o&&o!="buffer"&&(c=c.toString(o)),c},s.prototype.verify=function(a,o,u,c){if(!this.isPublic())throw Error("This is not public key");return c=!c||c=="buffer"?null:c,this.keyPair.verify(this.$getDataForEncrypt(a,u),o,c)},s.prototype.getKeySize=function(){return this.keyPair.keySize},s.prototype.getMaxMessageSize=function(){return this.keyPair.maxMessageLength},s.prototype.$getDataForEncrypt=function(a,o){if(zc.isString(a)||zc.isNumber(a))return Buffer.from(""+a,o||"utf8");if(Buffer.isBuffer(a))return a;if(zc.isObject(a))return Buffer.from(JSON.stringify(a));throw Error("Unexpected data type")},s.prototype.$getDecryptedData=function(a,o){return o=o||"buffer",o=="buffer"?a:o=="json"?JSON.parse(a.toString()):a.toString(o)},s}()});var o6t=b(RE=>{"use strict";function iAn(e,t){return e.endsWith(t)?e.length===t.length||e[e.length-t.length-1]===".":!1}function sAn(e,t){let r=e.length-t.length-2,n=e.lastIndexOf(".",r);return n===-1?e:e.slice(n+1)}function aAn(e,t,r){if(r.validHosts!==null){let i=r.validHosts;for(let s of i)if(iAn(t,s))return s}let n=0;if(t.startsWith("."))for(;nr+1&&e.charCodeAt(n-1)<=32;)n-=1;if(e.charCodeAt(r)===47&&e.charCodeAt(r+1)===47)r+=2;else{let c=e.indexOf(":/",r);if(c!==-1){let l=c-r,d=e.charCodeAt(r),f=e.charCodeAt(r+1),p=e.charCodeAt(r+2),h=e.charCodeAt(r+3),m=e.charCodeAt(r+4);if(!(l===5&&d===104&&f===116&&p===116&&h===112&&m===115)){if(!(l===4&&d===104&&f===116&&p===116&&h===112)){if(!(l===3&&d===119&&f===115&&p===115)){if(!(l===2&&d===119&&f===115))for(let y=r;y=97&&g<=122||g>=48&&g<=57||g===46||g===45||g===43))return null}}}}for(r=c+2;e.charCodeAt(r)===47;)r+=1}}let a=-1,o=-1,u=-1;for(let c=r;c=65&&l<=90&&(i=!0)}if(a!==-1&&a>r&&ar&&ur+1&&e.charCodeAt(n-1)===46;)n-=1;let s=r!==0||n!==e.length?e.slice(r,n):e;return i?s.toLowerCase():s}function uAn(e){if(e.length<7||e.length>15)return!1;let t=0;for(let r=0;r57)return!1}return t===3&&e.charCodeAt(0)!==46&&e.charCodeAt(e.length-1)!==46}function cAn(e){if(e.length<3)return!1;let t=e.startsWith("[")?1:0,r=e.length;if(e[r-1]==="]"&&(r-=1),r-t>39)return!1;let n=!1;for(;t=48&&i<=57||i>=97&&i<=102||i>=65&&i<=90))return!1}return n}function lAn(e){return cAn(e)||uAn(e)}function r6t(e){return e>=97&&e<=122||e>=48&&e<=57||e>127}function n6t(e){if(e.length>255||e.length===0||!r6t(e.charCodeAt(0))&&e.charCodeAt(0)!==46&&e.charCodeAt(0)!==95)return!1;let t=-1,r=-1,n=e.length;for(let i=0;i64||r===46||r===45||r===95)return!1;t=i}else if(!(r6t(s)||s===45||s===95))return!1;r=s}return n-t-1<=63&&r!==45}function s6t({allowIcannDomains:e=!0,allowPrivateDomains:t=!1,detectIp:r=!0,extractHostname:n=!0,mixedInputs:i=!0,validHosts:s=null,validateHostname:a=!0}){return{allowIcannDomains:e,allowPrivateDomains:t,detectIp:r,extractHostname:n,mixedInputs:i,validHosts:s,validateHostname:a}}var dAn=s6t({});function fAn(e){return e===void 0?dAn:s6t(e)}function pAn(e,t){return t.length===e.length?"":e.slice(0,-t.length-1)}function a6t(){return{domain:null,domainWithoutSuffix:null,hostname:null,isIcann:null,isIp:null,isPrivate:null,publicSuffix:null,subdomain:null}}function NL(e){e.domain=null,e.domainWithoutSuffix=null,e.hostname=null,e.isIcann=null,e.isIp=null,e.isPrivate=null,e.publicSuffix=null,e.subdomain=null}function LC(e,t,r,n,i){let s=fAn(n);return typeof e!="string"||(s.extractHostname?s.mixedInputs?i.hostname=t6t(e,n6t(e)):i.hostname=t6t(e,!1):i.hostname=e,s.detectIp&&i.hostname!==null&&(i.isIp=lAn(i.hostname),i.isIp))?i:s.validateHostname&&s.extractHostname&&i.hostname!==null&&!n6t(i.hostname)?(i.hostname=null,i):(t===0||i.hostname===null||(r(i.hostname,s,i),t===2||i.publicSuffix===null)||(i.domain=aAn(i.publicSuffix,i.hostname,s),t===3||i.domain===null)||(i.subdomain=pAn(i.hostname,i.domain),t===4)||(i.domainWithoutSuffix=oAn(i.domain,i.publicSuffix)),i)}function hAn(e,t,r){if(!t.allowPrivateDomains&&e.length>3){let n=e.length-1,i=e.charCodeAt(n),s=e.charCodeAt(n-1),a=e.charCodeAt(n-2),o=e.charCodeAt(n-3);if(i===109&&s===111&&a===99&&o===46)return r.isIcann=!0,r.isPrivate=!1,r.publicSuffix="com",!0;if(i===103&&s===114&&a===111&&o===46)return r.isIcann=!0,r.isPrivate=!1,r.publicSuffix="org",!0;if(i===117&&s===100&&a===101&&o===46)return r.isIcann=!0,r.isPrivate=!1,r.publicSuffix="edu",!0;if(i===118&&s===111&&a===103&&o===46)return r.isIcann=!0,r.isPrivate=!1,r.publicSuffix="gov",!0;if(i===116&&s===101&&a===110&&o===46)return r.isIcann=!0,r.isPrivate=!1,r.publicSuffix="net",!0;if(i===101&&s===100&&a===46)return r.isIcann=!0,r.isPrivate=!1,r.publicSuffix="de",!0}return!1}var mAn=function(){let e=[1,{}],t=[0,{city:e}];return[0,{ck:[0,{www:e}],jp:[0,{kawasaki:t,kitakyushu:t,kobe:t,nagoya:t,sapporo:t,sendai:t,yokohama:t}]}]}(),gAn=function(){let e=[1,{}],t=[2,{}],r=[1,{com:e,edu:e,gov:e,net:e,org:e}],n=[1,{com:e,edu:e,gov:e,mil:e,net:e,org:e}],i=[0,{"*":t}],s=[2,{s:i}],a=[0,{relay:t}],o=[2,{id:t}],u=[1,{gov:e}],c=[0,{airflow:i,"lambda-url":t,"transfer-webapp":t}],l=[0,{airflow:i,"transfer-webapp":t}],d=[0,{"transfer-webapp":t}],f=[0,{"transfer-webapp":t,"transfer-webapp-fips":t}],p=[0,{notebook:t,studio:t}],h=[0,{labeling:t,notebook:t,studio:t}],m=[0,{notebook:t}],y=[0,{labeling:t,notebook:t,"notebook-fips":t,studio:t}],g=[0,{notebook:t,"notebook-fips":t,studio:t,"studio-fips":t}],v=[0,{shop:t}],A=[0,{"*":e}],_=[1,{co:t}],E=[0,{objects:t}],S=[2,{nodes:t}],C=[0,{my:t}],I=[0,{s3:t,"s3-accesspoint":t,"s3-website":t}],N=[0,{s3:t,"s3-accesspoint":t}],T=[0,{direct:t}],k=[0,{"webview-assets":t}],O=[0,{vfs:t,"webview-assets":t}],P=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:I,s3:t,"s3-accesspoint":t,"s3-object-lambda":t,"s3-website":t,"aws-cloud9":k,cloud9:O}],$=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:N,s3:t,"s3-accesspoint":t,"s3-object-lambda":t,"s3-website":t,"aws-cloud9":k,cloud9:O}],Q=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:I,s3:t,"s3-accesspoint":t,"s3-object-lambda":t,"s3-website":t,"analytics-gateway":t,"aws-cloud9":k,cloud9:O}],j=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:I,s3:t,"s3-accesspoint":t,"s3-object-lambda":t,"s3-website":t}],z=[0,{s3:t,"s3-accesspoint":t,"s3-accesspoint-fips":t,"s3-fips":t,"s3-website":t}],X=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:z,s3:t,"s3-accesspoint":t,"s3-accesspoint-fips":t,"s3-fips":t,"s3-object-lambda":t,"s3-website":t,"aws-cloud9":k,cloud9:O}],K=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:z,s3:t,"s3-accesspoint":t,"s3-accesspoint-fips":t,"s3-fips":t,"s3-object-lambda":t,"s3-website":t}],Z=[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:z,s3:t,"s3-accesspoint":t,"s3-accesspoint-fips":t,"s3-deprecated":t,"s3-fips":t,"s3-object-lambda":t,"s3-website":t,"analytics-gateway":t,"aws-cloud9":k,cloud9:O}],Y=[0,{auth:t}],ie=[0,{auth:t,"auth-fips":t}],ue=[0,{"auth-fips":t}],he=[0,{apps:t}],ye=[0,{paas:t}],q=[2,{eu:t}],B=[0,{app:t}],ae=[0,{site:t}],M=[1,{com:e,edu:e,net:e,org:e}],F=[0,{j:t}],V=[0,{dyn:t}],H=[2,{web:t}],G=[1,{discourse:t}],J=[1,{co:e,com:e,edu:e,gov:e,net:e,org:e}],ee=[0,{p:t}],te=[0,{user:t}],re=[0,{cdn:t}],ce=[2,{raw:i}],de=[0,{cust:t,reservd:t}],pe=[0,{cust:t}],Ce=[0,{s3:t}],$e=[1,{biz:e,com:e,edu:e,gov:e,info:e,net:e,org:e}],We=[0,{ipfs:t}],Ve=[1,{framer:t}],Te=[0,{forgot:t}],Ne=[0,{blob:t,file:t,web:t}],Ue=[0,{core:Ne,servicebus:t}],Me=[1,{gs:e}],Ge=[0,{nes:e}],Be=[1,{k12:e,cc:e,lib:e}],It=[1,{cc:e}],Ze=[1,{cc:e,lib:e}];return[0,{ac:[1,{com:e,edu:e,gov:e,mil:e,net:e,org:e,drr:t,feedback:t,forms:t}],ad:e,ae:[1,{ac:e,co:e,gov:e,mil:e,net:e,org:e,sch:e}],aero:[1,{airline:e,airport:e,"accident-investigation":e,"accident-prevention":e,aerobatic:e,aeroclub:e,aerodrome:e,agents:e,"air-surveillance":e,"air-traffic-control":e,aircraft:e,airtraffic:e,ambulance:e,association:e,author:e,ballooning:e,broker:e,caa:e,cargo:e,catering:e,certification:e,championship:e,charter:e,civilaviation:e,club:e,conference:e,consultant:e,consulting:e,control:e,council:e,crew:e,design:e,dgca:e,educator:e,emergency:e,engine:e,engineer:e,entertainment:e,equipment:e,exchange:e,express:e,federation:e,flight:e,freight:e,fuel:e,gliding:e,government:e,groundhandling:e,group:e,hanggliding:e,homebuilt:e,insurance:e,journal:e,journalist:e,leasing:e,logistics:e,magazine:e,maintenance:e,marketplace:e,media:e,microlight:e,modelling:e,navigation:e,parachuting:e,paragliding:e,"passenger-association":e,pilot:e,press:e,production:e,recreation:e,repbody:e,res:e,research:e,rotorcraft:e,safety:e,scientist:e,services:e,show:e,skydiving:e,software:e,student:e,taxi:e,trader:e,trading:e,trainer:e,union:e,workinggroup:e,works:e}],af:r,ag:[1,{co:e,com:e,net:e,nom:e,org:e,obj:t}],ai:[1,{com:e,net:e,off:e,org:e,uwu:t,framer:t,kiloapps:t}],al:n,am:[1,{co:e,com:e,commune:e,net:e,org:e,radio:t}],ao:[1,{co:e,ed:e,edu:e,gov:e,gv:e,it:e,og:e,org:e,pb:e}],aq:e,ar:[1,{bet:e,com:e,coop:e,edu:e,gob:e,gov:e,int:e,mil:e,musica:e,mutual:e,net:e,org:e,seg:e,senasa:e,tur:e}],arpa:[1,{e164:e,home:e,"in-addr":e,ip6:e,iris:e,uri:e,urn:e}],as:u,asia:[1,{cloudns:t,daemon:t,dix:t}],at:[1,{4:t,ac:[1,{sth:e}],co:e,gv:e,or:e,funkfeuer:[0,{wien:t}],futurecms:[0,{"*":t,ex:i,in:i}],futurehosting:t,futuremailing:t,ortsinfo:[0,{ex:i,kunden:i}],biz:t,info:t,"123webseite":t,priv:t,my:t,myspreadshop:t,"12hp":t,"2ix":t,"4lima":t,"lima-city":t}],au:[1,{asn:e,com:[1,{cloudlets:[0,{mel:t}],myspreadshop:t}],edu:[1,{act:e,catholic:e,nsw:e,nt:e,qld:e,sa:e,tas:e,vic:e,wa:e}],gov:[1,{qld:e,sa:e,tas:e,vic:e,wa:e}],id:e,net:e,org:e,conf:e,oz:e,act:e,nsw:e,nt:e,qld:e,sa:e,tas:e,vic:e,wa:e,hrsn:[0,{vps:t}]}],aw:[1,{com:e}],ax:e,az:[1,{biz:e,co:e,com:e,edu:e,gov:e,info:e,int:e,mil:e,name:e,net:e,org:e,pp:e,pro:e}],ba:[1,{com:e,edu:e,gov:e,mil:e,net:e,org:e,brendly:v,rs:t}],bb:[1,{biz:e,co:e,com:e,edu:e,gov:e,info:e,net:e,org:e,store:e,tv:e}],bd:[1,{ac:e,ai:e,co:e,com:e,edu:e,gov:e,id:e,info:e,it:e,mil:e,net:e,org:e,sch:e,tv:e}],be:[1,{ac:e,cloudns:t,webhosting:t,interhostsolutions:[0,{cloud:t}],kuleuven:[0,{ezproxy:t}],"123website":t,myspreadshop:t,transurl:i}],bf:u,bg:[1,{0:e,1:e,2:e,3:e,4:e,5:e,6:e,7:e,8:e,9:e,a:e,b:e,c:e,d:e,e,f:e,g:e,h:e,i:e,j:e,k:e,l:e,m:e,n:e,o:e,p:e,q:e,r:e,s:e,t:e,u:e,v:e,w:e,x:e,y:e,z:e,barsy:t}],bh:r,bi:[1,{co:e,com:e,edu:e,or:e,org:e}],biz:[1,{activetrail:t,"cloud-ip":t,cloudns:t,jozi:t,dyndns:t,"for-better":t,"for-more":t,"for-some":t,"for-the":t,selfip:t,webhop:t,orx:t,mmafan:t,myftp:t,"no-ip":t,dscloud:t}],bj:[1,{africa:e,agro:e,architectes:e,assur:e,avocats:e,co:e,com:e,eco:e,econo:e,edu:e,info:e,loisirs:e,money:e,net:e,org:e,ote:e,restaurant:e,resto:e,tourism:e,univ:e}],bm:r,bn:[1,{com:e,edu:e,gov:e,net:e,org:e,co:t}],bo:[1,{com:e,edu:e,gob:e,int:e,mil:e,net:e,org:e,tv:e,web:e,academia:e,agro:e,arte:e,blog:e,bolivia:e,ciencia:e,cooperativa:e,democracia:e,deporte:e,ecologia:e,economia:e,empresa:e,indigena:e,industria:e,info:e,medicina:e,movimiento:e,musica:e,natural:e,nombre:e,noticias:e,patria:e,plurinacional:e,politica:e,profesional:e,pueblo:e,revista:e,salud:e,tecnologia:e,tksat:e,transporte:e,wiki:e}],br:[1,{"9guacu":e,abc:e,adm:e,adv:e,agr:e,aju:e,am:e,anani:e,aparecida:e,api:e,app:e,arq:e,art:e,ato:e,b:e,barueri:e,belem:e,bet:e,bhz:e,bib:e,bio:e,blog:e,bmd:e,boavista:e,bsb:e,campinagrande:e,campinas:e,caxias:e,cim:e,cng:e,cnt:e,com:[1,{simplesite:t}],contagem:e,coop:e,coz:e,cri:e,cuiaba:e,curitiba:e,def:e,des:e,det:e,dev:e,ecn:e,eco:e,edu:e,emp:e,enf:e,eng:e,esp:e,etc:e,eti:e,far:e,feira:e,flog:e,floripa:e,fm:e,fnd:e,fortal:e,fot:e,foz:e,fst:e,g12:e,geo:e,ggf:e,goiania:e,gov:[1,{ac:e,al:e,am:e,ap:e,ba:e,ce:e,df:e,es:e,go:e,ma:e,mg:e,ms:e,mt:e,pa:e,pb:e,pe:e,pi:e,pr:e,rj:e,rn:e,ro:e,rr:e,rs:e,sc:e,se:e,sp:e,to:e}],gru:e,ia:e,imb:e,ind:e,inf:e,jab:e,jampa:e,jdf:e,joinville:e,jor:e,jus:e,leg:[1,{ac:t,al:t,am:t,ap:t,ba:t,ce:t,df:t,es:t,go:t,ma:t,mg:t,ms:t,mt:t,pa:t,pb:t,pe:t,pi:t,pr:t,rj:t,rn:t,ro:t,rr:t,rs:t,sc:t,se:t,sp:t,to:t}],leilao:e,lel:e,log:e,londrina:e,macapa:e,maceio:e,manaus:e,maringa:e,mat:e,med:e,mil:e,morena:e,mp:e,mus:e,natal:e,net:e,niteroi:e,nom:A,not:e,ntr:e,odo:e,ong:e,org:e,osasco:e,palmas:e,poa:e,ppg:e,pro:e,psc:e,psi:e,pvh:e,qsl:e,radio:e,rec:e,recife:e,rep:e,ribeirao:e,rio:e,riobranco:e,riopreto:e,salvador:e,sampa:e,santamaria:e,santoandre:e,saobernardo:e,saogonca:e,seg:e,sjc:e,slg:e,slz:e,social:e,sorocaba:e,srv:e,taxi:e,tc:e,tec:e,teo:e,the:e,tmp:e,trd:e,tur:e,tv:e,udi:e,vet:e,vix:e,vlog:e,wiki:e,xyz:e,zlg:e,tche:t}],bs:[1,{com:e,edu:e,gov:e,net:e,org:e,we:t}],bt:r,bv:e,bw:[1,{ac:e,co:e,gov:e,net:e,org:e}],by:[1,{gov:e,mil:e,com:e,of:e,mediatech:t}],bz:[1,{co:e,com:e,edu:e,gov:e,net:e,org:e,za:t,mydns:t,gsj:t}],ca:[1,{ab:e,bc:e,mb:e,nb:e,nf:e,nl:e,ns:e,nt:e,nu:e,on:e,pe:e,qc:e,sk:e,yk:e,gc:e,barsy:t,awdev:i,co:t,"no-ip":t,onid:t,myspreadshop:t,box:t}],cat:e,cc:[1,{cleverapps:t,"cloud-ip":t,cloudns:t,ccwu:t,ftpaccess:t,"game-server":t,myphotos:t,scrapping:t,twmail:t,csx:t,fantasyleague:t,spawn:[0,{instances:t}],ec:t,eu:t,gu:t,uk:t,us:t}],cd:[1,{gov:e,cc:t}],cf:e,cg:e,ch:[1,{square7:t,cloudns:t,cloudscale:[0,{cust:t,lpg:E,rma:E}],objectstorage:[0,{lpg:t,rma:t}],flow:[0,{ae:[0,{alp1:t}],appengine:t}],"linkyard-cloud":t,gotdns:t,dnsking:t,"123website":t,myspreadshop:t,firenet:[0,{"*":t,svc:i}],"12hp":t,"2ix":t,"4lima":t,"lima-city":t}],ci:[1,{ac:e,"xn--aroport-bya":e,a\u00E9roport:e,asso:e,co:e,com:e,ed:e,edu:e,go:e,gouv:e,int:e,net:e,or:e,org:e,us:t}],ck:A,cl:[1,{co:e,gob:e,gov:e,mil:e,cloudns:t}],cm:[1,{co:e,com:e,gov:e,net:e}],cn:[1,{ac:e,com:[1,{amazonaws:[0,{"cn-north-1":[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,rds:i,dualstack:I,s3:t,"s3-accesspoint":t,"s3-deprecated":t,"s3-object-lambda":t,"s3-website":t}],"cn-northwest-1":[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,rds:i,dualstack:N,s3:t,"s3-accesspoint":t,"s3-object-lambda":t,"s3-website":t}],compute:i,airflow:[0,{"cn-north-1":i,"cn-northwest-1":i}],eb:[0,{"cn-north-1":t,"cn-northwest-1":t}],elb:i}],amazonwebservices:[0,{on:[0,{"cn-north-1":l,"cn-northwest-1":l}]}],sagemaker:[0,{"cn-north-1":p,"cn-northwest-1":p}]}],edu:e,gov:e,mil:e,net:e,org:e,"xn--55qx5d":e,\u516C\u53F8:e,"xn--od0alg":e,\u7DB2\u7D61:e,"xn--io0a7i":e,\u7F51\u7EDC:e,ah:e,bj:e,cq:e,fj:e,gd:e,gs:e,gx:e,gz:e,ha:e,hb:e,he:e,hi:e,hk:e,hl:e,hn:e,jl:e,js:e,jx:e,ln:e,mo:e,nm:e,nx:e,qh:e,sc:e,sd:e,sh:[1,{as:t}],sn:e,sx:e,tj:e,tw:e,xj:e,xz:e,yn:e,zj:e,"canva-apps":t,canvasite:C,myqnapcloud:t,quickconnect:T}],co:[1,{com:e,edu:e,gov:e,mil:e,net:e,nom:e,org:e,carrd:t,crd:t,otap:i,hidns:t,leadpages:t,lpages:t,mypi:t,xmit:i,rdpa:[0,{clusters:i,srvrless:i}],firewalledreplit:o,repl:o,supabase:[2,{realtime:t,storage:t}],umso:t}],com:[1,{a2hosted:t,cpserver:t,adobeaemcloud:[2,{dev:i}],africa:t,auiusercontent:i,aivencloud:t,alibabacloudcs:t,kasserver:t,amazonaws:[0,{"af-south-1":P,"ap-east-1":$,"ap-northeast-1":Q,"ap-northeast-2":Q,"ap-northeast-3":P,"ap-south-1":Q,"ap-south-2":j,"ap-southeast-1":Q,"ap-southeast-2":Q,"ap-southeast-3":j,"ap-southeast-4":j,"ap-southeast-5":[0,{"execute-api":t,dualstack:I,s3:t,"s3-accesspoint":t,"s3-deprecated":t,"s3-object-lambda":t,"s3-website":t}],"ca-central-1":X,"ca-west-1":K,"eu-central-1":Q,"eu-central-2":j,"eu-north-1":$,"eu-south-1":P,"eu-south-2":j,"eu-west-1":[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:I,s3:t,"s3-accesspoint":t,"s3-deprecated":t,"s3-object-lambda":t,"s3-website":t,"analytics-gateway":t,"aws-cloud9":k,cloud9:O}],"eu-west-2":$,"eu-west-3":P,"il-central-1":[0,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:I,s3:t,"s3-accesspoint":t,"s3-object-lambda":t,"s3-website":t,"aws-cloud9":k,cloud9:[0,{vfs:t}]}],"me-central-1":j,"me-south-1":$,"sa-east-1":P,"us-east-1":[2,{"execute-api":t,"emrappui-prod":t,"emrnotebooks-prod":t,"emrstudio-prod":t,dualstack:z,s3:t,"s3-accesspoint":t,"s3-accesspoint-fips":t,"s3-deprecated":t,"s3-fips":t,"s3-object-lambda":t,"s3-website":t,"analytics-gateway":t,"aws-cloud9":k,cloud9:O}],"us-east-2":Z,"us-gov-east-1":K,"us-gov-west-1":K,"us-west-1":X,"us-west-2":Z,compute:i,"compute-1":i,airflow:[0,{"af-south-1":i,"ap-east-1":i,"ap-northeast-1":i,"ap-northeast-2":i,"ap-northeast-3":i,"ap-south-1":i,"ap-south-2":i,"ap-southeast-1":i,"ap-southeast-2":i,"ap-southeast-3":i,"ap-southeast-4":i,"ap-southeast-5":i,"ap-southeast-7":i,"ca-central-1":i,"ca-west-1":i,"eu-central-1":i,"eu-central-2":i,"eu-north-1":i,"eu-south-1":i,"eu-south-2":i,"eu-west-1":i,"eu-west-2":i,"eu-west-3":i,"il-central-1":i,"me-central-1":i,"me-south-1":i,"sa-east-1":i,"us-east-1":i,"us-east-2":i,"us-west-1":i,"us-west-2":i}],rds:[0,{"af-south-1":i,"ap-east-1":i,"ap-east-2":i,"ap-northeast-1":i,"ap-northeast-2":i,"ap-northeast-3":i,"ap-south-1":i,"ap-south-2":i,"ap-southeast-1":i,"ap-southeast-2":i,"ap-southeast-3":i,"ap-southeast-4":i,"ap-southeast-5":i,"ap-southeast-6":i,"ap-southeast-7":i,"ca-central-1":i,"ca-west-1":i,"eu-central-1":i,"eu-central-2":i,"eu-west-1":i,"eu-west-2":i,"eu-west-3":i,"il-central-1":i,"me-central-1":i,"me-south-1":i,"mx-central-1":i,"sa-east-1":i,"us-east-1":i,"us-east-2":i,"us-gov-east-1":i,"us-gov-west-1":i,"us-northeast-1":i,"us-west-1":i,"us-west-2":i}],s3:t,"s3-1":t,"s3-ap-east-1":t,"s3-ap-northeast-1":t,"s3-ap-northeast-2":t,"s3-ap-northeast-3":t,"s3-ap-south-1":t,"s3-ap-southeast-1":t,"s3-ap-southeast-2":t,"s3-ca-central-1":t,"s3-eu-central-1":t,"s3-eu-north-1":t,"s3-eu-west-1":t,"s3-eu-west-2":t,"s3-eu-west-3":t,"s3-external-1":t,"s3-fips-us-gov-east-1":t,"s3-fips-us-gov-west-1":t,"s3-global":[0,{accesspoint:[0,{mrap:t}]}],"s3-me-south-1":t,"s3-sa-east-1":t,"s3-us-east-2":t,"s3-us-gov-east-1":t,"s3-us-gov-west-1":t,"s3-us-west-1":t,"s3-us-west-2":t,"s3-website-ap-northeast-1":t,"s3-website-ap-southeast-1":t,"s3-website-ap-southeast-2":t,"s3-website-eu-west-1":t,"s3-website-sa-east-1":t,"s3-website-us-east-1":t,"s3-website-us-gov-west-1":t,"s3-website-us-west-1":t,"s3-website-us-west-2":t,elb:i}],amazoncognito:[0,{"af-south-1":Y,"ap-east-1":Y,"ap-northeast-1":Y,"ap-northeast-2":Y,"ap-northeast-3":Y,"ap-south-1":Y,"ap-south-2":Y,"ap-southeast-1":Y,"ap-southeast-2":Y,"ap-southeast-3":Y,"ap-southeast-4":Y,"ap-southeast-5":Y,"ap-southeast-7":Y,"ca-central-1":Y,"ca-west-1":Y,"eu-central-1":Y,"eu-central-2":Y,"eu-north-1":Y,"eu-south-1":Y,"eu-south-2":Y,"eu-west-1":Y,"eu-west-2":Y,"eu-west-3":Y,"il-central-1":Y,"me-central-1":Y,"me-south-1":Y,"mx-central-1":Y,"sa-east-1":Y,"us-east-1":ie,"us-east-2":ie,"us-gov-east-1":ue,"us-gov-west-1":ue,"us-west-1":ie,"us-west-2":ie}],amplifyapp:t,awsapprunner:i,awsapps:t,elasticbeanstalk:[2,{"af-south-1":t,"ap-east-1":t,"ap-northeast-1":t,"ap-northeast-2":t,"ap-northeast-3":t,"ap-south-1":t,"ap-southeast-1":t,"ap-southeast-2":t,"ap-southeast-3":t,"ap-southeast-5":t,"ap-southeast-7":t,"ca-central-1":t,"eu-central-1":t,"eu-north-1":t,"eu-south-1":t,"eu-south-2":t,"eu-west-1":t,"eu-west-2":t,"eu-west-3":t,"il-central-1":t,"me-central-1":t,"me-south-1":t,"sa-east-1":t,"us-east-1":t,"us-east-2":t,"us-gov-east-1":t,"us-gov-west-1":t,"us-west-1":t,"us-west-2":t}],awsglobalaccelerator:t,siiites:t,appspacehosted:t,appspaceusercontent:t,"on-aptible":t,myasustor:t,"balena-devices":t,boutir:t,bplaced:t,cafjs:t,"canva-apps":t,"canva-hosted-embed":t,canvacode:t,"rice-labs":t,"cdn77-storage":t,br:t,cn:t,de:t,eu:t,jpn:t,mex:t,ru:t,sa:t,uk:t,us:t,za:t,"clever-cloud":[0,{services:i}],abrdns:t,dnsabr:t,"ip-ddns":t,jdevcloud:t,wpdevcloud:t,"cf-ipfs":t,"cloudflare-ipfs":t,trycloudflare:t,co:t,devinapps:i,builtwithdark:t,datadetect:[0,{demo:t,instance:t}],dattolocal:t,dattorelay:t,dattoweb:t,mydatto:t,digitaloceanspaces:i,discordsays:t,discordsez:t,drayddns:t,dreamhosters:t,durumis:t,blogdns:t,cechire:t,dnsalias:t,dnsdojo:t,doesntexist:t,dontexist:t,doomdns:t,"dyn-o-saur":t,dynalias:t,"dyndns-at-home":t,"dyndns-at-work":t,"dyndns-blog":t,"dyndns-free":t,"dyndns-home":t,"dyndns-ip":t,"dyndns-mail":t,"dyndns-office":t,"dyndns-pics":t,"dyndns-remote":t,"dyndns-server":t,"dyndns-web":t,"dyndns-wiki":t,"dyndns-work":t,"est-a-la-maison":t,"est-a-la-masion":t,"est-le-patron":t,"est-mon-blogueur":t,"from-ak":t,"from-al":t,"from-ar":t,"from-ca":t,"from-ct":t,"from-dc":t,"from-de":t,"from-fl":t,"from-ga":t,"from-hi":t,"from-ia":t,"from-id":t,"from-il":t,"from-in":t,"from-ks":t,"from-ky":t,"from-ma":t,"from-md":t,"from-mi":t,"from-mn":t,"from-mo":t,"from-ms":t,"from-mt":t,"from-nc":t,"from-nd":t,"from-ne":t,"from-nh":t,"from-nj":t,"from-nm":t,"from-nv":t,"from-oh":t,"from-ok":t,"from-or":t,"from-pa":t,"from-pr":t,"from-ri":t,"from-sc":t,"from-sd":t,"from-tn":t,"from-tx":t,"from-ut":t,"from-va":t,"from-vt":t,"from-wa":t,"from-wi":t,"from-wv":t,"from-wy":t,getmyip:t,gotdns:t,"hobby-site":t,homelinux:t,homeunix:t,iamallama:t,"is-a-anarchist":t,"is-a-blogger":t,"is-a-bookkeeper":t,"is-a-bulls-fan":t,"is-a-caterer":t,"is-a-chef":t,"is-a-conservative":t,"is-a-cpa":t,"is-a-cubicle-slave":t,"is-a-democrat":t,"is-a-designer":t,"is-a-doctor":t,"is-a-financialadvisor":t,"is-a-geek":t,"is-a-green":t,"is-a-guru":t,"is-a-hard-worker":t,"is-a-hunter":t,"is-a-landscaper":t,"is-a-lawyer":t,"is-a-liberal":t,"is-a-libertarian":t,"is-a-llama":t,"is-a-musician":t,"is-a-nascarfan":t,"is-a-nurse":t,"is-a-painter":t,"is-a-personaltrainer":t,"is-a-photographer":t,"is-a-player":t,"is-a-republican":t,"is-a-rockstar":t,"is-a-socialist":t,"is-a-student":t,"is-a-teacher":t,"is-a-techie":t,"is-a-therapist":t,"is-an-accountant":t,"is-an-actor":t,"is-an-actress":t,"is-an-anarchist":t,"is-an-artist":t,"is-an-engineer":t,"is-an-entertainer":t,"is-certified":t,"is-gone":t,"is-into-anime":t,"is-into-cars":t,"is-into-cartoons":t,"is-into-games":t,"is-leet":t,"is-not-certified":t,"is-slick":t,"is-uberleet":t,"is-with-theband":t,"isa-geek":t,"isa-hockeynut":t,issmarterthanyou:t,"likes-pie":t,likescandy:t,"neat-url":t,"saves-the-whales":t,selfip:t,"sells-for-less":t,"sells-for-u":t,servebbs:t,"simple-url":t,"space-to-rent":t,"teaches-yoga":t,writesthisblog:t,"1cooldns":t,bumbleshrimp:t,ddnsfree:t,ddnsgeek:t,ddnsguru:t,dynuddns:t,dynuhosting:t,giize:t,gleeze:t,kozow:t,loseyourip:t,ooguy:t,pivohosting:t,theworkpc:t,wiredbladehosting:t,emergentagent:[0,{preview:t}],mytuleap:t,"tuleap-partners":t,encoreapi:t,evennode:[0,{"eu-1":t,"eu-2":t,"eu-3":t,"eu-4":t,"us-1":t,"us-2":t,"us-3":t,"us-4":t}],onfabrica:t,"fastly-edge":t,"fastly-terrarium":t,"fastvps-server":t,mydobiss:t,firebaseapp:t,fldrv:t,framercanvas:t,"freebox-os":t,freeboxos:t,freemyip:t,aliases121:t,gentapps:t,gentlentapis:t,githubusercontent:t,"0emm":i,appspot:[2,{r:i}],blogspot:t,codespot:t,googleapis:t,googlecode:t,pagespeedmobilizer:t,withgoogle:t,withyoutube:t,grayjayleagues:t,hatenablog:t,hatenadiary:t,"hercules-app":t,"hercules-dev":t,herokuapp:t,gr:t,smushcdn:t,wphostedmail:t,wpmucdn:t,pixolino:t,"apps-1and1":t,"live-website":t,"webspace-host":t,dopaas:t,"hosted-by-previder":ye,hosteur:[0,{"rag-cloud":t,"rag-cloud-ch":t}],"ik-server":[0,{jcloud:t,"jcloud-ver-jpc":t}],jelastic:[0,{demo:t}],massivegrid:ye,wafaicloud:[0,{jed:t,ryd:t}],"eu1-plenit":t,"la1-plenit":t,"us1-plenit":t,webadorsite:t,"on-forge":t,"on-vapor":t,lpusercontent:t,linode:[0,{members:t,nodebalancer:i}],linodeobjects:i,linodeusercontent:[0,{ip:t}],localtonet:t,lovableproject:t,barsycenter:t,barsyonline:t,lutrausercontent:i,magicpatternsapp:t,modelscape:t,mwcloudnonprod:t,polyspace:t,mazeplay:t,miniserver:t,atmeta:t,fbsbx:he,meteorapp:q,routingthecloud:t,"same-app":t,"same-preview":t,mydbserver:t,mochausercontent:t,hostedpi:t,"mythic-beasts":[0,{caracal:t,customer:t,fentiger:t,lynx:t,ocelot:t,oncilla:t,onza:t,sphinx:t,vs:t,x:t,yali:t}],nospamproxy:[0,{cloud:[2,{o365:t}]}],"4u":t,nfshost:t,"3utilities":t,blogsyte:t,ciscofreak:t,damnserver:t,ddnsking:t,ditchyourip:t,dnsiskinky:t,dynns:t,geekgalaxy:t,"health-carereform":t,homesecuritymac:t,homesecuritypc:t,myactivedirectory:t,mysecuritycamera:t,myvnc:t,"net-freaks":t,onthewifi:t,point2this:t,quicksytes:t,securitytactics:t,servebeer:t,servecounterstrike:t,serveexchange:t,serveftp:t,servegame:t,servehalflife:t,servehttp:t,servehumour:t,serveirc:t,servemp3:t,servep2p:t,servepics:t,servequake:t,servesarcasm:t,stufftoread:t,unusualperson:t,workisboring:t,myiphost:t,observableusercontent:[0,{static:t}],simplesite:t,oaiusercontent:i,orsites:t,operaunite:t,"customer-oci":[0,{"*":t,oci:i,ocp:i,ocs:i}],oraclecloudapps:i,oraclegovcloudapps:i,"authgear-staging":t,authgearapps:t,outsystemscloud:t,ownprovider:t,pgfog:t,pagexl:t,gotpantheon:t,paywhirl:i,forgeblocks:t,upsunapp:t,"postman-echo":t,prgmr:[0,{xen:t}],"project-study":[0,{dev:t}],pythonanywhere:q,qa2:t,"alpha-myqnapcloud":t,"dev-myqnapcloud":t,mycloudnas:t,mynascloud:t,myqnapcloud:t,qualifioapp:t,ladesk:t,qualyhqpartner:i,qualyhqportal:i,qbuser:t,quipelements:i,rackmaze:t,"readthedocs-hosted":t,rhcloud:t,onrender:t,render:B,"subsc-pay":t,"180r":t,dojin:t,sakuratan:t,sakuraweb:t,x0:t,code:[0,{builder:i,"dev-builder":i,"stg-builder":i}],salesforce:[0,{platform:[0,{"code-builder-stg":[0,{test:[0,{"001":i}]}]}]}],logoip:t,scrysec:t,"firewall-gateway":t,myshopblocks:t,myshopify:t,shopitsite:t,"1kapp":t,appchizi:t,applinzi:t,sinaapp:t,vipsinaapp:t,streamlitapp:t,"try-snowplow":t,"playstation-cloud":t,myspreadshop:t,"w-corp-staticblitz":t,"w-credentialless-staticblitz":t,"w-staticblitz":t,"stackhero-network":t,stdlib:[0,{api:t}],strapiapp:[2,{media:t}],"streak-link":t,streaklinks:t,streakusercontent:t,"temp-dns":t,dsmynas:t,familyds:t,mytabit:t,taveusercontent:t,"tb-hosting":ae,reservd:t,thingdustdata:t,"townnews-staging":t,typeform:[0,{pro:t}],hk:t,it:t,"deus-canvas":t,vultrobjects:i,wafflecell:t,hotelwithflight:t,"reserve-online":t,cprapid:t,pleskns:t,remotewd:t,wiardweb:[0,{pages:t}],"base44-sandbox":t,wixsite:t,wixstudio:t,messwithdns:t,"woltlab-demo":t,wpenginepowered:[2,{js:t}],xnbay:[2,{u2:t,"u2-local":t}],xtooldevice:t,yolasite:t}],coop:e,cr:[1,{ac:e,co:e,ed:e,fi:e,go:e,or:e,sa:e}],cu:[1,{com:e,edu:e,gob:e,inf:e,nat:e,net:e,org:e}],cv:[1,{com:e,edu:e,id:e,int:e,net:e,nome:e,org:e,publ:e}],cw:M,cx:[1,{gov:e,cloudns:t,ath:t,info:t,assessments:t,calculators:t,funnels:t,paynow:t,quizzes:t,researched:t,tests:t}],cy:[1,{ac:e,biz:e,com:[1,{scaleforce:F}],ekloges:e,gov:e,ltd:e,mil:e,net:e,org:e,press:e,pro:e,tm:e}],cz:[1,{gov:e,contentproxy9:[0,{rsc:t}],realm:t,e4:t,co:t,metacentrum:[0,{cloud:i,custom:t}],muni:[0,{cloud:[0,{flt:t,usr:t}]}]}],de:[1,{bplaced:t,square7:t,"bwcloud-os-instance":i,com:t,cosidns:V,dnsupdater:t,"dynamisches-dns":t,"internet-dns":t,"l-o-g-i-n":t,ddnss:[2,{dyn:t,dyndns:t}],"dyn-ip24":t,dyndns1:t,"home-webserver":[2,{dyn:t}],"myhome-server":t,dnshome:t,fuettertdasnetz:t,isteingeek:t,istmein:t,lebtimnetz:t,leitungsen:t,traeumtgerade:t,frusky:i,goip:t,"xn--gnstigbestellen-zvb":t,g\u00FCnstigbestellen:t,"xn--gnstigliefern-wob":t,g\u00FCnstigliefern:t,"hs-heilbronn":[0,{it:[0,{pages:t,"pages-research":t}]}],"dyn-berlin":t,"in-berlin":t,"in-brb":t,"in-butter":t,"in-dsl":t,"in-vpn":t,iservschule:t,"mein-iserv":t,schuldock:t,schulplattform:t,schulserver:t,"test-iserv":t,keymachine:t,co:t,"git-repos":t,"lcube-server":t,"svn-repos":t,barsy:t,webspaceconfig:t,"123webseite":t,rub:t,"ruhr-uni-bochum":[2,{noc:[0,{io:t}]}],logoip:t,"firewall-gateway":t,"my-gateway":t,"my-router":t,spdns:t,my:t,speedpartner:[0,{customer:t}],myspreadshop:t,"taifun-dns":t,"12hp":t,"2ix":t,"4lima":t,"lima-city":t,"virtual-user":t,virtualuser:t,"community-pro":t,diskussionsbereich:t,xenonconnect:i}],dj:e,dk:[1,{biz:t,co:t,firm:t,reg:t,store:t,"123hjemmeside":t,myspreadshop:t}],dm:J,do:[1,{art:e,com:e,edu:e,gob:e,gov:e,mil:e,net:e,org:e,sld:e,web:e}],dz:[1,{art:e,asso:e,com:e,edu:e,gov:e,net:e,org:e,pol:e,soc:e,tm:e}],ec:[1,{abg:e,adm:e,agron:e,arqt:e,art:e,bar:e,chef:e,com:e,cont:e,cpa:e,cue:e,dent:e,dgn:e,disco:e,doc:e,edu:e,eng:e,esm:e,fin:e,fot:e,gal:e,gob:e,gov:e,gye:e,ibr:e,info:e,k12:e,lat:e,loj:e,med:e,mil:e,mktg:e,mon:e,net:e,ntr:e,odont:e,org:e,pro:e,prof:e,psic:e,psiq:e,pub:e,rio:e,rrpp:e,sal:e,tech:e,tul:e,tur:e,uio:e,vet:e,xxx:e,base:t,official:t}],edu:[1,{rit:[0,{"git-pages":t}]}],ee:[1,{aip:e,com:e,edu:e,fie:e,gov:e,lib:e,med:e,org:e,pri:e,riik:e}],eg:[1,{ac:e,com:e,edu:e,eun:e,gov:e,info:e,me:e,mil:e,name:e,net:e,org:e,sci:e,sport:e,tv:e}],er:A,es:[1,{com:e,edu:e,gob:e,nom:e,org:e,"123miweb":t,myspreadshop:t}],et:[1,{biz:e,com:e,edu:e,gov:e,info:e,name:e,net:e,org:e}],eu:[1,{amazonwebservices:[0,{on:[0,{"eusc-de-east-1":[0,{"cognito-idp":Y}]}]}],cloudns:t,prvw:t,deuxfleurs:t,dogado:[0,{jelastic:t}],barsy:t,spdns:t,nxa:i,directwp:t,transurl:i}],fi:[1,{aland:e,dy:t,"xn--hkkinen-5wa":t,h\u00E4kkinen:t,iki:t,cloudplatform:[0,{fi:t}],datacenter:[0,{demo:t,paas:t}],kapsi:t,"123kotisivu":t,myspreadshop:t}],fj:[1,{ac:e,biz:e,com:e,edu:e,gov:e,id:e,info:e,mil:e,name:e,net:e,org:e,pro:e}],fk:A,fm:[1,{com:e,edu:e,net:e,org:e,radio:t,user:i}],fo:e,fr:[1,{asso:e,com:e,gouv:e,nom:e,prd:e,tm:e,avoues:e,cci:e,greta:e,"huissier-justice":e,"fbx-os":t,fbxos:t,"freebox-os":t,freeboxos:t,goupile:t,"123siteweb":t,"on-web":t,"chirurgiens-dentistes-en-france":t,dedibox:t,aeroport:t,avocat:t,chambagri:t,"chirurgiens-dentistes":t,"experts-comptables":t,medecin:t,notaires:t,pharmacien:t,port:t,veterinaire:t,myspreadshop:t,ynh:t}],ga:e,gb:e,gd:[1,{edu:e,gov:e}],ge:[1,{com:e,edu:e,gov:e,net:e,org:e,pvt:e,school:e}],gf:e,gg:[1,{co:e,net:e,org:e,ply:[0,{at:i,d6:t}],botdash:t,kaas:t,stackit:t,panel:[2,{daemon:t}]}],gh:[1,{biz:e,com:e,edu:e,gov:e,mil:e,net:e,org:e}],gi:[1,{com:e,edu:e,gov:e,ltd:e,mod:e,org:e}],gl:[1,{co:e,com:e,edu:e,net:e,org:e}],gm:e,gn:[1,{ac:e,com:e,edu:e,gov:e,net:e,org:e}],gov:e,gp:[1,{asso:e,com:e,edu:e,mobi:e,net:e,org:e}],gq:e,gr:[1,{com:e,edu:e,gov:e,net:e,org:e,barsy:t,simplesite:t}],gs:e,gt:[1,{com:e,edu:e,gob:e,ind:e,mil:e,net:e,org:e}],gu:[1,{com:e,edu:e,gov:e,guam:e,info:e,net:e,org:e,web:e}],gw:[1,{nx:t}],gy:J,hk:[1,{com:e,edu:e,gov:e,idv:e,net:e,org:e,"xn--ciqpn":e,\u4E2A\u4EBA:e,"xn--gmqw5a":e,\u500B\u4EBA:e,"xn--55qx5d":e,\u516C\u53F8:e,"xn--mxtq1m":e,\u653F\u5E9C:e,"xn--lcvr32d":e,\u654E\u80B2:e,"xn--wcvs22d":e,\u6559\u80B2:e,"xn--gmq050i":e,\u7B87\u4EBA:e,"xn--uc0atv":e,\u7D44\u7E54:e,"xn--uc0ay4a":e,\u7D44\u7EC7:e,"xn--od0alg":e,\u7DB2\u7D61:e,"xn--zf0avx":e,\u7DB2\u7EDC:e,"xn--mk0axi":e,\u7EC4\u7E54:e,"xn--tn0ag":e,\u7EC4\u7EC7:e,"xn--od0aq3b":e,\u7F51\u7D61:e,"xn--io0a7i":e,\u7F51\u7EDC:e,inc:t,ltd:t}],hm:e,hn:[1,{com:e,edu:e,gob:e,mil:e,net:e,org:e}],hr:[1,{com:e,from:e,iz:e,name:e,brendly:v}],ht:[1,{adult:e,art:e,asso:e,com:e,coop:e,edu:e,firm:e,gouv:e,info:e,med:e,net:e,org:e,perso:e,pol:e,pro:e,rel:e,shop:e,rt:t}],hu:[1,{2e3:e,agrar:e,bolt:e,casino:e,city:e,co:e,erotica:e,erotika:e,film:e,forum:e,games:e,hotel:e,info:e,ingatlan:e,jogasz:e,konyvelo:e,lakas:e,media:e,news:e,org:e,priv:e,reklam:e,sex:e,shop:e,sport:e,suli:e,szex:e,tm:e,tozsde:e,utazas:e,video:e}],id:[1,{ac:e,biz:e,co:e,desa:e,go:e,kop:e,mil:e,my:e,net:e,or:e,ponpes:e,sch:e,web:e,"xn--9tfky":e,"\u1B29\u1B2E\u1B36":e,e:t,zone:t}],ie:[1,{gov:e,myspreadshop:t}],il:[1,{ac:e,co:[1,{ravpage:t,mytabit:t,tabitorder:t}],gov:e,idf:e,k12:e,muni:e,net:e,org:e}],"xn--4dbrk0ce":[1,{"xn--4dbgdty6c":e,"xn--5dbhl8d":e,"xn--8dbq2a":e,"xn--hebda8b":e}],\u05D9\u05E9\u05E8\u05D0\u05DC:[1,{\u05D0\u05E7\u05D3\u05DE\u05D9\u05D4:e,\u05D9\u05E9\u05D5\u05D1:e,\u05E6\u05D4\u05DC:e,\u05DE\u05DE\u05E9\u05DC:e}],im:[1,{ac:e,co:[1,{ltd:e,plc:e}],com:e,net:e,org:e,tt:e,tv:e}],in:[1,{"5g":e,"6g":e,ac:e,ai:e,am:e,bank:e,bihar:e,biz:e,business:e,ca:e,cn:e,co:e,com:e,coop:e,cs:e,delhi:e,dr:e,edu:e,er:e,fin:e,firm:e,gen:e,gov:e,gujarat:e,ind:e,info:e,int:e,internet:e,io:e,me:e,mil:e,net:e,nic:e,org:e,pg:e,post:e,pro:e,res:e,travel:e,tv:e,uk:e,up:e,us:e,cloudns:t,barsy:t,web:t,indevs:t,supabase:t}],info:[1,{cloudns:t,"dynamic-dns":t,"barrel-of-knowledge":t,"barrell-of-knowledge":t,dyndns:t,"for-our":t,"groks-the":t,"groks-this":t,"here-for-more":t,knowsitall:t,selfip:t,webhop:t,barsy:t,mayfirst:t,mittwald:t,mittwaldserver:t,typo3server:t,dvrcam:t,ilovecollege:t,"no-ip":t,forumz:t,nsupdate:t,dnsupdate:t,"v-info":t}],int:[1,{eu:e}],io:[1,{2038:t,co:e,com:e,edu:e,gov:e,mil:e,net:e,nom:e,org:e,"on-acorn":i,myaddr:t,apigee:t,"b-data":t,beagleboard:t,bitbucket:t,bluebite:t,boxfuse:t,brave:s,browsersafetymark:t,bubble:re,bubbleapps:t,bigv:[0,{uk0:t}],cleverapps:t,cloudbeesusercontent:t,dappnode:[0,{dyndns:t}],darklang:t,definima:t,dedyn:t,icp0:ce,icp1:ce,qzz:t,"fh-muenster":t,gitbook:t,github:t,gitlab:t,lolipop:t,"hasura-app":t,hostyhosting:t,hypernode:t,moonscale:i,beebyte:ye,beebyteapp:[0,{sekd1:t}],jele:t,keenetic:t,kiloapps:t,webthings:t,loginline:t,barsy:t,azurecontainer:i,ngrok:[2,{ap:t,au:t,eu:t,in:t,jp:t,sa:t,us:t}],nodeart:[0,{stage:t}],pantheonsite:t,forgerock:[0,{id:t}],pstmn:[2,{mock:t}],protonet:t,qcx:[2,{sys:i}],qoto:t,vaporcloud:t,myrdbx:t,"rb-hosting":ae,"on-k3s":i,"on-rio":i,readthedocs:t,resindevice:t,resinstaging:[0,{devices:t}],hzc:t,sandcats:t,scrypted:[0,{client:t}],"mo-siemens":t,lair:he,stolos:i,musician:t,utwente:t,edugit:t,telebit:t,thingdust:[0,{dev:de,disrec:de,prod:pe,testing:de}],tickets:t,webflow:t,webflowtest:t,editorx:t,wixstudio:t,basicserver:t,virtualserver:t}],iq:n,ir:[1,{ac:e,co:e,gov:e,id:e,net:e,org:e,sch:e,"xn--mgba3a4f16a":e,\u0627\u06CC\u0631\u0627\u0646:e,"xn--mgba3a4fra":e,\u0627\u064A\u0631\u0627\u0646:e,arvanedge:t,vistablog:t}],is:e,it:[1,{edu:e,gov:e,abr:e,abruzzo:e,"aosta-valley":e,aostavalley:e,bas:e,basilicata:e,cal:e,calabria:e,cam:e,campania:e,"emilia-romagna":e,emiliaromagna:e,emr:e,"friuli-v-giulia":e,"friuli-ve-giulia":e,"friuli-vegiulia":e,"friuli-venezia-giulia":e,"friuli-veneziagiulia":e,"friuli-vgiulia":e,"friuliv-giulia":e,"friulive-giulia":e,friulivegiulia:e,"friulivenezia-giulia":e,friuliveneziagiulia:e,friulivgiulia:e,fvg:e,laz:e,lazio:e,lig:e,liguria:e,lom:e,lombardia:e,lombardy:e,lucania:e,mar:e,marche:e,mol:e,molise:e,piedmont:e,piemonte:e,pmn:e,pug:e,puglia:e,sar:e,sardegna:e,sardinia:e,sic:e,sicilia:e,sicily:e,taa:e,tos:e,toscana:e,"trentin-sud-tirol":e,"xn--trentin-sd-tirol-rzb":e,"trentin-s\xFCd-tirol":e,"trentin-sudtirol":e,"xn--trentin-sdtirol-7vb":e,"trentin-s\xFCdtirol":e,"trentin-sued-tirol":e,"trentin-suedtirol":e,trentino:e,"trentino-a-adige":e,"trentino-aadige":e,"trentino-alto-adige":e,"trentino-altoadige":e,"trentino-s-tirol":e,"trentino-stirol":e,"trentino-sud-tirol":e,"xn--trentino-sd-tirol-c3b":e,"trentino-s\xFCd-tirol":e,"trentino-sudtirol":e,"xn--trentino-sdtirol-szb":e,"trentino-s\xFCdtirol":e,"trentino-sued-tirol":e,"trentino-suedtirol":e,"trentinoa-adige":e,trentinoaadige:e,"trentinoalto-adige":e,trentinoaltoadige:e,"trentinos-tirol":e,trentinostirol:e,"trentinosud-tirol":e,"xn--trentinosd-tirol-rzb":e,"trentinos\xFCd-tirol":e,trentinosudtirol:e,"xn--trentinosdtirol-7vb":e,trentinos\u00FCdtirol:e,"trentinosued-tirol":e,trentinosuedtirol:e,"trentinsud-tirol":e,"xn--trentinsd-tirol-6vb":e,"trentins\xFCd-tirol":e,trentinsudtirol:e,"xn--trentinsdtirol-nsb":e,trentins\u00FCdtirol:e,"trentinsued-tirol":e,trentinsuedtirol:e,tuscany:e,umb:e,umbria:e,"val-d-aosta":e,"val-daosta":e,"vald-aosta":e,valdaosta:e,"valle-aosta":e,"valle-d-aosta":e,"valle-daosta":e,valleaosta:e,"valled-aosta":e,valledaosta:e,"vallee-aoste":e,"xn--valle-aoste-ebb":e,"vall\xE9e-aoste":e,"vallee-d-aoste":e,"xn--valle-d-aoste-ehb":e,"vall\xE9e-d-aoste":e,valleeaoste:e,"xn--valleaoste-e7a":e,vall\u00E9eaoste:e,valleedaoste:e,"xn--valledaoste-ebb":e,vall\u00E9edaoste:e,vao:e,vda:e,ven:e,veneto:e,ag:e,agrigento:e,al:e,alessandria:e,"alto-adige":e,altoadige:e,an:e,ancona:e,"andria-barletta-trani":e,"andria-trani-barletta":e,andriabarlettatrani:e,andriatranibarletta:e,ao:e,aosta:e,aoste:e,ap:e,aq:e,aquila:e,ar:e,arezzo:e,"ascoli-piceno":e,ascolipiceno:e,asti:e,at:e,av:e,avellino:e,ba:e,balsan:e,"balsan-sudtirol":e,"xn--balsan-sdtirol-nsb":e,"balsan-s\xFCdtirol":e,"balsan-suedtirol":e,bari:e,"barletta-trani-andria":e,barlettatraniandria:e,belluno:e,benevento:e,bergamo:e,bg:e,bi:e,biella:e,bl:e,bn:e,bo:e,bologna:e,bolzano:e,"bolzano-altoadige":e,bozen:e,"bozen-sudtirol":e,"xn--bozen-sdtirol-2ob":e,"bozen-s\xFCdtirol":e,"bozen-suedtirol":e,br:e,brescia:e,brindisi:e,bs:e,bt:e,bulsan:e,"bulsan-sudtirol":e,"xn--bulsan-sdtirol-nsb":e,"bulsan-s\xFCdtirol":e,"bulsan-suedtirol":e,bz:e,ca:e,cagliari:e,caltanissetta:e,"campidano-medio":e,campidanomedio:e,campobasso:e,"carbonia-iglesias":e,carboniaiglesias:e,"carrara-massa":e,carraramassa:e,caserta:e,catania:e,catanzaro:e,cb:e,ce:e,"cesena-forli":e,"xn--cesena-forl-mcb":e,"cesena-forl\xEC":e,cesenaforli:e,"xn--cesenaforl-i8a":e,cesenaforl\u00EC:e,ch:e,chieti:e,ci:e,cl:e,cn:e,co:e,como:e,cosenza:e,cr:e,cremona:e,crotone:e,cs:e,ct:e,cuneo:e,cz:e,"dell-ogliastra":e,dellogliastra:e,en:e,enna:e,fc:e,fe:e,fermo:e,ferrara:e,fg:e,fi:e,firenze:e,florence:e,fm:e,foggia:e,"forli-cesena":e,"xn--forl-cesena-fcb":e,"forl\xEC-cesena":e,forlicesena:e,"xn--forlcesena-c8a":e,forl\u00ECcesena:e,fr:e,frosinone:e,ge:e,genoa:e,genova:e,go:e,gorizia:e,gr:e,grosseto:e,"iglesias-carbonia":e,iglesiascarbonia:e,im:e,imperia:e,is:e,isernia:e,kr:e,"la-spezia":e,laquila:e,laspezia:e,latina:e,lc:e,le:e,lecce:e,lecco:e,li:e,livorno:e,lo:e,lodi:e,lt:e,lu:e,lucca:e,macerata:e,mantova:e,"massa-carrara":e,massacarrara:e,matera:e,mb:e,mc:e,me:e,"medio-campidano":e,mediocampidano:e,messina:e,mi:e,milan:e,milano:e,mn:e,mo:e,modena:e,monza:e,"monza-brianza":e,"monza-e-della-brianza":e,monzabrianza:e,monzaebrianza:e,monzaedellabrianza:e,ms:e,mt:e,na:e,naples:e,napoli:e,no:e,novara:e,nu:e,nuoro:e,og:e,ogliastra:e,"olbia-tempio":e,olbiatempio:e,or:e,oristano:e,ot:e,pa:e,padova:e,padua:e,palermo:e,parma:e,pavia:e,pc:e,pd:e,pe:e,perugia:e,"pesaro-urbino":e,pesarourbino:e,pescara:e,pg:e,pi:e,piacenza:e,pisa:e,pistoia:e,pn:e,po:e,pordenone:e,potenza:e,pr:e,prato:e,pt:e,pu:e,pv:e,pz:e,ra:e,ragusa:e,ravenna:e,rc:e,re:e,"reggio-calabria":e,"reggio-emilia":e,reggiocalabria:e,reggioemilia:e,rg:e,ri:e,rieti:e,rimini:e,rm:e,rn:e,ro:e,roma:e,rome:e,rovigo:e,sa:e,salerno:e,sassari:e,savona:e,si:e,siena:e,siracusa:e,so:e,sondrio:e,sp:e,sr:e,ss:e,"xn--sdtirol-n2a":e,s\u00FCdtirol:e,suedtirol:e,sv:e,ta:e,taranto:e,te:e,"tempio-olbia":e,tempioolbia:e,teramo:e,terni:e,tn:e,to:e,torino:e,tp:e,tr:e,"trani-andria-barletta":e,"trani-barletta-andria":e,traniandriabarletta:e,tranibarlettaandria:e,trapani:e,trento:e,treviso:e,trieste:e,ts:e,turin:e,tv:e,ud:e,udine:e,"urbino-pesaro":e,urbinopesaro:e,va:e,varese:e,vb:e,vc:e,ve:e,venezia:e,venice:e,verbania:e,vercelli:e,verona:e,vi:e,"vibo-valentia":e,vibovalentia:e,vicenza:e,viterbo:e,vr:e,vs:e,vt:e,vv:e,ibxos:t,iliadboxos:t,neen:[0,{jc:t}],"123homepage":t,"16-b":t,"32-b":t,"64-b":t,myspreadshop:t,syncloud:t}],je:[1,{co:e,net:e,org:e,of:t}],jm:A,jo:[1,{agri:e,ai:e,com:e,edu:e,eng:e,fm:e,gov:e,mil:e,net:e,org:e,per:e,phd:e,sch:e,tv:e}],jobs:e,jp:[1,{ac:e,ad:e,co:e,ed:e,go:e,gr:e,lg:e,ne:[1,{aseinet:te,gehirn:t,ivory:t,"mail-box":t,mints:t,mokuren:t,opal:t,sakura:t,sumomo:t,topaz:t}],or:e,aichi:[1,{aisai:e,ama:e,anjo:e,asuke:e,chiryu:e,chita:e,fuso:e,gamagori:e,handa:e,hazu:e,hekinan:e,higashiura:e,ichinomiya:e,inazawa:e,inuyama:e,isshiki:e,iwakura:e,kanie:e,kariya:e,kasugai:e,kira:e,kiyosu:e,komaki:e,konan:e,kota:e,mihama:e,miyoshi:e,nishio:e,nisshin:e,obu:e,oguchi:e,oharu:e,okazaki:e,owariasahi:e,seto:e,shikatsu:e,shinshiro:e,shitara:e,tahara:e,takahama:e,tobishima:e,toei:e,togo:e,tokai:e,tokoname:e,toyoake:e,toyohashi:e,toyokawa:e,toyone:e,toyota:e,tsushima:e,yatomi:e}],akita:[1,{akita:e,daisen:e,fujisato:e,gojome:e,hachirogata:e,happou:e,higashinaruse:e,honjo:e,honjyo:e,ikawa:e,kamikoani:e,kamioka:e,katagami:e,kazuno:e,kitaakita:e,kosaka:e,kyowa:e,misato:e,mitane:e,moriyoshi:e,nikaho:e,noshiro:e,odate:e,oga:e,ogata:e,semboku:e,yokote:e,yurihonjo:e}],aomori:[1,{aomori:e,gonohe:e,hachinohe:e,hashikami:e,hiranai:e,hirosaki:e,itayanagi:e,kuroishi:e,misawa:e,mutsu:e,nakadomari:e,noheji:e,oirase:e,owani:e,rokunohe:e,sannohe:e,shichinohe:e,shingo:e,takko:e,towada:e,tsugaru:e,tsuruta:e}],chiba:[1,{abiko:e,asahi:e,chonan:e,chosei:e,choshi:e,chuo:e,funabashi:e,futtsu:e,hanamigawa:e,ichihara:e,ichikawa:e,ichinomiya:e,inzai:e,isumi:e,kamagaya:e,kamogawa:e,kashiwa:e,katori:e,katsuura:e,kimitsu:e,kisarazu:e,kozaki:e,kujukuri:e,kyonan:e,matsudo:e,midori:e,mihama:e,minamiboso:e,mobara:e,mutsuzawa:e,nagara:e,nagareyama:e,narashino:e,narita:e,noda:e,oamishirasato:e,omigawa:e,onjuku:e,otaki:e,sakae:e,sakura:e,shimofusa:e,shirako:e,shiroi:e,shisui:e,sodegaura:e,sosa:e,tako:e,tateyama:e,togane:e,tohnosho:e,tomisato:e,urayasu:e,yachimata:e,yachiyo:e,yokaichiba:e,yokoshibahikari:e,yotsukaido:e}],ehime:[1,{ainan:e,honai:e,ikata:e,imabari:e,iyo:e,kamijima:e,kihoku:e,kumakogen:e,masaki:e,matsuno:e,matsuyama:e,namikata:e,niihama:e,ozu:e,saijo:e,seiyo:e,shikokuchuo:e,tobe:e,toon:e,uchiko:e,uwajima:e,yawatahama:e}],fukui:[1,{echizen:e,eiheiji:e,fukui:e,ikeda:e,katsuyama:e,mihama:e,minamiechizen:e,obama:e,ohi:e,ono:e,sabae:e,sakai:e,takahama:e,tsuruga:e,wakasa:e}],fukuoka:[1,{ashiya:e,buzen:e,chikugo:e,chikuho:e,chikujo:e,chikushino:e,chikuzen:e,chuo:e,dazaifu:e,fukuchi:e,hakata:e,higashi:e,hirokawa:e,hisayama:e,iizuka:e,inatsuki:e,kaho:e,kasuga:e,kasuya:e,kawara:e,keisen:e,koga:e,kurate:e,kurogi:e,kurume:e,minami:e,miyako:e,miyama:e,miyawaka:e,mizumaki:e,munakata:e,nakagawa:e,nakama:e,nishi:e,nogata:e,ogori:e,okagaki:e,okawa:e,oki:e,omuta:e,onga:e,onojo:e,oto:e,saigawa:e,sasaguri:e,shingu:e,shinyoshitomi:e,shonai:e,soeda:e,sue:e,tachiarai:e,tagawa:e,takata:e,toho:e,toyotsu:e,tsuiki:e,ukiha:e,umi:e,usui:e,yamada:e,yame:e,yanagawa:e,yukuhashi:e}],fukushima:[1,{aizubange:e,aizumisato:e,aizuwakamatsu:e,asakawa:e,bandai:e,date:e,fukushima:e,furudono:e,futaba:e,hanawa:e,higashi:e,hirata:e,hirono:e,iitate:e,inawashiro:e,ishikawa:e,iwaki:e,izumizaki:e,kagamiishi:e,kaneyama:e,kawamata:e,kitakata:e,kitashiobara:e,koori:e,koriyama:e,kunimi:e,miharu:e,mishima:e,namie:e,nango:e,nishiaizu:e,nishigo:e,okuma:e,omotego:e,ono:e,otama:e,samegawa:e,shimogo:e,shirakawa:e,showa:e,soma:e,sukagawa:e,taishin:e,tamakawa:e,tanagura:e,tenei:e,yabuki:e,yamato:e,yamatsuri:e,yanaizu:e,yugawa:e}],gifu:[1,{anpachi:e,ena:e,gifu:e,ginan:e,godo:e,gujo:e,hashima:e,hichiso:e,hida:e,higashishirakawa:e,ibigawa:e,ikeda:e,kakamigahara:e,kani:e,kasahara:e,kasamatsu:e,kawaue:e,kitagata:e,mino:e,minokamo:e,mitake:e,mizunami:e,motosu:e,nakatsugawa:e,ogaki:e,sakahogi:e,seki:e,sekigahara:e,shirakawa:e,tajimi:e,takayama:e,tarui:e,toki:e,tomika:e,wanouchi:e,yamagata:e,yaotsu:e,yoro:e}],gunma:[1,{annaka:e,chiyoda:e,fujioka:e,higashiagatsuma:e,isesaki:e,itakura:e,kanna:e,kanra:e,katashina:e,kawaba:e,kiryu:e,kusatsu:e,maebashi:e,meiwa:e,midori:e,minakami:e,naganohara:e,nakanojo:e,nanmoku:e,numata:e,oizumi:e,ora:e,ota:e,shibukawa:e,shimonita:e,shinto:e,showa:e,takasaki:e,takayama:e,tamamura:e,tatebayashi:e,tomioka:e,tsukiyono:e,tsumagoi:e,ueno:e,yoshioka:e}],hiroshima:[1,{asaminami:e,daiwa:e,etajima:e,fuchu:e,fukuyama:e,hatsukaichi:e,higashihiroshima:e,hongo:e,jinsekikogen:e,kaita:e,kui:e,kumano:e,kure:e,mihara:e,miyoshi:e,naka:e,onomichi:e,osakikamijima:e,otake:e,saka:e,sera:e,seranishi:e,shinichi:e,shobara:e,takehara:e}],hokkaido:[1,{abashiri:e,abira:e,aibetsu:e,akabira:e,akkeshi:e,asahikawa:e,ashibetsu:e,ashoro:e,assabu:e,atsuma:e,bibai:e,biei:e,bifuka:e,bihoro:e,biratori:e,chippubetsu:e,chitose:e,date:e,ebetsu:e,embetsu:e,eniwa:e,erimo:e,esan:e,esashi:e,fukagawa:e,fukushima:e,furano:e,furubira:e,haboro:e,hakodate:e,hamatonbetsu:e,hidaka:e,higashikagura:e,higashikawa:e,hiroo:e,hokuryu:e,hokuto:e,honbetsu:e,horokanai:e,horonobe:e,ikeda:e,imakane:e,ishikari:e,iwamizawa:e,iwanai:e,kamifurano:e,kamikawa:e,kamishihoro:e,kamisunagawa:e,kamoenai:e,kayabe:e,kembuchi:e,kikonai:e,kimobetsu:e,kitahiroshima:e,kitami:e,kiyosato:e,koshimizu:e,kunneppu:e,kuriyama:e,kuromatsunai:e,kushiro:e,kutchan:e,kyowa:e,mashike:e,matsumae:e,mikasa:e,minamifurano:e,mombetsu:e,moseushi:e,mukawa:e,muroran:e,naie:e,nakagawa:e,nakasatsunai:e,nakatombetsu:e,nanae:e,nanporo:e,nayoro:e,nemuro:e,niikappu:e,niki:e,nishiokoppe:e,noboribetsu:e,numata:e,obihiro:e,obira:e,oketo:e,okoppe:e,otaru:e,otobe:e,otofuke:e,otoineppu:e,oumu:e,ozora:e,pippu:e,rankoshi:e,rebun:e,rikubetsu:e,rishiri:e,rishirifuji:e,saroma:e,sarufutsu:e,shakotan:e,shari:e,shibecha:e,shibetsu:e,shikabe:e,shikaoi:e,shimamaki:e,shimizu:e,shimokawa:e,shinshinotsu:e,shintoku:e,shiranuka:e,shiraoi:e,shiriuchi:e,sobetsu:e,sunagawa:e,taiki:e,takasu:e,takikawa:e,takinoue:e,teshikaga:e,tobetsu:e,tohma:e,tomakomai:e,tomari:e,toya:e,toyako:e,toyotomi:e,toyoura:e,tsubetsu:e,tsukigata:e,urakawa:e,urausu:e,uryu:e,utashinai:e,wakkanai:e,wassamu:e,yakumo:e,yoichi:e}],hyogo:[1,{aioi:e,akashi:e,ako:e,amagasaki:e,aogaki:e,asago:e,ashiya:e,awaji:e,fukusaki:e,goshiki:e,harima:e,himeji:e,ichikawa:e,inagawa:e,itami:e,kakogawa:e,kamigori:e,kamikawa:e,kasai:e,kasuga:e,kawanishi:e,miki:e,minamiawaji:e,nishinomiya:e,nishiwaki:e,ono:e,sanda:e,sannan:e,sasayama:e,sayo:e,shingu:e,shinonsen:e,shiso:e,sumoto:e,taishi:e,taka:e,takarazuka:e,takasago:e,takino:e,tamba:e,tatsuno:e,toyooka:e,yabu:e,yashiro:e,yoka:e,yokawa:e}],ibaraki:[1,{ami:e,asahi:e,bando:e,chikusei:e,daigo:e,fujishiro:e,hitachi:e,hitachinaka:e,hitachiomiya:e,hitachiota:e,ibaraki:e,ina:e,inashiki:e,itako:e,iwama:e,joso:e,kamisu:e,kasama:e,kashima:e,kasumigaura:e,koga:e,miho:e,mito:e,moriya:e,naka:e,namegata:e,oarai:e,ogawa:e,omitama:e,ryugasaki:e,sakai:e,sakuragawa:e,shimodate:e,shimotsuma:e,shirosato:e,sowa:e,suifu:e,takahagi:e,tamatsukuri:e,tokai:e,tomobe:e,tone:e,toride:e,tsuchiura:e,tsukuba:e,uchihara:e,ushiku:e,yachiyo:e,yamagata:e,yawara:e,yuki:e}],ishikawa:[1,{anamizu:e,hakui:e,hakusan:e,kaga:e,kahoku:e,kanazawa:e,kawakita:e,komatsu:e,nakanoto:e,nanao:e,nomi:e,nonoichi:e,noto:e,shika:e,suzu:e,tsubata:e,tsurugi:e,uchinada:e,wajima:e}],iwate:[1,{fudai:e,fujisawa:e,hanamaki:e,hiraizumi:e,hirono:e,ichinohe:e,ichinoseki:e,iwaizumi:e,iwate:e,joboji:e,kamaishi:e,kanegasaki:e,karumai:e,kawai:e,kitakami:e,kuji:e,kunohe:e,kuzumaki:e,miyako:e,mizusawa:e,morioka:e,ninohe:e,noda:e,ofunato:e,oshu:e,otsuchi:e,rikuzentakata:e,shiwa:e,shizukuishi:e,sumita:e,tanohata:e,tono:e,yahaba:e,yamada:e}],kagawa:[1,{ayagawa:e,higashikagawa:e,kanonji:e,kotohira:e,manno:e,marugame:e,mitoyo:e,naoshima:e,sanuki:e,tadotsu:e,takamatsu:e,tonosho:e,uchinomi:e,utazu:e,zentsuji:e}],kagoshima:[1,{akune:e,amami:e,hioki:e,isa:e,isen:e,izumi:e,kagoshima:e,kanoya:e,kawanabe:e,kinko:e,kouyama:e,makurazaki:e,matsumoto:e,minamitane:e,nakatane:e,nishinoomote:e,satsumasendai:e,soo:e,tarumizu:e,yusui:e}],kanagawa:[1,{aikawa:e,atsugi:e,ayase:e,chigasaki:e,ebina:e,fujisawa:e,hadano:e,hakone:e,hiratsuka:e,isehara:e,kaisei:e,kamakura:e,kiyokawa:e,matsuda:e,minamiashigara:e,miura:e,nakai:e,ninomiya:e,odawara:e,oi:e,oiso:e,sagamihara:e,samukawa:e,tsukui:e,yamakita:e,yamato:e,yokosuka:e,yugawara:e,zama:e,zushi:e}],kochi:[1,{aki:e,geisei:e,hidaka:e,higashitsuno:e,ino:e,kagami:e,kami:e,kitagawa:e,kochi:e,mihara:e,motoyama:e,muroto:e,nahari:e,nakamura:e,nankoku:e,nishitosa:e,niyodogawa:e,ochi:e,okawa:e,otoyo:e,otsuki:e,sakawa:e,sukumo:e,susaki:e,tosa:e,tosashimizu:e,toyo:e,tsuno:e,umaji:e,yasuda:e,yusuhara:e}],kumamoto:[1,{amakusa:e,arao:e,aso:e,choyo:e,gyokuto:e,kamiamakusa:e,kikuchi:e,kumamoto:e,mashiki:e,mifune:e,minamata:e,minamioguni:e,nagasu:e,nishihara:e,oguni:e,ozu:e,sumoto:e,takamori:e,uki:e,uto:e,yamaga:e,yamato:e,yatsushiro:e}],kyoto:[1,{ayabe:e,fukuchiyama:e,higashiyama:e,ide:e,ine:e,joyo:e,kameoka:e,kamo:e,kita:e,kizu:e,kumiyama:e,kyotamba:e,kyotanabe:e,kyotango:e,maizuru:e,minami:e,minamiyamashiro:e,miyazu:e,muko:e,nagaokakyo:e,nakagyo:e,nantan:e,oyamazaki:e,sakyo:e,seika:e,tanabe:e,uji:e,ujitawara:e,wazuka:e,yamashina:e,yawata:e}],mie:[1,{asahi:e,inabe:e,ise:e,kameyama:e,kawagoe:e,kiho:e,kisosaki:e,kiwa:e,komono:e,kumano:e,kuwana:e,matsusaka:e,meiwa:e,mihama:e,minamiise:e,misugi:e,miyama:e,nabari:e,shima:e,suzuka:e,tado:e,taiki:e,taki:e,tamaki:e,toba:e,tsu:e,udono:e,ureshino:e,watarai:e,yokkaichi:e}],miyagi:[1,{furukawa:e,higashimatsushima:e,ishinomaki:e,iwanuma:e,kakuda:e,kami:e,kawasaki:e,marumori:e,matsushima:e,minamisanriku:e,misato:e,murata:e,natori:e,ogawara:e,ohira:e,onagawa:e,osaki:e,rifu:e,semine:e,shibata:e,shichikashuku:e,shikama:e,shiogama:e,shiroishi:e,tagajo:e,taiwa:e,tome:e,tomiya:e,wakuya:e,watari:e,yamamoto:e,zao:e}],miyazaki:[1,{aya:e,ebino:e,gokase:e,hyuga:e,kadogawa:e,kawaminami:e,kijo:e,kitagawa:e,kitakata:e,kitaura:e,kobayashi:e,kunitomi:e,kushima:e,mimata:e,miyakonojo:e,miyazaki:e,morotsuka:e,nichinan:e,nishimera:e,nobeoka:e,saito:e,shiiba:e,shintomi:e,takaharu:e,takanabe:e,takazaki:e,tsuno:e}],nagano:[1,{achi:e,agematsu:e,anan:e,aoki:e,asahi:e,azumino:e,chikuhoku:e,chikuma:e,chino:e,fujimi:e,hakuba:e,hara:e,hiraya:e,iida:e,iijima:e,iiyama:e,iizuna:e,ikeda:e,ikusaka:e,ina:e,karuizawa:e,kawakami:e,kiso:e,kisofukushima:e,kitaaiki:e,komagane:e,komoro:e,matsukawa:e,matsumoto:e,miasa:e,minamiaiki:e,minamimaki:e,minamiminowa:e,minowa:e,miyada:e,miyota:e,mochizuki:e,nagano:e,nagawa:e,nagiso:e,nakagawa:e,nakano:e,nozawaonsen:e,obuse:e,ogawa:e,okaya:e,omachi:e,omi:e,ookuwa:e,ooshika:e,otaki:e,otari:e,sakae:e,sakaki:e,saku:e,sakuho:e,shimosuwa:e,shinanomachi:e,shiojiri:e,suwa:e,suzaka:e,takagi:e,takamori:e,takayama:e,tateshina:e,tatsuno:e,togakushi:e,togura:e,tomi:e,ueda:e,wada:e,yamagata:e,yamanouchi:e,yasaka:e,yasuoka:e}],nagasaki:[1,{chijiwa:e,futsu:e,goto:e,hasami:e,hirado:e,iki:e,isahaya:e,kawatana:e,kuchinotsu:e,matsuura:e,nagasaki:e,obama:e,omura:e,oseto:e,saikai:e,sasebo:e,seihi:e,shimabara:e,shinkamigoto:e,togitsu:e,tsushima:e,unzen:e}],nara:[1,{ando:e,gose:e,heguri:e,higashiyoshino:e,ikaruga:e,ikoma:e,kamikitayama:e,kanmaki:e,kashiba:e,kashihara:e,katsuragi:e,kawai:e,kawakami:e,kawanishi:e,koryo:e,kurotaki:e,mitsue:e,miyake:e,nara:e,nosegawa:e,oji:e,ouda:e,oyodo:e,sakurai:e,sango:e,shimoichi:e,shimokitayama:e,shinjo:e,soni:e,takatori:e,tawaramoto:e,tenkawa:e,tenri:e,uda:e,yamatokoriyama:e,yamatotakada:e,yamazoe:e,yoshino:e}],niigata:[1,{aga:e,agano:e,gosen:e,itoigawa:e,izumozaki:e,joetsu:e,kamo:e,kariwa:e,kashiwazaki:e,minamiuonuma:e,mitsuke:e,muika:e,murakami:e,myoko:e,nagaoka:e,niigata:e,ojiya:e,omi:e,sado:e,sanjo:e,seiro:e,seirou:e,sekikawa:e,shibata:e,tagami:e,tainai:e,tochio:e,tokamachi:e,tsubame:e,tsunan:e,uonuma:e,yahiko:e,yoita:e,yuzawa:e}],oita:[1,{beppu:e,bungoono:e,bungotakada:e,hasama:e,hiji:e,himeshima:e,hita:e,kamitsue:e,kokonoe:e,kuju:e,kunisaki:e,kusu:e,oita:e,saiki:e,taketa:e,tsukumi:e,usa:e,usuki:e,yufu:e}],okayama:[1,{akaiwa:e,asakuchi:e,bizen:e,hayashima:e,ibara:e,kagamino:e,kasaoka:e,kibichuo:e,kumenan:e,kurashiki:e,maniwa:e,misaki:e,nagi:e,niimi:e,nishiawakura:e,okayama:e,satosho:e,setouchi:e,shinjo:e,shoo:e,soja:e,takahashi:e,tamano:e,tsuyama:e,wake:e,yakage:e}],okinawa:[1,{aguni:e,ginowan:e,ginoza:e,gushikami:e,haebaru:e,higashi:e,hirara:e,iheya:e,ishigaki:e,ishikawa:e,itoman:e,izena:e,kadena:e,kin:e,kitadaito:e,kitanakagusuku:e,kumejima:e,kunigami:e,minamidaito:e,motobu:e,nago:e,naha:e,nakagusuku:e,nakijin:e,nanjo:e,nishihara:e,ogimi:e,okinawa:e,onna:e,shimoji:e,taketomi:e,tarama:e,tokashiki:e,tomigusuku:e,tonaki:e,urasoe:e,uruma:e,yaese:e,yomitan:e,yonabaru:e,yonaguni:e,zamami:e}],osaka:[1,{abeno:e,chihayaakasaka:e,chuo:e,daito:e,fujiidera:e,habikino:e,hannan:e,higashiosaka:e,higashisumiyoshi:e,higashiyodogawa:e,hirakata:e,ibaraki:e,ikeda:e,izumi:e,izumiotsu:e,izumisano:e,kadoma:e,kaizuka:e,kanan:e,kashiwara:e,katano:e,kawachinagano:e,kishiwada:e,kita:e,kumatori:e,matsubara:e,minato:e,minoh:e,misaki:e,moriguchi:e,neyagawa:e,nishi:e,nose:e,osakasayama:e,sakai:e,sayama:e,sennan:e,settsu:e,shijonawate:e,shimamoto:e,suita:e,tadaoka:e,taishi:e,tajiri:e,takaishi:e,takatsuki:e,tondabayashi:e,toyonaka:e,toyono:e,yao:e}],saga:[1,{ariake:e,arita:e,fukudomi:e,genkai:e,hamatama:e,hizen:e,imari:e,kamimine:e,kanzaki:e,karatsu:e,kashima:e,kitagata:e,kitahata:e,kiyama:e,kouhoku:e,kyuragi:e,nishiarita:e,ogi:e,omachi:e,ouchi:e,saga:e,shiroishi:e,taku:e,tara:e,tosu:e,yoshinogari:e}],saitama:[1,{arakawa:e,asaka:e,chichibu:e,fujimi:e,fujimino:e,fukaya:e,hanno:e,hanyu:e,hasuda:e,hatogaya:e,hatoyama:e,hidaka:e,higashichichibu:e,higashimatsuyama:e,honjo:e,ina:e,iruma:e,iwatsuki:e,kamiizumi:e,kamikawa:e,kamisato:e,kasukabe:e,kawagoe:e,kawaguchi:e,kawajima:e,kazo:e,kitamoto:e,koshigaya:e,kounosu:e,kuki:e,kumagaya:e,matsubushi:e,minano:e,misato:e,miyashiro:e,miyoshi:e,moroyama:e,nagatoro:e,namegawa:e,niiza:e,ogano:e,ogawa:e,ogose:e,okegawa:e,omiya:e,otaki:e,ranzan:e,ryokami:e,saitama:e,sakado:e,satte:e,sayama:e,shiki:e,shiraoka:e,soka:e,sugito:e,toda:e,tokigawa:e,tokorozawa:e,tsurugashima:e,urawa:e,warabi:e,yashio:e,yokoze:e,yono:e,yorii:e,yoshida:e,yoshikawa:e,yoshimi:e}],shiga:[1,{aisho:e,gamo:e,higashiomi:e,hikone:e,koka:e,konan:e,kosei:e,koto:e,kusatsu:e,maibara:e,moriyama:e,nagahama:e,nishiazai:e,notogawa:e,omihachiman:e,otsu:e,ritto:e,ryuoh:e,takashima:e,takatsuki:e,torahime:e,toyosato:e,yasu:e}],shimane:[1,{akagi:e,ama:e,gotsu:e,hamada:e,higashiizumo:e,hikawa:e,hikimi:e,izumo:e,kakinoki:e,masuda:e,matsue:e,misato:e,nishinoshima:e,ohda:e,okinoshima:e,okuizumo:e,shimane:e,tamayu:e,tsuwano:e,unnan:e,yakumo:e,yasugi:e,yatsuka:e}],shizuoka:[1,{arai:e,atami:e,fuji:e,fujieda:e,fujikawa:e,fujinomiya:e,fukuroi:e,gotemba:e,haibara:e,hamamatsu:e,higashiizu:e,ito:e,iwata:e,izu:e,izunokuni:e,kakegawa:e,kannami:e,kawanehon:e,kawazu:e,kikugawa:e,kosai:e,makinohara:e,matsuzaki:e,minamiizu:e,mishima:e,morimachi:e,nishiizu:e,numazu:e,omaezaki:e,shimada:e,shimizu:e,shimoda:e,shizuoka:e,susono:e,yaizu:e,yoshida:e}],tochigi:[1,{ashikaga:e,bato:e,haga:e,ichikai:e,iwafune:e,kaminokawa:e,kanuma:e,karasuyama:e,kuroiso:e,mashiko:e,mibu:e,moka:e,motegi:e,nasu:e,nasushiobara:e,nikko:e,nishikata:e,nogi:e,ohira:e,ohtawara:e,oyama:e,sakura:e,sano:e,shimotsuke:e,shioya:e,takanezawa:e,tochigi:e,tsuga:e,ujiie:e,utsunomiya:e,yaita:e}],tokushima:[1,{aizumi:e,anan:e,ichiba:e,itano:e,kainan:e,komatsushima:e,matsushige:e,mima:e,minami:e,miyoshi:e,mugi:e,nakagawa:e,naruto:e,sanagochi:e,shishikui:e,tokushima:e,wajiki:e}],tokyo:[1,{adachi:e,akiruno:e,akishima:e,aogashima:e,arakawa:e,bunkyo:e,chiyoda:e,chofu:e,chuo:e,edogawa:e,fuchu:e,fussa:e,hachijo:e,hachioji:e,hamura:e,higashikurume:e,higashimurayama:e,higashiyamato:e,hino:e,hinode:e,hinohara:e,inagi:e,itabashi:e,katsushika:e,kita:e,kiyose:e,kodaira:e,koganei:e,kokubunji:e,komae:e,koto:e,kouzushima:e,kunitachi:e,machida:e,meguro:e,minato:e,mitaka:e,mizuho:e,musashimurayama:e,musashino:e,nakano:e,nerima:e,ogasawara:e,okutama:e,ome:e,oshima:e,ota:e,setagaya:e,shibuya:e,shinagawa:e,shinjuku:e,suginami:e,sumida:e,tachikawa:e,taito:e,tama:e,toshima:e}],tottori:[1,{chizu:e,hino:e,kawahara:e,koge:e,kotoura:e,misasa:e,nanbu:e,nichinan:e,sakaiminato:e,tottori:e,wakasa:e,yazu:e,yonago:e}],toyama:[1,{asahi:e,fuchu:e,fukumitsu:e,funahashi:e,himi:e,imizu:e,inami:e,johana:e,kamiichi:e,kurobe:e,nakaniikawa:e,namerikawa:e,nanto:e,nyuzen:e,oyabe:e,taira:e,takaoka:e,tateyama:e,toga:e,tonami:e,toyama:e,unazuki:e,uozu:e,yamada:e}],wakayama:[1,{arida:e,aridagawa:e,gobo:e,hashimoto:e,hidaka:e,hirogawa:e,inami:e,iwade:e,kainan:e,kamitonda:e,katsuragi:e,kimino:e,kinokawa:e,kitayama:e,koya:e,koza:e,kozagawa:e,kudoyama:e,kushimoto:e,mihama:e,misato:e,nachikatsuura:e,shingu:e,shirahama:e,taiji:e,tanabe:e,wakayama:e,yuasa:e,yura:e}],yamagata:[1,{asahi:e,funagata:e,higashine:e,iide:e,kahoku:e,kaminoyama:e,kaneyama:e,kawanishi:e,mamurogawa:e,mikawa:e,murayama:e,nagai:e,nakayama:e,nanyo:e,nishikawa:e,obanazawa:e,oe:e,oguni:e,ohkura:e,oishida:e,sagae:e,sakata:e,sakegawa:e,shinjo:e,shirataka:e,shonai:e,takahata:e,tendo:e,tozawa:e,tsuruoka:e,yamagata:e,yamanobe:e,yonezawa:e,yuza:e}],yamaguchi:[1,{abu:e,hagi:e,hikari:e,hofu:e,iwakuni:e,kudamatsu:e,mitou:e,nagato:e,oshima:e,shimonoseki:e,shunan:e,tabuse:e,tokuyama:e,toyota:e,ube:e,yuu:e}],yamanashi:[1,{chuo:e,doshi:e,fuefuki:e,fujikawa:e,fujikawaguchiko:e,fujiyoshida:e,hayakawa:e,hokuto:e,ichikawamisato:e,kai:e,kofu:e,koshu:e,kosuge:e,"minami-alps":e,minobu:e,nakamichi:e,nanbu:e,narusawa:e,nirasaki:e,nishikatsura:e,oshino:e,otsuki:e,showa:e,tabayama:e,tsuru:e,uenohara:e,yamanakako:e,yamanashi:e}],"xn--ehqz56n":e,\u4E09\u91CD:e,"xn--1lqs03n":e,\u4EAC\u90FD:e,"xn--qqqt11m":e,\u4F50\u8CC0:e,"xn--f6qx53a":e,\u5175\u5EAB:e,"xn--djrs72d6uy":e,\u5317\u6D77\u9053:e,"xn--mkru45i":e,\u5343\u8449:e,"xn--0trq7p7nn":e,\u548C\u6B4C\u5C71:e,"xn--5js045d":e,\u57FC\u7389:e,"xn--kbrq7o":e,\u5927\u5206:e,"xn--pssu33l":e,\u5927\u962A:e,"xn--ntsq17g":e,\u5948\u826F:e,"xn--uisz3g":e,\u5BAE\u57CE:e,"xn--6btw5a":e,\u5BAE\u5D0E:e,"xn--1ctwo":e,\u5BCC\u5C71:e,"xn--6orx2r":e,\u5C71\u53E3:e,"xn--rht61e":e,\u5C71\u5F62:e,"xn--rht27z":e,\u5C71\u68A8:e,"xn--nit225k":e,\u5C90\u961C:e,"xn--rht3d":e,\u5CA1\u5C71:e,"xn--djty4k":e,\u5CA9\u624B:e,"xn--klty5x":e,\u5CF6\u6839:e,"xn--kltx9a":e,\u5E83\u5CF6:e,"xn--kltp7d":e,\u5FB3\u5CF6:e,"xn--c3s14m":e,\u611B\u5A9B:e,"xn--vgu402c":e,\u611B\u77E5:e,"xn--efvn9s":e,\u65B0\u6F5F:e,"xn--1lqs71d":e,\u6771\u4EAC:e,"xn--4pvxs":e,\u6803\u6728:e,"xn--uuwu58a":e,\u6C96\u7E04:e,"xn--zbx025d":e,\u6ECB\u8CC0:e,"xn--8pvr4u":e,\u718A\u672C:e,"xn--5rtp49c":e,\u77F3\u5DDD:e,"xn--ntso0iqx3a":e,\u795E\u5948\u5DDD:e,"xn--elqq16h":e,\u798F\u4E95:e,"xn--4it168d":e,\u798F\u5CA1:e,"xn--klt787d":e,\u798F\u5CF6:e,"xn--rny31h":e,\u79CB\u7530:e,"xn--7t0a264c":e,\u7FA4\u99AC:e,"xn--uist22h":e,\u8328\u57CE:e,"xn--8ltr62k":e,\u9577\u5D0E:e,"xn--2m4a15e":e,\u9577\u91CE:e,"xn--32vp30h":e,\u9752\u68EE:e,"xn--4it797k":e,\u9759\u5CA1:e,"xn--5rtq34k":e,\u9999\u5DDD:e,"xn--k7yn95e":e,\u9AD8\u77E5:e,"xn--tor131o":e,\u9CE5\u53D6:e,"xn--d5qv7z876c":e,\u9E7F\u5150\u5CF6:e,kawasaki:A,kitakyushu:A,kobe:A,nagoya:A,sapporo:A,sendai:A,yokohama:A,buyshop:t,fashionstore:t,handcrafted:t,kawaiishop:t,supersale:t,theshop:t,"0am":t,"0g0":t,"0j0":t,"0t0":t,mydns:t,pgw:t,wjg:t,usercontent:t,angry:t,babyblue:t,babymilk:t,backdrop:t,bambina:t,bitter:t,blush:t,boo:t,boy:t,boyfriend:t,but:t,candypop:t,capoo:t,catfood:t,cheap:t,chicappa:t,chillout:t,chips:t,chowder:t,chu:t,ciao:t,cocotte:t,coolblog:t,cranky:t,cutegirl:t,daa:t,deca:t,deci:t,digick:t,egoism:t,fakefur:t,fem:t,flier:t,floppy:t,fool:t,frenchkiss:t,girlfriend:t,girly:t,gloomy:t,gonna:t,greater:t,hacca:t,heavy:t,her:t,hiho:t,hippy:t,holy:t,hungry:t,icurus:t,itigo:t,jellybean:t,kikirara:t,kill:t,kilo:t,kuron:t,littlestar:t,lolipopmc:t,lolitapunk:t,lomo:t,lovepop:t,lovesick:t,main:t,mods:t,mond:t,mongolian:t,moo:t,namaste:t,nikita:t,nobushi:t,noor:t,oops:t,parallel:t,parasite:t,pecori:t,peewee:t,penne:t,pepper:t,perma:t,pigboat:t,pinoko:t,punyu:t,pupu:t,pussycat:t,pya:t,raindrop:t,readymade:t,sadist:t,schoolbus:t,secret:t,staba:t,stripper:t,sub:t,sunnyday:t,thick:t,tonkotsu:t,under:t,upper:t,velvet:t,verse:t,versus:t,vivian:t,watson:t,weblike:t,whitesnow:t,zombie:t,hateblo:t,hatenablog:t,hatenadiary:t,"2-d":t,bona:t,crap:t,daynight:t,eek:t,flop:t,halfmoon:t,jeez:t,matrix:t,mimoza:t,netgamers:t,nyanta:t,o0o0:t,rdy:t,rgr:t,rulez:t,sakurastorage:[0,{isk01:Ce,isk02:Ce}],saloon:t,sblo:t,skr:t,tank:t,"uh-oh":t,undo:t,webaccel:[0,{rs:t,user:t}],websozai:t,xii:t}],ke:[1,{ac:e,co:e,go:e,info:e,me:e,mobi:e,ne:e,or:e,sc:e}],kg:[1,{com:e,edu:e,gov:e,mil:e,net:e,org:e,us:t,xx:t,ae:t}],kh:A,ki:$e,km:[1,{ass:e,com:e,edu:e,gov:e,mil:e,nom:e,org:e,prd:e,tm:e,asso:e,coop:e,gouv:e,medecin:e,notaires:e,pharmaciens:e,presse:e,veterinaire:e}],kn:[1,{edu:e,gov:e,net:e,org:e}],kp:[1,{com:e,edu:e,gov:e,org:e,rep:e,tra:e}],kr:[1,{ac:e,ai:e,co:e,es:e,go:e,hs:e,io:e,it:e,kg:e,me:e,mil:e,ms:e,ne:e,or:e,pe:e,re:e,sc:e,busan:e,chungbuk:e,chungnam:e,daegu:e,daejeon:e,gangwon:e,gwangju:e,gyeongbuk:e,gyeonggi:e,gyeongnam:e,incheon:e,jeju:e,jeonbuk:e,jeonnam:e,seoul:e,ulsan:e,c01:t,"eliv-api":t,"eliv-cdn":t,"eliv-dns":t,mmv:t,vki:t}],kw:[1,{com:e,edu:e,emb:e,gov:e,ind:e,net:e,org:e}],ky:M,kz:[1,{com:e,edu:e,gov:e,mil:e,net:e,org:e,jcloud:t}],la:[1,{com:e,edu:e,gov:e,info:e,int:e,net:e,org:e,per:e,bnr:t}],lb:r,lc:[1,{co:e,com:e,edu:e,gov:e,net:e,org:e,oy:t}],li:e,lk:[1,{ac:e,assn:e,com:e,edu:e,gov:e,grp:e,hotel:e,int:e,ltd:e,net:e,ngo:e,org:e,sch:e,soc:e,web:e}],lr:r,ls:[1,{ac:e,biz:e,co:e,edu:e,gov:e,info:e,net:e,org:e,sc:e}],lt:u,lu:[1,{"123website":t}],lv:[1,{asn:e,com:e,conf:e,edu:e,gov:e,id:e,mil:e,net:e,org:e}],ly:[1,{com:e,edu:e,gov:e,id:e,med:e,net:e,org:e,plc:e,sch:e}],ma:[1,{ac:e,co:e,gov:e,net:e,org:e,press:e}],mc:[1,{asso:e,tm:e}],md:[1,{ir:t}],me:[1,{ac:e,co:e,edu:e,gov:e,its:e,net:e,org:e,priv:e,c66:t,craft:t,edgestack:t,filegear:t,"filegear-sg":t,lohmus:t,barsy:t,mcdir:t,brasilia:t,ddns:t,dnsfor:t,hopto:t,loginto:t,noip:t,webhop:t,soundcast:t,tcp4:t,vp4:t,diskstation:t,dscloud:t,i234:t,myds:t,synology:t,transip:ae,nohost:t}],mg:[1,{co:e,com:e,edu:e,gov:e,mil:e,nom:e,org:e,prd:e}],mh:e,mil:e,mk:[1,{com:e,edu:e,gov:e,inf:e,name:e,net:e,org:e}],ml:[1,{ac:e,art:e,asso:e,com:e,edu:e,gouv:e,gov:e,info:e,inst:e,net:e,org:e,pr:e,presse:e}],mm:A,mn:[1,{edu:e,gov:e,org:e,nyc:t}],mo:r,mobi:[1,{barsy:t,dscloud:t}],mp:[1,{ju:t}],mq:e,mr:u,ms:[1,{com:e,edu:e,gov:e,net:e,org:e,minisite:t}],mt:M,mu:[1,{ac:e,co:e,com:e,gov:e,net:e,or:e,org:e}],museum:e,mv:[1,{aero:e,biz:e,com:e,coop:e,edu:e,gov:e,info:e,int:e,mil:e,museum:e,name:e,net:e,org:e,pro:e}],mw:[1,{ac:e,biz:e,co:e,com:e,coop:e,edu:e,gov:e,int:e,net:e,org:e}],mx:[1,{com:e,edu:e,gob:e,net:e,org:e}],my:[1,{biz:e,com:e,edu:e,gov:e,mil:e,name:e,net:e,org:e}],mz:[1,{ac:e,adv:e,co:e,edu:e,gov:e,mil:e,net:e,org:e}],na:[1,{alt:e,co:e,com:e,gov:e,net:e,org:e}],name:[1,{her:Te,his:Te,ispmanager:t,keenetic:t}],nc:[1,{asso:e,nom:e}],ne:e,net:[1,{adobeaemcloud:t,"adobeio-static":t,adobeioruntime:t,akadns:t,akamai:t,"akamai-staging":t,akamaiedge:t,"akamaiedge-staging":t,akamaihd:t,"akamaihd-staging":t,akamaiorigin:t,"akamaiorigin-staging":t,akamaized:t,"akamaized-staging":t,edgekey:t,"edgekey-staging":t,edgesuite:t,"edgesuite-staging":t,alwaysdata:t,myamaze:t,cloudfront:t,appudo:t,"atlassian-dev":[0,{prod:re}],myfritz:t,shopselect:t,blackbaudcdn:t,boomla:t,bplaced:t,square7:t,cdn77:[0,{r:t}],"cdn77-ssl":t,gb:t,hu:t,jp:t,se:t,uk:t,clickrising:t,"ddns-ip":t,"dns-cloud":t,"dns-dynamic":t,cloudaccess:t,cloudflare:[2,{cdn:t}],cloudflareanycast:re,cloudflarecn:re,cloudflareglobal:re,ctfcloud:t,"feste-ip":t,"knx-server":t,"static-access":t,cryptonomic:i,dattolocal:t,mydatto:t,debian:t,definima:t,deno:t,icp:i,de5:t,"at-band-camp":t,blogdns:t,"broke-it":t,buyshouses:t,dnsalias:t,dnsdojo:t,"does-it":t,dontexist:t,dynalias:t,dynathome:t,endofinternet:t,"from-az":t,"from-co":t,"from-la":t,"from-ny":t,"gets-it":t,"ham-radio-op":t,homeftp:t,homeip:t,homelinux:t,homeunix:t,"in-the-band":t,"is-a-chef":t,"is-a-geek":t,"isa-geek":t,"kicks-ass":t,"office-on-the":t,podzone:t,"scrapper-site":t,selfip:t,"sells-it":t,servebbs:t,serveftp:t,thruhere:t,webhop:t,casacam:t,dynu:t,dynuddns:t,mysynology:t,opik:t,spryt:t,dynv6:t,twmail:t,ru:t,channelsdvr:[2,{u:t}],fastly:[0,{freetls:t,map:t,prod:[0,{a:t,global:t}],ssl:[0,{a:t,b:t,global:t}]}],fastlylb:[2,{map:t}],"keyword-on":t,"live-on":t,"server-on":t,"cdn-edges":t,heteml:t,cloudfunctions:t,"grafana-dev":t,iobb:t,moonscale:t,"in-dsl":t,"in-vpn":t,oninferno:t,botdash:t,"apps-1and1":t,ipifony:t,cloudjiffy:[2,{"fra1-de":t,"west1-us":t}],elastx:[0,{"jls-sto1":t,"jls-sto2":t,"jls-sto3":t}],massivegrid:[0,{paas:[0,{"fr-1":t,"lon-1":t,"lon-2":t,"ny-1":t,"ny-2":t,"sg-1":t}]}],saveincloud:[0,{jelastic:t,"nordeste-idc":t}],scaleforce:F,kinghost:t,uni5:t,krellian:t,ggff:t,localto:i,barsy:t,luyani:t,memset:t,"azure-api":t,"azure-mobile":t,azureedge:t,azurefd:t,azurestaticapps:[2,{1:t,2:t,3:t,4:t,5:t,6:t,7:t,centralus:t,eastasia:t,eastus2:t,westeurope:t,westus2:t}],azurewebsites:t,cloudapp:t,trafficmanager:t,usgovcloudapi:Ue,usgovcloudapp:t,usgovtrafficmanager:t,windows:Ue,mynetname:[0,{sn:t}],routingthecloud:t,bounceme:t,ddns:t,"eating-organic":t,mydissent:t,myeffect:t,mymediapc:t,mypsx:t,mysecuritycamera:t,nhlfan:t,"no-ip":t,pgafan:t,privatizehealthinsurance:t,redirectme:t,serveblog:t,serveminecraft:t,sytes:t,dnsup:t,hicam:t,"now-dns":t,ownip:t,vpndns:t,cloudycluster:t,ovh:[0,{hosting:i,webpaas:i}],rackmaze:t,myradweb:t,in:t,"subsc-pay":t,squares:t,schokokeks:t,"firewall-gateway":t,seidat:t,senseering:t,siteleaf:t,mafelo:t,myspreadshop:t,"vps-host":[2,{jelastic:[0,{atl:t,njs:t,ric:t}]}],srcf:[0,{soc:t,user:t}],supabase:t,dsmynas:t,familyds:t,ts:[2,{c:i}],torproject:[2,{pages:t}],tunnelmole:t,vusercontent:t,"reserve-online":t,localcert:t,"community-pro":t,meinforum:t,yandexcloud:[2,{storage:t,website:t}],za:t,zabc:t}],nf:[1,{arts:e,com:e,firm:e,info:e,net:e,other:e,per:e,rec:e,store:e,web:e}],ng:[1,{com:e,edu:e,gov:e,i:e,mil:e,mobi:e,name:e,net:e,org:e,sch:e,biz:[2,{co:t,dl:t,go:t,lg:t,on:t}],col:t,firm:t,gen:t,ltd:t,ngo:t,plc:t}],ni:[1,{ac:e,biz:e,co:e,com:e,edu:e,gob:e,in:e,info:e,int:e,mil:e,net:e,nom:e,org:e,web:e}],nl:[1,{co:t,"hosting-cluster":t,gov:t,khplay:t,"123website":t,myspreadshop:t,transurl:i,cistron:t,demon:t}],no:[1,{fhs:e,folkebibl:e,fylkesbibl:e,idrett:e,museum:e,priv:e,vgs:e,dep:e,herad:e,kommune:e,mil:e,stat:e,aa:Me,ah:Me,bu:Me,fm:Me,hl:Me,hm:Me,"jan-mayen":Me,mr:Me,nl:Me,nt:Me,of:Me,ol:Me,oslo:Me,rl:Me,sf:Me,st:Me,svalbard:Me,tm:Me,tr:Me,va:Me,vf:Me,akrehamn:e,"xn--krehamn-dxa":e,\u00E5krehamn:e,algard:e,"xn--lgrd-poac":e,\u00E5lg\u00E5rd:e,arna:e,bronnoysund:e,"xn--brnnysund-m8ac":e,br\u00F8nn\u00F8ysund:e,brumunddal:e,bryne:e,drobak:e,"xn--drbak-wua":e,dr\u00F8bak:e,egersund:e,fetsund:e,floro:e,"xn--flor-jra":e,flor\u00F8:e,fredrikstad:e,hokksund:e,honefoss:e,"xn--hnefoss-q1a":e,h\u00F8nefoss:e,jessheim:e,jorpeland:e,"xn--jrpeland-54a":e,j\u00F8rpeland:e,kirkenes:e,kopervik:e,krokstadelva:e,langevag:e,"xn--langevg-jxa":e,langev\u00E5g:e,leirvik:e,mjondalen:e,"xn--mjndalen-64a":e,mj\u00F8ndalen:e,"mo-i-rana":e,mosjoen:e,"xn--mosjen-eya":e,mosj\u00F8en:e,nesoddtangen:e,orkanger:e,osoyro:e,"xn--osyro-wua":e,os\u00F8yro:e,raholt:e,"xn--rholt-mra":e,r\u00E5holt:e,sandnessjoen:e,"xn--sandnessjen-ogb":e,sandnessj\u00F8en:e,skedsmokorset:e,slattum:e,spjelkavik:e,stathelle:e,stavern:e,stjordalshalsen:e,"xn--stjrdalshalsen-sqb":e,stj\u00F8rdalshalsen:e,tananger:e,tranby:e,vossevangen:e,aarborte:e,aejrie:e,afjord:e,"xn--fjord-lra":e,\u00E5fjord:e,agdenes:e,akershus:Ge,aknoluokta:e,"xn--koluokta-7ya57h":e,\u00E1k\u014Boluokta:e,al:e,"xn--l-1fa":e,\u00E5l:e,alaheadju:e,"xn--laheadju-7ya":e,\u00E1laheadju:e,alesund:e,"xn--lesund-hua":e,\u00E5lesund:e,alstahaug:e,alta:e,"xn--lt-liac":e,\u00E1lt\u00E1:e,alvdal:e,amli:e,"xn--mli-tla":e,\u00E5mli:e,amot:e,"xn--mot-tla":e,\u00E5mot:e,andasuolo:e,andebu:e,andoy:e,"xn--andy-ira":e,and\u00F8y:e,ardal:e,"xn--rdal-poa":e,\u00E5rdal:e,aremark:e,arendal:e,"xn--s-1fa":e,\u00E5s:e,aseral:e,"xn--seral-lra":e,\u00E5seral:e,asker:e,askim:e,askoy:e,"xn--asky-ira":e,ask\u00F8y:e,askvoll:e,asnes:e,"xn--snes-poa":e,\u00E5snes:e,audnedaln:e,aukra:e,aure:e,aurland:e,"aurskog-holand":e,"xn--aurskog-hland-jnb":e,"aurskog-h\xF8land":e,austevoll:e,austrheim:e,averoy:e,"xn--avery-yua":e,aver\u00F8y:e,badaddja:e,"xn--bdddj-mrabd":e,b\u00E5d\u00E5ddj\u00E5:e,"xn--brum-voa":e,b\u00E6rum:e,bahcavuotna:e,"xn--bhcavuotna-s4a":e,b\u00E1hcavuotna:e,bahccavuotna:e,"xn--bhccavuotna-k7a":e,b\u00E1hccavuotna:e,baidar:e,"xn--bidr-5nac":e,b\u00E1id\u00E1r:e,bajddar:e,"xn--bjddar-pta":e,b\u00E1jddar:e,balat:e,"xn--blt-elab":e,b\u00E1l\u00E1t:e,balestrand:e,ballangen:e,balsfjord:e,bamble:e,bardu:e,barum:e,batsfjord:e,"xn--btsfjord-9za":e,b\u00E5tsfjord:e,bearalvahki:e,"xn--bearalvhki-y4a":e,bearalv\u00E1hki:e,beardu:e,beiarn:e,berg:e,bergen:e,berlevag:e,"xn--berlevg-jxa":e,berlev\u00E5g:e,bievat:e,"xn--bievt-0qa":e,biev\u00E1t:e,bindal:e,birkenes:e,bjerkreim:e,bjugn:e,bodo:e,"xn--bod-2na":e,bod\u00F8:e,bokn:e,bomlo:e,"xn--bmlo-gra":e,b\u00F8mlo:e,bremanger:e,bronnoy:e,"xn--brnny-wuac":e,br\u00F8nn\u00F8y:e,budejju:e,buskerud:Ge,bygland:e,bykle:e,cahcesuolo:e,"xn--hcesuolo-7ya35b":e,\u010D\u00E1hcesuolo:e,davvenjarga:e,"xn--davvenjrga-y4a":e,davvenj\u00E1rga:e,davvesiida:e,deatnu:e,dielddanuorri:e,divtasvuodna:e,divttasvuotna:e,donna:e,"xn--dnna-gra":e,d\u00F8nna:e,dovre:e,drammen:e,drangedal:e,dyroy:e,"xn--dyry-ira":e,dyr\u00F8y:e,eid:e,eidfjord:e,eidsberg:e,eidskog:e,eidsvoll:e,eigersund:e,elverum:e,enebakk:e,engerdal:e,etne:e,etnedal:e,evenassi:e,"xn--eveni-0qa01ga":e,even\u00E1\u0161\u0161i:e,evenes:e,"evje-og-hornnes":e,farsund:e,fauske:e,fedje:e,fet:e,finnoy:e,"xn--finny-yua":e,finn\u00F8y:e,fitjar:e,fjaler:e,fjell:e,fla:e,"xn--fl-zia":e,fl\u00E5:e,flakstad:e,flatanger:e,flekkefjord:e,flesberg:e,flora:e,folldal:e,forde:e,"xn--frde-gra":e,f\u00F8rde:e,forsand:e,fosnes:e,"xn--frna-woa":e,fr\u00E6na:e,frana:e,frei:e,frogn:e,froland:e,frosta:e,froya:e,"xn--frya-hra":e,fr\u00F8ya:e,fuoisku:e,fuossko:e,fusa:e,fyresdal:e,gaivuotna:e,"xn--givuotna-8ya":e,g\u00E1ivuotna:e,galsa:e,"xn--gls-elac":e,g\u00E1ls\u00E1:e,gamvik:e,gangaviika:e,"xn--ggaviika-8ya47h":e,g\u00E1\u014Bgaviika:e,gaular:e,gausdal:e,giehtavuoatna:e,gildeskal:e,"xn--gildeskl-g0a":e,gildesk\u00E5l:e,giske:e,gjemnes:e,gjerdrum:e,gjerstad:e,gjesdal:e,gjovik:e,"xn--gjvik-wua":e,gj\u00F8vik:e,gloppen:e,gol:e,gran:e,grane:e,granvin:e,gratangen:e,grimstad:e,grong:e,grue:e,gulen:e,guovdageaidnu:e,ha:e,"xn--h-2fa":e,h\u00E5:e,habmer:e,"xn--hbmer-xqa":e,h\u00E1bmer:e,hadsel:e,"xn--hgebostad-g3a":e,h\u00E6gebostad:e,hagebostad:e,halden:e,halsa:e,hamar:e,hamaroy:e,hammarfeasta:e,"xn--hmmrfeasta-s4ac":e,h\u00E1mm\u00E1rfeasta:e,hammerfest:e,hapmir:e,"xn--hpmir-xqa":e,h\u00E1pmir:e,haram:e,hareid:e,harstad:e,hasvik:e,hattfjelldal:e,haugesund:e,hedmark:[0,{os:e,valer:e,"xn--vler-qoa":e,v\u00E5ler:e}],hemne:e,hemnes:e,hemsedal:e,hitra:e,hjartdal:e,hjelmeland:e,hobol:e,"xn--hobl-ira":e,hob\u00F8l:e,hof:e,hol:e,hole:e,holmestrand:e,holtalen:e,"xn--holtlen-hxa":e,holt\u00E5len:e,hordaland:[0,{os:e}],hornindal:e,horten:e,hoyanger:e,"xn--hyanger-q1a":e,h\u00F8yanger:e,hoylandet:e,"xn--hylandet-54a":e,h\u00F8ylandet:e,hurdal:e,hurum:e,hvaler:e,hyllestad:e,ibestad:e,inderoy:e,"xn--indery-fya":e,inder\u00F8y:e,iveland:e,ivgu:e,jevnaker:e,jolster:e,"xn--jlster-bya":e,j\u00F8lster:e,jondal:e,kafjord:e,"xn--kfjord-iua":e,k\u00E5fjord:e,karasjohka:e,"xn--krjohka-hwab49j":e,k\u00E1r\u00E1\u0161johka:e,karasjok:e,karlsoy:e,karmoy:e,"xn--karmy-yua":e,karm\u00F8y:e,kautokeino:e,klabu:e,"xn--klbu-woa":e,kl\u00E6bu:e,klepp:e,kongsberg:e,kongsvinger:e,kraanghke:e,"xn--kranghke-b0a":e,kr\u00E5anghke:e,kragero:e,"xn--krager-gya":e,krager\u00F8:e,kristiansand:e,kristiansund:e,krodsherad:e,"xn--krdsherad-m8a":e,kr\u00F8dsherad:e,"xn--kvfjord-nxa":e,kv\u00E6fjord:e,"xn--kvnangen-k0a":e,kv\u00E6nangen:e,kvafjord:e,kvalsund:e,kvam:e,kvanangen:e,kvinesdal:e,kvinnherad:e,kviteseid:e,kvitsoy:e,"xn--kvitsy-fya":e,kvits\u00F8y:e,laakesvuemie:e,"xn--lrdal-sra":e,l\u00E6rdal:e,lahppi:e,"xn--lhppi-xqa":e,l\u00E1hppi:e,lardal:e,larvik:e,lavagis:e,lavangen:e,leangaviika:e,"xn--leagaviika-52b":e,lea\u014Bgaviika:e,lebesby:e,leikanger:e,leirfjord:e,leka:e,leksvik:e,lenvik:e,lerdal:e,lesja:e,levanger:e,lier:e,lierne:e,lillehammer:e,lillesand:e,lindas:e,"xn--linds-pra":e,lind\u00E5s:e,lindesnes:e,loabat:e,"xn--loabt-0qa":e,loab\u00E1t:e,lodingen:e,"xn--ldingen-q1a":e,l\u00F8dingen:e,lom:e,loppa:e,lorenskog:e,"xn--lrenskog-54a":e,l\u00F8renskog:e,loten:e,"xn--lten-gra":e,l\u00F8ten:e,lund:e,lunner:e,luroy:e,"xn--lury-ira":e,lur\u00F8y:e,luster:e,lyngdal:e,lyngen:e,malatvuopmi:e,"xn--mlatvuopmi-s4a":e,m\u00E1latvuopmi:e,malselv:e,"xn--mlselv-iua":e,m\u00E5lselv:e,malvik:e,mandal:e,marker:e,marnardal:e,masfjorden:e,masoy:e,"xn--msy-ula0h":e,m\u00E5s\u00F8y:e,"matta-varjjat":e,"xn--mtta-vrjjat-k7af":e,"m\xE1tta-v\xE1rjjat":e,meland:e,meldal:e,melhus:e,meloy:e,"xn--mely-ira":e,mel\u00F8y:e,meraker:e,"xn--merker-kua":e,mer\u00E5ker:e,midsund:e,"midtre-gauldal":e,moareke:e,"xn--moreke-jua":e,mo\u00E5reke:e,modalen:e,modum:e,molde:e,"more-og-romsdal":[0,{heroy:e,sande:e}],"xn--mre-og-romsdal-qqb":[0,{"xn--hery-ira":e,sande:e}],"m\xF8re-og-romsdal":[0,{her\u00F8y:e,sande:e}],moskenes:e,moss:e,muosat:e,"xn--muost-0qa":e,muos\u00E1t:e,naamesjevuemie:e,"xn--nmesjevuemie-tcba":e,n\u00E5\u00E5mesjevuemie:e,"xn--nry-yla5g":e,n\u00E6r\u00F8y:e,namdalseid:e,namsos:e,namsskogan:e,nannestad:e,naroy:e,narviika:e,narvik:e,naustdal:e,navuotna:e,"xn--nvuotna-hwa":e,n\u00E1vuotna:e,"nedre-eiker":e,nesna:e,nesodden:e,nesseby:e,nesset:e,nissedal:e,nittedal:e,"nord-aurdal":e,"nord-fron":e,"nord-odal":e,norddal:e,nordkapp:e,nordland:[0,{bo:e,"xn--b-5ga":e,b\u00F8:e,heroy:e,"xn--hery-ira":e,her\u00F8y:e}],"nordre-land":e,nordreisa:e,"nore-og-uvdal":e,notodden:e,notteroy:e,"xn--nttery-byae":e,n\u00F8tter\u00F8y:e,odda:e,oksnes:e,"xn--ksnes-uua":e,\u00F8ksnes:e,omasvuotna:e,oppdal:e,oppegard:e,"xn--oppegrd-ixa":e,oppeg\u00E5rd:e,orkdal:e,orland:e,"xn--rland-uua":e,\u00F8rland:e,orskog:e,"xn--rskog-uua":e,\u00F8rskog:e,orsta:e,"xn--rsta-fra":e,\u00F8rsta:e,osen:e,osteroy:e,"xn--ostery-fya":e,oster\u00F8y:e,ostfold:[0,{valer:e}],"xn--stfold-9xa":[0,{"xn--vler-qoa":e}],\u00F8stfold:[0,{v\u00E5ler:e}],"ostre-toten":e,"xn--stre-toten-zcb":e,"\xF8stre-toten":e,overhalla:e,"ovre-eiker":e,"xn--vre-eiker-k8a":e,"\xF8vre-eiker":e,oyer:e,"xn--yer-zna":e,\u00F8yer:e,oygarden:e,"xn--ygarden-p1a":e,\u00F8ygarden:e,"oystre-slidre":e,"xn--ystre-slidre-ujb":e,"\xF8ystre-slidre":e,porsanger:e,porsangu:e,"xn--porsgu-sta26f":e,pors\u00E1\u014Bgu:e,porsgrunn:e,rade:e,"xn--rde-ula":e,r\u00E5de:e,radoy:e,"xn--rady-ira":e,rad\u00F8y:e,"xn--rlingen-mxa":e,r\u00E6lingen:e,rahkkeravju:e,"xn--rhkkervju-01af":e,r\u00E1hkker\u00E1vju:e,raisa:e,"xn--risa-5na":e,r\u00E1isa:e,rakkestad:e,ralingen:e,rana:e,randaberg:e,rauma:e,rendalen:e,rennebu:e,rennesoy:e,"xn--rennesy-v1a":e,rennes\u00F8y:e,rindal:e,ringebu:e,ringerike:e,ringsaker:e,risor:e,"xn--risr-ira":e,ris\u00F8r:e,rissa:e,roan:e,rodoy:e,"xn--rdy-0nab":e,r\u00F8d\u00F8y:e,rollag:e,romsa:e,romskog:e,"xn--rmskog-bya":e,r\u00F8mskog:e,roros:e,"xn--rros-gra":e,r\u00F8ros:e,rost:e,"xn--rst-0na":e,r\u00F8st:e,royken:e,"xn--ryken-vua":e,r\u00F8yken:e,royrvik:e,"xn--ryrvik-bya":e,r\u00F8yrvik:e,ruovat:e,rygge:e,salangen:e,salat:e,"xn--slat-5na":e,s\u00E1lat:e,"xn--slt-elab":e,s\u00E1l\u00E1t:e,saltdal:e,samnanger:e,sandefjord:e,sandnes:e,sandoy:e,"xn--sandy-yua":e,sand\u00F8y:e,sarpsborg:e,sauda:e,sauherad:e,sel:e,selbu:e,selje:e,seljord:e,siellak:e,sigdal:e,siljan:e,sirdal:e,skanit:e,"xn--sknit-yqa":e,sk\u00E1nit:e,skanland:e,"xn--sknland-fxa":e,sk\u00E5nland:e,skaun:e,skedsmo:e,ski:e,skien:e,skierva:e,"xn--skierv-uta":e,skierv\u00E1:e,skiptvet:e,skjak:e,"xn--skjk-soa":e,skj\u00E5k:e,skjervoy:e,"xn--skjervy-v1a":e,skjerv\u00F8y:e,skodje:e,smola:e,"xn--smla-hra":e,sm\u00F8la:e,snaase:e,"xn--snase-nra":e,sn\u00E5ase:e,snasa:e,"xn--snsa-roa":e,sn\u00E5sa:e,snillfjord:e,snoasa:e,sogndal:e,sogne:e,"xn--sgne-gra":e,s\u00F8gne:e,sokndal:e,sola:e,solund:e,somna:e,"xn--smna-gra":e,s\u00F8mna:e,"sondre-land":e,"xn--sndre-land-0cb":e,"s\xF8ndre-land":e,songdalen:e,"sor-aurdal":e,"xn--sr-aurdal-l8a":e,"s\xF8r-aurdal":e,"sor-fron":e,"xn--sr-fron-q1a":e,"s\xF8r-fron":e,"sor-odal":e,"xn--sr-odal-q1a":e,"s\xF8r-odal":e,"sor-varanger":e,"xn--sr-varanger-ggb":e,"s\xF8r-varanger":e,sorfold:e,"xn--srfold-bya":e,s\u00F8rfold:e,sorreisa:e,"xn--srreisa-q1a":e,s\u00F8rreisa:e,sortland:e,sorum:e,"xn--srum-gra":e,s\u00F8rum:e,spydeberg:e,stange:e,stavanger:e,steigen:e,steinkjer:e,stjordal:e,"xn--stjrdal-s1a":e,stj\u00F8rdal:e,stokke:e,"stor-elvdal":e,stord:e,stordal:e,storfjord:e,strand:e,stranda:e,stryn:e,sula:e,suldal:e,sund:e,sunndal:e,surnadal:e,sveio:e,svelvik:e,sykkylven:e,tana:e,telemark:[0,{bo:e,"xn--b-5ga":e,b\u00F8:e}],time:e,tingvoll:e,tinn:e,tjeldsund:e,tjome:e,"xn--tjme-hra":e,tj\u00F8me:e,tokke:e,tolga:e,tonsberg:e,"xn--tnsberg-q1a":e,t\u00F8nsberg:e,torsken:e,"xn--trna-woa":e,tr\u00E6na:e,trana:e,tranoy:e,"xn--trany-yua":e,tran\u00F8y:e,troandin:e,trogstad:e,"xn--trgstad-r1a":e,tr\u00F8gstad:e,tromsa:e,tromso:e,"xn--troms-zua":e,troms\u00F8:e,trondheim:e,trysil:e,tvedestrand:e,tydal:e,tynset:e,tysfjord:e,tysnes:e,"xn--tysvr-vra":e,tysv\u00E6r:e,tysvar:e,ullensaker:e,ullensvang:e,ulvik:e,unjarga:e,"xn--unjrga-rta":e,unj\u00E1rga:e,utsira:e,vaapste:e,vadso:e,"xn--vads-jra":e,vads\u00F8:e,"xn--vry-yla5g":e,v\u00E6r\u00F8y:e,vaga:e,"xn--vg-yiab":e,v\u00E5g\u00E5:e,vagan:e,"xn--vgan-qoa":e,v\u00E5gan:e,vagsoy:e,"xn--vgsy-qoa0j":e,v\u00E5gs\u00F8y:e,vaksdal:e,valle:e,vang:e,vanylven:e,vardo:e,"xn--vard-jra":e,vard\u00F8:e,varggat:e,"xn--vrggt-xqad":e,v\u00E1rgg\u00E1t:e,varoy:e,vefsn:e,vega:e,vegarshei:e,"xn--vegrshei-c0a":e,veg\u00E5rshei:e,vennesla:e,verdal:e,verran:e,vestby:e,vestfold:[0,{sande:e}],vestnes:e,"vestre-slidre":e,"vestre-toten":e,vestvagoy:e,"xn--vestvgy-ixa6o":e,vestv\u00E5g\u00F8y:e,vevelstad:e,vik:e,vikna:e,vindafjord:e,voagat:e,volda:e,voss:e,co:t,"123hjemmeside":t,myspreadshop:t}],np:A,nr:$e,nu:[1,{merseine:t,mine:t,shacknet:t,enterprisecloud:t}],nz:[1,{ac:e,co:e,cri:e,geek:e,gen:e,govt:e,health:e,iwi:e,kiwi:e,maori:e,"xn--mori-qsa":e,m\u0101ori:e,mil:e,net:e,org:e,parliament:e,school:e,cloudns:t}],om:[1,{co:e,com:e,edu:e,gov:e,med:e,museum:e,net:e,org:e,pro:e}],onion:e,org:[1,{altervista:t,pimienta:t,poivron:t,potager:t,sweetpepper:t,cdn77:[0,{c:t,rsc:t}],"cdn77-secure":[0,{origin:[0,{ssl:t}]}],ae:t,cloudns:t,"ip-dynamic":t,ddnss:t,dpdns:t,duckdns:t,tunk:t,blogdns:t,blogsite:t,boldlygoingnowhere:t,dnsalias:t,dnsdojo:t,doesntexist:t,dontexist:t,doomdns:t,dvrdns:t,dynalias:t,dyndns:[2,{go:t,home:t}],endofinternet:t,endoftheinternet:t,"from-me":t,"game-host":t,gotdns:t,"hobby-site":t,homedns:t,homeftp:t,homelinux:t,homeunix:t,"is-a-bruinsfan":t,"is-a-candidate":t,"is-a-celticsfan":t,"is-a-chef":t,"is-a-geek":t,"is-a-knight":t,"is-a-linux-user":t,"is-a-patsfan":t,"is-a-soxfan":t,"is-found":t,"is-lost":t,"is-saved":t,"is-very-bad":t,"is-very-evil":t,"is-very-good":t,"is-very-nice":t,"is-very-sweet":t,"isa-geek":t,"kicks-ass":t,misconfused:t,podzone:t,readmyblog:t,selfip:t,sellsyourhome:t,servebbs:t,serveftp:t,servegame:t,"stuff-4-sale":t,webhop:t,accesscam:t,camdvr:t,freeddns:t,mywire:t,roxa:t,webredirect:t,twmail:t,eu:[2,{al:t,asso:t,at:t,au:t,be:t,bg:t,ca:t,cd:t,ch:t,cn:t,cy:t,cz:t,de:t,dk:t,edu:t,ee:t,es:t,fi:t,fr:t,gr:t,hr:t,hu:t,ie:t,il:t,in:t,int:t,is:t,it:t,jp:t,kr:t,lt:t,lu:t,lv:t,me:t,mk:t,mt:t,my:t,net:t,ng:t,nl:t,no:t,nz:t,pl:t,pt:t,ro:t,ru:t,se:t,si:t,sk:t,tr:t,uk:t,us:t}],fedorainfracloud:t,fedorapeople:t,fedoraproject:[0,{cloud:t,os:B,stg:[0,{os:B}]}],freedesktop:t,hatenadiary:t,hepforge:t,"in-dsl":t,"in-vpn":t,js:t,barsy:t,mayfirst:t,routingthecloud:t,bmoattachments:t,"cable-modem":t,collegefan:t,couchpotatofries:t,hopto:t,mlbfan:t,myftp:t,mysecuritycamera:t,nflfan:t,"no-ip":t,"read-books":t,ufcfan:t,zapto:t,dynserv:t,"now-dns":t,"is-local":t,httpbin:t,pubtls:t,jpn:t,"my-firewall":t,myfirewall:t,spdns:t,"small-web":t,dsmynas:t,familyds:t,teckids:Ce,tuxfamily:t,hk:t,us:t,toolforge:t,wmcloud:[2,{beta:t}],wmflabs:t,za:t}],pa:[1,{abo:e,ac:e,com:e,edu:e,gob:e,ing:e,med:e,net:e,nom:e,org:e,sld:e}],pe:[1,{com:e,edu:e,gob:e,mil:e,net:e,nom:e,org:e}],pf:[1,{com:e,edu:e,org:e}],pg:A,ph:[1,{com:e,edu:e,gov:e,i:e,mil:e,net:e,ngo:e,org:e,cloudns:t}],pk:[1,{ac:e,biz:e,com:e,edu:e,fam:e,gkp:e,gob:e,gog:e,gok:e,gop:e,gos:e,gov:e,net:e,org:e,web:e}],pl:[1,{com:e,net:e,org:e,agro:e,aid:e,atm:e,auto:e,biz:e,edu:e,gmina:e,gsm:e,info:e,mail:e,media:e,miasta:e,mil:e,nieruchomosci:e,nom:e,pc:e,powiat:e,priv:e,realestate:e,rel:e,sex:e,shop:e,sklep:e,sos:e,szkola:e,targi:e,tm:e,tourism:e,travel:e,turystyka:e,gov:[1,{ap:e,griw:e,ic:e,is:e,kmpsp:e,konsulat:e,kppsp:e,kwp:e,kwpsp:e,mup:e,mw:e,oia:e,oirm:e,oke:e,oow:e,oschr:e,oum:e,pa:e,pinb:e,piw:e,po:e,pr:e,psp:e,psse:e,pup:e,rzgw:e,sa:e,sdn:e,sko:e,so:e,sr:e,starostwo:e,ug:e,ugim:e,um:e,umig:e,upow:e,uppo:e,us:e,uw:e,uzs:e,wif:e,wiih:e,winb:e,wios:e,witd:e,wiw:e,wkz:e,wsa:e,wskr:e,wsse:e,wuoz:e,wzmiuw:e,zp:e,zpisdn:e}],augustow:e,"babia-gora":e,bedzin:e,beskidy:e,bialowieza:e,bialystok:e,bielawa:e,bieszczady:e,boleslawiec:e,bydgoszcz:e,bytom:e,cieszyn:e,czeladz:e,czest:e,dlugoleka:e,elblag:e,elk:e,glogow:e,gniezno:e,gorlice:e,grajewo:e,ilawa:e,jaworzno:e,"jelenia-gora":e,jgora:e,kalisz:e,karpacz:e,kartuzy:e,kaszuby:e,katowice:e,"kazimierz-dolny":e,kepno:e,ketrzyn:e,klodzko:e,kobierzyce:e,kolobrzeg:e,konin:e,konskowola:e,kutno:e,lapy:e,lebork:e,legnica:e,lezajsk:e,limanowa:e,lomza:e,lowicz:e,lubin:e,lukow:e,malbork:e,malopolska:e,mazowsze:e,mazury:e,mielec:e,mielno:e,mragowo:e,naklo:e,nowaruda:e,nysa:e,olawa:e,olecko:e,olkusz:e,olsztyn:e,opoczno:e,opole:e,ostroda:e,ostroleka:e,ostrowiec:e,ostrowwlkp:e,pila:e,pisz:e,podhale:e,podlasie:e,polkowice:e,pomorskie:e,pomorze:e,prochowice:e,pruszkow:e,przeworsk:e,pulawy:e,radom:e,"rawa-maz":e,rybnik:e,rzeszow:e,sanok:e,sejny:e,skoczow:e,slask:e,slupsk:e,sosnowiec:e,"stalowa-wola":e,starachowice:e,stargard:e,suwalki:e,swidnica:e,swiebodzin:e,swinoujscie:e,szczecin:e,szczytno:e,tarnobrzeg:e,tgory:e,turek:e,tychy:e,ustka:e,walbrzych:e,warmia:e,warszawa:e,waw:e,wegrow:e,wielun:e,wlocl:e,wloclawek:e,wodzislaw:e,wolomin:e,wroclaw:e,zachpomor:e,zagan:e,zarow:e,zgora:e,zgorzelec:e,art:t,gliwice:t,krakow:t,poznan:t,wroc:t,zakopane:t,beep:t,"ecommerce-shop":t,cfolks:t,dfirma:t,dkonto:t,you2:t,shoparena:t,homesklep:t,sdscloud:t,unicloud:t,lodz:t,pabianice:t,plock:t,sieradz:t,skierniewice:t,zgierz:t,krasnik:t,leczna:t,lubartow:t,lublin:t,poniatowa:t,swidnik:t,co:t,torun:t,simplesite:t,myspreadshop:t,gda:t,gdansk:t,gdynia:t,med:t,sopot:t,bielsko:t}],pm:[1,{own:t,name:t}],pn:[1,{co:e,edu:e,gov:e,net:e,org:e}],post:e,pr:[1,{biz:e,com:e,edu:e,gov:e,info:e,isla:e,name:e,net:e,org:e,pro:e,ac:e,est:e,prof:e}],pro:[1,{aaa:e,aca:e,acct:e,avocat:e,bar:e,cpa:e,eng:e,jur:e,law:e,med:e,recht:e,cloudns:t,keenetic:t,barsy:t,ngrok:t}],ps:[1,{com:e,edu:e,gov:e,net:e,org:e,plo:e,sec:e}],pt:[1,{com:e,edu:e,gov:e,int:e,net:e,nome:e,org:e,publ:e,"123paginaweb":t}],pw:[1,{gov:e,cloudns:t,x443:t}],py:[1,{com:e,coop:e,edu:e,gov:e,mil:e,net:e,org:e}],qa:[1,{com:e,edu:e,gov:e,mil:e,name:e,net:e,org:e,sch:e}],re:[1,{asso:e,com:e,netlib:t,can:t}],ro:[1,{arts:e,com:e,firm:e,info:e,nom:e,nt:e,org:e,rec:e,store:e,tm:e,www:e,co:t,shop:t,barsy:t}],rs:[1,{ac:e,co:e,edu:e,gov:e,in:e,org:e,brendly:v,barsy:t,ox:t}],ru:[1,{ac:t,edu:t,gov:t,int:t,mil:t,eurodir:t,adygeya:t,bashkiria:t,bir:t,cbg:t,com:t,dagestan:t,grozny:t,kalmykia:t,kustanai:t,marine:t,mordovia:t,msk:t,mytis:t,nalchik:t,nov:t,pyatigorsk:t,spb:t,vladikavkaz:t,vladimir:t,na4u:t,mircloud:t,myjino:[2,{hosting:i,landing:i,spectrum:i,vps:i}],cldmail:[0,{hb:t}],mcdir:[2,{vps:t}],mcpre:t,net:t,org:t,pp:t,ras:t}],rw:[1,{ac:e,co:e,coop:e,gov:e,mil:e,net:e,org:e}],sa:[1,{com:e,edu:e,gov:e,med:e,net:e,org:e,pub:e,sch:e}],sb:r,sc:r,sd:[1,{com:e,edu:e,gov:e,info:e,med:e,net:e,org:e,tv:e}],se:[1,{a:e,ac:e,b:e,bd:e,brand:e,c:e,d:e,e,f:e,fh:e,fhsk:e,fhv:e,g:e,h:e,i:e,k:e,komforb:e,kommunalforbund:e,komvux:e,l:e,lanbib:e,m:e,n:e,naturbruksgymn:e,o:e,org:e,p:e,parti:e,pp:e,press:e,r:e,s:e,t:e,tm:e,u:e,w:e,x:e,y:e,z:e,com:t,iopsys:t,"123minsida":t,itcouldbewor:t,myspreadshop:t}],sg:[1,{com:e,edu:e,gov:e,net:e,org:e,enscaled:t}],sh:[1,{com:e,gov:e,mil:e,net:e,org:e,hashbang:t,botda:t,lovable:t,platform:[0,{ent:t,eu:t,us:t}],teleport:t,now:t}],si:[1,{f5:t,gitapp:t,gitpage:t}],sj:e,sk:[1,{org:e}],sl:r,sm:e,sn:[1,{art:e,com:e,edu:e,gouv:e,org:e,univ:e}],so:[1,{com:e,edu:e,gov:e,me:e,net:e,org:e,surveys:t}],sr:e,ss:[1,{biz:e,co:e,com:e,edu:e,gov:e,me:e,net:e,org:e,sch:e}],st:[1,{co:e,com:e,consulado:e,edu:e,embaixada:e,mil:e,net:e,org:e,principe:e,saotome:e,store:e,helioho:t,cn:i,kirara:t,noho:t}],su:[1,{abkhazia:t,adygeya:t,aktyubinsk:t,arkhangelsk:t,armenia:t,ashgabad:t,azerbaijan:t,balashov:t,bashkiria:t,bryansk:t,bukhara:t,chimkent:t,dagestan:t,"east-kazakhstan":t,exnet:t,georgia:t,grozny:t,ivanovo:t,jambyl:t,kalmykia:t,kaluga:t,karacol:t,karaganda:t,karelia:t,khakassia:t,krasnodar:t,kurgan:t,kustanai:t,lenug:t,mangyshlak:t,mordovia:t,msk:t,murmansk:t,nalchik:t,navoi:t,"north-kazakhstan":t,nov:t,obninsk:t,penza:t,pokrovsk:t,sochi:t,spb:t,tashkent:t,termez:t,togliatti:t,troitsk:t,tselinograd:t,tula:t,tuva:t,vladikavkaz:t,vladimir:t,vologda:t}],sv:[1,{com:e,edu:e,gob:e,org:e,red:e}],sx:u,sy:n,sz:[1,{ac:e,co:e,org:e}],tc:e,td:e,tel:e,tf:[1,{sch:t}],tg:e,th:[1,{ac:e,co:e,go:e,in:e,mi:e,net:e,or:e,online:t,shop:t}],tj:[1,{ac:e,biz:e,co:e,com:e,edu:e,go:e,gov:e,int:e,mil:e,name:e,net:e,nic:e,org:e,test:e,web:e}],tk:e,tl:u,tm:[1,{co:e,com:e,edu:e,gov:e,mil:e,net:e,nom:e,org:e}],tn:[1,{com:e,ens:e,fin:e,gov:e,ind:e,info:e,intl:e,mincom:e,nat:e,net:e,org:e,perso:e,tourism:e,orangecloud:t}],to:[1,{611:t,com:e,edu:e,gov:e,mil:e,net:e,org:e,oya:t,x0:t,quickconnect:T,vpnplus:t,nett:t}],tr:[1,{av:e,bbs:e,bel:e,biz:e,com:e,dr:e,edu:e,gen:e,gov:e,info:e,k12:e,kep:e,mil:e,name:e,net:e,org:e,pol:e,tel:e,tsk:e,tv:e,web:e,nc:u}],tt:[1,{biz:e,co:e,com:e,edu:e,gov:e,info:e,mil:e,name:e,net:e,org:e,pro:e}],tv:[1,{"better-than":t,dyndns:t,"on-the-web":t,"worse-than":t,from:t,sakura:t}],tw:[1,{club:e,com:[1,{mymailer:t}],ebiz:e,edu:e,game:e,gov:e,idv:e,mil:e,net:e,org:e,url:t,mydns:t}],tz:[1,{ac:e,co:e,go:e,hotel:e,info:e,me:e,mil:e,mobi:e,ne:e,or:e,sc:e,tv:e}],ua:[1,{com:e,edu:e,gov:e,in:e,net:e,org:e,cherkassy:e,cherkasy:e,chernigov:e,chernihiv:e,chernivtsi:e,chernovtsy:e,ck:e,cn:e,cr:e,crimea:e,cv:e,dn:e,dnepropetrovsk:e,dnipropetrovsk:e,donetsk:e,dp:e,if:e,"ivano-frankivsk":e,kh:e,kharkiv:e,kharkov:e,kherson:e,khmelnitskiy:e,khmelnytskyi:e,kiev:e,kirovograd:e,km:e,kr:e,kropyvnytskyi:e,krym:e,ks:e,kv:e,kyiv:e,lg:e,lt:e,lugansk:e,luhansk:e,lutsk:e,lv:e,lviv:e,mk:e,mykolaiv:e,nikolaev:e,od:e,odesa:e,odessa:e,pl:e,poltava:e,rivne:e,rovno:e,rv:e,sb:e,sebastopol:e,sevastopol:e,sm:e,sumy:e,te:e,ternopil:e,uz:e,uzhgorod:e,uzhhorod:e,vinnica:e,vinnytsia:e,vn:e,volyn:e,yalta:e,zakarpattia:e,zaporizhzhe:e,zaporizhzhia:e,zhitomir:e,zhytomyr:e,zp:e,zt:e,cc:t,inf:t,ltd:t,cx:t,biz:t,co:t,pp:t,v:t}],ug:[1,{ac:e,co:e,com:e,edu:e,go:e,gov:e,mil:e,ne:e,or:e,org:e,sc:e,us:e}],uk:[1,{ac:e,co:[1,{bytemark:[0,{dh:t,vm:t}],layershift:F,barsy:t,barsyonline:t,retrosnub:pe,"nh-serv":t,"no-ip":t,adimo:t,myspreadshop:t}],gov:[1,{api:t,campaign:t,service:t}],ltd:e,me:e,net:e,nhs:e,org:[1,{glug:t,lug:t,lugs:t,affinitylottery:t,raffleentry:t,weeklylottery:t}],plc:e,police:e,sch:A,conn:t,copro:t,hosp:t,"independent-commission":t,"independent-inquest":t,"independent-inquiry":t,"independent-panel":t,"independent-review":t,"public-inquiry":t,"royal-commission":t,pymnt:t,barsy:t,nimsite:t,oraclegovcloudapps:i}],us:[1,{dni:e,isa:e,nsn:e,ak:Be,al:Be,ar:Be,as:Be,az:Be,ca:Be,co:Be,ct:Be,dc:Be,de:It,fl:Be,ga:Be,gu:Be,hi:Ze,ia:Be,id:Be,il:Be,in:Be,ks:Be,ky:Be,la:Be,ma:[1,{k12:[1,{chtr:e,paroch:e,pvt:e}],cc:e,lib:e}],md:Be,me:Be,mi:[1,{k12:e,cc:e,lib:e,"ann-arbor":e,cog:e,dst:e,eaton:e,gen:e,mus:e,tec:e,washtenaw:e}],mn:Be,mo:Be,ms:[1,{k12:e,cc:e}],mt:Be,nc:Be,nd:Ze,ne:Be,nh:Be,nj:Be,nm:Be,nv:Be,ny:Be,oh:Be,ok:Be,or:Be,pa:Be,pr:Be,ri:Ze,sc:Be,sd:Ze,tn:Be,tx:Be,ut:Be,va:Be,vi:Be,vt:Be,wa:Be,wi:Be,wv:It,wy:Be,cloudns:t,"is-by":t,"land-4-sale":t,"stuff-4-sale":t,heliohost:t,enscaled:[0,{phx:t}],mircloud:t,"azure-api":t,azurewebsites:t,ngo:t,golffan:t,noip:t,pointto:t,freeddns:t,srv:[2,{gh:t,gl:t}],servername:t}],uy:[1,{com:e,edu:e,gub:e,mil:e,net:e,org:e,gv:t}],uz:[1,{co:e,com:e,net:e,org:e}],va:e,vc:[1,{com:e,edu:e,gov:e,mil:e,net:e,org:e,gv:[2,{d:t}],"0e":i,mydns:t}],ve:[1,{arts:e,bib:e,co:e,com:e,e12:e,edu:e,emprende:e,firm:e,gob:e,gov:e,ia:e,info:e,int:e,mil:e,net:e,nom:e,org:e,rar:e,rec:e,store:e,tec:e,web:e}],vg:[1,{edu:e}],vi:[1,{co:e,com:e,k12:e,net:e,org:e}],vn:[1,{ac:e,ai:e,biz:e,com:e,edu:e,gov:e,health:e,id:e,info:e,int:e,io:e,name:e,net:e,org:e,pro:e,angiang:e,bacgiang:e,backan:e,baclieu:e,bacninh:e,"baria-vungtau":e,bentre:e,binhdinh:e,binhduong:e,binhphuoc:e,binhthuan:e,camau:e,cantho:e,caobang:e,daklak:e,daknong:e,danang:e,dienbien:e,dongnai:e,dongthap:e,gialai:e,hagiang:e,haiduong:e,haiphong:e,hanam:e,hanoi:e,hatinh:e,haugiang:e,hoabinh:e,hungyen:e,khanhhoa:e,kiengiang:e,kontum:e,laichau:e,lamdong:e,langson:e,laocai:e,longan:e,namdinh:e,nghean:e,ninhbinh:e,ninhthuan:e,phutho:e,phuyen:e,quangbinh:e,quangnam:e,quangngai:e,quangninh:e,quangtri:e,soctrang:e,sonla:e,tayninh:e,thaibinh:e,thainguyen:e,thanhhoa:e,thanhphohochiminh:e,thuathienhue:e,tiengiang:e,travinh:e,tuyenquang:e,vinhlong:e,vinhphuc:e,yenbai:e}],vu:M,wf:[1,{biz:t,sch:t}],ws:[1,{com:e,edu:e,gov:e,net:e,org:e,advisor:i,cloud66:t,dyndns:t,mypets:t}],yt:[1,{org:t}],"xn--mgbaam7a8h":e,\u0627\u0645\u0627\u0631\u0627\u062A:e,"xn--y9a3aq":e,\u0570\u0561\u0575:e,"xn--54b7fta0cc":e,\u09AC\u09BE\u0982\u09B2\u09BE:e,"xn--90ae":e,\u0431\u0433:e,"xn--mgbcpq6gpa1a":e,\u0627\u0644\u0628\u062D\u0631\u064A\u0646:e,"xn--90ais":e,\u0431\u0435\u043B:e,"xn--fiqs8s":e,\u4E2D\u56FD:e,"xn--fiqz9s":e,\u4E2D\u570B:e,"xn--lgbbat1ad8j":e,\u0627\u0644\u062C\u0632\u0627\u0626\u0631:e,"xn--wgbh1c":e,\u0645\u0635\u0631:e,"xn--e1a4c":e,\u0435\u044E:e,"xn--qxa6a":e,\u03B5\u03C5:e,"xn--mgbah1a3hjkrd":e,\u0645\u0648\u0631\u064A\u062A\u0627\u0646\u064A\u0627:e,"xn--node":e,\u10D2\u10D4:e,"xn--qxam":e,\u03B5\u03BB:e,"xn--j6w193g":[1,{"xn--gmqw5a":e,"xn--55qx5d":e,"xn--mxtq1m":e,"xn--wcvs22d":e,"xn--uc0atv":e,"xn--od0alg":e}],\u9999\u6E2F:[1,{\u500B\u4EBA:e,\u516C\u53F8:e,\u653F\u5E9C:e,\u6559\u80B2:e,\u7D44\u7E54:e,\u7DB2\u7D61:e}],"xn--2scrj9c":e,\u0CAD\u0CBE\u0CB0\u0CA4:e,"xn--3hcrj9c":e,\u0B2D\u0B3E\u0B30\u0B24:e,"xn--45br5cyl":e,\u09AD\u09BE\u09F0\u09A4:e,"xn--h2breg3eve":e,\u092D\u093E\u0930\u0924\u092E\u094D:e,"xn--h2brj9c8c":e,\u092D\u093E\u0930\u094B\u0924:e,"xn--mgbgu82a":e,\u0680\u0627\u0631\u062A:e,"xn--rvc1e0am3e":e,\u0D2D\u0D3E\u0D30\u0D24\u0D02:e,"xn--h2brj9c":e,\u092D\u093E\u0930\u0924:e,"xn--mgbbh1a":e,\u0628\u0627\u0631\u062A:e,"xn--mgbbh1a71e":e,\u0628\u06BE\u0627\u0631\u062A:e,"xn--fpcrj9c3d":e,\u0C2D\u0C3E\u0C30\u0C24\u0C4D:e,"xn--gecrj9c":e,\u0AAD\u0ABE\u0AB0\u0AA4:e,"xn--s9brj9c":e,\u0A2D\u0A3E\u0A30\u0A24:e,"xn--45brj9c":e,\u09AD\u09BE\u09B0\u09A4:e,"xn--xkc2dl3a5ee0h":e,\u0B87\u0BA8\u0BCD\u0BA4\u0BBF\u0BAF\u0BBE:e,"xn--mgba3a4f16a":e,\u0627\u06CC\u0631\u0627\u0646:e,"xn--mgba3a4fra":e,\u0627\u064A\u0631\u0627\u0646:e,"xn--mgbtx2b":e,\u0639\u0631\u0627\u0642:e,"xn--mgbayh7gpa":e,\u0627\u0644\u0627\u0631\u062F\u0646:e,"xn--3e0b707e":e,\uD55C\uAD6D:e,"xn--80ao21a":e,\u049B\u0430\u0437:e,"xn--q7ce6a":e,\u0EA5\u0EB2\u0EA7:e,"xn--fzc2c9e2c":e,\u0DBD\u0D82\u0D9A\u0DCF:e,"xn--xkc2al3hye2a":e,\u0B87\u0BB2\u0B99\u0BCD\u0B95\u0BC8:e,"xn--mgbc0a9azcg":e,\u0627\u0644\u0645\u063A\u0631\u0628:e,"xn--d1alf":e,\u043C\u043A\u0434:e,"xn--l1acc":e,\u043C\u043E\u043D:e,"xn--mix891f":e,\u6FB3\u9580:e,"xn--mix082f":e,\u6FB3\u95E8:e,"xn--mgbx4cd0ab":e,\u0645\u0644\u064A\u0633\u064A\u0627:e,"xn--mgb9awbf":e,\u0639\u0645\u0627\u0646:e,"xn--mgbai9azgqp6j":e,\u067E\u0627\u06A9\u0633\u062A\u0627\u0646:e,"xn--mgbai9a5eva00b":e,\u067E\u0627\u0643\u0633\u062A\u0627\u0646:e,"xn--ygbi2ammx":e,\u0641\u0644\u0633\u0637\u064A\u0646:e,"xn--90a3ac":[1,{"xn--80au":e,"xn--90azh":e,"xn--d1at":e,"xn--c1avg":e,"xn--o1ac":e,"xn--o1ach":e}],\u0441\u0440\u0431:[1,{\u0430\u043A:e,\u043E\u0431\u0440:e,\u043E\u0434:e,\u043E\u0440\u0433:e,\u043F\u0440:e,\u0443\u043F\u0440:e}],"xn--p1ai":e,\u0440\u0444:e,"xn--wgbl6a":e,\u0642\u0637\u0631:e,"xn--mgberp4a5d4ar":e,\u0627\u0644\u0633\u0639\u0648\u062F\u064A\u0629:e,"xn--mgberp4a5d4a87g":e,\u0627\u0644\u0633\u0639\u0648\u062F\u06CC\u0629:e,"xn--mgbqly7c0a67fbc":e,\u0627\u0644\u0633\u0639\u0648\u062F\u06CC\u06C3:e,"xn--mgbqly7cvafr":e,\u0627\u0644\u0633\u0639\u0648\u062F\u064A\u0647:e,"xn--mgbpl2fh":e,\u0633\u0648\u062F\u0627\u0646:e,"xn--yfro4i67o":e,\u65B0\u52A0\u5761:e,"xn--clchc0ea0b2g2a9gcd":e,\u0B9A\u0BBF\u0B99\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0BC2\u0BB0\u0BCD:e,"xn--ogbpf8fl":e,\u0633\u0648\u0631\u064A\u0629:e,"xn--mgbtf8fl":e,\u0633\u0648\u0631\u064A\u0627:e,"xn--o3cw4h":[1,{"xn--o3cyx2a":e,"xn--12co0c3b4eva":e,"xn--m3ch0j3a":e,"xn--h3cuzk1di":e,"xn--12c1fe0br":e,"xn--12cfi8ixb8l":e}],\u0E44\u0E17\u0E22:[1,{\u0E17\u0E2B\u0E32\u0E23:e,\u0E18\u0E38\u0E23\u0E01\u0E34\u0E08:e,\u0E40\u0E19\u0E47\u0E15:e,\u0E23\u0E31\u0E10\u0E1A\u0E32\u0E25:e,\u0E28\u0E36\u0E01\u0E29\u0E32:e,\u0E2D\u0E07\u0E04\u0E4C\u0E01\u0E23:e}],"xn--pgbs0dh":e,\u062A\u0648\u0646\u0633:e,"xn--kpry57d":e,\u53F0\u7063:e,"xn--kprw13d":e,\u53F0\u6E7E:e,"xn--nnx388a":e,\u81FA\u7063:e,"xn--j1amh":e,\u0443\u043A\u0440:e,"xn--mgb2ddes":e,\u0627\u0644\u064A\u0645\u0646:e,xxx:e,ye:n,za:[0,{ac:e,agric:e,alt:e,co:e,edu:e,gov:e,grondar:e,law:e,mil:e,net:e,ngo:e,nic:e,nis:e,nom:e,org:e,school:e,tm:e,web:e}],zm:[1,{ac:e,biz:e,co:e,com:e,edu:e,gov:e,info:e,mil:e,net:e,org:e,sch:e}],zw:[1,{ac:e,co:e,gov:e,mil:e,org:e}],aaa:e,aarp:e,abb:e,abbott:e,abbvie:e,abc:e,able:e,abogado:e,abudhabi:e,academy:[1,{official:t}],accenture:e,accountant:e,accountants:e,aco:e,actor:e,ads:e,adult:e,aeg:e,aetna:e,afl:e,africa:e,agakhan:e,agency:e,aig:e,airbus:e,airforce:e,airtel:e,akdn:e,alibaba:e,alipay:e,allfinanz:e,allstate:e,ally:e,alsace:e,alstom:e,amazon:e,americanexpress:e,americanfamily:e,amex:e,amfam:e,amica:e,amsterdam:e,analytics:e,android:e,anquan:e,anz:e,aol:e,apartments:e,app:[1,{adaptable:t,aiven:t,beget:i,brave:s,clerk:t,clerkstage:t,cloudflare:t,wnext:t,csb:[2,{preview:t}],convex:t,corespeed:t,deta:t,ondigitalocean:t,easypanel:t,encr:[2,{frontend:t}],evervault:a,expo:[2,{staging:t}],edgecompute:t,"on-fleek":t,flutterflow:t,sprites:t,e2b:t,framer:t,gadget:t,github:t,hosted:i,run:[0,{"*":t,mtls:i}],web:t,hackclub:t,hasura:t,onhercules:t,botdash:t,shiptoday:t,leapcell:t,loginline:t,lovable:t,luyani:t,magicpatterns:t,medusajs:t,messerli:t,miren:t,mocha:t,netlify:t,ngrok:t,"ngrok-free":t,developer:i,noop:t,northflank:i,upsun:i,railway:[0,{up:t}],replit:o,nyat:t,snowflake:[0,{"*":t,privatelink:i}],streamlit:t,spawnbase:t,telebit:t,typedream:t,vercel:t,wal:t,wasmer:t,bookonline:t,windsurf:t,base44:t,zeabur:t,zerops:i}],apple:[1,{int:[2,{cloud:[0,{"*":t,r:[0,{"*":t,"ap-north-1":i,"ap-south-1":i,"ap-south-2":i,"eu-central-1":i,"eu-north-1":i,"us-central-1":i,"us-central-2":i,"us-east-1":i,"us-east-2":i,"us-west-1":i,"us-west-2":i,"us-west-3":i}]}]}]}],aquarelle:e,arab:e,aramco:e,archi:e,army:e,art:e,arte:e,asda:e,associates:e,athleta:e,attorney:e,auction:e,audi:e,audible:e,audio:e,auspost:e,author:e,auto:e,autos:e,aws:[1,{on:[0,{"af-south-1":c,"ap-east-1":c,"ap-northeast-1":c,"ap-northeast-2":c,"ap-northeast-3":c,"ap-south-1":c,"ap-south-2":l,"ap-southeast-1":c,"ap-southeast-2":c,"ap-southeast-3":c,"ap-southeast-4":l,"ap-southeast-5":l,"ca-central-1":c,"ca-west-1":l,"eu-central-1":c,"eu-central-2":l,"eu-north-1":c,"eu-south-1":c,"eu-south-2":l,"eu-west-1":c,"eu-west-2":c,"eu-west-3":c,"il-central-1":l,"me-central-1":l,"me-south-1":c,"sa-east-1":c,"us-east-1":c,"us-east-2":c,"us-west-1":c,"us-west-2":c,"ap-southeast-7":d,"mx-central-1":d,"us-gov-east-1":f,"us-gov-west-1":f}],sagemaker:[0,{"ap-northeast-1":h,"ap-northeast-2":h,"ap-south-1":h,"ap-southeast-1":h,"ap-southeast-2":h,"ca-central-1":y,"eu-central-1":h,"eu-west-1":h,"eu-west-2":h,"us-east-1":y,"us-east-2":y,"us-west-2":y,"af-south-1":p,"ap-east-1":p,"ap-northeast-3":p,"ap-south-2":m,"ap-southeast-3":p,"ap-southeast-4":m,"ca-west-1":[0,{notebook:t,"notebook-fips":t}],"eu-central-2":p,"eu-north-1":p,"eu-south-1":p,"eu-south-2":p,"eu-west-3":p,"il-central-1":p,"me-central-1":p,"me-south-1":p,"sa-east-1":p,"us-gov-east-1":g,"us-gov-west-1":g,"us-west-1":[0,{notebook:t,"notebook-fips":t,studio:t}],experiments:i}],repost:[0,{private:i}]}],axa:e,azure:e,baby:e,baidu:e,banamex:e,band:e,bank:e,bar:e,barcelona:e,barclaycard:e,barclays:e,barefoot:e,bargains:e,baseball:e,basketball:[1,{aus:t,nz:t}],bauhaus:e,bayern:e,bbc:e,bbt:e,bbva:e,bcg:e,bcn:e,beats:e,beauty:e,beer:e,berlin:e,best:e,bestbuy:e,bet:e,bharti:e,bible:e,bid:e,bike:e,bing:e,bingo:e,bio:e,black:e,blackfriday:e,blockbuster:e,blog:e,bloomberg:e,blue:e,bms:e,bmw:e,bnpparibas:e,boats:e,boehringer:e,bofa:e,bom:e,bond:e,boo:e,book:e,booking:e,bosch:e,bostik:e,boston:e,bot:e,boutique:e,box:e,bradesco:e,bridgestone:e,broadway:e,broker:e,brother:e,brussels:e,build:[1,{shiptoday:t,v0:t,windsurf:t}],builders:[1,{cloudsite:t}],business:_,buy:e,buzz:e,bzh:e,cab:e,cafe:e,cal:e,call:e,calvinklein:e,cam:e,camera:e,camp:[1,{emf:[0,{at:t}]}],canon:e,capetown:e,capital:e,capitalone:e,car:e,caravan:e,cards:e,care:e,career:e,careers:e,cars:e,casa:[1,{nabu:[0,{ui:t}]}],case:[1,{sav:t}],cash:e,casino:e,catering:e,catholic:e,cba:e,cbn:e,cbre:e,center:e,ceo:e,cern:e,cfa:e,cfd:e,chanel:e,channel:e,charity:e,chase:e,chat:e,cheap:e,chintai:e,christmas:e,chrome:e,church:e,cipriani:e,circle:e,cisco:e,citadel:e,citi:e,citic:e,city:e,claims:e,cleaning:e,click:e,clinic:e,clinique:e,clothing:e,cloud:[1,{antagonist:t,convex:t,elementor:t,emergent:t,encoway:[0,{eu:t}],statics:i,ravendb:t,axarnet:[0,{"es-1":t}],diadem:t,jelastic:[0,{vip:t}],jele:t,"jenv-aruba":[0,{aruba:[0,{eur:[0,{it1:t}]}],it1:t}],keliweb:[2,{cs:t}],oxa:[2,{tn:t,uk:t}],primetel:[2,{uk:t}],reclaim:[0,{ca:t,uk:t,us:t}],trendhosting:[0,{ch:t,de:t}],jote:t,jotelulu:t,kuleuven:t,laravel:t,linkyard:t,magentosite:i,matlab:t,observablehq:t,perspecta:t,vapor:t,"on-rancher":i,scw:[0,{baremetal:[0,{"fr-par-1":t,"fr-par-2":t,"nl-ams-1":t}],"fr-par":[0,{cockpit:t,ddl:t,dtwh:t,fnc:[2,{functions:t}],ifr:t,k8s:S,kafk:t,mgdb:t,rdb:t,s3:t,"s3-website":t,scbl:t,whm:t}],instances:[0,{priv:t,pub:t}],k8s:t,"nl-ams":[0,{cockpit:t,ddl:t,dtwh:t,ifr:t,k8s:S,kafk:t,mgdb:t,rdb:t,s3:t,"s3-website":t,scbl:t,whm:t}],"pl-waw":[0,{cockpit:t,ddl:t,dtwh:t,ifr:t,k8s:S,kafk:t,mgdb:t,rdb:t,s3:t,"s3-website":t,scbl:t}],scalebook:t,smartlabeling:t}],servebolt:t,onstackit:[0,{runs:t}],trafficplex:t,"unison-services":t,urown:t,voorloper:t,zap:t}],club:[1,{cloudns:t,jele:t,barsy:t}],clubmed:e,coach:e,codes:[1,{owo:i}],coffee:e,college:e,cologne:e,commbank:e,community:[1,{nog:t,ravendb:t,myforum:t}],company:e,compare:e,computer:e,comsec:e,condos:e,construction:e,consulting:e,contact:e,contractors:e,cooking:e,cool:[1,{elementor:t,de:t}],corsica:e,country:e,coupon:e,coupons:e,courses:e,cpa:e,credit:e,creditcard:e,creditunion:e,cricket:e,crown:e,crs:e,cruise:e,cruises:e,cuisinella:e,cymru:e,cyou:e,dad:e,dance:e,data:e,date:e,dating:e,datsun:e,day:e,dclk:e,dds:e,deal:e,dealer:e,deals:e,degree:e,delivery:e,dell:e,deloitte:e,delta:e,democrat:e,dental:e,dentist:e,desi:e,design:[1,{graphic:t,bss:t}],dev:[1,{myaddr:t,panel:t,bearblog:t,brave:s,lcl:i,lclstage:i,stg:i,stgstage:i,pages:t,r2:t,workers:t,deno:t,"deno-staging":t,deta:t,lp:[2,{api:t,objects:t}],evervault:a,fly:t,githubpreview:t,gateway:i,grebedoc:t,botdash:t,inbrowser:i,"is-a-good":t,iserv:t,leapcell:t,runcontainers:t,localcert:[0,{user:i}],loginline:t,barsy:t,mediatech:t,"mocha-sandbox":t,modx:t,ngrok:t,"ngrok-free":t,"is-a-fullstack":t,"is-cool":t,"is-not-a":t,localplayer:t,xmit:t,"platter-app":t,replit:[2,{archer:t,bones:t,canary:t,global:t,hacker:t,id:t,janeway:t,kim:t,kira:t,kirk:t,odo:t,paris:t,picard:t,pike:t,prerelease:t,reed:t,riker:t,sisko:t,spock:t,staging:t,sulu:t,tarpit:t,teams:t,tucker:t,wesley:t,worf:t}],crm:[0,{aa:i,ab:i,ac:i,ad:i,ae:i,af:i,ci:i,d:i,pa:i,pb:i,pc:i,pd:i,pe:i,pf:i,w:i,wa:i,wb:i,wc:i,wd:i,we:i,wf:i}],erp:H,vercel:t,webhare:i,hrsn:t,"is-a":t}],dhl:e,diamonds:e,diet:e,digital:[1,{cloudapps:[2,{london:t}]}],direct:[1,{libp2p:t}],directory:e,discount:e,discover:e,dish:e,diy:G,dnp:e,docs:e,doctor:e,dog:e,domains:e,dot:e,download:e,drive:e,dtv:e,dubai:e,dupont:e,durban:e,dvag:e,dvr:e,earth:e,eat:e,eco:e,edeka:e,education:_,email:[1,{crisp:[0,{on:t}],tawk:ee,tawkto:ee}],emerck:e,energy:e,engineer:e,engineering:e,enterprises:e,epson:e,equipment:e,ericsson:e,erni:e,esq:e,estate:[1,{compute:i}],eurovision:e,eus:[1,{party:te}],events:[1,{koobin:t,co:t}],exchange:e,expert:e,exposed:e,express:e,extraspace:e,fage:e,fail:e,fairwinds:e,faith:e,family:e,fan:e,fans:e,farm:[1,{storj:t}],farmers:e,fashion:e,fast:e,fedex:e,feedback:e,ferrari:e,ferrero:e,fidelity:e,fido:e,film:e,final:e,finance:e,financial:_,fire:e,firestone:e,firmdale:e,fish:e,fishing:e,fit:e,fitness:e,flickr:e,flights:e,flir:e,florist:e,flowers:e,fly:e,foo:e,food:e,football:e,ford:e,forex:e,forsale:e,forum:e,foundation:e,fox:e,free:e,fresenius:e,frl:e,frogans:e,frontier:e,ftr:e,fujitsu:e,fun:e,fund:e,furniture:e,futbol:e,fyi:e,gal:e,gallery:e,gallo:e,gallup:e,game:e,games:[1,{pley:t,sheezy:t}],gap:e,garden:e,gay:[1,{pages:t}],gbiz:e,gdn:[1,{cnpy:t}],gea:e,gent:e,genting:e,george:e,ggee:e,gift:e,gifts:e,gives:e,giving:e,glass:e,gle:e,global:[1,{appwrite:t}],globo:e,gmail:e,gmbh:e,gmo:e,gmx:e,godaddy:e,gold:e,goldpoint:e,golf:e,goodyear:e,goog:[1,{cloud:t,translate:t,usercontent:i}],google:e,gop:e,got:e,grainger:e,graphics:e,gratis:e,green:e,gripe:e,grocery:e,group:G,gucci:e,guge:e,guide:e,guitars:e,guru:e,hair:e,hamburg:e,hangout:e,haus:e,hbo:e,hdfc:e,hdfcbank:e,health:[1,{hra:t}],healthcare:e,help:e,helsinki:e,here:e,hermes:e,hiphop:e,hisamitsu:e,hitachi:e,hiv:e,hkt:e,hockey:e,holdings:e,holiday:e,homedepot:e,homegoods:e,homes:e,homesense:e,honda:e,horse:e,hospital:e,host:[1,{cloudaccess:t,freesite:t,easypanel:t,emergent:t,fastvps:t,myfast:t,gadget:t,tempurl:t,wpmudev:t,iserv:t,jele:t,mircloud:t,bolt:t,wp2:t,half:t}],hosting:[1,{opencraft:t}],hot:e,hotel:e,hotels:e,hotmail:e,house:e,how:e,hsbc:e,hughes:e,hyatt:e,hyundai:e,ibm:e,icbc:e,ice:e,icu:e,ieee:e,ifm:e,ikano:e,imamat:e,imdb:e,immo:e,immobilien:e,inc:e,industries:e,infiniti:e,ing:e,ink:e,institute:e,insurance:e,insure:e,international:e,intuit:e,investments:e,ipiranga:e,irish:e,ismaili:e,ist:e,istanbul:e,itau:e,itv:e,jaguar:e,java:e,jcb:e,jeep:e,jetzt:e,jewelry:e,jio:e,jll:e,jmp:e,jnj:e,joburg:e,jot:e,joy:e,jpmorgan:e,jprs:e,juegos:e,juniper:e,kaufen:e,kddi:e,kerryhotels:e,kerryproperties:e,kfh:e,kia:e,kids:e,kim:e,kindle:e,kitchen:e,kiwi:e,koeln:e,komatsu:e,kosher:e,kpmg:e,kpn:e,krd:[1,{co:t,edu:t}],kred:e,kuokgroup:e,kyoto:e,lacaixa:e,lamborghini:e,lamer:e,land:e,landrover:e,lanxess:e,lasalle:e,lat:e,latino:e,latrobe:e,law:e,lawyer:e,lds:e,lease:e,leclerc:e,lefrak:e,legal:e,lego:e,lexus:e,lgbt:e,lidl:e,life:e,lifeinsurance:e,lifestyle:e,lighting:e,like:e,lilly:e,limited:e,limo:e,lincoln:e,link:[1,{myfritz:t,cyon:t,joinmc:t,dweb:i,inbrowser:i,keenetic:t,nftstorage:We,mypep:t,storacha:We,w3s:We}],live:[1,{aem:t,hlx:t,ewp:i}],living:e,llc:e,llp:e,loan:e,loans:e,locker:e,locus:e,lol:[1,{omg:t}],london:e,lotte:e,lotto:e,love:e,lpl:e,lplfinancial:e,ltd:e,ltda:e,lundbeck:e,luxe:e,luxury:e,madrid:e,maif:e,maison:e,makeup:e,man:e,management:e,mango:e,map:e,market:e,marketing:e,markets:e,marriott:e,marshalls:e,mattel:e,mba:e,mckinsey:e,med:e,media:Ve,meet:e,melbourne:e,meme:e,memorial:e,men:e,menu:[1,{barsy:t,barsyonline:t}],merck:e,merckmsd:e,miami:e,microsoft:e,mini:e,mint:e,mit:e,mitsubishi:e,mlb:e,mls:e,mma:e,mobile:e,moda:e,moe:e,moi:e,mom:e,monash:e,money:e,monster:e,mormon:e,mortgage:e,moscow:e,moto:e,motorcycles:e,mov:e,movie:e,msd:e,mtn:e,mtr:e,music:e,nab:e,nagoya:e,navy:e,nba:e,nec:e,netbank:e,netflix:e,network:[1,{aem:t,alces:i,appwrite:t,co:t,arvo:t,azimuth:t,tlon:t}],neustar:e,new:e,news:[1,{noticeable:t}],next:e,nextdirect:e,nexus:e,nfl:e,ngo:e,nhk:e,nico:e,nike:e,nikon:e,ninja:e,nissan:e,nissay:e,nokia:e,norton:e,now:e,nowruz:e,nowtv:e,nra:e,nrw:e,ntt:e,nyc:e,obi:e,observer:e,office:e,okinawa:e,olayan:e,olayangroup:e,ollo:e,omega:e,one:[1,{kin:i,service:t,website:t}],ong:e,onl:e,online:[1,{eero:t,"eero-stage":t,websitebuilder:t,leapcell:t,barsy:t}],ooo:e,open:e,oracle:e,orange:[1,{tech:t}],organic:e,origins:e,osaka:e,otsuka:e,ott:e,ovh:[1,{nerdpol:t}],page:[1,{aem:t,hlx:t,codeberg:t,deuxfleurs:t,heyflow:t,prvcy:t,rocky:t,statichost:t,pdns:t,plesk:t}],panasonic:e,paris:e,pars:e,partners:e,parts:e,party:e,pay:e,pccw:e,pet:e,pfizer:e,pharmacy:e,phd:e,philips:e,phone:e,photo:e,photography:e,photos:Ve,physio:e,pics:e,pictet:e,pictures:[1,{1337:t}],pid:e,pin:e,ping:e,pink:e,pioneer:e,pizza:[1,{ngrok:t}],place:_,play:e,playstation:e,plumbing:e,plus:[1,{playit:[2,{at:i,with:t}]}],pnc:e,pohl:e,poker:e,politie:e,porn:e,praxi:e,press:e,prime:e,prod:e,productions:e,prof:e,progressive:e,promo:e,properties:e,property:e,protection:e,pru:e,prudential:e,pub:[1,{id:i,kin:i,barsy:t}],pwc:e,qpon:e,quebec:e,quest:e,racing:e,radio:e,read:e,realestate:e,realtor:e,realty:e,recipes:e,red:e,redumbrella:e,rehab:e,reise:e,reisen:e,reit:e,reliance:e,ren:e,rent:e,rentals:e,repair:e,report:e,republican:e,rest:e,restaurant:e,review:e,reviews:[1,{aem:t}],rexroth:e,rich:e,richardli:e,ricoh:e,ril:e,rio:e,rip:[1,{clan:t}],rocks:[1,{myddns:t,stackit:t,"lima-city":t,webspace:t}],rodeo:e,rogers:e,room:e,rsvp:e,rugby:e,ruhr:e,run:[1,{appwrite:i,canva:t,development:t,ravendb:t,liara:[2,{iran:t}],lovable:t,needle:t,build:i,code:i,database:i,migration:i,onporter:t,repl:t,stackit:t,val:H,vercel:t,wix:t}],rwe:e,ryukyu:e,saarland:e,safe:e,safety:e,sakura:e,sale:e,salon:e,samsclub:e,samsung:e,sandvik:e,sandvikcoromant:e,sanofi:e,sap:e,sarl:e,sas:e,save:e,saxo:e,sbi:e,sbs:e,scb:e,schaeffler:e,schmidt:e,scholarships:e,school:e,schule:e,schwarz:e,science:e,scot:[1,{co:t,me:t,org:t,gov:[2,{service:t}]}],search:e,seat:e,secure:e,security:e,seek:e,select:e,sener:e,services:[1,{loginline:t}],seven:e,sew:e,sex:e,sexy:e,sfr:e,shangrila:e,sharp:e,shell:e,shia:e,shiksha:e,shoes:e,shop:[1,{base:t,hoplix:t,barsy:t,barsyonline:t,shopware:t}],shopping:e,shouji:e,show:e,silk:e,sina:e,singles:e,site:[1,{square:t,canva:C,cloudera:i,convex:t,cyon:t,caffeine:t,fastvps:t,figma:t,"figma-gov":t,preview:t,heyflow:t,jele:t,jouwweb:t,loginline:t,barsy:t,co:t,notion:t,omniwe:t,opensocial:t,madethis:t,support:t,platformsh:i,tst:i,byen:t,sol:t,srht:t,novecore:t,cpanel:t,wpsquared:t,sourcecraft:t}],ski:e,skin:e,sky:e,skype:e,sling:e,smart:e,smile:e,sncf:e,soccer:e,social:e,softbank:e,software:e,sohu:e,solar:e,solutions:e,song:e,sony:e,soy:e,spa:e,space:[1,{myfast:t,heiyu:t,hf:[2,{static:t}],"app-ionos":t,project:t,uber:t,xs4all:t}],sport:e,spot:e,srl:e,stada:e,staples:e,star:e,statebank:e,statefarm:e,stc:e,stcgroup:e,stockholm:e,storage:e,store:[1,{barsy:t,sellfy:t,shopware:t,storebase:t}],stream:e,studio:e,study:e,style:e,sucks:e,supplies:e,supply:e,support:[1,{barsy:t}],surf:e,surgery:e,suzuki:e,swatch:e,swiss:e,sydney:e,systems:[1,{knightpoint:t,miren:t}],tab:e,taipei:e,talk:e,taobao:e,target:e,tatamotors:e,tatar:e,tattoo:e,tax:e,taxi:e,tci:e,tdk:e,team:[1,{discourse:t,jelastic:t}],tech:[1,{cleverapps:t}],technology:_,temasek:e,tennis:e,teva:e,thd:e,theater:e,theatre:e,tiaa:e,tickets:e,tienda:e,tips:e,tires:e,tirol:e,tjmaxx:e,tjx:e,tkmaxx:e,tmall:e,today:[1,{prequalifyme:t}],tokyo:e,tools:[1,{addr:V,myaddr:t}],top:[1,{ntdll:t,wadl:i}],toray:e,toshiba:e,total:e,tours:e,town:e,toyota:e,toys:e,trade:e,trading:e,training:e,travel:e,travelers:e,travelersinsurance:e,trust:e,trv:e,tube:e,tui:e,tunes:e,tushu:e,tvs:e,ubank:e,ubs:e,unicom:e,university:e,uno:e,uol:e,ups:e,vacations:e,vana:e,vanguard:e,vegas:e,ventures:e,verisign:e,versicherung:e,vet:e,viajes:e,video:e,vig:e,viking:e,villas:e,vin:e,vip:[1,{hidns:t}],virgin:e,visa:e,vision:e,viva:e,vivo:e,vlaanderen:e,vodka:e,volvo:e,vote:e,voting:e,voto:e,voyage:e,wales:e,walmart:e,walter:e,wang:e,wanggou:e,watch:e,watches:e,weather:e,weatherchannel:e,webcam:e,weber:e,website:Ve,wed:e,wedding:e,weibo:e,weir:e,whoswho:e,wien:e,wiki:Ve,williamhill:e,win:e,windows:e,wine:e,winners:e,wme:e,wolterskluwer:e,woodside:e,work:[1,{"imagine-proxy":t}],works:e,world:e,wow:e,wtc:e,wtf:e,xbox:e,xerox:e,xihuan:e,xin:e,"xn--11b4c3d":e,\u0915\u0949\u092E:e,"xn--1ck2e1b":e,\u30BB\u30FC\u30EB:e,"xn--1qqw23a":e,\u4F5B\u5C71:e,"xn--30rr7y":e,\u6148\u5584:e,"xn--3bst00m":e,\u96C6\u56E2:e,"xn--3ds443g":e,\u5728\u7EBF:e,"xn--3pxu8k":e,\u70B9\u770B:e,"xn--42c2d9a":e,\u0E04\u0E2D\u0E21:e,"xn--45q11c":e,\u516B\u5366:e,"xn--4gbrim":e,\u0645\u0648\u0642\u0639:e,"xn--55qw42g":e,\u516C\u76CA:e,"xn--55qx5d":e,\u516C\u53F8:e,"xn--5su34j936bgsg":e,\u9999\u683C\u91CC\u62C9:e,"xn--5tzm5g":e,\u7F51\u7AD9:e,"xn--6frz82g":e,\u79FB\u52A8:e,"xn--6qq986b3xl":e,\u6211\u7231\u4F60:e,"xn--80adxhks":e,\u043C\u043E\u0441\u043A\u0432\u0430:e,"xn--80aqecdr1a":e,\u043A\u0430\u0442\u043E\u043B\u0438\u043A:e,"xn--80asehdb":e,\u043E\u043D\u043B\u0430\u0439\u043D:e,"xn--80aswg":e,\u0441\u0430\u0439\u0442:e,"xn--8y0a063a":e,\u8054\u901A:e,"xn--9dbq2a":e,\u05E7\u05D5\u05DD:e,"xn--9et52u":e,\u65F6\u5C1A:e,"xn--9krt00a":e,\u5FAE\u535A:e,"xn--b4w605ferd":e,\u6DE1\u9A6C\u9521:e,"xn--bck1b9a5dre4c":e,\u30D5\u30A1\u30C3\u30B7\u30E7\u30F3:e,"xn--c1avg":e,\u043E\u0440\u0433:e,"xn--c2br7g":e,\u0928\u0947\u091F:e,"xn--cck2b3b":e,\u30B9\u30C8\u30A2:e,"xn--cckwcxetd":e,\u30A2\u30DE\u30BE\u30F3:e,"xn--cg4bki":e,\uC0BC\uC131:e,"xn--czr694b":e,\u5546\u6807:e,"xn--czrs0t":e,\u5546\u5E97:e,"xn--czru2d":e,\u5546\u57CE:e,"xn--d1acj3b":e,\u0434\u0435\u0442\u0438:e,"xn--eckvdtc9d":e,\u30DD\u30A4\u30F3\u30C8:e,"xn--efvy88h":e,\u65B0\u95FB:e,"xn--fct429k":e,\u5BB6\u96FB:e,"xn--fhbei":e,\u0643\u0648\u0645:e,"xn--fiq228c5hs":e,\u4E2D\u6587\u7F51:e,"xn--fiq64b":e,\u4E2D\u4FE1:e,"xn--fjq720a":e,\u5A31\u4E50:e,"xn--flw351e":e,\u8C37\u6B4C:e,"xn--fzys8d69uvgm":e,\u96FB\u8A0A\u76C8\u79D1:e,"xn--g2xx48c":e,\u8D2D\u7269:e,"xn--gckr3f0f":e,\u30AF\u30E9\u30A6\u30C9:e,"xn--gk3at1e":e,\u901A\u8CA9:e,"xn--hxt814e":e,\u7F51\u5E97:e,"xn--i1b6b1a6a2e":e,\u0938\u0902\u0917\u0920\u0928:e,"xn--imr513n":e,\u9910\u5385:e,"xn--io0a7i":e,\u7F51\u7EDC:e,"xn--j1aef":e,\u043A\u043E\u043C:e,"xn--jlq480n2rg":e,\u4E9A\u9A6C\u900A:e,"xn--jvr189m":e,\u98DF\u54C1:e,"xn--kcrx77d1x4a":e,\u98DE\u5229\u6D66:e,"xn--kput3i":e,\u624B\u673A:e,"xn--mgba3a3ejt":e,\u0627\u0631\u0627\u0645\u0643\u0648:e,"xn--mgba7c0bbn0a":e,\u0627\u0644\u0639\u0644\u064A\u0627\u0646:e,"xn--mgbab2bd":e,\u0628\u0627\u0632\u0627\u0631:e,"xn--mgbca7dzdo":e,\u0627\u0628\u0648\u0638\u0628\u064A:e,"xn--mgbi4ecexp":e,\u0643\u0627\u062B\u0648\u0644\u064A\u0643:e,"xn--mgbt3dhd":e,\u0647\u0645\u0631\u0627\u0647:e,"xn--mk1bu44c":e,\uB2F7\uCEF4:e,"xn--mxtq1m":e,\u653F\u5E9C:e,"xn--ngbc5azd":e,\u0634\u0628\u0643\u0629:e,"xn--ngbe9e0a":e,\u0628\u064A\u062A\u0643:e,"xn--ngbrx":e,\u0639\u0631\u0628:e,"xn--nqv7f":e,\u673A\u6784:e,"xn--nqv7fs00ema":e,\u7EC4\u7EC7\u673A\u6784:e,"xn--nyqy26a":e,\u5065\u5EB7:e,"xn--otu796d":e,\u62DB\u8058:e,"xn--p1acf":[1,{"xn--90amc":t,"xn--j1aef":t,"xn--j1ael8b":t,"xn--h1ahn":t,"xn--j1adp":t,"xn--c1avg":t,"xn--80aaa0cvac":t,"xn--h1aliz":t,"xn--90a1af":t,"xn--41a":t}],\u0440\u0443\u0441:[1,{\u0431\u0438\u0437:t,\u043A\u043E\u043C:t,\u043A\u0440\u044B\u043C:t,\u043C\u0438\u0440:t,\u043C\u0441\u043A:t,\u043E\u0440\u0433:t,\u0441\u0430\u043C\u0430\u0440\u0430:t,\u0441\u043E\u0447\u0438:t,\u0441\u043F\u0431:t,\u044F:t}],"xn--pssy2u":e,\u5927\u62FF:e,"xn--q9jyb4c":e,\u307F\u3093\u306A:e,"xn--qcka1pmc":e,\u30B0\u30FC\u30B0\u30EB:e,"xn--rhqv96g":e,\u4E16\u754C:e,"xn--rovu88b":e,\u66F8\u7C4D:e,"xn--ses554g":e,\u7F51\u5740:e,"xn--t60b56a":e,\uB2F7\uB137:e,"xn--tckwe":e,\u30B3\u30E0:e,"xn--tiq49xqyj":e,\u5929\u4E3B\u6559:e,"xn--unup4y":e,\u6E38\u620F:e,"xn--vermgensberater-ctb":e,verm\u00F6gensberater:e,"xn--vermgensberatung-pwb":e,verm\u00F6gensberatung:e,"xn--vhquv":e,\u4F01\u4E1A:e,"xn--vuq861b":e,\u4FE1\u606F:e,"xn--w4r85el8fhu5dnra":e,\u5609\u91CC\u5927\u9152\u5E97:e,"xn--w4rs40l":e,\u5609\u91CC:e,"xn--xhq521b":e,\u5E7F\u4E1C:e,"xn--zfr164b":e,\u653F\u52A1:e,xyz:[1,{caffeine:t,botdash:t,telebit:i}],yachts:e,yahoo:e,yamaxun:e,yandex:e,yodobashi:e,yoga:e,yokohama:e,you:e,youtube:e,yun:e,zappos:e,zara:e,zero:e,zip:e,zone:[1,{triton:i,stackit:t,lima:t}],zuerich:e}]}();function i6t(e,t,r,n){let i=null,s=t;for(;s!==void 0&&(s[0]&n&&(i={index:r+1,isIcann:(s[0]&1)!==0,isPrivate:(s[0]&2)!==0}),r!==-1);){let a=s[1];s=Object.prototype.hasOwnProperty.call(a,e[r])?a[e[r]]:a["*"],r-=1}return i}function BC(e,t,r){var n;if(hAn(e,t,r))return;let i=e.split("."),s=(t.allowPrivateDomains?2:0)|(t.allowIcannDomains?1:0),a=i6t(i,mAn,i.length-1,s);if(a!==null){r.isIcann=a.isIcann,r.isPrivate=a.isPrivate,r.publicSuffix=i.slice(a.index+1).join(".");return}let o=i6t(i,gAn,i.length-1,s);if(o!==null){r.isIcann=o.isIcann,r.isPrivate=o.isPrivate,r.publicSuffix=i.slice(o.index).join(".");return}r.isIcann=!1,r.isPrivate=!1,r.publicSuffix=(n=i[i.length-1])!==null&&n!==void 0?n:null}var fh=a6t();function yAn(e,t={}){return LC(e,5,BC,t,a6t())}function _An(e,t={}){return NL(fh),LC(e,0,BC,t,fh).hostname}function AAn(e,t={}){return NL(fh),LC(e,2,BC,t,fh).publicSuffix}function vAn(e,t={}){return NL(fh),LC(e,3,BC,t,fh).domain}function bAn(e,t={}){return NL(fh),LC(e,4,BC,t,fh).subdomain}function EAn(e,t={}){return NL(fh),LC(e,5,BC,t,fh).domainWithoutSuffix}RE.getDomain=vAn;RE.getDomainWithoutSuffix=EAn;RE.getHostname=_An;RE.getPublicSuffix=AAn;RE.getSubdomain=bAn;RE.parse=yAn});var vFt={};ys(vFt,{buildPowMessage:()=>lTe,buildVerifyReadyPayload:()=>AFt,createWGenerator:()=>fTe,detectGapByTemplate:()=>yFt,detectGapX:()=>gFt,fetchGeetestLoad:()=>mFt,fetchVerifyConfig:()=>hFt,initSiteAuth:()=>dTe,prepareChallenge:()=>mTe,solveGeetestChallenge:()=>pTe,solveVerifyToken:()=>rEn,submitAuthVerify:()=>hTe,verifyGeetest:()=>_Ft});function Kbn(e){return new Promise(t=>setTimeout(t,e))}function Vbn(e){let t=String(e?.code||"");return t==="ECONNABORTED"||t==="ETIMEDOUT"||t==="ECONNRESET"||t==="EAI_AGAIN"||t==="ENOTFOUND"}async function $z(e,t={}){let r=Math.max(0,Number(t.retries??jbn)),n=Math.max(0,Number(t.delayMs??Hbn)),i=null;for(let s=0;s<=r;s+=1)try{return await e(s)}catch(a){if(i=a,s>=r||!Vbn(a))throw a;await Kbn(n*(s+1))}throw i||new Error("request failed")}function oTe(e){let t=String(e||""),r="0x1A2B3C4D5E6F7A8B9C",n="";for(let i=0;is[o]||"").join("");return a=a.replace(/1/g,"i").replace(/0/g,"o").replace(/5/g,"s"),hh.default.createHmac("sha256",String(r||"")).update(a).digest("hex")}function zbn(e){return hh.default.createHash("md5").update(String(e||"")).digest("hex")}function uTe(e=16){return hh.default.randomBytes(e).toString("hex")}function cTe(e){return Buffer.from(e).toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function Qbn(e){return cTe(Buffer.from(String(e||""),"utf8"))}function Z6t(){return hh.default.randomBytes(8).toString("hex")}function Gbn(){let e=Pbn.replace(/^00/,""),t=sTe.length%2===0?sTe:`0${sTe}`;return hh.default.createPublicKey({key:{kty:"RSA",n:cTe(Buffer.from(e,"hex")),e:cTe(Buffer.from(t,"hex"))},format:"jwk"})}function eFt(e,t){return hh.default.publicEncrypt({key:e,padding:hh.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t||""),"utf8")).toString("hex")}function Ybn(e,t){let r=hh.default.createCipheriv("aes-128-cbc",Buffer.from(String(t||""),"utf8"),Buffer.from(Mbn,"utf8"));return Buffer.concat([r.update(String(e||""),"utf8"),r.final()]).toString("hex")}function Wbn(e){let t=String(e||"");return t.length<30?{}:{[t.slice(24,28)]:{[t[29]+t[27]+t[15]+t[9]]:t.slice(1,9)}}}function uFt(e){let t=Number(e);return!Number.isFinite(t)||t<0?0:Math.max(0,Math.round(t))}function Xbn(e){return e/Lbn+2}function lTe(e,t,r){return[String(e?.version||1),String(e?.bits||0),String(e?.hashfunc||"md5"),String(e?.datetime||""),String(t||""),String(r||""),"",uTe(8)].join("|")}function cFt(){return aTe=(aTe+1)%1e3,`geetest_${Date.now()}`}function lFt(e){let t=String(e||"").trim(),r=t.indexOf("("),n=t.lastIndexOf(")");if(r<0||n<=r)return null;try{return JSON.parse(t.slice(r+1,n))}catch{return null}}function Jbn(e,t=240){let r=String(e||"");return r.length<=t*2?r:`${r.slice(0,t)} ... ${r.slice(-t)}`}async function dFt(e,t={},r={}){let{retries:n,retryDelayMs:i,...s}=r||{},a=await $z(()=>_e.get(e,{headers:t,timeout:s.timeout||Bz,validateStatus:()=>!0,...s}),{retries:n,delayMs:i});return{status:Number(a?.status||0),headers:a?.headers||{},text:typeof a?.data=="string"?a.data:JSON.stringify(a?.data||{})}}async function tFt(e,t={}){let r=await $z(()=>_e.get(e,{headers:t,timeout:Bz,responseType:"arraybuffer",validateStatus:()=>!0}));return Buffer.from(r.data||[])}async function fFt(e,t={}){return(await dFt(e,t)).text}async function pFt(e,t={}){let r=await fFt(e,t);try{return JSON.parse(r)}catch{return null}}function Lz(e){if(!e?.length)return null;try{let t=nFt.PNG.sync.read(e);return{data:t.data,width:Number(t.width||0),height:Number(t.height||0),channels:4,format:"png"}}catch{return null}}function Zbn(e){let t=e.width*e.height,r=Buffer.alloc(t);for(let n=0;n_e.get(`${_u}/api/stats/track`,{headers:{...Mz,referer:`${_u}/m/index`},timeout:Math.min(Bz,15e3),validateStatus:()=>!0})),t=e.headers?.["set-cookie"]||e.headers?.["Set-Cookie"],r=Array.isArray(t)?t.map(l=>String(l).split(";")[0]).join("; "):"",n=uTe(16),i={...Mz,cookie:r,referer:`${_u}/m/index`,"x-client-id":n,"x-verify-token":"","x-timestamp":String(Date.now()),"x-report-id":uTe(32)},a=(await pFt(`${_u}/api/system/config`,i))?.data||{},o=oTe(a.session||""),u=oTe(a.traceId||""),c=oTe(a.reportId||"");return{cookie:r,clientId:n,session:o,traceId:u,reportId:c}}async function eEn(e,t,r={}){let n=`${_u}${e}`,i=r.useChecksumTs?aFt(Date.now()):String(Date.now()),s={...Mz,cookie:t.cookie,referer:r.referer||`${_u}/m/index`,"x-client-id":t.clientId,"x-verify-token":t.verifyToken||"","x-timestamp":i};return t.reportId&&t.session&&t.traceId&&(s[t.reportId]=oFt(n,i,t.session,t.traceId)),r.extraHeaders&&Object.assign(s,r.extraHeaders),pFt(n,s)}async function hFt(e){return eEn("/api/auth/verify/config",e,{referer:`${_u}/m/verify`,useChecksumTs:!0})}async function mFt({captchaId:e,challenge:t}){let r=cFt(),n=new URLSearchParams({callback:r,captcha_id:e,challenge:t,client_type:"h5",lang:"zho"}),i=`${iFt}/load?${n.toString()}`,s=await dFt(i,{"User-Agent":HL,referer:`${_u}/`});return{callback:r,url:i,status:s.status,headers:s.headers,raw:s.text,data:lFt(s.text)}}async function rFt(e){let t=Lz(e);return t?{width:t.width,height:t.height,channels:t.channels,format:t.format}:null}async function gFt(e,t){let r=Lz(e);if(!r)return{bestX:0,bestScore:0,top:[],width:0,height:0,yStart:0,yEnd:0};let n=Zbn(r),i=Math.max(0,Math.round(t+8)),s=Math.min(n.height,Math.round(t+52)),a={x:-1,score:-1/0},o=[];for(let u=0;u0?n.data[p*n.width+u-1]:m,g=u0?n.data[(p-1)*n.width+u]:m,A=pa.score&&(a={x:u,score:f})}return o.sort((u,c)=>c.score-u.score),{bestX:a.x,bestScore:a.score,top:o.slice(0,10),width:n.width,height:n.height,yStart:i,yEnd:s}}async function yFt(e,t,r){if(!e?.length||!t?.length)return{bestX:0,bestScore:0,top:[]};let n=Lz(e),i=Lz(t);if(!n||!i)return{bestX:0,bestScore:0,top:[]};let s=[];for(let u=0;u10&&s.push([c,u,l])}let a={x:0,score:-1/0},o=[];for(let u=0;u<=n.width-i.width;u+=1){let c=0;for(let[l,d,f]of s){let p=r+d;if(p<0||p>=n.height)continue;let h=(p*n.width+(u+l))*4,m=(n.data[h]+n.data[h+1]+n.data[h+2])/3;c+=(255-m)*(f/255)}o.push({x:u,score:c}),c>a.score&&(a={x:u,score:c})}return o.sort((u,c)=>c.score-u.score),{bestX:a.x,bestScore:a.score,top:o.slice(0,10)}}function tEn(e={}){let t=String(e.lotNumber||""),r=uFt(e.setLeft??e.gapX),n=Number.isFinite(Number(e.passtime))?Number(e.passtime):sFt,i=String(e.powMsg||"");return JSON.stringify({setLeft:r,passtime:n,userresponse:Xbn(r),device_id:"",lot_number:t,pow_msg:i,pow_sign:zbn(i),geetest:"captcha",lang:"zh",ep:"123",biht:Bbn,[$bn]:Fbn,...Wbn(t),em:{...Ubn}})}function fTe(){let e=Gbn();return{supported:!0,reason:"",generate(t={}){let r=tEn(t);if(Number(t.pt||1)!==1)return Qbn(r);let i=Z6t(),s=eFt(e,i);for(;!s||s.length!==256;)i=Z6t(),s=eFt(e,i);return Ybn(r,i)+s}}}async function _Ft(e){let t=cFt(),r=new URLSearchParams({callback:t,captcha_id:e.captchaId,client_type:e.clientType||"web_mobile",lot_number:e.lotNumber,payload:e.payload,process_token:e.processToken,payload_protocol:String(e.payloadProtocol||1),pt:String(e.pt||1),w:e.w}).toString(),n=await fFt(`${iFt}/verify?${r}`,{"User-Agent":HL,referer:`${_u}/`});return{raw:n,data:lFt(n)}}async function pTe(e,t){let r=e.loadData||{},n=String(r.lot_number||""),i=r.pow_detail||{},s=String(r.payload||""),a=String(r.process_token||""),o=Number(r.payload_protocol||1),u=Number(r.pt||1),c=await yFt(e.bgBuffer,e.sliceBuffer,e.ypos),l=[];for(let d of qbn){let f=uFt(c.bestX+d),p=lTe(i,e.captchaId,n),h=t.generate({captchaId:e.captchaId,lotNumber:n,payload:s,processToken:a,payloadProtocol:o,pt:u,setLeft:f,passtime:sFt,powMsg:p}),m=await _Ft({captchaId:e.captchaId,lotNumber:n,payload:s,processToken:a,payloadProtocol:o,pt:u,w:h}),y=m?.data?.data?.result||m?.data?.result||"";if(l.push({delta:d,setLeft:f,powMsg:p,result:y,verify:m.data||null}),y==="success")return{success:!0,templateGap:c,attempts:l,verify:m.data,selected:{delta:d,setLeft:f,powMsg:p}}}return{success:!1,templateGap:c,attempts:l,verify:l.at(-1)?.verify||null,selected:l.at(-1)?{delta:l.at(-1).delta,setLeft:l.at(-1).setLeft,powMsg:l.at(-1).powMsg}:null}}async function hTe(e,t,r){let n=aFt(Date.now()),i={captchaId:r,captchaOutput:t?.seccode?.captcha_output||"",genTime:Number(t?.seccode?.gen_time||0),lotNumber:t?.seccode?.lot_number||"",passToken:t?.seccode?.pass_token||""},s={...Mz,cookie:e.cookie,referer:`${_u}/m/verify`,"x-client-id":e.clientId,"x-verify-token":e.verifyToken||"","Content-Type":"application/json","x-timestamp":n};e.reportId&&e.session&&e.traceId&&(s[e.reportId]=oFt(`${_u}/api/auth/verify`,n,e.session,e.traceId));let a=await $z(()=>_e.post(`${_u}/api/auth/verify`,i,{headers:s,timeout:Bz,validateStatus:()=>!0}));return typeof a.data=="string"?JSON.parse(a.data):a.data}async function rEn(e={}){let t=await dTe(),r=await mTe(t,e),n=fTe(),i=await pTe(r,n);if(!i.success)return{success:!1,token:"",auth:t,prepared:r,solved:i,authVerify:null};let s=await hTe(t,i.verify?.data,r.captchaId),a=String(s?.data?.token||"");return a&&(t.verifyToken=a),{success:!!(s?.data?.verified&&a),token:a,auth:t,prepared:r,solved:i,authVerify:s}}async function mTe(e,t={}){let r=await hFt(e),n=r?.data?.captchaId||"";if(!n)throw new Error("\u672A\u83B7\u53D6\u5230 captchaId");let i=t.challenge||hh.default.randomUUID(),s=await mFt({captchaId:n,challenge:i}),a=s?.data?.data||{},o=a.bg?`https://static.geetest.com/${a.bg}`:"",u=a.slice?`https://static.geetest.com/${a.slice}`:"",c=Number(a.ypos||0),[l,d]=await Promise.all([o?tFt(o,{"User-Agent":HL,referer:`${_u}/`}):Buffer.alloc(0),u?tFt(u,{"User-Agent":HL,referer:`${_u}/`}):Buffer.alloc(0)]),[f,p]=await Promise.all([rFt(l),rFt(d)]),h=l.length?await gFt(l,c):null;return{verifyConfig:r,captchaId:n,challenge:i,load:s,loadData:a,bgUrl:o,sliceUrl:u,ypos:c,bgBuffer:l,sliceBuffer:d,bgMeta:f,sliceMeta:p,gap:h}}function AFt(e){let t=e.loadData||{},r=e.templateGap||{},n=Number.isFinite(Number(e.selectedSetLeft))?Number(e.selectedSetLeft):Number(r.bestX||e.gap?.bestX||0),i=String(e.selectedPowMsg||lTe(t.pow_detail||{},e.captchaId,t.lot_number||""));return{captchaId:e.captchaId,challenge:e.challenge,lotNumber:t.lot_number||"",payload:t.payload||"",processToken:t.process_token||"",payloadProtocol:Number(t.payload_protocol||1),pt:Number(t.pt||1),gapX:n,setLeft:n,ypos:e.ypos,powMsg:i,staticPath:t.static_path||"",gctPath:t.gct_path||""}}async function nEn(){let e=await dTe();console.log("SITE_AUTH",JSON.stringify(e,null,2));let t=await mTe(e);if(console.log("VERIFY_CONFIG",JSON.stringify(t.verifyConfig,null,2)),console.log("GEETEST_LOAD",JSON.stringify(t.load.data,null,2)),!t.load.data)throw console.log("GEETEST_LOAD_RAW",JSON.stringify({status:t.load.status,contentType:t.load.headers?.["content-type"]||"",preview:Jbn(t.load.raw,360)},null,2)),new Error("GeeTest /load \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790");console.log("IMAGE_INFO",JSON.stringify({bgUrl:t.bgUrl,sliceUrl:t.sliceUrl,ypos:t.ypos,bgBytes:t.bgBuffer.length,sliceBytes:t.sliceBuffer.length,bgMeta:t.bgMeta,sliceMeta:t.sliceMeta},null,2)),console.log("GAP",JSON.stringify(t.gap,null,2));let r=fTe();console.log("W_GENERATOR",JSON.stringify({supported:r.supported,reason:r.reason||""},null,2));let n=await pTe(t,r);if(t.templateGap=n.templateGap,t.selectedSetLeft=n.selected?.setLeft??null,t.selectedPowMsg=n.selected?.powMsg??"",console.log("TEMPLATE_GAP",JSON.stringify(n.templateGap,null,2)),console.log("VERIFY_ATTEMPTS",JSON.stringify(n.attempts.map(s=>({delta:s.delta,setLeft:s.setLeft,result:s.result})),null,2)),console.log("GEETEST_VERIFY",JSON.stringify(n.verify,null,2)),!n.success){console.log("VERIFY_READY_PAYLOAD",JSON.stringify({...AFt(t),note:"\u672A\u547D\u4E2D\u6210\u529F offset\uFF0C\u53EF\u6269\u5927\u626B\u63CF\u533A\u95F4\u7EE7\u7EED\u8C03\u8BD5"},null,2));return}let i=await hTe(e,n.verify?.data,t.captchaId);console.log("AUTH_VERIFY",JSON.stringify(i,null,2))}var hh,nFt,_u,iFt,HL,Mz,Pbn,sTe,Mbn,Lbn,Bbn,$bn,Fbn,Ubn,sFt,qbn,Bz,jbn,Hbn,aTe,bFt=ve(()=>{hh=Se(require("crypto"),1);Kt();nFt=Se(X_e(),1),_u="https://film.symx.club",iFt="https://gcaptcha4.geevisit.com",HL="Mozilla/5.0 (Linux; Android 13; 23049RAD8C Build/TQ3A.230901.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/124.0.6367.82 Mobile Safari/537.36",Mz={"User-Agent":HL,"x-platform":"web"},Pbn="00C1E3934D1614465B33053E7F48EE4EC87B14B95EF88947713D25EECBFF7E74C7977D02DC1D9451F79DD5D1C10C29ACB6A9B4D6FB7D0A0279B6719E1772565F09AF627715919221AEF91899CAE08C0D686D748B20A3603BE2318CA6BC2B59706592A9219D0BF05C9F65023A21D2330807252AE0066D59CEEFA5F2748EA80BAB81",sTe="10001",Mbn="0000000000000000",Lbn=.8876*340/300,Bbn="1426265548",$bn="9zXN",Fbn="NYzS",Ubn={ph:0,cp:0,ek:"11",wd:1,nt:0,si:0,sc:0},sFt=419,qbn=[-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],Bz=Number.parseInt(process.env.MUXI_VERIFY_TIMEOUT_MS||"",10)||25e3,jbn=Math.max(0,Number.parseInt(process.env.MUXI_VERIFY_RETRIES||"",10)||1),Hbn=Math.max(200,Number.parseInt(process.env.MUXI_VERIFY_RETRY_DELAY_MS||"",10)||800),aTe=0;process.argv[1]&&/(^|[\/])muxi-geetest-node\.js$/.test(process.argv[1])&&nEn().catch(e=>{console.error("MUXI_GEETEST_NODE_ERROR",e?.stack||e?.message||String(e)),process.exit(1)})});var h5t=b(jE=>{"use strict";Object.defineProperty(jE,"__esModule",{value:!0});jE.removeTrailingChar=jE.merge=void 0;var HSn=(...e)=>{let t={};return e.forEach(function(r){var n;for(n in r)n in t&&t[n]===null?t[n]=r[n]:n in t&&Array.isArray(t[n])?t[n]=t[n].concat(r[n]):n in t&&typeof t[n]=="object"?t[n]=(0,jE.merge)(t[n],r[n]):t[n]=r[n]}),t};jE.merge=HSn;var KSn=(e,t)=>e.length>1&&e.endsWith(t)?e.substring(0,e.length-1):e;jE.removeTrailingChar=KSn});var QC=b(W_=>{"use strict";Object.defineProperty(W_,"__esModule",{value:!0});W_.DataError=W_.DatabaseError=W_.NestedError=void 0;var ZL=class extends Error{inner;id;constructor(t,r,n){super(t),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let t=this.name+": "+this.message;return this.inner?t+`: -`+this.inner:t}};W_.NestedError=ZL;var XTe=class extends ZL{};W_.DatabaseError=XTe;var JTe=class extends ZL{};W_.DataError=JTe});var n2e=b(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.getArrayIndicies=Au.validateArrayIndex=Au.validateArrayIndicies=Au.isInt=Au.ArrayInfo=Au.arrayRegex=void 0;var iQ=QC(),VSn=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;Au.arrayRegex=VSn;var ZTe={},e2e=class e{property;index=0;append=!1;indicies=[];constructor(t,r){this.property=t;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,t2e(n))this.index=parseInt(n);else if(!this.append)throw new iQ.DataError("Only numerical values accepted for array index",200)}static processArray(t){if(typeof t>"u")return null;if(ZTe[t])return ZTe[t];let n=(0,Au.arrayRegex)().exec(t.trim());if(n!=null){let i=n[1],s="["+n[2].toString()+"]",a=r2e(s);return m5t(a),ZTe[t]=new e(i,a)}return null}getIndex(t,r){if(this.append)return-1;let n=this.index;if(n==-1){let i=r?t:t[this.property];return i.length===0?0:i.length-1}return n}getData(t){if(this.append)throw new iQ.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);return n[r]}setData(t,r){if(this.append){let n=t[this.property];this.indicies.forEach(i=>{i!==""&&(i=+i,i===-1&&(i=n.length-1),n=n[+i])}),n.push(r)}else{let{index:n,dataForProperty:i}=this.getArrayDataAndIndexFromProperty(t);n===-1?i.push(r):i[n]=r}}delete(t){if(this.append)throw new iQ.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);n.splice(r,1)}isValid(t){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(t){let r=0,n=t instanceof Array?t:t[this.property]??t;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let i=0;i1}};Au.ArrayInfo=e2e;function t2e(e){return!isNaN(e)&&Number(e)==e&&!isNaN(parseInt(e,10))}Au.isInt=t2e;function m5t(e){let t=e.filter(r=>r==="");if(t.length>1)throw Error("Only one append index is supported for nested arrays");if(t.length===1&&e[e.length-1]!=="")throw Error("Append index must be at the end of the nested array")}Au.validateArrayIndicies=m5t;function g5t(e){if(e.length!==0&&!t2e(e))throw new iQ.DataError("Only numerical values accepted for array index",200)}Au.validateArrayIndex=g5t;function r2e(e){if(e.length===0)return[];if(e.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let t=e.substring(1,e.indexOf("]"));g5t(t);let r=t.length+2;return[t,...r2e(e.substring(r))]}Au.getArrayIndicies=r2e});var A5t=b(sQ=>{"use strict";Object.defineProperty(sQ,"__esModule",{value:!0});sQ.DBParentData=void 0;var y5t=n2e(),_5t=QC(),i2e=class{parent;data;db;dataPath;constructor(t,r,n,i){this.parent=i,this.data=t,this.db=r,this.dataPath=n}checkArray(t=!1){let r=y5t.ArrayInfo.processArray(this.parent);if(r&&(!r.append||t)&&!r.isValid(this.data))throw new _5t.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let t=this.checkArray();return t?t.getData(this.data):this.data[this.parent]}setData(t){if(this.parent===void 0){this.db.resetData(t);return}let r=y5t.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new _5t.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,t)}else this.data[this.parent]=t}delete(){if(this.parent===void 0){this.db.resetData({});return}let t=this.checkArray(!0);t?t.delete(this.data):delete this.data[this.parent]}};sQ.DBParentData=i2e});var b5t=b((Zfi,v5t)=>{v5t.exports=function(){"use strict";function e(){this.readers=0,this.queue=[]}function t(s,a,o){var u;typeof s!="function"?(i.hasOwnProperty(s)||(i[s]=new e),u=i[s]):(o=a,a=s,u=n),o||(o={});var c=null;o.hasOwnProperty("scope")&&(c=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,u.readers--,u.queue.length&&u.queue[0]())}}();if(u.readers<0||u.queue.length){var d=!1;if(u.queue.push(function(){!d&&u.readers>=0&&(d=!0,u.queue.shift(),u.readers++,a.call(c,l),u.queue.length&&u.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,u.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else u.readers++,a.call(o.scope,l)}function r(s,a,o){var u;typeof s!="function"?(i.hasOwnProperty(s)||(i[s]=new e),u=i[s]):(o=a,a=s,u=n),o||(o={});var c=null;o.hasOwnProperty("scope")&&(c=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,u.readers=0,u.queue.length&&u.queue[0]())}}();if(u.readers||u.queue.length){var d=!1;if(u.queue.push(function(){d||u.readers||(d=!0,u.queue.shift(),u.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,u.queue.shift(),f&&f.call(c))},o.timeout)}}else u.readers=-1,a.call(o.scope,l)}var n=new e,i={};this.readLock=t,this.writeLock=r,this.async={readLock:function(s,a,o){typeof s!="function"?t(s,function(u){a.call(this,null,u)},o):(a=s,o=a,t(function(u){a.call(this,null,u)},o))},writeLock:function(s,a,o){typeof s!="function"?r(s,function(u){a.call(this,null,u)},o):(a=s,o=a,r(function(u){a.call(this,null,u)},o))}}}});var E5t=b(aQ=>{"use strict";Object.defineProperty(aQ,"__esModule",{value:!0});aQ.TimeoutError=void 0;var zSn=QC(),s2e=class extends zSn.NestedError{};aQ.TimeoutError=s2e});var I5t=b(GC=>{"use strict";Object.defineProperty(GC,"__esModule",{value:!0});GC.writeLockAsync=GC.readLockAsync=void 0;var QSn=b5t(),S5t=E5t(),w5t=new QSn,GSn=(e,t=null)=>{let r={};return t!=null&&(r={timeout:t}),new Promise((n,i)=>{w5t.readLock(async s=>{try{let a=await e();n(a)}catch(a){i(a)}finally{s()}},{...r,timeoutCallback(){i(new S5t.TimeoutError("Timeout",100))}})})};GC.readLockAsync=GSn;var YSn=(e,t=null)=>{let r={};return t!=null&&(r={timeout:t}),new Promise((n,i)=>{w5t.writeLock(async s=>{try{let a=await e();n(a)}catch(a){i(a)}finally{s()}},{...r,timeoutCallback(){i(new S5t.TimeoutError("Timeout",100))}})})};GC.writeLockAsync=YSn});var o2e=b(oQ=>{"use strict";Object.defineProperty(oQ,"__esModule",{value:!0});oQ.JsonAdapter=void 0;var a2e=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(t,r=!1){this.adapter=t,this.humanReadable=r}replacer(t,r){return r}reviver(t,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let t=await this.adapter.readAsync();return t==null?(await this.writeAsync({}),{}):JSON.parse(t,this.reviver.bind(this))}writeAsync(t){let r="";return this.humanReadable?r=JSON.stringify(t,this.replacer.bind(this),4):r=JSON.stringify(t,this.replacer.bind(this)),this.adapter.writeAsync(r)}};oQ.JsonAdapter=a2e});var c2e=b(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});cQ.FileAdapter=void 0;var uQ=require("fs/promises"),WSn=require("path"),u2e=class{filename;fsync;constructor(t,r){this.filename=t,this.fsync=r}async readAsync(){try{return await(0,uQ.readFile)(this.filename,{encoding:"utf-8"})}catch(t){if(t.code==="ENOENT")return null;throw t}}async writeAsync(t){let r=null;try{r=await(0,uQ.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let i=WSn.dirname(this.filename);await(0,uQ.mkdir)(i,{recursive:!0}),r=await(0,uQ.open)(this.filename,"w")}try{await r.writeFile(t,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};cQ.FileAdapter=u2e});var x5t=b(YC=>{"use strict";Object.defineProperty(YC,"__esModule",{value:!0});YC.ConfigWithAdapter=YC.Config=void 0;var XSn=require("path"),JSn=o2e(),ZSn=c2e(),l2e=class{adapter;filename;saveOnPush;separator;constructor(t,r=!0,n=!1,i="/",s=!1){this.filename=t,XSn.extname(t)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=i,this.adapter=new JSn.JsonAdapter(new ZSn.FileAdapter(this.filename,s),n)}};YC.Config=l2e;var d2e=class{adapter;saveOnPush;separator;constructor(t,r=!0,n="/"){this.adapter=t,this.saveOnPush=r,this.separator=n}};YC.ConfigWithAdapter=d2e});var R5t=b(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.JsonDB=qo.FileAdapter=qo.JsonAdapter=qo.DataError=qo.DatabaseError=qo.ConfigWithAdapter=qo.Config=void 0;var C5t=h5t(),Uo=QC(),ewn=A5t(),twn=n2e(),f2e=I5t(),T5t=x5t();Object.defineProperty(qo,"Config",{enumerable:!0,get:function(){return T5t.Config}});Object.defineProperty(qo,"ConfigWithAdapter",{enumerable:!0,get:function(){return T5t.ConfigWithAdapter}});var N5t=QC();Object.defineProperty(qo,"DatabaseError",{enumerable:!0,get:function(){return N5t.DatabaseError}});Object.defineProperty(qo,"DataError",{enumerable:!0,get:function(){return N5t.DataError}});var rwn=o2e();Object.defineProperty(qo,"JsonAdapter",{enumerable:!0,get:function(){return rwn.JsonAdapter}});var nwn=c2e();Object.defineProperty(qo,"FileAdapter",{enumerable:!0,get:function(){return nwn.FileAdapter}});var p2e=class{loaded=!1;data={};config;constructor(t){this.config=t}processDataPath(t){if(t===void 0||!t.trim())throw new Uo.DataError("The Data Path can't be empty",6);if(t==this.config.separator)return[];t=(0,C5t.removeTrailingChar)(t,this.config.separator);let r=t.split(this.config.separator);return r.shift(),r}async retrieveData(t,r=!1){await this.load();let n=this,i=(s,a)=>{let o=t[a];function u(l=!1){if(s.hasOwnProperty(o))s=s[o];else if(r)l?s[o]=[]:s[o]={},s=s[o];else throw new Uo.DataError(`Can't find dataPath: ${n.config.separator}${t.join(n.config.separator)}. Stopped at ${o}`,5)}let c=twn.ArrayInfo.processArray(o);if(c){if(o=c.property,u(!0),!Array.isArray(s))throw new Uo.DataError(`DataPath: ${n.config.separator}${t.join(n.config.separator)}. ${o} is not an array.`,11);let l=c.getIndex(s,!0);if(!c.append&&s.hasOwnProperty(l))s=c.getData(s);else if(r)c.append?(s.push({}),s=s[s.length-1]):(s[l]={},s=s[l]);else throw new Uo.DataError(`DataPath: ${n.config.separator}${t.join(n.config.separator)}. . Can't find index ${c.index} in array ${o}`,10)}else u();return t.length==++a?s:i(s,a)};return t.length===0?this.data:i(this.data,0)}async getParentData(t,r){let n=this.processDataPath(t),i=n.pop();return new ewn.DBParentData(await this.retrieveData(n,r),this,t,i)}getData(t){return(0,f2e.readLockAsync)(async()=>{let r=this.processDataPath(t);return this.retrieveData(r,!1)})}getObject(t){return this.getData(t)}async getObjectDefault(t,r){try{return await this.getData(t)}catch(n){if(!(n instanceof Uo.DataError)||n.id!=5)throw n;return r}}async exists(t){try{return await this.getData(t),!0}catch(r){if(r instanceof Uo.DataError)return!1;throw r}}async count(t){let r=await this.getData(t);if(!Array.isArray(r))throw new Uo.DataError(`DataPath: ${t} is not an array.`,11);let n=this.processDataPath(t);return(await this.retrieveData(n,!1)).length}async getIndex(t,r,n="id"){return(await this.getArrayData(t)).map(function(s){return s[n]}).indexOf(r)}async getIndexValue(t,r){return(await this.getArrayData(t)).indexOf(r)}async getArrayData(t){let r=await this.getData(t);if(!Array.isArray(r))throw new Uo.DataError(`DataPath: ${t} is not an array.`,11);let n=this.processDataPath(t);return this.retrieveData(n,!1)}async filter(t,r){let n=await this.getData(t);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let s=Object.entries(n).filter(a=>r(a[1],a[0]));return!s||s.length<1?void 0:s.map(a=>a[1])}throw new Uo.DataError("The entry at the path ("+t+") needs to be either an Object or an Array",12)}async find(t,r){let n=await this.getData(t);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let s=Object.entries(n).find(a=>r(a[1],a[0]));return!s||s.length<2?void 0:s[1]}throw new Uo.DataError("The entry at the path ("+t+") needs to be either an Object or an Array",12)}async push(t,r,n=!0){return(0,f2e.writeLockAsync)(async()=>{let i=await this.getParentData(t,!0),s=r;if(!n){if(Array.isArray(r)){let a=i.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new Uo.DataError("Can't merge another type of data with an Array",3);s=a.concat(r)}else if(r===Object(r)){if(Array.isArray(i.getData()))throw new Uo.DataError("Can't merge an Array with an Object",4);s=(0,C5t.merge)(i.getData(),r)}}i.setData(s),this.config.saveOnPush&&await this.save()})}async delete(t){await(0,f2e.writeLockAsync)(async()=>{(await this.getParentData(t,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(t){this.data=t}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(t){throw new Uo.DatabaseError("Can't Load Database",1,t)}}async save(t){if(t=t||!1,!t&&!this.loaded)throw new Uo.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new Uo.DatabaseError("Can't save the database",2,r)}}async fromPath(t,r="id"){let[,...n]=t.split("/"),i=n.reduce((a,o,u)=>{if(u%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),s=[];for await(let a of Object.keys(i)){s.push(`/${a}`);let o=i[a];try{let u=await this.getIndex(s.join(""),o,r);s.push(`[${u}]`)}catch(u){throw new Uo.DataError(`DataPath: ${s.join("")}/${o} not found.`,13,u)}}return s.join("")}};qo.JsonDB=p2e});var Dwn={};ys(Dwn,{start:()=>Nwn,stop:()=>Rwn});module.exports=LUt(Dwn);var X5t=Se(uHe(),1);Yr();var $ie=class{constructor(t=100,r=5*60*1e3){this.maxSize=t,this.ttl=r,this.cache=new Map,this.accessOrder=[]}get(t){let r=this.cache.get(t);return r?Date.now()-r.timestamp>this.ttl?(this.delete(t),null):(this._updateAccessOrder(t),r.value):null}set(t,r){if(this.cache.has(t)&&this.delete(t),this.cache.size>=this.maxSize){let n=this.accessOrder[0];n&&this.delete(n)}this.cache.set(t,{value:r,timestamp:Date.now()}),this.accessOrder.push(t)}delete(t){this.cache.delete(t);let r=this.accessOrder.indexOf(t);r>-1&&this.accessOrder.splice(r,1)}_updateAccessOrder(t){let r=this.accessOrder.indexOf(t);r>-1&&(this.accessOrder.splice(r,1),this.accessOrder.push(t))}clear(){this.cache.clear(),this.accessOrder=[]}get size(){return this.cache.size}cleanup(){let t=Date.now(),r=[];for(let[n,i]of this.cache.entries())t-i.timestamp>this.ttl&&r.push(n);return r.forEach(n=>this.delete(n)),r.length}getStats(){return{size:this.cache.size,maxSize:this.maxSize,ttl:this.ttl,utilizationRate:(this.cache.size/this.maxSize*100).toFixed(2)+"%"}}*entries(){let t=Date.now(),r=[];for(let[n,i]of this.cache.entries()){if(t-i.timestamp>this.ttl){r.push(n);continue}yield[n,i.value]}r.forEach(n=>this.delete(n))}},Gg=$ie;var cze=["\u7F8E\u5267","\u97E9\u5267","\u65E5\u5267","\u53F0\u5267","\u6E2F\u5267","\u6E2F\u53F0\u5267","\u56FD\u4EA7\u5267","\u5927\u9646\u5267","\u5185\u5730\u5267","\u6CF0\u5267","\u82F1\u5267","\u7F8E\u5267\u7248","\u82F1\u5267\u7248","\u65E5\u5267\u7248","\u97E9\u5267\u7248","\u53F0\u5267\u7248","\u6E2F\u5267\u7248","\u6CF0\u5267\u7248","\u5F71\u540E","\u5F71\u5E1D","\u56FD\u5267","\u5FAE\u77ED\u5267","\u77ED\u5267","\u7535\u5F71","\u5267\u96C6","\u7EFC\u827A","\u72AF\u7F6A","\u52A8\u6F2B","\u52A8\u753B","\u7EAA\u5F55\u7247","\u77ED\u7247","\u8FDE\u7EED\u5267","\u7CFB\u5217\u5267","\u7F51\u7EDC\u5267","\u7535\u89C6\u5267"],lze=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"],QSr=[...cze,...lze],RMn=new RegExp(QSr.join("|"),"ig"),DMn=new RegExp(cze.join("|"),"ig");function GSr(e){return String(e).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var YSr=new RegExp(lze.map(GSr).sort((e,t)=>t.length-e.length).join("|"),"ig"),Jh=new Gg(500,60*60*1e3),fF=new Gg(1e3,60*60*1e3),oze={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},uze={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function WSr(e){if(!e)return-1;let t=0,r=0,n=0,i=!1;for(let s=0;sString.fromCharCode(parseInt(p,16))).replace(/<[^>]+>/g,"").replace(/&[a-z]+;/gi,"").trim();let a=t.match(/\[([^\]]+)\]/g);if(a&&a.length>=2){let f=t.replace(/\[([^\]]+)\]/g,"").trim();if(!/[\u4e00-\u9fa5]/.test(f))for(let y of a){let g=y.slice(1,-1);if(/[\u4e00-\u9fa5]/.test(g)&&!/全球|封装|字幕|语言|下载/.test(g)){let v=g;if(v.includes(".")){let A=v.split(".").filter(_=>_.trim());for(let _ of A)if(/[\u4e00-\u9fa5]/.test(_)&&!/全\d+季/.test(_)){v=_.trim();break}}return Jh.set(e,v),v}}let h=a[0].slice(1,-1),m=a[1].slice(1,-1);if(/夸克|百度|迅雷|阿里|天翼|115|下载/.test(h)&&/[\u4e00-\u9fa5]/.test(m))return Jh.set(e,m),m}let o=t.indexOf("|"),u=t.lastIndexOf("|");if(o!==-1&&o!==u){let f=t.substring(o+1,u).trim();return Jh.set(e,f),f}t=t.replace(/[/g,"[").replace(/]/g,"]"),t=t.replace(/\[([^\]]*)\]/g,(f,p)=>/第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+/i.test(p)?f:"").trim(),t=t.replace(/[((].*?[))]/g,"").replace(/【.*?】/g,"").trim(),t=t.replace(/\b\d+(\.\d+)?[GMK]B?\b/gi,"").replace(/\b(2160|1080|720|480)[pP]\b/gi,"").replace(/\b(4K|2K|HDR|HD|SD|FHD|UHD)\b/gi,"").replace(/\bx264|x265|H264|HEVC\b/gi,"").replace(/\bAAC|AC3|DTS|FLAC\b/gi,"").replace(/\b(10bit|8bit|60fps|120fps)\b/gi,"").replace(/\bWEB-DL\b/gi,"").replace(/\bWEB-MKV\b/gi,"").replace(/\bWEB-\b/gi,"").replace(/\bWEB\b/gi,"").replace(/\bREMUX\b/gi,"").replace(/S\d+E\d+(-S\d+E\d+)?/gi,"").replace(/完结\s*\d+\s*集/g,"").replace(/更新\s*\d+\s*集/g,"").replace(/更新至\s*\d+\s*集/g,"").replace(/更至\s*\d+\s*集/g,"").replace(/全\s*\d+\s*集/g,"").replace(/第\s*\d+\s*集/g,"").replace(/最新/g,"").replace(/臻彩/g,"").replace(YSr,"").replace(/[\u200E\u200F\u202A-\u202E]/g,"").replace(/\s+/g," ").trim();let c=t.match(/([\u4e00-\u9fa5]{2,})/);if(c){let f=c[1],p=new RegExp(f+"\\d*"+f,"g");t=t.replace(p,f)}if(t=t.replace(/\d{4}$/g,"").trim(),t=t.replace(/[((][))]/g,"").replace(/【】/g,"").replace(/\[\]/g,"").trim(),t.includes(".")){let f=t.split(".").filter(h=>h.trim()),p="";for(let h of f)if(/[\u4e00-\u9fa5]/.test(h)){p=h.trim();break}if(p){let h=p.match(/全\d+季/);if(h)t=p.substring(0,h.index).trim();else{t=p;for(let m of f){let y=m.match(/^S(\d+)$/i);if(y){t=t+" "+y[0];break}}}}}let l=!1;if(t.includes("-")){let f=t.split("-"),p="";for(let h of f)if(/[\u4e00-\u9fa5]/.test(h)){p=h.trim();break}if(p)if(/第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+/i.test(p))t=p,l=!0;else{let h=t.match(/第[一二三四五六七八九十\d]+季|S(\d+)|Season\s*(\d+)/i);if(h)return t=p+" "+h[0],l=!0,Jh.set(e,t),t;t=p,l=!0}}if(t.includes("/")){let f=t.split("/");for(let p of f)if(/[\u4e00-\u9fa5]/.test(p)){t=p.trim();break}}if(!l&&t.includes(" ")){let f=t.split(" ").filter(m=>m.trim());if(f.length>1&&f[0].length===1&&/[a-zA-Z]/.test(f[0])){let m=f.slice(0,2).join(" ");return Jh.set(e,m),m}if(f.length===2&&/[\u4e00-\u9fa5]/.test(f[0])&&/^(第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+)$/i.test(f[1]))return Jh.set(e,t),t;let p=[],h=!1;for(let m=0;m0?t=p.join(" "):f.length>0&&(t=f[0])}t=t.replace(/[::·.。]+$/,"").replace(/\.全\d+季$/,"").replace(/\.第[一二三四五六七八九十\d]+季$/,"").replace(/\.$/,"").replace(/未删减版$/,"").replace(/无删减版$/,"").replace(/删减版$/,"").replace(/完整版$/,"").replace(/\s+$/,"").trim();let d=t||e;return Jh.set(e,d),d}function XSr(e){if(!e)return"";let t=e,r=t.lastIndexOf(".");return r>0&&(t=t.substring(0,r)),t=t.replace(/\[?\d+(\.\d+)?\s*[GMK]B?\]?/gi," "),t=t.replace(/\b(2160|1080|720|480|360)[pP]\b/gi," ").replace(/\b(4K|2K|HD|SD|FHD|UHD)\b/gi," ").replace(/\b(x264|x265|H\.?264|H\.?265|HEVC|AVC)\b/gi," ").replace(/\b(AAC|AC3|DTS|FLAC|MP3)\b/gi," ").replace(/\b(HDR|DV|Dolby|Atmos)\b/gi," ").replace(/\b(BluRay|WEB-DL|DVDRip|BDRip|HDTV)\b/gi," ").replace(/[\-_.,()\[\]【】]+/g," ").replace(/\s+/g," ").trim(),t}function dze(e,t,r){let n=t;for(;n>0&&/\d/.test(e[n-1]);)n--;return!!(n>1&&e.substring(n-3,n).match(/[0-9]\.[0-9]*$/)||r999||dze(e,r,n))return!1;let s=e.substring(Math.max(0,r-10),r),a=e.substring(n,Math.min(e.length,n+10)),o=/(ep|episode|集|话|章|回|期)/i.test(s+a),u=/(gb|mb|kb|p|k|fps|bitrate|码率)/i.test(s+a);return o?!0:u?!1:i>=1&&i<=99}function ZSr(e,t,r,n){let i=0,s=parseInt(t,10);return s>=1&&s<=99&&(i+=10),r>0&&/[^\w\u4e00-\u9fa5]/.test(e[r-1])&&(i+=5),n=1&&d<=999){let f=c.index+c[0].indexOf(l),p=f+l.length;dze(t,f,p)||n.push({number:String(d),start:f,end:p,priority:100})}}}let s=/(?:^|[^a-zA-Z0-9\u4e00-\u9fa5])(\d{1,3})(?![a-zA-Z0-9\u4e00-\u9fa5])/g;s.lastIndex=0;let a;for(;(a=s.exec(t))!==null;){let o=a[1],u=a.index+a[0].indexOf(o),c=u+o.length;if(JSr(t,o,u,c)){let l=ZSr(t,o,u,c);n.push({number:o,start:u,end:c,priority:l})}}if(n.length===0){let o=/\b(\d{1,3})\b/g;for(o.lastIndex=0;(a=o.exec(r))!==null;){let u=a[1],c=a.index,l=c+u.length,d=parseInt(u,10);d>=1&&d<=999&&!(d>=1900&&d<=2100)&&n.push({number:u,start:c,end:l,priority:1})}}return n.length>0?(n.sort((o,u)=>u.priority-o.priority||u.start-o.start),n[0].number):"-1"}function ewr(e,t){let r=e.length,n=t.length,i=Array(r+1).fill(null).map(()=>Array(n+1).fill(0));for(let s=0;s<=r;s++)i[s][0]=s;for(let s=0;s<=n;s++)i[0][s]=s;for(let s=1;s<=r;s++)for(let a=1;a<=n;a++)e[s-1]===t[a-1]?i[s][a]=i[s-1][a-1]:i[s][a]=Math.min(i[s-1][a]+1,i[s][a-1]+1,i[s-1][a-1]+1);return i[r][n]}function twr(e,t){let r=e.length,n=t.length,i=0,s=0,a=Array(r+1).fill(null).map(()=>Array(n+1).fill(0));for(let o=1;o<=r;o++)for(let u=1;u<=n;u++)e[o-1]===t[u-1]&&(a[o][u]=a[o-1][u-1]+1,a[o][u]>i&&(i=a[o][u],s=o));return e.substring(s-i,s)}function QS(e,t){if(!e||!t)return 0;let r=eh.toLowerCase().replace(/\s+/g,"").trim(),s=i(e),a=i(t);if(s===a)return fF.set(r,1),1;if(s.length===0||a.length===0)return fF.set(r,0),0;let o=ewr(s,a),u=Math.max(s.length,a.length),c=1-o/u,l=s.includes(a)||a.includes(s)?.3:0,f=twr(s,a).length/Math.min(s.length,a.length)*.2,p=Math.min(1,c*.5+l+f);return fF.set(r,p),p}function Fie(e){let t=parseInt(e,10);return isNaN(t)?e:String(t)}function Uie(e,t,r){if(!t||t.length===0)return{episode:null,similarity:0};let n=null,i=0;for(let s of t){let a=zS(s.episodeTitle);if(r&&a===r)return{episode:s,similarity:1};let o=QS(e,s.episodeTitle);if(r&&a!=="-1"){let u=Math.abs(parseInt(a)-parseInt(r)),c=u===0?.5:u<=2?.2:0,l=o+c;l>i&&(i=l,n=s)}else o>i&&(i=o,n=s)}return{episode:n,similarity:i}}var rwr=(e,...t)=>{e==="error"&&console.error(...t)},nwr={info:(...e)=>{},error:(...e)=>rwr("error",...e),debug:(...e)=>{}},Oe=nwr;var hF=1e4,pze=5*60*1e3,iwr=0,swr=.6,awr=60*60*1e3,hze=50,mze=200,jie=new Gg(hze,awr);function av(e,t,r,n=null){let i=n||vl(e);if(!i)return;if(!r||!Array.isArray(r.episodes)){Oe.warn(`[DanmuService] \u5C1D\u8BD5\u8BBE\u7F6E\u65E0\u6548\u504F\u597D: anime \u7F3A\u5C11 episodes \u6570\u7EC4\uFF0Ckey=${i}`);return}let s={animeTitle:r.animeTitle,episodes:r.episodes.map(a=>({episodeId:a.episodeId,episodeTitle:a.episodeTitle}))};jie.set(i,{sourceUrl:t,anime:s}),Oe.info(`[DanmuService] \u504F\u597D\u5DF2\u8BB0\u5F55/\u5237\u65B0: ${i} -> ${t} (\u7F13\u5B58: ${jie.size}/${hze})`)}function fze(e){let t=vl(e);return t?jie.get(t):null}var Hie=class{constructor(){this.cache=new Gg(mze,pze)}_generateKey(t,r,n){return`${encodeURIComponent(n)}:${encodeURIComponent(t)}:${r}`}get(t,r,n){let i=this._generateKey(t,r,n);return this.cache.get(i)}set(t,r,n,i){let s=this._generateKey(t,r,n);this.cache.set(s,i)}cleanup(){return this.cache.cleanup()}clear(){this.cache.clear()}get size(){return this.cache.size}getStats(){return this.cache.getStats()}},pF=new Hie;setInterval(()=>{let e=pF.cleanup();e>0&&Oe.info(`[DanmuService] \u6E05\u7406\u4E86 ${e} \u4E2A\u8FC7\u671F\u7F13\u5B58\u9879`)},pze);async function gze(e,t,r={}){let{timeout:n=hF,retries:i=iwr,signal:s}=r,a=Date.now();try{let o=await Ee.get(`${e.address}/api/v2/search/episodes`,{params:{anime:t},timeout:n,signal:s,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/json"}}),u=Date.now()-a;return o.data.success&&o.data.animes&&o.data.animes.length>0?{success:!0,source:e.name,sourceUrl:e.address,data:o.data,duration:u,error:null}:{success:!1,source:e.name,sourceUrl:e.address,data:null,duration:u,error:"\u672A\u627E\u5230\u5339\u914D\u7ED3\u679C"}}catch(o){let u=Date.now()-a;if(Ee.isCancel(o)){let c=new Error("Aborted");throw c.name="AbortError",c}return i>0&&(o.code==="ECONNABORTED"||o.code==="ETIMEDOUT")?(Oe.info(`[DanmuService] ${e.name} \u8D85\u65F6\uFF0C\u91CD\u8BD5\u4E2D... (\u5269\u4F59${i}\u6B21)`),gze(e,t,{timeout:n,retries:i-1,signal:s})):{success:!1,source:e.name,sourceUrl:e.address,data:null,duration:u,error:o.message||"\u8BF7\u6C42\u5931\u8D25"}}}var qie=5;async function owr(e,t,r={}){let{timeout:n=hF,signal:i}=r;if(!e||e.length===0)throw new Error("\u6CA1\u6709\u53EF\u7528\u7684\u5F39\u5E55\u6E90");if(!t||!t.trim())throw new Error("\u52A8\u6F2B\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A");Oe.info(`[DanmuService] \u{1F50D} \u5F00\u59CB\u641C\u7D22: "${t}", \u6E90\u6570\u91CF: ${e.length}, \u5E76\u53D1\u6570: ${qie}`);let s=[];for(let u=0;ugze(d,t,{timeout:n,signal:i}));try{let d=await Promise.all(l);s=s.concat(d)}catch(d){if(d.name==="AbortError")throw Oe.info("[DanmuService] \u23F9\uFE0F \u641C\u7D22\u88AB\u4E2D\u6B62"),d;Oe.error("[DanmuService] \u274C \u5904\u7406\u5757\u65F6\u53D1\u751F\u9519\u8BEF:",d)}}let a=s.filter(u=>u.success).length,o=s.length-a;return Oe.info(`[DanmuService] \u{1F4CA} \u641C\u7D22\u5B8C\u6210: \u6210\u529F${a}\u4E2A, \u5931\u8D25${o}\u4E2A`),s}async function uwr(e,t,r,n={}){let{timeout:i=hF,useCache:s=!0,minSimilarity:a=swr,signal:o}=n,u=vl(e);if(!u||u==="undefined"||e==="undefined")throw Oe.error(`[DanmuService] \u274C \u6807\u9898\u65E0\u6548: vodName="${e}", title="${u}"`),new Error("\u65E0\u6CD5\u8BC6\u522B\u89C6\u9891\u6807\u9898\uFF0C\u8BF7\u68C0\u67E5\u89C6\u9891\u6E90");Oe.info(`[DanmuService] \u{1F50D} \u5339\u914D\u5F39\u5E55: vodName="${e}", \u63D0\u53D6\u6807\u9898="${u}", \u96C6\u6570="${t}"`);let c=fze(u);if(c){Oe.info(`[DanmuService] \u2B50 \u53D1\u73B0\u504F\u597D\u6E90: ${c.sourceUrl}`);let g=c.anime,v=QS(u,g.animeTitle);if(Oe.info(`[DanmuService] \u{1F50D} \u504F\u597D\u6E90\u6807\u9898\u76F8\u4F3C\u5EA6: ${v.toFixed(4)} (\u5F53\u524D="${u}", \u504F\u597D="${g.animeTitle}")`),v<.5)Oe.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u6807\u9898\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\uFF0C\u8DF3\u8FC7\u504F\u597D\u6E90\uFF0C\u56DE\u9000\u5230\u5168\u91CF\u641C\u7D22");else{Oe.info(`[DanmuService] \u{1F50D} \u5C1D\u8BD5\u5728\u504F\u597D\u6E90\u4E2D\u5339\u914D\u96C6\u6570 (\u5171 ${g.episodes?.length||0} \u96C6)...`);let A=0;for(let C of g.episodes){let I=zS(C.episodeTitle),N=Fie(I),T=Fie(t);if(A++,A<=3&&(Oe.info(`[DanmuService] [\u7CBE\u786E\u5339\u914D ${A}] "${C.episodeTitle}"`),Oe.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${I}, \u6807\u51C6\u5316: ${N}, \u76EE\u6807: ${T}`)),N===T)return Oe.info(`[DanmuService] \u2705 \u504F\u597D\u6E90\u7CBE\u786E\u5339\u914D\u96C6\u6570 ${t} (\u6807\u51C6\u5316: ${N})`),av(u,c.sourceUrl,g),{success:!0,source:c.sourceUrl,sourceUrl:c.sourceUrl,anime:g,episode:C,similarity:1,fromPreference:!0}}Oe.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u7CBE\u786E\u5339\u914D\u5931\u8D25\uFF0C\u5C1D\u8BD5\u76F8\u4F3C\u5EA6\u5339\u914D...");let{episode:_,similarity:E,matchDetails:S}=Uie(u,g.episodes,t);if(S&&S.length>0){let C=S.sort((I,N)=>N.score-I.score).slice(0,3);Oe.info("[DanmuService] \u524D3\u4E2A\u5019\u9009\u96C6 (\u6309\u5F97\u5206\u6392\u5E8F):"),C.forEach((I,N)=>{Oe.info(`[DanmuService] [${N+1}] "${I.title}"`),Oe.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${I.extractedNum}, \u76F8\u4F3C\u5EA6: ${I.similarity.toFixed(4)}, \u5F97\u5206: ${I.score.toFixed(4)}`)})}if(_)return Oe.info(`[DanmuService] \u2705 \u504F\u597D\u6E90\u76F8\u4F3C\u5EA6\u5339\u914D\u6210\u529F: "${_.episodeTitle}", \u76F8\u4F3C\u5EA6=${E.toFixed(4)}`),av(u,c.sourceUrl,g),{success:!0,source:c.sourceUrl,sourceUrl:c.sourceUrl,anime:g,episode:_,similarity:E,fromPreference:!0};Oe.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u4E2D\u672A\u627E\u5230\u5339\u914D\uFF0C\u56DE\u9000\u5230\u5168\u91CF\u641C\u7D22")}}if(s)for(let g of r){let v=pF.get(u,t,g.address);if(v){let A=fze(u);if(A&&A.sourceUrl!==g.address){Oe.info(`[DanmuService] \u23ED\uFE0F \u7F13\u5B58\u6E90 ${g.address} \u4E0E\u504F\u597D\u6E90 ${A.sourceUrl} \u4E0D\u540C\uFF0C\u8DF3\u8FC7\u7F13\u5B58`);continue}return Oe.info(`[DanmuService] \u{1F4BE} \u547D\u4E2D\u7F13\u5B58: ${g.name}`),av(u,g.address,v.anime),{success:!0,source:g.name,sourceUrl:g.address,anime:v.anime,episode:v.episode,similarity:v.similarity,fromCache:!0}}}Oe.info("[DanmuService] \u{1F310} \u5F00\u59CB\u5168\u91CF\u641C\u7D22...");let l=await owr(r,u,{timeout:i,signal:o});Oe.info("[DanmuService] \u{1F4CB} \u641C\u7D22\u7ED3\u679C\u8BE6\u60C5:");for(let g of l)g.success&&g.data.animes?(Oe.info(`[DanmuService] \u2705 ${g.source}: \u627E\u5230 ${g.data.animes.length} \u4E2A\u52A8\u6F2B`),g.data.animes.forEach((v,A)=>{Oe.info(`[DanmuService] [${A+1}] "${v.animeTitle}" (${v.episodes?.length||0} \u96C6)`)})):Oe.info(`[DanmuService] \u274C ${g.source}: ${g.error||"\u672A\u77E5\u9519\u8BEF"}`);let d=null,f=0,p=null,h=0,m=0,y=0;Oe.info(`[DanmuService] \u{1F50D} \u5F00\u59CB\u5339\u914D\u5206\u6790 (\u76EE\u6807: "${u}", \u96C6\u6570: "${t}", \u6700\u5C0F\u76F8\u4F3C\u5EA6: ${a}):`);for(let g of l)if(!(!g.success||!g.data.animes))for(let v of g.data.animes){h++;let A=v.animeTitle.replace(/\(\d{4}\)/g,"").replace(/【[^】]*】/g,"").replace(/\[[^\]]*\]/g,"").replace(/\s*from\s+\w+/gi,"").replace(/第(\d+)季/g,(N,T)=>{let k=["","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341"],O=parseInt(T);return O<=10?`\u7B2C${k[O]}\u5B63`:N}).trim(),_=QS(u,A);if(Oe.info(`[DanmuService] [\u5C1D\u8BD5 ${h}] \u6E90="${g.source}", \u52A8\u6F2B="${v.animeTitle}"`),Oe.info(`[DanmuService] \u6E05\u7406\u540E\u6807\u9898: "${A}"`),Oe.info(`[DanmuService] \u6807\u9898\u76F8\u4F3C\u5EA6: ${_.toFixed(4)} (\u9608\u503C: ${a})`),_0){let N=C.sort((T,k)=>k.score-T.score).slice(0,5);Oe.info("[DanmuService] \u524D5\u4E2A\u5019\u9009\u96C6 (\u6309\u5F97\u5206\u6392\u5E8F):"),N.forEach((T,k)=>{Oe.info(`[DanmuService] [${k+1}] "${T.title}"`),Oe.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${T.extractedNum}, \u6807\u51C6\u5316: ${T.normalizedNum}, \u76EE\u6807: ${T.normalizedTargetEpisode||"N/A"}`),Oe.info(`[DanmuService] \u76F8\u4F3C\u5EA6: ${T.similarity.toFixed(4)}, \u5F97\u5206: ${T.score.toFixed(4)}`),T.episodeDiff!==void 0&&Oe.info(`[DanmuService] \u96C6\u6570\u5DEE: ${T.episodeDiff}, \u5956\u52B1: ${T.episodeBonus}`)})}continue}let I=_*.6+S*.4;Oe.info(`[DanmuService] \u2705 \u627E\u5230\u5339\u914D\u96C6: "${E.episodeTitle}"`),Oe.info(`[DanmuService] \u96C6\u6570\u76F8\u4F3C\u5EA6: ${S.toFixed(4)}, \u7EFC\u5408\u76F8\u4F3C\u5EA6: ${I.toFixed(4)}`),I>f?(f=I,d={anime:v,episode:E},p=g,Oe.info("[DanmuService] \u{1F31F} \u5F53\u524D\u6700\u4F73\u5339\u914D\u5DF2\u66F4\u65B0")):Oe.info(`[DanmuService] \u7EFC\u5408\u76F8\u4F3C\u5EA6\u4F4E\u4E8E\u5F53\u524D\u6700\u4F73 (${f.toFixed(4)})\uFF0C\u8DF3\u8FC7`)}return Oe.info(`[DanmuService] \u{1F4CA} \u5339\u914D\u7EDF\u8BA1: \u603B\u5C1D\u8BD5=${h}, \u6807\u9898\u8FC7\u6EE4=${m}, \u96C6\u6570\u8FC7\u6EE4=${y}`),d?(av(u,p.sourceUrl,d.anime),s&&pF.set(u,t,p.sourceUrl,{anime:d.anime,episode:d.episode,similarity:f}),Oe.info(`[DanmuService] \u2705 \u5339\u914D\u6210\u529F: ${d.anime.animeTitle} - ${d.episode.episodeTitle} (\u76F8\u4F3C\u5EA6: ${f.toFixed(2)}, \u7F13\u5B58: ${pF.size}/${mze})`),{success:!0,source:p.source,sourceUrl:p.sourceUrl,anime:d.anime,episode:d.episode,similarity:f,fromCache:!1}):(Oe.error("[DanmuService] \u274C \u672A\u627E\u5230\u5339\u914D\u7684\u5F39\u5E55"),Oe.error(`[DanmuService] \u8F93\u5165\u6458\u8981: vodName="${e}", \u63D0\u53D6\u6807\u9898="${u}", \u96C6\u6570="${t}"`),Oe.error("[DanmuService] \u53EF\u80FD\u539F\u56E0:"),Oe.error(`[DanmuService] 1. \u6807\u9898\u76F8\u4F3C\u5EA6\u8FC7\u4F4E (\u8FC7\u6EE4\u4E86 ${m} \u4E2A)`),Oe.error(`[DanmuService] 2. \u96C6\u6570\u4E0D\u5339\u914D (\u8FC7\u6EE4\u4E86 ${y} \u4E2A)`),Oe.error("[DanmuService] 3. \u5F39\u5E55\u6E90\u4E2D\u6CA1\u6709\u8BE5\u5267\u96C6"),{success:!1,error:"\u672A\u5339\u914D\u5230\u5F39\u5E55",searchResults:l})}async function yze(e,t,r,n={}){let i=await uwr(e,t,r,n);if(!i.success)return i;let s=`${i.sourceUrl}/api/v2/comment/${i.episode.episodeId}?format=xml`;return{...i,danmuUrl:s,matchInfo:{animeTitle:i.anime.animeTitle,episodeTitle:i.episode.episodeTitle,similarity:i.similarity}}}async function _ze(e,t={}){let{timeout:r=hF,signal:n}=t;try{Oe.info(`[DanmuService] \u{1F4E5} \u83B7\u53D6\u5F39\u5E55XML: ${e}`);let i=await Ee.get(e,{responseType:"text",timeout:r,signal:n,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/xml"}});return Oe.info("[DanmuService] \u2705 \u5F39\u5E55XML\u83B7\u53D6\u6210\u529F"),i.data}catch(i){if(Ee.isCancel(i)){let s=new Error("Aborted");throw s.name="AbortError",s}throw Oe.error(`[DanmuService] \u274C \u83B7\u53D6\u5F39\u5E55XML\u5931\u8D25: ${i.message}`),new Error(`\u83B7\u53D6\u5F39\u5E55\u5185\u5BB9\u5931\u8D25: ${i.message}`)}}var mF=new Map;function Aze(e,t,r=10*60*1e3){mF.set(e,t),setTimeout(()=>{mF.delete(e)},r)}function vze(){return mF.entries()}function gF(){return mF.size}function cwr(e){let t=[];if(!e)return t.push("\u914D\u7F6E\u4E0D\u80FD\u4E3A\u7A7A"),{valid:!1,errors:t};if(!e.address||typeof e.address!="string")t.push("address \u5B57\u6BB5\u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");else try{let r=new URL(e.address);["http:","https:"].includes(r.protocol)||t.push("address \u5FC5\u987B\u662F http \u6216 https \u534F\u8BAE")}catch{t.push("address \u4E0D\u662F\u6709\u6548\u7684 URL")}return e.name!==void 0&&typeof e.name!="string"&&t.push("name \u5B57\u6BB5\u5FC5\u987B\u662F\u5B57\u7B26\u4E32"),e.enabled!==void 0&&typeof e.enabled!="boolean"&&t.push("enabled \u5B57\u6BB5\u5FC5\u987B\u662F\u5E03\u5C14\u503C"),e.priority!==void 0&&(typeof e.priority!="number"||e.priority<0)&&t.push("priority \u5B57\u6BB5\u5FC5\u987B\u662F\u975E\u8D1F\u6570"),e.timeout!==void 0&&(typeof e.timeout!="number"||e.timeout<1e3||e.timeout>3e4)&&t.push("timeout \u5B57\u6BB5\u5FC5\u987B\u5728 1000-30000 \u4E4B\u95F4"),{valid:t.length===0,errors:t}}function bze(e){let t=[];return e?(!e.urls||!Array.isArray(e.urls)?t.push("urls \u5B57\u6BB5\u5FC5\u987B\u662F\u6570\u7EC4"):(e.urls.length===0&&t.push("\u81F3\u5C11\u9700\u8981\u914D\u7F6E\u4E00\u4E2A\u5F39\u5E55\u6E90"),e.urls.forEach((r,n)=>{let i=cwr(r);i.valid||t.push(`\u6E90 #${n+1}: ${i.errors.join(", ")}`)})),e.autoPush!==void 0&&typeof e.autoPush!="boolean"&&t.push("autoPush \u5B57\u6BB5\u5FC5\u987B\u662F\u5E03\u5C14\u503C"),e.autoPushBlacklist!==void 0&&(Array.isArray(e.autoPushBlacklist)?e.autoPushBlacklist.forEach((r,n)=>{typeof r!="string"&&t.push(`autoPushBlacklist[${n}] \u5FC5\u987B\u662F\u5B57\u7B26\u4E32`)}):t.push("autoPushBlacklist \u5B57\u6BB5\u5FC5\u987B\u662F\u6570\u7EC4")),{valid:t.length===0,errors:t}):(t.push("\u914D\u7F6E\u4E0D\u80FD\u4E3A\u7A7A"),{valid:!1,errors:t})}function lwr(e){return{address:e.address.trim().replace(/\/$/,""),name:e.name||new URL(e.address).hostname,enabled:e.enabled!==!1,priority:e.priority||0,timeout:e.timeout||5e3}}function Eze(e){let t={urls:e.urls.map(lwr),autoPush:e.autoPush!==!1,autoPushBlacklist:e.autoPushBlacklist||[]};return t.urls.sort((r,n)=>n.priority-r.priority),t}var NAt=Se(require("net"),1),sb=Se(require("path"),1),Rge=Se(require("fs"),1);var rU=9321,RAt=15e3,LBr=300,BBr=process.env.NODE_PATH?sb.default.resolve(process.env.NODE_PATH):process.cwd();function nU(){return BBr}function $Br(e){if(typeof Oe?.warn=="function"){Oe.warn(e);return}if(typeof Oe?.info=="function"){Oe.info(e);return}console.warn(e)}function DAt(){return sb.default.join(nU(),"runtime","danmu_api","config",".env")}function FBr(){return sb.default.join(nU(),"runtime","danmu_api","run","danmu_api.status.json")}function kAt(e){let t=FBr();Rge.default.mkdirSync(sb.default.dirname(t),{recursive:!0}),Rge.default.writeFileSync(t,JSON.stringify(e,null,2),"utf8")}function UBr(e){return new Promise(t=>setTimeout(t,e))}async function OAt(e=rU,t="127.0.0.1",r=1200){return await new Promise(n=>{let i=NAt.default.createConnection({host:t,port:e}),s=!1,a=o=>{if(!s){s=!0;try{i.destroy()}catch{}n(o)}};i.setTimeout(r),i.once("connect",()=>a(!0)),i.once("timeout",()=>a(!1)),i.once("error",()=>a(!1))})}async function qBr(e=rU,t=RAt){let r=Date.now();for(;Date.now()-r(TAt(),CAt)),n=await r({host:"127.0.0.1",proxyHost:"127.0.0.1",port:e});return kAt({pid:process.pid,port:n.port||e,proxyPort:n.proxyPort||5321,envPath:t,startedAt:new Date().toISOString(),entry:sb.default.join(nU(),"vendor","danmu_api","danmu_api","server.js"),state:"running",mode:"in-process"}),n}async function ab(e={}){let t=Number(e.port||rU),r=Number(e.timeoutMs||RAt);return await OAt(t)?(kAt({pid:process.pid,port:t,envPath:DAt(),startedAt:new Date().toISOString(),entry:sb.default.join(nU(),"vendor","danmu_api","danmu_api","server.js"),state:"running",mode:"attached"}),{ok:!0,started:!1,port:t}):($Br(`[DanmuRuntime] \u68C0\u6D4B\u5230 danmu_api \u672A\u76D1\u542C\uFF0C\u51C6\u5907\u62C9\u8D77: port=${t}`),await jBr(t),await qBr(t,r)?(Oe.info(`[DanmuRuntime] danmu_api \u5DF2\u5C31\u7EEA: port=${t}`),{ok:!0,started:!0,port:t}):(Oe.error(`[DanmuRuntime] danmu_api \u542F\u52A8\u540E\u4ECD\u672A\u76D1\u542C: port=${t}, timeout=${r}ms`),{ok:!1,started:!0,port:t}))}var HBr={toast:1500,danmuPush:1200,clearDanmu:1200,serverStarted:1e4,queryProfile:3e3,saveProfile:5e3},Rp={cooldownUntil:0,inflight:new Map,recent:new Map};function PAt(){return typeof globalThis<"u"&&typeof globalThis.messageToDart=="function"?globalThis.messageToDart:null}function KBr(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return String(e);try{return JSON.stringify(e)}catch{return String(e)}}function VBr(e,t={}){return`${e}:${KBr(t)}`}function zBr(){return Date.now()0&&a&&a.expiresAt>n)return a.result;if(Rp.inflight.has(i))return Rp.inflight.get(i);if(zBr()&&e!=="getPlayInfo")return null;let o=(async()=>{try{let u=await r({action:e,...t});return s>0&&Rp.recent.set(i,{result:u,expiresAt:Date.now()+s}),u}catch(u){let c=u?.message||"",l=u?.code||"";return(l==="ECONNABORTED"||l==="ECONNRESET"||l==="ECONNREFUSED"||c.includes("timeout")||c.includes("socket hang up"))&&QBr(),console.warn(`[HostBridge] ${e} \u8C03\u7528\u5F02\u5E38:`,c||u),null}finally{Rp.inflight.delete(i)}})();return Rp.inflight.set(i,o),o}var Xr={isAvailable(){return!!PAt()},async toast(e,t={}){let r=Number.isFinite(t.duration)?t.duration:2;return Np("toast",{opt:{message:String(e??""),duration:r}})},async getPlayInfo(){return Np("getPlayInfo")},async pushDanmu(e,t={}){return Np("danmuPush",{opt:{url:e,...t}})},async clearDanmu(){let e=[()=>Np("danmuPush",{opt:{url:""}}),()=>Np("danmuPush",{opt:{url:null}}),()=>Np("clearDanmu")];for(let t of e){let r=await t();if(r!=null)return r}return null},async queryProfile(){return Np("queryProfile")},async saveProfile(e){return Np("saveProfile",{opt:e})},async notifyServerStarted(e){return Np("serverStarted",{opt:{address:e}})},async dispatch(e,t){return Np(e,t||{})}};var iU={updatedAt:0,spiderKey:"",flag:"",id:"",episodeKey:"",vodName:"",episodeName:"",episodeNumber:"",title:""};function MAt(e={}){return iU={...iU,...e,updatedAt:Date.now()},iU}function Ay(){return{...iU}}function LAt(e,t="/"){let r=String(e||"").trim(),n=String(t||"/").trim()||"/";if(!r)throw new Error("invalid danmu source");let i;try{i=new URL(r)}catch{throw new Error(`invalid danmu source: ${r}`)}let s=n.startsWith("/")?n:`/${n}`;return new URL(s,`${i.origin}/`).toString()}var $g=async e=>await e.db.getObjectDefault("/danmu")||e.config.danmu,cHe=async(e,t)=>{let r=bze(t);if(!r.valid)throw new Error(`\u914D\u7F6E\u9A8C\u8BC1\u5931\u8D25: ${r.errors.join("; ")}`);let n=Eze(t);await e.db.push("/danmu",n)},lHe=async e=>{await e.db.delete("/danmu")};async function O6(e){e.get("/setting",async(t,r)=>{r.send({code:0,data:await $g(t.server)})}),e.put("/setting",async(t,r)=>{try{await cHe(t.server,t.body),r.send({code:0,message:"\u914D\u7F6E\u4FDD\u5B58\u6210\u529F"})}catch(n){r.send({code:1,message:n.message})}}),e.delete("/setting",async(t,r)=>{await lHe(t.server),r.send({code:0})}),e.get("/search",async(t,r)=>{let n=Date.now(),{source:i,anime:s}=t.query||{};try{if(!i||!s)return Oe.warn(`[DanmuManualSearch] \u7F3A\u5C11\u53C2\u6570: source="${i||""}", anime="${s||""}"`),r.code(400).send({success:!1,message:"missing source or anime"});let a=LAt(i,"/api/v2/search/episodes");await ab(),Oe.info(`[DanmuManualSearch] \u8BF7\u6C42\u5F00\u59CB: anime="${s}", source="${i}", target="${a}"`);let u=await(await Promise.resolve().then(()=>(Yr(),dF))).default.get(a,{params:{anime:s},timeout:15e3,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/json"}}),c=Array.isArray(u?.data?.animes)?u.data.animes:[],l=c.slice(0,5).map(d=>d?.animeTitle).filter(Boolean);Oe.info(`[DanmuManualSearch] \u8BF7\u6C42\u6210\u529F: anime="${s}", source="${i}", status=${u.status}, success=${u?.data?.success}, animes=${c.length}, duration=${Date.now()-n}ms, preview=${JSON.stringify(l)}`),r.send(u.data)}catch(a){let o=a?.response?.status||502,u=a?.response?.data;Oe.error(`[DanmuManualSearch] \u8BF7\u6C42\u5931\u8D25: anime="${s||""}", source="${i||""}", status=${o}, duration=${Date.now()-n}ms, message="${a.message||"danmu search proxy failed"}", response=${typeof u=="string"?u.slice(0,300):JSON.stringify(u||{})}`),r.code(o).send({success:!1,message:a.message||"danmu search proxy failed"})}}),e.get("/comment",async(t,r)=>{let n=Date.now(),{source:i,episodeId:s,format:a="xml"}=t.query||{};try{if(!i||!s)return Oe.warn(`[DanmuManualComment] \u7F3A\u5C11\u53C2\u6570: source="${i||""}", episodeId="${s||""}", format="${a}"`),r.code(400).send({code:1,message:"missing source or episodeId"});let o=LAt(i,`/api/v2/comment/${s}`);await ab(),Oe.info(`[DanmuManualComment] \u8BF7\u6C42\u5F00\u59CB: source="${i}", episodeId="${s}", format="${a}", target="${o}"`);let c=await(await Promise.resolve().then(()=>(Yr(),dF))).default.get(o,{params:{format:a},responseType:"text",timeout:1e4,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/xml,text/plain,*/*"}}),l=typeof c.data=="string"?c.data.length:0,d=typeof c.data=="string"?(c.data.match(//g)||[]).length:0;Oe.info(`[DanmuManualComment] \u8BF7\u6C42\u6210\u529F: source="${i}", episodeId="${s}", status=${c.status}, xmlLength=${l}, danmuCount=${d}, duration=${Date.now()-n}ms`),r.type("application/xml; charset=utf-8").send(c.data)}catch(o){let u=o?.response?.status||502,c=o?.response?.data;Oe.error(`[DanmuManualComment] \u8BF7\u6C42\u5931\u8D25: source="${i||""}", episodeId="${s||""}", status=${u}, duration=${Date.now()-n}ms, message="${o.message||"danmu comment proxy failed"}", response=${typeof c=="string"?c.slice(0,300):JSON.stringify(c||{})}`),r.code(u).send({code:1,message:o.message||"danmu comment proxy failed"})}}),e.get("/current-play",async(t,r)=>{r.send({code:0,data:Ay()})}),e.post("/push",async(t,r)=>{let{url:n,sourceUrl:i,anime:s,title:a,flag:o,id:u}=t.body,c=Date.now(),l=0;Oe.info(`[DanmuManualPush] \u6536\u5230\u63A8\u9001\u8BF7\u6C42: title="${a||""}", sourceUrl="${i||""}", animeTitle="${s?.animeTitle||""}", episodes=${s?.episodes?.length||0}, flag="${o||""}", id="${u||""}", url="${n||""}"`),av(a,i,s,a);let d=gF();if(Oe.info(`[DanmuManualPush] autoPushContext \u5927\u5C0F: ${d}`),d>0)for(let[f,p]of vze()){let h=QS(a,p.rawTitle);h>=.5&&(Oe.info(`[DanmuManualPush] \u547D\u4E2D autoPushContext: ctxKey="${f}", rawTitle="${p.rawTitle}", autoKey="${p.autoKey}", score=${h.toFixed(4)}`),av(p.autoKey,i,s))}try{let f=(await Promise.resolve().then(()=>(Yr(),dF))).default,p=/^https?:\/\//i.test(n)?n:`http://127.0.0.1:${t.server.address().port}${n.startsWith("/")?n:`/${n}`}`,y=(await f.get(p,{responseType:"text",timeout:1e4,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/xml"}})).data.match(//g),g=y?y.length:0;Oe.info(`[DanmuManualPush] \u83B7\u53D6\u5F39\u5E55\u6210\u529F: title="${a||""}", sourceUrl="${i||""}", xmlUrl="${p||n||""}", danmuCount=${g}, duration=${Date.now()-c}ms`),Oe.info(`[DanmuManualPushFlow] \u51C6\u5907\u63A8\u9001\u5230\u64AD\u653E\u5668: title="${a||""}", url="${p||n||""}", danmuCount=${g}`),Xr.pushDanmu(p),Xr.toast(`\u5F39\u5E55\u63A8\u9001\u6210\u529F\uFF08${g}\u6761\uFF09`,{duration:2}),Oe.info(`[DanmuManualPushFlow] \u5DF2\u53D1\u9001 danmuPush/toast: title="${a||""}", danmuCount=${g}`)}catch(f){let p=/^https?:\/\//i.test(n)?n:`http://127.0.0.1:${t.server.address().port}${n.startsWith("/")?n:`/${n}`}`,h=f?.response?.status;return console.error("[ManualPush] \u83B7\u53D6\u5F39\u5E55\u5931\u8D25:",f.message),Oe.error(`[DanmuManualPush] \u83B7\u53D6\u5F39\u5E55\u5931\u8D25: title="${a||""}", sourceUrl="${i||""}", xmlUrl="${p||n||""}", duration=${Date.now()-c}ms, message="${f.message}"`),Xr.pushDanmu(p),Xr.toast(h===429?"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5":`\u5F39\u5E55\u83B7\u53D6\u5931\u8D25: ${f.message}`,{duration:2}),r.send({code:h===429?429:1,danmuCount:0,message:h===429?"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5":f.message||"\u5F39\u5E55\u83B7\u53D6\u5931\u8D25"})}r.send({code:0,danmuCount:l})}),e.get("/bundle.js",(t,r)=>{r.type("application/javascript; charset=utf-8").send(globalThis.danmuBundle||"")}),e.get("/fe",(t,r)=>{r.type("text/html").send(` +`),i=s?"+":n?"":"-";return r+i+` +`}function BHt(e){return e[e.length-1]===` +`?e.slice(0,-1):e}function UIn(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var u=e.indexOf(` +`);return u=u!==-1?u:e.length,r.lastIndex=u,UHt(e.slice(0,u),t)}(),s=e[0]===` +`||e[0]===" ",i,a;a=r.exec(e);){var o=a[1],c=a[2];i=c[0]===" ",n+=o+(!s&&!i&&c!==""?` +`:"")+UHt(c,t),s=i}return n}function UHt(e,t){if(e===""||e[0]===" ")return e;for(var r=/ [^ ]/g,n,s=0,i,a=0,o=0,c="";n=r.exec(e);)o=n.index,o-s>t&&(i=a>s?a:o,c+=` +`+e.slice(s,i),s=i+1),a=o;return c+=` +`,e.length-s>t&&a>s?c+=e.slice(s,a)+` +`+e.slice(a+1):c+=e.slice(s),c.slice(1)}function FIn(e){for(var t="",r=0,n,s=0;s=65536?s+=2:s++)r=a3(e,s),n=Tc[r],!n&&u3(r)?(t+=e[s],r>=65536&&(t+=e[s+1])):t+=n||NIn(r);return t}function $In(e,t,r){var n="",s=e.tag,i,a,o;for(i=0,a=r.length;i"u"&&y_(e,t,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=s,e.dump="["+n+"]"}function FHt(e,t,r,n){var s="",i=e.tag,a,o,c;for(a=0,o=r.length;a"u"&&y_(e,t+1,null,!0,!0,!1,!0))&&((!n||s!=="")&&(s+=J2e(e,t)),e.dump&&o3===e.dump.charCodeAt(0)?s+="-":s+="- ",s+=e.dump);e.tag=i,e.dump=s||"[]"}function qIn(e,t,r){var n="",s=e.tag,i=Object.keys(r),a,o,c,u,l;for(a=0,o=i.length;a1024&&(l+="? "),l+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),y_(e,t,u,!1,!1)&&(l+=e.dump,n+=l));e.tag=s,e.dump="{"+n+"}"}function HIn(e,t,r,n){var s="",i=e.tag,a=Object.keys(r),o,c,u,l,d,f;if(e.sortKeys===!0)a.sort();else if(typeof e.sortKeys=="function")a.sort(e.sortKeys);else if(e.sortKeys)throw new l3("sortKeys must be a boolean or a function");for(o=0,c=a.length;o1024,d&&(e.dump&&o3===e.dump.charCodeAt(0)?f+="?":f+="? "),f+=e.dump,d&&(f+=J2e(e,t)),y_(e,t+1,l,!0,d)&&(e.dump&&o3===e.dump.charCodeAt(0)?f+=":":f+=": ",f+=e.dump,s+=f));e.tag=i,e.dump=s||"{}"}function $Ht(e,t,r){var n,s,i,a,o,c;for(s=r?e.explicitTypes:e.implicitTypes,i=0,a=s.length;i tag resolver accepts not "'+c+'" style');e.dump=n}return!0}return!1}function y_(e,t,r,n,s,i,a){e.tag=null,e.dump=r,$Ht(e,r,!1)||$Ht(e,r,!0);var o=qHt.call(e.dump),c=n,u;n&&(n=e.flowLevel<0||e.flowLevel>t);var l=o==="[object Object]"||o==="[object Array]",d,f;if(l&&(d=e.duplicates.indexOf(r),f=d!==-1),(e.tag!==null&&e.tag!=="?"||f||e.indent!==2&&t>0)&&(s=!1),f&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(l&&f&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),o==="[object Object]")n&&Object.keys(e.dump).length!==0?(HIn(e,t,e.dump,s),f&&(e.dump="&ref_"+d+e.dump)):(qIn(e,t,e.dump),f&&(e.dump="&ref_"+d+" "+e.dump));else if(o==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!a&&t>0?FHt(e,t-1,e.dump,s):FHt(e,t,e.dump,s),f&&(e.dump="&ref_"+d+e.dump)):($In(e,t,e.dump),f&&(e.dump="&ref_"+d+" "+e.dump));else if(o==="[object String]")e.tag!=="?"&&BIn(e,e.dump,t,i,c);else{if(o==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new l3("unacceptable kind of an object to dump "+o)}e.tag!==null&&e.tag!=="?"&&(u=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",e.dump=u+" "+e.dump)}return!0}function VIn(e,t){var r=[],n=[],s,i;for(eDe(e,r,n),s=0,i=n.length;s{"use strict";var eVt=DHt(),KIn=ZHt();function rDe(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}lu.exports.Type=Sc();lu.exports.Schema=w2e();lu.exports.FAILSAFE_SCHEMA=P2e();lu.exports.JSON_SCHEMA=U2e();lu.exports.CORE_SCHEMA=F2e();lu.exports.DEFAULT_SCHEMA=BQ();lu.exports.load=eVt.load;lu.exports.loadAll=eVt.loadAll;lu.exports.dump=KIn.dump;lu.exports.YAMLException=ww();lu.exports.types={binary:V2e(),float:B2e(),map:D2e(),null:L2e(),pairs:K2e(),set:G2e(),timestamp:$2e(),bool:M2e(),int:k2e(),merge:q2e(),omap:j2e(),seq:O2e(),str:N2e()};lu.exports.safeLoad=rDe("safeLoad","load");lu.exports.safeLoadAll=rDe("safeLoadAll","loadAll");lu.exports.safeDump=rDe("safeDump","dump")});var rVt=S(KQ=>{"use strict";Object.defineProperty(KQ,"__esModule",{value:!0});KQ.YAMLReader=void 0;var GIn=MQ(),zIn=r3(),YIn=tVt(),nDe=class extends zIn.BaseReader{_parse(t,r){let n=(0,YIn.load)(r);if(n===void 0)throw new Error("Unable to parse YAML document.");return new GIn.ObjectReader(this._builderOptions).parse(t,n)}};KQ.YAMLReader=nDe});var nVt=S(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.YAMLReader=xp.JSONReader=xp.ObjectReader=xp.XMLReader=void 0;var QIn=Fqt();Object.defineProperty(xp,"XMLReader",{enumerable:!0,get:function(){return QIn.XMLReader}});var WIn=MQ();Object.defineProperty(xp,"ObjectReader",{enumerable:!0,get:function(){return WIn.ObjectReader}});var XIn=$qt();Object.defineProperty(xp,"JSONReader",{enumerable:!0,get:function(){return XIn.JSONReader}});var JIn=rVt();Object.defineProperty(xp,"YAMLReader",{enumerable:!0,get:function(){return JIn.YAMLReader}})});var iVt=S(zQ=>{"use strict";Object.defineProperty(zQ,"__esModule",{value:!0});zQ.XMLBuilderImpl=void 0;var ZIn=sz(),Cn=Jn(),d3=hqt(),eRn=Qn(),v_=vs(),S_=Ln(),bc=OQ(),sVt=ha(),GQ=nVt(),sDe=class e{_domNode;constructor(t){this._domNode=t}get node(){return this._domNode}get options(){return this._options}set(t){return this._options=(0,Cn.applyDefaults)((0,Cn.applyDefaults)(this._options,t,!0),ZIn.DefaultBuilderOptions),this}ele(t,r,n){let s,i,a;if((0,Cn.isObject)(t))return new GQ.ObjectReader(this._options).parse(this,t);if((0,Cn.isString)(t)&&t!==null&&/^\s*this.att(f,h),this),this;t!=null&&(t=(0,Cn.getValue)(t+"")),r!=null&&(r=(0,Cn.getValue)(r+"")),n!=null&&(n=(0,Cn.getValue)(n+""));let s,i,a;if((t===null||(0,Cn.isString)(t))&&(0,Cn.isString)(r)&&(n===null||(0,Cn.isString)(n)))[s,i,a]=[t,r,n];else if((0,Cn.isString)(t)&&(r==null||(0,Cn.isString)(r)))[s,i,a]=[void 0,t,r];else throw new Error("Attribute name and value not specified. "+this._debugInfo());if(this._options.keepNullAttributes&&a==null)a="";else if(a==null)return this;if(!v_.Guard.isElementNode(this.node))throw new Error("An attribute can only be assigned to an element node.");let o=this.node;[s,i]=this._extractNamespace(s,i,!1),i=(0,bc.sanitizeInput)(i,this._options.invalidCharReplacement),s=(0,bc.sanitizeInput)(s,this._options.invalidCharReplacement),a=(0,bc.sanitizeInput)(a,this._options.invalidCharReplacement);let[c,u]=(0,S_.namespace_extractQName)(i),[l]=(0,S_.namespace_extractQName)(o.prefix?o.prefix+":"+o.localName:o.localName),d=null;return c==="xmlns"?(s=sVt.namespace.XMLNS,o.namespaceURI===null&&l===u&&(d=a)):c===null&&u==="xmlns"&&l===null&&(s=sVt.namespace.XMLNS,d=a),d!==null&&(this._updateNamespace(d),o=this.node),s!==void 0?o.setAttributeNS(s,i,a):o.setAttribute(i,a),this}removeAtt(t,r){if(!v_.Guard.isElementNode(this.node))throw new Error("An attribute can only be removed from an element node.");t=(0,Cn.getValue)(t),r!==void 0&&(r=(0,Cn.getValue)(r));let n,s;if(t!==null&&r===void 0)s=t;else if((t===null||(0,Cn.isString)(t))&&r!==void 0)n=t,s=r;else throw new Error("Attribute namespace must be a string. "+this._debugInfo());return(0,Cn.isArray)(s)||(0,Cn.isSet)(s)?(0,Cn.forEachArray)(s,i=>n===void 0?this.removeAtt(i):this.removeAtt(n,i),this):n!==void 0?(s=(0,bc.sanitizeInput)(s,this._options.invalidCharReplacement),n=(0,bc.sanitizeInput)(n,this._options.invalidCharReplacement),this.node.removeAttributeNS(n,s)):(s=(0,bc.sanitizeInput)(s,this._options.invalidCharReplacement),this.node.removeAttribute(s)),this}txt(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createTextNode((0,bc.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}com(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createComment((0,bc.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}dat(t){if(t==null)if(this._options.keepNullNodes)t="";else return this;let r=this._doc.createCDATASection((0,bc.sanitizeInput)(t,this._options.invalidCharReplacement));return this.node.appendChild(r),this}ins(t,r=""){if(r==null)if(this._options.keepNullNodes)r="";else return this;if((0,Cn.isArray)(t)||(0,Cn.isSet)(t))(0,Cn.forEachArray)(t,n=>{n+="";let s=n.indexOf(" "),i=s===-1?n:n.substr(0,s),a=s===-1?"":n.substr(s+1);this.ins(i,a)},this);else if((0,Cn.isMap)(t)||(0,Cn.isObject)(t))(0,Cn.forEachObject)(t,(n,s)=>this.ins(n,s),this);else{let n=this._doc.createProcessingInstruction((0,bc.sanitizeInput)(t,this._options.invalidCharReplacement),(0,bc.sanitizeInput)(r,this._options.invalidCharReplacement));this.node.appendChild(n)}return this}dec(t){return this._options.version=t.version||"1.0",this._options.encoding=t.encoding,this._options.standalone=t.standalone,this}dtd(t){let r=(0,bc.sanitizeInput)(t&&t.name||(this._doc.documentElement?this._doc.documentElement.tagName:"ROOT"),this._options.invalidCharReplacement),n=(0,bc.sanitizeInput)(t&&t.pubID||"",this._options.invalidCharReplacement),s=(0,bc.sanitizeInput)(t&&t.sysID||"",this._options.invalidCharReplacement);if(this._doc.documentElement!==null&&r!==this._doc.documentElement.tagName)throw new Error("DocType name does not match document element name.");let i=this._doc.implementation.createDocumentType(r,n,s);return this._doc.doctype!==null?this._doc.replaceChild(i,this._doc.doctype):this._doc.insertBefore(i,this._doc.documentElement),this}import(t){let r=this._domNode,n=this._doc,s=t.node,i=a=>{if(!a._namespace){let[o]=(0,S_.namespace_extractQName)(a.prefix?a.prefix+":"+a.localName:a.localName),c=r.lookupNamespaceURI(o);new e(a)._updateNamespace(c)}};if(v_.Guard.isDocumentNode(s)){let a=s.documentElement;if(a===null)throw new Error("Imported document has no document element node. "+this._debugInfo());let o=n.importNode(a,!0);r.appendChild(o),i(o)}else if(v_.Guard.isDocumentFragmentNode(s))for(let a of s.childNodes){let o=n.importNode(a,!0);r.appendChild(o),v_.Guard.isElementNode(o)&&i(o)}else{let a=n.importNode(s,!0);r.appendChild(a),v_.Guard.isElementNode(a)&&i(a)}return this}doc(){if(this._doc._isFragment){let t=this.node;for(;t&&t.nodeType!==eRn.NodeType.DocumentFragment;)t=t.parentNode;if(t===null)throw new Error("Node has no parent node while searching for document fragment ancestor. "+this._debugInfo());return new e(t)}else return new e(this._doc)}root(){let t=this._doc.documentElement;if(!t)throw new Error("Document root element is null. "+this._debugInfo());return new e(t)}up(){let t=this._domNode.parentNode;if(!t)throw new Error("Parent node is null. "+this._debugInfo());return new e(t)}prev(){let t=this._domNode.previousSibling;if(!t)throw new Error("Previous sibling node is null. "+this._debugInfo());return new e(t)}next(){let t=this._domNode.nextSibling;if(!t)throw new Error("Next sibling node is null. "+this._debugInfo());return new e(t)}first(){let t=this._domNode.firstChild;if(!t)throw new Error("First child node is null. "+this._debugInfo());return new e(t)}last(){let t=this._domNode.lastChild;if(!t)throw new Error("Last child node is null. "+this._debugInfo());return new e(t)}each(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2]);t.call(s,new e(i[0]),i[1],i[2]),i=a}return this}map(t,r=!1,n=!1,s){let i=[];return this.each((a,o,c)=>i.push(t.call(s,a,o,c)),r,n),i}reduce(t,r,n=!1,s=!1,i){let a=r;return this.each((o,c,u)=>a=t.call(i,a,o,c,u),n,s),a}find(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=new e(i[0]);if(t.call(s,a,i[1],i[2]))return a;i=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2])}}filter(t,r=!1,n=!1,s){let i=[];return this.each((a,o,c)=>{t.call(s,a,o,c)&&i.push(a)},r,n),i}every(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=new e(i[0]);if(!t.call(s,a,i[1],i[2]))return!1;i=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2])}return!0}some(t,r=!1,n=!1,s){let i=this._getFirstDescendantNode(this._domNode,r,n);for(;i[0];){let a=new e(i[0]);if(t.call(s,a,i[1],i[2]))return!0;i=this._getNextDescendantNode(this._domNode,i[0],n,i[1],i[2])}return!1}toArray(t=!1,r=!1){let n=[];return this.each(s=>n.push(s),t,r),n}toString(t){return t=t||{},t.format===void 0&&(t.format="xml"),this._serialize(t)}toObject(t){return t=t||{},t.format===void 0&&(t.format="object"),this._serialize(t)}end(t){return t=t||{},t.format===void 0&&(t.format="xml"),this.doc()._serialize(t)}_getFirstDescendantNode(t,r,n){return r?[this._domNode,0,0]:n?this._getNextDescendantNode(t,t,n,0,0):[this._domNode.firstChild,0,1]}_getNextDescendantNode(t,r,n,s,i){if(n){if(r.firstChild)return[r.firstChild,0,i+1];if(r===t)return[null,-1,-1];if(r.nextSibling)return[r.nextSibling,s+1,i];let a=r.parentNode;for(;a&&a!==t;){if(a.nextSibling)return[a.nextSibling,(0,S_.tree_index)(a.nextSibling),i-1];a=a.parentNode,i--}}else return t===r?[r.firstChild,0,i+1]:[r.nextSibling,s+1,i];return[null,-1,-1]}_serialize(t){if(t.format==="xml")return new d3.XMLWriter(this._options,t).serialize(this.node);if(t.format==="map")return new d3.MapWriter(this._options,t).serialize(this.node);if(t.format==="object")return new d3.ObjectWriter(this._options,t).serialize(this.node);if(t.format==="json")return new d3.JSONWriter(this._options,t).serialize(this.node);if(t.format==="yaml")return new d3.YAMLWriter(this._options,t).serialize(this.node);throw new Error("Invalid writer format: "+t.format+". "+this._debugInfo())}_extractNamespace(t,r,n){let s=r.indexOf("@");if(s>0&&(t===void 0&&(t=r.slice(s+1)),r=r.slice(0,s)),t===void 0)t=n?this._options.defaultNamespace.ele:this._options.defaultNamespace.att;else if(t!==null&&t[0]==="@"){let i=t.slice(1);if(t=this._options.namespaceAlias[i],t===void 0)throw new Error("Namespace alias `"+i+"` is not defined. "+this._debugInfo())}return[t,r]}_updateNamespace(t){let r=this._domNode;if(v_.Guard.isElementNode(r)&&t!==null&&r.namespaceURI!==t){let[n,s]=(0,S_.namespace_extractQName)(r.prefix?r.prefix+":"+r.localName:r.localName),i=(0,S_.create_element)(this._doc,s,t,n);for(let o of r.attributes){let c=o.prefix?o.prefix+":"+o.localName:o.localName,[u]=(0,S_.namespace_extractQName)(c),l=o.namespaceURI;l===null&&u!==null&&(l=r.lookupNamespaceURI(u)),l===null?i.setAttribute(c,o.value):i.setAttributeNS(l,c,o.value)}let a=r.parentNode;if(a===null)throw new Error("Parent node is null."+this._debugInfo());a.replaceChild(i,r),this._domNode=i;for(let o of r.childNodes){let c=o.cloneNode(!0);if(i.appendChild(c),v_.Guard.isElementNode(c)&&!c._namespace){let[u]=(0,S_.namespace_extractQName)(c.prefix?c.prefix+":"+c.localName:c.localName),l=i.lookupNamespaceURI(u);new e(c)._updateNamespace(l)}}}}get _doc(){let t=this.node;if(v_.Guard.isDocumentNode(t))return t;{let r=t.ownerDocument;if(!r)throw new Error("Owner document is null. "+this._debugInfo());return r}}_debugInfo(t){let r=this.node,n=r.parentNode;t=t||r.nodeName;let s=n?n.nodeName:"";return s?"node: <"+t+">, parent: <"+s+">":"node: <"+t+">"}get _options(){let t=this._doc;if(t._xmlBuilderOptions===void 0)throw new Error("Builder options is not set.");return t._xmlBuilderOptions}set _options(t){let r=this._doc;r._xmlBuilderOptions=t}};zQ.XMLBuilderImpl=sDe});var aDe=S(kw=>{"use strict";Object.defineProperty(kw,"__esModule",{value:!0});kw.builder=rRn;kw.create=oVt;kw.fragment=nRn;kw.convert=sRn;var Mw=sz(),YQ=Jn(),tRn=vs(),QQ=WQ(),aVt=OQ();function rRn(e,t){let r=iDe(Lw(e)?e:Mw.DefaultBuilderOptions),n=tRn.Guard.isNode(e)||(0,YQ.isArray)(e)?e:t;if(n===void 0)throw new Error("Invalid arguments.");if((0,YQ.isArray)(n)){let s=[];for(let i=0;i{"use strict";Object.defineProperty(XQ,"__esModule",{value:!0});XQ.BaseCBWriter=void 0;var oDe=class{_builderOptions;_writerOptions;level=0;hasData;constructor(t){this._builderOptions=t,this._writerOptions=t}};XQ.BaseCBWriter=oDe});var uVt=S(ZQ=>{"use strict";Object.defineProperty(ZQ,"__esModule",{value:!0});ZQ.XMLCBWriter=void 0;var iRn=JQ(),cDe=class extends iRn.BaseCBWriter{_lineLength=0;constructor(t){super(t)}frontMatter(){return""}declaration(t,r,n){let s=this._beginLine()+"",s}docType(t,r,n){let s=this._beginLine();return r&&n?s+="':r?s+="':n?s+="':s+="",s}comment(t){return this._beginLine()+""}text(t){return t}instruction(t,r){return r?this._beginLine()+"":this._beginLine()+""}cdata(t){return this._beginLine()+""}openTagBegin(t){return this._lineLength+=1+t.length,this._beginLine()+"<"+t}openTagEnd(t,r,n){return n?" />":r?this._writerOptions.allowEmptyTags?">":this._writerOptions.spaceBeforeSlash?" />":"/>":">"}closeTag(t,r){return(r?"":this._beginLine())+""}attribute(t,r){let n=t+'="'+r+'"';return this._writerOptions.prettyPrint&&this._writerOptions.width>0&&this._lineLength+1+n.length>this._writerOptions.width?(n=this._beginLine()+this._indent(1)+n,this._lineLength=n.length,n):(this._lineLength+=1+n.length," "+n)}beginElement(t){}endElement(t){}_beginLine(){if(this._writerOptions.prettyPrint){let t=(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level);return this._lineLength=t.length,t}else return""}_indent(t){return t<=0?"":this._writerOptions.indent.repeat(t)}};ZQ.XMLCBWriter=cDe});var lVt=S(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});eW.JSONCBWriter=void 0;var aRn=JQ(),uDe=class extends aRn.BaseCBWriter{_hasChildren=[];_additionalLevel=0;constructor(t){super(t)}frontMatter(){return""}declaration(t,r,n){return""}docType(t,r,n){return""}comment(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.comment)+this._sep()+this._val(t)+this._sep()+"}"}text(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.text)+this._sep()+this._val(t)+this._sep()+"}"}instruction(t,r){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.ins)+this._sep()+this._val(r?t+" "+r:t)+this._sep()+"}"}cdata(t){return this._comma()+this._beginLine()+"{"+this._sep()+this._key(this._builderOptions.convert.cdata)+this._sep()+this._val(t)+this._sep()+"}"}attribute(t,r){return this._comma()+this._beginLine(1)+"{"+this._sep()+this._key(this._builderOptions.convert.att+t)+this._sep()+this._val(r)+this._sep()+"}"}openTagBegin(t){let r=this._comma()+this._beginLine()+"{"+this._sep()+this._key(t)+this._sep()+"{";return this._additionalLevel++,this.hasData=!0,r+=this._beginLine()+this._key(this._builderOptions.convert.text)+this._sep()+"[",this._hasChildren.push(!1),r}openTagEnd(t,r,n){if(r){let s=this._sep()+"]";return this._additionalLevel--,s+=this._beginLine()+"}"+this._sep()+"}",s}else return""}closeTag(t){let r=this._beginLine()+"]";return this._additionalLevel--,r+=this._beginLine()+"}"+this._sep()+"}",r}beginElement(t){}endElement(t){this._hasChildren.pop()}_beginLine(t=0){return this._writerOptions.prettyPrint?(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level+t):""}_indent(t){return t+this._additionalLevel<=0?"":this._writerOptions.indent.repeat(t+this._additionalLevel)}_comma(){let t=this._hasChildren[this._hasChildren.length-1]?",":"";return this._hasChildren.length>0&&(this._hasChildren[this._hasChildren.length-1]=!0),t}_sep(){return this._writerOptions.prettyPrint?" ":""}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};eW.JSONCBWriter=uDe});var dVt=S(tW=>{"use strict";Object.defineProperty(tW,"__esModule",{value:!0});tW.YAMLCBWriter=void 0;var oRn=JQ(),lDe=class extends oRn.BaseCBWriter{_rootWritten=!1;_additionalLevel=0;constructor(t){if(super(t),t.indent.length<2)throw new Error("YAML indententation string must be at least two characters long.");if(t.offset<0)throw new Error("YAML offset should be zero or a positive number.")}frontMatter(){return this._beginLine()+"---"}declaration(t,r,n){return""}docType(t,r,n){return""}comment(t){return this._beginLine()+this._key(this._builderOptions.convert.comment)+" "+this._val(t)}text(t){return this._beginLine()+this._key(this._builderOptions.convert.text)+" "+this._val(t)}instruction(t,r){return this._beginLine()+this._key(this._builderOptions.convert.ins)+" "+this._val(r?t+" "+r:t)}cdata(t){return this._beginLine()+this._key(this._builderOptions.convert.cdata)+" "+this._val(t)}attribute(t,r){this._additionalLevel++;let n=this._beginLine()+this._key(this._builderOptions.convert.att+t)+" "+this._val(r);return this._additionalLevel--,n}openTagBegin(t){let r=this._beginLine()+this._key(t);return this._rootWritten||(this._rootWritten=!0),this.hasData=!0,this._additionalLevel++,r+=this._beginLine(!0)+this._key(this._builderOptions.convert.text),r}openTagEnd(t,r,n){return r?" "+this._val(""):""}closeTag(t){return this._additionalLevel--,""}beginElement(t){}endElement(t){}_beginLine(t=!1){return(this.hasData?this._writerOptions.newline:"")+this._indent(this._writerOptions.offset+this.level,t)}_indent(t,r){if(t+this._additionalLevel<=0)return"";{let n=this._writerOptions.indent.repeat(t+this._additionalLevel);return!r&&this._rootWritten?n.substr(0,n.length-2)+"-"+n.substr(-1,1):n}}_key(t){return'"'+t+'":'}_val(t){return JSON.stringify(t)}};tW.YAMLCBWriter=lDe});var fVt=S(rW=>{"use strict";Object.defineProperty(rW,"__esModule",{value:!0});rW.XMLBuilderCBImpl=void 0;var cRn=sz(),dDe=Jn(),wy=aDe(),Ny=Ln(),T_=ha(),uRn=hz(),lRn=kB(),f3=vs(),dRn=uVt(),fRn=lVt(),hRn=dVt(),pRn=require("events"),fDe=class e extends pRn.EventEmitter{static _VoidElementNames=new Set(["area","base","basefont","bgsound","br","col","embed","frame","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr"]);_options;_builderOptions;_writer;_fragment;_hasDeclaration=!1;_docTypeName="";_hasDocumentElement=!1;_currentElement;_currentElementSerialized=!1;_openTags=[];_prefixMap;_prefixIndex;_ended=!1;constructor(t,r=!1){super(),this._fragment=r,this._options=(0,dDe.applyDefaults)(t||{},cRn.DefaultXMLBuilderCBOptions),this._builderOptions={defaultNamespace:this._options.defaultNamespace,namespaceAlias:this._options.namespaceAlias},this._options.format==="json"?this._writer=new fRn.JSONCBWriter(this._options):this._options.format==="yaml"?this._writer=new hRn.YAMLCBWriter(this._options):this._writer=new dRn.XMLCBWriter(this._options),this._options.data!==void 0&&this.on("data",this._options.data),this._options.end!==void 0&&this.on("end",this._options.end),this._options.error!==void 0&&this.on("error",this._options.error),this._prefixMap=new uRn.NamespacePrefixMap,this._prefixMap.set("xml",T_.namespace.XML),this._prefixIndex={value:1},this._push(this._writer.frontMatter())}ele(t,r,n){if((0,dDe.isObject)(t)||(0,dDe.isString)(t)&&(/^\s*/g,">");this._push(this._writer.text(n));let s=this._openTags[this._openTags.length-1];return s&&(s[s.length-1]=!0),this}ins(t,r=""){this._serializeOpenTag(!0);let n;try{n=(0,wy.fragment)(this._builderOptions).ins(t,r).first().node}catch(s){return this.emit("error",s),this}return this._options.wellFormed&&(n.target.indexOf(":")!==-1||/^xml$/i.test(n.target))?(this.emit("error",new Error("Processing instruction target contains invalid characters (well-formed required).")),this):this._options.wellFormed&&!(0,Ny.xml_isLegalChar)(n.data)?(this.emit("error",Error("Processing instruction data contains invalid characters (well-formed required).")),this):(this._push(this._writer.instruction(n.target,n.data)),this)}dat(t){this._serializeOpenTag(!0);let r;try{r=(0,wy.fragment)(this._builderOptions).dat(t).first().node}catch(n){return this.emit("error",n),this}return this._push(this._writer.cdata(r.data)),this}dec(t={version:"1.0"}){return this._fragment?(this.emit("error",Error("Cannot insert an XML declaration into a document fragment.")),this):this._hasDeclaration?(this.emit("error",Error("XML declaration is already inserted.")),this):(this._push(this._writer.declaration(t.version||"1.0",t.encoding,t.standalone)),this._hasDeclaration=!0,this)}dtd(t){if(this._fragment)return this.emit("error",Error("Cannot insert a DocType declaration into a document fragment.")),this;if(this._docTypeName!=="")return this.emit("error",new Error("DocType declaration is already inserted.")),this;if(this._hasDocumentElement)return this.emit("error",new Error("Cannot insert DocType declaration after document element.")),this;let r;try{r=(0,wy.create)().dtd(t).first().node}catch(n){return this.emit("error",n),this}return this._options.wellFormed&&!(0,Ny.xml_isPubidChar)(r.publicId)?(this.emit("error",new Error("DocType public identifier does not match PubidChar construct (well-formed required).")),this):this._options.wellFormed&&(!(0,Ny.xml_isLegalChar)(r.systemId)||r.systemId.indexOf('"')!==-1&&r.systemId.indexOf("'")!==-1)?(this.emit("error",new Error("DocType system identifier contains invalid characters (well-formed required).")),this):(this._docTypeName=t.name,this._push(this._writer.docType(t.name,r.publicId,r.systemId)),this)}import(t){let r=(0,wy.fragment)().set(this._options);try{r.import(t)}catch(n){return this.emit("error",n),this}for(let n of r.node.childNodes)this._fromNode(n);return this}up(){return this._serializeOpenTag(!1),this._serializeCloseTag(),this}end(){for(this._serializeOpenTag(!1);this._openTags.length>0;)this._serializeCloseTag();return this._push(null),this}_serializeOpenTag(t){if(this._currentElementSerialized||this._currentElement===void 0)return;let r=this._currentElement.node;if(this._options.wellFormed&&(r.localName.indexOf(":")!==-1||!(0,Ny.xml_isName)(r.localName))){this.emit("error",new Error("Node local name contains invalid characters (well-formed required)."));return}let n="",s=!1,i=this._prefixMap.copy(),a={},o=this._recordNamespaceInformation(r,i,a),c=this._openTags.length===0?null:this._openTags[this._openTags.length-1][1],u=r.namespaceURI;if(u===null&&(u=c),c===u)o!==null&&(s=!0),u===T_.namespace.XML?n="xml:"+r.localName:n=r.localName,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n));else{let d=r.prefix,f=null;if((d!==null||u!==o)&&(f=i.get(d,u)),d==="xmlns"){if(this._options.wellFormed){this.emit("error",new Error("An element cannot have the 'xmlns' prefix (well-formed required)."));return}f=d}f!==null?(n=f+":"+r.localName,o!==null&&o!==T_.namespace.XML&&(c=o||null),this._writer.beginElement(n),this._push(this._writer.openTagBegin(n))):d!==null?(d in a&&(d=this._generatePrefix(u,i,this._prefixIndex)),i.set(d,u),n+=d+":"+r.localName,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)),this._push(this._writer.attribute("xmlns:"+d,this._serializeAttributeValue(u,this._options.wellFormed))),o!==null&&(c=o||null)):o===null||o!==null&&o!==u?(s=!0,n+=r.localName,c=u,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)),this._push(this._writer.attribute("xmlns",this._serializeAttributeValue(u,this._options.wellFormed)))):(n+=r.localName,c=u,this._writer.beginElement(n),this._push(this._writer.openTagBegin(n)))}this._serializeAttributes(r,i,this._prefixIndex,a,s,this._options.wellFormed);let l=u===T_.namespace.HTML;l&&!t&&e._VoidElementNames.has(r.localName)?(this._push(this._writer.openTagEnd(n,!0,!0)),this._writer.endElement(n)):!l&&!t?(this._push(this._writer.openTagEnd(n,!0,!1)),this._writer.endElement(n)):this._push(this._writer.openTagEnd(n,!1,!1)),this._currentElementSerialized=!0,this._openTags.push([n,c,this._prefixMap,t,void 0]),this._isPrefixMapModified(this._prefixMap,i)&&(this._prefixMap=i),this._writer.level++}_serializeCloseTag(){this._writer.level--;let t=this._openTags.pop();if(t===void 0){this.emit("error",new Error("Last element is undefined."));return}let[r,n,s,i,a]=t;this._prefixMap=s,i&&(this._push(this._writer.closeTag(r,a)),this._writer.endElement(r))}_push(t){t===null?(this._ended=!0,this.emit("end")):this._ended?this.emit("error",new Error("Cannot push to ended stream.")):t.length!==0&&(this._writer.hasData=!0,this.emit("data",t,this._writer.level))}_fromNode(t){if(f3.Guard.isElementNode(t)){let r=t.prefix?t.prefix+":"+t.localName:t.localName;t.namespaceURI!==null?this.ele(t.namespaceURI,r):this.ele(r);for(let n of t.attributes){let s=n.prefix?n.prefix+":"+n.localName:n.localName;n.namespaceURI!==null?this.att(n.namespaceURI,s,n.value):this.att(s,n.value)}for(let n of t.childNodes)this._fromNode(n);this.up()}else f3.Guard.isExclusiveTextNode(t)&&t.data?this.txt(t.data):f3.Guard.isCommentNode(t)?this.com(t.data):f3.Guard.isCDATASectionNode(t)?this.dat(t.data):f3.Guard.isProcessingInstructionNode(t)&&this.ins(t.target,t.data)}_serializeAttributes(t,r,n,s,i,a){let o=a?new lRn.LocalNameSet:void 0;for(let c of t.attributes){if(!a&&!i&&c.namespaceURI===null){this._push(this._writer.attribute(c.localName,this._serializeAttributeValue(c.value,this._options.wellFormed)));continue}if(a&&o&&o.has(c.namespaceURI,c.localName)){this.emit("error",new Error("Element contains duplicate attributes (well-formed required)."));return}a&&o&&o.set(c.namespaceURI,c.localName);let u=c.namespaceURI,l=null;if(u!==null)if(l=r.get(c.prefix,u),u===T_.namespace.XMLNS){if(c.value===T_.namespace.XML||c.prefix===null&&i||c.prefix!==null&&(!(c.localName in s)||s[c.localName]!==c.value)&&r.has(c.localName,c.value))continue;if(a&&c.value===T_.namespace.XMLNS){this.emit("error",new Error("XMLNS namespace is reserved (well-formed required)."));return}if(a&&c.value===""){this.emit("error",new Error("Namespace prefix declarations cannot be used to undeclare a namespace (well-formed required)."));return}c.prefix==="xmlns"&&(l="xmlns")}else l===null&&(c.prefix!==null&&(!r.hasPrefix(c.prefix)||r.has(c.prefix,u))?l=c.prefix:l=this._generatePrefix(u,r,n),this._push(this._writer.attribute("xmlns:"+l,this._serializeAttributeValue(u,this._options.wellFormed))));if(a&&(c.localName.indexOf(":")!==-1||!(0,Ny.xml_isName)(c.localName)||c.localName==="xmlns"&&u===null)){this.emit("error",new Error("Attribute local name contains invalid characters (well-formed required)."));return}this._push(this._writer.attribute((l!==null?l+":":"")+c.localName,this._serializeAttributeValue(c.value,this._options.wellFormed)))}}_serializeAttributeValue(t,r){return r&&t!==null&&!(0,Ny.xml_isLegalChar)(t)?(this.emit("error",new Error("Invalid characters in attribute value.")),""):t===null?"":t.replace(/(?!&(lt|gt|amp|apos|quot);)&/g,"&").replace(//g,">").replace(/"/g,""")}_recordNamespaceInformation(t,r,n){let s=null;for(let i of t.attributes){let a=i.namespaceURI,o=i.prefix;if(a===T_.namespace.XMLNS)if(o===null){s=i.value;continue}else{let c=i.localName,u=i.value;if(u===T_.namespace.XML||(u===""&&(u=null),r.has(c,u)))continue;r.set(c,u),n[c]=u||""}}return s}_generatePrefix(t,r,n){let s="ns"+n.value;return n.value++,r.set(s,t),s}_isPrefixMapModified(t,r){let n=t._items,s=r._items,i=t._nullItems,a=r._nullItems;for(let o in s){let c=n[o];if(c===void 0)return!0;let u=s[o];if(c.length!==u.length)return!0;for(let l=0;l{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});nW.createCB=mRn;nW.fragmentCB=gRn;var hVt=WQ();function mRn(e){return new hVt.XMLBuilderCBImpl(e)}function gRn(e){return new hVt.XMLBuilderCBImpl(e,!0)}});var WQ=S(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.fragmentCB=oo.createCB=oo.convert=oo.fragment=oo.create=oo.builder=oo.XMLBuilderCBImpl=oo.XMLBuilderImpl=void 0;var _Rn=iVt();Object.defineProperty(oo,"XMLBuilderImpl",{enumerable:!0,get:function(){return _Rn.XMLBuilderImpl}});var ARn=fVt();Object.defineProperty(oo,"XMLBuilderCBImpl",{enumerable:!0,get:function(){return ARn.XMLBuilderCBImpl}});var sW=aDe();Object.defineProperty(oo,"builder",{enumerable:!0,get:function(){return sW.builder}});Object.defineProperty(oo,"create",{enumerable:!0,get:function(){return sW.create}});Object.defineProperty(oo,"fragment",{enumerable:!0,get:function(){return sW.fragment}});Object.defineProperty(oo,"convert",{enumerable:!0,get:function(){return sW.convert}});var mVt=pVt();Object.defineProperty(oo,"createCB",{enumerable:!0,get:function(){return mVt.createCB}});Object.defineProperty(oo,"fragmentCB",{enumerable:!0,get:function(){return mVt.fragmentCB}})});var gVt=S(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.fragmentCB=dl.createCB=dl.convert=dl.fragment=dl.create=dl.builder=void 0;var Bw=WQ();Object.defineProperty(dl,"builder",{enumerable:!0,get:function(){return Bw.builder}});Object.defineProperty(dl,"create",{enumerable:!0,get:function(){return Bw.create}});Object.defineProperty(dl,"fragment",{enumerable:!0,get:function(){return Bw.fragment}});Object.defineProperty(dl,"convert",{enumerable:!0,get:function(){return Bw.convert}});Object.defineProperty(dl,"createCB",{enumerable:!0,get:function(){return Bw.createCB}});Object.defineProperty(dl,"fragmentCB",{enumerable:!0,get:function(){return Bw.fragmentCB}})});var yVt={};kt(yVt,{default:()=>BRn});function Af(e){e+=`&udid=${U0.id}&uuid=${U0.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${U0.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let t=new URL(e),r=(0,Uw.default)().unix().toString(),n=mDe.default.HmacSHA1("GET&"+encodeURIComponent(t.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=mDe.default.enc.Base64.stringify(n);return e+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function wp(e,t){return(await Xe.get(e,{headers:{"User-Agent":t||U0.ua,Referer:"https://frodo.douban.com/"}})).data}function CRn(e,t){return e?`http://127.0.0.1:${t?.server?.address()?.port||9988}/proxy?do=image&url=${encodeURIComponent(e)}&referer=${encodeURIComponent("https://movie.douban.com")}`:""}function m3(e,t){let r="";return e.cover_url?r=e.cover_url:e.pic?typeof e.pic=="string"?r=e.pic:e.pic.normal?r=e.pic.normal:e.pic.large?r=e.pic.large:e.pic.medium&&(r=e.pic.medium):e.images?e.images.normal?r=e.images.normal:e.images.large?r=e.images.large:e.images.medium&&(r=e.images.medium):e.cover&&(r=e.cover),r&&t?CRn(r,t):r||""}function xRn(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function p3(e){if(!e)return"";let t=String(e).trim();return t?t==="all"||t.includes("\u5168\u90E8")?"\u5168\u90E8":t:""}function wRn(e){let t=p3(e);return t==="\u52A8\u6F2B"?"\u52A8\u753B":t}function NRn(e){let t=(e?.rating&&e.rating.value||"").toString();return t.length>0?`\u8BC4\u5206:${t}`:""}function h3(e,t){return!e||!e.id?null:{vod_id:e.id,vod_name:e.title||"",vod_pic:m3(e,t),vod_remarks:NRn(e)}}function Lb(e,t,r){let n=Number.isFinite(t)?t:r.length,s=Math.max(1,Math.ceil(n/Zl));return{page:e,pagecount:s,total:n,list:r}}async function ORn(e,t){let r=e.server.prefix+"/device";return U0=await e.server.db.getObjectDefault(r,{}),U0.id||(U0.id=Ta(40).toLowerCase(),U0.ua=`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${U0.id} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`,await e.server.db.push(r,U0)),{}}async function DRn(e,t){let r=Qr("douban",e),n=Wr(r);if(n)return n;let s=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],i={t1:[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],t2:[],t4:[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]},{key:"area",name:"",init:"all",value:[{n:"\u534E\u8BED",v:"chinese"},{n:"\u6B27\u7F8E",v:"western"},{n:"\u65E5\u672C",v:"japanese"},{n:"\u97E9\u56FD",v:"korea"}]},{key:"genre",name:"",init:"all",value:[{n:"\u559C\u5267",v:"comedy"},{n:"\u52A8\u4F5C",v:"action"},{n:"\u7231\u60C5",v:"love"},{n:"\u79D1\u5E7B",v:"science_fiction"},{n:"\u52A8\u753B",v:"cartoon"},{n:"\u60AC\u7591",v:"mystery"},{n:"\u60CA\u609A",v:"panic"},{n:"\u6050\u6016",v:"horrible"},{n:"\u72AF\u7F6A",v:"criminal"},{n:"\u540C\u6027",v:"lgbt"},{n:"\u6218\u4E89",v:"war"},{n:"\u5947\u5E7B",v:"fantasy"},{n:"\u60C5\u8272",v:"erotica"},{n:"\u97F3\u4E50",v:"music"},{n:"\u7EAA\u5F55\u7247",v:"documentary"},{n:"\u6CBB\u6108",v:"cure"},{n:"\u827A\u672F",v:"art"},{n:"\u9ED1\u8272\u5E7D\u9ED8",v:"dark_humor"},{n:"\u9752\u6625",v:"youth"},{n:"\u5973\u6027",v:"female"},{n:"\u771F\u5B9E\u4E8B\u4EF6\u6539\u7F16",v:"real_event"},{n:"\u66B4\u529B",v:"violence"},{n:"\u9ED1\u767D",v:"black_white"},{n:"\u7F8E\u98DF",v:"food"},{n:"\u65C5\u884C",v:"travel"},{n:"\u513F\u7AE5",v:"child"},{n:"\u4EBA\u6027",v:"humanity"},{n:"\u5BB6\u5EAD",v:"family"},{n:"\u6587\u827A",v:"literary_art"},{n:"\u5C0F\u8BF4\u6539\u7F16",v:"novel"},{n:"\u611F\u4EBA",v:"moving"},{n:"\u52B1\u5FD7",v:"inspiration"}]}]};try{let o=Af(`${_f}/api/v2/movie/tag?sort=U&start=0&count=${Zl}&q=\u5168\u90E8\u5F62\u5F0F,\u5168\u90E8\u7C7B\u578B,\u5168\u90E8\u5730\u533A,\u5168\u90E8\u5E74\u4EE3&score_range=0,10`),c=await wp(o),u=Array.isArray(c?.tags)?c.tags:[],l=Array.isArray(c?.sorts)?c.sorts:[],d=[];for(let m of u){if(!m||m.type==="\u7279\u8272"||!Array.isArray(m.data)||m.data.length===0)continue;let g=[...m.data];m.type==="\u5E74\u4EE3"&&g.indexOf((0,Uw.default)().year().toString())<0&&(g.splice(1,0,(0,Uw.default)().year().toString()),g.indexOf(((0,Uw.default)().year()-1).toString())<0&&g.splice(2,0,((0,Uw.default)().year()-1).toString())),d.push({key:m.type,name:"",init:g[0],value:g.map(_=>({n:_.indexOf("\u5168\u90E8")>=0?"\u5168\u90E8":_,v:_}))})}l.length>0&&d.push({key:"sort",name:"",init:l[0].name,value:l.map(m=>({n:m.text,v:m.name}))});let f=[{n:"\u5168\u90E8",v:"\u5168\u90E8"},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}],h=d.findIndex(m=>m.key==="\u5F62\u5F0F"),p={key:"\u5F62\u5F0F",name:"",init:"\u5168\u90E8",value:f};h!==-1?d[h]=p:d.push(p),i.t2=d}catch{}let a={class:s,filters:i};return hn(r,a,bt.semiStatic),a}async function PRn(e,t){let r=e.body||{},n=r.id||"",s=r.filters||{},i=xRn(r.page),a=(i-1)*Zl;try{if(n==="t1"){let o=Af(`${_f}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${a}&count=${Zl}`),c=await wp(o),l=(c?.items||c?.subject_collection_items||[]).map(d=>h3(d,e)).filter(Boolean);return Lb(i,c?.total,l)}if(n==="t250"){let o=Af(`${_f}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${a}&count=${Zl}`),c=await wp(o),l=(c?.items||c?.subject_collection_items||[]).map(d=>h3(d,e)).filter(Boolean);return Lb(i,c?.total,l)}if(n==="t2"){let o=wRn(s.\u5F62\u5F0F)||"\u5168\u90E8",c=p3(s.\u7C7B\u578B)||"\u5168\u90E8",u=p3(s.\u5730\u533A)||"\u5168\u90E8",l=p3(s.\u5E74\u4EE3)||"\u5168\u90E8",d=p3(s.sort)||"U",f=null,h="",p={},m=[];if(o==="\u7535\u5F71")h="/api/v2/movie/recommend",p={\u5F62\u5F0F:"\u7535\u5F71"},m=["\u7535\u5F71"];else if(o==="\u7535\u89C6\u5267")h="/api/v2/tv/recommend",p={\u5F62\u5F0F:"\u7535\u89C6\u5267"},m=["\u7535\u89C6\u5267"];else if(o==="\u52A8\u753B")h="/api/v2/tv/recommend",p={\u5F62\u5F0F:"\u52A8\u753B"},m=["\u52A8\u753B"];else if(o==="\u7EFC\u827A")h="/api/v2/tv/recommend",p={\u5F62\u5F0F:"\u7EFC\u827A"},m=["\u7EFC\u827A"];else if(o==="\u7EAA\u5F55\u7247")h="/api/v2/movie/recommend",p={\u5F62\u5F0F:"\u7EAA\u5F55\u7247"},m=["\u7EAA\u5F55\u7247"];else if(o==="\u77ED\u7247")h="/api/v2/movie/recommend",p={\u5F62\u5F0F:"\u77ED\u7247"},m=["\u77ED\u7247"];else{let A=[o,c,u,l].filter(v=>v&&v!=="\u5168\u90E8"&&!v.includes("\u5168\u90E8")),E=A.length>0?`&q=${A.join(",")}`:"";f=Af(`${_f}/api/v2/movie/tag?sort=${d}&start=${a}&count=${Zl}${E}&score_range=0,10`)}if(h){o!=="\u52A8\u753B"&&c&&c!=="\u5168\u90E8"&&c!=="all"&&(p.\u7C7B\u578B=c,m.push(c)),u&&u!=="\u5168\u90E8"&&u!=="all"&&(p.\u5730\u533A=u,m.push(u)),l&&l!=="\u5168\u90E8"&&m.push(l);let A=`${_f}${h}?refresh=0&start=${a}&count=${Zl}`;A+=`&selected_categories=${encodeURIComponent(JSON.stringify(p))}`,m.length>0&&(A+=`&tags=${encodeURIComponent(m.join(","))}`),A+=`&uncollect=false&score_range=0%2C10&sort=${d}`,f=Af(A)}if(!f){let A=[o,c,u,l].filter(v=>v&&v!=="\u5168\u90E8"&&!v.includes("\u5168\u90E8")),E=A.length>0?`&q=${A.join(",")}`:"";f=Af(`${_f}/api/v2/movie/tag?sort=${d}&start=${a}&count=${Zl}${E}&score_range=0,10`)}let g=await wp(f),_=[];g?.items?_=g.items:g?.data?_=g.data:g?.subject_collection_items&&(_=g.subject_collection_items);let y=_.map(A=>h3(A,e)).filter(Boolean);return Lb(i,g?.total,y)}if(n==="t3"){let[o,c]=await Promise.all([wp(Af(`${_f}/api/v2/movie/category_ranks?count=${Zl}&category=recent_hot`)),wp(Af(`${_f}/api/v2/tv/category_ranks?count=${Zl}&category=recent_hot`))]),u=[];for(let l of o?.selected_collections||[])u.push({vod_id:`cr_${l.id}`,vod_name:l.short_name||l.title||"",vod_pic:m3(l,e),vod_remarks:"",cate:{}});for(let l of c?.selected_collections||[])u.push({vod_id:`cr_${l.id}`,vod_name:l.short_name||l.title||"",vod_pic:m3(l,e),vod_remarks:"",cate:{}});return Lb(1,u.length,u)}if(n==="t4"){let o=Af(`${_f}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${a}&count=${Zl}`),c=await wp(o),l=(c?.data?.[0]?.items||[]).map(d=>({vod_id:d.owner?`dl_${d.id}`:`cr_${d.id}`,vod_name:d.title||"",vod_pic:m3(d,e),vod_remarks:"",cate:{}}));return Lb(i,c?.total,l)}if(n.startsWith("cr_")){let o=Af(`${_f}/api/v2/subject_collection/${n.substring(3)}/items?start=${a}&count=${Zl}&updated_at=&items_only=1`),c=await wp(o),l=(c?.subject_collection_items||[]).map(d=>h3(d,e)).filter(Boolean);return Lb(i,c?.total,l)}if(n.startsWith("dl_")){let o=Af(`${_f}/api/v2/doulist/${n.substring(3)}/posts?start=${a}&count=${Zl}&updated_at=&items_only=1`),c=await wp(o),u=[];for(let l of c?.items||[]){let d=l?.content?.subject,f=h3(d,e);f&&u.push(f)}return Lb(i,c?.total,u)}}catch{}return{page:i,pagecount:i,total:0,list:[]}}async function LRn(e,t){let r=e.body?.id;if(!r)return{list:[]};let n=_b("detail",{id:r});return $n("douban","detail",n,async()=>{try{let s=Af(`${_f}/api/v2/movie/${r}`),i=await wp(s),a=Array.isArray(i?.directors)?i.directors.map(u=>u.name).join(","):"",o=Array.isArray(i?.actors)?i.actors.slice(0,5).map(u=>u.name).join(","):"",c=Array.isArray(i?.countries)?i.countries.join(","):"";return{list:[{vod_id:i.id||r,vod_name:i.title||"",vod_pic:m3(i,e),vod_remarks:i.rating?`\u8BC4\u5206:${i.rating.value}`:"",type_name:i.subtype==="tv"?"\u7535\u89C6\u5267":"\u7535\u5F71",vod_year:i.year||"",vod_area:c,vod_actor:o,vod_director:a,vod_content:i.intro||i.card_subtitle||"",vod_play_from:"\u8C46\u74E3",vod_play_url:`\u7B2C1\u96C6$$${r}`}]}}catch{return{list:[]}}},{timeout:3e4})}async function MRn(e,t){let r=e.body?.id;return r?{parse:0,url:`https://movie.douban.com/subject/${r}/`,header:{"User-Agent":U0.ua,Referer:"https://movie.douban.com/"}}:{parse:0,url:""}}async function kRn(e,t){return{...RRn}}var Uw,mDe,_f,U0,Zl,RRn,BRn,vVt=ie(()=>{Cr();Ds();Uw=Ne(T4(),1),mDe=Ne(Yi(),1);Dn();fa();_f="https://frodo.douban.com",U0={},Zl=30,RRn=Object.freeze({page:1,pagecount:1,limit:0,total:0,list:[]});BRn={meta:{key:"douban",name:"\u{1F3E0} \u8C46\u74E3",type:3,indexs:1,supportSearch:!1},api:async e=>{e.post("/init",ORn),e.post("/home",DRn),e.post("/category",PRn),e.post("/detail",LRn),e.post("/play",MRn),e.post("/search",kRn)}}});var NVt={};kt(NVt,{default:()=>sCn});async function oW(e,t,r,n,s,i){let a=e.get(r);return a!==null?a:$n("zhuijurili",t,r,async()=>{let o=await i();return e.set(r,o),o},{timeout:3e4})}async function CVt(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let c=s++;if(c>=e.length)break;n[c]=await r(e[c],c)}},a=Math.min(t,e.length),o=new Array(a);for(let c=0;c{let i=`https://api.themoviedb.org/3/tv/${r}?api_key=${SVt}&language=zh-CN`,a=await Xe.get(i,{timeout:TVt}).catch(()=>null);if(a?.data&&a.data.success!==!1)return a.data;let o=`https://api.themoviedb.org/3/movie/${r}?api_key=${SVt}&language=zh-CN`,c=await Xe.get(o,{timeout:TVt}).catch(()=>null);return c?.data&&c.data.success!==!1?c.data:null});if(!s)return;s.poster_path&&(e.poster_path=s.poster_path),s.vote_average!==void 0&&(e.vote_average=s.vote_average),(s.first_air_date||s.release_date)&&(e.first_air_date=e.first_air_date||s.first_air_date,e.release_date=e.release_date||s.release_date),s.overview&&(e.overview=s.overview||e.overview),s.last_episode_to_air&&(e.last_episode_to_air=s.last_episode_to_air),s.next_episode_to_air&&(e.next_episode_to_air=s.next_episode_to_air),s.number_of_episodes!==void 0&&(e.number_of_episodes=s.number_of_episodes),!e.name&&!e.title&&(s.name||s.title)&&(e.name=s.name||s.title,e.title=s.title||s.name)}catch{}}async function zRn(e){return oW(aW.raw,"default",`raw:${e}`,Ic.raw.ttl,Ic.raw.maxSize,async()=>{try{let t;if(RVt.includes(e))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/${e}`;else if(e.includes("\u4ECA\u5929\u64AD\u51FA\u7684\u56FD\u6F2B")||e.includes("\u660E\u5929\u64AD\u51FA\u7684\u56FD\u6F2B"))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/guoman_${e.includes("\u4ECA\u5929")?"today":"tomorrow"}.json`;else if(e.includes("\u4ECA\u5929\u64AD\u51FA\u7684\u7EFC\u827A")||e.includes("\u660E\u5929\u64AD\u51FA\u7684\u7EFC\u827A"))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/zongyi_${e.includes("\u4ECA\u5929")?"today":"tomorrow"}.json`;else{let n="https://zjrl-1318856176.cos.accelerate.myqcloud.com",s=xVt[e];if(!s)return null;t=`${n}/${s}.json`}let r=await Xe.get(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json"},timeout:URn});return r&&r.data?r.data:null}catch(t){return console.error("fetchRawData error:",t.message),null}})}function _3(e){return e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:e.images&&e.images.poster?e.images.poster:e.cover_url?e.cover_url:e.cover?e.cover:e.pic&&e.pic.normal?e.pic.normal:""}function cW(e){if(e.vote_average!==void 0&&e.vote_average!==null&&e.vote_average!==""){let t=Number(e.vote_average);return Number.isNaN(t)?`\u8BC4\u5206: ${e.vote_average}`:`\u8BC4\u5206: ${t.toFixed(1)}`}return e.rating!==void 0?`\u8BC4\u5206: ${e.rating}`:e.t3!==void 0?`\u8BC4\u5206: ${e.t3}`:""}function iW(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?"":`\u7B2C${t}\u96C6`}function YRn(e,t=""){if(!e||typeof e!="object")return"";let r=e.episode_number||e.episode||e.ep||e.current_episode||e.currentEp,n=iW(r);if(n)return n;let s=e.next_episode_to_air?.episode_number,i=e.last_episode_to_air?.episode_number,a=t.includes("\u660E\u5929")?s:s||i;return iW(a)||iW(i)||iW(s)}function uW(e){return e.release_date?e.release_date.split("-")[0]:e.first_air_date?e.first_air_date.split("-")[0]:e.year?e.year.toString():""}function lW(e){return e.title||e.name||e.t1||""}function QRn(e,t){try{let r=e.find(s=>s.type==="category");if(!r||!r.content)return[];let n=r.content.find(s=>s.title===t);return!n||!n.data?[]:n.data.map(s=>({vod_id:s.id?.toString()||"",vod_name:lW(s),vod_pic:_3(s),vod_remarks:cW(s),vod_year:uW(s),vod_content:s.t2||s.overview||""}))}catch(r){return console.error("parseAreaData error:",r.message),[]}}function WRn(e,t){try{let r;return t==="\u4ECA\u65E5\u63A8\u8350"?r=e.find(n=>n.type==="1s"):r=e.find(n=>n.title===t),!r||!r.content?[]:r.content.map(n=>({vod_id:n.id?.toString()||"",vod_name:lW(n),vod_pic:_3(n),vod_remarks:cW(n),vod_year:uW(n),vod_content:n.overview||n.description||""}))}catch(r){return console.error("parseNormalData error:",r.message),[]}}async function XRn(e,t="All"){try{let r=[];return t==="All"?HRn.forEach(s=>{e[s]&&Array.isArray(e[s])&&(r=r.concat(e[s]))}):r=e[t]||[],await CVt(r,IVt,async s=>(await wVt(s),{vod_id:s.tmdb_id?.toString()||s.id?.toString()||"",vod_name:lW(s),vod_pic:_3(s),vod_remarks:cW(s),vod_year:uW(s),vod_content:s.overview||""}))}catch(r){return console.error("parseWeekData error:",r.message),[]}}async function JRn(e,t){try{let r=Array.isArray(e)?e.find(s=>s.title===t)?.content||e:[];return Array.isArray(r)?await CVt(r,IVt,async s=>(await wVt(s,!0),{vod_id:s.id?.toString()||s.tmdb_id?.toString()||"",vod_name:lW(s),vod_pic:_3(s),vod_remarks:YRn(s,t)||cW(s),vod_year:uW(s),vod_content:s.overview||s.description||""})):[]}catch(r){return console.error("parseAiringData error:",r.message),[]}}async function bVt(e,t="All"){let r=`parsed:${e}:${t}`;return oW(aW.parsed,"default",r,Ic.parsed.ttl,Ic.parsed.maxSize,async()=>{try{let n=await zRn(e);return n?RVt.includes(e)?XRn(n,t):e.includes("\u4ECA\u5929\u64AD\u51FA\u7684")||e.includes("\u660E\u5929\u64AD\u51FA\u7684")?JRn(n,e):$Rn.includes(e)?QRn(n,e):WRn(n,e):[]}catch(n){return console.error("parseRawData error:",n.message),[]}})}async function ZRn(e,t){let r=e.body||{},n=r.id,s=jRn(r.page),i=r.filters||{},a=VRn(n,i),o=i.weekday||"All";if(!n||!a)return{page:1,pagecount:1,limit:g3,total:0,list:[]};let c=`category:${n}:${a}:${o}:${s}`;return oW(aW.category,"category",c,Ic.category.ttl,Ic.category.maxSize,async()=>{let u=[];try{n==="weekPlay"?u=await bVt(a,o):u=await bVt(a)}catch(h){console.error("category error:",h.message)}let l=(s-1)*g3,d=l+g3,f=u.slice(l,d);return{page:s,pagecount:Math.ceil(u.length/g3)||1,limit:g3,total:u.length,list:f}})}async function eCn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=[];for(let s of r)n.push({vod_id:s,vod_name:`\u8FFD\u5267\u65E5\u5386\u9879\u76EE ${s}`,vod_pic:"",type_name:"\u8FFD\u5267\u65E5\u5386",vod_year:"2026",vod_area:"",vod_remarks:"\u8FFD\u5267\u65E5\u5386\u63A8\u8350",vod_actor:"",vod_director:"",vod_content:"\u8FD9\u662F\u6765\u81EA\u8FFD\u5267\u65E5\u5386\u7684\u63A8\u8350\u5185\u5BB9",vod_play_from:"\u8FFD\u5267\u65E5\u5386",vod_play_url:`\u7B2C1\u96C6$${s}`});return{list:n}}async function tCn(e,t){return{parse:0,url:"",header:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}}async function rCn(e,t){return{page:1,pagecount:1,list:[]}}async function nCn(e,t){try{let r=function(o){o.statusCode&&o.statusCode==500&&console.error(o)},n=e.server.prefix,s={},i=await e.server.inject().post(`${n}/init`),a=i.json();if(s.init=a,r(a),i=await e.server.inject().post(`${n}/home`),a=i.json(),s.home=a,r(a),s.home.class&&s.home.class.length>0){let o=s.home.class.find(u=>u.type_id==="area");o&&(i=await e.server.inject().post(`${n}/category`).payload({id:o.type_id,page:1,filters:{sort_by:"\u56FD\u4EA7\u5267"}}),a=i.json(),s.area_category=a,r(a));let c=s.home.class.find(u=>u.type_id==="todayPlay");c&&(i=await e.server.inject().post(`${n}/category`).payload({id:c.type_id,page:1,filters:{sort_by:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6"}}),a=i.json(),s.today_category=a,r(a))}return i=await e.server.inject().post(`${n}/search`).payload({wd:"\u7231",page:1}),a=i.json(),s.search=a,r(a),s}catch(r){return console.error("Test error:",r),t.code(500),{err:r.message,tip:"check debug console output"}}}var SVt,TVt,URn,g3,IVt,FRn,$Rn,RVt,qRn,HRn,Ic,aW,xVt,sCn,OVt=ie(()=>{Cr();Dn();Ds();fa();ia();SVt="f090bb54758cabf231fb605d3e3e0468",TVt=8e3,URn=1e4,g3=20,IVt=6,FRn={home1:["\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6","\u4ECA\u5929\u64AD\u51FA\u7684\u756A\u5267","\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6","\u660E\u5929\u64AD\u51FA\u7684\u756A\u5267","\u73B0\u6B63\u70ED\u64AD","\u4EBA\u6C14 Top 10","\u65B0\u5267\u96F7\u8FBE","\u70ED\u95E8\u56FD\u6F2B","\u5DF2\u6536\u5B98\u597D\u5267"],home0:["\u534E\u8BED\u70ED\u95E8","\u672C\u5B63\u65B0\u756A","\u4ECA\u65E5\u63A8\u8350","\u56FD\u4EA7\u5267","\u65E5\u5267","\u82F1\u7F8E\u5267","\u756A\u5267","\u97E9\u5267","\u6E2F\u53F0\u5267"]},$Rn=["\u56FD\u4EA7\u5267","\u65E5\u5267","\u82F1\u7F8E\u5267","\u756A\u5267","\u97E9\u5267","\u6E2F\u53F0\u5267"],RVt=["juji_week.json","fanju_week.json","guoman_week.json","zongyi_week.json"],qRn={todayPlay:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6",tomorrowPlay:"\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6",weekPlay:"juji_week.json",todayReCommand:"\u4ECA\u65E5\u63A8\u8350",rank:"\u73B0\u6B63\u70ED\u64AD",area:"\u56FD\u4EA7\u5267"},HRn=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Ic={raw:{ttl:5*60*1e3,maxSize:80},parsed:{ttl:3*60*1e3,maxSize:120},category:{ttl:60*1e3,maxSize:200},tmdb:{ttl:24*60*60*1e3,maxSize:2e3}},aW={raw:new _t(Ic.raw.maxSize,Ic.raw.ttl),parsed:new _t(Ic.parsed.maxSize,Ic.parsed.ttl),category:new _t(Ic.category.maxSize,Ic.category.ttl),tmdb:new _t(Ic.tmdb.maxSize,Ic.tmdb.ttl)};xVt={};Object.entries(FRn).forEach(([e,t])=>{t.forEach(r=>xVt[r]=e)});sCn={meta:{key:"zhuijurili",name:"\u{1F3E0} \u65E5\u5386",type:3,indexs:1},api:async e=>{e.post("/init",KRn),e.post("/home",GRn),e.post("/category",ZRn),e.post("/detail",eCn),e.post("/play",tCn),e.post("/search",rCn),e.get("/test",nCn)}}});var DVt,PVt=ie(()=>{DVt=[{moduleId:"mod_1",index:0,title:"\u{1F338} \u52A8\u6F2B\u5168\u5883\u805A\u5408",functionName:"routeAnimeOmni",params:[{name:"anime_source",title:"\u9009\u62E9\u6570\u636E\u6E90",value:"cal",belongTo:null,enumOptions:[{title:"Bangumi \u8FFD\u756A\u65E5\u5386",value:"cal"},{title:"Bilibili \u70ED\u5EA6\u699C\u5355",value:"bili"},{title:"Bangumi \u8FD1\u671F\u70ED\u95E8",value:"hot"},{title:"Bangumi \u5E74\u5B63\u5EA6\u699C",value:"rank"},{title:"Bangumi \u6BCF\u65E5\u653E\u9001",value:"daily"},{title:"TMDB \u70ED\u95E8/\u65B0\u756A",value:"tmdb"},{title:"AniList \u6D41\u884C\u699C\u5355",value:"anilist"},{title:"MAL \u6743\u5A01\u699C\u5355",value:"mal"}]},{name:"cal_day",title:"\u9009\u62E9\u65E5\u671F",value:"today",belongTo:{paramName:"anime_source",value:["cal"]},enumOptions:[{title:"\u{1F4C5} \u4ECA\u65E5\u66F4\u65B0",value:"today"},{title:"\u5468\u4E00 (\u6708)",value:"1"},{title:"\u5468\u4E8C (\u706B)",value:"2"},{title:"\u5468\u4E09 (\u6C34)",value:"3"},{title:"\u5468\u56DB (\u6728)",value:"4"},{title:"\u5468\u4E94 (\u91D1)",value:"5"},{title:"\u5468\u516D (\u571F)",value:"6"},{title:"\u5468\u65E5 (\u65E5)",value:"7"}]},{name:"bili_sort",title:"\u699C\u5355\u5206\u533A",value:"1",belongTo:{paramName:"anime_source",value:["bili"]},enumOptions:[{title:"\u{1F4FA} B\u7AD9\u756A\u5267 (\u65E5\u6F2B)",value:"1"},{title:"\u{1F1E8}\u{1F1F3} B\u7AD9\u56FD\u521B (\u56FD\u6F2B)",value:"4"}]},{name:"hot_cat",title:"\u5206\u7C7B",value:"anime",belongTo:{paramName:"anime_source",value:["hot"]},enumOptions:[{title:"\u52A8\u753B",value:"anime"}]},{name:"rank_cat",title:"\u5206\u7C7B",value:"anime",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u52A8\u753B",value:"anime"},{title:"\u4E09\u6B21\u5143",value:"real"}]},{name:"rank_year",title:"\u5E74\u4EFD",value:"2026",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"2027",value:"2027"},{title:"2026",value:"2026"},{title:"2025",value:"2025"},{title:"2024",value:"2024"},{title:"2023",value:"2023"},{title:"2022",value:"2022"},{title:"2021",value:"2021"},{title:"2020",value:"2020"},{title:"2019",value:"2019"},{title:"2018",value:"2018"},{title:"2017",value:"2017"},{title:"2016",value:"2016"},{title:"2015",value:"2015"},{title:"2014",value:"2014"},{title:"2013",value:"2013"},{title:"2012",value:"2012"},{title:"2011",value:"2011"},{title:"2010",value:"2010"},{title:"2009",value:"2009"},{title:"2008",value:"2008"},{title:"2007",value:"2007"},{title:"2006",value:"2006"},{title:"2005",value:"2005"},{title:"2004",value:"2004"},{title:"2003",value:"2003"},{title:"2002",value:"2002"},{title:"2001",value:"2001"},{title:"2000",value:"2000"},{title:"1999",value:"1999"},{title:"1998",value:"1998"},{title:"1997",value:"1997"},{title:"1996",value:"1996"},{title:"1995",value:"1995"},{title:"1994",value:"1994"},{title:"1993",value:"1993"},{title:"1992",value:"1992"},{title:"1991",value:"1991"},{title:"1990",value:"1990"},{title:"1989",value:"1989"},{title:"1988",value:"1988"},{title:"1987",value:"1987"},{title:"1986",value:"1986"},{title:"1985",value:"1985"},{title:"1984",value:"1984"},{title:"1983",value:"1983"},{title:"1982",value:"1982"},{title:"1981",value:"1981"},{title:"1980",value:"1980"},{title:"1979",value:"1979"},{title:"1978",value:"1978"},{title:"1977",value:"1977"},{title:"1976",value:"1976"},{title:"1975",value:"1975"},{title:"1974",value:"1974"},{title:"1973",value:"1973"},{title:"1972",value:"1972"},{title:"1971",value:"1971"},{title:"1970",value:"1970"},{title:"1969",value:"1969"},{title:"1968",value:"1968"},{title:"1967",value:"1967"},{title:"1966",value:"1966"},{title:"1965",value:"1965"},{title:"1964",value:"1964"},{title:"1963",value:"1963"},{title:"1962",value:"1962"},{title:"1961",value:"1961"},{title:"1960",value:"1960"},{title:"1959",value:"1959"},{title:"1958",value:"1958"},{title:"1957",value:"1957"},{title:"1956",value:"1956"},{title:"1955",value:"1955"},{title:"1954",value:"1954"},{title:"1953",value:"1953"},{title:"1952",value:"1952"},{title:"1951",value:"1951"},{title:"1950",value:"1950"},{title:"1949",value:"1949"},{title:"1948",value:"1948"},{title:"1947",value:"1947"},{title:"1946",value:"1946"},{title:"1945",value:"1945"},{title:"1944",value:"1944"},{title:"1943",value:"1943"},{title:"1942",value:"1942"},{title:"1941",value:"1941"},{title:"1940",value:"1940"}]},{name:"rank_month",title:"\u6708\u4EFD/\u5B63\u5EA6",value:"all",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u5168\u5E74",value:"all"},{title:"\u51AC\u5B63 (1\u6708)",value:"1"},{title:"\u6625\u5B63 (4\u6708)",value:"4"},{title:"\u590F\u5B63 (7\u6708)",value:"7"},{title:"\u79CB\u5B63 (10\u6708)",value:"10"}]},{name:"rank_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"collects",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u6392\u540D",value:"rank"},{title:"\u70ED\u5EA6",value:"trends"},{title:"\u6536\u85CF\u6570",value:"collects"},{title:"\u53D1\u552E\u65E5\u671F",value:"date"},{title:"\u540D\u79F0",value:"title"}]},{name:"daily_filter",title:"\u7B5B\u9009\u8303\u56F4",value:"today",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u4ECA\u65E5\u653E\u9001",value:"today"},{title:"\u6307\u5B9A\u5355\u65E5",value:"specific_day"},{title:"\u672C\u5468\u4E00\u81F3\u56DB",value:"mon_thu"},{title:"\u672C\u5468\u4E94\u81F3\u65E5",value:"fri_sun"},{title:"\u6574\u5468\u653E\u9001",value:"all_week"}]},{name:"daily_weekday",title:"\u6307\u5B9A\u5355\u65E5\u661F\u671F",value:"1",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u661F\u671F\u4E00",value:"1"},{title:"\u661F\u671F\u4E8C",value:"2"},{title:"\u661F\u671F\u4E09",value:"3"},{title:"\u661F\u671F\u56DB",value:"4"},{title:"\u661F\u671F\u4E94",value:"5"},{title:"\u661F\u671F\u516D",value:"6"},{title:"\u661F\u671F\u65E5",value:"7"}]},{name:"daily_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"popularity_rat_bgm",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u70ED\u5EA6(\u8BC4\u5206\u4EBA\u6570)",value:"popularity_rat_bgm"},{title:"\u8BC4\u5206",value:"score_bgm_desc"},{title:"\u653E\u9001\u65E5(\u66F4\u65B0\u65E5\u671F)",value:"airdate_desc"},{title:"\u9ED8\u8BA4",value:"default"}]},{name:"tmdb_sort",title:"\u699C\u5355\u7C7B\u578B",value:"trending",belongTo:{paramName:"anime_source",value:["tmdb"]},enumOptions:[{title:"\u{1F525} \u5B9E\u65F6\u6D41\u884C (Trending)",value:"trending"},{title:"\u{1F4C5} \u6700\u65B0\u9996\u64AD (New)",value:"new"},{title:"\u{1F451} \u9AD8\u5206\u795E\u4F5C (Top Rated)",value:"top"}]},{name:"anilist_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"TRENDING_DESC",belongTo:{paramName:"anime_source",value:["anilist"]},enumOptions:[{title:"\u{1F4C8} \u8FD1\u671F\u8D8B\u52BF (Trending)",value:"TRENDING_DESC"},{title:"\u{1F496} \u5386\u53F2\u4EBA\u6C14 (Popularity)",value:"POPULARITY_DESC"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8 (Score)",value:"SCORE_DESC"}]},{name:"mal_sort",title:"\u699C\u5355\u7C7B\u578B",value:"airing",belongTo:{paramName:"anime_source",value:["mal"]},enumOptions:[{title:"\u{1F525} \u5F53\u524D\u70ED\u64AD Top",value:"airing"},{title:"\u{1F3C6} \u5386\u53F2\u603B\u699C Top",value:"all"},{title:"\u{1F3A5} \u6700\u4F73\u5267\u573A\u7248",value:"movie"},{title:"\u{1F51C} \u5373\u5C06\u4E0A\u6620",value:"upcoming"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_2",index:1,title:"\u{1F3F7}\uFE0F \u5168\u7403\u5F71\u5267\u7C7B\u522B",functionName:"loadGenreRank",params:[{name:"sort_by",title:"\u5F71\u89C6\u7C7B\u578B",value:"all",belongTo:null,enumOptions:[{title:"\u{1F31F} \u5168\u90E8 (\u5F71+\u5267\u6DF7\u5408)",value:"all"},{title:"\u{1F3AC} \u7535\u5F71 (Movie)",value:"movie"},{title:"\u{1F4FA} \u7535\u89C6\u5267 (TV)",value:"tv"}]},{name:"genre",title:"\u9898\u6750\u6D41\u6D3E",value:"all",belongTo:null,enumOptions:[{title:"\u{1F31F} \u5168\u90E8\u9898\u6750 (All)",value:"all"},{title:"\u{1F6F8} \u79D1\u5E7B (Sci-Fi)",value:"scifi"},{title:"\u{1F50D} \u60AC\u7591 (Mystery)",value:"mystery"},{title:"\u{1F47B} \u6050\u6016 (Horror)",value:"horror"},{title:"\u{1F52A} \u72AF\u7F6A (Crime)",value:"crime"},{title:"\u{1F4A5} \u52A8\u4F5C (Action)",value:"action"},{title:"\u{1F602} \u559C\u5267 (Comedy)",value:"comedy"},{title:"\u2764\uFE0F \u7231\u60C5 (Romance)",value:"romance"},{title:"\u{1F3AD} \u5267\u60C5 (Drama)",value:"drama"},{title:"\u{1F409} \u5947\u5E7B (Fantasy)",value:"fantasy"},{title:"\u{1F3A8} \u52A8\u753B (Animation)",value:"animation"},{title:"\u{1F3A5} \u7EAA\u5F55\u7247 (Documentary)",value:"documentary"}]},{name:"region",title:"\u56FD\u5BB6/\u5730\u533A",value:"all",belongTo:null,enumOptions:[{title:"\u{1F30D} \u5168\u7403 (\u6240\u6709\u56FD\u5BB6)",value:"all"},{title:"\u{1F1E8}\u{1F1F3} \u4E2D\u56FD\u5927\u9646",value:"cn"},{title:"\u{1F1ED}\u{1F1F0} \u4E2D\u56FD\u9999\u6E2F",value:"hk"},{title:"\u{1F1F9}\u{1F1FC} \u4E2D\u56FD\u53F0\u6E7E",value:"tw"},{title:"\u{1F3EE} \u6E2F\u53F0 (\u9999\u6E2F+\u53F0\u6E7E)",value:"hktw"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"jp"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"kr"},{title:"\u{1F338} \u65E5\u97E9\u5408\u96C6",value:"jpkr"},{title:"\u{1F1F9}\u{1F1ED} \u6CF0\u56FD",value:"th"},{title:"\u{1F1F8}\u{1F1EC} \u65B0\u52A0\u5761",value:"sg"},{title:"\u{1F1F2}\u{1F1FE} \u9A6C\u6765\u897F\u4E9A",value:"my"},{title:"\u{1F1EE}\u{1F1F3} \u5370\u5EA6",value:"in"},{title:"\u{1F30F} \u4E9A\u592A\u5927\u533A",value:"apac"},{title:"\u{1F1FA}\u{1F1F8} \u7F8E\u56FD",value:"us"},{title:"\u{1F1EC}\u{1F1E7} \u82F1\u56FD",value:"gb"},{title:"\u{1F1E9}\u{1F1EA} \u5FB7\u56FD",value:"de"},{title:"\u{1F1F8}\u{1F1EA} \u745E\u5178",value:"se"},{title:"\u{1F1EA}\u{1F1FA} \u6B27\u6D32\u5168\u5883",value:"europe"},{title:"\u{1F1EA}\u{1F1F8} \u897F\u73ED\u7259",value:"es"},{title:"\u{1F1F2}\u{1F1FD} \u58A8\u897F\u54E5",value:"mx"},{title:"\u{1F483} \u897F\u8BED/\u62C9\u4E01\u7F8E\u6D32",value:"latin"}]},{name:"order_rule",title:"\u6392\u5E8F\u89C4\u5219",value:"popularity",belongTo:null,enumOptions:[{title:"\u{1F525} \u70ED\u95E8\u8D8B\u52BF",value:"popularity"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8",value:"rating"},{title:"\u{1F4C5} \u6700\u65B0\u4E0A\u7EBF",value:"time"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_3",index:2,title:"\u{1F3AC} \u5168\u80FD\u7535\u5F71\u699C\u5355",functionName:"routeMovieOmni",params:[{name:"movie_source",title:"\u699C\u5355\u6A21\u5F0F",value:"general",belongTo:null,enumOptions:[{title:"\u{1F525} \u7535\u5F71\u7EFC\u5408\u699C",value:"general"},{title:"\u{1F3C6} \u5E74\u5EA6\u6700\u4F73\u7535\u5F71",value:"yearly"},{title:"\u{1F3F7}\uFE0F \u6309\u7C7B\u578B\u63A2\u7D22",value:"genre"}]},{name:"general_sort",title:"\u699C\u5355\u5206\u7C7B",value:"popular",belongTo:{paramName:"movie_source",value:["general"]},enumOptions:[{title:"\u{1F525} \u6D41\u884C\u8D8B\u52BF (Popular)",value:"popular"},{title:"\u2B50\uFE0F \u5386\u53F2\u9AD8\u5206 (Top Rated)",value:"top_rated"},{title:"\u{1F4B0} \u5168\u7403\u7968\u623F\u699C (Box Office)",value:"box_office"},{title:"\u{1F3C6} \u5965\u65AF\u5361\u4F73\u7247 (Oscar)",value:"oscar"}]},{name:"yearly_sort",title:"\u9009\u62E9\u5E74\u4EFD",value:"2024",belongTo:{paramName:"movie_source",value:["yearly"]},enumOptions:[{title:"2025\u5E74 \u6700\u4F73",value:"2025"},{title:"2024\u5E74 \u6700\u4F73",value:"2024"},{title:"2023\u5E74 \u6700\u4F73",value:"2023"},{title:"2022\u5E74 \u6700\u4F73",value:"2022"},{title:"2021\u5E74 \u6700\u4F73",value:"2021"},{title:"2020\u5E74 \u6700\u4F73",value:"2020"},{title:"2019\u5E74 \u6700\u4F73",value:"2019"},{title:"2018\u5E74 \u6700\u4F73",value:"2018"},{title:"2017\u5E74 \u6700\u4F73",value:"2017"},{title:"2016\u5E74 \u6700\u4F73",value:"2016"},{title:"2015\u5E74 \u6700\u4F73",value:"2015"}]},{name:"genre_sort",title:"\u9009\u62E9\u7C7B\u578B",value:"878",belongTo:{paramName:"movie_source",value:["genre"]},enumOptions:[{title:"\u{1F6F8} \u79D1\u5E7B (Sci-Fi)",value:"878"},{title:"\u{1F3AD} \u5267\u60C5 (Drama)",value:"18"},{title:"\u{1F92F} \u60AC\u7591 (Mystery)",value:"9648"},{title:"\u{1F4A5} \u52A8\u4F5C (Action)",value:"28"},{title:"\u{1F602} \u559C\u5267 (Comedy)",value:"35"},{title:"\u2764\uFE0F \u7231\u60C5 (Romance)",value:"10749"},{title:"\u{1F47B} \u6050\u6016 (Horror)",value:"27"},{title:"\u{1F52A} \u72AF\u7F6A (Crime)",value:"80"},{title:"\u{1F9D9}\u200D\u2642\uFE0F \u5947\u5E7B (Fantasy)",value:"14"},{title:"\u{1F984} \u52A8\u753B (Animation)",value:"16"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_4",index:3,title:"\u{1F4FA} \u5168\u7403\u7EFC\u827A\u9891\u9053",functionName:"loadVarietyShows",params:[{name:"sort_by",title:"\u56FD\u5BB6/\u5730\u533A",value:"cn",belongTo:null,enumOptions:[{title:"\u{1F1E8}\u{1F1F3} \u4E2D\u56FD\u5927\u9646",value:"cn"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"kr"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"jp"},{title:"\u{1F1F9}\u{1F1FC} \u4E2D\u56FD\u53F0\u6E7E",value:"tw"},{title:"\u{1F1ED}\u{1F1F0} \u4E2D\u56FD\u9999\u6E2F",value:"hk"},{title:"\u{1F1FA}\u{1F1F8} \u6B27\u7F8E\u7EFC\u5408",value:"eu_us"},{title:"\u{1F30D} \u5168\u7403\u7EFC\u5408",value:"all"}]},{name:"list_type",title:"\u6392\u64AD\u4E0E\u699C\u5355",value:"hot",belongTo:null,enumOptions:[{title:"\u{1F525} \u8FD1\u671F\u70ED\u64AD (Hot)",value:"hot"},{title:"\u{1F4C5} \u4ECA\u65E5\u66F4\u65B0 (Today)",value:"today"},{title:"\u{1F51C} \u660E\u65E5\u9884\u544A (Tomorrow)",value:"tomorrow"},{title:"\u{1F4C8} \u6D41\u884C\u8D8B\u52BF (5\u5E74\u5185\u70ED\u699C)",value:"trend"},{title:"\u2B50 \u9AD8\u5206\u795E\u7EA7 (Top Rated)",value:"top"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_5",index:4,title:"\u{1F9ED} \u5F71\u5267\u6D41\u884C\u98CE\u5411",functionName:"routeTrendsHub",params:[{name:"hub_source",title:"\u9009\u62E9\u5E73\u53F0",value:"imdb",belongTo:null,enumOptions:[{title:"\u{1F7E1} IMDb \u6743\u5A01\u699C\u5355",value:"imdb"},{title:"\u{1F345} \u70C2\u756A\u8304\u98CE\u5411\u6807",value:"rt"},{title:"\u{1F30D} Trakt \u8D8B\u52BF\u699C",value:"trakt"},{title:"\u{1F7E2} \u8C46\u74E3 \u56FD\u5185\u98CE\u5411",value:"douban"}]},{name:"imdb_sort",title:"IMDb \u699C\u5355",value:"trending_week",belongTo:{paramName:"hub_source",value:["imdb"]},enumOptions:[{title:"\u{1F4C5} \u672C\u5468\u70ED\u699C (Trending Week)",value:"trending_week"},{title:"\u{1F525} \u4ECA\u65E5\u70ED\u699C (Trending Day)",value:"trending_day"},{title:"\u{1F30A} \u6D41\u884C\u8D8B\u52BF (Popular)",value:"popular"},{title:"\u{1F48E} \u9AD8\u5206\u795E\u4F5C (Top Rated)",value:"top_rated"},{title:"\u{1F1E8}\u{1F1F3} \u56FD\u4EA7\u5267\u70ED\u5EA6(\u6A21\u62DF)",value:"china_tv"},{title:"\u{1F1E8}\u{1F1F3} \u56FD\u4EA7\u7535\u5F71\u70ED\u5EA6(\u6A21\u62DF)",value:"china_movie"}]},{name:"mediaType",title:"\u8303\u56F4 (\u4EC5\u5168\u7403\u699C\u6709\u6548)",value:"all",belongTo:{paramName:"imdb_sort",value:["trending_week","trending_day","popular","top_rated"]},enumOptions:[{title:"\u5168\u90E8 (\u5267\u96C6+\u7535\u5F71)",value:"all"},{title:"\u7535\u5F71",value:"movie"},{title:"\u5267\u96C6",value:"tv"}]},{name:"rt_sort",title:"\u70C2\u756A\u8304 \u699C\u5355",value:"rt_movies_home",belongTo:{paramName:"hub_source",value:["rt"]},enumOptions:[{title:"\u{1F3AC} \u6D41\u5A92\u4F53\u70ED\u6620",value:"rt_movies_home"},{title:"\u{1F37F} \u9662\u7EBF\u70ED\u6620",value:"rt_movies_theater"},{title:"\u{1F48E} \u6700\u4F73\u6D41\u5A92\u4F53",value:"rt_movies_best"},{title:"\u{1F4FA} \u70ED\u95E8\u5267\u96C6",value:"rt_tv_popular"},{title:"\u{1F195} \u6700\u65B0\u4E0A\u7EBF",value:"rt_tv_new"}]},{name:"trakt_sort",title:"Trakt \u699C\u5355",value:"trending",belongTo:{paramName:"hub_source",value:["trakt"]},enumOptions:[{title:"\u{1F525} \u5B9E\u65F6\u70ED\u64AD (Trending)",value:"trending"},{title:"\u{1F30A} \u6700\u53D7\u6B22\u8FCE (Popular)",value:"popular"},{title:"\u2764\uFE0F \u6700\u53D7\u671F\u5F85 (Anticipated)",value:"anticipated"}]},{name:"traktType",title:"Trakt \u7C7B\u578B",value:"all",belongTo:{paramName:"hub_source",value:["trakt"]},enumOptions:[{title:"\u5168\u90E8 (\u5267\u96C6+\u7535\u5F71)",value:"all"},{title:"\u5267\u96C6",value:"shows"},{title:"\u7535\u5F71",value:"movies"}]},{name:"db_sort",title:"\u8C46\u74E3 \u699C\u5355",value:"db_tv_cn",belongTo:{paramName:"hub_source",value:["douban"]},enumOptions:[{title:"\u{1F1E8}\u{1F1F3} \u70ED\u95E8\u56FD\u4EA7\u5267",value:"db_tv_cn"},{title:"\u{1F3A4} \u70ED\u95E8\u7EFC\u827A",value:"db_variety"},{title:"\u{1F3AC} \u70ED\u95E8\u7535\u5F71",value:"db_movie"},{title:"\u{1F1FA}\u{1F1F8} \u70ED\u95E8\u7F8E\u5267",value:"db_tv_us"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_6",index:5,title:"\u{1F500} \u5E73\u53F0\u5206\u6D41\u7247\u5E93",functionName:"loadPlatformMatrix",params:[{name:"sort_by",title:"\u5185\u5BB9\u5206\u7C7B",value:"tv_drama",belongTo:null,enumOptions:[{title:"\u{1F4FA} \u7535\u89C6\u5267",value:"tv_drama"},{title:"\u{1F3A4} \u7EFC\u827A",value:"tv_variety"},{title:"\u{1F432} \u52A8\u6F2B",value:"tv_anime"},{title:"\u{1F3AC} \u7535\u5F71",value:"movie"}]},{name:"platform",title:"\u64AD\u51FA\u5E73\u53F0",value:"2007",belongTo:null,enumOptions:[{title:"\u817E\u8BAF\u89C6\u9891",value:"2007"},{title:"\u7231\u5947\u827A",value:"1330"},{title:"\u4F18\u9177",value:"1419"},{title:"\u8292\u679CTV",value:"1631"},{title:"Bilibili",value:"1605"},{title:"Netflix",value:"213"},{title:"Disney+",value:"2739"},{title:"HBO",value:"49"},{title:"Apple TV+",value:"2552"}]},{name:"sort",title:"\u6392\u5E8F",value:"popularity.desc",belongTo:null,enumOptions:[{title:"\u{1F525} \u70ED\u5EA6\u6700\u9AD8",value:"popularity.desc"},{title:"\u{1F4C5} \u6700\u65B0\u9996\u64AD",value:"first_air_date.desc"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8",value:"vote_average.desc"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_7",index:6,title:"\u{1F947} \u6D41\u5A92\u4F53TOP10",functionName:"loadOfficialTop10",params:[{name:"sort_by",title:"\u699C\u5355\u5730\u533A",value:"united-states",belongTo:null,enumOptions:[{title:"\u{1F1FA}\u{1F1F8} \u7F8E\u56FD",value:"united-states"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"south-korea"},{title:"\u{1F1F9}\u{1F1FC} \u53F0\u6E7E",value:"taiwan"},{title:"\u{1F1ED}\u{1F1F0} \u9999\u6E2F",value:"hong-kong"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"japan"},{title:"\u{1F1EC}\u{1F1E7} \u82F1\u56FD",value:"united-kingdom"},{title:"\u{1F30D} \u5168\u7403",value:"world"}]},{name:"platform",title:"\u6D41\u5A92\u4F53\u5E73\u53F0",value:"netflix",belongTo:null,enumOptions:[{title:"Netflix",value:"netflix"},{title:"HBO",value:"hbo"},{title:"Disney+",value:"disney"},{title:"Apple TV+",value:"apple-tv"},{title:"Amazon Prime",value:"amazon-prime"}]},{name:"mediaType",title:"\u699C\u5355\u7C7B\u578B",value:"tv",belongTo:null,enumOptions:[{title:"\u{1F4FA} \u5267\u96C6 (TV Shows)",value:"tv"},{title:"\u{1F3AC} \u7535\u5F71 (Movies)",value:"movie"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]}]});var zVt={};kt(zVt,{default:()=>nxn});async function vDe(e,t,r,n){let s=LVt[e]||LVt.category,i=s.get(t);return i!==null?i:$n("zhuijujuhe",e,t,async()=>{let a=await n();return s.set(t,a),a},{timeout:3e4})}function qVt(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}function EDe(e=""){return String(e).replace(/[\u{1F300}-\u{1FAFF}\u{2600}-\u{27BF}]/gu,"").replace(/\s+/g," ").trim()}function ni(e,t=""){return e==null?t:String(e).trim()}function HVt(e,t){return`${cCn}/${e==="movie"?"movie":"tv"}/${t}`}async function Np(e,t={}){let r={"User-Agent":FVt,...t.headers||{}};return Xe.get(e,{...t,headers:r})}async function ra(e,t={}){let r={api_key:iCn,language:"zh-CN",...t.params||{}};return(await Np(`${oCn}${e}`,{...t,params:r,timeout:t.timeout||15e3}))?.data||{}}function lCn(e){return`mod_${e+1}`}function VVt(){let e=new Map;return DVt.forEach((t,r)=>{e.set(lCn(r),{...t,__index:r})}),e}function MVt(e=[]){return e.filter(t=>t&&t.name!=="page").map(t=>({key:t.name,name:t.title||t.name,init:t.value??"",showWhen:t.belongTo?{key:t.belongTo.paramName,values:Array.isArray(t.belongTo.value)?t.belongTo.value:[t.belongTo.value]}:null,value:Array.isArray(t.enumOptions)?t.enumOptions.map(r=>({n:ni(r.title||r.label||r.value),v:ni(r.value)})):[]}))}function dCn(e){return(e.params||[]).find(t=>t&&!t.belongTo&&t.name!=="page"&&Array.isArray(t.enumOptions)&&t.enumOptions.length>1)}function fCn(e,t,r){return`${e}__${t}__${r}`}function hCn(e){let t=String(e).match(/^(mod_\d+)__([^_]+(?:_[^_]+)*)__(.+)$/);return t?{moduleId:t[1],rootParamName:t[2],rootValue:t[3]}:null}function pCn(){let e=VVt(),t=[],r={};for(let[n,s]of e.entries()){let i=dCn(s),a=_Cn(s,i);if(!i||!a){t.push({type_id:n,type_name:EDe(s.title||s.functionName||n)}),r[n]=MVt(s.params||[]);continue}for(let o of i.enumOptions||[]){let c=fCn(n,i.name,ni(o.value)),u=EDe(o.title||o.label||o.value||`${s.title}`),l={[i.name]:ni(o.value)},d=(s.params||[]).filter(f=>!f||f.name==="page"||f.name===i.name?!1:GVt(f,l));t.push({type_id:c,type_name:u}),r[c]=ACn(c,MVt(d).map(f=>({...f,showWhen:null})))}}return{classes:t,filters:r}}async function mCn(e){try{let t=await e?.db?.getObjectDefault("/config/zhuiju",{});return t&&typeof t=="object"?t:{}}catch{return{}}}function gCn(e=[],t={},r={}){let n=r?.classes&&typeof r.classes=="object"?r.classes:{},i=e.map((o,c)=>{let u=n[o.type_id]||{};return{...o,type_name:ni(u.name,o.type_name)||o.type_name,__hidden:u.hidden===!0,__order:Number.isFinite(Number(u.order))?Number(u.order):c+1}}).filter(o=>!o.__hidden).sort((o,c)=>o.__order-c.__order||o.type_name.localeCompare(c.type_name,"zh-CN")).map(({__hidden:o,__order:c,...u})=>u),a={};return i.forEach(o=>{a[o.type_id]=t[o.type_id]||[]}),{classes:i,filters:a}}function _Cn(e,t){return t?!!new Set(["anime_source","movie_source","hub_source"]).has(t.name):!1}function ACn(e,t=[]){let r=ECn(e);return!r||!Object.keys(r).length?t:t.map(n=>Object.prototype.hasOwnProperty.call(r,n.key)?{...n,init:r[n.key]}:n)}function ECn(e){switch(e){case"mod_5__hub_source__imdb":return{imdb_sort:"trending_week",mediaType:"all"};case"mod_6__sort_by__movie":return{platform:"213",sort:"popularity.desc"};case"mod_7__sort_by__united-kingdom":return{platform:"netflix",mediaType:"tv"};default:return null}}function yCn(e,t=""){let r=ni(e?.tmdbId||e?.id),n=ni(e?.title,"\u672A\u547D\u540D"),s=ni(e?.subTitle||e?.genreTitle||e?.date||e?.releaseDate,t),i=ni(e?.description||e?.desc||e?.overview,"\u6682\u65E0\u7B80\u4ECB"),a=ni(e?.posterPath||e?.poster||e?.cover||e?.image),o=ni(e?.year||(e?.releaseDate||e?.date||"").slice(0,4));return{vod_id:`${e?.mediaType==="movie"?"movie":"tv"}:${r}`,vod_name:n,vod_pic:a,vod_remarks:s,vod_year:o,vod_content:i,vod_tag:ni(e?.genreTitle)}}function F0(e){if(!e||!Array.isArray(e))return"\u5F71\u89C6";let t=e.map(r=>uCn[r]).filter(Boolean);return t.length>0?t.slice(0,2).join(" / "):"\u5F71\u89C6"}function $w({id:e,tmdbId:t,type:r,title:n,date:s,poster:i,backdrop:a,genreText:o,subTitle:c,desc:u}){let l=[s,c].filter(Boolean).join(" \xB7 "),d=u?` +${u}`:` +\u6682\u65E0\u7B80\u4ECB`;return{id:String(e),tmdbId:parseInt(t,10)||parseInt(e,10),type:"tmdb",mediaType:r,title:n,genreTitle:o||(r==="tv"?"\u5267\u96C6":"\u7535\u5F71"),description:l?l+d:u||"\u6682\u65E0\u7B80\u4ECB",releaseDate:s,posterPath:i?String(i).startsWith("http")?String(i):`https://image.tmdb.org/t/p/w500${i}`:"",backdropPath:a?String(a).startsWith("http")?String(a):`https://image.tmdb.org/t/p/w780${a}`:"",subTitle:c}}function kVt(e){return ni(e).replace(/[./]/g,"-")}async function vCn(e,t={},r={}){let n={"User-Agent":FVt,"Content-Type":"application/json",...r.headers||{}};return Xe.post(e,t,{...r,headers:n})}async function y3(e,t,r){async function n(i){if(!i||typeof i!="string")return null;let a=i.replace(/第[一二三四五六七八九十\d]+[季章]/g,"").replace(/Season \d+/i,"").trim();try{let o={query:a,language:"zh-CN",include_adult:!1};r&&(o.first_air_date_year=r);let c=await ra("/search/tv",{params:o}),u=c.results||[];u.length===0&&r&&(delete o.first_air_date_year,c=await ra("/search/tv",{params:o}),u=c.results||[]);let l=u.filter(h=>Array.isArray(h.genre_ids)&&h.genre_ids.includes(16));if(l.length>0)return l.find(h=>h.poster_path)||l[0];let d={query:a,language:"zh-CN",include_adult:!1};r&&(d.primary_release_year=r),c=await ra("/search/movie",{params:d}),u=c.results||[],u.length===0&&r&&(delete d.primary_release_year,c=await ra("/search/movie",{params:d}),u=c.results||[]);let f=u.filter(h=>Array.isArray(h.genre_ids)&&h.genre_ids.includes(16));if(f.length>0)return f.find(h=>h.poster_path)||f[0]}catch{}return null}let s=await n(e);return!s&&t&&e!==t&&(s=await n(t)),s}async function yDe(e){return Array.isArray(e)?(await Promise.all(e.map(async r=>{let n=r.name_cn||r.title||r.name,s=r.title!==n?r.title:null,i=r.releaseDate||r.description||r.air_date||r.info||"",a=ni(i).match(/(\d{4})/),o=a?a[1]:null,c=await y3(n,s,o);return c?{id:String(c.id),tmdbId:parseInt(c.id,10),type:"tmdb",mediaType:c.title?"movie":"tv",title:c.name||c.title||n,genreTitle:F0(c.genre_ids),description:c.first_air_date||c.release_date||kVt(i)||"\u5373\u5C06\u64AD\u51FA",releaseDate:c.first_air_date||c.release_date||kVt(i),posterPath:c.poster_path?`https://image.tmdb.org/t/p/w500${c.poster_path}`:"",backdropPath:c.backdrop_path?`https://image.tmdb.org/t/p/w780${c.backdrop_path}`:"",rating:c.vote_average?c.vote_average.toFixed(1):r.rating||"0.0"}:null}))).filter(Boolean):[]}async function SCn(e={}){let{sort_by:t="today",page:r=1}=e,n=parseInt(t,10);if(t==="today"){let s=new Date().getDay();n=s===0?7:s}try{let i=((await Np("https://api.bgm.tv/calendar")).data||[]).find(u=>u.weekday&&u.weekday.id===n);if(!i)return[];let a=20,o=i.items.slice((r-1)*a,r*a);return(await Promise.all(o.map(async u=>{let l=ni(u.name_cn||u.name).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim(),d=u.air_date?u.air_date.substring(0,4):null,f=await y3(l,u.name,d);return f?$w({id:f.id,tmdbId:f.id,type:"tv",title:f.name||f.title||u.name_cn||u.name,date:f.first_air_date||u.air_date,poster:f.poster_path,backdrop:f.backdrop_path,genreText:F0(f.genre_ids),desc:f.overview||u.summary||"\u6682\u65E0\u7B80\u4ECB"}):null}))).filter(Boolean)}catch{return[]}}async function TCn(e={}){let t=e.category||"anime",r=parseInt(e.page||"1",10),n=20,s=(r-1)*n,i=await vDe("home",`bangumi-hot:${t}`,dW,async()=>(await Np(aCn,{timeout:15e3}))?.data||{}),o=(t==="anime"?i?.hot_anime||[]:Array.isArray(i?.[t])?i[t]:[]).slice(s,s+n);return o.length?o.map((c,u)=>{let l=ni(c.description).split(` +`),d=l.length>1?l.slice(1).join(` +`):c.description;return $w({id:c.id,tmdbId:c.tmdbId,type:c.mediaType||c.type||"tv",title:c.title,date:c.releaseDate||"",poster:c.posterPath,backdrop:c.backdropPath,genreText:c.genreTitle,subTitle:`\u{1F525} \u70ED\u5EA6 TOP ${s+u+1}`,desc:d||"\u6682\u65E0\u7B80\u4ECB"})}):E3({sort_by:"trending",page:r})}async function bCn(e={}){let t=e.category||"anime",r=e.year||`${new Date().getFullYear()}`,n=e.month||"all",s=e.sort||"collects",i=parseInt(e.page||"1",10),a=`airtime-${t}-${r}-${n}-${s}-${i}`;if(Fw.airtime[a])return yDe(Fw.airtime[a]);let o=`https://bgm.tv/${t}/browser/airtime/${r}/${n}?sort=${s}&page=${i}`,c=await jVt.processBangumiPage(o);if(!c.length)return E3({sort_by:s==="date"?"new":s==="rank"?"top":"trending",page:i});Fw.airtime[a]=c;let u=await yDe(c);return u.length?u:E3({sort_by:s==="date"?"new":s==="rank"?"top":"trending",page:i})}async function ICn(e={}){Fw.daily.length||(Fw.daily=await jVt.processDailyCalendar());let t=Fw.daily||[],{filterType:r="today",specificWeekday:n="1",dailySortOrder:s="popularity_rat_bgm"}=e,i={0:7,1:1,2:2,3:3,4:4,5:5,6:6},a=[];if(r==="all_week")a=t;else{let c=new Date().getDay(),u=new Set;switch(r){case"today":u.add(i[c]);break;case"specific_day":u.add(parseInt(n,10));break;case"mon_thu":[1,2,3,4].forEach(l=>u.add(l));break;case"fri_sun":[5,6,7].forEach(l=>u.add(l));break;default:u.add(i[c])}a=t.filter(l=>l.bgm_weekday_id&&u.has(l.bgm_weekday_id))}let o=[...a];return s!=="default"&&o.sort((c,u)=>s==="popularity_rat_bgm"?(u.bgm_rating_total||0)-(c.bgm_rating_total||0):s==="score_bgm_desc"?(u.bgm_score||0)-(c.bgm_score||0):s==="airdate_desc"?new Date(u.air_date||0).getTime()-new Date(c.air_date||0).getTime():0),yDe(o)}async function RCn(e={}){let{sort_by:t="1",page:r=1}=e,n=`https://api.bilibili.com/pgc/web/rank/list?day=3&season_type=${t}`;try{let s=await Np(n,{headers:{Referer:"https://www.bilibili.com/"}}),i=s.data?.result?.list||s.data?.data?.list||[],a=20,o=i.slice((r-1)*a,r*a);return(await Promise.all(o.map(async u=>{let l=ni(u.title).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim(),d=await y3(l,u.title,null);return d?$w({id:d.id,tmdbId:d.id,type:"tv",title:d.name||d.title,date:d.first_air_date,poster:d.poster_path,backdrop:d.backdrop_path,genreText:F0(d.genre_ids),desc:d.overview,subTitle:u.new_ep?.index_show||"\u70ED\u64AD\u4E2D"}):null}))).filter(Boolean)}catch{return[]}}async function E3(e={}){let{sort_by:t="trending",page:r=1}=e,n={language:"zh-CN",page:r,with_genres:"16",with_original_language:"ja"};t==="trending"?n.sort_by="popularity.desc":t==="new"?n.sort_by="first_air_date.desc":t==="top"&&(n.sort_by="vote_average.desc");try{return((await ra("/discover/tv",{params:n})).results||[]).map(i=>$w({id:i.id,tmdbId:i.id,type:"tv",title:i.name||i.title,date:i.first_air_date,poster:i.poster_path,backdrop:i.backdrop_path,genreText:F0(i.genre_ids),desc:i.overview}))}catch{return[]}}async function CCn(e={}){let{sort_by:t="TRENDING_DESC",page:r=1}=e,n=`query ($page: Int, $perPage: Int) { Page (page: $page, perPage: $perPage) { media (sort: ${t}, type: ANIME) { title { native romaji english } averageScore seasonYear } } }`;try{let i=(await vCn("https://graphql.anilist.co",{query:n,variables:{page:r,perPage:20}})).data?.data?.Page?.media||[];return(await Promise.all(i.map(async o=>{let c=await y3(o.title.native||o.title.romaji,o.title.english,o.seasonYear);return c?$w({id:c.id,tmdbId:c.id,type:"tv",title:c.name||c.title,date:c.first_air_date,poster:c.poster_path,backdrop:c.backdrop_path,genreText:F0(c.genre_ids),desc:c.overview}):null}))).filter(Boolean)}catch{return[]}}async function xCn(e={}){let{sort_by:t="airing",page:r=1}=e,n={page:r};t==="airing"?n.filter="airing":t==="upcoming"&&(n.filter="upcoming");try{let i=(await Np("https://api.jikan.moe/v4/top/anime",{params:n})).data?.data||[];return(await Promise.all(i.map(async o=>{let c=await y3(o.title_japanese||o.title,o.title_english,null);return c?$w({id:c.id,tmdbId:c.id,type:"tv",title:c.name||c.title,date:c.first_air_date,poster:c.poster_path,backdrop:c.backdrop_path,genreText:F0(c.genre_ids),desc:c.overview}):null}))).filter(Boolean)}catch{return E3({sort_by:t==="upcoming"?"new":t==="all"||t==="movie"?"top":"trending",page:r})}}async function wCn(e){let t=e.anime_source||"cal",r={page:e.page||1};return t==="cal"?(r.sort_by=e.cal_day||"today",SCn(r)):t==="bili"?(r.sort_by=e.bili_sort||"1",RCn(r)):t==="hot"?(r.category=e.hot_cat||"anime",TCn(r)):t==="rank"?(r.category=e.rank_cat||"anime",r.year=e.rank_year||`${new Date().getFullYear()}`,r.month=e.rank_month||"all",r.sort=e.rank_sort||"collects",bCn(r)):t==="daily"?(r.filterType=e.daily_filter||"today",r.specificWeekday=e.daily_weekday||"1",r.dailySortOrder=e.daily_sort||"popularity_rat_bgm",ICn(r)):t==="tmdb"?(r.sort_by=e.tmdb_sort||"trending",E3(r)):t==="anilist"?(r.sort_by=e.anilist_sort||"TRENDING_DESC",CCn(r)):t==="mal"?(r.sort_by=e.mal_sort||"airing",xCn(r)):[]}function Mb(e){if(!e)return null;let t=e.release_date||e.first_air_date||"";return{id:String(e.id),tmdbId:parseInt(e.id,10),type:"tmdb",mediaType:e.title?"movie":"tv",title:e.title||e.name,releaseDate:t,genreTitle:F0(e.genre_ids),subTitle:t?t.substring(0,4):"\u672A\u77E5",posterPath:e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",backdropPath:e.backdrop_path?`https://image.tmdb.org/t/p/w780${e.backdrop_path}`:"",description:`${t} +${e.overview||"\u6682\u65E0\u7B80\u4ECB"}`}}async function _De(e,t,r,n,s){let i=NCn[t]?.[e]||"",a=OCn[r]||"",c={language:"zh-CN",page:s,sort_by:n==="rating"?"vote_average.desc":n==="time"?e==="movie"?"primary_release_date.desc":"first_air_date.desc":"popularity.desc",include_adult:!1,include_video:!1};if(i&&(c.with_genres=i),a&&(c.with_origin_country=a),c["vote_count.gte"]=n==="rating"?200:10,n==="time"){let u=new Date;u.setMonth(u.getMonth()+1);let l=u.toISOString().split("T")[0];e==="movie"?c["primary_release_date.lte"]=l:c["first_air_date.lte"]=l}try{return((await ra(`/discover/${e}`,{params:c})).results||[]).map(l=>({...Mb(l),_popularity:l.popularity||0,_date:l.release_date||l.first_air_date||"1970-01-01"}))}catch{return[]}}async function DCn(e={}){let t=parseInt(e.page,10)||1,r=e.sort_by||"all",n=e.genre||"all",s=e.region||"all",i=e.order_rule||"popularity";if(r==="all"){let[a,o]=await Promise.all([_De("movie",n,s,i,t),_De("tv",n,s,i,t)]);return[...a,...o].sort((u,l)=>i==="time"?new Date(l._date)-new Date(u._date):l._popularity-u._popularity).slice(0,20)}return _De(r,n,s,i,t)}async function PCn(e={}){let t=e.sort_by||"popular",r="/movie/popular",n={language:"zh-CN",page:e.page||1};t==="top_rated"?r="/movie/top_rated":t==="box_office"?(r="/discover/movie",n.sort_by="revenue.desc"):t==="oscar"&&(r="/discover/movie",n.with_keywords="818",n.sort_by="vote_average.desc",n["vote_count.gte"]=1e3);try{return((await ra(r,{params:n})).results||[]).map(Mb).filter(Boolean)}catch{return[]}}async function LCn(e={}){try{return((await ra("/discover/movie",{params:{language:"zh-CN",page:e.page||1,primary_release_year:e.sort_by||"2024",sort_by:"vote_average.desc","vote_count.gte":500}})).results||[]).map(Mb).filter(Boolean)}catch{return[]}}async function MCn(e={}){try{return((await ra("/discover/movie",{params:{language:"zh-CN",page:e.page||1,with_genres:e.sort_by||"878",sort_by:"popularity.desc"}})).results||[]).map(Mb).filter(Boolean)}catch{return[]}}async function kCn(e={}){let t=e.movie_source||"general",r={page:e.page||1};return t==="general"?(r.sort_by=e.general_sort||"popular",PCn(r)):t==="yearly"?(r.sort_by=e.yearly_sort||"2024",LCn(r)):t==="genre"?(r.sort_by=e.genre_sort||"878",MCn(r)):[]}async function BCn(e={}){let t=parseInt(e.page,10)||1,r=e.sort_by||"cn",n=e.list_type||"hot",s={all:"",cn:"CN",kr:"KR",jp:"JP",tw:"TW",hk:"HK",eu_us:"US|GB|DE|FR|IT|ES|CA|AU"},i={language:"zh-CN",page:t,with_genres:"10764|10767",include_adult:!1};s[r]&&(i.with_origin_country=s[r]);let a=new Date,o=a.toISOString().split("T")[0],c=new Date(a);c.setDate(c.getDate()+1);let u=c.toISOString().split("T")[0],l=new Date(a);l.setFullYear(l.getFullYear()-5),n==="today"?(i.sort_by="popularity.desc",i["air_date.gte"]=o,i["air_date.lte"]=o):n==="tomorrow"?(i.sort_by="popularity.desc",i["air_date.gte"]=u,i["air_date.lte"]=u):n==="trend"?(i.sort_by="popularity.desc",i["first_air_date.gte"]=l.toISOString().split("T")[0]):n==="top"?(i.sort_by="vote_average.desc",i["vote_count.gte"]=15):i.sort_by="popularity.desc";try{return((await ra("/discover/tv",{params:i})).results||[]).map(f=>({...Mb({...f,title:f.name}),mediaType:"tv"})).filter(Boolean)}catch{return[]}}async function BVt(e,t){try{return((await ra(`/discover/${e}`,{params:t})).results||[]).map(Mb).filter(Boolean)}catch{return[]}}async function UCn(e={}){let t=e.sort_by||"tv_drama",r=e.platform||"2007",n=e.sort||"popularity.desc",s=e.page||1;if(t==="movie"&&!["213","2739","49","2552"].includes(r))return[];let a={language:"zh-CN",sort_by:n,page:s,include_adult:!1,include_null_first_air_dates:!1};if(t.startsWith("tv_"))return a.with_networks=r,t==="tv_anime"?a.with_genres="16":t==="tv_variety"?a.with_genres="10764|10767":t==="tv_drama"&&(a.without_genres="16,10764,10767"),BVt("tv",a);let o={213:"8",2739:"337",49:"1899|15",2552:"350"};return a.watch_region="US",a.with_watch_providers=o[r]||"8",BVt("movie",a)}async function FCn(e,t,r){let n={netflix:"8",disney:"337",hbo:"1899|118","apple-tv":"350","amazon-prime":"119"},s={"united-states":"US","south-korea":"KR",taiwan:"TW","hong-kong":"HK",japan:"JP","united-kingdom":"GB",world:"US"};try{return((await ra(`/discover/${r}`,{params:{watch_region:s[t]||"US",with_watch_providers:n[e]||"8",sort_by:"popularity.desc",page:1,language:"zh-CN"}})).results||[]).slice(0,10).map((a,o)=>({...Mb(a),subTitle:`TOP ${o+1}`}))}catch{return[]}}async function $Cn(e={}){return FCn(e.platform||"netflix",e.sort_by||"united-states",e.mediaType||"tv")}function A3(e,t){if(!e)return null;let r=t||e.media_type||(e.title?"movie":"tv"),n=e.release_date||e.first_air_date||"";return{id:String(e.id),tmdbId:parseInt(e.id,10),type:"tmdb",mediaType:r,title:e.title||e.name,subTitle:n||"",description:n?`${n} +${e.overview||"\u6682\u65E0\u7B80\u4ECB"}`:e.overview||"\u6682\u65E0\u7B80\u4ECB",releaseDate:n,posterPath:e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",backdropPath:e.backdrop_path?`https://image.tmdb.org/t/p/w780${e.backdrop_path}`:"",year:n.substring(0,4),genreTitle:F0(e.genre_ids)||(r==="tv"?"\u5267\u96C6":"\u7535\u5F71")}}async function KVt(e="trending_week",t="all",r=1){try{let n=[];if(String(e).startsWith("china_")){let a=e==="china_tv"?"tv":"movie";return((await ra(`/discover/${a}`,{params:{language:"zh-CN",page:r,sort_by:"popularity.desc",with_original_language:"zh","vote_count.gte":2}})).results||[]).map(c=>A3(c,a))}if(String(e).startsWith("trending_"))return n=((await ra(`/trending/${t==="all"?"all":t}/${e==="trending_day"?"day":"week"}`,{params:{language:"zh-CN",page:r}})).results||[]).map(c=>A3(c)),n;if(t==="all"){let[i,a]=await Promise.all([ra(`/movie/${e}`,{params:{language:"zh-CN",page:r}}),ra(`/tv/${e}`,{params:{language:"zh-CN",page:r}})]),o=(i.results||[]).map(u=>A3(u,"movie")),c=(a.results||[]).map(u=>A3(u,"tv"));return[...o,...c].slice(0,20)}return((await ra(`/${t}/${e}`,{params:{language:"zh-CN",page:r}})).results||[]).map(i=>A3(i,t))}catch{return[]}}async function qCn(e){let t=UVt[e]||UVt.rt_movies_home;try{let r=await Np(t),n=Xt(r.data||""),s=[];return n('[data-qa="discovery-media-list-item"]').each((i,a)=>{let o=n(a),c=o.find('[data-qa="discovery-media-list-item-title"]').text().trim();if(!c)return;let u=o.find("score-pairs");s.push({title:c,tomatoScore:u.attr("critics-score")||"",popcornScore:u.attr("audiencescore")||"",mediaType:String(e).includes("tv")?"tv":"movie"})}),s}catch{return[]}}async function HCn(e,t){try{let r=ni(e.title).replace(/\s\(\d{4}\)$/,""),s=((await ra(`/search/${e.mediaType}`,{params:{query:r,language:"zh-CN"}})).results||[])[0];if(!s)return null;let i=[];e.tomatoScore&&i.push(`\u{1F345} ${e.tomatoScore}%`),e.popcornScore&&i.push(`\u{1F37F} ${e.popcornScore}%`);let a=s.first_air_date||s.release_date||"";return{id:String(s.id),tmdbId:s.id,type:"tmdb",mediaType:e.mediaType,title:`${t}. ${s.name||s.title}`,genreTitle:F0(s.genre_ids)||(e.mediaType==="movie"?"\u7535\u5F71":"\u5267\u96C6"),description:`${a} +\u539F\u540D: ${e.title}`,releaseDate:a,subTitle:i.join(" ")||"\u70C2\u756A\u8304\u8BA4\u8BC1",posterPath:s.poster_path?`https://image.tmdb.org/t/p/w500${s.poster_path}`:"",backdropPath:s.backdrop_path?`https://image.tmdb.org/t/p/w780${s.backdrop_path}`:""}}catch{return null}}async function VCn(e,t=1){let r=await qCn(e);if(!r.length){let o=String(e).includes("tv")?"tv":"movie";return KVt("popular",o,t)}let n=15,s=(t-1)*n,i=r.slice(s,s+n);return(await Promise.all(i.map((o,c)=>HCn(o,s+c+1)))).filter(Boolean)}async function ADe(e,t,r,n){try{return(await Np(`https://api.trakt.tv/${e}/${t}?limit=15&page=${n}`,{headers:{"Content-Type":"application/json","trakt-api-version":"2","trakt-api-key":r}})).data||[]}catch{return[]}}async function jCn(e="trending",t="all",r="95b59922670c84040db3632c7aac6f33704f6ffe5cbf3113a056e37cb45cb482",n=1){let s=[];if(t==="all"){let[a,o]=await Promise.all([ADe("movies",e,r,n),ADe("shows",e,r,n)]);s=[...a,...o].sort((c,u)=>(u.watchers||u.list_count||0)-(c.watchers||c.list_count||0))}else s=await ADe(t,e,r,n);return s.length?(await Promise.all(s.slice(0,20).map(async(a,o)=>{let c=a.show||a.movie||a,u=a.show?"tv":"movie",l=e==="trending"?`\u{1F525} ${a.watchers||0} \u4EBA\u5728\u770B`:e==="anticipated"?`\u2764\uFE0F ${a.list_count||0} \u4EBA\u60F3\u770B`:`No. ${(n-1)*15+o+1}`;if(t==="all"&&(l=`[${u==="tv"?"\u5267":"\u5F71"}] ${l}`),!c?.ids?.tmdb)return null;try{let d=await ra(`/${u}/${c.ids.tmdb}`,{params:{language:"zh-CN"}});return{id:String(d.id),tmdbId:d.id,type:"tmdb",mediaType:u,title:d.name||d.title||c.title,genreTitle:F0((d.genres||[]).map(f=>f.id)),releaseDate:d.first_air_date||d.release_date||"",subTitle:l,description:`${d.first_air_date||d.release_date||""} +${d.overview||"\u6682\u65E0\u7B80\u4ECB"}`,posterPath:d.poster_path?`https://image.tmdb.org/t/p/w500${d.poster_path}`:"",backdropPath:d.backdrop_path?`https://image.tmdb.org/t/p/w780${d.backdrop_path}`:""}}catch{return null}}))).filter(Boolean):[]}async function KCn(e,t){try{let r=ni(e).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim();return((await ra(`/search/${t}`,{params:{query:r,language:"zh-CN"}})).results||[])[0]||null}catch{return null}}function GCn(e,t){e.id=String(t.id),e.tmdbId=t.id,e.posterPath=t.poster_path?`https://image.tmdb.org/t/p/w500${t.poster_path}`:e.posterPath,e.backdropPath=t.backdrop_path?`https://image.tmdb.org/t/p/w780${t.backdrop_path}`:"";let r=t.first_air_date||t.release_date||"";e.genreTitle=F0(t.genre_ids)||(e.mediaType==="tv"?"\u5267\u96C6":"\u7535\u5F71"),e.releaseDate=r,e.description=`${r?`${r} \xB7 `:""}${e.subTitle}${t.overview?` +${t.overview}`:` +\u6682\u65E0\u7B80\u4ECB`}`}async function zCn(e,t,r=1){let n=(r-1)*20;try{let s=Math.random().toString(36).slice(2,13),i=await Np(`https://movie.douban.com/j/search_subjects?type=${t}&tag=${encodeURIComponent(e)}&sort=recommend&page_limit=20&page_start=${n}`,{headers:{"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X)",Referer:"https://movie.douban.com/explore",Host:"movie.douban.com","X-Requested-With":"XMLHttpRequest",Cookie:`bid=${s};`}}),o=(typeof i.data=="string"?JSON.parse(i.data):i.data||{}).subjects||[];return await Promise.all(o.map(async u=>{let l={id:`db_${u.id}`,type:"tmdb",mediaType:t,title:u.title,subTitle:`\u8C46\u74E3 ${u.rate}`,description:`\u8C46\u74E3 ${u.rate} +\u6682\u65E0\u7B80\u4ECB`,genreTitle:t==="tv"?"\u5267\u96C6":"\u7535\u5F71",posterPath:u.cover},d=await KCn(u.title,t);return d&&GCn(l,d),l}))}catch{return[]}}async function YCn(e={}){let t=e.hub_source||"imdb",r=e.page||1;if(t==="rt")return VCn(e.rt_sort||"rt_movies_home",r);if(t==="imdb")return KVt(e.imdb_sort||"trending_week",e.mediaType||"all",r);if(t==="trakt")return jCn(e.trakt_sort||"trending",e.traktType||"all",e.traktClientId,r);if(t==="douban"){let n=e.db_sort||"db_tv_cn",s="\u70ED\u95E8",i="tv";return n==="db_tv_cn"?(s="\u56FD\u4EA7\u5267",i="tv"):n==="db_variety"?(s="\u7EFC\u827A",i="tv"):n==="db_movie"?(s="\u70ED\u95E8",i="movie"):n==="db_tv_us"&&(s="\u7F8E\u5267",i="tv"),zCn(s,i,r)}return[]}async function QCn(e,t){return{}}async function WCn(e,t){let r=Qr("zhuijujuhe",arguments[0]||{}),n=Wr(r);if(n)return n;let s=e?.query?.raw==="1"||e?.query?.raw===1||e?.query?.raw===!0,i=pCn();if(s)return{class:i.classes,filters:i.filters};let a=await mCn(e?.server),o=gCn(i.classes,i.filters,a),c={class:o.classes,filters:o.filters};return hn(r,c,bt.semiStatic),c}function GVt(e,t){let r=e?.belongTo;if(!r||!r.paramName)return!0;let n=t?.[r.paramName];return Array.isArray(r.value)?r.value.includes(n):n===r.value}function XCn(e,t={}){let r=t.filters||{},n={};for(let i of e.params||[])!i||i.name==="page"||i.belongTo||(r[i.name]!==void 0&&r[i.name]!==""?n[i.name]=r[i.name]:i.value!==void 0&&(n[i.name]=i.value));let s=!0;for(;s;){s=!1;for(let i of e.params||[]){if(!i||i.name==="page"||!i.belongTo||!GVt(i,n))continue;let a=r[i.name]!==void 0&&r[i.name]!==""?r[i.name]:i.value;a!==void 0&&n[i.name]!==a&&(n[i.name]=a,s=!0)}}return n.page=qVt(t.page),n}async function JCn(e,t){let r=e.body||{},n=ni(r.id),s=qVt(r.page);return n?vDe("category",`category:${n}:${JSON.stringify(r.filters||{})}:p${s}`,dW,async()=>{let i=VVt(),a=hCn(n),o=a?.moduleId||n,c=i.get(o);if(!c)return{page:1,pagecount:1,limit:20,total:0,list:[]};let u=XCn(c,{...r,filters:{...r.filters||{},...a?{[a.rootParamName]:a.rootValue}:{}}}),l=[];if(c.functionName==="routeAnimeOmni")l=await wCn(u);else if(c.functionName==="loadGenreRank")l=await DCn(u);else if(c.functionName==="routeMovieOmni")l=await kCn(u);else if(c.functionName==="loadVarietyShows")l=await BCn(u);else if(c.functionName==="loadPlatformMatrix")l=await UCn(u);else if(c.functionName==="loadOfficialTop10")l=await $Cn(u);else if(c.functionName==="routeTrendsHub")l=await YCn(u);else throw new Error(`\u672C\u5730\u5B9E\u73B0\u672A\u63A5\u5165: ${c.functionName}`);let d=Array.isArray(l)?l.filter(Boolean).filter(f=>f.type!=="text").map(f=>yCn(f,EDe(c.title||""))):[];return{page:s,pagecount:d.length<20?s:s+1,limit:20,total:d.length,list:d}}):{page:1,pagecount:1,limit:20,total:0,list:[]}}async function ZCn(e,t){return vDe("detail",`detail:${e}:${t}`,$Vt,async()=>ra(`/${e}/${t}`,{params:{append_to_response:"credits,videos,external_ids"}}))}function exn(e,t,r){let n=e?.id||r,s=ni(e?.name||e?.title,`TMDB ${n}`),i=ni((e?.first_air_date||e?.release_date||"").slice(0,4)),a=Array.isArray(e?.origin_country)?e.origin_country.join("/"):"",o=Array.isArray(e?.credits?.cast)?e.credits.cast.slice(0,8).map(h=>h.name).join("/"):"",c=Array.isArray(e?.credits?.crew)?e.credits.crew.filter(h=>["Director","Series Director","Writer","Screenplay"].includes(h.job)).slice(0,6).map(h=>h.name).join("/"):"",u=Array.isArray(e?.genres)?e.genres.map(h=>h.name).join("/"):"",l=ni(e?.overview,"\u6682\u65E0\u7B80\u4ECB"),d=ni(e?.vote_average?`TMDB ${Number(e.vote_average).toFixed(1)}`:"TMDB"),f=HVt(t,n);return{vod_id:`${t}:${n}`,vod_name:s,vod_pic:e?.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",type_name:u,vod_year:i,vod_area:a,vod_remarks:d,vod_actor:o,vod_director:c,vod_content:l,vod_play_from:"TMDB\u8BE6\u60C5",vod_play_url:`\u67E5\u770B\u8BE6\u60C5$${f}`}}async function txn(e,t){let r=e.body?.id,n=Array.isArray(r)?r:[r],s=[];for(let i of n){let a=ni(i),[o,c]=a.includes(":")?a.split(":"):["tv",a],u=o==="movie"?"movie":"tv";try{let l=await ZCn(u,c);s.push(exn(l,u,c))}catch(l){s.push({vod_id:a,vod_name:`TMDB ${c}`,vod_pic:"",type_name:u==="movie"?"\u7535\u5F71":"\u5267\u96C6",vod_year:"",vod_area:"",vod_remarks:"\u8BE6\u60C5\u62C9\u53D6\u5931\u8D25",vod_actor:"",vod_director:"",vod_content:l.message,vod_play_from:"TMDB\u8BE6\u60C5",vod_play_url:`\u67E5\u770B\u8BE6\u60C5$${HVt(u,c)}`})}}return{list:s}}async function rxn(e,t){try{let r=e.server.prefix,s=await(await e.server.inject().post(`${r}/home`)).json(),i=s?.class?.[0],a=null;return i&&(a=await(await e.server.inject().post(`${r}/category`).payload({id:i.type_id,page:1,filters:{}})).json()),{home:s,category:a}}catch(r){return t.code(500),{err:r.message}}}var iCn,aCn,oCn,cCn,FVt,dW,$Vt,gDe,uCn,LVt,Fw,jVt,NCn,OCn,UVt,nxn,YVt=ie(()=>{Cr();Dn();Xd();PVt();fa();ia();iCn="f090bb54758cabf231fb605d3e3e0468",aCn="https://raw.githubusercontent.com/MakkaPakka518/List/refs/heads/main/data/bangumi-hot.json",oCn="https://api.themoviedb.org/3",cCn="https://www.themoviedb.org",FVt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",dW=60*1e3,$Vt=10*60*1e3,gDe=128,uCn={16:"\u52A8\u753B",10759:"\u52A8\u4F5C\u5192\u9669",35:"\u559C\u5267",18:"\u5267\u60C5",14:"\u5947\u5E7B",878:"\u79D1\u5E7B",9648:"\u60AC\u7591",10749:"\u7231\u60C5",27:"\u6050\u6016",10765:"\u79D1\u5E7B\u5947\u5E7B",80:"\u72AF\u7F6A",99:"\u7EAA\u5F55\u7247",10751:"\u5BB6\u5EAD",36:"\u5386\u53F2",10402:"\u97F3\u4E50",10770:"\u7535\u89C6\u7535\u5F71",53:"\u60CA\u609A",10752:"\u6218\u4E89",37:"\u897F\u90E8",28:"\u52A8\u4F5C",12:"\u5192\u9669"},LVt={home:new _t(gDe,dW),category:new _t(gDe,dW),detail:new _t(gDe,$Vt)};Fw={airtime:Object.create(null),daily:[]},jVt={parseBangumiListItems(e){let t=Xt(e||""),r=[];return t("ul#browserItemList li.item").each((n,s)=>{let i=t(s),a=i.attr("id")?.substring(5);if(!a)return;let o=i.find("h3 a.l").text().trim(),c=i.find("p.info.tip").text().trim(),u=i.find("small.fade").text().trim();r.push({id:a,title:o,info:c,rating:u})}),r},async processBangumiPage(e){try{let t=await Np(e);return this.parseBangumiListItems(t.data)}catch{return[]}},async processDailyCalendar(){try{let e=await Np("https://api.bgm.tv/calendar"),t=[];return Array.isArray(e?.data)&&e.data.forEach(r=>{r&&Array.isArray(r.items)&&r.items.forEach(n=>{n.bgm_weekday_id=r.weekday?.id,t.push(n)})}),t}catch{return[]}}};NCn={all:{movie:"",tv:""},scifi:{movie:"878",tv:"10765"},mystery:{movie:"9648",tv:"9648"},horror:{movie:"27",tv:"27"},crime:{movie:"80",tv:"80"},action:{movie:"28",tv:"10759"},comedy:{movie:"35",tv:"35"},romance:{movie:"10749",tv:"10749"},drama:{movie:"18",tv:"18"},fantasy:{movie:"14",tv:"10765"},animation:{movie:"16",tv:"16"},documentary:{movie:"99",tv:"99"}},OCn={all:"",cn:"CN",hk:"HK",tw:"TW",hktw:"HK|TW",jp:"JP",kr:"KR",jpkr:"JP|KR",th:"TH",sg:"SG",my:"MY",in:"IN",apac:"CN|HK|TW|JP|KR|TH|SG|MY|IN",us:"US",gb:"GB",de:"DE",se:"SE",europe:"GB|DE|FR|IT|ES|SE|NO|DK|FI|NL|BE|CH|AT|IE",es:"ES",mx:"MX",latin:"ES|MX|AR|CO|CL|PE|VE"};UVt={rt_movies_theater:"https://www.rottentomatoes.com/browse/movies_in_theaters/sort:popular?minTomato=75",rt_movies_home:"https://www.rottentomatoes.com/browse/movies_at_home/sort:popular?minTomato=75",rt_movies_best:"https://www.rottentomatoes.com/browse/movies_at_home/sort:critic_highest?minTomato=90",rt_tv_popular:"https://www.rottentomatoes.com/browse/tv_series_browse/sort:popular?minTomato=75",rt_tv_new:"https://www.rottentomatoes.com/browse/tv_series_browse/sort:newest?minTomato=75"};nxn={meta:{key:"zhuiju",name:"\u{1F3E0} \u8FFD\u5267",type:3,indexs:1,ext:{configurable:!0}},api:async e=>{e.post("/init",QCn),e.post("/home",WCn),e.post("/category",JCn),e.post("/detail",txn),e.get("/test",rxn)}}});function kb(e,t=""){return e==null?t:String(e)}function ixn(e,t=fl.count){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>=0?r:t}function axn(e,t=!1){if(typeof e=="boolean")return e;if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?!0:["0","false","no","off","n"].includes(r)?!1:t}function QVt(e,t=fl.pancheck_mode){let r=String(e||"").trim().toLowerCase();return["off","detect","pancheck"].includes(r)?r:t}function TDe(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function oxn(e){return Array.from(new Set(TDe(e)))}function cxn(e={}){let t=TDe(e.include),r=TDe(e.exclude);return{include:t,exclude:r}}function bDe(e={}){let t=e&&typeof e=="object"?e:{},r=oxn(t.selected_platforms??t.selectedPlatforms??fl.selected_platforms),n=t.pancheck_enabled!==void 0?axn(t.pancheck_enabled,fl.pancheck_enabled):QVt(t.pancheck_mode,fl.pancheck_mode)==="pancheck",s=t.pancheck_mode!==void 0?QVt(t.pancheck_mode,fl.pancheck_mode):n?"pancheck":"off";return{api_urls:kb(t.api_urls,fl.api_urls),count:ixn(t.count,fl.count),pancheck:kb(t.pancheck,fl.pancheck),pancheck_enabled:n,pancheck_mode:s,channels:kb(t.channels,fl.channels),plugins:kb(t.plugins,fl.plugins),cloud_types:kb(t.cloud_types,fl.cloud_types),include:kb(t.include,fl.include),exclude:kb(t.exclude,fl.exclude),selected_platforms:r,selected_platforms_str:r.join(","),filter:cxn(t)}}async function fW(e){e.get("/config",async(t,r)=>{try{let n=await qw(t.server);r.send({code:0,data:n})}catch(n){r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:bDe({})})}}),e.put("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault(SDe,{}),s=bDe({...n,...t.body||{}});await t.server.db.push(SDe,s),r.send({code:0,data:s,message:"Pansou\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var SDe,sxn,fl,qw,IDe,RDe,CDe,xDe,wDe,hW=ie(()=>{SDe="/pansou",sxn="https://pancheck.banye.tech:7777",fl={api_urls:"https://so.hk.111651.xyz",count:0,pancheck:sxn,pancheck_enabled:!1,pancheck_mode:"off",channels:"",plugins:"",cloud_types:"",include:"",exclude:"",selected_platforms:["quark","uc","tianyi","pan123","pan115","cmcc","baidu","aliyun","magnet","xunlei","ed2k","guangya"]};qw=async e=>{let t=await e.db.getObjectDefault(SDe,{});return bDe(t)},IDe=async e=>(await qw(e)).api_urls,RDe=async e=>(await qw(e)).pancheck,CDe=async e=>(await qw(e)).pancheck_mode,xDe=async e=>(await qw(e)).count,wDe=async e=>{let t=await qw(e);return{channels:t.channels,plugins:t.plugins,cloud_types:t.cloud_types,selected_platforms:t.selected_platforms,filter:t.filter,include:t.include,exclude:t.exclude}}});var WVt=ie(()=>{hW();hW()});var i7t={};kt(i7t,{default:()=>Mxn});function ODe(e){let t=NDe.get(e);return t?Date.now()>t?(NDe.delete(e),!1):!0:!1}function mxn(e){NDe.set(e,Date.now()+pxn)}function mW(){return{page:1,pagecount:1,list:[]}}function _xn(e={}){return JSON.stringify({source:"pansou",mode:"resource",...e})}function Axn(e={}){return JSON.stringify({source:"pansou",mode:"group-category",...e})}function n7t(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="pansou"&&t.mode)return t}catch{}return null}function Exn(e){if(!e)return[];let t=new Set,r=String(e).split(",");for(let n=0;nv3[t]):[]}function s7t(e,t){let r=new Set,n=new Set,s=t.map(i=>v3[i]);for(let i=0;is?.key===r);if(n?.name)return n.name}return String(e||"").trim()||"\u7F51\u76D8"}function S3(e,t=[],r=null){let n=T3(e);if(n){let s=t.find(i=>i?.key===n);if(s?.pic)return Txn(r,s.pic)}return""}function Txn(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}function bxn(){let e=Array.isArray(Zs())?Zs():[];return new Map(e.map((t,r)=>[String(t?.key||"").trim(),{index:r,enable:!!t?.enable}]))}function Ixn(e,t){let r=T3(e);return r?r==="magnet"?!!t?.get("magnet")?.enable||!!t?.get("magnet_guangya")?.enable:t?.has(r)?!!t.get(r)?.enable:!1:!1}function t7t(e,t){let r=T3(e);return r?t?.get(r)?.index??Number.MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER}function Rxn(e){return`${e?.note||""} ${e?.url||""}`.match(/(?:提取码|访问码|密码|口令|code|pwd|password)\s*[:: =]?\s*([a-zA-Z0-9]{4,8})/i)?.[1]||""}async function Cxn(e,t,r){let n=r.length>0?r:Object.keys(v3),{linksToCheck:s,uncheckedLinks:i}=s7t(t,n);if(s.size===0)return t;let a=[];for(let f=0;fi.has(f.url));let c=(await ye.post(`${e}/api/check/links`,{items:a},{timeout:1e4,headers:{"Content-Type":"application/json"}})).data||{},u=Array.isArray(c?.results)?c.results:Array.isArray(c?.data?.results)?c.data.results:null,l=null;if(Array.isArray(u))l=u.filter(f=>{let h=String(f?.state||"").trim().toLowerCase();return h==="valid"||h==="ok"||h==="good"}).map(f=>f?.url||f?.normalized_url||f?.link||"").filter(Boolean);else{let f=[c?.data?.valid_links,c?.data?.links,c?.valid_links,c?.links,c?.data,c];for(let h=0;htypeof g=="string"?g:g?.url||g?.link||g?.share_url||"").filter(Boolean);if(m.length>0||p.length===0){l=m;break}}}if(!Array.isArray(l))return t;let d=new Set(l);for(let f of i)d.add(f);return t.filter(f=>d.has(f.url))}async function xxn(e,t,r){let n=r.length>0?r:Object.keys(v3),{linksToCheck:s,uncheckedLinks:i}=s7t(t,n);if(r.length>0){if(s.size>0){let c=await ye.post(`${e||XVt}/api/v1/links/check`,{links:Array.from(s),selected_platforms:r},{timeout:1e4,headers:{"Content-Type":"application/json"}});if(Array.isArray(c.data?.valid_links)){let u=new Set(c.data.valid_links);for(let l of i)u.add(l);return t.filter(l=>u.has(l.url))}return t.filter(u=>i.has(u.url))}return t}let a=Array.from(new Set(t.map(c=>c.url))),o=await ye.post(`${e||XVt}/api/v1/links/check`,{links:a,selected_platforms:Object.keys(v3)},{timeout:1e4,headers:{"Content-Type":"application/json"}});if(Array.isArray(o.data?.valid_links)){let c=new Set(o.data.valid_links);return t.filter(u=>c.has(u.url))}return t}async function wxn(e){if(!Array.isArray(e)||e.length===0)return"";let t=Date.now();if(Op.url&&t-Op.timestamp!ODe(o)),n=r.length>0?r:e;if(n.length===1)return Op={url:n[0],timestamp:t},n[0];let s=new AbortController,i=setTimeout(()=>s.abort(),4e3),a=n.map(async o=>{try{return await ye.get(`${o}/api/health`,{timeout:2500,signal:s.signal}),o}catch(c){throw c}});try{let o=await Promise.any(a);return s.abort(),Op={url:o,timestamp:t},o}catch{return Op={url:"",timestamp:0},n[0]}finally{clearTimeout(i)}}async function Nxn(e,t){return await Ti(e,t),{}}async function Oxn(e,t){let r=Qr("pansou",arguments[0]||{}),n=Wr(r);return n||{class:[]}}async function Dxn(e,t){let r=e.body||{},n=Math.max(1,Number.parseInt(r.pg||r.page||r.pn,10)||1),s=String(r.tid||r.id||r.t||"").trim(),i=n7t(s);if(!i||i.mode!=="group-category")return{page:n,pagecount:1,list:[]};let a=Ca(),o=Array.isArray(i.items)?i.items:[],c=String(i.panType||"").trim(),u=DDe(c,a);return{page:1,pagecount:1,list:o.map(d=>{let f=String(d?.url||"").trim(),h=e7t(d?.note||f)||f,p=String(d?.datetime||"").split("T")[0],m=e7t(d?.source||""),g=[u];return p&&!r7t.test(p)&&g.push(p),m&&g.push(`[${m}]`),{vod_id:_xn({url:f,name:h,pic:d?.images?.[0]||S3(c,a)||"",remarks:g.join(" ")}),vod_name:h,vod_pic:d?.images?.[0]||S3(c,a)||"",vod_remarks:g.join(" "),type_name:`${u}\u8D44\u6E90`}})}}async function Pxn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=Ca(),s=r.map(async a=>{let o=String(a||""),c=n7t(o);if(c?.mode==="group"||c?.mode==="group-category"){let p=String(c.panType||"").trim(),m=DDe(p,n);return[{vod_id:o,vod_name:m,vod_pic:S3(p,n)||"",vod_remarks:"\u76EE\u5F55\u9879\uFF0C\u8BF7\u8FDB\u5165\u4E0B\u4E00\u5C42\u67E5\u770B\u8D44\u6E90"}]}let u=o,l=o,d="",f="";if(c?.mode==="resource")u=c.url||o,l=c.name||c.url||o,d=c.pic||"",f=c.remarks||"";else try{let p=JSON.parse(o);u=p.url,l=p.name||p.url,d=p.pic||"",f=p.remarks||""}catch{u=o,l=o}let h={vod_id:o,vod_name:l,vod_pic:d,vod_remarks:f};try{let p=await Es(u,e);p&&(h.vod_play_from=p.froms,h.vod_play_url=p.urls,Array.isArray(p.links)&&p.links.length>0&&(h.vod_links=p.links))}catch{}return h});return{list:(await Promise.all(s)).flat().filter(Boolean)}}async function Lxn(e,t){let{server:r,body:{wd:n}}=e,s=String(n||"").trim();if(!s)return mW();let[i,a,o,c,u]=await Promise.all([IDe(r),RDe(r),CDe(r),xDe(r),wDe(r)]),l=Exn(i);if(l.length===0)return mW();let d=String(o||"off").trim().toLowerCase(),f=u||{},h=Number.parseInt(c,10),p=Number.isFinite(h)&&h>=0?h:0,m=vxn(s,l,a,d,p,f),g=JVt.get(m);if(g)return g;let y=await $n("pansou","search",m,async()=>{let A=await wxn(l);if(!A)return mW();let E=[],v="",b=[A,...l.filter(G=>G!==A&&!ODe(G))],I=null,T="",x=null,w=b.length;for(let G=0;GK.trim().toLowerCase()).filter(Boolean)):null;for(let[K,ee]of Object.entries(I)){if($&&!$.has(K.toLowerCase())||!Array.isArray(ee)||ee.length===0)continue;if(!v)for(let le=0;lepW(te.datetime)-pW(le.datetime)),oe=p>0?z.slice(0,p):z;for(let le=0;le0)try{let K=Sxn(f.selected_platforms);d==="detect"?E=await Cxn(T,G,K):d==="pancheck"?E=await xxn(a,G,K):E=G}catch(K){console.error("[pansou] Pancheck \u9519\u8BEF:",iS(K)),E=G}else E=G;E.sort((K,ee)=>pW(ee.datetime)-pW(K.datetime))}}catch(G){console.error("[pansou] \u641C\u7D22\u7ED3\u679C\u5904\u7406\u9519\u8BEF:",iS(G))}if(E.length===0)return mW();let D=Ca(),M=bxn(),L=new Map;for(let G=0;G{let K=t7t(G[0],M)-t7t($[0],M);return K!==0?K:$[1].count-G[1].count}).map(([G,$])=>{let K=Axn({wd:s,panType:G,items:$.items});return{vod_id:K,vod_name:DDe(G,D),vod_pic:S3(G,D,e)||$.cover||"",vod_remarks:`${$.count} \u6761\u7ED3\u679C`,vod_tag:"folder",type_id:K,type_name:"\u7F51\u76D8\u76EE\u5F55",cate:{}}})}},{timeout:6e4});return JVt.set(m,y),y}var XVt,uxn,r7t,lxn,dxn,fxn,hxn,Op,JVt,ZVt,pxn,NDe,v3,gxn,pW,Mxn,a7t=ie(()=>{fc();WVt();vr();yi();Nm();Dn();fa();ia();PE();XVt="https://pancheck.banye.tech:7777",uxn=6e5,r7t=/^0001-01-01/,lxn=/<\/?[^>]+(>|$)/g,dxn=2e4,fxn=80,hxn=1e3,Op={url:"",timestamp:0},JVt=new _t(fxn,dxn),ZVt=new _t(hxn,Number.POSITIVE_INFINITY),pxn=5*60*1e3,NDe=new Map;v3={aliyun:mj,quark:gj,uc:_j,tianyi:Aj,pan123:yj,pan115:vj,baidu:Sj,yidong:Ej,magnet:Tj,guangya:bj},gxn={aliyun:"ali",ali:"ali",quark:"quark",uc:"uc",tianyi:"tianyi",cloud189:"tianyi",pan123:"123",123:"123",pan115:"115",115:"115",baidu:"baidu",yidong:"yidong",mobile:"yidong",139:"yidong",xunlei:"xunlei",guangya:"guangya",magnet:"magnet",bt:"magnet",torrent:"magnet",\u78C1\u529B:"magnet",\u78C1\u94FE:"magnet",\u79CD\u5B50:"magnet"},pW=e=>{if(!e||r7t.test(e))return 0;let t=Date.parse(e);return isNaN(t)?0:t};Mxn={meta:{key:"pansou",name:"\u{1F50D} \u76D8\u641C",type:3},api:async e=>{e.post("/init",Nxn),e.post("/home",Oxn),e.post("/category",Dxn),e.post("/detail",Pxn),e.post("/play",Ps),e.post("/search",Lxn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}}});async function BDe(e){e.get("/config",async(t,r)=>{let n=await PDe(t.server),s=await LDe(t.server),i=await MDe(t.server),a=await kDe(t.server);r.send({code:0,data:{url:n,count:Number(s),channelUsername:i.split(","),pic:a}})}),e.put("/config",async(t,r)=>{await gW(t.server,"url",t.body.url),await gW(t.server,"count",t.body.count),await gW(t.server,"channelUsername",t.body.channelUsername.join(",")),await gW(t.server,"pic",t.body.pic),r.send({code:0})})}var _W,PDe,LDe,MDe,kDe,gW,UDe=ie(()=>{_W=async(e,t,r)=>(await e.db.getObjectDefault("/tgsou",{}))?.[t]||e.config.tgsou[t]||r,PDe=e=>_W(e,"url","https://tgsou.lmentor.dpdns.org"),LDe=e=>_W(e,"count",4),MDe=e=>_W(e,"channelUsername","tgsearchers5,Aliyun_4K_Movies,bdbdndn11,yunpanx,bsbdbfjfjff,yp123pan,sbsbsnsqq,yunpanxunlei,tianyifc,BaiduCloudDisk,txtyzy,peccxinpd,gotopan,PanjClub,kkxlzy,baicaoZY,MCPH01,MCPH02,MCPH03,bdwpzhpd,ysxb48,jdjdn1111,yggpan,MCPH086,zaihuayun,Q66Share,ucwpzy,shareAliyun,alyp_1,dianyingshare,Quark_Movies,XiangxiuNBB,ydypzyfx,ucquark,xx123pan,yingshifenxiang123,zyfb123,tyypzhpd,tianyirigeng,cloudtianyi,hdhhd21,Lsp115,oneonefivewpfx,qixingzhenren,taoxgzy,Channel_Shares_115,tyysypzypd,vip115hot,wp123zy,yunpan139,yunpan189,yunpanuc,yydf_hzl,leoziyuan,Q_dongman,yoyokuakeduanju,TG654TG,WFYSFX02,QukanMovie,yeqingjie_GJG666,movielover8888_film3,Baidu_netdisk,D_wusun,FLMdongtianfudi,KaiPanshare,QQZYDAPP,rjyxfx,btzhi,newproductsourcing,cctv1211,duan_ju,QuarkFree,yunpanNB,kkdj001,xxzlzn,pxyunpanxunlei,jxwpzy,kuakedongman,liangxingzhinan,xiangnikanj,solidsexydoll,guoman4K,zdqxm,kduanju,cilidianying,CBduanju,SharePanFilms,dzsgx,BooksRealm,Oscar_4Kmovies,douerpan,baidu_yppan,Q_jilupian,Netdisk_Movies,yunpanquark,ammmziyuan,ciliziyuanku,cili8888,jzmm_123pan,Q_dianying,domgmingapk,dianying4k,q_dianshiju,tgbokee,ucshare,godupan,gokuapan"),kDe=e=>_W(e,"pic",!1),gW=async(e,t,r)=>{await e.db.push(`/tgsou/${t}`,r)}});var h7t={};kt(h7t,{default:()=>Xxn});function Hxn(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}async function f7t(e,t,r,n,s){let i=e.get(r);return i!==null?i:$n("tgsou",t,r,async()=>{let a=await s();return e.set(r,a),a},{timeout:3e4})}async function Vxn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let c=s++;if(c>=e.length)break;n[c]=await r(e[c],c)}},a=Math.min(t,e.length),o=new Array(a);for(let c=0;cs.validator(e))||null;return c7t.set(e,n),n}async function Gxn(e,t){return await Ti(e,t),{}}async function zxn(e,t){let r=Qr("tgsou",e),n=Wr(r);if(n)return n;let s={};return hn(r,s,bt.dynamic),s}async function Yxn(e,t){return{page:1,pagecount:1,list:[]}}async function Qxn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await Vxn(r,Bxn,async s=>{let i=String(s||""),a=i,o=i;try{let u=JSON.parse(i);a=u.url,o=u.name||u.url}catch{a=i,o=i}let c={vod_name:o,vod_remarks:""};if(!a)return c;try{let u=await f7t($xn,"detail",`detail:${a}`,u7t,async()=>Es(a,e));u&&(c.vod_play_from=u.froms,c.vod_play_url=u.urls,Array.isArray(u.links)&&u.links.length>0&&(c.vod_links=u.links))}catch{}return c})}}async function Wxn(e,t){let r=String(e.body.wd||"").trim();if(!r)return{page:1,pagecount:1,list:[]};let[n,s,i,a]=await Promise.all([PDe(e.server),LDe(e.server),MDe(e.server),kDe(e.server)]),o=Math.max(1,jxn(s,20));if(!n)return{page:1,pagecount:1,list:[]};let c=`${n}::${a}::${o}::${i}::${r}`;return{page:1,pagecount:1,list:await f7t(qxn,"search",c,l7t,async()=>{try{let l=await Fxn.get(n,{params:{pic:a,count:o,channelUsername:i,keyword:r}}),d=Array.isArray(l.data?.results)?l.data.results:[],f=Ca(),h=[],p=new Set;for(let m of d){if(!m||typeof m!="string")continue;let[g,_]=m.split("$$$");if(!_)continue;let y=String(g||"").trim(),A=_.split("##"),E=Math.min(A.length,o);for(let v=0;v{Dn();fc();UDe();vr();Cr();fa();ia();kxn=12e3,u7t=60*1e3,l7t=20*1e3,d7t=200,Bxn=6,Uxn=1e3,o7t=fn(),Fxn=ye.create({timeout:kxn,httpAgent:o7t.httpAgent,httpsAgent:o7t.httpsAgent}),$xn=new _t(d7t,u7t),qxn=new _t(d7t,l7t),c7t=new _t(Uxn,Number.POSITIVE_INFINITY);Xxn={meta:{key:"tgsou",name:"\u{1F50D} TG\u641C",type:3},api:async e=>{e.post("/init",Gxn),e.post("/home",zxn),e.post("/category",Yxn),e.post("/detail",Qxn),e.post("/play",Ps),e.post("/search",Wxn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}}});async function FDe(e){e.get("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{}),s=t.server.config.bilibili_all||{};r.send({code:0,data:{cookie:n.cookie||s.cookie||"",classes_all:n.classes_all||s.classes_all||"",filters_all:n.filters_all||s.filters_all||"",user_info:n.user_info||null,lastUpdate:n.lastUpdate||null}})}catch(n){console.error("\u83B7\u53D6\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25: "+n.message,data:{cookie:"",classes_all:"",filters_all:"",user_info:null,lastUpdate:null}})}}),e.put("/config",async(t,r)=>{try{let{cookie:n,classes_all:s,filters_all:i}=t.body||{},a={},o=null;if(n!==void 0&&typeof n=="string"){let l=n.trim();if(l)try{let f=(await t.server.inject({method:"POST",url:"/spider/bili_all/3/validate-cookie",payload:{cookie:l}})).json();if(f.code!==0||!f.valid||!f.data)return r.send({code:400,message:f.message||"Cookie\u9A8C\u8BC1\u5931\u8D25\uFF0C\u914D\u7F6E\u672A\u4FDD\u5B58",data:{saved:!1,validationFailed:!0}});a.cookie=l,a.user_info=f.data,a.user_info_updated_at=Date.now(),o={success:!0,message:"Cookie\u9A8C\u8BC1\u6210\u529F",userInfo:f.data}}catch(d){return console.error("\u6D4B\u8BD5Cookie\u5931\u8D25:",d),r.send({code:500,message:"Cookie\u9A8C\u8BC1\u5931\u8D25\uFF0C\u914D\u7F6E\u672A\u4FDD\u5B58: "+d.message,data:{saved:!1,validationFailed:!0}})}else a.cookie="",a.user_info=null,a.user_info_updated_at=null}s!==void 0&&typeof s=="string"&&(a.classes_all=s.trim()),i!==void 0&&typeof i=="string"&&(a.filters_all=i.trim());let u={...await t.server.db.getObjectDefault("/bilibili_all",{}),...a,lastUpdate:Date.now()};if(await t.server.db.push("/bilibili_all",u),n!==void 0&&typeof n=="string")try{a.cookie?await t.server.inject({method:"POST",url:"/spider/bili_all/3/set-cookie",payload:{cookie:a.cookie}}):await t.server.inject({method:"POST",url:"/spider/bili_all/3/clear-cookie"})}catch(l){console.warn("\u540C\u6B65\u54D4\u54E9\u5927\u5168\u8FD0\u884C\u65F6Cookie\u5931\u8D25:",l.message)}r.send({code:0,message:"\u4FDD\u5B58\u6210\u529F",data:{updated:Object.keys(a),testResult:o,userInfo:u.user_info||null,lastUpdate:u.lastUpdate}})}catch(n){console.error("\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u4FDD\u5B58\u5931\u8D25: "+n.message})}}),e.delete("/config",async(t,r)=>{try{await t.server.db.push("/bilibili_all",{cookie:"",classes_all:"",filters_all:"",user_info:null,user_info_updated_at:null,lastUpdate:Date.now()});try{await t.server.inject({method:"POST",url:"/spider/bili_all/3/clear-cookie"})}catch{}r.send({code:0,message:"\u914D\u7F6E\u5DF2\u6E05\u9664"})}catch(n){console.error("\u6E05\u9664\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u6E05\u9664\u5931\u8D25: "+n.message})}}),e.post("/test-cookie",async(t,r)=>{try{let{cookie:n}=t.body||{};if(!n||typeof n!="string"||n.trim().length<10)return r.send({code:400,message:"\u65E0\u6548\u7684Cookie\u683C\u5F0F",valid:!1});let s=n.trim(),i=s.includes("SESSDATA"),a=s.includes("bili_jct"),o=s.includes("DedeUserID"),c=i&&a;r.send({code:0,message:c?"Cookie\u683C\u5F0F\u6B63\u786E":"Cookie\u683C\u5F0F\u53EF\u80FD\u4E0D\u5B8C\u6574",valid:c,data:{hasSessdata:i,hasBiliJct:a,hasDedeUserID:o,cookieLength:s.length}})}catch(n){console.error("\u6D4B\u8BD5Cookie\u5931\u8D25:",n),r.send({code:500,message:"\u6D4B\u8BD5\u5931\u8D25: "+n.message,valid:!1})}}),e.get("/status",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{}),s={available:!1};try{let a=(await t.server.inject({method:"GET",url:"/spider/bili_all/3/cookie-status"})).json();a.code===0&&(s={available:!0,...a.data})}catch{}r.send({code:0,data:{config:{hasCookie:!!(n.cookie&&n.cookie.length>0),cookieLength:n.cookie?.length||0,hasClasses:!!(n.classes_all&&n.classes_all.length>0),hasFilters:!!(n.filters_all&&n.filters_all.length>0),lastUpdate:n.lastUpdate||"\u672A\u77E5"},biliAllStatus:s}})}catch(n){console.error("\u83B7\u53D6\u72B6\u6001\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u72B6\u6001\u5931\u8D25: "+n.message})}})}var AW,m7t,g7t,EW=ie(()=>{AW=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.cookie)return t.cookie;if(e.config?.bilibili_all?.cookie)return e.config.bilibili_all.cookie}catch{}return""},m7t=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.classes_all)return t.classes_all;if(e.config?.bilibili_all?.classes_all)return e.config.bilibili_all.classes_all}catch{}return""},g7t=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.filters_all)return t.filters_all;if(e.config?.bilibili_all?.filters_all)return e.config.bilibili_all.filters_all}catch{}return""}});var yW,$De,_7t,A7t=ie(()=>{yW=[{type_name:"\u6C99\u96D5\u52A8\u6F2B",type_id:"\u4E00\u53E3\u6C14\u6C99\u96D5\u52A8\u6F2B"},{type_name:"\u7EAA\u5F55\u7247",type_id:"\u7EAA\u5F55\u7247\u8D85\u6E05"},{type_name:"\u6F14\u5531\u4F1A",type_id:"\u6F14\u5531\u4F1A\u8D85\u6E05"},{type_name:"\u7F8E\u98DF",type_id:"\u7F8E\u98DF\u8D85\u6E05"},{type_name:"\u98DF\u8C31",type_id:"\u98DF\u8C31"},{type_name:"\u4F53\u80B2",type_id:"\u4F53\u80B2\u8D85\u6E05"},{type_name:"\u7403\u661F",type_id:"\u7403\u661F"},{type_name:"\u65C5\u6E38",type_id:"\u65C5\u6E38"},{type_name:"\u98CE\u666F",type_id:"\u98CE\u666F4K"},{type_name:"\u8BF4\u6848",type_id:"\u8BF4\u6848"},{type_name:"\u77E5\u540DUP\u4E3B",type_id:"\u77E5\u540DUP\u4E3B"},{type_name:"\u63A2\u7D22\u53D1\u73B0",type_id:"\u63A2\u7D22\u53D1\u73B0\u8D85\u6E05"},{type_name:"\u9B3C\u755C",type_id:"\u9B3C\u755C"},{type_name:"\u641E\u7B11",type_id:"\u641E\u7B11\u8D85\u6E05"},{type_name:"\u513F\u7AE5",type_id:"\u513F\u7AE5\u8D85\u6E05"},{type_name:"\u52A8\u7269\u4E16\u754C",type_id:"\u52A8\u7269\u4E16\u754C\u8D85\u6E05"},{type_name:"\u76F8\u58F0\u5C0F\u54C1",type_id:"\u76F8\u58F0\u5C0F\u54C1\u8D85\u6E05"},{type_name:"\u620F\u66F2",type_id:"\u620F\u66F2"},{type_name:"\u89E3\u8BF4",type_id:"\u89E3\u8BF4"},{type_name:"\u6F14\u8BB2",type_id:"\u6F14\u8BB2"},{type_name:"\u5C0F\u59D0\u59D0",type_id:"\u5C0F\u59D0\u59D0\u8D85\u6E05"},{type_name:"\u8352\u91CE\u6C42\u751F",type_id:"\u8352\u91CE\u6C42\u751F\u8D85\u6E05"},{type_name:"\u5065\u8EAB",type_id:"\u5065\u8EAB"},{type_name:"\u5E15\u6885\u62C9",type_id:"\u5E15\u6885\u62C9"},{type_name:"\u592A\u6781\u62F3",type_id:"\u592A\u6781\u62F3"},{type_name:"\u5E7F\u573A\u821E",type_id:"\u5E7F\u573A\u821E"},{type_name:"\u821E\u8E48",type_id:"\u821E\u8E48"},{type_name:"\u97F3\u4E50",type_id:"\u97F3\u4E50"},{type_name:"\u6B4C\u66F2",type_id:"\u6B4C\u66F2"},{type_name:"MV",type_id:"MV4K"},{type_name:"\u821E\u66F2",type_id:"\u821E\u66F2\u8D85\u6E05"},{type_name:"4K",type_id:"4K"},{type_name:"\u7535\u5F71",type_id:"\u7535\u5F71"},{type_name:"\u7535\u89C6\u5267",type_id:"\u7535\u89C6\u5267"},{type_name:"\u767D\u566A\u97F3",type_id:"\u767D\u566A\u97F3\u8D85\u6E05"},{type_name:"\u8003\u516C\u8003\u8BC1",type_id:"\u8003\u516C\u8003\u8BC1"},{type_name:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66",type_id:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66"},{type_name:"\u8F6F\u4EF6\u6559\u7A0B",type_id:"\u8F6F\u4EF6\u6559\u7A0B"},{type_name:"Windows",type_id:"Windows"},{type_name:"\u9009\u7F8E",type_id:"\u9009\u7F8E"},{type_name:"\u6A21\u7279",type_id:"\u6A21\u7279"},{type_name:"\u6CF3\u88C5\u79C0",type_id:"\u6CF3\u88C5\u79C0"},{type_name:"\u5185\u8863\u79C0",type_id:"\u5185\u8863\u79C0"},{type_name:"4K\u97F3\u4E50",type_id:"4K\u97F3\u4E50"},{type_name:"MV",type_id:"MV"},{type_name:"4K MV",type_id:"4K MV"},{type_name:"\u5973\u56E2",type_id:"\u5973\u56E2"},{type_name:"\u76F4\u64AD\u5E73\u53F0",type_id:"\u76F4\u64AD\u5E73\u53F0"},{type_name:"\u6F14\u5531\u4F1A",type_id:"\u6F14\u5531\u4F1A"},{type_name:"\u8BFE\u7A0B\u8F85\u5BFC",type_id:"\u8BFE\u7A0B\u8F85\u5BFC"},{type_name:"\u98CE\u666F",type_id:"\u98CE\u666F"},{type_name:"\u7F8E\u98DF",type_id:"\u7F8E\u98DF"},{type_name:"\u76F8\u58F0\u5C0F\u54C1",type_id:"\u76F8\u58F0\u5C0F\u54C1"},{type_name:"\u52A8\u7269\u4E16\u754C",type_id:"\u52A8\u7269\u4E16\u754C"},{type_name:"\u513F\u7AE5\u5C11\u513F",type_id:"\u513F\u7AE5\u5C11\u513F"}],$De={\u8003\u516C\u8003\u8BC1:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u5531\u4F1A\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u963F\u675C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u963F\u675C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"Beyond\u6F14\u5531\u4F1A\u8D85\u6E05",v:"Beyond\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"By2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"By2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"BIGBANG\u6F14\u5531\u4F1A\u8D85\u6E05",v:"BIGBANG\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5742\u4E95\u6CC9\u6C34\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5742\u4E95\u6CC9\u6C34\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8349\u8722\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8349\u8722\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5D14\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5D14\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6234\u8343\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6234\u8343\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E01\u5F53\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E01\u5F53\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5200\u90CE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5200\u90CE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D39\u7FD4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D39\u7FD4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u623F\u4E1C\u7684\u732B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u623F\u4E1C\u7684\u732B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5149\u826F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5149\u826F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u9759\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u9759\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u80E1\u590F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u80E1\u590F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u97E9\u7EA2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u97E9\u7EA2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7ECF\u5178\u8001\u6B4C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7ECF\u5178\u8001\u6B4C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u91D1\u6C60\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u91D1\u6C60\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u739F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u739F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5723\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5723\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6881\u9759\u8339\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6881\u9759\u8339\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u7389\u521A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u7389\u521A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9ECE\u660E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9ECE\u660E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"LadyGaga\u6F14\u5531\u4F1A\u8D85\u6E05",v:"LadyGaga\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6734\u6811\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6734\u6811\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9F50\u79E6\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9F50\u79E6\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"SHE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"SHE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5B59\u6960\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5B59\u6960\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9676\u5586\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9676\u5586\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7530\u9707\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7530\u9707\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u6676\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u6676\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u597D\u58F0\u97F3\u738B\u9756\u96EF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u597D\u58F0\u97F3\u738B\u9756\u96EF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C6A\u5CF0\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C6A\u5CF0\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4F0D\u4F70\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4F0D\u4F70\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u83F2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u83F2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F26\u5B50\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F26\u5B50\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8BB8\u5DCD\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8BB8\u5DCD\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8BB8\u5D69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8BB8\u5D69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8427\u656C\u817E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8427\u656C\u817E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7FBD\u6CC9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7FBD\u6CC9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5764\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5764\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u79C0\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u79C0\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u5B87\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u5B87\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u534E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u534E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6DF1\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6DF1\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D75\u96F7\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D75\u96F7\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6167\u654F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6167\u654F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A\u8D85\u6E05"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u63A2\u7D22\u53D1\u73B0\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7535\u5F71:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u9B3C\u755C:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u4E00\u53E3\u6C14\u6C99\u96D5\u52A8\u6F2B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8BF4\u6848:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u8BF4\u6848",v:"\u8BF4\u6848"},{n:"\u6C64\u5706\u8BF4\u6848",v:"\u6C64\u5706\u8BF4\u6848"},{n:"\u5510\u5510\u8BF4\u6848",v:"\u5510\u5510\u8BF4\u6848"},{n:"\u7F57\u7FD4\u8BF4\u5211\u6CD5",v:"\u7F57\u7FD4\u8BF4\u5211\u6CD5"},{n:"\u4F55\u5BB6\u5F18\u8BF4\u6848",v:"\u4F55\u5BB6\u5F18\u8BF4\u6848"},{n:"\u97E9\u8BFA\u8BF4\u6848",v:"\u97E9\u8BFA\u8BF4\u6848"},{n:"\u8001V\u8BF4\u6848",v:"\u8001V\u8BF4\u6848"},{n:"\u7981\u64AD\u6863\u6848",v:"\u7981\u64AD\u6863\u6848"},{n:"\u8BF4\u6848",v:"\u8BF4\u6848"},{n:"\u7981\u64AD\u6863\u6848",v:"\u7981\u64AD\u6863\u6848"},{n:"4K\u8BF4\u6848",v:"4K\u8BF4\u6848"},{n:"4K\u6C64\u5706\u8BF4\u6848",v:"4K\u6C64\u5706\u8BF4\u6848"},{n:"4K\u5510\u5510\u8BF4\u6848",v:"4K\u5510\u5510\u8BF4\u6848"},{n:"4K\u7F57\u7FD4\u8BF4\u5211\u6CD5",v:"4K\u7F57\u7FD4\u8BF4\u5211\u6CD5"},{n:"4K\u4F55\u5BB6\u5F18\u8BF4\u6848",v:"4K\u4F55\u5BB6\u5F18\u8BF4\u6848"},{n:"4K\u97E9\u8BFA\u8BF4\u6848",v:"4K\u97E9\u8BFA\u8BF4\u6848"},{n:"4K\u8001V\u8BF4\u6848",v:"4K\u8001V\u8BF4\u6848"},{n:"4K\u7981\u64AD\u6863\u6848",v:"4K\u7981\u64AD\u6863\u6848"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u8BB2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8\u6F14\u8BB24K",v:"\u5168\u90E8\u6F14\u8BB24K"},{n:"\u827E\u8DC3\u8FDB\u6F14\u8BB24K",v:"\u827E\u8DC3\u8FDB\u6F14\u8BB24K"},{n:"\u8D85\u7EA7\u6F14\u8BF4\u5BB64K",v:"\u8D85\u7EA7\u6F14\u8BF4\u5BB64K"},{n:"\u7535\u5F71\u6F14\u8BB24K",v:"\u7535\u5F71\u6F14\u8BB24K"},{n:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD4K",v:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD4K"},{n:"\u611F\u52A8\u4E2D\u56FD4K",v:"\u611F\u52A8\u4E2D\u56FD4K"},{n:"\u90ED\u7EE7\u627F\u6F14\u8BB24K",v:"\u90ED\u7EE7\u627F\u6F14\u8BB24K"},{n:"\u534E\u6625\u83B9\u6F14\u8BB24K",v:"\u534E\u6625\u83B9\u6F14\u8BB24K"},{n:"\u96F7\u519B\u6F14\u8BB24K",v:"\u96F7\u519B\u6F14\u8BB24K"},{n:"\u7F57\u7FD4\u6F14\u8BB24K",v:"\u7F57\u7FD4\u6F14\u8BB24K"},{n:"\u4EFB\u6B63\u975E\u6F14\u8BB24K",v:"\u4EFB\u6B63\u975E\u6F14\u8BB24K"},{n:"TED\u6F14\u8BB24K",v:"TED\u6F14\u8BB24K"},{n:"\u6C6A\u6587\u658C\u6F14\u8BB24K",v:"\u6C6A\u6587\u658C\u6F14\u8BB24K"},{n:"\u4E00\u523B\u6F14\u8BB24K",v:"\u4E00\u523B\u6F14\u8BB24K"},{n:"\u8D75\u7ACB\u575A\u6F14\u8BB24K",v:"\u8D75\u7ACB\u575A\u6F14\u8BB24K"},{n:"\u90D1\u5F3A\u6F14\u8BB24K",v:"\u90D1\u5F3A\u6F14\u8BB24K"},{n:"\u6F14\u8BB2",v:"\u6F14\u8BB2"},{n:"\u827E\u8DC3\u8FDB\u6F14\u8BB2",v:"\u827E\u8DC3\u8FDB\u6F14\u8BB2"},{n:"\u8D85\u7EA7\u6F14\u8BF4\u5BB6",v:"\u8D85\u7EA7\u6F14\u8BF4\u5BB6"},{n:"\u7535\u5F71\u6F14\u8BB2",v:"\u7535\u5F71\u6F14\u8BB2"},{n:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD",v:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD"},{n:"\u611F\u52A8\u4E2D\u56FD",v:"\u611F\u52A8\u4E2D\u56FD"},{n:"\u90ED\u7EE7\u627F\u6F14\u8BB2",v:"\u90ED\u7EE7\u627F\u6F14\u8BB2"},{n:"\u534E\u6625\u83B9\u6F14\u8BB2",v:"\u534E\u6625\u83B9\u6F14\u8BB2"},{n:"\u96F7\u519B\u6F14\u8BB2",v:"\u96F7\u519B\u6F14\u8BB2"},{n:"\u7F57\u7FD4\u6F14\u8BB2",v:"\u7F57\u7FD4\u6F14\u8BB2"},{n:"\u4EFB\u6B63\u975E\u6F14\u8BB2",v:"\u4EFB\u6B63\u975E\u6F14\u8BB2"},{n:"TED\u6F14\u8BB2",v:"TED\u6F14\u8BB2"},{n:"\u6C6A\u6587\u658C\u6F14\u8BB2",v:"\u6C6A\u6587\u658C\u6F14\u8BB2"},{n:"\u4E00\u523B\u6F14\u8BB2",v:"\u4E00\u523B\u6F14\u8BB2"},{n:"\u8D75\u7ACB\u575A\u6F14\u8BB2",v:"\u8D75\u7ACB\u575A\u6F14\u8BB2"},{n:"\u90D1\u5F3A\u6F14\u8BB2",v:"\u90D1\u5F3A\u6F14\u8BB2"},{n:"4K\u6F14\u8BB2",v:"4K\u6F14\u8BB2"},{n:"4K\u827E\u8DC3\u8FDB\u6F14\u8BB2",v:"4K\u827E\u8DC3\u8FDB\u6F14\u8BB2"},{n:"4K\u8D85\u7EA7\u6F14\u8BF4\u5BB6",v:"4K\u8D85\u7EA7\u6F14\u8BF4\u5BB6"},{n:"4K\u7535\u5F71\u6F14\u8BB2",v:"4K\u7535\u5F71\u6F14\u8BB2"},{n:"4K\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD",v:"4K\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD"},{n:"4K\u611F\u52A8\u4E2D\u56FD",v:"4K\u611F\u52A8\u4E2D\u56FD"},{n:"4K\u90ED\u7EE7\u627F\u6F14\u8BB2",v:"4K\u90ED\u7EE7\u627F\u6F14\u8BB2"},{n:"4K\u534E\u6625\u83B9\u6F14\u8BB2",v:"4K\u534E\u6625\u83B9\u6F14\u8BB2"},{n:"4K\u96F7\u519B\u6F14\u8BB2",v:"4K\u96F7\u519B\u6F14\u8BB2"},{n:"4K\u7F57\u7FD4\u6F14\u8BB2",v:"4K\u7F57\u7FD4\u6F14\u8BB2"},{n:"4K\u4EFB\u6B63\u975E\u6F14\u8BB2",v:"4K\u4EFB\u6B63\u975E\u6F14\u8BB2"},{n:"4K TED\u6F14\u8BB2",v:"4K TED\u6F14\u8BB2"},{n:"4K\u6C6A\u6587\u658C\u6F14\u8BB2",v:"4K\u6C6A\u6587\u658C\u6F14\u8BB2"},{n:"4K\u4E00\u523B\u6F14\u8BB2",v:"4K\u4E00\u523B\u6F14\u8BB2"},{n:"4K\u8D75\u7ACB\u575A\u6F14\u8BB2",v:"4K\u8D75\u7ACB\u575A\u6F14\u8BB2"},{n:"4K\u90D1\u5F3A\u6F14\u8BB2",v:"4K\u90D1\u5F3A\u6F14\u8BB2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u89E3\u8BF4:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u89E3\u8BF4",v:"\u89E3\u8BF4"},{n:"\u7535\u5F71\u89E3\u8BF4",v:"\u7535\u5F71\u89E3\u8BF4"},{n:"\u7535\u89C6\u89E3\u8BF4",v:"\u7535\u89C6\u89E3\u8BF4"},{n:"\u5386\u53F2\u89E3\u8BF4",v:"\u5386\u53F2\u89E3\u8BF4"},{n:"\u52A8\u6F2B\u89E3\u8BF4",v:"\u52A8\u6F2B\u89E3\u8BF4"},{n:"\u5C0F\u8BF4\u89E3\u8BF4",v:"\u5C0F\u8BF4\u89E3\u8BF4"},{n:"\u89E3\u8BF4",v:"\u89E3\u8BF4"},{n:"4K\u89E3\u8BF4",v:"4K\u89E3\u8BF4"},{n:"4K\u7535\u5F71\u89E3\u8BF4",v:"4K\u7535\u5F71\u89E3\u8BF4"},{n:"4K\u7535\u89C6\u89E3\u8BF4",v:"4K\u7535\u89C6\u89E3\u8BF4"},{n:"4K\u5386\u53F2\u89E3\u8BF4",v:"4K\u5386\u53F2\u89E3\u8BF4"},{n:"4K\u52A8\u6F2B\u89E3\u8BF4",v:"4K\u52A8\u6F2B\u89E3\u8BF4"},{n:"4K\u5C0F\u8BF4\u89E3\u8BF4",v:"4K\u5C0F\u8BF4\u89E3\u8BF4"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98CE\u666F4K:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u98CE\u666F4K",v:"\u98CE\u666F4K"},{n:"\u6FB3\u95E8\u98CE\u666F4K",v:"\u6FB3\u95E8\u98CE\u666F4K"},{n:"\u5B89\u5FBD\u98CE\u666F4K",v:"\u5B89\u5FBD\u98CE\u666F4K"},{n:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F4K",v:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F4K"},{n:"\u5317\u4EAC\u98CE\u666F4K",v:"\u5317\u4EAC\u98CE\u666F4K"},{n:"\u91CD\u5E86\u98CE\u666F4K",v:"\u91CD\u5E86\u98CE\u666F4K"},{n:"\u8349\u539F\u98CE\u666F4K",v:"\u8349\u539F\u98CE\u666F4K"},{n:"\u5927\u6D77\u98CE\u666F4K",v:"\u5927\u6D77\u98CE\u666F4K"},{n:"\u798F\u5EFA\u98CE\u666F4K",v:"\u798F\u5EFA\u98CE\u666F4K"},{n:"\u5E7F\u4E1C\u98CE\u666F4K",v:"\u5E7F\u4E1C\u98CE\u666F4K"},{n:"\u5E7F\u897F\u98CE\u666F4K",v:"\u5E7F\u897F\u98CE\u666F4K"},{n:"\u8D35\u5DDE\u98CE\u666F4K",v:"\u8D35\u5DDE\u98CE\u666F4K"},{n:"\u7518\u8083\u98CE\u666F4K",v:"\u7518\u8083\u98CE\u666F4K"},{n:"\u6D77\u5357\u98CE\u666F4K",v:"\u6D77\u5357\u98CE\u666F4K"},{n:"\u6CB3\u5317\u98CE\u666F4K",v:"\u6CB3\u5317\u98CE\u666F4K"},{n:"\u6CB3\u5357\u98CE\u666F4K",v:"\u6CB3\u5357\u98CE\u666F4K"},{n:"\u6E56\u5317\u98CE\u666F4K",v:"\u6E56\u5317\u98CE\u666F4K"},{n:"\u6E56\u5357\u98CE\u666F4K",v:"\u6E56\u5357\u98CE\u666F4K"},{n:"\u9ED1\u9F99\u6C5F\u98CE\u666F4K",v:"\u9ED1\u9F99\u6C5F\u98CE\u666F4K"},{n:"\u5409\u6797\u98CE\u666F4K",v:"\u5409\u6797\u98CE\u666F4K"},{n:"\u6C5F\u82CF\u98CE\u666F4K",v:"\u6C5F\u82CF\u98CE\u666F4K"},{n:"\u6C5F\u897F\u98CE\u666F4K",v:"\u6C5F\u897F\u98CE\u666F4K"},{n:"\u8FBD\u5B81\u98CE\u666F4K",v:"\u8FBD\u5B81\u98CE\u666F4K"},{n:"\u6C11\u5BBF\u98CE\u666F4K",v:"\u6C11\u5BBF\u98CE\u666F4K"},{n:"\u5185\u8499\u53E4\u98CE\u666F4K",v:"\u5185\u8499\u53E4\u98CE\u666F4K"},{n:"\u5B81\u590F\u98CE\u666F4K",v:"\u5B81\u590F\u98CE\u666F4K"},{n:"\u9752\u6D77\u98CE\u666F4K",v:"\u9752\u6D77\u98CE\u666F4K"},{n:"\u4E0A\u6D77\u98CE\u666F4K",v:"\u4E0A\u6D77\u98CE\u666F4K"},{n:"\u9655\u897F\u98CE\u666F4K",v:"\u9655\u897F\u98CE\u666F4K"},{n:"\u56DB\u5DDD\u98CE\u666F4K",v:"\u56DB\u5DDD\u98CE\u666F4K"},{n:"\u5C71\u897F\u98CE\u666F4K",v:"\u5C71\u897F\u98CE\u666F4K"},{n:"\u5C71\u4E1C\u98CE\u666F4K",v:"\u5C71\u4E1C\u98CE\u666F4K"},{n:"\u5929\u6D25\u98CE\u666F4K",v:"\u5929\u6D25\u98CE\u666F4K"},{n:"\u53F0\u6E7E\u98CE\u666F4K",v:"\u53F0\u6E7E\u98CE\u666F4K"},{n:"\u5929\u7A7A\u98CE\u666F4K",v:"\u5929\u7A7A\u98CE\u666F4K"},{n:"\u897F\u6E56\u98CE\u666F4K",v:"\u897F\u6E56\u98CE\u666F4K"},{n:"\u897F\u85CF\u98CE\u666F4K",v:"\u897F\u85CF\u98CE\u666F4K"},{n:"\u65B0\u7586\u98CE\u666F4K",v:"\u65B0\u7586\u98CE\u666F4K"},{n:"\u9999\u6E2F\u98CE\u666F4K",v:"\u9999\u6E2F\u98CE\u666F4K"},{n:"\u4E91\u5357\u98CE\u666F4K",v:"\u4E91\u5357\u98CE\u666F4K"},{n:"\u6D59\u6C5F\u98CE\u666F4K",v:"\u6D59\u6C5F\u98CE\u666F4K"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],MV4K:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"MV4K",v:"MV4K"},{n:"\u963F\u675CMV4K",v:"\u963F\u675CMV4K"},{n:"\u963F\u9EDB\u5C14MV4K",v:"\u963F\u9EDB\u5C14MV4K"},{n:"BeyondMV4K",v:"BeyondMV4K"},{n:"By2MV4K",v:"By2MV4K"},{n:"BIGBANGMV4K",v:"BIGBANGMV4K"},{n:"\u5E03\u5170\u59AEMV4K",v:"\u5E03\u5170\u59AEMV4K"},{n:"\u9648\u5955\u8FC5MV4K",v:"\u9648\u5955\u8FC5MV4K"},{n:"\u8521\u4F9D\u6797MV4K",v:"\u8521\u4F9D\u6797MV4K"},{n:"\u521D\u97F3\u672A\u6765MV4K",v:"\u521D\u97F3\u672A\u6765MV4K"},{n:"\u8521\u5065\u96C5MV4K",v:"\u8521\u5065\u96C5MV4K"},{n:"\u9648\u5C0F\u6625MV4K",v:"\u9648\u5C0F\u6625MV4K"},{n:"\u8349\u8722MV4K",v:"\u8349\u8722MV4K"},{n:"\u9648\u6167\u5A34MV4K",v:"\u9648\u6167\u5A34MV4K"},{n:"\u5D14\u5065MV4K",v:"\u5D14\u5065MV4K"},{n:"\u4ED3\u6728\u9EBB\u8863MV4K",v:"\u4ED3\u6728\u9EBB\u8863MV4K"},{n:"\u6234\u8343MV4K",v:"\u6234\u8343MV4K"},{n:"\u52A8\u529B\u706B\u8F66MV4K",v:"\u52A8\u529B\u706B\u8F66MV4K"},{n:"\u9093\u4E3D\u541BMV4K",v:"\u9093\u4E3D\u541BMV4K"},{n:"\u4E01\u5F53MV4K",v:"\u4E01\u5F53MV4K"},{n:"\u5200\u90CEMV4K",v:"\u5200\u90CEMV4K"},{n:"\u9093\u7D2B\u68CBMV4K",v:"\u9093\u7D2B\u68CBMV4K"},{n:"\u6234\u4F69\u59AEMV4K",v:"\u6234\u4F69\u59AEMV4K"},{n:"\u9093\u4E3D\u541BMV4K",v:"\u9093\u4E3D\u541BMV4K"},{n:"\u98DE\u513F\u4E50\u961FMV4K",v:"\u98DE\u513F\u4E50\u961FMV4K"},{n:"\u8D39\u7389\u6E05MV4K",v:"\u8D39\u7389\u6E05MV4K"},{n:"\u8D39\u7FD4MV4K",v:"\u8D39\u7FD4MV4K"},{n:"\u65B9\u5927\u540CMV4K",v:"\u65B9\u5927\u540CMV4K"},{n:"\u623F\u4E1C\u7684\u732BMV4K",v:"\u623F\u4E1C\u7684\u732BMV4K"},{n:"\u51E4\u98DE\u98DEMV4K",v:"\u51E4\u98DE\u98DEMV4K"},{n:"\u51E4\u51F0\u4F20\u5947MV4K",v:"\u51E4\u51F0\u4F20\u5947MV4K"},{n:"\u53E4\u98CE\u6B4C\u66F24K",v:"\u53E4\u98CE\u6B4C\u66F24K"},{n:"\u56FD\u4E50\u5927\u51784K",v:"\u56FD\u4E50\u5927\u51784K"},{n:"\u90ED\u91C7\u6D01MV4K",v:"\u90ED\u91C7\u6D01MV4K"},{n:"\u5149\u826FMV4K",v:"\u5149\u826FMV4K"},{n:"\u90ED\u9759MV4K",v:"\u90ED\u9759MV4K"},{n:"\u90ED\u5BCC\u57CEMV4K",v:"\u90ED\u5BCC\u57CEMV4K"},{n:"\u80E1\u5F66\u658CMV4K",v:"\u80E1\u5F66\u658CMV4K"},{n:"\u80E1\u590FMV4K",v:"\u80E1\u590FMV4K"},{n:"\u97E9\u7EA2MV4K",v:"\u97E9\u7EA2MV4K"},{n:"\u9EC4\u54C1\u6E90MV4K",v:"\u9EC4\u54C1\u6E90MV4K"},{n:"\u9EC4\u5C0F\u7425MV4K",v:"\u9EC4\u5C0F\u7425MV4K"},{n:"\u82B1\u513F\u4E50\u961FMV4K",v:"\u82B1\u513F\u4E50\u961FMV4K"},{n:"\u9EC4\u5BB6\u5F3AMV4K",v:"\u9EC4\u5BB6\u5F3AMV4K"},{n:"\u540E\u8857\u7537\u5B69MV4K",v:"\u540E\u8857\u7537\u5B69MV4K"},{n:"\u7ECF\u5178\u8001\u6B4C4K",v:"\u7ECF\u5178\u8001\u6B4C4K"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2FMV4K",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2FMV4K"},{n:"\u91D1\u6C60MV4K",v:"\u91D1\u6C60MV4K"},{n:"\u91D1\u5FD7\u6587MV4K",v:"\u91D1\u5FD7\u6587MV4K"},{n:"\u7126\u8FC8\u5947MV4K",v:"\u7126\u8FC8\u5947MV4K"},{n:"\u7B77\u5B50\u5144\u5F1FMV4K",v:"\u7B77\u5B50\u5144\u5F1FMV4K"},{n:"\u674E\u739FMV4K",v:"\u674E\u739FMV4K"},{n:"\u6797\u5FC6\u83B2MV4K",v:"\u6797\u5FC6\u83B2MV4K"},{n:"\u674E\u514B\u52E4MV4K",v:"\u674E\u514B\u52E4MV4K"},{n:"\u5218\u5BAA\u534EMV4K",v:"\u5218\u5BAA\u534EMV4K"},{n:"\u674E\u5723\u6770MV4K",v:"\u674E\u5723\u6770MV4K"},{n:"\u6797\u5BA5\u5609MV4K",v:"\u6797\u5BA5\u5609MV4K"},{n:"\u6881\u9759\u8339MV4K",v:"\u6881\u9759\u8339MV4K"},{n:"\u674E\u5065MV4K",v:"\u674E\u5065MV4K"},{n:"\u6797\u4FCA\u6770MV4K",v:"\u6797\u4FCA\u6770MV4K"},{n:"\u674E\u7389\u521AMV4K",v:"\u674E\u7389\u521AMV4K"},{n:"\u6797\u5FD7\u70ABMV4K",v:"\u6797\u5FD7\u70ABMV4K"},{n:"\u674E\u8363\u6D69MV4K",v:"\u674E\u8363\u6D69MV4K"},{n:"\u674E\u5B87\u6625MV4K",v:"\u674E\u5B87\u6625MV4K"},{n:"\u6D1B\u5929\u4F9DMV4K",v:"\u6D1B\u5929\u4F9DMV4K"},{n:"\u6797\u5B50\u7965MV4K",v:"\u6797\u5B50\u7965MV4K"},{n:"\u674E\u5B97\u76DBMV4K",v:"\u674E\u5B97\u76DBMV4K"},{n:"\u9ECE\u660EMV4K",v:"\u9ECE\u660EMV4K"},{n:"\u5218\u5FB7\u534EMV4K",v:"\u5218\u5FB7\u534EMV4K"},{n:"\u7F57\u5927\u4F51MV4K",v:"\u7F57\u5927\u4F51MV4K"},{n:"\u6797\u80AF\u516C\u56EDMV4K",v:"\u6797\u80AF\u516C\u56EDMV4K"},{n:"LadyGagaMV4K",v:"LadyGagaMV4K"},{n:"\u65C5\u884C\u56E2\u4E50\u961FMV4K",v:"\u65C5\u884C\u56E2\u4E50\u961FMV4K"},{n:"\u83AB\u6587\u851AMV4K",v:"\u83AB\u6587\u851AMV4K"},{n:"\u6BDB\u4E0D\u6613MV4K",v:"\u6BDB\u4E0D\u6613MV4K"},{n:"\u6885\u8273\u82B3MV4K",v:"\u6885\u8273\u82B3MV4K"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900AMV4K",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900AMV4K"},{n:"\u5357\u62F3\u5988\u5988MV4K",v:"\u5357\u62F3\u5988\u5988MV4K"},{n:"\u6734\u6811MV4K",v:"\u6734\u6811MV4K"},{n:"\u9F50\u79E6MV4K",v:"\u9F50\u79E6MV4K"},{n:"\u9752\u9E1F\u98DE\u9C7CMV4K",v:"\u9752\u9E1F\u98DE\u9C7CMV4K"},{n:"\u5BB9\u7956\u513FMV4K",v:"\u5BB9\u7956\u513FMV4K"},{n:"\u70ED\u6B4CMV4K",v:"\u70ED\u6B4CMV4K"},{n:"\u4EFB\u8D24\u9F50MV4K",v:"\u4EFB\u8D24\u9F50MV4K"},{n:"\u6C34\u6728\u5E74\u534EMV4K",v:"\u6C34\u6728\u5E74\u534EMV4K"},{n:"\u5B59\u71D5\u59FFMV4K",v:"\u5B59\u71D5\u59FFMV4K"},{n:"\u82CF\u6253\u7EFFMV4K",v:"\u82CF\u6253\u7EFFMV4K"},{n:"SHEMV4K",v:"SHEMV4K"},{n:"\u5B59\u6960MV4K",v:"\u5B59\u6960MV4K"},{n:"\u9676\u5586MV4K",v:"\u9676\u5586MV4K"},{n:"\u8C2D\u548F\u9E9FMV4K",v:"\u8C2D\u548F\u9E9FMV4K"},{n:"\u7530\u99A5\u7504MV4K",v:"\u7530\u99A5\u7504MV4K"},{n:"\u8C2D\u7EF4\u7EF4MV4K",v:"\u8C2D\u7EF4\u7EF4MV4K"},{n:"\u9003\u8DD1\u8BA1\u5212MV4K",v:"\u9003\u8DD1\u8BA1\u5212MV4K"},{n:"\u7530\u9707MV4K",v:"\u7530\u9707MV4K"},{n:"\u8C2D\u6676MV4K",v:"\u8C2D\u6676MV4K"},{n:"\u5C60\u6D2A\u521AMV4K",v:"\u5C60\u6D2A\u521AMV4K"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279MV4K",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279MV4K"},{n:"\u738B\u529B\u5B8FMV4K",v:"\u738B\u529B\u5B8FMV4K"},{n:"\u738B\u6770MV4K",v:"\u738B\u6770MV4K"},{n:"\u5434\u514B\u7FA4MV4K",v:"\u5434\u514B\u7FA4MV4K"},{n:"\u738B\u5FC3\u51CCMV4K",v:"\u738B\u5FC3\u51CCMV4K"},{n:"\u6C6A\u5CF0MV4K",v:"\u6C6A\u5CF0MV4K"},{n:"\u4F0D\u4F70MV4K",v:"\u4F0D\u4F70MV4K"},{n:"\u738B\u83F2MV4K",v:"\u738B\u83F2MV4K"},{n:"\u4E94\u6708\u5929MV4K",v:"\u4E94\u6708\u5929MV4K"},{n:"\u6C6A\u82CF\u6CF7MV4K",v:"\u6C6A\u82CF\u6CF7MV4K"},{n:"\u5F90\u4F73\u83B9MV4K",v:"\u5F90\u4F73\u83B9MV4K"},{n:"\u5F26\u5B50MV4K",v:"\u5F26\u5B50MV4K"},{n:"\u8427\u4E9A\u8F69MV4K",v:"\u8427\u4E9A\u8F69MV4K"},{n:"\u8BB8\u5DCDMV4K",v:"\u8BB8\u5DCDMV4K"},{n:"\u859B\u4E4B\u8C26MV4K",v:"\u859B\u4E4B\u8C26MV4K"},{n:"\u8BB8\u5D69MV4K",v:"\u8BB8\u5D69MV4K"},{n:"\u5C0F\u864E\u961FMV4K",v:"\u5C0F\u864E\u961FMV4K"},{n:"\u8427\u656C\u817EMV4K",v:"\u8427\u656C\u817EMV4K"},{n:"\u8C22\u9706\u950BMV4K",v:"\u8C22\u9706\u950BMV4K"},{n:"\u5F90\u5C0F\u51E4MV4K",v:"\u5F90\u5C0F\u51E4MV4K"},{n:"\u4FE1\u4E50\u961FMV4K",v:"\u4FE1\u4E50\u961FMV4K"},{n:"\u591C\u613F\u4E50\u961FMV4K",v:"\u591C\u613F\u4E50\u961FMV4K"},{n:"\u539F\u521B\u97F3\u4E50MV4K",v:"\u539F\u521B\u97F3\u4E50MV4K"},{n:"\u7FBD\u6CC9MV4K",v:"\u7FBD\u6CC9MV4K"},{n:"\u7CA4\u8BEDMV4K",v:"\u7CA4\u8BEDMV4K"},{n:"\u90C1\u53EF\u552FMV4K",v:"\u90C1\u53EF\u552FMV4K"},{n:"\u53F6\u5029\u6587MV4K",v:"\u53F6\u5029\u6587MV4K"},{n:"\u6768\u5764MV4K",v:"\u6768\u5764MV4K"},{n:"\u5EBE\u6F84\u5E86MV4K",v:"\u5EBE\u6F84\u5E86MV4K"},{n:"\u5C24\u957F\u9756MV4K",v:"\u5C24\u957F\u9756MV4K"},{n:"\u6613\u70CA\u5343\u73BAMV4K",v:"\u6613\u70CA\u5343\u73BAMV4K"},{n:"\u8881\u5A05\u7EF4MV4K",v:"\u8881\u5A05\u7EF4MV4K"},{n:"\u6768\u4E1E\u7433MV4K",v:"\u6768\u4E1E\u7433MV4K"},{n:"\u6768\u5343\u5B05MV4K",v:"\u6768\u5343\u5B05MV4K"},{n:"\u6768\u5B97\u7EACMV4K",v:"\u6768\u5B97\u7EACMV4K"},{n:"\u5468\u6770\u4F26MV4K",v:"\u5468\u6770\u4F26MV4K"},{n:"\u5F20\u5B66\u53CBMV4K",v:"\u5F20\u5B66\u53CBMV4K"},{n:"\u5F20\u4FE1\u54F2MV4K",v:"\u5F20\u4FE1\u54F2MV4K"},{n:"\u5F20\u5B87MV4K",v:"\u5F20\u5B87MV4K"},{n:"\u5468\u534E\u5065MV4K",v:"\u5468\u534E\u5065MV4K"},{n:"\u5F20\u97F6\u6DB5MV4K",v:"\u5F20\u97F6\u6DB5MV4K"},{n:"\u5468\u6DF1MV4K",v:"\u5468\u6DF1MV4K"},{n:"\u7EB5\u8D2F\u7EBFMV4K",v:"\u7EB5\u8D2F\u7EBFMV4K"},{n:"\u8D75\u96F7MV4K",v:"\u8D75\u96F7MV4K"},{n:"\u5468\u4F20\u96C4MV4K",v:"\u5468\u4F20\u96C4MV4K"},{n:"\u5F20\u56FD\u8363MV4K",v:"\u5F20\u56FD\u8363MV4K"},{n:"\u5468\u6167\u654FMV4K",v:"\u5468\u6167\u654FMV4K"},{n:"\u5F20\u60E0\u59B9MV4K",v:"\u5F20\u60E0\u59B9MV4K"},{n:"\u5468\u7B14\u7545MV4K",v:"\u5468\u7B14\u7545MV4K"},{n:"\u90D1\u4E2D\u57FAMV4K",v:"\u90D1\u4E2D\u57FAMV4K"},{n:"\u5F20\u827A\u5174MV4K",v:"\u5F20\u827A\u5174MV4K"},{n:"\u5F20\u9707\u5CB3MV4K",v:"\u5F20\u9707\u5CB3MV4K"},{n:"\u4E2D\u56FD\u597D\u58F0\u97F3MV4K",v:"\u4E2D\u56FD\u597D\u58F0\u97F3MV4K"},{n:"\u5F20\u96E8\u751FMV4K",v:"\u5F20\u96E8\u751FMV4K"},{n:"\u90D1\u667A\u5316MV4K",v:"\u90D1\u667A\u5316MV4K"},{n:"\u5353\u4F9D\u5A77MV4K",v:"\u5353\u4F9D\u5A77MV4K"},{n:"\u4E2D\u5C9B\u7F8E\u96EAMV4K",v:"\u4E2D\u5C9B\u7F8E\u96EAMV4K"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E15\u6885\u62C9:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5E15\u6885\u62C9",v:"\u5E15\u6885\u62C9"},{n:"\u5E15\u6885\u62C9\u7626\u817F",v:"\u5E15\u6885\u62C9\u7626\u817F"},{n:"\u5E15\u6885\u62C9\u8179\u90E8",v:"\u5E15\u6885\u62C9\u8179\u90E8"},{n:"\u5E15\u6885\u62C9\u624B\u81C2",v:"\u5E15\u6885\u62C9\u624B\u81C2"},{n:"\u5E15\u6885\u62C9\u70ED\u8EAB",v:"\u5E15\u6885\u62C9\u70ED\u8EAB"},{n:"\u5E15\u6885\u62C9\u821E\u8E48",v:"\u5E15\u6885\u62C9\u821E\u8E48"},{n:"\u5E15\u6885\u62C9\u71C3\u8102",v:"\u5E15\u6885\u62C9\u71C3\u8102"},{n:"\u5E15\u6885\u62C9\u6709\u6C27",v:"\u5E15\u6885\u62C9\u6709\u6C27"},{n:"\u5E15\u6885\u62C9\u62C9\u4F38",v:"\u5E15\u6885\u62C9\u62C9\u4F38"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u77E5\u540DUP\u4E3B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u77E5\u540DUP\u4E3B",v:"\u77E5\u540DUP\u4E3B"},{n:"\u83E0\u841D\u8D5B\u4E1C",v:"\u83E0\u841D\u8D5B\u4E1C"},{n:"\u51AF\u63D0\u83AB",v:"\u51AF\u63D0\u83AB"},{n:"\u6797\u5EF6\u79CB",v:"\u6797\u5EF6\u79CB"},{n:"-LKs-",v:"-LKs-"},{n:"\u5C0F\u7EA6\u7FF0\u53EF\u6C57",v:"\u5C0F\u7EA6\u7FF0\u53EF\u6C57"},{n:"low\u9986\u957F",v:"low\u9986\u957F"},{n:"\u81EA\u8BF4\u81EA\u8BDD\u7684\u603B\u88C1",v:"\u81EA\u8BF4\u81EA\u8BDD\u7684\u603B\u88C1"},{n:"\u6240\u957F\u6797\u8D85",v:"\u6240\u957F\u6797\u8D85"},{n:"\u4E16\u754C\u672A\u89E3\u4E4B\u8C1CM",v:"\u4E16\u754C\u672A\u89E3\u4E4B\u8C1CM"},{n:"\u674E\u6C38\u4E50\u8001\u5E08\u5B98\u65B9",v:"\u674E\u6C38\u4E50\u8001\u5E08\u5B98\u65B9"},{n:"\u7F57\u5179",v:"\u7F57\u5179"},{n:"\u56DE\u52302049",v:"\u56DE\u52302049"},{n:"\u4E8C\u6B21\u5143\u7684\u4E2D\u79D1\u9662\u7269\u7406\u6240",v:"\u4E8C\u6B21\u5143\u7684\u4E2D\u79D1\u9662\u7269\u7406\u6240"},{n:"\u6BD5\u5BFCTHU",v:"\u6BD5\u5BFCTHU"},{n:"\u7F57\u7FD4\u8BB2\u5211\u6CD5",v:"\u7F57\u7FD4\u8BB2\u5211\u6CD5"},{n:"\u6234\u535A\u58EB\u5B9E\u9A8C\u5BA4",v:"\u6234\u535A\u58EB\u5B9E\u9A8C\u5BA4"},{n:"\u82B3\u65AF\u5854\u8299",v:"\u82B3\u65AF\u5854\u8299"},{n:"\u53C2\u8D5B\u8005\u7F51",v:"\u53C2\u8D5B\u8005\u7F51"},{n:"\u4E09\u7EF4\u5730\u56FE\u770B\u4E16\u754C",v:"\u4E09\u7EF4\u5730\u56FE\u770B\u4E16\u754C"},{n:"\u6709\u673A\u793E\u4F1A",v:"\u6709\u673A\u793E\u4F1A"},{n:"\u4E4C\u9E26\u6821\u5C09CaptainWuya",v:"\u4E4C\u9E26\u6821\u5C09CaptainWuya"},{n:"\u679C\u58F3",v:"\u679C\u58F3"},{n:"\u4E25\u4F2F\u94A7",v:"\u4E25\u4F2F\u94A7"},{n:"\u662F\u4F60\u4EEC\u7684\u5EB7\u5EB7",v:"\u662F\u4F60\u4EEC\u7684\u5EB7\u5EB7"},{n:"\u8001\u7238\u8BC4\u6D4B",v:"\u8001\u7238\u8BC4\u6D4B"},{n:"\u786C\u6838\u7684\u534A\u4F5B\u4ED9\u4EBA",v:"\u786C\u6838\u7684\u534A\u4F5B\u4ED9\u4EBA"},{n:"\u76D7\u6708\u793E\u98DF\u9047\u8BB0",v:"\u76D7\u6708\u793E\u98DF\u9047\u8BB0"},{n:"\u6211\u662F\u90ED\u6770\u745E",v:"\u6211\u662F\u90ED\u6770\u745E"},{n:"\u65E0\u7A77\u5C0F\u4EAE\u7684\u79D1\u666E\u65E5\u5E38",v:"\u65E0\u7A77\u5C0F\u4EAE\u7684\u79D1\u666E\u65E5\u5E38"},{n:"papi\u9171",v:"papi\u9171"},{n:"\u8001\u756A\u8304",v:"\u8001\u756A\u8304"},{n:"\u7EF5\u7F8A\u6599\u7406",v:"\u7EF5\u7F8A\u6599\u7406"},{n:"\u8001\u5E08\u597D\u6211\u53EB\u4F55\u540C\u5B66",v:"\u8001\u5E08\u597D\u6211\u53EB\u4F55\u540C\u5B66"},{n:"\u656C\u6C49\u537F",v:"\u656C\u6C49\u537F"},{n:"\u5468\u516D\u91CEZoey",v:"\u5468\u516D\u91CEZoey"},{n:"\u6728\u9C7C\u6C34\u5FC3",v:"\u6728\u9C7C\u6C34\u5FC3"},{n:"\u51C9\u98CEKaze",v:"\u51C9\u98CEKaze"},{n:"\u5C0F\u6F6E\u9662\u957F",v:"\u5C0F\u6F6E\u9662\u957F"},{n:"\u4E2D\u56FDBOY\u8D85\u7EA7\u5927\u7329\u7329",v:"\u4E2D\u56FDBOY\u8D85\u7EA7\u5927\u7329\u7329"},{n:"\u674E\u5B50\u67D2",v:"\u674E\u5B50\u67D2"},{n:"\u6556\u5382\u957F",v:"\u6556\u5382\u957F"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u592A\u6781\u62F3:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u592A\u6781\u62F3",v:"\u592A\u6781\u62F3"},{n:"\u592A\u6781\u62F3\u90B1\u6167\u82B3",v:"\u592A\u6781\u62F3\u90B1\u6167\u82B3"},{n:"\u592A\u6781\u62F3\u9648\u6C0F",v:"\u592A\u6781\u62F3\u9648\u6C0F"},{n:"\u592A\u6781\u62F3\u6B66\u5F53",v:"\u592A\u6781\u62F3\u6B66\u5F53"},{n:"\u592A\u6781\u62F3\u4E8C\u5341\u56DB\u5F0F",v:"\u592A\u6781\u62F3\u4E8C\u5341\u56DB\u5F0F"},{n:"\u592A\u6781\u62F3\u4E09\u5341\u516D\u5F0F",v:"\u592A\u6781\u62F3\u4E09\u5341\u516D\u5F0F"},{n:"\u4E94\u79BD\u620F",v:"\u4E94\u79BD\u620F"},{n:"\u516B\u6BB5\u9526",v:"\u516B\u6BB5\u9526"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u821E\u8E48:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u821E\u8E48",v:"\u821E\u8E48"},{n:"\u5B85\u821E",v:"\u5B85\u821E"},{n:"\u8857\u821E",v:"\u8857\u821E"},{n:"\u4E2D\u56FD\u821E",v:"\u4E2D\u56FD\u821E"},{n:"\u5E7F\u573A\u821E",v:"\u5E7F\u573A\u821E"},{n:"\u4EA4\u8C0A\u821E",v:"\u4EA4\u8C0A\u821E"},{n:"\u821E\u8E48\u6559\u7A0B",v:"\u821E\u8E48\u6559\u7A0B"},{n:"\u821E\u8E48",v:"\u821E\u8E48"},{n:"\u660E\u661F\u821E\u8E48",v:"\u660E\u661F\u821E\u8E48"},{n:"\u97E9\u821E",v:"\u97E9\u821E"},{n:"\u53E4\u5178\u821E",v:"\u53E4\u5178\u821E"},{n:"\u7FFB\u8DF3",v:"\u7FFB\u8DF3"},{n:"\u53E4\u98CE\u821E",v:"\u53E4\u98CE\u821E"},{n:"\u73B0\u4EE3\u821E",v:"\u73B0\u4EE3\u821E"},{n:"\u7235\u58EB\u821E",v:"\u7235\u58EB\u821E"},{n:"\u82AD\u857E",v:"\u82AD\u857E"},{n:"\u7F16\u821E",v:"\u7F16\u821E"},{n:"POPPING",v:"POPPING"},{n:"\u6781\u4E50\u51C0\u571F",v:"\u6781\u4E50\u51C0\u571F"},{n:"\u6843\u6E90\u604B\u6B4C",v:"\u6843\u6E90\u604B\u6B4C"},{n:"\u65B0\u5B9D\u5C9B",v:"\u65B0\u5B9D\u5C9B"},{n:"\u62C9\u4E01\u821E",v:"\u62C9\u4E01\u821E"},{n:"\u8E66\u8FEA",v:"\u8E66\u8FEA"},{n:"\u6C11\u65CF\u821E",v:"\u6C11\u65CF\u821E"},{n:"\u6296\u80A9\u821E",v:"\u6296\u80A9\u821E"},{n:"\u9F50\u821E",v:"\u9F50\u821E"},{n:"\u673A\u68B0\u821E",v:"\u673A\u68B0\u821E"},{n:"BDF",v:"BDF"},{n:"\u7EC3\u4E60\u5BA4",v:"\u7EC3\u4E60\u5BA4"},{n:"\u7F8E\u5973\u821E\u8E48",v:"\u7F8E\u5973\u821E\u8E48"},{n:"\u725B\u4ED4\u88E4",v:"\u725B\u4ED4\u88E4"},{n:"\u9ED1\u4E1D",v:"\u9ED1\u4E1D"},{n:"\u8D85\u77ED\u88E4",v:"\u8D85\u77ED\u88E4"},{n:"\u8D85\u77ED\u88D9",v:"\u8D85\u77ED\u88D9"},{n:"\u821E\u8E48\u7EFC\u5408",v:"\u821E\u8E48\u7EFC\u5408"},{n:"\u821E\u8E48\u6559\u7A0B",v:"\u821E\u8E48\u6559\u7A0B"},{n:"4K\u821E\u8E48",v:"4K\u821E\u8E48"},{n:"4K\u5B85\u821E",v:"4K\u5B85\u821E"},{n:"4K\u8857\u821E",v:"4K\u8857\u821E"},{n:"4K\u660E\u661F\u821E\u8E48",v:"4K\u660E\u661F\u821E\u8E48"},{n:"4K\u97E9\u821E",v:"4K\u97E9\u821E"},{n:"4K\u53E4\u5178\u821E",v:"4K\u53E4\u5178\u821E"},{n:"4K\u7FFB\u8DF3",v:"4K\u7FFB\u8DF3"},{n:"4K\u4E2D\u56FD\u821E",v:"4K\u4E2D\u56FD\u821E"},{n:"4K\u53E4\u98CE\u821E",v:"4K\u53E4\u98CE\u821E"},{n:"4K\u73B0\u4EE3\u821E",v:"4K\u73B0\u4EE3\u821E"},{n:"4K\u7235\u58EB\u821E",v:"4K\u7235\u58EB\u821E"},{n:"4K\u82AD\u857E",v:"4K\u82AD\u857E"},{n:"4K\u7F16\u821E",v:"4K\u7F16\u821E"},{n:"4K POPPING",v:"4K POPPING"},{n:"4K\u6781\u4E50\u51C0\u571F",v:"4K\u6781\u4E50\u51C0\u571F"},{n:"4K\u6843\u6E90\u604B\u6B4C",v:"4K\u6843\u6E90\u604B\u6B4C"},{n:"4K\u65B0\u5B9D\u5C9B",v:"4K\u65B0\u5B9D\u5C9B"},{n:"4K\u62C9\u4E01\u821E",v:"4K\u62C9\u4E01\u821E"},{n:"4K\u8E66\u8FEA",v:"4K\u8E66\u8FEA"},{n:"4K\u6C11\u65CF\u821E",v:"4K\u6C11\u65CF\u821E"},{n:"4K\u6296\u80A9\u821E",v:"4K\u6296\u80A9\u821E"},{n:"4K\u9F50\u821E",v:"4K\u9F50\u821E"},{n:"4K\u673A\u68B0\u821E",v:"4K\u673A\u68B0\u821E"},{n:"4K\u5E7F\u573A\u821E",v:"4K\u5E7F\u573A\u821E"},{n:"4KBDF",v:"4KBDF"},{n:"4K\u7EC3\u4E60\u5BA4",v:"4K\u7EC3\u4E60\u5BA4"},{n:"4K\u7F8E\u5973\u821E\u8E48",v:"4K\u7F8E\u5973\u821E\u8E48"},{n:"4K\u725B\u4ED4\u88E4",v:"4K\u725B\u4ED4\u88E4"},{n:"4K\u9ED1\u4E1D",v:"4K\u9ED1\u4E1D"},{n:"4K\u8D85\u77ED\u88E4",v:"4K\u8D85\u77ED\u88E4"},{n:"4K\u8D85\u77ED\u88D9",v:"4K\u8D85\u77ED\u88D9"},{n:"4K\u821E\u8E48\u7EFC\u5408",v:"4K\u821E\u8E48\u7EFC\u5408"},{n:"4K\u821E\u8E48\u6559\u7A0B",v:"4K\u821E\u8E48\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u97F3\u4E50:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u94A2\u7434\u66F2",v:"\u94A2\u7434\u66F2"},{n:"\u534F\u594F\u66F2r",v:"\u534F\u594F\u66F2r"},{n:"\u4E2D\u56FD\u53E4\u98CE\u97F3\u4E50",v:"\u4E2D\u56FD\u53E4\u98CE\u97F3\u4E50"},{n:"\u80CC\u666F\u97F3\u4E50",v:"\u80CC\u666F\u97F3\u4E50"},{n:"\u52A9\u7720\u97F3\u4E50",v:"\u52A9\u7720\u97F3\u4E50"},{n:"\u80CE\u6559\u97F3\u4E50",v:"\u80CE\u6559\u97F3\u4E50"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u539F\u521B\u97F3\u4E50",v:"\u539F\u521B\u97F3\u4E50"},{n:"\u7FFB\u5531",v:"\u7FFB\u5531"},{n:"\u6F14\u594F",v:"\u6F14\u594F"},{n:"VOCALOID\xB7UTAU",v:"VOCALOID\xB7UTAU"},{n:"\u97F3\u4E50\u73B0\u573A",v:"\u97F3\u4E50\u73B0\u573A"},{n:"\u539F\u58F0\u97F3\u4E50",v:"\u539F\u58F0\u97F3\u4E50"},{n:"\u4E50\u8BC4\u76D8\u70B9",v:"\u4E50\u8BC4\u76D8\u70B9"},{n:"\u97F3\u4E50\u6559\u5B66",v:"\u97F3\u4E50\u6559\u5B66"},{n:"\u97F3\u4E50\u7EFC\u5408",v:"\u97F3\u4E50\u7EFC\u5408"},{n:"\u8BF4\u5531",v:"\u8BF4\u5531"},{n:"HIPHOP",v:"HIPHOP"},{n:"\u4E2D\u56FD\u98CE",v:"\u4E2D\u56FD\u98CE"},{n:"\u53E4\u98CE",v:"\u53E4\u98CE"},{n:"\u7535\u97F3",v:"\u7535\u97F3"},{n:"\u6447\u6EDA",v:"\u6447\u6EDA"},{n:"\u6C11\u8C23",v:"\u6C11\u8C23"},{n:"\u7235\u58EB",v:"\u7235\u58EB"},{n:"\u7EAF\u97F3\u4E50",v:"\u7EAF\u97F3\u4E50"},{n:"BEAT",v:"BEAT"},{n:"REMIX",v:"REMIX"},{n:"\u4EBA\u58F0\u672C\u5BB6",v:"\u4EBA\u58F0\u672C\u5BB6"},{n:"\u56FD\u4EBA\u539F\u521B",v:"\u56FD\u4EBA\u539F\u521B"},{n:"\u539F\u521B\u6B4C\u66F2",v:"\u539F\u521B\u6B4C\u66F2"},{n:"\u7F16\u66F2",v:"\u7F16\u66F2"},{n:"\u6539\u7F16",v:"\u6539\u7F16"},{n:"\u5409\u4ED6",v:"\u5409\u4ED6"},{n:"\u7535\u5B50\u97F3\u4E50",v:"\u7535\u5B50\u97F3\u4E50"},{n:"\u94A2\u7434",v:"\u94A2\u7434"},{n:"\u56FD\u4EBA\u7537\u58F0",v:"\u56FD\u4EBA\u7537\u58F0"},{n:"\u56FD\u4EBA\u5973\u751F",v:"\u56FD\u4EBA\u5973\u751F"},{n:"\u4E2D\u6587\u7FFB\u5531",v:"\u4E2D\u6587\u7FFB\u5531"},{n:"\u82F1\u6587\u7FFB\u5531",v:"\u82F1\u6587\u7FFB\u5531"},{n:"VOCALOID",v:"VOCALOID"},{n:"\u71C3\u5411",v:"\u71C3\u5411"},{n:"\u4E2D\u6587\u586B\u8BCD",v:"\u4E2D\u6587\u586B\u8BCD"},{n:"\u7075\u9B42\u6B4C\u624B",v:"\u7075\u9B42\u6B4C\u624B"},{n:"\u6CBB\u6108\u5411",v:"\u6CBB\u6108\u5411"},{n:"COVER",v:"COVER"},{n:"\u521D\u6295\u7A3F",v:"\u521D\u6295\u7A3F"},{n:"\u5409\u4ED6\u5F39\u5531",v:"\u5409\u4ED6\u5F39\u5531"},{n:"\u539F\u521BPV",v:"\u539F\u521BPV"},{n:"\u9B54\u9053\u7956\u5E08",v:"\u9B54\u9053\u7956\u5E08"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u65B0\u4EBA\u5411",v:"\u65B0\u4EBA\u5411"},{n:"\u798F\u5229\u8033\u673A",v:"\u798F\u5229\u8033\u673A"},{n:"\u521B\u610F\u6F14\u594F",v:"\u521B\u610F\u6F14\u594F"},{n:"\u8857\u5934\u8868\u6F14",v:"\u8857\u5934\u8868\u6F14"},{n:"\u7FFB\u5F39",v:"\u7FFB\u5F39"},{n:"\u4E50\u961F",v:"\u4E50\u961F"},{n:"\u6C11\u4E50",v:"\u6C11\u4E50"},{n:"\u5408\u594F",v:"\u5408\u594F"},{n:"\u6307\u5F39",v:"\u6307\u5F39"},{n:"\u5C0F\u63D0\u7434",v:"\u5C0F\u63D0\u7434"},{n:"\u67B6\u5B50\u9F13",v:"\u67B6\u5B50\u9F13"},{n:"\u6728\u5409\u4ED6",v:"\u6728\u5409\u4ED6"},{n:"BGM",v:"BGM"},{n:"\u5361\u7956\u7B1B",v:"\u5361\u7956\u7B1B"},{n:"\u7535\u5409\u4ED6",v:"\u7535\u5409\u4ED6"},{n:"LAUNCHPAD",v:"LAUNCHPAD"},{n:"\u8D1D\u65AF",v:"\u8D1D\u65AF"},{n:"\u53E3\u7434",v:"\u53E3\u7434"},{n:"\u6307\u5F39\u5409\u4ED6",v:"\u6307\u5F39\u5409\u4ED6"},{n:"\u7435\u7436",v:"\u7435\u7436"},{n:"\u626C\u7434",v:"\u626C\u7434"},{n:"\u53E4\u5178\u97F3\u4E50",v:"\u53E4\u5178\u97F3\u4E50"},{n:"\u53E4\u7B5D",v:"\u53E4\u7B5D"},{n:"\u4E8C\u80E1",v:"\u4E8C\u80E1"},{n:"BEATBOX",v:"BEATBOX"},{n:"\u53E4\u5178",v:"\u53E4\u5178"},{n:"\u6D1B\u5929\u4F9D",v:"\u6D1B\u5929\u4F9D"},{n:"\u4E50\u6B63\u7EEB",v:"\u4E50\u6B63\u7EEB"},{n:"\u8A00\u548C",v:"\u8A00\u548C"},{n:"\u4E50\u6B63\u9F99\u7259",v:"\u4E50\u6B63\u9F99\u7259"},{n:"\u58A8\u6E05\u5F26",v:"\u58A8\u6E05\u5F26"},{n:"\u5FBD\u7FBD\u6469\u67EF",v:"\u5FBD\u7FBD\u6469\u67EF"},{n:"Vsinger",v:"Vsinger"},{n:"\u5FC3\u534E",v:"\u5FC3\u534E"},{n:"\u661F\u5C18",v:"\u661F\u5C18"},{n:"\u5AE3\u6C50",v:"\u5AE3\u6C50"},{n:"\u521D\u97F3\u672A\u6765",v:"\u521D\u97F3\u672A\u6765"},{n:"\u955C\u97F3\u94C3",v:"\u955C\u97F3\u94C3"},{n:"\u5DE1\u97F3\u6D41\u6B4C",v:"\u5DE1\u97F3\u6D41\u6B4C"},{n:"KAITO",v:"KAITO"},{n:"flower",v:"flower"},{n:"\u5143\u7B71",v:"\u5143\u7B71"},{n:"VOCALOID\u4E2D\u6587\u66F2",v:"VOCALOID\u4E2D\u6587\u66F2"},{n:"\u83B2\u534E",v:"\u83B2\u534E"},{n:"\u5357\u5317\u7EC4",v:"\u5357\u5317\u7EC4"},{n:"\u955C\u97F3\u53CC\u5B50",v:"\u955C\u97F3\u53CC\u5B50"},{n:"MUTA\u4E2D\u6587\u66F2",v:"MUTA\u4E2D\u6587\u66F2"},{n:"UTAU\u4E2D\u534E\u7EC4",v:"UTAU\u4E2D\u534E\u7EC4"},{n:"XStudio",v:"XStudio"},{n:"\u521D\u97F3",v:"\u521D\u97F3"},{n:"IA",v:"IA"},{n:"GUMI",v:"GUMI"},{n:"SynthV",v:"SynthV"},{n:"UTAU",v:"UTAU"},{n:"\u5E7B\u6653\u4F0A",v:"\u5E7B\u6653\u4F0A"},{n:"\u4E94\u7EF4\u4ECB\u8D28",v:"\u4E94\u7EF4\u4ECB\u8D28"},{n:"\u53EF\u4E0D",v:"\u53EF\u4E0D"},{n:"ACE\u865A\u62DF\u6B4C\u59EC",v:"ACE\u865A\u62DF\u6B4C\u59EC"},{n:"deepvocal",v:"deepvocal"},{n:"SYNTHV",v:"SYNTHV"},{n:"\u534E\u8BED\u73B0\u573A",v:"\u534E\u8BED\u73B0\u573A"},{n:"\u6B27\u7F8E\u73B0\u573A",v:"\u6B27\u7F8E\u73B0\u573A"},{n:"\u65E5\u8BED\u73B0\u573A",v:"\u65E5\u8BED\u73B0\u573A"},{n:"\u97E9\u8BED\u73B0\u573A",v:"\u97E9\u8BED\u73B0\u573A"},{n:"\u56FD\u8BED\u73B0\u573A",v:"\u56FD\u8BED\u73B0\u573A"},{n:"\u7CA4\u8BED\u73B0\u573A",v:"\u7CA4\u8BED\u73B0\u573A"},{n:"live",v:"live"},{n:"\u97F3\u4E50\u5267",v:"\u97F3\u4E50\u5267"},{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u97F3\u4E50\u8282",v:"\u97F3\u4E50\u8282"},{n:"\u7ECF\u5178\u8001\u6B4C",v:"\u7ECF\u5178\u8001\u6B4C"},{n:"\u7CBE\u9009\u6B4C\u5355",v:"\u7CBE\u9009\u6B4C\u5355"},{n:"\u5F71\u89C6\u97F3\u4E50",v:"\u5F71\u89C6\u97F3\u4E50"},{n:"\u6E38\u620F\u97F3\u4E50",v:"\u6E38\u620F\u97F3\u4E50"},{n:"\u4E2D\u56FD\u620F\u66F2",v:"\u4E2D\u56FD\u620F\u66F2"},{n:"\u9ED1\u80F6\u5531\u7247",v:"\u9ED1\u80F6\u5531\u7247"},{n:"ACG\u97F3\u4E50",v:"ACG\u97F3\u4E50"},{n:"\u4EA4\u54CD\u4E50",v:"\u4EA4\u54CD\u4E50"},{n:"\u5FAA\u73AF\u97F3\u4E50",v:"\u5FAA\u73AF\u97F3\u4E50"},{n:"OST\u97F3\u4E50",v:"OST\u97F3\u4E50"},{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"DJ\u97F3\u4E50",v:"DJ\u97F3\u4E50"},{n:"\u821E\u66F2",v:"\u821E\u66F2"},{n:"\u591C\u5E97\u821E\u66F2",v:"\u591C\u5E97\u821E\u66F2"},{n:"\u56FD\u5916\u821E\u66F2",v:"\u56FD\u5916\u821E\u66F2"},{n:"\u4E9A\u6D32\u821E\u66F2",v:"\u4E9A\u6D32\u821E\u66F2"},{n:"\u6B27\u7F8E\u821E\u66F2",v:"\u6B27\u7F8E\u821E\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6B4C\u66F2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6B4C\u66F2",v:"\u6B4C\u66F2"},{n:"\u9999\u6E2F\u6B4C\u66F2",v:"\u9999\u6E2F\u6B4C\u66F2"},{n:"\u53F0\u6E7E\u6B4C\u66F2",v:"\u53F0\u6E7E\u6B4C\u66F2"},{n:"\u5185\u5730\u6B4C\u66F2",v:"\u5185\u5730\u6B4C\u66F2"},{n:"\u82F1\u6587\u6B4C\u66F2",v:"\u82F1\u6587\u6B4C\u66F2"},{n:"\u65E5\u6587\u6B4C\u66F2",v:"\u65E5\u6587\u6B4C\u66F2"},{n:"\u5C0F\u8BED\u79CD\u6B4C\u66F2",v:"\u5C0F\u8BED\u79CD\u6B4C\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66",v:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66"},{n:"Adobe Photoshop\u6559\u7A0B",v:"Adobe Photoshop\u6559\u7A0B"},{n:"Adobe Illustrator\u6559\u7A0B",v:"Adobe Illustrator\u6559\u7A0B"},{n:"CorelDRAW\u6559\u7A0B",v:"CorelDRAW\u6559\u7A0B"},{n:"Adobe InDesign\u6559\u7A0B",v:"Adobe InDesign\u6559\u7A0B"},{n:"Adobe Pagermaker\u6559\u7A0B",v:"Adobe Pagermaker\u6559\u7A0B"},{n:"SAI\u6559\u7A0B",v:"SAI\u6559\u7A0B"},{n:"Adobe Bridge\u6559\u7A0B",v:"Adobe Bridge\u6559\u7A0B"},{n:"Adobe Pagermake\u6559\u7A0Br",v:"Adobe Pagermake\u6559\u7A0Br"},{n:"3D Studio Max\u6559\u7A0B",v:"3D Studio Max\u6559\u7A0B"},{n:"PR\u6559\u7A0B",v:"PR\u6559\u7A0B"},{n:"AE\u6559\u7A0B",v:"AE\u6559\u7A0B"},{n:"CINEMA 4D\u6559\u7A0B",v:"CINEMA 4D\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8F6F\u4EF6\u6559\u7A0B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u8F6F\u4EF6\u6559\u7A0B",v:"\u8F6F\u4EF6\u6559\u7A0B"},{n:"MT\u7BA1\u7406\u5668",v:"MT\u7BA1\u7406\u5668"},{n:"NP\u7BA1\u7406\u5668",v:"NP\u7BA1\u7406\u5668"},{n:"mixplorer",v:"mixplorer"},{n:"\u8131\u58F3",v:"\u8131\u58F3"},{n:"\u722C\u866B",v:"\u722C\u866B"},{n:"json&jar",v:"json&jar"},{n:"\u7F51\u76D8\u6302\u8F7D",v:"\u7F51\u76D8\u6302\u8F7D"},{n:"alist+WebDav",v:"alist+WebDav"},{n:"TVBox\u4FEE\u6539\u6559\u7A0B",v:"TVBox\u4FEE\u6539\u6559\u7A0B"},{n:"EXCEL\u6559\u7A0B",v:"EXCEL\u6559\u7A0B"},{n:"Git\u5165\u95E8\u5230\u7CBE\u901A",v:"Git\u5165\u95E8\u5230\u7CBE\u901A"},{n:"java\u6559\u7A0B",v:"java\u6559\u7A0B"},{n:"phyton\u6559\u7A0B",v:"phyton\u6559\u7A0B"},{n:"xml\u6559\u7A0B",v:"xml\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],Windows:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5C0F\u59D0\u59D0\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E7F\u573A\u821E\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u821E\u66F2\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u767D\u566A\u97F3\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u641E\u7B11\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u4F53\u80B2\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K":[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8DB3\u7403\u6BD4\u8D5B\u5408\u96C6\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7BEE\u7403\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u52A8\u7269\u4E16\u754C\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u513F\u7AE5\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8352\u91CE\u6C42\u751F\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7EAA\u5F55\u7247\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98DF\u8C31:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u98DF\u8C31",v:"\u98DF\u8C31"},{n:"\u5DDD\u83DC\u98DF\u8C31",v:"\u5DDD\u83DC\u98DF\u8C31"},{n:"\u8C6B\u83DC\u98DF\u8C31",v:"\u8C6B\u83DC\u98DF\u8C31"},{n:"\u6DEE\u626C\u83DC\u98DF\u8C31",v:"\u6DEE\u626C\u83DC\u98DF\u8C31"},{n:"\u6E58\u83DC\u98DF\u8C31",v:"\u6E58\u83DC\u98DF\u8C31"},{n:"\u9C81\u83DC\u98DF\u8C31",v:"\u9C81\u83DC\u98DF\u8C31"},{n:"\u7CA4\u83DC\u98DF\u8C31",v:"\u7CA4\u83DC\u98DF\u8C31"},{n:"\u6F6E\u83DC\u98DF\u8C31",v:"\u6F6E\u83DC\u98DF\u8C31"},{n:"\u6D59\u83DC\u98DF\u8C31",v:"\u6D59\u83DC\u98DF\u8C31"},{n:"\u5FBD\u83DC\u98DF\u8C31",v:"\u5FBD\u83DC\u98DF\u8C31"},{n:"\u95FD\u83DC\u98DF\u8C31",v:"\u95FD\u83DC\u98DF\u8C31"},{n:"\u82CF\u83DC\u98DF\u8C31",v:"\u82CF\u83DC\u98DF\u8C31"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5065\u8EAB:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5065\u8EAB",v:"\u5065\u8EAB"},{n:"\u7626\u817F",v:"\u7626\u817F"},{n:"\u8179\u90E8",v:"\u8179\u90E8"},{n:"\u624B\u81C2",v:"\u624B\u81C2"},{n:"\u70ED\u8EAB",v:"\u70ED\u8EAB"},{n:"\u5E15\u6885\u62C9",v:"\u5E15\u6885\u62C9"},{n:"\u71C3\u8102",v:"\u71C3\u8102"},{n:"\u6709\u6C27",v:"\u6709\u6C27"},{n:"\u62C9\u4F38",v:"\u62C9\u4F38"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7A97\u767D\u566A\u97F3:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7F8E\u98DF\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u7F8E\u98DF\u8D85\u6E05",v:"\u7F8E\u98DF\u8D85\u6E05"},{n:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD\u8D85\u6E05",v:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD\u8D85\u6E05"},{n:"\u8001\u5B57\u53F7\u7F8E\u98DF\u8D85\u6E05",v:"\u8001\u5B57\u53F7\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5BB6\u5E38\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5BB6\u5E38\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u9999\u6E2F\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u9999\u6E2F\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6FB3\u95E8\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6FB3\u95E8\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u4E0A\u6D77\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u4E0A\u6D77\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5317\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5317\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u91CD\u5E86\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u91CD\u5E86\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5357\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5357\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5E7F\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5E7F\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u676D\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u676D\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6210\u90FD\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6210\u90FD\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u82CF\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u82CF\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6B66\u6C49\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6B66\u6C49\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u53F0\u6E7E\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u53F0\u6E7E\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5DDD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5DDD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u8C6B\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u8C6B\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6DEE\u626C\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6DEE\u626C\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6E58\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6E58\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u9C81\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u9C81\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u7CA4\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u7CA4\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6F6E\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6F6E\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6D59\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6D59\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5FBD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5FBD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u95FD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u95FD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u4E1C\u5317\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u4E1C\u5317\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5BA2\u5BB6\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5BA2\u5BB6\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u82CF\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u82CF\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u706B\u9505",v:"\u706B\u9505"},{n:"\u9762\u98DF",v:"\u9762\u98DF"},{n:"\u7092\u83DC",v:"\u7092\u83DC"},{n:"\u70B9\u5FC3",v:"\u70B9\u5FC3"},{n:"\u65E5\u6599",v:"\u65E5\u6599"},{n:"\u5C0F\u5403",v:"\u5C0F\u5403"},{n:"\u7D20\u98DF",v:"\u7D20\u98DF"},{n:"\u84B8\u83DC",v:"\u84B8\u83DC"},{n:"\u51C9\u83DC",v:"\u51C9\u83DC"},{n:"\u65E9\u9910",v:"\u65E9\u9910"},{n:"\u62AB\u8428",v:"\u62AB\u8428"},{n:"\u70E4\u9C7C",v:"\u70E4\u9C7C"},{n:"\u6D77\u9C9C\u7F8E\u98DF\u8D85\u6E05",v:"\u6D77\u9C9C\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6C49\u5821",v:"\u6C49\u5821"},{n:"\u97E9\u56FD\u83DC",v:"\u97E9\u56FD\u83DC"},{n:"\u6CF0\u56FD\u83DC",v:"\u6CF0\u56FD\u83DC"},{n:"\u7A46\u65AF\u6797\u83DC",v:"\u7A46\u65AF\u6797\u83DC"},{n:"\u6CD5\u56FD\u83DC",v:"\u6CD5\u56FD\u83DC"},{n:"\u610F\u5927\u5229\u83DC",v:"\u610F\u5927\u5229\u83DC"},{n:"\u897F\u73ED\u7259\u83DC",v:"\u897F\u73ED\u7259\u83DC"},{n:"\u571F\u8033\u5176\u83DC\u7CFB",v:"\u571F\u8033\u5176\u83DC\u7CFB"},{n:"\u963F\u62C9\u4F2F\u83DC",v:"\u963F\u62C9\u4F2F\u83DC"},{n:"\u5FB7\u56FD\u83DC",v:"\u5FB7\u56FD\u83DC"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E7F\u573A\u821E:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7403\u661F:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u7403\u661F",v:"\u7403\u661F"},{n:"\u6885\u897F",v:"\u6885\u897F"},{n:"C\u7F57",v:"C\u7F57"},{n:"\u5929\u4E0B\u8DB3\u7403",v:"\u5929\u4E0B\u8DB3\u7403"},{n:"\u7F57\u7EB3\u5C14\u591A",v:"\u7F57\u7EB3\u5C14\u591A"},{n:"\u4EA8\u5229",v:"\u4EA8\u5229"},{n:"\u5C0F\u7F57",v:"\u5C0F\u7F57"},{n:"\u9F50\u8FBE\u5185",v:"\u9F50\u8FBE\u5185"},{n:"\u8D1D\u514B\u6C49\u59C6",v:"\u8D1D\u514B\u6C49\u59C6"},{n:"\u5185\u9A6C\u5C14",v:"\u5185\u9A6C\u5C14"},{n:"\u5FB7\u5E03\u52B3\u5185",v:"\u5FB7\u5E03\u52B3\u5185"},{n:"\u6B27\u51A0",v:"\u6B27\u51A0"},{n:"\u4E16\u754C\u676F",v:"\u4E16\u754C\u676F"},{n:"\u897F\u7532",v:"\u897F\u7532"},{n:"\u82F1\u8D85",v:"\u82F1\u8D85"},{n:"\u610F\u7532",v:"\u610F\u7532"},{n:"\u5FB7\u7532",v:"\u5FB7\u7532"},{n:"\u56FD\u7C73",v:"\u56FD\u7C73"},{n:"\u7687\u9A6C",v:"\u7687\u9A6C"},{n:"\u5DF4\u8428",v:"\u5DF4\u8428"},{n:"\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC",v:"\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC"},{n:"\u66FC\u8054",v:"\u66FC\u8054"},{n:"\u66FC\u57CE",v:"\u66FC\u57CE"},{n:"NBA",v:"NBA"},{n:"\u8A79\u59C6\u65AF",v:"\u8A79\u59C6\u65AF"},{n:"\u5E93\u91CC",v:"\u5E93\u91CC"},{n:"\u675C\u5170\u7279",v:"\u675C\u5170\u7279"},{n:"UFC",v:"UFC"},{n:"\u65AF\u8BFA\u514B",v:"\u65AF\u8BFA\u514B"},{n:"\u7F51\u7403",v:"\u7F51\u7403"},{n:"F1",v:"F1"},{n:"\u9AD8\u5C14\u592B",v:"\u9AD8\u5C14\u592B"},{n:"\u7403\u661F",v:"\u7403\u661F"},{n:"\u7BEE\u7403",v:"\u7BEE\u7403"},{n:"\u8DB3\u7403",v:"\u8DB3\u7403"},{n:"4K\u7403\u661F",v:"4K\u7403\u661F"},{n:"4K\u6885\u897F",v:"4K\u6885\u897F"},{n:"4K C\u7F57",v:"4K C\u7F57"},{n:"4K\u5929\u4E0B\u8DB3\u7403",v:"4K\u5929\u4E0B\u8DB3\u7403"},{n:"4K\u7F57\u7EB3\u5C14\u591A",v:"4K\u7F57\u7EB3\u5C14\u591A"},{n:"4K\u4EA8\u5229",v:"4K\u4EA8\u5229"},{n:"4K\u5C0F\u7F57",v:"4K\u5C0F\u7F57"},{n:"4K\u9F50\u8FBE\u5185",v:"4K\u9F50\u8FBE\u5185"},{n:"4K\u8D1D\u514B\u6C49\u59C6",v:"4K\u8D1D\u514B\u6C49\u59C6"},{n:"4K\u5185\u9A6C\u5C14",v:"4K\u5185\u9A6C\u5C14"},{n:"4K\u5FB7\u5E03\u52B3\u5185",v:"4K\u5FB7\u5E03\u52B3\u5185"},{n:"4K\u6B27\u51A0",v:"4K\u6B27\u51A0"},{n:"4K\u4E16\u754C\u676F",v:"4K\u4E16\u754C\u676F"},{n:"4K\u897F\u7532",v:"4K\u897F\u7532"},{n:"4K\u82F1\u8D85",v:"4K\u82F1\u8D85"},{n:"4K\u610F\u7532",v:"4K\u610F\u7532"},{n:"4K\u5FB7\u7532",v:"4K\u5FB7\u7532"},{n:"4K\u56FD\u7C73",v:"4K\u56FD\u7C73"},{n:"4K\u7687\u9A6C",v:"4K\u7687\u9A6C"},{n:"4K\u5DF4\u8428",v:"4K\u5DF4\u8428"},{n:"4K\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC",v:"4K\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC"},{n:"4K\u66FC\u8054",v:"4K\u66FC\u8054"},{n:"4K\u66FC\u57CE",v:"4K\u66FC\u57CE"},{n:"4K NBA",v:"4K NBA"},{n:"4K\u8A79\u59C6\u65AF",v:"4K\u8A79\u59C6\u65AF"},{n:"4K\u5E93\u91CC",v:"4K\u5E93\u91CC"},{n:"4K\u675C\u5170\u7279",v:"4K\u675C\u5170\u7279"},{n:"4K UFC",v:"4K UFC"},{n:"4K\u65AF\u8BFA\u514B",v:"4K\u65AF\u8BFA\u514B"},{n:"4K\u7F51\u7403",v:"4K\u7F51\u7403"},{n:"4K\u7BEE\u7403",v:"4K\u7BEE\u7403"},{n:"4K\u8DB3\u7403",v:"4K\u8DB3\u7403"},{n:"4K F1",v:"4K F1"},{n:"4K\u9AD8\u5C14\u592B",v:"4K\u9AD8\u5C14\u592B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7535\u89C6\u5267:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F8\u58F0\u5C0F\u54C1\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u76F8\u58F0\u5C0F\u54C1",v:"\u76F8\u58F0\u5C0F\u54C1"},{n:"\u5355\u53E3\u76F8\u58F0",v:"\u5355\u53E3\u76F8\u58F0"},{n:"\u7FA4\u53E3\u76F8\u58F0",v:"\u7FA4\u53E3\u76F8\u58F0"},{n:"\u5FB7\u4E91\u793E",v:"\u5FB7\u4E91\u793E"},{n:"\u9752\u66F2\u793E",v:"\u9752\u66F2\u793E"},{n:"\u90ED\u5FB7\u7EB2",v:"\u90ED\u5FB7\u7EB2"},{n:"\u5CB3\u4E91\u9E4F",v:"\u5CB3\u4E91\u9E4F"},{n:"\u66F9\u4E91\u91D1",v:"\u66F9\u4E91\u91D1"},{n:"\u8BC4\u4E66",v:"\u8BC4\u4E66"},{n:"\u5C0F\u66F2",v:"\u5C0F\u66F2"},{n:"\u4E8C\u4EBA\u8F6C",v:"\u4E8C\u4EBA\u8F6C"},{n:"\u6625\u665A\u5C0F\u54C1",v:"\u6625\u665A\u5C0F\u54C1"},{n:"\u8D75\u672C\u5C71",v:"\u8D75\u672C\u5C71"},{n:"\u9648\u4F69\u65AF",v:"\u9648\u4F69\u65AF"},{n:"\u51AF\u5DE9",v:"\u51AF\u5DE9"},{n:"\u5B8B\u5C0F\u5B9D",v:"\u5B8B\u5C0F\u5B9D"},{n:"\u8D75\u4E3D\u84C9",v:"\u8D75\u4E3D\u84C9"},{n:"\u90ED\u8FBE",v:"\u90ED\u8FBE"},{n:"\u6F58\u957F\u6C5F",v:"\u6F58\u957F\u6C5F"},{n:"\u90ED\u51AC\u4E34",v:"\u90ED\u51AC\u4E34"},{n:"\u4E25\u987A\u5F00",v:"\u4E25\u987A\u5F00"},{n:"\u6587\u677E",v:"\u6587\u677E"},{n:"\u5F00\u5FC3\u9EBB\u82B1",v:"\u5F00\u5FC3\u9EBB\u82B1"},{n:"\u5C4C\u4E1D\u7537\u58EB",v:"\u5C4C\u4E1D\u7537\u58EB"},{n:"\u559C\u5267\u7EFC\u827A",v:"\u559C\u5267\u7EFC\u827A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u620F\u66F2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u620F\u66F2",v:"\u620F\u66F2"},{n:"\u4EAC\u5267",v:"\u4EAC\u5267"},{n:"\u8D8A\u5267",v:"\u8D8A\u5267"},{n:"\u9EC4\u6885\u620F",v:"\u9EC4\u6885\u620F"},{n:"\u8BC4\u5267",v:"\u8BC4\u5267"},{n:"\u8C6B\u5267",v:"\u8C6B\u5267"},{n:"\u6606\u66F2",v:"\u6606\u66F2"},{n:"\u9AD8\u8154",v:"\u9AD8\u8154"},{n:"\u6886\u5B50\u8154",v:"\u6886\u5B50\u8154"},{n:"\u6CB3\u5317\u6886\u5B50",v:"\u6CB3\u5317\u6886\u5B50"},{n:"\u664B\u5267",v:"\u664B\u5267"},{n:"\u84B2\u5267",v:"\u84B2\u5267"},{n:"\u96C1\u5267",v:"\u96C1\u5267"},{n:"\u4E0A\u515A\u6886\u5B50",v:"\u4E0A\u515A\u6886\u5B50"},{n:"\u79E6\u8154",v:"\u79E6\u8154"},{n:"\u6B66\u5B89\u5E73\u8C03",v:"\u6B66\u5B89\u5E73\u8C03"},{n:"\u4E8C\u4EBA\u53F0",v:"\u4E8C\u4EBA\u53F0"},{n:"\u5409\u5267",v:"\u5409\u5267"},{n:"\u9F99\u6C5F\u5267",v:"\u9F99\u6C5F\u5267"},{n:"\u8D8A\u8C03",v:"\u8D8A\u8C03"},{n:"\u6CB3\u5357\u66F2\u5267",v:"\u6CB3\u5357\u66F2\u5267"},{n:"\u5C71\u4E1C\u6886\u5B50",v:"\u5C71\u4E1C\u6886\u5B50"},{n:"\u6DEE\u5267",v:"\u6DEE\u5267"},{n:"\u6CAA\u5267",v:"\u6CAA\u5267"},{n:"\u6ED1\u7A3D\u620F",v:"\u6ED1\u7A3D\u620F"},{n:"\u5A7A\u5267",v:"\u5A7A\u5267"},{n:"\u7ECD\u5267",v:"\u7ECD\u5267"},{n:"\u5FBD\u5267",v:"\u5FBD\u5267"},{n:"\u95FD\u5267",v:"\u95FD\u5267"},{n:"\u8386\u4ED9\u620F",v:"\u8386\u4ED9\u620F"},{n:"\u68A8\u56ED\u620F",v:"\u68A8\u56ED\u620F"},{n:"\u9AD8\u7532\u620F",v:"\u9AD8\u7532\u620F"},{n:"\u8D63\u5267",v:"\u8D63\u5267"},{n:"\u91C7\u8336\u620F",v:"\u91C7\u8336\u620F"},{n:"\u6C49\u5267",v:"\u6C49\u5267"},{n:"\u6E58\u5267",v:"\u6E58\u5267"},{n:"\u7941\u5267",v:"\u7941\u5267"},{n:"\u6E56\u5357\u82B1\u9F13\u620F",v:"\u6E56\u5357\u82B1\u9F13\u620F"},{n:"\u7CA4\u5267",v:"\u7CA4\u5267"},{n:"\u6F6E\u5267",v:"\u6F6E\u5267"},{n:"\u6842\u5267",v:"\u6842\u5267"},{n:"\u5F69\u8C03",v:"\u5F69\u8C03"},{n:"\u58EE\u5267",v:"\u58EE\u5267"},{n:"\u5DDD\u5267",v:"\u5DDD\u5267"},{n:"\u9ED4\u5267",v:"\u9ED4\u5267"},{n:"\u6EC7\u5267",v:"\u6EC7\u5267"},{n:"\u50A3\u5267",v:"\u50A3\u5267"},{n:"\u85CF\u5267",v:"\u85CF\u5267"},{n:"\u76AE\u5F71\u620F",v:"\u76AE\u5F71\u620F"},{n:"\u620F\u66F2",v:"\u620F\u66F2"},{n:"4K\u620F\u66F2",v:"4K\u620F\u66F2"},{n:"4K\u4EAC\u5267",v:"4K\u4EAC\u5267"},{n:"4K\u8D8A\u5267",v:"4K\u8D8A\u5267"},{n:"4K\u9EC4\u6885\u620F",v:"4K\u9EC4\u6885\u620F"},{n:"4K\u8BC4\u5267",v:"4K\u8BC4\u5267"},{n:"4K\u8C6B\u5267",v:"4K\u8C6B\u5267"},{n:"4K\u6606\u66F2",v:"4K\u6606\u66F2"},{n:"4K\u9AD8\u8154",v:"4K\u9AD8\u8154"},{n:"4K\u6886\u5B50\u8154",v:"4K\u6886\u5B50\u8154"},{n:"4K\u6CB3\u5317\u6886\u5B50",v:"4K\u6CB3\u5317\u6886\u5B50"},{n:"4K\u664B\u5267",v:"4K\u664B\u5267"},{n:"4K\u84B2\u5267",v:"4K\u84B2\u5267"},{n:"4K\u96C1\u5267",v:"4K\u96C1\u5267"},{n:"4K\u4E0A\u515A\u6886\u5B50",v:"4K\u4E0A\u515A\u6886\u5B50"},{n:"4K\u79E6\u8154",v:"4K\u79E6\u8154"},{n:"4K\u6B66\u5B89\u5E73\u8C03",v:"4K\u6B66\u5B89\u5E73\u8C03"},{n:"4K\u4E8C\u4EBA\u53F0",v:"4K\u4E8C\u4EBA\u53F0"},{n:"4K\u5409\u5267",v:"4K\u5409\u5267"},{n:"4K\u9F99\u6C5F\u5267",v:"4K\u9F99\u6C5F\u5267"},{n:"4K\u8D8A\u8C03",v:"4K\u8D8A\u8C03"},{n:"4K\u6CB3\u5357\u66F2\u5267",v:"4K\u6CB3\u5357\u66F2\u5267"},{n:"4K\u5C71\u4E1C\u6886\u5B50",v:"4K\u5C71\u4E1C\u6886\u5B50"},{n:"4K\u6DEE\u5267",v:"4K\u6DEE\u5267"},{n:"4K\u6CAA\u5267",v:"4K\u6CAA\u5267"},{n:"4K\u6ED1\u7A3D\u620F",v:"4K\u6ED1\u7A3D\u620F"},{n:"4K\u5A7A\u5267",v:"4K\u5A7A\u5267"},{n:"4K\u7ECD\u5267",v:"4K\u7ECD\u5267"},{n:"4K\u5FBD\u5267",v:"4K\u5FBD\u5267"},{n:"4K\u95FD\u5267",v:"4K\u95FD\u5267"},{n:"4K\u8386\u4ED9\u620F",v:"4K\u8386\u4ED9\u620F"},{n:"4K\u68A8\u56ED\u620F",v:"4K\u68A8\u56ED\u620F"},{n:"4K\u9AD8\u7532\u620F",v:"4K\u9AD8\u7532\u620F"},{n:"4K\u8D63\u5267",v:"4K\u8D63\u5267"},{n:"4K\u91C7\u8336\u620F",v:"4K\u91C7\u8336\u620F"},{n:"4K\u6C49\u5267",v:"4K\u6C49\u5267"},{n:"4K\u6E58\u5267",v:"4K\u6E58\u5267"},{n:"4K\u7941\u5267",v:"4K\u7941\u5267"},{n:"4K\u6E56\u5357\u82B1\u9F13\u620F",v:"4K\u6E56\u5357\u82B1\u9F13\u620F"},{n:"4K\u7CA4\u5267",v:"4K\u7CA4\u5267"},{n:"4K\u6F6E\u5267",v:"4K\u6F6E\u5267"},{n:"4K\u6842\u5267",v:"4K\u6842\u5267"},{n:"4K\u5F69\u8C03",v:"4K\u5F69\u8C03"},{n:"4K\u58EE\u5267",v:"4K\u58EE\u5267"},{n:"4K\u5DDD\u5267",v:"4K\u5DDD\u5267"},{n:"4K\u9ED4\u5267",v:"4K\u9ED4\u5267"},{n:"4K\u6EC7\u5267",v:"4K\u6EC7\u5267"},{n:"4K\u50A3\u5267",v:"4K\u50A3\u5267"},{n:"4K\u85CF\u5267",v:"4K\u85CF\u5267"},{n:"4K\u76AE\u5F71\u620F",v:"4K\u76AE\u5F71\u620F"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u65C5\u6E38:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6E38\u6CF3:[{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6CF3\u59FF",v:"\u6CF3\u59FF"},{n:"\u8776\u6CF3",v:"\u8776\u6CF3"},{n:"\u4EF0\u6CF3",v:"\u4EF0\u6CF3"},{n:"\u86D9\u6CF3",v:"\u86D9\u6CF3"},{n:"\u81EA\u7531\u6CF3",v:"\u81EA\u7531\u6CF3"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u9009\u7F8E:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6A21\u7279:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6CF3\u88C5\u79C0:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5185\u8863\u79C0:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7F8E\u98DF:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD",v:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD"},{n:"\u820C\u5C16\u4E0A\u7684\u6E56\u5317",v:"\u820C\u5C16\u4E0A\u7684\u6E56\u5317"},{n:"\u5DDD\u83DC",v:"\u5DDD\u83DC"},{n:"\u6E58\u83DC",v:"\u6E58\u83DC"},{n:"\u82CF\u83DC",v:"\u82CF\u83DC"},{n:"\u7CA4\u83DC",v:"\u7CA4\u83DC"},{n:"\u95FD\u83DC",v:"\u95FD\u83DC"},{n:"\u5FBD\u83DC",v:"\u5FBD\u83DC"},{n:"\u9C81\u83DC",v:"\u9C81\u83DC"},{n:"\u6D59\u83DC",v:"\u6D59\u83DC"},{n:"\u706B\u9505",v:"\u706B\u9505"},{n:"\u5BB6\u5E38\u83DC",v:"\u5BB6\u5E38\u83DC"},{n:"\u4E0B\u9152\u83DC",v:"\u4E0B\u9152\u83DC"},{n:"\u84B8\u83DC",v:"\u84B8\u83DC"},{n:"\u5364\u83DC",v:"\u5364\u83DC"},{n:"\u51C9\u83DC",v:"\u51C9\u83DC"},{n:"\u70B9\u5FC3",v:"\u70B9\u5FC3"},{n:"\u65E5\u6599",v:"\u65E5\u6599"},{n:"\u5C0F\u5403",v:"\u5C0F\u5403"},{n:"\u65E9\u9910\u98DF\u8C31",v:"\u65E9\u9910\u98DF\u8C31"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u7F8E\u98DF",v:"4K\u7F8E\u98DF"},{n:"4K\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD",v:"4K\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD"},{n:"4K\u820C\u5C16\u4E0A\u7684\u6E56\u5317",v:"4K\u820C\u5C16\u4E0A\u7684\u6E56\u5317"},{n:"4K\u5DDD\u83DC",v:"4K\u5DDD\u83DC"},{n:"4K\u6E58\u83DC",v:"4K\u6E58\u83DC"},{n:"4K\u82CF\u83DC",v:"4K\u82CF\u83DC"},{n:"4K\u7CA4\u83DC",v:"4K\u7CA4\u83DC"},{n:"4K\u95FD\u83DC",v:"4K\u95FD\u83DC"},{n:"4K\u5FBD\u83DC",v:"4K\u5FBD\u83DC"},{n:"4K\u9C81\u83DC",v:"4K\u9C81\u83DC"},{n:"4K\u6D59\u83DC",v:"4K\u6D59\u83DC"},{n:"4K\u706B\u9505",v:"4K\u706B\u9505"},{n:"4K\u5BB6\u5E38\u83DC",v:"4K\u5BB6\u5E38\u83DC"},{n:"4K\u4E0B\u9152\u83DC",v:"4K\u4E0B\u9152\u83DC"},{n:"4K\u84B8\u83DC",v:"4K\u84B8\u83DC"},{n:"4K\u5364\u83DC",v:"4K\u5364\u83DC"},{n:"4K\u51C9\u83DC",v:"4K\u51C9\u83DC"},{n:"4K\u70B9\u5FC3",v:"4K\u70B9\u5FC3"},{n:"4K\u65E5\u6599",v:"4K\u65E5\u6599"},{n:"4K\u5C0F\u5403",v:"4K\u5C0F\u5403"},{n:"4K\u65E9\u9910\u98DF\u8C31",v:"4K\u65E9\u9910\u98DF\u8C31"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F4\u64AD\u5E73\u53F0:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u6296\u97F3",v:"\u6296\u97F3"},{n:"\u6296\u97F3\u7F8E\u5973",v:"\u6296\u97F3\u7F8E\u5973"},{n:"\u6296\u97F3\u5C0F\u59D0\u59D0",v:"\u6296\u97F3\u5C0F\u59D0\u59D0"},{n:"\u6296\u97F3\u821E\u8E48",v:"\u6296\u97F3\u821E\u8E48"},{n:"\u6296\u97F3\u97F3\u4E50",v:"\u6296\u97F3\u97F3\u4E50"},{n:"\u6296\u97F3MV",v:"\u6296\u97F3MV"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u6296\u97F3",v:"4K\u6296\u97F3"},{n:"4K\u6296\u97F3\u7F8E\u5973",v:"4K\u6296\u97F3\u7F8E\u5973"},{n:"4K\u6296\u97F3\u5C0F\u59D0\u59D0",v:"4K\u6296\u97F3\u5C0F\u59D0\u59D0"},{n:"4K\u6296\u97F3\u821E\u8E48",v:"4K\u6296\u97F3\u821E\u8E48"},{n:"4K\u6296\u97F3\u97F3\u4E50",v:"4K\u6296\u97F3\u97F3\u4E50"},{n:"4K\u6296\u97F3MV",v:"4K\u6296\u97F3MV"}]},{key:"tidc",name:"\u5206\u7C7B",value:[{n:"\u5FEB\u624B",v:"\u5FEB\u624B"},{n:"\u5FEB\u624B\u7F8E\u5973",v:"\u5FEB\u624B\u7F8E\u5973"},{n:"\u5FEB\u624B\u5C0F\u59D0\u59D0",v:"\u5FEB\u624B\u5C0F\u59D0\u59D0"},{n:"\u5FEB\u624B\u821E\u8E48",v:"\u5FEB\u624B\u821E\u8E48"},{n:"\u5FEB\u624B\u97F3\u4E50",v:"\u5FEB\u624B\u97F3\u4E50"},{n:"\u5FEB\u624BMV",v:"\u5FEB\u624BMV"}]},{key:"tidd",name:"\u5206\u7C7B",value:[{n:"4K\u5FEB\u624B",v:"4K\u5FEB\u624B"},{n:"4K\u5FEB\u624B\u7F8E\u5973",v:"4K\u5FEB\u624B\u7F8E\u5973"},{n:"4K\u5FEB\u624B\u5C0F\u59D0\u59D0",v:"4K\u5FEB\u624B\u5C0F\u59D0\u59D0"},{n:"4K\u5FEB\u624B\u821E\u8E48",v:"4K\u5FEB\u624B\u821E\u8E48"},{n:"4K\u5FEB\u624B\u97F3\u4E50",v:"4K\u5FEB\u624B\u97F3\u4E50"},{n:"4K\u5FEB\u624BMV",v:"4K\u5FEB\u624BMV"}]},{key:"tide",name:"\u5206\u7C7B",value:[{n:"\u6597\u9C7C\u76F4\u64AD",v:"\u6597\u9C7C\u76F4\u64AD"},{n:"\u6597\u9C7C\u7F8E\u5973",v:"\u6597\u9C7C\u7F8E\u5973"},{n:"\u6597\u9C7C\u5C0F\u59D0\u59D0",v:"\u6597\u9C7C\u5C0F\u59D0\u59D0"},{n:"\u6597\u9C7C\u821E\u8E48",v:"\u6597\u9C7C\u821E\u8E48"},{n:"\u6597\u9C7C\u97F3\u4E50",v:"\u6597\u9C7C\u97F3\u4E50"},{n:"\u6597\u9C7CMV",v:"\u6597\u9C7CMV"}]},{key:"tidf",name:"\u5206\u7C7B",value:[{n:"4K\u6597\u9C7C\u76F4\u64AD",v:"4K\u6597\u9C7C\u76F4\u64AD"},{n:"4K\u6597\u9C7C\u7F8E\u5973",v:"4K\u6597\u9C7C\u7F8E\u5973"},{n:"4K\u6597\u9C7C\u5C0F\u59D0\u59D0",v:"4K\u6597\u9C7C\u5C0F\u59D0\u59D0"},{n:"4K\u6597\u9C7C\u821E\u8E48",v:"4K\u6597\u9C7C\u821E\u8E48"},{n:"4K\u6597\u9C7C\u97F3\u4E50",v:"4K\u6597\u9C7C\u97F3\u4E50"},{n:"4K\u6597\u9C7CMV",v:"4K\u6597\u9C7CMV"}]},{key:"tidg",name:"\u5206\u7C7B",value:[{n:"\u817E\u8BAF\u76F4\u64AD",v:"\u817E\u8BAF\u76F4\u64AD"},{n:"\u817E\u8BAF\u6F14\u5531\u4F1A",v:"\u817E\u8BAF\u6F14\u5531\u4F1A"},{n:"\u817E\u8BAF\u97F3\u4E50\u4F1A",v:"\u817E\u8BAF\u97F3\u4E50\u4F1A"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"4K\u817E\u8BAF\u76F4\u64AD",v:"4K\u817E\u8BAF\u76F4\u64AD"},{n:"4K\u817E\u8BAF\u6F14\u5531\u4F1A",v:"4K\u817E\u8BAF\u6F14\u5531\u4F1A"},{n:"4K\u817E\u8BAF\u97F3\u4E50\u4F1A",v:"4K\u817E\u8BAF\u97F3\u4E50\u4F1A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u641E\u7B11:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K\u97F3\u4E50":[{key:"tidy",name:"\u5206\u7C7B",value:[{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"4K\u539F\u521B\u97F3\u4E50",v:"4K\u539F\u521B\u97F3\u4E50"},{n:"4K\u7FFB\u5531",v:"4K\u7FFB\u5531"},{n:"4K\u6F14\u594F",v:"4K\u6F14\u594F"},{n:"4K VOCALOID\xB7UTAU",v:"4K VOCALOID\xB7UTAU"},{n:"4K\u97F3\u4E50\u73B0\u573A",v:"4K\u97F3\u4E50\u73B0\u573A"},{n:"4K\u539F\u58F0\u97F3\u4E50",v:"4K\u539F\u58F0\u97F3\u4E50"},{n:"4K\u4E50\u8BC4\u76D8\u70B9",v:"4K\u4E50\u8BC4\u76D8\u70B9"},{n:"4K\u97F3\u4E50\u6559\u5B66",v:"4K\u97F3\u4E50\u6559\u5B66"},{n:"4K\u97F3\u4E50\u7EFC\u5408",v:"4K\u97F3\u4E50\u7EFC\u5408"}]},{key:"tidc",name:"4K\u539F\u521B\u97F3\u4E50",value:[{n:"4K\u8BF4\u5531",v:"4K\u8BF4\u5531"},{n:"4K HIPHOP",v:"4K HIPHOP"},{n:"4K\u4E2D\u56FD\u98CE",v:"4K\u4E2D\u56FD\u98CE"},{n:"4K\u53E4\u98CE",v:"4K\u53E4\u98CE"},{n:"4K\u7535\u97F3",v:"4K\u7535\u97F3"},{n:"4K\u6447\u6EDA",v:"4K\u6447\u6EDA"},{n:"4K\u6C11\u8C23",v:"4K\u6C11\u8C23"},{n:"4K\u7235\u58EB",v:"4K\u7235\u58EB"},{n:"4K\u7EAF\u97F3\u4E50",v:"4K\u7EAF\u97F3\u4E50"},{n:"4K BEAT",v:"4K BEAT"},{n:"4K REMIX",v:"4K REMIX"},{n:"4K\u4EBA\u58F0\u672C\u5BB6",v:"4K\u4EBA\u58F0\u672C\u5BB6"},{n:"4K\u56FD\u4EBA\u539F\u521B",v:"4K\u56FD\u4EBA\u539F\u521B"},{n:"4K\u539F\u521B\u6B4C\u66F2",v:"4K\u539F\u521B\u6B4C\u66F2"},{n:"4K\u7F16\u66F2",v:"4K\u7F16\u66F2"},{n:"4K\u6539\u7F16",v:"4K\u6539\u7F16"},{n:"4K\u5409\u4ED6",v:"4K\u5409\u4ED6"},{n:"4K\u7535\u5B50\u97F3\u4E50",v:"4K\u7535\u5B50\u97F3\u4E50"},{n:"4K\u94A2\u7434",v:"4K\u94A2\u7434"}]},{key:"tidf",name:"4k\u7FFB\u5531",value:[{n:"4K\u56FD\u4EBA\u7537\u58F0",v:"4K\u56FD\u4EBA\u7537\u58F0"},{n:"4K\u56FD\u4EBA\u5973\u751F",v:"4K\u56FD\u4EBA\u5973\u751F"},{n:"4K\u4E2D\u6587\u7FFB\u5531",v:"4K\u4E2D\u6587\u7FFB\u5531"},{n:"4K\u82F1\u6587\u7FFB\u5531",v:"4K\u82F1\u6587\u7FFB\u5531"},{n:"4K\u53E4\u98CE",v:"4K\u53E4\u98CE"},{n:"4K VOCALOID",v:"4K VOCALOID"},{n:"4K\u71C3\u5411",v:"4K\u71C3\u5411"},{n:"4K\u4E2D\u6587\u586B\u8BCD",v:"4K\u4E2D\u6587\u586B\u8BCD"},{n:"4K\u7075\u9B42\u6B4C\u624B",v:"4K\u7075\u9B42\u6B4C\u624B"},{n:"4K\u6CBB\u6108\u5411",v:"4K\u6CBB\u6108\u5411"},{n:"4K COVER",v:"4K COVER"},{n:"4K\u521D\u6295\u7A3F",v:"4K\u521D\u6295\u7A3F"},{n:"4K\u5409\u4ED6\u5F39\u5531",v:"4K\u5409\u4ED6\u5F39\u5531"},{n:"4K\u539F\u521BPV",v:"4K\u539F\u521BPV"},{n:"4K\u9B54\u9053\u7956\u5E08",v:"4K\u9B54\u9053\u7956\u5E08"},{n:"4K\u6B27\u7F8E",v:"4K\u6B27\u7F8E"},{n:"4K\u65B0\u4EBA\u5411",v:"4K\u65B0\u4EBA\u5411"},{n:"4K\u798F\u5229\u8033\u673A",v:"4K\u798F\u5229\u8033\u673A"}]},{key:"tidz",name:"4K\u6F14\u594F",value:[{n:"4K\u521B\u610F\u6F14\u594F",v:"4K\u521B\u610F\u6F14\u594F"},{n:"4K\u94A2\u7434",v:"4K\u94A2\u7434"},{n:"4K\u8857\u5934\u8868\u6F14",v:"4K\u8857\u5934\u8868\u6F14"},{n:"4K\u7FFB\u5F39",v:"4K\u7FFB\u5F39"},{n:"4K\u4E50\u961F",v:"4K\u4E50\u961F"},{n:"4K\u6C11\u4E50",v:"4K\u6C11\u4E50"},{n:"4K\u5408\u594F",v:"4K\u5408\u594F"},{n:"4K\u5409\u4ED6",v:"4K\u5409\u4ED6"},{n:"4K\u6307\u5F39",v:"4K\u6307\u5F39"},{n:"4K\u5C0F\u63D0\u7434",v:"4K\u5C0F\u63D0\u7434"},{n:"4K\u67B6\u5B50\u9F13",v:"4K\u67B6\u5B50\u9F13"},{n:"4K COVER",v:"4K COVER"},{n:"4K\u6728\u5409\u4ED6",v:"4K\u6728\u5409\u4ED6"},{n:"4K\u94A2\u7434\u66F2",v:"4K\u94A2\u7434\u66F2"},{n:"4K BGM",v:"4K BGM"},{n:"4K\u5361\u7956\u7B1B",v:"4K\u5361\u7956\u7B1B"},{n:"4K\u7535\u5409\u4ED6",v:"4K\u7535\u5409\u4ED6"},{n:"4K LAUNCHPAD",v:"4K LAUNCHPAD"},{n:"4K\u8D1D\u65AF",v:"4K\u8D1D\u65AF"},{n:"4K\u53E3\u7434",v:"4K\u53E3\u7434"},{n:"4K\u6307\u5F39\u5409\u4ED6",v:"4K\u6307\u5F39\u5409\u4ED6"},{n:"4K\u7435\u7436",v:"4K\u7435\u7436"},{n:"4K\u626C\u7434",v:"4K\u626C\u7434"},{n:"4K\u53E4\u5178\u97F3\u4E50",v:"4K\u53E4\u5178\u97F3\u4E50"},{n:"4K\u53E4\u7B5D",v:"4K\u53E4\u7B5D"},{n:"4K\u4E8C\u80E1",v:"4K\u4E8C\u80E1"},{n:"4K BEATBOX",v:"4K BEATBOX"},{n:"4K\u53E4\u5178",v:"4K\u53E4\u5178"}]},{key:"tidv",name:"4k VOCALOID\xB7UTAU",value:[{n:"4K\u6D1B\u5929\u4F9D",v:"4K\u6D1B\u5929\u4F9D"},{n:"4K\u4E50\u6B63\u7EEB",v:"4K\u4E50\u6B63\u7EEB"},{n:"4K\u8A00\u548C",v:"4K\u8A00\u548C"},{n:"4K\u4E50\u6B63\u9F99\u7259",v:"4K\u4E50\u6B63\u9F99\u7259"},{n:"4K\u58A8\u6E05\u5F26",v:"4K\u58A8\u6E05\u5F26"},{n:"4K\u5FBD\u7FBD\u6469\u67EF",v:"4K\u5FBD\u7FBD\u6469\u67EF"},{n:"4K Vsinger",v:"4K Vsinger"},{n:"4K\u5FC3\u534E",v:"4K\u5FC3\u534E"},{n:"4K\u661F\u5C18",v:"4K\u661F\u5C18"},{n:"4K\u5AE3\u6C50",v:"4K\u5AE3\u6C50"},{n:"4K\u521D\u97F3\u672A\u6765",v:"4K\u521D\u97F3\u672A\u6765"},{n:"4K\u955C\u97F3\u94C3",v:"4K\u955C\u97F3\u94C3"},{n:"4K\u5DE1\u97F3\u6D41\u6B4C",v:"4K\u5DE1\u97F3\u6D41\u6B4C"},{n:"4K KAITO",v:"4K KAITO"},{n:"4K flower",v:"4K flower"},{n:"4K\u5143\u7B71",v:"4K\u5143\u7B71"},{n:"4K VOCALOID\u4E2D\u6587\u66F2",v:"4K VOCALOID\u4E2D\u6587\u66F2"},{n:"4K\u83B2\u534E",v:"4K\u83B2\u534E"},{n:"4K\u5357\u5317\u7EC4",v:"4K\u5357\u5317\u7EC4"},{n:"4K\u955C\u97F3\u53CC\u5B50",v:"4K\u955C\u97F3\u53CC\u5B50"},{n:"4K MUTA\u4E2D\u6587\u66F2",v:"4K MUTA\u4E2D\u6587\u66F2"},{n:"4K UTAU\u4E2D\u534E\u7EC4",v:"4K UTAU\u4E2D\u534E\u7EC4"},{n:"4K XStudio",v:"4K XStudio"},{n:"4K\u521D\u97F3",v:"4K\u521D\u97F3"},{n:"4K IA",v:"4K IA"},{n:"4K GUMI",v:"4K GUMI"},{n:"4K SynthV",v:"4K SynthV"},{n:"4K UTAU",v:"4K UTAU"},{n:"4K\u5E7B\u6653\u4F0A",v:"4K\u5E7B\u6653\u4F0A"},{n:"4K\u4E94\u7EF4\u4ECB\u8D28",v:"4K\u4E94\u7EF4\u4ECB\u8D28"},{n:"4K\u53EF\u4E0D",v:"4K\u53EF\u4E0D"},{n:"4K ACE\u865A\u62DF\u6B4C\u59EC",v:"4K ACE\u865A\u62DF\u6B4C\u59EC"},{n:"4K deepvocal",v:"4K deepvocal"},{n:"4K SYNTHV",v:"4K SYNTHV"}]},{key:"tidx",name:"4K\u97F3\u4E50\u73B0\u573A",value:[{n:"4K\u534E\u8BED\u73B0\u573A",v:"4K\u534E\u8BED\u73B0\u573A"},{n:"4K\u6B27\u7F8E\u73B0\u573A",v:"4K\u6B27\u7F8E\u73B0\u573A"},{n:"4K\u65E5\u8BED\u73B0\u573A",v:"4K\u65E5\u8BED\u73B0\u573A"},{n:"4K\u97E9\u8BED\u73B0\u573A",v:"4K\u97E9\u8BED\u73B0\u573A"},{n:"4K\u56FD\u8BED\u73B0\u573A",v:"4K\u56FD\u8BED\u73B0\u573A"},{n:"4K\u7CA4\u8BED\u73B0\u573A",v:"4K\u7CA4\u8BED\u73B0\u573A"},{n:"4K live",v:"4K live"},{n:"4K\u97F3\u4E50\u5267",v:"4K\u97F3\u4E50\u5267"},{n:"4K\u6F14\u5531\u4F1A",v:"4K\u6F14\u5531\u4F1A"},{n:"4K\u97F3\u4E50\u8282",v:"4K\u97F3\u4E50\u8282"}]},{key:"tidh",name:"4K\u97F3\u4E50\u7EFC\u5408",value:[{n:"4K\u7ECF\u5178\u8001\u6B4C",v:"4K\u7ECF\u5178\u8001\u6B4C"},{n:"4K\u7CBE\u9009\u6B4C\u5355",v:"4K\u7CBE\u9009\u6B4C\u5355"},{n:"4K\u5F71\u89C6\u97F3\u4E50",v:"4K\u5F71\u89C6\u97F3\u4E50"},{n:"4K\u6E38\u620F\u97F3\u4E50",v:"4K\u6E38\u620F\u97F3\u4E50"},{n:"4K\u4E2D\u56FD\u620F\u66F2",v:"4K\u4E2D\u56FD\u620F\u66F2"},{n:"4K\u9ED1\u80F6\u5531\u7247",v:"4K\u9ED1\u80F6\u5531\u7247"},{n:"4K ACG\u97F3\u4E50",v:"4K ACG\u97F3\u4E50"},{n:"4K\u97F3\u4E50\u5267",v:"4K\u97F3\u4E50\u5267"},{n:"4K\u4EA4\u54CD\u4E50",v:"4K\u4EA4\u54CD\u4E50"},{n:"4K\u5FAA\u73AF\u97F3\u4E50",v:"4K\u5FAA\u73AF\u97F3\u4E50"},{n:"4K OST\u97F3\u4E50",v:"4K OST\u97F3\u4E50"},{n:"4K BGM\u97F3\u4E50",v:"4K BGM\u97F3\u4E50"},{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"4K DJ\u97F3\u4E50",v:"4K DJ\u97F3\u4E50"},{n:"4K\u7535\u97F3",v:"4K\u7535\u97F3"},{n:"4K\u821E\u66F2",v:"4K\u821E\u66F2"},{n:"4K\u591C\u5E97\u821E\u66F2",v:"4K\u591C\u5E97\u821E\u66F2"},{n:"4K\u56FD\u5916\u821E\u66F2",v:"4K\u56FD\u5916\u821E\u66F2"},{n:"4K\u4E9A\u6D32\u821E\u66F2",v:"4K\u4E9A\u6D32\u821E\u66F2"},{n:"4K\u6B27\u7F8E\u821E\u66F2",v:"4K\u6B27\u7F8E\u821E\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],MV:[{key:"tidm",name:"\u5206\u7C7B",value:[{n:"MV",v:"MV"},{n:"MV\u5408\u96C6",v:"MV\u5408\u96C6"},{n:"\u5168\u7F51\u7B2C\u4E00",v:"\u5168\u7F51\u7B2C\u4E00"},{n:"4K60FPS",v:"4K60FPS"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"\u97E9\u56FD\u5973\u661F MV\u5408\u96C6",v:"\u97E9\u56FD\u5973\u661F MV\u5408\u96C6"},{n:"\u674E\u5B5D\u5229 MV\u5408\u96C6",v:"\u674E\u5B5D\u5229 MV\u5408\u96C6"},{n:"\u674E\u77E5\u6069 MV\u5408\u96C6",v:"\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"\u6797\u5141\u513F MV\u5408\u96C6",v:"\u6797\u5141\u513F MV\u5408\u96C6"},{n:"\u91D1\u6CEB\u96C5 MV\u5408\u96C6",v:"\u91D1\u6CEB\u96C5 MV\u5408\u96C6"},{n:"\u91D1\u6CF0\u598D MV\u5408\u96C6",v:"\u91D1\u6CF0\u598D MV\u5408\u96C6"},{n:"\u674E\u5BA3\u7F8E MV\u5408\u96C6",v:"\u674E\u5BA3\u7F8E MV\u5408\u96C6"},{n:"\u5D14\u96EA\u8389 MV\u5408\u96C6",v:"\u5D14\u96EA\u8389 MV\u5408\u96C6"},{n:"\u5B89\u559C\u5EF6 MV\u5408\u96C6",v:"\u5B89\u559C\u5EF6 MV\u5408\u96C6"},{n:"\u91D1\u4E9A\u8363 MV\u5408\u96C6",v:"\u91D1\u4E9A\u8363 MV\u5408\u96C6"},{n:"\u674E\u77E5\u6069 MV\u5408\u96C6",v:"\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"\u674E\u8D1E\u8D24 MV\u5408\u96C6",v:"\u674E\u8D1E\u8D24 MV\u5408\u96C6"},{n:"\u6D2A\u771F\u82F1 MV\u5408\u96C6",v:"\u6D2A\u771F\u82F1 MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"\u65E5\u672C\u5973\u661F MV\u5408\u96C6",v:"\u65E5\u672C\u5973\u661F MV\u5408\u96C6"},{n:"YUI MV\u5408\u96C6",v:"YUI MV\u5408\u96C6"},{n:"\u5E78\u7530\u6765\u672A MV\u5408\u96C6",v:"\u5E78\u7530\u6765\u672A MV\u5408\u96C6"},{n:"\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6",v:"\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6"},{n:"\u6EE8\u5D0E\u6B65 MV\u5408\u96C6",v:"\u6EE8\u5D0E\u6B65 MV\u5408\u96C6"},{n:"\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6",v:"\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6"},{n:"\u5B87\u591A\u7530\u5149 MV\u5408\u96C6",v:"\u5B87\u591A\u7530\u5149 MV\u5408\u96C6"},{n:"\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6",v:"\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6"},{n:"\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6",v:"\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6"},{n:"\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6",v:"\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6"},{n:"Angela MV\u5408\u96C6",v:"Angela MV\u5408\u96C6"},{n:"\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6",v:"\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"\u5973\u661F MV\u5408\u96C6",v:"\u5973\u661F MV\u5408\u96C6"},{n:"\u6234\u4F69\u59AE MV\u5408\u96C6",v:"\u6234\u4F69\u59AE MV\u5408\u96C6"},{n:"\u9093\u7D2B\u68CB MV\u5408\u96C6",v:"\u9093\u7D2B\u68CB MV\u5408\u96C6"},{n:"\u5F20\u97F6\u6DB5 MV\u5408\u96C6",v:"\u5F20\u97F6\u6DB5 MV\u5408\u96C6"},{n:"\u8521\u5065\u96C5 MV\u5408\u96C6",v:"\u8521\u5065\u96C5 MV\u5408\u96C6"},{n:"\u83AB\u6587\u851A MV\u5408\u96C6",v:"\u83AB\u6587\u851A MV\u5408\u96C6"},{n:"\u5218\u82E5\u82F1 MV\u5408\u96C6",v:"\u5218\u82E5\u82F1 MV\u5408\u96C6"},{n:"\u9093\u4E3D\u541B MV\u5408\u96C6",v:"\u9093\u4E3D\u541B MV\u5408\u96C6"},{n:"\u8521\u4F9D\u6797 MV\u5408\u96C6",v:"\u8521\u4F9D\u6797 MV\u5408\u96C6"},{n:"\u674E\u5B87\u6625 MV\u5408\u96C6",v:"\u674E\u5B87\u6625 MV\u5408\u96C6"},{n:"\u5F90\u4F73\u83B9 MV\u5408\u96C6",v:"\u5F90\u4F73\u83B9 MV\u5408\u96C6"},{n:"\u6768\u5343\u5B05 MV\u5408\u96C6",v:"\u6768\u5343\u5B05 MV\u5408\u96C6"},{n:"\u5F20\u9753\u9896 MV\u5408\u96C6",v:"\u5F20\u9753\u9896 MV\u5408\u96C6"},{n:"\u6768\u4E1E\u7433 MV\u5408\u96C6",v:"\u6768\u4E1E\u7433 MV\u5408\u96C6"},{n:"\u8427\u4E9A\u8F69 MV\u5408\u96C6",v:"\u8427\u4E9A\u8F69 MV\u5408\u96C6"},{n:"\u5BB9\u7956\u513F MV\u5408\u96C6",v:"\u5BB9\u7956\u513F MV\u5408\u96C6"},{n:"\u6885\u8273\u82B3 MV\u5408\u96C6",v:"\u6885\u8273\u82B3 MV\u5408\u96C6"},{n:"\u5B59\u71D5\u59FF MV\u5408\u96C6",v:"\u5B59\u71D5\u59FF MV\u5408\u96C6"},{n:"\u8881\u5A05\u7EF4 MV\u5408\u96C6",v:"\u8881\u5A05\u7EF4 MV\u5408\u96C6"},{n:"\u738B\u83F2 MV\u5408\u96C6",v:"\u738B\u83F2 MV\u5408\u96C6"},{n:"\u6881\u9759\u8339 MV\u5408\u96C6",v:"\u6881\u9759\u8339 MV\u5408\u96C6"},{n:"\u5468\u6167\u654F MV\u5408\u96C6",v:"\u5468\u6167\u654F MV\u5408\u96C6"},{n:"\u5F20\u60E0\u59B9 MV\u5408\u96C6",v:"\u5F20\u60E0\u59B9 MV\u5408\u96C6"},{n:"\u5468\u7B14\u7545 MV\u5408\u96C6",v:"\u5468\u7B14\u7545 MV\u5408\u96C6"},{n:"\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6",v:"\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6"},{n:"\u9648\u6167\u5A34 MV\u5408\u96C6",v:"\u9648\u6167\u5A34 MV\u5408\u96C6"},{n:"\u90ED\u9759 MV\u5408\u96C6",v:"\u90ED\u9759 MV\u5408\u96C6"},{n:"\u90A3\u82F1 MV\u5408\u96C6",v:"\u90A3\u82F1 MV\u5408\u96C6"},{n:"\u97E9\u7EA2 MV\u5408\u96C6",v:"\u97E9\u7EA2 MV\u5408\u96C6"},{n:"\u6797\u5FC6\u83B2 MV\u5408\u96C6",v:"\u6797\u5FC6\u83B2 MV\u5408\u96C6"},{n:"\u674E\u739F MV\u5408\u96C6",v:"\u674E\u739F MV\u5408\u96C6"},{n:"\u5F90\u5C0F\u51E4 MV\u5408\u96C6",v:"\u5F90\u5C0F\u51E4 MV\u5408\u96C6"},{n:"\u5353\u4F9D\u5A77 MV\u5408\u96C6",v:"\u5353\u4F9D\u5A77 MV\u5408\u96C6"},{n:"\u90C1\u53EF\u552F MV\u5408\u96C6",v:"\u90C1\u53EF\u552F MV\u5408\u96C6"},{n:"\u7530\u9707 MV\u5408\u96C6",v:"\u7530\u9707 MV\u5408\u96C6"},{n:"\u51E4\u98DE\u98DE MV\u5408\u96C6",v:"\u51E4\u98DE\u98DE MV\u5408\u96C6"},{n:"\u8C2D\u6676 MV\u5408\u96C6",v:"\u8C2D\u6676 MV\u5408\u96C6"},{n:"\u53F6\u5029\u6587 MV\u5408\u96C6",v:"\u53F6\u5029\u6587 MV\u5408\u96C6"},{n:"\u738B\u5FC3\u51CC MV\u5408\u96C6",v:"\u738B\u5FC3\u51CC MV\u5408\u96C6"},{n:"\u90ED\u91C7\u6D01 MV\u5408\u96C6",v:"\u90ED\u91C7\u6D01 MV\u5408\u96C6"},{n:"\u963F\u9EDB\u5C14 MV\u5408\u96C6",v:"\u963F\u9EDB\u5C14 MV\u5408\u96C6"},{n:"LadyGaga MV\u5408\u96C6",v:"LadyGaga MV\u5408\u96C6"},{n:"\u5E03\u5170\u59AE MV\u5408\u96C6",v:"\u5E03\u5170\u59AE MV\u5408\u96C6"},{n:"\u6D1B\u5929\u4F9D MV\u5408\u96C6",v:"\u6D1B\u5929\u4F9D MV\u5408\u96C6"},{n:"\u521D\u97F3\u672A\u6765 MV\u5408\u96C6",v:"\u521D\u97F3\u672A\u6765 MV\u5408\u96C6"}]},{key:"tidx",name:"\u5206\u7C7B",value:[{n:"\u7537\u661F MV\u5408\u96C6",v:"\u7537\u661F MV\u5408\u96C6"},{n:"\u5468\u6770\u4F26 MV\u5408\u96C6",v:"\u5468\u6770\u4F26 MV\u5408\u96C6"},{n:"\u9648\u5955\u8FC5 MV\u5408\u96C6",v:"\u9648\u5955\u8FC5 MV\u5408\u96C6"},{n:"\u5218\u5FB7\u534E MV\u5408\u96C6",v:"\u5218\u5FB7\u534E MV\u5408\u96C6"},{n:"\u90ED\u5BCC\u57CE MV\u5408\u96C6",v:"\u90ED\u5BCC\u57CE MV\u5408\u96C6"},{n:"\u5F20\u5B66\u53CB MV\u5408\u96C6",v:"\u5F20\u5B66\u53CB MV\u5408\u96C6"},{n:"\u9ECE\u660E MV\u5408\u96C6",v:"\u9ECE\u660E MV\u5408\u96C6"},{n:"\u674E\u5B97\u76DB MV\u5408\u96C6",v:"\u674E\u5B97\u76DB MV\u5408\u96C6"},{n:"\u6734\u6811 MV\u5408\u96C6",v:"\u6734\u6811 MV\u5408\u96C6"},{n:"\u6797\u5B50\u7965 MV\u5408\u96C6",v:"\u6797\u5B50\u7965 MV\u5408\u96C6"},{n:"\u4EFB\u8D24\u9F50 MV\u5408\u96C6",v:"\u4EFB\u8D24\u9F50 MV\u5408\u96C6"},{n:"\u5F20\u4FE1\u54F2 MV\u5408\u96C6",v:"\u5F20\u4FE1\u54F2 MV\u5408\u96C6"},{n:"\u5B59\u6960 MV\u5408\u96C6",v:"\u5B59\u6960 MV\u5408\u96C6"},{n:"\u5F20\u5B87 MV\u5408\u96C6",v:"\u5F20\u5B87 MV\u5408\u96C6"},{n:"\u5468\u534E\u5065 MV\u5408\u96C6",v:"\u5468\u534E\u5065 MV\u5408\u96C6"},{n:"\u859B\u4E4B\u8C26 MV\u5408\u96C6",v:"\u859B\u4E4B\u8C26 MV\u5408\u96C6"},{n:"\u8BB8\u5D69 MV\u5408\u96C6",v:"\u8BB8\u5D69 MV\u5408\u96C6"},{n:"\u5468\u6DF1 MV\u5408\u96C6",v:"\u5468\u6DF1 MV\u5408\u96C6"},{n:"\u6BDB\u4E0D\u6613 MV\u5408\u96C6",v:"\u6BDB\u4E0D\u6613 MV\u5408\u96C6"},{n:"\u6C6A\u82CF\u6CF7 MV\u5408\u96C6",v:"\u6C6A\u82CF\u6CF7 MV\u5408\u96C6"},{n:"\u6768\u5B97\u7EAC MV\u5408\u96C6",v:"\u6768\u5B97\u7EAC MV\u5408\u96C6"},{n:"\u80E1\u5F66\u658C MV\u5408\u96C6",v:"\u80E1\u5F66\u658C MV\u5408\u96C6"},{n:"\u674E\u8363\u6D69 MV\u5408\u96C6",v:"\u674E\u8363\u6D69 MV\u5408\u96C6"},{n:"\u6797\u5FD7\u70AB MV\u5408\u96C6",v:"\u6797\u5FD7\u70AB MV\u5408\u96C6"},{n:"\u9676\u5586 MV\u5408\u96C6",v:"\u9676\u5586 MV\u5408\u96C6"},{n:"\u80E1\u590F MV\u5408\u96C6",v:"\u80E1\u590F MV\u5408\u96C6"},{n:"\u674E\u7389\u521A MV\u5408\u96C6",v:"\u674E\u7389\u521A MV\u5408\u96C6"},{n:"\u5F26\u5B50 MV\u5408\u96C6",v:"\u5F26\u5B50 MV\u5408\u96C6"},{n:"\u9648\u5C0F\u6625 MV\u5408\u96C6",v:"\u9648\u5C0F\u6625 MV\u5408\u96C6"},{n:"\u9E7F\u6657 MV\u5408\u96C6",v:"\u9E7F\u6657 MV\u5408\u96C6"},{n:"\u8BB8\u5DCD MV\u5408\u96C6",v:"\u8BB8\u5DCD MV\u5408\u96C6"},{n:"\u6797\u4FCA\u6770 MV\u5408\u96C6",v:"\u6797\u4FCA\u6770 MV\u5408\u96C6"},{n:"\u8D75\u96F7 MV\u5408\u96C6",v:"\u8D75\u96F7 MV\u5408\u96C6"},{n:"\u8C2D\u548F\u9E9F MV\u5408\u96C6",v:"\u8C2D\u548F\u9E9F MV\u5408\u96C6"},{n:"\u5468\u4F20\u96C4 MV\u5408\u96C6",v:"\u5468\u4F20\u96C4 MV\u5408\u96C6"},{n:"\u5F20\u56FD\u8363 MV\u5408\u96C6",v:"\u5F20\u56FD\u8363 MV\u5408\u96C6"},{n:"\u674E\u5065 MV\u5408\u96C6",v:"\u674E\u5065 MV\u5408\u96C6"},{n:"\u534E\u6668\u5B87 MV\u5408\u96C6",v:"\u534E\u6668\u5B87 MV\u5408\u96C6"},{n:"\u5927\u5F20\u4F1F MV\u5408\u96C6",v:"\u5927\u5F20\u4F1F MV\u5408\u96C6"},{n:"\u738B\u4FCA\u51EF MV\u5408\u96C6",v:"\u738B\u4FCA\u51EF MV\u5408\u96C6"},{n:"\u6613\u70CA\u5343\u73BA MV\u5408\u96C6",v:"\u6613\u70CA\u5343\u73BA MV\u5408\u96C6"},{n:"\u738B\u6E90 MV\u5408\u96C6",v:"\u738B\u6E90 MV\u5408\u96C6"},{n:"\u7530\u99A5\u7504 MV\u5408\u96C6",v:"\u7530\u99A5\u7504 MV\u5408\u96C6"},{n:"\u5C0F\u864E\u961F MV\u5408\u96C6",v:"\u5C0F\u864E\u961F MV\u5408\u96C6"},{n:"\u5F20\u6770 MV\u5408\u96C6",v:"\u5F20\u6770 MV\u5408\u96C6"},{n:"\u4F0D\u4F70 MV\u5408\u96C6",v:"\u4F0D\u4F70 MV\u5408\u96C6"},{n:"\u5200\u90CE MV\u5408\u96C6",v:"\u5200\u90CE MV\u5408\u96C6"},{n:"\u6F58\u73AE\u67CF MV\u5408\u96C6",v:"\u6F58\u73AE\u67CF MV\u5408\u96C6"},{n:"\u6797\u5BA5\u5609 MV\u5408\u96C6",v:"\u6797\u5BA5\u5609 MV\u5408\u96C6"},{n:"\u8521\u5F90\u5764 MV\u5408\u96C6",v:"\u8521\u5F90\u5764 MV\u5408\u96C6"},{n:"\u674E\u5723\u6770 MV\u5408\u96C6",v:"\u674E\u5723\u6770 MV\u5408\u96C6"},{n:"\u8427\u656C\u817E MV\u5408\u96C6",v:"\u8427\u656C\u817E MV\u5408\u96C6"},{n:"\u7126\u8FC8\u5947 MV\u5408\u96C6",v:"\u7126\u8FC8\u5947 MV\u5408\u96C6"},{n:"\u5C24\u957F\u9756 MV\u5408\u96C6",v:"\u5C24\u957F\u9756 MV\u5408\u96C6"},{n:"\u90D1\u4E2D\u57FA MV\u5408\u96C6",v:"\u90D1\u4E2D\u57FA MV\u5408\u96C6"},{n:"\u5F20\u827A\u5174 MV\u5408\u96C6",v:"\u5F20\u827A\u5174 MV\u5408\u96C6"},{n:"\u738B\u5609\u5C14 MV\u5408\u96C6",v:"\u738B\u5609\u5C14 MV\u5408\u96C6"},{n:"\u5218\u5BAA\u534E MV\u5408\u96C6",v:"\u5218\u5BAA\u534E MV\u5408\u96C6"},{n:"\u5F20\u656C\u8F69 MV\u5408\u96C6",v:"\u5F20\u656C\u8F69 MV\u5408\u96C6"},{n:"\u674E\u514B\u52E4 MV\u5408\u96C6",v:"\u674E\u514B\u52E4 MV\u5408\u96C6"},{n:"\u963F\u675C MV\u5408\u96C6",v:"\u963F\u675C MV\u5408\u96C6"},{n:"\u5D14\u5065 MV\u5408\u96C6",v:"\u5D14\u5065 MV\u5408\u96C6"},{n:"\u5EBE\u6F84\u5E86 MV\u5408\u96C6",v:"\u5EBE\u6F84\u5E86 MV\u5408\u96C6"},{n:"\u6C6A\u5CF0 MV\u5408\u96C6",v:"\u6C6A\u5CF0 MV\u5408\u96C6"},{n:"\u6768\u5764 MV\u5408\u96C6",v:"\u6768\u5764 MV\u5408\u96C6"},{n:"\u5F20\u9707\u5CB3 MV\u5408\u96C6",v:"\u5F20\u9707\u5CB3 MV\u5408\u96C6"},{n:"\u9F50\u79E6 MV\u5408\u96C6",v:"\u9F50\u79E6 MV\u5408\u96C6"},{n:"\u5F20\u96E8\u751F MV\u5408\u96C6",v:"\u5F20\u96E8\u751F MV\u5408\u96C6"},{n:"\u9EC4\u54C1\u6E90 MV\u5408\u96C6",v:"\u9EC4\u54C1\u6E90 MV\u5408\u96C6"},{n:"\u4E01\u5F53 MV\u5408\u96C6",v:"\u4E01\u5F53 MV\u5408\u96C6"},{n:"\u90D1\u667A\u5316 MV\u5408\u96C6",v:"\u90D1\u667A\u5316 MV\u5408\u96C6"},{n:"\u8C22\u9706\u950B MV\u5408\u96C6",v:"\u8C22\u9706\u950B MV\u5408\u96C6"},{n:"\u9EC4\u5C0F\u7425 MV\u5408\u96C6",v:"\u9EC4\u5C0F\u7425 MV\u5408\u96C6"},{n:"\u4EFB\u5609\u4F26 MV\u5408\u96C6",v:"\u4EFB\u5609\u4F26 MV\u5408\u96C6"},{n:"\u5B8B\u4E9A\u68EE MV\u5408\u96C6",v:"\u5B8B\u4E9A\u68EE MV\u5408\u96C6"},{n:"\u8D39\u7389\u6E05 MV\u5408\u96C6",v:"\u8D39\u7389\u6E05 MV\u5408\u96C6"},{n:"\u8D39\u7FD4 MV\u5408\u96C6",v:"\u8D39\u7FD4 MV\u5408\u96C6"},{n:"\u91D1\u5FD7\u6587 MV\u5408\u96C6",v:"\u91D1\u5FD7\u6587 MV\u5408\u96C6"},{n:"\u9EC4\u5BB6\u5F3A MV\u5408\u96C6",v:"\u9EC4\u5BB6\u5F3A MV\u5408\u96C6"},{n:"\u65B9\u5927\u540C MV\u5408\u96C6",v:"\u65B9\u5927\u540C MV\u5408\u96C6"},{n:"\u5434\u514B\u7FA4 MV\u5408\u96C6",v:"\u5434\u514B\u7FA4 MV\u5408\u96C6"},{n:"\u7F57\u5927\u4F51 MV\u5408\u96C6",v:"\u7F57\u5927\u4F51 MV\u5408\u96C6"},{n:"\u5149\u826F MV\u5408\u96C6",v:"\u5149\u826F MV\u5408\u96C6"},{n:"\u738B\u6770 MV\u5408\u96C6",v:"\u738B\u6770 MV\u5408\u96C6"},{n:"\u91D1\u6C60 MV\u5408\u96C6",v:"\u91D1\u6C60 MV\u5408\u96C6"},{n:"\u5C60\u6D2A\u521A MV\u5408\u96C6",v:"\u5C60\u6D2A\u521A MV\u5408\u96C6"},{n:"\u6234\u8343 MV\u5408\u96C6",v:"\u6234\u8343 MV\u5408\u96C6"},{n:"\u7F57\u5FD7\u7965 MV\u5408\u96C6",v:"\u7F57\u5FD7\u7965 MV\u5408\u96C6"},{n:"\u738B\u529B\u5B8F MV\u5408\u96C6",v:"\u738B\u529B\u5B8F MV\u5408\u96C6"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6"}]},{key:"tidz",name:"\u8BED\u79CD",value:[{n:"\u534E\u8BED MV\u5408\u96C6",v:"\u534E\u8BED MV\u5408\u96C6"},{n:"\u6B27\u7F8E MV\u5408\u96C6",v:"\u6B27\u7F8E MV\u5408\u96C6"},{n:"\u65E5\u8BED MV\u5408\u96C6",v:"\u65E5\u8BED MV\u5408\u96C6"},{n:"\u97E9\u8BED MV\u5408\u96C6",v:"\u97E9\u8BED MV\u5408\u96C6"},{n:"\u56FD\u8BED MV\u5408\u96C6",v:"\u56FD\u8BED MV\u5408\u96C6"},{n:"\u7CA4\u8BED MV\u5408\u96C6",v:"\u7CA4\u8BED MV\u5408\u96C6"},{n:"\u95FD\u5357\u8BED MV\u5408\u96C6",v:"\u95FD\u5357\u8BED MV\u5408\u96C6"},{n:"\u4E1C\u5357\u4E9A MV\u5408\u96C6",v:"\u4E1C\u5357\u4E9A MV\u5408\u96C6"},{n:"\u82F1\u8BED MV\u5408\u96C6",v:"\u82F1\u8BED MV\u5408\u96C6"},{n:"\u4FC4\u8BED MV\u5408\u96C6",v:"\u4FC4\u8BED MV\u5408\u96C6"},{n:"\u5370\u5EA6 MV\u5408\u96C6",v:"\u5370\u5EA6 MV\u5408\u96C6"},{n:"\u81EA\u5236 MV\u5408\u96C6",v:"\u81EA\u5236 MV\u5408\u96C6"}]},{key:"tidd",name:"\u4E50\u961F\u7EC4\u5408",value:[{n:"\u4E50\u961F MV\u5408\u96C6",v:"\u4E50\u961F MV\u5408\u96C6"},{n:"\u7EC4\u5408 MV\u5408\u96C6",v:"\u7EC4\u5408 MV\u5408\u96C6"},{n:"Beyond MV\u5408\u96C6",v:"Beyond MV\u5408\u96C6"},{n:"\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6",v:"\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6"},{n:"\u7EB5\u8D2F\u7EBF MV\u5408\u96C6",v:"\u7EB5\u8D2F\u7EBF MV\u5408\u96C6"},{n:"\u82CF\u6253\u7EFF MV\u5408\u96C6",v:"\u82CF\u6253\u7EFF MV\u5408\u96C6"},{n:"\u4E94\u6708\u5929 MV\u5408\u96C6",v:"\u4E94\u6708\u5929 MV\u5408\u96C6"},{n:"TFBOYS MV\u5408\u96C6",v:"TFBOYS MV\u5408\u96C6"},{n:"\u7FBD\u6CC9 MV\u5408\u96C6",v:"\u7FBD\u6CC9 MV\u5408\u96C6"},{n:"\u8349\u8722 MV\u5408\u96C6",v:"\u8349\u8722 MV\u5408\u96C6"},{n:"\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6",v:"\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6"},{n:"\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6",v:"\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6"},{n:"\u98DE\u513F\u4E50\u961F MV\u5408\u96C6",v:"\u98DE\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"\u82B1\u513F\u4E50\u961F MV\u5408\u96C6",v:"\u82B1\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"\u5357\u62F3\u5988\u5988 MV\u5408\u96C6",v:"\u5357\u62F3\u5988\u5988 MV\u5408\u96C6"},{n:"\u6C34\u6728\u5E74\u534E MV\u5408\u96C6",v:"\u6C34\u6728\u5E74\u534E MV\u5408\u96C6"},{n:"\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6",v:"\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6"},{n:"\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6",v:"\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6"},{n:"\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6",v:"\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6"},{n:"\u4FE1\u4E50\u961F MV\u5408\u96C6",v:"\u4FE1\u4E50\u961F MV\u5408\u96C6"},{n:"\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6",v:"\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6"},{n:"\u6797\u80AF\u516C\u56ED MV\u5408\u96C6",v:"\u6797\u80AF\u516C\u56ED MV\u5408\u96C6"},{n:"BIGBANG MV\u5408\u96C6",v:"BIGBANG MV\u5408\u96C6"},{n:"\u540E\u8857\u7537\u5B69 MV\u5408\u96C6",v:"\u540E\u8857\u7537\u5B69 MV\u5408\u96C6"},{n:"\u591C\u613F\u4E50\u961F MV\u5408\u96C6",v:"\u591C\u613F\u4E50\u961F MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K MV":[{key:"tidv",name:"\u5206\u7C7B",value:[{n:"4K MV",v:"4K MV"},{n:"4K MV\u5408\u96C6",v:"4K MV\u5408\u96C6"},{n:"4K\u5168\u7F51\u7B2C\u4E00",v:"4K\u5168\u7F51\u7B2C\u4E00"},{n:"4K60FPS",v:"4K60FPS"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"4K\u97E9\u56FD\u5973\u661F MV\u5408\u96C6",v:"4K\u97E9\u56FD\u5973\u661F MV\u5408\u96C6"},{n:"4K\u674E\u5B5D\u5229 MV\u5408\u96C6",v:"4K\u674E\u5B5D\u5229 MV\u5408\u96C6"},{n:"4K\u674E\u77E5\u6069 MV\u5408\u96C6",v:"4K\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"4K\u6797\u5141\u513F MV\u5408\u96C6",v:"4K\u6797\u5141\u513F MV\u5408\u96C6"},{n:"4K\u91D1\u6CEB\u96C5 MV\u5408\u96C6",v:"4K\u91D1\u6CEB\u96C5 MV\u5408\u96C6"},{n:"4K\u91D1\u6CF0\u598D MV\u5408\u96C6",v:"4K\u91D1\u6CF0\u598D MV\u5408\u96C6"},{n:"4K\u674E\u5BA3\u7F8E MV\u5408\u96C6",v:"4K\u674E\u5BA3\u7F8E MV\u5408\u96C6"},{n:"4K\u5D14\u96EA\u8389 MV\u5408\u96C6",v:"4K\u5D14\u96EA\u8389 MV\u5408\u96C6"},{n:"4K\u5B89\u559C\u5EF6 MV\u5408\u96C6",v:"4K\u5B89\u559C\u5EF6 MV\u5408\u96C6"},{n:"4K\u91D1\u4E9A\u8363 MV\u5408\u96C6",v:"4K\u91D1\u4E9A\u8363 MV\u5408\u96C6"},{n:"4K\u674E\u77E5\u6069 MV\u5408\u96C6",v:"4K\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"4K\u674E\u8D1E\u8D24 MV\u5408\u96C6",v:"4K\u674E\u8D1E\u8D24 MV\u5408\u96C6"},{n:"4K\u6D2A\u771F\u82F1 MV\u5408\u96C6",v:"4K\u6D2A\u771F\u82F1 MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"4K\u65E5\u672C\u5973\u661F MV\u5408\u96C6",v:"4K\u65E5\u672C\u5973\u661F MV\u5408\u96C6"},{n:"4K YUI MV\u5408\u96C6",v:"4K YUI MV\u5408\u96C6"},{n:"4K\u5E78\u7530\u6765\u672A MV\u5408\u96C6",v:"4K\u5E78\u7530\u6765\u672A MV\u5408\u96C6"},{n:"4K\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6",v:"4K\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6"},{n:"4K\u6EE8\u5D0E\u6B65 MV\u5408\u96C6",v:"4K\u6EE8\u5D0E\u6B65 MV\u5408\u96C6"},{n:"4K\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6",v:"4K\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6"},{n:"4K\u5B87\u591A\u7530\u5149 MV\u5408\u96C6",v:"4K\u5B87\u591A\u7530\u5149 MV\u5408\u96C6"},{n:"4K\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6",v:"4K\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6"},{n:"4K\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6",v:"4K\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6"},{n:"4K\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6",v:"4K\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6"},{n:"4K Angela MV\u5408\u96C6",v:"4K Angela MV\u5408\u96C6"},{n:"4K\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6",v:"4K\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"4K\u5973\u661F MV\u5408\u96C6",v:"4K\u5973\u661F MV\u5408\u96C6"},{n:"4K\u6234\u4F69\u59AE MV\u5408\u96C6",v:"4K\u6234\u4F69\u59AE MV\u5408\u96C6"},{n:"4K\u9093\u7D2B\u68CB MV\u5408\u96C6",v:"4K\u9093\u7D2B\u68CB MV\u5408\u96C6"},{n:"4K\u5F20\u97F6\u6DB5 MV\u5408\u96C6",v:"4K\u5F20\u97F6\u6DB5 MV\u5408\u96C6"},{n:"4K\u8521\u5065\u96C5 MV\u5408\u96C6",v:"4K\u8521\u5065\u96C5 MV\u5408\u96C6"},{n:"4K\u83AB\u6587\u851A MV\u5408\u96C6",v:"4K\u83AB\u6587\u851A MV\u5408\u96C6"},{n:"4K\u5218\u82E5\u82F1 MV\u5408\u96C6",v:"4K\u5218\u82E5\u82F1 MV\u5408\u96C6"},{n:"4K\u9093\u4E3D\u541B MV\u5408\u96C6",v:"4K\u9093\u4E3D\u541B MV\u5408\u96C6"},{n:"4K\u8521\u4F9D\u6797 MV\u5408\u96C6",v:"4K\u8521\u4F9D\u6797 MV\u5408\u96C6"},{n:"4K\u674E\u5B87\u6625 MV\u5408\u96C6",v:"4K\u674E\u5B87\u6625 MV\u5408\u96C6"},{n:"4K\u5F90\u4F73\u83B9 MV\u5408\u96C6",v:"4K\u5F90\u4F73\u83B9 MV\u5408\u96C6"},{n:"4K\u6768\u5343\u5B05 MV\u5408\u96C6",v:"4K\u6768\u5343\u5B05 MV\u5408\u96C6"},{n:"4K\u5F20\u9753\u9896 MV\u5408\u96C6",v:"4K\u5F20\u9753\u9896 MV\u5408\u96C6"},{n:"4K\u6768\u4E1E\u7433 MV\u5408\u96C6",v:"4K\u6768\u4E1E\u7433 MV\u5408\u96C6"},{n:"4K\u8427\u4E9A\u8F69 MV\u5408\u96C6",v:"4K\u8427\u4E9A\u8F69 MV\u5408\u96C6"},{n:"4K\u5BB9\u7956\u513F MV\u5408\u96C6",v:"4K\u5BB9\u7956\u513F MV\u5408\u96C6"},{n:"4K\u6885\u8273\u82B3 MV\u5408\u96C6",v:"4K\u6885\u8273\u82B3 MV\u5408\u96C6"},{n:"4K\u5B59\u71D5\u59FF MV\u5408\u96C6",v:"4K\u5B59\u71D5\u59FF MV\u5408\u96C6"},{n:"4K\u8881\u5A05\u7EF4 MV\u5408\u96C6",v:"4K\u8881\u5A05\u7EF4 MV\u5408\u96C6"},{n:"4K\u738B\u83F2 MV\u5408\u96C6",v:"4K\u738B\u83F2 MV\u5408\u96C6"},{n:"4K\u6881\u9759\u8339 MV\u5408\u96C6",v:"4K\u6881\u9759\u8339 MV\u5408\u96C6"},{n:"4K\u5468\u6167\u654F MV\u5408\u96C6",v:"4K\u5468\u6167\u654F MV\u5408\u96C6"},{n:"4K\u5F20\u60E0\u59B9 MV\u5408\u96C6",v:"4K\u5F20\u60E0\u59B9 MV\u5408\u96C6"},{n:"4K\u5468\u7B14\u7545 MV\u5408\u96C6",v:"4K\u5468\u7B14\u7545 MV\u5408\u96C6"},{n:"4K\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6",v:"4K\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6"},{n:"4K\u9648\u6167\u5A34 MV\u5408\u96C6",v:"4K\u9648\u6167\u5A34 MV\u5408\u96C6"},{n:"4K\u90ED\u9759 MV\u5408\u96C6",v:"4K\u90ED\u9759 MV\u5408\u96C6"},{n:"4K\u90A3\u82F1 MV\u5408\u96C6",v:"4K\u90A3\u82F1 MV\u5408\u96C6"},{n:"4K\u97E9\u7EA2 MV\u5408\u96C6",v:"4K\u97E9\u7EA2 MV\u5408\u96C6"},{n:"4K\u6797\u5FC6\u83B2 MV\u5408\u96C6",v:"4K\u6797\u5FC6\u83B2 MV\u5408\u96C6"},{n:"4K\u674E\u739F MV\u5408\u96C6",v:"4K\u674E\u739F MV\u5408\u96C6"},{n:"4K\u5F90\u5C0F\u51E4 MV\u5408\u96C6",v:"4K\u5F90\u5C0F\u51E4 MV\u5408\u96C6"},{n:"4K\u5353\u4F9D\u5A77 MV\u5408\u96C6",v:"4K\u5353\u4F9D\u5A77 MV\u5408\u96C6"},{n:"4K\u90C1\u53EF\u552F MV\u5408\u96C6",v:"4K\u90C1\u53EF\u552F MV\u5408\u96C6"},{n:"4K\u7530\u9707 MV\u5408\u96C6",v:"4K\u7530\u9707 MV\u5408\u96C6"},{n:"4K\u51E4\u98DE\u98DE MV\u5408\u96C6",v:"4K\u51E4\u98DE\u98DE MV\u5408\u96C6"},{n:"4K\u8C2D\u6676 MV\u5408\u96C6",v:"4K\u8C2D\u6676 MV\u5408\u96C6"},{n:"4K\u53F6\u5029\u6587 MV\u5408\u96C6",v:"4K\u53F6\u5029\u6587 MV\u5408\u96C6"},{n:"4K\u738B\u5FC3\u51CC MV\u5408\u96C6",v:"4K\u738B\u5FC3\u51CC MV\u5408\u96C6"},{n:"4K\u90ED\u91C7\u6D01 MV\u5408\u96C6",v:"4K\u90ED\u91C7\u6D01 MV\u5408\u96C6"},{n:"4K\u963F\u9EDB\u5C14 MV\u5408\u96C6",v:"4K\u963F\u9EDB\u5C14 MV\u5408\u96C6"},{n:"4K LadyGaga MV\u5408\u96C6",v:"4K LadyGaga MV\u5408\u96C6"},{n:"4K\u5E03\u5170\u59AE MV\u5408\u96C6",v:"4K\u5E03\u5170\u59AE MV\u5408\u96C6"},{n:"4K\u6D1B\u5929\u4F9D MV\u5408\u96C6",v:"4K\u6D1B\u5929\u4F9D MV\u5408\u96C6"},{n:"4K\u521D\u97F3\u672A\u6765 MV\u5408\u96C6",v:"4K\u521D\u97F3\u672A\u6765 MV\u5408\u96C6"}]},{key:"tidx",name:"\u5206\u7C7B",value:[{n:"4K\u7537\u661F MV\u5408\u96C6",v:"4K\u7537\u661F MV\u5408\u96C6"},{n:"4K\u5468\u6770\u4F26 MV\u5408\u96C6",v:"4K\u5468\u6770\u4F26 MV\u5408\u96C6"},{n:"4K\u9648\u5955\u8FC5 MV\u5408\u96C6",v:"4K\u9648\u5955\u8FC5 MV\u5408\u96C6"},{n:"4K\u5218\u5FB7\u534E MV\u5408\u96C6",v:"4K\u5218\u5FB7\u534E MV\u5408\u96C6"},{n:"4K\u90ED\u5BCC\u57CE MV\u5408\u96C6",v:"4K\u90ED\u5BCC\u57CE MV\u5408\u96C6"},{n:"4K\u5F20\u5B66\u53CB MV\u5408\u96C6",v:"4K\u5F20\u5B66\u53CB MV\u5408\u96C6"},{n:"4K\u9ECE\u660E MV\u5408\u96C6",v:"4K\u9ECE\u660E MV\u5408\u96C6"},{n:"4K\u674E\u5B97\u76DB MV\u5408\u96C6",v:"4K\u674E\u5B97\u76DB MV\u5408\u96C6"},{n:"4K\u6734\u6811 MV\u5408\u96C6",v:"4K\u6734\u6811 MV\u5408\u96C6"},{n:"4K\u6797\u5B50\u7965 MV\u5408\u96C6",v:"4K\u6797\u5B50\u7965 MV\u5408\u96C6"},{n:"4K\u4EFB\u8D24\u9F50 MV\u5408\u96C6",v:"4K\u4EFB\u8D24\u9F50 MV\u5408\u96C6"},{n:"4K\u5F20\u4FE1\u54F2 MV\u5408\u96C6",v:"4K\u5F20\u4FE1\u54F2 MV\u5408\u96C6"},{n:"4K\u5B59\u6960 MV\u5408\u96C6",v:"4K\u5B59\u6960 MV\u5408\u96C6"},{n:"4K\u5F20\u5B87 MV\u5408\u96C6",v:"4K\u5F20\u5B87 MV\u5408\u96C6"},{n:"4K\u5468\u534E\u5065 MV\u5408\u96C6",v:"4K\u5468\u534E\u5065 MV\u5408\u96C6"},{n:"4K\u859B\u4E4B\u8C26 MV\u5408\u96C6",v:"4K\u859B\u4E4B\u8C26 MV\u5408\u96C6"},{n:"4K\u8BB8\u5D69 MV\u5408\u96C6",v:"4K\u8BB8\u5D69 MV\u5408\u96C6"},{n:"4K\u5468\u6DF1 MV\u5408\u96C6",v:"4K\u5468\u6DF1 MV\u5408\u96C6"},{n:"4K\u6BDB\u4E0D\u6613 MV\u5408\u96C6",v:"4K\u6BDB\u4E0D\u6613 MV\u5408\u96C6"},{n:"4K\u6C6A\u82CF\u6CF7 MV\u5408\u96C6",v:"4K\u6C6A\u82CF\u6CF7 MV\u5408\u96C6"},{n:"4K\u6768\u5B97\u7EAC MV\u5408\u96C6",v:"4K\u6768\u5B97\u7EAC MV\u5408\u96C6"},{n:"4K\u80E1\u5F66\u658C MV\u5408\u96C6",v:"4K\u80E1\u5F66\u658C MV\u5408\u96C6"},{n:"4K\u674E\u8363\u6D69 MV\u5408\u96C6",v:"4K\u674E\u8363\u6D69 MV\u5408\u96C6"},{n:"4K\u6797\u5FD7\u70AB MV\u5408\u96C6",v:"4K\u6797\u5FD7\u70AB MV\u5408\u96C6"},{n:"4K\u9676\u5586 MV\u5408\u96C6",v:"4K\u9676\u5586 MV\u5408\u96C6"},{n:"4K\u80E1\u590F MV\u5408\u96C6",v:"4K\u80E1\u590F MV\u5408\u96C6"},{n:"4K\u674E\u7389\u521A MV\u5408\u96C6",v:"4K\u674E\u7389\u521A MV\u5408\u96C6"},{n:"4K\u5F26\u5B50 MV\u5408\u96C6",v:"4K\u5F26\u5B50 MV\u5408\u96C6"},{n:"4K\u9648\u5C0F\u6625 MV\u5408\u96C6",v:"4K\u9648\u5C0F\u6625 MV\u5408\u96C6"},{n:"4K\u9E7F\u6657 MV\u5408\u96C6",v:"4K\u9E7F\u6657 MV\u5408\u96C6"},{n:"4K\u8BB8\u5DCD MV\u5408\u96C6",v:"4K\u8BB8\u5DCD MV\u5408\u96C6"},{n:"4K\u6797\u4FCA\u6770 MV\u5408\u96C6",v:"4K\u6797\u4FCA\u6770 MV\u5408\u96C6"},{n:"4K\u8D75\u96F7 MV\u5408\u96C6",v:"4K\u8D75\u96F7 MV\u5408\u96C6"},{n:"4K\u8C2D\u548F\u9E9F MV\u5408\u96C6",v:"4K\u8C2D\u548F\u9E9F MV\u5408\u96C6"},{n:"4K\u5468\u4F20\u96C4 MV\u5408\u96C6",v:"4K\u5468\u4F20\u96C4 MV\u5408\u96C6"},{n:"4K\u5F20\u56FD\u8363 MV\u5408\u96C6",v:"4K\u5F20\u56FD\u8363 MV\u5408\u96C6"},{n:"4K\u674E\u5065 MV\u5408\u96C6",v:"4K\u674E\u5065 MV\u5408\u96C6"},{n:"4K\u534E\u6668\u5B87 MV\u5408\u96C6",v:"4K\u534E\u6668\u5B87 MV\u5408\u96C6"},{n:"4K\u5927\u5F20\u4F1F MV\u5408\u96C6",v:"4K\u5927\u5F20\u4F1F MV\u5408\u96C6"},{n:"4K\u738B\u4FCA\u51EF MV\u5408\u96C6",v:"4K\u738B\u4FCA\u51EF MV\u5408\u96C6"},{n:"4K\u6613\u70CA\u5343\u73BA MV\u5408\u96C6",v:"4K\u6613\u70CA\u5343\u73BA MV\u5408\u96C6"},{n:"4K\u738B\u6E90 MV\u5408\u96C6",v:"4K\u738B\u6E90 MV\u5408\u96C6"},{n:"4K\u7530\u99A5\u7504 MV\u5408\u96C6",v:"4K\u7530\u99A5\u7504 MV\u5408\u96C6"},{n:"4K\u5C0F\u864E\u961F MV\u5408\u96C6",v:"4K\u5C0F\u864E\u961F MV\u5408\u96C6"},{n:"4K\u5F20\u6770 MV\u5408\u96C6",v:"4K\u5F20\u6770 MV\u5408\u96C6"},{n:"4K\u4F0D\u4F70 MV\u5408\u96C6",v:"4K\u4F0D\u4F70 MV\u5408\u96C6"},{n:"4K\u5200\u90CE MV\u5408\u96C6",v:"4K\u5200\u90CE MV\u5408\u96C6"},{n:"4K\u6F58\u73AE\u67CF MV\u5408\u96C6",v:"4K\u6F58\u73AE\u67CF MV\u5408\u96C6"},{n:"4K\u6797\u5BA5\u5609 MV\u5408\u96C6",v:"4K\u6797\u5BA5\u5609 MV\u5408\u96C6"},{n:"4K\u8521\u5F90\u5764 MV\u5408\u96C6",v:"4K\u8521\u5F90\u5764 MV\u5408\u96C6"},{n:"4K\u674E\u5723\u6770 MV\u5408\u96C6",v:"4K\u674E\u5723\u6770 MV\u5408\u96C6"},{n:"4K\u8427\u656C\u817E MV\u5408\u96C6",v:"4K\u8427\u656C\u817E MV\u5408\u96C6"},{n:"4K\u7126\u8FC8\u5947 MV\u5408\u96C6",v:"4K\u7126\u8FC8\u5947 MV\u5408\u96C6"},{n:"4K\u5C24\u957F\u9756 MV\u5408\u96C6",v:"4K\u5C24\u957F\u9756 MV\u5408\u96C6"},{n:"4K\u90D1\u4E2D\u57FA MV\u5408\u96C6",v:"4K\u90D1\u4E2D\u57FA MV\u5408\u96C6"},{n:"4K\u5F20\u827A\u5174 MV\u5408\u96C6",v:"4K\u5F20\u827A\u5174 MV\u5408\u96C6"},{n:"4K\u738B\u5609\u5C14 MV\u5408\u96C6",v:"4K\u738B\u5609\u5C14 MV\u5408\u96C6"},{n:"4K\u5218\u5BAA\u534E MV\u5408\u96C6",v:"4K\u5218\u5BAA\u534E MV\u5408\u96C6"},{n:"4K\u5F20\u656C\u8F69 MV\u5408\u96C6",v:"4K\u5F20\u656C\u8F69 MV\u5408\u96C6"},{n:"4K\u674E\u514B\u52E4 MV\u5408\u96C6",v:"4K\u674E\u514B\u52E4 MV\u5408\u96C6"},{n:"4K\u963F\u675C MV\u5408\u96C6",v:"4K\u963F\u675C MV\u5408\u96C6"},{n:"4K\u5D14\u5065 MV\u5408\u96C6",v:"4K\u5D14\u5065 MV\u5408\u96C6"},{n:"4K\u5EBE\u6F84\u5E86 MV\u5408\u96C6",v:"4K\u5EBE\u6F84\u5E86 MV\u5408\u96C6"},{n:"4K\u6C6A\u5CF0 MV\u5408\u96C6",v:"4K\u6C6A\u5CF0 MV\u5408\u96C6"},{n:"4K\u6768\u5764 MV\u5408\u96C6",v:"4K\u6768\u5764 MV\u5408\u96C6"},{n:"4K\u5F20\u9707\u5CB3 MV\u5408\u96C6",v:"4K\u5F20\u9707\u5CB3 MV\u5408\u96C6"},{n:"4K\u9F50\u79E6 MV\u5408\u96C6",v:"4K\u9F50\u79E6 MV\u5408\u96C6"},{n:"4K\u5F20\u96E8\u751F MV\u5408\u96C6",v:"4K\u5F20\u96E8\u751F MV\u5408\u96C6"},{n:"4K\u9EC4\u54C1\u6E90 MV\u5408\u96C6",v:"4K\u9EC4\u54C1\u6E90 MV\u5408\u96C6"},{n:"4K\u4E01\u5F53 MV\u5408\u96C6",v:"4K\u4E01\u5F53 MV\u5408\u96C6"},{n:"4K\u90D1\u667A\u5316 MV\u5408\u96C6",v:"4K\u90D1\u667A\u5316 MV\u5408\u96C6"},{n:"4K\u8C22\u9706\u950B MV\u5408\u96C6",v:"4K\u8C22\u9706\u950B MV\u5408\u96C6"},{n:"4K\u9EC4\u5C0F\u7425 MV\u5408\u96C6",v:"4K\u9EC4\u5C0F\u7425 MV\u5408\u96C6"},{n:"4K\u4EFB\u5609\u4F26 MV\u5408\u96C6",v:"4K\u4EFB\u5609\u4F26 MV\u5408\u96C6"},{n:"4K\u5B8B\u4E9A\u68EE MV\u5408\u96C6",v:"4K\u5B8B\u4E9A\u68EE MV\u5408\u96C6"},{n:"4K\u8D39\u7389\u6E05 MV\u5408\u96C6",v:"4K\u8D39\u7389\u6E05 MV\u5408\u96C6"},{n:"4K\u8D39\u7FD4 MV\u5408\u96C6",v:"4K\u8D39\u7FD4 MV\u5408\u96C6"},{n:"4K\u91D1\u5FD7\u6587 MV\u5408\u96C6",v:"4K\u91D1\u5FD7\u6587 MV\u5408\u96C6"},{n:"4K\u9EC4\u5BB6\u5F3A MV\u5408\u96C6",v:"4K\u9EC4\u5BB6\u5F3A MV\u5408\u96C6"},{n:"4K\u65B9\u5927\u540C MV\u5408\u96C6",v:"4K\u65B9\u5927\u540C MV\u5408\u96C6"},{n:"4K\u5434\u514B\u7FA4 MV\u5408\u96C6",v:"4K\u5434\u514B\u7FA4 MV\u5408\u96C6"},{n:"4K\u7F57\u5927\u4F51 MV\u5408\u96C6",v:"4K\u7F57\u5927\u4F51 MV\u5408\u96C6"},{n:"4K\u5149\u826F MV\u5408\u96C6",v:"4K\u5149\u826F MV\u5408\u96C6"},{n:"4K\u738B\u6770 MV\u5408\u96C6",v:"4K\u738B\u6770 MV\u5408\u96C6"},{n:"4K\u91D1\u6C60 MV\u5408\u96C6",v:"4K\u91D1\u6C60 MV\u5408\u96C6"},{n:"4K\u5C60\u6D2A\u521A MV\u5408\u96C6",v:"4K\u5C60\u6D2A\u521A MV\u5408\u96C6"},{n:"4K\u6234\u8343 MV\u5408\u96C6",v:"4K\u6234\u8343 MV\u5408\u96C6"},{n:"4K\u7F57\u5FD7\u7965 MV\u5408\u96C6",v:"4K\u7F57\u5FD7\u7965 MV\u5408\u96C6"},{n:"4K\u738B\u529B\u5B8F MV\u5408\u96C6",v:"4K\u738B\u529B\u5B8F MV\u5408\u96C6"},{n:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6",v:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6"},{n:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6",v:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6"},{n:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6",v:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6"}]},{key:"tidy",name:"\u8BED\u79CD",value:[{n:"4K\u534E\u8BED MV\u5408\u96C6",v:"4K\u534E\u8BED MV\u5408\u96C6"},{n:"4K\u6B27\u7F8E MV\u5408\u96C6",v:"4K\u6B27\u7F8E MV\u5408\u96C6"},{n:"4K\u65E5\u8BED MV\u5408\u96C6",v:"4K\u65E5\u8BED MV\u5408\u96C6"},{n:"4K\u97E9\u8BED MV\u5408\u96C6",v:"4K\u97E9\u8BED MV\u5408\u96C6"},{n:"4K\u56FD\u8BED MV\u5408\u96C6",v:"4K\u56FD\u8BED MV\u5408\u96C6"},{n:"4K\u7CA4\u8BED MV\u5408\u96C6",v:"4K\u7CA4\u8BED MV\u5408\u96C6"},{n:"4K\u95FD\u5357\u8BED MV\u5408\u96C6",v:"4K\u95FD\u5357\u8BED MV\u5408\u96C6"},{n:"4K\u4E1C\u5357\u4E9A MV\u5408\u96C6",v:"4K\u4E1C\u5357\u4E9A MV\u5408\u96C6"},{n:"4K\u82F1\u8BED MV\u5408\u96C6",v:"4K\u82F1\u8BED MV\u5408\u96C6"},{n:"4K\u4FC4\u8BED MV\u5408\u96C6",v:"4K\u4FC4\u8BED MV\u5408\u96C6"},{n:"4K\u5370\u5EA6 MV\u5408\u96C6",v:"4K\u5370\u5EA6 MV\u5408\u96C6"},{n:"4K\u81EA\u5236 MV\u5408\u96C6",v:"4K\u81EA\u5236 MV\u5408\u96C6"}]},{key:"tidd",name:"\u4E50\u961F\u7EC4\u5408",value:[{n:"4K\u4E50\u961F MV\u5408\u96C6",v:"4K\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u7EC4\u5408 MV\u5408\u96C6",v:"4K\u7EC4\u5408 MV\u5408\u96C6"},{n:"4K Beyond MV\u5408\u96C6",v:"4K Beyond MV\u5408\u96C6"},{n:"4K\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6",v:"4K\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6"},{n:"4K\u7EB5\u8D2F\u7EBF MV\u5408\u96C6",v:"4K\u7EB5\u8D2F\u7EBF MV\u5408\u96C6"},{n:"4K\u82CF\u6253\u7EFF MV\u5408\u96C6",v:"4K\u82CF\u6253\u7EFF MV\u5408\u96C6"},{n:"4K\u4E94\u6708\u5929 MV\u5408\u96C6",v:"4K\u4E94\u6708\u5929 MV\u5408\u96C6"},{n:"4K TFBOYS MV\u5408\u96C6",v:"4K TFBOYS MV\u5408\u96C6"},{n:"4K\u7FBD\u6CC9 MV\u5408\u96C6",v:"4K\u7FBD\u6CC9 MV\u5408\u96C6"},{n:"4K\u8349\u8722 MV\u5408\u96C6",v:"4K\u8349\u8722 MV\u5408\u96C6"},{n:"4K\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6",v:"4K\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6"},{n:"4K\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6",v:"4K\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6"},{n:"4K\u98DE\u513F\u4E50\u961F MV\u5408\u96C6",v:"4K\u98DE\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u82B1\u513F\u4E50\u961F MV\u5408\u96C6",v:"4K\u82B1\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u5357\u62F3\u5988\u5988 MV\u5408\u96C6",v:"4K\u5357\u62F3\u5988\u5988 MV\u5408\u96C6"},{n:"4K\u6C34\u6728\u5E74\u534E MV\u5408\u96C6",v:"4K\u6C34\u6728\u5E74\u534E MV\u5408\u96C6"},{n:"4K\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6",v:"4K\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6"},{n:"4K\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6",v:"4K\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6"},{n:"4K\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6",v:"4K\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u4FE1\u4E50\u961F MV\u5408\u96C6",v:"4K\u4FE1\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6",v:"4K\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u6797\u80AF\u516C\u56ED MV\u5408\u96C6",v:"4K\u6797\u80AF\u516C\u56ED MV\u5408\u96C6"},{n:"4K BIGBANG MV\u5408\u96C6",v:"4K BIGBANG MV\u5408\u96C6"},{n:"4K\u540E\u8857\u7537\u5B69 MV\u5408\u96C6",v:"4K\u540E\u8857\u7537\u5B69 MV\u5408\u96C6"},{n:"4K\u591C\u613F\u4E50\u961F MV\u5408\u96C6",v:"4K\u591C\u613F\u4E50\u961F MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5973\u56E2:[{key:"tidt",name:"\u5206\u7C7B",value:[{n:"\u5973\u56E2",v:"\u5973\u56E2"},{n:"\u5973\u56E2\u5408\u96C6",v:"\u5973\u56E2\u5408\u96C6"}]},{key:"tidz",name:"\u5206\u7C7B",value:[{n:"\u4E2D\u56FD\u5973\u56E2",v:"\u4E2D\u56FD\u5973\u56E2"},{n:"\u4E2D\u56FD\u5973\u56E2\u5408\u96C6",v:"\u4E2D\u56FD\u5973\u56E2\u5408\u96C6"},{n:"SNH48 MV\u5408\u96C6",v:"SNH48 MV\u5408\u96C6"},{n:"S.H.E MV\u5408\u96C6",v:"S.H.E MV\u5408\u96C6"},{n:"Twins MV\u5408\u96C6",v:"Twins MV\u5408\u96C6"},{n:"\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6",v:"\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6"},{n:"BY2 MV\u5408\u96C6",v:"BY2 MV\u5408\u96C6"},{n:"S.I.N.G MV\u5408\u96C6",v:"S.I.N.G MV\u5408\u96C6"},{n:"3unshine MV\u5408\u96C6",v:"3unshine MV\u5408\u96C6"},{n:"\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6",v:"\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6"},{n:"\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6",v:"\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6"},{n:"GNZ48 MV\u5408\u96C6",v:"GNZ48 MV\u5408\u96C6"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"\u97E9\u56FD\u5973\u56E2",v:"\u97E9\u56FD\u5973\u56E2"},{n:"\u97E9\u56FD\u5973\u56E2\u5408\u96C6",v:"\u97E9\u56FD\u5973\u56E2\u5408\u96C6"},{n:"TWICE MV\u5408\u96C6",v:"TWICE MV\u5408\u96C6"},{n:"4MINUTE MV\u5408\u96C6",v:"4MINUTE MV\u5408\u96C6"},{n:"EXID MV\u5408\u96C6",v:"EXID MV\u5408\u96C6"},{n:"KARA MV\u5408\u96C6",v:"KARA MV\u5408\u96C6"},{n:"TARA MV\u5408\u96C6",v:"TARA MV\u5408\u96C6"},{n:"BLACKPINK MV\u5408\u96C6",v:"BLACKPINK MV\u5408\u96C6"},{n:"LOONA MV\u5408\u96C6",v:"LOONA MV\u5408\u96C6"},{n:"ITZY MV\u5408\u96C6",v:"ITZY MV\u5408\u96C6"},{n:"RedVelvet MV\u5408\u96C6",v:"RedVelvet MV\u5408\u96C6"},{n:"Everglow MV\u5408\u96C6",v:"Everglow MV\u5408\u96C6"},{n:"Mamamoo MV\u5408\u96C6",v:"Mamamoo MV\u5408\u96C6"},{n:"\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6",v:"\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6"},{n:"S.E.S MV\u5408\u96C6",v:"S.E.S MV\u5408\u96C6"},{n:"FIN.K.L MV\u5408\u96C6",v:"FIN.K.L MV\u5408\u96C6"},{n:"2NE1 MV\u5408\u96C6",v:"2NE1 MV\u5408\u96C6"},{n:"WonderGirls MV\u5408\u96C6",v:"WonderGirls MV\u5408\u96C6"},{n:"IZ*ONE MV\u5408\u96C6",v:"IZ*ONE MV\u5408\u96C6"},{n:"Sistar MV\u5408\u96C6",v:"Sistar MV\u5408\u96C6"},{n:"Apink MV\u5408\u96C6",v:"Apink MV\u5408\u96C6"},{n:"AOA MV\u5408\u96C6",v:"AOA MV\u5408\u96C6"},{n:"GFRIEND MV\u5408\u96C6",v:"GFRIEND MV\u5408\u96C6"},{n:"f(x) MV\u5408\u96C6",v:"f(x) MV\u5408\u96C6"},{n:"(G)I-DLE MV\u5408\u96C6",v:"(G)I-DLE MV\u5408\u96C6"},{n:"Itzy MV\u5408\u96C6",v:"Itzy MV\u5408\u96C6"},{n:"Oh!GG MV\u5408\u96C6",v:"Oh!GG MV\u5408\u96C6"},{n:"GirlCrush MV\u5408\u96C6",v:"GirlCrush MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"\u65E5\u672C\u5973\u56E2",v:"\u65E5\u672C\u5973\u56E2"},{n:"\u65E5\u672C\u5973\u56E2\u5408\u96C6",v:"\u65E5\u672C\u5973\u56E2\u5408\u96C6"},{n:"AKB48 MV\u5408\u96C6",v:"AKB48 MV\u5408\u96C6"},{n:"SKE48 MV\u5408\u96C6",v:"SKE48 MV\u5408\u96C6"},{n:"NMB48 MV\u5408\u96C6",v:"NMB48 MV\u5408\u96C6"},{n:"JKT48 MV\u5408\u96C6",v:"JKT48 MV\u5408\u96C6"},{n:"HKT48 MV\u5408\u96C6",v:"HKT48 MV\u5408\u96C6"},{n:"AKB48TeamTP MV\u5408\u96C6",v:"AKB48TeamTP MV\u5408\u96C6"},{n:"Perfume MV\u5408\u96C6",v:"Perfume MV\u5408\u96C6"},{n:"\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6",v:"\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6"},{n:"\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6",v:"\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6"},{n:"\u6A31\u574246 MV\u5408\u96C6",v:"\u6A31\u574246 MV\u5408\u96C6"},{n:"\u65E5\u5411\u574246 MV\u5408\u96C6",v:"\u65E5\u5411\u574246 MV\u5408\u96C6"},{n:"E-girls MV\u5408\u96C6",v:"E-girls MV\u5408\u96C6"},{n:"NiziU MV\u5408\u96C6",v:"NiziU MV\u5408\u96C6"},{n:"BiSH MV\u5408\u96C6",v:"BiSH MV\u5408\u96C6"},{n:"\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6",v:"\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"4K\u5973\u56E2",v:"4K\u5973\u56E2"}]},{key:"tidg",name:"\u5206\u7C7B",value:[{n:"4K\u4E2D\u56FD\u5973\u56E2",v:"4K\u4E2D\u56FD\u5973\u56E2"},{n:"4K\u4E2D\u56FD\u5973\u56E2\u5408\u96C6",v:"4K\u4E2D\u56FD\u5973\u56E2\u5408\u96C6"},{n:"4K SNH48 MV\u5408\u96C6",v:"4K SNH48 MV\u5408\u96C6"},{n:"4K S.H.E MV\u5408\u96C6",v:"4K S.H.E MV\u5408\u96C6"},{n:"4K Twins MV\u5408\u96C6",v:"4K Twins MV\u5408\u96C6"},{n:"4K\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6",v:"4K\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6"},{n:"4K BY2 MV\u5408\u96C6",v:"4K BY2 MV\u5408\u96C6"},{n:"4K S.I.N.G MV\u5408\u96C6",v:"4K S.I.N.G MV\u5408\u96C6"},{n:"4K 3unshine MV\u5408\u96C6",v:"4K 3unshine MV\u5408\u96C6"},{n:"4K\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6",v:"4K\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6"},{n:"4K\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6",v:"4K\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6"},{n:"4K GNZ48 MV\u5408\u96C6",v:"4K GNZ48 MV\u5408\u96C6"}]},{key:"tidk",name:"\u5206\u7C7B",value:[{n:"4K\u97E9\u56FD\u5973\u56E2",v:"4K\u97E9\u56FD\u5973\u56E2"},{n:"4K\u97E9\u56FD\u5973\u56E2\u5408\u96C6",v:"4K\u97E9\u56FD\u5973\u56E2\u5408\u96C6"},{n:"4K TWICE MV\u5408\u96C6",v:"4K TWICE MV\u5408\u96C6"},{n:"4K 4MINUTE MV\u5408\u96C6",v:"4K 4MINUTE MV\u5408\u96C6"},{n:"4K EXID MV\u5408\u96C6",v:"4K EXID MV\u5408\u96C6"},{n:"4K KARA MV\u5408\u96C6",v:"4K KARA MV\u5408\u96C6"},{n:"4K TARA MV\u5408\u96C6",v:"4K TARA MV\u5408\u96C6"},{n:"4K BLACKPINK MV\u5408\u96C6",v:"4K BLACKPINK MV\u5408\u96C6"},{n:"4K LOONA MV\u5408\u96C6",v:"4K LOONA MV\u5408\u96C6"},{n:"4K ITZY MV\u5408\u96C6",v:"4K ITZY MV\u5408\u96C6"},{n:"4K RedVelvet MV\u5408\u96C6",v:"4K RedVelvet MV\u5408\u96C6"},{n:"4K Everglow MV\u5408\u96C6",v:"4K Everglow MV\u5408\u96C6"},{n:"4K Mamamoo MV\u5408\u96C6",v:"4K Mamamoo MV\u5408\u96C6"},{n:"4K\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6",v:"4K\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6"},{n:"4K S.E.S MV\u5408\u96C6",v:"4K S.E.S MV\u5408\u96C6"},{n:"4K FIN.K.L MV\u5408\u96C6",v:"4K FIN.K.L MV\u5408\u96C6"},{n:"4K 2NE1 MV\u5408\u96C6",v:"4K 2NE1 MV\u5408\u96C6"},{n:"4K WonderGirls MV\u5408\u96C6",v:"4K WonderGirls MV\u5408\u96C6"},{n:"4K IZ*ONE MV\u5408\u96C6",v:"4K IZ*ONE MV\u5408\u96C6"},{n:"4K Sistar MV\u5408\u96C6",v:"4K Sistar MV\u5408\u96C6"},{n:"4K Apink MV\u5408\u96C6",v:"4K Apink MV\u5408\u96C6"},{n:"4K AOA MV\u5408\u96C6",v:"4K AOA MV\u5408\u96C6"},{n:"4K GFRIEND MV\u5408\u96C6",v:"4K GFRIEND MV\u5408\u96C6"},{n:"4K f(x) MV\u5408\u96C6",v:"4K f(x) MV\u5408\u96C6"},{n:"4K (G)I-DLE MV\u5408\u96C6",v:"4K (G)I-DLE MV\u5408\u96C6"},{n:"4K Itzy MV\u5408\u96C6",v:"4K Itzy MV\u5408\u96C6"},{n:"4K Oh!GG MV\u5408\u96C6",v:"4K Oh!GG MV\u5408\u96C6"},{n:"4K GirlCrush MV\u5408\u96C6",v:"4K GirlCrush MV\u5408\u96C6"}]},{key:"tida",name:"\u5206\u7C7B",value:[{n:"4K\u65E5\u672C\u5973\u56E2",v:"4K\u65E5\u672C\u5973\u56E2"},{n:"4K\u65E5\u672C\u5973\u56E2\u5408\u96C6",v:"4K\u65E5\u672C\u5973\u56E2\u5408\u96C6"},{n:"4K AKB48 MV\u5408\u96C6",v:"4K AKB48 MV\u5408\u96C6"},{n:"4K SKE48 MV\u5408\u96C6",v:"4K SKE48 MV\u5408\u96C6"},{n:"4K NMB48 MV\u5408\u96C6",v:"4K NMB48 MV\u5408\u96C6"},{n:"4K JKT48 MV\u5408\u96C6",v:"4K JKT48 MV\u5408\u96C6"},{n:"4K HKT48 MV\u5408\u96C6",v:"4K HKT48 MV\u5408\u96C6"},{n:"4K AKB48 TeamTP MV\u5408\u96C6",v:"4K AKB48 TeamTP MV\u5408\u96C6"},{n:"4K Perfume MV\u5408\u96C6",v:"4K Perfume MV\u5408\u96C6"},{n:"4K\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6",v:"4K\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6"},{n:"4K\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6",v:"4K\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6"},{n:"4K\u6A31\u574246 MV\u5408\u96C6",v:"4K\u6A31\u574246 MV\u5408\u96C6"},{n:"4K\u65E5\u5411\u574246 MV\u5408\u96C6",v:"4K\u65E5\u5411\u574246 MV\u5408\u96C6"},{n:"4K E-girls MV\u5408\u96C6",v:"4K E-girls MV\u5408\u96C6"},{n:"4K NiziU MV\u5408\u96C6",v:"4K NiziU MV\u5408\u96C6"},{n:"4K BiSH MV\u5408\u96C6",v:"4K BiSH MV\u5408\u96C6"},{n:"4K\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6",v:"4K\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5F71\u89C6MV:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F8\u58F0\u5C0F\u54C1:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u76F8\u58F0\u5C0F\u54C1",v:"\u76F8\u58F0\u5C0F\u54C1"},{n:"\u5355\u53E3\u76F8\u58F0",v:"\u5355\u53E3\u76F8\u58F0"},{n:"\u7FA4\u53E3\u76F8\u58F0",v:"\u7FA4\u53E3\u76F8\u58F0"},{n:"\u5FB7\u4E91\u793E",v:"\u5FB7\u4E91\u793E"},{n:"\u9752\u66F2\u793E",v:"\u9752\u66F2\u793E"},{n:"\u90ED\u5FB7\u7EB2",v:"\u90ED\u5FB7\u7EB2"},{n:"\u5CB3\u4E91\u9E4F",v:"\u5CB3\u4E91\u9E4F"},{n:"\u66F9\u4E91\u91D1",v:"\u66F9\u4E91\u91D1"},{n:"\u8BC4\u4E66",v:"\u8BC4\u4E66"},{n:"\u5C0F\u66F2",v:"\u5C0F\u66F2"},{n:"\u4E8C\u4EBA\u8F6C",v:"\u4E8C\u4EBA\u8F6C"},{n:"\u6625\u665A\u5C0F\u54C1",v:"\u6625\u665A\u5C0F\u54C1"},{n:"\u8D75\u672C\u5C71",v:"\u8D75\u672C\u5C71"},{n:"\u9648\u4F69\u65AF",v:"\u9648\u4F69\u65AF"},{n:"\u51AF\u5DE9",v:"\u51AF\u5DE9"},{n:"\u5B8B\u5C0F\u5B9D",v:"\u5B8B\u5C0F\u5B9D"},{n:"\u8D75\u4E3D\u84C9",v:"\u8D75\u4E3D\u84C9"},{n:"\u90ED\u8FBE",v:"\u90ED\u8FBE"},{n:"\u6F58\u957F\u6C5F",v:"\u6F58\u957F\u6C5F"},{n:"\u90ED\u51AC\u4E34",v:"\u90ED\u51AC\u4E34"},{n:"\u4E25\u987A\u5F00",v:"\u4E25\u987A\u5F00"},{n:"\u6587\u677E",v:"\u6587\u677E"},{n:"\u5F00\u5FC3\u9EBB\u82B1",v:"\u5F00\u5FC3\u9EBB\u82B1"},{n:"\u5C4C\u4E1D\u7537\u58EB",v:"\u5C4C\u4E1D\u7537\u58EB"},{n:"\u559C\u5267\u7EFC\u827A",v:"\u559C\u5267\u7EFC\u827A"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u76F8\u58F0\u5C0F\u54C1",v:"4K\u76F8\u58F0\u5C0F\u54C1"},{n:"4K\u5355\u53E3\u76F8\u58F0",v:"4K\u5355\u53E3\u76F8\u58F0"},{n:"4K\u7FA4\u53E3\u76F8\u58F0",v:"4K\u7FA4\u53E3\u76F8\u58F0"},{n:"4K\u5FB7\u4E91\u793E",v:"4K\u5FB7\u4E91\u793E"},{n:"4K\u9752\u66F2\u793E",v:"4K\u9752\u66F2\u793E"},{n:"4K\u90ED\u5FB7\u7EB2",v:"4K\u90ED\u5FB7\u7EB2"},{n:"4K\u5CB3\u4E91\u9E4F",v:"4K\u5CB3\u4E91\u9E4F"},{n:"4K\u66F9\u4E91\u91D1",v:"4K\u66F9\u4E91\u91D1"},{n:"4K\u8BC4\u4E66",v:"4K\u8BC4\u4E66"},{n:"4K\u5C0F\u66F2",v:"4K\u5C0F\u66F2"},{n:"4K\u4E8C\u4EBA\u8F6C",v:"4K\u4E8C\u4EBA\u8F6C"},{n:"4K\u6625\u665A\u5C0F\u54C1",v:"4K\u6625\u665A\u5C0F\u54C1"},{n:"4K\u8D75\u672C\u5C71",v:"4K\u8D75\u672C\u5C71"},{n:"4K\u9648\u4F69\u65AF",v:"4K\u9648\u4F69\u65AF"},{n:"4K\u51AF\u5DE9",v:"4K\u51AF\u5DE9"},{n:"4K\u5B8B\u5C0F\u5B9D",v:"4K\u5B8B\u5C0F\u5B9D"},{n:"4K\u8D75\u4E3D\u84C9",v:"4K\u8D75\u4E3D\u84C9"},{n:"4K\u90ED\u8FBE",v:"4K\u90ED\u8FBE"},{n:"4K\u6F58\u957F\u6C5F",v:"4K\u6F58\u957F\u6C5F"},{n:"4K\u90ED\u51AC\u4E34",v:"4K\u90ED\u51AC\u4E34"},{n:"4K\u4E25\u987A\u5F00",v:"4K\u4E25\u987A\u5F00"},{n:"4K\u6587\u677E",v:"4K\u6587\u677E"},{n:"4K\u5F00\u5FC3\u9EBB\u82B1",v:"4K\u5F00\u5FC3\u9EBB\u82B1"},{n:"4K\u5C4C\u4E1D\u7537\u58EB",v:"4K\u5C4C\u4E1D\u7537\u58EB"},{n:"4K\u559C\u5267\u7EFC\u827A",v:"4K\u559C\u5267\u7EFC\u827A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u513F\u7AE5\u5C11\u513F:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u513F\u7AE5\u6559\u80B2",v:"\u513F\u7AE5\u6559\u80B2"},{n:"\u513F\u7AE5\u6B4C\u66F2",v:"\u513F\u7AE5\u6B4C\u66F2"},{n:"\u513F\u7AE5\u821E\u8E48",v:"\u513F\u7AE5\u821E\u8E48"},{n:"\u513F\u7AE5\u6210\u8BED\u6545\u4E8B",v:"\u513F\u7AE5\u6210\u8BED\u6545\u4E8B"},{n:"\u513F\u7AE5\u97F3\u4E50",v:"\u513F\u7AE5\u97F3\u4E50"},{n:"\u513F\u7AE5 MV",v:"\u513F\u7AE5 MV"},{n:"\u8D1D\u4E50\u864E",v:"\u8D1D\u4E50\u864E"},{n:"\u5B9D\u5B9D\u5DF4\u58EB",v:"\u5B9D\u5B9D\u5DF4\u58EB"},{n:"\u513F\u6B4C\u591A\u591A",v:"\u513F\u6B4C\u591A\u591A"},{n:"\u8D85\u7EA7\u5B9D\u8D1DJOJO",v:"\u8D85\u7EA7\u5B9D\u8D1DJOJO"},{n:"\u513F\u7AE5\u597D\u58F0\u97F3",v:"\u513F\u7AE5\u597D\u58F0\u97F3"},{n:"3-6\u5C81\u76CA\u667A\u52A8\u753B",v:"3-6\u5C81\u76CA\u667A\u52A8\u753B"},{n:"6-8\u5C81\u5C11\u513F\u9891\u9053",v:"6-8\u5C81\u5C11\u513F\u9891\u9053"},{n:"\u5B66\u800C\u601D\u8BFE\u7A0B",v:"\u5B66\u800C\u601D\u8BFE\u7A0B"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u513F\u7AE5",v:"4K\u513F\u7AE5"},{n:"4K\u513F\u7AE5\u6559\u80B2",v:"4K\u513F\u7AE5\u6559\u80B2"},{n:"4K\u513F\u7AE5\u6B4C\u66F2",v:"4K\u513F\u7AE5\u6B4C\u66F2"},{n:"4K\u513F\u7AE5\u821E\u8E48",v:"4K\u513F\u7AE5\u821E\u8E48"},{n:"4K\u513F\u7AE5\u6210\u8BED\u6545\u4E8B",v:"4K\u513F\u7AE5\u6210\u8BED\u6545\u4E8B"},{n:"4K\u513F\u7AE5\u97F3\u4E50",v:"4K\u513F\u7AE5\u97F3\u4E50"},{n:"4K\u513F\u7AE5 MV",v:"4K\u513F\u7AE5 MV"},{n:"4K\u8D1D\u4E50\u864E",v:"4K\u8D1D\u4E50\u864E"},{n:"4K\u5B9D\u5B9D\u5DF4\u58EB",v:"4K\u5B9D\u5B9D\u5DF4\u58EB"},{n:"4K\u513F\u6B4C\u591A\u591A",v:"4K\u513F\u6B4C\u591A\u591A"},{n:"4K\u8D85\u7EA7\u5B9D\u8D1DJOJO",v:"4K\u8D85\u7EA7\u5B9D\u8D1DJOJO"},{n:"4K\u513F\u7AE5\u597D\u58F0\u97F3",v:"4K\u513F\u7AE5\u597D\u58F0\u97F3"},{n:"4K 3-6\u5C81\u76CA\u667A\u52A8\u753B",v:"4K 3-6\u5C81\u76CA\u667A\u52A8\u753B"},{n:"4K 6-8\u5C81\u5C11\u513F\u9891\u9053",v:"4K 6-8\u5C81\u5C11\u513F\u9891\u9053"},{n:"4K\u5B66\u800C\u601D\u8BFE\u7A0B",v:"4K\u5B66\u800C\u601D\u8BFE\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u52A8\u7269\u4E16\u754C:[{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u52A8\u7269\u4E16\u754C",v:"\u52A8\u7269\u4E16\u754C"},{n:"4K\u52A8\u7269\u4E16\u754C",v:"4K\u52A8\u7269\u4E16\u754C"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u5531\u4F1A:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A",v:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A"},{n:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A",v:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A"},{n:"Beyond\u6F14\u5531\u4F1A",v:"Beyond\u6F14\u5531\u4F1A"},{n:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A",v:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A"},{n:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A",v:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A"},{n:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A",v:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A"},{n:"\u9ECE\u660E\u6F14\u5531\u4F1A",v:"\u9ECE\u660E\u6F14\u5531\u4F1A"},{n:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A",v:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A"},{n:"\u6734\u6811\u6F14\u5531\u4F1A",v:"\u6734\u6811\u6F14\u5531\u4F1A"},{n:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A",v:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A"},{n:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A",v:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A"},{n:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A",v:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A"},{n:"\u5B59\u6960\u6F14\u5531\u4F1A",v:"\u5B59\u6960\u6F14\u5531\u4F1A"},{n:"\u5F20\u5B87\u6F14\u5531\u4F1A",v:"\u5F20\u5B87\u6F14\u5531\u4F1A"},{n:"\u5468\u534E\u5065\u6F14\u5531\u4F1A",v:"\u5468\u534E\u5065\u6F14\u5531\u4F1A"},{n:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A",v:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A"},{n:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A",v:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A"},{n:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A",v:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A"},{n:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A",v:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A"},{n:"\u8BB8\u5D69\u6F14\u5531\u4F1A",v:"\u8BB8\u5D69\u6F14\u5531\u4F1A"},{n:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A",v:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A"},{n:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A",v:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A"},{n:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A",v:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A"},{n:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A",v:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A"},{n:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A",v:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A"},{n:"\u5218\u82E5\u82F1\u6F14\u5531\u4F1A",v:"\u5218\u82E5\u82F1\u6F14\u5531\u4F1A"},{n:"\u5468\u6DF1\u6F14\u5531\u4F1A",v:"\u5468\u6DF1\u6F14\u5531\u4F1A"},{n:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A",v:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A"},{n:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A",v:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A"},{n:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A",v:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A"},{n:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A",v:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A"},{n:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A",v:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A"},{n:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A",v:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A"},{n:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A",v:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A"},{n:"\u5F20\u9753\u9896\u6F14\u5531\u4F1A",v:"\u5F20\u9753\u9896\u6F14\u5531\u4F1A"},{n:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A",v:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A"},{n:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A",v:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A"},{n:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A",v:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A"},{n:"\u9676\u5586\u6F14\u5531\u4F1A",v:"\u9676\u5586\u6F14\u5531\u4F1A"},{n:"\u80E1\u590F\u6F14\u5531\u4F1A",v:"\u80E1\u590F\u6F14\u5531\u4F1A"},{n:"\u674E\u7389\u521A\u6F14\u5531\u4F1A",v:"\u674E\u7389\u521A\u6F14\u5531\u4F1A"},{n:"\u5F26\u5B50\u6F14\u5531\u4F1A",v:"\u5F26\u5B50\u6F14\u5531\u4F1A"},{n:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A",v:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A"},{n:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A",v:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A"},{n:"\u9E7F\u6657\u6F14\u5531\u4F1A",v:"\u9E7F\u6657\u6F14\u5531\u4F1A"},{n:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A",v:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A"},{n:"\u8BB8\u5DCD\u6F14\u5531\u4F1A",v:"\u8BB8\u5DCD\u6F14\u5531\u4F1A"},{n:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A",v:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A"},{n:"\u8D75\u96F7\u6F14\u5531\u4F1A",v:"\u8D75\u96F7\u6F14\u5531\u4F1A"},{n:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A",v:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A"},{n:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A",v:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A"},{n:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A",v:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A"},{n:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A",v:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A"},{n:"SHE\u6F14\u5531\u4F1A",v:"SHE\u6F14\u5531\u4F1A"},{n:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A",v:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A"},{n:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A",v:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A"},{n:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A",v:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A"},{n:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A",v:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A"},{n:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A",v:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A"},{n:"\u674E\u5065\u6F14\u5531\u4F1A",v:"\u674E\u5065\u6F14\u5531\u4F1A"},{n:"\u534E\u6668\u5B87\u6F14\u5531\u4F1A",v:"\u534E\u6668\u5B87\u6F14\u5531\u4F1A"},{n:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A",v:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A"},{n:"\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A",v:"\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A"},{n:"TFBOYS\u6F14\u5531\u4F1A",v:"TFBOYS\u6F14\u5531\u4F1A"},{n:"\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A",v:"\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A"},{n:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A",v:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A"},{n:"\u738B\u6E90\u6F14\u5531\u4F1A",v:"\u738B\u6E90\u6F14\u5531\u4F1A"},{n:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A",v:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A"},{n:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A",v:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A"},{n:"\u5F20\u6770\u6F14\u5531\u4F1A",v:"\u5F20\u6770\u6F14\u5531\u4F1A"},{n:"\u738B\u83F2\u6F14\u5531\u4F1A",v:"\u738B\u83F2\u6F14\u5531\u4F1A"},{n:"\u4F0D\u4F70\u6F14\u5531\u4F1A",v:"\u4F0D\u4F70\u6F14\u5531\u4F1A"},{n:"\u5200\u90CE\u6F14\u5531\u4F1A",v:"\u5200\u90CE\u6F14\u5531\u4F1A"},{n:"\u8349\u8722\u6F14\u5531\u4F1A",v:"\u8349\u8722\u6F14\u5531\u4F1A"},{n:"\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A",v:"\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A"},{n:"\u6881\u9759\u8339\u6F14\u5531\u4F1A",v:"\u6881\u9759\u8339\u6F14\u5531\u4F1A"},{n:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A",v:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A"},{n:"\u8521\u5F90\u5764\u6F14\u5531\u4F1A",v:"\u8521\u5F90\u5764\u6F14\u5531\u4F1A"},{n:"\u5468\u6167\u654F\u6F14\u5531\u4F1A",v:"\u5468\u6167\u654F\u6F14\u5531\u4F1A"},{n:"\u674E\u5723\u6770\u6F14\u5531\u4F1A",v:"\u674E\u5723\u6770\u6F14\u5531\u4F1A"},{n:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A",v:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A"},{n:"\u8427\u656C\u817E\u6F14\u5531\u4F1A",v:"\u8427\u656C\u817E\u6F14\u5531\u4F1A"},{n:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A",v:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A"},{n:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A",v:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A"},{n:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A",v:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A"},{n:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A",v:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A"},{n:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A",v:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A"},{n:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A",v:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A"},{n:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A",v:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A"},{n:"\u738B\u5609\u5C14\u6F14\u5531\u4F1A",v:"\u738B\u5609\u5C14\u6F14\u5531\u4F1A"},{n:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A",v:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A"},{n:"\u5F20\u656C\u8F69\u6F14\u5531\u4F1A",v:"\u5F20\u656C\u8F69\u6F14\u5531\u4F1A"},{n:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A",v:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A"},{n:"\u963F\u675C\u6F14\u5531\u4F1A",v:"\u963F\u675C\u6F14\u5531\u4F1A"},{n:"\u90ED\u9759\u6F14\u5531\u4F1A",v:"\u90ED\u9759\u6F14\u5531\u4F1A"},{n:"\u5D14\u5065\u6F14\u5531\u4F1A",v:"\u5D14\u5065\u6F14\u5531\u4F1A"},{n:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A",v:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A"},{n:"\u6C6A\u5CF0\u6F14\u5531\u4F1A",v:"\u6C6A\u5CF0\u6F14\u5531\u4F1A"},{n:"\u90A3\u82F1\u6F14\u5531\u4F1A",v:"\u90A3\u82F1\u6F14\u5531\u4F1A"},{n:"\u6768\u5764\u6F14\u5531\u4F1A",v:"\u6768\u5764\u6F14\u5531\u4F1A"},{n:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A",v:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A"},{n:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A",v:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A"},{n:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A",v:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A"},{n:"\u97E9\u7EA2\u6F14\u5531\u4F1A",v:"\u97E9\u7EA2\u6F14\u5531\u4F1A"},{n:"\u9F50\u79E6\u6F14\u5531\u4F1A",v:"\u9F50\u79E6\u6F14\u5531\u4F1A"},{n:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A",v:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A"},{n:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A",v:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A"},{n:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A",v:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A"},{n:"\u4E01\u5F53\u6F14\u5531\u4F1A",v:"\u4E01\u5F53\u6F14\u5531\u4F1A"},{n:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A",v:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A"},{n:"\u674E\u739F\u6F14\u5531\u4F1A",v:"\u674E\u739F\u6F14\u5531\u4F1A"},{n:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A",v:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A"},{n:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A",v:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A"},{n:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A",v:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A"},{n:"\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A",v:"\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A"},{n:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A",v:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A"},{n:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A",v:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A"},{n:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A",v:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A"},{n:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A",v:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A"},{n:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A",v:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A"},{n:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A",v:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A"},{n:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A",v:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A"},{n:"\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"By2\u6F14\u5531\u4F1A",v:"By2\u6F14\u5531\u4F1A"},{n:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A",v:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A"},{n:"\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A",v:"\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A"},{n:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A",v:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A"},{n:"\u8D39\u7FD4\u6F14\u5531\u4F1A",v:"\u8D39\u7FD4\u6F14\u5531\u4F1A"},{n:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A",v:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A"},{n:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A",v:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A"},{n:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A",v:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A"},{n:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A",v:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A"},{n:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A",v:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A"},{n:"\u5149\u826F\u6F14\u5531\u4F1A",v:"\u5149\u826F\u6F14\u5531\u4F1A"},{n:"\u7530\u9707\u6F14\u5531\u4F1A",v:"\u7530\u9707\u6F14\u5531\u4F1A"},{n:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A",v:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A"},{n:"\u8C2D\u6676\u6F14\u5531\u4F1A",v:"\u8C2D\u6676\u6F14\u5531\u4F1A"},{n:"\u738B\u6770\u6F14\u5531\u4F1A",v:"\u738B\u6770\u6F14\u5531\u4F1A"},{n:"\u7FBD\u6CC9\u6F14\u5531\u4F1A",v:"\u7FBD\u6CC9\u6F14\u5531\u4F1A"},{n:"\u91D1\u6C60\u6F14\u5531\u4F1A",v:"\u91D1\u6C60\u6F14\u5531\u4F1A"},{n:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A",v:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A"},{n:"\u6234\u8343\u6F14\u5531\u4F1A",v:"\u6234\u8343\u6F14\u5531\u4F1A"},{n:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A",v:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A"},{n:"\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A",v:"\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A"},{n:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A",v:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A"},{n:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A",v:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A"},{n:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A",v:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A"},{n:"BIGBANG\u6F14\u5531\u4F1A",v:"BIGBANG\u6F14\u5531\u4F1A"},{n:"LadyGaga\u6F14\u5531\u4F1A",v:"LadyGaga\u6F14\u5531\u4F1A"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A"},{n:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A",v:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A"},{n:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A",v:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A"},{n:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A",v:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A"},{n:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A",v:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A"},{n:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u6F14\u5531\u4F1A",v:"4K\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6770\u4F26\u6F14\u5531\u4F1A",v:"4K\u5468\u6770\u4F26\u6F14\u5531\u4F1A"},{n:"4K\u9648\u5955\u8FC5\u6F14\u5531\u4F1A",v:"4K\u9648\u5955\u8FC5\u6F14\u5531\u4F1A"},{n:"4 KBeyond\u6F14\u5531\u4F1A",v:"4 KBeyond\u6F14\u5531\u4F1A"},{n:"4K\u5218\u5FB7\u534E\u6F14\u5531\u4F1A",v:"4K\u5218\u5FB7\u534E\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A",v:"4K\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A",v:"4K\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A"},{n:"4K\u9ECE\u660E\u6F14\u5531\u4F1A",v:"4K\u9ECE\u660E\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5B97\u76DB\u6F14\u5531\u4F1A",v:"4K\u674E\u5B97\u76DB\u6F14\u5531\u4F1A"},{n:"4K\u9093\u4E3D\u541B\u6F14\u5531\u4F1A",v:"4K\u9093\u4E3D\u541B\u6F14\u5531\u4F1A"},{n:"4K\u6734\u6811\u6F14\u5531\u4F1A",v:"4K\u6734\u6811\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5B50\u7965\u6F14\u5531\u4F1A",v:"4K\u6797\u5B50\u7965\u6F14\u5531\u4F1A"},{n:"4K\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A",v:"4K\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A",v:"4K\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A"},{n:"4K\u5B59\u6960\u6F14\u5531\u4F1A",v:"4K\u5B59\u6960\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u5B87\u6F14\u5531\u4F1A",v:"4K\u5F20\u5B87\u6F14\u5531\u4F1A"},{n:"4K\u5468\u534E\u5065\u6F14\u5531\u4F1A",v:"4K\u5468\u534E\u5065\u6F14\u5531\u4F1A"},{n:"4K\u8521\u4F9D\u6797\u6F14\u5531\u4F1A",v:"4K\u8521\u4F9D\u6797\u6F14\u5531\u4F1A"},{n:"4K\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A",v:"4K\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A"},{n:"4K\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A",v:"4K\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A"},{n:"4K\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A",v:"4K\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A"},{n:"4K\u8BB8\u5D69\u6F14\u5531\u4F1A",v:"4K\u8BB8\u5D69\u6F14\u5531\u4F1A"},{n:"4K\u6234\u4F69\u59AE\u6F14\u5531\u4F1A",v:"4K\u6234\u4F69\u59AE\u6F14\u5531\u4F1A"},{n:"4K\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A",v:"4K\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A",v:"4K\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A"},{n:"4K\u8521\u5065\u96C5\u6F14\u5531\u4F1A",v:"4K\u8521\u5065\u96C5\u6F14\u5531\u4F1A"},{n:"4K\u83AB\u6587\u851A\u6F14\u5531\u4F1A",v:"4K\u83AB\u6587\u851A\u6F14\u5531\u4F1A"},{n:"4K\u5218\u82E5\u82F1\u6F14\u5531\u4F1A",v:"4K\u5218\u82E5\u82F1\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6DF1\u6F14\u5531\u4F1A",v:"4K\u5468\u6DF1\u6F14\u5531\u4F1A"},{n:"4K\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A",v:"4K\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A"},{n:"4K\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A",v:"4K\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5B87\u6625\u6F14\u5531\u4F1A",v:"4K\u674E\u5B87\u6625\u6F14\u5531\u4F1A"},{n:"4K\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A",v:"4K\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A",v:"4K\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A"},{n:"4K\u80E1\u5F66\u658C\u6F14\u5531\u4F1A",v:"4K\u80E1\u5F66\u658C\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5343\u5B05\u6F14\u5531\u4F1A",v:"4K\u6768\u5343\u5B05\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u9753\u9896\u6F14\u5531\u4F1A",v:"4K\u5F20\u9753\u9896\u6F14\u5531\u4F1A"},{n:"4K\u674E\u8363\u6D69\u6F14\u5531\u4F1A",v:"4K\u674E\u8363\u6D69\u6F14\u5531\u4F1A"},{n:"4K\u6768\u4E1E\u7433\u6F14\u5531\u4F1A",v:"4K\u6768\u4E1E\u7433\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A",v:"4K\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A"},{n:"4K\u9676\u5586\u6F14\u5531\u4F1A",v:"4K\u9676\u5586\u6F14\u5531\u4F1A"},{n:"4K\u80E1\u590F\u6F14\u5531\u4F1A",v:"4K\u80E1\u590F\u6F14\u5531\u4F1A"},{n:"4K\u674E\u7389\u521A\u6F14\u5531\u4F1A",v:"4K\u674E\u7389\u521A\u6F14\u5531\u4F1A"},{n:"4K\u5F26\u5B50\u6F14\u5531\u4F1A",v:"4K\u5F26\u5B50\u6F14\u5531\u4F1A"},{n:"4K\u9648\u5C0F\u6625\u6F14\u5531\u4F1A",v:"4K\u9648\u5C0F\u6625\u6F14\u5531\u4F1A"},{n:"4K\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A",v:"4K\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A"},{n:"4K\u9E7F\u6657\u6F14\u5531\u4F1A",v:"4K\u9E7F\u6657\u6F14\u5531\u4F1A"},{n:"4K\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A",v:"4K\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A"},{n:"4K\u8BB8\u5DCD\u6F14\u5531\u4F1A",v:"4K\u8BB8\u5DCD\u6F14\u5531\u4F1A"},{n:"4K\u6797\u4FCA\u6770\u6F14\u5531\u4F1A",v:"4K\u6797\u4FCA\u6770\u6F14\u5531\u4F1A"},{n:"4K\u8D75\u96F7\u6F14\u5531\u4F1A",v:"4K\u8D75\u96F7\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A",v:"4K\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A"},{n:"4K\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A",v:"4K\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A"},{n:"4K\u5BB9\u7956\u513F\u6F14\u5531\u4F1A",v:"4K\u5BB9\u7956\u513F\u6F14\u5531\u4F1A"},{n:"4K\u5468\u4F20\u96C4\u6F14\u5531\u4F1A",v:"4K\u5468\u4F20\u96C4\u6F14\u5531\u4F1A"},{n:"4K SHE\u6F14\u5531\u4F1A",v:"4K SHE\u6F14\u5531\u4F1A"},{n:"4K\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A",v:"4K\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A"},{n:"4K\u4E94\u6708\u5929\u6F14\u5531\u4F1A",v:"4K\u4E94\u6708\u5929\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u56FD\u8363\u6F14\u5531\u4F1A",v:"4K\u5F20\u56FD\u8363\u6F14\u5531\u4F1A"},{n:"4K\u6885\u8273\u82B3\u6F14\u5531\u4F1A",v:"4K\u6885\u8273\u82B3\u6F14\u5531\u4F1A"},{n:"4K\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A",v:"4K\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5065\u6F14\u5531\u4F1A",v:"4K\u674E\u5065\u6F14\u5531\u4F1A"},{n:"4K\u534E\u6668\u5B87\u6F14\u5531\u4F1A",v:"4K\u534E\u6668\u5B87\u6F14\u5531\u4F1A"},{n:"4K\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A",v:"4K\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A"},{n:"4K\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A",v:"4K\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A"},{n:"4K TFBOYS\u6F14\u5531\u4F1A",v:"4K TFBOYS\u6F14\u5531\u4F1A"},{n:"4K\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A",v:"4K\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A"},{n:"4K\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A",v:"4K\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A"},{n:"4K\u738B\u6E90\u6F14\u5531\u4F1A",v:"4K\u738B\u6E90\u6F14\u5531\u4F1A"},{n:"4K\u7530\u99A5\u7504\u6F14\u5531\u4F1A",v:"4K\u7530\u99A5\u7504\u6F14\u5531\u4F1A"},{n:"4K\u5C0F\u864E\u961F\u6F14\u5531\u4F1A",v:"4K\u5C0F\u864E\u961F\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u6770\u6F14\u5531\u4F1A",v:"4K\u5F20\u6770\u6F14\u5531\u4F1A"},{n:"4K\u738B\u83F2\u6F14\u5531\u4F1A",v:"4K\u738B\u83F2\u6F14\u5531\u4F1A"},{n:"4K\u4F0D\u4F70\u6F14\u5531\u4F1A",v:"4K\u4F0D\u4F70\u6F14\u5531\u4F1A"},{n:"4K\u5200\u90CE\u6F14\u5531\u4F1A",v:"4K\u5200\u90CE\u6F14\u5531\u4F1A"},{n:"4K\u8349\u8722\u6F14\u5531\u4F1A",v:"4K\u8349\u8722\u6F14\u5531\u4F1A"},{n:"4K\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A",v:"4K\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A"},{n:"4K\u6881\u9759\u8339\u6F14\u5531\u4F1A",v:"4K\u6881\u9759\u8339\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5BA5\u5609\u6F14\u5531\u4F1A",v:"4K\u6797\u5BA5\u5609\u6F14\u5531\u4F1A"},{n:"4K\u8521\u5F90\u5764\u6F14\u5531\u4F1A",v:"4K\u8521\u5F90\u5764\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6167\u654F\u6F14\u5531\u4F1A",v:"4K\u5468\u6167\u654F\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5723\u6770\u6F14\u5531\u4F1A",v:"4K\u674E\u5723\u6770\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A",v:"4K\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A"},{n:"4K\u8427\u656C\u817E\u6F14\u5531\u4F1A",v:"4K\u8427\u656C\u817E\u6F14\u5531\u4F1A"},{n:"4K\u5468\u7B14\u7545\u6F14\u5531\u4F1A",v:"4K\u5468\u7B14\u7545\u6F14\u5531\u4F1A"},{n:"4K\u7126\u8FC8\u5947\u6F14\u5531\u4F1A",v:"4K\u7126\u8FC8\u5947\u6F14\u5531\u4F1A"},{n:"4K\u5C24\u957F\u9756\u6F14\u5531\u4F1A",v:"4K\u5C24\u957F\u9756\u6F14\u5531\u4F1A"},{n:"4K\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A",v:"4K\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A",v:"4K\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A"},{n:"4K\u9648\u6167\u5A34\u6F14\u5531\u4F1A",v:"4K\u9648\u6167\u5A34\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u827A\u5174\u6F14\u5531\u4F1A",v:"4K\u5F20\u827A\u5174\u6F14\u5531\u4F1A"},{n:"4K\u738B\u5609\u5C14\u6F14\u5531\u4F1A",v:"4K\u738B\u5609\u5C14\u6F14\u5531\u4F1A"},{n:"4K\u5218\u5BAA\u534E\u6F14\u5531\u4F1A",v:"4K\u5218\u5BAA\u534E\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u656C\u8F69\u6F14\u5531\u4F1A",v:"4K\u5F20\u656C\u8F69\u6F14\u5531\u4F1A"},{n:"4K\u674E\u514B\u52E4\u6F14\u5531\u4F1A",v:"4K\u674E\u514B\u52E4\u6F14\u5531\u4F1A"},{n:"4K\u963F\u675C\u6F14\u5531\u4F1A",v:"4K\u963F\u675C\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u9759\u6F14\u5531\u4F1A",v:"4K\u90ED\u9759\u6F14\u5531\u4F1A"},{n:"4K\u5D14\u5065\u6F14\u5531\u4F1A",v:"4K\u5D14\u5065\u6F14\u5531\u4F1A"},{n:"4K\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A",v:"4K\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A"},{n:"4K\u6C6A\u5CF0\u6F14\u5531\u4F1A",v:"4K\u6C6A\u5CF0\u6F14\u5531\u4F1A"},{n:"4K\u90A3\u82F1\u6F14\u5531\u4F1A",v:"4K\u90A3\u82F1\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5764\u6F14\u5531\u4F1A",v:"4K\u6768\u5764\u6F14\u5531\u4F1A"},{n:"4K\u53F6\u5029\u6587\u6F14\u5531\u4F1A",v:"4K\u53F6\u5029\u6587\u6F14\u5531\u4F1A"},{n:"4K\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A",v:"4K\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A",v:"4K\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A"},{n:"4K\u97E9\u7EA2\u6F14\u5531\u4F1A",v:"4K\u97E9\u7EA2\u6F14\u5531\u4F1A"},{n:"4K\u9F50\u79E6\u6F14\u5531\u4F1A",v:"4K\u9F50\u79E6\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u96E8\u751F\u6F14\u5531\u4F1A",v:"4K\u5F20\u96E8\u751F\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A",v:"4K\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A",v:"4K\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A"},{n:"4K\u4E01\u5F53\u6F14\u5531\u4F1A",v:"4K\u4E01\u5F53\u6F14\u5531\u4F1A"},{n:"4K\u90D1\u667A\u5316\u6F14\u5531\u4F1A",v:"4K\u90D1\u667A\u5316\u6F14\u5531\u4F1A"},{n:"4K\u674E\u739F\u6F14\u5531\u4F1A",v:"4K\u674E\u739F\u6F14\u5531\u4F1A"},{n:"4K\u8C22\u9706\u950B\u6F14\u5531\u4F1A",v:"4K\u8C22\u9706\u950B\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A",v:"4K\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A"},{n:"4K\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A",v:"4K\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A"},{n:"4K\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A",v:"4K\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A"},{n:"4K\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A",v:"4K\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A"},{n:"4K\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A",v:"4K\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A"},{n:"4K\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A",v:"4K\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A"},{n:"4K\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A",v:"4K\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A"},{n:"4K\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A",v:"4K\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A"},{n:"4K\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A",v:"4K\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A"},{n:"4K\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A",v:"4K\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A"},{n:"4K\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K By2\u6F14\u5531\u4F1A",v:"4K By2\u6F14\u5531\u4F1A"},{n:"4K\u90C1\u53EF\u552F\u6F14\u5531\u4F1A",v:"4K\u90C1\u53EF\u552F\u6F14\u5531\u4F1A"},{n:"4K\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A",v:"4K\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A"},{n:"4K\u8D39\u7389\u6E05\u6F14\u5531\u4F1A",v:"4K\u8D39\u7389\u6E05\u6F14\u5531\u4F1A"},{n:"4K\u8D39\u7FD4\u6F14\u5531\u4F1A",v:"4K\u8D39\u7FD4\u6F14\u5531\u4F1A"},{n:"4K\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A",v:"4K\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A",v:"4K\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A"},{n:"4K\u65B9\u5927\u540C\u6F14\u5531\u4F1A",v:"4K\u65B9\u5927\u540C\u6F14\u5531\u4F1A"},{n:"4K\u5434\u514B\u7FA4\u6F14\u5531\u4F1A",v:"4K\u5434\u514B\u7FA4\u6F14\u5531\u4F1A"},{n:"4K\u7F57\u5927\u4F51\u6F14\u5531\u4F1A",v:"4K\u7F57\u5927\u4F51\u6F14\u5531\u4F1A"},{n:"4K\u5149\u826F\u6F14\u5531\u4F1A",v:"4K\u5149\u826F\u6F14\u5531\u4F1A"},{n:"4K\u7530\u9707\u6F14\u5531\u4F1A",v:"4K\u7530\u9707\u6F14\u5531\u4F1A"},{n:"4K\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A",v:"4K\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u6676\u6F14\u5531\u4F1A",v:"4K\u8C2D\u6676\u6F14\u5531\u4F1A"},{n:"4K\u738B\u6770\u6F14\u5531\u4F1A",v:"4K\u738B\u6770\u6F14\u5531\u4F1A"},{n:"4K\u7FBD\u6CC9\u6F14\u5531\u4F1A",v:"4K\u7FBD\u6CC9\u6F14\u5531\u4F1A"},{n:"4K\u91D1\u6C60\u6F14\u5531\u4F1A",v:"4K\u91D1\u6C60\u6F14\u5531\u4F1A"},{n:"4K\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A",v:"4K\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A"},{n:"4K\u6234\u8343\u6F14\u5531\u4F1A",v:"4K\u6234\u8343\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A",v:"4K\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A"},{n:"4K\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A",v:"4K\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A"},{n:"4K\u738B\u529B\u5B8F\u6F14\u5531\u4F1A",v:"4K\u738B\u529B\u5B8F\u6F14\u5531\u4F1A"},{n:"4K\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A",v:"4K\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A"},{n:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A",v:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A"},{n:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A",v:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A"},{n:"4K\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A",v:"4K\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A"},{n:"4K BIGBANG\u6F14\u5531\u4F1A",v:"4K BIGBANG\u6F14\u5531\u4F1A"},{n:"4K LadyGaga\u6F14\u5531\u4F1A",v:"4K LadyGaga\u6F14\u5531\u4F1A"},{n:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A",v:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A"},{n:"4K\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A",v:"4K\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A"},{n:"4K\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A",v:"4K\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A"},{n:"4K\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A",v:"4K\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A"},{n:"4K\u5E03\u5170\u59AE\u6F14\u5531\u4F1A",v:"4K\u5E03\u5170\u59AE\u6F14\u5531\u4F1A"},{n:"4K\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8BFE\u7A0B\u8F85\u5BFC:[{key:"tida",name:"\u82CF\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidb",name:"\u4EBA\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidc",name:"\u6CAA\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidd",name:"\u5317\u5E08\u5927\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98CE\u666F:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u98CE\u666F",v:"\u98CE\u666F"},{n:"\u6FB3\u95E8\u98CE\u666F",v:"\u6FB3\u95E8\u98CE\u666F"},{n:"\u5B89\u5FBD\u98CE\u666F",v:"\u5B89\u5FBD\u98CE\u666F"},{n:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F",v:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F"},{n:"\u5317\u4EAC\u98CE\u666F",v:"\u5317\u4EAC\u98CE\u666F"},{n:"\u91CD\u5E86\u98CE\u666F",v:"\u91CD\u5E86\u98CE\u666F"},{n:"\u8349\u539F\u98CE\u666F",v:"\u8349\u539F\u98CE\u666F"},{n:"\u5927\u6D77\u98CE\u666F",v:"\u5927\u6D77\u98CE\u666F"},{n:"\u798F\u5EFA\u98CE\u666F",v:"\u798F\u5EFA\u98CE\u666F"},{n:"\u5E7F\u4E1C\u98CE\u666F",v:"\u5E7F\u4E1C\u98CE\u666F"},{n:"\u5E7F\u897F\u98CE\u666F",v:"\u5E7F\u897F\u98CE\u666F"},{n:"\u8D35\u5DDE\u98CE\u666F",v:"\u8D35\u5DDE\u98CE\u666F"},{n:"\u7518\u8083\u98CE\u666F",v:"\u7518\u8083\u98CE\u666F"},{n:"\u6D77\u5357\u98CE\u666F",v:"\u6D77\u5357\u98CE\u666F"},{n:"\u6CB3\u5317\u98CE\u666F",v:"\u6CB3\u5317\u98CE\u666F"},{n:"\u6CB3\u5357\u98CE\u666F",v:"\u6CB3\u5357\u98CE\u666F"},{n:"\u6E56\u5317\u98CE\u666F",v:"\u6E56\u5317\u98CE\u666F"},{n:"\u6E56\u5357\u98CE\u666F",v:"\u6E56\u5357\u98CE\u666F"},{n:"\u9ED1\u9F99\u6C5F\u98CE\u666F",v:"\u9ED1\u9F99\u6C5F\u98CE\u666F"},{n:"\u5409\u6797\u98CE\u666F",v:"\u5409\u6797\u98CE\u666F"},{n:"\u6C5F\u82CF\u98CE\u666F",v:"\u6C5F\u82CF\u98CE\u666F"},{n:"\u6C5F\u897F\u98CE\u666F",v:"\u6C5F\u897F\u98CE\u666F"},{n:"\u8FBD\u5B81\u98CE\u666F",v:"\u8FBD\u5B81\u98CE\u666F"},{n:"\u6C11\u5BBF\u98CE\u666F",v:"\u6C11\u5BBF\u98CE\u666F"},{n:"\u5185\u8499\u53E4\u98CE\u666F",v:"\u5185\u8499\u53E4\u98CE\u666F"},{n:"\u5B81\u590F\u98CE\u666F",v:"\u5B81\u590F\u98CE\u666F"},{n:"\u9752\u6D77\u98CE\u666F",v:"\u9752\u6D77\u98CE\u666F"},{n:"\u4E0A\u6D77\u98CE\u666F",v:"\u4E0A\u6D77\u98CE\u666F"},{n:"\u9655\u897F\u98CE\u666F",v:"\u9655\u897F\u98CE\u666F"},{n:"\u56DB\u5DDD\u98CE\u666F",v:"\u56DB\u5DDD\u98CE\u666F"},{n:"\u5C71\u897F\u98CE\u666F",v:"\u5C71\u897F\u98CE\u666F"},{n:"\u5C71\u4E1C\u98CE\u666F",v:"\u5C71\u4E1C\u98CE\u666F"},{n:"\u5929\u6D25\u98CE\u666F",v:"\u5929\u6D25\u98CE\u666F"},{n:"\u53F0\u6E7E\u98CE\u666F",v:"\u53F0\u6E7E\u98CE\u666F"},{n:"\u5929\u7A7A\u98CE\u666F",v:"\u5929\u7A7A\u98CE\u666F"},{n:"\u897F\u6E56\u98CE\u666F",v:"\u897F\u6E56\u98CE\u666F"},{n:"\u897F\u85CF\u98CE\u666F",v:"\u897F\u85CF\u98CE\u666F"},{n:"\u65B0\u7586\u98CE\u666F",v:"\u65B0\u7586\u98CE\u666F"},{n:"\u9999\u6E2F\u98CE\u666F",v:"\u9999\u6E2F\u98CE\u666F"},{n:"\u4E91\u5357\u98CE\u666F",v:"\u4E91\u5357\u98CE\u666F"},{n:"\u6D59\u6C5F\u98CE\u666F",v:"\u6D59\u6C5F\u98CE\u666F"},{n:"\u6CB3\u5357\u536B\u89C6\u56FD\u98CE",v:"\u6CB3\u5357\u536B\u89C6\u56FD\u98CE"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u98CE\u666F",v:"4K\u98CE\u666F"},{n:"4K\u6FB3\u95E8\u98CE\u666F",v:"4K\u6FB3\u95E8\u98CE\u666F"},{n:"4K\u5B89\u5FBD\u98CE\u666F",v:"4K\u5B89\u5FBD\u98CE\u666F"},{n:"4K\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F",v:"4K\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F"},{n:"4K\u5317\u4EAC\u98CE\u666F",v:"4K\u5317\u4EAC\u98CE\u666F"},{n:"4K\u91CD\u5E86\u98CE\u666F",v:"4K\u91CD\u5E86\u98CE\u666F"},{n:"4K\u8349\u539F\u98CE\u666F",v:"4K\u8349\u539F\u98CE\u666F"},{n:"4K\u5927\u6D77\u98CE\u666F",v:"4K\u5927\u6D77\u98CE\u666F"},{n:"4K\u798F\u5EFA\u98CE\u666F",v:"4K\u798F\u5EFA\u98CE\u666F"},{n:"4K\u5E7F\u4E1C\u98CE\u666F",v:"4K\u5E7F\u4E1C\u98CE\u666F"},{n:"4K\u5E7F\u897F\u98CE\u666F",v:"4K\u5E7F\u897F\u98CE\u666F"},{n:"4K\u8D35\u5DDE\u98CE\u666F",v:"4K\u8D35\u5DDE\u98CE\u666F"},{n:"4K\u7518\u8083\u98CE\u666F",v:"4K\u7518\u8083\u98CE\u666F"},{n:"4K\u6D77\u5357\u98CE\u666F",v:"4K\u6D77\u5357\u98CE\u666F"},{n:"4K\u6CB3\u5317\u98CE\u666F",v:"4K\u6CB3\u5317\u98CE\u666F"},{n:"4K\u6CB3\u5357\u98CE\u666F",v:"4K\u6CB3\u5357\u98CE\u666F"},{n:"4K\u6E56\u5317\u98CE\u666F",v:"4K\u6E56\u5317\u98CE\u666F"},{n:"4K\u6E56\u5357\u98CE\u666F",v:"4K\u6E56\u5357\u98CE\u666F"},{n:"4K\u9ED1\u9F99\u6C5F\u98CE\u666F",v:"4K\u9ED1\u9F99\u6C5F\u98CE\u666F"},{n:"4K\u5409\u6797\u98CE\u666F",v:"4K\u5409\u6797\u98CE\u666F"},{n:"4K\u6C5F\u82CF\u98CE\u666F",v:"4K\u6C5F\u82CF\u98CE\u666F"},{n:"4K\u6C5F\u897F\u98CE\u666F",v:"4K\u6C5F\u897F\u98CE\u666F"},{n:"4K\u8FBD\u5B81\u98CE\u666F",v:"4K\u8FBD\u5B81\u98CE\u666F"},{n:"4K\u6C11\u5BBF\u98CE\u666F",v:"4K\u6C11\u5BBF\u98CE\u666F"},{n:"4K\u5185\u8499\u53E4\u98CE\u666F",v:"4K\u5185\u8499\u53E4\u98CE\u666F"},{n:"4K\u5B81\u590F\u98CE\u666F",v:"4K\u5B81\u590F\u98CE\u666F"},{n:"4K\u9752\u6D77\u98CE\u666F",v:"4K\u9752\u6D77\u98CE\u666F"},{n:"4K\u4E0A\u6D77\u98CE\u666F",v:"4K\u4E0A\u6D77\u98CE\u666F"},{n:"4K\u9655\u897F\u98CE\u666F",v:"4K\u9655\u897F\u98CE\u666F"},{n:"4K\u56DB\u5DDD\u98CE\u666F",v:"4K\u56DB\u5DDD\u98CE\u666F"},{n:"4K\u5C71\u897F\u98CE\u666F",v:"4K\u5C71\u897F\u98CE\u666F"},{n:"4K\u5C71\u4E1C\u98CE\u666F",v:"4K\u5C71\u4E1C\u98CE\u666F"},{n:"4K\u5929\u6D25\u98CE\u666F",v:"4K\u5929\u6D25\u98CE\u666F"},{n:"4K\u53F0\u6E7E\u98CE\u666F",v:"4K\u53F0\u6E7E\u98CE\u666F"},{n:"4K\u5929\u7A7A\u98CE\u666F",v:"4K\u5929\u7A7A\u98CE\u666F"},{n:"4K\u897F\u6E56\u98CE\u666F",v:"4K\u897F\u6E56\u98CE\u666F"},{n:"4K\u897F\u85CF\u98CE\u666F",v:"4K\u897F\u85CF\u98CE\u666F"},{n:"4K\u65B0\u7586\u98CE\u666F",v:"4K\u65B0\u7586\u98CE\u666F"},{n:"4K\u9999\u6E2F\u98CE\u666F",v:"4K\u9999\u6E2F\u98CE\u666F"},{n:"4K\u4E91\u5357\u98CE\u666F",v:"4K\u4E91\u5357\u98CE\u666F"},{n:"4K\u6D59\u6C5F\u98CE\u666F",v:"4K\u6D59\u6C5F\u98CE\u666F"},{n:"4K\u6CB3\u5357\u536B\u89C6\u56FD\u98CE",v:"4K\u6CB3\u5357\u536B\u89C6\u56FD\u98CE"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}]},_7t=()=>[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8\u65F6\u957F",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}]});var iPe={};kt(iPe,{default:()=>NW});async function $7t(e=null,{force:t=!1}={}){if(!e)return Rc.hasCookie();let r=Date.now();return t||!Rc.hasCookie()||r-T7t>twn?(SW||(T7t=r,SW=(async()=>{try{let s=await AW(e);return s&&Rc.setCookie(s),Rc.hasCookie()}finally{SW=null}})()),SW):Rc.hasCookie()}async function Gw(e=null,{forceServerCookie:t=!1}={}){await $7t(e,{force:t}),!((Rc.hasCookie()||hl.isValid())&&jw.isValid()&&YDe.isValid())&&(TW||(TW=(async()=>{try{!Rc.hasCookie()&&!hl.isValid()&&await hl.refresh(),await Promise.all([q7t(),YDe.ensure()])}finally{TW=null}})()),await TW)}async function q7t(){if(jw.isValid())return jw.getKey();try{let e="";Rc.hasCookie()?e=Rc.getCookie():(hl.isValid()||await hl.refresh(),e=hl.getCookie()||"");let r=(await ye.get("https://api.bilibili.com/x/web-interface/nav",{timeout:JDe,headers:{"User-Agent":C_,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",...e?{Cookie:e}:{}}})).data?.data?.wbi_img;if(r?.img_url&&r?.sub_url){let n=o=>o.split("/").pop().split(".")[0],s=n(r.img_url)+n(r.sub_url),a=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52].map(o=>s[o]||"").join("").slice(0,32);if(a)return jw.setKey(a),a}}catch(e){console.error("\u83B7\u53D6 mixinKey \u5931\u8D25:",e.message)}return"tkk"}async function CW(e){let t=await q7t(),r=Math.floor(Date.now()/1e3),n={...e,wts:r},s=Object.keys(n).sort().map(a=>`${encodeURIComponent(a)}=${encodeURIComponent(n[a])}`).join("&"),i=XDe.default.createHash("md5").update(s+t).digest("hex");return F7t.default.stringify({...n,w_rid:i})}async function ePe({includeBuvid:e=!1}={}){let t="";if(Rc.hasCookie()?t=Rc.getCookie():(hl.isValid()||await hl.refresh(),t=hl.getCookie()||""),e){let r=await YDe.ensure();if(r){let n=/(?:^|;\s*)buvid3=/.test(t),s=/(?:^|;\s*)buvid4=/.test(t),i=r.split(";").map(a=>a.trim()).filter(a=>a.startsWith("buvid3=")?!n:a.startsWith("buvid4=")?!s:!0);i.length&&(t=[t,i.join("; ")].filter(Boolean).join("; "))}}return t}async function H7t(e=""){let t=encodeURIComponent(e||""),r=await ePe({includeBuvid:!0});return{headers:{"User-Agent":C_,Referer:`https://search.bilibili.com/all?keyword=${t}`,Origin:"https://search.bilibili.com",Accept:"application/json, text/plain, */*",...r?{Cookie:r}:{}}}}function xW(e){if(e==null||e==="")return 0;if(typeof e=="number")return Number.isFinite(e)?Math.max(0,e):0;if(typeof e!="string")return 0;let t=e.trim();if(!t)return 0;if(!t.includes(":"))return parseFloat(t)||0;let r=t.split(":");return r.length===2?(Number.parseInt(r[0],10)||0)*60+(parseFloat(r[1])||0):r.length===3?(Number.parseInt(r[0],10)||0)*3600+(Number.parseInt(r[1],10)||0)*60+(parseFloat(r[2])||0):0}function V7t(e){return!e||typeof e!="object"?"":e.bvid?e.bvid:e.bvid_str?e.bvid_str:e.aid?`av${e.aid}`:e.id?`av${e.id}`:""}function _wn(e={},t=0){let r=e.play??e.view??e.stat?.view??0,n=e.pubdate||e.created||e.ctime||0;return`${rPe(t)}|${G7t(r)}|${nPe(n)}`}function j7t(e,{encodeId:t=!0,meta:r={}}={}){let n=V7t(e);if(!n)return null;let s=xW(e.duration||e.length||0),i=K7t(e.pic||e.cover||e.first_frame||r.vod_pic),a=r.vod_remarks||_wn(e,s);return{vod_id:t?Awn(n,{vod_pic:i,vod_remarks:a||"\u65E0\u4FE1\u606F"}):n,vod_name:tPe(e.title||e.name||e.show_title),vod_pic:i,vod_remarks:a||"\u65E0\u4FE1\u606F",vod_time:nPe(e.pubdate||e.created||e.ctime),vod_author:e.author||e.owner?.name||e.upper?.name||"",vod_duration:z7t(s)}}function tPe(e){return String(e||"\u672A\u77E5\u6807\u9898").replace(dwn,"").replace(fwn,"").trim()||"\u672A\u77E5\u6807\u9898"}function Vw(e,t){if(!Array.isArray(e)||e.length===0)return null;let r=null,n=-1/0;for(let s of e){let i=t(s);i>n&&(r=s,n=i)}return r}function K7t(e){if(!e||typeof e!="string")return uwn;let t=e.trim();return t.startsWith("//")?t="https:"+t:t.startsWith("http://")&&(t=t.replace("http://","https://")),t.startsWith("https://")||(t="https://"+t),t}function G7t(e){if(!e&&e!==0)return"0";let t=Number.parseInt(e,10);return!Number.isFinite(t)||t<0?"0":t>=1e8?`${(t/1e8).toFixed(1)}\u4EBF`:t>=1e4?`${(t/1e4).toFixed(1)}\u4E07`:`${t}`}function z7t(e){if(!e&&e!==0)return"";let t=xW(e),r=Math.floor(t/3600),n=Math.floor(t%3600/60),s=Math.floor(t%60);return r>0?`${r}:${n.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`:`${n.toString().padStart(2,"0")}:${s.toString().padStart(2,"0")}`}function rPe(e){if(!e&&e!==0)return"";let t=xW(e),r=Math.floor(t/3600),n=Math.floor(t%3600/60),s=Math.floor(t%60);return r>0?`${r}\u65F6${n}\u5206${s}\u79D2`:n>0?`${n}\u5206${s}\u79D2`:`${s}\u79D2`}function nPe(e){if(!e)return"";let t=new Date(e*1e3),n=Math.floor((new Date-t)/1e3);return n<60?"\u521A\u521A":n<3600?`${Math.floor(n/60)}\u5206\u949F\u524D`:n<86400?`${Math.floor(n/3600)}\u5C0F\u65F6\u524D`:n<2592e3?`${Math.floor(n/86400)}\u5929\u524D`:`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Awn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function Ewn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function Y7t(e,t,r="auto",n="auto"){let s=e?.bvid||e?.bvid_str||"",i=e?.aid||e?.avid||"";return`${s}_${i}_${t}_${r}_${n}`}function ywn(e){let t=tPe(e?.title||e?.part||e?.name),r=rPe(e?.duration||e?.length||0);return r?`${t}(${r})`:t}function vwn(e,t="auto",r="auto"){let n=e?.cid||e?.pages?.[0]?.cid||"auto",s=e?.bvid||e?.bvid_str||"",i=e?.aid||e?.avid||"";return!s||!i?"":Y7t({bvid:s,aid:i},n,t,r)}function Q7t(e,t="auto",r="auto",n=""){if(!Array.isArray(e))return"";let s=String(n||""),i=new Set;return e.map(a=>{let o=a?.bvid||a?.bvid_str||"";if(!o||o===s||i.has(o))return"";i.add(o);let c=vwn(a,t,r);return c?`${ywn(a)}$${c}`:""}).filter(Boolean).join("#")}async function Swn(e,t="auto",r="auto"){try{let n=await Kw.get(`https://api.bilibili.com/x/web-interface/archive/related?bvid=${encodeURIComponent(e)}`);return Q7t(n.data?.data||[],t,r,e)}catch(n){return console.warn("\u83B7\u53D6\u76F8\u5173\u89C6\u9891\u5931\u8D25:",n.message),""}}async function Twn(e,t="auto",r="auto",n=""){try{if(!e)return"";let s=await CW({mid:e,pn:1,ps:30,tid:0,index:0,keyword:"",special_type:"",order:"pubdate",platform:"web",web_location:"333.1387",order_avoided:!0}),a=(await Kw.get(`https://api.bilibili.com/x/space/wbi/arc/search?${s}`,{headers:{Referer:`https://space.bilibili.com/${e}/video`,Origin:"https://space.bilibili.com"}})).data?.data?.list?.vlist||[];return Q7t(a,t,r,n)}catch(s){return console.warn("\u83B7\u53D6UP\u4E3B\u6295\u7A3F\u89C6\u9891\u5931\u8D25:",s.message),""}}async function W7t({bvid:e="",aid:t=""}={}){!e&&typeof t=="string"&&t.startsWith("av")&&(t=t.slice(2));let r=e?`bvid:${e}`:`aid:${t}`,n=vW.get(r);if(n)return n;let i=await CW(e?{bvid:e}:{aid:t}),o=(await Kw.get(`https://api.bilibili.com/x/web-interface/view?${i}`)).data?.data;if(!o)throw new ed("\u89C6\u9891\u4FE1\u606F\u83B7\u53D6\u5931\u8D25");return o.bvid&&vW.set(`bvid:${o.bvid}`,o),o.aid&&vW.set(`aid:${o.aid}`,o),vW.set(r,o)}async function Hw({aid:e,cid:t,qn:r=80,fnval:n=4048,force:s=!1}){let i=`${e}:${t}:${r}:${n}`,a=s?null:S7t.get(i);if(a)return a;let c=(await Kw.get(`https://api.bilibili.com/x/player/playurl?avid=${e}&cid=${t}&qn=${r}&fnval=${n}&fourk=1`)).data?.data||null;return c&&S7t.set(i,c),c}function qDe(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:`${t}://${e?.hostname||"127.0.0.1"}${e?.port?":"+e.port:""}`}function HDe(e){return e?.server&&typeof e.server.prefix=="string"?e.server.prefix.replace(/\/+$/,""):"/spider/bili_all/3"}function bwn(e=""){return/miraplay|mira|tvbox/i.test(String(e||""))}function X7t(e={}){let t=Number.parseFloat(e.duration||0)*1e3,r=t>0?t+swn:E7t;return Math.min(iwn,Math.max(E7t,r))}function J7t(){let e=Date.now();for(let[t,r]of b_.entries())(!r||r.expires<=e)&&b_.delete(t)}function Iwn(){if(b_.size<=y7t)return;let e=[...b_.entries()].sort((t,r)=>(t[1]?.lastAccess||t[1]?.created||0)-(r[1]?.lastAccess||r[1]?.created||0));for(;b_.size>y7t&&e.length;){let[t]=e.shift();b_.delete(t)}}function Rwn(){return XDe.default.randomBytes(16).toString("hex")}function Cwn(e={}){J7t();let t=Rwn(),r=Date.now(),n=X7t(e);return b_.set(t,{payload:e,created:r,lastAccess:r,expires:r+n,ttl:n}),Iwn(),t}function Z7t(e,t={}){J7t();let r=b_.get(String(e||""));if(!r?.payload)return null;if(t.touch!==!1){let n=Date.now();r.lastAccess=n,r.expires=n+(r.ttl||X7t(r.payload))}return r.payload}function ejt(e,t=""){let r=String(e||"").slice(0,8);console.warn(`[bili_all] MPD media payload missing route=${t} token=${r} cacheSize=${b_.size}`)}async function xwn(e){try{let t=await m7t(e);if(t&&t.trim()){let r=JSON.parse(t.trim());if(Array.isArray(r)&&r.length)if(typeof r[0]=="string"){let n=r.filter(s=>s&&typeof s=="string").map(s=>({type_id:s,type_name:s}));if(n.length)return n}else{let n=r.filter(s=>s&&typeof s.type_id=="string");if(n.length)return n}}}catch{}return null}async function wwn(e){try{let t=await g7t(e);if(t&&t.trim()){let r=JSON.parse(t.trim());if(typeof r=="object"&&r!==null)return r}}catch{}return null}function Nwn(e){if(!e||e<=0)return"PT0S";let t=Math.floor(e/3600),r=Math.floor(e%3600/60),n=e%60,s="PT";return t>0&&(s+=`${t}H`),r>0&&(s+=`${r}M`),s+=`${n.toFixed(3)}S`,s}function WDe(e){if(!e)return null;let t,r;if(Array.isArray(e))t=Number.parseInt(e[0],10),r=Number.parseInt(e[1],10);else if(typeof e=="object")t=Number.parseInt(e.start??e.startByte??e.from??e.begin,10),r=Number.parseInt(e.end??e.endByte??e.to??e.finish,10);else{let n=String(e).match(/(\d+)\s*[-,]\s*(\d+)/);n&&(t=Number.parseInt(n[1],10),r=Number.parseInt(n[2],10))}return!Number.isFinite(t)||!Number.isFinite(r)||t<0||r/g,">")}function I7t(e){return String(e||"").replace(/&/g,"&").replace(//g,">")}function Own(e){return String(e||"").replace(/\]\]>/g,"]]]]>")}function R7t(e){return Own(e).replace(/&/g,"&")}function zw(e){return e&&typeof e=="object"?e:{}}function td(e={}){return e=zw(e),e.url||e.base_url||e.baseUrl||e.backup_url?.[0]||e.backupUrl?.[0]||""}function Bb(e={},t="video/mp4"){return e=zw(e),e.mime_type||e.mimeType||e.mime||t}function b3(e={},t=""){return e=zw(e),e.codecs||e.codec||t}function Dwn(e={},t=0){e=zw(e);let r=Number.parseInt(e.bandwidth||e.bandwidth_kbps||e.bandwidthKbps||0,10);return Number.isFinite(r)&&r>0?r:t}function wW(e={}){e=zw(e);let t=e.segment_base||e.segmentBase||{},r=WDe(t.initialization||t.initialization_range||t.init_range||t.initRange||e.initialization||e.initialization_range||e.init_range),n=WDe(t.index_range||t.indexRange||t.sidx_range||t.sidxRange||e.index_range||e.indexRange);return{initRange:r,indexRange:n}}function Pwn(e,t){let r=Buffer.isBuffer(e)?e:Buffer.from(e||[]),n=WDe(t);if(!n||r.length<12||r.toString("ascii",4,8)!=="sidx")return null;let s=r[8],i=12;if(i+8>r.length)return null;i+=4;let a=r.readUInt32BE(i);i+=4;let o=0;if(s===0){if(i+8>r.length)return null;i+=4,o=r.readUInt32BE(i),i+=4}else if(s===1){if(i+16>r.length)return null;i+=8,o=Number(r.readBigUInt64BE(i)),i+=8}else return null;if(!Number.isFinite(a)||a<=0||!Number.isFinite(o)||o<0||i+4>r.length)return null;i+=2;let c=r.readUInt16BE(i);i+=2;let u=[],l=n.end+1+o,d=0;for(let f=0;f>>31,m=h&2147483647,g=r.readUInt32BE(i+4);if(i+=12,p!==0||m<=0||g<=0)return null;let _=l,y=_+m-1;u.push({range:{start:_,end:y},duration:g}),d+=g,l=y+1}return u.length?{timescale:a,totalDuration:d,totalSeconds:d/a,segments:u}:null}function sPe(e={}){return e=zw(e),e.segment_list||e.segmentList||e._segmentList||null}function Lwn(e={},t=""){let r=sPe(e),{initRange:n}=wW(e);if(!r?.segments?.length||!r.timescale||!n)return"";let s=[`${t}`];s.push(`${t} `),s.push(`${t} `);let i=0,a=0,o=()=>{if(!a)return;let c=a>1?` r="${a-1}"`:"";s.push(`${t} `),i=0,a=0};for(let c of r.segments){let u=Number.parseInt(c?.duration,10);if(!Number.isFinite(u)||u<=0){o();continue}u===i?a+=1:(o(),i=u,a=1)}o(),s.push(`${t} `);for(let c of r.segments)c?.range&&s.push(`${t} `);return s.push(`${t}`),s.join(` +`)}function C7t(e={},t=""){let r=Lwn(e,t);if(r)return r;let{initRange:n,indexRange:s}=wW(e);if(!n&&!s)return"";let i=s;if(n){let a=i?` indexRange="${R_(i)}"`:"";return`${t}`}return`${t}`}function x7t(e={},t=""){let{initRange:r,indexRange:n}=wW(e);if(!r&&!n)return"";let s=n;if(r){let i=s?` indexRange="${R_(s)}"`:"";return`${t}`}return`${t}`}function RW(e,t={},r=0){let n=[`id="${I_(e)}"`,`bandwidth="${Dwn(t,r)}"`],s=Number.parseInt(t.width||0,10),i=Number.parseInt(t.height||0,10);return Number.isFinite(s)&&s>0&&n.push(`width="${s}"`),Number.isFinite(i)&&i>0&&n.push(`height="${i}"`),n.join(" ")}function Ub(e={},t="",r="video"){let n=td(e)||t||"";return n?{url:n,id:e.id||e.quality||"",bandwidth:e.bandwidth||0,width:e.width||0,height:e.height||0,mime_type:Bb(e,r==="audio"?"audio/mp4":"video/mp4"),codecs:b3(e,r==="audio"?"mp4a.40.2":"avc1.640028"),segment_base:e.segment_base||e.segmentBase||null,segment_list:sPe(e)}:null}function w7t(e,t="",r="video"){if(e){for(let n of[e,(()=>{try{return decodeURIComponent(e)}catch{return""}})()])if(n)try{let s=JSON.parse(n);if(s&&typeof s=="object")return Ub(s,t,r)}catch{}}return Ub({},t,r)}function N7t(e,t,r,n){let s=String(t||"").replace(/\/+$/,"")||"/spider/bili_all/3";return`${e}${s}/proxy/media/${encodeURIComponent(r)}/${encodeURIComponent(n)}`}function O7t(e,t,r,n,s,i,a={}){let o=Ub(n,"","video"),c=s?Ub(s,"","audio"):null,u=Cwn({mode:r,duration:Number.parseFloat(i||0)||0,aid:String(a.aid||""),cid:String(a.cid||""),qn:String(a.qn||""),videoTrack:o,audioTrack:c}),l=String(t||"").replace(/\/+$/,"")||"/spider/bili_all/3";return`${e}${l}/proxy?do=mpd&mode=${encodeURIComponent(r)}&token=${encodeURIComponent(u)}`}function Mwn(e,t=null,r="PT0S"){let n=td(e),s=t?td(t):"",i=Bb(e,"video/mp4"),a=t?Bb(t,"audio/mp4"):"",o=b3(e,"avc1.640028"),c=t?b3(t,"mp4a.40.2"):"",u=['',''," ",` `,` `,` `,C7t(e," ")," "," "];return t&&s&&u.push(` `,` `,` `,C7t(t," ")," "," "),u.push(" ",""),u.join(` +`)}function kwn(e,t=null,r="PT0S"){let n=r&&r!=="PT0S"?r:"PT0S",s=td(e),i=t?td(t):"",a=Bb(e,"video/mp4"),o=t?Bb(t,"audio/mp4"):"",c=b3(e,"avc1.640028"),u=t?b3(t,"mp4a.40.2"):"",l=[` `,` `,` ${I7t(s)}`,x7t(e," ")," "," "].join(` +`),d=i?[` `,` `,` ${I7t(i)}`,x7t(t," ")," "," "].join(` +`):"";return['','',' '," ",l," ",d," ",""].join(` +`)}async function VDe(e,t={}){let{do:r,video_url:n,audio_url:s,video_track:i,audio_track:a,mode:o,duration:c,token:u}=e;if(r==="mpd"){if(!o||o!=="mira"&&o!=="dash")return[400,"text/plain",Buffer.from('Missing or invalid mode parameter. Must be "mira" or "dash"')];try{let l,d,f=parseFloat(c)||0,h=u?Z7t(u):null;if(u&&!h?.videoTrack)return ejt(u,"mpd"),[404,"text/plain",Buffer.from("MPD media payload expired or missing")];if(h?.videoTrack){f=parseFloat(h.duration||c)||0;let g=t.serverUrl||"",_=t.routePrefix||"";l={...h.videoTrack,url:g?N7t(g,_,u,"video"):td(h.videoTrack)},d=h.audioTrack?{...h.audioTrack,url:g?N7t(g,_,u,"audio"):td(h.audioTrack)}:null}else{let g=n?decodeURIComponent(n):"",_=s?decodeURIComponent(s):"";l=w7t(i,g,"video"),d=a||_?w7t(a,_,"audio"):null}let p=Nwn(f),m=o==="mira"?Mwn(l,d,p):kwn(l,d,p);return[200,"application/dash+xml",Buffer.from(m)]}catch(l){return console.error("proxy/mpd error:",l),[500,"text/plain",Buffer.from("MPD build error: "+l.message)]}}return[501,"text/plain",Buffer.from("Unsupported proxy action")]}function k7t(e=[],t={},r=null){let n=Array.isArray(e)?e:[];if(!n.length)return null;let s=String(t?.id||t?.quality||""),i=String(t?.codecs||t?.codec||""),a=String(t?.mime_type||t?.mimeType||t?.mime||""),o=n.find(l=>String(l?.id||l?.quality||"")===s&&(!i||String(l?.codecs||l?.codec||"")===i));if(o)return o;let c=n.find(l=>String(l?.id||l?.quality||"")===s);return c||n.find(l=>!(a&&String(l?.mime_type||l?.mimeType||l?.mime||"")!==a||i&&String(l?.codecs||l?.codec||"")!==i))||(r?r(n):n[0])}async function Bwn(e={}){if(!e.aid||!e.cid||!e.qn)return!1;let r=(await Hw({aid:e.aid,cid:e.cid,qn:e.qn,fnval:4048,force:!0}))?.dash;if(!r)return!1;let n=k7t(r.video,e.videoTrack,i=>Vw(i,a=>Number(a?.id)||0)),s=e.audioTrack?k7t(r.audio,e.audioTrack,i=>Vw(i,a=>Number(a?.bandwidth)||0)):null;return td(n)?(e.videoTrack=Ub(n,"","video"),e.audioTrack=s?Ub(s,"","audio"):null,!0):!1}async function Uwn(e,t=""){let r=fn(),n=await ePe({includeBuvid:!0}).catch(()=>""),s={"User-Agent":C_,Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Encoding":"identity",...t?{Range:t}:{},...n?{Cookie:n}:{}};return ye.get(e,{headers:s,responseType:"arraybuffer",timeout:JDe,httpAgent:r.httpAgent,httpsAgent:r.httpsAgent,validateStatus:()=>!0,maxContentLength:2*1024*1024,maxBodyLength:2*1024*1024})}async function bW(e={}){let t=Ub(e,"",Bb(e).startsWith("audio/")?"audio":"video"),r=td(t),{indexRange:n}=wW(t);if(!r||!n||sPe(t)?.segments?.length)return t;try{let s=await Uwn(r,`bytes=${R_(n)}`);if(s.status!==200&&s.status!==206)return t;let i=Pwn(Buffer.from(s.data||[]),n);return i?.segments?.length?{...t,segment_list:i}:t}catch(s){return console.warn("[bili_all] \u89E3\u6790 sidx \u5206\u6BB5\u5931\u8D25:",s.message),t}}async function B7t(e,t,r=""){let n=fn(),s=await ePe({includeBuvid:!0}).catch(()=>""),i={"User-Agent":C_,Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Encoding":"identity",...r?{Range:r}:{},...s?{Cookie:s}:{}};return ye.get(e,{headers:i,responseType:"stream",timeout:0,httpAgent:n.httpAgent,httpsAgent:n.httpsAgent,validateStatus:()=>!0,maxContentLength:1/0,maxBodyLength:1/0})}async function Fwn(e,t){let r=e?.params?.token,n=String(e?.params?.track||"").trim(),s=Z7t(r);if(!s?.videoTrack)return ejt(r,`media:${n||"unknown"}`),t.code(404).header("Content-Type","text/plain; charset=utf-8").send("MPD media payload expired or missing");let i=n==="audio"?s.audioTrack:n==="video"?s.videoTrack:null,a=td(i);if(!i||!a)return t.code(400).header("Content-Type","text/plain; charset=utf-8").send("Missing media track");let o=String(e?.headers?.range||"").trim(),c=await B7t(a,n,o);[403,410,416].includes(c.status)&&(console.warn(`[bili_all] refreshing expired media track=${n||"unknown"} status=${c.status}`),c.data?.destroy&&c.data.destroy(),await Bwn(s).catch(()=>!1)&&(i=n==="audio"?s.audioTrack:s.videoTrack,a=td(i),c=await B7t(a,n,o)));let u=c.data;if(u?.destroy){let l=()=>{u.destroyed||u.destroy()};e?.raw?.on?.("close",l),t?.raw?.on?.("close",l)}return t.code(c.status||502).header("Content-Type",c.headers?.["content-type"]||Bb(i,n==="audio"?"audio/mp4":"video/mp4")).header("Accept-Ranges",c.headers?.["accept-ranges"]||"bytes").header("Cache-Control","no-cache").header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),c.headers?.["content-range"]&&t.header("Content-Range",c.headers["content-range"]),c.headers?.["content-length"]&&t.header("Content-Length",c.headers["content-length"]),t.send(u)}function $wn(e={},t={},r=0){let n=Number.parseInt(e?.id||e?.quality||0,10);if(Number.isFinite(n)&&n>0)return n;let s=Number.parseInt(t?.quality||0,10);if(Number.isFinite(s)&&s>0)return s;let i=Number.parseInt(r||0,10);return Number.isFinite(i)&&i>0?i:0}var XDe,F7t,Jxn,Zxn,ewn,twn,rwn,nwn,E7t,swn,iwn,y7t,awn,JDe,own,Dp,C_,cwn,uwn,lwn,dwn,fwn,v7t,hwn,pwn,ed,jDe,Rc,KDe,hl,GDe,jw,zDe,YDe,IW,vW,S7t,b_,ZDe,T7t,SW,mwn,b7t,gwn,QDe,Kw,TW,D7t,P7t,L7t,M7t,U7t,NW,OW=ie(()=>{vr();XDe=Ne(require("crypto"),1),F7t=Ne(require("querystring"),1);Cr();EW();A7t();Ds();Jxn=36e5,Zxn=3e5,ewn=864e5,twn=3e4,rwn=6e4,nwn=45e3,E7t=2*60*60*1e3,swn=30*60*1e3,iwn=12*60*60*1e3,y7t=200,awn=3,JDe=15e3,own=2,Dp=20,C_="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",cwn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",uwn="https://i0.hdslb.com/bfs/archive/404.png",lwn=new Set(["totalrank","click","pubdate","dm","stow"]),dwn=/<[^>]*>/g,fwn=/&[a-z]+;/g,v7t={129:"HDR Vivid",127:"8K\u8D85\u6E05",126:"\u675C\u6BD4\u89C6\u754C",125:"HDR\u771F\u5F69",120:"4K\u8D85\u6E05",116:"1080P\u9AD8\u5E27",112:"1080P\u9AD8\u7801",80:"1080P",64:"720P",32:"480P",16:"360P"},hwn=[129,127,126,125,120,116,112,80],pwn=new Set(hwn),ed=class extends Error{constructor(t,r="UNKNOWN_ERROR"){super(t),this.name="BiliAPIError",this.code=r}},jDe=class{constructor(){this.cookie="",this.isSet=!1}setCookie(t){return t&&t.trim()?(this.cookie=t.trim(),this.isSet=!0,!0):!1}clearCookie(){this.cookie="",this.isSet=!1}getCookie(){return this.cookie}hasCookie(){return this.isSet&&this.cookie.length>10}getCsrf(){let t=this.cookie.match(/bili_jct=([^;]+)/);return t?t[1]:""}},Rc=new jDe,KDe=class{constructor(){this.cache="",this.last=0}isValid(){return this.cache&&Date.now()-this.lastn.split(";")[0].trim()).join("; "),this.last=Date.now(),this.cache}catch{}return""}getCookie(){return this.cache}},hl=new KDe,GDe=class{constructor(){this.key="",this.exp=0}isValid(){return this.key&&Date.now()-this.expthis.ttlMs?(this.map.delete(t),null):r.value:null}set(t,r){if(!t)return r;if(this.map.size>=this.max){let n=this.map.keys().next().value;n&&this.map.delete(n)}return this.map.set(t,{value:r,time:Date.now()}),r}},vW=new IW(rwn,100),S7t=new IW(nwn,200),b_=new Map,ZDe="",T7t=0,SW=null,mwn=e=>{let t=fn(),r=ye.create({timeout:1e4,httpAgent:t.httpAgent,httpsAgent:t.httpsAgent,headers:{"User-Agent":C_,Cookie:e,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com"}});return r.interceptors.response.use(n=>{if(n.data?.code!==void 0&&n.data.code!==0)throw new Error(n.data.message||`API\u9519\u8BEF: ${n.data.code}`);return n},n=>{throw n}),r},b7t=(e={})=>{let t=e.level??e.level_info?.current_level,r=Number(t),n=e.vip?.status??e.vipStatus,s=Number(n),i=Number(e.vip?.type??e.vipType??0),a=n!=null?s>0:i>0;return{nickname:e.name||e.uname||"",face:e.face||"",level:Number.isFinite(r)?r:0,vip:a?"\u5927\u4F1A\u5458":"\u975E\u5927\u4F1A\u5458",mid:e.mid,coins:Number(e.coins??e.money??0)||0,following:Number(e.following??0)||0,follower:Number(e.follower??0)||0}},gwn=async e=>{let t=null;try{let n=(await e.get("https://api.bilibili.com/x/space/myinfo")).data?.data;if(n?.mid)return b7t(n)}catch(r){t=r}try{let n=(await e.get("https://api.bilibili.com/x/web-interface/nav")).data?.data;return n?.isLogin&&n?.mid?b7t(n):null}catch(r){throw t||r}},QDe=class{constructor(){let t=fn();this.instance=ye.create({timeout:JDe,maxRedirects:5,httpAgent:t.httpAgent,httpsAgent:t.httpsAgent}),this.instance.interceptors.request.use(async r=>{r.headers&&r.headers["User-Agent"]&&(ZDe=r.headers["User-Agent"]),r.headers={"User-Agent":C_,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Connection:"keep-alive",...r.headers};let n="";return Rc.hasCookie()?n=Rc.getCookie():(hl.isValid()||await hl.refresh(),hl.getCookie()&&(n=hl.getCookie())),n&&(r.headers.Cookie=n),r}),this.instance.interceptors.response.use(r=>{if(r.data?.code!==void 0&&r.data.code!==0)throw new ed(r.data.message||`API\u9519\u8BEF: ${r.data.code}`,r.data.code);return r},async r=>{throw r.response?.status===412&&jw.clear(),r})}async request(t,r=own){try{return await this.instance(t)}catch(n){if(r>0&&!n.response)return await Yt(1e3),this.request(t,r-1);throw n}}get(t,r={}){return this.request({...r,method:"GET",url:t})}post(t,r={},n={}){return this.request({...n,method:"POST",url:t,data:r})}},Kw=new QDe,TW=null;D7t=async e=>{try{await Gw(e);let r=await xwn(e)||yW,n=await wwn(e),s={};return r.forEach(i=>{let a=i.type_id;n&&n[a]?s[a]=n[a]:$De[a]?s[a]=$De[a]:s[a]=_7t()}),{class:r.map(i=>({type_id:i.type_id,type_name:i.type_name})),filters:s}}catch(t){return console.error("\u83B7\u53D6\u9996\u9875\u5931\u8D25:",t),{class:yW.map(r=>({type_id:r.type_id,type_name:r.type_name})),filters:{}}}},P7t=async({id:e,page:t=1,filters:r={},ext:n={},server:s=null})=>{let i=Math.max(1,Number.parseInt(t,10)||1),a={};if(r&&typeof r=="object"&&Object.keys(r).length>0)a=r;else if(n&&typeof n=="string")try{let d=Buffer.from(n,"base64").toString();a=JSON.parse(d)}catch{try{a=JSON.parse(n)}catch{}}let o=e,c=[];for(let d in a)d!=="order"&&d!=="duration"&&a[d]&&a[d]&&a[d].trim()!==""&&c.push(a[d].trim());c.length>0&&(c.length===1?o=c[0]:(c=[...new Set(c)],o=`(${c.join(" OR ")})`));let u="totalrank";a.order&&lwn.has(a.order)&&(u=a.order);let l=0;a.duration&&(l=Number.parseInt(a.duration,10)||0);try{await Gw(s);let h=`https://api.bilibili.com/x/web-interface/wbi/search/type?${await CW({keyword:o,page:i,search_type:"video",order:u,duration:l,tids:0,page_size:Dp})}`,m=(await Kw.get(h,await H7t(o))).data.data;if(!m)return console.error("\u641C\u7D22\u8FD4\u56DE\u6570\u636E\u4E3A\u7A7A"),{page:i,pagecount:1,total:0,limit:Dp,list:[]};let g=m.result||[],_=m.numResults||0,y=Math.ceil(_/Dp)||1,A=g.map(E=>j7t(E)).filter(E=>E?.vod_id);return{page:i,pagecount:y,total:_,limit:Dp,list:A}}catch(d){return console.error("\u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",d.message,d.stack),{page:i,pagecount:1,total:0,limit:Dp,list:[]}}},L7t=async({id:e,headers:t={},server:r=null})=>{let n=Ewn(e);e=n.id;try{await Gw(r);let s=e.startsWith("BV"),i=await W7t(s?{bvid:e}:{aid:e.replace("av","")}),o=(i.pages||[]).map(_=>({title:tPe(_.part||`P${_.page}`),cid:_.cid})).map(_=>`${_.title}$${Y7t(i,_.cid)}`).join("#"),c=["\u54D4\u54E9"],u=[o],[l,d]=await Promise.all([Swn(i.bvid,"auto","auto"),Twn(i.owner?.mid,"auto","auto",i.bvid)]);l&&(c.push("\u76F8\u5173\u89C6\u9891"),u.push(l)),d&&(c.push("UP\u4E3B\u89C6\u9891"),u.push(d));let f=c.join("$$$"),h=u.join("$$$"),p=rPe(i.duration),m=G7t(i.stat?.view||0),g=nPe(i.pubdate);return{list:[{vod_id:i.bvid,vod_name:i.title,vod_pic:n.meta?.vod_pic||K7t(i.pic),vod_content:i.desc||"\u6682\u65E0\u7B80\u4ECB",vod_year:new Date(i.pubdate*1e3).getFullYear().toString(),vod_area:"\u4E2D\u56FD",vod_actor:i.owner?.name||"",vod_director:i.owner?.name||"",vod_tag:i.tname||"",vod_remarks:`${p}|${m}|${g}`,vod_play_from:f,vod_play_url:h,vod_duration:z7t(i.duration)}]}}catch(s){throw console.error("\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25:",s),new ed("\u83B7\u53D6\u89C6\u9891\u8BE6\u60C5\u5931\u8D25: "+s.message)}},M7t=async({wd:e,page:t=1,server:r=null})=>{try{if(await Gw(r),!e||e.trim()==="")return{page:1,pagecount:1,total:0,list:[]};let n=e.trim(),s=Math.max(1,Number.parseInt(t,10)||1),a=Array.from({length:3},(p,m)=>s+m),o=await Promise.all(a.map(async p=>{let m=await CW({keyword:n,page:p,search_type:"video",order:"totalrank",duration:0,tids:0,page_size:Dp});return(await Kw.get(`https://api.bilibili.com/x/web-interface/wbi/search/type?${m}`,await H7t(n))).data?.data})),c=o.find(Boolean);if(!c)return{page:s,pagecount:1,total:0,list:[]};let u=new Set,l=[];for(let p of o)if(p?.result)for(let m of p.result){let g=V7t(m);!g||u.has(g)||(u.add(g),l.push(m))}let d=l.map(p=>j7t(p)).filter(p=>p?.vod_name&&p.vod_name.toLowerCase().includes(n.toLowerCase())),f=c.numResults||d.length,h=Math.max(1,Math.ceil(f/Dp));return{page:s,pagecount:h,total:f,limit:Dp,list:d}}catch(n){return console.error("\u641C\u7D22\u5931\u8D25:",n.message,n.stack),{page:Math.max(1,Number.parseInt(t,10)||1),pagecount:1,total:0,limit:Dp,list:[]}}};U7t=async({id:e,flag:t,serverUrl:r,routePrefix:n="/spider/bili_all/3",headers:s={},server:i=null})=>{try{await Gw(i);let a=e.split("_");if(a.length!==5)throw new ed("\u53C2\u6570\u9519\u8BEF");let[o,c,u,l,d]=a,f=await W7t({bvid:o,aid:c});if(c=String(f.aid||c),u==="auto"&&(u=String(f.cid||f.pages?.[0]?.cid||""),!u))throw new ed("\u83B7\u53D6\u89C6\u9891CID\u5931\u8D25");let p=f.pages?.find(_=>String(_.cid)===String(u))?.duration,m=xW(p??f.duration),g=`https://comment.bilibili.com/${u}.xml`;if(l==="auto"||d==="auto"){let _=s["user-agent"]||ZDe||"",y=bwn(_)?"mira":"dash",A=[80];try{A=(await Hw({aid:c,cid:u,qn:127,fnval:4048}))?.accept_quality||A}catch{}let E=A.filter(I=>pwn.has(I)),v=(E.length?E:[80]).slice(0,awn),b=[];for(let I of v)try{let T=await Hw({aid:c,cid:u,qn:I,fnval:4048}),x=T?.dash;if(!x)continue;let w=Vw(x.video,$=>Number($?.id)||0),D=Vw(x.audio,$=>Number($?.bandwidth)||0);if(!td(w))continue;let[L,U]=y==="mira"?await Promise.all([bW(w),D?bW(D):null]):[w,D],G=O7t(r,n,y,L,U,m,{aid:c,cid:u,qn:$wn(w,T,I)});b.push(v7t[I]||`${I}P`,G)}catch(T){console.warn(`\u83B7\u53D6 ${v7t[I]||I} \u753B\u8D28\u5931\u8D25:`,T.message)}try{let I=v.includes(80)?80:v[v.length-1],x=(await Hw({aid:c,cid:u,qn:I,fnval:1}))?.durl?.[0];x?.url&&b.push("MP4",x.url)}catch(I){console.warn("\u83B7\u53D6 MP4 \u753B\u8D28\u5931\u8D25:",I.message)}if(!b.length)throw new ed("\u64AD\u653E\u94FE\u63A5\u83B7\u53D6\u5931\u8D25");return{parse:0,url:b,header:{"User-Agent":C_,Referer:"https://www.bilibili.com/"},subt:g,extra:{format:"application/dash+xml",duration:m,danmaku:g}}}if(d==="mp4"){let y=(await Hw({aid:c,cid:u,qn:l,fnval:1}))?.durl?.[0];if(!y)throw new ed("MP4 \u94FE\u63A5\u83B7\u53D6\u5931\u8D25");return{parse:0,url:y.url,header:{"User-Agent":C_,Referer:"https://www.bilibili.com"},subt:g,extra:{danmaku:g}}}if(d==="mira"||d==="dash"){let y=(await Hw({aid:c,cid:u,qn:l,fnval:4048}))?.dash;if(!y)throw new ed("\u65E0\u53EF\u7528\u7684 DASH \u6570\u636E");let A=Vw(y.video,x=>Number(x?.id)||0),E=Vw(y.audio,x=>Number(x?.bandwidth)||0);if(!A)throw new ed("\u6CA1\u6709\u89C6\u9891\u6D41");if(!td(A))throw new ed("\u89C6\u9891\u6D41URL\u83B7\u53D6\u5931\u8D25");let[b,I]=d==="mira"?await Promise.all([bW(A),E?bW(E):null]):[A,E];return{parse:0,url:O7t(r,n,d,b,I,m,{aid:c,cid:u,qn:l}),header:{Referer:"https://www.bilibili.com/"},extra:{format:"application/dash+xml",duration:m,danmaku:g},subt:g}}throw new ed("\u4E0D\u652F\u6301\u7684\u64AD\u653E\u7C7B\u578B")}catch(a){throw console.error("\u64AD\u653E\u9519\u8BEF:",a),a}},NW={meta:{key:"bili_all",name:"\u{1F3AC} \u54D4\u54E9",type:3,searchable:1,quickSearch:1,filterable:1,version:"1.0.3",author:"BiliCatpaw",description:"\u54D4\u54E9\u5927\u5168 - \u4F18\u5316\u7248\uFF0C\u652F\u6301\u641C\u7D22\u529F\u80FD\uFF0C\u9ED8\u8BA4\u5206\u7C7B\u4E3A\u7A7A\uFF0C\u4ECE\u524D\u7AEF\u52A0\u8F7D\uFF0C\u652F\u6301\u591A\u7EBF\u8DEF\u64AD\u653E\uFF0C\u65E0\u9700Cookie",homepage:"https://www.bilibili.com"},api:async e=>{e.post("/set-cookie",async(t,r)=>{let{cookie:n}=t.body||{},s=Rc.setCookie(n);if(s&&t.server?.db)try{await t.server.db.push("/bilibili_all/cookie",n.trim())}catch{}return r.send({code:s?0:400,message:s?"\u8BBE\u7F6E\u6210\u529F":"\u8BBE\u7F6E\u5931\u8D25"})}),e.post("/clear-cookie",async(t,r)=>{if(Rc.clearCookie(),t.server?.db)try{await t.server.db.push("/bilibili_all/cookie","")}catch{}return r.send({code:0,message:"Cookie\u5DF2\u6E05\u9664"})}),e.get("/cookie-status",async(t,r)=>(await $7t(t.server),r.send({code:0,data:{user_cookie_set:Rc.hasCookie(),system_cookie_valid:hl.isValid(),mixin_key_valid:jw.isValid(),current_user_agent:ZDe||"\u672A\u68C0\u6D4B\u5230"}}))),e.post("/init",async(t,r)=>{try{return await Gw(t.server),r.send({code:0,message:"\u54D4\u54E9\u5927\u5168\u521D\u59CB\u5316\u5B8C\u6210"})}catch(n){return console.error("\u521D\u59CB\u5316\u5931\u8D25:",n),r.send({code:500,message:"\u521D\u59CB\u5316\u5931\u8D25: "+n.message})}}),e.post("/validate-cookie",async(t,r)=>{try{let{cookie:n}=t.body||{};if(!n||n.trim().length<10)return r.send({code:400,message:"Cookie\u683C\u5F0F\u65E0\u6548",valid:!1});let s=n.trim(),i=mwn(s);try{let a=await gwn(i);return a?r.send({code:0,message:"Cookie\u9A8C\u8BC1\u6210\u529F",valid:!0,data:a}):r.send({code:401,message:"Cookie\u65E0\u6548\uFF0C\u672A\u767B\u5F55",valid:!1})}catch(a){return console.error("API\u9A8C\u8BC1\u5931\u8D25:",a.message),r.send({code:500,message:"\u9A8C\u8BC1\u5931\u8D25: "+a.message,valid:!1})}}catch(n){return console.error("\u9A8C\u8BC1Cookie\u5931\u8D25:",n),r.send({code:500,message:"\u9A8C\u8BC1\u5931\u8D25: "+n.message,valid:!1})}}),e.get("/user-info",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{});return n?.user_info?r.send({code:0,data:n.user_info}):r.send({code:401,message:"\u6682\u65E0\u5DF2\u4FDD\u5B58\u7684\u8D26\u53F7\u4FE1\u606F\uFF0C\u8BF7\u5148\u4FDD\u5B58\u57FA\u7840\u914D\u7F6E",data:null})}catch(n){return console.error("\u83B7\u53D6\u7528\u6237\u4FE1\u606F\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u5931\u8D25: "+n.message,data:null})}}),e.post("/home",async(t,r)=>{try{let n=await D7t(t.server);return r.send(n)}catch(n){return console.error("\u83B7\u53D6\u9996\u9875\u5931\u8D25:",n),r.send({class:yW.map(s=>({type_id:s.type_id,type_name:s.type_name})),filters:{}})}}),e.post("/category",async(t,r)=>{try{let n=await P7t({...t.body||{},server:t.server});return r.send(n)}catch(n){return console.error("\u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",n),r.send({page:t.body?.page||1,pagecount:1,total:0,limit:Dp,list:[]})}}),e.post("/detail",async(t,r)=>{try{let n=await L7t({...t.body,headers:t.headers,server:t.server});return r.send(n)}catch(n){return console.error("\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",n),r.send({list:[]})}}),e.post("/search",async(t,r)=>{try{let n=await M7t({...t.body||{},server:t.server});return r.send(n)}catch(n){return console.error("\u641C\u7D22\u5931\u8D25:",n),r.send({page:t.body?.page||1,pagecount:1,total:0,list:[],message:"\u641C\u7D22\u5931\u8D25: "+n.message})}}),e.post("/play",async(t,r)=>{try{let n=qDe(t),s=await U7t({...t.body,serverUrl:n,routePrefix:HDe(t),headers:t.headers,server:t.server});return r.send(s)}catch(n){return console.error("\u64AD\u653E\u9519\u8BEF:",n),r.send({code:500,message:n.message||"\u64AD\u653E\u5931\u8D25",parse:0,url:"",header:{}})}}),e.get("/proxy",async(t,r)=>{try{let[n,s,i]=await VDe(t.query,{serverUrl:qDe(t),routePrefix:HDe(t)});return r.code(n).header("Content-Type",s).send(i)}catch(n){return console.error("proxy error:",n),r.code(500).send("Internal Server Error")}}),e.post("/proxy",async(t,r)=>{try{let[n,s,i]=await VDe(t.body||{},{serverUrl:qDe(t),routePrefix:HDe(t)});return r.code(n).header("Content-Type",s).send(i)}catch(n){return console.error("proxy error:",n),r.code(500).send("Internal Server Error")}}),e.get("/proxy/media/:token/:track",async(t,r)=>{try{return await Fwn(t,r)}catch(n){return console.error("media proxy error:",n),r.code(500).send("Internal Server Error")}}),e.options("*",async(t,r)=>{r.header("Access-Control-Allow-Origin","*").header("Access-Control-Allow-Methods","GET,POST,OPTIONS").header("Access-Control-Allow-Headers","Content-Type").send()})},home:D7t,category:P7t,detail:L7t,search:M7t,play:U7t,proxy:VDe}});var Ejt={};kt(Ejt,{default:()=>Zwn});function jwn(e={}){let t=e.keyword??e.value??e.id??"";return{v:String(t),n:String(e.name||e.title||t)}}function Kwn(e={}){let t=String(e.field??"2"),r=String(e.sort??"0");return{v:`${t}:${r}`,n:String(e.name||e.title||t)}}async function Gwn(e){let t=String(e||"1"),r=njt.get(t);if(r)return r;let n=await Yw("https://api.bilibili.com/pgc/season/index/condition",{params:{season_type:t,type:1},referer:"https://www.bilibili.com/anime/index/",useCookie:!1});if(n?.code!==0)throw new Error(n?.message||`PGC \u6761\u4EF6\u63A5\u53E3\u9519\u8BEF ${n?.code}`);let s=n?.data||{};return njt.set(t,s),s}async function zwn(e){let t=await Gwn(e),r=(t.filter||[]).filter(n=>n?.field&&Array.isArray(n.values)).map(n=>({key:String(n.field),name:String(n.name||n.field),value:n.values.map(jwn)}));return Array.isArray(t.order)&&t.order.length&&r.unshift({key:"order",name:"\u6392\u5E8F",value:t.order.map(Kwn)}),r}async function Ywn(){let e=await Promise.all(hjt.map(async t=>{try{return[t.type_id,await zwn(t.type_id)]}catch(r){return console.warn(`[bili_official] \u83B7\u53D6\u7B5B\u9009\u6761\u4EF6\u5931\u8D25 type=${t.type_id}:`,r.message),[t.type_id,[]]}}));return Object.fromEntries(e)}function pjt(e){let t=String(e||"").trim();return t?t.startsWith("//")?"https:"+t:t.startsWith("http://")?t.replace("http://","https://"):t:""}function mjt(e){return String(e||"").replace(/<[^>]*>/g,"").replace(/&[a-z]+;/g,"").trim()}function DW(e){return mjt(e)||"\u672A\u77E5\u6807\u9898"}function gjt(e,t={}){let r=String(e||"").trim();return r?JSON.stringify({source:lPe,id:r,meta:t&&typeof t=="object"?t:{}}):""}function _jt(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);if(r&&typeof r=="object"){let n=String(r.source||"").trim(),s=String(r.id||r.season_id||"").trim();if((!n||n===lPe)&&s)return{id:s,meta:r.meta&&typeof r.meta=="object"?r.meta:{}}}}catch{}return{id:t,meta:{}}}function Qwn(e){let t=Math.max(0,Math.floor(Number(e||0)/1e3)),r=Math.floor(t/3600),n=Math.floor(t%3600/60),s=t%60;return r>0?`${String(r).padStart(2,"0")}:${String(n).padStart(2,"0")}:${String(s).padStart(2,"0")}`:`${String(n).padStart(2,"0")}:${String(s).padStart(2,"0")}`}async function Wwn(e){try{let t=await AW(e);return t?String(t).trim():""}catch{return""}}async function Xwn(){if(I3&&Date.now()-rjt=400||e.data?.code!==0)return I3;let t=e.data?.data||{},r=t.b_3||t.buvid3||"",n=t.b_4||t.buvid4||"",s=[];r&&s.push(`buvid3=${r}`),n&&s.push(`buvid4=${n}`),s.length&&(I3=s.join("; "),rjt=Date.now())}catch{}return I3}function Jwn(e="",t=""){let r=new Set,n=[];for(let s of[e,t])String(s||"").split(";").map(i=>i.trim()).filter(Boolean).forEach(i=>{let a=i.split("=")[0];!a||r.has(a)||(r.add(a),n.push(i))});return n.join("; ")}async function Yw(e,{server:t=null,params:r={},referer:n="https://www.bilibili.com/",origin:s=null,useCookie:i=!0,includeBuvid:a=!1}={}){let o=Jwn(i?await Wwn(t):"",a?await Xwn():""),c=await fjt.get(e,{params:r,headers:{Referer:n,...s?{Origin:s}:{},...o?{Cookie:o}:{}}});if(c.status>=400)throw new Error(`HTTP ${c.status}`);return c.data}function Ajt(e={}){let t=String(e.season_id||e.media_id||"").trim();if(!t)return null;let r=pjt(e.cover||e.media_cover||e.eps?.[0]?.cover||""),n=mjt(e.index_show||e.pubtime||e.desc||e.styles||"")||"\u65E0\u4FE1\u606F";return{vod_id:gjt(t,{vod_pic:r,vod_remarks:n}),vod_name:DW(e.title||e.season_title),vod_pic:r,vod_remarks:n}}function PW(e){return e?.body?e.body:e||{}}function sjt(e,t={}){return t.serverUrl?t.serverUrl:e?.protocol&&e?.hostname?`${e.protocol}://${e.hostname}${e.port?":"+e.port:""}`:qwn}async function ijt(e={}){return{class:hjt,filters:await Ywn()}}async function ajt(e={}){return{list:(await uPe({...e,body:{tid:"1",pg:1,extend:{}}})).list||[]}}async function uPe(e={}){let t=PW(e),r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"1").trim(),s=t.extend||t.ext||t.filters||{},i={order:2,sort:0,pagesize:cPe,type:1,st:n,season_type:n,page:r};for(let[a,o]of Object.entries(s||{})){let c=String(o??"").trim();if(!(!c||c==="-1"))if(a==="order"){let[u,l="0"]=c.split(":");u&&(i.order=u),i.sort=l}else i[a]=c}try{let a=await Yw("https://api.bilibili.com/pgc/season/index/result",{server:e.server,params:i,referer:"https://www.bilibili.com/anime/index/"});if(a?.code!==0)throw new Error(a?.message||`PGC \u5206\u7C7B\u63A5\u53E3\u9519\u8BEF ${a?.code}`);let o=(a?.data?.list||[]).map(Ajt).filter(Boolean);return{page:r,pagecount:a?.data?.has_next===1?r+1:r,limit:o.length,total:o.length,list:o}}catch(a){return console.error("[bili_official] \u5206\u7C7B\u5931\u8D25:",a.message),{page:r,pagecount:1,limit:0,total:0,list:[]}}}async function ojt(e={}){let t=PW(e),r=Array.isArray(t.id)?t.id[0]:t.id||t.ids||t.vod_id||"",n=_jt(r),s=String(n.id||"").split(",")[0].trim();if(!s)return{list:[]};let i=await Yw("https://api.bilibili.com/pgc/view/web/season",{server:e.server,params:{season_id:s},referer:`https://www.bilibili.com/bangumi/play/ss${s}`});if(i?.code!==0||!i?.result)throw new Error(i?.message||"PGC \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38");let a=i.result,o=n.meta?.vod_pic||pjt(a.cover||""),c=n.meta?.vod_remarks||a.new_ep?.desc||a.index_show||"",u=(a.episodes||[]).map(l=>{let d=DW(l.share_copy||l.long_title||l.title||`\u7B2C${l.title||""}\u96C6`).replace(/#/g,"-").replace(/\$/g,"*");return`[${Qwn(l.duration)}]/${d}$pgc_${l.id}_${l.cid}`}).filter(Boolean).join("#");return{list:[{vod_id:gjt(s,{vod_pic:o,vod_remarks:c}),vod_name:DW(a.title),vod_pic:o,type_name:a.share_sub_title||a.type_name||"",vod_actor:String(a.actors||"").replace(/\n/g,"\uFF0C"),vod_content:DW(a.evaluate||a.new_ep?.desc||""),vod_year:a.publish?.pub_time?String(new Date(a.publish.pub_time).getFullYear()):"",vod_remarks:c,vod_play_from:"\u54D4\u54E9\u89C6\u9891",vod_play_url:u}]}}async function cjt(e={}){let t=PW(e),r=String(t.wd||t.key||t.keyword||"").trim(),n=Math.max(1,Number.parseInt(t.page||t.pg||t.pn,10)||1);if(!r)return{page:n,pagecount:1,total:0,list:[]};try{let s=`https://search.bilibili.com/all?keyword=${encodeURIComponent(r)}`,i=await Promise.all(tjt.map(async l=>{let d={search_type:l,keyword:r,page:n},f;try{f=await Yw("https://api.bilibili.com/x/web-interface/search/type",{server:e.server,params:d,referer:s,origin:"https://search.bilibili.com",includeBuvid:!0})}catch(h){if(!String(h.message||"").includes("HTTP 412"))throw h;f=await Yw("https://api.bilibili.com/x/web-interface/search/type",{server:e.server,params:d,referer:s,origin:"https://search.bilibili.com",useCookie:!1,includeBuvid:!0})}if(f?.code!==0)throw new Error(f?.message||`\u641C\u7D22\u63A5\u53E3\u9519\u8BEF ${f?.code}`);return f?.data||{}})),a=new Set,o=[],c=0;for(let l of i){c+=Number(l?.numResults||0);for(let d of l?.result||[]){let f=Ajt(d);if(!f)continue;let h=_jt(f.vod_id).id||f.vod_id;a.has(h)||(a.add(h),o.push(f))}}let u=cPe*tjt.length;return{page:n,pagecount:Math.max(1,Math.ceil((c||o.length)/u)),total:c||o.length,limit:u,list:o}}catch(s){return console.error("[bili_official] \u641C\u7D22\u5931\u8D25:",s.message),{page:n,pagecount:1,total:0,limit:cPe,list:[]}}}async function ujt({epId:e,cid:t,qn:r=120,server:n=null}){let s=await Yw("https://api.bilibili.com/pgc/player/web/playurl",{server:n,params:{ep_id:e,cid:t,qn:r,fnval:4048,fnver:0,fourk:1},referer:`https://www.bilibili.com/bangumi/play/ep${e}`});if(s?.code!==0)throw new Error(s?.message||`PGC \u64AD\u653E\u63A5\u53E3\u9519\u8BEF ${s?.code}`);return s.result||s.data||{}}function ljt(e,t){return!Array.isArray(e)||!e.length?null:e.reduce((r,n)=>t(n)>t(r)?n:r,e[0])}async function djt(e={}){let t=PW(e),r=String(t.id||"").trim();if(!r)throw new Error("\u53C2\u6570\u9519\u8BEF");if(!r.startsWith("pgc_"))return NW.play({...t,serverUrl:sjt(e,t),headers:e.headers||{},server:e.server});let[,n,s]=r.split("_");if(!n||!s)throw new Error("PGC \u64AD\u653E\u53C2\u6570\u9519\u8BEF");let i=sjt(e,t),o=(e.headers?.["user-agent"]||"").toLowerCase().includes("tvbox")?"mira":"dash",c=`https://comment.bilibili.com/${s}.xml`,u=await ujt({epId:n,cid:s,qn:120,server:e.server}),l=Number(u?.dash?.duration||0);if(u?.dash?.video?.length){let h=(u.accept_quality||[120,116,112,80]).slice(0,4),p=[];for(let m of h)try{let g=m===120?u:await ujt({epId:n,cid:s,qn:m,server:e.server}),_=g?.dash;if(!_?.video?.length)continue;let y=ljt(_.video,b=>Number(b?.id)||0),A=ljt(_.audio,b=>Number(b?.bandwidth)||0),E=y?.backup_url?.[0]||y?.backupUrl?.[0]||y?.base_url||y?.baseUrl||"",v=A?.backup_url?.[0]||A?.backupUrl?.[0]||A?.base_url||A?.baseUrl||"";if(!E)continue;p.push(g.accept_description?.[g.accept_quality?.indexOf(m)]||`${m}P`,`${i}/proxy?do=mpd&mode=${o}&video_url=${encodeURIComponent(E)}${v?`&audio_url=${encodeURIComponent(v)}`:""}&duration=${Number(_.duration||l||0)}`)}catch(g){console.warn("[bili_official] \u83B7\u53D6\u753B\u8D28\u5931\u8D25:",m,g.message)}if(p.length)return{parse:0,url:p,header:{"User-Agent":oPe,Referer:"https://www.bilibili.com/"},subt:c,extra:{format:"application/dash+xml",duration:l,danmaku:c}}}let f=u?.durl?.[0];if(f?.url)return{parse:0,url:f.url,header:{"User-Agent":oPe,Referer:"https://www.bilibili.com/"},subt:c,extra:{danmaku:c}};throw new Error("\u64AD\u653E\u94FE\u63A5\u83B7\u53D6\u5931\u8D25")}async function aPe(e){return NW.proxy(e)}var oPe,cPe,qwn,lPe,Hwn,tjt,fjt,I3,rjt,hjt,Vwn,njt,Zwn,yjt=ie(()=>{vr();OW();Cr();EW();ia();oPe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",cPe=20,qwn="http://127.0.0.1:3006",lPe="bili_official",Hwn=24*60*60*1e3,tjt=["media_bangumi","media_ft"],fjt=ye.create({timeout:15e3,validateStatus:()=>!0,...fn(),paramsSerializer:{serialize(e={}){return Object.entries(e).filter(([,t])=>t!=null&&String(t)!=="").map(([t,r])=>`${encodeURIComponent(t)}=${encodeURIComponent(String(r))}`).join("&")}},headers:{"User-Agent":oPe,Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}}),I3="",rjt=0,hjt=[{type_id:"5",type_name:"\u7535\u89C6\u5267"},{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"3",type_name:"\u7EAA\u5F55\u7247"},{type_id:"1",type_name:"\u756A\u5267"},{type_id:"4",type_name:"\u56FD\u521B"},{type_id:"7",type_name:"\u7EFC\u827A"},{type_id:"8",type_name:"\u77ED\u5267"}],Vwn=6*60*60*1e3,njt=new _t(20,Vwn);Zwn={meta:{key:lPe,name:"\u{1F3AC} bili\u5B98",type:3,searchable:1,quickSearch:1,filterable:1,version:"1.0.0",author:"CatPawOpen",description:"\u54D4\u54E9\u54D4\u54E9 PGC \u5B98\u65B9\u5206\u7C7B/\u641C\u7D22\uFF0C\u767B\u5F55\u548C MPD \u6784\u5EFA\u590D\u7528 bili_all",homepage:"https://www.bilibili.com"},api:async e=>{e.post("/init",async(t,r)=>r.send({code:0,message:"bili\u5B98\u521D\u59CB\u5316\u5B8C\u6210"})),e.post("/home",async(t,r)=>r.send(await ijt(t))),e.post("/homeVod",async(t,r)=>r.send(await ajt(t))),e.post("/category",async(t,r)=>r.send(await uPe(t))),e.post("/detail",async(t,r)=>{try{return r.send(await ojt(t))}catch(n){return console.error("[bili_official] \u8BE6\u60C5\u5931\u8D25:",n.message),r.send({list:[]})}}),e.post("/search",async(t,r)=>r.send(await cjt(t))),e.post("/play",async(t,r)=>{try{return r.send(await djt(t))}catch(n){return console.error("[bili_official] \u64AD\u653E\u5931\u8D25:",n.message),r.send({code:500,message:n.message||"\u64AD\u653E\u5931\u8D25",parse:0,url:"",header:{}})}}),e.get("/proxy",async(t,r)=>{let[n,s,i]=await aPe(t.query||{});r.code(n).header("Content-Type",s).send(i)}),e.post("/proxy",async(t,r)=>{let[n,s,i]=await aPe(t.body||{});r.code(n).header("Content-Type",s).send(i)})},home:ijt,homeVod:ajt,category:uPe,detail:ojt,search:cjt,play:djt,proxy:aPe}});function Sjt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function sNn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var vjt,eNn,tNn,rNn,nNn,hi,Ef=ie(()=>{Cr();Xd();fc();la();Dn();fa();Ds();vjt=15e3,eNn=8e3,tNn=5*60*1e3,rNn=500,nNn=6;hi=class{constructor(t,r,n,s){this.siteName=t,this.siteKey=r,this.meta=n,this.getCacheFunction=s,this.baseUrlCache=new Map,this.requestCache=new Map,this.inflightRequests=new Map,this.filterRulesCache=new Map,this.liveStructureCache=null,this.liveStructurePromise=null,this.requestTimeout=vjt,this.requestCacheTTL=tNn,this.requestCacheMax=rNn,this.requestRetryCount=1,this.requestRetryDelay=300,this.detailConcurrency=nNn,this.liveStructureTTL=10*60*1e3,this.useLiveCategoryMetadata=!1,this.validateCategoryPageUrl=!1}async getUrl(t){if(!this.baseUrlCache.has(t)){let r=await this.getCacheFunction(t),n=await this.resolveWorkingUrl(r);if(!n)throw new Error(`[${this.siteName}] \u65E0\u53EF\u7528\u7AD9\u70B9 url\uFF08\u6240\u6709\u5019\u9009\u5747\u8FDE\u4E0D\u4E0A\uFF09`);this.baseUrlCache.set(t,n)}return this.baseUrlCache.get(t)}async resolveWorkingUrl(t){let r=Array.isArray(t)?t:[];if(this.validateCategoryPageUrl){for(let n of r)if(await this.isValidCategoryBaseUrl(n))return n}return await this.firstSuccessfulUrl(r)}async firstSuccessfulUrl(t){return await fj(t)}async isValidCategoryBaseUrl(t){if(!t)return!1;try{let r=await this.request(`${t}/index.php/vod/show/id/1.html`,!1,{timeout:8e3,retryCount:0});return typeof r=="string"&&/class="library-box/i.test(r)}catch{return!1}}delay(t){return Yt(t)}shouldRetryRequest(t){return t?.response?[408,425,429,500,502,503,504].includes(t.response.status):!0}getCachedRequest(t){let r=this.requestCache.get(t);return r?Date.now()-r.timestamp>this.requestCacheTTL?(this.requestCache.delete(t),null):(this.requestCache.delete(t),this.requestCache.set(t,r),r.data):null}setCachedRequest(t,r){if(this.requestCache.size>=this.requestCacheMax){let n=Math.min(50,this.requestCache.size),s=0;for(let i of this.requestCache.keys())if(this.requestCache.delete(i),s++,s>=n)break}this.requestCache.set(t,{data:r,timestamp:Date.now()})}async doRequest(t){let r=new AbortController,n=setTimeout(()=>r.abort(),this.requestTimeout);try{return(await Xe.get(t,{headers:{"User-Agent":MB},signal:r.signal})).data}catch(s){throw s}finally{clearTimeout(n)}}async request(t,r=!1,n={}){let s=t,i=r?this.getCachedRequest(s):null;if(i!==null)return i;let a=Number.isFinite(n.timeout)?n.timeout:this.requestTimeout,o=Number.isFinite(n.retryCount)?n.retryCount:this.requestRetryCount,c=`${r?"cache":"nocache"}:${s}:${a}:${o}`;if(this.inflightRequests.has(c))return this.inflightRequests.get(c);let u=(async()=>{let l=r?this.requestCache.get(s)?.data:null,d=null;for(let f=0;f<=o;f++)try{let h=this.requestTimeout;this.requestTimeout=a;try{let p=this.normalizeHtmlResponse(await this.doRequest(t));return r&&this.setCachedRequest(s,p),p}finally{this.requestTimeout=h}}catch(h){if(d=h,f>=o||!this.shouldRetryRequest(h))break;await this.delay(this.requestRetryDelay*(f+1))}if(l&&!d?.response)return l;throw d})();this.inflightRequests.set(c,u);try{return await u}finally{this.inflightRequests.delete(c)}}normalizePage(t){let r=Number.parseInt(t,10);return Number.isNaN(r)||r<=0?1:r}generateYears(t,r){let n=[];for(let s=r;s>=t;s--)n.push({v:s.toString(),n:s.toString()});return n}normalizeText(t){return String(t||"").replace(/\s+/g," ").trim()}normalizeHtmlResponse(t){if(typeof t!="string")return t;let r=t.indexOf('"n.includes(u)))return{key:o,name:o==="year"?"\u65F6\u95F4":c[0]};let i=this.detectFilterKey(r);return i?{key:i,name:{id:"\u7C7B\u578B",class:"\u5267\u60C5",area:"\u5730\u533A",lang:"\u8BED\u8A00",year:"\u65F6\u95F4",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"}[i]||i}:{key:"",name:""}}detectFilterKey(t=""){return/\/show\/by\//i.test(t)?"by":/\/show\/class\//i.test(t)?"class":/\/show\/area\//i.test(t)?"area":/\/lang\//i.test(t)?"lang":/\/year\//i.test(t)?"year":/\/letter\//i.test(t)?"letter":/\/show\/id\/\d+\.html/i.test(t)?"id":""}extractFilterValue(t="",r=""){let s={by:/\/show\/by\/([^/]+)\/id\//i,class:/\/show\/class\/([^/]+)\/id\//i,area:/\/show\/area\/([^/]+)\/id\//i,lang:/\/lang\/([^/.]+)\.html/i,year:/\/year\/([^/.]+)\.html/i,letter:/\/letter\/([^/.]+)\.html/i,id:/\/show\/id\/(\d+)\.html/i}[r];if(!s)return"";let i=t.match(s);return i?this.decodeFilterValue(i[1]):""}parseLiveClasses(t){let r=Xt(t),n=[],s=new Set,i=[".page-heading .library-box-first .library-list a",".drop-content-items li",".nav-menu-items li"];for(let a of i)if(r(a).each((o,c)=>{let u=r(c),l=c.tagName==="a"?u:u.find("a").first(),d=l.attr("href")||"";if(!d||!d.includes("/show/")&&!d.includes("/type/"))return;let f=d.match(/\/id\/(\d+)/i)?.[1]||d.match(/\/type\/(\d+)/i)?.[1]||d.match(/(\d+)(?:\.html)?$/i)?.[1];if(!f||s.has(f))return;let h=this.normalizeLiveClassName(l.text()||l.attr("title")||l.attr("alt")||"");h&&(s.add(f),n.push({type_name:h,type_id:f}))}),n.length>0)return n;return n}parseLiveFilters(t,r){let n=Xt(t),s=[],i={},a=new Set;return n("div.library-box.scroll-box").slice(1).each((o,c)=>{let u=n(c);if(u.find(".library-stat").length>0)return;let l=this.normalizeText(u.find("a.library-item-first").first().text()),d=u.find(".library-list a"),f=d.first().attr("href")||"",h=this.getLiveFilterMeta(l,f);if(!h.key||a.has(h.key)||d.length===0)return;let p=new Set,m=[];d.each((g,_)=>{let y=n(_),A=y.attr("href")||"",E=this.extractFilterValue(A,h.key),v=this.normalizeText(y.text()||y.attr("title")||"");!E||!v||p.has(E)||(p.add(E),m.push({v:E,n:v}))}),m.length!==0&&(a.add(h.key),s.push({name:h.name,key:h.key}),i[`${r}.${h.key}`]=m)}),{rules:s,values:i}}async ensureLiveFilterData(t,r,n=null){if(!this.useLiveCategoryMetadata||!r)return;let s=String(r);if(this.filterData?.[s]?.length>0)return;let i=n||await this.getUrl(t);try{let a=await this.request(`${i}/index.php/vod/show/id/${s}.html`,!0),o=this.parseLiveFilters(a,s);if(o.rules.length===0)return;this.filterData={...this.filterData||{},[s]:o.rules},this.filterValues={...this.filterValues||{},...o.values},this.filterRulesCache.delete(s),this.homeCache=null}catch{}}async ensureLiveCategoryMetadata(t){if(!this.useLiveCategoryMetadata)return;let r=Date.now();if(!(this.liveStructureCache&&r-this.liveStructureCache.timestamp{let n=await this.getUrl(t),s=String(this.classes?.[0]?.type_id||"1"),i=await this.request(`${n}/index.php/vod/show/id/${s}.html`,!0),a=this.parseLiveClasses(i);if(a.length===0)return;let o={},c={},u=new Map([[s,i]]);await this.mapWithConcurrency(a,3,async l=>{let d=String(l.type_id);try{let f=u.get(d)||await this.request(`${n}/index.php/vod/show/id/${d}.html`,!0);u.set(d,f);let h=this.parseLiveFilters(f,d);o[d]=h.rules,Object.assign(c,h.values)}catch{o[d]=this.filterData?.[d]||[]}}),this.classes=a,this.filterData=o,this.filterValues=c,this.filterRulesCache.clear(),this.homeCache=null,this.liveStructureCache={timestamp:Date.now()}})();try{await this.liveStructurePromise}finally{this.liveStructurePromise=null}}}resolveFilterValue(t,r){let n=`${t}.${r}`;return this.filterValues?.[n]||this.filterValues?.[r]||[]}getFilterRules(t){let r=String(t??"");if(this.filterRulesCache.has(r))return this.filterRulesCache.get(r);let s=(this.filterData?.[r]||[]).map(i=>({name:i.name,key:i.key,value:this.resolveFilterValue(r,i.key)}));return this.filterRulesCache.set(r,s),s}async home(t,r){try{this.useLiveCategoryMetadata&&t?.server&&await this.ensureLiveCategoryMetadata(t.server);let n=Qr(this.siteKey,t),s=Wr(n);if(s)return s;let i={};for(let c of Object.keys(this.filterData||{}))i[c]=this.getFilterRules(c);let a={class:this.classes||[],filters:i},o=this.meta?.homeCacheTTL||bt.static;return hn(n,a,o),a}catch(n){return console.warn(`[${this.siteName}] home \u5931\u8D25:`,n.message),{class:this.classes||[],filters:{}}}}buildDetailUrl(t,r){return r.startsWith("http")?r:r.startsWith("/")?t+r:`${t}/index.php/vod/detail/id/${r}.html`}async mapWithConcurrency(t,r,n){let s=[],i=new Array(t.length),a=0,o=async()=>{for(;;){let u=a++;if(u>=t.length)break;i[u]=await n(t[u],u)}},c=Math.min(r,t.length);for(let u=0;usNn(o)).filter(o=>o.id);return{list:(await Promise.all(i.map(({id:o,meta:c})=>{let u=_b("detail",{id:o,server:t.server});return $n(this.siteKey,"detail",u,async()=>{try{let l=this.buildDetailUrl(n,o),d=await this.request(l,!0),f=Xt(d),h={vod_id:o,vod_name:f(".page-title")[0]?.children[0]?.data||"",vod_pic:c?.vod_pic||f(f(".mobile-play")).find(".lazyload")[0]?.attribs["data-src"]||"",vod_remarks:c?.vod_remarks||""},p=f(".video-info-itemtitle");for(let y of p){let A=f(y).text(),v=f(y).next().find("a").map((b,I)=>{let T=f(I).text().trim();return T||null}).get().filter(Boolean).join(", ");A.includes("\u5267\u60C5")?h.vod_content=f(y).next().find("p").text().trim():A.includes("\u5BFC\u6F14")?h.vod_director=v.trim():A.includes("\u4E3B\u6F14")&&(h.vod_actor=v.trim())}let g=f("div.module-row-info p").map((y,A)=>f(A).text().trim()).get().filter(Boolean),_=g.length>0?await Es(g,t):null;return _&&(h.vod_play_from=_.froms,h.vod_play_url=_.urls,Array.isArray(_.links)&&_.links.length>0&&(h.vod_links=_.links)),h}catch(l){return console.error(`[${this.siteName}] \u83B7\u53D6\u8BE6\u60C5\u5931\u8D25 (id: ${o}):`,l.message),{vod_id:o,vod_name:"\u83B7\u53D6\u5931\u8D25",vod_pic:c?.vod_pic||"",vod_remarks:c?.vod_remarks||"\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25",vod_content:`\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25: ${l.message}`}}},{timeout:vjt})}))).filter(Boolean)}}catch{return{list:[]}}}async search(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server),i=String(t.body.wd||"").trim();if(!i)return{page:n,pagecount:n,list:[]};let a=await this.request(`${s}/index.php/vod/search/wd/${encodeURIComponent(i)}.html`,!0,{timeout:eNn,retryCount:0}),o=Xt(a),c=o(".module-search-item").map((u,l)=>{let d=o(l),f=d.find(".video-serial"),h=f.length>0?f[0].attribs.href:"",p=this.fixImgUrl(d.find(".module-item-pic > img")[0]?.attribs["data-src"]||""),m=f.length>0?o(f[0]).text():"";return{vod_id:Sjt(h,{vod_pic:p,vod_remarks:m}),vod_name:f.length>0?f[0].attribs.title:"",vod_pic:p,vod_remarks:m}}).get();return{page:n,pagecount:c.length<10?n:n+1,list:c}}catch(s){return console.error(`[${this.siteName}] \u641C\u7D22\u5931\u8D25:`,s.message),{page:n,pagecount:n,list:[]}}}buildFilterUrl(t,r,n={}){let s=t.replace(/\/index\.php\/vod\/show\/id\/[^/]+$/i,""),i=String(n.id||r),a=[];return n.area&&a.push(`area/${encodeURIComponent(n.area)}`),n.by&&a.push(`by/${encodeURIComponent(n.by)}`),n.class&&a.push(`class/${encodeURIComponent(n.class)}`),a.push(`id/${encodeURIComponent(i)}`),n.lang&&a.push(`lang/${encodeURIComponent(n.lang)}`),n.letter&&a.push(`letter/${encodeURIComponent(n.letter)}`),n.year&&a.push(`year/${encodeURIComponent(n.year)}`),`${s}/index.php/vod/show/${a.join("/")}`}async parseCategoryVideos(t){return t("#main .module-item").map((n,s)=>{let i=t(s),a=i.find(".module-item-pic a").attr("href"),o=i.find(".module-item-pic img").attr("alt"),c=i.find(".module-item-pic img").attr("data-src"),u=i.find(".module-item-text").text(),l=this.fixImgUrl(c);return{vod_id:Sjt(a||"",{vod_pic:l,vod_remarks:u}),vod_name:o,vod_pic:l,vod_remarks:u}}).get()}async category(t,r){let n=this.normalizePage(t.body.page);try{this.useLiveCategoryMetadata&&t?.server&&await this.ensureLiveCategoryMetadata(t.server);let s=await this.getUrl(t.server),i=t.body.id,a=t.body.filters||t.body.extend||t.body.ext||{},o=String(a.id||i);this.useLiveCategoryMetadata&&await this.ensureLiveFilterData(t.server,o,s);let c=`${s}/index.php/vod/show/id/${i}`,u=this.buildFilterUrl(c,i,a)+`/page/${n}.html`,l=await this.request(u,!0),d=Xt(l);if(this.useLiveCategoryMetadata){let _=this.parseLiveFilters(l,o);_.rules.length>0&&(this.filterData={...this.filterData||{},[o]:_.rules},this.filterValues={...this.filterValues||{},..._.values},this.filterRulesCache.delete(o))}let f=await this.parseCategoryVideos(d),p=d("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?n+1:n,m={page:n,pagecount:p,limit:72,total:72*p,list:f},g=this.getFilterRules(o);return g&&g.length>0&&(m.filter=g),m}catch(s){return console.warn(`[${this.siteName}] category \u5931\u8D25:`,s.message),{page:n,pagecount:n,limit:72,total:0,list:[]}}}createApi(t){t.post("/init",Ti),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Ps),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}getStaticHomeSnapshot(){let t={};for(let r of Object.keys(this.filterData||{}))t[r]=this.getFilterRules(r);return JSON.parse(JSON.stringify({class:this.classes||[],filters:t}))}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),staticHome:()=>this.getStaticHomeSnapshot(),check:async t=>{try{return await this.getUrl(t)}catch{return null}}}}}});function bjt(e){let t=[];Array.isArray(e)?t=e:typeof e=="string"?t=[e]:e&&typeof e=="object"&&(Array.isArray(e.urls)?t=e.urls:typeof e.url=="string"&&(t=[e.url]));let r=[],n=new Set;for(let s of t){let i=String(s??"").trim();!i||n.has(i)||(n.add(i),r.push(i))}return r}function Tjt(e,t){let r=e?.config?.[t];return bjt(r)}async function Qw(e,t){if(!e||!t)return[];if(!e.db)return Tjt(e,t);let r=[];try{let s=await e.db.getObjectDefault(`/${t}`,{});r=bjt(s?.urls??s)}catch(s){console.error(`[${t}] \u8BFB\u53D6\u6570\u636E\u5E93\u57DF\u540D\u914D\u7F6E\u5931\u8D25:`,s)}if(r.length>0)return r;let n=Tjt(e,t);if(n.length===0)return[];try{await e.db.push(`/${t}/urls`,n),console.log(`[${t}] DB\u4E3A\u7A7A\uFF0C\u5DF2\u4ECE index.config.js \u56DE\u586B\u57DF\u540D\u914D\u7F6E\uFF0C\u5171 ${n.length} \u6761`)}catch(s){console.error(`[${t}] \u56DE\u586B index.config.js \u5230\u6570\u636E\u5E93\u5931\u8D25:`,s)}return n}var LW=ie(()=>{});async function fPe(e){e.get("/urls",async(t,r)=>{r.send({code:0,data:await dPe(t.server)})}),e.put("/urls",async(t,r)=>{await iNn(t.server,t.body),r.send({code:0})}),e.delete("/urls",async(t,r)=>{await aNn(t.server),r.send({code:0})})}var dPe,iNn,aNn,hPe=ie(()=>{LW();dPe=async e=>Qw(e,"wogg"),iNn=async(e,t)=>{await e.db.push("/wogg/urls",t)},aNn=async e=>{await e.db.delete("/wogg/urls")}});function pPe(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function oNn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var cNn,uNn,lNn,dNn,Ijt,Rjt,fNn,mPe,hNn,Cjt,xjt=ie(()=>{Cr();fc();Xd();Ef();hPe();la();Dn();fa();ia();cNn=15e3,uNn=10*60*1e3,lNn=15*1e3,dNn=30*1e3,Ijt=60*1e3,Rjt=200,fNn=4,mPe=class extends hi{constructor(){super("\u73A9\u5076","wogg",{key:"wogg",name:"\u2601\uFE0F \u73A9\u5076",type:3,homeCacheTTL:bt.static},dPe),this.urlState={value:"",timestamp:0},this.htmlCache=new Map,this.shareDetailCache=new _t(Rjt,Ijt),this.detailConcurrency=fNn}getCacheBucket(t,r){if(t instanceof _t)return t;let n=String(r),s=t.get(n);return s||(s=new _t(Rjt,r),t.set(n,s)),s}async withCache(t,r,n,s,i){let a=this.getCacheBucket(t,s),o=a.get(n);return o?o.data:$n("wogg",r,n,async()=>{let c=await i();return a.set(n,{data:c}),c},{timeout:3e4})}async getUrl(t,r=!1){let n=Date.now();return!r&&this.urlState.value&&n-this.urlState.timestamp{let s=await this.getCacheFunction(t),i=await fj(s);return console.log(`[wogg] \u57DF\u540D\u5019\u9009=${Array.isArray(s)?s.length:0}, \u9009\u4E2D=${i||"none"}`),this.urlState.value=i||"",this.urlState.timestamp=Date.now(),this.urlState.value},3e4)}async request(t,r={}){let n=r.ttl==null?lNn:r.ttl,s=async()=>(await Xe.get(t,{headers:{"User-Agent":MB},timeout:cNn})).data||"";if(r.noCache||n<=0)return s();let i=`html:${t}`;return this.withCache(this.htmlCache,"html",i,n,s)}async init(t,r){return await Ti(t,r),{}}async home(t,r){let n=await this.getUrl(t.server);if(!n)return{class:[]};let s=await this.request(`${n}/index.php/vodshow/1-----------.html`);return{class:Xt(s)("div.library-box-first a[href*=/vodshow/]").map((a,o)=>{let c=o.attribs?.href?.match(/vodshow\/(\d+)-----------.html/);return c?{type_id:c[1],type_name:(o.attribs?.title||"").replace(/片库|玩偶/g,"")}:null}).get().filter(Boolean)}}fixImgUrl(t,r=""){if(!t)return"";let n=String(r||"").replace(/\/+$/,"");return t.startsWith("/img.php?url=")?t.substring(13):t.startsWith("/db.php?url=")?n?`${n}${t}`:t:t.startsWith("//")?`https:${t}`:t.startsWith("/")&&n?`${n}${t}`:t}getImgUrl(t,r,n=""){let s=t(r).find("div.module-item-pic img").first(),i=[s.attr("data-src"),s.attr("data-original"),s.attr("data-lazy-src"),s.attr("data-srcset"),s.attr("srcset"),s.attr("src")];for(let a of i){if(!a)continue;let o=String(a).trim();if(!o)continue;let c=o.split(",")[0]?.trim().split(/\s+/)[0]||"";if(c)return this.fixImgUrl(c,n)}return""}getHrefInfoIdx(t){let r=Array.isArray(t)?t:t.split("-");for(let n=1;n div.module-search-item").map((g,_)=>{let y=p(_).find("div.video-info-header h3 a")[0];if(!y?.attribs?.href)return null;let A=y.attribs.href.match(/voddetail\/(.*).html/);return A?{vod_id:pPe(A[1],{vod_pic:this.getImgUrl(p,_,n),vod_remarks:p(_).find("a.video-serial").text()}),vod_name:y.attribs.title||"",vod_pic:this.getImgUrl(p,_,n),vod_remarks:p(_).find("a.video-serial").text()}:null}).get().filter(Boolean);return{page:a,pagecount:m.length<10?a:a+1,list:m}}let o=[],c=null;if(a===1&&Object.keys(i).length===0){let d=await this.request(`${n}/index.php/vodshow/${s}-----------.html`);c=Xt(d),c("a.library-item-first").map((f,h)=>{let p=c(h.parent).find("div.library-list > a.library-item");if(p.length>0){let m=[],g=0;p.each((_,y)=>{let E=y.attribs.href.match(/vodshow\/(.*).html/)[1].split("-");_===0&&(g=this.getHrefInfoIdx(E),g!==2&&m.push({n:"\u5168\u90E8",v:""})),m.push({n:y.attribs.title.replace(/按|排序/g,""),v:decodeURIComponent(E[g].toString())})}),o.push({key:g.toString(),name:"",init:m[0].v,value:m})}})}if(c===null){let d=[s,"","","","","","","",a,"","",""];Object.keys(i).forEach(h=>{d[Number.parseInt(h,10)]=i[h]});let f=await this.request(`${n}/index.php/vodshow/${d.join("-")}.html`);c=Xt(f)}let u=c("div.module-items > div.module-item").map((d,f)=>{let h=c(f).find("div.video-name a")[0];if(!h?.attribs?.href)return null;let p=h.attribs.href.match(/voddetail\/(.*).html/);return p?{vod_id:pPe(p[1],{vod_pic:this.getImgUrl(c,f,n),vod_remarks:c(f).find("div.module-item-text").text()}),vod_name:h.attribs.title||"",vod_pic:this.getImgUrl(c,f,n),vod_remarks:c(f).find("div.module-item-text").text()}:null}).get().filter(Boolean),l={page:a,pagecount:u.length<70?a:a+1,list:u};return o.length>0&&(l.filter=o),l}async detail(t,r){let n=await this.getUrl(t.server);if(!n)return{list:[]};let s=Array.isArray(t.body.id)?t.body.id:[t.body.id];return{list:(await this.mapWithConcurrency(s,this.detailConcurrency,async a=>{let o=oNn(a),c=String(o.id||"").trim();if(!c)return null;try{let u=await this.request(`${n}/index.php/voddetail/${c}.html`,{ttl:dNn}),l=Xt(u),d=[],f=[],h="";l("div.video-info-items a[href*=/vodsearch/]").each((g,_)=>{let y=_.attribs?.href?.match(/vodsearch\/(.*).html/);if(!y)return;let A=y[1].split("-"),E=l(_).text().trim(),v=this.getHrefInfoIdx(A);if(v===5){let b={id:"s-5-"+decodeURIComponent(A[5].toString()),name:E};d.push(`[a=cr:${JSON.stringify(b)}/]${E}[/a]`)}else if(v===1){let b={id:"s-1-"+decodeURIComponent(A[1].toString()),name:E};f.push(`[a=cr:${JSON.stringify(b)}/]${E}[/a]`)}else v===13&&(h=E)});let p={vod_name:l(".page-title").first().text().trim()||c,vod_year:h,vod_actor:f.join(", "),vod_director:d.join(", "),vod_content:l("div.video-info-content p[style*=none]").first().text().trim(),vod_pic:o.meta?.vod_pic||this.getImgUrl(l,l.root(),n),vod_remarks:o.meta?.vod_remarks||l("div.video-info-items, div.video-info-item, div.module-info-item, div.module-info-items").find("span.video-serial, a.video-serial, div.module-item-text, span.module-item-note, span.module-item-text").map((g,_)=>l(_).text().trim()).get().filter(Boolean)[0]||""},m=l("div.module-row-info p").map((g,_)=>l(_).text().trim()).get().filter(Boolean);if(m.length>0){let g=`share:${m.join("|")}`,_=await this.withCache(this.shareDetailCache,"detail",g,Ijt,async()=>Es(m,t));_&&(p.vod_play_from=_.froms,p.vod_play_url=_.urls,Array.isArray(_.links)&&_.links.length>0&&(p.vod_links=_.links))}return p}catch{return null}})).filter(Boolean)}}async search(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server);if(!s)return{page:1,pagecount:1,list:[]};let i=String(t.body.wd||"").trim();if(!i)return{page:n,pagecount:1,list:[]};let a=await this.request(`${s}/index.php/vodsearch/-------------.html?wd=${encodeURIComponent(i)}`),o=Xt(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];if(!d?.attribs?.href)return null;let f=d.attribs.href.match(/voddetail\/(.*).html/);return f?{vod_id:pPe(f[1],{vod_pic:this.getImgUrl(o,l,s),vod_remarks:o(l).find("a.video-serial").text()}),vod_name:d.attribs.title||"",vod_pic:this.getImgUrl(o,l,s),vod_remarks:o(l).find("a.video-serial").text()}:null}).get().filter(Boolean);return{page:n,pagecount:c.length<10?n:n+1,list:c}}catch(s){return console.error("[wogg] \u641C\u7D22\u5931\u8D25:",s.message),{page:n,pagecount:n,list:[]}}}async test(t,r){try{let n=function(c){c.statusCode&&c.statusCode===500&&console.error(c)},s=t.server.prefix,i={},a=await t.server.inject().post(`${s}/init`),o=a.json();if(i.init=o,n(o),a=await t.server.inject().post(`${s}/home`),o=a.json(),i.home=o,n(o),i.home.class.length>0&&(a=await t.server.inject().post(`${s}/category`).payload({id:i.home.class[0].type_id,page:1,filter:!0,filters:{}}),o=a.json(),i.category=o,n(o),i.category.list.length>0&&(a=await t.server.inject().post(`${s}/detail`).payload({id:i.category.list[0].vod_id}),o=a.json(),i.detail=o,n(o),i.detail.list&&i.detail.list.length>0))){i.play=[];for(let c of i.detail.list){let u=c.vod_play_from.split("$$$"),l=c.vod_play_url.split("$$$");for(let d=0;dn.send(await this.init(r,n))),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Ps),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys),t.get("/test",async(r,n)=>n.send(await this.test(r,n)))}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),check:t=>this.getUrl(t)}}},hNn=new mPe,Cjt=hNn.getExports()});var Pi,$0=ie(()=>{LW();Pi=class{constructor(t){this.siteKey=t}async getCache(t){return Qw(t,this.siteKey)}async setCache(t,r){await t.db.push(`/${this.siteKey}/urls`,r)}async removeCache(t){await t.db.delete(`/${this.siteKey}/urls`)}createRoutes(t){t.get("/urls",async(r,n)=>{n.send({code:0,data:await this.getCache(r.server)})}),t.put("/urls",async(r,n)=>{await this.setCache(r.server,r.body),n.send({code:0})}),t.delete("/urls",async(r,n)=>{await this.removeCache(r.server),n.send({code:0})})}}});async function _Pe(e){wjt.createRoutes(e)}var gPe,wjt,Njt,APe=ie(()=>{$0();gPe=class extends Pi{constructor(){super("muou")}},wjt=new gPe,Njt=e=>wjt.getCache(e)});var EPe,pNn,Ojt,Djt=ie(()=>{Ef();APe();Dn();EPe=class extends hi{constructor(){super("\u6728\u5076","mogg",{key:"muou",name:"\u2601\uFE0F \u6728\u5076",type:3,homeCacheTTL:bt.static},Njt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"115\u81FB\u4EAB",type_id:"25"},{type_name:"\u6728\u5076\u7535\u5F71",type_id:"1"},{type_name:"\u6728\u5076\u5267\u96C6",type_id:"2"},{type_name:"\u6728\u5076\u52A8\u6F2B",type_id:"3"},{type_name:"\u6728\u5076\u7EFC\u827A",type_id:"29"},{type_name:"\u6728\u5076\u7EAA\u5F55\u7247",type_id:"4"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],25:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],29:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"25.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"25.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"25.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u6B27\u7F8E\u5267"},{v:"15",n:"\u65E5\u97E9\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"},{v:"23",n:"\u6CF0\u5267"},{v:"26",n:"\u5176\u5B83\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.id":[{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u65E5\u672C"},{v:"22",n:"\u6B27\u7F8E"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"29.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"29.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"29.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},pNn=new EPe,Ojt=pNn.getExports()});async function vPe(e){Pjt.createRoutes(e)}var yPe,Pjt,Ljt,SPe=ie(()=>{$0();yPe=class extends Pi{constructor(){super("erxiao")}},Pjt=new yPe,Ljt=e=>Pjt.getCache(e)});var TPe,mNn,Mjt,kjt=ie(()=>{Ef();Dn();SPe();TPe=class extends hi{constructor(){super("\u4E8C\u5C0F","erxiao",{key:"erxiao",name:"\u2601\uFE0F \u4E8C\u5C0F",type:3,homeCacheTTL:bt.static},Ljt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u771F\u5F69",type_id:"22"},{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"3"},{type_name:"\u7EFC\u827A",type_id:"21"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],21:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],22:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"22.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"22.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"22.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"21.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"21.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"21.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"21.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"21.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"21.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},mNn=new TPe,Mjt=mNn.getExports()});async function IPe(e){Bjt.createRoutes(e)}var bPe,Bjt,Ujt,RPe=ie(()=>{$0();bPe=class extends Pi{constructor(){super("zhizhen")}},Bjt=new bPe,Ujt=e=>Bjt.getCache(e)});var CPe,gNn,Fjt,$jt=ie(()=>{Ef();Dn();RPe();CPe=class extends hi{constructor(){super("\u81F3\u81FB","zhizhen",{key:"zhizhen",name:"\u2601\uFE0F \u81F3\u81FB",type:3,homeCacheTTL:bt.static},Ujt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u81FB\u5F69\u8BA1\u5212",type_id:"26"},{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u7535\u89C6\u5267",type_id:"2"},{type_name:"\u7EFC\u827A",type_id:"3"},{type_name:"\u52A8\u6F2B",type_id:"4"},{type_name:"\u77ED\u5267\u5403\u5230\u9971",type_id:"27"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],26:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],27:[{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"26.id":[{v:"28",n:"\u81FB\u5F69\u7535\u5F71"},{v:"29",n:"\u81FB\u5F69\u5267\u96C6"},{v:"30",n:"\u81FB\u5F69\u52A8\u6F2B"},{v:"31",n:"\u81FB\u5F69\u7EFC\u827A"}],"26.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"26.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"26.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"27.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"27.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"27.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"27.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},gNn=new CPe,Fjt=gNn.getExports()});async function wPe(e){qjt.createRoutes(e)}var xPe,qjt,Hjt,NPe=ie(()=>{$0();xPe=class extends Pi{constructor(){super("ouge")}},qjt=new xPe,Hjt=e=>qjt.getCache(e)});var OPe,_Nn,Vjt,jjt=ie(()=>{Ef();Dn();NPe();OPe=class extends hi{constructor(){super("\u6B27\u54E5","ouge",{key:"ouge",name:"\u2601\uFE0F \u6B27\u54E5",type:3,homeCacheTTL:bt.static},Hjt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"3"},{type_name:"\u77ED\u5267",type_id:"5"},{type_name:"\u7EFC\u827A",type_id:"4"},{type_name:"\u7EFC\u5408",type_id:"21"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],21:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u5386\u53F2",n:"\u5386\u53F2"}],"1.area":[{v:"+\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u5386\u53F2",n:"\u5386\u53F2"}],"2.area":[{v:"+\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.class":[{v:"+\u7537\u9891",n:"\u7537\u9891"},{v:"\u5973\u9891",n:"\u5973\u9891"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u751C\u5BA0",n:"\u751C\u5BA0"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u7A7F\u8D8A",n:"\u7A7F\u8D8A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u4EB2\u60C5",n:"\u4EB2\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u840C\u5B9D",n:"\u840C\u5B9D"},{v:"\u91CD\u751F",n:"\u91CD\u751F"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u9006\u88AD",n:"\u9006\u88AD"},{v:"\u8650\u604B",n:"\u8650\u604B"},{v:"\u9274\u5B9D",n:"\u9274\u5B9D"},{v:"\u590D\u4EC7",n:"\u590D\u4EC7"},{v:"\u4FEE\u4ED9",n:"\u4FEE\u4ED9"}],"5.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"4.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"21.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"21.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},_Nn=new OPe,Vjt=_Nn.getExports()});async function PPe(e){Kjt.createRoutes(e)}var DPe,Kjt,Gjt,LPe=ie(()=>{$0();DPe=class extends Pi{constructor(){super("labi")}},Kjt=new DPe,Gjt=e=>Kjt.getCache(e)});var MPe,ANn,zjt,Yjt=ie(()=>{Ef();Dn();LPe();MPe=class extends hi{constructor(){super("\u8721\u7B14","labi",{key:"labi",name:"\u2601\uFE0F \u8721\u7B14",type:3,homeCacheTTL:bt.static},Gjt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u8721\u7B14\u7535\u5F71",type_id:"1"},{type_name:"\u8721\u7B14\u5267\u96C6",type_id:"2"},{type_name:"\u8721\u7B14\u52A8\u6F2B",type_id:"3"},{type_name:"\u8721\u7B14\u7EFC\u827A",type_id:"4"},{type_name:"\u81FB\u5F694K",type_id:"24"},{type_name:"\u8721\u7B14\u81FB\u5F69",type_id:"29"},{type_name:"\u8721\u7B14\u77ED\u5267",type_id:"5"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],24:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],29:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.id":[{v:"6",n:"\u79D1\u5E7B"},{v:"7",n:"\u7231\u60C5"},{v:"8",n:"\u6218\u4E89"},{v:"9",n:"\u6050\u6016"},{v:"10",n:"\u9AD8\u7801"},{v:"11",n:"\u52A8\u753B"},{v:"12",n:"\u52A8\u4F5C"},{v:"23",n:"\u753B\u8D28\u63A7"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u65E5\u97E9\u5267"},{v:"15",n:"\u6B27\u7F8E\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.id":[{v:"22",n:"\u65E5\u97E9"},{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u6B27\u7F8E"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"24.id":[{v:"26",n:"4K\u7535\u5F71"},{v:"27",n:"4K\u5267\u96C6"},{v:"28",n:"4K\u52A8\u6F2B"}],"24.area":[{v:"\u4E2D\u56FD",n:"\u4E2D\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"24.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"}],"24.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"24.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"29.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"29.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"29.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},ANn=new MPe,zjt=ANn.getExports()});async function BPe(e){Qjt.createRoutes(e)}var kPe,Qjt,Wjt,UPe=ie(()=>{$0();kPe=class extends Pi{constructor(){super("huban")}},Qjt=new kPe,Wjt=e=>Qjt.getCache(e)});var FPe,ENn,Xjt,Jjt=ie(()=>{Ef();Dn();UPe();FPe=class extends hi{constructor(){super("\u864E\u6591","huban",{key:"huban",name:"\u2601\uFE0F \u864E\u6591",type:3,homeCacheTTL:bt.static},Wjt),this.initFilterData(),this.validateCategoryPageUrl=!0}initFilterData(){this.classes=[{type_name:"\u5C0F\u864E\u6591\u98CE",type_id:"1"},{type_name:"\u5C0F\u864E\u6591\u82B1",type_id:"2"},{type_name:"\u5C0F\u864E\u6591\u96EA",type_id:"3"},{type_name:"\u5C0F\u864E\u6591\u6708",type_id:"4"},{type_name:"\u5C0F\u864E\u6591\u77ED",type_id:"6"},{type_name:"\u5C0F\u864E\u6591\u7CBE",type_id:"5"},{type_name:"115",type_id:"30"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],6:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u4F20\u8BB0",n:"\u4F20\u8BB0"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u4F26\u7406",n:"\u4F26\u7406"},{v:"\u707E\u96BE",n:"\u707E\u96BE"},{v:"\u897F\u90E8",n:"\u897F\u90E8"},{v:"\u9B54\u5E7B",n:"\u9B54\u5E7B"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u8BB0\u5F55",n:"\u8BB0\u5F55"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5076\u50CF",n:"\u5076\u50CF"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u8A00\u60C5",n:"\u8A00\u60C5"},{v:"\u519B\u4E8B",n:"\u519B\u4E8B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u795E\u8BDD",n:"\u795E\u8BDD"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u8C0D\u6218",n:"\u8C0D\u6218"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"},{v:"\u9999\u6E2F\u5730\u533A",n:"\u9999\u6E2F\u5730\u533A"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u771F\u4EBA\u79C0",n:"\u771F\u4EBA\u79C0"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u53E3\u79C0",n:"\u53E3\u79C0"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u6E38\u620F",n:"\u6E38\u620F"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u65F6\u5C1A",n:"\u65F6\u5C1A"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u804C\u573A",n:"\u804C\u573A"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u76DB\u4F1A",n:"\u76DB\u4F1A"}],"3.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"6.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"6.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.class":[{v:"\u592E\u89C6\u76F4\u64AD",n:"\u592E\u89C6\u76F4\u64AD"},{v:"\u5730\u65B9\u76F4\u64AD",n:"\u5730\u65B9\u76F4\u64AD"},{v:"\u7EFC\u827A\u8282\u76EE",n:"\u7EFC\u827A\u8282\u76EE"},{v:"\u5A31\u4E50\u8D44\u8BAF",n:"\u5A31\u4E50\u8D44\u8BAF"}],"5.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.year":[{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},ENn=new FPe,Xjt=ENn.getExports()});async function qPe(e){Zjt.createRoutes(e)}var $Pe,Zjt,eKt,HPe=ie(()=>{$0();$Pe=class extends Pi{constructor(){super("kuaiying")}},Zjt=new $Pe,eKt=e=>Zjt.getCache(e)});var VPe,yNn,tKt,rKt=ie(()=>{Ef();Dn();HPe();VPe=class extends hi{constructor(){super("\u5FEB\u6620","kuaiying",{key:"kuaiying",name:"\u2601\uFE0F \u5FEB\u6620",type:3,homeCacheTTL:bt.static},eKt),this.initFilterData(),this.validateCategoryPageUrl=!0}initFilterData(){this.classes=[{type_name:"\u6885",type_id:"1"},{type_name:"\u5170",type_id:"2"},{type_name:"\u7AF9",type_id:"3"},{type_name:"\u83CA",type_id:"4"},{type_name:"\u77ED",type_id:"6"},{type_name:"\u7CBE",type_id:"5"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],6:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u4F20\u8BB0",n:"\u4F20\u8BB0"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u4F26\u7406",n:"\u4F26\u7406"},{v:"\u707E\u96BE",n:"\u707E\u96BE"},{v:"\u897F\u90E8",n:"\u897F\u90E8"},{v:"\u9B54\u5E7B",n:"\u9B54\u5E7B"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u8BB0\u5F55",n:"\u8BB0\u5F55"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5076\u50CF",n:"\u5076\u50CF"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u8A00\u60C5",n:"\u8A00\u60C5"},{v:"\u519B\u4E8B",n:"\u519B\u4E8B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u795E\u8BDD",n:"\u795E\u8BDD"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u8C0D\u6218",n:"\u8C0D\u6218"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"},{v:"\u9999\u6E2F\u5730\u533A",n:"\u9999\u6E2F\u5730\u533A"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u771F\u4EBA\u79C0",n:"\u771F\u4EBA\u79C0"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u53E3\u79C0",n:"\u53E3\u79C0"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u6E38\u620F",n:"\u6E38\u620F"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u65F6\u5C1A",n:"\u65F6\u5C1A"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u804C\u573A",n:"\u804C\u573A"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u76DB\u4F1A",n:"\u76DB\u4F1A"}],"3.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"6.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"6.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.class":[{v:"\u592E\u89C6\u76F4\u64AD",n:"\u592E\u89C6\u76F4\u64AD"},{v:"\u5730\u65B9\u76F4\u64AD",n:"\u5730\u65B9\u76F4\u64AD"},{v:"\u7EFC\u827A\u8282\u76EE",n:"\u7EFC\u827A\u8282\u76EE"},{v:"\u5A31\u4E50\u8D44\u8BAF",n:"\u5A31\u4E50\u8D44\u8BAF"}],"5.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.year":[{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},yNn=new VPe,tKt=yNn.getExports()});async function KPe(e){nKt.createRoutes(e)}var jPe,nKt,sKt,GPe=ie(()=>{$0();jPe=class extends Pi{constructor(){super("duoduo")}},nKt=new jPe,sKt=e=>nKt.getCache(e)});var zPe,vNn,iKt,aKt=ie(()=>{Ef();Dn();GPe();zPe=class extends hi{constructor(){super("\u591A\u591A","duoduo",{key:"duoduo",name:"\u2601\uFE0F \u591A\u591A",type:3,homeCacheTTL:bt.static},sKt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u591A\u591A\u7535\u5F71",type_id:"1"},{type_name:"\u591A\u591A\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"4"},{type_name:"\u77ED\u5267",type_id:"5"},{type_name:"\u7EFC\u827A",type_id:"3"},{type_name:"\u7EAA\u5F55",type_id:"20"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],20:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"5.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"5.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"5.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.year":[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"20.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"20.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},vNn=new zPe,iKt=vNn.getExports()});async function QPe(e){oKt.createRoutes(e)}var YPe,oKt,cKt,WPe=ie(()=>{$0();YPe=class extends Pi{constructor(){super("shandian")}},oKt=new YPe,cKt=e=>oKt.getCache(e)});var XPe,SNn,uKt,lKt=ie(()=>{Ef();Dn();WPe();XPe=class extends hi{constructor(){super("\u95EA\u7535","shandian",{key:"shandian",name:"\u2601\uFE0F \u95EA\u7535",type:3,homeCacheTTL:bt.static},cKt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u95EA\u7535\u7535\u5F71",type_id:"1"},{type_name:"\u95EA\u7535\u5267\u96C6",type_id:"2"},{type_name:"\u95EA\u7535\u7EFC\u827A",type_id:"3"},{type_name:"\u95EA\u7535\u52A8\u6F2B",type_id:"4"},{type_name:"\u95EA\u7535\u77ED\u5267",type_id:"30"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={"1.id":[{v:"12",n:"\u52A8\u4F5C\u7247"},{v:"102",n:"\u559C\u5267\u7247"},{v:"103",n:"\u7231\u60C5\u7247"},{v:"104",n:"\u79D1\u5E7B\u7247"},{v:"105",n:"\u5267\u60C5\u7247"},{v:"106",n:"\u60AC\u7591\u7247"},{v:"107",n:"\u60CA\u609A\u7247"},{v:"108",n:"\u6050\u6016\u7247"},{v:"109",n:"\u72AF\u7F6A\u7247"},{v:"110",n:"\u6B66\u4FA0\u7247"},{v:"111",n:"\u5192\u9669\u7247"},{v:"112",n:"\u5947\u5E7B\u7247"},{v:"113",n:"\u6218\u4E89\u7247"},{v:"114",n:"\u7EAA\u5F55\u7247"},{v:"115",n:"\u4F26\u7406\u7247"}],"1.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.year":[{v:"2027",n:"2027"},{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"1.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"1.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"30.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"30.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"30.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"30.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"4.id":[{v:"401",n:"\u52A8\u753B\u7247"},{v:"402",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"403",n:"\u65E5\u97E9\u52A8\u6F2B"},{v:"404",n:"\u6B27\u7F8E\u52A8\u6F2B"},{v:"405",n:"\u6E2F\u53F0\u52A8\u6F2B"},{v:"406",n:"\u6D77\u5916\u52A8\u6F2B"}],"4.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"4.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"4.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"2.id":[{v:"201",n:"\u56FD\u4EA7\u5267"},{v:"202",n:"\u6E2F\u53F0\u5267"},{v:"203",n:"\u6B27\u7F8E\u5267"},{v:"204",n:"\u65E5\u97E9\u5267"},{v:"205",n:"\u6D77\u5916\u5267"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.year":[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"2.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"2.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],"3.id":[{v:"301",n:"\u5927\u9646\u7EFC\u827A"},{v:"302",n:"\u6E2F\u53F0\u7EFC\u827A"},{v:"303",n:"\u6B27\u7F8E\u7EFC\u827A"},{v:"304",n:"\u65E5\u97E9\u7EFC\u827A"}],"3.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.year":[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],"3.letter":[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],"3.by":[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}]}}},SNn=new XPe,uKt=SNn.getExports()});async function ZPe(e){dKt.createRoutes(e)}var JPe,dKt,fKt,eLe=ie(()=>{$0();JPe=class extends Pi{constructor(){super("wouniu")}},dKt=new JPe,fKt=e=>dKt.getCache(e)});function hKt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function TNn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function bNn(e){return/(?:(?:115|115cdn|anxia)\.com\/s\/|pan\.quark\.cn\/s\/|drive\.uc\.cn\/s\/|aliyundrive\.com\/s\/|alipan\.com\/s\/|(?:pan|yun)\.baidu\.com\/s\/|cloud\.189\.cn\/t\/|123(?:pan|684|865|685|912|592)\.(?:com|cn)\/s\/|pan\.xunlei\.com\/s\/)/i.test(String(e||""))}function INn(e,t){let r=String(e||"").trim();if(!r)return;let n=r.match(/https?:\/\/[^\s<>"',。;、]+/gi)||[r];for(let s of n){let i=String(s||"").replace(/[),\]}]+$/g,"").trim();bNn(i)&&t.add(i)}}function tLe(e,t=""){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;if(r.startsWith("//"))return`https:${r}`;let n=String(t||"").trim();if(!n)return r;try{return new URL(r,`${n.replace(/\/+$/,"")}/`).toString()}catch{return r}}function pKt(e){return e('.pagination a[title="\u4E0B\u4E00\u9875"], #page a[title="\u4E0B\u4E00\u9875"], .page-next[title="\u4E0B\u4E00\u9875"]').length>0}var rLe,RNn,mKt,gKt=ie(()=>{Xd();Ef();Dn();fc();eLe();rLe=class extends hi{constructor(){super("\u8717\u725B","wouniu",{key:"wouniu",name:"\u2601\uFE0F \u8717\u725B",type:3,homeCacheTTL:bt.static},fKt),this.initFilterData()}initFilterData(){this.classes=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u8FDE\u7EED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"}],this.filterData={1:[],2:[],3:[],4:[]},this.filterValues={}}parseVideoCards(t,r){return t('a.video-card[href*="/voddetail/"]').map((n,s)=>{let i=t(s),a=String(i.attr("href")||"").trim(),o=String(i.attr("title")||i.find(".video-title").first().text()||"").trim();if(!a||!o)return null;let c=i.find(".video-poster img").first(),u=c.attr("data-src")||c.attr("data-original")||c.attr("src")||"",l=tLe(this.fixImgUrl(u),r),d=String(i.find(".video-episode").first().text()||i.find(".video-meta").first().text()||"").replace(/\s+/g," ").trim();return{vod_id:hKt(a,{vod_name:o,vod_pic:l,vod_remarks:d}),vod_name:o,vod_pic:l,vod_remarks:d}}).get().filter(Boolean)}buildFilterUrl(t,r,n={}){let s=t.replace(/\/index\.php\/vod\/show\/id\/[^/]+$/i,""),i=new Array(12).fill("");i[0]=String(n.id||r||"1"),i[1]=String(n.area||""),i[2]=String(n.by||""),i[3]=String(n.class||""),i[4]=String(n.lang||""),i[5]=String(n.letter||""),i[9]=String(n.video||""),i[10]=String(n.level||""),i[11]=String(n.year||"");let a=i.map(c=>encodeURIComponent(c)).join("-"),o=String(n.version||"").trim();return o?`${s}/vodshow/${a}/version/${encodeURIComponent(o)}`:`${s}/vodshow/${a}`}async category(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server),i=String(t.body.id||"1").trim()||"1",a=t.body.filters||t.body.extend||t.body.ext||{},o=`${s}/index.php/vod/show/id/${i}`,c=`${this.buildFilterUrl(o,i,a)}/page/${n}.html`,u=await this.request(c,!0),l=Xt(u),d=this.parseVideoCards(l,s);if(d.length===0)return await super.category(t,r);let f=Math.max(d.length,1),h=pKt(l);return{page:n,pagecount:h?n+1:n,limit:f,total:h?n*f+1:(n-1)*f+d.length,list:d}}catch(s){return console.warn(`[${this.siteName}] category \u5931\u8D25:`,s.message),{page:n,pagecount:n,limit:36,total:0,list:[]}}}async detail(t,r){try{let n=await this.getUrl(t.server),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s){let{id:o,meta:c}=TNn(a);if(o)try{let u=this.buildDetailUrl(n,o),l=await this.request(u,!0),d=Xt(l),f=d(".premium-tags-top .p-tag").map((y,A)=>d(A).text().replace(/^★\s*/u,"").trim()).get().filter(Boolean),h=f.findIndex(y=>/^\d{4}$/u.test(y)),p=d(".premium-poster img, .mobile-play img[data-src], .video-cover img[data-src]").first(),m=p.attr("data-src")||p.attr("data-original")||p.attr("src")||"",g={vod_id:o,vod_name:d(".premium-title, .mobile-detail-title, .page-title").first().text().trim()||c.vod_name||o,vod_pic:tLe(c.vod_pic||this.fixImgUrl(m),n),vod_remarks:c.vod_remarks||f.at(-1)||"",vod_content:d(".detail-desc-text, .vod_content").first().text().replace(/收起\s*$/u,"").trim()};h>=0&&(g.vod_year=f[h],f[h+1]&&(g.vod_area=f[h+1])),d(".video-info-items").each((y,A)=>{let E=d(A).find(".video-info-itemtitle").first().text().trim(),v=d(A).find(".video-info-item a").map((b,I)=>d(I).text().trim()).get().filter(Boolean).join(", ");E.includes("\u5BFC\u6F14")&&(g.vod_director=v),E.includes("\u4E3B\u6F14")&&(g.vod_actor=v),E.includes("\u4E0A\u6620")&&(g.vod_year=d(A).find(".video-info-item").text().trim())}),d(".meta-item").each((y,A)=>{let E=d(A).find(".m-label").first().text().trim(),v=d(A).find(".m-val").first().text().replace(/\s+/g," ").trim();v&&(E.includes("\u5BFC\u6F14")&&(g.vod_director=v),E.includes("\u4E3B\u6F14")&&(g.vod_actor=v),E.includes("\u5907\u6CE8")&&(g.vod_remarks=v))});let _=new Set;if(d(".pan-link-item a[href], .pan-link-item [data-copy], .pan-link-item .pan-link-meta, .module-row-info [data-clipboard-text], .module-row-info a[href]").each((y,A)=>{let E=[d(A).attr("data-copy"),d(A).attr("data-clipboard-text"),d(A).attr("href"),d(A).text()];for(let v of E)INn(v,_)}),_.size>0){let y=await Es([..._],t).catch(A=>(console.warn(`[${this.siteName}] \u7F51\u76D8\u8BE6\u60C5\u89E3\u6790\u5931\u8D25:`,A.message),null));y?.froms&&y?.urls&&(g.vod_play_from=y.froms,g.vod_play_url=y.urls,Array.isArray(y.links)&&y.links.length>0&&(g.vod_links=y.links))}i.push(g)}catch(u){console.warn(`[${this.siteName}] \u83B7\u53D6\u8BE6\u60C5\u5931\u8D25 (id: ${o}):`,u.message),i.push({vod_id:o,vod_name:c.vod_name||"\u83B7\u53D6\u5931\u8D25",vod_pic:c.vod_pic||"",vod_remarks:c.vod_remarks||"\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25",vod_content:`\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25: ${u.message}`})}}return{list:i}}catch(n){return console.warn(`[${this.siteName}] detail \u5931\u8D25:`,n.message),{list:[]}}}async search(t,r){let n=this.normalizePage(t.body.page);try{let s=await this.getUrl(t.server),i=String(t.body.wd||"").trim();if(!i)return{page:n,pagecount:n,list:[]};let a=await this.request(`${s}/vodsearch/${encodeURIComponent(i)}-------------/page/${n}.html`,!0,{timeout:8e3,retryCount:0}),o=Xt(a),c=this.parseVideoCards(o,s);c.length===0&&(c=o(".module-search-item").map((d,f)=>{let h=o(f),p=h.find(".video-serial").first(),m=p.attr("href")||"",g=tLe(this.fixImgUrl(h.find(".module-item-pic > img").attr("data-src")||""),s),_=p.attr("title")||"",y=p.text().trim();return{vod_id:hKt(m,{vod_name:_,vod_pic:g,vod_remarks:y}),vod_name:_,vod_pic:g,vod_remarks:y}}).get().filter(d=>d.vod_name&&d.vod_id));let u=pKt(o),l=Math.max(c.length,1);return{page:n,pagecount:u?n+1:n,limit:l,total:u?n*l+1:(n-1)*l+c.length,list:c}}catch(s){return console.warn(`[${this.siteName}] search \u5931\u8D25:`,s.message),{page:n,pagecount:n,limit:10,total:0,list:[]}}}},RNn=new rLe,mKt=RNn.getExports()});var TKt={};kt(TKt,{default:()=>HNn});function q0(e){return e.map(t=>Array.isArray(t)?{n:t[0],v:t[1]}:{n:t,v:t})}function Bn(e,t,r=""){return{key:e,name:"",init:r,value:t}}function lLe(e){return e==null?e:JSON.parse(JSON.stringify(e))}function cLe(e,t){return JSON.stringify({site:String(e||"").trim(),id:String(t||"").trim()})}function kNn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.site&&t.id)return{site:String(t.site||"").trim(),id:String(t.id||"").trim()}}catch{}return{site:"",id:String(e||"").trim()}}function BNn(e){return String(e.url||"").split("?")[0].replace(/\/(?:init|home|category|detail|play|search)$/i,"")}function UNn(e={}){let t=e.filters||e.extend||e.ext||{};return t&&typeof t=="object"?t:{}}function vKt(e){return Array.isArray(e?.class)?e.class.filter(Boolean):[]}function sLe(e,t){let n=(e?.filters||{})?.[String(t||"")];return Array.isArray(n)?lLe(n):[]}function SKt(e){let t=MNn[e.key];return t?lLe(t):typeof e.spider?.staticHome=="function"?e.spider.staticHome():{class:[],filters:{}}}function FNn(e,t=""){let r=e.map(n=>({v:String(n?.type_id||"").trim(),n:String(n?.type_name||"").trim()})).filter(n=>n.v&&n.n);return r.length===0?null:{name:"\u5206\u7C7B",key:"cat",init:t||r[0].v,value:r}}function iLe(e,t,r=[]){let n=FNn(e,t),s=Array.isArray(r)?lLe(r):[];return[...n?[n]:[],...s.filter(i=>i?.key!=="cat")]}function $Nn(e,t=""){let r=String(t||"").trim();return r?`${e.name} \xB7 ${r}`:e.name}function aLe(e,t,r={}){if(!t||typeof t!="object")return t;let n=r.sourceId==null?t.vod_id:r.sourceId,s={...t,vod_id:cLe(e.key,n)};return r.withSiteRemark&&(s.vod_remarks=$Nn(e,t.vod_remarks)),s}function oLe(e=1){return{page:e,pagecount:e,limit:72,total:0,list:[]}}var _Kt,AKt,Xw,EKt,CNn,yKt,xNn,wNn,NNn,nLe,ONn,DNn,Ww,PNn,Oy,Dy,LNn,MNn,uLe,qNn,HNn,bKt=ie(()=>{fc();xjt();Djt();kjt();$jt();jjt();Yjt();Jjt();rKt();aKt();lKt();gKt();_Kt="wanoujuhe",AKt="_wanoujuhe",Xw=[{key:"wogg",name:"\u73A9\u5076",spider:Cjt},{key:"muou",name:"\u6728\u5076",spider:Ojt},{key:"erxiao",name:"\u4E8C\u5C0F",spider:Mjt},{key:"zhizhen",name:"\u81F3\u81FB",spider:Fjt},{key:"ouge",name:"\u6B27\u6B4C",spider:Vjt},{key:"labi",name:"\u8721\u7B14",spider:zjt},{key:"huban",name:"\u864E\u6591",spider:Xjt},{key:"kuaiying",name:"\u5FEB\u6620",spider:tKt},{key:"duoduo",name:"\u591A\u591A",spider:iKt},{key:"shandian",name:"\u95EA\u7535",spider:uKt},{key:"wouniu",name:"\u8717\u725B",spider:mKt}],EKt=new Map(Xw.map(e=>[e.key,e]));CNn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"44",type_name:"\u81FB\u5F69\u89C6\u754C"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55\u7247"},{type_id:"5",type_name:"\u97F3\u4E50"}],yKt=q0([["\u5168\u90E8",""],"\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u8B66\u532A","\u72AF\u7F6A","\u53E4\u88C5","\u5947\u5E7B","\u6B66\u4FA0","\u5192\u9669","\u67AA\u6218","\u60AC\u7591","\u60CA\u609A","\u7ECF\u5178","\u9752\u6625","\u6587\u827A","\u5FAE\u7535\u5F71","\u5386\u53F2"]),xNn=q0([["\u5168\u90E8",""],"\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u8B66\u532A","\u72AF\u7F6A","\u53E4\u88C5","\u5947\u5E7B","\u6B66\u4FA0","\u5192\u9669","\u67AA\u6218","\u60AC\u7591","\u60CA\u609A","\u7ECF\u5178","\u9752\u6625","\u6587\u827A","\u5FAE\u7535\u5F71","\u5386\u53F2"]),wNn=q0([["\u5168\u90E8",""],"\u7537\u9891","\u5973\u9891","\u90FD\u5E02","\u751C\u5BA0","\u5E74\u4EE3","\u7A7F\u8D8A","\u53E4\u88C5","\u4EB2\u60C5","\u5947\u5E7B","\u840C\u5B9D","\u91CD\u751F","\u5192\u9669","\u9006\u88AD","\u8650\u604B","\u9274\u5B9D","\u590D\u4EC7","\u4FEE\u4ED9"]),NNn=q0([["\u5168\u90E8",""],"\u60C5\u611F","\u79D1\u5E7B","\u70ED\u8840","\u63A8\u7406","\u641E\u7B11","\u5192\u9669","\u841D\u8389","\u6821\u56ED","\u52A8\u4F5C","\u673A\u6218","\u8FD0\u52A8","\u6218\u4E89","\u5C11\u5E74","\u5C11\u5973","\u793E\u4F1A","\u539F\u521B","\u4EB2\u5B50","\u76CA\u667A","\u52B1\u5FD7","\u5176\u4ED6"]),nLe=q0([["\u5168\u90E8",""],"\u4E2D\u56FD\u5927\u9646","\u4E2D\u56FD\u9999\u6E2F","\u4E2D\u56FD\u53F0\u6E7E","\u7F8E\u56FD","\u897F\u73ED\u7259","\u6CD5\u56FD","\u82F1\u56FD","\u65E5\u672C","\u97E9\u56FD","\u6CF0\u56FD","\u5FB7\u56FD","\u5370\u5EA6","\u610F\u5927\u5229","\u52A0\u62FF\u5927","\u5176\u4ED6"]),ONn=q0([["\u5168\u90E8",""],"\u4E2D\u56FD\u5927\u9646","\u65E5\u672C","\u7F8E\u56FD","\u82F1\u56FD","\u897F\u73ED\u7259","\u6CD5\u56FD","\u5176\u4ED6"]),DNn=q0([["\u5168\u90E8",""],"\u4E2D\u56FD\u5927\u9646","\u4E2D\u56FD\u53F0\u6E7E","\u7F8E\u56FD","\u6CD5\u56FD","\u82F1\u56FD","\u65E5\u672C","\u97E9\u56FD"]),Ww=q0([["\u5168\u90E8",""],"2026","2025","2024","2023","2022","2021","2020","2019","2018","2017","2016","2015","2014","2013","2012","2011","2010"]),PNn=q0([["\u5168\u90E8",""],"2026","2025","2024","2023","2022","2021"]),Oy=q0([["\u5168\u90E8",""],"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",["0-9","0"]]),Dy=q0([["\u65F6\u95F4","time"],["\u4EBA\u6C14","hits"],["\u8BC4\u5206","score"]]),LNn={1:[Bn("3",yKt),Bn("1",nLe),Bn("11",Ww),Bn("5",Oy),Bn("2",Dy,"time")],2:[Bn("3",yKt),Bn("1",nLe),Bn("11",Ww),Bn("5",Oy),Bn("2",Dy,"time")],44:[Bn("3",xNn),Bn("1",nLe),Bn("11",Ww),Bn("5",Oy),Bn("2",Dy,"time")],6:[Bn("3",wNn),Bn("11",PNn),Bn("5",Oy),Bn("2",Dy,"time")],3:[Bn("3",NNn),Bn("1",ONn),Bn("11",Ww),Bn("5",Oy),Bn("2",Dy,"time")],4:[Bn("1",DNn),Bn("11",Ww),Bn("5",Oy),Bn("2",Dy,"time")],46:[Bn("11",Ww),Bn("5",Oy),Bn("2",Dy,"time")],5:[Bn("5",Oy),Bn("2",Dy,"time")]},MNn={wogg:{class:CNn,filters:LNn}};uLe=class{constructor(){this.meta={key:_Kt,name:"\u2601\uFE0F \u73A9\u5076",type:3}}async injectSource(t,r,n,s={}){let a=`${BNn(t)}/${AKt}/${r.key}/${n}`,o=await t.server.inject({method:"POST",url:a,payload:s});if(o.statusCode>=400)throw new Error(`${r.name} ${n} HTTP ${o.statusCode}`);return o.json()}resolveSourceTid(t,r){let n=String(r.cat||"").trim(),s=SKt(t),i=vKt(s);return{homeResult:s,classes:i,tid:n||String(i[0]?.type_id||"").trim()}}async home(t,r){let n={};for(let s of Xw){let i=SKt(s),a=vKt(i),o=String(a[0]?.type_id||"").trim(),c=o?sLe(i,o):[],u=iLe(a,o,c);u.length>0&&(n[s.key]=u)}return{class:Xw.map(s=>({type_id:s.key,type_name:s.name})),filters:n}}async category(t,r){let n=Number.parseInt(t.body?.page,10)>0?Number.parseInt(t.body.page,10):1,s=String(t.body?.id||"").trim(),i=EKt.get(s);if(!i)return oLe(n);let a=UNn(t.body),{homeResult:o,classes:c,tid:u}=this.resolveSourceTid(i,a);if(!u)return oLe(n);let l={...a};delete l.cat;let d=sLe(o,u);try{let f=await this.injectSource(t,i,"category",{...t.body||{},id:u,filters:l,extend:l,ext:l});return{...f,page:f?.page||n,pagecount:f?.pagecount||n,list:Array.isArray(f?.list)?f.list.map(h=>aLe(i,h)):[],filter:iLe(c,u,d)}}catch(f){return console.warn(`[\u73A9\u5076\u805A\u5408] ${i.name} category \u5931\u8D25:`,f.message),{...oLe(n),filter:iLe(c,u,sLe(o,u))}}}async detail(t,r){let n=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],s=new Map,i=new Array(n.length).fill(null);return n.forEach((a,o)=>{let c=kNn(a),u=EKt.get(c.site);if(!u||!c.id){i[o]={vod_id:String(a||""),vod_name:"\u83B7\u53D6\u5931\u8D25",vod_remarks:"\u65E0\u6548\u7684\u805A\u5408\u8BE6\u60C5 ID"};return}s.has(u.key)||s.set(u.key,{source:u,items:[]}),s.get(u.key).items.push({index:o,id:c.id})}),await Promise.all(Array.from(s.values()).map(async({source:a,items:o})=>{try{let c=await this.injectSource(t,a,"detail",{...t.body||{},id:o.map(l=>l.id)}),u=Array.isArray(c?.list)?c.list:[];o.forEach((l,d)=>{let f=u[d];i[l.index]=f?aLe(a,f,{sourceId:l.id}):{vod_id:cLe(a.key,l.id),vod_name:"\u83B7\u53D6\u5931\u8D25",vod_remarks:`${a.name} \u8BE6\u60C5\u4E3A\u7A7A`}})}catch(c){console.warn(`[\u73A9\u5076\u805A\u5408] ${a.name} detail \u5931\u8D25:`,c.message),o.forEach(u=>{i[u.index]={vod_id:cLe(a.key,u.id),vod_name:"\u83B7\u53D6\u5931\u8D25",vod_remarks:`${a.name} \u8BE6\u60C5\u83B7\u53D6\u5931\u8D25`,vod_content:c.message}})}})),{list:i.filter(Boolean)}}async search(t,r){let n=Number.parseInt(t.body?.page,10)>0?Number.parseInt(t.body.page,10):1;if(!String(t.body?.wd||"").trim())return{page:n,pagecount:n,list:[]};let i=await Promise.all(Xw.map(async c=>{try{let u=await this.injectSource(t,c,"search",t.body||{});return{source:c,result:u}}catch(u){return console.warn(`[\u73A9\u5076\u805A\u5408] ${c.name} search \u5931\u8D25:`,u.message),{source:c,result:{page:n,pagecount:n,list:[]}}}})),a=i.flatMap(({source:c,result:u})=>Array.isArray(u?.list)?u.list.map(l=>aLe(c,l,{withSiteRemark:!0})):[]),o=i.reduce((c,{result:u})=>Math.max(c,Number.parseInt(u?.pagecount,10)||n),n);return{page:n,pagecount:o,list:a}}async createApi(t){for(let r of Xw)await t.register(r.spider.api,{prefix:`/${AKt}/${r.key}`});t.post("/init",Ti),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Ps),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),check:async t=>(await Promise.allSettled(Xw.map(n=>n.spider.check?.(t)))).some(n=>n.status==="fulfilled"&&n.value)?_Kt:null}}},qNn=new uLe,HNn=qNn.getExports()});var CKt=S((oPs,RKt)=>{var IKt=Array.prototype.slice;RKt.exports=function(t,r){return function(){var n,s=arguments,i=s.length;return i!==0&&typeof s[i-1]!="function"&&(s=IKt.call(arguments),n=new Promise(function(a,o){s.push(function(c,u){c!=null?o(c):a(r!==void 0?r.apply(this,IKt.call(arguments,1)):u)})})),t.apply(this,s),n}}});var wKt=S((cPs,xKt)=>{xKt.exports={request:[["StructureSize",2,24],["Flags",2,0],["Reserved",4,0],["FileId",16]],response:[["StructureSize",2],["Flags",2],["Reserved",4],["CreationTime",8],["LastAccessTime",8],["LastWriteTime",8],["ChangeTime",8],["AllocationSize",8],["EndofFile",8],["FileAttributes",4]]}});var Cc=S((uPs,NKt)=>{NKt.exports={FILE_SUPERSEDE:0,FILE_OPEN:1,FILE_CREATE:2,FILE_OPEN_IF:3,FILE_OVERWRITE:4,FILE_OVERWRITE_IF:5,MAX_READ_LENGTH:65536,MAX_WRITE_LENGTH:65423,FILE_SHARE_NONE:0,FILE_SHARE_READ:1,FILE_SHARE_WRITE:2,FILE_SHARE_DELETE:4,DELETE:65536,FILE_APPEND_DATA:4,FILE_DELETE_CHILD:64,FILE_READ_ATTRIBUTES:128,FILE_READ_DATA:1,FILE_READ_EA:8,FILE_WRITE_ATTRIBUTES:256,FILE_WRITE_DATA:2,FILE_WRITE_EA:16,READ_CONTROL:131072,SYNCHRONIZE:1048576,WRITE_DAC:262144,DIRECTORY:16}});var DKt=S((lPs,OKt)=>{var VNn=Cc();OKt.exports={request:[["StructureSize",2,57],["SecurityFlags",1,0],["RequestedOplockLevel",1,0],["ImpersonationLevel",4,2],["SmbCreateFlags",8,0],["Reserved",8,0],["DesiredAccess",4,1048705],["FileAttributes",4,0],["ShareAccess",4,7],["CreateDisposition",4,VNn.FILE_OPEN],["CreateOptions",4,32],["NameOffset",2],["NameLength",2],["CreateContextsOffset",4],["CreateContextsLength",4],["Buffer","NameLength"],["Reserved2",2,16896],["CreateContexts","CreateContextsLength",""]],response:[["StructureSize",2],["OplockLevel",1],["Flags",1],["CreateAction",4],["CreationTime",8],["LastAccessTime",8],["LastWriteTime",8],["ChangeTime",8],["AllocationSize",8],["EndofFile",8],["FileAttributes",4],["Reserved2",4],["FileId",16],["CreateContextsOffset",4],["CreateContextsLength",4],["Buffer","CreateContextsLength"]]}});var LKt=S((dPs,PKt)=>{PKt.exports={request:[["StructureSize",2,36],["DialectCount",2,2],["SecurityMode",2,1],["Reserved",2,0],["Capabilities",4,0],["ClientGuid",16,0],["ClientStartTime",8,0],["Dialects",4,Buffer.from([2,2,16,2])]],response:[["StructureSize",2],["SecurityMode",2],["DialectRevision",2],["Reserved",2],["ServerGuid",16],["Capabilities",4],["MaxTransactSize",4],["MaxReadSize",4],["MaxWriteSize",4],["SystemTime",8],["ServerStartTime",8],["SecurityBufferOffset",2],["SecurityBufferLength",2],["Reserved2",4],["Buffer","SecurityBufferLength"]]}});var kKt=S((fPs,MKt)=>{MKt.exports={request:[["StructureSize",2,33],["FileInformationClass",1,37],["Flags",1,0],["FileIndex",4,0],["FileId",16],["FileNameOffset",2,96],["FileNameLength",2],["OutputBufferLength",4,65536],["Buffer","FileNameLength"]],response:[["StructureSize",2],["OutputBufferOffset",2],["OutputBufferLength",4],["Buffer","OutputBufferLength"]]}});var UKt=S((hPs,BKt)=>{BKt.exports={request:[["StructureSize",2,49],["Padding",1,80],["Flags",1,0],["Length",4],["Offset",8],["FileId",16],["MinimumCount",4,0],["Channel",4,0],["RemainingBytes",4,0],["ReadChannelInfoOffset",2,0],["ReadChannelInfoLength",2,0],["Buffer",1,0]],response:[["StructureSize",2],["DataOffset",1],["Reserved",1],["DataLength",4],["DataRemaining",4],["Reserved2",4],["Buffer","DataLength"]]}});var $Kt=S((pPs,FKt)=>{FKt.exports={request:[["StructureSize",2,25],["Flags",1,0],["SecurityMode",1,1],["Capabilities",4,1],["Channel",4,0],["SecurityBufferOffset",2,88],["SecurityBufferLength",2],["PreviousSessionId",8,0],["Buffer","SecurityBufferLength"]],response:[["StructureSize",2],["SessionFlags",2],["SecurityBufferOffset",2],["SecurityBufferLength",2],["Buffer","SecurityBufferLength"]]}});var HKt=S((mPs,qKt)=>{qKt.exports={request:[["StructureSize",2,33],["InfoType",1,1],["FileInfoClass",1],["BufferLength",4],["BufferOffset",2,96],["Reserved",2,0],["AdditionalInformation",4,0],["FileId",16],["Buffer","BufferLength"]],response:[["StructureSize",2]]}});var jKt=S((gPs,VKt)=>{VKt.exports={request:[["StructureSize",2,9],["Reserved",2,0],["PathOffset",2,72],["PathLength",2],["Buffer","PathLength"]],response:[["StructureSize",2],["ShareType",1],["Reserved",1],["ShareFlags",4],["Capabilities",4],["MaximalAccess",4]]}});var GKt=S((_Ps,KKt)=>{KKt.exports={request:[["StructureSize",2,49],["DataOffset",2,112],["Length",4,0],["Offset",8],["FileId",16],["Channel",4,0],["RemainingBytes",4,0],["WriteChannelInfoOffset",2,0],["WriteChannelInfoLength",2,0],["Flags",4,0],["Buffer","Length"]],response:[["StructureSize",2],["Reserved",2],["Count",4],["Remaining",4],["WriteChannelInfoOffset",2],["WriteChannelInfoLength",2]]}});var du=S((APs,tGt)=>{var zKt={close:wKt(),create:DKt(),negotiate:LKt(),query_directory:kKt(),read:UKt(),session_setup:$Kt(),set_info:HKt(),tree_connect:jKt(),write:GKt()},YKt=Buffer.from([254,83,77,66]),Jw={Command:{NEGOTIATE:0,SESSION_SETUP:1,LOGOFF:2,TREE_CONNECT:3,TREE_DISCONNECT:4,CREATE:5,CLOSE:6,FLUSH:7,READ:8,WRITE:9,LOCK:10,IOCTL:11,CANCEL:12,ECHO:13,QUERY_DIRECTORY:14,CHANGE_NOTIFY:15,QUERY_INFO:16,SET_INFO:17,OPLOCK_BREAK:18}},MW=64,QKt=function(e,t){return[["ProtocolId",4,YKt],["StructureSize",2,MW],["CreditCharge",2,0],["Status",4,0],["Command",2],["Credit",2,126],["Flags",4,0],["NextCommand",4,0],["MessageId",4],["MessageIdHigh",4,0],["ProcessId",4,e],["TreeId",4,0],["SessionId",8,t],["Signature",16,0]]},WKt=function(e,t){return[["ProtocolId",4,YKt],["StructureSize",2,MW],["CreditCharge",2,0],["Status",4,0],["Command",2],["Credit",2,126],["Flags",4,0],["NextCommand",4,0],["MessageId",4],["MessageIdHigh",4,0],["AsyncId",8],["SessionId",8,t],["Signature",16,0]]},jNn=tGt.exports=function(e){this.headers={},e&&e.headers&&this.setHeaders(e.headers),this.request={},e&&e.request&&this.setRequest(e.request),this.response={}},Zw=jNn.prototype={};Zw.setHeaders=function(e){for(var t in e)this.headers[t]=e[t];if(this.structure=zKt[this.headers.Command.toLowerCase()],!this.structure)throw new Error("Unknown SMB2 structure: "+this.headers.Command)};Zw.getHeaders=function(){return this.headers};Zw.setRequest=function(e){this.request=e};Zw.getResponse=function(){return this.response};Zw.getBuffer=function(e){var t=Buffer.allocUnsafe(65535),r=0;this.isMessageIdSetted||(this.isMessageIdSetted=!0,this.headers.MessageId=e.messageId++),r+=QNn(this,t),r+=eGt(this,t,MW);var n=Buffer.allocUnsafe(r);return t.copy(n,0,0,r),n};Zw.parseBuffer=function(e){YNn(this,e),WNn(this,e,MW)};function KNn(e,t){if(Buffer.isBuffer(e))return e;if(typeof e=="string")return Buffer.from(e);for(var r=Buffer.allocUnsafe(t),n=0;n>n*8,n);return r}function XKt(e){if(!Buffer.isBuffer(e))return e;for(var t=0,r=0;r{rGt.exports={getStatus:function(e){var t="0x"+("00000000"+e.toString(16)).toUpperCase().substr(-8),r=ZNn[t]||eOn[t]||{code:"ERROR_UNRECOGNIZED",message:"Unrecognized error"};r.value=e,r.valueHex=t;var n=e>>16&2047;r.facility=JNn[n]||{code:"FACILITY_UNRECOGNIZED",message:"Unrecognized facility"},r.facility.value=n;var s=e>>30&3;return r.severity=XNn[s]||{code:"STATUS_UNRECOGNIZED",message:"Unrecognized status"},r.severity.value=s,r},getErrorMessage:function(e){return e.code+" ("+e.valueHex+") : "+e.message}};var XNn={0:{code:"STATUS_SEVERITY_SUCCESS",message:"Success"},1:{code:"STATUS_SEVERITY_INFORMATIONAL",message:"Informational"},2:{code:"STATUS_SEVERITY_WARNING",message:"Warning"},3:{code:"STATUS_SEVERITY_ERROR",message:"Error"}},JNn={0:{code:"FACILITY_NULL",message:"The default facility code."},1:{code:"FACILITY_RPC",message:"The source of the error code is an RPC subsystem."},2:{code:"FACILITY_DISPATCH",message:"The source of the error code is a COM Dispatch."},3:{code:"FACILITY_STORAGE",message:"The source of the error code is OLE Storage."},4:{code:"FACILITY_ITF",message:"The source of the error code is COM/OLE Interface management."},7:{code:"FACILITY_WIN32",message:"This region is reserved to map undecorated error codes into HRESULTs."},8:{code:"FACILITY_WINDOWS",message:"The source of the error code is the Windows subsystem."},9:{code:"FACILITY_SECURITY",message:"The source of the error code is the Security API layer."},10:{code:"FACILITY_CONTROL",message:"The source of the error code is the control mechanism."},11:{code:"FACILITY_CERT",message:"The source of the error code is a certificate client or server?"},12:{code:"FACILITY_INTERNET",message:"The source of the error code is Wininet related."},13:{code:"FACILITY_MEDIASERVER",message:"The source of the error code is the Windows Media Server."},14:{code:"FACILITY_MSMQ",message:"The source of the error code is the Microsoft Message Queue."},15:{code:"FACILITY_SETUPAPI",message:"The source of the error code is the Setup API."},16:{code:"FACILITY_SCARD",message:"The source of the error code is the Smart-card subsystem."},17:{code:"FACILITY_COMPLUS",message:"The source of the error code is COM+."},18:{code:"FACILITY_AAF",message:"The source of the error code is the Microsoft agent."},19:{code:"FACILITY_URT",message:"The source of the error code is .NET CLR."},20:{code:"FACILITY_ACS",message:"The source of the error code is the audit collection service."},21:{code:"FACILITY_DPLAY",message:"The source of the error code is Direct Play."},22:{code:"FACILITY_UMI",message:"The source of the error code is the ubiquitous memoryintrospection service."},23:{code:"FACILITY_SXS",message:"The source of the error code is Side-by-side servicing."},24:{code:"FACILITY_WINDOWS_CE",message:"The error code is specific to Windows CE."},25:{code:"FACILITY_HTTP",message:"The source of the error code is HTTP support."},26:{code:"FACILITY_USERMODE_COMMONLOG",message:"The source of the error code is common Logging support."},31:{code:"FACILITY_USERMODE_FILTER_MANAGER",message:"The source of the error code is the user mode filter manager."},32:{code:"FACILITY_BACKGROUNDCOPY",message:"The source of the error code is background copy control"},33:{code:"FACILITY_CONFIGURATION",message:"The source of the error code is configuration services."},34:{code:"FACILITY_STATE_MANAGEMENT",message:"The source of the error code is state management services."},35:{code:"FACILITY_METADIRECTORY",message:"The source of the error code is the Microsoft Identity Server."},36:{code:"FACILITY_WINDOWSUPDATE",message:"The source of the error code is a Windows update."},37:{code:"FACILITY_DIRECTORYSERVICE",message:"The source of the error code is Active Directory."},38:{code:"FACILITY_GRAPHICS",message:"The source of the error code is the graphics drivers."},39:{code:"FACILITY_SHELL",message:"The source of the error code is the user Shell."},40:{code:"FACILITY_TPM_SERVICES",message:"The source of the error code is the Trusted Platform Module services."},41:{code:"FACILITY_TPM_SOFTWARE",message:"The source of the error code is the Trusted Platform Module applications."},48:{code:"FACILITY_PLA",message:"The source of the error code is Performance Logs and Alerts"},49:{code:"FACILITY_FVE",message:"The source of the error code is Full volume encryption."},50:{code:"FACILITY_FWP",message:"he source of the error code is the Firewall Platform."},51:{code:"FACILITY_WINRM",message:"The source of the error code is the Windows Resource Manager."},52:{code:"FACILITY_NDIS",message:"The source of the error code is the Network Driver Interface."},53:{code:"FACILITY_USERMODE_HYPERVISOR",message:"The source of the error code is the Usermode Hypervisor components."},54:{code:"FACILITY_CMI",message:"The source of the error code is the Configuration Management Infrastructure."},55:{code:"FACILITY_USERMODE_VIRTUALIZATION",message:"The source of the error code is the user mode virtualization subsystem."},56:{code:"FACILITY_USERMODE_VOLMGR",message:"The source of the error code is the user mode volume manager"},57:{code:"FACILITY_BCD",message:"The source of the error code is the Boot Configuration Database."},58:{code:"FACILITY_USERMODE_VHD",message:"The source of the error code is user mode virtual hard disk support."},60:{code:"FACILITY_SDIAG",message:"The source of the error code is System Diagnostics."},61:{code:"FACILITY_WEBSERVICES",message:"The source of the error code is the Web Services."},80:{code:"FACILITY_WINDOWS_DEFENDER",message:"The source of the error code is a Windows Defender component."},81:{code:"FACILITY_OPC",message:"The source of the error code is the open connectivity service."}},ZNn={"0x00000000":{code:"STATUS_SUCCESS",message:"The operation completed successfully."},"0x00000001":{code:"STATUS_WAIT_1",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x00000002":{code:"STATUS_WAIT_2",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x00000003":{code:"STATUS_WAIT_3",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x0000003F":{code:"STATUS_WAIT_63",message:"The caller specified WaitAny for WaitType and one of the dispatcher objects in the Object array has been set to the signaled state."},"0x00000080":{code:"STATUS_ABANDONED",message:"The caller attempted to wait for a mutex that has been abandoned."},"0x000000BF":{code:"STATUS_ABANDONED_WAIT_63",message:"The caller attempted to wait for a mutex that has been abandoned."},"0x000000C0":{code:"STATUS_USER_APC",message:"A user-mode APC was delivered before the given Interval expired."},"0x00000101":{code:"STATUS_ALERTED",message:"The delay completed because the thread was alerted."},"0x00000102":{code:"STATUS_TIMEOUT",message:"The given Timeout interval expired."},"0x00000103":{code:"STATUS_PENDING",message:"The operation that was requested is pending completion."},"0x00000104":{code:"STATUS_REPARSE",message:"A reparse should be performed by the Object Manager because the name of the file resulted in a symbolic link."},"0x00000105":{code:"STATUS_MORE_ENTRIES",message:"Returned by enumeration APIs to indicate more information is available to successive calls."},"0x00000106":{code:"STATUS_NOT_ALL_ASSIGNED",message:"Indicates not all privileges or groups that are referenced are assigned to the caller. This allows, for example, all privileges to be disabled without having to know exactly which privileges are assigned."},"0x00000107":{code:"STATUS_SOME_NOT_MAPPED",message:"Some of the information to be translated has not been translated."},"0x00000108":{code:"STATUS_OPLOCK_BREAK_IN_PROGRESS",message:"An open/create operation completed while an opportunistic lock (oplock) break is underway."},"0x00000109":{code:"STATUS_VOLUME_MOUNTED",message:"A new volume has been mounted by a file system."},"0x0000010A":{code:"STATUS_RXACT_COMMITTED",message:"This success level status indicates that the transaction state already exists for the registry subtree but that a transaction commit was previously aborted. The commit has now been completed."},"0x0000010B":{code:"STATUS_NOTIFY_CLEANUP",message:"Indicates that a notify change request has been completed due to closing the handle that made the notify change request."},"0x0000010C":{code:"STATUS_NOTIFY_ENUM_DIR",message:"Indicates that a notify change request is being completed and that the information is not being returned in the caller's buffer. The caller now needs to enumerate the files to find the changes."},"0x0000010D":{code:"STATUS_NO_QUOTAS_FOR_ACCOUNT",message:"{No Quotas} No system quota limits are specifically set for this account."},"0x0000010E":{code:"STATUS_PRIMARY_TRANSPORT_CONNECT_FAILED",message:"{Connect Failure on Primary Transport} An attempt was made to connect to the remote server %hs on the primary transport, but the connection failed. The computer WAS able to connect on a secondary transport."},"0x00000110":{code:"STATUS_PAGE_FAULT_TRANSITION",message:"The page fault was a transition fault."},"0x00000111":{code:"STATUS_PAGE_FAULT_DEMAND_ZERO",message:"The page fault was a demand zero fault."},"0x00000112":{code:"STATUS_PAGE_FAULT_COPY_ON_WRITE",message:"The page fault was a demand zero fault."},"0x00000113":{code:"STATUS_PAGE_FAULT_GUARD_PAGE",message:"The page fault was a demand zero fault."},"0x00000114":{code:"STATUS_PAGE_FAULT_PAGING_FILE",message:"The page fault was satisfied by reading from a secondary storage device."},"0x00000115":{code:"STATUS_CACHE_PAGE_LOCKED",message:"The cached page was locked during operation."},"0x00000116":{code:"STATUS_CRASH_DUMP",message:"The crash dump exists in a paging file."},"0x00000117":{code:"STATUS_BUFFER_ALL_ZEROS",message:"The specified buffer contains all zeros."},"0x00000118":{code:"STATUS_REPARSE_OBJECT",message:"A reparse should be performed by the Object Manager because the name of the file resulted in a symbolic link."},"0x00000119":{code:"STATUS_RESOURCE_REQUIREMENTS_CHANGED",message:"The device has succeeded a query-stop and its resource requirements have changed."},"0x00000120":{code:"STATUS_TRANSLATION_COMPLETE",message:"The translator has translated these resources into the global space and no additional translations should be performed."},"0x00000121":{code:"STATUS_DS_MEMBERSHIP_EVALUATED_LOCALLY",message:"The directory service evaluated group memberships locally, because it was unable to contact a global catalog server."},"0x00000122":{code:"STATUS_NOTHING_TO_TERMINATE",message:"A process being terminated has no threads to terminate."},"0x00000123":{code:"STATUS_PROCESS_NOT_IN_JOB",message:"The specified process is not part of a job."},"0x00000124":{code:"STATUS_PROCESS_IN_JOB",message:"The specified process is part of a job."},"0x00000125":{code:"STATUS_VOLSNAP_HIBERNATE_READY",message:"{Volume Shadow Copy Service} The system is now ready for hibernation."},"0x00000126":{code:"STATUS_FSFILTER_OP_COMPLETED_SUCCESSFULLY",message:"A file system or file system filter driver has successfully completed an FsFilter operation."},"0x00000127":{code:"STATUS_INTERRUPT_VECTOR_ALREADY_CONNECTED",message:"The specified interrupt vector was already connected."},"0x00000128":{code:"STATUS_INTERRUPT_STILL_CONNECTED",message:"The specified interrupt vector is still connected."},"0x00000129":{code:"STATUS_PROCESS_CLONED",message:"The current process is a cloned process."},"0x0000012A":{code:"STATUS_FILE_LOCKED_WITH_ONLY_READERS",message:"The file was locked and all users of the file can only read."},"0x0000012B":{code:"STATUS_FILE_LOCKED_WITH_WRITERS",message:"The file was locked and at least one user of the file can write."},"0x00000202":{code:"STATUS_RESOURCEMANAGER_READ_ONLY",message:"The specified ResourceManager made no changes or updates to the resource under this transaction."},"0x00000367":{code:"STATUS_WAIT_FOR_OPLOCK",message:"An operation is blocked and waiting for an oplock."},"0x00010001":{code:"DBG_EXCEPTION_HANDLED",message:"Debugger handled the exception."},"0x00010002":{code:"DBG_CONTINUE",message:"The debugger continued."},"0x001C0001":{code:"STATUS_FLT_IO_COMPLETE",message:"The IO was completed by a filter."},"0xC0000467":{code:"STATUS_FILE_NOT_AVAILABLE",message:"The file is temporarily unavailable."},"0xC0000721":{code:"STATUS_CALLBACK_RETURNED_THREAD_AFFINITY",message:`A threadpool worker thread entered a callback at thread affinity %p and exited at affinity %p. +This is unexpected, indicating that the callback missed restoring the priority.`},"0x40000000":{code:"STATUS_OBJECT_NAME_EXISTS",message:"{Object Exists} An attempt was made to create an object but the object name already exists."},"0x40000001":{code:"STATUS_THREAD_WAS_SUSPENDED",message:"{Thread Suspended} A thread termination occurred while the thread was suspended. The thread resumed, and termination proceeded."},"0x40000002":{code:"STATUS_WORKING_SET_LIMIT_RANGE",message:"{Working Set Range Error} An attempt was made to set the working set minimum or maximum to values that are outside the allowable range."},"0x40000003":{code:"STATUS_IMAGE_NOT_AT_BASE",message:"{Image Relocated} An image file could not be mapped at the address that is specified in the image file. Local fixes must be performed on this image."},"0x40000004":{code:"STATUS_RXACT_STATE_CREATED",message:"This informational level status indicates that a specified registry subtree transaction state did not yet exist and had to be created."},"0x40000005":{code:"STATUS_SEGMENT_NOTIFICATION",message:"{Segment Load} A virtual DOS machine (VDM) is loading, unloading, or moving an MS-DOS or Win16 program segment image. An exception is raised so that a debugger can load, unload, or track symbols and breakpoints within these 16-bit segments."},"0x40000006":{code:"STATUS_LOCAL_USER_SESSION_KEY",message:"{Local Session Key} A user session key was requested for a local remote procedure call (RPC) connection. The session key that is returned is a constant value and not unique to this connection."},"0x40000007":{code:"STATUS_BAD_CURRENT_DIRECTORY",message:"{Invalid Current Directory} The process cannot switch to the startup current directory %hs. Select OK to set the current directory to %hs, or select CANCEL to exit."},"0x40000008":{code:"STATUS_SERIAL_MORE_WRITES",message:"{Serial IOCTL Complete} A serial I/O operation was completed by another write to a serial port. (The IOCTL_SERIAL_XOFF_COUNTER reached zero.)"},"0x40000009":{code:"STATUS_REGISTRY_RECOVERED",message:"{Registry Recovery} One of the files that contains the system registry data had to be recovered by using a log or alternate copy. The recovery was successful."},"0x4000000A":{code:"STATUS_FT_READ_RECOVERY_FROM_BACKUP",message:"{Redundant Read} To satisfy a read request, the Windows NT fault-tolerant file system successfully read the requested data from a redundant copy. This was done because the file system encountered a failure on a member of the fault-tolerant volume but was unable to reassign the failing area of the device."},"0x4000000B":{code:"STATUS_FT_WRITE_RECOVERY",message:"{Redundant Write} To satisfy a write request, the Windows NT fault-tolerant file system successfully wrote a redundant copy of the information. This was done because the file system encountered a failure on a member of the fault-tolerant volume but was unable to reassign the failing area of the device."},"0x4000000C":{code:"STATUS_SERIAL_COUNTER_TIMEOUT",message:"{Serial IOCTL Timeout} A serial I/O operation completed because the time-out period expired. (The IOCTL_SERIAL_XOFF_COUNTER had not reached zero.)"},"0x4000000D":{code:"STATUS_NULL_LM_PASSWORD",message:"{Password Too Complex} The Windows password is too complex to be converted to a LAN Manager password. The LAN Manager password that returned is a NULL string."},"0x4000000E":{code:"STATUS_IMAGE_MACHINE_TYPE_MISMATCH",message:"{Machine Type Mismatch} The image file %hs is valid but is for a machine type other than the current machine. Select OK to continue, or CANCEL to fail the DLL load."},"0x4000000F":{code:"STATUS_RECEIVE_PARTIAL",message:"{Partial Data Received} The network transport returned partial data to its client. The remaining data will be sent later."},"0x40000010":{code:"STATUS_RECEIVE_EXPEDITED",message:"{Expedited Data Received} The network transport returned data to its client that was marked as expedited by the remote system."},"0x40000011":{code:"STATUS_RECEIVE_PARTIAL_EXPEDITED",message:"{Partial Expedited Data Received} The network transport returned partial data to its client and this data was marked as expedited by the remote system. The remaining data will be sent later."},"0x40000012":{code:"STATUS_EVENT_DONE",message:"{TDI Event Done} The TDI indication has completed successfully."},"0x40000013":{code:"STATUS_EVENT_PENDING",message:"{TDI Event Pending} The TDI indication has entered the pending state."},"0x40000014":{code:"STATUS_CHECKING_FILE_SYSTEM",message:"Checking file system on %wZ."},"0x40000015":{code:"STATUS_FATAL_APP_EXIT",message:"{Fatal Application Exit} %hs"},"0x40000016":{code:"STATUS_PREDEFINED_HANDLE",message:"The specified registry key is referenced by a predefined handle."},"0x40000017":{code:"STATUS_WAS_UNLOCKED",message:"{Page Unlocked} The page protection of a locked page was changed to 'No Access' and the page was unlocked from memory and from the process."},"0x40000018":{code:"STATUS_SERVICE_NOTIFICATION",message:"%hs"},"0x40000019":{code:"STATUS_WAS_LOCKED",message:"{Page Locked} One of the pages to lock was already locked."},"0x4000001A":{code:"STATUS_LOG_HARD_ERROR",message:"Application popup: %1 : %2"},"0x4000001B":{code:"STATUS_ALREADY_WIN32",message:"A Win32 process already exists."},"0x4000001C":{code:"STATUS_WX86_UNSIMULATE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x4000001D":{code:"STATUS_WX86_CONTINUE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x4000001E":{code:"STATUS_WX86_SINGLE_STEP",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x4000001F":{code:"STATUS_WX86_BREAKPOINT",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000020":{code:"STATUS_WX86_EXCEPTION_CONTINUE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000021":{code:"STATUS_WX86_EXCEPTION_LASTCHANCE",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000022":{code:"STATUS_WX86_EXCEPTION_CHAIN",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000023":{code:"STATUS_IMAGE_MACHINE_TYPE_MISMATCH_EXE",message:"{Machine Type Mismatch} The image file %hs is valid but is for a machine type other than the current machine."},"0x40000024":{code:"STATUS_NO_YIELD_PERFORMED",message:"A yield execution was performed and no thread was available to run."},"0x40000025":{code:"STATUS_TIMER_RESUME_IGNORED",message:"The resume flag to a timer API was ignored."},"0x40000026":{code:"STATUS_ARBITRATION_UNHANDLED",message:"The arbiter has deferred arbitration of these resources to its parent."},"0x40000027":{code:"STATUS_CARDBUS_NOT_SUPPORTED",message:"The device has detected a CardBus card in its slot."},"0x40000028":{code:"STATUS_WX86_CREATEWX86TIB",message:"An exception status code that is used by the Win32 x86 emulation subsystem."},"0x40000029":{code:"STATUS_MP_PROCESSOR_MISMATCH",message:"The CPUs in this multiprocessor system are not all the same revision level. To use all processors, the operating system restricts itself to the features of the least capable processor in the system. If problems occur with this system, contact the CPU manufacturer to see if this mix of processors is supported."},"0x4000002A":{code:"STATUS_HIBERNATED",message:"The system was put into hibernation."},"0x4000002B":{code:"STATUS_RESUME_HIBERNATION",message:"The system was resumed from hibernation."},"0x4000002C":{code:"STATUS_FIRMWARE_UPDATED",message:"Windows has detected that the system firmware (BIOS) was updated [previous firmware date = %2, current firmware date %3]."},"0x4000002D":{code:"STATUS_DRIVERS_LEAKING_LOCKED_PAGES",message:"A device driver is leaking locked I/O pages and is causing system degradation. The system has automatically enabled the tracking code to try and catch the culprit."},"0x4000002E":{code:"STATUS_MESSAGE_RETRIEVED",message:"The ALPC message being canceled has already been retrieved from the queue on the other side."},"0x4000002F":{code:"STATUS_SYSTEM_POWERSTATE_TRANSITION",message:"The system power state is transitioning from %2 to %3."},"0x40000030":{code:"STATUS_ALPC_CHECK_COMPLETION_LIST",message:"The receive operation was successful. Check the ALPC completion list for the received message."},"0x40000031":{code:"STATUS_SYSTEM_POWERSTATE_COMPLEX_TRANSITION",message:"The system power state is transitioning from %2 to %3 but could enter %4."},"0x40000032":{code:"STATUS_ACCESS_AUDIT_BY_POLICY",message:"Access to %1 is monitored by policy rule %2."},"0x40000033":{code:"STATUS_ABANDON_HIBERFILE",message:"A valid hibernation file has been invalidated and should be abandoned."},"0x40000034":{code:"STATUS_BIZRULES_NOT_ENABLED",message:"Business rule scripts are disabled for the calling application."},"0x40000294":{code:"STATUS_WAKE_SYSTEM",message:"The system has awoken."},"0x40000370":{code:"STATUS_DS_SHUTTING_DOWN",message:"The directory service is shutting down."},"0x40010001":{code:"DBG_REPLY_LATER",message:"Debugger will reply later."},"0x40010002":{code:"DBG_UNABLE_TO_PROVIDE_HANDLE",message:"Debugger cannot provide a handle."},"0x40010003":{code:"DBG_TERMINATE_THREAD",message:"Debugger terminated the thread."},"0x40010004":{code:"DBG_TERMINATE_PROCESS",message:"Debugger terminated the process."},"0x40010005":{code:"DBG_CONTROL_C",message:"Debugger obtained control of C."},"0x40010006":{code:"DBG_PRINTEXCEPTION_C",message:"Debugger printed an exception on control C."},"0x40010007":{code:"DBG_RIPEXCEPTION",message:"Debugger received a RIP exception."},"0x40010008":{code:"DBG_CONTROL_BREAK",message:"Debugger received a control break."},"0x40010009":{code:"DBG_COMMAND_EXCEPTION",message:"Debugger command communication exception."},"0x40020056":{code:"RPC_NT_UUID_LOCAL_ONLY",message:"A UUID that is valid only on this computer has been allocated."},"0x400200AF":{code:"RPC_NT_SEND_INCOMPLETE",message:"Some data remains to be sent in the request buffer."},"0x400A0004":{code:"STATUS_CTX_CDM_CONNECT",message:"The Client Drive Mapping Service has connected on Terminal Connection."},"0x400A0005":{code:"STATUS_CTX_CDM_DISCONNECT",message:"The Client Drive Mapping Service has disconnected on Terminal Connection."},"0x4015000D":{code:"STATUS_SXS_RELEASE_ACTIVATION_CONTEXT",message:"A kernel mode component is releasing a reference on an activation context."},"0x40190034":{code:"STATUS_RECOVERY_NOT_NEEDED",message:"The transactional resource manager is already consistent. Recovery is not needed."},"0x40190035":{code:"STATUS_RM_ALREADY_STARTED",message:"The transactional resource manager has already been started."},"0x401A000C":{code:"STATUS_LOG_NO_RESTART",message:"The log service encountered a log stream with no restart area."},"0x401B00EC":{code:"STATUS_VIDEO_DRIVER_DEBUG_REPORT_REQUEST",message:"{Display Driver Recovered From Failure} The %hs display driver has detected a failure and recovered from it. Some graphical operations may have failed. The next time you restart the machine, a dialog box appears, giving you an opportunity to upload data about this failure to Microsoft."},"0x401E000A":{code:"STATUS_GRAPHICS_PARTIAL_DATA_POPULATED",message:`The specified buffer is not big enough to contain the entire requested dataset. Partial data is populated up to the size of the buffer. +The caller needs to provide a buffer of the size as specified in the partially populated buffer's content (interface specific).`},"0x401E0117":{code:"STATUS_GRAPHICS_DRIVER_MISMATCH",message:"The kernel driver detected a version mismatch between it and the user mode driver."},"0x401E0307":{code:"STATUS_GRAPHICS_MODE_NOT_PINNED",message:"No mode is pinned on the specified VidPN source/target."},"0x401E031E":{code:"STATUS_GRAPHICS_NO_PREFERRED_MODE",message:"The specified mode set does not specify a preference for one of its modes."},"0x401E034B":{code:"STATUS_GRAPHICS_DATASET_IS_EMPTY",message:"The specified dataset (for example, mode set, frequency range set, descriptor set, or topology) is empty."},"0x401E034C":{code:"STATUS_GRAPHICS_NO_MORE_ELEMENTS_IN_DATASET",message:"The specified dataset (for example, mode set, frequency range set, descriptor set, or topology) does not contain any more elements."},"0x401E0351":{code:"STATUS_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_PINNED",message:"The specified content transformation is not pinned on the specified VidPN present path."},"0x401E042F":{code:"STATUS_GRAPHICS_UNKNOWN_CHILD_STATUS",message:"The child device presence was not reliably detected."},"0x401E0437":{code:"STATUS_GRAPHICS_LEADLINK_START_DEFERRED",message:"Starting the lead adapter in a linked configuration has been temporarily deferred."},"0x401E0439":{code:"STATUS_GRAPHICS_POLLING_TOO_FREQUENTLY",message:"The display adapter is being polled for children too frequently at the same polling level."},"0x401E043A":{code:"STATUS_GRAPHICS_START_DEFERRED",message:"Starting the adapter has been temporarily deferred."},"0x40230001":{code:"STATUS_NDIS_INDICATION_REQUIRED",message:"The request will be completed later by an NDIS status indication."},"0x80000001":{code:"STATUS_GUARD_PAGE_VIOLATION",message:"{EXCEPTION} Guard Page Exception A page of memory that marks the end of a data structure, such as a stack or an array, has been accessed."},"0x80000002":{code:"STATUS_DATATYPE_MISALIGNMENT",message:"{EXCEPTION} Alignment Fault A data type misalignment was detected in a load or store instruction."},"0x80000003":{code:"STATUS_BREAKPOINT",message:"{EXCEPTION} Breakpoint A breakpoint has been reached."},"0x80000004":{code:"STATUS_SINGLE_STEP",message:"{EXCEPTION} Single Step A single step or trace operation has just been completed."},"0x80000005":{code:"STATUS_BUFFER_OVERFLOW",message:"{Buffer Overflow} The data was too large to fit into the specified buffer."},"0x80000006":{code:"STATUS_NO_MORE_FILES",message:"{No More Files} No more files were found which match the file specification."},"0x80000007":{code:"STATUS_WAKE_SYSTEM_DEBUGGER",message:"{Kernel Debugger Awakened} The system debugger was awakened by an interrupt."},"0x8000000A":{code:"STATUS_HANDLES_CLOSED",message:"{Handles Closed} Handles to objects have been automatically closed because of the requested operation."},"0x8000000B":{code:"STATUS_NO_INHERITANCE",message:"{Non-Inheritable ACL} An access control list (ACL) contains no components that can be inherited."},"0x8000000C":{code:"STATUS_GUID_SUBSTITUTION_MADE",message:"{GUID Substitution} During the translation of a globally unique identifier (GUID) to a Windows security ID (SID), no administratively defined GUID prefix was found. A substitute prefix was used, which will not compromise system security. However, this may provide a more restrictive access than intended."},"0x8000000D":{code:"STATUS_PARTIAL_COPY",message:"Because of protection conflicts, not all the requested bytes could be copied."},"0x8000000E":{code:"STATUS_DEVICE_PAPER_EMPTY",message:"{Out of Paper} The printer is out of paper."},"0x8000000F":{code:"STATUS_DEVICE_POWERED_OFF",message:"{Device Power Is Off} The printer power has been turned off."},"0x80000010":{code:"STATUS_DEVICE_OFF_LINE",message:"{Device Offline} The printer has been taken offline."},"0x80000011":{code:"STATUS_DEVICE_BUSY",message:"{Device Busy} The device is currently busy."},"0x80000012":{code:"STATUS_NO_MORE_EAS",message:"{No More EAs} No more extended attributes (EAs) were found for the file."},"0x80000013":{code:"STATUS_INVALID_EA_NAME",message:"{Illegal EA} The specified extended attribute (EA) name contains at least one illegal character."},"0x80000014":{code:"STATUS_EA_LIST_INCONSISTENT",message:"{Inconsistent EA List} The extended attribute (EA) list is inconsistent."},"0x80000015":{code:"STATUS_INVALID_EA_FLAG",message:"{Invalid EA Flag} An invalid extended attribute (EA) flag was set."},"0x80000016":{code:"STATUS_VERIFY_REQUIRED",message:"{Verifying Disk} The media has changed and a verify operation is in progress; therefore, no reads or writes may be performed to the device, except those that are used in the verify operation."},"0x80000017":{code:"STATUS_EXTRANEOUS_INFORMATION",message:"{Too Much Information} The specified access control list (ACL) contained more information than was expected."},"0x80000018":{code:"STATUS_RXACT_COMMIT_NECESSARY",message:"This warning level status indicates that the transaction state already exists for the registry subtree, but that a transaction commit was previously aborted. The commit has NOT been completed but has not been rolled back either; therefore, it may still be committed, if needed."},"0x8000001A":{code:"STATUS_NO_MORE_ENTRIES",message:"{No More Entries} No more entries are available from an enumeration operation."},"0x8000001B":{code:"STATUS_FILEMARK_DETECTED",message:"{Filemark Found} A filemark was detected."},"0x8000001C":{code:"STATUS_MEDIA_CHANGED",message:"{Media Changed} The media may have changed."},"0x8000001D":{code:"STATUS_BUS_RESET",message:"{I/O Bus Reset} An I/O bus reset was detected."},"0x8000001E":{code:"STATUS_END_OF_MEDIA",message:"{End of Media} The end of the media was encountered."},"0x8000001F":{code:"STATUS_BEGINNING_OF_MEDIA",message:"The beginning of a tape or partition has been detected."},"0x80000020":{code:"STATUS_MEDIA_CHECK",message:"{Media Changed} The media may have changed."},"0x80000021":{code:"STATUS_SETMARK_DETECTED",message:"A tape access reached a set mark."},"0x80000022":{code:"STATUS_NO_DATA_DETECTED",message:"During a tape access, the end of the data written is reached."},"0x80000023":{code:"STATUS_REDIRECTOR_HAS_OPEN_HANDLES",message:"The redirector is in use and cannot be unloaded."},"0x80000024":{code:"STATUS_SERVER_HAS_OPEN_HANDLES",message:"The server is in use and cannot be unloaded."},"0x80000025":{code:"STATUS_ALREADY_DISCONNECTED",message:"The specified connection has already been disconnected."},"0x80000026":{code:"STATUS_LONGJUMP",message:"A long jump has been executed."},"0x80000027":{code:"STATUS_CLEANER_CARTRIDGE_INSTALLED",message:"A cleaner cartridge is present in the tape library."},"0x80000028":{code:"STATUS_PLUGPLAY_QUERY_VETOED",message:"The Plug and Play query operation was not successful."},"0x80000029":{code:"STATUS_UNWIND_CONSOLIDATE",message:"A frame consolidation has been executed."},"0x8000002A":{code:"STATUS_REGISTRY_HIVE_RECOVERED",message:"{Registry Hive Recovered} The registry hive (file): %hs was corrupted and it has been recovered. Some data might have been lost."},"0x8000002B":{code:"STATUS_DLL_MIGHT_BE_INSECURE",message:"The application is attempting to run executable code from the module %hs. This may be insecure. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x8000002C":{code:"STATUS_DLL_MIGHT_BE_INCOMPATIBLE",message:"The application is loading executable code from the module %hs. This is secure but may be incompatible with previous releases of the operating system. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x8000002D":{code:"STATUS_STOPPED_ON_SYMLINK",message:"The create operation stopped after reaching a symbolic link."},"0x80000288":{code:"STATUS_DEVICE_REQUIRES_CLEANING",message:"The device has indicated that cleaning is necessary."},"0x80000289":{code:"STATUS_DEVICE_DOOR_OPEN",message:"The device has indicated that its door is open. Further operations require it closed and secured."},"0x80000803":{code:"STATUS_DATA_LOST_REPAIR",message:"Windows discovered a corruption in the file %hs. This file has now been repaired. Check if any data in the file was lost because of the corruption."},"0x80010001":{code:"DBG_EXCEPTION_NOT_HANDLED",message:"Debugger did not handle the exception."},"0x80130001":{code:"STATUS_CLUSTER_NODE_ALREADY_UP",message:"The cluster node is already up."},"0x80130002":{code:"STATUS_CLUSTER_NODE_ALREADY_DOWN",message:"The cluster node is already down."},"0x80130003":{code:"STATUS_CLUSTER_NETWORK_ALREADY_ONLINE",message:"The cluster network is already online."},"0x80130004":{code:"STATUS_CLUSTER_NETWORK_ALREADY_OFFLINE",message:"The cluster network is already offline."},"0x80130005":{code:"STATUS_CLUSTER_NODE_ALREADY_MEMBER",message:"The cluster node is already a member of the cluster."},"0x80190009":{code:"STATUS_COULD_NOT_RESIZE_LOG",message:"The log could not be set to the requested size."},"0x80190029":{code:"STATUS_NO_TXF_METADATA",message:"There is no transaction metadata on the file."},"0x80190031":{code:"STATUS_CANT_RECOVER_WITH_HANDLE_OPEN",message:"The file cannot be recovered because there is a handle still open on it."},"0x80190041":{code:"STATUS_TXF_METADATA_ALREADY_PRESENT",message:"Transaction metadata is already present on this file and cannot be superseded."},"0x80190042":{code:"STATUS_TRANSACTION_SCOPE_CALLBACKS_NOT_SET",message:"A transaction scope could not be entered because the scope handler has not been initialized."},"0x801B00EB":{code:"STATUS_VIDEO_HUNG_DISPLAY_DRIVER_THREAD_RECOVERED",message:"{Display Driver Stopped Responding and recovered} The %hs display driver has stopped working normally. The recovery had been performed."},"0x801C0001":{code:"STATUS_FLT_BUFFER_TOO_SMALL",message:"{Buffer too small} The buffer is too small to contain the entry. No information has been written to the buffer."},"0x80210001":{code:"STATUS_FVE_PARTIAL_METADATA",message:"Volume metadata read or write is incomplete."},"0x80210002":{code:"STATUS_FVE_TRANSIENT_STATE",message:"BitLocker encryption keys were ignored because the volume was in a transient state."},"0xC0000001":{code:"STATUS_UNSUCCESSFUL",message:"{Operation Failed} The requested operation was unsuccessful."},"0xC0000002":{code:"STATUS_NOT_IMPLEMENTED",message:"{Not Implemented} The requested operation is not implemented."},"0xC0000003":{code:"STATUS_INVALID_INFO_CLASS",message:"{Invalid Parameter} The specified information class is not a valid information class for the specified object."},"0xC0000004":{code:"STATUS_INFO_LENGTH_MISMATCH",message:"The specified information record length does not match the length that is required for the specified information class."},"0xC0000005":{code:"STATUS_ACCESS_VIOLATION",message:"The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s."},"0xC0000006":{code:"STATUS_IN_PAGE_ERROR",message:"The instruction at 0x%08lx referenced memory at 0x%08lx. The required data was not placed into memory because of an I/O error status of 0x%08lx."},"0xC0000007":{code:"STATUS_PAGEFILE_QUOTA",message:"The page file quota for the process has been exhausted."},"0xC0000008":{code:"STATUS_INVALID_HANDLE",message:"An invalid HANDLE was specified."},"0xC0000009":{code:"STATUS_BAD_INITIAL_STACK",message:"An invalid initial stack was specified in a call to NtCreateThread."},"0xC000000A":{code:"STATUS_BAD_INITIAL_PC",message:"An invalid initial start address was specified in a call to NtCreateThread."},"0xC000000B":{code:"STATUS_INVALID_CID",message:"An invalid client ID was specified."},"0xC000000C":{code:"STATUS_TIMER_NOT_CANCELED",message:"An attempt was made to cancel or set a timer that has an associated APC and the specified thread is not the thread that originally set the timer with an associated APC routine."},"0xC000000D":{code:"STATUS_INVALID_PARAMETER",message:"An invalid parameter was passed to a service or function."},"0xC000000E":{code:"STATUS_NO_SUCH_DEVICE",message:"A device that does not exist was specified."},"0xC000000F":{code:"STATUS_NO_SUCH_FILE",message:"{File Not Found} The file %hs does not exist."},"0xC0000010":{code:"STATUS_INVALID_DEVICE_REQUEST",message:"The specified request is not a valid operation for the target device."},"0xC0000011":{code:"STATUS_END_OF_FILE",message:"The end-of-file marker has been reached. There is no valid data in the file beyond this marker."},"0xC0000012":{code:"STATUS_WRONG_VOLUME",message:"{Wrong Volume} The wrong volume is in the drive. Insert volume %hs into drive %hs."},"0xC0000013":{code:"STATUS_NO_MEDIA_IN_DEVICE",message:"{No Disk} There is no disk in the drive. Insert a disk into drive %hs."},"0xC0000014":{code:"STATUS_UNRECOGNIZED_MEDIA",message:"{Unknown Disk Format} The disk in drive %hs is not formatted properly. Check the disk, and reformat it, if needed."},"0xC0000015":{code:"STATUS_NONEXISTENT_SECTOR",message:"{Sector Not Found} The specified sector does not exist."},"0xC0000016":{code:"STATUS_MORE_PROCESSING_REQUIRED",message:"{Still Busy} The specified I/O request packet (IRP) cannot be disposed of because the I/O operation is not complete."},"0xC0000017":{code:"STATUS_NO_MEMORY",message:"{Not Enough Quota} Not enough virtual memory or paging file quota is available to complete the specified operation."},"0xC0000018":{code:"STATUS_CONFLICTING_ADDRESSES",message:"{Conflicting Address Range} The specified address range conflicts with the address space."},"0xC0000019":{code:"STATUS_NOT_MAPPED_VIEW",message:"The address range to unmap is not a mapped view."},"0xC000001A":{code:"STATUS_UNABLE_TO_FREE_VM",message:"The virtual memory cannot be freed."},"0xC000001B":{code:"STATUS_UNABLE_TO_DELETE_SECTION",message:"The specified section cannot be deleted."},"0xC000001C":{code:"STATUS_INVALID_SYSTEM_SERVICE",message:"An invalid system service was specified in a system service call."},"0xC000001D":{code:"STATUS_ILLEGAL_INSTRUCTION",message:"{EXCEPTION} Illegal Instruction An attempt was made to execute an illegal instruction."},"0xC000001E":{code:"STATUS_INVALID_LOCK_SEQUENCE",message:"{Invalid Lock Sequence} An attempt was made to execute an invalid lock sequence."},"0xC000001F":{code:"STATUS_INVALID_VIEW_SIZE",message:"{Invalid Mapping} An attempt was made to create a view for a section that is bigger than the section."},"0xC0000020":{code:"STATUS_INVALID_FILE_FOR_SECTION",message:"{Bad File} The attributes of the specified mapping file for a section of memory cannot be read."},"0xC0000021":{code:"STATUS_ALREADY_COMMITTED",message:"{Already Committed} The specified address range is already committed."},"0xC0000022":{code:"STATUS_ACCESS_DENIED",message:"{Access Denied} A process has requested access to an object but has not been granted those access rights."},"0xC0000023":{code:"STATUS_BUFFER_TOO_SMALL",message:"{Buffer Too Small} The buffer is too small to contain the entry. No information has been written to the buffer."},"0xC0000024":{code:"STATUS_OBJECT_TYPE_MISMATCH",message:"{Wrong Type} There is a mismatch between the type of object that is required by the requested operation and the type of object that is specified in the request."},"0xC0000025":{code:"STATUS_NONCONTINUABLE_EXCEPTION",message:"{EXCEPTION} Cannot Continue Windows cannot continue from this exception."},"0xC0000026":{code:"STATUS_INVALID_DISPOSITION",message:"An invalid exception disposition was returned by an exception handler."},"0xC0000027":{code:"STATUS_UNWIND",message:"Unwind exception code."},"0xC0000028":{code:"STATUS_BAD_STACK",message:"An invalid or unaligned stack was encountered during an unwind operation."},"0xC0000029":{code:"STATUS_INVALID_UNWIND_TARGET",message:"An invalid unwind target was encountered during an unwind operation."},"0xC000002A":{code:"STATUS_NOT_LOCKED",message:"An attempt was made to unlock a page of memory that was not locked."},"0xC000002B":{code:"STATUS_PARITY_ERROR",message:"A device parity error on an I/O operation."},"0xC000002C":{code:"STATUS_UNABLE_TO_DECOMMIT_VM",message:"An attempt was made to decommit uncommitted virtual memory."},"0xC000002D":{code:"STATUS_NOT_COMMITTED",message:"An attempt was made to change the attributes on memory that has not been committed."},"0xC000002E":{code:"STATUS_INVALID_PORT_ATTRIBUTES",message:"Invalid object attributes specified to NtCreatePort or invalid port attributes specified to NtConnectPort."},"0xC000002F":{code:"STATUS_PORT_MESSAGE_TOO_LONG",message:"The length of the message that was passed to NtRequestPort or NtRequestWaitReplyPort is longer than the maximum message that is allowed by the port."},"0xC0000030":{code:"STATUS_INVALID_PARAMETER_MIX",message:"An invalid combination of parameters was specified."},"0xC0000031":{code:"STATUS_INVALID_QUOTA_LOWER",message:"An attempt was made to lower a quota limit below the current usage."},"0xC0000032":{code:"STATUS_DISK_CORRUPT_ERROR",message:"{Corrupt Disk} The file system structure on the disk is corrupt and unusable. Run the Chkdsk utility on the volume %hs."},"0xC0000033":{code:"STATUS_OBJECT_NAME_INVALID",message:"The object name is invalid."},"0xC0000034":{code:"STATUS_OBJECT_NAME_NOT_FOUND",message:"The object name is not found."},"0xC0000035":{code:"STATUS_OBJECT_NAME_COLLISION",message:"The object name already exists."},"0xC0000037":{code:"STATUS_PORT_DISCONNECTED",message:"An attempt was made to send a message to a disconnected communication port."},"0xC0000038":{code:"STATUS_DEVICE_ALREADY_ATTACHED",message:"An attempt was made to attach to a device that was already attached to another device."},"0xC0000039":{code:"STATUS_OBJECT_PATH_INVALID",message:"The object path component was not a directory object."},"0xC000003A":{code:"STATUS_OBJECT_PATH_NOT_FOUND",message:"{Path Not Found} The path %hs does not exist."},"0xC000003B":{code:"STATUS_OBJECT_PATH_SYNTAX_BAD",message:"The object path component was not a directory object."},"0xC000003C":{code:"STATUS_DATA_OVERRUN",message:"{Data Overrun} A data overrun error occurred."},"0xC000003D":{code:"STATUS_DATA_LATE_ERROR",message:"{Data Late} A data late error occurred."},"0xC000003E":{code:"STATUS_DATA_ERROR",message:"{Data Error} An error occurred in reading or writing data."},"0xC000003F":{code:"STATUS_CRC_ERROR",message:"{Bad CRC} A cyclic redundancy check (CRC) checksum error occurred."},"0xC0000040":{code:"STATUS_SECTION_TOO_BIG",message:"{Section Too Large} The specified section is too big to map the file."},"0xC0000041":{code:"STATUS_PORT_CONNECTION_REFUSED",message:"The NtConnectPort request is refused."},"0xC0000042":{code:"STATUS_INVALID_PORT_HANDLE",message:"The type of port handle is invalid for the operation that is requested."},"0xC0000043":{code:"STATUS_SHARING_VIOLATION",message:"A file cannot be opened because the share access flags are incompatible."},"0xC0000044":{code:"STATUS_QUOTA_EXCEEDED",message:"Insufficient quota exists to complete the operation."},"0xC0000045":{code:"STATUS_INVALID_PAGE_PROTECTION",message:"The specified page protection was not valid."},"0xC0000046":{code:"STATUS_MUTANT_NOT_OWNED",message:"An attempt to release a mutant object was made by a thread that was not the owner of the mutant object."},"0xC0000047":{code:"STATUS_SEMAPHORE_LIMIT_EXCEEDED",message:"An attempt was made to release a semaphore such that its maximum count would have been exceeded."},"0xC0000048":{code:"STATUS_PORT_ALREADY_SET",message:"An attempt was made to set the DebugPort or ExceptionPort of a process, but a port already exists in the process, or an attempt was made to set the CompletionPort of a file but a port was already set in the file, or an attempt was made to set the associated completion port of an ALPC port but it is already set."},"0xC0000049":{code:"STATUS_SECTION_NOT_IMAGE",message:"An attempt was made to query image information on a section that does not map an image."},"0xC000004A":{code:"STATUS_SUSPEND_COUNT_EXCEEDED",message:"An attempt was made to suspend a thread whose suspend count was at its maximum."},"0xC000004B":{code:"STATUS_THREAD_IS_TERMINATING",message:"An attempt was made to suspend a thread that has begun termination."},"0xC000004C":{code:"STATUS_BAD_WORKING_SET_LIMIT",message:"An attempt was made to set the working set limit to an invalid value (for example, the minimum greater than maximum)."},"0xC000004D":{code:"STATUS_INCOMPATIBLE_FILE_MAP",message:"A section was created to map a file that is not compatible with an already existing section that maps the same file."},"0xC000004E":{code:"STATUS_SECTION_PROTECTION",message:"A view to a section specifies a protection that is incompatible with the protection of the initial view."},"0xC000004F":{code:"STATUS_EAS_NOT_SUPPORTED",message:"An operation involving EAs failed because the file system does not support EAs."},"0xC0000050":{code:"STATUS_EA_TOO_LARGE",message:"An EA operation failed because the EA set is too large."},"0xC0000051":{code:"STATUS_NONEXISTENT_EA_ENTRY",message:"An EA operation failed because the name or EA index is invalid."},"0xC0000052":{code:"STATUS_NO_EAS_ON_FILE",message:"The file for which EAs were requested has no EAs."},"0xC0000053":{code:"STATUS_EA_CORRUPT_ERROR",message:"The EA is corrupt and cannot be read."},"0xC0000054":{code:"STATUS_FILE_LOCK_CONFLICT",message:"A requested read/write cannot be granted due to a conflicting file lock."},"0xC0000055":{code:"STATUS_LOCK_NOT_GRANTED",message:"A requested file lock cannot be granted due to other existing locks."},"0xC0000056":{code:"STATUS_DELETE_PENDING",message:"A non-close operation has been requested of a file object that has a delete pending."},"0xC0000057":{code:"STATUS_CTL_FILE_NOT_SUPPORTED",message:"An attempt was made to set the control attribute on a file. This attribute is not supported in the destination file system."},"0xC0000058":{code:"STATUS_UNKNOWN_REVISION",message:"Indicates a revision number that was encountered or specified is not one that is known by the service. It may be a more recent revision than the service is aware of."},"0xC0000059":{code:"STATUS_REVISION_MISMATCH",message:"Indicates that two revision levels are incompatible."},"0xC000005A":{code:"STATUS_INVALID_OWNER",message:"Indicates a particular security ID may not be assigned as the owner of an object."},"0xC000005B":{code:"STATUS_INVALID_PRIMARY_GROUP",message:"Indicates a particular security ID may not be assigned as the primary group of an object."},"0xC000005C":{code:"STATUS_NO_IMPERSONATION_TOKEN",message:"An attempt has been made to operate on an impersonation token by a thread that is not currently impersonating a client."},"0xC000005D":{code:"STATUS_CANT_DISABLE_MANDATORY",message:"A mandatory group may not be disabled."},"0xC000005E":{code:"STATUS_NO_LOGON_SERVERS",message:"No logon servers are currently available to service the logon request."},"0xC000005F":{code:"STATUS_NO_SUCH_LOGON_SESSION",message:"A specified logon session does not exist. It may already have been terminated."},"0xC0000060":{code:"STATUS_NO_SUCH_PRIVILEGE",message:"A specified privilege does not exist."},"0xC0000061":{code:"STATUS_PRIVILEGE_NOT_HELD",message:"A required privilege is not held by the client."},"0xC0000062":{code:"STATUS_INVALID_ACCOUNT_NAME",message:"The name provided is not a properly formed account name."},"0xC0000063":{code:"STATUS_USER_EXISTS",message:"The specified account already exists."},"0xC0000064":{code:"STATUS_NO_SUCH_USER",message:"The specified account does not exist."},"0xC0000065":{code:"STATUS_GROUP_EXISTS",message:"The specified group already exists."},"0xC0000066":{code:"STATUS_NO_SUCH_GROUP",message:"The specified group does not exist."},"0xC0000067":{code:"STATUS_MEMBER_IN_GROUP",message:"The specified user account is already in the specified group account. Also used to indicate a group cannot be deleted because it contains a member."},"0xC0000068":{code:"STATUS_MEMBER_NOT_IN_GROUP",message:"The specified user account is not a member of the specified group account."},"0xC0000069":{code:"STATUS_LAST_ADMIN",message:"Indicates the requested operation would disable or delete the last remaining administration account. This is not allowed to prevent creating a situation in which the system cannot be administrated."},"0xC000006A":{code:"STATUS_WRONG_PASSWORD",message:"When trying to update a password, this return status indicates that the value provided as the current password is not correct."},"0xC000006B":{code:"STATUS_ILL_FORMED_PASSWORD",message:"When trying to update a password, this return status indicates that the value provided for the new password contains values that are not allowed in passwords."},"0xC000006C":{code:"STATUS_PASSWORD_RESTRICTION",message:"When trying to update a password, this status indicates that some password update rule has been violated. For example, the password may not meet length criteria."},"0xC000006D":{code:"STATUS_LOGON_FAILURE",message:"The attempted logon is invalid. This is either due to a bad username or authentication information."},"0xC000006E":{code:"STATUS_ACCOUNT_RESTRICTION",message:"Indicates a referenced user name and authentication information are valid, but some user account restriction has prevented successful authentication (such as time-of-day restrictions)."},"0xC000006F":{code:"STATUS_INVALID_LOGON_HOURS",message:"The user account has time restrictions and may not be logged onto at this time."},"0xC0000070":{code:"STATUS_INVALID_WORKSTATION",message:"The user account is restricted so that it may not be used to log on from the source workstation."},"0xC0000071":{code:"STATUS_PASSWORD_EXPIRED",message:"The user account password has expired."},"0xC0000072":{code:"STATUS_ACCOUNT_DISABLED",message:"The referenced account is currently disabled and may not be logged on to."},"0xC0000073":{code:"STATUS_NONE_MAPPED",message:"None of the information to be translated has been translated."},"0xC0000074":{code:"STATUS_TOO_MANY_LUIDS_REQUESTED",message:"The number of LUIDs requested may not be allocated with a single allocation."},"0xC0000075":{code:"STATUS_LUIDS_EXHAUSTED",message:"Indicates there are no more LUIDs to allocate."},"0xC0000076":{code:"STATUS_INVALID_SUB_AUTHORITY",message:"Indicates the sub-authority value is invalid for the particular use."},"0xC0000077":{code:"STATUS_INVALID_ACL",message:"Indicates the ACL structure is not valid."},"0xC0000078":{code:"STATUS_INVALID_SID",message:"Indicates the SID structure is not valid."},"0xC0000079":{code:"STATUS_INVALID_SECURITY_DESCR",message:"Indicates the SECURITY_DESCRIPTOR structure is not valid."},"0xC000007A":{code:"STATUS_PROCEDURE_NOT_FOUND",message:"Indicates the specified procedure address cannot be found in the DLL."},"0xC000007B":{code:"STATUS_INVALID_IMAGE_FORMAT",message:"{Bad Image} %hs is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support."},"0xC000007C":{code:"STATUS_NO_TOKEN",message:"An attempt was made to reference a token that does not exist. This is typically done by referencing the token that is associated with a thread when the thread is not impersonating a client."},"0xC000007D":{code:"STATUS_BAD_INHERITANCE_ACL",message:"Indicates that an attempt to build either an inherited ACL or ACE was not successful. This can be caused by a number of things. One of the more probable causes is the replacement of a CreatorId with a SID that did not fit into the ACE or ACL."},"0xC000007E":{code:"STATUS_RANGE_NOT_LOCKED",message:"The range specified in NtUnlockFile was not locked."},"0xC000007F":{code:"STATUS_DISK_FULL",message:"An operation failed because the disk was full."},"0xC0000080":{code:"STATUS_SERVER_DISABLED",message:"The GUID allocation server is disabled at the moment."},"0xC0000081":{code:"STATUS_SERVER_NOT_DISABLED",message:"The GUID allocation server is enabled at the moment."},"0xC0000082":{code:"STATUS_TOO_MANY_GUIDS_REQUESTED",message:"Too many GUIDs were requested from the allocation server at once."},"0xC0000083":{code:"STATUS_GUIDS_EXHAUSTED",message:"The GUIDs could not be allocated because the Authority Agent was exhausted."},"0xC0000084":{code:"STATUS_INVALID_ID_AUTHORITY",message:"The value provided was an invalid value for an identifier authority."},"0xC0000085":{code:"STATUS_AGENTS_EXHAUSTED",message:"No more authority agent values are available for the particular identifier authority value."},"0xC0000086":{code:"STATUS_INVALID_VOLUME_LABEL",message:"An invalid volume label has been specified."},"0xC0000087":{code:"STATUS_SECTION_NOT_EXTENDED",message:"A mapped section could not be extended."},"0xC0000088":{code:"STATUS_NOT_MAPPED_DATA",message:"Specified section to flush does not map a data file."},"0xC0000089":{code:"STATUS_RESOURCE_DATA_NOT_FOUND",message:"Indicates the specified image file did not contain a resource section."},"0xC000008A":{code:"STATUS_RESOURCE_TYPE_NOT_FOUND",message:"Indicates the specified resource type cannot be found in the image file."},"0xC000008B":{code:"STATUS_RESOURCE_NAME_NOT_FOUND",message:"Indicates the specified resource name cannot be found in the image file."},"0xC000008C":{code:"STATUS_ARRAY_BOUNDS_EXCEEDED",message:"{EXCEPTION} Array bounds exceeded."},"0xC000008D":{code:"STATUS_FLOAT_DENORMAL_OPERAND",message:"{EXCEPTION} Floating-point denormal operand."},"0xC000008E":{code:"STATUS_FLOAT_DIVIDE_BY_ZERO",message:"{EXCEPTION} Floating-point division by zero."},"0xC000008F":{code:"STATUS_FLOAT_INEXACT_RESULT",message:"{EXCEPTION} Floating-point inexact result."},"0xC0000090":{code:"STATUS_FLOAT_INVALID_OPERATION",message:"{EXCEPTION} Floating-point invalid operation."},"0xC0000091":{code:"STATUS_FLOAT_OVERFLOW",message:"{EXCEPTION} Floating-point overflow."},"0xC0000092":{code:"STATUS_FLOAT_STACK_CHECK",message:"{EXCEPTION} Floating-point stack check."},"0xC0000093":{code:"STATUS_FLOAT_UNDERFLOW",message:"{EXCEPTION} Floating-point underflow."},"0xC0000094":{code:"STATUS_INTEGER_DIVIDE_BY_ZERO",message:"{EXCEPTION} Integer division by zero."},"0xC0000095":{code:"STATUS_INTEGER_OVERFLOW",message:"{EXCEPTION} Integer overflow."},"0xC0000096":{code:"STATUS_PRIVILEGED_INSTRUCTION",message:"{EXCEPTION} Privileged instruction."},"0xC0000097":{code:"STATUS_TOO_MANY_PAGING_FILES",message:"An attempt was made to install more paging files than the system supports."},"0xC0000098":{code:"STATUS_FILE_INVALID",message:"The volume for a file has been externally altered such that the opened file is no longer valid."},"0xC0000099":{code:"STATUS_ALLOTTED_SPACE_EXCEEDED",message:"When a block of memory is allotted for future updates, such as the memory allocated to hold discretionary access control and primary group information, successive updates may exceed the amount of memory originally allotted. Because a quota may already have been charged to several processes that have handles to the object, it is not reasonable to alter the size of the allocated memory. Instead, a request that requires more memory than has been allotted must fail and the STATUS_ALLOTTED_SPACE_EXCEEDED error returned."},"0xC000009A":{code:"STATUS_INSUFFICIENT_RESOURCES",message:"Insufficient system resources exist to complete the API."},"0xC000009B":{code:"STATUS_DFS_EXIT_PATH_FOUND",message:"An attempt has been made to open a DFS exit path control file."},"0xC000009C":{code:"STATUS_DEVICE_DATA_ERROR",message:"There are bad blocks (sectors) on the hard disk."},"0xC000009D":{code:"STATUS_DEVICE_NOT_CONNECTED",message:"There is bad cabling, non-termination, or the controller is not able to obtain access to the hard disk."},"0xC000009F":{code:"STATUS_FREE_VM_NOT_AT_BASE",message:"Virtual memory cannot be freed because the base address is not the base of the region and a region size of zero was specified."},"0xC00000A0":{code:"STATUS_MEMORY_NOT_ALLOCATED",message:"An attempt was made to free virtual memory that is not allocated."},"0xC00000A1":{code:"STATUS_WORKING_SET_QUOTA",message:"The working set is not big enough to allow the requested pages to be locked."},"0xC00000A2":{code:"STATUS_MEDIA_WRITE_PROTECTED",message:"{Write Protect Error} The disk cannot be written to because it is write-protected. Remove the write protection from the volume %hs in drive %hs."},"0xC00000A3":{code:"STATUS_DEVICE_NOT_READY",message:"{Drive Not Ready} The drive is not ready for use; its door may be open. Check drive %hs and make sure that a disk is inserted and that the drive door is closed."},"0xC00000A4":{code:"STATUS_INVALID_GROUP_ATTRIBUTES",message:"The specified attributes are invalid or are incompatible with the attributes for the group as a whole."},"0xC00000A5":{code:"STATUS_BAD_IMPERSONATION_LEVEL",message:"A specified impersonation level is invalid. Also used to indicate that a required impersonation level was not provided."},"0xC00000A6":{code:"STATUS_CANT_OPEN_ANONYMOUS",message:"An attempt was made to open an anonymous-level token. Anonymous tokens may not be opened."},"0xC00000A7":{code:"STATUS_BAD_VALIDATION_CLASS",message:"The validation information class requested was invalid."},"0xC00000A8":{code:"STATUS_BAD_TOKEN_TYPE",message:"The type of a token object is inappropriate for its attempted use."},"0xC00000A9":{code:"STATUS_BAD_MASTER_BOOT_RECORD",message:"The type of a token object is inappropriate for its attempted use."},"0xC00000AA":{code:"STATUS_INSTRUCTION_MISALIGNMENT",message:"An attempt was made to execute an instruction at an unaligned address and the host system does not support unaligned instruction references."},"0xC00000AB":{code:"STATUS_INSTANCE_NOT_AVAILABLE",message:"The maximum named pipe instance count has been reached."},"0xC00000AC":{code:"STATUS_PIPE_NOT_AVAILABLE",message:"An instance of a named pipe cannot be found in the listening state."},"0xC00000AD":{code:"STATUS_INVALID_PIPE_STATE",message:"The named pipe is not in the connected or closing state."},"0xC00000AE":{code:"STATUS_PIPE_BUSY",message:"The specified pipe is set to complete operations and there are current I/O operations queued so that it cannot be changed to queue operations."},"0xC00000AF":{code:"STATUS_ILLEGAL_FUNCTION",message:"The specified handle is not open to the server end of the named pipe."},"0xC00000B0":{code:"STATUS_PIPE_DISCONNECTED",message:"The specified named pipe is in the disconnected state."},"0xC00000B1":{code:"STATUS_PIPE_CLOSING",message:"The specified named pipe is in the closing state."},"0xC00000B2":{code:"STATUS_PIPE_CONNECTED",message:"The specified named pipe is in the connected state."},"0xC00000B3":{code:"STATUS_PIPE_LISTENING",message:"The specified named pipe is in the listening state."},"0xC00000B4":{code:"STATUS_INVALID_READ_MODE",message:"The specified named pipe is not in message mode."},"0xC00000B5":{code:"STATUS_IO_TIMEOUT",message:"{Device Timeout} The specified I/O operation on %hs was not completed before the time-out period expired."},"0xC00000B6":{code:"STATUS_FILE_FORCED_CLOSED",message:"The specified file has been closed by another process."},"0xC00000B7":{code:"STATUS_PROFILING_NOT_STARTED",message:"Profiling is not started."},"0xC00000B8":{code:"STATUS_PROFILING_NOT_STOPPED",message:"Profiling is not stopped."},"0xC00000B9":{code:"STATUS_COULD_NOT_INTERPRET",message:"The passed ACL did not contain the minimum required information."},"0xC00000BA":{code:"STATUS_FILE_IS_A_DIRECTORY",message:"The file that was specified as a target is a directory, and the caller specified that it could be anything but a directory."},"0xC00000BB":{code:"STATUS_NOT_SUPPORTED",message:"The request is not supported."},"0xC00000BC":{code:"STATUS_REMOTE_NOT_LISTENING",message:"This remote computer is not listening."},"0xC00000BD":{code:"STATUS_DUPLICATE_NAME",message:"A duplicate name exists on the network."},"0xC00000BE":{code:"STATUS_BAD_NETWORK_PATH",message:"The network path cannot be located."},"0xC00000BF":{code:"STATUS_NETWORK_BUSY",message:"The network is busy."},"0xC00000C0":{code:"STATUS_DEVICE_DOES_NOT_EXIST",message:"This device does not exist."},"0xC00000C1":{code:"STATUS_TOO_MANY_COMMANDS",message:"The network BIOS command limit has been reached."},"0xC00000C2":{code:"STATUS_ADAPTER_HARDWARE_ERROR",message:"An I/O adapter hardware error has occurred."},"0xC00000C3":{code:"STATUS_INVALID_NETWORK_RESPONSE",message:"The network responded incorrectly."},"0xC00000C4":{code:"STATUS_UNEXPECTED_NETWORK_ERROR",message:"An unexpected network error occurred."},"0xC00000C5":{code:"STATUS_BAD_REMOTE_ADAPTER",message:"The remote adapter is not compatible."},"0xC00000C6":{code:"STATUS_PRINT_QUEUE_FULL",message:"The print queue is full."},"0xC00000C7":{code:"STATUS_NO_SPOOL_SPACE",message:"Space to store the file that is waiting to be printed is not available on the server."},"0xC00000C8":{code:"STATUS_PRINT_CANCELLED",message:"The requested print file has been canceled."},"0xC00000C9":{code:"STATUS_NETWORK_NAME_DELETED",message:"The network name was deleted."},"0xC00000CA":{code:"STATUS_NETWORK_ACCESS_DENIED",message:"Network access is denied."},"0xC00000CB":{code:"STATUS_BAD_DEVICE_TYPE",message:"{Incorrect Network Resource Type} The specified device type (LPT, for example) conflicts with the actual device type on the remote resource."},"0xC00000CC":{code:"STATUS_BAD_NETWORK_NAME",message:"{Network Name Not Found} The specified share name cannot be found on the remote server."},"0xC00000CD":{code:"STATUS_TOO_MANY_NAMES",message:"The name limit for the network adapter card of the local computer was exceeded."},"0xC00000CE":{code:"STATUS_TOO_MANY_SESSIONS",message:"The network BIOS session limit was exceeded."},"0xC00000CF":{code:"STATUS_SHARING_PAUSED",message:"File sharing has been temporarily paused."},"0xC00000D0":{code:"STATUS_REQUEST_NOT_ACCEPTED",message:"No more connections can be made to this remote computer at this time because the computer has already accepted the maximum number of connections."},"0xC00000D1":{code:"STATUS_REDIRECTOR_PAUSED",message:"Print or disk redirection is temporarily paused."},"0xC00000D2":{code:"STATUS_NET_WRITE_FAULT",message:"A network data fault occurred."},"0xC00000D3":{code:"STATUS_PROFILING_AT_LIMIT",message:"The number of active profiling objects is at the maximum and no more may be started."},"0xC00000D4":{code:"STATUS_NOT_SAME_DEVICE",message:"{Incorrect Volume} The destination file of a rename request is located on a different device than the source of the rename request."},"0xC00000D5":{code:"STATUS_FILE_RENAMED",message:"The specified file has been renamed and thus cannot be modified."},"0xC00000D6":{code:"STATUS_VIRTUAL_CIRCUIT_CLOSED",message:"{Network Request Timeout} The session with a remote server has been disconnected because the time-out interval for a request has expired."},"0xC00000D7":{code:"STATUS_NO_SECURITY_ON_OBJECT",message:"Indicates an attempt was made to operate on the security of an object that does not have security associated with it."},"0xC00000D8":{code:"STATUS_CANT_WAIT",message:"Used to indicate that an operation cannot continue without blocking for I/O."},"0xC00000D9":{code:"STATUS_PIPE_EMPTY",message:"Used to indicate that a read operation was done on an empty pipe."},"0xC00000DA":{code:"STATUS_CANT_ACCESS_DOMAIN_INFO",message:"Configuration information could not be read from the domain controller, either because the machine is unavailable or access has been denied."},"0xC00000DB":{code:"STATUS_CANT_TERMINATE_SELF",message:"Indicates that a thread attempted to terminate itself by default (called NtTerminateThread with NULL) and it was the last thread in the current process."},"0xC00000DC":{code:"STATUS_INVALID_SERVER_STATE",message:"Indicates the Sam Server was in the wrong state to perform the desired operation."},"0xC00000DD":{code:"STATUS_INVALID_DOMAIN_STATE",message:"Indicates the domain was in the wrong state to perform the desired operation."},"0xC00000DE":{code:"STATUS_INVALID_DOMAIN_ROLE",message:"This operation is only allowed for the primary domain controller of the domain."},"0xC00000DF":{code:"STATUS_NO_SUCH_DOMAIN",message:"The specified domain did not exist."},"0xC00000E0":{code:"STATUS_DOMAIN_EXISTS",message:"The specified domain already exists."},"0xC00000E1":{code:"STATUS_DOMAIN_LIMIT_EXCEEDED",message:"An attempt was made to exceed the limit on the number of domains per server for this release."},"0xC00000E2":{code:"STATUS_OPLOCK_NOT_GRANTED",message:"An error status returned when the opportunistic lock (oplock) request is denied."},"0xC00000E3":{code:"STATUS_INVALID_OPLOCK_PROTOCOL",message:"An error status returned when an invalid opportunistic lock (oplock) acknowledgment is received by a file system."},"0xC00000E4":{code:"STATUS_INTERNAL_DB_CORRUPTION",message:"This error indicates that the requested operation cannot be completed due to a catastrophic media failure or an on-disk data structure corruption."},"0xC00000E5":{code:"STATUS_INTERNAL_ERROR",message:"An internal error occurred."},"0xC00000E6":{code:"STATUS_GENERIC_NOT_MAPPED",message:"Indicates generic access types were contained in an access mask which should already be mapped to non-generic access types."},"0xC00000E7":{code:"STATUS_BAD_DESCRIPTOR_FORMAT",message:"Indicates a security descriptor is not in the necessary format (absolute or self-relative)."},"0xC00000E8":{code:"STATUS_INVALID_USER_BUFFER",message:"An access to a user buffer failed at an expected point in time. This code is defined because the caller does not want to accept STATUS_ACCESS_VIOLATION in its filter."},"0xC00000E9":{code:"STATUS_UNEXPECTED_IO_ERROR",message:"If an I/O error that is not defined in the standard FsRtl filter is returned, it is converted to the following error, which is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000EA":{code:"STATUS_UNEXPECTED_MM_CREATE_ERR",message:"If an MM error that is not defined in the standard FsRtl filter is returned, it is converted to one of the following errors, which are guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000EB":{code:"STATUS_UNEXPECTED_MM_MAP_ERROR",message:"If an MM error that is not defined in the standard FsRtl filter is returned, it is converted to one of the following errors, which are guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000EC":{code:"STATUS_UNEXPECTED_MM_EXTEND_ERR",message:"If an MM error that is not defined in the standard FsRtl filter is returned, it is converted to one of the following errors, which are guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0xC00000ED":{code:"STATUS_NOT_LOGON_PROCESS",message:"The requested action is restricted for use by logon processes only. The calling process has not registered as a logon process."},"0xC00000EE":{code:"STATUS_LOGON_SESSION_EXISTS",message:"An attempt has been made to start a new session manager or LSA logon session by using an ID that is already in use."},"0xC00000EF":{code:"STATUS_INVALID_PARAMETER_1",message:"An invalid parameter was passed to a service or function as the first argument."},"0xC00000F0":{code:"STATUS_INVALID_PARAMETER_2",message:"An invalid parameter was passed to a service or function as the second argument."},"0xC00000F1":{code:"STATUS_INVALID_PARAMETER_3",message:"An invalid parameter was passed to a service or function as the third argument."},"0xC00000F2":{code:"STATUS_INVALID_PARAMETER_4",message:"An invalid parameter was passed to a service or function as the fourth argument."},"0xC00000F3":{code:"STATUS_INVALID_PARAMETER_5",message:"An invalid parameter was passed to a service or function as the fifth argument."},"0xC00000F4":{code:"STATUS_INVALID_PARAMETER_6",message:"An invalid parameter was passed to a service or function as the sixth argument."},"0xC00000F5":{code:"STATUS_INVALID_PARAMETER_7",message:"An invalid parameter was passed to a service or function as the seventh argument."},"0xC00000F6":{code:"STATUS_INVALID_PARAMETER_8",message:"An invalid parameter was passed to a service or function as the eighth argument."},"0xC00000F7":{code:"STATUS_INVALID_PARAMETER_9",message:"An invalid parameter was passed to a service or function as the ninth argument."},"0xC00000F8":{code:"STATUS_INVALID_PARAMETER_10",message:"An invalid parameter was passed to a service or function as the tenth argument."},"0xC00000F9":{code:"STATUS_INVALID_PARAMETER_11",message:"An invalid parameter was passed to a service or function as the eleventh argument."},"0xC00000FA":{code:"STATUS_INVALID_PARAMETER_12",message:"An invalid parameter was passed to a service or function as the twelfth argument."},"0xC00000FB":{code:"STATUS_REDIRECTOR_NOT_STARTED",message:"An attempt was made to access a network file, but the network software was not yet started."},"0xC00000FC":{code:"STATUS_REDIRECTOR_STARTED",message:"An attempt was made to start the redirector, but the redirector has already been started."},"0xC00000FD":{code:"STATUS_STACK_OVERFLOW",message:"A new guard page for the stack cannot be created."},"0xC00000FE":{code:"STATUS_NO_SUCH_PACKAGE",message:"A specified authentication package is unknown."},"0xC00000FF":{code:"STATUS_BAD_FUNCTION_TABLE",message:"A malformed function table was encountered during an unwind operation."},"0xC0000100":{code:"STATUS_VARIABLE_NOT_FOUND",message:"Indicates the specified environment variable name was not found in the specified environment block."},"0xC0000101":{code:"STATUS_DIRECTORY_NOT_EMPTY",message:"Indicates that the directory trying to be deleted is not empty."},"0xC0000102":{code:"STATUS_FILE_CORRUPT_ERROR",message:"{Corrupt File} The file or directory %hs is corrupt and unreadable. Run the Chkdsk utility."},"0xC0000103":{code:"STATUS_NOT_A_DIRECTORY",message:"A requested opened file is not a directory."},"0xC0000104":{code:"STATUS_BAD_LOGON_SESSION_STATE",message:"The logon session is not in a state that is consistent with the requested operation."},"0xC0000105":{code:"STATUS_LOGON_SESSION_COLLISION",message:"An internal LSA error has occurred. An authentication package has requested the creation of a logon session but the ID of an already existing logon session has been specified."},"0xC0000106":{code:"STATUS_NAME_TOO_LONG",message:"A specified name string is too long for its intended use."},"0xC0000107":{code:"STATUS_FILES_OPEN",message:"The user attempted to force close the files on a redirected drive, but there were opened files on the drive, and the user did not specify a sufficient level of force."},"0xC0000108":{code:"STATUS_CONNECTION_IN_USE",message:"The user attempted to force close the files on a redirected drive, but there were opened directories on the drive, and the user did not specify a sufficient level of force."},"0xC0000109":{code:"STATUS_MESSAGE_NOT_FOUND",message:"RtlFindMessage could not locate the requested message ID in the message table resource."},"0xC000010A":{code:"STATUS_PROCESS_IS_TERMINATING",message:"An attempt was made to duplicate an object handle into or out of an exiting process."},"0xC000010B":{code:"STATUS_INVALID_LOGON_TYPE",message:"Indicates an invalid value has been provided for the LogonType requested."},"0xC000010C":{code:"STATUS_NO_GUID_TRANSLATION",message:"Indicates that an attempt was made to assign protection to a file system file or directory and one of the SIDs in the security descriptor could not be translated into a GUID that could be stored by the file system. This causes the protection attempt to fail, which may cause a file creation attempt to fail."},"0xC000010D":{code:"STATUS_CANNOT_IMPERSONATE",message:"Indicates that an attempt has been made to impersonate via a named pipe that has not yet been read from."},"0xC000010E":{code:"STATUS_IMAGE_ALREADY_LOADED",message:"Indicates that the specified image is already loaded."},"0xC0000117":{code:"STATUS_NO_LDT",message:"Indicates that an attempt was made to change the size of the LDT for a process that has no LDT."},"0xC0000118":{code:"STATUS_INVALID_LDT_SIZE",message:"Indicates that an attempt was made to grow an LDT by setting its size, or that the size was not an even number of selectors."},"0xC0000119":{code:"STATUS_INVALID_LDT_OFFSET",message:"Indicates that the starting value for the LDT information was not an integral multiple of the selector size."},"0xC000011A":{code:"STATUS_INVALID_LDT_DESCRIPTOR",message:"Indicates that the user supplied an invalid descriptor when trying to set up LDT descriptors."},"0xC000011B":{code:"STATUS_INVALID_IMAGE_NE_FORMAT",message:"The specified image file did not have the correct format. It appears to be NE format."},"0xC000011C":{code:"STATUS_RXACT_INVALID_STATE",message:"Indicates that the transaction state of a registry subtree is incompatible with the requested operation. For example, a request has been made to start a new transaction with one already in progress, or a request has been made to apply a transaction when one is not currently in progress."},"0xC000011D":{code:"STATUS_RXACT_COMMIT_FAILURE",message:"Indicates an error has occurred during a registry transaction commit. The database has been left in an unknown, but probably inconsistent, state. The state of the registry transaction is left as COMMITTING."},"0xC000011E":{code:"STATUS_MAPPED_FILE_SIZE_ZERO",message:"An attempt was made to map a file of size zero with the maximum size specified as zero."},"0xC000011F":{code:"STATUS_TOO_MANY_OPENED_FILES",message:"Too many files are opened on a remote server. This error should only be returned by the Windows redirector on a remote drive."},"0xC0000120":{code:"STATUS_CANCELLED",message:"The I/O request was canceled."},"0xC0000121":{code:"STATUS_CANNOT_DELETE",message:"An attempt has been made to remove a file or directory that cannot be deleted."},"0xC0000122":{code:"STATUS_INVALID_COMPUTER_NAME",message:"Indicates a name that was specified as a remote computer name is syntactically invalid."},"0xC0000123":{code:"STATUS_FILE_DELETED",message:"An I/O request other than close was performed on a file after it was deleted, which can only happen to a request that did not complete before the last handle was closed via NtClose."},"0xC0000124":{code:"STATUS_SPECIAL_ACCOUNT",message:"Indicates an operation that is incompatible with built-in accounts has been attempted on a built-in (special) SAM account. For example, built-in accounts cannot be deleted."},"0xC0000125":{code:"STATUS_SPECIAL_GROUP",message:"The operation requested may not be performed on the specified group because it is a built-in special group."},"0xC0000126":{code:"STATUS_SPECIAL_USER",message:"The operation requested may not be performed on the specified user because it is a built-in special user."},"0xC0000127":{code:"STATUS_MEMBERS_PRIMARY_GROUP",message:"Indicates a member cannot be removed from a group because the group is currently the member's primary group."},"0xC0000128":{code:"STATUS_FILE_CLOSED",message:"An I/O request other than close and several other special case operations was attempted using a file object that had already been closed."},"0xC0000129":{code:"STATUS_TOO_MANY_THREADS",message:"Indicates a process has too many threads to perform the requested action. For example, assignment of a primary token may only be performed when a process has zero or one threads."},"0xC000012A":{code:"STATUS_THREAD_NOT_IN_PROCESS",message:"An attempt was made to operate on a thread within a specific process, but the specified thread is not in the specified process."},"0xC000012B":{code:"STATUS_TOKEN_ALREADY_IN_USE",message:"An attempt was made to establish a token for use as a primary token but the token is already in use. A token can only be the primary token of one process at a time."},"0xC000012C":{code:"STATUS_PAGEFILE_QUOTA_EXCEEDED",message:"The page file quota was exceeded."},"0xC000012D":{code:"STATUS_COMMITMENT_LIMIT",message:"{Out of Virtual Memory} Your system is low on virtual memory. To ensure that Windows runs correctly, increase the size of your virtual memory paging file. For more information, see Help."},"0xC000012E":{code:"STATUS_INVALID_IMAGE_LE_FORMAT",message:"The specified image file did not have the correct format: it appears to be LE format."},"0xC000012F":{code:"STATUS_INVALID_IMAGE_NOT_MZ",message:"The specified image file did not have the correct format: it did not have an initial MZ."},"0xC0000130":{code:"STATUS_INVALID_IMAGE_PROTECT",message:"The specified image file did not have the correct format: it did not have a proper e_lfarlc in the MZ header."},"0xC0000131":{code:"STATUS_INVALID_IMAGE_WIN_16",message:"The specified image file did not have the correct format: it appears to be a 16-bit Windows image."},"0xC0000132":{code:"STATUS_LOGON_SERVER_CONFLICT",message:"The Netlogon service cannot start because another Netlogon service running in the domain conflicts with the specified role."},"0xC0000133":{code:"STATUS_TIME_DIFFERENCE_AT_DC",message:"The time at the primary domain controller is different from the time at the backup domain controller or member server by too large an amount."},"0xC0000134":{code:"STATUS_SYNCHRONIZATION_REQUIRED",message:"The SAM database on a Windows Server is significantly out of synchronization with the copy on the domain controller. A complete synchronization is required."},"0xC0000135":{code:"STATUS_DLL_NOT_FOUND",message:"{Unable To Locate Component} This application has failed to start because %hs was not found. Reinstalling the application may fix this problem."},"0xC0000136":{code:"STATUS_OPEN_FAILED",message:"The NtCreateFile API failed. This error should never be returned to an application; it is a place holder for the Windows LAN Manager Redirector to use in its internal error-mapping routines."},"0xC0000137":{code:"STATUS_IO_PRIVILEGE_FAILED",message:"{Privilege Failed} The I/O permissions for the process could not be changed."},"0xC0000138":{code:"STATUS_ORDINAL_NOT_FOUND",message:"{Ordinal Not Found} The ordinal %ld could not be located in the dynamic link library %hs."},"0xC0000139":{code:"STATUS_ENTRYPOINT_NOT_FOUND",message:"{Entry Point Not Found} The procedure entry point %hs could not be located in the dynamic link library %hs."},"0xC000013A":{code:"STATUS_CONTROL_C_EXIT",message:"{Application Exit by CTRL+C} The application terminated as a result of a CTRL+C."},"0xC000013B":{code:"STATUS_LOCAL_DISCONNECT",message:"{Virtual Circuit Closed} The network transport on your computer has closed a network connection. There may or may not be I/O requests outstanding."},"0xC000013C":{code:"STATUS_REMOTE_DISCONNECT",message:"{Virtual Circuit Closed} The network transport on a remote computer has closed a network connection. There may or may not be I/O requests outstanding."},"0xC000013D":{code:"STATUS_REMOTE_RESOURCES",message:"{Insufficient Resources on Remote Computer} The remote computer has insufficient resources to complete the network request. For example, the remote computer may not have enough available memory to carry out the request at this time."},"0xC000013E":{code:"STATUS_LINK_FAILED",message:"{Virtual Circuit Closed} An existing connection (virtual circuit) has been broken at the remote computer. There is probably something wrong with the network software protocol or the network hardware on the remote computer."},"0xC000013F":{code:"STATUS_LINK_TIMEOUT",message:"{Virtual Circuit Closed} The network transport on your computer has closed a network connection because it had to wait too long for a response from the remote computer."},"0xC0000140":{code:"STATUS_INVALID_CONNECTION",message:"The connection handle that was given to the transport was invalid."},"0xC0000141":{code:"STATUS_INVALID_ADDRESS",message:"The address handle that was given to the transport was invalid."},"0xC0000142":{code:"STATUS_DLL_INIT_FAILED",message:"{DLL Initialization Failed} Initialization of the dynamic link library %hs failed. The process is terminating abnormally."},"0xC0000143":{code:"STATUS_MISSING_SYSTEMFILE",message:"{Missing System File} The required system file %hs is bad or missing."},"0xC0000144":{code:"STATUS_UNHANDLED_EXCEPTION",message:"{Application Error} The exception %s (0x%08lx) occurred in the application at location 0x%08lx."},"0xC0000145":{code:"STATUS_APP_INIT_FAILURE",message:"{Application Error} The application failed to initialize properly (0x%lx). Click OK to terminate the application."},"0xC0000146":{code:"STATUS_PAGEFILE_CREATE_FAILED",message:"{Unable to Create Paging File} The creation of the paging file %hs failed (%lx). The requested size was %ld."},"0xC0000147":{code:"STATUS_NO_PAGEFILE",message:"{No Paging File Specified} No paging file was specified in the system configuration."},"0xC0000148":{code:"STATUS_INVALID_LEVEL",message:"{Incorrect System Call Level} An invalid level was passed into the specified system call."},"0xC0000149":{code:"STATUS_WRONG_PASSWORD_CORE",message:"{Incorrect Password to LAN Manager Server} You specified an incorrect password to a LAN Manager 2.x or MS-NET server."},"0xC000014A":{code:"STATUS_ILLEGAL_FLOAT_CONTEXT",message:"{EXCEPTION} A real-mode application issued a floating-point instruction and floating-point hardware is not present."},"0xC000014B":{code:"STATUS_PIPE_BROKEN",message:"The pipe operation has failed because the other end of the pipe has been closed."},"0xC000014C":{code:"STATUS_REGISTRY_CORRUPT",message:"{The Registry Is Corrupt} The structure of one of the files that contains registry data is corrupt; the image of the file in memory is corrupt; or the file could not be recovered because the alternate copy or log was absent or corrupt."},"0xC000014D":{code:"STATUS_REGISTRY_IO_FAILED",message:"An I/O operation initiated by the Registry failed and cannot be recovered. The registry could not read in, write out, or flush one of the files that contain the system's image of the registry."},"0xC000014E":{code:"STATUS_NO_EVENT_PAIR",message:"An event pair synchronization operation was performed using the thread-specific client/server event pair object, but no event pair object was associated with the thread."},"0xC000014F":{code:"STATUS_UNRECOGNIZED_VOLUME",message:"The volume does not contain a recognized file system. Be sure that all required file system drivers are loaded and that the volume is not corrupt."},"0xC0000150":{code:"STATUS_SERIAL_NO_DEVICE_INITED",message:"No serial device was successfully initialized. The serial driver will unload."},"0xC0000151":{code:"STATUS_NO_SUCH_ALIAS",message:"The specified local group does not exist."},"0xC0000152":{code:"STATUS_MEMBER_NOT_IN_ALIAS",message:"The specified account name is not a member of the group."},"0xC0000153":{code:"STATUS_MEMBER_IN_ALIAS",message:"The specified account name is already a member of the group."},"0xC0000154":{code:"STATUS_ALIAS_EXISTS",message:"The specified local group already exists."},"0xC0000155":{code:"STATUS_LOGON_NOT_GRANTED",message:"A requested type of logon (for example, interactive, network, and service) is not granted by the local security policy of the target system. Ask the system administrator to grant the necessary form of logon."},"0xC0000156":{code:"STATUS_TOO_MANY_SECRETS",message:"The maximum number of secrets that may be stored in a single system was exceeded. The length and number of secrets is limited to satisfy U.S. State Department export restrictions."},"0xC0000157":{code:"STATUS_SECRET_TOO_LONG",message:"The length of a secret exceeds the maximum allowable length. The length and number of secrets is limited to satisfy U.S. State Department export restrictions."},"0xC0000158":{code:"STATUS_INTERNAL_DB_ERROR",message:"The local security authority (LSA) database contains an internal inconsistency."},"0xC0000159":{code:"STATUS_FULLSCREEN_MODE",message:"The requested operation cannot be performed in full-screen mode."},"0xC000015A":{code:"STATUS_TOO_MANY_CONTEXT_IDS",message:"During a logon attempt, the user's security context accumulated too many security IDs. This is a very unusual situation. Remove the user from some global or local groups to reduce the number of security IDs to incorporate into the security context."},"0xC000015B":{code:"STATUS_LOGON_TYPE_NOT_GRANTED",message:"A user has requested a type of logon (for example, interactive or network) that has not been granted. An administrator has control over who may logon interactively and through the network."},"0xC000015C":{code:"STATUS_NOT_REGISTRY_FILE",message:"The system has attempted to load or restore a file into the registry, and the specified file is not in the format of a registry file."},"0xC000015D":{code:"STATUS_NT_CROSS_ENCRYPTION_REQUIRED",message:"An attempt was made to change a user password in the security account manager without providing the necessary Windows cross-encrypted password."},"0xC000015E":{code:"STATUS_DOMAIN_CTRLR_CONFIG_ERROR",message:"A Windows Server has an incorrect configuration."},"0xC000015F":{code:"STATUS_FT_MISSING_MEMBER",message:"An attempt was made to explicitly access the secondary copy of information via a device control to the fault tolerance driver and the secondary copy is not present in the system."},"0xC0000160":{code:"STATUS_ILL_FORMED_SERVICE_ENTRY",message:"A configuration registry node that represents a driver service entry was ill-formed and did not contain the required value entries."},"0xC0000161":{code:"STATUS_ILLEGAL_CHARACTER",message:"An illegal character was encountered. For a multibyte character set, this includes a lead byte without a succeeding trail byte. For the Unicode character set this includes the characters 0xFFFF and 0xFFFE."},"0xC0000162":{code:"STATUS_UNMAPPABLE_CHARACTER",message:"No mapping for the Unicode character exists in the target multibyte code page."},"0xC0000163":{code:"STATUS_UNDEFINED_CHARACTER",message:"The Unicode character is not defined in the Unicode character set that is installed on the system."},"0xC0000164":{code:"STATUS_FLOPPY_VOLUME",message:"The paging file cannot be created on a floppy disk."},"0xC0000165":{code:"STATUS_FLOPPY_ID_MARK_NOT_FOUND",message:"{Floppy Disk Error} While accessing a floppy disk, an ID address mark was not found."},"0xC0000166":{code:"STATUS_FLOPPY_WRONG_CYLINDER",message:"{Floppy Disk Error} While accessing a floppy disk, the track address from the sector ID field was found to be different from the track address that is maintained by the controller."},"0xC0000167":{code:"STATUS_FLOPPY_UNKNOWN_ERROR",message:"{Floppy Disk Error} The floppy disk controller reported an error that is not recognized by the floppy disk driver."},"0xC0000168":{code:"STATUS_FLOPPY_BAD_REGISTERS",message:"{Floppy Disk Error} While accessing a floppy-disk, the controller returned inconsistent results via its registers."},"0xC0000169":{code:"STATUS_DISK_RECALIBRATE_FAILED",message:"{Hard Disk Error} While accessing the hard disk, a recalibrate operation failed, even after retries."},"0xC000016A":{code:"STATUS_DISK_OPERATION_FAILED",message:"{Hard Disk Error} While accessing the hard disk, a disk operation failed even after retries."},"0xC000016B":{code:"STATUS_DISK_RESET_FAILED",message:"{Hard Disk Error} While accessing the hard disk, a disk controller reset was needed, but even that failed."},"0xC000016C":{code:"STATUS_SHARED_IRQ_BUSY",message:"An attempt was made to open a device that was sharing an interrupt request (IRQ) with other devices. At least one other device that uses that IRQ was already opened. Two concurrent opens of devices that share an IRQ and only work via interrupts is not supported for the particular bus type that the devices use."},"0xC000016D":{code:"STATUS_FT_ORPHANING",message:"{FT Orphaning} A disk that is part of a fault-tolerant volume can no longer be accessed."},"0xC000016E":{code:"STATUS_BIOS_FAILED_TO_CONNECT_INTERRUPT",message:"The basic input/output system (BIOS) failed to connect a system interrupt to the device or bus for which the device is connected."},"0xC0000172":{code:"STATUS_PARTITION_FAILURE",message:"The tape could not be partitioned."},"0xC0000173":{code:"STATUS_INVALID_BLOCK_LENGTH",message:"When accessing a new tape of a multi-volume partition, the current blocksize is incorrect."},"0xC0000174":{code:"STATUS_DEVICE_NOT_PARTITIONED",message:"The tape partition information could not be found when loading a tape."},"0xC0000175":{code:"STATUS_UNABLE_TO_LOCK_MEDIA",message:"An attempt to lock the eject media mechanism failed."},"0xC0000176":{code:"STATUS_UNABLE_TO_UNLOAD_MEDIA",message:"An attempt to unload media failed."},"0xC0000177":{code:"STATUS_EOM_OVERFLOW",message:"The physical end of tape was detected."},"0xC0000178":{code:"STATUS_NO_MEDIA",message:"{No Media} There is no media in the drive. Insert media into drive %hs."},"0xC000017A":{code:"STATUS_NO_SUCH_MEMBER",message:"A member could not be added to or removed from the local group because the member does not exist."},"0xC000017B":{code:"STATUS_INVALID_MEMBER",message:"A new member could not be added to a local group because the member has the wrong account type."},"0xC000017C":{code:"STATUS_KEY_DELETED",message:"An illegal operation was attempted on a registry key that has been marked for deletion."},"0xC000017D":{code:"STATUS_NO_LOG_SPACE",message:"The system could not allocate the required space in a registry log."},"0xC000017E":{code:"STATUS_TOO_MANY_SIDS",message:"Too many SIDs have been specified."},"0xC000017F":{code:"STATUS_LM_CROSS_ENCRYPTION_REQUIRED",message:"An attempt was made to change a user password in the security account manager without providing the necessary LM cross-encrypted password."},"0xC0000180":{code:"STATUS_KEY_HAS_CHILDREN",message:"An attempt was made to create a symbolic link in a registry key that already has subkeys or values."},"0xC0000181":{code:"STATUS_CHILD_MUST_BE_VOLATILE",message:"An attempt was made to create a stable subkey under a volatile parent key."},"0xC0000182":{code:"STATUS_DEVICE_CONFIGURATION_ERROR",message:"The I/O device is configured incorrectly or the configuration parameters to the driver are incorrect."},"0xC0000183":{code:"STATUS_DRIVER_INTERNAL_ERROR",message:"An error was detected between two drivers or within an I/O driver."},"0xC0000184":{code:"STATUS_INVALID_DEVICE_STATE",message:"The device is not in a valid state to perform this request."},"0xC0000185":{code:"STATUS_IO_DEVICE_ERROR",message:"The I/O device reported an I/O error."},"0xC0000186":{code:"STATUS_DEVICE_PROTOCOL_ERROR",message:"A protocol error was detected between the driver and the device."},"0xC0000187":{code:"STATUS_BACKUP_CONTROLLER",message:"This operation is only allowed for the primary domain controller of the domain."},"0xC0000188":{code:"STATUS_LOG_FILE_FULL",message:"The log file space is insufficient to support this operation."},"0xC0000189":{code:"STATUS_TOO_LATE",message:"A write operation was attempted to a volume after it was dismounted."},"0xC000018A":{code:"STATUS_NO_TRUST_LSA_SECRET",message:"The workstation does not have a trust secret for the primary domain in the local LSA database."},"0xC000018B":{code:"STATUS_NO_TRUST_SAM_ACCOUNT",message:"The SAM database on the Windows Server does not have a computer account for this workstation trust relationship."},"0xC000018C":{code:"STATUS_TRUSTED_DOMAIN_FAILURE",message:"The logon request failed because the trust relationship between the primary domain and the trusted domain failed."},"0xC000018D":{code:"STATUS_TRUSTED_RELATIONSHIP_FAILURE",message:"The logon request failed because the trust relationship between this workstation and the primary domain failed."},"0xC000018E":{code:"STATUS_EVENTLOG_FILE_CORRUPT",message:"The Eventlog log file is corrupt."},"0xC000018F":{code:"STATUS_EVENTLOG_CANT_START",message:"No Eventlog log file could be opened. The Eventlog service did not start."},"0xC0000190":{code:"STATUS_TRUST_FAILURE",message:"The network logon failed. This may be because the validation authority cannot be reached."},"0xC0000191":{code:"STATUS_MUTANT_LIMIT_EXCEEDED",message:"An attempt was made to acquire a mutant such that its maximum count would have been exceeded."},"0xC0000192":{code:"STATUS_NETLOGON_NOT_STARTED",message:"An attempt was made to logon, but the NetLogon service was not started."},"0xC0000193":{code:"STATUS_ACCOUNT_EXPIRED",message:"The user account has expired."},"0xC0000194":{code:"STATUS_POSSIBLE_DEADLOCK",message:"{EXCEPTION} Possible deadlock condition."},"0xC0000195":{code:"STATUS_NETWORK_CREDENTIAL_CONFLICT",message:"Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again."},"0xC0000196":{code:"STATUS_REMOTE_SESSION_LIMIT",message:"An attempt was made to establish a session to a network server, but there are already too many sessions established to that server."},"0xC0000197":{code:"STATUS_EVENTLOG_FILE_CHANGED",message:"The log file has changed between reads."},"0xC0000198":{code:"STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT",message:"The account used is an interdomain trust account. Use your global user account or local user account to access this server."},"0xC0000199":{code:"STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT",message:"The account used is a computer account. Use your global user account or local user account to access this server."},"0xC000019A":{code:"STATUS_NOLOGON_SERVER_TRUST_ACCOUNT",message:"The account used is a server trust account. Use your global user account or local user account to access this server."},"0xC000019B":{code:"STATUS_DOMAIN_TRUST_INCONSISTENT",message:"The name or SID of the specified domain is inconsistent with the trust information for that domain."},"0xC000019C":{code:"STATUS_FS_DRIVER_REQUIRED",message:"A volume has been accessed for which a file system driver is required that has not yet been loaded."},"0xC000019D":{code:"STATUS_IMAGE_ALREADY_LOADED_AS_DLL",message:"Indicates that the specified image is already loaded as a DLL."},"0xC000019E":{code:"STATUS_INCOMPATIBLE_WITH_GLOBAL_SHORT_NAME_REGISTRY_SETTING",message:"Short name settings may not be changed on this volume due to the global registry setting."},"0xC000019F":{code:"STATUS_SHORT_NAMES_NOT_ENABLED_ON_VOLUME",message:"Short names are not enabled on this volume."},"0xC00001A0":{code:"STATUS_SECURITY_STREAM_IS_INCONSISTENT",message:"The security stream for the given volume is in an inconsistent state. Please run CHKDSK on the volume."},"0xC00001A1":{code:"STATUS_INVALID_LOCK_RANGE",message:"A requested file lock operation cannot be processed due to an invalid byte range."},"0xC00001A2":{code:"STATUS_INVALID_ACE_CONDITION",message:"The specified access control entry (ACE) contains an invalid condition."},"0xC00001A3":{code:"STATUS_IMAGE_SUBSYSTEM_NOT_PRESENT",message:"The subsystem needed to support the image type is not present."},"0xC00001A4":{code:"STATUS_NOTIFICATION_GUID_ALREADY_DEFINED",message:"The specified file already has a notification GUID associated with it."},"0xC0000201":{code:"STATUS_NETWORK_OPEN_RESTRICTION",message:"A remote open failed because the network open restrictions were not satisfied."},"0xC0000202":{code:"STATUS_NO_USER_SESSION_KEY",message:"There is no user session key for the specified logon session."},"0xC0000203":{code:"STATUS_USER_SESSION_DELETED",message:"The remote user session has been deleted."},"0xC0000204":{code:"STATUS_RESOURCE_LANG_NOT_FOUND",message:"Indicates the specified resource language ID cannot be found in the image file."},"0xC0000205":{code:"STATUS_INSUFF_SERVER_RESOURCES",message:"Insufficient server resources exist to complete the request."},"0xC0000206":{code:"STATUS_INVALID_BUFFER_SIZE",message:"The size of the buffer is invalid for the specified operation."},"0xC0000207":{code:"STATUS_INVALID_ADDRESS_COMPONENT",message:"The transport rejected the specified network address as invalid."},"0xC0000208":{code:"STATUS_INVALID_ADDRESS_WILDCARD",message:"The transport rejected the specified network address due to invalid use of a wildcard."},"0xC0000209":{code:"STATUS_TOO_MANY_ADDRESSES",message:"The transport address could not be opened because all the available addresses are in use."},"0xC000020A":{code:"STATUS_ADDRESS_ALREADY_EXISTS",message:"The transport address could not be opened because it already exists."},"0xC000020B":{code:"STATUS_ADDRESS_CLOSED",message:"The transport address is now closed."},"0xC000020C":{code:"STATUS_CONNECTION_DISCONNECTED",message:"The transport connection is now disconnected."},"0xC000020D":{code:"STATUS_CONNECTION_RESET",message:"The transport connection has been reset."},"0xC000020E":{code:"STATUS_TOO_MANY_NODES",message:"The transport cannot dynamically acquire any more nodes."},"0xC000020F":{code:"STATUS_TRANSACTION_ABORTED",message:"The transport aborted a pending transaction."},"0xC0000210":{code:"STATUS_TRANSACTION_TIMED_OUT",message:"The transport timed out a request that is waiting for a response."},"0xC0000211":{code:"STATUS_TRANSACTION_NO_RELEASE",message:"The transport did not receive a release for a pending response."},"0xC0000212":{code:"STATUS_TRANSACTION_NO_MATCH",message:"The transport did not find a transaction that matches the specific token."},"0xC0000213":{code:"STATUS_TRANSACTION_RESPONDED",message:"The transport had previously responded to a transaction request."},"0xC0000214":{code:"STATUS_TRANSACTION_INVALID_ID",message:"The transport does not recognize the specified transaction request ID."},"0xC0000215":{code:"STATUS_TRANSACTION_INVALID_TYPE",message:"The transport does not recognize the specified transaction request type."},"0xC0000216":{code:"STATUS_NOT_SERVER_SESSION",message:"The transport can only process the specified request on the server side of a session."},"0xC0000217":{code:"STATUS_NOT_CLIENT_SESSION",message:"The transport can only process the specified request on the client side of a session."},"0xC0000218":{code:"STATUS_CANNOT_LOAD_REGISTRY_FILE",message:"{Registry File Failure} The registry cannot load the hive (file): %hs or its log or alternate. It is corrupt, absent, or not writable."},"0xC0000219":{code:"STATUS_DEBUG_ATTACH_FAILED",message:"{Unexpected Failure in DebugActiveProcess} An unexpected failure occurred while processing a DebugActiveProcess API request. You may choose OK to terminate the process, or Cancel to ignore the error."},"0xC000021A":{code:"STATUS_SYSTEM_PROCESS_TERMINATED",message:"{Fatal System Error} The %hs system process terminated unexpectedly with a status of 0x%08x (0x%08x 0x%08x). The system has been shut down."},"0xC000021B":{code:"STATUS_DATA_NOT_ACCEPTED",message:"{Data Not Accepted} The TDI client could not handle the data received during an indication."},"0xC000021C":{code:"STATUS_NO_BROWSER_SERVERS_FOUND",message:"{Unable to Retrieve Browser Server List} The list of servers for this workgroup is not currently available."},"0xC000021D":{code:"STATUS_VDM_HARD_ERROR",message:"NTVDM encountered a hard error."},"0xC000021E":{code:"STATUS_DRIVER_CANCEL_TIMEOUT",message:"{Cancel Timeout} The driver %hs failed to complete a canceled I/O request in the allotted time."},"0xC000021F":{code:"STATUS_REPLY_MESSAGE_MISMATCH",message:"{Reply Message Mismatch} An attempt was made to reply to an LPC message, but the thread specified by the client ID in the message was not waiting on that message."},"0xC0000220":{code:"STATUS_MAPPED_ALIGNMENT",message:"{Mapped View Alignment Incorrect} An attempt was made to map a view of a file, but either the specified base address or the offset into the file were not aligned on the proper allocation granularity."},"0xC0000221":{code:"STATUS_IMAGE_CHECKSUM_MISMATCH",message:"{Bad Image Checksum} The image %hs is possibly corrupt. The header checksum does not match the computed checksum."},"0xC0000222":{code:"STATUS_LOST_WRITEBEHIND_DATA",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs. The data has been lost. This error may be caused by a failure of your computer hardware or network connection. Try to save this file elsewhere."},"0xC0000223":{code:"STATUS_CLIENT_SERVER_PARAMETERS_INVALID",message:"The parameters passed to the server in the client/server shared memory window were invalid. Too much data may have been put in the shared memory window."},"0xC0000224":{code:"STATUS_PASSWORD_MUST_CHANGE",message:"The user password must be changed before logging on the first time."},"0xC0000225":{code:"STATUS_NOT_FOUND",message:"The object was not found."},"0xC0000226":{code:"STATUS_NOT_TINY_STREAM",message:"The stream is not a tiny stream."},"0xC0000227":{code:"STATUS_RECOVERY_FAILURE",message:"A transaction recovery failed."},"0xC0000228":{code:"STATUS_STACK_OVERFLOW_READ",message:"The request must be handled by the stack overflow code."},"0xC0000229":{code:"STATUS_FAIL_CHECK",message:"A consistency check failed."},"0xC000022A":{code:"STATUS_DUPLICATE_OBJECTID",message:"The attempt to insert the ID in the index failed because the ID is already in the index."},"0xC000022B":{code:"STATUS_OBJECTID_EXISTS",message:"The attempt to set the object ID failed because the object already has an ID."},"0xC000022C":{code:"STATUS_CONVERT_TO_LARGE",message:"Internal OFS status codes indicating how an allocation operation is handled. Either it is retried after the containing oNode is moved or the extent stream is converted to a large stream."},"0xC000022D":{code:"STATUS_RETRY",message:"The request needs to be retried."},"0xC000022E":{code:"STATUS_FOUND_OUT_OF_SCOPE",message:"The attempt to find the object found an object on the volume that matches by ID; however, it is out of the scope of the handle that is used for the operation."},"0xC000022F":{code:"STATUS_ALLOCATE_BUCKET",message:"The bucket array must be grown. Retry the transaction after doing so."},"0xC0000230":{code:"STATUS_PROPSET_NOT_FOUND",message:"The specified property set does not exist on the object."},"0xC0000231":{code:"STATUS_MARSHALL_OVERFLOW",message:"The user/kernel marshaling buffer has overflowed."},"0xC0000232":{code:"STATUS_INVALID_VARIANT",message:"The supplied variant structure contains invalid data."},"0xC0000233":{code:"STATUS_DOMAIN_CONTROLLER_NOT_FOUND",message:"A domain controller for this domain was not found."},"0xC0000234":{code:"STATUS_ACCOUNT_LOCKED_OUT",message:"The user account has been automatically locked because too many invalid logon attempts or password change attempts have been requested."},"0xC0000235":{code:"STATUS_HANDLE_NOT_CLOSABLE",message:"NtClose was called on a handle that was protected from close via NtSetInformationObject."},"0xC0000236":{code:"STATUS_CONNECTION_REFUSED",message:"The transport-connection attempt was refused by the remote system."},"0xC0000237":{code:"STATUS_GRACEFUL_DISCONNECT",message:"The transport connection was gracefully closed."},"0xC0000238":{code:"STATUS_ADDRESS_ALREADY_ASSOCIATED",message:"The transport endpoint already has an address associated with it."},"0xC0000239":{code:"STATUS_ADDRESS_NOT_ASSOCIATED",message:"An address has not yet been associated with the transport endpoint."},"0xC000023A":{code:"STATUS_CONNECTION_INVALID",message:"An operation was attempted on a nonexistent transport connection."},"0xC000023B":{code:"STATUS_CONNECTION_ACTIVE",message:"An invalid operation was attempted on an active transport connection."},"0xC000023C":{code:"STATUS_NETWORK_UNREACHABLE",message:"The remote network is not reachable by the transport."},"0xC000023D":{code:"STATUS_HOST_UNREACHABLE",message:"The remote system is not reachable by the transport."},"0xC000023E":{code:"STATUS_PROTOCOL_UNREACHABLE",message:"The remote system does not support the transport protocol."},"0xC000023F":{code:"STATUS_PORT_UNREACHABLE",message:"No service is operating at the destination port of the transport on the remote system."},"0xC0000240":{code:"STATUS_REQUEST_ABORTED",message:"The request was aborted."},"0xC0000241":{code:"STATUS_CONNECTION_ABORTED",message:"The transport connection was aborted by the local system."},"0xC0000242":{code:"STATUS_BAD_COMPRESSION_BUFFER",message:"The specified buffer contains ill-formed data."},"0xC0000243":{code:"STATUS_USER_MAPPED_FILE",message:"The requested operation cannot be performed on a file with a user mapped section open."},"0xC0000244":{code:"STATUS_AUDIT_FAILED",message:"{Audit Failed} An attempt to generate a security audit failed."},"0xC0000245":{code:"STATUS_TIMER_RESOLUTION_NOT_SET",message:"The timer resolution was not previously set by the current process."},"0xC0000246":{code:"STATUS_CONNECTION_COUNT_LIMIT",message:"A connection to the server could not be made because the limit on the number of concurrent connections for this account has been reached."},"0xC0000247":{code:"STATUS_LOGIN_TIME_RESTRICTION",message:"Attempting to log on during an unauthorized time of day for this account."},"0xC0000248":{code:"STATUS_LOGIN_WKSTA_RESTRICTION",message:"The account is not authorized to log on from this station."},"0xC0000249":{code:"STATUS_IMAGE_MP_UP_MISMATCH",message:"{UP/MP Image Mismatch} The image %hs has been modified for use on a uniprocessor system, but you are running it on a multiprocessor machine. Reinstall the image file."},"0xC0000250":{code:"STATUS_INSUFFICIENT_LOGON_INFO",message:"There is insufficient account information to log you on."},"0xC0000251":{code:"STATUS_BAD_DLL_ENTRYPOINT",message:"{Invalid DLL Entrypoint} The dynamic link library %hs is not written correctly. The stack pointer has been left in an inconsistent state. The entry point should be declared as WINAPI or STDCALL. Select YES to fail the DLL load. Select NO to continue execution. Selecting NO may cause the application to operate incorrectly."},"0xC0000252":{code:"STATUS_BAD_SERVICE_ENTRYPOINT",message:"{Invalid Service Callback Entrypoint} The %hs service is not written correctly. The stack pointer has been left in an inconsistent state. The callback entry point should be declared as WINAPI or STDCALL. Selecting OK will cause the service to continue operation. However, the service process may operate incorrectly."},"0xC0000253":{code:"STATUS_LPC_REPLY_LOST",message:"The server received the messages but did not send a reply."},"0xC0000254":{code:"STATUS_IP_ADDRESS_CONFLICT1",message:"There is an IP address conflict with another system on the network."},"0xC0000255":{code:"STATUS_IP_ADDRESS_CONFLICT2",message:"There is an IP address conflict with another system on the network."},"0xC0000256":{code:"STATUS_REGISTRY_QUOTA_LIMIT",message:"{Low On Registry Space} The system has reached the maximum size that is allowed for the system part of the registry. Additional storage requests will be ignored."},"0xC0000257":{code:"STATUS_PATH_NOT_COVERED",message:"The contacted server does not support the indicated part of the DFS namespace."},"0xC0000258":{code:"STATUS_NO_CALLBACK_ACTIVE",message:"A callback return system service cannot be executed when no callback is active."},"0xC0000259":{code:"STATUS_LICENSE_QUOTA_EXCEEDED",message:"The service being accessed is licensed for a particular number of connections. No more connections can be made to the service at this time because the service has already accepted the maximum number of connections."},"0xC000025A":{code:"STATUS_PWD_TOO_SHORT",message:"The password provided is too short to meet the policy of your user account. Choose a longer password."},"0xC000025B":{code:"STATUS_PWD_TOO_RECENT",message:"The policy of your user account does not allow you to change passwords too frequently. This is done to prevent users from changing back to a familiar, but potentially discovered, password. If you feel your password has been compromised, contact your administrator immediately to have a new one assigned."},"0xC000025C":{code:"STATUS_PWD_HISTORY_CONFLICT",message:"You have attempted to change your password to one that you have used in the past. The policy of your user account does not allow this. Select a password that you have not previously used."},"0xC000025E":{code:"STATUS_PLUGPLAY_NO_DEVICE",message:"You have attempted to load a legacy device driver while its device instance had been disabled."},"0xC000025F":{code:"STATUS_UNSUPPORTED_COMPRESSION",message:"The specified compression format is unsupported."},"0xC0000260":{code:"STATUS_INVALID_HW_PROFILE",message:"The specified hardware profile configuration is invalid."},"0xC0000261":{code:"STATUS_INVALID_PLUGPLAY_DEVICE_PATH",message:"The specified Plug and Play registry device path is invalid."},"0xC0000262":{code:"STATUS_DRIVER_ORDINAL_NOT_FOUND",message:"{Driver Entry Point Not Found} The %hs device driver could not locate the ordinal %ld in driver %hs."},"0xC0000263":{code:"STATUS_DRIVER_ENTRYPOINT_NOT_FOUND",message:"{Driver Entry Point Not Found} The %hs device driver could not locate the entry point %hs in driver %hs."},"0xC0000264":{code:"STATUS_RESOURCE_NOT_OWNED",message:"{Application Error} The application attempted to release a resource it did not own. Click OK to terminate the application."},"0xC0000265":{code:"STATUS_TOO_MANY_LINKS",message:"An attempt was made to create more links on a file than the file system supports."},"0xC0000266":{code:"STATUS_QUOTA_LIST_INCONSISTENT",message:"The specified quota list is internally inconsistent with its descriptor."},"0xC0000267":{code:"STATUS_FILE_IS_OFFLINE",message:"The specified file has been relocated to offline storage."},"0xC0000268":{code:"STATUS_EVALUATION_EXPIRATION",message:"{Windows Evaluation Notification} The evaluation period for this installation of Windows has expired. This system will shutdown in 1 hour. To restore access to this installation of Windows, upgrade this installation by using a licensed distribution of this product."},"0xC0000269":{code:"STATUS_ILLEGAL_DLL_RELOCATION",message:"{Illegal System DLL Relocation} The system DLL %hs was relocated in memory. The application will not run properly. The relocation occurred because the DLL %hs occupied an address range that is reserved for Windows system DLLs. The vendor supplying the DLL should be contacted for a new DLL."},"0xC000026A":{code:"STATUS_LICENSE_VIOLATION",message:"{License Violation} The system has detected tampering with your registered product type. This is a violation of your software license. Tampering with the product type is not permitted."},"0xC000026B":{code:"STATUS_DLL_INIT_FAILED_LOGOFF",message:"{DLL Initialization Failed} The application failed to initialize because the window station is shutting down."},"0xC000026C":{code:"STATUS_DRIVER_UNABLE_TO_LOAD",message:"{Unable to Load Device Driver} %hs device driver could not be loaded. Error Status was 0x%x."},"0xC000026D":{code:"STATUS_DFS_UNAVAILABLE",message:"DFS is unavailable on the contacted server."},"0xC000026E":{code:"STATUS_VOLUME_DISMOUNTED",message:"An operation was attempted to a volume after it was dismounted."},"0xC000026F":{code:"STATUS_WX86_INTERNAL_ERROR",message:"An internal error occurred in the Win32 x86 emulation subsystem."},"0xC0000270":{code:"STATUS_WX86_FLOAT_STACK_CHECK",message:"Win32 x86 emulation subsystem floating-point stack check."},"0xC0000271":{code:"STATUS_VALIDATE_CONTINUE",message:"The validation process needs to continue on to the next step."},"0xC0000272":{code:"STATUS_NO_MATCH",message:"There was no match for the specified key in the index."},"0xC0000273":{code:"STATUS_NO_MORE_MATCHES",message:"There are no more matches for the current index enumeration."},"0xC0000275":{code:"STATUS_NOT_A_REPARSE_POINT",message:"The NTFS file or directory is not a reparse point."},"0xC0000276":{code:"STATUS_IO_REPARSE_TAG_INVALID",message:"The Windows I/O reparse tag passed for the NTFS reparse point is invalid."},"0xC0000277":{code:"STATUS_IO_REPARSE_TAG_MISMATCH",message:"The Windows I/O reparse tag does not match the one that is in the NTFS reparse point."},"0xC0000278":{code:"STATUS_IO_REPARSE_DATA_INVALID",message:"The user data passed for the NTFS reparse point is invalid."},"0xC0000279":{code:"STATUS_IO_REPARSE_TAG_NOT_HANDLED",message:"The layered file system driver for this I/O tag did not handle it when needed."},"0xC0000280":{code:"STATUS_REPARSE_POINT_NOT_RESOLVED",message:"The NTFS symbolic link could not be resolved even though the initial file name is valid."},"0xC0000281":{code:"STATUS_DIRECTORY_IS_A_REPARSE_POINT",message:"The NTFS directory is a reparse point."},"0xC0000282":{code:"STATUS_RANGE_LIST_CONFLICT",message:"The range could not be added to the range list because of a conflict."},"0xC0000283":{code:"STATUS_SOURCE_ELEMENT_EMPTY",message:"The specified medium changer source element contains no media."},"0xC0000284":{code:"STATUS_DESTINATION_ELEMENT_FULL",message:"The specified medium changer destination element already contains media."},"0xC0000285":{code:"STATUS_ILLEGAL_ELEMENT_ADDRESS",message:"The specified medium changer element does not exist."},"0xC0000286":{code:"STATUS_MAGAZINE_NOT_PRESENT",message:"The specified element is contained in a magazine that is no longer present."},"0xC0000287":{code:"STATUS_REINITIALIZATION_NEEDED",message:"The device requires re-initialization due to hardware errors."},"0xC000028A":{code:"STATUS_ENCRYPTION_FAILED",message:"The file encryption attempt failed."},"0xC000028B":{code:"STATUS_DECRYPTION_FAILED",message:"The file decryption attempt failed."},"0xC000028C":{code:"STATUS_RANGE_NOT_FOUND",message:"The specified range could not be found in the range list."},"0xC000028D":{code:"STATUS_NO_RECOVERY_POLICY",message:"There is no encryption recovery policy configured for this system."},"0xC000028E":{code:"STATUS_NO_EFS",message:"The required encryption driver is not loaded for this system."},"0xC000028F":{code:"STATUS_WRONG_EFS",message:"The file was encrypted with a different encryption driver than is currently loaded."},"0xC0000290":{code:"STATUS_NO_USER_KEYS",message:"There are no EFS keys defined for the user."},"0xC0000291":{code:"STATUS_FILE_NOT_ENCRYPTED",message:"The specified file is not encrypted."},"0xC0000292":{code:"STATUS_NOT_EXPORT_FORMAT",message:"The specified file is not in the defined EFS export format."},"0xC0000293":{code:"STATUS_FILE_ENCRYPTED",message:"The specified file is encrypted and the user does not have the ability to decrypt it."},"0xC0000295":{code:"STATUS_WMI_GUID_NOT_FOUND",message:"The GUID passed was not recognized as valid by a WMI data provider."},"0xC0000296":{code:"STATUS_WMI_INSTANCE_NOT_FOUND",message:"The instance name passed was not recognized as valid by a WMI data provider."},"0xC0000297":{code:"STATUS_WMI_ITEMID_NOT_FOUND",message:"The data item ID passed was not recognized as valid by a WMI data provider."},"0xC0000298":{code:"STATUS_WMI_TRY_AGAIN",message:"The WMI request could not be completed and should be retried."},"0xC0000299":{code:"STATUS_SHARED_POLICY",message:"The policy object is shared and can only be modified at the root."},"0xC000029A":{code:"STATUS_POLICY_OBJECT_NOT_FOUND",message:"The policy object does not exist when it should."},"0xC000029B":{code:"STATUS_POLICY_ONLY_IN_DS",message:"The requested policy information only lives in the Ds."},"0xC000029C":{code:"STATUS_VOLUME_NOT_UPGRADED",message:"The volume must be upgraded to enable this feature."},"0xC000029D":{code:"STATUS_REMOTE_STORAGE_NOT_ACTIVE",message:"The remote storage service is not operational at this time."},"0xC000029E":{code:"STATUS_REMOTE_STORAGE_MEDIA_ERROR",message:"The remote storage service encountered a media error."},"0xC000029F":{code:"STATUS_NO_TRACKING_SERVICE",message:"The tracking (workstation) service is not running."},"0xC00002A0":{code:"STATUS_SERVER_SID_MISMATCH",message:"The server process is running under a SID that is different from the SID that is required by client."},"0xC00002A1":{code:"STATUS_DS_NO_ATTRIBUTE_OR_VALUE",message:"The specified directory service attribute or value does not exist."},"0xC00002A2":{code:"STATUS_DS_INVALID_ATTRIBUTE_SYNTAX",message:"The attribute syntax specified to the directory service is invalid."},"0xC00002A3":{code:"STATUS_DS_ATTRIBUTE_TYPE_UNDEFINED",message:"The attribute type specified to the directory service is not defined."},"0xC00002A4":{code:"STATUS_DS_ATTRIBUTE_OR_VALUE_EXISTS",message:"The specified directory service attribute or value already exists."},"0xC00002A5":{code:"STATUS_DS_BUSY",message:"The directory service is busy."},"0xC00002A6":{code:"STATUS_DS_UNAVAILABLE",message:"The directory service is unavailable."},"0xC00002A7":{code:"STATUS_DS_NO_RIDS_ALLOCATED",message:"The directory service was unable to allocate a relative identifier."},"0xC00002A8":{code:"STATUS_DS_NO_MORE_RIDS",message:"The directory service has exhausted the pool of relative identifiers."},"0xC00002A9":{code:"STATUS_DS_INCORRECT_ROLE_OWNER",message:"The requested operation could not be performed because the directory service is not the master for that type of operation."},"0xC00002AA":{code:"STATUS_DS_RIDMGR_INIT_ERROR",message:"The directory service was unable to initialize the subsystem that allocates relative identifiers."},"0xC00002AB":{code:"STATUS_DS_OBJ_CLASS_VIOLATION",message:"The requested operation did not satisfy one or more constraints that are associated with the class of the object."},"0xC00002AC":{code:"STATUS_DS_CANT_ON_NON_LEAF",message:"The directory service can perform the requested operation only on a leaf object."},"0xC00002AD":{code:"STATUS_DS_CANT_ON_RDN",message:"The directory service cannot perform the requested operation on the Relatively Defined Name (RDN) attribute of an object."},"0xC00002AE":{code:"STATUS_DS_CANT_MOD_OBJ_CLASS",message:"The directory service detected an attempt to modify the object class of an object."},"0xC00002AF":{code:"STATUS_DS_CROSS_DOM_MOVE_FAILED",message:"An error occurred while performing a cross domain move operation."},"0xC00002B0":{code:"STATUS_DS_GC_NOT_AVAILABLE",message:"Unable to contact the global catalog server."},"0xC00002B1":{code:"STATUS_DIRECTORY_SERVICE_REQUIRED",message:"The requested operation requires a directory service, and none was available."},"0xC00002B2":{code:"STATUS_REPARSE_ATTRIBUTE_CONFLICT",message:"The reparse attribute cannot be set because it is incompatible with an existing attribute."},"0xC00002B3":{code:"STATUS_CANT_ENABLE_DENY_ONLY",message:'A group marked "use for deny only" cannot be enabled.'},"0xC00002B4":{code:"STATUS_FLOAT_MULTIPLE_FAULTS",message:"{EXCEPTION} Multiple floating-point faults."},"0xC00002B5":{code:"STATUS_FLOAT_MULTIPLE_TRAPS",message:"{EXCEPTION} Multiple floating-point traps."},"0xC00002B6":{code:"STATUS_DEVICE_REMOVED",message:"The device has been removed."},"0xC00002B7":{code:"STATUS_JOURNAL_DELETE_IN_PROGRESS",message:"The volume change journal is being deleted."},"0xC00002B8":{code:"STATUS_JOURNAL_NOT_ACTIVE",message:"The volume change journal is not active."},"0xC00002B9":{code:"STATUS_NOINTERFACE",message:"The requested interface is not supported."},"0xC00002C1":{code:"STATUS_DS_ADMIN_LIMIT_EXCEEDED",message:"A directory service resource limit has been exceeded."},"0xC00002C2":{code:"STATUS_DRIVER_FAILED_SLEEP",message:"{System Standby Failed} The driver %hs does not support standby mode. Updating this driver may allow the system to go to standby mode."},"0xC00002C3":{code:"STATUS_MUTUAL_AUTHENTICATION_FAILED",message:"Mutual Authentication failed. The server password is out of date at the domain controller."},"0xC00002C4":{code:"STATUS_CORRUPT_SYSTEM_FILE",message:"The system file %1 has become corrupt and has been replaced."},"0xC00002C5":{code:"STATUS_DATATYPE_MISALIGNMENT_ERROR",message:"{EXCEPTION} Alignment Error A data type misalignment error was detected in a load or store instruction."},"0xC00002C6":{code:"STATUS_WMI_READ_ONLY",message:"The WMI data item or data block is read-only."},"0xC00002C7":{code:"STATUS_WMI_SET_FAILURE",message:"The WMI data item or data block could not be changed."},"0xC00002C8":{code:"STATUS_COMMITMENT_MINIMUM",message:"{Virtual Memory Minimum Too Low} Your system is low on virtual memory. Windows is increasing the size of your virtual memory paging file. During this process, memory requests for some applications may be denied. For more information, see Help."},"0xC00002C9":{code:"STATUS_REG_NAT_CONSUMPTION",message:"{EXCEPTION} Register NaT consumption faults. A NaT value is consumed on a non-speculative instruction."},"0xC00002CA":{code:"STATUS_TRANSPORT_FULL",message:"The transport element of the medium changer contains media, which is causing the operation to fail."},"0xC00002CB":{code:"STATUS_DS_SAM_INIT_FAILURE",message:"Security Accounts Manager initialization failed because of the following error: %hs Error Status: 0x%x. Click OK to shut down this system and restart in Directory Services Restore Mode. Check the event log for more detailed information."},"0xC00002CC":{code:"STATUS_ONLY_IF_CONNECTED",message:"This operation is supported only when you are connected to the server."},"0xC00002CD":{code:"STATUS_DS_SENSITIVE_GROUP_VIOLATION",message:"Only an administrator can modify the membership list of an administrative group."},"0xC00002CE":{code:"STATUS_PNP_RESTART_ENUMERATION",message:"A device was removed so enumeration must be restarted."},"0xC00002CF":{code:"STATUS_JOURNAL_ENTRY_DELETED",message:"The journal entry has been deleted from the journal."},"0xC00002D0":{code:"STATUS_DS_CANT_MOD_PRIMARYGROUPID",message:"Cannot change the primary group ID of a domain controller account."},"0xC00002D1":{code:"STATUS_SYSTEM_IMAGE_BAD_SIGNATURE",message:"{Fatal System Error} The system image %s is not properly signed. The file has been replaced with the signed file. The system has been shut down."},"0xC00002D2":{code:"STATUS_PNP_REBOOT_REQUIRED",message:"The device will not start without a reboot."},"0xC00002D3":{code:"STATUS_POWER_STATE_INVALID",message:"The power state of the current device cannot support this request."},"0xC00002D4":{code:"STATUS_DS_INVALID_GROUP_TYPE",message:"The specified group type is invalid."},"0xC00002D5":{code:"STATUS_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN",message:"In a mixed domain, no nesting of a global group if the group is security enabled."},"0xC00002D6":{code:"STATUS_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN",message:"In a mixed domain, cannot nest local groups with other local groups, if the group is security enabled."},"0xC00002D7":{code:"STATUS_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER",message:"A global group cannot have a local group as a member."},"0xC00002D8":{code:"STATUS_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER",message:"A global group cannot have a universal group as a member."},"0xC00002D9":{code:"STATUS_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER",message:"A universal group cannot have a local group as a member."},"0xC00002DA":{code:"STATUS_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER",message:"A global group cannot have a cross-domain member."},"0xC00002DB":{code:"STATUS_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER",message:"A local group cannot have another cross-domain local group as a member."},"0xC00002DC":{code:"STATUS_DS_HAVE_PRIMARY_MEMBERS",message:"Cannot change to a security-disabled group because primary members are in this group."},"0xC00002DD":{code:"STATUS_WMI_NOT_SUPPORTED",message:"The WMI operation is not supported by the data block or method."},"0xC00002DE":{code:"STATUS_INSUFFICIENT_POWER",message:"There is not enough power to complete the requested operation."},"0xC00002DF":{code:"STATUS_SAM_NEED_BOOTKEY_PASSWORD",message:"The Security Accounts Manager needs to get the boot password."},"0xC00002E0":{code:"STATUS_SAM_NEED_BOOTKEY_FLOPPY",message:"The Security Accounts Manager needs to get the boot key from the floppy disk."},"0xC00002E1":{code:"STATUS_DS_CANT_START",message:"The directory service cannot start."},"0xC00002E2":{code:"STATUS_DS_INIT_FAILURE",message:"The directory service could not start because of the following error: %hs Error Status: 0x%x. Click OK to shut down this system and restart in Directory Services Restore Mode. Check the event log for more detailed information."},"0xC00002E3":{code:"STATUS_SAM_INIT_FAILURE",message:"The Security Accounts Manager initialization failed because of the following error: %hs Error Status: 0x%x. Click OK to shut down this system and restart in Safe Mode. Check the event log for more detailed information."},"0xC00002E4":{code:"STATUS_DS_GC_REQUIRED",message:"The requested operation can be performed only on a global catalog server."},"0xC00002E5":{code:"STATUS_DS_LOCAL_MEMBER_OF_LOCAL_ONLY",message:"A local group can only be a member of other local groups in the same domain."},"0xC00002E6":{code:"STATUS_DS_NO_FPO_IN_UNIVERSAL_GROUPS",message:"Foreign security principals cannot be members of universal groups."},"0xC00002E7":{code:"STATUS_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED",message:"Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."},"0xC00002E9":{code:"STATUS_CURRENT_DOMAIN_NOT_ALLOWED",message:"This operation cannot be performed on the current domain."},"0xC00002EA":{code:"STATUS_CANNOT_MAKE",message:"The directory or file cannot be created."},"0xC00002EB":{code:"STATUS_SYSTEM_SHUTDOWN",message:"The system is in the process of shutting down."},"0xC00002EC":{code:"STATUS_DS_INIT_FAILURE_CONSOLE",message:"Directory Services could not start because of the following error: %hs Error Status: 0x%x. Click OK to shut down the system. You can use the recovery console to diagnose the system further."},"0xC00002ED":{code:"STATUS_DS_SAM_INIT_FAILURE_CONSOLE",message:"Security Accounts Manager initialization failed because of the following error: %hs Error Status: 0x%x. Click OK to shut down the system. You can use the recovery console to diagnose the system further."},"0xC00002EE":{code:"STATUS_UNFINISHED_CONTEXT_DELETED",message:"A security context was deleted before the context was completed. This is considered a logon failure."},"0xC00002EF":{code:"STATUS_NO_TGT_REPLY",message:"The client is trying to negotiate a context and the server requires user-to-user but did not send a TGT reply."},"0xC00002F0":{code:"STATUS_OBJECTID_NOT_FOUND",message:"An object ID was not found in the file."},"0xC00002F1":{code:"STATUS_NO_IP_ADDRESSES",message:"Unable to accomplish the requested task because the local machine does not have any IP addresses."},"0xC00002F2":{code:"STATUS_WRONG_CREDENTIAL_HANDLE",message:"The supplied credential handle does not match the credential that is associated with the security context."},"0xC00002F3":{code:"STATUS_CRYPTO_SYSTEM_INVALID",message:"The crypto system or checksum function is invalid because a required function is unavailable."},"0xC00002F4":{code:"STATUS_MAX_REFERRALS_EXCEEDED",message:"The number of maximum ticket referrals has been exceeded."},"0xC00002F5":{code:"STATUS_MUST_BE_KDC",message:"The local machine must be a Kerberos KDC (domain controller) and it is not."},"0xC00002F6":{code:"STATUS_STRONG_CRYPTO_NOT_SUPPORTED",message:"The other end of the security negotiation requires strong crypto but it is not supported on the local machine."},"0xC00002F7":{code:"STATUS_TOO_MANY_PRINCIPALS",message:"The KDC reply contained more than one principal name."},"0xC00002F8":{code:"STATUS_NO_PA_DATA",message:"Expected to find PA data for a hint of what etype to use, but it was not found."},"0xC00002F9":{code:"STATUS_PKINIT_NAME_MISMATCH",message:"The client certificate does not contain a valid UPN, or does not match the client name in the logon request. Contact your administrator."},"0xC00002FA":{code:"STATUS_SMARTCARD_LOGON_REQUIRED",message:"Smart card logon is required and was not used."},"0xC00002FB":{code:"STATUS_KDC_INVALID_REQUEST",message:"An invalid request was sent to the KDC."},"0xC00002FC":{code:"STATUS_KDC_UNABLE_TO_REFER",message:"The KDC was unable to generate a referral for the service requested."},"0xC00002FD":{code:"STATUS_KDC_UNKNOWN_ETYPE",message:"The encryption type requested is not supported by the KDC."},"0xC00002FE":{code:"STATUS_SHUTDOWN_IN_PROGRESS",message:"A system shutdown is in progress."},"0xC00002FF":{code:"STATUS_SERVER_SHUTDOWN_IN_PROGRESS",message:"The server machine is shutting down."},"0xC0000300":{code:"STATUS_NOT_SUPPORTED_ON_SBS",message:"This operation is not supported on a computer running Windows Server 2003 for Small Business Server."},"0xC0000301":{code:"STATUS_WMI_GUID_DISCONNECTED",message:"The WMI GUID is no longer available."},"0xC0000302":{code:"STATUS_WMI_ALREADY_DISABLED",message:"Collection or events for the WMI GUID is already disabled."},"0xC0000303":{code:"STATUS_WMI_ALREADY_ENABLED",message:"Collection or events for the WMI GUID is already enabled."},"0xC0000304":{code:"STATUS_MFT_TOO_FRAGMENTED",message:"The master file table on the volume is too fragmented to complete this operation."},"0xC0000305":{code:"STATUS_COPY_PROTECTION_FAILURE",message:"Copy protection failure."},"0xC0000306":{code:"STATUS_CSS_AUTHENTICATION_FAILURE",message:"Copy protection error\u2014DVD CSS Authentication failed."},"0xC0000307":{code:"STATUS_CSS_KEY_NOT_PRESENT",message:"Copy protection error\u2014The specified sector does not contain a valid key."},"0xC0000308":{code:"STATUS_CSS_KEY_NOT_ESTABLISHED",message:"Copy protection error\u2014DVD session key not established."},"0xC0000309":{code:"STATUS_CSS_SCRAMBLED_SECTOR",message:"Copy protection error\u2014The read failed because the sector is encrypted."},"0xC000030A":{code:"STATUS_CSS_REGION_MISMATCH",message:"Copy protection error\u2014The region of the specified DVD does not correspond to the region setting of the drive."},"0xC000030B":{code:"STATUS_CSS_RESETS_EXHAUSTED",message:"Copy protection error\u2014The region setting of the drive may be permanent."},"0xC0000320":{code:"STATUS_PKINIT_FAILURE",message:"The Kerberos protocol encountered an error while validating the KDC certificate during smart card logon. There is more information in the system event log."},"0xC0000321":{code:"STATUS_SMARTCARD_SUBSYSTEM_FAILURE",message:"The Kerberos protocol encountered an error while attempting to use the smart card subsystem."},"0xC0000322":{code:"STATUS_NO_KERB_KEY",message:"The target server does not have acceptable Kerberos credentials."},"0xC0000350":{code:"STATUS_HOST_DOWN",message:"The transport determined that the remote system is down."},"0xC0000351":{code:"STATUS_UNSUPPORTED_PREAUTH",message:"An unsupported pre-authentication mechanism was presented to the Kerberos package."},"0xC0000352":{code:"STATUS_EFS_ALG_BLOB_TOO_BIG",message:"The encryption algorithm that is used on the source file needs a bigger key buffer than the one that is used on the destination file."},"0xC0000353":{code:"STATUS_PORT_NOT_SET",message:"An attempt to remove a processes DebugPort was made, but a port was not already associated with the process."},"0xC0000354":{code:"STATUS_DEBUGGER_INACTIVE",message:"An attempt to do an operation on a debug port failed because the port is in the process of being deleted."},"0xC0000355":{code:"STATUS_DS_VERSION_CHECK_FAILURE",message:"This version of Windows is not compatible with the behavior version of the directory forest, domain, or domain controller."},"0xC0000356":{code:"STATUS_AUDITING_DISABLED",message:"The specified event is currently not being audited."},"0xC0000357":{code:"STATUS_PRENT4_MACHINE_ACCOUNT",message:"The machine account was created prior to Windows NT 4.0. The account needs to be recreated."},"0xC0000358":{code:"STATUS_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER",message:"An account group cannot have a universal group as a member."},"0xC0000359":{code:"STATUS_INVALID_IMAGE_WIN_32",message:"The specified image file did not have the correct format; it appears to be a 32-bit Windows image."},"0xC000035A":{code:"STATUS_INVALID_IMAGE_WIN_64",message:"The specified image file did not have the correct format; it appears to be a 64-bit Windows image."},"0xC000035B":{code:"STATUS_BAD_BINDINGS",message:"The client's supplied SSPI channel bindings were incorrect."},"0xC000035C":{code:"STATUS_NETWORK_SESSION_EXPIRED",message:"The client session has expired; so the client must re-authenticate to continue accessing the remote resources."},"0xC000035D":{code:"STATUS_APPHELP_BLOCK",message:"The AppHelp dialog box canceled; thus preventing the application from starting."},"0xC000035E":{code:"STATUS_ALL_SIDS_FILTERED",message:"The SID filtering operation removed all SIDs."},"0xC000035F":{code:"STATUS_NOT_SAFE_MODE_DRIVER",message:"The driver was not loaded because the system is starting in safe mode."},"0xC0000361":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_DEFAULT",message:"Access to %1 has been restricted by your Administrator by the default software restriction policy level."},"0xC0000362":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_PATH",message:"Access to %1 has been restricted by your Administrator by location with policy rule %2 placed on path %3."},"0xC0000363":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_PUBLISHER",message:"Access to %1 has been restricted by your Administrator by software publisher policy."},"0xC0000364":{code:"STATUS_ACCESS_DISABLED_BY_POLICY_OTHER",message:"Access to %1 has been restricted by your Administrator by policy rule %2."},"0xC0000365":{code:"STATUS_FAILED_DRIVER_ENTRY",message:"The driver was not loaded because it failed its initialization call."},"0xC0000366":{code:"STATUS_DEVICE_ENUMERATION_ERROR",message:"The device encountered an error while applying power or reading the device configuration. This may be caused by a failure of your hardware or by a poor connection."},"0xC0000368":{code:"STATUS_MOUNT_POINT_NOT_RESOLVED",message:"The create operation failed because the name contained at least one mount point that resolves to a volume to which the specified device object is not attached."},"0xC0000369":{code:"STATUS_INVALID_DEVICE_OBJECT_PARAMETER",message:"The device object parameter is either not a valid device object or is not attached to the volume that is specified by the file name."},"0xC000036A":{code:"STATUS_MCA_OCCURED",message:"A machine check error has occurred. Check the system event log for additional information."},"0xC000036B":{code:"STATUS_DRIVER_BLOCKED_CRITICAL",message:"Driver %2 has been blocked from loading."},"0xC000036C":{code:"STATUS_DRIVER_BLOCKED",message:"Driver %2 has been blocked from loading."},"0xC000036D":{code:"STATUS_DRIVER_DATABASE_ERROR",message:"There was error [%2] processing the driver database."},"0xC000036E":{code:"STATUS_SYSTEM_HIVE_TOO_LARGE",message:"System hive size has exceeded its limit."},"0xC000036F":{code:"STATUS_INVALID_IMPORT_OF_NON_DLL",message:"A dynamic link library (DLL) referenced a module that was neither a DLL nor the process's executable image."},"0xC0000371":{code:"STATUS_NO_SECRETS",message:"The local account store does not contain secret material for the specified account."},"0xC0000372":{code:"STATUS_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY",message:"Access to %1 has been restricted by your Administrator by policy rule %2."},"0xC0000373":{code:"STATUS_FAILED_STACK_SWITCH",message:"The system was not able to allocate enough memory to perform a stack switch."},"0xC0000374":{code:"STATUS_HEAP_CORRUPTION",message:"A heap has been corrupted."},"0xC0000380":{code:"STATUS_SMARTCARD_WRONG_PIN",message:"An incorrect PIN was presented to the smart card."},"0xC0000381":{code:"STATUS_SMARTCARD_CARD_BLOCKED",message:"The smart card is blocked."},"0xC0000382":{code:"STATUS_SMARTCARD_CARD_NOT_AUTHENTICATED",message:"No PIN was presented to the smart card."},"0xC0000383":{code:"STATUS_SMARTCARD_NO_CARD",message:"No smart card is available."},"0xC0000384":{code:"STATUS_SMARTCARD_NO_KEY_CONTAINER",message:"The requested key container does not exist on the smart card."},"0xC0000385":{code:"STATUS_SMARTCARD_NO_CERTIFICATE",message:"The requested certificate does not exist on the smart card."},"0xC0000386":{code:"STATUS_SMARTCARD_NO_KEYSET",message:"The requested keyset does not exist."},"0xC0000387":{code:"STATUS_SMARTCARD_IO_ERROR",message:"A communication error with the smart card has been detected."},"0xC0000388":{code:"STATUS_DOWNGRADE_DETECTED",message:"The system detected a possible attempt to compromise security. Ensure that you can contact the server that authenticated you."},"0xC0000389":{code:"STATUS_SMARTCARD_CERT_REVOKED",message:"The smart card certificate used for authentication has been revoked. Contact your system administrator. There may be additional information in the event log."},"0xC000038A":{code:"STATUS_ISSUING_CA_UNTRUSTED",message:"An untrusted certificate authority was detected while processing the smart card certificate that is used for authentication. Contact your system administrator."},"0xC000038B":{code:"STATUS_REVOCATION_OFFLINE_C",message:"The revocation status of the smart card certificate that is used for authentication could not be determined. Contact your system administrator."},"0xC000038C":{code:"STATUS_PKINIT_CLIENT_FAILURE",message:"The smart card certificate used for authentication was not trusted. Contact your system administrator."},"0xC000038D":{code:"STATUS_SMARTCARD_CERT_EXPIRED",message:"The smart card certificate used for authentication has expired. Contact your system administrator."},"0xC000038E":{code:"STATUS_DRIVER_FAILED_PRIOR_UNLOAD",message:"The driver could not be loaded because a previous version of the driver is still in memory."},"0xC000038F":{code:"STATUS_SMARTCARD_SILENT_CONTEXT",message:"The smart card provider could not perform the action because the context was acquired as silent."},"0xC0000401":{code:"STATUS_PER_USER_TRUST_QUOTA_EXCEEDED",message:"The delegated trust creation quota of the current user has been exceeded."},"0xC0000402":{code:"STATUS_ALL_USER_TRUST_QUOTA_EXCEEDED",message:"The total delegated trust creation quota has been exceeded."},"0xC0000403":{code:"STATUS_USER_DELETE_TRUST_QUOTA_EXCEEDED",message:"The delegated trust deletion quota of the current user has been exceeded."},"0xC0000404":{code:"STATUS_DS_NAME_NOT_UNIQUE",message:"The requested name already exists as a unique identifier."},"0xC0000405":{code:"STATUS_DS_DUPLICATE_ID_FOUND",message:"The requested object has a non-unique identifier and cannot be retrieved."},"0xC0000406":{code:"STATUS_DS_GROUP_CONVERSION_ERROR",message:"The group cannot be converted due to attribute restrictions on the requested group type."},"0xC0000407":{code:"STATUS_VOLSNAP_PREPARE_HIBERNATE",message:"{Volume Shadow Copy Service} Wait while the Volume Shadow Copy Service prepares volume %hs for hibernation."},"0xC0000408":{code:"STATUS_USER2USER_REQUIRED",message:"Kerberos sub-protocol User2User is required."},"0xC0000409":{code:"STATUS_STACK_BUFFER_OVERRUN",message:"The system detected an overrun of a stack-based buffer in this application. This overrun could potentially allow a malicious user to gain control of this application."},"0xC000040A":{code:"STATUS_NO_S4U_PROT_SUPPORT",message:"The Kerberos subsystem encountered an error. A service for user protocol request was made against a domain controller which does not support service for user."},"0xC000040B":{code:"STATUS_CROSSREALM_DELEGATION_FAILURE",message:"An attempt was made by this server to make a Kerberos constrained delegation request for a target that is outside the server realm. This action is not supported and the resulting error indicates a misconfiguration on the allowed-to-delegate-to list for this server. Contact your administrator."},"0xC000040C":{code:"STATUS_REVOCATION_OFFLINE_KDC",message:"The revocation status of the domain controller certificate used for smart card authentication could not be determined. There is additional information in the system event log. Contact your system administrator."},"0xC000040D":{code:"STATUS_ISSUING_CA_UNTRUSTED_KDC",message:"An untrusted certificate authority was detected while processing the domain controller certificate used for authentication. There is additional information in the system event log. Contact your system administrator."},"0xC000040E":{code:"STATUS_KDC_CERT_EXPIRED",message:"The domain controller certificate used for smart card logon has expired. Contact your system administrator with the contents of your system event log."},"0xC000040F":{code:"STATUS_KDC_CERT_REVOKED",message:"The domain controller certificate used for smart card logon has been revoked. Contact your system administrator with the contents of your system event log."},"0xC0000410":{code:"STATUS_PARAMETER_QUOTA_EXCEEDED",message:"Data present in one of the parameters is more than the function can operate on."},"0xC0000411":{code:"STATUS_HIBERNATION_FAILURE",message:"The system has failed to hibernate (The error code is %hs). Hibernation will be disabled until the system is restarted."},"0xC0000412":{code:"STATUS_DELAY_LOAD_FAILED",message:"An attempt to delay-load a .dll or get a function address in a delay-loaded .dll failed."},"0xC0000413":{code:"STATUS_AUTHENTICATION_FIREWALL_FAILED",message:"Logon Failure: The machine you are logging onto is protected by an authentication firewall. The specified account is not allowed to authenticate to the machine."},"0xC0000414":{code:"STATUS_VDM_DISALLOWED",message:"%hs is a 16-bit application. You do not have permissions to execute 16-bit applications. Check your permissions with your system administrator."},"0xC0000415":{code:"STATUS_HUNG_DISPLAY_DRIVER_THREAD",message:"{Display Driver Stopped Responding} The %hs display driver has stopped working normally. Save your work and reboot the system to restore full display functionality. The next time you reboot the machine a dialog will be displayed giving you a chance to report this failure to Microsoft."},"0xC0000416":{code:"STATUS_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE",message:"The Desktop heap encountered an error while allocating session memory. There is more information in the system event log."},"0xC0000417":{code:"STATUS_INVALID_CRUNTIME_PARAMETER",message:"An invalid parameter was passed to a C runtime function."},"0xC0000418":{code:"STATUS_NTLM_BLOCKED",message:"The authentication failed because NTLM was blocked."},"0xC0000419":{code:"STATUS_DS_SRC_SID_EXISTS_IN_FOREST",message:"The source object's SID already exists in destination forest."},"0xC000041A":{code:"STATUS_DS_DOMAIN_NAME_EXISTS_IN_FOREST",message:"The domain name of the trusted domain already exists in the forest."},"0xC000041B":{code:"STATUS_DS_FLAT_NAME_EXISTS_IN_FOREST",message:"The flat name of the trusted domain already exists in the forest."},"0xC000041C":{code:"STATUS_INVALID_USER_PRINCIPAL_NAME",message:"The User Principal Name (UPN) is invalid."},"0xC0000420":{code:"STATUS_ASSERTION_FAILURE",message:"There has been an assertion failure."},"0xC0000421":{code:"STATUS_VERIFIER_STOP",message:"Application verifier has found an error in the current process."},"0xC0000423":{code:"STATUS_CALLBACK_POP_STACK",message:"A user mode unwind is in progress."},"0xC0000424":{code:"STATUS_INCOMPATIBLE_DRIVER_BLOCKED",message:"%2 has been blocked from loading due to incompatibility with this system. Contact your software vendor for a compatible version of the driver."},"0xC0000425":{code:"STATUS_HIVE_UNLOADED",message:"Illegal operation attempted on a registry key which has already been unloaded."},"0xC0000426":{code:"STATUS_COMPRESSION_DISABLED",message:"Compression is disabled for this volume."},"0xC0000427":{code:"STATUS_FILE_SYSTEM_LIMITATION",message:"The requested operation could not be completed due to a file system limitation."},"0xC0000428":{code:"STATUS_INVALID_IMAGE_HASH",message:"The hash for image %hs cannot be found in the system catalogs. The image is likely corrupt or the victim of tampering."},"0xC0000429":{code:"STATUS_NOT_CAPABLE",message:"The implementation is not capable of performing the request."},"0xC000042A":{code:"STATUS_REQUEST_OUT_OF_SEQUENCE",message:"The requested operation is out of order with respect to other operations."},"0xC000042B":{code:"STATUS_IMPLEMENTATION_LIMIT",message:"An operation attempted to exceed an implementation-defined limit."},"0xC000042C":{code:"STATUS_ELEVATION_REQUIRED",message:"The requested operation requires elevation."},"0xC000042D":{code:"STATUS_NO_SECURITY_CONTEXT",message:"The required security context does not exist."},"0xC000042E":{code:"STATUS_PKU2U_CERT_FAILURE",message:"The PKU2U protocol encountered an error while attempting to utilize the associated certificates."},"0xC0000432":{code:"STATUS_BEYOND_VDL",message:"The operation was attempted beyond the valid data length of the file."},"0xC0000433":{code:"STATUS_ENCOUNTERED_WRITE_IN_PROGRESS",message:"The attempted write operation encountered a write already in progress for some portion of the range."},"0xC0000434":{code:"STATUS_PTE_CHANGED",message:"The page fault mappings changed in the middle of processing a fault so the operation must be retried."},"0xC0000435":{code:"STATUS_PURGE_FAILED",message:"The attempt to purge this file from memory failed to purge some or all the data from memory."},"0xC0000440":{code:"STATUS_CRED_REQUIRES_CONFIRMATION",message:"The requested credential requires confirmation."},"0xC0000441":{code:"STATUS_CS_ENCRYPTION_INVALID_SERVER_RESPONSE",message:"The remote server sent an invalid response for a file being opened with Client Side Encryption."},"0xC0000442":{code:"STATUS_CS_ENCRYPTION_UNSUPPORTED_SERVER",message:"Client Side Encryption is not supported by the remote server even though it claims to support it."},"0xC0000443":{code:"STATUS_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE",message:"File is encrypted and should be opened in Client Side Encryption mode."},"0xC0000444":{code:"STATUS_CS_ENCRYPTION_NEW_ENCRYPTED_FILE",message:"A new encrypted file is being created and a $EFS needs to be provided."},"0xC0000445":{code:"STATUS_CS_ENCRYPTION_FILE_NOT_CSE",message:"The SMB client requested a CSE FSCTL on a non-CSE file."},"0xC0000446":{code:"STATUS_INVALID_LABEL",message:"Indicates a particular Security ID may not be assigned as the label of an object."},"0xC0000450":{code:"STATUS_DRIVER_PROCESS_TERMINATED",message:"The process hosting the driver for this device has terminated."},"0xC0000451":{code:"STATUS_AMBIGUOUS_SYSTEM_DEVICE",message:"The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria."},"0xC0000452":{code:"STATUS_SYSTEM_DEVICE_NOT_FOUND",message:"The requested system device cannot be found."},"0xC0000453":{code:"STATUS_RESTART_BOOT_APPLICATION",message:"This boot application must be restarted."},"0xC0000454":{code:"STATUS_INSUFFICIENT_NVRAM_RESOURCES",message:"Insufficient NVRAM resources exist to complete the API. A reboot might be required."},"0xC0000460":{code:"STATUS_NO_RANGES_PROCESSED",message:"No ranges for the specified operation were able to be processed."},"0xC0000463":{code:"STATUS_DEVICE_FEATURE_NOT_SUPPORTED",message:"The storage device does not support Offload Write."},"0xC0000464":{code:"STATUS_DEVICE_UNREACHABLE",message:"Data cannot be moved because the source device cannot communicate with the destination device."},"0xC0000465":{code:"STATUS_INVALID_TOKEN",message:"The token representing the data is invalid or expired."},"0xC0000500":{code:"STATUS_INVALID_TASK_NAME",message:"The specified task name is invalid."},"0xC0000501":{code:"STATUS_INVALID_TASK_INDEX",message:"The specified task index is invalid."},"0xC0000502":{code:"STATUS_THREAD_ALREADY_IN_TASK",message:"The specified thread is already joining a task."},"0xC0000503":{code:"STATUS_CALLBACK_BYPASS",message:"A callback has requested to bypass native code."},"0xC0000602":{code:"STATUS_FAIL_FAST_EXCEPTION",message:"A fail fast exception occurred. Exception handlers will not be invoked and the process will be terminated immediately."},"0xC0000603":{code:"STATUS_IMAGE_CERT_REVOKED",message:"Windows cannot verify the digital signature for this file. The signing certificate for this file has been revoked."},"0xC0000700":{code:"STATUS_PORT_CLOSED",message:"The ALPC port is closed."},"0xC0000701":{code:"STATUS_MESSAGE_LOST",message:"The ALPC message requested is no longer available."},"0xC0000702":{code:"STATUS_INVALID_MESSAGE",message:"The ALPC message supplied is invalid."},"0xC0000703":{code:"STATUS_REQUEST_CANCELED",message:"The ALPC message has been canceled."},"0xC0000704":{code:"STATUS_RECURSIVE_DISPATCH",message:"Invalid recursive dispatch attempt."},"0xC0000705":{code:"STATUS_LPC_RECEIVE_BUFFER_EXPECTED",message:"No receive buffer has been supplied in a synchronous request."},"0xC0000706":{code:"STATUS_LPC_INVALID_CONNECTION_USAGE",message:"The connection port is used in an invalid context."},"0xC0000707":{code:"STATUS_LPC_REQUESTS_NOT_ALLOWED",message:"The ALPC port does not accept new request messages."},"0xC0000708":{code:"STATUS_RESOURCE_IN_USE",message:"The resource requested is already in use."},"0xC0000709":{code:"STATUS_HARDWARE_MEMORY_ERROR",message:"The hardware has reported an uncorrectable memory error."},"0xC000070A":{code:"STATUS_THREADPOOL_HANDLE_EXCEPTION",message:"Status 0x%08x was returned, waiting on handle 0x%x for wait 0x%p, in waiter 0x%p."},"0xC000070B":{code:"STATUS_THREADPOOL_SET_EVENT_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to Set event(0x%p) failed with status 0x%08x."},"0xC000070C":{code:"STATUS_THREADPOOL_RELEASE_SEMAPHORE_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to ReleaseSemaphore(0x%p, %d) failed with status 0x%08x."},"0xC000070D":{code:"STATUS_THREADPOOL_RELEASE_MUTEX_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to ReleaseMutex(%p) failed with status 0x%08x."},"0xC000070E":{code:"STATUS_THREADPOOL_FREE_LIBRARY_ON_COMPLETION_FAILED",message:"After a callback to 0x%p(0x%p), a completion call to FreeLibrary(%p) failed with status 0x%08x."},"0xC000070F":{code:"STATUS_THREADPOOL_RELEASED_DURING_OPERATION",message:"The thread pool 0x%p was released while a thread was posting a callback to 0x%p(0x%p) to it."},"0xC0000710":{code:"STATUS_CALLBACK_RETURNED_WHILE_IMPERSONATING",message:"A thread pool worker thread is impersonating a client, after a callback to 0x%p(0x%p). This is unexpected, indicating that the callback is missing a call to revert the impersonation."},"0xC0000711":{code:"STATUS_APC_RETURNED_WHILE_IMPERSONATING",message:"A thread pool worker thread is impersonating a client, after executing an APC. This is unexpected, indicating that the APC is missing a call to revert the impersonation."},"0xC0000712":{code:"STATUS_PROCESS_IS_PROTECTED",message:"Either the target process, or the target thread's containing process, is a protected process."},"0xC0000713":{code:"STATUS_MCA_EXCEPTION",message:"A thread is getting dispatched with MCA EXCEPTION because of MCA."},"0xC0000714":{code:"STATUS_CERTIFICATE_MAPPING_NOT_UNIQUE",message:"The client certificate account mapping is not unique."},"0xC0000715":{code:"STATUS_SYMLINK_CLASS_DISABLED",message:"The symbolic link cannot be followed because its type is disabled."},"0xC0000716":{code:"STATUS_INVALID_IDN_NORMALIZATION",message:"Indicates that the specified string is not valid for IDN normalization."},"0xC0000717":{code:"STATUS_NO_UNICODE_TRANSLATION",message:"No mapping for the Unicode character exists in the target multi-byte code page."},"0xC0000718":{code:"STATUS_ALREADY_REGISTERED",message:"The provided callback is already registered."},"0xC0000719":{code:"STATUS_CONTEXT_MISMATCH",message:"The provided context did not match the target."},"0xC000071A":{code:"STATUS_PORT_ALREADY_HAS_COMPLETION_LIST",message:"The specified port already has a completion list."},"0xC000071B":{code:"STATUS_CALLBACK_RETURNED_THREAD_PRIORITY",message:`A threadpool worker thread entered a callback at thread base priority 0x%x and exited at priority 0x%x. +This is unexpected, indicating that the callback missed restoring the priority.`},"0xC000071C":{code:"STATUS_INVALID_THREAD",message:"An invalid thread, handle %p, is specified for this operation. Possibly, a threadpool worker thread was specified."},"0xC000071D":{code:"STATUS_CALLBACK_RETURNED_TRANSACTION",message:`A threadpool worker thread entered a callback, which left transaction state. +This is unexpected, indicating that the callback missed clearing the transaction.`},"0xC000071E":{code:"STATUS_CALLBACK_RETURNED_LDR_LOCK",message:`A threadpool worker thread entered a callback, which left the loader lock held. +This is unexpected, indicating that the callback missed releasing the lock.`},"0xC000071F":{code:"STATUS_CALLBACK_RETURNED_LANG",message:`A threadpool worker thread entered a callback, which left with preferred languages set. +This is unexpected, indicating that the callback missed clearing them.`},"0xC0000720":{code:"STATUS_CALLBACK_RETURNED_PRI_BACK",message:`A threadpool worker thread entered a callback, which left with background priorities set. +This is unexpected, indicating that the callback missed restoring the original priorities.`},"0xC0000800":{code:"STATUS_DISK_REPAIR_DISABLED",message:"The attempted operation required self healing to be enabled."},"0xC0000801":{code:"STATUS_DS_DOMAIN_RENAME_IN_PROGRESS",message:"The directory service cannot perform the requested operation because a domain rename operation is in progress."},"0xC0000802":{code:"STATUS_DISK_QUOTA_EXCEEDED",message:"An operation failed because the storage quota was exceeded."},"0xC0000804":{code:"STATUS_CONTENT_BLOCKED",message:"An operation failed because the content was blocked."},"0xC0000805":{code:"STATUS_BAD_CLUSTERS",message:"The operation could not be completed due to bad clusters on disk."},"0xC0000806":{code:"STATUS_VOLUME_DIRTY",message:"The operation could not be completed because the volume is dirty. Please run the Chkdsk utility and try again."},"0xC0000901":{code:"STATUS_FILE_CHECKED_OUT",message:"This file is checked out or locked for editing by another user."},"0xC0000902":{code:"STATUS_CHECKOUT_REQUIRED",message:"The file must be checked out before saving changes."},"0xC0000903":{code:"STATUS_BAD_FILE_TYPE",message:"The file type being saved or retrieved has been blocked."},"0xC0000904":{code:"STATUS_FILE_TOO_LARGE",message:"The file size exceeds the limit allowed and cannot be saved."},"0xC0000905":{code:"STATUS_FORMS_AUTH_REQUIRED",message:"Access Denied. Before opening files in this location, you must first browse to the e.g. site and select the option to log on automatically."},"0xC0000906":{code:"STATUS_VIRUS_INFECTED",message:"The operation did not complete successfully because the file contains a virus."},"0xC0000907":{code:"STATUS_VIRUS_DELETED",message:"This file contains a virus and cannot be opened. Due to the nature of this virus, the file has been removed from this location."},"0xC0000908":{code:"STATUS_BAD_MCFG_TABLE",message:"The resources required for this device conflict with the MCFG table."},"0xC0000909":{code:"STATUS_CANNOT_BREAK_OPLOCK",message:"The operation did not complete successfully because it would cause an oplock to be broken. The caller has requested that existing oplocks not be broken."},"0xC0009898":{code:"STATUS_WOW_ASSERTION",message:"WOW Assertion Error."},"0xC000A000":{code:"STATUS_INVALID_SIGNATURE",message:"The cryptographic signature is invalid."},"0xC000A001":{code:"STATUS_HMAC_NOT_SUPPORTED",message:"The cryptographic provider does not support HMAC."},"0xC000A010":{code:"STATUS_IPSEC_QUEUE_OVERFLOW",message:"The IPsec queue overflowed."},"0xC000A011":{code:"STATUS_ND_QUEUE_OVERFLOW",message:"The neighbor discovery queue overflowed."},"0xC000A012":{code:"STATUS_HOPLIMIT_EXCEEDED",message:"An Internet Control Message Protocol (ICMP) hop limit exceeded error was received."},"0xC000A013":{code:"STATUS_PROTOCOL_NOT_SUPPORTED",message:"The protocol is not installed on the local machine."},"0xC000A080":{code:"STATUS_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused by network connectivity issues. Try to save this file elsewhere."},"0xC000A081":{code:"STATUS_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error was returned by the server on which the file exists. Try to save this file elsewhere."},"0xC000A082":{code:"STATUS_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused if the device has been removed or the media is write-protected."},"0xC000A083":{code:"STATUS_XML_PARSE_ERROR",message:"Windows was unable to parse the requested XML data."},"0xC000A084":{code:"STATUS_XMLDSIG_ERROR",message:"An error was encountered while processing an XML digital signature."},"0xC000A085":{code:"STATUS_WRONG_COMPARTMENT",message:"This indicates that the caller made the connection request in the wrong routing compartment."},"0xC000A086":{code:"STATUS_AUTHIP_FAILURE",message:"This indicates that there was an AuthIP failure when attempting to connect to the remote host."},"0xC000A087":{code:"STATUS_DS_OID_MAPPED_GROUP_CANT_HAVE_MEMBERS",message:"OID mapped groups cannot have members."},"0xC000A088":{code:"STATUS_DS_OID_NOT_FOUND",message:"The specified OID cannot be found."},"0xC000A100":{code:"STATUS_HASH_NOT_SUPPORTED",message:"Hash generation for the specified version and hash type is not enabled on server."},"0xC000A101":{code:"STATUS_HASH_NOT_PRESENT",message:"The hash requests is not present or not up to date with the current file contents."},"0xC000A2A1":{code:"STATUS_OFFLOAD_READ_FLT_NOT_SUPPORTED",message:"A file system filter on the server has not opted in for Offload Read support."},"0xC000A2A2":{code:"STATUS_OFFLOAD_WRITE_FLT_NOT_SUPPORTED",message:"A file system filter on the server has not opted in for Offload Write support."},"0xC000A2A3":{code:"STATUS_OFFLOAD_READ_FILE_NOT_SUPPORTED",message:`Offload read operations cannot be performed on: +Compressed files +Sparse files +Encrypted files +File system metadata files`},"0xC000A2A4":{code:"STATUS_OFFLOAD_WRITE_FILE_NOT_SUPPORTED",message:`Offload write operations cannot be performed on: +Compressed files +Sparse files +Encrypted files +File system metadata files`},"0xC0010001":{code:"DBG_NO_STATE_CHANGE",message:"The debugger did not perform a state change."},"0xC0010002":{code:"DBG_APP_NOT_IDLE",message:"The debugger found that the application is not idle."},"0xC0020001":{code:"RPC_NT_INVALID_STRING_BINDING",message:"The string binding is invalid."},"0xC0020002":{code:"RPC_NT_WRONG_KIND_OF_BINDING",message:"The binding handle is not the correct type."},"0xC0020003":{code:"RPC_NT_INVALID_BINDING",message:"The binding handle is invalid."},"0xC0020004":{code:"RPC_NT_PROTSEQ_NOT_SUPPORTED",message:"The RPC protocol sequence is not supported."},"0xC0020005":{code:"RPC_NT_INVALID_RPC_PROTSEQ",message:"The RPC protocol sequence is invalid."},"0xC0020006":{code:"RPC_NT_INVALID_STRING_UUID",message:"The string UUID is invalid."},"0xC0020007":{code:"RPC_NT_INVALID_ENDPOINT_FORMAT",message:"The endpoint format is invalid."},"0xC0020008":{code:"RPC_NT_INVALID_NET_ADDR",message:"The network address is invalid."},"0xC0020009":{code:"RPC_NT_NO_ENDPOINT_FOUND",message:"No endpoint was found."},"0xC002000A":{code:"RPC_NT_INVALID_TIMEOUT",message:"The time-out value is invalid."},"0xC002000B":{code:"RPC_NT_OBJECT_NOT_FOUND",message:"The object UUID was not found."},"0xC002000C":{code:"RPC_NT_ALREADY_REGISTERED",message:"The object UUID has already been registered."},"0xC002000D":{code:"RPC_NT_TYPE_ALREADY_REGISTERED",message:"The type UUID has already been registered."},"0xC002000E":{code:"RPC_NT_ALREADY_LISTENING",message:"The RPC server is already listening."},"0xC002000F":{code:"RPC_NT_NO_PROTSEQS_REGISTERED",message:"No protocol sequences have been registered."},"0xC0020010":{code:"RPC_NT_NOT_LISTENING",message:"The RPC server is not listening."},"0xC0020011":{code:"RPC_NT_UNKNOWN_MGR_TYPE",message:"The manager type is unknown."},"0xC0020012":{code:"RPC_NT_UNKNOWN_IF",message:"The interface is unknown."},"0xC0020013":{code:"RPC_NT_NO_BINDINGS",message:"There are no bindings."},"0xC0020014":{code:"RPC_NT_NO_PROTSEQS",message:"There are no protocol sequences."},"0xC0020015":{code:"RPC_NT_CANT_CREATE_ENDPOINT",message:"The endpoint cannot be created."},"0xC0020016":{code:"RPC_NT_OUT_OF_RESOURCES",message:"Insufficient resources are available to complete this operation."},"0xC0020017":{code:"RPC_NT_SERVER_UNAVAILABLE",message:"The RPC server is unavailable."},"0xC0020018":{code:"RPC_NT_SERVER_TOO_BUSY",message:"The RPC server is too busy to complete this operation."},"0xC0020019":{code:"RPC_NT_INVALID_NETWORK_OPTIONS",message:"The network options are invalid."},"0xC002001A":{code:"RPC_NT_NO_CALL_ACTIVE",message:"No RPCs are active on this thread."},"0xC002001B":{code:"RPC_NT_CALL_FAILED",message:"The RPC failed."},"0xC002001C":{code:"RPC_NT_CALL_FAILED_DNE",message:"The RPC failed and did not execute."},"0xC002001D":{code:"RPC_NT_PROTOCOL_ERROR",message:"An RPC protocol error occurred."},"0xC002001F":{code:"RPC_NT_UNSUPPORTED_TRANS_SYN",message:"The RPC server does not support the transfer syntax."},"0xC0020021":{code:"RPC_NT_UNSUPPORTED_TYPE",message:"The type UUID is not supported."},"0xC0020022":{code:"RPC_NT_INVALID_TAG",message:"The tag is invalid."},"0xC0020023":{code:"RPC_NT_INVALID_BOUND",message:"The array bounds are invalid."},"0xC0020024":{code:"RPC_NT_NO_ENTRY_NAME",message:"The binding does not contain an entry name."},"0xC0020025":{code:"RPC_NT_INVALID_NAME_SYNTAX",message:"The name syntax is invalid."},"0xC0020026":{code:"RPC_NT_UNSUPPORTED_NAME_SYNTAX",message:"The name syntax is not supported."},"0xC0020028":{code:"RPC_NT_UUID_NO_ADDRESS",message:"No network address is available to construct a UUID."},"0xC0020029":{code:"RPC_NT_DUPLICATE_ENDPOINT",message:"The endpoint is a duplicate."},"0xC002002A":{code:"RPC_NT_UNKNOWN_AUTHN_TYPE",message:"The authentication type is unknown."},"0xC002002B":{code:"RPC_NT_MAX_CALLS_TOO_SMALL",message:"The maximum number of calls is too small."},"0xC002002C":{code:"RPC_NT_STRING_TOO_LONG",message:"The string is too long."},"0xC002002D":{code:"RPC_NT_PROTSEQ_NOT_FOUND",message:"The RPC protocol sequence was not found."},"0xC002002E":{code:"RPC_NT_PROCNUM_OUT_OF_RANGE",message:"The procedure number is out of range."},"0xC002002F":{code:"RPC_NT_BINDING_HAS_NO_AUTH",message:"The binding does not contain any authentication information."},"0xC0020030":{code:"RPC_NT_UNKNOWN_AUTHN_SERVICE",message:"The authentication service is unknown."},"0xC0020031":{code:"RPC_NT_UNKNOWN_AUTHN_LEVEL",message:"The authentication level is unknown."},"0xC0020032":{code:"RPC_NT_INVALID_AUTH_IDENTITY",message:"The security context is invalid."},"0xC0020033":{code:"RPC_NT_UNKNOWN_AUTHZ_SERVICE",message:"The authorization service is unknown."},"0xC0020034":{code:"EPT_NT_INVALID_ENTRY",message:"The entry is invalid."},"0xC0020035":{code:"EPT_NT_CANT_PERFORM_OP",message:"The operation cannot be performed."},"0xC0020036":{code:"EPT_NT_NOT_REGISTERED",message:"No more endpoints are available from the endpoint mapper."},"0xC0020037":{code:"RPC_NT_NOTHING_TO_EXPORT",message:"No interfaces have been exported."},"0xC0020038":{code:"RPC_NT_INCOMPLETE_NAME",message:"The entry name is incomplete."},"0xC0020039":{code:"RPC_NT_INVALID_VERS_OPTION",message:"The version option is invalid."},"0xC002003A":{code:"RPC_NT_NO_MORE_MEMBERS",message:"There are no more members."},"0xC002003B":{code:"RPC_NT_NOT_ALL_OBJS_UNEXPORTED",message:"There is nothing to unexport."},"0xC002003C":{code:"RPC_NT_INTERFACE_NOT_FOUND",message:"The interface was not found."},"0xC002003D":{code:"RPC_NT_ENTRY_ALREADY_EXISTS",message:"The entry already exists."},"0xC002003E":{code:"RPC_NT_ENTRY_NOT_FOUND",message:"The entry was not found."},"0xC002003F":{code:"RPC_NT_NAME_SERVICE_UNAVAILABLE",message:"The name service is unavailable."},"0xC0020040":{code:"RPC_NT_INVALID_NAF_ID",message:"The network address family is invalid."},"0xC0020041":{code:"RPC_NT_CANNOT_SUPPORT",message:"The requested operation is not supported."},"0xC0020042":{code:"RPC_NT_NO_CONTEXT_AVAILABLE",message:"No security context is available to allow impersonation."},"0xC0020043":{code:"RPC_NT_INTERNAL_ERROR",message:"An internal error occurred in the RPC."},"0xC0020044":{code:"RPC_NT_ZERO_DIVIDE",message:"The RPC server attempted to divide an integer by zero."},"0xC0020045":{code:"RPC_NT_ADDRESS_ERROR",message:"An addressing error occurred in the RPC server."},"0xC0020046":{code:"RPC_NT_FP_DIV_ZERO",message:"A floating point operation at the RPC server caused a divide by zero."},"0xC0020047":{code:"RPC_NT_FP_UNDERFLOW",message:"A floating point underflow occurred at the RPC server."},"0xC0020048":{code:"RPC_NT_FP_OVERFLOW",message:"A floating point overflow occurred at the RPC server."},"0xC0020049":{code:"RPC_NT_CALL_IN_PROGRESS",message:"An RPC is already in progress for this thread."},"0xC002004A":{code:"RPC_NT_NO_MORE_BINDINGS",message:"There are no more bindings."},"0xC002004B":{code:"RPC_NT_GROUP_MEMBER_NOT_FOUND",message:"The group member was not found."},"0xC002004C":{code:"EPT_NT_CANT_CREATE",message:"The endpoint mapper database entry could not be created."},"0xC002004D":{code:"RPC_NT_INVALID_OBJECT",message:"The object UUID is the nil UUID."},"0xC002004F":{code:"RPC_NT_NO_INTERFACES",message:"No interfaces have been registered."},"0xC0020050":{code:"RPC_NT_CALL_CANCELLED",message:"The RPC was canceled."},"0xC0020051":{code:"RPC_NT_BINDING_INCOMPLETE",message:"The binding handle does not contain all the required information."},"0xC0020052":{code:"RPC_NT_COMM_FAILURE",message:"A communications failure occurred during an RPC."},"0xC0020053":{code:"RPC_NT_UNSUPPORTED_AUTHN_LEVEL",message:"The requested authentication level is not supported."},"0xC0020054":{code:"RPC_NT_NO_PRINC_NAME",message:"No principal name was registered."},"0xC0020055":{code:"RPC_NT_NOT_RPC_ERROR",message:"The error specified is not a valid Windows RPC error code."},"0xC0020057":{code:"RPC_NT_SEC_PKG_ERROR",message:"A security package-specific error occurred."},"0xC0020058":{code:"RPC_NT_NOT_CANCELLED",message:"The thread was not canceled."},"0xC0020062":{code:"RPC_NT_INVALID_ASYNC_HANDLE",message:"Invalid asynchronous RPC handle."},"0xC0020063":{code:"RPC_NT_INVALID_ASYNC_CALL",message:"Invalid asynchronous RPC call handle for this operation."},"0xC0020064":{code:"RPC_NT_PROXY_ACCESS_DENIED",message:"Access to the HTTP proxy is denied."},"0xC0030001":{code:"RPC_NT_NO_MORE_ENTRIES",message:"The list of RPC servers available for auto-handle binding has been exhausted."},"0xC0030002":{code:"RPC_NT_SS_CHAR_TRANS_OPEN_FAIL",message:"The file designated by DCERPCCHARTRANS cannot be opened."},"0xC0030003":{code:"RPC_NT_SS_CHAR_TRANS_SHORT_FILE",message:"The file containing the character translation table has fewer than 512 bytes."},"0xC0030004":{code:"RPC_NT_SS_IN_NULL_CONTEXT",message:"A null context handle is passed as an [in] parameter."},"0xC0030005":{code:"RPC_NT_SS_CONTEXT_MISMATCH",message:"The context handle does not match any known context handles."},"0xC0030006":{code:"RPC_NT_SS_CONTEXT_DAMAGED",message:"The context handle changed during a call."},"0xC0030007":{code:"RPC_NT_SS_HANDLES_MISMATCH",message:"The binding handles passed to an RPC do not match."},"0xC0030008":{code:"RPC_NT_SS_CANNOT_GET_CALL_HANDLE",message:"The stub is unable to get the call handle."},"0xC0030009":{code:"RPC_NT_NULL_REF_POINTER",message:"A null reference pointer was passed to the stub."},"0xC003000A":{code:"RPC_NT_ENUM_VALUE_OUT_OF_RANGE",message:"The enumeration value is out of range."},"0xC003000B":{code:"RPC_NT_BYTE_COUNT_TOO_SMALL",message:"The byte count is too small."},"0xC003000C":{code:"RPC_NT_BAD_STUB_DATA",message:"The stub received bad data."},"0xC0030059":{code:"RPC_NT_INVALID_ES_ACTION",message:"Invalid operation on the encoding/decoding handle."},"0xC003005A":{code:"RPC_NT_WRONG_ES_VERSION",message:"Incompatible version of the serializing package."},"0xC003005B":{code:"RPC_NT_WRONG_STUB_VERSION",message:"Incompatible version of the RPC stub."},"0xC003005C":{code:"RPC_NT_INVALID_PIPE_OBJECT",message:"The RPC pipe object is invalid or corrupt."},"0xC003005D":{code:"RPC_NT_INVALID_PIPE_OPERATION",message:"An invalid operation was attempted on an RPC pipe object."},"0xC003005E":{code:"RPC_NT_WRONG_PIPE_VERSION",message:"Unsupported RPC pipe version."},"0xC003005F":{code:"RPC_NT_PIPE_CLOSED",message:"The RPC pipe object has already been closed."},"0xC0030060":{code:"RPC_NT_PIPE_DISCIPLINE_ERROR",message:"The RPC call completed before all pipes were processed."},"0xC0030061":{code:"RPC_NT_PIPE_EMPTY",message:"No more data is available from the RPC pipe."},"0xC0040035":{code:"STATUS_PNP_BAD_MPS_TABLE",message:"A device is missing in the system BIOS MPS table. This device will not be used. Contact your system vendor for a system BIOS update."},"0xC0040036":{code:"STATUS_PNP_TRANSLATION_FAILED",message:"A translator failed to translate resources."},"0xC0040037":{code:"STATUS_PNP_IRQ_TRANSLATION_FAILED",message:"An IRQ translator failed to translate resources."},"0xC0040038":{code:"STATUS_PNP_INVALID_ID",message:"Driver %2 returned an invalid ID for a child device (%3)."},"0xC0040039":{code:"STATUS_IO_REISSUE_AS_CACHED",message:"Reissue the given operation as a cached I/O operation"},"0xC00A0001":{code:"STATUS_CTX_WINSTATION_NAME_INVALID",message:"Session name %1 is invalid."},"0xC00A0002":{code:"STATUS_CTX_INVALID_PD",message:"The protocol driver %1 is invalid."},"0xC00A0003":{code:"STATUS_CTX_PD_NOT_FOUND",message:"The protocol driver %1 was not found in the system path."},"0xC00A0006":{code:"STATUS_CTX_CLOSE_PENDING",message:"A close operation is pending on the terminal connection."},"0xC00A0007":{code:"STATUS_CTX_NO_OUTBUF",message:"No free output buffers are available."},"0xC00A0008":{code:"STATUS_CTX_MODEM_INF_NOT_FOUND",message:"The MODEM.INF file was not found."},"0xC00A0009":{code:"STATUS_CTX_INVALID_MODEMNAME",message:"The modem (%1) was not found in the MODEM.INF file."},"0xC00A000A":{code:"STATUS_CTX_RESPONSE_ERROR",message:"The modem did not accept the command sent to it. Verify that the configured modem name matches the attached modem."},"0xC00A000B":{code:"STATUS_CTX_MODEM_RESPONSE_TIMEOUT",message:"The modem did not respond to the command sent to it. Verify that the modem cable is properly attached and the modem is turned on."},"0xC00A000C":{code:"STATUS_CTX_MODEM_RESPONSE_NO_CARRIER",message:"Carrier detection has failed or the carrier has been dropped due to disconnection."},"0xC00A000D":{code:"STATUS_CTX_MODEM_RESPONSE_NO_DIALTONE",message:"A dial tone was not detected within the required time. Verify that the phone cable is properly attached and functional."},"0xC00A000E":{code:"STATUS_CTX_MODEM_RESPONSE_BUSY",message:"A busy signal was detected at a remote site on callback."},"0xC00A000F":{code:"STATUS_CTX_MODEM_RESPONSE_VOICE",message:"A voice was detected at a remote site on callback."},"0xC00A0010":{code:"STATUS_CTX_TD_ERROR",message:"Transport driver error."},"0xC00A0012":{code:"STATUS_CTX_LICENSE_CLIENT_INVALID",message:"The client you are using is not licensed to use this system. Your logon request is denied."},"0xC00A0013":{code:"STATUS_CTX_LICENSE_NOT_AVAILABLE",message:"The system has reached its licensed logon limit. Try again later."},"0xC00A0014":{code:"STATUS_CTX_LICENSE_EXPIRED",message:"The system license has expired. Your logon request is denied."},"0xC00A0015":{code:"STATUS_CTX_WINSTATION_NOT_FOUND",message:"The specified session cannot be found."},"0xC00A0016":{code:"STATUS_CTX_WINSTATION_NAME_COLLISION",message:"The specified session name is already in use."},"0xC00A0017":{code:"STATUS_CTX_WINSTATION_BUSY",message:"The requested operation cannot be completed because the terminal connection is currently processing a connect, disconnect, reset, or delete operation."},"0xC00A0018":{code:"STATUS_CTX_BAD_VIDEO_MODE",message:"An attempt has been made to connect to a session whose video mode is not supported by the current client."},"0xC00A0022":{code:"STATUS_CTX_GRAPHICS_INVALID",message:"The application attempted to enable DOS graphics mode. DOS graphics mode is not supported."},"0xC00A0024":{code:"STATUS_CTX_NOT_CONSOLE",message:"The requested operation can be performed only on the system console. This is most often the result of a driver or system DLL requiring direct console access."},"0xC00A0026":{code:"STATUS_CTX_CLIENT_QUERY_TIMEOUT",message:"The client failed to respond to the server connect message."},"0xC00A0027":{code:"STATUS_CTX_CONSOLE_DISCONNECT",message:"Disconnecting the console session is not supported."},"0xC00A0028":{code:"STATUS_CTX_CONSOLE_CONNECT",message:"Reconnecting a disconnected session to the console is not supported."},"0xC00A002A":{code:"STATUS_CTX_SHADOW_DENIED",message:"The request to control another session remotely was denied."},"0xC00A002B":{code:"STATUS_CTX_WINSTATION_ACCESS_DENIED",message:"A process has requested access to a session, but has not been granted those access rights."},"0xC00A002E":{code:"STATUS_CTX_INVALID_WD",message:"The terminal connection driver %1 is invalid."},"0xC00A002F":{code:"STATUS_CTX_WD_NOT_FOUND",message:"The terminal connection driver %1 was not found in the system path."},"0xC00A0030":{code:"STATUS_CTX_SHADOW_INVALID",message:"The requested session cannot be controlled remotely. You cannot control your own session, a session that is trying to control your session, a session that has no user logged on, or other sessions from the console."},"0xC00A0031":{code:"STATUS_CTX_SHADOW_DISABLED",message:"The requested session is not configured to allow remote control."},"0xC00A0032":{code:"STATUS_RDP_PROTOCOL_ERROR",message:"The RDP protocol component %2 detected an error in the protocol stream and has disconnected the client."},"0xC00A0033":{code:"STATUS_CTX_CLIENT_LICENSE_NOT_SET",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number has not been entered for this copy of the terminal client. Contact your system administrator for help in entering a valid, unique license number for this terminal server client. Click OK to continue."},"0xC00A0034":{code:"STATUS_CTX_CLIENT_LICENSE_IN_USE",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number is currently being used by another user. Contact your system administrator to obtain a new copy of the terminal server client with a valid, unique license number. Click OK to continue."},"0xC00A0035":{code:"STATUS_CTX_SHADOW_ENDED_BY_MODE_CHANGE",message:"The remote control of the console was terminated because the display mode was changed. Changing the display mode in a remote control session is not supported."},"0xC00A0036":{code:"STATUS_CTX_SHADOW_NOT_RUNNING",message:"Remote control could not be terminated because the specified session is not currently being remotely controlled."},"0xC00A0037":{code:"STATUS_CTX_LOGON_DISABLED",message:"Your interactive logon privilege has been disabled. Contact your system administrator."},"0xC00A0038":{code:"STATUS_CTX_SECURITY_LAYER_ERROR",message:"The terminal server security layer detected an error in the protocol stream and has disconnected the client."},"0xC00A0039":{code:"STATUS_TS_INCOMPATIBLE_SESSIONS",message:"The target session is incompatible with the current session."},"0xC00B0001":{code:"STATUS_MUI_FILE_NOT_FOUND",message:"The resource loader failed to find an MUI file."},"0xC00B0002":{code:"STATUS_MUI_INVALID_FILE",message:"The resource loader failed to load an MUI file because the file failed to pass validation."},"0xC00B0003":{code:"STATUS_MUI_INVALID_RC_CONFIG",message:"The RC manifest is corrupted with garbage data, is an unsupported version, or is missing a required item."},"0xC00B0004":{code:"STATUS_MUI_INVALID_LOCALE_NAME",message:"The RC manifest has an invalid culture name."},"0xC00B0005":{code:"STATUS_MUI_INVALID_ULTIMATEFALLBACK_NAME",message:"The RC manifest has and invalid ultimate fallback name."},"0xC00B0006":{code:"STATUS_MUI_FILE_NOT_LOADED",message:"The resource loader cache does not have a loaded MUI entry."},"0xC00B0007":{code:"STATUS_RESOURCE_ENUM_USER_STOP",message:"The user stopped resource enumeration."},"0xC0130001":{code:"STATUS_CLUSTER_INVALID_NODE",message:"The cluster node is not valid."},"0xC0130002":{code:"STATUS_CLUSTER_NODE_EXISTS",message:"The cluster node already exists."},"0xC0130003":{code:"STATUS_CLUSTER_JOIN_IN_PROGRESS",message:"A node is in the process of joining the cluster."},"0xC0130004":{code:"STATUS_CLUSTER_NODE_NOT_FOUND",message:"The cluster node was not found."},"0xC0130005":{code:"STATUS_CLUSTER_LOCAL_NODE_NOT_FOUND",message:"The cluster local node information was not found."},"0xC0130006":{code:"STATUS_CLUSTER_NETWORK_EXISTS",message:"The cluster network already exists."},"0xC0130007":{code:"STATUS_CLUSTER_NETWORK_NOT_FOUND",message:"The cluster network was not found."},"0xC0130008":{code:"STATUS_CLUSTER_NETINTERFACE_EXISTS",message:"The cluster network interface already exists."},"0xC0130009":{code:"STATUS_CLUSTER_NETINTERFACE_NOT_FOUND",message:"The cluster network interface was not found."},"0xC013000A":{code:"STATUS_CLUSTER_INVALID_REQUEST",message:"The cluster request is not valid for this object."},"0xC013000B":{code:"STATUS_CLUSTER_INVALID_NETWORK_PROVIDER",message:"The cluster network provider is not valid."},"0xC013000C":{code:"STATUS_CLUSTER_NODE_DOWN",message:"The cluster node is down."},"0xC013000D":{code:"STATUS_CLUSTER_NODE_UNREACHABLE",message:"The cluster node is not reachable."},"0xC013000E":{code:"STATUS_CLUSTER_NODE_NOT_MEMBER",message:"The cluster node is not a member of the cluster."},"0xC013000F":{code:"STATUS_CLUSTER_JOIN_NOT_IN_PROGRESS",message:"A cluster join operation is not in progress."},"0xC0130010":{code:"STATUS_CLUSTER_INVALID_NETWORK",message:"The cluster network is not valid."},"0xC0130011":{code:"STATUS_CLUSTER_NO_NET_ADAPTERS",message:"No network adapters are available."},"0xC0130012":{code:"STATUS_CLUSTER_NODE_UP",message:"The cluster node is up."},"0xC0130013":{code:"STATUS_CLUSTER_NODE_PAUSED",message:"The cluster node is paused."},"0xC0130014":{code:"STATUS_CLUSTER_NODE_NOT_PAUSED",message:"The cluster node is not paused."},"0xC0130015":{code:"STATUS_CLUSTER_NO_SECURITY_CONTEXT",message:"No cluster security context is available."},"0xC0130016":{code:"STATUS_CLUSTER_NETWORK_NOT_INTERNAL",message:"The cluster network is not configured for internal cluster communication."},"0xC0130017":{code:"STATUS_CLUSTER_POISONED",message:"The cluster node has been poisoned."},"0xC0140001":{code:"STATUS_ACPI_INVALID_OPCODE",message:"An attempt was made to run an invalid AML opcode."},"0xC0140002":{code:"STATUS_ACPI_STACK_OVERFLOW",message:"The AML interpreter stack has overflowed."},"0xC0140003":{code:"STATUS_ACPI_ASSERT_FAILED",message:"An inconsistent state has occurred."},"0xC0140004":{code:"STATUS_ACPI_INVALID_INDEX",message:"An attempt was made to access an array outside its bounds."},"0xC0140005":{code:"STATUS_ACPI_INVALID_ARGUMENT",message:"A required argument was not specified."},"0xC0140006":{code:"STATUS_ACPI_FATAL",message:"A fatal error has occurred."},"0xC0140007":{code:"STATUS_ACPI_INVALID_SUPERNAME",message:"An invalid SuperName was specified."},"0xC0140008":{code:"STATUS_ACPI_INVALID_ARGTYPE",message:"An argument with an incorrect type was specified."},"0xC0140009":{code:"STATUS_ACPI_INVALID_OBJTYPE",message:"An object with an incorrect type was specified."},"0xC014000A":{code:"STATUS_ACPI_INVALID_TARGETTYPE",message:"A target with an incorrect type was specified."},"0xC014000B":{code:"STATUS_ACPI_INCORRECT_ARGUMENT_COUNT",message:"An incorrect number of arguments was specified."},"0xC014000C":{code:"STATUS_ACPI_ADDRESS_NOT_MAPPED",message:"An address failed to translate."},"0xC014000D":{code:"STATUS_ACPI_INVALID_EVENTTYPE",message:"An incorrect event type was specified."},"0xC014000E":{code:"STATUS_ACPI_HANDLER_COLLISION",message:"A handler for the target already exists."},"0xC014000F":{code:"STATUS_ACPI_INVALID_DATA",message:"Invalid data for the target was specified."},"0xC0140010":{code:"STATUS_ACPI_INVALID_REGION",message:"An invalid region for the target was specified."},"0xC0140011":{code:"STATUS_ACPI_INVALID_ACCESS_SIZE",message:"An attempt was made to access a field outside the defined range."},"0xC0140012":{code:"STATUS_ACPI_ACQUIRE_GLOBAL_LOCK",message:"The global system lock could not be acquired."},"0xC0140013":{code:"STATUS_ACPI_ALREADY_INITIALIZED",message:"An attempt was made to reinitialize the ACPI subsystem."},"0xC0140014":{code:"STATUS_ACPI_NOT_INITIALIZED",message:"The ACPI subsystem has not been initialized."},"0xC0140015":{code:"STATUS_ACPI_INVALID_MUTEX_LEVEL",message:"An incorrect mutex was specified."},"0xC0140016":{code:"STATUS_ACPI_MUTEX_NOT_OWNED",message:"The mutex is not currently owned."},"0xC0140017":{code:"STATUS_ACPI_MUTEX_NOT_OWNER",message:"An attempt was made to access the mutex by a process that was not the owner."},"0xC0140018":{code:"STATUS_ACPI_RS_ACCESS",message:"An error occurred during an access to region space."},"0xC0140019":{code:"STATUS_ACPI_INVALID_TABLE",message:"An attempt was made to use an incorrect table."},"0xC0140020":{code:"STATUS_ACPI_REG_HANDLER_FAILED",message:"The registration of an ACPI event failed."},"0xC0140021":{code:"STATUS_ACPI_POWER_REQUEST_FAILED",message:"An ACPI power object failed to transition state."},"0xC0150001":{code:"STATUS_SXS_SECTION_NOT_FOUND",message:"The requested section is not present in the activation context."},"0xC0150002":{code:"STATUS_SXS_CANT_GEN_ACTCTX",message:"Windows was unble to process the application binding information. Refer to the system event log for further information."},"0xC0150003":{code:"STATUS_SXS_INVALID_ACTCTXDATA_FORMAT",message:"The application binding data format is invalid."},"0xC0150004":{code:"STATUS_SXS_ASSEMBLY_NOT_FOUND",message:"The referenced assembly is not installed on the system."},"0xC0150005":{code:"STATUS_SXS_MANIFEST_FORMAT_ERROR",message:"The manifest file does not begin with the required tag and format information."},"0xC0150006":{code:"STATUS_SXS_MANIFEST_PARSE_ERROR",message:"The manifest file contains one or more syntax errors."},"0xC0150007":{code:"STATUS_SXS_ACTIVATION_CONTEXT_DISABLED",message:"The application attempted to activate a disabled activation context."},"0xC0150008":{code:"STATUS_SXS_KEY_NOT_FOUND",message:"The requested lookup key was not found in any active activation context."},"0xC0150009":{code:"STATUS_SXS_VERSION_CONFLICT",message:"A component version required by the application conflicts with another component version that is already active."},"0xC015000A":{code:"STATUS_SXS_WRONG_SECTION_TYPE",message:"The type requested activation context section does not match the query API used."},"0xC015000B":{code:"STATUS_SXS_THREAD_QUERIES_DISABLED",message:"Lack of system resources has required isolated activation to be disabled for the current thread of execution."},"0xC015000C":{code:"STATUS_SXS_ASSEMBLY_MISSING",message:"The referenced assembly could not be found."},"0xC015000E":{code:"STATUS_SXS_PROCESS_DEFAULT_ALREADY_SET",message:"An attempt to set the process default activation context failed because the process default activation context was already set."},"0xC015000F":{code:"STATUS_SXS_EARLY_DEACTIVATION",message:"The activation context being deactivated is not the most recently activated one."},"0xC0150010":{code:"STATUS_SXS_INVALID_DEACTIVATION",message:"The activation context being deactivated is not active for the current thread of execution."},"0xC0150011":{code:"STATUS_SXS_MULTIPLE_DEACTIVATION",message:"The activation context being deactivated has already been deactivated."},"0xC0150012":{code:"STATUS_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY",message:"The activation context of the system default assembly could not be generated."},"0xC0150013":{code:"STATUS_SXS_PROCESS_TERMINATION_REQUESTED",message:"A component used by the isolation facility has requested that the process be terminated."},"0xC0150014":{code:"STATUS_SXS_CORRUPT_ACTIVATION_STACK",message:"The activation context activation stack for the running thread of execution is corrupt."},"0xC0150015":{code:"STATUS_SXS_CORRUPTION",message:"The application isolation metadata for this process or thread has become corrupt."},"0xC0150016":{code:"STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE",message:"The value of an attribute in an identity is not within the legal range."},"0xC0150017":{code:"STATUS_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME",message:"The name of an attribute in an identity is not within the legal range."},"0xC0150018":{code:"STATUS_SXS_IDENTITY_DUPLICATE_ATTRIBUTE",message:"An identity contains two definitions for the same attribute."},"0xC0150019":{code:"STATUS_SXS_IDENTITY_PARSE_ERROR",message:"The identity string is malformed. This may be due to a trailing comma, more than two unnamed attributes, a missing attribute name, or a missing attribute value."},"0xC015001A":{code:"STATUS_SXS_COMPONENT_STORE_CORRUPT",message:"The component store has become corrupted."},"0xC015001B":{code:"STATUS_SXS_FILE_HASH_MISMATCH",message:"A component's file does not match the verification information present in the component manifest."},"0xC015001C":{code:"STATUS_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT",message:"The identities of the manifests are identical, but their contents are different."},"0xC015001D":{code:"STATUS_SXS_IDENTITIES_DIFFERENT",message:"The component identities are different."},"0xC015001E":{code:"STATUS_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT",message:"The assembly is not a deployment."},"0xC015001F":{code:"STATUS_SXS_FILE_NOT_PART_OF_ASSEMBLY",message:"The file is not a part of the assembly."},"0xC0150020":{code:"STATUS_ADVANCED_INSTALLER_FAILED",message:"An advanced installer failed during setup or servicing."},"0xC0150021":{code:"STATUS_XML_ENCODING_MISMATCH",message:"The character encoding in the XML declaration did not match the encoding used in the document."},"0xC0150022":{code:"STATUS_SXS_MANIFEST_TOO_BIG",message:"The size of the manifest exceeds the maximum allowed."},"0xC0150023":{code:"STATUS_SXS_SETTING_NOT_REGISTERED",message:"The setting is not registered."},"0xC0150024":{code:"STATUS_SXS_TRANSACTION_CLOSURE_INCOMPLETE",message:"One or more required transaction members are not present."},"0xC0150025":{code:"STATUS_SMI_PRIMITIVE_INSTALLER_FAILED",message:"The SMI primitive installer failed during setup or servicing."},"0xC0150026":{code:"STATUS_GENERIC_COMMAND_FAILED",message:"A generic command executable returned a result that indicates failure."},"0xC0150027":{code:"STATUS_SXS_FILE_HASH_MISSING",message:"A component is missing file verification information in its manifest."},"0xC0190001":{code:"STATUS_TRANSACTIONAL_CONFLICT",message:"The function attempted to use a name that is reserved for use by another transaction."},"0xC0190002":{code:"STATUS_INVALID_TRANSACTION",message:"The transaction handle associated with this operation is invalid."},"0xC0190003":{code:"STATUS_TRANSACTION_NOT_ACTIVE",message:"The requested operation was made in the context of a transaction that is no longer active."},"0xC0190004":{code:"STATUS_TM_INITIALIZATION_FAILED",message:"The transaction manager was unable to be successfully initialized. Transacted operations are not supported."},"0xC0190005":{code:"STATUS_RM_NOT_ACTIVE",message:"Transaction support within the specified file system resource manager was not started or was shut down due to an error."},"0xC0190006":{code:"STATUS_RM_METADATA_CORRUPT",message:"The metadata of the resource manager has been corrupted. The resource manager will not function."},"0xC0190007":{code:"STATUS_TRANSACTION_NOT_JOINED",message:"The resource manager attempted to prepare a transaction that it has not successfully joined."},"0xC0190008":{code:"STATUS_DIRECTORY_NOT_RM",message:"The specified directory does not contain a file system resource manager."},"0xC019000A":{code:"STATUS_TRANSACTIONS_UNSUPPORTED_REMOTE",message:"The remote server or share does not support transacted file operations."},"0xC019000B":{code:"STATUS_LOG_RESIZE_INVALID_SIZE",message:"The requested log size for the file system resource manager is invalid."},"0xC019000C":{code:"STATUS_REMOTE_FILE_VERSION_MISMATCH",message:"The remote server sent mismatching version number or Fid for a file opened with transactions."},"0xC019000F":{code:"STATUS_CRM_PROTOCOL_ALREADY_EXISTS",message:"The resource manager tried to register a protocol that already exists."},"0xC0190010":{code:"STATUS_TRANSACTION_PROPAGATION_FAILED",message:"The attempt to propagate the transaction failed."},"0xC0190011":{code:"STATUS_CRM_PROTOCOL_NOT_FOUND",message:"The requested propagation protocol was not registered as a CRM."},"0xC0190012":{code:"STATUS_TRANSACTION_SUPERIOR_EXISTS",message:"The transaction object already has a superior enlistment, and the caller attempted an operation that would have created a new superior. Only a single superior enlistment is allowed."},"0xC0190013":{code:"STATUS_TRANSACTION_REQUEST_NOT_VALID",message:"The requested operation is not valid on the transaction object in its current state."},"0xC0190014":{code:"STATUS_TRANSACTION_NOT_REQUESTED",message:"The caller has called a response API, but the response is not expected because the transaction manager did not issue the corresponding request to the caller."},"0xC0190015":{code:"STATUS_TRANSACTION_ALREADY_ABORTED",message:"It is too late to perform the requested operation, because the transaction has already been aborted."},"0xC0190016":{code:"STATUS_TRANSACTION_ALREADY_COMMITTED",message:"It is too late to perform the requested operation, because the transaction has already been committed."},"0xC0190017":{code:"STATUS_TRANSACTION_INVALID_MARSHALL_BUFFER",message:"The buffer passed in to NtPushTransaction or NtPullTransaction is not in a valid format."},"0xC0190018":{code:"STATUS_CURRENT_TRANSACTION_NOT_VALID",message:"The current transaction context associated with the thread is not a valid handle to a transaction object."},"0xC0190019":{code:"STATUS_LOG_GROWTH_FAILED",message:"An attempt to create space in the transactional resource manager's log failed. The failure status has been recorded in the event log."},"0xC0190021":{code:"STATUS_OBJECT_NO_LONGER_EXISTS",message:"The object (file, stream, or link) that corresponds to the handle has been deleted by a transaction savepoint rollback."},"0xC0190022":{code:"STATUS_STREAM_MINIVERSION_NOT_FOUND",message:"The specified file miniversion was not found for this transacted file open."},"0xC0190023":{code:"STATUS_STREAM_MINIVERSION_NOT_VALID",message:"The specified file miniversion was found but has been invalidated. The most likely cause is a transaction savepoint rollback."},"0xC0190024":{code:"STATUS_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION",message:"A miniversion may be opened only in the context of the transaction that created it."},"0xC0190025":{code:"STATUS_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT",message:"It is not possible to open a miniversion with modify access."},"0xC0190026":{code:"STATUS_CANT_CREATE_MORE_STREAM_MINIVERSIONS",message:"It is not possible to create any more miniversions for this stream."},"0xC0190028":{code:"STATUS_HANDLE_NO_LONGER_VALID",message:"The handle has been invalidated by a transaction. The most likely cause is the presence of memory mapping on a file or an open handle when the transaction ended or rolled back to savepoint."},"0xC0190030":{code:"STATUS_LOG_CORRUPTION_DETECTED",message:"The log data is corrupt."},"0xC0190032":{code:"STATUS_RM_DISCONNECTED",message:"The transaction outcome is unavailable because the resource manager responsible for it is disconnected."},"0xC0190033":{code:"STATUS_ENLISTMENT_NOT_SUPERIOR",message:"The request was rejected because the enlistment in question is not a superior enlistment."},"0xC0190036":{code:"STATUS_FILE_IDENTITY_NOT_PERSISTENT",message:"The file cannot be opened in a transaction because its identity depends on the outcome of an unresolved transaction."},"0xC0190037":{code:"STATUS_CANT_BREAK_TRANSACTIONAL_DEPENDENCY",message:"The operation cannot be performed because another transaction is depending on this property not changing."},"0xC0190038":{code:"STATUS_CANT_CROSS_RM_BOUNDARY",message:"The operation would involve a single file with two transactional resource managers and is, therefore, not allowed."},"0xC0190039":{code:"STATUS_TXF_DIR_NOT_EMPTY",message:"The $Txf directory must be empty for this operation to succeed."},"0xC019003A":{code:"STATUS_INDOUBT_TRANSACTIONS_EXIST",message:"The operation would leave a transactional resource manager in an inconsistent state and is therefore not allowed."},"0xC019003B":{code:"STATUS_TM_VOLATILE",message:"The operation could not be completed because the transaction manager does not have a log."},"0xC019003C":{code:"STATUS_ROLLBACK_TIMER_EXPIRED",message:"A rollback could not be scheduled because a previously scheduled rollback has already executed or been queued for execution."},"0xC019003D":{code:"STATUS_TXF_ATTRIBUTE_CORRUPT",message:"The transactional metadata attribute on the file or directory %hs is corrupt and unreadable."},"0xC019003E":{code:"STATUS_EFS_NOT_ALLOWED_IN_TRANSACTION",message:"The encryption operation could not be completed because a transaction is active."},"0xC019003F":{code:"STATUS_TRANSACTIONAL_OPEN_NOT_ALLOWED",message:"This object is not allowed to be opened in a transaction."},"0xC0190040":{code:"STATUS_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE",message:"Memory mapping (creating a mapped section) a remote file under a transaction is not supported."},"0xC0190043":{code:"STATUS_TRANSACTION_REQUIRED_PROMOTION",message:"Promotion was required to allow the resource manager to enlist, but the transaction was set to disallow it."},"0xC0190044":{code:"STATUS_CANNOT_EXECUTE_FILE_IN_TRANSACTION",message:"This file is open for modification in an unresolved transaction and may be opened for execute only by a transacted reader."},"0xC0190045":{code:"STATUS_TRANSACTIONS_NOT_FROZEN",message:"The request to thaw frozen transactions was ignored because transactions were not previously frozen."},"0xC0190046":{code:"STATUS_TRANSACTION_FREEZE_IN_PROGRESS",message:"Transactions cannot be frozen because a freeze is already in progress."},"0xC0190047":{code:"STATUS_NOT_SNAPSHOT_VOLUME",message:"The target volume is not a snapshot volume. This operation is valid only on a volume mounted as a snapshot."},"0xC0190048":{code:"STATUS_NO_SAVEPOINT_WITH_OPEN_FILES",message:"The savepoint operation failed because files are open on the transaction, which is not permitted."},"0xC0190049":{code:"STATUS_SPARSE_NOT_ALLOWED_IN_TRANSACTION",message:"The sparse operation could not be completed because a transaction is active on the file."},"0xC019004A":{code:"STATUS_TM_IDENTITY_MISMATCH",message:"The call to create a transaction manager object failed because the Tm Identity that is stored in the log file does not match the Tm Identity that was passed in as an argument."},"0xC019004B":{code:"STATUS_FLOATED_SECTION",message:"I/O was attempted on a section object that has been floated as a result of a transaction ending. There is no valid data."},"0xC019004C":{code:"STATUS_CANNOT_ACCEPT_TRANSACTED_WORK",message:"The transactional resource manager cannot currently accept transacted work due to a transient condition, such as low resources."},"0xC019004D":{code:"STATUS_CANNOT_ABORT_TRANSACTIONS",message:"The transactional resource manager had too many transactions outstanding that could not be aborted. The transactional resource manager has been shut down."},"0xC019004E":{code:"STATUS_TRANSACTION_NOT_FOUND",message:"The specified transaction was unable to be opened because it was not found."},"0xC019004F":{code:"STATUS_RESOURCEMANAGER_NOT_FOUND",message:"The specified resource manager was unable to be opened because it was not found."},"0xC0190050":{code:"STATUS_ENLISTMENT_NOT_FOUND",message:"The specified enlistment was unable to be opened because it was not found."},"0xC0190051":{code:"STATUS_TRANSACTIONMANAGER_NOT_FOUND",message:"The specified transaction manager was unable to be opened because it was not found."},"0xC0190052":{code:"STATUS_TRANSACTIONMANAGER_NOT_ONLINE",message:"The specified resource manager was unable to create an enlistment because its associated transaction manager is not online."},"0xC0190053":{code:"STATUS_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION",message:"The specified transaction manager was unable to create the objects contained in its log file in the Ob namespace. Therefore, the transaction manager was unable to recover."},"0xC0190054":{code:"STATUS_TRANSACTION_NOT_ROOT",message:"The call to create a superior enlistment on this transaction object could not be completed because the transaction object specified for the enlistment is a subordinate branch of the transaction. Only the root of the transaction can be enlisted as a superior."},"0xC0190055":{code:"STATUS_TRANSACTION_OBJECT_EXPIRED",message:"Because the associated transaction manager or resource manager has been closed, the handle is no longer valid."},"0xC0190056":{code:"STATUS_COMPRESSION_NOT_ALLOWED_IN_TRANSACTION",message:"The compression operation could not be completed because a transaction is active on the file."},"0xC0190057":{code:"STATUS_TRANSACTION_RESPONSE_NOT_ENLISTED",message:"The specified operation could not be performed on this superior enlistment because the enlistment was not created with the corresponding completion response in the NotificationMask."},"0xC0190058":{code:"STATUS_TRANSACTION_RECORD_TOO_LONG",message:"The specified operation could not be performed because the record to be logged was too long. This can occur because either there are too many enlistments on this transaction or the combined RecoveryInformation being logged on behalf of those enlistments is too long."},"0xC0190059":{code:"STATUS_NO_LINK_TRACKING_IN_TRANSACTION",message:"The link-tracking operation could not be completed because a transaction is active."},"0xC019005A":{code:"STATUS_OPERATION_NOT_SUPPORTED_IN_TRANSACTION",message:"This operation cannot be performed in a transaction."},"0xC019005B":{code:"STATUS_TRANSACTION_INTEGRITY_VIOLATED",message:"The kernel transaction manager had to abort or forget the transaction because it blocked forward progress."},"0xC0190060":{code:"STATUS_EXPIRED_HANDLE",message:"The handle is no longer properly associated with its transaction. It may have been opened in a transactional resource manager that was subsequently forced to restart. Please close the handle and open a new one."},"0xC0190061":{code:"STATUS_TRANSACTION_NOT_ENLISTED",message:"The specified operation could not be performed because the resource manager is not enlisted in the transaction."},"0xC01A0001":{code:"STATUS_LOG_SECTOR_INVALID",message:"The log service found an invalid log sector."},"0xC01A0002":{code:"STATUS_LOG_SECTOR_PARITY_INVALID",message:"The log service encountered a log sector with invalid block parity."},"0xC01A0003":{code:"STATUS_LOG_SECTOR_REMAPPED",message:"The log service encountered a remapped log sector."},"0xC01A0004":{code:"STATUS_LOG_BLOCK_INCOMPLETE",message:"The log service encountered a partial or incomplete log block."},"0xC01A0005":{code:"STATUS_LOG_INVALID_RANGE",message:"The log service encountered an attempt to access data outside the active log range."},"0xC01A0006":{code:"STATUS_LOG_BLOCKS_EXHAUSTED",message:"The log service user-log marshaling buffers are exhausted."},"0xC01A0007":{code:"STATUS_LOG_READ_CONTEXT_INVALID",message:"The log service encountered an attempt to read from a marshaling area with an invalid read context."},"0xC01A0008":{code:"STATUS_LOG_RESTART_INVALID",message:"The log service encountered an invalid log restart area."},"0xC01A0009":{code:"STATUS_LOG_BLOCK_VERSION",message:"The log service encountered an invalid log block version."},"0xC01A000A":{code:"STATUS_LOG_BLOCK_INVALID",message:"The log service encountered an invalid log block."},"0xC01A000B":{code:"STATUS_LOG_READ_MODE_INVALID",message:"The log service encountered an attempt to read the log with an invalid read mode."},"0xC01A000D":{code:"STATUS_LOG_METADATA_CORRUPT",message:"The log service encountered a corrupted metadata file."},"0xC01A000E":{code:"STATUS_LOG_METADATA_INVALID",message:"The log service encountered a metadata file that could not be created by the log file system."},"0xC01A000F":{code:"STATUS_LOG_METADATA_INCONSISTENT",message:"The log service encountered a metadata file with inconsistent data."},"0xC01A0010":{code:"STATUS_LOG_RESERVATION_INVALID",message:"The log service encountered an attempt to erroneously allocate or dispose reservation space."},"0xC01A0011":{code:"STATUS_LOG_CANT_DELETE",message:"The log service cannot delete the log file or the file system container."},"0xC01A0012":{code:"STATUS_LOG_CONTAINER_LIMIT_EXCEEDED",message:"The log service has reached the maximum allowable containers allocated to a log file."},"0xC01A0013":{code:"STATUS_LOG_START_OF_LOG",message:"The log service has attempted to read or write backward past the start of the log."},"0xC01A0014":{code:"STATUS_LOG_POLICY_ALREADY_INSTALLED",message:"The log policy could not be installed because a policy of the same type is already present."},"0xC01A0015":{code:"STATUS_LOG_POLICY_NOT_INSTALLED",message:"The log policy in question was not installed at the time of the request."},"0xC01A0016":{code:"STATUS_LOG_POLICY_INVALID",message:"The installed set of policies on the log is invalid."},"0xC01A0017":{code:"STATUS_LOG_POLICY_CONFLICT",message:"A policy on the log in question prevented the operation from completing."},"0xC01A0018":{code:"STATUS_LOG_PINNED_ARCHIVE_TAIL",message:"The log space cannot be reclaimed because the log is pinned by the archive tail."},"0xC01A0019":{code:"STATUS_LOG_RECORD_NONEXISTENT",message:"The log record is not a record in the log file."},"0xC01A001A":{code:"STATUS_LOG_RECORDS_RESERVED_INVALID",message:"The number of reserved log records or the adjustment of the number of reserved log records is invalid."},"0xC01A001B":{code:"STATUS_LOG_SPACE_RESERVED_INVALID",message:"The reserved log space or the adjustment of the log space is invalid."},"0xC01A001C":{code:"STATUS_LOG_TAIL_INVALID",message:"A new or existing archive tail or the base of the active log is invalid."},"0xC01A001D":{code:"STATUS_LOG_FULL",message:"The log space is exhausted."},"0xC01A001E":{code:"STATUS_LOG_MULTIPLEXED",message:"The log is multiplexed; no direct writes to the physical log are allowed."},"0xC01A001F":{code:"STATUS_LOG_DEDICATED",message:"The operation failed because the log is dedicated."},"0xC01A0020":{code:"STATUS_LOG_ARCHIVE_NOT_IN_PROGRESS",message:"The operation requires an archive context."},"0xC01A0021":{code:"STATUS_LOG_ARCHIVE_IN_PROGRESS",message:"Log archival is in progress."},"0xC01A0022":{code:"STATUS_LOG_EPHEMERAL",message:"The operation requires a nonephemeral log, but the log is ephemeral."},"0xC01A0023":{code:"STATUS_LOG_NOT_ENOUGH_CONTAINERS",message:"The log must have at least two containers before it can be read from or written to."},"0xC01A0024":{code:"STATUS_LOG_CLIENT_ALREADY_REGISTERED",message:"A log client has already registered on the stream."},"0xC01A0025":{code:"STATUS_LOG_CLIENT_NOT_REGISTERED",message:"A log client has not been registered on the stream."},"0xC01A0026":{code:"STATUS_LOG_FULL_HANDLER_IN_PROGRESS",message:"A request has already been made to handle the log full condition."},"0xC01A0027":{code:"STATUS_LOG_CONTAINER_READ_FAILED",message:"The log service encountered an error when attempting to read from a log container."},"0xC01A0028":{code:"STATUS_LOG_CONTAINER_WRITE_FAILED",message:"The log service encountered an error when attempting to write to a log container."},"0xC01A0029":{code:"STATUS_LOG_CONTAINER_OPEN_FAILED",message:"The log service encountered an error when attempting to open a log container."},"0xC01A002A":{code:"STATUS_LOG_CONTAINER_STATE_INVALID",message:"The log service encountered an invalid container state when attempting a requested action."},"0xC01A002B":{code:"STATUS_LOG_STATE_INVALID",message:"The log service is not in the correct state to perform a requested action."},"0xC01A002C":{code:"STATUS_LOG_PINNED",message:"The log space cannot be reclaimed because the log is pinned."},"0xC01A002D":{code:"STATUS_LOG_METADATA_FLUSH_FAILED",message:"The log metadata flush failed."},"0xC01A002E":{code:"STATUS_LOG_INCONSISTENT_SECURITY",message:"Security on the log and its containers is inconsistent."},"0xC01A002F":{code:"STATUS_LOG_APPENDED_FLUSH_FAILED",message:"Records were appended to the log or reservation changes were made, but the log could not be flushed."},"0xC01A0030":{code:"STATUS_LOG_PINNED_RESERVATION",message:"The log is pinned due to reservation consuming most of the log space. Free some reserved records to make space available."},"0xC01B00EA":{code:"STATUS_VIDEO_HUNG_DISPLAY_DRIVER_THREAD",message:"{Display Driver Stopped Responding} The %hs display driver has stopped working normally. Save your work and reboot the system to restore full display functionality. The next time you reboot the computer, a dialog box will allow you to upload data about this failure to Microsoft."},"0xC01C0001":{code:"STATUS_FLT_NO_HANDLER_DEFINED",message:"A handler was not defined by the filter for this operation."},"0xC01C0002":{code:"STATUS_FLT_CONTEXT_ALREADY_DEFINED",message:"A context is already defined for this object."},"0xC01C0003":{code:"STATUS_FLT_INVALID_ASYNCHRONOUS_REQUEST",message:"Asynchronous requests are not valid for this operation."},"0xC01C0004":{code:"STATUS_FLT_DISALLOW_FAST_IO",message:"This is an internal error code used by the filter manager to determine if a fast I/O operation should be forced down the input/output request packet (IRP) path. Minifilters should never return this value."},"0xC01C0005":{code:"STATUS_FLT_INVALID_NAME_REQUEST",message:"An invalid name request was made. The name requested cannot be retrieved at this time."},"0xC01C0006":{code:"STATUS_FLT_NOT_SAFE_TO_POST_OPERATION",message:"Posting this operation to a worker thread for further processing is not safe at this time because it could lead to a system deadlock."},"0xC01C0007":{code:"STATUS_FLT_NOT_INITIALIZED",message:"The Filter Manager was not initialized when a filter tried to register. Make sure that the Filter Manager is loaded as a driver."},"0xC01C0008":{code:"STATUS_FLT_FILTER_NOT_READY",message:"The filter is not ready for attachment to volumes because it has not finished initializing (FltStartFiltering has not been called)."},"0xC01C0009":{code:"STATUS_FLT_POST_OPERATION_CLEANUP",message:"The filter must clean up any operation-specific context at this time because it is being removed from the system before the operation is completed by the lower drivers."},"0xC01C000A":{code:"STATUS_FLT_INTERNAL_ERROR",message:"The Filter Manager had an internal error from which it cannot recover; therefore, the operation has failed. This is usually the result of a filter returning an invalid value from a pre-operation callback."},"0xC01C000B":{code:"STATUS_FLT_DELETING_OBJECT",message:"The object specified for this action is in the process of being deleted; therefore, the action requested cannot be completed at this time."},"0xC01C000C":{code:"STATUS_FLT_MUST_BE_NONPAGED_POOL",message:"A nonpaged pool must be used for this type of context."},"0xC01C000D":{code:"STATUS_FLT_DUPLICATE_ENTRY",message:"A duplicate handler definition has been provided for an operation."},"0xC01C000E":{code:"STATUS_FLT_CBDQ_DISABLED",message:"The callback data queue has been disabled."},"0xC01C000F":{code:"STATUS_FLT_DO_NOT_ATTACH",message:"Do not attach the filter to the volume at this time."},"0xC01C0010":{code:"STATUS_FLT_DO_NOT_DETACH",message:"Do not detach the filter from the volume at this time."},"0xC01C0011":{code:"STATUS_FLT_INSTANCE_ALTITUDE_COLLISION",message:"An instance already exists at this altitude on the volume specified."},"0xC01C0012":{code:"STATUS_FLT_INSTANCE_NAME_COLLISION",message:"An instance already exists with this name on the volume specified."},"0xC01C0013":{code:"STATUS_FLT_FILTER_NOT_FOUND",message:"The system could not find the filter specified."},"0xC01C0014":{code:"STATUS_FLT_VOLUME_NOT_FOUND",message:"The system could not find the volume specified."},"0xC01C0015":{code:"STATUS_FLT_INSTANCE_NOT_FOUND",message:"The system could not find the instance specified."},"0xC01C0016":{code:"STATUS_FLT_CONTEXT_ALLOCATION_NOT_FOUND",message:"No registered context allocation definition was found for the given request."},"0xC01C0017":{code:"STATUS_FLT_INVALID_CONTEXT_REGISTRATION",message:"An invalid parameter was specified during context registration."},"0xC01C0018":{code:"STATUS_FLT_NAME_CACHE_MISS",message:"The name requested was not found in the Filter Manager name cache and could not be retrieved from the file system."},"0xC01C0019":{code:"STATUS_FLT_NO_DEVICE_OBJECT",message:"The requested device object does not exist for the given volume."},"0xC01C001A":{code:"STATUS_FLT_VOLUME_ALREADY_MOUNTED",message:"The specified volume is already mounted."},"0xC01C001B":{code:"STATUS_FLT_ALREADY_ENLISTED",message:"The specified transaction context is already enlisted in a transaction."},"0xC01C001C":{code:"STATUS_FLT_CONTEXT_ALREADY_LINKED",message:"The specified context is already attached to another object."},"0xC01C0020":{code:"STATUS_FLT_NO_WAITER_FOR_REPLY",message:"No waiter is present for the filter's reply to this message."},"0xC01D0001":{code:"STATUS_MONITOR_NO_DESCRIPTOR",message:"A monitor descriptor could not be obtained."},"0xC01D0002":{code:"STATUS_MONITOR_UNKNOWN_DESCRIPTOR_FORMAT",message:"This release does not support the format of the obtained monitor descriptor."},"0xC01D0003":{code:"STATUS_MONITOR_INVALID_DESCRIPTOR_CHECKSUM",message:"The checksum of the obtained monitor descriptor is invalid."},"0xC01D0004":{code:"STATUS_MONITOR_INVALID_STANDARD_TIMING_BLOCK",message:"The monitor descriptor contains an invalid standard timing block."},"0xC01D0005":{code:"STATUS_MONITOR_WMI_DATABLOCK_REGISTRATION_FAILED",message:"WMI data-block registration failed for one of the MSMonitorClass WMI subclasses."},"0xC01D0006":{code:"STATUS_MONITOR_INVALID_SERIAL_NUMBER_MONDSC_BLOCK",message:"The provided monitor descriptor block is either corrupted or does not contain the monitor's detailed serial number."},"0xC01D0007":{code:"STATUS_MONITOR_INVALID_USER_FRIENDLY_MONDSC_BLOCK",message:"The provided monitor descriptor block is either corrupted or does not contain the monitor's user-friendly name."},"0xC01D0008":{code:"STATUS_MONITOR_NO_MORE_DESCRIPTOR_DATA",message:"There is no monitor descriptor data at the specified (offset or size) region."},"0xC01D0009":{code:"STATUS_MONITOR_INVALID_DETAILED_TIMING_BLOCK",message:"The monitor descriptor contains an invalid detailed timing block."},"0xC01D000A":{code:"STATUS_MONITOR_INVALID_MANUFACTURE_DATE",message:"Monitor descriptor contains invalid manufacture date."},"0xC01E0000":{code:"STATUS_GRAPHICS_NOT_EXCLUSIVE_MODE_OWNER",message:"Exclusive mode ownership is needed to create an unmanaged primary allocation."},"0xC01E0001":{code:"STATUS_GRAPHICS_INSUFFICIENT_DMA_BUFFER",message:"The driver needs more DMA buffer space to complete the requested operation."},"0xC01E0002":{code:"STATUS_GRAPHICS_INVALID_DISPLAY_ADAPTER",message:"The specified display adapter handle is invalid."},"0xC01E0003":{code:"STATUS_GRAPHICS_ADAPTER_WAS_RESET",message:"The specified display adapter and all of its state have been reset."},"0xC01E0004":{code:"STATUS_GRAPHICS_INVALID_DRIVER_MODEL",message:"The driver stack does not match the expected driver model."},"0xC01E0005":{code:"STATUS_GRAPHICS_PRESENT_MODE_CHANGED",message:"Present happened but ended up into the changed desktop mode."},"0xC01E0006":{code:"STATUS_GRAPHICS_PRESENT_OCCLUDED",message:"Nothing to present due to desktop occlusion."},"0xC01E0007":{code:"STATUS_GRAPHICS_PRESENT_DENIED",message:"Not able to present due to denial of desktop access."},"0xC01E0008":{code:"STATUS_GRAPHICS_CANNOTCOLORCONVERT",message:"Not able to present with color conversion."},"0xC01E000B":{code:"STATUS_GRAPHICS_PRESENT_REDIRECTION_DISABLED",message:"Present redirection is disabled (desktop windowing management subsystem is off)."},"0xC01E000C":{code:"STATUS_GRAPHICS_PRESENT_UNOCCLUDED",message:"Previous exclusive VidPn source owner has released its ownership"},"0xC01E0100":{code:"STATUS_GRAPHICS_NO_VIDEO_MEMORY",message:"Not enough video memory is available to complete the operation."},"0xC01E0101":{code:"STATUS_GRAPHICS_CANT_LOCK_MEMORY",message:"Could not probe and lock the underlying memory of an allocation."},"0xC01E0102":{code:"STATUS_GRAPHICS_ALLOCATION_BUSY",message:"The allocation is currently busy."},"0xC01E0103":{code:"STATUS_GRAPHICS_TOO_MANY_REFERENCES",message:"An object being referenced has already reached the maximum reference count and cannot be referenced further."},"0xC01E0104":{code:"STATUS_GRAPHICS_TRY_AGAIN_LATER",message:"A problem could not be solved due to an existing condition. Try again later."},"0xC01E0105":{code:"STATUS_GRAPHICS_TRY_AGAIN_NOW",message:"A problem could not be solved due to an existing condition. Try again now."},"0xC01E0106":{code:"STATUS_GRAPHICS_ALLOCATION_INVALID",message:"The allocation is invalid."},"0xC01E0107":{code:"STATUS_GRAPHICS_UNSWIZZLING_APERTURE_UNAVAILABLE",message:"No more unswizzling apertures are currently available."},"0xC01E0108":{code:"STATUS_GRAPHICS_UNSWIZZLING_APERTURE_UNSUPPORTED",message:"The current allocation cannot be unswizzled by an aperture."},"0xC01E0109":{code:"STATUS_GRAPHICS_CANT_EVICT_PINNED_ALLOCATION",message:"The request failed because a pinned allocation cannot be evicted."},"0xC01E0110":{code:"STATUS_GRAPHICS_INVALID_ALLOCATION_USAGE",message:"The allocation cannot be used from its current segment location for the specified operation."},"0xC01E0111":{code:"STATUS_GRAPHICS_CANT_RENDER_LOCKED_ALLOCATION",message:"A locked allocation cannot be used in the current command buffer."},"0xC01E0112":{code:"STATUS_GRAPHICS_ALLOCATION_CLOSED",message:"The allocation being referenced has been closed permanently."},"0xC01E0113":{code:"STATUS_GRAPHICS_INVALID_ALLOCATION_INSTANCE",message:"An invalid allocation instance is being referenced."},"0xC01E0114":{code:"STATUS_GRAPHICS_INVALID_ALLOCATION_HANDLE",message:"An invalid allocation handle is being referenced."},"0xC01E0115":{code:"STATUS_GRAPHICS_WRONG_ALLOCATION_DEVICE",message:"The allocation being referenced does not belong to the current device."},"0xC01E0116":{code:"STATUS_GRAPHICS_ALLOCATION_CONTENT_LOST",message:"The specified allocation lost its content."},"0xC01E0200":{code:"STATUS_GRAPHICS_GPU_EXCEPTION_ON_DEVICE",message:"A GPU exception was detected on the given device. The device cannot be scheduled."},"0xC01E0300":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY",message:"The specified VidPN topology is invalid."},"0xC01E0301":{code:"STATUS_GRAPHICS_VIDPN_TOPOLOGY_NOT_SUPPORTED",message:"The specified VidPN topology is valid but is not supported by this model of the display adapter."},"0xC01E0302":{code:"STATUS_GRAPHICS_VIDPN_TOPOLOGY_CURRENTLY_NOT_SUPPORTED",message:"The specified VidPN topology is valid but is not currently supported by the display adapter due to allocation of its resources."},"0xC01E0303":{code:"STATUS_GRAPHICS_INVALID_VIDPN",message:"The specified VidPN handle is invalid."},"0xC01E0304":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE",message:"The specified video present source is invalid."},"0xC01E0305":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET",message:"The specified video present target is invalid."},"0xC01E0306":{code:"STATUS_GRAPHICS_VIDPN_MODALITY_NOT_SUPPORTED",message:"The specified VidPN modality is not supported (for example, at least two of the pinned modes are not co-functional)."},"0xC01E0308":{code:"STATUS_GRAPHICS_INVALID_VIDPN_SOURCEMODESET",message:"The specified VidPN source mode set is invalid."},"0xC01E0309":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TARGETMODESET",message:"The specified VidPN target mode set is invalid."},"0xC01E030A":{code:"STATUS_GRAPHICS_INVALID_FREQUENCY",message:"The specified video signal frequency is invalid."},"0xC01E030B":{code:"STATUS_GRAPHICS_INVALID_ACTIVE_REGION",message:"The specified video signal active region is invalid."},"0xC01E030C":{code:"STATUS_GRAPHICS_INVALID_TOTAL_REGION",message:"The specified video signal total region is invalid."},"0xC01E0310":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE_MODE",message:"The specified video present source mode is invalid."},"0xC01E0311":{code:"STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET_MODE",message:"The specified video present target mode is invalid."},"0xC01E0312":{code:"STATUS_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET",message:"The pinned mode must remain in the set on the VidPN's co-functional modality enumeration."},"0xC01E0313":{code:"STATUS_GRAPHICS_PATH_ALREADY_IN_TOPOLOGY",message:"The specified video present path is already in the VidPN's topology."},"0xC01E0314":{code:"STATUS_GRAPHICS_MODE_ALREADY_IN_MODESET",message:"The specified mode is already in the mode set."},"0xC01E0315":{code:"STATUS_GRAPHICS_INVALID_VIDEOPRESENTSOURCESET",message:"The specified video present source set is invalid."},"0xC01E0316":{code:"STATUS_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET",message:"The specified video present target set is invalid."},"0xC01E0317":{code:"STATUS_GRAPHICS_SOURCE_ALREADY_IN_SET",message:"The specified video present source is already in the video present source set."},"0xC01E0318":{code:"STATUS_GRAPHICS_TARGET_ALREADY_IN_SET",message:"The specified video present target is already in the video present target set."},"0xC01E0319":{code:"STATUS_GRAPHICS_INVALID_VIDPN_PRESENT_PATH",message:"The specified VidPN present path is invalid."},"0xC01E031A":{code:"STATUS_GRAPHICS_NO_RECOMMENDED_VIDPN_TOPOLOGY",message:"The miniport has no recommendation for augmenting the specified VidPN's topology."},"0xC01E031B":{code:"STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGESET",message:"The specified monitor frequency range set is invalid."},"0xC01E031C":{code:"STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE",message:"The specified monitor frequency range is invalid."},"0xC01E031D":{code:"STATUS_GRAPHICS_FREQUENCYRANGE_NOT_IN_SET",message:"The specified frequency range is not in the specified monitor frequency range set."},"0xC01E031F":{code:"STATUS_GRAPHICS_FREQUENCYRANGE_ALREADY_IN_SET",message:"The specified frequency range is already in the specified monitor frequency range set."},"0xC01E0320":{code:"STATUS_GRAPHICS_STALE_MODESET",message:"The specified mode set is stale. Reacquire the new mode set."},"0xC01E0321":{code:"STATUS_GRAPHICS_INVALID_MONITOR_SOURCEMODESET",message:"The specified monitor source mode set is invalid."},"0xC01E0322":{code:"STATUS_GRAPHICS_INVALID_MONITOR_SOURCE_MODE",message:"The specified monitor source mode is invalid."},"0xC01E0323":{code:"STATUS_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN",message:"The miniport does not have a recommendation regarding the request to provide a functional VidPN given the current display adapter configuration."},"0xC01E0324":{code:"STATUS_GRAPHICS_MODE_ID_MUST_BE_UNIQUE",message:"The ID of the specified mode is being used by another mode in the set."},"0xC01E0325":{code:"STATUS_GRAPHICS_EMPTY_ADAPTER_MONITOR_MODE_SUPPORT_INTERSECTION",message:"The system failed to determine a mode that is supported by both the display adapter and the monitor connected to it."},"0xC01E0326":{code:"STATUS_GRAPHICS_VIDEO_PRESENT_TARGETS_LESS_THAN_SOURCES",message:"The number of video present targets must be greater than or equal to the number of video present sources."},"0xC01E0327":{code:"STATUS_GRAPHICS_PATH_NOT_IN_TOPOLOGY",message:"The specified present path is not in the VidPN's topology."},"0xC01E0328":{code:"STATUS_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_SOURCE",message:"The display adapter must have at least one video present source."},"0xC01E0329":{code:"STATUS_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_TARGET",message:"The display adapter must have at least one video present target."},"0xC01E032A":{code:"STATUS_GRAPHICS_INVALID_MONITORDESCRIPTORSET",message:"The specified monitor descriptor set is invalid."},"0xC01E032B":{code:"STATUS_GRAPHICS_INVALID_MONITORDESCRIPTOR",message:"The specified monitor descriptor is invalid."},"0xC01E032C":{code:"STATUS_GRAPHICS_MONITORDESCRIPTOR_NOT_IN_SET",message:"The specified descriptor is not in the specified monitor descriptor set."},"0xC01E032D":{code:"STATUS_GRAPHICS_MONITORDESCRIPTOR_ALREADY_IN_SET",message:"The specified descriptor is already in the specified monitor descriptor set."},"0xC01E032E":{code:"STATUS_GRAPHICS_MONITORDESCRIPTOR_ID_MUST_BE_UNIQUE",message:"The ID of the specified monitor descriptor is being used by another descriptor in the set."},"0xC01E032F":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TARGET_SUBSET_TYPE",message:"The specified video present target subset type is invalid."},"0xC01E0330":{code:"STATUS_GRAPHICS_RESOURCES_NOT_RELATED",message:"Two or more of the specified resources are not related to each other, as defined by the interface semantics."},"0xC01E0331":{code:"STATUS_GRAPHICS_SOURCE_ID_MUST_BE_UNIQUE",message:"The ID of the specified video present source is being used by another source in the set."},"0xC01E0332":{code:"STATUS_GRAPHICS_TARGET_ID_MUST_BE_UNIQUE",message:"The ID of the specified video present target is being used by another target in the set."},"0xC01E0333":{code:"STATUS_GRAPHICS_NO_AVAILABLE_VIDPN_TARGET",message:"The specified VidPN source cannot be used because there is no available VidPN target to connect it to."},"0xC01E0334":{code:"STATUS_GRAPHICS_MONITOR_COULD_NOT_BE_ASSOCIATED_WITH_ADAPTER",message:"The newly arrived monitor could not be associated with a display adapter."},"0xC01E0335":{code:"STATUS_GRAPHICS_NO_VIDPNMGR",message:"The particular display adapter does not have an associated VidPN manager."},"0xC01E0336":{code:"STATUS_GRAPHICS_NO_ACTIVE_VIDPN",message:"The VidPN manager of the particular display adapter does not have an active VidPN."},"0xC01E0337":{code:"STATUS_GRAPHICS_STALE_VIDPN_TOPOLOGY",message:"The specified VidPN topology is stale; obtain the new topology."},"0xC01E0338":{code:"STATUS_GRAPHICS_MONITOR_NOT_CONNECTED",message:"No monitor is connected on the specified video present target."},"0xC01E0339":{code:"STATUS_GRAPHICS_SOURCE_NOT_IN_TOPOLOGY",message:"The specified source is not part of the specified VidPN's topology."},"0xC01E033A":{code:"STATUS_GRAPHICS_INVALID_PRIMARYSURFACE_SIZE",message:"The specified primary surface size is invalid."},"0xC01E033B":{code:"STATUS_GRAPHICS_INVALID_VISIBLEREGION_SIZE",message:"The specified visible region size is invalid."},"0xC01E033C":{code:"STATUS_GRAPHICS_INVALID_STRIDE",message:"The specified stride is invalid."},"0xC01E033D":{code:"STATUS_GRAPHICS_INVALID_PIXELFORMAT",message:"The specified pixel format is invalid."},"0xC01E033E":{code:"STATUS_GRAPHICS_INVALID_COLORBASIS",message:"The specified color basis is invalid."},"0xC01E033F":{code:"STATUS_GRAPHICS_INVALID_PIXELVALUEACCESSMODE",message:"The specified pixel value access mode is invalid."},"0xC01E0340":{code:"STATUS_GRAPHICS_TARGET_NOT_IN_TOPOLOGY",message:"The specified target is not part of the specified VidPN's topology."},"0xC01E0341":{code:"STATUS_GRAPHICS_NO_DISPLAY_MODE_MANAGEMENT_SUPPORT",message:"Failed to acquire the display mode management interface."},"0xC01E0342":{code:"STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE",message:"The specified VidPN source is already owned by a DMM client and cannot be used until that client releases it."},"0xC01E0343":{code:"STATUS_GRAPHICS_CANT_ACCESS_ACTIVE_VIDPN",message:"The specified VidPN is active and cannot be accessed."},"0xC01E0344":{code:"STATUS_GRAPHICS_INVALID_PATH_IMPORTANCE_ORDINAL",message:"The specified VidPN's present path importance ordinal is invalid."},"0xC01E0345":{code:"STATUS_GRAPHICS_INVALID_PATH_CONTENT_GEOMETRY_TRANSFORMATION",message:"The specified VidPN's present path content geometry transformation is invalid."},"0xC01E0346":{code:"STATUS_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_SUPPORTED",message:"The specified content geometry transformation is not supported on the respective VidPN present path."},"0xC01E0347":{code:"STATUS_GRAPHICS_INVALID_GAMMA_RAMP",message:"The specified gamma ramp is invalid."},"0xC01E0348":{code:"STATUS_GRAPHICS_GAMMA_RAMP_NOT_SUPPORTED",message:"The specified gamma ramp is not supported on the respective VidPN present path."},"0xC01E0349":{code:"STATUS_GRAPHICS_MULTISAMPLING_NOT_SUPPORTED",message:"Multisampling is not supported on the respective VidPN present path."},"0xC01E034A":{code:"STATUS_GRAPHICS_MODE_NOT_IN_MODESET",message:"The specified mode is not in the specified mode set."},"0xC01E034D":{code:"STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY_RECOMMENDATION_REASON",message:"The specified VidPN topology recommendation reason is invalid."},"0xC01E034E":{code:"STATUS_GRAPHICS_INVALID_PATH_CONTENT_TYPE",message:"The specified VidPN present path content type is invalid."},"0xC01E034F":{code:"STATUS_GRAPHICS_INVALID_COPYPROTECTION_TYPE",message:"The specified VidPN present path copy protection type is invalid."},"0xC01E0350":{code:"STATUS_GRAPHICS_UNASSIGNED_MODESET_ALREADY_EXISTS",message:"Only one unassigned mode set can exist at any one time for a particular VidPN source or target."},"0xC01E0352":{code:"STATUS_GRAPHICS_INVALID_SCANLINE_ORDERING",message:"The specified scan line ordering type is invalid."},"0xC01E0353":{code:"STATUS_GRAPHICS_TOPOLOGY_CHANGES_NOT_ALLOWED",message:"The topology changes are not allowed for the specified VidPN."},"0xC01E0354":{code:"STATUS_GRAPHICS_NO_AVAILABLE_IMPORTANCE_ORDINALS",message:"All available importance ordinals are being used in the specified topology."},"0xC01E0355":{code:"STATUS_GRAPHICS_INCOMPATIBLE_PRIVATE_FORMAT",message:"The specified primary surface has a different private-format attribute than the current primary surface."},"0xC01E0356":{code:"STATUS_GRAPHICS_INVALID_MODE_PRUNING_ALGORITHM",message:"The specified mode-pruning algorithm is invalid."},"0xC01E0357":{code:"STATUS_GRAPHICS_INVALID_MONITOR_CAPABILITY_ORIGIN",message:"The specified monitor-capability origin is invalid."},"0xC01E0358":{code:"STATUS_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE_CONSTRAINT",message:"The specified monitor-frequency range constraint is invalid."},"0xC01E0359":{code:"STATUS_GRAPHICS_MAX_NUM_PATHS_REACHED",message:"The maximum supported number of present paths has been reached."},"0xC01E035A":{code:"STATUS_GRAPHICS_CANCEL_VIDPN_TOPOLOGY_AUGMENTATION",message:"The miniport requested that augmentation be canceled for the specified source of the specified VidPN's topology."},"0xC01E035B":{code:"STATUS_GRAPHICS_INVALID_CLIENT_TYPE",message:"The specified client type was not recognized."},"0xC01E035C":{code:"STATUS_GRAPHICS_CLIENTVIDPN_NOT_SET",message:"The client VidPN is not set on this adapter (for example, no user mode-initiated mode changes have taken place on this adapter)."},"0xC01E0400":{code:"STATUS_GRAPHICS_SPECIFIED_CHILD_ALREADY_CONNECTED",message:"The specified display adapter child device already has an external device connected to it."},"0xC01E0401":{code:"STATUS_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED",message:"The display adapter child device does not support reporting a descriptor."},"0xC01E0430":{code:"STATUS_GRAPHICS_NOT_A_LINKED_ADAPTER",message:"The display adapter is not linked to any other adapters."},"0xC01E0431":{code:"STATUS_GRAPHICS_LEADLINK_NOT_ENUMERATED",message:"The lead adapter in a linked configuration was not enumerated yet."},"0xC01E0432":{code:"STATUS_GRAPHICS_CHAINLINKS_NOT_ENUMERATED",message:"Some chain adapters in a linked configuration have not yet been enumerated."},"0xC01E0433":{code:"STATUS_GRAPHICS_ADAPTER_CHAIN_NOT_READY",message:"The chain of linked adapters is not ready to start because of an unknown failure."},"0xC01E0434":{code:"STATUS_GRAPHICS_CHAINLINKS_NOT_STARTED",message:"An attempt was made to start a lead link display adapter when the chain links had not yet started."},"0xC01E0435":{code:"STATUS_GRAPHICS_CHAINLINKS_NOT_POWERED_ON",message:"An attempt was made to turn on a lead link display adapter when the chain links were turned off."},"0xC01E0436":{code:"STATUS_GRAPHICS_INCONSISTENT_DEVICE_LINK_STATE",message:"The adapter link was found in an inconsistent state. Not all adapters are in an expected PNP/power state."},"0xC01E0438":{code:"STATUS_GRAPHICS_NOT_POST_DEVICE_DRIVER",message:"The driver trying to start is not the same as the driver for the posted display adapter."},"0xC01E043B":{code:"STATUS_GRAPHICS_ADAPTER_ACCESS_NOT_EXCLUDED",message:"An operation is being attempted that requires the display adapter to be in a quiescent state."},"0xC01E0500":{code:"STATUS_GRAPHICS_OPM_NOT_SUPPORTED",message:"The driver does not support OPM."},"0xC01E0501":{code:"STATUS_GRAPHICS_COPP_NOT_SUPPORTED",message:"The driver does not support COPP."},"0xC01E0502":{code:"STATUS_GRAPHICS_UAB_NOT_SUPPORTED",message:"The driver does not support UAB."},"0xC01E0503":{code:"STATUS_GRAPHICS_OPM_INVALID_ENCRYPTED_PARAMETERS",message:"The specified encrypted parameters are invalid."},"0xC01E0504":{code:"STATUS_GRAPHICS_OPM_PARAMETER_ARRAY_TOO_SMALL",message:"An array passed to a function cannot hold all of the data that the function wants to put in it."},"0xC01E0505":{code:"STATUS_GRAPHICS_OPM_NO_PROTECTED_OUTPUTS_EXIST",message:"The GDI display device passed to this function does not have any active protected outputs."},"0xC01E0506":{code:"STATUS_GRAPHICS_PVP_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME",message:"The PVP cannot find an actual GDI display device that corresponds to the passed-in GDI display device name."},"0xC01E0507":{code:"STATUS_GRAPHICS_PVP_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP",message:"This function failed because the GDI display device passed to it was not attached to the Windows desktop."},"0xC01E0508":{code:"STATUS_GRAPHICS_PVP_MIRRORING_DEVICES_NOT_SUPPORTED",message:"The PVP does not support mirroring display devices because they do not have any protected outputs."},"0xC01E050A":{code:"STATUS_GRAPHICS_OPM_INVALID_POINTER",message:"The function failed because an invalid pointer parameter was passed to it. A pointer parameter is invalid if it is null, is not correctly aligned, or it points to an invalid address or a kernel mode address."},"0xC01E050B":{code:"STATUS_GRAPHICS_OPM_INTERNAL_ERROR",message:"An internal error caused an operation to fail."},"0xC01E050C":{code:"STATUS_GRAPHICS_OPM_INVALID_HANDLE",message:"The function failed because the caller passed in an invalid OPM user-mode handle."},"0xC01E050D":{code:"STATUS_GRAPHICS_PVP_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE",message:"This function failed because the GDI device passed to it did not have any monitors associated with it."},"0xC01E050E":{code:"STATUS_GRAPHICS_PVP_INVALID_CERTIFICATE_LENGTH",message:"A certificate could not be returned because the certificate buffer passed to the function was too small."},"0xC01E050F":{code:"STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED",message:"DxgkDdiOpmCreateProtectedOutput() could not create a protected output because the video present yarget is in spanning mode."},"0xC01E0510":{code:"STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED",message:"DxgkDdiOpmCreateProtectedOutput() could not create a protected output because the video present target is in theater mode."},"0xC01E0511":{code:"STATUS_GRAPHICS_PVP_HFS_FAILED",message:"The function call failed because the display adapter's hardware functionality scan (HFS) failed to validate the graphics hardware."},"0xC01E0512":{code:"STATUS_GRAPHICS_OPM_INVALID_SRM",message:"The HDCP SRM passed to this function did not comply with section 5 of the HDCP 1.1 specification."},"0xC01E0513":{code:"STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_HDCP",message:"The protected output cannot enable the HDCP system because it does not support it."},"0xC01E0514":{code:"STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_ACP",message:"The protected output cannot enable analog copy protection because it does not support it."},"0xC01E0515":{code:"STATUS_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_CGMSA",message:"The protected output cannot enable the CGMS-A protection technology because it does not support it."},"0xC01E0516":{code:"STATUS_GRAPHICS_OPM_HDCP_SRM_NEVER_SET",message:"DxgkDdiOPMGetInformation() cannot return the version of the SRM being used because the application never successfully passed an SRM to the protected output."},"0xC01E0517":{code:"STATUS_GRAPHICS_OPM_RESOLUTION_TOO_HIGH",message:"DxgkDdiOPMConfigureProtectedOutput() cannot enable the specified output protection technology because the output's screen resolution is too high."},"0xC01E0518":{code:"STATUS_GRAPHICS_OPM_ALL_HDCP_HARDWARE_ALREADY_IN_USE",message:"DxgkDdiOPMConfigureProtectedOutput() cannot enable HDCP because other physical outputs are using the display adapter's HDCP hardware."},"0xC01E051A":{code:"STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_NO_LONGER_EXISTS",message:"The operating system asynchronously destroyed this OPM-protected output because the operating system state changed. This error typically occurs because the monitor PDO associated with this protected output was removed or stopped, the protected output's session became a nonconsole session, or the protected output's desktop became inactive."},"0xC01E051B":{code:"STATUS_GRAPHICS_OPM_SESSION_TYPE_CHANGE_IN_PROGRESS",message:"OPM functions cannot be called when a session is changing its type. Three types of sessions currently exist: console, disconnected, and remote (RDP or ICA)."},"0xC01E051C":{code:"STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_DOES_NOT_HAVE_COPP_SEMANTICS",message:`The DxgkDdiOPMGetCOPPCompatibleInformation, DxgkDdiOPMGetInformation, or DxgkDdiOPMConfigureProtectedOutput function failed. This error is returned only if a protected output has OPM semantics. +DxgkDdiOPMGetCOPPCompatibleInformation always returns this error if a protected output has OPM semantics. +DxgkDdiOPMGetInformation returns this error code if the caller requested COPP-specific information. +DxgkDdiOPMConfigureProtectedOutput returns this error when the caller tries to use a COPP-specific command.`},"0xC01E051D":{code:"STATUS_GRAPHICS_OPM_INVALID_INFORMATION_REQUEST",message:"The DxgkDdiOPMGetInformation and DxgkDdiOPMGetCOPPCompatibleInformation functions return this error code if the passed-in sequence number is not the expected sequence number or the passed-in OMAC value is invalid."},"0xC01E051E":{code:"STATUS_GRAPHICS_OPM_DRIVER_INTERNAL_ERROR",message:"The function failed because an unexpected error occurred inside a display driver."},"0xC01E051F":{code:"STATUS_GRAPHICS_OPM_PROTECTED_OUTPUT_DOES_NOT_HAVE_OPM_SEMANTICS",message:`The DxgkDdiOPMGetCOPPCompatibleInformation, DxgkDdiOPMGetInformation, or DxgkDdiOPMConfigureProtectedOutput function failed. This error is returned only if a protected output has COPP semantics. +DxgkDdiOPMGetCOPPCompatibleInformation returns this error code if the caller requested OPM-specific information. +DxgkDdiOPMGetInformation always returns this error if a protected output has COPP semantics. +DxgkDdiOPMConfigureProtectedOutput returns this error when the caller tries to use an OPM-specific command.`},"0xC01E0520":{code:"STATUS_GRAPHICS_OPM_SIGNALING_NOT_SUPPORTED",message:"The DxgkDdiOPMGetCOPPCompatibleInformation and DxgkDdiOPMConfigureProtectedOutput functions return this error if the display driver does not support the DXGKMDT_OPM_GET_ACP_AND_CGMSA_SIGNALING and DXGKMDT_OPM_SET_ACP_AND_CGMSA_SIGNALING GUIDs."},"0xC01E0521":{code:"STATUS_GRAPHICS_OPM_INVALID_CONFIGURATION_REQUEST",message:"The DxgkDdiOPMConfigureProtectedOutput function returns this error code if the passed-in sequence number is not the expected sequence number or the passed-in OMAC value is invalid."},"0xC01E0580":{code:"STATUS_GRAPHICS_I2C_NOT_SUPPORTED",message:"The monitor connected to the specified video output does not have an I2C bus."},"0xC01E0581":{code:"STATUS_GRAPHICS_I2C_DEVICE_DOES_NOT_EXIST",message:"No device on the I2C bus has the specified address."},"0xC01E0582":{code:"STATUS_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA",message:"An error occurred while transmitting data to the device on the I2C bus."},"0xC01E0583":{code:"STATUS_GRAPHICS_I2C_ERROR_RECEIVING_DATA",message:"An error occurred while receiving data from the device on the I2C bus."},"0xC01E0584":{code:"STATUS_GRAPHICS_DDCCI_VCP_NOT_SUPPORTED",message:"The monitor does not support the specified VCP code."},"0xC01E0585":{code:"STATUS_GRAPHICS_DDCCI_INVALID_DATA",message:"The data received from the monitor is invalid."},"0xC01E0586":{code:"STATUS_GRAPHICS_DDCCI_MONITOR_RETURNED_INVALID_TIMING_STATUS_BYTE",message:"A function call failed because a monitor returned an invalid timing status byte when the operating system used the DDC/CI get timing report and timing message command to get a timing report from a monitor."},"0xC01E0587":{code:"STATUS_GRAPHICS_DDCCI_INVALID_CAPABILITIES_STRING",message:"A monitor returned a DDC/CI capabilities string that did not comply with the ACCESS.bus 3.0, DDC/CI 1.1, or MCCS 2 Revision 1 specification."},"0xC01E0588":{code:"STATUS_GRAPHICS_MCA_INTERNAL_ERROR",message:"An internal error caused an operation to fail."},"0xC01E0589":{code:"STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_COMMAND",message:"An operation failed because a DDC/CI message had an invalid value in its command field."},"0xC01E058A":{code:"STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_LENGTH",message:"This error occurred because a DDC/CI message had an invalid value in its length field."},"0xC01E058B":{code:"STATUS_GRAPHICS_DDCCI_INVALID_MESSAGE_CHECKSUM",message:"This error occurred because the value in a DDC/CI message's checksum field did not match the message's computed checksum value. This error implies that the data was corrupted while it was being transmitted from a monitor to a computer."},"0xC01E058C":{code:"STATUS_GRAPHICS_INVALID_PHYSICAL_MONITOR_HANDLE",message:"This function failed because an invalid monitor handle was passed to it."},"0xC01E058D":{code:"STATUS_GRAPHICS_MONITOR_NO_LONGER_EXISTS",message:"The operating system asynchronously destroyed the monitor that corresponds to this handle because the operating system's state changed. This error typically occurs because the monitor PDO associated with this handle was removed or stopped, or a display mode change occurred. A display mode change occurs when Windows sends a WM_DISPLAYCHANGE message to applications."},"0xC01E05E0":{code:"STATUS_GRAPHICS_ONLY_CONSOLE_SESSION_SUPPORTED",message:"This function can be used only if a program is running in the local console session. It cannot be used if a program is running on a remote desktop session or on a terminal server session."},"0xC01E05E1":{code:"STATUS_GRAPHICS_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME",message:"This function cannot find an actual GDI display device that corresponds to the specified GDI display device name."},"0xC01E05E2":{code:"STATUS_GRAPHICS_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP",message:"The function failed because the specified GDI display device was not attached to the Windows desktop."},"0xC01E05E3":{code:"STATUS_GRAPHICS_MIRRORING_DEVICES_NOT_SUPPORTED",message:"This function does not support GDI mirroring display devices because GDI mirroring display devices do not have any physical monitors associated with them."},"0xC01E05E4":{code:"STATUS_GRAPHICS_INVALID_POINTER",message:"The function failed because an invalid pointer parameter was passed to it. A pointer parameter is invalid if it is null, is not correctly aligned, or points to an invalid address or to a kernel mode address."},"0xC01E05E5":{code:"STATUS_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE",message:"This function failed because the GDI device passed to it did not have a monitor associated with it."},"0xC01E05E6":{code:"STATUS_GRAPHICS_PARAMETER_ARRAY_TOO_SMALL",message:"An array passed to the function cannot hold all of the data that the function must copy into the array."},"0xC01E05E7":{code:"STATUS_GRAPHICS_INTERNAL_ERROR",message:"An internal error caused an operation to fail."},"0xC01E05E8":{code:"STATUS_GRAPHICS_SESSION_TYPE_CHANGE_IN_PROGRESS",message:"The function failed because the current session is changing its type. This function cannot be called when the current session is changing its type. Three types of sessions currently exist: console, disconnected, and remote (RDP or ICA)."},"0xC0210000":{code:"STATUS_FVE_LOCKED_VOLUME",message:"The volume must be unlocked before it can be used."},"0xC0210001":{code:"STATUS_FVE_NOT_ENCRYPTED",message:"The volume is fully decrypted and no key is available."},"0xC0210002":{code:"STATUS_FVE_BAD_INFORMATION",message:"The control block for the encrypted volume is not valid."},"0xC0210003":{code:"STATUS_FVE_TOO_SMALL",message:"Not enough free space remains on the volume to allow encryption."},"0xC0210004":{code:"STATUS_FVE_FAILED_WRONG_FS",message:"The partition cannot be encrypted because the file system is not supported."},"0xC0210005":{code:"STATUS_FVE_FAILED_BAD_FS",message:"The file system is inconsistent. Run the Check Disk utility."},"0xC0210006":{code:"STATUS_FVE_FS_NOT_EXTENDED",message:"The file system does not extend to the end of the volume."},"0xC0210007":{code:"STATUS_FVE_FS_MOUNTED",message:"This operation cannot be performed while a file system is mounted on the volume."},"0xC0210008":{code:"STATUS_FVE_NO_LICENSE",message:"BitLocker Drive Encryption is not included with this version of Windows."},"0xC0210009":{code:"STATUS_FVE_ACTION_NOT_ALLOWED",message:"The requested action was denied by the FVE control engine."},"0xC021000A":{code:"STATUS_FVE_BAD_DATA",message:"The data supplied is malformed."},"0xC021000B":{code:"STATUS_FVE_VOLUME_NOT_BOUND",message:"The volume is not bound to the system."},"0xC021000C":{code:"STATUS_FVE_NOT_DATA_VOLUME",message:"The volume specified is not a data volume."},"0xC021000D":{code:"STATUS_FVE_CONV_READ_ERROR",message:"A read operation failed while converting the volume."},"0xC021000E":{code:"STATUS_FVE_CONV_WRITE_ERROR",message:"A write operation failed while converting the volume."},"0xC021000F":{code:"STATUS_FVE_OVERLAPPED_UPDATE",message:"The control block for the encrypted volume was updated by another thread. Try again."},"0xC0210010":{code:"STATUS_FVE_FAILED_SECTOR_SIZE",message:"The volume encryption algorithm cannot be used on this sector size."},"0xC0210011":{code:"STATUS_FVE_FAILED_AUTHENTICATION",message:"BitLocker recovery authentication failed."},"0xC0210012":{code:"STATUS_FVE_NOT_OS_VOLUME",message:"The volume specified is not the boot operating system volume."},"0xC0210013":{code:"STATUS_FVE_KEYFILE_NOT_FOUND",message:"The BitLocker startup key or recovery password could not be read from external media."},"0xC0210014":{code:"STATUS_FVE_KEYFILE_INVALID",message:"The BitLocker startup key or recovery password file is corrupt or invalid."},"0xC0210015":{code:"STATUS_FVE_KEYFILE_NO_VMK",message:"The BitLocker encryption key could not be obtained from the startup key or the recovery password."},"0xC0210016":{code:"STATUS_FVE_TPM_DISABLED",message:"The TPM is disabled."},"0xC0210017":{code:"STATUS_FVE_TPM_SRK_AUTH_NOT_ZERO",message:"The authorization data for the SRK of the TPM is not zero."},"0xC0210018":{code:"STATUS_FVE_TPM_INVALID_PCR",message:"The system boot information changed or the TPM locked out access to BitLocker encryption keys until the computer is restarted."},"0xC0210019":{code:"STATUS_FVE_TPM_NO_VMK",message:"The BitLocker encryption key could not be obtained from the TPM."},"0xC021001A":{code:"STATUS_FVE_PIN_INVALID",message:"The BitLocker encryption key could not be obtained from the TPM and PIN."},"0xC021001B":{code:"STATUS_FVE_AUTH_INVALID_APPLICATION",message:"A boot application hash does not match the hash computed when BitLocker was turned on."},"0xC021001C":{code:"STATUS_FVE_AUTH_INVALID_CONFIG",message:"The Boot Configuration Data (BCD) settings are not supported or have changed because BitLocker was enabled."},"0xC021001D":{code:"STATUS_FVE_DEBUGGER_ENABLED",message:"Boot debugging is enabled. Run Windows Boot Configuration Data Store Editor (bcdedit.exe) to turn it off."},"0xC021001E":{code:"STATUS_FVE_DRY_RUN_FAILED",message:"The BitLocker encryption key could not be obtained."},"0xC021001F":{code:"STATUS_FVE_BAD_METADATA_POINTER",message:"The metadata disk region pointer is incorrect."},"0xC0210020":{code:"STATUS_FVE_OLD_METADATA_COPY",message:"The backup copy of the metadata is out of date."},"0xC0210021":{code:"STATUS_FVE_REBOOT_REQUIRED",message:"No action was taken because a system restart is required."},"0xC0210022":{code:"STATUS_FVE_RAW_ACCESS",message:"No action was taken because BitLocker Drive Encryption is in RAW access mode."},"0xC0210023":{code:"STATUS_FVE_RAW_BLOCKED",message:"BitLocker Drive Encryption cannot enter RAW access mode for this volume."},"0xC0210026":{code:"STATUS_FVE_NO_FEATURE_LICENSE",message:"This feature of BitLocker Drive Encryption is not included with this version of Windows."},"0xC0210027":{code:"STATUS_FVE_POLICY_USER_DISABLE_RDV_NOT_ALLOWED",message:"Group policy does not permit turning off BitLocker Drive Encryption on roaming data volumes."},"0xC0210028":{code:"STATUS_FVE_CONV_RECOVERY_FAILED",message:"Bitlocker Drive Encryption failed to recover from aborted conversion. This could be due to either all conversion logs being corrupted or the media being write-protected."},"0xC0210029":{code:"STATUS_FVE_VIRTUALIZED_SPACE_TOO_BIG",message:"The requested virtualization size is too big."},"0xC0210030":{code:"STATUS_FVE_VOLUME_TOO_SMALL",message:"The drive is too small to be protected using BitLocker Drive Encryption."},"0xC0220001":{code:"STATUS_FWP_CALLOUT_NOT_FOUND",message:"The callout does not exist."},"0xC0220002":{code:"STATUS_FWP_CONDITION_NOT_FOUND",message:"The filter condition does not exist."},"0xC0220003":{code:"STATUS_FWP_FILTER_NOT_FOUND",message:"The filter does not exist."},"0xC0220004":{code:"STATUS_FWP_LAYER_NOT_FOUND",message:"The layer does not exist."},"0xC0220005":{code:"STATUS_FWP_PROVIDER_NOT_FOUND",message:"The provider does not exist."},"0xC0220006":{code:"STATUS_FWP_PROVIDER_CONTEXT_NOT_FOUND",message:"The provider context does not exist."},"0xC0220007":{code:"STATUS_FWP_SUBLAYER_NOT_FOUND",message:"The sublayer does not exist."},"0xC0220008":{code:"STATUS_FWP_NOT_FOUND",message:"The object does not exist."},"0xC0220009":{code:"STATUS_FWP_ALREADY_EXISTS",message:"An object with that GUID or LUID already exists."},"0xC022000A":{code:"STATUS_FWP_IN_USE",message:"The object is referenced by other objects and cannot be deleted."},"0xC022000B":{code:"STATUS_FWP_DYNAMIC_SESSION_IN_PROGRESS",message:"The call is not allowed from within a dynamic session."},"0xC022000C":{code:"STATUS_FWP_WRONG_SESSION",message:"The call was made from the wrong session and cannot be completed."},"0xC022000D":{code:"STATUS_FWP_NO_TXN_IN_PROGRESS",message:"The call must be made from within an explicit transaction."},"0xC022000E":{code:"STATUS_FWP_TXN_IN_PROGRESS",message:"The call is not allowed from within an explicit transaction."},"0xC022000F":{code:"STATUS_FWP_TXN_ABORTED",message:"The explicit transaction has been forcibly canceled."},"0xC0220010":{code:"STATUS_FWP_SESSION_ABORTED",message:"The session has been canceled."},"0xC0220011":{code:"STATUS_FWP_INCOMPATIBLE_TXN",message:"The call is not allowed from within a read-only transaction."},"0xC0220012":{code:"STATUS_FWP_TIMEOUT",message:"The call timed out while waiting to acquire the transaction lock."},"0xC0220013":{code:"STATUS_FWP_NET_EVENTS_DISABLED",message:"The collection of network diagnostic events is disabled."},"0xC0220014":{code:"STATUS_FWP_INCOMPATIBLE_LAYER",message:"The operation is not supported by the specified layer."},"0xC0220015":{code:"STATUS_FWP_KM_CLIENTS_ONLY",message:"The call is allowed for kernel-mode callers only."},"0xC0220016":{code:"STATUS_FWP_LIFETIME_MISMATCH",message:"The call tried to associate two objects with incompatible lifetimes."},"0xC0220017":{code:"STATUS_FWP_BUILTIN_OBJECT",message:"The object is built-in and cannot be deleted."},"0xC0220018":{code:"STATUS_FWP_TOO_MANY_BOOTTIME_FILTERS",message:"The maximum number of boot-time filters has been reached."},"0xC0220019":{code:"STATUS_FWP_NOTIFICATION_DROPPED",message:"A notification could not be delivered because a message queue has reached maximum capacity."},"0xC022001A":{code:"STATUS_FWP_TRAFFIC_MISMATCH",message:"The traffic parameters do not match those for the security association context."},"0xC022001B":{code:"STATUS_FWP_INCOMPATIBLE_SA_STATE",message:"The call is not allowed for the current security association state."},"0xC022001C":{code:"STATUS_FWP_NULL_POINTER",message:"A required pointer is null."},"0xC022001D":{code:"STATUS_FWP_INVALID_ENUMERATOR",message:"An enumerator is not valid."},"0xC022001E":{code:"STATUS_FWP_INVALID_FLAGS",message:"The flags field contains an invalid value."},"0xC022001F":{code:"STATUS_FWP_INVALID_NET_MASK",message:"A network mask is not valid."},"0xC0220020":{code:"STATUS_FWP_INVALID_RANGE",message:"An FWP_RANGE is not valid."},"0xC0220021":{code:"STATUS_FWP_INVALID_INTERVAL",message:"The time interval is not valid."},"0xC0220022":{code:"STATUS_FWP_ZERO_LENGTH_ARRAY",message:"An array that must contain at least one element has a zero length."},"0xC0220023":{code:"STATUS_FWP_NULL_DISPLAY_NAME",message:"The displayData.name field cannot be null."},"0xC0220024":{code:"STATUS_FWP_INVALID_ACTION_TYPE",message:"The action type is not one of the allowed action types for a filter."},"0xC0220025":{code:"STATUS_FWP_INVALID_WEIGHT",message:"The filter weight is not valid."},"0xC0220026":{code:"STATUS_FWP_MATCH_TYPE_MISMATCH",message:"A filter condition contains a match type that is not compatible with the operands."},"0xC0220027":{code:"STATUS_FWP_TYPE_MISMATCH",message:"An FWP_VALUE or FWPM_CONDITION_VALUE is of the wrong type."},"0xC0220028":{code:"STATUS_FWP_OUT_OF_BOUNDS",message:"An integer value is outside the allowed range."},"0xC0220029":{code:"STATUS_FWP_RESERVED",message:"A reserved field is nonzero."},"0xC022002A":{code:"STATUS_FWP_DUPLICATE_CONDITION",message:"A filter cannot contain multiple conditions operating on a single field."},"0xC022002B":{code:"STATUS_FWP_DUPLICATE_KEYMOD",message:"A policy cannot contain the same keying module more than once."},"0xC022002C":{code:"STATUS_FWP_ACTION_INCOMPATIBLE_WITH_LAYER",message:"The action type is not compatible with the layer."},"0xC022002D":{code:"STATUS_FWP_ACTION_INCOMPATIBLE_WITH_SUBLAYER",message:"The action type is not compatible with the sublayer."},"0xC022002E":{code:"STATUS_FWP_CONTEXT_INCOMPATIBLE_WITH_LAYER",message:"The raw context or the provider context is not compatible with the layer."},"0xC022002F":{code:"STATUS_FWP_CONTEXT_INCOMPATIBLE_WITH_CALLOUT",message:"The raw context or the provider context is not compatible with the callout."},"0xC0220030":{code:"STATUS_FWP_INCOMPATIBLE_AUTH_METHOD",message:"The authentication method is not compatible with the policy type."},"0xC0220031":{code:"STATUS_FWP_INCOMPATIBLE_DH_GROUP",message:"The Diffie-Hellman group is not compatible with the policy type."},"0xC0220032":{code:"STATUS_FWP_EM_NOT_SUPPORTED",message:"An IKE policy cannot contain an Extended Mode policy."},"0xC0220033":{code:"STATUS_FWP_NEVER_MATCH",message:"The enumeration template or subscription will never match any objects."},"0xC0220034":{code:"STATUS_FWP_PROVIDER_CONTEXT_MISMATCH",message:"The provider context is of the wrong type."},"0xC0220035":{code:"STATUS_FWP_INVALID_PARAMETER",message:"The parameter is incorrect."},"0xC0220036":{code:"STATUS_FWP_TOO_MANY_SUBLAYERS",message:"The maximum number of sublayers has been reached."},"0xC0220037":{code:"STATUS_FWP_CALLOUT_NOTIFICATION_FAILED",message:"The notification function for a callout returned an error."},"0xC0220038":{code:"STATUS_FWP_INCOMPATIBLE_AUTH_CONFIG",message:"The IPsec authentication configuration is not compatible with the authentication type."},"0xC0220039":{code:"STATUS_FWP_INCOMPATIBLE_CIPHER_CONFIG",message:"The IPsec cipher configuration is not compatible with the cipher type."},"0xC022003C":{code:"STATUS_FWP_DUPLICATE_AUTH_METHOD",message:"A policy cannot contain the same auth method more than once."},"0xC0220100":{code:"STATUS_FWP_TCPIP_NOT_READY",message:"The TCP/IP stack is not ready."},"0xC0220101":{code:"STATUS_FWP_INJECT_HANDLE_CLOSING",message:"The injection handle is being closed by another thread."},"0xC0220102":{code:"STATUS_FWP_INJECT_HANDLE_STALE",message:"The injection handle is stale."},"0xC0220103":{code:"STATUS_FWP_CANNOT_PEND",message:"The classify cannot be pended."},"0xC0230002":{code:"STATUS_NDIS_CLOSING",message:"The binding to the network interface is being closed."},"0xC0230004":{code:"STATUS_NDIS_BAD_VERSION",message:"An invalid version was specified."},"0xC0230005":{code:"STATUS_NDIS_BAD_CHARACTERISTICS",message:"An invalid characteristics table was used."},"0xC0230006":{code:"STATUS_NDIS_ADAPTER_NOT_FOUND",message:"Failed to find the network interface or the network interface is not ready."},"0xC0230007":{code:"STATUS_NDIS_OPEN_FAILED",message:"Failed to open the network interface."},"0xC0230008":{code:"STATUS_NDIS_DEVICE_FAILED",message:"The network interface has encountered an internal unrecoverable failure."},"0xC0230009":{code:"STATUS_NDIS_MULTICAST_FULL",message:"The multicast list on the network interface is full."},"0xC023000A":{code:"STATUS_NDIS_MULTICAST_EXISTS",message:"An attempt was made to add a duplicate multicast address to the list."},"0xC023000B":{code:"STATUS_NDIS_MULTICAST_NOT_FOUND",message:"At attempt was made to remove a multicast address that was never added."},"0xC023000C":{code:"STATUS_NDIS_REQUEST_ABORTED",message:"The network interface aborted the request."},"0xC023000D":{code:"STATUS_NDIS_RESET_IN_PROGRESS",message:"The network interface cannot process the request because it is being reset."},"0xC023000F":{code:"STATUS_NDIS_INVALID_PACKET",message:"An attempt was made to send an invalid packet on a network interface."},"0xC0230010":{code:"STATUS_NDIS_INVALID_DEVICE_REQUEST",message:"The specified request is not a valid operation for the target device."},"0xC0230011":{code:"STATUS_NDIS_ADAPTER_NOT_READY",message:"The network interface is not ready to complete this operation."},"0xC0230014":{code:"STATUS_NDIS_INVALID_LENGTH",message:"The length of the buffer submitted for this operation is not valid."},"0xC0230015":{code:"STATUS_NDIS_INVALID_DATA",message:"The data used for this operation is not valid."},"0xC0230016":{code:"STATUS_NDIS_BUFFER_TOO_SHORT",message:"The length of the submitted buffer for this operation is too small."},"0xC0230017":{code:"STATUS_NDIS_INVALID_OID",message:"The network interface does not support this object identifier."},"0xC0230018":{code:"STATUS_NDIS_ADAPTER_REMOVED",message:"The network interface has been removed."},"0xC0230019":{code:"STATUS_NDIS_UNSUPPORTED_MEDIA",message:"The network interface does not support this media type."},"0xC023001A":{code:"STATUS_NDIS_GROUP_ADDRESS_IN_USE",message:"An attempt was made to remove a token ring group address that is in use by other components."},"0xC023001B":{code:"STATUS_NDIS_FILE_NOT_FOUND",message:"An attempt was made to map a file that cannot be found."},"0xC023001C":{code:"STATUS_NDIS_ERROR_READING_FILE",message:"An error occurred while NDIS tried to map the file."},"0xC023001D":{code:"STATUS_NDIS_ALREADY_MAPPED",message:"An attempt was made to map a file that is already mapped."},"0xC023001E":{code:"STATUS_NDIS_RESOURCE_CONFLICT",message:"An attempt to allocate a hardware resource failed because the resource is used by another component."},"0xC023001F":{code:"STATUS_NDIS_MEDIA_DISCONNECTED",message:"The I/O operation failed because the network media is disconnected or the wireless access point is out of range."},"0xC0230022":{code:"STATUS_NDIS_INVALID_ADDRESS",message:"The network address used in the request is invalid."},"0xC023002A":{code:"STATUS_NDIS_PAUSED",message:"The offload operation on the network interface has been paused."},"0xC023002B":{code:"STATUS_NDIS_INTERFACE_NOT_FOUND",message:"The network interface was not found."},"0xC023002C":{code:"STATUS_NDIS_UNSUPPORTED_REVISION",message:"The revision number specified in the structure is not supported."},"0xC023002D":{code:"STATUS_NDIS_INVALID_PORT",message:"The specified port does not exist on this network interface."},"0xC023002E":{code:"STATUS_NDIS_INVALID_PORT_STATE",message:"The current state of the specified port on this network interface does not support the requested operation."},"0xC023002F":{code:"STATUS_NDIS_LOW_POWER_STATE",message:"The miniport adapter is in a lower power state."},"0xC02300BB":{code:"STATUS_NDIS_NOT_SUPPORTED",message:"The network interface does not support this request."},"0xC023100F":{code:"STATUS_NDIS_OFFLOAD_POLICY",message:"The TCP connection is not offloadable because of a local policy setting."},"0xC0231012":{code:"STATUS_NDIS_OFFLOAD_CONNECTION_REJECTED",message:"The TCP connection is not offloadable by the Chimney offload target."},"0xC0231013":{code:"STATUS_NDIS_OFFLOAD_PATH_REJECTED",message:"The IP Path object is not in an offloadable state."},"0xC0232000":{code:"STATUS_NDIS_DOT11_AUTO_CONFIG_ENABLED",message:"The wireless LAN interface is in auto-configuration mode and does not support the requested parameter change operation."},"0xC0232001":{code:"STATUS_NDIS_DOT11_MEDIA_IN_USE",message:"The wireless LAN interface is busy and cannot perform the requested operation."},"0xC0232002":{code:"STATUS_NDIS_DOT11_POWER_STATE_INVALID",message:"The wireless LAN interface is power down and does not support the requested operation."},"0xC0232003":{code:"STATUS_NDIS_PM_WOL_PATTERN_LIST_FULL",message:"The list of wake on LAN patterns is full."},"0xC0232004":{code:"STATUS_NDIS_PM_PROTOCOL_OFFLOAD_LIST_FULL",message:"The list of low power protocol offloads is full."},"0xC0360001":{code:"STATUS_IPSEC_BAD_SPI",message:"The SPI in the packet does not match a valid IPsec SA."},"0xC0360002":{code:"STATUS_IPSEC_SA_LIFETIME_EXPIRED",message:"The packet was received on an IPsec SA whose lifetime has expired."},"0xC0360003":{code:"STATUS_IPSEC_WRONG_SA",message:"The packet was received on an IPsec SA that does not match the packet characteristics."},"0xC0360004":{code:"STATUS_IPSEC_REPLAY_CHECK_FAILED",message:"The packet sequence number replay check failed."},"0xC0360005":{code:"STATUS_IPSEC_INVALID_PACKET",message:"The IPsec header and/or trailer in the packet is invalid."},"0xC0360006":{code:"STATUS_IPSEC_INTEGRITY_CHECK_FAILED",message:"The IPsec integrity check failed."},"0xC0360007":{code:"STATUS_IPSEC_CLEAR_TEXT_DROP",message:"IPsec dropped a clear text packet."},"0xC0360008":{code:"STATUS_IPSEC_AUTH_FIREWALL_DROP",message:"IPsec dropped an incoming ESP packet in authenticated firewall mode. This drop is benign."},"0xC0360009":{code:"STATUS_IPSEC_THROTTLE_DROP",message:"IPsec dropped a packet due to DOS throttle."},"0xC0368000":{code:"STATUS_IPSEC_DOSP_BLOCK",message:"IPsec Dos Protection matched an explicit block rule."},"0xC0368001":{code:"STATUS_IPSEC_DOSP_RECEIVED_MULTICAST",message:"IPsec Dos Protection received an IPsec specific multicast packet which is not allowed."},"0xC0368002":{code:"STATUS_IPSEC_DOSP_INVALID_PACKET",message:"IPsec Dos Protection received an incorrectly formatted packet."},"0xC0368003":{code:"STATUS_IPSEC_DOSP_STATE_LOOKUP_FAILED",message:"IPsec Dos Protection failed to lookup state."},"0xC0368004":{code:"STATUS_IPSEC_DOSP_MAX_ENTRIES",message:"IPsec Dos Protection failed to create state because there are already maximum number of entries allowed by policy."},"0xC0368005":{code:"STATUS_IPSEC_DOSP_KEYMOD_NOT_ALLOWED",message:"IPsec Dos Protection received an IPsec negotiation packet for a keying module which is not allowed by policy."},"0xC0368006":{code:"STATUS_IPSEC_DOSP_MAX_PER_IP_RATELIMIT_QUEUES",message:"IPsec Dos Protection failed to create per internal IP ratelimit queue because there is already maximum number of queues allowed by policy."},"0xC038005B":{code:"STATUS_VOLMGR_MIRROR_NOT_SUPPORTED",message:"The system does not support mirrored volumes."},"0xC038005C":{code:"STATUS_VOLMGR_RAID5_NOT_SUPPORTED",message:"The system does not support RAID-5 volumes."},"0xC03A0014":{code:"STATUS_VIRTDISK_PROVIDER_NOT_FOUND",message:"A virtual disk support provider for the specified file was not found."},"0xC03A0015":{code:"STATUS_VIRTDISK_NOT_VIRTUAL_DISK",message:"The specified disk is not a virtual disk."},"0xC03A0016":{code:"STATUS_VHD_PARENT_VHD_ACCESS_DENIED",message:"The chain of virtual hard disks is inaccessible. The process has not been granted access rights to the parent virtual hard disk for the differencing disk."},"0xC03A0017":{code:"STATUS_VHD_CHILD_PARENT_SIZE_MISMATCH",message:"The chain of virtual hard disks is corrupted. There is a mismatch in the virtual sizes of the parent virtual hard disk and differencing disk."},"0xC03A0018":{code:"STATUS_VHD_DIFFERENCING_CHAIN_CYCLE_DETECTED",message:"The chain of virtual hard disks is corrupted. A differencing disk is indicated in its own parent chain."},"0xC03A0019":{code:"STATUS_VHD_DIFFERENCING_CHAIN_ERROR_IN_PARENT",message:"The chain of virtual hard disks is inaccessible. There was an error opening a virtual hard disk further up the chain."}},eOn={"0x00000000":{code:"ERROR_SUCCESS",message:"The operation completed successfully."},"0x00000001":{code:"ERROR_INVALID_FUNCTION",message:"Incorrect function."},"0x00000002":{code:"ERROR_FILE_NOT_FOUND",message:"The system cannot find the file specified."},"0x00000003":{code:"ERROR_PATH_NOT_FOUND",message:"The system cannot find the path specified."},"0x00000004":{code:"ERROR_TOO_MANY_OPEN_FILES",message:"The system cannot open the file."},"0x00000005":{code:"ERROR_ACCESS_DENIED",message:"Access is denied."},"0x00000006":{code:"ERROR_INVALID_HANDLE",message:"The handle is invalid."},"0x00000007":{code:"ERROR_ARENA_TRASHED",message:"The storage control blocks were destroyed."},"0x00000008":{code:"ERROR_NOT_ENOUGH_MEMORY",message:"Not enough storage is available to process this command."},"0x00000009":{code:"ERROR_INVALID_BLOCK",message:"The storage control block address is invalid."},"0x0000000A":{code:"ERROR_BAD_ENVIRONMENT",message:"The environment is incorrect."},"0x0000000B":{code:"ERROR_BAD_FORMAT",message:"An attempt was made to load a program with an incorrect format."},"0x0000000C":{code:"ERROR_INVALID_ACCESS",message:"The access code is invalid."},"0x0000000D":{code:"ERROR_INVALID_DATA",message:"The data is invalid."},"0x0000000E":{code:"ERROR_OUTOFMEMORY",message:"Not enough storage is available to complete this operation."},"0x0000000F":{code:"ERROR_INVALID_DRIVE",message:"The system cannot find the drive specified."},"0x00000010":{code:"ERROR_CURRENT_DIRECTORY",message:"The directory cannot be removed."},"0x00000011":{code:"ERROR_NOT_SAME_DEVICE",message:"The system cannot move the file to a different disk drive."},"0x00000012":{code:"ERROR_NO_MORE_FILES",message:"There are no more files."},"0x00000013":{code:"ERROR_WRITE_PROTECT",message:"The media is write-protected."},"0x00000014":{code:"ERROR_BAD_UNIT",message:"The system cannot find the device specified."},"0x00000015":{code:"ERROR_NOT_READY",message:"The device is not ready."},"0x00000016":{code:"ERROR_BAD_COMMAND",message:"The device does not recognize the command."},"0x00000017":{code:"ERROR_CRC",message:"Data error (cyclic redundancy check)."},"0x00000018":{code:"ERROR_BAD_LENGTH",message:"The program issued a command but the command length is incorrect."},"0x00000019":{code:"ERROR_SEEK",message:"The drive cannot locate a specific area or track on the disk."},"0x0000001A":{code:"ERROR_NOT_DOS_DISK",message:"The specified disk cannot be accessed."},"0x0000001B":{code:"ERROR_SECTOR_NOT_FOUND",message:"The drive cannot find the sector requested."},"0x0000001C":{code:"ERROR_OUT_OF_PAPER",message:"The printer is out of paper."},"0x0000001D":{code:"ERROR_WRITE_FAULT",message:"The system cannot write to the specified device."},"0x0000001E":{code:"ERROR_READ_FAULT",message:"The system cannot read from the specified device."},"0x0000001F":{code:"ERROR_GEN_FAILURE",message:"A device attached to the system is not functioning."},"0x00000020":{code:"ERROR_SHARING_VIOLATION",message:"The process cannot access the file because it is being used by another process."},"0x00000021":{code:"ERROR_LOCK_VIOLATION",message:"The process cannot access the file because another process has locked a portion of the file."},"0x00000022":{code:"ERROR_WRONG_DISK",message:"The wrong disk is in the drive. Insert %2 (Volume Serial Number: %3) into drive %1."},"0x00000024":{code:"ERROR_SHARING_BUFFER_EXCEEDED",message:"Too many files opened for sharing."},"0x00000026":{code:"ERROR_HANDLE_EOF",message:"Reached the end of the file."},"0x00000027":{code:"ERROR_HANDLE_DISK_FULL",message:"The disk is full."},"0x00000032":{code:"ERROR_NOT_SUPPORTED",message:"The request is not supported."},"0x00000033":{code:"ERROR_REM_NOT_LIST",message:"Windows cannot find the network path. Verify that the network path is correct and the destination computer is not busy or turned off. If Windows still cannot find the network path, contact your network administrator."},"0x00000034":{code:"ERROR_DUP_NAME",message:"You were not connected because a duplicate name exists on the network. Go to System in Control Panel to change the computer name, and then try again."},"0x00000035":{code:"ERROR_BAD_NETPATH",message:"The network path was not found."},"0x00000036":{code:"ERROR_NETWORK_BUSY",message:"The network is busy."},"0x00000037":{code:"ERROR_DEV_NOT_EXIST",message:"The specified network resource or device is no longer available."},"0x00000038":{code:"ERROR_TOO_MANY_CMDS",message:"The network BIOS command limit has been reached."},"0x00000039":{code:"ERROR_ADAP_HDW_ERR",message:"A network adapter hardware error occurred."},"0x0000003A":{code:"ERROR_BAD_NET_RESP",message:"The specified server cannot perform the requested operation."},"0x0000003B":{code:"ERROR_UNEXP_NET_ERR",message:"An unexpected network error occurred."},"0x0000003C":{code:"ERROR_BAD_REM_ADAP",message:"The remote adapter is not compatible."},"0x0000003D":{code:"ERROR_PRINTQ_FULL",message:"The print queue is full."},"0x0000003E":{code:"ERROR_NO_SPOOL_SPACE",message:"Space to store the file waiting to be printed is not available on the server."},"0x0000003F":{code:"ERROR_PRINT_CANCELLED",message:"Your file waiting to be printed was deleted."},"0x00000040":{code:"ERROR_NETNAME_DELETED",message:"The specified network name is no longer available."},"0x00000041":{code:"ERROR_NETWORK_ACCESS_DENIED",message:"Network access is denied."},"0x00000042":{code:"ERROR_BAD_DEV_TYPE",message:"The network resource type is not correct."},"0x00000043":{code:"ERROR_BAD_NET_NAME",message:"The network name cannot be found."},"0x00000044":{code:"ERROR_TOO_MANY_NAMES",message:"The name limit for the local computer network adapter card was exceeded."},"0x00000045":{code:"ERROR_TOO_MANY_SESS",message:"The network BIOS session limit was exceeded."},"0x00000046":{code:"ERROR_SHARING_PAUSED",message:"The remote server has been paused or is in the process of being started."},"0x00000047":{code:"ERROR_REQ_NOT_ACCEP",message:"No more connections can be made to this remote computer at this time because the computer has accepted the maximum number of connections."},"0x00000048":{code:"ERROR_REDIR_PAUSED",message:"The specified printer or disk device has been paused."},"0x00000050":{code:"ERROR_FILE_EXISTS",message:"The file exists."},"0x00000052":{code:"ERROR_CANNOT_MAKE",message:"The directory or file cannot be created."},"0x00000053":{code:"ERROR_FAIL_I24",message:"Fail on INT 24."},"0x00000054":{code:"ERROR_OUT_OF_STRUCTURES",message:"Storage to process this request is not available."},"0x00000055":{code:"ERROR_ALREADY_ASSIGNED",message:"The local device name is already in use."},"0x00000056":{code:"ERROR_INVALID_PASSWORD",message:"The specified network password is not correct."},"0x00000057":{code:"ERROR_INVALID_PARAMETER",message:"The parameter is incorrect."},"0x00000058":{code:"ERROR_NET_WRITE_FAULT",message:"A write fault occurred on the network."},"0x00000059":{code:"ERROR_NO_PROC_SLOTS",message:"The system cannot start another process at this time."},"0x00000064":{code:"ERROR_TOO_MANY_SEMAPHORES",message:"Cannot create another system semaphore."},"0x00000065":{code:"ERROR_EXCL_SEM_ALREADY_OWNED",message:"The exclusive semaphore is owned by another process."},"0x00000066":{code:"ERROR_SEM_IS_SET",message:"The semaphore is set and cannot be closed."},"0x00000067":{code:"ERROR_TOO_MANY_SEM_REQUESTS",message:"The semaphore cannot be set again."},"0x00000068":{code:"ERROR_INVALID_AT_INTERRUPT_TIME",message:"Cannot request exclusive semaphores at interrupt time."},"0x00000069":{code:"ERROR_SEM_OWNER_DIED",message:"The previous ownership of this semaphore has ended."},"0x0000006A":{code:"ERROR_SEM_USER_LIMIT",message:"Insert the disk for drive %1."},"0x0000006B":{code:"ERROR_DISK_CHANGE",message:"The program stopped because an alternate disk was not inserted."},"0x0000006C":{code:"ERROR_DRIVE_LOCKED",message:"The disk is in use or locked by another process."},"0x0000006D":{code:"ERROR_BROKEN_PIPE",message:"The pipe has been ended."},"0x0000006E":{code:"ERROR_OPEN_FAILED",message:"The system cannot open the device or file specified."},"0x0000006F":{code:"ERROR_BUFFER_OVERFLOW",message:"The file name is too long."},"0x00000070":{code:"ERROR_DISK_FULL",message:"There is not enough space on the disk."},"0x00000071":{code:"ERROR_NO_MORE_SEARCH_HANDLES",message:"No more internal file identifiers are available."},"0x00000072":{code:"ERROR_INVALID_TARGET_HANDLE",message:"The target internal file identifier is incorrect."},"0x00000075":{code:"ERROR_INVALID_CATEGORY",message:"The Input Output Control (IOCTL) call made by the application program is not correct."},"0x00000076":{code:"ERROR_INVALID_VERIFY_SWITCH",message:"The verify-on-write switch parameter value is not correct."},"0x00000077":{code:"ERROR_BAD_DRIVER_LEVEL",message:"The system does not support the command requested."},"0x00000078":{code:"ERROR_CALL_NOT_IMPLEMENTED",message:"This function is not supported on this system."},"0x00000079":{code:"ERROR_SEM_TIMEOUT",message:"The semaphore time-out period has expired."},"0x0000007A":{code:"ERROR_INSUFFICIENT_BUFFER",message:"The data area passed to a system call is too small."},"0x0000007B":{code:"ERROR_INVALID_NAME",message:"The file name, directory name, or volume label syntax is incorrect."},"0x0000007C":{code:"ERROR_INVALID_LEVEL",message:"The system call level is not correct."},"0x0000007D":{code:"ERROR_NO_VOLUME_LABEL",message:"The disk has no volume label."},"0x0000007E":{code:"ERROR_MOD_NOT_FOUND",message:"The specified module could not be found."},"0x0000007F":{code:"ERROR_PROC_NOT_FOUND",message:"The specified procedure could not be found."},"0x00000080":{code:"ERROR_WAIT_NO_CHILDREN",message:"There are no child processes to wait for."},"0x00000081":{code:"ERROR_CHILD_NOT_COMPLETE",message:"The %1 application cannot be run in Win32 mode."},"0x00000082":{code:"ERROR_DIRECT_ACCESS_HANDLE",message:"Attempt to use a file handle to an open disk partition for an operation other than raw disk I/O."},"0x00000083":{code:"ERROR_NEGATIVE_SEEK",message:"An attempt was made to move the file pointer before the beginning of the file."},"0x00000084":{code:"ERROR_SEEK_ON_DEVICE",message:"The file pointer cannot be set on the specified device or file."},"0x00000085":{code:"ERROR_IS_JOIN_TARGET",message:"A JOIN or SUBST command cannot be used for a drive that contains previously joined drives."},"0x00000086":{code:"ERROR_IS_JOINED",message:"An attempt was made to use a JOIN or SUBST command on a drive that has already been joined."},"0x00000087":{code:"ERROR_IS_SUBSTED",message:"An attempt was made to use a JOIN or SUBST command on a drive that has already been substituted."},"0x00000088":{code:"ERROR_NOT_JOINED",message:"The system tried to delete the JOIN of a drive that is not joined."},"0x00000089":{code:"ERROR_NOT_SUBSTED",message:"The system tried to delete the substitution of a drive that is not substituted."},"0x0000008A":{code:"ERROR_JOIN_TO_JOIN",message:"The system tried to join a drive to a directory on a joined drive."},"0x0000008B":{code:"ERROR_SUBST_TO_SUBST",message:"The system tried to substitute a drive to a directory on a substituted drive."},"0x0000008C":{code:"ERROR_JOIN_TO_SUBST",message:"The system tried to join a drive to a directory on a substituted drive."},"0x0000008D":{code:"ERROR_SUBST_TO_JOIN",message:"The system tried to SUBST a drive to a directory on a joined drive."},"0x0000008E":{code:"ERROR_BUSY_DRIVE",message:"The system cannot perform a JOIN or SUBST at this time."},"0x0000008F":{code:"ERROR_SAME_DRIVE",message:"The system cannot join or substitute a drive to or for a directory on the same drive."},"0x00000090":{code:"ERROR_DIR_NOT_ROOT",message:"The directory is not a subdirectory of the root directory."},"0x00000091":{code:"ERROR_DIR_NOT_EMPTY",message:"The directory is not empty."},"0x00000092":{code:"ERROR_IS_SUBST_PATH",message:"The path specified is being used in a substitute."},"0x00000093":{code:"ERROR_IS_JOIN_PATH",message:"Not enough resources are available to process this command."},"0x00000094":{code:"ERROR_PATH_BUSY",message:"The path specified cannot be used at this time."},"0x00000095":{code:"ERROR_IS_SUBST_TARGET",message:"An attempt was made to join or substitute a drive for which a directory on the drive is the target of a previous substitute."},"0x00000096":{code:"ERROR_SYSTEM_TRACE",message:"System trace information was not specified in your CONFIG.SYS file, or tracing is disallowed."},"0x00000097":{code:"ERROR_INVALID_EVENT_COUNT",message:"The number of specified semaphore events for DosMuxSemWait is not correct."},"0x00000098":{code:"ERROR_TOO_MANY_MUXWAITERS",message:"DosMuxSemWait did not execute; too many semaphores are already set."},"0x00000099":{code:"ERROR_INVALID_LIST_FORMAT",message:"The DosMuxSemWait list is not correct."},"0x0000009A":{code:"ERROR_LABEL_TOO_LONG",message:"The volume label you entered exceeds the label character limit of the destination file system."},"0x0000009B":{code:"ERROR_TOO_MANY_TCBS",message:"Cannot create another thread."},"0x0000009C":{code:"ERROR_SIGNAL_REFUSED",message:"The recipient process has refused the signal."},"0x0000009D":{code:"ERROR_DISCARDED",message:"The segment is already discarded and cannot be locked."},"0x0000009E":{code:"ERROR_NOT_LOCKED",message:"The segment is already unlocked."},"0x0000009F":{code:"ERROR_BAD_THREADID_ADDR",message:"The address for the thread ID is not correct."},"0x000000A0":{code:"ERROR_BAD_ARGUMENTS",message:"One or more arguments are not correct."},"0x000000A1":{code:"ERROR_BAD_PATHNAME",message:"The specified path is invalid."},"0x000000A2":{code:"ERROR_SIGNAL_PENDING",message:"A signal is already pending."},"0x000000A4":{code:"ERROR_MAX_THRDS_REACHED",message:"No more threads can be created in the system."},"0x000000A7":{code:"ERROR_LOCK_FAILED",message:"Unable to lock a region of a file."},"0x000000AA":{code:"ERROR_BUSY",message:"The requested resource is in use."},"0x000000AD":{code:"ERROR_CANCEL_VIOLATION",message:"A lock request was not outstanding for the supplied cancel region."},"0x000000AE":{code:"ERROR_ATOMIC_LOCKS_NOT_SUPPORTED",message:"The file system does not support atomic changes to the lock type."},"0x000000B4":{code:"ERROR_INVALID_SEGMENT_NUMBER",message:"The system detected a segment number that was not correct."},"0x000000B6":{code:"ERROR_INVALID_ORDINAL",message:"The operating system cannot run %1."},"0x000000B7":{code:"ERROR_ALREADY_EXISTS",message:"Cannot create a file when that file already exists."},"0x000000BA":{code:"ERROR_INVALID_FLAG_NUMBER",message:"The flag passed is not correct."},"0x000000BB":{code:"ERROR_SEM_NOT_FOUND",message:"The specified system semaphore name was not found."},"0x000000BC":{code:"ERROR_INVALID_STARTING_CODESEG",message:"The operating system cannot run %1."},"0x000000BD":{code:"ERROR_INVALID_STACKSEG",message:"The operating system cannot run %1."},"0x000000BE":{code:"ERROR_INVALID_MODULETYPE",message:"The operating system cannot run %1."},"0x000000BF":{code:"ERROR_INVALID_EXE_SIGNATURE",message:"Cannot run %1 in Win32 mode."},"0x000000C0":{code:"ERROR_EXE_MARKED_INVALID",message:"The operating system cannot run %1."},"0x000000C1":{code:"ERROR_BAD_EXE_FORMAT",message:"%1 is not a valid Win32 application."},"0x000000C2":{code:"ERROR_ITERATED_DATA_EXCEEDS_64k",message:"The operating system cannot run %1."},"0x000000C3":{code:"ERROR_INVALID_MINALLOCSIZE",message:"The operating system cannot run %1."},"0x000000C4":{code:"ERROR_DYNLINK_FROM_INVALID_RING",message:"The operating system cannot run this application program."},"0x000000C5":{code:"ERROR_IOPL_NOT_ENABLED",message:"The operating system is not presently configured to run this application."},"0x000000C6":{code:"ERROR_INVALID_SEGDPL",message:"The operating system cannot run %1."},"0x000000C7":{code:"ERROR_AUTODATASEG_EXCEEDS_64k",message:"The operating system cannot run this application program."},"0x000000C8":{code:"ERROR_RING2SEG_MUST_BE_MOVABLE",message:"The code segment cannot be greater than or equal to 64 KB."},"0x000000C9":{code:"ERROR_RELOC_CHAIN_XEEDS_SEGLIM",message:"The operating system cannot run %1."},"0x000000CA":{code:"ERROR_INFLOOP_IN_RELOC_CHAIN",message:"The operating system cannot run %1."},"0x000000CB":{code:"ERROR_ENVVAR_NOT_FOUND",message:"The system could not find the environment option that was entered."},"0x000000CD":{code:"ERROR_NO_SIGNAL_SENT",message:"No process in the command subtree has a signal handler."},"0x000000CE":{code:"ERROR_FILENAME_EXCED_RANGE",message:"The file name or extension is too long."},"0x000000CF":{code:"ERROR_RING2_STACK_IN_USE",message:"The ring 2 stack is in use."},"0x000000D0":{code:"ERROR_META_EXPANSION_TOO_LONG",message:"The asterisk (*) or question mark (?) global file name characters are entered incorrectly, or too many global file name characters are specified."},"0x000000D1":{code:"ERROR_INVALID_SIGNAL_NUMBER",message:"The signal being posted is not correct."},"0x000000D2":{code:"ERROR_THREAD_1_INACTIVE",message:"The signal handler cannot be set."},"0x000000D4":{code:"ERROR_LOCKED",message:"The segment is locked and cannot be reallocated."},"0x000000D6":{code:"ERROR_TOO_MANY_MODULES",message:"Too many dynamic-link modules are attached to this program or dynamic-link module."},"0x000000D7":{code:"ERROR_NESTING_NOT_ALLOWED",message:"Cannot nest calls to LoadModule."},"0x000000D8":{code:"ERROR_EXE_MACHINE_TYPE_MISMATCH",message:"This version of %1 is not compatible with the version of Windows you're running. Check your computer's system information to see whether you need an x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher."},"0x000000D9":{code:"ERROR_EXE_CANNOT_MODIFY_SIGNED_BINARY",message:"The image file %1 is signed, unable to modify."},"0x000000DA":{code:"ERROR_EXE_CANNOT_MODIFY_STRONG_SIGNED_BINARY",message:"The image file %1 is strong signed, unable to modify."},"0x000000DC":{code:"ERROR_FILE_CHECKED_OUT",message:"This file is checked out or locked for editing by another user."},"0x000000DD":{code:"ERROR_CHECKOUT_REQUIRED",message:"The file must be checked out before saving changes."},"0x000000DE":{code:"ERROR_BAD_FILE_TYPE",message:"The file type being saved or retrieved has been blocked."},"0x000000DF":{code:"ERROR_FILE_TOO_LARGE",message:"The file size exceeds the limit allowed and cannot be saved."},"0x000000E0":{code:"ERROR_FORMS_AUTH_REQUIRED",message:"Access denied. Before opening files in this location, you must first browse to the website and select the option to sign in automatically."},"0x000000E1":{code:"ERROR_VIRUS_INFECTED",message:"Operation did not complete successfully because the file contains a virus."},"0x000000E2":{code:"ERROR_VIRUS_DELETED",message:"This file contains a virus and cannot be opened. Due to the nature of this virus, the file has been removed from this location."},"0x000000E5":{code:"ERROR_PIPE_LOCAL",message:"The pipe is local."},"0x000000E6":{code:"ERROR_BAD_PIPE",message:"The pipe state is invalid."},"0x000000E7":{code:"ERROR_PIPE_BUSY",message:"All pipe instances are busy."},"0x000000E8":{code:"ERROR_NO_DATA",message:"The pipe is being closed."},"0x000000E9":{code:"ERROR_PIPE_NOT_CONNECTED",message:"No process is on the other end of the pipe."},"0x000000EA":{code:"ERROR_MORE_DATA",message:"More data is available."},"0x000000F0":{code:"ERROR_VC_DISCONNECTED",message:"The session was canceled."},"0x000000FE":{code:"ERROR_INVALID_EA_NAME",message:"The specified extended attribute name was invalid."},"0x000000FF":{code:"ERROR_EA_LIST_INCONSISTENT",message:"The extended attributes are inconsistent."},"0x00000102":{code:"WAIT_TIMEOUT",message:"The wait operation timed out."},"0x00000103":{code:"ERROR_NO_MORE_ITEMS",message:"No more data is available."},"0x0000010A":{code:"ERROR_CANNOT_COPY",message:"The copy functions cannot be used."},"0x0000010B":{code:"ERROR_DIRECTORY",message:"The directory name is invalid."},"0x00000113":{code:"ERROR_EAS_DIDNT_FIT",message:"The extended attributes did not fit in the buffer."},"0x00000114":{code:"ERROR_EA_FILE_CORRUPT",message:"The extended attribute file on the mounted file system is corrupt."},"0x00000115":{code:"ERROR_EA_TABLE_FULL",message:"The extended attribute table file is full."},"0x00000116":{code:"ERROR_INVALID_EA_HANDLE",message:"The specified extended attribute handle is invalid."},"0x0000011A":{code:"ERROR_EAS_NOT_SUPPORTED",message:"The mounted file system does not support extended attributes."},"0x00000120":{code:"ERROR_NOT_OWNER",message:"Attempt to release mutex not owned by caller."},"0x0000012A":{code:"ERROR_TOO_MANY_POSTS",message:"Too many posts were made to a semaphore."},"0x0000012B":{code:"ERROR_PARTIAL_COPY",message:"Only part of a ReadProcessMemory or WriteProcessMemory request was completed."},"0x0000012C":{code:"ERROR_OPLOCK_NOT_GRANTED",message:"The oplock request is denied."},"0x0000012D":{code:"ERROR_INVALID_OPLOCK_PROTOCOL",message:"An invalid oplock acknowledgment was received by the system."},"0x0000012E":{code:"ERROR_DISK_TOO_FRAGMENTED",message:"The volume is too fragmented to complete this operation."},"0x0000012F":{code:"ERROR_DELETE_PENDING",message:"The file cannot be opened because it is in the process of being deleted."},"0x0000013D":{code:"ERROR_MR_MID_NOT_FOUND",message:"The system cannot find message text for message number 0x%1 in the message file for %2."},"0x0000013E":{code:"ERROR_SCOPE_NOT_FOUND",message:"The scope specified was not found."},"0x0000015E":{code:"ERROR_FAIL_NOACTION_REBOOT",message:"No action was taken because a system reboot is required."},"0x0000015F":{code:"ERROR_FAIL_SHUTDOWN",message:"The shutdown operation failed."},"0x00000160":{code:"ERROR_FAIL_RESTART",message:"The restart operation failed."},"0x00000161":{code:"ERROR_MAX_SESSIONS_REACHED",message:"The maximum number of sessions has been reached."},"0x00000190":{code:"ERROR_THREAD_MODE_ALREADY_BACKGROUND",message:"The thread is already in background processing mode."},"0x00000191":{code:"ERROR_THREAD_MODE_NOT_BACKGROUND",message:"The thread is not in background processing mode."},"0x00000192":{code:"ERROR_PROCESS_MODE_ALREADY_BACKGROUND",message:"The process is already in background processing mode."},"0x00000193":{code:"ERROR_PROCESS_MODE_NOT_BACKGROUND",message:"The process is not in background processing mode."},"0x000001E7":{code:"ERROR_INVALID_ADDRESS",message:"Attempt to access invalid address."},"0x000001F4":{code:"ERROR_USER_PROFILE_LOAD",message:"User profile cannot be loaded."},"0x00000216":{code:"ERROR_ARITHMETIC_OVERFLOW",message:"Arithmetic result exceeded 32 bits."},"0x00000217":{code:"ERROR_PIPE_CONNECTED",message:"There is a process on the other end of the pipe."},"0x00000218":{code:"ERROR_PIPE_LISTENING",message:"Waiting for a process to open the other end of the pipe."},"0x00000219":{code:"ERROR_VERIFIER_STOP",message:"Application verifier has found an error in the current process."},"0x0000021A":{code:"ERROR_ABIOS_ERROR",message:"An error occurred in the ABIOS subsystem."},"0x0000021B":{code:"ERROR_WX86_WARNING",message:"A warning occurred in the WX86 subsystem."},"0x0000021C":{code:"ERROR_WX86_ERROR",message:"An error occurred in the WX86 subsystem."},"0x0000021D":{code:"ERROR_TIMER_NOT_CANCELED",message:"An attempt was made to cancel or set a timer that has an associated asynchronous procedure call (APC) and the subject thread is not the thread that originally set the timer with an associated APC routine."},"0x0000021E":{code:"ERROR_UNWIND",message:"Unwind exception code."},"0x0000021F":{code:"ERROR_BAD_STACK",message:"An invalid or unaligned stack was encountered during an unwind operation."},"0x00000220":{code:"ERROR_INVALID_UNWIND_TARGET",message:"An invalid unwind target was encountered during an unwind operation."},"0x00000221":{code:"ERROR_INVALID_PORT_ATTRIBUTES",message:"Invalid object attributes specified to NtCreatePort or invalid port attributes specified to NtConnectPort."},"0x00000222":{code:"ERROR_PORT_MESSAGE_TOO_LONG",message:"Length of message passed to NtRequestPort or NtRequestWaitReplyPort was longer than the maximum message allowed by the port."},"0x00000223":{code:"ERROR_INVALID_QUOTA_LOWER",message:"An attempt was made to lower a quota limit below the current usage."},"0x00000224":{code:"ERROR_DEVICE_ALREADY_ATTACHED",message:"An attempt was made to attach to a device that was already attached to another device."},"0x00000225":{code:"ERROR_INSTRUCTION_MISALIGNMENT",message:"An attempt was made to execute an instruction at an unaligned address, and the host system does not support unaligned instruction references."},"0x00000226":{code:"ERROR_PROFILING_NOT_STARTED",message:"Profiling not started."},"0x00000227":{code:"ERROR_PROFILING_NOT_STOPPED",message:"Profiling not stopped."},"0x00000228":{code:"ERROR_COULD_NOT_INTERPRET",message:"The passed ACL did not contain the minimum required information."},"0x00000229":{code:"ERROR_PROFILING_AT_LIMIT",message:"The number of active profiling objects is at the maximum and no more may be started."},"0x0000022A":{code:"ERROR_CANT_WAIT",message:"Used to indicate that an operation cannot continue without blocking for I/O."},"0x0000022B":{code:"ERROR_CANT_TERMINATE_SELF",message:"Indicates that a thread attempted to terminate itself by default (called NtTerminateThread with NULL) and it was the last thread in the current process."},"0x0000022C":{code:"ERROR_UNEXPECTED_MM_CREATE_ERR",message:"If an MM error is returned that is not defined in the standard FsRtl filter, it is converted to one of the following errors that is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0x0000022D":{code:"ERROR_UNEXPECTED_MM_MAP_ERROR",message:"If an MM error is returned that is not defined in the standard FsRtl filter, it is converted to one of the following errors that is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0x0000022E":{code:"ERROR_UNEXPECTED_MM_EXTEND_ERR",message:"If an MM error is returned that is not defined in the standard FsRtl filter, it is converted to one of the following errors that is guaranteed to be in the filter. In this case, information is lost; however, the filter correctly handles the exception."},"0x0000022F":{code:"ERROR_BAD_FUNCTION_TABLE",message:"A malformed function table was encountered during an unwind operation."},"0x00000230":{code:"ERROR_NO_GUID_TRANSLATION",message:"Indicates that an attempt was made to assign protection to a file system file or directory and one of the SIDs in the security descriptor could not be translated into a GUID that could be stored by the file system. This causes the protection attempt to fail, which may cause a file creation attempt to fail."},"0x00000231":{code:"ERROR_INVALID_LDT_SIZE",message:"Indicates that an attempt was made to grow a local domain table (LDT) by setting its size, or that the size was not an even number of selectors."},"0x00000233":{code:"ERROR_INVALID_LDT_OFFSET",message:"Indicates that the starting value for the LDT information was not an integral multiple of the selector size."},"0x00000234":{code:"ERROR_INVALID_LDT_DESCRIPTOR",message:"Indicates that the user supplied an invalid descriptor when trying to set up LDT descriptors."},"0x00000235":{code:"ERROR_TOO_MANY_THREADS",message:"Indicates a process has too many threads to perform the requested action. For example, assignment of a primary token may only be performed when a process has zero or one threads."},"0x00000236":{code:"ERROR_THREAD_NOT_IN_PROCESS",message:"An attempt was made to operate on a thread within a specific process, but the thread specified is not in the process specified."},"0x00000237":{code:"ERROR_PAGEFILE_QUOTA_EXCEEDED",message:"Page file quota was exceeded."},"0x00000238":{code:"ERROR_LOGON_SERVER_CONFLICT",message:"The Netlogon service cannot start because another Netlogon service running in the domain conflicts with the specified role."},"0x00000239":{code:"ERROR_SYNCHRONIZATION_REQUIRED",message:"The Security Accounts Manager (SAM) database on a Windows Server is significantly out of synchronization with the copy on the domain controller. A complete synchronization is required."},"0x0000023A":{code:"ERROR_NET_OPEN_FAILED",message:"The NtCreateFile API failed. This error should never be returned to an application, it is a place holder for the Windows LAN Manager Redirector to use in its internal error mapping routines."},"0x0000023B":{code:"ERROR_IO_PRIVILEGE_FAILED",message:"{Privilege Failed} The I/O permissions for the process could not be changed."},"0x0000023C":{code:"ERROR_CONTROL_C_EXIT",message:"{Application Exit by CTRL+C} The application terminated as a result of a CTRL+C."},"0x0000023D":{code:"ERROR_MISSING_SYSTEMFILE",message:"{Missing System File} The required system file %hs is bad or missing."},"0x0000023E":{code:"ERROR_UNHANDLED_EXCEPTION",message:"{Application Error} The exception %s (0x%08lx) occurred in the application at location 0x%08lx."},"0x0000023F":{code:"ERROR_APP_INIT_FAILURE",message:"{Application Error} The application failed to initialize properly (0x%lx). Click OK to terminate the application."},"0x00000240":{code:"ERROR_PAGEFILE_CREATE_FAILED",message:"{Unable to Create Paging File} The creation of the paging file %hs failed (%lx). The requested size was %ld."},"0x00000241":{code:"ERROR_INVALID_IMAGE_HASH",message:"The hash for the image cannot be found in the system catalogs. The image is likely corrupt or the victim of tampering."},"0x00000242":{code:"ERROR_NO_PAGEFILE",message:"{No Paging File Specified} No paging file was specified in the system configuration."},"0x00000243":{code:"ERROR_ILLEGAL_FLOAT_CONTEXT",message:"{EXCEPTION} A real-mode application issued a floating-point instruction, and floating-point hardware is not present."},"0x00000244":{code:"ERROR_NO_EVENT_PAIR",message:"An event pair synchronization operation was performed using the thread-specific client/server event pair object, but no event pair object was associated with the thread."},"0x00000245":{code:"ERROR_DOMAIN_CTRLR_CONFIG_ERROR",message:"A Windows Server has an incorrect configuration."},"0x00000246":{code:"ERROR_ILLEGAL_CHARACTER",message:"An illegal character was encountered. For a multibyte character set, this includes a lead byte without a succeeding trail byte. For the Unicode character set, this includes the characters 0xFFFF and 0xFFFE."},"0x00000247":{code:"ERROR_UNDEFINED_CHARACTER",message:"The Unicode character is not defined in the Unicode character set installed on the system."},"0x00000248":{code:"ERROR_FLOPPY_VOLUME",message:"The paging file cannot be created on a floppy disk."},"0x00000249":{code:"ERROR_BIOS_FAILED_TO_CONNECT_INTERRUPT",message:"The system bios failed to connect a system interrupt to the device or bus for which the device is connected."},"0x0000024A":{code:"ERROR_BACKUP_CONTROLLER",message:"This operation is only allowed for the primary domain controller (PDC) of the domain."},"0x0000024B":{code:"ERROR_MUTANT_LIMIT_EXCEEDED",message:"An attempt was made to acquire a mutant such that its maximum count would have been exceeded."},"0x0000024C":{code:"ERROR_FS_DRIVER_REQUIRED",message:"A volume has been accessed for which a file system driver is required that has not yet been loaded."},"0x0000024D":{code:"ERROR_CANNOT_LOAD_REGISTRY_FILE",message:"{Registry File Failure} The registry cannot load the hive (file): %hs or its log or alternate. It is corrupt, absent, or not writable."},"0x0000024E":{code:"ERROR_DEBUG_ATTACH_FAILED",message:"{Unexpected Failure in DebugActiveProcess} An unexpected failure occurred while processing a DebugActiveProcess API request. You may choose OK to terminate the process, or Cancel to ignore the error."},"0x0000024F":{code:"ERROR_SYSTEM_PROCESS_TERMINATED",message:"{Fatal System Error} The %hs system process terminated unexpectedly with a status of 0x%08x (0x%08x 0x%08x). The system has been shut down."},"0x00000250":{code:"ERROR_DATA_NOT_ACCEPTED",message:"{Data Not Accepted} The transport driver interface (TDI) client could not handle the data received during an indication."},"0x00000251":{code:"ERROR_VDM_HARD_ERROR",message:"The NT Virtual DOS Machine (NTVDM) encountered a hard error."},"0x00000252":{code:"ERROR_DRIVER_CANCEL_TIMEOUT",message:"{Cancel Timeout} The driver %hs failed to complete a canceled I/O request in the allotted time."},"0x00000253":{code:"ERROR_REPLY_MESSAGE_MISMATCH",message:"{Reply Message Mismatch} An attempt was made to reply to a local procedure call (LPC) message, but the thread specified by the client ID in the message was not waiting on that message."},"0x00000254":{code:"ERROR_LOST_WRITEBEHIND_DATA",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs. The data has been lost. This error may be caused by a failure of your computer hardware or network connection. Try to save this file elsewhere."},"0x00000255":{code:"ERROR_CLIENT_SERVER_PARAMETERS_INVALID",message:"The parameters passed to the server in the client/server shared memory window were invalid. Too much data may have been put in the shared memory window."},"0x00000256":{code:"ERROR_NOT_TINY_STREAM",message:"The stream is not a tiny stream."},"0x00000257":{code:"ERROR_STACK_OVERFLOW_READ",message:"The request must be handled by the stack overflow code."},"0x00000258":{code:"ERROR_CONVERT_TO_LARGE",message:"Internal OFS status codes indicating how an allocation operation is handled. Either it is retried after the containing onode is moved or the extent stream is converted to a large stream."},"0x00000259":{code:"ERROR_FOUND_OUT_OF_SCOPE",message:"The attempt to find the object found an object matching by ID on the volume but it is out of the scope of the handle used for the operation."},"0x0000025A":{code:"ERROR_ALLOCATE_BUCKET",message:"The bucket array must be grown. Retry transaction after doing so."},"0x0000025B":{code:"ERROR_MARSHALL_OVERFLOW",message:"The user/kernel marshaling buffer has overflowed."},"0x0000025C":{code:"ERROR_INVALID_VARIANT",message:"The supplied variant structure contains invalid data."},"0x0000025D":{code:"ERROR_BAD_COMPRESSION_BUFFER",message:"The specified buffer contains ill-formed data."},"0x0000025E":{code:"ERROR_AUDIT_FAILED",message:"{Audit Failed} An attempt to generate a security audit failed."},"0x0000025F":{code:"ERROR_TIMER_RESOLUTION_NOT_SET",message:"The timer resolution was not previously set by the current process."},"0x00000260":{code:"ERROR_INSUFFICIENT_LOGON_INFO",message:"There is insufficient account information to log you on."},"0x00000261":{code:"ERROR_BAD_DLL_ENTRYPOINT",message:"{Invalid DLL Entrypoint} The dynamic link library %hs is not written correctly. The stack pointer has been left in an inconsistent state. The entry point should be declared as WINAPI or STDCALL. Select YES to fail the DLL load. Select NO to continue execution. Selecting NO may cause the application to operate incorrectly."},"0x00000262":{code:"ERROR_BAD_SERVICE_ENTRYPOINT",message:"{Invalid Service Callback Entrypoint} The %hs service is not written correctly. The stack pointer has been left in an inconsistent state. The callback entry point should be declared as WINAPI or STDCALL. Selecting OK will cause the service to continue operation. However, the service process may operate incorrectly."},"0x00000263":{code:"ERROR_IP_ADDRESS_CONFLICT1",message:"There is an IP address conflict with another system on the network."},"0x00000264":{code:"ERROR_IP_ADDRESS_CONFLICT2",message:"There is an IP address conflict with another system on the network."},"0x00000265":{code:"ERROR_REGISTRY_QUOTA_LIMIT",message:"{Low On Registry Space} The system has reached the maximum size allowed for the system part of the registry. Additional storage requests will be ignored."},"0x00000266":{code:"ERROR_NO_CALLBACK_ACTIVE",message:"A callback return system service cannot be executed when no callback is active."},"0x00000267":{code:"ERROR_PWD_TOO_SHORT",message:"The password provided is too short to meet the policy of your user account. Choose a longer password."},"0x00000268":{code:"ERROR_PWD_TOO_RECENT",message:"The policy of your user account does not allow you to change passwords too frequently. This is done to prevent users from changing back to a familiar, but potentially discovered, password. If you feel your password has been compromised, contact your administrator immediately to have a new one assigned."},"0x00000269":{code:"ERROR_PWD_HISTORY_CONFLICT",message:"You have attempted to change your password to one that you have used in the past. The policy of your user account does not allow this. Select a password that you have not previously used."},"0x0000026A":{code:"ERROR_UNSUPPORTED_COMPRESSION",message:"The specified compression format is unsupported."},"0x0000026B":{code:"ERROR_INVALID_HW_PROFILE",message:"The specified hardware profile configuration is invalid."},"0x0000026C":{code:"ERROR_INVALID_PLUGPLAY_DEVICE_PATH",message:"The specified Plug and Play registry device path is invalid."},"0x0000026D":{code:"ERROR_QUOTA_LIST_INCONSISTENT",message:"The specified quota list is internally inconsistent with its descriptor."},"0x0000026E":{code:"ERROR_EVALUATION_EXPIRATION",message:"{Windows Evaluation Notification} The evaluation period for this installation of Windows has expired. This system will shut down in 1 hour. To restore access to this installation of Windows, upgrade this installation using a licensed distribution of this product."},"0x0000026F":{code:"ERROR_ILLEGAL_DLL_RELOCATION",message:"{Illegal System DLL Relocation} The system DLL %hs was relocated in memory. The application will not run properly. The relocation occurred because the DLL %hs occupied an address range reserved for Windows system DLLs. The vendor supplying the DLL should be contacted for a new DLL."},"0x00000270":{code:"ERROR_DLL_INIT_FAILED_LOGOFF",message:"{DLL Initialization Failed} The application failed to initialize because the window station is shutting down."},"0x00000271":{code:"ERROR_VALIDATE_CONTINUE",message:"The validation process needs to continue on to the next step."},"0x00000272":{code:"ERROR_NO_MORE_MATCHES",message:"There are no more matches for the current index enumeration."},"0x00000273":{code:"ERROR_RANGE_LIST_CONFLICT",message:"The range could not be added to the range list because of a conflict."},"0x00000274":{code:"ERROR_SERVER_SID_MISMATCH",message:"The server process is running under a SID different than that required by the client."},"0x00000275":{code:"ERROR_CANT_ENABLE_DENY_ONLY",message:"A group marked use for deny only cannot be enabled."},"0x00000276":{code:"ERROR_FLOAT_MULTIPLE_FAULTS",message:"{EXCEPTION} Multiple floating point faults."},"0x00000277":{code:"ERROR_FLOAT_MULTIPLE_TRAPS",message:"{EXCEPTION} Multiple floating point traps."},"0x00000278":{code:"ERROR_NOINTERFACE",message:"The requested interface is not supported."},"0x00000279":{code:"ERROR_DRIVER_FAILED_SLEEP",message:"{System Standby Failed} The driver %hs does not support standby mode. Updating this driver may allow the system to go to standby mode."},"0x0000027A":{code:"ERROR_CORRUPT_SYSTEM_FILE",message:"The system file %1 has become corrupt and has been replaced."},"0x0000027B":{code:"ERROR_COMMITMENT_MINIMUM",message:"{Virtual Memory Minimum Too Low} Your system is low on virtual memory. Windows is increasing the size of your virtual memory paging file. During this process, memory requests for some applications may be denied. For more information, see Help."},"0x0000027C":{code:"ERROR_PNP_RESTART_ENUMERATION",message:"A device was removed so enumeration must be restarted."},"0x0000027D":{code:"ERROR_SYSTEM_IMAGE_BAD_SIGNATURE",message:"{Fatal System Error} The system image %s is not properly signed. The file has been replaced with the signed file. The system has been shut down."},"0x0000027E":{code:"ERROR_PNP_REBOOT_REQUIRED",message:"Device will not start without a reboot."},"0x0000027F":{code:"ERROR_INSUFFICIENT_POWER",message:"There is not enough power to complete the requested operation."},"0x00000281":{code:"ERROR_SYSTEM_SHUTDOWN",message:"The system is in the process of shutting down."},"0x00000282":{code:"ERROR_PORT_NOT_SET",message:"An attempt to remove a process DebugPort was made, but a port was not already associated with the process."},"0x00000283":{code:"ERROR_DS_VERSION_CHECK_FAILURE",message:"This version of Windows is not compatible with the behavior version of directory forest, domain, or domain controller."},"0x00000284":{code:"ERROR_RANGE_NOT_FOUND",message:"The specified range could not be found in the range list."},"0x00000286":{code:"ERROR_NOT_SAFE_MODE_DRIVER",message:"The driver was not loaded because the system is booting into safe mode."},"0x00000287":{code:"ERROR_FAILED_DRIVER_ENTRY",message:"The driver was not loaded because it failed its initialization call."},"0x00000288":{code:"ERROR_DEVICE_ENUMERATION_ERROR",message:"The device encountered an error while applying power or reading the device configuration. This may be caused by a failure of your hardware or by a poor connection."},"0x00000289":{code:"ERROR_MOUNT_POINT_NOT_RESOLVED",message:"The create operation failed because the name contained at least one mount point that resolves to a volume to which the specified device object is not attached."},"0x0000028A":{code:"ERROR_INVALID_DEVICE_OBJECT_PARAMETER",message:"The device object parameter is either not a valid device object or is not attached to the volume specified by the file name."},"0x0000028B":{code:"ERROR_MCA_OCCURED",message:"A machine check error has occurred. Check the system event log for additional information."},"0x0000028C":{code:"ERROR_DRIVER_DATABASE_ERROR",message:"There was an error [%2] processing the driver database."},"0x0000028D":{code:"ERROR_SYSTEM_HIVE_TOO_LARGE",message:"The system hive size has exceeded its limit."},"0x0000028E":{code:"ERROR_DRIVER_FAILED_PRIOR_UNLOAD",message:"The driver could not be loaded because a previous version of the driver is still in memory."},"0x0000028F":{code:"ERROR_VOLSNAP_PREPARE_HIBERNATE",message:"{Volume Shadow Copy Service} Wait while the Volume Shadow Copy Service prepares volume %hs for hibernation."},"0x00000290":{code:"ERROR_HIBERNATION_FAILURE",message:"The system has failed to hibernate (the error code is %hs). Hibernation will be disabled until the system is restarted."},"0x00000299":{code:"ERROR_FILE_SYSTEM_LIMITATION",message:"The requested operation could not be completed due to a file system limitation."},"0x0000029C":{code:"ERROR_ASSERTION_FAILURE",message:"An assertion failure has occurred."},"0x0000029D":{code:"ERROR_ACPI_ERROR",message:"An error occurred in the Advanced Configuration and Power Interface (ACPI) subsystem."},"0x0000029E":{code:"ERROR_WOW_ASSERTION",message:"WOW assertion error."},"0x0000029F":{code:"ERROR_PNP_BAD_MPS_TABLE",message:"A device is missing in the system BIOS MultiProcessor Specification (MPS) table. This device will not be used. Contact your system vendor for system BIOS update."},"0x000002A0":{code:"ERROR_PNP_TRANSLATION_FAILED",message:"A translator failed to translate resources."},"0x000002A1":{code:"ERROR_PNP_IRQ_TRANSLATION_FAILED",message:"An interrupt request (IRQ) translator failed to translate resources."},"0x000002A2":{code:"ERROR_PNP_INVALID_ID",message:"Driver %2 returned invalid ID for a child device (%3)."},"0x000002A3":{code:"ERROR_WAKE_SYSTEM_DEBUGGER",message:"{Kernel Debugger Awakened} the system debugger was awakened by an interrupt."},"0x000002A4":{code:"ERROR_HANDLES_CLOSED",message:"{Handles Closed} Handles to objects have been automatically closed because of the requested operation."},"0x000002A5":{code:"ERROR_EXTRANEOUS_INFORMATION",message:"{Too Much Information} The specified ACL contained more information than was expected."},"0x000002A6":{code:"ERROR_RXACT_COMMIT_NECESSARY",message:"This warning level status indicates that the transaction state already exists for the registry subtree, but that a transaction commit was previously aborted. The commit has NOT been completed, but it has not been rolled back either (so it may still be committed if desired)."},"0x000002A7":{code:"ERROR_MEDIA_CHECK",message:"{Media Changed} The media may have changed."},"0x000002A8":{code:"ERROR_GUID_SUBSTITUTION_MADE",message:"{GUID Substitution} During the translation of a GUID to a Windows SID, no administratively defined GUID prefix was found. A substitute prefix was used, which will not compromise system security. However, this may provide more restrictive access than intended."},"0x000002A9":{code:"ERROR_STOPPED_ON_SYMLINK",message:"The create operation stopped after reaching a symbolic link."},"0x000002AA":{code:"ERROR_LONGJUMP",message:"A long jump has been executed."},"0x000002AB":{code:"ERROR_PLUGPLAY_QUERY_VETOED",message:"The Plug and Play query operation was not successful."},"0x000002AC":{code:"ERROR_UNWIND_CONSOLIDATE",message:"A frame consolidation has been executed."},"0x000002AD":{code:"ERROR_REGISTRY_HIVE_RECOVERED",message:"{Registry Hive Recovered} Registry hive (file): %hs was corrupted and it has been recovered. Some data might have been lost."},"0x000002AE":{code:"ERROR_DLL_MIGHT_BE_INSECURE",message:"The application is attempting to run executable code from the module %hs. This may be insecure. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x000002AF":{code:"ERROR_DLL_MIGHT_BE_INCOMPATIBLE",message:"The application is loading executable code from the module %hs. This is secure, but may be incompatible with previous releases of the operating system. An alternative, %hs, is available. Should the application use the secure module %hs?"},"0x000002B0":{code:"ERROR_DBG_EXCEPTION_NOT_HANDLED",message:"Debugger did not handle the exception."},"0x000002B1":{code:"ERROR_DBG_REPLY_LATER",message:"Debugger will reply later."},"0x000002B2":{code:"ERROR_DBG_UNABLE_TO_PROVIDE_HANDLE",message:"Debugger cannot provide handle."},"0x000002B3":{code:"ERROR_DBG_TERMINATE_THREAD",message:"Debugger terminated thread."},"0x000002B4":{code:"ERROR_DBG_TERMINATE_PROCESS",message:"Debugger terminated process."},"0x000002B5":{code:"ERROR_DBG_CONTROL_C",message:"Debugger got control C."},"0x000002B6":{code:"ERROR_DBG_PRINTEXCEPTION_C",message:"Debugger printed exception on control C."},"0x000002B7":{code:"ERROR_DBG_RIPEXCEPTION",message:"Debugger received Routing Information Protocol (RIP) exception."},"0x000002B8":{code:"ERROR_DBG_CONTROL_BREAK",message:"Debugger received control break."},"0x000002B9":{code:"ERROR_DBG_COMMAND_EXCEPTION",message:"Debugger command communication exception."},"0x000002BA":{code:"ERROR_OBJECT_NAME_EXISTS",message:"{Object Exists} An attempt was made to create an object and the object name already existed."},"0x000002BB":{code:"ERROR_THREAD_WAS_SUSPENDED",message:"{Thread Suspended} A thread termination occurred while the thread was suspended. The thread was resumed and termination proceeded."},"0x000002BC":{code:"ERROR_IMAGE_NOT_AT_BASE",message:"{Image Relocated} An image file could not be mapped at the address specified in the image file. Local fixes must be performed on this image."},"0x000002BD":{code:"ERROR_RXACT_STATE_CREATED",message:"This informational level status indicates that a specified registry subtree transaction state did not yet exist and had to be created."},"0x000002BE":{code:"ERROR_SEGMENT_NOTIFICATION",message:"{Segment Load} A virtual DOS machine (VDM) is loading, unloading, or moving an MS-DOS or Win16 program segment image. An exception is raised so a debugger can load, unload, or track symbols and breakpoints within these 16-bit segments."},"0x000002BF":{code:"ERROR_BAD_CURRENT_DIRECTORY",message:"{Invalid Current Directory} The process cannot switch to the startup current directory %hs. Select OK to set current directory to %hs, or select CANCEL to exit."},"0x000002C0":{code:"ERROR_FT_READ_RECOVERY_FROM_BACKUP",message:"{Redundant Read} To satisfy a read request, the NT fault-tolerant file system successfully read the requested data from a redundant copy. This was done because the file system encountered a failure on a member of the fault-tolerant volume, but it was unable to reassign the failing area of the device."},"0x000002C1":{code:"ERROR_FT_WRITE_RECOVERY",message:"{Redundant Write} To satisfy a write request, the Windows NT fault-tolerant file system successfully wrote a redundant copy of the information. This was done because the file system encountered a failure on a member of the fault-tolerant volume, but it was not able to reassign the failing area of the device."},"0x000002C2":{code:"ERROR_IMAGE_MACHINE_TYPE_MISMATCH",message:"{Machine Type Mismatch} The image file %hs is valid, but is for a machine type other than the current machine. Select OK to continue, or CANCEL to fail the DLL load."},"0x000002C3":{code:"ERROR_RECEIVE_PARTIAL",message:"{Partial Data Received} The network transport returned partial data to its client. The remaining data will be sent later."},"0x000002C4":{code:"ERROR_RECEIVE_EXPEDITED",message:"{Expedited Data Received} The network transport returned data to its client that was marked as expedited by the remote system."},"0x000002C5":{code:"ERROR_RECEIVE_PARTIAL_EXPEDITED",message:"{Partial Expedited Data Received} The network transport returned partial data to its client and this data was marked as expedited by the remote system. The remaining data will be sent later."},"0x000002C6":{code:"ERROR_EVENT_DONE",message:"{TDI Event Done} The TDI indication has completed successfully."},"0x000002C7":{code:"ERROR_EVENT_PENDING",message:"{TDI Event Pending} The TDI indication has entered the pending state."},"0x000002C8":{code:"ERROR_CHECKING_FILE_SYSTEM",message:"Checking file system on %wZ."},"0x000002C9":{code:"ERROR_FATAL_APP_EXIT",message:"{Fatal Application Exit} %hs."},"0x000002CA":{code:"ERROR_PREDEFINED_HANDLE",message:"The specified registry key is referenced by a predefined handle."},"0x000002CB":{code:"ERROR_WAS_UNLOCKED",message:"{Page Unlocked} The page protection of a locked page was changed to 'No Access' and the page was unlocked from memory and from the process."},"0x000002CD":{code:"ERROR_WAS_LOCKED",message:"{Page Locked} One of the pages to lock was already locked."},"0x000002CF":{code:"ERROR_ALREADY_WIN32",message:"The value already corresponds with a Win 32 error code."},"0x000002D0":{code:"ERROR_IMAGE_MACHINE_TYPE_MISMATCH_EXE",message:"{Machine Type Mismatch} The image file %hs is valid, but is for a machine type other than the current machine."},"0x000002D1":{code:"ERROR_NO_YIELD_PERFORMED",message:"A yield execution was performed and no thread was available to run."},"0x000002D2":{code:"ERROR_TIMER_RESUME_IGNORED",message:"The resume flag to a timer API was ignored."},"0x000002D3":{code:"ERROR_ARBITRATION_UNHANDLED",message:"The arbiter has deferred arbitration of these resources to its parent."},"0x000002D4":{code:"ERROR_CARDBUS_NOT_SUPPORTED",message:'The inserted CardBus device cannot be started because of a configuration error on %hs"."'},"0x000002D5":{code:"ERROR_MP_PROCESSOR_MISMATCH",message:"The CPUs in this multiprocessor system are not all the same revision level. To use all processors the operating system restricts itself to the features of the least capable processor in the system. If problems occur with this system, contact the CPU manufacturer to see if this mix of processors is supported."},"0x000002D6":{code:"ERROR_HIBERNATED",message:"The system was put into hibernation."},"0x000002D7":{code:"ERROR_RESUME_HIBERNATION",message:"The system was resumed from hibernation."},"0x000002D8":{code:"ERROR_FIRMWARE_UPDATED",message:"Windows has detected that the system firmware (BIOS) was updated (previous firmware date = %2, current firmware date %3)."},"0x000002D9":{code:"ERROR_DRIVERS_LEAKING_LOCKED_PAGES",message:"A device driver is leaking locked I/O pages, causing system degradation. The system has automatically enabled a tracking code to try and catch the culprit."},"0x000002DA":{code:"ERROR_WAKE_SYSTEM",message:"The system has awoken."},"0x000002DF":{code:"ERROR_ABANDONED_WAIT_0",message:"The call failed because the handle associated with it was closed."},"0x000002E4":{code:"ERROR_ELEVATION_REQUIRED",message:"The requested operation requires elevation."},"0x000002E5":{code:"ERROR_REPARSE",message:"A reparse should be performed by the object manager because the name of the file resulted in a symbolic link."},"0x000002E6":{code:"ERROR_OPLOCK_BREAK_IN_PROGRESS",message:"An open/create operation completed while an oplock break is underway."},"0x000002E7":{code:"ERROR_VOLUME_MOUNTED",message:"A new volume has been mounted by a file system."},"0x000002E8":{code:"ERROR_RXACT_COMMITTED",message:"This success level status indicates that the transaction state already exists for the registry subtree, but that a transaction commit was previously aborted. The commit has now been completed."},"0x000002E9":{code:"ERROR_NOTIFY_CLEANUP",message:"This indicates that a notify change request has been completed due to closing the handle which made the notify change request."},"0x000002EA":{code:"ERROR_PRIMARY_TRANSPORT_CONNECT_FAILED",message:"{Connect Failure on Primary Transport} An attempt was made to connect to the remote server %hs on the primary transport, but the connection failed. The computer was able to connect on a secondary transport."},"0x000002EB":{code:"ERROR_PAGE_FAULT_TRANSITION",message:"Page fault was a transition fault."},"0x000002EC":{code:"ERROR_PAGE_FAULT_DEMAND_ZERO",message:"Page fault was a demand zero fault."},"0x000002ED":{code:"ERROR_PAGE_FAULT_COPY_ON_WRITE",message:"Page fault was a demand zero fault."},"0x000002EE":{code:"ERROR_PAGE_FAULT_GUARD_PAGE",message:"Page fault was a demand zero fault."},"0x000002EF":{code:"ERROR_PAGE_FAULT_PAGING_FILE",message:"Page fault was satisfied by reading from a secondary storage device."},"0x000002F0":{code:"ERROR_CACHE_PAGE_LOCKED",message:"Cached page was locked during operation."},"0x000002F1":{code:"ERROR_CRASH_DUMP",message:"Crash dump exists in paging file."},"0x000002F2":{code:"ERROR_BUFFER_ALL_ZEROS",message:"Specified buffer contains all zeros."},"0x000002F3":{code:"ERROR_REPARSE_OBJECT",message:"A reparse should be performed by the object manager because the name of the file resulted in a symbolic link."},"0x000002F4":{code:"ERROR_RESOURCE_REQUIREMENTS_CHANGED",message:"The device has succeeded a query-stop and its resource requirements have changed."},"0x000002F5":{code:"ERROR_TRANSLATION_COMPLETE",message:"The translator has translated these resources into the global space and no further translations should be performed."},"0x000002F6":{code:"ERROR_NOTHING_TO_TERMINATE",message:"A process being terminated has no threads to terminate."},"0x000002F7":{code:"ERROR_PROCESS_NOT_IN_JOB",message:"The specified process is not part of a job."},"0x000002F8":{code:"ERROR_PROCESS_IN_JOB",message:"The specified process is part of a job."},"0x000002F9":{code:"ERROR_VOLSNAP_HIBERNATE_READY",message:"{Volume Shadow Copy Service} The system is now ready for hibernation."},"0x000002FA":{code:"ERROR_FSFILTER_OP_COMPLETED_SUCCESSFULLY",message:"A file system or file system filter driver has successfully completed an FsFilter operation."},"0x000002FB":{code:"ERROR_INTERRUPT_VECTOR_ALREADY_CONNECTED",message:"The specified interrupt vector was already connected."},"0x000002FC":{code:"ERROR_INTERRUPT_STILL_CONNECTED",message:"The specified interrupt vector is still connected."},"0x000002FD":{code:"ERROR_WAIT_FOR_OPLOCK",message:"An operation is blocked waiting for an oplock."},"0x000002FE":{code:"ERROR_DBG_EXCEPTION_HANDLED",message:"Debugger handled exception."},"0x000002FF":{code:"ERROR_DBG_CONTINUE",message:"Debugger continued."},"0x00000300":{code:"ERROR_CALLBACK_POP_STACK",message:"An exception occurred in a user mode callback and the kernel callback frame should be removed."},"0x00000301":{code:"ERROR_COMPRESSION_DISABLED",message:"Compression is disabled for this volume."},"0x00000302":{code:"ERROR_CANTFETCHBACKWARDS",message:"The data provider cannot fetch backward through a result set."},"0x00000303":{code:"ERROR_CANTSCROLLBACKWARDS",message:"The data provider cannot scroll backward through a result set."},"0x00000304":{code:"ERROR_ROWSNOTRELEASED",message:"The data provider requires that previously fetched data is released before asking for more data."},"0x00000305":{code:"ERROR_BAD_ACCESSOR_FLAGS",message:"The data provider was not able to interpret the flags set for a column binding in an accessor."},"0x00000306":{code:"ERROR_ERRORS_ENCOUNTERED",message:"One or more errors occurred while processing the request."},"0x00000307":{code:"ERROR_NOT_CAPABLE",message:"The implementation is not capable of performing the request."},"0x00000308":{code:"ERROR_REQUEST_OUT_OF_SEQUENCE",message:"The client of a component requested an operation that is not valid given the state of the component instance."},"0x00000309":{code:"ERROR_VERSION_PARSE_ERROR",message:"A version number could not be parsed."},"0x0000030A":{code:"ERROR_BADSTARTPOSITION",message:"The iterator's start position is invalid."},"0x0000030B":{code:"ERROR_MEMORY_HARDWARE",message:"The hardware has reported an uncorrectable memory error."},"0x0000030C":{code:"ERROR_DISK_REPAIR_DISABLED",message:"The attempted operation required self-healing to be enabled."},"0x0000030D":{code:"ERROR_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE",message:"The Desktop heap encountered an error while allocating session memory. There is more information in the system event log."},"0x0000030E":{code:"ERROR_SYSTEM_POWERSTATE_TRANSITION",message:"The system power state is transitioning from %2 to %3."},"0x0000030F":{code:"ERROR_SYSTEM_POWERSTATE_COMPLEX_TRANSITION",message:"The system power state is transitioning from %2 to %3 but could enter %4."},"0x00000310":{code:"ERROR_MCA_EXCEPTION",message:"A thread is getting dispatched with MCA EXCEPTION because of MCA."},"0x00000311":{code:"ERROR_ACCESS_AUDIT_BY_POLICY",message:"Access to %1 is monitored by policy rule %2."},"0x00000312":{code:"ERROR_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY",message:"Access to %1 has been restricted by your administrator by policy rule %2."},"0x00000313":{code:"ERROR_ABANDON_HIBERFILE",message:"A valid hibernation file has been invalidated and should be abandoned."},"0x00000314":{code:"ERROR_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused by network connectivity issues. Try to save this file elsewhere."},"0x00000315":{code:"ERROR_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error was returned by the server on which the file exists. Try to save this file elsewhere."},"0x00000316":{code:"ERROR_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR",message:"{Delayed Write Failed} Windows was unable to save all the data for the file %hs; the data has been lost. This error may be caused if the device has been removed or the media is write-protected."},"0x000003E2":{code:"ERROR_EA_ACCESS_DENIED",message:"Access to the extended attribute was denied."},"0x000003E3":{code:"ERROR_OPERATION_ABORTED",message:"The I/O operation has been aborted because of either a thread exit or an application request."},"0x000003E4":{code:"ERROR_IO_INCOMPLETE",message:"Overlapped I/O event is not in a signaled state."},"0x000003E5":{code:"ERROR_IO_PENDING",message:"Overlapped I/O operation is in progress."},"0x000003E6":{code:"ERROR_NOACCESS",message:"Invalid access to memory location."},"0x000003E7":{code:"ERROR_SWAPERROR",message:"Error performing in-page operation."},"0x000003E9":{code:"ERROR_STACK_OVERFLOW",message:"Recursion too deep; the stack overflowed."},"0x000003EA":{code:"ERROR_INVALID_MESSAGE",message:"The window cannot act on the sent message."},"0x000003EB":{code:"ERROR_CAN_NOT_COMPLETE",message:"Cannot complete this function."},"0x000003EC":{code:"ERROR_INVALID_FLAGS",message:"Invalid flags."},"0x000003ED":{code:"ERROR_UNRECOGNIZED_VOLUME",message:"The volume does not contain a recognized file system. Be sure that all required file system drivers are loaded and that the volume is not corrupted."},"0x000003EE":{code:"ERROR_FILE_INVALID",message:"The volume for a file has been externally altered so that the opened file is no longer valid."},"0x000003EF":{code:"ERROR_FULLSCREEN_MODE",message:"The requested operation cannot be performed in full-screen mode."},"0x000003F0":{code:"ERROR_NO_TOKEN",message:"An attempt was made to reference a token that does not exist."},"0x000003F1":{code:"ERROR_BADDB",message:"The configuration registry database is corrupt."},"0x000003F2":{code:"ERROR_BADKEY",message:"The configuration registry key is invalid."},"0x000003F3":{code:"ERROR_CANTOPEN",message:"The configuration registry key could not be opened."},"0x000003F4":{code:"ERROR_CANTREAD",message:"The configuration registry key could not be read."},"0x000003F5":{code:"ERROR_CANTWRITE",message:"The configuration registry key could not be written."},"0x000003F6":{code:"ERROR_REGISTRY_RECOVERED",message:"One of the files in the registry database had to be recovered by use of a log or alternate copy. The recovery was successful."},"0x000003F7":{code:"ERROR_REGISTRY_CORRUPT",message:"The registry is corrupted. The structure of one of the files containing registry data is corrupted, or the system's memory image of the file is corrupted, or the file could not be recovered because the alternate copy or log was absent or corrupted."},"0x000003F8":{code:"ERROR_REGISTRY_IO_FAILED",message:"An I/O operation initiated by the registry failed and cannot be recovered. The registry could not read in, write out, or flush one of the files that contain the system's image of the registry."},"0x000003F9":{code:"ERROR_NOT_REGISTRY_FILE",message:"The system attempted to load or restore a file into the registry, but the specified file is not in a registry file format."},"0x000003FA":{code:"ERROR_KEY_DELETED",message:"Illegal operation attempted on a registry key that has been marked for deletion."},"0x000003FB":{code:"ERROR_NO_LOG_SPACE",message:"System could not allocate the required space in a registry log."},"0x000003FC":{code:"ERROR_KEY_HAS_CHILDREN",message:"Cannot create a symbolic link in a registry key that already has subkeys or values."},"0x000003FD":{code:"ERROR_CHILD_MUST_BE_VOLATILE",message:"Cannot create a stable subkey under a volatile parent key."},"0x000003FE":{code:"ERROR_NOTIFY_ENUM_DIR",message:"A notify change request is being completed and the information is not being returned in the caller's buffer. The caller now needs to enumerate the files to find the changes."},"0x0000041B":{code:"ERROR_DEPENDENT_SERVICES_RUNNING",message:"A stop control has been sent to a service that other running services are dependent on."},"0x0000041C":{code:"ERROR_INVALID_SERVICE_CONTROL",message:"The requested control is not valid for this service."},"0x0000041D":{code:"ERROR_SERVICE_REQUEST_TIMEOUT",message:"The service did not respond to the start or control request in a timely fashion."},"0x0000041E":{code:"ERROR_SERVICE_NO_THREAD",message:"A thread could not be created for the service."},"0x0000041F":{code:"ERROR_SERVICE_DATABASE_LOCKED",message:"The service database is locked."},"0x00000420":{code:"ERROR_SERVICE_ALREADY_RUNNING",message:"An instance of the service is already running."},"0x00000421":{code:"ERROR_INVALID_SERVICE_ACCOUNT",message:"The account name is invalid or does not exist, or the password is invalid for the account name specified."},"0x00000422":{code:"ERROR_SERVICE_DISABLED",message:"The service cannot be started, either because it is disabled or because it has no enabled devices associated with it."},"0x00000423":{code:"ERROR_CIRCULAR_DEPENDENCY",message:"Circular service dependency was specified."},"0x00000424":{code:"ERROR_SERVICE_DOES_NOT_EXIST",message:"The specified service does not exist as an installed service."},"0x00000425":{code:"ERROR_SERVICE_CANNOT_ACCEPT_CTRL",message:"The service cannot accept control messages at this time."},"0x00000426":{code:"ERROR_SERVICE_NOT_ACTIVE",message:"The service has not been started."},"0x00000427":{code:"ERROR_FAILED_SERVICE_CONTROLLER_CONNECT",message:"The service process could not connect to the service controller."},"0x00000428":{code:"ERROR_EXCEPTION_IN_SERVICE",message:"An exception occurred in the service when handling the control request."},"0x00000429":{code:"ERROR_DATABASE_DOES_NOT_EXIST",message:"The database specified does not exist."},"0x0000042A":{code:"ERROR_SERVICE_SPECIFIC_ERROR",message:"The service has returned a service-specific error code."},"0x0000042B":{code:"ERROR_PROCESS_ABORTED",message:"The process terminated unexpectedly."},"0x0000042C":{code:"ERROR_SERVICE_DEPENDENCY_FAIL",message:"The dependency service or group failed to start."},"0x0000042D":{code:"ERROR_SERVICE_LOGON_FAILED",message:"The service did not start due to a logon failure."},"0x0000042E":{code:"ERROR_SERVICE_START_HANG",message:"After starting, the service hung in a start-pending state."},"0x0000042F":{code:"ERROR_INVALID_SERVICE_LOCK",message:"The specified service database lock is invalid."},"0x00000430":{code:"ERROR_SERVICE_MARKED_FOR_DELETE",message:"The specified service has been marked for deletion."},"0x00000431":{code:"ERROR_SERVICE_EXISTS",message:"The specified service already exists."},"0x00000432":{code:"ERROR_ALREADY_RUNNING_LKG",message:"The system is currently running with the last-known-good configuration."},"0x00000433":{code:"ERROR_SERVICE_DEPENDENCY_DELETED",message:"The dependency service does not exist or has been marked for deletion."},"0x00000434":{code:"ERROR_BOOT_ALREADY_ACCEPTED",message:"The current boot has already been accepted for use as the last-known-good control set."},"0x00000435":{code:"ERROR_SERVICE_NEVER_STARTED",message:"No attempts to start the service have been made since the last boot."},"0x00000436":{code:"ERROR_DUPLICATE_SERVICE_NAME",message:"The name is already in use as either a service name or a service display name."},"0x00000437":{code:"ERROR_DIFFERENT_SERVICE_ACCOUNT",message:"The account specified for this service is different from the account specified for other services running in the same process."},"0x00000438":{code:"ERROR_CANNOT_DETECT_DRIVER_FAILURE",message:"Failure actions can only be set for Win32 services, not for drivers."},"0x00000439":{code:"ERROR_CANNOT_DETECT_PROCESS_ABORT",message:"This service runs in the same process as the service control manager. Therefore, the service control manager cannot take action if this service's process terminates unexpectedly."},"0x0000043A":{code:"ERROR_NO_RECOVERY_PROGRAM",message:"No recovery program has been configured for this service."},"0x0000043B":{code:"ERROR_SERVICE_NOT_IN_EXE",message:"The executable program that this service is configured to run in does not implement the service."},"0x0000043C":{code:"ERROR_NOT_SAFEBOOT_SERVICE",message:"This service cannot be started in Safe Mode."},"0x0000044C":{code:"ERROR_END_OF_MEDIA",message:"The physical end of the tape has been reached."},"0x0000044D":{code:"ERROR_FILEMARK_DETECTED",message:"A tape access reached a filemark."},"0x0000044E":{code:"ERROR_BEGINNING_OF_MEDIA",message:"The beginning of the tape or a partition was encountered."},"0x0000044F":{code:"ERROR_SETMARK_DETECTED",message:"A tape access reached the end of a set of files."},"0x00000450":{code:"ERROR_NO_DATA_DETECTED",message:"No more data is on the tape."},"0x00000451":{code:"ERROR_PARTITION_FAILURE",message:"Tape could not be partitioned."},"0x00000452":{code:"ERROR_INVALID_BLOCK_LENGTH",message:"When accessing a new tape of a multivolume partition, the current block size is incorrect."},"0x00000453":{code:"ERROR_DEVICE_NOT_PARTITIONED",message:"Tape partition information could not be found when loading a tape."},"0x00000454":{code:"ERROR_UNABLE_TO_LOCK_MEDIA",message:"Unable to lock the media eject mechanism."},"0x00000455":{code:"ERROR_UNABLE_TO_UNLOAD_MEDIA",message:"Unable to unload the media."},"0x00000456":{code:"ERROR_MEDIA_CHANGED",message:"The media in the drive may have changed."},"0x00000457":{code:"ERROR_BUS_RESET",message:"The I/O bus was reset."},"0x00000458":{code:"ERROR_NO_MEDIA_IN_DRIVE",message:"No media in drive."},"0x00000459":{code:"ERROR_NO_UNICODE_TRANSLATION",message:"No mapping for the Unicode character exists in the target multibyte code page."},"0x0000045A":{code:"ERROR_DLL_INIT_FAILED",message:"A DLL initialization routine failed."},"0x0000045B":{code:"ERROR_SHUTDOWN_IN_PROGRESS",message:"A system shutdown is in progress."},"0x0000045C":{code:"ERROR_NO_SHUTDOWN_IN_PROGRESS",message:"Unable to abort the system shutdown because no shutdown was in progress."},"0x0000045D":{code:"ERROR_IO_DEVICE",message:"The request could not be performed because of an I/O device error."},"0x0000045E":{code:"ERROR_SERIAL_NO_DEVICE",message:"No serial device was successfully initialized. The serial driver will unload."},"0x0000045F":{code:"ERROR_IRQ_BUSY",message:"Unable to open a device that was sharing an IRQ with other devices. At least one other device that uses that IRQ was already opened."},"0x00000460":{code:"ERROR_MORE_WRITES",message:"A serial I/O operation was completed by another write to the serial port. (The IOCTL_SERIAL_XOFF_COUNTER reached zero.)"},"0x00000461":{code:"ERROR_COUNTER_TIMEOUT",message:"A serial I/O operation completed because the time-out period expired. (The IOCTL_SERIAL_XOFF_COUNTER did not reach zero.)"},"0x00000462":{code:"ERROR_FLOPPY_ID_MARK_NOT_FOUND",message:"No ID address mark was found on the floppy disk."},"0x00000463":{code:"ERROR_FLOPPY_WRONG_CYLINDER",message:"Mismatch between the floppy disk sector ID field and the floppy disk controller track address."},"0x00000464":{code:"ERROR_FLOPPY_UNKNOWN_ERROR",message:"The floppy disk controller reported an error that is not recognized by the floppy disk driver."},"0x00000465":{code:"ERROR_FLOPPY_BAD_REGISTERS",message:"The floppy disk controller returned inconsistent results in its registers."},"0x00000466":{code:"ERROR_DISK_RECALIBRATE_FAILED",message:"While accessing the hard disk, a recalibrate operation failed, even after retries."},"0x00000467":{code:"ERROR_DISK_OPERATION_FAILED",message:"While accessing the hard disk, a disk operation failed even after retries."},"0x00000468":{code:"ERROR_DISK_RESET_FAILED",message:"While accessing the hard disk, a disk controller reset was needed, but that also failed."},"0x00000469":{code:"ERROR_EOM_OVERFLOW",message:"Physical end of tape encountered."},"0x0000046A":{code:"ERROR_NOT_ENOUGH_SERVER_MEMORY",message:"Not enough server storage is available to process this command."},"0x0000046B":{code:"ERROR_POSSIBLE_DEADLOCK",message:"A potential deadlock condition has been detected."},"0x0000046C":{code:"ERROR_MAPPED_ALIGNMENT",message:"The base address or the file offset specified does not have the proper alignment."},"0x00000474":{code:"ERROR_SET_POWER_STATE_VETOED",message:"An attempt to change the system power state was vetoed by another application or driver."},"0x00000475":{code:"ERROR_SET_POWER_STATE_FAILED",message:"The system BIOS failed an attempt to change the system power state."},"0x00000476":{code:"ERROR_TOO_MANY_LINKS",message:"An attempt was made to create more links on a file than the file system supports."},"0x0000047E":{code:"ERROR_OLD_WIN_VERSION",message:"The specified program requires a newer version of Windows."},"0x0000047F":{code:"ERROR_APP_WRONG_OS",message:"The specified program is not a Windows or MS-DOS program."},"0x00000480":{code:"ERROR_SINGLE_INSTANCE_APP",message:"Cannot start more than one instance of the specified program."},"0x00000481":{code:"ERROR_RMODE_APP",message:"The specified program was written for an earlier version of Windows."},"0x00000482":{code:"ERROR_INVALID_DLL",message:"One of the library files needed to run this application is damaged."},"0x00000483":{code:"ERROR_NO_ASSOCIATION",message:"No application is associated with the specified file for this operation."},"0x00000484":{code:"ERROR_DDE_FAIL",message:"An error occurred in sending the command to the application."},"0x00000485":{code:"ERROR_DLL_NOT_FOUND",message:"One of the library files needed to run this application cannot be found."},"0x00000486":{code:"ERROR_NO_MORE_USER_HANDLES",message:"The current process has used all of its system allowance of handles for Windows manager objects."},"0x00000487":{code:"ERROR_MESSAGE_SYNC_ONLY",message:"The message can be used only with synchronous operations."},"0x00000488":{code:"ERROR_SOURCE_ELEMENT_EMPTY",message:"The indicated source element has no media."},"0x00000489":{code:"ERROR_DESTINATION_ELEMENT_FULL",message:"The indicated destination element already contains media."},"0x0000048A":{code:"ERROR_ILLEGAL_ELEMENT_ADDRESS",message:"The indicated element does not exist."},"0x0000048B":{code:"ERROR_MAGAZINE_NOT_PRESENT",message:"The indicated element is part of a magazine that is not present."},"0x0000048C":{code:"ERROR_DEVICE_REINITIALIZATION_NEEDED",message:"The indicated device requires re-initialization due to hardware errors."},"0x0000048D":{code:"ERROR_DEVICE_REQUIRES_CLEANING",message:"The device has indicated that cleaning is required before further operations are attempted."},"0x0000048E":{code:"ERROR_DEVICE_DOOR_OPEN",message:"The device has indicated that its door is open."},"0x0000048F":{code:"ERROR_DEVICE_NOT_CONNECTED",message:"The device is not connected."},"0x00000490":{code:"ERROR_NOT_FOUND",message:"Element not found."},"0x00000491":{code:"ERROR_NO_MATCH",message:"There was no match for the specified key in the index."},"0x00000492":{code:"ERROR_SET_NOT_FOUND",message:"The property set specified does not exist on the object."},"0x00000493":{code:"ERROR_POINT_NOT_FOUND",message:"The point passed to GetMouseMovePoints is not in the buffer."},"0x00000494":{code:"ERROR_NO_TRACKING_SERVICE",message:"The tracking (workstation) service is not running."},"0x00000495":{code:"ERROR_NO_VOLUME_ID",message:"The volume ID could not be found."},"0x00000497":{code:"ERROR_UNABLE_TO_REMOVE_REPLACED",message:"Unable to remove the file to be replaced."},"0x00000498":{code:"ERROR_UNABLE_TO_MOVE_REPLACEMENT",message:"Unable to move the replacement file to the file to be replaced. The file to be replaced has retained its original name."},"0x00000499":{code:"ERROR_UNABLE_TO_MOVE_REPLACEMENT_2",message:"Unable to move the replacement file to the file to be replaced. The file to be replaced has been renamed using the backup name."},"0x0000049A":{code:"ERROR_JOURNAL_DELETE_IN_PROGRESS",message:"The volume change journal is being deleted."},"0x0000049B":{code:"ERROR_JOURNAL_NOT_ACTIVE",message:"The volume change journal is not active."},"0x0000049C":{code:"ERROR_POTENTIAL_FILE_FOUND",message:"A file was found, but it may not be the correct file."},"0x0000049D":{code:"ERROR_JOURNAL_ENTRY_DELETED",message:"The journal entry has been deleted from the journal."},"0x000004A6":{code:"ERROR_SHUTDOWN_IS_SCHEDULED",message:"A system shutdown has already been scheduled."},"0x000004A7":{code:"ERROR_SHUTDOWN_USERS_LOGGED_ON",message:"The system shutdown cannot be initiated because there are other users logged on to the computer."},"0x000004B0":{code:"ERROR_BAD_DEVICE",message:"The specified device name is invalid."},"0x000004B1":{code:"ERROR_CONNECTION_UNAVAIL",message:"The device is not currently connected but it is a remembered connection."},"0x000004B2":{code:"ERROR_DEVICE_ALREADY_REMEMBERED",message:"The local device name has a remembered connection to another network resource."},"0x000004B3":{code:"ERROR_NO_NET_OR_BAD_PATH",message:"The network path was either typed incorrectly, does not exist, or the network provider is not currently available. Try retyping the path or contact your network administrator."},"0x000004B4":{code:"ERROR_BAD_PROVIDER",message:"The specified network provider name is invalid."},"0x000004B5":{code:"ERROR_CANNOT_OPEN_PROFILE",message:"Unable to open the network connection profile."},"0x000004B6":{code:"ERROR_BAD_PROFILE",message:"The network connection profile is corrupted."},"0x000004B7":{code:"ERROR_NOT_CONTAINER",message:"Cannot enumerate a noncontainer."},"0x000004B8":{code:"ERROR_EXTENDED_ERROR",message:"An extended error has occurred."},"0x000004B9":{code:"ERROR_INVALID_GROUPNAME",message:"The format of the specified group name is invalid."},"0x000004BA":{code:"ERROR_INVALID_COMPUTERNAME",message:"The format of the specified computer name is invalid."},"0x000004BB":{code:"ERROR_INVALID_EVENTNAME",message:"The format of the specified event name is invalid."},"0x000004BC":{code:"ERROR_INVALID_DOMAINNAME",message:"The format of the specified domain name is invalid."},"0x000004BD":{code:"ERROR_INVALID_SERVICENAME",message:"The format of the specified service name is invalid."},"0x000004BE":{code:"ERROR_INVALID_NETNAME",message:"The format of the specified network name is invalid."},"0x000004BF":{code:"ERROR_INVALID_SHARENAME",message:"The format of the specified share name is invalid."},"0x000004C0":{code:"ERROR_INVALID_PASSWORDNAME",message:"The format of the specified password is invalid."},"0x000004C1":{code:"ERROR_INVALID_MESSAGENAME",message:"The format of the specified message name is invalid."},"0x000004C2":{code:"ERROR_INVALID_MESSAGEDEST",message:"The format of the specified message destination is invalid."},"0x000004C3":{code:"ERROR_SESSION_CREDENTIAL_CONFLICT",message:"Multiple connections to a server or shared resource by the same user, using more than one user name, are not allowed. Disconnect all previous connections to the server or shared resource and try again."},"0x000004C4":{code:"ERROR_REMOTE_SESSION_LIMIT_EXCEEDED",message:"An attempt was made to establish a session to a network server, but there are already too many sessions established to that server."},"0x000004C5":{code:"ERROR_DUP_DOMAINNAME",message:"The workgroup or domain name is already in use by another computer on the network."},"0x000004C6":{code:"ERROR_NO_NETWORK",message:"The network is not present or not started."},"0x000004C7":{code:"ERROR_CANCELLED",message:"The operation was canceled by the user."},"0x000004C8":{code:"ERROR_USER_MAPPED_FILE",message:"The requested operation cannot be performed on a file with a user-mapped section open."},"0x000004C9":{code:"ERROR_CONNECTION_REFUSED",message:"The remote system refused the network connection."},"0x000004CA":{code:"ERROR_GRACEFUL_DISCONNECT",message:"The network connection was gracefully closed."},"0x000004CB":{code:"ERROR_ADDRESS_ALREADY_ASSOCIATED",message:"The network transport endpoint already has an address associated with it."},"0x000004CC":{code:"ERROR_ADDRESS_NOT_ASSOCIATED",message:"An address has not yet been associated with the network endpoint."},"0x000004CD":{code:"ERROR_CONNECTION_INVALID",message:"An operation was attempted on a nonexistent network connection."},"0x000004CE":{code:"ERROR_CONNECTION_ACTIVE",message:"An invalid operation was attempted on an active network connection."},"0x000004CF":{code:"ERROR_NETWORK_UNREACHABLE",message:"The network location cannot be reached. For information about network troubleshooting, see Windows Help."},"0x000004D0":{code:"ERROR_HOST_UNREACHABLE",message:"The network location cannot be reached. For information about network troubleshooting, see Windows Help."},"0x000004D1":{code:"ERROR_PROTOCOL_UNREACHABLE",message:"The network location cannot be reached. For information about network troubleshooting, see Windows Help."},"0x000004D2":{code:"ERROR_PORT_UNREACHABLE",message:"No service is operating at the destination network endpoint on the remote system."},"0x000004D3":{code:"ERROR_REQUEST_ABORTED",message:"The request was aborted."},"0x000004D4":{code:"ERROR_CONNECTION_ABORTED",message:"The network connection was aborted by the local system."},"0x000004D5":{code:"ERROR_RETRY",message:"The operation could not be completed. A retry should be performed."},"0x000004D6":{code:"ERROR_CONNECTION_COUNT_LIMIT",message:"A connection to the server could not be made because the limit on the number of concurrent connections for this account has been reached."},"0x000004D7":{code:"ERROR_LOGIN_TIME_RESTRICTION",message:"Attempting to log on during an unauthorized time of day for this account."},"0x000004D8":{code:"ERROR_LOGIN_WKSTA_RESTRICTION",message:"The account is not authorized to log on from this station."},"0x000004D9":{code:"ERROR_INCORRECT_ADDRESS",message:"The network address could not be used for the operation requested."},"0x000004DA":{code:"ERROR_ALREADY_REGISTERED",message:"The service is already registered."},"0x000004DB":{code:"ERROR_SERVICE_NOT_FOUND",message:"The specified service does not exist."},"0x000004DC":{code:"ERROR_NOT_AUTHENTICATED",message:"The operation being requested was not performed because the user has not been authenticated."},"0x000004DD":{code:"ERROR_NOT_LOGGED_ON",message:"The operation being requested was not performed because the user has not logged on to the network. The specified service does not exist."},"0x000004DE":{code:"ERROR_CONTINUE",message:"Continue with work in progress."},"0x000004DF":{code:"ERROR_ALREADY_INITIALIZED",message:"An attempt was made to perform an initialization operation when initialization has already been completed."},"0x000004E0":{code:"ERROR_NO_MORE_DEVICES",message:"No more local devices."},"0x000004E1":{code:"ERROR_NO_SUCH_SITE",message:"The specified site does not exist."},"0x000004E2":{code:"ERROR_DOMAIN_CONTROLLER_EXISTS",message:"A domain controller with the specified name already exists."},"0x000004E3":{code:"ERROR_ONLY_IF_CONNECTED",message:"This operation is supported only when you are connected to the server."},"0x000004E4":{code:"ERROR_OVERRIDE_NOCHANGES",message:"The group policy framework should call the extension even if there are no changes."},"0x000004E5":{code:"ERROR_BAD_USER_PROFILE",message:"The specified user does not have a valid profile."},"0x000004E6":{code:"ERROR_NOT_SUPPORTED_ON_SBS",message:"This operation is not supported on a computer running Windows Server 2003 for Small Business Server."},"0x000004E7":{code:"ERROR_SERVER_SHUTDOWN_IN_PROGRESS",message:"The server machine is shutting down."},"0x000004E8":{code:"ERROR_HOST_DOWN",message:"The remote system is not available. For information about network troubleshooting, see Windows Help."},"0x000004E9":{code:"ERROR_NON_ACCOUNT_SID",message:"The security identifier provided is not from an account domain."},"0x000004EA":{code:"ERROR_NON_DOMAIN_SID",message:"The security identifier provided does not have a domain component."},"0x000004EB":{code:"ERROR_APPHELP_BLOCK",message:"AppHelp dialog canceled, thus preventing the application from starting."},"0x000004EC":{code:"ERROR_ACCESS_DISABLED_BY_POLICY",message:"This program is blocked by Group Policy. For more information, contact your system administrator."},"0x000004ED":{code:"ERROR_REG_NAT_CONSUMPTION",message:"A program attempt to use an invalid register value. Normally caused by an uninitialized register. This error is Itanium specific."},"0x000004EE":{code:"ERROR_CSCSHARE_OFFLINE",message:"The share is currently offline or does not exist."},"0x000004EF":{code:"ERROR_PKINIT_FAILURE",message:"The Kerberos protocol encountered an error while validating the KDC certificate during smartcard logon. There is more information in the system event log."},"0x000004F0":{code:"ERROR_SMARTCARD_SUBSYSTEM_FAILURE",message:"The Kerberos protocol encountered an error while attempting to utilize the smartcard subsystem."},"0x000004F1":{code:"ERROR_DOWNGRADE_DETECTED",message:"The system detected a possible attempt to compromise security. Ensure that you can contact the server that authenticated you."},"0x000004F7":{code:"ERROR_MACHINE_LOCKED",message:"The machine is locked and cannot be shut down without the force option."},"0x000004F9":{code:"ERROR_CALLBACK_SUPPLIED_INVALID_DATA",message:"An application-defined callback gave invalid data when called."},"0x000004FA":{code:"ERROR_SYNC_FOREGROUND_REFRESH_REQUIRED",message:"The Group Policy framework should call the extension in the synchronous foreground policy refresh."},"0x000004FB":{code:"ERROR_DRIVER_BLOCKED",message:"This driver has been blocked from loading."},"0x000004FC":{code:"ERROR_INVALID_IMPORT_OF_NON_DLL",message:"A DLL referenced a module that was neither a DLL nor the process's executable image."},"0x000004FD":{code:"ERROR_ACCESS_DISABLED_WEBBLADE",message:"Windows cannot open this program because it has been disabled."},"0x000004FE":{code:"ERROR_ACCESS_DISABLED_WEBBLADE_TAMPER",message:"Windows cannot open this program because the license enforcement system has been tampered with or become corrupted."},"0x000004FF":{code:"ERROR_RECOVERY_FAILURE",message:"A transaction recover failed."},"0x00000500":{code:"ERROR_ALREADY_FIBER",message:"The current thread has already been converted to a fiber."},"0x00000501":{code:"ERROR_ALREADY_THREAD",message:"The current thread has already been converted from a fiber."},"0x00000502":{code:"ERROR_STACK_BUFFER_OVERRUN",message:"The system detected an overrun of a stack-based buffer in this application. This overrun could potentially allow a malicious user to gain control of this application."},"0x00000503":{code:"ERROR_PARAMETER_QUOTA_EXCEEDED",message:"Data present in one of the parameters is more than the function can operate on."},"0x00000504":{code:"ERROR_DEBUGGER_INACTIVE",message:"An attempt to perform an operation on a debug object failed because the object is in the process of being deleted."},"0x00000505":{code:"ERROR_DELAY_LOAD_FAILED",message:"An attempt to delay-load a .dll or get a function address in a delay-loaded .dll failed."},"0x00000506":{code:"ERROR_VDM_DISALLOWED",message:"%1 is a 16-bit application. You do not have permissions to execute 16-bit applications. Check your permissions with your system administrator."},"0x00000507":{code:"ERROR_UNIDENTIFIED_ERROR",message:"Insufficient information exists to identify the cause of failure."},"0x00000508":{code:"ERROR_INVALID_CRUNTIME_PARAMETER",message:"The parameter passed to a C runtime function is incorrect."},"0x00000509":{code:"ERROR_BEYOND_VDL",message:"The operation occurred beyond the valid data length of the file."},"0x0000050A":{code:"ERROR_INCOMPATIBLE_SERVICE_SID_TYPE",message:"The service start failed because one or more services in the same process have an incompatible service SID type setting. A service with a restricted service SID type can only coexist in the same process with other services with a restricted SID type."},"0x0000050B":{code:"ERROR_DRIVER_PROCESS_TERMINATED",message:"The process hosting the driver for this device has been terminated."},"0x0000050C":{code:"ERROR_IMPLEMENTATION_LIMIT",message:"An operation attempted to exceed an implementation-defined limit."},"0x0000050D":{code:"ERROR_PROCESS_IS_PROTECTED",message:"Either the target process, or the target thread's containing process, is a protected process."},"0x0000050E":{code:"ERROR_SERVICE_NOTIFY_CLIENT_LAGGING",message:"The service notification client is lagging too far behind the current state of services in the machine."},"0x0000050F":{code:"ERROR_DISK_QUOTA_EXCEEDED",message:"An operation failed because the storage quota was exceeded."},"0x00000510":{code:"ERROR_CONTENT_BLOCKED",message:"An operation failed because the content was blocked."},"0x00000511":{code:"ERROR_INCOMPATIBLE_SERVICE_PRIVILEGE",message:"A privilege that the service requires to function properly does not exist in the service account configuration. You may use the Services Microsoft Management Console (MMC) snap-in (Services.msc) and the Local Security Settings MMC snap-in (Secpol.msc) to view the service configuration and the account configuration."},"0x00000513":{code:"ERROR_INVALID_LABEL",message:"Indicates a particular SID may not be assigned as the label of an object."},"0x00000514":{code:"ERROR_NOT_ALL_ASSIGNED",message:"Not all privileges or groups referenced are assigned to the caller."},"0x00000515":{code:"ERROR_SOME_NOT_MAPPED",message:"Some mapping between account names and SIDs was not done."},"0x00000516":{code:"ERROR_NO_QUOTAS_FOR_ACCOUNT",message:"No system quota limits are specifically set for this account."},"0x00000517":{code:"ERROR_LOCAL_USER_SESSION_KEY",message:"No encryption key is available. A well-known encryption key was returned."},"0x00000518":{code:"ERROR_NULL_LM_PASSWORD",message:"The password is too complex to be converted to a LAN Manager password. The LAN Manager password returned is a null string."},"0x00000519":{code:"ERROR_UNKNOWN_REVISION",message:"The revision level is unknown."},"0x0000051A":{code:"ERROR_REVISION_MISMATCH",message:"Indicates two revision levels are incompatible."},"0x0000051B":{code:"ERROR_INVALID_OWNER",message:"This SID may not be assigned as the owner of this object."},"0x0000051C":{code:"ERROR_INVALID_PRIMARY_GROUP",message:"This SID may not be assigned as the primary group of an object."},"0x0000051D":{code:"ERROR_NO_IMPERSONATION_TOKEN",message:"An attempt has been made to operate on an impersonation token by a thread that is not currently impersonating a client."},"0x0000051E":{code:"ERROR_CANT_DISABLE_MANDATORY",message:"The group may not be disabled."},"0x0000051F":{code:"ERROR_NO_LOGON_SERVERS",message:"There are currently no logon servers available to service the logon request."},"0x00000520":{code:"ERROR_NO_SUCH_LOGON_SESSION",message:"A specified logon session does not exist. It may already have been terminated."},"0x00000521":{code:"ERROR_NO_SUCH_PRIVILEGE",message:"A specified privilege does not exist."},"0x00000522":{code:"ERROR_PRIVILEGE_NOT_HELD",message:"A required privilege is not held by the client."},"0x00000523":{code:"ERROR_INVALID_ACCOUNT_NAME",message:"The name provided is not a properly formed account name."},"0x00000524":{code:"ERROR_USER_EXISTS",message:"The specified account already exists."},"0x00000525":{code:"ERROR_NO_SUCH_USER",message:"The specified account does not exist."},"0x00000526":{code:"ERROR_GROUP_EXISTS",message:"The specified group already exists."},"0x00000527":{code:"ERROR_NO_SUCH_GROUP",message:"The specified group does not exist."},"0x00000528":{code:"ERROR_MEMBER_IN_GROUP",message:"Either the specified user account is already a member of the specified group, or the specified group cannot be deleted because it contains a member."},"0x00000529":{code:"ERROR_MEMBER_NOT_IN_GROUP",message:"The specified user account is not a member of the specified group account."},"0x0000052A":{code:"ERROR_LAST_ADMIN",message:"The last remaining administration account cannot be disabled or deleted."},"0x0000052B":{code:"ERROR_WRONG_PASSWORD",message:"Unable to update the password. The value provided as the current password is incorrect."},"0x0000052C":{code:"ERROR_ILL_FORMED_PASSWORD",message:"Unable to update the password. The value provided for the new password contains values that are not allowed in passwords."},"0x0000052D":{code:"ERROR_PASSWORD_RESTRICTION",message:"Unable to update the password. The value provided for the new password does not meet the length, complexity, or history requirements of the domain."},"0x0000052E":{code:"ERROR_LOGON_FAILURE",message:"Logon failure: Unknown user name or bad password."},"0x0000052F":{code:"ERROR_ACCOUNT_RESTRICTION",message:"Logon failure: User account restriction. Possible reasons are blank passwords not allowed, logon hour restrictions, or a policy restriction has been enforced."},"0x00000530":{code:"ERROR_INVALID_LOGON_HOURS",message:"Logon failure: Account logon time restriction violation."},"0x00000531":{code:"ERROR_INVALID_WORKSTATION",message:"Logon failure: User not allowed to log on to this computer."},"0x00000532":{code:"ERROR_PASSWORD_EXPIRED",message:"Logon failure: The specified account password has expired."},"0x00000533":{code:"ERROR_ACCOUNT_DISABLED",message:"Logon failure: Account currently disabled."},"0x00000534":{code:"ERROR_NONE_MAPPED",message:"No mapping between account names and SIDs was done."},"0x00000535":{code:"ERROR_TOO_MANY_LUIDS_REQUESTED",message:"Too many local user identifiers (LUIDs) were requested at one time."},"0x00000536":{code:"ERROR_LUIDS_EXHAUSTED",message:"No more LUIDs are available."},"0x00000537":{code:"ERROR_INVALID_SUB_AUTHORITY",message:"The sub-authority part of an SID is invalid for this particular use."},"0x00000538":{code:"ERROR_INVALID_ACL",message:"The ACL structure is invalid."},"0x00000539":{code:"ERROR_INVALID_SID",message:"The SID structure is invalid."},"0x0000053A":{code:"ERROR_INVALID_SECURITY_DESCR",message:"The security descriptor structure is invalid."},"0x0000053C":{code:"ERROR_BAD_INHERITANCE_ACL",message:"The inherited ACL or ACE could not be built."},"0x0000053D":{code:"ERROR_SERVER_DISABLED",message:"The server is currently disabled."},"0x0000053E":{code:"ERROR_SERVER_NOT_DISABLED",message:"The server is currently enabled."},"0x0000053F":{code:"ERROR_INVALID_ID_AUTHORITY",message:"The value provided was an invalid value for an identifier authority."},"0x00000540":{code:"ERROR_ALLOTTED_SPACE_EXCEEDED",message:"No more memory is available for security information updates."},"0x00000541":{code:"ERROR_INVALID_GROUP_ATTRIBUTES",message:"The specified attributes are invalid, or incompatible with the attributes for the group as a whole."},"0x00000542":{code:"ERROR_BAD_IMPERSONATION_LEVEL",message:"Either a required impersonation level was not provided, or the provided impersonation level is invalid."},"0x00000543":{code:"ERROR_CANT_OPEN_ANONYMOUS",message:"Cannot open an anonymous level security token."},"0x00000544":{code:"ERROR_BAD_VALIDATION_CLASS",message:"The validation information class requested was invalid."},"0x00000545":{code:"ERROR_BAD_TOKEN_TYPE",message:"The type of the token is inappropriate for its attempted use."},"0x00000546":{code:"ERROR_NO_SECURITY_ON_OBJECT",message:"Unable to perform a security operation on an object that has no associated security."},"0x00000547":{code:"ERROR_CANT_ACCESS_DOMAIN_INFO",message:"Configuration information could not be read from the domain controller, either because the machine is unavailable, or access has been denied."},"0x00000548":{code:"ERROR_INVALID_SERVER_STATE",message:"The SAM or local security authority (LSA) server was in the wrong state to perform the security operation."},"0x00000549":{code:"ERROR_INVALID_DOMAIN_STATE",message:"The domain was in the wrong state to perform the security operation."},"0x0000054A":{code:"ERROR_INVALID_DOMAIN_ROLE",message:"This operation is only allowed for the PDC of the domain."},"0x0000054B":{code:"ERROR_NO_SUCH_DOMAIN",message:"The specified domain either does not exist or could not be contacted."},"0x0000054C":{code:"ERROR_DOMAIN_EXISTS",message:"The specified domain already exists."},"0x0000054D":{code:"ERROR_DOMAIN_LIMIT_EXCEEDED",message:"An attempt was made to exceed the limit on the number of domains per server."},"0x0000054E":{code:"ERROR_INTERNAL_DB_CORRUPTION",message:"Unable to complete the requested operation because of either a catastrophic media failure or a data structure corruption on the disk."},"0x0000054F":{code:"ERROR_INTERNAL_ERROR",message:"An internal error occurred."},"0x00000550":{code:"ERROR_GENERIC_NOT_MAPPED",message:"Generic access types were contained in an access mask that should already be mapped to nongeneric types."},"0x00000551":{code:"ERROR_BAD_DESCRIPTOR_FORMAT",message:"A security descriptor is not in the right format (absolute or self-relative)."},"0x00000552":{code:"ERROR_NOT_LOGON_PROCESS",message:"The requested action is restricted for use by logon processes only. The calling process has not registered as a logon process."},"0x00000553":{code:"ERROR_LOGON_SESSION_EXISTS",message:"Cannot start a new logon session with an ID that is already in use."},"0x00000554":{code:"ERROR_NO_SUCH_PACKAGE",message:"A specified authentication package is unknown."},"0x00000555":{code:"ERROR_BAD_LOGON_SESSION_STATE",message:"The logon session is not in a state that is consistent with the requested operation."},"0x00000556":{code:"ERROR_LOGON_SESSION_COLLISION",message:"The logon session ID is already in use."},"0x00000557":{code:"ERROR_INVALID_LOGON_TYPE",message:"A logon request contained an invalid logon type value."},"0x00000558":{code:"ERROR_CANNOT_IMPERSONATE",message:"Unable to impersonate using a named pipe until data has been read from that pipe."},"0x00000559":{code:"ERROR_RXACT_INVALID_STATE",message:"The transaction state of a registry subtree is incompatible with the requested operation."},"0x0000055A":{code:"ERROR_RXACT_COMMIT_FAILURE",message:"An internal security database corruption has been encountered."},"0x0000055B":{code:"ERROR_SPECIAL_ACCOUNT",message:"Cannot perform this operation on built-in accounts."},"0x0000055C":{code:"ERROR_SPECIAL_GROUP",message:"Cannot perform this operation on this built-in special group."},"0x0000055D":{code:"ERROR_SPECIAL_USER",message:"Cannot perform this operation on this built-in special user."},"0x0000055E":{code:"ERROR_MEMBERS_PRIMARY_GROUP",message:"The user cannot be removed from a group because the group is currently the user's primary group."},"0x0000055F":{code:"ERROR_TOKEN_ALREADY_IN_USE",message:"The token is already in use as a primary token."},"0x00000560":{code:"ERROR_NO_SUCH_ALIAS",message:"The specified local group does not exist."},"0x00000561":{code:"ERROR_MEMBER_NOT_IN_ALIAS",message:"The specified account name is not a member of the group."},"0x00000562":{code:"ERROR_MEMBER_IN_ALIAS",message:"The specified account name is already a member of the group."},"0x00000563":{code:"ERROR_ALIAS_EXISTS",message:"The specified local group already exists."},"0x00000564":{code:"ERROR_LOGON_NOT_GRANTED",message:"Logon failure: The user has not been granted the requested logon type at this computer."},"0x00000565":{code:"ERROR_TOO_MANY_SECRETS",message:"The maximum number of secrets that may be stored in a single system has been exceeded."},"0x00000566":{code:"ERROR_SECRET_TOO_LONG",message:"The length of a secret exceeds the maximum length allowed."},"0x00000567":{code:"ERROR_INTERNAL_DB_ERROR",message:"The local security authority database contains an internal inconsistency."},"0x00000568":{code:"ERROR_TOO_MANY_CONTEXT_IDS",message:"During a logon attempt, the user's security context accumulated too many SIDs."},"0x00000569":{code:"ERROR_LOGON_TYPE_NOT_GRANTED",message:"Logon failure: The user has not been granted the requested logon type at this computer."},"0x0000056A":{code:"ERROR_NT_CROSS_ENCRYPTION_REQUIRED",message:"A cross-encrypted password is necessary to change a user password."},"0x0000056B":{code:"ERROR_NO_SUCH_MEMBER",message:"A member could not be added to or removed from the local group because the member does not exist."},"0x0000056C":{code:"ERROR_INVALID_MEMBER",message:"A new member could not be added to a local group because the member has the wrong account type."},"0x0000056D":{code:"ERROR_TOO_MANY_SIDS",message:"Too many SIDs have been specified."},"0x0000056E":{code:"ERROR_LM_CROSS_ENCRYPTION_REQUIRED",message:"A cross-encrypted password is necessary to change this user password."},"0x0000056F":{code:"ERROR_NO_INHERITANCE",message:"Indicates an ACL contains no inheritable components."},"0x00000570":{code:"ERROR_FILE_CORRUPT",message:"The file or directory is corrupted and unreadable."},"0x00000571":{code:"ERROR_DISK_CORRUPT",message:"The disk structure is corrupted and unreadable."},"0x00000572":{code:"ERROR_NO_USER_SESSION_KEY",message:"There is no user session key for the specified logon session."},"0x00000573":{code:"ERROR_LICENSE_QUOTA_EXCEEDED",message:"The service being accessed is licensed for a particular number of connections. No more connections can be made to the service at this time because the service has accepted the maximum number of connections."},"0x00000574":{code:"ERROR_WRONG_TARGET_NAME",message:"Logon failure: The target account name is incorrect."},"0x00000575":{code:"ERROR_MUTUAL_AUTH_FAILED",message:"Mutual authentication failed. The server's password is out of date at the domain controller."},"0x00000576":{code:"ERROR_TIME_SKEW",message:"There is a time and/or date difference between the client and server."},"0x00000577":{code:"ERROR_CURRENT_DOMAIN_NOT_ALLOWED",message:"This operation cannot be performed on the current domain."},"0x00000578":{code:"ERROR_INVALID_WINDOW_HANDLE",message:"Invalid window handle."},"0x00000579":{code:"ERROR_INVALID_MENU_HANDLE",message:"Invalid menu handle."},"0x0000057A":{code:"ERROR_INVALID_CURSOR_HANDLE",message:"Invalid cursor handle."},"0x0000057B":{code:"ERROR_INVALID_ACCEL_HANDLE",message:"Invalid accelerator table handle."},"0x0000057C":{code:"ERROR_INVALID_HOOK_HANDLE",message:"Invalid hook handle."},"0x0000057D":{code:"ERROR_INVALID_DWP_HANDLE",message:"Invalid handle to a multiple-window position structure."},"0x0000057E":{code:"ERROR_TLW_WITH_WSCHILD",message:"Cannot create a top-level child window."},"0x0000057F":{code:"ERROR_CANNOT_FIND_WND_CLASS",message:"Cannot find window class."},"0x00000580":{code:"ERROR_WINDOW_OF_OTHER_THREAD",message:"Invalid window; it belongs to other thread."},"0x00000581":{code:"ERROR_HOTKEY_ALREADY_REGISTERED",message:"Hot key is already registered."},"0x00000582":{code:"ERROR_CLASS_ALREADY_EXISTS",message:"Class already exists."},"0x00000583":{code:"ERROR_CLASS_DOES_NOT_EXIST",message:"Class does not exist."},"0x00000584":{code:"ERROR_CLASS_HAS_WINDOWS",message:"Class still has open windows."},"0x00000585":{code:"ERROR_INVALID_INDEX",message:"Invalid index."},"0x00000586":{code:"ERROR_INVALID_ICON_HANDLE",message:"Invalid icon handle."},"0x00000587":{code:"ERROR_PRIVATE_DIALOG_INDEX",message:"Using private DIALOG window words."},"0x00000588":{code:"ERROR_LISTBOX_ID_NOT_FOUND",message:"The list box identifier was not found."},"0x00000589":{code:"ERROR_NO_WILDCARD_CHARACTERS",message:"No wildcards were found."},"0x0000058A":{code:"ERROR_CLIPBOARD_NOT_OPEN",message:"Thread does not have a clipboard open."},"0x0000058B":{code:"ERROR_HOTKEY_NOT_REGISTERED",message:"Hot key is not registered."},"0x0000058C":{code:"ERROR_WINDOW_NOT_DIALOG",message:"The window is not a valid dialog window."},"0x0000058D":{code:"ERROR_CONTROL_ID_NOT_FOUND",message:"Control ID not found."},"0x0000058E":{code:"ERROR_INVALID_COMBOBOX_MESSAGE",message:"Invalid message for a combo box because it does not have an edit control."},"0x0000058F":{code:"ERROR_WINDOW_NOT_COMBOBOX",message:"The window is not a combo box."},"0x00000590":{code:"ERROR_INVALID_EDIT_HEIGHT",message:"Height must be less than 256."},"0x00000591":{code:"ERROR_DC_NOT_FOUND",message:"Invalid device context (DC) handle."},"0x00000592":{code:"ERROR_INVALID_HOOK_FILTER",message:"Invalid hook procedure type."},"0x00000593":{code:"ERROR_INVALID_FILTER_PROC",message:"Invalid hook procedure."},"0x00000594":{code:"ERROR_HOOK_NEEDS_HMOD",message:"Cannot set nonlocal hook without a module handle."},"0x00000595":{code:"ERROR_GLOBAL_ONLY_HOOK",message:"This hook procedure can only be set globally."},"0x00000596":{code:"ERROR_JOURNAL_HOOK_SET",message:"The journal hook procedure is already installed."},"0x00000597":{code:"ERROR_HOOK_NOT_INSTALLED",message:"The hook procedure is not installed."},"0x00000598":{code:"ERROR_INVALID_LB_MESSAGE",message:"Invalid message for single-selection list box."},"0x00000599":{code:"ERROR_SETCOUNT_ON_BAD_LB",message:"LB_SETCOUNT sent to non-lazy list box."},"0x0000059A":{code:"ERROR_LB_WITHOUT_TABSTOPS",message:"This list box does not support tab stops."},"0x0000059B":{code:"ERROR_DESTROY_OBJECT_OF_OTHER_THREAD",message:"Cannot destroy object created by another thread."},"0x0000059C":{code:"ERROR_CHILD_WINDOW_MENU",message:"Child windows cannot have menus."},"0x0000059D":{code:"ERROR_NO_SYSTEM_MENU",message:"The window does not have a system menu."},"0x0000059E":{code:"ERROR_INVALID_MSGBOX_STYLE",message:"Invalid message box style."},"0x0000059F":{code:"ERROR_INVALID_SPI_VALUE",message:"Invalid system-wide (SPI_*) parameter."},"0x000005A0":{code:"ERROR_SCREEN_ALREADY_LOCKED",message:"Screen already locked."},"0x000005A1":{code:"ERROR_HWNDS_HAVE_DIFF_PARENT",message:"All handles to windows in a multiple-window position structure must have the same parent."},"0x000005A2":{code:"ERROR_NOT_CHILD_WINDOW",message:"The window is not a child window."},"0x000005A3":{code:"ERROR_INVALID_GW_COMMAND",message:"Invalid GW_* command."},"0x000005A4":{code:"ERROR_INVALID_THREAD_ID",message:"Invalid thread identifier."},"0x000005A5":{code:"ERROR_NON_MDICHILD_WINDOW",message:"Cannot process a message from a window that is not a multiple document interface (MDI) window."},"0x000005A6":{code:"ERROR_POPUP_ALREADY_ACTIVE",message:"Pop-up menu already active."},"0x000005A7":{code:"ERROR_NO_SCROLLBARS",message:"The window does not have scroll bars."},"0x000005A8":{code:"ERROR_INVALID_SCROLLBAR_RANGE",message:"Scroll bar range cannot be greater than MAXLONG."},"0x000005A9":{code:"ERROR_INVALID_SHOWWIN_COMMAND",message:"Cannot show or remove the window in the way specified."},"0x000005AA":{code:"ERROR_NO_SYSTEM_RESOURCES",message:"Insufficient system resources exist to complete the requested service."},"0x000005AB":{code:"ERROR_NONPAGED_SYSTEM_RESOURCES",message:"Insufficient system resources exist to complete the requested service."},"0x000005AC":{code:"ERROR_PAGED_SYSTEM_RESOURCES",message:"Insufficient system resources exist to complete the requested service."},"0x000005AD":{code:"ERROR_WORKING_SET_QUOTA",message:"Insufficient quota to complete the requested service."},"0x000005AE":{code:"ERROR_PAGEFILE_QUOTA",message:"Insufficient quota to complete the requested service."},"0x000005AF":{code:"ERROR_COMMITMENT_LIMIT",message:"The paging file is too small for this operation to complete."},"0x000005B0":{code:"ERROR_MENU_ITEM_NOT_FOUND",message:"A menu item was not found."},"0x000005B1":{code:"ERROR_INVALID_KEYBOARD_HANDLE",message:"Invalid keyboard layout handle."},"0x000005B2":{code:"ERROR_HOOK_TYPE_NOT_ALLOWED",message:"Hook type not allowed."},"0x000005B3":{code:"ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION",message:"This operation requires an interactive window station."},"0x000005B4":{code:"ERROR_TIMEOUT",message:"This operation returned because the time-out period expired."},"0x000005B5":{code:"ERROR_INVALID_MONITOR_HANDLE",message:"Invalid monitor handle."},"0x000005B6":{code:"ERROR_INCORRECT_SIZE",message:"Incorrect size argument."},"0x000005B7":{code:"ERROR_SYMLINK_CLASS_DISABLED",message:"The symbolic link cannot be followed because its type is disabled."},"0x000005B8":{code:"ERROR_SYMLINK_NOT_SUPPORTED",message:"This application does not support the current operation on symbolic links."},"0x000005DC":{code:"ERROR_EVENTLOG_FILE_CORRUPT",message:"The event log file is corrupted."},"0x000005DD":{code:"ERROR_EVENTLOG_CANT_START",message:"No event log file could be opened, so the event logging service did not start."},"0x000005DE":{code:"ERROR_LOG_FILE_FULL",message:"The event log file is full."},"0x000005DF":{code:"ERROR_EVENTLOG_FILE_CHANGED",message:"The event log file has changed between read operations."},"0x0000060E":{code:"ERROR_INVALID_TASK_NAME",message:"The specified task name is invalid."},"0x0000060F":{code:"ERROR_INVALID_TASK_INDEX",message:"The specified task index is invalid."},"0x00000610":{code:"ERROR_THREAD_ALREADY_IN_TASK",message:"The specified thread is already joining a task."},"0x00000641":{code:"ERROR_INSTALL_SERVICE_FAILURE",message:"The Windows Installer service could not be accessed. This can occur if the Windows Installer is not correctly installed. Contact your support personnel for assistance."},"0x00000642":{code:"ERROR_INSTALL_USEREXIT",message:"User canceled installation."},"0x00000643":{code:"ERROR_INSTALL_FAILURE",message:"Fatal error during installation."},"0x00000644":{code:"ERROR_INSTALL_SUSPEND",message:"Installation suspended, incomplete."},"0x00000645":{code:"ERROR_UNKNOWN_PRODUCT",message:"This action is valid only for products that are currently installed."},"0x00000646":{code:"ERROR_UNKNOWN_FEATURE",message:"Feature ID not registered."},"0x00000647":{code:"ERROR_UNKNOWN_COMPONENT",message:"Component ID not registered."},"0x00000648":{code:"ERROR_UNKNOWN_PROPERTY",message:"Unknown property."},"0x00000649":{code:"ERROR_INVALID_HANDLE_STATE",message:"Handle is in an invalid state."},"0x0000064A":{code:"ERROR_BAD_CONFIGURATION",message:"The configuration data for this product is corrupt. Contact your support personnel."},"0x0000064B":{code:"ERROR_INDEX_ABSENT",message:"Component qualifier not present."},"0x0000064C":{code:"ERROR_INSTALL_SOURCE_ABSENT",message:"The installation source for this product is not available. Verify that the source exists and that you can access it."},"0x0000064D":{code:"ERROR_INSTALL_PACKAGE_VERSION",message:"This installation package cannot be installed by the Windows Installer service. You must install a Windows service pack that contains a newer version of the Windows Installer service."},"0x0000064E":{code:"ERROR_PRODUCT_UNINSTALLED",message:"Product is uninstalled."},"0x0000064F":{code:"ERROR_BAD_QUERY_SYNTAX",message:"SQL query syntax invalid or unsupported."},"0x00000650":{code:"ERROR_INVALID_FIELD",message:"Record field does not exist."},"0x00000651":{code:"ERROR_DEVICE_REMOVED",message:"The device has been removed."},"0x00000652":{code:"ERROR_INSTALL_ALREADY_RUNNING",message:"Another installation is already in progress. Complete that installation before proceeding with this install."},"0x00000653":{code:"ERROR_INSTALL_PACKAGE_OPEN_FAILED",message:"This installation package could not be opened. Verify that the package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer package."},"0x00000654":{code:"ERROR_INSTALL_PACKAGE_INVALID",message:"This installation package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer package."},"0x00000655":{code:"ERROR_INSTALL_UI_FAILURE",message:"There was an error starting the Windows Installer service user interface. Contact your support personnel."},"0x00000656":{code:"ERROR_INSTALL_LOG_FAILURE",message:"Error opening installation log file. Verify that the specified log file location exists and that you can write to it."},"0x00000657":{code:"ERROR_INSTALL_LANGUAGE_UNSUPPORTED",message:"The language of this installation package is not supported by your system."},"0x00000658":{code:"ERROR_INSTALL_TRANSFORM_FAILURE",message:"Error applying transforms. Verify that the specified transform paths are valid."},"0x00000659":{code:"ERROR_INSTALL_PACKAGE_REJECTED",message:"This installation is forbidden by system policy. Contact your system administrator."},"0x0000065A":{code:"ERROR_FUNCTION_NOT_CALLED",message:"Function could not be executed."},"0x0000065B":{code:"ERROR_FUNCTION_FAILED",message:"Function failed during execution."},"0x0000065C":{code:"ERROR_INVALID_TABLE",message:"Invalid or unknown table specified."},"0x0000065D":{code:"ERROR_DATATYPE_MISMATCH",message:"Data supplied is of wrong type."},"0x0000065E":{code:"ERROR_UNSUPPORTED_TYPE",message:"Data of this type is not supported."},"0x0000065F":{code:"ERROR_CREATE_FAILED",message:"The Windows Installer service failed to start. Contact your support personnel."},"0x00000660":{code:"ERROR_INSTALL_TEMP_UNWRITABLE",message:"The Temp folder is on a drive that is full or is inaccessible. Free up space on the drive or verify that you have write permission on the Temp folder."},"0x00000661":{code:"ERROR_INSTALL_PLATFORM_UNSUPPORTED",message:"This installation package is not supported by this processor type. Contact your product vendor."},"0x00000662":{code:"ERROR_INSTALL_NOTUSED",message:"Component not used on this computer."},"0x00000663":{code:"ERROR_PATCH_PACKAGE_OPEN_FAILED",message:"This update package could not be opened. Verify that the update package exists and that you can access it, or contact the application vendor to verify that this is a valid Windows Installer update package."},"0x00000664":{code:"ERROR_PATCH_PACKAGE_INVALID",message:"This update package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer update package."},"0x00000665":{code:"ERROR_PATCH_PACKAGE_UNSUPPORTED",message:"This update package cannot be processed by the Windows Installer service. You must install a Windows service pack that contains a newer version of the Windows Installer service."},"0x00000666":{code:"ERROR_PRODUCT_VERSION",message:"Another version of this product is already installed. Installation of this version cannot continue. To configure or remove the existing version of this product, use Add/Remove Programs in Control Panel."},"0x00000667":{code:"ERROR_INVALID_COMMAND_LINE",message:"Invalid command-line argument. Consult the Windows Installer SDK for detailed command line help."},"0x00000668":{code:"ERROR_INSTALL_REMOTE_DISALLOWED",message:"Only administrators have permission to add, remove, or configure server software during a Terminal Services remote session. If you want to install or configure software on the server, contact your network administrator."},"0x00000669":{code:"ERROR_SUCCESS_REBOOT_INITIATED",message:"The requested operation completed successfully. The system will be restarted so the changes can take effect."},"0x0000066A":{code:"ERROR_PATCH_TARGET_NOT_FOUND",message:"The upgrade cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade may update a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade."},"0x0000066B":{code:"ERROR_PATCH_PACKAGE_REJECTED",message:"The update package is not permitted by a software restriction policy."},"0x0000066C":{code:"ERROR_INSTALL_TRANSFORM_REJECTED",message:"One or more customizations are not permitted by a software restriction policy."},"0x0000066D":{code:"ERROR_INSTALL_REMOTE_PROHIBITED",message:"The Windows Installer does not permit installation from a Remote Desktop Connection."},"0x0000066E":{code:"ERROR_PATCH_REMOVAL_UNSUPPORTED",message:"Uninstallation of the update package is not supported."},"0x0000066F":{code:"ERROR_UNKNOWN_PATCH",message:"The update is not applied to this product."},"0x00000670":{code:"ERROR_PATCH_NO_SEQUENCE",message:"No valid sequence could be found for the set of updates."},"0x00000671":{code:"ERROR_PATCH_REMOVAL_DISALLOWED",message:"Update removal was disallowed by policy."},"0x00000672":{code:"ERROR_INVALID_PATCH_XML",message:"The XML update data is invalid."},"0x00000673":{code:"ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT",message:"Windows Installer does not permit updating of managed advertised products. At least one feature of the product must be installed before applying the update."},"0x00000674":{code:"ERROR_INSTALL_SERVICE_SAFEBOOT",message:"The Windows Installer service is not accessible in Safe Mode. Try again when your computer is not in Safe Mode or you can use System Restore to return your machine to a previous good state."},"0x000006A4":{code:"RPC_S_INVALID_STRING_BINDING",message:"The string binding is invalid."},"0x000006A5":{code:"RPC_S_WRONG_KIND_OF_BINDING",message:"The binding handle is not the correct type."},"0x000006A6":{code:"RPC_S_INVALID_BINDING",message:"The binding handle is invalid."},"0x000006A7":{code:"RPC_S_PROTSEQ_NOT_SUPPORTED",message:"The RPC protocol sequence is not supported."},"0x000006A8":{code:"RPC_S_INVALID_RPC_PROTSEQ",message:"The RPC protocol sequence is invalid."},"0x000006A9":{code:"RPC_S_INVALID_STRING_UUID",message:"The string UUID is invalid."},"0x000006AA":{code:"RPC_S_INVALID_ENDPOINT_FORMAT",message:"The endpoint format is invalid."},"0x000006AB":{code:"RPC_S_INVALID_NET_ADDR",message:"The network address is invalid."},"0x000006AC":{code:"RPC_S_NO_ENDPOINT_FOUND",message:"No endpoint was found."},"0x000006AD":{code:"RPC_S_INVALID_TIMEOUT",message:"The time-out value is invalid."},"0x000006AE":{code:"RPC_S_OBJECT_NOT_FOUND",message:"The object UUID) was not found."},"0x000006AF":{code:"RPC_S_ALREADY_REGISTERED",message:"The object UUID) has already been registered."},"0x000006B0":{code:"RPC_S_TYPE_ALREADY_REGISTERED",message:"The type UUID has already been registered."},"0x000006B1":{code:"RPC_S_ALREADY_LISTENING",message:"The RPC server is already listening."},"0x000006B2":{code:"RPC_S_NO_PROTSEQS_REGISTERED",message:"No protocol sequences have been registered."},"0x000006B3":{code:"RPC_S_NOT_LISTENING",message:"The RPC server is not listening."},"0x000006B4":{code:"RPC_S_UNKNOWN_MGR_TYPE",message:"The manager type is unknown."},"0x000006B5":{code:"RPC_S_UNKNOWN_IF",message:"The interface is unknown."},"0x000006B6":{code:"RPC_S_NO_BINDINGS",message:"There are no bindings."},"0x000006B7":{code:"RPC_S_NO_PROTSEQS",message:"There are no protocol sequences."},"0x000006B8":{code:"RPC_S_CANT_CREATE_ENDPOINT",message:"The endpoint cannot be created."},"0x000006B9":{code:"RPC_S_OUT_OF_RESOURCES",message:"Not enough resources are available to complete this operation."},"0x000006BA":{code:"RPC_S_SERVER_UNAVAILABLE",message:"The RPC server is unavailable."},"0x000006BB":{code:"RPC_S_SERVER_TOO_BUSY",message:"The RPC server is too busy to complete this operation."},"0x000006BC":{code:"RPC_S_INVALID_NETWORK_OPTIONS",message:"The network options are invalid."},"0x000006BD":{code:"RPC_S_NO_CALL_ACTIVE",message:"There are no RPCs active on this thread."},"0x000006BE":{code:"RPC_S_CALL_FAILED",message:"The RPC failed."},"0x000006BF":{code:"RPC_S_CALL_FAILED_DNE",message:"The RPC failed and did not execute."},"0x000006C0":{code:"RPC_S_PROTOCOL_ERROR",message:"An RPC protocol error occurred."},"0x000006C1":{code:"RPC_S_PROXY_ACCESS_DENIED",message:"Access to the HTTP proxy is denied."},"0x000006C2":{code:"RPC_S_UNSUPPORTED_TRANS_SYN",message:"The transfer syntax is not supported by the RPC server."},"0x000006C4":{code:"RPC_S_UNSUPPORTED_TYPE",message:"The UUID type is not supported."},"0x000006C5":{code:"RPC_S_INVALID_TAG",message:"The tag is invalid."},"0x000006C6":{code:"RPC_S_INVALID_BOUND",message:"The array bounds are invalid."},"0x000006C7":{code:"RPC_S_NO_ENTRY_NAME",message:"The binding does not contain an entry name."},"0x000006C8":{code:"RPC_S_INVALID_NAME_SYNTAX",message:"The name syntax is invalid."},"0x000006C9":{code:"RPC_S_UNSUPPORTED_NAME_SYNTAX",message:"The name syntax is not supported."},"0x000006CB":{code:"RPC_S_UUID_NO_ADDRESS",message:"No network address is available to use to construct a UUID."},"0x000006CC":{code:"RPC_S_DUPLICATE_ENDPOINT",message:"The endpoint is a duplicate."},"0x000006CD":{code:"RPC_S_UNKNOWN_AUTHN_TYPE",message:"The authentication type is unknown."},"0x000006CE":{code:"RPC_S_MAX_CALLS_TOO_SMALL",message:"The maximum number of calls is too small."},"0x000006CF":{code:"RPC_S_STRING_TOO_LONG",message:"The string is too long."},"0x000006D0":{code:"RPC_S_PROTSEQ_NOT_FOUND",message:"The RPC protocol sequence was not found."},"0x000006D1":{code:"RPC_S_PROCNUM_OUT_OF_RANGE",message:"The procedure number is out of range."},"0x000006D2":{code:"RPC_S_BINDING_HAS_NO_AUTH",message:"The binding does not contain any authentication information."},"0x000006D3":{code:"RPC_S_UNKNOWN_AUTHN_SERVICE",message:"The authentication service is unknown."},"0x000006D4":{code:"RPC_S_UNKNOWN_AUTHN_LEVEL",message:"The authentication level is unknown."},"0x000006D5":{code:"RPC_S_INVALID_AUTH_IDENTITY",message:"The security context is invalid."},"0x000006D6":{code:"RPC_S_UNKNOWN_AUTHZ_SERVICE",message:"The authorization service is unknown."},"0x000006D7":{code:"EPT_S_INVALID_ENTRY",message:"The entry is invalid."},"0x000006D8":{code:"EPT_S_CANT_PERFORM_OP",message:"The server endpoint cannot perform the operation."},"0x000006D9":{code:"EPT_S_NOT_REGISTERED",message:"There are no more endpoints available from the endpoint mapper."},"0x000006DA":{code:"RPC_S_NOTHING_TO_EXPORT",message:"No interfaces have been exported."},"0x000006DB":{code:"RPC_S_INCOMPLETE_NAME",message:"The entry name is incomplete."},"0x000006DC":{code:"RPC_S_INVALID_VERS_OPTION",message:"The version option is invalid."},"0x000006DD":{code:"RPC_S_NO_MORE_MEMBERS",message:"There are no more members."},"0x000006DE":{code:"RPC_S_NOT_ALL_OBJS_UNEXPORTED",message:"There is nothing to unexport."},"0x000006DF":{code:"RPC_S_INTERFACE_NOT_FOUND",message:"The interface was not found."},"0x000006E0":{code:"RPC_S_ENTRY_ALREADY_EXISTS",message:"The entry already exists."},"0x000006E1":{code:"RPC_S_ENTRY_NOT_FOUND",message:"The entry is not found."},"0x000006E2":{code:"RPC_S_NAME_SERVICE_UNAVAILABLE",message:"The name service is unavailable."},"0x000006E3":{code:"RPC_S_INVALID_NAF_ID",message:"The network address family is invalid."},"0x000006E4":{code:"RPC_S_CANNOT_SUPPORT",message:"The requested operation is not supported."},"0x000006E5":{code:"RPC_S_NO_CONTEXT_AVAILABLE",message:"No security context is available to allow impersonation."},"0x000006E6":{code:"RPC_S_INTERNAL_ERROR",message:"An internal error occurred in an RPC."},"0x000006E7":{code:"RPC_S_ZERO_DIVIDE",message:"The RPC server attempted an integer division by zero."},"0x000006E8":{code:"RPC_S_ADDRESS_ERROR",message:"An addressing error occurred in the RPC server."},"0x000006E9":{code:"RPC_S_FP_DIV_ZERO",message:"A floating-point operation at the RPC server caused a division by zero."},"0x000006EA":{code:"RPC_S_FP_UNDERFLOW",message:"A floating-point underflow occurred at the RPC server."},"0x000006EB":{code:"RPC_S_FP_OVERFLOW",message:"A floating-point overflow occurred at the RPC server."},"0x000006EC":{code:"RPC_X_NO_MORE_ENTRIES",message:"The list of RPC servers available for the binding of auto handles has been exhausted."},"0x000006ED":{code:"RPC_X_SS_CHAR_TRANS_OPEN_FAIL",message:"Unable to open the character translation table file."},"0x000006EE":{code:"RPC_X_SS_CHAR_TRANS_SHORT_FILE",message:"The file containing the character translation table has fewer than 512 bytes."},"0x000006EF":{code:"RPC_X_SS_IN_NULL_CONTEXT",message:"A null context handle was passed from the client to the host during an RPC."},"0x000006F1":{code:"RPC_X_SS_CONTEXT_DAMAGED",message:"The context handle changed during an RPC."},"0x000006F2":{code:"RPC_X_SS_HANDLES_MISMATCH",message:"The binding handles passed to an RPC do not match."},"0x000006F3":{code:"RPC_X_SS_CANNOT_GET_CALL_HANDLE",message:"The stub is unable to get the RPC handle."},"0x000006F4":{code:"RPC_X_NULL_REF_POINTER",message:"A null reference pointer was passed to the stub."},"0x000006F5":{code:"RPC_X_ENUM_VALUE_OUT_OF_RANGE",message:"The enumeration value is out of range."},"0x000006F6":{code:"RPC_X_BYTE_COUNT_TOO_SMALL",message:"The byte count is too small."},"0x000006F7":{code:"RPC_X_BAD_STUB_DATA",message:"The stub received bad data."},"0x000006F8":{code:"ERROR_INVALID_USER_BUFFER",message:"The supplied user buffer is not valid for the requested operation."},"0x000006F9":{code:"ERROR_UNRECOGNIZED_MEDIA",message:"The disk media is not recognized. It may not be formatted."},"0x000006FA":{code:"ERROR_NO_TRUST_LSA_SECRET",message:"The workstation does not have a trust secret."},"0x000006FB":{code:"ERROR_NO_TRUST_SAM_ACCOUNT",message:"The security database on the server does not have a computer account for this workstation trust relationship."},"0x000006FC":{code:"ERROR_TRUSTED_DOMAIN_FAILURE",message:"The trust relationship between the primary domain and the trusted domain failed."},"0x000006FD":{code:"ERROR_TRUSTED_RELATIONSHIP_FAILURE",message:"The trust relationship between this workstation and the primary domain failed."},"0x000006FE":{code:"ERROR_TRUST_FAILURE",message:"The network logon failed."},"0x000006FF":{code:"RPC_S_CALL_IN_PROGRESS",message:"An RPC is already in progress for this thread."},"0x00000700":{code:"ERROR_NETLOGON_NOT_STARTED",message:"An attempt was made to log on, but the network logon service was not started."},"0x00000701":{code:"ERROR_ACCOUNT_EXPIRED",message:"The user's account has expired."},"0x00000702":{code:"ERROR_REDIRECTOR_HAS_OPEN_HANDLES",message:"The redirector is in use and cannot be unloaded."},"0x00000703":{code:"ERROR_PRINTER_DRIVER_ALREADY_INSTALLED",message:"The specified printer driver is already installed."},"0x00000704":{code:"ERROR_UNKNOWN_PORT",message:"The specified port is unknown."},"0x00000705":{code:"ERROR_UNKNOWN_PRINTER_DRIVER",message:"The printer driver is unknown."},"0x00000706":{code:"ERROR_UNKNOWN_PRINTPROCESSOR",message:"The print processor is unknown."},"0x00000707":{code:"ERROR_INVALID_SEPARATOR_FILE",message:"The specified separator file is invalid."},"0x00000708":{code:"ERROR_INVALID_PRIORITY",message:"The specified priority is invalid."},"0x00000709":{code:"ERROR_INVALID_PRINTER_NAME",message:"The printer name is invalid."},"0x0000070A":{code:"ERROR_PRINTER_ALREADY_EXISTS",message:"The printer already exists."},"0x0000070B":{code:"ERROR_INVALID_PRINTER_COMMAND",message:"The printer command is invalid."},"0x0000070C":{code:"ERROR_INVALID_DATATYPE",message:"The specified data type is invalid."},"0x0000070D":{code:"ERROR_INVALID_ENVIRONMENT",message:"The environment specified is invalid."},"0x0000070E":{code:"RPC_S_NO_MORE_BINDINGS",message:"There are no more bindings."},"0x0000070F":{code:"ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT",message:"The account used is an interdomain trust account. Use your global user account or local user account to access this server."},"0x00000710":{code:"ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT",message:"The account used is a computer account. Use your global user account or local user account to access this server."},"0x00000711":{code:"ERROR_NOLOGON_SERVER_TRUST_ACCOUNT",message:"The account used is a server trust account. Use your global user account or local user account to access this server."},"0x00000712":{code:"ERROR_DOMAIN_TRUST_INCONSISTENT",message:"The name or SID of the domain specified is inconsistent with the trust information for that domain."},"0x00000713":{code:"ERROR_SERVER_HAS_OPEN_HANDLES",message:"The server is in use and cannot be unloaded."},"0x00000714":{code:"ERROR_RESOURCE_DATA_NOT_FOUND",message:"The specified image file did not contain a resource section."},"0x00000715":{code:"ERROR_RESOURCE_TYPE_NOT_FOUND",message:"The specified resource type cannot be found in the image file."},"0x00000716":{code:"ERROR_RESOURCE_NAME_NOT_FOUND",message:"The specified resource name cannot be found in the image file."},"0x00000717":{code:"ERROR_RESOURCE_LANG_NOT_FOUND",message:"The specified resource language ID cannot be found in the image file."},"0x00000718":{code:"ERROR_NOT_ENOUGH_QUOTA",message:"Not enough quota is available to process this command."},"0x00000719":{code:"RPC_S_NO_INTERFACES",message:"No interfaces have been registered."},"0x0000071A":{code:"RPC_S_CALL_CANCELLED",message:"The RPC was canceled."},"0x0000071B":{code:"RPC_S_BINDING_INCOMPLETE",message:"The binding handle does not contain all the required information."},"0x0000071C":{code:"RPC_S_COMM_FAILURE",message:"A communications failure occurred during an RPC."},"0x0000071D":{code:"RPC_S_UNSUPPORTED_AUTHN_LEVEL",message:"The requested authentication level is not supported."},"0x0000071E":{code:"RPC_S_NO_PRINC_NAME",message:"No principal name is registered."},"0x0000071F":{code:"RPC_S_NOT_RPC_ERROR",message:"The error specified is not a valid Windows RPC error code."},"0x00000720":{code:"RPC_S_UUID_LOCAL_ONLY",message:"A UUID that is valid only on this computer has been allocated."},"0x00000721":{code:"RPC_S_SEC_PKG_ERROR",message:"A security package-specific error occurred."},"0x00000722":{code:"RPC_S_NOT_CANCELLED",message:"The thread is not canceled."},"0x00000723":{code:"RPC_X_INVALID_ES_ACTION",message:"Invalid operation on the encoding/decoding handle."},"0x00000724":{code:"RPC_X_WRONG_ES_VERSION",message:"Incompatible version of the serializing package."},"0x00000725":{code:"RPC_X_WRONG_STUB_VERSION",message:"Incompatible version of the RPC stub."},"0x00000726":{code:"RPC_X_INVALID_PIPE_OBJECT",message:"The RPC pipe object is invalid or corrupted."},"0x00000727":{code:"RPC_X_WRONG_PIPE_ORDER",message:"An invalid operation was attempted on an RPC pipe object."},"0x00000728":{code:"RPC_X_WRONG_PIPE_VERSION",message:"Unsupported RPC pipe version."},"0x0000076A":{code:"RPC_S_GROUP_MEMBER_NOT_FOUND",message:"The group member was not found."},"0x0000076B":{code:"EPT_S_CANT_CREATE",message:"The endpoint mapper database entry could not be created."},"0x0000076C":{code:"RPC_S_INVALID_OBJECT",message:"The object UUID is the nil UUID."},"0x0000076D":{code:"ERROR_INVALID_TIME",message:"The specified time is invalid."},"0x0000076E":{code:"ERROR_INVALID_FORM_NAME",message:"The specified form name is invalid."},"0x0000076F":{code:"ERROR_INVALID_FORM_SIZE",message:"The specified form size is invalid."},"0x00000770":{code:"ERROR_ALREADY_WAITING",message:"The specified printer handle is already being waited on."},"0x00000771":{code:"ERROR_PRINTER_DELETED",message:"The specified printer has been deleted."},"0x00000772":{code:"ERROR_INVALID_PRINTER_STATE",message:"The state of the printer is invalid."},"0x00000773":{code:"ERROR_PASSWORD_MUST_CHANGE",message:"The user's password must be changed before logging on the first time."},"0x00000774":{code:"ERROR_DOMAIN_CONTROLLER_NOT_FOUND",message:"Could not find the domain controller for this domain."},"0x00000775":{code:"ERROR_ACCOUNT_LOCKED_OUT",message:"The referenced account is currently locked out and may not be logged on to."},"0x00000776":{code:"OR_INVALID_OXID",message:"The object exporter specified was not found."},"0x00000777":{code:"OR_INVALID_OID",message:"The object specified was not found."},"0x00000778":{code:"OR_INVALID_SET",message:"The object set specified was not found."},"0x00000779":{code:"RPC_S_SEND_INCOMPLETE",message:"Some data remains to be sent in the request buffer."},"0x0000077A":{code:"RPC_S_INVALID_ASYNC_HANDLE",message:"Invalid asynchronous RPC handle."},"0x0000077B":{code:"RPC_S_INVALID_ASYNC_CALL",message:"Invalid asynchronous RPC call handle for this operation."},"0x0000077C":{code:"RPC_X_PIPE_CLOSED",message:"The RPC pipe object has already been closed."},"0x0000077D":{code:"RPC_X_PIPE_DISCIPLINE_ERROR",message:"The RPC call completed before all pipes were processed."},"0x0000077E":{code:"RPC_X_PIPE_EMPTY",message:"No more data is available from the RPC pipe."},"0x0000077F":{code:"ERROR_NO_SITENAME",message:"No site name is available for this machine."},"0x00000780":{code:"ERROR_CANT_ACCESS_FILE",message:"The file cannot be accessed by the system."},"0x00000781":{code:"ERROR_CANT_RESOLVE_FILENAME",message:"The name of the file cannot be resolved by the system."},"0x00000782":{code:"RPC_S_ENTRY_TYPE_MISMATCH",message:"The entry is not of the expected type."},"0x00000783":{code:"RPC_S_NOT_ALL_OBJS_EXPORTED",message:"Not all object UUIDs could be exported to the specified entry."},"0x00000784":{code:"RPC_S_INTERFACE_NOT_EXPORTED",message:"The interface could not be exported to the specified entry."},"0x00000785":{code:"RPC_S_PROFILE_NOT_ADDED",message:"The specified profile entry could not be added."},"0x00000786":{code:"RPC_S_PRF_ELT_NOT_ADDED",message:"The specified profile element could not be added."},"0x00000787":{code:"RPC_S_PRF_ELT_NOT_REMOVED",message:"The specified profile element could not be removed."},"0x00000788":{code:"RPC_S_GRP_ELT_NOT_ADDED",message:"The group element could not be added."},"0x00000789":{code:"RPC_S_GRP_ELT_NOT_REMOVED",message:"The group element could not be removed."},"0x0000078A":{code:"ERROR_KM_DRIVER_BLOCKED",message:"The printer driver is not compatible with a policy enabled on your computer that blocks Windows NT 4.0 drivers."},"0x0000078B":{code:"ERROR_CONTEXT_EXPIRED",message:"The context has expired and can no longer be used."},"0x0000078C":{code:"ERROR_PER_USER_TRUST_QUOTA_EXCEEDED",message:"The current user's delegated trust creation quota has been exceeded."},"0x0000078D":{code:"ERROR_ALL_USER_TRUST_QUOTA_EXCEEDED",message:"The total delegated trust creation quota has been exceeded."},"0x0000078E":{code:"ERROR_USER_DELETE_TRUST_QUOTA_EXCEEDED",message:"The current user's delegated trust deletion quota has been exceeded."},"0x0000078F":{code:"ERROR_AUTHENTICATION_FIREWALL_FAILED",message:"Logon failure: The machine you are logging on to is protected by an authentication firewall. The specified account is not allowed to authenticate to the machine."},"0x00000790":{code:"ERROR_REMOTE_PRINT_CONNECTIONS_BLOCKED",message:"Remote connections to the Print Spooler are blocked by a policy set on your machine."},"0x000007D0":{code:"ERROR_INVALID_PIXEL_FORMAT",message:"The pixel format is invalid."},"0x000007D1":{code:"ERROR_BAD_DRIVER",message:"The specified driver is invalid."},"0x000007D2":{code:"ERROR_INVALID_WINDOW_STYLE",message:"The window style or class attribute is invalid for this operation."},"0x000007D3":{code:"ERROR_METAFILE_NOT_SUPPORTED",message:"The requested metafile operation is not supported."},"0x000007D4":{code:"ERROR_TRANSFORM_NOT_SUPPORTED",message:"The requested transformation operation is not supported."},"0x000007D5":{code:"ERROR_CLIPPING_NOT_SUPPORTED",message:"The requested clipping operation is not supported."},"0x000007DA":{code:"ERROR_INVALID_CMM",message:"The specified color management module is invalid."},"0x000007DB":{code:"ERROR_INVALID_PROFILE",message:"The specified color profile is invalid."},"0x000007DC":{code:"ERROR_TAG_NOT_FOUND",message:"The specified tag was not found."},"0x000007DD":{code:"ERROR_TAG_NOT_PRESENT",message:"A required tag is not present."},"0x000007DE":{code:"ERROR_DUPLICATE_TAG",message:"The specified tag is already present."},"0x000007DF":{code:"ERROR_PROFILE_NOT_ASSOCIATED_WITH_DEVICE",message:"The specified color profile is not associated with any device."},"0x000007E0":{code:"ERROR_PROFILE_NOT_FOUND",message:"The specified color profile was not found."},"0x000007E1":{code:"ERROR_INVALID_COLORSPACE",message:"The specified color space is invalid."},"0x000007E2":{code:"ERROR_ICM_NOT_ENABLED",message:"Image Color Management is not enabled."},"0x000007E3":{code:"ERROR_DELETING_ICM_XFORM",message:"There was an error while deleting the color transform."},"0x000007E4":{code:"ERROR_INVALID_TRANSFORM",message:"The specified color transform is invalid."},"0x000007E5":{code:"ERROR_COLORSPACE_MISMATCH",message:"The specified transform does not match the bitmap's color space."},"0x000007E6":{code:"ERROR_INVALID_COLORINDEX",message:"The specified named color index is not present in the profile."},"0x000007E7":{code:"ERROR_PROFILE_DOES_NOT_MATCH_DEVICE",message:"The specified profile is intended for a device of a different type than the specified device."},"0x00000836":{code:"NERR_NetNotStarted",message:"The workstation driver is not installed."},"0x00000837":{code:"NERR_UnknownServer",message:"The server could not be located."},"0x00000838":{code:"NERR_ShareMem",message:"An internal error occurred. The network cannot access a shared memory segment."},"0x00000839":{code:"NERR_NoNetworkResource",message:"A network resource shortage occurred."},"0x0000083A":{code:"NERR_RemoteOnly",message:"This operation is not supported on workstations."},"0x0000083B":{code:"NERR_DevNotRedirected",message:"The device is not connected."},"0x0000083C":{code:"ERROR_CONNECTED_OTHER_PASSWORD",message:"The network connection was made successfully, but the user had to be prompted for a password other than the one originally specified."},"0x0000083D":{code:"ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT",message:"The network connection was made successfully using default credentials."},"0x00000842":{code:"NERR_ServerNotStarted",message:"The Server service is not started."},"0x00000843":{code:"NERR_ItemNotFound",message:"The queue is empty."},"0x00000844":{code:"NERR_UnknownDevDir",message:"The device or directory does not exist."},"0x00000845":{code:"NERR_RedirectedPath",message:"The operation is invalid on a redirected resource."},"0x00000846":{code:"NERR_DuplicateShare",message:"The name has already been shared."},"0x00000847":{code:"NERR_NoRoom",message:"The server is currently out of the requested resource."},"0x00000849":{code:"NERR_TooManyItems",message:"Requested addition of items exceeds the maximum allowed."},"0x0000084A":{code:"NERR_InvalidMaxUsers",message:"The Peer service supports only two simultaneous users."},"0x0000084B":{code:"NERR_BufTooSmall",message:"The API return buffer is too small."},"0x0000084F":{code:"NERR_RemoteErr",message:"A remote API error occurred."},"0x00000853":{code:"NERR_LanmanIniError",message:"An error occurred when opening or reading the configuration file."},"0x00000858":{code:"NERR_NetworkError",message:"A general network error occurred."},"0x00000859":{code:"NERR_WkstaInconsistentState",message:"The Workstation service is in an inconsistent state. Restart the computer before restarting the Workstation service."},"0x0000085A":{code:"NERR_WkstaNotStarted",message:"The Workstation service has not been started."},"0x0000085B":{code:"NERR_BrowserNotStarted",message:"The requested information is not available."},"0x0000085C":{code:"NERR_InternalError",message:"An internal error occurred."},"0x0000085D":{code:"NERR_BadTransactConfig",message:"The server is not configured for transactions."},"0x0000085E":{code:"NERR_InvalidAPI",message:"The requested API is not supported on the remote server."},"0x0000085F":{code:"NERR_BadEventName",message:"The event name is invalid."},"0x00000860":{code:"NERR_DupNameReboot",message:"The computer name already exists on the network. Change it and reboot the computer."},"0x00000862":{code:"NERR_CfgCompNotFound",message:"The specified component could not be found in the configuration information."},"0x00000863":{code:"NERR_CfgParamNotFound",message:"The specified parameter could not be found in the configuration information."},"0x00000865":{code:"NERR_LineTooLong",message:"A line in the configuration file is too long."},"0x00000866":{code:"NERR_QNotFound",message:"The printer does not exist."},"0x00000867":{code:"NERR_JobNotFound",message:"The print job does not exist."},"0x00000868":{code:"NERR_DestNotFound",message:"The printer destination cannot be found."},"0x00000869":{code:"NERR_DestExists",message:"The printer destination already exists."},"0x0000086A":{code:"NERR_QExists",message:"The print queue already exists."},"0x0000086B":{code:"NERR_QNoRoom",message:"No more printers can be added."},"0x0000086C":{code:"NERR_JobNoRoom",message:"No more print jobs can be added."},"0x0000086D":{code:"NERR_DestNoRoom",message:"No more printer destinations can be added."},"0x0000086E":{code:"NERR_DestIdle",message:"This printer destination is idle and cannot accept control operations."},"0x0000086F":{code:"NERR_DestInvalidOp",message:"This printer destination request contains an invalid control function."},"0x00000870":{code:"NERR_ProcNoRespond",message:"The print processor is not responding."},"0x00000871":{code:"NERR_SpoolerNotLoaded",message:"The spooler is not running."},"0x00000872":{code:"NERR_DestInvalidState",message:"This operation cannot be performed on the print destination in its current state."},"0x00000873":{code:"NERR_QinvalidState",message:"This operation cannot be performed on the print queue in its current state."},"0x00000874":{code:"NERR_JobInvalidState",message:"This operation cannot be performed on the print job in its current state."},"0x00000875":{code:"NERR_SpoolNoMemory",message:"A spooler memory allocation failure occurred."},"0x00000876":{code:"NERR_DriverNotFound",message:"The device driver does not exist."},"0x00000877":{code:"NERR_DataTypeInvalid",message:"The data type is not supported by the print processor."},"0x00000878":{code:"NERR_ProcNotFound",message:"The print processor is not installed."},"0x00000884":{code:"NERR_ServiceTableLocked",message:"The service database is locked."},"0x00000885":{code:"NERR_ServiceTableFull",message:"The service table is full."},"0x00000886":{code:"NERR_ServiceInstalled",message:"The requested service has already been started."},"0x00000887":{code:"NERR_ServiceEntryLocked",message:"The service does not respond to control actions."},"0x00000888":{code:"NERR_ServiceNotInstalled",message:"The service has not been started."},"0x00000889":{code:"NERR_BadServiceName",message:"The service name is invalid."},"0x0000088A":{code:"NERR_ServiceCtlTimeout",message:"The service is not responding to the control function."},"0x0000088B":{code:"NERR_ServiceCtlBusy",message:"The service control is busy."},"0x0000088C":{code:"NERR_BadServiceProgName",message:"The configuration file contains an invalid service program name."},"0x0000088D":{code:"NERR_ServiceNotCtrl",message:"The service could not be controlled in its present state."},"0x0000088E":{code:"NERR_ServiceKillProc",message:"The service ended abnormally."},"0x0000088F":{code:"NERR_ServiceCtlNotValid",message:"The requested pause or stop is not valid for this service."},"0x00000890":{code:"NERR_NotInDispatchTbl",message:"The service control dispatcher could not find the service name in the dispatch table."},"0x00000891":{code:"NERR_BadControlRecv",message:"The service control dispatcher pipe read failed."},"0x00000892":{code:"NERR_ServiceNotStarting",message:"A thread for the new service could not be created."},"0x00000898":{code:"NERR_AlreadyLoggedOn",message:"This workstation is already logged on to the LAN."},"0x00000899":{code:"NERR_NotLoggedOn",message:"The workstation is not logged on to the LAN."},"0x0000089A":{code:"NERR_BadUsername",message:"The user name or group name parameter is invalid."},"0x0000089B":{code:"NERR_BadPassword",message:"The password parameter is invalid."},"0x0000089C":{code:"NERR_UnableToAddName_W",message:"The logon processor did not add the message alias."},"0x0000089D":{code:"NERR_UnableToAddName_F",message:"The logon processor did not add the message alias."},"0x0000089E":{code:"NERR_UnableToDelName_W",message:"@W The logoff processor did not delete the message alias."},"0x0000089F":{code:"NERR_UnableToDelName_F",message:"The logoff processor did not delete the message alias."},"0x000008A1":{code:"NERR_LogonsPaused",message:"Network logons are paused."},"0x000008A2":{code:"NERR_LogonServerConflict",message:"A centralized logon server conflict occurred."},"0x000008A3":{code:"NERR_LogonNoUserPath",message:"The server is configured without a valid user path."},"0x000008A4":{code:"NERR_LogonScriptError",message:"An error occurred while loading or running the logon script."},"0x000008A6":{code:"NERR_StandaloneLogon",message:"The logon server was not specified. The computer will be logged on as STANDALONE."},"0x000008A7":{code:"NERR_LogonServerNotFound",message:"The logon server could not be found."},"0x000008A8":{code:"NERR_LogonDomainExists",message:"There is already a logon domain for this computer."},"0x000008A9":{code:"NERR_NonValidatedLogon",message:"The logon server could not validate the logon."},"0x000008AB":{code:"NERR_ACFNotFound",message:"The security database could not be found."},"0x000008AC":{code:"NERR_GroupNotFound",message:"The group name could not be found."},"0x000008AD":{code:"NERR_UserNotFound",message:"The user name could not be found."},"0x000008AE":{code:"NERR_ResourceNotFound",message:"The resource name could not be found."},"0x000008AF":{code:"NERR_GroupExists",message:"The group already exists."},"0x000008B0":{code:"NERR_UserExists",message:"The user account already exists."},"0x000008B1":{code:"NERR_ResourceExists",message:"The resource permission list already exists."},"0x000008B2":{code:"NERR_NotPrimary",message:"This operation is allowed only on the PDC of the domain."},"0x000008B3":{code:"NERR_ACFNotLoaded",message:"The security database has not been started."},"0x000008B4":{code:"NERR_ACFNoRoom",message:"There are too many names in the user accounts database."},"0x000008B5":{code:"NERR_ACFFileIOFail",message:"A disk I/O failure occurred."},"0x000008B6":{code:"NERR_ACFTooManyLists",message:"The limit of 64 entries per resource was exceeded."},"0x000008B7":{code:"NERR_UserLogon",message:"Deleting a user with a session is not allowed."},"0x000008B8":{code:"NERR_ACFNoParent",message:"The parent directory could not be located."},"0x000008B9":{code:"NERR_CanNotGrowSegment",message:"Unable to add to the security database session cache segment."},"0x000008BA":{code:"NERR_SpeGroupOp",message:"This operation is not allowed on this special group."},"0x000008BB":{code:"NERR_NotInCache",message:"This user is not cached in the user accounts database session cache."},"0x000008BC":{code:"NERR_UserInGroup",message:"The user already belongs to this group."},"0x000008BD":{code:"NERR_UserNotInGroup",message:"The user does not belong to this group."},"0x000008BE":{code:"NERR_AccountUndefined",message:"This user account is undefined."},"0x000008BF":{code:"NERR_AccountExpired",message:"This user account has expired."},"0x000008C0":{code:"NERR_InvalidWorkstation",message:"The user is not allowed to log on from this workstation."},"0x000008C1":{code:"NERR_InvalidLogonHours",message:"The user is not allowed to log on at this time."},"0x000008C2":{code:"NERR_PasswordExpired",message:"The password of this user has expired."},"0x000008C3":{code:"NERR_PasswordCantChange",message:"The password of this user cannot change."},"0x000008C4":{code:"NERR_PasswordHistConflict",message:"This password cannot be used now."},"0x000008C5":{code:"NERR_PasswordTooShort",message:"The password does not meet the password policy requirements. Check the minimum password length, password complexity, and password history requirements."},"0x000008C6":{code:"NERR_PasswordTooRecent",message:"The password of this user is too recent to change."},"0x000008C7":{code:"NERR_InvalidDatabase",message:"The security database is corrupted."},"0x000008C8":{code:"NERR_DatabaseUpToDate",message:"No updates are necessary to this replicant network or local security database."},"0x000008C9":{code:"NERR_SyncRequired",message:"This replicant database is outdated; synchronization is required."},"0x000008CA":{code:"NERR_UseNotFound",message:"The network connection could not be found."},"0x000008CB":{code:"NERR_BadAsgType",message:"This asg_type is invalid."},"0x000008CC":{code:"NERR_DeviceIsShared",message:"This device is currently being shared."},"0x000008DE":{code:"NERR_NoComputerName",message:"The computer name could not be added as a message alias. The name may already exist on the network."},"0x000008DF":{code:"NERR_MsgAlreadyStarted",message:"The Messenger service is already started."},"0x000008E0":{code:"NERR_MsgInitFailed",message:"The Messenger service failed to start."},"0x000008E1":{code:"NERR_NameNotFound",message:"The message alias could not be found on the network."},"0x000008E2":{code:"NERR_AlreadyForwarded",message:"This message alias has already been forwarded."},"0x000008E3":{code:"NERR_AddForwarded",message:"This message alias has been added but is still forwarded."},"0x000008E4":{code:"NERR_AlreadyExists",message:"This message alias already exists locally."},"0x000008E5":{code:"NERR_TooManyNames",message:"The maximum number of added message aliases has been exceeded."},"0x000008E6":{code:"NERR_DelComputerName",message:"The computer name could not be deleted."},"0x000008E7":{code:"NERR_LocalForward",message:"Messages cannot be forwarded back to the same workstation."},"0x000008E8":{code:"NERR_GrpMsgProcessor",message:"An error occurred in the domain message processor."},"0x000008E9":{code:"NERR_PausedRemote",message:"The message was sent, but the recipient has paused the Messenger service."},"0x000008EA":{code:"NERR_BadReceive",message:"The message was sent but not received."},"0x000008EB":{code:"NERR_NameInUse",message:"The message alias is currently in use. Try again later."},"0x000008EC":{code:"NERR_MsgNotStarted",message:"The Messenger service has not been started."},"0x000008ED":{code:"NERR_NotLocalName",message:"The name is not on the local computer."},"0x000008EE":{code:"NERR_NoForwardName",message:"The forwarded message alias could not be found on the network."},"0x000008EF":{code:"NERR_RemoteFull",message:"The message alias table on the remote station is full."},"0x000008F0":{code:"NERR_NameNotForwarded",message:"Messages for this alias are not currently being forwarded."},"0x000008F1":{code:"NERR_TruncatedBroadcast",message:"The broadcast message was truncated."},"0x000008F6":{code:"NERR_InvalidDevice",message:"This is an invalid device name."},"0x000008F7":{code:"NERR_WriteFault",message:"A write fault occurred."},"0x000008F9":{code:"NERR_DuplicateName",message:"A duplicate message alias exists on the network."},"0x000008FA":{code:"NERR_DeleteLater",message:"This message alias will be deleted later."},"0x000008FB":{code:"NERR_IncompleteDel",message:"The message alias was not successfully deleted from all networks."},"0x000008FC":{code:"NERR_MultipleNets",message:"This operation is not supported on computers with multiple networks."},"0x00000906":{code:"NERR_NetNameNotFound",message:"This shared resource does not exist."},"0x00000907":{code:"NERR_DeviceNotShared",message:"This device is not shared."},"0x00000908":{code:"NERR_ClientNameNotFound",message:"A session does not exist with that computer name."},"0x0000090A":{code:"NERR_FileIdNotFound",message:"There is not an open file with that identification number."},"0x0000090B":{code:"NERR_ExecFailure",message:"A failure occurred when executing a remote administration command."},"0x0000090C":{code:"NERR_TmpFile",message:"A failure occurred when opening a remote temporary file."},"0x0000090D":{code:"NERR_TooMuchData",message:"The data returned from a remote administration command has been truncated to 64 KB."},"0x0000090E":{code:"NERR_DeviceShareConflict",message:"This device cannot be shared as both a spooled and a nonspooled resource."},"0x0000090F":{code:"NERR_BrowserTableIncomplete",message:"The information in the list of servers may be incorrect."},"0x00000910":{code:"NERR_NotLocalDomain",message:"The computer is not active in this domain."},"0x00000911":{code:"NERR_IsDfsShare",message:"The share must be removed from the Distributed File System (DFS) before it can be deleted."},"0x0000091B":{code:"NERR_DevInvalidOpCode",message:"The operation is invalid for this device."},"0x0000091C":{code:"NERR_DevNotFound",message:"This device cannot be shared."},"0x0000091D":{code:"NERR_DevNotOpen",message:"This device was not open."},"0x0000091E":{code:"NERR_BadQueueDevString",message:"This device name list is invalid."},"0x0000091F":{code:"NERR_BadQueuePriority",message:"The queue priority is invalid."},"0x00000921":{code:"NERR_NoCommDevs",message:"There are no shared communication devices."},"0x00000922":{code:"NERR_QueueNotFound",message:"The queue you specified does not exist."},"0x00000924":{code:"NERR_BadDevString",message:"This list of devices is invalid."},"0x00000925":{code:"NERR_BadDev",message:"The requested device is invalid."},"0x00000926":{code:"NERR_InUseBySpooler",message:"This device is already in use by the spooler."},"0x00000927":{code:"NERR_CommDevInUse",message:"This device is already in use as a communication device."},"0x0000092F":{code:"NERR_InvalidComputer",message:"This computer name is invalid."},"0x00000932":{code:"NERR_MaxLenExceeded",message:"The string and prefix specified are too long."},"0x00000934":{code:"NERR_BadComponent",message:"This path component is invalid."},"0x00000935":{code:"NERR_CantType",message:"Could not determine the type of input."},"0x0000093A":{code:"NERR_TooManyEntries",message:"The buffer for types is not big enough."},"0x00000942":{code:"NERR_ProfileFileTooBig",message:"Profile files cannot exceed 64 KB."},"0x00000943":{code:"NERR_ProfileOffset",message:"The start offset is out of range."},"0x00000944":{code:"NERR_ProfileCleanup",message:"The system cannot delete current connections to network resources."},"0x00000945":{code:"NERR_ProfileUnknownCmd",message:"The system was unable to parse the command line in this file."},"0x00000946":{code:"NERR_ProfileLoadErr",message:"An error occurred while loading the profile file."},"0x00000947":{code:"NERR_ProfileSaveErr",message:"Errors occurred while saving the profile file. The profile was partially saved."},"0x00000949":{code:"NERR_LogOverflow",message:"Log file %1 is full."},"0x0000094A":{code:"NERR_LogFileChanged",message:"This log file has changed between reads."},"0x0000094B":{code:"NERR_LogFileCorrupt",message:"Log file %1 is corrupt."},"0x0000094C":{code:"NERR_SourceIsDir",message:"The source path cannot be a directory."},"0x0000094D":{code:"NERR_BadSource",message:"The source path is illegal."},"0x0000094E":{code:"NERR_BadDest",message:"The destination path is illegal."},"0x0000094F":{code:"NERR_DifferentServers",message:"The source and destination paths are on different servers."},"0x00000951":{code:"NERR_RunSrvPaused",message:"The Run server you requested is paused."},"0x00000955":{code:"NERR_ErrCommRunSrv",message:"An error occurred when communicating with a Run server."},"0x00000957":{code:"NERR_ErrorExecingGhost",message:"An error occurred when starting a background process."},"0x00000958":{code:"NERR_ShareNotFound",message:"The shared resource you are connected to could not be found."},"0x00000960":{code:"NERR_InvalidLana",message:"The LAN adapter number is invalid."},"0x00000961":{code:"NERR_OpenFiles",message:"There are open files on the connection."},"0x00000962":{code:"NERR_ActiveConns",message:"Active connections still exist."},"0x00000963":{code:"NERR_BadPasswordCore",message:"This share name or password is invalid."},"0x00000964":{code:"NERR_DevInUse",message:"The device is being accessed by an active process."},"0x00000965":{code:"NERR_LocalDrive",message:"The drive letter is in use locally."},"0x0000097E":{code:"NERR_AlertExists",message:"The specified client is already registered for the specified event."},"0x0000097F":{code:"NERR_TooManyAlerts",message:"The alert table is full."},"0x00000980":{code:"NERR_NoSuchAlert",message:"An invalid or nonexistent alert name was raised."},"0x00000981":{code:"NERR_BadRecipient",message:"The alert recipient is invalid."},"0x00000982":{code:"NERR_AcctLimitExceeded",message:"A user's session with this server has been deleted."},"0x00000988":{code:"NERR_InvalidLogSeek",message:"The log file does not contain the requested record number."},"0x00000992":{code:"NERR_BadUasConfig",message:"The user accounts database is not configured correctly."},"0x00000993":{code:"NERR_InvalidUASOp",message:"This operation is not permitted when the Net Logon service is running."},"0x00000994":{code:"NERR_LastAdmin",message:"This operation is not allowed on the last administrative account."},"0x00000995":{code:"NERR_DCNotFound",message:"Could not find the domain controller for this domain."},"0x00000996":{code:"NERR_LogonTrackingError",message:"Could not set logon information for this user."},"0x00000997":{code:"NERR_NetlogonNotStarted",message:"The Net Logon service has not been started."},"0x00000998":{code:"NERR_CanNotGrowUASFile",message:"Unable to add to the user accounts database."},"0x00000999":{code:"NERR_TimeDiffAtDC",message:"This server's clock is not synchronized with the PDC's clock."},"0x0000099A":{code:"NERR_PasswordMismatch",message:"A password mismatch has been detected."},"0x0000099C":{code:"NERR_NoSuchServer",message:"The server identification does not specify a valid server."},"0x0000099D":{code:"NERR_NoSuchSession",message:"The session identification does not specify a valid session."},"0x0000099E":{code:"NERR_NoSuchConnection",message:"The connection identification does not specify a valid connection."},"0x0000099F":{code:"NERR_TooManyServers",message:"There is no space for another entry in the table of available servers."},"0x000009A0":{code:"NERR_TooManySessions",message:"The server has reached the maximum number of sessions it supports."},"0x000009A1":{code:"NERR_TooManyConnections",message:"The server has reached the maximum number of connections it supports."},"0x000009A2":{code:"NERR_TooManyFiles",message:"The server cannot open more files because it has reached its maximum number."},"0x000009A3":{code:"NERR_NoAlternateServers",message:"There are no alternate servers registered on this server."},"0x000009A6":{code:"NERR_TryDownLevel",message:"Try the down-level (remote admin protocol) version of API instead."},"0x000009B0":{code:"NERR_UPSDriverNotStarted",message:"The uninterruptible power supply (UPS) driver could not be accessed by the UPS service."},"0x000009B1":{code:"NERR_UPSInvalidConfig",message:"The UPS service is not configured correctly."},"0x000009B2":{code:"NERR_UPSInvalidCommPort",message:"The UPS service could not access the specified Comm Port."},"0x000009B3":{code:"NERR_UPSSignalAsserted",message:"The UPS indicated a line fail or low battery situation. Service not started."},"0x000009B4":{code:"NERR_UPSShutdownFailed",message:"The UPS service failed to perform a system shut down."},"0x000009C4":{code:"NERR_BadDosRetCode",message:"The program below returned an MS-DOS error code."},"0x000009C5":{code:"NERR_ProgNeedsExtraMem",message:"The program below needs more memory."},"0x000009C6":{code:"NERR_BadDosFunction",message:"The program below called an unsupported MS-DOS function."},"0x000009C7":{code:"NERR_RemoteBootFailed",message:"The workstation failed to boot."},"0x000009C8":{code:"NERR_BadFileCheckSum",message:"The file below is corrupt."},"0x000009C9":{code:"NERR_NoRplBootSystem",message:"No loader is specified in the boot-block definition file."},"0x000009CA":{code:"NERR_RplLoadrNetBiosErr",message:"NetBIOS returned an error: The network control blocks (NCBs) and Server Message Block (SMB) are dumped above."},"0x000009CB":{code:"NERR_RplLoadrDiskErr",message:"A disk I/O error occurred."},"0x000009CC":{code:"NERR_ImageParamErr",message:"Image parameter substitution failed."},"0x000009CD":{code:"NERR_TooManyImageParams",message:"Too many image parameters cross disk sector boundaries."},"0x000009CE":{code:"NERR_NonDosFloppyUsed",message:"The image was not generated from an MS-DOS disk formatted with /S."},"0x000009CF":{code:"NERR_RplBootRestart",message:"Remote boot will be restarted later."},"0x000009D0":{code:"NERR_RplSrvrCallFailed",message:"The call to the Remoteboot server failed."},"0x000009D1":{code:"NERR_CantConnectRplSrvr",message:"Cannot connect to the Remoteboot server."},"0x000009D2":{code:"NERR_CantOpenImageFile",message:"Cannot open image file on the Remoteboot server."},"0x000009D3":{code:"NERR_CallingRplSrvr",message:"Connecting to the Remoteboot server."},"0x000009D4":{code:"NERR_StartingRplBoot",message:"Connecting to the Remoteboot server."},"0x000009D5":{code:"NERR_RplBootServiceTerm",message:"Remote boot service was stopped, check the error log for the cause of the problem."},"0x000009D6":{code:"NERR_RplBootStartFailed",message:"Remote boot startup failed; check the error log for the cause of the problem."},"0x000009D7":{code:"NERR_RPL_CONNECTED",message:"A second connection to a Remoteboot resource is not allowed."},"0x000009F6":{code:"NERR_BrowserConfiguredToNotRun",message:"The browser service was configured with MaintainServerList=No."},"0x00000A32":{code:"NERR_RplNoAdaptersStarted",message:"Service failed to start because none of the network adapters started with this service."},"0x00000A33":{code:"NERR_RplBadRegistry",message:"Service failed to start due to bad startup information in the registry."},"0x00000A34":{code:"NERR_RplBadDatabase",message:"Service failed to start because its database is absent or corrupt."},"0x00000A35":{code:"NERR_RplRplfilesShare",message:"Service failed to start because the RPLFILES share is absent."},"0x00000A36":{code:"NERR_RplNotRplServer",message:"Service failed to start because the RPLUSER group is absent."},"0x00000A37":{code:"NERR_RplCannotEnum",message:"Cannot enumerate service records."},"0x00000A38":{code:"NERR_RplWkstaInfoCorrupted",message:"Workstation record information has been corrupted."},"0x00000A39":{code:"NERR_RplWkstaNotFound",message:"Workstation record was not found."},"0x00000A3A":{code:"NERR_RplWkstaNameUnavailable",message:"Workstation name is in use by some other workstation."},"0x00000A3B":{code:"NERR_RplProfileInfoCorrupted",message:"Profile record information has been corrupted."},"0x00000A3C":{code:"NERR_RplProfileNotFound",message:"Profile record was not found."},"0x00000A3D":{code:"NERR_RplProfileNameUnavailable",message:"Profile name is in use by some other profile."},"0x00000A3E":{code:"NERR_RplProfileNotEmpty",message:"There are workstations using this profile."},"0x00000A3F":{code:"NERR_RplConfigInfoCorrupted",message:"Configuration record information has been corrupted."},"0x00000A40":{code:"NERR_RplConfigNotFound",message:"Configuration record was not found."},"0x00000A41":{code:"NERR_RplAdapterInfoCorrupted",message:"Adapter ID record information has been corrupted."},"0x00000A42":{code:"NERR_RplInternal",message:"An internal service error has occurred."},"0x00000A43":{code:"NERR_RplVendorInfoCorrupted",message:"Vendor ID record information has been corrupted."},"0x00000A44":{code:"NERR_RplBootInfoCorrupted",message:"Boot block record information has been corrupted."},"0x00000A45":{code:"NERR_RplWkstaNeedsUserAcct",message:"The user account for this workstation record is missing."},"0x00000A46":{code:"NERR_RplNeedsRPLUSERAcct",message:"The RPLUSER local group could not be found."},"0x00000A47":{code:"NERR_RplBootNotFound",message:"Boot block record was not found."},"0x00000A48":{code:"NERR_RplIncompatibleProfile",message:"Chosen profile is incompatible with this workstation."},"0x00000A49":{code:"NERR_RplAdapterNameUnavailable",message:"Chosen network adapter ID is in use by some other workstation."},"0x00000A4A":{code:"NERR_RplConfigNotEmpty",message:"There are profiles using this configuration."},"0x00000A4B":{code:"NERR_RplBootInUse",message:"There are workstations, profiles, or configurations using this boot block."},"0x00000A4C":{code:"NERR_RplBackupDatabase",message:"Service failed to back up the Remoteboot database."},"0x00000A4D":{code:"NERR_RplAdapterNotFound",message:"Adapter record was not found."},"0x00000A4E":{code:"NERR_RplVendorNotFound",message:"Vendor record was not found."},"0x00000A4F":{code:"NERR_RplVendorNameUnavailable",message:"Vendor name is in use by some other vendor record."},"0x00000A50":{code:"NERR_RplBootNameUnavailable",message:"The boot name or vendor ID is in use by some other boot block record."},"0x00000A51":{code:"NERR_RplConfigNameUnavailable",message:"The configuration name is in use by some other configuration."},"0x00000A64":{code:"NERR_DfsInternalCorruption",message:"The internal database maintained by the DFS service is corrupt."},"0x00000A65":{code:"NERR_DfsVolumeDataCorrupt",message:"One of the records in the internal DFS database is corrupt."},"0x00000A66":{code:"NERR_DfsNoSuchVolume",message:"There is no DFS name whose entry path matches the input entry path."},"0x00000A67":{code:"NERR_DfsVolumeAlreadyExists",message:"A root or link with the given name already exists."},"0x00000A68":{code:"NERR_DfsAlreadyShared",message:"The server share specified is already shared in the DFS."},"0x00000A69":{code:"NERR_DfsNoSuchShare",message:"The indicated server share does not support the indicated DFS namespace."},"0x00000A6A":{code:"NERR_DfsNotALeafVolume",message:"The operation is not valid in this portion of the namespace."},"0x00000A6B":{code:"NERR_DfsLeafVolume",message:"The operation is not valid in this portion of the namespace."},"0x00000A6C":{code:"NERR_DfsVolumeHasMultipleServers",message:"The operation is ambiguous because the link has multiple servers."},"0x00000A6D":{code:"NERR_DfsCantCreateJunctionPoint",message:"Unable to create a link."},"0x00000A6E":{code:"NERR_DfsServerNotDfsAware",message:"The server is not DFS-aware."},"0x00000A6F":{code:"NERR_DfsBadRenamePath",message:"The specified rename target path is invalid."},"0x00000A70":{code:"NERR_DfsVolumeIsOffline",message:"The specified DFS link is offline."},"0x00000A71":{code:"NERR_DfsNoSuchServer",message:"The specified server is not a server for this link."},"0x00000A72":{code:"NERR_DfsCyclicalName",message:"A cycle in the DFS name was detected."},"0x00000A73":{code:"NERR_DfsNotSupportedInServerDfs",message:"The operation is not supported on a server-based DFS."},"0x00000A74":{code:"NERR_DfsDuplicateService",message:"This link is already supported by the specified server share."},"0x00000A75":{code:"NERR_DfsCantRemoveLastServerShare",message:"Cannot remove the last server share supporting this root or link."},"0x00000A76":{code:"NERR_DfsVolumeIsInterDfs",message:"The operation is not supported for an inter-DFS link."},"0x00000A77":{code:"NERR_DfsInconsistent",message:"The internal state of the DFS Service has become inconsistent."},"0x00000A78":{code:"NERR_DfsServerUpgraded",message:"The DFS Service has been installed on the specified server."},"0x00000A79":{code:"NERR_DfsDataIsIdentical",message:"The DFS data being reconciled is identical."},"0x00000A7A":{code:"NERR_DfsCantRemoveDfsRoot",message:"The DFS root cannot be deleted. Uninstall DFS if required."},"0x00000A7B":{code:"NERR_DfsChildOrParentInDfs",message:"A child or parent directory of the share is already in a DFS."},"0x00000A82":{code:"NERR_DfsInternalError",message:"DFS internal error."},"0x00000A83":{code:"NERR_SetupAlreadyJoined",message:"This machine is already joined to a domain."},"0x00000A84":{code:"NERR_SetupNotJoined",message:"This machine is not currently joined to a domain."},"0x00000A85":{code:"NERR_SetupDomainController",message:"This machine is a domain controller and cannot be unjoined from a domain."},"0x00000A86":{code:"NERR_DefaultJoinRequired",message:"The destination domain controller does not support creating machine accounts in organizational units (OUs)."},"0x00000A87":{code:"NERR_InvalidWorkgroupName",message:"The specified workgroup name is invalid."},"0x00000A88":{code:"NERR_NameUsesIncompatibleCodePage",message:"The specified computer name is incompatible with the default language used on the domain controller."},"0x00000A89":{code:"NERR_ComputerAccountNotFound",message:"The specified computer account could not be found."},"0x00000A8A":{code:"NERR_PersonalSku",message:"This version of Windows cannot be joined to a domain."},"0x00000A8D":{code:"NERR_PasswordMustChange",message:"The password must change at the next logon."},"0x00000A8E":{code:"NERR_AccountLockedOut",message:"The account is locked out."},"0x00000A8F":{code:"NERR_PasswordTooLong",message:"The password is too long."},"0x00000A90":{code:"NERR_PasswordNotComplexEnough",message:"The password does not meet the complexity policy."},"0x00000A91":{code:"NERR_PasswordFilterError",message:"The password does not meet the requirements of the password filter DLLs."},"0x00000BB8":{code:"ERROR_UNKNOWN_PRINT_MONITOR",message:"The specified print monitor is unknown."},"0x00000BB9":{code:"ERROR_PRINTER_DRIVER_IN_USE",message:"The specified printer driver is currently in use."},"0x00000BBA":{code:"ERROR_SPOOL_FILE_NOT_FOUND",message:"The spool file was not found."},"0x00000BBB":{code:"ERROR_SPL_NO_STARTDOC",message:"A StartDocPrinter call was not issued."},"0x00000BBC":{code:"ERROR_SPL_NO_ADDJOB",message:"An AddJob call was not issued."},"0x00000BBD":{code:"ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED",message:"The specified print processor has already been installed."},"0x00000BBE":{code:"ERROR_PRINT_MONITOR_ALREADY_INSTALLED",message:"The specified print monitor has already been installed."},"0x00000BBF":{code:"ERROR_INVALID_PRINT_MONITOR",message:"The specified print monitor does not have the required functions."},"0x00000BC0":{code:"ERROR_PRINT_MONITOR_IN_USE",message:"The specified print monitor is currently in use."},"0x00000BC1":{code:"ERROR_PRINTER_HAS_JOBS_QUEUED",message:"The requested operation is not allowed when there are jobs queued to the printer."},"0x00000BC2":{code:"ERROR_SUCCESS_REBOOT_REQUIRED",message:"The requested operation is successful. Changes will not be effective until the system is rebooted."},"0x00000BC3":{code:"ERROR_SUCCESS_RESTART_REQUIRED",message:"The requested operation is successful. Changes will not be effective until the service is restarted."},"0x00000BC4":{code:"ERROR_PRINTER_NOT_FOUND",message:"No printers were found."},"0x00000BC5":{code:"ERROR_PRINTER_DRIVER_WARNED",message:"The printer driver is known to be unreliable."},"0x00000BC6":{code:"ERROR_PRINTER_DRIVER_BLOCKED",message:"The printer driver is known to harm the system."},"0x00000BC7":{code:"ERROR_PRINTER_DRIVER_PACKAGE_IN_USE",message:"The specified printer driver package is currently in use."},"0x00000BC8":{code:"ERROR_CORE_DRIVER_PACKAGE_NOT_FOUND",message:"Unable to find a core driver package that is required by the printer driver package."},"0x00000BC9":{code:"ERROR_FAIL_REBOOT_REQUIRED",message:"The requested operation failed. A system reboot is required to roll back changes made."},"0x00000BCA":{code:"ERROR_FAIL_REBOOT_INITIATED",message:"The requested operation failed. A system reboot has been initiated to roll back changes made."},"0x00000F6E":{code:"ERROR_IO_REISSUE_AS_CACHED",message:"Reissue the given operation as a cached I/O operation."},"0x00000FA0":{code:"ERROR_WINS_INTERNAL",message:"Windows Internet Name Service (WINS) encountered an error while processing the command."},"0x00000FA1":{code:"ERROR_CAN_NOT_DEL_LOCAL_WINS",message:"The local WINS cannot be deleted."},"0x00000FA2":{code:"ERROR_STATIC_INIT",message:"The importation from the file failed."},"0x00000FA3":{code:"ERROR_INC_BACKUP",message:"The backup failed. Was a full backup done before?"},"0x00000FA4":{code:"ERROR_FULL_BACKUP",message:"The backup failed. Check the directory to which you are backing the database."},"0x00000FA5":{code:"ERROR_REC_NON_EXISTENT",message:"The name does not exist in the WINS database."},"0x00000FA6":{code:"ERROR_RPL_NOT_ALLOWED",message:"Replication with a nonconfigured partner is not allowed."},"0x00000FD2":{code:"PEERDIST_ERROR_CONTENTINFO_VERSION_UNSUPPORTED",message:"The version of the supplied content information is not supported."},"0x00000FD3":{code:"PEERDIST_ERROR_CANNOT_PARSE_CONTENTINFO",message:"The supplied content information is malformed."},"0x00000FD4":{code:"PEERDIST_ERROR_MISSING_DATA",message:"The requested data cannot be found in local or peer caches."},"0x00000FD5":{code:"PEERDIST_ERROR_NO_MORE",message:"No more data is available or required."},"0x00000FD6":{code:"PEERDIST_ERROR_NOT_INITIALIZED",message:"The supplied object has not been initialized."},"0x00000FD7":{code:"PEERDIST_ERROR_ALREADY_INITIALIZED",message:"The supplied object has already been initialized."},"0x00000FD8":{code:"PEERDIST_ERROR_SHUTDOWN_IN_PROGRESS",message:"A shutdown operation is already in progress."},"0x00000FD9":{code:"PEERDIST_ERROR_INVALIDATED",message:"The supplied object has already been invalidated."},"0x00000FDA":{code:"PEERDIST_ERROR_ALREADY_EXISTS",message:"An element already exists and was not replaced."},"0x00000FDB":{code:"PEERDIST_ERROR_OPERATION_NOTFOUND",message:"Can not cancel the requested operation as it has already been completed."},"0x00000FDC":{code:"PEERDIST_ERROR_ALREADY_COMPLETED",message:"Can not perform the reqested operation because it has already been carried out."},"0x00000FDD":{code:"PEERDIST_ERROR_OUT_OF_BOUNDS",message:"An operation accessed data beyond the bounds of valid data."},"0x00000FDE":{code:"PEERDIST_ERROR_VERSION_UNSUPPORTED",message:"The requested version is not supported."},"0x00000FDF":{code:"PEERDIST_ERROR_INVALID_CONFIGURATION",message:"A configuration value is invalid."},"0x00000FE0":{code:"PEERDIST_ERROR_NOT_LICENSED",message:"The SKU is not licensed."},"0x00000FE1":{code:"PEERDIST_ERROR_SERVICE_UNAVAILABLE",message:"PeerDist Service is still initializing and will be available shortly."},"0x00001004":{code:"ERROR_DHCP_ADDRESS_CONFLICT",message:"The Dynamic Host Configuration Protocol (DHCP) client has obtained an IP address that is already in use on the network. The local interface will be disabled until the DHCP client can obtain a new address."},"0x00001068":{code:"ERROR_WMI_GUID_NOT_FOUND",message:"The GUID passed was not recognized as valid by a WMI data provider."},"0x00001069":{code:"ERROR_WMI_INSTANCE_NOT_FOUND",message:"The instance name passed was not recognized as valid by a WMI data provider."},"0x0000106A":{code:"ERROR_WMI_ITEMID_NOT_FOUND",message:"The data item ID passed was not recognized as valid by a WMI data provider."},"0x0000106B":{code:"ERROR_WMI_TRY_AGAIN",message:"The WMI request could not be completed and should be retried."},"0x0000106C":{code:"ERROR_WMI_DP_NOT_FOUND",message:"The WMI data provider could not be located."},"0x0000106D":{code:"ERROR_WMI_UNRESOLVED_INSTANCE_REF",message:"The WMI data provider references an instance set that has not been registered."},"0x0000106E":{code:"ERROR_WMI_ALREADY_ENABLED",message:"The WMI data block or event notification has already been enabled."},"0x0000106F":{code:"ERROR_WMI_GUID_DISCONNECTED",message:"The WMI data block is no longer available."},"0x00001070":{code:"ERROR_WMI_SERVER_UNAVAILABLE",message:"The WMI data service is not available."},"0x00001071":{code:"ERROR_WMI_DP_FAILED",message:"The WMI data provider failed to carry out the request."},"0x00001072":{code:"ERROR_WMI_INVALID_MOF",message:"The WMI Managed Object Format (MOF) information is not valid."},"0x00001073":{code:"ERROR_WMI_INVALID_REGINFO",message:"The WMI registration information is not valid."},"0x00001074":{code:"ERROR_WMI_ALREADY_DISABLED",message:"The WMI data block or event notification has already been disabled."},"0x00001075":{code:"ERROR_WMI_READ_ONLY",message:"The WMI data item or data block is read-only."},"0x00001076":{code:"ERROR_WMI_SET_FAILURE",message:"The WMI data item or data block could not be changed."},"0x000010CC":{code:"ERROR_INVALID_MEDIA",message:"The media identifier does not represent a valid medium."},"0x000010CD":{code:"ERROR_INVALID_LIBRARY",message:"The library identifier does not represent a valid library."},"0x000010CE":{code:"ERROR_INVALID_MEDIA_POOL",message:"The media pool identifier does not represent a valid media pool."},"0x000010CF":{code:"ERROR_DRIVE_MEDIA_MISMATCH",message:"The drive and medium are not compatible, or they exist in different libraries."},"0x000010D0":{code:"ERROR_MEDIA_OFFLINE",message:"The medium currently exists in an offline library and must be online to perform this operation."},"0x000010D1":{code:"ERROR_LIBRARY_OFFLINE",message:"The operation cannot be performed on an offline library."},"0x000010D2":{code:"ERROR_EMPTY",message:"The library, drive, or media pool is empty."},"0x000010D3":{code:"ERROR_NOT_EMPTY",message:"The library, drive, or media pool must be empty to perform this operation."},"0x000010D4":{code:"ERROR_MEDIA_UNAVAILABLE",message:"No media is currently available in this media pool or library."},"0x000010D5":{code:"ERROR_RESOURCE_DISABLED",message:"A resource required for this operation is disabled."},"0x000010D6":{code:"ERROR_INVALID_CLEANER",message:"The media identifier does not represent a valid cleaner."},"0x000010D7":{code:"ERROR_UNABLE_TO_CLEAN",message:"The drive cannot be cleaned or does not support cleaning."},"0x000010D8":{code:"ERROR_OBJECT_NOT_FOUND",message:"The object identifier does not represent a valid object."},"0x000010D9":{code:"ERROR_DATABASE_FAILURE",message:"Unable to read from or write to the database."},"0x000010DA":{code:"ERROR_DATABASE_FULL",message:"The database is full."},"0x000010DB":{code:"ERROR_MEDIA_INCOMPATIBLE",message:"The medium is not compatible with the device or media pool."},"0x000010DC":{code:"ERROR_RESOURCE_NOT_PRESENT",message:"The resource required for this operation does not exist."},"0x000010DD":{code:"ERROR_INVALID_OPERATION",message:"The operation identifier is not valid."},"0x000010DE":{code:"ERROR_MEDIA_NOT_AVAILABLE",message:"The media is not mounted or ready for use."},"0x000010DF":{code:"ERROR_DEVICE_NOT_AVAILABLE",message:"The device is not ready for use."},"0x000010E0":{code:"ERROR_REQUEST_REFUSED",message:"The operator or administrator has refused the request."},"0x000010E1":{code:"ERROR_INVALID_DRIVE_OBJECT",message:"The drive identifier does not represent a valid drive."},"0x000010E2":{code:"ERROR_LIBRARY_FULL",message:"Library is full. No slot is available for use."},"0x000010E3":{code:"ERROR_MEDIUM_NOT_ACCESSIBLE",message:"The transport cannot access the medium."},"0x000010E4":{code:"ERROR_UNABLE_TO_LOAD_MEDIUM",message:"Unable to load the medium into the drive."},"0x000010E5":{code:"ERROR_UNABLE_TO_INVENTORY_DRIVE",message:"Unable to retrieve the drive status."},"0x000010E6":{code:"ERROR_UNABLE_TO_INVENTORY_SLOT",message:"Unable to retrieve the slot status."},"0x000010E7":{code:"ERROR_UNABLE_TO_INVENTORY_TRANSPORT",message:"Unable to retrieve status about the transport."},"0x000010E8":{code:"ERROR_TRANSPORT_FULL",message:"Cannot use the transport because it is already in use."},"0x000010E9":{code:"ERROR_CONTROLLING_IEPORT",message:"Unable to open or close the inject/eject port."},"0x000010EA":{code:"ERROR_UNABLE_TO_EJECT_MOUNTED_MEDIA",message:"Unable to eject the medium because it is in a drive."},"0x000010EB":{code:"ERROR_CLEANER_SLOT_SET",message:"A cleaner slot is already reserved."},"0x000010EC":{code:"ERROR_CLEANER_SLOT_NOT_SET",message:"A cleaner slot is not reserved."},"0x000010ED":{code:"ERROR_CLEANER_CARTRIDGE_SPENT",message:"The cleaner cartridge has performed the maximum number of drive cleanings."},"0x000010EE":{code:"ERROR_UNEXPECTED_OMID",message:"Unexpected on-medium identifier."},"0x000010EF":{code:"ERROR_CANT_DELETE_LAST_ITEM",message:"The last remaining item in this group or resource cannot be deleted."},"0x000010F0":{code:"ERROR_MESSAGE_EXCEEDS_MAX_SIZE",message:"The message provided exceeds the maximum size allowed for this parameter."},"0x000010F1":{code:"ERROR_VOLUME_CONTAINS_SYS_FILES",message:"The volume contains system or paging files."},"0x000010F2":{code:"ERROR_INDIGENOUS_TYPE",message:"The media type cannot be removed from this library because at least one drive in the library reports it can support this media type."},"0x000010F3":{code:"ERROR_NO_SUPPORTING_DRIVES",message:"This offline media cannot be mounted on this system because no enabled drives are present that can be used."},"0x000010F4":{code:"ERROR_CLEANER_CARTRIDGE_INSTALLED",message:"A cleaner cartridge is present in the tape library."},"0x000010F5":{code:"ERROR_IEPORT_FULL",message:"Cannot use the IEport because it is not empty."},"0x000010FE":{code:"ERROR_FILE_OFFLINE",message:"The remote storage service was not able to recall the file."},"0x000010FF":{code:"ERROR_REMOTE_STORAGE_NOT_ACTIVE",message:"The remote storage service is not operational at this time."},"0x00001100":{code:"ERROR_REMOTE_STORAGE_MEDIA_ERROR",message:"The remote storage service encountered a media error."},"0x00001126":{code:"ERROR_NOT_A_REPARSE_POINT",message:"The file or directory is not a reparse point."},"0x00001127":{code:"ERROR_REPARSE_ATTRIBUTE_CONFLICT",message:"The reparse point attribute cannot be set because it conflicts with an existing attribute."},"0x00001128":{code:"ERROR_INVALID_REPARSE_DATA",message:"The data present in the reparse point buffer is invalid."},"0x00001129":{code:"ERROR_REPARSE_TAG_INVALID",message:"The tag present in the reparse point buffer is invalid."},"0x0000112A":{code:"ERROR_REPARSE_TAG_MISMATCH",message:"There is a mismatch between the tag specified in the request and the tag present in the reparse point."},"0x00001194":{code:"ERROR_VOLUME_NOT_SIS_ENABLED",message:"Single Instance Storage (SIS) is not available on this volume."},"0x00001389":{code:"ERROR_DEPENDENT_RESOURCE_EXISTS",message:"The operation cannot be completed because other resources depend on this resource."},"0x0000138A":{code:"ERROR_DEPENDENCY_NOT_FOUND",message:"The cluster resource dependency cannot be found."},"0x0000138B":{code:"ERROR_DEPENDENCY_ALREADY_EXISTS",message:"The cluster resource cannot be made dependent on the specified resource because it is already dependent."},"0x0000138C":{code:"ERROR_RESOURCE_NOT_ONLINE",message:"The cluster resource is not online."},"0x0000138D":{code:"ERROR_HOST_NODE_NOT_AVAILABLE",message:"A cluster node is not available for this operation."},"0x0000138E":{code:"ERROR_RESOURCE_NOT_AVAILABLE",message:"The cluster resource is not available."},"0x0000138F":{code:"ERROR_RESOURCE_NOT_FOUND",message:"The cluster resource could not be found."},"0x00001390":{code:"ERROR_SHUTDOWN_CLUSTER",message:"The cluster is being shut down."},"0x00001391":{code:"ERROR_CANT_EVICT_ACTIVE_NODE",message:"A cluster node cannot be evicted from the cluster unless the node is down or it is the last node."},"0x00001392":{code:"ERROR_OBJECT_ALREADY_EXISTS",message:"The object already exists."},"0x00001393":{code:"ERROR_OBJECT_IN_LIST",message:"The object is already in the list."},"0x00001394":{code:"ERROR_GROUP_NOT_AVAILABLE",message:"The cluster group is not available for any new requests."},"0x00001395":{code:"ERROR_GROUP_NOT_FOUND",message:"The cluster group could not be found."},"0x00001396":{code:"ERROR_GROUP_NOT_ONLINE",message:"The operation could not be completed because the cluster group is not online."},"0x00001397":{code:"ERROR_HOST_NODE_NOT_RESOURCE_OWNER",message:"The operation failed because either the specified cluster node is not the owner of the resource, or the node is not a possible owner of the resource."},"0x00001398":{code:"ERROR_HOST_NODE_NOT_GROUP_OWNER",message:"The operation failed because either the specified cluster node is not the owner of the group, or the node is not a possible owner of the group."},"0x00001399":{code:"ERROR_RESMON_CREATE_FAILED",message:"The cluster resource could not be created in the specified resource monitor."},"0x0000139A":{code:"ERROR_RESMON_ONLINE_FAILED",message:"The cluster resource could not be brought online by the resource monitor."},"0x0000139B":{code:"ERROR_RESOURCE_ONLINE",message:"The operation could not be completed because the cluster resource is online."},"0x0000139C":{code:"ERROR_QUORUM_RESOURCE",message:"The cluster resource could not be deleted or brought offline because it is the quorum resource."},"0x0000139D":{code:"ERROR_NOT_QUORUM_CAPABLE",message:"The cluster could not make the specified resource a quorum resource because it is not capable of being a quorum resource."},"0x0000139E":{code:"ERROR_CLUSTER_SHUTTING_DOWN",message:"The cluster software is shutting down."},"0x0000139F":{code:"ERROR_INVALID_STATE",message:"The group or resource is not in the correct state to perform the requested operation."},"0x000013A0":{code:"ERROR_RESOURCE_PROPERTIES_STORED",message:"The properties were stored but not all changes will take effect until the next time the resource is brought online."},"0x000013A1":{code:"ERROR_NOT_QUORUM_CLASS",message:"The cluster could not make the specified resource a quorum resource because it does not belong to a shared storage class."},"0x000013A2":{code:"ERROR_CORE_RESOURCE",message:"The cluster resource could not be deleted because it is a core resource."},"0x000013A3":{code:"ERROR_QUORUM_RESOURCE_ONLINE_FAILED",message:"The quorum resource failed to come online."},"0x000013A4":{code:"ERROR_QUORUMLOG_OPEN_FAILED",message:"The quorum log could not be created or mounted successfully."},"0x000013A5":{code:"ERROR_CLUSTERLOG_CORRUPT",message:"The cluster log is corrupt."},"0x000013A6":{code:"ERROR_CLUSTERLOG_RECORD_EXCEEDS_MAXSIZE",message:"The record could not be written to the cluster log because it exceeds the maximum size."},"0x000013A7":{code:"ERROR_CLUSTERLOG_EXCEEDS_MAXSIZE",message:"The cluster log exceeds its maximum size."},"0x000013A8":{code:"ERROR_CLUSTERLOG_CHKPOINT_NOT_FOUND",message:"No checkpoint record was found in the cluster log."},"0x000013A9":{code:"ERROR_CLUSTERLOG_NOT_ENOUGH_SPACE",message:"The minimum required disk space needed for logging is not available."},"0x000013AA":{code:"ERROR_QUORUM_OWNER_ALIVE",message:"The cluster node failed to take control of the quorum resource because the resource is owned by another active node."},"0x000013AB":{code:"ERROR_NETWORK_NOT_AVAILABLE",message:"A cluster network is not available for this operation."},"0x000013AC":{code:"ERROR_NODE_NOT_AVAILABLE",message:"A cluster node is not available for this operation."},"0x000013AD":{code:"ERROR_ALL_NODES_NOT_AVAILABLE",message:"All cluster nodes must be running to perform this operation."},"0x000013AE":{code:"ERROR_RESOURCE_FAILED",message:"A cluster resource failed."},"0x000013AF":{code:"ERROR_CLUSTER_INVALID_NODE",message:"The cluster node is not valid."},"0x000013B0":{code:"ERROR_CLUSTER_NODE_EXISTS",message:"The cluster node already exists."},"0x000013B1":{code:"ERROR_CLUSTER_JOIN_IN_PROGRESS",message:"A node is in the process of joining the cluster."},"0x000013B2":{code:"ERROR_CLUSTER_NODE_NOT_FOUND",message:"The cluster node was not found."},"0x000013B3":{code:"ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND",message:"The cluster local node information was not found."},"0x000013B4":{code:"ERROR_CLUSTER_NETWORK_EXISTS",message:"The cluster network already exists."},"0x000013B5":{code:"ERROR_CLUSTER_NETWORK_NOT_FOUND",message:"The cluster network was not found."},"0x000013B6":{code:"ERROR_CLUSTER_NETINTERFACE_EXISTS",message:"The cluster network interface already exists."},"0x000013B7":{code:"ERROR_CLUSTER_NETINTERFACE_NOT_FOUND",message:"The cluster network interface was not found."},"0x000013B8":{code:"ERROR_CLUSTER_INVALID_REQUEST",message:"The cluster request is not valid for this object."},"0x000013B9":{code:"ERROR_CLUSTER_INVALID_NETWORK_PROVIDER",message:"The cluster network provider is not valid."},"0x000013BA":{code:"ERROR_CLUSTER_NODE_DOWN",message:"The cluster node is down."},"0x000013BB":{code:"ERROR_CLUSTER_NODE_UNREACHABLE",message:"The cluster node is not reachable."},"0x000013BC":{code:"ERROR_CLUSTER_NODE_NOT_MEMBER",message:"The cluster node is not a member of the cluster."},"0x000013BD":{code:"ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS",message:"A cluster join operation is not in progress."},"0x000013BE":{code:"ERROR_CLUSTER_INVALID_NETWORK",message:"The cluster network is not valid."},"0x000013C0":{code:"ERROR_CLUSTER_NODE_UP",message:"The cluster node is up."},"0x000013C1":{code:"ERROR_CLUSTER_IPADDR_IN_USE",message:"The cluster IP address is already in use."},"0x000013C2":{code:"ERROR_CLUSTER_NODE_NOT_PAUSED",message:"The cluster node is not paused."},"0x000013C3":{code:"ERROR_CLUSTER_NO_SECURITY_CONTEXT",message:"No cluster security context is available."},"0x000013C4":{code:"ERROR_CLUSTER_NETWORK_NOT_INTERNAL",message:"The cluster network is not configured for internal cluster communication."},"0x000013C5":{code:"ERROR_CLUSTER_NODE_ALREADY_UP",message:"The cluster node is already up."},"0x000013C6":{code:"ERROR_CLUSTER_NODE_ALREADY_DOWN",message:"The cluster node is already down."},"0x000013C7":{code:"ERROR_CLUSTER_NETWORK_ALREADY_ONLINE",message:"The cluster network is already online."},"0x000013C8":{code:"ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE",message:"The cluster network is already offline."},"0x000013C9":{code:"ERROR_CLUSTER_NODE_ALREADY_MEMBER",message:"The cluster node is already a member of the cluster."},"0x000013CA":{code:"ERROR_CLUSTER_LAST_INTERNAL_NETWORK",message:"The cluster network is the only one configured for internal cluster communication between two or more active cluster nodes. The internal communication capability cannot be removed from the network."},"0x000013CB":{code:"ERROR_CLUSTER_NETWORK_HAS_DEPENDENTS",message:"One or more cluster resources depend on the network to provide service to clients. The client access capability cannot be removed from the network."},"0x000013CC":{code:"ERROR_INVALID_OPERATION_ON_QUORUM",message:"This operation cannot be performed on the cluster resource because it is the quorum resource. You may not bring the quorum resource offline or modify its possible owners list."},"0x000013CD":{code:"ERROR_DEPENDENCY_NOT_ALLOWED",message:"The cluster quorum resource is not allowed to have any dependencies."},"0x000013CE":{code:"ERROR_CLUSTER_NODE_PAUSED",message:"The cluster node is paused."},"0x000013CF":{code:"ERROR_NODE_CANT_HOST_RESOURCE",message:"The cluster resource cannot be brought online. The owner node cannot run this resource."},"0x000013D0":{code:"ERROR_CLUSTER_NODE_NOT_READY",message:"The cluster node is not ready to perform the requested operation."},"0x000013D1":{code:"ERROR_CLUSTER_NODE_SHUTTING_DOWN",message:"The cluster node is shutting down."},"0x000013D2":{code:"ERROR_CLUSTER_JOIN_ABORTED",message:"The cluster join operation was aborted."},"0x000013D3":{code:"ERROR_CLUSTER_INCOMPATIBLE_VERSIONS",message:"The cluster join operation failed due to incompatible software versions between the joining node and its sponsor."},"0x000013D4":{code:"ERROR_CLUSTER_MAXNUM_OF_RESOURCES_EXCEEDED",message:"This resource cannot be created because the cluster has reached the limit on the number of resources it can monitor."},"0x000013D5":{code:"ERROR_CLUSTER_SYSTEM_CONFIG_CHANGED",message:"The system configuration changed during the cluster join or form operation. The join or form operation was aborted."},"0x000013D6":{code:"ERROR_CLUSTER_RESOURCE_TYPE_NOT_FOUND",message:"The specified resource type was not found."},"0x000013D7":{code:"ERROR_CLUSTER_RESTYPE_NOT_SUPPORTED",message:"The specified node does not support a resource of this type. This may be due to version inconsistencies or due to the absence of the resource DLL on this node."},"0x000013D8":{code:"ERROR_CLUSTER_RESNAME_NOT_FOUND",message:"The specified resource name is not supported by this resource DLL. This may be due to a bad (or changed) name supplied to the resource DLL."},"0x000013D9":{code:"ERROR_CLUSTER_NO_RPC_PACKAGES_REGISTERED",message:"No authentication package could be registered with the RPC server."},"0x000013DA":{code:"ERROR_CLUSTER_OWNER_NOT_IN_PREFLIST",message:"You cannot bring the group online because the owner of the group is not in the preferred list for the group. To change the owner node for the group, move the group."},"0x000013DB":{code:"ERROR_CLUSTER_DATABASE_SEQMISMATCH",message:"The join operation failed because the cluster database sequence number has changed or is incompatible with the locker node. This may happen during a join operation if the cluster database was changing during the join."},"0x000013DC":{code:"ERROR_RESMON_INVALID_STATE",message:"The resource monitor will not allow the fail operation to be performed while the resource is in its current state. This may happen if the resource is in a pending state."},"0x000013DD":{code:"ERROR_CLUSTER_GUM_NOT_LOCKER",message:"A non-locker code received a request to reserve the lock for making global updates."},"0x000013DE":{code:"ERROR_QUORUM_DISK_NOT_FOUND",message:"The quorum disk could not be located by the cluster service."},"0x000013DF":{code:"ERROR_DATABASE_BACKUP_CORRUPT",message:"The backed-up cluster database is possibly corrupt."},"0x000013E0":{code:"ERROR_CLUSTER_NODE_ALREADY_HAS_DFS_ROOT",message:"A DFS root already exists in this cluster node."},"0x000013E1":{code:"ERROR_RESOURCE_PROPERTY_UNCHANGEABLE",message:"An attempt to modify a resource property failed because it conflicts with another existing property."},"0x00001702":{code:"ERROR_CLUSTER_MEMBERSHIP_INVALID_STATE",message:"An operation was attempted that is incompatible with the current membership state of the node."},"0x00001703":{code:"ERROR_CLUSTER_QUORUMLOG_NOT_FOUND",message:"The quorum resource does not contain the quorum log."},"0x00001704":{code:"ERROR_CLUSTER_MEMBERSHIP_HALT",message:"The membership engine requested shutdown of the cluster service on this node."},"0x00001705":{code:"ERROR_CLUSTER_INSTANCE_ID_MISMATCH",message:"The join operation failed because the cluster instance ID of the joining node does not match the cluster instance ID of the sponsor node."},"0x00001706":{code:"ERROR_CLUSTER_NETWORK_NOT_FOUND_FOR_IP",message:"A matching cluster network for the specified IP address could not be found."},"0x00001707":{code:"ERROR_CLUSTER_PROPERTY_DATA_TYPE_MISMATCH",message:"The actual data type of the property did not match the expected data type of the property."},"0x00001708":{code:"ERROR_CLUSTER_EVICT_WITHOUT_CLEANUP",message:"The cluster node was evicted from the cluster successfully, but the node was not cleaned up. To determine what clean-up steps failed and how to recover, see the Failover Clustering application event log using Event Viewer."},"0x00001709":{code:"ERROR_CLUSTER_PARAMETER_MISMATCH",message:"Two or more parameter values specified for a resource's properties are in conflict."},"0x0000170A":{code:"ERROR_NODE_CANNOT_BE_CLUSTERED",message:"This computer cannot be made a member of a cluster."},"0x0000170B":{code:"ERROR_CLUSTER_WRONG_OS_VERSION",message:"This computer cannot be made a member of a cluster because it does not have the correct version of Windows installed."},"0x0000170C":{code:"ERROR_CLUSTER_CANT_CREATE_DUP_CLUSTER_NAME",message:"A cluster cannot be created with the specified cluster name because that cluster name is already in use. Specify a different name for the cluster."},"0x0000170D":{code:"ERROR_CLUSCFG_ALREADY_COMMITTED",message:"The cluster configuration action has already been committed."},"0x0000170E":{code:"ERROR_CLUSCFG_ROLLBACK_FAILED",message:"The cluster configuration action could not be rolled back."},"0x0000170F":{code:"ERROR_CLUSCFG_SYSTEM_DISK_DRIVE_LETTER_CONFLICT",message:"The drive letter assigned to a system disk on one node conflicted with the drive letter assigned to a disk on another node."},"0x00001710":{code:"ERROR_CLUSTER_OLD_VERSION",message:"One or more nodes in the cluster are running a version of Windows that does not support this operation."},"0x00001711":{code:"ERROR_CLUSTER_MISMATCHED_COMPUTER_ACCT_NAME",message:"The name of the corresponding computer account does not match the network name for this resource."},"0x00001712":{code:"ERROR_CLUSTER_NO_NET_ADAPTERS",message:"No network adapters are available."},"0x00001713":{code:"ERROR_CLUSTER_POISONED",message:"The cluster node has been poisoned."},"0x00001714":{code:"ERROR_CLUSTER_GROUP_MOVING",message:"The group is unable to accept the request because it is moving to another node."},"0x00001715":{code:"ERROR_CLUSTER_RESOURCE_TYPE_BUSY",message:"The resource type cannot accept the request because it is too busy performing another operation."},"0x00001716":{code:"ERROR_RESOURCE_CALL_TIMED_OUT",message:"The call to the cluster resource DLL timed out."},"0x00001717":{code:"ERROR_INVALID_CLUSTER_IPV6_ADDRESS",message:"The address is not valid for an IPv6 Address resource. A global IPv6 address is required, and it must match a cluster network. Compatibility addresses are not permitted."},"0x00001718":{code:"ERROR_CLUSTER_INTERNAL_INVALID_FUNCTION",message:"An internal cluster error occurred. A call to an invalid function was attempted."},"0x00001719":{code:"ERROR_CLUSTER_PARAMETER_OUT_OF_BOUNDS",message:"A parameter value is out of acceptable range."},"0x0000171A":{code:"ERROR_CLUSTER_PARTIAL_SEND",message:"A network error occurred while sending data to another node in the cluster. The number of bytes transmitted was less than required."},"0x0000171B":{code:"ERROR_CLUSTER_REGISTRY_INVALID_FUNCTION",message:"An invalid cluster registry operation was attempted."},"0x0000171C":{code:"ERROR_CLUSTER_INVALID_STRING_TERMINATION",message:"An input string of characters is not properly terminated."},"0x0000171D":{code:"ERROR_CLUSTER_INVALID_STRING_FORMAT",message:"An input string of characters is not in a valid format for the data it represents."},"0x0000171E":{code:"ERROR_CLUSTER_DATABASE_TRANSACTION_IN_PROGRESS",message:"An internal cluster error occurred. A cluster database transaction was attempted while a transaction was already in progress."},"0x0000171F":{code:"ERROR_CLUSTER_DATABASE_TRANSACTION_NOT_IN_PROGRESS",message:"An internal cluster error occurred. There was an attempt to commit a cluster database transaction while no transaction was in progress."},"0x00001720":{code:"ERROR_CLUSTER_NULL_DATA",message:"An internal cluster error occurred. Data was not properly initialized."},"0x00001721":{code:"ERROR_CLUSTER_PARTIAL_READ",message:"An error occurred while reading from a stream of data. An unexpected number of bytes was returned."},"0x00001722":{code:"ERROR_CLUSTER_PARTIAL_WRITE",message:"An error occurred while writing to a stream of data. The required number of bytes could not be written."},"0x00001723":{code:"ERROR_CLUSTER_CANT_DESERIALIZE_DATA",message:"An error occurred while deserializing a stream of cluster data."},"0x00001724":{code:"ERROR_DEPENDENT_RESOURCE_PROPERTY_CONFLICT",message:"One or more property values for this resource are in conflict with one or more property values associated with its dependent resources."},"0x00001725":{code:"ERROR_CLUSTER_NO_QUORUM",message:"A quorum of cluster nodes was not present to form a cluster."},"0x00001726":{code:"ERROR_CLUSTER_INVALID_IPV6_NETWORK",message:"The cluster network is not valid for an IPv6 address resource, or it does not match the configured address."},"0x00001727":{code:"ERROR_CLUSTER_INVALID_IPV6_TUNNEL_NETWORK",message:"The cluster network is not valid for an IPv6 tunnel resource. Check the configuration of the IP Address resource on which the IPv6 tunnel resource depends."},"0x00001728":{code:"ERROR_QUORUM_NOT_ALLOWED_IN_THIS_GROUP",message:"Quorum resource cannot reside in the available storage group."},"0x00001770":{code:"ERROR_ENCRYPTION_FAILED",message:"The specified file could not be encrypted."},"0x00001771":{code:"ERROR_DECRYPTION_FAILED",message:"The specified file could not be decrypted."},"0x00001772":{code:"ERROR_FILE_ENCRYPTED",message:"The specified file is encrypted and the user does not have the ability to decrypt it."},"0x00001773":{code:"ERROR_NO_RECOVERY_POLICY",message:"There is no valid encryption recovery policy configured for this system."},"0x00001774":{code:"ERROR_NO_EFS",message:"The required encryption driver is not loaded for this system."},"0x00001775":{code:"ERROR_WRONG_EFS",message:"The file was encrypted with a different encryption driver than is currently loaded."},"0x00001776":{code:"ERROR_NO_USER_KEYS",message:"There are no Encrypting File System (EFS) keys defined for the user."},"0x00001777":{code:"ERROR_FILE_NOT_ENCRYPTED",message:"The specified file is not encrypted."},"0x00001778":{code:"ERROR_NOT_EXPORT_FORMAT",message:"The specified file is not in the defined EFS export format."},"0x00001779":{code:"ERROR_FILE_READ_ONLY",message:"The specified file is read-only."},"0x0000177A":{code:"ERROR_DIR_EFS_DISALLOWED",message:"The directory has been disabled for encryption."},"0x0000177B":{code:"ERROR_EFS_SERVER_NOT_TRUSTED",message:"The server is not trusted for remote encryption operation."},"0x0000177C":{code:"ERROR_BAD_RECOVERY_POLICY",message:"Recovery policy configured for this system contains invalid recovery certificate."},"0x0000177D":{code:"ERROR_EFS_ALG_BLOB_TOO_BIG",message:"The encryption algorithm used on the source file needs a bigger key buffer than the one on the destination file."},"0x0000177E":{code:"ERROR_VOLUME_NOT_SUPPORT_EFS",message:"The disk partition does not support file encryption."},"0x0000177F":{code:"ERROR_EFS_DISABLED",message:"This machine is disabled for file encryption."},"0x00001780":{code:"ERROR_EFS_VERSION_NOT_SUPPORT",message:"A newer system is required to decrypt this encrypted file."},"0x00001781":{code:"ERROR_CS_ENCRYPTION_INVALID_SERVER_RESPONSE",message:"The remote server sent an invalid response for a file being opened with client-side encryption."},"0x00001782":{code:"ERROR_CS_ENCRYPTION_UNSUPPORTED_SERVER",message:"Client-side encryption is not supported by the remote server even though it claims to support it."},"0x00001783":{code:"ERROR_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE",message:"File is encrypted and should be opened in client-side encryption mode."},"0x00001784":{code:"ERROR_CS_ENCRYPTION_NEW_ENCRYPTED_FILE",message:"A new encrypted file is being created and a $EFS needs to be provided."},"0x00001785":{code:"ERROR_CS_ENCRYPTION_FILE_NOT_CSE",message:"The SMB client requested a client-side extension (CSE) file system control (FSCTL) on a non-CSE file."},"0x000017E6":{code:"ERROR_NO_BROWSER_SERVERS_FOUND",message:"The list of servers for this workgroup is not currently available"},"0x00001838":{code:"SCHED_E_SERVICE_NOT_LOCALSYSTEM",message:"The Task Scheduler service must be configured to run in the System account to function properly. Individual tasks may be configured to run in other accounts."},"0x000019C8":{code:"ERROR_LOG_SECTOR_INVALID",message:"The log service encountered an invalid log sector."},"0x000019C9":{code:"ERROR_LOG_SECTOR_PARITY_INVALID",message:"The log service encountered a log sector with invalid block parity."},"0x000019CA":{code:"ERROR_LOG_SECTOR_REMAPPED",message:"The log service encountered a remapped log sector."},"0x000019CB":{code:"ERROR_LOG_BLOCK_INCOMPLETE",message:"The log service encountered a partial or incomplete log block."},"0x000019CC":{code:"ERROR_LOG_INVALID_RANGE",message:"The log service encountered an attempt to access data outside the active log range."},"0x000019CD":{code:"ERROR_LOG_BLOCKS_EXHAUSTED",message:"The log service user marshaling buffers are exhausted."},"0x000019CE":{code:"ERROR_LOG_READ_CONTEXT_INVALID",message:"The log service encountered an attempt to read from a marshaling area with an invalid read context."},"0x000019CF":{code:"ERROR_LOG_RESTART_INVALID",message:"The log service encountered an invalid log restart area."},"0x000019D0":{code:"ERROR_LOG_BLOCK_VERSION",message:"The log service encountered an invalid log block version."},"0x000019D1":{code:"ERROR_LOG_BLOCK_INVALID",message:"The log service encountered an invalid log block."},"0x000019D2":{code:"ERROR_LOG_READ_MODE_INVALID",message:"The log service encountered an attempt to read the log with an invalid read mode."},"0x000019D3":{code:"ERROR_LOG_NO_RESTART",message:"The log service encountered a log stream with no restart area."},"0x000019D4":{code:"ERROR_LOG_METADATA_CORRUPT",message:"The log service encountered a corrupted metadata file."},"0x000019D5":{code:"ERROR_LOG_METADATA_INVALID",message:"The log service encountered a metadata file that could not be created by the log file system."},"0x000019D6":{code:"ERROR_LOG_METADATA_INCONSISTENT",message:"The log service encountered a metadata file with inconsistent data."},"0x000019D7":{code:"ERROR_LOG_RESERVATION_INVALID",message:"The log service encountered an attempt to erroneous allocate or dispose reservation space."},"0x000019D8":{code:"ERROR_LOG_CANT_DELETE",message:"The log service cannot delete a log file or file system container."},"0x000019D9":{code:"ERROR_LOG_CONTAINER_LIMIT_EXCEEDED",message:"The log service has reached the maximum allowable containers allocated to a log file."},"0x000019DA":{code:"ERROR_LOG_START_OF_LOG",message:"The log service has attempted to read or write backward past the start of the log."},"0x000019DB":{code:"ERROR_LOG_POLICY_ALREADY_INSTALLED",message:"The log policy could not be installed because a policy of the same type is already present."},"0x000019DC":{code:"ERROR_LOG_POLICY_NOT_INSTALLED",message:"The log policy in question was not installed at the time of the request."},"0x000019DD":{code:"ERROR_LOG_POLICY_INVALID",message:"The installed set of policies on the log is invalid."},"0x000019DE":{code:"ERROR_LOG_POLICY_CONFLICT",message:"A policy on the log in question prevented the operation from completing."},"0x000019DF":{code:"ERROR_LOG_PINNED_ARCHIVE_TAIL",message:"Log space cannot be reclaimed because the log is pinned by the archive tail."},"0x000019E0":{code:"ERROR_LOG_RECORD_NONEXISTENT",message:"The log record is not a record in the log file."},"0x000019E1":{code:"ERROR_LOG_RECORDS_RESERVED_INVALID",message:"The number of reserved log records or the adjustment of the number of reserved log records is invalid."},"0x000019E2":{code:"ERROR_LOG_SPACE_RESERVED_INVALID",message:"The reserved log space or the adjustment of the log space is invalid."},"0x000019E3":{code:"ERROR_LOG_TAIL_INVALID",message:"A new or existing archive tail or base of the active log is invalid."},"0x000019E4":{code:"ERROR_LOG_FULL",message:"The log space is exhausted."},"0x000019E5":{code:"ERROR_COULD_NOT_RESIZE_LOG",message:"The log could not be set to the requested size."},"0x000019E6":{code:"ERROR_LOG_MULTIPLEXED",message:"The log is multiplexed; no direct writes to the physical log are allowed."},"0x000019E7":{code:"ERROR_LOG_DEDICATED",message:"The operation failed because the log is a dedicated log."},"0x000019E8":{code:"ERROR_LOG_ARCHIVE_NOT_IN_PROGRESS",message:"The operation requires an archive context."},"0x000019E9":{code:"ERROR_LOG_ARCHIVE_IN_PROGRESS",message:"Log archival is in progress."},"0x000019EA":{code:"ERROR_LOG_EPHEMERAL",message:"The operation requires a non-ephemeral log, but the log is ephemeral."},"0x000019EB":{code:"ERROR_LOG_NOT_ENOUGH_CONTAINERS",message:"The log must have at least two containers before it can be read from or written to."},"0x000019EC":{code:"ERROR_LOG_CLIENT_ALREADY_REGISTERED",message:"A log client has already registered on the stream."},"0x000019ED":{code:"ERROR_LOG_CLIENT_NOT_REGISTERED",message:"A log client has not been registered on the stream."},"0x000019EE":{code:"ERROR_LOG_FULL_HANDLER_IN_PROGRESS",message:"A request has already been made to handle the log full condition."},"0x000019EF":{code:"ERROR_LOG_CONTAINER_READ_FAILED",message:"The log service encountered an error when attempting to read from a log container."},"0x000019F0":{code:"ERROR_LOG_CONTAINER_WRITE_FAILED",message:"The log service encountered an error when attempting to write to a log container."},"0x000019F1":{code:"ERROR_LOG_CONTAINER_OPEN_FAILED",message:"The log service encountered an error when attempting to open a log container."},"0x000019F2":{code:"ERROR_LOG_CONTAINER_STATE_INVALID",message:"The log service encountered an invalid container state when attempting a requested action."},"0x000019F3":{code:"ERROR_LOG_STATE_INVALID",message:"The log service is not in the correct state to perform a requested action."},"0x000019F4":{code:"ERROR_LOG_PINNED",message:"The log space cannot be reclaimed because the log is pinned."},"0x000019F5":{code:"ERROR_LOG_METADATA_FLUSH_FAILED",message:"The log metadata flush failed."},"0x000019F6":{code:"ERROR_LOG_INCONSISTENT_SECURITY",message:"Security on the log and its containers is inconsistent."},"0x000019F7":{code:"ERROR_LOG_APPENDED_FLUSH_FAILED",message:"Records were appended to the log or reservation changes were made, but the log could not be flushed."},"0x000019F8":{code:"ERROR_LOG_PINNED_RESERVATION",message:"The log is pinned due to reservation consuming most of the log space. Free some reserved records to make space available."},"0x00001A2C":{code:"ERROR_INVALID_TRANSACTION",message:"The transaction handle associated with this operation is not valid."},"0x00001A2D":{code:"ERROR_TRANSACTION_NOT_ACTIVE",message:"The requested operation was made in the context of a transaction that is no longer active."},"0x00001A2E":{code:"ERROR_TRANSACTION_REQUEST_NOT_VALID",message:"The requested operation is not valid on the transaction object in its current state."},"0x00001A2F":{code:"ERROR_TRANSACTION_NOT_REQUESTED",message:"The caller has called a response API, but the response is not expected because the transaction manager did not issue the corresponding request to the caller."},"0x00001A30":{code:"ERROR_TRANSACTION_ALREADY_ABORTED",message:"It is too late to perform the requested operation because the transaction has already been aborted."},"0x00001A31":{code:"ERROR_TRANSACTION_ALREADY_COMMITTED",message:"It is too late to perform the requested operation because the transaction has already been committed."},"0x00001A32":{code:"ERROR_TM_INITIALIZATION_FAILED",message:"The transaction manager was unable to be successfully initialized. Transacted operations are not supported."},"0x00001A33":{code:"ERROR_RESOURCEMANAGER_READ_ONLY",message:"The specified resource manager made no changes or updates to the resource under this transaction."},"0x00001A34":{code:"ERROR_TRANSACTION_NOT_JOINED",message:"The resource manager has attempted to prepare a transaction that it has not successfully joined."},"0x00001A35":{code:"ERROR_TRANSACTION_SUPERIOR_EXISTS",message:"The transaction object already has a superior enlistment, and the caller attempted an operation that would have created a new superior. Only a single superior enlistment is allowed."},"0x00001A36":{code:"ERROR_CRM_PROTOCOL_ALREADY_EXISTS",message:"The resource manager tried to register a protocol that already exists."},"0x00001A37":{code:"ERROR_TRANSACTION_PROPAGATION_FAILED",message:"The attempt to propagate the transaction failed."},"0x00001A38":{code:"ERROR_CRM_PROTOCOL_NOT_FOUND",message:"The requested propagation protocol was not registered as a CRM."},"0x00001A39":{code:"ERROR_TRANSACTION_INVALID_MARSHALL_BUFFER",message:"The buffer passed in to PushTransaction or PullTransaction is not in a valid format."},"0x00001A3A":{code:"ERROR_CURRENT_TRANSACTION_NOT_VALID",message:"The current transaction context associated with the thread is not a valid handle to a transaction object."},"0x00001A3B":{code:"ERROR_TRANSACTION_NOT_FOUND",message:"The specified transaction object could not be opened because it was not found."},"0x00001A3C":{code:"ERROR_RESOURCEMANAGER_NOT_FOUND",message:"The specified resource manager object could not be opened because it was not found."},"0x00001A3D":{code:"ERROR_ENLISTMENT_NOT_FOUND",message:"The specified enlistment object could not be opened because it was not found."},"0x00001A3E":{code:"ERROR_TRANSACTIONMANAGER_NOT_FOUND",message:"The specified transaction manager object could not be opened because it was not found."},"0x00001A3F":{code:"ERROR_TRANSACTIONMANAGER_NOT_ONLINE",message:"The specified resource manager was unable to create an enlistment because its associated transaction manager is not online."},"0x00001A40":{code:"ERROR_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION",message:"The specified transaction manager was unable to create the objects contained in its log file in the ObjectB namespace. Therefore, the transaction manager was unable to recover."},"0x00001A90":{code:"ERROR_TRANSACTIONAL_CONFLICT",message:"The function attempted to use a name that is reserved for use by another transaction."},"0x00001A91":{code:"ERROR_RM_NOT_ACTIVE",message:"Transaction support within the specified file system resource manager is not started or was shut down due to an error."},"0x00001A92":{code:"ERROR_RM_METADATA_CORRUPT",message:"The metadata of the resource manager has been corrupted. The resource manager will not function."},"0x00001A93":{code:"ERROR_DIRECTORY_NOT_RM",message:"The specified directory does not contain a resource manager."},"0x00001A95":{code:"ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE",message:"The remote server or share does not support transacted file operations."},"0x00001A96":{code:"ERROR_LOG_RESIZE_INVALID_SIZE",message:"The requested log size is invalid."},"0x00001A97":{code:"ERROR_OBJECT_NO_LONGER_EXISTS",message:"The object (file, stream, link) corresponding to the handle has been deleted by a transaction savepoint rollback."},"0x00001A98":{code:"ERROR_STREAM_MINIVERSION_NOT_FOUND",message:"The specified file miniversion was not found for this transacted file open."},"0x00001A99":{code:"ERROR_STREAM_MINIVERSION_NOT_VALID",message:"The specified file miniversion was found but has been invalidated. The most likely cause is a transaction savepoint rollback."},"0x00001A9A":{code:"ERROR_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION",message:"A miniversion may only be opened in the context of the transaction that created it."},"0x00001A9B":{code:"ERROR_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT",message:"It is not possible to open a miniversion with modify access."},"0x00001A9C":{code:"ERROR_CANT_CREATE_MORE_STREAM_MINIVERSIONS",message:"It is not possible to create any more miniversions for this stream."},"0x00001A9E":{code:"ERROR_REMOTE_FILE_VERSION_MISMATCH",message:"The remote server sent mismatching version numbers or FID for a file opened with transactions."},"0x00001A9F":{code:"ERROR_HANDLE_NO_LONGER_VALID",message:"The handle has been invalidated by a transaction. The most likely cause is the presence of memory mapping on a file, or an open handle when the transaction ended or rolled back to savepoint."},"0x00001AA0":{code:"ERROR_NO_TXF_METADATA",message:"There is no transaction metadata on the file."},"0x00001AA1":{code:"ERROR_LOG_CORRUPTION_DETECTED",message:"The log data is corrupt."},"0x00001AA2":{code:"ERROR_CANT_RECOVER_WITH_HANDLE_OPEN",message:"The file cannot be recovered because a handle is still open on it."},"0x00001AA3":{code:"ERROR_RM_DISCONNECTED",message:"The transaction outcome is unavailable because the resource manager responsible for it is disconnected."},"0x00001AA4":{code:"ERROR_ENLISTMENT_NOT_SUPERIOR",message:"The request was rejected because the enlistment in question is not a superior enlistment."},"0x00001AA5":{code:"ERROR_RECOVERY_NOT_NEEDED",message:"The transactional resource manager is already consistent. Recovery is not needed."},"0x00001AA6":{code:"ERROR_RM_ALREADY_STARTED",message:"The transactional resource manager has already been started."},"0x00001AA7":{code:"ERROR_FILE_IDENTITY_NOT_PERSISTENT",message:"The file cannot be opened in a transaction because its identity depends on the outcome of an unresolved transaction."},"0x00001AA8":{code:"ERROR_CANT_BREAK_TRANSACTIONAL_DEPENDENCY",message:"The operation cannot be performed because another transaction is depending on the fact that this property will not change."},"0x00001AA9":{code:"ERROR_CANT_CROSS_RM_BOUNDARY",message:"The operation would involve a single file with two transactional resource managers and is therefore not allowed."},"0x00001AAA":{code:"ERROR_TXF_DIR_NOT_EMPTY",message:"The $Txf directory must be empty for this operation to succeed."},"0x00001AAB":{code:"ERROR_INDOUBT_TRANSACTIONS_EXIST",message:"The operation would leave a transactional resource manager in an inconsistent state and is, therefore, not allowed."},"0x00001AAC":{code:"ERROR_TM_VOLATILE",message:"The operation could not be completed because the transaction manager does not have a log."},"0x00001AAD":{code:"ERROR_ROLLBACK_TIMER_EXPIRED",message:"A rollback could not be scheduled because a previously scheduled rollback has already been executed or is queued for execution."},"0x00001AAE":{code:"ERROR_TXF_ATTRIBUTE_CORRUPT",message:"The transactional metadata attribute on the file or directory is corrupt and unreadable."},"0x00001AAF":{code:"ERROR_EFS_NOT_ALLOWED_IN_TRANSACTION",message:"The encryption operation could not be completed because a transaction is active."},"0x00001AB0":{code:"ERROR_TRANSACTIONAL_OPEN_NOT_ALLOWED",message:"This object is not allowed to be opened in a transaction."},"0x00001AB1":{code:"ERROR_LOG_GROWTH_FAILED",message:"An attempt to create space in the transactional resource manager's log failed. The failure status has been recorded in the event log."},"0x00001AB2":{code:"ERROR_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE",message:"Memory mapping (creating a mapped section) to a remote file under a transaction is not supported."},"0x00001AB3":{code:"ERROR_TXF_METADATA_ALREADY_PRESENT",message:"Transaction metadata is already present on this file and cannot be superseded."},"0x00001AB4":{code:"ERROR_TRANSACTION_SCOPE_CALLBACKS_NOT_SET",message:"A transaction scope could not be entered because the scope handler has not been initialized."},"0x00001AB5":{code:"ERROR_TRANSACTION_REQUIRED_PROMOTION",message:"Promotion was required to allow the resource manager to enlist, but the transaction was set to disallow it."},"0x00001AB6":{code:"ERROR_CANNOT_EXECUTE_FILE_IN_TRANSACTION",message:"This file is open for modification in an unresolved transaction and may be opened for execution only by a transacted reader."},"0x00001AB7":{code:"ERROR_TRANSACTIONS_NOT_FROZEN",message:"The request to thaw frozen transactions was ignored because transactions were not previously frozen."},"0x00001AB8":{code:"ERROR_TRANSACTION_FREEZE_IN_PROGRESS",message:"Transactions cannot be frozen because a freeze is already in progress."},"0x00001AB9":{code:"ERROR_NOT_SNAPSHOT_VOLUME",message:"The target volume is not a snapshot volume. This operation is only valid on a volume mounted as a snapshot."},"0x00001ABA":{code:"ERROR_NO_SAVEPOINT_WITH_OPEN_FILES",message:"The savepoint operation failed because files are open on the transaction. This is not permitted."},"0x00001ABB":{code:"ERROR_DATA_LOST_REPAIR",message:"Windows has discovered corruption in a file, and that file has since been repaired. Data loss may have occurred."},"0x00001ABC":{code:"ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION",message:"The sparse operation could not be completed because a transaction is active on the file."},"0x00001ABD":{code:"ERROR_TM_IDENTITY_MISMATCH",message:"The call to create a transaction manager object failed because the Tm Identity stored in the logfile does not match the Tm Identity that was passed in as an argument."},"0x00001ABE":{code:"ERROR_FLOATED_SECTION",message:"I/O was attempted on a section object that has been floated as a result of a transaction ending. There is no valid data."},"0x00001ABF":{code:"ERROR_CANNOT_ACCEPT_TRANSACTED_WORK",message:"The transactional resource manager cannot currently accept transacted work due to a transient condition, such as low resources."},"0x00001AC0":{code:"ERROR_CANNOT_ABORT_TRANSACTIONS",message:"The transactional resource manager had too many transactions outstanding that could not be aborted. The transactional resource manager has been shut down."},"0x00001B59":{code:"ERROR_CTX_WINSTATION_NAME_INVALID",message:"The specified session name is invalid."},"0x00001B5A":{code:"ERROR_CTX_INVALID_PD",message:"The specified protocol driver is invalid."},"0x00001B5B":{code:"ERROR_CTX_PD_NOT_FOUND",message:"The specified protocol driver was not found in the system path."},"0x00001B5C":{code:"ERROR_CTX_WD_NOT_FOUND",message:"The specified terminal connection driver was not found in the system path."},"0x00001B5D":{code:"ERROR_CTX_CANNOT_MAKE_EVENTLOG_ENTRY",message:"A registry key for event logging could not be created for this session."},"0x00001B5E":{code:"ERROR_CTX_SERVICE_NAME_COLLISION",message:"A service with the same name already exists on the system."},"0x00001B5F":{code:"ERROR_CTX_CLOSE_PENDING",message:"A close operation is pending on the session."},"0x00001B60":{code:"ERROR_CTX_NO_OUTBUF",message:"There are no free output buffers available."},"0x00001B61":{code:"ERROR_CTX_MODEM_INF_NOT_FOUND",message:"The MODEM.INF file was not found."},"0x00001B62":{code:"ERROR_CTX_INVALID_MODEMNAME",message:"The modem name was not found in the MODEM.INF file."},"0x00001B63":{code:"ERROR_CTX_MODEM_RESPONSE_ERROR",message:"The modem did not accept the command sent to it. Verify that the configured modem name matches the attached modem."},"0x00001B64":{code:"ERROR_CTX_MODEM_RESPONSE_TIMEOUT",message:"The modem did not respond to the command sent to it. Verify that the modem is properly cabled and turned on."},"0x00001B65":{code:"ERROR_CTX_MODEM_RESPONSE_NO_CARRIER",message:"Carrier detect has failed or carrier has been dropped due to disconnect."},"0x00001B66":{code:"ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE",message:"Dial tone not detected within the required time. Verify that the phone cable is properly attached and functional."},"0x00001B67":{code:"ERROR_CTX_MODEM_RESPONSE_BUSY",message:"Busy signal detected at remote site on callback."},"0x00001B68":{code:"ERROR_CTX_MODEM_RESPONSE_VOICE",message:"Voice detected at remote site on callback."},"0x00001B69":{code:"ERROR_CTX_TD_ERROR",message:"Transport driver error."},"0x00001B6E":{code:"ERROR_CTX_WINSTATION_NOT_FOUND",message:"The specified session cannot be found."},"0x00001B6F":{code:"ERROR_CTX_WINSTATION_ALREADY_EXISTS",message:"The specified session name is already in use."},"0x00001B70":{code:"ERROR_CTX_WINSTATION_BUSY",message:"The requested operation cannot be completed because the terminal connection is currently busy processing a connect, disconnect, reset, or delete operation."},"0x00001B71":{code:"ERROR_CTX_BAD_VIDEO_MODE",message:"An attempt has been made to connect to a session whose video mode is not supported by the current client."},"0x00001B7B":{code:"ERROR_CTX_GRAPHICS_INVALID",message:"The application attempted to enable DOS graphics mode. DOS graphics mode is not supported."},"0x00001B7D":{code:"ERROR_CTX_LOGON_DISABLED",message:"Your interactive logon privilege has been disabled. Contact your administrator."},"0x00001B7E":{code:"ERROR_CTX_NOT_CONSOLE",message:"The requested operation can be performed only on the system console. This is most often the result of a driver or system DLL requiring direct console access."},"0x00001B80":{code:"ERROR_CTX_CLIENT_QUERY_TIMEOUT",message:"The client failed to respond to the server connect message."},"0x00001B81":{code:"ERROR_CTX_CONSOLE_DISCONNECT",message:"Disconnecting the console session is not supported."},"0x00001B82":{code:"ERROR_CTX_CONSOLE_CONNECT",message:"Reconnecting a disconnected session to the console is not supported."},"0x00001B84":{code:"ERROR_CTX_SHADOW_DENIED",message:"The request to control another session remotely was denied."},"0x00001B85":{code:"ERROR_CTX_WINSTATION_ACCESS_DENIED",message:"The requested session access is denied."},"0x00001B89":{code:"ERROR_CTX_INVALID_WD",message:"The specified terminal connection driver is invalid."},"0x00001B8A":{code:"ERROR_CTX_SHADOW_INVALID",message:"The requested session cannot be controlled remotely. This may be because the session is disconnected or does not currently have a user logged on."},"0x00001B8B":{code:"ERROR_CTX_SHADOW_DISABLED",message:"The requested session is not configured to allow remote control."},"0x00001B8C":{code:"ERROR_CTX_CLIENT_LICENSE_IN_USE",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number is currently being used by another user. Call your system administrator to obtain a unique license number."},"0x00001B8D":{code:"ERROR_CTX_CLIENT_LICENSE_NOT_SET",message:"Your request to connect to this terminal server has been rejected. Your terminal server client license number has not been entered for this copy of the terminal server client. Contact your system administrator."},"0x00001B8E":{code:"ERROR_CTX_LICENSE_NOT_AVAILABLE",message:"The number of connections to this computer is limited and all connections are in use right now. Try connecting later or contact your system administrator."},"0x00001B8F":{code:"ERROR_CTX_LICENSE_CLIENT_INVALID",message:"The client you are using is not licensed to use this system. Your logon request is denied."},"0x00001B90":{code:"ERROR_CTX_LICENSE_EXPIRED",message:"The system license has expired. Your logon request is denied."},"0x00001B91":{code:"ERROR_CTX_SHADOW_NOT_RUNNING",message:"Remote control could not be terminated because the specified session is not currently being remotely controlled."},"0x00001B92":{code:"ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE",message:"The remote control of the console was terminated because the display mode was changed. Changing the display mode in a remote control session is not supported."},"0x00001B93":{code:"ERROR_ACTIVATION_COUNT_EXCEEDED",message:"Activation has already been reset the maximum number of times for this installation. Your activation timer will not be cleared."},"0x00001B94":{code:"ERROR_CTX_WINSTATIONS_DISABLED",message:"Remote logons are currently disabled."},"0x00001B95":{code:"ERROR_CTX_ENCRYPTION_LEVEL_REQUIRED",message:"You do not have the proper encryption level to access this session."},"0x00001B96":{code:"ERROR_CTX_SESSION_IN_USE",message:"The user %s\\%s is currently logged on to this computer. Only the current user or an administrator can log on to this computer."},"0x00001B97":{code:"ERROR_CTX_NO_FORCE_LOGOFF",message:"The user %s\\%s is already logged on to the console of this computer. You do not have permission to log in at this time. To resolve this issue, contact %s\\%s and have them log off."},"0x00001B98":{code:"ERROR_CTX_ACCOUNT_RESTRICTION",message:"Unable to log you on because of an account restriction."},"0x00001B99":{code:"ERROR_RDP_PROTOCOL_ERROR",message:"The RDP component %2 detected an error in the protocol stream and has disconnected the client."},"0x00001B9A":{code:"ERROR_CTX_CDM_CONNECT",message:"The Client Drive Mapping Service has connected on terminal connection."},"0x00001B9B":{code:"ERROR_CTX_CDM_DISCONNECT",message:"The Client Drive Mapping Service has disconnected on terminal connection."},"0x00001B9C":{code:"ERROR_CTX_SECURITY_LAYER_ERROR",message:"The terminal server security layer detected an error in the protocol stream and has disconnected the client."},"0x00001B9D":{code:"ERROR_TS_INCOMPATIBLE_SESSIONS",message:"The target session is incompatible with the current session."},"0x00001F41":{code:"FRS_ERR_INVALID_API_SEQUENCE",message:"The file replication service API was called incorrectly."},"0x00001F42":{code:"FRS_ERR_STARTING_SERVICE",message:"The file replication service cannot be started."},"0x00001F43":{code:"FRS_ERR_STOPPING_SERVICE",message:"The file replication service cannot be stopped."},"0x00001F44":{code:"FRS_ERR_INTERNAL_API",message:"The file replication service API terminated the request. The event log may have more information."},"0x00001F45":{code:"FRS_ERR_INTERNAL",message:"The file replication service terminated the request. The event log may have more information."},"0x00001F46":{code:"FRS_ERR_SERVICE_COMM",message:"The file replication service cannot be contacted. The event log may have more information."},"0x00001F47":{code:"FRS_ERR_INSUFFICIENT_PRIV",message:"The file replication service cannot satisfy the request because the user has insufficient privileges. The event log may have more information."},"0x00001F48":{code:"FRS_ERR_AUTHENTICATION",message:"The file replication service cannot satisfy the request because authenticated RPC is not available. The event log may have more information."},"0x00001F49":{code:"FRS_ERR_PARENT_INSUFFICIENT_PRIV",message:"The file replication service cannot satisfy the request because the user has insufficient privileges on the domain controller. The event log may have more information."},"0x00001F4A":{code:"FRS_ERR_PARENT_AUTHENTICATION",message:"The file replication service cannot satisfy the request because authenticated RPC is not available on the domain controller. The event log may have more information."},"0x00001F4B":{code:"FRS_ERR_CHILD_TO_PARENT_COMM",message:"The file replication service cannot communicate with the file replication service on the domain controller. The event log may have more information."},"0x00001F4C":{code:"FRS_ERR_PARENT_TO_CHILD_COMM",message:"The file replication service on the domain controller cannot communicate with the file replication service on this computer. The event log may have more information."},"0x00001F4D":{code:"FRS_ERR_SYSVOL_POPULATE",message:"The file replication service cannot populate the system volume because of an internal error. The event log may have more information."},"0x00001F4E":{code:"FRS_ERR_SYSVOL_POPULATE_TIMEOUT",message:"The file replication service cannot populate the system volume because of an internal time-out. The event log may have more information."},"0x00001F4F":{code:"FRS_ERR_SYSVOL_IS_BUSY",message:"The file replication service cannot process the request. The system volume is busy with a previous request."},"0x00001F50":{code:"FRS_ERR_SYSVOL_DEMOTE",message:"The file replication service cannot stop replicating the system volume because of an internal error. The event log may have more information."},"0x00001F51":{code:"FRS_ERR_INVALID_SERVICE_PARAMETER",message:"The file replication service detected an invalid parameter."},"0x00002008":{code:"ERROR_DS_NOT_INSTALLED",message:"An error occurred while installing the directory service. For more information, see the event log."},"0x00002009":{code:"ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY",message:"The directory service evaluated group memberships locally."},"0x0000200A":{code:"ERROR_DS_NO_ATTRIBUTE_OR_VALUE",message:"The specified directory service attribute or value does not exist."},"0x0000200B":{code:"ERROR_DS_INVALID_ATTRIBUTE_YNTAX",message:"The attribute syntax specified to the directory service is invalid."},"0x0000200C":{code:"ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED",message:"The attribute type specified to the directory service is not defined."},"0x0000200D":{code:"ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS",message:"The specified directory service attribute or value already exists."},"0x0000200E":{code:"ERROR_DS_BUSY",message:"The directory service is busy."},"0x0000200F":{code:"ERROR_DS_UNAVAILABLE",message:"The directory service is unavailable."},"0x00002010":{code:"ERROR_DS_NO_RIDS_ALLOCATED",message:"The directory service was unable to allocate a relative identifier."},"0x00002011":{code:"ERROR_DS_NO_MORE_RIDS",message:"The directory service has exhausted the pool of relative identifiers."},"0x00002012":{code:"ERROR_DS_INCORRECT_ROLE_OWNER",message:"The requested operation could not be performed because the directory service is not the master for that type of operation."},"0x00002013":{code:"ERROR_DS_RIDMGR_INIT_ERROR",message:"The directory service was unable to initialize the subsystem that allocates relative identifiers."},"0x00002014":{code:"ERROR_DS_OBJ_CLASS_VIOLATION",message:"The requested operation did not satisfy one or more constraints associated with the class of the object."},"0x00002015":{code:"ERROR_DS_CANT_ON_NON_LEAF",message:"The directory service can perform the requested operation only on a leaf object."},"0x00002016":{code:"ERROR_DS_CANT_ON_RDN",message:"The directory service cannot perform the requested operation on the relative distinguished name (RDN) attribute of an object."},"0x00002017":{code:"ERROR_DS_CANT_MOD_OBJ_CLASS",message:"The directory service detected an attempt to modify the object class of an object."},"0x00002018":{code:"ERROR_DS_CROSS_DOM_MOVE_ERROR",message:"The requested cross-domain move operation could not be performed."},"0x00002019":{code:"ERROR_DS_GC_NOT_AVAILABLE",message:"Unable to contact the global catalog (GC) server."},"0x0000201A":{code:"ERROR_SHARED_POLICY",message:"The policy object is shared and can only be modified at the root."},"0x0000201B":{code:"ERROR_POLICY_OBJECT_NOT_FOUND",message:"The policy object does not exist."},"0x0000201C":{code:"ERROR_POLICY_ONLY_IN_DS",message:"The requested policy information is only in the directory service."},"0x0000201D":{code:"ERROR_PROMOTION_ACTIVE",message:"A domain controller promotion is currently active."},"0x0000201E":{code:"ERROR_NO_PROMOTION_ACTIVE",message:"A domain controller promotion is not currently active."},"0x00002020":{code:"ERROR_DS_OPERATIONS_ERROR",message:"An operations error occurred."},"0x00002021":{code:"ERROR_DS_PROTOCOL_ERROR",message:"A protocol error occurred."},"0x00002022":{code:"ERROR_DS_TIMELIMIT_EXCEEDED",message:"The time limit for this request was exceeded."},"0x00002023":{code:"ERROR_DS_SIZELIMIT_EXCEEDED",message:"The size limit for this request was exceeded."},"0x00002024":{code:"ERROR_DS_ADMIN_LIMIT_EXCEEDED",message:"The administrative limit for this request was exceeded."},"0x00002025":{code:"ERROR_DS_COMPARE_FALSE",message:"The compare response was false."},"0x00002026":{code:"ERROR_DS_COMPARE_TRUE",message:"The compare response was true."},"0x00002027":{code:"ERROR_DS_AUTH_METHOD_NOT_SUPPORTED",message:"The requested authentication method is not supported by the server."},"0x00002028":{code:"ERROR_DS_STRONG_AUTH_REQUIRED",message:"A more secure authentication method is required for this server."},"0x00002029":{code:"ERROR_DS_INAPPROPRIATE_AUTH",message:"Inappropriate authentication."},"0x0000202A":{code:"ERROR_DS_AUTH_UNKNOWN",message:"The authentication mechanism is unknown."},"0x0000202B":{code:"ERROR_DS_REFERRAL",message:"A referral was returned from the server."},"0x0000202C":{code:"ERROR_DS_UNAVAILABLE_CRIT_EXTENSION",message:"The server does not support the requested critical extension."},"0x0000202D":{code:"ERROR_DS_CONFIDENTIALITY_REQUIRED",message:"This request requires a secure connection."},"0x0000202E":{code:"ERROR_DS_INAPPROPRIATE_MATCHING",message:"Inappropriate matching."},"0x0000202F":{code:"ERROR_DS_CONSTRAINT_VIOLATION",message:"A constraint violation occurred."},"0x00002030":{code:"ERROR_DS_NO_SUCH_OBJECT",message:"There is no such object on the server."},"0x00002031":{code:"ERROR_DS_ALIAS_PROBLEM",message:"There is an alias problem."},"0x00002032":{code:"ERROR_DS_INVALID_DN_SYNTAX",message:"An invalid dn syntax has been specified."},"0x00002033":{code:"ERROR_DS_IS_LEAF",message:"The object is a leaf object."},"0x00002034":{code:"ERROR_DS_ALIAS_DEREF_PROBLEM",message:"There is an alias dereferencing problem."},"0x00002035":{code:"ERROR_DS_UNWILLING_TO_PERFORM",message:"The server is unwilling to process the request."},"0x00002036":{code:"ERROR_DS_LOOP_DETECT",message:"A loop has been detected."},"0x00002037":{code:"ERROR_DS_NAMING_VIOLATION",message:"There is a naming violation."},"0x00002038":{code:"ERROR_DS_OBJECT_RESULTS_TOO_LARGE",message:"The result set is too large."},"0x00002039":{code:"ERROR_DS_AFFECTS_MULTIPLE_DSAS",message:"The operation affects multiple DSAs."},"0x0000203A":{code:"ERROR_DS_SERVER_DOWN",message:"The server is not operational."},"0x0000203B":{code:"ERROR_DS_LOCAL_ERROR",message:"A local error has occurred."},"0x0000203C":{code:"ERROR_DS_ENCODING_ERROR",message:"An encoding error has occurred."},"0x0000203D":{code:"ERROR_DS_DECODING_ERROR",message:"A decoding error has occurred."},"0x0000203E":{code:"ERROR_DS_FILTER_UNKNOWN",message:"The search filter cannot be recognized."},"0x0000203F":{code:"ERROR_DS_PARAM_ERROR",message:"One or more parameters are illegal."},"0x00002040":{code:"ERROR_DS_NOT_SUPPORTED",message:"The specified method is not supported."},"0x00002041":{code:"ERROR_DS_NO_RESULTS_RETURNED",message:"No results were returned."},"0x00002042":{code:"ERROR_DS_CONTROL_NOT_FOUND",message:"The specified control is not supported by the server."},"0x00002043":{code:"ERROR_DS_CLIENT_LOOP",message:"A referral loop was detected by the client."},"0x00002044":{code:"ERROR_DS_REFERRAL_LIMIT_EXCEEDED",message:"The preset referral limit was exceeded."},"0x00002045":{code:"ERROR_DS_SORT_CONTROL_MISSING",message:"The search requires a SORT control."},"0x00002046":{code:"ERROR_DS_OFFSET_RANGE_ERROR",message:"The search results exceed the offset range specified."},"0x0000206D":{code:"ERROR_DS_ROOT_MUST_BE_NC",message:"The root object must be the head of a naming context. The root object cannot have an instantiated parent."},"0x0000206E":{code:"ERROR_DS_ADD_REPLICA_INHIBITED",message:"The add replica operation cannot be performed. The naming context must be writable to create the replica."},"0x0000206F":{code:"ERROR_DS_ATT_NOT_DEF_IN_SCHEMA",message:"A reference to an attribute that is not defined in the schema occurred."},"0x00002070":{code:"ERROR_DS_MAX_OBJ_SIZE_EXCEEDED",message:"The maximum size of an object has been exceeded."},"0x00002071":{code:"ERROR_DS_OBJ_STRING_NAME_EXISTS",message:"An attempt was made to add an object to the directory with a name that is already in use."},"0x00002072":{code:"ERROR_DS_NO_RDN_DEFINED_IN_SCHEMA",message:"An attempt was made to add an object of a class that does not have an RDN defined in the schema."},"0x00002073":{code:"ERROR_DS_RDN_DOESNT_MATCH_SCHEMA",message:"An attempt was made to add an object using an RDN that is not the RDN defined in the schema."},"0x00002074":{code:"ERROR_DS_NO_REQUESTED_ATTS_FOUND",message:"None of the requested attributes were found on the objects."},"0x00002075":{code:"ERROR_DS_USER_BUFFER_TO_SMALL",message:"The user buffer is too small."},"0x00002076":{code:"ERROR_DS_ATT_IS_NOT_ON_OBJ",message:"The attribute specified in the operation is not present on the object."},"0x00002077":{code:"ERROR_DS_ILLEGAL_MOD_OPERATION",message:"Illegal modify operation. Some aspect of the modification is not permitted."},"0x00002078":{code:"ERROR_DS_OBJ_TOO_LARGE",message:"The specified object is too large."},"0x00002079":{code:"ERROR_DS_BAD_INSTANCE_TYPE",message:"The specified instance type is not valid."},"0x0000207A":{code:"ERROR_DS_MASTERDSA_REQUIRED",message:"The operation must be performed at a master DSA."},"0x0000207B":{code:"ERROR_DS_OBJECT_CLASS_REQUIRED",message:"The object class attribute must be specified."},"0x0000207C":{code:"ERROR_DS_MISSING_REQUIRED_ATT",message:"A required attribute is missing."},"0x0000207D":{code:"ERROR_DS_ATT_NOT_DEF_FOR_CLASS",message:"An attempt was made to modify an object to include an attribute that is not legal for its class."},"0x0000207E":{code:"ERROR_DS_ATT_ALREADY_EXISTS",message:"The specified attribute is already present on the object."},"0x00002080":{code:"ERROR_DS_CANT_ADD_ATT_VALUES",message:"The specified attribute is not present, or has no values."},"0x00002081":{code:"ERROR_DS_SINGLE_VALUE_CONSTRAINT",message:"Multiple values were specified for an attribute that can have only one value."},"0x00002082":{code:"ERROR_DS_RANGE_CONSTRAINT",message:"A value for the attribute was not in the acceptable range of values."},"0x00002083":{code:"ERROR_DS_ATT_VAL_ALREADY_EXISTS",message:"The specified value already exists."},"0x00002084":{code:"ERROR_DS_CANT_REM_MISSING_ATT",message:"The attribute cannot be removed because it is not present on the object."},"0x00002085":{code:"ERROR_DS_CANT_REM_MISSING_ATT_VAL",message:"The attribute value cannot be removed because it is not present on the object."},"0x00002086":{code:"ERROR_DS_ROOT_CANT_BE_SUBREF",message:"The specified root object cannot be a subreference."},"0x00002087":{code:"ERROR_DS_NO_CHAINING",message:"Chaining is not permitted."},"0x00002088":{code:"ERROR_DS_NO_CHAINED_EVAL",message:"Chained evaluation is not permitted."},"0x00002089":{code:"ERROR_DS_NO_PARENT_OBJECT",message:"The operation could not be performed because the object's parent is either uninstantiated or deleted."},"0x0000208A":{code:"ERROR_DS_PARENT_IS_AN_ALIAS",message:"Having a parent that is an alias is not permitted. Aliases are leaf objects."},"0x0000208B":{code:"ERROR_DS_CANT_MIX_MASTER_AND_REPS",message:"The object and parent must be of the same type, either both masters or both replicas."},"0x0000208C":{code:"ERROR_DS_CHILDREN_EXIST",message:"The operation cannot be performed because child objects exist. This operation can only be performed on a leaf object."},"0x0000208D":{code:"ERROR_DS_OBJ_NOT_FOUND",message:"Directory object not found."},"0x0000208E":{code:"ERROR_DS_ALIASED_OBJ_MISSING",message:"The aliased object is missing."},"0x0000208F":{code:"ERROR_DS_BAD_NAME_SYNTAX",message:"The object name has bad syntax."},"0x00002090":{code:"ERROR_DS_ALIAS_POINTS_TO_ALIAS",message:"An alias is not permitted to refer to another alias."},"0x00002091":{code:"ERROR_DS_CANT_DEREF_ALIAS",message:"The alias cannot be dereferenced."},"0x00002092":{code:"ERROR_DS_OUT_OF_SCOPE",message:"The operation is out of scope."},"0x00002093":{code:"ERROR_DS_OBJECT_BEING_REMOVED",message:"The operation cannot continue because the object is in the process of being removed."},"0x00002094":{code:"ERROR_DS_CANT_DELETE_DSA_OBJ",message:"The DSA object cannot be deleted."},"0x00002095":{code:"ERROR_DS_GENERIC_ERROR",message:"A directory service error has occurred."},"0x00002096":{code:"ERROR_DS_DSA_MUST_BE_INT_MASTER",message:"The operation can only be performed on an internal master DSA object."},"0x00002097":{code:"ERROR_DS_CLASS_NOT_DSA",message:"The object must be of class DSA."},"0x00002098":{code:"ERROR_DS_INSUFF_ACCESS_RIGHTS",message:"Insufficient access rights to perform the operation."},"0x00002099":{code:"ERROR_DS_ILLEGAL_SUPERIOR",message:"The object cannot be added because the parent is not on the list of possible superiors."},"0x0000209A":{code:"ERROR_DS_ATTRIBUTE_OWNED_BY_SAM",message:"Access to the attribute is not permitted because the attribute is owned by the SAM."},"0x0000209B":{code:"ERROR_DS_NAME_TOO_MANY_PARTS",message:"The name has too many parts."},"0x0000209C":{code:"ERROR_DS_NAME_TOO_LONG",message:"The name is too long."},"0x0000209D":{code:"ERROR_DS_NAME_VALUE_TOO_LONG",message:"The name value is too long."},"0x0000209E":{code:"ERROR_DS_NAME_UNPARSEABLE",message:"The directory service encountered an error parsing a name."},"0x0000209F":{code:"ERROR_DS_NAME_TYPE_UNKNOWN",message:"The directory service cannot get the attribute type for a name."},"0x000020A0":{code:"ERROR_DS_NOT_AN_OBJECT",message:"The name does not identify an object; the name identifies a phantom."},"0x000020A1":{code:"ERROR_DS_SEC_DESC_TOO_SHORT",message:"The security descriptor is too short."},"0x000020A2":{code:"ERROR_DS_SEC_DESC_INVALID",message:"The security descriptor is invalid."},"0x000020A3":{code:"ERROR_DS_NO_DELETED_NAME",message:"Failed to create name for deleted object."},"0x000020A4":{code:"ERROR_DS_SUBREF_MUST_HAVE_PARENT",message:"The parent of a new subreference must exist."},"0x000020A5":{code:"ERROR_DS_NCNAME_MUST_BE_NC",message:"The object must be a naming context."},"0x000020A6":{code:"ERROR_DS_CANT_ADD_SYSTEM_ONLY",message:"It is not permitted to add an attribute that is owned by the system."},"0x000020A7":{code:"ERROR_DS_CLASS_MUST_BE_CONCRETE",message:"The class of the object must be structural; you cannot instantiate an abstract class."},"0x000020A8":{code:"ERROR_DS_INVALID_DMD",message:"The schema object could not be found."},"0x000020A9":{code:"ERROR_DS_OBJ_GUID_EXISTS",message:"A local object with this GUID (dead or alive) already exists."},"0x000020AA":{code:"ERROR_DS_NOT_ON_BACKLINK",message:"The operation cannot be performed on a back link."},"0x000020AB":{code:"ERROR_DS_NO_CROSSREF_FOR_NC",message:"The cross-reference for the specified naming context could not be found."},"0x000020AC":{code:"ERROR_DS_SHUTTING_DOWN",message:"The operation could not be performed because the directory service is shutting down."},"0x000020AD":{code:"ERROR_DS_UNKNOWN_OPERATION",message:"The directory service request is invalid."},"0x000020AE":{code:"ERROR_DS_INVALID_ROLE_OWNER",message:"The role owner attribute could not be read."},"0x000020AF":{code:"ERROR_DS_COULDNT_CONTACT_FSMO",message:"The requested Flexible Single Master Operations (FSMO) operation failed. The current FSMO holder could not be contacted."},"0x000020B0":{code:"ERROR_DS_CROSS_NC_DN_RENAME",message:"Modification of a distinguished name across a naming context is not permitted."},"0x000020B1":{code:"ERROR_DS_CANT_MOD_SYSTEM_ONLY",message:"The attribute cannot be modified because it is owned by the system."},"0x000020B2":{code:"ERROR_DS_REPLICATOR_ONLY",message:"Only the replicator can perform this function."},"0x000020B3":{code:"ERROR_DS_OBJ_CLASS_NOT_DEFINED",message:"The specified class is not defined."},"0x000020B4":{code:"ERROR_DS_OBJ_CLASS_NOT_SUBCLASS",message:"The specified class is not a subclass."},"0x000020B5":{code:"ERROR_DS_NAME_REFERENCE_INVALID",message:"The name reference is invalid."},"0x000020B6":{code:"ERROR_DS_CROSS_REF_EXISTS",message:"A cross-reference already exists."},"0x000020B7":{code:"ERROR_DS_CANT_DEL_MASTER_CROSSREF",message:"It is not permitted to delete a master cross-reference."},"0x000020B8":{code:"ERROR_DS_SUBTREE_NOTIFY_NOT_NC_HEAD",message:"Subtree notifications are only supported on naming context (NC) heads."},"0x000020B9":{code:"ERROR_DS_NOTIFY_FILTER_TOO_COMPLEX",message:"Notification filter is too complex."},"0x000020BA":{code:"ERROR_DS_DUP_RDN",message:"Schema update failed: Duplicate RDN."},"0x000020BB":{code:"ERROR_DS_DUP_OID",message:"Schema update failed: Duplicate OID."},"0x000020BC":{code:"ERROR_DS_DUP_MAPI_ID",message:"Schema update failed: Duplicate Message Application Programming Interface (MAPI) identifier."},"0x000020BD":{code:"ERROR_DS_DUP_SCHEMA_ID_GUID",message:"Schema update failed: Duplicate schema ID GUID."},"0x000020BE":{code:"ERROR_DS_DUP_LDAP_DISPLAY_NAME",message:"Schema update failed: Duplicate LDAP display name."},"0x000020BF":{code:"ERROR_DS_SEMANTIC_ATT_TEST",message:"Schema update failed: Range-Lower less than Range-Upper."},"0x000020C0":{code:"ERROR_DS_SYNTAX_MISMATCH",message:"Schema update failed: Syntax mismatch."},"0x000020C1":{code:"ERROR_DS_EXISTS_IN_MUST_HAVE",message:"Schema deletion failed: Attribute is used in the Must-Contain list."},"0x000020C2":{code:"ERROR_DS_EXISTS_IN_MAY_HAVE",message:"Schema deletion failed: Attribute is used in the May-Contain list."},"0x000020C3":{code:"ERROR_DS_NONEXISTENT_MAY_HAVE",message:"Schema update failed: Attribute in May-Contain list does not exist."},"0x000020C4":{code:"ERROR_DS_NONEXISTENT_MUST_HAVE",message:"Schema update failed: Attribute in the Must-Contain list does not exist."},"0x000020C5":{code:"ERROR_DS_AUX_CLS_TEST_FAIL",message:"Schema update failed: Class in the Aux Class list does not exist or is not an auxiliary class."},"0x000020C6":{code:"ERROR_DS_NONEXISTENT_POSS_SUP",message:"Schema update failed: Class in the Poss-Superiors list does not exist."},"0x000020C7":{code:"ERROR_DS_SUB_CLS_TEST_FAIL",message:"Schema update failed: Class in the subclass of the list does not exist or does not satisfy hierarchy rules."},"0x000020C8":{code:"ERROR_DS_BAD_RDN_ATT_ID_SYNTAX",message:"Schema update failed: Rdn-Att-Id has wrong syntax."},"0x000020C9":{code:"ERROR_DS_EXISTS_IN_AUX_CLS",message:"Schema deletion failed: Class is used as an auxiliary class."},"0x000020CA":{code:"ERROR_DS_EXISTS_IN_SUB_CLS",message:"Schema deletion failed: Class is used as a subclass."},"0x000020CB":{code:"ERROR_DS_EXISTS_IN_POSS_SUP",message:"Schema deletion failed: Class is used as a Poss-Superior."},"0x000020CC":{code:"ERROR_DS_RECALCSCHEMA_FAILED",message:"Schema update failed in recalculating validation cache."},"0x000020CD":{code:"ERROR_DS_TREE_DELETE_NOT_FINISHED",message:"The tree deletion is not finished. The request must be made again to continue deleting the tree."},"0x000020CE":{code:"ERROR_DS_CANT_DELETE",message:"The requested delete operation could not be performed."},"0x000020CF":{code:"ERROR_DS_ATT_SCHEMA_REQ_ID",message:"Cannot read the governs class identifier for the schema record."},"0x000020D0":{code:"ERROR_DS_BAD_ATT_SCHEMA_SYNTAX",message:"The attribute schema has bad syntax."},"0x000020D1":{code:"ERROR_DS_CANT_CACHE_ATT",message:"The attribute could not be cached."},"0x000020D2":{code:"ERROR_DS_CANT_CACHE_CLASS",message:"The class could not be cached."},"0x000020D3":{code:"ERROR_DS_CANT_REMOVE_ATT_CACHE",message:"The attribute could not be removed from the cache."},"0x000020D4":{code:"ERROR_DS_CANT_REMOVE_CLASS_CACHE",message:"The class could not be removed from the cache."},"0x000020D5":{code:"ERROR_DS_CANT_RETRIEVE_DN",message:"The distinguished name attribute could not be read."},"0x000020D6":{code:"ERROR_DS_MISSING_SUPREF",message:"No superior reference has been configured for the directory service. The directory service is, therefore, unable to issue referrals to objects outside this forest."},"0x000020D7":{code:"ERROR_DS_CANT_RETRIEVE_INSTANCE",message:"The instance type attribute could not be retrieved."},"0x000020D8":{code:"ERROR_DS_CODE_INCONSISTENCY",message:"An internal error has occurred."},"0x000020D9":{code:"ERROR_DS_DATABASE_ERROR",message:"A database error has occurred."},"0x000020DA":{code:"ERROR_DS_GOVERNSID_MISSING",message:"The governsID attribute is missing."},"0x000020DB":{code:"ERROR_DS_MISSING_EXPECTED_ATT",message:"An expected attribute is missing."},"0x000020DC":{code:"ERROR_DS_NCNAME_MISSING_CR_REF",message:"The specified naming context is missing a cross-reference."},"0x000020DD":{code:"ERROR_DS_SECURITY_CHECKING_ERROR",message:"A security checking error has occurred."},"0x000020DE":{code:"ERROR_DS_SCHEMA_NOT_LOADED",message:"The schema is not loaded."},"0x000020DF":{code:"ERROR_DS_SCHEMA_ALLOC_FAILED",message:"Schema allocation failed. Check if the machine is running low on memory."},"0x000020E0":{code:"ERROR_DS_ATT_SCHEMA_REQ_SYNTAX",message:"Failed to obtain the required syntax for the attribute schema."},"0x000020E1":{code:"ERROR_DS_GCVERIFY_ERROR",message:"The GC verification failed. The GC is not available or does not support the operation. Some part of the directory is currently not available."},"0x000020E2":{code:"ERROR_DS_DRA_SCHEMA_MISMATCH",message:"The replication operation failed because of a schema mismatch between the servers involved."},"0x000020E3":{code:"ERROR_DS_CANT_FIND_DSA_OBJ",message:"The DSA object could not be found."},"0x000020E4":{code:"ERROR_DS_CANT_FIND_EXPECTED_NC",message:"The naming context could not be found."},"0x000020E5":{code:"ERROR_DS_CANT_FIND_NC_IN_CACHE",message:"The naming context could not be found in the cache."},"0x000020E6":{code:"ERROR_DS_CANT_RETRIEVE_CHILD",message:"The child object could not be retrieved."},"0x000020E7":{code:"ERROR_DS_SECURITY_ILLEGAL_MODIFY",message:"The modification was not permitted for security reasons."},"0x000020E8":{code:"ERROR_DS_CANT_REPLACE_HIDDEN_REC",message:"The operation cannot replace the hidden record."},"0x000020E9":{code:"ERROR_DS_BAD_HIERARCHY_FILE",message:"The hierarchy file is invalid."},"0x000020EA":{code:"ERROR_DS_BUILD_HIERARCHY_TABLE_FAILED",message:"The attempt to build the hierarchy table failed."},"0x000020EB":{code:"ERROR_DS_CONFIG_PARAM_MISSING",message:"The directory configuration parameter is missing from the registry."},"0x000020EC":{code:"ERROR_DS_COUNTING_AB_INDICES_FAILED",message:"The attempt to count the address book indices failed."},"0x000020ED":{code:"ERROR_DS_HIERARCHY_TABLE_MALLOC_FAILED",message:"The allocation of the hierarchy table failed."},"0x000020EE":{code:"ERROR_DS_INTERNAL_FAILURE",message:"The directory service encountered an internal failure."},"0x000020EF":{code:"ERROR_DS_UNKNOWN_ERROR",message:"The directory service encountered an unknown failure."},"0x000020F0":{code:"ERROR_DS_ROOT_REQUIRES_CLASS_TOP",message:'A root object requires a class of "top".'},"0x000020F1":{code:"ERROR_DS_REFUSING_FSMO_ROLES",message:"This directory server is shutting down, and cannot take ownership of new floating single-master operation roles."},"0x000020F2":{code:"ERROR_DS_MISSING_FSMO_SETTINGS",message:"The directory service is missing mandatory configuration information and is unable to determine the ownership of floating single-master operation roles."},"0x000020F3":{code:"ERROR_DS_UNABLE_TO_SURRENDER_ROLES",message:"The directory service was unable to transfer ownership of one or more floating single-master operation roles to other servers."},"0x000020F4":{code:"ERROR_DS_DRA_GENERIC",message:"The replication operation failed."},"0x000020F5":{code:"ERROR_DS_DRA_INVALID_PARAMETER",message:"An invalid parameter was specified for this replication operation."},"0x000020F6":{code:"ERROR_DS_DRA_BUSY",message:"The directory service is too busy to complete the replication operation at this time."},"0x000020F7":{code:"ERROR_DS_DRA_BAD_DN",message:"The DN specified for this replication operation is invalid."},"0x000020F8":{code:"ERROR_DS_DRA_BAD_NC",message:"The naming context specified for this replication operation is invalid."},"0x000020F9":{code:"ERROR_DS_DRA_DN_EXISTS",message:"The DN specified for this replication operation already exists."},"0x000020FA":{code:"ERROR_DS_DRA_INTERNAL_ERROR",message:"The replication system encountered an internal error."},"0x000020FB":{code:"ERROR_DS_DRA_INCONSISTENT_DIT",message:"The replication operation encountered a database inconsistency."},"0x000020FC":{code:"ERROR_DS_DRA_CONNECTION_FAILED",message:"The server specified for this replication operation could not be contacted."},"0x000020FD":{code:"ERROR_DS_DRA_BAD_INSTANCE_TYPE",message:"The replication operation encountered an object with an invalid instance type."},"0x000020FE":{code:"ERROR_DS_DRA_OUT_OF_MEM",message:"The replication operation failed to allocate memory."},"0x000020FF":{code:"ERROR_DS_DRA_MAIL_PROBLEM",message:"The replication operation encountered an error with the mail system."},"0x00002100":{code:"ERROR_DS_DRA_REF_ALREADY_EXISTS",message:"The replication reference information for the target server already exists."},"0x00002101":{code:"ERROR_DS_DRA_REF_NOT_FOUND",message:"The replication reference information for the target server does not exist."},"0x00002102":{code:"ERROR_DS_DRA_OBJ_IS_REP_SOURCE",message:"The naming context cannot be removed because it is replicated to another server."},"0x00002103":{code:"ERROR_DS_DRA_DB_ERROR",message:"The replication operation encountered a database error."},"0x00002104":{code:"ERROR_DS_DRA_NO_REPLICA",message:"The naming context is in the process of being removed or is not replicated from the specified server."},"0x00002105":{code:"ERROR_DS_DRA_ACCESS_DENIED",message:"Replication access was denied."},"0x00002106":{code:"ERROR_DS_DRA_NOT_SUPPORTED",message:"The requested operation is not supported by this version of the directory service."},"0x00002107":{code:"ERROR_DS_DRA_RPC_CANCELLED",message:"The replication RPC was canceled."},"0x00002108":{code:"ERROR_DS_DRA_SOURCE_DISABLED",message:"The source server is currently rejecting replication requests."},"0x00002109":{code:"ERROR_DS_DRA_SINK_DISABLED",message:"The destination server is currently rejecting replication requests."},"0x0000210A":{code:"ERROR_DS_DRA_NAME_COLLISION",message:"The replication operation failed due to a collision of object names."},"0x0000210B":{code:"ERROR_DS_DRA_SOURCE_REINSTALLED",message:"The replication source has been reinstalled."},"0x0000210C":{code:"ERROR_DS_DRA_MISSING_PARENT",message:"The replication operation failed because a required parent object is missing."},"0x0000210D":{code:"ERROR_DS_DRA_PREEMPTED",message:"The replication operation was preempted."},"0x0000210E":{code:"ERROR_DS_DRA_ABANDON_SYNC",message:"The replication synchronization attempt was abandoned because of a lack of updates."},"0x0000210F":{code:"ERROR_DS_DRA_SHUTDOWN",message:"The replication operation was terminated because the system is shutting down."},"0x00002110":{code:"ERROR_DS_DRA_INCOMPATIBLE_PARTIAL_SET",message:"A synchronization attempt failed because the destination DC is currently waiting to synchronize new partial attributes from the source. This condition is normal if a recent schema change modified the partial attribute set. The destination partial attribute set is not a subset of the source partial attribute set."},"0x00002111":{code:"ERROR_DS_DRA_SOURCE_IS_PARTIAL_REPLICA",message:"The replication synchronization attempt failed because a master replica attempted to sync from a partial replica."},"0x00002112":{code:"ERROR_DS_DRA_EXTN_CONNECTION_FAILED",message:"The server specified for this replication operation was contacted, but that server was unable to contact an additional server needed to complete the operation."},"0x00002113":{code:"ERROR_DS_INSTALL_SCHEMA_MISMATCH",message:"The version of the directory service schema of the source forest is not compatible with the version of the directory service on this computer."},"0x00002114":{code:"ERROR_DS_DUP_LINK_ID",message:"Schema update failed: An attribute with the same link identifier already exists."},"0x00002115":{code:"ERROR_DS_NAME_ERROR_RESOLVING",message:"Name translation: Generic processing error."},"0x00002116":{code:"ERROR_DS_NAME_ERROR_NOT_FOUND",message:"Name translation: Could not find the name or insufficient right to see name."},"0x00002117":{code:"ERROR_DS_NAME_ERROR_NOT_UNIQUE",message:"Name translation: Input name mapped to more than one output name."},"0x00002118":{code:"ERROR_DS_NAME_ERROR_NO_MAPPING",message:"Name translation: The input name was found but not the associated output format."},"0x00002119":{code:"ERROR_DS_NAME_ERROR_DOMAIN_ONLY",message:"Name translation: Unable to resolve completely, only the domain was found."},"0x0000211A":{code:"ERROR_DS_NAME_ERROR_NO_SYNTACTICAL_MAPPING",message:"Name translation: Unable to perform purely syntactical mapping at the client without going out to the wire."},"0x0000211B":{code:"ERROR_DS_CONSTRUCTED_ATT_MOD",message:"Modification of a constructed attribute is not allowed."},"0x0000211C":{code:"ERROR_DS_WRONG_OM_OBJ_CLASS",message:"The OM-Object-Class specified is incorrect for an attribute with the specified syntax."},"0x0000211D":{code:"ERROR_DS_DRA_REPL_PENDING",message:"The replication request has been posted; waiting for a reply."},"0x0000211E":{code:"ERROR_DS_DS_REQUIRED",message:"The requested operation requires a directory service, and none was available."},"0x0000211F":{code:"ERROR_DS_INVALID_LDAP_DISPLAY_NAME",message:"The LDAP display name of the class or attribute contains non-ASCII characters."},"0x00002120":{code:"ERROR_DS_NON_BASE_SEARCH",message:"The requested search operation is only supported for base searches."},"0x00002121":{code:"ERROR_DS_CANT_RETRIEVE_ATTS",message:"The search failed to retrieve attributes from the database."},"0x00002122":{code:"ERROR_DS_BACKLINK_WITHOUT_LINK",message:"The schema update operation tried to add a backward link attribute that has no corresponding forward link."},"0x00002123":{code:"ERROR_DS_EPOCH_MISMATCH",message:"The source and destination of a cross-domain move do not agree on the object's epoch number. Either the source or the destination does not have the latest version of the object."},"0x00002124":{code:"ERROR_DS_SRC_NAME_MISMATCH",message:"The source and destination of a cross-domain move do not agree on the object's current name. Either the source or the destination does not have the latest version of the object."},"0x00002125":{code:"ERROR_DS_SRC_AND_DST_NC_IDENTICAL",message:"The source and destination for the cross-domain move operation are identical. The caller should use a local move operation instead of a cross-domain move operation."},"0x00002126":{code:"ERROR_DS_DST_NC_MISMATCH",message:"The source and destination for a cross-domain move do not agree on the naming contexts in the forest. Either the source or the destination does not have the latest version of the Partitions container."},"0x00002127":{code:"ERROR_DS_NOT_AUTHORITIVE_FOR_DST_NC",message:"The destination of a cross-domain move is not authoritative for the destination naming context."},"0x00002128":{code:"ERROR_DS_SRC_GUID_MISMATCH",message:"The source and destination of a cross-domain move do not agree on the identity of the source object. Either the source or the destination does not have the latest version of the source object."},"0x00002129":{code:"ERROR_DS_CANT_MOVE_DELETED_OBJECT",message:"The object being moved across domains is already known to be deleted by the destination server. The source server does not have the latest version of the source object."},"0x0000212A":{code:"ERROR_DS_PDC_OPERATION_IN_PROGRESS",message:"Another operation that requires exclusive access to the PDC FSMO is already in progress."},"0x0000212B":{code:"ERROR_DS_CROSS_DOMAIN_CLEANUP_REQD",message:"A cross-domain move operation failed because two versions of the moved object exist\u2014one each in the source and destination domains. The destination object needs to be removed to restore the system to a consistent state."},"0x0000212C":{code:"ERROR_DS_ILLEGAL_XDOM_MOVE_OPERATION",message:"This object may not be moved across domain boundaries either because cross-domain moves for this class are not allowed, or the object has some special characteristics, for example, a trust account or a restricted relative identifier (RID), that prevent its move."},"0x0000212D":{code:"ERROR_DS_CANT_WITH_ACCT_GROUP_MEMBERSHPS",message:"Cannot move objects with memberships across domain boundaries because, once moved, this violates the membership conditions of the account group. Remove the object from any account group memberships and retry."},"0x0000212E":{code:"ERROR_DS_NC_MUST_HAVE_NC_PARENT",message:"A naming context head must be the immediate child of another naming context head, not of an interior node."},"0x0000212F":{code:"ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE",message:"The directory cannot validate the proposed naming context name because it does not hold a replica of the naming context above the proposed naming context. Ensure that the domain naming master role is held by a server that is configured as a GC server, and that the server is up-to-date with its replication partners. (Applies only to Windows 2000 domain naming masters.)"},"0x00002130":{code:"ERROR_DS_DST_DOMAIN_NOT_NATIVE",message:"Destination domain must be in native mode."},"0x00002131":{code:"ERROR_DS_MISSING_INFRASTRUCTURE_CONTAINER",message:"The operation cannot be performed because the server does not have an infrastructure container in the domain of interest."},"0x00002132":{code:"ERROR_DS_CANT_MOVE_ACCOUNT_GROUP",message:"Cross-domain moves of nonempty account groups is not allowed."},"0x00002133":{code:"ERROR_DS_CANT_MOVE_RESOURCE_GROUP",message:"Cross-domain moves of nonempty resource groups is not allowed."},"0x00002134":{code:"ERROR_DS_INVALID_SEARCH_FLAG",message:"The search flags for the attribute are invalid. The ambiguous name resolution (ANR) bit is valid only on attributes of Unicode or Teletex strings."},"0x00002135":{code:"ERROR_DS_NO_TREE_DELETE_ABOVE_NC",message:"Tree deletions starting at an object that has an NC head as a descendant are not allowed."},"0x00002136":{code:"ERROR_DS_COULDNT_LOCK_TREE_FOR_DELETE",message:"The directory service failed to lock a tree in preparation for a tree deletion because the tree was in use."},"0x00002137":{code:"ERROR_DS_COULDNT_IDENTIFY_OBJECTS_FOR_TREE_DELETE",message:"The directory service failed to identify the list of objects to delete while attempting a tree deletion."},"0x00002138":{code:"ERROR_DS_SAM_INIT_FAILURE",message:"SAM initialization failed because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system and reboot into Directory Services Restore Mode. Check the event log for detailed information."},"0x00002139":{code:"ERROR_DS_SENSITIVE_GROUP_VIOLATION",message:"Only an administrator can modify the membership list of an administrative group."},"0x0000213A":{code:"ERROR_DS_CANT_MOD_PRIMARYGROUPID",message:"Cannot change the primary group ID of a domain controller account."},"0x0000213B":{code:"ERROR_DS_ILLEGAL_BASE_SCHEMA_MOD",message:"An attempt was made to modify the base schema."},"0x0000213C":{code:"ERROR_DS_NONSAFE_SCHEMA_CHANGE",message:"Adding a new mandatory attribute to an existing class, deleting a mandatory attribute from an existing class, or adding an optional attribute to the special class Top that is not a backlink attribute (directly or through inheritance, for example, by adding or deleting an auxiliary class) is not allowed."},"0x0000213D":{code:"ERROR_DS_SCHEMA_UPDATE_DISALLOWED",message:"Schema update is not allowed on this DC because the DC is not the schema FSMO role owner."},"0x0000213E":{code:"ERROR_DS_CANT_CREATE_UNDER_SCHEMA",message:"An object of this class cannot be created under the schema container. You can only create Attribute-Schema and Class-Schema objects under the schema container."},"0x0000213F":{code:"ERROR_DS_INSTALL_NO_SRC_SCH_VERSION",message:"The replica or child install failed to get the objectVersion attribute on the schema container on the source DC. Either the attribute is missing on the schema container or the credentials supplied do not have permission to read it."},"0x00002140":{code:"ERROR_DS_INSTALL_NO_SCH_VERSION_IN_INIFILE",message:"The replica or child install failed to read the objectVersion attribute in the SCHEMA section of the file schema.ini in the System32 directory."},"0x00002141":{code:"ERROR_DS_INVALID_GROUP_TYPE",message:"The specified group type is invalid."},"0x00002142":{code:"ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN",message:"You cannot nest global groups in a mixed domain if the group is security-enabled."},"0x00002143":{code:"ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN",message:"You cannot nest local groups in a mixed domain if the group is security-enabled."},"0x00002144":{code:"ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER",message:"A global group cannot have a local group as a member."},"0x00002145":{code:"ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER",message:"A global group cannot have a universal group as a member."},"0x00002146":{code:"ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER",message:"A universal group cannot have a local group as a member."},"0x00002147":{code:"ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER",message:"A global group cannot have a cross-domain member."},"0x00002148":{code:"ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER",message:"A local group cannot have another cross domain local group as a member."},"0x00002149":{code:"ERROR_DS_HAVE_PRIMARY_MEMBERS",message:"A group with primary members cannot change to a security-disabled group."},"0x0000214A":{code:"ERROR_DS_STRING_SD_CONVERSION_FAILED",message:"The schema cache load failed to convert the string default security descriptor (SD) on a class-schema object."},"0x0000214B":{code:"ERROR_DS_NAMING_MASTER_GC",message:"Only DSAs configured to be GC servers should be allowed to hold the domain naming master FSMO role. (Applies only to Windows 2000 servers.)"},"0x0000214C":{code:"ERROR_DS_DNS_LOOKUP_FAILURE",message:"The DSA operation is unable to proceed because of a DNS lookup failure."},"0x0000214D":{code:"ERROR_DS_COULDNT_UPDATE_SPNS",message:"While processing a change to the DNS host name for an object, the SPN values could not be kept in sync."},"0x0000214E":{code:"ERROR_DS_CANT_RETRIEVE_SD",message:"The Security Descriptor attribute could not be read."},"0x0000214F":{code:"ERROR_DS_KEY_NOT_UNIQUE",message:"The object requested was not found, but an object with that key was found."},"0x00002150":{code:"ERROR_DS_WRONG_LINKED_ATT_SYNTAX",message:"The syntax of the linked attribute being added is incorrect. Forward links can only have syntax 2.5.5.1, 2.5.5.7, and 2.5.5.14, and backlinks can only have syntax 2.5.5.1."},"0x00002151":{code:"ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD",message:"SAM needs to get the boot password."},"0x00002152":{code:"ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY",message:"SAM needs to get the boot key from the floppy disk."},"0x00002153":{code:"ERROR_DS_CANT_START",message:"Directory Service cannot start."},"0x00002154":{code:"ERROR_DS_INIT_FAILURE",message:"Directory Services could not start."},"0x00002155":{code:"ERROR_DS_NO_PKT_PRIVACY_ON_CONNECTION",message:"The connection between client and server requires packet privacy or better."},"0x00002156":{code:"ERROR_DS_SOURCE_DOMAIN_IN_FOREST",message:"The source domain may not be in the same forest as the destination."},"0x00002157":{code:"ERROR_DS_DESTINATION_DOMAIN_NOT_IN_FOREST",message:"The destination domain must be in the forest."},"0x00002158":{code:"ERROR_DS_DESTINATION_AUDITING_NOT_ENABLED",message:"The operation requires that destination domain auditing be enabled."},"0x00002159":{code:"ERROR_DS_CANT_FIND_DC_FOR_SRC_DOMAIN",message:"The operation could not locate a DC for the source domain."},"0x0000215A":{code:"ERROR_DS_SRC_OBJ_NOT_GROUP_OR_USER",message:"The source object must be a group or user."},"0x0000215B":{code:"ERROR_DS_SRC_SID_EXISTS_IN_FOREST",message:"The source object's SID already exists in the destination forest."},"0x0000215C":{code:"ERROR_DS_SRC_AND_DST_OBJECT_CLASS_MISMATCH",message:"The source and destination object must be of the same type."},"0x0000215D":{code:"ERROR_SAM_INIT_FAILURE",message:"SAM initialization failed because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system and reboot into Safe Mode. Check the event log for detailed information."},"0x0000215E":{code:"ERROR_DS_DRA_SCHEMA_INFO_SHIP",message:"Schema information could not be included in the replication request."},"0x0000215F":{code:"ERROR_DS_DRA_SCHEMA_CONFLICT",message:"The replication operation could not be completed due to a schema incompatibility."},"0x00002160":{code:"ERROR_DS_DRA_EARLIER_SCHEMA_CONFLICT",message:"The replication operation could not be completed due to a previous schema incompatibility."},"0x00002161":{code:"ERROR_DS_DRA_OBJ_NC_MISMATCH",message:"The replication update could not be applied because either the source or the destination has not yet received information regarding a recent cross-domain move operation."},"0x00002162":{code:"ERROR_DS_NC_STILL_HAS_DSAS",message:"The requested domain could not be deleted because there exist domain controllers that still host this domain."},"0x00002163":{code:"ERROR_DS_GC_REQUIRED",message:"The requested operation can be performed only on a GC server."},"0x00002164":{code:"ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY",message:"A local group can only be a member of other local groups in the same domain."},"0x00002165":{code:"ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS",message:"Foreign security principals cannot be members of universal groups."},"0x00002166":{code:"ERROR_DS_CANT_ADD_TO_GC",message:"The attribute is not allowed to be replicated to the GC because of security reasons."},"0x00002167":{code:"ERROR_DS_NO_CHECKPOINT_WITH_PDC",message:"The checkpoint with the PDC could not be taken because too many modifications are currently being processed."},"0x00002168":{code:"ERROR_DS_SOURCE_AUDITING_NOT_ENABLED",message:"The operation requires that source domain auditing be enabled."},"0x00002169":{code:"ERROR_DS_CANT_CREATE_IN_NONDOMAIN_NC",message:"Security principal objects can only be created inside domain naming contexts."},"0x0000216A":{code:"ERROR_DS_INVALID_NAME_FOR_SPN",message:"An SPN could not be constructed because the provided host name is not in the necessary format."},"0x0000216B":{code:"ERROR_DS_FILTER_USES_CONTRUCTED_ATTRS",message:"A filter was passed that uses constructed attributes."},"0x0000216C":{code:"ERROR_DS_UNICODEPWD_NOT_IN_QUOTES",message:"The unicodePwd attribute value must be enclosed in quotation marks."},"0x0000216D":{code:"ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED",message:"Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."},"0x0000216E":{code:"ERROR_DS_MUST_BE_RUN_ON_DST_DC",message:"For security reasons, the operation must be run on the destination DC."},"0x0000216F":{code:"ERROR_DS_SRC_DC_MUST_BE_SP4_OR_GREATER",message:"For security reasons, the source DC must be NT4SP4 or greater."},"0x00002170":{code:"ERROR_DS_CANT_TREE_DELETE_CRITICAL_OBJ",message:"Critical directory service system objects cannot be deleted during tree deletion operations. The tree deletion may have been partially performed."},"0x00002171":{code:"ERROR_DS_INIT_FAILURE_CONSOLE",message:"Directory Services could not start because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system. You can use the Recovery Console to further diagnose the system."},"0x00002172":{code:"ERROR_DS_SAM_INIT_FAILURE_CONSOLE",message:"SAM initialization failed because of the following error: %1. Error Status: 0x%2. Click OK to shut down the system. You can use the Recovery Console to further diagnose the system."},"0x00002173":{code:"ERROR_DS_FOREST_VERSION_TOO_HIGH",message:"The version of the operating system installed is incompatible with the current forest functional level. You must upgrade to a new version of the operating system before this server can become a domain controller in this forest."},"0x00002174":{code:"ERROR_DS_DOMAIN_VERSION_TOO_HIGH",message:"The version of the operating system installed is incompatible with the current domain functional level. You must upgrade to a new version of the operating system before this server can become a domain controller in this domain."},"0x00002175":{code:"ERROR_DS_FOREST_VERSION_TOO_LOW",message:"The version of the operating system installed on this server no longer supports the current forest functional level. You must raise the forest functional level before this server can become a domain controller in this forest."},"0x00002176":{code:"ERROR_DS_DOMAIN_VERSION_TOO_LOW",message:"The version of the operating system installed on this server no longer supports the current domain functional level. You must raise the domain functional level before this server can become a domain controller in this domain."},"0x00002177":{code:"ERROR_DS_INCOMPATIBLE_VERSION",message:"The version of the operating system installed on this server is incompatible with the functional level of the domain or forest."},"0x00002178":{code:"ERROR_DS_LOW_DSA_VERSION",message:"The functional level of the domain (or forest) cannot be raised to the requested value because one or more domain controllers in the domain (or forest) are at a lower, incompatible functional level."},"0x00002179":{code:"ERROR_DS_NO_BEHAVIOR_VERSION_IN_MIXEDDOMAIN",message:"The forest functional level cannot be raised to the requested value because one or more domains are still in mixed-domain mode. All domains in the forest must be in native mode for you to raise the forest functional level."},"0x0000217A":{code:"ERROR_DS_NOT_SUPPORTED_SORT_ORDER",message:"The sort order requested is not supported."},"0x0000217B":{code:"ERROR_DS_NAME_NOT_UNIQUE",message:"The requested name already exists as a unique identifier."},"0x0000217C":{code:"ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4",message:"The machine account was created before Windows NT 4.0. The account needs to be re-created."},"0x0000217D":{code:"ERROR_DS_OUT_OF_VERSION_STORE",message:"The database is out of version store."},"0x0000217E":{code:"ERROR_DS_INCOMPATIBLE_CONTROLS_USED",message:"Unable to continue operation because multiple conflicting controls were used."},"0x0000217F":{code:"ERROR_DS_NO_REF_DOMAIN",message:"Unable to find a valid security descriptor reference domain for this partition."},"0x00002180":{code:"ERROR_DS_RESERVED_LINK_ID",message:"Schema update failed: The link identifier is reserved."},"0x00002181":{code:"ERROR_DS_LINK_ID_NOT_AVAILABLE",message:"Schema update failed: There are no link identifiers available."},"0x00002182":{code:"ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER",message:"An account group cannot have a universal group as a member."},"0x00002183":{code:"ERROR_DS_MODIFYDN_DISALLOWED_BY_INSTANCE_TYPE",message:"Rename or move operations on naming context heads or read-only objects are not allowed."},"0x00002184":{code:"ERROR_DS_NO_OBJECT_MOVE_IN_SCHEMA_NC",message:"Move operations on objects in the schema naming context are not allowed."},"0x00002185":{code:"ERROR_DS_MODIFYDN_DISALLOWED_BY_FLAG",message:"A system flag has been set on the object that does not allow the object to be moved or renamed."},"0x00002186":{code:"ERROR_DS_MODIFYDN_WRONG_GRANDPARENT",message:"This object is not allowed to change its grandparent container. Moves are not forbidden on this object, but are restricted to sibling containers."},"0x00002187":{code:"ERROR_DS_NAME_ERROR_TRUST_REFERRAL",message:"Unable to resolve completely; a referral to another forest was generated."},"0x00002188":{code:"ERROR_NOT_SUPPORTED_ON_STANDARD_SERVER",message:"The requested action is not supported on a standard server."},"0x00002189":{code:"ERROR_DS_CANT_ACCESS_REMOTE_PART_OF_AD",message:"Could not access a partition of the directory service located on a remote server. Make sure at least one server is running for the partition in question."},"0x0000218A":{code:"ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE_V2",message:"The directory cannot validate the proposed naming context (or partition) name because it does not hold a replica, nor can it contact a replica of the naming context above the proposed naming context. Ensure that the parent naming context is properly registered in the DNS, and at least one replica of this naming context is reachable by the domain naming master."},"0x0000218B":{code:"ERROR_DS_THREAD_LIMIT_EXCEEDED",message:"The thread limit for this request was exceeded."},"0x0000218C":{code:"ERROR_DS_NOT_CLOSEST",message:"The GC server is not in the closest site."},"0x0000218D":{code:"ERROR_DS_CANT_DERIVE_SPN_WITHOUT_SERVER_REF",message:"The directory service cannot derive an SPN with which to mutually authenticate the target server because the corresponding server object in the local DS database has no serverReference attribute."},"0x0000218E":{code:"ERROR_DS_SINGLE_USER_MODE_FAILED",message:"The directory service failed to enter single-user mode."},"0x0000218F":{code:"ERROR_DS_NTDSCRIPT_SYNTAX_ERROR",message:"The directory service cannot parse the script because of a syntax error."},"0x00002190":{code:"ERROR_DS_NTDSCRIPT_PROCESS_ERROR",message:"The directory service cannot process the script because of an error."},"0x00002191":{code:"ERROR_DS_DIFFERENT_REPL_EPOCHS",message:"The directory service cannot perform the requested operation because the servers involved are of different replication epochs (which is usually related to a domain rename that is in progress)."},"0x00002192":{code:"ERROR_DS_DRS_EXTENSIONS_CHANGED",message:"The directory service binding must be renegotiated due to a change in the server extensions information."},"0x00002193":{code:"ERROR_DS_REPLICA_SET_CHANGE_NOT_ALLOWED_ON_DISABLED_CR",message:"The operation is not allowed on a disabled cross-reference."},"0x00002194":{code:"ERROR_DS_NO_MSDS_INTID",message:"Schema update failed: No values for msDS-IntId are available."},"0x00002195":{code:"ERROR_DS_DUP_MSDS_INTID",message:"Schema update failed: Duplicate msDS-IntId. Retry the operation."},"0x00002196":{code:"ERROR_DS_EXISTS_IN_RDNATTID",message:"Schema deletion failed: Attribute is used in rDNAttID."},"0x00002197":{code:"ERROR_DS_AUTHORIZATION_FAILED",message:"The directory service failed to authorize the request."},"0x00002198":{code:"ERROR_DS_INVALID_SCRIPT",message:"The directory service cannot process the script because it is invalid."},"0x00002199":{code:"ERROR_DS_REMOTE_CROSSREF_OP_FAILED",message:"The remote create cross-reference operation failed on the domain naming master FSMO. The operation's error is in the extended data."},"0x0000219A":{code:"ERROR_DS_CROSS_REF_BUSY",message:"A cross-reference is in use locally with the same name."},"0x0000219B":{code:"ERROR_DS_CANT_DERIVE_SPN_FOR_DELETED_DOMAIN",message:"The directory service cannot derive an SPN with which to mutually authenticate the target server because the server's domain has been deleted from the forest."},"0x0000219C":{code:"ERROR_DS_CANT_DEMOTE_WITH_WRITEABLE_NC",message:"Writable NCs prevent this DC from demoting."},"0x0000219D":{code:"ERROR_DS_DUPLICATE_ID_FOUND",message:"The requested object has a nonunique identifier and cannot be retrieved."},"0x0000219E":{code:"ERROR_DS_INSUFFICIENT_ATTR_TO_CREATE_OBJECT",message:"Insufficient attributes were given to create an object. This object may not exist because it may have been deleted and the garbage already collected."},"0x0000219F":{code:"ERROR_DS_GROUP_CONVERSION_ERROR",message:"The group cannot be converted due to attribute restrictions on the requested group type."},"0x000021A0":{code:"ERROR_DS_CANT_MOVE_APP_BASIC_GROUP",message:"Cross-domain moves of nonempty basic application groups is not allowed."},"0x000021A1":{code:"ERROR_DS_CANT_MOVE_APP_QUERY_GROUP",message:"Cross-domain moves of nonempty query-based application groups is not allowed."},"0x000021A2":{code:"ERROR_DS_ROLE_NOT_VERIFIED",message:"The FSMO role ownership could not be verified because its directory partition did not replicate successfully with at least one replication partner."},"0x000021A3":{code:"ERROR_DS_WKO_CONTAINER_CANNOT_BE_SPECIAL",message:"The target container for a redirection of a well-known object container cannot already be a special container."},"0x000021A4":{code:"ERROR_DS_DOMAIN_RENAME_IN_PROGRESS",message:"The directory service cannot perform the requested operation because a domain rename operation is in progress."},"0x000021A5":{code:"ERROR_DS_EXISTING_AD_CHILD_NC",message:"The directory service detected a child partition below the requested partition name. The partition hierarchy must be created in a top down method."},"0x000021A6":{code:"ERROR_DS_REPL_LIFETIME_EXCEEDED",message:"The directory service cannot replicate with this server because the time since the last replication with this server has exceeded the tombstone lifetime."},"0x000021A7":{code:"ERROR_DS_DISALLOWED_IN_SYSTEM_CONTAINER",message:"The requested operation is not allowed on an object under the system container."},"0x000021A8":{code:"ERROR_DS_LDAP_SEND_QUEUE_FULL",message:"The LDAP server's network send queue has filled up because the client is not processing the results of its requests fast enough. No more requests will be processed until the client catches up. If the client does not catch up then it will be disconnected."},"0x000021A9":{code:"ERROR_DS_DRA_OUT_SCHEDULE_WINDOW",message:"The scheduled replication did not take place because the system was too busy to execute the request within the schedule window. The replication queue is overloaded. Consider reducing the number of partners or decreasing the scheduled replication frequency."},"0x000021AA":{code:"ERROR_DS_POLICY_NOT_KNOWN",message:"At this time, it cannot be determined if the branch replication policy is available on the hub domain controller. Retry at a later time to account for replication latencies."},"0x000021AB":{code:"ERROR_NO_SITE_SETTINGS_OBJECT",message:"The site settings object for the specified site does not exist."},"0x000021AC":{code:"ERROR_NO_SECRETS",message:"The local account store does not contain secret material for the specified account."},"0x000021AD":{code:"ERROR_NO_WRITABLE_DC_FOUND",message:"Could not find a writable domain controller in the domain."},"0x000021AE":{code:"ERROR_DS_NO_SERVER_OBJECT",message:"The server object for the domain controller does not exist."},"0x000021AF":{code:"ERROR_DS_NO_NTDSA_OBJECT",message:"The NTDS Settings object for the domain controller does not exist."},"0x000021B0":{code:"ERROR_DS_NON_ASQ_SEARCH",message:"The requested search operation is not supported for attribute scoped query (ASQ) searches."},"0x000021B1":{code:"ERROR_DS_AUDIT_FAILURE",message:"A required audit event could not be generated for the operation."},"0x000021B2":{code:"ERROR_DS_INVALID_SEARCH_FLAG_SUBTREE",message:"The search flags for the attribute are invalid. The subtree index bit is valid only on single-valued attributes."},"0x000021B3":{code:"ERROR_DS_INVALID_SEARCH_FLAG_TUPLE",message:"The search flags for the attribute are invalid. The tuple index bit is valid only on attributes of Unicode strings."},"0x000021C2":{code:"ERROR_DS_HIGH_DSA_VERSION",message:"The functional level of the domain (or forest) cannot be lowered to the requested value."},"0x000021C7":{code:"ERROR_DS_SPN_VALUE_NOT_UNIQUE_IN_FOREST",message:"The operation failed because the SPN value provided for addition/modification is not unique forest-wide."},"0x000021C8":{code:"ERROR_DS_UPN_VALUE_NOT_UNIQUE_IN_FOREST",message:"The operation failed because the UPN value provided for addition/modification is not unique forest-wide."},"0x00002329":{code:"DNS_ERROR_RCODE_FORMAT_ERROR",message:"DNS server unable to interpret format."},"0x0000232A":{code:"DNS_ERROR_RCODE_SERVER_FAILURE",message:"DNS server failure."},"0x0000232B":{code:"DNS_ERROR_RCODE_NAME_ERROR",message:"DNS name does not exist."},"0x0000232C":{code:"DNS_ERROR_RCODE_NOT_IMPLEMENTED",message:"DNS request not supported by name server."},"0x0000232D":{code:"DNS_ERROR_RCODE_REFUSED",message:"DNS operation refused."},"0x0000232E":{code:"DNS_ERROR_RCODE_YXDOMAIN",message:"DNS name that should not exist, does exist."},"0x0000232F":{code:"DNS_ERROR_RCODE_YXRRSET",message:"DNS resource record (RR) set that should not exist, does exist."},"0x00002330":{code:"DNS_ERROR_RCODE_NXRRSET",message:"DNS RR set that should to exist, does not exist."},"0x00002331":{code:"DNS_ERROR_RCODE_NOTAUTH",message:"DNS server not authoritative for zone."},"0x00002332":{code:"DNS_ERROR_RCODE_NOTZONE",message:"DNS name in update or prereq is not in zone."},"0x00002338":{code:"DNS_ERROR_RCODE_BADSIG",message:"DNS signature failed to verify."},"0x00002339":{code:"DNS_ERROR_RCODE_BADKEY",message:"DNS bad key."},"0x0000233A":{code:"DNS_ERROR_RCODE_BADTIME",message:"DNS signature validity expired."},"0x0000251D":{code:"DNS_INFO_NO_RECORDS",message:"No records found for given DNS query."},"0x0000251E":{code:"DNS_ERROR_BAD_PACKET",message:"Bad DNS packet."},"0x0000251F":{code:"DNS_ERROR_NO_PACKET",message:"No DNS packet."},"0x00002520":{code:"DNS_ERROR_RCODE",message:"DNS error, check rcode."},"0x00002521":{code:"DNS_ERROR_UNSECURE_PACKET",message:"Unsecured DNS packet."},"0x0000254F":{code:"DNS_ERROR_INVALID_TYPE",message:"Invalid DNS type."},"0x00002550":{code:"DNS_ERROR_INVALID_IP_ADDRESS",message:"Invalid IP address."},"0x00002551":{code:"DNS_ERROR_INVALID_PROPERTY",message:"Invalid property."},"0x00002552":{code:"DNS_ERROR_TRY_AGAIN_LATER",message:"Try DNS operation again later."},"0x00002553":{code:"DNS_ERROR_NOT_UNIQUE",message:"Record for given name and type is not unique."},"0x00002554":{code:"DNS_ERROR_NON_RFC_NAME",message:"DNS name does not comply with RFC specifications."},"0x00002555":{code:"DNS_STATUS_FQDN",message:"DNS name is a fully qualified DNS name."},"0x00002556":{code:"DNS_STATUS_DOTTED_NAME",message:"DNS name is dotted (multilabel)."},"0x00002557":{code:"DNS_STATUS_SINGLE_PART_NAME",message:"DNS name is a single-part name."},"0x00002558":{code:"DNS_ERROR_INVALID_NAME_CHAR",message:"DNS name contains an invalid character."},"0x00002559":{code:"DNS_ERROR_NUMERIC_NAME",message:"DNS name is entirely numeric."},"0x0000255A":{code:"DNS_ERROR_NOT_ALLOWED_ON_ROOT_SERVER",message:"The operation requested is not permitted on a DNS root server."},"0x0000255B":{code:"DNS_ERROR_NOT_ALLOWED_UNDER_DELEGATION",message:"The record could not be created because this part of the DNS namespace has been delegated to another server."},"0x0000255C":{code:"DNS_ERROR_CANNOT_FIND_ROOT_HINTS",message:"The DNS server could not find a set of root hints."},"0x0000255D":{code:"DNS_ERROR_INCONSISTENT_ROOT_HINTS",message:"The DNS server found root hints but they were not consistent across all adapters."},"0x0000255E":{code:"DNS_ERROR_DWORD_VALUE_TOO_SMALL",message:"The specified value is too small for this parameter."},"0x0000255F":{code:"DNS_ERROR_DWORD_VALUE_TOO_LARGE",message:"The specified value is too large for this parameter."},"0x00002560":{code:"DNS_ERROR_BACKGROUND_LOADING",message:"This operation is not allowed while the DNS server is loading zones in the background. Try again later."},"0x00002561":{code:"DNS_ERROR_NOT_ALLOWED_ON_RODC",message:"The operation requested is not permitted on against a DNS server running on a read-only DC."},"0x00002581":{code:"DNS_ERROR_ZONE_DOES_NOT_EXIST",message:"DNS zone does not exist."},"0x00002582":{code:"DNS_ERROR_NO_ZONE_INFO",message:"DNS zone information not available."},"0x00002583":{code:"DNS_ERROR_INVALID_ZONE_OPERATION",message:"Invalid operation for DNS zone."},"0x00002584":{code:"DNS_ERROR_ZONE_CONFIGURATION_ERROR",message:"Invalid DNS zone configuration."},"0x00002585":{code:"DNS_ERROR_ZONE_HAS_NO_SOA_RECORD",message:"DNS zone has no start of authority (SOA) record."},"0x00002586":{code:"DNS_ERROR_ZONE_HAS_NO_NS_RECORDS",message:"DNS zone has no Name Server (NS) record."},"0x00002587":{code:"DNS_ERROR_ZONE_LOCKED",message:"DNS zone is locked."},"0x00002588":{code:"DNS_ERROR_ZONE_CREATION_FAILED",message:"DNS zone creation failed."},"0x00002589":{code:"DNS_ERROR_ZONE_ALREADY_EXISTS",message:"DNS zone already exists."},"0x0000258A":{code:"DNS_ERROR_AUTOZONE_ALREADY_EXISTS",message:"DNS automatic zone already exists."},"0x0000258B":{code:"DNS_ERROR_INVALID_ZONE_TYPE",message:"Invalid DNS zone type."},"0x0000258C":{code:"DNS_ERROR_SECONDARY_REQUIRES_MASTER_IP",message:"Secondary DNS zone requires master IP address."},"0x0000258D":{code:"DNS_ERROR_ZONE_NOT_SECONDARY",message:"DNS zone not secondary."},"0x0000258E":{code:"DNS_ERROR_NEED_SECONDARY_ADDRESSES",message:"Need secondary IP address."},"0x0000258F":{code:"DNS_ERROR_WINS_INIT_FAILED",message:"WINS initialization failed."},"0x00002590":{code:"DNS_ERROR_NEED_WINS_SERVERS",message:"Need WINS servers."},"0x00002591":{code:"DNS_ERROR_NBSTAT_INIT_FAILED",message:"NBTSTAT initialization call failed."},"0x00002592":{code:"DNS_ERROR_SOA_DELETE_INVALID",message:"Invalid delete of SOA."},"0x00002593":{code:"DNS_ERROR_FORWARDER_ALREADY_EXISTS",message:"A conditional forwarding zone already exists for that name."},"0x00002594":{code:"DNS_ERROR_ZONE_REQUIRES_MASTER_IP",message:"This zone must be configured with one or more master DNS server IP addresses."},"0x00002595":{code:"DNS_ERROR_ZONE_IS_SHUTDOWN",message:"The operation cannot be performed because this zone is shut down."},"0x000025B3":{code:"DNS_ERROR_PRIMARY_REQUIRES_DATAFILE",message:"The primary DNS zone requires a data file."},"0x000025B4":{code:"DNS_ERROR_INVALID_DATAFILE_NAME",message:"Invalid data file name for the DNS zone."},"0x000025B5":{code:"DNS_ERROR_DATAFILE_OPEN_FAILURE",message:"Failed to open the data file for the DNS zone."},"0x000025B6":{code:"DNS_ERROR_FILE_WRITEBACK_FAILED",message:"Failed to write the data file for the DNS zone."},"0x000025B7":{code:"DNS_ERROR_DATAFILE_PARSING",message:"Failure while reading datafile for DNS zone."},"0x000025E5":{code:"DNS_ERROR_RECORD_DOES_NOT_EXIST",message:"DNS record does not exist."},"0x000025E6":{code:"DNS_ERROR_RECORD_FORMAT",message:"DNS record format error."},"0x000025E7":{code:"DNS_ERROR_NODE_CREATION_FAILED",message:"Node creation failure in DNS."},"0x000025E8":{code:"DNS_ERROR_UNKNOWN_RECORD_TYPE",message:"Unknown DNS record type."},"0x000025E9":{code:"DNS_ERROR_RECORD_TIMED_OUT",message:"DNS record timed out."},"0x000025EA":{code:"DNS_ERROR_NAME_NOT_IN_ZONE",message:"Name not in DNS zone."},"0x000025EB":{code:"DNS_ERROR_CNAME_LOOP",message:"CNAME loop detected."},"0x000025EC":{code:"DNS_ERROR_NODE_IS_CNAME",message:"Node is a CNAME DNS record."},"0x000025ED":{code:"DNS_ERROR_CNAME_COLLISION",message:"A CNAME record already exists for the given name."},"0x000025EE":{code:"DNS_ERROR_RECORD_ONLY_AT_ZONE_ROOT",message:"Record is only at DNS zone root."},"0x000025EF":{code:"DNS_ERROR_RECORD_ALREADY_EXISTS",message:"DNS record already exists."},"0x000025F0":{code:"DNS_ERROR_SECONDARY_DATA",message:"Secondary DNS zone data error."},"0x000025F1":{code:"DNS_ERROR_NO_CREATE_CACHE_DATA",message:"Could not create DNS cache data."},"0x000025F2":{code:"DNS_ERROR_NAME_DOES_NOT_EXIST",message:"DNS name does not exist."},"0x000025F3":{code:"DNS_WARNING_PTR_CREATE_FAILED",message:"Could not create pointer (PTR) record."},"0x000025F4":{code:"DNS_WARNING_DOMAIN_UNDELETED",message:"DNS domain was undeleted."},"0x000025F5":{code:"DNS_ERROR_DS_UNAVAILABLE",message:"The directory service is unavailable."},"0x000025F6":{code:"DNS_ERROR_DS_ZONE_ALREADY_EXISTS",message:"DNS zone already exists in the directory service."},"0x000025F7":{code:"DNS_ERROR_NO_BOOTFILE_IF_DS_ZONE",message:"DNS server not creating or reading the boot file for the directory service integrated DNS zone."},"0x00002617":{code:"DNS_INFO_AXFR_COMPLETE",message:"DNS AXFR (zone transfer) complete."},"0x00002618":{code:"DNS_ERROR_AXFR",message:"DNS zone transfer failed."},"0x00002619":{code:"DNS_INFO_ADDED_LOCAL_WINS",message:"Added local WINS server."},"0x00002649":{code:"DNS_STATUS_CONTINUE_NEEDED",message:"Secure update call needs to continue update request."},"0x0000267B":{code:"DNS_ERROR_NO_TCPIP",message:"TCP/IP network protocol not installed."},"0x0000267C":{code:"DNS_ERROR_NO_DNS_SERVERS",message:"No DNS servers configured for local system."},"0x000026AD":{code:"DNS_ERROR_DP_DOES_NOT_EXIST",message:"The specified directory partition does not exist."},"0x000026AE":{code:"DNS_ERROR_DP_ALREADY_EXISTS",message:"The specified directory partition already exists."},"0x000026AF":{code:"DNS_ERROR_DP_NOT_ENLISTED",message:"This DNS server is not enlisted in the specified directory partition."},"0x000026B0":{code:"DNS_ERROR_DP_ALREADY_ENLISTED",message:"This DNS server is already enlisted in the specified directory partition."},"0x000026B1":{code:"DNS_ERROR_DP_NOT_AVAILABLE",message:"The directory partition is not available at this time. Wait a few minutes and try again."},"0x000026B2":{code:"DNS_ERROR_DP_FSMO_ERROR",message:"The application directory partition operation failed. The domain controller holding the domain naming master role is down or unable to service the request or is not running Windows Server 2003."},"0x00002714":{code:"WSAEINTR",message:"A blocking operation was interrupted by a call to WSACancelBlockingCall."},"0x00002719":{code:"WSAEBADF",message:"The file handle supplied is not valid."},"0x0000271D":{code:"WSAEACCES",message:"An attempt was made to access a socket in a way forbidden by its access permissions."},"0x0000271E":{code:"WSAEFAULT",message:"The system detected an invalid pointer address in attempting to use a pointer argument in a call."},"0x00002726":{code:"WSAEINVAL",message:"An invalid argument was supplied."},"0x00002728":{code:"WSAEMFILE",message:"Too many open sockets."},"0x00002733":{code:"WSAEWOULDBLOCK",message:"A nonblocking socket operation could not be completed immediately."},"0x00002734":{code:"WSAEINPROGRESS",message:"A blocking operation is currently executing."},"0x00002735":{code:"WSAEALREADY",message:"An operation was attempted on a nonblocking socket that already had an operation in progress."},"0x00002736":{code:"WSAENOTSOCK",message:"An operation was attempted on something that is not a socket."},"0x00002737":{code:"WSAEDESTADDRREQ",message:"A required address was omitted from an operation on a socket."},"0x00002738":{code:"WSAEMSGSIZE",message:"A message sent on a datagram socket was larger than the internal message buffer or some other network limit, or the buffer used to receive a datagram into was smaller than the datagram itself."},"0x00002739":{code:"WSAEPROTOTYPE",message:"A protocol was specified in the socket function call that does not support the semantics of the socket type requested."},"0x0000273A":{code:"WSAENOPROTOOPT",message:"An unknown, invalid, or unsupported option or level was specified in a getsockopt or setsockopt call."},"0x0000273B":{code:"WSAEPROTONOSUPPORT",message:"The requested protocol has not been configured into the system, or no implementation for it exists."},"0x0000273C":{code:"WSAESOCKTNOSUPPORT",message:"The support for the specified socket type does not exist in this address family."},"0x0000273D":{code:"WSAEOPNOTSUPP",message:"The attempted operation is not supported for the type of object referenced."},"0x0000273E":{code:"WSAEPFNOSUPPORT",message:"The protocol family has not been configured into the system or no implementation for it exists."},"0x0000273F":{code:"WSAEAFNOSUPPORT",message:"An address incompatible with the requested protocol was used."},"0x00002740":{code:"WSAEADDRINUSE",message:"Only one usage of each socket address (protocol/network address/port) is normally permitted."},"0x00002741":{code:"WSAEADDRNOTAVAIL",message:"The requested address is not valid in its context."},"0x00002742":{code:"WSAENETDOWN",message:"A socket operation encountered a dead network."},"0x00002743":{code:"WSAENETUNREACH",message:"A socket operation was attempted to an unreachable network."},"0x00002744":{code:"WSAENETRESET",message:"The connection has been broken due to keep-alive activity detecting a failure while the operation was in progress."},"0x00002745":{code:"WSAECONNABORTED",message:"An established connection was aborted by the software in your host machine."},"0x00002746":{code:"WSAECONNRESET",message:"An existing connection was forcibly closed by the remote host."},"0x00002747":{code:"WSAENOBUFS",message:"An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full."},"0x00002748":{code:"WSAEISCONN",message:"A connect request was made on an already connected socket."},"0x00002749":{code:"WSAENOTCONN",message:"A request to send or receive data was disallowed because the socket is not connected and (when sending on a datagram socket using a sendto call) no address was supplied."},"0x0000274A":{code:"WSAESHUTDOWN",message:"A request to send or receive data was disallowed because the socket had already been shut down in that direction with a previous shutdown call."},"0x0000274B":{code:"WSAETOOMANYREFS",message:"Too many references to a kernel object."},"0x0000274C":{code:"WSAETIMEDOUT",message:"A connection attempt failed because the connected party did not properly respond after a period of time, or the established connection failed because the connected host failed to respond."},"0x0000274D":{code:"WSAECONNREFUSED",message:"No connection could be made because the target machine actively refused it."},"0x0000274E":{code:"WSAELOOP",message:"Cannot translate name."},"0x0000274F":{code:"WSAENAMETOOLONG",message:"Name or name component was too long."},"0x00002750":{code:"WSAEHOSTDOWN",message:"A socket operation failed because the destination host was down."},"0x00002751":{code:"WSAEHOSTUNREACH",message:"A socket operation was attempted to an unreachable host."},"0x00002752":{code:"WSAENOTEMPTY",message:"Cannot remove a directory that is not empty."},"0x00002753":{code:"WSAEPROCLIM",message:"A Windows Sockets implementation may have a limit on the number of applications that may use it simultaneously."},"0x00002754":{code:"WSAEUSERS",message:"Ran out of quota."},"0x00002755":{code:"WSAEDQUOT",message:"Ran out of disk quota."},"0x00002756":{code:"WSAESTALE",message:"File handle reference is no longer available."},"0x00002757":{code:"WSAEREMOTE",message:"Item is not available locally."},"0x0000276B":{code:"WSASYSNOTREADY",message:"WSAStartup cannot function at this time because the underlying system it uses to provide network services is currently unavailable."},"0x0000276C":{code:"WSAVERNOTSUPPORTED",message:"The Windows Sockets version requested is not supported."},"0x0000276D":{code:"WSANOTINITIALISED",message:"Either the application has not called WSAStartup, or WSAStartup failed."},"0x00002775":{code:"WSAEDISCON",message:"Returned by WSARecv or WSARecvFrom to indicate that the remote party has initiated a graceful shutdown sequence."},"0x00002776":{code:"WSAENOMORE",message:"No more results can be returned by WSALookupServiceNext."},"0x00002777":{code:"WSAECANCELLED",message:"A call to WSALookupServiceEnd was made while this call was still processing. The call has been canceled."},"0x00002778":{code:"WSAEINVALIDPROCTABLE",message:"The procedure call table is invalid."},"0x00002779":{code:"WSAEINVALIDPROVIDER",message:"The requested service provider is invalid."},"0x0000277A":{code:"WSAEPROVIDERFAILEDINIT",message:"The requested service provider could not be loaded or initialized."},"0x0000277B":{code:"WSASYSCALLFAILURE",message:"A system call that should never fail has failed."},"0x0000277C":{code:"WSASERVICE_NOT_FOUND",message:"No such service is known. The service cannot be found in the specified namespace."},"0x0000277D":{code:"WSATYPE_NOT_FOUND",message:"The specified class was not found."},"0x0000277E":{code:"WSA_E_NO_MORE",message:"No more results can be returned by WSALookupServiceNext."},"0x0000277F":{code:"WSA_E_CANCELLED",message:"A call to WSALookupServiceEnd was made while this call was still processing. The call has been canceled."},"0x00002780":{code:"WSAEREFUSED",message:"A database query failed because it was actively refused."},"0x00002AF9":{code:"WSAHOST_NOT_FOUND",message:"No such host is known."},"0x00002AFA":{code:"WSATRY_AGAIN",message:"This is usually a temporary error during host name resolution and means that the local server did not receive a response from an authoritative server."},"0x00002AFB":{code:"WSANO_RECOVERY",message:"A nonrecoverable error occurred during a database lookup."},"0x00002AFC":{code:"WSANO_DATA",message:"The requested name is valid, but no data of the requested type was found."},"0x00002AFD":{code:"WSA_QOS_RECEIVERS",message:"At least one reserve has arrived."},"0x00002AFE":{code:"WSA_QOS_SENDERS",message:"At least one path has arrived."},"0x00002AFF":{code:"WSA_QOS_NO_SENDERS",message:"There are no senders."},"0x00002B00":{code:"WSA_QOS_NO_RECEIVERS",message:"There are no receivers."},"0x00002B01":{code:"WSA_QOS_REQUEST_CONFIRMED",message:"Reserve has been confirmed."},"0x00002B02":{code:"WSA_QOS_ADMISSION_FAILURE",message:"Error due to lack of resources."},"0x00002B03":{code:"WSA_QOS_POLICY_FAILURE",message:"Rejected for administrative reasons\u2014bad credentials."},"0x00002B04":{code:"WSA_QOS_BAD_STYLE",message:"Unknown or conflicting style."},"0x00002B05":{code:"WSA_QOS_BAD_OBJECT",message:"There is a problem with some part of the filterspec or provider-specific buffer in general."},"0x00002B06":{code:"WSA_QOS_TRAFFIC_CTRL_ERROR",message:"There is a problem with some part of the flowspec."},"0x00002B07":{code:"WSA_QOS_GENERIC_ERROR",message:"General quality of serve (QOS) error."},"0x00002B08":{code:"WSA_QOS_ESERVICETYPE",message:"An invalid or unrecognized service type was found in the flowspec."},"0x00002B09":{code:"WSA_QOS_EFLOWSPEC",message:"An invalid or inconsistent flowspec was found in the QOS structure."},"0x00002B0A":{code:"WSA_QOS_EPROVSPECBUF",message:"Invalid QOS provider-specific buffer."},"0x00002B0B":{code:"WSA_QOS_EFILTERSTYLE",message:"An invalid QOS filter style was used."},"0x00002B0C":{code:"WSA_QOS_EFILTERTYPE",message:"An invalid QOS filter type was used."},"0x00002B0D":{code:"WSA_QOS_EFILTERCOUNT",message:"An incorrect number of QOS FILTERSPECs were specified in the FLOWDESCRIPTOR."},"0x00002B0E":{code:"WSA_QOS_EOBJLENGTH",message:"An object with an invalid ObjectLength field was specified in the QOS provider-specific buffer."},"0x00002B0F":{code:"WSA_QOS_EFLOWCOUNT",message:"An incorrect number of flow descriptors was specified in the QOS structure."},"0x00002B10":{code:"WSA_QOS_EUNKOWNPSOBJ",message:"An unrecognized object was found in the QOS provider-specific buffer."},"0x00002B11":{code:"WSA_QOS_EPOLICYOBJ",message:"An invalid policy object was found in the QOS provider-specific buffer."},"0x00002B12":{code:"WSA_QOS_EFLOWDESC",message:"An invalid QOS flow descriptor was found in the flow descriptor list."},"0x00002B13":{code:"WSA_QOS_EPSFLOWSPEC",message:"An invalid or inconsistent flowspec was found in the QOS provider-specific buffer."},"0x00002B14":{code:"WSA_QOS_EPSFILTERSPEC",message:"An invalid FILTERSPEC was found in the QOS provider-specific buffer."},"0x00002B15":{code:"WSA_QOS_ESDMODEOBJ",message:"An invalid shape discard mode object was found in the QOS provider-specific buffer."},"0x00002B16":{code:"WSA_QOS_ESHAPERATEOBJ",message:"An invalid shaping rate object was found in the QOS provider-specific buffer."},"0x00002B17":{code:"WSA_QOS_RESERVED_PETYPE",message:"A reserved policy element was found in the QOS provider-specific buffer."},"0x000032C8":{code:"ERROR_IPSEC_QM_POLICY_EXISTS",message:"The specified quick mode policy already exists."},"0x000032C9":{code:"ERROR_IPSEC_QM_POLICY_NOT_FOUND",message:"The specified quick mode policy was not found."},"0x000032CA":{code:"ERROR_IPSEC_QM_POLICY_IN_USE",message:"The specified quick mode policy is being used."},"0x000032CB":{code:"ERROR_IPSEC_MM_POLICY_EXISTS",message:"The specified main mode policy already exists."},"0x000032CC":{code:"ERROR_IPSEC_MM_POLICY_NOT_FOUND",message:"The specified main mode policy was not found."},"0x000032CD":{code:"ERROR_IPSEC_MM_POLICY_IN_USE",message:"The specified main mode policy is being used."},"0x000032CE":{code:"ERROR_IPSEC_MM_FILTER_EXISTS",message:"The specified main mode filter already exists."},"0x000032CF":{code:"ERROR_IPSEC_MM_FILTER_NOT_FOUND",message:"The specified main mode filter was not found."},"0x000032D0":{code:"ERROR_IPSEC_TRANSPORT_FILTER_EXISTS",message:"The specified transport mode filter already exists."},"0x000032D1":{code:"ERROR_IPSEC_TRANSPORT_FILTER_NOT_FOUND",message:"The specified transport mode filter does not exist."},"0x000032D2":{code:"ERROR_IPSEC_MM_AUTH_EXISTS",message:"The specified main mode authentication list exists."},"0x000032D3":{code:"ERROR_IPSEC_MM_AUTH_NOT_FOUND",message:"The specified main mode authentication list was not found."},"0x000032D4":{code:"ERROR_IPSEC_MM_AUTH_IN_USE",message:"The specified main mode authentication list is being used."},"0x000032D5":{code:"ERROR_IPSEC_DEFAULT_MM_POLICY_NOT_FOUND",message:"The specified default main mode policy was not found."},"0x000032D6":{code:"ERROR_IPSEC_DEFAULT_MM_AUTH_NOT_FOUND",message:"The specified default main mode authentication list was not found."},"0x000032D7":{code:"ERROR_IPSEC_DEFAULT_QM_POLICY_NOT_FOUND",message:"The specified default quick mode policy was not found."},"0x000032D8":{code:"ERROR_IPSEC_TUNNEL_FILTER_EXISTS",message:"The specified tunnel mode filter exists."},"0x000032D9":{code:"ERROR_IPSEC_TUNNEL_FILTER_NOT_FOUND",message:"The specified tunnel mode filter was not found."},"0x000032DA":{code:"ERROR_IPSEC_MM_FILTER_PENDING_DELETION",message:"The main mode filter is pending deletion."},"0x000032DB":{code:"ERROR_IPSEC_TRANSPORT_FILTER_ENDING_DELETION",message:"The transport filter is pending deletion."},"0x000032DC":{code:"ERROR_IPSEC_TUNNEL_FILTER_PENDING_DELETION",message:"The tunnel filter is pending deletion."},"0x000032DD":{code:"ERROR_IPSEC_MM_POLICY_PENDING_ELETION",message:"The main mode policy is pending deletion."},"0x000032DE":{code:"ERROR_IPSEC_MM_AUTH_PENDING_DELETION",message:"The main mode authentication bundle is pending deletion."},"0x000032DF":{code:"ERROR_IPSEC_QM_POLICY_PENDING_DELETION",message:"The quick mode policy is pending deletion."},"0x000032E0":{code:"WARNING_IPSEC_MM_POLICY_PRUNED",message:"The main mode policy was successfully added, but some of the requested offers are not supported."},"0x000032E1":{code:"WARNING_IPSEC_QM_POLICY_PRUNED",message:"The quick mode policy was successfully added, but some of the requested offers are not supported."},"0x000035E8":{code:"ERROR_IPSEC_IKE_NEG_STATUS_BEGIN",message:"Starts the list of frequencies of various IKE Win32 error codes encountered during negotiations."},"0x000035E9":{code:"ERROR_IPSEC_IKE_AUTH_FAIL",message:"The IKE authentication credentials are unacceptable."},"0x000035EA":{code:"ERROR_IPSEC_IKE_ATTRIB_FAIL",message:"The IKE security attributes are unacceptable."},"0x000035EB":{code:"ERROR_IPSEC_IKE_NEGOTIATION_PENDING",message:"The IKE negotiation is in progress."},"0x000035EC":{code:"ERROR_IPSEC_IKE_GENERAL_PROCESSING_ERROR",message:"General processing error."},"0x000035ED":{code:"ERROR_IPSEC_IKE_TIMED_OUT",message:"Negotiation timed out."},"0x000035EE":{code:"ERROR_IPSEC_IKE_NO_CERT",message:"The IKE failed to find a valid machine certificate. Contact your network security administrator about installing a valid certificate in the appropriate certificate store."},"0x000035EF":{code:"ERROR_IPSEC_IKE_SA_DELETED",message:"The IKE security association (SA) was deleted by a peer before it was completely established."},"0x000035F0":{code:"ERROR_IPSEC_IKE_SA_REAPED",message:"The IKE SA was deleted before it was completely established."},"0x000035F1":{code:"ERROR_IPSEC_IKE_MM_ACQUIRE_DROP",message:"The negotiation request sat in the queue too long."},"0x000035F2":{code:"ERROR_IPSEC_IKE_QM_ACQUIRE_DROP",message:"The negotiation request sat in the queue too long."},"0x000035F3":{code:"ERROR_IPSEC_IKE_QUEUE_DROP_MM",message:"The negotiation request sat in the queue too long."},"0x000035F4":{code:"ERROR_IPSEC_IKE_QUEUE_DROP_NO_MM",message:"The negotiation request sat in the queue too long."},"0x000035F5":{code:"ERROR_IPSEC_IKE_DROP_NO_RESPONSE",message:"There was no response from a peer."},"0x000035F6":{code:"ERROR_IPSEC_IKE_MM_DELAY_DROP",message:"The negotiation took too long."},"0x000035F7":{code:"ERROR_IPSEC_IKE_QM_DELAY_DROP",message:"The negotiation took too long."},"0x000035F8":{code:"ERROR_IPSEC_IKE_ERROR",message:"An unknown error occurred."},"0x000035F9":{code:"ERROR_IPSEC_IKE_CRL_FAILED",message:"The certificate revocation check failed."},"0x000035FA":{code:"ERROR_IPSEC_IKE_INVALID_KEY_USAGE",message:"Invalid certificate key usage."},"0x000035FB":{code:"ERROR_IPSEC_IKE_INVALID_CERT_TYPE",message:"Invalid certificate type."},"0x000035FC":{code:"ERROR_IPSEC_IKE_NO_PRIVATE_KEY",message:"The IKE negotiation failed because the machine certificate used does not have a private key. IPsec certificates require a private key. Contact your network security administrator about a certificate that has a private key."},"0x000035FE":{code:"ERROR_IPSEC_IKE_DH_FAIL",message:"There was a failure in the Diffie-Hellman computation."},"0x00003600":{code:"ERROR_IPSEC_IKE_INVALID_HEADER",message:"Invalid header."},"0x00003601":{code:"ERROR_IPSEC_IKE_NO_POLICY",message:"No policy configured."},"0x00003602":{code:"ERROR_IPSEC_IKE_INVALID_SIGNATURE",message:"Failed to verify signature."},"0x00003603":{code:"ERROR_IPSEC_IKE_KERBEROS_ERROR",message:"Failed to authenticate using Kerberos."},"0x00003604":{code:"ERROR_IPSEC_IKE_NO_PUBLIC_KEY",message:"The peer's certificate did not have a public key."},"0x00003605":{code:"ERROR_IPSEC_IKE_PROCESS_ERR",message:"Error processing the error payload."},"0x00003606":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_SA",message:"Error processing the SA payload."},"0x00003607":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_PROP",message:"Error processing the proposal payload."},"0x00003608":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_TRANS",message:"Error processing the transform payload."},"0x00003609":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_KE",message:"Error processing the key exchange payload."},"0x0000360A":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_ID",message:"Error processing the ID payload."},"0x0000360B":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_CERT",message:"Error processing the certification payload."},"0x0000360C":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_CERT_REQ",message:"Error processing the certificate request payload."},"0x0000360D":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_HASH",message:"Error processing the hash payload."},"0x0000360E":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_SIG",message:"Error processing the signature payload."},"0x0000360F":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_NONCE",message:"Error processing the nonce payload."},"0x00003610":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_NOTIFY",message:"Error processing the notify payload."},"0x00003611":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_DELETE",message:"Error processing the delete payload."},"0x00003612":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_VENDOR",message:"Error processing the VendorId payload."},"0x00003613":{code:"ERROR_IPSEC_IKE_INVALID_PAYLOAD",message:"Invalid payload received."},"0x00003614":{code:"ERROR_IPSEC_IKE_LOAD_SOFT_SA",message:"Soft SA loaded."},"0x00003615":{code:"ERROR_IPSEC_IKE_SOFT_SA_TORN_DOWN",message:"Soft SA torn down."},"0x00003616":{code:"ERROR_IPSEC_IKE_INVALID_COOKIE",message:"Invalid cookie received."},"0x00003617":{code:"ERROR_IPSEC_IKE_NO_PEER_CERT",message:"Peer failed to send valid machine certificate."},"0x00003618":{code:"ERROR_IPSEC_IKE_PEER_CRL_FAILED",message:"Certification revocation check of peer's certificate failed."},"0x00003619":{code:"ERROR_IPSEC_IKE_POLICY_CHANGE",message:"New policy invalidated SAs formed with the old policy."},"0x0000361A":{code:"ERROR_IPSEC_IKE_NO_MM_POLICY",message:"There is no available main mode IKE policy."},"0x0000361B":{code:"ERROR_IPSEC_IKE_NOTCBPRIV",message:"Failed to enabled trusted computer base (TCB) privilege."},"0x0000361C":{code:"ERROR_IPSEC_IKE_SECLOADFAIL",message:"Failed to load SECURITY.DLL."},"0x0000361D":{code:"ERROR_IPSEC_IKE_FAILSSPINIT",message:"Failed to obtain the security function table dispatch address from the SSPI."},"0x0000361E":{code:"ERROR_IPSEC_IKE_FAILQUERYSSP",message:"Failed to query the Kerberos package to obtain the max token size."},"0x0000361F":{code:"ERROR_IPSEC_IKE_SRVACQFAIL",message:"Failed to obtain the Kerberos server credentials for the Internet Security Association and Key Management Protocol (ISAKMP)/ERROR_IPSEC_IKE service. Kerberos authentication will not function. The most likely reason for this is lack of domain membership. This is normal if your computer is a member of a workgroup."},"0x00003620":{code:"ERROR_IPSEC_IKE_SRVQUERYCRED",message:"Failed to determine the SSPI principal name for ISAKMP/ERROR_IPSEC_IKE service (QueryCredentialsAttributes)."},"0x00003621":{code:"ERROR_IPSEC_IKE_GETSPIFAIL",message:"Failed to obtain a new service provider interface (SPI) for the inbound SA from the IPsec driver. The most common cause for this is that the driver does not have the correct filter. Check your policy to verify the filters."},"0x00003622":{code:"ERROR_IPSEC_IKE_INVALID_FILTER",message:"Given filter is invalid."},"0x00003623":{code:"ERROR_IPSEC_IKE_OUT_OF_MEMORY",message:"Memory allocation failed."},"0x00003624":{code:"ERROR_IPSEC_IKE_ADD_UPDATE_KEY_FAILED",message:"Failed to add an SA to the IPSec driver. The most common cause for this is if the IKE negotiation took too long to complete. If the problem persists, reduce the load on the faulting machine."},"0x00003625":{code:"ERROR_IPSEC_IKE_INVALID_POLICY",message:"Invalid policy."},"0x00003626":{code:"ERROR_IPSEC_IKE_UNKNOWN_DOI",message:"Invalid digital object identifier (DOI)."},"0x00003627":{code:"ERROR_IPSEC_IKE_INVALID_SITUATION",message:"Invalid situation."},"0x00003628":{code:"ERROR_IPSEC_IKE_DH_FAILURE",message:"Diffie-Hellman failure."},"0x00003629":{code:"ERROR_IPSEC_IKE_INVALID_GROUP",message:"Invalid Diffie-Hellman group."},"0x0000362A":{code:"ERROR_IPSEC_IKE_ENCRYPT",message:"Error encrypting payload."},"0x0000362B":{code:"ERROR_IPSEC_IKE_DECRYPT",message:"Error decrypting payload."},"0x0000362C":{code:"ERROR_IPSEC_IKE_POLICY_MATCH",message:"Policy match error."},"0x0000362D":{code:"ERROR_IPSEC_IKE_UNSUPPORTED_ID",message:"Unsupported ID."},"0x0000362E":{code:"ERROR_IPSEC_IKE_INVALID_HASH",message:"Hash verification failed."},"0x0000362F":{code:"ERROR_IPSEC_IKE_INVALID_HASH_ALG",message:"Invalid hash algorithm."},"0x00003630":{code:"ERROR_IPSEC_IKE_INVALID_HASH_SIZE",message:"Invalid hash size."},"0x00003631":{code:"ERROR_IPSEC_IKE_INVALID_ENCRYPT_ALG",message:"Invalid encryption algorithm."},"0x00003632":{code:"ERROR_IPSEC_IKE_INVALID_AUTH_ALG",message:"Invalid authentication algorithm."},"0x00003633":{code:"ERROR_IPSEC_IKE_INVALID_SIG",message:"Invalid certificate signature."},"0x00003634":{code:"ERROR_IPSEC_IKE_LOAD_FAILED",message:"Load failed."},"0x00003635":{code:"ERROR_IPSEC_IKE_RPC_DELETE",message:"Deleted by using an RPC call."},"0x00003636":{code:"ERROR_IPSEC_IKE_BENIGN_REINIT",message:"A temporary state was created to perform reinitialization. This is not a real failure."},"0x00003637":{code:"ERROR_IPSEC_IKE_INVALID_RESPONDER_LIFETIME_NOTIFY",message:"The lifetime value received in the Responder Lifetime Notify is below the Windows 2000 configured minimum value. Fix the policy on the peer machine."},"0x00003639":{code:"ERROR_IPSEC_IKE_INVALID_CERT_KEYLEN",message:"Key length in the certificate is too small for configured security requirements."},"0x0000363A":{code:"ERROR_IPSEC_IKE_MM_LIMIT",message:"Maximum number of established MM SAs to peer exceeded."},"0x0000363B":{code:"ERROR_IPSEC_IKE_NEGOTIATION_DISABLED",message:"The IKE received a policy that disables negotiation."},"0x0000363C":{code:"ERROR_IPSEC_IKE_QM_LIMIT",message:"Reached maximum quick mode limit for the main mode. New main mode will be started."},"0x0000363D":{code:"ERROR_IPSEC_IKE_MM_EXPIRED",message:"Main mode SA lifetime expired or the peer sent a main mode delete."},"0x0000363E":{code:"ERROR_IPSEC_IKE_PEER_MM_ASSUMED_INVALID",message:"Main mode SA assumed to be invalid because peer stopped responding."},"0x0000363F":{code:"ERROR_IPSEC_IKE_CERT_CHAIN_POLICY_MISMATCH",message:"Certificate does not chain to a trusted root in IPsec policy."},"0x00003640":{code:"ERROR_IPSEC_IKE_UNEXPECTED_MESSAGE_ID",message:"Received unexpected message ID."},"0x00003641":{code:"ERROR_IPSEC_IKE_INVALID_UMATTS",message:"Received invalid AuthIP user mode attributes."},"0x00003642":{code:"ERROR_IPSEC_IKE_DOS_COOKIE_SENT",message:"Sent DOS cookie notify to initiator."},"0x00003643":{code:"ERROR_IPSEC_IKE_SHUTTING_DOWN",message:"The IKE service is shutting down."},"0x00003644":{code:"ERROR_IPSEC_IKE_CGA_AUTH_FAILED",message:"Could not verify the binding between the color graphics adapter (CGA) address and the certificate."},"0x00003645":{code:"ERROR_IPSEC_IKE_PROCESS_ERR_NATOA",message:"Error processing the NatOA payload."},"0x00003646":{code:"ERROR_IPSEC_IKE_INVALID_MM_FOR_QM",message:"The parameters of the main mode are invalid for this quick mode."},"0x00003647":{code:"ERROR_IPSEC_IKE_QM_EXPIRED",message:"The quick mode SA was expired by the IPsec driver."},"0x00003648":{code:"ERROR_IPSEC_IKE_TOO_MANY_FILTERS",message:"Too many dynamically added IKEEXT filters were detected."},"0x00003649":{code:"ERROR_IPSEC_IKE_NEG_STATUS_END",message:"Ends the list of frequencies of various IKE Win32 error codes encountered during negotiations."},"0x000036B0":{code:"ERROR_SXS_SECTION_NOT_FOUND",message:"The requested section was not present in the activation context."},"0x000036B1":{code:"ERROR_SXS_CANT_GEN_ACTCTX",message:"The application has failed to start because its side-by-side configuration is incorrect. See the application event log for more detail."},"0x000036B2":{code:"ERROR_SXS_INVALID_ACTCTXDATA_FORMAT",message:"The application binding data format is invalid."},"0x000036B3":{code:"ERROR_SXS_ASSEMBLY_NOT_FOUND",message:"The referenced assembly is not installed on your system."},"0x000036B4":{code:"ERROR_SXS_MANIFEST_FORMAT_ERROR",message:"The manifest file does not begin with the required tag and format information."},"0x000036B5":{code:"ERROR_SXS_MANIFEST_PARSE_ERROR",message:"The manifest file contains one or more syntax errors."},"0x000036B6":{code:"ERROR_SXS_ACTIVATION_CONTEXT_DISABLED",message:"The application attempted to activate a disabled activation context."},"0x000036B7":{code:"ERROR_SXS_KEY_NOT_FOUND",message:"The requested lookup key was not found in any active activation context."},"0x000036B8":{code:"ERROR_SXS_VERSION_CONFLICT",message:"A component version required by the application conflicts with another active component version."},"0x000036B9":{code:"ERROR_SXS_WRONG_SECTION_TYPE",message:"The type requested activation context section does not match the query API used."},"0x000036BA":{code:"ERROR_SXS_THREAD_QUERIES_DISABLED",message:"Lack of system resources has required isolated activation to be disabled for the current thread of execution."},"0x000036BB":{code:"ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET",message:"An attempt to set the process default activation context failed because the process default activation context was already set."},"0x000036BC":{code:"ERROR_SXS_UNKNOWN_ENCODING_GROUP",message:"The encoding group identifier specified is not recognized."},"0x000036BD":{code:"ERROR_SXS_UNKNOWN_ENCODING",message:"The encoding requested is not recognized."},"0x000036BE":{code:"ERROR_SXS_INVALID_XML_NAMESPACE_URI",message:"The manifest contains a reference to an invalid URI."},"0x000036BF":{code:"ERROR_SXS_ROOT_MANIFEST_DEPENDENCY_OT_INSTALLED",message:"The application manifest contains a reference to a dependent assembly that is not installed."},"0x000036C0":{code:"ERROR_SXS_LEAF_MANIFEST_DEPENDENCY_NOT_INSTALLED",message:"The manifest for an assembly used by the application has a reference to a dependent assembly that is not installed."},"0x000036C1":{code:"ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE",message:"The manifest contains an attribute for the assembly identity that is not valid."},"0x000036C2":{code:"ERROR_SXS_MANIFEST_MISSING_REQUIRED_DEFAULT_NAMESPACE",message:"The manifest is missing the required default namespace specification on the assembly element."},"0x000036C3":{code:"ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE",message:'The manifest has a default namespace specified on the assembly element but its value is not urn:schemas-microsoft-com:asm.v1"."'},"0x000036C4":{code:"ERROR_SXS_PRIVATE_MANIFEST_CROSS_PATH_WITH_REPARSE_POINT",message:"The private manifest probed has crossed the reparse-point-associated path."},"0x000036C5":{code:"ERROR_SXS_DUPLICATE_DLL_NAME",message:"Two or more components referenced directly or indirectly by the application manifest have files by the same name."},"0x000036C6":{code:"ERROR_SXS_DUPLICATE_WINDOWCLASS_NAME",message:"Two or more components referenced directly or indirectly by the application manifest have window classes with the same name."},"0x000036C7":{code:"ERROR_SXS_DUPLICATE_CLSID",message:"Two or more components referenced directly or indirectly by the application manifest have the same COM server CLSIDs."},"0x000036C8":{code:"ERROR_SXS_DUPLICATE_IID",message:"Two or more components referenced directly or indirectly by the application manifest have proxies for the same COM interface IIDs."},"0x000036C9":{code:"ERROR_SXS_DUPLICATE_TLBID",message:"Two or more components referenced directly or indirectly by the application manifest have the same COM type library TLBIDs."},"0x000036CA":{code:"ERROR_SXS_DUPLICATE_PROGID",message:"Two or more components referenced directly or indirectly by the application manifest have the same COM ProgIDs."},"0x000036CB":{code:"ERROR_SXS_DUPLICATE_ASSEMBLY_NAME",message:"Two or more components referenced directly or indirectly by the application manifest are different versions of the same component, which is not permitted."},"0x000036CC":{code:"ERROR_SXS_FILE_HASH_MISMATCH",message:"A component's file does not match the verification information present in the component manifest."},"0x000036CD":{code:"ERROR_SXS_POLICY_PARSE_ERROR",message:"The policy manifest contains one or more syntax errors."},"0x000036CE":{code:"ERROR_SXS_XML_E_MISSINGQUOTE",message:"Manifest Parse Error: A string literal was expected, but no opening quotation mark was found."},"0x000036CF":{code:"ERROR_SXS_XML_E_COMMENTSYNTAX",message:"Manifest Parse Error: Incorrect syntax was used in a comment."},"0x000036D0":{code:"ERROR_SXS_XML_E_BADSTARTNAMECHAR",message:"Manifest Parse Error: A name started with an invalid character."},"0x000036D1":{code:"ERROR_SXS_XML_E_BADNAMECHAR",message:"Manifest Parse Error: A name contained an invalid character."},"0x000036D2":{code:"ERROR_SXS_XML_E_BADCHARINSTRING",message:"Manifest Parse Error: A string literal contained an invalid character."},"0x000036D3":{code:"ERROR_SXS_XML_E_XMLDECLSYNTAX",message:"Manifest Parse Error: Invalid syntax for an XML declaration."},"0x000036D4":{code:"ERROR_SXS_XML_E_BADCHARDATA",message:"Manifest Parse Error: An Invalid character was found in text content."},"0x000036D5":{code:"ERROR_SXS_XML_E_MISSINGWHITESPACE",message:"Manifest Parse Error: Required white space was missing."},"0x000036D6":{code:"ERROR_SXS_XML_E_EXPECTINGTAGEND",message:"Manifest Parse Error: The angle bracket (>) character was expected."},"0x000036D7":{code:"ERROR_SXS_XML_E_MISSINGSEMICOLON",message:"Manifest Parse Error: A semicolon (;) was expected."},"0x000036D8":{code:"ERROR_SXS_XML_E_UNBALANCEDPAREN",message:"Manifest Parse Error: Unbalanced parentheses."},"0x000036D9":{code:"ERROR_SXS_XML_E_INTERNALERROR",message:"Manifest Parse Error: Internal error."},"0x000036DA":{code:"ERROR_SXS_XML_E_UNEXPECTED_WHITESPACE",message:"Manifest Parse Error: Whitespace is not allowed at this location."},"0x000036DB":{code:"ERROR_SXS_XML_E_INCOMPLETE_ENCODING",message:"Manifest Parse Error: End of file reached in invalid state for current encoding."},"0x000036DC":{code:"ERROR_SXS_XML_E_MISSING_PAREN",message:"Manifest Parse Error: Missing parenthesis."},"0x000036DD":{code:"ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE",message:`Manifest Parse Error: A single (') or double (") quotation mark is missing.`},"0x000036DE":{code:"ERROR_SXS_XML_E_MULTIPLE_COLONS",message:"Manifest Parse Error: Multiple colons are not allowed in a name."},"0x000036DF":{code:"ERROR_SXS_XML_E_INVALID_DECIMAL",message:"Manifest Parse Error: Invalid character for decimal digit."},"0x000036E0":{code:"ERROR_SXS_XML_E_INVALID_HEXIDECIMAL",message:"Manifest Parse Error: Invalid character for hexadecimal digit."},"0x000036E1":{code:"ERROR_SXS_XML_E_INVALID_UNICODE",message:"Manifest Parse Error: Invalid Unicode character value for this platform."},"0x000036E2":{code:"ERROR_SXS_XML_E_WHITESPACEORQUESTIONMARK",message:"Manifest Parse Error: Expecting whitespace or question mark (?)."},"0x000036E3":{code:"ERROR_SXS_XML_E_UNEXPECTEDENDTAG",message:"Manifest Parse Error: End tag was not expected at this location."},"0x000036E4":{code:"ERROR_SXS_XML_E_UNCLOSEDTAG",message:"Manifest Parse Error: The following tags were not closed: %1."},"0x000036E5":{code:"ERROR_SXS_XML_E_DUPLICATEATTRIBUTE",message:"Manifest Parse Error: Duplicate attribute."},"0x000036E6":{code:"ERROR_SXS_XML_E_MULTIPLEROOTS",message:"Manifest Parse Error: Only one top-level element is allowed in an XML document."},"0x000036E7":{code:"ERROR_SXS_XML_E_INVALIDATROOTLEVEL",message:"Manifest Parse Error: Invalid at the top level of the document."},"0x000036E8":{code:"ERROR_SXS_XML_E_BADXMLDECL",message:"Manifest Parse Error: Invalid XML declaration."},"0x000036E9":{code:"ERROR_SXS_XML_E_MISSINGROOT",message:"Manifest Parse Error: XML document must have a top-level element."},"0x000036EA":{code:"ERROR_SXS_XML_E_UNEXPECTEDEOF",message:"Manifest Parse Error: Unexpected end of file."},"0x000036EB":{code:"ERROR_SXS_XML_E_BADPEREFINSUBSET",message:"Manifest Parse Error: Parameter entities cannot be used inside markup declarations in an internal subset."},"0x000036EC":{code:"ERROR_SXS_XML_E_UNCLOSEDSTARTTAG",message:"Manifest Parse Error: Element was not closed."},"0x000036ED":{code:"ERROR_SXS_XML_E_UNCLOSEDENDTAG",message:"Manifest Parse Error: End element was missing the angle bracket (>) character."},"0x000036EE":{code:"ERROR_SXS_XML_E_UNCLOSEDSTRING",message:"Manifest Parse Error: A string literal was not closed."},"0x000036EF":{code:"ERROR_SXS_XML_E_UNCLOSEDCOMMENT",message:"Manifest Parse Error: A comment was not closed."},"0x000036F0":{code:"ERROR_SXS_XML_E_UNCLOSEDDECL",message:"Manifest Parse Error: A declaration was not closed."},"0x000036F1":{code:"ERROR_SXS_XML_E_UNCLOSEDCDATA",message:"Manifest Parse Error: A CDATA section was not closed."},"0x000036F2":{code:"ERROR_SXS_XML_E_RESERVEDNAMESPACE",message:'Manifest Parse Error: The namespace prefix is not allowed to start with the reserved string xml"."'},"0x000036F3":{code:"ERROR_SXS_XML_E_INVALIDENCODING",message:"Manifest Parse Error: System does not support the specified encoding."},"0x000036F4":{code:"ERROR_SXS_XML_E_INVALIDSWITCH",message:"Manifest Parse Error: Switch from current encoding to specified encoding not supported."},"0x000036F5":{code:"ERROR_SXS_XML_E_BADXMLCASE",message:'Manifest Parse Error: The name "xml" is reserved and must be lowercase.'},"0x000036F6":{code:"ERROR_SXS_XML_E_INVALID_STANDALONE",message:'Manifest Parse Error: The stand-alone attribute must have the value "yes" or "no".'},"0x000036F7":{code:"ERROR_SXS_XML_E_UNEXPECTED_STANDALONE",message:"Manifest Parse Error: The stand-alone attribute cannot be used in external entities."},"0x000036F8":{code:"ERROR_SXS_XML_E_INVALID_VERSION",message:"Manifest Parse Error: Invalid version number."},"0x000036F9":{code:"ERROR_SXS_XML_E_MISSINGEQUALS",message:"Manifest Parse Error: Missing equal sign (=) between the attribute and the attribute value."},"0x000036FA":{code:"ERROR_SXS_PROTECTION_RECOVERY_FAILED",message:"Assembly Protection Error: Unable to recover the specified assembly."},"0x000036FB":{code:"ERROR_SXS_PROTECTION_PUBLIC_KEY_OO_SHORT",message:"Assembly Protection Error: The public key for an assembly was too short to be allowed."},"0x000036FC":{code:"ERROR_SXS_PROTECTION_CATALOG_NOT_VALID",message:"Assembly Protection Error: The catalog for an assembly is not valid, or does not match the assembly's manifest."},"0x000036FD":{code:"ERROR_SXS_UNTRANSLATABLE_HRESULT",message:"An HRESULT could not be translated to a corresponding Win32 error code."},"0x000036FE":{code:"ERROR_SXS_PROTECTION_CATALOG_FILE_MISSING",message:"Assembly Protection Error: The catalog for an assembly is missing."},"0x000036FF":{code:"ERROR_SXS_MISSING_ASSEMBLY_IDENTITY_ATTRIBUTE",message:"The supplied assembly identity is missing one or more attributes that must be present in this context."},"0x00003700":{code:"ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME",message:"The supplied assembly identity has one or more attribute names that contain characters not permitted in XML names."},"0x00003701":{code:"ERROR_SXS_ASSEMBLY_MISSING",message:"The referenced assembly could not be found."},"0x00003702":{code:"ERROR_SXS_CORRUPT_ACTIVATION_STACK",message:"The activation context activation stack for the running thread of execution is corrupt."},"0x00003703":{code:"ERROR_SXS_CORRUPTION",message:"The application isolation metadata for this process or thread has become corrupt."},"0x00003704":{code:"ERROR_SXS_EARLY_DEACTIVATION",message:"The activation context being deactivated is not the most recently activated one."},"0x00003705":{code:"ERROR_SXS_INVALID_DEACTIVATION",message:"The activation context being deactivated is not active for the current thread of execution."},"0x00003706":{code:"ERROR_SXS_MULTIPLE_DEACTIVATION",message:"The activation context being deactivated has already been deactivated."},"0x00003707":{code:"ERROR_SXS_PROCESS_TERMINATION_REQUESTED",message:"A component used by the isolation facility has requested to terminate the process."},"0x00003708":{code:"ERROR_SXS_RELEASE_ACTIVATION_ONTEXT",message:"A kernel mode component is releasing a reference on an activation context."},"0x00003709":{code:"ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY",message:"The activation context of the system default assembly could not be generated."},"0x0000370A":{code:"ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE",message:"The value of an attribute in an identity is not within the legal range."},"0x0000370B":{code:"ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME",message:"The name of an attribute in an identity is not within the legal range."},"0x0000370C":{code:"ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE",message:"An identity contains two definitions for the same attribute."},"0x0000370D":{code:"ERROR_SXS_IDENTITY_PARSE_ERROR",message:"The identity string is malformed. This may be due to a trailing comma, more than two unnamed attributes, a missing attribute name, or a missing attribute value."},"0x0000370E":{code:"ERROR_MALFORMED_SUBSTITUTION_STRING",message:"A string containing localized substitutable content was malformed. Either a dollar sign ($) was followed by something other than a left parenthesis or another dollar sign, or a substitution's right parenthesis was not found."},"0x0000370F":{code:"ERROR_SXS_INCORRECT_PUBLIC_KEY_OKEN",message:"The public key token does not correspond to the public key specified."},"0x00003710":{code:"ERROR_UNMAPPED_SUBSTITUTION_STRING",message:"A substitution string had no mapping."},"0x00003711":{code:"ERROR_SXS_ASSEMBLY_NOT_LOCKED",message:"The component must be locked before making the request."},"0x00003712":{code:"ERROR_SXS_COMPONENT_STORE_CORRUPT",message:"The component store has been corrupted."},"0x00003713":{code:"ERROR_ADVANCED_INSTALLER_FAILED",message:"An advanced installer failed during setup or servicing."},"0x00003714":{code:"ERROR_XML_ENCODING_MISMATCH",message:"The character encoding in the XML declaration did not match the encoding used in the document."},"0x00003715":{code:"ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT",message:"The identities of the manifests are identical, but the contents are different."},"0x00003716":{code:"ERROR_SXS_IDENTITIES_DIFFERENT",message:"The component identities are different."},"0x00003717":{code:"ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT",message:"The assembly is not a deployment."},"0x00003718":{code:"ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY",message:"The file is not a part of the assembly."},"0x00003719":{code:"ERROR_SXS_MANIFEST_TOO_BIG",message:"The size of the manifest exceeds the maximum allowed."},"0x0000371A":{code:"ERROR_SXS_SETTING_NOT_REGISTERED",message:"The setting is not registered."},"0x0000371B":{code:"ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE",message:"One or more required members of the transaction are not present."},"0x00003A98":{code:"ERROR_EVT_INVALID_CHANNEL_PATH",message:"The specified channel path is invalid."},"0x00003A99":{code:"ERROR_EVT_INVALID_QUERY",message:"The specified query is invalid."},"0x00003A9A":{code:"ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND",message:"The publisher metadata cannot be found in the resource."},"0x00003A9B":{code:"ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND",message:"The template for an event definition cannot be found in the resource (error = %1)."},"0x00003A9C":{code:"ERROR_EVT_INVALID_PUBLISHER_NAME",message:"The specified publisher name is invalid."},"0x00003A9D":{code:"ERROR_EVT_INVALID_EVENT_DATA",message:"The event data raised by the publisher is not compatible with the event template definition in the publisher's manifest."},"0x00003A9F":{code:"ERROR_EVT_CHANNEL_NOT_FOUND",message:"The specified channel could not be found. Check channel configuration."},"0x00003AA0":{code:"ERROR_EVT_MALFORMED_XML_TEXT",message:"The specified XML text was not well-formed. See extended error for more details."},"0x00003AA1":{code:"ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL",message:"The caller is trying to subscribe to a direct channel which is not allowed. The events for a direct channel go directly to a log file and cannot be subscribed to."},"0x00003AA2":{code:"ERROR_EVT_CONFIGURATION_ERROR",message:"Configuration error."},"0x00003AA3":{code:"ERROR_EVT_QUERY_RESULT_STALE",message:"The query result is stale or invalid. This may be due to the log being cleared or rolling over after the query result was created. Users should handle this code by releasing the query result object and reissuing the query."},"0x00003AA4":{code:"ERROR_EVT_QUERY_RESULT_INVALID_POSITION",message:"Query result is currently at an invalid position."},"0x00003AA5":{code:"ERROR_EVT_NON_VALIDATING_MSXML",message:"Registered Microsoft XML (MSXML) does not support validation."},"0x00003AA6":{code:"ERROR_EVT_FILTER_ALREADYSCOPED",message:"An expression can only be followed by a change-of-scope operation if it itself evaluates to a node set and is not already part of some other change-of-scope operation."},"0x00003AA7":{code:"ERROR_EVT_FILTER_NOTELTSET",message:"Cannot perform a step operation from a term that does not represent an element set."},"0x00003AA8":{code:"ERROR_EVT_FILTER_INVARG",message:"Left side arguments to binary operators must be either attributes, nodes, or variables and right side arguments must be constants."},"0x00003AA9":{code:"ERROR_EVT_FILTER_INVTEST",message:"A step operation must involve either a node test or, in the case of a predicate, an algebraic expression against which to test each node in the node set identified by the preceding node set can be evaluated."},"0x00003AAA":{code:"ERROR_EVT_FILTER_INVTYPE",message:"This data type is currently unsupported."},"0x00003AAB":{code:"ERROR_EVT_FILTER_PARSEERR",message:"A syntax error occurred at position %1!d!"},"0x00003AAC":{code:"ERROR_EVT_FILTER_UNSUPPORTEDOP",message:"This operator is unsupported by this implementation of the filter."},"0x00003AAD":{code:"ERROR_EVT_FILTER_UNEXPECTEDTOKEN",message:"The token encountered was unexpected."},"0x00003AAE":{code:"ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL",message:"The requested operation cannot be performed over an enabled direct channel. The channel must first be disabled before performing the requested operation."},"0x00003AAF":{code:"ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE",message:"Channel property %1!s! contains an invalid value. The value has an invalid type, is outside the valid range, cannot be updated, or is not supported by this type of channel."},"0x00003AB0":{code:"ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE",message:"Publisher property %1!s! contains an invalid value. The value has an invalid type, is outside the valid range, cannot be updated, or is not supported by this type of publisher."},"0x00003AB1":{code:"ERROR_EVT_CHANNEL_CANNOT_ACTIVATE",message:"The channel fails to activate."},"0x00003AB2":{code:"ERROR_EVT_FILTER_TOO_COMPLEX",message:"The xpath expression exceeded supported complexity. Simplify it or split it into two or more simple expressions."},"0x00003AB3":{code:"ERROR_EVT_MESSAGE_NOT_FOUND",message:"The message resource is present but the message is not found in the string or message table."},"0x00003AB4":{code:"ERROR_EVT_MESSAGE_ID_NOT_FOUND",message:"The message ID for the desired message could not be found."},"0x00003AB5":{code:"ERROR_EVT_UNRESOLVED_VALUE_INSERT",message:"The substitution string for the insert index (%1) could not be found."},"0x00003AB6":{code:"ERROR_EVT_UNRESOLVED_PARAMETER_INSERT",message:"The description string for the parameter reference (%1) could not be found."},"0x00003AB7":{code:"ERROR_EVT_MAX_INSERTS_REACHED",message:"The maximum number of replacements has been reached."},"0x00003AB8":{code:"ERROR_EVT_EVENT_DEFINITION_NOT_OUND",message:"The event definition could not be found for the event ID (%1)."},"0x00003AB9":{code:"ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND",message:"The locale-specific resource for the desired message is not present."},"0x00003ABA":{code:"ERROR_EVT_VERSION_TOO_OLD",message:"The resource is too old to be compatible."},"0x00003ABB":{code:"ERROR_EVT_VERSION_TOO_NEW",message:"The resource is too new to be compatible."},"0x00003ABC":{code:"ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY",message:"The channel at index %1 of the query cannot be opened."},"0x00003ABD":{code:"ERROR_EVT_PUBLISHER_DISABLED",message:"The publisher has been disabled and its resource is not available. This usually occurs when the publisher is in the process of being uninstalled or upgraded."},"0x00003AE8":{code:"ERROR_EC_SUBSCRIPTION_CANNOT_ACTIVATE",message:"The subscription fails to activate."},"0x00003AE9":{code:"ERROR_EC_LOG_DISABLED",message:"The log of the subscription is in a disabled state and events cannot be forwarded to it. The log must first be enabled before the subscription can be activated."},"0x00003AFC":{code:"ERROR_MUI_FILE_NOT_FOUND",message:"The resource loader failed to find the Multilingual User Interface (MUI) file."},"0x00003AFD":{code:"ERROR_MUI_INVALID_FILE",message:"The resource loader failed to load the MUI file because the file failed to pass validation."},"0x00003AFE":{code:"ERROR_MUI_INVALID_RC_CONFIG",message:"The release candidate (RC) manifest is corrupted with garbage data, is an unsupported version, or is missing a required item."},"0x00003AFF":{code:"ERROR_MUI_INVALID_LOCALE_NAME",message:"The RC manifest has an invalid culture name."},"0x00003B00":{code:"ERROR_MUI_INVALID_ULTIMATEFALLBACK_NAME",message:"The RC Manifest has an invalid ultimate fallback name."},"0x00003B01":{code:"ERROR_MUI_FILE_NOT_LOADED",message:"The resource loader cache does not have a loaded MUI entry."},"0x00003B02":{code:"ERROR_RESOURCE_ENUM_USER_STOP",message:"The user stopped resource enumeration."},"0x00003B03":{code:"ERROR_MUI_INTLSETTINGS_UILANG_NOT_INSTALLED",message:"User interface language installation failed."},"0x00003B04":{code:"ERROR_MUI_INTLSETTINGS_INVALID_LOCALE_NAME",message:"Locale installation failed."},"0x00003B60":{code:"ERROR_MCA_INVALID_CAPABILITIES_STRING",message:"The monitor returned a DDC/CI capabilities string that did not comply with the ACCESS.bus 3.0, DDC/CI 1.1, or MCCS 2 Revision 1 specification."},"0x00003B61":{code:"ERROR_MCA_INVALID_VCP_VERSION",message:"The monitor's VCP version (0xDF) VCP code returned an invalid version value."},"0x00003B62":{code:"ERROR_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION",message:"The monitor does not comply with the MCCS specification it claims to support."},"0x00003B63":{code:"ERROR_MCA_MCCS_VERSION_MISMATCH",message:"The MCCS version in a monitor's mccs_ver capability does not match the MCCS version the monitor reports when the VCP version (0xDF) VCP code is used."},"0x00003B64":{code:"ERROR_MCA_UNSUPPORTED_MCCS_VERSION",message:"The monitor configuration API works only with monitors that support the MCCS 1.0, MCCS 2.0, or MCCS 2.0 Revision 1 specifications."},"0x00003B65":{code:"ERROR_MCA_INTERNAL_ERROR",message:"An internal monitor configuration API error occurred."},"0x00003B66":{code:"ERROR_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED",message:"The monitor returned an invalid monitor technology type. CRT, plasma, and LCD (TFT) are examples of monitor technology types. This error implies that the monitor violated the MCCS 2.0 or MCCS 2.0 Revision 1 specification."},"0x00003B67":{code:"ERROR_MCA_UNSUPPORTED_COLOR_TEMPERATURE",message:"The SetMonitorColorTemperature() caller passed a color temperature to it that the current monitor did not support. CRT, plasma, and LCD (TFT) are examples of monitor technology types. This error implies that the monitor violated the MCCS 2.0 or MCCS 2.0 Revision 1 specification."},"0x00003B92":{code:"ERROR_AMBIGUOUS_SYSTEM_DEVICE",message:"The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria."},"0x00003BC3":{code:"ERROR_SYSTEM_DEVICE_NOT_FOUND",message:"The requested system device cannot be found."}}});var pl=S((yPs,sGt)=>{var as=sGt.exports=function(e,t){if(as.isBigInt(e))this.buffer=Buffer.allocUnsafe(e.buffer.length),e.buffer.copy(this.buffer,0),this.sign=e.sign;else if(this.buffer=Buffer.alloc(e),this.sign=1,t=t||0,t!==0){t<0&&(this.sign=-1,t=-t),t=t.toString(16);for(var r=Math.ceil(t.length/2),n=r*2-t.length,s=0;s"u"?1:t;var r=new as(0);return r.sign=t,r.buffer=e,r};as.prototype.add=function(e){if(as.isBigInt(e)||(e=as.toBigInt(this.buffer.length,e)),this.sign!==e.sign)return this.neg().sub(e);for(var t=0,r=Math.max(e.buffer.length,this.buffer.length),n=new as(r),s=0;s>8}return n.sign=this.sign,n};as.prototype.neg=function(){var e=new as(this);return e.sign*=-1,e};as.prototype.abs=function(){var e=new as(this);return e.sign=1,e};as.prototype.sub=function(e){if(as.isBigInt(e)||(e=as.toBigInt(this.buffer.length,e)),this.sign!==e.sign)return this.add(e.neg());var t=0,r=new as(this),n=new as(e),s=Math.max(r.buffer.length,n.buffer.length),i=new as(s),a=this.sign;if(r.abs().lt(n.abs())){var o=r;r=n,n=o,a*=-1}for(var c=0;c>8)+d}return i.sign=a,i};as.prototype.toBuffer=function(){return this.buffer};as.prototype.toNumber=function(){for(var e=Buffer.allocUnsafe(this.buffer.length),t=0;te.sign)return 1;if(this.sign=0;r--){var n=rs?this.sign:-this.sign}return 0};as.prototype.lt=function(e){return this.compare(e)<0};as.prototype.le=function(e){return this.compare(e)<=0};as.prototype.gt=function(e){return this.compare(e)>0};as.prototype.ge=function(e){return this.compare(e)>=0}});var ml=S((vPs,oGt)=>{var iGt=nGt(),tOn=pl(),aGt={successCode:"STATUS_SUCCESS",parse:function(e,t,r){var n=this;return function(s){var i=s.getHeaders(),a=iGt.getStatus(tOn.fromBuffer(i.Status).toNumber());a.code===n.successCode?(n.onSuccess&&n.onSuccess(e,s),t&&t(null,n.parseResponse&&n.parseResponse(s))):(r.message=iGt.getErrorMessage(a),r.code=a.code,t&&t(r))}},parseResponse:function(e){return e.getResponse()}};oGt.exports=function(e){for(var t in aGt)e[t]=e[t]||aGt[t];return e}});var uGt=S((SPs,cGt)=>{var rOn=du(),nOn=ml();cGt.exports=nOn({generate:function(e,t){return new rOn({headers:{Command:"CLOSE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId}})}})});var dGt=S((TPs,lGt)=>{var sOn=du(),iOn=ml(),gl=Cc(),aOn=gl.DELETE|gl.FILE_APPEND_DATA|gl.FILE_DELETE_CHILD|gl.FILE_READ_ATTRIBUTES|gl.FILE_READ_DATA|gl.FILE_READ_EA|gl.FILE_WRITE_ATTRIBUTES|gl.FILE_WRITE_DATA|gl.FILE_WRITE_EA|gl.READ_CONTROL|gl.SYNCHRONIZE|gl.WRITE_DAC;lGt.exports=iOn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2"),n=t.createDisposition,s=t.shareAccess;return n>=0&&n<=5||(n=gl.FILE_OVERWRITE_IF),s>=0&&s<=7||(s=gl.FILE_SHARE_NONE),new sOn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,DesiredAccess:aOn,FileAttributes:128,ShareAccess:s,CreateDisposition:n,CreateOptions:68,NameOffset:120,CreateContextsOffset:122+r.length}})}})});var hGt=S((bPs,fGt)=>{var oOn=du(),cOn=ml(),rd=Cc(),uOn=rd.DELETE|rd.FILE_APPEND_DATA|rd.FILE_DELETE_CHILD|rd.FILE_READ_ATTRIBUTES|rd.FILE_READ_DATA|rd.FILE_READ_EA|rd.FILE_WRITE_ATTRIBUTES|rd.FILE_WRITE_DATA|rd.FILE_WRITE_EA|rd.READ_CONTROL|rd.SYNCHRONIZE|rd.WRITE_DAC;fGt.exports=cOn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2");return new oOn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,DesiredAccess:uOn,FileAttributes:0,ShareAccess:0,CreateDisposition:rd.FILE_CREATE,CreateOptions:33,NameOffset:120,CreateContextsOffset:122+r.length}})}})});var mGt=S((IPs,pGt)=>{var lOn=du(),dOn=ml();pGt.exports=dOn({generate:function(e){return new lOn({headers:{Command:"NEGOTIATE",ProcessId:e.ProcessId}})}})});var _Gt=S((RPs,gGt)=>{var fOn=du(),hOn=ml();gGt.exports=hOn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2");return new fOn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,NameOffset:120,CreateContextsOffset:122+r.length,DesiredAccess:t.desiredAccess}})}})});var EGt=S((CPs,AGt)=>{var pOn=du(),mOn=ml(),nd=Cc(),gOn=nd.DELETE|nd.FILE_APPEND_DATA|nd.FILE_DELETE_CHILD|nd.FILE_READ_ATTRIBUTES|nd.FILE_READ_DATA|nd.FILE_READ_EA|nd.FILE_WRITE_ATTRIBUTES|nd.FILE_WRITE_DATA|nd.FILE_WRITE_EA|nd.READ_CONTROL|nd.SYNCHRONIZE|nd.WRITE_DAC;AGt.exports=mOn({generate:function(e,t){var r=Buffer.from(t.path,"ucs2");return new pOn({headers:{Command:"CREATE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{Buffer:r,DesiredAccess:gOn,FileAttributes:0,ShareAccess:7,CreateDisposition:nd.FILE_OPEN,CreateOptions:2097185,NameOffset:120,CreateContextsOffset:122+r.length}})}})});var vGt=S((xPs,yGt)=>{var _On=du(),AOn=ml();yGt.exports=AOn({generate:function(e,t){return new _On({headers:{Command:"QUERY_DIRECTORY",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId,Buffer:Buffer.from("*","ucs2")}})},parseResponse:function(e){return EOn(e.getResponse().Buffer)}});function EOn(e){for(var t=[],r=0,n=-1;n!==0;)n=e.readUInt32LE(r),t.push(yOn(e.slice(r+4,n?r+n:e.length))),r+=n;return t}function yOn(e){var t={},r=0;return t.Index=e.readUInt32LE(r),r+=4,t.CreationTime=e.slice(r,r+8),r+=8,t.LastAccessTime=e.slice(r,r+8),r+=8,t.LastWriteTime=e.slice(r,r+8),r+=8,t.ChangeTime=e.slice(r,r+8),r+=8,t.EndofFile=e.slice(r,r+8),r+=8,t.AllocationSize=e.slice(r,r+8),r+=8,t.FileAttributes=e.readUInt32LE(r),r+=4,t.FilenameLength=e.readUInt32LE(r),r+=4,t.EASize=e.readUInt32LE(r),r+=4,t.ShortNameLength=e.readUInt8(r),r+=1,t.FileId=e.slice(r,r+8),r+=8,r+=27,t.Filename=e.slice(r,r+t.FilenameLength).toString("ucs2"),r+=t.FilenameLength,t}});var TGt=S((wPs,SGt)=>{var vOn=du(),SOn=ml();SGt.exports=SOn({generate:function(e,t){return new vOn({headers:{Command:"READ",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId,Length:t.Length,Offset:t.Offset}})},parseResponse:function(e){return e.getResponse().Buffer}})});var dLe=S((OPs,R3)=>{var NPs=require("crypto");function bGt(e,t){for(;e.length>n&1))%2;e[t]|=r&1}return e}function bOn(e){var t=new Buffer(8);return t[0]=e[0]&254,t[1]=e[0]<<7&255|e[1]>>1,t[2]=e[1]<<6&255|e[2]>>2,t[3]=e[2]<<5&255|e[3]>>3,t[4]=e[3]<<4&255|e[4]>>4,t[5]=e[4]<<3&255|e[5]>>5,t[6]=e[5]<<2&255|e[6]>>6,t[7]=e[6]<<1&255,t}function IOn(e){var t=Buffer.isBuffer(t)?t:new Buffer(e,"binary"),r=t.toString("hex").toUpperCase();return bGt(r,32)}R3.exports.zeroextend=bGt;R3.exports.oddpar=TOn;R3.exports.expandkey=bOn;R3.exports.bintohex=IOn});var kW=S((DPs,C3)=>{var IGt=require("crypto"),eN=dLe();function RGt(e){var t=e.substring(0,14).toUpperCase(),r=Buffer.byteLength(t,"ascii"),n=new Buffer(14);n.write(t,0,r,"ascii"),n.fill(0,r);var s=[eN.oddpar(eN.expandkey(n.slice(0,7))),eN.oddpar(eN.expandkey(n.slice(7,14)))],i=new Buffer(16),a=0,o=s.forEach(function(c){var u=IGt.createCipheriv("DES-ECB",c,""),l=u.update("KGS!@#$%","binary","binary");i.write(l,a,a+8,"binary"),a+=8});return i}function CGt(e){var t=new Buffer(e,"ucs2"),r=IGt.createHash("md4");return r.update(t),new Buffer(r.digest("binary"),"binary")}function ROn(e){return eN.bintohex(RGt(e))}function COn(e){return eN.bintohex(CGt(e))}C3.exports.nthashbuf=CGt;C3.exports.lmhashbuf=RGt;C3.exports.nthash=COn;C3.exports.lmhash=ROn});var fLe=S(Pp=>{var xOn=require("crypto"),xGt=dLe(),wOn=kW().lmhashbuf,NOn=kW().nthashbuf;function OOn(e,t){e=e.toUpperCase(),t=t.toUpperCase();var r=Buffer.byteLength(e,"ascii"),n=Buffer.byteLength(t,"ascii"),s=0,i=new Buffer(32+r+n);i.write("NTLMSSP",s,7,"ascii"),s+=7,i.writeUInt8(0,s),s++,i.writeUInt8(1,s),s++,i.fill(0,s,s+3),s+=3,i.writeUInt16LE(45571,s),s+=2,i.fill(0,s,s+2),s+=2,i.writeUInt16LE(n,s),s+=2,i.writeUInt16LE(n,s),s+=2;var a=32+r;return i.writeUInt16LE(a,s),s+=2,i.fill(0,s,s+2),s+=2,i.writeUInt16LE(r,s),s+=2,i.writeUInt16LE(r,s),s+=2,i.writeUInt16LE(32,s),s+=2,i.fill(0,s,s+2),s+=2,i.write(e,32,r,"ascii"),i.write(t,a,n,"ascii"),i}function DOn(e){var t=e.toString("ascii",0,7);if(e[7]!==0||t!=="NTLMSSP")throw new Error("magic was not NTLMSSP");var r=e.readUInt8(8);if(r!==2)throw new Error("message was not NTLMSSP type 0x02");var n=e.slice(24,32);return n}function POn(e,t,r,n,s){t=t.toUpperCase(),r=r.toUpperCase();var i=new Buffer(21);wOn(s).copy(i),i.fill(0,16);var a=new Buffer(21);NOn(s).copy(a),a.fill(0,16);var o=wGt(i,n),c=wGt(a,n),u=Buffer.byteLength(e,"ucs2"),l=Buffer.byteLength(t,"ucs2"),d=Buffer.byteLength(r,"ucs2"),f=24,h=24,p=64,m=p+d,g=m+u,_=g+l,y=_+f,A=0,E=64+d+u+l+f+h,v=new Buffer(E);return v.write("NTLMSSP",A,7,"ascii"),A+=7,v.writeUInt8(0,A),A++,v.writeUInt8(3,A),A++,v.fill(0,A,A+3),A+=3,v.writeUInt16LE(f,A),A+=2,v.writeUInt16LE(f,A),A+=2,v.writeUInt16LE(_,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(h,A),A+=2,v.writeUInt16LE(h,A),A+=2,v.writeUInt16LE(y,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(d,A),A+=2,v.writeUInt16LE(d,A),A+=2,v.writeUInt16LE(p,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(u,A),A+=2,v.writeUInt16LE(u,A),A+=2,v.writeUInt16LE(m,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(l,A),A+=2,v.writeUInt16LE(l,A),A+=2,v.writeUInt16LE(g,A),A+=2,v.fill(0,A,A+6),A+=6,v.writeUInt16LE(E,A),A+=2,v.fill(0,A,A+2),A+=2,v.writeUInt16LE(33281,A),A+=2,v.fill(0,A,A+2),A+=2,v.write(r,p,d,"ucs2"),v.write(e,m,u,"ucs2"),v.write(t,g,l,"ucs2"),o.copy(v,_,0,f),c.copy(v,y,0,h),v}function wGt(e,t){for(var r=new Buffer(24),n=0;n<3;n++){var s=xGt.oddpar(xGt.expandkey(e.slice(n*7,n*7+7))),i=xOn.createCipheriv("DES-ECB",s,""),a=i.update(t.toString("binary"),"binary","binary");r.write(a,n*8,n*8+8,"binary")}return r}Pp.encodeType1=OOn;Pp.decodeType2=DOn;Pp.encodeType3=POn;Pp.challengeHeader=function(e,t){return"NTLM "+Pp.encodeType1(e,t).toString("base64")};Pp.responseHeader=function(e,t,r,n,s){var i=new Buffer((e.headers["www-authenticate"].match(/^NTLM\s+(.+?)(,|\s+|$)/)||[])[1],"base64"),a=require("url").parse(t).hostname;return"NTLM "+Pp.encodeType3(n,a,r,Pp.decodeType2(i),s).toString("base64")};Pp.smbhash=kW()});var DGt=S((LPs,OGt)=>{var LOn=du(),MOn=ml(),NGt=fLe();OGt.exports=MOn({generate:function(e){return new LOn({headers:{Command:"SESSION_SETUP",ProcessId:e.ProcessId},request:{Buffer:NGt.encodeType1(e.ip,e.domain)}})},successCode:"STATUS_MORE_PROCESSING_REQUIRED",onSuccess:function(e,t){var r=t.getHeaders();e.SessionId=r.SessionId,e.nonce=NGt.decodeType2(t.getResponse().Buffer)}})});var LGt=S((MPs,PGt)=>{var kOn=du(),BOn=ml(),UOn=fLe();PGt.exports=BOn({generate:function(e){return new kOn({headers:{Command:"SESSION_SETUP",SessionId:e.SessionId,ProcessId:e.ProcessId},request:{Buffer:UOn.encodeType3(e.username,e.ip,e.domain,e.nonce,e.password)}})}})});var kGt=S((kPs,MGt)=>{var FOn=du(),$On=ml(),qOn={FileAllocationInformation:19,FileBasicInformation:4,FileDispositionInformation:13,FileEndOfFileInformation:20,FileFullEaInformation:15,FileLinkInformation:11,FileModeInformation:16,FilePipeInformation:23,FilePositionInformation:14,FileRenameInformation:10,FileShortNameInformation:40,FileValidDataLengthInformation:39};MGt.exports=$On({generate:function(e,t){return new FOn({headers:{Command:"SET_INFO",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileInfoClass:qOn[t.FileInfoClass],FileId:t.FileId,Buffer:t.Buffer}})}})});var UGt=S((BPs,BGt)=>{var HOn=du(),VOn=ml();BGt.exports=VOn({generate:function(e){return new HOn({headers:{Command:"TREE_CONNECT",SessionId:e.SessionId,ProcessId:e.ProcessId},request:{Buffer:Buffer.from(e.fullPath,"ucs2")}})},onSuccess:function(e,t){var r=t.getHeaders();e.TreeId=r.TreeId}})});var $Gt=S((UPs,FGt)=>{var jOn=du(),KOn=ml();FGt.exports=KOn({generate:function(e,t){return new jOn({headers:{Command:"WRITE",SessionId:e.SessionId,TreeId:e.TreeId,ProcessId:e.ProcessId},request:{FileId:t.FileId,Offset:t.Offset,Buffer:t.Buffer}})},parseResponse:function(e){return e.getResponse().Buffer}})});var Oa=S((FPs,HGt)=>{var GOn=du(),zOn={close:uGt(),create:dGt(),create_folder:hGt(),negotiate:mGt(),open:_Gt(),open_folder:EGt(),query_directory:vGt(),read:TGt(),session_setup_step1:DGt(),session_setup_step2:LGt(),set_info:kGt(),tree_connect:UGt(),write:$Gt()},qGt=HGt.exports={};qGt.request=function(e,t,r,n){var s=zOn[e];if(!s)throw new Error("Unknown SMB2 message: "+e);var i=s.generate(r,t);YOn(r,i);var a=new Error;a.messageName=e,a.params=t,QOn(r,i.getHeaders().MessageId,s.parse(r,n,a))};qGt.response=function(e){return e.responses={},e.responsesCB={},e.responseBuffer=Buffer.allocUnsafe(0),function(t){e.responseBuffer=Buffer.concat([e.responseBuffer,t]);for(var r=!0;r;)if(r=!1,e.responseBuffer.length>=4){var n=(e.responseBuffer.readUInt8(1)<<16)+e.responseBuffer.readUInt16BE(2);if(e.responseBuffer.length>=n+4){r=!0;var s=e.responseBuffer.slice(4,n+4),i=new GOn;i.parseBuffer(s),e.debug&&(console.log("--response"),console.log(s.toString("hex")));var a=i.getHeaders().MessageId.toString("hex");e.responsesCB[a]?(e.responsesCB[a](i),delete e.responsesCB[a]):e.responses[a]=i,e.responseBuffer=e.responseBuffer.slice(n+4)}}}};function YOn(e,t){var r=t.getBuffer(e);e.debug&&(console.log("--request"),console.log(r.toString("hex")));var n=Buffer.allocUnsafe(r.length+4);return n.writeUInt8(0,0),n.writeUInt8((16711680&r.length)>>16,1),n.writeUInt16BE(65535&r.length,2),r.copy(n,4,0,r.length),e.newResponse=!1,e.socket.write(n),!0}function QOn(e,t,r){var n=Buffer.allocUnsafe(4);n.writeUInt32LE(t,0),n=n.toString("hex"),e.responses[n]?(r(e.responses[n]),delete e.responses[n]):e.responsesCB[n]=r}});var pLe=S(($Ps,KGt)=>{var WOn=require("net"),VGt=Oa(),BW=VGt.request,UW=KGt.exports={};UW.close=function(e){hLe(e),e.connected&&(e.connected=!1,e.socket.end())};UW.requireConnect=function(e){return function(){var t=this,r=Array.prototype.slice.call(arguments);XOn(t,function(n){var s=r.pop();typeof s!="function"&&(r.push(s),s=function(i){if(i)throw i instanceof Error||(i=new Error(String(i))),i}),s=jGt(t,s),r.push(s),n?s(n):e.apply(t,r)})}};UW.init=function(e){e.connected=!1,e.socket=new WOn.Socket({allowHalfOpen:!0}),e.socket.on("data",VGt.response(e)),e.errorHandler=[],e.socket.on("error",function(t){e.errorHandler.length>0&&e.errorHandler[0].call(null,t),e.debug&&(console.log("-- error"),console.log(arguments))})};function XOn(e,t){if(e.connected){t&&t(null);return}t=jGt(e,t),e.messageId=0,e.SessionId=Math.floor(Math.random()*256)&255,e.socket.connect(e.port,e.ip),BW("negotiate",{},e,function(r){r?t&&t(r):BW("session_setup_step1",{},e,function(n){n?t&&t(n):BW("session_setup_step2",{},e,function(s){s?t&&t(s):BW("tree_connect",{},e,function(i){i?t&&t(i):(e.connected=!0,t&&t(null))})})})})}function hLe(e){e.scheduledAutoClose&&(clearTimeout(e.scheduledAutoClose),e.scheduledAutoClose=null)}function JOn(e){hLe(e),e.autoCloseTimeout!==0&&(e.scheduledAutoClose=setTimeout(function(){UW.close(e)},e.autoCloseTimeout))}function jGt(e,t){return ZOn(e,t),hLe(e),function(){e2n(e),JOn(e),t.apply(null,arguments)}}function ZOn(e,t){e.errorHandler.unshift(t)}function e2n(e){e.errorHandler.shift()}});var zGt=S((qPs,GGt)=>{var t2n=pLe();GGt.exports=function(){t2n.close(this)}});var WGt=S((HPs,QGt)=>{var r2n=Oa(),YGt=r2n.request;QGt.exports=function(t,r){var n=this;YGt("open",{path:t},n,function(s,i){if(s!=null)return s.code==="STATUS_OBJECT_NAME_NOT_FOUND"||s.code==="STATUS_OBJECT_PATH_NOT_FOUND"?r&&r(null,!1):r&&r(s);YGt("close",i,n,function(){r&&r(null,!0)})})}});var ezt=S((VPs,ZGt)=>{var FW=pl(),$W=Oa().request,XGt=Cc();ZGt.exports=function(t,r,n,s){typeof n=="function"&&(s=n,n={});var i=this;$W("open_folder",{path:t},i,function(a,o){a?$W("create",{path:t,createDisposition:XGt.FILE_OPEN,shareAccess:XGt.FILE_SHARE_DELETE},i,function(c,u){c?s&&s(c):JGt(i,u,r,n,s)}):JGt(i,o,r,n,s)})};function JGt(e,t,r,n,s){$W("set_info",{FileId:t.FileId,FileInfoClass:"FileRenameInformation",Buffer:n2n(r,n)},e,function(i){$W("close",t,e,function(){i?s&&s(i):s&&s(null)})})}function n2n(e,t){var r=Buffer.from(e,"ucs2");return Buffer.concat([new FW(1,t.replace?1:0).toBuffer(),new FW(7,0).toBuffer(),new FW(8,0).toBuffer(),new FW(4,r.length).toBuffer(),r])}});var nzt=S((jPs,rzt)=>{var s2n=Oa(),mLe=s2n.request,i2n=pl(),tzt=Cc().MAX_READ_LENGTH;rzt.exports=function(t,r,n){var s=this;typeof r=="function"&&(n=r,r={}),mLe("open",{path:t},s,function(i,a){if(i)n&&n(i);else{for(var o=0,c=new i2n(8),u=!1,l=0,d=0;d{var a2n=require("stream").Readable,szt=pl(),gLe=Oa().request,o2n=Cc().MAX_READ_LENGTH;izt.exports=function(t,r,n){typeof r=="function"?(n=r,r={}):r==null&&(r={});var s=this,i=r.fd,a=i!=null,o=!a||r.autoClose==null||r.autoClose;function c(u,l){if(u!=null)return n(u);var d=r.start||0,f=szt.fromBuffer(l.EndofFile).toNumber(),h=f;r.end=h)return o?p(function(){m.push(null)}):m.push(null);g=!0,gLe("read",{FileId:l.FileId,Length:Math.min(o2n,_,h-d),Offset:new szt(8,d).toBuffer()},s,function(y,A){if(g=!1,y!=null)return process.nextTick(m.emit.bind(m,"error",y));d+=A.length,m.push(A)})}},n(null,m)}a?c(null,i):gLe("open",{path:t},s,c)}});var HW=S((GPs,ozt)=>{var qW=Cc();ozt.exports=function(t){for(var r={__proto__:null},n=0,s=t.length;n{var c2n=require("stream").Writable,u2n=pl(),l2n=Cc(),d2n=HW(),_Le=Oa().request;czt.exports=function(t,r,n){typeof r=="function"&&(n=r,r={});var s=this,i=r.fd,a=i!=null,o=!a||r.autoClose==null||r.autoClose;function c(u,l){if(u!=null)return n(u);var d=new u2n(8,r!=null&&r.start||0);function f(m,g,_){var y=g+l2n.MAX_WRITE_LENGTH,A=m.slice(g,y);_Le("write",{Buffer:A,FileId:l.FileId,Offset:d.toBuffer()},s,function(E){if(E!=null)return _(E);if(d=d.add(A.length),y{var f2n=Oa(),VW=f2n.request,ALe=pl(),h2n=Cc(),p2n=HW();lzt.exports=function(t,r,n,s){typeof n=="function"&&(s=n,n={}),n.encoding=n.encoding||"utf8";var i=this,a,o=Buffer.isBuffer(r)?r:Buffer.from(r,n.encoding),c=new ALe(8,o.length);function u(h){VW("create",{createDisposition:p2n(n!=null&&(n.flags||n.flag)||"wx"),path:t},i,function(p,m){p?s&&s(p):(a=m,h())})}function l(h){VW("close",a,i,function(p){p?s&&s(p):(a=null,h())})}function d(h){VW("set_info",{FileId:a.FileId,FileInfoClass:"FileEndOfFileInformation",Buffer:c.toBuffer()},i,function(p){p?s&&s(p):h()})}function f(h){var p=new ALe(8),m=!1,g=0,_=new ALe(8,h2n.MAX_WRITE_LENGTH);function y(){return function(v){m||(v?(s&&s(v),m=!0):(g--,A()))}}function A(){m||(E(),g===0&&p.ge(c)&&h())}function E(){for(;g{var m2n=Oa(),ELe=m2n.request,g2n=pl(),_2n=Cc();fzt.exports=function(t,r){var n=this;ELe("create",{path:t,shareAccess:_2n.FILE_SHARE_DELETE},n,function(s,i){s?r&&r(s):ELe("set_info",{FileId:i.FileId,FileInfoClass:"FileDispositionInformation",Buffer:new g2n(1,1).toBuffer()},n,function(a,o){ELe("close",i,n,function(){a?r&&r(a):r&&r(null,o)})})})}});var mzt=S((WPs,pzt)=>{var A2n=1e7,E2n=11644473600;pzt.exports=function(t){var r=t/A2n-E2n;return new Date(r*1e3)}});var yLe=S((XPs,_zt)=>{var jW=mzt(),tN=pl(),gzt=Cc().DIRECTORY;_zt.exports=function(t){return{birthtime:jW(tN.fromBuffer(t.CreationTime).toNumber()),atime:jW(tN.fromBuffer(t.LastAccessTime).toNumber()),mtime:jW(tN.fromBuffer(t.LastWriteTime).toNumber()),ctime:jW(tN.fromBuffer(t.ChangeTime).toNumber()),size:tN.fromBuffer(t.EndofFile).toNumber(),isDirectory:function(){var r=t.FileAttributes;return typeof r!="number"&&(r=tN.fromBuffer(r).toNumber()),(r&gzt)==gzt}}}});var Ezt=S((JPs,Azt)=>{var y2n=Oa(),vLe=y2n.request,v2n=yLe();Azt.exports=function(t,r,n){var s=this;typeof r=="function"&&(n=r,r={});var i=r.stats?function(u){var l=v2n(u);return l.name=u.Filename,l}:function(u){return u.Filename};function a(u,l,d,f){vLe("query_directory",l,d,function(h,p){h?h.code==="STATUS_NO_MORE_FILES"?f(null,u):f(h):(u.push(p.filter(function(m){return m.Filename!=="."&&m.Filename!==".."}).map(i)),a(u,l,d,f))})}function o(u,l,d){vLe("open",{path:u},l,function(f,h){if(f)d(f);else return d(null,h)})}function c(u,l,d){vLe("close",u,l,function(f,h){f&&f.code!=="STATUS_FILE_CLOSED"&&d(f),d(null,h)})}o(t,s,function(u,l){var d=[],f=[];u?n(u):a(f,l,s,function(h,p){h?n(h):c(p,s,function(m,g){m?n(m):(d=[].concat(...f),n(null,d))})})})}});var vzt=S((ZPs,yzt)=>{var S2n=Oa(),SLe=S2n.request,T2n=pl();yzt.exports=function(t,r){var n=this;SLe("open_folder",{path:t},n,function(s,i){s?r&&r(s):SLe("set_info",{FileId:i.FileId,FileInfoClass:"FileDispositionInformation",Buffer:new T2n(1,1).toBuffer()},n,function(a,o){SLe("close",i,n,function(){if(a)return r(a);r(null,o)})})})}});var bzt=S((eLs,Tzt)=>{var b2n=Oa(),Szt=b2n.request;Tzt.exports=function(t,r,n){typeof r=="function"&&(n=r,r="0777");var s=this;Szt("create_folder",{path:t},s,function(i,a){i?n&&n(i):Szt("close",a,s,function(){n&&n(null)})})}});var Czt=S((tLs,Rzt)=>{var I2n=pl(),Izt=Oa().request;Rzt.exports=function(t,r){var n=this;Izt("open",{path:t},n,function(s,i){if(s!=null)return r(s);Izt("close",i,n,function(){r(null,I2n.fromBuffer(i.EndofFile).toNumber())})})}});var Nzt=S((rLs,wzt)=>{var R2n=yLe(),xzt=Oa().request;wzt.exports=function(t,r){var n=this;xzt("open",{path:t},n,function(s,i){if(s!=null)return r(s);xzt("close",i,n,function(){r(null,R2n(i))})})}});var Dzt=S((nLs,Ozt)=>{var C2n=HW(),x2n=Oa().request;Ozt.exports=function(t,r,n){typeof r=="function"&&(n=r,r=void 0),x2n("create",{createDisposition:C2n(r||"r"),path:t},this,n)}});var Mzt=S((sLs,Lzt)=>{var w2n=require("assert"),Pzt=pl(),N2n=Oa().request,O2n=Cc().MAX_READ_LENGTH;Lzt.exports=function(t,r,n,s,i,a){w2n(i!==null,"null pos is not supported");var o=this,c=Math.min(i+s,Pzt.fromBuffer(t.EndofFile).toNumber()),u=i;function l(f,h){if(f!=null)return a(f,u-i,r);h.copy(r,n);var p=h.length;n+=p,u+=p,d()}function d(){if(u>=c)return a(null,u-i,r);N2n("read",{FileId:t.FileId,Length:Math.min(O2n,c-u),Offset:new Pzt(8,u).toBuffer()},o,l)}process.nextTick(d)}});var Bzt=S((iLs,kzt)=>{var Fb=require("assert"),D2n=pl(),P2n=Oa().request,L2n=Cc().MAX_WRITE_LENGTH;kzt.exports=function(t,r,n,s,i,a){Fb(Buffer.isBuffer(r)),n==null?n=0:(Fb.strictEqual(typeof n,"number"),Fb(n>0),Fb(n0),s=Math.min(s,r.length-n)),Fb.strictEqual(typeof i,"number");var o=this,c=i,u;function l(f){if(f!=null)return a(f,c-i,r);s-=u,n+=u,c+=u,d()}function d(){if(s<=0)return a(null,c-i,r);u=Math.min(L2n,s),P2n("write",{Buffer:r.slice(n,n+u),FileId:t.FileId,Offset:new D2n(8,c).toBuffer()},o,l)}process.nextTick(d)}});var Fzt=S((aLs,Uzt)=>{var M2n=Oa().request;Uzt.exports=function(t,r){M2n("close",t,this,r)}});var qzt=S((oLs,$zt)=>{var k2n=Oa(),TLe=k2n.request,B2n=pl(),U2n=Cc().FILE_WRITE_DATA;function F2n(e,t,r,n){TLe("set_info",{FileId:e.FileId,FileInfoClass:"FileEndOfFileInformation",Buffer:t.toBuffer()},r,n)}$zt.exports=function(t,r,n){var s=this;TLe("open",{path:t,desiredAccess:U2n},s,function(i,a){if(i!=null)return n(i);F2n(a,new B2n(8,r),s,function(o){TLe("close",a,s,function(){n(o)})})})}});var Vzt=S((cLs,Hzt)=>{var $2n=/\\\\([^\\]*)\\([^\\]*)\\?/,q2n=445,H2n=20,V2n=1e4,Oo=CKt(),fu=pLe(),j2n=Hzt.exports=function(e){e=e||{};var t;if(!e.share||!(t=e.share.match($2n)))throw new Error("the share is not valid");this.ip=t[1],this.port=e.port||q2n,this.share=t[2],this.fullPath=e.share,this.packetConcurrency=e.packetConcurrency||H2n,e.autoCloseTimeout!==void 0?this.autoCloseTimeout=e.autoCloseTimeout:this.autoCloseTimeout=V2n,this.domain=e.domain,this.username=e.username,this.password=e.password,this.ProcessId=Buffer.from([Math.floor(Math.random()*256)&255,Math.floor(Math.random()*256)&255,Math.floor(Math.random()*256)&255,Math.floor(Math.random()*256)&254]),this.debug=e.debug,fu.init(this)},co=j2n.prototype={};co.disconnect=zGt();co.exists=Oo(fu.requireConnect(WGt()));co.rename=Oo(fu.requireConnect(ezt()));co.readFile=Oo(fu.requireConnect(nzt()));co.createReadStream=Oo(fu.requireConnect(azt()));co.createWriteStream=Oo(fu.requireConnect(uzt()));co.writeFile=Oo(fu.requireConnect(dzt()));co.unlink=Oo(fu.requireConnect(hzt()));co.readdir=Oo(fu.requireConnect(Ezt()));co.rmdir=Oo(fu.requireConnect(vzt()));co.mkdir=Oo(fu.requireConnect(bzt()));co.getSize=Oo(fu.requireConnect(Czt()));co.stat=Oo(fu.requireConnect(Nzt()));co.open=Oo(fu.requireConnect(Dzt()));co.read=Oo(Mzt(),function(e,t){return{bytesRead:e,buffer:t}});co.write=Oo(Bzt(),function(e,t){return{bytesWritten:e,buffer:t}});co.close=Oo(Fzt());co.truncate=Oo(fu.requireConnect(qzt()))});function x_(e){let t=jzt.get(e)||KW[2];return{batchTierKey:t.key,defaultBatchSize:t.defaultBatchSize,maxBatchSize:t.maxBatchSize,defaultBatchIntervalMs:t.defaultBatchIntervalMs,defaultTimeoutMs:t.timeoutMs||6e4}}function $b(e){let t=String(e||"").trim();return t&&(K2n.get(t)||Kzt.get(t.toLowerCase()))||null}function Y2n(e){let t=String(e||"").trim();return!t||t===w_||t==="/"||t.toLowerCase()==="root"?[]:t.replace(/^\/+|\/+$/g,"").split("/").map(r=>r.trim()).filter(r=>r&&r!==".")}function Q2n(e){return Array.isArray(e)&&e.length?e.join("/"):w_}function Gzt(e){return String(e||"").split(/\r?\n/).map(t=>t.trim()).filter(t=>t&&!t.startsWith("//"))}function W2n(e,t){let r=$b(e);return r?Gzt(t).filter(n=>!n.startsWith("#")).map(n=>`${r.label} ${n}`).join(` +`):""}function bLe(e,t={}){let r=t.providerKey?$b(t.providerKey)?.key:"",n=[],s=[],i=0;for(let a of Gzt(e)){if(a.startsWith("#")&&!/^\S+\s+#\s+(?:https?:\/\/|smb:\/\/)/i.test(a))continue;let o=/((?:https?:\/\/|smb:\/\/)\S+)\s*$/i.exec(a);if(!o){s.push({line:a,message:"\u7F3A\u5C11\u94FE\u63A5"});continue}let c=o[1].trim(),l=a.slice(0,o.index).trim().split(/\s+/).filter(Boolean),d=$b(l.shift()),f=l.join(" ").trim();if(!d){s.push({line:a,message:"\u672A\u77E5\u6302\u8F7D\u540D\u79F0"});continue}if(!f){s.push({line:a,message:"\u7F3A\u5C11\u5F52\u7C7B"});continue}if(d.key==="smb"&&!/^smb:\/\//i.test(c)){s.push({line:a,message:"SMB\u5408\u96C6\u5FC5\u987B\u4F7F\u7528 smb:// \u94FE\u63A5"});continue}if(d.key!=="smb"&&!/^https?:\/\//i.test(c)){s.push({line:a,message:`${d.label} \u5FC5\u987B\u4F7F\u7528 http(s) \u94FE\u63A5`});continue}if(r&&d.key!==r)continue;let h=Y2n(f);n.push({id:String(n.length),sourceOrder:i,providerKey:d.key,providerLabel:d.label,mountPath:Q2n(h),pathSegments:h,direct:h.length===0,url:c,raw:a}),i+=1}return{entries:n,errors:s}}async function X2n(e,t){let r=String(e?.config?.[t.key]?.text||""),n="";try{let s=await e.db.getObjectDefault(`/config/${t.key}`,null);n=typeof s?.text=="string"?s.text:""}catch{}return n||r}async function J2n(e){let t=[];for(let r of GW){let n=await X2n(e,r),s=W2n(r.key,n);s&&t.push(s)}return t.join(` +`)}async function Z2n(e,t){if(typeof e?.text=="string"&&e.text.length>0)return e.text;let r=String(t?.config?.sharemount?.text||"");if(r)return r;let n=await J2n(t);return n||z2n}function Lp(e,t,r,n){return Math.max(r,Math.min(n,Number(e)||t))}function ILe(){return Object.fromEntries(KW.map(e=>[e.key,{batchSize:e.defaultBatchSize,batchIntervalMs:e.defaultBatchIntervalMs,timeoutMs:e.timeoutMs||6e4}]))}function Yzt(){return KW.map(e=>({key:e.key,label:e.label,providerKeys:e.providerKeys,providerLabels:e.providerLabels,defaultBatchSize:e.defaultBatchSize,maxBatchSize:e.maxBatchSize,defaultBatchIntervalMs:e.defaultBatchIntervalMs,timeoutMs:e.timeoutMs||6e4,fixed:!0}))}function Qzt(e){let t=e.tierAli||e.tier115Baidu||e.tierOthers||{};return{batchSize:t.batchSize||500,batchIntervalMs:t.batchIntervalMs??800,timeoutMs:t.timeoutMs||6e4}}function Wzt(){return GW.map(({key:e,label:t,aliases:r,batchTierKey:n,defaultBatchSize:s,maxBatchSize:i,defaultBatchIntervalMs:a,defaultTimeoutMs:o})=>({key:e,label:t,aliases:r,batchTierKey:n,defaultBatchSize:s,maxBatchSize:i,defaultBatchIntervalMs:a,defaultTimeoutMs:o}))}function rN(e,t){let r=$b(t),n=jzt.get(r?.key||""),s=ILe(e?.batchTiers),i=n?s[n.key]:null,a=i?.batchSize||r?.defaultBatchSize||500,o=r?.maxBatchSize||n?.maxBatchSize||5e3,c=i?.batchIntervalMs??r?.defaultBatchIntervalMs??1e3;return{...e,batchSize:Lp(i?.batchSize,a,1,o),batchIntervalMs:Lp(i?.batchIntervalMs,c,0,1e4),timeoutMs:6e4}}async function H0(e){e.get("/settings",async(t,r)=>{r.send({code:0,data:await zW(t.server)})}),e.post("/settings",async(t,r)=>{let n=await eDn(t.server,t.body||{});r.send({code:0,data:n})})}var w_,KW,jzt,GW,K2n,Kzt,G2n,z2n,zzt,zW,eDn,RLe=ie(()=>{w_="#",KW=[{key:"tier115Baidu",label:"115/\u767E\u5EA6\u5408\u96C6",providerKeys:["115share","baidushare"],providerLabels:["115\u5408\u96C6","\u767E\u5EA6\u5408\u96C6"],defaultBatchSize:500,maxBatchSize:500,defaultBatchIntervalMs:100,timeoutMs:6e4},{key:"tierAli",label:"\u963F\u91CC\u5408\u96C6",providerKeys:["alishare"],providerLabels:["\u963F\u91CC\u5408\u96C6"],defaultBatchSize:800,maxBatchSize:800,defaultBatchIntervalMs:100,timeoutMs:6e4},{key:"tierOthers",label:"\u5176\u5B83\u5408\u96C6",providerKeys:["123share","139share","ucshare","quarkshare","guangyashare","smb"],providerLabels:["123\u5408\u96C6","139\u5408\u96C6","UC\u5408\u96C6","\u5938\u514B\u5408\u96C6","\u5149\u9E2D\u5408\u96C6","SMB\u5408\u96C6"],defaultBatchSize:1e3,maxBatchSize:1e3,defaultBatchIntervalMs:10,timeoutMs:6e4}],jzt=new Map(KW.flatMap(e=>e.providerKeys.map(t=>[t,e])));GW=[{key:"115share",label:"115\u5408\u96C6",aliases:["115\u5408\u96C6","115","115share"],...x_("115share")},{key:"alishare",label:"\u963F\u91CC\u5408\u96C6",aliases:["\u963F\u91CC\u5408\u96C6","\u963F\u91CC","ali","alishare"],...x_("alishare")},{key:"123share",label:"123\u5408\u96C6",aliases:["123\u5408\u96C6","123","123share"],...x_("123share")},{key:"139share",label:"139\u5408\u96C6",aliases:["139\u5408\u96C6","139","\u79FB\u52A8\u5408\u96C6","\u79FB\u52A8","139share"],...x_("139share")},{key:"ucshare",label:"UC\u5408\u96C6",aliases:["UC\u5408\u96C6","uc\u5408\u96C6","UC","uc","ucshare"],...x_("ucshare")},{key:"baidushare",label:"\u767E\u5EA6\u5408\u96C6",aliases:["\u767E\u5EA6\u5408\u96C6","\u767E\u5EA6","baidu","baidushare"],...x_("baidushare")},{key:"quarkshare",label:"\u5938\u514B\u5408\u96C6",aliases:["\u5938\u514B\u5408\u96C6","\u5938\u514B","quark","quarkshare"],...x_("quarkshare")},{key:"guangyashare",label:"\u5149\u9E2D\u5408\u96C6",aliases:["\u5149\u9E2D\u5408\u96C6","\u5149\u9E2D","guangya","guangyapan","guangyashare"],...x_("guangyashare")},{key:"smb",label:"SMB\u5408\u96C6",aliases:["SMB\u5408\u96C6","smb\u5408\u96C6","SMB","smb"],...x_("smb")}],K2n=new Map(GW.map(e=>[e.key,e])),Kzt=new Map;for(let e of GW)for(let t of e.aliases)Kzt.set(String(t).trim().toLowerCase(),e);G2n=["\u539F\u76D8/600T\u84DD\u5149\u539F\u76D8\u7535\u5F71 https://115.com/s/sw6xz303321?password=6668#","\u539F\u76D8/BD\u539F\u76D8 https://115.com/s/sw622f53nn3?password=pcb1#","\u539F\u76D8/SGNB \u7279\u65484K\u539F\u76D8\uFF08\u6574\u7406\u7248\uFF09 https://115.com/s/swzp2vf3h9s?password=5089#","\u539F\u76D8/SGNB\u7279\u6548563\u90E8 https://115.com/s/sw313rp3zx1?password=w146","\u539F\u76D8/SGNB\u7279\u6548\u5B57\u5E554k\u539F\u76D8\u7535\u5F71 https://115.com/s/swzwwqg3hls?password=e241#","\u539F\u76D8/SGNB\u7279\u6548\u5B57\u5E554K\u539F\u76D8\u7535\u5F71\u96C6 https://115.com/s/sw6283733l6?password=z484#","\u539F\u76D8/UHD\u539F\u76D8 https://115.com/s/sw6u5nq3nn3?password=r495#","\u539F\u76D8/\u5408\u96C6\u6574\u7406 https://115cdn.com/s/sww7pbf3zxx?password=1234&","\u539F\u76D8/\u5468\u661F\u9A70 https://115.com/s/swzp2vb3h9s?password=5089#","\u539F\u76D8/\u6B27\u7F8E\u5267 https://115.com/s/swz4wm23wsp?password=z1d9#","\u539F\u76D8/\u6E2F\u7247\u7ECF\u5178\u84DD\u5149\u539F\u76D8 https://115.com/s/sw6c6wa3nn3?password=aaa0#","\u539F\u76D8/\u6E2F\u7247\u84DD\u5149\u539F\u76D8 https://115.com/s/sw69nao3h3b?password=a548","\u539F\u76D8/\u6F14\u5531\u4F1A https://115.com/s/swzp25d3h9s?password=5089#","\u539F\u76D8/\u6F2B\u5A01 https://115.com/s/sw6865s3nn3?password=ja76#","\u539F\u76D8/\u6F2B\u5A014k https://115.com/s/swzew4m3nc6?password=i0d7#","\u539F\u76D8/\u7535\u5F71\u5927\u5408\u96C6 https://115.com/s/swzlcya3wsp?password=bab4","\u539F\u76D8/\u7535\u89C6\u5267 https://115.com/s/swz7aq33nan?password=2580","\u539F\u76D8/\u7EAA\u5F55\u7247 https://115.com/s/swzmg533697?password=6688#","\u539F\u76D8/\u8718\u86DB\u4FA0 https://115.com/s/swhlzsc3nm7?password=y399#","\u539F\u76D8/\u8C46\u74E3TOP250 https://115.com/s/swzp25u3h9s?password=5089#","\u539F\u76D8/\u97E9\u56FD https://115cdn.com/s/swhid5x3wfa?password=xdf9","\u539F\u76D8/79\u90E8 https://115.com/s/swzhrkr3nn3?password=x663#","\u5408\u96C6/2026\u5E742\u6708 https://115cdn.com/s/swfm52v3h5u?password=hce0#","\u5408\u96C6/Netflix https://115.com/s/swzqpxd369v?password=ka72","\u5408\u96C6/Netflix2 https://115.com/s/swzgtc93h4y?password=5296#","\u5408\u96C6/TVB https://115.com/s/swz69un3fwo?password=8888","\u5408\u96C6/\u4E16\u754C\u676F https://115.com/s/swzcaxo3nrl?password=v1a6#","\u5408\u96C6/\u7CBE\u5FC3\u6574\u7406\u5F71\u89C6\u5267 https://115.com/s/swzr6d73697?password=2618#","\u7535\u5F71/2267\u90E8 https://115.com/s/swzjffn3h4y?password=k880#","\u7535\u5F71/REMUX https://115.com/s/swzhs093nn3?password=w768#","\u7535\u5F71/\u5168\u7403TOP250 https://115cdn.com/s/swwluyb3z1g?password=e950#","\u7535\u5F71/\u5168\u7403\u4E27\u5C38TOP100 https://115cdn.com/s/swflzjj3nd3?password=2022#","\u7535\u5F71/\u522E\u524A\u5B8C\u7535\u5F71 https://115.com/s/swz5xxr3697?password=2618#","\u7535\u5F71/\u52A8\u753B\u7535\u5F71 https://115.com/s/swz6gml3fwo?password=8888#","\u7535\u5F71/\u675C\u6BD471\u90E8 https://115cdn.com/s/swffkgd3hqd?password=f1c5#","\u7535\u5F71/\u753B\u8D28\u63A7 https://115cdn.com/s/swh9oc13zpx?password=ayss#","\u7535\u5F71/\u97E9\u56FD https://115.com/s/sw680gn3nn3?password=ee84#","\u7535\u89C6\u5267/\u52A8\u6F2B https://115.com/s/swzkkkk3hqx?password=zba9#","\u7535\u89C6\u5267/\u52A8\u6F2B\u5408\u96C6 https://115.com/s/swzc4ek3z75?password=2268#","\u7535\u89C6\u5267/\u534E\u8BED https://115.com/s/sw69s7y3nn3?password=d269#","\u7535\u89C6\u5267/\u5DF2\u6574\u7406 https://115.com/s/swzywe13wn9?password=c318#","\u7535\u89C6\u5267/\u6B27\u7F8E https://115.com/s/swz75dj3697?password=d717#","\u7535\u89C6\u5267/\u6B27\u7F8E2 https://115.com/s/swzyj6836ku?password=dda7#","\u7535\u89C6\u5267/\u7ECF\u5178\u6E2F\u5267 https://115cdn.com/s/swfnolz3h4y?password=hzys#","\u97F3\u4E50/\u97F3\u4E50\u5305 https://115.com/s/swz6sih3fwo?password=8888#"],z2n=[...G2n.map(e=>`115\u5408\u96C6 ${e}`),"\u963F\u91CC\u5408\u96C6 \u7535\u5F71 https://www.alipan.com/s/ZHNChQfiPfk","123\u5408\u96C6 \u7535\u5F71 https://123684.com/s/oec7Vv-rIYWh?\u63D0\u53D6\u7801:ZY4K","139\u5408\u96C6 \u7535\u5F71 https://yun.139.com/shareweb/#/w/i/2uh8ZHDm2NUqh","UC\u5408\u96C6 \u7535\u5F71 https://drive.uc.cn/s/e36c3fca7f234?public=1","\u767E\u5EA6\u5408\u96C6 \u7535\u5F71 https://pan.baidu.com/s/1e7s-XDuJlqG-IesgY3Vt5Q?pwd=x6l4","\u5938\u514B\u5408\u96C6 \u7535\u5F71 https://pan.quark.cn/s/d19c4ebe1ff7","SMB\u5408\u96C6 \u7535\u5F71 smb://192.168.1.10/Videos"].join(` +`);zzt=Number.MAX_SAFE_INTEGER;zW=async e=>{let t={text:String(e.config?.sharemount?.text||""),batchTiers:e.config?.sharemount?.batchTiers||{},searchLimit:Number(e.config?.sharemount?.searchLimit)||30,searchMaxShares:Number(e.config?.sharemount?.searchMaxShares)||10,searchIntervalMs:Number(e.config?.sharemount?.searchIntervalMs)||600,searchCacheTtlMs:Number(e.config?.sharemount?.searchCacheTtlMs)||6e5},r=await e.db.getObjectDefault("/config/sharemount",t),n=ILe(r?.batchTiers);return{text:await Z2n(r,e),...Qzt(n),batchTiers:n,batchTierOptions:Yzt(),searchLimit:Lp(r?.searchLimit,30,1,100),searchMaxShares:Lp(r?.searchMaxShares,10,1,zzt),searchIntervalMs:Lp(r?.searchIntervalMs,600,0,5e3),searchCacheTtlMs:Lp(r?.searchCacheTtlMs,10*60*1e3,0,60*60*1e3),providers:Wzt(),directMountToken:w_}};eDn=async(e,t={})=>{let r=ILe(),n={text:String(t.text||""),...Qzt(r),batchTiers:r,searchLimit:Lp(t.searchLimit,30,1,100),searchMaxShares:Lp(t.searchMaxShares,10,1,zzt),searchIntervalMs:Lp(t.searchIntervalMs,600,0,5e3),searchCacheTtlMs:Lp(t.searchCacheTtlMs,10*60*1e3,0,60*60*1e3)};return await e.db.push("/config/sharemount",n),{...n,batchTierOptions:Yzt(),providers:Wzt(),directMountToken:w_}}});var wYt={};kt(wYt,{createShareMountSpider:()=>lPn,createUnifiedShareMountSpider:()=>xYt,default:()=>dPn});function M3(e){return Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}function k3(e){try{return JSON.parse(Buffer.from(String(e||""),"base64url").toString("utf8"))}catch{return null}}function B3(e,t){return`${e}@@@${M3(t)}`}function Mp(e,t){let r=`${t}@@@`;return String(e||"").startsWith(r)?k3(String(e).slice(r.length)):null}function hYt(e,t=["pwd","password","share_pwd","passcode"]){try{let r=new URL(e);for(let n of t){let s=r.searchParams.get(n);if(s)return s}}catch{}return""}function sN(e,t=eX){let r=String(e||"").toLowerCase();return t.some(n=>r.endsWith(n))}function dDn(e){return String(e||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function kp(e,t=0){let r=dDn(e),n=Number(t||0);return n>0?`${r} [${Zu(n)}]`:r}function tX(e,t="srt",r="\u5916\u6302\u5B57\u5E55"){if(!e)return{};let n={url:e,name:r,format:t||"srt"};return{subt:e,subtitle:e,subs_urls:[e],subs:[n],extra:{subt:e,subtitle:e,subs_urls:[e],subs:[n]}}}function _l(e,t={}){return Xr(e,{msg:e,...t})}function pYt(e=""){let t=rr(e);if(t)return t;let r=String(e||"").replace(/^\./,"").toLowerCase();return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}function fDn(e){let t=String(e||"").split(".").pop()?.toLowerCase();return t&&t!==String(e||"").toLowerCase()?t:""}function CLe(e){let t=fDn(e);return!!t&&rDn.has(t)}function hDn(e){let t=String(e||"").trim(),r=/https?:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)(?:\?([^\s#]+))?/i.exec(t);if(!r)return null;let n=new URLSearchParams(r[2]||""),s=n.get("password")||n.get("pwd")||"";return s?{shareCode:r[1],receiveCode:s,url:t}:null}async function pDn(e,t,r){let n=[],s=r.batchSize,i=Math.max(1e4,Number(r.timeoutMs)||6e4),a=t||e.shareCode,o=Math.max(0,Number.parseInt(r.page,10)||0),c=o>0?(o-1)*s:0;for(;;){let u=await ye.get(Zzt,{params:{share_code:e.shareCode,receive_code:e.receiveCode,cid:a,limit:String(s),offset:String(c)},timeout:i,validateStatus:()=>!0}),l=u?.data;if(u.status>=400||l?.state===!1)throw new Error(l?.error||l?.message||`115 share snap status=${u.status}`);let d=Array.isArray(l?.data?.list)?l.data.list:[];if(d=d.map(f=>({...f,_shareParentCid:String(a||"")})),o>0){let h=Number(l?.data?.count)||0;if(h<=0&&(h=c+d.length,d.length===0&&o>1)){let p=Math.max(0,c-s),m=await ye.get(Zzt,{params:{share_code:e.shareCode,receive_code:e.receiveCode,cid:a,limit:String(s),offset:String(p)},timeout:i,validateStatus:()=>!0}),g=m?.data;if(m.status<400&&g?.state!==!1){let _=Array.isArray(g?.data?.list)?g.data.list:[];_.length0&&await Yt(r.batchIntervalMs)}return n}function mDn(e){let t=PLe.get(e);return t?t.expiresAt<=Date.now()?(PLe.delete(e),null):t.value:null}function gDn(e,t,r){r<=0||PLe.set(e,{value:t,expiresAt:Date.now()+r})}function _Dn(e){let t=[e?.data?.list,e?.data?.items,e?.data,e?.list,e?.items];for(let r of t)if(Array.isArray(r))return r;return[]}function ADn(e,t=""){let r=Number(e?.errno??e?.errNo??e?.code??0),n=String(t||e?.error||e?.message||e?.msg||"");return r===990001||/登录|login/i.test(n)}async function EDn(e,t,r,n,s=""){let i=n.searchLimit,a=(r-1)*i,o=await ye.get(aDn,{params:{share_code:e.shareCode,receive_code:e.receiveCode,cid:0,limit:String(i),offset:String(a),search_value:t,type:0},headers:{...oDn,Referer:`https://115.com/s/${e.shareCode}?password=${e.receiveCode}`,...s?{Cookie:s}:{}},timeout:15e3,validateStatus:()=>!0}),c=o?.data;if(o.status>=400||c?.state===!1){let u=c?.error||c?.message||`115 share search status=${o.status}`,l=new Error(u);throw l.auth=ADn(c,u),l}return _Dn(c)}function yDn(e,t){let r=String(e||"").trim().toLowerCase(),n=String(t||"").trim().toLowerCase();return!!n&&r.includes(n)}function YW(e,t,r="",n="",s={},i="share"){return Dt([i,e.shareCode,e.receiveCode,t||"",r||"",pYt(n),s.name||"",Number(s.size||0),s.sha1||"",s.pickCode||"",s.parentCid||""],{structured:!0})}function vDn(e){let t=String(e||"").trim(),r=[/https?:\/\/yun\.139\.com\/shareweb\/#\/w\/i\/([^?&#\s]+)/i,/https?:\/\/caiyun\.139\.com\/m\/i\?([^?&#\s]+)/i,/https?:\/\/caiyun\.139\.com\/w\/i\/([^?&#\s]+)/i];for(let n of r){let s=n.exec(t);if(s?.[1])return{url:t,linkID:s[1]}}return null}function eYt(e){let t=[];for(let r=0;r>>2]|=e[r]<<24-r%4*8;return D3.default.lib.WordArray.create(t,e.length)}function SDn(e){let{words:t,sigBytes:r}=e,n=Buffer.alloc(r);for(let s=0;s>>2]>>>24-s%4*8&255;return n}function TDn(e){return{update(t,r,n){let s=Buffer.isBuffer(t)?t:Buffer.from(String(t||""),r==="binary"?"latin1":r),i=D3.default.DES.encrypt(eYt(s),eYt(Buffer.from(e)),{mode:D3.default.mode.ECB,padding:D3.default.pad.NoPadding}),a=SDn(i.ciphertext);return n==="binary"?a.toString("latin1"):a},final(t){return t==="binary"?"":Buffer.alloc(0)}}}function bDn(e){let t=Buffer.isBuffer(e)?e:Buffer.from(e||""),r=BigInt(t.length)*8n,n=(56-(t.length+1)%64+64)%64,s=Buffer.concat([t,Buffer.from([128]),Buffer.alloc(n),Buffer.alloc(8)]);s.writeUInt32LE(Number(r&0xffffffffn),s.length-8),s.writeUInt32LE(Number(r>>32n&0xffffffffn),s.length-4);let i=1732584193,a=4023233417,o=2562383102,c=271733878,u=new Array(16),l=(g,_,y)=>(g&_|~g&y)>>>0,d=(g,_,y)=>(g&_|g&y|_&y)>>>0,f=(g,_,y)=>(g^_^y)>>>0,h=(g,_)=>(g<<_|g>>>32-_)>>>0,p=(...g)=>g.reduce((_,y)=>_+y>>>0,0);for(let g=0;g{i=h(p(i,l(a,o,c),u[v]),3),c=h(p(c,l(i,a,o),u[v+1]),7),o=h(p(o,l(c,i,a),u[v+2]),11),a=h(p(a,l(o,c,i),u[v+3]),19)}),[0,1,2,3].forEach(v=>{i=h(p(i,d(a,o,c),u[v],1518500249),3),c=h(p(c,d(i,a,o),u[v+4],1518500249),5),o=h(p(o,d(c,i,a),u[v+8],1518500249),9),a=h(p(a,d(o,c,i),u[v+12],1518500249),13)}),[0,2,1,3].forEach(v=>{i=h(p(i,f(a,o,c),u[v],1859775393),3),c=h(p(c,f(i,a,o),u[v+8],1859775393),9),o=h(p(o,f(c,i,a),u[v+4],1859775393),11),a=h(p(a,f(o,c,i),u[v+12],1859775393),15)}),i=p(i,_),a=p(a,y),o=p(o,A),c=p(c,E)}let m=Buffer.alloc(16);return m.writeUInt32LE(i,0),m.writeUInt32LE(a,4),m.writeUInt32LE(o,8),m.writeUInt32LE(c,12),m}function IDn(){let e=[];return{update(t,r){return e.push(Buffer.isBuffer(t)?t:Buffer.from(String(t||""),r)),this},digest(t){let r=bDn(Buffer.concat(e));return t==="hex"?r.toString("hex"):t==="binary"?r.toString("latin1"):t?r.toString(t):r}}}function RDn(){let e=yf.default.createCipheriv,t=yf.default.createHash,r=!1;try{e.call(yf.default,"DES-ECB",Buffer.alloc(8),"")}catch{r=!0}let n=!1;try{t.call(yf.default,"md4")}catch{n=!0}if(r&&!yf.default.__catpawSmbDesEcbPatched&&(yf.default.createCipheriv=function(i,a,o,c){return String(i).toLowerCase()==="des-ecb"?TDn(a):e.call(this,i,a,o,c)},yf.default.__catpawSmbDesEcbPatched=!0),n&&!yf.default.__catpawSmbMd4Patched){let s=yf.default.createHash;yf.default.createHash=function(a,o){return String(a).toLowerCase()==="md4"?IDn():s.call(this,a,o)},yf.default.__catpawSmbMd4Patched=!0}}function ga(...e){let t=[];for(let r of e)for(let n of String(r||"").split(/[\\/]+/)){let s=n.trim();if(!(!s||s===".")){if(s===".."){t.pop();continue}t.push(s)}}return t.join("\\")}function P3(e){return String(e||"").split(/[\\/]+/).filter(Boolean).pop()||""}function rX(e){let t=String(e||"").split(".").pop()?.toLowerCase();return t&&t!==String(e||"").toLowerCase()?t:""}function CDn(e){let t=rX(e);return!!t&&uDn.has(t)}function xDn(e){let t=String(e||"").trim();if(!/^smb:\/\//i.test(t))return null;let r;try{r=new URL(t)}catch{return null}let n=r.pathname.split("/").filter(Boolean).map(c=>{try{return decodeURIComponent(c)}catch{return c}});if(!r.hostname||!n.length)return null;let s=r.searchParams,i=s.get("username")||s.get("user")||decodeURIComponent(r.username||""),a=s.get("password")||s.get("pass")||decodeURIComponent(r.password||""),o=s.get("domain")||s.get("workgroup")||"";if(i.includes(";")){let c=i.split(";");o=o||c.shift(),i=c.join(";")}else if(i.includes("\\")){let c=i.split("\\");o=o||c.shift(),i=c.join("\\")}return{host:r.hostname,port:Number(r.port||s.get("port")||LLe)||LLe,share:n.shift(),rootPath:ga(n.join("\\")),username:i,password:a,domain:o||fYt,url:t}}function mYt(e){return new oYt.default({share:`\\\\${e.host}\\${e.share}`,domain:e.domain||fYt,username:e.username||"",password:e.password||"",port:e.port||LLe,packetConcurrency:8,autoCloseTimeout:1e4})}async function gYt(e,t){let r=mYt(e);try{return await t(r)}finally{try{r.disconnect()}catch{}}}async function wDn(e,t,r){let n=ga(t||e.rootPath||"");return await gYt(e,async s=>{let i=await s.readdir(n,{stats:!0}),a=Math.max(0,Number.parseInt(r.page||r.pg,10)||0),o=Math.max(1,Number(r.batchSize)||1e3);if(r.batchIntervalMs>0&&i.length>r.batchSize&&await Yt(r.batchIntervalMs),a>0){let c=(a-1)*o;return{items:i.slice(c,c+o),paged:!0,page:a,pageSize:o,total:i.length}}return i.slice(0,o)})}async function NDn(e,t){return await gYt(e,async r=>r.stat(ga(t)))}function ODn(e,t,r=""){let n=M3({e:e.id,p:ga(t),n:r||P3(t),exp:Date.now()+cDn});return L3.set(n,!0),n}function DDn(e){if(!L3.has(e))return null;let t=k3(e);return!t||Number(t.exp||0)String(r||"").trim()).filter(Boolean)}}function qDn(e){let t=vYt(e);return t?t.segments:null}function kLe(e,t,r="",n=""){return B3("mount",{k:e.key,e:t.id,...e.mountPayload(t,r,n),n:n||t.dirName||t.category})}function SYt(e,t,r,n,s){return B3("file",{k:e.key,...e.filePayload(t,r,n,s)})}function HDn(e,t,r="",n=""){return B3("playlist",{k:e.key,e:t.id,...e.playlistPayload(t,r,n),n:n||t.dirName||t.category||"\u64AD\u653E\u5217\u8868"})}function TYt(e,t){if(e.lengthE.name).slice(0,20);return{vod_id:i,vod_name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`,vod_pic:N_,vod_remarks:y.length?`${y.length}\u4E2A\u5B50\u76EE\u5F55`:"\u76EE\u5F55",vod_content:[`\u76EE\u5F55: ${c.join(" / ")||o||""}`,`\u6765\u6E90: ${Hs(n)}`,A.length?`\u5B50\u76EE\u5F55: ${A.join("\u3001")}${y.length>A.length?"...":""}`:"\u672A\u53D1\u73B0\u53EF\u64AD\u653E\u89C6\u9891"].join(` +`),cate:{id:i,name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`}}}return{vod_id:i,vod_name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`,vod_pic:N_,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55\u5C42\u7EA7\u8FC7\u6DF1\uFF0C\u8BF7\u4ECE\u76EE\u5F55\u5165\u53E3\u7EE7\u7EED\u8FDB\u5165 +\u6765\u6E90: ${Hs(n)}`,cate:{id:i,name:c.join(" / ")||o||`${t.shortName}\u76EE\u5F55`}}}async function aX(e,t,r,n,s,i,a={}){await Bp(t,e);let o=t.categoryPaging&&a.page?{...r,page:Math.max(1,Number.parseInt(a.page,10)||1)}:r,c=await t.list(n,s,o),u=nX(t,c),l=sX(t,c,n,s),d=VDn(c),f=[],h=[],p=[];for(let y of u){let A=t.fileName(y);if(t.isFolder(y,A)){let E=t.folderLocator(n,y,l),v=kLe(t,n,E,A);f.push({vod_id:v,type_id:v,type_name:A,vod_name:A,vod_pic:N_,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:v,name:A},ratio:1.33})}else(t.isSubtitle?t.isSubtitle(y,A):St(A))?p.push(y):t.isVideo(y,A)&&h.push(y)}let m=Gt(h),g=f,_=a.playlistName||`${i||n.dirName||n.category||"\u672C\u5C42"} \u64AD\u653E\u5217\u8868`;(!d||d.page===1)&&m.length>1&&g.push({vod_id:HDn(t,n,s,_),vod_name:a.shortPlaylistName||"\u64AD\u653E\u5217\u8868",vod_pic:tDn,vod_remarks:`${m.length}\u4E2A\u89C6\u9891`,ratio:1.33});for(let y of m){let A=t.fileName(y),E=t.multiSubtitle?ac(A,p,t.fileName):xr(A,p,t.fileName);g.push({vod_id:SYt(t,n,y,E,l),vod_name:A,vod_pic:cYt,vod_remarks:Zu(t.itemSize(y)),ratio:1.33})}return d&&Object.defineProperty(g,"pageMeta",{value:d,enumerable:!1}),g}async function Bp(e,t){return e.init&&await e.init(t),{}}async function IYt(e,t){let{entries:r}=await iN(t.server,e),n=new Set,s=[];for(let i of r){let a=i.pathSegments[0]||w_;n.has(a)||(n.add(a),s.push({type_id:FDn(a),type_name:a===w_?ZW:a}))}return{class:s}}async function sYt(e,t,r,n,s,i){let a=new Map,o=[];for(let f of n){if(!TYt(f.pathSegments,s))continue;if(f.pathSegments.length===s.length){o.push(f);continue}let h=f.pathSegments[s.length];a.has(h)||a.set(h,[...s,h])}let c=[];for(let[f,h]of a){let p=yYt(h);c.push({vod_id:p,type_id:p,type_name:f,vod_name:f,vod_pic:N_,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:p,name:f},ratio:1.33})}let u=[],l=null;for(let f=0;f1?`${t.shortName}${f+1} \u64AD\u653E\u5217\u8868`:`${p} \u64AD\u653E\u5217\u8868`,g=await aX(e,t,r,h,t.rootLocator(h),p,{playlistName:m,shortPlaylistName:o.length>1?`${t.shortName}${f+1} \u64AD\u653E\u5217\u8868`:"\u64AD\u653E\u5217\u8868",page:i});a.size===0&&o.length===1&&g.pageMeta&&(l=g.pageMeta),c.push(...g)}catch(p){u.push(`${Hs(h)}: ${p?.message||p}`),console.error(`[${t.key}] category failed:`,p?.message||p)}}l&&Object.defineProperty(c,"pageMeta",{value:l,enumerable:!1});let d=iX(i,c,s.join("/")||ZW);return u.length&&(d.msg=u.slice(0,3).join(` +`)),d}async function KDn(e,t){await Bp(e,t);let{settings:r,entries:n}=await iN(t.server,e),s=String(t.body?.id||JW),i=Math.max(1,Number.parseInt(t.body?.page||t.body?.pg,10)||1);if(s===JW){let u=await IYt(e,t);return{page:1,pagecount:1,limit:u.class.length,total:u.class.length,list:u.class.map(l=>({vod_id:l.type_id,type_id:l.type_id,type_name:l.type_name,vod_name:l.type_name,vod_pic:N_,vod_remarks:"\u5206\u7C7B",vod_tag:"folder",cate:{id:l.type_id,name:l.type_name},ratio:1.33}))}}let a=qDn(s);if(a)return await sYt(t,e,r,n,a,i);let o=$Dn(s);if(o)return await sYt(t,e,r,n,o,i);let c=Mp(s,"mount");if(c){let u=n.find(d=>d.id===String(c.e));if(!u)return{page:1,pagecount:1,limit:0,total:0,list:[]};let l=String(c.n||u.dirName||u.category||e.shortName);try{let d=await aX(t,e,r,u,e.locatorFromMount(c,u),l,{page:i});return iX(i,d,l)}catch(d){return console.error(`[${e.key}] category failed:`,d?.message||d),{page:1,pagecount:1,limit:0,total:0,list:[],msg:d?.message||`\u8BFB\u53D6${e.shortName}\u5931\u8D25`}}}return{page:1,pagecount:1,limit:0,total:0,list:[]}}async function GDn(e,t){let{settings:r,entries:n}=await iN(t.server,e),s=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],i=[];for(let a of s){let o=Mp(a,"file");if(o){let l=n.find(d=>d.id===String(o.e));if(!l){i.push({vod_id:a,vod_name:o.n||`${e.shortName}\u8D44\u6E90`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}i.push(await e.fileDetail(t,l,o,a));continue}let c=Mp(a,"playlist");if(c){let l=n.find(d=>d.id===String(c.e));if(!l){i.push({vod_id:a,vod_name:c.n||"\u64AD\u653E\u5217\u8868",vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{let d=e.locatorFromPlaylist(c,l),f=await e.list(l,d,r),h=nX(e,f),p=sX(e,f,l,d),{videos:m,subtitles:g}=BLe(e,h);i.push(await e.playlistDetail(t,l,c,Gt(m),g,p,a))}catch(d){console.error(`[${e.key}] playlist detail failed:`,d?.message||d),i.push({vod_id:a,vod_name:c.n||"\u64AD\u653E\u5217\u8868",vod_content:d?.message||`\u8BFB\u53D6${e.shortName}\u64AD\u653E\u5217\u8868\u5931\u8D25`})}continue}let u=Mp(a,"mount");if(u){let l=n.find(d=>d.id===String(u.e));if(!l){i.push({vod_id:a,vod_name:u.n||`${e.shortName}\u76EE\u5F55`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{i.push(await bYt(t,e,r,l,u,a))}catch(d){console.error(`[${e.key}] mount detail failed:`,d?.message||d),i.push({vod_id:a,vod_name:u.n||`${e.shortName}\u76EE\u5F55`,vod_content:d?.message||`\u8BFB\u53D6${e.shortName}\u76EE\u5F55\u5931\u8D25`})}continue}i.push({vod_id:a,vod_name:`${e.shortName}\u76EE\u5F55`,vod_remarks:"\u76EE\u5F55"})}return{list:i}}async function zDn(){return{page:1,pagecount:1,list:[]}}async function YDn(e,t,r){try{let n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);s.init=i.json(),i=await t.server.inject().post(`${n}/home`),s.home=i.json();let a=s.home?.class?.[0];return a&&(i=await t.server.inject().post(`${n}/category`).payload({id:a.type_id,page:1}),s.category=i.json()),s}catch(n){return console.error(n),r.code(500),{err:n.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}function iYt(e){let t=e==="quarkshare";return{key:e,shortName:t?"\u5938\u514B\u5206\u4EAB":"UC\u5206\u4EAB",metaName:t?"\u{1F4E6} \u5938\u514B\u5408\u96C6":"\u{1F4E6} UC\u5408\u96C6",searchable:!1,init:t?dp:hp,async parseShare(r){let n=t?await oB(r):dB(r);return n?.shareId?{url:r,...n,sharePwd:n.sharePwd||hYt(r,["pwd","password","passcode"])}:null},rootLocator:r=>r.folderId||"0",list:t?hUt:NUt,categoryPaging:!0,items:r=>Array.isArray(r?.items)?r.items:Array.isArray(r)?r:[],fileName:_Yt,itemSize:QW,isFolder(r,n){return MLe(r,n)},isSubtitle:(r,n)=>!MLe(r,n)&&St(n),isVideo:(r,n)=>LDn(r,t?uYt:eX)&&QW(r)>=DLe&&x3(r),folderLocator:(r,n)=>w3(n),mountPayload:(r,n="")=>({f:n||r.folderId||"0"}),locatorFromMount:(r,n)=>String(r.f||n.folderId||"0"),playlistPayload:(r,n="")=>({l:n||""}),locatorFromPlaylist:(r,n)=>String(r.l||n.folderId||"0"),filePayload(r,n,s,i={}){return{e:r.id,n:this.fileName(n),f:w3(n),ft:x3(n),st:String(n?.stoken||i?.stoken||""),sf:w3(s),sft:x3(s),se:s?rr(this.fileName(s)):"",sz:QW(n)}},async fileDetail(r,n,s,i){let a=await ht(t?"quark":"uc"),o=Dt([n.shareId,s.st||"",s.f||"",s.ft||"",s.sf||"",s.sft||"",s.se||""],{structured:!0});if(!t)return{vod_id:i,vod_name:s.n||"UC\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${s.n||""} +\u6765\u6E90: ${Hs(n)}`,vod_play_from:a,vod_play_url:`${kp(s.n,s.sz)}$${o}`};let c=xo(a,[{vod_id:o,vod_name:s.n||"\u5938\u514B\u5206\u4EAB\u8D44\u6E90",vod_size:Number(s.sz||0)}]);return{vod_id:i,vod_name:s.n||"\u5938\u514B\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${s.n||""} +\u6765\u6E90: ${Hs(n)}`,vod_play_from:c?.from||a,vod_play_url:c?.url||""}},async playlistDetail(r,n,s,i,a,o,c){let u=await ht(t?"quark":"uc"),l=i.map(f=>{let h=this.fileName(f),p=xr(h,a,this.fileName);return{vod_id:Dt([n.shareId,String(f?.stoken||o?.stoken||""),w3(f),x3(f),w3(p),x3(p),p?rr(this.fileName(p)):""],{structured:!0}),vod_name:h,vod_size:QW(f)}}),d=xo(u,l,!1);return{vod_id:c,vod_name:s.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${l.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(n)}`,vod_play_from:d?.from||u,vod_play_url:d?.url||""}},play:t?(r,n)=>UK(r,n):(r,n)=>fB(r,n)}}function XDn(e="",t=""){return!e&&!t?"":`gy:${M3({f:String(e||""),p:String(t||"")})}`}function NLe(e=""){let t=String(e||"");if(!t)return{fileId:"",path:""};if(!t.startsWith("gy:"))return{fileId:t,path:""};let r=k3(t.slice(3))||{};return{fileId:String(r.f||""),path:String(r.p||"")}}async function RYt(e,t){let r=String(e.params?.token||"").replace(/\.[^.]+$/,""),n=DDn(r);if(!n)return t.code(403).send("SMB proxy token expired");let{entries:s}=await iN(e.server,ULe),i=s.find(p=>p.id===String(n.e));if(!i)return t.code(404).send("SMB config not found");let a=ga(n.p),o=String(n.n||P3(a)||"file"),c;try{c=await NDn(i,a)}catch(p){return t.code(404).send(p?.message||"SMB file not found")}if(typeof c?.isDirectory=="function"&&c.isDirectory())return t.code(400).send("SMB path is a directory");let u=Number(c?.size||0),l=rX(o),d=lDn[l]||"application/octet-stream",f=mx(e.headers?.range,u);if(f?.unsatisfied)return t.code(416),t.header("Content-Range",`bytes */${u}`),t.send("");let h=mYt(i);try{let p=f?{start:f.start,end:f.end}:{},m=await h.createReadStream(a,p),g=()=>{try{h.disconnect()}catch{}};return m.on("close",g),m.on("end",g),m.on("error",g),t.header("Content-Type",d),t.header("Accept-Ranges","bytes"),t.header("Access-Control-Allow-Origin","*"),t.header("Access-Control-Allow-Headers","Range, Content-Type"),t.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),t.header("Cache-Control","no-store"),f?(t.code(206),t.header("Content-Range",`bytes ${f.start}-${f.end}/${u}`),t.header("Content-Length",String(f.end-f.start+1))):u>0&&t.header("Content-Length",String(u)),t.send(m)}catch(p){try{h.disconnect()}catch{}return t.code(502).send(p?.message||"SMB proxy failed")}}function O3(e){return $b(e.key)?.label||e.shortName}async function FLe(e){let t=await zW(e),r=bLe(t.text),n=new Map,s=[];for(let i of r.entries){let a=xc[i.providerKey];if(!a)continue;let o=await a.parseShare(i.url);if(!o)continue;n.has(a.key)||(n.set(a.key,[]),s.push(a));let c=n.get(a.key);c.push({...i,id:String(c.length),category:i.pathSegments[0]||ZW,dirName:i.pathSegments.slice(1).join("/")||"",namePath:i.mountPath,...o})}return{settings:t,entriesByProvider:n,orderedProviders:s,errors:r.errors}}function tPn(e){return`cat@@@${e.key}`}function rPn(e){if(!String(e||"").startsWith("cat@@@"))return null;let t=String(e).slice(6);return xc[t]?t:null}async function CYt(e){let{entriesByProvider:t,orderedProviders:r}=await FLe(e.server),n=[];for(let s of r){let i=t.get(s.key)||[];i.length&&n.push({type_id:tPn(s),type_name:i[0]?.providerLabel||O3(s)})}return{class:n}}async function aYt(e,t,r,n,s,i){await Bp(t,e);let a=rN(r,t.key),o=new Map,c=[];for(let h of n){if(!TYt(h.pathSegments,s))continue;if(h.pathSegments.length===s.length){c.push(h);continue}let p=h.pathSegments[s.length];o.has(p)||o.set(p,[...s,p])}let u=[];for(let[h,p]of o){let m=yYt(p,t.key);u.push({vod_id:m,type_id:m,type_name:h,vod_name:h,vod_pic:N_,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:m,name:h},ratio:1.33})}let l=[],d=null;for(let h=0;h1?`${O3(t)}${h+1} \u64AD\u653E\u5217\u8868`:`${m} \u64AD\u653E\u5217\u8868`,_=await aX(e,t,a,p,t.rootLocator(p),m,{playlistName:g,shortPlaylistName:c.length>1?`${O3(t)}${h+1} \u64AD\u653E\u5217\u8868`:"\u64AD\u653E\u5217\u8868",page:i});o.size===0&&c.length===1&&_.pageMeta&&(d=_.pageMeta),u.push(..._)}catch(m){l.push(`${Hs(p)}: ${m?.message||m}`),console.error(`[sharemount:${t.key}] category failed:`,m?.message||m)}}d&&Object.defineProperty(u,"pageMeta",{value:d,enumerable:!1});let f=iX(i,u,s.join("/")||O3(t));return l.length&&(f.msg=l.slice(0,3).join(` +`)),f}async function nPn(e){let{settings:t,entriesByProvider:r}=await FLe(e.server),n=String(e.body?.id||JW),s=Math.max(1,Number.parseInt(e.body?.page||e.body?.pg,10)||1);if(n===JW){let c=await CYt(e);return{page:1,pagecount:1,limit:c.class.length,total:c.class.length,list:c.class.map(u=>({vod_id:u.type_id,type_id:u.type_id,type_name:u.type_name,vod_name:u.type_name,vod_pic:N_,vod_remarks:"\u5206\u7C7B",vod_tag:"folder",cate:{id:u.type_id,name:u.type_name},ratio:1.33}))}}let i=rPn(n);if(i){let c=xc[i];return await aYt(e,c,t,r.get(c.key)||[],[],s)}let a=vYt(n);if(a?.providerKey&&xc[a.providerKey]){let c=xc[a.providerKey];return await aYt(e,c,t,r.get(c.key)||[],a.segments,s)}let o=Mp(n,"mount");if(o?.k&&xc[o.k]){let c=xc[o.k],l=(r.get(c.key)||[]).find(f=>f.id===String(o.e));if(!l)return{page:1,pagecount:1,limit:0,total:0,list:[]};let d=String(o.n||l.dirName||l.category||c.shortName);try{await Bp(c,e);let f=rN(t,c.key),h=await aX(e,c,f,l,c.locatorFromMount(o,l),d,{page:s});return iX(s,h,d)}catch(f){return console.error(`[sharemount:${c.key}] category failed:`,f?.message||f),{page:1,pagecount:1,limit:0,total:0,list:[],msg:f?.message||`\u8BFB\u53D6${c.shortName}\u5931\u8D25`}}}return{page:1,pagecount:1,limit:0,total:0,list:[]}}function sPn(e,t){return B3("play",{k:e,id:String(t||"")})}function iPn(e,t){return String(e||"").split("$$$").map(r=>r.split("#").map(n=>{let s=n.indexOf("$");return s<0?n:`${n.slice(0,s+1)}${sPn(t,n.slice(s+1))}`}).join("#")).join("$$$")}function OLe(e,t){return e?.vod_play_url?{...e,vod_play_url:iPn(e.vod_play_url,t)}:e}async function aPn(e){let{settings:t,entriesByProvider:r}=await FLe(e.server),n=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],s=[];for(let i of n){let a=Mp(i,"file");if(a?.k&&xc[a.k]){let u=xc[a.k],l=(r.get(u.key)||[]).find(d=>d.id===String(a.e));if(!l){s.push({vod_id:i,vod_name:a.n||`${u.shortName}\u8D44\u6E90`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}await Bp(u,e),s.push(OLe(await u.fileDetail(e,l,a,i),u.key));continue}let o=Mp(i,"playlist");if(o?.k&&xc[o.k]){let u=xc[o.k],d=(r.get(u.key)||[]).find(f=>f.id===String(o.e));if(!d){s.push({vod_id:i,vod_name:o.n||"\u64AD\u653E\u5217\u8868",vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{await Bp(u,e);let f=rN(t,u.key),h=u.locatorFromPlaylist(o,d),p=await u.list(d,h,f),m=nX(u,p),g=sX(u,p,d,h),{videos:_,subtitles:y}=BLe(u,m),A=await u.playlistDetail(e,d,o,Gt(_),y,g,i);s.push(OLe(A,u.key))}catch(f){console.error(`[sharemount:${u.key}] playlist detail failed:`,f?.message||f),s.push({vod_id:i,vod_name:o.n||"\u64AD\u653E\u5217\u8868",vod_content:f?.message||`\u8BFB\u53D6${u.shortName}\u64AD\u653E\u5217\u8868\u5931\u8D25`})}continue}let c=Mp(i,"mount");if(c?.k&&xc[c.k]){let u=xc[c.k],d=(r.get(u.key)||[]).find(f=>f.id===String(c.e));if(!d){s.push({vod_id:i,vod_name:c.n||`${u.shortName}\u76EE\u5F55`,vod_content:"\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728"});continue}try{let f=rN(t,u.key),h=await bYt(e,u,f,d,c,i);s.push(OLe(h,u.key))}catch(f){console.error(`[sharemount:${u.key}] mount detail failed:`,f?.message||f),s.push({vod_id:i,vod_name:c.n||`${u.shortName}\u76EE\u5F55`,vod_content:f?.message||`\u8BFB\u53D6${u.shortName}\u76EE\u5F55\u5931\u8D25`})}continue}s.push({vod_id:i,vod_name:"\u5408\u96C6\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"})}return{list:s}}async function oPn(e,t){let r=Mp(e.body?.id,"play");if(!r?.k||!xc[r.k])return _l("\u5408\u96C6\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=xc[r.k];await Bp(n,e);let s=e.body;e.body={...s||{},id:r.id||""};try{return await n.play(e,t)}finally{e.body=s}}async function cPn(e){return await Bp(V0,e),await V0.search(e)}async function uPn(e,t){try{let r=e.server.prefix,n={},s=await e.server.inject().post(`${r}/init`);n.init=s.json(),s=await e.server.inject().post(`${r}/home`),n.home=s.json();let i=n.home?.class?.[0];return i&&(s=await e.server.inject().post(`${r}/category`).payload({id:i.type_id,page:1}),n.category=s.json()),n}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}function xYt(){return{meta:{key:"sharemount",name:"\u{1F4E6} \u7F51\u76D8",type:3,searchable:!0},api:async e=>{e.post("/init",async()=>({})),e.post("/home",CYt),e.post("/category",nPn),e.post("/detail",aPn),e.post("/play",oPn),e.post("/search",cPn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys),e.get("/proxy/media/:token",RYt),e.get("/test",uPn)}}}function lPn(e){let t=xc[e];if(!t||!$b(e))throw new Error(`Unknown sharemount provider: ${e}`);return{meta:{key:t.key,name:t.metaName,type:3,searchable:t.searchable},api:async r=>{r.post("/init",n=>Bp(t,n)),r.post("/home",n=>IYt(t,n)),r.post("/category",n=>KDn(t,n)),r.post("/detail",n=>GDn(t,n)),r.post("/play",(n,s)=>t.play(n,s)),r.post("/search",t.search?n=>t.search(n):zDn),["alishare","quarkshare","ucshare","123share","baidushare"].includes(t.key)&&r.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys),t.key==="smb"&&r.get("/proxy/media/:token",RYt),r.get("/test",(n,s)=>YDn(t,n,s))}}}var oYt,yf,D3,N_,cYt,tDn,JW,ZW,DLe,eX,uYt,rDn,nDn,sDn,iDn,lYt,Xzt,Jzt,Zzt,aDn,dYt,oDn,PLe,LLe,fYt,cDn,uDn,lDn,L3,V0,QDn,WDn,JDn,ZDn,ePn,ULe,xc,dPn,NYt=ie(()=>{vr();oYt=Ne(Vzt(),1),yf=Ne(require("node:crypto"),1),D3=Ne(Yi(),1);QE();zT();Px();Px();cB();cB();hB();Y4();Ixe();LB();fc();Ox();Ds();yi();Zc();S0();jg();Jc();la();JK();Oj();ia();Xj();RLe();N_="https://img.icons8.com/fluency/96/folder-invoices--v1.png",cYt="https://img.icons8.com/color/48/video.png",tDn="https://img.icons8.com/fluency/96/playlist.png",JW="root",ZW="\u76F4\u6302",DLe=5*1024*1024,eX=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],uYt=[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".m4v",".mpg",".mpeg",".3gp",".f4v",".vob",".rm",".iso",".asf",".divx"],rDn=new Set(["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","mpg","3gp","ts","m2ts","mp3","wav","aac","iso","rmvb","rm","m4v","f4v","m4a","vob"]),nDn=30,sDn=10,iDn=600,lYt=10*60*1e3,Xzt=2*60*1e3,Jzt=6,Zzt="https://webapi.115.com/share/snap",aDn="https://webapi.115.com/share/search",dYt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",oDn={"User-Agent":dYt,"X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"},PLe=new _t(200,lYt),LLe=445,fYt="WORKGROUP",cDn=6*60*60*1e3,uDn=new Set(["mp4","mkv","webm","avi","wmv","flv","mov","mpeg","mpg","m4v","ts","m2ts","3gp","rm","rmvb","iso","vob","f4v","m3u8"]),lDn={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",webm:"video/webm",avi:"video/x-msvideo",mov:"video/quicktime",ts:"video/mp2t",m2ts:"video/mp2t",m3u8:"application/vnd.apple.mpegurl",vtt:"text/vtt; charset=utf-8",srt:"text/plain; charset=utf-8",ass:"text/plain; charset=utf-8",ssa:"text/plain; charset=utf-8"},L3=new Map;RDn();V0={key:"115share",shortName:"115\u5206\u4EAB",metaName:"\u{1F4E6} 115\u5408\u96C6",searchable:!0,init:lp,parseShare:hDn,rootLocator:()=>"",list:pDn,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:e=>String(e?.n||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5",itemSize:e=>Number(e?.s||e?.size||0),isFolder(e,t){return CLe(t)||St(t)||e?.fid||e?.file_id?!1:Number(e?.fc)===0||!!e?.cid},isVideo:(e,t)=>CLe(t),folderLocator:(e,t)=>String(t.cid||""),mountPayload:(e,t="")=>({c:t||""}),locatorFromMount:e=>String(e.c||""),playlistPayload:(e,t="")=>({c:t||""}),locatorFromPlaylist:e=>String(e.c||""),filePayload(e,t,r){return{e:e.id,n:this.fileName(t),f:String(t?.fid||t?.file_id||""),sf:String(r?.fid||r?.file_id||""),se:r?pYt(this.fileName(r)):"",sz:this.itemSize(t),sh:sf(t?.sha1||t?.sha||t?.file_sha1),pc:String(t?.pc||t?.pick_code||t?.pickcode||""),p:String(t?._shareParentCid||"")}},async fileDetail(e,t,r,n){let s=await ht("115"),i={name:r.n,size:r.sz,sha1:r.sh,pickCode:r.pc,parentCid:r.p},a=YW(t,r.f||"",r.sf||"",r.se||"",i,"share"),c=await GE(e.server)?YW(t,r.f||"",r.sf||"",r.se||"",i,"rapid-share"):"",u=kp(r.n,r.sz),l=op("115",[{routeKey:ar[115].original,from:s,url:`${u}$${a}`},c?{routeKey:ar[115].rapid123,from:"\u79D2\u4F20123",url:`${u}$${c}`}:null]);return{vod_id:n,vod_name:r.n||"115\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:l.from,vod_play_url:l.url}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("115"),c=n.map(f=>{let h=this.fileName(f),p=xr(h,s,this.fileName);return`${kp(h,this.itemSize(f))}$${YW(t,String(f?.fid||f?.file_id||""),String(p?.fid||p?.file_id||""),p?this.fileName(p):"",{name:h,size:this.itemSize(f),sha1:sf(f?.sha1||f?.sha||f?.file_sha1),pickCode:String(f?.pc||f?.pick_code||f?.pickcode||""),parentCid:String(f?._shareParentCid||"")},"share")}`}),l=await GE(e.server)?n.map(f=>{let h=this.fileName(f),p=xr(h,s,this.fileName);return`${kp(h,this.itemSize(f))}$${YW(t,String(f?.fid||f?.file_id||""),String(p?.fid||p?.file_id||""),p?this.fileName(p):"",{name:h,size:this.itemSize(f),sha1:sf(f?.sha1||f?.sha||f?.file_sha1),pickCode:String(f?.pc||f?.pick_code||f?.pickcode||""),parentCid:String(f?._shareParentCid||"")},"rapid-share")}`}):[],d=op("115",[{routeKey:ar[115].original,from:o,url:c.join("#")},l.length?{routeKey:ar[115].rapid123,from:"\u79D2\u4F20123",url:l.join("#")}:null]);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:d.from,vod_play_url:d.url}},async play(e){await lp(e);let t=Br(e.body?.id||"");if(!["share","rapid-share"].includes(t[0])||!t[1]||!t[2]||!t[3])return _l("115\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let r=await Za(e.server);if(t[0]==="rapid-share"){let i=await zE(e.server,{fileId:t[3],name:t[6],size:Number(t[7]||0),sha1:t[8],pickCode:t[9]});if(i.mode==="invalid_metadata"&&t[10])try{let c=(await iK(t[1],t[2],t[10],r)).find(u=>String(u.fid)===String(t[3]));c&&(i=await zE(e.server,{fileId:t[3],name:t[6]||c.name,size:Number(t[7]||c.size||0),sha1:t[8]||c.sha1,pickCode:t[9]}))}catch(o){console.warn("[115 share mount][downlist] rapid metadata lookup failed:",o?.message||o)}if(!i.success||!i.downloadUrl)return _l(i.message||"115\u2192\u79D2\u4F20123\u5931\u8D25",{mode:i.mode,downloaded:!1,uploaded:!1,...typeof i.cleaned=="boolean"?{cleaned:i.cleaned}:{}});let a=GT(i.downloadUrl);return a?(a.extra={rapidTransfer:{mode:i.mode,downloaded:!1,uploaded:!1,cleaned:i.cleaned===!0}},a):_l("\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u64AD\u653E\u5730\u5740\u65E0\u6548")}let n=await aK(t[1],t[2],t[3],r);if(!n?.url)return _l(n?.msg||"115\u5206\u4EAB\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n.url],header:{"User-Agent":dYt,Cookie:n.cookie||r,Referer:"https://115.com/",Origin:"https://115.com"}};if(t[4]){let i=await aK(t[1],t[2],t[4],r);if(i?.url){let a=t[5]||"srt";Object.assign(s,tX(i.url,a))}}return s},async search(e){let t=String(e.body?.wd||e.body?.keyword||e.body?.searchword||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page||e.body?.pg,10)||1);if(!t)return{page:r,pagecount:1,limit:0,total:0,list:[]};let{settings:n,entries:s}=await iN(e.server,V0);n.searchLimit=Math.max(1,Math.min(100,Number(n.searchLimit)||nDn)),n.searchMaxShares=Math.max(1,Math.floor(Number(n.searchMaxShares)||sDn)),n.searchIntervalMs=Math.max(0,Math.min(5e3,Number(n.searchIntervalMs)||iDn)),n.searchCacheTtlMs=Math.max(0,Math.min(60*60*1e3,Number(n.searchCacheTtlMs)||lYt));let i=await Za(e.server),a=s.slice(0,n.searchMaxShares),o=n.searchLimit,c=JSON.stringify({v:12,q:t,p:r,m:n.searchMaxShares,l:n.searchLimit}),u=mDn(c);if(u)return u;let l=[],d=new Set,f=[],h=!1;for(let m=0;m=o);m+=1){let g=a[m];if(g.pathSegments?.some(_=>yDn(_,t))){let _=kLe(V0,g,V0.rootLocator(g),g.pathSegments.at(-1)||g.category),y=`${g.id}:config:${g.mountPath}`;!d.has(y)&&l.length=o)break;try{let _=Math.max(1,Math.min(n.searchLimit,o-l.length)),y=await EDn(g,t,r,{...n,searchLimit:_},i);for(let A of y){if(l.length>=o)break;let E=this.fileName(A);if(this.isFolder(A,E)){let I=this.folderLocator(g,A,{});if(!I)continue;let T=kLe(V0,g,I,E),x=`${g.id}:dir:${I}`;if(d.has(x))continue;d.add(x),l.push({vod_id:T,type_id:T,type_name:E,vod_name:E,vod_pic:N_,vod_remarks:`${Hs(g)} \xB7 \u76EE\u5F55`,vod_tag:"folder",cate:{id:T,name:E},ratio:1.33});continue}let v=String(A?.fid||A?.file_id||"");if(!v||this.isFolder(A,E)||!CLe(E))continue;let b=`${g.id}:${v}`;d.has(b)||(d.add(b),l.push({vod_id:SYt(V0,g,A,null,{}),vod_name:E,vod_pic:cYt,vod_remarks:`${Hs(g)}${A?.s||A?.size?` \xB7 ${Zu(Number(A?.s||A?.size||0))}`:""}`,ratio:1.33}))}}catch(_){_?.auth&&(h=!0),f.push(`${Hs(g)}: ${_?.message||_}`),console.warn("[115share] search failed:",Hs(g),_?.message||_)}m0&&await Yt(n.searchIntervalMs)}let p={page:r,pagecount:l.length>=n.searchLimit?r+1:r,limit:n.searchLimit,total:l.length,list:l};return!l.length&&f.length&&(p.msg=f.slice(0,3).join(` +`)),h||gDn(c,p,l.length?n.searchCacheTtlMs:Math.min(n.searchCacheTtlMs||Xzt,Xzt)),p}},QDn={key:"alishare",shortName:"\u963F\u91CC\u5206\u4EAB",metaName:"\u{1F4E6} \u963F\u91CC\u5408\u96C6",searchable:!1,init:Wg,parseShare(e){let t=JE(e);return t?.shareId?{url:e,...t,sharePwd:t.sharePwd||hYt(e)}:null},rootLocator:e=>e.folderId||"root",list:Y3t,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:e=>String(e?.name||e?.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",itemSize:e=>Number(e?.size||0),isFolder(e,t){return this.isVideo(e,t)||St(t)?!1:e?.type==="folder"||e?.category==="folder"},folderLocator:(e,t)=>String(t.file_id||""),mountPayload:(e,t="")=>({f:t||e.folderId||"root"}),locatorFromMount:(e,t)=>String(e.f||t.folderId||"root"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:(e,t)=>String(e.l||t.folderId||"root"),filePayload(e,t,r){return{e:e.id,n:this.fileName(t),f:String(t?.file_id||""),sf:String(r?.file_id||""),sz:Number(t?.size||0),se:r?rr(this.fileName(r)):""}},isVideo:function(t,r){if(t?.category==="video")return Number(t?.size||0)>=DLe;let n=`.${String(t?.file_extension||"").toLowerCase()}`;return Number(t?.size||0)>=DLe&&(eX.includes(n)||sN(r))},async fileDetail(e,t,r,n){let s=await ht("ali"),i=[{vod_id:Dt([t.shareId,r.f||"",r.sf||""],{structured:!0}),vod_name:r.n||"\u963F\u91CC\u5206\u4EAB\u8D44\u6E90",vod_size:Number(r.sz||0)}],a=xo(s,i),o=[{vod_id:Dt([t.shareId,r.f||"",r.sf||"",t.url||""],{structured:!0}),vod_name:r.n||"\u963F\u91CC\u5206\u4EAB\u8D44\u6E90",vod_size:Number(r.sz||0)}],c=xo("\u79D2\u4F20115",o),u=op("ali",[{routeKey:ar.ali.original,from:a?.from,url:a?.url},{routeKey:ar.ali.rapid115,from:c?.from,url:c?.url}]);return{vod_id:n,vod_name:r.n||"\u963F\u91CC\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:u.from,vod_play_url:u.url}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("ali"),c=n.map(h=>{let p=this.fileName(h),m=xr(p,s,this.fileName);return{vod_id:Dt([t.shareId,String(h?.file_id||""),String(m?.file_id||"")],{structured:!0}),vod_name:p,vod_size:Number(h?.size||0)}}),u=n.map(h=>{let p=this.fileName(h),m=xr(p,s,this.fileName);return{vod_id:Dt([t.shareId,String(h?.file_id||""),String(m?.file_id||""),t.url||""],{structured:!0}),vod_name:p,vod_size:Number(h?.size||0)}}),l=xo(o,c),d=xo("\u79D2\u4F20115",u),f=op("ali",[{routeKey:ar.ali.original,from:l?.from,url:l?.url},{routeKey:ar.ali.rapid115,from:d?.from,url:d?.url}]);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${n.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:f.from,vod_play_url:f.url}},play:(e,t)=>sB(e,t)};WDn={key:"123share",shortName:"123\u5206\u4EAB",metaName:"\u{1F4E6} 123\u5408\u96C6",searchable:!1,init:b0,parseShare(e){let t=rl.getShareData(e);return t?.shareKey?{url:e,...t}:null},rootLocator:()=>"0",list:(e,t,r)=>rl.listShareFilesOneLayer(e,t||"0",r),categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:MDn,itemSize:Py,isFolder(e,t){return EYt(e,t)},isVideo:kDn,folderLocator:(e,t)=>nN(t),mountPayload:(e,t="")=>({f:t||"0"}),locatorFromMount:e=>String(e.f||"0"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||"0"),filePayload(e,t,r){return{e:e.id,n:this.fileName(t),f:nN(t),s3:WW(t),sz:Py(t),et:XW(t),dl:rYt(t),sf:nN(r),ss3:WW(r),ssz:Py(r),set:XW(r),se:r?rr(this.fileName(r)):""}},async fileDetail(e,t,r,n){let s=await ht("123"),i=Dt([t.shareKey,r.f||"",r.s3||"",r.sz||"",r.et||"",r.sf||"",r.ss3||"",r.ssz||"",r.set||"",r.se||""],{structured:!0}),a=rK(r.dl||"",r.sz||""),o=kp(r.n,r.sz),c=op("123",[a?{routeKey:ar[123].direct,from:Rx,url:`${o}$${a}`}:null,{routeKey:ar[123].original,from:s,url:`${o}$${i}`}]);return{vod_id:n,vod_name:r.n||"123\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:c.from,vod_play_url:c.url}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("123"),c=n.map(h=>{let p=this.fileName(h),m=xr(p,s,this.fileName);return{vod_id:Dt([t.shareKey,nN(h),WW(h),Py(h),XW(h),nN(m),WW(m),Py(m),XW(m),m?rr(this.fileName(m)):""],{structured:!0}),vod_name:p,vod_size:Py(h)}}),u=n.map(h=>{let p=rK(rYt(h),Py(h));return p?{vod_id:p,vod_name:this.fileName(h),vod_size:Py(h)}:null}).filter(Boolean),l=xo(Rx,u,!1),d=xo(o,c,!1),f=op("123",[{routeKey:ar[123].direct,from:l?.from,url:l?.url},{routeKey:ar[123].original,from:d?.from||o,url:d?.url}]);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:f.from,vod_play_url:f.url}},async play(e){await b0(e);let t=Br(e.body?.id||"");if(!t[0]||!t[1])return _l("123\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");try{if(t[0]==="direct"){let s=String(t[1]||"").trim();return s?await nK(e,s,t[2]):_l("123\u65E0\u9650\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740")}let r=await rl.getDownload(t[0],t[1],t[2],t[3],t[4]);if(!r)return _l("123\u5206\u4EAB\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");let n={parse:0,url:["\u539F\u753B",r]};if(t[5]&&t[6]&&t[7]&&t[8]){let s=await rl.getDownload(t[0],t[5],t[6],t[7],t[8]).catch(()=>"");if(s){let i=t[9]||"srt";Object.assign(n,tX(s,i))}}return n}catch(r){return _l(`123\u5206\u4EAB\u63A5\u53E3\u5F02\u5E38: ${r?.message||r}`)}}};JDn={key:"guangyashare",shortName:"\u5149\u9E2D\u5206\u4EAB",metaName:"\u{1F4E6} \u5149\u9E2D\u5408\u96C6",searchable:!1,multiSubtitle:!0,parseShare(e){let t=String(e||"").match(/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([a-zA-Z0-9_-]+)(?:\?[^\s#]*)?(?:#[^\s]*)?/i);if(!t)return null;let r="";try{let n=new URL(t[0]);r=String(n.searchParams.get("code")||n.searchParams.get("pwd")||"").trim(),!r&&n.hash&&(r=String(new URLSearchParams(n.hash.slice(1)).get("code")||n.hash.slice(1)).trim())}catch{}return{url:t[0],shareId:t[1],code:r}},rootLocator:()=>"",async list(e,t="",r={}){let n=NLe(t);return await Z4(e,n.fileId,{page:Math.max(1,Number(r?.page)||1),pageSize:200,currentPath:n.path})},items:e=>Array.isArray(e?.items)?e.items:[],context:e=>({currentPath:String(e?.currentPath||""),page:Number(e?.page||1),pageSize:Number(e?.pageSize||200),total:Number(e?.total||0)}),categoryPaging:!0,fileName:e=>String(e?.fileName||e?.name||e?.vod_name||"\u672A\u77E5").trim()||"\u672A\u77E5",itemSize:e=>Number(e?.fileSize||e?.size||e?.vod_size||0)||0,isFolder:e=>e?.isFolder===!0,isSubtitle:(e,t)=>e?.isSubtitle===!0||St(t),isVideo:e=>e?.isVideo===!0,folderLocator:(e,t)=>XDn(t?.fileId,t?.path||t?.fileName),mountPayload:(e,t="")=>({f:t||""}),locatorFromMount:e=>String(e.f||""),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||""),filePayload(e,t,r,n={}){let s=(Array.isArray(r)?r:r?[r]:[]).map(i=>({fileId:String(i?.fileId||""),fileName:this.fileName(i),fileSize:this.itemSize(i),ext:rr(this.fileName(i))})).filter(i=>i.fileId);return{e:e.id,n:this.fileName(t),f:String(t?.fileId||""),sz:this.itemSize(t),ss:s,l:String(n?.locator||"")}},async fileDetail(e,t,r,n){let s=await ht("guangya"),i=Array.isArray(r.ss)?r.ss:[];if(r.l)try{let o=NLe(r.l),c=[];for(let d=1;d<=100;d+=1){let f=await Z4(t,o.fileId,{page:d,pageSize:200,currentPath:o.path});if(c.push(...f.items.filter(h=>this.isSubtitle(h,this.fileName(h)))),!f.hasMore||f.items.length===0)break}let u=ac(r.n||"",c,this.fileName),l=new Map;for(let d of[...i,...u]){let f=String(d?.fileId||"");f&&l.set(f,{fileId:f,fileName:this.fileName(d),fileSize:this.itemSize(d),ext:rr(this.fileName(d))})}i=[...l.values()]}catch(o){console.warn("[guangyashare] subtitle rescan failed:",o?.message||o)}let a=AK(t,{fileId:r.f||"",fileName:r.n||"",fileSize:Number(r.sz||0)},i);return{vod_id:n,vod_name:r.n||"\u5149\u9E2D\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:s,vod_play_url:`${kp(r.n,r.sz)}$${a}`}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("guangya"),c=NLe(i?.locator||""),u=[];for(let p=1;p<=100;p+=1){let m=await Z4(t,c.fileId,{page:p,pageSize:200,currentPath:c.path});if(u.push(...m.items),!m.hasMore||m.items.length===0)break}let l=u.filter(p=>this.isVideo(p,this.fileName(p))),d=u.filter(p=>this.isSubtitle(p,this.fileName(p))),f=Gt(l).map(p=>{let m=this.fileName(p),g=ac(m,d,this.fileName);return{vod_id:AK(t,p,g),vod_name:m,vod_size:this.itemSize(p)}}),h=xo(o,f,!1);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u5149\u9E2D\u5206\u4EAB\u64AD\u653E\u5217\u8868: ${f.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:h?.from||o,vod_play_url:h?.url||""}},async play(e){return await EK(e)}},ZDn={key:"139share",shortName:"139\u5206\u4EAB",metaName:"\u{1F4E6} 139\u5408\u96C6",searchable:!1,parseShare:vDn,rootLocator:()=>"root",list:H5t,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:[],context:(e,t)=>({linkID:e?.linkID||t.linkID||""}),fileName:BDn,itemSize:xLe,isFolder:(e,t)=>!St(t)&&!pB(t)&&e?.itemType==="folder",isVideo:(e,t)=>e?.itemType!=="folder"&&(Number(e?.coType)===3||pB(t))&&!!e?.coID,folderLocator:(e,t)=>String(t.path||""),mountPayload:(e,t="")=>({f:t||"root"}),locatorFromMount:e=>String(e.f||"root"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||"root"),filePayload(e,t,r,n){return{e:e.id,n:this.fileName(t),c:String(t?.coID||t?.contentId||""),l:n?.linkID||e.linkID||"",sf:String(r?.coID||r?.contentId||""),se:r?rr(this.fileName(r)):"",p:String(t?.path||""),sp:String(r?.path||""),sz:xLe(t)}},async fileDetail(e,t,r,n){let s=await ht("yidong"),i=Dt([r.c||"",r.l||t.linkID||"",r.sf||"",r.se||"",r.p||"",r.sp||""],{structured:!0});return{vod_id:n,vod_name:r.n||"139\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:s,vod_play_url:`${kp(r.n,r.sz)}$${i}`}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("yidong"),c=n.map(l=>{let d=this.fileName(l),f=xr(d,s,this.fileName);return{vod_id:Dt([String(l?.coID||l?.contentId||""),i?.linkID||t.linkID||"",String(f?.coID||f?.contentId||""),f?rr(this.fileName(f)):"",String(l?.path||""),String(f?.path||"")],{structured:!0}),vod_name:d,vod_size:xLe(l)}}),u=xo(o,c,!1);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:u?.from||o,vod_play_url:u?.url||""}},async play(e){let t=Br(e.body?.id||"");if(!t[0]||!t[1])return _l("139\u5206\u4EAB\u64AD\u653E\u53C2\u6570\u9519\u8BEF");try{let r=await gb.getSharePlayInfo(t[0],t[1],t[4]||""),n=r?.url||"";if(!n)return _l(r?.error||"139\u5206\u4EAB\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n]};if(t[2]){let a=(await gb.getSharePlayInfo(t[2],t[1],t[5]||""))?.url||"";if(a){let o=t[3]||"srt";Object.assign(s,tX(a,o))}}return s}catch(r){return _l(`139\u5206\u4EAB\u63A5\u53E3\u5F02\u5E38: ${r?.message||r}`)}}},ePn={key:"baidushare",shortName:"\u767E\u5EA6\u5206\u4EAB",metaName:"\u{1F4E6} \u767E\u5EA6\u5408\u96C6",searchable:!1,init:n_,parseShare(e){let t=kxe(e);return t?.shareId?{url:e,...t}:null},rootLocator:()=>"/",list:l8t,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:[],context:e=>({meta:e?.meta||{}}),fileName:UDn,itemSize:wLe,isFolder(e,t){if(this.isVideo(e,t)||St(t))return!1;let r=e?.isdir??e?.is_dir;return r!=null?Number(r)===1:!1},isVideo:(e,t)=>(Number(e?.category)===1||sN(t))&&!!N3(e),folderLocator:(e,t)=>String(t?.path||"/"),mountPayload:(e,t="")=>({p:t||"/"}),locatorFromMount:e=>String(e.p||"/"),playlistPayload:(e,t="")=>({l:t||""}),locatorFromPlaylist:e=>String(e.l||"/"),filePayload(e,t,r,n){let s=n?.meta||{};return{e:e.id,n:this.fileName(t),p:String(t?.path||""),u:String(s?.uk||""),sid:String(s?.shareid||""),f:N3(t),su:String(s?.surl||e.shareId||""),pw:String(s?.pwd||e.sharePwd||""),sf:N3(r),se:r?rr(this.fileName(r)):"",sz:wLe(t)}},async fileDetail(e,t,r,n){let s=await ht("baidu"),i=Dt([String(r.p||"").replaceAll("#","\0"),r.u||"",r.sid||"",r.f||"",r.su||t.shareId||"",encodeURIComponent(r.pw||""),r.sf||""],{structured:!0});return{vod_id:n,vod_name:r.n||"\u767E\u5EA6\u5206\u4EAB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:s,vod_play_url:`${kp(r.n,r.sz)}$${i}`}},async playlistDetail(e,t,r,n,s,i,a){let o=await ht("baidu"),c=i?.meta||{},u=n.map(d=>{let f=this.fileName(d),h=xr(f,s,this.fileName);return{vod_id:Dt([String(d?.path||"").replaceAll("#","\0"),String(c?.uk||""),String(c?.shareid||""),N3(d),String(c?.surl||t.shareId||""),encodeURIComponent(String(c?.pwd||t.sharePwd||"")),N3(h)],{structured:!0}),vod_name:f,vod_size:wLe(d)}}),l=xo(o,u,!1);return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${u.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:l?.from||o,vod_play_url:l?.url||""}},play:(e,t)=>KG(e,t)},ULe={key:"smb",shortName:"SMB",metaName:"\u{1F5C4}\uFE0F SMB\u6302\u8F7D",searchable:!1,parseShare:xDn,rootLocator:e=>ga(e.rootPath||""),list:wDn,categoryPaging:!0,items:e=>Array.isArray(e?.items)?e.items:Array.isArray(e)?e:[],fileName:nYt,itemSize:e=>Number(e?.size||0),isFolder:e=>typeof e?.isDirectory=="function"?e.isDirectory():!!e?.directory,isVideo:(e,t)=>CDn(t),folderLocator:(e,t,r)=>ga(r?.locator||e.rootPath||"",nYt(t)),mountPayload:(e,t="")=>({p:ga(t||e.rootPath||"")}),locatorFromMount:(e,t)=>ga(e.p||t.rootPath||""),playlistPayload:(e,t="")=>({p:ga(t||e.rootPath||"")}),locatorFromPlaylist:(e,t)=>ga(e.p||t.rootPath||""),filePayload(e,t,r,n){let s=this.fileName(t),i=ga(n?.locator||e.rootPath||"",s),a=r?ga(n?.locator||e.rootPath||"",this.fileName(r)):"";return{e:e.id,p:i,n:s,sz:Number(t?.size||0),sp:a}},async fileDetail(e,t,r,n){let s=M3({e:t.id,p:ga(r.p),n:r.n||P3(r.p),sp:ga(r.sp||"")});return{vod_id:n,vod_name:r.n||"SMB\u8D44\u6E90",vod_content:`\u6587\u4EF6\u540D: ${r.n||""} +\u6765\u6E90: ${Hs(t)}`,vod_play_from:"SMB",vod_play_url:`${kp(r.n,r.sz)}$${s}`}},async playlistDetail(e,t,r,n,s,i,a){let o=ga(i?.locator||t.rootPath||""),c=n.map(u=>{let l=this.fileName(u),d=xr(l,s,this.fileName),f=M3({e:t.id,p:ga(o,l),n:l,sz:Number(u?.size||0),sp:d?ga(o,this.fileName(d)):""});return`${kp(l,u?.size)}$${f}`}).join("#");return{vod_id:a,vod_name:r.n||"\u64AD\u653E\u5217\u8868",vod_content:`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${n.length}\u4E2A\u89C6\u9891 +\u6765\u6E90: ${Hs(t)}`,vod_play_from:"SMB",vod_play_url:c}},async play(e){let t=k3(e.body?.id);if(!t)return _l("\u65E0\u6548\u7684SMB\u64AD\u653EID");let{entries:r}=await iN(e.server,ULe),n=r.find(c=>c.id===String(t.e));if(!n)return _l("SMB\u914D\u7F6E\u5DF2\u4E0D\u5B58\u5728");let s=ga(t.p),i=String(t.n||P3(s)||"video"),a=tYt(e,n,s,i),o=t.sp?tYt(e,n,ga(t.sp),P3(t.sp)):"";return{parse:0,url:a,header:{},subt:o,...tX(o,rX(t.sp)||"srt")}}};xc={"115share":V0,alishare:QDn,quarkshare:iYt("quarkshare"),ucshare:iYt("ucshare"),"123share":WDn,"139share":ZDn,baidushare:ePn,guangyashare:JDn,smb:ULe};dPn=xYt()});async function qLe(e){e.get("/settings",async(t,r)=>{r.send({code:0,data:await $Le(t.server)})}),e.post("/settings",async(t,r)=>{let n=await hPn(t.server,t.body||{});r.send({code:0,data:n})})}var OYt,oX,fPn,$Le,hPn,HLe=ie(()=>{OYt=["\u6211\u7684\u767E\u5EA6 0","\u6211\u7684\u5938\u514B 0","\u6211\u7684\u963F\u91CC 0","\u6211\u7684115 0","\u6211\u7684123 0","\u6211\u7684\u5929\u7FFC 0","\u6211\u7684UC 0","\u6211\u7684\u8FC5\u96F7 0"].join(` +`),oX=e=>String(e||"").trim(),fPn=(e,t)=>{let r=oX(e?.text);if(r)return r;let n=oX(t?.config?.mycloud?.text);return n||OYt},$Le=async e=>{let t={text:oX(e.config?.mycloud?.text)},r=await e.db.getObjectDefault("/config/mycloud",t);return{text:fPn(r,e)}},hPn=async(e,t={})=>{let r={text:oX(t.text)};return await e.db.push("/config/mycloud",r),{text:r.text||OYt}}});var nQt={};kt(nQt,{default:()=>TLn});function Ly(e,t){return`${e}@@@${Buffer.from(JSON.stringify(t)).toString("base64url")}`}function dX(e){let t=String(e||""),r=t.indexOf("@@@");if(r<0)return null;try{return{kind:t.slice(0,r),data:JSON.parse(Buffer.from(t.slice(r+3),"base64url").toString("utf8"))}}catch{return null}}function KYt(e=""){return Buffer.from(String(e||""),"utf8").toString("base64url")}function GYt(e=""){return Buffer.from(String(e||""),"base64url").toString("utf8")}function MYt(e=""){return KYt(e)}function kYt(e=""){if(!e)return"";try{return GYt(e)}catch{try{return decodeURIComponent(e)}catch{return String(e||"")}}}function xPn(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:e?.server?.address?.()?.url||""}function wPn(e){return String(e?.server?.prefix||"").replace(/\/$/,"")}function lX(e=""){let t=String(e||"").toLowerCase().match(/\.([a-z0-9]+)$/);return t?t[1]:""}function NPn(e=""){return IPn[lX(e)]||"application/octet-stream"}function OPn(e=""){let t=String(e||"").replace(/^\./,"").toLowerCase()||"srt";return RPn[t]||"text/plain; charset=utf-8"}function DPn(e={}){return KYt(JSON.stringify({...e,exp:Date.now()+SPn}))}function PPn(e=""){let t=String(e||"").replace(/\.[a-z0-9]+$/i,"");try{let r=JSON.parse(GYt(t));return!r||typeof r!="object"||Number(r.exp||0)t.endsWith(r))}function WLe(e){return e!=null&&e!==""&&Number.isFinite(Number(e))}function BYt(e){return String(e||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function QLe(e,t=0){let r=Number(t||0);return r>0?`${BYt(e)} [${Zu(r)}]`:BYt(e)}function qb(e,t="srt",r="\u5916\u6302\u5B57\u5E55"){if(!e)return{};let n={url:e,name:r,format:t||"srt"};return{subt:e,subtitle:e,subs_urls:[e],subs:[n],extra:{subt:e,subtitle:e,subs_urls:[e],subs:[n]}}}function _a(e,t={}){return Xr(e,{msg:e,...t})}function BPn(e,t){let r=String(t??"").trim();return!r||r==="0"?Up[e].rootId:r}function UPn(e){let t=String(e||"").toLowerCase();for(let r of CPn)if(Up[r].aliases.some(s=>t.includes(String(s).toLowerCase())))return r;return""}function FPn(e,t){let r=String(e||"").trim();if(!r)return null;let n=r.match(/^(.+?)\s+(\S.*)$/),s=String(n?.[1]||r).trim(),i=String(n?.[2]||"0").trim(),a=UPn(s);if(!a)return null;let o=BPn(a,i);return{index:t,provider:a,displayName:s||Up[a].fallbackName,baseDisplayName:s||Up[a].fallbackName,inputFolderId:i||"0",folderId:o}}function UYt(e){let t=String(e||"").trim();if(!t||t==="0")return"\u6839\u76EE\u5F55";let r=t.split("/").map(n=>n.trim()).filter(Boolean);return r[r.length-1]||t}function $Pn(e){return String(e||"").split(/\r?\n|[、,,;]/).map((t,r)=>FPn(t,r)).filter(Boolean)}async function XLe(e){let t=await $Le(e);return $Pn(t.text)}function YYt(e){let t=[],r=new Map;for(let n of e){let s=n.baseDisplayName||n.displayName,i=`${n.provider}@@@${s}`,a=r.get(i);a||(a={provider:n.provider,displayName:s,typeId:Ly("group",{provider:n.provider,displayName:s}),mounts:[]},r.set(i,a),t.push(a)),a.mounts.push(n)}return t}function qPn(e){let t=new Map;return e.forEach(r=>{let n=UYt(r.inputFolderId);t.set(n,(t.get(n)||0)+1)}),e.map(r=>{let n=UYt(r.inputFolderId);return{n:(t.get(n)||0)>1?`${n} (${r.inputFolderId||"0"})`:n,v:String(r.index)}})}function HPn(e){let t={};for(let r of e)r.mounts.length<=1||(t[r.typeId]=[{key:"mount",name:"\u76EE\u5F55",init:String(r.mounts[0].index),value:qPn(r.mounts)}]);return t}function VPn(e={}){return e.extend||e.filters||e.ext||{}}function My(e,t,r,n){let s=Ly("folder",{provider:e,name:t,folderId:r,mountName:n?.displayName||""});return{vod_id:s,type_id:s,type_name:t,vod_name:t,vod_pic:pPn,vod_remarks:"\u76EE\u5F55",vod_tag:"folder",cate:{id:s,name:t},ratio:1.33}}function ky(e,t,r,n){let s=Number(n||0);return{vod_id:Ly("file",{provider:e,name:t,playId:r,size:s}),vod_name:t,vod_pic:mPn,vod_remarks:Zu(s),ratio:1.33}}function QYt(e=""){let t=Br(e);return t[0]!=="own"?"":(t[0]="rapid-own",Dt(t,{structured:!0}))}function jPn(e,t,r,n,s){let i=t||n?.displayName||"\u672C\u5C42\u64AD\u653E\u5217\u8868";return{vod_id:Ly("playlist",{provider:e,name:i,folderId:r,mountName:n?.displayName||"",inputFolderId:n?.inputFolderId||""}),vod_name:"\u64AD\u653E\u5217\u8868",vod_pic:gPn,vod_remarks:`${s}\u4E2A\u89C6\u9891`,ratio:1.33}}function By(e,t,r,n,s,i={}){if(i.includePlaylist===!1||!Array.isArray(s)||s.length<=1)return;let a=i.playlistName||`${n?.displayName||"\u672C\u5C42"} \u64AD\u653E\u5217\u8868`;e.push(jPn(t,a,r,n,s.length))}function aN(e){return String(e?.FileName||e?.file_name||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function U3(e){return String(e?.FileId||e?.fileId||e?.file_id||"")}function zLe(e){return Number(e?.Size||e?.size||0)}function WYt(e,t){return!e||St(t)||Al(t)?!1:WLe(e?.fc)?Number(e.fc)===0:!1}function KPn(e,t){return!e||WYt(e,t)||St(t)?!1:Al(t)}function XYt(e,t){return!e||St(t)||Al(t)?!1:WLe(e?.Type)?Number(e.Type)===1:!1}function GPn(e){let t=aN(e);return!e||XYt(e,t)||St(t)?!1:(Number(e?.Category)===2||Al(t))&&!!U3(e)}function JYt(e,t){return!e||St(t)||Al(t)?!1:e?.type==="folder"||e?.category==="folder"}function zPn(e,t){if(!e||JYt(e,t)||St(t))return!1;let r=`.${String(e?.file_extension||"").toLowerCase()}`;return Number(e?.size||0)>=HYt&&(e?.category==="video"||jYt.includes(r)||Al(t))}function F3(e){return String(e?.server_filename||e?.path?.split("/").pop()||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function ZYt(e,t){if(!e||St(t)||Al(t))return!1;let r=e?.isdir??e?.is_dir;return r!=null?Number(r)===1:!1}function YPn(e){let t=F3(e);return!e||ZYt(e,t)||St(t)?!1:(Number(e?.category)===1||Al(t))&&!!String(e?.fs_id||e?.fsid||"")}function oN(e){return String(e?.file_name||e?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function FYt(e){return Number(e?.size||e?.file_size||e?.fileSize||e?.file?.size||0)}function YLe(e){return String(e?.fid||e?.file_id||e?.fileId||e?.FileId||"")}function eQt(e,t){return!e||St(t)||Al(t)?!1:!!(e?.dir===!0||e?.dir===1||e?.type==="folder"||e?.kind==="folder"||WLe(e?.file_type)&&Number(e.file_type)===0)}function QPn(e,t=oN(e)){return!e||eQt(e,t)||St(t)?!1:e?.obj_category==="video"||e?.category==="video"?!0:Al(t)}function WPn(e,t){return!e||St(t)||Al(t)?!1:e.isFolder===!0||e.type==="folder"||e.kind==="folder"}function cN(e){return String(e?.name||e?.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function uX(e){return String(e?.id||e?.file_id||e?.fileId||"")}function XPn(e){return Number(e?.size||e?.file_size||e?.fileSize||0)}function tQt(e,t){return!e||St(t)||Al(t)?!1:String(e?.kind||"").toLowerCase().includes("folder")||e?.isDirectory===!0||e?.is_dir===!0}function JPn(e,t=cN(e)){return!e||tQt(e,t)||St(t)?!1:Al(t)&&!!uX(e)}async function ZPn(e,t,r,n,s={}){await lp(e);let i=await Za(e.server),{list:a,count:o}=await Cx(i,r,n),c=[],u=[],l=[];for(let h of a||[]){let p=String(h?.n||h?.name||"\u672A\u77E5").trim()||"\u672A\u77E5";if(WYt(h,p)){let m=String(h.cid||"");c.push(My("115",p,m,t))}else St(p)?l.push(h):KPn(h,p)&&u.push(h)}let d=c,f=Gt(u);By(d,"115",r,t,f,s);for(let h of f){let p=String(h?.n||h?.name||"\u672A\u77E5").trim()||"\u672A\u77E5",m=String(h.pc||h.pick_code||"");if(!m)continue;let g=xr(p,l,A=>String(A?.n||A?.name||"")),_=["own",m],y=String(g?.pc||g?.pick_code||"");for(y&&_.push(y,rr(String(g?.n||g?.name||"")));_.length<4;)_.push("");_.push(p,String(Number(h.s||h.size||0)),sf(h.sha1||h.sha||h.file_sha1)),d.push(ky("115",p,Dt(_,{structured:!0}),Number(h.s||h.size||0)))}return{page:n,pagecount:Math.max(1,Math.ceil(Number(o||0)/DYt)),limit:DYt,total:Number(o||0),list:d}}async function eLn(e,t,r,n,s={}){await b0(e);let i=await rl.listOwnFiles(r,n,VLe),a=[],o=[],c=[];for(let f of[...i?.folderList||[],...i?.fileList||[]]){let h=aN(f),p=U3(f);U3(f)&&(XYt(f,h)?a.push(My("123",h,p,t)):St(h)?c.push(f):GPn(f)&&o.push(f))}let u=a,l=Gt(o);By(u,"123",r,t,l,s);for(let f of l){let h=aN(f),p=xr(h,c,aN),m=["own",U3(f),String(f?.S3KeyFlag||f?.s3KeyFlag||""),String(zLe(f)),String(f?.Etag||f?.etag||""),encodeURIComponent(h)];p&&m.push(U3(p),String(p?.S3KeyFlag||p?.s3KeyFlag||""),String(zLe(p)),String(p?.Etag||p?.etag||""),encodeURIComponent(aN(p)),rr(aN(p))),u.push(ky("123",h,m.join("*"),zLe(f)))}let d=Number(i?.count||u.length||0);return{page:n,pagecount:Math.max(1,Math.ceil(d/VLe)),limit:VLe,total:Math.max(d,u.length),list:u}}async function tLn(e,t,r,n,s={}){await Wg(e);let i="",a={items:[],next_marker:""},o=1;for(let p=1;p<=n&&(a=await nUt(r,i),o=p,!(p===n||(i=a.next_marker,i||(a={items:[],next_marker:""}),!i)));p+=1);let c=Array.isArray(a?.items)?a.items:[],u=String(a?.next_marker||""),l=[],d=[],f=[];for(let p of c){let m=String(p?.name||"\u672A\u77E5").trim()||"\u672A\u77E5";JYt(p,m)?l.push(My("ali",m,p.file_id,t)):p?.type==="file"&&St(m)?f.push(p):p?.type==="file"&&zPn(p,m)&&d.push(p)}let h=Gt(d);By(l,"ali",r,t,h,s);for(let p of h){let m=String(p.name||"\u672A\u77E5").trim()||"\u672A\u77E5",g=xr(m,f,y=>y.name),_=["own",p.file_id];g?.file_id&&_.push(g.file_id,rr(g.name)),l.push(ky("ali",m,_.join("*"),Number(p.size||0)))}return{page:n,pagecount:u?n+1:Math.min(n,o),limit:jLe,total:(n-1)*jLe+c.length+(u?jLe:0),list:l}}async function rLn(e,t,r,n,s={}){await n_(e);let i=await b8t(r||"/",n,KLe),a=[],o=[],c=[];for(let f of[...i?.folderList||[],...i?.fileList||[]]){let h=F3(f);if(ZYt(f,h)){let p=String(f?.path||"/");a.push(My("baidu",h,p,t))}else St(h)?c.push(f):YPn(f)&&o.push(f)}let u=a,l=Gt(o);By(u,"baidu",r,t,l,s);for(let f of l){let h=F3(f),p=String(f?.fs_id||f?.fsid||""),m=String(f?.path||""),g=xr(h,c,F3),_=["own",p,encodeURIComponent(m)],y=String(g?.fs_id||g?.fsid||"");y&&_.push(y,rr(F3(g))),u.push(ky("baidu",h,_.join("*"),Number(f.size||0)))}let d=Number(i?.count||0);return{page:n,pagecount:d>=KLe?n+1:n,limit:KLe,total:9999,list:u}}async function $Yt(e,t,r,n,s,i={}){let a=s==="uc";a?await hp(e):await dp(e);let o=a?await BUt(r||"0",n,cX):await gUt(r||"0",n,cX),c=[],u=[],l=[];for(let p of[...o?.folderList||[],...o?.fileList||[]]){let m=YLe(p);if(!m)continue;let g=oN(p);eQt(p,g)?c.push(My(s,g,m,t)):St(g)?l.push(p):QPn(p,g)&&FYt(p)>=HYt&&u.push(p)}let d=c,f=Gt(u);By(d,s,r,t,f,i);for(let p of f){let m=oN(p),g=xr(m,l,oN),_=["own2",YLe(p),MYt(m)],y=YLe(g);y&&_.push(y,rr(oN(g)),MYt(oN(g))),d.push(ky(s,m,_.join("*"),FYt(p)))}let h=Number(o?.count||0);return{page:n,pagecount:h>n*cX?n+1:n,limit:cX,total:Math.max(h,d.length),list:d}}async function nLn(e,t,r,n,s={}){await mb(e);let i=await dy.listOwnFiles(r||"-11",{pageSize:_Pn}),a=[],o=[],c=[];for(let l of i||[])l?.id&&(WPn(l,l.name)?a.push(My("tianyi",l.name,l.id,t)):Al(l.name)?o.push(l):St(l.name)&&c.push(l));let u=Gt(o);By(a,"tianyi",r,t,u,s);for(let l of u){let d=xr(l.name,c,h=>h.name),f=["own",l.id];d?.id&&f.push(d.id,rr(d.name)),a.push(ky("tianyi",l.name,f.join("*"),Number(l.size||0)))}return{page:n,pagecount:1,limit:a.length,total:a.length,list:a}}async function sLn(e,t,r,n,s={}){await nu(e);let i=await kFt(e,r||"",n,PYt),a=[],o=[],c=[];for(let f of[...i?.folderList||[],...i?.fileList||[]]){let h=uX(f);if(!h)continue;let p=cN(f);tQt(f,p)?a.push(My("xunlei",p,h,t)):St(p)?c.push(f):JPn(f,p)&&o.push(f)}let u=a,l=Gt(o);By(u,"xunlei",r,t,l,s);for(let f of l){let h=cN(f),p=xr(h,c,cN),m=["own",uX(f),encodeURIComponent(h)],g=uX(p);g&&m.push(g,encodeURIComponent(cN(p)),rr(cN(p))),u.push(ky("xunlei",h,m.join("*"),XPn(f)))}let d=Number(i?.count||i?.total||0);return{page:n,pagecount:Number(i?.pagecount||n)||n,limit:PYt,total:Math.max(d,u.length),list:u}}async function iLn(e,t,r,n,s={}){let i=await YT(e.server,r||"",n,$3),a=[],o=[],c=[];for(let f of i.list||[]){let h=String(f?.name||f?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5",p=String(f?.fileId||"");p&&(Nx(f)?a.push(My("guangya",h,p,t)):St(h)?c.push(f):JRe(f)&&o.push(f))}let u=a,l=Gt(o);By(u,"guangya",r,t,l,s);for(let f of l){let h=String(f?.name||f?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5",m=ac(h,c,y=>String(y?.name||y?.fileName||"")).map(y=>({fileId:String(y?.fileId||""),fileName:String(y?.name||y?.fileName||""),fileSize:Number(y?.fileSize||y?.size||0)||0,ext:rr(y?.name||y?.fileName||"")})).filter(y=>y.fileId),g=Number(f?.vod_size||f?.fileSize||f?.size||0)||0,_=Dt(["own","v2",String(f.fileId),h,g,JSON.stringify({ss:m}),String(r||"")],{structured:!0});u.push(ky("guangya",h,_,g))}let d=Number(i.total||0);return{page:n,pagecount:d>n*$3?n+1:n,limit:$3,total:Math.max(d,u.length),list:u}}async function rQt(e,t,r,n,s,i={}){return r==="115"?await ZPn(e,t,n,s,i):r==="123"?await eLn(e,t,n,s,i):r==="ali"?await tLn(e,t,n,s,i):r==="baidu"?await rLn(e,t,n,s,i):r==="quark"?await $Yt(e,t,n,s,"quark",i):r==="uc"?await $Yt(e,t,n,s,"uc",i):r==="tianyi"?await nLn(e,t,n,s,i):r==="xunlei"?await sLn(e,t,n,s,i):r==="guangya"?await iLn(e,t,n,s,i):{page:s,pagecount:1,limit:0,total:0,list:[]}}async function aLn(e){let t=await XLe(e.server),r=new Set(t.map(s=>s.provider)),n=[];return r.has("115")&&n.push(lp(e)),r.has("123")&&n.push(b0(e)),r.has("ali")&&n.push(Wg(e)),r.has("baidu")&&n.push(n_(e)),r.has("quark")&&n.push(dp(e)),r.has("tianyi")&&n.push(mb(e)),r.has("uc")&&n.push(hp(e)),r.has("xunlei")&&n.push(nu(e)),await Promise.allSettled(n),{}}async function oLn(e){let t=await XLe(e.server),r=YYt(t);return{class:r.map(n=>({type_id:n.typeId,type_name:n.displayName})),filters:HPn(r)}}async function cLn(e){let t=e.body||{},r=dX(t.id||t.tid||t.t),n=r?.data||{},s=n.provider;if(!Up[s])return{page:1,pagecount:1,limit:0,total:0,list:[]};let i=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),a=r.kind==="mount"?n:null,o=n.folderId;if(r.kind==="group"){let c=await XLe(e.server),l=YYt(c).find(h=>h.provider===s&&h.displayName===n.displayName),d=VPn(t),f=String(d.mount??"");a=l?.mounts.find(h=>String(h.index)===f)||l?.mounts[0]||null,s=a?.provider||s,o=a?.folderId||Up[s].rootId}try{return await rQt(e,a,s,o,i)}catch(c){console.error(`[mycloud][${s}][category] failed:`,c?.message||c)}return{page:i,pagecount:1,limit:0,total:0,list:[]}}async function uLn(e,t,r,n){let s=[],i=new Set,a=1,o=1;for(;a<=Math.max(o,a)&&a<=VYt;){let c=await rQt(e,n,t,r,a,{includePlaylist:!1}),u=Array.isArray(c?.list)?c.list:[],l=0;for(let d of u){let f=dX(d?.vod_id);if(f?.kind!=="file")continue;let h=f.data||{},p=`${t}@@@${h.playId||d.vod_id}`;i.has(p)||(i.add(p),s.push({...d,data:h,vod_name:h.name||d.vod_name||"\u64AD\u653E"}),l+=1)}if(o=Math.max(o,Number(c?.pagecount||a)||a),a>=o||a>1&&l===0&&u.length===0)break;a+=1}return Gt(s)}async function lLn(e,t,r,n){let s=r.provider,i=r.folderId||Up[s]?.rootId,a=r.name||n.fallbackVodName||"\u64AD\u653E\u5217\u8868",o=await ht(n.panKey||s),c=await uLn(e,s,i,r),u=c.map(g=>{let _=g.data?.name||g.vod_name||"\u64AD\u653E",y=g.data?.playId||"",A=Number(g.data?.size||0);return{name:_,playId:y,size:A}}),l=u.map(({name:g,playId:_,size:y})=>`${QLe(g,y)}$${Ly("play",{provider:s,name:g,playId:_})}`).join("#"),f=s==="115"&&await GE(e.server)?u.map(({name:g,playId:_,size:y})=>`${QLe(g,y)}$${Ly("play",{provider:s,name:g,playId:QYt(_)})}`).join("#"):"",h=n.panKey||s,p=op(h,[{routeKey:s==="115"?ar[115].original:`${h}.original`,from:o,url:l},f?{routeKey:ar[115].rapid123,from:"\u79D2\u4F20123",url:f}:null]),m=[`\u672C\u5C42\u64AD\u653E\u5217\u8868: ${c.length}\u4E2A\u89C6\u9891`,r.mountName?`\u6765\u6E90: ${r.mountName}`:"",r.inputFolderId?`\u76EE\u5F55: ${r.inputFolderId}`:""].filter(Boolean).join(` +`);return{vod_id:t,vod_name:a,vod_content:m,vod_play_from:p.from,vod_play_url:p.url}}async function dLn(e){let t=Array.isArray(e.body.id)?e.body.id:[e.body.id],r=[];for(let n of t){let s=dX(n),i=s?.data||{},a=i.provider,o=Up[a]||{};if(s?.kind==="playlist"&&Up[a]){try{r.push(await lLn(e,n,i,o))}catch(m){console.error(`[mycloud][${a}][playlist] failed:`,m?.message||m),r.push({vod_id:String(n||""),vod_name:i.name||o.fallbackVodName||"\u64AD\u653E\u5217\u8868",vod_content:m?.message||"\u8BFB\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"})}continue}if(s?.kind!=="file"){r.push({vod_id:String(n||""),vod_name:i.name||o.fallbackVodName||"\u7F51\u76D8\u8D44\u6E90",vod_remarks:"\u76EE\u5F55"});continue}let c=i.name||o.fallbackVodName||"\u7F51\u76D8\u8D44\u6E90",u=Number(i.size||0),l=await ht(o.panKey||a),d=a==="115"&&await GE(e.server)?QYt(i.playId||""):"",f=QLe(c,u),h=o.panKey||a,p=op(h,[{routeKey:a==="115"?ar[115].original:`${h}.original`,from:l,url:`${f}$${Ly("play",{provider:a,name:c,playId:i.playId||""})}`},d?{routeKey:ar[115].rapid123,from:"\u79D2\u4F20123",url:`${f}$${Ly("play",{provider:a,name:c,playId:d})}`}:null]);r.push({vod_id:n,vod_name:c,vod_content:[`\u6587\u4EF6\u540D: ${c}`,u>0?`\u5927\u5C0F: ${Zu(u)}`:""].filter(Boolean).join(` +`),vod_play_from:p.from,vod_play_url:p.url})}return{list:r}}async function fLn(e,t){await lp(e);let r=Br(t);if(!["own","rapid-own"].includes(r[0])||!r[1])return _a("115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await Za(e.server);if(r[0]==="rapid-own"){let a=await zE(e.server,{pickCode:r[1],name:r[4],size:Number(r[5]||0),sha1:r[6]});if(!a.success||!a.downloadUrl)return _a(a.message||"115\u2192\u79D2\u4F20123\u5931\u8D25",{mode:a.mode,downloaded:!1,uploaded:!1,...typeof a.cleaned=="boolean"?{cleaned:a.cleaned}:{}});let o=GT(a.downloadUrl);return o?(o.extra={rapidTransfer:{mode:a.mode,downloaded:!1,uploaded:!1,cleaned:a.cleaned===!0}},o):_a("\u79D2\u4F20123\u6210\u529F\u4F46123\u65E0\u9650\u64AD\u653E\u5730\u5740\u65E0\u6548")}let s=await xx(n,r[1]);if(!s?.url)return _a(s?.msg||"115 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let i={parse:0,url:["\u539F\u753B",s.url],header:{"User-Agent":APn,Cookie:s.cookie||n,Referer:"https://115.com/",Origin:"https://115.com"}};if(r[2]){let o=(await xx(n,r[2]))?.url||"";if(o){let c=r[3]||"srt";Object.assign(i,qb(o,c))}}return i}async function hLn(e,t){await b0(e);let r=String(t||"").split("*");if(r[0]!=="own"||r.length<5)return _a("123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF");let[,n,s,i,a,o,c,u,l,d,f,h]=r,p="",m="";try{p=decodeURIComponent(o||"")}catch{p=String(o||"")}try{m=decodeURIComponent(f||"")}catch{m=String(f||"")}let g=await rl.getOwnDownload(n,s,i,a,p);if(!g)return _a("123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let _={parse:0,url:["\u539F\u753B",g]};if(c&&u&&l&&d){let y=await rl.getOwnDownload(c,u,l,d,m);if(y){let A=h||rr(m)||"srt";Object.assign(_,qb(y,A))}}return _}async function pLn(e,t){await Wg(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return _a("\u963F\u91CC\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await ECe(r[1]);if(!n)return _a("\u963F\u91CC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n]};if(r[2]){let i=await ECe(r[2]);if(i){let a=r[3]||"srt";Object.assign(s,qb(i,a))}}return s}async function mLn(e,t){await n_(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return _a("\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await GG(r[1]);if(!n)return _a("\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n],header:{"User-Agent":EPn}};if(r[3]){let i=await GG(r[3]),a=r[4]||"srt";i&&Object.assign(s,qb(i,a))}return s}async function qYt(e,t,r){let n=r==="uc";n?await hp(e):await dp(e);let s=String(t||"").split("*"),i="",a="",o="",c="",u="";if(s[0]==="own2"?(i=s[1]||"",a=kYt(s[2]||""),o=s[3]||"",c=s[4]||"",u=kYt(s[5]||"")):s[0]==="own"&&(i=s[1]||"",o=s[2]||"",c=s[3]||""),!i)return _a(`${n?"UC":"\u5938\u514B"}\u64AD\u653E\u53C2\u6570\u9519\u8BEF`);let l=n?await XK(i):await FK(i),d=String(l?.download_url||"").trim();if(!d)return _a(`${n?"UC":"\u5938\u514B"}\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740`);let f={parse:0,url:["\u539F\u753B",d],header:zYt(r)};if(o){let h=n?await XK(o):await FK(o),p=String(h?.download_url||"").trim(),m=c||rr(u)||"srt";p&&Object.assign(f,qb(p,m,u||"\u5916\u6302\u5B57\u5E55"))}return f}async function gLn(e,t){let r=String(e.params?.provider||""),n=String(e.params?.mode||"");if(!["baidu","quark","uc","guangya"].includes(r)||!["down","redirect","subt"].includes(n))return t.code(404),"not found";let s=PPn(e.params?.token||"");if(!s||s.p!==r||!s.f)return t.code(403),"invalid proxy token";if(r==="guangya")return await nCe(e,t,{fileId:s.f,fileName:String(s.n||""),fileSize:Number(s.s||0)||0,format:String(s.se||""),mode:n,end:String(s.outputExt||lX(e.params?.token||""))});try{r==="baidu"?await n_(e):r==="uc"?await hp(e):await dp(e);let i=r==="baidu"?await GG(s.f):r==="uc"?await XK(s.f):await FK(s.f),a=String(r==="baidu"?i:i?.download_url||"").trim();if(!a)return t.code(404),"download url not found";let o=String(s.n||""),c=LPn(r);if(t.header("Access-Control-Allow-Origin","*"),t.header("Access-Control-Allow-Headers","Range, Content-Type"),t.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),t.header("Cache-Control","no-store"),n==="redirect")return t.redirect(a);if(n==="subt"){let d=rr(o)||lX(o)||"srt",f=await Xe.get(a,{responseType:"stream",headers:{...c,Accept:"text/plain,text/vtt,*/*","Accept-Encoding":"identity"},timeout:3e4,maxRedirects:5,validateStatus:()=>!0});return f.status<200||f.status>=400?(f.data&&typeof f.data.destroy=="function"&&f.data.destroy(),t.code(f.status||502),`subtitle fetch failed: ${f.status||502}`):(t.code(f.status||200),t.header("Content-Type",OPn(d)),f.headers?.["content-length"]&&t.header("Content-Length",f.headers["content-length"]),t.send(f.data))}let u=await kPn(e,r);if(!u.useMultithread)return t.redirect(a);let l=Number(r==="baidu"?s.s||0:i?.size||i?.file_size||i?.fileSize||0);return t.header("Content-Type",NPn(o)),await oc(e,t,a,`mycloud_${r}_${s.f}`,c,{chunkSize:u.chunkSize,poolSize:u.poolSize,timeout:1e3*10},l>0?l:null,!0)}catch(i){return console.error(`[mycloud ${r} proxy] failed:`,i?.message||i),t.sent||t.code(502),`proxy failed: ${i?.message||i}`}}async function _Ln(e,t){await mb(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return _a("\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n=await dy.getOwnDownload(r[1]);if(!n)return _a("\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let s={parse:0,url:["\u539F\u753B",n],header:{"User-Agent":yPn}};if(r[2]){let i=await dy.getOwnDownload(r[2]);if(i){let a=r[3]||"srt";Object.assign(s,qb(i,a))}}return s}async function ALn(e,t){await nu(e);let r=String(t||"").split("*");if(r[0]!=="own"||!r[1])return _a("\u8FC5\u96F7\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n="",s="";try{n=decodeURIComponent(r[2]||"")}catch{n=String(r[2]||"")}try{s=decodeURIComponent(r[4]||"")}catch{s=String(r[4]||"")}let i=await ixe(e,r[1],n);if(!i.length)return _a("\u8FC5\u96F7\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740");let a={parse:0,url:i,header:rFt};if(r[3]){let o=await BFt(e,r[3],s);if(o?.url){let c=r[5]||rr(s)||"srt";Object.assign(a,qb(o.url,c))}}return a}async function ELn(e,t){let r=Br(t);if(r[0]!=="own")return _a("\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF");let n="",s="",i=0,a=[],o="";if(r[1]==="v2"){n=String(r[2]||""),s=String(r[3]||""),i=Number(r[4]||0)||0;try{let l=JSON.parse(r[5]||"{}");a=Array.isArray(l?.ss)?l.ss:[]}catch{}o=String(r[6]||"")}else if(n=String(r[1]||""),r[2]){let l=String(r[3]||"srt");a=[{fileId:String(r[2]),fileName:`subtitle.${l}`,ext:l}]}if(!n)return _a("\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF");if(o)try{let l=[];for(let h=1;h<=VYt;h+=1){let p=await YT(e.server,o,h,$3);if(l.push(...(p.list||[]).filter(m=>St(m?.name||m?.fileName||""))),Number(p.total||0)<=h*$3||!(p.list||[]).length)break}let d=ac(s,l,h=>String(h?.name||h?.fileName||"")),f=new Map;for(let h of[...a,...d]){let p=String(h?.fileId||"");p&&f.set(p,{fileId:p,fileName:String(h?.fileName||h?.name||""),fileSize:Number(h?.fileSize||h?.size||0)||0,ext:String(h?.ext||rr(h?.fileName||h?.name||""))})}a=[...f.values()]}catch(l){console.warn("[mycloud][guangya] subtitle rescan failed:",l?.message||l)}let c=["\u4EE3\u7406",GLe(e,"guangya","down",n,s,{s:i}),"\u539F\u753B",GLe(e,"guangya","redirect",n,s,{s:i})],u=a.filter(l=>String(l?.fileId||"")).map(l=>{let d=String(l?.fileName||l?.name||`subtitle.${l?.ext||"srt"}`),f=rr(d)||String(l?.ext||"srt"),h=f==="ass"||f==="ssa"?"srt":f;return{url:GLe(e,"guangya","subt",String(l?.fileId||""),d,{s:Number(l?.fileSize||0)||0,se:f,outputExt:h}),name:d||"\u5916\u6302\u5B57\u5E55",format:h||"srt"}}).filter(l=>l.url);return ei({parse:0,urls:c,subtitles:u,header:QT})}async function yLn(e){let t=dX(e.body.id),{provider:r,playId:n}=t?.data||{};try{if(r==="115")return await fLn(e,n);if(r==="123")return await hLn(e,n);if(r==="ali")return await pLn(e,n);if(r==="baidu")return await mLn(e,n);if(r==="quark")return await qYt(e,n,"quark");if(r==="uc")return await qYt(e,n,"uc");if(r==="tianyi")return await _Ln(e,n);if(r==="xunlei")return await ALn(e,n);if(r==="guangya")return await ELn(e,n)}catch(s){return _a(`${Up[r]?.fallbackName||"\u7F51\u76D8"}\u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`)}return _a("\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u9519\u8BEF")}async function vLn(){return{page:1,pagecount:1,list:[]}}async function SLn(e,t){try{let r=e.server.prefix,n={},s=await e.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await e.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await e.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await e.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0\u8F93\u51FA"}}}var q3,pPn,mPn,gPn,DYt,VLe,jLe,KLe,cX,_Pn,PYt,$3,APn,EPn,yPn,vPn,HYt,VYt,jYt,SPn,TPn,bPn,LYt,IPn,RPn,CPn,Up,TLn,sQt=ie(()=>{QE();Y4();Px();LB();cB();bxe();hB();hG();Ox();Cr();kE();q3=Ne(Yi(),1);HLe();zT();Ds();yi();S0();el();la();Jc();Zc();Xj();jg();pPn="https://img.icons8.com/fluency/96/folder-invoices--v1.png",mPn="https://img.icons8.com/color/48/video.png",gPn="https://img.icons8.com/fluency/96/playlist.png",DYt=115,VLe=100,jLe=200,KLe=100,cX=200,_Pn=100,PYt=100,$3=200,APn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",EPn="netdisk",yPn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",vPn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.160 Safari/537.36",HYt=5*1024*1024,VYt=50,jYt=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".mts",".3gp",".rm",".rmvb",".iso",".m3u8",".f4v",".vob",".asf",".divx",".mxf",".ogv",".ogm"],SPn=6*60*60*1e3,TPn={chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1},bPn={chunkSize:64*1024,poolSize:16,useMultithread:!0,enableFast:!1},LYt={chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1},IPn={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",webm:"video/webm",avi:"video/x-msvideo",mov:"video/quicktime",flv:"video/x-flv",wmv:"video/x-ms-wmv",ts:"video/MP2T",m2ts:"video/MP2T",m3u8:"application/vnd.apple.mpegurl"},RPn={srt:"application/x-subrip; charset=utf-8",ass:"text/x-ssa; charset=utf-8",ssa:"text/x-ssa; charset=utf-8",vtt:"text/vtt; charset=utf-8",sub:"text/plain; charset=utf-8",idx:"text/plain; charset=utf-8",smi:"text/plain; charset=utf-8",txt:"text/plain; charset=utf-8"},CPn=["baidu","quark","ali","115","123","tianyi","uc","xunlei","guangya"],Up={baidu:{aliases:["\u767E\u5EA6","baidu","bd"],rootId:"/",fallbackName:"\u6211\u7684\u767E\u5EA6",panKey:"baidu",fallbackVodName:"\u767E\u5EA6\u8D44\u6E90"},quark:{aliases:["\u5938\u514B","quark"],rootId:"0",fallbackName:"\u6211\u7684\u5938\u514B",panKey:"quark",fallbackVodName:"\u5938\u514B\u8D44\u6E90"},ali:{aliases:["\u963F\u91CC","ali","alipan"],rootId:"root",fallbackName:"\u6211\u7684\u963F\u91CC",panKey:"ali",fallbackVodName:"\u963F\u91CC\u8D44\u6E90"},115:{aliases:["115"],rootId:"0",fallbackName:"\u6211\u7684115",panKey:"115",fallbackVodName:"115\u8D44\u6E90"},123:{aliases:["123"],rootId:"0",fallbackName:"\u6211\u7684123",panKey:"123",fallbackVodName:"123\u8D44\u6E90"},tianyi:{aliases:["\u5929\u7FFC","tianyi","cloud189","189"],rootId:"-11",fallbackName:"\u6211\u7684\u5929\u7FFC",panKey:"tianyi",fallbackVodName:"\u5929\u7FFC\u8D44\u6E90"},uc:{aliases:["uc"],rootId:"0",fallbackName:"\u6211\u7684UC",panKey:"uc",fallbackVodName:"UC\u8D44\u6E90"},xunlei:{aliases:["\u8FC5\u96F7","xunlei","thunder"],rootId:"",fallbackName:"\u6211\u7684\u8FC5\u96F7",panKey:"xunlei",fallbackVodName:"\u8FC5\u96F7\u8D44\u6E90"},guangya:{aliases:["\u5149\u9E2D","guangya","guangyapan","gy"],rootId:"",fallbackName:"\u6211\u7684\u5149\u9E2D",panKey:"guangya",fallbackVodName:"\u5149\u9E2D\u8D44\u6E90"}};TLn={meta:{key:"mycloud",name:"\u2B50\uFE0F \u6211\u7684",type:3,searchable:!1},api:async e=>{e.post("/init",aLn),e.post("/home",oLn),e.post("/category",cLn),e.post("/detail",dLn),e.post("/play",yLn),e.post("/search",vLn),e.get("/proxy/:provider/:mode/:token",gLn),e.get("/test",SLn)}}});var EQt={};kt(EQt,{default:()=>cMn,performLogin:()=>j3});function JLe(e=[]){return[{n:"\u5168\u90E8",v:""},...e.map(t=>({n:String(t),v:String(t)}))]}async function LLn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let o=s;if(s+=1,o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>i())),n}function MLn(e){return String(e||"").trim()}function H3(e,t,r){let n=Array.isArray(r)?r.length:0,s=t>0?Math.max(1,Math.ceil(t/V3)):Math.max(1,Number(e)||1);return{page:e,pagecount:s,limit:V3,total:t,list:r,count:n}}function O_(e){return String(e||"").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/\s+/g," ").trim()}async function uQt(e){return await e?.server?.db?.getObjectDefault("/panlian",{})}async function ZLe(e){let t=await uQt(e);return String(t?.cookie||"").trim()}async function kLn(e){let t=await uQt(e);return{username:String(t?.username||"").trim(),password:String(t?.password||"").trim()}}async function hX(e,t,r){await e.db.push(`/panlian/${t}`,r)}function BLn(e=[]){let t=new Map,r=Array.isArray(e)?e:[e];for(let n of r){let s=String(n||"").split(";")[0].trim();if(!s||!s.includes("="))continue;let i=s.indexOf("="),a=s.slice(0,i).trim(),o=s.slice(i+1).trim();a&&t.set(a,o)}return t}function ULn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=String(r||"").trim();if(!n||!n.includes("="))return;let s=n.indexOf("="),i=n.slice(0,s).trim(),a=n.slice(s+1).trim();i&&t.set(i,a)}),t}function FLn(e){return[...e.entries()].map(([t,r])=>`${t}=${r}`).join("; ")}function lQt(e="",t=[]){let r=ULn(e);for(let[n,s]of BLn(t).entries())r.set(n,s);return FLn(r).trim()}async function dQt(e,t){let r=t?.headers?.["set-cookie"];if(!r)return await ZLe(e);let n=await ZLe(e),s=lQt(n,r);return s&&s!==n&&await hX(e.server,"cookie",s),s||n}async function fQt(e,t=`${j0}/all-videos.php`){let r=await ZLe(e);return{"User-Agent":rMe,"X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*",Referer:t,Origin:j0,...r?{Cookie:r}:{}}}function $Ln(e){let t=String(e?.message||e?.msg||"").trim();return t.includes("\u8BF7\u5148\u767B\u5F55")||e?.code===401||e?.success===!1&&t.includes("\u767B\u5F55")}async function pX(e,t,r={},n,s={}){let{retryAuth:i=!0}=s||{},a=await sMe.get(`${j0}${t}`,{params:r,headers:await fQt(e,n)});await dQt(e,a);let o=a.data;if(a.status===401||$Ln(o)){if(i){let{username:u,password:l}=await kLn(e);if(u&&l)return await j3(e,u,l,!0),await pX(e,t,r,n,{...s,retryAuth:!1})}let c=new Error("\u76D8\u94FE\u9700\u8981\u767B\u5F55");throw c.loginRequired=!0,c.response=o,c}if(a.status>=400)throw new Error(`HTTP ${a.status}`);return o}async function qLn(e,t,r={},n=`${j0}/pages/video.php`){let s=await sMe.get(`${j0}${t}`,{params:r,maxRedirects:0,headers:await fQt(e,n)});if(await dQt(e,s),s.status>=400)throw new Error(`HTTP ${s.status}`);return String(s.data||"")}function HLn(e=""){let t=String(e||"").replace(/\\\//g,"/"),r=[Li.pan123,Li.quark,Li.baidu,Li.uc,Li.tianyi,Li.mobile,Li.pan115,Li.xunlei,Li.ali,Li.guangya,Li.magnet];for(let n of r){let s=t.match(n);if(s?.[0])return s[0].replace(/["'<>\\]+$/g,"").trim()}return""}async function VLn(e,t=""){let r=String(t||"").trim();if(!r)return"";if(/^(?:https?:|magnet:|thunder:|ed2k:)/i.test(r))return r;let n=aQt.get(r);if(n)return n;let s=await qLn(e,"/api/go.php",{t:r},`${j0}/pages/video.php`),i=HLn(s);if(!i)throw new Error("\u76D8\u94FE token \u89E3\u6790\u5931\u8D25");return aQt.set(r,i),i}function Hb(e={}){return{vod_id:String(e.vod_id||e.id||""),vod_name:O_(e.vod_name||e.title||"\u672A\u77E5\u6807\u9898"),vod_pic:e.vod_pic||e.pic||e.cover||"",vod_remarks:O_(e.vod_remarks||e.state||e.note||""),vod_year:String(e.vod_year||e.year||""),vod_content:O_(e.vod_content||e.content||e.description||""),vod_actor:O_(e.vod_actor||e.actor||""),vod_director:O_(e.vod_director||e.director||""),vod_area:O_(e.vod_area||e.area||""),type_id:String(e.type_id||e.type||""),type_name:String(e.type_name||e.class||"")}}function jLn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.url)return t}catch{}return null}function eMe(e,t=null){let r=String(e||"").trim(),n=t&&typeof t=="object"?{vod_id:r,vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||"",vod_year:t.vod_year||"",vod_content:t.vod_content||"",vod_actor:t.vod_actor||"",vod_director:t.vod_director||"",vod_area:t.vod_area||"",type_id:t.type_id||"",type_name:t.type_name||""}:null;return n?JSON.stringify({source:"panlian",mode:"show",vodId:r,baseVod:n}):`panlian_show|${r}`}function hQt(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="panlian"&&r.mode==="show"&&r.vodId)return{vodId:String(r.vodId),baseVod:r.baseVod&&typeof r.baseVod=="object"?Hb(r.baseVod):null}}catch{}let t=String(e||"").match(/^panlian_show\|(.+)$/);return t?{vodId:t[1],baseVod:null}:null}function KLn(e,t,r=null){let n=String(e||"").trim(),s=String(t||"").trim(),i=r&&typeof r=="object"?{vod_id:n,vod_name:r.vod_name||"",vod_pic:r.vod_pic||"",vod_remarks:r.vod_remarks||"",vod_year:r.vod_year||"",vod_content:r.vod_content||"",vod_actor:r.vod_actor||"",vod_director:r.vod_director||"",vod_area:r.vod_area||"",type_id:r.type_id||"",type_name:r.type_name||""}:null;return i?JSON.stringify({source:"panlian",mode:"group",vodId:n,panType:s,baseVod:i}):`panlian_group|${n}|${s}`}function GLn(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="panlian"&&r.mode==="group"&&r.vodId&&r.panType)return{vodId:String(r.vodId),panType:String(r.panType),baseVod:r.baseVod&&typeof r.baseVod=="object"?Hb(r.baseVod):null}}catch{}let t=String(e||"").match(/^panlian_group\|([^|]+)\|([^|]+)$/);return t?{vodId:t[1],panType:t[2],baseVod:null}:null}function zLn(e){return JSON.stringify({source:"panlian",mode:"resource",...e})}function YLn(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="panlian"&&t.mode==="resource"&&t.url)return t}catch{}return null}function iMe(e={}){let t=String(e?.vod_id||"").trim(),r=eMe(t,e),n=e?.vod_name||"";return{...e,vod_id:r,type_id:r,type_name:n,vod_tag:"folder",cate:{id:r,name:n}}}function aMe(e={}){return mX(e?.pan_type||e?.drive_type||e?.sourceName||e?.groupName||e?.groupKey||e?.type||"")||WLn(e?.url||e?.link||e?.token||"")}async function QLn(e,t={},r={}){let n=String(r.url||r.link||r.token||"").trim(),s=await VLn(e,n).catch(()=>n);if(!s)return null;let i=String(r.password||r.pwd||"").trim(),a=aMe(r);if(!nMe.has(a)||!cMe(a))return null;let o=pQt(a)||O_(r.groupName||r.groupKey||"\u7F51\u76D8"),c=O_(r.note||r.remark||r.title||""),u=O_(r.created_at||r.create_time||r.updated_at||r.update_time||r.time||r.add_time||r.date||""),l=i&&!/([?&])(pwd|password|passcode|code)=/i.test(s)&&["baidu","xunlei","123"].includes(a)?`${s}${s.includes("?")?"&":"?"}pwd=${encodeURIComponent(i)}`:s,d=c||t?.vod_name||"\u8D44\u6E90",f=[o,u].filter(Boolean);return{vod_id:zLn({vodId:String(t?.vod_id||"").trim(),url:l,name:d,sourceName:o,note:c,time:u,pic:t?.vod_pic||"",content:t?.vod_content||"",panType:a,baseVodRemark:t?.vod_remarks||"",baseVodYear:t?.vod_year||"",baseVodActor:t?.vod_actor||"",baseVodDirector:t?.vod_director||"",baseVodArea:t?.vod_area||""}),vod_name:d,vod_pic:t?.vod_pic||gQt(e,mQt(a))||"",vod_remarks:f.join(" \xB7 "),vod_year:t?.vod_year||"",vod_content:t?.vod_content||"",vod_actor:t?.vod_actor||"",vod_director:t?.vod_director||"",vod_area:t?.vod_area||"",type_id:"",type_name:`${o} \u8D44\u6E90`,__panType:a,__time:ZLn(u)}}function WLn(e=""){let t=String(e||"").trim();return t?Li.magnet.test(t)?"magnet":Li.ali.test(t)?"ali":Li.quark.test(t)?"quark":Li.baidu.test(t)?"baidu":Li.uc.test(t)?"uc":Li.tianyi.test(t)?"tianyi":Li.mobile.test(t)?"yidong":Li.pan123.test(t)?"123":Li.pan115.test(t)?"115":Li.xunlei.test(t)?"xunlei":Li.guangya.test(t)?"guangya":"":""}function mX(e=""){let t=String(e||"").toLowerCase().trim();return t?["quark","\u5938\u514B","\u5938\u514B\u7F51\u76D8"].includes(t)?"quark":["uc","uc\u7F51\u76D8"].includes(t)?"uc":["baidu","\u767E\u5EA6","\u767E\u5EA6\u7F51\u76D8"].includes(t)?"baidu":["tianyi","189","\u5929\u7FFC","\u5929\u7FFC\u7F51\u76D8","cloud189"].includes(t)?"tianyi":["115","115\u7F51\u76D8"].includes(t)?"115":["123","pan123","123\u7F51\u76D8","123\u4E91\u76D8"].includes(t)?"123":["ali","aliyun","alipan","aliyundrive","\u963F\u91CC","\u963F\u91CC\u4E91\u76D8"].includes(t)?"ali":["mobile","139","yidong","caiyun","\u79FB\u52A8","\u79FB\u52A8\u4E91\u76D8","\u79FB\u52A8\u7F51\u76D8"].includes(t)?"yidong":["xunlei","\u8FC5\u96F7","\u8FC5\u96F7\u4E91\u76D8","\u8FC5\u96F7\u7F51\u76D8"].includes(t)?"xunlei":["guangya","guangyapan","gy","\u5149\u9E2D","\u5149\u9E2D\u7F51\u76D8"].includes(t)?"guangya":["magnet","\u78C1\u529B","\u78C1\u94FE","bt","\u79CD\u5B50","torrent"].includes(t)?"magnet":"":""}function oMe(){return Array.isArray(Zs())?Zs():[]}function XLn(){return new Map(oMe().map((e,t)=>[String(e?.key||"").trim(),t]))}function cMe(e=""){let t=mX(e);return t?Ug(t,oMe()):!1}function pQt(e=""){let t=mX(e);if(!t)return"";if(t==="magnet")return"\u78C1\u529B";let r=oMe().find(s=>String(s?.key||"").trim()===t);return r?.name?r.name:Ca().find(s=>s?.key===t)?.name||""}function mQt(e=""){let t=mX(e);return t&&Ca().find(n=>n?.key===t)?.pic||""}function gQt(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}function JLn(e=[]){let t=XLn();return[...e].sort((r,n)=>(t.get(r?.__panType)??999)-(t.get(n?.__panType)??999))}function ZLn(e){if(e==null)return 0;if(typeof e=="number")return Number.isFinite(e)?e:0;let t=String(e).trim();if(!t)return 0;let r=Date.parse(t.replace(/\./g,"-"));if(!Number.isNaN(r))return r;let n=t.match(/(20\d{2})[-/.](\d{1,2})[-/.](\d{1,2})(?:\s+(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?)?/);if(!n)return 0;let[,s,i,a,o="0",c="0",u="0"]=n;return new Date(Number(s),Number(i)-1,Number(a),Number(o),Number(c),Number(u)).getTime()}async function _Qt(e){if(fX.data.length&&Date.now()-fX.ts=r))break}if(a.length[]);for(let s of n){let a=(await uMe(e,{t:s?.type_id||0,pg:1}).catch(()=>[])).find(o=>String(o.vod_id)===r);if(a)return a}return null}async function j3(e,t,r,n=!0){let s=new URLSearchParams;s.set("username",String(t||"").trim()),s.set("password",String(r||"").trim()),n&&s.set("remember","on");let i=await sMe.post(`${j0}/api/login.php`,s.toString(),{headers:{"User-Agent":rMe,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",Referer:`${j0}/pages/login.php`,Origin:j0,Accept:"application/json, text/plain, */*"}}),a=i.data||{};if(i.status>=400||a?.success!==!0)throw new Error(a?.message||`\u767B\u5F55\u5931\u8D25 HTTP ${i.status}`);let o=lQt("",i.headers["set-cookie"]||[]);if(!o)throw new Error("\u767B\u5F55\u6210\u529F\u4F46\u672A\u62FF\u5230 Cookie");return await hX(e.server,"cookie",o),await hX(e.server,"username",String(t||"").trim()),await hX(e.server,"password",String(r||"").trim()),{success:!0,message:a?.message||"\u767B\u5F55\u6210\u529F",cookie:o}}async function tMn(e,t){return await Ti(e,t),{}}async function rMn(e){let t=Qr("panlian",arguments[0]||{}),r=Wr(t);if(r)return r;let n=await _Qt(e),s=[],i={};for(let o of n){s.push({type_id:String(o.type_id),type_name:o.type_name});let c=[];Array.isArray(o.children)&&o.children.length&&c.push({key:"sc",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:""},...o.children.map(u=>({n:u.type_name,v:String(u.type_id)}))]}),c.push({key:"year",name:"\u5E74\u4EFD",value:JLe(OLn)},{key:"area",name:"\u5730\u533A",value:JLe(DLn)},{key:"lang",name:"\u8BED\u8A00",value:JLe(PLn)}),i[String(o.type_id)]=c}let a={class:s,filters:i};return hn(t,a,bt.semiStatic),a}async function nMn(e){return{list:(await uMe(e,{t:0,pg:1})).slice(0,V3).map(r=>iMe(r))}}async function sMn(e){let t=e.body||{},r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"0").trim(),s=t.extend||t.filters||t.ext||{},i=GLn(n);if(i){if(r>1)return H3(r,0,[]);let p=i.vodId,m=i.baseVod||null,_=(Array.isArray(t?.list)?t.list:[]).find(v=>String(v?.vod_id||"")===eMe(p)||String(v?.vod_id||"")===p);_&&(m=Hb({..._,vod_id:p})),m||(m=await oQt(e,p).catch(()=>null)),m||(m=Hb({vod_id:p,vod_name:p}));let y=await tMe(e,m.vod_name||p,p).catch(()=>[]),E=(await Promise.all(y.map(v=>QLn(e,m,v)))).filter(v=>v&&v.__panType===i.panType).sort((v,b)=>(b.__time||0)-(v.__time||0)).map(({__panType:v,__time:b,...I})=>I);return H3(1,E.length,E)}let a=hQt(n);if(a){if(r>1)return H3(r,0,[]);let p=a.vodId,m=a.baseVod||null,_=(Array.isArray(t?.list)?t.list:[]).find(v=>String(v?.vod_id||"")===n||String(v?.vod_id||"")===eMe(p));_&&(m=Hb({..._,vod_id:p})),m||(m=await oQt(e,p).catch(()=>null)),m||(m=Hb({vod_id:p}));let y=await tMe(e,m.vod_name||p,p).catch(()=>[]),A=new Map;for(let v of y){let b=aMe(v);if(!nMe.has(b)||!cMe(b))continue;let I=A.get(b)||{count:0};I.count+=1,A.set(b,I)}let E=JLn([...A.entries()].map(([v,b])=>{let I=KLn(p,v,m),T=pQt(v);return{vod_id:I,vod_name:T,vod_pic:gQt(e,mQt(v))||"",type_id:I,type_name:T,vod_remarks:`${b.count} \u6761\u8D44\u6E90`,vod_tag:"folder",cate:{id:I,name:T},__panType:v}})).map(({__panType:v,...b})=>b);return H3(1,E.length,E)}let c=String(s.sc||"").trim()||n,u=String(s.year||"").trim(),l=String(s.area||"").trim(),d=String(s.lang||"").trim(),f={t:c,pg:r};u&&(f.year=u),l&&(f.area=l),d&&(f.lang=d);let h=await AQt(e,f);return{page:r,pagecount:h.pagecount,limit:V3,total:h.total,list:h.list.map(p=>iMe(p)),count:h.list.length}}async function iMn(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let s=YLn(n)||jLn(n);if(s?.url){let a=await Es(s.url,e).catch(()=>({froms:"",urls:"",links:[]})),o={vod_id:String(n||""),vod_name:s.name||s.baseVodName||"\u8D44\u6E90",vod_pic:s.pic||"",vod_remarks:s.baseVodRemark||[s.sourceName,s.note,s.time].filter(Boolean).join(" \xB7 "),vod_year:s.baseVodYear||"",vod_actor:s.baseVodActor||"",vod_director:s.baseVodDirector||"",vod_area:s.baseVodArea||"",vod_content:s.content||"",vod_play_from:a?.froms||"",vod_play_url:a?.urls||""};Array.isArray(a?.links)&&a.links.length>0&&(o.vod_links=a.links),r.push(o);continue}let i=hQt(n);if(i?.baseVod){r.push({...i.baseVod,vod_id:String(n||""),vod_play_from:"",vod_play_url:""});continue}}return{list:r}}async function aMn(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!t)return H3(1,0,[]);let n=MLn(t),s=iQt.get(n),i=null;return s?i=s:(i=await $n("panlian","search",n,async()=>{let a=[];try{a=await eMn(e,t,cQt)}catch(l){if(l?.loginRequired||String(l?.message||"").includes("\u8BF7\u5148\u767B\u5F55"))return console.warn(`[panlian.search] login required, degrade to empty result. keyword=${JSON.stringify(t)}`),[];throw l}let o=[],c=new Set,u=await LLn(a,ILn,async l=>{let f=(await tMe(e,l.vod_name||l.vod_id,l.vod_id).catch(()=>[])).filter(h=>{let p=aMe(h);return nMe.has(p)&&cMe(p)});return{vod:l,enabledLinks:f}});for(let l of u){if(!l?.vod||!Array.isArray(l.enabledLinks)||l.enabledLinks.length===0)continue;let d=l.vod,f=String(d.vod_id||"").trim()||`${d.vod_name||""}|${d.vod_pic||""}`;!f||c.has(f)||(c.add(f),o.push(iMe(d)))}return o},{timeout:3e4}),iQt.set(n,i)),{page:r,pagecount:1,limit:i.length,total:i.length,list:i,count:i.length}}async function oMn(e,t){return Ps(e,t)}var j0,rMe,V3,cQt,bLn,ILn,RLn,CLn,xLn,uMs,wLn,NLn,nMe,OLn,DLn,PLn,Li,sMe,fX,iQt,aQt,cMn,lMe=ie(()=>{vr();Dn();Cr();yi();fc();fa();ia();j0="https://pinglian.lol",rMe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",V3=30,cQt=Number.POSITIVE_INFINITY,bLn=Number.POSITIVE_INFINITY,ILn=6,RLn=20*1e3,CLn=80,xLn=15e3,uMs=10*60*1e3,wLn=60*60*1e3,NLn=60*1e3,nMe=new Set(["quark","uc","baidu","tianyi","115","123","ali","yidong","xunlei","guangya","magnet"]),OLn=Array.from({length:42},(e,t)=>String(2026-t)),DLn=["\u5927\u9646","\u9999\u6E2F","\u53F0\u6E7E","\u7F8E\u56FD","\u65E5\u672C","\u97E9\u56FD","\u82F1\u56FD","\u6CD5\u56FD","\u5FB7\u56FD","\u5370\u5EA6","\u6CF0\u56FD","\u4FC4\u7F57\u65AF","\u5176\u4ED6"],PLn=["\u56FD\u8BED","\u82F1\u8BED","\u7CA4\u8BED","\u95FD\u5357\u8BED","\u97E9\u8BED","\u65E5\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u4FC4\u8BED","\u6CF0\u8BED","\u897F\u73ED\u7259\u8BED","\u8461\u8404\u7259\u8BED","\u5176\u4ED6"];Li={baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,quark:/https?:\/\/pan\.quark\.cn\/s\/[a-zA-Z0-9]+/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[a-zA-Z0-9]+(?:\?pwd=[a-zA-Z0-9]{4})?(?:#)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+(?:%[0-9A-Fa-f]{2})*(?:([^)]*))?|web\/share\?code=[^&\s]+)/i,uc:/https?:\/\/(?:drive|pan)\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[a-zA-Z0-9_-]+(?:\?[^\s<>"']*)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]{4})?(?:#)?/i,ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9]+(?:\/folder\/[a-zA-Z0-9_-]+)?/i,mobile:/https?:\/\/(?:(?:www\.)?yun\.139\.com\/shareweb\/#\/w\/i\/[a-zA-Z0-9]+|(?:www\.)?caiyun\.139\.com\/(?:w\/i\/[a-zA-Z0-9]+|m\/i\?[a-zA-Z0-9]+)[^\s<>"']*|caiyun\.feixin\.10086\.cn\/[a-zA-Z0-9]+)/i,guangya:/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/i,magnet:/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i},sMe=ye.create({timeout:xLn,validateStatus:()=>!0,httpsAgent:fn({insecure:!0}).httpsAgent,headers:{"User-Agent":rMe,"X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*"}}),fX={ts:0,data:[]},iQt=new _t(CLn,RLn),aQt=new _t(300,NLn);cMn={meta:{key:"panlian",name:"\u2601\uFE0F \u76D8\u94FE",type:3},api:async e=>{e.post("/init",tMn),e.post("/home",rMn),e.post("/homeVod",nMn),e.post("/category",sMn),e.post("/detail",iMn),e.post("/play",oMn),e.post("/search",aMn),e.post("/login",async t=>j3(t,t.body?.username,t.body?.password,t.body?.remember!==!1)),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}}});var TMe={};kt(TMe,{__test:()=>XMn,default:()=>ZMn,performLogin:()=>hN});async function gMn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let o=s;if(s+=1,o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>i())),n}function _Mn(e){return String(e||"").trim()}function G3(e,t,r){let n=Array.isArray(r)?r.length:0,s=t>0?Math.max(1,Math.ceil(t/lN)):Math.max(1,Number(e)||1);return{page:e,pagecount:s,limit:lN,total:t,list:r,count:n}}function Fp(e){return String(e||"").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/\s+/g," ").trim()}async function mMe(e){return await e?.server?.db?.getObjectDefault("/filejin",{})}async function dMe(e){let t=await mMe(e);return String(t?.cookie||"").trim()}async function xQt(e){let t=await mMe(e);return{username:String(t?.username||"").trim(),password:String(t?.password||"").trim()}}async function $p(e){let t=await mMe(e);return String(t?.site||"").trim().replace(/\/+$/,"")||uMn}async function G0(e,t,r){await e.db.push(`/filejin/${t}`,r)}function AMn(e=[]){let t=new Map,r=Array.isArray(e)?e:[e];for(let n of r){let s=String(n||"").split(";")[0].trim();if(!s||!s.includes("="))continue;let i=s.indexOf("="),a=s.slice(0,i).trim(),o=s.slice(i+1).trim();a&&t.set(a,o)}return t}function EMn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=String(r||"").trim();if(!n||!n.includes("="))return;let s=n.indexOf("="),i=n.slice(0,s).trim(),a=n.slice(s+1).trim();i&&t.set(i,a)}),t}function yMn(e){return[...e.entries()].map(([t,r])=>`${t}=${r}`).join("; ")}function dN(e="",t=[]){let r=EMn(e);for(let[n,s]of AMn(t).entries())r.set(n,s);return yMn(r).trim()}async function wQt(e,t){let r=t?.headers?.["set-cookie"];if(!r)return await dMe(e);let n=await dMe(e),s=dN(n,r);return s&&s!==n&&await G0(e.server,"cookie",s),s||n}function fN(e,t=null){try{return JSON.parse(e)}catch{return t}}function gMe(e="",t=0){let r=String(e||""),n=r[t],s=n==="{"?"}":n==="["?"]":"";if(!s)return"";let i=0,a=!1,o="",c=!1;for(let u=t;u0)return r;let s=[/(?:window\.)?_obj\s*=\s*(\{[\s\S]*?\})\s*;\s*<\/script>/i,/(?:window\.)?_obj\s*=\s*(\{[\s\S]*?\})\s*;?/i];for(let i of s){let a=t.match(i);if(!a?.[1])continue;let o=fN(a[1],null);if(o&&typeof o=="object")return o}return null}function NQt(e,t,r=384){let n=String(e||"").trim(),s=String(t||"").trim();return!n||!s?"":`https://s.tutu.pm/img/${n}/${s}/${r}.webp`}function OQt(e,t){let r=String(e||"").trim(),n=String(t||"").trim();return r&&n?`${r}::${n}`:n}function sd(e=""){let t=String(e||"").trim(),r=t.match(/^(tv|mv|ac)::(.+)$/);return r?{dir:r[1],id:r[2]}:{dir:"",id:t}}function Fy(e={},t={}){let r=String(e.dir||e.type||e.type_id||t.dir||"").trim(),n=String(e.id??e.vod_id??e.pf?.db?.id??t.id??"").trim(),s=sd(n);s.dir&&(r=r||s.dir,n=s.id);let i=Fp(e.title||e.vod_name||e.name||t.title||"\u672A\u77E5\u6807\u9898"),a=e.vod_pic||e.pic||e.cover||e.image||t.vod_pic||NQt(r,n,384),o=Fp(e.vod_remarks||e.note||e.state||e.remark||t.vod_remarks||""),c=String(e.vod_year||e.year||e.publish_year||t.vod_year||""),u=Fp(e.vod_content||e.summary||e.desc||e.description||t.vod_content||""),l=Fp(e.vod_actor||e.actor||e.actors||t.vod_actor||""),d=Fp(e.vod_director||e.director||t.vod_director||""),f=Fp(e.vod_area||e.area||e.region||t.vod_area||"");return{vod_id:OQt(r,n),vod_name:i,vod_pic:a,vod_remarks:o,vod_year:c,vod_content:u,vod_actor:l,vod_director:d,vod_area:f,type_id:r,type_name:CQt[r]||String(e.type_name||t.type_name||""),_dir:r,_raw_id:n}}function _X(e={},t){return Fy(e,{dir:t,id:e.id,title:e.title,vod_remarks:e.note||"",vod_year:e.year||""})}function DQt(e={},t,r,n=null){let s=e?.pf?.db||{},i={...e,id:String(s?.id||r||e?.id||"").trim(),dir:t||"",title:e?.title||n?.vod_name||"",vod_pic:n?.vod_pic||NQt(t,String(s?.id||r||e?.id||"").trim(),384),vod_remarks:e?.note||e?.year||n?.vod_remarks||"",vod_year:e?.year||n?.vod_year||"",vod_content:e?.intro||e?.summary||n?.vod_content||"",vod_actor:Array.isArray(e?.actors)?e.actors.join("/"):e?.actor||e?.starring||n?.vod_actor||"",vod_director:Array.isArray(e?.director)?e.director.join("/"):e?.director||n?.vod_director||"",vod_area:e?.area||n?.vod_area||""};return Fy(i,n||{})}function vMn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.url)return t}catch{}return null}function fMe(e,t=null){let r=String(e||"").trim(),n=t&&typeof t=="object"?{vod_id:r,vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||"",vod_year:t.vod_year||"",vod_content:t.vod_content||"",vod_actor:t.vod_actor||"",vod_director:t.vod_director||"",vod_area:t.vod_area||"",type_id:t.type_id||"",type_name:t.type_name||""}:null;return n?JSON.stringify({source:"filejin",mode:"show",vodId:r,baseVod:n}):`filejin_show|${r}`}function PQt(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="filejin"&&r.mode==="show"&&r.vodId)return{vodId:String(r.vodId),baseVod:r.baseVod&&typeof r.baseVod=="object"?Fy(r.baseVod):null}}catch{}let t=String(e||"").match(/^filejin_show\|(.+)$/);return t?{vodId:t[1],baseVod:null}:null}function SMn(e,t,r=null){let n=String(e||"").trim(),s=String(t||"").trim(),i=r&&typeof r=="object"?{vod_id:n,vod_name:r.vod_name||"",vod_pic:r.vod_pic||"",vod_remarks:r.vod_remarks||"",vod_year:r.vod_year||"",vod_content:r.vod_content||"",vod_actor:r.vod_actor||"",vod_director:r.vod_director||"",vod_area:r.vod_area||"",type_id:r.type_id||"",type_name:r.type_name||""}:null;return i?JSON.stringify({source:"filejin",mode:"group",vodId:n,panType:s,baseVod:i}):`filejin_group|${n}|${s}`}function TMn(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="filejin"&&r.mode==="group"&&r.vodId&&r.panType)return{vodId:String(r.vodId),panType:String(r.panType),baseVod:r.baseVod&&typeof r.baseVod=="object"?Fy(r.baseVod):null}}catch{}let t=String(e||"").match(/^filejin_group\|([^|]+)\|([^|]+)$/);return t?{vodId:t[1],panType:t[2],baseVod:null}:null}function bMn(e){return JSON.stringify({source:"filejin",mode:"resource",...e})}function LQt(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="filejin"&&t.mode==="resource"&&t.url)return t}catch{}return null}function _Me(e={}){let t=String(e?.vod_id||"").trim(),r=fMe(t,e),n=e?.vod_name||"";return{...e,vod_id:r,type_id:r,type_name:n,vod_tag:"folder",cate:{id:r,name:n}}}function AMe(e={}){return RMn(e?.url||e?.link||"")||EX(e?.pan_type||e?.drive_type||e?.sourceName||e?.groupName||e?.groupKey||"")}function IMn(e={},t={}){let r=String(t.url||t.link||"").trim();if(!r)return null;let n=String(t.password||t.pwd||t.code||"").trim(),s=AMe(t);if(!pMe.has(s)||!yMe(s))return null;let i=MQt(s)||Fp(t.groupName||t.groupKey||"\u7F51\u76D8"),a=Fp(t.title||t.name||t.file_name||t.filename||e?.vod_name||"\u8D44\u6E90"),o=Fp(t.note||t.remark||t.user||t.username||""),c=Fp(t.created_at||t.create_time||t.updated_at||t.update_time||t.time||t.add_time||t.date||""),u=n&&!/([?&])(pwd|password|passcode|code)=/i.test(r)&&["baidu","xunlei","123"].includes(s)?`${r}${r.includes("?")?"&":"?"}pwd=${encodeURIComponent(n)}`:r,l=[a].filter(Boolean),d=[i,o,c].filter(Boolean);return{vod_id:bMn({vodId:OQt(e?._dir||sd(e?.vod_id||"").dir||e?.type_id||"",e?._raw_id||sd(e?.vod_id||"").id||e?.vod_id||""),url:u,name:l.join(" \xB7 "),sourceName:i,note:o,time:c,pic:e?.vod_pic||"",content:e?.vod_content||"",panType:s,baseVodRemark:e?.vod_remarks||"",baseVodYear:e?.vod_year||"",baseVodActor:e?.vod_actor||"",baseVodDirector:e?.vod_director||"",baseVodArea:e?.vod_area||""}),vod_name:l.join(" \xB7 "),vod_pic:e?.vod_pic||BQt(null,kQt(s))||"",vod_remarks:d.join(" \xB7 "),vod_year:e?.vod_year||"",vod_content:e?.vod_content||"",vod_actor:e?.vod_actor||"",vod_director:e?.vod_director||"",vod_area:e?.vod_area||"",type_id:"",type_name:`${i} \u8D44\u6E90`,__panType:s,__time:wMn(c)}}function RMn(e=""){let t=String(e||"").trim();return t?K0.magnet.test(t)?"magnet":K0.ali.test(t)?"ali":K0.quark.test(t)?"quark":K0.baidu.test(t)?"baidu":K0.uc.test(t)?"uc":K0.tianyi.test(t)?"tianyi":K0.mobile.test(t)?"yidong":K0.pan123.test(t)?"123":K0.pan115.test(t)?"115":K0.xunlei.test(t)?"xunlei":K0.guangya.test(t)?"guangya":"":""}function EX(e=""){let t=String(e||"").toLowerCase().trim();return t?["quark","\u5938\u514B","\u5938\u514B\u7F51\u76D8"].includes(t)?"quark":["uc","uc\u7F51\u76D8"].includes(t)?"uc":["baidu","\u767E\u5EA6","\u767E\u5EA6\u7F51\u76D8"].includes(t)?"baidu":["tianyi","189","\u5929\u7FFC","\u5929\u7FFC\u7F51\u76D8","cloud189"].includes(t)?"tianyi":["115","115\u7F51\u76D8"].includes(t)?"115":["123","pan123","123\u7F51\u76D8","123\u4E91\u76D8"].includes(t)?"123":["ali","aliyun","alipan","\u963F\u91CC","\u963F\u91CC\u4E91\u76D8"].includes(t)?"ali":["mobile","139","yidong","caiyun","\u79FB\u52A8","\u79FB\u52A8\u4E91\u76D8","\u79FB\u52A8\u7F51\u76D8"].includes(t)?"yidong":["xunlei","\u8FC5\u96F7","\u8FC5\u96F7\u4E91\u76D8","\u8FC5\u96F7\u7F51\u76D8"].includes(t)?"xunlei":["guangya","guangyapan","gy","\u5149\u9E2D","\u5149\u9E2D\u7F51\u76D8"].includes(t)?"guangya":["magnet","\u78C1\u529B","\u78C1\u94FE","bt","\u79CD\u5B50","torrent"].includes(t)?"magnet":"":""}function EMe(){return Array.isArray(Zs())?Zs():[]}function CMn(){return new Map(EMe().map((e,t)=>[String(e?.key||"").trim(),t]))}function yMe(e=""){let t=EX(e);return t?Ug(t,EMe()):!1}function MQt(e=""){let t=EX(e);if(!t)return"";if(t==="magnet")return"\u78C1\u529B";let r=EMe().find(s=>String(s?.key||"").trim()===t);return r?.name?r.name:Ca().find(s=>s?.key===t)?.name||""}function kQt(e=""){let t=EX(e);return t&&Ca().find(n=>n?.key===t)?.pic||""}function BQt(e,t=""){let r=String(t||"").trim();if(!r||!r.startsWith("/assets/"))return r;try{let n=e?.server?.address?.()?.url||"";return n?`${n}${r}`:r}catch{return r}}function xMn(e=[]){let t=CMn();return[...e].sort((r,n)=>(t.get(r?.__panType)??999)-(t.get(n?.__panType)??999))}function wMn(e){if(e==null)return 0;if(typeof e=="number")return Number.isFinite(e)?e:0;let t=String(e).trim();if(!t)return 0;let r=Date.parse(t.replace(/\./g,"-"));if(!Number.isNaN(r))return r;let n=t.match(/(20\d{2})[-/.](\d{1,2})[-/.](\d{1,2})(?:\s+(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?)?/);if(!n)return 0;let[,s,i,a,o="0",c="0",u="0"]=n;return new Date(Number(s),Number(i)-1,Number(a),Number(o),Number(c),Number(u)).getTime()}function DMn(e,t,r){let n=BigInt("0x"+e),s=BigInt("0x"+t),i=r|0;for(let a=0;asetImmediate(u))}return s.toString(16)}async function FQt(e,t,r){let{Worker:n}=await import("node:worker_threads"),s=new n(OMn,{eval:!0});try{return await new Promise((i,a)=>{let o=setTimeout(()=>a(new Error(`pow worker timeout ${TQt}ms`)),TQt),c=(u,l)=>{clearTimeout(o),u(l)};s.on("message",u=>{if(u&&u.error)return c(a,new Error(u.error));if(u&&u.y)return c(i,u.y)}),s.on("error",u=>c(a,u)),s.postMessage({N:e,x:t,t:r})})}finally{try{await s.terminate()}catch{}}}async function $Qt(e,t,r){try{return await FQt(e,t,r)}catch{return await UQt(e,t,r)}}function PMn(e=""){return/(?:^|;\s*)browser_verified=/.test(String(e||""))}async function LMn(e,t=""){let r=await jb.get(`${e}/res/pow`,{headers:{"User-Agent":Vb,Accept:"application/json, text/plain, */*",Referer:`${e}/`,"X-Requested-With":"XMLHttpRequest",...t?{Cookie:t}:{}}}),n=dN(t,r.headers?.["set-cookie"]||[]),s=typeof r.data=="string"?fN(r.data,null):r.data;return{status:r.status,data:s,cookie:n}}async function MMn(e,t=""){let r=`${e}::${String(t||"").trim()||"__noCookie__"}`,n=uN.get(r);if(n!==null)return n;let s=await jb.get(`${e}/`,{headers:{"User-Agent":Vb,...t?{Cookie:t}:{}}}),i=dN(t,s.headers?.["set-cookie"]||[]),a=String(s.data||"");if(PMn(i)&&!/浏览器安全验证|\/res\/pow|powSolve/i.test(a))return uN.set(r,i),i;let o=null,c="/",u={};if(/\/res\/pow|powSolve/i.test(a)){let A=await LMn(e,i);i=A.cookie||i,A.status<400&&A.data&&(o=A.data,c="/res/pow")}if(!o){let A=a.match(/const json=(\{.*?\});const jss=/s);A&&(o=fN(A[1],null),c="/",u={action:"verify",id:o?.id})}let{N:l,x:d,t:f}=o||{};if(!l||!d||!f)return uN.set(r,i),i;let h="",p=Date.now();try{h=await $Qt(String(l),String(d),Number(f))}catch{return uN.set(r,i),i}let m=Date.now()-p;m<3e3&&await Yt(3e3-m);let g=new URLSearchParams;for(let[A,E]of Object.entries(u))E!=null&&E!==""&&g.append(A,String(E));g.append("y",h);let _=await jb.post(`${e}${c}`,g.toString(),{headers:{"User-Agent":Vb,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*",Referer:`${e}/`,Origin:e,...i?{Cookie:i}:{}}}),y=dN(i,_.headers?.["set-cookie"]||[]);return uN.set(r,y),y&&uN.set(`${e}::${y}`,y),y}async function qQt(e){let t=await $p(e),r=await dMe(e),n=await MMn(t,r);return n&&n!==r&&await G0(e.server,"cookie",n),n||r}async function HQt(e,t,r="text/html,application/json,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"){let n=await $p(e),s=await qQt(e);return{"User-Agent":Vb,Accept:r,Referer:t||`${n}/`,Origin:n,...s?{Cookie:s}:{}}}function bQt(e=""){let t=String(e||"");return/_obj\.header=.*?\"u\"\s*:\s*\{[^}]*\"n\"\s*:\s*\"[^\"]+/s.test(t)||/_obj\.header=.*?u\s*:\s*\{[^}]*n\s*:/s.test(t)}function kMn(e){let t=String(e?.message||e?.msg||"").trim();return t.includes("\u8BF7\u5148\u767B\u5F55")||e?.code===401||e?.success===!1&&t.includes("\u767B\u5F55")}async function Y3(e,t,r,n={}){let{retryAuth:s=!0}=n||{},i=await $p(e),a=await jb.get(`${i}${t}`,{headers:await HQt(e,r||`${i}/`)});await wQt(e,a);let o=String(a.data||"");if((a.status===401||/请先登录/.test(o))&&s){let{username:c,password:u}=await xQt(e);if(c&&u)return await hN(e,c,u,!0),await Y3(e,t,r,{...n,retryAuth:!1})}if(a.status>=400)throw new Error(`HTTP ${a.status}`);return o}async function vMe(e,t,r={},n,s={}){let{retryAuth:i=!0}=s||{},a=await $p(e),o=await jb.get(`${a}${t}`,{params:r,headers:await HQt(e,n||`${a}/`,"application/json, text/plain, */*")});await wQt(e,o);let c=typeof o.data=="string"?fN(o.data,null):o.data;if(o.status===401||kMn(c)){if(i){let{username:l,password:d}=await xQt(e);if(l&&d)return await hN(e,l,d,!0),await vMe(e,t,r,n,{...s,retryAuth:!1})}let u=new Error("Filejin \u9700\u8981\u767B\u5F55");throw u.loginRequired=!0,u.response=c,u}if(o.status>=400)throw new Error(`HTTP ${o.status}`);return c}function K3(e="",t="search",r="title"){let n=String(e||""),s=`_obj.${t}=`,i=n.indexOf(s);if(i<0)return[];let a=`"${r}":[`,o=n.indexOf(a,i);if(o<0)return[];let c=n.indexOf("[",o);if(c<0)return[];let u=gMe(n,c),l=fN(u,[]);return Array.isArray(l)?l:[]}function BMn(e=""){let t=K3(e,"search","title"),r=K3(e,"search","i"),n=K3(e,"search","d"),s=K3(e,"search","info"),i=K3(e,"search","year");return!Array.isArray(r)||r.length===0?[]:r.map((a,o)=>({id:a,dir:n[o]||"",title:t[o]||"",note:s[o]||"",year:i[o]||""}))}function UMn(e={},t=""){if(!e||typeof e!="object"||Array.isArray(e))return[];let r=Array.isArray(e.i)?e.i:[],n=Array.isArray(e.t)?e.t:[],s=Array.isArray(e.g)?e.g:[],i=Array.isArray(e.d)?e.d:[],a=Array.isArray(e.a)?e.a:[],o=Array.isArray(e.q)?e.q:[],c=String(e.ty||t||"").trim();return r.map((u,l)=>{let d=[];s[l]&&d.push(String(s[l]).trim()),i[l]&&d.push(`\u8BC4\u5206 ${i[l]}`);let f=Array.isArray(o[l])?o[l].filter(Boolean).join("/"):"";f&&d.push(f);let h=Array.isArray(a[l])?a[l].filter(p=>p!=null&&String(p).trim()!=="").map(p=>String(p).trim()):[];return h.length>0&&d.push(h.join(" / ")),{id:u,dir:c,title:n[l]||"",note:d.filter(Boolean).join(" \xB7 "),year:Array.isArray(a[l])&&a[l].length>0?String(a[l][0]||""):""}})}function VQt(e){if(Array.isArray(e))return e;if(Array.isArray(e?.list))return e.list;if(Array.isArray(e?.data))return e.data;let t=e?.l&&typeof e.l=="object"?e.l:e;if(t&&Array.isArray(t?.title)&&Array.isArray(t?.i)){let r=t.title||[],n=t.i||[],s=t.d||[],i=t.info||[],a=t.year||[];return n.map((o,c)=>({id:o,dir:s[c]||"",title:r[c]||"",note:i[c]||"",year:a[c]||""}))}return[]}function hMe(e={},t=""){return!e||typeof e!="object"?[]:UMn(e,t)}function FMn(e){let t=D_.includes(String(e||"").trim())?String(e||"").trim():"tv",r=(n,s=n)=>[{n:"\u5168\u90E8",v:""},...n.map((i,a)=>({n:String(i),v:String(s[a]??i)}))];return[{key:"genre",name:"\u7C7B\u578B",value:r(Uy.genre[t]||[])},{key:"year",name:"\u5E74\u4EE3",value:r(Uy.year,Uy.yearValue)},{key:"region",name:"\u5730\u533A",value:r(Uy.region)},{key:"lang",name:"\u8BED\u8A00",value:r(Uy.lang)},{key:"sort",name:"\u6392\u5E8F",value:Uy.sort.map(([n,s])=>({n,v:s}))},{key:"quality",name:"\u753B\u8D28",value:Uy.quality.map(([n,s])=>({n,v:s}))},{key:"status",name:"\u72B6\u6001",value:Uy.status.map(([n,s])=>({n,v:s}))}]}function $Mn(){return Object.fromEntries(D_.map(e=>[e,FMn(e)]))}function qMn(e,t=1,r={}){let n=D_.includes(String(e||"").trim())?String(e||"").trim():"tv",s=Math.max(1,Number.parseInt(t,10)||1),i=new URLSearchParams,a=["genre","genres","year","region","lang","sort","quality","status","rrange","srange","trange","timetype","imdb","play"];for(let c of a){let u=r?.[c];u!=null&&String(u).trim()!==""&&i.set(c,String(u).trim())}s>1&&i.set("page",String(s));let o=i.toString();return`/${n}${o?`?${o}`:""}`}async function HMn(e){let t=await $p(e),r=await Y3(e,"/",`${t}/`),n=z3(r)||{};return hMe(n?.inlist,n?.inlist?.ty||"mv")}async function VMn(e){if(gX.data.length&&Date.now()-gX.ts({type_id:r,type_name:CQt[r]||r}));return gX={ts:Date.now(),data:t},t}async function SMe(e,t,r=1,n={}){let s=D_.includes(String(t||"").trim())?String(t||"").trim():"tv",i=Math.max(1,Number.parseInt(r,10)||1),a=JSON.stringify(n||{}),o=`${s}:${i}:${a}`,c=SQt.get(o);if(c)return c;let u=null,l=Object.keys(n||{}).some(f=>n?.[f]!==void 0&&n?.[f]!==null&&String(n[f]).trim()!==""),d=await $p(e);if(i===1&&!l){let f=await Y3(e,`/${s}`,`${d}/`),h=z3(f)||{};u={list:Array.isArray(h?.inlist)?h.inlist:hMe(h?.inlist,s),page:1,pagecount:Number(h?.page?.pages||1)||1,inlineObj:h}}else{let f=await vMe(e,`/res${qMn(s,i,n)}`,{},`${d}/${s}`),h=f?.inlist||f?.list||f?.data||{};u={list:Array.isArray(h)?h:hMe(h,s),page:i,pagecount:Number(f?.page?.pages||i)||i,inlineObj:f}}return SQt.set(o,u),u}async function yX(e,t={}){let r=D_.includes(String(t.t||t.dir||"").trim())?String(t.t||t.dir||"").trim():"tv",n=Math.max(1,Number.parseInt(t.pg||t.page,10)||1),s=await SMe(e,r,n,t.ext||t.extend||{}),i=Array.isArray(s?.list)?s.list:[],a=[];if(i.length>0&&typeof i[0]=="object"&&!Array.isArray(i[0]))a=i.map(o=>_X(o,r));else{let o=s?.inlineObj?.inlist||s?.inlineObj||{},c=Array.isArray(o?.i)?o.i:[],u=Array.isArray(o?.t)?o.t:[],l=Array.isArray(o?.g)?o.g:[],d=Array.isArray(o?.q)?o.q:[];a=c.map((f,h)=>_X({id:f,title:u[h]||"",note:[l[h],Array.isArray(d[h])?d[h].join("/"):""].filter(Boolean).join(" \xB7 ")},r))}return a.filter(o=>o?.vod_id&&o?.vod_name)}async function jQt(e,t,r=RQt){let n=await $p(e),s=await Y3(e,`/search?q=${encodeURIComponent(t)}`,`${n}/`),i=z3(s)||{},a=BMn(s),c=(a.length>0?a:VQt(i?.search)).map(l=>{let d=String(l.dir||l.type||l.t||"").trim();return _X(l,d)});if(c.length===0&&/未登录,访问受限/.test(s)){let l=[];for(let f of D_)for(let h=2;h<=lMn;h+=1){let p=await yX(e,{t:f,pg:h}).catch(()=>[]);if(!(!Array.isArray(p)||p.length===0))for(let m of p)String(m.vod_name||"").includes(t)&&l.push(m)}let d=new Set;return l.filter(f=>{let h=String(f.vod_id||"").trim()||`${f.vod_name}|${f.vod_pic}`;return!h||d.has(h)?!1:(d.add(h),!0)})}let u=new Set;return c.filter(l=>{let d=String(l.vod_id||"").trim()||`${l.vod_name}|${l.vod_pic}`;return!d||u.has(d)?!1:(u.add(d),!0)})}function jMn(e){let t=[];if(e?.panlist&&typeof e.panlist=="object"){let n=e.panlist,s=Array.isArray(n.url)?n.url:[];for(let i=0;i0?t:Array.isArray(e)?e:Array.isArray(e?.downlist)?e.downlist:Array.isArray(e?.list)?e.list:Array.isArray(e?.data)?e.data:Array.isArray(e?.urls)?e.urls:e?.data&&typeof e.data=="object"?Object.entries(e.data).flatMap(([n,s])=>Array.isArray(s)?s.map(i=>({...i,groupKey:n})):Array.isArray(s?.links)?s.links.map(i=>({...i,groupKey:n,groupName:s?.name||n})):[]):[]}async function AX(e,t,r){let n=D_.includes(String(t||"").trim())?String(t||"").trim():"tv",s=String(r||"").trim();if(!s)return[];let i=await $p(e),a=await vMe(e,`/res/downurl/${n}/${encodeURIComponent(s)}`,{},`${i}/${n}/${s}`);return jMn(a)}async function IQt(e,t){let r=sd(t);if(!r.dir||!r.id)return null;let n=await KQt(e,r.dir,r.id).catch(()=>null);return n?DQt(n,r.dir,r.id):null}async function KQt(e,t,r){let n=await $p(e),s=await Y3(e,`/${t}/${encodeURIComponent(r)}`,`${n}/${t}`);return(z3(s)||{})?.d||null}async function hN(e,t,r,n=!0){let s=await $p(e),i=await qQt(e),a=await jb.get(`${s}/user/login`,{headers:{"User-Agent":Vb,Referer:`${s}/`,...i?{Cookie:i}:{}}});i=dN(i,a.headers?.["set-cookie"]||[]);let o=String(a.data||""),c=String(a?.request?.res?.responseUrl||"");if(/app_auth=/i.test(i)&&(a.status===301||a.status===302||bQt(o)||c&&!/\/user\/login(?:$|[?#])/.test(c)))return await G0(e.server,"cookie",i),await G0(e.server,"username",String(t||"").trim()),await G0(e.server,"password",String(r||"").trim()),{success:!0,message:"\u5DF2\u767B\u5F55",cookie:i};let u=new URLSearchParams;u.set("username",String(t||"").trim()),u.set("password",String(r||"").trim()),n&&u.set("cookietime","10506240"),u.set("code",""),u.set("dosubmit","1"),u.set("siteid","1");let l=await jb.post(`${s}/user/login`,u.toString(),{headers:{"User-Agent":Vb,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",Referer:`${s}/user/login`,Origin:s,Accept:"application/json, text/plain, */*",...i?{Cookie:i}:{}}}),d=typeof l.data=="string"?(()=>{try{return JSON.parse(l.data)}catch{return null}})():l.data||{},f=dN(i,l.headers?.["set-cookie"]||[]),h=typeof l.data=="string"?l.data:"",p=String(l?.request?.res?.responseUrl||"");if(l.status<400&&/app_auth=/i.test(f)&&(d?.code===200||bQt(h)||p&&!/\/user\/login(?:$|[?#])/.test(p)))return await G0(e.server,"cookie",f),await G0(e.server,"username",String(t||"").trim()),await G0(e.server,"password",String(r||"").trim()),{success:!0,message:d?.message||d?.msg||"\u767B\u5F55\u6210\u529F",cookie:f};if(l.status>=400||d?.code!==200)throw new Error(d?.message||d?.msg||`\u767B\u5F55\u5931\u8D25 HTTP ${l.status}`);if(!f||!/app_auth=/i.test(f))throw new Error("\u767B\u5F55\u6210\u529F\u4F46\u672A\u62FF\u5230 app_auth Cookie");return await G0(e.server,"cookie",f),await G0(e.server,"username",String(t||"").trim()),await G0(e.server,"password",String(r||"").trim()),{success:!0,message:d?.message||d?.msg||"\u767B\u5F55\u6210\u529F",cookie:f}}async function KMn(e,t){return await Ti(e,t),{}}async function GMn(e){let t=Qr("filejin",arguments[0]||{}),r=Wr(t);if(r)return r;let i={class:(await VMn(e)).map(a=>({type_id:String(a.type_id),type_name:a.type_name})),filters:$Mn()};return hn(t,i,bt.semiStatic),i}async function zMn(e){let t=await HMn(e).catch(()=>[]);return(!Array.isArray(t)||t.length===0)&&(t=await yX(e,{t:"tv",pg:1})),{list:t.slice(0,lN).map(r=>_Me(r))}}async function YMn(e){let t=e.body||{},r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"tv").trim(),s=t.extend||t.filters||t.ext||{},i=TMn(n);if(i){if(r>1)return G3(r,0,[]);let l=i.vodId,d=i.baseVod||null,h=(Array.isArray(t?.list)?t.list:[]).find(_=>String(_?.vod_id||"")===fMe(l)||String(_?.vod_id||"")===l);if(h&&(d=Fy({...h,vod_id:sd(l).id,dir:sd(l).dir})),d||(d=await IQt(e,l).catch(()=>null)),!d){let _=sd(l);d=Fy({vod_id:_.id,dir:_.dir,vod_name:l})}let p=sd(l),g=(await AX(e,p.dir,p.id).catch(()=>[])).map(_=>IMn(d,_)).filter(_=>_&&_.__panType===i.panType).sort((_,y)=>(y.__time||0)-(_.__time||0)).map(({__panType:_,__time:y,...A})=>A);return G3(1,g.length,g)}let a=PQt(n);if(a){if(r>1)return G3(r,0,[]);let l=a.vodId,d=a.baseVod||null,h=(Array.isArray(t?.list)?t.list:[]).find(y=>String(y?.vod_id||"")===n||String(y?.vod_id||"")===fMe(l));if(h){let y=sd(l);d=Fy({...h,vod_id:y.id,dir:y.dir})}if(d||(d=await IQt(e,l).catch(()=>null)),!d){let y=sd(l);d=Fy({vod_id:y.id,dir:y.dir})}let p=sd(l),m=await AX(e,p.dir,p.id).catch(()=>[]),g=new Map;for(let y of m){let A=AMe(y);if(!pMe.has(A)||!yMe(A))continue;let E=g.get(A)||{count:0};E.count+=1,g.set(A,E)}let _=xMn([...g.entries()].map(([y,A])=>{let E=SMn(l,y,d),v=MQt(y);return{vod_id:E,vod_name:v,vod_pic:BQt(e,kQt(y))||"",type_id:E,type_name:v,vod_remarks:`${A.count} \u6761\u8D44\u6E90`,vod_tag:"folder",cate:{id:E,name:v},__panType:y}})).map(({__panType:y,...A})=>A);return G3(1,_.length,_)}let o=D_.includes(String(s.sc||n).trim())?String(s.sc||n).trim():"tv",c=await yX(e,{t:o,pg:r,ext:s}),u=await SMe(e,o,r,s).catch(()=>null);return{page:r,pagecount:u?.pagecount||(c.length>=lN?r+1:r),limit:lN,total:(u?.pagecount||r)*lN,list:c.map(l=>_Me(l)),count:c.length}}async function QMn(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let s=LQt(n)||vMn(n);if(s?.url){let u=String(n||""),l=yQt.get(u);if(l){r.push(l);continue}let d=await Es(s.url,e).catch(()=>({froms:"",urls:"",links:[]})),f={vod_id:u,vod_name:s.name||s.baseVodName||"\u8D44\u6E90",vod_pic:s.pic||"",vod_remarks:s.baseVodRemark||[s.sourceName,s.note,s.time].filter(Boolean).join(" \xB7 "),vod_year:s.baseVodYear||"",vod_actor:s.baseVodActor||"",vod_director:s.baseVodDirector||"",vod_area:s.baseVodArea||"",vod_content:s.content||"",vod_play_from:d?.froms||"",vod_play_url:d?.urls||""};Array.isArray(d?.links)&&d.links.length>0&&(f.vod_links=d.links),yQt.set(u,f),r.push(f);continue}let i=PQt(n);if(!i?.vodId)continue;let a=sd(i.vodId);if(!a.dir||!a.id)continue;let o=await KQt(e,a.dir,a.id).catch(()=>null),c=DQt(o||{},a.dir,a.id,i.baseVod||null);r.push({...c,vod_id:n,vod_play_from:"",vod_play_url:""})}return{list:r}}async function WMn(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!t)return G3(1,0,[]);let n=_Mn(t),s=vQt.get(n),i=null;return s?i=s:(i=await $n("filejin","search",n,async()=>{let a=await jQt(e,t,RQt),o=[],c=new Set,u=await gMn(a,4,async l=>{let d=sd(l.vod_id),h=(await AX(e,d.dir,d.id).catch(()=>[])).filter(p=>{let m=AMe(p);return pMe.has(m)&&yMe(m)});return{vod:l,enabledLinks:h}});for(let l of u){if(!l?.vod||!Array.isArray(l.enabledLinks)||l.enabledLinks.length===0)continue;let d=l.vod,f=String(d.vod_id||"").trim()||`${d.vod_name||""}|${d.vod_pic||""}`;!f||c.has(f)||(c.add(f),o.push(_Me(d)))}return o},{timeout:3e4}),vQt.set(n,i)),{page:r,pagecount:1,limit:i.length,total:i.length,list:i,count:i.length}}async function JMn(e,t){return Ps(e,t)}var uMn,Vb,lN,RQt,lMn,dMn,fMn,hMn,pMn,mMn,D_,CQt,Uy,pMe,K0,jb,gX,yQt,vQt,SQt,NMn,TQt,uN,OMn,XMn,ZMn,vX=ie(()=>{vr();Dn();Cr();yi();fc();fa();Ds();ia();uMn="https://www.xn--rhqp87dfoiv9a830g.com",Vb="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",lN=20,RQt=Number.POSITIVE_INFINITY,lMn=8,dMn=20*1e3,fMn=80,hMn=15e3,pMn=10*60*1e3,mMn=60*60*1e3,D_=["tv","mv","ac"],CQt={tv:"\u5267\u96C6",mv:"\u7535\u5F71",ac:"\u52A8\u6F2B"},Uy={genre:{tv:["\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\u72AF\u7F6A","\u60AC\u7591","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u5BB6\u5EAD","\u77ED\u7247","\u6821\u56ED","\u6587\u827A","\u8FD0\u52A8","\u9752\u6625","\u540C\u6027","\u52B1\u5FD7","\u4EBA\u6027","\u7F8E\u98DF","\u5973\u6027","\u6CBB\u6108","\u5386\u53F2","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0"],mv:["\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\u72AF\u7F6A","\u60AC\u7591","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u5BB6\u5EAD","\u77ED\u7247","\u6821\u56ED","\u6587\u827A","\u8FD0\u52A8","\u9752\u6625","\u540C\u6027","\u52B1\u5FD7","\u4EBA\u6027","\u7F8E\u98DF","\u5973\u6027","\u6CBB\u6108","\u5386\u53F2","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0"],ac:["\u5267\u60C5","\u840C\u7CFB","\u79D1\u5E7B","\u65E5\u5E38","\u6218\u6597","\u6218\u4E89","\u70ED\u8840","\u673A\u6218","\u6E38\u620F","\u641E\u7B11","\u604B\u7231","\u540E\u5BAB","\u767E\u5408","\u57FA\u8150","\u5192\u9669","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u6050\u6016","\u60CA\u609A","\u72AF\u7F6A","\u60AC\u7591","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u6CE1\u9762","\u6821\u56ED","\u8FD0\u52A8","\u9752\u6625","\u7F8E\u98DF","\u6CBB\u6108","\u81F4\u90C1","\u52B1\u5FD7","\u5386\u53F2","\u7EAA\u5F55","\u5F02\u4E16\u754C"]},year:["\u8FD1\u4E09\u5E74","2026","2025","2024","2023","2022","2021","2020","20\u5E74\u4EE3","10\u5E74\u4EE3","00\u5E74\u4EE3","90\u5E74\u4EE3","80\u5E74\u4EE3","70\u5E74\u4EE3","60\u5E74\u4EE3","\u66F4\u65E9"],yearValue:["3","2026","2025","2024","2023","2022","2021","2020","120","110","100","90","80","70","60","1"],region:["\u6D77\u5916","\u6B27\u7F8E","\u4E9A\u6D32","\u7F8E\u56FD","\u65E5\u672C","\u97E9\u56FD","\u82F1\u56FD","\u6CD5\u56FD","\u5FB7\u56FD","\u5370\u5EA6","\u6CF0\u56FD","\u745E\u5178","\u5DF4\u897F","\u5927\u9646","\u9999\u6E2F","\u53F0\u6E7E","\u52A0\u62FF\u5927","\u4FC4\u7F57\u65AF","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"],lang:["\u82F1\u8BED","\u6CD5\u8BED","\u56FD\u8BED","\u7CA4\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u5FB7\u8BED","\u4FC4\u8BED","\u95FD\u5357\u8BED","\u4E39\u9EA6\u8BED","\u6CE2\u5170\u8BED","\u745E\u5178\u8BED","\u5370\u5730\u8BED","\u632A\u5A01\u8BED","\u610F\u5927\u5229\u8BED","\u897F\u73ED\u7259\u8BED","\u65E0\u5BF9\u767D"],sort:[["\u6DFB\u52A0\u65F6\u95F4",""],["\u66F4\u65B0\u65F6\u95F4","uptime"],["\u4E0A\u6620/\u9996\u64AD\u65F6\u95F4","date"],["\u8BC4\u5206\u6700\u9AD8","score"],["\u8BC4\u5206\u4EBA\u6570","number"],["\u8BC4\u5206\u603B\u4EBA\u6570","numbers"],["\u7EFC\u5408\u8BC4\u5206","cscore"]],quality:[["\u5168\u90E8",""],["720P","720P"],["1080P","1080P"],["4K","4K"],["3D","3D"],["BD","BD"],["HDR","HDR"],["DV","DV"],["\u539F\u76D8","\u539F\u76D8"]],status:[["\u5168\u90E8",""],["\u9884\u544A","\u9884\u544A"],["\u8FDE\u8F7D/\u62A2\u5148\u7248","\u8FDE\u8F7D"],["\u5B8C\u7ED3","\u5B8C\u7ED3"]]},pMe=new Set(["quark","uc","baidu","tianyi","115","123","ali","yidong","xunlei","guangya","magnet"]),K0={baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,quark:/https?:\/\/pan\.quark\.cn\/s\/[a-zA-Z0-9]+/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[a-zA-Z0-9]+(?:\?pwd=[a-zA-Z0-9]{4})?(?:#)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+(?:%[0-9A-Fa-f]{2})*(?:([^)]*))?|web\/share\?code=[^&\s]+)/i,uc:/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[a-zA-Z0-9_-]+(?:\?[^\s<>"']*)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]{4})?(?:#)?/i,ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9]+(?:\/folder\/[a-zA-Z0-9_-]+)?/i,mobile:/https?:\/\/(?:(?:www\.)?yun\.139\.com\/shareweb\/#\/w\/i\/[a-zA-Z0-9]+|(?:www\.)?caiyun\.139\.com\/(?:w\/i\/[a-zA-Z0-9]+|m\/i\?[a-zA-Z0-9]+)[^\s<>"']*|caiyun\.feixin\.10086\.cn\/[a-zA-Z0-9]+)/i,guangya:/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/i,magnet:/^magnet:\?xt=urn:btih:[A-Za-z0-9]+/i},jb=ye.create({timeout:hMn,validateStatus:()=>!0,httpsAgent:fn({insecure:!0}).httpsAgent,headers:{"User-Agent":Vb,Accept:"text/html,application/json,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),gX={ts:0,data:[]},yQt=new _t(200,pMn),vQt=new _t(fMn,dMn),SQt=new _t(80,15*1e3);NMn=90*1e3,TQt=60*1e3,uN=new _t(16,NMn),OMn=` +(async () => { + const { parentPort } = await import('node:worker_threads'); + parentPort.on('message', (msg) => { + try { + const { N: nHex, x: xHex, t } = msg; + const N = BigInt('0x' + nHex); + let y = BigInt('0x' + xHex); + const steps = t | 0; + for (let i = 0; i < steps; i += 1) y = (y * y) % N; + parentPort.postMessage({ y: y.toString(16) }); + } catch (err) { + parentPort.postMessage({ error: (err && err.message) || String(err) }); + } + }); +})(); +`;XMn={extractBalancedLiteral:gMe,extractInlineObj:z3,getSearchMatchList:VQt,normalizeListItem:_X,fetchSearchVideos:jQt,fetchCategoryPage:SMe,fetchVideos:yX,fetchPanLinks:AX,decodeResourceId:LQt,solveVdfSyncImpl:DMn,solveVdfMainThread:UQt,solveVdfWorker:FQt,solveVdfChallenge:$Qt};ZMn={meta:{key:"filejin",name:"\u2601\uFE0F \u89C2\u5F71",type:3},api:async e=>{e.post("/init",KMn),e.post("/home",GMn),e.post("/homeVod",zMn),e.post("/category",YMn),e.post("/detail",QMn),e.post("/play",JMn),e.post("/search",WMn),e.post("/login",async t=>hN(t,t.body?.username,t.body?.password,t.body?.remember!==!1)),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}}});var dWt={};kt(dWt,{default:()=>lWt});function z0(e=""){return String(e||"").replace(/\s+/g," ").trim()}function xMe(e=""){return String(e||"").replace(//gi," ").replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function AN(e=""){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:t.startsWith("//")?`https:${t}`:new URL(t,`${gN}/`).toString():""}function sWt(e){try{return JSON.parse(Buffer.from(String(e||""),"base64url").toString("utf8"))||null}catch{return null}}function okn(e){let t=String(e||"");if(t.startsWith("!vod1!"))try{let n=JSON.parse(Buffer.from(t.slice(6),"base64url").toString("utf8"));if(Array.isArray(n)&&n[0]==="pan1"&&/^\d+$/.test(String(n[1]||""))){let s=Number.parseInt(n[2],10),i=Number.parseInt(n[3],10);if(Number.isInteger(s)&&s>=0&&Number.isInteger(i)&&i>=0)return{tid:String(n[1]),lineIndex:s,episodeIndex:i}}}catch{}let r=t.match(/^p1:(\d+):(\d+):(\d+)$/);return r?{tid:r[1],lineIndex:Number.parseInt(r[2],10),episodeIndex:Number.parseInt(r[3],10)}:null}function IX(e){return(e?.body&&Object.keys(e.body).length?e.body:null)||e?.query||{}}function IMe(e,t){let r=Object.create(e||null);return Object.defineProperty(r,"body",{value:t||{},enumerable:!0,configurable:!0,writable:!0}),r}function wMe(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function ckn(e=""){return String(e||"").match(/(?:\?|\/|^)thread-(\d+)\.htm/i)?.[1]||""}function ukn(e=""){return String(e||"").match(/(?:\?|\/|^)forum-(\d+)(?:-\d+)?\.htm/i)?.[1]||""}function NMe(e){return`/?thread-${encodeURIComponent(String(e||""))}.htm`}function lkn(e){return`/?search-${encodeURIComponent(String(e||"").trim())}-1.htm`}function dkn(e={}){let t=[e.quality||"0",e.source||"0",e.hdr||"0",e.genre||"0"].map(r=>String(r||"0").replace(/\D+/g,"")||"0");return t.every(r=>r==="0")?"":t.join("_")}function fkn(e,t=1,r={}){let n=`/?forum-${encodeURIComponent(String(e||"48"))}-${wMe(t)}.htm`,s=new URLSearchParams,i=dkn(r);i&&s.set("tagids",i),r.orderby&&s.set("orderby",String(r.orderby)),r.digest&&s.set("digest",String(r.digest));let a=s.toString();return a?`${n}&${a}`:n}function hkn(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();if(r)return`${t}://${r}`;try{return String(e?.server?.address?.()?.url||"").replace(/\/+$/,"")}catch{return""}}function pkn(e){return String(e?.server?.prefix||"").replace(/\/+$/,"")||`/spider/${rWt}/3`}function iWt(e,t=""){let r=AN(t);if(!r)return"";let n=hkn(e);return n?`${n}${pkn(e)}/proxy/pic/${Buffer.from(r,"utf8").toString("base64url")}.jpg`:r}async function RX(e){let t=await e?.server?.db?.getObjectDefault("/pan1",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:z0(t?.replyMessage||RMe)||RMe}}function mkn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=r.trim(),s=n.indexOf("=");s<=0||t.set(n.slice(0,s).trim(),n.slice(s+1).trim())}),t}function gkn(e="",t=[]){let r=mkn(e);for(let n of Array.isArray(t)?t:[t]){let s=String(n||"").split(";")[0].trim(),i=s.indexOf("=");if(i<=0)continue;let a=s.slice(0,i).trim(),o=s.slice(i+1).trim();!o||o.toLowerCase()==="deleted"?r.delete(a):r.set(a,o)}return[...r.entries()].map(([n,s])=>`${n}=${s}`).join("; ")}async function aWt(e,t,r){let n=r?.headers?.["set-cookie"];if(!n)return t;let s=gkn(t,n);return s!==t&&await e.server.db.push("/pan1/cookie",s),s}function _kn(e=""){return String(e||"").match(/\bvar\s+uid\s*=\s*(\d+)\s*;/i)?.[1]||"0"}function Akn(e=""){return/您所在的用户组权限不足|请先登录后操作|登录后体验更多功能/.test(String(e||""))}function Ekn(e=""){let t=_kn(e);if(t==="0"||Akn(e))throw new Error("pan1 Cookie \u672A\u914D\u7F6E\u3001\u5DF2\u5931\u6548\u6216\u7528\u6237\u7EC4\u6743\u9650\u4E0D\u8DB3\uFF0C\u8BF7\u524D\u5F80\u7AD9\u6E90\u914D\u7F6E\u586B\u5199\u8BBA\u575B Cookie");return t}async function EN(e,t,r={}){let n=await RX(e),s=await CMe.get(AN(t),{headers:{"User-Agent":bX,Referer:r.referer||`${gN}/`,...r.noCache?{"Cache-Control":"no-cache",Pragma:"no-cache"}:{},...n.cookie?{Cookie:n.cookie}:{}}});if(await aWt(e,n.cookie,s),s.status>=400)throw new Error(`pan1 HTTP ${s.status}`);let i=String(s.data||"");return r.auth!==!1&&Ekn(i),i}function ykn(e){if(e&&typeof e=="object")return e;try{return JSON.parse(String(e||""))}catch{return{code:-1,message:z0(e)||"\u8FD4\u56DE\u683C\u5F0F\u65E0\u6548"}}}async function vkn(e,t,r,n){let s=await RX(e);if(!s.cookie)throw new Error("pan1 \u81EA\u52A8\u56DE\u590D\u9700\u8981\u5148\u914D\u7F6E\u8BBA\u575B Cookie");let i=await CMe.post(AN(t),tWt.default.stringify(r),{headers:{"User-Agent":bX,Referer:n||`${gN}/`,Origin:gN,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Cookie:s.cookie}});if(await aWt(e,s.cookie,i),i.status>=400)throw new Error(`pan1 \u56DE\u5E16 HTTP ${i.status}`);return ykn(i.data)}function pN(e){return[{n:"\u5168\u90E8",v:""},...e.map(([t,r])=>({n:t,v:String(r)}))]}function Skn(e=[]){let t=[{key:"orderby",name:"\u6392\u5E8F",value:pN([["\u6700\u65B0\u56DE\u590D","lastpid"],["\u6700\u65B0\u53D1\u5E03","tid"]])},{key:"digest",name:"\u4E3B\u9898",value:pN([["\u7CBE\u534E","1"],["\u70ED\u95E8","5"]])},{key:"quality",name:"\u5206\u8FA8\u7387",value:pN([["480P","22"],["720P","23"],["1080P","24"],["2K","25"],["4K","26"]])},{key:"source",name:"\u7247\u6E90",value:pN([["\u84DD\u5149\u539F\u76D8/ISO","217"],["\u84DD\u5149\u539F\u76D8/REMUX","218"],["BDRip/Encode","219"],["WEB-DL/WEBRip","220"],["HDTV/HDRip","221"]])},{key:"hdr",name:"\u753B\u8D28",value:pN([["\u675C\u6BD4\u89C6\u754C/DV","317"],["HDR","318"],["HQ","319"],["EDR","320"],["HLG","321"],["SDR","322"],["60FPS","323"]])},{key:"genre",name:"\u7C7B\u578B",value:pN([["\u53E4\u88C5","27"],["\u559C\u5267","39"],["\u52A8\u4F5C","38"],["\u6218\u4E89","37"],["\u7231\u60C5","36"],["\u60AC\u7591","35"],["\u5947\u5E7B","34"],["\u5192\u9669","33"],["\u72AF\u7F6A","32"],["\u60CA\u609A","31"],["\u5267\u60C5","30"],["\u5386\u53F2","29"],["\u7EAA\u5F55\u7247","28"],["\u52A8\u753B","40"]])}],r={};for(let n of e)akn.has(String(n.type_id))&&(r[String(n.type_id)]=t);return r}function Tkn(e=""){let t=Xt(e),r=new Set,n=[];return t("li[fid]").each((s,i)=>{let a=t(i),o=String(a.attr("fid")||"").trim(),u=a.find('a[href*="forum-"]').toArray().map(l=>z0(t(l).find("span").first().text()||t(l).attr("title")||t(l).text())).find(l=>l&&!/主题\s*:|今日\s*:/.test(l))||"";!o||!u||r.has(o)||!nWt.has(o)||(r.add(o),n.push({type_id:o,type_name:u.replace(/主题:.*/,"").trim()}))}),n}function oWt(e=""){return AN(`/upload/forum/${String(e||"48")}.png`)}function OMe(e="",t){let r=Xt(e),n=[],s=new Set;return r("li.thread[data-tid], li.media.thread[data-tid]").each((i,a)=>{let o=r(a),c=String(o.attr("data-tid")||"").trim();if(!c||s.has(c))return;let u=o.find('.style3_subject a[href*="thread-"]').first().length?o.find('.style3_subject a[href*="thread-"]').first():o.find('a[href*="thread-"]').filter((y,A)=>!String(r(A).attr("href")||"").includes("#comments")).last(),l=z0(u.text());if(!l||/版规|公告:|举报楼|发帖必看/.test(l))return;let d=o.find('a[href*="forum-"]').first(),f=ukn(d.attr("href")||"")||"48";if(!nWt.has(f))return;let h=o.find('a[href*="tagids="]').map((y,A)=>z0(r(A).text())).get().filter(Boolean),p=z0(o.find(".date").first().text()),m=z0(o.find('a[href*="#comments"]').first().text()).replace(/\D+/g,""),g=[...h.slice(0,4),p,m?`${m}\u8BC4`:""].filter(Boolean).join(" \xB7 "),_=iWt(t,oWt(f));s.add(c),n.push({vod_id:c,vod_name:l,vod_pic:_,vod_remarks:g,type_name:z0(d.text())||"123\u8D44\u6E90"})}),n.slice(0,Q3)}function bkn(e="",t=1){let r=Xt(e),n=t;return r(".pagination .page-link").each((s,i)=>{let a=String(r(i).attr("href")||""),o=Number.parseInt(a.match(/forum-\d+-(\d+)\.htm/i)?.[1]||z0(r(i).text()).replace(/\D+/g,""),10);Number.isFinite(o)&&o>n&&o<1e5&&(n=o)}),n}function DMe(e=""){let t=String(e||"").replace(/&/gi,"&").replace(//|//gi,"/").replace(/:|:/gi,":").replace(/\\u002f|\\x2f/gi,"/").replace(/\\u003a|\\x3a/gi,":").replace(/\\u0026|\\x26/gi,"&").replace(/\\\//g,"/");for(let r=0;r<3&&/%[0-9a-f]{2}/i.test(t);r+=1)try{let n=decodeURIComponent(t);if(n===t)break;t=n}catch{break}return t}function Ikn(e=""){let t=[],r=new Set,n=[String(e||"")];for(;n.length>0&&t.length<200;){let s=n.shift(),i=DMe(s).trim();if(!i||r.has(i))continue;r.add(i),t.push(i);let a=i.match(/(?:https?%3a%2f%2f|%2f%2f)[^\s"'<>]+/ig)||[];n.push(...a);try{let o=new URL(i,gN);for(let[,c]of o.searchParams)n.push(c)}catch{}if(/^[a-zA-Z0-9+/_=-]{16,}$/.test(i))try{let o=Buffer.from(i,"base64url").toString("utf8");/https?:|123(?:684|865|685|912|pan|592)/i.test(o)&&n.push(o)}catch{}}return t}function YQt(e=""){let t=DMe(e).trim().replace(/^[\s="'(>]+|[\s,。;、\[\]))}"']+$/g,"").replace(/[&#?]+$/g,"");t.startsWith("//")?t=`https:${t}`:/^https?:\/\//i.test(t)||(t=`https://${t}`),mN.lastIndex=0;let r=mN.exec(t);return mN.lastIndex=0,r?.[0]?String(r[0]).replace(/[\s,。;、\[\]))}"']+$/g,""):""}function cWt(e=""){let t=new Set,r=DMe(e),n=Xt(r),s=[r,n.root().text()];n("[href], [data-href], [data-url], [data-link], [onclick]").each((i,a)=>{for(let o of["href","data-href","data-url","data-link","onclick"]){let c=n(a).attr(o);c&&s.push(c)}});for(let i of s)for(let a of Ikn(i)){mN.lastIndex=0;for(let o of a.matchAll(mN)){let c=YQt(o[0]);c&&t.add(c)}mN.lastIndex=0,bMe.lastIndex=0;for(let o of a.matchAll(bMe)){let c=YQt(o[1]);c&&t.add(c)}bMe.lastIndex=0}return[...t]}function TX(e=""){let t=xMe(e);return/本帖含有特定内容[^。]{0,80}回复后再查看|本帖含有隐藏内容[^。]{0,80}回复后查看|回复\s*后查看|回帖后可见/.test(t)}function Rkn(e){return e('.message[isfirst="1"] img[src], .message[isfirst="1"] img[data-original], .message[isfirst="1"] img[data-src]').map((t,r)=>e(r).attr("data-original")||e(r).attr("data-src")||e(r).attr("src")).get().find(t=>t&&!/avatar|logo|loading|emoicon|forum\//i.test(t))||""}function Ckn(e="",t={}){let r=Xt(e),n=z0(r(".card-thread .card-header h4.break-all").first().text()||r("h1").first().text()||t.title||t.tid||"123\u8D44\u6E90"),s=r('.message[isfirst="1"]').first().clone();s.find("script,style,.tt-license,.alert").remove();let i=xMe(s.text()).slice(0,1600)||n,a=Rkn(r);return{title:n,content:i,image:a}}async function xkn(e,t){return!!await e?.server?.db?.getObjectDefault(`/pan1/replied/${t}`,0)}async function wkn(e,t){await e?.server?.db?.push(`/pan1/replied/${t}`,Date.now())}async function Nkn(e,t,r,n){if(!n.autoReply)return{replied:!1,reason:"disabled"};if(!n.cookie)throw new Error("\u5E16\u5B50\u9700\u8981\u56DE\u590D\uFF0C\u4F46\u5C1A\u672A\u914D\u7F6E pan1 \u8BBA\u575B Cookie");if(await xkn(e,t))return{replied:!1,reason:"already-replied"};let s=Xt(r),i=s("#quick_reply_form"),a=String(i.attr("action")||`?post-create-${t}-1.htm`).trim();if(!i.length||!a)throw new Error("\u5E16\u5B50\u9700\u8981\u56DE\u590D\uFF0C\u4F46\u672A\u627E\u5230\u5FEB\u901F\u56DE\u5E16\u8868\u5355");let o={doctype:"1",return_html:"1",quotepid:"0",quick_reply_message:"0",message:n.replyMessage||RMe};i.find("input[name], select[name]").each((f,h)=>{let p=String(s(h).attr("name")||"").trim();!p||Object.prototype.hasOwnProperty.call(o,p)||(o[p]=String(s(h).val()??s(h).attr("value")??""))});let c=skn-(Date.now()-zQt);c>0&&await Yt(c);let u=await vkn(e,a,o,AN(NMe(t)));zQt=Date.now();let l=Array.isArray(u)?u[0]:u?.code,d=Array.isArray(u)?u[1]:u?.message;if(String(l)!=="0")throw new Error(`pan1 \u81EA\u52A8\u56DE\u5E16\u5931\u8D25\uFF1A${xMe(d||l||"unknown")}`);return await wkn(e,t),{replied:!0,reason:"success"}}async function Okn(e,t,r,n){if(!TX(r))return{replied:!1,reason:"not-required"};let s=String(t);if(SX.has(s))return SX.get(s);let i=Nkn(e,t,r,n).finally(()=>SX.delete(s));return SX.set(s,i),i}async function Dkn(e,t,r=!0){let n=NMe(t),s="",i=[],a=r?ikn:[0];for(let o=0;o0&&await Yt(a[o]),s=await EN(e,`${n}&_t=${Date.now()}-${o}`,{referer:AN(n),noCache:!0}),i=cWt(s),!(i.length>0||!TX(s)));o+=1);return{html:s,links:i}}async function Pkn(e,t){return Ti(e,t)}async function QQt(e){let t="home",r=_N.get(t);if(r)return r;let n=await EN(e,"/"),s=Tkn(n),i={class:s,filters:Skn(s)};return _N.set(t,i),i}async function WQt(e){let t=await EN(e,"/");return{list:OMe(t,e)}}async function XQt(e){let t=IX(e),r=String(t.id||t.tid||"48").replace(/\D+/g,"")||"48",n=wMe(t.page||t.pg),s=t.filters||t.extend||t.ext||t.filter||{},i=`category:${r}:${n}:${JSON.stringify(s)}`,a=_N.get(i);if(a)return a;let o=await EN(e,fkn(r,n,s)),c=OMe(o,e),u=bkn(o,n),l={page:n,pagecount:u,limit:Q3,total:u*Q3,list:c,count:c.length};return _N.set(i,l),l}async function uWt(e,t,r={}){let n=`detail:${t}`,s=GQt.get(n);if(s)return s;let i=await RX(e),a=await EN(e,NMe(t)),o=cWt(a),c={replied:!1,reason:"not-required"};if(o.length===0&&TX(a)){c=await Okn(e,t,a,i);let d=c.replied||c.reason==="already-replied";({html:a,links:o}=await Dkn(e,t,d))}let u=Ckn(a,r),l=iWt(e,u.image||r.pic||oWt(r.fid||"48"));return s={tid:t,title:u.title,content:u.content,pic:l,links:o,locked:TX(a),replyResult:c},(o.length>0||!s.locked)&&GQt.set(n,s),s}async function JQt(e){let t=IX(e),r=Array.isArray(t.id)?t.id:[t.id],n=[];for(let s of r.filter(Boolean)){let i=sWt(s);if(i?.type==="pan"&&i.url){let l=await Es([i.url],e).catch(()=>null),d={vod_id:String(s),vod_name:i.title||"123\u7F51\u76D8\u8D44\u6E90",vod_pic:i.pic||"",vod_content:i.content||"",vod_remarks:"123\u7F51\u76D8"};l?.froms&&l?.urls&&(d.vod_play_from=l.froms,d.vod_play_url=l.urls),n.push(d);continue}let a=i?.type==="thread"?i:{type:"thread",tid:ckn(String(s))||String(s||"").replace(/\D+/g,"")},o=String(a.tid||"").trim();if(!o)continue;let c=await uWt(e,o,a),u={vod_id:String(s),vod_name:c.title,vod_pic:c.pic||a.pic||"",vod_content:c.content,type_name:"123\u7F51\u76D8\u8D44\u6E90",vod_remarks:c.links.length>0?`${c.links.length} \u6761123\u7F51\u76D8\u8D44\u6E90`:c.locked?"\u5E16\u5B50\u9700\u8981\u56DE\u590D\uFF0C\u5C1A\u672A\u89E3\u9501\u8D44\u6E90":"\u672A\u53D1\u73B0123\u7F51\u76D8\u94FE\u63A5"};if(c.links.length>0){let l=await Es(c.links,e).catch(()=>null);l?.froms&&l?.urls?(u.vod_play_from=l.froms,u.vod_play_url=l.urls,Array.isArray(l.links)&&l.links.length>0&&(u.vod_links=l.links)):u.vod_remarks="\u53D1\u73B0123\u7F51\u76D8\u94FE\u63A5\uFF0C\u4F46\u672A\u53D6\u5F97\u53EF\u64AD\u653E\u6587\u4EF6"}n.push(u)}return{list:n}}async function ZQt(e){let t=IX(e),r=z0(t.wd||t.keyword||""),n=wMe(t.page||t.pg);if(!r||n>1)return{page:n,pagecount:1,limit:Q3,total:0,list:[],count:0};let s=`search:${r}`,i=_N.get(s);if(i)return i;let a=await EN(e,lkn(r)),o=OMe(a,e),c={page:1,pagecount:1,limit:Q3,total:o.length,list:o,count:o.length};return _N.set(s,c),c}async function eWt(e,t){let r=IX(e),n=okn(r.id);if(n){let i=await uWt(e,n.tid),a=i.links.length>0?await Es(i.links,e).catch(()=>null):null,o=String(a?.froms||"").split("$$$")[n.lineIndex]||"",c=String(a?.urls||"").split("$$$")[n.lineIndex]?.split("#")[n.episodeIndex]||"",u=c.indexOf("$"),l=u>=0?c.slice(u+1):"";return o&&l?Ps(IMe(e,{...r,flag:o,id:l}),t):{parse:0,url:[],msg:"\u77ED\u64AD\u653EID\u5BF9\u5E94\u7684123\u8D44\u6E90\u5DF2\u5931\u6548\uFF0C\u8BF7\u5237\u65B0\u8BE6\u60C5\u540E\u91CD\u8BD5"}}let s=sWt(r.id);if(s?.type==="pan"&&s.url){let i=await Es([s.url],e).catch(()=>null),a=String(i?.froms||"").split("$$$")[0]||"",o=String(i?.urls||"").split("$$$")[0]?.split("#")[0]||"",c=o.indexOf("$"),u=c>=0?o.slice(c+1):"";return a&&u?Ps(IMe(e,{...r,flag:a,id:u}),t):{parse:0,url:[],msg:"\u5DF2\u53D6\u5F97123\u5206\u4EAB\u94FE\u63A5\uFF0C\u4F46\u5F53\u524D\u7F51\u76D8\u672A\u8FD4\u56DE\u53EF\u64AD\u653E\u6587\u4EF6"}}return Ps(IMe(e,r),t)}async function Lkn(e,t){let r=String(e.params?.encoded||"").replace(/\.jpg$/i,""),n="";try{n=Buffer.from(r,"base64url").toString("utf8")}catch{}let s="";try{s=new URL(n).hostname}catch{}if(!n||!(s==="pan1.me"||s.endsWith(".pan1.me")))return t.code(400),"bad image url";let i=await RX(e),a=await CMe.get(n,{responseType:"arraybuffer",headers:{"User-Agent":bX,Referer:`${gN}/`,...i.cookie?{Cookie:i.cookie}:{}}});return a.status>=400?(t.code(502),"image fetch failed"):(t.header("Content-Type",a.headers?.["content-type"]||"image/jpeg"),t.header("Cache-Control","public, max-age=86400"),Buffer.from(a.data))}function lWt(){return{meta:{key:rWt,name:ekn,type:3,searchable:1,quickSearch:1,filterable:1},api:async e=>{e.post("/init",Pkn),e.post("/home",QQt),e.post("/homeVod",WQt),e.post("/category",XQt),e.post("/detail",JQt),e.post("/search",ZQt),e.post("/play",eWt),e.get("/home",QQt),e.get("/homeVod",WQt),e.get("/category",XQt),e.get("/detail",JQt),e.get("/search",ZQt),e.get("/play",eWt),e.get("/proxy/pic/:encoded",Lkn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)},check:async()=>!0}}var tWt,rWt,ekn,gN,bX,Q3,tkn,rkn,nkn,skn,ikn,RMe,nWt,akn,mN,bMe,CMe,_N,GQt,SX,zQt,fWt=ie(()=>{vr();tWt=Ne(cx(),1);Xd();Cr();fc();Ds();ia();rWt="pan1",ekn="\u2601\uFE0F 123\u793E\u533A",gN="https://pan1.me",bX="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",Q3=40,tkn=2e4,rkn=30*1e3,nkn=3*60*1e3,skn=15*1e3,ikn=[800,1200,2e3,3e3],RMe="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86",nWt=new Set(["2","48","37","52","56","40","51","42","57","58"]),akn=new Set(["2","48","37","52","56","58"]),mN=/(?:https?:)?\/\/(?:(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/)[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、\[\]))]*)?/ig,bMe=/(?:^|[^a-zA-Z0-9.-])((?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、\[\]))]*)?|(?:[a-zA-Z0-9-]+\.)?share\.123(?:684|865|685|912|pan|592)\.(?:com|cn)\/(?:s|123pan)\/[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、\[\]))]*)?)/ig,CMe=ye.create({timeout:tkn,validateStatus:()=>!0,httpAgent:fn().httpAgent,httpsAgent:fn().httpsAgent,headers:{"User-Agent":bX,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),_N=new _t(160,rkn),GQt=new _t(160,nkn),SX=new Map,zQt=0});var bWt={};kt(bWt,{default:()=>TWt});function El(e=""){return String(e||"").replace(/\s+/g," ").trim()}function OX(e){return(e?.body&&Object.keys(e.body).length?e.body:null)||e?.query||{}}function _Wt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function $kn(e){let t=OX(e);return t.filters||t.extend||t.ext||t.filter||{}}function DX(e="",t=`${yN}/`){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r))return r;if(r.startsWith("//"))return`https:${r}`;try{return new URL(r,t).toString()}catch{return""}}function W3(e=""){let t=DX(e);return/^https:\/\/guangya\.qsxy\.top\/\d+\.html(?:[?#].*)?$/i.test(t)?t.split(/[?#]/)[0]:""}async function LMe(e){let t=await e?.server?.db?.getObjectDefault("/guangyaqsxy",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:El(t?.replyMessage||wX)||wX}}function qkn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=r.trim(),s=n.indexOf("=");s<=0||t.set(n.slice(0,s).trim(),n.slice(s+1).trim())}),t}function Hkn(e="",t=[]){let r=qkn(e);for(let n of Array.isArray(t)?t:[t]){let s=String(n||"").split(";")[0].trim(),i=s.indexOf("=");if(i<=0)continue;let a=s.slice(0,i).trim(),o=s.slice(i+1).trim();!o||o.toLowerCase()==="deleted"?r.delete(a):r.set(a,o)}return[...r.entries()].map(([n,s])=>`${n}=${s}`).join("; ")}async function AWt(e,t,r){let n=r?.headers?.["set-cookie"];if(!n||!e?.server?.db?.push)return t;let s=Hkn(t,n);return s!==t&&await e.server.db.push("/guangyaqsxy/cookie",s),s}function EWt(e=""){return/]*\blogged-in\b/i.test(String(e||""))||/\u9000\u51fa\u767b\u5f55|\u7528\u6237\u4e2d\u5fc3/.test(String(e||""))}function X3(e=""){let t=Xt(String(e||"")),r=t(".article-content, .wp-posts-content").first(),n=El((r.length?r:t("body")).text());return/\u5185\u5bb9\u5df2\u9690\u85cf[^\u3002\uff01\uff1b]{0,100}\u8bc4\u8bba\u540e\u5237\u65b0\u9875\u9762\u67e5\u770b|\u8bc4\u8bba\u540e\u53ef\u89c1|\u56de\u590d\u540e\u53ef\u89c1/.test(n)}function Vkn(e=""){let t=El(Xt(String(e||""))("body").text());return/\u672a\u767b\u5f55\u6e38\u5ba2|\u767b\u5f55\u540e\u4f53\u9a8c\u66f4\u591a\u529f\u80fd|\u8bf7\u5148\u767b\u5f55/.test(t)||X3(e)}async function J3(e,t,r=`${yN}/`,n={}){let s=await LMe(e),i=DX(t),a=await gWt.get(i,{headers:{"User-Agent":MMe,Referer:r,...n.noCache?{"Cache-Control":"no-cache",Pragma:"no-cache"}:{},...s.cookie?{Cookie:s.cookie}:{}}});if(await AWt(e,s.cookie,a),a.status===404&&n.allowNotFound)return"";if(a.status>=400)throw new Error(`\u5149\u9E2D\u81FB\u5F71\u793E HTTP ${a.status}`);return String(a.data||"")}function jkn(e,t){let r=e(t).find("img").first(),n=[r.attr("data-src"),r.attr("data-lazy-src"),r.attr("data-original"),r.attr("src")];return DX(n.find(Boolean)||"")}function Kkn(e,t,r){let n=[e(t).find(".item-heading a, .posts-item-title a, h2 a, h3 a").first().attr("title"),e(t).find(".item-heading a, .posts-item-title a, h2 a, h3 a").first().text(),r.attr("title"),r.text(),e(t).find("img").first().attr("alt")];return El(n.find(s=>El(s))||"")}function BMe(e=""){let t=Xt(e),r=[],n=new Set;return t(".posts-item, article.post, article").each((s,i)=>{let a=t(i).find("a[href]").toArray(),o=a.map(f=>t(f).attr("href")).find(f=>W3(f)),c=W3(o);if(!c||n.has(c))return;let u=t(a.find(f=>W3(t(f).attr("href")))||[]),l=Kkn(t,i,u);if(!l)return;n.add(c);let d=El(t(i).find(".item-meta, .item-tags, .posts-text, .meta-right, .post-meta").first().text()).slice(0,80);r.push({vod_id:c,vod_name:l,vod_pic:jkn(t,i),vod_remarks:d})}),r}function Gkn(e=""){return!!Xt(String(e||""))(".next-page a[href], a.next.page-numbers[href]").first().attr("href")}function yWt(e,t=[],r=""){let n=Gkn(r),s=Array.isArray(t)?t.length:0,i=Math.max(0,(e-1)*xX),a=s===0&&!n?0:n?Math.max(i+s+1,e*xX+1):i+s;return{page:e,pagecount:n?e+1:e,limit:xX,total:a,list:t,count:s}}function zkn(e,t,r={}){let n=kMe.some(l=>l.type_id===e)?e:"film",s=String(r.area||"").trim(),i=new Set((PMe[n]||[]).map(l=>l[1])),a=s&&i.has(s)?`${n}/${s}`:n,o=t>1?`/page/${t}`:"",c=String(r.orderby||"").trim(),u=["views","comment_count","like","modified"].includes(c)?`?orderby=${encodeURIComponent(c)}`:"";return`/category/${a}${o}${u}`}function Ykn(){let e={};for(let t of kMe){let r=[];PMe[t.type_id]&&r.push({key:"area",name:"\u5206\u7C7B",value:PMe[t.type_id].map(([n,s])=>({n,v:s}))}),r.push({key:"orderby",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0",v:""},{n:"\u6D4F\u89C8",v:"views"},{n:"\u8BC4\u8BBA",v:"comment_count"},{n:"\u70B9\u8D5E",v:"like"},{n:"\u6700\u8FD1\u4FEE\u6539",v:"modified"}]}),e[t.type_id]=r}return e}async function Qkn(e){let t="home",r=NX.get(t);if(r)return r;let n=await J3(e,"/"),s={class:kMe,filters:Ykn(),list:BMe(n)};return NX.set(t,s),s}async function Wkn(e){let t=OX(e),r=_Wt(t.page),n=zkn(String(t.id||"film"),r,$kn(e)),s=`category:${n}`,i=NX.get(s);if(i)return i;let a=await J3(e,n,`${yN}/`,{allowNotFound:!0}),o=yWt(r,BMe(a),a);return NX.set(s,o),o}function Xkn(e){let t=El(e(".article-content, .wp-posts-content").first().text()),r=n=>t.match(new RegExp(`${n}\\s*[\uFF1A:]\\s*([^\u2B50\u{1F4C5}\u{1F30D}\u{1F3F7}\u{1F4FA}\u{1F3AC}\u{1F465}\u{1F4DD}\u{1F4E5}]+)`))?.[1]?.trim()||"";return{content:t,year:t.match(/(?:\u65e5\u671f|\u5e74\u4efd)\s*[::]\s*(\d{4})/)?.[1]||"",area:r("(?:\u51FA\u54C1\u56FD\u5BB6|\u5730\u533A)"),director:r("(?:\u4E3B\u521B|\u5BFC\u6F14)"),actor:r("(?:\u4E3B\u8981\u6F14\u5458|\u6F14\u5458)")}}function vWt(e=""){let t=Xt(e),r=[];t(".article-content a[href], .wp-posts-content a[href]").each((s,i)=>r.push(t(i).attr("href")||"")),r.push(t(".article-content, .wp-posts-content").first().text());let n=r.flatMap(s=>String(s||"").match(Fkn)||[]);return[...new Set(n.map(s=>s.replace(/[)\]}>.,;,。;]+$/g,"")))]}function SWt(e=""){return W3(e).match(/\/(\d+)\.html$/)?.[1]||""}function Jkn(e){if(e&&typeof e=="object")return e;try{return JSON.parse(String(e||""))}catch{return{error:!0,msg:El(e)||"\u8FD4\u56DE\u683C\u5F0F\u65E0\u6548"}}}function UMe(e=""){let t=String(e||"").split(";").map(r=>r.trim()).find(r=>/^wordpress_logged_in_/i.test(r));return pWt.default.createHash("sha256").update(t||String(e||"")).digest("hex").slice(0,16)}async function Zkn(e,t,r){let n=UMe(r);return!!await e?.server?.db?.getObjectDefault(`/guangyaqsxy/replied/${n}/${t}`,0)}async function e4n(e,t,r){if(!e?.server?.db?.push)return;let n=UMe(r);await e.server.db.push(`/guangyaqsxy/replied/${n}/${t}`,Date.now())}async function t4n(e,t,r,n){let s=SWt(t);if(!s)throw new Error("\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A\u672A\u8BC6\u522B\u6587\u7AE0 ID");if(!n.cookie)throw new Error("\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u89E3\u9501\uFF0C\u4F46\u5C1A\u672A\u914D\u7F6E Cookie");if(!EWt(r))throw new Error("Cookie \u5DF2\u5931\u6548\u6216\u672A\u767B\u5F55\uFF0C\u65E0\u6CD5\u81EA\u52A8\u56DE\u590D");if(await Zkn(e,s,n.cookie))return{replied:!1,reason:"already-replied",approved:null};let i=Xt(String(r||"")),a=i("#commentform").first();if(!a.length)throw new Error("\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u89E3\u9501\uFF0C\u4F46\u672A\u627E\u5230\u8BC4\u8BBA\u8868\u5355");let o=El(n.replyMessage||wX)||wX;if(o.length<4)throw new Error("\u81EA\u52A8\u56DE\u590D\u5185\u5BB9\u81F3\u5C11\u9700\u8981 4 \u4E2A\u5B57\u7B26");let c={action:"submit_comment",comment:o,comment_post_ID:s,comment_parent:"0"};a.find("input[name], textarea[name], select[name]").each((h,p)=>{let m=String(i(p).attr("name")||"").trim();!m||Object.prototype.hasOwnProperty.call(c,m)||(c[m]=String(i(p).val()??i(p).attr("value")??""))});let u=Bkn-(Date.now()-hWt);u>0&&await Yt(u);let l=await gWt.post(`${yN}/wp-admin/admin-ajax.php`,new URLSearchParams(c).toString(),{headers:{"User-Agent":MMe,Referer:t,Origin:yN,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Cookie:n.cookie}});if(hWt=Date.now(),await AWt(e,n.cookie,l),l.status>=400)throw new Error(`\u81EA\u52A8\u56DE\u590D HTTP ${l.status}`);let d=Jkn(l.data);if(d?.error===!0||d?.error!=null&&String(d.error)!==""&&String(d.error)!=="0"||!d?.html)throw new Error(`\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A${El(d?.msg||d?.message||"\u7AD9\u70B9\u672A\u8FD4\u56DE\u8BC4\u8BBA\u5185\u5BB9")}`);return await e4n(e,s,n.cookie),{replied:!0,reason:"success",approved:Number(d?.comment?.comment_approved??1)>0}}async function r4n(e,t,r,n){if(!X3(r))return{replied:!1,reason:"not-required",approved:null};if(!n.autoReply)return{replied:!1,reason:"disabled",approved:null};let s=SWt(t);if(!s)throw new Error("\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A\u672A\u8BC6\u522B\u6587\u7AE0 ID");let i=`${UMe(n.cookie)}:${s}`;if(CX.has(i))return CX.get(i);let a=t4n(e,t,r,n).finally(()=>CX.delete(i));return CX.set(i,a),a}function n4n(e,t){let r=new URL(e);return r.searchParams.set("_t",`${Date.now()}-${t}`),r.toString()}async function s4n(e,t,r=!0){let n="",s=[],i=r?Ukn:[0];for(let a=0;a0&&await Yt(i[a]),n=await J3(e,n4n(t,a),t,{noCache:!0}),s=vWt(n),!(s.length>0||!X3(n)));a+=1);return{html:n,shareLinks:s}}async function i4n(e){let t=OX(e).id,r=(Array.isArray(t)?t:[t]).map(W3).filter(Boolean),n=[];for(let s of r){let i=await LMe(e),a=await J3(e,s,s);i=await LMe(e);let o=vWt(a),c={replied:!1,reason:"not-required",approved:null},u="";if(o.length===0&&X3(a))try{c=await r4n(e,s,a,i),(c.replied||c.reason==="already-replied")&&({html:a,shareLinks:o}=await s4n(e,s,!0))}catch(m){u=El(m?.message||m)}let l=Xt(a),d=El(l("h1").first().text())||El(l("title").text()).replace(/-\u5149\u9e2d[\s\S]*$/,""),f=l(".article-content, .wp-posts-content").first(),h=Xkn(l),p={vod_id:s,vod_name:d,vod_pic:DX(f.find("img").first().attr("data-src")||f.find("img").first().attr("src")||l('meta[property="og:image"]').attr("content")||""),vod_content:h.content,vod_year:h.year,vod_area:h.area,vod_actor:h.actor,vod_director:h.director};if(o.length>0){let m=await Es(o,e).catch(g=>(console.warn(`[${mWt}] \u7F51\u76D8\u8BE6\u60C5\u89E3\u6790\u5931\u8D25:`,g?.message||g),null));m?.froms&&m?.urls?(p.vod_play_from=m.froms,p.vod_play_url=m.urls,Array.isArray(m.links)&&m.links.length&&(p.vod_links=m.links),c.replied&&(p.vod_remarks="\u5DF2\u81EA\u52A8\u56DE\u590D\u5E76\u89E3\u9501\u8D44\u6E90")):p.vod_content=`${p.vod_content} + +\u5DF2\u63D0\u53D6\u5149\u9E2D\u7F51\u76D8\u94FE\u63A5\uFF0C\u4F46\u5F53\u524D\u7F51\u76D8\u914D\u7F6E\u672A\u8FD4\u56DE\u53EF\u64AD\u653E\u6587\u4EF6\u3002`.trim()}else if(X3(a)){let m="\u5F53\u524D\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u540E\u5237\u65B0\u89E3\u9501\u8D44\u6E90\u3002";u?m=`\u81EA\u52A8\u56DE\u590D\u5931\u8D25\uFF1A${u}`:c.reason==="disabled"?m="\u5F53\u524D\u6587\u7AE0\u9700\u8981\u8BC4\u8BBA\u89E3\u9501\uFF0C\u4F46\u7AD9\u6E90\u914D\u7F6E\u4E2D\u5DF2\u5173\u95ED\u81EA\u52A8\u56DE\u590D\u3002":c.reason==="already-replied"?m="\u8BE5\u6587\u7AE0\u5DF2\u63D0\u4EA4\u8FC7\u81EA\u52A8\u56DE\u590D\uFF0C\u4F46\u7AD9\u70B9\u4ECD\u672A\u8FD4\u56DE\u5DF2\u89E3\u9501\u8D44\u6E90\uFF0C\u53EF\u80FD\u6B63\u5728\u5BA1\u6838\u6216\u7F13\u5B58\u4E2D\u3002":c.replied&&c.approved===!1?m="\u81EA\u52A8\u56DE\u590D\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u8BC4\u8BBA\u6B63\u5728\u5BA1\u6838\uFF0C\u5BA1\u6838\u524D\u8D44\u6E90\u4ECD\u4E0D\u53EF\u89C1\u3002":c.replied&&(m="\u81EA\u52A8\u56DE\u590D\u5DF2\u6210\u529F\uFF0C\u4F46\u8D44\u6E90\u9875\u6682\u672A\u5237\u65B0\u51FA\u94FE\u63A5\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002"),p.vod_remarks="\u9700\u8BC4\u8BBA\u89E3\u9501",p.vod_content=`${p.vod_content} + +${m}`.trim()}else!EWt(a)||Vkn(a)?p.vod_content=`${p.vod_content} + +\u8D44\u6E90\u94FE\u63A5\u672A\u89E3\u9501\uFF0C\u8BF7\u5728\u7AD9\u6E90\u914D\u7F6E\u4E2D\u586B\u5199\u6709\u6548 Cookie\u3002`.trim():p.vod_content=`${p.vod_content} + +\u6B63\u6587\u672A\u63D0\u53D6\u5230\u5149\u9E2D\u7F51\u76D8\u5206\u4EAB\u94FE\u63A5\u3002`.trim();n.push(p)}return{list:n}}async function a4n(e){let t=OX(e),r=_Wt(t.page),n=El(t.wd);if(!n)return{page:r,pagecount:r,limit:xX,total:0,list:[],count:0};let s=r>1?`/page/${r}/?s=${encodeURIComponent(n)}`:`/?s=${encodeURIComponent(n)}`,i=await J3(e,s,`${yN}/`,{allowNotFound:!0});return yWt(r,BMe(i),i)}function TWt(){return{meta:{key:mWt,name:Mkn,type:3},api:async e=>{e.post("/init",Ti),e.post("/home",Qkn),e.post("/category",Wkn),e.post("/detail",i4n),e.post("/play",Ps),e.post("/search",a4n),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)},check:async()=>!0}}var pWt,mWt,Mkn,yN,MMe,xX,kkn,Bkn,Ukn,wX,gWt,NX,CX,hWt,Fkn,kMe,PMe,IWt=ie(()=>{vr();pWt=Ne(require("crypto"),1);Xd();Cr();fc();Ds();ia();mWt="guangyaqsxy",Mkn="\u2601\uFE0F \u5149\u9E2D\u81FB\u5F71\u793E",yN="https://guangya.qsxy.top",MMe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",xX=12,kkn=30*1e3,Bkn=15*1e3,Ukn=[800,1200,2e3,3e3],wX="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86",gWt=ye.create({timeout:2e4,validateStatus:()=>!0,httpAgent:fn().httpAgent,httpsAgent:fn().httpsAgent,headers:{"User-Agent":MMe,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),NX=new _t(160,kkn),CX=new Map,hWt=0,Fkn=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s<>"',。;、]*)?(?:#[^\s<>"',。;、]*)?/ig,kMe=[{type_id:"film",type_name:"\u7535\u5F71"},{type_id:"show",type_name:"\u5267\u96C6"},{type_id:"animation",type_name:"\u52A8\u6F2B"},{type_id:"reality",type_name:"\u7EFC\u827A"},{type_id:"documentary",type_name:"\u7EAA\u5F55\u7247"},{type_id:"music",type_name:"\u97F3\u4E50"},{type_id:"toolware",type_name:"\u5DE5\u5177\u8D44\u6599"}],PMe={film:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic"],["\u6B27\u7F8E","euramerican"],["\u65E5\u97E9","japankorean"],["\u5176\u4ED6","other"]],show:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-show"],["\u6B27\u7F8E","euramerican-show"],["\u65E5\u97E9","japankorean-show"],["\u5176\u4ED6","other-show"]],animation:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-animation"],["\u6B27\u7F8E","euramerican-animation"],["\u65E5\u97E9","japankorean-animation"],["\u5176\u4ED6","other-animation"]],reality:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-reality"],["\u5176\u4ED6","other-reality"]],documentary:[["\u5168\u90E8",""],["\u56FD\u4EA7","domestic-documentary"],["\u5176\u4ED6","other-documentary"]],toolware:[["\u5168\u90E8",""],["\u8F6F\u4EF6","software"],["\u5C0F\u8BF4","fiction"],["\u6F2B\u753B","comics"],["\u6709\u58F0\u4E66","audiobooks"],["\u5B66\u4E60\u8D44\u6599","resources"]]}});var JWt={};kt(JWt,{default:()=>XWt});function aU(e){return(e?.body&&Object.keys(e.body).length?e.body:null)||e?.query||{}}function E4n(e,t){let r=Object.create(e||null);return Object.defineProperty(r,"body",{value:t||{},enumerable:!0,configurable:!0,writable:!0}),r}function HWt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function Tt(e){return String(e??"").replace(/\s+/g," ").trim()}function y4n(e){return new Promise(t=>setTimeout(t,Math.max(0,Number(e)||0)))}function TN(e,t,r,n=g4n){for(e.has(t)&&e.delete(t),e.set(t,r);e.size>n;)e.delete(e.keys().next().value);return r}function v4n(e){let t=e?.headers?.["retry-after"],r=Number(e?.data?.retry_after),n=Number(t);if(Number.isFinite(n)&&n>0)return Math.ceil(n);if(t){let s=Date.parse(String(t));if(Number.isFinite(s)&&s>Date.now())return Math.max(1,Math.ceil((s-Date.now())/1e3))}return Number.isFinite(r)&&r>0?Math.ceil(r):60}function FX(e,t=null){let r=t?v4n(t):Math.max(1,Math.ceil(((nU.get(e)||0)-Date.now())/1e3));t&&nU.set(e,Date.now()+r*1e3);let n=Tt(t?.data?.message)||"\u805A\u5F71\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41",s=new Error(`${n}\uFF0C\u8BF7${r}\u79D2\u540E\u518D\u8BD5`);return s.status=429,s.retryAfter=r,s}function VWt(e){let t=nU.get(e)||0;if(t>Date.now())throw FX(e);t&&nU.delete(e)}async function S4n(e,t){let n=(PX.get(e)||Promise.resolve()).catch(()=>{}).then(async()=>{VWt(e);let s=m4n-(Date.now()-(HMe.get(e)||0));return s>0&&await y4n(s),HMe.set(e,Date.now()),t()});PX.set(e,n);try{return await n}finally{PX.get(e)===n&&PX.delete(e)}}function oU(e=""){let t=Tt(e).toLowerCase();return A4n[t]||""}function sU(e={}){return oU(e.resource_type||e.resource_type_display||e.type||"")}function jWt(){return Array.isArray(Zs())?Zs():[]}function SN(e){let t=oU(e);return!!(t&&_4n.has(t)&&Ug(t,jWt()))}function HX(e){let t=oU(e),r=jWt(),n=Ca(),s=r.findIndex(c=>String(c?.key||"")===t),i=n.findIndex(c=>c?.key===t),a=s>=0?r[s]:null,o=i>=0?n[i]:null;return{key:t,name:t==="magnet"?"\u78C1\u529B":Tt(a?.name||o?.name||t),pic:Tt(o?.pic),order:s>=0?s:100+Math.max(0,i)}}function VX(e){return JSON.stringify({source:jMe,...e})}function KWt(e){try{let t=JSON.parse(String(e||""));return t?.source===jMe?t:null}catch{return null}}function $y(e={}){return{vod_id:String(e.vod_id||""),vod_name:Tt(e.vod_name),vod_pic:Tt(e.vod_pic),vod_remarks:Tt(e.vod_remarks),vod_year:Tt(e.vod_year),vod_area:Tt(e.vod_area),vod_actor:Tt(e.vod_actor),vod_director:Tt(e.vod_director),vod_content:Tt(e.vod_content)}}function jX(e={}){let t=$y(e),r=String(t.vod_id||""),n=VX({mode:"show",movieId:r,baseVod:t});return{...t,vod_id:n,type_id:n,type_name:t.vod_name,vod_tag:"folder",cate:{id:n,name:t.vod_name}}}function MX(e,t,r,n=P_){let s=Math.max(1,Number(n)||P_);return{page:e,pagecount:Math.max(1,Math.ceil(Math.max(0,t)/s)),limit:s,total:Math.max(0,t),list:r,count:r.length}}function T4n(e,t="\u8BF7\u6C42\u5931\u8D25"){return Tt(e?.data?.message||e?.data?.detail||e?.statusText||t)}function $X(e,t){if(e?.status>=200&&e.status<300&&e?.data?.status!=="error")return e.data;throw new Error(T4n(e,t))}function GWt(e,t){return $Wt.default.createHash("sha256").update(`${e}\0${t}`).digest("hex")}function zWt(e){try{let t=JSON.parse(Buffer.from(String(e).split(".")[1],"base64url").toString("utf8")),r=Number(t?.exp)*1e3;if(Number.isFinite(r)&&r>Date.now())return Math.min(r-6e4,Date.now()+RWt)}catch{}return Date.now()+RWt}function b4n(e){let t=e?.headers?.["set-cookie"];return(Array.isArray(t)?t:t?[t]:[]).map(n=>String(n||"").split(";")[0].trim()).filter(Boolean).join("; ")}function I4n(e,t){return String(t||"").match(/(?:^|;\s*)csrftoken=([^;]+)/i)?.[1]||Tt(e?.data?.csrfToken||e?.data?.csrf_token)}async function KMe(e){let t=await e?.server?.db?.getObjectDefault("/jying",{});return{username:Tt(t?.username),password:String(t?.password||"").trim()}}async function OWt(e,t=!1){if(!e.username||!e.password)throw new Error("\u8BF7\u5728\u7AD9\u6E90\u914D\u7F6E\u4E2D\u586B\u5199\u805A\u5F71\u8D26\u53F7\u548C\u5BC6\u7801");let r=GWt(e.username,e.password),n=BX.get(r);if(!t&&n?.token&&n.expiresAt>Date.now())return n;if(!t&&Z3.has(r))return Z3.get(r);let s=(async()=>{VWt(r);let i=await kX.get("/api/csrf/");if(i.status===429)throw FX(r,i);$X(i,"\u83B7\u53D6\u805A\u5F71 CSRF \u51ED\u636E\u5931\u8D25");let a=b4n(i),o=I4n(i,a);if(!o)throw new Error("\u805A\u5F71\u672A\u8FD4\u56DE CSRF \u51ED\u636E");let c=await kX.post("/api/app/login/",{username:e.username,password:e.password},{headers:{Cookie:a,"X-CSRFToken":o,Referer:`${iU}/login/`}});if(c.status===429)throw FX(r,c);let u=$X(c,"\u805A\u5F71\u767B\u5F55\u5931\u8D25"),l=Tt(u?.token);if(!l)throw new Error("\u805A\u5F71\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u8BBF\u95EE\u51ED\u636E");let d={cacheKey:r,token:l,user:u?.user||{},expiresAt:zWt(l)};return nU.delete(r),HMe.set(r,Date.now()),TN(BX,r,d,20),d})();Z3.set(r,s);try{return await s}finally{Z3.get(r)===s&&Z3.delete(r)}}async function cU(e,t={}){let r=await kX.get(e,{params:t});return $X(r,"\u805A\u5F71\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}async function GMe(e,t,r={},n=!0){let s=await KMe(e),i=await OWt(s),a=await S4n(i.cacheKey,()=>kX.request({url:t,method:r.method||"get",params:r.params,data:r.data,headers:{"X-App-User-Token":i.token,Referer:r.referer||`${iU}/`,...r.headers||{}}}));if(a.status===429)throw FX(i.cacheKey,a);let o=Tt(a?.headers?.["x-refreshed-token"]);if(o&&(i.token=o,i.expiresAt=zWt(o),TN(BX,i.cacheKey,i,20)),a.status===401&&n){BX.delete(i.cacheKey);for(let c of UX.keys())c.startsWith(`${i.cacheKey}:`)&&UX.delete(c);return await OWt(s,!0),GMe(e,t,r,!1)}return $X(a,"\u805A\u5F71\u767B\u5F55\u8BF7\u6C42\u5931\u8D25")}function KX(e={}){let t=[e.movie_type_display,e.release_year||e.year,Number(e.resource_count||0)>0?`${e.resource_count}\u6761\u8D44\u6E90`:""].filter(Boolean).join(" \xB7 ");return{vod_id:String(e.id||""),vod_name:Tt(e.title),vod_pic:Tt(e.cover||e.cover_url),vod_remarks:t,vod_year:Tt(e.release_year||e.year),vod_content:Tt(e.description)}}function LX(e,t="key",r=40){let n=(Array.isArray(e)?e:[]).filter(s=>s&&s[t]!==void 0&&Tt(s.name||s.label||s[t])).slice(0,r).map(s=>({n:Tt(s.name||s.label||s[t]),v:String(s[t])}));return[{n:"\u5168\u90E8",v:""},...n]}function DWt(e,t){return[...Array.isArray(e)?e:[]].sort((r,n)=>Number(n?.movie_count||n?.count||0)-Number(r?.movie_count||r?.count||0)).slice(0,t)}function R4n(e){let t=[],r=new Set;for(let n of Array.isArray(e)?e:[]){let s=oU(n?.key||n?.name);!s||r.has(s)||!SN(s)||(r.add(s),t.push({n:Tt(n?.name||HX(s).name),v:String(n?.key||s)}))}return[{n:"\u5168\u90E8",v:""},...t]}function C4n(e={}){let t=[{key:"category",name:"\u5206\u7C7B",value:LX(DWt(e.categories,60),"slug",60)},{key:"region",name:"\u5730\u533A",value:LX(e.region_stats,"key",30)},{key:"year",name:"\u5E74\u4EFD",value:LX(e.year_stats,"key",30)},{key:"tag",name:"\u6807\u7B7E",value:LX(DWt(e.tags,40),"slug",40)},{key:"resource_type",name:"\u7F51\u76D8",value:R4n(e.resource_type_stats)},{key:"ordering",name:"\u6392\u5E8F",value:[{n:"\u770B\u6700\u65B0",v:"-created_at"},{n:"\u8D44\u6E90\u6700\u591A",v:"-resource_count"},{n:"\u6700\u70ED\u95E8",v:"-views"}]}],r={};for(let n of e.type_stats||[])r[String(n.key)]=t;return r}async function YWt(e=!1){if(!e&&qMe?.expiresAt>Date.now())return qMe.data;let t=await cU("/api/app/home-initial-data/",{page_size:36});return qMe={data:t,expiresAt:Date.now()+qWt},t}async function PWt(){let e=await YWt(),t=(e.type_stats||[]).map(n=>({type_id:String(n.key),type_name:Tt(n.name||n.key)})),r=(e.default_movies||[]).map(KX).filter(n=>n.vod_id&&n.vod_name).map(jX);return{class:t,filters:C4n(e),list:r}}async function LWt(){return{list:((await YWt()).default_movies||[]).map(KX).filter(t=>t.vod_id&&t.vod_name).map(jX)}}function x4n(e){let t=aU(e);return t.filters||t.extend||t.ext||t.filter||{}}async function MWt(e){let t=aU(e),r=HWt(t.page||t.pg),n=x4n(e),s=Tt(t.id||t.tid||"movie"),i=KWt(s);if(i?.mode==="show"&&i.movieId){if(r>1)return MX(r,0,[]);let l=await qX(i.movieId,i.baseVod),d=await rU(e,i.movieId),f=new Map;for(let p of d.resources){let m=sU(p);!VMe(p)||!SN(m)||f.set(m,(f.get(m)||0)+1)}let h=[...f.entries()].map(([p,m])=>O4n(i.movieId,l,p,m)).sort((p,m)=>p.__order-m.__order).map(({__order:p,...m})=>m);return MX(1,h.length,h,Math.max(1,h.length))}if(i?.mode==="group"&&i.movieId&&i.panType){let l=await qX(i.movieId,i.baseVod),d=(await rU(e,i.movieId)).resources.filter(h=>VMe(h)&&sU(h)===i.panType&&SN(i.panType)).sort(N4n).map(h=>D4n(i.movieId,l,h)).filter(Boolean),f=(r-1)*P_;return MX(r,d.length,d.slice(f,f+P_))}let a=Tt(n.resource_type),o=oU(a),c=await cU("/api/app/movies/",{page:r,page_size:P_,count:1,type:s,category:Tt(n.category)||void 0,region:Tt(n.region)||void 0,tag:Tt(n.tag)||void 0,year:Tt(n.year)||void 0,resource_type:a&&SN(o)?a:void 0,ordering:Tt(n.ordering||n.sort)||"-created_at"}),u=(c.results||[]).map(KX).filter(l=>l.vod_id&&l.vod_name).map(jX);return{page:Number(c.page||r),pagecount:Number(c.total_pages||r),limit:Number(c.page_size||P_),total:Number(c.total_count??c.count??u.length),list:u}}function QWt(e,t){return`${GWt(e.username,e.password)}:${t}`}async function rU(e,t,r=!1){let n=await KMe(e);if(!n.username||!n.password)throw new Error("\u8BF7\u5728\u7AD9\u6E90\u914D\u7F6E\u4E2D\u586B\u5199\u805A\u5F71\u8D26\u53F7\u548C\u5BC6\u7801");let s=QWt(n,t),i=UX.get(s);if(!r&&i?.expiresAt>Date.now())return i;if(!r&&eU.has(s))return eU.get(s);let a=(async()=>{let o=[],c=new Set,u=0,l=!1;for(let f=1;f<=h4n;f+=1){let h=await GMe(e,`/api/app/movie/${encodeURIComponent(t)}/resources/`,{params:{page:f,page_size:f===1?p4n:200},referer:`${iU}/movie/${encodeURIComponent(t)}`}),p=Array.isArray(h.resources)?h.resources:[];u=h.total_count!=null?Number(h.total_count):Math.max(u,o.length+p.length);for(let m of p){let g=String(m?.id||"");if(!(!g||c.has(g))&&(c.add(g),o.push(m),o.length>=FMe))break}if(!h.has_more||p.length===0||o.length>=FMe){l=!!(h.has_more&&o.length>=FMe);break}}let d={resources:o,totalCount:Math.max(u||0,o.length),truncated:l,expiresAt:Date.now()+l4n};return TN(UX,s,d),d})();eU.set(s,a);try{return await a}finally{eU.get(s)===a&&eU.delete(s)}}function w4n(e,t,r){let n=Tt(e),s=Tt(t);if(!n||!s||!/^https?:\/\//i.test(n)||/[?&](?:pwd|password|code)=/i.test(n))return n;let i=r==="guangya"?"code":r==="115"?"password":"pwd";try{let a=new URL(n);return a.searchParams.set(i,s),a.toString()}catch{return n}}function VMe(e={}){return!!(e.link_exposed&&e.access_ticket&&e.access_endpoint)}function N4n(e,t){let r=Date.parse(String(e?.created_at||e?.updated_at||""))||0;return(Date.parse(String(t?.created_at||t?.updated_at||""))||0)-r||Number(t?.id||0)-Number(e?.id||0)}function WWt(e={},t="\u7F51\u76D8\u8D44\u6E90"){return Tt(e.resource_description||e.description||e.title||e.name||t)}function O4n(e,t,r,n){let s=HX(r),i=VX({mode:"group",movieId:String(e),panType:s.key,baseVod:$y(t)});return{vod_id:i,vod_name:s.name,vod_pic:s.pic||t.vod_pic||"",vod_remarks:`${n}\u6761\u53EF\u7528\u8D44\u6E90`,type_id:i,type_name:s.name,vod_tag:"folder",cate:{id:i,name:s.name},__order:s.order}}function D4n(e,t,r){let n=sU(r);if(!n||!SN(n))return null;let s=HX(n),i=WWt(r,t.vod_name||s.name),a=Tt(r.created_at||r.updated_at).replace("T"," ").replace(/\+.*$/,""),o=[s.name,Tt(r.file_size||r.size),a].filter(Boolean).join(" \xB7 ");return{vod_id:VX({mode:"resource",movieId:String(e),resourceId:String(r.id||""),panType:n,name:i,sourceName:s.name,baseVod:$y(t)}),vod_name:i,vod_pic:t.vod_pic||s.pic||"",vod_remarks:o,vod_year:t.vod_year||"",vod_area:t.vod_area||"",vod_actor:t.vod_actor||"",vod_director:t.vod_director||"",vod_content:t.vod_content||""}}async function kWt(e,t,r,n=!1){let s=sU(r);if(!SN(s))throw new Error("\u5BF9\u5E94\u7F51\u76D8\u5F53\u524D\u672A\u542F\u7528");if(!VMe(r))throw new Error(Tt(r.link_hidden_reason)||"\u5F53\u524D\u8D26\u53F7\u6682\u4E0D\u53EF\u8BBF\u95EE\u8BE5\u8D44\u6E90");let i=Tt(r.access_endpoint),a=i.match(/^\/api\/app\/resource\/(\d+)\/access\/$/);if(!a||String(a[1])!==String(r.id))throw new Error("\u805A\u5F71\u8D44\u6E90\u8BBF\u95EE\u5730\u5740\u65E0\u6548");let o=await KMe(e),c=`${QWt(o,t)}:${r.id}`,u=xWt.get(c);if(!n&&u?.expiresAt>Date.now())return u.target;let l=await GMe(e,i,{method:"post",data:{access_ticket:String(r.access_ticket)},referer:`${iU}/movie/${encodeURIComponent(t)}`}),d=w4n(l.target,l.access_code||l.extraction_code,s);if(!d)throw new Error("\u805A\u5F71\u8D44\u6E90\u8BBF\u95EE\u63A5\u53E3\u672A\u8FD4\u56DE\u5206\u4EAB\u94FE\u63A5");let f=Math.min(60,Math.max(15,Number(l.expires_in)||f4n/1e3));return TN(xWt,c,{target:d,expiresAt:Date.now()+f*1e3}),d}function P4n(e={},t){return{vod_id:String(e.id||t),vod_name:Tt(e.title),vod_pic:Tt(e.cover||e.cover_url),vod_year:Tt(e.release_year||e.year),vod_area:Tt(e.region),vod_actor:Tt(e.actors),vod_director:Tt(e.director),vod_content:Tt(e.description),vod_remarks:Number(e.resource_count||0)>0?`${e.resource_count}\u6761\u7AD9\u5185\u8D44\u6E90`:"\u6682\u65E0\u7AD9\u5185\u8D44\u6E90"}}async function qX(e,t=null){let r=String(e),n=wWt.get(r);if(n?.expiresAt>Date.now())return $y({...t,...n.vod,vod_id:r});try{let s=await cU(`/api/app/movie/${encodeURIComponent(e)}/detail/`),i=s.movie||s.data||s,a=P4n(i,e);return TN(wWt,r,{vod:a,expiresAt:Date.now()+qWt}),$y({...t,...a,vod_id:r})}catch(s){if(t?.vod_name)return $y({...t,vod_id:r});throw s}}async function L4n(e,t){let r=await rU(e,t.movieId),n=r.resources.find(l=>String(l?.id||"")===String(t.resourceId));if(n||(r=await rU(e,t.movieId,!0),n=r.resources.find(l=>String(l?.id||"")===String(t.resourceId))),!n)throw new Error("\u805A\u5F71\u8D44\u6E90\u5DF2\u5931\u6548\u6216\u5DF2\u88AB\u5220\u9664");let s=sU(n);if(!s||s!==t.panType)throw new Error("\u805A\u5F71\u8D44\u6E90\u7C7B\u578B\u5DF2\u53D8\u5316\uFF0C\u8BF7\u8FD4\u56DE\u4E0A\u4E00\u7EA7\u5237\u65B0");let i=await qX(t.movieId,t.baseVod),a;try{a=await kWt(e,t.movieId,n)}catch(l){if(!/访问凭证/.test(Tt(l?.message)))throw l;if(r=await rU(e,t.movieId,!0),n=r.resources.find(d=>String(d?.id||"")===String(t.resourceId)),!n)throw new Error("\u805A\u5F71\u8D44\u6E90\u5DF2\u5931\u6548\u6216\u5DF2\u88AB\u5220\u9664");a=await kWt(e,t.movieId,n,!0)}let o=await Es([a],e).catch(()=>null),c=HX(s),u={...$y(i),vod_id:VX(t),vod_name:t.name||WWt(n,i.vod_name),vod_remarks:[c.name,Tt(n.file_size||n.size)].filter(Boolean).join(" \xB7 "),vod_play_from:o?.froms||"",vod_play_url:o?.urls||""};return Array.isArray(o?.links)&&o.links.length>0&&(u.vod_links=o.links),(!u.vod_play_from||!u.vod_play_url)&&(u.vod_remarks=`${u.vod_remarks||c.name} \xB7 \u5F53\u524D\u7F51\u76D8\u672A\u8FD4\u56DE\u53EF\u64AD\u653E\u6587\u4EF6`),u}async function BWt(e){let t=aU(e).id,r=(Array.isArray(t)?t:[t]).map(s=>Tt(s)).filter(Boolean),n=[];for(let s of r){let i=KWt(s);try{if(i?.mode==="resource"&&i.movieId&&i.resourceId){n.push(await L4n(e,i));continue}let a=i?.movieId||s,o=await qX(a,i?.baseVod);n.push({...o,vod_id:s,vod_play_from:"",vod_play_url:""})}catch(a){let o=$y(i?.baseVod||{});n.push({...o,vod_id:s,vod_name:o.vod_name||i?.name||"\u805A\u5F71\u8D44\u6E90",vod_remarks:Tt(a?.message||"\u672A\u53D6\u5F97\u7AD9\u5185\u8D44\u6E90"),vod_play_from:"",vod_play_url:""})}}return{list:n}}function vN(e){let t=Tt(e),r=t;try{typeof t.normalize=="function"&&(r=t.normalize("NFKC"))}catch{}return r.toLowerCase().replace(/[\s!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~\u00a0-\u00bf\u2000-\u206f\u20a0-\u20cf\u2100-\u214f\u2190-\u2bff\u3000-\u303f\ufe10-\ufe1f\ufe30-\ufe4f\uff00-\uff65]+/g,"")}function M4n(e){return Tt(e).replace(/[\[\(【(][^\]\)】)]{1,30}[\]\)】)]/g," ").replace(/(?:第[一-龥\d]+季|s\d{1,2}|(?:19|20)\d{2})$/i,"").trim()}function k4n(e,t){if(e===t)return 1;if(e.length<2||t.length<2)return 0;let r=new Map;for(let s=0;s=.72)i=72e3+Math.round(s.length/n.length*1e3);else if(n.length>=4){let a=k4n(s,n);a>=.68&&(i=6e4+Math.round(a*1e3))}return i<0?-1:(r&&Tt(e?.release_year||e?.year)===r[0]&&(i+=3e3),i+=Math.min(999,Math.max(0,Number(e?.resource_count||0))),i)}async function U4n(e,t=!1){let r=vN(e),n=NWt.get(r);if(!t&&n?.expiresAt>Date.now())return n.items;if(!t&&tU.has(r))return tU.get(r);let s=(async()=>{let i=[];for(let c=1;i.length<$Me;c+=1){let u=await cU("/api/app/movies/",{q:e,page:c,page_size:CWt,count:c===1?1:void 0}),l=Array.isArray(u.results)?u.results:[];i.push(...l.slice(0,$Me-i.length));let d=Number(u.total_pages||0);if(l.length===0||!u.has_more&&(!d||c>=d)||c>=Math.ceil($Me/CWt))break}let a=new Map;for(let c of i){let u=B4n(c,e);if(u<0)continue;let l=[vN(c?.title),Tt(c?.release_year||c?.year),Tt(c?.movie_type||c?.movie_type_display)].join("|"),d=a.get(l);(!d||u>d.score||u===d.score&&Number(c?.resource_count||0)>Number(d.movie?.resource_count||0))&&a.set(l,{movie:c,score:u})}let o=[...a.values()].sort((c,u)=>u.score-c.score||Number(u.movie?.resource_count||0)-Number(c.movie?.resource_count||0)||Number(u.movie?.id||0)-Number(c.movie?.id||0)).map(c=>c.movie);return TN(NWt,r,{items:o,expiresAt:Date.now()+d4n}),o})();tU.set(r,s);try{return await s}finally{tU.get(r)===s&&tU.delete(r)}}async function UWt(e){let t=aU(e),r=HWt(t.page||t.pg),n=Tt(t.wd||t.keyword);if(!n)return{page:r,pagecount:r,limit:P_,total:0,list:[]};let s=await U4n(n),i=(r-1)*P_,a=s.slice(i,i+P_).map(KX).filter(o=>o.vod_id&&o.vod_name).map(jX);return MX(r,s.length,a)}async function FWt(e,t){return Ps(E4n(e,aU(e)),t)}async function F4n(){try{let e=await cU("/api/app/movies/",{page:1,page_size:1});return Array.isArray(e.results)}catch{return!1}}function XWt(){return{meta:{key:jMe,name:o4n,type:3,searchable:1,quickSearch:1,filterable:1,configurable:!0},api:async e=>{e.post("/init",Ti),e.post("/home",PWt),e.post("/homeVod",LWt),e.post("/category",MWt),e.post("/detail",BWt),e.post("/play",FWt),e.post("/search",UWt),e.get("/home",PWt),e.get("/homeVod",LWt),e.get("/category",MWt),e.get("/detail",BWt),e.get("/play",FWt),e.get("/search",UWt),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)},check:F4n}}var $Wt,jMe,o4n,iU,c4n,P_,u4n,qWt,RWt,l4n,d4n,f4n,h4n,FMe,p4n,CWt,$Me,m4n,g4n,_4n,A4n,kX,BX,Z3,nU,PX,HMe,UX,eU,xWt,wWt,NWt,tU,qMe,ZWt=ie(()=>{vr();$Wt=Ne(require("crypto"),1);Cr();fc();yi();jMe="jying",o4n="\u2601\uFE0F \u805A\u5F71",iU="https://www.jying.top",c4n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",P_=24,u4n=3e4,qWt=5*60*1e3,RWt=6*60*60*1e3,l4n=2*60*1e3,d4n=2*60*1e3,f4n=60*1e3,h4n=10,FMe=2e3,p4n=120,CWt=100,$Me=240,m4n=350,g4n=120,_4n=new Set(["quark","uc","baidu","tianyi","115","123","ali","yidong","xunlei","guangya","magnet"]),A4n={quark:"quark",\u5938\u514B:"quark",\u5938\u514B\u7F51\u76D8:"quark",uc:"uc",uc\u7F51\u76D8:"uc",ali:"ali",alipan:"ali",aliyun:"ali",aliyundrive:"ali",\u963F\u91CC:"ali",\u963F\u91CC\u4E91\u76D8:"ali",\u963F\u91CC\u7F51\u76D8:"ali",baidu:"baidu",\u767E\u5EA6:"baidu",\u767E\u5EA6\u7F51\u76D8:"baidu",115:"115","115\u7F51\u76D8":"115",123:"123",pan123:"123","123\u4E91\u76D8":"123","123\u7F51\u76D8":"123",xunlei:"xunlei",\u8FC5\u96F7:"xunlei",\u8FC5\u96F7\u4E91\u76D8:"xunlei",\u8FC5\u96F7\u7F51\u76D8:"xunlei",guangya:"guangya",guangyapan:"guangya",\u5149\u9E2D:"guangya",\u5149\u9E2D\u4E91\u76D8:"guangya",\u5149\u9E2D\u7F51\u76D8:"guangya",magnet:"magnet",magnetlink:"magnet",\u78C1\u529B:"magnet",\u78C1\u529B\u94FE\u63A5:"magnet",tianyi:"tianyi",\u5929\u7FFC:"tianyi",\u5929\u7FFC\u4E91\u76D8:"tianyi",yidong:"yidong",mobile:"yidong",\u79FB\u52A8:"yidong",\u4E2D\u56FD\u79FB\u52A8:"yidong",\u79FB\u52A8\u4E91\u76D8:"yidong"},kX=ye.create({baseURL:iU,timeout:u4n,validateStatus:()=>!0,httpAgent:fn().httpAgent,httpsAgent:fn().httpsAgent,headers:{"User-Agent":c4n,Accept:"application/json, text/plain, */*","X-Requested-With":"XMLHttpRequest"}}),BX=new Map,Z3=new Map,nU=new Map,PX=new Map,HMe=new Map,UX=new Map,eU=new Map,xWt=new Map,wWt=new Map,NWt=new Map,tU=new Map,qMe=null});function tXt(e=""){return String(e||"").trim().replace($4n,"")}function V4n(e=""){let t=tXt(e),r=t.match(/([?&](?:pwd|password|passcode)=)([a-zA-Z0-9]{4,8})/i);return r?{cleanUrl:t,password:r[2]||""}:{cleanUrl:t,password:""}}function j4n(e,t=""){let r=tXt(e),{cleanUrl:n,password:s}=V4n(r),i=s||G4n(t,n),a=n;return i&&/pan\.baidu\.com\/s\//i.test(n)&&!/[?&]pwd=/i.test(n)&&(a=`${n}${n.includes("?")?"&":"?"}pwd=${i}`),{rawUrl:e,cleanUrl:a,password:i,type:K4n(a)}}function K4n(e){let t=String(e||"").toLowerCase();return t.startsWith("ed2k:")?"ed2k":t.startsWith("magnet:")?"magnet":t.includes("pan.baidu.com")?"baidu":t.includes("pan.quark.cn")||t.includes("pan.qoark.cn")?"quark":t.includes("alipan.com")||t.includes("aliyundrive.com")?"ali":t.includes("cloud.189.cn")?"tianyi":t.includes("drive.uc.cn")?"uc":t.includes("yun.139.com")||t.includes("caiyun.139.com")||t.includes("caiyun.feixin.10086.cn")?"yidong":t.includes("115.com")||t.includes("115cdn.com")||t.includes("anxia.com")?"115":t.includes("123684.")||t.includes("123685.")||t.includes("123865.")||t.includes("123912.")||t.includes("123pan.")||t.includes("123592.")?"123":t.includes("pan.xunlei.com")?"xunlei":t.includes("guangyapan.com")?"guangya":null}function G4n(e,t=""){let r=String(e||""),n=String(t||""),s=n.match(eXt);if(s?.[1])return s[1];let i=r.indexOf(n);if(i>=0){let u=r.slice(i,i+n.length+40).match(eXt);if(u?.[1])return u[1]}let a=rXt(r).length,o=[...r.matchAll(q4n)].map(c=>c[1]).filter(Boolean);return a<=1&&o.length===1?o[0]:""}function rXt(e=""){let t=[];for(let r of H4n){let n=e.match(r)||[];t.push(...n)}return t}function z4n(e=[]){let t=new Map;for(let r of e){if(!r?.cleanUrl||!r.type)continue;if(!t.has(r.cleanUrl)){t.set(r.cleanUrl,r);continue}!t.get(r.cleanUrl).password&&r.password&&t.set(r.cleanUrl,r)}return Array.from(t.values())}function bN(e="",t=[]){let r=Array.isArray(t)?t.map(i=>typeof i=="string"?i:i?.href).filter(Boolean):[],n=rXt(e),s=[...r,...n].map(i=>j4n(i,e)).filter(i=>!!i.type);return z4n(s).map(i=>({...i,url:i.cleanUrl}))}var $4n,eXt,q4n,H4n,zMe=ie(()=>{$4n=/[\u{1F300}-\u{1FAFF}\u2600-\u27BF。,、;;!!??)\)】\]」』"'`]+$/gu,eXt=/(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ]\s*([a-zA-Z0-9]{4,8})/i,q4n=/(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ]\s*([a-zA-Z0-9]{4,8})/gi,H4n=[/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9_-]+(?:\/folder\/[a-zA-Z0-9_-]+)?/gi,/https?:\/\/(?:pan\.quark\.cn|pan\.qoark\.cn)\/s\/[a-zA-Z0-9_-]+/gi,/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/gi,/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+|web\/share\?code=[^&\s]+)/gi,/https?:\/\/(?:yun\.139\.com\/shareweb\/#\/w\/i\/|caiyun\.139\.com\/(?:m\/i\?|w\/i\/))[^\s]+/gi,/https?:\/\/(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]+)?/gi,/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/gi,/https?:\/\/pan\.xunlei\.com\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/https?:\/\/(?:www\.)?guangyapan\.com\/s\/[a-zA-Z0-9_-]+(?:\?[^\s#]*)?(?:#[^\s]*)?/gi,/magnet:\?xt=urn:[^\s]+/gi,/ed2k:\/\/\|file\|[^\s]+/gi]});function vf(e=""){return String(e||"").replace(Y4n,"").replace(W4n,"").replace(YMe,"").replace(Q4n,"").replace(/[::||\-\s]+$/,"").replace(/[((【\[].*$/,"").replace(/\s+/g," ").trim()}function qy(e=""){let t=vf(e);return!(!t||/^[·•\-||]+$/.test(t)||/^(?:描述|简介|大小|标签|via|匿名)$/i.test(t)||uU.test(t))}function X4n(e=""){let r=String(e||"").split(` +`).map(n=>vf(n)).filter(n=>qy(n)).filter(n=>!YMe.test(n)).filter(n=>!/pan\.|alipan|aliyundrive|drive\.uc|cloud\.189|123pan|115\.com|xunlei|guangyapan/i.test(n));return r[0]?r[0]:""}function J4n(e=""){let t=e.search(/https?:\/\/|magnet:\?|ed2k:\/\//i);return t<=0?"":vf(e.slice(0,t))}function Z4n(e=""){let t=String(e||"").replace(/\s+/g," ").trim();if(!t)return"";let r=t.split(/[\n||]/).map(n=>vf(n)).filter(n=>qy(n)).filter(n=>!/提取码|访问码|密码|口令|code|pwd/i.test(n)).filter(n=>!/pan\.|alipan|aliyundrive|drive\.uc|cloud\.189|123pan|115\.com|xunlei|guangyapan/i.test(n));return r[r.length-1]||""}function eBn(e=[],t=-1,r=""){for(let n=t;n>=0;n--){let s=String(e[n]||""),i=vf(s);if(qy(i)&&!YMe.test(s)&&!uU.test(i))return i}return vf(r)}function tBn(e="",t=[],r=""){let n=String(e||"").split(` +`),s={},i=vf(r),a=qy(i);if(!t.map(d=>d.cleanUrl||d.url).filter(Boolean).length)return s;let c=[];for(let d=0;df.includes(y.rawUrl||"")||f.includes(y.cleanUrl||y.url||""));if(!h.length)continue;let p=J4n(f),m=p?"":eBn(n,d-1,""),g=vf(p||m||""),_=qy(g)?g:"";h.forEach(y=>{let A=y.cleanUrl||y.url;A&&(_&&(s[A]=_),_&&_!==i&&!uU.test(_)&&c.push(_))})}if(!(Array.from(new Set(c.filter(Boolean))).length>=2)&&a){for(let d of t){let f=d.cleanUrl||d.url;f&&(s[f]=i)}return s}for(let d of t){let f=d.cleanUrl||d.url;if(!f||s[f])continue;let h=d.rawUrl||f,p=String(e||"").replace(/\n+/g,` +`),m=p.indexOf(h);if(m>=0){let g=p.slice(Math.max(0,m-120),m),_=Z4n(g);if(qy(_)&&!uU.test(_)){s[f]=_;continue}}a&&(s[f]=i)}return s}function rBn(e={}){return Object.values(e||{}).some(t=>{let r=vf(t||"");return r?uU.test(r)||/^(?:链接|描述|简介|大小|标签|via)$/i.test(r):!0})}function nBn(e={},t=""){let r=vf(t);if(!qy(r))return!1;let n=Object.values(e||{}).map(i=>vf(i)).filter(Boolean);if(!n.length||rBn(e))return!0;let s=Array.from(new Set(n));return s.length===1&&s[0]===r||s.length<=1}function IN(e="",t={}){let r=bN(e,t.anchors||[]),n=X4n(e),s=tBn(e,r,n);if(nBn(s,n)){let i=vf(n);if(qy(i)){s={};for(let a of r){let o=a.cleanUrl||a.url;o&&(s[o]=i)}}}return{messageTitle:n,linkTitleMap:s,rawLinks:r.map(i=>i.rawUrl||i.cleanUrl),normalizedLinks:r}}var Y4n,Q4n,YMe,W4n,uU,nXt=ie(()=>{zMe();Y4n=/^(?:名称|标题|片名|资源名|剧名|电影名|夸克|阿里|百度|天翼|UC|115|123云盘|123盘|迅雷|光鸭|网盘)\s*[::||\-]?\s*/i,Q4n=/[\u{1F300}-\u{1FAFF}\u2600-\u27BF]+$/gu,YMe=/(https?:\/\/|magnet:\?|ed2k:\/\/)/i,W4n=/\s*(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ].*$/i,uU=/^(?:描述|简介|大小|标签|via|更新|类型|地区|年份|导演|主演|链接)\b/i});function sBn(e,t=""){return e==null?t:String(e)}function iBn(e,t=lU.count){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>0?r:t}function aBn(e,t=lU.enableImage){if(typeof e=="boolean")return e;if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?!0:["0","false","no","off","n"].includes(r)?!1:t}function sXt(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function oBn(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let t={};for(let[r,n]of Object.entries(e)){let s=String(r||"").trim();s&&(t[s]=String(n||"").trim())}return t}function WMe(e={}){let t=e&&typeof e=="object"?e:{};return{url:sBn(t.url,lU.url),count:iBn(t.count,lU.count),enableImage:aBn(t.enableImage,lU.enableImage),homeChannelUsername:sXt(t.homeChannelUsername),channelUsername:sXt(t.channelUsername),channelRemark:oBn(t.channelRemark)}}async function YX(e){e.get("/config",async(t,r)=>{try{let n=await Kb(t.server);r.send({code:0,data:n})}catch(n){r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:WMe({})})}}),e.put("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault(QMe,{}),s=WMe({...n,...t.body||{}});await t.server.db.push(QMe,s),r.send({code:0,data:s,message:"TGChannel\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var QMe,lU,Kb,dU,XMe,fU,JMe,GX,zX,QX=ie(()=>{QMe="/tgchannel",lU={url:"",count:20,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}};Kb=async e=>{let t=await e.db.getObjectDefault(QMe,{});return WMe(t)},dU=async e=>(await Kb(e)).url,XMe=async e=>(await Kb(e)).count,fU=async e=>(await Kb(e)).enableImage,JMe=async e=>(await Kb(e)).channelUsername,GX=async e=>(await Kb(e)).homeChannelUsername,zX=async e=>(await Kb(e)).channelRemark});var iXt=ie(()=>{QX();QX()});var wXt={};kt(wXt,{default:()=>KBn});function JX(e){let t=String(e&&e.attribs&&e.attribs.class||"");return/tgme_widget_message_inline_button/.test(t)}function SBn(e){if(!e||e.response)return!1;if(vBn.has(e.code))return!0;let t=String(e.message||"");return/before secure TLS connection was established|socket hang up|network socket disconnected/i.test(t)}function TBn(e){try{return new URL(e).hostname}catch{return"unknown-host"}}async function eJ(e,t={}){let r=TBn(e),n;for(let s=0;s<4;s++)try{if(s===0)return await oXt.get(e,t);await new Promise(o=>setTimeout(o,250*s)),console.warn(`\u8BBF\u95EE ${r} \u77AC\u65F6\u7F51\u7EDC\u5931\u8D25\uFF0CIPv4 \u65B0\u8FDE\u63A5\u91CD\u8BD5 ${s}/3:`,n.code||n.message);let i=new uXt.default.Agent({keepAlive:!1,family:4}),a=new lXt.default.Agent({keepAlive:!1,family:4});return await oXt.get(e,{...t,proxy:!1,httpAgent:i,httpsAgent:a,headers:{...t.headers||{},Connection:"close"}})}catch(i){if(n=i,!SBn(i))throw i}throw n}async function hU(e,t,r,n,s){let i=e.get(r);return i!==null?i:$n("tgchannel",t,r,async()=>{let a=await s();return a?._skipCache||e.set(r,a),a},{timeout:3e4})}function eke(e){return String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function RBn(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}async function pXt(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),s=0,i=async()=>{for(;;){let c=s++;if(c>=e.length)break;n[c]=await r(e[c],c)}},a=Math.min(t,e.length),o=new Array(a);for(let c=0;cs.validator(e))||null;return cXt.set(e,n),n}function CBn(e){let t=e.attr("style");if(!t)return;let r=/background-image:url\('([^']+)'\)/.exec(t);if(r&&r.length>1)return r[1]}function mXt(e){return IN(String(e||"")).messageTitle||String(e||"").trim()}function gXt(e=[]){return Array.from(e||[]).map(t=>({href:(t&&t.attribs?t.attribs.href:"")||"",text:String(t&&t.children&&t.children.map?t.children.map(r=>r&&r.data||"").join(""):"").trim(),cls:String((t&&t.attribs?t.attribs.class:"")||"")})).filter(t=>t.href)}function _Xt(e){return e.find("a").toArray()}function AXt(e=""){return mBn.test(String(e||""))}function ike(e=""){return gBn.test(String(e||""))}function EXt(e=""){let t=String(e||"");return _Bn.test(t)||ABn.test(t)}function xBn(e=""){let t=String(e||"").match(pBn)||[];return Array.from(new Set(t.filter(function(r){return EXt(r)})))}function yXt(e=[]){return gXt(e).map(t=>t.href)}function vXt(e=""){return String(e||"").trim().replace(/^[^A-Za-z0-9\u4e00-\u9fa5]+/g,"")}function WX(e=""){return String(e||"").toLowerCase().replace(/第\s*\d+\s*[季部集期话篇]/g," ").replace(/[\s\-—_::·•,.,。!!??'"“”‘’()()\[\]【】]/g,"").trim()}function wBn(e,t){let r=WX(t);if(!r)return!0;let n=String(e?.parsed?.messageTitle||"").trim(),s=String(e?.title||"").trim(),i=String(e?.description||"").trim(),a=WX(n),o=WX(s),c=WX(i);return a?a.includes(r):o?o.includes(r):!!(c&&c.includes(r))}function NBn(e={}){let t=String(e.href||""),r=String(e.text||"").trim(),n=String(e.cls||""),s=vXt(r);return!t||/^\?q=/.test(t)?!0:EBn.test(t)?!(JX({attribs:{class:n}})&&hXt.test(s)):!!(s&&yBn.test(s)||!JX({attribs:{class:n}})&&!bN("",[t]).length)}function SXt(e="",t=[]){let r=gXt(t).filter(u=>!NBn(u)),n=r.map(u=>u.href),s=bN(String(e||""),n).map(u=>u.cleanUrl),i=r.filter(u=>JX({attribs:{class:u.cls}})&&AXt(u.href)).map(u=>u.href),a=r.map(u=>u.href).filter(u=>ike(u)),o=r.filter(u=>JX({attribs:{class:u.cls}})&&hXt.test(vXt(u.text))&&EXt(u.href)).map(u=>u.href),c=xBn(e);return Array.from(new Set([].concat(s,i,a,o,c)))}function TXt(e="",t=[]){return SXt(e,t)}async function bXt(e,t=!0){let r=`${e}::${t?1:0}`;return hU(bBn,"parse",r,dXt,async()=>{try{let n=await eJ(e),s=Xt(n.data);s("br").replaceWith(` +`);let i=s(".tgme_widget_message"),a=Ca(),o=[],c=0,u=0;for(let l=0;lT.cleanUrl).filter(T=>ske(T,a)),I=TXt(g,y);I.length&&o.push({id:I.join("|"),title:v,description:_,cover:m,messageId:h,panLinks:b,parsed:E})}return o._blockCount=i.length,o._newestMessageId=c,o._oldestMessageId=u,o}catch(n){console.error("\u89E3\u6790\u9891\u9053HTML\u5931\u8D25:",n.message);let s=[];return s._skipCache=!0,s}})}async function IXt(e,t=""){let r=`${e}::textfile`;return hU(nke,"parse",r,ZX,async()=>{try{let n=await eJ(e,{responseType:"text"}),s=typeof n.data=="string"?n.data:String(n.data||""),i=bN(s,[]).map(a=>a.cleanUrl);return{title:t,description:s,cover:void 0,links:Array.from(new Set(i)),parsed:IN(s)}}catch(n){return console.error("\u89E3\u6790\u6587\u672C\u8D44\u6E90\u6587\u4EF6\u5931\u8D25:",n.message),{title:t,description:"",cover:void 0,links:[],parsed:null}}})}async function DBn(e,t=""){let r=`${e}::telegraph`;return hU(nke,"parse",r,ZX,async()=>{try{let n=await eJ(e),s=Xt(n.data),i=s("h1").first().text().trim()||s('meta[property="og:title"]').attr("content")||t,a=s(".tl_article").first().length?s(".tl_article").first():s.root(),o=a.text()||"",u=SXt(o,a.find("a").toArray());return u.length===1&&ike(u[0])&&(u=(await IXt(u[0],i)).links||[]),{title:i,description:o,cover:s('meta[property="og:image"]').attr("content")||void 0,links:u,parsed:IN(o)}}catch(n){return console.error("\u89E3\u6790Telegraph\u5931\u8D25:",n.message),{title:t,description:"",cover:void 0,links:[],parsed:null}}})}async function PBn(e,t=!0){let r=`${e}::${t?1:0}`;return hU(nke,"parse",r,ZX,async()=>{try{let n=await eJ(e),s=Xt(n.data),i=s('meta[property="og:description"]').attr("content")||"",a=t?s('meta[property="og:image"]').attr("content"):void 0,o=s(".tgme_widget_message_text").first().text()||i,c=_Xt(s(".tgme_widget_message").first().length?s(".tgme_widget_message").first():s.root()),u=yXt(c),l=IN(o||i,{anchors:u}),d=TXt(o||i,c);return{title:l.messageTitle||mXt(o||i),description:o||i,cover:a,links:d,parsed:l}}catch(n){return console.error("\u89E3\u6790\u6D88\u606FHTML\u5931\u8D25:",n.message),{title:"",description:"",cover:void 0,links:[]}}})}async function LBn(e,t={},r=0){let n=String(e||"").trim(),s=t.url,i=t.enableImage,a=t.fallbackTitle||"";if(!n||r>3)return{title:a,parsed:null,cover:void 0,links:n?[n]:[]};if(OBn(n)){let o=n.replace(/^https?:\/\/t\.me/i,s),c=await PBn(o,i),u=Array.isArray(c.links)?c.links.filter(Boolean):[];if(!u.length||u.length===1&&u[0]===n)return{title:c.title||a,parsed:c.parsed||null,cover:c.cover,links:[]};let l=await tke(u,{url:s,enableImage:i,fallbackTitle:c.title||a},r+1);return{title:l.title||c.title||a,parsed:l.parsed||c.parsed||null,cover:l.cover||c.cover,links:l.links}}if(AXt(n)){let o=await DBn(n,a),c=Array.isArray(o.links)?o.links.filter(Boolean):[];if(!c.length||c.length===1&&c[0]===n)return{title:o.title||a,parsed:o.parsed||null,cover:o.cover,links:[]};let u=await tke(c,{url:s,enableImage:i,fallbackTitle:o.title||a},r+1);return{title:u.title||o.title||a,parsed:u.parsed||o.parsed||null,cover:u.cover||o.cover,links:u.links}}if(ike(n)){let o=await IXt(n,a);return{title:o.title||a,parsed:o.parsed||null,cover:o.cover,links:Array.isArray(o.links)?o.links.filter(Boolean):[]}}return{title:a,parsed:null,cover:void 0,links:[n]}}async function tke(e=[],t={},r=0){let n=Array.isArray(e)?e:[],s=await Promise.all(n.filter(Boolean).map(function(o){return LBn(o,t,r)})),i=Array.from(new Set([].concat.apply([],s.map(function(o){return o.links||[]})).filter(Boolean))),a=null;for(let o=0;o{let c=i[o]&&i[o].trim()||o;return{type_id:o,type_name:c}})}}catch(n){console.error("home \u51FD\u6570\u9519\u8BEF:",n);let s={class:[]};return hn(t,s,bt.semiStatic),s}}function RXt(e){return XX[e]||(XX[e]={1:void 0}),XX[e]}function FBn(e,t,r){let n=r?`${t.includes("?")?"&":"?"}before=${r}`:"";return`${e}/s/${t}${n}`}function $Bn(e){let t=Number(e&&e._oldestMessageId)||0;return t>1?t:void 0}async function CXt(e,t,r,n,s=fBn){let i=r,a=[],o,c=0;for(;c0||!o||o===i));)i=o;return{beforeId:i,data:a,nextBeforeId:o,scanned:c}}async function qBn(e,t,r,n){if(t<=1)return;let s=RXt(e);if(Object.prototype.hasOwnProperty.call(s,t))return s[t];let i=1;Object.keys(s).forEach(o=>{let c=Number.parseInt(o,10);Number.isFinite(c)&&c>i&&c0){s===1&&(BBn[n]=o[o.length-1].messageId),o.reverse();let l=Ca(),d=o.map(f=>{let h;if(f.panLinks.length){let p=ske(f.panLinks[0],l);h=p?xXt(e,p.pic):void 0}return h||(h=ZMe),{vod_name:f.title,vod_id:JSON.stringify({links:f.id,name:f.title,parsed:f.parsed,rawData:f,vod_pic:f.cover||h,vod_remarks:f.parsed?.channelName||f.parsed?.remark||""}),vod_pic:f.cover||h,vod_remarks:f.parsed?.channelName||f.parsed?.remark||"",rawData:f}});return{page:s,pagecount:c&&c!==i?s+1:s,list:d}}else return{page:s,pagecount:c&&c!==i?s+1:s,list:[]}}catch(i){return console.error("category \u9519\u8BEF:",i),{page:s,pagecount:1,list:[]}}}async function VBn(e,t){try{let[r,n]=await Promise.all([dU(e.server),fU(e.server)]),s=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await pXt(s,lBn,async a=>{try{let o=String(a||""),c=o,u=o;try{let y=JSON.parse(o);c=y.links,u=y.name||y.links}catch{c=o,u=o}let l=String(c||"").split("|").filter(Boolean),d=null;try{let y=JSON.parse(o);d=y&&y.parsed||(y&&y.rawData?y.rawData.parsed:null)||null}catch{}d&&d.normalizedLinks&&d.normalizedLinks.length&&(l=d.normalizedLinks.map(y=>y.cleanUrl).filter(Boolean),u=d.messageTitle||u);let f=await tke(l,{url:r,enableImage:n,fallbackTitle:u});f.links.length&&(l=f.links),f.parsed&&(d=f.parsed),f.title&&(u=f.title);let h="",p=d?.channelName||d?.remark||"";try{let y=JSON.parse(o);h=y?.vod_pic||"",p=y?.vod_remarks||p}catch{}let m={vod_id:o,vod_name:u,vod_pic:h||"",vod_remarks:p};if(!l.length)return m;let g=l.join("|"),_=await hU(IBn,"detail",g,fXt,async()=>Es(l,e));return _&&(m.vod_play_from=_.froms,m.vod_play_url=_.urls,Array.isArray(_.links)&&_.links.length>0&&(m.vod_links=_.links)),m}catch{return{vod_id:String(a||""),vod_name:String(a||""),vod_remarks:""}}})}}catch(r){return console.error("detail \u51FD\u6570\u9519\u8BEF:",r),{list:[]}}}async function jBn(e,t){try{let[r,n,s,i,a,o]=await Promise.all([XMe(e.server),JMe(e.server),GX(e.server),zX(e.server),dU(e.server),fU(e.server)]),c=Number.parseInt(r,10)||20,u=i||{},l=String(e.body.wd||"").trim(),d=Array.from(new Set([...eke(s),...eke(n)]));if(!l||d.length===0)return{page:1,pagecount:1,list:[]};let f=await pXt(d,dBn,async m=>bXt(`${a}/s/${m}?q=${encodeURIComponent(l)}`,o)),h=Ca(),p=[];return f.forEach((m,g)=>{m&&m.length>0&&m.filter(_=>_&&_.panLinks&&_.panLinks.length).filter(_=>wBn(_,l)).slice(0,c).forEach(_=>{let y="",A;_.panLinks.forEach(v=>{let b=ske(v,h);b&&(y+=y?`|${b.name}`:b.name),A||(A=b?xXt(e,b.pic):void 0)});let E=u[d[g]]&&u[d[g]].trim()||d[g];p.push({vod_id:JSON.stringify({links:_.id,name:_.title,parsed:_.parsed,rawData:_,vod_pic:_.cover||A||ZMe,vod_remarks:`${y}:${E}`}),vod_name:_.title,vod_pic:_.cover||A||ZMe,vod_remarks:`${y}:${E}`})})}),{page:1,pagecount:1,list:p}}catch(r){return console.error("search \u51FD\u6570\u9519\u8BEF:",r),{page:1,pagecount:1,list:[]}}}var uXt,lXt,ZMe,cBn,rke,uBn,dXt,ZX,fXt,lBn,dBn,fBn,hBn,pBn,mBn,gBn,_Bn,ABn,EBn,yBn,hXt,aXt,oXt,vBn,bBn,nke,IBn,cXt,OBn,BBn,UBn,XX,KBn,NXt=ie(()=>{fc();Dn();nXt();zMe();vr();uXt=Ne(require("node:http"),1),lXt=Ne(require("node:https"),1);Cr();Xd();iXt();fa();ia();ZMe="https://telegram.org/img/apple-touch-icon.png",cBn=8e3,rke=200,uBn=1e3,dXt=20*1e3,ZX=30*1e3,fXt=45*1e3,lBn=6,dBn=4,fBn=30,hBn=/t\.me\/[^/\s]+\/[^/\s]+/i,pBn=/https?:\/\/t\.me\/(?:c\/\d+\/\d+|[^/\s?#]+\/\d+(?:\?single)?)(?:\?[^\s]*)?/gi,mBn=/^https?:\/\/(?:telegra\.ph|graph\.org)\//i,gBn=/^https?:\/\/[^\s]+\.(?:txt|text)(?:[?#].*)?$/i,_Bn=/^https?:\/\/t\.me\/c\/\d+\/\d+(?:\?.*)?$/i,ABn=/^https?:\/\/t\.me\/[^/\s?#]+\/\d+(?:\?single)?(?:\?.*)?$/i,EBn=/(?:imdb\.com|movie\.douban\.com|content\.21cn\.com|t\.me)/i,yBn=/^(?:#.+|IMDb|豆瓣|评分|简介|介绍|预告|搜索|标签|资源搜索|查看热播|订阅直达)$/i,hXt=/(?:直达链接|点击下载|在线下载|点击获取(?:夸克|阿里云盘|百度|光鸭)?链接|查看资源|资源|网盘|天翼|夸克|阿里|百度|UC|115|123云盘|迅雷|光鸭|guangya|磁力|magnet)/i;aXt=fn(),oXt=ye.create({timeout:cBn,httpAgent:aXt.httpAgent,httpsAgent:aXt.httpsAgent,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),vBn=new Set(["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN","ENETUNREACH","EHOSTUNREACH","ECONNREFUSED"]);bBn=new _t(rke,dXt),nke=new _t(rke,ZX),IBn=new _t(rke,fXt),cXt=new _t(uBn,Number.POSITIVE_INFINITY);OBn=e=>hBn.test(e||"");BBn={},UBn={},XX={};KBn={meta:{key:"tgchannel",name:"\u2601\uFE0F \u9891\u9053",type:3},api:async e=>{e.post("/init",MBn),e.post("/home",kBn),e.post("/category",HBn),e.post("/detail",VBn),e.post("/play",Ps),e.post("/search",jBn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}}});var qXt={};kt(qXt,{default:()=>I3n});function QBn(){return Ts.staticCache.classes||(Ts.staticCache.classes=[{type_id:"",type_name:"\u5168\u90E8\u76F4\u64AD"},{type_id:"1",type_name:"\u7BEE\u7403\u76F4\u64AD"},{type_id:"8",type_name:"\u8DB3\u7403\u76F4\u64AD"},{type_id:"21",type_name:"\u5176\u4ED6\u76F4\u64AD"}]),Ts.staticCache.classes}function WBn(){return Ts.staticCache.filters||(Ts.staticCache.filters={1:[{key:"cateId",name:"\u7C7B\u578B",value:[{n:"NBA",v:"1"},{n:"CBA",v:"2"},{n:"\u7BEE\u7403\u7EFC\u5408",v:"4"},{n:"\u7EAC\u6765\u4F53\u80B2",v:"21"}]}],8:[{key:"cateId",name:"\u7C7B\u578B",value:[{n:"\u82F1\u8D85",v:"8"},{n:"\u897F\u7532",v:"9"},{n:"\u610F\u7532",v:"10"},{n:"\u6B27\u51A0",v:"12"},{n:"\u6B27\u8054",v:"13"},{n:"\u5FB7\u7532",v:"14"},{n:"\u6CD5\u7532",v:"15"},{n:"\u6B27\u56FD\u8054",v:"16"},{n:"\u8DB3\u603B\u676F",v:"27"},{n:"\u56FD\u738B\u676F",v:"33"},{n:"\u4E2D\u8D85",v:"7"},{n:"\u4E9A\u51A0",v:"11"},{n:"\u8DB3\u7403\u7EFC\u5408",v:"23"},{n:"\u6B27\u534F\u8054",v:"28"},{n:"\u7F8E\u804C\u8054",v:"26"}]}]}),Ts.staticCache.filters}function XBn(){let e=(0,pU.default)().unix();if(e-Ts.lastCleanup>br.cleanupInterval){for(let[t,r]of Ts.cache.entries())e>r.expire&&Ts.cache.delete(t);Ts.lastCleanup=e}}function BXt(e){XBn();let t=Ts.cache.get(e);return t?(0,pU.default)().unix()>=t.expire?(Ts.cache.delete(e),null):t.data:null}function oke(e,t,r=br.cacheTTL){if(Ts.cache.size>=br.cacheMaxSize){let n=Math.min(50,Ts.cache.size),s=0;for(let i of Ts.cache.keys())if(Ts.cache.delete(i),s++,s>=n)break}Ts.cache.set(e,{data:t,expire:(0,pU.default)().unix()+r})}async function tJ(e,t=br.retryTimes){let r=null;for(let n=0;n<=t;n++)try{return await e()}catch(s){if(r=s,n>=t)break;await Yt(1e3*(n+1))}throw r}function JBn(e){if(!e||typeof e!="object"||Array.isArray(e))return JSON.stringify(e);let t=Object.entries(e).sort(([r],[n])=>r.localeCompare(n));return JSON.stringify(Object.fromEntries(t))}async function UXt(e,t,r){let n=Array.isArray(e)?e:[];if(n.length===0)return[];let s=Math.max(1,Math.min(t,n.length)),i=new Array(n.length),a=0,o=async()=>{for(;;){let c=a++;if(c>=n.length)return;i[c]=await r(n[c],c)}};return await Promise.all(Array.from({length:s},()=>o())),i}function uke(e){let t=String(e||"").trim();try{let r=t.match(/[?&](?:url|liveUrl)=/i),n=r?t.slice(r.index+r[0].length):"";if(!n){let s=new URL(t);n=s.searchParams.get("url")||s.searchParams.get("liveUrl")||t}return n.includes("%")&&(n=decodeURIComponent(n)),n}catch{return t||e}}function ZBn(e){return`${ake}${Buffer.from(JSON.stringify(e),"utf-8").toString("base64url")}`}function e3n(e){let t=String(e||"").trim();if(!t.startsWith(ake))return{url:t,lineName:"",sourceHost:"",wrapperUrl:t};try{let r=t.slice(ake.length),n=JSON.parse(Buffer.from(r,"base64url").toString("utf-8")),s=String(n?.wrapperUrl||n?.url||"").trim();return{url:String(n?.url||"").trim()||s,lineName:String(n?.lineName||"").trim(),sourceHost:String(n?.sourceHost||"").trim(),wrapperUrl:s}}catch{return{url:t,lineName:"",sourceHost:"",wrapperUrl:t}}}function t3n(e){let t=String(e||"").trim();if(!t)return null;let r=[t.slice(6,-2),t.slice(6),t];for(let n of r)if(n)try{let s=Buffer.from(n,"base64").toString("utf-8");return JSON.parse(s)}catch{}return null}function DXt(e,t){let r=e.length,n=new Array(r&3?(r>>>2)+1:r>>>2).fill(0);for(let s=0;s>>2]|=e.charCodeAt(s)<<((s&3)<<3);return t&&n.push(r),n}function n3n(e,t){let r=e.length<<2;if(t){let s=e[e.length-1];if(sr-4)return null;r=s}let n=[];for(let s of e)n.push(String.fromCharCode(s&255),String.fromCharCode(s>>>8&255),String.fromCharCode(s>>>16&255),String.fromCharCode(s>>>24&255));return n.join("").slice(0,r)}function PXt(e,t,r,n,s,i){return((r>>>5^t<<2)+(t>>>3^r<<4)^(e^t)+(i[n&3^s]^r))>>>0}function s3n(e,t=r3n){let r=Buffer.from(String(e||""),"base64").toString("binary");if(!r)return"";let n=DXt(r,!1),s=DXt(t,!1);s.length<4&&(s=[...s,0,0,0,0].slice(0,4));let i=n.length;if(i<2)return r;let a=2654435769,c=Math.floor(6+52/i)*a>>>0,u=n[0];for(;c!==0;){let d=c>>>2&3;for(let h=i-1;h>0;h--){let p=n[h-1];u=n[h]=n[h]-PXt(c,u,p,h,d,s)>>>0}let f=n[i-1];u=n[0]=n[0]-PXt(c,u,f,0,d,s)>>>0,c=c-a>>>0}let l=n3n(n,!0);return l?Buffer.from(l,"binary").toString("utf-8"):""}function i3n(e){try{let t=s3n(e),r=JSON.parse(t),n=String(r?.url||"").trim();return/^https?:\/\//i.test(n)?n:""}catch{return""}}async function FXt(e,t={}){let r=String(e||"").trim();if(!/sportsteam368\.com/i.test(r))return"";let n=Number(t.timeout||br.timeout),s=Number.isFinite(t.retryTimes)?t.retryTimes:br.retryTimes,i=await tJ(()=>Xe.get(r,{headers:{...br.headers,Referer:br.host,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"},timeout:n}),s),o=String(i.data||"").match(/encodedStr\s*=\s*['"]([^'"]+)['"]/i)?.[1];return o?i3n(o):""}function a3n(e){let t=String(e||"").trim();if(!t)return"";try{let s=new URL(t,br.host).pathname.match(/\/live\/(\d+)\/play\/?/i);if(s)return s[1]}catch{}let r=t.match(/\/live\/(\d+)\/play\/?/i)||t.match(/^(\d+)$/);return r?r[1]:""}function lke(e){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:new URL(t,br.host).toString():""}function o3n(e){let t=a3n(e);if(t)return`${br.host}/live/${t}/source`;let r=lke(e);return r?r.replace(/\/play\/?$/i,"/source"):""}function c3n(e){let t=lke(e)||br.host;return{...br.headers,Referer:t,Origin:br.host,"X-Requested-With":"XMLHttpRequest"}}function u3n(e){let t=CT.load(e||""),r=t(".game-info-container .team-name").map((s,i)=>t(i).text().trim()).get().filter(Boolean);return r.length>=2?`${r[0]} vs ${r[1]}`:t("title").text().trim().replace(/_线上看.*$/g,"").trim()||"\u8D5B\u4E8B\u76F4\u64AD"}async function l3n(e){let t=lke(e);if(!t)return{links:[],name:"\u8D5B\u4E8B\u76F4\u64AD"};let r=await tJ(()=>Xe.get(t,{headers:{...br.headers,Referer:br.host},timeout:br.timeout})),n=CT.load(r.data||""),s=[];return n("#livePlaySource a.videos-url, #livePlaySource a[href]").each((i,a)=>{let o=n(a).text().trim(),c=n(a).attr("href");o&&c&&s.push({name:o,url:c,shareLock:Number(n(a).attr("data-sharelock")||0)})}),{links:s,name:u3n(r.data)}}async function d3n(e){let t=o3n(e);if(!t)return{links:[],name:"\u8D5B\u4E8B\u76F4\u64AD"};let r=await tJ(()=>Xe.get(t,{headers:c3n(e),timeout:br.timeout})),n=t3n(r.data?.data);return{links:Array.isArray(n?.links)?n.links:[],name:"\u8D5B\u4E8B\u76F4\u64AD"}}function LXt(e){let t=new Set;return(Array.isArray(e)?e:[]).filter(r=>{let n=String(r?.url||"").trim();return!n||t.has(n)?!1:(t.add(n),!0)})}function MXt(e,t){let r=String(e||"").trim().toLowerCase(),n=String(t||"").trim().toLowerCase();return _3n(r)?0:r.includes("c5")?1:r.includes("c4")?2:r.includes("b1")?3:r.includes("b2")?4:RN.test(uke(n))?5:n.includes("sportsteam368.com")?20:n.includes("embedsports.top")?21:10}function kXt(e){try{let t=new URL(e);return`${t.protocol}//${t.host}`}catch{return""}}function cke(e,t,r={}){let n={...br.headers,Referer:t||br.playerHost,"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"User-Agent, Content-Type, Range","Access-Control-Expose-Headers":"Content-Length, Content-Range",...r},s=kXt(t)||kXt(e);return s&&(n.Origin=s),n}function f3n(e,t){let r=cke(e,t);for(let n of["Content-Type","Connection","Access-Control-Allow-Origin","Access-Control-Allow-Methods","Access-Control-Allow-Headers","Access-Control-Expose-Headers"])delete r[n];return r}function h3n(e,t=""){let r=String(t||"").toLowerCase();return RN.test(String(e||""))||r.startsWith("video/")||r.includes("mpegurl")||r.includes("octet-stream")}async function p3n(e,t){let r=String(e||"").trim();if(!/^https?:\/\//i.test(r))return{ok:!1,reason:"not-http"};let n=f3n(r,t),s=[{method:"HEAD",headers:n},{method:"GET",headers:{...n,Range:"bytes=0-1023"}}],i={ok:!1,reason:"unknown"};for(let a of s)try{let o=await Xe.request({url:r,method:a.method,headers:a.headers,timeout:br.lineProbeTimeout,responseType:"arraybuffer",maxRedirects:5,validateStatus:()=>!0}),c=String(o.request?.res?.responseUrl||o.config?.url||r),u=String(o.headers?.["content-type"]||""),l=Number(o.status||0);if(i={ok:l>0&&l<400&&h3n(c,u),status:l,contentType:u,finalUrl:c,method:a.method},a.method==="GET")return i}catch(o){if(i={ok:!1,reason:o.code||o.message||"request-error"},a.method==="GET")return i}return i}async function m3n(e){let t=String(e?.name||"").trim(),r=String(e?.url||"").trim();if(!r)return null;let n=r.startsWith("http")?r:`${br.host}${r}`,s=(()=>{try{return new URL(n).host}catch{return""}})(),i=uke(n);if(i&&!/^https?:\/\//i.test(i)&&(i=`${br.host}${i}`),!RN.test(i)&&/sportsteam368\.com/i.test(n))try{i=await FXt(n,{timeout:br.lineProbeTimeout,retryTimes:0})}catch{i=""}if(!RN.test(i))return null;let a=await p3n(i,n);return a.ok?{...e,name:t,url:a.finalUrl||i,wrapperUrl:n,sourceHost:s,probe:a}:null}async function g3n(e){return(await UXt(e,br.lineProbeConcurrency,async r=>{try{return await m3n(r)}catch{return null}})).filter(Boolean)}function _3n(e){if(!e)return!1;let t=e.toLowerCase().replace(/\s+/g,"");if(t.includes("d1")&&t.includes("\u7EBF\u8DEF")||t.includes("d1")&&t.includes("line")||/^d1(线路|line)?$/.test(t)||/^(线路|line)d1$/.test(t))return!0;let r=e.toLowerCase();return!!(r.includes("\u7EBF\u8DEF")&&r.includes("d1"))}async function $Xt(e,t={}){let r=`category_${e}_${JBn(t)}`,n=BXt(r);if(n)return n;let s=async()=>{let i=t.cateId||e||"",a=i?`/match/${i}/live`:"",o=br.host+a,c=await tJ(()=>Xe.get(o,{headers:br.headers,timeout:br.timeout})),u=CT.load(c.data),l=[],d=[];u(".list-group-item").each((p,m)=>{let g=u(m),_=g.find(".btn.btn-primary"),y=g.find(".category-game-time").text().trim()||"",A=g.find(".game-type").text().trim()||"",E=g.find(".team-name"),v="",b="";E.length>=2&&(v=E.first().text().trim(),b=E.last().text().trim());let I="";if(v&&b?I=`${y} ${A} ${v} vs ${b}`.trim():A?I=`${y} ${A}`.trim():I=y.trim(),!I)return;let T=g.find("img").first().attr("src")||Ts.staticCache.defaultPic,x=T.startsWith("http")?T:br.host+T,w={vod_name:I,vod_pic:x,vod_remarks:""};if(_.length>0)w.vod_id=br.host+_.attr("href"),w.vod_remarks=_.text().trim()||"\u76F4\u64AD\u4E2D",l.push(w);else{let D=`${y}-${A}-${v}-${b}`;w.vod_id=`upcoming_${Buffer.from(D).toString("base64")}`,w.vod_remarks=y||"\u672A\u5F00\u64AD",d.push(w)}});let f=[...l,...d],h={list:f,page:1,pagecount:1,limit:f.length,total:f.length};return f.length>0&&oke(r,h),h};return $n("kanqiu","category",r,async()=>{try{return await s()}catch{return{list:[],page:1,pagecount:1,limit:0,total:0}}},{timeout:3e4})}async function A3n(e){let t=`detail_${e}`,r=BXt(t);if(r)return r;let n=async()=>{if(e.startsWith("upcoming_")){let d={vod_id:e,vod_name:"\u8D5B\u4E8B\u76F4\u64AD",vod_pic:Ts.staticCache.defaultPic,type_name:"\u4F53\u80B2\u76F4\u64AD",vod_remarks:"\u672A\u5F00\u64AD",vod_content:"\u6BD4\u8D5B\u5C1A\u672A\u5F00\u59CB\uFF0C\u8BF7\u7B49\u5F85\u5F00\u64AD",vod_play_from:"88\u770B\u7403",vod_play_url:""};return oke(t,d,br.detailCacheTTL),d}if(e===br.host)return null;let{links:s}=await d3n(e),i=LXt(s);if(i.length===0){let d=await l3n(e);i=LXt(d.links)}if(i.length===0)return null;let a=[...i].sort((d,f)=>{let h=MXt(d?.name,d?.url)-MXt(f?.name,f?.url);return h!==0?h:String(d?.name||"").localeCompare(String(f?.name||""),"zh-CN")}),o=await g3n(a),c=o.map(d=>{let f=d.wrapperUrl||(d.url.startsWith("http")?d.url:`${br.host}${d.url}`),h=ZBn({lineName:String(d.name||"").trim(),sourceHost:d.sourceHost||(()=>{try{return new URL(f).host}catch{return""}})(),wrapperUrl:f,url:d.url||f});return`${d.name}$${h}`}).join("#"),u=o.length>0,l={vod_id:e,vod_name:"\u8D5B\u4E8B\u76F4\u64AD",vod_pic:Ts.staticCache.defaultPic,type_name:"\u4F53\u80B2\u76F4\u64AD",vod_remarks:u?"\u5B9E\u65F6\u76F4\u64AD":"\u6682\u65E0\u53EF\u64AD\u653E\u7EBF\u8DEF",vod_content:u?"\u5B9E\u65F6\u4F53\u80B2\u76F4\u64AD":"\u5F53\u524D\u7EBF\u8DEF\u5747\u65E0\u6CD5\u89E3\u51FA\u53EF\u64AD\u653E\u5A92\u4F53\u5730\u5740",vod_play_from:"88\u770B\u7403",vod_play_url:c};return oke(t,l,u?br.detailCacheTTL:br.cacheTTL),l};return $n("kanqiu","detail",t,async()=>{try{return await n()}catch{return null}},{timeout:3e4})}async function E3n(e,t){return Ts.init||(Ts.device=await e.server.db.getObjectDefault(`${e.server.prefix}/device`,{}),Ts.device.id||(Ts.device=eIe(32),Ts.device.id=Ts.device.id.toLowerCase(),await e.server.db.push(`${e.server.prefix}/device`,Ts.device)),Ts.init=!0),{}}async function y3n(e,t){let r=Qr("kanqiu",arguments[0]||{}),n=Wr(r);if(n)return n;let s=await $Xt(""),i={class:QBn(),filters:WBn(),list:s.list};return hn(r,i,bt.semiStatic),i}async function v3n(e,t){let r=e.body.id,n=e.body.filters||{};return await $Xt(r,n)}async function S3n(e,t){let n=(Array.isArray(e.body.id)?e.body.id:[e.body.id]).map(i=>String(i||"").trim()).filter(Boolean);return{list:(await UXt(n,6,i=>A3n(i))).filter(Boolean)}}function Gb(e="",t=""){return{parse:0,jx:0,url:"",format:"hls",disableSniff:!0,player:"hlsjs",header:br.headers,...e?{error:e}:{},...t?{line:t}:{}}}async function T3n(e,t){try{let r=String(e.body?.id||"").trim();if(!r)return Gb();if(r.startsWith("upcoming_"))return Gb("\u6BD4\u8D5B\u5C1A\u672A\u5F00\u59CB\uFF0C\u8BF7\u7B49\u5F85\u5F00\u64AD");let n=decodeURIComponent(r).replace(/\*\*\*/g,"#"),s=e3n(n),i=s.wrapperUrl||s.url||n,a=s.lineName||String(e.body?.flag||"").trim(),o=s.sourceHost||(()=>{try{return new URL(i).host}catch{return""}})(),c=uke(s.url||n);c&&!/^https?:/i.test(c)&&(c=`${br.host}${c}`);let u=String(e.body?.line||"").trim(),l=YBn[u]||br.playerHost;if(i&&/^https?:\/\//i.test(i))try{let f=new URL(i);l=`${f.protocol}//${f.host}/`}catch{}if(RN.test(c)){let f=e.body.quality||"sd",h=GBn[f]||zBn,p=OXt.test(c)?c.replace(OXt,`${f}-$2`):c,m=/\.mp4(\?|$)/i.test(p)?"video/mp4":"application/vnd.apple.mpegurl";return{parse:0,jx:0,url:p,format:/m3u8(\?|$)/i.test(p)?"hls":"mp4",type:m,header:cke(p,l,{"Content-Type":m}),disableSniff:!0,player:/m3u8(\?|$)/i.test(p)?"hlsjs":"ijk",quality:h,line:a||u||"default"}}if(/sportsteam368\.com/i.test(o)||/sportsteam368\.com/i.test(i)){let f=await FXt(i);if(RN.test(f)){let h=/\.mp4(\?|$)/i.test(f)?"video/mp4":"application/vnd.apple.mpegurl";return{parse:0,jx:0,url:f,format:/m3u8(\?|$)/i.test(f)?"hls":"mp4",type:h,header:cke(f,i,{"Content-Type":h}),disableSniff:!0,player:/m3u8(\?|$)/i.test(f)?"hlsjs":"ijk",line:a||"sportsteam368"}}return Gb("\u672A\u80FD\u89E3\u51FA\u53EF\u64AD\u653E\u5A92\u4F53\u5730\u5740",a||"sportsteam368")}return/embedsports\.top/i.test(o)||/embedsports\.top/i.test(i)?Gb("\u6682\u4E0D\u652F\u6301\u8BE5\u7B2C\u4E09\u65B9\u64AD\u653E\u58F3\u76F4\u94FE\u89E3\u5BC6",a||"embedsports"):(/^https?:\/\//i.test(i),Gb("\u672A\u80FD\u89E3\u51FA\u53EF\u64AD\u653E\u5A92\u4F53\u5730\u5740",a||u||"fallback"))}catch{return Gb("\u64AD\u653E\u5730\u5740\u89E3\u6790\u5931\u8D25")}}async function b3n(e,t){return{list:[],page:1,pagecount:1,total:0}}var pU,br,GBn,zBn,OXt,YBn,RN,ake,Ts,r3n,I3n,HXt=ie(()=>{Cr();Dn();Ds();pU=Ne(T4(),1);Xd();fa();br={host:"https://www.88kanqiu.tw",playerHost:"https://play.88player.top",backupHosts:["https://play.88player.top","https://play.88player2.top"],headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive"},cacheTTL:60,detailCacheTTL:300,retryTimes:2,timeout:15e3,lineProbeTimeout:7e3,lineProbeConcurrency:5,cacheMaxSize:500,cleanupInterval:300},GBn={ld:"240p",sd:"480p",hd:"720p",fhd:"1080p"},zBn="480p",OXt=/(sd|hd|fhd|ld)-(\d+)/,YBn={default:br.playerHost,backup1:br.backupHosts[0],backup2:br.backupHosts[1]},RN=/^https?:\/\/.*\.(m3u8|mp4|flv|m4s|ts)(\?.*)?$/i,ake="kanqiu://",Ts={init:!1,cache:new Map,device:{},lastCleanup:(0,pU.default)().unix(),staticCache:{classes:null,filters:null,defaultPic:"https://pic.imgdb.cn/item/657673d6c458853aeff94ab9.jpg"}};r3n="ABCDEFGHIJKLMNOPQRSTUVWX";I3n={meta:{key:"88kanqiu",name:"\u{1F3C0} \u770B\u7403",type:3,searchable:0,quickSearch:0,filterable:1,qualities:["ld","sd","hd","fhd"],lines:["default","backup1","backup2"]},api:async e=>{let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"User-Agent, Content-Type, Range","Access-Control-Expose-Headers":"Content-Length, Content-Range"};e.options("/play",async(r,n)=>{n.headers(t),n.code(204).send()}),e.post("/init",E3n),e.post("/home",y3n),e.post("/category",v3n),e.post("/detail",S3n),e.post("/play",T3n),e.post("/search",b3n)}}});function R3n(e){return Array.isArray(e)?e:e&&typeof e=="object"?Object.values(e):[]}function mU(e,t=""){return e==null?t:String(e).trim()||t}function VXt(e){let t=R3n(e),r=[];for(let n=0;n0)return t;let r=VXt(e?.config?.live);if(r.length===0)return[];try{await e.db.push("/config/live",r),console.log(`[Live] DB\u4E3A\u7A7A\uFF0C\u5DF2\u4ECE index.config.js \u56DE\u586B\u76F4\u64AD\u914D\u7F6E\uFF0C\u5171 ${r.length} \u6761`)}catch(n){console.error("[Live] \u56DE\u586B\u9ED8\u8BA4\u914D\u7F6E\u5230\u6570\u636E\u5E93\u5931\u8D25:",n)}return r}var dke=ie(()=>{});var zXt={};kt(zXt,{default:()=>C3n});async function L3n(e){if(!e)return Mi;let t=Date.now();if(CN.loaded&&t-CN.timestamp{s.Referer="https://live.bilibili.com/",s.Origin="https://live.bilibili.com"},"douyin.com":()=>{s.Referer="https://www.douyin.com/",s.Origin="https://www.douyin.com"},"huya.com":()=>{s.Referer="https://www.huya.com/",s.Origin="https://www.huya.com"}};if(i){for(let[o,c]of Object.entries(a))if(i.includes(o)){c();break}s.Referer||(s.Referer=`https://${i}/`)}if(_U.set(r,s),_U.size>100){let o=Array.from(_U.keys());for(let c=0;c<20;c++)_U.delete(o[c])}return s}async function M3n(e){return e.server&&await Yb(e.server),{}}async function k3n(e){let t=Qr("live",arguments[0]||{}),r=Wr(t);if(r)return r;e?.server&&await Yb(e.server);let n={class:Mi.map((s,i)=>({type_id:`${i}`,type_name:s.name,type_image:s.logo}))};return hn(t,n,bt.semiStatic),n}async function B3n(e){return e?.server&&await Yb(e.server),{list:Mi.map((t,r)=>({vod_id:`${r}_0_${Date.now()}`,vod_name:t.name,vod_pic:t.logo,vod_remarks:"\u76F4\u64AD\u6E90"})),page:{page:1,pagecount:1,limit:Mi.length,total:Mi.length}}}async function U3n(e){await Yb(e.server);let{id:t,page:r=1,limit:n=50}=e.body,s=Number.parseInt(t,10),i=Mi[s];if(!i)return{list:[],page:{page:1,pagecount:1,limit:0,total:0}};let a=await hke(i),o=a.length,c=Math.ceil(o/n),u=(r-1)*n,l=u+n,d=r>c?[]:a.slice(u,l),f=new Array(d.length);for(let h=0;hh>=200&&h<400});f.status>=300&&f.status<400&&f.headers.location&&(u=new URL(f.headers.location,i).href)}catch(f){let h=f?.response?.headers?.location;h&&(u=new URL(h,i).href)}if(u!==i){let f=nJ(u);l={"User-Agent":c.ua||"okhttp/3.15",Accept:"*/*",Connection:"keep-alive",Referer:`https://${f}/`}}}let d={parse:0,url:u,header:l,headers:l};if(zb.set(t,{result:d,timestamp:r}),zb.size>N3n){let f=Math.min(50,zb.size),h=0;for(let p of zb.keys())if(zb.delete(p),h++,h>=f)break}return d}catch(t){return console.error("[Live Play] Error:",t.message),{parse:0,url:""}}}async function q3n(e){let{wd:t,page:r=1,limit:n=30}=e.body;if(!t)return{list:[],page:{page:1,pagecount:1,limit:0,total:0}};let s=t.toLowerCase(),i=Number.parseInt(r,10)||1,a=Number.parseInt(n,10)||30;await Yb(e.server);let o=[],c=Mi.map(m=>hke(m)),u=await Promise.allSettled(c);for(let m=0;md?[]:o.slice(f,h),page:{page:i,pagecount:d,limit:a,total:l}}}async function hke(e){if(!e?.url)return[];let t=e.url,r=Date.now(),n=fke.get(t);if(n&&r-n.timestamp{try{let i=GXt(e,e.url),o=(await Xe(e.url,{method:"GET",headers:i,timeout:8e3})).data;if(Buffer.isBuffer(o)?o=o.toString("utf-8"):typeof o!="string"&&(o=String(o||"")),o){let u=o.split(` +`),l=[];for(let d=0;d0)return fke.set(t,{data:c,timestamp:r,ttl:30*60*1e3}),c;throw new Error("Empty groups")}catch{let a={data:[],timestamp:r,ttl:6e4};return fke.set(t,a),[]}})();gU.set(t,s);try{return await s}finally{gU.get(t)===s&&gU.delete(t)}}function H3n(e){if(!e||typeof e!="string")return[];let t=new Map,r=e.split(` +`),n="\u672A\u5206\u7C7B";for(let i=0;i0&&s.push({groupName:i,channels:a});return s}var C3n,Mi,AU,fke,gU,CN,x3n,zb,w3n,N3n,jXt,KXt,O3n,D3n,P3n,_U,YXt=ie(()=>{Cr();Dn();dke();C3n={meta:{key:"live",name:"\u{1F4FA} \u76F4\u64AD",type:3,version:"20260115",author:"Gemini"},api:async e=>{e.post("/init",M3n),e.post("/home",k3n),e.post("/homeVod",B3n),e.post("/category",U3n),e.post("/detail",F3n),e.post("/play",$3n),e.post("/search",q3n)}},Mi=[],AU=new Map,fke=new Map,gU=new Map,CN={loaded:!1,timestamp:0,ttl:5*60*1e3},x3n="https://ghp.xptvhelper.link/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg",zb=new Map,w3n=30*1e3,N3n=200,jXt=/\[IDX:(\d+)\]/,KXt=/^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:/\n?]+)/,O3n=/#EXTINF:.*?group-title="([^"]+)".*?,(.+)$/,D3n=/([^,]+)#genre#/,P3n=/^#EXTGRP:(.+)/;_U=new Map});var hu=S((oks,xN)=>{var aks=require("crypto");xN.exports.linebrk=function(e,t){for(var r="",n=0;n+t0){if(r>=4)return e.readUIntBE(t,r);for(var n=0,s=t+r,i=0;s>t;s--,i+=2)n+=e[s-1]*Math.pow(16,i);return n}else return NaN};xN.exports._={isObject:function(e){var t=typeof e;return!!e&&(t=="object"||t=="function")},isString:function(e){return typeof e=="string"||e instanceof String},isNumber:function(e){return typeof e=="number"||!isNaN(parseFloat(e))&&isFinite(e)},omit:function(e,t){var r={};for(var n in e)!e.hasOwnProperty(n)||n===t||(r[n]=e[n]);return r}};xN.exports.trimSurroundingText=function(e,t,r){var n=0,s=e.length,i=e.indexOf(t);i>=0&&(n=i+t.length);var a=e.indexOf(r,i);return a>=0&&(s=a),e.substring(n,s)}});var Xb=S((uks,ZXt)=>{var V3n=require("crypto"),j3n=hu()._,wN,K3n=0xdeadbeefcafe,cks=(K3n&16777215)==15715070;function Ye(e,t){e!=null&&(typeof e=="number"?this.fromNumber(e,t):Buffer.isBuffer(e)?this.fromBuffer(e):t==null&&typeof e!="string"?this.fromByteArray(e):this.fromString(e,t))}function _n(){return new Ye(null)}function G3n(e,t,r,n,s,i){for(var a=t&16383,o=t>>14;--i>=0;){var c=this[e]&16383,u=this[e++]>>14,l=o*c+u*a;c=a*c+((l&16383)<<14)+r[n]+s,s=(c>>28)+(l>>14)+o*u,r[n++]=c&268435455}return s}Ye.prototype.am=G3n;wN=28;Ye.prototype.DB=wN;Ye.prototype.DM=(1<=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s}function Q3n(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+DV:this.t=0}function Hy(e){var t=_n();return t.fromInt(e),t}function W3n(e,t,r){var n;switch(t){case 2:n=1;break;case 4:n=2;break;case 8:n=3;break;case 16:n=4;break;case 32:n=5;break;case 256:n=8;break;default:this.fromRadix(e,t);return}this.t=0,this.s=0;for(var s=e.length,i=!1,a=0;--s>=0;){var o=n==8?e[s]&255:QXt(e,s);if(o<0){e.charAt(s)=="-"&&(i=!0);continue}i=!1,a===0?this[this.t++]=o:a+n>this.DB?(this[this.t-1]|=(o&(1<>this.DB-a):this[this.t-1]|=o<=this.DB&&(a-=this.DB)}!r&&n==8&&e[0]&128&&(this.s=-1,a>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==e;)--this.t}function eUn(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(e==16)t=4;else if(e==8)t=3;else if(e==2)t=1;else if(e==32)t=5;else if(e==4)t=2;else return this.toRadix(e);var r=(1<0)for(o>o)>0&&(s=!0,i=pke(n));a>=0;)o>(o+=this.DB-t)):(n=this[a]>>(o-=t)&r,o<=0&&(o+=this.DB,--a)),n>0&&(s=!0),s&&(i+=pke(n));return s?i:"0"}function tUn(){var e=_n();return Ye.ZERO.subTo(this,e),e}function rUn(){return this.s<0?this.negate():this}function nUn(e){var t=this.s-e.s;if(t!=0)return t;var r=this.t;if(t=r-e.t,t!=0)return this.s<0?-t:t;for(;--r>=0;)if((t=this[r]-e[r])!=0)return t;return 0}function iJ(e){var t=1,r;return(r=e>>>16)!=0&&(e=r,t+=16),(r=e>>8)!=0&&(e=r,t+=8),(r=e>>4)!=0&&(e=r,t+=4),(r=e>>2)!=0&&(e=r,t+=2),(r=e>>1)!=0&&(e=r,t+=1),t}function sUn(){return this.t<=0?0:this.DB*(this.t-1)+iJ(this[this.t-1]^this.s&this.DM)}function iUn(e,t){var r;for(r=this.t-1;r>=0;--r)t[r+e]=this[r];for(r=e-1;r>=0;--r)t[r]=0;t.t=this.t+e,t.s=this.s}function aUn(e,t){for(var r=e;r=0;--o)t[o+i+1]=this[o]>>n|a,a=(this[o]&s)<=0;--o)t[o]=0;t[i]=a,t.t=this.t+i+1,t.s=this.s,t.clamp()}function cUn(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t){t.t=0;return}var n=e%this.DB,s=this.DB-n,i=(1<>n;for(var a=r+1;a>n;n>0&&(t[this.t-r-1]|=(this.s&i)<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:n>0&&(t[r++]=n),t.t=r,t.clamp()}function lUn(e,t){var r=this.abs(),n=e.abs(),s=r.t;for(t.t=s+n.t;--s>=0;)t[s]=0;for(s=0;s=0;)e[r]=0;for(r=0;r=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(r,t[r],e,2*r,0,1)),e.s=0,e.clamp()}function fUn(e,t,r){var n=e.abs();if(!(n.t<=0)){var s=this.abs();if(s.t0?(n.lShiftTo(c,i),s.lShiftTo(c,r)):(n.copyTo(i),s.copyTo(r));var u=i.t,l=i[u-1];if(l!==0){var d=l*(1<1?i[u-2]>>this.F2:0),f=this.FV/d,h=(1<=0&&(r[r.t++]=1,r.subTo(_,r)),Ye.ONE.dlShiftTo(u,_),_.subTo(i,i);i.t=0;){var y=r[--m]==l?this.DM:Math.floor(r[m]*f+(r[m-1]+p)*h);if((r[m]+=i.am(0,y,r,g,0,u))0&&r.rShiftTo(c,r),a<0&&Ye.ZERO.subTo(r,r)}}}function hUn(e){var t=_n();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(Ye.ZERO)>0&&e.subTo(t,t),t}function Qb(e){this.m=e}function pUn(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e}function mUn(e){return e}function gUn(e){e.divRemTo(this.m,null,e)}function _Un(e,t,r){e.multiplyTo(t,r),this.reduce(r)}function AUn(e,t){e.squareTo(t),this.reduce(t)}Qb.prototype.convert=pUn;Qb.prototype.revert=mUn;Qb.prototype.reduce=gUn;Qb.prototype.mulTo=_Un;Qb.prototype.sqrTo=AUn;function EUn(){if(this.t<1)return 0;var e=this[0];if(!(e&1))return 0;var t=e&3;return t=t*(2-(e&15)*t)&15,t=t*(2-(e&255)*t)&255,t=t*(2-((e&65535)*t&65535))&65535,t=t*(2-e*t%this.DV)%this.DV,t>0?this.DV-t:-t}function Wb(e){this.m=e,this.mp=e.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0&&this.m.subTo(t,t),t}function vUn(e){var t=_n();return e.copyTo(t),this.reduce(t),t}function SUn(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e[r]+=this.m.am(0,n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)}function TUn(e,t){e.squareTo(t),this.reduce(t)}function bUn(e,t,r){e.multiplyTo(t,r),this.reduce(r)}Wb.prototype.convert=yUn;Wb.prototype.revert=vUn;Wb.prototype.reduce=SUn;Wb.prototype.mulTo=bUn;Wb.prototype.sqrTo=TUn;function IUn(){return(this.t>0?this[0]&1:this.s)===0}function RUn(e,t){if(e>4294967295||e<1)return Ye.ONE;var r=_n(),n=_n(),s=t.convert(this),i=iJ(e)-1;for(s.copyTo(r);--i>=0;)if(t.sqrTo(r,n),(e&1<0)t.mulTo(n,s,r);else{var a=r;r=n,n=a}return t.revert(r)}function CUn(e,t){var r;return e<256||t.isEven()?r=new Qb(t):r=new Wb(t),this.exp(e,r)}function xUn(){var e=_n();return this.copyTo(e),e}function wUn(){if(this.s<0){if(this.t==1)return this[0]-this.DV;if(this.t===0)return-1}else{if(this.t==1)return this[0];if(this.t===0)return 0}return(this[1]&(1<<32-this.DB)-1)<>24}function OUn(){return this.t==0?this.s:this[0]<<16>>16}function DUn(e){return Math.floor(Math.LN2*this.DB/Math.log(e))}function PUn(){return this.s<0?-1:this.t<=0||this.t==1&&this[0]<=0?0:1}function LUn(e){if(e==null&&(e=10),this.signum()===0||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=Hy(r),s=_n(),i=_n(),a="";for(this.divRemTo(n,s,i);s.signum()>0;)a=(r+i.intValue()).toString(e).substr(1)+a,s.divRemTo(n,s,i);return i.intValue().toString(e)+a}function MUn(e,t){this.fromInt(0),t==null&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),s=!1,i=0,a=0,o=0;o=r&&(this.dMultiply(n),this.dAddOffset(a,0),i=0,a=0)}i>0&&(this.dMultiply(Math.pow(t,i)),this.dAddOffset(a,0)),s&&Ye.ZERO.subTo(this,this)}function kUn(e,t){if(typeof t=="number")if(e<2)this.fromInt(1);else for(this.fromNumber(e),this.testBit(e-1)||this.bitwiseTo(Ye.ONE.shiftLeft(e-1),gke,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(Ye.ONE.shiftLeft(e-1),this);else{var r=V3n.randomBytes((e>>3)+1),n=e&7;n>0?r[0]&=(1<0)for(r>r)!=(this.s&this.DM)>>r&&(t[s++]=n|this.s<=0;)r<8?(n=(this[e]&(1<>(r+=this.DB-8)):(n=this[e]>>(r-=8)&255,r<=0&&(r+=this.DB,--e)),n&128&&(n|=-256),s===0&&(this.s&128)!=(n&128)&&++s,(s>0||n!=this.s)&&(t[s++]=n);return t}function UUn(e){var t=Buffer.from(this.toByteArray());if(e===!0&&t[0]===0)t=t.slice(1);else if(j3n.isNumber(e)){if(t.length>e){for(var r=0;r0?this:e}function HUn(e,t,r){var n,s,i=Math.min(e.t,this.t);for(n=0;n>=16,t+=16),e&255||(e>>=8,t+=8),e&15||(e>>=4,t+=4),e&3||(e>>=2,t+=2),e&1||++t,t}function JUn(){for(var e=0;e=this.t?this.s!=0:(this[t]&1<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[r++]=n:n<-1&&(t[r++]=this.DV+n),t.t=r,t.clamp()}function oFn(e){var t=_n();return this.addTo(e,t),t}function cFn(e){var t=_n();return this.subTo(e,t),t}function uFn(e){var t=_n();return this.multiplyTo(e,t),t}function lFn(){var e=_n();return this.squareTo(e),e}function dFn(e){var t=_n();return this.divRemTo(e,t,null),t}function fFn(e){var t=_n();return this.divRemTo(e,null,t),t}function hFn(e){var t=_n(),r=_n();return this.divRemTo(e,t,r),new Array(t,r)}function pFn(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()}function mFn(e,t){if(e!==0){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}}function EU(){}function JXt(e){return e}function gFn(e,t,r){e.multiplyTo(t,r)}function _Fn(e,t){e.squareTo(t)}EU.prototype.convert=JXt;EU.prototype.revert=JXt;EU.prototype.mulTo=gFn;EU.prototype.sqrTo=_Fn;function AFn(e){return this.exp(e,new EU)}function EFn(e,t,r){var n=Math.min(this.t+e.t,t);for(r.s=0,r.t=n;n>0;)r[--n]=0;var s;for(s=r.t-this.t;n=0;)r[n]=0;for(n=Math.max(t-this.t,0);n2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=_n();return e.copyTo(t),this.reduce(t),t}function SFn(e){return e}function TFn(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)}function bFn(e,t){e.squareTo(t),this.reduce(t)}function IFn(e,t,r){e.multiplyTo(t,r),this.reduce(r)}ON.prototype.convert=vFn;ON.prototype.revert=SFn;ON.prototype.reduce=TFn;ON.prototype.mulTo=IFn;ON.prototype.sqrTo=bFn;function RFn(e,t){var r=e.bitLength(),n,s=Hy(1),i;if(r<=0)return s;r<18?n=1:r<48?n=3:r<144?n=4:r<768?n=5:n=6,r<8?i=new Qb(t):t.isEven()?i=new ON(t):i=new Wb(t);var a=new Array,o=3,c=n-1,u=(1<1){var l=_n();for(i.sqrTo(a[1],l);o<=u;)a[o]=_n(),i.mulTo(l,a[o-2],a[o]),o+=2}var d=e.t-1,f,h=!0,p=_n(),m;for(r=iJ(e[d])-1;d>=0;){for(r>=c?f=e[d]>>r-c&u:(f=(e[d]&(1<0&&(f|=e[d-1]>>this.DB+r-c)),o=n;!(f&1);)f>>=1,--o;if((r-=o)<0&&(r+=this.DB,--d),h)a[f].copyTo(s),h=!1;else{for(;o>1;)i.sqrTo(s,p),i.sqrTo(p,s),o-=2;o>0?i.sqrTo(s,p):(m=s,s=p,p=m),i.mulTo(p,a[f],s)}for(;d>=0&&!(e[d]&1<0&&(t.rShiftTo(i,t),r.rShiftTo(i,r));t.signum()>0;)(s=t.getLowestSetBit())>0&&t.rShiftTo(s,t),(s=r.getLowestSetBit())>0&&r.rShiftTo(s,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return i>0&&r.lShiftTo(i,r),r}function xFn(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(t===0)r=this[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this[n])%e;return r}function wFn(e){var t=e.isEven();if(this.isEven()&&t||e.signum()===0)return Ye.ZERO;for(var r=e.clone(),n=this.clone(),s=Hy(1),i=Hy(0),a=Hy(0),o=Hy(1);r.signum()!=0;){for(;r.isEven();)r.rShiftTo(1,r),t?((!s.isEven()||!i.isEven())&&(s.addTo(this,s),i.subTo(e,i)),s.rShiftTo(1,s)):i.isEven()||i.subTo(e,i),i.rShiftTo(1,i);for(;n.isEven();)n.rShiftTo(1,n),t?((!a.isEven()||!o.isEven())&&(a.addTo(this,a),o.subTo(e,o)),a.rShiftTo(1,a)):o.isEven()||o.subTo(e,o),o.rShiftTo(1,o);r.compareTo(n)>=0?(r.subTo(n,r),t&&s.subTo(a,s),i.subTo(o,i)):(n.subTo(r,n),t&&a.subTo(s,a),o.subTo(i,o))}if(n.compareTo(Ye.ONE)!=0)return Ye.ZERO;if(o.compareTo(e)>=0)return o.subtract(e);if(o.signum()<0)o.addTo(e,o);else return o;return o.signum()<0?o.add(e):o}var pu=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],NFn=(1<<26)/pu[pu.length-1];function OFn(e){var t,r=this.abs();if(r.t==1&&r[0]<=pu[pu.length-1]){for(t=0;t>1,e>pu.length&&(e=pu.length);for(var s=_n(),i=0;i{var eJt=Xb(),DN=require("crypto"),aJ=require("constants"),PFn={md2:Buffer.from("3020300c06082a864886f70d020205000410","hex"),md5:Buffer.from("3020300c06082a864886f70d020505000410","hex"),sha1:Buffer.from("3021300906052b0e03021a05000414","hex"),sha224:Buffer.from("302d300d06096086480165030402040500041c","hex"),sha256:Buffer.from("3031300d060960864801650304020105000420","hex"),sha384:Buffer.from("3041300d060960864801650304020205000430","hex"),sha512:Buffer.from("3051300d060960864801650304020305000440","hex"),ripemd160:Buffer.from("3021300906052b2403020105000414","hex"),rmd160:Buffer.from("3021300906052b2403020105000414","hex")},tJt={ripemd160:"rmd160"},rJt="sha256";_ke.exports={isEncryption:!0,isSignature:!0};_ke.exports.makeScheme=function(e,t){function r(n,s){this.key=n,this.options=s}return r.prototype.maxMessageLength=function(){return this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==aJ.RSA_NO_PADDING?this.key.encryptedDataLength:this.key.encryptedDataLength-11},r.prototype.encPad=function(n,s){s=s||{};var i;if(n.length>this.key.maxMessageLength)throw new Error("Message too long for RSA (n="+this.key.encryptedDataLength+", l="+n.length+")");if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==aJ.RSA_NO_PADDING)return i=Buffer.alloc(this.key.maxMessageLength-n.length),i.fill(0),Buffer.concat([i,n]);if(s.type===1)return i=Buffer.alloc(this.key.encryptedDataLength-n.length-1),i.fill(255,0,i.length-1),i[0]=1,i[i.length-1]=0,Buffer.concat([i,n]);i=Buffer.alloc(this.key.encryptedDataLength-n.length),i[0]=0,i[1]=2;for(var a=DN.randomBytes(i.length-3),o=0;o=n.length)return null}else{if(n[0]!==0||n[1]!==2)return null;for(i=3;n[i]!==0;)if(++i>=n.length)return null}return n.slice(i+1,n.length)},r.prototype.sign=function(n){var s=this.options.signingSchemeOptions.hash||rJt;if(this.options.environment==="browser"){s=tJt[s]||s;var i=DN.createHash(s);i.update(n);var a=this.pkcs1pad(i.digest(),s),o=this.key.$doPrivate(new eJt(a)).toBuffer(this.key.encryptedDataLength);return o}else{var c=DN.createSign("RSA-"+s.toUpperCase());return c.update(n),c.sign(this.options.rsaUtils.exportKey("private"))}},r.prototype.verify=function(n,s,i){if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==aJ.RSA_NO_PADDING)return!1;var a=this.options.signingSchemeOptions.hash||rJt;if(this.options.environment==="browser"){a=tJt[a]||a,i&&(s=Buffer.from(s,i));var o=DN.createHash(a);o.update(n);var c=this.pkcs1pad(o.digest(),a),u=this.key.$doPublic(new eJt(s));return u.toBuffer().toString("hex")==c.toString("hex")}else{var l=DN.createVerify("RSA-"+a.toUpperCase());return l.update(n),l.verify(this.options.rsaUtils.exportKey("public"),s,i)}},r.prototype.pkcs0pad=function(n){var s=Buffer.alloc(this.key.maxMessageLength-n.length);return s.fill(0),Buffer.concat([s,n])},r.prototype.pkcs0unpad=function(n){var s;return typeof n.lastIndexOf=="function"?s=n.slice(n.lastIndexOf("\0")+1,n.length):s=n.slice(String.prototype.lastIndexOf.call(n,"\0")+1,n.length),s},r.prototype.pkcs1pad=function(n,s){var i=PFn[s];if(!i)throw Error("Unsupported hash algorithm");var a=Buffer.concat([i,n]);if(a.length+10>this.key.encryptedDataLength)throw Error("Key is too short for signing algorithm ("+s+")");var o=Buffer.alloc(this.key.encryptedDataLength-a.length-1);o.fill(255,0,o.length-1),o[0]=1,o[o.length-1]=0;var c=Buffer.concat([o,a]);return c},new r(e,t)}});var sJt=S((fks,Y0)=>{var dks=Xb(),oJ=require("crypto");Y0.exports={isEncryption:!0,isSignature:!1};Y0.exports.digestLength={md4:16,md5:16,ripemd160:20,rmd160:20,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64};var cJ="sha1";Y0.exports.eme_oaep_mgf1=function(e,t,r){r=r||cJ;for(var n=Y0.exports.digestLength[r],s=Math.ceil(t/n),i=Buffer.alloc(n*s),a=Buffer.alloc(4),o=0;oo-2*c-2)throw new Error("Message is too long to encode into an encoded message with a length of "+o+" bytes, increaseemLen to fix this error (minimum value for given parameters and options: "+(o-2*c-2)+")");var u=oJ.createHash(s);u.update(a),u=u.digest();var l=Buffer.alloc(o-n.length-2*c-1);l.fill(0),l[l.length-1]=1;for(var d=Buffer.concat([u,l,n]),f=oJ.randomBytes(c),h=i(f,d.length,s),p=0;p{var iJt=Xb(),yU=require("crypto");Ake.exports={isEncryption:!1,isSignature:!0};var uJ="sha1",aJt=20;Ake.exports.makeScheme=function(e,t){var r=Jb().pkcs1_oaep;function n(s,i){this.key=s,this.options=i}return n.prototype.sign=function(s){var i=yU.createHash(this.options.signingSchemeOptions.hash||uJ);i.update(s);var a=this.emsa_pss_encode(i.digest(),this.key.keySize-1);return this.key.$doPrivate(new iJt(a)).toBuffer(this.key.encryptedDataLength)},n.prototype.verify=function(s,i,a){a&&(i=Buffer.from(i,a)),i=new iJt(i);var o=Math.ceil((this.key.keySize-1)/8),c=this.key.$doPublic(i).toBuffer(o),u=yU.createHash(this.options.signingSchemeOptions.hash||uJ);return u.update(s),this.emsa_pss_verify(u.digest(),c,this.key.keySize-1)},n.prototype.emsa_pss_encode=function(s,i){var a=this.options.signingSchemeOptions.hash||uJ,o=this.options.signingSchemeOptions.mgf||r.eme_oaep_mgf1,c=this.options.signingSchemeOptions.saltLength||aJt,u=r.digestLength[a],l=Math.ceil(i/8);if(l>8-A<<8-A;_[0]=_[0]&E;var v=Buffer.alloc(_.length+h.length+1);return _.copy(v,0),h.copy(v,_.length),v[v.length-1]=188,v},n.prototype.emsa_pss_verify=function(s,i,a){var o=this.options.signingSchemeOptions.hash||uJ,c=this.options.signingSchemeOptions.mgf||r.eme_oaep_mgf1,u=this.options.signingSchemeOptions.saltLength||aJt,l=r.digestLength[o],d=Math.ceil(a/8);if(d>8-m<<8-m,f[0]=f[0]&h,p=0;f[p]===0&&p{PN.exports={pkcs1:nJt(),pkcs1_oaep:sJt(),pss:oJt(),isEncryption:function(e){return PN.exports[e]&&PN.exports[e].isEncryption},isSignature:function(e){return PN.exports[e]&&PN.exports[e].isSignature}}});var yke=S((mks,cJt)=>{var Eke=Xb(),LFn=Jb();cJt.exports=function(e,t){var r=LFn.pkcs1.makeScheme(e,t);return{encrypt:function(n,s){var i,a;return s?(i=new Eke(r.encPad(n,{type:1})),a=e.$doPrivate(i)):(i=new Eke(e.encryptionScheme.encPad(n)),a=e.$doPublic(i)),a.toBuffer(e.encryptedDataLength)},decrypt:function(n,s){var i,a=new Eke(n);return s?(i=e.$doPublic(a),r.encUnPad(i.toBuffer(e.encryptedDataLength),{type:1})):(i=e.$doPrivate(a),e.encryptionScheme.encUnPad(i.toBuffer(e.encryptedDataLength)))}}}});var lJt=S((gks,uJt)=>{var lJ=require("crypto"),Vy=require("constants"),MFn=Jb();uJt.exports=function(e,t){var r=MFn.pkcs1.makeScheme(e,t);return{encrypt:function(n,s){var i;if(s)return i=Vy.RSA_PKCS1_PADDING,t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding),lJ.privateEncrypt({key:t.rsaUtils.exportKey("private"),padding:i},n);i=Vy.RSA_PKCS1_OAEP_PADDING,t.encryptionScheme==="pkcs1"&&(i=Vy.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding);var a=n;return i===Vy.RSA_NO_PADDING&&(a=r.pkcs0pad(n)),lJ.publicEncrypt({key:t.rsaUtils.exportKey("public"),padding:i},a)},decrypt:function(n,s){var i;if(s)return i=Vy.RSA_PKCS1_PADDING,t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding),lJ.publicDecrypt({key:t.rsaUtils.exportKey("public"),padding:i},n);i=Vy.RSA_PKCS1_OAEP_PADDING,t.encryptionScheme==="pkcs1"&&(i=Vy.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(i=t.encryptionSchemeOptions.padding);var a=lJ.privateDecrypt({key:t.rsaUtils.exportKey("private"),padding:i},n);return i===Vy.RSA_NO_PADDING?r.pkcs0unpad(a):a}}}});var hJt=S((_ks,fJt)=>{var dJt=require("crypto"),LN=require("constants"),kFn=Jb();fJt.exports=function(e,t){var r=yke()(e,t),n=kFn.pkcs1.makeScheme(e,t);return{encrypt:function(s,i){if(i)return r.encrypt(s,i);var a=LN.RSA_PKCS1_OAEP_PADDING;t.encryptionScheme==="pkcs1"&&(a=LN.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(a=t.encryptionSchemeOptions.padding);var o=s;return a===LN.RSA_NO_PADDING&&(o=n.pkcs0pad(s)),dJt.publicEncrypt({key:t.rsaUtils.exportKey("public"),padding:a},o)},decrypt:function(s,i){if(i)return r.decrypt(s,i);var a=LN.RSA_PKCS1_OAEP_PADDING;t.encryptionScheme==="pkcs1"&&(a=LN.RSA_PKCS1_PADDING),t.encryptionSchemeOptions&&t.encryptionSchemeOptions.padding&&(a=t.encryptionSchemeOptions.padding);var o=dJt.privateDecrypt({key:t.rsaUtils.exportKey("private"),padding:a},s);return a===LN.RSA_NO_PADDING?n.pkcs0unpad(o):o}}}});var mJt=S((Aks,pJt)=>{var dJ=require("crypto");pJt.exports={getEngine:function(e,t){var r=yke();return t.environment==="node"&&typeof dJ.publicEncrypt=="function"&&typeof dJ.privateDecrypt=="function"&&(typeof dJ.privateEncrypt=="function"&&typeof dJ.publicDecrypt=="function"?r=lJt():r=hJt()),r(e,t)}}});var yJt=S((AJt,EJt)=>{var fJ=hu()._,Eks=require("crypto"),Da=Xb(),gJt=hu(),_Jt=Jb(),BFn=mJt();AJt.BigInteger=Da;EJt.exports.Key=function(){function e(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return e.prototype.setOptions=function(t){var r=_Jt[t.signingScheme],n=_Jt[t.encryptionScheme];r===n?this.signingScheme=this.encryptionScheme=n.makeScheme(this,t):(this.encryptionScheme=n.makeScheme(this,t),this.signingScheme=r.makeScheme(this,t)),this.encryptEngine=BFn.getEngine(this,t)},e.prototype.generate=function(t,r){var n=t>>1;this.e=parseInt(r,16);for(var s=new Da(r,16);;){for(;this.p=new Da(t-n,1),!(this.p.subtract(Da.ONE).gcd(s).compareTo(Da.ONE)===0&&this.p.isProbablePrime(10)););for(;this.q=new Da(n,1),!(this.q.subtract(Da.ONE).gcd(s).compareTo(Da.ONE)===0&&this.q.isProbablePrime(10)););if(this.p.compareTo(this.q)<=0){var i=this.p;this.p=this.q,this.q=i}var a=this.p.subtract(Da.ONE),o=this.q.subtract(Da.ONE),c=a.multiply(o);if(c.gcd(s).compareTo(Da.ONE)===0){if(this.n=this.p.multiply(this.q),this.n.bitLength()0&&(fJ.isNumber(r)||r.length>0)&&n.length>0)this.n=new Da(t),this.e=fJ.isNumber(r)?r:gJt.get32IntFromBuffer(r,0),this.d=new Da(n),s&&i&&a&&o&&c&&(this.p=new Da(s),this.q=new Da(i),this.dmp1=new Da(a),this.dmq1=new Da(o),this.coeff=new Da(c)),this.$$recalculateCache();else throw Error("Invalid RSA private key")},e.prototype.setPublic=function(t,r){if(t&&r&&t.length>0&&(fJ.isNumber(r)||r.length>0))this.n=new Da(t),this.e=fJ.isNumber(r)?r:gJt.get32IntFromBuffer(r,0),this.$$recalculateCache();else throw Error("Invalid RSA public key")},e.prototype.$doPrivate=function(t){if(this.p||this.q)return t.modPow(this.d,this.n);for(var r=t.mod(this.p).modPow(this.dmp1,this.p),n=t.mod(this.q).modPow(this.dmq1,this.q);r.compareTo(n)<0;)r=r.add(this.p);return r.subtract(n).multiply(this.coeff).mod(this.p).multiply(this.q).add(n)},e.prototype.$doPublic=function(t){return t.modPowInt(this.e,this.n)},e.prototype.encrypt=function(t,r){var n=[],s=[],i=t.length,a=Math.ceil(i/this.maxMessageLength)||1,o=Math.ceil(i/a||1);if(a==1)n.push(t);else for(var c=0;c0)throw Error("Incorrect data or key");for(var n=[],s=0,i=0,a=t.length/this.encryptedDataLength,o=0;o>3},e}()});var hJ=S((yks,vJt)=>{vJt.exports={newInvalidAsn1Error:function(e){var t=new Error;return t.name="InvalidAsn1Error",t.message=e||"",t}}});var pJ=S((vks,SJt)=>{SJt.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}});var IJt=S((Sks,bJt)=>{var UFn=require("assert"),TJt=m0().Buffer,vU=pJ(),FFn=hJ(),MN=FFn.newInvalidAsn1Error;function mu(e){if(!e||!TJt.isBuffer(e))throw new TypeError("data must be a node Buffer");this._buf=e,this._size=e.length,this._len=0,this._offset=0}Object.defineProperty(mu.prototype,"length",{enumerable:!0,get:function(){return this._len}});Object.defineProperty(mu.prototype,"offset",{enumerable:!0,get:function(){return this._offset}});Object.defineProperty(mu.prototype,"remain",{get:function(){return this._size-this._offset}});Object.defineProperty(mu.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}});mu.prototype.readByte=function(e){if(this._size-this._offset<1)return null;var t=this._buf[this._offset]&255;return e||(this._offset+=1),t};mu.prototype.peek=function(){return this.readByte(!0)};mu.prototype.readLength=function(e){if(e===void 0&&(e=this._offset),e>=this._size)return null;var t=this._buf[e++]&255;if(t===null)return null;if((t&128)===128){if(t&=127,t===0)throw MN("Indefinite length not supported");if(t>4)throw MN("encoding too long");if(this._size-ethis._size-n)return null;if(this._offset=n,this.length===0)return t?TJt.alloc(0):"";var s=this._buf.slice(this._offset,this._offset+this.length);return this._offset+=this.length,t?s:s.toString("utf8")};mu.prototype.readOID=function(e){e||(e=vU.OID);var t=this.readString(e,!0);if(t===null)return null;for(var r=[],n=0,s=0;s>0),r.join(".")};mu.prototype._readTag=function(e){UFn.ok(e!==void 0);var t=this.peek();if(t===null)return null;if(t!==e)throw MN("Expected 0x"+e.toString(16)+": got 0x"+t.toString(16));var r=this.readLength(this._offset+1);if(r===null)return null;if(this.length>4)throw MN("Integer too long: "+this.length);if(this.length>this._size-r)return null;this._offset=r;for(var n=this._buf[this._offset],s=0,i=0;i>0};bJt.exports=mu});var CJt=S((Tks,RJt)=>{var jy=require("assert"),mJ=m0().Buffer,Ky=pJ(),$Fn=hJ(),gJ=$Fn.newInvalidAsn1Error,qFn={size:1024,growthFactor:8};function HFn(e,t){jy.ok(e),jy.equal(typeof e,"object"),jy.ok(t),jy.equal(typeof t,"object");var r=Object.getOwnPropertyNames(e);return r.forEach(function(n){if(!t[n]){var s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s)}}),t}function wc(e){e=HFn(qFn,e||{}),this._buf=mJ.alloc(e.size||1024),this._size=this._buf.length,this._offset=0,this._options=e,this._seq=[]}Object.defineProperty(wc.prototype,"buffer",{get:function(){if(this._seq.length)throw gJ(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}});wc.prototype.writeByte=function(e){if(typeof e!="number")throw new TypeError("argument must be a Number");this._ensure(1),this._buf[this._offset++]=e};wc.prototype.writeInt=function(e,t){if(typeof e!="number")throw new TypeError("argument must be a Number");typeof t!="number"&&(t=Ky.Integer);for(var r=4;(!(e&4286578688)||(e&4286578688)===-8388608)&&r>1;)r--,e<<=8;if(r>4)throw gJ("BER ints cannot be > 0xffffffff");for(this._ensure(2+r),this._buf[this._offset++]=t,this._buf[this._offset++]=r;r-- >0;)this._buf[this._offset++]=(e&4278190080)>>>24,e<<=8};wc.prototype.writeNull=function(){this.writeByte(Ky.Null),this.writeByte(0)};wc.prototype.writeEnumeration=function(e,t){if(typeof e!="number")throw new TypeError("argument must be a Number");return typeof t!="number"&&(t=Ky.Enumeration),this.writeInt(e,t)};wc.prototype.writeBoolean=function(e,t){if(typeof e!="boolean")throw new TypeError("argument must be a Boolean");typeof t!="number"&&(t=Ky.Boolean),this._ensure(3),this._buf[this._offset++]=t,this._buf[this._offset++]=1,this._buf[this._offset++]=e?255:0};wc.prototype.writeString=function(e,t){if(typeof e!="string")throw new TypeError("argument must be a string (was: "+typeof e+")");typeof t!="number"&&(t=Ky.OctetString);var r=mJ.byteLength(e);this.writeByte(t),this.writeLength(r),r&&(this._ensure(r),this._buf.write(e,this._offset),this._offset+=r)};wc.prototype.writeBuffer=function(e,t){if(typeof t!="number")throw new TypeError("tag must be a number");if(!mJ.isBuffer(e))throw new TypeError("argument must be a buffer");this.writeByte(t),this.writeLength(e.length),this._ensure(e.length),e.copy(this._buf,this._offset,0,e.length),this._offset+=e.length};wc.prototype.writeStringArray=function(e){if(!e instanceof Array)throw new TypeError("argument must be an Array[String]");var t=this;e.forEach(function(r){t.writeString(r)})};wc.prototype.writeOID=function(e,t){if(typeof e!="string")throw new TypeError("argument must be a string");if(typeof t!="number"&&(t=Ky.OID),!/^([0-9]+\.){3,}[0-9]+$/.test(e))throw new Error("argument is not a valid OID string");function r(a,o){o<128?a.push(o):o<16384?(a.push(o>>>7|128),a.push(o&127)):o<2097152?(a.push(o>>>14|128),a.push((o>>>7|128)&255),a.push(o&127)):o<268435456?(a.push(o>>>21|128),a.push((o>>>14|128)&255),a.push((o>>>7|128)&255),a.push(o&127)):(a.push((o>>>28|128)&255),a.push((o>>>21|128)&255),a.push((o>>>14|128)&255),a.push((o>>>7|128)&255),a.push(o&127))}var n=e.split("."),s=[];s.push(parseInt(n[0],10)*40+parseInt(n[1],10)),n.slice(2).forEach(function(a){r(s,parseInt(a,10))});var i=this;this._ensure(2+s.length),this.writeByte(t),this.writeLength(s.length),s.forEach(function(a){i.writeByte(a)})};wc.prototype.writeLength=function(e){if(typeof e!="number")throw new TypeError("argument must be a Number");if(this._ensure(4),e<=127)this._buf[this._offset++]=e;else if(e<=255)this._buf[this._offset++]=129,this._buf[this._offset++]=e;else if(e<=65535)this._buf[this._offset++]=130,this._buf[this._offset++]=e>>8,this._buf[this._offset++]=e;else if(e<=16777215)this._buf[this._offset++]=131,this._buf[this._offset++]=e>>16,this._buf[this._offset++]=e>>8,this._buf[this._offset++]=e;else throw gJ("Length too long (> 4 bytes)")};wc.prototype.startSequence=function(e){typeof e!="number"&&(e=Ky.Sequence|Ky.Constructor),this.writeByte(e),this._seq.push(this._offset),this._ensure(3),this._offset+=3};wc.prototype.endSequence=function(){var e=this._seq.pop(),t=e+3,r=this._offset-t;if(r<=127)this._shift(t,r,-2),this._buf[e]=r;else if(r<=255)this._shift(t,r,-1),this._buf[e]=129,this._buf[e+1]=r;else if(r<=65535)this._buf[e]=130,this._buf[e+1]=r>>8,this._buf[e+2]=r;else if(r<=16777215)this._shift(t,r,1),this._buf[e]=131,this._buf[e+1]=r>>16,this._buf[e+2]=r>>8,this._buf[e+3]=r;else throw gJ("Sequence too long")};wc.prototype._shift=function(e,t,r){jy.ok(e!==void 0),jy.ok(t!==void 0),jy.ok(r),this._buf.copy(this._buf,e+r,e,e+t),this._offset+=r};wc.prototype._ensure=function(e){if(jy.ok(e),this._size-this._offset{var vke=hJ(),Ske=pJ(),VFn=IJt(),jFn=CJt();EJ.exports={Reader:VFn,Writer:jFn};for(_J in Ske)Ske.hasOwnProperty(_J)&&(EJ.exports[_J]=Ske[_J]);var _J;for(AJ in vke)vke.hasOwnProperty(AJ)&&(EJ.exports[AJ]=vke[AJ]);var AJ});var yJ=S((Iks,wJt)=>{var Tke=xJt();wJt.exports={Ber:Tke,BerReader:Tke.Reader,BerWriter:Tke.Writer}});var MJt=S((Rks,TJ)=>{var vJ=yJ().Ber,NJt=hu()._,SJ=hu(),OJt="-----BEGIN RSA PRIVATE KEY-----",DJt="-----END RSA PRIVATE KEY-----",PJt="-----BEGIN RSA PUBLIC KEY-----",LJt="-----END RSA PUBLIC KEY-----";TJ.exports={privateExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=e.d.toBuffer(),s=e.p.toBuffer(),i=e.q.toBuffer(),a=e.dmp1.toBuffer(),o=e.dmq1.toBuffer(),c=e.coeff.toBuffer(),u=r.length+n.length+s.length+i.length+a.length+o.length+c.length+512,l=new vJ.Writer({size:u});return l.startSequence(),l.writeInt(0),l.writeBuffer(r,2),l.writeInt(e.e),l.writeBuffer(n,2),l.writeBuffer(s,2),l.writeBuffer(i,2),l.writeBuffer(a,2),l.writeBuffer(o,2),l.writeBuffer(c,2),l.endSequence(),t.type==="der"?l.buffer:OJt+` +`+SJ.linebrk(l.buffer.toString("base64"),64)+` +`+DJt},privateImport:function(e,t,r){r=r||{};var n;if(r.type!=="der")if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),NJt.isString(t)){var s=SJ.trimSurroundingText(t,OJt,DJt).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}else throw Error("Unsupported key format");else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new vJ.Reader(n);i.readSequence(),i.readString(2,!0),e.setPrivate(i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0),i.readString(2,!0))},publicExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=r.length+512,s=new vJ.Writer({size:n});return s.startSequence(),s.writeBuffer(r,2),s.writeInt(e.e),s.endSequence(),t.type==="der"?s.buffer:PJt+` +`+SJ.linebrk(s.buffer.toString("base64"),64)+` +`+LJt},publicImport:function(e,t,r){r=r||{};var n;if(r.type!=="der"){if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),NJt.isString(t)){var s=SJ.trimSurroundingText(t,PJt,LJt).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}}else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new vJ.Reader(n);i.readSequence(),e.setPublic(i.readString(2,!0),i.readString(2,!0))},autoImport:function(e,t){return/^[\S\s]*-----BEGIN RSA PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PRIVATE KEY-----[\S\s]*$/g.test(t)?(TJ.exports.privateImport(e,t),!0):/^[\S\s]*-----BEGIN RSA PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END RSA PUBLIC KEY-----[\S\s]*$/g.test(t)?(TJ.exports.publicImport(e,t),!0):!1}}});var qJt=S((Cks,RJ)=>{var qp=yJ().Ber,kJt=hu()._,bJ="1.2.840.113549.1.1.1",IJ=hu(),BJt="-----BEGIN PRIVATE KEY-----",UJt="-----END PRIVATE KEY-----",FJt="-----BEGIN PUBLIC KEY-----",$Jt="-----END PUBLIC KEY-----";RJ.exports={privateExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=e.d.toBuffer(),s=e.p.toBuffer(),i=e.q.toBuffer(),a=e.dmp1.toBuffer(),o=e.dmq1.toBuffer(),c=e.coeff.toBuffer(),u=r.length+n.length+s.length+i.length+a.length+o.length+c.length+512,l=new qp.Writer({size:u});l.startSequence(),l.writeInt(0),l.writeBuffer(r,2),l.writeInt(e.e),l.writeBuffer(n,2),l.writeBuffer(s,2),l.writeBuffer(i,2),l.writeBuffer(a,2),l.writeBuffer(o,2),l.writeBuffer(c,2),l.endSequence();var d=new qp.Writer({size:u});return d.startSequence(),d.writeInt(0),d.startSequence(),d.writeOID(bJ),d.writeNull(),d.endSequence(),d.writeBuffer(l.buffer,4),d.endSequence(),t.type==="der"?d.buffer:BJt+` +`+IJ.linebrk(d.buffer.toString("base64"),64)+` +`+UJt},privateImport:function(e,t,r){r=r||{};var n;if(r.type!=="der")if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),kJt.isString(t)){var s=IJ.trimSurroundingText(t,BJt,UJt).replace("-----END PRIVATE KEY-----","").replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}else throw Error("Unsupported key format");else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new qp.Reader(n);i.readSequence(),i.readInt(0);var a=new qp.Reader(i.readString(48,!0));if(a.readOID(6,!0)!==bJ)throw Error("Invalid Public key format");var o=new qp.Reader(i.readString(4,!0));o.readSequence(),o.readString(2,!0),e.setPrivate(o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0),o.readString(2,!0))},publicExport:function(e,t){t=t||{};var r=e.n.toBuffer(),n=r.length+512,s=new qp.Writer({size:n});s.writeByte(0),s.startSequence(),s.writeBuffer(r,2),s.writeInt(e.e),s.endSequence();var i=new qp.Writer({size:n});return i.startSequence(),i.startSequence(),i.writeOID(bJ),i.writeNull(),i.endSequence(),i.writeBuffer(s.buffer,3),i.endSequence(),t.type==="der"?i.buffer:FJt+` +`+IJ.linebrk(i.buffer.toString("base64"),64)+` +`+$Jt},publicImport:function(e,t,r){r=r||{};var n;if(r.type!=="der"){if(Buffer.isBuffer(t)&&(t=t.toString("utf8")),kJt.isString(t)){var s=IJ.trimSurroundingText(t,FJt,$Jt).replace(/\s+|\n\r|\n|\r$/gm,"");n=Buffer.from(s,"base64")}}else if(Buffer.isBuffer(t))n=t;else throw Error("Unsupported key format");var i=new qp.Reader(n);i.readSequence();var a=new qp.Reader(i.readString(48,!0));if(a.readOID(6,!0)!==bJ)throw Error("Invalid Public key format");var o=new qp.Reader(i.readString(3,!0));o.readByte(),o.readSequence(),e.setPublic(o.readString(2,!0),o.readString(2,!0))},autoImport:function(e,t){return/^[\S\s]*-----BEGIN PRIVATE KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PRIVATE KEY-----[\S\s]*$/g.test(t)?(RJ.exports.privateImport(e,t),!0):/^[\S\s]*-----BEGIN PUBLIC KEY-----\s*(?=(([A-Za-z0-9+/=]+\s*)+))\1-----END PUBLIC KEY-----[\S\s]*$/g.test(t)?(RJ.exports.publicImport(e,t),!0):!1}}});var HJt=S((Nks,CJ)=>{var xks=hu()._,wks=hu();CJ.exports={privateExport:function(e,t){return{n:e.n.toBuffer(),e:e.e,d:e.d.toBuffer(),p:e.p.toBuffer(),q:e.q.toBuffer(),dmp1:e.dmp1.toBuffer(),dmq1:e.dmq1.toBuffer(),coeff:e.coeff.toBuffer()}},privateImport:function(e,t,r){if(t.n&&t.e&&t.d&&t.p&&t.q&&t.dmp1&&t.dmq1&&t.coeff)e.setPrivate(t.n,t.e,t.d,t.p,t.q,t.dmp1,t.dmq1,t.coeff);else throw Error("Invalid key data")},publicExport:function(e,t){return{n:e.n.toBuffer(),e:e.e}},publicImport:function(e,t,r){if(t.n&&t.e)e.setPublic(t.n,t.e);else throw Error("Invalid key data")},autoImport:function(e,t){return t.n&&t.e?t.d&&t.p&&t.q&&t.dmp1&&t.dmq1&&t.coeff?(CJ.exports.privateImport(e,t),!0):(CJ.exports.publicImport(e,t),!0):!1}}});var zJt=S((Oks,xJ)=>{var VJt=hu()._,jJt=hu(),SU=Xb(),KJt="-----BEGIN OPENSSH PRIVATE KEY-----",GJt="-----END OPENSSH PRIVATE KEY-----";xJ.exports={privateExport:function(e,t){let r=e.n.toBuffer(),n=Buffer.alloc(4);for(n.writeUInt32BE(e.e,0);n[0]===0;)n=n.slice(1);let s=e.d.toBuffer(),i=e.coeff.toBuffer(),a=e.p.toBuffer(),o=e.q.toBuffer(),c;typeof e.sshcomment<"u"?c=Buffer.from(e.sshcomment):c=Buffer.from([]);let u=15+n.byteLength+4+r.byteLength,l=23+r.byteLength+4+n.byteLength+4+s.byteLength+4+i.byteLength+4+a.byteLength+4+o.byteLength+4+c.byteLength,d=43+u+4+l,f=Math.ceil(l/8)*8-l;d+=f;let h=Buffer.alloc(d),p={buf:h,off:0};h.write("openssh-key-v1","utf8"),h.writeUInt8(0,14),p.off+=15,Po(p,Buffer.from("none")),Po(p,Buffer.from("none")),Po(p,Buffer.from("")),p.off=p.buf.writeUInt32BE(1,p.off),p.off=p.buf.writeUInt32BE(u,p.off),Po(p,Buffer.from("ssh-rsa")),Po(p,n),Po(p,r),p.off=p.buf.writeUInt32BE(d-47-u,p.off),p.off+=8,Po(p,Buffer.from("ssh-rsa")),Po(p,r),Po(p,n),Po(p,s),Po(p,i),Po(p,a),Po(p,o),Po(p,c);let m=1;for(;p.off{var Dks=hu()._;function YJt(e){e=e.split("-");for(var t="private",r={type:"default"},n=1;n{var WJt=require("constants"),KFn=yJt(),Lks=require("crypto"),Mks=yJ().Ber,id=hu()._,GFn=hu(),XJt=Jb(),JJt=QJt();typeof WJt.RSA_NO_PADDING>"u"&&(WJt.RSA_NO_PADDING=3);ZJt.exports=function(){var e={node10:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],node:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],iojs:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],browser:["md5","ripemd160","sha1","sha256","sha512"]},t="pkcs1_oaep",r="pkcs1",n="private",s={private:"pkcs1-private-pem","private-der":"pkcs1-private-der",public:"pkcs8-public-pem","public-der":"pkcs8-public-der"};function i(a,o,c){if(!(this instanceof i))return new i(a,o,c);id.isObject(o)&&(c=o,o=void 0),this.$options={signingScheme:r,signingSchemeOptions:{hash:"sha256",saltLength:null},encryptionScheme:t,encryptionSchemeOptions:{hash:"sha1",label:null},environment:GFn.detectEnvironment(),rsaUtils:this},this.keyPair=new KFn.Key,this.$cache={},Buffer.isBuffer(a)||id.isString(a)?this.importKey(a,o):id.isObject(a)&&this.generateKeyPair(a.b,a.e),this.setOptions(c)}return i.prototype.setOptions=function(a){if(a=a||{},a.environment&&(this.$options.environment=a.environment),a.signingScheme){if(id.isString(a.signingScheme)){var o=a.signingScheme.toLowerCase().split("-");o.length==1?e.node.indexOf(o[0])>-1?(this.$options.signingSchemeOptions={hash:o[0]},this.$options.signingScheme=r):(this.$options.signingScheme=o[0],this.$options.signingSchemeOptions={hash:null}):(this.$options.signingSchemeOptions={hash:o[1]},this.$options.signingScheme=o[0])}else id.isObject(a.signingScheme)&&(this.$options.signingScheme=a.signingScheme.scheme||r,this.$options.signingSchemeOptions=id.omit(a.signingScheme,"scheme"));if(!XJt.isSignature(this.$options.signingScheme))throw Error("Unsupported signing scheme");if(this.$options.signingSchemeOptions.hash&&e[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash)===-1)throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}if(a.encryptionScheme){if(id.isString(a.encryptionScheme)?(this.$options.encryptionScheme=a.encryptionScheme.toLowerCase(),this.$options.encryptionSchemeOptions={}):id.isObject(a.encryptionScheme)&&(this.$options.encryptionScheme=a.encryptionScheme.scheme||t,this.$options.encryptionSchemeOptions=id.omit(a.encryptionScheme,"scheme")),!XJt.isEncryption(this.$options.encryptionScheme))throw Error("Unsupported encryption scheme");if(this.$options.encryptionSchemeOptions.hash&&e[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash)===-1)throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}this.keyPair.setOptions(this.$options)},i.prototype.generateKeyPair=function(a,o){if(a=a||2048,o=o||65537,a%8!==0)throw Error("Key size must be a multiple of 8.");return this.keyPair.generate(a,o.toString(16)),this.$cache={},this},i.prototype.importKey=function(a,o){if(!a)throw Error("Empty key given");if(o&&(o=s[o]||o),!JJt.detectAndImport(this.keyPair,a,o)&&o===void 0)throw Error("Key format must be specified");return this.$cache={},this},i.prototype.exportKey=function(a){return a=a||n,a=s[a]||a,this.$cache[a]||(this.$cache[a]=JJt.detectAndExport(this.keyPair,a)),this.$cache[a]},i.prototype.isPrivate=function(){return this.keyPair.isPrivate()},i.prototype.isPublic=function(a){return this.keyPair.isPublic(a)},i.prototype.isEmpty=function(a){return!(this.keyPair.n||this.keyPair.e||this.keyPair.d)},i.prototype.encrypt=function(a,o,c){return this.$$encryptKey(!1,a,o,c)},i.prototype.decrypt=function(a,o){return this.$$decryptKey(!1,a,o)},i.prototype.encryptPrivate=function(a,o,c){return this.$$encryptKey(!0,a,o,c)},i.prototype.decryptPublic=function(a,o){return this.$$decryptKey(!0,a,o)},i.prototype.$$encryptKey=function(a,o,c,u){try{var l=this.keyPair.encrypt(this.$getDataForEncrypt(o,u),a);return c=="buffer"||!c?l:l.toString(c)}catch(d){throw Error("Error during encryption. Original error: "+d)}},i.prototype.$$decryptKey=function(a,o,c){try{o=id.isString(o)?Buffer.from(o,"base64"):o;var u=this.keyPair.decrypt(o,a);if(u===null)throw Error("Key decrypt method returns null.");return this.$getDecryptedData(u,c)}catch(l){throw Error("Error during decryption (probably incorrect key). Original error: "+l)}},i.prototype.sign=function(a,o,c){if(!this.isPrivate())throw Error("This is not private key");var u=this.keyPair.sign(this.$getDataForEncrypt(a,c));return o&&o!="buffer"&&(u=u.toString(o)),u},i.prototype.verify=function(a,o,c,u){if(!this.isPublic())throw Error("This is not public key");return u=!u||u=="buffer"?null:u,this.keyPair.verify(this.$getDataForEncrypt(a,c),o,u)},i.prototype.getKeySize=function(){return this.keyPair.keySize},i.prototype.getMaxMessageSize=function(){return this.keyPair.maxMessageLength},i.prototype.$getDataForEncrypt=function(a,o){if(id.isString(a)||id.isNumber(a))return Buffer.from(""+a,o||"utf8");if(Buffer.isBuffer(a))return a;if(id.isObject(a))return Buffer.from(JSON.stringify(a));throw Error("Unexpected data type")},i.prototype.$getDecryptedData=function(a,o){return o=o||"buffer",o=="buffer"?a:o=="json"?JSON.parse(a.toString()):a.toString(o)},i}()});var iZt={};kt(iZt,{default:()=>o6n});function nZt(e){let t=String(e||"").trim();if(!t)return!1;try{let r=new URL(t);return/^app\.wanglaoshi\.(?:xn--fiqs8s|中国)$/i.test(r.hostname)&&/\/hls\/index\.m3u8$/i.test(r.pathname)}catch{return!1}}function sZt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function zFn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function WFn(e,t){if(!t||typeof t!="object"||Array.isArray(t))return`${e}:${JSON.stringify(t)}`;let r=Object.entries(t).sort(([n],[s])=>n.localeCompare(s));return`${e}:${JSON.stringify(Object.fromEntries(r))}`}function XFn(e){if(!e||typeof e!="object")return[];let t=[];for(let[r,n]of Object.entries(e))n?.param&&t.push({resolution:r,param:n.param,priority:Ike(r)});return t.sort((r,n)=>n.priority-r.priority),t}function Ike(e){if(!e)return 0;let t=e.toLowerCase().replace(/p$/i,"");if(Object.prototype.hasOwnProperty.call(tZt,t))return tZt[t];let r=parseInt(t,10);return isNaN(r)?1:r>=4320?100:r>=2160?90:r>=1440?85:r>=1080?80:r>=720?70:r>=480?50:r>=360?40:30}async function JFn(e){let t=e.server.config?.guazi;return t&&(t.url&&(Q0.url=t.url),t.token&&(Q0.token=t.token)),{}}async function ZFn(){let e=Qr("guazi",arguments[0]||{}),t=Wr(e);if(t)return t;let r={class:YFn,filters:QFn};return hn(e,r,bt.static),r}function e6n(e){let t=e?.body||{},r=t.filters||t.extend||t.ext||t.filter||{};return r&&typeof r=="object"&&!Array.isArray(r)?r:{}}async function t6n(e){let t=e?.body||{},r=String(t.id||"").trim(),n=Math.max(1,parseInt(t.page,10)||1),s=e6n(e),i=30,a=await IU.request({area:s.area||"0",year:s.year||"0",pageSize:i.toString(),sort:s.sort||"d_id",page:n.toString(),tid:r},bU.INDEX_LIST,"category"),o=(a?.list||[]).map(f=>({vod_id:sZt(f.vod_id,{vod_pic:f.vod_pic||"",vod_remarks:(f.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${f.vod_continu}\u96C6`}),vod_name:f.vod_name||"",vod_pic:f.vod_pic||"",vod_remarks:(f.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${f.vod_continu}\u96C6`})),c=Number(a?.total),u=Number(a?.pageSize)||i,l=Number.isFinite(c)&&c>=0?c:o.length,d=l>0?Math.ceil(l/u):0;return{list:o,page:n,pagecount:d,limit:u,total:l}}async function r6n(e){let r=(Array.isArray(e.body.id)?e.body.id:[e.body.id]).map(async s=>{if(!s)return null;let i=zFn(s),a=String(i.id||"").trim();if(!a)return null;try{let[o,c]=await Promise.all([IU.request({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),token:Q0.token},bU.PLAY_INFO,"detail"),IU.request({vurl_cloud_id:"2",vod_d_id:a},bU.VURL_SHOW,"detail")]);if(!o?.vodInfo)return null;let u=o.vodInfo,l={vod_id:a,vod_name:u.vod_name||"",vod_pic:i.meta?.vod_pic||u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_remarks:i.meta?.vod_remarks||(u.vod_continu?`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`:""),vod_content:(u.vod_use_content||"").trim(),vod_play_from:"\u55F7\u545C\u8981\u5403\u74DC"},d=[];return c?.list&&c.list.forEach((f,h)=>{let p=XFn(f?.play);if(p.length===0)return;let m=c.list.length===1?u.vod_name||"":(h+1).toString(),g=p[0].param,_=p.map(A=>A.resolution),y=`${g}||${_.join("@")}`;d.push(`${m}$${y}`)}),l.vod_play_url=d.join("#"),l}catch{return null}});return{list:(await Promise.all(r)).filter(s=>s!==null)}}async function n6n(e){let{id:t}=e.body;try{if(!t)return TU;let r=String(t).split("||");if(r.length<2)return TU;let n=r[0],s=r[1].split("@").filter(Boolean),i=Object.fromEntries(new URLSearchParams(n));if(Object.keys(i).length===0)return TU;s.length>0&&(s.sort((o,c)=>Ike(c)-Ike(o)),i.resolution=s[0]);let a=await IU.request(i,bU.VURL_DETAIL,"play");return a?.url?nZt(a.url)?{parse:0,url:"",message:"\u74DC\u5B50\u64AD\u653E\u51ED\u8BC1\u5DF2\u5931\u6548\uFF0C\u63A5\u53E3\u8FD4\u56DE\u56FA\u5B9A\u5E7F\u544A\u89C6\u9891"}:{parse:0,url:a.url,header:{"User-Agent":"Lavf/57.83.100"}}:TU}catch{return TU}}async function s6n(e){let{wd:t,page:r=1}=e.body,n=String(t||"").trim();if(!n)return{list:[],page:1,pagecount:0,total:0};let s=await IU.request({keywords:n,order_val:"1",page:r.toString()},bU.FIND_MORE,"search",0),i=s?.list||[];if(i.length>0){let o=n.toLowerCase();i=i.filter(c=>c.vod_name&&c.vod_name.toLowerCase().includes(o))}return{list:i.map(o=>({vod_id:sZt(o.vod_id||"",{vod_pic:o.vod_pic||"",vod_remarks:(o.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${o.vod_continu}\u96C6`}),vod_name:o.vod_name||"",vod_pic:o.vod_pic||"",vod_remarks:(o.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${o.vod_continu}\u96C6`})),page:parseInt(r,10),pagecount:s?.totalPage||9999,limit:30,total:s?.total||999999}}async function i6n(){return wJ.clear(),{success:!0,message:"\u7F13\u5B58\u5DF2\u6E05\u7A7A"}}async function a6n(){let e=wJ.getStats();return{success:!0,stats:e,message:`\u7F13\u5B58\u7EDF\u8BA1\uFF1A\u603B\u8BA1${e.total}\u6761`}}var gu,rZt,Q0,bU,TU,YFn,QFn,bke,wJ,tZt,Rke,kN,Cke,IU,o6n,aZt=ie(()=>{Cr();Cr();Dn();gu=Ne(Yi(),1),rZt=Ne(eZt(),1);fa();Ds();Q0={url:"https://api.rmedphk.com",token:"93dc9bc11f4e25a06f7fecaec15d7586.765e4db48746f95c53cdcee355e4b03ef1526588638bfda463933d481caa7cc37753686b682fdc50f1208ff6109743378bdf8d83ecd5aed38bf4552dc9c2e39dc6ee39838fab59abdea120dfa95d8d87edf68817d0a18a2beff894840d2dbb0c326a8a3222e1319bfa4104813375de8198a1d7ef85c1be518b5b1f026d02e6567ea64cc63c5177576dab66e2375416db.75c122b780e31ab0bfd365fed7c6af34b90ed74553d3c3a32b2e60492c6d249e",privateKey:`-----BEGIN PRIVATE KEY----- +MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1 +ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU +1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK +ZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7 +HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcW +V9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdI +DblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34 +saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVM +iMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUM +WBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8 +jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ +K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b +L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa +t5lYKfpe8k83ZA== +-----END PRIVATE KEY-----`},bU={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},TU={parse:0,url:""};YFn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"},{type_id:"74",type_name:"AI\u6F2B\u5267"},{type_id:"39",type_name:"\u77ED\u5267\u89E3\u8BF4"},{type_id:"73",type_name:"\u7535\u5F71\u89E3\u8BF4"},{type_id:"70",type_name:"\u7535\u7ADE\u89E3\u8BF4"},{type_id:"71",type_name:"\u4F53\u80B2\u89E3\u8BF4"},{type_id:"72",type_name:"\u97F3\u4E50"}],QFn={1:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u9A6C\u6765\u897F\u4E9A",v:"\u9A6C\u6765\u897F\u4E9A"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],74:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],39:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],73:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],70:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],71:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],72:[{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},bke=class{constructor(){this.cache=new Map,this.ttlConfig={category:3e5,detail:6e5,play:3e5,search:6e4},this.maxSize=200}get(t){let r=this.cache.get(t);if(!r)return null;let n=this.ttlConfig[r.type]||3e5;return Date.now()-r.timestamp>n?(this.cache.delete(t),null):r.data}set(t,r,n="category"){this.cache.size>=this.maxSize&&this.clearOldest(50),this.cache.set(t,{data:r,timestamp:Date.now(),type:n})}clear(){this.cache.clear()}clearOldest(t=20){let r=Math.min(t,this.cache.size),n=0;for(let s of this.cache.keys())if(this.cache.delete(s),n++,n>=r)break}getStats(){let t={total:this.cache.size,byType:{}};for(let r of this.cache.values())t.byType[r.type]=(t.byType[r.type]||0)+1;return t}},wJ=new bke,tZt={"8k":100,"4k":95,2160:90,1440:85,1080:80,720:70,\u8D85\u6E05:75,\u9AD8\u6E05:65,\u6807\u6E05:55,480:50,360:40,\u6D41\u7545:30,240:20,144:10};Rke=class{constructor(){this.aesKey=gu.default.enc.Utf8.parse("mvXBSW7ekreItNsT"),this.aesIv=gu.default.enc.Utf8.parse("2U3IrJL8szAKp0Fj"),this.staticKeys="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",this.rsa=new rZt.default(Q0.privateKey),this.rsa.setOptions({encryptionScheme:"pkcs1"})}md5(t){return gu.default.MD5(t).toString()}aesEncrypt(t){try{return gu.default.AES.encrypt(t,this.aesKey,{iv:this.aesIv,mode:gu.default.mode.CBC,padding:gu.default.pad.Pkcs7}).ciphertext.toString(gu.default.enc.Hex).toUpperCase()}catch{return""}}aesDecrypt(t,r,n){try{let s=gu.default.enc.Utf8.parse(r),i=gu.default.enc.Utf8.parse(n),a=gu.default.enc.Hex.parse(t);return gu.default.AES.decrypt({ciphertext:a},s,{iv:i,mode:gu.default.mode.CBC,padding:gu.default.pad.Pkcs7}).toString(gu.default.enc.Utf8)}catch{return""}}rsaDecrypt(t){try{return this.rsa.decrypt(Buffer.from(t,"base64"),"utf8")}catch{return""}}generateSignature(t,r){let n=`token_id=,token=${Q0.token},phone_type=1,request_key=${t},app_id=1,time=${r},keys=${this.staticKeys}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return this.md5(n)}},kN=new Rke,Cke=class{constructor(){let{httpsAgent:t}=fn({insecure:!0});this.axiosConfig={httpsAgent:t,timeout:1e4,headers:{"Cache-Control":"no-cache",Version:"2605015",PackageName:"com.t8d8f221c5.w83fd19f8e.jab3d285b920260604",Ver:"3.0.4.8","Api-Ver":"3.0.4.8",Code:"GZ0313",Referer:Q0.url,"Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},this.retryConfig={maxRetries:2,retryDelay:1e3}}async request(t,r,n="category",s=this.retryConfig.maxRetries){let a=`${kN.md5(`${Q0.url}|${Q0.token}`).slice(0,16)}:${WFn(r,t)}`;if(n!=="none"){let c=wJ.get(a);if(c)return c}let o=`${n}:${a}`;return $n("guazi",n,o,async()=>{let c=null;for(let u=0;u<=s;u++)try{let l=kN.aesEncrypt(JSON.stringify(t));if(!l)throw new Error("AES\u52A0\u5BC6\u5931\u8D25");let d=Math.floor(Date.now()/1e3).toString(),f=kN.generateSignature(l,d),h=new URLSearchParams({token:Q0.token,token_id:"",phone_type:"1",time:d,phone_model:"samsung-sm-n9860",keys:kN.staticKeys,request_key:l,signature:f,app_id:"1",ad_version:"1"}).toString(),p=await Xe.post(`${Q0.url}${r}`,h,{...this.axiosConfig,headers:{...this.axiosConfig.headers,Referer:Q0.url},timeout:8e3+u*2e3});if(p.status!==200||!p.data?.data)throw new Error(`API\u54CD\u5E94\u5F02\u5E38: ${p.status}`);let m=kN.rsaDecrypt(p.data.data.keys);if(!m)throw new Error("RSA\u89E3\u5BC6\u5931\u8D25");let g=JSON.parse(m),_=kN.aesDecrypt(p.data.data.response_key,g.key,g.iv);if(!_)throw new Error("AES\u89E3\u5BC6\u5931\u8D25");let y=JSON.parse(_);return n!=="none"&&y&&!(n==="play"&&nZt(y.url))&&wJ.set(a,y,n),y}catch(l){c=l,u{e.post("/init",JFn),e.post("/home",ZFn),e.post("/category",t6n),e.post("/detail",r6n),e.post("/play",n6n),e.post("/search",s6n),e.get("/clear-cache",i6n),e.get("/cache-stats",a6n)}}});var xZt={};kt(xZt,{buildPowMessage:()=>Pke,buildVerifyReadyPayload:()=>CZt,createWGenerator:()=>Mke,detectGapByTemplate:()=>IZt,detectGapX:()=>bZt,fetchGeetestLoad:()=>TZt,fetchVerifyConfig:()=>SZt,initSiteAuth:()=>Lke,prepareChallenge:()=>Uke,solveGeetestChallenge:()=>kke,solveVerifyToken:()=>N6n,submitAuthVerify:()=>Bke,verifyGeetest:()=>RZt});function A6n(e){return new Promise(t=>setTimeout(t,e))}function E6n(e){let t=String(e?.code||"");return t==="ECONNABORTED"||t==="ETIMEDOUT"||t==="ECONNRESET"||t==="EAI_AGAIN"||t==="ENOTFOUND"}async function PJ(e,t={}){let r=Math.max(0,Number(t.retries??g6n)),n=Math.max(0,Number(t.delayMs??_6n)),s=null;for(let i=0;i<=r;i+=1)try{return await e(i)}catch(a){if(s=a,i>=r||!E6n(a))throw a;await A6n(n*(i+1))}throw s||new Error("request failed")}function Nke(e){let t=String(e||""),r="0x1A2B3C4D5E6F7A8B9C",n="";for(let s=0;si[o]||"").join("");return a=a.replace(/1/g,"i").replace(/0/g,"o").replace(/5/g,"s"),Hp.default.createHmac("sha256",String(r||"")).update(a).digest("hex")}function y6n(e){return Hp.default.createHash("md5").update(String(e||"")).digest("hex")}function Oke(e=16){return Hp.default.randomBytes(e).toString("hex")}function Dke(e){return Buffer.from(e).toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function v6n(e){return Dke(Buffer.from(String(e||""),"utf8"))}function oZt(){return Hp.default.randomBytes(8).toString("hex")}function S6n(){let e=c6n.replace(/^00/,""),t=xke.length%2===0?xke:`0${xke}`;return Hp.default.createPublicKey({key:{kty:"RSA",n:Dke(Buffer.from(e,"hex")),e:Dke(Buffer.from(t,"hex"))},format:"jwk"})}function cZt(e,t){return Hp.default.publicEncrypt({key:e,padding:Hp.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t||""),"utf8")).toString("hex")}function T6n(e,t){let r=Hp.default.createCipheriv("aes-128-cbc",Buffer.from(String(t||""),"utf8"),Buffer.from(u6n,"utf8"));return Buffer.concat([r.update(String(e||""),"utf8"),r.final()]).toString("hex")}function b6n(e){let t=String(e||"");return t.length<30?{}:{[t.slice(24,28)]:{[t[29]+t[27]+t[15]+t[9]]:t.slice(1,9)}}}function gZt(e){let t=Number(e);return!Number.isFinite(t)||t<0?0:Math.max(0,Math.round(t))}function I6n(e){return e/l6n+2}function Pke(e,t,r){return[String(e?.version||1),String(e?.bits||0),String(e?.hashfunc||"md5"),String(e?.datetime||""),String(t||""),String(r||""),"",Oke(8)].join("|")}function _Zt(){return wke=(wke+1)%1e3,`geetest_${Date.now()}`}function AZt(e){let t=String(e||"").trim(),r=t.indexOf("("),n=t.lastIndexOf(")");if(r<0||n<=r)return null;try{return JSON.parse(t.slice(r+1,n))}catch{return null}}function R6n(e,t=240){let r=String(e||"");return r.length<=t*2?r:`${r.slice(0,t)} ... ${r.slice(-t)}`}async function EZt(e,t={},r={}){let{retries:n,retryDelayMs:s,...i}=r||{},a=await PJ(()=>Xe.get(e,{headers:t,timeout:i.timeout||DJ,validateStatus:()=>!0,...i}),{retries:n,delayMs:s});return{status:Number(a?.status||0),headers:a?.headers||{},text:typeof a?.data=="string"?a.data:JSON.stringify(a?.data||{})}}async function uZt(e,t={}){let r=await PJ(()=>Xe.get(e,{headers:t,timeout:DJ,responseType:"arraybuffer",validateStatus:()=>!0}));return Buffer.from(r.data||[])}async function yZt(e,t={}){return(await EZt(e,t)).text}async function vZt(e,t={}){let r=await yZt(e,t);try{return JSON.parse(r)}catch{return null}}function OJ(e){if(!e?.length)return null;try{let t=dZt.PNG.sync.read(e);return{data:t.data,width:Number(t.width||0),height:Number(t.height||0),channels:4,format:"png"}}catch{return null}}function C6n(e){let t=e.width*e.height,r=Buffer.alloc(t);for(let n=0;nXe.get(`${_u}/api/stats/track`,{headers:{...NJ,referer:`${_u}/m/index`},timeout:Math.min(DJ,15e3),validateStatus:()=>!0})),t=e.headers?.["set-cookie"]||e.headers?.["Set-Cookie"],r=Array.isArray(t)?t.map(l=>String(l).split(";")[0]).join("; "):"",n=Oke(16),s={...NJ,cookie:r,referer:`${_u}/m/index`,"x-client-id":n,"x-verify-token":"","x-timestamp":String(Date.now()),"x-report-id":Oke(32)},a=(await vZt(`${_u}/api/system/config`,s))?.data||{},o=Nke(a.session||""),c=Nke(a.traceId||""),u=Nke(a.reportId||"");return{cookie:r,clientId:n,session:o,traceId:c,reportId:u}}async function x6n(e,t,r={}){let n=`${_u}${e}`,s=r.useChecksumTs?pZt(Date.now()):String(Date.now()),i={...NJ,cookie:t.cookie,referer:r.referer||`${_u}/m/index`,"x-client-id":t.clientId,"x-verify-token":t.verifyToken||"","x-timestamp":s};return t.reportId&&t.session&&t.traceId&&(i[t.reportId]=mZt(n,s,t.session,t.traceId)),r.extraHeaders&&Object.assign(i,r.extraHeaders),vZt(n,i)}async function SZt(e){return x6n("/api/auth/verify/config",e,{referer:`${_u}/m/verify`,useChecksumTs:!0})}async function TZt({captchaId:e,challenge:t}){let r=_Zt(),n=new URLSearchParams({callback:r,captcha_id:e,challenge:t,client_type:"h5",lang:"zho"}),s=`${fZt}/load?${n.toString()}`,i=await EZt(s,{"User-Agent":RU,referer:`${_u}/`});return{callback:r,url:s,status:i.status,headers:i.headers,raw:i.text,data:AZt(i.text)}}async function lZt(e){let t=OJ(e);return t?{width:t.width,height:t.height,channels:t.channels,format:t.format}:null}async function bZt(e,t){let r=OJ(e);if(!r)return{bestX:0,bestScore:0,top:[],width:0,height:0,yStart:0,yEnd:0};let n=C6n(r),s=Math.max(0,Math.round(t+8)),i=Math.min(n.height,Math.round(t+52)),a={x:-1,score:-1/0},o=[];for(let c=0;c0?n.data[h*n.width+c-1]:m,_=c0?n.data[(h-1)*n.width+c]:m,A=ha.score&&(a={x:c,score:f})}return o.sort((c,u)=>u.score-c.score),{bestX:a.x,bestScore:a.score,top:o.slice(0,10),width:n.width,height:n.height,yStart:s,yEnd:i}}async function IZt(e,t,r){if(!e?.length||!t?.length)return{bestX:0,bestScore:0,top:[]};let n=OJ(e),s=OJ(t);if(!n||!s)return{bestX:0,bestScore:0,top:[]};let i=[];for(let c=0;c10&&i.push([u,c,l])}let a={x:0,score:-1/0},o=[];for(let c=0;c<=n.width-s.width;c+=1){let u=0;for(let[l,d,f]of i){let h=r+d;if(h<0||h>=n.height)continue;let p=(h*n.width+(c+l))*4,m=(n.data[p]+n.data[p+1]+n.data[p+2])/3;u+=(255-m)*(f/255)}o.push({x:c,score:u}),u>a.score&&(a={x:c,score:u})}return o.sort((c,u)=>u.score-c.score),{bestX:a.x,bestScore:a.score,top:o.slice(0,10)}}function w6n(e={}){let t=String(e.lotNumber||""),r=gZt(e.setLeft??e.gapX),n=Number.isFinite(Number(e.passtime))?Number(e.passtime):hZt,s=String(e.powMsg||"");return JSON.stringify({setLeft:r,passtime:n,userresponse:I6n(r),device_id:"",lot_number:t,pow_msg:s,pow_sign:y6n(s),geetest:"captcha",lang:"zh",ep:"123",biht:d6n,[f6n]:h6n,...b6n(t),em:{...p6n}})}function Mke(){let e=S6n();return{supported:!0,reason:"",generate(t={}){let r=w6n(t);if(Number(t.pt||1)!==1)return v6n(r);let s=oZt(),i=cZt(e,s);for(;!i||i.length!==256;)s=oZt(),i=cZt(e,s);return T6n(r,s)+i}}}async function RZt(e){let t=_Zt(),r=new URLSearchParams({callback:t,captcha_id:e.captchaId,client_type:e.clientType||"web_mobile",lot_number:e.lotNumber,payload:e.payload,process_token:e.processToken,payload_protocol:String(e.payloadProtocol||1),pt:String(e.pt||1),w:e.w}).toString(),n=await yZt(`${fZt}/verify?${r}`,{"User-Agent":RU,referer:`${_u}/`});return{raw:n,data:AZt(n)}}async function kke(e,t){let r=e.loadData||{},n=String(r.lot_number||""),s=r.pow_detail||{},i=String(r.payload||""),a=String(r.process_token||""),o=Number(r.payload_protocol||1),c=Number(r.pt||1),u=await IZt(e.bgBuffer,e.sliceBuffer,e.ypos),l=[];for(let d of m6n){let f=gZt(u.bestX+d),h=Pke(s,e.captchaId,n),p=t.generate({captchaId:e.captchaId,lotNumber:n,payload:i,processToken:a,payloadProtocol:o,pt:c,setLeft:f,passtime:hZt,powMsg:h}),m=await RZt({captchaId:e.captchaId,lotNumber:n,payload:i,processToken:a,payloadProtocol:o,pt:c,w:p}),g=m?.data?.data?.result||m?.data?.result||"";if(l.push({delta:d,setLeft:f,powMsg:h,result:g,verify:m.data||null}),g==="success")return{success:!0,templateGap:u,attempts:l,verify:m.data,selected:{delta:d,setLeft:f,powMsg:h}}}return{success:!1,templateGap:u,attempts:l,verify:l.at(-1)?.verify||null,selected:l.at(-1)?{delta:l.at(-1).delta,setLeft:l.at(-1).setLeft,powMsg:l.at(-1).powMsg}:null}}async function Bke(e,t,r){let n=pZt(Date.now()),s={captchaId:r,captchaOutput:t?.seccode?.captcha_output||"",genTime:Number(t?.seccode?.gen_time||0),lotNumber:t?.seccode?.lot_number||"",passToken:t?.seccode?.pass_token||""},i={...NJ,cookie:e.cookie,referer:`${_u}/m/verify`,"x-client-id":e.clientId,"x-verify-token":e.verifyToken||"","Content-Type":"application/json","x-timestamp":n};e.reportId&&e.session&&e.traceId&&(i[e.reportId]=mZt(`${_u}/api/auth/verify`,n,e.session,e.traceId));let a=await PJ(()=>Xe.post(`${_u}/api/auth/verify`,s,{headers:i,timeout:DJ,validateStatus:()=>!0}));return typeof a.data=="string"?JSON.parse(a.data):a.data}async function N6n(e={}){let t=await Lke(),r=await Uke(t,e),n=Mke(),s=await kke(r,n);if(!s.success)return{success:!1,token:"",auth:t,prepared:r,solved:s,authVerify:null};let i=await Bke(t,s.verify?.data,r.captchaId),a=String(i?.data?.token||"");return a&&(t.verifyToken=a),{success:!!(i?.data?.verified&&a),token:a,auth:t,prepared:r,solved:s,authVerify:i}}async function Uke(e,t={}){let r=await SZt(e),n=r?.data?.captchaId||"";if(!n)throw new Error("\u672A\u83B7\u53D6\u5230 captchaId");let s=t.challenge||Hp.default.randomUUID(),i=await TZt({captchaId:n,challenge:s}),a=i?.data?.data||{},o=a.bg?`https://static.geetest.com/${a.bg}`:"",c=a.slice?`https://static.geetest.com/${a.slice}`:"",u=Number(a.ypos||0),[l,d]=await Promise.all([o?uZt(o,{"User-Agent":RU,referer:`${_u}/`}):Buffer.alloc(0),c?uZt(c,{"User-Agent":RU,referer:`${_u}/`}):Buffer.alloc(0)]),[f,h]=await Promise.all([lZt(l),lZt(d)]),p=l.length?await bZt(l,u):null;return{verifyConfig:r,captchaId:n,challenge:s,load:i,loadData:a,bgUrl:o,sliceUrl:c,ypos:u,bgBuffer:l,sliceBuffer:d,bgMeta:f,sliceMeta:h,gap:p}}function CZt(e){let t=e.loadData||{},r=e.templateGap||{},n=Number.isFinite(Number(e.selectedSetLeft))?Number(e.selectedSetLeft):Number(r.bestX||e.gap?.bestX||0),s=String(e.selectedPowMsg||Pke(t.pow_detail||{},e.captchaId,t.lot_number||""));return{captchaId:e.captchaId,challenge:e.challenge,lotNumber:t.lot_number||"",payload:t.payload||"",processToken:t.process_token||"",payloadProtocol:Number(t.payload_protocol||1),pt:Number(t.pt||1),gapX:n,setLeft:n,ypos:e.ypos,powMsg:s,staticPath:t.static_path||"",gctPath:t.gct_path||""}}async function O6n(){let e=await Lke();console.log("SITE_AUTH",JSON.stringify(e,null,2));let t=await Uke(e);if(console.log("VERIFY_CONFIG",JSON.stringify(t.verifyConfig,null,2)),console.log("GEETEST_LOAD",JSON.stringify(t.load.data,null,2)),!t.load.data)throw console.log("GEETEST_LOAD_RAW",JSON.stringify({status:t.load.status,contentType:t.load.headers?.["content-type"]||"",preview:R6n(t.load.raw,360)},null,2)),new Error("GeeTest /load \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790");console.log("IMAGE_INFO",JSON.stringify({bgUrl:t.bgUrl,sliceUrl:t.sliceUrl,ypos:t.ypos,bgBytes:t.bgBuffer.length,sliceBytes:t.sliceBuffer.length,bgMeta:t.bgMeta,sliceMeta:t.sliceMeta},null,2)),console.log("GAP",JSON.stringify(t.gap,null,2));let r=Mke();console.log("W_GENERATOR",JSON.stringify({supported:r.supported,reason:r.reason||""},null,2));let n=await kke(t,r);if(t.templateGap=n.templateGap,t.selectedSetLeft=n.selected?.setLeft??null,t.selectedPowMsg=n.selected?.powMsg??"",console.log("TEMPLATE_GAP",JSON.stringify(n.templateGap,null,2)),console.log("VERIFY_ATTEMPTS",JSON.stringify(n.attempts.map(i=>({delta:i.delta,setLeft:i.setLeft,result:i.result})),null,2)),console.log("GEETEST_VERIFY",JSON.stringify(n.verify,null,2)),!n.success){console.log("VERIFY_READY_PAYLOAD",JSON.stringify({...CZt(t),note:"\u672A\u547D\u4E2D\u6210\u529F offset\uFF0C\u53EF\u6269\u5927\u626B\u63CF\u533A\u95F4\u7EE7\u7EED\u8C03\u8BD5"},null,2));return}let s=await Bke(e,n.verify?.data,t.captchaId);console.log("AUTH_VERIFY",JSON.stringify(s,null,2))}var Hp,dZt,_u,fZt,RU,NJ,c6n,xke,u6n,l6n,d6n,f6n,h6n,p6n,hZt,m6n,DJ,g6n,_6n,wke,wZt=ie(()=>{Hp=Ne(require("crypto"),1);Cr();dZt=Ne(lRe(),1),_u="https://film.symx.club",fZt="https://gcaptcha4.geevisit.com",RU="Mozilla/5.0 (Linux; Android 13; 23049RAD8C Build/TQ3A.230901.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/124.0.6367.82 Mobile Safari/537.36",NJ={"User-Agent":RU,"x-platform":"web"},c6n="00C1E3934D1614465B33053E7F48EE4EC87B14B95EF88947713D25EECBFF7E74C7977D02DC1D9451F79DD5D1C10C29ACB6A9B4D6FB7D0A0279B6719E1772565F09AF627715919221AEF91899CAE08C0D686D748B20A3603BE2318CA6BC2B59706592A9219D0BF05C9F65023A21D2330807252AE0066D59CEEFA5F2748EA80BAB81",xke="10001",u6n="0000000000000000",l6n=.8876*340/300,d6n="1426265548",f6n="9zXN",h6n="NYzS",p6n={ph:0,cp:0,ek:"11",wd:1,nt:0,si:0,sc:0},hZt=419,m6n=[-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10,11,12],DJ=Number.parseInt(process.env.MUXI_VERIFY_TIMEOUT_MS||"",10)||25e3,g6n=Math.max(0,Number.parseInt(process.env.MUXI_VERIFY_RETRIES||"",10)||1),_6n=Math.max(200,Number.parseInt(process.env.MUXI_VERIFY_RETRY_DELAY_MS||"",10)||800),wke=0;process.argv[1]&&/(^|[\/])muxi-geetest-node\.js$/.test(process.argv[1])&&O6n().catch(e=>{console.error("MUXI_GEETEST_NODE_ERROR",e?.stack||e?.message||String(e)),process.exit(1)})});var $Zt={};kt($Zt,{default:()=>_5n});async function k6n(){return Fke||(Fke=Promise.resolve().then(()=>(wZt(),xZt)).then(e=>typeof e.solveVerifyToken=="function"?e.solveVerifyToken:null).catch(e=>(console.error("[muxi] load verify solver failed:",e?.message||String(e)),null))),Fke}function Hke(e=16){return Vke.default.randomBytes(e).toString("hex")}function B6n(e,t){let r=qke.get(e);return r?Date.now()-r.ts>t?(qke.delete(e),null):r.data:null}function U6n(e,t){qke.set(e,{ts:Date.now(),data:t})}function PZt(e){return Array.isArray(e)?e.map(t=>String(t).split(";")[0]).join("; "):typeof e=="string"&&e.trim()?e.split(";")[0].trim():""}function LZt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function F6n(e){if(!e)return{};if(typeof e=="object")return e;if(typeof e!="string")return{};try{return JSON.parse(e)}catch{try{return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return{}}}}function $6n(e){return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${mr.host}${e}`:`${mr.host}/${e}`:""}function jke(e){return/\.m3u8(?:[?#].*)?$/i.test(String(e||"").trim())}function q6n(e){return Buffer.from(JSON.stringify(e||{}),"utf8").toString("base64url")}function MZt(e){try{let t=JSON.parse(Buffer.from(String(e||""),"base64url").toString("utf8"));return t&&typeof t=="object"?t:{}}catch{return{}}}function H6n(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:""}function V6n(e){return e?.server&&typeof e.server.prefix=="string"?e.server.prefix.replace(/\/+$/,""):`/spider/${mr.key}/3`}function Kke(e,t,r){let n=H6n(e);return n?`${n}${V6n(e)}${t}?u=${q6n(r)}`:""}function kZt(e){return e?Array.isArray(e)?e.reduce((t,r)=>({...t,...r&&typeof r=="object"?r:{}}),{}):typeof e=="object"?e:{}:{}}function j6n(e){let t=String(e||"").trim();return t?M6n.some(r=>r.test(t)):!1}function $ke(e){let t=String(e||""),r="0x1A2B3C4D5E6F7A8B9C",n="";for(let s=0;si[o]||"").join("");return a=a.replace(/1/g,"i").replace(/0/g,"o").replace(/5/g,"s"),Vke.default.createHmac("sha256",String(r||"")).update(a).digest("hex")}async function Gke(e,t={}){let r=String(t.method||"GET").toUpperCase(),n={headers:{...mr.headers,...t.headers||{}},timeout:t.timeout||1e4,validateStatus:()=>!0,maxRedirects:3};t.data!==void 0&&(n.data=t.data);let s=r==="POST"?await Xe.post(e,n.data,n):await Xe.get(e,n);return{data:s?.data,headers:s?.headers||{},status:Number(s?.status||0)}}async function zke(e,t={}){let r=await Gke(e,t);return typeof r.data=="string"?r.data:JSON.stringify(r.data||{})}async function CU(e,t={}){let r=await zke(e,t);try{return JSON.parse(r)}catch{return null}}async function xU(e,t,r,n){if(r>0){let s=B6n(t,r);if(s!==null)return s}return $n("muxi",e,t,async()=>{let s=await n();return r>0&&U6n(t,s),s},{timeout:3e4})}async function z6n(e=!1){if(!e&&Ht.cookies)return Ht.cookies;let t=await Gke(`${mr.host}/`,{headers:{referer:`${mr.host}/`},timeout:15e3}).catch(()=>({data:"",headers:{},status:0})),r=t.headers?.["set-cookie"]||t.headers?.["Set-Cookie"],n=PZt(r);return n&&(Ht.cookies=n),Ht.cookies}async function e1(e=!1){let t=Ht.cookies&&Ht.session&&Ht.traceId&&Ht.reportId&&Date.now()-Ht.initedAt{if(!e&&Ht.cookies&&Ht.session&&Ht.traceId&&Ht.reportId&&Date.now()-Ht.initedAt"");let r=await Gke(`${mr.host}/api/stats/track`,{headers:{...Ht.cookies?{cookie:Ht.cookies}:{},referer:`${mr.host}/m/index`}}).catch(()=>({data:"",headers:{},status:0})),n=r.headers?.["set-cookie"]||r.headers?.["Set-Cookie"],s=PZt(n);s&&(Ht.cookies=s);let a=(await CU(`${mr.host}/api/system/config`,{headers:{...Ht.cookies?{cookie:Ht.cookies}:{},referer:`${mr.host}/`}}).catch(()=>null))?.data||{};return(!Ht.clientId||e)&&(Ht.clientId=Hke(16)),Ht.reportId=$ke(a.reportId||""),Ht.session=$ke(a.session||""),Ht.traceId=$ke(a.traceId||""),(!Ht.clientId||e)&&(Ht.clientId=Hke(16)),Ht.initedAt=Date.now(),!!Ht.cookies})}function wU(e,t,r=!1){let n=r?K6n(Date.now()):String(Date.now()),s=G6n(e,n,Ht.session,Ht.traceId),i={...mr.headers,...Ht.cookies?{cookie:Ht.cookies}:{},referer:t||mr.host,"x-client-id":Ht.clientId||Hke(16),"x-verify-token":Ht.verifyToken||"","x-timestamp":n};return Ht.reportId&&s&&(i[Ht.reportId]=s),i}function Y6n(e={}){e.cookie&&(Ht.cookies=String(e.cookie)),e.clientId&&(Ht.clientId=String(e.clientId)),e.reportId&&(Ht.reportId=String(e.reportId)),e.session&&(Ht.session=String(e.session)),e.traceId&&(Ht.traceId=String(e.traceId)),e.verifyToken&&(Ht.verifyToken=String(e.verifyToken),Ht.verifiedAt=Date.now()),Ht.initedAt=Date.now()}async function BZt(e=!1){let t=Ht.verifyToken&&Date.now()-Ht.verifiedAt(console.error("[muxi] solve verify token failed:",i?.message||String(i)),null)),!(n?.success&&n?.token));s+=1)snull);return String(r?.data||"").trim()}function W6n(e){let t=Buffer.isBuffer(e)?e:Buffer.from(e||[]),r=Math.min(t.length,L6n);for(let n=0;n=t.length)break;s+=1,t[o]===71&&(i+=1)}if(s>=3&&i===s||s>=6&&i>=s-1)return n}return-1}function X6n(e,t){let r=String(e||"").trim().match(/^bytes=(\d*)-(\d*)$/i);if(!r)return null;let n=r[1]===""?NaN:Number.parseInt(r[1],10),s=r[2]===""?NaN:Number.parseInt(r[2],10);return!Number.isFinite(n)&&Number.isFinite(s)?(n=Math.max(0,t-s),s=t-1):(Number.isFinite(n)||(n=0),Number.isFinite(s)||(s=t-1)),n<0||n>=t||s{let a=UZt(i,t);if(!a)return s;let o=jke(a)?"/proxy/hls.m3u8":"/proxy/hls-seg.ts",c=Kke(r,o,{url:a,header:n,referer:t});return c?`URI="${c}"`:s})}function r5n(e,t,r,n={}){return String(e||"").split(/\r?\n/).map(s=>{let i=s.trim();if(!i)return s;if(i.startsWith("#"))return t5n(s,t,r,n);let a=UZt(i,t);if(!a)return s;let o=jke(a)?"/proxy/hls.m3u8":"/proxy/hls-seg.ts";return Kke(r,o,{url:a,header:n,referer:t})||s}).join(` +`)}async function n5n(e,t){let r=MZt(e?.query?.u),n=String(r.url||"").trim(),s=kZt(r.header),i=String(r.referer||"").trim();if(!/^https?:\/\//i.test(n))return t.code(400).send("bad playlist url");let a=await Xe.get(n,{headers:{"User-Agent":mr.headers["User-Agent"],...s,...i?{Referer:i}:{}},timeout:15e3,responseType:"text",validateStatus:()=>!0}),o=typeof a.data=="string"?a.data:String(a.data||"");if(a.status>=400||!o.includes("#EXTM3U"))return t.code(502).send(o||"playlist fetch failed");let c=r5n(o,n,e,s);return t.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8").header("Access-Control-Allow-Origin","*").header("Cache-Control","no-cache").send(c)}async function s5n(e,t){let r=MZt(e?.query?.u),n=String(r.url||"").trim(),s=kZt(r.header),i=String(r.referer||"").trim();if(!/^https?:\/\//i.test(n))return t.code(400).send("bad segment url");let a=await Xe.get(n,{headers:e5n(n,s,i),timeout:2e4,responseType:"arraybuffer",validateStatus:()=>!0});if(a.status>=400)return t.code(502).send(`segment http ${a.status}`);let o=Buffer.from(a.data||[]),c=W6n(o);if(c<0&&/^image\//i.test(String(a.headers?.["content-type"]||"")))return t.code(502).send("segment ts sync not found");let u=c>=0?o.slice(c):o,l=X6n(e?.headers?.range,u.length);if(t.header("Content-Type",J6n(n,a.headers?.["content-type"],c>=0)).header("Accept-Ranges","bytes").header("Access-Control-Allow-Origin","*").header("Cache-Control","public, max-age=3600"),e?.headers?.range){if(!l)return t.code(416).header("Content-Range",`bytes */${u.length}`).send("");let d=u.slice(l.start,l.end+1);return t.code(206).header("Content-Range",`bytes ${l.start}-${l.end}/${u.length}`).header("Content-Length",String(d.length)).send(d)}return t.header("Content-Length",String(u.length)).send(u)}async function i5n({filmId:e,lineId:t,referer:r}){let n=[`${mr.host}/api/system/config`,`${mr.host}/api/stats/track`,`${mr.host}/api/film/detail/play?filmId=${encodeURIComponent(e||"")}`,`${mr.host}/api/category/top`,`${mr.host}/api/issue/new`,`${mr.host}/api/film/search/hot`,`${mr.host}/api/line/play?lineId=${encodeURIComponent(t||"")}`];for(let s of n)await zke(s,{headers:wU(s,r,!0)}).catch(()=>"");await Yt(2800)}async function a5n({referer:e}){let t=[`${mr.host}/api/system/config`,`${mr.host}/api/stats/track`,`${mr.host}/api/auth/verify/config`,`${mr.host}/api/category/top`,`${mr.host}/api/film/search/hot`];for(let r of t)await zke(r,{headers:wU(r,e,!0)}).catch(()=>"");await Yt(1200)}function o5n(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function c5n(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function FZt(e){return(Array.isArray(e)?e:[]).map(t=>({vod_id:o5n(String(t?.id||""),{vod_pic:t?.cover||"",vod_remarks:t?.updateStatus||""}),vod_name:t?.name||"",vod_pic:t?.cover||"",vod_remarks:t?.updateStatus||"",vod_content:t?.blurb||""})).filter(t=>t.vod_id&&t.vod_name)}async function u5n(){return await e1().catch(()=>!1),{}}async function l5n(){let e=Qr("muxi",arguments[0]||{}),t=Wr(e);if(t)return t;let r={class:mr.class,filters:mr.filters};return hn(e,r,bt.static),r}async function d5n(){return{list:[]}}async function f5n(e){let t=e?.body||{},r=String(t.id||"1").trim()||"1",n=LZt(t.page),s=F6n(t.extend||t.filters||t.ext),i={...mr.filterDef[r]||mr.filterDef[1],...s},a=`category:${r}:${n}:${JSON.stringify(i)}`;return xU("category",a,Zb.category,async()=>{await e1().catch(()=>!1);let o=new URLSearchParams({categoryId:r,language:String(i.lang||""),pageNum:String(n),pageSize:"15",sort:String(i.by||"updateTime"),year:String(i.year||"")}),c=`${mr.host}/api/film/category/list?${o.toString()}`,u=`${mr.host}/m/category?categoryId=${encodeURIComponent(r)}`,l=async()=>{let f=await CU(c,{headers:{...mr.headers,...Ht.cookies?{cookie:Ht.cookies}:{},referer:u}}).catch(()=>null);return FZt(f?.data?.list||[])},d=await l();return d.length===0&&await e1(!0)&&(d=await l()),{page:n,pagecount:d.length>=10?n+1:n,limit:15,total:d.length?n*15+d.length:0,list:d}})}async function h5n(e){let t=e?.body||{},n=(Array.isArray(t.id)?t.id:[t.id]).map(i=>c5n(i)).filter(i=>i.id);if(!n.length)return{list:[]};await e1().catch(()=>!1);let s=[];for(let i of n){let a=i.id,o=`detail:${a}`,c=await xU("detail",o,Zb.detail,async()=>{let u=`${mr.host}/api/film/detail/play?filmId=${encodeURIComponent(a)}`,d=(await CU(u,{headers:wU(u,mr.host,!1)}).catch(()=>null))?.data;if(!d)return null;let f=[],h=[];for(let p of Array.isArray(d.playLineList)?d.playLineList:[]){let m=String(p?.playerName||"\u9ED8\u8BA4").trim()||"\u9ED8\u8BA4";if(j6n(m))continue;let g=(Array.isArray(p?.lines)?p.lines:[]).map(_=>{let y=String(_?.id||"").trim();return y?`${String(_?.name||"\u64AD\u653E").trim()||"\u64AD\u653E"}$${y}@${d.id}@${d.categoryId}`:""}).filter(Boolean);g.length&&(f.push(m),h.push(g.join("#")))}return{vod_id:String(d.id||a),vod_name:d.name||"",type_name:D6n[d.categoryId]||"",vod_pic:i.meta?.vod_pic||d.cover||"",vod_remarks:i.meta?.vod_remarks||d.updateStatus||"",vod_content:d.blurb||"",vod_play_from:f.join("$$$"),vod_play_url:h.join("$$$")}});c&&s.push(c)}return{list:s}}async function p5n(e){let t=String(e?.body?.id||"").trim();if(!t)return{...OZt};let r=`play:${t}`,n=await xU("play",r,Zb.play,async()=>{if(!await e1())return null;let[c,u,l]=t.split("@");if(!c)return null;let d=`${mr.host}/m/player?cid=${encodeURIComponent(l||"")}&film_id=${encodeURIComponent(u||"")}&line_id=${encodeURIComponent(c||"")}`,f=`${mr.host}/api/line/play/parse?lineId=${encodeURIComponent(c)}`,h=async(g=!1)=>await BZt(g)?(await i5n({filmId:u,lineId:c,referer:d}),Q6n(f,d)):"",p=await h(!1);if(p||await e1(!0)&&(p=await h(!0)),!p)return null;let m={"User-Agent":mr.headers["User-Agent"],Referer:d};return{playUrl:p,playHeader:m,referer:d}});if(!n?.playUrl)return{...OZt};let{playUrl:s,playHeader:i,referer:a}=n;if(jke(s)){let o=Kke(e,"/proxy/hls.m3u8",{url:s,header:i,referer:a});if(o)return{parse:0,jx:0,url:o,header:{}}}return{parse:0,jx:0,url:s,header:i}}async function m5n(e){let t=e?.body||{},r=LZt(t.page),n=String(t.wd||"").trim();if(!n)return{page:r,pagecount:r,limit:10,total:0,list:[]};let s=`search:${r}:${n}`;return xU("search",s,Zb.search,async()=>{let i=$6n(`/api/film/search?keyword=${encodeURIComponent(n)}&pageNum=${r}&pageSize=10`),a=`${mr.host}/m/search?keyword=${encodeURIComponent(n)}`,o=async(u=!1)=>{if(!await e1(u).catch(()=>!1))return[];if(!await BZt(u).catch(()=>""))return[];await a5n({referer:a}).catch(()=>{});let f=await CU(i,{headers:wU(i,a,!0)}).catch(()=>null);return FZt(f?.data?.list||[])},c=await o(!1);return c.length===0&&(c=await o(!0)),{page:r,pagecount:c.length>0?r+1:r,limit:10,total:c.length,list:c}})}async function g5n(e){e.post("/init",async()=>u5n()),e.post("/home",async()=>l5n()),e.post("/homeVod",async()=>d5n()),e.post("/category",async t=>f5n(t)),e.post("/detail",async t=>h5n(t)),e.post("/play",async t=>p5n(t)),e.post("/search",async t=>m5n(t)),e.get("/proxy/hls.m3u8",n5n),e.get("/proxy/hls-seg.ts",s5n)}var Vke,mr,D6n,Zb,NZt,P6n,L6n,qke,OZt,M6n,Ht,Fke,_5n,qZt=ie(()=>{Cr();Dn();Vke=Ne(require("crypto"),1);fa();Ds();mr={title:"\u{1F3AC} \u6728\u516E",key:"muxi",host:"https://film.symx.club",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 13; 23049RAD8C Build/TQ3A.230901.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/124.0.6367.82 Mobile Safari/537.36","x-platform":"web"},class:[{type_id:"1",type_name:"\u7535\u89C6\u5267"},{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{1:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],2:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],3:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],4:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],5:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}]},filterDef:{1:{lang:"",by:"updateTime",year:""},2:{lang:"",by:"updateTime",year:""},3:{lang:"",by:"updateTime",year:""},4:{lang:"",by:"updateTime",year:""},5:{lang:"",by:"updateTime",year:""}}},D6n={1:"\u7535\u89C6\u5267",2:"\u7535\u5F71",3:"\u7EFC\u827A",4:"\u52A8\u6F2B",5:"\u77ED\u5267"},Zb={auth:10*60*1e3,category:30*1e3,detail:2*60*1e3,search:20*1e3,play:15*1e3},NZt=Math.max(0,Number.parseInt(process.env.MUXI_VERIFY_SOLVE_RETRIES||"",10)||1),P6n=Math.max(200,Number.parseInt(process.env.MUXI_VERIFY_SOLVE_RETRY_DELAY_MS||"",10)||1e3),L6n=512*1024,qke=new Map,OZt={parse:0,jx:0,url:""},M6n=[/聚合\s*[-_]?\s*0/i],Ht={cookies:"",clientId:"",reportId:"",session:"",traceId:"",verifyToken:"",verifiedAt:0,initedAt:0},Fke=null;_5n={meta:{key:mr.key,name:mr.title,type:3,searchable:2,quickSearch:1,filterable:1},api:g5n}});function LJ(e,t){let r=e[t];if(r===void 0)throw new uo(`varint underflow at offset ${t}`);if(!(r&128))return{value:r,length:1};let n=r&127;for(let s=1;s<8;s++){if(r=e[t+s],r===void 0)throw new uo(`varint underflow at offset ${t+s}`);if(n=n*128+(r&127),!(r&128)){if(n>Number.MAX_SAFE_INTEGER)throw new uo("varint exceeds MAX_SAFE_INTEGER");return{value:n,length:s+1}}}if(r=e[t+8],r===void 0)throw new uo(`varint underflow at offset ${t+8}`);if(n=n*256+r,n>Number.MAX_SAFE_INTEGER)throw new uo("varint exceeds MAX_SAFE_INTEGER");return{value:n,length:9}}function KZt(e){if(e===0)return 0;if(e<=4)return e;if(e===5)return 6;if(e===6||e===7)return 8;if(e===8||e===9)return 0;if(e===10||e===11)throw new uo(`reserved serial type ${e}`);return e%2===0?(e-12)/2:(e-13)/2}function v5n(e){let t="",r=null,n=e.length;for(let s=0;s=u.length)continue;let d=u[l],f;if(d==='"'||d==="`"){let g=u.indexOf(d,l+1);if(g<0)continue;f=u.slice(l+1,g),l=g+1}else if(d==="["){let g=u.indexOf("]",l+1);if(g<0)continue;f=u.slice(l+1,g),l=g+1}else{let g=u.slice(l).match(/^[A-Za-z_][A-Za-z0-9_]*/);if(!g)continue;f=g[0],l+=f.length}if(y5n.has(f.toUpperCase()))continue;let h=u.slice(l).trim(),p=(h.match(/^[A-Za-z_][A-Za-z0-9_]*/)?.[0]||"").toUpperCase(),m=p==="INTEGER"&&/\bPRIMARY\s+KEY\b/i.test(h);c.push({name:f,type:p,isIntegerPrimaryKey:m})}return c}var Wke,HZt,A5n,VZt,Yke,E5n,jZt,uo,Qke,y5n,MJ,GZt=ie(()=>{Wke=Ne(require("fs"),1),HZt=100,A5n="SQLite format 3\0",VZt=2,Yke=5,E5n=10,jZt=13,uo=class extends Error{constructor(t){super(t),this.name="SqliteFormatError"}};Qke=class e{constructor(t){if(Buffer.isBuffer(t)||(t=Buffer.from(t)),t.length65536||n&n-1)throw new uo(`invalid page size ${n}`);let s=t[20],i=t.readUInt32BE(28),a=t.readUInt32BE(56);if(a<1||a>3)throw new uo(`unknown text encoding ${a}`);this.buffer=t,this.pageSize=n,this.pageCount=i,this.textEncoding=a,this.reservedPerPage=s,this.usablePageSize=n-s}static fromPath(t){return new e(Wke.default.readFileSync(t))}readPage(t){if(t<1||t>this.pageCount)throw new uo(`page ${t} out of range (1..${this.pageCount})`);let r=(t-1)*this.pageSize;return this.buffer.slice(r,r+this.pageSize)}decodeText(t,r,n){if(this.textEncoding===1)return t.slice(r,r+n).toString("utf8");if(this.textEncoding===2)return t.slice(r,r+n).toString("utf16le");let s=Buffer.allocUnsafe(n);for(let i=0;i+1BigInt(Number.MAX_SAFE_INTEGER)||s=12){let s=KZt(n);return n%2===0?t.slice(r,r+s):this.decodeText(t,r,s)}throw new uo(`unhandled serial type ${n}`)}decodeRecord(t){let r=LJ(t,0),n=[],s=r.length;for(;s0;){let o=this.readPage(s),c=o.readUInt32BE(0),u=Math.min(a,i);n.push(o.slice(4,4+u)),i-=u,s=c}if(i>0)throw new uo(`overflow chain truncated, ${i} bytes missing`);return Buffer.concat(n)}readBTreePageHeader(t,r){let n=r?HZt:0,s=t[n];if(s!==jZt&&s!==Yke&&s!==E5n&&s!==VZt)throw new uo(`unknown B-tree page type 0x${s.toString(16)} at offset ${n}`);let i=t.readUInt16BE(n+3),a=t.readUInt16BE(n+5);a===0&&(a=65536);let o=s===Yke||s===VZt,c=o?12:8,u=o?t.readUInt32BE(n+8):0;return{type:s,cellCount:i,cellContentStart:a,rightPointer:u,headerSize:c,pageHeaderOffset:n,cellPointerArrayOffset:n+c}}readTableLeafCell(t,r){let n=this.usablePageSize,s=n-35,i=Math.floor((n-12)*32/255)-23,a=LJ(t,r),o=a.value,c=LJ(t,r+a.length),u=r+a.length+c.length;if(o<=s)return{rowid:c.value,payload:t.slice(u,u+o),payloadSize:o};let l=i+(o-i)%(n-4);l>s&&(l=i);let d=t.slice(u,u+l),f=t.readUInt32BE(u+l),h=o-l,p=this.readOverflowChain(f,h);return{rowid:c.value,payload:Buffer.concat([d,p]),payloadSize:o}}walkTable(t,r,n){let s=[t],i=!1;for(;s.length&&!i;){let a=s.pop(),o=this.readPage(a),c=a===1,u=this.readBTreePageHeader(o,c);if(u.type===jZt)for(let l=0;l=0;d--)s.push(l[d])}else throw new uo(`walkTable hit non-table page type 0x${u.type.toString(16)} at page ${a}`)}}},y5n=new Set(["PRIMARY","UNIQUE","CHECK","FOREIGN","CONSTRAINT"]);MJ=class e{constructor(t){this.file=new Qke(t),this.schemaCache=null}static fromPath(t){return new e(Wke.default.readFileSync(t))}ensureSchema(){if(this.schemaCache)return this.schemaCache;let t=new Map;return this.file.walkTable(1,5,({values:r})=>{let[n,s,,i,a]=r;n==="table"&&s&&i&&t.set(String(s),{name:String(s),rootpage:Number(i),sql:String(a||""),columns:S5n(String(a||""))})}),this.schemaCache={tables:t},this.schemaCache}listTables(){return[...this.ensureSchema().tables.keys()].filter(r=>!r.startsWith("sqlite_"))}tableInfo(t){return this.ensureSchema().tables.get(String(t))||null}tableColumns(t){let r=this.tableInfo(t);return r?r.columns.map(n=>n.name):[]}iterateRows(t,r){let n=this.tableInfo(t);if(!n)throw new Error(`unknown table: ${t}`);this.file.walkTable(n.rootpage,n.columns.length,({rowid:s,values:i})=>{let a={rowid:s};for(let o=0;o{(!r||r(s))&&n++}),n}findRows(t,r,n=1/0){let s=[];return this.iterateRows(t,i=>{if(r(i)&&(s.push(i),s.length>=n))return!1}),s}findOne(t,r){return this.findRows(t,r,1)[0]||null}distinctValues(t,r){let n=new Set;return this.iterateRows(t,s=>{let i=s[r];i!=null&&n.add(String(i))}),[...n]}close(){this.file=null,this.schemaCache=null}}});function BN(){try{jp.default.mkdirSync(zy,{recursive:!0})}catch{}}function ter(){return zy}function UN(){let e=Number(process.env.DUDB_MAX_UPLOAD_MB||0);if(!Number.isFinite(e)||e<=0)return zZt;let t=Math.floor(e*1024*1024);return t<=0?zZt:Math.min(t,T5n)}function FJ(e=UN()){let t=e/1024/1024;return Number.isInteger(t)?`${t}MB`:`${t.toFixed(1)}MB`}function rer(e,t=YZt){let r=Math.max(1,Math.floor(Number(t)||YZt));if(e==null||e==="")return r;let n=Number(e);return!Number.isFinite(n)||n<=0?r:Math.max(1,Math.floor(n))}function Xke(e={},t={}){return{searchDbLimit:rer(e?.searchDbLimit,t.searchDbLimit)}}async function $J(e){let t=Xke(e?.config?.dudb||{}),r={};try{r=await e?.db?.getObjectDefault(ZZt,{})}catch{}return Xke(r&&typeof r=="object"?r:{},t)}async function ner(e,t={}){let r=Xke(t);return await e.db.push(ZZt,r),r}function qJ(e){let t=Gy.default.basename(String(e||""));return!b5n.test(t)||!t.toLowerCase().endsWith(".db")?null:t}function w5n(e){return!e||e<1024?`${e||0}B`:e<1024*1024?`${(e/1024).toFixed(0)}K`:e<1024*1024*1024?`${(e/1024/1024).toFixed(1)}M`:`${(e/1024/1024/1024).toFixed(2)}G`}function ser(e){return Buffer.from(e,"utf8").toString("base64url")}function ier(e){try{return Buffer.from(String(e),"base64url").toString("utf8")}catch{return""}}function N5n(e){return String(e||"").replace(/\.db$/i,"")}function UJ(e){let t=String(e??"").trim();return/^https?:\/\//i.test(t)?t:x5n}function aer(){BN();let e=[];try{e=jp.default.readdirSync(zy,{withFileTypes:!0})}catch{return[]}let t=[];for(let r of e){if(!r.isFile()||!r.name.toLowerCase().endsWith(".db")||r.name.split(".").length!==2)continue;let n=Gy.default.join(zy,r.name);try{let s=jp.default.statSync(n);if(s.size[a.name,a])),n=[];try{n=await e.db.getObjectDefault(BJ,[])}catch{}let s=new Set,i=[];if(Array.isArray(n))for(let a of n){let o=r.get(a);o&&!s.has(a)&&(i.push(o),s.add(a))}for(let a of t)s.has(a.name)||i.push(a);return i.map(a=>({...a,key:ser(a.name)}))}async function oer(e,t){let r=Array.isArray(t)?t.filter(n=>qJ(n)):[];await e.db.push(BJ,r)}async function cer(e,t,r={}){let n=qJ(e);if(!n)throw new Error("\u6587\u4EF6\u540D\u975E\u6CD5\u6216\u540E\u7F00\u4E0D\u662F .db");if(!t||typeof t[Symbol.asyncIterator]!="function")throw new Error("\u4E0A\u4F20\u6D41\u65E0\u6548");BN();let s=Number(r.maxBytes||UN()),i=Gy.default.join(zy,n);if(!(r.overwrite===!0||r.overwrite==="1"||r.overwrite==="true")&&jp.default.existsSync(i)){t.destroy?.();let l=new Error("\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6");throw l.code="DUDB_UPLOAD_EXISTS",l.name=n,l}let o=Gy.default.join(zy,`.upload-${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2)}.tmp`),c=0,u=new XZt.Transform({transform(l,d,f){if(c+=l.length,c>s){let h=new Error(`\u6587\u4EF6\u8D85\u8FC7 ${FJ(s)} \u4E0A\u9650`);h.code="DUDB_UPLOAD_TOO_LARGE",f(h);return}f(null,l)}});try{if(await(0,JZt.pipeline)(t,u,jp.default.createWriteStream(o,{flags:"wx"})),ci!==r))}catch{}return{name:r}}function ler(e){if(NU===e&&Vp){try{Vp.close()}catch{}Vp=null,NU=""}kJ.delete(e)}function Jke(e){let t=qJ(e);if(!t)return null;let r=Gy.default.join(zy,t);if(!jp.default.existsSync(r))return null;if(NU===t&&Vp)return Vp;if(Vp){try{Vp.close()}catch{}Vp=null,NU=""}return Vp=MJ.fromPath(r),NU=t,Vp}function O5n(e){let t=e.listTables();return t.length===0?null:R5n.find(r=>t.includes(r))||t[0]}function D5n(e,t){let r=I5n,n=[],i=String(t||"").toLowerCase(),a=Jke(e.name);if(!a)return n;let o=Zke(a,e.name);if(!o)return n;let{table:c,mapping:u}=o,l=u.vod_id,d=u.vod_name,f=u.vod_pic,h=N5n(e.name),p=0;return a.iterateRows(c,m=>{let g=String(m[d]==null?"":m[d]);if(i&&!g.toLowerCase().includes(i))return;let _=l==="rowid"?m.rowid:m[l],y=f?String(m[f]==null?"":m[f]):"";if(n.push({vod_id:`${e.key}#ID#${_}`,vod_name:g,vod_pic:UJ(y),vod_remarks:h}),p++,p>=r)return!1}),n}function Zke(e,t){if(kJ.has(t))return kJ.get(t);let r=O5n(e);if(!r)return null;let n=e.tableColumns(r),s=n.map(l=>l.toLowerCase()),i=new Set;for(let l of Object.values(QZt)){for(let d of l)n.includes(d)&&i.add(d);for(let d of n)l.some(f=>d.toLowerCase().includes(f.toLowerCase()))&&i.add(d)}let a=new Map;for(let l of i)a.set(l,[]);e.iterateRows(r,l=>{let d=!0;for(let[f,h]of a){if(h.length>=5)continue;d=!1;let p=l[f];p!=null&&p!==""&&h.push(p)}if(d)return!1});let o={};for(let[l,d]of Object.entries(QZt)){let f=d.filter(m=>n.includes(m));if(f.length===0&&(f=n.filter(m=>d.some(g=>m.toLowerCase().includes(g.toLowerCase())))),f.length===0){l==="category_field"?o[l]=null:l==="vod_id"?o[l]="rowid":o[l]=null;continue}let h=f[0],p=-1;for(let m of f){let g=a.get(m)||[],_=g.length*10;d.includes(m)&&(_+=50),l==="vod_play_url"&&g.length>0&&g.some(y=>/^(https?|rtsp|magnet|ftp):/i.test(String(y||"")))&&(_+=100),_>p&&(p=_,h=m)}o[l]=h}let c=C5n.filter(l=>s.includes(l)),u={table:r,mapping:o,picCols:c};return kJ.set(t,u),u}async function der(e){return{class:(await HJ(e)).map(n=>({type_id:n.key,type_name:`\u{1F4C1} ${n.name.replace(/\.db$/i,"")}`}))}}async function fer(e,t,r){let n=String(t||"").split("$"),s=n[0],i=n.length>1?n[1]:null,a=ier(s);if(!a)return{list:[]};let o=Jke(a);if(!o)return{list:[]};let c=Zke(o,a);if(!c)return{list:[]};let{table:u,mapping:l,picCols:d}=c,f=l.category_field;if(i==null){let b=new Map;if(f&&o.iterateRows(u,w=>{let D=String(w[f]==null?"":w[f]);if(D=D.replace(/[()()]/g,"").trim(),!D)return;let M=b.get(D);if(M||(M={cnt:0,pic:""},b.set(D,M)),M.cnt+=1,!M.pic&&d.length>0)for(let L of d){let U=String(w[L]||"").trim();if(U.startsWith("http://")||U.startsWith("https://")){M.pic=U;break}}}),b.size<=1){let w=f?[...b.values()].reduce((L,U)=>L+U.cnt,0):o.countRows(u),D=500,M=[];for(let L=0;Lw.includes(L.toLowerCase()));if(M){let L=o.tableColumns(M),U=L.map(le=>le.toLowerCase()),G=["id","category_id","type_id","cate_id","cat_id","tid"],$=["name","category_name","type_name","cate_name","cat_name","tname","title"],K=G.find(le=>U.includes(le))||"id",ee=$.find(le=>U.includes(le))||"name",z=L[U.indexOf(K)],oe=L[U.indexOf(ee)];z&&oe&&o.iterateRows(M,le=>{let te=le[z];te!=null&&T.set(String(te),le[oe]!=null?String(le[oe]):String(te))})}}let x=[...b.entries()].map(([w,D])=>{let M=`${s}$${w}`,L=T.get(w)||w;return{cnt:D.cnt,vod_id:M,type_id:M,type_name:L,vod_name:L,vod_pic:D.pic||WZt,vod_tag:"folder",vod_remarks:`\u5171${D.cnt}\u6761\u{1F3AC}`,cate:{id:M,name:L}}});return x.sort((w,D)=>D.cnt-w.cnt),{page:1,pagecount:1,limit:999,list:x.map(({cnt:w,...D})=>D)}}let h=20,p=Math.max(1,Number(r)||1),m=(p-1)*h,g=l.vod_id,_=l.vod_name,y=l.vod_pic,A=l.vod_remarks,E=[],v=0;if(i.startsWith("CHUNK_")){let I=(Number(i.replace("CHUNK_",""))||0)+m;o.iterateRows(u,T=>{if(v=h)return!1})}else o.iterateRows(u,b=>{let I=f?b[f]:"\u65E0\u5206\u7C7B";if(String(I??"")!==i)return;if(v=h)return!1});return{page:p,pagecount:p+1,limit:h,list:E}}function P5n(e){let t=String(e||"").trim();return t?(t.includes("\\/")&&(t=t.replace(/\\\//g,"/")),t.includes("$$$")&&(t=t.split("$$$").pop()),t.includes("|")&&(t=t.split("|")[0]),t=t.replace(/t26\.cdn/g,"t33.cdn").replace(/t27\.cdn/g,"t33.cdn"),t):""}async function her(e,t){let r=Array.isArray(t)?t[0]:t,n=String(r||"").indexOf("#ID#");if(n<0)return{list:[]};let s=r.slice(0,n),i=r.slice(n+4),a=ier(s);if(!a)return{list:[]};let o=Jke(a);if(!o)return{list:[]};let c=Zke(o,a);if(!c)return{list:[]};let{table:u,mapping:l}=c,d=l.vod_id||"rowid",f=null;if(o.iterateRows(u,E=>{let v=d==="rowid"?E.rowid:E[d];if(String(v??"")===i)return f=E,!1}),!f)return{list:[]};let h=E=>{let v=l[E];if(!v)return"";let b=v==="rowid"?f.rowid:f[v];return b==null?"":String(b)},p=aer().find(E=>E.name===a),m=p?p.size_str:"",g=p?p.path:"",y=[`\u3010\u539F\u59CB\u7B80\u4ECB\u3011: ${h("vod_content")||"\u6682\u65E0\u8BE6\u7EC6\u63CF\u8FF0"}`,"--------------------------",`\u{1F4CA} \u6587\u4EF6\u5927\u5C0F: ${m}`,`\u2705 \u7269\u7406\u4F4D\u7F6E: ${g}`,`\u26A1 \u7D22\u5F15\u6807\u8BC6: ID_${i}`].join(` +`),A=h("vod_play_url");return A||(A=`Play#${i}`),A=P5n(A),A&&!A.includes("$")&&(A=`\u64AD\u653E$${A}`),{list:[{vod_id:r,vod_name:h("vod_name"),vod_pic:UJ(h("vod_pic")),vod_remarks:h("vod_remarks"),vod_actor:h("vod_actor")||"\u5185\u8BE6",vod_content:y,vod_play_from:"DB\u6570\u636E\u5E93",vod_play_url:A}]}}async function per(e,t,r={}){let n=rer(r.searchDbLimit),s=(await HJ(e)).slice(0,n),i=[];for(let a of s)i.push(...D5n(a,t));return{list:i}}var jp,Gy,XZt,JZt,zy,BJ,ZZt,eer,zZt,T5n,b5n,YZt,I5n,R5n,QZt,C5n,WZt,x5n,Vp,NU,kJ,VJ=ie(()=>{jp=Ne(require("fs"),1),Gy=Ne(require("path"),1),XZt=require("stream"),JZt=require("stream/promises");GZt();zy=Gy.default.join(process.env.NODE_PATH||".","dudb"),BJ="/dudb/order",ZZt="/dudb/settings",eer=1024,zZt=512*1024*1024,T5n=1024*1024*1024,b5n=/^[\w一-龥\-. ()()\[\] ]+\.db$/i,YZt=3,I5n=50,R5n=["videos","vod_unified_data","cj","vod","mac_vod","data","video_detail","list"],QZt={vod_id:["id","vod_id","uuid","guid","vid"],vod_name:["name","vod_name","title","subject","display_name"],vod_pic:["image","vod_pic","pic","thumbnail","img","cover"],vod_play_url:["play_url","vod_play_url","url","link","m3u8_url","vod_url"],vod_remarks:["vod_remarks","remarks","content","desc","note","msg"],vod_actor:["actor","vod_actor","starring","performer"],vod_content:["content","vod_content","summary","description"],category_field:["type_name","category_id","class_name","cate_name","tag"]},C5n=["vod_pic","pic","cover","img","image","poster"],WZt="https://img.icons8.com/color/512/folder-invoices--v1.png",x5n="https://img.icons8.com/color/512/video-file.png";Vp=null,NU="",kJ=new Map});var _er={};kt(_er,{default:()=>j5n});function M5n(e){let t=String(e||"").trim();if(!t)return!1;try{let r=new URL(t);return/\.m3u8$/i.test(r.pathname||"")}catch{return/\.m3u8(\?|$)/i.test(t)&&!/\.php(?:\?|$)/i.test(t)}}function k5n(e){let t=String(e?.headers?.host||"").trim(),r=String(e?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||"http";return t?`${r}://${t}`:"http://127.0.0.1:3006"}function mer(e,t,r=""){let s=`${k5n(e)}/spider/dudb/3/m3u8-clean?url=${encodeURIComponent(t)}`;return r&&(s+=`&referer=${encodeURIComponent(r)}`),s}function ger(e){try{let t=new URL(e);return`${t.protocol}//${t.host}/`}catch{return""}}async function B5n(){return{}}async function U5n(e){let t=Qr("dudb",arguments[0]||{}),r=Wr(t);if(r)return r;let n=der(e.server);return hn(t,n,bt.static),n}async function F5n(e){let t=e.body||{};return fer(e.server,String(t.id||""),t.page)}async function $5n(e){let t=e.body||{},r=Array.isArray(t.id)?t.id:[t.id];return her(e.server,r)}async function q5n(e){let t=e.body||{},r=String(t.id||""),n=Ab(r)||r;if(!n)return{parse:0,url:"",header:{"User-Agent":e4e}};if(M5n(n)){let s=ger(n);return{parse:0,url:mer(e,n,s),header:{"User-Agent":e4e}}}return{parse:0,url:n,header:{"User-Agent":e4e}}}async function H5n(e){let t=e.body||{},r=await $J(e.server);return{...await per(e.server,String(t.wd||""),{searchDbLimit:r.searchDbLimit}),page:t.page||1}}async function V5n(e,t){let r=String(e.query?.url||"").trim(),n=String(e.query?.referer||"").trim(),s=Ab(r);if(!r)return t.code(400).send("missing url");if(!/^https?:\/\//i.test(s))return t.code(400).send("invalid url");let i={"User-Agent":L5n,Accept:"*/*"},a=n||ger(s);a&&(i.Referer=a);try{let o=await Xe.get(s,{headers:i,timeout:1e4,responseType:"text",validateStatus:u=>u>=200&&u<400}),c=Wxe(o?.data,s,u=>mer(e,u,a));return t.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8"),t.header("Access-Control-Allow-Origin","*"),t.header("Cache-Control","public, max-age=15"),t.send(c)}catch(o){return console.warn("[dudb.m3u8-clean] failed:",o?.message||"unknown"),t.redirect(s)}}var e4e,L5n,j5n,Aer=ie(()=>{Dn();VJ();Cr();Jxe();BN();e4e="Dalvik/2.1.0 (Linux; U; Android 9; MIbox PRO Build/PI)",L5n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36";j5n={meta:{key:"dudb",name:"\u{1F4C1} \u672C\u5730DB",type:3},api:async e=>{e.post("/init",B5n),e.post("/home",U5n),e.post("/category",F5n),e.post("/detail",$5n),e.post("/play",q5n),e.post("/search",H5n),e.get("/m3u8-clean",V5n)}}});var Eer={};kt(Eer,{default:()=>K5n});var K5n,yer=ie(()=>{K5n={meta:{key:"js",name:"\u{1F4E6} \u672C\u5730JS",type:3},api:async e=>{e.post("/init",async()=>({})),e.post("/home",async()=>({class:[],filters:{}})),e.post("/category",async t=>({page:t?.body?.page||1,pagecount:1,limit:0,total:0,list:[]})),e.post("/detail",async()=>({list:[]})),e.post("/play",async t=>({parse:0,url:t?.body?.id||""})),e.post("/search",async t=>({page:t?.body?.page||1,pagecount:1,limit:0,total:0,list:[]}))}}});var Ter={};kt(Ter,{default:()=>J5n});function G5n(e){return OU.default.enc.Utf8.stringify(OU.default.enc.Base64.parse(e))}function ver(e){return OU.default.enc.Base64.stringify(OU.default.enc.Utf8.parse(e))}async function z5n(e,t){return{}}async function Y5n(e,t){return{class:[{type_id:"setting",type_name:`${e.server.address().url}/website`}]}}async function Q5n(e,t){let r=e.body.id,n=[],s=e.server.address().url+e.server.prefix+"/proxy";return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:String(Math.random()),vod_name:"\u626B\u7801\u914D\u7F6E",vod_pic:s+"/"+ver(`${e.server.address().url}/website`)},{vod_id:"openInternalWebsite",vod_name:"\u70B9\u51FB\u914D\u7F6E",vod_pic:s+"/"+ver(`${e.server.address().url}/website`)}]}}async function W5n(e,t){return e.body.id==="openInternalWebsite"?(await tn.dispatch("openInternalWebview",{opt:{url:`${e.server.address().url}/website`}}),{list:[{vod_name:"",vod_content:"",vod_remarks:""}]}):{list:[{vod_name:"",vod_content:"",vod_remarks:""}]}}async function X5n(e,t){let r=e.params.img,n=G5n(r),s=await Ser.default.toBuffer(n,{width:120,height:120,margin:15});t.send(s)}var OU,Ser,J5n,ber=ie(()=>{OU=Ne(Yi(),1);Dn();Ser=Ne(jE(),1);jd();J5n={meta:{key:"baseset",name:"\u2699\uFE0F \u914D\u7F6E",type:3},api:async e=>{e.post("/init",z5n),e.post("/home",Y5n),e.post("/category",Q5n),e.post("/detail",W5n),e.get("/proxy/:img",X5n)}}});var Ier={};kt(Ier,{default:()=>i8n});function e8n(e){return{vod_id:e,vod_content:"",vod_name:e,vod_pic:Z5n,vod_remarks:""}}async function t8n(e,t){return{}}async function r8n(e,t){let r=String(e?.body?.clip||e?.body?.id||"").trim();return r&&await Ij(r)?"true":"false"}async function n8n(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await Promise.all(r.map(async s=>{let i=String(s||"").trim(),a=e8n(i);if(!i)return a;let o=_b("detail",{id:i});try{let c=await $n("push","detail",o,()=>Es(i,e),{timeout:15e3});c&&(a.vod_play_from=c.froms,a.vod_play_url=c.urls,Array.isArray(c.links)&&c.links.length>0&&(a.vod_links=c.links))}catch{}return a}))}}async function s8n(e,t){try{let r=function(o){o.statusCode&&o.statusCode==500&&console.error(o)},n=e.server.prefix,s={},i=await e.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"}),a=i.json();return s.support=a,r(a),i=await e.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),a=i.json(),s.detail=a,r(a),i=await e.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),a=i.json(),s.play=a,r(a),s}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"check debug console output"}}}var Z5n,i8n,Rer=ie(()=>{fc();PE();fa();Z5n="https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg";i8n={meta:{key:"push",name:"\u2699\uFE0F \u63A8\u9001",type:4},api:async e=>{e.post("/init",t8n),e.post("/support",r8n),e.post("/detail",n8n),e.post("/play",Ps),e.get("/test",s8n),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",ys)}}});var Zer={};kt(Zer,{runWorkerProbe:()=>e$n});function MU(e){return{name:e?.name||"Error",message:e?.message||String(e),code:e?.code,stack:String(e?.stack||"").split(` +`).slice(0,6).join(" | ")}}function Jer(e,t,r=3e4){return new Promise((n,s)=>{let i=setTimeout(()=>s(new Error(`worker timeout ${r}ms`)),r);e.once("message",a=>{clearTimeout(i),n(a)}),e.once("error",a=>{clearTimeout(i),s(a)}),e.once("exit",a=>{clearTimeout(i),s(new Error(`worker exited code=${a} before message`))}),e.postMessage(t)})}async function e$n(){let e={nodeVersion:process.version,platform:process.platform,arch:process.arch,iterations:XJ,cpus:null,parallelism:null,moduleLoad:{ok:!1,error:null,exports:[]},main:{ok:!1,ms:null,sample:null,error:null},workerSingle:{ok:!1,ms:null,workerMs:null,sample:null,error:null},workerParallel:{ok:!1,n:0,ms:null,perWorkerMs:null,error:null},speedup:null};try{let a=await import("node:os");e.cpus=a.cpus()?.length??null,e.parallelism=typeof a.availableParallelism=="function"?a.availableParallelism():null}catch(a){e.cpusError=MU(a)}let t;try{t=await import("node:worker_threads"),e.moduleLoad.ok=!0,e.moduleLoad.exports=Object.keys(t).filter(a=>!a.startsWith("_")&&a!=="default")}catch(a){return e.moduleLoad.error=MU(a),e}let{Worker:r}=t;if(typeof r!="function")return e.moduleLoad.error={message:`Worker is not a constructor (typeof=${typeof r})`},e;try{let a=await import("node:crypto"),o=Date.now(),c="";for(let u=0;unew r(Xer,{eval:!0}));let a=Date.now(),o=await Promise.all(i.map((c,u)=>Jer(c,{iterations:XJ,salt:`${v4e}:${u}`})));e.workerParallel.ms=Date.now()-a,e.workerParallel.n=s,e.workerParallel.perWorkerMs=o.map(c=>c.ms),e.workerParallel.ok=!0}catch(a){e.workerParallel.error=MU(a)}finally{await Promise.all(i.map(async a=>{try{await a.terminate()}catch{}}))}if(e.workerSingle.ok&&e.workerParallel.ok){e.speedup={singleWorkerMs:e.workerSingle.workerMs,parallelTotalMs:e.workerParallel.ms,idealSerialMs:e.workerSingle.workerMs*s,effectiveSpeedup:e.workerParallel.ms>0?Number((e.workerSingle.workerMs*s/e.workerParallel.ms).toFixed(2)):null,verdict:null};let a=e.speedup.effectiveSpeedup;a===null?e.speedup.verdict="unknown":a>=s*.7?e.speedup.verdict=`good (\u2248${a}x of ${s})`:a>=1.5?e.speedup.verdict=`partial (${a}x of ${s}, multi-core but limited)`:e.speedup.verdict=`degenerate (${a}x \u2014 workers likely serialized, not actually parallel)`}return e}var XJ,v4e,Xer,etr=ie(()=>{XJ=2e5,v4e="probe_2026",Xer=` +(async () => { + const { parentPort } = await import('node:worker_threads'); + const { createHash } = await import('node:crypto'); + parentPort.on('message', (msg) => { + const { iterations, salt } = msg; + const t0 = Date.now(); + let acc = ''; + for (let i = 0; i < iterations; i += 1) { + acc = createHash('sha256').update(String(i) + salt).digest('hex'); + } + parentPort.postMessage({ ms: Date.now() - t0, sample: acc.slice(0, 12) }); + }); +})(); +`});var ttr=S(s1=>{"use strict";Object.defineProperty(s1,"__esModule",{value:!0});s1.removeTrailingChar=s1.merge=void 0;var r$n=(...e)=>{let t={};return e.forEach(function(r){var n;for(n in r)n in t&&t[n]===null?t[n]=r[n]:n in t&&Array.isArray(t[n])?t[n]=t[n].concat(r[n]):n in t&&typeof t[n]=="object"?t[n]=(0,s1.merge)(t[n],r[n]):t[n]=r[n]}),t};s1.merge=r$n;var n$n=(e,t)=>e.length>1&&e.endsWith(t)?e.substring(0,e.length-1):e;s1.removeTrailingChar=n$n});var qN=S(Qy=>{"use strict";Object.defineProperty(Qy,"__esModule",{value:!0});Qy.DataError=Qy.DatabaseError=Qy.NestedError=void 0;var kU=class extends Error{inner;id;constructor(t,r,n){super(t),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let t=this.name+": "+this.message;return this.inner?t+`: +`+this.inner:t}};Qy.NestedError=kU;var T4e=class extends kU{};Qy.DatabaseError=T4e;var b4e=class extends kU{};Qy.DataError=b4e});var w4e=S(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.getArrayIndicies=Au.validateArrayIndex=Au.validateArrayIndicies=Au.isInt=Au.ArrayInfo=Au.arrayRegex=void 0;var tZ=qN(),s$n=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;Au.arrayRegex=s$n;var I4e={},R4e=class e{property;index=0;append=!1;indicies=[];constructor(t,r){this.property=t;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,C4e(n))this.index=parseInt(n);else if(!this.append)throw new tZ.DataError("Only numerical values accepted for array index",200)}static processArray(t){if(typeof t>"u")return null;if(I4e[t])return I4e[t];let n=(0,Au.arrayRegex)().exec(t.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=x4e(i);return rtr(a),I4e[t]=new e(s,a)}return null}getIndex(t,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?t:t[this.property];return s.length===0?0:s.length-1}return n}getData(t){if(this.append)throw new tZ.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);return n[r]}setData(t,r){if(this.append){let n=t[this.property];this.indicies.forEach(s=>{s!==""&&(s=+s,s===-1&&(s=n.length-1),n=n[+s])}),n.push(r)}else{let{index:n,dataForProperty:s}=this.getArrayDataAndIndexFromProperty(t);n===-1?s.push(r):s[n]=r}}delete(t){if(this.append)throw new tZ.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);n.splice(r,1)}isValid(t){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(t);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(t){let r=0,n=t instanceof Array?t:t[this.property]??t;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s1}};Au.ArrayInfo=R4e;function C4e(e){return!isNaN(e)&&Number(e)==e&&!isNaN(parseInt(e,10))}Au.isInt=C4e;function rtr(e){let t=e.filter(r=>r==="");if(t.length>1)throw Error("Only one append index is supported for nested arrays");if(t.length===1&&e[e.length-1]!=="")throw Error("Append index must be at the end of the nested array")}Au.validateArrayIndicies=rtr;function ntr(e){if(e.length!==0&&!C4e(e))throw new tZ.DataError("Only numerical values accepted for array index",200)}Au.validateArrayIndex=ntr;function x4e(e){if(e.length===0)return[];if(e.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let t=e.substring(1,e.indexOf("]"));ntr(t);let r=t.length+2;return[t,...x4e(e.substring(r))]}Au.getArrayIndicies=x4e});var atr=S(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});rZ.DBParentData=void 0;var str=w4e(),itr=qN(),N4e=class{parent;data;db;dataPath;constructor(t,r,n,s){this.parent=s,this.data=t,this.db=r,this.dataPath=n}checkArray(t=!1){let r=str.ArrayInfo.processArray(this.parent);if(r&&(!r.append||t)&&!r.isValid(this.data))throw new itr.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let t=this.checkArray();return t?t.getData(this.data):this.data[this.parent]}setData(t){if(this.parent===void 0){this.db.resetData(t);return}let r=str.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new itr.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,t)}else this.data[this.parent]=t}delete(){if(this.parent===void 0){this.db.resetData({});return}let t=this.checkArray(!0);t?t.delete(this.data):delete this.data[this.parent]}};rZ.DBParentData=N4e});var ctr=S((cBs,otr)=>{otr.exports=function(){"use strict";function e(){this.readers=0,this.queue=[]}function t(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new e),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var h=!1;return function(){h||(h=!0,c.readers--,c.queue.length&&c.queue[0]())}}();if(c.readers<0||c.queue.length){var d=!1;if(c.queue.push(function(){!d&&c.readers>=0&&(d=!0,c.queue.shift(),c.readers++,a.call(u,l),c.queue.length&&c.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else c.readers++,a.call(o.scope,l)}function r(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new e),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var h=!1;return function(){h||(h=!0,c.readers=0,c.queue.length&&c.queue[0]())}}();if(c.readers||c.queue.length){var d=!1;if(c.queue.push(function(){d||c.readers||(d=!0,c.queue.shift(),c.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(u))},o.timeout)}}else c.readers=-1,a.call(o.scope,l)}var n=new e,s={};this.readLock=t,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?t(i,function(c){a.call(this,null,c)},o):(a=i,o=a,t(function(c){a.call(this,null,c)},o))},writeLock:function(i,a,o){typeof i!="function"?r(i,function(c){a.call(this,null,c)},o):(a=i,o=a,r(function(c){a.call(this,null,c)},o))}}}});var utr=S(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});nZ.TimeoutError=void 0;var i$n=qN(),O4e=class extends i$n.NestedError{};nZ.TimeoutError=O4e});var ftr=S(HN=>{"use strict";Object.defineProperty(HN,"__esModule",{value:!0});HN.writeLockAsync=HN.readLockAsync=void 0;var a$n=ctr(),ltr=utr(),dtr=new a$n,o$n=(e,t=null)=>{let r={};return t!=null&&(r={timeout:t}),new Promise((n,s)=>{dtr.readLock(async i=>{try{let a=await e();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new ltr.TimeoutError("Timeout",100))}})})};HN.readLockAsync=o$n;var c$n=(e,t=null)=>{let r={};return t!=null&&(r={timeout:t}),new Promise((n,s)=>{dtr.writeLock(async i=>{try{let a=await e();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new ltr.TimeoutError("Timeout",100))}})})};HN.writeLockAsync=c$n});var P4e=S(sZ=>{"use strict";Object.defineProperty(sZ,"__esModule",{value:!0});sZ.JsonAdapter=void 0;var D4e=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(t,r=!1){this.adapter=t,this.humanReadable=r}replacer(t,r){return r}reviver(t,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let t=await this.adapter.readAsync();return t==null?(await this.writeAsync({}),{}):JSON.parse(t,this.reviver.bind(this))}writeAsync(t){let r="";return this.humanReadable?r=JSON.stringify(t,this.replacer.bind(this),4):r=JSON.stringify(t,this.replacer.bind(this)),this.adapter.writeAsync(r)}};sZ.JsonAdapter=D4e});var M4e=S(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.FileAdapter=void 0;var iZ=require("fs/promises"),u$n=require("path"),L4e=class{filename;fsync;constructor(t,r){this.filename=t,this.fsync=r}async readAsync(){try{return await(0,iZ.readFile)(this.filename,{encoding:"utf-8"})}catch(t){if(t.code==="ENOENT")return null;throw t}}async writeAsync(t){let r=null;try{r=await(0,iZ.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=u$n.dirname(this.filename);await(0,iZ.mkdir)(s,{recursive:!0}),r=await(0,iZ.open)(this.filename,"w")}try{await r.writeFile(t,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};aZ.FileAdapter=L4e});var htr=S(VN=>{"use strict";Object.defineProperty(VN,"__esModule",{value:!0});VN.ConfigWithAdapter=VN.Config=void 0;var l$n=require("path"),d$n=P4e(),f$n=M4e(),k4e=class{adapter;filename;saveOnPush;separator;constructor(t,r=!0,n=!1,s="/",i=!1){this.filename=t,l$n.extname(t)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new d$n.JsonAdapter(new f$n.FileAdapter(this.filename,i),n)}};VN.Config=k4e;var B4e=class{adapter;saveOnPush;separator;constructor(t,r=!0,n="/"){this.adapter=t,this.saveOnPush=r,this.separator=n}};VN.ConfigWithAdapter=B4e});var _tr=S(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});Dc.JsonDB=Dc.FileAdapter=Dc.JsonAdapter=Dc.DataError=Dc.DatabaseError=Dc.ConfigWithAdapter=Dc.Config=void 0;var ptr=ttr(),Oc=qN(),h$n=atr(),p$n=w4e(),U4e=ftr(),mtr=htr();Object.defineProperty(Dc,"Config",{enumerable:!0,get:function(){return mtr.Config}});Object.defineProperty(Dc,"ConfigWithAdapter",{enumerable:!0,get:function(){return mtr.ConfigWithAdapter}});var gtr=qN();Object.defineProperty(Dc,"DatabaseError",{enumerable:!0,get:function(){return gtr.DatabaseError}});Object.defineProperty(Dc,"DataError",{enumerable:!0,get:function(){return gtr.DataError}});var m$n=P4e();Object.defineProperty(Dc,"JsonAdapter",{enumerable:!0,get:function(){return m$n.JsonAdapter}});var g$n=M4e();Object.defineProperty(Dc,"FileAdapter",{enumerable:!0,get:function(){return g$n.FileAdapter}});var F4e=class{loaded=!1;data={};config;constructor(t){this.config=t}processDataPath(t){if(t===void 0||!t.trim())throw new Oc.DataError("The Data Path can't be empty",6);if(t==this.config.separator)return[];t=(0,ptr.removeTrailingChar)(t,this.config.separator);let r=t.split(this.config.separator);return r.shift(),r}async retrieveData(t,r=!1){await this.load();let n=this,s=(i,a)=>{let o=t[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new Oc.DataError(`Can't find dataPath: ${n.config.separator}${t.join(n.config.separator)}. Stopped at ${o}`,5)}let u=p$n.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new Oc.DataError(`DataPath: ${n.config.separator}${t.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new Oc.DataError(`DataPath: ${n.config.separator}${t.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return t.length==++a?i:s(i,a)};return t.length===0?this.data:s(this.data,0)}async getParentData(t,r){let n=this.processDataPath(t),s=n.pop();return new h$n.DBParentData(await this.retrieveData(n,r),this,t,s)}getData(t){return(0,U4e.readLockAsync)(async()=>{let r=this.processDataPath(t);return this.retrieveData(r,!1)})}getObject(t){return this.getData(t)}async getObjectDefault(t,r){try{return await this.getData(t)}catch(n){if(!(n instanceof Oc.DataError)||n.id!=5)throw n;return r}}async exists(t){try{return await this.getData(t),!0}catch(r){if(r instanceof Oc.DataError)return!1;throw r}}async count(t){let r=await this.getData(t);if(!Array.isArray(r))throw new Oc.DataError(`DataPath: ${t} is not an array.`,11);let n=this.processDataPath(t);return(await this.retrieveData(n,!1)).length}async getIndex(t,r,n="id"){return(await this.getArrayData(t)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(t,r){return(await this.getArrayData(t)).indexOf(r)}async getArrayData(t){let r=await this.getData(t);if(!Array.isArray(r))throw new Oc.DataError(`DataPath: ${t} is not an array.`,11);let n=this.processDataPath(t);return this.retrieveData(n,!1)}async filter(t,r){let n=await this.getData(t);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new Oc.DataError("The entry at the path ("+t+") needs to be either an Object or an Array",12)}async find(t,r){let n=await this.getData(t);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new Oc.DataError("The entry at the path ("+t+") needs to be either an Object or an Array",12)}async push(t,r,n=!0){return(0,U4e.writeLockAsync)(async()=>{let s=await this.getParentData(t,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new Oc.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new Oc.DataError("Can't merge an Array with an Object",4);i=(0,ptr.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(t){await(0,U4e.writeLockAsync)(async()=>{(await this.getParentData(t,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(t){this.data=t}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(t){throw new Oc.DatabaseError("Can't Load Database",1,t)}}async save(t){if(t=t||!1,!t&&!this.loaded)throw new Oc.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new Oc.DatabaseError("Can't save the database",2,r)}}async fromPath(t,r="id"){let[,...n]=t.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new Oc.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};Dc.JsonDB=F4e});var bBe=S((u3s,Vtr)=>{"use strict";var{EventEmitter:Y$n}=require("node:events"),{inherits:Q$n}=require("node:util");function c1(e){if(typeof e=="string"&&(e=Buffer.from(e)),!Buffer.isBuffer(e))throw new TypeError("The needle has to be a String or a Buffer.");let t=e.length,r=t-1;if(t===0)throw new Error("The needle cannot be an empty String/Buffer.");if(t>256)throw new Error("The needle cannot have a length bigger than 256.");this.maxMatches=1/0,this.matches=0,this._occ=new Uint8Array(256).fill(t),this._lookbehind_size=0,this._needle=e,this._bufpos=0,this._lookbehind=Buffer.alloc(r);for(var n=0;n=0)this.emit("info",!1,this._lookbehind,0,this._lookbehind_size),this._lookbehind_size=0;else{let c=this._lookbehind_size+a;return c>0&&this.emit("info",!1,this._lookbehind,0,c),this._lookbehind_size-=c,this._lookbehind.copy(this._lookbehind,0,c,this._lookbehind_size),e.copy(this._lookbehind,this._lookbehind_size),this._lookbehind_size+=t,this._bufpos=t,t}}if(a=e.indexOf(r,a+this._bufpos),a!==-1)return++this.matches,a===0?this.emit("info",!0):this.emit("info",!0,e,this._bufpos,a),this._bufpos=a+n;for(a=t-s,a<0&&(a=0);a!==t&&(e[a]!==r[0]||Buffer.compare(e.subarray(a+1,t),r.subarray(1,t-a))!==0);)++a;return a!==t&&(e.copy(this._lookbehind,0,a,t),this._lookbehind_size=t-a),a!==0&&this.emit("info",!1,e,this._bufpos,a),this._bufpos=t,t};c1.prototype._sbmh_lookup_char=function(e,t){return t<0?this._lookbehind[this._lookbehind_size+t]:e[t]};c1.prototype._sbmh_memcmp=function(e,t,r){for(var n=0;n{"use strict";var W$n=require("node:util").inherits,jtr=require("node:stream").Readable;function IBe(e){jtr.call(this,e)}W$n(IBe,jtr);IBe.prototype._read=function(e){};Ktr.exports=IBe});var gZ=S((d3s,ztr)=>{"use strict";ztr.exports=function(t,r,n){if(!t||t[r]===void 0||t[r]===null)return n;if(typeof t[r]!="number"||isNaN(t[r]))throw new TypeError("Limit "+r+" is not a valid number");return t[r]}});var Xtr=S((f3s,Wtr)=>{"use strict";var Qtr=require("node:events").EventEmitter,X$n=require("node:util").inherits,Ytr=gZ(),J$n=bBe(),Z$n=Buffer.from(`\r +\r +`),e9n=/\r\n/g,t9n=/^([^:]+):[ \t]?([\x00-\xFF]+)?$/;function GN(e){Qtr.call(this),e=e||{};let t=this;this.nread=0,this.maxed=!1,this.npairs=0,this.maxHeaderPairs=Ytr(e,"maxHeaderPairs",2e3),this.maxHeaderSize=Ytr(e,"maxHeaderSize",80*1024),this.buffer="",this.header={},this.finished=!1,this.ss=new J$n(Z$n),this.ss.on("info",function(r,n,s,i){n&&!t.maxed&&(t.nread+i-s>=t.maxHeaderSize?(i=t.maxHeaderSize-t.nread+s,t.nread=t.maxHeaderSize,t.maxed=!0):t.nread+=i-s,t.buffer+=n.toString("binary",s,i)),r&&t._finish()})}X$n(GN,Qtr);GN.prototype.push=function(e){let t=this.ss.push(e);if(this.finished)return t};GN.prototype.reset=function(){this.finished=!1,this.buffer="",this.header={},this.ss.reset()};GN.prototype._finish=function(){this.buffer&&this._parseHeader(),this.ss.matches=this.ss.maxMatches;let e=this.header;this.header={},this.buffer="",this.finished=!0,this.nread=this.npairs=0,this.maxed=!1,this.emit("header",e)};GN.prototype._parseHeader=function(){if(this.npairs===this.maxHeaderPairs)return;let e=this.buffer.split(e9n),t=e.length,r,n;for(var s=0;s{"use strict";var RBe=require("node:stream").Writable,r9n=require("node:util").inherits,n9n=bBe(),Jtr=Gtr(),s9n=Xtr(),i9n=45,a9n=Buffer.from("-"),o9n=Buffer.from(`\r +`),c9n=function(){};function W0(e){if(!(this instanceof W0))return new W0(e);if(RBe.call(this,e),!e||!e.headerFirst&&typeof e.boundary!="string")throw new TypeError("Boundary required");typeof e.boundary=="string"?this.setBoundary(e.boundary):this._bparser=void 0,this._headerFirst=e.headerFirst,this._dashes=0,this._parts=0,this._finished=!1,this._realFinish=!1,this._isPreamble=!0,this._justMatched=!1,this._firstWrite=!0,this._inHeader=!0,this._part=void 0,this._cb=void 0,this._ignoreData=!1,this._partOpts={highWaterMark:e.partHwm},this._pause=!1;let t=this;this._hparser=new s9n(e),this._hparser.on("header",function(r){t._inHeader=!1,t._part.emit("header",r)})}r9n(W0,RBe);W0.prototype.emit=function(e){if(e==="finish"&&!this._realFinish){if(!this._finished){let t=this;process.nextTick(function(){if(t.emit("error",new Error("Unexpected end of multipart data")),t._part&&!t._ignoreData){let r=t._isPreamble?"Preamble":"Part";t._part.emit("error",new Error(r+" terminated early due to unexpected end of multipart data")),t._part.push(null),process.nextTick(function(){t._realFinish=!0,t.emit("finish"),t._realFinish=!1});return}t._realFinish=!0,t.emit("finish"),t._realFinish=!1})}}else RBe.prototype.emit.apply(this,arguments)};W0.prototype._write=function(e,t,r){if(!this._hparser&&!this._bparser)return r();if(this._headerFirst&&this._isPreamble){this._part||(this._part=new Jtr(this._partOpts),this.listenerCount("preamble")!==0?this.emit("preamble",this._part):this._ignore());let n=this._hparser.push(e);if(!this._inHeader&&n!==void 0&&n{"use strict";var err=new TextDecoder("utf-8"),trr=new Map([["utf-8",err],["utf8",err]]);function u9n(e){let t;for(;;)switch(e){case"utf-8":case"utf8":return $U.utf8;case"latin1":case"ascii":case"us-ascii":case"iso-8859-1":case"iso8859-1":case"iso88591":case"iso_8859-1":case"windows-1252":case"iso_8859-1:1987":case"cp1252":case"x-cp1252":return $U.latin1;case"utf16le":case"utf-16le":case"ucs2":case"ucs-2":return $U.utf16le;case"base64":return $U.base64;default:if(t===void 0){t=!0,e=e.toLowerCase();continue}return $U.other.bind(e)}}var $U={utf8:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.utf8Slice(0,e.length)),latin1:(e,t)=>e.length===0?"":typeof e=="string"?e:e.latin1Slice(0,e.length),utf16le:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.ucs2Slice(0,e.length)),base64:(e,t)=>e.length===0?"":(typeof e=="string"&&(e=Buffer.from(e,t)),e.base64Slice(0,e.length)),other:(e,t)=>{if(e.length===0)return"";if(typeof e=="string"&&(e=Buffer.from(e,t)),trr.has(xBe.toString()))try{return trr.get(xBe).decode(e)}catch{}return typeof e=="string"?e:e.toString()}};function l9n(e,t,r){return e&&u9n(r)(e,t)}rrr.exports=l9n});var NBe=S((p3s,orr)=>{"use strict";var AZ=_Z(),nrr=/%[a-fA-F0-9][a-fA-F0-9]/g,d9n={"%00":"\0","%01":"","%02":"","%03":"","%04":"","%05":"","%06":"","%07":"\x07","%08":"\b","%09":" ","%0a":` +`,"%0A":` +`,"%0b":"\v","%0B":"\v","%0c":"\f","%0C":"\f","%0d":"\r","%0D":"\r","%0e":"","%0E":"","%0f":"","%0F":"","%10":"","%11":"","%12":"","%13":"","%14":"","%15":"","%16":"","%17":"","%18":"","%19":"","%1a":"","%1A":"","%1b":"\x1B","%1B":"\x1B","%1c":"","%1C":"","%1d":"","%1D":"","%1e":"","%1E":"","%1f":"","%1F":"","%20":" ","%21":"!","%22":'"',"%23":"#","%24":"$","%25":"%","%26":"&","%27":"'","%28":"(","%29":")","%2a":"*","%2A":"*","%2b":"+","%2B":"+","%2c":",","%2C":",","%2d":"-","%2D":"-","%2e":".","%2E":".","%2f":"/","%2F":"/","%30":"0","%31":"1","%32":"2","%33":"3","%34":"4","%35":"5","%36":"6","%37":"7","%38":"8","%39":"9","%3a":":","%3A":":","%3b":";","%3B":";","%3c":"<","%3C":"<","%3d":"=","%3D":"=","%3e":">","%3E":">","%3f":"?","%3F":"?","%40":"@","%41":"A","%42":"B","%43":"C","%44":"D","%45":"E","%46":"F","%47":"G","%48":"H","%49":"I","%4a":"J","%4A":"J","%4b":"K","%4B":"K","%4c":"L","%4C":"L","%4d":"M","%4D":"M","%4e":"N","%4E":"N","%4f":"O","%4F":"O","%50":"P","%51":"Q","%52":"R","%53":"S","%54":"T","%55":"U","%56":"V","%57":"W","%58":"X","%59":"Y","%5a":"Z","%5A":"Z","%5b":"[","%5B":"[","%5c":"\\","%5C":"\\","%5d":"]","%5D":"]","%5e":"^","%5E":"^","%5f":"_","%5F":"_","%60":"`","%61":"a","%62":"b","%63":"c","%64":"d","%65":"e","%66":"f","%67":"g","%68":"h","%69":"i","%6a":"j","%6A":"j","%6b":"k","%6B":"k","%6c":"l","%6C":"l","%6d":"m","%6D":"m","%6e":"n","%6E":"n","%6f":"o","%6F":"o","%70":"p","%71":"q","%72":"r","%73":"s","%74":"t","%75":"u","%76":"v","%77":"w","%78":"x","%79":"y","%7a":"z","%7A":"z","%7b":"{","%7B":"{","%7c":"|","%7C":"|","%7d":"}","%7D":"}","%7e":"~","%7E":"~","%7f":"\x7F","%7F":"\x7F","%80":"\x80","%81":"\x81","%82":"\x82","%83":"\x83","%84":"\x84","%85":"\x85","%86":"\x86","%87":"\x87","%88":"\x88","%89":"\x89","%8a":"\x8A","%8A":"\x8A","%8b":"\x8B","%8B":"\x8B","%8c":"\x8C","%8C":"\x8C","%8d":"\x8D","%8D":"\x8D","%8e":"\x8E","%8E":"\x8E","%8f":"\x8F","%8F":"\x8F","%90":"\x90","%91":"\x91","%92":"\x92","%93":"\x93","%94":"\x94","%95":"\x95","%96":"\x96","%97":"\x97","%98":"\x98","%99":"\x99","%9a":"\x9A","%9A":"\x9A","%9b":"\x9B","%9B":"\x9B","%9c":"\x9C","%9C":"\x9C","%9d":"\x9D","%9D":"\x9D","%9e":"\x9E","%9E":"\x9E","%9f":"\x9F","%9F":"\x9F","%a0":"\xA0","%A0":"\xA0","%a1":"\xA1","%A1":"\xA1","%a2":"\xA2","%A2":"\xA2","%a3":"\xA3","%A3":"\xA3","%a4":"\xA4","%A4":"\xA4","%a5":"\xA5","%A5":"\xA5","%a6":"\xA6","%A6":"\xA6","%a7":"\xA7","%A7":"\xA7","%a8":"\xA8","%A8":"\xA8","%a9":"\xA9","%A9":"\xA9","%aa":"\xAA","%Aa":"\xAA","%aA":"\xAA","%AA":"\xAA","%ab":"\xAB","%Ab":"\xAB","%aB":"\xAB","%AB":"\xAB","%ac":"\xAC","%Ac":"\xAC","%aC":"\xAC","%AC":"\xAC","%ad":"\xAD","%Ad":"\xAD","%aD":"\xAD","%AD":"\xAD","%ae":"\xAE","%Ae":"\xAE","%aE":"\xAE","%AE":"\xAE","%af":"\xAF","%Af":"\xAF","%aF":"\xAF","%AF":"\xAF","%b0":"\xB0","%B0":"\xB0","%b1":"\xB1","%B1":"\xB1","%b2":"\xB2","%B2":"\xB2","%b3":"\xB3","%B3":"\xB3","%b4":"\xB4","%B4":"\xB4","%b5":"\xB5","%B5":"\xB5","%b6":"\xB6","%B6":"\xB6","%b7":"\xB7","%B7":"\xB7","%b8":"\xB8","%B8":"\xB8","%b9":"\xB9","%B9":"\xB9","%ba":"\xBA","%Ba":"\xBA","%bA":"\xBA","%BA":"\xBA","%bb":"\xBB","%Bb":"\xBB","%bB":"\xBB","%BB":"\xBB","%bc":"\xBC","%Bc":"\xBC","%bC":"\xBC","%BC":"\xBC","%bd":"\xBD","%Bd":"\xBD","%bD":"\xBD","%BD":"\xBD","%be":"\xBE","%Be":"\xBE","%bE":"\xBE","%BE":"\xBE","%bf":"\xBF","%Bf":"\xBF","%bF":"\xBF","%BF":"\xBF","%c0":"\xC0","%C0":"\xC0","%c1":"\xC1","%C1":"\xC1","%c2":"\xC2","%C2":"\xC2","%c3":"\xC3","%C3":"\xC3","%c4":"\xC4","%C4":"\xC4","%c5":"\xC5","%C5":"\xC5","%c6":"\xC6","%C6":"\xC6","%c7":"\xC7","%C7":"\xC7","%c8":"\xC8","%C8":"\xC8","%c9":"\xC9","%C9":"\xC9","%ca":"\xCA","%Ca":"\xCA","%cA":"\xCA","%CA":"\xCA","%cb":"\xCB","%Cb":"\xCB","%cB":"\xCB","%CB":"\xCB","%cc":"\xCC","%Cc":"\xCC","%cC":"\xCC","%CC":"\xCC","%cd":"\xCD","%Cd":"\xCD","%cD":"\xCD","%CD":"\xCD","%ce":"\xCE","%Ce":"\xCE","%cE":"\xCE","%CE":"\xCE","%cf":"\xCF","%Cf":"\xCF","%cF":"\xCF","%CF":"\xCF","%d0":"\xD0","%D0":"\xD0","%d1":"\xD1","%D1":"\xD1","%d2":"\xD2","%D2":"\xD2","%d3":"\xD3","%D3":"\xD3","%d4":"\xD4","%D4":"\xD4","%d5":"\xD5","%D5":"\xD5","%d6":"\xD6","%D6":"\xD6","%d7":"\xD7","%D7":"\xD7","%d8":"\xD8","%D8":"\xD8","%d9":"\xD9","%D9":"\xD9","%da":"\xDA","%Da":"\xDA","%dA":"\xDA","%DA":"\xDA","%db":"\xDB","%Db":"\xDB","%dB":"\xDB","%DB":"\xDB","%dc":"\xDC","%Dc":"\xDC","%dC":"\xDC","%DC":"\xDC","%dd":"\xDD","%Dd":"\xDD","%dD":"\xDD","%DD":"\xDD","%de":"\xDE","%De":"\xDE","%dE":"\xDE","%DE":"\xDE","%df":"\xDF","%Df":"\xDF","%dF":"\xDF","%DF":"\xDF","%e0":"\xE0","%E0":"\xE0","%e1":"\xE1","%E1":"\xE1","%e2":"\xE2","%E2":"\xE2","%e3":"\xE3","%E3":"\xE3","%e4":"\xE4","%E4":"\xE4","%e5":"\xE5","%E5":"\xE5","%e6":"\xE6","%E6":"\xE6","%e7":"\xE7","%E7":"\xE7","%e8":"\xE8","%E8":"\xE8","%e9":"\xE9","%E9":"\xE9","%ea":"\xEA","%Ea":"\xEA","%eA":"\xEA","%EA":"\xEA","%eb":"\xEB","%Eb":"\xEB","%eB":"\xEB","%EB":"\xEB","%ec":"\xEC","%Ec":"\xEC","%eC":"\xEC","%EC":"\xEC","%ed":"\xED","%Ed":"\xED","%eD":"\xED","%ED":"\xED","%ee":"\xEE","%Ee":"\xEE","%eE":"\xEE","%EE":"\xEE","%ef":"\xEF","%Ef":"\xEF","%eF":"\xEF","%EF":"\xEF","%f0":"\xF0","%F0":"\xF0","%f1":"\xF1","%F1":"\xF1","%f2":"\xF2","%F2":"\xF2","%f3":"\xF3","%F3":"\xF3","%f4":"\xF4","%F4":"\xF4","%f5":"\xF5","%F5":"\xF5","%f6":"\xF6","%F6":"\xF6","%f7":"\xF7","%F7":"\xF7","%f8":"\xF8","%F8":"\xF8","%f9":"\xF9","%F9":"\xF9","%fa":"\xFA","%Fa":"\xFA","%fA":"\xFA","%FA":"\xFA","%fb":"\xFB","%Fb":"\xFB","%fB":"\xFB","%FB":"\xFB","%fc":"\xFC","%Fc":"\xFC","%fC":"\xFC","%FC":"\xFC","%fd":"\xFD","%Fd":"\xFD","%fD":"\xFD","%FD":"\xFD","%fe":"\xFE","%Fe":"\xFE","%fE":"\xFE","%FE":"\xFE","%ff":"\xFF","%Ff":"\xFF","%fF":"\xFF","%FF":"\xFF"};function srr(e){return d9n[e]}var EZ=0,irr=1,wBe=2,arr=3;function f9n(e){let t=[],r=EZ,n="",s=!1,i=!1,a=0,o="",c=e.length;for(var u=0;u{"use strict";crr.exports=function(t){if(typeof t!="string")return"";for(var r=t.length-1;r>=0;--r)switch(t.charCodeAt(r)){case 47:case 92:return t=t.slice(r+1),t===".."||t==="."?"":t}return t===".."||t==="."?"":t}});var hrr=S((g3s,frr)=>{"use strict";var{Readable:drr}=require("node:stream"),{inherits:h9n}=require("node:util"),p9n=CBe(),lrr=NBe(),m9n=_Z(),g9n=urr(),u1=gZ(),_9n=/^boundary$/i,A9n=/^form-data$/i,E9n=/^charset$/i,y9n=/^filename$/i,v9n=/^name$/i;yZ.detect=/^multipart\/form-data/i;function yZ(e,t){let r,n,s=this,i,a=t.limits,o=t.isPartAFile||((D,M,L)=>M==="application/octet-stream"||L!==void 0),c=t.parsedConType||[],u=t.defCharset||"utf8",l=t.preservePath,d={highWaterMark:t.fileHwm};for(r=0,n=c.length;r_)return s.parser.removeListener("part",D),s.parser.on("part",zN),e.hitPartsLimit=!0,e.emit("partsLimit"),zN(M);if(T){let L=T;L.emit("end"),L.removeAllListeners("end")}M.on("header",function(L){let U,G,$,K,ee,z,oe=0;if(L["content-type"]&&($=lrr(L["content-type"][0]),$[0])){for(U=$[0].toLowerCase(),r=0,n=$.length;rp){let de=p-oe+Z.length;de>0&&Q.push(Z.slice(0,de)),Q.truncated=!0,Q.bytesRead=p,M.removeAllListeners("data"),Q.emit("limit");return}else Q.push(Z)||(s._pause=!0);Q.bytesRead=oe},te=function(){I=void 0,Q.push(null)}}else{if(v===g)return e.hitFieldsLimit||(e.hitFieldsLimit=!0,e.emit("fieldsLimit")),zN(M);++v,++b;let Q="",Z=!1;T=M,le=function(de){if((oe+=de.length)>h){let B=h-(oe-de.length);Q+=de.toString("binary",0,B),Z=!0,M.removeAllListeners("data")}else Q+=de.toString("binary")},te=function(){T=void 0,Q.length&&(Q=m9n(Q,"binary",K)),e.emit("field",G,Q,!1,Z,ee,U),--b,f()}}M._readableState.sync=!1,M.on("data",le),M.on("end",te)}).on("error",function(L){I&&I.emit("error",L)})}).on("error",function(D){e.emit("error",D)}).on("finish",function(){x=!0,f()})}yZ.prototype.write=function(e,t){let r=this.parser.write(e);r&&!this._pause?t():(this._needDrain=!r,this._cb=t)};yZ.prototype.end=function(){let e=this;e.parser.writable?e.parser.end():e._boy._done||process.nextTick(function(){e._boy._done=!0,e._boy.emit("finish")})};function zN(e){e.resume()}function OBe(e){drr.call(this,e),this.bytesRead=0,this.truncated=!1}h9n(OBe,drr);OBe.prototype._read=function(e){};frr.exports=yZ});var mrr=S((_3s,prr)=>{"use strict";var S9n=/\+/g,T9n=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function DBe(){this.buffer=void 0}DBe.prototype.write=function(e){e=e.replace(S9n," ");let t="",r=0,n=0,s=e.length;for(;rn&&(t+=e.substring(n,r),n=r),this.buffer="",++n);return n{"use strict";var b9n=mrr(),YN=_Z(),PBe=gZ(),I9n=/^charset$/i;vZ.detect=/^application\/x-www-form-urlencoded/i;function vZ(e,t){let r=t.limits,n=t.parsedConType;this.boy=e,this.fieldSizeLimit=PBe(r,"fieldSize",1*1024*1024),this.fieldNameSizeLimit=PBe(r,"fieldNameSize",100),this.fieldsLimit=PBe(r,"fields",1/0);let s;for(var i=0,a=n.length;ii&&(this._key+=this.decoder.write(e.toString("binary",i,r))),this._state="val",this._hitLimit=!1,this._checkingBytes=!0,this._val="",this._bytesVal=0,this._valTrunc=!1,this.decoder.reset(),i=r+1;else if(n!==void 0){++this._fields;let o,c=this._keyTrunc;if(n>i?o=this._key+=this.decoder.write(e.toString("binary",i,n)):o=this._key,this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),o.length&&this.boy.emit("field",YN(o,"binary",this.charset),"",c,!1),i=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(s>i&&(this._key+=this.decoder.write(e.toString("binary",i,s))),i=s,(this._bytesKey=this._key.length)===this.fieldNameSizeLimit&&(this._checkingBytes=!1,this._keyTrunc=!0)):(ii&&(this._val+=this.decoder.write(e.toString("binary",i,n))),this.boy.emit("field",YN(this._key,"binary",this.charset),YN(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this._state="key",this._hitLimit=!1,this._checkingBytes=!0,this._key="",this._bytesKey=0,this._keyTrunc=!1,this.decoder.reset(),i=n+1,this._fields===this.fieldsLimit)return t()}else this._hitLimit?(s>i&&(this._val+=this.decoder.write(e.toString("binary",i,s))),i=s,(this._val===""&&this.fieldSizeLimit===0||(this._bytesVal=this._val.length)===this.fieldSizeLimit)&&(this._checkingBytes=!1,this._valTrunc=!0)):(i0?this.boy.emit("field",YN(this._key,"binary",this.charset),"",this._keyTrunc,!1):this._state==="val"&&this.boy.emit("field",YN(this._key,"binary",this.charset),YN(this._val,"binary",this.charset),this._keyTrunc,this._valTrunc),this.boy._done=!0,this.boy.emit("finish"))};grr.exports=vZ});var yrr=S((E3s,qU)=>{"use strict";var LBe=require("node:stream").Writable,{inherits:R9n}=require("node:util"),C9n=CBe(),Arr=hrr(),Err=_rr(),x9n=NBe();function U_(e){if(!(this instanceof U_))return new U_(e);if(typeof e!="object")throw new TypeError("Busboy expected an options-Object.");if(typeof e.headers!="object")throw new TypeError("Busboy expected an options-Object with headers-attribute.");if(typeof e.headers["content-type"]!="string")throw new TypeError("Missing Content-Type-header.");let{headers:t,...r}=e;this.opts={autoDestroy:!1,...r},LBe.call(this,this.opts),this._done=!1,this._parser=this.getParserByHeaders(t),this._finished=!1}R9n(U_,LBe);U_.prototype.emit=function(e){if(e==="finish"){if(this._done){if(this._finished)return}else{this._parser?.end();return}this._finished=!0}LBe.prototype.emit.apply(this,arguments)};U_.prototype.getParserByHeaders=function(e){let t=x9n(e["content-type"]),r={defCharset:this.opts.defCharset,fileHwm:this.opts.fileHwm,headers:e,highWaterMark:this.opts.highWaterMark,isPartAFile:this.opts.isPartAFile,limits:this.opts.limits,parsedConType:t,preservePath:this.opts.preservePath};if(Arr.detect.test(t[0]))return new Arr(this,r);if(Err.detect.test(t[0]))return new Err(this,r);throw new Error("Unsupported Content-Type.")};U_.prototype._write=function(e,t,r){this._parser.write(e,r)};qU.exports=U_;qU.exports.default=U_;qU.exports.Busboy=U_;qU.exports.Dicer=C9n});var Srr=S((y3s,MBe)=>{"use strict";var w9n=/at\s{1}(?:.*\.)?plugin\s{1}.*\n\s*(.*)/,N9n=/(\w*(\.\w*)*)\..*/;MBe.exports=function(t){if(t.name.length>0)return t.name;let r=Error.stackTraceLimit;Error.stackTraceLimit=10;try{throw new Error("anonymous function")}catch(n){return Error.stackTraceLimit=r,vrr(n.stack)}};function vrr(e){let t=e.match(w9n);return t?t[1].split(/[/\\]/).slice(-1)[0].match(N9n)[1]:"anonymous"}MBe.exports.extractPluginName=vrr});var brr=S((v3s,Trr)=>{"use strict";Trr.exports=function(t){return t[0]==="@"&&(t=t.slice(1).replace("/","-")),t.replace(/-(.)/g,function(n,s){return s.toUpperCase()})}});var Irr=S((S3s,SZ)=>{"use strict";var O9n=Srr(),D9n=brr(),P9n=0;function kBe(e,t={}){let r=!1;if(typeof e.default<"u"&&(e=e.default),typeof e!="function")throw new TypeError(`fastify-plugin expects a function, instead got a '${typeof e}'`);if(typeof t=="string"&&(t={fastify:t}),typeof t!="object"||Array.isArray(t)||t===null)throw new TypeError("The options object should be an object");if(t.fastify!==void 0&&typeof t.fastify!="string")throw new TypeError(`fastify-plugin expects a version string, instead got '${typeof t.fastify}'`);t.name||(r=!0,t.name=O9n(e)+"-auto-"+P9n++),e[Symbol.for("skip-override")]=t.encapsulate!==!0,e[Symbol.for("fastify.display-name")]=t.name,e[Symbol.for("plugin-meta")]=t,e.default||(e.default=e);let n=D9n(t.name);return!r&&!e[n]&&(e[n]=e),e}SZ.exports=kBe;SZ.exports.default=kBe;SZ.exports.fastifyPlugin=kBe});var xrr=S((T3s,Crr)=>{"use strict";var F_=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],l1=Math.random;function Rrr(){return F_[255*l1()|0]+F_[255*l1()|0]+F_[255*l1()|0]+F_[255*l1()|0]+F_[255*l1()|0]+F_[255*l1()|0]+F_[255*l1()|0]}Crr.exports.generateId=function(){let t=0,r=Rrr();return function(){return t===255?(r=Rrr())+F_[t=0]:r+F_[++t]}}()});var wrr=S((b3s,HU)=>{"use strict";var{format:L9n}=require("node:util");function M9n(){return`${this.name} [${this.code}]: ${this.message}`}var TZ=Symbol.for("fastify-error-generic");function QN(e,t,r=500,n=Error,s=QN.captureStackTrace){let i=e===TZ;if(i&&(e="FST_ERR"),!e)throw new Error("Fastify error code must not be empty");if(!t)throw new Error("Fastify error message must not be empty");e=e.toUpperCase(),!r&&(r=void 0);let a=Symbol.for(`fastify-error ${e}`);function o(...c){if(!new.target)return new o(...c);this.code=e,this.name="FastifyError",this.statusCode=r;let u=c.length-1;u!==-1&&c[u]&&typeof c[u]=="object"&&"cause"in c[u]&&(this.cause=c.pop().cause),this.message=L9n(t,...c),Error.stackTraceLimit&&s&&Error.captureStackTrace(this,o)}return o.prototype=Object.create(n.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0},[TZ]:{value:!0,enumerable:!1,writable:!1,configurable:!1},[a]:{value:!0,enumerable:!1,writable:!1,configurable:!1}}),i?Object.defineProperty(o,Symbol.hasInstance,{value(c){return c&&c[TZ]},configurable:!1,writable:!1,enumerable:!1}):Object.defineProperty(o,Symbol.hasInstance,{value(c){return c&&c[a]},configurable:!1,writable:!1,enumerable:!1}),o.prototype[Symbol.toStringTag]="Error",o.prototype.toString=M9n,o}QN.captureStackTrace=!0;var k9n=QN(TZ,"Fastify Error",500,Error);HU.exports=QN;HU.exports.FastifyError=k9n;HU.exports.default=QN;HU.exports.createError=QN});var Orr=S((I3s,Nrr)=>{"use strict";Nrr.exports=(e,t)=>new Promise((r,n)=>{if(typeof e.resume!="function"||(e.unpipe&&e.unpipe(),e.resume(),e._readableState&&e._readableState.ended)||!e.readable||e.destroyed)return r();function s(){e.removeListener("end",i),e.removeListener("close",i),e.removeListener("error",a)}function i(){s(),r()}function a(o){s(),t?n(o):r()}e.on("end",i),e.on("close",i),e.on("error",a)})});var Prr=S((R3s,bZ)=>{"use strict";var Drr=Object.getPrototypeOf({});function BBe(e){function t(_){return _!=="constructor"&&_!=="prototype"&&_!=="__proto__"}function r(_){let y=0,A=_.length,E=new Array(A);for(y;ytypeof _!="object"||_===null||_ instanceof RegExp||_ instanceof Date||_ instanceof Buffer:_=>typeof _!="object"||_===null||_ instanceof RegExp||_ instanceof Date,f=e&&typeof e.mergeArray=="function"?e.mergeArray({clone:h,deepmerge:m,getKeys:o,isMergeableObject:u}):s;function h(_){return u(_)?Array.isArray(_)?r(_):n(_):_}function p(_,y){let A={},E=o(_),v=o(y),b,I,T;for(b=0,I=E.length;b{"use strict";var B9n=yrr(),U9n=require("node:os"),F9n=Irr(),{createWriteStream:$9n}=require("node:fs"),{unlink:q9n}=require("node:fs/promises"),Lrr=require("node:path"),{generateId:H9n}=xrr(),V9n=require("node:util"),$_=wrr(),j9n=Orr(),K9n=Prr()({all:!0}),{PassThrough:G9n,pipeline:z9n,Readable:Y9n}=require("node:stream"),Q9n=V9n.promisify(z9n),W9n=cse(),$Be=Symbol("multipart"),IZ=Symbol("multipartHandler"),Mrr=$_("FST_PARTS_LIMIT","reach parts limit",413),krr=$_("FST_FILES_LIMIT","reach files limit",413),Brr=$_("FST_FIELDS_LIMIT","reach fields limit",413),UBe=$_("FST_REQ_FILE_TOO_LARGE","request file too large",413),FBe=$_("FST_PROTO_VIOLATION","prototype property is not allowed as field name",400),Urr=$_("FST_INVALID_MULTIPART_CONTENT_TYPE","the request is not multipart",406),Frr=$_("FST_INVALID_JSON_FIELD_ERROR","a request field is not a valid JSON as declared by its Content-Type",406),$rr=$_("FST_FILE_BUFFER_NOT_FOUND","the file buffer was not found",500),X9n=$_("FST_NO_FORM_DATA","FormData is not available",500);function J9n(e,t,r){e[$Be]=!0,r()}function Z9n(e){try{return new B9n(e)}catch(t){let r=new G9n;return process.nextTick(function(){r.emit("error",t)}),r}}function qBe(e,t,r){t.limits={...t.limits,parts:t.limits?.parts||1e3,fileSize:t.limits?.fileSize||e.initialConfig.bodyLimit};let n=t.attachFieldsToBody;(n===!0||n==="keyValues")&&(typeof t.sharedSchemaId=="string"&&n===!0&&e.addSchema({$id:t.sharedSchemaId,type:"object",properties:{fieldname:{type:"string"},encoding:{type:"string"},filename:{type:"string"},mimetype:{type:"string"}}}),e.addHook("preValidation",async function(h,p){if(h.isMultipart()){for await(let m of h.parts())h.body=m.fields,m.file&&(t.onFile?await t.onFile.call(h,m):await m.toBuffer());if(n==="keyValues"){let m={};if(h.body){let g=Object.keys(h.body);for(let _=0;_{await h.cleanRequestFiles()});function i(){return this[$Be]}function a(h={}){if(!this.isMultipart())throw new Urr;this.log.debug("starting multipart parsing");let p=[],m=null,g=L=>{m?(m(L),m=null):p.push(L)},_=L=>{if(p.length>0){let U=p[0];p=p.slice(1),L(U)}else m=L},y=()=>new Promise((L,U)=>{_(G=>{G instanceof Error?G.message==="Unexpected end of multipart data"?L(null):U(G):L(G)})}),A={},E=null,v=null,b=this.raw,I=K9n({headers:b.headers},t,h);this.log.trace({busboyOptions:I},"Providing options to busboy");let T=Z9n(I);b.on("close",M),b.on("error",M),T.on("field",x).on("file",w).on("end",M).on("finish",M).on("close",M).on("error",M),T.on("partsLimit",function(){let L=new Mrr;D(L),process.nextTick(()=>M(L))}),T.on("filesLimit",function(){let L=new krr;D(L),process.nextTick(()=>M(L))}),T.on("fieldsLimit",function(){let L=new Brr;D(L),process.nextTick(()=>M(L))}),b.pipe(T);function x(L,U,G,$,K,ee){if(L in Object.prototype){D(new FBe);return}if(ee.startsWith("application/json")){if($){D(new Frr);return}try{U=W9n.parse(U),ee="application/json"}catch{D(new Frr);return}}let z={type:"field",fieldname:L,mimetype:ee,encoding:K,value:U,fieldnameTruncated:G,valueTruncated:$,fields:A};A[L]===void 0?A[L]=z:Array.isArray(A[L])?A[L].push(z):A[L]=[A[L],z],g(z)}function w(L,U,G,$,K){if(L in Object.prototype){j9n(U),D(new FBe);return}let ee=typeof h.throwFileSizeLimit=="boolean"?h.throwFileSizeLimit:s,z={type:"file",fieldname:L,filename:G,encoding:$,mimetype:K,file:U,fields:A,_buf:null,async toBuffer(){if(this._buf)return this._buf;let oe=[],le;for await(let te of this.file)oe.push(te),ee&&this.file.truncated&&(le=new UBe,le.part=this,D(le),oe.length=0);if(le)throw le;return this._buf=Buffer.concat(oe),this._buf}};ee&&U.on("limit",function(){let oe=new UBe;oe.part=z,D(oe)}),A[L]===void 0?A[L]=z:Array.isArray(A[L])?A[L].push(z):A[L]=[A[L],z],v=U,g(z)}function D(L){E=L,v=null}function M(L){b.unpipe(T),(L||b.aborted)&&v&&(v.destroy(),v=null),g(L||E||null)}return y}async function o(h){if(this.savedRequestFiles)return this.savedRequestFiles;let p;if(n===!0){if(!this.body)return[];p=c.call(this,this.body)}else p=await this.files(h);this.savedRequestFiles=[];let m=h&&h.tmpdir||U9n.tmpdir();this.tmpUploads=[];let g=0;for await(let _ of p){let y=Lrr.join(m,H9n()+Lrr.extname(_.filename||"file"+g++)),A=$9n(y);try{this.tmpUploads.push(y),await Q9n(_.file,A),this.savedRequestFiles.push({..._,filepath:y})}catch(E){throw this.log.error({err:E},"save request file"),E}}return this.savedRequestFiles}function*c(h){try{let p=Array.isArray(h)?h:Object.values(h);for(let m=0;m(r.type="string",r.format="binary",delete r.isFile,n=>!!n.file),error:{message:"should be a file"}})}VU.exports=F9n(qBe,{fastify:"4.x",name:"@fastify/multipart"});VU.exports.default=qBe;VU.exports.fastifyMultipart=qBe;VU.exports.ajvFilePlugin=eqn});var fqn={};kt(fqn,{start:()=>lqn,stop:()=>dqn});module.exports=xsr(fqn);var zrr=Ne(iJe(),1);var JJ=Ne(require("fs"),1),ZJ=Ne(require("path"),1);vr();ia();var T6r=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"];function b6r(e){return String(e).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var I6r=new RegExp(T6r.map(b6r).sort((e,t)=>t.length-e.length).join("|"),"ig"),wm=new _t(500,60*60*1e3),ede=new _t(1e3,60*60*1e3),art={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},ort={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function R6r(e){if(!e)return-1;let t=0,r=0,n=0,s=!1;for(let i=0;iString.fromCharCode(parseInt(h,16))).replace(/<[^>]+>/g,"").replace(/&[a-z]+;/gi,"").trim();let a=t.match(/\[([^\]]+)\]/g);if(a&&a.length>=2){let f=t.replace(/\[([^\]]+)\]/g,"").trim();if(!/[\u4e00-\u9fa5]/.test(f))for(let g of a){let _=g.slice(1,-1);if(/[\u4e00-\u9fa5]/.test(_)&&!/全球|封装|字幕|语言|下载/.test(_)){let y=_;if(y.includes(".")){let A=y.split(".").filter(E=>E.trim());for(let E of A)if(/[\u4e00-\u9fa5]/.test(E)&&!/全\d+季/.test(E)){y=E.trim();break}}return wm.set(e,y),y}}let p=a[0].slice(1,-1),m=a[1].slice(1,-1);if(/夸克|百度|迅雷|阿里|天翼|115|下载/.test(p)&&/[\u4e00-\u9fa5]/.test(m))return wm.set(e,m),m}let o=t.indexOf("|"),c=t.lastIndexOf("|");if(o!==-1&&o!==c){let f=t.substring(o+1,c).trim();return wm.set(e,f),f}t=t.replace(/[/g,"[").replace(/]/g,"]"),t=t.replace(/\[([^\]]*)\]/g,(f,h)=>/第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+/i.test(h)?f:"").trim(),t=t.replace(/[((].*?[))]/g,"").replace(/【.*?】/g,"").trim(),t=t.replace(/\b\d+(\.\d+)?[GMK]B?\b/gi,"").replace(/\b(2160|1080|720|480)[pP]\b/gi,"").replace(/\b(4K|2K|HDR|HD|SD|FHD|UHD)\b/gi,"").replace(/\bx264|x265|H264|HEVC\b/gi,"").replace(/\bAAC|AC3|DTS|FLAC\b/gi,"").replace(/\b(10bit|8bit|60fps|120fps)\b/gi,"").replace(/\bWEB-DL\b/gi,"").replace(/\bWEB-MKV\b/gi,"").replace(/\bWEB-\b/gi,"").replace(/\bWEB\b/gi,"").replace(/\bREMUX\b/gi,"").replace(/S\d+E\d+(-S\d+E\d+)?/gi,"").replace(/完结\s*\d+\s*集/g,"").replace(/更新\s*\d+\s*集/g,"").replace(/更新至\s*\d+\s*集/g,"").replace(/更至\s*\d+\s*集/g,"").replace(/全\s*\d+\s*集/g,"").replace(/第\s*\d+\s*集/g,"").replace(/最新/g,"").replace(/臻彩/g,"").replace(I6r,"").replace(/[\u200E\u200F\u202A-\u202E]/g,"").replace(/\s+/g," ").trim();let u=t.match(/([\u4e00-\u9fa5]{2,})/);if(u){let f=u[1],h=new RegExp(f+"\\d*"+f,"g");t=t.replace(h,f)}if(t=t.replace(/\d{4}$/g,"").trim(),t=t.replace(/[((][))]/g,"").replace(/【】/g,"").replace(/\[\]/g,"").trim(),t.includes(".")){let f=t.split(".").filter(p=>p.trim()),h="";for(let p of f)if(/[\u4e00-\u9fa5]/.test(p)){h=p.trim();break}if(h){let p=h.match(/全\d+季/);if(p)t=h.substring(0,p.index).trim();else{t=h;for(let m of f){let g=m.match(/^S(\d+)$/i);if(g){t=t+" "+g[0];break}}}}}let l=!1;if(t.includes("-")){let f=t.split("-"),h="";for(let p of f)if(/[\u4e00-\u9fa5]/.test(p)){h=p.trim();break}if(h)if(/第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+/i.test(h))t=h,l=!0;else{let p=t.match(/第[一二三四五六七八九十\d]+季|S(\d+)|Season\s*(\d+)/i);if(p)return t=h+" "+p[0],l=!0,wm.set(e,t),t;t=h,l=!0}}if(t.includes("/")){let f=t.split("/");for(let h of f)if(/[\u4e00-\u9fa5]/.test(h)){t=h.trim();break}}if(!l&&t.includes(" ")){let f=t.split(" ").filter(m=>m.trim());if(f.length>1&&f[0].length===1&&/[a-zA-Z]/.test(f[0])){let m=f.slice(0,2).join(" ");return wm.set(e,m),m}if(f.length===2&&/[\u4e00-\u9fa5]/.test(f[0])&&/^(第[一二三四五六七八九十\d]+季|S\d+|Season\s*\d+)$/i.test(f[1]))return wm.set(e,t),t;let h=[],p=!1;for(let m=0;m0?t=h.join(" "):f.length>0&&(t=f[0])}t=t.replace(/[::·.。]+$/,"").replace(/\.全\d+季$/,"").replace(/\.第[一二三四五六七八九十\d]+季$/,"").replace(/\.$/,"").replace(/未删减版$/,"").replace(/无删减版$/,"").replace(/删减版$/,"").replace(/完整版$/,"").replace(/\s+$/,"").trim();let d=t||e;return wm.set(e,d),d}function C6r(e){if(!e)return"";let t=e,r=t.lastIndexOf(".");return r>0&&(t=t.substring(0,r)),t=t.replace(/\[?\d+(\.\d+)?\s*[GMK]B?\]?/gi," "),t=t.replace(/\b(2160|1080|720|480|360)[pP]\b/gi," ").replace(/\b(4K|2K|HD|SD|FHD|UHD)\b/gi," ").replace(/\b(x264|x265|H\.?264|H\.?265|HEVC|AVC)\b/gi," ").replace(/\b(AAC|AC3|DTS|FLAC|MP3)\b/gi," ").replace(/\b(HDR|DV|Dolby|Atmos)\b/gi," ").replace(/\b(BluRay|WEB-DL|DVDRip|BDRip|HDTV)\b/gi," ").replace(/[\-_.,()\[\]【】]+/g," ").replace(/\s+/g," ").trim(),t}function crt(e,t,r){let n=t;for(;n>0&&/\d/.test(e[n-1]);)n--;return!!(n>1&&e.substring(n-3,n).match(/[0-9]\.[0-9]*$/)||r999||crt(e,r,n))return!1;let i=e.substring(Math.max(0,r-10),r),a=e.substring(n,Math.min(e.length,n+10)),o=/(ep|episode|集|话|章|回|期)/i.test(i+a),c=/(gb|mb|kb|p|k|fps|bitrate|码率)/i.test(i+a);return o?!0:c?!1:s>=1&&s<=99}function w6r(e,t,r,n){let s=0,i=parseInt(t,10);return i>=1&&i<=99&&(s+=10),r>0&&/[^\w\u4e00-\u9fa5]/.test(e[r-1])&&(s+=5),n=1&&d<=999){let f=u.index+u[0].indexOf(l),h=f+l.length;crt(t,f,h)||n.push({number:String(d),start:f,end:h,priority:100})}}}let i=/(?:^|[^a-zA-Z0-9\u4e00-\u9fa5])(\d{1,3})(?![a-zA-Z0-9\u4e00-\u9fa5])/g;i.lastIndex=0;let a;for(;(a=i.exec(t))!==null;){let o=a[1],c=a.index+a[0].indexOf(o),u=c+o.length;if(x6r(t,o,c,u)){let l=w6r(t,o,c,u);n.push({number:o,start:c,end:u,priority:l})}}if(n.length===0){let o=/\b(\d{1,3})\b/g;for(o.lastIndex=0;(a=o.exec(r))!==null;){let c=a[1],u=a.index,l=u+c.length,d=parseInt(c,10);d>=1&&d<=999&&!(d>=1900&&d<=2100)&&n.push({number:c,start:u,end:l,priority:1})}}return n.length>0?(n.sort((o,c)=>c.priority-o.priority||c.start-o.start),n[0].number):"-1"}function N6r(e,t){let r=e.length,n=t.length,s=Array(r+1).fill(null).map(()=>Array(n+1).fill(0));for(let i=0;i<=r;i++)s[i][0]=i;for(let i=0;i<=n;i++)s[0][i]=i;for(let i=1;i<=r;i++)for(let a=1;a<=n;a++)e[i-1]===t[a-1]?s[i][a]=s[i-1][a-1]:s[i][a]=Math.min(s[i-1][a]+1,s[i][a-1]+1,s[i-1][a-1]+1);return s[r][n]}function O6r(e,t){let r=e.length,n=t.length,s=0,i=0,a=Array(r+1).fill(null).map(()=>Array(n+1).fill(0));for(let o=1;o<=r;o++)for(let c=1;c<=n;c++)e[o-1]===t[c-1]&&(a[o][c]=a[o-1][c-1]+1,a[o][c]>s&&(s=a[o][c],i=o));return e.substring(i-s,i)}function mR(e,t){if(!e||!t)return 0;let r=p=>String(p||"").toLowerCase().replace(/\s+/g,"").trim(),n=r(e),s=r(t);if(!n||!s)return 0;let i=ns&&(s=l,n=i)}else o>s&&(s=o,n=i)}return{episode:n,similarity:s}}var urt=new Set(["xml","json"]);function aa(e){let t=String(e||"xml").trim().toLowerCase();return urt.has(t)?t:"xml"}function D6r(e){let t=[];if(!e)return t.push("\u914D\u7F6E\u4E0D\u80FD\u4E3A\u7A7A"),{valid:!1,errors:t};if(!e.address||typeof e.address!="string")t.push("address \u5B57\u6BB5\u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");else try{let r=new URL(e.address);["http:","https:"].includes(r.protocol)||t.push("address \u5FC5\u987B\u662F http \u6216 https \u534F\u8BAE")}catch{t.push("address \u4E0D\u662F\u6709\u6548\u7684 URL")}return e.name!==void 0&&typeof e.name!="string"&&t.push("name \u5B57\u6BB5\u5FC5\u987B\u662F\u5B57\u7B26\u4E32"),e.enabled!==void 0&&typeof e.enabled!="boolean"&&t.push("enabled \u5B57\u6BB5\u5FC5\u987B\u662F\u5E03\u5C14\u503C"),e.priority!==void 0&&(typeof e.priority!="number"||e.priority<0)&&t.push("priority \u5B57\u6BB5\u5FC5\u987B\u662F\u975E\u8D1F\u6570"),e.timeout!==void 0&&(typeof e.timeout!="number"||e.timeout<1e3||e.timeout>3e4)&&t.push("timeout \u5B57\u6BB5\u5FC5\u987B\u5728 1000-30000 \u4E4B\u95F4"),{valid:t.length===0,errors:t}}function lrt(e){let t=[];if(!e)return t.push("\u914D\u7F6E\u4E0D\u80FD\u4E3A\u7A7A"),{valid:!1,errors:t};if(!e.urls||!Array.isArray(e.urls)?t.push("urls \u5B57\u6BB5\u5FC5\u987B\u662F\u6570\u7EC4"):(e.urls.length===0&&t.push("\u81F3\u5C11\u9700\u8981\u914D\u7F6E\u4E00\u4E2A\u5F39\u5E55\u6E90"),e.urls.forEach((r,n)=>{let s=D6r(r);s.valid||t.push(`\u6E90 #${n+1}: ${s.errors.join(", ")}`)})),e.autoPush!==void 0&&typeof e.autoPush!="boolean"&&t.push("autoPush \u5B57\u6BB5\u5FC5\u987B\u662F\u5E03\u5C14\u503C"),e.format!==void 0){let r=String(e.format||"").trim().toLowerCase();urt.has(r)||t.push("format \u5B57\u6BB5\u5FC5\u987B\u662F xml \u6216 json")}return e.autoPushBlacklist!==void 0&&(Array.isArray(e.autoPushBlacklist)?e.autoPushBlacklist.forEach((r,n)=>{typeof r!="string"&&t.push(`autoPushBlacklist[${n}] \u5FC5\u987B\u662F\u5B57\u7B26\u4E32`)}):t.push("autoPushBlacklist \u5B57\u6BB5\u5FC5\u987B\u662F\u6570\u7EC4")),{valid:t.length===0,errors:t}}function P6r(e){return{address:e.address.trim().replace(/\/$/,""),name:e.name||new URL(e.address).hostname,enabled:e.enabled!==!1,priority:e.priority||0,timeout:e.timeout||5e3}}function nde(e){let t={urls:e.urls.map(P6r),format:aa(e.format),autoPush:e.autoPush!==!1,autoPushBlacklist:e.autoPushBlacklist||[]};return t.urls.sort((r,n)=>n.priority-r.priority),t}Nm();ia();var Z$=1e4,frt=5*60*1e3,M6r=0,k6r=.6,B6r=60*60*1e3,hrt=50,prt=200,ide=new _t(hrt,B6r);function qA(e,t,r,n=null){let s=n||Il(e);if(!s)return;if(!r||!Array.isArray(r.episodes)){De.warn(`[DanmuService] \u5C1D\u8BD5\u8BBE\u7F6E\u65E0\u6548\u504F\u597D: anime \u7F3A\u5C11 episodes \u6570\u7EC4\uFF0Ckey=${s}`);return}let i={animeTitle:r.animeTitle,episodes:r.episodes.map(a=>({episodeId:a.episodeId,episodeTitle:a.episodeTitle}))};ide.set(s,{sourceUrl:t,anime:i}),De.info(`[DanmuService] \u504F\u597D\u5DF2\u8BB0\u5F55/\u5237\u65B0: ${s} -> ${t} (\u7F13\u5B58: ${ide.size}/${hrt})`)}function drt(e){let t=Il(e);return t?ide.get(t):null}var ade=class{constructor(){this.cache=new _t(prt,frt)}_generateKey(t,r,n){return`${encodeURIComponent(n)}:${encodeURIComponent(t)}:${r}`}get(t,r,n){let s=this._generateKey(t,r,n);return this.cache.get(s)}set(t,r,n,s){let i=this._generateKey(t,r,n);this.cache.set(i,s)}cleanup(){return this.cache.cleanup()}clear(){this.cache.clear()}get size(){return this.cache.size}getStats(){return this.cache.getStats()}},sP=new ade;setInterval(()=>{let e=sP.cleanup();e>0&&De.info(`[DanmuService] \u6E05\u7406\u4E86 ${e} \u4E2A\u8FC7\u671F\u7F13\u5B58\u9879`)},frt);async function mrt(e,t,r={}){let{timeout:n=Z$,retries:s=M6r,signal:i}=r,a=Date.now();try{let o=await ye.get(`${e.address}/api/v2/search/episodes`,{params:{anime:t},timeout:n,signal:i,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/json"}}),c=Date.now()-a;return o.data.success&&o.data.animes&&o.data.animes.length>0?{success:!0,source:e.name,sourceUrl:e.address,data:o.data,duration:c,error:null}:{success:!1,source:e.name,sourceUrl:e.address,data:null,duration:c,error:"\u672A\u627E\u5230\u5339\u914D\u7ED3\u679C"}}catch(o){let c=Date.now()-a;if(ye.isCancel(o)){let u=new Error("Aborted");throw u.name="AbortError",u}return s>0&&(o.code==="ECONNABORTED"||o.code==="ETIMEDOUT")?(De.info(`[DanmuService] ${e.name} \u8D85\u65F6\uFF0C\u91CD\u8BD5\u4E2D... (\u5269\u4F59${s}\u6B21)`),mrt(e,t,{timeout:n,retries:s-1,signal:i})):{success:!1,source:e.name,sourceUrl:e.address,data:null,duration:c,error:o.message||"\u8BF7\u6C42\u5931\u8D25"}}}var sde=5;async function U6r(e,t,r={}){let{timeout:n=Z$,signal:s,onResult:i,shouldStop:a}=r;if(!e||e.length===0)throw new Error("\u6CA1\u6709\u53EF\u7528\u7684\u5F39\u5E55\u6E90");if(!t||!t.trim())throw new Error("\u52A8\u6F2B\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A");De.info(`[DanmuService] \u{1F50D} \u5F00\u59CB\u641C\u7D22: "${t}", \u6E90\u6570\u91CF: ${e.length}, \u5E76\u53D1\u6570: ${sde}`);let o=new AbortController,c=()=>o.abort();s?.aborted?o.abort():s?.addEventListener&&s.addEventListener("abort",c,{once:!0});let u=[],l=!1;try{for(let h=0;hmrt(_,t,{timeout:n,signal:o.signal}).then(y=>({ok:!0,result:y})).catch(y=>({ok:!1,error:y}))),g=new Set(m.map((_,y)=>y));for(;g.size>0;){let y=await Promise.race(Array.from(g).map(E=>m[E].then(v=>({idx:E,payload:v}))));if(g.delete(y.idx),!y.payload.ok){let E=y.payload.error;if(E?.name==="AbortError"||o.signal.aborted)continue;De.error("[DanmuService] \u274C \u5355\u6E90\u641C\u7D22\u5F02\u5E38:",E?.message||E);continue}let A=y.payload.result;if(u.push(A),typeof i=="function")try{i(A,u)}catch(E){De.error("[DanmuService] \u274C onResult \u56DE\u8C03\u5F02\u5E38:",E?.message||E)}if(typeof a=="function"){let E=!1;try{E=!!a(A,u)}catch(v){De.error("[DanmuService] \u274C shouldStop \u56DE\u8C03\u5F02\u5E38:",v?.message||v)}if(E){l=!0,o.abort();break}}}if(l)break}}finally{s?.removeEventListener&&s.removeEventListener("abort",c)}let d=u.filter(h=>h.success).length,f=u.length-d;return De.info(`[DanmuService] \u{1F4CA} \u641C\u7D22\u5B8C\u6210: \u6210\u529F${d}\u4E2A, \u5931\u8D25${f}\u4E2A${l?" (\u63D0\u524D\u4E2D\u6B62)":""}`),u}async function F6r(e,t,r,n={}){let{timeout:s=Z$,useCache:i=!0,minSimilarity:a=k6r,signal:o}=n,c=Il(e);if(!c||c==="undefined"||e==="undefined")throw De.error(`[DanmuService] \u274C \u6807\u9898\u65E0\u6548: vodName="${e}", title="${c}"`),new Error("\u65E0\u6CD5\u8BC6\u522B\u89C6\u9891\u6807\u9898\uFF0C\u8BF7\u68C0\u67E5\u89C6\u9891\u6E90");De.info(`[DanmuService] \u{1F50D} \u5339\u914D\u5F39\u5E55: vodName="${e}", \u63D0\u53D6\u6807\u9898="${c}", \u96C6\u6570="${t}"`);let u=drt(c);if(u){De.info(`[DanmuService] \u2B50 \u53D1\u73B0\u504F\u597D\u6E90: ${u.sourceUrl}`);let v=u.anime,b=mR(c,v.animeTitle);if(De.info(`[DanmuService] \u{1F50D} \u504F\u597D\u6E90\u6807\u9898\u76F8\u4F3C\u5EA6: ${b.toFixed(4)} (\u5F53\u524D="${c}", \u504F\u597D="${v.animeTitle}")`),b<.5)De.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u6807\u9898\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\uFF0C\u8DF3\u8FC7\u504F\u597D\u6E90\uFF0C\u56DE\u9000\u5230\u5168\u91CF\u641C\u7D22");else{De.info(`[DanmuService] \u{1F50D} \u5C1D\u8BD5\u5728\u504F\u597D\u6E90\u4E2D\u5339\u914D\u96C6\u6570 (\u5171 ${v.episodes?.length||0} \u96C6)...`);let I=0;for(let D of v.episodes){let M=pR(D.episodeTitle),L=tde(M),U=tde(t);if(I++,I<=3&&(De.info(`[DanmuService] [\u7CBE\u786E\u5339\u914D ${I}] "${D.episodeTitle}"`),De.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${M}, \u6807\u51C6\u5316: ${L}, \u76EE\u6807: ${U}`)),L===U)return De.info(`[DanmuService] \u2705 \u504F\u597D\u6E90\u7CBE\u786E\u5339\u914D\u96C6\u6570 ${t} (\u6807\u51C6\u5316: ${L})`),qA(c,u.sourceUrl,v),{success:!0,source:u.sourceUrl,sourceUrl:u.sourceUrl,anime:v,episode:D,similarity:1,fromPreference:!0}}De.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u7CBE\u786E\u5339\u914D\u5931\u8D25\uFF0C\u5C1D\u8BD5\u76F8\u4F3C\u5EA6\u5339\u914D...");let{episode:T,similarity:x,matchDetails:w}=rde(c,v.episodes,t);if(w&&w.length>0){let D=w.sort((M,L)=>L.score-M.score).slice(0,3);De.info("[DanmuService] \u524D3\u4E2A\u5019\u9009\u96C6 (\u6309\u5F97\u5206\u6392\u5E8F):"),D.forEach((M,L)=>{De.info(`[DanmuService] [${L+1}] "${M.title}"`),De.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${M.extractedNum}, \u76F8\u4F3C\u5EA6: ${M.similarity.toFixed(4)}, \u5F97\u5206: ${M.score.toFixed(4)}`)})}if(T)return De.info(`[DanmuService] \u2705 \u504F\u597D\u6E90\u76F8\u4F3C\u5EA6\u5339\u914D\u6210\u529F: "${T.episodeTitle}", \u76F8\u4F3C\u5EA6=${x.toFixed(4)}`),qA(c,u.sourceUrl,v),{success:!0,source:u.sourceUrl,sourceUrl:u.sourceUrl,anime:v,episode:T,similarity:x,fromPreference:!0};De.info("[DanmuService] \u26A0\uFE0F \u504F\u597D\u6E90\u4E2D\u672A\u627E\u5230\u5339\u914D\uFF0C\u56DE\u9000\u5230\u5168\u91CF\u641C\u7D22")}}if(i)for(let v of r){let b=sP.get(c,t,v.address);if(b){let I=drt(c);if(I&&I.sourceUrl!==v.address){De.info(`[DanmuService] \u23ED\uFE0F \u7F13\u5B58\u6E90 ${v.address} \u4E0E\u504F\u597D\u6E90 ${I.sourceUrl} \u4E0D\u540C\uFF0C\u8DF3\u8FC7\u7F13\u5B58`);continue}return De.info(`[DanmuService] \u{1F4BE} \u547D\u4E2D\u7F13\u5B58: ${v.name}`),qA(c,v.address,b.anime),{success:!0,source:v.name,sourceUrl:v.address,anime:b.anime,episode:b.episode,similarity:b.similarity,fromCache:!0}}}De.info("[DanmuService] \u{1F310} \u5F00\u59CB\u5168\u91CF\u641C\u7D22...");let l=.8,d=null,f=0,h=null,p=!1,m=null,g=0,_=0,y=0;De.info(`[DanmuService] \u{1F50D} \u5F00\u59CB\u5339\u914D\u5206\u6790 (\u76EE\u6807: "${c}", \u96C6\u6570: "${t}", \u6700\u5C0F\u76F8\u4F3C\u5EA6: ${a}, \u63D0\u524D\u8FD4\u56DE\u9608\u503C: ${l}):`);let A=v=>{if(!(!v.success||!v.data?.animes))for(let b of v.data.animes){g++;let I=b.animeTitle.replace(/\(\d{4}\)/g,"").replace(/【[^】]*】/g,"").replace(/\[[^\]]*\]/g,"").replace(/\s*from\s+\w+/gi,"").replace(/第(\d+)季/g,(L,U)=>{let G=["","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341"],$=parseInt(U);return $<=10?`\u7B2C${G[$]}\u5B63`:L}).trim(),T=mR(c,I);if(De.info(`[DanmuService] [\u5C1D\u8BD5 ${g}] \u6E90="${v.source}", \u52A8\u6F2B="${b.animeTitle}"`),De.info(`[DanmuService] \u6E05\u7406\u540E\u6807\u9898: "${I}"`),De.info(`[DanmuService] \u6807\u9898\u76F8\u4F3C\u5EA6: ${T.toFixed(4)} (\u9608\u503C: ${a})`),T0){let L=D.sort((U,G)=>G.score-U.score).slice(0,5);De.info("[DanmuService] \u524D5\u4E2A\u5019\u9009\u96C6 (\u6309\u5F97\u5206\u6392\u5E8F):"),L.forEach((U,G)=>{De.info(`[DanmuService] [${G+1}] "${U.title}"`),De.info(`[DanmuService] \u63D0\u53D6\u96C6\u6570: ${U.extractedNum}, \u6807\u51C6\u5316: ${U.normalizedNum}, \u76EE\u6807: ${U.normalizedTargetEpisode||"N/A"}`),De.info(`[DanmuService] \u76F8\u4F3C\u5EA6: ${U.similarity.toFixed(4)}, \u5F97\u5206: ${U.score.toFixed(4)}`),U.episodeDiff!==void 0&&De.info(`[DanmuService] \u96C6\u6570\u5DEE: ${U.episodeDiff}, \u5956\u52B1: ${U.episodeBonus}`)})}continue}let M=T*.6+w*.4;if(De.info(`[DanmuService] \u2705 \u627E\u5230\u5339\u914D\u96C6: "${x.episodeTitle}"`),De.info(`[DanmuService] \u96C6\u6570\u76F8\u4F3C\u5EA6: ${w.toFixed(4)}, \u7EFC\u5408\u76F8\u4F3C\u5EA6: ${M.toFixed(4)}`),M>f?(f=M,d={anime:b,episode:x},h=v,De.info("[DanmuService] \u{1F31F} \u5F53\u524D\u6700\u4F73\u5339\u914D\u5DF2\u66F4\u65B0")):De.info(`[DanmuService] \u7EFC\u5408\u76F8\u4F3C\u5EA6\u4F4E\u4E8E\u5F53\u524D\u6700\u4F73 (${f.toFixed(4)})\uFF0C\u8DF3\u8FC7`),M>=l){p=!0,m={source:v.source,sourceUrl:v.sourceUrl,anime:b,episode:x,similarity:M},De.info(`[DanmuService] \u26A1 \u63D0\u524D\u8FD4\u56DE\u89E6\u53D1: source="${v.source}", anime="${b.animeTitle}", episode="${x.episodeTitle}", totalSimilarity=${M.toFixed(4)}`);return}}},E=await U6r(r,c,{timeout:s,signal:o,onResult:v=>{v.success&&v.data?.animes?De.info(`[DanmuService] \u2705 ${v.source}: \u627E\u5230 ${v.data.animes.length} \u4E2A\u52A8\u6F2B`):De.info(`[DanmuService] \u274C ${v.source}: ${v.error||"\u672A\u77E5\u9519\u8BEF"}`),A(v)},shouldStop:()=>p});return De.info(`[DanmuService] \u{1F4CA} \u5339\u914D\u7EDF\u8BA1: \u603B\u5C1D\u8BD5=${g}, \u6807\u9898\u8FC7\u6EE4=${_}, \u96C6\u6570\u8FC7\u6EE4=${y}`),p&&m?(qA(c,m.sourceUrl,m.anime),i&&sP.set(c,t,m.sourceUrl,{anime:m.anime,episode:m.episode,similarity:m.similarity}),De.info(`[DanmuService] \u2705 \u63D0\u524D\u8FD4\u56DE\u6210\u529F: ${m.anime.animeTitle} - ${m.episode.episodeTitle} (\u76F8\u4F3C\u5EA6: ${m.similarity.toFixed(2)})`),{success:!0,source:m.source,sourceUrl:m.sourceUrl,anime:m.anime,episode:m.episode,similarity:m.similarity,fromCache:!1,earlyReturned:!0,searchResults:E}):d?(qA(c,h.sourceUrl,d.anime),i&&sP.set(c,t,h.sourceUrl,{anime:d.anime,episode:d.episode,similarity:f}),De.info(`[DanmuService] \u2705 \u5339\u914D\u6210\u529F: ${d.anime.animeTitle} - ${d.episode.episodeTitle} (\u76F8\u4F3C\u5EA6: ${f.toFixed(2)}, \u7F13\u5B58: ${sP.size}/${prt})`),{success:!0,source:h.source,sourceUrl:h.sourceUrl,anime:d.anime,episode:d.episode,similarity:f,fromCache:!1}):(De.error("[DanmuService] \u274C \u672A\u627E\u5230\u5339\u914D\u7684\u5F39\u5E55"),De.error(`[DanmuService] \u8F93\u5165\u6458\u8981: vodName="${e}", \u63D0\u53D6\u6807\u9898="${c}", \u96C6\u6570="${t}"`),De.error("[DanmuService] \u53EF\u80FD\u539F\u56E0:"),De.error(`[DanmuService] 1. \u6807\u9898\u76F8\u4F3C\u5EA6\u8FC7\u4F4E (\u8FC7\u6EE4\u4E86 ${_} \u4E2A)`),De.error(`[DanmuService] 2. \u96C6\u6570\u4E0D\u5339\u914D (\u8FC7\u6EE4\u4E86 ${y} \u4E2A)`),De.error("[DanmuService] 3. \u5F39\u5E55\u6E90\u4E2D\u6CA1\u6709\u8BE5\u5267\u96C6"),{success:!1,error:"\u672A\u5339\u914D\u5230\u5F39\u5E55",searchResults:E})}async function grt(e,t,r,n={}){let s=await F6r(e,t,r,n);if(!s.success)return s;let i=aa(n.format),a=`${s.sourceUrl}/api/v2/comment/${s.episode.episodeId}?format=${encodeURIComponent(i)}`;return{...s,danmuUrl:a,format:i,matchInfo:{animeTitle:s.anime.animeTitle,episodeTitle:s.episode.episodeTitle,similarity:s.similarity}}}function $6r(e){return aa(e)==="json"?"application/json,text/plain,*/*":"application/xml,text/plain,*/*"}async function _rt(e,t={}){let{timeout:r=Z$,signal:n}=t,s=aa(t.format);try{De.info(`[DanmuService] \u{1F4E5} \u83B7\u53D6\u5F39\u5E55\u5185\u5BB9: format=${s}, url=${e}`);let i=await ye.get(e,{responseType:"text",timeout:r,signal:n,headers:{"User-Agent":"CatPaw/1.0",Accept:$6r(s)}});return De.info(`[DanmuService] \u2705 \u5F39\u5E55\u5185\u5BB9\u83B7\u53D6\u6210\u529F: format=${s}`),i.data}catch(i){if(ye.isCancel(i)){let a=new Error("Aborted");throw a.name="AbortError",a}throw De.error(`[DanmuService] \u274C \u83B7\u53D6\u5F39\u5E55\u5185\u5BB9\u5931\u8D25: ${i.message}`),new Error(`\u83B7\u53D6\u5F39\u5E55\u5185\u5BB9\u5931\u8D25: ${i.message}`)}}var e9=new Map,ode=new Map;function Art(e,t,r=10*60*1e3){e9.set(e,t);let n=ode.get(e);n&&clearTimeout(n);let s=setTimeout(()=>{e9.delete(e),ode.delete(e)},r);typeof s?.unref=="function"&&s.unref(),ode.set(e,s)}function Ert(){return e9.entries()}function t9(){return e9.size}Nm();var Bxt=Ne(require("net"),1),fT=Ne(require("path"),1),qSe=Ne(require("fs"),1);Nm();var VH=9321,Uxt=15e3,CXr=300,xXr=process.env.NODE_PATH?fT.default.resolve(process.env.NODE_PATH):process.cwd();function jH(){return xXr}function wXr(e){if(typeof De?.warn=="function"){De.warn(e);return}if(typeof De?.info=="function"){De.info(e);return}console.warn(e)}function Fxt(){return fT.default.join(jH(),"runtime","danmu_api","config",".env")}function NXr(){return fT.default.join(jH(),"runtime","danmu_api","run","danmu_api.status.json")}function $xt(e){let t=NXr();qSe.default.mkdirSync(fT.default.dirname(t),{recursive:!0}),qSe.default.writeFileSync(t,JSON.stringify(e,null,2),"utf8")}function OXr(e){return new Promise(t=>setTimeout(t,e))}async function qxt(e=VH,t="127.0.0.1",r=1200){return await new Promise(n=>{let s=Bxt.default.createConnection({host:t,port:e}),i=!1,a=o=>{if(!i){i=!0;try{s.destroy()}catch{}n(o)}};s.setTimeout(r),s.once("connect",()=>a(!0)),s.once("timeout",()=>a(!1)),s.once("error",()=>a(!1))})}async function DXr(e=VH,t=Uxt){let r=Date.now();for(;Date.now()-r(kxt(),RXr)),n=r&&typeof r.startDanmuApiServer=="function"?r.startDanmuApiServer:null,s;return n?s=await n({host:"127.0.0.1",proxyHost:"127.0.0.1",port:e}):s={port:e,proxyPort:5321,mode:"side-effect"},$xt({pid:process.pid,port:s?.port||e,proxyPort:s?.proxyPort||5321,envPath:t,startedAt:new Date().toISOString(),entry:fT.default.join(jH(),"vendor","danmu_api","danmu_api","server.js"),state:"running",mode:n?"in-process":"in-process-side-effect"}),s}async function hT(e={}){let t=Number(e.port||VH),r=Number(e.timeoutMs||Uxt);return await qxt(t)?($xt({pid:process.pid,port:t,envPath:Fxt(),startedAt:new Date().toISOString(),entry:fT.default.join(jH(),"vendor","danmu_api","danmu_api","server.js"),state:"running",mode:"attached"}),{ok:!0,started:!1,port:t}):(wXr(`[DanmuRuntime] \u68C0\u6D4B\u5230 danmu_api \u672A\u76D1\u542C\uFF0C\u51C6\u5907\u62C9\u8D77: port=${t}`),await PXr(t),await DXr(t,r)?(De.info(`[DanmuRuntime] danmu_api \u5DF2\u5C31\u7EEA: port=${t}`),{ok:!0,started:!0,port:t}):(De.error(`[DanmuRuntime] danmu_api \u542F\u52A8\u540E\u4ECD\u672A\u76D1\u542C: port=${t}, timeout=${r}ms`),{ok:!1,started:!0,port:t}))}jd();var KH={updatedAt:0,spiderKey:"",flag:"",id:"",episodeKey:"",vodName:"",episodeName:"",episodeNumber:"",title:""};function jxt(e={}){return KH={...KH,...e,updatedAt:Date.now()},KH}function hE(){return{...KH}}GH();Nm();jd();function zxt(e){return typeof e!="string"?e:e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g,"")}function Dk(e,t="xml"){if(!e||typeof e!="string")return 0;if(aa(t)==="json"){try{let n=JSON.parse(e);if(Array.isArray(n?.comments))return n.comments.length;if(Number.isFinite(n?.count))return n.count;if(Array.isArray(n))return n.length}catch{}return 0}let r=e.match(//g);return r?r.length:0}function Pk(e="xml"){return aa(e)==="json"?"application/json; charset=utf-8":"application/xml; charset=utf-8"}function VSe(e="xml"){return aa(e)==="json"?"application/json,text/plain,*/*":"application/xml,text/plain,*/*"}async function jSe(e,t,r=400,n={}){if(!e.raw.writableEnded){De.error(`[DanmuProxy] Error: ${t}`);try{tn.isAvailable()?(De.info(`[DanmuProxy] \u53D1\u9001\u9519\u8BEF\u63D0\u793A: "${t}"`),await tn.toast(t,{duration:3})===null?De.warn("[DanmuProxy] \u9519\u8BEF\u63D0\u793A\u53D1\u9001\u5931\u8D25 (host bridge \u8FD4\u56DE null)"):De.info("[DanmuProxy] \u9519\u8BEF\u63D0\u793A\u53D1\u9001\u6210\u529F")):De.error("[DanmuProxy] host bridge unavailable (sendError)")}catch(s){De.error(`[DanmuProxy] \u53D1\u9001\u9519\u8BEF\u63D0\u793A\u5931\u8D25: ${s.message}`)}aa(n.format)==="json"?e.code(r).send({error:t}):e.code(r).header("Content-Type",Pk("xml")).send('')}}vr();function Yxt(e,t="/"){let r=String(e||"").trim(),n=String(t||"/").trim()||"/";if(!r)throw new Error("invalid danmu source");let s;try{s=new URL(r)}catch{throw new Error(`invalid danmu source: ${r}`)}let i=n.startsWith("/")?n:`/${n}`;return new URL(i,`${s.origin}/`).toString()}function GXr(e){if(!e)return"unknown error";let t=e?.code||"",r=e?.response?.status,n=e?.config?.timeout,i=[e?.message||String(e)];return t&&i.push(`code=${t}`),r!==void 0&&i.push(`status=${r}`),n!==void 0&&i.push(`timeout=${n}ms`),i.join(", ")}function zXr(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||r.includes("timeout")?"timeout":t==="ECONNREFUSED"?"conn_refused":t==="ECONNRESET"?"conn_reset":t==="ENOTFOUND"||t==="EAI_AGAIN"?"dns_error":String(e?.name||"")==="AbortError"?"aborted":"other"}async function Qxt(e,t){let r;try{r=new URL(t)}catch{return{ok:!1,reason:"invalid danmu source url"}}if(r.protocol!=="http:"&&r.protocol!=="https:")return{ok:!1,reason:`protocol not allowed: ${r.protocol}`};let n;try{n=await Rh(e)}catch{n=null}let s=new Set(Array.isArray(n?.urls)?n.urls.map(i=>{try{return new URL(i.address).host}catch{return""}}).filter(Boolean):[]);return s.size>0?s.has(r.host)?{ok:!0}:{ok:!1,reason:`danmu source not in allowlist: ${r.host}`}:await pT(t)}function YXr(e){try{return new URL(String(e||""),"http://127.0.0.1").searchParams.get("format")}catch{return""}}var Rh=async e=>{let t=await e.db.getObjectDefault("/danmu");return nde(t||e.config.danmu)},aJe=async(e,t)=>{let r=lrt(t);if(!r.valid)throw new Error(`\u914D\u7F6E\u9A8C\u8BC1\u5931\u8D25: ${r.errors.join("; ")}`);let n=nde(t);await e.db.push("/danmu",n)},oJe=async e=>{await e.db.delete("/danmu")};async function v$(e){e.get("/setting",async(t,r)=>{r.send({code:0,data:await Rh(t.server)})}),e.put("/setting",async(t,r)=>{try{await aJe(t.server,t.body),r.send({code:0,message:"\u914D\u7F6E\u4FDD\u5B58\u6210\u529F"})}catch(n){r.send({code:1,message:n.message})}}),e.delete("/setting",async(t,r)=>{await oJe(t.server),r.send({code:0})}),e.get("/search",async(t,r)=>{let n=Date.now(),{source:s,anime:i}=t.query||{};try{if(!s||!i)return De.warn(`[DanmuManualSearch] \u7F3A\u5C11\u53C2\u6570: source="${s||""}", anime="${i||""}"`),r.code(400).send({success:!1,message:"missing source or anime"});let a=await Qxt(t.server,s);if(!a.ok)return De.warn(`[DanmuManualSearch] \u88AB\u62D2\u7EDD: ${a.reason}`),r.code(403).send({success:!1,message:a.reason});let o=Yxt(s,"/api/v2/search/episodes");await hT(),De.info(`[DanmuManualSearch] \u8BF7\u6C42\u5F00\u59CB: anime="${i}", source="${s}", target="${o}"`);let c=await ye.get(o,{params:{anime:i},timeout:15e3,headers:{"User-Agent":"CatPaw/1.0",Accept:"application/json"}}),u=Array.isArray(c?.data?.animes)?c.data.animes:[],l=u.slice(0,5).map(d=>d?.animeTitle).filter(Boolean);De.info(`[DanmuManualSearch] \u8BF7\u6C42\u6210\u529F: anime="${i}", source="${s}", status=${c.status}, success=${c?.data?.success}, animes=${u.length}, duration=${Date.now()-n}ms, preview=${JSON.stringify(l)}`),r.send(c.data)}catch(a){let o=a?.response?.status||502,c=a?.response?.data;De.error(`[DanmuManualSearch] \u8BF7\u6C42\u5931\u8D25: anime="${i||""}", source="${s||""}", status=${o}, duration=${Date.now()-n}ms, message="${a.message||"danmu search proxy failed"}", response=${typeof c=="string"?c.slice(0,300):JSON.stringify(c||{})}`),r.code(o).send({success:!1,message:a.message||"danmu search proxy failed"})}}),e.get("/comment",async(t,r)=>{let n=Date.now(),{source:s,episodeId:i}=t.query||{},a=aa(t.query?.format);try{if(!s||!i)return De.warn(`[DanmuManualComment] \u7F3A\u5C11\u53C2\u6570: source="${s||""}", episodeId="${i||""}", format="${a}"`),r.code(400).send({code:1,message:"missing source or episodeId"});let o=await Qxt(t.server,s);if(!o.ok)return De.warn(`[DanmuManualComment] \u88AB\u62D2\u7EDD: ${o.reason}`),r.code(403).send({code:1,message:o.reason});let c=Yxt(s,`/api/v2/comment/${i}`);await hT(),De.info(`[DanmuManualComment] \u8BF7\u6C42\u5F00\u59CB: source="${s}", episodeId="${i}", format="${a}", target="${c}"`);let u=await ye.get(c,{params:{format:a},responseType:"text",timeout:1e4,headers:{"User-Agent":"CatPaw/1.0",Accept:VSe(a)}}),l=typeof u.data=="string"?u.data.length:0,d=Dk(u.data,a);De.info(`[DanmuManualComment] \u8BF7\u6C42\u6210\u529F: source="${s}", episodeId="${i}", format="${a}", status=${u.status}, contentLength=${l}, danmuCount=${d}, duration=${Date.now()-n}ms`),r.type(Pk(a)).send(u.data)}catch(o){let c=o?.response?.status||502,u=o?.response?.data;De.error(`[DanmuManualComment] \u8BF7\u6C42\u5931\u8D25: source="${s||""}", episodeId="${i||""}", status=${c}, duration=${Date.now()-n}ms, message="${o.message||"danmu comment proxy failed"}", response=${typeof u=="string"?u.slice(0,300):JSON.stringify(u||{})}`),r.code(c).send({code:1,message:o.message||"danmu comment proxy failed"})}}),e.get("/current-play",async(t,r)=>{r.send({code:0,data:hE()})}),e.post("/push",async(t,r)=>{let{url:n,sourceUrl:s,anime:i,title:a,flag:o,id:c}=t.body,u=aa(t.body?.format||YXr(n)),l=Date.now(),d=0;De.info(`[DanmuManualPush] \u6536\u5230\u63A8\u9001\u8BF7\u6C42: title="${a||""}", sourceUrl="${s||""}", animeTitle="${i?.animeTitle||""}", episodes=${i?.episodes?.length||0}, format="${u}", flag="${o||""}", id="${c||""}", url="${n||""}"`),qA(a,s,i,a);let f=t9();if(De.info(`[DanmuManualPush] autoPushContext \u5927\u5C0F: ${f}`),f>0)for(let[p,m]of Ert()){let g=mR(a,m.rawTitle);g>=.5&&(De.info(`[DanmuManualPush] \u547D\u4E2D autoPushContext: ctxKey="${p}", rawTitle="${m.rawTitle}", autoKey="${m.autoKey}", score=${g.toFixed(4)}`),qA(m.autoKey,s,i))}let h=/^https?:\/\//i.test(n)?n:`http://127.0.0.1:${t.server.address().port}${n.startsWith("/")?n:`/${n}`}`;De.info(`[DanmuDiag][ManualPush] stage=prepare sourceUrl="${s||""}" format="${u}" danmuUrl="${h}" localServerPort=${t.server.address().port}`);try{De.info(`[DanmuDiag][ManualPush] stage=fetch_local_proxy_start timeout=10000 url="${h}"`);let p=Date.now(),m=await ye.get(h,{responseType:"text",timeout:1e4,headers:{"User-Agent":"CatPaw/1.0",Accept:VSe(u)}});De.info(`[DanmuDiag][ManualPush] stage=fetch_local_proxy_ok status=${m.status} duration=${Date.now()-p}ms url="${h}"`);let g=m.data;d=Dk(g,u),De.info(`[DanmuManualPush] \u83B7\u53D6\u5F39\u5E55\u6210\u529F: title="${a||""}", sourceUrl="${s||""}", format="${u}", danmuUrl="${h}", danmuCount=${d}, duration=${Date.now()-l}ms`),De.info(`[DanmuManualPushFlow] \u51C6\u5907\u63A8\u9001\u5230\u64AD\u653E\u5668: title="${a||""}", format="${u}", url="${h}", danmuCount=${d}`),De.info(`[DanmuDiag][ManualPush] stage=player_push_start danmuCount=${d} url="${h}"`);let _=await tn.pushDanmu(h);De.info(`[DanmuDiag][ManualPush] stage=player_push_done result=${_===null?"null":"ok"} url="${h}"`);let y=await tn.toast(`\u5F39\u5E55\u63A8\u9001\u6210\u529F\uFF08${d}\u6761\uFF09`,{duration:2});De.info(`[DanmuDiag][ManualPush] stage=player_toast_done result=${y===null?"null":"ok"} danmuCount=${d}`),De.info(`[DanmuManualPushFlow] \u5DF2\u53D1\u9001 danmuPush/toast: title="${a||""}", danmuCount=${d}`)}catch(p){let m=zXr(p),g=GXr(p),_=p?.response?.status;console.error("[ManualPush] \u83B7\u53D6\u5F39\u5E55\u5931\u8D25:",p.message),De.error(`[DanmuDiag][ManualPush] stage=fetch_local_proxy_fail type=${m} detail="${g}" url="${h}" duration=${Date.now()-l}ms`),De.error(`[DanmuManualPush] \u83B7\u53D6\u5F39\u5E55\u5931\u8D25: title="${a||""}", sourceUrl="${s||""}", format="${u}", danmuUrl="${h}", duration=${Date.now()-l}ms, message="${p.message}"`),De.info(`[DanmuDiag][ManualPush] stage=player_push_fallback_start url="${h}"`);let y=await tn.pushDanmu(h);De.info(`[DanmuDiag][ManualPush] stage=player_push_fallback_done result=${y===null?"null":"ok"} url="${h}"`);let A=_===429?"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5":`\u5F39\u5E55\u83B7\u53D6\u5931\u8D25: ${p.message}`,E=await tn.toast(A,{duration:2});return De.info(`[DanmuDiag][ManualPush] stage=player_toast_fail_done result=${E===null?"null":"ok"} status=${_||0}`),r.send({code:_===429?429:1,danmuCount:0,message:_===429?"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5":p.message||"\u5F39\u5E55\u83B7\u53D6\u5931\u8D25"})}r.send({code:0,danmuCount:d})}),e.get("/bundle.js",(t,r)=>{r.type("application/javascript; charset=utf-8").send(globalThis.danmuBundle||"")}),e.get("/fe",(t,r)=>{r.type("text/html").send(` @@ -8546,102 +10511,105 @@ Input: `+this.err.str)}[Symbol.iterator](){return this._index=0,{next:function() - `)})}function YBr(e){return typeof e!="string"?e:e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g,"")}function WBr(e){if(!e||typeof e!="string")return 0;let t=e.match(//g);return t?t.length:0}async function sU(e,t,r=400){if(!e.raw.writableEnded){Oe.error(`[DanmuProxy] Error: ${t}`);try{Xr.isAvailable()?(Oe.info(`[DanmuProxy] \u53D1\u9001\u9519\u8BEF\u63D0\u793A: "${t}"`),await Xr.toast(t,{duration:3})===null?Oe.warn("[DanmuProxy] \u9519\u8BEF\u63D0\u793A\u53D1\u9001\u5931\u8D25 (host bridge \u8FD4\u56DE null)"):Oe.info("[DanmuProxy] \u9519\u8BEF\u63D0\u793A\u53D1\u9001\u6210\u529F")):Oe.error("[DanmuProxy] host bridge unavailable (sendError)")}catch(n){Oe.error("[DanmuProxy] \u53D1\u9001\u9519\u8BEF\u63D0\u793A\u5931\u8D25:",n.message)}e.code(r).header("Content-Type","application/xml").send('')}}async function XBr(e,t){let r=new AbortController;e.raw.on("aborted",()=>{r.abort(),Oe.info("[DanmuProxy] Client disconnected, aborting danmu processing.")});try{let{name:n,episodeNumber:i}=e.query;if(!n||!i)return await sU(t,"\u7F3A\u5C11\u5FC5\u8981\u53C2\u6570: name \u548C episodeNumber",400);let s=await $g(e.server);if(!s?.urls||s.urls.length===0)return await sU(t,"\u6CA1\u6709\u914D\u7F6E\u5F39\u5E55\u6E90",500);Oe.info(`[DanmuProxy] Requesting danmu: name="${n}", episode="${i}"`),await ab(),Oe.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u8BF7\u6C42\u5F00\u59CB: rawName="${n}", extractedTitle="${vl(n)}", episode="${i}", sources=${s.urls.length}`);let a=await yze(n,i,s.urls,{timeout:8e3,useCache:!0,minSimilarity:.5,signal:r.signal});if(r.signal.aborted)return;if(!a.success)return Oe.error(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5339\u914D\u5931\u8D25: rawName="${n}", extractedTitle="${vl(n)}", episode="${i}", error="${a.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55\uFF0C\u8BF7\u624B\u52A8\u63A8\u9001"}"`),await sU(t,a.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55\uFF0C\u8BF7\u624B\u52A8\u63A8\u9001",404);Oe.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5339\u914D\u6210\u529F: rawName="${n}", extractedTitle="${vl(n)}", episode="${i}", animeTitle="${a.matchInfo?.animeTitle||""}", matchedEpisode="${a.matchInfo?.episodeTitle||""}", sourceUrl="${a.sourceUrl||""}", similarity=${a.similarity}`),Oe.info(`[DanmuProxy] Match successful: ${a.danmuUrl}`);let o=await _ze(a.danmuUrl,{signal:r.signal,timeout:1e4});if(r.signal.aborted)return;let u=WBr(o);Oe.info(`[DanmuProxy] Danmu loaded: ${u} items`),Oe.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5F39\u5E55\u52A0\u8F7D\u6210\u529F: rawName="${n}", episode="${i}", danmuCount=${u}, danmuUrl="${a.danmuUrl}"`);let c="";a.fromPreference?c=`\u5F39\u5E55\u5339\u914D(\u504F\u597D): ${a.matchInfo.animeTitle} ${a.matchInfo.episodeTitle} (${u}\u6761)`:a.fromCache?c=`\u5F39\u5E55\u5339\u914D(\u7F13\u5B58): ${a.matchInfo.animeTitle} ${a.matchInfo.episodeTitle} (${u}\u6761)`:c=`\u5F39\u5E55\u5339\u914D: ${a.matchInfo.animeTitle} ${a.matchInfo.episodeTitle} (${u}\u6761)`,Oe.info(`[DanmuProxy] \u51C6\u5907\u53D1\u9001\u63D0\u793A: "${c}"`);try{Xr.isAvailable()?(Oe.info("[DanmuProxy] \u8C03\u7528 hostBridge.toast..."),await Xr.toast(c,{duration:2})===null?Oe.info("[DanmuProxy] host bridge \u8FD4\u56DE null (\u53EF\u80FD\u662F Dart \u901A\u4FE1\u5931\u8D25)"):Oe.info("[DanmuProxy] Toast \u63D0\u793A\u53D1\u9001\u6210\u529F")):Oe.error("[DanmuProxy] host bridge unavailable")}catch(d){Oe.error("[DanmuProxy] Toast \u63D0\u793A\u53D1\u9001\u5931\u8D25:",d.message)}let l=YBr(o);t.header("Content-Type","application/xml").send(l)}catch(n){if(n.name==="AbortError"||r.signal.aborted){Oe.info("[DanmuProxy] Request was aborted, ignoring further processing.");return}Oe.error(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5F02\u5E38: rawName="${e?.query?.name||""}", episode="${e?.query?.episodeNumber||""}", message="${n.message}"`),await sU(t,`\u5F39\u5E55\u52A0\u8F7D\u5931\u8D25: ${n.message}`,500)}}var BAt=XBr;Kt();var ZBr={xml:!1,decodeEntities:!0},wO=ZBr,UAt={_useHtmlParser2:!0,xmlMode:!0};function IO(e){return e?.xml?typeof e.xml=="boolean"?UAt:{...UAt,...e.xml}:e??void 0}var wy={};ys(wy,{contains:()=>Hge,html:()=>_vt,merge:()=>K3r,parseHTML:()=>j3r,root:()=>H3r,text:()=>Sy,xml:()=>Avt});var Ey={};ys(Ey,{DocumentPosition:()=>kl,append:()=>w3r,appendChild:()=>S3r,compareDocumentPosition:()=>hvt,existsOne:()=>fvt,filter:()=>lI,find:()=>_U,findAll:()=>T3r,findOne:()=>AU,findOneChild:()=>C3r,getAttributeValue:()=>A3r,getChildren:()=>cI,getElementById:()=>k3r,getElements:()=>D3r,getElementsByClassName:()=>O3r,getElementsByTagName:()=>db,getElementsByTagType:()=>P3r,getFeed:()=>jge,getInnerHTML:()=>_3r,getName:()=>b3r,getOuterHTML:()=>lvt,getParent:()=>dvt,getSiblings:()=>Uge,getText:()=>mU,hasAttrib:()=>v3r,hasChildren:()=>kn,innerText:()=>kO,isCDATA:()=>aI,isComment:()=>lb,isDocument:()=>Wd,isTag:()=>ot,isText:()=>Qu,nextElementSibling:()=>gU,prepend:()=>x3r,prependChild:()=>I3r,prevElementSibling:()=>yU,removeElement:()=>Qm,removeSubsets:()=>M3r,replaceElement:()=>E3r,testElement:()=>R3r,textContent:()=>zm,uniqueSort:()=>vy});var Ur;(function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"})(Ur||(Ur={}));function qAt(e){return e.type===Ur.Tag||e.type===Ur.Script||e.type===Ur.Style}var jAt=Ur.Root,HAt=Ur.Text,KAt=Ur.Directive,VAt=Ur.Comment,zAt=Ur.Script,QAt=Ur.Style,GAt=Ur.Tag,YAt=Ur.CDATA,WAt=Ur.Doctype;var aU=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(t){this.parent=t}get previousSibling(){return this.prev}set previousSibling(t){this.prev=t}get nextSibling(){return this.next}set nextSibling(t){this.next=t}cloneNode(t=!1){return NO(this,t)}},xO=class extends aU{constructor(t){super(),this.data=t}get nodeValue(){return this.data}set nodeValue(t){this.data=t}},Dp=class extends xO{constructor(){super(...arguments),this.type=Ur.Text}get nodeType(){return 3}},ob=class extends xO{constructor(){super(...arguments),this.type=Ur.Comment}get nodeType(){return 8}},ub=class extends xO{constructor(t,r){super(r),this.name=t,this.type=Ur.Directive}get nodeType(){return 1}},CO=class extends aU{constructor(t){super(),this.children=t}get firstChild(){var t;return(t=this.children[0])!==null&&t!==void 0?t:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(t){this.children=t}},TO=class extends CO{constructor(){super(...arguments),this.type=Ur.CDATA}get nodeType(){return 4}},Pc=class extends CO{constructor(){super(...arguments),this.type=Ur.Root}get nodeType(){return 9}},cb=class extends CO{constructor(t,r,n=[],i=t==="script"?Ur.Script:t==="style"?Ur.Style:Ur.Tag){super(n),this.name=t,this.attribs=r,this.type=i}get nodeType(){return 1}get tagName(){return this.name}set tagName(t){this.name=t}get attributes(){return Object.keys(this.attribs).map(t=>{var r,n;return{name:t,value:this.attribs[t],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[t],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[t]}})}};function ot(e){return qAt(e)}function aI(e){return e.type===Ur.CDATA}function Qu(e){return e.type===Ur.Text}function lb(e){return e.type===Ur.Comment}function oU(e){return e.type===Ur.Directive}function Wd(e){return e.type===Ur.Root}function kn(e){return Object.prototype.hasOwnProperty.call(e,"children")}function NO(e,t=!1){let r;if(Qu(e))r=new Dp(e.data);else if(lb(e))r=new ob(e.data);else if(ot(e)){let n=t?Dge(e.children):[],i=new cb(e.name,{...e.attribs},n);n.forEach(s=>s.parent=i),e.namespace!=null&&(i.namespace=e.namespace),e["x-attribsNamespace"]&&(i["x-attribsNamespace"]={...e["x-attribsNamespace"]}),e["x-attribsPrefix"]&&(i["x-attribsPrefix"]={...e["x-attribsPrefix"]}),r=i}else if(aI(e)){let n=t?Dge(e.children):[],i=new TO(n);n.forEach(s=>s.parent=i),r=i}else if(Wd(e)){let n=t?Dge(e.children):[],i=new Pc(n);n.forEach(s=>s.parent=i),e["x-mode"]&&(i["x-mode"]=e["x-mode"]),r=i}else if(oU(e)){let n=new ub(e.name,e.data);e["x-name"]!=null&&(n["x-name"]=e["x-name"],n["x-publicId"]=e["x-publicId"],n["x-systemId"]=e["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${e.type}`);return r.startIndex=e.startIndex,r.endIndex=e.endIndex,e.sourceCodeLocation!=null&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function Dge(e){let t=e.map(r=>NO(r,!0));for(let r=1;r\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(e=>e.charCodeAt(0)));var cU=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(e=>e.charCodeAt(0)));var kge,e3r=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),uI=(kge=String.fromCodePoint)!==null&&kge!==void 0?kge:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function RO(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=e3r.get(e))!==null&&t!==void 0?t:e}var oa;(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(oa||(oa={}));var t3r=32,Dl;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(Dl||(Dl={}));function Oge(e){return e>=oa.ZERO&&e<=oa.NINE}function r3r(e){return e>=oa.UPPER_A&&e<=oa.UPPER_F||e>=oa.LOWER_A&&e<=oa.LOWER_F}function n3r(e){return e>=oa.UPPER_A&&e<=oa.UPPER_Z||e>=oa.LOWER_A&&e<=oa.LOWER_Z||Oge(e)}function i3r(e){return e===oa.EQUALS||n3r(e)}var aa;(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(aa||(aa={}));var Vm;(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(Vm||(Vm={}));var lU=class{constructor(t,r,n){this.decodeTree=t,this.emitCodePoint=r,this.errors=n,this.state=aa.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Vm.Strict}startEntity(t){this.decodeMode=t,this.state=aa.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,r){switch(this.state){case aa.EntityStart:return t.charCodeAt(r)===oa.NUM?(this.state=aa.NumericStart,this.consumed+=1,this.stateNumericStart(t,r+1)):(this.state=aa.NamedEntity,this.stateNamedEntity(t,r));case aa.NumericStart:return this.stateNumericStart(t,r);case aa.NumericDecimal:return this.stateNumericDecimal(t,r);case aa.NumericHex:return this.stateNumericHex(t,r);case aa.NamedEntity:return this.stateNamedEntity(t,r)}}stateNumericStart(t,r){return r>=t.length?-1:(t.charCodeAt(r)|t3r)===oa.LOWER_X?(this.state=aa.NumericHex,this.consumed+=1,this.stateNumericHex(t,r+1)):(this.state=aa.NumericDecimal,this.stateNumericDecimal(t,r))}addToNumericResult(t,r,n,i){if(r!==n){let s=n-r;this.result=this.result*Math.pow(i,s)+parseInt(t.substr(r,s),i),this.consumed+=s}}stateNumericHex(t,r){let n=r;for(;r>14;for(;r>14,s!==0){if(a===oa.SEMI)return this.emitNamedEntityData(this.treeIndex,s,this.consumed+this.excess);this.decodeMode!==Vm.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;let{result:r,decodeTree:n}=this,i=(n[r]&Dl.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,i,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,r,n){let{decodeTree:i}=this;return this.emitCodePoint(r===1?i[t]&~Dl.VALUE_LENGTH:i[t+1],n),r===3&&this.emitCodePoint(i[t+2],n),n}end(){var t;switch(this.state){case aa.NamedEntity:return this.result!==0&&(this.decodeMode!==Vm.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case aa.NumericDecimal:return this.emitNumericEntity(0,2);case aa.NumericHex:return this.emitNumericEntity(0,3);case aa.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case aa.EntityStart:return 0}}};function ZAt(e){let t="",r=new lU(e,n=>t+=uI(n));return function(i,s){let a=0,o=0;for(;(o=i.indexOf("&",o))>=0;){t+=i.slice(a,o),r.startEntity(s);let c=r.write(i,o+1);if(c<0){a=o+r.end();break}a=o+c,o=c===0?a+1:a}let u=t+i.slice(a);return t="",u}}function Pge(e,t,r,n){let i=(t&Dl.BRANCH_LENGTH)>>7,s=t&Dl.JUMP_TABLE;if(i===0)return s!==0&&n===s?r:-1;if(s){let u=n-s;return u<0||u>=i?-1:e[r+u]-1}let a=r,o=a+i-1;for(;a<=o;){let u=a+o>>>1,c=e[u];if(cn)o=u-1;else return e[u+i]}return-1}var LYn=ZAt(uU),BYn=ZAt(cU);function dU(e){for(let t=1;t$\x80-\uFFFF]/g,evt=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),tvt=String.prototype.codePointAt!=null?(e,t)=>e.codePointAt(t):(e,t)=>(e.charCodeAt(t)&64512)===55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t);function DO(e){let t="",r=0,n;for(;(n=Mge.exec(e))!==null;){let i=n.index,s=e.charCodeAt(i),a=evt.get(s);a!==void 0?(t+=e.substring(r,i)+a,r=i+1):(t+=`${e.substring(r,i)}&#x${tvt(e,i).toString(16)};`,r=Mge.lastIndex+=+((s&64512)===55296))}return t+e.substr(r)}function Lge(e,t){return function(n){let i,s=0,a="";for(;i=e.exec(n);)s!==i.index&&(a+=n.substring(s,i.index)),a+=t.get(i[0].charCodeAt(0)),s=i.index+1;return a+n.substring(s)}}var rvt=Lge(/[&<>'"]/g,evt),fU=Lge(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),pU=Lge(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var nvt;(function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"})(nvt||(nvt={}));var ivt;(function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"})(ivt||(ivt={}));var ovt=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),uvt=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e]));var o3r=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function u3r(e){return e.replace(/"/g,""")}function c3r(e,t){var r;if(!e)return;let n=((r=t.encodeEntities)!==null&&r!==void 0?r:t.decodeEntities)===!1?u3r:t.xmlMode||t.encodeEntities!=="utf8"?DO:fU;return Object.keys(e).map(i=>{var s,a;let o=(s=e[i])!==null&&s!==void 0?s:"";return t.xmlMode==="foreign"&&(i=(a=uvt.get(i))!==null&&a!==void 0?a:i),!t.emptyAttrs&&!t.xmlMode&&o===""?i:`${i}="${n(o)}"`}).join(" ")}var cvt=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function Fge(e,t={}){let r="length"in e?e:[e],n="";for(let i=0;i0&&(n+=Fge(e.children,t)),(t.xmlMode||!cvt.has(e.name))&&(n+=``)),n}function h3r(e){return`<${e.data}>`}function m3r(e,t){var r;let n=e.data||"";return((r=t.encodeEntities)!==null&&r!==void 0?r:t.decodeEntities)!==!1&&!(!t.xmlMode&&e.parent&&o3r.has(e.parent.name))&&(n=t.xmlMode||t.encodeEntities!=="utf8"?DO(n):pU(n)),n}function g3r(e){return``}function y3r(e){return``}function lvt(e,t){return hU(e,t)}function _3r(e,t){return kn(e)?e.children.map(r=>lvt(r,t)).join(""):""}function mU(e){return Array.isArray(e)?e.map(mU).join(""):ot(e)?e.name==="br"?` -`:mU(e.children):aI(e)?mU(e.children):Qu(e)?e.data:""}function zm(e){return Array.isArray(e)?e.map(zm).join(""):kn(e)&&!lb(e)?zm(e.children):Qu(e)?e.data:""}function kO(e){return Array.isArray(e)?e.map(kO).join(""):kn(e)&&(e.type===Ur.Tag||aI(e))?kO(e.children):Qu(e)?e.data:""}function cI(e){return kn(e)?e.children:[]}function dvt(e){return e.parent||null}function Uge(e){let t=dvt(e);if(t!=null)return cI(t);let r=[e],{prev:n,next:i}=e;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;i!=null;)r.push(i),{next:i}=i;return r}function A3r(e,t){var r;return(r=e.attribs)===null||r===void 0?void 0:r[t]}function v3r(e,t){return e.attribs!=null&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&e.attribs[t]!=null}function b3r(e){return e.name}function gU(e){let{next:t}=e;for(;t!==null&&!ot(t);)({next:t}=t);return t}function yU(e){let{prev:t}=e;for(;t!==null&&!ot(t);)({prev:t}=t);return t}function Qm(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){let t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}function E3r(e,t){let r=t.prev=e.prev;r&&(r.next=t);let n=t.next=e.next;n&&(n.prev=t);let i=t.parent=e.parent;if(i){let s=i.children;s[s.lastIndexOf(e)]=t,e.parent=null}}function S3r(e,t){if(Qm(t),t.next=null,t.parent=e,e.children.push(t)>1){let r=e.children[e.children.length-2];r.next=t,t.prev=r}else t.prev=null}function w3r(e,t){Qm(t);let{parent:r}=e,n=e.next;if(t.next=n,t.prev=e,e.next=t,t.parent=r,n){if(n.prev=t,r){let i=r.children;i.splice(i.lastIndexOf(n),0,t)}}else r&&r.children.push(t)}function I3r(e,t){if(Qm(t),t.parent=e,t.prev=null,e.children.unshift(t)!==1){let r=e.children[1];r.prev=t,t.next=r}else t.next=null}function x3r(e,t){Qm(t);let{parent:r}=e;if(r){let n=r.children;n.splice(n.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=r,t.prev=e.prev,t.next=e,e.prev=t}function lI(e,t,r=!0,n=1/0){return _U(e,Array.isArray(t)?t:[t],r,n)}function _U(e,t,r,n){let i=[],s=[Array.isArray(t)?t:[t]],a=[0];for(;;){if(a[0]>=s[0].length){if(a.length===1)return i;s.shift(),a.shift();continue}let o=s[0][a[0]++];if(e(o)&&(i.push(o),--n<=0))return i;r&&kn(o)&&o.children.length>0&&(a.unshift(0),s.unshift(o.children))}}function C3r(e,t){return t.find(e)}function AU(e,t,r=!0){let n=Array.isArray(t)?t:[t];for(let i=0;i0){let a=AU(e,s.children,!0);if(a)return a}}return null}function fvt(e,t){return(Array.isArray(t)?t:[t]).some(r=>ot(r)&&e(r)||kn(r)&&fvt(e,r.children))}function T3r(e,t){let r=[],n=[Array.isArray(t)?t:[t]],i=[0];for(;;){if(i[0]>=n[0].length){if(n.length===1)return r;n.shift(),i.shift();continue}let s=n[0][i[0]++];ot(s)&&e(s)&&r.push(s),kn(s)&&s.children.length>0&&(i.unshift(0),n.unshift(s.children))}}var vU={tag_name(e){return typeof e=="function"?t=>ot(t)&&e(t.name):e==="*"?ot:t=>ot(t)&&t.name===e},tag_type(e){return typeof e=="function"?t=>e(t.type):t=>t.type===e},tag_contains(e){return typeof e=="function"?t=>Qu(t)&&e(t.data):t=>Qu(t)&&t.data===e}};function qge(e,t){return typeof t=="function"?r=>ot(r)&&t(r.attribs[e]):r=>ot(r)&&r.attribs[e]===t}function N3r(e,t){return r=>e(r)||t(r)}function pvt(e){let t=Object.keys(e).map(r=>{let n=e[r];return Object.prototype.hasOwnProperty.call(vU,r)?vU[r](n):qge(r,n)});return t.length===0?null:t.reduce(N3r)}function R3r(e,t){let r=pvt(e);return r?r(t):!0}function D3r(e,t,r,n=1/0){let i=pvt(e);return i?lI(i,t,r,n):[]}function k3r(e,t,r=!0){return Array.isArray(t)||(t=[t]),AU(qge("id",e),t,r)}function db(e,t,r=!0,n=1/0){return lI(vU.tag_name(e),t,r,n)}function O3r(e,t,r=!0,n=1/0){return lI(qge("class",e),t,r,n)}function P3r(e,t,r=!0,n=1/0){return lI(vU.tag_type(e),t,r,n)}function M3r(e){let t=e.length;for(;--t>=0;){let r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0){e.splice(t,1);continue}for(let n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e}var kl;(function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"})(kl||(kl={}));function hvt(e,t){let r=[],n=[];if(e===t)return 0;let i=kn(e)?e:e.parent;for(;i;)r.unshift(i),i=i.parent;for(i=kn(t)?t:t.parent;i;)n.unshift(i),i=i.parent;let s=Math.min(r.length,n.length),a=0;for(;au.indexOf(l)?o===t?kl.FOLLOWING|kl.CONTAINED_BY:kl.FOLLOWING:o===e?kl.PRECEDING|kl.CONTAINS:kl.PRECEDING}function vy(e){return e=e.filter((t,r,n)=>!n.includes(t,r+1)),e.sort((t,r)=>{let n=hvt(t,r);return n&kl.PRECEDING?-1:n&kl.FOLLOWING?1:0}),e}function jge(e){let t=bU(U3r,e);return t?t.name==="feed"?L3r(t):B3r(t):null}function L3r(e){var t;let r=e.children,n={type:"atom",items:db("entry",r).map(a=>{var o;let{children:u}=a,c={media:mvt(u)};Gu(c,"id","id",u),Gu(c,"title","title",u);let l=(o=bU("link",u))===null||o===void 0?void 0:o.attribs.href;l&&(c.link=l);let d=by("summary",u)||by("content",u);d&&(c.description=d);let f=by("updated",u);return f&&(c.pubDate=new Date(f)),c})};Gu(n,"id","id",r),Gu(n,"title","title",r);let i=(t=bU("link",r))===null||t===void 0?void 0:t.attribs.href;i&&(n.link=i),Gu(n,"description","subtitle",r);let s=by("updated",r);return s&&(n.updated=new Date(s)),Gu(n,"author","email",r,!0),n}function B3r(e){var t,r;let n=(r=(t=bU("channel",e.children))===null||t===void 0?void 0:t.children)!==null&&r!==void 0?r:[],i={type:e.name.substr(0,3),id:"",items:db("item",e.children).map(a=>{let{children:o}=a,u={media:mvt(o)};Gu(u,"id","guid",o),Gu(u,"title","title",o),Gu(u,"link","link",o),Gu(u,"description","description",o);let c=by("pubDate",o)||by("dc:date",o);return c&&(u.pubDate=new Date(c)),u})};Gu(i,"title","title",n),Gu(i,"link","link",n),Gu(i,"description","description",n);let s=by("lastBuildDate",n);return s&&(i.updated=new Date(s)),Gu(i,"author","managingEditor",n,!0),i}var $3r=["url","type","lang"],F3r=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function mvt(e){return db("media:content",e).map(t=>{let{attribs:r}=t,n={medium:r.medium,isDefault:!!r.isDefault};for(let i of $3r)r[i]&&(n[i]=r[i]);for(let i of F3r)r[i]&&(n[i]=parseInt(r[i],10));return r.expression&&(n.expression=r.expression),n})}function bU(e,t){return db(e,t,!0,1)[0]}function by(e,t,r=!1){return zm(db(e,t,r,1)).trim()}function Gu(e,t,r,n,i=!1){let s=by(r,n,i);s&&(e[t]=s)}function U3r(e){return e==="rss"||e==="feed"||e==="rdf:RDF"}function yvt(e,t,r){return e?e(t??e._root.children,null,void 0,r).toString():""}function q3r(e,t){return!t&&typeof e=="object"&&e!=null&&!("length"in e)&&!("type"in e)}function _vt(e,t){let r=q3r(e)?(t=e,void 0):e,n={...wO,...this===null||this===void 0?void 0:this._options,...IO(t??{})};return yvt(this,r,n)}function Avt(e){let t={...this._options,xmlMode:!0};return yvt(this,e,t)}function Sy(e){let t=e||(this?this.root():[]),r="";for(let n=0;nCvt,attr:()=>z3r,data:()=>G3r,hasClass:()=>X3r,prop:()=>Q3r,removeAttr:()=>W3r,removeClass:()=>Tvt,toggleClass:()=>Nvt,val:()=>Y3r});function Mc(e){return e.cheerio!=null}function vvt(e){return e.replace(/[_.-](\w|$)/g,(t,r)=>r.toUpperCase())}function bvt(e){return e.replace(/[A-Z]/g,"-$&").toLowerCase()}function Vn(e,t){let r=e.length;for(let n=0;nNO(n,!0)):[NO(e,!0)],r=new Pc(t);return t.forEach(n=>{n.parent=r}),t}var fb;(function(e){e[e.LowerA=97]="LowerA",e[e.LowerZ=122]="LowerZ",e[e.UpperA=65]="UpperA",e[e.UpperZ=90]="UpperZ",e[e.Exclamation=33]="Exclamation"})(fb||(fb={}));function OO(e){let t=e.indexOf("<");if(t<0||t>e.length-3)return!1;let r=e.charCodeAt(t+1);return(r>=fb.LowerA&&r<=fb.LowerZ||r>=fb.UpperA&&r<=fb.UpperZ||r===fb.Exclamation)&&e.includes(">",t+2)}var dI=Object.prototype.hasOwnProperty,PO=/\s+/,Kge="data-",Evt={null:null,true:!0,false:!1},zge=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,V3r=/^{[^]*}$|^\[[^]*]$/;function SU(e,t,r){var n;if(!(!e||!ot(e))){if((n=e.attribs)!==null&&n!==void 0||(e.attribs={}),!t)return e.attribs;if(dI.call(e.attribs,t))return!r&&zge.test(t)?t:e.attribs[t];if(e.name==="option"&&t==="value")return Sy(e.children);if(e.name==="input"&&(e.attribs.type==="radio"||e.attribs.type==="checkbox")&&t==="value")return"on"}}function fI(e,t,r){r===null?xvt(e,t):e.attribs[t]=`${r}`}function z3r(e,t){if(typeof e=="object"||t!==void 0){if(typeof t=="function"){if(typeof e!="string")throw new Error("Bad combination of arguments.");return Vn(this,(r,n)=>{ot(r)&&fI(r,e,t.call(r,n,r.attribs[e]))})}return Vn(this,r=>{ot(r)&&(typeof e=="object"?Object.keys(e).forEach(n=>{let i=e[n];fI(r,n,i)}):fI(r,e,t))})}return arguments.length>1?this:SU(this[0],e,this.options.xmlMode)}function Svt(e,t,r){return t in e?e[t]:!r&&zge.test(t)?SU(e,t,!1)!==void 0:SU(e,t,r)}function Vge(e,t,r,n){t in e?e[t]=r:fI(e,t,!n&&zge.test(t)?r?"":null:`${r}`)}function Q3r(e,t){var r;if(typeof e=="string"&&t===void 0){let n=this[0];if(!n||!ot(n))return;switch(e){case"style":{let i=this.css(),s=Object.keys(i);return s.forEach((a,o)=>{i[o]=a}),i.length=s.length,i}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let i=(r=n.attribs)===null||r===void 0?void 0:r[e];return typeof URL<"u"&&(e==="href"&&(n.tagName==="a"||n.name==="link")||e==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&i!==void 0&&this.options.baseURI?new URL(i,this.options.baseURI).href:i}case"innerText":return kO(n);case"textContent":return zm(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return Svt(n,e,this.options.xmlMode)}}if(typeof e=="object"||t!==void 0){if(typeof t=="function"){if(typeof e=="object")throw new Error("Bad combination of arguments.");return Vn(this,(n,i)=>{ot(n)&&Vge(n,e,t.call(n,i,Svt(n,e,this.options.xmlMode)),this.options.xmlMode)})}return Vn(this,n=>{ot(n)&&(typeof e=="object"?Object.keys(e).forEach(i=>{let s=e[i];Vge(n,i,s,this.options.xmlMode)}):Vge(n,e,t,this.options.xmlMode))})}}function wvt(e,t,r){var n;let i=e;(n=i.data)!==null&&n!==void 0||(i.data={}),typeof t=="object"?Object.assign(i.data,t):typeof t=="string"&&r!==void 0&&(i.data[t]=r)}function Ivt(e,t){let r,n,i;t==null?(r=Object.keys(e.attribs).filter(s=>s.startsWith(Kge)),n=r.map(s=>vvt(s.slice(Kge.length)))):(r=[Kge+bvt(t)],n=[t]);for(let s=0;s{ot(s)&&(typeof e=="object"?wvt(s,e):wvt(s,e,t))}),this):dI.call(i.data,e)?i.data[e]:Ivt(i,e):Ivt(i)}function Y3r(e){let t=arguments.length===0,r=this[0];if(!r||!ot(r))return t?void 0:this;switch(r.name){case"textarea":return this.text(e);case"select":{let n=this.find("option:selected");if(!t){if(this.attr("multiple")==null&&typeof e=="object")return this;this.find("option").removeAttr("selected");let i=typeof e!="object"?[e]:e;for(let s=0;sSy(i.children)):n.attr("value")}case"input":case"option":return t?this.attr("value"):this.attr("value",e)}}function xvt(e,t){!e.attribs||!dI.call(e.attribs,t)||delete e.attribs[t]}function wU(e){return e?e.trim().split(PO):[]}function W3r(e){let t=wU(e);for(let r=0;r{ot(n)&&xvt(n,t[r])});return this}function X3r(e){return this.toArray().some(t=>{let r=ot(t)&&t.attribs.class,n=-1;if(r&&e.length)for(;(n=r.indexOf(e,n+1))>-1;){let i=n+e.length;if((n===0||PO.test(r[n-1]))&&(i===r.length||PO.test(r[i])))return!0}return!1})}function Cvt(e){if(typeof e=="function")return Vn(this,(n,i)=>{if(ot(n)){let s=n.attribs.class||"";Cvt.call([n],e.call(n,i,s))}});if(!e||typeof e!="string")return this;let t=e.split(PO),r=this.length;for(let n=0;n{ot(i)&&Tvt.call([i],e.call(i,s,i.attribs.class||""))});let t=wU(e),r=t.length,n=arguments.length===0;return Vn(this,i=>{if(ot(i))if(n)i.attribs.class="";else{let s=wU(i.attribs.class),a=!1;for(let o=0;o=0&&(s.splice(u,1),a=!0,o--)}a&&(i.attribs.class=s.join(" "))}})}function Nvt(e,t){if(typeof e=="function")return Vn(this,(a,o)=>{ot(a)&&Nvt.call([a],e.call(a,o,a.attribs.class||"",t),t)});if(!e||typeof e!="string")return this;let r=e.split(PO),n=r.length,i=typeof t=="boolean"?t?1:-1:0,s=this.length;for(let a=0;a=0&&l<0?u.push(r[c]):i<=0&&l>=0&&u.splice(l,1)}o.attribs.class=u.join(" ")}return this}var gye={};ys(gye,{add:()=>s6r,addBack:()=>a6r,children:()=>H$r,closest:()=>M$r,contents:()=>K$r,each:()=>V$r,end:()=>i6r,eq:()=>Z$r,filter:()=>Q$r,filterArray:()=>mye,find:()=>D$r,first:()=>X$r,get:()=>e6r,has:()=>W$r,index:()=>r6r,is:()=>G$r,last:()=>J$r,map:()=>z$r,next:()=>L$r,nextAll:()=>B$r,nextUntil:()=>$$r,not:()=>Y$r,parent:()=>k$r,parents:()=>O$r,parentsUntil:()=>P$r,prev:()=>F$r,prevAll:()=>U$r,prevUntil:()=>q$r,siblings:()=>j$r,slice:()=>n6r,toArray:()=>t6r});var Wu=Se(gI(),1);var sye=Se(Iy(),1);var Xd=Se(gI(),1),Ym=Se(Iy(),1);var nu=Se(gI(),1),Kvt=new Map([[nu.SelectorType.Universal,50],[nu.SelectorType.Tag,30],[nu.SelectorType.Attribute,1],[nu.SelectorType.Pseudo,0]]);function LO(e){return!Kvt.has(e.type)}var f$r=new Map([[nu.AttributeAction.Exists,10],[nu.AttributeAction.Equals,8],[nu.AttributeAction.Not,7],[nu.AttributeAction.Start,6],[nu.AttributeAction.End,6],[nu.AttributeAction.Any,5]]);function Yge(e){let t=e.map(Vvt);for(let r=1;r=0&&n>=1)):e.type===nu.SelectorType.Pseudo&&(e.data?e.name==="has"||e.name==="contains"?n=0:Array.isArray(e.data)?(n=Math.min(...e.data.map(i=>Math.min(...i.map(Vvt)))),n<0&&(n=0)):n=2:n=3),n}var BO=Se(Iy(),1),p$r=/[-[\]{}()*+?.,\\^$|#\s]/g;function zvt(e){return e.replace(p$r,"\\$&")}var h$r=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);function pb(e,t){return typeof e.ignoreCase=="boolean"?e.ignoreCase:e.ignoreCase==="quirks"?!!t.quirksMode:!t.xmlMode&&h$r.has(e.name)}var Qvt={equals(e,t,r){let{adapter:n}=r,{name:i}=t,{value:s}=t;return pb(t,r)?(s=s.toLowerCase(),a=>{let o=n.getAttributeValue(a,i);return o!=null&&o.length===s.length&&o.toLowerCase()===s&&e(a)}):a=>n.getAttributeValue(a,i)===s&&e(a)},hyphen(e,t,r){let{adapter:n}=r,{name:i}=t,{value:s}=t,a=s.length;return pb(t,r)?(s=s.toLowerCase(),function(u){let c=n.getAttributeValue(u,i);return c!=null&&(c.length===a||c.charAt(a)==="-")&&c.substr(0,a).toLowerCase()===s&&e(u)}):function(u){let c=n.getAttributeValue(u,i);return c!=null&&(c.length===a||c.charAt(a)==="-")&&c.substr(0,a)===s&&e(u)}},element(e,t,r){let{adapter:n}=r,{name:i,value:s}=t;if(/\s/.test(s))return BO.default.falseFunc;let a=new RegExp(`(?:^|\\s)${zvt(s)}(?:$|\\s)`,pb(t,r)?"i":"");return function(u){let c=n.getAttributeValue(u,i);return c!=null&&c.length>=s.length&&a.test(c)&&e(u)}},exists(e,{name:t},{adapter:r}){return n=>r.hasAttrib(n,t)&&e(n)},start(e,t,r){let{adapter:n}=r,{name:i}=t,{value:s}=t,a=s.length;return a===0?BO.default.falseFunc:pb(t,r)?(s=s.toLowerCase(),o=>{let u=n.getAttributeValue(o,i);return u!=null&&u.length>=a&&u.substr(0,a).toLowerCase()===s&&e(o)}):o=>{var u;return!!(!((u=n.getAttributeValue(o,i))===null||u===void 0)&&u.startsWith(s))&&e(o)}},end(e,t,r){let{adapter:n}=r,{name:i}=t,{value:s}=t,a=-s.length;return a===0?BO.default.falseFunc:pb(t,r)?(s=s.toLowerCase(),o=>{var u;return((u=n.getAttributeValue(o,i))===null||u===void 0?void 0:u.substr(a).toLowerCase())===s&&e(o)}):o=>{var u;return!!(!((u=n.getAttributeValue(o,i))===null||u===void 0)&&u.endsWith(s))&&e(o)}},any(e,t,r){let{adapter:n}=r,{name:i,value:s}=t;if(s==="")return BO.default.falseFunc;if(pb(t,r)){let a=new RegExp(zvt(s),"i");return function(u){let c=n.getAttributeValue(u,i);return c!=null&&c.length>=s.length&&a.test(c)&&e(u)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,i))===null||o===void 0)&&o.includes(s))&&e(a)}},not(e,t,r){let{adapter:n}=r,{name:i}=t,{value:s}=t;return s===""?a=>!!n.getAttributeValue(a,i)&&e(a):pb(t,r)?(s=s.toLowerCase(),a=>{let o=n.getAttributeValue(a,i);return(o==null||o.length!==s.length||o.toLowerCase()!==s)&&e(a)}):a=>n.getAttributeValue(a,i)!==s&&e(a)}};var Xvt=Se(gI(),1);var m$r=new Set([9,10,12,13,32]),Gvt=48,g$r=57;function Yvt(e){if(e=e.trim().toLowerCase(),e==="even")return[2,0];if(e==="odd")return[2,1];let t=0,r=0,n=s(),i=a();if(t=Gvt&&e.charCodeAt(t)<=g$r;)c=c*10+(e.charCodeAt(t)-Gvt),t++;return t===u?null:c}function o(){for(;ts<=r;if(t===0)return s=>s===r;if(t===1)return r<0?Wge.default.trueFunc:s=>s>=r;let n=Math.abs(t),i=(r%n+n)%n;return t>1?s=>s>=r&&s%n===i:s=>s<=r&&s%n===i}function yI(e){return Wvt(Yvt(e))}var Yu=Se(Iy(),1);function CU(e,t){return r=>{let n=t.getParent(r);return n!=null&&t.isTag(n)&&e(r)}}var _I={contains(e,t,{adapter:r}){return function(i){return e(i)&&r.getText(i).includes(t)}},icontains(e,t,{adapter:r}){let n=t.toLowerCase();return function(s){return e(s)&&r.getText(s).toLowerCase().includes(n)}},"nth-child"(e,t,{adapter:r,equals:n}){let i=yI(t);return i===Yu.default.falseFunc?Yu.default.falseFunc:i===Yu.default.trueFunc?CU(e,r):function(a){let o=r.getSiblings(a),u=0;for(let c=0;c=0&&!n(a,o[c]);c--)r.isTag(o[c])&&u++;return i(u)&&e(a)}},"nth-of-type"(e,t,{adapter:r,equals:n}){let i=yI(t);return i===Yu.default.falseFunc?Yu.default.falseFunc:i===Yu.default.trueFunc?CU(e,r):function(a){let o=r.getSiblings(a),u=0;for(let c=0;c=0;c--){let l=o[c];if(n(a,l))break;r.isTag(l)&&r.getName(l)===r.getName(a)&&u++}return i(u)&&e(a)}},root(e,t,{adapter:r}){return n=>{let i=r.getParent(n);return(i==null||!r.isTag(i))&&e(n)}},scope(e,t,r,n){let{equals:i}=r;return!n||n.length===0?_I.root(e,t,r):n.length===1?s=>i(n[0],s)&&e(s):s=>n.includes(s)&&e(s)},hover:Xge("isHovered"),visited:Xge("isVisited"),active:Xge("isActive")};function Xge(e){return function(r,n,{adapter:i}){let s=i[e];return typeof s!="function"?Yu.default.falseFunc:function(o){return s(o)&&r(o)}}}var $O={empty(e,{adapter:t}){return!t.getChildren(e).some(r=>t.isTag(r)||t.getText(r)!=="")},"first-child"(e,{adapter:t,equals:r}){if(t.prevElementSibling)return t.prevElementSibling(e)==null;let n=t.getSiblings(e).find(i=>t.isTag(i));return n!=null&&r(e,n)},"last-child"(e,{adapter:t,equals:r}){let n=t.getSiblings(e);for(let i=n.length-1;i>=0;i--){if(r(e,n[i]))return!0;if(t.isTag(n[i]))break}return!1},"first-of-type"(e,{adapter:t,equals:r}){let n=t.getSiblings(e),i=t.getName(e);for(let s=0;s=0;s--){let a=n[s];if(r(e,a))return!0;if(t.isTag(a)&&t.getName(a)===i)break}return!1},"only-of-type"(e,{adapter:t,equals:r}){let n=t.getName(e);return t.getSiblings(e).every(i=>r(e,i)||!t.isTag(i)||t.getName(i)!==n)},"only-child"(e,{adapter:t,equals:r}){return t.getSiblings(e).every(n=>r(e,n)||!t.isTag(n))}};function Jge(e,t,r,n){if(r===null){if(e.length>n)throw new Error(`Pseudo-class :${t} requires an argument`)}else if(e.length===n)throw new Error(`Pseudo-class :${t} doesn't have any arguments`)}var TU={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is( - :is(button, input, select, textarea, optgroup, option)[disabled], - optgroup[disabled] > option, - fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *) - )`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"};var Ol=Se(Iy(),1);var tye={};function rye(e,t){return e===Ol.default.falseFunc?Ol.default.falseFunc:r=>t.isTag(r)&&e(r)}function nye(e,t){let r=t.getSiblings(e);if(r.length<=1)return[];let n=r.indexOf(e);return n<0||n===r.length-1?[]:r.slice(n+1).filter(t.isTag)}function eye(e){return{xmlMode:!!e.xmlMode,lowerCaseAttributeNames:!!e.lowerCaseAttributeNames,lowerCaseTags:!!e.lowerCaseTags,quirksMode:!!e.quirksMode,cacheResults:!!e.cacheResults,pseudos:e.pseudos,adapter:e.adapter,equals:e.equals}}var Zge=(e,t,r,n,i)=>{let s=i(t,eye(r),n);return s===Ol.default.trueFunc?e:s===Ol.default.falseFunc?Ol.default.falseFunc:a=>s(a)&&e(a)},NU={is:Zge,matches:Zge,where:Zge,not(e,t,r,n,i){let s=i(t,eye(r),n);return s===Ol.default.falseFunc?e:s===Ol.default.trueFunc?Ol.default.falseFunc:a=>!s(a)&&e(a)},has(e,t,r,n,i){let{adapter:s}=r,a=eye(r);a.relativeSelector=!0;let o=t.some(l=>l.some(LO))?[tye]:void 0,u=i(t,a,o);if(u===Ol.default.falseFunc)return Ol.default.falseFunc;let c=rye(u,s);if(o&&u!==Ol.default.trueFunc){let{shouldTestNextSiblings:l=!1}=u;return d=>{if(!e(d))return!1;o[0]=d;let f=s.getChildren(d),p=l?[...f,...nye(d,s)]:f;return s.existsOne(c,p)}}return l=>e(l)&&s.existsOne(c,s.getChildren(l))}};function Jvt(e,t,r,n,i){var s;let{name:a,data:o}=t;if(Array.isArray(o)){if(!(a in NU))throw new Error(`Unknown pseudo-class :${a}(${o})`);return NU[a](e,o,r,n,i)}let u=(s=r.pseudos)===null||s===void 0?void 0:s[a],c=typeof u=="string"?u:TU[a];if(typeof c=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,Xvt.parse)(c);return NU.is(e,l,r,n,i)}if(typeof u=="function")return Jge(u,a,o,1),l=>u(l,o)&&e(l);if(a in _I)return _I[a](e,o,r,n);if(a in $O){let l=$O[a];return Jge(l,a,o,2),d=>l(d,r,o)&&e(d)}throw new Error(`Unknown pseudo-class :${a}`)}var Pl=Se(gI(),1);function iye(e,t){let r=t.getParent(e);return r&&t.isTag(r)?r:null}function Zvt(e,t,r,n,i){let{adapter:s,equals:a}=r;switch(t.type){case Pl.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case Pl.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case Pl.SelectorType.Attribute:{if(t.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(t.name=t.name.toLowerCase()),Qvt[t.action](e,t,r)}case Pl.SelectorType.Pseudo:return Jvt(e,t,r,n,i);case Pl.SelectorType.Tag:{if(t.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=t;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(c){return s.getName(c)===o&&e(c)}}case Pl.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(c){let l=c;for(;l=iye(l,s);)if(e(l))return!0;return!1};let o=new WeakSet;return function(c){let l=c;for(;l=iye(l,s);)if(!o.has(l)){if(s.isTag(l)&&e(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(u){let c=u;do if(e(c))return!0;while(c=iye(c,s));return!1};case Pl.SelectorType.Parent:return function(u){return s.getChildren(u).some(c=>s.isTag(c)&&e(c))};case Pl.SelectorType.Child:return function(u){let c=s.getParent(u);return c!=null&&s.isTag(c)&&e(c)};case Pl.SelectorType.Sibling:return function(u){let c=s.getSiblings(u);for(let l=0;lt.some(tbt)))}var y$r={type:Xd.SelectorType.Descendant},_$r={type:"_flexibleDescendant"},A$r={type:Xd.SelectorType.Pseudo,name:"scope",data:null};function v$r(e,{adapter:t},r){let n=!!r?.every(i=>{let s=t.isTag(i)&&t.getParent(i);return i===tye||s&&t.isTag(s)});for(let i of e){if(!(i.length>0&&LO(i[0])&&i[0].type!==Xd.SelectorType.Descendant))if(n&&!i.some(tbt))i.unshift(y$r);else continue;i.unshift(A$r)}}function DU(e,t,r){var n;e.forEach(Yge),r=(n=t.context)!==null&&n!==void 0?n:r;let i=Array.isArray(r),s=r&&(Array.isArray(r)?r:[r]);if(t.relativeSelector!==!1)v$r(e,t,s);else if(e.some(u=>u.length>0&&LO(u[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=e.map(u=>{if(u.length>=2){let[c,l]=u;c.type!==Xd.SelectorType.Pseudo||c.name!=="scope"||(i&&l.type===Xd.SelectorType.Descendant?u[1]=_$r:(l.type===Xd.SelectorType.Adjacent||l.type===Xd.SelectorType.Sibling)&&(a=!0))}return b$r(u,t,s)}).reduce(E$r,Ym.default.falseFunc);return o.shouldTestNextSiblings=a,o}function b$r(e,t,r){var n;return e.reduce((i,s)=>i===Ym.default.falseFunc?Ym.default.falseFunc:Zvt(i,s,t,r,DU),(n=t.rootFunc)!==null&&n!==void 0?n:Ym.default.trueFunc)}function E$r(e,t){return t===Ym.default.falseFunc||e===Ym.default.trueFunc?e:e===Ym.default.falseFunc||t===Ym.default.trueFunc?t:function(n){return e(n)||t(n)}}var rbt=(e,t)=>e===t,S$r={adapter:Ey,equals:rbt};function nbt(e){var t,r,n,i;let s=e??S$r;return(t=s.adapter)!==null&&t!==void 0||(s.adapter=Ey),(r=s.equals)!==null&&r!==void 0||(s.equals=(i=(n=s.adapter)===null||n===void 0?void 0:n.equals)!==null&&i!==void 0?i:rbt),s}function aye(e){return function(r,n,i){let s=nbt(n);return e(r,s,i)}}var gXn=aye(ebt),yXn=aye(RU),kU=aye(DU);function ibt(e){return function(r,n,i){let s=nbt(i);typeof r!="function"&&(r=RU(r,s,n));let a=OU(n,s.adapter,r.shouldTestNextSiblings);return e(r,a,s)}}function OU(e,t,r=!1){return r&&(e=w$r(e,t)),Array.isArray(e)?t.removeSubsets(e):t.getChildren(e)}function w$r(e,t){let r=Array.isArray(e)?e.slice(0):[e],n=r.length;for(let i=0;ie===sye.default.falseFunc||!t||t.length===0?[]:r.adapter.findAll(e,t)),AXn=ibt((e,t,r)=>e===sye.default.falseFunc||!t||t.length===0?null:r.adapter.findOne(e,t));var MU=Se(Iy(),1);var I$r=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function AI(e){return e.type!=="pseudo"?!1:I$r.has(e.name)?!0:e.name==="not"&&Array.isArray(e.data)?e.data.some(t=>t.some(AI)):!1}function sbt(e,t,r){let n=t!=null?parseInt(t,10):NaN;switch(e){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}function abt(e){for(;e.parent;)e=e.parent;return e}function PU(e){let t=[],r=[];for(let n of e)n.some(AI)?t.push(n):r.push(n);return[r,t]}var x$r={type:Wu.SelectorType.Universal,namespace:null},C$r={type:Wu.SelectorType.Pseudo,name:"scope",data:null};function cye(e,t,r={}){return lye([e],t,r)}function lye(e,t,r={}){if(typeof t=="function")return e.some(t);let[n,i]=PU((0,Wu.parse)(t));return n.length>0&&e.some(kU(n,r))||i.some(s=>ubt(s,e,r).length>0)}function T$r(e,t,r,n){let i=typeof r=="string"?parseInt(r,10):NaN;switch(e){case"first":case"lt":return t;case"last":return t.length>0?[t[t.length-1]]:t;case"nth":case"eq":return isFinite(i)&&Math.abs(i)a%2===0);case"odd":return t.filter((s,a)=>a%2===1);case"not":{let s=new Set(obt(r,t,n));return t.filter(a=>!s.has(a))}}}function dye(e,t,r={}){return obt((0,Wu.parse)(e),t,r)}function obt(e,t,r){if(t.length===0)return[];let[n,i]=PU(e),s;if(n.length){let a=uye(t,n,r);if(i.length===0)return a;a.length&&(s=new Set(a))}for(let a=0;aot(l)&&!s.has(l)):t).length===0)break;let c=ubt(o,t,r);if(c.length)if(s)c.forEach(l=>s.add(l));else{if(a===i.length-1)return c;s=new Set(c)}}return typeof s<"u"?s.size===t.length?t:t.filter(a=>s.has(a)):[]}function ubt(e,t,r){var n;if(e.some(Wu.isTraversal)){let i=(n=r.root)!==null&&n!==void 0?n:abt(t[0]),s={...r,context:t,relativeSelector:!1};return e.push(C$r),LU(i,e,s,!0,t.length)}return LU(t,e,r,!1,t.length)}function cbt(e,t,r={},n=1/0){if(typeof e=="function")return lbt(t,e);let[i,s]=PU((0,Wu.parse)(e)),a=s.map(o=>LU(t,o,r,!0,n));return i.length&&a.push(oye(t,i,r,n)),a.length===0?[]:a.length===1?a[0]:vy(a.reduce((o,u)=>[...o,...u]))}function LU(e,t,r,n,i){let s=t.findIndex(AI),a=t.slice(0,s),o=t[s],u=t.length-1===s?i:1/0,c=sbt(o.name,o.data,u);if(c===0)return[];let d=(a.length===0&&!Array.isArray(e)?cI(e).filter(ot):a.length===0?(Array.isArray(e)?e:[e]).filter(ot):n||a.some(Wu.isTraversal)?oye(e,[a],r,c):uye(e,[a],r)).slice(0,c),f=T$r(o.name,d,o.data,r);if(f.length===0||t.length===s+1)return f;let p=t.slice(s+1),h=p.some(Wu.isTraversal);if(h){if((0,Wu.isTraversal)(p[0])){let{type:m}=p[0];(m===Wu.SelectorType.Sibling||m===Wu.SelectorType.Adjacent)&&(f=OU(f,Ey,!0)),p.unshift(x$r)}r={...r,relativeSelector:!1,rootFunc:m=>f.includes(m)}}else r.rootFunc&&r.rootFunc!==MU.trueFunc&&(r={...r,rootFunc:MU.trueFunc});return p.some(AI)?LU(f,p,r,!1,i):h?oye(f,[p],r,i):uye(f,[p],r)}function oye(e,t,r,n){let i=kU(t,r,e);return lbt(e,i,n)}function lbt(e,t,r=1/0){let n=OU(e,Ey,t.shouldTestNextSiblings);return _U(i=>ot(i)&&t(i),n,!0,r)}function uye(e,t,r){let n=(Array.isArray(e)?e:[e]).filter(ot);if(n.length===0)return n;let i=kU(t,r);return i===MU.trueFunc?n:n.filter(i)}var R$r=/^\s*[~+]/;function D$r(e){var t;if(!e)return this._make([]);let r=this.toArray();if(typeof e!="string"){let s=Mc(e)?e.toArray():[e];return this._make(s.filter(a=>r.some(o=>Hge(o,a))))}let n=R$r.test(e)?r:this.children().toArray(),i={context:r,root:(t=this._root)===null||t===void 0?void 0:t[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(cbt(e,n,i))}function fye(e){return function(t,...r){return function(n){var i;let s=e(t,this);return n&&(s=mye(s,n,this.options.xmlMode,(i=this._root)===null||i===void 0?void 0:i[0])),this._make(this.length>1&&s.length>1?r.reduce((a,o)=>o(a),s):s)}}}var FO=fye((e,t)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;n{let a=[];return Vn(s,o=>{for(let u;(u=i(o))&&!r?.(u,a.length);o=u)a.push(u)}),a})(e,...t);return function(i,s){r=typeof i=="string"?o=>cye(o,i,this.options):i?UO(i):null;let a=n.call(this,s);return r=null,a}}function vI(e){return Array.from(new Set(e))}var k$r=pye(({parent:e})=>e&&!Wd(e)?e:null,vI),O$r=FO(e=>{let t=[];for(;e.parent&&!Wd(e.parent);)t.push(e.parent),e=e.parent;return t},vy,e=>e.reverse()),P$r=hye(({parent:e})=>e&&!Wd(e)?e:null,vy,e=>e.reverse());function M$r(e){var t;let r=[];if(!e)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(t=this._root)===null||t===void 0?void 0:t[0]},i=typeof e=="string"?s=>cye(s,e,n):UO(e);return Vn(this,s=>{for(;s&&ot(s);){if(i(s,0)){r.includes(s)||r.push(s);break}s=s.parent}}),this._make(r)}var L$r=pye(e=>gU(e)),B$r=FO(e=>{let t=[];for(;e.next;)e=e.next,ot(e)&&t.push(e);return t},vI),$$r=hye(e=>gU(e),vI),F$r=pye(e=>yU(e)),U$r=FO(e=>{let t=[];for(;e.prev;)e=e.prev,ot(e)&&t.push(e);return t},vI),q$r=hye(e=>yU(e),vI),j$r=FO(e=>Uge(e).filter(t=>ot(t)&&t!==e),vy),H$r=FO(e=>cI(e).filter(ot),vI);function K$r(){let e=this.toArray().reduce((t,r)=>kn(r)?t.concat(r.children):t,[]);return this._make(e)}function V$r(e){let t=0,r=this.length;for(;te.call(t,r,t):Mc(e)?t=>Array.prototype.includes.call(e,t):function(t){return e===t}}function Q$r(e){var t;return this._make(mye(this.toArray(),e,this.options.xmlMode,(t=this._root)===null||t===void 0?void 0:t[0]))}function mye(e,t,r,n){return typeof t=="string"?dye(t,e,{xmlMode:r,root:n}):e.filter(UO(t))}function G$r(e){let t=this.toArray();return typeof e=="string"?lye(t.filter(ot),e,this.options):e?t.some(UO(e)):!1}function Y$r(e){let t=this.toArray();if(typeof e=="string"){let r=new Set(dye(e,t,this.options));t=t.filter(n=>!r.has(n))}else{let r=UO(e);t=t.filter((n,i)=>!r(n,i))}return this._make(t)}function W$r(e){return this.filter(typeof e=="string"?`:has(${e})`:(t,r)=>this._make(r).find(e).length>0)}function X$r(){return this.length>1?this._make(this[0]):this}function J$r(){return this.length>0?this._make(this[this.length-1]):this}function Z$r(e){var t;return e=+e,e===0&&this.length<=1?this:(e<0&&(e=this.length+e),this._make((t=this[e])!==null&&t!==void 0?t:[]))}function e6r(e){return e==null?this.toArray():this[e<0?this.length+e:e]}function t6r(){return Array.prototype.slice.call(this)}function r6r(e){let t,r;return e==null?(t=this.parent().children(),r=this[0]):typeof e=="string"?(t=this._make(e),r=this[0]):(t=this,r=Mc(e)?e[0]:e),Array.prototype.indexOf.call(t,r)}function n6r(e,t){return this._make(Array.prototype.slice.call(this,e,t))}function i6r(){var e;return(e=this.prevObject)!==null&&e!==void 0?e:this._make([])}function s6r(e,t){let r=this._make(e,t),n=vy([...this.get(),...r.get()]);return this._make(n)}function a6r(e){return this.prevObject?this.add(e?this.prevObject.filter(e):this.prevObject):this}var yye={};ys(yye,{_makeDomArray:()=>o6r,after:()=>g6r,append:()=>l6r,appendTo:()=>u6r,before:()=>_6r,clone:()=>x6r,empty:()=>E6r,html:()=>S6r,insertAfter:()=>y6r,insertBefore:()=>A6r,prepend:()=>d6r,prependTo:()=>c6r,remove:()=>v6r,replaceWith:()=>b6r,text:()=>I6r,toString:()=>w6r,unwrap:()=>h6r,wrap:()=>f6r,wrapAll:()=>m6r,wrapInner:()=>p6r});function dbt(e){return function(r,n,i,s){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return e(r,n,i,s);let a=r;if(!Array.isArray(a)&&Wd(a))return a;let o=new Pc([]);return xy(a,o),o}}function xy(e,t){let r=Array.isArray(e)?e:[e];t?t.children=r:t=null;for(let n=0;nr.concat(this._makeDomArray(n,t)),[]):typeof e=="string"?this._parse(e,this.options,!1,null).children:t?EU([e]):[e]}function fbt(e){return function(...t){let r=this.length-1;return Vn(this,(n,i)=>{if(!kn(n))return;let s=typeof t[0]=="function"?t[0].call(n,i,this._render(n.children)):t,a=this._makeDomArray(s,i=e.length?null:e[t+r];for(let l=0;l-1&&(f.children.splice(h,1),i===f&&t>h&&o[0]--)}d.parent=i,d.prev&&(d.prev.next=(s=d.next)!==null&&s!==void 0?s:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?u:n[l-1],d.next=l===n.length-1?c:n[l+1]}return u&&(u.next=n[0]),c&&(c.prev=n[n.length-1]),e.splice(...o)}function u6r(e){return(Mc(e)?e:this._make(e)).append(this),this}function c6r(e){return(Mc(e)?e:this._make(e)).prepend(this),this}var l6r=fbt((e,t,r)=>{Cy(t,t.length,0,e,r)}),d6r=fbt((e,t,r)=>{Cy(t,0,0,e,r)});function pbt(e){return function(t){let r=this.length-1,n=this.parents().last();for(let i=0;i{let{parent:n}=e;if(!n)return;let i=n.children,s=i.indexOf(e);xy([e],t),Cy(i,s,0,r,n)}),p6r=pbt((e,t,r)=>{kn(e)&&(xy(e.children,t),xy(r,e))});function h6r(e){return this.parent(e).not("body").each((t,r)=>{this._make(r).replaceWith(r.children)}),this}function m6r(e){let t=this[0];if(t){let r=this._make(typeof e=="function"?e.call(t,0,t):e).insertBefore(t),n;for(let s=0;s{let{parent:i}=r;if(!kn(r)||!i)return;let s=i.children,a=s.indexOf(r);if(a<0)return;let o=typeof e[0]=="function"?e[0].call(r,n,this._render(r.children)):e,u=this._makeDomArray(o,n{let n=this.clone().toArray(),{parent:i}=r;if(!i)return;let s=i.children,a=s.indexOf(r);a<0||(Cy(s,a+1,0,n,i),t.push(...n))}),this._make(t)}function _6r(...e){let t=this.length-1;return Vn(this,(r,n)=>{let{parent:i}=r;if(!kn(r)||!i)return;let s=i.children,a=s.indexOf(r);if(a<0)return;let o=typeof e[0]=="function"?e[0].call(r,n,this._render(r.children)):e,u=this._makeDomArray(o,n{let i=this.clone().toArray(),{parent:s}=n;if(!s)return;let a=s.children,o=a.indexOf(n);o<0||(Cy(a,o,0,i,s),r.push(...i))}),this._make(r)}function v6r(e){let t=e?this.filter(e):this;return Vn(t,r=>{Qm(r),r.prev=r.next=r.parent=null}),this}function b6r(e){return Vn(this,(t,r)=>{let{parent:n}=t;if(!n)return;let i=n.children,s=typeof e=="function"?e.call(t,r,t):e,a=this._makeDomArray(s);xy(a,null);let o=i.indexOf(t);Cy(i,o,1,a,n),a.includes(t)||(t.parent=t.prev=t.next=null)})}function E6r(){return Vn(this,e=>{kn(e)&&(e.children.forEach(t=>{t.next=t.prev=t.parent=null}),e.children.length=0)})}function S6r(e){if(e===void 0){let t=this[0];return!t||!kn(t)?null:this._render(t.children)}return Vn(this,t=>{if(!kn(t))return;t.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=Mc(e)?e.toArray():this._parse(`${e}`,this.options,!1,t).children;xy(r,t)})}function w6r(){return this._render(this)}function I6r(e){return e===void 0?Sy(this):typeof e=="function"?Vn(this,(t,r)=>this._make(t).text(e.call(t,r,Sy([t])))):Vn(this,t=>{if(!kn(t))return;t.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new Dp(`${e}`);xy(r,t)})}function x6r(){return this._make(EU(this.get()))}var _ye={};ys(_ye,{css:()=>C6r});function C6r(e,t){if(e!=null&&t!=null||typeof e=="object"&&!Array.isArray(e))return Vn(this,(r,n)=>{ot(r)&&hbt(r,e,t,n)});if(this.length!==0)return mbt(this[0],e)}function hbt(e,t,r,n){if(typeof t=="string"){let i=mbt(e),s=typeof r=="function"?r.call(e,n,i[t]):r;s===""?delete i[t]:s!=null&&(i[t]=s),e.attribs.style=T6r(i)}else typeof t=="object"&&Object.keys(t).forEach((i,s)=>{hbt(e,i,t[i],s)})}function mbt(e,t){if(!e||!ot(e))return;let r=N6r(e.attribs.style);if(typeof t=="string")return r[t];if(Array.isArray(t)){let n={};return t.forEach(i=>{r[i]!=null&&(n[i]=r[i])}),n}return r}function T6r(e){return Object.keys(e).reduce((t,r)=>`${t}${t?" ":""}${r}: ${e[r]};`,"")}function N6r(e){if(e=(e||"").trim(),!e)return{};let t={},r;for(let n of e.split(";")){let i=n.indexOf(":");if(i<1||i===n.length-1){let s=n.trimEnd();s.length>0&&r!==void 0&&(t[r]+=`;${s}`)}else r=n.slice(0,i).trim(),t[r]=n.slice(i+1).trim()}return t}var Aye={};ys(Aye,{serialize:()=>D6r,serializeArray:()=>k6r});var gbt="input,select,textarea,keygen",R6r=/%20/g,ybt=/\r?\n/g;function D6r(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(R6r,"+")}function k6r(){return this.map((e,t)=>{let r=this._make(t);return ot(t)&&t.name==="form"?r.find(gbt).toArray():r.filter(gbt).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((e,t)=>{var r;let n=this._make(t),i=n.attr("name"),s=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(s)?s.map(a=>({name:i,value:a.replace(ybt,`\r -`)})):{name:i,value:s.replace(ybt,`\r -`)}}).toArray()}var Ty=class{constructor(t,r,n){if(this.length=0,this.options=n,this._root=r,t){for(let i=0;i=55296&&e<=57343}function Abt(e){return e>=56320&&e<=57343}function vbt(e,t){return(e-55296)*1024+9216+t}function $U(e){return e!==32&&e!==10&&e!==13&&e!==9&&e!==12&&e>=1&&e<=31||e>=127&&e<=159}function FU(e){return e>=64976&&e<=65007||P6r.has(e)}var be;(function(e){e.controlCharacterInInputStream="control-character-in-input-stream",e.noncharacterInInputStream="noncharacter-in-input-stream",e.surrogateInInputStream="surrogate-in-input-stream",e.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",e.endTagWithAttributes="end-tag-with-attributes",e.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",e.unexpectedSolidusInTag="unexpected-solidus-in-tag",e.unexpectedNullCharacter="unexpected-null-character",e.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",e.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",e.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",e.missingEndTagName="missing-end-tag-name",e.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",e.unknownNamedCharacterReference="unknown-named-character-reference",e.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",e.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",e.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",e.eofBeforeTagName="eof-before-tag-name",e.eofInTag="eof-in-tag",e.missingAttributeValue="missing-attribute-value",e.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",e.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",e.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",e.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",e.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",e.missingDoctypePublicIdentifier="missing-doctype-public-identifier",e.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",e.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",e.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",e.cdataInHtmlContent="cdata-in-html-content",e.incorrectlyOpenedComment="incorrectly-opened-comment",e.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",e.eofInDoctype="eof-in-doctype",e.nestedComment="nested-comment",e.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",e.eofInComment="eof-in-comment",e.incorrectlyClosedComment="incorrectly-closed-comment",e.eofInCdata="eof-in-cdata",e.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",e.nullCharacterReference="null-character-reference",e.surrogateCharacterReference="surrogate-character-reference",e.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",e.controlCharacterReference="control-character-reference",e.noncharacterCharacterReference="noncharacter-character-reference",e.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",e.missingDoctypeName="missing-doctype-name",e.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",e.duplicateAttribute="duplicate-attribute",e.nonConformingDoctype="non-conforming-doctype",e.missingDoctype="missing-doctype",e.misplacedDoctype="misplaced-doctype",e.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",e.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",e.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",e.openElementsLeftAfterEof="open-elements-left-after-eof",e.abandonedHeadElementChild="abandoned-head-element-child",e.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",e.nestedNoscriptInHead="nested-noscript-in-head",e.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(be||(be={}));var L6r=65536,UU=class{constructor(t){this.handler=t,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=L6r,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(t,r){let{line:n,col:i,offset:s}=this,a=i+r,o=s+r;return{code:t,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(t){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(t,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(t){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(Abt(r))return this.pos++,this._addGap(),vbt(t,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,ne.EOF;return this._err(be.surrogateInInputStream),t}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(t,r){this.html.length>0?this.html+=t:this.html=t,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(t){this.html=this.html.substring(0,this.pos+1)+t+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(t,r){if(this.pos+t.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(t,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,ne.EOF;let n=this.html.charCodeAt(r);return n===ne.CARRIAGE_RETURN?ne.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,ne.EOF;let t=this.html.charCodeAt(this.pos);return t===ne.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,ne.LINE_FEED):t===ne.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,BU(t)&&(t=this._processSurrogate(t)),this.handler.onParseError===null||t>31&&t<127||t===ne.LINE_FEED||t===ne.CARRIAGE_RETURN||t>159&&t<64976||this._checkForProblematicCharacters(t),t)}_checkForProblematicCharacters(t){$U(t)?this._err(be.controlCharacterInInputStream):FU(t)&&this._err(be.noncharacterInInputStream)}retreat(t){for(this.pos-=t;this.pos=0;r--)if(e.attrs[r].name===t)return e.attrs[r].value;return null}var jU=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(e=>e.charCodeAt(0)));var vye,$6r=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),bbt=(vye=String.fromCodePoint)!==null&&vye!==void 0?vye:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function bye(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=$6r.get(e))!==null&&t!==void 0?t:e}var ca;(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(ca||(ca={}));var U6r=32,Ny;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(Ny||(Ny={}));function Eye(e){return e>=ca.ZERO&&e<=ca.NINE}function q6r(e){return e>=ca.UPPER_A&&e<=ca.UPPER_F||e>=ca.LOWER_A&&e<=ca.LOWER_F}function j6r(e){return e>=ca.UPPER_A&&e<=ca.UPPER_Z||e>=ca.LOWER_A&&e<=ca.LOWER_Z||Eye(e)}function H6r(e){return e===ca.EQUALS||j6r(e)}var ua;(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(ua||(ua={}));var Op;(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(Op||(Op={}));var HU=class{constructor(t,r,n){this.decodeTree=t,this.emitCodePoint=r,this.errors=n,this.state=ua.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Op.Strict}startEntity(t){this.decodeMode=t,this.state=ua.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,r){switch(this.state){case ua.EntityStart:return t.charCodeAt(r)===ca.NUM?(this.state=ua.NumericStart,this.consumed+=1,this.stateNumericStart(t,r+1)):(this.state=ua.NamedEntity,this.stateNamedEntity(t,r));case ua.NumericStart:return this.stateNumericStart(t,r);case ua.NumericDecimal:return this.stateNumericDecimal(t,r);case ua.NumericHex:return this.stateNumericHex(t,r);case ua.NamedEntity:return this.stateNamedEntity(t,r)}}stateNumericStart(t,r){return r>=t.length?-1:(t.charCodeAt(r)|U6r)===ca.LOWER_X?(this.state=ua.NumericHex,this.consumed+=1,this.stateNumericHex(t,r+1)):(this.state=ua.NumericDecimal,this.stateNumericDecimal(t,r))}addToNumericResult(t,r,n,i){if(r!==n){let s=n-r;this.result=this.result*Math.pow(i,s)+Number.parseInt(t.substr(r,s),i),this.consumed+=s}}stateNumericHex(t,r){let n=r;for(;r>14;for(;r>14,s!==0){if(a===ca.SEMI)return this.emitNamedEntityData(this.treeIndex,s,this.consumed+this.excess);this.decodeMode!==Op.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;let{result:r,decodeTree:n}=this,i=(n[r]&Ny.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,i,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,r,n){let{decodeTree:i}=this;return this.emitCodePoint(r===1?i[t]&~Ny.VALUE_LENGTH:i[t+1],n),r===3&&this.emitCodePoint(i[t+2],n),n}end(){var t;switch(this.state){case ua.NamedEntity:return this.result!==0&&(this.decodeMode!==Op.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case ua.NumericDecimal:return this.emitNumericEntity(0,2);case ua.NumericHex:return this.emitNumericEntity(0,3);case ua.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case ua.EntityStart:return 0}}};function K6r(e,t,r,n){let i=(t&Ny.BRANCH_LENGTH)>>7,s=t&Ny.JUMP_TABLE;if(i===0)return s!==0&&n===s?r:-1;if(s){let u=n-s;return u<0||u>=i?-1:e[r+u]-1}let a=r,o=a+i-1;for(;a<=o;){let u=a+o>>>1,c=e[u];if(cn)o=u-1;else return e[u+i]}return-1}var KU={};ys(KU,{ATTRS:()=>Pp,DOCUMENT_MODE:()=>ho,NS:()=>Re,NUMBERED_HEADERS:()=>bI,SPECIAL_ELEMENTS:()=>Sye,TAG_ID:()=>R,TAG_NAMES:()=>ge,getTagID:()=>Ry,hasUnescapedText:()=>wye});var Re;(function(e){e.HTML="http://www.w3.org/1999/xhtml",e.MATHML="http://www.w3.org/1998/Math/MathML",e.SVG="http://www.w3.org/2000/svg",e.XLINK="http://www.w3.org/1999/xlink",e.XML="http://www.w3.org/XML/1998/namespace",e.XMLNS="http://www.w3.org/2000/xmlns/"})(Re||(Re={}));var Pp;(function(e){e.TYPE="type",e.ACTION="action",e.ENCODING="encoding",e.PROMPT="prompt",e.NAME="name",e.COLOR="color",e.FACE="face",e.SIZE="size"})(Pp||(Pp={}));var ho;(function(e){e.NO_QUIRKS="no-quirks",e.QUIRKS="quirks",e.LIMITED_QUIRKS="limited-quirks"})(ho||(ho={}));var ge;(function(e){e.A="a",e.ADDRESS="address",e.ANNOTATION_XML="annotation-xml",e.APPLET="applet",e.AREA="area",e.ARTICLE="article",e.ASIDE="aside",e.B="b",e.BASE="base",e.BASEFONT="basefont",e.BGSOUND="bgsound",e.BIG="big",e.BLOCKQUOTE="blockquote",e.BODY="body",e.BR="br",e.BUTTON="button",e.CAPTION="caption",e.CENTER="center",e.CODE="code",e.COL="col",e.COLGROUP="colgroup",e.DD="dd",e.DESC="desc",e.DETAILS="details",e.DIALOG="dialog",e.DIR="dir",e.DIV="div",e.DL="dl",e.DT="dt",e.EM="em",e.EMBED="embed",e.FIELDSET="fieldset",e.FIGCAPTION="figcaption",e.FIGURE="figure",e.FONT="font",e.FOOTER="footer",e.FOREIGN_OBJECT="foreignObject",e.FORM="form",e.FRAME="frame",e.FRAMESET="frameset",e.H1="h1",e.H2="h2",e.H3="h3",e.H4="h4",e.H5="h5",e.H6="h6",e.HEAD="head",e.HEADER="header",e.HGROUP="hgroup",e.HR="hr",e.HTML="html",e.I="i",e.IMG="img",e.IMAGE="image",e.INPUT="input",e.IFRAME="iframe",e.KEYGEN="keygen",e.LABEL="label",e.LI="li",e.LINK="link",e.LISTING="listing",e.MAIN="main",e.MALIGNMARK="malignmark",e.MARQUEE="marquee",e.MATH="math",e.MENU="menu",e.META="meta",e.MGLYPH="mglyph",e.MI="mi",e.MO="mo",e.MN="mn",e.MS="ms",e.MTEXT="mtext",e.NAV="nav",e.NOBR="nobr",e.NOFRAMES="noframes",e.NOEMBED="noembed",e.NOSCRIPT="noscript",e.OBJECT="object",e.OL="ol",e.OPTGROUP="optgroup",e.OPTION="option",e.P="p",e.PARAM="param",e.PLAINTEXT="plaintext",e.PRE="pre",e.RB="rb",e.RP="rp",e.RT="rt",e.RTC="rtc",e.RUBY="ruby",e.S="s",e.SCRIPT="script",e.SEARCH="search",e.SECTION="section",e.SELECT="select",e.SOURCE="source",e.SMALL="small",e.SPAN="span",e.STRIKE="strike",e.STRONG="strong",e.STYLE="style",e.SUB="sub",e.SUMMARY="summary",e.SUP="sup",e.TABLE="table",e.TBODY="tbody",e.TEMPLATE="template",e.TEXTAREA="textarea",e.TFOOT="tfoot",e.TD="td",e.TH="th",e.THEAD="thead",e.TITLE="title",e.TR="tr",e.TRACK="track",e.TT="tt",e.U="u",e.UL="ul",e.SVG="svg",e.VAR="var",e.WBR="wbr",e.XMP="xmp"})(ge||(ge={}));var R;(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.A=1]="A",e[e.ADDRESS=2]="ADDRESS",e[e.ANNOTATION_XML=3]="ANNOTATION_XML",e[e.APPLET=4]="APPLET",e[e.AREA=5]="AREA",e[e.ARTICLE=6]="ARTICLE",e[e.ASIDE=7]="ASIDE",e[e.B=8]="B",e[e.BASE=9]="BASE",e[e.BASEFONT=10]="BASEFONT",e[e.BGSOUND=11]="BGSOUND",e[e.BIG=12]="BIG",e[e.BLOCKQUOTE=13]="BLOCKQUOTE",e[e.BODY=14]="BODY",e[e.BR=15]="BR",e[e.BUTTON=16]="BUTTON",e[e.CAPTION=17]="CAPTION",e[e.CENTER=18]="CENTER",e[e.CODE=19]="CODE",e[e.COL=20]="COL",e[e.COLGROUP=21]="COLGROUP",e[e.DD=22]="DD",e[e.DESC=23]="DESC",e[e.DETAILS=24]="DETAILS",e[e.DIALOG=25]="DIALOG",e[e.DIR=26]="DIR",e[e.DIV=27]="DIV",e[e.DL=28]="DL",e[e.DT=29]="DT",e[e.EM=30]="EM",e[e.EMBED=31]="EMBED",e[e.FIELDSET=32]="FIELDSET",e[e.FIGCAPTION=33]="FIGCAPTION",e[e.FIGURE=34]="FIGURE",e[e.FONT=35]="FONT",e[e.FOOTER=36]="FOOTER",e[e.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",e[e.FORM=38]="FORM",e[e.FRAME=39]="FRAME",e[e.FRAMESET=40]="FRAMESET",e[e.H1=41]="H1",e[e.H2=42]="H2",e[e.H3=43]="H3",e[e.H4=44]="H4",e[e.H5=45]="H5",e[e.H6=46]="H6",e[e.HEAD=47]="HEAD",e[e.HEADER=48]="HEADER",e[e.HGROUP=49]="HGROUP",e[e.HR=50]="HR",e[e.HTML=51]="HTML",e[e.I=52]="I",e[e.IMG=53]="IMG",e[e.IMAGE=54]="IMAGE",e[e.INPUT=55]="INPUT",e[e.IFRAME=56]="IFRAME",e[e.KEYGEN=57]="KEYGEN",e[e.LABEL=58]="LABEL",e[e.LI=59]="LI",e[e.LINK=60]="LINK",e[e.LISTING=61]="LISTING",e[e.MAIN=62]="MAIN",e[e.MALIGNMARK=63]="MALIGNMARK",e[e.MARQUEE=64]="MARQUEE",e[e.MATH=65]="MATH",e[e.MENU=66]="MENU",e[e.META=67]="META",e[e.MGLYPH=68]="MGLYPH",e[e.MI=69]="MI",e[e.MO=70]="MO",e[e.MN=71]="MN",e[e.MS=72]="MS",e[e.MTEXT=73]="MTEXT",e[e.NAV=74]="NAV",e[e.NOBR=75]="NOBR",e[e.NOFRAMES=76]="NOFRAMES",e[e.NOEMBED=77]="NOEMBED",e[e.NOSCRIPT=78]="NOSCRIPT",e[e.OBJECT=79]="OBJECT",e[e.OL=80]="OL",e[e.OPTGROUP=81]="OPTGROUP",e[e.OPTION=82]="OPTION",e[e.P=83]="P",e[e.PARAM=84]="PARAM",e[e.PLAINTEXT=85]="PLAINTEXT",e[e.PRE=86]="PRE",e[e.RB=87]="RB",e[e.RP=88]="RP",e[e.RT=89]="RT",e[e.RTC=90]="RTC",e[e.RUBY=91]="RUBY",e[e.S=92]="S",e[e.SCRIPT=93]="SCRIPT",e[e.SEARCH=94]="SEARCH",e[e.SECTION=95]="SECTION",e[e.SELECT=96]="SELECT",e[e.SOURCE=97]="SOURCE",e[e.SMALL=98]="SMALL",e[e.SPAN=99]="SPAN",e[e.STRIKE=100]="STRIKE",e[e.STRONG=101]="STRONG",e[e.STYLE=102]="STYLE",e[e.SUB=103]="SUB",e[e.SUMMARY=104]="SUMMARY",e[e.SUP=105]="SUP",e[e.TABLE=106]="TABLE",e[e.TBODY=107]="TBODY",e[e.TEMPLATE=108]="TEMPLATE",e[e.TEXTAREA=109]="TEXTAREA",e[e.TFOOT=110]="TFOOT",e[e.TD=111]="TD",e[e.TH=112]="TH",e[e.THEAD=113]="THEAD",e[e.TITLE=114]="TITLE",e[e.TR=115]="TR",e[e.TRACK=116]="TRACK",e[e.TT=117]="TT",e[e.U=118]="U",e[e.UL=119]="UL",e[e.SVG=120]="SVG",e[e.VAR=121]="VAR",e[e.WBR=122]="WBR",e[e.XMP=123]="XMP"})(R||(R={}));var V6r=new Map([[ge.A,R.A],[ge.ADDRESS,R.ADDRESS],[ge.ANNOTATION_XML,R.ANNOTATION_XML],[ge.APPLET,R.APPLET],[ge.AREA,R.AREA],[ge.ARTICLE,R.ARTICLE],[ge.ASIDE,R.ASIDE],[ge.B,R.B],[ge.BASE,R.BASE],[ge.BASEFONT,R.BASEFONT],[ge.BGSOUND,R.BGSOUND],[ge.BIG,R.BIG],[ge.BLOCKQUOTE,R.BLOCKQUOTE],[ge.BODY,R.BODY],[ge.BR,R.BR],[ge.BUTTON,R.BUTTON],[ge.CAPTION,R.CAPTION],[ge.CENTER,R.CENTER],[ge.CODE,R.CODE],[ge.COL,R.COL],[ge.COLGROUP,R.COLGROUP],[ge.DD,R.DD],[ge.DESC,R.DESC],[ge.DETAILS,R.DETAILS],[ge.DIALOG,R.DIALOG],[ge.DIR,R.DIR],[ge.DIV,R.DIV],[ge.DL,R.DL],[ge.DT,R.DT],[ge.EM,R.EM],[ge.EMBED,R.EMBED],[ge.FIELDSET,R.FIELDSET],[ge.FIGCAPTION,R.FIGCAPTION],[ge.FIGURE,R.FIGURE],[ge.FONT,R.FONT],[ge.FOOTER,R.FOOTER],[ge.FOREIGN_OBJECT,R.FOREIGN_OBJECT],[ge.FORM,R.FORM],[ge.FRAME,R.FRAME],[ge.FRAMESET,R.FRAMESET],[ge.H1,R.H1],[ge.H2,R.H2],[ge.H3,R.H3],[ge.H4,R.H4],[ge.H5,R.H5],[ge.H6,R.H6],[ge.HEAD,R.HEAD],[ge.HEADER,R.HEADER],[ge.HGROUP,R.HGROUP],[ge.HR,R.HR],[ge.HTML,R.HTML],[ge.I,R.I],[ge.IMG,R.IMG],[ge.IMAGE,R.IMAGE],[ge.INPUT,R.INPUT],[ge.IFRAME,R.IFRAME],[ge.KEYGEN,R.KEYGEN],[ge.LABEL,R.LABEL],[ge.LI,R.LI],[ge.LINK,R.LINK],[ge.LISTING,R.LISTING],[ge.MAIN,R.MAIN],[ge.MALIGNMARK,R.MALIGNMARK],[ge.MARQUEE,R.MARQUEE],[ge.MATH,R.MATH],[ge.MENU,R.MENU],[ge.META,R.META],[ge.MGLYPH,R.MGLYPH],[ge.MI,R.MI],[ge.MO,R.MO],[ge.MN,R.MN],[ge.MS,R.MS],[ge.MTEXT,R.MTEXT],[ge.NAV,R.NAV],[ge.NOBR,R.NOBR],[ge.NOFRAMES,R.NOFRAMES],[ge.NOEMBED,R.NOEMBED],[ge.NOSCRIPT,R.NOSCRIPT],[ge.OBJECT,R.OBJECT],[ge.OL,R.OL],[ge.OPTGROUP,R.OPTGROUP],[ge.OPTION,R.OPTION],[ge.P,R.P],[ge.PARAM,R.PARAM],[ge.PLAINTEXT,R.PLAINTEXT],[ge.PRE,R.PRE],[ge.RB,R.RB],[ge.RP,R.RP],[ge.RT,R.RT],[ge.RTC,R.RTC],[ge.RUBY,R.RUBY],[ge.S,R.S],[ge.SCRIPT,R.SCRIPT],[ge.SEARCH,R.SEARCH],[ge.SECTION,R.SECTION],[ge.SELECT,R.SELECT],[ge.SOURCE,R.SOURCE],[ge.SMALL,R.SMALL],[ge.SPAN,R.SPAN],[ge.STRIKE,R.STRIKE],[ge.STRONG,R.STRONG],[ge.STYLE,R.STYLE],[ge.SUB,R.SUB],[ge.SUMMARY,R.SUMMARY],[ge.SUP,R.SUP],[ge.TABLE,R.TABLE],[ge.TBODY,R.TBODY],[ge.TEMPLATE,R.TEMPLATE],[ge.TEXTAREA,R.TEXTAREA],[ge.TFOOT,R.TFOOT],[ge.TD,R.TD],[ge.TH,R.TH],[ge.THEAD,R.THEAD],[ge.TITLE,R.TITLE],[ge.TR,R.TR],[ge.TRACK,R.TRACK],[ge.TT,R.TT],[ge.U,R.U],[ge.UL,R.UL],[ge.SVG,R.SVG],[ge.VAR,R.VAR],[ge.WBR,R.WBR],[ge.XMP,R.XMP]]);function Ry(e){var t;return(t=V6r.get(e))!==null&&t!==void 0?t:R.UNKNOWN}var Fe=R,Sye={[Re.HTML]:new Set([Fe.ADDRESS,Fe.APPLET,Fe.AREA,Fe.ARTICLE,Fe.ASIDE,Fe.BASE,Fe.BASEFONT,Fe.BGSOUND,Fe.BLOCKQUOTE,Fe.BODY,Fe.BR,Fe.BUTTON,Fe.CAPTION,Fe.CENTER,Fe.COL,Fe.COLGROUP,Fe.DD,Fe.DETAILS,Fe.DIR,Fe.DIV,Fe.DL,Fe.DT,Fe.EMBED,Fe.FIELDSET,Fe.FIGCAPTION,Fe.FIGURE,Fe.FOOTER,Fe.FORM,Fe.FRAME,Fe.FRAMESET,Fe.H1,Fe.H2,Fe.H3,Fe.H4,Fe.H5,Fe.H6,Fe.HEAD,Fe.HEADER,Fe.HGROUP,Fe.HR,Fe.HTML,Fe.IFRAME,Fe.IMG,Fe.INPUT,Fe.LI,Fe.LINK,Fe.LISTING,Fe.MAIN,Fe.MARQUEE,Fe.MENU,Fe.META,Fe.NAV,Fe.NOEMBED,Fe.NOFRAMES,Fe.NOSCRIPT,Fe.OBJECT,Fe.OL,Fe.P,Fe.PARAM,Fe.PLAINTEXT,Fe.PRE,Fe.SCRIPT,Fe.SECTION,Fe.SELECT,Fe.SOURCE,Fe.STYLE,Fe.SUMMARY,Fe.TABLE,Fe.TBODY,Fe.TD,Fe.TEMPLATE,Fe.TEXTAREA,Fe.TFOOT,Fe.TH,Fe.THEAD,Fe.TITLE,Fe.TR,Fe.TRACK,Fe.UL,Fe.WBR,Fe.XMP]),[Re.MATHML]:new Set([Fe.MI,Fe.MO,Fe.MN,Fe.MS,Fe.MTEXT,Fe.ANNOTATION_XML]),[Re.SVG]:new Set([Fe.TITLE,Fe.FOREIGN_OBJECT,Fe.DESC]),[Re.XLINK]:new Set,[Re.XML]:new Set,[Re.XMLNS]:new Set},bI=new Set([Fe.H1,Fe.H2,Fe.H3,Fe.H4,Fe.H5,Fe.H6]),z6r=new Set([ge.STYLE,ge.SCRIPT,ge.XMP,ge.IFRAME,ge.NOEMBED,ge.NOFRAMES,ge.PLAINTEXT]);function wye(e,t){return z6r.has(e)||t&&e===ge.NOSCRIPT}var oe;(function(e){e[e.DATA=0]="DATA",e[e.RCDATA=1]="RCDATA",e[e.RAWTEXT=2]="RAWTEXT",e[e.SCRIPT_DATA=3]="SCRIPT_DATA",e[e.PLAINTEXT=4]="PLAINTEXT",e[e.TAG_OPEN=5]="TAG_OPEN",e[e.END_TAG_OPEN=6]="END_TAG_OPEN",e[e.TAG_NAME=7]="TAG_NAME",e[e.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",e[e.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",e[e.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",e[e.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",e[e.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",e[e.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",e[e.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",e[e.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",e[e.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",e[e.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",e[e.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",e[e.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",e[e.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",e[e.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",e[e.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",e[e.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",e[e.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",e[e.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",e[e.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",e[e.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",e[e.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",e[e.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",e[e.BOGUS_COMMENT=40]="BOGUS_COMMENT",e[e.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",e[e.COMMENT_START=42]="COMMENT_START",e[e.COMMENT_START_DASH=43]="COMMENT_START_DASH",e[e.COMMENT=44]="COMMENT",e[e.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",e[e.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",e[e.COMMENT_END_DASH=49]="COMMENT_END_DASH",e[e.COMMENT_END=50]="COMMENT_END",e[e.COMMENT_END_BANG=51]="COMMENT_END_BANG",e[e.DOCTYPE=52]="DOCTYPE",e[e.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",e[e.DOCTYPE_NAME=54]="DOCTYPE_NAME",e[e.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",e[e.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",e[e.CDATA_SECTION=68]="CDATA_SECTION",e[e.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",e[e.CDATA_SECTION_END=70]="CDATA_SECTION_END",e[e.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",e[e.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(oe||(oe={}));var mo={DATA:oe.DATA,RCDATA:oe.RCDATA,RAWTEXT:oe.RAWTEXT,SCRIPT_DATA:oe.SCRIPT_DATA,PLAINTEXT:oe.PLAINTEXT,CDATA_SECTION:oe.CDATA_SECTION};function Q6r(e){return e>=ne.DIGIT_0&&e<=ne.DIGIT_9}function qO(e){return e>=ne.LATIN_CAPITAL_A&&e<=ne.LATIN_CAPITAL_Z}function G6r(e){return e>=ne.LATIN_SMALL_A&&e<=ne.LATIN_SMALL_Z}function Dy(e){return G6r(e)||qO(e)}function Ebt(e){return Dy(e)||Q6r(e)}function VU(e){return e+32}function wbt(e){return e===ne.SPACE||e===ne.LINE_FEED||e===ne.TABULATION||e===ne.FORM_FEED}function Sbt(e){return wbt(e)||e===ne.SOLIDUS||e===ne.GREATER_THAN_SIGN}function Y6r(e){return e===ne.NULL?be.nullCharacterReference:e>1114111?be.characterReferenceOutsideUnicodeRange:BU(e)?be.surrogateCharacterReference:FU(e)?be.noncharacterCharacterReference:$U(e)||e===ne.CARRIAGE_RETURN?be.controlCharacterReference:null}var jO=class{constructor(t,r){this.options=t,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=oe.DATA,this.returnState=oe.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new UU(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new HU(jU,(n,i)=>{this.preprocessor.pos=this.entityStartPos+i-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(be.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(be.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let i=Y6r(n);i&&this._err(i,1)}}:void 0)}_err(t,r=0){var n,i;(i=(n=this.handler).onParseError)===null||i===void 0||i.call(n,this.preprocessor.getError(t,r))}getCurrentLocation(t){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-t,startOffset:this.preprocessor.offset-t,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let t=this._consume();this._ensureHibernation()||this._callState(t)}this.inLoop=!1}}pause(){this.paused=!0}resume(t){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||t?.())}write(t,r,n){this.active=!0,this.preprocessor.write(t,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(t){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(t),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(t){this.consumedAfterSnapshot+=t;for(let r=0;r0&&this._err(be.endTagWithAttributes),t.selfClosing&&this._err(be.endTagWithTrailingSolidus),this.handler.onEndTag(t)),this.preprocessor.dropParsedChunk()}emitCurrentComment(t){this.prepareToken(t),this.handler.onComment(t),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(t){this.prepareToken(t),this.handler.onDoctype(t),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(t){if(this.currentCharacterToken){switch(t&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=t.startLine,this.currentCharacterToken.location.endCol=t.startCol,this.currentCharacterToken.location.endOffset=t.startOffset),this.currentCharacterToken.type){case Nr.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case Nr.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case Nr.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let t=this.getCurrentLocation(0);t&&(t.endLine=t.startLine,t.endCol=t.startCol,t.endOffset=t.startOffset),this._emitCurrentCharacterToken(t),this.handler.onEof({type:Nr.EOF,location:t}),this.active=!1}_appendCharToCurrentCharacterToken(t,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===t){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(t,r)}_emitCodePoint(t){let r=wbt(t)?Nr.WHITESPACE_CHARACTER:t===ne.NULL?Nr.NULL_CHARACTER:Nr.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(t))}_emitChars(t){this._appendCharToCurrentCharacterToken(Nr.CHARACTER,t)}_startCharacterReference(){this.returnState=this.state,this.state=oe.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?Op.Attribute:Op.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===oe.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===oe.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===oe.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(t){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(t):this._emitCodePoint(t)}_callState(t){switch(this.state){case oe.DATA:{this._stateData(t);break}case oe.RCDATA:{this._stateRcdata(t);break}case oe.RAWTEXT:{this._stateRawtext(t);break}case oe.SCRIPT_DATA:{this._stateScriptData(t);break}case oe.PLAINTEXT:{this._statePlaintext(t);break}case oe.TAG_OPEN:{this._stateTagOpen(t);break}case oe.END_TAG_OPEN:{this._stateEndTagOpen(t);break}case oe.TAG_NAME:{this._stateTagName(t);break}case oe.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(t);break}case oe.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(t);break}case oe.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(t);break}case oe.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(t);break}case oe.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(t);break}case oe.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(t);break}case oe.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(t);break}case oe.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(t);break}case oe.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(t);break}case oe.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(t);break}case oe.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(t);break}case oe.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(t);break}case oe.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(t);break}case oe.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(t);break}case oe.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(t);break}case oe.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(t);break}case oe.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(t);break}case oe.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(t);break}case oe.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(t);break}case oe.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(t);break}case oe.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(t);break}case oe.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(t);break}case oe.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(t);break}case oe.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(t);break}case oe.ATTRIBUTE_NAME:{this._stateAttributeName(t);break}case oe.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(t);break}case oe.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(t);break}case oe.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(t);break}case oe.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(t);break}case oe.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(t);break}case oe.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(t);break}case oe.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(t);break}case oe.BOGUS_COMMENT:{this._stateBogusComment(t);break}case oe.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(t);break}case oe.COMMENT_START:{this._stateCommentStart(t);break}case oe.COMMENT_START_DASH:{this._stateCommentStartDash(t);break}case oe.COMMENT:{this._stateComment(t);break}case oe.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(t);break}case oe.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(t);break}case oe.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(t);break}case oe.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(t);break}case oe.COMMENT_END_DASH:{this._stateCommentEndDash(t);break}case oe.COMMENT_END:{this._stateCommentEnd(t);break}case oe.COMMENT_END_BANG:{this._stateCommentEndBang(t);break}case oe.DOCTYPE:{this._stateDoctype(t);break}case oe.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(t);break}case oe.DOCTYPE_NAME:{this._stateDoctypeName(t);break}case oe.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(t);break}case oe.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(t);break}case oe.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(t);break}case oe.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(t);break}case oe.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(t);break}case oe.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(t);break}case oe.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(t);break}case oe.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(t);break}case oe.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(t);break}case oe.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(t);break}case oe.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(t);break}case oe.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(t);break}case oe.BOGUS_DOCTYPE:{this._stateBogusDoctype(t);break}case oe.CDATA_SECTION:{this._stateCdataSection(t);break}case oe.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(t);break}case oe.CDATA_SECTION_END:{this._stateCdataSectionEnd(t);break}case oe.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case oe.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(t);break}default:throw new Error("Unknown state")}}_stateData(t){switch(t){case ne.LESS_THAN_SIGN:{this.state=oe.TAG_OPEN;break}case ne.AMPERSAND:{this._startCharacterReference();break}case ne.NULL:{this._err(be.unexpectedNullCharacter),this._emitCodePoint(t);break}case ne.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRcdata(t){switch(t){case ne.AMPERSAND:{this._startCharacterReference();break}case ne.LESS_THAN_SIGN:{this.state=oe.RCDATA_LESS_THAN_SIGN;break}case ne.NULL:{this._err(be.unexpectedNullCharacter),this._emitChars(Jn);break}case ne.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRawtext(t){switch(t){case ne.LESS_THAN_SIGN:{this.state=oe.RAWTEXT_LESS_THAN_SIGN;break}case ne.NULL:{this._err(be.unexpectedNullCharacter),this._emitChars(Jn);break}case ne.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateScriptData(t){switch(t){case ne.LESS_THAN_SIGN:{this.state=oe.SCRIPT_DATA_LESS_THAN_SIGN;break}case ne.NULL:{this._err(be.unexpectedNullCharacter),this._emitChars(Jn);break}case ne.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_statePlaintext(t){switch(t){case ne.NULL:{this._err(be.unexpectedNullCharacter),this._emitChars(Jn);break}case ne.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateTagOpen(t){if(Dy(t))this._createStartTagToken(),this.state=oe.TAG_NAME,this._stateTagName(t);else switch(t){case ne.EXCLAMATION_MARK:{this.state=oe.MARKUP_DECLARATION_OPEN;break}case ne.SOLIDUS:{this.state=oe.END_TAG_OPEN;break}case ne.QUESTION_MARK:{this._err(be.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=oe.BOGUS_COMMENT,this._stateBogusComment(t);break}case ne.EOF:{this._err(be.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(be.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=oe.DATA,this._stateData(t)}}_stateEndTagOpen(t){if(Dy(t))this._createEndTagToken(),this.state=oe.TAG_NAME,this._stateTagName(t);else switch(t){case ne.GREATER_THAN_SIGN:{this._err(be.missingEndTagName),this.state=oe.DATA;break}case ne.EOF:{this._err(be.eofBeforeTagName),this._emitChars("");break}case ne.NULL:{this._err(be.unexpectedNullCharacter),this.state=oe.SCRIPT_DATA_ESCAPED,this._emitChars(Jn);break}case ne.EOF:{this._err(be.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=oe.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedLessThanSign(t){t===ne.SOLIDUS?this.state=oe.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:Dy(t)?(this._emitChars("<"),this.state=oe.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(t)):(this._emitChars("<"),this.state=oe.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagOpen(t){Dy(t)?(this.state=oe.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(t)):(this._emitChars("");break}case ne.NULL:{this._err(be.unexpectedNullCharacter),this.state=oe.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(Jn);break}case ne.EOF:{this._err(be.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=oe.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedLessThanSign(t){t===ne.SOLIDUS?(this.state=oe.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=oe.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateScriptDataDoubleEscapeEnd(t){if(this.preprocessor.startsWith(iu.SCRIPT,!1)&&Sbt(this.preprocessor.peek(iu.SCRIPT.length))){this._emitCodePoint(t);for(let r=0;r0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!0)}replace(t,r){let n=this._indexOf(t);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(t,r,n){let i=this._indexOf(t)+1;this.items.splice(i,0,r),this.tagIDs.splice(i,0,n),this.stackTop++,i===this.stackTop&&this._updateCurrentElement(),this.current&&this.currentTagId!==void 0&&this.handler.onItemPush(this.current,this.currentTagId,i===this.stackTop)}popUntilTagNamePopped(t){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(t,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Re.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(t){for(;this.stackTop>=t;){let r=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(r,this.stackTop=0;n--)if(t.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(t,r){let n=this._indexOfTagNames(t,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(eFr,Re.HTML)}clearBackToTableBodyContext(){this.clearBackTo(Z6r,Re.HTML)}clearBackToTableRowContext(){this.clearBackTo(J6r,Re.HTML)}remove(t){let r=this._indexOf(t);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===R.BODY?this.items[1]:null}contains(t){return this._indexOf(t)>-1}getCommonAncestor(t){let r=this._indexOf(t)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===R.HTML}hasInDynamicScope(t,r){for(let n=this.stackTop;n>=0;n--){let i=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Re.HTML:{if(i===t)return!0;if(r.has(i))return!1;break}case Re.SVG:{if(Cbt.has(i))return!1;break}case Re.MATHML:{if(xbt.has(i))return!1;break}}}return!0}hasInScope(t){return this.hasInDynamicScope(t,zU)}hasInListItemScope(t){return this.hasInDynamicScope(t,W6r)}hasInButtonScope(t){return this.hasInDynamicScope(t,X6r)}hasNumberedHeaderInScope(){for(let t=this.stackTop;t>=0;t--){let r=this.tagIDs[t];switch(this.treeAdapter.getNamespaceURI(this.items[t])){case Re.HTML:{if(bI.has(r))return!0;if(zU.has(r))return!1;break}case Re.SVG:{if(Cbt.has(r))return!1;break}case Re.MATHML:{if(xbt.has(r))return!1;break}}}return!0}hasInTableScope(t){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Re.HTML)switch(this.tagIDs[r]){case t:return!0;case R.TABLE:case R.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let t=this.stackTop;t>=0;t--)if(this.treeAdapter.getNamespaceURI(this.items[t])===Re.HTML)switch(this.tagIDs[t]){case R.TBODY:case R.THEAD:case R.TFOOT:return!0;case R.TABLE:case R.HTML:return!1}return!0}hasInSelectScope(t){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Re.HTML)switch(this.tagIDs[r]){case t:return!0;case R.OPTION:case R.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&Tbt.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&Ibt.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(t){for(;this.currentTagId!==void 0&&this.currentTagId!==t&&Ibt.has(this.currentTagId);)this.pop()}};var Jd;(function(e){e[e.Marker=0]="Marker",e[e.Element=1]="Element"})(Jd||(Jd={}));var Nbt={type:Jd.Marker},GU=class{constructor(t){this.treeAdapter=t,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(t,r){let n=[],i=r.length,s=this.treeAdapter.getTagName(t),a=this.treeAdapter.getNamespaceURI(t);for(let o=0;o[a.name,a.value])),s=0;for(let a=0;ai.get(u.name)===u.value)&&(s+=1,s>=3&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(Nbt)}pushElement(t,r){this._ensureNoahArkCondition(t),this.entries.unshift({type:Jd.Element,element:t,token:r})}insertElementAfterBookmark(t,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:Jd.Element,element:t,token:r})}removeEntry(t){let r=this.entries.indexOf(t);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let t=this.entries.indexOf(Nbt);t===-1?this.entries.length=0:this.entries.splice(0,t+1)}getElementEntryInScopeWithTagName(t){let r=this.entries.find(n=>n.type===Jd.Marker||this.treeAdapter.getTagName(n.element)===t);return r&&r.type===Jd.Element?r:null}getElementEntry(t){return this.entries.find(r=>r.type===Jd.Element&&r.element===t)}};var Ml={createDocument(){return{nodeName:"#document",mode:ho.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(e,t,r){return{nodeName:e,tagName:e,attrs:r,namespaceURI:t,childNodes:[],parentNode:null}},createCommentNode(e){return{nodeName:"#comment",data:e,parentNode:null}},createTextNode(e){return{nodeName:"#text",value:e,parentNode:null}},appendChild(e,t){e.childNodes.push(t),t.parentNode=e},insertBefore(e,t,r){let n=e.childNodes.indexOf(r);e.childNodes.splice(n,0,t),t.parentNode=e},setTemplateContent(e,t){e.content=t},getTemplateContent(e){return e.content},setDocumentType(e,t,r,n){let i=e.childNodes.find(s=>s.nodeName==="#documentType");if(i)i.name=t,i.publicId=r,i.systemId=n;else{let s={nodeName:"#documentType",name:t,publicId:r,systemId:n,parentNode:null};Ml.appendChild(e,s)}},setDocumentMode(e,t){e.mode=t},getDocumentMode(e){return e.mode},detachNode(e){if(e.parentNode){let t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},insertText(e,t){if(e.childNodes.length>0){let r=e.childNodes[e.childNodes.length-1];if(Ml.isTextNode(r)){r.value+=t;return}}Ml.appendChild(e,Ml.createTextNode(t))},insertTextBefore(e,t,r){let n=e.childNodes[e.childNodes.indexOf(r)-1];n&&Ml.isTextNode(n)?n.value+=t:Ml.insertBefore(e,Ml.createTextNode(t),r)},adoptAttributes(e,t){let r=new Set(e.attrs.map(n=>n.name));for(let n=0;ne.startsWith(r))}function Pbt(e){return e.name===Dbt&&e.publicId===null&&(e.systemId===null||e.systemId===rFr)}function Mbt(e){if(e.name!==Dbt)return ho.QUIRKS;let{systemId:t}=e;if(t&&t.toLowerCase()===nFr)return ho.QUIRKS;let{publicId:r}=e;if(r!==null){if(r=r.toLowerCase(),sFr.has(r))return ho.QUIRKS;let n=t===null?iFr:kbt;if(Rbt(r,n))return ho.QUIRKS;if(n=t===null?Obt:aFr,Rbt(r,n))return ho.LIMITED_QUIRKS}return ho.NO_QUIRKS}var Lbt={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},uFr="definitionurl",cFr="definitionURL",lFr=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e])),dFr=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Re.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Re.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Re.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Re.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Re.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Re.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Re.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Re.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Re.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Re.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Re.XMLNS}]]),fFr=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),pFr=new Set([R.B,R.BIG,R.BLOCKQUOTE,R.BODY,R.BR,R.CENTER,R.CODE,R.DD,R.DIV,R.DL,R.DT,R.EM,R.EMBED,R.H1,R.H2,R.H3,R.H4,R.H5,R.H6,R.HEAD,R.HR,R.I,R.IMG,R.LI,R.LISTING,R.MENU,R.META,R.NOBR,R.OL,R.P,R.PRE,R.RUBY,R.S,R.SMALL,R.SPAN,R.STRONG,R.STRIKE,R.SUB,R.SUP,R.TABLE,R.TT,R.U,R.UL,R.VAR]);function Bbt(e){let t=e.tagID;return t===R.FONT&&e.attrs.some(({name:n})=>n===Pp.COLOR||n===Pp.SIZE||n===Pp.FACE)||pFr.has(t)}function Iye(e){for(let t=0;t0&&this._setContextModes(t,r)}onItemPop(t,r){var n,i;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(t,this.currentToken),(i=(n=this.treeAdapter).onItemPop)===null||i===void 0||i.call(n,t,this.openElements.current),r){let s,a;this.openElements.stackTop===0&&this.fragmentContext?(s=this.fragmentContext,a=this.fragmentContextID):{current:s,currentTagId:a}=this.openElements,this._setContextModes(s,a)}}_setContextModes(t,r){let n=t===this.document||t&&this.treeAdapter.getNamespaceURI(t)===Re.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&t!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,t)}_switchToTextParsing(t,r){this._insertElement(t,Re.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=le.TEXT}switchToPlaintextParsing(){this.insertionMode=le.TEXT,this.originalInsertionMode=le.IN_BODY,this.tokenizer.state=mo.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let t=this.fragmentContext;for(;t;){if(this.treeAdapter.getTagName(t)===ge.FORM){this.formElement=t;break}t=this.treeAdapter.getParentNode(t)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Re.HTML))switch(this.fragmentContextID){case R.TITLE:case R.TEXTAREA:{this.tokenizer.state=mo.RCDATA;break}case R.STYLE:case R.XMP:case R.IFRAME:case R.NOEMBED:case R.NOFRAMES:case R.NOSCRIPT:{this.tokenizer.state=mo.RAWTEXT;break}case R.SCRIPT:{this.tokenizer.state=mo.SCRIPT_DATA;break}case R.PLAINTEXT:{this.tokenizer.state=mo.PLAINTEXT;break}default:}}_setDocumentType(t){let r=t.name||"",n=t.publicId||"",i=t.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,i),t.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,t.location)}}_attachElementToTree(t,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(t,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(t);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,t)}}_appendElement(t,r){let n=this.treeAdapter.createElement(t.tagName,r,t.attrs);this._attachElementToTree(n,t.location)}_insertElement(t,r){let n=this.treeAdapter.createElement(t.tagName,r,t.attrs);this._attachElementToTree(n,t.location),this.openElements.push(n,t.tagID)}_insertFakeElement(t,r){let n=this.treeAdapter.createElement(t,Re.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(t){let r=this.treeAdapter.createElement(t.tagName,Re.HTML,t.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,t.location),this.openElements.push(r,t.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let t=this.treeAdapter.createElement(ge.HTML,Re.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(t,null),this.treeAdapter.appendChild(this.openElements.current,t),this.openElements.push(t,R.HTML)}_appendCommentNode(t,r){let n=this.treeAdapter.createCommentNode(t.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,t.location)}_insertCharacters(t){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,t.chars,n):this.treeAdapter.insertText(r,t.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,t.chars)),!t.location)return;let i=this.treeAdapter.getChildNodes(r),s=n?i.lastIndexOf(n):i.length,a=i[s-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:u,endCol:c,endOffset:l}=t.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:u,endCol:c,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,t.location)}_adoptNodes(t,r){for(let n=this.treeAdapter.getFirstChild(t);n;n=this.treeAdapter.getFirstChild(t))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(t,r){if(this.treeAdapter.getNodeSourceCodeLocation(t)&&r.location){let n=r.location,i=this.treeAdapter.getTagName(t),s=r.type===Nr.END_TAG&&i===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(t,s)}}shouldProcessStartTagTokenInForeignContent(t){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,t.tagID===R.SVG&&this.treeAdapter.getTagName(r)===ge.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Re.MATHML?!1:this.tokenizer.inForeignNode||(t.tagID===R.MGLYPH||t.tagID===R.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Re.HTML)}_processToken(t){switch(t.type){case Nr.CHARACTER:{this.onCharacter(t);break}case Nr.NULL_CHARACTER:{this.onNullCharacter(t);break}case Nr.COMMENT:{this.onComment(t);break}case Nr.DOCTYPE:{this.onDoctype(t);break}case Nr.START_TAG:{this._processStartTag(t);break}case Nr.END_TAG:{this.onEndTag(t);break}case Nr.EOF:{this.onEof(t);break}case Nr.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(t);break}}}_isIntegrationPoint(t,r,n){let i=this.treeAdapter.getNamespaceURI(r),s=this.treeAdapter.getAttrList(r);return Fbt(t,i,s,n)}_reconstructActiveFormattingElements(){let t=this.activeFormattingElements.entries.length;if(t){let r=this.activeFormattingElements.entries.findIndex(i=>i.type===Jd.Marker||this.openElements.contains(i.element)),n=r===-1?t-1:r-1;for(let i=n;i>=0;i--){let s=this.activeFormattingElements.entries[i];this._insertElement(s.token,this.treeAdapter.getNamespaceURI(s.element)),s.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=le.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(R.P),this.openElements.popUntilTagNamePopped(R.P)}_resetInsertionMode(){for(let t=this.openElements.stackTop;t>=0;t--)switch(t===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[t]){case R.TR:{this.insertionMode=le.IN_ROW;return}case R.TBODY:case R.THEAD:case R.TFOOT:{this.insertionMode=le.IN_TABLE_BODY;return}case R.CAPTION:{this.insertionMode=le.IN_CAPTION;return}case R.COLGROUP:{this.insertionMode=le.IN_COLUMN_GROUP;return}case R.TABLE:{this.insertionMode=le.IN_TABLE;return}case R.BODY:{this.insertionMode=le.IN_BODY;return}case R.FRAMESET:{this.insertionMode=le.IN_FRAMESET;return}case R.SELECT:{this._resetInsertionModeForSelect(t);return}case R.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case R.HTML:{this.insertionMode=this.headElement?le.AFTER_HEAD:le.BEFORE_HEAD;return}case R.TD:case R.TH:{if(t>0){this.insertionMode=le.IN_CELL;return}break}case R.HEAD:{if(t>0){this.insertionMode=le.IN_HEAD;return}break}}this.insertionMode=le.IN_BODY}_resetInsertionModeForSelect(t){if(t>0)for(let r=t-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===R.TEMPLATE)break;if(n===R.TABLE){this.insertionMode=le.IN_SELECT_IN_TABLE;return}}this.insertionMode=le.IN_SELECT}_isElementCausesFosterParenting(t){return Kbt.has(t)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let t=this.openElements.stackTop;t>=0;t--){let r=this.openElements.items[t];switch(this.openElements.tagIDs[t]){case R.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Re.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case R.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[t-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(t){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,t,r.beforeElement):this.treeAdapter.appendChild(r.parent,t)}_isSpecialElement(t,r){let n=this.treeAdapter.getNamespaceURI(t);return Sye[n].has(r)}onCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){Y5r(this,t);return}switch(this.insertionMode){case le.INITIAL:{HO(this,t);break}case le.BEFORE_HTML:{VO(this,t);break}case le.BEFORE_HEAD:{zO(this,t);break}case le.IN_HEAD:{QO(this,t);break}case le.IN_HEAD_NO_SCRIPT:{GO(this,t);break}case le.AFTER_HEAD:{YO(this,t);break}case le.IN_BODY:case le.IN_CAPTION:case le.IN_CELL:case le.IN_TEMPLATE:{zbt(this,t);break}case le.TEXT:case le.IN_SELECT:case le.IN_SELECT_IN_TABLE:{this._insertCharacters(t);break}case le.IN_TABLE:case le.IN_TABLE_BODY:case le.IN_ROW:{Cye(this,t);break}case le.IN_TABLE_TEXT:{Jbt(this,t);break}case le.IN_COLUMN_GROUP:{XU(this,t);break}case le.AFTER_BODY:{JU(this,t);break}case le.AFTER_AFTER_BODY:{WU(this,t);break}default:}}onNullCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){G5r(this,t);return}switch(this.insertionMode){case le.INITIAL:{HO(this,t);break}case le.BEFORE_HTML:{VO(this,t);break}case le.BEFORE_HEAD:{zO(this,t);break}case le.IN_HEAD:{QO(this,t);break}case le.IN_HEAD_NO_SCRIPT:{GO(this,t);break}case le.AFTER_HEAD:{YO(this,t);break}case le.TEXT:{this._insertCharacters(t);break}case le.IN_TABLE:case le.IN_TABLE_BODY:case le.IN_ROW:{Cye(this,t);break}case le.IN_COLUMN_GROUP:{XU(this,t);break}case le.AFTER_BODY:{JU(this,t);break}case le.AFTER_AFTER_BODY:{WU(this,t);break}default:}}onComment(t){if(this.skipNextNewLine=!1,this.currentNotInHTML){Tye(this,t);return}switch(this.insertionMode){case le.INITIAL:case le.BEFORE_HTML:case le.BEFORE_HEAD:case le.IN_HEAD:case le.IN_HEAD_NO_SCRIPT:case le.AFTER_HEAD:case le.IN_BODY:case le.IN_TABLE:case le.IN_CAPTION:case le.IN_COLUMN_GROUP:case le.IN_TABLE_BODY:case le.IN_ROW:case le.IN_CELL:case le.IN_SELECT:case le.IN_SELECT_IN_TABLE:case le.IN_TEMPLATE:case le.IN_FRAMESET:case le.AFTER_FRAMESET:{Tye(this,t);break}case le.IN_TABLE_TEXT:{KO(this,t);break}case le.AFTER_BODY:{xFr(this,t);break}case le.AFTER_AFTER_BODY:case le.AFTER_AFTER_FRAMESET:{CFr(this,t);break}default:}}onDoctype(t){switch(this.skipNextNewLine=!1,this.insertionMode){case le.INITIAL:{TFr(this,t);break}case le.BEFORE_HEAD:case le.IN_HEAD:case le.IN_HEAD_NO_SCRIPT:case le.AFTER_HEAD:{this._err(t,be.misplacedDoctype);break}case le.IN_TABLE_TEXT:{KO(this,t);break}default:}}onStartTag(t){this.skipNextNewLine=!1,this.currentToken=t,this._processStartTag(t),t.selfClosing&&!t.ackSelfClosing&&this._err(t,be.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(t){this.shouldProcessStartTagTokenInForeignContent(t)?W5r(this,t):this._startTagOutsideForeignContent(t)}_startTagOutsideForeignContent(t){switch(this.insertionMode){case le.INITIAL:{HO(this,t);break}case le.BEFORE_HTML:{NFr(this,t);break}case le.BEFORE_HEAD:{DFr(this,t);break}case le.IN_HEAD:{Zd(this,t);break}case le.IN_HEAD_NO_SCRIPT:{PFr(this,t);break}case le.AFTER_HEAD:{LFr(this,t);break}case le.IN_BODY:{go(this,t);break}case le.IN_TABLE:{SI(this,t);break}case le.IN_TABLE_TEXT:{KO(this,t);break}case le.IN_CAPTION:{k5r(this,t);break}case le.IN_COLUMN_GROUP:{kye(this,t);break}case le.IN_TABLE_BODY:{tq(this,t);break}case le.IN_ROW:{rq(this,t);break}case le.IN_CELL:{M5r(this,t);break}case le.IN_SELECT:{tEt(this,t);break}case le.IN_SELECT_IN_TABLE:{B5r(this,t);break}case le.IN_TEMPLATE:{F5r(this,t);break}case le.AFTER_BODY:{q5r(this,t);break}case le.IN_FRAMESET:{j5r(this,t);break}case le.AFTER_FRAMESET:{K5r(this,t);break}case le.AFTER_AFTER_BODY:{z5r(this,t);break}case le.AFTER_AFTER_FRAMESET:{Q5r(this,t);break}default:}}onEndTag(t){this.skipNextNewLine=!1,this.currentToken=t,this.currentNotInHTML?X5r(this,t):this._endTagOutsideForeignContent(t)}_endTagOutsideForeignContent(t){switch(this.insertionMode){case le.INITIAL:{HO(this,t);break}case le.BEFORE_HTML:{RFr(this,t);break}case le.BEFORE_HEAD:{kFr(this,t);break}case le.IN_HEAD:{OFr(this,t);break}case le.IN_HEAD_NO_SCRIPT:{MFr(this,t);break}case le.AFTER_HEAD:{BFr(this,t);break}case le.IN_BODY:{eq(this,t);break}case le.TEXT:{E5r(this,t);break}case le.IN_TABLE:{WO(this,t);break}case le.IN_TABLE_TEXT:{KO(this,t);break}case le.IN_CAPTION:{O5r(this,t);break}case le.IN_COLUMN_GROUP:{P5r(this,t);break}case le.IN_TABLE_BODY:{Nye(this,t);break}case le.IN_ROW:{eEt(this,t);break}case le.IN_CELL:{L5r(this,t);break}case le.IN_SELECT:{rEt(this,t);break}case le.IN_SELECT_IN_TABLE:{$5r(this,t);break}case le.IN_TEMPLATE:{U5r(this,t);break}case le.AFTER_BODY:{iEt(this,t);break}case le.IN_FRAMESET:{H5r(this,t);break}case le.AFTER_FRAMESET:{V5r(this,t);break}case le.AFTER_AFTER_BODY:{WU(this,t);break}default:}}onEof(t){switch(this.insertionMode){case le.INITIAL:{HO(this,t);break}case le.BEFORE_HTML:{VO(this,t);break}case le.BEFORE_HEAD:{zO(this,t);break}case le.IN_HEAD:{QO(this,t);break}case le.IN_HEAD_NO_SCRIPT:{GO(this,t);break}case le.AFTER_HEAD:{YO(this,t);break}case le.IN_BODY:case le.IN_TABLE:case le.IN_CAPTION:case le.IN_COLUMN_GROUP:case le.IN_TABLE_BODY:case le.IN_ROW:case le.IN_CELL:case le.IN_SELECT:case le.IN_SELECT_IN_TABLE:{Wbt(this,t);break}case le.TEXT:{S5r(this,t);break}case le.IN_TABLE_TEXT:{KO(this,t);break}case le.IN_TEMPLATE:{nEt(this,t);break}case le.AFTER_BODY:case le.IN_FRAMESET:case le.AFTER_FRAMESET:case le.AFTER_AFTER_BODY:case le.AFTER_AFTER_FRAMESET:{Dye(this,t);break}default:}}onWhitespaceCharacter(t){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,t.chars.charCodeAt(0)===ne.LINE_FEED)){if(t.chars.length===1)return;t.chars=t.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(t);return}switch(this.insertionMode){case le.IN_HEAD:case le.IN_HEAD_NO_SCRIPT:case le.AFTER_HEAD:case le.TEXT:case le.IN_COLUMN_GROUP:case le.IN_SELECT:case le.IN_SELECT_IN_TABLE:case le.IN_FRAMESET:case le.AFTER_FRAMESET:{this._insertCharacters(t);break}case le.IN_BODY:case le.IN_CAPTION:case le.IN_CELL:case le.IN_TEMPLATE:case le.AFTER_BODY:case le.AFTER_AFTER_BODY:case le.AFTER_AFTER_FRAMESET:{Vbt(this,t);break}case le.IN_TABLE:case le.IN_TABLE_BODY:case le.IN_ROW:{Cye(this,t);break}case le.IN_TABLE_TEXT:{Xbt(this,t);break}default:}}};function vFr(e,t){let r=e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);return r?e.openElements.contains(r.element)?e.openElements.hasInScope(t.tagID)||(r=null):(e.activeFormattingElements.removeEntry(r),r=null):Ybt(e,t),r}function bFr(e,t){let r=null,n=e.openElements.stackTop;for(;n>=0;n--){let i=e.openElements.items[n];if(i===t.element)break;e._isSpecialElement(i,e.openElements.tagIDs[n])&&(r=i)}return r||(e.openElements.shortenToLength(Math.max(n,0)),e.activeFormattingElements.removeEntry(t)),r}function EFr(e,t,r){let n=t,i=e.openElements.getCommonAncestor(t);for(let s=0,a=i;a!==r;s++,a=i){i=e.openElements.getCommonAncestor(a);let o=e.activeFormattingElements.getElementEntry(a),u=o&&s>=_Fr;!o||u?(u&&e.activeFormattingElements.removeEntry(o),e.openElements.remove(a)):(a=SFr(e,o),n===t&&(e.activeFormattingElements.bookmark=o),e.treeAdapter.detachNode(n),e.treeAdapter.appendChild(a,n),n=a)}return n}function SFr(e,t){let r=e.treeAdapter.getNamespaceURI(t.element),n=e.treeAdapter.createElement(t.token.tagName,r,t.token.attrs);return e.openElements.replace(t.element,n),t.element=n,n}function wFr(e,t,r){let n=e.treeAdapter.getTagName(t),i=Ry(n);if(e._isElementCausesFosterParenting(i))e._fosterParentElement(r);else{let s=e.treeAdapter.getNamespaceURI(t);i===R.TEMPLATE&&s===Re.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,r)}}function IFr(e,t,r){let n=e.treeAdapter.getNamespaceURI(r.element),{token:i}=r,s=e.treeAdapter.createElement(i.tagName,n,i.attrs);e._adoptNodes(t,s),e.treeAdapter.appendChild(t,s),e.activeFormattingElements.insertElementAfterBookmark(s,i),e.activeFormattingElements.removeEntry(r),e.openElements.remove(r.element),e.openElements.insertAfter(t,s,i.tagID)}function Rye(e,t){for(let r=0;r=r;n--)e._setEndLocation(e.openElements.items[n],t);if(!e.fragmentContext&&e.openElements.stackTop>=0){let n=e.openElements.items[0],i=e.treeAdapter.getNodeSourceCodeLocation(n);if(i&&!i.endTag&&(e._setEndLocation(n,t),e.openElements.stackTop>=1)){let s=e.openElements.items[1],a=e.treeAdapter.getNodeSourceCodeLocation(s);a&&!a.endTag&&e._setEndLocation(s,t)}}}}function TFr(e,t){e._setDocumentType(t);let r=t.forceQuirks?ho.QUIRKS:Mbt(t);Pbt(t)||e._err(t,be.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,r),e.insertionMode=le.BEFORE_HTML}function HO(e,t){e._err(t,be.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,ho.QUIRKS),e.insertionMode=le.BEFORE_HTML,e._processToken(t)}function NFr(e,t){t.tagID===R.HTML?(e._insertElement(t,Re.HTML),e.insertionMode=le.BEFORE_HEAD):VO(e,t)}function RFr(e,t){let r=t.tagID;(r===R.HTML||r===R.HEAD||r===R.BODY||r===R.BR)&&VO(e,t)}function VO(e,t){e._insertFakeRootElement(),e.insertionMode=le.BEFORE_HEAD,e._processToken(t)}function DFr(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.HEAD:{e._insertElement(t,Re.HTML),e.headElement=e.openElements.current,e.insertionMode=le.IN_HEAD;break}default:zO(e,t)}}function kFr(e,t){let r=t.tagID;r===R.HEAD||r===R.BODY||r===R.HTML||r===R.BR?zO(e,t):e._err(t,be.endTagWithoutMatchingOpenElement)}function zO(e,t){e._insertFakeElement(ge.HEAD,R.HEAD),e.headElement=e.openElements.current,e.insertionMode=le.IN_HEAD,e._processToken(t)}function Zd(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.BASE:case R.BASEFONT:case R.BGSOUND:case R.LINK:case R.META:{e._appendElement(t,Re.HTML),t.ackSelfClosing=!0;break}case R.TITLE:{e._switchToTextParsing(t,mo.RCDATA);break}case R.NOSCRIPT:{e.options.scriptingEnabled?e._switchToTextParsing(t,mo.RAWTEXT):(e._insertElement(t,Re.HTML),e.insertionMode=le.IN_HEAD_NO_SCRIPT);break}case R.NOFRAMES:case R.STYLE:{e._switchToTextParsing(t,mo.RAWTEXT);break}case R.SCRIPT:{e._switchToTextParsing(t,mo.SCRIPT_DATA);break}case R.TEMPLATE:{e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=le.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(le.IN_TEMPLATE);break}case R.HEAD:{e._err(t,be.misplacedStartTagForHeadElement);break}default:QO(e,t)}}function OFr(e,t){switch(t.tagID){case R.HEAD:{e.openElements.pop(),e.insertionMode=le.AFTER_HEAD;break}case R.BODY:case R.BR:case R.HTML:{QO(e,t);break}case R.TEMPLATE:{hb(e,t);break}default:e._err(t,be.endTagWithoutMatchingOpenElement)}}function hb(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==R.TEMPLATE&&e._err(t,be.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(R.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,be.endTagWithoutMatchingOpenElement)}function QO(e,t){e.openElements.pop(),e.insertionMode=le.AFTER_HEAD,e._processToken(t)}function PFr(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.BASEFONT:case R.BGSOUND:case R.HEAD:case R.LINK:case R.META:case R.NOFRAMES:case R.STYLE:{Zd(e,t);break}case R.NOSCRIPT:{e._err(t,be.nestedNoscriptInHead);break}default:GO(e,t)}}function MFr(e,t){switch(t.tagID){case R.NOSCRIPT:{e.openElements.pop(),e.insertionMode=le.IN_HEAD;break}case R.BR:{GO(e,t);break}default:e._err(t,be.endTagWithoutMatchingOpenElement)}}function GO(e,t){let r=t.type===Nr.EOF?be.openElementsLeftAfterEof:be.disallowedContentInNoscriptInHead;e._err(t,r),e.openElements.pop(),e.insertionMode=le.IN_HEAD,e._processToken(t)}function LFr(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.BODY:{e._insertElement(t,Re.HTML),e.framesetOk=!1,e.insertionMode=le.IN_BODY;break}case R.FRAMESET:{e._insertElement(t,Re.HTML),e.insertionMode=le.IN_FRAMESET;break}case R.BASE:case R.BASEFONT:case R.BGSOUND:case R.LINK:case R.META:case R.NOFRAMES:case R.SCRIPT:case R.STYLE:case R.TEMPLATE:case R.TITLE:{e._err(t,be.abandonedHeadElementChild),e.openElements.push(e.headElement,R.HEAD),Zd(e,t),e.openElements.remove(e.headElement);break}case R.HEAD:{e._err(t,be.misplacedStartTagForHeadElement);break}default:YO(e,t)}}function BFr(e,t){switch(t.tagID){case R.BODY:case R.HTML:case R.BR:{YO(e,t);break}case R.TEMPLATE:{hb(e,t);break}default:e._err(t,be.endTagWithoutMatchingOpenElement)}}function YO(e,t){e._insertFakeElement(ge.BODY,R.BODY),e.insertionMode=le.IN_BODY,ZU(e,t)}function ZU(e,t){switch(t.type){case Nr.CHARACTER:{zbt(e,t);break}case Nr.WHITESPACE_CHARACTER:{Vbt(e,t);break}case Nr.COMMENT:{Tye(e,t);break}case Nr.START_TAG:{go(e,t);break}case Nr.END_TAG:{eq(e,t);break}case Nr.EOF:{Wbt(e,t);break}default:}}function Vbt(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function zbt(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function $Fr(e,t){e.openElements.tmplCount===0&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}function FFr(e,t){let r=e.openElements.tryPeekProperlyNestedBodyElement();r&&e.openElements.tmplCount===0&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(r,t.attrs))}function UFr(e,t){let r=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&r&&(e.treeAdapter.detachNode(r),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,Re.HTML),e.insertionMode=le.IN_FRAMESET)}function qFr(e,t){e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._insertElement(t,Re.HTML)}function jFr(e,t){e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e.openElements.currentTagId!==void 0&&bI.has(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,Re.HTML)}function HFr(e,t){e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._insertElement(t,Re.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}function KFr(e,t){let r=e.openElements.tmplCount>0;(!e.formElement||r)&&(e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._insertElement(t,Re.HTML),r||(e.formElement=e.openElements.current))}function VFr(e,t){e.framesetOk=!1;let r=t.tagID;for(let n=e.openElements.stackTop;n>=0;n--){let i=e.openElements.tagIDs[n];if(r===R.LI&&i===R.LI||(r===R.DD||r===R.DT)&&(i===R.DD||i===R.DT)){e.openElements.generateImpliedEndTagsWithExclusion(i),e.openElements.popUntilTagNamePopped(i);break}if(i!==R.ADDRESS&&i!==R.DIV&&i!==R.P&&e._isSpecialElement(e.openElements.items[n],i))break}e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._insertElement(t,Re.HTML)}function zFr(e,t){e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._insertElement(t,Re.HTML),e.tokenizer.state=mo.PLAINTEXT}function QFr(e,t){e.openElements.hasInScope(R.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(R.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML),e.framesetOk=!1}function GFr(e,t){let r=e.activeFormattingElements.getElementEntryInScopeWithTagName(ge.A);r&&(Rye(e,t),e.openElements.remove(r.element),e.activeFormattingElements.removeEntry(r)),e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function YFr(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function WFr(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(R.NOBR)&&(Rye(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,Re.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function XFr(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}function JFr(e,t){e.treeAdapter.getDocumentMode(e.document)!==ho.QUIRKS&&e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._insertElement(t,Re.HTML),e.framesetOk=!1,e.insertionMode=le.IN_TABLE}function Qbt(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Re.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function Gbt(e){let t=qU(e,Pp.TYPE);return t!=null&&t.toLowerCase()===gFr}function ZFr(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,Re.HTML),Gbt(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}function e5r(e,t){e._appendElement(t,Re.HTML),t.ackSelfClosing=!0}function t5r(e,t){e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._appendElement(t,Re.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function r5r(e,t){t.tagName=ge.IMG,t.tagID=R.IMG,Qbt(e,t)}function n5r(e,t){e._insertElement(t,Re.HTML),e.skipNextNewLine=!0,e.tokenizer.state=mo.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=le.TEXT}function i5r(e,t){e.openElements.hasInButtonScope(R.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,mo.RAWTEXT)}function s5r(e,t){e.framesetOk=!1,e._switchToTextParsing(t,mo.RAWTEXT)}function jbt(e,t){e._switchToTextParsing(t,mo.RAWTEXT)}function a5r(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===le.IN_TABLE||e.insertionMode===le.IN_CAPTION||e.insertionMode===le.IN_TABLE_BODY||e.insertionMode===le.IN_ROW||e.insertionMode===le.IN_CELL?le.IN_SELECT_IN_TABLE:le.IN_SELECT}function o5r(e,t){e.openElements.currentTagId===R.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML)}function u5r(e,t){e.openElements.hasInScope(R.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,Re.HTML)}function c5r(e,t){e.openElements.hasInScope(R.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(R.RTC),e._insertElement(t,Re.HTML)}function l5r(e,t){e._reconstructActiveFormattingElements(),Iye(t),YU(t),t.selfClosing?e._appendElement(t,Re.MATHML):e._insertElement(t,Re.MATHML),t.ackSelfClosing=!0}function d5r(e,t){e._reconstructActiveFormattingElements(),xye(t),YU(t),t.selfClosing?e._appendElement(t,Re.SVG):e._insertElement(t,Re.SVG),t.ackSelfClosing=!0}function Hbt(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,Re.HTML)}function go(e,t){switch(t.tagID){case R.I:case R.S:case R.B:case R.U:case R.EM:case R.TT:case R.BIG:case R.CODE:case R.FONT:case R.SMALL:case R.STRIKE:case R.STRONG:{YFr(e,t);break}case R.A:{GFr(e,t);break}case R.H1:case R.H2:case R.H3:case R.H4:case R.H5:case R.H6:{jFr(e,t);break}case R.P:case R.DL:case R.OL:case R.UL:case R.DIV:case R.DIR:case R.NAV:case R.MAIN:case R.MENU:case R.ASIDE:case R.CENTER:case R.FIGURE:case R.FOOTER:case R.HEADER:case R.HGROUP:case R.DIALOG:case R.DETAILS:case R.ADDRESS:case R.ARTICLE:case R.SEARCH:case R.SECTION:case R.SUMMARY:case R.FIELDSET:case R.BLOCKQUOTE:case R.FIGCAPTION:{qFr(e,t);break}case R.LI:case R.DD:case R.DT:{VFr(e,t);break}case R.BR:case R.IMG:case R.WBR:case R.AREA:case R.EMBED:case R.KEYGEN:{Qbt(e,t);break}case R.HR:{t5r(e,t);break}case R.RB:case R.RTC:{u5r(e,t);break}case R.RT:case R.RP:{c5r(e,t);break}case R.PRE:case R.LISTING:{HFr(e,t);break}case R.XMP:{i5r(e,t);break}case R.SVG:{d5r(e,t);break}case R.HTML:{$Fr(e,t);break}case R.BASE:case R.LINK:case R.META:case R.STYLE:case R.TITLE:case R.SCRIPT:case R.BGSOUND:case R.BASEFONT:case R.TEMPLATE:{Zd(e,t);break}case R.BODY:{FFr(e,t);break}case R.FORM:{KFr(e,t);break}case R.NOBR:{WFr(e,t);break}case R.MATH:{l5r(e,t);break}case R.TABLE:{JFr(e,t);break}case R.INPUT:{ZFr(e,t);break}case R.PARAM:case R.TRACK:case R.SOURCE:{e5r(e,t);break}case R.IMAGE:{r5r(e,t);break}case R.BUTTON:{QFr(e,t);break}case R.APPLET:case R.OBJECT:case R.MARQUEE:{XFr(e,t);break}case R.IFRAME:{s5r(e,t);break}case R.SELECT:{a5r(e,t);break}case R.OPTION:case R.OPTGROUP:{o5r(e,t);break}case R.NOEMBED:case R.NOFRAMES:{jbt(e,t);break}case R.FRAMESET:{UFr(e,t);break}case R.TEXTAREA:{n5r(e,t);break}case R.NOSCRIPT:{e.options.scriptingEnabled?jbt(e,t):Hbt(e,t);break}case R.PLAINTEXT:{zFr(e,t);break}case R.COL:case R.TH:case R.TD:case R.TR:case R.HEAD:case R.FRAME:case R.TBODY:case R.TFOOT:case R.THEAD:case R.CAPTION:case R.COLGROUP:break;default:Hbt(e,t)}}function f5r(e,t){if(e.openElements.hasInScope(R.BODY)&&(e.insertionMode=le.AFTER_BODY,e.options.sourceCodeLocationInfo)){let r=e.openElements.tryPeekProperlyNestedBodyElement();r&&e._setEndLocation(r,t)}}function p5r(e,t){e.openElements.hasInScope(R.BODY)&&(e.insertionMode=le.AFTER_BODY,iEt(e,t))}function h5r(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(r))}function m5r(e){let t=e.openElements.tmplCount>0,{formElement:r}=e;t||(e.formElement=null),(r||t)&&e.openElements.hasInScope(R.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(R.FORM):r&&e.openElements.remove(r))}function g5r(e){e.openElements.hasInButtonScope(R.P)||e._insertFakeElement(ge.P,R.P),e._closePElement()}function y5r(e){e.openElements.hasInListItemScope(R.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(R.LI),e.openElements.popUntilTagNamePopped(R.LI))}function _5r(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.popUntilTagNamePopped(r))}function A5r(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}function v5r(e,t){let r=t.tagID;e.openElements.hasInScope(r)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(r),e.activeFormattingElements.clearToLastMarker())}function b5r(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(ge.BR,R.BR),e.openElements.pop(),e.framesetOk=!1}function Ybt(e,t){let r=t.tagName,n=t.tagID;for(let i=e.openElements.stackTop;i>0;i--){let s=e.openElements.items[i],a=e.openElements.tagIDs[i];if(n===a&&(n!==R.UNKNOWN||e.treeAdapter.getTagName(s)===r)){e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.stackTop>=i&&e.openElements.shortenToLength(i);break}if(e._isSpecialElement(s,a))break}}function eq(e,t){switch(t.tagID){case R.A:case R.B:case R.I:case R.S:case R.U:case R.EM:case R.TT:case R.BIG:case R.CODE:case R.FONT:case R.NOBR:case R.SMALL:case R.STRIKE:case R.STRONG:{Rye(e,t);break}case R.P:{g5r(e);break}case R.DL:case R.UL:case R.OL:case R.DIR:case R.DIV:case R.NAV:case R.PRE:case R.MAIN:case R.MENU:case R.ASIDE:case R.BUTTON:case R.CENTER:case R.FIGURE:case R.FOOTER:case R.HEADER:case R.HGROUP:case R.DIALOG:case R.ADDRESS:case R.ARTICLE:case R.DETAILS:case R.SEARCH:case R.SECTION:case R.SUMMARY:case R.LISTING:case R.FIELDSET:case R.BLOCKQUOTE:case R.FIGCAPTION:{h5r(e,t);break}case R.LI:{y5r(e);break}case R.DD:case R.DT:{_5r(e,t);break}case R.H1:case R.H2:case R.H3:case R.H4:case R.H5:case R.H6:{A5r(e);break}case R.BR:{b5r(e);break}case R.BODY:{f5r(e,t);break}case R.HTML:{p5r(e,t);break}case R.FORM:{m5r(e);break}case R.APPLET:case R.OBJECT:case R.MARQUEE:{v5r(e,t);break}case R.TEMPLATE:{hb(e,t);break}default:Ybt(e,t)}}function Wbt(e,t){e.tmplInsertionModeStack.length>0?nEt(e,t):Dye(e,t)}function E5r(e,t){var r;t.tagID===R.SCRIPT&&((r=e.scriptHandler)===null||r===void 0||r.call(e,e.openElements.current)),e.openElements.pop(),e.insertionMode=e.originalInsertionMode}function S5r(e,t){e._err(t,be.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}function Cye(e,t){if(e.openElements.currentTagId!==void 0&&Kbt.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=le.IN_TABLE_TEXT,t.type){case Nr.CHARACTER:{Jbt(e,t);break}case Nr.WHITESPACE_CHARACTER:{Xbt(e,t);break}}else XO(e,t)}function w5r(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,Re.HTML),e.insertionMode=le.IN_CAPTION}function I5r(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Re.HTML),e.insertionMode=le.IN_COLUMN_GROUP}function x5r(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(ge.COLGROUP,R.COLGROUP),e.insertionMode=le.IN_COLUMN_GROUP,kye(e,t)}function C5r(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,Re.HTML),e.insertionMode=le.IN_TABLE_BODY}function T5r(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(ge.TBODY,R.TBODY),e.insertionMode=le.IN_TABLE_BODY,tq(e,t)}function N5r(e,t){e.openElements.hasInTableScope(R.TABLE)&&(e.openElements.popUntilTagNamePopped(R.TABLE),e._resetInsertionMode(),e._processStartTag(t))}function R5r(e,t){Gbt(t)?e._appendElement(t,Re.HTML):XO(e,t),t.ackSelfClosing=!0}function D5r(e,t){!e.formElement&&e.openElements.tmplCount===0&&(e._insertElement(t,Re.HTML),e.formElement=e.openElements.current,e.openElements.pop())}function SI(e,t){switch(t.tagID){case R.TD:case R.TH:case R.TR:{T5r(e,t);break}case R.STYLE:case R.SCRIPT:case R.TEMPLATE:{Zd(e,t);break}case R.COL:{x5r(e,t);break}case R.FORM:{D5r(e,t);break}case R.TABLE:{N5r(e,t);break}case R.TBODY:case R.TFOOT:case R.THEAD:{C5r(e,t);break}case R.INPUT:{R5r(e,t);break}case R.CAPTION:{w5r(e,t);break}case R.COLGROUP:{I5r(e,t);break}default:XO(e,t)}}function WO(e,t){switch(t.tagID){case R.TABLE:{e.openElements.hasInTableScope(R.TABLE)&&(e.openElements.popUntilTagNamePopped(R.TABLE),e._resetInsertionMode());break}case R.TEMPLATE:{hb(e,t);break}case R.BODY:case R.CAPTION:case R.COL:case R.COLGROUP:case R.HTML:case R.TBODY:case R.TD:case R.TFOOT:case R.TH:case R.THEAD:case R.TR:break;default:XO(e,t)}}function XO(e,t){let r=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,ZU(e,t),e.fosterParentingEnabled=r}function Xbt(e,t){e.pendingCharacterTokens.push(t)}function Jbt(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function KO(e,t){let r=0;if(e.hasNonWhitespacePendingCharacterToken)for(;r0&&e.openElements.currentTagId===R.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===R.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===R.OPTGROUP&&e.openElements.pop();break}case R.OPTION:{e.openElements.currentTagId===R.OPTION&&e.openElements.pop();break}case R.SELECT:{e.openElements.hasInSelectScope(R.SELECT)&&(e.openElements.popUntilTagNamePopped(R.SELECT),e._resetInsertionMode());break}case R.TEMPLATE:{hb(e,t);break}default:}}function B5r(e,t){let r=t.tagID;r===R.CAPTION||r===R.TABLE||r===R.TBODY||r===R.TFOOT||r===R.THEAD||r===R.TR||r===R.TD||r===R.TH?(e.openElements.popUntilTagNamePopped(R.SELECT),e._resetInsertionMode(),e._processStartTag(t)):tEt(e,t)}function $5r(e,t){let r=t.tagID;r===R.CAPTION||r===R.TABLE||r===R.TBODY||r===R.TFOOT||r===R.THEAD||r===R.TR||r===R.TD||r===R.TH?e.openElements.hasInTableScope(r)&&(e.openElements.popUntilTagNamePopped(R.SELECT),e._resetInsertionMode(),e.onEndTag(t)):rEt(e,t)}function F5r(e,t){switch(t.tagID){case R.BASE:case R.BASEFONT:case R.BGSOUND:case R.LINK:case R.META:case R.NOFRAMES:case R.SCRIPT:case R.STYLE:case R.TEMPLATE:case R.TITLE:{Zd(e,t);break}case R.CAPTION:case R.COLGROUP:case R.TBODY:case R.TFOOT:case R.THEAD:{e.tmplInsertionModeStack[0]=le.IN_TABLE,e.insertionMode=le.IN_TABLE,SI(e,t);break}case R.COL:{e.tmplInsertionModeStack[0]=le.IN_COLUMN_GROUP,e.insertionMode=le.IN_COLUMN_GROUP,kye(e,t);break}case R.TR:{e.tmplInsertionModeStack[0]=le.IN_TABLE_BODY,e.insertionMode=le.IN_TABLE_BODY,tq(e,t);break}case R.TD:case R.TH:{e.tmplInsertionModeStack[0]=le.IN_ROW,e.insertionMode=le.IN_ROW,rq(e,t);break}default:e.tmplInsertionModeStack[0]=le.IN_BODY,e.insertionMode=le.IN_BODY,go(e,t)}}function U5r(e,t){t.tagID===R.TEMPLATE&&hb(e,t)}function nEt(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(R.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):Dye(e,t)}function q5r(e,t){t.tagID===R.HTML?go(e,t):JU(e,t)}function iEt(e,t){var r;if(t.tagID===R.HTML){if(e.fragmentContext||(e.insertionMode=le.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===R.HTML){e._setEndLocation(e.openElements.items[0],t);let n=e.openElements.items[1];n&&!(!((r=e.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&e._setEndLocation(n,t)}}else JU(e,t)}function JU(e,t){e.insertionMode=le.IN_BODY,ZU(e,t)}function j5r(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.FRAMESET:{e._insertElement(t,Re.HTML);break}case R.FRAME:{e._appendElement(t,Re.HTML),t.ackSelfClosing=!0;break}case R.NOFRAMES:{Zd(e,t);break}default:}}function H5r(e,t){t.tagID===R.FRAMESET&&!e.openElements.isRootHtmlElementCurrent()&&(e.openElements.pop(),!e.fragmentContext&&e.openElements.currentTagId!==R.FRAMESET&&(e.insertionMode=le.AFTER_FRAMESET))}function K5r(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.NOFRAMES:{Zd(e,t);break}default:}}function V5r(e,t){t.tagID===R.HTML&&(e.insertionMode=le.AFTER_AFTER_FRAMESET)}function z5r(e,t){t.tagID===R.HTML?go(e,t):WU(e,t)}function WU(e,t){e.insertionMode=le.IN_BODY,ZU(e,t)}function Q5r(e,t){switch(t.tagID){case R.HTML:{go(e,t);break}case R.NOFRAMES:{Zd(e,t);break}default:}}function G5r(e,t){t.chars=Jn,e._insertCharacters(t)}function Y5r(e,t){e._insertCharacters(t),e.framesetOk=!1}function sEt(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==Re.HTML&&e.openElements.currentTagId!==void 0&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function W5r(e,t){if(Bbt(t))sEt(e),e._startTagOutsideForeignContent(t);else{let r=e._getAdjustedCurrentElement(),n=e.treeAdapter.getNamespaceURI(r);n===Re.MATHML?Iye(t):n===Re.SVG&&($bt(t),xye(t)),YU(t),t.selfClosing?e._appendElement(t,n):e._insertElement(t,n),t.ackSelfClosing=!0}}function X5r(e,t){if(t.tagID===R.P||t.tagID===R.BR){sEt(e),e._endTagOutsideForeignContent(t);return}for(let r=e.openElements.stackTop;r>0;r--){let n=e.openElements.items[r];if(e.treeAdapter.getNamespaceURI(n)===Re.HTML){e._endTagOutsideForeignContent(t);break}let i=e.treeAdapter.getTagName(n);if(i.toLowerCase()===t.tagName){t.tagName=i,e.openElements.shortenToLength(r);break}}}var DJn=String.prototype.codePointAt==null?(e,t)=>(e.charCodeAt(t)&64512)===55296?(e.charCodeAt(t)-55296)*1024+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t):(e,t)=>e.codePointAt(t);function aEt(e,t){return function(n){let i,s=0,a="";for(;i=e.exec(n);)s!==i.index&&(a+=n.substring(s,i.index)),a+=t.get(i[0].charCodeAt(0)),s=i.index+1;return a+n.substring(s)}}var oEt=aEt(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),uEt=aEt(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var J5r=new Set([ge.AREA,ge.BASE,ge.BASEFONT,ge.BGSOUND,ge.BR,ge.COL,ge.EMBED,ge.FRAME,ge.HR,ge.IMG,ge.INPUT,ge.KEYGEN,ge.LINK,ge.META,ge.PARAM,ge.SOURCE,ge.TRACK,ge.WBR]);function Z5r(e,t){return t.treeAdapter.isElementNode(e)&&t.treeAdapter.getNamespaceURI(e)===Re.HTML&&J5r.has(t.treeAdapter.getTagName(e))}var e8r={treeAdapter:Ml,scriptingEnabled:!0};function Oye(e,t){let r={...e8r,...t};return cEt(e,r)}function t8r(e,t){let r="",n=t.treeAdapter.isElementNode(e)&&t.treeAdapter.getTagName(e)===ge.TEMPLATE&&t.treeAdapter.getNamespaceURI(e)===Re.HTML?t.treeAdapter.getTemplateContent(e):e,i=t.treeAdapter.getChildNodes(n);if(i)for(let s of i)r+=cEt(s,t);return r}function cEt(e,t){return t.treeAdapter.isElementNode(e)?r8r(e,t):t.treeAdapter.isTextNode(e)?i8r(e,t):t.treeAdapter.isCommentNode(e)?s8r(e,t):t.treeAdapter.isDocumentTypeNode(e)?a8r(e,t):""}function r8r(e,t){let r=t.treeAdapter.getTagName(e);return`<${r}${n8r(e,t)}>${Z5r(e,t)?"":`${t8r(e,t)}`}`}function n8r(e,{treeAdapter:t}){let r="";for(let n of t.getAttrList(e)){if(r+=" ",n.namespace)switch(n.namespace){case Re.XML:{r+=`xml:${n.name}`;break}case Re.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Re.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${oEt(n.value)}"`}return r}function i8r(e,t){let{treeAdapter:r}=t,n=r.getTextNodeContent(e),i=r.getParentNode(e),s=i&&r.isElementNode(i)&&r.getTagName(i);return s&&r.getNamespaceURI(i)===Re.HTML&&wye(s,t.scriptingEnabled)?n:uEt(n)}function s8r(e,{treeAdapter:t}){return``}function a8r(e,{treeAdapter:t}){return``}function lEt(e,t){return EI.parse(e,t)}function dEt(e,t,r){typeof e=="string"&&(r=t,t=e,e=null);let n=EI.getFragmentParser(e,r);return n.tokenizer.write(t,!0),n.getFragment()}function fEt(e){let t=e.includes('"')?"'":'"';return t+e+t}function o8r(e,t,r){let n="!DOCTYPE ";return e&&(n+=e),t?n+=` PUBLIC ${fEt(t)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${fEt(r)}`),n}var Wm={isCommentNode:lb,isElementNode:ot,isTextNode:Qu,createDocument(){let e=new Pc([]);return e["x-mode"]=KU.DOCUMENT_MODE.NO_QUIRKS,e},createDocumentFragment(){return new Pc([])},createElement(e,t,r){let n=Object.create(null),i=Object.create(null),s=Object.create(null);for(let o=0;ooU(a)&&a.name==="!doctype");s?s.data=i??null:(s=new ub("!doctype",i),Wm.appendChild(e,s)),s["x-name"]=t,s["x-publicId"]=r,s["x-systemId"]=n},setDocumentMode(e,t){e["x-mode"]=t},getDocumentMode(e){return e["x-mode"]},detachNode(e){if(e.parent){let t=e.parent.children.indexOf(e),{prev:r,next:n}=e;e.prev=null,e.next=null,r&&(r.next=n),n&&(n.prev=r),e.parent.children.splice(t,1),e.parent=null}},insertText(e,t){let r=e.children[e.children.length-1];r&&Qu(r)?r.data+=t:Wm.appendChild(e,Wm.createTextNode(t))},insertTextBefore(e,t,r){let n=e.children[e.children.indexOf(r)-1];n&&Qu(n)?n.data+=t:Wm.insertBefore(e,Wm.createTextNode(t),r)},adoptAttributes(e,t){for(let r=0;r=rt.Zero&&e<=rt.Nine}function c8r(e){return e>=rt.LowerA&&e<=rt.LowerZ||e>=rt.UpperA&&e<=rt.UpperZ}function l8r(e){return e>=rt.UpperA&&e<=rt.UpperF||e>=rt.LowerA&&e<=rt.LowerF}var ef;(function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"})(ef||(ef={}));var Xu={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},wI=class{constructor({xmlMode:t=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=ke.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ke.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=t,this.decodeEntities=r,this.entityTrie=t?cU:uU}reset(){this.state=ke.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ke.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(t){this.offset+=this.buffer.length,this.buffer=t,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=ke.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&t===rt.Amp&&(this.state=ke.BeforeEntity)}stateSpecialStartSequence(t){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?nq(t):(t|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=ke.InTagName,this.stateInTagName(t)}stateInSpecialTag(t){if(this.sequenceIndex===this.currentSequence.length){if(t===rt.Gt||Xm(t)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&t!==rt.Semi)this.trieIndex+=n;else{let i=this.index-this.entityExcess+1;i>this.sectionStart&&this.emitPartial(this.sectionStart,i),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,n===0&&this.emitNamedEntity()}}}emitNamedEntity(){if(this.state=this.baseState,this.entityResult===0)return;switch((this.entityTrie[this.entityResult]&Dl.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~Dl.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(t){(t|32)===rt.LowerX?(this.entityExcess++,this.state=ke.InHexEntity):(this.state=ke.InNumericEntity,this.stateInNumericEntity(t))}emitNumericEntity(t){let r=this.index-this.entityExcess-1;r+2+ +(this.state===ke.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(t),this.emitCodePoint(RO(this.entityResult))),this.state=this.baseState}stateInNumericEntity(t){t===rt.Semi?this.emitNumericEntity(!0):mEt(t)?(this.entityResult=this.entityResult*10+(t-rt.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(t){t===rt.Semi?this.emitNumericEntity(!0):mEt(t)?(this.entityResult=this.entityResult*16+(t-rt.Zero),this.entityExcess++):l8r(t)?(this.entityResult=this.entityResult*16+((t|32)-rt.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===ke.Text||this.baseState===ke.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===ke.Text||this.state===ke.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===ke.InAttributeValueDq||this.state===ke.InAttributeValueSq||this.state===ke.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index0&&a.has(this.stack[this.stack.length-1]);){let o=this.stack.pop();(n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,o,!0)}this.isVoidElement(t)||(this.stack.push(t),AEt.has(t)?this.foreignContext.push(!0):vEt.has(t)&&this.foreignContext.push(!1)),(s=(i=this.cbs).onopentagname)===null||s===void 0||s.call(i,t),this.cbs.onopentag&&(this.attribs={})}endOpenTag(t){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,t),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(t){this.endIndex=t,this.endOpenTag(!1),this.startIndex=t+1}onclosetag(t,r){var n,i,s,a,o,u;this.endIndex=r;let c=this.getSlice(t,r);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(AEt.has(c)||vEt.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))!this.options.xmlMode&&c==="br"&&((i=(n=this.cbs).onopentagname)===null||i===void 0||i.call(n,"br"),(a=(s=this.cbs).onopentag)===null||a===void 0||a.call(s,"br",{},!0),(u=(o=this.cbs).onclosetag)===null||u===void 0||u.call(o,"br",!1));else{let l=this.stack.lastIndexOf(c);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&c==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(t){this.endIndex=t,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=t+1):this.onopentagend(t)}closeCurrentTag(t){var r,n;let i=this.tagname;this.endOpenTag(t),this.stack[this.stack.length-1]===i&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,i,!t),this.stack.pop())}onattribname(t,r){this.startIndex=t;let n=this.getSlice(t,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(t,r){this.attribvalue+=this.getSlice(t,r)}onattribentity(t){this.attribvalue+=uI(t)}onattribend(t,r){var n,i;this.endIndex=r,(i=(n=this.cbs).onattribute)===null||i===void 0||i.call(n,this.attribname,this.attribvalue,t===ef.Double?'"':t===ef.Single?"'":t===ef.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(t){let r=t.search(p8r),n=r<0?t:t.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(t,r){this.endIndex=r;let n=this.getSlice(t,r);if(this.cbs.onprocessinginstruction){let i=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${i}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(t,r){this.endIndex=r;let n=this.getSlice(t,r);if(this.cbs.onprocessinginstruction){let i=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${i}`,`?${n}`)}this.startIndex=r+1}oncomment(t,r,n){var i,s,a,o;this.endIndex=r,(s=(i=this.cbs).oncomment)===null||s===void 0||s.call(i,this.getSlice(t,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(t,r,n){var i,s,a,o,u,c,l,d,f,p;this.endIndex=r;let h=this.getSlice(t,r-n);this.options.xmlMode||this.options.recognizeCDATA?((s=(i=this.cbs).oncdatastart)===null||s===void 0||s.call(i),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,h),(c=(u=this.cbs).oncdataend)===null||c===void 0||c.call(u)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${h}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var t,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(t=this.cbs).onend)===null||r===void 0||r.call(t)}reset(){var t,r,n,i;(r=(t=this.cbs).onreset)===null||r===void 0||r.call(t),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(i=(n=this.cbs).onparserinit)===null||i===void 0||i.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(t){this.reset(),this.end(t)}getSlice(t,r){for(;t-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(t-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(t){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(t),this.tokenizer.running&&(this.tokenizer.write(t),this.writeIndex++)}end(t){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}t&&this.write(t),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndext.xmlMode||t._useHtmlParser2?bEt(e,t):pEt(e,t,r,n)),lr=_bt(h8r,(e,t)=>t.xmlMode||t._useHtmlParser2?hU(e,t):hEt(e)),Jr=lr([]),{contains:gZn}=wy,{merge:yZn}=wy,{parseHTML:_Zn}=wy,{root:AZn}=wy;var ZO="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function xI(e,t){return Math.floor(Math.random()*(t-e+1))+e}function mb(e,t,r){var n="";let i=t===void 0?!0:t;for(var s=0;s|《|》/g,"").replace(/\$|#/g," ").trim()}function CEt(e){let t=e/1048576;return t>1024?`${(t/1024).toFixed(2)}GB`:`${parseInt(t).toFixed(0)}MB`}function la(e){return new Promise(t=>setTimeout(t,e))}var Mp=e=>e.map(t=>t.split(";")[0]+";");var Ly=Se(eP(),1),uP=Se(di(),1);Kt();var cP=Se(G1t(),1);Yr();var NI={chineseEpisode:/第[零一二三四五六七八九十百千万0-9]+[集話话]/,epFormat:/(?:E|EP)[\s_-]*(\d+)/i,seasonEpisode:/S(\d+)[\s_-]*E(\d+)/i,bracketNumber:/[\[【\(](\d+)[\]】\)]/,plainNumber:/\b(\d{1,4})\b/,simpleEpisode:/(\d+)[集話话]/},Y1t=new Map([["\u96F6",0],["\u3007",0],["\u4E00",1],["\u4E8C",2],["\u4E09",3],["\u56DB",4],["\u4E94",5],["\u516D",6],["\u4E03",7],["\u516B",8],["\u4E5D",9],["\u5341",10],["\u5341\u4E00",11],["\u5341\u4E8C",12],["\u5341\u4E09",13],["\u5341\u56DB",14],["\u5341\u4E94",15],["\u5341\u516D",16],["\u5341\u4E03",17],["\u5341\u516B",18],["\u5341\u4E5D",19],["\u4E8C\u5341",20],["\u4E8C\u5341\u4E00",21],["\u4E8C\u5341\u4E8C",22],["\u4E8C\u5341\u4E09",23],["\u4E8C\u5341\u56DB",24],["\u4E8C\u5341\u4E94",25],["\u4E8C\u5341\u516D",26],["\u4E8C\u5341\u4E03",27],["\u4E8C\u5341\u516B",28],["\u4E8C\u5341\u4E5D",29],["\u4E09\u5341",30],["\u4E09\u5341\u4E00",31],["\u4E09\u5341\u4E8C",32],["\u4E09\u5341\u4E09",33],["\u4E09\u5341\u56DB",34],["\u4E09\u5341\u4E94",35],["\u4E09\u5341\u516D",36],["\u4E09\u5341\u4E03",37],["\u4E09\u5341\u516B",38],["\u4E09\u5341\u4E5D",39],["\u56DB\u5341",40]]);function NUr(e){if(!e||typeof e!="string")return null;let t=NI.chineseEpisode.exec(e);if(t){let o=t[0].replace(/第|[集話话]/g,"");if(Y1t.has(o))return Y1t.get(o);if(/^\d+$/.test(o))return parseInt(o,10)}let r=NI.epFormat.exec(e);if(r)return parseInt(r[1],10);let n=NI.seasonEpisode.exec(e);if(n)return parseInt(n[2],10);let i=NI.bracketNumber.exec(e);if(i)return parseInt(i[1],10);let s=NI.plainNumber.exec(e);if(s){let o=parseInt(s[1],10);if(o<1e3)return o}let a=NI.simpleEpisode.exec(e);return a?parseInt(a[1],10):null}var W1t=new Map;function ji(e){return!e||e.length<=1?e:e.map(r=>{let n=r.vod_name||r.n||r.name||r.file_name||r.FileName||"",i=n,s=W1t.get(i);return s===void 0&&(s=NUr(n),W1t.set(i,s)),{video:r,name:n,number:s}}).sort((r,n)=>r.number!==null&&n.number!==null?r.number-n.number:r.number!==null&&n.number===null?-1:r.number===null&&n.number!==null?1:r.name.localeCompare(n.name,"zh-CN")).map(r=>r.video)}async function Py(e,t,r=5){let n=[],i=[...e];async function s(){for(;i.length>0;){let o=i.shift();if(o)try{let u=await t(o);u&&n.push(u)}catch(u){console.error("Parallel processing error:",u)}}}let a=Array(Math.min(r,e.length)).fill(null).map(()=>s());return await Promise.all(a),n}function X1t(e,t,r=!1){if(!t||t.length===0)return{};let s=(r?ji(t):t).map(a=>{let o=CEt(a.vod_size),c=(a.vod_name||"").replace(/\.[^.]+$/,"");return{vod_id:a.vod_id,vod_name:xEt("",` ${c} [${o}]`)}}).map(a=>`${a.vod_name}$${a.vod_id}`).join("#");return{from:e,url:s}}async function RI(e,t){if(!Array.isArray(e)||e.length===0)return null;let r=[...new Set(e.map(l=>String(l||"").trim()).filter(Boolean))];if(r.length===0)return null;let n=r.map(l=>{try{let d=new URL(l);return{url:l,host:d.host,origin:d.origin}}catch{return{url:l,host:"",origin:""}}}),i=l=>{let d=Number(l||0);return d===200||d===204||d===301||d===302||d===401||d===403||d===405},s=(l,d)=>{let f=d?.request?.res?.responseUrl||d?.config?.url||l.url;try{let p=new URL(f).host;return!!p&&p===l.host}catch{return!1}},a=(l,d)=>{let f=String(l||"").toLowerCase();return!f||d.host&&f.includes(d.host.toLowerCase())?!1:f.includes("/en/?")||f.includes("access denied")||f.includes("forbidden")||f.includes("captcha")||f.includes("cloudflare")},o=async l=>{let d=Date.now();try{let f=await Ee({method:"head",url:l.url,headers:t,timeout:5e3,maxRedirects:5,validateStatus:()=>!0});if(i(f?.status)&&s(l,f))return{url:l.url,elapsedMs:Date.now()-d,status:Number(f?.status||0),method:"head"}}catch{}try{let f=await Ee({method:"get",url:l.url,headers:t,timeout:5e3,maxRedirects:5,validateStatus:()=>!0});return!i(f?.status)||!s(l,f)||a(f?.data,l)?null:{url:l.url,elapsedMs:Date.now()-d,status:Number(f?.status||0),method:"get"}}catch{return null}},c=(await Promise.all(n.map(o))).filter(Boolean);return c.length===0?null:(c.sort((l,d)=>l.elapsedMs!==d.elapsedMs?l.elapsedMs-d.elapsedMs:l.url.localeCompare(d.url)),c[0].url)}function $a(){let e=globalThis?.Pans;return Array.isArray(e)?e:[]}async function Pn(e){if(typeof globalThis?.getPanName=="function")try{return await globalThis.getPanName(e)}catch{}return $a().find(r=>r?.key===e)?.name||e}function DI(e){let t=Array.isArray(e)?e:[];return globalThis.Pans=t,globalThis.getPanName=r=>globalThis.Pans?.find(n=>n.key===r)?.name||r,globalThis.getPanEnabled=r=>globalThis.Pans?.find(n=>n.key===r)?.enable||!1,t}var fa={ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9_-]+(\/folder\/[a-zA-Z0-9_-]+)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]+)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+|web\/share\?code=[^&\s]+)/i,yd:/https?:\/\/(?:yun\.139\.com\/shareweb\/#\/w\/i\/|caiyun\.139\.com\/(?:m\/i\?|w\/i\/))[^&\s]+/i,quark:/https?:\/\/(?:pan\.quark\.cn|pan\.qoark\.cn)\/s\/[a-zA-Z0-9_-]+/i,uc:/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[^?\s]+(?:\?[^\s]*)?/i,baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[^?\s]+(?:\?[^\s]*)?/i},rf={},J1t=0,RUr=3e4;async function DUr(){let e=Date.now();e-J1t0||(rf={ali:await t0("ali"),quark:await t0("quark"),uc:await t0("uc"),tianyi:await t0("tianyi"),yd:await t0("yidong"),pan123:await t0("123"),pan115:await t0("115"),baidu:await t0("baidu"),xunlei:await t0("xunlei")},J1t=e)}async function sP(e){return!e||typeof e!="string"?null:(await DUr(),rf.ali&&fa.ali.test(e)?"ali":rf.quark&&fa.quark.test(e)?"quark":rf.baidu&&fa.baidu.test(e)?"baidu":rf.uc&&fa.uc.test(e)?"uc":rf.tianyi&&fa.tianyi.test(e)?"tianyi":rf.yd&&fa.yd.test(e)?"yidong":rf.pan123&&fa.pan123.test(e)?"123":rf.pan115&&fa.pan115.test(e)?"115":rf.xunlei&&fa.xunlei.test(e)?"xunlei":null)}function r0(e){return!e||typeof e!="string"?null:fa.ali.test(e)?"ali":fa.quark.test(e)?"quark":fa.baidu.test(e)?"baidu":fa.uc.test(e)?"uc":fa.tianyi.test(e)?"tianyi":fa.yd.test(e)?"yidong":fa.pan123.test(e)?"123":fa.pan115.test(e)?"115":fa.xunlei.test(e)?"xunlei":null}var Z1t=e=>sP(e).then(t=>t==="ali"),eSt=e=>sP(e).then(t=>t==="quark"),tSt=e=>sP(e).then(t=>t==="uc");var rSt=e=>sP(e).then(t=>t==="yidong");var Kq=e=>r0(e)==="ali",Vq=e=>r0(e)==="quark",zq=e=>r0(e)==="uc",Qq=e=>r0(e)==="tianyi",Gq=e=>r0(e)==="yidong",Yq=e=>r0(e)==="123",Wq=e=>r0(e)==="115",Xq=e=>r0(e)==="baidu",nSt=e=>r0(e)==="xunlei",yb=sP;async function t0(e){let t=$a();if(!Array.isArray(t)||t.length===0)return!0;let r=t.find(n=>n.key===e);return r?r.enable!==!1:!1}var kUr=/\.(srt|ass|ssa|vtt|sub|idx|smi|txt)$/i,iSt={ass:1,ssa:2,srt:3,vtt:4,sub:5,idx:6,smi:7,txt:8};function ss(e){return!!e&&kUr.test(String(e))}function lSt(e){return String(e||"").replace(/\.[^.]+$/,"")}function kI(e){let t=String(e||"").toLowerCase().match(/\.([^.]+)$/),r=t?t[1]:"";return["srt","ass","ssa","vtt","sub","idx","smi","txt"].includes(r)?r:""}function sSt(e){let t=String(e||"").toLowerCase();return t=lSt(t),t=t.replace(/[\[\((【].*?[\]\))】]/g," "),t=t.replace(/(?:[._\-\s]|^)(?:chs|cht|chi|zh-cn|zh|cn|sc|tc|eng|en|jpn|jp|简中|繁中|中字|双语|中英|外挂字幕|内封字幕|sub|subtitle)(?:[._\-\s]|$)/gi," "),t=t.replace(/[._\-]+/g," "),t=t.replace(/\s+/g," ").trim(),t.replace(/\s+/g,"")}function aSt(e){let t=String(e||"").toLowerCase().match(/\.([^.]+)$/);return t?t[1]:""}function oSt(e){return lSt(String(e||"")).trim().toLowerCase()}function uSt(e,t){return!Array.isArray(e)||e.length===0?null:e.slice().sort((n,i)=>{let s=iSt[aSt(t(n))]||99,a=iSt[aSt(t(i))]||99;return s!==a?s-a:String(t(n)||"").localeCompare(String(t(i)||""),"zh-CN")})[0]}function as(e,t,r){if(!e||!Array.isArray(t)||t.length===0)return null;let n=oSt(e);if(!n)return null;let i=t.filter(o=>oSt(r(o))===n);if(i.length>0)return uSt(i,r);let s=sSt(e);if(!s)return null;let a=[];for(let o of t){let u=r(o),c=sSt(u);c&&(c===s||c.startsWith(s)||s.startsWith(c))&&a.push(o)}return uSt(a,r)}function cSt(e){let t=String(e||"").trim().match(/^(\d+):(\d{1,2}):(\d{1,2})[.](\d{1,2})$/);if(!t)return"00:00:00,000";let r=String(Number(t[1])).padStart(2,"0"),n=String(Number(t[2])).padStart(2,"0"),i=String(Number(t[3])).padStart(2,"0"),s=Number(t[4]),a=String(s*10).padStart(3,"0");return`${r}:${n}:${i},${a}`}function OUr(e){return String(e||"").replace(/\{[^}]*\}/g,"").replace(/\\N/g,` -`).replace(/\\n/g,` -`).replace(/\\h/g," ").trim()}function PUr(e){let t=String(e||"");return/[\u4e00-\u9fff]/.test(t)?t.split(` -`).map(r=>r.replace(/[A-Za-z][A-Za-z0-9\s.,!?;:'"()\-_/\\[\]{}<>`~@#$%^&*+=|]*/g,"").replace(/\s{2,}/g," ").trim()).filter(Boolean).join(` -`):t}function Jq(e){let t=String(e||"").split(/\r?\n/),r=[],n=1;for(let i of t){if(!i.startsWith("Dialogue:"))continue;let a=i.slice(9).trim().split(",");if(a.length<10)continue;let o=cSt(a[1]),u=cSt(a[2]),c=PUr(OUr(a.slice(9).join(",")));c&&(r.push(String(n++)),r.push(`${o} --> ${u}`),r.push(c),r.push(""))}return r.join(` -`)}var dSt="*";var n_e="!vod1!";function An(e,t={}){let{fieldOrder:r,encodeUri:n=!1,structured:i=!1}=t,s;if(Array.isArray(e))s=e.map(r_e);else if(e&&typeof e=="object"){if(!Array.isArray(r)||r.length===0)throw new TypeError("encodeVodId: object payload requires options.fieldOrder");s=r.map(o=>r_e(e[o]))}else{let o=r_e(e);return n?encodeURIComponent(o):o}let a=i?MUr(s):s.join(dSt);return n?encodeURIComponent(a):a}function fi(e,t={}){let{fieldOrder:r,decodeUri:n=!1,minLength:i}=t;if(e==null)return Array.isArray(r)?{}:[];let s=String(e);if(n)try{s=decodeURIComponent(s)}catch{}let a=LUr(s);if(a===null&&(a=s.split(dSt)),typeof i=="number"&&a.length{o[u]=a[c]??""}),a.length>r.length&&(o._rest=a.slice(r.length)),o}function r_e(e){return e==null?"":String(e)}function MUr(e){let t=JSON.stringify(e),r=Buffer.from(t,"utf8").toString("base64url");return n_e+r}function LUr(e){if(typeof e!="string"||!e.startsWith(n_e))return null;try{let t=e.slice(n_e.length),r=Buffer.from(t,"base64url").toString("utf8"),n=JSON.parse(r);return Array.isArray(n)?n.map(i=>i==null?"":String(i)):null}catch{return null}}function i_e(e,t,r=!1){let n=Array.isArray(t)?t.filter(Boolean):[];if(!e||n.length===0)return null;let i=X1t(e,n,r);return!i?.from||!i?.url?null:i}function pa(e,t,r=!1){let n=i_e(e,t,r);return n?[n]:[]}function fSt(e,t){return`${e.server.address().url}${e.server.prefix}/proxy/${t}`}function OI(e,t,r,n,i,s=".bin"){return`${fSt(e,t)}/src/${r}/${n}/${i}/${s}`}function Ju(e,t,r,n,i,s,a=".bin"){return[String(r||""),OI(e,t,n,i,s,a)]}function PI(e,t,r,n,i,s=".m3u8"){return`${fSt(e,t)}/trans/${r}/${n}/${i}/${s}`}function Lp(e,t,r,n,i=".srt",s={}){return{name:s.name?String(s.name):"\u5916\u6302\u5B57\u5E55",url:OI(e,t,"subt",r,n,i),format:s.format?String(s.format):i.replace(/^\./,"")||"srt"}}var BUr="\u5916\u6302\u5B57\u5E55",$Ur="srt";function s_e(e={}){let t=e&&typeof e.url=="string"?e.url:"";return t?{url:t,name:e.name?String(e.name):BUr,format:e.format?String(e.format):$Ur}:null}function su(e={}){let{parse:t,urls:r,subtitles:n,extra:i}=e||{},s={parse:t===1?1:0,url:Array.isArray(r)?r.slice():[]},a=Array.isArray(n)?n.map(u=>u&&typeof u=="object"?s_e(u):null).filter(Boolean):[];a.length>0&&(s.subs=a);let o=i&&typeof i=="object"?{...i}:null;if(a.length>0){let u=a.map(l=>l.url),c=o||{};c.subt||(c.subt=a[0].url),c.subtitle||(c.subtitle=a[0].url),(!Array.isArray(c.subs_urls)||c.subs_urls.length===0)&&(c.subs_urls=u),(!Array.isArray(c.subs)||c.subs.length===0)&&(c.subs=a.map(l=>({name:l.name,url:l.url,format:l.format}))),Object.keys(c).length>0&&(s.extra=c)}else o&&Object.keys(o).length>0&&(s.extra=o);return s}function Fa(e,t){let r={parse:0,url:[],error:String(e??"\u64AD\u653E\u5931\u8D25")};return t&&typeof t=="object"?{...r,...t}:r}var FUr=["shareId","fileId","subtitleFileId"],UUr=/https:\/\/www\.alipan\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?|https:\/\/www\.aliyundrive\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?/;function gSt(e){let t=UUr.exec(e);return t?{shareId:t[1]||t[4],folderId:t[3]||t[6]||"root"}:null}var qUr="https://api.aliyundrive.com",jUr="https://open.aliyundrive.com/adrive/v1.0",oP=new Map,Ss={},Ll={},ej=null,pSt=!1,ySt="/ali",hSt="CatVodOpen",_b=null,aP="",MI="",_St={"User-Agent":CI,Referer:"https://www.aliyundrive.com/"};async function o_e(e){if(pSt&&ej)return;ej=e.server.db;let t=e.server.config?.ali||{},r=String(t?.token||"").trim();aP=r?uP.default.enc.Hex.stringify(uP.default.MD5(r)).toString():"";let n=await ej.getObjectDefault(ySt,{});aP&&n[aP]?MI=n[aP]:r?MI=r:MI="",pSt=!0}async function ASt(e,t=3,r=1e3){for(let n=0;n{let s=await _e.post(`${qUr}/${e}`,t,{headers:r}).catch(a=>(console.error(a),a.response||{status:500,data:{}}));return s.status===429&&(n||3)>0?(await la(1e3),await rj(e,t,r,(n||3)-1)):s.data||{}},3,1e3)}async function My(e,t,r,n){return r=r||{},Object.assign(r,{Authorization:Ll.auth}),ASt(async()=>{let s=await _e.post(`${jUr}/${e}`,t,{headers:r}).catch(a=>(console.error(a),a.response||{status:500,data:{}}));return s.status===429&&(n||3)>0?(await la(1e3),await My(e,t,r,(n||3)-1)):s.data||{}},3,1e3)}async function vSt(){if(!MI){Ss={};return}if(!Ss.user_id||Ss.expire_time-(0,Ly.default)().unix()<120){let e=await _e.post("https://auth.aliyundrive.com/v2/account/token",{refresh_token:MI,grant_type:"refresh_token"},{headers:_St}).catch(t=>t.response||{status:500,data:{}});e.status===200&&(Ss=e.data,Ss.expire_time=(0,Ly.default)(e.data.expire_time).unix(),Ss.auth=`${Ss.token_type} ${Ss.access_token}`,MI=Ss.refresh_token,await ej.push(ySt+"/"+aP,Ss.refresh_token))}}async function u_e(){if(!Ll.access_token||Ll.expire_time-(0,Ly.default)().unix()<120){if(await vSt(),!Ss.auth){console.error("\u65E0\u6CD5\u83B7\u53D6\u7528\u6237\u6388\u6743");return}try{let e=await _e.post("https://aliyundrive-oauth.messense.me/oauth/authorize/qrcode",{scopes:["user:base","file:all:read","file:all:write"],width:300,height:300},{headers:{"Content-Type":"application/json"}});if(!e.data?.sid){console.error("\u83B7\u53D6sid\u5931\u8D25");return}let t=e.data.sid;if(!(await _e.post(`https://open.aliyundrive.com/oauth/users/qrcode/authorize?sid=${t}`,{authorize:1,scope:"user:base,file:all:read,file:all:write",drives:["backup","resource"],scopes:["user:base","file:all:read","file:all:write"],sid:t},{headers:{authorization:Ss.auth}})).data?.result){console.error("\u83B7\u53D6\u6388\u6743flag\u5931\u8D25");return}let n=null;for(let s=0;s<30;s++){await la(1e3);let a=await _e.get(`https://openapi.aliyundrive.com/oauth/qrcode/${t}/status`);if(a.data?.status==="LoginSuccess"){n=a.data.authCode;break}}if(!n){console.error("\u83B7\u53D6\u6388\u6743code\u8D85\u65F6");return}let i=await _e.post("https://aliyundrive-oauth.messense.me/oauth/access_token",{code:n,grant_type:"authorization_code"});if(i.status===200){Ll=i.data;let s=JSON.parse(uP.default.enc.Base64.parse(Ll.access_token.split(".")[1]).toString(uP.default.enc.Utf8));Ll.expire_time=s.exp,Ll.auth=`${Ll.token_type} ${Ll.access_token}`}}catch(e){console.error("driveAuth\u5931\u8D25:",e)}}}async function mSt(){let e=await My("openFile/list",{drive_id:Ss.drive.resource_drive_id,parent_file_id:_b,limit:100,order_by:"updated_at",order_direction:"DESC"});if(e.items){let t=e.items.map(r=>My("openFile/delete",{drive_id:Ss.drive.resource_drive_id,file_id:r.file_id}));await Promise.all(t)}}async function HUr(e){if(!Ss.device_id)return;if(_b){e&&await mSt();return}if(await u_e(),!Ll.auth){console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743");return}let t=await My("user/getDriveInfo",{});if(t.resource_drive_id){Ss.drive=t;let r=t.resource_drive_id,n=await My("openFile/list",{drive_id:r,parent_file_id:"root",limit:100,order_by:"updated_at",order_direction:"DESC"});if(n.items){for(let i of n.items)if(i.name===hSt){_b=i.file_id,await mSt();break}if(!_b){let i=await My("openFile/create",{check_name_mode:"refuse",drive_id:r,name:hSt,parent_file_id:"root",type:"folder"});i.file_id&&(_b=i.file_id)}}}}var Zq=new Map;async function bSt(e){let t=e.shareId,r=oP.get(t);if(!r||r.expire_time-(0,Ly.default)().unix()<120){if(Zq.has(t)){await Zq.get(t);return}let n=(async()=>{try{oP.delete(t);let i=await rj("v2/share_link/get_share_token",{share_id:e.shareId,share_pwd:e.sharePwd||""});i?.expire_time?(i.expire_time=(0,Ly.default)(i.expire_time).unix(),oP.set(t,i)):console.warn("[ali detail] get_share_token empty",JSON.stringify({shareId:e.shareId,folderId:e.folderId||"root",hasToken:!!i?.share_token,code:i?.code??null,message:i?.message||""}))}finally{Zq.delete(t)}})();Zq.set(t,n),await n}}async function KUr(e){let t=typeof e=="string"?gSt(e):e;if(!t)return[];await bSt(t);let r=oP.get(t.shareId);if(!r)return console.warn("[ali detail] no cached share token",JSON.stringify({shareId:t.shareId,folderId:t.folderId||"root"})),[];let n=[],i=async(s,a,o="",u)=>{let c=await rj("adrive/v2/file/list_by_share",{share_id:s,parent_file_id:a,limit:200,order_by:"name",order_direction:"ASC",marker:u||""},{"X-Share-Token":r.share_token}),l=c.items;if(!l){console.warn("[ali detail] list items empty",JSON.stringify({shareId:s,folderId:a,currentPath:o,nextMarker:u||"",code:c?.code??null,message:c?.message||""}));return}let d=[],f=[],p=[];for(let y of l)y.type==="folder"?p.push({item:y,path:o+(o?"/":"")+y.name}):y.type==="file"&&y.category==="video"?(y.name=y.name.replace(/玩偶哥.*【神秘的哥哥们】/g,""),y.fullPath=o+(o?"/":"")+y.name,d.push(y)):y.type==="file"&&ss(y.name)&&f.push(y);for(let y of d){let g=as(y.name,f,v=>v.name);g?.file_id&&(y.subtitle={file_id:g.file_id})}let h=ji(d);n.push(...h);let m=p.map(y=>i(s,y.item.file_id,y.path));await Promise.all(m),c.next_marker&&await i(s,a,o,c.next_marker)};return await i(t.shareId,t.folderId,""),n}var Ab=new Map;async function ESt(e,t,r){if(await vSt(),await HUr(r),r&&Ab.clear(),!_b)return null;await bSt({shareId:e});let n=oP.get(e);return n?(await rj("adrive/v2/file/copy",{file_id:t,share_id:e,auto_rename:!0,to_parent_file_id:_b,to_drive_id:Ss.drive.resource_drive_id},{"X-Share-Token":n.share_token})).file_id||!1:null}async function SSt(e,t){if(!Ab.has(t)){let i=await ESt(e,t,!0);if(!i)return null;Ab.set(t,i)}if(await u_e(),!Ll.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743\uFF0C\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F"),null;let n=(await My("openFile/getVideoPreviewPlayInfo",{file_id:Ab.get(t),drive_id:Ss.drive.resource_drive_id,category:"live_transcoding",url_expire_sec:"14400"}))?.video_preview_play_info;return n?.quick_video_list??n?.live_transcoding_task_list}async function VUr(e,t){if(!Ab.has(t)){let n=await ESt(e,t,!0);if(!n)return null;Ab.set(t,n)}if(await u_e(),!Ll.auth)return console.error("\u65E0\u6CD5\u83B7\u53D6openapi\u6388\u6743\uFF0C\u65E0\u6CD5\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5"),null;let r=await My("openFile/getDownloadUrl",{file_id:Ab.get(t),drive_id:Ss.drive.resource_drive_id});return r.url?r:null}async function wSt(e,t){if(t&&await o_e(t),await Z1t(e)){let r=gSt(e);if(r){let n=await KUr(r);if(n?.length>0){let i=await Pn("ali"),s=n.map(a=>({vod_id:An([a.share_id,a.file_id,a.subtitle?.file_id||""],{structured:!0}),vod_name:a.name,vod_size:a.size}));return pa(i,s)}}}return[]}var tj=new Map,a_e=new Map;async function ISt(e,t){await o_e(e);let r=e.params.site,n=e.params.what,i=e.params.shareId,s=e.params.fileId;if(r!=="ali")return;let a=e.params.flag,o=e.params.end;if(n==="trans"){let u=tj.get(s);if(u){let l=u.find(d=>d.template_id.toLowerCase()===a)?.url;if(l){let d=l.match(/x-oss-expires=(\d+)/);d&&parseInt(d[1])-(0,Ly.default)().unix()<15&&(tj.delete(s),u=null)}}if(!u){if(u=await SSt(i,s),!u)return t.code(500),"\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\uFF0C\u8BF7\u68C0\u67E5\u6388\u6743";tj.set(s,u)}let c=u.find(l=>l.template_id.toLowerCase()===a);if(!c)return t.code(404),"\u627E\u4E0D\u5230\u6307\u5B9A\u7684\u8F6C\u7801\u683C\u5F0F";if(o?.endsWith(".ts")){if(!c.plist){let f=await _e.get(c.url,{headers:{"User-Agent":CI}});c.plist=cP.parse(f.data),c.plist.segments.forEach((p,h)=>{p.uri.startsWith("http")||(p.uri=new URL(p.uri,c.url).toString()),p.suri=p.uri,p.uri=h+".ts"})}let l=parseInt(o.replace(".ts","")),d=c.plist.segments[l];if(d?.suri){t.redirect(d.suri);return}}else{if(!c.plist){let d=await _e.get(c.url,{headers:{"User-Agent":CI}});c.plist=cP.parse(d.data)}let l=cP.stringify(c.plist);return t.code(200).headers({"content-type":"audio/x-mpegurl","content-length":l.length.toString()}),l}}else{let u=a_e.get(s);if(u){let c=u.url.match(/x-oss-expires=(\d+)/);c&&parseInt(c[1])-(0,Ly.default)().unix()<15&&(a_e.delete(s),u=null)}if(!u){if(u=await VUr(i,s),!u)return t.code(500),"\u65E0\u6CD5\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\uFF0C\u8BF7\u68C0\u67E5\u6388\u6743";a_e.set(s,u)}if(a==="redirect"||a==="subt"){t.redirect(u.url);return}}}async function xSt(e,t){await o_e(e);let r=e.body.flag,n=e.body.id;if(r.startsWith(await Pn("ali"))){let i;try{i=fi(n,{minLength:2,fieldOrder:FUr})}catch{return Fa("\u963F\u91CC\u4E91\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}let{shareId:s,fileId:a,subtitleFileId:o=""}=i,u=await SSt(s,a);if(!u)return Fa("\u65E0\u6CD5\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\uFF0C\u8BF7\u68C0\u67E5\u963F\u91CC\u4E91\u76D8\u6388\u6743");tj.set(a,u),u.sort((f,p)=>p.template_width-f.template_width);let c=Ju(e,"ali","\u539F\u753B","redirect",s,a,".bin"),l=[];o&&l.push(Lp(e,"ali",s,o,".bin",{name:"\u5916\u6302\u5B57\u5E55",format:"bin"}));let d={QHD:"\u8D85\u6E05",FHD:"\u9AD8\u6E05",HD:"\u6807\u6E05",SD:"\u666E\u753B",LD:"\u6781\u901F"};return u.forEach(f=>{let p=d[f.template_id]||f.template_id;c.push(p,PI(e,"ali",f.template_id.toLowerCase(),s,a,".m3u8"))}),su({parse:0,urls:c,subtitles:l})}}Kt();Yr();Kt();var c_e=Se(di(),1),vb=require("path"),os=Se(require("fs"),1),TSt=require("stream");async function QUr(e,t){let r=await _e.get(e,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},t)}).catch(n=>n.response||{status:500,data:{}});if(r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",i=r.headers["content-range"],s=parseInt(r.headers["content-length"]),a=n||!!i||s===1,o=i?parseInt(i.split("/")[1]):s;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}function GUr(e,t){let r=String(e||"").trim(),n=/^bytes=(\d*)-(\d*)$/i.exec(r);if(!n)return null;let i=n[1]===""?null:Number(n[1]),s=n[2]===""?null:Number(n[2]);if(i===null&&s===null)return null;if(i===null){let a=Number(s);if(!Number.isFinite(a)||a<=0)return null;i=Math.max(t-a,0),s=t-1}else if(!Number.isFinite(i)||i<0||(s===null&&(s=t-1),!Number.isFinite(s)||s=t?{unsatisfied:!0}:(s=Math.min(s,t-1),{start:i,end:s})}var lP={},CSt="",bb=(process.env.NODE_PATH||".")+"/vod_cache",YUr=1024*1024*100;async function NSt(e){try{if(os.default.existsSync(e)){let t=await os.default.promises.readdir(e);await Promise.all(t.map(async r=>{let n=`${e}/${r}`;(await os.default.promises.stat(n)).isDirectory()?await NSt(n):await os.default.promises.unlink(n)})),await os.default.promises.rmdir(e)}}catch{}}NSt(bb);function WUr(e){try{os.default.readdir(bb,(t,r)=>{if(r)for(let n of r){if(n===e)continue;let i=(0,vb.join)(bb,n);os.default.stat(i,(s,a)=>{a&&a.isDirectory()&&os.default.readdir(i,(o,u)=>{if(u)for(let c of u)c.endsWith(".p")||os.default.rm((0,vb.join)(i,c),{recursive:!0},()=>{})})})}})}catch{}}async function XUr(e,t,r,n,i,s,a=null,o=!1,u=0){n=c_e.default.enc.Hex.stringify(c_e.default.MD5(n||r)).toString(),CSt!==n&&(WUr(n),CSt=n);let c=a;if(!c){if(!lP[n]){let[k,O]=await QUr(r,i);if(!k||!O["content-length"]){t.redirect(r);return}lP[n]=O}c=parseInt(lP[n]["content-length"])}let l=!0;await os.default.promises.access((0,vb.join)(bb,n)).catch(k=>l=!1),l||await os.default.promises.mkdir((0,vb.join)(bb,n),{recursive:!0});let d=0,f=c-1,p={};if(e.headers.range){let k=GUr(e.headers.range,c);if(!k||k.unsatisfied){t.code(416).headers({"content-range":`bytes */${c}`,"accept-ranges":"bytes"});return}d=k.start,f=k.end,Object.assign(p,lP[n]||{}),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${c}`,t.code(206)}else Object.assign(p,lP[n]||{}),p["content-length"]||(p["content-length"]=c.toString()),t.code(200);s=s||{chunkSize:1024*256,poolSize:5,timeout:1e3*10};let h=s.chunkSize,m=s.poolSize,y=s.timeout,g=Math.max(Number(s.maxRetries||4),1),v=Math.floor(f/h)+1,A=Math.floor(d/h),_=A,E=!1,S=null,C={},I={},N=new TSt.PassThrough,T=(k,O)=>{if(S||E)return;let P=Number(O?.response?.status||O?.statusCode||O?.status||0),$=(I[k]||0)+1;if(I[k]=$,!(P===401||P===403||P===404||$>=g))return;let j=P?` status=${P}`:"";S=new Error(`chunk ${k} failed after ${$} attempts.${j}`.trim()),P&&(S.statusCode=P),E=!0,N.destroy(S)};for(let k=0;k{(async function P($){if(E||S||A>=v){O();return}if($===void 0&&(A-_)*h>=YUr){setTimeout(P,5);return}let Q=$||A++,j=`${e.id}-${Q}`;try{let z=(0,vb.join)(bb,n,`${e.id}-${Q}.p`),X=!0;if(await os.default.promises.access(z).catch(K=>X=!1),!X){let K=Q*h+u,Y=Math.min(f,(Q+1)*h-1)+u,ie=await _e.get(r,{responseType:"stream",timeout:y,headers:Object.assign({Range:`bytes=${K}-${Y}`},i)}),ue=(0,vb.join)(bb,n,`${e.id}-${Q}.dl`),he=os.default.createWriteStream(ue),ye=setTimeout(()=>{he.destroy(new Error(`${j} read timeout`))},y),q=new Promise(ae=>{he.on("finish",async()=>{E?await os.default.promises.rm(ue).catch(()=>{}):(await os.default.promises.rename(ue,z).catch(()=>{}),C[j]=z),ae(!0)}),he.on("error",async M=>{await os.default.promises.rm(ue).catch(()=>{}),ae(!1)})});ie.data.pipe(he);let B=await q;if(clearTimeout(ye),!B){if(T(Q),E||S){O();return}setTimeout(()=>{P(Q)},15);return}}setTimeout(P,5)}catch(z){if(T(Q,z),E||S){O();return}setTimeout(()=>{P(Q)},15)}})()});return t.headers(p),new Promise(k=>{let O=!0;(async function P(){try{if(S){k();return}if(_>=v||E){N.end(),k();return}if(!O){setTimeout(P,5);return}let $=`${e.id}-${_}`;if(!C[$]){setTimeout(P,5);return}let Q=_*h,j=Math.min(f,(_+1)*h-1),z=Math.max(d,Q)-Q,X=C[$];delete C[$];let K=await os.default.promises.open(X,"r"),Z=j-Q-z+1;if(Z<=0){await K.close().catch(()=>{}),await os.default.promises.rm(X).catch(()=>{}),_++,setTimeout(P,5);return}let Y=Buffer.alloc(Z);await K.read(Y,0,Z,z),await K.close().catch(()=>{}),await os.default.promises.rm(X).catch(()=>{}),O=N.write(Y),O||N.once("drain",()=>{O=!0}),_++,setTimeout(P,5)}catch{setTimeout(P,5)}})()}),N.on("close",async()=>{Object.keys(C).forEach(k=>{k.startsWith(e.id)&&(os.default.rm(C[k],{recursive:!0},()=>{}),delete C[k])}),E=!0}),N}var Bp=XUr;var Ib=Se(di(),1);var RSt=/pan\.qoark\.cn\/s\/([^\/?#]+)/,JUr=/https:\/\/pan\.quark\.cn\/s\/([^\/?#]+)/;async function FSt(e){if(e.includes("pan.qoark.cn"))try{let r=RSt.exec(e);if(r&&r[1])return{shareId:r[1],folderId:"0"};let n=await Ee.get(e,{maxRedirects:2,timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"}}),i=n.request?.res?.responseUrl||n.headers?.location||e;if(i.startsWith("/")){let s=new URL(e);i=`${s.protocol}//${s.host}${i}`}e=i}catch(r){console.error("\u5938\u514B\u77ED\u94FE\u63A5\u91CD\u5B9A\u5411\u5931\u8D25:",r);let n=RSt.exec(e);return n&&n[1]?{shareId:n[1],folderId:"0"}:null}let t=JUr.exec(e);return t?{shareId:t[1],folderId:"0"}:null}var nf="pr=ucpro&fr=pc",By={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) quark-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://pan.quark.cn"},LI=null,Eb=null,DSt=!1,kSt="https://drive.quark.cn/1/clouddrive/",ws="",OSt=new Map,PSt="CatVodOpen",Sb=null;async function h_e(e){let r=(e?.server?.config?.quark||{}).cookie||"",n=Ib.default.enc.Hex.stringify(Ib.default.MD5(r)).toString();if((!DSt||!LI||Eb!==n||!ws)&&(LI=e.server.db,ws=r,Eb=n),LI){let i=await LI.getObjectDefault("/quark",{});i[Eb]&&i[Eb]!==ws&&(ws=i[Eb])}DSt=!0}async function sf(e,t,r,n,i){return r=r||{},Object.assign(r,By),Object.assign(r,{Cookie:ws||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await _e.get(`${kSt}/${e}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&Xr.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await _e.post(`${kSt}/${e}`,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&Xr.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&ws.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(ws=ws.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await LI.push(`/quark/${Eb}`,ws))}return a.status===429&&(i||3)>0?(await la(1e3),await sf(e,t,r,n,(i||3)-1)):a.data||{}})()}async function m_e(e,t,r,n,i){return r=r||{},Object.assign(r,By),Object.assign(r,{Cookie:ws||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await _e.get(e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&Xr.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await _e.post(e,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&Xr.toast("\u5938\u514Btoken\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&ws.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(ws=ws.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await LI.push(`/quark/${Eb}`,ws))}return a.status===429&&(i||3)>0?(await la(1e3),await m_e(e,t,r,n,(i||3)-1)):a.data||{}})()}async function MSt(){let e=await sf(`file/sort?${nf}&pdir_fid=${Sb}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data?.list?.length>0){let t=e.data.list.map(r=>sf(`file/delete?${nf}`,{action_type:2,filelist:[r.fid],exclude_fids:[]}));await Promise.all(t)}}async function ZUr(e){if(Sb){e&&await MSt();return}let t=await sf(`file/sort?${nf}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data?.list){for(let r of t.data.list)if(r.file_name===PSt){Sb=r.fid,await MSt();break}}if(!Sb){let r=await sf(`file?${nf}`,{pdir_fid:"0",file_name:PSt,dir_path:"",dir_init_lock:!1});r.data?.fid&&(Sb=r.data.fid)}}var nj=new Map,eqr=[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".m4v",".mpg",".mpeg",".3gp",".f4v",".vob",".rm",".iso",".asf",".divx"];function tqr(e){if(e?.file!==!0)return!1;if(e.obj_category==="video")return!0;let t=String(e.file_name||"").toLowerCase();return eqr.some(r=>t.endsWith(r))}async function ij(e){let t=`${e.shareId}_${e.sharePwd||""}`,r=OSt.get(t);if(r)return r;if(nj.has(t))return await nj.get(t);let n=(async()=>{try{let i=await sf(`share/sharepage/token?${nf}`,{pwd_id:e.shareId,passcode:e.sharePwd||""});return i.data?.stoken?(OSt.set(t,i.data),i.data):null}finally{nj.delete(t)}})();return nj.set(t,n),await n}async function rqr(e){let t=typeof e=="string"?await FSt(e):e;if(!t)return[];let r=await ij(t);if(!r)return[];let n=[],i=async(s,a,o="",u=1)=>{let l=await sf(`share/sharepage/detail?${nf}&pwd_id=${s}&stoken=${encodeURIComponent(r.stoken)}&pdir_fid=${a}&force=0&_page=${u}&_size=100&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!l.data)return;let d=l.data.list;if(!d)return;let f=[],p=[],h=[];for(let g of d)g.dir===!0?f.push({item:g,path:o+(o?"/":"")+g.file_name}):tqr(g)?(g.stoken=r.stoken,p.push(g)):g.file===!0&&ss(g.file_name)&&h.push(g);for(let g of p){let v=as(g.file_name,h,_=>_.file_name),A=v?.share_fid_token||v?.fid_token||"";v?.fid&&A&&(g.subtitle={fid:v.fid,share_fid_token:A,ext:kI(v.file_name)})}let m=ji(p);n.push(...m),ui(s,g.item.fid,g.path));await Promise.all(y)};return await i(t.shareId,t.folderId,""),n}var wb=new Map,dP={token:"",ts:0};async function nqr(){let e=Date.now();if(dP.token&&e-dP.ts<55*1e3)return dP.token;let t={conversation_id:`300000${e}`,conversation_type:3,msg_id:`${e}000`},n=await m_e("https://drive-social-api.quark.cn/1/clouddrive/chat/conv/file/acquire_dl_token?pr=ucpro&fr=pc&sys=darwin&ve=3.19",t,{"Content-Type":"application/json"}),i=n?.status===200&&n?.code===0?n?.data?.token:"";return i&&(dP.token=i,dP.ts=e),i||""}async function iqr(e,t,r,n){if(!e||!r||!n)return null;let i=t;i||(i=(await ij({shareId:e,sharePwd:""}))?.stoken||"");let s={fids:[r],fids_token:[n],pwd_id:e,stoken:i||"",speedup_session:""},a=await nqr();a&&(s.token=a);let u=(await m_e(`https://drive-pc.quark.cn/1/clouddrive/file/download?${nf}`,s))?.data?.[0];return u?.download_url?u:null}async function USt(e,t,r,n,i){if(await ZUr(i),i&&wb.clear(),!Sb)return null;let s=t;if(!s&&(s=(await ij({shareId:e,sharePwd:""}))?.stoken||"",!s))return null;let a=async u=>await sf(`share/sharepage/save?${nf}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:Sb,pwd_id:e,stoken:u,pdir_fid:"0",scene:"link"}),o=await a(s);if(!o?.data?.task_id){let c=(await ij({shareId:e,sharePwd:""}))?.stoken||"";if(!c)return!1;o=await a(c)}if(o.data?.task_id){let u=0;for(;u<=5;){let c=await sf(`task?${nf}&task_id=${o.data.task_id}&retry_index=${u}`,{},{},"get");if(c.data?.save_as?.save_as_top_fids?.length>0)return c.data.save_as.save_as_top_fids[0];u++,await la(1e3)}}return!1}async function sqr(e,t,r,n){if(!wb.has(r)){let s=await USt(e,t,r,n,!0);if(!s)return null;wb.set(r,s)}return(await sf(`file/v2/play?${nf}`,{fid:wb.get(r),resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"})).data?.video_list||null}async function LSt(e,t,r,n,i){if(!wb.has(r)){let a=await USt(e,t,r,n,i);if(!a)return null;wb.set(r,a)}return(await sf(`file/download?${nf}`,{fids:[wb.get(r)]})).data?.[0]||null}function aqr(e){if(!e||e.length<16||!e.subarray(0,8).equals(Buffer.from([137,80,78,71,13,10,26,10])))return!1;let r=e.subarray(8,12).equals(Buffer.from([26,69,223,163])),n=e.subarray(12,16).equals(Buffer.from("ftyp"));return r||n}function oqr(e,t){let r=String(e||"").trim(),n=/^bytes=(\d*)-(\d*)$/i.exec(r);if(!n)return null;let i=n[1]===""?null:Number(n[1]),s=n[2]===""?null:Number(n[2]);if(i===null&&s===null)return null;if(i===null){let a=Number(s);if(!Number.isFinite(a)||a<=0)return null;i=Math.max(t-a,0),s=t-1}else if(!Number.isFinite(i)||i<0||(s===null&&(s=t-1),!Number.isFinite(s)||s=t?{unsatisfied:!0}:(s=Math.min(s,t-1),{start:i,end:s})}var l_e=new Map;async function BSt(e,t){if(!e)return!1;if(l_e.has(t))return l_e.get(t);try{let r=await Ee.get(e,{headers:{Cookie:ws,...By,Range:"bytes=0-15"},responseType:"arraybuffer",timeout:2e4,validateStatus:i=>i===200||i===206}),n=aqr(Buffer.from(r.data||[]));return l_e.set(t,n),n}catch{return!1}}async function $St(e,t,r,n,i,s){let a=Number(n?.size||n?.file_size||n?.fileSize||0),o=Math.max(a-8,0);if(o<=0){t.sent||t.code(502).send({error:"invalid disguised media size"});return}return oqr(e.headers.range,o)?.unsatisfied?(t.code(416).headers({"content-range":`bytes */${o}`,"accept-ranges":"bytes","cache-control":"no-store"}),""):await Bp(e,t,r,s,{Cookie:ws,...By},{chunkSize:i.chunkSize,poolSize:i.poolSize,timeout:1e3*10},o,!0,8)}async function qSt(e,t){if(t&&await h_e(t),await eSt(e)){let r=await FSt(e);if(r){let n=await rqr(r);if(n?.length>0){let i=await Pn("quark"),s=n.map(a=>({vod_id:An([r.shareId,a.stoken,a.fid,a.share_fid_token,a.subtitle?.fid||"",a.subtitle?.share_fid_token||"",a.subtitle?.ext||""],{structured:!0}),vod_name:a.file_name,vod_size:a.size}));return pa(i,s)}}}return[]}var p_e=new Map,d_e=new Map,f_e=new Map,uqr=60*1e3;async function jSt(e,t){try{await h_e(e);let r=e.params.site,n=e.params.what,i=e.params.shareId,s=e.params.fileId;if(r!=="quark")return;let a=fi(s,{fieldOrder:["stoken","fid","shareFidToken"]}),o=e.params.flag,u=Ib.default.enc.Hex.stringify(Ib.default.MD5(e.server.config.quark.cookie)).toString(),c=await e.server.db.getObjectDefault(`/quark/settings/${u}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1});if(n==="trans"){let l=p_e.get(a.fid);l||(l=(await sqr(i,decodeURIComponent(a.stoken),a.fid,a.shareFidToken))?.filter(f=>f.accessable)||[],p_e.set(a.fid,l));let d=l.find(f=>f.resolution.toLowerCase()===o);if(d?.video_info?.url){t.redirect(d.video_info.url);return}}else{if(o==="subt"){let d=await LSt(i,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,!1);if(!d?.download_url){t.sent||t.code(404).send({error:"subtitle not found"});return}let f=await cqr(d.download_url);if(!f){t.sent||t.code(502).send({error:"subtitle fetch failed"});return}let p=f;if(String(e.params.end||"").toLowerCase().endsWith(".srt")&&dqr(f)){let y=Jq(f.toString("utf8"));p=Buffer.from(y,"utf8")}let m=lqr(p,e.params.end);return t.code(200).headers({"content-type":m,"content-length":String(p.length),"cache-control":"no-store"}),p}if(o==="fast"){if(!c.enableFast){t.sent||t.code(403).send({error:"fast disabled"});return}let d=Date.now(),f=f_e.get(a.fid),p=f&&d-f.ts0?m:null;if(!c.useMultithread){t.redirect(p.download_url);return}try{return await Bp(e,t,p.download_url,`fast_${a.fid}`,{Cookie:ws,...By},{chunkSize:c.chunkSize,poolSize:c.poolSize,timeout:1e3*10},y,!0)}catch(g){console.error("[quark fast] chunkStream error, clearing cache:",g.message),f_e.delete(a.fid),t.sent||t.code(503).send({error:"fast stream error, please retry"})}}return}let l=d_e.get(a.fid);if(l||(l=await LSt(i,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,o==="down"),l&&d_e.set(a.fid,l)),l?.download_url){if(await BSt(l.download_url,a.fid))return await $St(e,t,l.download_url,l,c,a.fid);if(!c.useMultithread){t.redirect(l.download_url);return}let f=Number(l.size||l.file_size||l.fileSize||0),p=f>0?f:null;try{return await Bp(e,t,l.download_url,a.fid,{Cookie:ws,...By},{chunkSize:c.chunkSize,poolSize:c.poolSize,timeout:1e3*10},p,!0)}catch(h){console.error("[quark proxy] chunkStream error, clearing cache:",h.message),d_e.delete(a.fid),t.sent||t.code(503).send({error:"stream error, please retry"})}}}}catch(r){console.error("[quark proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function HSt(e,t){await h_e(e);let r=e.body.flag,n=e.body.id;if(r.startsWith(await Pn("quark"))){let{shareId:i,stoken:s,fid:a,shareFidToken:o,subtitleFid:u="",subtitleShareFidToken:c=""}=fi(n,{fieldOrder:["shareId","stoken","fid","shareFidToken","subtitleFid","subtitleShareFidToken","subtitleExt"]}),l=p_e.get(a)||[],d=Ib.default.enc.Hex.stringify(Ib.default.MD5(e.server.config.quark.cookie)).toString(),f=await e.server.db.getObjectDefault(`/quark/settings/${d}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1}),p=encodeURIComponent(An([s,a,o],{structured:!0})),h=[],m=Ju(e,"quark","\u5FEB\u4F20","fast",i,p,".bin"),y=Ju(e,"quark","\u4EE3\u7406","down",i,p,".bin"),g=Ju(e,"quark","\u539F\u753B","redirect",i,p,".bin");f.enableFast?h.push(...m,...y,...g):h.push(...y,...g);let v=[],A={header:{Cookie:ws,...By}};if(u){let E="srt",S=encodeURIComponent(An([s,u,c,E],{structured:!0}));v.push(Lp(e,"quark",i,S,`.${E}`,{name:"\u5916\u6302\u5B57\u5E55",format:E}))}let _={"4k":"\u8D85\u6E05","2k":"\u84DD\u5149",super:"\u9AD8\u6E05",high:"\u6807\u6E05",low:"\u666E\u753B",normal:"\u6781\u901F"};return l.length>0&&l.forEach(E=>{let S=_[E.resolution]||E.resolution;h.push(S,PI(e,"quark",E.resolution.toLowerCase(),i,p,".mp4"))}),su({parse:0,urls:h,subtitles:v,extra:A})}return Fa("\u5938\u514B\u7F51\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}async function cqr(e){if(!e)return null;let t={Cookie:ws,...By};try{let r=await Ee.get(e,{headers:t,responseType:"arraybuffer",maxRedirects:0,timeout:2e4,validateStatus:a=>a>=200&&a<400});if(r.status===200&&r.data)return Buffer.from(r.data);let n=r.headers?.location;if(!n)return null;let i=new URL(n,e).toString(),s=await Ee.get(i,{headers:t,responseType:"arraybuffer",timeout:3e4,validateStatus:a=>a===200});return s.data?Buffer.from(s.data):null}catch{return null}}function lqr(e,t=""){let r=String(t||"").toLowerCase();if(r.endsWith(".ass")||r.endsWith(".ssa"))return"text/x-ssa; charset=utf-8";if(r.endsWith(".vtt"))return"text/vtt; charset=utf-8";if(r.endsWith(".srt"))return"application/x-subrip; charset=utf-8";let n=Buffer.from(e).subarray(0,4096).toString("utf8").toLowerCase();return n.includes("[script info]")?"text/x-ssa; charset=utf-8":n.includes("webvtt")?"text/vtt; charset=utf-8":n.includes("-->")?"application/x-subrip; charset=utf-8":"text/plain; charset=utf-8"}function dqr(e){let t=Buffer.from(e).subarray(0,8192).toString("utf8").toLowerCase();return t.includes("[script info]")||t.includes("[events]")||t.includes("dialogue:")}Kt();var of=Se(di(),1);Yr();Yr();var JIt=Se(kb(),1),i0=Se(di(),1);var oAe="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Aj="cookie",vj="ut",XIt=[],uAe=null,T9r=async e=>{let t=String(e.config?.uc?.cookie||""),r=i0.default.enc.Hex.stringify(i0.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[Aj]?n[Aj]:n[r]?n[r]:t?(await e.db.push(`/uc/${Aj}`,t),t):""},N9r=async(e,t)=>{await e.db.push(`/uc/${Aj}`,t)},cAe=async e=>{let t=String(e.config?.uc?.ut||""),r=i0.default.enc.Hex.stringify(i0.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[vj]?n[vj]:n[r]?n[r]:t?(await e.db.push(`/uc/${vj}`,t),t):""},lAe=async(e,t)=>{await e.db.push(`/uc/${vj}`,t)};async function dAe(e){e.get("/qrcode",async(t,r)=>{let n=await Ee.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":oAe,referer:"https://drive.uc.cn"}});XIt=Mp(n.headers["set-cookie"]),uAe=n.data.data.members.token;let i=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${uAe}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,s=await JIt.default.toBuffer(i,{width:300,height:300});r.send(s)}),e.post("/cookie",(t,r)=>{Ee.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${uAe}&client_id=381&v=1.2&request_id=${Date.now()}`).then(n=>n.data.status===2e6?{data:n.data.data,cookies:XIt}:Promise.reject(new Error(`service_ticket\u83B7\u53D6\u5931\u8D25: ${n.data.message}`))).then(async({data:n,cookies:i})=>{let s=await Ee.get(`https://drive.uc.cn/account/info?st=${n.members.service_ticket}&fr=pc&platform=pc`,{headers:{"User-Agent":oAe,Cookie:i.join(""),referer:"https://drive.uc.cn"}});return s.headers["set-cookie"]?i.concat(Mp(s.headers["set-cookie"])):Promise.reject(new Error(`\u4E2A\u4EBAPus\u83B7\u53D6\u5931\u8D25\uFF1A${s.data.message}`))}).then(async n=>{let i=await Ee.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":oAe,Cookie:n.join("")}});if(i.headers["set-cookie"])r.send({code:0,data:n.concat(Mp(i.headers["set-cookie"])).join("")});else return Promise.reject(new Error(`\u4E2A\u4EBAPuus\u83B7\u53D6\u5931\u8D25\uFF1A${i.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await T9r(t.server)})}),e.put("/cookie",async(t,r)=>{await N9r(t.server,t.body.cookie),r.send({code:0})}),e.get("/ut",async(t,r)=>{r.send({code:0,data:await cAe(t.server)})}),e.put("/ut",async(t,r)=>{await lAe(t.server,t.body.ut),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=i0.default.enc.Hex.stringify(i0.default.MD5(t.server.config.uc.cookie)).toString(),i=await t.server.db.getObjectDefault(`/uc/settings/${n}`,{chunkSize:512*1024,poolSize:4,useMultithread:!0});r.send({code:0,data:i})}catch(n){console.error("\u83B7\u53D6UC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let{chunkSize:n,poolSize:i,useMultithread:s}=t.body;if(typeof n!="number"||typeof i!="number"||typeof s!="boolean")return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let a=i0.default.enc.Hex.stringify(i0.default.MD5(t.server.config.uc.cookie)).toString();await t.server.db.push(`/uc/settings/${a}`,{chunkSize:n,poolSize:i,useMultithread:s}),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58UC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var Bc={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},us={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};function wP(e,t){let r=t?e:Bc.DeviceID,n=t||e;return of.default.MD5(r+n).toString().slice(0,16)}function Sj(e,t,r,n){return of.default.SHA256((e||"GET")+"&"+(t||"/file")+"&"+r+"&"+(n||us.signKey)).toString()}var R9r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/;function ixt(e){let t=R9r.exec(e);return t?{shareId:t[1],folderId:"0"}:null}var Up="pr=UCBrowser&fr=pc",wj={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"},Pb=null,fAe=null,ZIt=!1,hAe="https://pc-api.uc.cn/1/clouddrive/",uf="",AAe="",sxt="",mAe="",gAe="cookie",vAe="token",D9r="ut",ext=new Map,txt="CatVodOpen",Ob=null,bj="";async function bAe(e){if(ZIt&&Pb)return;Pb=e.server.db;let t=e.server.config.uc;uf=t.cookie,mAe=String(t.token||""),fAe=of.default.enc.Hex.stringify(of.default.MD5(t.cookie)).toString(),AAe=of.default.enc.Hex.stringify(of.default.MD5(t.token)).toString(),sxt=of.default.enc.Hex.stringify(of.default.MD5(t.ut)).toString();let r=await Pb.getObjectDefault("/uc",{});if(r[gAe]?uf=r[gAe]:r[fAe]&&(uf=r[fAe]),bj=await cAe(e.server),!bj)try{await _e.get(`${hAe}/file`)}catch(n){n?.response?.data&&(bj=n.response.data,lAe(e.server,bj))}ZIt=!0}async function cf(e,t,r,n,i){return r=r||{},Object.assign(r,wj),Object.assign(r,{Cookie:uf||""}),n=n||"post",(async()=>{let a;if(n==="get"?a=await _e.get(`${hAe}/${e}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&Xr.toast("UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})):a=await _e.post(`${hAe}/${e}`,t,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&Xr.toast("UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),o.response||{status:500,data:{}})),a.headers?.["set-cookie"]){let o=a.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&uf.match(/__puus=([^;]+)/)?.[1]!==o[1]&&(uf=uf.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Pb.push(`/uc/${gAe}`,uf))}return a.status===429&&(i||3)>0?(await la(1e3),await cf(e,t,r,n,(i||3)-1)):a.data||{}})()}async function rxt(){let e=await cf(`file/sort?${Up}&pdir_fid=${Ob}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data?.list?.length>0){let t=e.data.list.map(r=>cf(`file/delete?${Up}`,{action_type:2,filelist:[r.fid],exclude_fids:[]}));await Promise.all(t)}}async function k9r(e){if(Ob){e&&await rxt();return}let t=await cf(`file/sort?${Up}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data?.list){for(let r of t.data.list)if(r.file_name===txt){Ob=r.fid,await rxt();break}}if(!Ob){let r=await cf(`file?${Up}`,{pdir_fid:"0",file_name:txt,dir_path:"",dir_init_lock:!1});r.data?.fid&&(Ob=r.data.fid)}}var Ej=new Map;async function yAe(e){let t=`${e.shareId}_${e.sharePwd||""}`,r=ext.get(t);if(r)return r;if(Ej.has(t))return await Ej.get(t);let n=(async()=>{try{let i=await cf(`share/sharepage/token?${Up}`,{pwd_id:e.shareId,passcode:e.sharePwd||""});return i.data?.stoken?(ext.set(t,i.data),i.data):null}finally{Ej.delete(t)}})();return Ej.set(t,n),await n}async function O9r(e){let t=typeof e=="string"?ixt(e):e;if(!t)return[];let r=await yAe(t);if(!r)return[];let n=[],i=async(s,a,o="",u=1)=>{let l=await cf(`share/sharepage/detail?${Up}&pwd_id=${s}&stoken=${encodeURIComponent(r.stoken)}&pdir_fid=${a}&force=0&_page=${u}&_size=100&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!l.data)return;let d=l.data.list;if(!d)return;let f=[],p=[],h=[];for(let g of d)g.dir===!0?f.push({item:g,path:o+(o?"/":"")+g.file_name}):g.file===!0&&g.obj_category==="video"?(g.stoken=r.stoken,p.push(g)):g.file===!0&&ss(g.file_name)&&h.push(g);for(let g of p){let v=as(g.file_name,h,_=>_.file_name),A=v?.share_fid_token||v?.fid_token||"";v?.fid&&A&&(g.subtitle={fid:v.fid,share_fid_token:A,ext:kI(v.file_name)})}let m=ji(p);n.push(...m),ui(s,g.item.fid,g.path));await Promise.all(y)};return await i(t.shareId,t.folderId,""),n}var Vy=new Map;async function axt(e,t,r,n,i){if(await k9r(i),i&&Vy.clear(),!Ob)return null;let s=t;if(!s&&(s=(await yAe({shareId:e,sharePwd:""}))?.stoken||"",!s))return null;let a=async u=>await cf(`share/sharepage/save?${Up}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:Ob,pwd_id:e,stoken:u,pdir_fid:"0",scene:"link"}),o=await a(s);if(!o?.data?.task_id){let c=(await yAe({shareId:e,sharePwd:""}))?.stoken||"";if(!c)return!1;o=await a(c)}if(o.data?.task_id){let u=0;for(;u<=5;){let c=await cf(`task?${Up}&task_id=${o.data.task_id}&retry_index=${u}`,{},{},"get");if(c.data?.save_as?.save_as_top_fids?.length>0)return c.data.save_as.save_as_top_fids[0];u++,await la(1e3)}}return!1}async function oxt(e,t,r,n){if(!Vy.has(r)){let s=await axt(e,t,r,n,!0);if(!s)return null;Vy.set(r,s)}return(await cf(`file/v2/play?${Up}`,{fid:Vy.get(r),resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"})).data?.video_list||null}async function nxt(e,t,r,n,i){if(!Vy.has(r)){let u=await axt(e,t,r,n,i);if(!u)return null;Vy.set(r,u)}let s=await Pb.getObjectDefault("/uc",{}),a=s[vAe]||(mAe?s[AAe]||mAe:""),o=s[D9r]||s[sxt];if(a){let u=Math.floor(Date.now()/1e3).toString()+"000",c=wP(u),l=Sj("GET","/file",u,us.signKey),d={method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:c,access_token:a,app_ver:us.appVer,device_id:Bc.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:us.channel,method:"streaming",group_by:"source",fid:Vy.get(r),resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":u,"x-pan-token":l,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":us.clientID},timeout:15e3};try{let f=await Ee.request(d);if(f.status===200){let p=f.data.data?.video_info?.filter(h=>h.accessable)?.[0];if(p)return p.download_url=p.url,p}}catch{}}{let u=`file/download?${Up}`;return o&&(u+=`&ut=${o}`),(await cf(u,{fids:[Vy.get(r)]})).data?.[0]||null}return null}async function uxt(e,t){if(t&&await bAe(t),await tSt(e)){let r=ixt(e);if(r){let n=await O9r(r);if(n?.length>0){let i=await getPanName("uc"),s=n.map(a=>({vod_id:An([r.shareId,a.stoken,a.fid,a.share_fid_token,a.subtitle?.fid||"",a.subtitle?.share_fid_token||"",a.subtitle?.ext||""],{structured:!0}),vod_name:a.file_name,vod_size:a.size}));return pa(i,s)}}}return[]}var _Ae=new Map,pAe=new Map;async function cxt(e,t){try{await bAe(e);let r=e.params.site,n=e.params.what,i=e.params.shareId,s=e.params.fileId;if(r!=="uc")return;let a=fi(s,{fieldOrder:["stoken","fid","shareFidToken"]}),o=e.params.flag,u=of.default.enc.Hex.stringify(of.default.MD5(e.server.config.uc.cookie)).toString(),c=await e.server.db.getObjectDefault(`/uc/settings/${u}`,{chunkSize:512*1024,poolSize:4,useMultithread:!0});if(n==="trans"){let l=_Ae.get(a.fid);l||(l=(await oxt(i,decodeURIComponent(a.stoken),a.fid,a.shareFidToken))?.filter(f=>f.accessable)||[],_Ae.set(a.fid,l));let d=l.find(f=>f.resolution.toLowerCase()===o);if(d?.video_info?.url){t.redirect(d.video_info.url);return}}else{if(o==="subt"){let d=await nxt(i,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,!1);if(!d?.download_url){t.sent||t.code(404).send({error:"subtitle not found"});return}let f=await P9r(d.download_url);if(!f){t.sent||t.code(502).send({error:"subtitle fetch failed"});return}let p=f;if(String(e.params.end||"").toLowerCase().endsWith(".srt")&&L9r(f)){let y=Jq(f.toString("utf8"));p=Buffer.from(y,"utf8")}let m=M9r(p,e.params.end);return t.code(200).headers({"content-type":m,"content-length":String(p.length),"cache-control":"no-store"}),p}let l=pAe.get(a.fid);if(l||(l=await nxt(i,decodeURIComponent(a.stoken),a.fid,a.shareFidToken,o==="down"),l&&pAe.set(a.fid,l)),l?.download_url){let d=await Pb.getObjectDefault("/uc",{}),f=String(e.server?.config?.uc?.token||"");if(!!(d[vAe]||f)||!c.useMultithread){t.redirect(l.download_url);return}let h=l.size;try{return await Bp(e,t,l.download_url,a.fid,{Cookie:uf,...wj},{chunkSize:c.chunkSize,poolSize:c.poolSize,timeout:1e3*10},h,!0)}catch(m){console.error("[uc proxy] chunkStream error, clearing cache:",m.message),pAe.delete(a.fid),t.sent||t.code(503).send({error:"stream error, please retry"})}}}}catch(r){console.error("[uc proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}async function lxt(e,t){await bAe(e);let r=e.body.flag,n=e.body.id;if(r.startsWith(await getPanName("uc"))){let{shareId:i,stoken:s,fid:a,shareFidToken:o,subtitleFid:u="",subtitleShareFidToken:c=""}=fi(n,{fieldOrder:["shareId","stoken","fid","shareFidToken","subtitleFid","subtitleShareFidToken","subtitleExt"]}),l=(await oxt(i,s,a,o))?.filter(_=>_.accessable)||[];_Ae.set(a,l);let d=await Pb.getObjectDefault("/uc",{}),f=d[vAe]||d[AAe],p=encodeURIComponent(An([s,a,o],{structured:!0})),h=[],m=Ju(e,"uc","\u4EE3\u7406","down",i,p,".bin"),y=Ju(e,"uc","\u539F\u753B","redirect",i,p,".bin");f?h.push(...y,...m):h.push(...m,...y);let g=[],v={};if(f||(v.header={Cookie:uf,...wj}),u){let _="srt",E=encodeURIComponent(An([s,u,c,_],{structured:!0}));g.push(Lp(e,"uc",i,E,`.${_}`,{name:"\u5916\u6302\u5B57\u5E55",format:_}))}let A={"4k":"\u8D85\u6E05","2k":"\u84DD\u5149",super:"\u9AD8\u6E05",high:"\u6807\u6E05",low:"\u666E\u753B",normal:"\u6781\u901F"};return l.forEach(_=>{let E=A[_.resolution]||_.resolution;h.push(E,PI(e,"uc",_.resolution.toLowerCase(),i,p,".mp4"))}),su({parse:0,urls:h,subtitles:g,extra:v})}return Fa("UC \u7F51\u76D8\u64AD\u653E\u53C2\u6570\u65E0\u6548")}async function P9r(e){if(!e)return null;let t={Cookie:uf,...wj};try{let r=await Ee.get(e,{headers:t,responseType:"arraybuffer",maxRedirects:0,timeout:2e4,validateStatus:a=>a>=200&&a<400});if(r.status===200&&r.data)return Buffer.from(r.data);let n=r.headers?.location;if(!n)return null;let i=new URL(n,e).toString(),s=await Ee.get(i,{headers:t,responseType:"arraybuffer",timeout:3e4,validateStatus:a=>a===200});return s.data?Buffer.from(s.data):null}catch{return null}}function M9r(e,t=""){let r=String(t||"").toLowerCase();if(r.endsWith(".ass")||r.endsWith(".ssa"))return"text/x-ssa; charset=utf-8";if(r.endsWith(".vtt"))return"text/vtt; charset=utf-8";if(r.endsWith(".srt"))return"application/x-subrip; charset=utf-8";let n=Buffer.from(e).subarray(0,4096).toString("utf8").toLowerCase();return n.includes("[script info]")?"text/x-ssa; charset=utf-8":n.includes("webvtt")?"text/vtt; charset=utf-8":n.includes("-->")?"application/x-subrip; charset=utf-8":"text/plain; charset=utf-8"}function L9r(e){let t=Buffer.from(e).subarray(0,8192).toString("utf8").toLowerCase();return t.includes("[script info]")||t.includes("[events]")||t.includes("dialogue:")}Kt();var xAe=Se(di(),1),bxt=Se(Kne(),1);var Yy="https://xluser-ssl.xunlei.com/",Hp="https://api-pan.xunlei.com/",XI="Xp6vsxz_7IYVw2BB",Fl="XW-G4v1H72tgfJym",Ext="Qbaferw2knfQKqxa25EYJGtZ2_6755CMwzXBN3ctW54",CAe="Xqp0kJBXWhwaTpB6",zI="1bf91caf40093318e8040916eb7ad16a",JI="652c6bb3cacdb4b80e852dfc3cb3cca4",Sxt="Xp6vsy4tN9toTVdMSpomVdXpRmES",Mb="8.31.0.9726",wxt="3.1.5",$9r="3.1.1",Rj="com.xunlei.downloadprovider",F9r="ThunderPanPlugin",U9r="1.ee2cef5f061a7cdf4374df81b370d2ec",q9r="1.0eada0deeeaac52a6376f2e167fa9f29",Dj="40",j9r="34a062aaa22f906fca4fefe9fb3a3021",Ixt="301",Ij="10",H9r="512000",xxt=`ANDROID-${Rj}`,Lb="ANDROID-com.xunlei.downloadprovider/8.31.0.9726 netWorkType/5G appid/40 deviceName/Xiaomi_M2004j7ac deviceModel/M2004J7AC OSVersion/12 protocolVersion/301 platformVersion/10 sdkVersion/512000 Oauth2Client/0.9 (Linux 4_14_186-perf-gddfs8vbb238b) (JAVA 0)",K9r="android-ok-http-client/xl-acc-sdk/version-5.0.12.512000",V9r="Dalvik/2.1.0 (Linux; U; Android 12; M2004J7AC Build/SP1A.210812.016)",ZI="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",kj="thunder/12.4.4.3740 Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.215 XDASKernel/22.3.27 Safari/537.36";var Gy=XI,Cj=Sxt,Cxt=Lb,YI=V9r,Txt="pan.xunlei.com",Nxt="1.92.9",SAe=CAe,z9r=Txt,Q9r=["9uJNVj/wLmdwKrJaVj/omlQ","Oz64Lp0GigmChHMf/6TNfxx7O9PyopcczMsnf","Eb+L7Ce+Ej48u","jKY0","ASr0zCl6v8W4aidjPK5KHd1Lq3t+vBFf41dqv5+fnOd","wQlozdg6r1qxh0eRmt3QgNXOvSZO6q/GXK","gmirk+ciAvIgA/cxUUCema47jr/YToixTT+Q6O","5IiCoM9B1/788ntB","P07JH0h6qoM6TSUAK2aL9T5s2QBVeY9JWvalf","+oK0AN"],dxt="CatVodOpen",G9r="xlaccsdk01://xunlei.com/callback?state=harbor",Y9r=["QG3/GhopO+5+T","1Sv94+ANND3lDmmw","q2eTxRva8b3B5d","m2","VIc5CZRBMU71ENfbOh0+RgWIuzLy","66M8Wpw6nkBEekOtL6e","N0rucK7S8W/vrRkfPto5urIJJS8dVY0S","oLAR7pdUVUAp9xcuHWzrU057aUhdCJrt","6lxcykBSsfI//GR9","r50cz+1I4gbU/fk8","tdwzrTc4SNFC4marNGTgf05flC85A","qvNVUDFjfsOMqvdi2gB8gCvtaJAIqxXs"],W9r=/https?:\/\/pan\.xunlei\.com\/s\/([^?#/]+)(?:\?[^#]*?(?:pwd|passcode|password)=([^&#]+))?/i,X9r=new Set(["mp4","mkv","avi","mov","flv","wmv","m3u8","ts","rmvb","webm","m4v","mpg","mpeg","3gp","iso","rm","f4v","vob","asf","divx"]),J9r=60,Z9r=60*1e3,Fti=64*1024,IP=null,QI={},fxt=!1,pi={username:"",password:""},$c=null,Tj=new Map,Nj=new Map,VI=[],pxt=200,qe={get(e){return QI[e]||""},set(e,t){return QI[e]=t||"",IP?IP.push(`/xunlei/${e}`,QI[e]):Promise.resolve()}};async function WI(e={}){for(let[t,r]of Object.entries(e))await qe.set(t,r)}function eHr(e={}){VI.push({ts:new Date().toISOString(),...e}),VI.length>pxt&&VI.splice(0,VI.length-pxt)}function Rxt(){return VI.slice()}function Dxt(){VI.length=0}async function a0(e){if(fxt&&IP)return;IP=e.server.db,QI=await IP.getObjectDefault("/xunlei",{});let t=e.server.config?.xunlei||{username:"",password:""};pi={username:QI.username||t.username||"",password:QI.password||t.password||""},fxt=!0}function kxt(){$c=null,Tj.clear()}function Oxt(e=""){try{let t=new URL(String(e||"").trim()),r=Number(t.searchParams.get("e")||0);return!Number.isFinite(r)||r<=0?0:r*1e3}catch{return 0}}function tHr(e=""){let t=Nj.get(e);if(!t)return null;if(typeof t=="string"){let r={url:t,expiresAt:Oxt(t)};return Nj.set(e,r),r}return t?.url?t:null}function EAe(e=""){Nj.delete(e)}function rHr(e="",t=""){let r=String(t||"").trim();!e||!r||Nj.set(e,{url:r,expiresAt:Oxt(r)})}function nHr(e){let t=Number(e?.expiresAt||0);return t>0&&t<=Date.now()+Z9r}async function hxt(e="",t={}){let r=String(e||"").trim();if(!r)return{ok:!1,status:0};try{let n=await _e.get(r,{responseType:"stream",timeout:1e4,headers:{Range:"bytes=0-0",...t},validateStatus:()=>!0});return n?.data?.destroy?.(),{ok:n.status===200||n.status===206,status:Number(n.status||0)}}catch(n){return n?.response?.data?.destroy?.(),{ok:!1,status:Number(n?.response?.status||0),message:n?.message||String(n)}}}async function CP(e,{username:t="",password:r=""}={}){await a0(e);let n={username:String(t||"").trim(),password:String(r||"").trim()},i=n.username!==pi.username||n.password!==pi.password;pi={...n},await WI({username:pi.username,password:pi.password}),i&&await Pxt(!0)}async function Pxt(e=!1,t={}){let r=!!t.preserveReviewSmsToken;await WI({auth:"",appAuth:"",refreshToken:"",userId:"",...r?{}:{reviewSmsToken:"",reviewSmsExpiresAt:""}}),e&&await WI({creditKey:"",reviewUserId:"",reviewMainHost:"",reviewMobile:"",reviewUrl:"",reviewQuery:"",reviewCookie:"",reviewCsrfToken:"",reviewActiveHost:""}),kxt()}function jp(e){if(!e)return!1;let t=e.lastIndexOf(".");if(t<0)return!1;let r=e.slice(t+1).toLowerCase();return X9r.has(r)}function iHr(e=""){let t=String(e||"").lastIndexOf(".");if(t<0)return"application/octet-stream";switch(e.slice(t+1).toLowerCase()){case"mkv":return"video/x-matroska";case"mp4":case"m4v":case"mov":return"video/mp4";case"webm":return"video/webm";case"avi":return"video/x-msvideo";case"flv":return"video/x-flv";case"wmv":case"asf":return"video/x-ms-wmv";case"ts":return"video/mp2t";case"m3u8":return"application/vnd.apple.mpegurl";case"mpg":case"mpeg":case"vob":return"video/mpeg";case"3gp":return"video/3gpp";default:return"application/octet-stream"}}function Mxt(e){try{let r=(e.includes(" ")?e.split(" ")[1]:e).split(".");if(r.length<2)return null;let n=r[1].replace(/-/g,"+").replace(/_/g,"/"),i=Buffer.from(n,"base64").toString("utf8");return JSON.parse(i)}catch{return null}}function sHr(e){if(!e)return!1;let t=Mxt(e);if(!t?.exp)return!1;let r=Math.floor(Date.now()/1e3);return t.exp>r+J9r}function Pi(e=""){return String(Mxt(e)?.aud||"").trim()}function aHr(e=""){return sHr(e)&&Pi(e)===Gy}function zy(e=""){return aHr(e)}function Oj(e){return xAe.default.MD5(e).toString()}function Pj(e){return typeof e=="string"&&e.includes("@")}function oHr(e){let t=String(e||"").trim();if(!t)return"";if(t.startsWith("+"))return t;let r=t.replace(/\D/g,"");return r?r.length===11&&!r.startsWith("86")?`+86 ${r}`:r.startsWith("86")?`+${r}`:`+${r}`:t}function Ul(e){let t=String(e||"").trim();if(!t)return{account:"",captchaMeta:{}};if(Pj(t))return{account:t,captchaMeta:{email:t}};let r=oHr(t);return{account:r,captchaMeta:{phone_number:r}}}function uHr(e){let t=String(e||"").trim();if(!t||Pj(t))return t;let r=t.replace(/\D/g,"");return r.length===13&&r.startsWith("86")?r.slice(2):r||t}function Qy(e){let t=e?.response?.data;return t?t?.details?.find(n=>n?.message)?.message||t.error_description||t.message||e?.message||String(e):e?.message||String(e)}function _o(e,t={}){let r=new Error(e);return r.data=t,r}function mn(e,t={}){try{let r=JSON.stringify(t,null,2);console.error(`[\u8FC5\u96F7\u8C03\u8BD5] ${e}: ${r}`)}catch{console.error(`[\u8FC5\u96F7\u8C03\u8BD5] ${e}:`,t)}}function qp(e){return{message:e?.message||String(e),response:e?.response?.data||e?.data?.response||e?.data||null}}function Kp(){let e=String(pi.username||"").trim(),t=String(pi.password||"").trim(),r=e||t?`${e}${t}`:"CatVodOpenXunlei";return Oj(r)}function Lxt(e=Kp(),t=Rj){return`div101.${e}${Oj(xAe.default.SHA1(`${e}${t}${Dj}${j9r}`).toString())}`}function cHr(e=Kp()){let t=String(Date.now()),r=`${XI}${Mb}${Rj}${e}${t}`;for(let n of Q9r)r=Oj(r+n);return{timestamp:t,sign:`1.${r}`}}function lHr(e=zI){let t=String(Date.now()),r=`${SAe}${Nxt}${Txt}${e}${t}`;for(let n of Y9r)r=Oj(r+n);return{timestamp:t,sign:`1.${r}`}}function Bxt(e=""){return Pi(e)===Fl?{kind:"web",clientId:Fl,deviceId:JI,userAgent:ZI,clientVersionHeader:wxt}:{kind:"app",clientId:XI,deviceId:Kp(),userAgent:Lb,clientVersionHeader:Mb}}function TAe({authorization:e="",captchaToken:t="",contentType:r="application/json",userAgent:n,acceptLanguage:i="zh-cn",clientId:s,deviceId:a,clientVersion:o,extra:u={}}={}){let c=e?Bxt(e):null,l=s||c?.clientId||XI,d=a||c?.deviceId||Kp(),f=n||c?.userAgent||Lb,p=o!==void 0?o:c?.clientVersionHeader??Mb,h={"User-Agent":f,Accept:"application/json;charset=UTF-8","x-client-id":l,"x-device-id":d,...u};return p&&(h["x-client-version"]=p),r&&(h["Content-Type"]=r),i&&(h["accept-language"]=i),e&&(h.authorization=e),t&&(h["x-captcha-token"]=t),h}function ex({authorization:e="",captchaToken:t="",contentType:r="application/json",userAgent:n,acceptLanguage:i,clientVersion:s,extra:a={}}={}){let o=e?Bxt(e):null,u=o?.clientId||Gy,c=o?.deviceId||Kp(),l=n||o?.userAgent||Cxt,d=s!==void 0?s:o?.clientVersionHeader??Mb,f=i!==void 0?i:o?.kind==="web"?"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6":"zh-cn",p={"User-Agent":l,"x-client-id":u,"x-device-id":c,...a};return d&&(p["x-client-version"]=d),r&&(p["Content-Type"]=r),f&&(p["accept-language"]=f),e&&(p.authorization=e),t&&(p["x-captcha-token"]=t),p}function wAe(){return String(qe.get("reviewActiveHost")||qe.get("reviewMainHost")||"xluser-ssl.xunlei.com").split(",").find(Boolean)||"xluser-ssl.xunlei.com"}function dHr(){return`https://${wAe()}`}function fHr(){return String(qe.get("reviewMainHost")||"xluser-ssl.xunlei.com").split(",").map(e=>String(e||"").trim()).filter(Boolean)}function $xt(){return String(qe.get("reviewUrl")||"").trim()}function pHr(){return $xt()||"https://i.xunlei.com/xlcaptcha/vertifyPhone.html"}function hHr(e=[]){return(Array.isArray(e)?e:[e]).map(t=>String(t||"").split(";")[0]?.trim()).filter(Boolean).join("; ")}function mxt(e=[]){let t=Array.isArray(e)?e:[e],r={};for(let n of t){let i=String(n||"").split(";")[0]?.trim();if(!i)continue;let s=i.indexOf("=");if(s<=0)continue;let a=i.slice(0,s).trim(),o=i.slice(s+1).trim();a&&(r[a]=decodeURIComponent(o||""))}return r}function mHr(...e){return Object.assign({},...e.filter(t=>t&&typeof t=="object"))}function gxt(e={}){return Object.entries(e).map(([t,r])=>`${t}=${r}`).join("; ")}function Fxt(e="",t=""){if(!e||!t)return"";let r=new RegExp(`(?:^|;\\s*)${t}=([^;]*)`),n=String(e).match(r);return n?decodeURIComponent(n[1]):""}function Uxt(){return String(qe.get("reviewCookie")||"").trim()}function gHr(){return String(qe.get("reviewCsrfToken")||"").trim()}function qxt(){try{let e=String(qe.get("reviewQuery")||"").trim();return e?JSON.parse(e):{}}catch{return{}}}function xP(){return{creditKey:String(qe.get("creditKey")||"").trim(),reviewUrl:String(qe.get("reviewUrl")||"").trim(),reviewQuery:String(qe.get("reviewQuery")||"").trim(),reviewMainHost:String(qe.get("reviewMainHost")||"").trim(),reviewUserId:String(qe.get("reviewUserId")||"").trim(),reviewMobile:String(qe.get("reviewMobile")||"").trim(),reviewActiveHost:String(qe.get("reviewActiveHost")||"").trim(),reviewCookie:String(qe.get("reviewCookie")||"").trim(),reviewCsrfToken:String(qe.get("reviewCsrfToken")||"").trim(),reviewSmsToken:String(qe.get("reviewSmsToken")||"").trim(),reviewSmsExpiresAt:String(qe.get("reviewSmsExpiresAt")||"").trim()}}function yHr(){let e=xP();return!!(e.creditKey&&(e.reviewUrl||e.reviewMainHost))}async function jxt(e,t={}){!t||typeof t!="object"||await WI({creditKey:String(t.creditKey||"").trim(),reviewUrl:String(t.reviewUrl||"").trim(),reviewQuery:String(t.reviewQuery||"").trim(),reviewMainHost:String(t.reviewMainHost||"").trim(),reviewUserId:String(t.reviewUserId||"").trim(),reviewMobile:String(t.reviewMobile||"").trim(),reviewActiveHost:String(t.reviewActiveHost||"").trim(),reviewCookie:String(t.reviewCookie||"").trim(),reviewCsrfToken:String(t.reviewCsrfToken||"").trim(),reviewSmsToken:String(t.reviewSmsToken||"").trim(),reviewSmsExpiresAt:String(t.reviewSmsExpiresAt||"").trim()})}function _Hr(e=""){let t=String(e||"").replace(/\D/g,"");return t.length<7?t:`${t.slice(0,3)}****${t.slice(-4)}`}function AHr(e="",t=""){if(t&&qe.set("creditKey",t),!!e)try{let r=new URL(e);qe.set("reviewUrl",e),qe.set("reviewQuery",JSON.stringify(Object.fromEntries(r.searchParams.entries())));let n=r.searchParams.get("mainHost")||"",i=r.searchParams.get("userID")||"",s=r.searchParams.get("mobile")||"";n&&qe.set("reviewMainHost",n),i&&qe.set("reviewUserId",i),s&&qe.set("reviewMobile",s)}catch{}}function Mj(e=""){let t=String(e||"").trim();if(t){qe.set("creditKey",t);try{let r=String(qe.get("reviewUrl")||"").trim();if(r){let n=new URL(r);n.searchParams.set("creditkey",t),qe.set("reviewUrl",n.toString()),qe.set("reviewQuery",JSON.stringify(Object.fromEntries(n.searchParams.entries())));return}}catch{}try{let r=qxt();Object.keys(r).length>0&&(r.creditkey=t,qe.set("reviewQuery",JSON.stringify(r)))}catch{}}}function Hxt(e={}){let t=Ul(pi.username).account,r=qxt(),n=String(r.platformVersion||Ij||"").trim();return{appid:r.appid||Dj,appName:r.appName||xxt,clientVersion:r.clientVersion||Mb,event:r.event||"login3",platformVersion:n||Ij,protocolVersion:r.protocolVersion||Ixt,providerName:r.providerName||"NONE",OSVersion:r.OSVersion||"NONE",deviceName:r.deviceName||"NONE",deviceModel:r.deviceModel||"NONE",netWorkType:r.netWorkType||"NONE",userID:r.userID||qe.get("reviewUserId")||"",mobile:r.mobile||qe.get("reviewMobile")||_Hr(t),creditkey:qe.get("creditKey")||"",smsEvent:r.smsEvent||"34",trigger:r.trigger||"0",privateStyle:r.privateStyle||"",deviceid:Kp(),devicesign:Lxt(),fromPlatformVersion:n||Ij,sdkVersion:"1.0",hl:r.hl||"",timestamp:Date.now(),...e}}async function vHr(e,t={},r={}){let n=`jsonp_${Date.now()}_${Math.random().toString(36).slice(2,10)}`,i=await _e.get(e,{params:{...t,callback:n},headers:r,timeout:15e3,responseType:"text",transformResponse:[o=>o]}),a=String(i.data||"").trim().match(/^[^(]+\(([\s\S]*)\)\s*;?\s*$/);return a?JSON.parse(a[1]):typeof i.data=="string"?JSON.parse(i.data):i.data}async function bHr(e,t={},r={}){let n=new bxt.default;for(let[f,p]of Object.entries(t))n.append(f,p==null?"":String(p));let i=mHr(mxt(Uxt().split(/,(?=[^;]+?=)/))),s=e,a="post",o="https://i.xunlei.com/xlcaptcha/vertifyPhone.html",u=n,c=null,l="";for(let f=0;f<5;f++){let p=gxt(i),h={Referer:o,"User-Agent":Lb,...a==="post"?n.getHeaders():{},...p?{Cookie:p}:{},...r};c=a==="post"?await _e.post(s,u,{headers:h,timeout:15e3,maxRedirects:0,validateStatus:()=>!0,responseType:"text",transformResponse:[g=>g]}):await _e.get(s,{headers:h,timeout:15e3,maxRedirects:0,validateStatus:()=>!0,responseType:"text",transformResponse:[g=>g]}),Object.assign(i,mxt(c?.headers?.["set-cookie"]||[])),l=String(c?.data||"").trim();let m=gxt(i);if(m){qe.set("reviewCookie",m);let g=Fxt(m,"csrf_token");g&&qe.set("reviewCsrfToken",g)}let y=String(c?.headers?.location||"").trim();if(!y)break;s=/^https?:\/\//i.test(y)?y:new URL(y,s).toString(),o=s,a="get",u=void 0}let d=l.match(/\{[\s\S]*?\}/);return d?{...JSON.parse(d[0]),...i,response:l}:{...i,response:l}}async function NAe(){let e=$xt();if(e)try{let t=await _e.get(e,{headers:{Referer:"https://i.xunlei.com/xlcaptcha/vertifyPhone.html","User-Agent":Lb},timeout:15e3,maxRedirects:5}),r=hHr(t?.headers?.["set-cookie"]||[]);if(r){qe.set("reviewCookie",r);let n=Fxt(r,"csrf_token");n&&qe.set("reviewCsrfToken",n)}}catch{}}function Kxt(e={}){let t=Uxt();return{Referer:pHr(),"User-Agent":Lb,...t?{Cookie:t}:{},...e}}function Vxt(e={}){let t=gHr();return{...t?{csrf_token:t}:{},...e}}function EHr(e=[]){if(!e.length)return null;let t=e.find(i=>String(i?.payload?.errorCode)==="0"&&i?.payload?.token);if(t)return t;let r=e.find(i=>["51","28"].includes(String(i?.payload?.errorCode)));if(r)return r;let n=e.find(i=>["33","12","13"].includes(String(i?.payload?.errorCode)));return n||e[0]}async function zxt(e,t={},r={}){let n=fHr(),i=[];for(let a of n.length?n:[wAe()]){let o=await vHr(`https://${a}${e}`,Vxt(t),Kxt(r));if(i.push({host:a,payload:o}),String(o?.errorCode)==="0"&&o?.token)return qe.set("reviewActiveHost",a),{host:a,payload:o,attempts:i}}let s=EHr(i)||{host:wAe(),payload:{}};return s?.host&&qe.set("reviewActiveHost",s.host),{host:s.host,payload:s.payload,attempts:i}}async function Fc(e,t,r={},n=2){try{let i=await _e.post(e,t,{headers:r,timeout:15e3});return i.status===429&&n>0?(await la(1e3),await Fc(e,t,r,n-1)):i}catch(i){if(i?.response?.status===429&&n>0)return await la(1e3),await Fc(e,t,r,n-1);throw i}}async function s0(e,t={},r=2){try{let n=await _e.get(e,{headers:t,timeout:15e3});return n.status===429&&r>0?(await la(1e3),await s0(e,t,r-1)):n}catch(n){if(n?.response?.status===429&&r>0)return await la(1e3),await s0(e,t,r-1);throw n}}async function Qxt(e="GET:drive/v1/files",t={}){let r=Kp(),{timestamp:n,sign:i}=cHr(r),s={client_id:XI,action:e,device_id:r,captcha_token:"",meta:{client_version:Mb,package_name:Rj,timestamp:n,captcha_sign:i,user_id:qe.get("userId")||"",...t},redirect_uri:G9r},a=TAe();try{let u=(await Fc(`${Yy}v1/shield/captcha/init`,s,a)).data||{};return{token:u.captcha_token||"",url:u.url||"",expiresIn:u.expires_in||0,raw:u}}catch(o){throw mn("getAppActionCaptchaInfo error",{action:e,message:o?.message||String(o),response:o?.response?.data||null,data:s}),o}}async function SHr(e){let t=Ul(e);return t.account?await Qxt("POST:/v1/auth/signin/token",t.captchaMeta):{token:"",url:"",expiresIn:0,raw:{}}}async function wHr(e){let t=Ul(e);if(!t.account)return{token:"",url:"",expiresIn:0,raw:{}};let r={client_id:Fl,action:"POST:/v1/auth/signin",device_id:JI,captcha_token:"",meta:t.captchaMeta},i=(await Fc(`${Yy}v1/shield/captcha/init`,r,{"User-Agent":ZI,"Content-Type":"application/json"})).data||{};return{token:i.captcha_token||"",url:i.url||"",expiresIn:i.expires_in||0,raw:i}}async function Gxt(){await NAe();let{payload:e}=await zxt("/xluser.core.login/v3/sendsms",Hxt()),t=DAe(Ul(pi.username).account);if(["28","51"].includes(String(e?.errorCode||"").trim())&&t?.verificationId)return{...e,token:t.verificationId,reviewState:t.reviewState||xP(),reused:!0};if(String(e?.errorCode)!=="0"||!e?.token){let n=e?.reviewurl?`https://i.xunlei.com${e.reviewurl}`:"";throw _o(e?.errorDesc||e?.error_description||e?.error||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",{verifyUrl:n,response:e})}e.creditkey&&Mj(e.creditkey);let r=Date.now()+Number(e.expires_in||e.expiresIn||300)*1e3;return e.token&&(await qe.set("reviewSmsToken",e.token),await qe.set("reviewSmsExpiresAt",String(r))),{...e,expiresAt:r,reviewState:{...xP(),creditKey:String(e.creditkey||qe.get("creditKey")||"").trim(),reviewSmsToken:String(e.token||"").trim(),reviewSmsExpiresAt:String(r)}}}function RAe(e,t={}){let r=Number(t.expiresAt||qe.get("reviewSmsExpiresAt")||0);return{phone:e,verificationId:t.token||"",expiresAt:r,expiresIn:r>Date.now()?Math.max(0,Math.ceil((r-Date.now())/1e3)):Number(t.expiresIn||300),selectedChannel:"sms",remaining:null,reviewState:t.reviewState||xP()}}function DAe(e=""){let t=String(qe.get("reviewSmsToken")||"").trim(),r=Number(qe.get("reviewSmsExpiresAt")||0);if(!t||r>0&&r<=Date.now())return null;let n=xP();return n.creditKey&&(n.reviewUrl||n.reviewMainHost)?RAe(e,{token:t,expiresAt:r,reviewState:n}):null}function IHr(e){let t=String(e?.data?.response?.errorCode||"").trim();return t==="12"||t==="13"}async function xHr(e,t={}){if(!!!t.forceSend){let i=DAe(e);if(i)return i}let n=await Gxt();return RAe(e,n)}async function CHr(e,t){await NAe();let r=await bHr(`${dHr()}/xluser.core.login/v3/checksms`,Vxt(Hxt({token:t,smsCode:String(e||"").trim()})),Kxt());if(mn("checksms payload",r),(r?.creditkey||r?.creditKey)&&Mj(r.creditkey||r.creditKey),!(String(r?.blogresult||"").trim()==="0"||String(r?.errorCode||"").trim()==="0"||String(r?.error||"").trim().toLowerCase()==="success"))throw _o(r?.msg||r?.errorDesc||"\u9A8C\u8BC1\u7801\u6821\u9A8C\u5931\u8D25",{response:r});let i=String(r?.userid||r?.userID||"").trim();i&&await qe.set("reviewUserId",i);let s=String(r?.securitytoken||r?.securityToken||"").trim();return s&&await qe.set("reviewSecurityToken",s),r}async function THr(e){await NAe();let{payload:t}=await zxt("/credit/v1/report",{deviceid:Kp(),creditkey:qe.get("creditKey")||"",type:"sms",scene:"34",userid:qe.get("reviewUserId")||"",data:e,result:"0",appid:Dj});return Number(t?.code)===200&&t?.creditkey&&Mj(t.creditkey),t}async function kAe(e,t,r=qe.get("creditKey")||""){if(!Ul(e).account)return"";let i=uHr(e),a=(await Fc(`${Yy}xluser.core.login/v3/login`,{protocolVersion:Ixt,sequenceNo:"1000012",platformVersion:Ij,isCompressed:"0",appid:Dj,clientVersion:Mb,peerID:"00000000000000000000000000000000",appName:xxt,sdkVersion:H9r,devicesign:Lxt(),netWorkType:"WIFI",providerName:"NONE",deviceModel:"M2004J7AC",deviceName:"Xiaomi_M2004j7ac",OSVersion:"12",creditkey:r,hl:"zh-CN",userName:i,passWord:t,verifyKey:"",verifyCode:"",isMd5Pwd:"0"},TAe({userAgent:K9r,acceptLanguage:""}))).data||{};if(mn("coreLogin response",{creditKey:r,data:a}),a?.error==="review_panel")throw AHr(a.reviewurl||"",a.creditkey||r),_o(a.error_description||a.errorDesc||"\u9700\u8981\u5B89\u5168\u9A8C\u8BC1",{verifyUrl:a.reviewurl||"",reviewUrl:a.reviewurl||"",creditKey:a.creditkey||r||"",reviewUserId:qe.get("reviewUserId")||"",response:a});if(!a?.sessionID)throw _o(a?.error_description||a?.errorDesc||a?.error||"\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:a});return a.sessionID}async function Yxt(e,t){let r=Ul(e),n=await SHr(r.account);if(!n.token)throw _o("\u83B7\u53D6\u767B\u5F55\u9A8C\u8BC1\u7801\u4EE4\u724C\u5931\u8D25",{verifyUrl:n.url||""});let s=(await Fc(`${Yy}v1/auth/signin/token`,{client_id:XI,client_secret:Sxt,provider:"access_end_point_token",signin_token:t},TAe({captchaToken:n.token}))).data||{};return mn("signInWithSessionToken response",s),s}async function NHr(e,t){let r=Ul(e),n=await wHr(r.account);if(!n.token)throw _o("\u83B7\u53D6\u7F51\u9875\u767B\u5F55\u9A8C\u8BC1\u7801\u4EE4\u724C\u5931\u8D25",{verifyUrl:n.url||"",response:n.raw||null});let s=(await Fc(`${Yy}v1/auth/signin`,{username:r.account,password:t,client_id:Fl},{"User-Agent":ZI,"Content-Type":"application/json","accept-language":"zh-cn","x-captcha-token":n.token,"x-client-id":Fl,"x-device-id":JI})).data||{};return mn("signInWithWebCredentials response",s),s}async function OAe(e={}){if(!(e.token_type&&e.access_token))return"";let t=`${e.token_type} ${e.access_token}`,r=Pi(t);return await WI({auth:t,appAuth:r===Gy?t:"",userId:e.user_id||"",refreshToken:e.refresh_token||"",reviewSmsToken:"",reviewSmsExpiresAt:""}),kxt(),t}function RHr(){return{auth:String(qe.get("auth")||"").trim(),appAuth:String(qe.get("appAuth")||"").trim(),refreshToken:String(qe.get("refreshToken")||"").trim(),userId:String(qe.get("userId")||"").trim()}}function PAe(e="\u8FC5\u96F7\u767B\u5F55\u6001\u672A\u5B8C\u6574\u4FDD\u5B58",t={}){let r=t.requireAppAuth!==!1,n=RHr();if(!(r?n.auth&&n.appAuth&&n.refreshToken&&n.userId:n.auth&&n.refreshToken&&n.userId))throw _o(e,{state:n});return n}async function Lj(e){let t=String(e||qe.get("appAuth")||qe.get("auth")||"").trim();if(!t)throw _o("\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u4E3A\u7A7A");let r=await rx(t,"GET:drive/v1/files"),n=ex({authorization:t,captchaToken:r}),i=new URLSearchParams({parent_id:"",limit:"1",with_audit:"true",thumbnail_size:"SIZE_SMALL"});try{await s0(`${Hp}drive/v1/files?${i.toString()}`,n,0)}catch(s){throw mn("validatePanAuthState error",s?.response?.data||{message:s?.message||""}),_o(Qy(s)||"\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u6821\u9A8C\u5931\u8D25",{response:s?.response?.data||null})}}async function DHr(e){let t=[],r=String(qe.get("creditKey")||"").trim();r&&t.push(r),t.push("");let n=null;for(let i of[...new Set(t)])try{let s=await kAe(e,pi.password,i),a=await Yxt(e,s);if(!await OAe(a))throw _o("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:a});let u=PAe("\u8FC5\u96F7\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93");return await Lj(u.appAuth),u}catch(s){n=s}throw n||_o("\u8FC5\u96F7\u767B\u5F55\u5931\u8D25")}async function MAe(){if(!String(qe.get("refreshToken")||"").trim())return"";try{let t=await GI(Gy,Cj,YI);if(t)return t}catch(t){console.error("[\u8FC5\u96F7] \u5237\u65B0Pan\u8BA4\u8BC1\u5931\u8D25:",Qy(t))}try{let t=await GI(Fl,Ext,kj);t&&await qe.set("auth",t)}catch(t){console.error("[\u8FC5\u96F7] \u5237\u65B0\u7F51\u9875\u767B\u5F55\u8BA4\u8BC1\u5931\u8D25:",Qy(t))}try{let t=await GI(Gy,Cj,YI);if(t)return t}catch(t){console.error("[\u8FC5\u96F7] \u4F7F\u7528\u6700\u65B0\u5237\u65B0\u4EE4\u724C\u91CD\u8BD5Pan\u8BA4\u8BC1\u5931\u8D25:",Qy(t))}return""}async function yxt(e=pi.username,t=pi.password){let r=Ul(e);if(!r.account||!t)return"";try{let n=await Bj(r.account,t);mn("recoverPanAuthWithWebSignin web state",{userId:n.userId,audience:Pi(n.auth),hasRefreshToken:!!n.refreshToken});let i=await MAe(),s=zy(i)?i:zy(n.auth)?n.auth:"";if(!s)throw _o("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6210\u529F\uFF0C\u4F46\u672A\u80FD\u6362\u53D6\u7F51\u76D8\u767B\u5F55\u6001");return await qe.set("appAuth",s),await Lj(s),s}catch(n){return console.error("[\u8FC5\u96F7] \u91CD\u65B0\u7F51\u9875\u767B\u5F55\u6362\u53D6Pan\u8BA4\u8BC1\u5931\u8D25:",Qy(n)),""}}async function kHr(e,t=pi.password){let r=await Bj(e,t);mn("bootstrapPanAuthFromWebSignin web state",{userId:r.userId,audience:Pi(r.auth),hasRefreshToken:!!r.refreshToken});let n=await MAe(),i=zy(n)?n:zy(r.auth)?r.auth:"";if(!i)throw _o("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6210\u529F\uFF0C\u4F46\u672A\u80FD\u6362\u53D6\u7F51\u76D8\u767B\u5F55\u6001");await qe.set("appAuth",i);let s=PAe("\u8FC5\u96F7\u7F51\u76D8\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u6362\u53D6\u7ED3\u679C\u672A\u843D\u5E93");return await Lj(i),{...s,appAuth:i}}async function Bj(e,t=pi.password){let r=await NHr(e,t);if(!await OAe(r))throw _o(Qy({response:{data:r}})||"\u8FC5\u96F7\u767B\u5F55\u5931\u8D25",{response:r});return PAe("\u8FC5\u96F7\u7F51\u9875\u767B\u5F55\u6001\u4E0D\u5B8C\u6574\uFF0C\u767B\u5F55\u7ED3\u679C\u672A\u843D\u5E93",{requireAppAuth:!1})}async function Wxt(e,t,r={}){await a0(e);let n=!!r.forceSend,i=Ul(t);if(!i.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(Pj(i.account))throw new Error("\u9A8C\u8BC1\u7801\u767B\u5F55\u4EC5\u652F\u6301\u624B\u673A\u53F7");if(!pi.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");if(!n){let s=DAe(i.account);if(s)return s}if(yHr())try{return await xHr(i.account,{forceSend:n})}catch(s){if(!IHr(s))throw s;await WI({reviewSmsToken:"",reviewCookie:"",reviewCsrfToken:"",reviewActiveHost:""})}try{throw await kAe(i.account,pi.password),_o("\u5F53\u524D\u8D26\u53F7\u672C\u6B21\u672A\u8FDB\u5165\u77ED\u4FE1\u9A8C\u8BC1\u7801\u6D41\u7A0B\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5")}catch(s){if(s?.data?.verifyUrl||s?.data?.reviewUrl||s?.data?.response?.error==="review_panel"){let a=await Gxt();return RAe(i.account,a)}throw s}}async function Xxt(e,{username:t="",password:r=""}={}){await CP(e,{username:t,password:r});let n=Ul(pi.username);if(!n.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(!pi.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");let i=await Bj(n.account,pi.password);return{userId:i.userId,hasRefreshToken:!!i.refreshToken,audience:Pi(i.auth)}}async function Jxt(e,{username:t="",password:r="",verificationId:n="",verificationCode:i=""}={}){await CP(e,{username:t,password:r});let s=Ul(pi.username);if(!s.account)throw new Error("\u8BF7\u8F93\u5165\u624B\u673A\u53F7");if(Pj(s.account))throw new Error("\u9A8C\u8BC1\u7801\u767B\u5F55\u4EC5\u652F\u6301\u624B\u673A\u53F7");if(!pi.password)throw new Error("\u8BF7\u8F93\u5165\u5BC6\u7801");let a=String(n||"").trim()||String(qe.get("reviewSmsToken")||"").trim();if(!a)throw new Error("\u8BF7\u5148\u53D1\u9001\u9A8C\u8BC1\u7801");if(!String(i||"").trim())throw new Error("\u8BF7\u8F93\u5165\u9A8C\u8BC1\u7801");try{let o=await CHr(String(i||"").trim(),a);if(o?.securitytoken)try{await THr(o.securitytoken)}catch{}(o?.creditkey||o?.creditKey)&&Mj(o.creditkey||o.creditKey);try{let c=await kHr(s.account,pi.password);return{userId:c.userId,hasRefreshToken:!!c.refreshToken}}catch(c){mn("verified web signin fallback",{message:Qy(c),response:c?.response?.data||c?.data?.response||null})}let u=await DHr(s.account);return{userId:u.userId,hasRefreshToken:!!u.refreshToken}}catch(o){await Pxt(!1,{preserveReviewSmsToken:!0});let u=Qy(o);throw _o(u==="\u64CD\u4F5C\u6210\u529F"?"\u77ED\u4FE1\u9A8C\u8BC1\u7801\u5DF2\u6821\u9A8C\uFF0C\u4F46\u8FC5\u96F7\u6CA1\u6709\u8FD4\u56DE\u53EF\u7528\u767B\u5F55\u6001":u,{verifyUrl:o?.data?.verifyUrl||o?.data?.reviewUrl||"",response:o?.data?.response||null})}}async function GI(e,t,r=Lb){let n=qe.get("refreshToken");if(!n)return"";let i={client_id:e,client_secret:t,grant_type:"refresh_token",refresh_token:n},a=(await Fc(`${Yy}v1/auth/token`,i,{"User-Agent":r,"Content-Type":"application/json","x-client-id":e,"x-device-id":e===Fl?JI:Kp()})).data||{};return a.refresh_token&&await qe.set("refreshToken",a.refresh_token),a.token_type&&a.access_token?`${a.token_type} ${a.access_token}`:""}async function OHr(){let e=qe.get("refreshToken");if(!e)return await yxt();if(!e)return"";let t=await MAe();return zy(t)?(await qe.set("appAuth",t),t):await yxt()}async function tx(){let e=qe.get("appAuth");if(zy(e))return mn("getAppAuth cached appAuth",{audience:Pi(e),userId:qe.get("userId")||""}),e;let t=qe.get("auth");if(zy(t))return await qe.set("appAuth",t),mn("getAppAuth promote auth",{audience:Pi(t),userId:qe.get("userId")||""}),t;let r=await OHr();return zy(r)?(await qe.set("appAuth",r),mn("getAppAuth refreshed",{audience:Pi(r),userId:qe.get("userId")||""}),r):""}async function Zxt(e,t){let{timestamp:r,sign:n}=lHr(zI),i={client_id:SAe,action:`${t}:${e}`,device_id:zI,captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:z9r,client_version:Nxt,captcha_sign:n,timestamp:r,user_id:qe.get("userId")||""}},s={"User-Agent":ZI,"Content-Type":"application/json","x-client-id":SAe,"x-device-id":zI};return(await Fc(`${Yy}v1/shield/captcha/init`,i,s)).data?.captcha_token||""}async function eCt(e="GET:drive/v1/files"){let t={client_id:Fl,action:e,device_id:JI,captcha_token:"",meta:{package_name:F9r,client_version:e==="GET:CAPTCHA_TOKEN"?$9r:wxt,captcha_sign:e==="GET:CAPTCHA_TOKEN"?q9r:U9r,timestamp:String(Date.now()),user_id:qe.get("userId")||""}};return(await Fc(`${Yy}v1/shield/captcha/init`,t,{"User-Agent":e==="GET:CAPTCHA_TOKEN"?kj:ZI,"Content-Type":"application/json",...e==="GET:CAPTCHA_TOKEN"?{"Accept-Encoding":"gzip, deflate, br"}:{}})).data?.captcha_token||""}async function tCt(e="GET:drive/v1/files"){return(await Qxt(e)).token||""}async function rx(e="",t="GET:drive/v1/files"){return Pi(e)===Fl?await eCt(t==="GET:CAPTCHA_TOKEN"?"GET:CAPTCHA_TOKEN":t):await tCt(t)}async function PHr(){let e=String(qe.get("appAuth")||qe.get("auth")||"").trim();return Pi(e)===Fl?await eCt("GET:CAPTCHA_TOKEN"):await tCt("GET:CAPTCHA_TOKEN")}function rCt(e){if(!e||typeof e!="string")return null;try{let t=new URL(e);if(!t.hostname.includes("pan.xunlei.com"))return null;let r=t.pathname.split("/").filter(Boolean).pop();if(!r)return null;let n=t.searchParams.get("pwd")||t.searchParams.get("passcode")||t.searchParams.get("password")||"";return{shareId:r,passCode:n}}catch{let r=W9r.exec(e);return r?{shareId:r[1],passCode:r[2]||""}:null}}function nCt(e=[]){return e.map(t=>({id:t.id,name:t.name,parentId:t.parent_id||t.parentId||"",size:t.size||0,isDirectory:!t.mime_type}))}async function MHr(e,t,r=""){let i={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36","accept-language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6","x-captcha-token":await Zxt("/drive/v1/share","GET"),"x-client-id":CAe,"x-device-id":zI},s=`${Hp}drive/v1/share?share_id=${e}&pass_code=${t||""}&limit=100&page_token=${r||""}&thumbnail_size=SIZE_SMALL`,o=(await s0(s,i)).data||{};return{files:nCt(o.files||[]),passCodeToken:o.pass_code_token||"",nextPageToken:o.next_page_token||o.nextPageToken||o.page_token||""}}async function LHr(e,t,r,n=""){let s={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36","accept-language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6","x-captcha-token":await Zxt("/drive/v1/share","GET"),"x-client-id":CAe,"x-device-id":zI},a=`${Hp}drive/v1/share/detail?share_id=${e}&parent_id=${r||""}&pass_code_token=${encodeURIComponent(t||"")}&limit=100&page_token=${n||""}&thumbnail_size=SIZE_SMALL`,u=(await s0(a,s)).data||{};return{files:nCt(u.files||[]),nextPageToken:u.next_page_token||u.nextPageToken||u.page_token||""}}async function BHr(e,t){let r="",n="",i=[];do{let{files:s,passCodeToken:a,nextPageToken:o}=await MHr(e,t,r);a&&(n=a),i.push(...s),r=o}while(r);return{files:i,passCodeToken:n}}async function $Hr(e,t,r){let n="",i=[];do{let{files:s,nextPageToken:a}=await LHr(e,t,r,n);i.push(...s),n=a}while(n);return i}function _xt(e={}){if(!e?.link?.url||e?.is_visible===!1)return Number.NEGATIVE_INFINITY;let t=0;e?.is_origin&&(t+=1e7);let r=String(e?.resolution_name||e?.media_name||"").trim().toUpperCase(),n=r.match(/(\d+(?:\.\d+)?)\s*K/);n&&(t+=Math.round(Number(n[1])*1e6));let i=r.match(/(\d{3,4})\s*P/);i&&(t+=Number(i[1])*1e4),r.includes("\u539F\u753B")&&(t+=1e7),r.includes("\u84DD\u5149")&&(t+=3e6),r.includes("\u8D85\u6E05")&&(t+=108e4),r.includes("\u9AD8\u6E05")&&(t+=72e4),r.includes("\u6807\u6E05")&&(t+=48e4);let s=e?.video||{},a=Number.isFinite(Number(s?.width))?Number(s.width):0,o=Number.isFinite(Number(s?.height))?Number(s.height):0,u=Number.isFinite(Number(s?.bit_rate))?Number(s.bit_rate):0,c=Number.isFinite(Number(s?.frame_rate))?Number(s.frame_rate):0,l=Number.isFinite(Number(e?.priority))?Number(e.priority):999;return t+=Math.max(a,o)*100,t+=Math.min(a,o),t+=Math.round(u/100),t+=c*10,t+=Math.max(0,1e3-l),t}function LAe(e=[]){return e.filter(t=>t?.is_visible!==!1&&t?.link?.url).sort((t,r)=>_xt(r)-_xt(t))}function FHr(e={}){let t=LAe(Array.isArray(e.medias)?e.medias:[]);if(t.length>0)return t[0].link.url||"";let r=e?.links?.["application/octet-stream"]?.url;if(r)return r;let n=Object.values(e?.links||{}).find(i=>i?.url)?.url;return n||e?.web_content_link||""}function UHr(e=""){let t=String(e||"").toLowerCase();return t.includes("video_x_matroska")||t.includes("matroska")||t.includes("fext=mkv")||/\.mkv(?:[?#]|$)/.test(t)}function Axt(e=""){let t=String(e||"").toLowerCase();return t.includes("fext=mp4")||t.includes("video_mp4")||/\.mp4(?:[?#]|$)/.test(t)||/\.m3u8(?:[?#]|$)/.test(t)}function IAe(e="",t=""){let r=jHr(e);Axt(t)&&(r+=1e7),UHr(t)&&(r-=1e7);let n=String(e||"").trim().toUpperCase();return(n==="\u539F\u753B"||n==="\u539F\u6587\u4EF6")&&!Axt(t)&&(r-=1e5),r}function iCt(e={},t=""){let r=[],n=new Set,i=(a,o)=>{!a||!o||n.has(o)||(n.add(o),r.push(a,o))};if(jp(t)){let a=LAe(Array.isArray(e.medias)?e.medias:[]).sort((o,u)=>IAe(xj(u,e,"\u539F\u753B"),u?.link?.url||"")-IAe(xj(o,e,"\u539F\u753B"),o?.link?.url||""));for(let o of a)i(xj(o,e,"\u539F\u753B"),o?.link?.url||"")}let s=e?.links?.["application/octet-stream"]?.url;s&&i(jp(t)?"\u539F\u753B":"\u539F\u6587\u4EF6",s),e?.web_content_link&&i(jp(t)?"\u539F\u6587\u4EF6":"\u7F51\u9875\u4E0B\u8F7D",e.web_content_link);for(let a of Object.values(e?.links||{}))a?.url&&i(jp(t)?"\u539F\u6587\u4EF6":"\u4E0B\u8F7D\u94FE\u63A5",a.url);return r.length>0?r:qHr(e,t)}function xj(e={},t={},r="\u539F\u753B"){if(e?.is_origin)return"\u539F\u753B";let n=String(e?.resolution_name||"").trim();if(n)return n.toUpperCase();let i=String(e?.media_name||"").trim();return i?i.replace(/\s+/g," "):t?.mime_type?.startsWith("video/")?r:"\u539F\u6587\u4EF6"}function qHr(e={},t=""){let r=[],n=new Set,i=(o,u)=>{!o||!u||n.has(u)||(n.add(u),r.push(o,u))},s=LAe(Array.isArray(e.medias)?e.medias:[]);for(let o of s)i(xj(o,e,jp(t)?"\u539F\u753B":"\u539F\u6587\u4EF6"),o.link.url);if(r.length>0)return r;let a=FHr(e);return a&&i(jp(t)?"\u539F\u753B":"\u539F\u6587\u4EF6",a),r}function jHr(e=""){let t=String(e||"").trim().toUpperCase();if(!t)return 0;if(t==="\u539F\u753B"||t==="\u539F\u6587\u4EF6")return 1e4;let r=t.match(/(\d+(?:\.\d+)?)\s*K/);if(r)return Math.round(Number(r[1])*1e3);let n=t.match(/(\d{3,4})\s*P/);return n?Number(n[1]):t.includes("\u84DD\u5149")?3e3:t.includes("\u8D85\u6E05")?1080:t.includes("\u9AD8\u6E05")?720:t.includes("\u6807\u6E05")?480:1}function HHr(e=[],t=[],r=""){let n=[],i=new Set,s=new Set,a=(u,c)=>{!u||!c||i.has(c)||jp(r)&&s.has(String(u||"").trim().toUpperCase())||(i.add(c),jp(r)&&s.add(String(u||"").trim().toUpperCase()),n.push(u,c))};for(let u=0;uc.score-u.score),o.flatMap(u=>[u.label,u.url])}function sCt(e=[]){let t=[];for(let r=0;r{let n=String(r.label||"").trim().toUpperCase();return n==="\u539F\u753B"||n==="\u539F\u6587\u4EF6"})||null}function KHr({shareId:e="",fileId:t="",passCodeToken:r="",fileName:n="",fileSize:i=""}={}){return[e,t,r,n,i].join("*")}async function oCt(e,t=""){if(!e)return null;let r=await tx();if(!r)return null;let n=Pi(r)===Fl,i=t==="FETCH",s=i&&!n?await PHr():await rx(r,"GET:drive/v1/files"),a=i?n?{"User-Agent":kj,Accept:"*/*","Accept-Encoding":"gzip, deflate, br",authorization:r,"content-type":"application/json","x-device-id":JI,"x-captcha-token":s}:{"User-Agent":YI,Accept:"*/*","Accept-Encoding":"gzip, deflate, br",authorization:r,"content-type":"application/json","x-client-id":Gy,"x-device-id":Kp(),"x-captcha-token":s}:ex({authorization:r,captchaToken:s,userAgent:n?ZI:Cxt,acceptLanguage:n?"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6":"zh-cn"}),o=new URLSearchParams({space:"","with[0]":"public_share_tag"});t&&o.set("usage",t);let u;try{u=await s0(`${Hp}drive/v1/files/${e}?${o.toString()}`,a),mn("fetchDriveFileInfo response",{fileId:e,usage:t,hasLinks:!!u?.data?.links,linkTypes:Object.keys(u?.data?.links||{}),hasWebContentLink:!!u?.data?.web_content_link,mediaCount:Array.isArray(u?.data?.medias)?u.data.medias.length:0})}catch(c){throw mn("fetchDriveFileInfo error",{fileId:e,usage:t,message:c?.message||String(c),response:c?.response?.data||null}),c}return u.data||null}async function VHr({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:i,clean:s}){let a=KHr({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:i}),o=Tj.get(a)||"";if(!o){if(mn("getSavedFileEntries save start",{shareId:e,fileId:t,fileName:n,fileSize:i,clean:s}),o=await cCt({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:i,clean:s}),!o)return[];Tj.set(a,o)}mn("getSavedFileEntries saved file",{cacheKey:a,savedFileId:o});let u=[];for(let c of["FETCH","","CONSUME","PLAY","DISPLAY"])try{mn("getSavedFileEntries fetch usage",{savedFileId:o,usage:c});let l=await oCt(o,c),d=iCt(l||{},n);mn("getSavedFileEntries usage result",{savedFileId:o,usage:c,entryCount:d.length/2}),d.length>0&&(u=HHr(u,d,n))}catch(l){console.error(`[\u8FC5\u96F7] \u901A\u8FC7\u8F6C\u5B58\u6587\u4EF6\u83B7\u53D6\u94FE\u63A5\u5931\u8D25(${c||"DEFAULT"}):`,l.message||l)}return u}function zHr({shareId:e,fileId:t,passCodeToken:r,size:n,name:i,subtitle:s}){let a=[e,t,r||"",n||0,encodeURIComponent(i||"")];return s?.id&&a.push(s.id,s.size||0,encodeURIComponent(s.name||""),s.ext||""),An(a,{structured:!0})}async function QHr(e){let t=typeof e=="string"?rCt(e):e;if(!t?.shareId)return[];let{files:r,passCodeToken:n}=await BHr(t.shareId,t.passCode||"");if(!n)return[];let i=[],s=(o,u="")=>{if(!o?.length)return;let c=[],l=[],d=[];for(let p of o)p.isDirectory?c.push({id:p.id,path:u+(u?"/":"")+p.name}):jp(p.name)?l.push(p):ss(p.name)&&d.push(p);let f=ji(l.map(p=>({vod_id:p.id,vod_name:p.name,vod_size:p.size,raw:p})));for(let p of f){let h=p.raw,m=as(h.name,d,g=>g.name),y=m?{id:m.id,size:m.size,name:m.name,ext:kI(m.name)}:null;i.push({vod_id:zHr({shareId:t.shareId,fileId:h.id,passCodeToken:n,size:h.size,name:h.name,subtitle:y}),vod_name:h.name,vod_size:h.size})}return c},a=async(o,u)=>{let c=s(o,u)||[];c.length!==0&&await Py(c,async l=>{let d=await $Hr(t.shareId,n,l.id);await a(d,l.path)},3)};return await a(r,""),i}async function vxt(){if(!$c)return;let e=await tx();if(!e)return;let t=await rx(e,"GET:drive/v1/files"),r=ex({authorization:e,captchaToken:t}),n=`${Hp}drive/v1/files?parent_id=${$c}&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,i;try{i=await s0(n,r)}catch(u){throw mn("clearSaveDir list error",{message:u?.message||String(u),response:u?.response?.data||null}),u}let s=i.data?.files||[];if(!s.length)return;let o={ids:s.map(u=>u.id),space:""};try{await Fc(`${Hp}drive/v1/files:batchDelete`,o,r)}catch(u){throw mn("clearSaveDir delete error",{message:u?.message||String(u),response:u?.response?.data||null,body:o}),u}}async function GHr(e){if($c){e&&await vxt();return}let t=await tx();if(!t)return;let r=await rx(t,"GET:drive/v1/files"),n=ex({authorization:t,captchaToken:r}),i=`${Hp}drive/v1/files?parent_id=&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,s;try{s=await s0(i,n)}catch(c){throw mn("createSaveDir list error",{message:c?.message||String(c),response:c?.response?.data||null}),c}let a=s.data?.files||[];for(let c of a)if(c?.name===dxt){$c=c.id,mn("createSaveDir reuse",{saveDirId:$c,clean:e}),e&&await vxt();return}let o={parent_id:"",name:dxt,kind:"drive#folder",space:""},u;try{u=await Fc(`${Hp}drive/v1/files`,o,n)}catch(c){throw mn("createSaveDir create error",{message:c?.message||String(c),response:c?.response?.data||null,body:o}),c}u.data?.file?.id&&($c=u.data.file.id,mn("createSaveDir created",{saveDirId:$c,clean:e}))}async function uCt(){if(!$c)return[];let e=await tx();if(!e)return[];let t=await rx(e,"GET:drive/v1/files"),r=ex({authorization:e,captchaToken:t}),n=`${Hp}drive/v1/files?parent_id=${$c}&filters=%7B%22phase%22%3A%7B%22eq%22%3A%22PHASE_TYPE_COMPLETE%22%7D%2C%22trashed%22%3A%7B%22eq%22%3Afalse%7D%7D&with_audit=true&thumbnail_size=SIZE_SMALL&limit=200`,i;try{i=await s0(n,r)}catch(s){throw mn("listFolderFiles error",{message:s?.message||String(s),response:s?.response?.data||null,saveDirId:$c}),s}return i.data?.files||[]}async function YHr(e,t){let r=await uCt();if(mn("findSavedFileId list",{expectedName:e,expectedSize:t,files:r.map(s=>({id:s?.id,name:s?.name,size:s?.size,phase:s?.phase}))}),!r.length)return"";let n=Number(t||0),i=r.find(s=>s.name===e&&(!n||s.size===n));return i||(i=r.find(s=>s.name===e),i)||n&&(i=r.find(s=>s.size===n),i)?i.id:r[0]?.id||""}async function cCt({fileId:e,shareId:t,passCodeToken:r,fileName:n,fileSize:i,clean:s}){if(await GHr(s),s&&Tj.clear(),!$c)return"";let a=await tx();if(!a)return"";let o=await rx(a,"POST:drive/v1/share/restore"),u=ex({authorization:a,captchaToken:o}),c={parent_id:$c,share_id:t,pass_code_token:r,ancestor_ids:[],file_ids:[e],specify_parent_id:!0},l;try{l=await Fc(`${Hp}drive/v1/share/restore`,c,u)}catch(p){return mn("share restore error",{message:p?.message||String(p),response:p?.response?.data||null,body:c}),console.error("[\u8FC5\u96F7] \u8F6C\u5B58\u5931\u8D25:",p.message||p),""}let d=l.data||{};mn("share restore response",{data:d,expectedName:n,expectedSize:i});let f=d?.file?.id||d?.file_id||d?.files?.[0]?.id||"";for(let p=0;p<5;p++){await la(1e3*(p+1));let h=await YHr(n,i);if(h)return h}return f}async function lCt(e,t,r,n,i,s=!0){return!e||!t?"":(await $j(e,t,r,n,i,s))[1]||""}async function $j(e,t,r,n,i,s=!0){if(!e||!t)return[];try{return await VHr({shareId:e,fileId:t,passCodeToken:r,fileName:n,fileSize:i,clean:s})}catch(a){console.error("[\u8FC5\u96F7] \u901A\u8FC7\u8F6C\u5B58\u6587\u4EF6\u83B7\u53D6\u76F4\u94FE\u5931\u8D25:",a.message||a)}return[]}async function dCt(e,t){let r={reqId:String(e.id||""),method:String(e.method||"").toUpperCase(),url:String(e.url||""),routeFlag:String(e.params?.flag||""),range:String(e.headers?.range||""),userAgent:String(e.headers?.["user-agent"]||""),referer:String(e.headers?.referer||""),cacheHit:!1,downloadUrlSource:"",downloadUrlAudience:"",statusCode:0,elapsedMs:0,error:""},n=Date.now();try{await a0(e);let i=e.params.site,s=e.params.what;if(i!=="xunlei"||s!=="src")return;let a;try{a=fi(String(e.params.fileId||""),{decodeUri:!0,minLength:4,fieldOrder:["fileId","passCodeToken","fileSize","encodedFileName"]})}catch{t.sent||t.code(400).send({error:"\u53C2\u6570\u65E0\u6548"});return}let o=String(e.params.shareId||"").trim(),u=String(a.fileId||"").trim(),c=String(a.passCodeToken||"").trim(),l=String(a.fileSize||"").trim(),d="";try{d=decodeURIComponent(a.encodedFileName||"")}catch{d=String(a.encodedFileName||"").trim()}let f=[o,u,c,l,d].join("*"),p={"User-Agent":YI,Accept:"*/*","Accept-Encoding":"identity"},h="",m=tHr(f);if(m&&!nHr(m)){let v=await hxt(m.url,p);v.ok?(h=m.url,r.cacheHit=!0,r.downloadUrlSource="cache"):(mn("proxy cached original url invalid",{cacheKey:f,status:v.status,expiresAt:m.expiresAt||0,message:v.message||""}),EAe(f))}else m&&EAe(f);if(!h){let v=await $j(o,u,c,d,l,!1),A=aCt(v);if(h=String(A?.url||"").trim(),h){r.downloadUrlSource="fresh";let _=await hxt(h,p);_.ok?rHr(f,h):(mn("proxy fresh original url invalid",{cacheKey:f,status:_.status,message:_.message||""}),h="")}}if(!h){r.statusCode=404,r.error="\u539F\u753B\u5730\u5740\u83B7\u53D6\u5931\u8D25",t.sent||t.code(404).send({error:"\u539F\u753B\u5730\u5740\u83B7\u53D6\u5931\u8D25"});return}if(r.downloadUrlAudience=Pi(String(qe.get("appAuth")||qe.get("auth")||"")),String(e.params.flag||"").trim()==="redirect"){r.statusCode=302,t.redirect(h);return}let y=await e.server.db.getObjectDefault("/xunlei/settings",{chunkSize:512*1024,poolSize:4,useMultithread:!0});if(!y.useMultithread){t.redirect(h);return}let g=Number(l||0);try{return t.headers({"accept-ranges":"bytes","cache-control":"no-store","content-type":iHr(d)}),await Bp(e,t,h,f,p,{chunkSize:y.chunkSize||512*1024,poolSize:y.poolSize||4,timeout:1e3*15},Number.isFinite(g)&&g>0?g:null,!0)}catch(v){r.error=v?.message||String(v),console.error("[xunlei proxy] chunkStream error, clearing cache:",v.message||v),EAe(f),t.sent||t.redirect(h)}}catch(i){r.error=i?.message||String(i),console.error("[xunlei proxy] error:",i.message||i),t.sent||t.code(500).send({error:i.message||"xunlei proxy error"})}finally{r.elapsedMs=Date.now()-n,r.statusCode=r.statusCode||Number(t?.statusCode||0),eHr(r)}}async function fCt(e,{shareId:t="",fileId:r="",passCodeToken:n="",fileName:i="",fileSize:s="",clean:a=!0}={}){await a0(e);let o={shareId:t,fileId:r,fileName:i,fileSize:s,authAudience:Pi(qe.get("auth")),appAuthAudience:Pi(qe.get("appAuth")),userId:qe.get("userId")||"",hasRefreshToken:!!qe.get("refreshToken")},u="";try{u=await tx(),o.resolvedAppAuthAudience=Pi(u),o.hasResolvedAppAuth=!!u}catch(l){return o.getAppAuthError=qp(l),o}if(!u){let l=!1;try{let d=await GI(Gy,Cj,YI);o.appRefreshAttempt={ok:!!d,audience:Pi(d)}}catch(d){o.appRefreshAttempt={ok:!1,error:qp(d)}}try{let d=await GI(Fl,Ext,kj);o.webRefreshAttempt={ok:!!d,audience:Pi(d)},l=!!d}catch(d){o.webRefreshAttempt={ok:!1,error:qp(d)}}if(l)try{let d=await GI(Gy,Cj,YI);o.appRefreshAfterWebAttempt={ok:!!d,audience:Pi(d)}}catch(d){o.appRefreshAfterWebAttempt={ok:!1,error:qp(d)}}}let c="";try{c=await cCt({shareId:t,fileId:r,passCodeToken:n,fileName:i,fileSize:s,clean:a}),o.savedFileId=c}catch(l){return o.saveError=qp(l),o}try{o.folderFiles=(await uCt()).map(l=>({id:l?.id||"",name:l?.name||"",size:l?.size||0,phase:l?.phase||""}))}catch(l){o.listFolderFilesError=qp(l)}if(!c)return o;o.usages=[];for(let l of["FETCH","","CONSUME","PLAY","DISPLAY"])try{let d=await oCt(c,l),f=iCt(d||{},i),p=sCt(f),h=aCt(f);o.usages.push({usage:l||"DEFAULT",linkTypes:Object.keys(d?.links||{}),links:Object.fromEntries(Object.entries(d?.links||{}).map(([m,y])=>[m,{url:y?.url||""}])),hasWebContentLink:!!d?.web_content_link,webContentLink:d?.web_content_link||"",mediaCount:Array.isArray(d?.medias)?d.medias.length:0,medias:Array.isArray(d?.medias)?d.medias.map(m=>({resolutionName:m?.resolution_name||"",mediaName:m?.media_name||"",isOrigin:!!m?.is_origin,width:Number(m?.video?.width||0),height:Number(m?.video?.height||0),codec:m?.video?.codec||"",linkUrl:m?.link?.url||""})):[],entryCount:f.length/2,labels:f.filter((m,y)=>y%2===0),entries:p,pickedOriginalEntry:h})}catch(d){o.usages.push({usage:l||"DEFAULT",error:qp(d)})}return o}async function pCt(e){await a0(e);let t=String(pi.username||"").trim(),r=String(pi.password||"").trim(),n=Ul(t),i={username:n.account,hasPassword:!!r,authAudience:Pi(qe.get("auth")),appAuthAudience:Pi(qe.get("appAuth")),userId:qe.get("userId")||"",hasRefreshToken:!!qe.get("refreshToken"),creditKey:String(qe.get("creditKey")||"").trim()};try{let o=await Bj(n.account,r);i.webSignin={ok:!0,audience:Pi(o.auth),userId:o.userId,hasRefreshToken:!!o.refreshToken}}catch(o){i.webSignin={ok:!1,error:qp(o)}}i.appSigninAttempts=[];let s=[],a=String(qe.get("creditKey")||"").trim();a&&s.push(a),s.push("");for(let o of[...new Set(s)]){let u={creditKey:o};try{let c=await kAe(n.account,r,o);u.coreLogin={ok:!0,sessionId:c};let l=await Yxt(n.account,c),d=await OAe(l);u.signInWithSessionToken={ok:!!d,audience:Pi(d)};try{await Lj(d),u.validatePanAuthState={ok:!0}}catch(f){u.validatePanAuthState={ok:!1,error:qp(f)}}}catch(c){u.error=qp(c)}i.appSigninAttempts.push(u)}return i}async function hCt(e,t){t&&await a0(t);let r=rCt(e);if(!r)return[];let n=await QHr(r);if(!n?.length)return[];let i=await Pn("xunlei");return pa(i,n)}Yr();var Q2t=Se(require("http"),1),G2t=Se(require("https"),1),jb=Se(MP(),1),Y2t=Se(yTt(),1),W2t=Se(U2t(),1),Kb=Se(require("crypto"),1);var Hb,vo={},Rr={WEB_URL:"https://cloud.189.cn",API_URL:"https://api.cloud.189.cn",UPLOAD_URL:"https://upload.cloud.189.cn",PC:"TELEPC",VERSION:"6.2",CHANNEL_ID:"web_cloud.189.cn",APP_ID:"8025431004",ACCOUNT_TYPE:"02",LOGIN_CLIENT_TYPE:"10020",RETURN_URL:"https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",ROOT_FOLDER_ID:"-11",TEMP_DIR_NAME:"CatVodOpen",TEMP_DIR_PREFIX:"CatVodOpen-cas-",DELETE_DELAY_MS:2*60*60*1e3},yve="!tycas1!",$P="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",ma={legacy:"cloud_cookie",private:"cloud_cookie_private",share:"cloud_cookie_share"},DVr=2,Ao={set(e,t){vo[e]=t,Hb.push(`/tyi/${e}`,t)},get(e){return vo[e]}},q2t=(e,t={})=>{let r=t.method||"GET",n=t.headers||{};return Ee({method:r,url:e,headers:n,transformResponse:[i=>i]}).then(i=>({ok:i.status===200,status:i.status,statusText:i.statusText,url:i.config.url,text:()=>Promise.resolve(i.data),json:()=>Promise.resolve(JSON.parse(i.data)),headers:i.headers})).catch(i=>i.response?{ok:!1,status:i.response.status,statusText:i.response.statusText,url:i.config.url,text:()=>Promise.resolve(i.response.data),json:()=>Promise.resolve(JSON.parse(i.response.data)),headers:i.response.headers}:i.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(i))},j2t=(0,Y2t.default)({storeAsString:!0}),p9=class{publicKey=null;setPublicKey(t){this.publicKey=t}encrypt(t){let r=Buffer.from(t,"utf8");return Kb.default.publicEncrypt({key:this.publicKey,padding:Kb.default.constants.RSA_PKCS1_PADDING},r).toString("base64")}},g9=async e=>{Hb=e.server.db,vo=await Hb.getObjectDefault("/tyi",{});let t=String(e?.server?.config?.tianyi?.username||""),r=String(e?.server?.config?.tianyi?.password||"");!vo.cloud_account&&t&&(vo.cloud_account=t,await Hb.push("/tyi/cloud_account",t)),!vo.cloud_password&&r&&(vo.cloud_password=r,await Hb.push("/tyi/cloud_password",r));let n=String(vo[ma.legacy]||"").trim(),i=String(vo[ma.private]||"").trim(),s=String(vo[ma.share]||"").trim();n&&(i||(vo[ma.private]=n,await Hb.push(`/tyi/${ma.private}`,n)),s||(vo[ma.share]=n,await Hb.push(`/tyi/${ma.share}`,n))),console.log(`[Tianyi] initCloud account=${vo.cloud_account?"set":"empty"} password=${vo.cloud_password?"set":"empty"} privateCookie=${String(vo[ma.private]||n).trim()?"set":"empty"} shareCookie=${String(vo[ma.share]||n).trim()?"set":"empty"}`)};async function X2t(e,t){t&&await g9(t);let r=await y9.getShareData(e);if(!r?.length)return[];let n=await Pn("tianyi");return pa(n,r)}function J2t(e){return e===400||e===401||e===403}function Z2t(e,t=300){if(e==null)return"empty";if(typeof e=="string")return e.slice(0,t).replace(/\s+/g," ");try{return JSON.stringify(e).slice(0,t)}catch{return"[unserializable]"}}function H2t(e,t){let r=Z2t(e,500),n=r.toLowerCase(),i=/invalidsessionkey|cookieusersession is null or invalid|usersessionbo is null/.test(n),s=/check ip error|cookiesip=|curip=/.test(n),a=/permissiondenied|file type error or not support|forbidden|access denied|无权限/.test(n),o=J2t(t)||i||s||a,u="unknown",c="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=o,d="refresh_share_cookie";return s?(u="ip_mismatch",c="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u7F51\u7EDC\u51FA\u53E3\u53D8\u5316\u5BFC\u81F4\u4F1A\u8BDD\u5931\u6548\uFF0C\u5DF2\u5C1D\u8BD5\u5207\u6362 IPv4 \u4F1A\u8BDD",l=!0,d="force_share_login_ipv4_once"):i?(u="invalid_session",c="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5DF2\u5931\u6548\uFF0C\u5DF2\u5C1D\u8BD5\u81EA\u52A8\u5237\u65B0",l=!0,d="refresh_share_cookie"):a?(u="access_denied",c="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u5206\u4EAB\u4F1A\u8BDD\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=!1,d="no_retry"):o&&(u="auth",c="\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5",l=!0,d="refresh_share_cookie"),{authFailure:o,category:u,detail:r,message:c,retryable:l,retryAdvice:d}}function kVr(e){switch(e){case"ip_mismatch":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u7F51\u7EDC\u51FA\u53E3\u53D8\u5316\u5BFC\u81F4\u4F1A\u8BDD\u5931\u6548\uFF0C\u5DF2\u81EA\u52A8\u91CD\u5EFA IPv4 \u4F1A\u8BDD\uFF1B\u82E5\u4ECD\u5931\u8D25\u8BF7\u7A0D\u540E\u91CD\u8BD5";case"invalid_session":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u6548\uFF0C\u5DF2\u81EA\u52A8\u91CD\u8BD5\uFF1B\u82E5\u4ECD\u5931\u8D25\u8BF7\u7A0D\u540E\u518D\u8BD5";case"access_denied":return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF1A\u5F53\u524D\u5206\u4EAB\u4F1A\u8BDD\u4E0D\u53EF\u7528\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5";default:return"\u5929\u7FFC\u5206\u4EAB\u64AD\u653E\u9274\u6743\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"}}var OVr=new Q2t.default.Agent({keepAlive:!0,family:4}),PVr=new G2t.default.Agent({keepAlive:!0,family:4});function Yp(e={}){let t={...e||{}};return t.httpAgent=t.httpAgent||OVr,t.httpsAgent=t.httpsAgent||PVr,t.family=4,t}function qb(e){return Array.isArray(e)?e.map(t=>String(t||"").split(";")[0].trim()).filter(Boolean):[]}function sx(e){let t=new Map;return e.forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let i=r.slice(0,n).trim(),s=r.slice(n+1).trim();i&&t.set(i,`${i}=${s}`)}),Array.from(t.values())}function K2t(e,t={}){return e?.toUrl||e?.data?.toUrl||e?.returnUrl||e?.data?.returnUrl||e?.redirectUrl||e?.data?.redirectUrl||t?.location||""}function hve(e=""){return/\.cas$/i.test(String(e||""))}function FP(e=""){return String(e||"").replace(/\.cas$/i,"")}function Ave(e=""){let t=String(e||"").trim();if(!t||/[\\/]/.test(t))throw new Error(`\u65E0\u6548\u7684\u6E90\u6587\u4EF6\u540D: ${e}`);return t}function MVr(e={}){let t=JSON.stringify(e||{});return yve+Buffer.from(t,"utf8").toString("base64url")}function LVr(e=""){let t=String(e||"");if(!t.startsWith(yve))return null;try{let r=Buffer.from(t.slice(yve.length),"base64url").toString("utf8"),n=JSON.parse(r);return n&&typeof n=="object"?n:null}catch{return null}}function BVr(e=""){let t=Ave(e||`video-${Date.now()}.cas`),r=t.lastIndexOf("."),n=`${Date.now()}_${Math.floor(Math.random()*1e5)}`;return r<=0?`${t}.${n}`:`${t.slice(0,r)}.${n}${t.slice(r)}`}function $Vr(){return Rr.TEMP_DIR_NAME}function ax(e){return e==null?"":typeof e=="string"?e.trim():String(typeof e=="number"||typeof e=="boolean"?e:typeof e=="object"?e.code||e.errorCode||e.message||e.errorMsg||JSON.stringify(e):e)}function mve(e){if(!e)return"";let t=typeof e=="string"?h9(e):e;if(!t||typeof t!="object")return"";let r=t.res_code;return typeof r=="number"&&r!==0?`res_code: ${r} ${ax(t.res_message)}`.trim():typeof r=="string"&&r?`res_code: ${r} ${ax(t.res_message)}`.trim():t.code&&t.code!=="SUCCESS"?`code: ${t.code} ${ax(t.msg||t.message)}`.trim():t.errorCode?`err_code: ${t.errorCode} ${ax(t.errorMsg)}`.trim():t.error?`error: ${ax(t.error)} ${ax(t.message)}`.trim():""}function h9(e=""){try{return JSON.parse(String(e||""))}catch{return null}}function gve(){return{clientType:Rr.PC,version:Rr.VERSION,channelId:Rr.CHANNEL_ID,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function FVr(){return new Date().toUTCString()}function UVr(){return Date.now()}function f9(e="",t){return String(e||"").match(t)?.[1]||""}var qVr=["data","userSession","folder","listFiles","fileDownload","commitMultiUploadFile","initMultiUpload","TaskIdResp","taskState","batchTask"];function e_(e={}){if(!e||typeof e!="object")return{};for(let t of qVr)if(e[t]&&typeof e[t]=="object")return e[t];return e}function UP(e){return Array.isArray(e)?e:e?[e]:[]}function _ve(e={},t={}){let r=e_(e);return{...t,accessToken:String(r?.accessToken||t?.accessToken||""),refreshToken:String(r?.refreshToken||t?.refreshToken||""),sessionKey:String(r?.sessionKey||t?.sessionKey||""),sessionSecret:String(r?.sessionSecret||t?.sessionSecret||""),familySessionKey:String(r?.familySessionKey||t?.familySessionKey||""),familySessionSecret:String(r?.familySessionSecret||t?.familySessionSecret||""),loginName:String(r?.loginName||t?.loginName||"")}}async function V2t(e){let t=await eNt(e);return _ve(t)}async function eNt(e){if(e&&typeof e=="object")return e;let t=String(e||"").trim();if(!t)return{};if(t.startsWith("{")||t.startsWith("["))return h9(t)||{};if(!t.startsWith("<"))return{};try{return await(0,W2t.parseStringPromise)(t,{explicitArray:!1,trim:!0})||{}}catch{return{}}}function jVr(e,t,r,n,i,s=""){let a=new URL(n).pathname,o=Kb.default.createHmac("sha1",e),u=`SessionKey=${t}&Operate=${r}&RequestURI=${a}&Date=${i}`;return s&&(u+=`¶ms=${s}`),o.update(u),o.digest("hex").toUpperCase()}function HVr(e,t){let r=e.length%t,n=r===0?t:t-r;return Buffer.concat([e,Buffer.alloc(n,n)])}function KVr(e,t){let r=Buffer.from(String(t||"").slice(0,16),"utf8"),n=Kb.default.createCipheriv("aes-128-ecb",r,null);n.setAutoPadding(!1);let i=HVr(Buffer.from(String(e||""),"utf8"),16);return Buffer.concat([n.update(i),n.final()]).toString("hex").toUpperCase()}function VVr(e={},t=""){let n=Object.entries(e||{}).filter(([,i])=>i!=null&&i!=="").sort(([i],[s])=>i.localeCompare(s)).map(([i,s])=>`${i}=${s}`).join("&");return n?KVr(n,t):""}function zVr(e){return e>10485760*2*999?Math.max(Math.ceil(e/1999/10485760),5)*10485760:e>10485760*999?10485760*2:10485760}function QVr(e){let t=Buffer.from(e||[]).toString("utf8").replace(/^\uFEFF/,"").trim();if(!t)throw new Error("\u7A7A\u7684 .cas \u6587\u4EF6");let r=null;if(t.startsWith("{")&&t.endsWith("}")&&(r=h9(t)),!r){let i=Buffer.from(t,"base64").toString("utf8");r=h9(i)}if(!r||typeof r!="object")throw new Error("\u89E3\u6790 .cas \u5931\u8D25");let n={name:Ave(r.name||""),size:Number(r.size||0),md5:String(r.md5||"").trim(),sliceMd5:String(r.sliceMd5||r.slice_md5||"").trim(),createTime:String(r.create_time||"").trim()};if(!n.md5||!n.sliceMd5||!Number.isFinite(n.size)||n.size<0)throw new Error("\u65E0\u6548\u7684 .cas \u5143\u6570\u636E");return n}function z2t(e=""){return String(e||"").trim().toUpperCase()}var m9=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this._privateCookie=String(Ao.get(ma.private)||Ao.get(ma.legacy)||"").trim(),this._shareCookie=String(Ao.get(ma.share)||"").trim(),this._shareAuthRetryCount=0,this._shareAuthLastError=null}get account(){return Ao.get("cloud_account")}get password(){return Ao.get("cloud_password")}get cookie(){return this.privateCookie}set cookie(t){this.privateCookie=t}get privateCookie(){return String(this._privateCookie||Ao.get(ma.private)||Ao.get(ma.legacy)||"").trim()}set privateCookie(t){this._privateCookie=String(t||"").trim(),Ao.set(ma.private,this._privateCookie),Ao.set(ma.legacy,this._privateCookie)}get shareCookie(){return String(this._shareCookie||Ao.get(ma.share)||"").trim()}set shareCookie(t){this._shareCookie=String(t||"").trim(),Ao.set(ma.share,this._shareCookie)}get tokenInfo(){return Ao.get("cloud_token_info")||null}set tokenInfo(t){t&&typeof t=="object"?Ao.set("cloud_token_info",t):Ao.set("cloud_token_info",null)}get tempDirId(){return Ao.get("cloud_temp_dir_id")||""}set tempDirId(t){Ao.set("cloud_temp_dir_id",String(t||""))}hasCookie(){return this.hasPrivateCookie()}hasPrivateCookie(){return!!String(this.privateCookie||"").trim()}hasShareCookie(){return!!String(this.shareCookie||"").trim()}hasTokenInfo(){let t=this.tokenInfo;return!!(t?.sessionKey&&t?.sessionSecret)}async ensureLogin(){if(!this.account||!this.password)throw new Error("\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\u4E3A\u7A7A\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u586B\u5199");(!this.hasPrivateCookie()||!this.hasTokenInfo())&&await this.login(this.account,this.password)}clearAuthState(){this.clearPrivateAuthState()}clearPrivateAuthState(){this.privateCookie="",this.tokenInfo=null}clearShareAuthState(){this.shareCookie=""}resetShareAuthRetryState(){this._shareAuthRetryCount=0,this._shareAuthLastError=null}rememberShareAuthError(t){this._shareAuthLastError=t||null}flushShareAuthFailure(t={}){let r=t?.silentAuthFailure===!0,n=this._shareAuthLastError;this.resetShareAuthRetryState(),!(r||!n)&&Xr.toast(kVr(n.authCategory),{duration:5})}buildShareAuthError(t,r,n="\u5929\u7FFC\u64AD\u653E\u9274\u6743\u5931\u8D25"){let i=H2t(r,t),s=new Error(`${n} status=${t||"unknown"} body=${i.detail}`);return s.isAuthFailure=i.authFailure,s.authCategory=i.category,s.userMessage=i.message,s.response={status:t,data:r},s}getSessionHeader(t,r,n="",i=!1){let s=this.tokenInfo;if(!s)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD");let a=i?s.familySessionKey:s.sessionKey,o=i?s.familySessionSecret:s.sessionSecret;if(!a||!o)throw new Error("\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u4E0D\u5B8C\u6574");let u=FVr();return{Date:u,SessionKey:a,"X-Request-ID":Kb.default.randomUUID(),Signature:jVr(o,a,r,t,u,n)}}encryptPrivateParams(t={},r=!1){let n=this.tokenInfo;if(!n)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD");let i=r?n.familySessionSecret:n.sessionSecret;if(!i)throw new Error("\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u5BC6\u94A5\u7F3A\u5931");return VVr(t,i)}async refreshSession(){let t=this.tokenInfo;if(!t?.accessToken)throw new Error("\u7F3A\u5C11 accessToken\uFF0C\u65E0\u6CD5\u5237\u65B0\u4F1A\u8BDD");let r=await Ee.get(`${Rr.API_URL}/getSessionForPC.action`,{params:{...gve(),appId:Rr.APP_ID,accessToken:t.accessToken},headers:{"User-Agent":$P,"X-Request-ID":Kb.default.randomUUID(),...this.hasPrivateCookie()?{Cookie:String(this.privateCookie||"").trim()}:{}},validateStatus:null}),n=mve(r.data);if(n)throw new Error(n);let i=_ve(await V2t(r.data),t);if(!i.sessionKey||!i.sessionSecret)throw new Error("\u5237\u65B0\u5929\u7FFC\u79C1\u6709\u76D8\u4F1A\u8BDD\u5931\u8D25\uFF1A\u672A\u8FD4\u56DE sessionKey");return this.tokenInfo=i,i}async requestPrivateApi(t,r="GET",n={},{isFamily:i=!1,form:s=null,encryptedParams:a=null}={}){await this.ensureLogin();let o=async()=>{let u=a?this.encryptPrivateParams(a,i):"",c={...gve(),...Object.fromEntries(Object.entries(n||{}).filter(([,m])=>m!=null&&m!==""))};u&&(c.params=u);let l={"User-Agent":$P,Referer:Rr.WEB_URL,...this.getSessionHeader(t,r,u,i)},d={method:r,url:t,params:c,headers:l,validateStatus:null};s&&(d.headers["Content-Type"]="application/x-www-form-urlencoded",d.data=jb.default.stringify(Object.fromEntries(Object.entries(s).filter(([,m])=>m!=null&&m!==""))));let f=await Ee(d),p=await eNt(f.data),h=mve(p);if(typeof f.data=="string"&&/InvalidSessionKey|userSessionBO is null/.test(f.data)){let m=new Error("InvalidSessionKey");throw m.code="INVALID_SESSION_KEY",m}if(h){let m=new Error(h);throw/UserInvalidOpenToken|InvalidSessionKey/i.test(h)&&(m.code="INVALID_SESSION_KEY"),m}return p};try{return await o()}catch(u){if(u?.code==="INVALID_SESSION_KEY")return await this.refreshSession(),await o();throw u}}async createTempDir(t=!1){let r={id:Rr.ROOT_FOLDER_ID,name:"root"};try{await this.makeDir(r,Rr.TEMP_DIR_NAME)}catch{}let i=(await this.getPrivateFiles(Rr.ROOT_FOLDER_ID,!1,"filename","asc",50)).find(s=>s.isFolder&&s.name===Rr.TEMP_DIR_NAME);if(!i?.id)throw new Error("\u521B\u5EFA\u5929\u7FFC\u4E34\u65F6\u76EE\u5F55\u5931\u8D25");return this.tempDirId=i.id,t&&await this.clearTempDir(i.id),i.id}async ensureTempDir(t=!1){await this.ensureLogin();let r=this.tempDirId||await this.createTempDir(t);return console.log(`[Tianyi][temp] ensureTempDir dirId=${r} clean=${t?1:0}`),t&&await this.clearTempDir(r),r}async clearTempDir(t=""){let r=String(t||this.tempDirId||"");if(!r)return;let n=await this.getPrivateFiles(r,!1,"filename","asc",200);if(console.log(`[Tianyi][temp] \u6E05\u7406\u4E34\u65F6\u76EE\u5F55 dirId=${r} fileCount=${n.length}`),!!n.length){for(let i of n)console.log(`[Tianyi][temp] \u5220\u9664\u4E34\u65F6\u6587\u4EF6 id=${i.id} name=${i.name} isFolder=${i.isFolder?1:0} size=${i.size||0}`),await this.deletePrivateFile(i.id,i.name,i.isFolder,{wait:!0});for(let i=1;i<=10;i++){let s=await this.getPrivateFiles(r,!1,"filename","asc",200);if(console.log(`[Tianyi][temp] \u6E05\u7406\u540E\u5269\u4F59 dirId=${r} remain=${s.length} attempt=${i}`),!s.length)return;await new Promise(a=>setTimeout(a,500*i))}}}async makeDir(t,r){let n=await this.requestPrivateApi(`${Rr.API_URL}/createFolder.action`,"POST",{folderName:r,relativePath:"",parentFolderId:t.id}),i=n?.folder||n;return{id:String(i?.id||""),name:r,isFolder:!0}}async getPrivateFiles(t,r=!1,n="filename",i="asc",s=1e3){let a=[];for(let o=1;;o++){let u=`${Rr.API_URL}${r?"/family/file":""}/listFiles.action`,c=await this.requestPrivateApi(u,"GET",{folderId:t,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(o),pageSize:String(s),recursive:r?void 0:"0",orderBy:n,descending:i==="desc"?"true":"false"},{isFamily:r}),l=e_(c),d=l?.fileListAO||l?.fileList||l,f=d?.folderList||d?.folder||[],p=d?.fileList||d?.file||[],h=UP(f),m=UP(p),y=h.length>0||m.length>0,g=Number(d?.count||(y?h.length+m.length:0)||0);if(!y&&!g||(h.forEach(v=>{a.push({id:String(v.id||""),name:String(v.name||""),isFolder:!0})}),m.forEach(v=>{a.push({id:String(v.id||""),name:String(v.name||""),size:Number(v.size||0),md5:String(v.md5||""),isFolder:!1})}),!y||g!s.isFolder&&s.name===r)||null}async findPrivateFileByPredicate(t,r,n=!1,i="filename",s="asc",a=200){return(await this.getPrivateFiles(t,n,i,s,a)).find(u=>{try{return!!r(u)}catch{return!1}})||null}async createBatchTask(t,r,n,i={},s=[]){let a={type:t,taskInfos:JSON.stringify(s),...i};n&&(a.targetFolderId=n),r&&(a.familyId=r);let o=await this.requestPrivateApi(`${Rr.API_URL}/batch/createBatchTask.action`,"POST",{},{isFamily:!!r,form:a}),u=e_(o);return{...u,taskId:String(u?.taskId||"")}}async checkBatchTask(t,r){let n=await this.requestPrivateApi(`${Rr.API_URL}/batch/checkBatchTask.action`,"POST",{},{form:{type:t,taskId:r}}),i=e_(n),s=i?.TaskResultResp||i?.taskResultResp||i;return{...i,TaskResultResp:s,taskId:String(s?.taskId||i?.taskId||r||""),taskStatus:Number(s?.taskStatus||i?.taskStatus||0),successedCount:Number(s?.successedCount||i?.successedCount||0),failedCount:Number(s?.failedCount||i?.failedCount||0),skipCount:Number(s?.skipCount||i?.skipCount||0),errorCode:String(s?.errorCode||i?.errorCode||"")}}async getConflictTaskInfo(t,r){let n=await this.requestPrivateApi(`${Rr.API_URL}/batch/getConflictTaskInfo.action`,"POST",{},{form:{type:t,taskId:r}});return e_(n)||{}}async manageBatchTask(t,r,n,i=[]){await this.requestPrivateApi(`${Rr.API_URL}/batch/manageBatchTask.action`,"POST",{},{form:{type:t,taskId:r,targetFolderId:String(n||""),taskInfos:JSON.stringify(i||[])}})}async waitBatchTask(t,r,n=1e3,i=0){let s=0;for(;;){s+=1;let a=await this.checkBatchTask(t,r);if(console.log(`[Tianyi][task] type=${t} taskId=${r} poll=${s} status=${Number(a?.taskStatus||0)} failed=${Number(a?.failedCount||0)} errorCode=${a?.errorCode||""}`),Number(a?.taskStatus)===2){let o=new Error("there is a conflict with the target object");throw o.code="TASK_CONFLICT",o}if(Number(a?.taskStatus)===4){if(Number(a?.failedCount||0)>0){let o=new Error(a?.errorCode||`batch task failed type=${t} taskId=${r}`);throw o.code=a?.errorCode||"TASK_FAILED",o.taskState=a,o}return}if(i>0&&s>=i){let o=new Error(`batch task timeout type=${t} taskId=${r} status=${Number(a?.taskStatus||0)}`);throw o.code="TASK_TIMEOUT",o.taskStatus=Number(a?.taskStatus||0),o}await new Promise(o=>setTimeout(o,n))}}async ensureCasTempDir(t=!1){await this.ensureLogin();let r={id:Rr.ROOT_FOLDER_ID,name:"root"},n=$Vr();try{await this.makeDir(r,n)}catch{}let s=(await this.getPrivateFiles(Rr.ROOT_FOLDER_ID,!1,"filename","asc",200)).find(o=>o.isFolder&&o.name===n),a=String(s?.id||"");if(!a)throw new Error("\u521B\u5EFA\u5929\u7FFC CAS \u4E34\u65F6\u76EE\u5F55\u5931\u8D25");return t&&await this.clearTempDir(a),console.log(`[Tianyi][cas] ensureCasTempDir dirId=${a} name=${n} clean=${t?1:0}`),{id:a,name:n}}async transferShareFile(t,r,n,i={}){let s=String(i?.targetDirId||"")||await this.ensureTempDir(!0),a={fileId:String(r),fileName:n,isFolder:0},o=FP(String(n||"")),u=o?o.replace(/\.\d{13,}_[0-9]+$/,""):"",c=Array.from(new Set([String(n||"").trim(),o?`${o}.cas`:"",o,u?`${u}.cas`:"",u].filter(Boolean))),l;console.log(`[Tianyi][share-save] start shareId=${t} fileId=${r} tempDirId=${s} fileName=${n}`);try{l=await this.createBatchTask("SHARE_SAVE","",s,{shareId:String(t)},[a]),console.log(`[Tianyi][share-save] created taskId=${l?.taskId||""} shareId=${t} fileId=${r}`)}catch(h){let m=String(h?.message||"");if(h?.code!=="TASK_CONFLICT"&&h?.code!=="FileAlreadyExists"&&!/conflict/i.test(m)&&!/FileAlreadyExists/i.test(m)&&!/ShareSaveTaskIsAlreadyExist|already exist/i.test(m))throw h;console.warn("[Tianyi] \u590D\u7528\u5DF2\u6709\u8F6C\u5B58\u4EFB\u52A1:",m||"share save task already exists")}let d=async()=>{let h=await this.findPrivateFileByName(s,n,!1);return h?.id?h:(await this.getPrivateFiles(s,!1,"lastOpTime","desc",200)).find(g=>{if(!g||g.isFolder)return!1;let v=String(g.name||"").trim();return v?!!(c.includes(v)||hve(v)&&o&&FP(v)===o||hve(v)&&u&&FP(v)===u):!1})||null},f=async()=>{for(let h=1;h<=24;h++){let m=await d();if(console.log(`[Tianyi][share-save] lookup attempt=${h} tempDirId=${s} found=${m?.id?1:0} fileId=${m?.id||""} name=${m?.name||""}`),m?.id)return m;if(l?.taskId)try{let y=await this.checkBatchTask("SHARE_SAVE",l.taskId);if(console.log(`[Tianyi][share-save] taskState attempt=${h} taskId=${l.taskId} status=${Number(y?.taskStatus||0)} failed=${Number(y?.failedCount||0)} errorCode=${y?.errorCode||""}`),Number(y?.taskStatus)===2){let g=new Error("there is a conflict with the target object");throw g.code="TASK_CONFLICT",g}if(Number(y?.taskStatus)===4&&Number(y?.failedCount||0)>0){let g=new Error(y?.errorCode||"share save failed");throw g.code=y?.errorCode||"TASK_FAILED",g.taskState=y,g}}catch(y){if(y?.code==="TASK_CONFLICT"||y?.code==="FileAlreadyExists")throw y;console.warn(`[Tianyi][share-save] check task failed attempt=${h} taskId=${l.taskId} reason=${y?.message||y}`)}await new Promise(y=>setTimeout(y,1e3))}return null},p=async()=>{if(!l?.taskId)return null;try{let h=await this.getConflictTaskInfo("SHARE_SAVE",l.taskId),m=UP(h?.taskInfos||h?.taskInfo||h?.data?.taskInfos||[]);if(m.length)try{await this.manageBatchTask("SHARE_SAVE",l.taskId,s,m)}catch(y){console.warn(`[Tianyi][share-save] manageBatchTask failed taskId=${l.taskId} reason=${y?.message||y}`)}}catch(h){console.warn(`[Tianyi][share-save] getConflictTaskInfo failed taskId=${l?.taskId||""} reason=${h?.message||h}`)}return await d()};try{let h=await f();if(!h?.id)throw new Error("\u6587\u4EF6\u8F6C\u5B58\u5931\u8D25");return h}catch(h){let m=String(h?.message||"");if(h?.code!=="TASK_CONFLICT"&&h?.code!=="FileAlreadyExists"&&!/conflict/i.test(m)&&!/FileAlreadyExists/i.test(m)&&!/ShareSaveTaskIsAlreadyExist|already exist/i.test(m))throw h;console.warn("[Tianyi] \u590D\u7528\u5DF2\u6709\u8F6C\u5B58\u7ED3\u679C:",m||"share save task already exists");let y=await p();if(y?.id)return y;let g=await d();if(!g?.id)throw new Error("\u6587\u4EF6\u8F6C\u5B58\u5931\u8D25");return g}}async getPrivateDownloadLink(t,r=!1){let n=`${Rr.API_URL}${r?"/family/file":""}/getFileDownloadUrl.action`,i=r?{fileId:String(t),familyId:this.tokenInfo?.familyId||""}:{fileId:String(t),dt:"3",flag:"1"},s=await this.requestPrivateApi(n,"GET",i,{isFamily:r}),a=e_(s),o=String(a?.fileDownloadUrl||a?.url||"").replaceAll("&","&").replace(/^http:\/\//i,"https://");if(console.log(`[Tianyi][private] getPrivateDownloadLink fileId=${t} isFamily=${r?1:0} hasUrl=${o?1:0}`),!o)throw console.warn("[Tianyi][private] getPrivateDownloadLink raw=",JSON.stringify(s).slice(0,500)),new Error("\u83B7\u53D6\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u5730\u5740\u5931\u8D25");let u=async()=>{console.log(`[Tianyi][private] rawDownloadUrl=${o}`);let c=await Ee.get(o,{maxRedirects:0,validateStatus:null}),l=typeof c.data=="string"?c.data.slice(0,300).replace(/\s+/g," "):JSON.stringify(c.data).slice(0,300);if(console.log(`[Tianyi][private] rawDownloadResp status=${c.status} location=${c.headers.location||""} body=${l}`),c.status>=300&&c.status<400&&c.headers.location)return c.headers.location;if(c.status>=200&&c.status<300)return o;let d=new Error(`\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u8DF3\u8F6C\u5931\u8D25 status=${c.status}`);throw d.status=c.status,d.bodyText=l,d};for(let c=0;c<6;c++)try{return await u()}catch(l){let d=`${l?.message||""} ${l?.bodyText||""}`;if(!/FileNotFound/i.test(d)||c>=5)throw l;let p=1e3*(c+1);console.warn(`[Tianyi][private] \u4E0B\u8F7D\u8282\u70B9\u672A\u5C31\u7EEA\uFF0C\u7B49\u5F85\u91CD\u8BD5 attempt=${c+1} waitMs=${p} fileId=${t}`),await new Promise(h=>setTimeout(h,p))}throw new Error("\u83B7\u53D6\u5929\u7FFC\u79C1\u6709\u76D8\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}async deletePrivateFile(t,r,n=!1,i={}){let s=i?.wait!==!1;try{let a={fileId:String(t),fileName:r,isFolder:n?1:0},o=await this.createBatchTask("DELETE","","",{},[a]);console.log(`[Tianyi][temp] \u5220\u9664\u4EFB\u52A1\u5DF2\u521B\u5EFA taskId=${o?.taskId||""} fileId=${t} name=${r} wait=${s?1:0}`),s&&o?.taskId&&await this.waitBatchTask("DELETE",o.taskId,200,50)}catch(a){console.warn("[Tianyi] \u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",a?.message||a)}}scheduleDeletePrivateFile(t,r){setTimeout(()=>{this.deletePrivateFile(t,r).catch(n=>{console.warn("[Tianyi] \u5EF6\u8FDF\u5220\u9664\u4E34\u65F6\u6587\u4EF6\u5931\u8D25:",n?.message||n)})},Rr.DELETE_DELAY_MS)}async restoreSourceFromCASInfo(t,r){let n=await this.ensureTempDir(!1),i=Ave(t?.name||FP(r)),s=`${Rr.UPLOAD_URL}/person/initMultiUpload`,a=await this.requestPrivateApi(s,"GET",{},{encryptedParams:{parentFolderId:n,fileName:encodeURIComponent(i),fileSize:String(t.size),sliceSize:String(zVr(t.size)),fileMd5:z2t(t.md5),sliceMd5:z2t(t.sliceMd5)}}),o=e_(a),u=o?.data||o||{};if(Number(u?.fileDataExists)!==1)throw new Error(`restore from .cas failed: source data for ${i} was not found in 189CloudPC`);let c=await this.requestPrivateApi(`${Rr.UPLOAD_URL}/person/commitMultiUploadFile`,"GET",{},{encryptedParams:{uploadFileId:String(u?.uploadFileId||u?.uploadFileID||""),isLog:"0",opertype:"3"}}),l=e_(c),d=l?.file||l||{};if(!d.userFileId)throw new Error("\u63D0\u4EA4 .cas \u8FD8\u539F\u5931\u8D25");return{id:String(d.userFileId),name:String(d.fileName||i),size:Number(d.fileSize||t.size||0),isFolder:!1}}async downloadShareFileBuffer(t,r){console.log(`[Tianyi][cas] \u5F00\u59CB\u5206\u4EAB\u4FA7\u4E0B\u8F7D .cas shareId=${r} fileId=${t}`);let n=await this.getShareUrl(t,r,{rawOnly:!0,disablePrivateFallback:!0,silentAuthFailure:!0});console.log(`[Tianyi][cas] \u5206\u4EAB\u4FA7 .cas \u4E0B\u8F7D\u5730\u5740\u5DF2\u83B7\u53D6 shareId=${r} fileId=${t} url=${n}`);let i=await Ee.get(n,{responseType:"arraybuffer",maxRedirects:5,validateStatus:s=>s>=200&&s<300});return console.log(`[Tianyi][cas] \u5206\u4EAB\u4FA7 .cas \u4E0B\u8F7D\u6210\u529F shareId=${r} fileId=${t} bytes=${Number(i?.data?.byteLength||i?.data?.length||0)}`),Buffer.from(i.data||[])}async restoreShareCAS(t,r,n,i={}){let s=await this.ensureCasTempDir(!1),a=BVr(n||"video.cas"),o=await this.transferShareFile(t,r,a,{targetDirId:s.id}),u,c=i?.preferPrivate!==!1,l=c?"private":"share";if(c)console.log(`[Tianyi][cas] \u76F4\u63A5\u4F18\u5148\u79C1\u6709\u76D8\u6062\u590D shareId=${t} fileId=${r}`),u=await Ee.get(await this.getPrivateDownloadLink(o.id,!1),Yp({responseType:"arraybuffer",maxRedirects:5,validateStatus:p=>p>=200&&p<300})).then(p=>Buffer.from(p.data||[]));else try{u=await this.downloadShareFileBuffer(r,t)}catch(p){l="private",console.warn(`[Tianyi][cas] \u5206\u4EAB\u4FA7\u4E0B\u8F7D .cas \u5931\u8D25\uFF0C\u56DE\u9000\u79C1\u6709\u76D8\u4E0B\u8F7D shareId=${t} fileId=${r} reason=${p?.message||p}`),u=await Ee.get(await this.getPrivateDownloadLink(o.id,!1),Yp({responseType:"arraybuffer",maxRedirects:5,validateStatus:h=>h>=200&&h<300})).then(h=>Buffer.from(h.data||[]))}let d=QVr(u),f=await this.restoreSourceFromCASInfo(d,n);return this.scheduleDeletePrivateFile(o.id,o.name),this.scheduleDeletePrivateFile(f.id,f.name),console.log(`[Tianyi][cas] .cas \u89E3\u6790\u4E0E\u6062\u590D\u5B8C\u6210 source=${l} shareId=${t} fileId=${r} restoredId=${f.id}`),await this.getPrivateDownloadLink(f.id,!1)}async loginForNormalShare(t,r){try{console.log("[Tianyi] \u5F00\u59CB\u6267\u884C\u666E\u901A\u5206\u4EAB\u767B\u5F55\u6D41\u7A0B"),this.clearShareAuthState();let n=await Ee.get("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud",Yp({validateStatus:null})),i=String(n?.data?.data?.pubKey||"");if(!i)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u672A\u8FD4\u56DE RSA \u516C\u94A5");n=await Ee.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action",Yp({validateStatus:null}));let s=String(n?.request?.path||""),a=(s.match(/reqId=(\w+)/)||[])[1]||"",o=(s.match(/lt=(\w+)/)||[])[1]||"";if(!a||!o)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u9875\u53C2\u6570\u63D0\u53D6\u5931\u8D25");let u={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:o,Reqid:a},c={version:"2.0",appKey:"cloud"};n=await Ee.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",jb.default.stringify(c),Yp({headers:u,validateStatus:null}));let l=String(n?.data?.data?.returnUrl||""),d=String(n?.data?.data?.paramId||"");if(!l||!d)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55 appConf \u8FD4\u56DE\u4E0D\u5B8C\u6574");let f=`-----BEGIN PUBLIC KEY----- -${i} ------END PUBLIC KEY-----`,p=new p9;p.setPublicKey(f);let h=p.encrypt(t),m=p.encrypt(r);if(!h||!m)throw new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55 RSA \u52A0\u5BC6\u5931\u8D25");c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:l,paramId:d,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${Buffer.from(h,"base64").toString("hex")}`,password:`{NRP}${Buffer.from(m,"base64").toString("hex")}`},n=await Ee.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",jb.default.stringify(c),Yp({headers:u,validateStatus:null}));let y=K2t(n?.data,n?.headers),g=n?.data,v=g?typeof g=="string"?g.slice(0,120).replace(/\s+/g," "):JSON.stringify({msg:g?.msg||g?.message||"",result:g?.result||g?.resultCode||"",errorCode:g?.errorCode||""}):"empty",_=[...qb(n?.headers?.["set-cookie"])];if(y){let S=y;for(let C=0;C<3&&S;C++){let I=sx(_).join("; "),N=await Ee.get(S,Yp({headers:{...this.headers,Cookie:I},maxRedirects:0,validateStatus:null})),T=qb(N?.headers?.["set-cookie"]);if(T.length>0&&_.push(...T),N.status>=300&&N.status<400&&N.headers?.location)S=new URL(N.headers.location,S).toString();else break}}else if(_.length>0){let S=await Ee.get("https://cloud.189.cn/web/main.action",Yp({headers:{...this.headers,Cookie:sx(_).join("; ")},maxRedirects:0,validateStatus:null})),C=qb(S?.headers?.["set-cookie"]);C.length>0&&_.push(...C)}else throw new Error(`\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u8FD4\u56DE\u53EF\u7528 cookie (${v})`);let E=sx(_).join("; ").trim();if(!E)throw new Error(`\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u83B7\u53D6\u5230\u6709\u6548 cookie (${v})`);this.shareCookie=E,console.log(`[Tianyi] \u666E\u901A\u5206\u4EAB\u767B\u5F55\u6210\u529F\uFF0Ccookie length=${E.length}`)}catch(n){console.error("[Tianyi] \u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25:",n);let i=new Error("\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u5931\u8D25");throw i.isAuthFailure=!0,i.cause=n,i}}async login(t,r){try{console.log("[Tianyi] \u5F00\u59CB\u6267\u884C\u767B\u5F55\u6D41\u7A0B"),this.clearPrivateAuthState(),this.tempDirId="";let n=await Ee.get("https://cloud.189.cn/api/portal/unifyLoginForPC.action",{params:{appId:Rr.APP_ID,clientType:Rr.LOGIN_CLIENT_TYPE,returnURL:Rr.RETURN_URL,timeStamp:String(UVr())},headers:{"User-Agent":$P,Referer:Rr.WEB_URL},validateStatus:null}),i=String(n?.data||""),s=f9(i,/'captchaToken' value='(.+?)'/),a=f9(i,/lt = "(.+?)"/),o=f9(i,/reqId = "(.+?)"/),u=f9(i,/paramId = "(.+?)"/);if(!s||!a||!o||!u)throw new Error("\u5929\u7FFC\u767B\u5F55\u9875\u53C2\u6570\u63D0\u53D6\u5931\u8D25");let c={"Content-Type":"application/x-www-form-urlencoded","User-Agent":$P,Referer:"https://open.e.189.cn/",lt:a,REQID:o},l=await Ee.post("https://open.e.189.cn/api/logbox/config/encryptConf.do",jb.default.stringify({appId:Rr.APP_ID}),{headers:c,validateStatus:null}),d=String(l?.data?.data?.pubKey||""),f=String(l?.data?.data?.pre||"{NRP}");if(!d)throw new Error("\u5929\u7FFC\u767B\u5F55\u672A\u8FD4\u56DE RSA \u516C\u94A5");let p=`-----BEGIN PUBLIC KEY----- -${d} ------END PUBLIC KEY-----`,h=new p9;h.setPublicKey(p);let m=f+Buffer.from(h.encrypt(t),"base64").toString("hex").toUpperCase(),y=f+Buffer.from(h.encrypt(r),"base64").toString("hex").toUpperCase();l=await Ee.post("https://open.e.189.cn/api/logbox/oauth2/needcaptcha.do",jb.default.stringify({appKey:Rr.APP_ID,accountType:Rr.ACCOUNT_TYPE,userName:m}),{headers:c,validateStatus:null});let g=String(l?.data||"").trim();if(g&&g!=="0")throw new Error("\u5F53\u524D\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");l=await Ee.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",jb.default.stringify({appKey:Rr.APP_ID,accountType:Rr.ACCOUNT_TYPE,userName:m,password:y,validateCode:"",captchaToken:s,returnUrl:Rr.RETURN_URL,dynamicCheck:"FALSE",clientType:Rr.LOGIN_CLIENT_TYPE,cb_SaveName:"1",isOauth2:"false",state:"",paramId:u}),{headers:c,validateStatus:null});let v=K2t(l?.data,l?.headers),A=l?.data,_=A?typeof A=="string"?A.slice(0,160).replace(/\s+/g," "):JSON.stringify({msg:A?.msg||A?.message||"",result:A?.result||A?.resultCode||"",errorCode:A?.errorCode||""}):"empty",E=qb(n?.headers?.["set-cookie"]).concat(qb(l?.headers?.["set-cookie"]));if(v){let T=v;for(let k=0;k<3&&T;k++){let O=sx(E).join("; "),P=await Ee.get(T,{headers:{...this.headers,Cookie:O},maxRedirects:0,validateStatus:null}),$=qb(P?.headers?.["set-cookie"]);if($.length>0&&E.push(...$),P.status>=300&&P.status<400&&P.headers?.location)T=new URL(P.headers.location,T).toString();else break}}else if(console.warn(`[Tianyi] \u767B\u5F55\u54CD\u5E94\u672A\u63D0\u4F9B\u8DF3\u8F6C\u5730\u5740\uFF0Ccookies=${E.length}, data=${_}`),E.length>0){let T=await Ee.get("https://cloud.189.cn/web/main.action",{headers:{...this.headers,Cookie:sx(E).join("; ")},maxRedirects:0,validateStatus:null}),k=qb(T?.headers?.["set-cookie"]);k.length>0&&E.push(...k)}let S=sx(E).join("; ").trim();if(!S)throw new Error(`\u5929\u7FFC\u767B\u5F55\u5931\u8D25\uFF1A\u672A\u83B7\u53D6\u5230\u6709\u6548 cookie (${_})`);if(this.privateCookie=S,!v){this.tokenInfo=null,console.log(`[Tianyi] \u767B\u5F55\u6210\u529F\uFF08cookie-only\uFF09\uFF0Ccookie length=${S.length}`);return}let C=await Ee.post(`${Rr.API_URL}/getSessionForPC.action`,null,{params:{...gve(),redirectURL:v},headers:{"User-Agent":$P,Cookie:S},validateStatus:null}),I=mve(C.data);if(I)throw new Error(`\u5929\u7FFC\u4F1A\u8BDD\u521D\u59CB\u5316\u5931\u8D25: ${I}`);let N=_ve(await V2t(C.data));if(!N.accessToken||!N.refreshToken||!N.sessionKey||!N.sessionSecret)throw new Error(`\u5929\u7FFC\u4F1A\u8BDD\u521D\u59CB\u5316\u5931\u8D25\uFF1A\u8FD4\u56DE\u5B57\u6BB5\u4E0D\u5B8C\u6574 ${JSON.stringify(C.data||{})}`);this.privateCookie=S,this.tokenInfo=N,console.log(`[Tianyi] \u767B\u5F55\u6210\u529F\uFF0Ccookie length=${S.length}`)}catch(n){console.error("[Tianyi] \u767B\u5F55\u5931\u8D25:",n);let i=new Error("\u5929\u7FFC\u767B\u5F55\u5931\u8D25");throw i.isAuthFailure=!0,i.cause=n,i}}async getShareID(t,r){let n=this.regex.exec(t);if(n&&n[1]){this.shareCode=n[1];let i=this.shareCode.match(/访问码:([a-zA-Z0-9]+)/);this.accessCode=i?i[1]:""}else{let i=t.match(/https?:\/\/cloud\.189\.cn\/t\/([^&]+)/);this.shareCode=i?i[1]:null;let s=this.shareCode.match(/访问码:([a-zA-Z0-9]+)/);this.accessCode=s?s[1]:""}r&&(this.accessCode=r)}async getShareData(t,r){let n=[],i=await this.getShareInfo(t,r);if(i){let s=await this.getShareList(i),a=await this.getShareFile(i);if(a?.length>0){let o=ji(a);n.push(...o)}Array.isArray(s)&&s.length>0&&(await Py(s,async c=>await this.getShareFile(c.id)||[],5)).forEach(c=>{if(c?.length>0){let l=ji(c);n.push(...l)}})}return n.map(s=>({vod_id:An([s.cas?MVr({fileId:s.fileId,fileName:s.sourceName||`${s.name}.cas`,shareId:s.shareId}):s.fileId,s.shareId,s.name||"",s.subtitle?.fileId||""],{structured:!0}),vod_name:s.name,vod_size:s.size}))}async getShareInfo(t,r){t.startsWith("http")?await this.getShareID(t,r):this.shareCode=t;try{if(r){let s=await Ee.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${this.shareCode}&accessCode=${this.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});s.status===200&&(this.shareId=s.data.shareId)}let n=await Ee.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${this.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),i=n.data.fileId;return this.shareId=n.data.shareId||this.shareId,this.shareMode=n.data.shareMode,this.isFolder=n.data.isFolder,i}catch(n){return console.error("\u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",n),null}}async getShareList(t){try{let r=[],n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},i=async(l,d=1)=>{let f=await q2t(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=${d}&pageSize=200&fileId=${l}&shareDirFileId=${l}&isFolder=${this.isFolder}&shareId=${this.shareId}&shareMode=${this.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${this.accessCode}&noCache=${Math.random()}`,{method:"GET",headers:n});return j2t.parse(await f.text())?.fileListAO||{}},s=[],a=1;for(;;){let l=await i(t,a),d=UP(l?.folderList||l?.folder||[]);if(d.length===0)break;s.push(...d);let f=Number(l?.count||d.length||0);if(d.length<200||f>0&&s.length>=f)break;a+=1}if(s.length===0)return null;s.forEach(l=>{r.push({name:l.name,id:l.id,type:"folder"})});let o=async l=>{try{return await this.getShareList(l)}catch{return null}},c=(await Py(s.map(l=>l.id),o,3)).filter(l=>l!=null);return[...r,...c.flat()]}catch(r){return console.error("\u83B7\u53D6\u5206\u4EAB\u5217\u8868\u5931\u8D25:",r),null}}async getShareFile(t){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},n=async(u,c=1)=>{let l=await q2t(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=${c}&pageSize=200&fileId=${u}&shareDirFileId=${u}&isFolder=${this.isFolder}&shareId=${this.shareId}&shareMode=${this.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${this.accessCode}&noCache=${Math.random()}`,{method:"GET",headers:r});return j2t.parse(await l.text())?.fileListAO||{}},i=[],s=[],a=[],o=1;for(;;){let u=await n(t,o),c=UP(u?.fileList||u?.file||[]);if(c.length===0)break;a.push(...c);let l=Number(u?.count||u?.fileListSize||c.length||0);if(c.length<200||l>0&&a.length>=l)break;o+=1}if(a.length===0)return null;for(let u of a){let c=u?.name||"",l=u?.id;u.mediaType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(c)?i.push({name:c,fileId:l,shareId:this.shareId,size:u.size}):hve(c)?i.push({name:FP(c),fileId:l,shareId:this.shareId,size:u.size,cas:!0,sourceName:c}):ss(c)&&s.push({name:c,fileId:l,shareId:this.shareId,size:u.size})}for(let u of i){let c=as(u.name,s,l=>l.name);c?.fileId&&(u.subtitle={fileId:c.fileId,shareId:this.shareId,size:c.size,name:c.name})}return i}catch(r){return console.error("\u83B7\u53D6\u5206\u4EAB\u6587\u4EF6\u5931\u8D25:",r),null}}async getShareUrlNormal(t,r,n={}){let i={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd",Referer:"https://cloud.189.cn/web/main/file",Origin:"https://cloud.189.cn","X-Requested-With":"XMLHttpRequest"},s=n?.silentAuthFailure===!0;for(this.resetShareAuthRetryState();;)try{if(!this.hasShareCookie()){if(!this.account||!this.password)throw new Error("\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\u4E3A\u7A7A\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u586B\u5199");if(await this.loginForNormalShare(this.account,this.password),!this.hasShareCookie()){let c=this.buildShareAuthError(0,"share cookie empty after login","\u5929\u7FFC\u666E\u901A\u5206\u4EAB\u767B\u5F55\u540E\u4ECD\u672A\u62FF\u5230 cookie");throw this.rememberShareAuthError(c),c}}i.Cookie=String(this.shareCookie||"").trim();let a=await Ee.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${t}&type=4&key=noCache`,Yp({headers:i,validateStatus:null}));if(!a?.data?.normal?.url)throw this.buildShareAuthError(a?.status,a?.data);let o=await Ee.get(a.data.normal.url,Yp({maxRedirects:0,validateStatus:c=>c>=200&&c<400})),u="";return o.status>=300&&o.status<400&&o.headers.location?u=o.headers.location:u=a.data.normal.url,this.resetShareAuthRetryState(),u}catch(a){let o=a?.response?.status,u=a?.isAuthFailure||J2t(o),c=u?H2t(a?.response?.data,o):{authFailure:!1,category:"unknown",detail:Z2t(a?.response?.data||a?.message||""),message:a?.message||"\u83B7\u53D6\u5206\u4EABURL\u5931\u8D25",retryable:!1,retryAdvice:"none"};u&&(a.authCategory=a?.authCategory||c.category,a.userMessage=a?.userMessage||c.message,a.retryable=c.retryable,a.retryAdvice=c.retryAdvice,this.rememberShareAuthError(a));let l=c.retryAdvice==="force_share_login_ipv4_once"?1:DVr;if(u&&c.retryable&&this.account&&this.password&&this._shareAuthRetryCountawait new m9().getShareData(e,t),getShareUrl:async(e,t,r={})=>{let n=new m9;return n.shareId=t,await n.getShareUrl(e,t,r)}};Yr();var ga=Se(di(),1);var _9=class{constructor(){this.regexs=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&]+)/],this.x=ga.default.enc.Utf8.parse("PVGDwmcvfs1uV3d1"),this.baseUrl="https://share-kd-njs.yun.139.com/yun-share/richlifeApp/devapp/IOutLink/",this.baseHeader={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json","hcy-cool-flag":"1","x-deviceinfo":"||3|12.27.0|chrome|131.0.0.0|5c7c68368f048245e1ce47f1c0f8f2d0||windows 10|1536X695|zh-CN|||"},this.linkID="",this.passwd="",this.cache=new Map}encrypt(t){let r=ga.default.lib.WordArray.random(16),n;if(typeof t=="string"){let i=ga.default.enc.Utf8.parse(t);n=ga.default.AES.encrypt(i,this.x,{iv:r,mode:ga.default.mode.CBC,padding:ga.default.pad.Pkcs7})}else if(typeof t=="object"&&t!==null){let i=ga.default.enc.Utf8.parse(JSON.stringify(t));n=ga.default.AES.encrypt(i,this.x,{iv:r,mode:ga.default.mode.CBC,padding:ga.default.pad.Pkcs7})}else throw new Error("Invalid data type");return ga.default.enc.Base64.stringify(r.concat(n.ciphertext))}decrypt(t){let r=ga.default.enc.Base64.parse(t),n=r.clone(),i=n.words.splice(4);n.init(n.words),r.init(i);let s=ga.default.enc.Base64.stringify(r);return ga.default.AES.decrypt(s,this.x,{iv:n,mode:ga.default.mode.CBC,padding:ga.default.pad.Pkcs7}).toString(ga.default.enc.Utf8)}async getShareID(t){for(let r of this.regexs){let n=r.exec(t);if(n&&n[1]){this.linkID=n[1];break}}}async getShareInfo(t,r={}){if(!this.linkID)return console.error("linkID is not set"),null;let n=Math.max(1,Number(r.pageNum||1)),i=Math.max(1,Math.min(200,Number(r.pageSize||200))),s=`${this.linkID}-${t}-${n}-${i}`,a=this.cache.get(s);if(a)return a;let o=JSON.stringify(this.encrypt(JSON.stringify({getOutLinkInfoReq:{account:"",linkID:this.linkID,passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:n,pCaID:t,eNum:i},commonAccountInfo:{account:"",accountType:1}})));try{let u=await Ee.post(this.baseUrl+"getOutLinkInfoV6",o,{headers:this.baseHeader,timeout:15e3});if(u.status!==200)return null;let c=JSON.parse(this.decrypt(u.data)).data;return this.cache.set(s,c),c}catch(u){return console.error("\u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",u),null}}async getShareData(t){if(!t)return[];let r=t.startsWith("http"),n=r?"root":t;return r&&await this.getShareID(t),await this.getFilesWithFolderSort(n)}async getFilesWithFolderSort(t){try{let r=[],n={shareInfoCalls:0,folderVisits:0},i=Date.now(),s=async(o,u)=>{let c=[],l=[],d=[],f=1,p=200;for(;;){let h=await this.getShareInfo(o,{pageNum:f,pageSize:p});if(u&&(u.shareInfoCalls+=1),f===1){let y=Array.isArray(h?.caLst)?h.caLst:[],g=/App|活动中心|免费|1T空间|免流/;d.push(...y.filter(v=>!g.test(v.caName)))}let m=Array.isArray(h?.coLst)?h.coLst:[];if(m.length===0)break;for(let y of m){if(!y?.coName)continue;let g={name:y.coName,contentId:y.coID,linkID:this.linkID,size:y.coSize};y.coType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(y.coName)?c.push(g):ss(y.coName)&&l.push(g)}if(m.lengthy.name);m?.contentId&&(h.subtitle={contentId:m.contentId,name:m.name})}return{videos:c,folders:d}},a=async o=>{n.folderVisits+=1;let u=await s(o,n);if(u.videos?.length>0){let c=ji(u.videos);r.push(...c)}u.folders?.length>0&&await Py(u.folders,async c=>{await a(c.path)},5)};return await a(t),console.log("[139 detail] perf",JSON.stringify({linkID:this.linkID,ms:Date.now()-i,videos:r.length,...n})),r.map(o=>({vod_name:o.name,vod_id:An([o.contentId,o.linkID,o.subtitle?.contentId||""],{structured:!0}),vod_size:o.size}))}catch(r){return console.error("\u83B7\u53D6\u6587\u4EF6\u5931\u8D25:",r),[]}}async getCurrentDirFiles(t,r){try{let n=[],i=[],s=1,a=200;for(;;){let o=await this.getShareInfo(t,{pageNum:s,pageSize:a});r&&(r.shareInfoCalls+=1);let u=Array.isArray(o?.coLst)?o.coLst:[];if(u.length===0)break;for(let c of u){if(!c?.coName)continue;let l={name:c.coName,contentId:c.coID,linkID:this.linkID,size:c.coSize};c.coType===3||/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|f4v|vob|rm|iso|asf|divx|m2ts)$/i.test(c.coName)?n.push(l):ss(c.coName)&&i.push(l)}if(u.lengthc.name);u?.contentId&&(o.subtitle={contentId:u.contentId,name:u.name})}return n}catch(n){return console.error("\u83B7\u53D6\u5F53\u524D\u76EE\u5F55\u6587\u4EF6\u5931\u8D25:",n),[]}}async processSubFolders(t,r,n){try{let i=await this.getShareInfo(t);if(n&&(n.shareInfoCalls+=1),!i||!i.caLst)return;let s=i.caLst,a=/App|活动中心|免费|1T空间|免流/,o=s.filter(c=>!a.test(c.caName));await Py(o,async c=>{n&&(n.folderVisits+=1);try{let l=await this.getCurrentDirFiles(c.path,n);if(l?.length>0){let d=ji(l);r.push(...d)}await this.processSubFolders(c.path,r,n)}catch(l){console.error(`\u5904\u7406\u5B50\u6587\u4EF6\u5939\u5931\u8D25 ${c.caName}:`,l)}},5)}catch(i){console.error("\u5904\u7406\u5B50\u6587\u4EF6\u5939\u5931\u8D25:",i)}}async getSharePlay(t,r){let n={getContentInfoFromOutLinkReq:{contentId:t,linkID:r,account:""},commonAccountInfo:{account:"",accountType:1}};try{let i=await Ee.post(this.baseUrl+"getContentInfoFromOutLink",n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br, zstd","Content-Type":"application/json"},timeout:15e3});if(i.status===200&&i.data.data)return i.data.data.contentInfo.presentURL}catch(i){throw console.error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25:",i),i}return null}};async function tNt(e,t){let r=await A9.getShareData(e);if(!r?.length)return[];let n=await Pn("yidong");return pa(n,r)}var A9={getShareData:async e=>{let t=new _9;if(!e)return[];let r=e.startsWith("http"),n=r?"root":e;return r?await t.getShareID(e):t.linkID=e,await t.getFilesWithFolderSort(n)},getSharePlay:async(e,t)=>{let r=new _9;r.linkID=t;let n={getContentInfoFromOutLinkReq:{contentId:e,linkID:t,account:""},commonAccountInfo:{account:"",accountType:1}};try{let i=await Ee.post(r.baseUrl+"getContentInfoFromOutLink",n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br, zstd","Content-Type":"application/json"},timeout:15e3});if(i.status===200&&i.data.data)return i.data.data.contentInfo.presentURL}catch(i){throw console.error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25:",i),i}return null}};Yr();var vve=Se(di(),1);function GVr(e){return Buffer.from(e,"base64").toString("utf8")}var bve,Eve={},v9={set(e,t){Eve[e]=t,bve.push(`/pan123/${e}`,t)},get(e){return Eve[e]}},b9=async e=>{bve=e.server.db,Eve=await bve.getObjectDefault("/pan123",{})};async function rNt(e,t){t&&await b9(t);let r=qP.getShareData(e);if(!r)return[];let n=await qP.getFilesByShareUrl(r);if(!n?.length)return[];let i=await Pn("123");return pa(i,n)}var ox=class{constructor(){this.regex=/https?:\/\/(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/([^?&#]+)/,this.api="https://www.123684.com/b/api/share/",this.loginUrl="https://login.123pan.com/api/user/sign_in",this.cate="",this.SharePwd=""}async init(){if(this.passport,this.password,this.auth)try{JSON.parse(vve.default.enc.Base64.parse(this.auth.split(".")[1]).toString(vve.default.enc.Utf8)).exp>Math.floor(Date.now()/1e3)||await this.login()}catch{await this.login()}else await this.login()}get passport(){return v9.get("pan_passport")}get password(){return v9.get("pan_password")}get auth(){return v9.get("pan_auth")}async login(){let t=JSON.stringify({passport:this.passport,password:this.password,remember:!0}),r={method:"POST",url:this.loginUrl,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36","Content-Type":"application/json","App-Version":"43",Referer:"https://login.123pan.com/centerlogin?redirect_url=https%3A%2F%2Fwww.123684.com&source_page=website"},data:t};try{let i=(await Ee.request(r)).data;if(i?.data?.token)v9.set("pan_auth",i.data.token);else throw new Error("\u767B\u5F55\u5931\u8D25")}catch(n){throw console.error("\u767B\u5F55\u5931\u8D25:",n),Xr.toast("123\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),n}}getShareData(t){t=decodeURIComponent(t);let r=this.regex.exec(t);if(!r||r.length<2)return console.error("\u65E0\u6CD5\u5339\u914D123\u7F51\u76D8URL:",t),null;let n=r[1],i="",a=/[?&](?:pwd|password|提取码|passcode)=([^&#]+)/i.exec(t);return a&&a[1]&&(i=a[1]),{shareKey:n,sharePwd:i}}async getFilesByShareUrl(t){try{let r=[],n=typeof t=="string"?t:t.shareKey,i=typeof t=="object"&&t.sharePwd||"",s={scanCalls:0,folderVisits:0},a=Date.now(),o=async(c,l)=>{let d=[],f=[],p=[],h=1,m=100;for(;;){let y=await Ee.get(this.api+"get",{params:{limit:String(m),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:n,SharePwd:i,ParentFileId:c,Page:h.toString()},timeout:1e4});if(l&&(l.scanCalls+=1),y.status!==200||y.data.code===5103)break;let g=y.data.data||{},v=g.InfoList||[];for(let _ of v)_.Category===0?d.push({filename:_.FileName,shareKey:n,SharePwd:i,next:g.Next||"0",fileId:_.FileId}):_.Category===2?f.push({ShareKey:n,FileId:_.FileId,S3KeyFlag:_.S3KeyFlag,Size:_.Size,Etag:_.Etag,FileName:_.FileName}):_.Category!==0&&ss(_.FileName)&&p.push({ShareKey:n,FileId:_.FileId,S3KeyFlag:_.S3KeyFlag,Size:_.Size,Etag:_.Etag,FileName:_.FileName});let A=Number(g?.Total||g?.total||0);if(v.length0&&h*m>=A)break;h++}for(let y of f){let g=as(y.FileName,p,v=>v.FileName);g?.FileId&&(y.subtitle={FileId:g.FileId,S3KeyFlag:g.S3KeyFlag,Size:g.Size,Etag:g.Etag,FileName:g.FileName})}return{folders:d,videos:f}},u=async(c=0,l="")=>{s.folderVisits+=1;try{let d=await o(c,s),f=d?.videos||[];if(f.length>0){let h=ji(f);r.push(...h)}let p=d?.folders||[];if(p.length===0)return;for(let h of p)await u(h.fileId||h.FileId,l+(l?"/":"")+(h.filename||h.FileName))}catch(d){console.error(`[123\u7F51\u76D8] \u5904\u7406\u6587\u4EF6\u5939\u5931\u8D25 parentFileId=${c}:`,d.message)}};return await u(0,""),console.log("[123 detail] perf",JSON.stringify({shareKey:n,ms:Date.now()-a,videos:r.length,...s})),r.map(c=>({vod_id:An([c.ShareKey,c.FileId,c.S3KeyFlag,c.Size,c.Etag,c.subtitle?.FileId||"",c.subtitle?.S3KeyFlag||"",c.subtitle?.Size||"",c.subtitle?.Etag||""],{structured:!0}),vod_name:c.FileName,vod_size:c.Size}))}catch(r){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u6587\u4EF6\u5931\u8D25:",r),[]}}async getShareInfo(t,r,n,i,s){try{let a=[],o=1,u=100;for(;;){let c=await Ee.get(this.api+"get",{params:{limit:String(u),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:t,SharePwd:r,ParentFileId:i,Page:o.toString()},timeout:1e4});if(s&&(s.infoCalls+=1),c.status===200&&c.data.code!==5103){let l=c.data.data,d=l.InfoList||[],f=d.filter(h=>h.Category===0);a.push(...f.map(h=>({filename:h.FileName,shareKey:t,SharePwd:r,next:l.Next||"0",fileId:h.FileId})));let p=Number(l?.Total||l?.total||0);if(d.length0&&o*u>=p)break;o++}else break}return a}catch(a){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u4FE1\u606F\u5931\u8D25:",a.message),[]}}async getShareList(t,r,n,i,s){try{let a=[],o=[],u=1,c=100;for(;;){let l=await Ee.get(this.api+"get",{params:{limit:String(c),next:"0",orderBy:"file_name",orderDirection:"asc",shareKey:t,SharePwd:r,ParentFileId:i,Page:u.toString()},timeout:1e4});s&&(s.listCalls+=1);let d=l.data.data,f=d?.InfoList||[];f.forEach(h=>{h.Category===2?a.push({ShareKey:t,FileId:h.FileId,S3KeyFlag:h.S3KeyFlag,Size:h.Size,Etag:h.Etag,FileName:h.FileName}):h.Category!==0&&ss(h.FileName)&&o.push({ShareKey:t,FileId:h.FileId,S3KeyFlag:h.S3KeyFlag,Size:h.Size,Etag:h.Etag,FileName:h.FileName})});let p=Number(d?.Total||d?.total||0);if(f.length0&&u*c>=p)break;u++}for(let l of a){let d=as(l.FileName,o,f=>f.FileName);d?.FileId&&(l.subtitle={FileId:d.FileId,S3KeyFlag:d.S3KeyFlag,Size:d.Size,Etag:d.Etag,FileName:d.FileName})}return a}catch(a){return console.error("[123\u7F51\u76D8] \u83B7\u53D6\u5206\u4EAB\u5217\u8868\u5931\u8D25:",a),[]}}async getDownload(t,r,n,i,s){await this.init();let a=JSON.stringify({ShareKey:t,FileID:r,S3KeyFlag:n,Size:i,Etag:s}),o={method:"POST",url:`${this.api}download/info`,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android"},data:a,timeout:15e3};try{let c=(await Ee.request(o)).data.data;return GVr(new URL(c.DownloadURL).searchParams.get("params"))}catch(u){throw console.error("\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25:",u),u}}async getLiveTranscoding(t,r,n,i,s){await this.init();let a={method:"GET",url:"https://www.123684.com/b/api/video/play/info",headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Authorization:`Bearer ${this.auth}`,"Content-Type":"application/json;charset=UTF-8",platform:"android"},params:{etag:s,size:i,from:"1",shareKey:t},timeout:15e3};try{let u=(await Ee.request(a)).data.data?.video_play_info||[],c=[];return u.forEach(l=>{l.url&&c.push({name:l.resolution,url:l.url})}),c}catch(o){return console.error("\u83B7\u53D6\u8F6C\u7801\u4FE1\u606F\u5931\u8D25:",o),[]}}};var qP={getShareData:e=>new ox().getShareData(e),getFilesByShareUrl:async e=>await new ox().getFilesByShareUrl(e),getDownload:async(e,t,r,n,i)=>await new ox().getDownload(e,t,r,n,i),getLiveTranscoding:async(e,t,r,n,i)=>await new ox().getLiveTranscoding(e,t,r,n,i)};Yr();Yr();var nNt=Se(kb(),1),jP=Se(di(),1);var Sve="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",ux={},E9=async e=>{let t=String(e.config?.y115?.cookie||""),r=jP.default.enc.Hex.stringify(jP.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/y115",{});return n[r]?n[r]:t?(await e.db.push(`/y115/${r}`,t),t):""},YVr=async(e,t)=>{let r=jP.default.enc.Hex.stringify(jP.default.MD5(e.config.y115.cookie)).toString();await e.db.push(`/y115/${r}`,t)};async function wve(e){e.get("/qrcode",async(t,r)=>{ux=(await Ee.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{"User-Agent":Sve,referer:"https://115.com/"})).data.data;let i=await nNt.default.toBuffer(ux.qrcode,{width:300,height:300});r.send(i)}),e.post("/cookie",(t,r)=>{Ee.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${ux.sign}&time=${ux.time}&uid=${ux.uid}`,{"User-Agent":Sve,referer:"https://115.com/"}).then(n=>n.data.data.status===2?Promise.resolve():Promise.reject(new Error(`\u626B\u7801\u72B6\u6001\u68C0\u6D4B\u5931\u8D25: ${n.data.message}`))).then(async()=>{let n=new URLSearchParams({account:ux.uid,app:"android"}),i=await Ee.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",n,{headers:{"User-Agent":Sve,referer:"https://115.com/"}});if(i.data.state===1)r.send({code:0,data:Mp(i.headers["set-cookie"]).join("")});else return Promise.reject(new Error(`\u767B\u5F55\u5931\u8D25\uFF1A${i.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await E9(t.server)})}),e.put("/cookie",async(t,r)=>{await YVr(t.server,t.body.cookie),r.send({code:0})})}var oNt=require("http");var WVr=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/;function XVr(e){let t=WVr.exec(e);return t?{shareCode:t[1],receiveCode:t[2]}:null}var JVr=new Set(["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso","rmvb","rm","m4v","f4v","m4a"]);function ZVr(e){if(!e)return!1;let t=e.lastIndexOf(".");if(t===-1)return!1;let r=e.slice(t+1).toLowerCase();return JVr.has(r)}async function e7r(e,t="GET",r=null,n=null){let i=new URL(e);return new Promise((s,a)=>{let o={hostname:i.hostname,path:`${i.pathname}${i.search}`,method:t,headers:r},u=(0,oNt.request)(o,c=>{let l="";c.on("data",d=>{l+=d}),c.on("end",()=>{try{s(JSON.parse(l))}catch{a(l)}})});u.on("error",c=>{a(c)}),u.setTimeout(1e4,()=>{u.destroy(),a(new Error("\u8BF7\u6C42\u8D85\u65F6"))}),n&&u.write(n),u.end()})}var iNt=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),uNt=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,cNt=0x10001n;function lNt(e,t){t==null&&(t=Math.ceil(e.toString(16).length/2));let r=new Uint8Array(t),n=e;for(let i=t-1;i>=0;i--)r[i]=Number(n&0xffn),n>>=8n;return r}function dNt(e){let t=0n;for(let r of e)t=t<<8n|BigInt(r);return t}function*Ive(e,t,r=1){for(let n=e+r;n0n;)t&1n&&(n=n*e%r),t>>=1n,e=e*e%r;return n}function n7r(e){(typeof e=="string"||e instanceof String)&&(e=new TextEncoder().encode(e));let t=new Uint8Array(16+e.length);t.set(S9(S9(e,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(t.length/117)*128),n=0;for(let[i,s]of Ive(0,t.length,117)){let a=t.subarray(i,s),o=fNt(r7r(a),cNt,uNt);r.set(lNt(o,128),n),n+=128}return Buffer.from(r).toString("base64")}function i7r(e){let t=new Uint8Array(Buffer.from(e,"base64")),r=[];for(let[s,a]of Ive(0,t.length,128)){let o=fNt(dNt(t.subarray(s,a)),cNt,uNt),u=lNt(o);r.push(...u.subarray(u.indexOf(0)+1))}r=new Uint8Array(r);let n=t7r(r.subarray(0,16),12),i=S9(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(S9(i,new Uint8Array([141,165,165,141])))}async function s7r({shareCode:e,receiveCode:t,dirID:r=""}){let n=[],i=async(s,a="")=>{try{let o=0,u=9999,c=[];for(;;){let g=(await Ee.get("https://webapi.115.com/share/snap",{params:{share_code:e,receive_code:t,cid:s,limit:String(u),offset:String(o)},timeout:15e3})).data?.data?.list||[];if(g.length===0||(c.push(...g),g.lengthv.n);g?.fid&&(y.subtitle={fid:g.fid})}let h=ji(f);n.push(...h);let m=d.map(y=>i(y.cid,a+(a?"/":"")+y.n));await Promise.all(m)}catch(o){console.error("\u83B7\u53D6115\u6587\u4EF6\u5217\u8868\u5931\u8D25:",o.message)}};return await i(r||e,""),n}var aNt=!1;async function xve(e){aNt||(aNt=!0)}async function pNt(e,t){try{t&&await xve(t);let r=XVr(e);if(!r)return[];let n=await s7r(r);if(!n?.length)return[];let i=await Pn("115"),s=n.map(a=>({vod_id:An([r.shareCode,r.receiveCode,a.fid,a.subtitle?.fid||""],{structured:!0}),vod_name:a.n,vod_size:a.s}));return pa(i,s)}catch(r){return console.error("115\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",r),[]}}async function hNt(e,t){try{await xve(e);let r=e.body.id,n=await E9(e.server),{shareCode:i,receiveCode:s,fileId:a,subtitleId:o=""}=fi(r,{fieldOrder:["shareCode","receiveCode","fileId","subtitleId"]}),u=await gNt(i,s,a,n);if(!u)return Fa("115 \u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25");let c=[];if(o){let l=encodeURIComponent(An([s,o],{structured:!0})),d=OI(e,"115","subt",i,l,".bin");c.push(s_e({url:d,name:"\u5916\u6302\u5B57\u5E55",format:"bin"}))}return su({parse:0,urls:["\u539F\u753B",u],subtitles:c})}catch(r){return console.error("115\u64AD\u653E\u5931\u8D25:",r),console.error("\u9519\u8BEF\u8BE6\u60C5:",r.stack),Fa("115 \u64AD\u653E\u5931\u8D25")}}async function mNt(e,t){try{await xve(e);let{site:r,flag:n,shareId:i,fileId:s}=e.params;if(r!=="115"||n!=="subt")return;let{receiveCode:a,subtitleFileId:o}=fi(String(s||""),{fieldOrder:["receiveCode","subtitleFileId"]});if(!i||!a||!o)return t.code(400),"Invalid subtitle parameters";let u=await E9(e.server),c=await gNt(i,a,o,u);if(!c)return t.code(404),"Subtitle not found";t.redirect(c)}catch(r){return console.error("115\u5B57\u5E55\u4EE3\u7406\u5931\u8D25:",r),t.code(500),"Subtitle proxy error"}}async function gNt(e,t,r,n){let i=`data=${encodeURIComponent(n7r(`{"share_code":"${e}","receive_code":"${t}","file_id":"${r}"}`))}`,s=await e7r("http://pro.api.115.com/app/share/downurl","POST",{"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(i),Cookie:n},i);if(s?.error)return s.error.includes?.("\u767B\u5F55")&&Xr.toast("115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",{duration:5}),null;let a=JSON.parse(i7r(s.data));return a?.url?.url?a.url.url:(console.error("115\u83B7\u53D6\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25:",a),null)}Yr();var vNt=Se(MP(),1),KP=Se(di(),1);var Cve=class{constructor(){this.localData={},this.db=null,this.initialized=!1}async init(t){this.db=t;try{let r=await this.db.getObjectDefault("/baidu_driver",{});return this.localData=r,this.initialized=!0,!0}catch{return this.localData={},this.initialized=!1,!1}}async set(t,r){if(!this.db)return!1;this.localData[t]=r;try{let n={};try{n=await this.db.getObjectDefault("/baidu_driver",{})}catch{}let i={...n,[t]:r};return await this.db.push("/baidu_driver",i),!0}catch{return!1}}get(t){return this.localData[t]}async delete(t){if(!this.db)return!1;delete this.localData[t];try{let r=await this.db.getObjectDefault("/baidu_driver",{});return delete r[t],await this.db.push("/baidu_driver",r),!0}catch{return!1}}getAll(){return{...this.localData}}async clear(){this.localData={};try{return await this.db.delete("/baidu_driver"),!0}catch{return!1}}isInitialized(){return this.initialized}},Zu=new Cve,Tve=new Map,bNt=async e=>{Zu.isInitialized()||await Zu.init(e.server.db)};var VP=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.randsk=""}get cookie(){return Zu.get("baidu_cookie")||""}async getSurl(t){this.link=t;let r=this.regex.exec(t);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.slice(1),this.pwd=r[2]||"")}async getSign(){let t={...this.headers,cookie:this.cookie},r=await Ee.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:t,timeout:8e3});if(!r.data?.data?.sign)throw new Error("\u83B7\u53D6sign\u5931\u8D25");return r.data.data.sign}async getRandsk(){if(this.randsk)return this.randsk;let t=vNt.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=this.link;try{r=new URL(this.link).toString()}catch{r=`${this.api}/s/${this.surl}${this.pwd?`?pwd=${encodeURIComponent(this.pwd)}`:""}`}let n=await Ee.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,t,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Referer:r},timeout:1e4});if(!n.data?.randsk)throw console.warn("[baidu detail] getRandsk missing randsk",{errno:n.data?.errno,hasCookie:!!this.cookie,surl:this.surl,shorturl:this.shorturl,body:typeof n.data=="object"?JSON.stringify(n.data).slice(0,300):String(n.data||"").slice(0,300)}),new Error("\u83B7\u53D6randsk\u5931\u8D25");let i=n.data.randsk,s="BDCLND="+i,a=this.cookie;return a.includes("BDCLND")?(a=a.split(";").map(o=>/BDCLND/.test(o)?s:o).join(";"),a!==this.cookie&&await Zu.set("baidu_cookie",a)):(a=a+";"+s,await Zu.set("baidu_cookie",a)),this.randsk=i,i}async getShareList(){let t=Date.now();await this.getRandsk(),this.headers.cookie=this.cookie;let r=async(s=1,a=[],o={})=>{let c=(await Ee.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=${s}&num=100&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers,timeout:1e4})).data;if(s===1&&(o.uk=c?.uk||o.uk||"",o.shareid=c?.share_id||c?.shareid||o.shareid||""),Number(c?.errno)===-21)return console.warn("[baidu detail] share canceled",JSON.stringify({surl:this.surl,shorturl:this.shorturl})),o.canceled=!0,{items:a,meta:o};if(c.errno!==0||!Array.isArray(c.list)||c.list.length===0)return{items:a,meta:o};a.push(...c.list);let l=Number(c.has_more||c.hasMore||0)===1||Number(c.records?.has_more||0)===1,d=Number(c.num||100);return l||c.list.length>=d?await r(s+1,a,o):{items:a,meta:o}},n=await r(),i=n.items||[];if(n.meta?.canceled)return[];if(i.length>0){let s=[],a=[];this.uk=n.meta?.uk||i[0]?.uk||this.uk,this.shareid=n.meta?.shareid||i[0]?.share_id||i[0]?.shareid||this.shareid;let o=[],u=[];for(let l of i)if((l.category==="6"||l.category===6)&&a.push(l.path),l.category==="1"||l.category===1)l.name=l.server_filename||l.path.split("/").pop(),o.push(l);else{let d=l.server_filename||l.path?.split("/").pop()||"";ss(d)&&(l.name=d,u.push(l))}let c=ji(o);for(let l of c){let d=l.fs_id||l.fsid,f=as(l.name,u,y=>y.server_filename||y.path?.split("/").pop()||y.name||""),p=f&&(f.fs_id||f.fsid)||"",h=encodeURIComponent(this.pwd||""),m=l.path.replaceAll("#","\0");Tve.set(`${this.surl}_${d}`,l.size),s.push({vod_name:l.name,vod_id:An([m,this.uk,this.shareid,d,this.surl,h,p],{structured:!0}),vod_size:l.size})}if(a.length>0){let l=Date.now(),d=a.map(p=>this.getSharepath(p));(await Promise.allSettled(d)).forEach(p=>{p.status==="fulfilled"&&p.value?.length>0&&s.push(...p.value)}),console.log("[baidu detail] perf",JSON.stringify({surl:this.surl,rootItems:i.length,rootDirs:a.length,totalVideos:s.length,subdirMs:Date.now()-l,totalMs:Date.now()-t}))}else console.log("[baidu detail] perf",JSON.stringify({surl:this.surl,rootItems:i.length,rootDirs:0,totalVideos:s.length,subdirMs:0,totalMs:Date.now()-t}));return s}return null}async getSharepath(t){this.headers.cookie=this.cookie;let r=async(i=1,s=[])=>{let o=(await Ee.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=${i}&num=100&dir=${encodeURIComponent(t)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers,timeout:8e3})).data;if(o.errno!==0||!Array.isArray(o.list)||o.list.length===0)return s;s.push(...o.list);let u=Number(o.has_more||o.hasMore||0)===1||Number(o.records?.has_more||0)===1,c=Number(o.num||100);return u||o.list.length>=c?await r(i+1,s):s},n=await r();if(n.length>0){let i=[],s=[],a=[];for(let c of n)if((c.category==="6"||c.category===6)&&i.push(c.path),c.category==="1"||c.category===1)c.name=c.server_filename||c.path.split("/").pop(),s.push(c);else{let l=c.server_filename||c.path?.split("/").pop()||"";ss(l)&&(c.name=l,a.push(c))}let o=ji(s),u=[];for(let c of o){let l=c.fs_id||c.fsid,d=as(c.name,a,m=>m.server_filename||m.path?.split("/").pop()||m.name||""),f=d&&(d.fs_id||d.fsid)||"",p=encodeURIComponent(this.pwd||""),h=c.path.replaceAll("#","\0");Tve.set(`${this.surl}_${l}`,c.size),u.push({vod_name:c.name,vod_id:An([h,this.uk,this.shareid,l,this.surl,p,f],{structured:!0}),vod_size:c.size})}if(i.length>0){let c=i.map(f=>this.getSharepath(f)),d=(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled"&&f.value?.length>0).flatMap(f=>f.value);return[...u,...d]}return u}return[]}sha1(t){return KP.default.SHA1(t).toString(KP.default.enc.Hex)}async getUid(){this.headers.cookie=this.cookie;let t=await Ee.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:this.headers,timeout:8e3});return t.data?.data?.fields?.uid?t.data.data.fields.uid:"default_uid"}async getShareUrl(t,r,n,i){t=t.replaceAll("\0","#");let s=await this.getSign(),a=Math.floor(Date.now()/1e3),o=[];return this.type.forEach(u=>{o.push({name:u.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${i}&sign=${s}×tamp=${a}&shareid=${n}&type=${u}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),o}async getAppShareUrl(t,r,n,i){t=t.replaceAll("\0","#");let s=await this.getRandsk(),a=await this.getUid(),o={...this.headers,"User-Agent":"netdisk;P2SP;2.2.91.136;android-android;"},u="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",c=String(Date.now()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+c+u+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+i+"&sekey="+s+"&origin=dlna&devuid="+u+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+c+"&rand="+l,f=await Ee.get(d,{headers:o,timeout:1e4});return f.data.errno===0&&f.data.list.length>0?f.data.list[0].dlink:null}},dx="app",Ove="web",ENt="redirect",SNt="chunk",qc="play",t_="subtitle",wNt=30*60*1e3,o7r=8,cx="invalidate",Vb="retain",lx="mark",u7r=5*60*1e3,c7r=2*60*1e3,l7r=10*60*1e3,d7r=2500,f7r=60*1e3,HP=Object.create(null);function Pve(e=""){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}function p7r(e=""){if(fi(e).length>=7){let n=fi(e,{fieldOrder:["path","uk","shareid","fsid","surl","encodedPwd","subtitleFsid"]});return{path:n.path||"",uk:n.uk||"",shareid:n.shareid||"",fsid:n.fsid||"",surl:n.surl||"",pwd:Pve(n.encodedPwd||""),subtitleFsid:n.subtitleFsid||""}}let r=fi(e,{fieldOrder:["path","uk","shareid","fsid","surl","subtitleFsid"]});return{path:r.path||"",uk:r.uk||"",shareid:r.shareid||"",fsid:r.fsid||"",surl:r.surl||"",pwd:"",subtitleFsid:r.subtitleFsid||""}}function h7r(e){return e&&Zu.get(`baidu_share_${e}`)||null}function m7r(e={},t=""){let r=h7r(t);return{surl:e.surl||r?.surl||"",pwd:e.pwd||r?.pwd||"",uk:e.uk||r?.uk||"",shareid:e.shareid||r?.shareid||"",link:e.link||r?.link||""}}function g7r(e,{surl:t="",pwd:r="",uk:n="",shareid:i=""}){e.surl=t,e.shorturl=e.surl?e.surl.slice(1):"",e.pwd=r,e.link=e.surl?`https://pan.baidu.com/s/${e.surl}${e.pwd?`?pwd=${e.pwd}`:""}`:"",e.uk=n,e.shareid=i}function y7r(e,t={},r=""){let n=m7r(t,r);return g7r(e,n),n.link&&(e.link=n.link),n}async function _7r(e){e.pwd&&(await e.getRandsk(),e.headers.cookie=e.cookie)}async function INt(e={},t=""){let r=new VP,n=y7r(r,e,t);return await _7r(r),{drive:r,shareContext:n}}function A7r({fileId:e,fileSize:t,directUrl:r}){return{kind:qc,source:dx,directUrl:r,fileId:e,fileSize:t,requestHeaders:{"User-Agent":"netdisk;P2SP;2.2.91.136;android-android;",Referer:"https://pan.baidu.com/"}}}function v7r({fileId:e,fileSize:t,qualityUrls:r}){return{kind:qc,source:Ove,qualityUrls:Array.isArray(r)?r.map(n=>({name:n.name,url:n.url})):[],fileId:e,fileSize:t,requestHeaders:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Referer:"https://pan.baidu.com/"}}}function xNt({fileId:e,directUrl:t}){return{kind:t_,source:dx,directUrl:t,fileId:e,requestHeaders:{"User-Agent":"netdisk;P2SP;2.2.91.136;android-android;",Referer:"https://pan.baidu.com/"}}}function Nve(e){return!!e&&typeof e=="object"&&typeof e.source=="string"}function b7r(e){return e?.kind===t_?t_:qc}function Mve(e){return!e||typeof e!="object"||Nve(e)?!1:!!(e.recordsByPrimaryKey||e.primaryKeyByFileAlias||e.entriesByFileId||e.latestEntry||e.latestPrimaryKey)}function Lve(e=""){let t=String(e||""),r=[],n=new Set,i=s=>{let a=String(s||"");!a||n.has(a)||(n.add(a),r.push(a))};i(t),i(Pve(t));try{i(encodeURIComponent(t))}catch{}return r}function Rve(){return{latestPrimaryKey:"",recordsByPrimaryKey:Object.create(null),primaryKeyByFileAlias:Object.create(null)}}function CNt(e,t){let r={...e,kind:b7r(e)},n=Lve(t||e.fileId),i=n[0]||String(e.fileId||""),s=Date.now();return{kind:r.kind,primaryFileKey:i,fileKeys:n,cacheEntry:r,createdAt:s,lastAccessAt:s,expiresAt:s+wNt}}function I9(e,t){let r=e.recordsByPrimaryKey[t];if(r){for(let n of r.fileKeys||[])e.primaryKeyByFileAlias[n]===t&&delete e.primaryKeyByFileAlias[n];delete e.recordsByPrimaryKey[t],e.latestPrimaryKey===t&&(e.latestPrimaryKey="")}}function TNt(e,t){e.recordsByPrimaryKey[t.primaryFileKey]=t;for(let r of t.fileKeys)e.primaryKeyByFileAlias[r]=t.primaryFileKey;e.latestPrimaryKey=t.primaryFileKey}function yNt(e){let t=Date.now();e.lastAccessAt=t;let r=fx(e),n=r?.disposition===lx?c7r:r?.disposition===Vb?l7r:wNt;return e.expiresAt=t+n,e}function fx(e){let t=e?.failureState;return!t?.observedAt||Date.now()-t.observedAt>u7r?null:t}function NNt(e){let t=fx(e);return t?t.disposition===lx:!1}function E7r(e){let t=fx(e);return t?t.disposition===Vb:!1}function S7r(e){let t=fx(e);return t?t.disposition===cx||t.disposition===lx:!1}function w7r(e){let t=fx(e);return t?t.disposition===Vb:!1}function I7r(e){let t=Number(e?.lastProbeAt||0);return!t||Date.now()-t>=f7r}function _Nt(e,t){return e&&(e.lastProbeAt=Date.now(),t&&delete e.failureState,e)}function x9(e,t=""){let r=Object.values(e.recordsByPrimaryKey||{});return t?r.filter(n=>n.kind===t):r}function x7r(e){let t=Date.now();for(let r of x9(e))(r.expiresAt||0)<=t&&I9(e,r.primaryFileKey)}function C7r(e){let t=x9(e).sort((r,n)=>(n.lastAccessAt||0)-(r.lastAccessAt||0));for(let r=o7r;r{!Nve(s)||r.has(s)||(r.add(s),n.push(s))};if(Nve(e))i(e);else if(Mve(e)){if(e.entriesByFileId&&typeof e.entriesByFileId=="object")for(let s of Object.values(e.entriesByFileId))i(s);i(e.latestEntry)}for(let s of n)TNt(t,CNt(s,s.fileId));return C9(t)}function RNt(e){let t=HP[e];if(Mve(t)&&t.recordsByPrimaryKey&&t.primaryKeyByFileAlias){let n=C9(t);if(Bve(n)){let i=Rve();return HP[e]=i,i}return n}let r=t?T7r(t):Rve();return HP[e]=r,r}function $ve(e,t,r){let n=RNt(e),i=CNt(t,r);return I9(n,i.primaryFileKey),TNt(n,i),C9(n),i}function N7r(e,t,r=qc){let n=x9(e,r).filter(i=>!NNt(i));return n.length!==1||t&&Lve(t).length>0?null:n[0]||null}function DNt(e,t,r=qc){let n=Lve(t),i=null;for(let s of n){let a=e.primaryKeyByFileAlias[s],o=a?e.recordsByPrimaryKey[a]:null;if(o&&o.kind===r){if(NNt(o))continue;if(E7r(o)){i=i||o;continue}return o}}return i}function px(e,t,r=qc){let n=RNt(e);if(Bve(n))return Dve(e,n),null;let i=DNt(n,t,r);if(i)return n.latestPrimaryKey=i.primaryFileKey,yNt(i);let s=N7r(n,t,r);return s?(n.latestPrimaryKey=s.primaryFileKey,yNt(s)):null}function R7r(e,t){let r=px(e,t,qc);return r?r.cacheEntry:null}function kNt(e,t){let r=px(e,t,t_);return r?r.cacheEntry:null}function D7r(e,t,r=qc){let n=HP[e];if(!n||!Mve(n))return!1;C9(n);let i=DNt(n,t,r);return i?(I9(n,i.primaryFileKey),Dve(e,n),!0):(Dve(e,n),!1)}function k7r(e,t,r,n){return n.source===dx?Ju(e,"baidu","\u539F\u753B","redirect",t,r,".bin"):n.source===Ove?n.qualityUrls.flatMap(i=>[i.name,OI(e,"baidu",i.name,t,r,".bin")]):[]}function ANt(e,{shareId:t,encodedFileId:r,cacheEntry:n,subtitleRef:i=null,skipReuse:s=!1}){return s||$ve(t,n,n.fileId),su({parse:0,urls:k7r(e,t,r,n),subtitles:i?[i]:[],extra:{header:{}}})}function O7r(e,t){if(!e)return{statusCode:404,error:"\u64AD\u653EURL\u672A\u627E\u5230"};if(e.source===dx)return{targetUrl:e.directUrl,requestHeaders:e.requestHeaders,contentLength:e.fileSize};if(e.source===Ove){let r=e.qualityUrls.find(n=>n.name===t);return r?{targetUrl:r.url,requestHeaders:e.requestHeaders,contentLength:e.fileSize}:{statusCode:404,error:"\u753B\u8D28\u672A\u627E\u5230"}}return{statusCode:500,error:"\u65E0\u6548\u7684\u7F13\u5B58\u7C7B\u578B"}}async function P7r(e){let t=KP.default.enc.Hex.stringify(KP.default.MD5(e.server.config.baidu.cookie)).toString();return await e.server.db.getObjectDefault(`/baidu/settings/${t}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0})}function M7r(e){return e.useMultithread?SNt:ENt}async function L7r(e,t={}){try{let r=await Ee.head(e,{headers:t,timeout:d7r,maxRedirects:0,validateStatus:()=>!0});return{ok:r.status>=200&&r.status<400,statusCode:r.status,response:r}}catch(r){return{ok:!1,error:r}}}async function kve({shareId:e,fileId:t,expectedKind:r,targetUrl:n,requestHeaders:i,force:s=!1}){let a=px(e,t,r);if(!a||!s&&!S7r(a)||!I7r(a))return null;let o=await L7r(n,i);if(o.ok)return _Nt(a,!0),{action:"retain",probe:o};_Nt(a,!1);let u=w9(e,t,r,o.error||{response:{status:o.statusCode},message:`redirect probe failed with status ${o.statusCode||0}`},{stage:s?"redirect_retain_probe":"redirect_probe",deliveryMode:ENt});return{action:u.disposition,probe:o,failure:u}}function B7r(e,t=""){let r=fx(e);return!r||t!==dx?!1:r.disposition===lx||r.disposition===Vb}async function $7r(e,t,{targetUrl:r,fileId:n,requestHeaders:i,contentLength:s,settings:a}){let o=M7r(a),u=px(e.params.shareId,n,qc);if(o===SNt)try{return await Bp(e,t,r,n,i,{chunkSize:a.chunkSize,poolSize:a.poolSize,timeout:1e3*10},s,!0)}catch(d){console.error("[baidu proxy] chunkStream error:",d.message),w9(e.params.shareId,n,qc,d,{stage:"chunk_stream",deliveryMode:o}),t.sent||t.code(503).send({error:"stream error, please retry"});return}let c=u&&w7r(u)?await kve({shareId:e.params.shareId,fileId:n,expectedKind:qc,targetUrl:r,requestHeaders:i,force:!0}):null;if(c?.failure?.disposition===cx){t.sent||t.code(503).send({error:"redirect target unavailable, please retry"});return}if((c||await kve({shareId:e.params.shareId,fileId:n,expectedKind:qc,targetUrl:r,requestHeaders:i}))?.failure?.disposition===cx){t.sent||t.code(503).send({error:"redirect target unavailable, please retry"});return}t.redirect(r)}function F7r(e,{path:t,uk:r,shareid:n,subtitleFsid:i,surl:s,pwd:a}){if(!i)return null;let o=encodeURIComponent(An([t,r,n,i,s,encodeURIComponent(a||"")],{structured:!0}));return{fileId:o,ref:Lp(e,"baidu",s,o,".srt",{name:"\u5916\u6302\u5B57\u5E55",format:"srt"})}}function U7r(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||t==="ESOCKETTIMEDOUT"||r.includes("timeout")}function q7r(e){let t=String(e?.code||"").toUpperCase();return t==="ECONNRESET"||t==="EAI_AGAIN"||t==="ENOTFOUND"||t==="ECONNREFUSED"||t==="EPIPE"}function j7r(e=null){return{statusCode:Number(e?.response?.status||e?.statusCode||0)||0,code:String(e?.code||""),message:String(e?.message||""),name:String(e?.name||"")}}function ONt(e,t={}){let r=j7r(e);return r.statusCode>=400&&r.statusCode<500?{disposition:cx,category:"upstream_4xx",...r,...t}:r.statusCode>=500?{disposition:Vb,category:"upstream_5xx",...r,...t}:U7r(e)?{disposition:Vb,category:"timeout",...r,...t}:q7r(e)?{disposition:lx,category:"network_error",...r,...t}:{disposition:lx,category:"uncertain_failure",...r,...t}}function H7r(e,t){return e&&(e.failureState={category:t.category,disposition:t.disposition,statusCode:t.statusCode||0,code:t.code||"",message:t.message||"",stage:t.stage||"",deliveryMode:t.deliveryMode||"",observedAt:Date.now()},e)}function w9(e,t,r,n,i={}){let s=ONt(n,{expectedKind:r,...i});if(s.disposition===cx){let u=D7r(e,t,r);return console.warn("[baidu proxy] invalidate handoff record:",s.category,{shareId:e,expectedKind:r,invalidated:u,statusCode:s.statusCode,code:s.code,stage:s.stage}),s}let a=px(e,t,r);a&&H7r(a,s);let o=s.disposition===Vb?"warn":"info";return console[o]("[baidu proxy] keep handoff record:",s.category,{shareId:e,expectedKind:r,statusCode:s.statusCode,code:s.code,stage:s.stage}),s}async function K7r({drive:e,shareId:t,subtitleContext:r,path:n,uk:i,shareid:s,subtitleFsid:a}){if(!(!r?.fileId||!a)&&!kNt(t,r.fileId))try{let o=await e.getAppShareUrl(n,i,s,a);if(!o)return;$ve(t,xNt({fileId:r.fileId,directUrl:o}),r.fileId)}catch(o){let u=ONt(o,{stage:"subtitle_prewarm",deliveryMode:"prewarm",expectedKind:t_});console.debug("[baidu subtitle prewarm] skipped:",u.category,u.code||u.statusCode||u.message)}}async function PNt(e,t){await bNt(t);let r=await Pn("baidu");if(Array.isArray(e)){let n=[];for(let i of e)try{let s=new VP;await s.getSurl(i);let a=await s.getShareList();if(!a)continue;let o=i_e(r,a);o?.from&&o?.url&&n.push(o)}catch(s){console.error(`\u5904\u7406\u767E\u5EA6\u94FE\u63A5\u5931\u8D25: ${i}`,s.message)}return n}else try{let n=new VP;await n.getSurl(e);let i=await n.getShareList();return i?pa(r,i):[]}catch(n){return console.error("\u5904\u7406\u767E\u5EA6\u94FE\u63A5\u5931\u8D25:",e,n.message),[]}}async function MNt(e,t){await bNt(e);let{path:r,uk:n,shareid:i,fsid:s,surl:a,pwd:o,subtitleFsid:u}=p7r(e.body.id),c=Tve.get(`${a}_${s}`),{drive:l,shareContext:d}=await INt({surl:a,pwd:o,uk:n,shareid:i},a),f=d.surl||a,p=d.uk||n,h=d.shareid||i,m=`${r}*${p}*${h}*${s}`,y=encodeURIComponent(m),g=f,v=u?F7r(e,{path:r,uk:p,shareid:h,subtitleFsid:u,surl:f,pwd:d.pwd}):null,A=v?v.ref:null,_=px(g,m,qc);try{let S=await l.getAppShareUrl(r,p,h,s);if(S){v?.fileId&&await K7r({drive:l,shareId:g,subtitleContext:v,path:r,uk:p,shareid:h,subtitleFsid:u});let C=B7r(_,dx);return ANt(e,{shareId:g,encodedFileId:y,cacheEntry:A7r({fileId:m,fileSize:c,directUrl:S}),subtitleRef:A,skipReuse:C})}}catch(S){console.debug("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",S.message)}let E=await l.getShareUrl(r,p,h,s);return E?.length>0?ANt(e,{shareId:g,encodedFileId:y,cacheEntry:v7r({fileId:m,fileSize:c,qualityUrls:E}),subtitleRef:A}):(console.error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25"),Fa("\u767E\u5EA6\u7F51\u76D8\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25"))}async function LNt(e,t){try{let r=e.params.site,n=e.params.shareId,i=e.params.fileId,s=e.params.flag;if(r!=="baidu")return t.status(400).send({error:"\u65E0\u6548\u7684\u7AD9\u70B9"});if(s==="subt"){let u=kNt(n,i);if(u?.directUrl){if((await kve({shareId:n,fileId:i,expectedKind:t_,targetUrl:u.directUrl,requestHeaders:u.requestHeaders}))?.failure?.disposition===cx)return t.status(503).send({error:"\u5B57\u5E55\u5730\u5740\u6682\u4E0D\u53EF\u7528\uFF0C\u8BF7\u91CD\u8BD5"});t.redirect(u.directUrl);return}let c=fi(decodeURIComponent(String(i||"")),{fieldOrder:["subPath","subUk","subShareId","subFsid","subSurl","encodedPwd"]});if(!c.subPath||!c.subUk||!c.subShareId||!c.subFsid)return t.status(400).send({error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"});let{subPath:l,subUk:d,subShareId:f,subFsid:p,subSurl:h="",encodedPwd:m=""}=c,{drive:y}=await INt({surl:h,pwd:m?Pve(m):"",uk:d,shareid:f},h||n),g=null;try{g=await y.getAppShareUrl(l,d,f,p)}catch(v){throw w9(n,i,t_,v,{stage:"subtitle_fetch",deliveryMode:"redirect"}),v}if(!g)return w9(n,i,t_,{response:{status:404},message:"subtitle direct url empty"},{stage:"subtitle_fetch_empty",deliveryMode:"redirect"}),t.status(404).send({error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"});$ve(n,xNt({fileId:i,directUrl:g}),i),t.redirect(g);return}let a=O7r(R7r(n,i),s);if(!a.targetUrl)return t.status(a.statusCode||500).send({error:a.error||"\u4EE3\u7406\u5931\u8D25"});let o=await P7r(e);return await $7r(e,t,{targetUrl:a.targetUrl,fileId:i,requestHeaders:a.requestHeaders,contentLength:a.contentLength,settings:o})}catch(r){console.error("[baidu proxy] error:",r.message),t.sent||t.code(500).send({error:r.message})}}var N9=CI,Fve=class{constructor(t=5){this.maxConcurrency=t,this.queue=[],this.running=0}async process(t){return new Promise((r,n)=>{this.queue.push({task:t,resolve:r,reject:n}),this.run()})}async run(){if(this.running>=this.maxConcurrency||this.queue.length===0)return;this.running++;let{task:t,resolve:r,reject:n}=this.queue.shift();try{let i=await t();r(i)}catch(i){n(i)}finally{this.running--,this.run()}}};async function xs(e,t){return{}}var l0=new Map,BNt=10*60*1e3,z7r=5*60*1e3,Q7r="subtitle_v2",G7r=new Fve(10);function T9(e,t,r,n,i=".srt",s={}){return Lp(e,t,r,n,i,s)}function $Nt(e=""){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}async function Y7r(e){let t=new Map,r=20;for(let n=0;n{let o=`type_${a}`,u=l0.get(o);if(u&&Date.now()-u.timestamp{try{let s=null;switch(e){case"ali":s=await wSt(t,r);break;case"quark":s=await qSt(t,r);break;case"uc":s=await uxt(t,r);break;case"tianyi":s=await X2t(t,r);break;case"yidong":s=await tNt(t,r);break;case"123":s=await rNt(t,r);break;case"115":s=await pNt(t,r);break;case"baidu":s=await PNt(t,r);break;case"xunlei":s=await hCt(t,r);break}if(s=Array.isArray(s)?s:[],l0.set(n,{data:s,timestamp:Date.now()}),l0.size>200){let a=Array.from(l0.keys());for(let o=0;o<50;o++)l0.delete(a[o])}return{data:s,type:e}}catch(s){return console.debug(`\u5904\u7406${e}\u94FE\u63A5\u5931\u8D25:`,t,s.message),{data:[],type:e}}})}function X7r(e,t){let r=new Map,n=[];for(let i=0;iBNt&&l0.delete(S);if(e=Array.isArray(e)?e:[e],e.length===0)return{froms:"",urls:"",links:[]};let n=await Y7r(e),i=new Map;for(let S of e){let C=n.get(S);C&&(i.has(C)||i.set(C,[]),i.get(C).push(S))}let s=[],a=[],o=[],u=[],c=ls(),l=new Map(c.map(S=>[S.key,S.name])),d=new Map,f=Array.from(i.entries()).map(async([S,C])=>{let I=C.map(T=>W7r(S,T,t).then(k=>({...k,shareUrl:T})));(await Promise.allSettled(I)).forEach(T=>{if(T.status==="fulfilled"&&T.value.data.length>0){let k=!1;T.value.data.forEach(O=>{O?.from&&O?.url&&(s.push(O.from),a.push(O.url),o.push(T.value.type),k=!0)}),k&&u.push({type:T.value.type,url:T.value.shareUrl})}})});if(await Promise.all(f),s.length===0)return{froms:"",urls:"",links:[]};let p=$a(),h=new Map;p.forEach((S,C)=>{h.set(S.key,C)});let m=[];for(let S=0;SN.key===C);I&&I.enable&&m.push({from:s[S],url:a[S],type:C,order:h.get(C)??999})}if(m.sort((S,C)=>S.order-C.order),m.length===0)return{froms:"",urls:"",links:[]};let y=new Set(m.map(S=>S.type)),g=u.filter(S=>y.has(S.type)).sort((S,C)=>(h.get(S.type)??999)-(h.get(C.type)??999)).map(S=>{let C=l.get(S.type)||S.type,I=(d.get(C)||0)+1;return d.set(C,I),{name:I===1?C:`${C}${I}`,url:S.url}}),v=m.map(S=>S.from),A=m.map(S=>S.url),_=m.map(S=>S.type);return{froms:X7r(v,_).join("$$$"),urls:A.join("$$$"),links:g}}async function xi(e,t){switch(e.params.site){case"ali":return await ISt(e,t);case"quark":return await jSt(e,t);case"uc":return await cxt(e,t);case"baidu":return await LNt(e,t);case"115":return await mNt(e,t);case"tianyi":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};await g9(e);{let n=await y9.getShareUrl(e.params.fileId,e.params.shareId);if(!n)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(n);return}case"yidong":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};{let n=await A9.getSharePlay(e.params.fileId,e.params.shareId);if(!n)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(n);return}case"123":if(e.params.flag!=="subt")return{error:"\u4E0D\u652F\u6301\u7684\u4EE3\u7406\u7C7B\u578B"};await b9(e);{let n;try{n=fi(e.params.fileId,{decodeUri:!0,minLength:4,fieldOrder:["fileId","s3KeyFlag","size","etag"]})}catch{return t.code(400),{error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"}}let i=await qP.getDownload(e.params.shareId,n.fileId,n.s3KeyFlag,n.size,n.etag);if(!i)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(i);return}case"xunlei":if(e.params.flag==="subt"){await a0(e);{let n;try{n=fi(e.params.fileId,{decodeUri:!0,minLength:5,fieldOrder:["fileId","passCodeToken","encodedFileName","fileSize","ext"]})}catch{return t.code(400),{error:"\u5B57\u5E55\u53C2\u6570\u65E0\u6548"}}let i=$Nt(n.encodedFileName||""),s=await lCt(e.params.shareId,n.fileId,n.passCodeToken,i,n.fileSize,!1);if(!s)return t.code(404),{error:"\u5B57\u5E55\u5730\u5740\u83B7\u53D6\u5931\u8D25"};t.redirect(s);return}}return await dCt(e,t);default:return{error:"\u4E0D\u652F\u6301\u7684\u7AD9\u70B9"}}}async function Ci(e,t){let r=e.body.flag,n=e.body.id;if(r.startsWith(await Pn("ali")))return await xSt(e,t);if(r.startsWith(await Pn("quark")))return await HSt(e,t);if(r.startsWith(await Pn("uc")))return await lxt(e,t);if(r.startsWith(await Pn("tianyi"))){let{fileId:i,shareId:s,fileName:a="",subtitleFileId:o=""}=fi(n,{fieldOrder:["fileId","shareId","fileName","subtitleFileId"]});await g9(e);let u=await y9.getShareUrl(i,s,{fileName:a});if(!u)return Fa("\u5929\u7FFC\u4E91\u76D8\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25");let c=[];return o&&c.push(T9(e,"tianyi",s,encodeURIComponent(o),".srt",{name:"\u5916\u6302\u5B57\u5E55",format:"srt"})),su({parse:0,urls:["\u539F\u753B",u],subtitles:c})}else if(r.startsWith(await Pn("yidong"))){let{contentId:i,linkID:s,subtitleContentId:a=""}=fi(n,{fieldOrder:["contentId","linkID","subtitleContentId"]}),o=await A9.getSharePlay(i,s);if(!o)return Fa("\u79FB\u52A8\u4E91\u76D8\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25");let u=[];return a&&u.push(T9(e,"yidong",s,encodeURIComponent(a),".srt",{name:"\u5916\u6302\u5B57\u5E55",format:"srt"})),su({parse:0,urls:["\u539F\u753B",o],subtitles:u})}else if(r.startsWith(await Pn("123"))){await b9(e);let{shareKey:i,fileId:s,s3KeyFlag:a,size:o,etag:u,subtitleFileId:c="",subtitleS3KeyFlag:l="",subtitleSize:d="",subtitleEtag:f=""}=fi(n,{fieldOrder:["shareKey","fileId","s3KeyFlag","size","etag","subtitleFileId","subtitleS3KeyFlag","subtitleSize","subtitleEtag"]}),p=await qP.getDownload(i,s,a,o,u);if(!p)return Fa("123 \u7F51\u76D8\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25");let h=[];if(c&&l&&d&&f){let m=encodeURIComponent(An([c,l,d,f],{structured:!0}));h.push(T9(e,"123",i,m,".srt",{name:"\u5916\u6302\u5B57\u5E55",format:"srt"}))}return su({parse:0,urls:["\u539F\u753B",p],subtitles:h})}else{if(r.startsWith(await Pn("115")))return await hNt(e,t);if(r.startsWith(await Pn("baidu")))return await MNt(e,t);if(r.startsWith(await Pn("xunlei"))){await a0(e);let{shareId:i="",fileId:s="",passCodeToken:a="",fileSize:o="",encodedFileName:u="",subtitleFileId:c="",subtitleSize:l="",encodedSubtitleName:d="",subtitleExt:f=""}=fi(n,{fieldOrder:["shareId","fileId","passCodeToken","fileSize","encodedFileName","subtitleFileId","subtitleSize","encodedSubtitleName","subtitleExt"]}),p=$Nt(u),h=await $j(i,s,a,p,o,!0),m=encodeURIComponent(An([s,a,o,encodeURIComponent(p||"")],{structured:!0})),y=Ju(e,"xunlei","\u539F\u753B","down",i,m,".bin"),g=Ju(e,"xunlei","\u539F\u753B\u76F4\u94FE","redirect",i,m,".bin"),v=[...y];for(let _=0;_{let e=Array.isArray(globalThis?.Pans)?globalThis.Pans:[],t=new Map(e.map(n=>[n?.key,n?.name||n?.key||""])),r=(n,i)=>t.get(n)||i;return[{key:"yidong",name:r("yidong","\u79FB\u52A8\u4E91\u76D8"),validator:Gq,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"tianyi",name:r("tianyi","\u5929\u7FFC\u4E91\u76D8"),validator:Qq,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"115",name:r("115","115\u7F51\u76D8"),validator:Wq,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"quark",name:r("quark","\u5938\u514B\u4E91\u76D8"),validator:Vq,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.a0d60e6a72806738e6f0b711a979bdf5?rik=lp5C9t5sYlkrLw&riu=http%3a%2f%2fpic.2265.com%2fupload%2f2020-10%2f202010151719492792.png&ehk=Pv6rq3JxJvKe2y1QsdzssyZ4Ez4cwiKWmIvK0aMgxi0%3d&risl=&pid=ImgRaw&r=0"},{key:"uc",name:r("uc","UC\u4E91\u76D8"),validator:zq,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0"},{key:"ali",name:r("ali","\u963F\u91CC\u4E91\u76D8"),validator:Kq,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000"},{key:"123",name:r("123","123\u4E91\u76D8"),validator:Yq,pic:"https://statics.123957.com/static/favicon.ico"},{key:"baidu",name:r("baidu","\u767E\u5EA6\u7F51\u76D8"),validator:Xq,pic:"https://p1.ssl.qhimgs1.com/bdr/576__/t0414ace7e627f1689b.jpg"},{key:"xunlei",name:r("xunlei","\u8FC5\u96F7\u4E91\u76D8"),validator:nSt,pic:"https://img.xunlei.com/favicon.ico"}]};var J7r=15e3,Z7r=8e3,ezr=5*60*1e3,tzr=500,rzr=6;function FNt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function nzr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var Ki=class{constructor(t,r,n,i){this.siteName=t,this.siteKey=r,this.meta=n,this.getCacheFunction=i,this.baseUrlCache=new Map,this.requestCache=new Map,this.inflightRequests=new Map,this.filterRulesCache=new Map,this.homeCache=null,this.liveStructureCache=null,this.liveStructurePromise=null,this.requestTimeout=J7r,this.requestCacheTTL=ezr,this.requestCacheMax=tzr,this.requestRetryCount=1,this.requestRetryDelay=300,this.detailConcurrency=rzr,this.liveStructureTTL=10*60*1e3,this.useLiveCategoryMetadata=!1,this.validateCategoryPageUrl=!1}async getUrl(t){if(!this.baseUrlCache.has(t)){let r=await this.getCacheFunction(t),n=await this.resolveWorkingUrl(r);this.baseUrlCache.set(t,n)}return this.baseUrlCache.get(t)}async resolveWorkingUrl(t){let r=Array.isArray(t)?t:[];if(this.validateCategoryPageUrl){for(let n of r)if(await this.isValidCategoryBaseUrl(n))return n}return await this.firstSuccessfulUrl(r)}async firstSuccessfulUrl(t){return await RI(t)}async isValidCategoryBaseUrl(t){if(!t)return!1;try{let r=await this.request(`${t}/index.php/vod/show/id/1.html`,!1,{timeout:8e3,retryCount:0});return typeof r=="string"&&/class="library-box/i.test(r)}catch{return!1}}delay(t){return new Promise(r=>setTimeout(r,t))}shouldRetryRequest(t){return t?.response?[408,425,429,500,502,503,504].includes(t.response.status):!0}getCachedRequest(t){let r=this.requestCache.get(t);return r?Date.now()-r.timestamp>this.requestCacheTTL?(this.requestCache.delete(t),null):(this.requestCache.delete(t),this.requestCache.set(t,r),r.data):null}setCachedRequest(t,r){if(this.requestCache.size>=this.requestCacheMax){let n=Math.min(50,this.requestCache.size),i=0;for(let s of this.requestCache.keys())if(this.requestCache.delete(s),i++,i>=n)break}this.requestCache.set(t,{data:r,timestamp:Date.now()})}async doRequest(t){let r=new AbortController,n=setTimeout(()=>r.abort(),this.requestTimeout);try{return(await _e.get(t,{headers:{"User-Agent":N9},signal:r.signal})).data}catch(i){throw i}finally{clearTimeout(n)}}async request(t,r=!1,n={}){let i=t,s=r?this.getCachedRequest(i):null;if(s!==null)return s;let a=Number.isFinite(n.timeout)?n.timeout:this.requestTimeout,o=Number.isFinite(n.retryCount)?n.retryCount:this.requestRetryCount,u=`${r?"cache":"nocache"}:${i}:${a}:${o}`;if(this.inflightRequests.has(u))return this.inflightRequests.get(u);let c=(async()=>{let l=r?this.requestCache.get(i)?.data:null,d=null;for(let f=0;f<=o;f++)try{let p=this.requestTimeout;this.requestTimeout=a;try{let h=this.normalizeHtmlResponse(await this.doRequest(t));return r&&this.setCachedRequest(i,h),h}finally{this.requestTimeout=p}}catch(p){if(d=p,f>=o||!this.shouldRetryRequest(p))break;await this.delay(this.requestRetryDelay*(f+1))}if(l&&!d?.response)return l;throw d})();this.inflightRequests.set(u,c);try{return await c}finally{this.inflightRequests.delete(u)}}normalizePage(t){let r=Number.parseInt(t,10);return Number.isNaN(r)||r<=0?1:r}generateYears(t,r){let n=[];for(let i=r;i>=t;i--)n.push({v:i.toString(),n:i.toString()});return n}normalizeText(t){return String(t||"").replace(/\s+/g," ").trim()}normalizeHtmlResponse(t){if(typeof t!="string")return t;let r=t.indexOf('"n.includes(c)))return{key:o,name:o==="year"?"\u65F6\u95F4":u[0]};let s=this.detectFilterKey(r);return s?{key:s,name:{id:"\u7C7B\u578B",class:"\u5267\u60C5",area:"\u5730\u533A",lang:"\u8BED\u8A00",year:"\u65F6\u95F4",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"}[s]||s}:{key:"",name:""}}detectFilterKey(t=""){return/\/show\/by\//i.test(t)?"by":/\/show\/class\//i.test(t)?"class":/\/show\/area\//i.test(t)?"area":/\/lang\//i.test(t)?"lang":/\/year\//i.test(t)?"year":/\/letter\//i.test(t)?"letter":/\/show\/id\/\d+\.html/i.test(t)?"id":""}extractFilterValue(t="",r=""){let i={by:/\/show\/by\/([^/]+)\/id\//i,class:/\/show\/class\/([^/]+)\/id\//i,area:/\/show\/area\/([^/]+)\/id\//i,lang:/\/lang\/([^/.]+)\.html/i,year:/\/year\/([^/.]+)\.html/i,letter:/\/letter\/([^/.]+)\.html/i,id:/\/show\/id\/(\d+)\.html/i}[r];if(!i)return"";let s=t.match(i);return s?this.decodeFilterValue(s[1]):""}parseLiveClasses(t){let r=lr(t),n=[],i=new Set,s=[".page-heading .library-box-first .library-list a",".drop-content-items li",".nav-menu-items li"];for(let a of s)if(r(a).each((o,u)=>{let c=r(u),l=u.tagName==="a"?c:c.find("a").first(),d=l.attr("href")||"";if(!d||!d.includes("/show/")&&!d.includes("/type/"))return;let f=d.match(/\/id\/(\d+)/i)?.[1]||d.match(/\/type\/(\d+)/i)?.[1]||d.match(/(\d+)(?:\.html)?$/i)?.[1];if(!f||i.has(f))return;let p=this.normalizeLiveClassName(l.text()||l.attr("title")||l.attr("alt")||"");p&&(i.add(f),n.push({type_name:p,type_id:f}))}),n.length>0)return n;return n}parseLiveFilters(t,r){let n=lr(t),i=[],s={},a=new Set;return n("div.library-box.scroll-box").slice(1).each((o,u)=>{let c=n(u);if(c.find(".library-stat").length>0)return;let l=this.normalizeText(c.find("a.library-item-first").first().text()),d=c.find(".library-list a"),f=d.first().attr("href")||"",p=this.getLiveFilterMeta(l,f);if(!p.key||a.has(p.key)||d.length===0)return;let h=new Set,m=[];d.each((y,g)=>{let v=n(g),A=v.attr("href")||"",_=this.extractFilterValue(A,p.key),E=this.normalizeText(v.text()||v.attr("title")||"");!_||!E||h.has(_)||(h.add(_),m.push({v:_,n:E}))}),m.length!==0&&(a.add(p.key),i.push({name:p.name,key:p.key}),s[`${r}.${p.key}`]=m)}),{rules:i,values:s}}async ensureLiveFilterData(t,r,n=null){if(!this.useLiveCategoryMetadata||!r)return;let i=String(r);if(this.filterData?.[i]?.length>0)return;let s=n||await this.getUrl(t);try{let a=await this.request(`${s}/index.php/vod/show/id/${i}.html`,!0),o=this.parseLiveFilters(a,i);if(o.rules.length===0)return;this.filterData={...this.filterData||{},[i]:o.rules},this.filterValues={...this.filterValues||{},...o.values},this.filterRulesCache.delete(i),this.homeCache=null}catch{}}async ensureLiveCategoryMetadata(t){if(!this.useLiveCategoryMetadata)return;let r=Date.now();if(!(this.liveStructureCache&&r-this.liveStructureCache.timestamp{let n=await this.getUrl(t),i=String(this.classes?.[0]?.type_id||"1"),s=await this.request(`${n}/index.php/vod/show/id/${i}.html`,!0),a=this.parseLiveClasses(s);if(a.length===0)return;let o={},u={},c=new Map([[i,s]]);await this.mapWithConcurrency(a,3,async l=>{let d=String(l.type_id);try{let f=c.get(d)||await this.request(`${n}/index.php/vod/show/id/${d}.html`,!0);c.set(d,f);let p=this.parseLiveFilters(f,d);o[d]=p.rules,Object.assign(u,p.values)}catch{o[d]=this.filterData?.[d]||[]}}),this.classes=a,this.filterData=o,this.filterValues=u,this.filterRulesCache.clear(),this.homeCache=null,this.liveStructureCache={timestamp:Date.now()}})();try{await this.liveStructurePromise}finally{this.liveStructurePromise=null}}}resolveFilterValue(t,r){let n=`${t}.${r}`;return this.filterValues?.[n]||this.filterValues?.[r]||[]}getFilterRules(t){let r=String(t??"");if(this.filterRulesCache.has(r))return this.filterRulesCache.get(r);let i=(this.filterData?.[r]||[]).map(s=>({name:s.name,key:s.key,value:this.resolveFilterValue(r,s.key)}));return this.filterRulesCache.set(r,i),i}async home(t,r){if(this.useLiveCategoryMetadata&&t?.server&&await this.ensureLiveCategoryMetadata(t.server),this.homeCache)return this.homeCache;let n={};for(let i of Object.keys(this.filterData||{}))n[i]=this.getFilterRules(i);return this.homeCache={class:this.classes||[],filters:n},this.homeCache}buildDetailUrl(t,r){return r.startsWith("http")?r:r.startsWith("/")?t+r:`${t}/index.php/vod/detail/id/${r}.html`}async mapWithConcurrency(t,r,n){let i=[],s=new Array(t.length),a=0,o=async()=>{for(;;){let c=a++;if(c>=t.length)break;s[c]=await n(t[c],c)}},u=Math.min(r,t.length);for(let c=0;cnzr(o)).filter(o=>o.id);return{list:(await this.mapWithConcurrency(s,this.detailConcurrency,async({id:o,meta:u})=>{try{let c=this.buildDetailUrl(n,o),l=await this.request(c,!0),d=lr(l),f={vod_id:o,vod_name:d(".page-title")[0]?.children[0]?.data||"",vod_pic:u?.vod_pic||d(d(".mobile-play")).find(".lazyload")[0]?.attribs["data-src"]||"",vod_remarks:u?.vod_remarks||""},p=d(".video-info-itemtitle");for(let g of p){let v=d(g).text(),_=d(g).next().find("a").map((E,S)=>{let C=d(S).text().trim();return C||null}).get().filter(Boolean).join(", ");v.includes("\u5267\u60C5")?f.vod_content=d(g).next().find("p").text().trim():v.includes("\u5BFC\u6F14")?f.vod_director=_.trim():v.includes("\u4E3B\u6F14")&&(f.vod_actor=_.trim())}let m=d("div.module-row-info p").map((g,v)=>d(v).text().trim()).get().filter(Boolean),y=m.length>0?await hi(m,t):null;return y&&(f.vod_play_from=y.froms,f.vod_play_url=y.urls,Array.isArray(y.links)&&y.links.length>0&&(f.vod_links=y.links)),f}catch(c){return console.error(`[${this.siteName}] \u83B7\u53D6\u8BE6\u60C5\u5931\u8D25 (id: ${o}):`,c.message),{vod_id:o,vod_name:"\u83B7\u53D6\u5931\u8D25",vod_pic:u?.vod_pic||"",vod_remarks:u?.vod_remarks||"\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25",vod_content:`\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25: ${c.message}`}}})).filter(Boolean)}}catch{return{list:[]}}}async search(t,r){let n=this.normalizePage(t.body.page);try{let i=await this.getUrl(t.server),s=String(t.body.wd||"").trim();if(!s)return{page:n,pagecount:n,list:[]};let a=await this.request(`${i}/index.php/vod/search/wd/${encodeURIComponent(s)}.html`,!0,{timeout:Z7r,retryCount:0}),o=lr(a),u=o(".module-search-item").map((c,l)=>{let d=o(l),f=d.find(".video-serial"),p=f.length>0?f[0].attribs.href:"",h=this.fixImgUrl(d.find(".module-item-pic > img")[0]?.attribs["data-src"]||""),m=f.length>0?o(f[0]).text():"";return{vod_id:FNt(p,{vod_pic:h,vod_remarks:m}),vod_name:f.length>0?f[0].attribs.title:"",vod_pic:h,vod_remarks:m}}).get();return{page:n,pagecount:u.length<10?n:n+1,list:u}}catch(i){return console.error(`[${this.siteName}] \u641C\u7D22\u5931\u8D25:`,i.message),{page:n,pagecount:n,list:[]}}}buildFilterUrl(t,r,n={}){let i=t.replace(/\/index\.php\/vod\/show\/id\/[^/]+$/i,""),s=String(n.id||r),a=[];return n.area&&a.push(`area/${encodeURIComponent(n.area)}`),n.by&&a.push(`by/${encodeURIComponent(n.by)}`),n.class&&a.push(`class/${encodeURIComponent(n.class)}`),a.push(`id/${encodeURIComponent(s)}`),n.lang&&a.push(`lang/${encodeURIComponent(n.lang)}`),n.letter&&a.push(`letter/${encodeURIComponent(n.letter)}`),n.year&&a.push(`year/${encodeURIComponent(n.year)}`),`${i}/index.php/vod/show/${a.join("/")}`}async parseCategoryVideos(t){return t("#main .module-item").map((n,i)=>{let s=t(i),a=s.find(".module-item-pic a").attr("href"),o=s.find(".module-item-pic img").attr("alt"),u=s.find(".module-item-pic img").attr("data-src"),c=s.find(".module-item-text").text(),l=this.fixImgUrl(u);return{vod_id:FNt(a||"",{vod_pic:l,vod_remarks:c}),vod_name:o,vod_pic:l,vod_remarks:c}}).get()}async category(t,r){this.useLiveCategoryMetadata&&t?.server&&await this.ensureLiveCategoryMetadata(t.server);let n=await this.getUrl(t.server),i=t.body.id,s=this.normalizePage(t.body.page),a=t.body.filters||{},o=String(a.id||i);this.useLiveCategoryMetadata&&await this.ensureLiveFilterData(t.server,o,n);let u=`${n}/index.php/vod/show/id/${i}`,c=this.buildFilterUrl(u,i,a)+`/page/${s}.html`,l=await this.request(c,!0),d=lr(l);if(this.useLiveCategoryMetadata){let g=this.parseLiveFilters(l,o);g.rules.length>0&&(this.filterData={...this.filterData||{},[o]:g.rules},this.filterValues={...this.filterValues||{},...g.values},this.filterRulesCache.delete(o))}let f=await this.parseCategoryVideos(d),h=d("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?s+1:s,m={page:s,pagecount:h,limit:72,total:72*h,list:f},y=this.getFilterRules(o);return y&&y.length>0&&(m.filter=y),m}createApi(t){t.post("/init",xs),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Ci),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),check:t=>this.getUrl(t)}}};function qNt(e){let t=[];Array.isArray(e)?t=e:typeof e=="string"?t=[e]:e&&typeof e=="object"&&(Array.isArray(e.urls)?t=e.urls:typeof e.url=="string"&&(t=[e.url]));let r=[],n=new Set;for(let i of t){let s=String(i??"").trim();!s||n.has(s)||(n.add(s),r.push(s))}return r}function UNt(e,t){let r=e?.config?.[t];return qNt(r)}async function r_(e,t){if(!e||!t)return[];if(!e.db)return UNt(e,t);let r=[];try{let i=await e.db.getObjectDefault(`/${t}`,{});r=qNt(i?.urls??i)}catch(i){console.error(`[${t}] \u8BFB\u53D6\u6570\u636E\u5E93\u57DF\u540D\u914D\u7F6E\u5931\u8D25:`,i)}if(r.length>0)return r;let n=UNt(e,t);if(n.length===0)return[];try{await e.db.push(`/${t}/urls`,n),console.log(`[${t}] DB\u4E3A\u7A7A\uFF0C\u5DF2\u4ECE index.config.js \u56DE\u586B\u57DF\u540D\u914D\u7F6E\uFF0C\u5171 ${n.length} \u6761`)}catch(i){console.error(`[${t}] \u56DE\u586B index.config.js \u5230\u6570\u636E\u5E93\u5931\u8D25:`,i)}return n}var Cs=class{constructor(t){this.siteKey=t}async getCache(t){return r_(t,this.siteKey)}async setCache(t,r){await t.db.push(`/${this.siteKey}/urls`,r)}async removeCache(t){await t.db.delete(`/${this.siteKey}/urls`)}createRoutes(t){t.get("/urls",async(r,n)=>{n.send({code:0,data:await this.getCache(r.server)})}),t.put("/urls",async(r,n)=>{await this.setCache(r.server,r.body),n.send({code:0})}),t.delete("/urls",async(r,n)=>{await this.removeCache(r.server),n.send({code:0})})}};var Uve=class extends Cs{constructor(){super("duoduo")}},jNt=new Uve,HNt=e=>jNt.getCache(e);async function qve(e){jNt.createRoutes(e)}var izr=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],szr=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],azr=[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"}],jve=class extends Ki{constructor(){super("\u591A\u591A","duoduo",{key:"duoduo",name:"\u2601\uFE0F \u591A\u591A",type:3},HNt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u591A\u591A\u7535\u5F71",type_id:"1"},{type_name:"\u591A\u591A\u5267\u96C6",type_id:"2"},{type_name:"\u77ED\u5267",type_id:"5"},{type_name:"\u7EFC\u827A",type_id:"3"},{type_name:"\u52A8\u6F2B",type_id:"4"},{type_name:"\u7EAA\u5F55",type_id:"20"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],20:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:azr,letter:izr,by:szr,"1.id":[],"2.id":[],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}]}}},ozr=new jve,KNt=ozr.getExports();var zP=Se(di(),1),zNt=Se(kb(),1);function uzr(e){return zP.default.enc.Utf8.stringify(zP.default.enc.Base64.parse(e))}function VNt(e){return zP.default.enc.Base64.stringify(zP.default.enc.Utf8.parse(e))}async function czr(e,t){return{}}async function lzr(e,t){return{class:[{type_id:"setting",type_name:`${e.server.address().url}/website`}]}}async function dzr(e,t){let r=e.body.id,n=[],i=e.server.address().url+e.server.prefix+"/proxy";return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:String(Math.random()),vod_name:"\u626B\u7801\u914D\u7F6E",vod_pic:i+"/"+VNt(`${e.server.address().url}/website`)},{vod_id:"openInternalWebsite",vod_name:"\u70B9\u51FB\u914D\u7F6E",vod_pic:i+"/"+VNt(`${e.server.address().url}/website`)}]}}async function fzr(e,t){return e.body.id==="openInternalWebsite"?(await Xr.dispatch("openInternalWebview",{opt:{url:`${e.server.address().url}/website`}}),{list:[{vod_name:"",vod_content:"",vod_remarks:""}]}):{list:[{vod_name:"",vod_content:"",vod_remarks:""}]}}async function pzr(e,t){let r=e.params.img,n=uzr(r),i=await zNt.default.toBuffer(n,{width:120,height:120,margin:15});t.send(i)}var QNt={meta:{key:"baseset",name:"\u2699\uFE0F \u914D\u7F6E",type:3},api:async e=>{e.post("/init",czr),e.post("/home",lzr),e.post("/category",dzr),e.post("/detail",fzr),e.get("/proxy/:img",pzr)}};var Hve=class extends Cs{constructor(){super("muou")}},GNt=new Hve,YNt=e=>GNt.getCache(e);async function Kve(e){GNt.createRoutes(e)}var hzr=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],mzr=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],gzr=[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],Vve=class extends Ki{constructor(){super("\u6728\u5076","mogg",{key:"mogg",aliases:["muou"],name:"\u2601\uFE0F \u6728\u5076",type:3},YNt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"115\u81FB\u4EAB",type_id:"25"},{type_name:"\u539F\u76D8",type_id:"30"},{type_name:"\u6728\u5076\u7535\u5F71",type_id:"1"},{type_name:"\u6728\u5076\u5267\u96C6",type_id:"2"},{type_name:"\u6728\u5076\u52A8\u6F2B",type_id:"3"},{type_name:"\u6728\u5076\u7EFC\u827A",type_id:"29"},{type_name:"\u6728\u5076\u7EAA\u5F55\u7247",type_id:"4"}],this.filterData={25:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],29:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:gzr,letter:hzr,by:mzr,"30.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u6B27\u7F8E\u5267"},{v:"15",n:"\u65E5\u97E9\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"},{v:"23",n:"\u6CF0\u5267"},{v:"26",n:"\u5176\u5B83\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.id":[{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u65E5\u672C"},{v:"22",n:"\u6B27\u7F8E"}]}}},yzr=new Vve,WNt=yzr.getExports();Kt();var JNt=Se(require("vm"),1),Qve=class{add(t,r,n){if(typeof arguments[0]!="string")for(let i in arguments[0])this.add(i,arguments[0][i],arguments[1]);else(Array.isArray(t)?t:[t]).forEach(function(i){this[i]=this[i]||[],r&&this[i][n?"unshift":"push"](r)},this)}run(t,r){this[t]=this[t]||[],this[t].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},Gve=class{constructor(t){this.jsep=t,this.registered={}}register(...t){t.forEach(r=>{if(typeof r!="object"||!r.name||!r.init)throw new Error("Invalid JSEP plugin format");this.registered[r.name]||(r.init(this.jsep),this.registered[r.name]=r)})}},ec=class e{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+e.version}static addUnaryOp(t){return e.max_unop_len=Math.max(t.length,e.max_unop_len),e.unary_ops[t]=1,e}static addBinaryOp(t,r,n){return e.max_binop_len=Math.max(t.length,e.max_binop_len),e.binary_ops[t]=r,n?e.right_associative.add(t):e.right_associative.delete(t),e}static addIdentifierChar(t){return e.additional_identifier_chars.add(t),e}static addLiteral(t,r){return e.literals[t]=r,e}static removeUnaryOp(t){return delete e.unary_ops[t],t.length===e.max_unop_len&&(e.max_unop_len=e.getMaxKeyLen(e.unary_ops)),e}static removeAllUnaryOps(){return e.unary_ops={},e.max_unop_len=0,e}static removeIdentifierChar(t){return e.additional_identifier_chars.delete(t),e}static removeBinaryOp(t){return delete e.binary_ops[t],t.length===e.max_binop_len&&(e.max_binop_len=e.getMaxKeyLen(e.binary_ops)),e.right_associative.delete(t),e}static removeAllBinaryOps(){return e.binary_ops={},e.max_binop_len=0,e}static removeLiteral(t){return delete e.literals[t],e}static removeAllLiterals(){return e.literals={},e}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(t){this.expr=t,this.index=0}static parse(t){return new e(t).parse()}static getMaxKeyLen(t){return Math.max(0,...Object.keys(t).map(r=>r.length))}static isDecimalDigit(t){return t>=48&&t<=57}static binaryPrecedence(t){return e.binary_ops[t]||0}static isIdentifierStart(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}static isIdentifierPart(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}throwError(t){let r=new Error(t+" at character "+this.index);throw r.index=this.index,r.description=t,r}runHook(t,r){if(e.hooks[t]){let n={context:this,node:r};return e.hooks.run(t,n),n.node}return r}searchHook(t){if(e.hooks[t]){let r={context:this};return e.hooks[t].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let t=this.code;for(;t===e.SPACE_CODE||t===e.TAB_CODE||t===e.LF_CODE||t===e.CR_CODE;)t=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let t=this.gobbleExpressions(),r=t.length===1?t[0]:{type:e.COMPOUND,body:t};return this.runHook("after-all",r)}gobbleExpressions(t){let r=[],n,i;for(;this.index0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.lengths.right_a&&d.right_a?n>d.prec:n<=d.prec;for(;i.length>2&&l(i[i.length-2]);)o=i.pop(),r=i.pop().value,a=i.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:o},i.push(t);t=this.gobbleToken(),t||this.throwError("Expected expression after "+c),i.push(s,t)}for(u=i.length-1,t=i[u];u>1;)t={type:e.BINARY_EXP,operator:i[u-1].value,left:i[u-2],right:t},u-=2;return t}gobbleToken(){let t,r,n,i;if(this.gobbleSpaces(),i=this.searchHook("gobble-token"),i)return this.runHook("after-token",i);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)i=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)i=this.gobbleArray();else{for(r=this.expr.substr(this.index,e.max_unop_len),n=r.length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}else if(s===e.COMMA_CODE){if(this.index++,i++,i!==r.length){if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(let a=r.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});ec.max_unop_len=ec.getMaxKeyLen(ec.unary_ops);ec.max_binop_len=ec.getMaxKeyLen(ec.binary_ops);var d0=e=>new ec(e).parse(),Azr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(ec).filter(e=>!Azr.includes(e)&&d0[e]===void 0).forEach(e=>{d0[e]=ec[e]});d0.Jsep=ec;var vzr="ConditionalExpression",bzr={name:"ternary",init(e){e.hooks.add("after-expression",function(r){if(r.node&&this.code===e.QUMARK_CODE){this.index++;let n=r.node,i=this.gobbleExpression();if(i||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;let s=this.gobbleExpression();if(s||this.throwError("Expected expression"),r.node={type:vzr,test:n,consequent:i,alternate:s},n.operator&&e.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&e.binary_ops[a.right.operator]<=.9;)a=a.right;r.node.test=a.right,a.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};d0.plugins.register(bzr);var XNt=47,Ezr=92,Szr={name:"regex",init(e){e.hooks.add("gobble-token",function(r){if(this.code===XNt){let n=++this.index,i=!1;for(;this.index=97&&u<=122||u>=65&&u<=90||u>=48&&u<=57)a+=this.char;else break}let o;try{o=new RegExp(s,a)}catch(u){this.throwError(u.message)}return r.node={type:e.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===e.OBRACK_CODE?i=!0:i&&this.code===e.CBRACK_CODE&&(i=!1),this.index+=this.code===Ezr?2:1}this.throwError("Unclosed Regex")}})}},zve=43,wzr=45,hx={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[zve,wzr],assignmentPrecedence:.9,init(e){let t=[e.IDENTIFIER,e.MEMBER_EXP];hx.assignmentOperators.forEach(n=>e.addBinaryOp(n,hx.assignmentPrecedence,!0)),e.hooks.add("gobble-token",function(i){let s=this.code;hx.updateOperators.some(a=>a===s&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,i.node={type:"UpdateExpression",operator:s===zve?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!i.node.argument||!t.includes(i.node.argument.type))&&this.throwError(`Unexpected ${i.node.operator}`))}),e.hooks.add("after-token",function(i){if(i.node){let s=this.code;hx.updateOperators.some(a=>a===s&&a===this.expr.charCodeAt(this.index+1))&&(t.includes(i.node.type)||this.throwError(`Unexpected ${i.node.operator}`),this.index+=2,i.node={type:"UpdateExpression",operator:s===zve?"++":"--",argument:i.node,prefix:!1})}}),e.hooks.add("after-expression",function(i){i.node&&r(i.node)});function r(n){hx.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(i=>{i&&typeof i=="object"&&r(i)})}}};d0.plugins.register(Szr,hx);d0.addUnaryOp("typeof");d0.addLiteral("null",null);d0.addLiteral("undefined",void 0);var Izr=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),Mn={evalAst(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":return Mn.evalBinaryExpression(e,t);case"Compound":return Mn.evalCompound(e,t);case"ConditionalExpression":return Mn.evalConditionalExpression(e,t);case"Identifier":return Mn.evalIdentifier(e,t);case"Literal":return Mn.evalLiteral(e,t);case"MemberExpression":return Mn.evalMemberExpression(e,t);case"UnaryExpression":return Mn.evalUnaryExpression(e,t);case"ArrayExpression":return Mn.evalArrayExpression(e,t);case"CallExpression":return Mn.evalCallExpression(e,t);case"AssignmentExpression":return Mn.evalAssignmentExpression(e,t);default:throw SyntaxError("Unexpected expression",e)}},evalBinaryExpression(e,t){return{"||":(n,i)=>n||i(),"&&":(n,i)=>n&&i(),"|":(n,i)=>n|i(),"^":(n,i)=>n^i(),"&":(n,i)=>n&i(),"==":(n,i)=>n==i(),"!=":(n,i)=>n!=i(),"===":(n,i)=>n===i(),"!==":(n,i)=>n!==i(),"<":(n,i)=>n":(n,i)=>n>i(),"<=":(n,i)=>n<=i(),">=":(n,i)=>n>=i(),"<<":(n,i)=>n<>":(n,i)=>n>>i(),">>>":(n,i)=>n>>>i(),"+":(n,i)=>n+i(),"-":(n,i)=>n-i(),"*":(n,i)=>n*i(),"/":(n,i)=>n/i(),"%":(n,i)=>n%i()}[e.operator](Mn.evalAst(e.left,t),()=>Mn.evalAst(e.right,t))},evalCompound(e,t){let r;for(let n=0;n-Mn.evalAst(n,t),"!":n=>!Mn.evalAst(n,t),"~":n=>~Mn.evalAst(n,t),"+":n=>+Mn.evalAst(n,t),typeof:n=>typeof Mn.evalAst(n,t)}[e.operator](e.argument)},evalArrayExpression(e,t){return e.elements.map(r=>Mn.evalAst(r,t))},evalCallExpression(e,t){let r=e.arguments.map(i=>Mn.evalAst(i,t));return Mn.evalAst(e.callee,t)(...r)},evalAssignmentExpression(e,t){if(e.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=e.left.name,n=Mn.evalAst(e.right,t);return t[r]=n,t[r]}},Yve=class{constructor(t){this.code=t,this.ast=d0(this.code)}runInNewContext(t){let r=Object.assign(Object.create(null),t);return Mn.evalAst(this.ast,r)}};function n_(e,t){return e=e.slice(),e.push(t),e}function Wve(e,t){return t=t.slice(),t.unshift(e),t}var Xve=class extends Error{constructor(t){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=t,this.name="NewError"}};function Zr(e,t,r,n,i){if(!(this instanceof Zr))try{return new Zr(e,t,r,n,i)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof e=="string"&&(i=n,n=r,r=t,t=e,e=null);let s=e&&typeof e=="object";if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=Object.hasOwn(e,"wrap")?e.wrap:!0,this.sandbox=e.sandbox||{},this.eval=e.eval===void 0?"safe":e.eval,this.ignoreEvalErrors=typeof e.ignoreEvalErrors>"u"?!1:e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},e.autostart!==!1){let a={path:s?e.path:t};s?"json"in e&&(a.json=e.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new Xve(o);return o}}Zr.prototype.evaluate=function(e,t,r,n){let i=this.parent,s=this.parentProperty,{flatten:a,wrap:o}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,e=e||this.path,e&&typeof e=="object"&&!Array.isArray(e)){if(!e.path&&e.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:t}=e),a=Object.hasOwn(e,"flatten")?e.flatten:a,this.currResultType=Object.hasOwn(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=Object.hasOwn(e,"sandbox")?e.sandbox:this.currSandbox,o=Object.hasOwn(e,"wrap")?e.wrap:o,this.currEval=Object.hasOwn(e,"eval")?e.eval:this.currEval,r=Object.hasOwn(e,"callback")?e.callback:r,this.currOtherTypeCallback=Object.hasOwn(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,i=Object.hasOwn(e,"parent")?e.parent:i,s=Object.hasOwn(e,"parentProperty")?e.parentProperty:s,e=e.path}if(i=i||null,s=s||null,Array.isArray(e)&&(e=Zr.toPathString(e)),!e&&e!==""||!t)return;let u=Zr.toPathArray(e);u[0]==="$"&&u.length>1&&u.shift(),this._hasParentSelector=null;let c=this._trace(u,t,["$"],i,s,r).filter(function(l){return l&&!l.isParentSelector});return c.length?!o&&c.length===1&&!c[0].hasArrExpr?this._getPreferredOutput(c[0]):c.reduce((l,d)=>{let f=this._getPreferredOutput(d);return a&&Array.isArray(f)?l=l.concat(f):l.push(f),l},[]):o?[]:void 0};Zr.prototype._getPreferredOutput=function(e){let t=this.currResultType;switch(t){case"all":{let r=Array.isArray(e.path)?e.path:Zr.toPathArray(e.path);return e.pointer=Zr.toPointer(r),e.path=typeof e.path=="string"?e.path:Zr.toPathString(e.path),e}case"value":case"parent":case"parentProperty":return e[t];case"path":return Zr.toPathString(e[t]);case"pointer":return Zr.toPointer(e.path);default:throw new TypeError("Unknown result type")}};Zr.prototype._handleCallback=function(e,t,r){if(t){let n=this._getPreferredOutput(e);e.path=typeof e.path=="string"?e.path:Zr.toPathString(e.path),t(n,r,e)}};Zr.prototype._trace=function(e,t,r,n,i,s,a,o){let u;if(!e.length)return u={path:r,value:t,parent:n,parentProperty:i,hasArrExpr:a},this._handleCallback(u,s,"value"),u;let c=e[0],l=e.slice(1),d=[];function f(p){Array.isArray(p)?p.forEach(h=>{d.push(h)}):d.push(p)}if((typeof c!="string"||o)&&t&&Object.hasOwn(t,c))f(this._trace(l,t[c],n_(r,c),t,c,s,a));else if(c==="*")this._walk(t,p=>{f(this._trace(l,t[p],n_(r,p),t,p,s,!0,!0))});else if(c==="..")f(this._trace(l,t,r,n,i,s,a)),this._walk(t,p=>{typeof t[p]=="object"&&f(this._trace(e.slice(),t[p],n_(r,p),t,p,s,!0))});else{if(c==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(c==="~")return u={path:n_(r,c),value:i,parent:n,parentProperty:null},this._handleCallback(u,s,"property"),u;if(c==="$")f(this._trace(l,t,r,null,null,s,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(c))f(this._slice(c,l,t,r,n,i,s));else if(c.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let p=c.replace(/^\?\((.*?)\)$/u,"$1"),h=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(p);h?this._walk(t,m=>{let y=[h[2]],g=h[1]?t[m][h[1]]:t[m];this._trace(y,g,r,n,i,s,!0).length>0&&f(this._trace(l,t[m],n_(r,m),t,m,s,!0))}):this._walk(t,m=>{this._eval(p,t[m],m,r,n,i)&&f(this._trace(l,t[m],n_(r,m),t,m,s,!0))})}else if(c[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(Wve(this._eval(c,t,r.at(-1),r.slice(0,-1),n,i),l),t,r,n,i,s,a))}else if(c[0]==="@"){let p=!1,h=c.slice(1,-2);switch(h){case"scalar":(!t||!["object","function"].includes(typeof t))&&(p=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===h&&(p=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(p=!0);break;case"number":Number.isFinite(t)&&(p=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(p=!0);break;case"object":t&&typeof t===h&&(p=!0);break;case"array":Array.isArray(t)&&(p=!0);break;case"other":p=this.currOtherTypeCallback(t,r,n,i);break;case"null":t===null&&(p=!0);break;default:throw new TypeError("Unknown value type "+h)}if(p)return u={path:r,value:t,parent:n,parentProperty:i},this._handleCallback(u,s,"value"),u}else if(c[0]==="`"&&t&&Object.hasOwn(t,c.slice(1))){let p=c.slice(1);f(this._trace(l,t[p],n_(r,p),t,p,s,a,!0))}else if(c.includes(",")){let p=c.split(",");for(let h of p)f(this._trace(Wve(h,l),t,r,n,i,s,!0))}else!o&&t&&Object.hasOwn(t,c)&&f(this._trace(l,t[c],n_(r,c),t,c,s,a,!0))}if(this._hasParentSelector)for(let p=0;p{t(r)})};Zr.prototype._slice=function(e,t,r,n,i,s,a){if(!Array.isArray(r))return;let o=r.length,u=e.split(":"),c=u[2]&&Number.parseInt(u[2])||1,l=u[0]&&Number.parseInt(u[0])||0,d=u[1]&&Number.parseInt(u[1])||o;l=l<0?Math.max(0,l+o):Math.min(o,l),d=d<0?Math.max(0,d+o):Math.min(o,d);let f=[];for(let p=l;p{f.push(m)});return f};Zr.prototype._eval=function(e,t,r,n,i,s){this.currSandbox._$_parentProperty=s,this.currSandbox._$_parent=i,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=t;let a=e.includes("@path");a&&(this.currSandbox._$_path=Zr.toPathString(n.concat([r])));let o=this.currEval+"Script:"+e;if(!Zr.cache[o]){let u=e.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(u=u.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Zr.cache[o]=new this.safeVm.Script(u);else if(this.currEval==="native")Zr.cache[o]=new this.vm.Script(u);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let c=this.currEval;Zr.cache[o]=new c(u)}else if(typeof this.currEval=="function")Zr.cache[o]={runInNewContext:c=>this.currEval(u,c)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Zr.cache[o].runInNewContext(this.currSandbox)}catch(u){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+u.message+": "+e)}};Zr.cache={};Zr.toPathString=function(e){let t=e,r=t.length,n="$";for(let i=1;i(e=e||"",t=t||"",resolve(e,t)),eRt={query(e,t){return Zr.JSONPath({path:t,json:e})}},Jve=!0,tRt=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",xzr="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",Czr="^(ftp|magnet|thunder|ws):",Zve=class{constructor(t=""){this.MY_URL=t,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(t,r){return!!new RegExp(t,"mi").exec(r)}contains(t,r){return t.indexOf(r)!==-1}parseHikerToJq(t,r=!1){if(this.contains(t,"&&")){let n=t.split("&&"),i=[];for(let s=0;s=n.length-1?i.push(n[s]):i.push(`${n[s]}:eq(0)`)}t=i.join(" ")}else{let n=t.split(" "),i=n[n.length-1];!this.test(tRt,i)&&r&&(t=`${t}:eq(0)`)}return t}getParseInfo(t){let r=[],n=0,i=t;if(this.contains(t,":eq")){i=t.split(":eq")[0];let s=t.split(":eq")[1];this.contains(i,"--")?(r=i.split("--").slice(1),i=i.split("--")[0]):this.contains(s,"--")&&(r=s.split("--").slice(1),s=s.split("--")[0]);try{n=parseInt(s.split("(")[1].split(")")[0])}catch{}}else this.contains(t,"--")&&(i=t.split("--")[0],r=t.split("--").slice(1));return{nparse_rule:i,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(t){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(t))!==null;){let i=`:lt(${n[2]}):gt(${n[1]})`;t=t.substring(0,n.index)+i+t.substring(n.index+n[0].length),r.lastIndex=n.index}return t}parseOneRule(t,r,n){let{nparse_rule:i,nparse_index:s,excludes:a}=this.getParseInfo(r);if(i=this.reorderAdjacentLtAndGt(i),n?n=n.find(i):n=t(i),this.contains(r,":eq")&&(n=n.eq(s)),a.length>0&&n){n=n.clone();for(let o of a)n.find(o).remove()}return n}parseText(t){return t=t.replace(/[\s]+/gm,` + `)})}Nm();jd();function QXr(e){if(!e)return"unknown error";let t=e?.code||"",r=e?.response?.status,n=e?.config?.timeout,i=[e?.message||String(e)];return t&&i.push(`code=${t}`),r!==void 0&&i.push(`status=${r}`),n!==void 0&&i.push(`timeout=${n}ms`),i.join(", ")}function WXr(e){let t=String(e?.code||"").toUpperCase(),r=String(e?.message||"").toLowerCase();return t==="ECONNABORTED"||t==="ETIMEDOUT"||r.includes("timeout")?"timeout":t==="ECONNREFUSED"?"conn_refused":t==="ECONNRESET"?"conn_reset":t==="ENOTFOUND"||t==="EAI_AGAIN"?"dns_error":String(e?.name||"")==="AbortError"?"aborted":"other"}async function zH(e,t,r=400,n="xml"){return jSe(e,t,r,{format:n})}async function XXr(e,t){let r=new AbortController;e.raw.on("aborted",()=>{r.abort(),De.info("[DanmuProxy] Client disconnected, aborting danmu processing.")});let n=Date.now(),s=Number(e?.server?.address?.()?.port||0);try{let{name:i,episodeNumber:a}=e.query,o=aa(e.query?.format);if(!i||!a)return await zH(t,"\u7F3A\u5C11\u5FC5\u8981\u53C2\u6570: name \u548C episodeNumber",400,o);let c=await Rh(e.server),u=aa(e.query?.format||c?.format);if(!c?.urls||c.urls.length===0)return await zH(t,"\u6CA1\u6709\u914D\u7F6E\u5F39\u5E55\u6E90",500,u);De.info(`[DanmuDiag][Proxy] stage=request_start name="${i}" extractedTitle="${Il(i)}" episode="${a}" format="${u}" sources=${c.urls.length} localServerPort=${s}`),await hT(),De.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u8BF7\u6C42\u5F00\u59CB: rawName="${i}", extractedTitle="${Il(i)}", episode="${a}", format="${u}", sources=${c.urls.length}`),De.info(`[DanmuDiag][Proxy] stage=match_start timeout=8000 name="${i}" episode="${a}"`);let l=Date.now(),d=await grt(i,a,c.urls,{timeout:8e3,useCache:!0,minSimilarity:.5,format:u,signal:r.signal});if(De.info(`[DanmuDiag][Proxy] stage=match_done success=${!!d?.success} duration=${Date.now()-l}ms name="${i}" episode="${a}"`),r.signal.aborted)return;if(!d.success)return De.error(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5339\u914D\u5931\u8D25: rawName="${i}", extractedTitle="${Il(i)}", episode="${a}", error="${d.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55\uFF0C\u8BF7\u624B\u52A8\u63A8\u9001"}"`),De.error(`[DanmuDiag][Proxy] stage=match_fail error="${d.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55"}" duration=${Date.now()-n}ms`),await zH(t,d.error||"\u672A\u5339\u914D\u5230\u5F39\u5E55\uFF0C\u8BF7\u624B\u52A8\u63A8\u9001",404,u);De.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5339\u914D\u6210\u529F: rawName="${i}", extractedTitle="${Il(i)}", episode="${a}", format="${u}", animeTitle="${d.matchInfo?.animeTitle||""}", matchedEpisode="${d.matchInfo?.episodeTitle||""}", sourceUrl="${d.sourceUrl||""}", similarity=${d.similarity}`),De.info(`[DanmuProxy] Match successful: ${d.danmuUrl}`),De.info(`[DanmuDiag][Proxy] stage=fetch_content_start timeout=10000 format="${u}" danmuUrl="${d.danmuUrl}" sourceUrl="${d.sourceUrl||""}"`);let f=Date.now(),h=await _rt(d.danmuUrl,{signal:r.signal,format:u,timeout:1e4});if(De.info(`[DanmuDiag][Proxy] stage=fetch_content_done duration=${Date.now()-f}ms format="${u}" danmuUrl="${d.danmuUrl}"`),r.signal.aborted)return;let p=Dk(h,u);De.info(`[DanmuProxy] Danmu loaded: ${p} items`),De.info(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5F39\u5E55\u52A0\u8F7D\u6210\u529F: rawName="${i}", episode="${a}", format="${u}", danmuCount=${p}, danmuUrl="${d.danmuUrl}"`);let m="";d.fromPreference?m=`\u5F39\u5E55\u5339\u914D(\u504F\u597D): ${d.matchInfo.animeTitle} ${d.matchInfo.episodeTitle} (${p}\u6761)`:d.fromCache?m=`\u5F39\u5E55\u5339\u914D(\u7F13\u5B58): ${d.matchInfo.animeTitle} ${d.matchInfo.episodeTitle} (${p}\u6761)`:m=`\u5F39\u5E55\u5339\u914D: ${d.matchInfo.animeTitle} ${d.matchInfo.episodeTitle} (${p}\u6761)`,De.info(`[DanmuProxy] \u51C6\u5907\u53D1\u9001\u63D0\u793A: "${m}"`);try{tn.isAvailable()?(De.info("[DanmuProxy] \u8C03\u7528 hostBridge.toast..."),await tn.toast(m,{duration:2})===null?De.info("[DanmuProxy] host bridge \u8FD4\u56DE null (\u53EF\u80FD\u662F Dart \u901A\u4FE1\u5931\u8D25)"):De.info("[DanmuProxy] Toast \u63D0\u793A\u53D1\u9001\u6210\u529F")):De.error("[DanmuProxy] host bridge unavailable")}catch(_){De.error("[DanmuProxy] Toast \u63D0\u793A\u53D1\u9001\u5931\u8D25:",_.message)}let g=u==="xml"?zxt(h):h;De.info(`[DanmuDiag][Proxy] stage=response_send_ok format="${u}" danmuCount=${p} duration=${Date.now()-n}ms`),t.header("Content-Type",Pk(u)).send(g)}catch(i){if(i.name==="AbortError"||r.signal.aborted){De.info("[DanmuProxy] Request was aborted, ignoring further processing."),De.info(`[DanmuDiag][Proxy] stage=aborted duration=${Date.now()-n}ms`);return}let a=WXr(i),o=QXr(i);De.error(`[DanmuAutoPush] \u81EA\u52A8\u63A8\u9001\u5F02\u5E38: rawName="${e?.query?.name||""}", episode="${e?.query?.episodeNumber||""}", message="${i.message}"`),De.error(`[DanmuDiag][Proxy] stage=failed type=${a} detail="${o}" duration=${Date.now()-n}ms`),await zH(t,`\u5F39\u5E55\u52A0\u8F7D\u5931\u8D25: ${i.message}`,500,aa(e?.query?.format))}}var Wxt=XXr;var KSe=async e=>(await e.db.getObjectDefault("/t4",{}))?.list||e.config.t4?.list||[],JXr=async(e,t)=>{await e.db.push("/t4/list",t)},ZXr=async e=>{await e.db.delete("/t4/list")};async function GSe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await KSe(t.server)})}),e.put("/list",async(t,r)=>{await JXr(t.server,t.body),r.send({code:0})}),e.delete("/list",async(t,r)=>{await ZXr(t.server),r.send({code:0})})}vr();Cr();ia();function eTe(e,t){let u=fn(),l=ye.create({baseURL:t,timeout:12e3,httpAgent:u.httpAgent,httpsAgent:u.httpsAgent}),d=new _t(200,3e4),f=new Map,h=new _t(200,1e4),p=new Map,m=new _t(200,2e4),g=new Map,_=new _t(200,1e4),y=new Map,A=new _t(200,8e3),E=new Map;function v(z,oe,le=30){if(z.size<=oe)return;let te=0;for(let Q of z.keys())if(z.delete(Q),te++,te>=le)break}function b(z){return z?.body||{}}function I(z,oe={}){return JSON.stringify({id:String(z||"").trim(),meta:oe&&typeof oe=="object"?oe:{}})}function T(z){try{let oe=JSON.parse(String(z||""));if(oe&&typeof oe=="object"&&oe.id)return{id:String(oe.id||"").trim(),meta:oe.meta&&typeof oe.meta=="object"?oe.meta:{}}}catch{}return{id:String(z||"").trim(),meta:{}}}function x(z){return Array.isArray(z?.list)&&(z.list=z.list.map(oe=>{let le=oe?.vod_pic||"",te=oe?.vod_remarks||"";return{...oe,vod_id:I(oe?.vod_id||"",{vod_pic:le,vod_remarks:te})}})),z}function w(z,oe){let le=Object.entries(oe||{}).sort(([te],[Q])=>te.localeCompare(Q));return`${z}:${JSON.stringify(le)}`}async function D(z,oe,le,te,Q){let Z=z.get(le);if(Z)return Z;if(oe.has(le))return oe.get(le);let de=(async()=>{let B=await Q();return z.set(le,B),B})();oe.set(le,de),v(oe,200);try{return await de}finally{oe.get(le)===de&&oe.delete(le)}}async function M(z,oe){try{let{data:le}=await l.get("",{params:z});return le||oe}catch{return oe}}function L(){return{}}async function U(){let z={filter:!0},oe=w("home",z);return D(d,f,oe,3e4,async()=>M(z,{class:[]}))}async function G(z){let oe=b(z),le={ac:"detail",t:oe.id,pg:oe.page||1},te=w("category",le);return D(h,p,te,1e4,async()=>{let Q=await M(le,{list:[],page:1,pagecount:1,limit:0,total:0});return x(Q)})}async function $(z){let oe=b(z),le=T(oe.id),te={ac:"detail",ids:le.id},Q=w("detail",te);return D(m,g,Q,2e4,async()=>{let Z=await M(te,{list:[]});return Array.isArray(Z?.list)&&(Z.list=Z.list.map(de=>({...de,vod_pic:le.meta?.vod_pic||de?.vod_pic||"",vod_remarks:le.meta?.vod_remarks||de?.vod_remarks||""}))),Z})}async function K(z){let oe=b(z),le=String(oe.id||""),te={play:le,flag:oe.flag},Q=w("play",te),Z=await D(A,E,Q,8e3,async()=>M(te,{}));return!Z?.url&&!Z?.urls&&le.startsWith("http")?{url:le}:Z}async function ee(z){let le={ac:"list",wd:b(z).wd},te=w("search",le);return D(_,y,te,1e4,async()=>{let Q=await M(le,{list:[],page:1,pagecount:1,limit:0,total:0});return x(Q)})}return{meta:{key:e,name:e,type:3,t4:!0},api:async z=>{z.post("/init",L),z.post("/home",U),z.post("/category",G),z.post("/detail",$),z.post("/play",K),z.post("/search",ee)}}}var tTe=async e=>(await e.db.getObjectDefault("/cms",{}))?.list||e.config.cms?.list||[],fJr=async(e,t)=>{await e.db.push("/cms/list",t)},hJr=async e=>{await e.db.delete("/cms/list")};async function rTe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await tTe(t.server)})}),e.put("/list",async(t,r)=>{await fJr(t.server,t.body),r.send({code:0})}),e.delete("/list",async(t,r)=>{await hJr(t.server),r.send({code:0})})}vr();Dn();Cr();var _Jr=1e4,AJr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"};function YH(e){return e?.body||{}}function iwt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function EJr(){return{class:[],filters:{}}}function QH(e=1){return{page:e,pagecount:e,limit:0,total:0,list:[]}}function awt(){return{list:[]}}function owt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function yJr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function vJr(e,t){return e&&typeof e=="object"?e:t}function cTe(e,t){let r=fn(),n=ye.create({baseURL:t,timeout:_Jr,headers:AJr,httpAgent:r.httpAgent,httpsAgent:r.httpsAgent,validateStatus:f=>f>=200&&f<400});async function s(f,h){try{let{data:p}=await n.get("",{params:f});return vJr(p,h)}catch{return h}}function i(){return{}}async function a(){let f=Qr("cms",arguments[0]||{}),h=Wr(f);if(h)return h;let p=await s({ac:"class"},EJr());return hn(f,p,bt.semiStatic),p}async function o(f){let h=YH(f),p=iwt(h.page);if(!h.id)return QH(p);let m=await s({ac:"detail",t:h.id,pg:p},QH(p));return Array.isArray(m?.list)&&(m.list=m.list.map(g=>{let _=g?.vod_pic||g?.pic||g?.img||"",y=g?.vod_remarks||g?.remarks||g?.note||"",A=g?.vod_id||g?.id||g?.vid||"";return{...g,vod_id:owt(A,{vod_pic:_,vod_remarks:y}),vod_pic:_,vod_remarks:y}})),m}async function c(f){let h=YH(f);if(!h.id)return awt();let p=yJr(h.id),m=await s({ac:"detail",ids:p.id},awt());return Array.isArray(m?.list)&&(m.list=m.list.map(g=>({...g,vod_pic:p.meta?.vod_pic||g?.vod_pic||g?.pic||g?.img||"",vod_remarks:p.meta?.vod_remarks||g?.vod_remarks||g?.remarks||g?.note||""}))),m}async function u(f){return{parse:0,url:YH(f).id||""}}async function l(f){let h=YH(f),p=iwt(h.page),m=String(h.wd||"").trim();if(!m)return QH(p);let g=await s({ac:"list",wd:m,pg:p},QH(p));return Array.isArray(g?.list)&&(g.list=g.list.map(_=>{let y=_?.vod_pic||_?.pic||_?.img||"",A=_?.vod_remarks||_?.remarks||_?.note||"",E=_?.vod_id||_?.id||_?.vid||"";return{..._,vod_id:owt(E,{vod_pic:y,vod_remarks:A}),vod_pic:y,vod_remarks:A}})),g}return{meta:{key:e,name:e,type:3,cms:!0},api:async f=>{f.post("/init",i),f.post("/home",a),f.post("/category",o),f.post("/detail",c),f.post("/play",u),f.post("/search",l)}}}var Rg=Ne(require("fs"),1),mT=Ne(require("path"),1),uwt=require("stream"),lwt=require("stream/promises"),gT=mT.default.join(process.env.NODE_PATH||".","js"),WH="/js/order",cwt=5*1024*1024,SJr=20*1024*1024,TJr=/[\/\\\0-\x1f\x7f]/;function XH(){try{Rg.default.mkdirSync(gT,{recursive:!0})}catch{}}function dwt(){return gT}function LC(){let e=Number(process.env.JS_MAX_UPLOAD_MB||0);if(!Number.isFinite(e)||e<=0)return cwt;let t=Math.floor(e*1024*1024);return t<=0?cwt:Math.min(t,SJr)}function JH(e=LC()){let t=e/1024/1024;return Number.isInteger(t)?`${t}MB`:`${t.toFixed(1)}MB`}function ZH(e){let t=String(e||"").trim(),r=mT.default.basename(t);return!r||r!==t||r==="."||r===".."||TJr.test(r)||!r.toLowerCase().endsWith(".js")?null:r}function fwt(e){return!e||e<1024?`${e||0}B`:e<1024*1024?`${(e/1024).toFixed(0)}K`:`${(e/1024/1024).toFixed(1)}M`}function hwt(e){return String(e||"").replace(/\.js$/i,"").trim().replace(/^nodejs_/,"").replace(/[^a-zA-Z0-9_\-]/g,"_").replace(/^_+|_+$/g,"")||Buffer.from(e,"utf8").toString("base64url")}function bJr(){XH();let e=[];try{e=Rg.default.readdirSync(gT,{withFileTypes:!0})}catch{return[]}let t=[];for(let r of e){if(!r.isFile()||!r.name.toLowerCase().endsWith(".js"))continue;let n=ZH(r.name);if(!n)continue;let s=mT.default.join(gT,n);try{let i=Rg.default.statSync(s);if(i.size<=0)continue;t.push({name:n,path:s,size:i.size,size_str:fwt(i.size),mtime:i.mtimeMs,key:hwt(n)})}catch{}}return t}async function uTe(e){let t=bJr(),r=new Map(t.map(a=>[a.name,a])),n=[];try{n=await e.db.getObjectDefault(WH,[])}catch{}let s=new Set,i=[];if(Array.isArray(n))for(let a of n){let o=r.get(a);o&&!s.has(a)&&(i.push(o),s.add(a))}for(let a of t)s.has(a.name)||i.push(a);return i}async function pwt(e){return(await uTe(e)).map(r=>({name:r.name.replace(/\.js$/i,""),key:r.key,path:r.path,file:r.name,enabled:!0}))}async function mwt(e,t){let r=Array.isArray(t)?t.filter(n=>ZH(n)):[];await e.db.push(WH,r)}async function gwt(e,t,r={}){let n=ZH(e);if(!n)throw new Error("\u6587\u4EF6\u540D\u975E\u6CD5\u6216\u540E\u7F00\u4E0D\u662F .js");if(!t||typeof t[Symbol.asyncIterator]!="function")throw new Error("\u4E0A\u4F20\u6D41\u65E0\u6548");XH();let s=Number(r.maxBytes||LC()),i=mT.default.join(gT,n);if(!(r.overwrite===!0||r.overwrite==="1"||r.overwrite==="true")&&Rg.default.existsSync(i)){t.destroy?.();let l=new Error("\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6");throw l.code="JS_UPLOAD_EXISTS",l.name=n,l}let o=mT.default.join(gT,`.upload-${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2)}.tmp`),c=0,u=new uwt.Transform({transform(l,d,f){if(c+=l.length,c>s){let h=new Error(`\u6587\u4EF6\u8D85\u8FC7 ${JH(s)} \u4E0A\u9650`);h.code="JS_UPLOAD_TOO_LARGE",f(h);return}f(null,l)}});try{if(await(0,lwt.pipeline)(t,u,Rg.default.createWriteStream(o,{flags:"wx"})),c<=0)throw new Error("\u6587\u4EF6\u4E3A\u7A7A");return await Rg.default.promises.rename(o,i),{name:n,size:c,size_str:fwt(c),key:hwt(n),path:i}}catch(l){t.destroy?.();try{await Rg.default.promises.unlink(o)}catch{}throw l}}async function _wt(e,t){let r=ZH(t);if(!r)throw new Error("\u6587\u4EF6\u540D\u975E\u6CD5");let n=mT.default.join(gT,r);try{await Rg.default.promises.unlink(n)}catch(s){if(s?.code!=="ENOENT")throw s}try{let s=await e.db.getObjectDefault(WH,[]);Array.isArray(s)&&s.includes(r)&&await e.db.push(WH,s.filter(i=>i!==r))}catch{}return{name:r}}var Awt=async e=>await pwt(e);async function lTe(e){XH(),e.get("/list",async t=>{let r=await uTe(t.server);return{code:0,data:{dir:dwt(),files:r.map(n=>({name:n.name,size:n.size,size_str:n.size_str,mtime:n.mtime,key:n.key}))}}}),e.post("/upload",async(t,r)=>{let n=LC(),s=null;try{s=await t.file({limits:{fileSize:n}})}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${JH(n)} \u4E0A\u9650`}):r.code(400).send({code:-1,message:"\u4E0A\u4F20\u8BFB\u53D6\u5931\u8D25: "+(i?.message||i)})}if(!s)return r.code(400).send({code:-1,message:"\u672A\u6536\u5230\u6587\u4EF6"});try{let i=t.query?.overwrite==="1"||t.query?.overwrite==="true";return{code:0,data:await gwt(s.filename,s.file,{maxBytes:n,overwrite:i})}}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"||i?.code==="JS_UPLOAD_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${JH(n)} \u4E0A\u9650`}):i?.code==="JS_UPLOAD_EXISTS"?r.code(409).send({code:-1,message:i?.message||"\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6",data:{exists:!0,name:i?.name||s.filename}}):r.code(400).send({code:-1,message:i?.message||String(i)})}}),e.delete("/file/:name",async(t,r)=>{let n=decodeURIComponent(String(t.params?.name||""));if(!n)return r.code(400).send({code:-1,message:"\u7F3A\u5C11 name"});try{return{code:0,data:await _wt(t.server,n)}}catch(s){return r.code(400).send({code:-1,message:s?.message||String(s)})}}),e.put("/order",async(t,r)=>{let n=t.body||{},s=Array.isArray(n)?n:n.order;if(!Array.isArray(s))return r.code(400).send({code:-1,message:"\u53C2\u6570\u5E94\u4E3A\u6587\u4EF6\u540D\u6570\u7EC4"});try{return await mwt(t.server,s),{code:0}}catch(i){return r.code(400).send({code:-1,message:i?.message||String(i)})}})}var JG=Ne(require("fs/promises"),1),Ql=Ne(require("path"),1),ZG=require("url"),XG=Ne(require("crypto"),1);vr();Xd();var Zxe=Ne(Yi(),1),ewe=Ne(OPt(),1),twe=Ne(require("http2"),1),rwe=Ne(UPt(),1),nwe=Ne(cx(),1);yi();Cr();var Z1e={};kt(Z1e,{jsonpath:()=>W1e,jsoup:()=>J1e,urljoin:()=>Q1e});Xd();var PLt=Ne(require("vm"),1),j1e=class{add(t,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(t)?t:[t]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(t,r){this[t]=this[t]||[],this[t].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},K1e=class{constructor(t){this.jsep=t,this.registered={}}register(...t){t.forEach(r=>{if(typeof r!="object"||!r.name||!r.init)throw new Error("Invalid JSEP plugin format");this.registered[r.name]||(r.init(this.jsep),this.registered[r.name]=r)})}},Ju=class e{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+e.version}static addUnaryOp(t){return e.max_unop_len=Math.max(t.length,e.max_unop_len),e.unary_ops[t]=1,e}static addBinaryOp(t,r,n){return e.max_binop_len=Math.max(t.length,e.max_binop_len),e.binary_ops[t]=r,n?e.right_associative.add(t):e.right_associative.delete(t),e}static addIdentifierChar(t){return e.additional_identifier_chars.add(t),e}static addLiteral(t,r){return e.literals[t]=r,e}static removeUnaryOp(t){return delete e.unary_ops[t],t.length===e.max_unop_len&&(e.max_unop_len=e.getMaxKeyLen(e.unary_ops)),e}static removeAllUnaryOps(){return e.unary_ops={},e.max_unop_len=0,e}static removeIdentifierChar(t){return e.additional_identifier_chars.delete(t),e}static removeBinaryOp(t){return delete e.binary_ops[t],t.length===e.max_binop_len&&(e.max_binop_len=e.getMaxKeyLen(e.binary_ops)),e.right_associative.delete(t),e}static removeAllBinaryOps(){return e.binary_ops={},e.max_binop_len=0,e}static removeLiteral(t){return delete e.literals[t],e}static removeAllLiterals(){return e.literals={},e}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(t){this.expr=t,this.index=0}static parse(t){return new e(t).parse()}static getMaxKeyLen(t){return Math.max(0,...Object.keys(t).map(r=>r.length))}static isDecimalDigit(t){return t>=48&&t<=57}static binaryPrecedence(t){return e.binary_ops[t]||0}static isIdentifierStart(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}static isIdentifierPart(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}throwError(t){let r=new Error(t+" at character "+this.index);throw r.index=this.index,r.description=t,r}runHook(t,r){if(e.hooks[t]){let n={context:this,node:r};return e.hooks.run(t,n),n.node}return r}searchHook(t){if(e.hooks[t]){let r={context:this};return e.hooks[t].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let t=this.code;for(;t===e.SPACE_CODE||t===e.TAB_CODE||t===e.LF_CODE||t===e.CR_CODE;)t=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let t=this.gobbleExpressions(),r=t.length===1?t[0]:{type:e.COMPOUND,body:t};return this.runHook("after-all",r)}gobbleExpressions(t){let r=[],n,s;for(;this.index0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.lengthi.right_a&&d.right_a?n>d.prec:n<=d.prec;for(;s.length>2&&l(s[s.length-2]);)o=s.pop(),r=s.pop().value,a=s.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:o},s.push(t);t=this.gobbleToken(),t||this.throwError("Expected expression after "+u),s.push(i,t)}for(c=s.length-1,t=s[c];c>1;)t={type:e.BINARY_EXP,operator:s[c-1].value,left:s[c-2],right:t},c-=2;return t}gobbleToken(){let t,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,e.max_unop_len),n=r.length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}else if(i===e.COMMA_CODE){if(this.index++,s++,s!==r.length){if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(let a=r.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});Ju.max_unop_len=Ju.getMaxKeyLen(Ju.unary_ops);Ju.max_binop_len=Ju.getMaxKeyLen(Ju.binary_ops);var Fg=e=>new Ju(e).parse(),Lin=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(Ju).filter(e=>!Lin.includes(e)&&Fg[e]===void 0).forEach(e=>{Fg[e]=Ju[e]});Fg.Jsep=Ju;var Min="ConditionalExpression",kin={name:"ternary",init(e){e.hooks.add("after-expression",function(r){if(r.node&&this.code===e.QUMARK_CODE){this.index++;let n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;let i=this.gobbleExpression();if(i||this.throwError("Expected expression"),r.node={type:Min,test:n,consequent:s,alternate:i},n.operator&&e.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&e.binary_ops[a.right.operator]<=.9;)a=a.right;r.node.test=a.right,a.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};Fg.plugins.register(kin);var DLt=47,Bin=92,Uin={name:"regex",init(e){e.hooks.add("gobble-token",function(r){if(this.code===DLt){let n=++this.index,s=!1;for(;this.index=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57)a+=this.char;else break}let o;try{o=new RegExp(i,a)}catch(c){this.throwError(c.message)}return r.node={type:e.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===e.OBRACK_CODE?s=!0:s&&this.code===e.CBRACK_CODE&&(s=!1),this.index+=this.code===Bin?2:1}this.throwError("Unclosed Regex")}})}},V1e=43,Fin=45,ux={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[V1e,Fin],assignmentPrecedence:.9,init(e){let t=[e.IDENTIFIER,e.MEMBER_EXP];ux.assignmentOperators.forEach(n=>e.addBinaryOp(n,ux.assignmentPrecedence,!0)),e.hooks.add("gobble-token",function(s){let i=this.code;ux.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:i===V1e?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!t.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),e.hooks.add("after-token",function(s){if(s.node){let i=this.code;ux.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(t.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:i===V1e?"++":"--",argument:s.node,prefix:!1})}}),e.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){ux.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};Fg.plugins.register(Uin,ux);Fg.addUnaryOp("typeof");Fg.addLiteral("null",null);Fg.addLiteral("undefined",void 0);var $in=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),_s={evalAst(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":return _s.evalBinaryExpression(e,t);case"Compound":return _s.evalCompound(e,t);case"ConditionalExpression":return _s.evalConditionalExpression(e,t);case"Identifier":return _s.evalIdentifier(e,t);case"Literal":return _s.evalLiteral(e,t);case"MemberExpression":return _s.evalMemberExpression(e,t);case"UnaryExpression":return _s.evalUnaryExpression(e,t);case"ArrayExpression":return _s.evalArrayExpression(e,t);case"CallExpression":return _s.evalCallExpression(e,t);case"AssignmentExpression":return _s.evalAssignmentExpression(e,t);default:throw SyntaxError("Unexpected expression",e)}},evalBinaryExpression(e,t){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[e.operator](_s.evalAst(e.left,t),()=>_s.evalAst(e.right,t))},evalCompound(e,t){let r;for(let n=0;n-_s.evalAst(n,t),"!":n=>!_s.evalAst(n,t),"~":n=>~_s.evalAst(n,t),"+":n=>+_s.evalAst(n,t),typeof:n=>typeof _s.evalAst(n,t)}[e.operator](e.argument)},evalArrayExpression(e,t){return e.elements.map(r=>_s.evalAst(r,t))},evalCallExpression(e,t){let r=e.arguments.map(s=>_s.evalAst(s,t));return _s.evalAst(e.callee,t)(...r)},evalAssignmentExpression(e,t){if(e.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=e.left.name,n=_s.evalAst(e.right,t);return t[r]=n,t[r]}},G1e=class{constructor(t){this.code=t,this.ast=Fg(this.code)}runInNewContext(t){let r=Object.assign(Object.create(null),t);return _s.evalAst(this.ast,r)}};function DE(e,t){return e=e.slice(),e.push(t),e}function z1e(e,t){return t=t.slice(),t.unshift(e),t}var Y1e=class extends Error{constructor(t){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=t,this.name="NewError"}};function Pn(e,t,r,n,s){if(!(this instanceof Pn))try{return new Pn(e,t,r,n,s)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof e=="string"&&(s=n,n=r,r=t,t=e,e=null);let i=e&&typeof e=="object";if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=Object.hasOwn(e,"wrap")?e.wrap:!0,this.sandbox=e.sandbox||{},this.eval=e.eval===void 0?"safe":e.eval,this.ignoreEvalErrors=typeof e.ignoreEvalErrors>"u"?!1:e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},e.autostart!==!1){let a={path:i?e.path:t};i?"json"in e&&(a.json=e.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new Y1e(o);return o}}Pn.prototype.evaluate=function(e,t,r,n){let s=this.parent,i=this.parentProperty,{flatten:a,wrap:o}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,e=e||this.path,e&&typeof e=="object"&&!Array.isArray(e)){if(!e.path&&e.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:t}=e),a=Object.hasOwn(e,"flatten")?e.flatten:a,this.currResultType=Object.hasOwn(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=Object.hasOwn(e,"sandbox")?e.sandbox:this.currSandbox,o=Object.hasOwn(e,"wrap")?e.wrap:o,this.currEval=Object.hasOwn(e,"eval")?e.eval:this.currEval,r=Object.hasOwn(e,"callback")?e.callback:r,this.currOtherTypeCallback=Object.hasOwn(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(e,"parent")?e.parent:s,i=Object.hasOwn(e,"parentProperty")?e.parentProperty:i,e=e.path}if(s=s||null,i=i||null,Array.isArray(e)&&(e=Pn.toPathString(e)),!e&&e!==""||!t)return;let c=Pn.toPathArray(e);c[0]==="$"&&c.length>1&&c.shift(),this._hasParentSelector=null;let u=this._trace(c,t,["$"],s,i,r).filter(function(l){return l&&!l.isParentSelector});return u.length?!o&&u.length===1&&!u[0].hasArrExpr?this._getPreferredOutput(u[0]):u.reduce((l,d)=>{let f=this._getPreferredOutput(d);return a&&Array.isArray(f)?l=l.concat(f):l.push(f),l},[]):o?[]:void 0};Pn.prototype._getPreferredOutput=function(e){let t=this.currResultType;switch(t){case"all":{let r=Array.isArray(e.path)?e.path:Pn.toPathArray(e.path);return e.pointer=Pn.toPointer(r),e.path=typeof e.path=="string"?e.path:Pn.toPathString(e.path),e}case"value":case"parent":case"parentProperty":return e[t];case"path":return Pn.toPathString(e[t]);case"pointer":return Pn.toPointer(e.path);default:throw new TypeError("Unknown result type")}};Pn.prototype._handleCallback=function(e,t,r){if(t){let n=this._getPreferredOutput(e);e.path=typeof e.path=="string"?e.path:Pn.toPathString(e.path),t(n,r,e)}};Pn.prototype._trace=function(e,t,r,n,s,i,a,o){let c;if(!e.length)return c={path:r,value:t,parent:n,parentProperty:s,hasArrExpr:a},this._handleCallback(c,i,"value"),c;let u=e[0],l=e.slice(1),d=[];function f(h){Array.isArray(h)?h.forEach(p=>{d.push(p)}):d.push(h)}if((typeof u!="string"||o)&&t&&Object.hasOwn(t,u))f(this._trace(l,t[u],DE(r,u),t,u,i,a));else if(u==="*")this._walk(t,h=>{f(this._trace(l,t[h],DE(r,h),t,h,i,!0,!0))});else if(u==="..")f(this._trace(l,t,r,n,s,i,a)),this._walk(t,h=>{typeof t[h]=="object"&&f(this._trace(e.slice(),t[h],DE(r,h),t,h,i,!0))});else{if(u==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(u==="~")return c={path:DE(r,u),value:s,parent:n,parentProperty:null},this._handleCallback(c,i,"property"),c;if(u==="$")f(this._trace(l,t,r,null,null,i,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(u))f(this._slice(u,l,t,r,n,s,i));else if(u.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let h=u.replace(/^\?\((.*?)\)$/u,"$1"),p=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(h);p?this._walk(t,m=>{let g=[p[2]],_=p[1]?t[m][p[1]]:t[m];this._trace(g,_,r,n,s,i,!0).length>0&&f(this._trace(l,t[m],DE(r,m),t,m,i,!0))}):this._walk(t,m=>{this._eval(h,t[m],m,r,n,s)&&f(this._trace(l,t[m],DE(r,m),t,m,i,!0))})}else if(u[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(z1e(this._eval(u,t,r.at(-1),r.slice(0,-1),n,s),l),t,r,n,s,i,a))}else if(u[0]==="@"){let h=!1,p=u.slice(1,-2);switch(p){case"scalar":(!t||!["object","function"].includes(typeof t))&&(h=!0);break;case"boolean":case"string":case"undefined":case"function":typeof t===p&&(h=!0);break;case"integer":Number.isFinite(t)&&!(t%1)&&(h=!0);break;case"number":Number.isFinite(t)&&(h=!0);break;case"nonFinite":typeof t=="number"&&!Number.isFinite(t)&&(h=!0);break;case"object":t&&typeof t===p&&(h=!0);break;case"array":Array.isArray(t)&&(h=!0);break;case"other":h=this.currOtherTypeCallback(t,r,n,s);break;case"null":t===null&&(h=!0);break;default:throw new TypeError("Unknown value type "+p)}if(h)return c={path:r,value:t,parent:n,parentProperty:s},this._handleCallback(c,i,"value"),c}else if(u[0]==="`"&&t&&Object.hasOwn(t,u.slice(1))){let h=u.slice(1);f(this._trace(l,t[h],DE(r,h),t,h,i,a,!0))}else if(u.includes(",")){let h=u.split(",");for(let p of h)f(this._trace(z1e(p,l),t,r,n,s,i,!0))}else!o&&t&&Object.hasOwn(t,u)&&f(this._trace(l,t[u],DE(r,u),t,u,i,a,!0))}if(this._hasParentSelector)for(let h=0;h{t(r)})};Pn.prototype._slice=function(e,t,r,n,s,i,a){if(!Array.isArray(r))return;let o=r.length,c=e.split(":"),u=c[2]&&Number.parseInt(c[2])||1,l=c[0]&&Number.parseInt(c[0])||0,d=c[1]&&Number.parseInt(c[1])||o;l=l<0?Math.max(0,l+o):Math.min(o,l),d=d<0?Math.max(0,d+o):Math.min(o,d);let f=[];for(let h=l;h{f.push(m)});return f};Pn.prototype._eval=function(e,t,r,n,s,i){this.currSandbox._$_parentProperty=i,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=t;let a=e.includes("@path");a&&(this.currSandbox._$_path=Pn.toPathString(n.concat([r])));let o=this.currEval+"Script:"+e;if(!Pn.cache[o]){let c=e.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(c=c.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Pn.cache[o]=new this.safeVm.Script(c);else if(this.currEval==="native")Pn.cache[o]=new this.vm.Script(c);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let u=this.currEval;Pn.cache[o]=new u(c)}else if(typeof this.currEval=="function")Pn.cache[o]={runInNewContext:u=>this.currEval(c,u)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Pn.cache[o].runInNewContext(this.currSandbox)}catch(c){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+c.message+": "+e)}};Pn.cache={};Pn.toPathString=function(e){let t=e,r=t.length,n="$";for(let s=1;s{if(e=e||"",t=t||"",!t)return e;if(!e)return t;try{return new URL(t,e).toString()}catch{return t}},W1e={query(e,t){return Pn.JSONPath({path:t,json:e})}},lj=!0,LLt=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",qin="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",Hin="^(ftp|magnet|thunder|ws):",X1e=class{constructor(t=""){this.MY_URL=t,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(t,r){return!!new RegExp(t,"mi").exec(r)}contains(t,r){return t.indexOf(r)!==-1}parseHikerToJq(t,r=!1){if(this.contains(t,"&&")){let n=t.split("&&"),s=[];for(let i=0;i=n.length-1?s.push(n[i]):s.push(`${n[i]}:eq(0)`)}t=s.join(" ")}else{let n=t.split(" "),s=n[n.length-1];!this.test(LLt,s)&&r&&(t=`${t}:eq(0)`)}return t}getParseInfo(t){let r=[],n=0,s=t;if(this.contains(t,":eq")){s=t.split(":eq")[0];let i=t.split(":eq")[1];this.contains(s,"--")?(r=s.split("--").slice(1),s=s.split("--")[0]):this.contains(i,"--")&&(r=i.split("--").slice(1),i=i.split("--")[0]);try{n=parseInt(i.split("(")[1].split(")")[0])}catch{}}else this.contains(t,"--")&&(s=t.split("--")[0],r=t.split("--").slice(1));return{nparse_rule:s,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(t){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(t))!==null;){let s=`:lt(${n[2]}):gt(${n[1]})`;t=t.substring(0,n.index)+s+t.substring(n.index+n[0].length),r.lastIndex=n.index}return t}parseOneRule(t,r,n){let{nparse_rule:s,nparse_index:i,excludes:a}=this.getParseInfo(r);if(s=this.reorderAdjacentLtAndGt(s),n?n=n.find(s):n=t(s),this.contains(r,":eq")&&(n=n.eq(i)),a.length>0&&n){n=n.clone();for(let o of a)n.find(o).remove()}return n}parseText(t){return t=t.replace(/[\s]+/gm,` `),t=t.replace(/\n+/g,` -`).replace(/^\s+/,""),t=t.replace(/\n/g," "),t}pdfa(t,r){if(!t||!r)return[];r=this.parseHikerToJq(r);let n=lr(t);Jve&&this.pdfa_html!==t&&(this.pdfa_html=t,this.pdfa_doc=n);let i=r.split(" "),s=null;for(let o of i)if(s=this.parseOneRule(n,o,s),!s)return[];return(s?.toArray()??[]).map(o=>{let u=`${n(o)}`;return u||""})}pdfl(t,r,n,i,s){if(!t||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=lr(t),u=r.split(" "),c=null;for(let l of u)if(c=this.parseOneRule(o,l,c),!c)return[];return c.each((l,d)=>{a.push(`${o(d)}`)}),a}pdfh(t,r,n=""){if(!t||!r)return"";let i=lr(t);if(typeof Jve<"u"&&Jve&&this.pdfa_html!==t&&(this.pdfa_html=t,this.pdfa_doc=i),r==="body&&Text"||r==="Text")return this.parseText(i.text());if(r==="body&&Html"||r==="Html")return i.html();let s;if(this.contains(r,"&&")){let u=r.split("&&");s=u.pop(),r=u.join("&&")}r=this.parseHikerToJq(r,!0);let a=r.split(" "),o=null;for(let u of a)if(o=this.parseOneRule(i,u,o),!o)return"";if(s)switch(s){case"Text":o=o?this.parseText(o.text()):"";break;case"Html":o=o?o.html():"";break;default:let u=o.clone(),c=s.split("||");for(let l of c){if(o=u?.attr(l)||"",this.contains(l.toLowerCase(),"style")&&this.contains(o,"url("))try{o=o.match(/url\((.*?)\)/)[1],o=o.replace(/^['"]|['"]$/g,"")}catch{}if(o&&n&&this.test(xzr,l)&&!this.test(Czr,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):ZNt(n,o)),o)break}}else o=`${o}`;return o}pd(t,r,n=""){return n||(n=this.MY_URL),this.pdfh(t,r,n)}pq(t){return lr(t)}pjfh(t,r,n=!1){if(!t||!r)return"";try{t=typeof t=="string"?JSON.parse(t):t}catch{return""}r.startsWith("$.")||(r="$."+r);let i="",s=r.split("||");for(let a of s){let o=eRt.query(t,a);if(i=Array.isArray(o)?o[0]||"":o||"",n&&i&&(i=ZNt(this.MY_URL,i)),i)break}return i}pj(t,r){return this.pjfh(t,r,!0)}pjfa(t,r){if(!t||!r)return[];try{t=typeof t=="string"?JSON.parse(t):t}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=eRt.query(t,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},i_=Zve;var R9=async e=>r_(e,"leijing"),ebe=async e=>{try{let t=await e.db.getObjectDefault("/leijing/cookie","");if(t)return t}catch{}return String(e.config?.leijing?.cookie||"")},Tzr=async(e,t)=>{await e.db.push("/leijing/urls",t)},Nzr=async(e,t)=>{await e.db.push("/leijing/cookie",String(t||"").trim())},Rzr=async e=>{await e.db.delete("/leijing/urls")},Dzr=async e=>{await e.db.delete("/leijing/cookie")};async function tbe(e){e.get("/urls",async(t,r)=>{r.send({code:0,data:await R9(t.server)})}),e.put("/urls",async(t,r)=>{await Tzr(t.server,t.body),r.send({code:0})}),e.delete("/urls",async(t,r)=>{await Rzr(t.server),r.send({code:0})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await ebe(t.server)})}),e.put("/cookie",async(t,r)=>{await Nzr(t.server,t.body?.cookie||""),r.send({code:0})}),e.delete("/cookie",async(t,r)=>{await Dzr(t.server),r.send({code:0})})}var ube=Se(di(),1),iRt=Se(MP(),1),YP={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"},cbe=1e4,lbe=1,kzr=60*1e3,Ozr=300,Pzr=60*1e3,D9=60,Mzr=8,Lzr=1,Bzr=9e3,$zr=40,Fzr=15e3,sRt=3500,aRt=0,oRt=2*60*1e3,Uzr=20*1e3,qzr=200,uRt=/(动漫|国漫|日漫|番|OVA|完美世界|斗罗|吞噬|仙逆|凡人|海贼|火影|鬼灭|咒术|龙珠)/i,cRt=/(第\s*\d+\s*季|S\d{1,2}|剧集|电视剧|美剧|韩剧|日剧|英剧|连续剧)/i,lRt=/(综艺|真人秀|脱口秀|晚会)/i,dRt=/(纪录|记录片|纪录片|documentary)/i,rbe=new Map,QP=new Map,f0=new Map,a_=new Map,p0=new Map,rRt=new Map,sbe=new Map,jzr=new i_,s_={init:!1,device:{}},abe=[{type_id:"42204681950354",type_name:"\u7535\u5F71"},{type_id:"42204684250355",type_name:"\u5267\u96C6"},{type_id:"42212287587456",type_name:"\u5F71\u89C6\u539F\u76D8"},{type_id:"42204697150356",type_name:"\u8BB0\u5F55"},{type_id:"42204792950357",type_name:"\u52A8\u753B\u52A8\u6F2B"},{type_id:"42210356650363",type_name:"\u7EFC\u827A"}];function fRt(e){return typeof e=="string"?e:e?.prefix||"default"}function pRt(e){let t=f0.get(e);return t?Date.now()-t.timestamp>kzr?(f0.delete(e),null):(f0.delete(e),f0.set(e,t),t.data):null}function hRt(e,t){if(f0.size>=Ozr){let r=Math.min(30,f0.size),n=0;for(let i of f0.keys())if(f0.delete(i),n++,n>=r)break}f0.set(e,{data:t,timestamp:Date.now()})}async function mRt(e,t=cbe,r=lbe,n=null,i=""){let s=null;for(let a=0;a<=r;a++)try{let o=await _e.get(e,{headers:n?{...YP,...n}:YP,timeout:t});return i&&o?.headers?.["set-cookie"]&&_Rt(i,o.headers["set-cookie"]),o.data}catch(o){s=o,asetTimeout(u,200*(a+1)))}throw s}async function Hzr(e,t,r=cbe,n=lbe,i=null,s=""){let a=null;for(let o=0;o<=n;o++)try{let u=await _e.post(e,iRt.default.stringify(t||{}),{headers:{...i?{...YP,...i}:YP,"Content-Type":"application/x-www-form-urlencoded"},timeout:r});return s&&u?.headers?.["set-cookie"]&&_Rt(s,u.headers["set-cookie"]),u.data}catch(u){a=u,osetTimeout(c,200*(o+1)))}throw a}async function gRt(e,t=!0,r=null,n="",i=""){let s=n||e;if(t){let u=pRt(s);if(u!==null)return u}let a=`${t?"cache":"nocache"}:${s}`;if(a_.has(a))return a_.get(a);let o=(async()=>{let u=await mRt(e,cbe,lbe,r,i);return t&&hRt(s,u),u})();a_.set(a,o);try{return await o}finally{a_.delete(a)}}async function dbe(e,t=!0,r=null,n="",i=""){let s=n||e;if(t){let u=pRt(s);if(u!==null)return u}let a=`fast:${t?"cache":"nocache"}:${s}`;if(a_.has(a))return a_.get(a);let o=(async()=>{let u=await mRt(e,sRt,aRt,r,i);return t&&hRt(s,u),u})();a_.set(a,o);try{return await o}finally{a_.delete(a)}}async function yRt(e){let t=fRt(e),r=rRt.get(t);if(r&&Date.now()-r.timestamp`${r}=${n}`).join("; ")}function nbe(e){let t=Kzr(e),r=t?ube.default.MD5(t).toString():"";return{cookie:t,hash:r}}function XP(e,t){let r=[];return e?.cookie&&r.push(e.cookie),t?.cookie&&r.push(t.cookie),r.length===0?null:{Cookie:r.join("; ")}}function O9(e,t,r){let n=[e];return t?.hash&&n.push(`ck=${t.hash}`),r?.hash&&n.push(`sk=${r.hash}`),n.join("|")}async function P9(e,t){if(!e)return nbe(e);let r=e,n=nbe(r);if(n.cookie)return n;try{let i=XP(t,n);await dbe(e,!1,i,"",r)}catch{}return nbe(r)}var fbe=e=>{let t=fRt(e);if(rbe.has(t))return Promise.resolve(rbe.get(t));if(QP.has(t))return QP.get(t);let r=(async()=>{let n=await R9(e),i=await RI(n,YP);return i&&rbe.set(t,i),i})();return QP.set(t,r),r.finally(()=>{QP.get(t)===r&&QP.delete(t)}),r},M9=e=>jzr.pq(e||"");function Vzr(e){let r=String(e||"").replace(/&/g,"&").match(/https?:\/\/[^\s"'<>]+/gi)||[];return[...new Set(r.map(n=>n.replace(/[)\]】,,。;;!!??]+$/g,"").trim()))].filter(Boolean)}function WP(e=""){let t=String(e||"").trim();return!t||t.startsWith("javascript:")||t.startsWith("#")?"":t.replace(/^https?:\/\/[^/]+/i,"").replace(/^\/+/,"")}function pbe(e,t=0){let r=e(".topicPage .pg")[0]||e(".pg")[0],n=r?e(r).find(".count").text():"",i=r&&e(r).find(".last").attr("title")||"",s=Number.parseInt((n.match(/\d+/)||[String(t)])[0],10);Number.isNaN(s)&&(s=t);let a=Number.parseInt((i.match(/\d+/)||["1"])[0],10);if(Number.isNaN(a)||a<1){let o=1;e(".topicPage .pg a, .pg a").each((u,c)=>{let l=Number.parseInt(e(c).text().trim(),10);!Number.isNaN(l)&&l>o&&(o=l)}),a=o}return{total:s,pageCount:a}}function zzr(e,t){let r=new Set,n=[],i=[".topicList .topicItem",".searchList .topicItem",".topicItem",".topicList li",".searchList li",".threadlist li",".topicList .item",".searchList .item"],s=(a,o)=>{let u=String(a||"").trim(),c=WP(o);c&&(/^(search|tag|forum|member|index\.php)(\/|\?|$)/i.test(c)||/\/(search|tag|forum|member)(\/|$)/i.test(c)||!u||!c||r.has(c)||(r.add(c),n.push({vod_name:u,vod_id:SRt(c,{vod_pic:t,vod_remarks:""}),vod_remarks:"",vod_pic:t})))};for(let a of i)e(a).each((o,u)=>{let c=e(u).find("h2.title a")[0]||e(u).find("h2 a")[0]||e(u).find(".title a")[0]||e(u).find("a.title")[0]||e(u).find("a.subjectTitle")[0]||e(u).find("a.thread")[0]||e(u).find('a[href*="thread"]')[0]||e(u).find('a[href*="topic"]')[0]||e(u).find('a[href*=".html"]')[0]||e(u).find("a")[0];if(!c)return;let l=c.attribs?.href||c.attribs?.["data-href"]||c.attribs?.["data-url"]||"";if(!l)return;let d=e(c).text().trim()||c.attribs?.title||c.attribs?.["data-title"]||c.attribs?.["data-name"]||"";s(d,l)});return n.length===0&&e('h2 a, a[href*="thread"], a[href*="topic"]').each((a,o)=>{let u=o?.attribs?.href||"",c=e(o).text().trim()||o.attribs?.title||"";s(c,u)}),n}function Qzr(e,t){let r=new Set,n=[],i={pageCount:1,total:0},s=(o,u)=>{let c=String(o||"").trim(),l="";if(u!=null){let d=String(u).trim();/^https?:\/\//i.test(d)?l=WP(d):/^\d+$/.test(d)?l=`thread?topicId=${d}`:l=WP(d)}l&&(r.has(l)||(r.add(l),n.push({vod_name:c||"\u96F7\u9CB8\u8D44\u6E90",vod_id:SRt(l,{vod_pic:t,vod_remarks:""}),vod_remarks:"",vod_pic:t})))},a=o=>{if(!o)return;if(Array.isArray(o)){o.forEach(p=>a(p));return}if(typeof o!="object")return;let u=o.title||o.topicTitle||o.topic_name||o.topicName||o.name||o.subject||o.subjectTitle||"",c=o.topicId||o.topic_id||o.tid||o.id||"",l=o.url||o.link||o.href||o.shareUrl||"";u&&(c||l)&&s(u,l||c);let d=Number(o.total);!Number.isNaN(d)&&d>0&&i.total===0&&(i.total=d);let f=Number(o.pageCount||o.page_count||o.pages||o.totalPages);!Number.isNaN(f)&&f>0&&i.pageCount===1&&(i.pageCount=f);for(let p of Object.values(o))a(p)};return a(e),i.total===0&&(i.total=n.length),{videos:n,meta:i}}function ARt(e,t,r){if(!e||typeof e!="string")return{videos:[],meta:{pageCount:1,total:0}};let n=e.trim();if(!n)return{videos:[],meta:{pageCount:1,total:0}};if(n.startsWith("{")||n.startsWith("["))try{let c=JSON.parse(n);return Qzr(c,t)}catch{}let i=[],s=new Set,a=/(href|data-href|data-url)\s*=\s*["']([^"']*thread\?topicId=\d+[^"']*)["']/gi,o=c=>{if(!c)return"";try{return JSON.parse(`"${c.replace(/\\\\/g,"\\\\\\\\").replace(/\"/g,'\\\\"')}"`)}catch{return c}},u;for(;(u=a.exec(n))!==null;){let c=WP(u[2]);!c||s.has(c)||(s.add(c),i.push({vod_name:r||"\u96F7\u9CB8\u8D44\u6E90",vod_id:c,vod_remarks:"",vod_pic:t}))}if(i.length===0){let c=[/topicId["']?\s*[:=]\s*["']?(\d+)["']?[^]{0,200}?topicTitle["']?\s*[:=]\s*["']([^"']{1,120})/gi,/topicTitle["']?\s*[:=]\s*["']([^"']{1,120})["']?[^]{0,200}?topicId["']?\s*[:=]\s*["']?(\d+)["']?/gi,/subjectTitle["']?\s*[:=]\s*["']([^"']{1,120})["']?[^]{0,200}?topicId["']?\s*[:=]\s*["']?(\d+)["']?/gi];for(let l of c){for(;(u=l.exec(n))!==null;){let d=l===c[0]?u[1]:u[2],f=l===c[0]?u[2]:u[1],p=o(f).trim(),h=d?`thread?topicId=${d}`:"";!h||s.has(h)||r&&!bRt(p,r)||(s.add(h),i.push({vod_name:p||r||"\u96F7\u9CB8\u8D44\u6E90",vod_id:h,vod_remarks:"",vod_pic:t}))}if(i.length>0)break}}return{videos:i,meta:{pageCount:1,total:i.length}}}function vRt(e=""){let t=String(e||"");return t?!!(/\s*登录/i.test(t)||/雷鲸小站/i.test(t)&&/登录/i.test(t)&&/密码|用户名|账号/i.test(t)):!1}function obe(e=""){return String(e||"").toLowerCase().replace(/\s+/g,"").replace(/[【】\[\]()()\-_.::,'"“”‘’`~!@#$%^&*+=|\\/<>?]+/g,"")}function Gzr(e){let t=p0.get(e);return t?Date.now()>t.expireAt?(p0.delete(e),null):(p0.delete(e),p0.set(e,t),t.data):null}function Yzr(e,t,r=oRt){if(p0.size>=qzr){let n=Math.min(40,p0.size),i=0;for(let s of p0.keys())if(p0.delete(s),i++,i>=n)break}p0.set(e,{data:t,expireAt:Date.now()+Math.max(1e3,r)})}function bRt(e="",t=""){let r=String(e||""),n=String(t||"").trim();if(!n)return!1;if(r.includes(n)||r.toLowerCase().includes(n.toLowerCase()))return!0;let i=obe(r),s=obe(n);return s?i.includes(s):!1}function ERt(e=""){let t=new Map(abe.map(i=>[i.type_name,i])),r=[],n=i=>{let s=t.get(i);s&&(r.some(a=>a.type_id===s.type_id)||r.push(s))};return uRt.test(e)&&n("\u52A8\u753B\u52A8\u6F2B"),cRt.test(e)&&n("\u5267\u96C6"),lRt.test(e)&&n("\u7EFC\u827A"),dRt.test(e)&&n("\u8BB0\u5F55"),n("\u7535\u5F71"),n("\u5267\u96C6"),n("\u52A8\u753B\u52A8\u6F2B"),n("\u5F71\u89C6\u539F\u76D8"),n("\u8BB0\u5F55"),n("\u7EFC\u827A"),r.length>0?r:abe}function Wzr(e=""){let t=ERt(e),r=[],n=a=>{r.includes(a)||r.push(a)};uRt.test(e)&&n("\u52A8\u753B\u52A8\u6F2B"),cRt.test(e)&&n("\u5267\u96C6"),lRt.test(e)&&n("\u7EFC\u827A"),dRt.test(e)&&n("\u8BB0\u5F55"),n("\u5267\u96C6"),n("\u5F71\u89C6\u539F\u76D8"),n("\u7535\u5F71"),n("\u52A8\u753B\u52A8\u6F2B"),n("\u8BB0\u5F55"),n("\u7EFC\u827A");let i=new Map(t.map(a=>[a.type_name,a])),s=[];return r.forEach(a=>{let o=i.get(a);o&&s.push(o)}),s.length>0?s:t}async function nRt(e,t,r,n,i={}){let s=Date.now(),a=new Set,o=[],u=i.classes||ERt(t);i.includeAll&&(u=[{type_id:"",type_name:"\u5168\u90E8"},...u]);let c=i.maxPagesPerClass||Mzr,l=i.totalBudgetMs||Bzr,d=e,f=await P9(e,n),p=XP(n,f),h=(m,y)=>{let g=String(m||"").trim(),v=WP(y);!g||!v||a.has(v)||bRt(g,t)&&(a.add(v),o.push({vod_name:g,vod_id:v,vod_remarks:"",vod_pic:r}))};for(let m of u){if(Date.now()-s>=l)break;let y=0,g=0,v=0;for(let A=1;A<=c&&!(Date.now()-s>=l||y>0&&A>y);A++){let _=`${e}/?tagId=${encodeURIComponent(m.type_id)}&page=${A}`,E="";try{E=await dbe(_,!0,p,O9(_,n,f),d)}catch{if(v+=1,v>=2)break;continue}let S=M9(E),C=S(".topicList .topicItem"),I=C?.length||0;if(I===0){let k=ARt(E,r,t);k.videos.length>0&&(k.videos.forEach(O=>h(O.vod_name,O.vod_id)),I=k.videos.length)}if(I===0){if(v+=1,v>=2)break;continue}v=0,y=pbe(S,I).pageCount||y;let T=o.length;if(C.length>0&&C.each((k,O)=>{let P=S(O).find("h2.title a")[0]||S(O).find("h2 a")[0]||S(O).find(".title a")[0]||S(O).find("a.title")[0]||S(O).find("a")[0];if(!P)return;let $=P.attribs?.href||P.attribs?.["data-href"]||P.attribs?.["data-url"]||"";if(!$)return;let Q=S(P).text().trim()||P.attribs?.title||P.attribs?.["data-title"]||"";h(Q,$)}),o.length>T&&g===0&&(g=A),o.length>=D9)return o.slice(0,D9);if(g>0&&A>=g+Lzr)break}if(o.length>0)return o.slice(0,D9)}return o.slice(0,D9)}function hbe(e){return`${e.address().url}${e.prefix}/icon`}function Xzr(e,t,r,n=""){return{vod_name:String(e||"").trim()||"\u96F7\u9CB8\u8D44\u6E90",vod_id:t,vod_remarks:n,vod_pic:r}}function mbe(e,t=[],r=1,n=null){let i=Array.isArray(t)?t:[],s=n??i.length;return{page:e,pagecount:r,limit:i.length,total:s,list:i}}function GP(e=1){return mbe(e,[],1,0)}function ibe(){return{list:[]}}function Jzr(e){return{list:e?[e]:[]}}function SRt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function Zzr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function eQr(){return{parsedVideos:[],meta:{pageCount:1,total:0}}}function wRt(e,t,r){let n=M9(e),i=zzr(n,t),s=pbe(n,i.length);if(i.length===0){let a=ARt(e,t,r);i=a.videos,i.length>0&&(s=a.meta)}return{parsedVideos:i,meta:s}}function tQr(e,t,r){return[...new Set([`${e}/search?keyword=${t}&page=${r}`,`${e}/search?keyword=${t}`,`${e}/search?wd=${t}&page=${r}`,`${e}/search?wd=${t}`,`${e}/search?key=${t}&page=${r}`,`${e}/search?q=${t}&page=${r}`])]}async function rQr({baseUrl:e,encodedKeyword:t,page:r,keyword:n,iconUrl:i,cookieInfo:s,debugInfo:a,loginBlocked:o}){let u=!1,c=o,l=await P9(e,s),d=XP(s,l),f=e,p=tQr(e,t,r),h=a?{baseUrl:e,searchUrls:[...p],fetch:[]}:null,m=p.map(async _=>{try{let E=await dbe(_,!0,d,O9(_,s,l),f),S=String(E||""),C=vRt(S);if(u=!0,C||(c=!1),h){let T=(S.match(/thread\?topicId=\d+/gi)||[]).length,k=(S.match(/topicId["']?\s*[:=]/gi)||[]).length,O=(S.match(/topicTitle["']?\s*[:=]/gi)||[]).length;h.fetch.push({url:_,ok:!0,length:S.length,threadCount:T,topicIdCount:k,titleCount:O,login:C,sample:S.slice(0,400)})}if(C)return eQr();let{parsedVideos:I,meta:N}=wRt(E,i,n);return{parsedVideos:I,meta:N}}catch{return h&&h.fetch.push({url:_,ok:!1}),null}}),y=await Promise.all(m),g=[],v=1,A=0;for(let _ of y){if(!_)continue;let E=_.parsedVideos||[],S=_.meta||{pageCount:1,total:0};if(E.length>0){g=E,v=S.pageCount,A=S.total||E.length;break}A===0&&(v=S.pageCount||1,A=S.total||0)}return h&&a.attempts.push(h),{videos:g,pageCount:v,total:A,baseHasResponse:u,loginBlocked:c}}async function nQr({baseUrl:e,keyword:t,iconUrl:r,cookieInfo:n}){let i=await P9(e,n),s=XP(n,i),a=e,o=`${e}/search`,u=[{keyword:t},{wd:t}];for(let c of u)try{let l=await Hzr(o,c,sRt,aRt,s,a),d=String(l||"");if(vRt(d))continue;let{parsedVideos:f,meta:p}=wRt(l,r,t);if(f.length>0)return{videos:f,pageCount:p.pageCount,total:p.total||f.length}}catch{}return{videos:[],pageCount:1,total:0}}function k9(e,t,r){e.videos=t.videos,e.pageCount=t.pageCount,e.total=t.total,e.baseUsed=r}function iQr(e,t){e.total===0&&(e.pageCount=t?.pageCount||1,e.total=t?.total||0)}function sQr(){return{videos:[],pageCount:1,total:0,baseUsed:""}}function IRt(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}async function xRt(e){let t=await fbe(e);if(!t)return null;let r=await yRt(e),n=await P9(t,r);return{url:t,cookieInfo:r,sessionInfo:n,extraHeaders:XP(r,n),jarKey:t}}async function aQr(e){let t=await fbe(e),r=await R9(e),n=[];return t&&n.push(t),Array.isArray(r)&&r.forEach(i=>{i&&!n.includes(i)&&n.push(i)}),n}async function oQr(e,t){return{class:abe,filters:{}}}async function uQr(e,t){try{let r=await xRt(e.server);if(!r)return GP();let{url:n,cookieInfo:i,sessionInfo:s,extraHeaders:a,jarKey:o}=r,u=e.body.id,c=IRt(e.body.page),l=`${n}/?tagId=${encodeURIComponent(u||"")}&page=${c}`,d=await gRt(l,!0,a,O9(l,i,s),o),f=M9(d),p=[];f(".topicList .topicItem").each((m,y)=>{let g=f(y).find("h2 a:first")[0];g?.attribs?.href&&p.push(Xzr(f(g).text().trim(),g.attribs.href,hbe(e.server)))});let h=pbe(f,p.length);return mbe(c,p,h.pageCount,h.total)}catch(r){return console.error("[\u96F7\u9CB8] \u5206\u7C7B\u5F02\u5E38:",r.message),GP()}}async function cQr(e,t){try{let r=await xRt(e.server);if(!r)return ibe();let{url:n,cookieInfo:i,sessionInfo:s,extraHeaders:a,jarKey:o}=r,u=Zzr(e.body.id||""),c=String(u.id||"").trim();if(!c)return ibe();let l=`${n}/${c}`,d=await gRt(l,!0,a,O9(l,i,s),o),f=M9(d),p={vod_name:f(".title").first().text().trim()||"\u96F7\u9CB8\u8D44\u6E90",vod_id:c,vod_pic:u.meta?.vod_pic||hbe(e.server),vod_remarks:u.meta?.vod_remarks||"\u96F7\u9CB8\u8D44\u6E90",vod_content:f("div.topicContent p:nth-child(1)").text().replace(/\s+/g,"")},h=f(".topicContent").html()||"",m=f(".topicContent").text()||"",y=Vzr(`${h} -${m}`);if(y.length>0){let g=await hi(y,e);g?.froms&&g?.urls&&(p.vod_play_from=g.froms,p.vod_play_url=g.urls,Array.isArray(g.links)&&g.links.length>0&&(p.vod_links=g.links))}return Jzr(p)}catch(r){return console.error("[\u96F7\u9CB8] \u8BE6\u60C5\u5F02\u5E38:",r.message),ibe()}}async function lQr(e,t){let r=await aQr(e.server),n=IRt(e.body.page);if(r.length===0)return GP(n);let i=await yRt(e.server),s=String(e.body.wd||"").trim(),a=!!e.body?.debug,o=e.body?.deep===void 0?!0:!!e.body?.deep,u=Number.parseInt(e.body?.deep_pages,10),c=Number.parseInt(e.body?.deep_budget_ms,10);if(!s)return GP(n);let l=s;try{l=decodeURIComponent(s)}catch{}let d=obe(l),p=`${r[0]||"leijing"}|${n}|${d}|deep=${o?1:0}`,h=Gzr(p);if(h)return h;let m=encodeURIComponent(l),y=hbe(e.server),g=a?{bases:[...r],baseUsed:"",attempts:[]}:null;try{let v=sQr(),A=!0;for(let E of r){let S=await rQr({baseUrl:E,encodedKeyword:m,page:n,keyword:l,iconUrl:y,cookieInfo:i,debugInfo:g,loginBlocked:A});if(A=S.loginBlocked,S.videos.length>0?k9(v,S,E):iQr(v,S),v.videos.length>0||S.baseHasResponse)break}if(v.videos.length===0){let E=[v.baseUsed||r[0]].filter(Boolean);for(let S of E){let C=await nQr({baseUrl:S,keyword:l,iconUrl:y,cookieInfo:i});if(C.videos.length>0){k9(v,C,S);break}}}if(v.videos.length===0){let E=v.baseUsed||r[0],S=await nRt(E,l,y,i);if(S.length>0)k9(v,{videos:S,pageCount:1,total:S.length},E);else if(A&&o){let C=Wzr(l).slice(0,2),I=await nRt(E,l,y,i,{classes:C,maxPagesPerClass:Number.isFinite(u)&&u>0?u:$zr,totalBudgetMs:Number.isFinite(c)&&c>1e3?c:Fzr,includeAll:!0});I.length>0&&k9(v,{videos:I,pageCount:1,total:I.length},E)}}let _=mbe(n,v.videos,v.pageCount,v.total||v.videos.length);return g&&(g.baseUsed=v.baseUsed||r[0],_.debug=g),Yzr(p,_,v.videos.length>0?oRt:Uzr),_}catch(v){return console.error("[\u96F7\u9CB8] \u641C\u7D22\u5F02\u5E38:",v.message),GP(n)}}async function dQr(e,t){if(await xs(e,t),!s_.init){try{s_.device=await e.server.db.getObjectDefault(`${e.server.prefix}/device`,{}),s_.device.id||(s_.device=iq(32),s_.device.id=s_.device.id.toLowerCase(),await e.server.db.push(`${e.server.prefix}/device`,s_.device))}catch{}s_.init=!0}return{}}async function fQr(e,t){try{let n=Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAEAAAABABAMAAABYR2ztAAAALVBMVEVHcEw9r+cipOQqp+VItOhCsedives7ruccouNVueovquW74/eV1PLW7vpzxu6kNLMaAAAACHRSTlMAK9qm1B0KZtVpWLIAAAJCSURBVEjHxZUxj9MwFMdzQzsD1cFMGegKJ3QnPgITEirz3cAxw0l8gJbBl4E5TqssDCShyh45Ye+16X5y3JmkqT8Dz0lo4zSpN/iryZD30/s/1/Z7mvbv1B0+rGh4WY9/eHLWr+js03s5fnXT15G9+yG7f/64Gu/cDFBNo/O3FaB3EAfiRcXgJWrQs51Jt4catUtxctEMjB+UwLtBMzB6VTp8Ri16fnnUYefxcdAGjL4UJaBWFUU8ageeHq8RoR+iys7rdmAs9qPzph34rgK+inWeCEB3C4mv+1cFcJaFbGDzV2bIgEcIYfBAzKOmi/TotwToDsZTijGGzD/pcu46ke/YFcCD7AsmPAx9G4T+hDJK7irAjJYAMzyKo3QqWAlYW9yKLZ5ExoRmbGWCm1m1mPkbwuMpmQPAQsYwCYhfLdKblxkywyFTP8J0tVhLy3SzIM8AC8yB2J7dSwCyVnhlLVNYcRhSdgjoUFUCjw0ZNr/Agm9kCy/M/0lq5BYbDIVKRaJvMc8o56EAFkFo4mhuyhlibNHEIgAsYEvMZJukcgZGQrBgdr4t2Iu32dqWLZIpZACLW2xlq8n9lkM9EgAWWFjMYJuC6G6bRmnNglCwMGBjOXaIFaaTtJZBSBTpQh3JjBquVMNtkp9Bbpen1Uls+cihIuI2nepjF6e4FxeKm3XsbuYdpKu63VpP1R+UHUbZo5RdrrVJ/e2T6k6r7NXaVWOK8X6kdFXzQj1xxMyS47WZpZ56mnY9PN2PzdPDufk/9QdaMC7B2rkgYwAAAABJRU5ErkJggg==","base64");return t.header("Content-Type","image/png"),t.header("Content-Length",n.length),t.send(n)}catch{t.code(500).send({error:"Failed to load image"})}}var CRt={meta:{key:"leijing",name:"\u2601\uFE0F \u96F7\u9CB8",type:3},api:async e=>{e.post("/init",dQr),e.post("/home",oQr),e.post("/category",uQr),e.post("/detail",cQr),e.post("/play",Ci),e.post("/search",lQr),e.get("/icon",fQr),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)},check:fbe};Kt();function DRt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function pQr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var mx="https://www.91panta.cn",JP=`${mx}/favicon.ico`,hQr={"User-Agent":IEt},mQr=20*1e3,gQr=20*1e3,yQr=30*1e3,_Qr=60*1e3,AQr=120,vQr=120,bQr=new Map,EQr=new Map,SQr=new Map,wQr=new Map,IQr=new Map,xQr=new Map,CQr=new Map,TQr=new Map,NQr=/<a\s+(?:[^>]*?\s+)?href=["'](https?:\/\/[^"']*139\.com[^"']*)["'][^>]*>/i,RQr=/<span[^>]*>(https?:\/\/[^<]*139\.com[^<]*)<\/span>/i,DQr=/(https?:\/\/[^<\s&"]*139\.com[^<\s&"]*)/i;function TRt(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}async function B9(e,t,r,n,i){let s=Date.now(),a=e.get(r);if(a&&s-a.timestamp<n)return a.data;if(t.has(r))return t.get(r);let o=(async()=>{let u=await i();return e.set(r,{data:u,timestamp:Date.now()}),TRt(e,AQr),u})();t.set(r,o),TRt(t,vQr);try{return await o}finally{t.get(r)===o&&t.delete(r)}}function L9(e,t=0){let r=Number.parseInt(e,10);return Number.isNaN(r)?t:r}function kQr(e){try{return decodeURIComponent(String(e||""))}catch{return String(e||"")}}function NRt(e){return String(e||"").toLowerCase().replace(/第\s*\d+\s*[季部集期话篇]/g," ").replace(/[\s\-—_::·•,.,。!!??'"“”‘’()()\[\]【】]/g,"").trim()}function OQr(e,t){let r=NRt(e),n=NRt(t);return!r||!n?!1:r.includes(n)||n.includes(r)}function PQr(e){if(!e)return"";let t=e.match(NQr);if(t?.[1])return t[1].split('"')[0];let r=e.match(RQr);if(r?.[1])return r[1].split('"')[0];let n=e.match(DQr);return n?.[1]?n[1].split('"')[0]:""}var RRt=(e=1)=>({page:e,pagecount:1,limit:0,total:0,list:[]});async function gbe(e){if(!e)return"";let t=`GET:${e}`;return B9(bQr,EQr,t,mQr,async()=>(await _e.get(e,{headers:hQr}))?.data||"")}var ybe=e=>new i_().pq(e),kRt=[{type_id:"39765285016165",type_name:"\u7535\u5F71"},{type_id:"39765284616164",type_name:"\u7535\u89C6\u5267"},{type_id:"39724839640293",type_name:"\u7EFC\u827A"},{type_id:"39724838540291",type_name:" \u52A8\u6F2B"},{type_id:"44732560408431",type_name:"\u77ED\u5267"},{type_id:"39956600861068",type_name:"\u7EAA\u5F55\u7247"}],MQr=new Set(kRt.map(e=>e.type_name.trim()));async function LQr(e,t){return{class:kRt,filters:{}}}async function BQr(e,t){let r=e.body.id,n=L9(e.body.page,1);if(n<=0&&(n=1),!r)return RRt(n);let i=`${r}_${n}`;return B9(IQr,xQr,i,yQr,async()=>{let s=await gbe(`${mx}/?tagId=${r}&page=${n}`);if(!s)return RRt(n);let a=ybe(s),o=[];a(".topicList .topicItem").each((p,h)=>{let m=a(h).find("h2 a:first")[0];if(!m?.attribs?.href)return;let y=m.children?.[0]?.data||a(m).text()||"",g=a(h).find(".tm-m-photos-thumb li:first")[0]?.attribs?.["data-src"];o.push({vod_name:y.split(" ")[0]?.trim()||"",vod_id:DRt(m.attribs.href,{vod_pic:g?`${mx}/${g}`:JP,vod_remarks:"\u5938\u514B/\u79FB\u52A8\u4E91\u76D8\u8D44\u6E90"}),vod_pic:g?`${mx}/${g}`:JP})});let u=a(".topicPage .pg")[0],c=u?a(u).find(".count").text():"",l=u&&a(u).find(".last")[0]?.attribs?.title||"",d=L9(c.match(/\d+/)?.[0],o.length),f=Math.max(1,L9(l.match(/\d+/)?.[0],1));return{page:n,pagecount:f,limit:o.length,total:d,list:o}})}async function $Qr(e,t){let r=pQr(e.body.id||""),n=String(r.id||"").replace(/^\/+/,"");if(!n)return{list:[]};let i=await gbe(`${mx}/${n}`);if(!i)return{list:[]};let s=ybe(i),a={vod_name:s(".title")[0]?.children?.[0]?.data?.trim()||"",vod_id:`/${n}`,vod_pic:r.meta?.vod_pic||JP,vod_remarks:r.meta?.vod_remarks||"\u5938\u514B/\u79FB\u52A8\u4E91\u76D8\u8D44\u6E90",vod_content:s("div.topicContent p:nth-child(1)").text().replace(/\s+/g,"")},o=s(".topicContent").html()||"",u=PQr(o);if(u&&u.includes("139.com")&&await rSt(u)){let l=`panta_detail_${u}`,d=await B9(CQr,TQr,l,_Qr,async()=>hi(u,e));d?.froms&&d?.urls&&(a.vod_play_from=d.froms,a.vod_play_url=d.urls,Array.isArray(d.links)&&d.links.length>0&&(a.vod_links=d.links))}return{list:[a]}}async function FQr(e,t){let r=L9(e.body.page,1);r<=0&&(r=1);let n=kQr(e.body.wd);if(!n)return{page:r,pagecount:1,list:[]};let i=`${mx}/search?keyword=${encodeURIComponent(n)}&page=${r}`,s=`${n}_${r}`;return B9(SQr,wQr,s,gQr,async()=>{try{let a=await gbe(i);if(!a)return{page:r,pagecount:1,list:[]};let o=ybe(a),u=[];return o(".topicList .topicItem").each((c,l)=>{let d=o(l).find(".tag")[0],f=d?o(d).text().trim():"";if(!f||!MQr.has(f))return;let p=o(l).find("h2.title a")[0],h=p?.attribs?.href;if(!h)return;let m=o(p).text().trim();OQr(m,n)&&u.push({vod_name:m,vod_id:DRt(h,{vod_pic:JP,vod_remarks:""}),vod_remarks:"",vod_pic:JP})}),{page:r,pagecount:1,list:u}}catch(a){return console.error("[\u76D8Ta] \u641C\u7D22\u5F02\u5E38:",a.message),{page:r,pagecount:1,list:[]}}})}var ORt={meta:{key:"panta",name:"\u2601\uFE0F \u76D8Ta",type:3},api:async e=>{e.post("/init",xs),e.post("/home",LQr),e.post("/category",BQr),e.post("/detail",$Qr),e.post("/play",Ci),e.post("/search",FQr),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};Kt();var _be=async e=>r_(e,"wogg"),UQr=async(e,t)=>{await e.db.push("/wogg/urls",t)},qQr=async e=>{await e.db.delete("/wogg/urls")};async function Abe(e){e.get("/urls",async(t,r)=>{r.send({code:0,data:await _be(t.server)})}),e.put("/urls",async(t,r)=>{await UQr(t.server,t.body),r.send({code:0})}),e.delete("/urls",async(t,r)=>{await qQr(t.server),r.send({code:0})})}function vbe(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function jQr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var HQr=15e3,KQr=10*60*1e3,VQr=15*1e3,zQr=30*1e3,QQr=60*1e3,PRt=200,GQr=4,bbe=class extends Ki{constructor(){super("\u73A9\u5076","wogg",{key:"wogg",name:"\u2601\uFE0F \u73A9\u5076",type:3},_be),this.urlState={value:"",timestamp:0,inflight:null},this.htmlCache=new Map,this.htmlInflight=new Map,this.shareDetailCache=new Map,this.shareDetailInflight=new Map,this.detailConcurrency=GQr}pruneMap(t,r,n=20){if(t.size<=r)return;let i=0;for(let s of t.keys())if(t.delete(s),i++,i>=n)break}async withCache(t,r,n,i,s){let a=Date.now(),o=t.get(n);if(o&&a-o.timestamp<i)return o.data;if(r.has(n))return r.get(n);let u=(async()=>{let c=await s();return t.set(n,{data:c,timestamp:Date.now()}),this.pruneMap(t,PRt),c})();r.set(n,u),this.pruneMap(r,PRt);try{return await u}finally{r.get(n)===u&&r.delete(n)}}async getUrl(t,r=!1){let n=Date.now();if(!r&&this.urlState.value&&n-this.urlState.timestamp<KQr)return this.urlState.value;if(this.urlState.inflight)return this.urlState.inflight;this.urlState.inflight=(async()=>{let i=await this.getCacheFunction(t),s=await RI(i);return console.log(`[wogg] \u57DF\u540D\u5019\u9009=${Array.isArray(i)?i.length:0}, \u9009\u4E2D=${s||"none"}`),this.urlState.value=s||"",this.urlState.timestamp=Date.now(),this.urlState.value})();try{return await this.urlState.inflight}finally{this.urlState.inflight=null}}async request(t,r={}){let n=r.ttl==null?VQr:r.ttl,i=async()=>(await _e.get(t,{headers:{"User-Agent":N9},timeout:HQr})).data||"";if(r.noCache||n<=0)return i();let s=`html:${t}`;return this.withCache(this.htmlCache,this.htmlInflight,s,n,i)}async init(t,r){return await xs(t,r),{}}async home(t,r){let n=await this.getUrl(t.server);if(!n)return{class:[]};let i=await this.request(`${n}/index.php/vodshow/1-----------.html`);return{class:lr(i)("div.library-box-first a[href*=/vodshow/]").map((a,o)=>{let u=o.attribs?.href?.match(/vodshow\/(\d+)-----------.html/);return u?{type_id:u[1],type_name:(o.attribs?.title||"").replace(/片库|玩偶/g,"")}:null}).get().filter(Boolean)}}fixImgUrl(t,r=""){if(!t)return"";let n=String(r||"").replace(/\/+$/,"");return t.startsWith("/img.php?url=")?t.substring(13):t.startsWith("/db.php?url=")?n?`${n}${t}`:t:t.startsWith("//")?`https:${t}`:t.startsWith("/")&&n?`${n}${t}`:t}getImgUrl(t,r,n=""){let i=t(r).find("div.module-item-pic img").first(),s=[i.attr("data-src"),i.attr("data-original"),i.attr("data-lazy-src"),i.attr("data-srcset"),i.attr("srcset"),i.attr("src")];for(let a of s){if(!a)continue;let o=String(a).trim();if(!o)continue;let u=o.split(",")[0]?.trim().split(/\s+/)[0]||"";if(u)return this.fixImgUrl(u,n)}return""}getHrefInfoIdx(t){let r=Array.isArray(t)?t:t.split("-");for(let n=1;n<r.length;n++)if(r[n]!=="")return n;return-1}async category(t,r){let n=await this.getUrl(t.server);if(!n)return{page:1,pagecount:1,list:[]};let i=String(t.body.id||"").trim();if(!i)return{page:1,pagecount:1,list:[]};let s=t.body.filters||{},a=this.normalizePage(t.body.page);if(i.startsWith("s-")){let d=["","","","","","","","","","",a,"","",""],f=i.split("-");d[Number.parseInt(f[1],10)]=f[2];let p=await this.request(`${n}/index.php/vodsearch/${d.join("-")}.html`),h=lr(p),m=h("div.module-items > div.module-search-item").map((y,g)=>{let v=h(g).find("div.video-info-header h3 a")[0];if(!v?.attribs?.href)return null;let A=v.attribs.href.match(/voddetail\/(.*).html/);return A?{vod_id:vbe(A[1],{vod_pic:this.getImgUrl(h,g,n),vod_remarks:h(g).find("a.video-serial").text()}),vod_name:v.attribs.title||"",vod_pic:this.getImgUrl(h,g,n),vod_remarks:h(g).find("a.video-serial").text()}:null}).get().filter(Boolean);return{page:a,pagecount:m.length<10?a:a+1,list:m}}let o=[],u=null;if(a===1&&Object.keys(s).length===0){let d=await this.request(`${n}/index.php/vodshow/${i}-----------.html`);u=lr(d),u("a.library-item-first").map((f,p)=>{let h=u(p.parent).find("div.library-list > a.library-item");if(h.length>0){let m=[],y=0;h.each((g,v)=>{let _=v.attribs.href.match(/vodshow\/(.*).html/)[1].split("-");g===0&&(y=this.getHrefInfoIdx(_),y!==2&&m.push({n:"\u5168\u90E8",v:""})),m.push({n:v.attribs.title.replace(/按|排序/g,""),v:decodeURIComponent(_[y].toString())})}),o.push({key:y.toString(),name:"",init:m[0].v,value:m})}})}if(u===null){let d=[i,"","","","","","","",a,"","",""];Object.keys(s).forEach(p=>{d[Number.parseInt(p,10)]=s[p]});let f=await this.request(`${n}/index.php/vodshow/${d.join("-")}.html`);u=lr(f)}let c=u("div.module-items > div.module-item").map((d,f)=>{let p=u(f).find("div.video-name a")[0];if(!p?.attribs?.href)return null;let h=p.attribs.href.match(/voddetail\/(.*).html/);return h?{vod_id:vbe(h[1],{vod_pic:this.getImgUrl(u,f,n),vod_remarks:u(f).find("div.module-item-text").text()}),vod_name:p.attribs.title||"",vod_pic:this.getImgUrl(u,f,n),vod_remarks:u(f).find("div.module-item-text").text()}:null}).get().filter(Boolean),l={page:a,pagecount:c.length<70?a:a+1,list:c};return o.length>0&&(l.filter=o),l}async detail(t,r){let n=await this.getUrl(t.server);if(!n)return{list:[]};let i=Array.isArray(t.body.id)?t.body.id:[t.body.id];return{list:(await this.mapWithConcurrency(i,this.detailConcurrency,async a=>{let o=jQr(a),u=String(o.id||"").trim();if(!u)return null;try{let c=await this.request(`${n}/index.php/voddetail/${u}.html`,{ttl:zQr}),l=lr(c),d=[],f=[],p="";l("div.video-info-items a[href*=/vodsearch/]").each((y,g)=>{let v=g.attribs?.href?.match(/vodsearch\/(.*).html/);if(!v)return;let A=v[1].split("-"),_=l(g).text().trim(),E=this.getHrefInfoIdx(A);if(E===5){let S={id:"s-5-"+decodeURIComponent(A[5].toString()),name:_};d.push(`[a=cr:${JSON.stringify(S)}/]${_}[/a]`)}else if(E===1){let S={id:"s-1-"+decodeURIComponent(A[1].toString()),name:_};f.push(`[a=cr:${JSON.stringify(S)}/]${_}[/a]`)}else E===13&&(p=_)});let h={vod_name:l(".page-title").first().text().trim()||u,vod_year:p,vod_actor:f.join(", "),vod_director:d.join(", "),vod_content:l("div.video-info-content p[style*=none]").first().text().trim(),vod_pic:o.meta?.vod_pic||this.getImgUrl(l,l.root(),n),vod_remarks:o.meta?.vod_remarks||l("div.video-info-items, div.video-info-item, div.module-info-item, div.module-info-items").find("span.video-serial, a.video-serial, div.module-item-text, span.module-item-note, span.module-item-text").map((y,g)=>l(g).text().trim()).get().filter(Boolean)[0]||""},m=l("div.module-row-info p").map((y,g)=>l(g).text().trim()).get().filter(Boolean);if(m.length>0){let y=`share:${m.join("|")}`,g=await this.withCache(this.shareDetailCache,this.shareDetailInflight,y,QQr,async()=>hi(m,t));g&&(h.vod_play_from=g.froms,h.vod_play_url=g.urls,Array.isArray(g.links)&&g.links.length>0&&(h.vod_links=g.links))}return h}catch{return null}})).filter(Boolean)}}async search(t,r){let n=this.normalizePage(t.body.page);try{let i=await this.getUrl(t.server);if(!i)return{page:1,pagecount:1,list:[]};let s=String(t.body.wd||"").trim();if(!s)return{page:n,pagecount:1,list:[]};let a=await this.request(`${i}/index.php/vodsearch/-------------.html?wd=${encodeURIComponent(s)}`),o=lr(a),u=o("div.module-items > div.module-search-item").map((c,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];if(!d?.attribs?.href)return null;let f=d.attribs.href.match(/voddetail\/(.*).html/);return f?{vod_id:vbe(f[1],{vod_pic:this.getImgUrl(o,l,i),vod_remarks:o(l).find("a.video-serial").text()}),vod_name:d.attribs.title||"",vod_pic:this.getImgUrl(o,l,i),vod_remarks:o(l).find("a.video-serial").text()}:null}).get().filter(Boolean);return{page:n,pagecount:u.length<10?n:n+1,list:u}}catch(i){return console.error("[wogg] \u641C\u7D22\u5931\u8D25:",i.message),{page:n,pagecount:n,list:[]}}}async test(t,r){try{let n=function(u){u.statusCode&&u.statusCode===500&&console.error(u)},i=t.server.prefix,s={},a=await t.server.inject().post(`${i}/init`),o=a.json();if(s.init=o,n(o),a=await t.server.inject().post(`${i}/home`),o=a.json(),s.home=o,n(o),s.home.class.length>0&&(a=await t.server.inject().post(`${i}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),o=a.json(),s.category=o,n(o),s.category.list.length>0&&(a=await t.server.inject().post(`${i}/detail`).payload({id:s.category.list[0].vod_id}),o=a.json(),s.detail=o,n(o),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let u of s.detail.list){let c=u.vod_play_from.split("$$$"),l=u.vod_play_url.split("$$$");for(let d=0;d<c.length;d++){let f=c[d],p=l[d].split("#");for(let h=0;h<p.length&&h<2;h++)a=await t.server.inject().post(`${i}/play`).payload({flag:f,id:p[h].split("$")[1]}),s.play.push(a.json())}}}return a=await t.server.inject().post(`${i}/search`).payload({wd:"\u7231",page:1}),o=a.json(),s.search=o,n(o),s}catch(n){return console.error(n),r.code(500),{err:n.message,tip:"check debug console output"}}}createApi(t){t.post("/init",async(r,n)=>n.send(await this.init(r,n))),t.post("/home",async(r,n)=>n.send(await this.home(r,n))),t.post("/category",async(r,n)=>n.send(await this.category(r,n))),t.post("/detail",async(r,n)=>n.send(await this.detail(r,n))),t.post("/play",Ci),t.post("/search",async(r,n)=>n.send(await this.search(r,n))),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi),t.get("/test",async(r,n)=>n.send(await this.test(r,n)))}getExports(){return{meta:this.meta,api:async t=>this.createApi(t),check:t=>this.getUrl(t)}}},YQr=new bbe,MRt=YQr.getExports();var Ebe=class extends Cs{constructor(){super("zhizhen")}},LRt=new Ebe,BRt=e=>LRt.getCache(e);async function Sbe(e){LRt.createRoutes(e)}var WQr=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],XQr=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],JQr=[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],wbe=class extends Ki{constructor(){super("\u81F3\u81FB","zhizhen",{key:"zhizhen",name:"\u2601\uFE0F \u81F3\u81FB",type:3},BRt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u81FB\u5F69\u4E25\u9009",type_id:"26"},{type_name:"\u81F3\u81FB\u7535\u5F71",type_id:"1"},{type_name:"\u81F3\u81FB\u5267\u96C6",type_id:"2"},{type_name:"\u81F3\u81FB\u52A8\u6F2B",type_id:"3"},{type_name:"\u81F3\u81FB\u7EFC\u827A",type_id:"4"},{type_name:"\u77ED\u5267\u5403\u5230\u9971",type_id:"5"},{type_name:"\u8001\u5267\u8BA1\u5212",type_id:"24"}],this.filterData={26:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],24:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:JQr,letter:WQr,by:XQr,"26.id":[{v:"29",n:"\u9AD8\u5206\u7535\u5F71"},{v:"27",n:"\u70ED\u64AD\u5267\u96C6"},{v:"30",n:"\u9AD8\u5206\u5916\u5267"},{v:"28",n:"\u56FD\u6F2B\u4E4B\u5149"}],"26.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"26.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"26.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.id":[{v:"6",n:"\u79D1\u5E7B"},{v:"7",n:"\u7231\u60C5"},{v:"8",n:"\u6218\u4E89"},{v:"9",n:"\u6050\u6016"},{v:"10",n:"\u9AD8\u7801"},{v:"11",n:"\u52A8\u753B"},{v:"12",n:"\u52A8\u4F5C"},{v:"23",n:"\u753B\u8D28\u63A7"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u65E5\u97E9\u5267"},{v:"15",n:"\u6B27\u7F8E\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.id":[{v:"22",n:"\u65E5\u97E9"},{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u6B27\u7F8E"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"24.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"24.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"24.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}]}}},ZQr=new wbe,$Rt=ZQr.getExports();var F9=async(e,t,r)=>(await e.db.getObjectDefault("/tgsou",{}))?.[t]||e.config.tgsou[t]||r,Ibe=e=>F9(e,"url","https://zeqsulnmiacl.ap-northeast-1.clawcloudrun.com"),xbe=e=>F9(e,"count",4),Cbe=e=>F9(e,"channelUsername","tgsearchers5,Aliyun_4K_Movies,bdbdndn11,yunpanx,bsbdbfjfjff,yp123pan,sbsbsnsqq,yunpanxunlei,tianyifc,BaiduCloudDisk,txtyzy,peccxinpd,gotopan,PanjClub,kkxlzy,baicaoZY,MCPH01,MCPH02,MCPH03,bdwpzhpd,ysxb48,jdjdn1111,yggpan,MCPH086,zaihuayun,Q66Share,ucwpzy,shareAliyun,alyp_1,dianyingshare,Quark_Movies,XiangxiuNBB,ydypzyfx,ucquark,xx123pan,yingshifenxiang123,zyfb123,tyypzhpd,tianyirigeng,cloudtianyi,hdhhd21,Lsp115,oneonefivewpfx,qixingzhenren,taoxgzy,Channel_Shares_115,tyysypzypd,vip115hot,wp123zy,yunpan139,yunpan189,yunpanuc,yydf_hzl,leoziyuan,Q_dongman,yoyokuakeduanju,TG654TG,WFYSFX02,QukanMovie,yeqingjie_GJG666,movielover8888_film3,Baidu_netdisk,D_wusun,FLMdongtianfudi,KaiPanshare,QQZYDAPP,rjyxfx,PikPak_Share_Channel,btzhi,newproductsourcing,cctv1211,duan_ju,QuarkFree,yunpanNB,kkdj001,xxzlzn,pxyunpanxunlei,jxwpzy,kuakedongman,liangxingzhinan,xiangnikanj,solidsexydoll,guoman4K,zdqxm,kduanju,cilidianying,CBduanju,SharePanFilms,dzsgx,BooksRealm,Oscar_4Kmovies,douerpan,baidu_yppan,Q_jilupian,Netdisk_Movies,yunpanquark,ammmziyuan,ciliziyuanku,cili8888,jzmm_123pan,Q_dianying,domgmingapk,dianying4k,q_dianshiju,tgbokee,ucshare,godupan,gokuapan"),Tbe=e=>F9(e,"pic",!1),$9=async(e,t,r)=>{await e.db.push(`/tgsou/${t}`,r)};async function Nbe(e){e.get("/config",async(t,r)=>{let n=await Ibe(t.server),i=await xbe(t.server),s=await Cbe(t.server),a=await Tbe(t.server);r.send({code:0,data:{url:n,count:Number(i),channelUsername:s.split(","),pic:a}})}),e.put("/config",async(t,r)=>{await $9(t.server,"url",t.body.url),await $9(t.server,"count",t.body.count),await $9(t.server,"channelUsername",t.body.channelUsername.join(",")),await $9(t.server,"pic",t.body.pic),r.send({code:0})})}Yr();var eGr=12e3,tGr=60*1e3,rGr=20*1e3,nGr=200,iGr=200,sGr=6,aGr=1e3,oGr=Ee.create({timeout:eGr}),uGr=new Map,cGr=new Map,lGr=new Map,dGr=new Map,U9=new Map;function Rbe(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}async function FRt(e,t,r,n,i){let s=Date.now(),a=e.get(r);if(a&&s-a.timestamp<n)return a.data;if(t.has(r))return t.get(r);let o=(async()=>{let u=await i();return e.set(r,{data:u,timestamp:Date.now()}),Rbe(e,nGr),u})();t.set(r,o),Rbe(t,iGr);try{return await o}finally{t.get(r)===o&&t.delete(r)}}async function fGr(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let u=i++;if(u>=e.length)break;n[u]=await r(e[u],u)}},a=Math.min(t,e.length),o=new Array(a);for(let u=0;u<a;u++)o[u]=s();return await Promise.all(o),n}function pGr(e,t){let r=Number.parseInt(e,10);return Number.isNaN(r)?t:r}function hGr(e,t){if(!e)return null;if(U9.has(e))return U9.get(e);let r=t.find(n=>n.validator(e))||null;return U9.set(e,r),Rbe(U9,aGr,100),r}async function mGr(e,t){return await xs(e,t),{}}async function gGr(e,t){return{class:[]}}async function yGr(e,t){return{page:1,pagecount:1,list:[]}}async function _Gr(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await fGr(r,sGr,async i=>{let s=String(i||""),a=s,o=s;try{let c=JSON.parse(s);a=c.url,o=c.name||c.url}catch{a=s,o=s}let u={vod_name:o,vod_remarks:""};if(!a)return u;try{let c=await FRt(uGr,cGr,`detail:${a}`,tGr,async()=>hi(a,e));c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,Array.isArray(c.links)&&c.links.length>0&&(u.vod_links=c.links))}catch{}return u})}}async function AGr(e,t){let r=String(e.body.wd||"").trim();if(!r)return{page:1,pagecount:1,list:[]};let[n,i,s,a]=await Promise.all([Ibe(e.server),xbe(e.server),Cbe(e.server),Tbe(e.server)]),o=Math.max(1,pGr(i,20));if(!n)return{page:1,pagecount:1,list:[]};let u=`${n}::${a}::${o}::${s}::${r}`;return{page:1,pagecount:1,list:await FRt(lGr,dGr,u,rGr,async()=>{try{let l=await oGr.get(n,{params:{pic:a,count:o,channelUsername:s,keyword:r}}),d=Array.isArray(l.data?.results)?l.data.results:[],f=ls(),p=[],h=new Set;for(let m of d){if(!m||typeof m!="string")continue;let[y,g]=m.split("$$$");if(!g)continue;let v=String(y||"").trim(),A=g.split("##"),_=Math.min(A.length,o);for(let E=0;E<_;E++){let S=A[E];if(!S)continue;let[C,I]=S.split("$$");if(!C)continue;let[N,T]=C.split("@"),k=String(N||"").replace(/\s+/g,"");if(!k||h.has(k))continue;let O=hGr(k,f);if(!O)continue;h.add(k);let P=String(I||"").replace(/\s+/g,"")||r,Q=String(T||"").trim()||O.pic;p.push({vod_id:JSON.stringify({url:k,name:P}),vod_name:P,vod_pic:Q,vod_remarks:`${O.name}:${v}`})}}return p}catch{return[]}})}}var URt={meta:{key:"tgsou",name:"\u{1F50D} TG\u641C",type:3},api:async e=>{e.post("/init",mGr),e.post("/home",gGr),e.post("/category",yGr),e.post("/detail",_Gr),e.post("/play",Ci),e.post("/search",AGr),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};var vGr=/[\u{1F300}-\u{1FAFF}\u2600-\u27BF。,、;;!!??)\)】\]」』"'`]+$/gu,qRt=/(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ]\s*([a-zA-Z0-9]{4,8})/i,bGr=/(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ]\s*([a-zA-Z0-9]{4,8})/gi,EGr=[/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9_-]+(?:\/folder\/[a-zA-Z0-9_-]+)?/gi,/https?:\/\/(?:pan\.quark\.cn|pan\.qoark\.cn)\/s\/[a-zA-Z0-9_-]+/gi,/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/gi,/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+|web\/share\?code=[^&\s]+)/gi,/https?:\/\/(?:yun\.139\.com\/shareweb\/#\/w\/i\/|caiyun\.139\.com\/(?:m\/i\?|w\/i\/))[^\s]+/gi,/https?:\/\/(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]+)?/gi,/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/gi,/https?:\/\/pan\.xunlei\.com\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/https?:\/\/mypikpak\.com\/s\/[^?\s]+(?:\?[^\s]*)?/gi,/magnet:\?xt=urn:[^\s]+/gi,/ed2k:\/\/\|file\|[^\s]+/gi];function jRt(e=""){return String(e||"").trim().replace(vGr,"")}function SGr(e=""){let t=jRt(e),r=t.match(/([?&](?:pwd|password|passcode)=)([a-zA-Z0-9]{4,8})/i);return r?{cleanUrl:t,password:r[2]||""}:{cleanUrl:t,password:""}}function wGr(e,t=""){let r=jRt(e),{cleanUrl:n,password:i}=SGr(r),s=i||xGr(t,n),a=n;return s&&/pan\.baidu\.com\/s\//i.test(n)&&!/[?&]pwd=/i.test(n)&&(a=`${n}${n.includes("?")?"&":"?"}pwd=${s}`),{rawUrl:e,cleanUrl:a,password:s,type:IGr(a)}}function IGr(e){let t=String(e||"").toLowerCase();return t.startsWith("ed2k:")?"ed2k":t.startsWith("magnet:")?"magnet":t.includes("pan.baidu.com")?"baidu":t.includes("pan.quark.cn")||t.includes("pan.qoark.cn")?"quark":t.includes("alipan.com")||t.includes("aliyundrive.com")?"ali":t.includes("cloud.189.cn")?"tianyi":t.includes("drive.uc.cn")?"uc":t.includes("yun.139.com")||t.includes("caiyun.139.com")||t.includes("caiyun.feixin.10086.cn")?"yidong":t.includes("115.com")||t.includes("115cdn.com")||t.includes("anxia.com")?"115":t.includes("123684.")||t.includes("123685.")||t.includes("123865.")||t.includes("123912.")||t.includes("123pan.")||t.includes("123592.")?"123":t.includes("pan.xunlei.com")?"xunlei":t.includes("mypikpak.com")?"pikpak":null}function xGr(e,t=""){let r=String(e||""),n=String(t||""),i=n.match(qRt);if(i?.[1])return i[1];let s=r.indexOf(n);if(s>=0){let c=r.slice(s,s+n.length+40).match(qRt);if(c?.[1])return c[1]}let a=HRt(r).length,o=[...r.matchAll(bGr)].map(u=>u[1]).filter(Boolean);return a<=1&&o.length===1?o[0]:""}function HRt(e=""){let t=[];for(let r of EGr){let n=e.match(r)||[];t.push(...n)}return t}function CGr(e=[]){let t=new Map;for(let r of e){if(!r?.cleanUrl||!r.type)continue;if(!t.has(r.cleanUrl)){t.set(r.cleanUrl,r);continue}!t.get(r.cleanUrl).password&&r.password&&t.set(r.cleanUrl,r)}return Array.from(t.values())}function gx(e="",t=[]){let r=Array.isArray(t)?t.map(s=>typeof s=="string"?s:s?.href).filter(Boolean):[],n=HRt(e),i=[...r,...n].map(s=>wGr(s,e)).filter(s=>s.type||yb(s.cleanUrl));return CGr(i).map(s=>({...s,type:s.type||yb(s.cleanUrl),url:s.cleanUrl}))}var TGr=/^(?:名称|标题|片名|资源名|剧名|电影名|夸克|阿里|百度|天翼|UC|115|123云盘|123盘|迅雷|网盘)\s*[::||\-]?\s*/i,NGr=/[\u{1F300}-\u{1FAFF}\u2600-\u27BF]+$/gu,Dbe=/(https?:\/\/|magnet:\?|ed2k:\/\/)/i,RGr=/\s*(?:提取码|访问码|密码|口令|code|pwd)\s*[:: ].*$/i,ZP=/^(?:描述|简介|大小|标签|via|更新|类型|地区|年份|导演|主演|链接)\b/i;function ql(e=""){return String(e||"").replace(TGr,"").replace(RGr,"").replace(Dbe,"").replace(NGr,"").replace(/[::||\-\s]+$/,"").replace(/[((【\[].*$/,"").replace(/\s+/g," ").trim()}function o_(e=""){let t=ql(e);return!(!t||/^[·•\-||]+$/.test(t)||/^(?:描述|简介|大小|标签|via|匿名)$/i.test(t)||ZP.test(t))}function DGr(e=""){let r=String(e||"").split(` -`).map(n=>ql(n)).filter(n=>o_(n)).filter(n=>!Dbe.test(n)).filter(n=>!/pan\.|alipan|aliyundrive|drive\.uc|cloud\.189|123pan|115\.com|xunlei/i.test(n));return r[0]?r[0]:""}function kGr(e=""){let t=e.search(/https?:\/\/|magnet:\?|ed2k:\/\//i);return t<=0?"":ql(e.slice(0,t))}function OGr(e=""){let t=String(e||"").replace(/\s+/g," ").trim();if(!t)return"";let r=t.split(/[\n||]/).map(n=>ql(n)).filter(n=>o_(n)).filter(n=>!/提取码|访问码|密码|口令|code|pwd/i.test(n)).filter(n=>!/pan\.|alipan|aliyundrive|drive\.uc|cloud\.189|123pan|115\.com|xunlei/i.test(n));return r[r.length-1]||""}function PGr(e=[],t=-1,r=""){for(let n=t;n>=0;n--){let i=String(e[n]||""),s=ql(i);if(o_(s)&&!Dbe.test(i)&&!ZP.test(s))return s}return ql(r)}function MGr(e="",t=[],r=""){let n=String(e||"").split(` -`),i={},s=ql(r),a=o_(s);if(!t.map(d=>d.cleanUrl||d.url).filter(Boolean).length)return i;let u=[];for(let d=0;d<n.length;d++){let f=n[d]||"",p=t.filter(v=>f.includes(v.rawUrl||"")||f.includes(v.cleanUrl||v.url||""));if(!p.length)continue;let h=kGr(f),m=h?"":PGr(n,d-1,""),y=ql(h||m||""),g=o_(y)?y:"";p.forEach(v=>{let A=v.cleanUrl||v.url;A&&(g&&(i[A]=g),g&&g!==s&&!ZP.test(g)&&u.push(g))})}if(!(Array.from(new Set(u.filter(Boolean))).length>=2)&&a){for(let d of t){let f=d.cleanUrl||d.url;f&&(i[f]=s)}return i}for(let d of t){let f=d.cleanUrl||d.url;if(!f||i[f])continue;let p=d.rawUrl||f,h=String(e||"").replace(/\n+/g,` -`),m=h.indexOf(p);if(m>=0){let y=h.slice(Math.max(0,m-120),m),g=OGr(y);if(o_(g)&&!ZP.test(g)){i[f]=g;continue}}a&&(i[f]=s)}return i}function LGr(e={}){return Object.values(e||{}).some(t=>{let r=ql(t||"");return r?ZP.test(r)||/^(?:链接|描述|简介|大小|标签|via)$/i.test(r):!0})}function BGr(e={},t=""){let r=ql(t);if(!o_(r))return!1;let n=Object.values(e||{}).map(s=>ql(s)).filter(Boolean);if(!n.length||LGr(e))return!0;let i=Array.from(new Set(n));return i.length===1&&i[0]===r||i.length<=1}function yx(e="",t={}){let r=gx(e,t.anchors||[]),n=DGr(e),i=MGr(e,r,n);if(BGr(i,n)){let s=ql(n);if(o_(s)){i={};for(let a of r){let o=a.cleanUrl||a.url;o&&(i[o]=s)}}}return{messageTitle:n,linkTitleMap:i,rawLinks:r.map(s=>s.rawUrl||s.cleanUrl),normalizedLinks:r}}Yr();var kbe="/tgchannel",eM={url:"",count:20,enableImage:!0,homeChannelUsername:[],channelUsername:[],channelRemark:{}};function $Gr(e,t=""){return e==null?t:String(e)}function FGr(e,t=eM.count){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>0?r:t}function UGr(e,t=eM.enableImage){if(typeof e=="boolean")return e;if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?!0:["0","false","no","off","n"].includes(r)?!1:t}function KRt(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function qGr(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let t={};for(let[r,n]of Object.entries(e)){let i=String(r||"").trim();i&&(t[i]=String(n||"").trim())}return t}function Obe(e={}){let t=e&&typeof e=="object"?e:{};return{url:$Gr(t.url,eM.url),count:FGr(t.count,eM.count),enableImage:UGr(t.enableImage,eM.enableImage),homeChannelUsername:KRt(t.homeChannelUsername),channelUsername:KRt(t.channelUsername),channelRemark:qGr(t.channelRemark)}}var zb=async e=>{let t=await e.db.getObjectDefault(kbe,{});return Obe(t)},tM=async e=>(await zb(e)).url,Pbe=async e=>(await zb(e)).count,rM=async e=>(await zb(e)).enableImage,Mbe=async e=>(await zb(e)).channelUsername,Lbe=async e=>(await zb(e)).homeChannelUsername,q9=async e=>(await zb(e)).channelRemark;async function j9(e){e.get("/config",async(t,r)=>{try{let n=await zb(t.server);r.send({code:0,data:n})}catch(n){r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:Obe({})})}}),e.put("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault(kbe,{}),i=Obe({...n,...t.body||{}});await t.server.db.push(kbe,i),r.send({code:0,data:i,message:"TGChannel\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var Bbe="https://telegram.org/img/apple-touch-icon.png",jGr=8e3,VRt=200,HGr=1e3,KGr=20*1e3,Ube=30*1e3,VGr=45*1e3,zGr=6,QGr=4,GGr=/t\.me\/[^/\s]+\/[^/\s]+/i,YGr=/https?:\/\/t\.me\/(?:c\/\d+\/\d+|[^/\s?#]+\/\d+(?:\?single)?)(?:\?[^\s]*)?/gi,WGr=/^https?:\/\/(?:telegra\.ph|graph\.org)\//i,XGr=/^https?:\/\/[^\s]+\.(?:txt|text)(?:[?#].*)?$/i,JGr=/^https?:\/\/t\.me\/c\/\d+\/\d+(?:\?.*)?$/i,ZGr=/^https?:\/\/t\.me\/[^/\s?#]+\/\d+(?:\?single)?(?:\?.*)?$/i,eYr=/(?:imdb\.com|movie\.douban\.com|content\.21cn\.com|t\.me)/i,tYr=/^(?:#.+|IMDb|豆瓣|评分|简介|介绍|预告|搜索|标签|资源搜索|查看热播|订阅直达)$/i,GRt=/(?:直达链接|点击下载|在线下载|点击获取(?:夸克|阿里云盘|百度)?链接|查看资源|资源|网盘|天翼|夸克|阿里|百度|UC|115|123云盘|迅雷|pikpak|磁力|magnet)/i;function V9(e){let t=String(e&&e.attribs&&e.attribs.class||"");return/tgme_widget_message_inline_button/.test(t)}var z9=Ee.create({timeout:jGr,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),rYr=new Map,nYr=new Map,qbe=new Map,jbe=new Map,iYr=new Map,sYr=new Map,H9=new Map;function $be(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}async function nM(e,t,r,n,i){let s=Date.now(),a=e.get(r);if(a&&s-a.timestamp<n)return a.data;if(t.has(r))return t.get(r);let o=(async()=>{let u=await i();return e.set(r,{data:u,timestamp:Date.now()}),$be(e,VRt),u})();t.set(r,o),$be(t,VRt);try{return await o}finally{t.get(r)===o&&t.delete(r)}}function YRt(e){return String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function aYr(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}async function WRt(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let u=i++;if(u>=e.length)break;n[u]=await r(e[u],u)}},a=Math.min(t,e.length),o=new Array(a);for(let u=0;u<a;u++)o[u]=s();return await Promise.all(o),n}function Hbe(e,t){if(!e)return null;if(H9.has(e))return H9.get(e);let r=t.find(n=>n.validator(e))||null;return H9.set(e,r),$be(H9,HGr,100),r}function oYr(e){let t=e.attr("style");if(!t)return;let r=/background-image:url\('([^']+)'\)/.exec(t);if(r&&r.length>1)return r[1]}function XRt(e){return yx(String(e||"")).messageTitle||String(e||"").trim()}function JRt(e=[]){return Array.from(e||[]).map(t=>({href:(t&&t.attribs?t.attribs.href:"")||"",text:String(t&&t.children&&t.children.map?t.children.map(r=>r&&r.data||"").join(""):"").trim(),cls:String((t&&t.attribs?t.attribs.class:"")||"")})).filter(t=>t.href)}function ZRt(e){return e.find("a").toArray()}function eDt(e=""){return WGr.test(String(e||""))}function Kbe(e=""){return XGr.test(String(e||""))}function tDt(e=""){let t=String(e||"");return JGr.test(t)||ZGr.test(t)}function uYr(e=""){let t=String(e||"").match(YGr)||[];return Array.from(new Set(t.filter(function(r){return tDt(r)})))}function rDt(e=[]){return JRt(e).map(t=>t.href)}function nDt(e=""){return String(e||"").trim().replace(/^[^A-Za-z0-9\u4e00-\u9fa5]+/g,"")}function K9(e=""){return String(e||"").toLowerCase().replace(/第\s*\d+\s*[季部集期话篇]/g," ").replace(/[\s\-—_::·•,.,。!!??'"“”‘’()()\[\]【】]/g,"").trim()}function cYr(e,t){let r=K9(t);if(!r)return!0;let n=String(e?.parsed?.messageTitle||"").trim(),i=String(e?.title||"").trim(),s=String(e?.description||"").trim(),a=K9(n),o=K9(i),u=K9(s);return a?a.includes(r):o?o.includes(r):!!(u&&u.includes(r))}function lYr(e={}){let t=String(e.href||""),r=String(e.text||"").trim(),n=String(e.cls||""),i=nDt(r);return!t||/^\?q=/.test(t)?!0:eYr.test(t)?!(V9({attribs:{class:n}})&&GRt.test(i)):!!(i&&tYr.test(i)||!V9({attribs:{class:n}})&&!gx("",[t]).length)}function iDt(e="",t=[]){let r=JRt(t).filter(c=>!lYr(c)),n=r.map(c=>c.href),i=gx(String(e||""),n).map(c=>c.cleanUrl),s=r.filter(c=>V9({attribs:{class:c.cls}})&&eDt(c.href)).map(c=>c.href),a=r.map(c=>c.href).filter(c=>Kbe(c)),o=r.filter(c=>V9({attribs:{class:c.cls}})&&GRt.test(nDt(c.text))&&tDt(c.href)).map(c=>c.href),u=uYr(e);return Array.from(new Set([].concat(i,s,a,o,u)))}function sDt(e="",t=[]){return iDt(e,t)}var dYr=e=>GGr.test(e||"");async function aDt(e,t=!0){let r=`${e}::${t?1:0}`;return nM(rYr,nYr,r,KGr,async()=>{try{let n=await z9.get(e),i=lr(n.data);i("br").replaceWith(` -`);let s=i(".tgme_widget_message"),a=ls(),o=[];for(let u=0;u<s.length;u++){let c=s[u],l=(c&&c.attribs?c.attribs["data-post"]:"")||"",d=Number.parseInt(l.split("/")[1],10)||0,f=i(c).find(".tgme_widget_message_text"),p=t?oYr(i(c).find(".tgme_widget_message_photo_wrap")):void 0,h=f.text(),m=h,y=ZRt(i(c)),g=rDt(y),v=yx(h,{anchors:g}),A=v.messageTitle||XRt(h),_=v.normalizedLinks.map(S=>S.cleanUrl).filter(S=>Hbe(S,a)),E=sDt(h,y);E.length&&o.push({id:E.join("|"),title:A,description:m,cover:p,messageId:d,panLinks:_,parsed:v})}return o}catch(n){return console.error("\u89E3\u6790\u9891\u9053HTML\u5931\u8D25:",n.message),[]}})}async function oDt(e,t=""){let r=`${e}::textfile`;return nM(qbe,jbe,r,Ube,async()=>{try{let n=await z9.get(e,{responseType:"text"}),i=typeof n.data=="string"?n.data:String(n.data||""),s=gx(i,[]).map(a=>a.cleanUrl);return{title:t,description:i,cover:void 0,links:Array.from(new Set(s)),parsed:yx(i)}}catch(n){return console.error("\u89E3\u6790\u6587\u672C\u8D44\u6E90\u6587\u4EF6\u5931\u8D25:",n.message),{title:t,description:"",cover:void 0,links:[],parsed:null}}})}async function fYr(e,t=""){let r=`${e}::telegraph`;return nM(qbe,jbe,r,Ube,async()=>{try{let n=await z9.get(e),i=lr(n.data),s=i("h1").first().text().trim()||i('meta[property="og:title"]').attr("content")||t,a=i(".tl_article").first().length?i(".tl_article").first():i.root(),o=a.text()||"",c=iDt(o,a.find("a").toArray());return c.length===1&&Kbe(c[0])&&(c=(await oDt(c[0],s)).links||[]),{title:s,description:o,cover:i('meta[property="og:image"]').attr("content")||void 0,links:c,parsed:yx(o)}}catch(n){return console.error("\u89E3\u6790Telegraph\u5931\u8D25:",n.message),{title:t,description:"",cover:void 0,links:[],parsed:null}}})}async function pYr(e,t=!0){let r=`${e}::${t?1:0}`;return nM(qbe,jbe,r,Ube,async()=>{try{let n=await z9.get(e),i=lr(n.data),s=i('meta[property="og:description"]').attr("content")||"",a=t?i('meta[property="og:image"]').attr("content"):void 0,o=i(".tgme_widget_message_text").first().text()||s,u=ZRt(i(".tgme_widget_message").first().length?i(".tgme_widget_message").first():i.root()),c=rDt(u),l=yx(o||s,{anchors:c}),d=sDt(o||s,u);return{title:l.messageTitle||XRt(o||s),description:o||s,cover:a,links:d,parsed:l}}catch(n){return console.error("\u89E3\u6790\u6D88\u606FHTML\u5931\u8D25:",n.message),{title:"",description:"",cover:void 0,links:[]}}})}async function hYr(e,t={},r=0){let n=String(e||"").trim(),i=t.url,s=t.enableImage,a=t.fallbackTitle||"";if(!n||r>3)return{title:a,parsed:null,cover:void 0,links:n?[n]:[]};if(dYr(n)){let o=n.replace(/^https?:\/\/t\.me/i,i),u=await pYr(o,s),c=Array.isArray(u.links)?u.links.filter(Boolean):[];if(!c.length||c.length===1&&c[0]===n)return{title:u.title||a,parsed:u.parsed||null,cover:u.cover,links:[]};let l=await Fbe(c,{url:i,enableImage:s,fallbackTitle:u.title||a},r+1);return{title:l.title||u.title||a,parsed:l.parsed||u.parsed||null,cover:l.cover||u.cover,links:l.links}}if(eDt(n)){let o=await fYr(n,a),u=Array.isArray(o.links)?o.links.filter(Boolean):[];if(!u.length||u.length===1&&u[0]===n)return{title:o.title||a,parsed:o.parsed||null,cover:o.cover,links:[]};let c=await Fbe(u,{url:i,enableImage:s,fallbackTitle:o.title||a},r+1);return{title:c.title||o.title||a,parsed:c.parsed||o.parsed||null,cover:c.cover||o.cover,links:c.links}}if(Kbe(n)){let o=await oDt(n,a);return{title:o.title||a,parsed:o.parsed||null,cover:o.cover,links:Array.isArray(o.links)?o.links.filter(Boolean):[]}}return{title:a,parsed:null,cover:void 0,links:[n]}}async function Fbe(e=[],t={},r=0){let n=Array.isArray(e)?e:[],i=await Promise.all(n.filter(Boolean).map(function(o){return hYr(o,t,r)})),s=Array.from(new Set([].concat.apply([],i.map(function(o){return o.links||[]})).filter(Boolean))),a=null;for(let o=0;o<i.length;o++){let u=i[o];if((u.links||[]).length){a=u;break}}if(!a)for(let o=0;o<i.length;o++){let u=i[o];if(u.title||u.parsed||u.cover){a=u;break}}return{title:a&&a.title||t.fallbackTitle||"",parsed:a&&a.parsed||null,cover:a?a.cover:void 0,links:s}}async function mYr(e,t){return await xs(e,t),{}}async function gYr(e){try{let t=await Lbe(e.server),n=await q9(e.server)||{};return{class:YRt(t).map(s=>{let a=n[s]&&n[s].trim()||s;return{type_id:s,type_name:a}})}}catch(t){return console.error("home \u51FD\u6570\u9519\u8BEF:",t),{class:[]}}}var zRt={},QRt={};async function yYr(e){let[t,r]=await Promise.all([tM(e.server),rM(e.server)]),n=String(e.body.id||"").trim(),i=aYr(e.body.page);if(!n)return{page:i,pagecount:1,list:[]};try{let s=i>1?QRt[n]:void 0,a=s?`${n.includes("?")?"&":"?"}before=${s}`:"",o=await aDt(`${t}/s/${n}${a}`,r);if(o.length>0){QRt[n]=o[0].messageId,i===1&&(zRt[n]=o[o.length-1].messageId),o.reverse();let u=ls(),c=o.map(l=>{let d;if(l.panLinks.length){let f=Hbe(l.panLinks[0],u);d=f?f.pic:void 0}return d||(d=Bbe),{vod_name:l.title,vod_id:JSON.stringify({links:l.id,name:l.title,parsed:l.parsed,rawData:l,vod_pic:l.cover||d,vod_remarks:l.parsed?.channelName||l.parsed?.remark||""}),vod_pic:l.cover||d,vod_remarks:l.parsed?.channelName||l.parsed?.remark||"",rawData:l}});return{page:i,pagecount:Math.ceil(zRt[n]/c.length)||1,list:c}}else return{page:i,pagecount:1,list:[]}}catch(s){return console.error("category \u9519\u8BEF:",s),{page:i,pagecount:1,list:[]}}}async function _Yr(e,t){try{let[r,n]=await Promise.all([tM(e.server),rM(e.server)]),i=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await WRt(i,zGr,async a=>{try{let o=String(a||""),u=o,c=o;try{let v=JSON.parse(o);u=v.links,c=v.name||v.links}catch{u=o,c=o}let l=String(u||"").split("|").filter(Boolean),d=null;try{let v=JSON.parse(o);d=v&&v.parsed||(v&&v.rawData?v.rawData.parsed:null)||null}catch{}d&&d.normalizedLinks&&d.normalizedLinks.length&&(l=d.normalizedLinks.map(v=>v.cleanUrl).filter(Boolean),c=d.messageTitle||c);let f=await Fbe(l,{url:r,enableImage:n,fallbackTitle:c});f.links.length&&(l=f.links),f.parsed&&(d=f.parsed),f.title&&(c=f.title);let p="",h=d?.channelName||d?.remark||"";try{let v=JSON.parse(o);p=v?.vod_pic||"",h=v?.vod_remarks||h}catch{}let m={vod_id:o,vod_name:c,vod_pic:p||"",vod_remarks:h};if(!l.length)return m;let y=l.join("|"),g=await nM(iYr,sYr,y,VGr,async()=>hi(l,e));return g&&(m.vod_play_from=g.froms,m.vod_play_url=g.urls,Array.isArray(g.links)&&g.links.length>0&&(m.vod_links=g.links)),m}catch{return{vod_id:String(a||""),vod_name:String(a||""),vod_remarks:""}}})}}catch(r){return console.error("detail \u51FD\u6570\u9519\u8BEF:",r),{list:[]}}}async function AYr(e,t){try{let[r,n,i,s,a]=await Promise.all([Pbe(e.server),Mbe(e.server),q9(e.server),tM(e.server),rM(e.server)]),o=Number.parseInt(r,10)||20,u=i||{},c=String(e.body.wd||"").trim(),l=YRt(n);if(!c||l.length===0)return{page:1,pagecount:1,list:[]};let d=await WRt(l,QGr,async h=>aDt(`${s}/s/${h}?q=${encodeURIComponent(c)}`,a)),f=ls(),p=[];return d.forEach((h,m)=>{h&&h.length>0&&h.filter(y=>y&&y.panLinks&&y.panLinks.length).filter(y=>cYr(y,c)).slice(0,o).forEach(y=>{let g="",v;y.panLinks.forEach(_=>{let E=Hbe(_,f);E&&(g+=g?`|${E.name}`:E.name),v||(v=E?E.pic:void 0)});let A=u[l[m]]&&u[l[m]].trim()||l[m];p.push({vod_id:JSON.stringify({links:y.id,name:y.title,parsed:y.parsed,rawData:y,vod_pic:y.cover||v||Bbe,vod_remarks:`${g}:${A}`}),vod_name:y.title,vod_pic:y.cover||v||Bbe,vod_remarks:`${g}:${A}`})})}),{page:1,pagecount:1,list:p}}catch(r){return console.error("search \u51FD\u6570\u9519\u8BEF:",r),{page:1,pagecount:1,list:[]}}}var uDt={meta:{key:"tgchannel",name:"\u2601\uFE0F \u9891\u9053",type:3},api:async e=>{e.post("/init",mYr),e.post("/home",gYr),e.post("/category",yYr),e.post("/detail",_Yr),e.post("/play",Ci),e.post("/search",AYr),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};Kt();var _x=Se(eP(),1),Vbe=Se(di(),1),jl="https://frodo.douban.com",lf={},jc=30,vYr=Object.freeze({page:1,pagecount:1,limit:0,total:0,list:[]});function Hl(e){e+=`&udid=${lf.id}&uuid=${lf.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${lf.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let t=new URL(e),r=(0,_x.default)().unix().toString(),n=Vbe.default.HmacSHA1("GET&"+encodeURIComponent(t.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),i=Vbe.default.enc.Base64.stringify(n);return e+"&_sig="+encodeURIComponent(i)+"&_ts="+r}async function Wp(e,t){return(await _e.get(e,{headers:{"User-Agent":t||lf.ua}})).data}function bYr(e,t){return e?`http://127.0.0.1:${t?.server?.address()?.port||9988}/proxy?do=image&url=${encodeURIComponent(e)}&referer=${encodeURIComponent("https://movie.douban.com")}`:""}function aM(e,t){let r="";return e.cover_url?r=e.cover_url:e.pic?typeof e.pic=="string"?r=e.pic:e.pic.normal?r=e.pic.normal:e.pic.large?r=e.pic.large:e.pic.medium&&(r=e.pic.medium):e.images?e.images.normal?r=e.images.normal:e.images.large?r=e.images.large:e.images.medium&&(r=e.images.medium):e.cover&&(r=e.cover),r&&t?bYr(r,t):r||""}function EYr(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function sM(e){if(!e)return"";let t=String(e).trim();return t?t==="all"||t.includes("\u5168\u90E8")?"\u5168\u90E8":t:""}function SYr(e){let t=sM(e);return t==="\u52A8\u6F2B"?"\u52A8\u753B":t}function wYr(e){let t=(e?.rating&&e.rating.value||"").toString();return t.length>0?`\u8BC4\u5206:${t}`:""}function iM(e,t){return!e||!e.id?null:{vod_id:e.id,vod_name:e.title||"",vod_pic:aM(e,t),vod_remarks:wYr(e)}}function Qb(e,t,r){let n=Number.isFinite(t)?t:r.length,i=Math.max(1,Math.ceil(n/jc));return{page:e,pagecount:i,total:n,list:r}}async function IYr(e,t){let r=e.server.prefix+"/device";return lf=await e.server.db.getObjectDefault(r,{}),lf.id||(lf.id=mb(40).toLowerCase(),lf.ua=`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${lf.id} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`,await e.server.db.push(r,lf)),{}}async function xYr(e,t){let r=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],n={t1:[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],t2:[],t4:[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]},{key:"area",name:"",init:"all",value:[{n:"\u534E\u8BED",v:"chinese"},{n:"\u6B27\u7F8E",v:"western"},{n:"\u65E5\u672C",v:"japanese"},{n:"\u97E9\u56FD",v:"korea"}]},{key:"genre",name:"",init:"all",value:[{n:"\u559C\u5267",v:"comedy"},{n:"\u52A8\u4F5C",v:"action"},{n:"\u7231\u60C5",v:"love"},{n:"\u79D1\u5E7B",v:"science_fiction"},{n:"\u52A8\u753B",v:"cartoon"},{n:"\u60AC\u7591",v:"mystery"},{n:"\u60CA\u609A",v:"panic"},{n:"\u6050\u6016",v:"horrible"},{n:"\u72AF\u7F6A",v:"criminal"},{n:"\u540C\u6027",v:"lgbt"},{n:"\u6218\u4E89",v:"war"},{n:"\u5947\u5E7B",v:"fantasy"},{n:"\u60C5\u8272",v:"erotica"},{n:"\u97F3\u4E50",v:"music"},{n:"\u7EAA\u5F55\u7247",v:"documentary"},{n:"\u6CBB\u6108",v:"cure"},{n:"\u827A\u672F",v:"art"},{n:"\u9ED1\u8272\u5E7D\u9ED8",v:"dark_humor"},{n:"\u9752\u6625",v:"youth"},{n:"\u5973\u6027",v:"female"},{n:"\u771F\u5B9E\u4E8B\u4EF6\u6539\u7F16",v:"real_event"},{n:"\u66B4\u529B",v:"violence"},{n:"\u9ED1\u767D",v:"black_white"},{n:"\u7F8E\u98DF",v:"food"},{n:"\u65C5\u884C",v:"travel"},{n:"\u513F\u7AE5",v:"child"},{n:"\u4EBA\u6027",v:"humanity"},{n:"\u5BB6\u5EAD",v:"family"},{n:"\u6587\u827A",v:"literary_art"},{n:"\u5C0F\u8BF4\u6539\u7F16",v:"novel"},{n:"\u611F\u4EBA",v:"moving"},{n:"\u52B1\u5FD7",v:"inspiration"}]}]};try{let i=Hl(`${jl}/api/v2/movie/tag?sort=U&start=0&count=${jc}&q=\u5168\u90E8\u5F62\u5F0F,\u5168\u90E8\u7C7B\u578B,\u5168\u90E8\u5730\u533A,\u5168\u90E8\u5E74\u4EE3&score_range=0,10`),s=await Wp(i),a=Array.isArray(s?.tags)?s.tags:[],o=Array.isArray(s?.sorts)?s.sorts:[],u=[];for(let f of a){if(!f||f.type==="\u7279\u8272"||!Array.isArray(f.data)||f.data.length===0)continue;let p=[...f.data];f.type==="\u5E74\u4EE3"&&p.indexOf((0,_x.default)().year().toString())<0&&(p.splice(1,0,(0,_x.default)().year().toString()),p.indexOf(((0,_x.default)().year()-1).toString())<0&&p.splice(2,0,((0,_x.default)().year()-1).toString())),u.push({key:f.type,name:"",init:p[0],value:p.map(h=>({n:h.indexOf("\u5168\u90E8")>=0?"\u5168\u90E8":h,v:h}))})}o.length>0&&u.push({key:"sort",name:"",init:o[0].name,value:o.map(f=>({n:f.text,v:f.name}))});let c=[{n:"\u5168\u90E8",v:"\u5168\u90E8"},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}],l=u.findIndex(f=>f.key==="\u5F62\u5F0F"),d={key:"\u5F62\u5F0F",name:"",init:"\u5168\u90E8",value:c};l!==-1?u[l]=d:u.push(d),n.t2=u}catch{}return{class:r,filters:n}}async function CYr(e,t){let r=e.body||{},n=r.id||"",i=r.filters||{},s=EYr(r.page),a=(s-1)*jc;try{if(n==="t1"){let o=Hl(`${jl}/api/v2/${i.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${a}&count=${jc}`),u=await Wp(o),l=(u?.items||u?.subject_collection_items||[]).map(d=>iM(d,e)).filter(Boolean);return Qb(s,u?.total,l)}if(n==="t250"){let o=Hl(`${jl}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${a}&count=${jc}`),u=await Wp(o),l=(u?.items||u?.subject_collection_items||[]).map(d=>iM(d,e)).filter(Boolean);return Qb(s,u?.total,l)}if(n==="t2"){let o=SYr(i.\u5F62\u5F0F)||"\u5168\u90E8",u=sM(i.\u7C7B\u578B)||"\u5168\u90E8",c=sM(i.\u5730\u533A)||"\u5168\u90E8",l=sM(i.\u5E74\u4EE3)||"\u5168\u90E8",d=sM(i.sort)||"U",f=null,p="",h={},m=[];if(o==="\u7535\u5F71")p="/api/v2/movie/recommend",h={\u5F62\u5F0F:"\u7535\u5F71"},m=["\u7535\u5F71"];else if(o==="\u7535\u89C6\u5267")p="/api/v2/tv/recommend",h={\u5F62\u5F0F:"\u7535\u89C6\u5267"},m=["\u7535\u89C6\u5267"];else if(o==="\u52A8\u753B")p="/api/v2/tv/recommend",h={\u5F62\u5F0F:"\u52A8\u753B"},m=["\u52A8\u753B"];else if(o==="\u7EFC\u827A")p="/api/v2/tv/recommend",h={\u5F62\u5F0F:"\u7EFC\u827A"},m=["\u7EFC\u827A"];else if(o==="\u7EAA\u5F55\u7247")p="/api/v2/movie/recommend",h={\u5F62\u5F0F:"\u7EAA\u5F55\u7247"},m=["\u7EAA\u5F55\u7247"];else if(o==="\u77ED\u7247")p="/api/v2/movie/recommend",h={\u5F62\u5F0F:"\u77ED\u7247"},m=["\u77ED\u7247"];else{let A=[o,u,c,l].filter(E=>E&&E!=="\u5168\u90E8"&&!E.includes("\u5168\u90E8")),_=A.length>0?`&q=${A.join(",")}`:"";f=Hl(`${jl}/api/v2/movie/tag?sort=${d}&start=${a}&count=${jc}${_}&score_range=0,10`)}if(p){o!=="\u52A8\u753B"&&u&&u!=="\u5168\u90E8"&&u!=="all"&&(h.\u7C7B\u578B=u,m.push(u)),c&&c!=="\u5168\u90E8"&&c!=="all"&&(h.\u5730\u533A=c,m.push(c)),l&&l!=="\u5168\u90E8"&&m.push(l);let A=`${jl}${p}?refresh=0&start=${a}&count=${jc}`;A+=`&selected_categories=${encodeURIComponent(JSON.stringify(h))}`,m.length>0&&(A+=`&tags=${encodeURIComponent(m.join(","))}`),A+=`&uncollect=false&score_range=0%2C10&sort=${d}`,f=Hl(A)}if(!f){let A=[o,u,c,l].filter(E=>E&&E!=="\u5168\u90E8"&&!E.includes("\u5168\u90E8")),_=A.length>0?`&q=${A.join(",")}`:"";f=Hl(`${jl}/api/v2/movie/tag?sort=${d}&start=${a}&count=${jc}${_}&score_range=0,10`)}let y=await Wp(f),g=[];y?.items?g=y.items:y?.data?g=y.data:y?.subject_collection_items&&(g=y.subject_collection_items);let v=g.map(A=>iM(A,e)).filter(Boolean);return Qb(s,y?.total,v)}if(n==="t3"){let[o,u]=await Promise.all([Wp(Hl(`${jl}/api/v2/movie/category_ranks?count=${jc}&category=recent_hot`)),Wp(Hl(`${jl}/api/v2/tv/category_ranks?count=${jc}&category=recent_hot`))]),c=[];for(let l of o?.selected_collections||[])c.push({vod_id:`cr_${l.id}`,vod_name:l.short_name||l.title||"",vod_pic:aM(l,e),vod_remarks:"",cate:{}});for(let l of u?.selected_collections||[])c.push({vod_id:`cr_${l.id}`,vod_name:l.short_name||l.title||"",vod_pic:aM(l,e),vod_remarks:"",cate:{}});return Qb(1,c.length,c)}if(n==="t4"){let o=Hl(`${jl}/api/v2/skynet/new_playlists?subject_type=${i.type||""}&category=${i.cate||"all"}&loc_id=0&start=${a}&count=${jc}`),u=await Wp(o),l=(u?.data?.[0]?.items||[]).map(d=>({vod_id:d.owner?`dl_${d.id}`:`cr_${d.id}`,vod_name:d.title||"",vod_pic:aM(d,e),vod_remarks:"",cate:{}}));return Qb(s,u?.total,l)}if(n.startsWith("cr_")){let o=Hl(`${jl}/api/v2/subject_collection/${n.substring(3)}/items?start=${a}&count=${jc}&updated_at=&items_only=1`),u=await Wp(o),l=(u?.subject_collection_items||[]).map(d=>iM(d,e)).filter(Boolean);return Qb(s,u?.total,l)}if(n.startsWith("dl_")){let o=Hl(`${jl}/api/v2/doulist/${n.substring(3)}/posts?start=${a}&count=${jc}&updated_at=&items_only=1`),u=await Wp(o),c=[];for(let l of u?.items||[]){let d=l?.content?.subject,f=iM(d,e);f&&c.push(f)}return Qb(s,u?.total,c)}}catch{}return{page:s,pagecount:s,total:0,list:[]}}async function TYr(e,t){let r=e.body?.id;if(!r)return{list:[]};try{let n=Hl(`${jl}/api/v2/movie/${r}`),i=await Wp(n),s=Array.isArray(i?.directors)?i.directors.map(u=>u.name).join(","):"",a=Array.isArray(i?.actors)?i.actors.slice(0,5).map(u=>u.name).join(","):"",o=Array.isArray(i?.countries)?i.countries.join(","):"";return{list:[{vod_id:i.id||r,vod_name:i.title||"",vod_pic:aM(i,e),vod_remarks:i.rating?`\u8BC4\u5206:${i.rating.value}`:"",type_name:i.subtype==="tv"?"\u7535\u89C6\u5267":"\u7535\u5F71",vod_year:i.year||"",vod_area:o,vod_actor:a,vod_director:s,vod_content:i.intro||i.card_subtitle||"",vod_play_from:"\u8C46\u74E3",vod_play_url:`\u7B2C1\u96C6$$${r}`}]}}catch{return{list:[]}}}async function NYr(e,t){let r=e.body?.id;return r?{parse:0,url:`https://movie.douban.com/subject/${r}/`,header:{"User-Agent":lf.ua,Referer:"https://movie.douban.com/"}}:{parse:0,url:""}}async function RYr(e,t){return{...vYr}}var cDt={meta:{key:"douban",name:"\u{1F3E0} \u8C46\u74E3",type:3,indexs:1,supportSearch:!1},api:async e=>{e.post("/init",IYr),e.post("/home",xYr),e.post("/category",CYr),e.post("/detail",TYr),e.post("/play",NYr),e.post("/search",RYr)}};var DYr="https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg",kYr=200,OYr=6,PYr=new Map;function MYr(e,t,r=30){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}async function LYr(e,t,r){if(e.has(t))return e.get(t);let n=(async()=>r())();e.set(t,n),MYr(e,kYr);try{return await n}finally{e.get(t)===n&&e.delete(t)}}function BYr(e){return{vod_id:e,vod_content:"",vod_name:e,vod_pic:DYr,vod_remarks:""}}async function $Yr(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let u=i++;if(u>=e.length)break;n[u]=await r(e[u],u)}},a=Math.min(t,e.length),o=new Array(a);for(let u=0;u<a;u++)o[u]=s();return await Promise.all(o),n}async function FYr(e,t){return{}}async function UYr(e,t){let r=String(e?.body?.clip||e?.body?.id||"").trim();return r&&await yb(r)?"true":"false"}async function qYr(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id];return{list:await $Yr(r,OYr,async i=>{let s=String(i||"").trim(),a=BYr(s);if(!s)return a;try{let o=await LYr(PYr,`detail:${s}`,async()=>hi(s,e));o&&(a.vod_play_from=o.froms,a.vod_play_url=o.urls,Array.isArray(o.links)&&o.links.length>0&&(a.vod_links=o.links))}catch{}return a})}}async function jYr(e,t){try{let r=function(o){o.statusCode&&o.statusCode==500&&console.error(o)},n=e.server.prefix,i={},s=await e.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"}),a=s.json();return i.support=a,r(a),s=await e.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),a=s.json(),i.detail=a,r(a),s=await e.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),a=s.json(),i.play=a,r(a),i}catch(r){return console.error(r),t.code(500),{err:r.message,tip:"check debug console output"}}}var lDt={meta:{key:"push",name:"\u2699\uFE0F \u63A8\u9001",type:4},api:async e=>{e.post("/init",FYr),e.post("/support",UYr),e.post("/detail",qYr),e.post("/play",Ci),e.get("/test",jYr),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};var zbe=async e=>(await e.db.getObjectDefault("/t4",{}))?.list||e.config.t4?.list||[],HYr=async(e,t)=>{await e.db.push("/t4/list",t)},KYr=async e=>{await e.db.delete("/t4/list")};async function Qbe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await zbe(t.server)})}),e.put("/list",async(t,r)=>{await HYr(t.server,t.body),r.send({code:0})}),e.delete("/list",async(t,r)=>{await KYr(t.server),r.send({code:0})})}Yr();function Gbe(e,t){let c=Ee.create({baseURL:t,timeout:12e3}),l=new Map,d=new Map,f=new Map,p=new Map,h=new Map,m=new Map,y=new Map,g=new Map,v=new Map,A=new Map;function _(X,K,Z=30){if(X.size<=K)return;let Y=0;for(let ie of X.keys())if(X.delete(ie),Y++,Y>=Z)break}function E(X){return X?.body||{}}function S(X,K={}){return JSON.stringify({id:String(X||"").trim(),meta:K&&typeof K=="object"?K:{}})}function C(X){try{let K=JSON.parse(String(X||""));if(K&&typeof K=="object"&&K.id)return{id:String(K.id||"").trim(),meta:K.meta&&typeof K.meta=="object"?K.meta:{}}}catch{}return{id:String(X||"").trim(),meta:{}}}function I(X){return Array.isArray(X?.list)&&(X.list=X.list.map(K=>{let Z=K?.vod_pic||"",Y=K?.vod_remarks||"";return{...K,vod_id:S(K?.vod_id||"",{vod_pic:Z,vod_remarks:Y})}})),X}function N(X,K){let Z=Object.entries(K||{}).sort(([Y],[ie])=>Y.localeCompare(ie));return`${X}:${JSON.stringify(Z)}`}async function T(X,K,Z,Y,ie){let ue=Date.now(),he=X.get(Z);if(he&&ue-he.timestamp<Y)return he.data;if(K.has(Z))return K.get(Z);let ye=(async()=>{let q=await ie();return X.set(Z,{data:q,timestamp:Date.now()}),_(X,200),q})();K.set(Z,ye),_(K,200);try{return await ye}finally{K.get(Z)===ye&&K.delete(Z)}}async function k(X,K){try{let{data:Z}=await c.get("",{params:X});return Z||K}catch{return K}}function O(){return{}}async function P(){let X={filter:!0},K=N("home",X);return T(l,d,K,3e4,async()=>k(X,{class:[]}))}async function $(X){let K=E(X),Z={ac:"detail",t:K.id,pg:K.page||1},Y=N("category",Z);return T(f,p,Y,1e4,async()=>{let ie=await k(Z,{list:[],page:1,pagecount:1,limit:0,total:0});return I(ie)})}async function Q(X){let K=E(X),Z=C(K.id),Y={ac:"detail",ids:Z.id},ie=N("detail",Y);return T(h,m,ie,2e4,async()=>{let ue=await k(Y,{list:[]});return Array.isArray(ue?.list)&&(ue.list=ue.list.map(he=>({...he,vod_pic:Z.meta?.vod_pic||he?.vod_pic||"",vod_remarks:Z.meta?.vod_remarks||he?.vod_remarks||""}))),ue})}async function j(X){let K=E(X),Z=String(K.id||""),Y={play:Z,flag:K.flag},ie=N("play",Y),ue=await T(v,A,ie,8e3,async()=>k(Y,{}));return!ue?.url&&!ue?.urls&&Z.startsWith("http")?{url:Z}:ue}async function z(X){let Z={ac:"list",wd:E(X).wd},Y=N("search",Z);return T(y,g,Y,1e4,async()=>{let ie=await k(Z,{list:[],page:1,pagecount:1,limit:0,total:0});return I(ie)})}return{meta:{key:e,name:e,type:3,t4:!0},api:async X=>{X.post("/init",O),X.post("/home",P),X.post("/category",$),X.post("/detail",Q),X.post("/play",j),X.post("/search",z)}}}var Ybe=async e=>(await e.db.getObjectDefault("/cms",{}))?.list||e.config.cms?.list||[],VYr=async(e,t)=>{await e.db.push("/cms/list",t)},zYr=async e=>{await e.db.delete("/cms/list")};async function Wbe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await Ybe(t.server)})}),e.put("/list",async(t,r)=>{await VYr(t.server,t.body),r.send({code:0})}),e.delete("/list",async(t,r)=>{await zYr(t.server),r.send({code:0})})}Yr();var QYr=1e4,GYr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"};function Q9(e){return e?.body||{}}function dDt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function YYr(){return{class:[],filters:{}}}function G9(e=1){return{page:e,pagecount:e,limit:0,total:0,list:[]}}function fDt(){return{list:[]}}function pDt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function WYr(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function XYr(e,t){return e&&typeof e=="object"?e:t}function Xbe(e,t){let r=Ee.create({baseURL:t,timeout:QYr,headers:GYr,validateStatus:l=>l>=200&&l<400});async function n(l,d){try{let{data:f}=await r.get("",{params:l});return XYr(f,d)}catch{return d}}function i(){return{}}async function s(){return n({ac:"class"},YYr())}async function a(l){let d=Q9(l),f=dDt(d.page);if(!d.id)return G9(f);let p=await n({ac:"detail",t:d.id,pg:f},G9(f));return Array.isArray(p?.list)&&(p.list=p.list.map(h=>{let m=h?.vod_pic||h?.pic||h?.img||"",y=h?.vod_remarks||h?.remarks||h?.note||"",g=h?.vod_id||h?.id||h?.vid||"";return{...h,vod_id:pDt(g,{vod_pic:m,vod_remarks:y}),vod_pic:m,vod_remarks:y}})),p}async function o(l){let d=Q9(l);if(!d.id)return fDt();let f=WYr(d.id),p=await n({ac:"detail",ids:f.id},fDt());return Array.isArray(p?.list)&&(p.list=p.list.map(h=>({...h,vod_pic:f.meta?.vod_pic||h?.vod_pic||h?.pic||h?.img||"",vod_remarks:f.meta?.vod_remarks||h?.vod_remarks||h?.remarks||h?.note||""}))),p}async function u(l){return{parse:0,url:Q9(l).id||""}}async function c(l){let d=Q9(l),f=dDt(d.page),p=String(d.wd||"").trim();if(!p)return G9(f);let h=await n({ac:"list",wd:p,pg:f},G9(f));return Array.isArray(h?.list)&&(h.list=h.list.map(m=>{let y=m?.vod_pic||m?.pic||m?.img||"",g=m?.vod_remarks||m?.remarks||m?.note||"",v=m?.vod_id||m?.id||m?.vid||"";return{...m,vod_id:pDt(v,{vod_pic:y,vod_remarks:g}),vod_pic:y,vod_remarks:g}})),h}return{meta:{key:e,name:e,type:3,cms:!0},api:async l=>{l.post("/init",i),l.post("/home",s),l.post("/category",a),l.post("/detail",o),l.post("/play",u),l.post("/search",c)}}}Kt();var Y9=Se(require("crypto"),1),Zbe=class{constructor(){this.cache={short:new Map,medium:new Map,long:new Map},this.accessOrder={short:new Map,medium:new Map,long:new Map},this.config={short:{max:1e3,ttl:30*1e3},medium:{max:500,ttl:5*60*1e3},long:{max:200,ttl:30*60*1e3}},this.cleanupTimer=null,this.startCleanupInterval()}get(t,r="medium"){let n=this.cache[r],i=this.accessOrder[r];if(!n)return null;let s=n.get(t);return s?Date.now()>s.expiry?(n.delete(t),i?.delete(t),null):(i?.set(t,Date.now()),s.lastAccess=Date.now(),s.accessCount=(s.accessCount||0)+1,s.value):null}set(t,r,n="medium"){let i=this.cache[n],s=this.accessOrder[n];if(!i)return;let a=this.config[n];i.size>=a.max&&this.evictOldest(n),i.set(t,{value:r,expiry:Date.now()+a.ttl,type:n,setTime:Date.now(),accessCount:0,lastAccess:Date.now()}),s?.set(t,Date.now())}evictOldest(t){let r=this.cache[t],n=this.accessOrder[t],i=null,s=1/0;for(let[a]of r.entries()){let o=n?.get(a)||0;o<s&&(s=o,i=a)}i&&(r.delete(i),n?.delete(i))}generateKey(t,r={}){try{let i=Object.keys(r).sort().map(a=>`${a}=${r[a]}`),s=i.length?`${t}?${i.join("&")}`:t;return s.length>256?Y9.default.createHash("md5").update(s).digest("hex"):s}catch{return t}}clear(t=null){t?(this.cache[t]?.clear(),this.accessOrder[t]?.clear()):(Object.values(this.cache).forEach(r=>r.clear()),Object.values(this.accessOrder).forEach(r=>r.clear()))}startCleanupInterval(){this.cleanupTimer=setInterval(()=>this.cleanupExpired(),5*60*1e3),typeof this.cleanupTimer.unref=="function"&&this.cleanupTimer.unref()}cleanupExpired(){let t=Date.now();Object.entries(this.cache).forEach(([r,n])=>{let i=this.accessOrder[r];for(let[s,a]of n.entries())t>a.expiry&&(n.delete(s),i?.delete(s))})}};function JYr(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function ZYr(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}var eEe=class{constructor(t){this.config=t,this.cache=new Zbe,this.queue=[],this.activeCount=0,this.maxConcurrent=t.maxConcurrent||6,this.abortControllers=new Map,this.inflightGets=new Map}async schedule(t,r=null){return this.activeCount<this.maxConcurrent?(this.activeCount++,this.execute(t,r)):new Promise((n,i)=>{this.queue.push({fn:t,resolve:n,reject:i,requestId:r})})}async execute(t,r){try{return await t()}catch(n){throw n}finally{this.activeCount--,r&&this.abortControllers.delete(r),this.processNext()}}processNext(){if(this.queue.length>0&&this.activeCount<this.maxConcurrent){let{fn:t,resolve:r,reject:n,requestId:i}=this.queue.shift();this.activeCount++,this.execute(t,i).then(r).catch(n)}}async retryRequest(t,r=3,n=1e3){let i;for(let s=0;s<=r;s++)try{let a=`req_${Y9.default.randomUUID()}`,o=new AbortController;return this.abortControllers.set(a,o),await this.schedule(async()=>{let u=this.config.timeout||1e4,c=null;try{return await Promise.race([t(o.signal),new Promise((l,d)=>{c=setTimeout(()=>{o.abort(),d(new Error(`\u8BF7\u6C42\u8D85\u65F6 (${u}ms)`))},u)})])}finally{c&&clearTimeout(c)}},a)}catch(a){if(i=a,s===r||!this.shouldRetry(a))break;await this.sleep(n*Math.pow(2,s))}throw i}shouldRetry(t){if(!t.response)return!0;let r=t.response.status;return[408,429,500,502,503,504].includes(r)}getCachedResponse(t,r="medium"){let i=[r,...["short","medium","long"].filter(s=>s!==r)];for(let s of i){let a=this.cache.get(t,s);if(a)return a}return null}async cachedGet(t,r={},n="medium"){let i=this.cache.generateKey(t,r.params),s=this.getCachedResponse(i,n);if(s)return s;let a=`${n}:${i}`;if(this.inflightGets.has(a))return this.inflightGets.get(a);let o=(async()=>{try{let u=await this.retryRequest(c=>_e.get(t,{...r,signal:c}),this.config.retryCount||2);if(u.data){let l=JSON.stringify(u.data).length>1024*100?"long":n;this.cache.set(i,u,l),l!==n&&this.cache.set(i,u,n)}return u}catch(u){let c=this.getCachedResponse(i,n);if(c&&!u.response)return c;throw u}finally{this.inflightGets.delete(a)}})();return this.inflightGets.set(a,o),o}async post(t,r,n={}){return this.retryRequest(i=>_e.post(t,r,{...n,signal:i}),this.config.retryCount||1)}abortRequest(t){let r=this.abortControllers.get(t);r&&(r.abort(),this.abortControllers.delete(t))}sleep(t){return new Promise(r=>setTimeout(r,t))}},tEe=class{constructor(t,r,n,i){this.config=t,this.requestManager=r,this.getHeaderProvider=n,this.urlBuilder=i,this.enablePlaybackReport=t.enablePlaybackReport!==!1,this.playSessions=new Map,this.heartbeatTimer=null,this.maxSessionDuration=7200*1e3,this.maxConcurrentReports=5,this.reportQueue=[]}startHeartbeat(){this.heartbeatTimer||!this.enablePlaybackReport||(this.heartbeatTimer=setInterval(()=>this.tick(),1e4))}stopHeartbeat(){this.heartbeatTimer&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null)}async tick(){if(!this.enablePlaybackReport||this.playSessions.size===0){this.playSessions.size===0&&this.stopHeartbeat();return}let t=Date.now(),r=[];for(let[n,i]of this.playSessions.entries()){if(t-i.startTime>this.maxSessionDuration){this.playSessions.delete(n);continue}if(!i.isPaused&&t-i.lastReportTime>=3e4){let s=t-i.startTime-i.totalPausedDuration,a=i.initialPositionTicks+Math.floor(s/1e3)*1e7;if(i.positionTicks=a,i.lastReportTime=t,r.push(this.recordPlaybackProgress(n,a,!1)),r.length>=this.maxConcurrentReports)break}}r.length>0&&await Promise.allSettled(r)}async recordPlaybackStart(t,r,n=0){if(!this.enablePlaybackReport)return null;try{let i=await this.getHeaderProvider(),s=`js_${Date.now()}_${Math.floor(Math.random()*1e4)}`,a=n;if(!a)try{let c=this.urlBuilder(`/Users/${this.config.userId}/Items/${t}`),l=await this.requestManager.cachedGet(c,{headers:i,params:{Fields:"UserData"}},"short");l.data?.UserData&&(a=l.data.UserData.PlaybackPositionTicks||0)}catch(c){console.debug("\u83B7\u53D6\u7528\u6237\u6570\u636E\u5931\u8D25:",c.message)}let o={ItemId:t,MediaSourceId:r.Id||r.mediaSourceId,CanSeek:!0,IsPaused:!1,IsMuted:!1,PositionTicks:a,PlayMethod:"DirectStream",PlaySessionId:s,LiveStreamId:null,AudioStreamIndex:1,SubtitleStreamIndex:-1,VolumeLevel:100,PlaybackStartTimeTicks:Math.floor(Date.now()*1e4)},u=await this.requestManager.post(this.urlBuilder("/Sessions/Playing"),o,{headers:i,timeout:5e3}).catch(()=>null);if(u&&(u.status===200||u.status===204))return this.playSessions.set(s,{itemId:t,mediaSource:r,startTime:Date.now(),lastReportTime:Date.now(),initialPositionTicks:a,positionTicks:a,totalPausedDuration:0,isPaused:!1,lastPauseTime:0}),this.startHeartbeat(),s}catch(i){console.debug("\u64AD\u653E\u5F00\u59CB\u8BB0\u5F55\u5931\u8D25:",i.message)}return null}async recordPlaybackProgress(t,r,n=!1){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let i=this.playSessions.get(t),s=await this.getHeaderProvider();i.isPaused!==n&&(i.isPaused=n,n?i.lastPauseTime=Date.now():i.lastPauseTime>0&&(i.totalPausedDuration+=Date.now()-i.lastPauseTime,i.lastPauseTime=0)),r!==void 0&&(i.positionTicks=r);let a={ItemId:i.itemId,MediaSourceId:i.mediaSource.Id||i.mediaSource.mediaSourceId,PositionTicks:i.positionTicks,IsPaused:n,PlaySessionId:t,EventName:n?"pause":"timeupdate"},o=await this.requestManager.post(this.urlBuilder("/Sessions/Playing/Progress"),a,{headers:s,timeout:5e3}).catch(()=>null);if(o&&(o.status===200||o.status===204))return i.lastReportTime=Date.now(),!0}catch(i){console.debug("\u64AD\u653E\u8FDB\u5EA6\u8BB0\u5F55\u5931\u8D25:",i.message)}return!1}async recordPlaybackStop(t,r=null){if(!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t),i=await this.getHeaderProvider(),s;if(r!==null)s=r;else if(n.positionTicks!==void 0)s=n.positionTicks;else{let u=Date.now(),c=u-n.startTime;n.isPaused&&n.lastPauseTime>0&&(n.totalPausedDuration+=u-n.lastPauseTime),c-=n.totalPausedDuration;let l=Math.floor(c/1e3);s=n.initialPositionTicks+l*1e7}let a={ItemId:n.itemId,MediaSourceId:n.mediaSource.Id||n.mediaSource.mediaSourceId,PositionTicks:s,PlaySessionId:t},o=await this.requestManager.post(this.urlBuilder("/Sessions/Playing/Stopped"),a,{headers:i,timeout:5e3}).catch(()=>null);return this.playSessions.delete(t),this.playSessions.size===0&&this.stopHeartbeat(),o&&(o.status===200||o.status===204)}catch(n){this.playSessions.delete(t),this.playSessions.size===0&&this.stopHeartbeat(),console.debug("\u64AD\u653E\u505C\u6B62\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async recordPlaybackPause(t,r){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t);return n.isPaused=!0,n.lastPauseTime=Date.now(),r!==void 0&&(n.positionTicks=r),await this.recordPlaybackProgress(t,r,!0)}catch(n){console.debug("\u64AD\u653E\u6682\u505C\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async recordPlaybackUnpause(t,r){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t);return n.isPaused&&n.lastPauseTime>0&&(n.totalPausedDuration+=Date.now()-n.lastPauseTime),n.isPaused=!1,n.lastPauseTime=0,r!==void 0&&(n.positionTicks=r),await this.recordPlaybackProgress(t,r,!1)}catch(n){console.debug("\u64AD\u653E\u6062\u590D\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async cleanupAllSessions(){let t=[];for(let r of this.playSessions.keys())t.push(this.recordPlaybackStop(r));return Promise.allSettled(t)}setEnablePlaybackReport(t){this.enablePlaybackReport=t,t||this.cleanupAllSessions()}getSession(t){return this.playSessions.get(t)}},Jbe=(e,t,r,n=null,i=null)=>{let s=new URLSearchParams({UserId:i||e.userId,StartTimeTicks:"0",IsPlayback:"true",AutoOpenLiveStream:"true",MaxStreamingBitrate:"7000000","X-Emby-Client":e.client,"X-Emby-Device-Name":e.deviceName,"X-Emby-Device-Id":e.deviceId,"X-Emby-Client-Version":e.clientVersion,"X-Emby-Token":e.token,reqformat:"json"});return n&&s.set("MediaSourceId",n),`${t(`/Items/${r}/PlaybackInfo`)}?${s.toString()}`},eWr=(e,t)=>t.DirectStreamUrl?t.DirectStreamUrl.startsWith("http")?t.DirectStreamUrl:e.server+t.DirectStreamUrl:t.Path&&t.Path.startsWith("http")?t.Path:e.isJellyfin?`${e.server}/Videos/${t.Id}/stream?static=true&api_key=${e.token}`:`${e.server}/emby/videos/${t.Id}/original?api_key=${e.token}&Static=true`;function hDt(e){let t={id:e.id,name:e.name||`Emby ${e.id.slice(0,8)}`,server:(e.server||"").replace(/\/$/,""),username:e.username||"",password:e.password||"",token:e.token||"",userId:e.userId||"",deviceId:e.deviceId||Y9.default.randomUUID(),deviceName:e.deviceName||"iPhone",client:e.client||"SenPlayer",clientVersion:e.clientVersion||"5.6.3",enablePlaybackReport:e.enablePlaybackReport!==!1,enabled:e.enabled!==!1,timeout:e.timeout||1e4,retryCount:e.retryCount||2,cacheViews:e.cacheViews!==!1,maxConcurrent:e.maxConcurrent||6,isJellyfin:e.isJellyfin||!1,serverType:e.isJellyfin?"jellyfin":"emby"},r=`/config/embyInstances/${t.id}`;function n(Y){let ie=t.isJellyfin?"":"/emby";return`${t.server}${ie}${Y}`}let i={"User-Agent":`${t.client}/${t.clientVersion}`,"X-Emby-Client":t.client,"X-Emby-Device-Name":t.deviceName,"X-Emby-Client-Version":t.clientVersion,"X-Emby-Device-Id":t.deviceId,...t.isJellyfin?{"X-Jellyfin-Client":t.client,"X-Jellyfin-Client-Version":t.clientVersion,"X-Jellyfin-Device-Id":t.deviceId,"X-Jellyfin-Device-Name":t.deviceName}:{}};async function s(){let Y={...i};if(t.token){let ie=`MediaBrowser Token="${t.token}", UserId="${t.userId}", Client="${t.client}", Device="${t.deviceName}", DeviceId="${t.deviceId}", Version="${t.clientVersion}"`;Y["X-Emby-Authorization"]=ie,Y["X-Emby-Token"]=t.token,t.isJellyfin&&(Y["X-Jellyfin-Token"]=t.token,Y["X-Jellyfin-Authorization"]=ie.replace("MediaBrowser","MediaBrowser"))}return Y}let a=new eEe(t),o=new tEe(t,a,s,n),u=["\u64AD\u653E\u5217\u8868","\u76F8\u673A","Playlists","Collections","Trailers","\u76F4\u64AD"],c=90,l=400,d=30,f=50,p=200,h=3e3;function m(Y){let ie=Number.parseInt(Y?.IndexNumber,10);return Number.isNaN(ie)?Number.MAX_SAFE_INTEGER:ie}function y(Y){if(!Y?.IndexNumber)return"";let ie=Y.Name||`\u7B2C${Y.IndexNumber||0}\u96C6`,ue=Y.MediaSources||[];if(ue.length>1){let ye=ue.map((q,B)=>{let ae=q.Name||`\u7248\u672C${B+1}`,M=`${Y.Id}|${q.Id}`;return`${ae}$${M}`});return ye.length>0?`${ie}@@${ye.join("#")}`:""}if(ue.length===1){let ye=ue[0],q=ye.Name||ie,B=`${Y.Id}|${ye.Id}`;return`${q}$${B}`}let he=Jbe(t,n,Y.Id,null,t.userId);return`${ie}$${he}`}function g(Y){if(!Array.isArray(Y)||Y.length===0)return"";let ie=[],ue=[...Y].sort((he,ye)=>m(he)-m(ye));for(let he of ue){let ye=y(he);ye&&ie.push(ye)}return ie.join("#")}function v(Y){let ie=Number.parseInt(Y,10);return Number.isNaN(ie)?Number.MAX_SAFE_INTEGER:ie}function A(Y){let ie=v(Y?.ParentIndexNumber),ue=Y?.SeasonName||(ie!==Number.MAX_SAFE_INTEGER?`\u7B2C${ie}\u5B63`:"\u7279\u522B\u7BC7"),he=Y?.SeasonId||"";return{groupKey:he||`idx_${ie}_${ue}`,seasonId:he,seasonIndex:ie,seasonName:ue}}async function _(Y,ie,ue,he="medium"){let ye=[],q=0,B=Number.MAX_SAFE_INTEGER;for(;q<B&&ye.length<h;){let ae=await a.cachedGet(Y,{headers:ue,params:{...ie,Limit:p,StartIndex:q}},he),M=ae.data?.Items||[],F=Number.parseInt(ae.data?.TotalRecordCount,10);if(Number.isNaN(F)||(B=F),M.length===0||(ye.push(...M),M.length<p))break;q+=M.length}return ye.slice(0,h)}async function E(Y,ie){let ue="Id,Name,IndexNumber,ParentIndexNumber,SeasonId,SeasonName,MediaSources",he=n(`/Shows/${Y}/Episodes`);try{let q=await _(he,{UserId:t.userId,Fields:ue,SortBy:"ParentIndexNumber,IndexNumber",SortOrder:"Ascending"},ie,"medium");if(q.length>0)return q}catch(q){console.debug("\u6309\u5267\u96C6\u63A5\u53E3\u83B7\u53D6\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7528\u6237\u63A5\u53E3:",q.message)}let ye=n(`/Users/${t.userId}/Items`);return _(ye,{ParentId:Y,IncludeItemTypes:"Episode",Recursive:!0,Fields:ue,SortBy:"ParentIndexNumber,IndexNumber",SortOrder:"Ascending"},ie,"medium")}function S(){return!(!t.server||!t.token&&!t.username)}async function C(Y){if(!t.username||!t.server)return{success:!1,reason:"\u7F3A\u5C11\u767B\u5F55\u51ED\u8BC1"};let ie=t.isJellyfin?"/Users/AuthenticateByName":"/emby/Users/AuthenticateByName",ue=`${t.server}${ie}`,he={Password:t.password||"",Pw:t.password||"",Username:t.username},ye=`MediaBrowser Token="", UserId="", Client="${t.client}", Device="${t.deviceName}", DeviceId="${t.deviceId}", Version="${t.clientVersion}"`,q={Host:t.server.replace(/^https?:\/\//,"").replace(/\/$/,""),"Content-Type":"application/json","X-Emby-Authorization":ye,Connection:"keep-alive",Accept:"*/*","User-Agent":`${t.client}/${t.clientVersion}`,"Accept-Language":"zh-CN,zh-Hans;q=0.9","Accept-Encoding":"gzip, deflate",...t.isJellyfin?{"X-Jellyfin-Authorization":ye,"X-Jellyfin-Client":t.client,"X-Jellyfin-Device-Name":t.deviceName,"X-Jellyfin-Device-Id":t.deviceId,"X-Jellyfin-Client-Version":t.clientVersion}:{}};try{let B=await _e.post(ue,he,{headers:q,timeout:5e3});if(B.data?.AccessToken)return t.token=B.data.AccessToken,t.userId=B.data.User.Id,Y?.server?.db&&await Y.server.db.push(r,{token:t.token,userId:t.userId,deviceId:t.deviceId,deviceName:t.deviceName,client:t.client,clientVersion:t.clientVersion}),{success:!0,token:t.token}}catch(B){console.debug("SenPlayer\u683C\u5F0F\u767B\u5F55\u5931\u8D25:",B.message);try{let M=`${t.server}/emby/Users/AuthenticateByName`,F={"Content-Type":"application/json","X-Emby-Client":t.client,"X-Emby-Device-Name":t.deviceName,"X-Emby-Device-Id":t.deviceId,"X-Emby-Client-Version":t.clientVersion,"User-Agent":"Mozilla/5.0"},V=await _e.post(M,he,{headers:F,timeout:5e3});if(V.data?.AccessToken)return t.token=V.data.AccessToken,t.userId=V.data.User.Id,Y?.server?.db&&await Y.server.db.push(r,{token:t.token,userId:t.userId,deviceId:t.deviceId,deviceName:t.deviceName,client:t.client,clientVersion:t.clientVersion}),{success:!0,token:t.token}}catch(ae){console.debug("Emby\u6807\u51C6\u683C\u5F0F\u767B\u5F55\u5931\u8D25:",ae.message)}}return{success:!1,reason:"\u767B\u5F55\u5931\u8D25"}}async function I(Y){if(t.token&&t.userId)try{let ie=await s(),ue=n(`/Users/${t.userId}`);return await a.cachedGet(ue,{headers:ie},"short"),!0}catch(ie){ie.response?.status}return(await C(Y)).success}async function N(){try{let Y=await s();return!!(await a.cachedGet(n("/System/Info"),{headers:Y},"short")).data}catch{return!1}}function T(Y,ie,ue={}){if(!ie)return"";let{maxWidth:he=l,quality:ye=c,imageType:q="Primary"}=ue,B=`/Items/${Y}/Images/${q}`,ae=`?maxWidth=${he}&tag=${ie}&quality=${ye}`;return t.isJellyfin?`${t.server}${B}${ae}`:`${t.server}/emby${B}${ae}`}function k(Y){let ie=String(Y?.headers?.["x-forwarded-proto"]||Y?.protocol||"http").split(",")[0].trim()||"http",ue=String(Y?.headers?.["x-forwarded-host"]||Y?.headers?.host||"").split(",")[0].trim();return ue?`${ie}://${ue}`:""}function O(Y,ie,ue={},he=null){if(!ie)return"";let{maxWidth:ye=l,quality:q=c,imageType:B="Primary"}=ue,ae=k(he);if(!ae)return T(Y,ie,ue);let M=new URL(`${ae}/spider/emby_${t.id}/3/proxy/image`);return M.searchParams.set("itemId",String(Y||"")),M.searchParams.set("tag",String(ie||"")),M.searchParams.set("imageType",String(B||"Primary")),M.searchParams.set("maxWidth",String(ye)),M.searchParams.set("quality",String(q)),M.toString()}async function P(Y,ie){if(!await I(Y))return ie.code(401).send("\u767B\u5F55\u5931\u8D25");let ue=String(Y?.query?.itemId||"").trim(),he=String(Y?.query?.tag||"").trim(),ye=String(Y?.query?.imageType||"Primary").trim()||"Primary",q=Math.max(1,Number.parseInt(Y?.query?.maxWidth,10)||l),B=Math.max(1,Number.parseInt(Y?.query?.quality,10)||c);if(!ue||!he)return ie.code(400).send("missing image params");try{let ae=await s(),M=T(ue,he,{maxWidth:q,quality:B,imageType:ye}),F=await _e.get(M,{headers:{...ae,Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8"},responseType:"stream",timeout:t.timeout||1e4,validateStatus:()=>!0});return(F.status||500)>=400||!F.data?ie.code(F.status||502).send("fetch image failed"):(F.headers["content-type"]&&ie.header("Content-Type",F.headers["content-type"]),F.headers["content-length"]&&ie.header("Content-Length",F.headers["content-length"]),ie.header("Access-Control-Allow-Origin","*"),ie.header("Cache-Control","public, max-age=300"),ie.send(F.data))}catch{return ie.code(502).send("proxy image error")}}async function $(Y,ie){try{if(!S())return{success:!1,error:"\u914D\u7F6E\u4E0D\u5B8C\u6574"};if(Y?.server?.db){let ue=await Y.server.db.getObjectDefault(r,{});ue?.deviceId&&Object.assign(t,ue)}return(!t.token||!t.userId)&&!await I(Y)?{success:!1,error:"\u767B\u5F55\u5931\u8D25"}:{success:!0,name:t.name,server:t.server,serverType:t.serverType}}catch(ue){return{success:!1,error:ue.message}}}async function Q(Y,ie){if(!await I(Y))return{class:[],error:"\u767B\u5F55\u5931\u8D25"};try{let ue=await s(),he=n(`/Users/${t.userId}/Views`),ye=t.cacheViews?"long":"short",B=(await a.cachedGet(he,{headers:ue},ye)).data.Items||[],ae=[],M={};return B.filter(F=>!u.some(V=>F.Name.includes(V))).forEach(F=>{let V=F.Id.toString();ae.push({type_id:V,type_name:F.Name,type_image:O(F.Id,F.ImageTags?.Primary,{maxWidth:200,imageType:"Thumb"},Y)});let H=[{n:"\u6700\u8FD1\u6DFB\u52A0",v:"dateadded"},{n:"\u6700\u8FD1\u53D1\u884C",v:"premieredate_desc"},{n:"\u6700\u8FD1\u64AD\u653E",v:"dateplayed"},{n:"\u5E74\u4EFD\u65B0\u2192\u65E7",v:"year_desc"},{n:"\u5E74\u4EFD\u65E7\u2192\u65B0",v:"year_asc"},{n:"\u8BC4\u5206\u6700\u9AD8",v:"rating"},{n:"\u540D\u79F0A\u2192Z",v:"name"}],G=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"}];for(let ee=2025;ee>=2010;ee--)G.push({n:String(ee),v:String(ee)});let J=[{n:"\u5168\u90E8",v:""},..."ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("").map(ee=>({n:ee,v:ee}))];M[V]=[{key:"tid",name:"\u6392\u5E8F",init:"dateadded",value:H},{key:"year",name:"\u5E74\u4EFD",init:"",value:G},{key:"letter",name:"\u5B57\u6BCD",init:"",value:J}]}),{class:ae,filters:M}}catch{return{class:[],error:"\u83B7\u53D6\u9996\u9875\u5931\u8D25"}}}async function j(Y,ie){let ue=Y.body.id,he=parseInt(Y.body.page,10)||1;he<1&&(he=1);let ye=d,q=(he-1)*ye;if(!await I(Y))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let B=await s(),ae=n(`/Users/${t.userId}/Items`),M=Y.body.filters||{},F=M.tid||"dateadded",V=M.year||"",H=M.letter||"",G={dateadded:{sortBy:"DateCreated,SortName",sortOrder:"Descending"},premieredate_desc:{sortBy:"PremiereDate,SortName",sortOrder:"Descending"},dateplayed:{sortBy:"DatePlayed,SortName",sortOrder:"Descending"},year_asc:{sortBy:"ProductionYear,SortName",sortOrder:"Ascending"},year_desc:{sortBy:"ProductionYear,SortName",sortOrder:"Descending"},rating:{sortBy:"CommunityRating,SortName",sortOrder:"Descending"},name:{sortBy:"SortName",sortOrder:"Ascending"}},{sortBy:J,sortOrder:ee}=G[F]||G.dateadded,te={SortBy:J,SortOrder:ee,ParentId:ue,Recursive:"true",Limit:ye,StartIndex:q,Fields:"ProductionYear,Status,DateCreated,CommunityRating,PremiereDate",IncludeItemTypes:"Movie,Series",ImageTypeLimit:1,EnableImageTypes:"Primary,Backdrop",EnableUserData:"true"};if(V){let $e=parseInt(V,10);isNaN($e)||(te.Years=$e.toString())}H&&(te.NameStartsWith=H);let re=await a.cachedGet(ae,{headers:B,params:te},"medium"),ce=re.data.Items||[],de=re.data.TotalRecordCount||0,pe=ce.map($e=>{let We=$e.CommunityRating?`\u2B50${$e.CommunityRating.toFixed(1)}`:"",Ve=$e.ProductionYear||"",Te=[We,Ve].filter(Boolean).join(" ");return{vod_id:JYr($e.Id,{vod_pic:O($e.Id,$e.ImageTags?.Primary,{},Y),vod_remarks:Te}),vod_name:$e.Name,vod_pic:O($e.Id,$e.ImageTags?.Primary,{},Y),vod_remarks:Te,vod_year:Ve,vod_score:$e.CommunityRating||0}}),Ce=Math.ceil(de/ye);return{list:pe,page:he,pagecount:Ce,limit:ye,total:de}}catch{return{list:[],error:"\u83B7\u53D6\u5206\u7C7B\u5931\u8D25"}}}async function z(Y,ie){let ue=ZYr(Y.body.id),he=ue.id;if(!await I(Y))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let ye=await s(),q=n(`/Users/${t.userId}/Items/${he}`),ae=(await a.cachedGet(q,{headers:ye,params:{Fields:"MediaSources,Overview,Genres,ProductionYear,OfficialRating,RunTimeTicks,People,Studios,Taglines,Type"}},"long")).data,M={vod_id:ae.Id,vod_name:ae.Name,vod_pic:ue.meta?.vod_pic||O(ae.Id,ae.ImageTags?.Primary,{},Y),vod_type:ae.Genres?.join(",")||"",vod_year:ae.ProductionYear||"",vod_area:ae.ProductionLocation||"",vod_actor:ae.People?.filter(H=>H.Type==="Actor").map(H=>H.Name).join(",")||"",vod_director:ae.People?.filter(H=>H.Type==="Director").map(H=>H.Name).join(",")||"",vod_content:(ae.Overview||"").replace(/\r\n/g," "),vod_remarks:ue.meta?.vod_remarks||ae.OfficialRating||"",vod_play_from:"",vod_play_url:""},F=[],V=[];if(ae.Type==="Series")try{let H=[];try{let re=n(`/Shows/${he}/Seasons`);H=(await a.cachedGet(re,{headers:ye,params:{UserId:t.userId,Fields:"Id,Name,IndexNumber",EnableTotalRecordCount:!1}},"long")).data?.Items||[]}catch(re){console.debug("\u83B7\u53D6\u5B63\u5217\u8868\u5931\u8D25\uFF0C\u7EE7\u7EED\u5C1D\u8BD5\u6279\u91CF\u83B7\u53D6\u5267\u96C6:",re.message)}let G=await E(he,ye),J=new Map;for(let re of G){let ce=A(re);J.has(ce.groupKey)||J.set(ce.groupKey,{...ce,episodes:[]}),J.get(ce.groupKey).episodes.push(re)}let ee=[...H].sort((re,ce)=>v(re?.IndexNumber)-v(ce?.IndexNumber));for(let re of ee){let ce=re?.Id||"",de=ce?J.get(ce):null;if(!de||de.episodes.length===0)continue;let pe=g(de.episodes);pe&&(F.push(re.Name||de.seasonName||`Season ${re.IndexNumber||ce}`),V.push(pe),J.delete(ce))}let te=[...J.values()].sort((re,ce)=>re.seasonIndex!==ce.seasonIndex?re.seasonIndex-ce.seasonIndex:(re.seasonName||"").localeCompare(ce.seasonName||""));for(let re of te){if(!re.episodes||re.episodes.length===0)continue;let ce=g(re.episodes);ce&&(F.push(re.seasonName||t.name),V.push(ce))}}catch(H){console.debug("\u83B7\u53D6\u5267\u96C6\u4FE1\u606F\u5931\u8D25:",H.message)}else{let H=ae.MediaSources||[];if(H.length>0)H.forEach(G=>{let J=G.Name||"\u9ED8\u8BA4\u7EBF\u8DEF";F.push(J);let ee=Jbe(t,n,he,G.Id,t.userId);V.push(`${ae.Name}$${ee}`)});else{F.push(t.name);let G=Jbe(t,n,he,null,t.userId);V.push(`${ae.Name}$${G}`)}}return F.length===0||V.length===0?{list:[],error:"\u65E0\u6CD5\u83B7\u53D6\u64AD\u653E\u5217\u8868"}:(M.vod_play_from=F.join("$$$"),M.vod_play_url=V.join("$$$"),{list:[M]})}catch(ye){return console.debug("\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25:",ye.message),{list:[],error:"\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25"}}}async function X(Y,ie){let ue=Y.body.wd?.trim();if(!ue)return{list:[]};if(!await I(Y))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let he=await s(),ye=n(`/Users/${t.userId}/Items`),q={SearchTerm:ue,IncludeItemTypes:"Movie,Series",Recursive:"true",Limit:f,Fields:"ProductionYear,Type",EnableImageTypes:"Primary",SortBy:"SortName",SortOrder:"Ascending"};return{list:((await a.cachedGet(ye,{headers:he,params:q},"short")).data.Items||[]).map(F=>({vod_id:F.Id,vod_name:F.Name,vod_pic:O(F.Id,F.ImageTags?.Primary,{},Y),vod_remarks:F.Type==="Series"?"\u5267\u96C6":"\u7535\u5F71",vod_year:F.ProductionYear||""}))}}catch{return{list:[],error:"\u641C\u7D22\u5931\u8D25"}}}async function K(Y,ie){let ue=String(Y.body?.id||"");if(!ue)return{parse:1,url:"",header:i};if(ue.endsWith("_more")){let q=ue.replace("_more","");return{parse:0,url:`${t.server}/web/index.html#!/details?id=${q}&serverId=${t.server}`,header:i}}let he,ye;if(ue.includes("|")){let q=ue.split("|");he=q[0],ye=q[1]}else if(ue.includes("/PlaybackInfo?"))try{let q=new URL(ue),B=q.pathname.split("/");he=B[B.length-2],ye=q.searchParams.get("MediaSourceId")}catch{return{parse:1,url:ue,header:i}}else return{parse:1,url:ue,header:i};try{let q=await s(),B={DeviceProfile:{MaxStreamingBitrate:14e7,DirectPlayProfiles:[{Container:"mp4,mkv,m4v",Type:"Video"}]}},ae=n(`/Items/${he}/PlaybackInfo`),M={UserId:t.userId,MaxStreamingBitrate:14e7};ye&&(M.MediaSourceId=ye);let V=(await _e.post(ae,B,{headers:{...q,"Content-Type":"application/json"},params:M,timeout:5e3})).data?.MediaSources||[];if(V.length===0)return{error:"\u65E0\u53EF\u7528\u5A92\u4F53\u6E90"};let H=V.find(te=>te.Id===ye)||V[0],G=null;t.enablePlaybackReport&&o.recordPlaybackStart(he,H).then(te=>{G=te}).catch(()=>{});let J=Z(H,G);return J||{parse:0,url:eWr(t,H),header:i,extra:{mediaSourceId:H.Id,playbackSessionId:G}}}catch(q){return console.debug("\u64AD\u653E\u8BF7\u6C42\u5931\u8D25:",q.message),{parse:0,url:t.isJellyfin?`${t.server}/Videos/${he}/stream?api_key=${t.token}`:`${t.server}/emby/videos/${he}/stream?api_key=${t.token}`,header:i}}}function Z(Y,ie){return Y.DirectStreamUrl?{parse:0,url:Y.DirectStreamUrl.startsWith("http")?Y.DirectStreamUrl:t.server+Y.DirectStreamUrl,header:{...i,Referer:`${t.server}/`,...ie&&{"X-Playback-Session-Id":ie}},extra:{source:Y.Name||"\u9ED8\u8BA4",bitrate:Y.Bitrate?`${(Y.Bitrate/1e6).toFixed(1)}M`:"",mediaSourceId:Y.Id,playbackSessionId:ie}}:Y.Path&&Y.Path.startsWith("http")?{parse:0,url:Y.Path,header:i,extra:{mediaSourceId:Y.Id,playbackSessionId:ie}}:null}return{meta:{key:`emby_${t.id}`,name:`${t.isJellyfin?"Jellyfin":"Emby"} ${t.name}`,type:3,version:"0.0.3"},api:async Y=>{Y.get("/proxy/image",P),Y.post("/init",$),Y.post("/home",Q),Y.post("/category",j),Y.post("/detail",z),Y.post("/play",K),Y.post("/search",X)}}}Kt();var rEe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",mDt=3e4,tWr=1e4,rWr=new Set(["desktop.ini","thumbs.db","readme.md"]),nWr=/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|iso)$/i,iWr=/\.(srt|ass|ssa|vtt|sub)$/i,sWr="https://img.icons8.com/color/48/folder-invoices.png",aWr="";function oWr(e="",t=""){let r=String(e),n=String(t),i=r.match(/(\d+|\D+)/g)||[],s=n.match(/(\d+|\D+)/g)||[],a=Math.min(i.length,s.length);for(let o=0;o<a;o++){let u=i[o],c=s[o],l=/^\d+$/.test(u),d=/^\d+$/.test(c);if(l&&d){let p=Number(u)-Number(c);if(p!==0)return p;continue}let f=u.localeCompare(c);if(f!==0)return f}return i.length-s.length||r.localeCompare(n)}function uWr(){try{if(typeof Intl<"u"&&Intl&&typeof Intl.Collator=="function"){let e=new Intl.Collator("zh-Hans-CN",{numeric:!0,sensitivity:"base"});return(t,r)=>e.compare(t,r)}}catch{}return oWr}var gDt=uWr();function yDt(e=""){return e.replace(/\.[^/.]+$/,"")}function W9(e=""){try{return decodeURIComponent(e)}catch{return e}}function _Dt(e=""){let r=String(e).trim().replace(/[?#].*$/,"").replace(/\/+$/,"").split("/").filter(Boolean);return r.length>0?r[r.length-1]:""}function cWr(e="",t=""){let r=W9(String(e).trim()),n=W9(String(t).trim()),i=_Dt(r);if(i)return i;let s=_Dt(n);return s||r||n||"\u672A\u77E5\u89C6\u9891"}function ADt(e){let t=String(e.id||"unknown"),r=(e.server||"").replace(/\/$/,"");r=r.replace(/:443$/,"").replace(/(:443)\//,"/"),r=r.replace(/^http:\/\/([^:\/]+):80$/,"http://$1"),r=r.replace(/^http:\/\/([^:\/]+):80\//,"http://$1/");let n={id:t,name:e.name||`Alist ${t.slice(0,8)}`,server:r,username:e.username||"",password:e.password||"",token:e.token||"",enabled:e.enabled!==!1},i=n.server,s=null;function a(T,k=""){return JSON.stringify({c:n.id,p:T||"",n:k})}function o(T){try{return JSON.parse(T)}catch{return{c:n.id,p:T||"/",n:""}}}function u(){let T={"Content-Type":"application/json","User-Agent":rEe};return n.token&&(T.Authorization=n.token),T}async function c(){if(!n.username)return null;if(s)return s;s=(async()=>{try{let T=await _e.post(`${i}/api/auth/login`,{username:n.username,password:n.password||""},{timeout:mDt});if(T.data?.code===200&&T.data?.data?.token)return n.token=T.data.data.token,n.token;console.error(`[Alist\u767B\u5F55] \u767B\u5F55\u5931\u8D25: ${n.name}, \u54CD\u5E94\u7801: ${T.data?.code}`)}catch(T){console.error(`[Alist\u767B\u5F55] \u767B\u5F55\u5F02\u5E38: ${n.name}, \u9519\u8BEF: ${T.message}`)}return null})();try{return await s}finally{s=null}}function l(T,k){let O=T?.data?.code||k?.response?.status,P=String(T?.data?.message||k?.response?.data?.message||"").toLowerCase();return O===401||O===403||P.includes("token")||P.includes("unauthorized")}async function d(T,k){let O=()=>_e.post(`${i}${T}`,k,{headers:u(),timeout:mDt});try{let P=await O();return l(P,null)&&n.username&&await c()?await O():P}catch(P){if(n.username&&l(null,P)&&await c())return await O();throw P}}async function f(){return n.token?!0:n.username?!!await c():!0}async function p(T,k=1,O=1e3){try{let P=await d("/api/fs/list",{path:T||"/",password:"",page:k,per_page:O,refresh:!1});if(P.data?.code===200)return P.data.data?.content||[];console.error(`[Alist\u5217\u8868] \u5931\u8D25: ${T}, \u54CD\u5E94\u7801: ${P.data?.code}, \u6D88\u606F: ${P.data?.message}`)}catch(P){console.error(`[Alist\u5217\u8868] \u5F02\u5E38: ${T}, \u9519\u8BEF: ${P.message}`)}return[]}async function h(T){try{let k=await d("/api/fs/get",{path:T||"/",password:""});if(k.data?.code===200)return k.data.data;console.error(`[Alist\u6587\u4EF6] \u5931\u8D25: ${T}, \u54CD\u5E94\u7801: ${k.data?.code}, \u6D88\u606F: ${k.data?.message}`)}catch(k){console.error(`[Alist\u6587\u4EF6] \u5F02\u5E38: ${T}, \u9519\u8BEF: ${k.message}`)}return null}function m(T){if(!T)return"";let P=(T.startsWith("/")?T:`/${T}`).split("/").map($=>$===""?"":encodeURIComponent($).replace(/%2F/g,"/")).join("/");return`${i}/d${P}`}function y(T){return!!T&&nWr.test(T)}function g(T){return!!T&&iWr.test(T)}function v(T){if(!T||T===0)return"0B";let k=1024,O=["B","KB","MB","GB","TB"],P=Math.floor(Math.log(T)/Math.log(k));return parseFloat((T/Math.pow(k,P)).toFixed(2))+O[P]}async function A(T,k){try{if(!n.server)return{success:!1,error:"\u670D\u52A1\u5668\u5730\u5740\u672A\u914D\u7F6E"};if(n.username&&!n.token&&!await f())return{success:!1,error:"\u767B\u5F55\u5931\u8D25"};let O=await d("/api/fs/list",{path:"/",password:"",page:1,per_page:1});return O.data?.code!==200?{success:!1,error:O.data?.message||"\u8FDE\u63A5\u6821\u9A8C\u5931\u8D25",message:`\u8FDE\u63A5\u5931\u8D25: ${O.data?.message||"\u8FDE\u63A5\u6821\u9A8C\u5931\u8D25"}`}:{success:!0,name:n.name,message:`\u8FDE\u63A5\u6210\u529F: ${n.name}`}}catch(O){return{success:!1,error:O.message,message:`\u8FDE\u63A5\u5931\u8D25: ${O.message}`}}}async function _(T,k){return{class:[{type_id:a("/",""),type_name:n.name,type_flag:"alist"}],filters:{}}}async function E(T,k){let O=T.body||{},P="/",$=null;O.id&&($=o(O.id),P=$.p||"/");let Q=parseInt(O.page)||1,j=50;if(!await f())return{page:1,pagecount:1,limit:j,total:0,list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let X=(await p(P,1,1e3)).filter(q=>{let B=q?.name||"";return B&&!B.startsWith(".")&&!rWr.has(B.toLowerCase())}),K=[],Z=[];X.forEach(q=>{let B=P==="/"?`/${q.name}`:`${P}/${q.name}`;q.is_dir?K.push({...q,path:B,type:"folder"}):Z.push({...q,path:B,type:"file",isVideo:y(q.name)})}),K.sort((q,B)=>gDt(q.name,B.name)),Z.sort((q,B)=>gDt(q.name,B.name));let Y=[...K,...Z],ie=(Q-1)*j,ue=ie+j,ye=Y.slice(ie,ue).map(q=>{if(q.is_dir){let B=a(q.path,"");return{vod_id:B,vod_name:`\u{1F4C1} ${q.name}`,vod_pic:"https://img.icons8.com/color/48/folder-invoices.png",vod_remarks:"\u6587\u4EF6\u5939",vod_tag:"folder",vod_content:"",extend:{id:B,path:q.path,type:"folder"}}}else{let B=a(q.path,q.name),ae=[];return q.isVideo&&ae.push("\u{1F3AC}"),q.size&&ae.push(v(q.size)),{vod_id:B,vod_name:q.name,vod_pic:q.thumb||"",vod_remarks:ae.join(" "),vod_tag:q.isVideo?"video":"file",vod_content:"",vod_play_from:n.name,vod_play_url:`${q.name}$${B}`,extend:{id:B,path:q.path,type:"file",isVideo:q.isVideo}}}});return{page:Q,pagecount:Math.max(1,Math.ceil(Y.length/j)),limit:j,total:Y.length,list:ye}}catch(z){return console.error("Alist\u5206\u7C7B\u5931\u8D25:",z),{page:1,pagecount:1,limit:j,total:0,list:[],error:z.message}}}async function S(T,k){let O=T.body||{};if(!O.id)return{list:[],error:"ID\u53C2\u6570\u7F3A\u5931"};if(!await f())return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let P=o(O.id);if(!P.n)return{list:[],error:"\u76EE\u5F55\u65E0\u6CD5\u67E5\u770B\u8BE6\u60C5\uFF0C\u8BF7\u4F7F\u7528\u5206\u7C7B\u6D4F\u89C8"};let $=P.p,Q=await h($);if(!Q)return{list:[],error:"\u6587\u4EF6\u4E0D\u5B58\u5728\u6216\u65E0\u6CD5\u8BBF\u95EE"};if(Q.is_dir){let z=(await p($)).filter(K=>!K.is_dir&&y(K.name));if(z.length===0)return{list:[],error:"\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let X=z.map(K=>{let Z=`${P.p}/${K.name}`,Y=a(Z,K.name);return`${K.name}$${Y}`}).join("#");return{list:[{vod_id:O.id,vod_name:P.n,vod_pic:Q.thumb||"",vod_content:"",vod_remarks:v(Q.size)||"",vod_play_from:n.name,vod_play_url:X}]}}else{if(!y(Q.name))return{list:[],error:"\u4E0D\u662F\u89C6\u9891\u6587\u4EF6"};let j=$.substring(0,$.lastIndexOf("/"))||"/",z=yDt(P.n),K=(await p(j)).filter(Y=>!Y.is_dir&&g(Y.name)&&yDt(Y.name)===z),Z="";return K.length>0&&(Z=`\u5B57\u5E55\u6587\u4EF6: -${K.map(ie=>{let ue=`${j}/${ie.name}`;return`${ie.name} ${m(ue)}`}).join(` -`)}`),{list:[{vod_id:O.id,vod_name:P.n,vod_pic:Q.thumb||"",vod_content:Z,vod_remarks:v(Q.size)||"",vod_time:Q.modified||"",vod_play_from:n.name,vod_play_url:`${P.n}$${O.id}`}]}}}catch(P){return console.error("Alist\u8BE6\u60C5\u5931\u8D25:",P),{list:[],error:P.message}}}async function C(T,k){let O=T.body||{};if(!O.id)return{error:"ID\u53C2\u6570\u7F3A\u5931"};if(!await f())return{error:"\u767B\u5F55\u5931\u8D25"};try{let P=o(O.id),$=P.n||(P.p?P.p.split("/").pop():"")||"";if(!y($))return{error:"\u4E0D\u662F\u89C6\u9891\u6587\u4EF6\uFF0C\u65E0\u6CD5\u64AD\u653E"};let Q=P.p,j=await h(Q),z="",X="";if(j&&j.raw_url?(z=j.raw_url,X="raw_url"):j&&j.url?(z=j.url,X="url"):(z=m(Q),X="direct_link"),!z)throw new Error("\u65E0\u6CD5\u83B7\u53D6\u64AD\u653E\u5730\u5740");let K=$.toLowerCase().endsWith(".m3u8"),Z={"User-Agent":rEe,Accept:"*/*","Accept-Encoding":"identity",Connection:"keep-alive",Referer:i};return n.token&&(Z.Authorization=n.token.startsWith("Bearer ")?n.token:`Bearer ${n.token}`),{parse:K?1:0,url:z,header:Z,extra:{from:n.name,path:Q,urlSource:X}}}catch(P){return console.error("[Alist\u64AD\u653E] \u64AD\u653E\u5931\u8D25:",P.message,P.stack),{parse:0,url:"",header:{},error:P.message}}}async function I(T,k){let O=T.body||{},P=O.wd||"",$=parseInt(O.page,10)||1;if(!P.trim())return{page:1,pagecount:1,limit:0,total:0,list:[]};try{let Q=`${i}/search?box=${encodeURIComponent(P)}&type=video`,j=await _e.get(Q,{timeout:tWr,headers:{"User-Agent":rEe}});if(!j.data)return{page:1,pagecount:1,limit:0,total:0,list:[]};let X=new i_().pq(j.data),K=[];X("div ul a").each((Y,ie)=>{let ue=ie.attribs?.href,he=X(ie).text().trim();ue&&he&&ue.startsWith("/")&&K.push({path:W9(ue),name:W9(he)})});let Z=K.map(Y=>{let ie=cWr(Y.name,Y.path),ue=a(Y.path,ie);return{vod_id:ue,vod_name:ie,vod_pic:sWr,vod_remarks:"",vod_tag:"video",vod_content:Y.path,vod_play_from:n.name,vod_play_url:`${ie}$${ue}`}});return{page:$,pagecount:1,limit:Z.length,total:Z.length,list:Z}}catch(Q){return console.error(`[Alist\u641C\u7D22] ${n.name} - \u5931\u8D25:`,Q.message),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function N(T,k){try{let O=Buffer.from(aWr,"base64");return k.header("Content-Type","image/png"),k.header("Content-Length",O.length),k.send(O)}catch{k.code(500).send({error:"Failed to load image"})}}return{meta:{key:`alist_${n.id}`,name:`Alist ${n.name}`,type:3,version:"2.1.0",author:"\u878D\u5408\u7248\u672C",description:`Alist\u6587\u4EF6\u6D4F\u89C8 - ${n.name}`,supportSearch:!0},api:async T=>{T.post("/init",A),T.post("/home",_),T.post("/category",E),T.post("/detail",S),T.post("/play",C),T.post("/search",I),T.get("/icon",N)}}}Kt();var VMt=Se(KMt(),1);function iIe(e){let t=(e.server||"").replace(/\/$/,"");t=t.replace(/:443$/,"").replace(/(:443)\//,"/"),t=t.replace(/^http:\/\/([^:\/]+):80$/,"http://$1"),t=t.replace(/^http:\/\/([^:\/]+):80\//,"http://$1/");let r={id:e.id,name:e.name||`WebDAV ${e.id.slice(0,8)}`,server:t,path:e.path||"/",username:e.username||"",password:e.password||"",enabled:e.enabled!==!1},n=r.server,i=r.path&&r.path!=="/"?r.path.replace(/\/$/,""):"/",s=15*1e3,a=20*1e3,o=10*1e3,u=200,c=50,l=20,d=new Map,f=new Map,p=new Map,h=new Map,m=new Map,y=new Map;function g(F,V,H=20){if(F.size<=V)return;let G=0;for(let J of F.keys())if(F.delete(J),G++,G>=H)break}async function v(F,V,H,G,J){let ee=Date.now(),te=F.get(H);if(te&&ee-te.timestamp<G)return te.data;if(V.has(H))return V.get(H);let re=(async()=>{let ce=await J();return F.set(H,{data:ce,timestamp:Date.now()}),g(F,u),ce})();V.set(H,re),g(V,u);try{return await re}finally{V.get(H)===re&&V.delete(H)}}function A(F){let V=Number.parseInt(F,10);return Number.isNaN(V)||V<=0?1:V}function _(F,V=""){return JSON.stringify({c:r.id,p:F,n:V})}function E(F){try{return typeof F=="string"&&F.startsWith("{")?JSON.parse(F):{c:r.id,p:F||"/",n:""}}catch{return{c:r.id,p:F||"/",n:""}}}let S=r.username?{Authorization:`Basic ${Buffer.from(`${r.username}:${r.password||""}`).toString("base64")}`,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}:{};function C(){return{...S}}function I(){return(0,VMt.create)({version:"1.0",encoding:"UTF-8"}).ele("d:propfind",{"xmlns:d":"DAV:"}).ele("d:prop").ele("d:displayname").up().ele("d:getcontentlength").up().ele("d:getcontenttype").up().ele("d:getlastmodified").up().ele("d:resourcetype").up().up().up().end()}let N=I();function T(F,V){let H=[];try{let G=/<[^:>]+:response>([\s\S]*?)<\/[^:>]+:response>/g,J;for(;(J=G.exec(F))!==null;){let ee=J[1],te=/<[^:>]+:href>(.*?)<\/[^:>]+:href>/.exec(ee);if(!te)continue;let re=te[1];try{re=decodeURIComponent(re)}catch{}let ce=V.replace(/\/$/,"");if(re.replace(/\/$/,"")===ce)continue;let pe=/<[^:>]+:displayname>(.*?)<\/[^:>]+:displayname>/.exec(ee),Ce=pe?pe[1]:re.split("/").filter(Boolean).pop();if(!Ce){let Be=re.split("/").filter(Boolean);Ce=Be[Be.length-1]||"\u672A\u77E5\u6587\u4EF6"}let $e=/<[^:>]+:getcontentlength>(.*?)<\/[^:>]+:getcontentlength>/.exec(ee),We=$e&&Number.parseInt($e[1],10)||0,Ve=/<[^:>]+:getlastmodified>(.*?)<\/[^:>]+:getlastmodified>/.exec(ee),Te=Ve?Ve[1]:null,Ne=/<[^:>]+:collection\s*\/>/.test(ee)||/<[^:>]+:resourcetype><[^:>]+:collection/.test(ee),Ue=re;i&&i!=="/"&&re.startsWith(i)&&(Ue=re.substring(i.length)),Ue.startsWith("/")||(Ue="/"+Ue),Ue=Ue.replace(/\/+/g,"/");let Me=!Ne&&$(Ce),Ge=!Ne&&Q(Ce);H.push({name:Ce,path:Ue,size:We,isDir:Ne,isVideo:Me,isSubtitle:Ge,lastModified:Te})}}catch(G){console.error("\u89E3\u6790WebDAV\u54CD\u5E94\u5931\u8D25:",G.message)}return H}async function k(F){let V=i==="/"?F:i+F;V.startsWith("/")||(V="/"+V);let H=n+V,G=await _e({method:"PROPFIND",url:H,headers:{...C(),Depth:"1","Content-Type":"application/xml"},data:N,timeout:3e4});return T(G.data,V)}async function O(F,V={}){let H=`dir:${F}`;try{let J=(V.noCache?await k(F):await v(d,f,H,s,async()=>k(F))).slice();if(V.sortBy==="name"?J.sort((ee,te)=>ee.isDir&&!te.isDir?-1:!ee.isDir&&te.isDir?1:ee.name.localeCompare(te.name)):V.sortBy==="time"&&V.sortOrder==="desc"&&J.sort((ee,te)=>ee.lastModified&&te.lastModified?new Date(te.lastModified)-new Date(ee.lastModified):0),V.filter==="videos"?J=J.filter(ee=>ee.isVideo):V.filter==="folders"&&(J=J.filter(ee=>ee.isDir)),V.page&&V.pageSize){let ee=(V.page-1)*V.pageSize;J=J.slice(ee,ee+V.pageSize)}return J}catch(G){throw console.error("WebDAV\u5217\u51FA\u76EE\u5F55\u5931\u8D25:",G.message),G}}async function P(F){let V=await O(F),H=V.filter(te=>te.isDir),G=V.filter(te=>!te.isDir),J=G.filter(te=>te.isVideo),ee=G.filter(te=>te.isSubtitle);return{folders:H,files:G,videoFiles:J,subtitleFiles:ee,total:V.length}}function $(F){return[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".rm",".mpg",".mpeg",".3gp",".f4v",".vob",".iso"].some(H=>F.toLowerCase().endsWith(H))}function Q(F){return[".srt",".ass",".ssa",".sub",".vtt",".smi",".txt"].some(H=>F.toLowerCase().endsWith(H))}function j(F){let V=F.lastIndexOf(".");return V===-1?F:F.substring(0,V)}function z(F,V={}){let H=i==="/"?F:i+F;H.startsWith("/")||(H="/"+H);let J=H.split("/").map(te=>te===""?"":encodeURIComponent(te).replace(/%2F/g,"/")).join("/"),ee=n+J;if(V.includeCredentialsInUrl&&r.username){let te=ee.split("://")[0],re=ee.split("://")[1];ee=`${te}://${encodeURIComponent(r.username)}:${encodeURIComponent(r.password||"")}@${re}`}return{url:ee,headers:V.includeCredentialsInUrl?{}:C()}}async function X(F){let V=i==="/"?F:i+F;V.startsWith("/")||(V="/"+V);let G=V.split("/").map(re=>re===""?"":encodeURIComponent(re).replace(/%2F/g,"/")).join("/"),J=n+G,ee=await _e({method:"GET",url:J,headers:C(),responseType:"text",timeout:15e3});return`data:text/plain;base64,${Buffer.from(ee.data).toString("base64")}`}async function K(){try{return await O("/",{noCache:!0}),!0}catch(F){return console.error("WebDAV\u8FDE\u63A5\u6D4B\u8BD5\u5931\u8D25:",F.message),!1}}function Z(F){return!F||F===0?"0B":F<1024?F+"B":F<1024*1024?(F/1024).toFixed(2)+"KB":F<1024*1024*1024?(F/1024/1024).toFixed(2)+"MB":(F/1024/1024/1024).toFixed(2)+"GB"}function Y(F){if(!F)return"";try{let V=new Date(F);return V.toLocaleDateString()+" "+V.toLocaleTimeString()}catch{return F}}async function ie(F,V){try{return r.server?await K()?{success:!0,name:r.name,version:"1.2.0"}:{success:!1,error:"\u8FDE\u63A5WebDAV\u670D\u52A1\u5668\u5931\u8D25"}:{success:!1,error:"\u670D\u52A1\u5668\u5730\u5740\u672A\u914D\u7F6E"}}catch(H){return{success:!1,error:H.message}}}async function ue(F,V){return{class:[{type_id:_("/"),type_name:r.name}]}}async function he(F,V){let H=F.body||{},G=A(H.pg||H.page),J=c,ee="/";H.id&&(ee=E(H.id).p||"/");try{let{folders:te,files:re}=await P(ee),ce=[];te.forEach(Ve=>ce.push({...Ve,isFolder:!0})),re.forEach(Ve=>ce.push({...Ve,isFolder:!1})),ce.sort((Ve,Te)=>Ve.isFolder&&!Te.isFolder?-1:!Ve.isFolder&&Te.isFolder?1:Ve.name.localeCompare(Te.name));let de=ce.length,pe=Math.ceil(de/J)||1,Ce=(G-1)*J,We=ce.slice(Ce,Ce+J).map(Ve=>{if(Ve.isFolder)return{vod_id:_(Ve.path),vod_name:`\u{1F4C1} ${Ve.name}`,vod_pic:"https://img.icons8.com/color/48/folder-invoices.png",vod_remarks:Ve.lastModified?Y(Ve.lastModified):"\u6587\u4EF6\u5939",vod_tag:"folder"};{let Te=Ve.isVideo,Ne=Ve.isSubtitle,Ue=Z(Ve.size);return Te&&(Ue="\u{1F3AC} "+Ue),Ne&&(Ue="\u{1F4DD} "+Ue),{vod_id:_(Ve.path,Ve.name),vod_name:Ve.name,vod_pic:Te?"https://i2.100024.xyz/2024/01/13/pptcej.webp":"",vod_remarks:Ue,vod_tag:Te?"video":Ne?"subtitle":"file"}}});return{page:G,pagecount:pe,limit:J,total:de,list:We}}catch(te){return console.error("WebDAV\u5206\u7C7B\u5931\u8D25:",te.message),{page:1,pagecount:1,limit:J,total:0,list:[],error:te.message}}}async function ye(F,V){let H=F.body||{};if(!H.id)return{list:[]};try{let G=E(H.id),J=G.p||"/",ee=G.n||"";if(ee&&$(ee)){let de=J.substring(0,J.lastIndexOf("/"))||"/",{videoFiles:pe,subtitleFiles:Ce}=await P(de),$e=pe.sort((Te,Ne)=>Te.name.localeCompare(Ne.name)),We=new Map;for(let Te of Ce){let Ne=j(Te.name);We.has(Ne)||We.set(Ne,Te)}let Ve=$e.map(Te=>{let Ne=de==="/"?"/"+Te.name:de+"/"+Te.name,Ue=j(Te.name),Me=We.get(Ue),Ge=Te.name;if(Me){let It=de==="/"?"/"+Me.name:de+"/"+Me.name,Ze=encodeURIComponent(_(It,Me.name));Ge+=`(${Ze})`}let Be=_(Ne,Te.name);return`${Ge}$${Be}`}).join("#");return{list:[{vod_id:H.id,vod_name:ee,vod_pic:"https://i2.100024.xyz/2024/01/13/pptcej.webp",vod_remarks:$e.length>1?`\u5171${$e.length}\u96C6`:"",vod_play_from:r.name,vod_play_url:Ve}]}}if(ee&&Q(ee))return{list:[{vod_id:H.id,vod_name:ee,vod_pic:"",vod_remarks:"\u5B57\u5E55\u6587\u4EF6",vod_play_from:r.name,vod_play_url:`${ee}$${H.id}`}]};let{videoFiles:te}=await P(J);if(te.length===0)return{list:[],message:"\u8BE5\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let ce=te.sort((de,pe)=>de.name.localeCompare(pe.name)).map(de=>{let pe=J==="/"?"/"+de.name:J+"/"+de.name,Ce=_(pe,de.name);return`${de.name}$${Ce}`}).join("#");return{list:[{vod_id:_(J),vod_name:J.split("/").filter(Boolean).pop()||"\u6839\u76EE\u5F55",vod_pic:"https://i2.100024.xyz/2024/01/13/pptcej.webp",vod_remarks:te.length>1?`\u5171${te.length}\u4E2A\u89C6\u9891`:"\u5355\u4E2A\u89C6\u9891",vod_play_from:r.name,vod_play_url:ce}]}}catch(G){return console.error("WebDAV\u8BE6\u60C5\u5931\u8D25:",G.message),{list:[],error:G.message}}}async function q(F,V){try{return await _e({method:"HEAD",url:F,headers:V,maxRedirects:0,timeout:5e3}),{url:F,headers:V}}catch(H){let G=H.response?.headers?.location;if(G)return{url:G,headers:{}}}try{return await _e({method:"GET",url:F,headers:{...V,Range:"bytes=0-0"},maxRedirects:0,timeout:15e3}),{url:F,headers:V}}catch(H){let G=H.response?.headers?.location;return G?{url:G,headers:{}}:{url:F,headers:V}}}async function B(F,V){let H=F.body||{};if(!H.id)return{error:"\u7F3A\u5C11ID\u53C2\u6570"};try{let G=E(H.id),J=G.p||"",ee=G.n||"";if(ee&&Q(ee))return{parse:0,url:await X(J),header:{},contentType:"text/plain; charset=utf-8"};let{url:re,headers:ce}=z(J),de=ee.toLowerCase().endsWith(".m3u8"),pe=`redirect:${re}`,{url:Ce,headers:$e}=await v(m,y,pe,o,async()=>q(re,ce)),We={parse:de?1:0,url:Ce,header:$e};return de&&(We.extra={format:"m3u8","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}),We}catch(G){return console.error("[WebDAV\u64AD\u653E] \u64AD\u653E\u5931\u8D25:",G.message,G.stack),{parse:0,url:"",header:{},error:"\u64AD\u653E\u5931\u8D25: "+G.message}}}async function ae(F,V){let H=F.body||{},G=(H.wd||"").trim(),J=A(H.pg||H.page),ee=l;if(!G)return{page:1,pagecount:1,limit:ee,total:0,list:[]};try{let te=`search:${G}`,re=await v(p,h,te,a,async()=>{let Ve=`${n}${i==="/"?"":i}/SEARCH/${encodeURIComponent(G)}`,Ne=((await _e({method:"GET",url:Ve,headers:C(),timeout:3e4})).data||"").split(` -`).map(Me=>Me.trim()).filter(Boolean),Ue=new Map;for(let Me of Ne){let Ge=Me.lastIndexOf(" "),Be,It;Ge!==-1?(Be=Me.substring(0,Ge).trim(),It=Number.parseInt(Me.substring(Ge+1).trim(),10)||0):(Be=Me.trim(),It=0),Be&&(!Ue.has(Be)||It>0)&&Ue.set(Be,{filePath:Be,size:It})}return Array.from(Ue.values())}),ce=re.length,de=Math.ceil(ce/ee)||1,pe=(J-1)*ee,$e=re.slice(pe,pe+ee).map(({filePath:We,size:Ve})=>{let Te=We.split("/").filter(Boolean).pop()||We,Ne=Ve===0&&!$(Te),Ue=$(Te);return{vod_id:_(We,Ne?"":Te),vod_name:Ne?`\u{1F4C1} ${Te}`:Te,vod_pic:Ue?"https://i2.100024.xyz/2024/01/13/pptcej.webp":"",vod_remarks:Ne?"\u6587\u4EF6\u5939":Ue?"\u{1F3AC} "+Z(Ve):Z(Ve),vod_tag:Ne?"folder":Ue?"video":"file"}});return{page:J,pagecount:de,limit:ee,total:ce,list:$e}}catch(te){return console.error("[WebDAV\u641C\u7D22] \u5931\u8D25:",te.message),{page:J,pagecount:1,limit:ee,total:0,list:[]}}}async function M(F,V){let H=F.body||{},G={server:H.server||r.server,path:H.path||r.path,username:H.username||r.username,password:H.password||r.password},J=iIe({...G,id:"test"});try{let ee=await J.api.init(F,V);return{code:ee.success?0:500,message:ee.success?"\u8FDE\u63A5\u6210\u529F":ee.error||"\u8FDE\u63A5\u5931\u8D25"}}catch(ee){return{code:500,message:`\u8FDE\u63A5\u5931\u8D25: ${ee.message}`}}}return{meta:{key:`webdav_${r.id}`,name:`WebDAV ${r.name}`,type:3,version:"1.2.0",author:"WebDAV\u589E\u5F3A\u7248",description:"\u652F\u6301\u65E0\u9650\u5C42\u7EA7\u6D4F\u89C8\u3001\u5B57\u5E55\u5339\u914D\u3001\u591A\u65B9\u6848\u64AD\u653E\u7684WebDAV\u9A71\u52A8\u6E90",supportSearch:!0},api:async F=>{F.post("/init",ie),F.post("/home",ue),F.post("/category",he),F.post("/detail",ye),F.post("/play",B),F.post("/search",ae),F.post("/test-connection",M),F.post("/debug",async(V,H)=>{try{let{path:G="/"}=V.body||{},J=await O(G);return{success:!0,config:{name:r.name,server:r.server,basePath:i,hasAuth:!!r.username},currentPath:G,totalItems:J.length,items:J.slice(0,10),videoCount:J.filter(ee=>ee.isVideo).length,subtitleCount:J.filter(ee=>ee.isSubtitle).length,folderCount:J.filter(ee=>ee.isDir).length}}catch(G){return{success:!1,error:G.message,stack:G.stack}}})}}}var sIe="/pansou",Eon="https://pancheck.banye.tech:7777",uc={api_urls:"",count:0,pancheck:Eon,pancheck_enabled:!1,pancheck_mode:"off",channels:"",plugins:"",cloud_types:"",include:"",exclude:"",selected_platforms:["quark","uc","tianyi","pan123","pan115","cmcc","baidu","aliyun"]};function cE(e,t=""){return e==null?t:String(e)}function Son(e,t=uc.count){let r=Number.parseInt(e,10);return Number.isFinite(r)&&r>=0?r:t}function won(e,t=!1){if(typeof e=="boolean")return e;if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?!0:["0","false","no","off","n"].includes(r)?!1:t}function zMt(e,t=uc.pancheck_mode){let r=String(e||"").trim().toLowerCase();return["off","detect","pancheck"].includes(r)?r:t}function aIe(e){return Array.isArray(e)?e.map(t=>String(t||"").trim()).filter(Boolean):String(e||"").split(",").map(t=>t.trim()).filter(Boolean)}function Ion(e){return Array.from(new Set(aIe(e)))}function xon(e={}){let t=aIe(e.include),r=aIe(e.exclude);return{include:t,exclude:r}}function oIe(e={}){let t=e&&typeof e=="object"?e:{},r=Ion(t.selected_platforms??t.selectedPlatforms??uc.selected_platforms),n=t.pancheck_enabled!==void 0?won(t.pancheck_enabled,uc.pancheck_enabled):zMt(t.pancheck_mode,uc.pancheck_mode)==="pancheck",i=t.pancheck_mode!==void 0?zMt(t.pancheck_mode,uc.pancheck_mode):n?"pancheck":"off";return{api_urls:cE(t.api_urls,uc.api_urls),count:Son(t.count,uc.count),pancheck:cE(t.pancheck,uc.pancheck),pancheck_enabled:n,pancheck_mode:i,channels:cE(t.channels,uc.channels),plugins:cE(t.plugins,uc.plugins),cloud_types:cE(t.cloud_types,uc.cloud_types),include:cE(t.include,uc.include),exclude:cE(t.exclude,uc.exclude),selected_platforms:r,selected_platforms_str:r.join(","),filter:xon(t)}}var Jx=async e=>{let t=await e.db.getObjectDefault(sIe,{});return oIe(t)},uIe=async e=>(await Jx(e)).api_urls,cIe=async e=>(await Jx(e)).pancheck;var lIe=async e=>(await Jx(e)).pancheck_mode,dIe=async e=>(await Jx(e)).count;var fIe=async e=>{let t=await Jx(e);return{channels:t.channels,plugins:t.plugins,cloud_types:t.cloud_types,selected_platforms:t.selected_platforms,filter:t.filter,include:t.include,exclude:t.exclude}};async function ZV(e){e.get("/config",async(t,r)=>{try{let n=await Jx(t.server);r.send({code:0,data:n})}catch(n){r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:oIe({})})}}),e.put("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault(sIe,{}),i=oIe({...n,...t.body||{}});await t.server.db.push(sIe,i),r.send({code:0,data:i,message:"Pansou\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}Yr();var QMt="https://pancheck.banye.tech:7777",Con=6e5,WMt=/^0001-01-01/,Ton=/<\/?[^>]+(>|$)/g,Non=2e4,Ron=80,Don=80,kon=1e3,x_={url:"",timestamp:0},pIe=new Map,Zx=new Map,e7=new Map,$M={aliyun:Kq,quark:Vq,uc:zq,tianyi:Qq,pan123:Yq,pan115:Wq,baidu:Xq,yidong:Gq},Oon={aliyun:"ali",ali:"ali",quark:"quark",uc:"uc",tianyi:"tianyi",cloud189:"tianyi",pan123:"123",123:"123",pan115:"115",115:"115",baidu:"baidu",yidong:"yidong",mobile:"yidong",139:"yidong"},t7=e=>{if(!e||WMt.test(e))return 0;let t=Date.parse(e);return isNaN(t)?0:t};function r7(){return{page:1,pagecount:1,list:[]}}function Pon(e={}){return JSON.stringify({source:"pansou",mode:"resource",...e})}function Mon(e={}){return JSON.stringify({source:"pansou",mode:"group-category",...e})}function XMt(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="pansou"&&t.mode)return t}catch{}return null}function Lon(e){if(!e)return[];let t=new Set,r=String(e).split(",");for(let n=0;n<r.length;n++){let i=r[n].trim().replace(/\/+$/,"");i&&t.add(i)}return Array.from(t)}function hIe(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}function GMt(e){return String(e||"").replace(Ton,"").trim()}function Bon(e,t){if(!e)return null;if(e7.has(e))return e7.get(e);let r=null;for(let n=0;n<t.length;n++){let i=t[n];if(i?.validator&&i.validator(e)){r=i;break}}return e7.set(e,r),hIe(e7,kon,200),r}function $on(e,t,r,n,i,s){let a=s?.cloud_types||"",o=s?.channels||"",u=s?.plugins||"",c=Array.isArray(s?.selected_platforms)?s.selected_platforms.join(","):"",l=JSON.stringify(s?.filter||{include:[],exclude:[]}),d=t.join(",");return`${e}__${d}__${r||""}__${n||"off"}__${i}__${a}__${o}__${u}__${c}__${l}`}function Fon(e){return Array.isArray(e)?e.filter(t=>$M[t]):[]}function JMt(e,t){let r=new Set,n=new Set,i=t.map(s=>$M[s]);for(let s=0;s<e.length;s++){let o=e[s].url,u=!1;for(let c=0;c<i.length;c++)if(i[c](o)){u=!0;break}u?r.add(o):n.add(o)}return{linksToCheck:r,uncheckedLinks:n}}function UM(e){return Oon[String(e||"").trim().toLowerCase()]||""}function mIe(e,t=[]){let r=UM(e);if(r){let n=t.find(i=>i?.key===r);if(n?.name)return n.name}return String(e||"").trim()||"\u7F51\u76D8"}function FM(e,t=[]){let r=UM(e);if(r){let n=t.find(i=>i?.key===r);if(n?.pic)return n.pic}return""}function Uon(){let e=Array.isArray($a())?$a():[];return new Map(e.map((t,r)=>[String(t?.key||"").trim(),{index:r,enable:!!t?.enable}]))}function qon(e,t){let r=UM(e);return!r||!t?.has(r)?!1:!!t.get(r)?.enable}function YMt(e,t){let r=UM(e);return r?t?.get(r)?.index??Number.MAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER}function jon(e){return`${e?.note||""} ${e?.url||""}`.match(/(?:提取码|访问码|密码|口令|code|pwd|password)\s*[:: =]?\s*([a-zA-Z0-9]{4,8})/i)?.[1]||""}async function Hon(e,t,r){let n=r.length>0?r:Object.keys($M),{linksToCheck:i,uncheckedLinks:s}=JMt(t,n);if(i.size===0)return t;let a=[];for(let f=0;f<t.length;f++){let p=t[f];if(!i.has(p.url))continue;let h=UM(p._cloudType);if(!h){s.add(p.url);continue}a.push({disk_type:h,url:p.url,password:jon(p)})}if(a.length===0)return t.filter(f=>s.has(f.url));let u=(await Ee.post(`${e}/api/check/links`,{items:a},{timeout:1e4,headers:{"Content-Type":"application/json"}})).data||{},c=Array.isArray(u?.results)?u.results:Array.isArray(u?.data?.results)?u.data.results:null,l=null;if(Array.isArray(c))l=c.filter(f=>{let p=String(f?.state||"").trim().toLowerCase();return p==="valid"||p==="ok"||p==="good"}).map(f=>f?.url||f?.normalized_url||f?.link||"").filter(Boolean);else{let f=[u?.data?.valid_links,u?.data?.links,u?.valid_links,u?.links,u?.data,u];for(let p=0;p<f.length;p++){let h=f[p];if(!Array.isArray(h))continue;let m=h.map(y=>typeof y=="string"?y:y?.url||y?.link||y?.share_url||"").filter(Boolean);if(m.length>0||h.length===0){l=m;break}}}if(!Array.isArray(l))return t;let d=new Set(l);for(let f of s)d.add(f);return t.filter(f=>d.has(f.url))}async function Kon(e,t,r){let n=r.length>0?r:Object.keys($M),{linksToCheck:i,uncheckedLinks:s}=JMt(t,n);if(r.length>0){if(i.size>0){let u=await Ee.post(`${e||QMt}/api/v1/links/check`,{links:Array.from(i),selected_platforms:r},{timeout:1e4,headers:{"Content-Type":"application/json"}});if(Array.isArray(u.data?.valid_links)){let c=new Set(u.data.valid_links);for(let l of s)c.add(l);return t.filter(l=>c.has(l.url))}return t.filter(c=>s.has(c.url))}return t}let a=Array.from(new Set(t.map(u=>u.url))),o=await Ee.post(`${e||QMt}/api/v1/links/check`,{links:a,selected_platforms:Object.keys($M)},{timeout:1e4,headers:{"Content-Type":"application/json"}});if(Array.isArray(o.data?.valid_links)){let u=new Set(o.data.valid_links);return t.filter(c=>u.has(c.url))}return t}async function Von(e){if(!Array.isArray(e)||e.length===0)return"";let t=Date.now();if(x_.url&&t-x_.timestamp<Con&&e.includes(x_.url))return x_.url;if(e.length===1)return x_={url:e[0],timestamp:t},e[0];let r=new AbortController,n=setTimeout(()=>r.abort(),4e3),i=e.map(async s=>{try{return await Ee.get(`${s}/api/health`,{timeout:2500,signal:r.signal}),s}catch(a){throw a}});try{let s=await Promise.any(i);return r.abort(),x_={url:s,timestamp:t},s}catch{return x_={url:"",timestamp:0},e[0]}finally{clearTimeout(n)}}async function zon(e,t){return await xs(e,t),{}}async function Qon(e,t){return{class:[]}}async function Gon(e,t){let r=e.body||{},n=Math.max(1,Number.parseInt(r.pg||r.page||r.pn,10)||1),i=String(r.tid||r.id||r.t||"").trim(),s=XMt(i);if(!s||s.mode!=="group-category")return{page:n,pagecount:1,list:[]};let a=ls(),o=Array.isArray(s.items)?s.items:[],u=String(s.panType||"").trim(),c=mIe(u,a);return{page:1,pagecount:1,list:o.map(d=>{let f=String(d?.url||"").trim(),p=GMt(d?.note||f)||f,h=String(d?.datetime||"").split("T")[0],m=GMt(d?.source||""),y=[c];return h&&!WMt.test(h)&&y.push(h),m&&y.push(`[${m}]`),{vod_id:Pon({url:f,name:p,pic:d?.images?.[0]||FM(u,a)||"",remarks:y.join(" ")}),vod_name:p,vod_pic:d?.images?.[0]||FM(u,a)||"",vod_remarks:y.join(" "),type_id:i,type_name:`${c}\u8D44\u6E90`}})}}async function Yon(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=ls(),i=r.map(async a=>{let o=String(a||""),u=XMt(o);if(u?.mode==="group"||u?.mode==="group-category"){let h=String(u.panType||"").trim(),m=mIe(h,n);return[{vod_id:o,vod_name:m,vod_pic:FM(h,n)||"",vod_remarks:"\u76EE\u5F55\u9879\uFF0C\u8BF7\u8FDB\u5165\u4E0B\u4E00\u5C42\u67E5\u770B\u8D44\u6E90"}]}let c=o,l=o,d="",f="";if(u?.mode==="resource")c=u.url||o,l=u.name||u.url||o,d=u.pic||"",f=u.remarks||"";else try{let h=JSON.parse(o);c=h.url,l=h.name||h.url,d=h.pic||"",f=h.remarks||""}catch{c=o,l=o}let p={vod_id:o,vod_name:l,vod_pic:d,vod_remarks:f};try{let h=await hi(c,e);h&&(p.vod_play_from=h.froms,p.vod_play_url=h.urls,Array.isArray(h.links)&&h.links.length>0&&(p.vod_links=h.links))}catch{}return p});return{list:(await Promise.all(i)).flat().filter(Boolean)}}async function Won(e,t){let{server:r,body:{wd:n}}=e,i=String(n||"").trim();if(!i)return r7();let[s,a,o,u,c]=await Promise.all([uIe(r),cIe(r),lIe(r),dIe(r),fIe(r)]),l=Lon(s);if(l.length===0)return r7();let d=String(o||"off").trim().toLowerCase(),f=c||{},p=Number.parseInt(u,10),h=Number.isFinite(p)&&p>=0?p:0,m=$on(i,l,a,d,h,f),y=Date.now(),g=pIe.get(m);if(g&&y-g.timestamp<Non)return g.data;if(Zx.has(m))return Zx.get(m);let v=(async()=>{let A=await Von(l);if(!A)return r7();let _=[],E="";try{let k=(await Ee.get(`${A}/api/search`,{params:{kw:i,channels:f.channels||"",plugins:f.plugins||"",cloud_types:f.cloud_types||"",filter:JSON.stringify(f.filter||{include:[],exclude:[]})},timeout:15e3})).data?.data?.merged_by_type;if(k){let O=[],P=f.cloud_types?new Set(f.cloud_types.split(",").map($=>$.trim().toLowerCase()).filter(Boolean)):null;for(let[$,Q]of Object.entries(k)){if(P&&!P.has($.toLowerCase())||!Array.isArray(Q)||Q.length===0)continue;if(!E)for(let X=0;X<Q.length;X++){let K=Q[X]?.images?.[0];if(K){E=K;break}}let j=Q.slice().sort((X,K)=>t7(K.datetime)-t7(X.datetime)),z=h>0?j.slice(0,h):j;for(let X=0;X<z.length;X++){let K=z[X];O.push({url:K.url,note:K.note,images:K.images,datetime:K.datetime,source:K.source,_cloudType:$})}}if(d!=="off"&&O.length>0)try{let $=Fon(f.selected_platforms);d==="detect"?_=await Hon(A,O,$):d==="pancheck"?_=await Kon(a,O,$):_=O}catch($){console.error("Pancheck \u9519\u8BEF:",$),_=O}else _=O;_.sort(($,Q)=>t7(Q.datetime)-t7($.datetime))}}catch(T){console.error("\u641C\u7D22\u9519\u8BEF:",T),x_.timestamp=0}if(_.length===0)return r7();let S=ls(),C=Uon(),I=new Map;for(let T=0;T<_.length;T++){let k=_[T],O=String(k?._cloudType||"").trim().toLowerCase();if(!O||!qon(O,C))continue;let P=I.get(O)||{items:[],cover:"",count:0};if(P.items.push({url:k.url,note:k.note||"",images:Array.isArray(k.images)?k.images.slice(0,1):[],datetime:k.datetime||"",source:k.source||"",_cloudType:k._cloudType||""}),P.count+=1,!P.cover){let $=Bon(k.url,S);P.cover=FM(O,S)||k.images?.[0]||E||$?.pic||""}I.set(O,P)}return{page:1,pagecount:1,list:Array.from(I.entries()).sort((T,k)=>{let O=YMt(T[0],C)-YMt(k[0],C);return O!==0?O:k[1].count-T[1].count}).map(([T,k])=>{let O=Mon({wd:i,panType:T,items:k.items});return{vod_id:O,vod_name:mIe(T,S),vod_pic:FM(T,S)||k.cover||"",vod_remarks:`${k.count} \u6761\u7ED3\u679C`,vod_tag:"folder",type_id:O,type_name:"\u7F51\u76D8\u76EE\u5F55",cate:{}}})}})();Zx.set(m,v),hIe(Zx,Don,20);try{let A=await v;return pIe.set(m,{timestamp:Date.now(),data:A}),hIe(pIe,Ron,20),A}finally{Zx.get(m)===v&&Zx.delete(m)}}var ZMt={meta:{key:"pansou",name:"\u{1F50D} \u76D8\u641C",type:3},api:async e=>{e.post("/init",zon),e.post("/home",Qon),e.post("/category",Gon),e.post("/detail",Yon),e.post("/play",Ci),e.post("/search",Won),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};Kt();var yIe=Se(require("crypto"),1),Xon={short:{max:2e3,ttl:30*1e3},medium:{max:1e3,ttl:5*60*1e3},long:{max:500,ttl:60*60*1e3}},Jon={timeout:1e4,retryCount:1,maxConcurrent:12},eLt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Zon="https://player.example.com/",eun=/\.(m3u8|mp4|ts|flv)(\?|$)/i,tLt=[{name:"TV-\u7535\u5F71\u5929\u5802\u8D44\u6E90",api:"http://caiji.dyttzyapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u65E0\u6C34\u5370\u8D44\u6E90",api:"https://api.wsyzy.net/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u91CF\u5B50\u8D44\u6E90",api:"https://cj.lziapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-1080\u8D44\u6E90",api:"https://api.1080zyku.com/inc/api_mac10.php",bz:"0",paichu:"1,2,3,4"},{name:"TV-360\u8D44\u6E90",api:"https://360zy.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u5929\u6DAF\u8D44\u6E90",api:"https://tyyszy.com/api.php/provide/vod",bz:"1",paichu:"20,39,45,50"},{name:"TV-\u66B4\u98CE\u8D44\u6E90",api:"https://bfzyapi.com/api.php/provide/vod",bz:"1",paichu:""},{name:"TV-\u7D22\u5C3C-\u95EA\u7535\u8D44\u6E90",api:"https://xsd.sdzyapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u7D22\u5C3C\u8D44\u6E90",api:"https://suoniapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u7EA2\u725B\u8D44\u6E90",api:"https://www.hongniuzy2.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u8305\u53F0\u8D44\u6E90",api:"https://caiji.maotaizy.cc/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u864E\u7259\u8D44\u6E90",api:"https://www.huyaapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,17"},{name:"TV-\u8C46\u74E3\u8D44\u6E90",api:"https://caiji.dbzy.tv/api.php/provide/vod",bz:"1",paichu:"1,2,3,4,42,51,52"},{name:"TV-\u8C46\u74E3\u8D44\u6E902",api:"https://dbzy.tv/api.php/provide/vod",bz:"1",paichu:"1,2,3,4,42,51,52"},{name:"TV-\u8C46\u74E3\u8D44\u6E903",api:"https://caiji.dbzy5.com/api.php/provide/vod/from/dbm3u8/at/josn",bz:"1",paichu:"1,2,3,4,42,51,52"},{name:"TV-\u8C6A\u534E\u8D44\u6E90",api:"https://hhzyapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,17,27"},{name:"TV-U\u9177\u8D44\u6E90",api:"https://api.ukuapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-U\u9177\u8D44\u6E902",api:"https://api.ukuapi88.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-ikun\u8D44\u6E90",api:"https://ikunzyapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-wujinapi\u65E0\u5C3D",api:"https://api.wujinapi.cc/api.php/provide/vod",bz:"0",paichu:"1,2,3,4,5"},{name:"TV-\u4E2B\u4E2B\u70B9\u64AD",api:"https://cj.yayazy.net/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u5149\u901F\u8D44\u6E90",api:"https://api.guangsuapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u5367\u9F99\u70B9\u64AD",api:"https://collect.wolongzyw.com/api.php/provide/vod",bz:"1",paichu:""},{name:"TV-\u5367\u9F99\u8D44\u6E90",api:"https://collect.wolongzy.cc/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u5367\u9F99\u8D44\u6E902",api:"https://wolongzyw.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u65B0\u6D6A\u70B9\u64AD",api:"https://api.xinlangapi.com/xinlangapi.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u65E0\u5C3D\u8D44\u6E90",api:"https://api.wujinapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4,5"},{name:"TV-\u65E0\u5C3D\u8D44\u6E902",api:"https://api.wujinapi.me/api.php/provide/vod",bz:"1",paichu:"1,2,3,4,5"},{name:"TV-\u65E0\u5C3D\u8D44\u6E903",api:"https://api.wujinapi.net/api.php/provide/vod",bz:"1",paichu:"1,2,3,4,5"},{name:"TV-\u65FA\u65FA\u77ED\u5267",api:"https://wwzy.tv/api.php/provide/vod",bz:"1",paichu:"2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18"},{name:"TV-\u65FA\u65FA\u8D44\u6E90",api:"https://api.wwzy.tv/api.php/provide/vod",bz:"1",paichu:"2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18"},{name:"TV-\u6700\u5927\u70B9\u64AD",api:"http://zuidazy.me/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u6700\u5927\u8D44\u6E90",api:"https://api.zuidapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u6A31\u82B1\u8D44\u6E90",api:"https://m3u8.apiyhzy.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4,5"},{name:"TV-\u6B65\u6B65\u9AD8\u8D44\u6E90",api:"https://api.yparse.com/api/json",bz:"0",paichu:""},{name:"TV-\u725B\u725B\u70B9\u64AD",api:"https://api.niuniuzy.me/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u767E\u5EA6\u4E91\u8D44\u6E90",api:"https://api.apibdzy.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u795E\u9A6C\u4E91",api:"https://api.1080zyku.com/inc/apijson.php/",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u901F\u535A\u8D44\u6E90",api:"https://subocaiji.com/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u91D1\u9E70\u70B9\u64AD",api:"https://jinyingzy.com/api.php/provide/vod",bz:"1",paichu:"1,2,17,27"},{name:"TV-\u91D1\u9E70\u8D44\u6E90",api:"https://jyzyapi.com/api.php/provide/vod",bz:"1",paichu:"1,2,17,27"},{name:"TV-\u9583\u96FB\u8D44\u6E90",api:"https://sdzyapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u975E\u51E1\u8D44\u6E90",api:"https://cj.ffzyapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u98D8\u96F6\u8D44\u6E90",api:"https://p2100.net/api.php/provide/vod",bz:"1",paichu:"1,2,3,4"},{name:"TV-\u9B54\u722A\u8D44\u6E90",api:"https://mozhuazy.com/api.php/provide/vod",bz:"1",paichu:"1,25,34,40"},{name:"TV-\u9B54\u90FD\u52A8\u6F2B",api:"https://caiji.moduapi.cc/api.php/provide/vod",bz:"1",paichu:""},{name:"TV-\u9B54\u90FD\u8D44\u6E90",api:"https://www.mdzyapi.com/api.php/provide/vod",bz:"1",paichu:""},{name:"TV-\u6781\u901F\u8D44\u6E90",api:"https://jszyapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,17,27"},{name:"TV-\u9B54\u722A\u8D44\u6E902",api:"https://mozhuazy.com/api.php/provide/vod",bz:"0",paichu:"1,25,34,40"},{name:"TV-\u9B54\u90FD\u8D44\u6E902",api:"https://www.mdzyapi.com/api.php/provide/vod",bz:"0",paichu:""},{name:"TV-\u91CF\u5B50\u8D44\u6E902",api:"https://cj.lziapi.com/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u7EA2\u725B\u8D44\u6E902",api:"https://www.hongniuzy3.com/api.php/provide/vod",bz:"0",paichu:"1,2"},{name:"TV-\u9E2D\u9E2D\u8D44\u6E90",api:"https://cj.yayazy.net/api.php/provide/vod",bz:"0",paichu:"1,2,3,4"},{name:"TV-\u6D77\u6D0B\u8D44\u6E90",api:"http://www.seacms.org/api.php/provide/vod",bz:"0",paichu:""},{name:"TV-\u65B0\u6D6A\u8D44\u6E90\u963F",api:"https://api.xinlangapi.com/xinlangapi.php/provide/vod",bz:"0",paichu:"1,2"}],gIe=null,tun=[{key:"cateId",name:"\u5206\u7C7B",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u52A8\u4F5C\u7247",v:"\u52A8\u4F5C"},{n:"\u559C\u5267\u7247",v:"\u559C\u5267"},{n:"\u7231\u60C5\u7247",v:"\u7231\u60C5"},{n:"\u79D1\u5E7B\u7247",v:"\u79D1\u5E7B"},{n:"\u6050\u6016\u7247",v:"\u6050\u6016"},{n:"\u5267\u60C5\u7247",v:"\u5267\u60C5"},{n:"\u6218\u4E89\u7247",v:"\u6218\u4E89"},{n:"\u56FD\u4EA7\u5267",v:"\u56FD\u4EA7"},{n:"\u6E2F\u5267",v:"\u9999\u6E2F"},{n:"\u97E9\u5267",v:"\u97E9\u56FD"},{n:"\u6B27\u7F8E\u5267",v:"\u6B27\u7F8E"},{n:"\u53F0\u5267",v:"\u53F0\u6E7E"},{n:"\u65E5\u5267",v:"\u65E5\u672C"},{n:"\u7EAA\u5F55\u7247",v:"\u8BB0\u5F55"},{n:"\u52A8\u6F2B",v:"\u52A8\u6F2B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"}]}],Af={homeData:null,homeTimestamp:0,homeCacheTTL:30*60*1e3,classes:null,filters:null};function lE(){return gIe||(gIe=tLt.map(e=>{let t=new Set;if(e.paichu&&e.paichu.trim()){let r=e.paichu.split(",");for(let n=0;n<r.length;n++){let i=r[n].trim();i&&t.add(i)}}return{...e,paichuSet:t,displayName:e.name.startsWith("TV-")||e.name.startsWith("AV-")?e.name.substring(3):e.name}})),gIe}function run(e,t){if(!e||!t)return{vod_play_from:e,vod_play_url:t};let r=e.split("$$$"),n=t.split("$$$");if(r.length!==n.length)return{vod_play_from:e,vod_play_url:t};let i=!1;for(let c=0;c<n.length;c++)if(n[c].includes(".m3u8")){i=!0;break}if(!i)return{vod_play_from:e,vod_play_url:t};let s=[],a=[],o=[],u=[];for(let c=0;c<r.length;c++)n[c].includes(".m3u8")?(s.push(r[c]),a.push(n[c])):(o.push(r[c]),u.push(n[c]));return{vod_play_from:[...s,...o].join("$$$"),vod_play_url:[...a,...u].join("$$$")}}function nun(e){if(!e)return null;if(e.includes(".m3u8"))return e;let t=e.split("$$$");for(let r=0;r<t.length;r++){let n=t[r].split("#");for(let i=0;i<n.length;i++){let s=n[i].split("$");if(s.length>=2&&s[1].includes(".m3u8"))return s[1];if(s.length===1&&s[0].includes(".m3u8"))return s[0]}}return null}function n7(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function vIe(e,t){let r=Number.parseInt(e,10);return!Number.isFinite(r)||r<0||r>=t?-1:r}function bIe(e){return e?Array.isArray(e.list)?e.list:Array.isArray(e.data)?e.data:Array.isArray(e.data?.list)?e.data.list:Array.isArray(e)?e:[]:[]}function rLt(e){let t=bIe(e);return t.length>0?t[0]:e?.detail&&typeof e.detail=="object"?e.detail:e?.info&&typeof e.info=="object"?e.info:e?.data&&!Array.isArray(e.data)&&typeof e.data=="object"?e.data:null}function iun(e){return e?.vod_id||e?.id||e?.vid||""}function sun(e,t,r={}){return JSON.stringify({siteIndex:Number(e),vodId:String(t||""),meta:r&&typeof r=="object"?r:{}})}function aun(e){try{let r=JSON.parse(String(e||""));if(r&&Number.isInteger(r.siteIndex)&&r.vodId)return{siteIndex:r.siteIndex,vodId:String(r.vodId||""),meta:r.meta&&typeof r.meta=="object"?r.meta:{}}}catch{}let t=String(e||"");if(t.includes("@@")){let[r,n]=t.split("@@");return{siteIndex:Number.parseInt(r,10),vodId:String(n||""),meta:{}}}return{siteIndex:-1,vodId:t,meta:{}}}function nLt(e,t,r=""){let n=iun(e);if(!n)return null;let i=e.vod_pic||e.pic||e.img||"",s=e.vod_remarks||e.remarks||e.note||"";return{vod_id:sun(t,n,{vod_pic:i,vod_remarks:s}),vod_name:`${r}${e.vod_name||e.name||e.title||""}`,vod_pic:i,vod_remarks:s,vod_year:e.vod_year||e.year||"",vod_score:e.vod_score||e.score||0,vod_content:e.vod_content||e.content||"",vod_type:e.type_name||e.type||"",vod_actor:e.vod_actor||e.actor||"",vod_director:e.vod_director||e.director||"",vod_area:e.vod_area||e.area||"",vod_play_from:e.vod_play_from||"",vod_play_url:e.vod_play_url||""}}function oun(e){if(!e)return"";let t=e.split("$$$");for(let r=0;r<t.length;r++){let n=t[r].split("#");for(let i=0;i<n.length;i++){let s=n[i].split("$");if(s.length>=2&&s[1])return s[1];if(s.length===1&&s[0])return s[0]}}return e}var _Ie=class{constructor(){this.cache={short:new Map,medium:new Map,long:new Map},this.config=Xon,this.accessOrder=new Map,this.cleanupTimer=null,this.startCleanupInterval()}get(t,r="medium"){let n=this.cache[r];if(!n)return null;let i=n.get(t);if(!i)return null;let s=Date.now();return s>i.expiry?(n.delete(t),this.accessOrder.delete(t),null):(i.lastAccess=s,this.accessOrder.set(t,s),i.value)}set(t,r,n="medium"){let i=this.cache[n];if(!i)return;let s=this.config[n];i.size>=s.max&&this.evictOldest(n);let a=Date.now();i.set(t,{value:r,expiry:a+s.ttl,lastAccess:a}),this.accessOrder.set(t,a)}evictOldest(t){let r=this.cache[t];if(r.size===0)return;let n=null,i=1/0,s=0,a=Math.min(10,r.size);for(let[o,u]of this.accessOrder)if(r.has(o)&&(u<i&&(i=u,n=o),s++,s>=a))break;if(n)r.delete(n),this.accessOrder.delete(n);else{let o=r.keys().next().value;o&&(r.delete(o),this.accessOrder.delete(o))}}generateKey(t,r={}){if(Object.keys(r).length===0)return t.length>256?yIe.default.createHash("md5").update(t).digest("hex"):t;let n=Object.keys(r).sort(),i="";for(let a=0;a<n.length;a++){let o=n[a];i+=(a===0?"":"&")+o+"="+r[o]}let s=i?t+"?"+i:t;return s.length>256?yIe.default.createHash("md5").update(s).digest("hex"):s}clear(){this.cache.short.clear(),this.cache.medium.clear(),this.cache.long.clear(),this.accessOrder.clear()}startCleanupInterval(){this.cleanupTimer=setInterval(()=>{let t=Date.now(),r=["short","medium","long"],n=r[Math.floor(Math.random()*r.length)],i=this.cache[n],s=0,a=50;for(let[o,u]of i.entries())if(t>u.expiry&&(i.delete(o),this.accessOrder.delete(o),s++,s>=a))break},5*60*1e3)}destroy(){this.cleanupTimer&&(clearInterval(this.cleanupTimer),this.cleanupTimer=null)}},AIe=class{constructor(t={}){this.config={...Jon,...t},this.cache=new _Ie,this.active=0,this.queue=[],this.defaultHeaders={"User-Agent":eLt,Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive"}}async schedule(t){if(this.active<this.config.maxConcurrent){this.active++;try{return await t()}finally{this.active--,this.processQueue()}}return new Promise((r,n)=>{this.queue.push({task:t,resolve:r,reject:n})})}processQueue(){for(;this.queue.length>0&&this.active<this.config.maxConcurrent;){let{task:t,resolve:r,reject:n}=this.queue.shift();this.active++,(async()=>{try{let s=await t();r(s)}catch(s){n(s)}finally{this.active--,this.processQueue()}})()}}async get(t,r={},n="medium"){let i=this.cache.generateKey(t,r.params||{}),s=this.cache.get(i,n);return s||await this.schedule(async()=>{let a;for(let o=0;o<=this.config.retryCount;o++){let u=null;try{let c=new AbortController;u=setTimeout(()=>c.abort(),this.config.timeout);let l={...this.defaultHeaders,...r.headers||{}},d=await _e.get(t,{...r,headers:l,signal:c.signal,timeout:this.config.timeout,validateStatus:f=>f>=200&&f<400});if(d&&d.data){let f=d.data;if(typeof f=="string")try{if(f.trim().startsWith("callback(")){let h=f.trim(),m=h.indexOf("(")+1,y=h.lastIndexOf(")"),g=h.substring(m,y);f=JSON.parse(g)}else f=JSON.parse(f)}catch{}let p={data:f,status:d.status,headers:d.headers,url:t};return this.cache.set(i,p,n),p}return d}catch(c){if(a=c,o===this.config.retryCount)break;await new Promise(l=>setTimeout(l,300*(o+1)))}finally{u&&clearTimeout(u)}}throw a||new Error("\u8BF7\u6C42\u5931\u8D25")})}};function iLt(){if(!Af.classes){let e=lE(),t=new Array(e.length),r={};for(let n=0;n<e.length;n++)t[n]={type_id:n.toString(),type_name:e[n].displayName,type_image:""},r[n.toString()]=tun;Af.classes=t,Af.filters=r}return{class:Af.classes,filters:Af.filters}}var ah=new AIe;async function uun(e,t){return lE(),{success:!0,name:"\u91C7\u96C6\u805A\u5408Pro",version:"1.0.1",siteCount:tLt.length}}async function cun(e,t){let r=Date.now();if(Af.homeData&&r-Af.homeTimestamp<Af.homeCacheTTL)return Af.homeData;let n=iLt();return Af.homeData=n,Af.homeTimestamp=r,n}async function lun(e,t){try{let r=e.body||{},n=r.id,i=n7(r.page),a=(r.filters||{}).cateId||"",o=lE(),u=vIe(n,o.length);if(u<0)return{page:i,pagecount:i,limit:20,total:0,list:[]};let c=o[u],l=`CAT_${n}_${i}_${a}`,d=ah.cache.get(l,"long");if(d)return d;let f=[{ac:"videolist",pg:i},{ac:"detail",pg:i},{pg:i}],p;for(let A=0;A<f.length;A++)try{if(p=await ah.get(c.api,{params:f[A]},"long"),p&&p.data)break}catch{continue}if(!p||!p.data)return{page:i,pagecount:i,limit:20,total:0,list:[]};let h=p.data,m=bIe(h),y=[],g=a&&a!=="";for(let A=0;A<m.length&&y.length<50;A++){let _=m[A];if(!_)continue;let E=_.type_id?.toString()||_.tid?.toString();if(E&&c.paichuSet.has(E)||g&&!(_.type_name||_.type||"").includes(a))continue;let S=nLt(_,u);S&&y.push(S)}let v={page:i,pagecount:Number.parseInt(h.pagecount,10)||(y.length>0?i+1:i),limit:Number.parseInt(h.limit,10)||20,total:h.total||y.length,list:y};return y.length>0&&ah.cache.set(l,v,"long"),v}catch{return{page:n7(e.body?.page),pagecount:1,limit:20,total:0,list:[]}}}async function dun(e,t){try{let r=e.body?.id,n=aun(r);if(n.siteIndex<0||!n.vodId)return{list:[]};let i=`DET_${String(r||"")}`,s=ah.cache.get(i,"medium");if(s)return s;let a=n.vodId,o=lE(),u=vIe(n.siteIndex,o.length);if(u<0||!a)return{list:[]};let c=o[u],l,d=[{ac:"detail",ids:a},{ac:"videolist",ids:a},{ac:"detail",id:a},{ac:"videolist",id:a}];for(let A=0;A<d.length;A++)try{if(l=await ah.get(c.api,{params:d[A]},"medium"),l&&l.data)break}catch{continue}if(!l||!l.data)return{list:[]};let f=l.data,p=rLt(f);if(!p)return{list:[]};let h=p.vod_play_from||"\u91C7\u96C6\u8D44\u6E90",m=p.vod_play_url||p.url||"",y=run(h,m),v={list:[{vod_id:String(r||""),vod_name:p.vod_name||p.name||p.title||"",vod_pic:n.meta?.vod_pic||p.vod_pic||p.pic||p.img||"",vod_remarks:n.meta?.vod_remarks||p.vod_remarks||p.remarks||p.note||"",vod_year:p.vod_year||p.year||"",vod_score:p.vod_score||p.score||0,vod_content:p.vod_content||p.content||"",vod_type:p.type_name||p.type||"",vod_actor:p.vod_actor||p.actor||"",vod_director:p.vod_director||p.director||"",vod_area:p.vod_area||p.area||"",vod_play_from:y.vod_play_from,vod_play_url:y.vod_play_url}]};return ah.cache.set(i,v,"medium"),v}catch{return{list:[]}}}async function fun(e,t){try{let r=e.body||{},n=(r.wd||"").trim(),i=n7(r.page);if(!n)return{page:i,pagecount:i,limit:0,total:0,list:[]};let s=`SEARCH_${n}_${i}`,a=ah.cache.get(s,"long");if(a)return a;let o=lE(),u=[];for(let h=0;h<o.length;h++)o[h].bz!=="0"&&u.push({index:h,site:o[h]});if(u.length===0)return{list:[],page:i,pagecount:i,limit:0,total:0};let c=u.map(async({index:h,site:m})=>{try{let y={ac:"detail",wd:n,pg:i};m.api.includes("yparse.com")&&(y.ac="search");let g=await ah.get(m.api,{params:y},"short");if(!g||!g.data)return[];let v=g.data,A=bIe(v),_=[],E=n.toLowerCase();for(let S=0;S<A.length;S++){let C=A[S];if(!C)continue;let I=C.type_id?.toString()||C.tid?.toString();if(I&&m.paichuSet.has(I))continue;let N=C.vod_name||C.name||C.title||"";if(!String(N).toLowerCase().includes(E))continue;let T=nLt(C,h,`[${m.displayName}] `);T&&_.push(T)}return _}catch{return[]}}),l=await Promise.allSettled(c),d=[],f=new Set;for(let h=0;h<l.length;h++){let m=l[h];if(m.status==="fulfilled"&&m.value)for(let y=0;y<m.value.length;y++){let g=m.value[y];!g?.vod_id||f.has(g.vod_id)||(f.add(g.vod_id),d.push(g))}}let p={list:d,page:i,pagecount:i+(d.length>0?1:0),limit:d.length,total:d.length};return d.length>0&&ah.cache.set(s,p,"long"),p}catch{let n=n7(e.body?.page);return{list:[],page:n,pagecount:n,limit:0,total:0}}}async function pun(e,t){try{let r=e.body?.id;if(!r)return{parse:1,url:""};let n={"User-Agent":eLt,Referer:Zon};if(eun.test(r))return{parse:0,url:r,header:n};if(r.includes("@@")){let[i,s]=r.split("@@"),a=lE(),o=vIe(i,a.length);if(o>=0&&s)try{let u,c=[{ac:"detail",ids:s},{ac:"videolist",ids:s},{ac:"detail",id:s},{ac:"videolist",id:s}];for(let l=0;l<c.length;l++)try{if(u=await ah.get(a[o].api,{params:c[l]},"short"),u&&u.data)break}catch{continue}if(u&&u.data){let l=u.data,d=rLt(l);if(d){let f=d.vod_play_url||d.url||"";if(f){let p=nun(f);if(p)return{parse:0,url:p,header:n};let h=oun(f);if(h)return{parse:0,url:h,header:n}}}}}catch{}}return{parse:1,url:r,header:n}}catch{return{parse:1,url:e.body?.id||""}}}var sLt={meta:{key:"cj",name:"\u{1F4DA} \u91C7\u96C6",type:3,version:"1.0.1"},api:async e=>{setTimeout(()=>{lE(),iLt()},100),e.post("/init",uun),e.post("/home",cun),e.post("/category",lun),e.post("/detail",dun),e.post("/search",fun),e.post("/play",pun)}};Kt();var oLt="https://api.ztcgi.com",uLt=["https://img.ztfgh.com","https://nummeadf.top","https://kmakgsyj.top"],cLt=uLt[0],hun="Mozilla/5.0 (Linux; Android 9; V2196A Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36;webank/h5face;webank/1.0;netType:NETWORK_WIFI;appVersion:416;packageName:com.jp3.xg3",mun={"User-Agent":hun,Referer:oLt},gun=1e4,aLt=1,yun=6,lLt={init:{ttl:5*60*1e3,max:20},homeVod:{ttl:60*1e3,max:100},category:{ttl:30*1e3,max:300},detail:{ttl:2*60*1e3,max:500},search:{ttl:20*1e3,max:200}},EIe=null,dLt={init:new Map,homeVod:new Map,category:new Map,detail:new Map,search:new Map},i7=new Map,s7=[{key:"cateId",name:"\u5206\u7C7B",value:[{v:"1",n:"\u5267\u60C5"},{v:"2",n:"\u7231\u60C5"},{v:"3",n:"\u52A8\u753B"},{v:"4",n:"\u559C\u5267"},{v:"5",n:"\u6218\u4E89"},{v:"6",n:"\u6B4C\u821E"},{v:"7",n:"\u53E4\u88C5"},{v:"8",n:"\u5947\u5E7B"},{v:"9",n:"\u5192\u9669"},{v:"10",n:"\u52A8\u4F5C"},{v:"11",n:"\u79D1\u5E7B"},{v:"12",n:"\u60AC\u7591"},{v:"13",n:"\u72AF\u7F6A"},{v:"14",n:"\u5BB6\u5EAD"},{v:"15",n:"\u4F20\u8BB0"},{v:"16",n:"\u8FD0\u52A8"},{v:"18",n:"\u60CA\u609A"},{v:"20",n:"\u77ED\u7247"},{v:"21",n:"\u5386\u53F2"},{v:"22",n:"\u97F3\u4E50"},{v:"23",n:"\u897F\u90E8"},{v:"24",n:"\u6B66\u4FA0"},{v:"25",n:"\u6050\u6016"}]},{key:"area",name:"\u5730\u533A",value:[{v:"1",n:"\u56FD\u4EA7"},{v:"3",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"6",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"5",n:"\u7F8E\u56FD"},{v:"18",n:"\u97E9\u56FD"},{v:"2",n:"\u65E5\u672C"}]},{key:"year",name:"\u5E74\u4EE3",value:[{v:"107",n:"2025"},{v:"119",n:"2024"},{v:"153",n:"2023"},{v:"101",n:"2022"},{v:"118",n:"2021"},{v:"2015",n:"\u66F4\u65E9"}]},{key:"sort",name:"\u6392\u5E8F",init:"update",value:[{v:"update",n:"\u6700\u65B0"},{v:"hot",n:"\u6700\u70ED"},{v:"rating",n:"\u8BC4\u5206"}]}],_un=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],Aun={1:s7,2:s7,3:s7,4:s7};function vun(e,t=0){let r=Number.parseInt(e,10);return Number.isNaN(r)?t:r}function fLt(e){let t=vun(e,1);return t<=0?1:t}function SIe(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function bun(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}function Eun(e){return new Promise(t=>setTimeout(t,e))}function Sun(e={}){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))n!=null&&t.set(r,String(n));return t.toString()}function wun(e,t){let r=dLt[e],n=lLt[e];if(!r||!n)return null;let i=r.get(t);return i?Date.now()-i.timestamp>n.ttl?(r.delete(t),null):(r.delete(t),r.set(t,i),i.data):null}function Iun(e,t,r){let n=dLt[e],i=lLt[e];if(!(!n||!i)){if(n.size>=i.max){let s=Math.min(20,n.size),a=0;for(let o of n.keys())if(n.delete(o),a++,a>=s)break}n.set(t,{data:r,timestamp:Date.now()})}}async function qM(e,t={},r={}){let n=r.cacheType||"none",i=r.timeout||gun,s=Sun(t),a=`${oLt}${e}${s?`?${s}`:""}`,o=`${e}?${s}`;if(n!=="none"){let l=wun(n,o);if(l)return l}let u=`${n}:${o}`;if(i7.has(u))return i7.get(u);let c=(async()=>{let l=null;for(let d=0;d<=aLt;d++)try{let p=(await _e.get(a,{headers:mun,timeout:i})).data;return n!=="none"&&Iun(n,o,p),p}catch(f){l=f,d<aLt&&await Eun(150*(d+1))}throw l})();i7.set(u,c);try{return await c}finally{i7.delete(u)}}function dE(e){if(!e)return"";if(e.startsWith("http://")||e.startsWith("https://"))return e;let t=e.startsWith("/")?e:`/${e}`;return`${cLt}${t}`}function xun(e,t,r){let n=Array.isArray(e)?e:[];if(n.length===0)return Promise.resolve([]);let i=Math.max(1,Math.min(t,n.length)),s=new Array(n.length),a=0,o=async()=>{for(;;){let u=a++;if(u>=n.length)return;s[u]=await r(n[u],u)}};return Promise.all(Array.from({length:i},()=>o())).then(()=>s)}async function eC(){return EIe||(EIe=(async()=>{try{await qM("/api/appAuthConfig",{},{cacheType:"init",timeout:5e3})}catch{cLt=uLt[0]}return{}})()),EIe}function Cun(){return eC().catch(()=>{}),{class:_un,filters:Aun}}async function Tun(){await eC().catch(()=>{});try{return{list:((await qM("/api/slide/list",{pos_id:88},{cacheType:"homeVod",timeout:6e3}))?.data||[]).map(r=>({vod_id:SIe(r.jump_id,{vod_pic:dE(r.thumbnail),vod_remarks:"\u63A8\u8350"}),vod_name:r.title,vod_pic:dE(r.thumbnail),vod_remarks:"\u63A8\u8350"}))}}catch{return{list:[]}}}async function Nun(e){await eC().catch(()=>{});let t=String(e.body?.id||"").trim(),r=fLt(e.body?.page),n=e.body?.filters||{};if(!t)return{page:r,list:[]};let i={fcate_pid:t,category_id:"",area:n.area||"",year:n.year||"",type:n.cateId||"",sort:n.sort||"",page:r};try{let a=((await qM("/api/crumb/list",i,{cacheType:"category"}))?.data||[]).map(o=>({vod_id:SIe(o.id,{vod_pic:dE(o.path),vod_remarks:o.mask||""}),vod_name:o.title,vod_pic:dE(o.path),vod_remarks:o.mask||""}));return{page:r,list:a}}catch{return{page:r,list:[]}}}function Run(e){let r=(Array.isArray(e?.source_list_source)?e.source_list_source:[]).filter(s=>s?.name&&s.name!=="\u5E38\u89C4\u7EBF\u8DEF"),n=[],i=[];for(let s of r){n.push(s.name);let a=Array.isArray(s.source_list)?s.source_list:[];i.push(a.filter(o=>o?.url).map(o=>`${o.source_name||"\u64AD\u653E"}$${o.url}`).join("#"))}return{vod_id:e.id,vod_name:e.title,vod_year:e.year,vod_area:e.area,vod_remarks:e.mask,vod_content:e.description,vod_play_from:n.join("$$$"),vod_play_url:i.join("$$$"),vod_pic:dE(e.thumbnail)}}async function Dun(e){await eC().catch(()=>{});let r=(Array.isArray(e.body?.id)?e.body.id:[e.body?.id]).map(i=>bun(i)).filter(i=>i.id);return{list:(await xun(r,yun,async({id:i,meta:s})=>{try{let a=await qM("/api/video/detailv2",{id:i},{cacheType:"detail"});if(!a?.data)return null;let o=Run(a.data);return o.vod_pic=s?.vod_pic||o.vod_pic,o.vod_remarks=s?.vod_remarks||o.vod_remarks,o}catch{return null}})).filter(Boolean)}}async function kun(e){await eC().catch(()=>{});let t=String(e.body?.wd||"").trim(),r=fLt(e.body?.page);if(!t)return{page:r,list:[]};try{let i=((await qM("/api/v2/search/videoV2",{key:t,category_id:88,page:r,pageSize:20},{cacheType:"search"}))?.data||[]).map(o=>({vod_id:SIe(o.id,{vod_pic:dE(o.thumbnail),vod_remarks:o.mask||""}),vod_name:o.title,vod_pic:dE(o.thumbnail),vod_remarks:o.mask||""})),s=t.toLowerCase(),a=i.filter(o=>String(o.vod_name||"").toLowerCase().includes(s));return{page:r,list:a}}catch{return{page:r,list:[]}}}function Oun(e){let t=String(e.body?.id||"").trim();return t?{parse:0,url:t.startsWith("http")||t.startsWith("tvbox-xg:")?t:`tvbox-xg:${t}`}:{parse:0,url:""}}var pLt={meta:{key:"jianpian",name:"\u{1F3AC} \u8350\u7247",type:3},api:async e=>{e.post("/init",async(t,r)=>eC()),e.post("/home",(t,r)=>Cun()),e.post("/homeVod",async(t,r)=>Tun()),e.post("/category",async(t,r)=>Nun(t)),e.post("/detail",async(t,r)=>Dun(t)),e.post("/play",(t,r)=>Oun(t)),e.post("/search",async(t,r)=>kun(t))}};Kt();var Oo="https://www.ylys.tv",Pun=1e4,Mun=5e3,Lun=0,Bun=4,O0={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:Oo+"/",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3","Accept-Encoding":"gzip, deflate, br",Connection:"keep-alive","Upgrade-Insecure-Requests":"1"},wIe=class{constructor(){this.cache=new Map,this.inflight=new Map,this.ttl={home:3e5,homeVod:18e4,category:18e4,detail:6e5,search:6e4,play:3e4},this.maxSize=100,this.maxInflight=100}get(t,r="category"){let n=this.cache.get(t);if(!n)return null;let i=this.ttl[r]||18e4;return Date.now()-n.timestamp>i?(this.cache.delete(t),null):n.data}set(t,r,n="category"){if(this.cache.size>=this.maxSize){let i=this.cache.keys().next().value;this.cache.delete(i)}this.cache.set(t,{data:r,timestamp:Date.now(),type:n})}async getOrSet(t,r,n){let i=this.get(t,r);if(i!==null)return i;if(this.inflight.has(t))return this.inflight.get(t);let s=(async()=>{let a=await n();return this.set(t,a,r),a})();if(this.inflight.set(t,s),this.inflight.size>this.maxInflight){let a=this.inflight.keys().next().value;a&&a!==t&&this.inflight.delete(a)}try{return await s}finally{this.inflight.get(t)===s&&this.inflight.delete(t)}}clear(){this.cache.clear(),this.inflight.clear()}},jM=new wIe,$un=e=>new Promise(t=>setTimeout(t,e));async function Fun(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let u=i++;if(u>=e.length)break;n[u]=await r(e[u],u)}},a=Math.min(t,e.length),o=new Array(a);for(let u=0;u<a;u++)o[u]=s();return await Promise.all(o),n}async function HM(e,t,r=2,n=Pun){let i=null;for(let s=0;s<=r;s++)try{return await _e.get(e,{timeout:n,...t})}catch(a){i=a,s<r&&await $un(500*(s+1))}throw i}var IIe=class{constructor(){this.jsp=new i_,this.regexCache={detailId:/detail\/(\d+)/,m3u8Url:/"url"\s*:\s*"([^"]+\.m3u8)"/,iframeSrc:/<iframe[^>]+src="([^"]+)"/i,videoSrc:/<video[^>]+src="([^"]+)"/i,jsVideoUrl:/var\s+\w+\s*=\s*['"]([^'"]+\.(?:m3u8|mp4|flv))['"]/,playId:/\/play\/([^/]+)\//}}getList(t){let r=[],n=new Set;if(!t)return r;let i=this.jsp.pdfa(t,".module-item,.module-card-item"),s=i.length;for(let a=0;a<s;a++){let o=i[a];try{let u=this.jsp.pdfh(o,"a&&href");if(!u)continue;let c=u.match(this.regexCache.detailId);if(!c)continue;let l=c[1];if(n.has(l))continue;let d=this.jsp.pdfh(o,"a&&title");if(d||(d=this.jsp.pdfh(o,"strong&&Text")||this.jsp.pdfh(o,".module-card-item-title&&Text")),!d)continue;let f=this.jsp.pdfh(o,"img&&data-original")||this.jsp.pdfh(o,"img&&src");f&&f[0]==="/"&&(f=Oo+f);let p=this.jsp.pdfh(o,".module-item-note&&Text")||this.jsp.pdfh(o,".module-card-item-note&&Text");r.push({vod_id:Uun(l,{vod_pic:f||"",vod_remarks:p?p.trim():""}),vod_name:d.trim(),vod_pic:f||"",vod_remarks:p?p.trim():""}),n.add(l)}catch{}}return r}sortPlayLines(t,r){if(!t||!r)return{playFrom:t||"",playUrl:r||""};let n=t.split("$$$"),i=r.split("$$$"),s=n.length;if(s!==i.length)return{playFrom:t,playUrl:r};let a=[];for(let o=0;o<s;o++)a.push({from:n[o],url:i[o],isMainland:n[o].includes("\u5927\u9646")});return a.sort((o,u)=>o.isMainland&&!u.isMainland?-1:!o.isMainland&&u.isMainland?1:0),{playFrom:a.map(o=>o.from).join("$$$"),playUrl:a.map(o=>o.url).join("$$$")}}async extractRealPlayUrl(t){try{let r=`${Oo}/play/${t}/`,n=await HM(r,{headers:{...O0,Referer:Oo},timeout:8e3}),i=n.data||n.body||"",s=i.match(this.regexCache.m3u8Url);if(s)return{parse:0,url:s[1].replace(/\\/g,"")};let a=i.match(this.regexCache.iframeSrc);if(a){let c=a[1];return c[0]==="/"&&(c=c[1]==="/"?"https:"+c:Oo+c),{parse:1,url:c}}let o=i.match(this.regexCache.videoSrc);if(o)return{parse:0,url:o[1]};let u=this.regexCache.jsVideoUrl.exec(i);if(u){let c=u[1];if(c.includes(".m3u8")||c.includes(".mp4"))return{parse:0,url:c}}return{parse:1,url:r}}catch{return{parse:1,url:`${Oo}/play/${t}/`}}}},fE=new IIe;function Uun(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function qun(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var jun=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"}],Hun={1:[{key:"class",name:"\u7C7B\u578B",value:[{n:"\u5168\u90E8",v:""},{n:"\u52A8\u4F5C\u7247",v:"6"},{n:"\u559C\u5267\u7247",v:"7"},{n:"\u7231\u60C5\u7247",v:"8"},{n:"\u79D1\u5E7B\u7247",v:"9"},{n:"\u6050\u6016\u7247",v:"11"}]}],2:[{key:"class",name:"\u7C7B\u578B",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7\u5267",v:"13"},{n:"\u6E2F\u53F0\u5267",v:"14"},{n:"\u65E5\u5267",v:"15"},{n:"\u97E9\u5267",v:"33"},{n:"\u6B27\u7F8E\u5267",v:"16"}]}],3:[{key:"class",name:"\u7C7B\u578B",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730\u7EFC\u827A",v:"27"},{n:"\u6E2F\u53F0\u7EFC\u827A",v:"28"},{n:"\u65E5\u672C\u7EFC\u827A",v:"29"},{n:"\u97E9\u56FD\u7EFC\u827A",v:"36"}]}],4:[{key:"class",name:"\u7C7B\u578B",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7\u52A8\u6F2B",v:"31"},{n:"\u65E5\u672C\u52A8\u6F2B",v:"32"},{n:"\u6B27\u7F8E\u52A8\u6F2B",v:"42"},{n:"\u5176\u4ED6\u52A8\u6F2B",v:"43"}]}]};async function Kun(){return{}}async function Vun(){return{class:jun,filters:Hun}}async function zun(){try{return jM.getOrSet("homeVod_data","homeVod",async()=>{let t=await HM(Oo,{headers:O0}),r=t.data||t.body||"";return{list:fE.getList(r)}})}catch{return{list:[]}}}async function Qun(e){try{let t=e.body||{},r=t.id,n=Number.parseInt(t.page,10)||1,s=(t.filters||{}).class||r;if(!s)return{page:1,pagecount:1,total:0,list:[]};let a=`category_${s}_${n}`;return jM.getOrSet(a,"category",async()=>{let o=n>1?`${Oo}/vodtype/${s}/page/${n}/`:`${Oo}/vodtype/${s}/`,u=await HM(o,{headers:O0}),c=fE.getList(u.data||u.body||"");return{page:n,pagecount:n+1,total:c.length,list:c}})}catch{return{page:1,pagecount:1,total:0,list:[]}}}async function Gun(e){try{let t=e.body||{},r=Array.isArray(t.id)?t.id:[t.id];return{list:(await Fun(r,Bun,async i=>{let s=qun(i),a=String(s.id||"").trim();if(!a)return null;let o=`detail_${a}`;return jM.getOrSet(o,"detail",async()=>{let u=await HM(`${Oo}/voddetail/${a}/`,{headers:O0}),c=u.data||u.body||"",l=fE.jsp,d=l.pdfh(c,"h1&&Text")||"";if(!d)return null;let f=l.pdfh(c,"img&&data-original")||l.pdfh(c,"img&&src")||"",p=f&&f[0]==="/"?Oo+f:f,h=l.pdfh(c,".introduction-content p&&Text")||l.pdfh(c,".module-info-introduction-content&&Text")||"",m=l.pdfh(c,".module-info-item-content&&Text")||l.pdfh(c,".module-item-note&&Text")||"",y=l.pdfa(c,".module-tab-item"),g=[];for(let E=0;E<y.length;E++){let S=l.pdfh(y[E],"span&&Text")||l.pdfh(y[E],"a&&Text")||"\u7EBF\u8DEF";g.push(S.trim())}let v=l.pdfa(c,".module-play-list-content"),A=[];for(let E=0;E<v.length;E++){let S=l.pdfa(v[E],"a"),C=[];for(let I=0;I<S.length;I++){let N=l.pdfh(S[I],"span&&Text")||"\u64AD\u653E",k=(l.pdfh(S[I],"a&&href")||"").match(fE.regexCache.playId);C.push(`${N}$${k?k[1]:""}`)}A.push(C.join("#"))}let _=fE.sortPlayLines(g.join("$$$"),A.join("$$$"));return{vod_id:a,vod_name:d.trim(),vod_pic:s.meta?.vod_pic||p,vod_remarks:s.meta?.vod_remarks||m.trim(),vod_content:h.trim(),vod_play_from:_.playFrom,vod_play_url:_.playUrl}})})).filter(Boolean)}}catch{return{list:[]}}}async function Yun(e){try{let t=e.body||{},r=t.wd||"",n=Number.parseInt(t.page,10)||1;if(!r.trim())return{page:1,pagecount:1,total:0,list:[]};let i=`search_${r}_${n}`;return jM.getOrSet(i,"search",async()=>{let s=encodeURIComponent(r),a=n>1?`${Oo}/vodsearch/${s}-------------/page/${n}/`:`${Oo}/vodsearch/${s}-------------/`,o=await HM(a,{headers:O0},Lun,Mun),u=fE.getList(o.data||o.body||"");return{page:n,pagecount:n+1,total:u.length,list:u}})}catch{return{page:1,pagecount:1,total:0,list:[]}}}async function Wun(e){let t=String(e?.body?.id||"");try{if(!t)return{parse:1,url:`${Oo}/play/`,header:O0};if(t.includes(".m3u8")||t.includes(".mp4")||t.includes(".flv"))return{parse:0,url:t,header:O0};let r=await jM.getOrSet(`play_${t}`,"play",async()=>fE.extractRealPlayUrl(t));return r.header={...O0,Referer:Oo},r}catch{return{parse:1,url:`${Oo}/play/${t}/`,header:O0}}}var hLt={meta:{key:"ylys",name:"\u{1F3AC} \u6C38\u4E50",type:3},api:async e=>{e.post("/init",Kun),e.post("/home",Vun),e.post("/homeVod",zun),e.post("/category",Qun),e.post("/detail",Gun),e.post("/play",Wun),e.post("/search",Yun)}};var xIe=class extends Cs{constructor(){super("ouge")}},mLt=new xIe,gLt=e=>mLt.getCache(e);async function CIe(e){mLt.createRoutes(e)}var Xun=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],Jun=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],Zun=[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],TIe=class extends Ki{constructor(){super("\u6B27\u54E5","ouge",{key:"ouge",name:"\u2601\uFE0F \u6B27\u54E5",type:3},gLt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u7535\u5F71",type_id:"1"},{type_name:"\u5267\u96C6",type_id:"2"},{type_name:"\u52A8\u6F2B",type_id:"3"},{type_name:"\u77ED\u5267",type_id:"5"},{type_name:"\u7EFC\u827A",type_id:"4"},{type_name:"\u7EFC\u5408",type_id:"21"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],21:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:Zun,letter:Xun,by:Jun,"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u5386\u53F2",n:"\u5386\u53F2"}],"1.area":[{v:"+\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u5386\u53F2",n:"\u5386\u53F2"}],"2.area":[{v:"+\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.class":[{v:"+\u7537\u9891",n:"\u7537\u9891"},{v:"\u5973\u9891",n:"\u5973\u9891"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u751C\u5BA0",n:"\u751C\u5BA0"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u7A7F\u8D8A",n:"\u7A7F\u8D8A"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u4EB2\u60C5",n:"\u4EB2\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u840C\u5B9D",n:"\u840C\u5B9D"},{v:"\u91CD\u751F",n:"\u91CD\u751F"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u9006\u88AD",n:"\u9006\u88AD"},{v:"\u8650\u604B",n:"\u8650\u604B"},{v:"\u9274\u5B9D",n:"\u9274\u5B9D"},{v:"\u590D\u4EC7",n:"\u590D\u4EC7"},{v:"\u4FEE\u4ED9",n:"\u4FEE\u4ED9"}],"5.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.class":[{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u64AD\u62A5",n:"\u64AD\u62A5"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u6E38\u620F\u4E92\u52A8",n:"\u6E38\u620F\u4E92\u52A8"},{v:"\u8D22\u7ECF",n:"\u8D22\u7ECF"},{v:"\u6C42\u804C",n:"\u6C42\u804C"}],"4.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}]}}},ecn=new TIe,yLt=ecn.getExports();var NIe=class extends Cs{constructor(){super("labi")}},_Lt=new NIe,ALt=e=>_Lt.getCache(e);async function RIe(e){_Lt.createRoutes(e)}var tcn=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],rcn=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],ncn=[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],icn=[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"}],DIe=class extends Ki{constructor(){super("\u8721\u7B14","labi",{key:"labi",name:"\u2601\uFE0F \u8721\u7B14",type:3},ALt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u8721\u7B14\u7535\u5F71",type_id:"1"},{type_name:"\u8721\u7B14\u5267\u96C6",type_id:"2"},{type_name:"\u8721\u7B14\u52A8\u6F2B",type_id:"3"},{type_name:"\u8721\u7B14\u7EFC\u827A",type_id:"4"},{type_name:"\u81FB\u5F694K",type_id:"24"},{type_name:"\u8721\u7B14\u81FB\u5F69",type_id:"29"},{type_name:"\u8721\u7B14\u77ED\u5267",type_id:"5"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],24:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],29:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:ncn,letter:tcn,by:rcn,"24.year":icn,"1.id":[{v:"6",n:"\u79D1\u5E7B"},{v:"7",n:"\u7231\u60C5"},{v:"8",n:"\u6218\u4E89"},{v:"9",n:"\u6050\u6016"},{v:"10",n:"\u9AD8\u7801"},{v:"11",n:"\u52A8\u753B"},{v:"12",n:"\u52A8\u4F5C"},{v:"23",n:"\u753B\u8D28\u63A7"}],"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.id":[{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"14",n:"\u65E5\u97E9\u5267"},{v:"15",n:"\u6B27\u7F8E\u5267"},{v:"16",n:"\u6E2F\u53F0\u5267"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.id":[{v:"22",n:"\u65E5\u97E9"},{v:"20",n:"\u56FD\u4EA7"},{v:"21",n:"\u6B27\u7F8E"}],"4.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"24.id":[{v:"26",n:"4K\u7535\u5F71"},{v:"27",n:"4K\u5267\u96C6"},{v:"28",n:"4K\u52A8\u6F2B"}],"24.area":[{v:"\u4E2D\u56FD",n:"\u4E2D\u56FD"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}]}}},scn=new DIe,vLt=scn.getExports();var kIe=class extends Cs{constructor(){super("kuaiying")}},bLt=new kIe,ELt=e=>bLt.getCache(e);async function OIe(e){bLt.createRoutes(e)}var acn=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],ocn=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],ucn=[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],ccn=[{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],PIe=class extends Ki{constructor(){super("\u5FEB\u6620","kuaiying",{key:"kuaiying",name:"\u2601\uFE0F \u5FEB\u6620",type:3},ELt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u5F71",type_id:"1"},{type_name:"\u5267",type_id:"2"},{type_name:"\u7EFC",type_id:"3"},{type_name:"\u6F2B",type_id:"4"},{type_name:"\u77ED",type_id:"6"},{type_name:"\u7CBE",type_id:"5"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],6:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:ucn,letter:acn,by:ocn,"5.year":ccn,"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u4F20\u8BB0",n:"\u4F20\u8BB0"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u4F26\u7406",n:"\u4F26\u7406"},{v:"\u707E\u96BE",n:"\u707E\u96BE"},{v:"\u897F\u90E8",n:"\u897F\u90E8"},{v:"\u9B54\u5E7B",n:"\u9B54\u5E7B"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u8BB0\u5F55",n:"\u8BB0\u5F55"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5076\u50CF",n:"\u5076\u50CF"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u8A00\u60C5",n:"\u8A00\u60C5"},{v:"\u519B\u4E8B",n:"\u519B\u4E8B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u795E\u8BDD",n:"\u795E\u8BDD"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u8C0D\u6218",n:"\u8C0D\u6218"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"},{v:"\u9999\u6E2F\u5730\u533A",n:"\u9999\u6E2F\u5730\u533A"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.class":[{v:"\u771F\u4EBA\u79C0",n:"\u771F\u4EBA\u79C0"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u53E3\u79C0",n:"\u53E3\u79C0"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u6E38\u620F",n:"\u6E38\u620F"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u65F6\u5C1A",n:"\u65F6\u5C1A"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u804C\u573A",n:"\u804C\u573A"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u76DB\u4F1A",n:"\u76DB\u4F1A"}],"3.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.class":[{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.class":[{v:"\u592E\u89C6\u76F4\u64AD",n:"\u592E\u89C6\u76F4\u64AD"},{v:"\u5730\u65B9\u76F4\u64AD",n:"\u5730\u65B9\u76F4\u64AD"},{v:"\u7EFC\u827A\u8282\u76EE",n:"\u7EFC\u827A\u8282\u76EE"},{v:"\u5A31\u4E50\u8D44\u8BAF",n:"\u5A31\u4E50\u8D44\u8BAF"}],"5.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}]}}},lcn=new PIe,SLt=lcn.getExports();var MIe=class extends Cs{constructor(){super("huban")}},wLt=new MIe,ILt=e=>wLt.getCache(e);async function LIe(e){wLt.createRoutes(e)}var dcn=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],fcn=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],pcn=[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],hcn=[{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"}],BIe=class extends Ki{constructor(){super("\u864E\u6591","huban",{key:"huban",name:"\u2601\uFE0F \u864E\u6591",type:3},ILt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u5C0F\u864E\u6591\u5F71",type_id:"1"},{type_name:"\u5C0F\u864E\u6591\u5267",type_id:"2"},{type_name:"\u5C0F\u864E\u6591\u7EFC",type_id:"3"},{type_name:"\u5C0F\u864E\u6591\u6F2B",type_id:"4"},{type_name:"\u5C0F\u864E\u6591\u77ED",type_id:"6"},{type_name:"\u5C0F\u864E\u6591\u7CBE",type_id:"5"},{type_name:"115",type_id:"30"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],6:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],5:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:pcn,letter:dcn,by:fcn,"5.year":hcn,"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u4F20\u8BB0",n:"\u4F20\u8BB0"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u4F26\u7406",n:"\u4F26\u7406"},{v:"\u707E\u96BE",n:"\u707E\u96BE"},{v:"\u897F\u90E8",n:"\u897F\u90E8"},{v:"\u9B54\u5E7B",n:"\u9B54\u5E7B"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u8BB0\u5F55",n:"\u8BB0\u5F55"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5076\u50CF",n:"\u5076\u50CF"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u8A00\u60C5",n:"\u8A00\u60C5"},{v:"\u519B\u4E8B",n:"\u519B\u4E8B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u90FD\u5E02",n:"\u90FD\u5E02"},{v:"\u795E\u8BDD",n:"\u795E\u8BDD"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u8C0D\u6218",n:"\u8C0D\u6218"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5E74\u4EE3",n:"\u5E74\u4EE3"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"}],"2.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"},{v:"\u9999\u6E2F\u5730\u533A",n:"\u9999\u6E2F\u5730\u533A"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.class":[{v:"\u771F\u4EBA\u79C0",n:"\u771F\u4EBA\u79C0"},{v:"\u8BBF\u8C08",n:"\u8BBF\u8C08"},{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u9009\u79C0",n:"\u9009\u79C0"},{v:"\u65C5\u6E38",n:"\u65C5\u6E38"},{v:"\u7F8E\u98DF",n:"\u7F8E\u98DF"},{v:"\u53E3\u79C0",n:"\u53E3\u79C0"},{v:"\u66F2\u827A",n:"\u66F2\u827A"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u6E38\u620F",n:"\u6E38\u620F"},{v:"\u6B4C\u821E",n:"\u6B4C\u821E"},{v:"\u751F\u6D3B",n:"\u751F\u6D3B"},{v:"\u97F3\u4E50",n:"\u97F3\u4E50"},{v:"\u65F6\u5C1A",n:"\u65F6\u5C1A"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u804C\u573A",n:"\u804C\u573A"},{v:"\u5C11\u513F",n:"\u5C11\u513F"},{v:"\u7EAA\u5B9E",n:"\u7EAA\u5B9E"},{v:"\u76DB\u4F1A",n:"\u76DB\u4F1A"}],"3.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"4.id":[{v:"31",n:"\u65E5\u672C\u52A8\u6F2B"},{v:"32",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"33",n:"\u52A8\u6F2B\u7535\u5F71"},{v:"34",n:"\u6B27\u7F8E\u52A8\u6F2B"}],"4.class":[{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"5.class":[{v:"\u592E\u89C6\u76F4\u64AD",n:"\u592E\u89C6\u76F4\u64AD"},{v:"\u5730\u65B9\u76F4\u64AD",n:"\u5730\u65B9\u76F4\u64AD"},{v:"\u7EFC\u827A\u8282\u76EE",n:"\u7EFC\u827A\u8282\u76EE"},{v:"\u5A31\u4E50\u8D44\u8BAF",n:"\u5A31\u4E50\u8D44\u8BAF"}],"5.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"5.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}]}}},mcn=new BIe,xLt=mcn.getExports();var $Ie=class extends Cs{constructor(){super("erxiao")}},CLt=new $Ie,TLt=e=>CLt.getCache(e);async function FIe(e){CLt.createRoutes(e)}var gcn=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],ycn=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],_cn=[{v:"2026",n:"2026"},{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"}],UIe=class extends Ki{constructor(){super("\u4E8C\u5C0F","erxiao",{key:"erxiao",name:"\u2601\uFE0F \u4E8C\u5C0F",type:3},TLt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u4E8C\u5C0F\u7535\u5F71",type_id:"1"},{type_name:"\u4E8C\u5C0F\u5267\u96C6",type_id:"2"},{type_name:"\u4E8C\u5C0F\u52A8\u6F2B",type_id:"3"},{type_name:"\u4E8C\u5C0F\u771F\u5F69",type_id:"22"},{type_name:"\u4E8C\u5C0F\u7EFC\u827A",type_id:"21"}],this.filterData={1:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],22:[{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],21:[{name:"\u5267\u60C5",key:"class"},{name:"\u5730\u533A",key:"area"},{name:"\u8BED\u8A00",key:"lang"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={year:_cn,letter:gcn,by:ycn,"1.class":[{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u7231\u60C5",n:"\u7231\u60C5"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u8B66\u532A",n:"\u8B66\u532A"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u753B",n:"\u52A8\u753B"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u6B66\u4FA0",n:"\u6B66\u4FA0"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u67AA\u6218",n:"\u67AA\u6218"},{v:"\u6050\u6016",n:"\u6050\u6016"},{v:"\u60AC\u7591",n:"\u60AC\u7591"},{v:"\u60CA\u609A",n:"\u60CA\u609A"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u9752\u6625",n:"\u9752\u6625"},{v:"\u6587\u827A",n:"\u6587\u827A"},{v:"\u5FAE\u7535\u5F71",n:"\u5FAE\u7535\u5F71"},{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u519C\u6751",n:"\u519C\u6751"},{v:"\u513F\u7AE5",n:"\u513F\u7AE5"},{v:"\u7F51\u7EDC\u7535\u5F71",n:"\u7F51\u7EDC\u7535\u5F71"}],"1.area":[{v:"\u5927\u9646",n:"\u5927\u9646"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u610F\u5927\u5229",n:"\u610F\u5927\u5229"},{v:"\u897F\u73ED\u7259",n:"\u897F\u73ED\u7259"},{v:"\u52A0\u62FF\u5927",n:"\u52A0\u62FF\u5927"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u6CD5\u8BED",n:"\u6CD5\u8BED"},{v:"\u5FB7\u8BED",n:"\u5FB7\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"2.class":[{v:"\u53E4\u88C5",n:"\u53E4\u88C5"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u9752\u6625\u5076\u50CF",n:"\u9752\u6625\u5076\u50CF"},{v:"\u559C\u5267",n:"\u559C\u5267"},{v:"\u5BB6\u5EAD",n:"\u5BB6\u5EAD"},{v:"\u72AF\u7F6A",n:"\u72AF\u7F6A"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u5947\u5E7B",n:"\u5947\u5E7B"},{v:"\u5267\u60C5",n:"\u5267\u60C5"},{v:"\u5386\u53F2",n:"\u5386\u53F2"},{v:"\u7ECF\u5178",n:"\u7ECF\u5178"},{v:"\u4E61\u6751",n:"\u4E61\u6751"},{v:"\u60C5\u666F",n:"\u60C5\u666F"},{v:"\u5546\u6218",n:"\u5546\u6218"},{v:"\u7F51\u5267",n:"\u7F51\u5267"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u9999\u6E2F",n:"\u9999\u6E2F"},{v:"\u53F0\u6E7E",n:"\u53F0\u6E7E"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u65B0\u52A0\u5761",n:"\u65B0\u52A0\u5761"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"3.area":[{v:"\u5185\u5730",n:"\u5185\u5730"},{v:"\u6E2F\u53F0",n:"\u6E2F\u53F0"},{v:"\u65E5\u97E9",n:"\u65E5\u97E9"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"}],"3.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}],"21.class":[{v:"\u60C5\u611F",n:"\u60C5\u611F"},{v:"\u79D1\u5E7B",n:"\u79D1\u5E7B"},{v:"\u70ED\u8840",n:"\u70ED\u8840"},{v:"\u63A8\u7406",n:"\u63A8\u7406"},{v:"\u641E\u7B11",n:"\u641E\u7B11"},{v:"\u5192\u9669",n:"\u5192\u9669"},{v:"\u841D\u8389",n:"\u841D\u8389"},{v:"\u6821\u56ED",n:"\u6821\u56ED"},{v:"\u52A8\u4F5C",n:"\u52A8\u4F5C"},{v:"\u673A\u6218",n:"\u673A\u6218"},{v:"\u8FD0\u52A8",n:"\u8FD0\u52A8"},{v:"\u6218\u4E89",n:"\u6218\u4E89"},{v:"\u5C11\u5E74",n:"\u5C11\u5E74"},{v:"\u5C11\u5973",n:"\u5C11\u5973"},{v:"\u793E\u4F1A",n:"\u793E\u4F1A"},{v:"\u539F\u521B",n:"\u539F\u521B"},{v:"\u4EB2\u5B50",n:"\u4EB2\u5B50"},{v:"\u76CA\u667A",n:"\u76CA\u667A"},{v:"\u52B1\u5FD7",n:"\u52B1\u5FD7"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"21.area":[{v:"\u56FD\u4EA7",n:"\u56FD\u4EA7"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6B27\u7F8E",n:"\u6B27\u7F8E"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"21.lang":[{v:"\u56FD\u8BED",n:"\u56FD\u8BED"},{v:"\u82F1\u8BED",n:"\u82F1\u8BED"},{v:"\u7CA4\u8BED",n:"\u7CA4\u8BED"},{v:"\u95FD\u5357\u8BED",n:"\u95FD\u5357\u8BED"},{v:"\u97E9\u8BED",n:"\u97E9\u8BED"},{v:"\u65E5\u8BED",n:"\u65E5\u8BED"},{v:"\u5176\u5B83",n:"\u5176\u5B83"}]}}},Acn=new UIe,NLt=Acn.getExports();Kt();var mu=Se(di(),1),$4t=Se(L4t(),1),F4t=Se(require("https"),1),P0={url:"https://api.w32z7vtd.com",token:"1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",privateKey:`-----BEGIN PRIVATE KEY----- -MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1 -ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU -1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK -ZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7 -HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcW -V9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdI -DblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34 -saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVM -iMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUM -WBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8 -jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ -K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b -L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa -t5lYKfpe8k83ZA== ------END PRIVATE KEY-----`},WM={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},GM={parse:0,url:""};function U4t(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function wdn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}var Idn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"}],xdn={1:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"\u66F4\u65E9",v:"2004"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"India"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"}]},{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:"0"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"\u6392\u5E8F",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},JIe=class{constructor(){this.cache=new Map,this.ttlConfig={category:3e5,detail:6e5,play:3e5,search:6e4},this.maxSize=200}get(t){let r=this.cache.get(t);if(!r)return null;let n=this.ttlConfig[r.type]||3e5;return Date.now()-r.timestamp>n?(this.cache.delete(t),null):r.data}set(t,r,n="category"){this.cache.size>=this.maxSize&&this.clearOldest(50),this.cache.set(t,{data:r,timestamp:Date.now(),type:n})}clear(){this.cache.clear()}clearOldest(t=20){let r=Math.min(t,this.cache.size),n=0;for(let i of this.cache.keys())if(this.cache.delete(i),n++,n>=r)break}getStats(){let t={total:this.cache.size,byType:{}};for(let r of this.cache.values())t.byType[r.type]=(t.byType[r.type]||0)+1;return t}},k7=new JIe,B4t={"8k":100,"4k":95,2160:90,1440:85,1080:80,720:70,\u8D85\u6E05:75,\u9AD8\u6E05:65,\u6807\u6E05:55,480:50,360:40,\u6D41\u7545:30,240:20,144:10};function Cdn(e,t){if(!t||typeof t!="object"||Array.isArray(t))return`${e}:${JSON.stringify(t)}`;let r=Object.entries(t).sort(([n],[i])=>n.localeCompare(i));return`${e}:${JSON.stringify(Object.fromEntries(r))}`}function Tdn(e){if(!e||typeof e!="object")return[];let t=[];for(let[r,n]of Object.entries(e))n?.param&&t.push({resolution:r,param:n.param,priority:ZIe(r)});return t.sort((r,n)=>n.priority-r.priority),t}function ZIe(e){if(!e)return 0;let t=e.toLowerCase().replace(/p$/i,"");if(Object.prototype.hasOwnProperty.call(B4t,t))return B4t[t];let r=parseInt(t,10);return isNaN(r)?1:r>=4320?100:r>=2160?90:r>=1440?85:r>=1080?80:r>=720?70:r>=480?50:r>=360?40:30}var exe=class{constructor(){this.aesKey=mu.default.enc.Utf8.parse("mvXBSW7ekreItNsT"),this.aesIv=mu.default.enc.Utf8.parse("2U3IrJL8szAKp0Fj"),this.staticKeys="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",this.rsa=new $4t.default(P0.privateKey),this.rsa.setOptions({encryptionScheme:"pkcs1"})}md5(t){return mu.default.MD5(t).toString()}aesEncrypt(t){try{return mu.default.AES.encrypt(t,this.aesKey,{iv:this.aesIv,mode:mu.default.mode.CBC,padding:mu.default.pad.Pkcs7}).ciphertext.toString(mu.default.enc.Hex).toUpperCase()}catch{return""}}aesDecrypt(t,r,n){try{let i=mu.default.enc.Utf8.parse(r),s=mu.default.enc.Utf8.parse(n),a=mu.default.enc.Hex.parse(t);return mu.default.AES.decrypt({ciphertext:a},i,{iv:s,mode:mu.default.mode.CBC,padding:mu.default.pad.Pkcs7}).toString(mu.default.enc.Utf8)}catch{return""}}rsaDecrypt(t){try{return this.rsa.decrypt(Buffer.from(t,"base64"),"utf8")}catch{return""}}generateSignature(t,r){let n=`token_id=,token=${P0.token},phone_type=1,request_key=${t},app_id=1,time=${r},keys=${this.staticKeys}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return this.md5(n)}},YM=new exe,txe=class{constructor(){let t=new F4t.default.Agent({keepAlive:!0,keepAliveMsecs:1e3,maxSockets:50,maxFreeSockets:10,scheduling:"lifo",rejectUnauthorized:!1});this.axiosConfig={httpsAgent:t,timeout:1e4,headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:P0.url,"Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},this.retryConfig={maxRetries:2,retryDelay:1e3},this.inflightRequests=new Map}clearInflight(){this.inflightRequests.clear()}async request(t,r,n="category",i=this.retryConfig.maxRetries){let s=Cdn(r,t);if(n!=="none"){let c=k7.get(s);if(c)return c}let a=`${n}:${s}`,o=this.inflightRequests.get(a);if(o)return o;let u=(async()=>{let c=null;for(let l=0;l<=i;l++)try{let d=YM.aesEncrypt(JSON.stringify(t));if(!d)throw new Error("AES\u52A0\u5BC6\u5931\u8D25");let f=Math.floor(Date.now()/1e3).toString(),p=YM.generateSignature(d,f),h=new URLSearchParams({token:P0.token,token_id:"",phone_type:"1",time:f,phone_model:"xiaomi-22021211rc",keys:YM.staticKeys,request_key:d,signature:p,app_id:"1",ad_version:"1"}).toString(),m=await _e.post(`${P0.url}${r}`,h,{...this.axiosConfig,headers:{...this.axiosConfig.headers,Referer:P0.url},timeout:8e3+l*2e3});if(m.status!==200||!m.data?.data)throw new Error(`API\u54CD\u5E94\u5F02\u5E38: ${m.status}`);let y=YM.rsaDecrypt(m.data.data.keys);if(!y)throw new Error("RSA\u89E3\u5BC6\u5931\u8D25");let g=JSON.parse(y),v=YM.aesDecrypt(m.data.data.response_key,g.key,g.iv);if(!v)throw new Error("AES\u89E3\u5BC6\u5931\u8D25");let A=JSON.parse(v);return n!=="none"&&A&&k7.set(s,A,n),A}catch(d){c=d,l<i&&await new Promise(f=>setTimeout(f,this.retryConfig.retryDelay*(l+1)))}return console.error(`API\u8BF7\u6C42\u6700\u7EC8\u5931\u8D25 [${r}] after ${i} retries:`,c?.message),null})();this.inflightRequests.set(a,u);try{return await u}finally{this.inflightRequests.delete(a)}}},dC=new txe;async function Ndn(e){let t=e.server.config?.guazi;return t&&(t.url&&(P0.url=t.url),t.token&&(P0.token=t.token)),{}}async function Rdn(){return{class:Idn,filters:xdn}}async function Ddn(e){let{id:t,page:r=1,filters:n={}}=e.body,i=await dC.request({area:n.area||"0",year:n.year||"0",pageSize:"30",sort:n.sort||"d_id",page:r.toString(),tid:t},WM.INDEX_LIST,"category");return{list:(i?.list||[]).map(a=>({vod_id:U4t(a.vod_id,{vod_pic:a.vod_pic||"",vod_remarks:(a.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${a.vod_continu}\u96C6`}),vod_name:a.vod_name||"",vod_pic:a.vod_pic||"",vod_remarks:(a.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${a.vod_continu}\u96C6`})),page:parseInt(r,10),pagecount:i?.totalPage||9999,limit:30,total:i?.total||999999}}async function kdn(e){let r=(Array.isArray(e.body.id)?e.body.id:[e.body.id]).map(async i=>{if(!i)return null;let s=wdn(i),a=String(s.id||"").trim();if(!a)return null;try{let[o,u]=await Promise.all([dC.request({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),token:P0.token},WM.PLAY_INFO,"detail"),dC.request({vurl_cloud_id:"2",vod_d_id:a},WM.VURL_SHOW,"detail")]);if(!o?.vodInfo)return null;let c=o.vodInfo,l={vod_id:a,vod_name:c.vod_name||"",vod_pic:s.meta?.vod_pic||c.vod_pic||"",vod_year:c.vod_year||"",vod_area:c.vod_area||"",vod_actor:c.vod_actor||"",vod_director:c.vod_director||"",vod_remarks:s.meta?.vod_remarks||(c.vod_continu?`\u66F4\u65B0\u81F3${c.vod_continu}\u96C6`:""),vod_content:(c.vod_use_content||"").trim(),vod_play_from:"\u55F7\u545C\u8981\u5403\u74DC"},d=[];return u?.list&&u.list.forEach((f,p)=>{let h=Tdn(f?.play);if(h.length===0)return;let m=u.list.length===1?c.vod_name||"":(p+1).toString(),y=h[0].param,g=h.map(A=>A.resolution),v=`${y}||${g.join("@")}`;d.push(`${m}$${v}`)}),l.vod_play_url=d.join("#"),l}catch{return null}});return{list:(await Promise.all(r)).filter(i=>i!==null)}}async function Odn(e){let{id:t}=e.body;try{if(!t)return GM;let r=String(t).split("||");if(r.length<2)return GM;let n=r[0],i=r[1].split("@").filter(Boolean),s=Object.fromEntries(new URLSearchParams(n));if(Object.keys(s).length===0)return GM;i.length>0&&(i.sort((o,u)=>ZIe(u)-ZIe(o)),s.resolution=i[0]);let a=await dC.request(s,WM.VURL_DETAIL,"play");return a?.url?{parse:0,url:a.url}:GM}catch{return GM}}async function Pdn(e){let{wd:t,page:r=1}=e.body,n=String(t||"").trim();if(!n)return{list:[],page:1,pagecount:0,total:0};let i=await dC.request({keywords:n,order_val:"1",page:r.toString()},WM.FIND_MORE,"search"),s=i?.list||[];if(s.length>0){let o=n.toLowerCase();s=s.filter(u=>u.vod_name&&u.vod_name.toLowerCase().includes(o))}return{list:s.map(o=>({vod_id:U4t(o.vod_id||"",{vod_pic:o.vod_pic||"",vod_remarks:(o.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${o.vod_continu}\u96C6`}),vod_name:o.vod_name||"",vod_pic:o.vod_pic||"",vod_remarks:(o.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${o.vod_continu}\u96C6`})),page:parseInt(r,10),pagecount:i?.totalPage||9999,limit:30,total:i?.total||999999}}async function Mdn(){return k7.clear(),dC.clearInflight(),{success:!0,message:"\u7F13\u5B58\u5DF2\u6E05\u7A7A"}}async function Ldn(){let e=k7.getStats();return{success:!0,stats:e,message:`\u7F13\u5B58\u7EDF\u8BA1\uFF1A\u603B\u8BA1${e.total}\u6761`}}var q4t={meta:{key:"guazi",name:"\u{1F3AC} \u74DC\u5B50",type:3},api:async e=>{e.post("/init",Ndn),e.post("/home",Rdn),e.post("/category",Ddn),e.post("/detail",kdn),e.post("/play",Odn),e.post("/search",Pdn),e.get("/clear-cache",Mdn),e.get("/cache-stats",Ldn)}};Kt();var yE=Se(di(),1),zn={keys:"d3dGiJc651gSQ8w1",charMap:{"+":"P","/":"X",0:"M",1:"U",2:"l",3:"E",4:"r",5:"Y",6:"W",7:"b",8:"d",9:"J",A:"9",B:"s",C:"a",D:"I",E:"0",F:"o",G:"y",H:"_",I:"H",J:"G",K:"i",L:"t",M:"g",N:"N",O:"A",P:"8",Q:"F",R:"k",S:"3",T:"h",U:"f",V:"R",W:"q",X:"C",Y:"4",Z:"p",a:"m",b:"B",c:"O",d:"u",e:"c",f:"6",g:"K",h:"x",i:"5",j:"T",k:"-",l:"2",m:"z",n:"S",o:"Z",p:"1",q:"V",r:"v",s:"j",t:"Q",u:"7",v:"D",w:"w",x:"n",y:"L",z:"e"},headers:{default:{"User-Agent":"okhttp/3.12.11","content-type":"application/json; charset=utf-8"}},platform:{\u661F\u82BD:{host:"https://app.whjzjx.cn",url1:"/cloud/v2/theater/home_page?theater_class_id",url2:"/v2/theater_parent/detail",search:"/v3/search",classes:"/cloud/v2/theater/classes",rankDetail:"/cloud/v1/first_level_ranking/detail",loginUrl:"https://u.shytkjgs.com/user/v1/account/login"},\u897F\u996D:{host:"https://xifan-api-cn.youlishipin.com",url1:"/xifan/drama/portalPage",url2:"/xifan/drama/getDuanjuInfo",search:"/xifan/search/getSearchList"},\u4E03\u732B:{host:"https://api-store.qmplaylet.com",url1:"/api/v1/playlet/index",url2:"https://api-read.qmplaylet.com/player/api/v1/playlet/info",search:"/api/v1/playlet/search"},\u56F4\u89C2:{host:"https://api.drama.9ddm.com",url1:"/drama/home/shortVideoTags",url2:"/drama/home/shortVideoDetail",search:"/drama/home/search"},\u6CB3\u9A6C:{host:"https://www.kuaikaw.cn",search:"/seo/video/6007"}},platformList:[{name:"\u4E03\u732B\u77ED\u5267",id:"\u4E03\u732B"},{name:"\u661F\u82BD\u77ED\u5267",id:"\u661F\u82BD"},{name:"\u897F\u996D\u77ED\u5267",id:"\u897F\u996D"},{name:"\u56F4\u89C2\u77ED\u5267",id:"\u56F4\u89C2"},{name:"\u6CB3\u9A6C\u77ED\u5267",id:"\u6CB3\u9A6C"}],search:{limit:30,timeout:6e3}},XM={\u661F\u82BD:{area:"1",class2:"0",rank:"1"},\u897F\u996D:{area:"\u90FD\u5E02"},\u4E03\u732B:{area:"0"},\u56F4\u89C2:{area:""},\u6CB3\u9A6C:{area:"462"}},Bdn={\u4E03\u732B:[{key:"area",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u7537\u9891",v:"1"},{n:"\u65B0\u5267",v:"3"},{n:"\u73B0\u4EE3\u8A00\u60C5",v:"21"},{n:"\u795E\u8C6A",v:"37"},{n:"\u840C\u5B9D",v:"356"},{n:"\u7A7F\u8D8A",v:"373"},{n:"\u6218\u795E",v:"527"},{n:"\u795E\u533B",v:"1269"},{n:"\u53E4\u88C5",v:"1272"}]}],\u661F\u82BD:[{key:"area",name:"\u5267\u573A",value:[{n:"\u5267\u573A",v:"1"},{n:"\u70ED\u64AD\u77ED\u5267",v:"2"},{n:"\u4F1A\u5458\u4E13\u4EAB",v:"8"},{n:"\u661F\u9009\u597D\u5267",v:"7"},{n:"\u65B0\u5267",v:"3"},{n:"\u9633\u5149\u5267\u573A",v:"5"},{n:"\u6392\u884C\u699C",v:"9"}]},{key:"class2",name:"\u7C7B\u578B",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u90FD\u5E02",v:"4"},{n:"\u9006\u88AD",v:"7"},{n:"\u53E4\u88C5",v:"5"},{n:"\u4EB2\u60C5",v:"41"},{n:"\u73B0\u4EE3\u8A00\u60C5",v:"15"},{n:"\u91CD\u751F",v:"6"},{n:"\u8650\u604B",v:"8"},{n:"\u7384\u5E7B",v:"35"},{n:"\u7A7F\u8D8A",v:"17"},{n:"\u8111\u6D1E",v:"32"},{n:"\u751C\u5BA0",v:"33"},{n:"\u53E4\u4EE3\u8A00\u60C5",v:"37"},{n:"\u6218\u795E",v:"24"},{n:"\u5386\u53F2",v:"40"},{n:"\u8D58\u5A7F",v:"26"},{n:"\u840C\u5B9D",v:"9"},{n:"\u795E\u533B",v:"25"}]},{key:"rank",name:"\u699C\u5355",value:[{n:"\u5B9E\u65F6\u70ED\u699C",v:"1"},{n:"\u70ED\u641C\u699C",v:"2"},{n:"\u65B0\u5267\u699C",v:"3"},{n:"\u5267\u5355\u699C",v:"4"},{n:"\u53E3\u7891\u699C",v:"5"}]}],\u897F\u996D:[{key:"area",name:"\u5206\u7C7B",value:[{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u6218\u795E",v:"\u6218\u795E"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"}]}],\u56F4\u89C2:[{key:"area",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:""},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u603B\u88C1",v:"\u603B\u88C1"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u6218\u795E",v:"\u6218\u795E"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u795E\u8C6A",v:"\u795E\u8C6A"},{n:"\u795E\u533B",v:"\u795E\u533B"},{n:"\u8D58\u5A7F",v:"\u8D58\u5A7F"}]}],\u6CB3\u9A6C:[{key:"area",name:"\u5206\u7C7B",value:[{n:"\u751C\u5BA0",v:"462"},{n:"\u53E4\u88C5\u4ED9\u4FA0",v:"1102"},{n:"\u73B0\u4EE3\u8A00\u60C5",v:"1145"},{n:"\u9752\u6625",v:"1170"},{n:"\u8C6A\u95E8\u6069\u6028",v:"585"},{n:"\u9006\u88AD",v:"417-464"},{n:"\u91CD\u751F",v:"439-465"},{n:"\u7CFB\u7EDF",v:"1159"},{n:"\u603B\u88C1",v:"1147"},{n:"\u804C\u573A\u5546\u6218",v:"943"}]}]},ms={filterOptions:null,qmHeader:{value:null,timestamp:0},xingyaToken:null,xingyaHeaders:zn.headers.default,tokenKey:"juhua_duanju_xingya_token",charMap:zn.charMap};function H4t(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function bf(e,t,r=1,n=e.length,i=e.length){return{list:e,page:t,pagecount:r,limit:n,total:i}}function $dn(e,t){return String(e||"").toLowerCase().includes(t)}function j4t(e,t,r,n=""){!r||!r.vod_id||!r.vod_name||n&&!$dn(r.vod_name,n)||t&&t.has(r.vod_id)||(t&&t.add(r.vod_id),e.push(r))}function K4t(e){return yE.default.enc.Base64.stringify(yE.default.enc.Utf8.parse(e))}function Fdn(e){return yE.default.enc.Utf8.stringify(yE.default.enc.Base64.parse(e))}function rxe(e){try{let t=String(e||"").match(/<script id="__NEXT_DATA__" type="application\/json">([\s\S]*?)<\/script>/);return t?.[1]?JSON.parse(t[1]):null}catch{return null}}function Udn(e){return e?.bookId?{vod_id:`\u6CB3\u9A6C@/drama/${e.bookId}`,vod_name:e.bookName,vod_pic:e.coverWap,vod_remarks:`${e.statusDesc||(e.status===1?"\u5B8C\u672C":"\u66F4\u65B0\u4E2D")||""} ${e.totalChapterNum||""}\u96C6`.trim()}:null}function qdn(){return Math.random().toString(36).slice(2,18)}function fC(e="https://www.kuaikaw.cn"){return{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0",Referer:e,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}}function jdn(e){return{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0",Referer:e,Origin:"https://www.kuaikaw.cn","Content-Type":"application/json",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",pname:"www.kuaikaw.cn",tmpid:qdn()}}async function nxe(e,t={}){let{method:r="GET",headers:n={},body:i,timeout:s=8e3}=t,a=r.toUpperCase()==="POST",o=i&&typeof i=="object"?JSON.stringify(i):i;try{let u=await _e(e,{method:r,headers:n,data:a?o:null,timeout:s,responseType:"text"});return typeof u.data=="string"?u.data:JSON.stringify(u.data)}catch{return""}}function Hdn(){return ms.filterOptions||(ms.filterOptions=Bdn),ms.filterOptions}async function Mo(e,t={}){let{method:r="GET",headers:n={},body:i,timeout:s=5e3}=t,a=r.toUpperCase()==="POST",o=i&&typeof i=="object"?JSON.stringify(i):i;try{return(await _e(e,{method:r,headers:{...zn.headers.default,...n},data:a?o:null,timeout:s})).data}catch{return null}}async function Kdn(e,t={}){let{method:r="GET",headers:n={},body:i,timeout:s=8e3,maxRedirects:a=5,validateStatus:o}=t,u=r.toUpperCase()==="POST",c=i&&typeof i=="object"?JSON.stringify(i):i;try{return await _e(e,{method:r,headers:{...zn.headers.default,...n},data:u?c:null,timeout:s,maxRedirects:a,validateStatus:o||(l=>l>=200&&l<400)})}catch(l){return l?.response||null}}async function Vdn(e,t={}){let r=await Kdn(e,{...t,maxRedirects:0,validateStatus:n=>n>=200&&n<400});return r?r.headers?.location||r.request?.res?.responseUrl||r.config?.url||e:""}async function D_(e){return yE.default.MD5(e).toString(yE.default.enc.Hex).toLowerCase()}async function zdn(){let e=Date.now();if(ms.qmHeader.value&&e-ms.qmHeader.timestamp<3e5)return ms.qmHeader.value;let r={static_score:"0.8",uuid:"00000000-7fc7-08dc-0000-000000000000","device-id":"20250220125449b9b8cac84c2dd3d035c9052a2572f7dd0122edde3cc42a70",sourceuid:"aa7de295aad621a6","refresh-type":"0",model:"22021211RC","client-id":"aa7de295aad621a6",brand:"Redmi","sys-ver":"12","phone-level":"H","wlb-uid":"aa7de295aad621a6","session-id":e.toString()},n=JSON.stringify(r),i=K4t(unescape(encodeURIComponent(n))),s="",a=ms.charMap;for(let c=0;c<i.length;c++)s+=a[i[c]]||i[c];let o=`AUTHORIZATION=app-version=10001application-id=com.duoduo.readchannel=unknownis-white=net-env=5platform=androidqm-params=${s}reg=${zn.keys}`,u=await D_(o);return ms.qmHeader.value={qmParams:s,sign:u},ms.qmHeader.timestamp=e,ms.qmHeader.value}async function O7(){let{qmParams:e,sign:t}=await zdn();return{"net-env":"5",reg:"",channel:"unknown","is-white":"",platform:"android","application-id":"com.duoduo.read",authorization:"","app-version":"10001","user-agent":"webviewversion/0","qm-params":e,sign:t}}async function P7(e){if(ms.xingyaHeaders.authorization)return ms.xingyaHeaders;try{let t=e?await e.db.getObjectDefault(ms.tokenKey,{}):{};if(t.token)return ms.xingyaHeaders={...zn.headers.default,authorization:t.token},ms.xingyaToken=t.token,ms.xingyaHeaders}catch{}try{let t=await Mo(zn.platform.\u661F\u82BD.loginUrl,{method:"POST",headers:{"User-Agent":"okhttp/4.10.0",platform:"1","Content-Type":"application/json"},body:{device:"24250683a3bdb3f118dff25ba4b1cba1a"},timeout:1e4}),r=t?.data?.token||t?.token;r&&(ms.xingyaHeaders={...zn.headers.default,authorization:r},ms.xingyaToken=r,e&&await e.db.push(ms.tokenKey,{token:r}))}catch{ms.xingyaHeaders=zn.headers.default}return ms.xingyaHeaders}async function Qdn(e,t){return P7(e.server).catch(()=>{}),{}}async function Gdn(e,t){let r=zn.platformList.map(s=>({type_name:s.name,type_id:s.id})),n={},i=Hdn();return zn.platformList.forEach(s=>{let a=s.id;i[a]&&(n[a]=i[a])}),{class:r,filters:n}}async function Ydn(e,t){let r="\u4E03\u732B",n=XM[r]?.area||"";try{let i=zn.platform[r],s=await D_(`operation=1playlet_privacy=1tag_id=${n}${zn.keys}`),a=`${i.host}${i.url1}?tag_id=${n}&playlet_privacy=1&operation=1&sign=${s}`,o=await O7(),u=await Mo(a,{headers:{...o,...zn.headers.default},timeout:3e3});if(u?.data?.list)return{list:u.data.list.slice(0,6).map(l=>({vod_id:`\u4E03\u732B@${encodeURIComponent(l.playlet_id)}`,vod_name:l.title,vod_pic:l.image_link,vod_remarks:`${l.total_episode_num}\u96C6`,vod_content:`\u4E03\u732B\u77ED\u5267 | ${l.total_episode_num}\u96C6`}))}}catch{}return{list:[]}}async function Wdn(e,t){let r=e.body||{},n=r.id,i=H4t(r.page),s=r.filters||{},a=zn.platform[n],o=(s?.area!==void 0?s.area:XM[n]?.area)||"",u=[];if(!a)return{list:u,page:i,pagecount:1,limit:0,total:0};try{if(n==="\u4E03\u732B"){if(i>1)return bf([],i,1,0,0);let c=await D_(`operation=1playlet_privacy=1tag_id=${o}${zn.keys}`),l=`${a.host}${a.url1}?tag_id=${o}&playlet_privacy=1&operation=1&sign=${c}`,d=await O7(),p=(await Mo(l,{headers:{...d,...zn.headers.default}}))?.data?.list||[];return p.forEach(h=>u.push({vod_id:`\u4E03\u732B@${encodeURIComponent(h.playlet_id)}`,vod_name:h.title,vod_pic:h.image_link,vod_remarks:`${h.total_episode_num}\u96C6`})),bf(u,i,1,p.length,p.length)}if(n==="\u661F\u82BD"){let c=await P7(e.server);if(o==="9"){let v=s?.rank||s?.class2||XM.\u661F\u82BD.rank||"1";if(i>1)return bf([],i,1,0,0);let _=(await Mo(`${a.host}${a.rankDetail}?id=${v}`,{headers:c,timeout:1e4}))?.data?.list||[];return _.forEach(E=>{let S=E.theater||E;S?.id&&u.push({vod_id:`\u661F\u82BD@${a.host}${a.url2}?theater_parent_id=${S.id}`,vod_name:S.title,vod_pic:S.cover_url,vod_remarks:`${S.total||""}\u96C6`})}),bf(u,i,1,_.length,_.length)}let l=s?.class2||XM.\u661F\u82BD.class2||"0",d=`${a.host}${a.url1}=${o}&type=1&class2_ids=${l}&page_num=${i}&page_size=24`,p=(await Mo(d,{headers:c,timeout:1e4}))?.data||{},h=p?.list||[];h.forEach(v=>{let A=v.theater||v;A?.id&&u.push({vod_id:`\u661F\u82BD@${a.host}${a.url2}?theater_parent_id=${A.id}`,vod_name:A.title,vod_pic:A.cover_url,vod_remarks:`${A.total||""}\u96C6`})});let m=Number(p?.total)||h.length;if(!h.length||p?.is_end===!0||m<=h.length||h.length>24)return bf(i>1?[]:u,i,1,i>1?0:h.length,m);let g=Math.max(1,Math.ceil(m/24));return bf(u,i,g,24,m)}if(n==="\u897F\u996D"){let c=o;if(i>1)return bf([],i,1,0,0);let l=`${a.host}${a.search}?reqType=search&offset=0&keyword=${encodeURIComponent(c||"")}&quickEngineVersion=-1&scene=`,f=(await Mo(l,{timeout:1e4}))?.result?.elements||[];for(let p of f){let h=Array.isArray(p?.contents)?p.contents:[];for(let m of h){let y=m?.duanjuVo||{};if(!y.duanjuId)continue;let g=Array.isArray(y.categories)?y.categories:[];c&&!g.includes(c)||u.push({vod_id:`\u897F\u996D@${y.duanjuId}#${y.source}`,vod_name:y.title,vod_pic:y.coverImageUrl,vod_remarks:`${y.total||""}\u96C6`})}}return bf(u,i,1,u.length,u.length)}if(n==="\u56F4\u89C2"){let c="Pixel 8 Pro",l="Google",d=await D_(String(Date.now()).slice(-10)),f=`${a.host}${a.search}?version_code=1500&version_name=1.5.0&device_name=${encodeURIComponent(c)}&device_type=phone&is_first_day=true&is_first_24h=true&app_launch_way=icon&default_homepage=homepage_interaction&device_owning_firm=${encodeURIComponent(l)}&font_scale=default&os_type=1&clientInfo=${d}`,h=(await Mo(f,{method:"POST",headers:{"User-Agent":"okhttp/5.1.0","Content-Type":"application/json; charset=utf-8"},body:{audience:"\u5168\u90E8",order:"\u6700\u65B0",page:i,pageSize:30,searchWord:"",subject:o||""},timeout:1e4}))?.data||[];return h.forEach(m=>u.push({vod_id:`\u56F4\u89C2@${m.oneId}`,vod_name:m.title,vod_pic:m.horzPoster||m.vertPoster,vod_remarks:`${m.episodeCount||""}\u96C6`})),bf(u,i,h.length<30?i:i+1,30,(i-1)*30+h.length)}if(n==="\u6CB3\u9A6C"){let c=`${a.host}/browse/${o||XM.\u6CB3\u9A6C.area}/${i}`,l=await nxe(c,{headers:fC(c),timeout:1e4}),f=rxe(l)?.props?.pageProps||{},p=f.bookList||[];for(let h of p)h?.bookId&&u.push({vod_id:`\u6CB3\u9A6C@/drama/${h.bookId}`,vod_name:h.bookName,vod_pic:h.coverWap,vod_remarks:`${h.statusDesc||""} ${h.totalChapterNum||""}\u96C6`.trim()});return bf(u,i,Number(f.pages)||i,p.length,(Number(f.pages)||i)*p.length)}}catch{}return{list:u,page:i,pagecount:1,limit:u.length,total:u.length}}async function Xdn(e,t){let r=e.body?.id,i=(Array.isArray(r)?r:[r]).filter(Boolean).map(async a=>{let[o,...u]=a.split("@"),c=u.join("@"),l=zn.platform[o];if(!l)return{vod_id:a,vod_name:"\u5E73\u53F0\u4E0D\u652F\u6301",vod_play_url:""};let d={vod_id:a,vod_name:"\u672A\u77E5",vod_pic:"",vod_remarks:"",vod_content:"",vod_play_from:"",vod_play_url:""};try{if(o==="\u4E03\u732B"){let f=decodeURIComponent(c),p=await D_(`playlet_id=${f}${zn.keys}`),h=`${l.url2}?playlet_id=${f}&sign=${p}`,m=await O7(),y=await Mo(h,{headers:{...m,...zn.headers.default}});if(y?.data){let g=y.data;d={...d,vod_name:g.title,vod_pic:g.image_link,vod_remarks:`${g.total_episode_num}\u96C6`,vod_content:g.intro,vod_play_from:"\u4E03\u732B\u77ED\u5267",vod_play_url:(g.play_list||[]).map(v=>`${v.sort}$${v.video_url}`).join("#")}}}else if(o==="\u661F\u82BD"){let f=await P7(e.server),p=await Mo(c,{headers:f,timeout:1e4});if(p?.data){let h=p.data,m=(h.theaters||[]).map(y=>`${y.num}$${y.son_video_url}`).join("#");d={...d,vod_name:h.title,vod_pic:h.cover_url,vod_remarks:h.desc_tags+"",vod_play_from:"\u661F\u82BD\u77ED\u5267",vod_play_url:m}}}else if(o==="\u897F\u996D"){let[f,p]=c.split("#"),h=`${l.host}${l.url2}?duanjuId=${f}&source=${p}`,m=await Mo(h);if(m?.result){let y=m.result,g=(y.episodeList||[]).map(v=>`${v.index}$${v.playUrl}`).join("#");d={...d,vod_name:y.title,vod_pic:y.coverImageUrl,vod_remarks:y.updateStatus==="over"?`${y.total}\u96C6 \u5DF2\u5B8C\u7ED3`:`\u66F4\u65B0${y.total}\u96C6`,vod_play_from:"\u897F\u996D\u77ED\u5267",vod_play_url:g}}}else if(o==="\u56F4\u89C2"){let f="Pixel 8 Pro",p="Google",h=await D_(String(Date.now()).slice(-10)),m=`${l.host}${l.url2}?version_code=1500&version_name=1.5.0&device_name=${encodeURIComponent(f)}&device_type=phone&is_first_day=true&is_first_24h=true&app_launch_way=icon&default_homepage=homepage_interaction&device_owning_firm=${encodeURIComponent(p)}&font_scale=default&os_type=1&clientInfo=${h}&oneId=${c}&page=1&pageSize=1000&userId=0&queryAll=true`,y=await Mo(m,{headers:{"User-Agent":"okhttp/5.1.0","Content-Type":"application/json; charset=utf-8"},timeout:1e4});if(y?.data?.length){let g=y.data;d={...d,vod_name:y.title||g[0]?.title||d.vod_name,vod_pic:y.vertPoster||g[0]?.vertPoster||"",vod_remarks:`\u5171${g.length}\u96C6`,vod_content:y.description||"",vod_play_from:"\u56F4\u89C2\u77ED\u5267",vod_play_url:g.map(v=>`${v.playOrder||v.title}$${K4t(JSON.stringify(v.videoClarityList||[]))}`).join("#")}}}else if(o==="\u6CB3\u9A6C"){let f=c.startsWith("/drama/")?c:`/drama/${c}`,p=await nxe(`${l.host}${f}`,{headers:fC(`${l.host}${f}`),timeout:1e4}),m=rxe(p)?.props?.pageProps||{},y=m.bookInfoVo||{},g=m.chapterList||[];d={...d,vod_name:y.title||y.bookName||d.vod_name,vod_pic:y.coverWap||"",vod_remarks:`${y.statusDesc||""} ${y.totalChapterNum||""}\u96C6`.trim(),vod_content:y.introduction||"",vod_play_from:"\u6CB3\u9A6C\u77ED\u5267",vod_play_url:g.map(v=>{let A=v.chapterId,_=v.chapterName,E=v.chapterVideoVo||{},S=E.mp4||E.mp4720p||E.vodMp4Url;return`${_}$${S&&/\.(mp4|m3u8)/.test(S)?S:`${f.replace("/drama/","")}+${A}`}`}).join("#")}}}catch{d.vod_name="\u52A0\u8F7D\u5931\u8D25"}return d});return{list:await Promise.all(i)}}async function Jdn(e,t){let r=e.body?.flag||"",n=e.body?.id;if(/七猫/.test(r))return{parse:0,url:n};if(/西饭/.test(r))return{parse:0,url:await Vdn(n,{headers:{"User-Agent":"Mozilla/5.0"},timeout:1e4})||n};if(/围观/.test(r))try{let i=JSON.parse(Fdn(n)),s=[];for(let a of i||[])a?.name&&a?.url&&s.push(a.name,a.url);return{parse:0,url:s.length?s:n,headers:{"User-Agent":"okhttp/5.1.0"}}}catch{return{parse:0,url:n}}if(/河马/.test(r)){if(/\.(mp4|m3u8)(\?|$)/i.test(n))return{parse:0,url:n,header:fC()};let i=String(n||"").split("+");if(i.length>=2){let[s,a]=i,o=`${zn.platform.\u6CB3\u9A6C.host}/episode/${s}/${a}`,u=await nxe(o,{headers:fC(o),timeout:1e4}),l=rxe(u)?.props?.pageProps?.chapterInfo?.chapterVideoVo||{};return{parse:0,url:l.mp4||l.mp4720p||l.vodMp4Url||(String(u).match(/(https?:\/\/[^"']+\.mp4[^"']*)/)||[])[1]||"",header:fC()}}return{parse:0,url:n,header:fC()}}return{parse:0,url:n}}async function Zdn(e,t){let r=(e.body?.wd||"").trim(),n=H4t(e.body?.page),i=[],s=new Set;if(!r)return{list:i,page:n,pagecount:1,limit:0,total:0};let a=r.toLowerCase(),o=[];o.push((async()=>{try{let c=await D_(`operation=2playlet_privacy=1search_word=${r}${zn.keys}`),l=`${zn.platform.\u4E03\u732B.host}${zn.platform.\u4E03\u732B.search}?search_word=${encodeURIComponent(r)}&playlet_privacy=1&operation=2&sign=${c}`,d=await O7();((await Mo(l,{headers:{...d,...zn.headers.default},timeout:zn.search.timeout}))?.data?.list||[]).forEach(p=>{j4t(i,s,{vod_id:`\u4E03\u732B@${encodeURIComponent(p.playlet_id)}`,vod_name:p.title,vod_pic:p.image_link,vod_remarks:`\u4E03\u732B\u77ED\u5267\uFF5C${p.total_episode_num}\u96C6`},a)})}catch{}})());let u=["\u661F\u82BD","\u897F\u996D","\u56F4\u89C2","\u6CB3\u9A6C"];for(let c of u)o.push((async()=>{let l=zn.platform[c];try{let d,f;if(c==="\u661F\u82BD"){let p=await P7(e.server);d=await Mo(l.host+l.search,{method:"POST",headers:p,body:{text:r},timeout:1e4}),f=(d?.data?.theater?.search_data||[]).map(h=>({vod_id:`\u661F\u82BD@${l.host}${l.url2}?theater_parent_id=${h.id}`,vod_name:h.title,vod_pic:h.cover_url,vod_remarks:`\u661F\u82BD\u77ED\u5267\uFF5C${h.total}\u96C6 \u64AD\u653E:${h.play_amount_str}`}))}else if(c==="\u897F\u996D"){let p=`${l.host}${l.search}?reqType=search&offset=${(n-1)*30}&keyword=${encodeURIComponent(r)}&quickEngineVersion=-1&scene=`;d=await Mo(p),f=(d?.result?.elements||[]).map(h=>{let m=h.duanjuVo||{};return{vod_id:`\u897F\u996D@${m.duanjuId}#${m.source}`,vod_name:m.title,vod_pic:m.coverImageUrl,vod_remarks:`\u897F\u996D\u77ED\u5267\uFF5C${m.total}\u96C6`}})}else if(c==="\u56F4\u89C2"){let p="Pixel 8 Pro",h="Google",m=await D_(String(Date.now()).slice(-10));d=await Mo(`${l.host}${l.search}?version_code=1500&version_name=1.5.0&device_name=${encodeURIComponent(p)}&device_type=phone&is_first_day=true&is_first_24h=true&app_launch_way=icon&default_homepage=homepage_interaction&device_owning_firm=${encodeURIComponent(h)}&font_scale=default&os_type=1&clientInfo=${m}`,{method:"POST",headers:{"User-Agent":"okhttp/5.1.0","Content-Type":"application/json; charset=utf-8"},body:{audience:"",order:"",page:n,pageSize:30,searchWord:r,subject:""},timeout:1e4}),f=(d?.data||[]).map(y=>({vod_id:`\u56F4\u89C2@${y.oneId}`,vod_name:y.title,vod_pic:y.horzPoster||y.vertPoster,vod_remarks:`\u56F4\u89C2\u77ED\u5267\uFF5C${y.episodeCount||""}\u96C6`}))}else c==="\u6CB3\u9A6C"&&(d=await Mo(`${l.host}${l.search}`,{method:"POST",headers:jdn(`${l.host}/search?searchValue=${encodeURIComponent(r)}`),body:{sourceType:1,keyword:r,index:n},timeout:1e4}),f=(Array.isArray(d?.data?.bookList)?d.data.bookList:[]).map(Udn).filter(Boolean));if(f)for(let p of f)j4t(i,s,p,a)}catch{}})());return await Promise.all(o),bf(i,n)}var V4t={meta:{key:"juhua_duanju",name:"\u{1F4DA} \u77ED\u5267",type:3,version:"1.0.1"},api:async e=>{e.post("/init",Qdn),e.post("/home",Gdn),e.post("/homeVod",Ydn),e.post("/category",Wdn),e.post("/detail",Xdn),e.post("/play",Jdn),e.post("/search",Zdn)}};Kt();var zi="https://v.aikanbot.com",efn="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",z4t=20,ixe={"User-Agent":efn};function M7(e){try{return e.server.address().url||""}catch{return""}}function tfn(e){return e?e.startsWith("http://")||e.startsWith("https://")?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${zi}${e}`:`${zi}/${e.replace(/^\.?\//,"")}`:""}function pC(e,t="",r=""){let n=tfn(e);if(!n)return"";let i=n.startsWith("http")&&!n.includes("aikanbot.com"),s=n.includes("doubanio.com");if(!t||!i&&!s)return n;let a=r;if(s&&(a="https://movie.douban.com"),!a)try{let c=new URL(n);a=`${c.protocol}//${c.host}`}catch{a=zi}let o=encodeURIComponent(n),u=encodeURIComponent(a);return`${t}/proxy?do=image&url=${o}&referer=${u}`}async function _E(e,t={},r=15e3){try{return(await _e.get(e,{headers:{...ixe,...t},timeout:r})).data}catch{return null}}function rfn(e){let t=e("#current_id").val(),r=e("#e_token").val();if(!t||!r)return"";let n=t.length,i=t.substring(n-4,n),s=[];for(let a=0;a<i.length;a++){let u=parseInt(i[a],10)%3+1;s[a]=r.substring(u,u+8),r=r.substring(u+8)}return s.join("")}function Q4t(e="",t={}){return JSON.stringify({path:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function nfn(e=""){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.path)return{path:String(t.path||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{path:String(e||"").trim(),meta:{}}}async function ifn(e,t){return{}}async function sfn(e,t){let r=M7(e),n=[],i=await _E(`${zi}/hot/index-movie-\u70ED\u95E8.html`);if(i){let c=Jr.load(i)("title:first").text().split("-")[0].substring(2)||"\u7535\u5F71";n.push({type_id:"/hot/index-movie-\u70ED\u95E8.html",type_name:c})}else n.push({type_id:"/hot/index-movie-\u70ED\u95E8.html",type_name:"\u7535\u5F71"});let s=await _E(`${zi}/hot/index-tv-\u70ED\u95E8.html`);if(s){let c=Jr.load(s)("title:first").text().split("-")[0].substring(2)||"\u7535\u89C6\u5267";n.push({type_id:"/hot/index-tv-\u70ED\u95E8.html",type_name:c})}else n.push({type_id:"/hot/index-tv-\u70ED\u95E8.html",type_name:"\u7535\u89C6\u5267"});let a=[],o=await _E(zi);if(o){let u=Jr.load(o);u("div.v-list a.item").each((l,d)=>{let f=u(d).find("img:first"),p=f.attr("data-src")||f.attr("src")||"";a.push({vod_id:Q4t(u(d).attr("href"),{vod_pic:pC(p,r,zi),vod_remarks:u(d).find(".label").text()||""}),vod_name:f.attr("alt")||u(d).find(".title").text()||"\u672A\u77E5\u6807\u9898",vod_pic:pC(p,r,zi),vod_remarks:u(d).find(".label").text()||""})})}return{class:n,list:a.slice(0,20)}}async function afn(e,t){let r=String(e.body?.id||"").trim(),n=Number.parseInt(e.body?.page,10)||1,i=M7(e);if(!r)return{list:[],page:n,pagecount:0};let s=r;s.includes(".html")&&n>1&&!s.includes("-p-")&&(s=s.replace(".html",`-p-${n}.html`));let a=`${zi}${s}`,o=await _E(a);if(!o)return{list:[],page:n,pagecount:1};let u=Jr.load(o),c=u("div.v-list a.item"),l=[];return c.each((d,f)=>{let p=u(f).find("img:first"),h=p.attr("data-src")||p.attr("src")||"";l.push({vod_id:Q4t(u(f).attr("href"),{vod_pic:pC(h,i,zi),vod_remarks:u(f).find(".label").text()||""}),vod_name:p.attr("alt")||u(f).text().trim(),vod_pic:pC(h,i,zi),vod_remarks:u(f).find(".label").text()||""})}),{list:l,page:n,pagecount:l.length>=z4t?n+1:n}}async function ofn(e,t){let r=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],n=M7(e),i=[];for(let s of r){let a=nfn(s),o=a.path;if(!o)continue;let u=await _E(`${zi}${o}`);if(!u)continue;let c=Jr.load(u),l=c("div.detail"),d=c("div.item-root > img"),f=d.attr("data-src")||d.attr("src")||"",p=rfn(c),h=o.substring(o.lastIndexOf("/")+1),m=`${zi}/api/getResN?videoId=${h}&mtype=2&token=${p}`,y={};try{let I=(await _e.get(m,{headers:{...ixe,Referer:zi},timeout:15e3}))?.data?.data?.list||[];for(let N of I)try{let T=JSON.parse(N.resData);for(let k of T){let O=k.flag,P=k.url;!O||!P||y[O]||(y[O]=P)}}catch{}}catch{}let g=[];for(let C in y)C!=="bfzym3u8"&&(C==="kuaikan"?g.push({flag:"\u5FEB\u770B",url:y[C],sort:1}):C==="ffm3u8"?g.push({flag:"\u975E\u51E1",url:y[C],sort:3}):C==="lzm3u8"?g.push({flag:"\u91CF\u5B50",url:y[C],sort:4}):g.push({flag:C,url:y[C],sort:5}));g.sort((C,I)=>C.sort-I.sort);let v=l.find("h2").text().trim(),A="",_="";l.find("h3").each((C,I)=>{let N=c(I).text().trim();!A&&/主演|演员/.test(N)&&(A=N),!_&&/导演/.test(N)&&(_=N)});let E=g.map(C=>C.flag).join("$$$"),S=g.map(C=>C.url).join("$$$");i.push({vod_id:o,vod_name:v,vod_pic:a.meta?.vod_pic||pC(f,n,zi),vod_actor:A,vod_director:_,vod_content:"",vod_remarks:a.meta?.vod_remarks||"",vod_play_from:E,vod_play_url:S})}return{list:i}}async function ufn(e,t){let r=String(e.body?.wd||"").trim(),n=Number.parseInt(e.body?.page,10)||1,i=M7(e);if(!r)return{list:[],page:n,pagecount:0};let s=n===1?`${zi}/search?q=${encodeURIComponent(r)}`:`${zi}/search?q=${encodeURIComponent(r)}&p=${n}`,a=await _E(s);if(!a)return{list:[],page:n,pagecount:1};let o=Jr.load(a),u=o("div.media"),c=[];u.each((f,p)=>{let h=o(p).find("a:first"),m=o(p).find("img:first"),y=m.attr("data-src")||m.attr("src")||"",g=o(p).find("span.label").first().text().trim(),v=m.attr("alt")||h.text().trim();c.push({vod_id:h.attr("href"),vod_name:v,vod_pic:pC(y,i,zi),vod_remarks:g||""})});let l=r.toLowerCase().trim(),d=c.filter(f=>String(f.vod_name||"").toLowerCase().includes(l));return{list:d,page:n,pagecount:d.length>=z4t?n+1:n}}async function cfn(e,t){let r=String(e.body?.id||"").trim();if(!r)return{parse:0,url:""};r.startsWith("http")||(r=r.startsWith("/")?`${zi}${r}`:`${zi}/${r}`);let n=r,i=String(r).match(/https?:\/\/[^'"\s]+?\.(m3u8|mp4|flv|avi|mkv|ts)(\?[^'"\s]*)?/gi);if(i&&i.length>0&&(n=i[0]),!/\.(m3u8|mp4|flv|avi|mkv|ts)(\?|$)/i.test(n))try{let u=await _E(r,{Referer:zi},12e3);if(u){let c=u.match(/https?:\/\/[^'\"\\s]+\\.m3u8[^'\"\\s]*/i);c&&c[0]&&(n=c[0])}}catch{}if(!/\.(m3u8|mp4|flv|avi|mkv|ts)(\?|$)/i.test(n))return{parse:1,url:r};let o=(()=>{try{let u=new URL(n);if(!u.host.includes("aikanbot.com"))return`${u.protocol}//${u.host}`}catch{}return zi})();return{parse:0,jx:0,url:n,header:{...ixe,Referer:o,Origin:o}}}var G4t={meta:{key:"ikanbot",name:"\u{1F3AC} \u7231\u770B",type:3},api:async e=>{e.post("/init",ifn),e.post("/home",sfn),e.post("/category",afn),e.post("/detail",ofn),e.post("/play",cfn),e.post("/search",ufn)}};Kt();function lfn(e){return Array.isArray(e)?e:e&&typeof e=="object"?Object.values(e):[]}function JM(e,t=""){return e==null?t:String(e).trim()||t}function Y4t(e){let t=lfn(e),r=[];for(let n=0;n<t.length;n++){let i=t[n];if(!i||typeof i!="object")continue;let s=JM(i.url);s&&r.push({name:JM(i.name,`\u76F4\u64AD\u6E90${n+1}`),url:s,ua:JM(i.ua,"okhttp/3.15"),enabled:i.enabled!==!1,logoUrl:JM(i.logoUrl,""),cookie:JM(i.cookie,"")})}return r}async function L7(e){if(!e?.db)return[];let t=[];try{let n=await e.db.getObjectDefault("/config/live",[]);t=Y4t(n)}catch(n){console.error("[Live] \u8BFB\u53D6\u6570\u636E\u5E93\u914D\u7F6E\u5931\u8D25:",n)}if(t.length>0)return t;let r=Y4t(e?.config?.live);if(r.length===0)return[];try{await e.db.push("/config/live",r),console.log(`[Live] DB\u4E3A\u7A7A\uFF0C\u5DF2\u4ECE index.config.js \u56DE\u586B\u76F4\u64AD\u914D\u7F6E\uFF0C\u5171 ${r.length} \u6761`)}catch(n){console.error("[Live] \u56DE\u586B\u9ED8\u8BA4\u914D\u7F6E\u5230\u6570\u636E\u5E93\u5931\u8D25:",n)}return r}var X4t={meta:{key:"live",name:"\u{1F4FA} \u76F4\u64AD",type:3,version:"20260115",author:"Gemini"},api:async e=>{e.post("/init",_fn),e.post("/home",Afn),e.post("/homeVod",vfn),e.post("/category",bfn),e.post("/detail",Efn),e.post("/play",Sfn),e.post("/search",wfn)}},Qi=[],tL=new Map,sxe=new Map,ZM=new Map,hC={loaded:!1,timestamp:0,ttl:5*60*1e3},dfn="https://ghp.xptvhelper.link/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg",AE=new Map,ffn=30*1e3,pfn=200,W4t=/\[IDX:(\d+)\]/,J4t=/^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:/\n?]+)/,hfn=/#EXTINF:.*?group-title="([^"]+)".*?,(.+)$/,mfn=/([^,]+)#genre#/,gfn=/^#EXTGRP:(.+)/;async function yfn(e){if(!e)return Qi;let t=Date.now();if(hC.loaded&&t-hC.timestamp<hC.ttl)return Qi;try{let r=await L7(e);Qi=new Array(r.length);let n=0;for(let i=0;i<r.length;i++){let s=r[i];s&&s.url&&s.enabled!==!1&&(Qi[n++]={...s,name:s.name||"\u672A\u547D\u540D\u6E90",url:s.url,ua:s.ua?s.ua.trim():"okhttp/3.15",logo:s.logoUrl||dfn,cookie:s.cookie||"",domain:B7(s.url)})}Qi.length=n,tL.clear();for(let i=0;i<Qi.length;i++){let s=Qi[i]?.domain;s&&!tL.has(s)&&tL.set(s,i)}return hC.loaded=!0,hC.timestamp=t,Qi}catch(r){return console.error("[Live] Failed to load live configs:",r),Qi}}async function vE(e){return(!hC.loaded||Qi.length===0)&&e&&await yfn(e),Qi}function B7(e){try{let t=e.match(J4t);return t?t[1]:""}catch{return""}}var eL=new Map;function Z4t(e,t){let r=`${e.ua||""}_${e.cookie||""}_${e.domain||""}`,n=eL.get(r);if(n)return n;let i={"User-Agent":e.ua||"okhttp/3.15",Accept:"*/*",Connection:"keep-alive"};e.cookie&&(i.Cookie=e.cookie);let s="";try{let o=t.match(J4t);s=o?o[1]:""}catch{s=""}if(e.domain){let o=t.startsWith("https")?"https":"http";i.Referer=`${o}://${e.domain}/`,i.Origin=`${o}://${e.domain}`}let a={"bilibili.com":()=>{i.Referer="https://live.bilibili.com/",i.Origin="https://live.bilibili.com"},"douyin.com":()=>{i.Referer="https://www.douyin.com/",i.Origin="https://www.douyin.com"},"huya.com":()=>{i.Referer="https://www.huya.com/",i.Origin="https://www.huya.com"}};if(s){for(let[o,u]of Object.entries(a))if(s.includes(o)){u();break}i.Referer||(i.Referer=`https://${s}/`)}if(eL.set(r,i),eL.size>100){let o=Array.from(eL.keys());for(let u=0;u<20;u++)eL.delete(o[u])}return i}async function _fn(e){return e.server&&await vE(e.server),{}}async function Afn(e){return e?.server&&await vE(e.server),{class:Qi.map((t,r)=>({type_id:`${r}`,type_name:t.name,type_image:t.logo}))}}async function vfn(e){return e?.server&&await vE(e.server),{list:Qi.map((t,r)=>({vod_id:`${r}_0_${Date.now()}`,vod_name:t.name,vod_pic:t.logo,vod_remarks:"\u76F4\u64AD\u6E90"})),page:{page:1,pagecount:1,limit:Qi.length,total:Qi.length}}}async function bfn(e){await vE(e.server);let{id:t,page:r=1,limit:n=50}=e.body,i=Number.parseInt(t,10),s=Qi[i];if(!s)return{list:[],page:{page:1,pagecount:1,limit:0,total:0}};let a=await axe(s),o=a.length,u=Math.ceil(o/n),c=(r-1)*n,l=c+n,d=r>u?[]:a.slice(c,l),f=new Array(d.length);for(let p=0;p<d.length;p++){let h=d[p];f[p]={vod_id:`${i}_${p}_${r}`,vod_name:h.groupName,vod_pic:s.logo,vod_remarks:`${h.channels.length}\u4E2A\u9891\u9053`}}return{list:f,page:{page:Number.parseInt(r,10),pagecount:u,limit:Number.parseInt(n,10),total:o}}}async function Efn(e){try{await vE(e.server);let[t,r]=e.body.id.split("_").map(Number),n=Qi[t];if(!n)return{list:[]};let s=(await axe(n))[r];if(!s||!s.channels)return{list:[]};let a=new Array(s.channels.length);for(let o=0;o<s.channels.length;o++){let u=s.channels[o];a[o]=`${u.name.replace(/\$/g,"").trim()}$[IDX:${t}]${u.url}`}return{list:[{vod_id:e.body.id,vod_name:`${n.name} - ${s.groupName}`,vod_pic:n.logo,vod_remarks:`${s.channels.length}\u4E2A\u9891\u9053`,vod_play_from:"\u76F4\u64AD\u7EBF\u8DEF",vod_play_url:a.join("#")}]}}catch{return{list:[]}}}async function Sfn(e){try{let t=String(e.body?.id||""),r=Date.now();if(!t)return{parse:0,url:""};let n=AE.get(t),i=t.includes(".php")?10*1e3:ffn;if(n&&r-n.timestamp<i)return n.result;await vE(e.server);let s=t,a=-1,o=t.match(W4t);if(o)a=Number.parseInt(o[1],10),s=t.replace(W4t,"");else{let f=B7(s);if(f&&tL.has(f))a=tL.get(f);else for(let p=0;p<Qi.length;p++){let h=Qi[p];if(h?.domain&&s.includes(h.domain)){a=p;break}}}let u=Qi[a]||{ua:"okhttp/3.15",domain:B7(s)};if(!s||!s.startsWith("http")){let f={parse:0,url:""};return AE.set(t,{result:f,timestamp:r}),f}let c=s,l=Z4t(u,s);if(s.includes(".php")||s.includes("playlist/")){try{let f=await _e.head(s,{headers:l,timeout:5e3,maxRedirects:0,validateStatus:p=>p>=200&&p<400});f.status>=300&&f.status<400&&f.headers.location&&(c=new URL(f.headers.location,s).href)}catch(f){let p=f?.response?.headers?.location;p&&(c=new URL(p,s).href)}if(c!==s){let f=B7(c);l={"User-Agent":u.ua||"okhttp/3.15",Accept:"*/*",Connection:"keep-alive",Referer:`https://${f}/`}}}let d={parse:0,url:c,header:l,headers:l};if(AE.set(t,{result:d,timestamp:r}),AE.size>pfn){let f=Math.min(50,AE.size),p=0;for(let h of AE.keys())if(AE.delete(h),p++,p>=f)break}return d}catch(t){return console.error("[Live Play] Error:",t.message),{parse:0,url:""}}}async function wfn(e){let{wd:t,page:r=1,limit:n=30}=e.body;if(!t)return{list:[],page:{page:1,pagecount:1,limit:0,total:0}};let i=t.toLowerCase(),s=Number.parseInt(r,10)||1,a=Number.parseInt(n,10)||30;await vE(e.server);let o=[],u=Qi.map(m=>axe(m)),c=await Promise.allSettled(u);for(let m=0;m<c.length;m++){let y=c[m];if(y.status==="fulfilled"){let g=y.value,v=Qi[m];for(let A=0;A<g.length;A++){let _=g[A];for(let E of _.channels)E.name.toLowerCase().includes(i)&&o.push({vod_id:`${m}_${A}_${s}`,vod_name:`${E.name} (${v.name})`,vod_pic:v.logo,vod_remarks:_.groupName})}}}let l=o.length,d=Math.ceil(l/a),f=(s-1)*a,p=f+a;return{list:s>d?[]:o.slice(f,p),page:{page:s,pagecount:d,limit:a,total:l}}}async function axe(e){if(!e?.url)return[];let t=e.url,r=Date.now(),n=sxe.get(t);if(n&&r-n.timestamp<n.ttl)return n.data;if(ZM.has(t))return ZM.get(t);let i=(async()=>{try{let s=Z4t(e,e.url),o=(await _e(e.url,{method:"GET",headers:s,timeout:8e3})).data;if(Buffer.isBuffer(o)?o=o.toString("utf-8"):typeof o!="string"&&(o=String(o||"")),o){let c=o.split(` -`),l=[];for(let d=0;d<c.length;d++){let f=c[d].trim();f&&l.push(f)}o=l.join(` -`)}let u=Ifn(o);if(u&&u.length>0)return sxe.set(t,{data:u,timestamp:r,ttl:30*60*1e3}),u;throw new Error("Empty groups")}catch{let a={data:[],timestamp:r,ttl:6e4};return sxe.set(t,a),[]}})();ZM.set(t,i);try{return await i}finally{ZM.get(t)===i&&ZM.delete(t)}}function Ifn(e){if(!e||typeof e!="string")return[];let t=new Map,r=e.split(` -`),n="\u672A\u5206\u7C7B";for(let s=0;s<r.length;s++){let a=r[s].trim();if(a){if(a.startsWith("#EXTINF:")){let o=a.match(hfn),u=o?o[1]:n,c=o?o[2].trim():`\u9891\u9053_${t.size+1}`;if(s+1<r.length){let l=r[s+1].trim();l&&(l.startsWith("http")||l.startsWith("rtmp")||l.startsWith("rtsp"))&&(s++,t.has(u)||t.set(u,[]),t.get(u).push({name:c.replace(/\$/g,"").trim(),url:l}))}}else if(a.includes("#genre#")){let o=a.match(mfn);n=o?o[1]:"\u672A\u5206\u7C7B"}else if((a.startsWith("http")||a.startsWith("rtmp")||a.startsWith("rtsp"))&&!a.includes("#EXT")){let o=`\u9891\u9053_${t.size+1}`;t.has(n)||t.set(n,[]),t.get(n).push({name:o,url:a})}else if(a.startsWith("#EXTGRP:")){let o=a.match(gfn);n=o?o[1].trim():"\u672A\u5206\u7C7B"}}}let i=[];for(let[s,a]of t)a&&a.length>0&&i.push({groupName:s,channels:a});return i}Kt();var nL=Se(eP(),1);var gi={host:"http://www.88kanqiu.tw",playerHost:"https://play.88player.top",backupHosts:["https://play.88player.top","https://play.88player2.top"],headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive"},cacheTTL:60,detailCacheTTL:300,retryTimes:2,timeout:15e3,cacheMaxSize:500,cleanupInterval:300},xfn={ld:"240p",sd:"480p",hd:"720p",fhd:"1080p"},Cfn="480p",eBt=/(sd|hd|fhd|ld)-(\d+)/,Tfn={default:gi.playerHost,backup1:gi.backupHosts[0],backup2:gi.backupHosts[1]},rBt=/^https?:\/\/.*\.(m3u8|mp4|flv|m4s|ts)(\?.*)?$/i,oxe="kanqiu://",on={init:!1,cache:new Map,inflight:new Map,device:{},lastCleanup:(0,nL.default)().unix(),staticCache:{classes:null,filters:null,defaultPic:"https://pic.imgdb.cn/item/657673d6c458853aeff94ab9.jpg"}};function Nfn(){return on.staticCache.classes||(on.staticCache.classes=[{type_id:"",type_name:"\u5168\u90E8\u76F4\u64AD"},{type_id:"1",type_name:"\u7BEE\u7403\u76F4\u64AD"},{type_id:"8",type_name:"\u8DB3\u7403\u76F4\u64AD"},{type_id:"21",type_name:"\u5176\u4ED6\u76F4\u64AD"}]),on.staticCache.classes}function Rfn(){return on.staticCache.filters||(on.staticCache.filters={1:[{key:"cateId",name:"\u7C7B\u578B",value:[{n:"NBA",v:"1"},{n:"CBA",v:"2"},{n:"\u7BEE\u7403\u7EFC\u5408",v:"4"},{n:"\u7EAC\u6765\u4F53\u80B2",v:"21"}]}],8:[{key:"cateId",name:"\u7C7B\u578B",value:[{n:"\u82F1\u8D85",v:"8"},{n:"\u897F\u7532",v:"9"},{n:"\u610F\u7532",v:"10"},{n:"\u6B27\u51A0",v:"12"},{n:"\u6B27\u8054",v:"13"},{n:"\u5FB7\u7532",v:"14"},{n:"\u6CD5\u7532",v:"15"},{n:"\u6B27\u56FD\u8054",v:"16"},{n:"\u8DB3\u603B\u676F",v:"27"},{n:"\u56FD\u738B\u676F",v:"33"},{n:"\u4E2D\u8D85",v:"7"},{n:"\u4E9A\u51A0",v:"11"},{n:"\u8DB3\u7403\u7EFC\u5408",v:"23"},{n:"\u6B27\u534F\u8054",v:"28"},{n:"\u7F8E\u804C\u8054",v:"26"}]}]}),on.staticCache.filters}function Dfn(){let e=(0,nL.default)().unix();if(e-on.lastCleanup>gi.cleanupInterval){for(let[t,r]of on.cache.entries())e>r.expire&&on.cache.delete(t);on.lastCleanup=e}}function nBt(e){Dfn();let t=on.cache.get(e);return t?(0,nL.default)().unix()>=t.expire?(on.cache.delete(e),null):t.data:null}function uxe(e,t,r=gi.cacheTTL){if(on.cache.size>=gi.cacheMaxSize){let n=Math.min(50,on.cache.size),i=0;for(let s of on.cache.keys())if(on.cache.delete(s),i++,i>=n)break}on.cache.set(e,{data:t,expire:(0,nL.default)().unix()+r})}async function iBt(e,t=gi.retryTimes){let r=null;for(let n=0;n<=t;n++)try{return await e()}catch(i){if(r=i,n>=t)break;await new Promise(s=>setTimeout(s,1e3*(n+1)))}throw r}function sBt(e){return on.inflight.get(e)}function aBt(e,t){return on.inflight.set(e,t),t.finally(()=>{on.inflight.get(e)===t&&on.inflight.delete(e)}),t}function kfn(e){if(!e||typeof e!="object"||Array.isArray(e))return JSON.stringify(e);let t=Object.entries(e).sort(([r],[n])=>r.localeCompare(n));return JSON.stringify(Object.fromEntries(t))}async function Ofn(e,t,r){let n=Array.isArray(e)?e:[];if(n.length===0)return[];let i=Math.max(1,Math.min(t,n.length)),s=new Array(n.length),a=0,o=async()=>{for(;;){let u=a++;if(u>=n.length)return;s[u]=await r(n[u],u)}};return await Promise.all(Array.from({length:i},()=>o())),s}function oBt(e){try{let r=new URL(e).searchParams.get("url")||e;return r.includes("%")&&(r=decodeURIComponent(r)),r}catch{return e}}function Pfn(e){return`${oxe}${Buffer.from(JSON.stringify(e),"utf-8").toString("base64url")}`}function Mfn(e){let t=String(e||"").trim();if(!t.startsWith(oxe))return{url:t,lineName:"",sourceHost:"",wrapperUrl:t};try{let r=t.slice(oxe.length),n=JSON.parse(Buffer.from(r,"base64url").toString("utf-8")),i=String(n?.wrapperUrl||n?.url||"").trim();return{url:String(n?.url||"").trim()||i,lineName:String(n?.lineName||"").trim(),sourceHost:String(n?.sourceHost||"").trim(),wrapperUrl:i}}catch{return{url:t,lineName:"",sourceHost:"",wrapperUrl:t}}}function tBt(e,t){let r=String(e||"").trim().toLowerCase(),n=String(t||"").trim().toLowerCase();return Lfn(r)?0:r.includes("c5")?1:r.includes("c4")?2:r.includes("b1")?3:r.includes("b2")?4:rBt.test(oBt(n))?5:n.includes("sportsteam368.com")?20:n.includes("embedsports.top")?21:10}function rL(e,t,r={}){let n={...gi.headers,Referer:t||gi.playerHost,"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"User-Agent, Content-Type, Range","Access-Control-Expose-Headers":"Content-Length, Content-Range",...r};try{let i=new URL(e);n.Origin=`${i.protocol}//${i.host}`}catch{if(t)try{let i=new URL(t);n.Origin=`${i.protocol}//${i.host}`}catch{}}return n}function Lfn(e){if(!e)return!1;let t=e.toLowerCase().replace(/\s+/g,"");if(t.includes("d1")&&t.includes("\u7EBF\u8DEF")||t.includes("d1")&&t.includes("line")||/^d1(线路|line)?$/.test(t)||/^(线路|line)d1$/.test(t))return!0;let r=e.toLowerCase();return!!(r.includes("\u7EBF\u8DEF")&&r.includes("d1"))}async function uBt(e,t={}){let r=`category_${e}_${kfn(t)}`,n=nBt(r);if(n)return n;let i=sBt(r);if(i)return i;let s=(async()=>{let a=t.cateId||e||"",o=a?`/match/${a}/live`:"",u=gi.host+o,c=await iBt(()=>_e.get(u,{headers:gi.headers,timeout:gi.timeout})),l=Jr.load(c.data),d=[],f=[];l(".list-group-item").each((m,y)=>{let g=l(y),v=g.find(".btn.btn-primary"),A=g.find(".category-game-time").text().trim()||"",_=g.find(".game-type").text().trim()||"",E=g.find(".team-name"),S="",C="";E.length>=2&&(S=E.first().text().trim(),C=E.last().text().trim());let I="";if(S&&C?I=`${A} ${_} ${S} vs ${C}`.trim():_?I=`${A} ${_}`.trim():I=A.trim(),!I)return;let N=g.find("img").first().attr("src")||on.staticCache.defaultPic,T=N.startsWith("http")?N:gi.host+N,k={vod_name:I,vod_pic:T,vod_remarks:""};if(v.length>0)k.vod_id=gi.host+v.attr("href"),k.vod_remarks=v.text().trim()||"\u76F4\u64AD\u4E2D",d.push(k);else{let O=`${A}-${_}-${S}-${C}`;k.vod_id=`upcoming_${Buffer.from(O).toString("base64")}`,k.vod_remarks=A||"\u672A\u5F00\u64AD",f.push(k)}});let p=[...d,...f],h={list:p,page:1,pagecount:1,limit:p.length,total:p.length};return p.length>0&&uxe(r,h),h})().catch(()=>({list:[],page:1,pagecount:1,limit:0,total:0}));return aBt(r,s)}async function Bfn(e){let t=`detail_${e}`,r=nBt(t);if(r)return r;let n=sBt(t);if(n)return n;let i=(async()=>{if(e.startsWith("upcoming_")){let m={vod_id:e,vod_name:"\u8D5B\u4E8B\u76F4\u64AD",vod_pic:on.staticCache.defaultPic,type_name:"\u4F53\u80B2\u76F4\u64AD",vod_remarks:"\u672A\u5F00\u64AD",vod_content:"\u6BD4\u8D5B\u5C1A\u672A\u5F00\u59CB\uFF0C\u8BF7\u7B49\u5F85\u5F00\u64AD",vod_play_from:"88\u770B\u7403",vod_play_url:""};return uxe(t,m,gi.detailCacheTTL),m}if(e===gi.host)return null;let s=e+"-url",o=(await iBt(()=>_e.get(s,{headers:gi.headers,timeout:gi.timeout}))).data?.data;if(!o||typeof o!="string"||o.length<=8)return null;let u=o.substring(6,o.length-2),c=Buffer.from(u,"base64").toString("utf-8"),l=JSON.parse(c),d=Array.isArray(l?.links)?l.links:[];if(d.length===0)return null;let p=[...d].sort((m,y)=>{let g=tBt(m?.name,m?.url)-tBt(y?.name,y?.url);return g!==0?g:String(m?.name||"").localeCompare(String(y?.name||""),"zh-CN")}).map(m=>{let y=m.url.startsWith("http")?m.url:`${gi.host}${m.url}`,g=Pfn({lineName:String(m.name||"").trim(),sourceHost:(()=>{try{return new URL(y).host}catch{return""}})(),wrapperUrl:y,url:y});return`${m.name}$${g}`}).join("#"),h={vod_id:e,vod_name:"\u8D5B\u4E8B\u76F4\u64AD",vod_pic:on.staticCache.defaultPic,type_name:"\u4F53\u80B2\u76F4\u64AD",vod_remarks:"\u5B9E\u65F6\u76F4\u64AD",vod_content:"\u5B9E\u65F6\u4F53\u80B2\u76F4\u64AD",vod_play_from:"88\u770B\u7403",vod_play_url:p};return uxe(t,h,gi.detailCacheTTL),h})().catch(()=>null);return aBt(t,i)}async function $fn(e,t){return on.init||(on.device=await e.server.db.getObjectDefault(`${e.server.prefix}/device`,{}),on.device.id||(on.device=iq(32),on.device.id=on.device.id.toLowerCase(),await e.server.db.push(`${e.server.prefix}/device`,on.device)),on.init=!0),{}}async function Ffn(e,t){let r=await uBt("");return{class:Nfn(),filters:Rfn(),list:r.list}}async function Ufn(e,t){let r=e.body.id,n=e.body.filters||{};return await uBt(r,n)}async function qfn(e,t){let n=(Array.isArray(e.body.id)?e.body.id:[e.body.id]).map(s=>String(s||"").trim()).filter(Boolean);return{list:(await Ofn(n,6,s=>Bfn(s))).filter(Boolean)}}async function jfn(e,t){try{let r=String(e.body?.id||"").trim();if(!r)return{parse:0,url:"",format:"hls",disableSniff:!0,player:"hlsjs",header:gi.headers};if(r.startsWith("upcoming_"))return{parse:0,url:"",format:"hls",disableSniff:!0,player:"hlsjs",header:gi.headers,error:"\u6BD4\u8D5B\u5C1A\u672A\u5F00\u59CB\uFF0C\u8BF7\u7B49\u5F85\u5F00\u64AD"};let n=decodeURIComponent(r).replace(/\*\*\*/g,"#"),i=Mfn(n),s=i.wrapperUrl||i.url||n,a=i.lineName||String(e.body?.flag||"").trim(),o=i.sourceHost||(()=>{try{return new URL(s).host}catch{return""}})(),u=oBt(i.url||n);u&&!/^https?:/i.test(u)&&(u=`${gi.host}${u}`);let c=String(e.body?.line||"").trim(),l=Tfn[c]||gi.playerHost;if(s&&/^https?:\/\//i.test(s))try{let f=new URL(s);l=`${f.protocol}//${f.host}/`}catch{}if(rBt.test(u)){let f=e.body.quality||"sd",p=xfn[f]||Cfn,h=eBt.test(u)?u.replace(eBt,`${f}-$2`):u,m=/\.mp4(\?|$)/i.test(h)?"video/mp4":"application/vnd.apple.mpegurl";return{parse:0,jx:0,url:h,format:/m3u8/i.test(m)?"hls":"mp4",type:m,header:rL(h,l,{"Content-Type":m}),disableSniff:!0,player:/m3u8/i.test(m)?"hlsjs":"ijk",quality:p,line:a||c||"default"}}return/sportsteam368\.com/i.test(o)||/sportsteam368\.com/i.test(s)?{parse:1,jx:1,url:s,header:rL(s,"http://play.sportsteam368.com/"),line:a||"sportsteam368"}:/embedsports\.top/i.test(o)||/embedsports\.top/i.test(s)?{parse:1,jx:1,url:s,header:rL(s,"https://embedsports.top/"),line:a||"embedsports"}:/^https?:\/\//i.test(s)?{parse:1,jx:1,url:s,header:rL(s,l),line:a||c||"fallback"}:{parse:0,jx:0,url:u||s,format:"hls",disableSniff:!0,player:"hlsjs",header:rL(u||s,l)}}catch{return{parse:1,jx:1,url:e.body.id,header:gi.headers}}}async function Hfn(e,t){return{list:[],page:1,pagecount:1,total:0}}var cBt={meta:{key:"88kanqiu",name:"\u{1F3C0} \u770B\u7403",type:3,searchable:0,quickSearch:0,filterable:1,qualities:["ld","sd","hd","fhd"],lines:["default","backup1","backup2"]},api:async e=>{let t={"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, OPTIONS","Access-Control-Allow-Headers":"User-Agent, Content-Type, Range","Access-Control-Expose-Headers":"Content-Length, Content-Range"};e.options("/play",async(r,n)=>{n.headers(t),n.code(204).send()}),e.post("/init",$fn),e.post("/home",Ffn),e.post("/category",Ufn),e.post("/detail",qfn),e.post("/play",jfn),e.post("/search",Hfn)}};var cxe=class extends Cs{constructor(){super("shandian")}},lBt=new cxe,dBt=e=>lBt.getCache(e);async function lxe(e){lBt.createRoutes(e)}var Kfn=[{v:"A",n:"A"},{v:"B",n:"B"},{v:"C",n:"C"},{v:"D",n:"D"},{v:"E",n:"E"},{v:"F",n:"F"},{v:"G",n:"G"},{v:"H",n:"H"},{v:"I",n:"I"},{v:"J",n:"J"},{v:"K",n:"K"},{v:"L",n:"L"},{v:"M",n:"M"},{v:"N",n:"N"},{v:"O",n:"O"},{v:"P",n:"P"},{v:"Q",n:"Q"},{v:"R",n:"R"},{v:"S",n:"S"},{v:"T",n:"T"},{v:"U",n:"U"},{v:"V",n:"V"},{v:"W",n:"W"},{v:"X",n:"X"},{v:"Y",n:"Y"},{v:"Z",n:"Z"},{v:"0-9",n:"0-9"}],Vfn=[{v:"time",n:"\u65F6\u95F4\u6392\u5E8F"},{v:"hits",n:"\u4EBA\u6C14\u6392\u5E8F"},{v:"score",n:"\u8BC4\u5206\u6392\u5E8F"}],fBt=[{v:"2025",n:"2025"},{v:"2024",n:"2024"},{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],dxe=[{v:"2023",n:"2023"},{v:"2022",n:"2022"},{v:"2021",n:"2021"},{v:"2020",n:"2020"},{v:"2019",n:"2019"},{v:"2018",n:"2018"},{v:"2017",n:"2017"},{v:"2016",n:"2016"},{v:"2015",n:"2015"},{v:"2014",n:"2014"},{v:"2013",n:"2013"},{v:"2012",n:"2012"},{v:"2011",n:"2011"},{v:"2010",n:"2010"},{v:"2009",n:"2009"},{v:"2008",n:"2008"},{v:"2007",n:"2007"},{v:"2006",n:"2006"},{v:"2005",n:"2005"},{v:"2004",n:"2004"},{v:"2003",n:"2003"},{v:"2002",n:"2002"},{v:"2001",n:"2001"},{v:"2000",n:"2000"}],fxe=class extends Ki{constructor(){super("\u95EA\u7535","shandian",{key:"shandian",name:"\u2601\uFE0F \u95EA\u7535",type:3},dBt),this.initFilterData()}initFilterData(){this.classes=[{type_name:"\u95EA\u7535\u7535\u5F71",type_id:"1"},{type_name:"\u95EA\u7535\u5267\u96C6",type_id:"2"},{type_name:"\u95EA\u7535\u7EFC\u827A",type_id:"3"},{type_name:"\u95EA\u7535\u52A8\u6F2B",type_id:"4"},{type_name:"\u95EA\u7535\u77ED\u5267",type_id:"30"}],this.filterData={1:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],2:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],3:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],4:[{name:"\u7C7B\u578B",key:"id"},{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}],30:[{name:"\u5730\u533A",key:"area"},{name:"\u65F6\u95F4",key:"year"},{name:"\u5B57\u6BCD",key:"letter"},{name:"\u6392\u5E8F",key:"by"}]},this.filterValues={letter:Kfn,by:Vfn,"1.id":[{v:"12",n:"\u52A8\u4F5C\u7247"},{v:"102",n:"\u559C\u5267\u7247"},{v:"103",n:"\u7231\u60C5\u7247"},{v:"104",n:"\u79D1\u5E7B\u7247"},{v:"105",n:"\u5267\u60C5\u7247"},{v:"106",n:"\u60AC\u7591\u7247"},{v:"107",n:"\u60CA\u609A\u7247"},{v:"108",n:"\u6050\u6016\u7247"},{v:"109",n:"\u72AF\u7F6A\u7247"},{v:"110",n:"\u6B66\u4FA0\u7247"},{v:"111",n:"\u5192\u9669\u7247"},{v:"112",n:"\u5947\u5E7B\u7247"},{v:"113",n:"\u6218\u4E89\u7247"},{v:"114",n:"\u7EAA\u5F55\u7247"},{v:"115",n:"\u4F26\u7406\u7247"}],"2.id":[{v:"201",n:"\u56FD\u4EA7\u5267"},{v:"202",n:"\u6E2F\u53F0\u5267"},{v:"203",n:"\u6B27\u7F8E\u5267"},{v:"204",n:"\u65E5\u97E9\u5267"},{v:"205",n:"\u6D77\u5916\u5267"}],"3.id":[{v:"301",n:"\u5927\u9646\u7EFC\u827A"},{v:"302",n:"\u6E2F\u53F0\u7EFC\u827A"},{v:"303",n:"\u6B27\u7F8E\u7EFC\u827A"},{v:"304",n:"\u65E5\u97E9\u7EFC\u827A"}],"4.id":[{v:"401",n:"\u52A8\u753B\u7247"},{v:"402",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"403",n:"\u65E5\u97E9\u52A8\u6F2B"},{v:"404",n:"\u6B27\u7F8E\u52A8\u6F2B"},{v:"405",n:"\u6E2F\u53F0\u52A8\u6F2B"},{v:"406",n:"\u6D77\u5916\u52A8\u6F2B"}],"1.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"2.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"3.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"4.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"30.area":[{v:"\u4E2D\u56FD\u5927\u9646",n:"\u4E2D\u56FD\u5927\u9646"},{v:"\u4E2D\u56FD\u9999\u6E2F",n:"\u4E2D\u56FD\u9999\u6E2F"},{v:"\u4E2D\u56FD\u53F0\u6E7E",n:"\u4E2D\u56FD\u53F0\u6E7E"},{v:"\u7F8E\u56FD",n:"\u7F8E\u56FD"},{v:"\u97E9\u56FD",n:"\u97E9\u56FD"},{v:"\u65E5\u672C",n:"\u65E5\u672C"},{v:"\u6CD5\u56FD",n:"\u6CD5\u56FD"},{v:"\u82F1\u56FD",n:"\u82F1\u56FD"},{v:"\u5FB7\u56FD",n:"\u5FB7\u56FD"},{v:"\u6CF0\u56FD",n:"\u6CF0\u56FD"},{v:"\u5370\u5EA6",n:"\u5370\u5EA6"},{v:"\u5176\u4ED6",n:"\u5176\u4ED6"}],"1.year":fBt,"2.year":fBt,"3.year":dxe,"4.year":dxe,"30.year":dxe}}},zfn=new fxe,pBt=zfn.getExports();Kt();var mxe=Se(di(),1),k_="https://www.jiabaide.cn",Lo={},$7="",gxe=class{constructor(){this.cache=new Map,this.ttl={home:3e5,category:18e4,detail:6e5,search:6e4},this.maxSize=100}get(t,r="category"){let n=this.cache.get(t);if(!n)return null;let i=this.ttl[r]||18e4;return Date.now()-n.timestamp>i?(this.cache.delete(t),null):n.data}set(t,r,n="category"){if(this.cache.size>=this.maxSize){let i=this.cache.keys().next().value;this.cache.delete(i)}this.cache.set(t,{data:r,timestamp:Date.now(),type:n})}clear(){this.cache.clear()}},mC=new gxe,pxe=new Map,hxe=null,iL=null;function mBt(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}async function Qfn(e,t){try{$7=e.server.prefix+"/device",Lo=await e.server.db.getObjectDefault($7,{});let r=!1;return Lo.id||(Lo.id=mBt(),r=!0),Lo.ua||(Lo.ua="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.6478.61 Safari/537.36",r=!0),Lo.cookies||(Lo.cookies="",r=!0),r&&await e.server.db.push($7,Lo),{}}catch{return{}}}function Gfn(e={}){let t=Date.now().toString(),r={...e};r.key="cb808529bae6b6be45ecfab29a4889bc",r.t=t;let n=Object.keys(r).map(u=>`${u}=${r[u]}`).join("&"),i=mxe.default.MD5(n).toString(),s=mxe.default.SHA1(i).toString(),a=Lo.id||mBt(),o={"User-Agent":Lo.ua,Accept:"application/json, text/plain, */*",sign:s,t,deviceid:a};return Lo.cookies&&(o.Cookie=Lo.cookies),o}async function gC(e,t,r={},n="get",i=2){let s=Gfn(r),a={method:n,headers:s,timeout:1e4};if(n==="get"&&Object.keys(r).length>0){let u=Object.keys(r).map(c=>`${c}=${r[c]}`).join("&");e+=(e.includes("?")?"&":"?")+u}else n==="post"&&(a.data=r);let o=null;for(let u=0;u<=i;u++)try{let c=await _e(e,a);if(c.headers&&c.headers["set-cookie"]){let l=Array.isArray(c.headers["set-cookie"])?c.headers["set-cookie"].join(";"):c.headers["set-cookie"];Lo.cookies!==l&&(Lo.cookies=l,iL={deviceKey:$7,device:Lo},hxe&&clearTimeout(hxe),hxe=setTimeout(async()=>{iL&&(await t.server.db.push(iL.deviceKey,iL.device),iL=null)},500))}return c.data}catch(c){o=c,u<i&&await new Promise(l=>setTimeout(l,1e3*(u+1)))}throw o}function Yfn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function Wfn(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}function Xfn(e){if(pxe.has(e))return pxe.get(e);let t=e.toLowerCase();return t.startsWith("vod")&&t.length>3&&(t=t.replace("vod","vod_")),t.startsWith("type")&&t.length>4&&(t=t.replace("type","type_")),pxe.set(e,t),t}function yxe(e){return e.map(t=>{let r={};for(let[n,i]of Object.entries(t))r[Xfn(n)]=i;return r.vod_id&&(r.vod_id=Yfn(r.vod_id,{vod_pic:r.vod_pic||"",vod_remarks:r.vod_remarks||""})),r})}function hBt(e){return String(e||"").toLowerCase().replace(/\s+/g," ").trim()}function Jfn(e,t,r){let n=hBt(t);return n?e.filter(i=>hBt(r(i)).includes(n)):e}async function Zfn(e,t){try{let r="home_data",n=mC.get(r,"home");if(n)return n;let[i,s]=await Promise.all([gC(k_+"/api/mw-movie/anonymous/get/filer/type",e),gC(k_+"/api/mw-movie/anonymous/v1/get/filer/list",e)]),a=[];i.data&&i.data.forEach(l=>{a.push({type_name:l.typeName,type_id:l.typeId.toString()})});let o=[{n:"\u6700\u8FD1\u66F4\u65B0",v:"2"},{n:"\u4EBA\u6C14\u9AD8\u4F4E",v:"3"},{n:"\u8BC4\u5206\u9AD8\u4F4E",v:"4"}],u={};if(s.data)for(let[l,d]of Object.entries(s.data)){let f=[...o];l==="1"&&f.shift();let p=d.typeList?d.typeList.filter(m=>m.itemText!=="\u4F26\u7406"):[],h=[{key:"type",name:"\u7C7B\u578B",init:"",value:[{n:"\u5168\u90E8",v:""},...p.map(m=>({n:m.itemText,v:m.itemValue}))]}];d.plotList&&d.plotList.length&&h.push({key:"v_class",name:"\u5267\u60C5",init:"",value:[{n:"\u5168\u90E8",v:""},...d.plotList.map(m=>({n:m.itemText,v:m.itemText}))]}),d.districtList&&h.push({key:"area",name:"\u5730\u533A",init:"",value:[{n:"\u5168\u90E8",v:""},...d.districtList.map(m=>({n:m.itemText,v:m.itemText}))]}),d.yearList&&h.push({key:"year",name:"\u5E74\u4EFD",init:"",value:[{n:"\u5168\u90E8",v:""},...d.yearList.map(m=>({n:m.itemText,v:m.itemText}))]}),d.languageList&&h.push({key:"lang",name:"\u8BED\u8A00",init:"",value:[{n:"\u5168\u90E8",v:""},...d.languageList.map(m=>({n:m.itemText,v:m.itemText}))]}),h.push({key:"sort",name:"\u6392\u5E8F",init:"2",value:f}),u[l]=h}let c={class:a,filters:u};return mC.set(r,c,"home"),c}catch{return{class:[],filters:{}}}}async function epn(e,t){let r=e.body.id,n=e.body.page,i=e.body.filters||{},s=`category_${r}_${n}_${JSON.stringify(i)}`,a=mC.get(s,"category");if(a)return a;let o={area:i.area||"",filterStatus:"1",lang:i.lang||"",pageNum:n||1,pageSize:"30",sort:i.sort||"2",sortBy:"1",type:i.type||"",type1:r,v_class:i.v_class||"",year:i.year||""};try{let u=await gC(k_+"/api/mw-movie/anonymous/video/list",e,o),c={page:parseInt(u.data.currentPage||n||1),pagecount:parseInt(u.data.pages||9999),limit:30,total:parseInt(u.data.total||999999),list:yxe(u.data.list||[])};return mC.set(s,c,"category"),c}catch{return{page:parseInt(n||1),pagecount:0,limit:30,total:0,list:[]}}}async function tpn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=[];for(let i of r)try{let s=Wfn(i),a=s.id||i,o=await gC(k_+"/api/mw-movie/anonymous/video/detail",e,{id:a}),u=yxe([o.data])[0],c=[];if(u.episodelist&&u.episodelist.length>0)for(let l of u.episodelist){let d=l.name;u.episodelist.length===1&&(d=u.vod_name||d),c.push(`${d}$${a}@@${l.nid}`)}u.vod_play_from="\u91D1\u724C\u5F71\u89C6",u.vod_play_url=c.join("#"),u.vod_pic=s.meta?.vod_pic||u.vod_pic||"",u.vod_remarks=s.meta?.vod_remarks||u.vod_remarks||"",delete u.episodelist,n.push(u)}catch{}return{list:n}}async function rpn(e,t){let r=e.body.id;try{let[n,i]=r.split("@@"),s={clientType:"1",id:n,nid:i},a=await gC(k_+"/api/mw-movie/anonymous/v2/video/episode/url",e,s),o=[];if(a.data&&a.data.list&&a.data.list.length>0)for(let c of a.data.list)c.url&&c.resolutionName&&(o.push(c.resolutionName),o.push(c.url));let u={"User-Agent":Lo.ua,"sec-ch-ua-platform":'"Windows"',DNT:"1","sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126"',"sec-ch-ua-mobile":"?0",Origin:k_,Referer:k_+"/"};return{parse:0,jx:0,url:o,header:u}}catch{return{parse:0,jx:0,url:[],header:{}}}}async function npn(e,t){let r=e.body.page,n=e.body.wd,i=r||1;i==0&&(i=1);let s=`search_${n}_${i}`,a=mC.get(s,"search");if(a)return a;try{let o={keyword:n,pageNum:i,pageSize:"8",sourceCode:"1"},u=await gC(k_+"/api/mw-movie/anonymous/video/searchByWord",e,o),c=u.data.result.list||[],l=Jfn(c,n,f=>f.vodName||f.vod_name||f.name||""),d={page:parseInt(i),pagecount:Math.ceil((u.data.result.total||0)/8)||1,limit:8,total:l.length,list:yxe(l)};return mC.set(s,d,"search"),d}catch{return{page:parseInt(i),pagecount:0,limit:8,total:0,list:[]}}}var gBt={meta:{key:"jinpai",name:"\u{1F3AC} \u91D1\u724C",type:3},api:async e=>{e.post("/init",Qfn),e.post("/home",Zfn),e.post("/category",epn),e.post("/detail",tpn),e.post("/play",rpn),e.post("/search",npn)}};Yr();var EBt=Se(require("crypto"),1),SBt=Se(require("querystring"),1);var yBt=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.cookie)return t.cookie;if(e.config?.bilibili_all?.cookie)return e.config.bilibili_all.cookie}catch{}return""},_Bt=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.classes_all)return t.classes_all;if(e.config?.bilibili_all?.classes_all)return e.config.bilibili_all.classes_all}catch{}return""},ABt=async e=>{try{let t=await e.db.getObjectDefault("/bilibili_all",{});if(t&&t.filters_all)return t.filters_all;if(e.config?.bilibili_all?.filters_all)return e.config.bilibili_all.filters_all}catch{}return""};async function _xe(e){e.get("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{}),i=t.server.config.bilibili_all||{};r.send({code:0,data:{cookie:n.cookie||i.cookie||"",classes_all:n.classes_all||i.classes_all||"",filters_all:n.filters_all||i.filters_all||""}})}catch(n){console.error("\u83B7\u53D6\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25: "+n.message,data:{cookie:"",classes_all:"",filters_all:""}})}}),e.put("/config",async(t,r)=>{try{let{cookie:n,classes_all:i,filters_all:s}=t.body||{},a={};n!==void 0&&typeof n=="string"&&(a.cookie=n.trim()),i!==void 0&&typeof i=="string"&&(a.classes_all=i.trim()),s!==void 0&&typeof s=="string"&&(a.filters_all=s.trim());let u={...await t.server.db.getObjectDefault("/bilibili_all",{}),...a,lastUpdate:Date.now()};await t.server.db.push("/bilibili_all",u);let c=null;if(n&&n.trim())try{let d=(await t.server.inject({method:"POST",url:"/spider/bili_all/3/validate-cookie",payload:{cookie:n.trim()}})).json();d.code===0&&d.valid?(c={success:!0,message:"Cookie\u9A8C\u8BC1\u6210\u529F",userInfo:d.data},await t.server.inject({method:"POST",url:"/spider/bili_all/3/set-cookie",payload:{cookie:n.trim()}})):c={success:!1,message:d.message||"Cookie\u9A8C\u8BC1\u5931\u8D25"}}catch(l){console.error("\u6D4B\u8BD5Cookie\u5931\u8D25:",l),c={success:!1,message:"Cookie\u6D4B\u8BD5\u5931\u8D25\uFF0C\u4F46\u914D\u7F6E\u5DF2\u4FDD\u5B58"}}r.send({code:0,message:"\u4FDD\u5B58\u6210\u529F",data:{updated:Object.keys(a),testResult:c}})}catch(n){console.error("\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u4FDD\u5B58\u5931\u8D25: "+n.message})}}),e.delete("/config",async(t,r)=>{try{await t.server.db.push("/bilibili_all",{cookie:"",classes_all:"",filters_all:"",lastUpdate:Date.now()});try{await t.server.inject({method:"POST",url:"/spider/bili_all/3/clear-cookie"})}catch{}r.send({code:0,message:"\u914D\u7F6E\u5DF2\u6E05\u9664"})}catch(n){console.error("\u6E05\u9664\u914D\u7F6E\u5931\u8D25:",n),r.send({code:500,message:"\u6E05\u9664\u5931\u8D25: "+n.message})}}),e.post("/test-cookie",async(t,r)=>{try{let{cookie:n}=t.body||{};if(!n||typeof n!="string"||n.trim().length<10)return r.send({code:400,message:"\u65E0\u6548\u7684Cookie\u683C\u5F0F",valid:!1});let i=n.trim(),s=i.includes("SESSDATA"),a=i.includes("bili_jct"),o=i.includes("DedeUserID"),u=s&&a;r.send({code:0,message:u?"Cookie\u683C\u5F0F\u6B63\u786E":"Cookie\u683C\u5F0F\u53EF\u80FD\u4E0D\u5B8C\u6574",valid:u,data:{hasSessdata:s,hasBiliJct:a,hasDedeUserID:o,cookieLength:i.length}})}catch(n){console.error("\u6D4B\u8BD5Cookie\u5931\u8D25:",n),r.send({code:500,message:"\u6D4B\u8BD5\u5931\u8D25: "+n.message,valid:!1})}}),e.get("/status",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/bilibili_all",{}),i={available:!1};try{let a=(await t.server.inject({method:"GET",url:"/spider/bili_all/3/cookie-status"})).json();a.code===0&&(i={available:!0,...a.data})}catch{}r.send({code:0,data:{config:{hasCookie:!!(n.cookie&&n.cookie.length>0),cookieLength:n.cookie?.length||0,hasClasses:!!(n.classes_all&&n.classes_all.length>0),hasFilters:!!(n.filters_all&&n.filters_all.length>0),lastUpdate:n.lastUpdate||"\u672A\u77E5"},biliAllStatus:i}})}catch(n){console.error("\u83B7\u53D6\u72B6\u6001\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u72B6\u6001\u5931\u8D25: "+n.message})}})}var ipn=36e5,spn=3e5,wBt=15e3,apn=2,uh=20,U7="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",opn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",upn="https://i0.hdslb.com/bfs/archive/404.png",cpn=new Set(["totalrank","click","pubdate","dm","stow"]),lpn=/<[^>]*>/g,dpn=/&[a-z]+;/g,vxe=[{type_name:"\u6C99\u96D5\u52A8\u6F2B",type_id:"\u4E00\u53E3\u6C14\u6C99\u96D5\u52A8\u6F2B"},{type_name:"\u7EAA\u5F55\u7247",type_id:"\u7EAA\u5F55\u7247\u8D85\u6E05"},{type_name:"\u6F14\u5531\u4F1A",type_id:"\u6F14\u5531\u4F1A\u8D85\u6E05"},{type_name:"\u7F8E\u98DF",type_id:"\u7F8E\u98DF\u8D85\u6E05"},{type_name:"\u98DF\u8C31",type_id:"\u98DF\u8C31"},{type_name:"\u4F53\u80B2",type_id:"\u4F53\u80B2\u8D85\u6E05"},{type_name:"\u7403\u661F",type_id:"\u7403\u661F"},{type_name:"\u65C5\u6E38",type_id:"\u65C5\u6E38"},{type_name:"\u98CE\u666F",type_id:"\u98CE\u666F4K"},{type_name:"\u8BF4\u6848",type_id:"\u8BF4\u6848"},{type_name:"\u77E5\u540DUP\u4E3B",type_id:"\u77E5\u540DUP\u4E3B"},{type_name:"\u63A2\u7D22\u53D1\u73B0",type_id:"\u63A2\u7D22\u53D1\u73B0\u8D85\u6E05"},{type_name:"\u9B3C\u755C",type_id:"\u9B3C\u755C"},{type_name:"\u641E\u7B11",type_id:"\u641E\u7B11\u8D85\u6E05"},{type_name:"\u513F\u7AE5",type_id:"\u513F\u7AE5\u8D85\u6E05"},{type_name:"\u52A8\u7269\u4E16\u754C",type_id:"\u52A8\u7269\u4E16\u754C\u8D85\u6E05"},{type_name:"\u76F8\u58F0\u5C0F\u54C1",type_id:"\u76F8\u58F0\u5C0F\u54C1\u8D85\u6E05"},{type_name:"\u620F\u66F2",type_id:"\u620F\u66F2"},{type_name:"\u89E3\u8BF4",type_id:"\u89E3\u8BF4"},{type_name:"\u6F14\u8BB2",type_id:"\u6F14\u8BB2"},{type_name:"\u5C0F\u59D0\u59D0",type_id:"\u5C0F\u59D0\u59D0\u8D85\u6E05"},{type_name:"\u8352\u91CE\u6C42\u751F",type_id:"\u8352\u91CE\u6C42\u751F\u8D85\u6E05"},{type_name:"\u5065\u8EAB",type_id:"\u5065\u8EAB"},{type_name:"\u5E15\u6885\u62C9",type_id:"\u5E15\u6885\u62C9"},{type_name:"\u592A\u6781\u62F3",type_id:"\u592A\u6781\u62F3"},{type_name:"\u5E7F\u573A\u821E",type_id:"\u5E7F\u573A\u821E"},{type_name:"\u821E\u8E48",type_id:"\u821E\u8E48"},{type_name:"\u97F3\u4E50",type_id:"\u97F3\u4E50"},{type_name:"\u6B4C\u66F2",type_id:"\u6B4C\u66F2"},{type_name:"MV",type_id:"MV4K"},{type_name:"\u821E\u66F2",type_id:"\u821E\u66F2\u8D85\u6E05"},{type_name:"4K",type_id:"4K"},{type_name:"\u7535\u5F71",type_id:"\u7535\u5F71"},{type_name:"\u7535\u89C6\u5267",type_id:"\u7535\u89C6\u5267"},{type_name:"\u767D\u566A\u97F3",type_id:"\u767D\u566A\u97F3\u8D85\u6E05"},{type_name:"\u8003\u516C\u8003\u8BC1",type_id:"\u8003\u516C\u8003\u8BC1"},{type_name:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66",type_id:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66"},{type_name:"\u8F6F\u4EF6\u6559\u7A0B",type_id:"\u8F6F\u4EF6\u6559\u7A0B"},{type_name:"Windows",type_id:"Windows"},{type_name:"\u9009\u7F8E",type_id:"\u9009\u7F8E"},{type_name:"\u6A21\u7279",type_id:"\u6A21\u7279"},{type_name:"\u6CF3\u88C5\u79C0",type_id:"\u6CF3\u88C5\u79C0"},{type_name:"\u5185\u8863\u79C0",type_id:"\u5185\u8863\u79C0"},{type_name:"4K\u97F3\u4E50",type_id:"4K\u97F3\u4E50"},{type_name:"MV",type_id:"MV"},{type_name:"4K MV",type_id:"4K MV"},{type_name:"\u5973\u56E2",type_id:"\u5973\u56E2"},{type_name:"\u76F4\u64AD\u5E73\u53F0",type_id:"\u76F4\u64AD\u5E73\u53F0"},{type_name:"\u6F14\u5531\u4F1A",type_id:"\u6F14\u5531\u4F1A"},{type_name:"\u8BFE\u7A0B\u8F85\u5BFC",type_id:"\u8BFE\u7A0B\u8F85\u5BFC"},{type_name:"\u98CE\u666F",type_id:"\u98CE\u666F"},{type_name:"\u7F8E\u98DF",type_id:"\u7F8E\u98DF"},{type_name:"\u76F8\u58F0\u5C0F\u54C1",type_id:"\u76F8\u58F0\u5C0F\u54C1"},{type_name:"\u52A8\u7269\u4E16\u754C",type_id:"\u52A8\u7269\u4E16\u754C"},{type_name:"\u513F\u7AE5\u5C11\u513F",type_id:"\u513F\u7AE5\u5C11\u513F"}],vBt={\u8003\u516C\u8003\u8BC1:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u5531\u4F1A\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u963F\u675C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u963F\u675C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"Beyond\u6F14\u5531\u4F1A\u8D85\u6E05",v:"Beyond\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"By2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"By2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"BIGBANG\u6F14\u5531\u4F1A\u8D85\u6E05",v:"BIGBANG\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5742\u4E95\u6CC9\u6C34\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5742\u4E95\u6CC9\u6C34\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8349\u8722\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8349\u8722\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5D14\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5D14\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6234\u8343\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6234\u8343\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E01\u5F53\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E01\u5F53\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5200\u90CE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5200\u90CE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D39\u7FD4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D39\u7FD4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u623F\u4E1C\u7684\u732B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u623F\u4E1C\u7684\u732B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5149\u826F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5149\u826F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u9759\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u9759\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u80E1\u590F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u80E1\u590F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u97E9\u7EA2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u97E9\u7EA2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7ECF\u5178\u8001\u6B4C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7ECF\u5178\u8001\u6B4C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u91D1\u6C60\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u91D1\u6C60\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u739F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u739F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5723\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5723\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6881\u9759\u8339\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6881\u9759\u8339\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u7389\u521A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u7389\u521A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9ECE\u660E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9ECE\u660E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"LadyGaga\u6F14\u5531\u4F1A\u8D85\u6E05",v:"LadyGaga\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6734\u6811\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6734\u6811\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9F50\u79E6\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9F50\u79E6\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"SHE\u6F14\u5531\u4F1A\u8D85\u6E05",v:"SHE\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5B59\u6960\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5B59\u6960\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9676\u5586\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9676\u5586\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7530\u9707\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7530\u9707\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C2D\u6676\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C2D\u6676\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u6770\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u6770\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u597D\u58F0\u97F3\u738B\u9756\u96EF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u597D\u58F0\u97F3\u738B\u9756\u96EF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C6A\u5CF0\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C6A\u5CF0\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4F0D\u4F70\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4F0D\u4F70\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u738B\u83F2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u738B\u83F2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F26\u5B50\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F26\u5B50\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8BB8\u5DCD\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8BB8\u5DCD\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8BB8\u5D69\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8BB8\u5D69\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8427\u656C\u817E\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8427\u656C\u817E\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7FBD\u6CC9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7FBD\u6CC9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5764\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5764\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u79C0\u6587\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u79C0\u6587\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u5B87\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u5B87\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u534E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u534E\u5065\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6DF1\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6DF1\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u8D75\u96F7\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u8D75\u96F7\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u6167\u654F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u6167\u654F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A\u8D85\u6E05"},{n:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A\u8D85\u6E05",v:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A\u8D85\u6E05"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u63A2\u7D22\u53D1\u73B0\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7535\u5F71:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u9B3C\u755C:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u4E00\u53E3\u6C14\u6C99\u96D5\u52A8\u6F2B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8BF4\u6848:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u8BF4\u6848",v:"\u8BF4\u6848"},{n:"\u6C64\u5706\u8BF4\u6848",v:"\u6C64\u5706\u8BF4\u6848"},{n:"\u5510\u5510\u8BF4\u6848",v:"\u5510\u5510\u8BF4\u6848"},{n:"\u7F57\u7FD4\u8BF4\u5211\u6CD5",v:"\u7F57\u7FD4\u8BF4\u5211\u6CD5"},{n:"\u4F55\u5BB6\u5F18\u8BF4\u6848",v:"\u4F55\u5BB6\u5F18\u8BF4\u6848"},{n:"\u97E9\u8BFA\u8BF4\u6848",v:"\u97E9\u8BFA\u8BF4\u6848"},{n:"\u8001V\u8BF4\u6848",v:"\u8001V\u8BF4\u6848"},{n:"\u7981\u64AD\u6863\u6848",v:"\u7981\u64AD\u6863\u6848"},{n:"\u8BF4\u6848",v:"\u8BF4\u6848"},{n:"\u7981\u64AD\u6863\u6848",v:"\u7981\u64AD\u6863\u6848"},{n:"4K\u8BF4\u6848",v:"4K\u8BF4\u6848"},{n:"4K\u6C64\u5706\u8BF4\u6848",v:"4K\u6C64\u5706\u8BF4\u6848"},{n:"4K\u5510\u5510\u8BF4\u6848",v:"4K\u5510\u5510\u8BF4\u6848"},{n:"4K\u7F57\u7FD4\u8BF4\u5211\u6CD5",v:"4K\u7F57\u7FD4\u8BF4\u5211\u6CD5"},{n:"4K\u4F55\u5BB6\u5F18\u8BF4\u6848",v:"4K\u4F55\u5BB6\u5F18\u8BF4\u6848"},{n:"4K\u97E9\u8BFA\u8BF4\u6848",v:"4K\u97E9\u8BFA\u8BF4\u6848"},{n:"4K\u8001V\u8BF4\u6848",v:"4K\u8001V\u8BF4\u6848"},{n:"4K\u7981\u64AD\u6863\u6848",v:"4K\u7981\u64AD\u6863\u6848"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u8BB2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8\u6F14\u8BB24K",v:"\u5168\u90E8\u6F14\u8BB24K"},{n:"\u827E\u8DC3\u8FDB\u6F14\u8BB24K",v:"\u827E\u8DC3\u8FDB\u6F14\u8BB24K"},{n:"\u8D85\u7EA7\u6F14\u8BF4\u5BB64K",v:"\u8D85\u7EA7\u6F14\u8BF4\u5BB64K"},{n:"\u7535\u5F71\u6F14\u8BB24K",v:"\u7535\u5F71\u6F14\u8BB24K"},{n:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD4K",v:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD4K"},{n:"\u611F\u52A8\u4E2D\u56FD4K",v:"\u611F\u52A8\u4E2D\u56FD4K"},{n:"\u90ED\u7EE7\u627F\u6F14\u8BB24K",v:"\u90ED\u7EE7\u627F\u6F14\u8BB24K"},{n:"\u534E\u6625\u83B9\u6F14\u8BB24K",v:"\u534E\u6625\u83B9\u6F14\u8BB24K"},{n:"\u96F7\u519B\u6F14\u8BB24K",v:"\u96F7\u519B\u6F14\u8BB24K"},{n:"\u7F57\u7FD4\u6F14\u8BB24K",v:"\u7F57\u7FD4\u6F14\u8BB24K"},{n:"\u4EFB\u6B63\u975E\u6F14\u8BB24K",v:"\u4EFB\u6B63\u975E\u6F14\u8BB24K"},{n:"TED\u6F14\u8BB24K",v:"TED\u6F14\u8BB24K"},{n:"\u6C6A\u6587\u658C\u6F14\u8BB24K",v:"\u6C6A\u6587\u658C\u6F14\u8BB24K"},{n:"\u4E00\u523B\u6F14\u8BB24K",v:"\u4E00\u523B\u6F14\u8BB24K"},{n:"\u8D75\u7ACB\u575A\u6F14\u8BB24K",v:"\u8D75\u7ACB\u575A\u6F14\u8BB24K"},{n:"\u90D1\u5F3A\u6F14\u8BB24K",v:"\u90D1\u5F3A\u6F14\u8BB24K"},{n:"\u6F14\u8BB2",v:"\u6F14\u8BB2"},{n:"\u827E\u8DC3\u8FDB\u6F14\u8BB2",v:"\u827E\u8DC3\u8FDB\u6F14\u8BB2"},{n:"\u8D85\u7EA7\u6F14\u8BF4\u5BB6",v:"\u8D85\u7EA7\u6F14\u8BF4\u5BB6"},{n:"\u7535\u5F71\u6F14\u8BB2",v:"\u7535\u5F71\u6F14\u8BB2"},{n:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD",v:"\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD"},{n:"\u611F\u52A8\u4E2D\u56FD",v:"\u611F\u52A8\u4E2D\u56FD"},{n:"\u90ED\u7EE7\u627F\u6F14\u8BB2",v:"\u90ED\u7EE7\u627F\u6F14\u8BB2"},{n:"\u534E\u6625\u83B9\u6F14\u8BB2",v:"\u534E\u6625\u83B9\u6F14\u8BB2"},{n:"\u96F7\u519B\u6F14\u8BB2",v:"\u96F7\u519B\u6F14\u8BB2"},{n:"\u7F57\u7FD4\u6F14\u8BB2",v:"\u7F57\u7FD4\u6F14\u8BB2"},{n:"\u4EFB\u6B63\u975E\u6F14\u8BB2",v:"\u4EFB\u6B63\u975E\u6F14\u8BB2"},{n:"TED\u6F14\u8BB2",v:"TED\u6F14\u8BB2"},{n:"\u6C6A\u6587\u658C\u6F14\u8BB2",v:"\u6C6A\u6587\u658C\u6F14\u8BB2"},{n:"\u4E00\u523B\u6F14\u8BB2",v:"\u4E00\u523B\u6F14\u8BB2"},{n:"\u8D75\u7ACB\u575A\u6F14\u8BB2",v:"\u8D75\u7ACB\u575A\u6F14\u8BB2"},{n:"\u90D1\u5F3A\u6F14\u8BB2",v:"\u90D1\u5F3A\u6F14\u8BB2"},{n:"4K\u6F14\u8BB2",v:"4K\u6F14\u8BB2"},{n:"4K\u827E\u8DC3\u8FDB\u6F14\u8BB2",v:"4K\u827E\u8DC3\u8FDB\u6F14\u8BB2"},{n:"4K\u8D85\u7EA7\u6F14\u8BF4\u5BB6",v:"4K\u8D85\u7EA7\u6F14\u8BF4\u5BB6"},{n:"4K\u7535\u5F71\u6F14\u8BB2",v:"4K\u7535\u5F71\u6F14\u8BB2"},{n:"4K\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD",v:"4K\u5178\u7C4D\u91CC\u7684\u4E2D\u56FD"},{n:"4K\u611F\u52A8\u4E2D\u56FD",v:"4K\u611F\u52A8\u4E2D\u56FD"},{n:"4K\u90ED\u7EE7\u627F\u6F14\u8BB2",v:"4K\u90ED\u7EE7\u627F\u6F14\u8BB2"},{n:"4K\u534E\u6625\u83B9\u6F14\u8BB2",v:"4K\u534E\u6625\u83B9\u6F14\u8BB2"},{n:"4K\u96F7\u519B\u6F14\u8BB2",v:"4K\u96F7\u519B\u6F14\u8BB2"},{n:"4K\u7F57\u7FD4\u6F14\u8BB2",v:"4K\u7F57\u7FD4\u6F14\u8BB2"},{n:"4K\u4EFB\u6B63\u975E\u6F14\u8BB2",v:"4K\u4EFB\u6B63\u975E\u6F14\u8BB2"},{n:"4K TED\u6F14\u8BB2",v:"4K TED\u6F14\u8BB2"},{n:"4K\u6C6A\u6587\u658C\u6F14\u8BB2",v:"4K\u6C6A\u6587\u658C\u6F14\u8BB2"},{n:"4K\u4E00\u523B\u6F14\u8BB2",v:"4K\u4E00\u523B\u6F14\u8BB2"},{n:"4K\u8D75\u7ACB\u575A\u6F14\u8BB2",v:"4K\u8D75\u7ACB\u575A\u6F14\u8BB2"},{n:"4K\u90D1\u5F3A\u6F14\u8BB2",v:"4K\u90D1\u5F3A\u6F14\u8BB2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u89E3\u8BF4:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u89E3\u8BF4",v:"\u89E3\u8BF4"},{n:"\u7535\u5F71\u89E3\u8BF4",v:"\u7535\u5F71\u89E3\u8BF4"},{n:"\u7535\u89C6\u89E3\u8BF4",v:"\u7535\u89C6\u89E3\u8BF4"},{n:"\u5386\u53F2\u89E3\u8BF4",v:"\u5386\u53F2\u89E3\u8BF4"},{n:"\u52A8\u6F2B\u89E3\u8BF4",v:"\u52A8\u6F2B\u89E3\u8BF4"},{n:"\u5C0F\u8BF4\u89E3\u8BF4",v:"\u5C0F\u8BF4\u89E3\u8BF4"},{n:"\u89E3\u8BF4",v:"\u89E3\u8BF4"},{n:"4K\u89E3\u8BF4",v:"4K\u89E3\u8BF4"},{n:"4K\u7535\u5F71\u89E3\u8BF4",v:"4K\u7535\u5F71\u89E3\u8BF4"},{n:"4K\u7535\u89C6\u89E3\u8BF4",v:"4K\u7535\u89C6\u89E3\u8BF4"},{n:"4K\u5386\u53F2\u89E3\u8BF4",v:"4K\u5386\u53F2\u89E3\u8BF4"},{n:"4K\u52A8\u6F2B\u89E3\u8BF4",v:"4K\u52A8\u6F2B\u89E3\u8BF4"},{n:"4K\u5C0F\u8BF4\u89E3\u8BF4",v:"4K\u5C0F\u8BF4\u89E3\u8BF4"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98CE\u666F4K:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u98CE\u666F4K",v:"\u98CE\u666F4K"},{n:"\u6FB3\u95E8\u98CE\u666F4K",v:"\u6FB3\u95E8\u98CE\u666F4K"},{n:"\u5B89\u5FBD\u98CE\u666F4K",v:"\u5B89\u5FBD\u98CE\u666F4K"},{n:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F4K",v:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F4K"},{n:"\u5317\u4EAC\u98CE\u666F4K",v:"\u5317\u4EAC\u98CE\u666F4K"},{n:"\u91CD\u5E86\u98CE\u666F4K",v:"\u91CD\u5E86\u98CE\u666F4K"},{n:"\u8349\u539F\u98CE\u666F4K",v:"\u8349\u539F\u98CE\u666F4K"},{n:"\u5927\u6D77\u98CE\u666F4K",v:"\u5927\u6D77\u98CE\u666F4K"},{n:"\u798F\u5EFA\u98CE\u666F4K",v:"\u798F\u5EFA\u98CE\u666F4K"},{n:"\u5E7F\u4E1C\u98CE\u666F4K",v:"\u5E7F\u4E1C\u98CE\u666F4K"},{n:"\u5E7F\u897F\u98CE\u666F4K",v:"\u5E7F\u897F\u98CE\u666F4K"},{n:"\u8D35\u5DDE\u98CE\u666F4K",v:"\u8D35\u5DDE\u98CE\u666F4K"},{n:"\u7518\u8083\u98CE\u666F4K",v:"\u7518\u8083\u98CE\u666F4K"},{n:"\u6D77\u5357\u98CE\u666F4K",v:"\u6D77\u5357\u98CE\u666F4K"},{n:"\u6CB3\u5317\u98CE\u666F4K",v:"\u6CB3\u5317\u98CE\u666F4K"},{n:"\u6CB3\u5357\u98CE\u666F4K",v:"\u6CB3\u5357\u98CE\u666F4K"},{n:"\u6E56\u5317\u98CE\u666F4K",v:"\u6E56\u5317\u98CE\u666F4K"},{n:"\u6E56\u5357\u98CE\u666F4K",v:"\u6E56\u5357\u98CE\u666F4K"},{n:"\u9ED1\u9F99\u6C5F\u98CE\u666F4K",v:"\u9ED1\u9F99\u6C5F\u98CE\u666F4K"},{n:"\u5409\u6797\u98CE\u666F4K",v:"\u5409\u6797\u98CE\u666F4K"},{n:"\u6C5F\u82CF\u98CE\u666F4K",v:"\u6C5F\u82CF\u98CE\u666F4K"},{n:"\u6C5F\u897F\u98CE\u666F4K",v:"\u6C5F\u897F\u98CE\u666F4K"},{n:"\u8FBD\u5B81\u98CE\u666F4K",v:"\u8FBD\u5B81\u98CE\u666F4K"},{n:"\u6C11\u5BBF\u98CE\u666F4K",v:"\u6C11\u5BBF\u98CE\u666F4K"},{n:"\u5185\u8499\u53E4\u98CE\u666F4K",v:"\u5185\u8499\u53E4\u98CE\u666F4K"},{n:"\u5B81\u590F\u98CE\u666F4K",v:"\u5B81\u590F\u98CE\u666F4K"},{n:"\u9752\u6D77\u98CE\u666F4K",v:"\u9752\u6D77\u98CE\u666F4K"},{n:"\u4E0A\u6D77\u98CE\u666F4K",v:"\u4E0A\u6D77\u98CE\u666F4K"},{n:"\u9655\u897F\u98CE\u666F4K",v:"\u9655\u897F\u98CE\u666F4K"},{n:"\u56DB\u5DDD\u98CE\u666F4K",v:"\u56DB\u5DDD\u98CE\u666F4K"},{n:"\u5C71\u897F\u98CE\u666F4K",v:"\u5C71\u897F\u98CE\u666F4K"},{n:"\u5C71\u4E1C\u98CE\u666F4K",v:"\u5C71\u4E1C\u98CE\u666F4K"},{n:"\u5929\u6D25\u98CE\u666F4K",v:"\u5929\u6D25\u98CE\u666F4K"},{n:"\u53F0\u6E7E\u98CE\u666F4K",v:"\u53F0\u6E7E\u98CE\u666F4K"},{n:"\u5929\u7A7A\u98CE\u666F4K",v:"\u5929\u7A7A\u98CE\u666F4K"},{n:"\u897F\u6E56\u98CE\u666F4K",v:"\u897F\u6E56\u98CE\u666F4K"},{n:"\u897F\u85CF\u98CE\u666F4K",v:"\u897F\u85CF\u98CE\u666F4K"},{n:"\u65B0\u7586\u98CE\u666F4K",v:"\u65B0\u7586\u98CE\u666F4K"},{n:"\u9999\u6E2F\u98CE\u666F4K",v:"\u9999\u6E2F\u98CE\u666F4K"},{n:"\u4E91\u5357\u98CE\u666F4K",v:"\u4E91\u5357\u98CE\u666F4K"},{n:"\u6D59\u6C5F\u98CE\u666F4K",v:"\u6D59\u6C5F\u98CE\u666F4K"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],MV4K:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"MV4K",v:"MV4K"},{n:"\u963F\u675CMV4K",v:"\u963F\u675CMV4K"},{n:"\u963F\u9EDB\u5C14MV4K",v:"\u963F\u9EDB\u5C14MV4K"},{n:"BeyondMV4K",v:"BeyondMV4K"},{n:"By2MV4K",v:"By2MV4K"},{n:"BIGBANGMV4K",v:"BIGBANGMV4K"},{n:"\u5E03\u5170\u59AEMV4K",v:"\u5E03\u5170\u59AEMV4K"},{n:"\u9648\u5955\u8FC5MV4K",v:"\u9648\u5955\u8FC5MV4K"},{n:"\u8521\u4F9D\u6797MV4K",v:"\u8521\u4F9D\u6797MV4K"},{n:"\u521D\u97F3\u672A\u6765MV4K",v:"\u521D\u97F3\u672A\u6765MV4K"},{n:"\u8521\u5065\u96C5MV4K",v:"\u8521\u5065\u96C5MV4K"},{n:"\u9648\u5C0F\u6625MV4K",v:"\u9648\u5C0F\u6625MV4K"},{n:"\u8349\u8722MV4K",v:"\u8349\u8722MV4K"},{n:"\u9648\u6167\u5A34MV4K",v:"\u9648\u6167\u5A34MV4K"},{n:"\u5D14\u5065MV4K",v:"\u5D14\u5065MV4K"},{n:"\u4ED3\u6728\u9EBB\u8863MV4K",v:"\u4ED3\u6728\u9EBB\u8863MV4K"},{n:"\u6234\u8343MV4K",v:"\u6234\u8343MV4K"},{n:"\u52A8\u529B\u706B\u8F66MV4K",v:"\u52A8\u529B\u706B\u8F66MV4K"},{n:"\u9093\u4E3D\u541BMV4K",v:"\u9093\u4E3D\u541BMV4K"},{n:"\u4E01\u5F53MV4K",v:"\u4E01\u5F53MV4K"},{n:"\u5200\u90CEMV4K",v:"\u5200\u90CEMV4K"},{n:"\u9093\u7D2B\u68CBMV4K",v:"\u9093\u7D2B\u68CBMV4K"},{n:"\u6234\u4F69\u59AEMV4K",v:"\u6234\u4F69\u59AEMV4K"},{n:"\u9093\u4E3D\u541BMV4K",v:"\u9093\u4E3D\u541BMV4K"},{n:"\u98DE\u513F\u4E50\u961FMV4K",v:"\u98DE\u513F\u4E50\u961FMV4K"},{n:"\u8D39\u7389\u6E05MV4K",v:"\u8D39\u7389\u6E05MV4K"},{n:"\u8D39\u7FD4MV4K",v:"\u8D39\u7FD4MV4K"},{n:"\u65B9\u5927\u540CMV4K",v:"\u65B9\u5927\u540CMV4K"},{n:"\u623F\u4E1C\u7684\u732BMV4K",v:"\u623F\u4E1C\u7684\u732BMV4K"},{n:"\u51E4\u98DE\u98DEMV4K",v:"\u51E4\u98DE\u98DEMV4K"},{n:"\u51E4\u51F0\u4F20\u5947MV4K",v:"\u51E4\u51F0\u4F20\u5947MV4K"},{n:"\u53E4\u98CE\u6B4C\u66F24K",v:"\u53E4\u98CE\u6B4C\u66F24K"},{n:"\u56FD\u4E50\u5927\u51784K",v:"\u56FD\u4E50\u5927\u51784K"},{n:"\u90ED\u91C7\u6D01MV4K",v:"\u90ED\u91C7\u6D01MV4K"},{n:"\u5149\u826FMV4K",v:"\u5149\u826FMV4K"},{n:"\u90ED\u9759MV4K",v:"\u90ED\u9759MV4K"},{n:"\u90ED\u5BCC\u57CEMV4K",v:"\u90ED\u5BCC\u57CEMV4K"},{n:"\u80E1\u5F66\u658CMV4K",v:"\u80E1\u5F66\u658CMV4K"},{n:"\u80E1\u590FMV4K",v:"\u80E1\u590FMV4K"},{n:"\u97E9\u7EA2MV4K",v:"\u97E9\u7EA2MV4K"},{n:"\u9EC4\u54C1\u6E90MV4K",v:"\u9EC4\u54C1\u6E90MV4K"},{n:"\u9EC4\u5C0F\u7425MV4K",v:"\u9EC4\u5C0F\u7425MV4K"},{n:"\u82B1\u513F\u4E50\u961FMV4K",v:"\u82B1\u513F\u4E50\u961FMV4K"},{n:"\u9EC4\u5BB6\u5F3AMV4K",v:"\u9EC4\u5BB6\u5F3AMV4K"},{n:"\u540E\u8857\u7537\u5B69MV4K",v:"\u540E\u8857\u7537\u5B69MV4K"},{n:"\u7ECF\u5178\u8001\u6B4C4K",v:"\u7ECF\u5178\u8001\u6B4C4K"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2FMV4K",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2FMV4K"},{n:"\u91D1\u6C60MV4K",v:"\u91D1\u6C60MV4K"},{n:"\u91D1\u5FD7\u6587MV4K",v:"\u91D1\u5FD7\u6587MV4K"},{n:"\u7126\u8FC8\u5947MV4K",v:"\u7126\u8FC8\u5947MV4K"},{n:"\u7B77\u5B50\u5144\u5F1FMV4K",v:"\u7B77\u5B50\u5144\u5F1FMV4K"},{n:"\u674E\u739FMV4K",v:"\u674E\u739FMV4K"},{n:"\u6797\u5FC6\u83B2MV4K",v:"\u6797\u5FC6\u83B2MV4K"},{n:"\u674E\u514B\u52E4MV4K",v:"\u674E\u514B\u52E4MV4K"},{n:"\u5218\u5BAA\u534EMV4K",v:"\u5218\u5BAA\u534EMV4K"},{n:"\u674E\u5723\u6770MV4K",v:"\u674E\u5723\u6770MV4K"},{n:"\u6797\u5BA5\u5609MV4K",v:"\u6797\u5BA5\u5609MV4K"},{n:"\u6881\u9759\u8339MV4K",v:"\u6881\u9759\u8339MV4K"},{n:"\u674E\u5065MV4K",v:"\u674E\u5065MV4K"},{n:"\u6797\u4FCA\u6770MV4K",v:"\u6797\u4FCA\u6770MV4K"},{n:"\u674E\u7389\u521AMV4K",v:"\u674E\u7389\u521AMV4K"},{n:"\u6797\u5FD7\u70ABMV4K",v:"\u6797\u5FD7\u70ABMV4K"},{n:"\u674E\u8363\u6D69MV4K",v:"\u674E\u8363\u6D69MV4K"},{n:"\u674E\u5B87\u6625MV4K",v:"\u674E\u5B87\u6625MV4K"},{n:"\u6D1B\u5929\u4F9DMV4K",v:"\u6D1B\u5929\u4F9DMV4K"},{n:"\u6797\u5B50\u7965MV4K",v:"\u6797\u5B50\u7965MV4K"},{n:"\u674E\u5B97\u76DBMV4K",v:"\u674E\u5B97\u76DBMV4K"},{n:"\u9ECE\u660EMV4K",v:"\u9ECE\u660EMV4K"},{n:"\u5218\u5FB7\u534EMV4K",v:"\u5218\u5FB7\u534EMV4K"},{n:"\u7F57\u5927\u4F51MV4K",v:"\u7F57\u5927\u4F51MV4K"},{n:"\u6797\u80AF\u516C\u56EDMV4K",v:"\u6797\u80AF\u516C\u56EDMV4K"},{n:"LadyGagaMV4K",v:"LadyGagaMV4K"},{n:"\u65C5\u884C\u56E2\u4E50\u961FMV4K",v:"\u65C5\u884C\u56E2\u4E50\u961FMV4K"},{n:"\u83AB\u6587\u851AMV4K",v:"\u83AB\u6587\u851AMV4K"},{n:"\u6BDB\u4E0D\u6613MV4K",v:"\u6BDB\u4E0D\u6613MV4K"},{n:"\u6885\u8273\u82B3MV4K",v:"\u6885\u8273\u82B3MV4K"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900AMV4K",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900AMV4K"},{n:"\u5357\u62F3\u5988\u5988MV4K",v:"\u5357\u62F3\u5988\u5988MV4K"},{n:"\u6734\u6811MV4K",v:"\u6734\u6811MV4K"},{n:"\u9F50\u79E6MV4K",v:"\u9F50\u79E6MV4K"},{n:"\u9752\u9E1F\u98DE\u9C7CMV4K",v:"\u9752\u9E1F\u98DE\u9C7CMV4K"},{n:"\u5BB9\u7956\u513FMV4K",v:"\u5BB9\u7956\u513FMV4K"},{n:"\u70ED\u6B4CMV4K",v:"\u70ED\u6B4CMV4K"},{n:"\u4EFB\u8D24\u9F50MV4K",v:"\u4EFB\u8D24\u9F50MV4K"},{n:"\u6C34\u6728\u5E74\u534EMV4K",v:"\u6C34\u6728\u5E74\u534EMV4K"},{n:"\u5B59\u71D5\u59FFMV4K",v:"\u5B59\u71D5\u59FFMV4K"},{n:"\u82CF\u6253\u7EFFMV4K",v:"\u82CF\u6253\u7EFFMV4K"},{n:"SHEMV4K",v:"SHEMV4K"},{n:"\u5B59\u6960MV4K",v:"\u5B59\u6960MV4K"},{n:"\u9676\u5586MV4K",v:"\u9676\u5586MV4K"},{n:"\u8C2D\u548F\u9E9FMV4K",v:"\u8C2D\u548F\u9E9FMV4K"},{n:"\u7530\u99A5\u7504MV4K",v:"\u7530\u99A5\u7504MV4K"},{n:"\u8C2D\u7EF4\u7EF4MV4K",v:"\u8C2D\u7EF4\u7EF4MV4K"},{n:"\u9003\u8DD1\u8BA1\u5212MV4K",v:"\u9003\u8DD1\u8BA1\u5212MV4K"},{n:"\u7530\u9707MV4K",v:"\u7530\u9707MV4K"},{n:"\u8C2D\u6676MV4K",v:"\u8C2D\u6676MV4K"},{n:"\u5C60\u6D2A\u521AMV4K",v:"\u5C60\u6D2A\u521AMV4K"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279MV4K",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279MV4K"},{n:"\u738B\u529B\u5B8FMV4K",v:"\u738B\u529B\u5B8FMV4K"},{n:"\u738B\u6770MV4K",v:"\u738B\u6770MV4K"},{n:"\u5434\u514B\u7FA4MV4K",v:"\u5434\u514B\u7FA4MV4K"},{n:"\u738B\u5FC3\u51CCMV4K",v:"\u738B\u5FC3\u51CCMV4K"},{n:"\u6C6A\u5CF0MV4K",v:"\u6C6A\u5CF0MV4K"},{n:"\u4F0D\u4F70MV4K",v:"\u4F0D\u4F70MV4K"},{n:"\u738B\u83F2MV4K",v:"\u738B\u83F2MV4K"},{n:"\u4E94\u6708\u5929MV4K",v:"\u4E94\u6708\u5929MV4K"},{n:"\u6C6A\u82CF\u6CF7MV4K",v:"\u6C6A\u82CF\u6CF7MV4K"},{n:"\u5F90\u4F73\u83B9MV4K",v:"\u5F90\u4F73\u83B9MV4K"},{n:"\u5F26\u5B50MV4K",v:"\u5F26\u5B50MV4K"},{n:"\u8427\u4E9A\u8F69MV4K",v:"\u8427\u4E9A\u8F69MV4K"},{n:"\u8BB8\u5DCDMV4K",v:"\u8BB8\u5DCDMV4K"},{n:"\u859B\u4E4B\u8C26MV4K",v:"\u859B\u4E4B\u8C26MV4K"},{n:"\u8BB8\u5D69MV4K",v:"\u8BB8\u5D69MV4K"},{n:"\u5C0F\u864E\u961FMV4K",v:"\u5C0F\u864E\u961FMV4K"},{n:"\u8427\u656C\u817EMV4K",v:"\u8427\u656C\u817EMV4K"},{n:"\u8C22\u9706\u950BMV4K",v:"\u8C22\u9706\u950BMV4K"},{n:"\u5F90\u5C0F\u51E4MV4K",v:"\u5F90\u5C0F\u51E4MV4K"},{n:"\u4FE1\u4E50\u961FMV4K",v:"\u4FE1\u4E50\u961FMV4K"},{n:"\u591C\u613F\u4E50\u961FMV4K",v:"\u591C\u613F\u4E50\u961FMV4K"},{n:"\u539F\u521B\u97F3\u4E50MV4K",v:"\u539F\u521B\u97F3\u4E50MV4K"},{n:"\u7FBD\u6CC9MV4K",v:"\u7FBD\u6CC9MV4K"},{n:"\u7CA4\u8BEDMV4K",v:"\u7CA4\u8BEDMV4K"},{n:"\u90C1\u53EF\u552FMV4K",v:"\u90C1\u53EF\u552FMV4K"},{n:"\u53F6\u5029\u6587MV4K",v:"\u53F6\u5029\u6587MV4K"},{n:"\u6768\u5764MV4K",v:"\u6768\u5764MV4K"},{n:"\u5EBE\u6F84\u5E86MV4K",v:"\u5EBE\u6F84\u5E86MV4K"},{n:"\u5C24\u957F\u9756MV4K",v:"\u5C24\u957F\u9756MV4K"},{n:"\u6613\u70CA\u5343\u73BAMV4K",v:"\u6613\u70CA\u5343\u73BAMV4K"},{n:"\u8881\u5A05\u7EF4MV4K",v:"\u8881\u5A05\u7EF4MV4K"},{n:"\u6768\u4E1E\u7433MV4K",v:"\u6768\u4E1E\u7433MV4K"},{n:"\u6768\u5343\u5B05MV4K",v:"\u6768\u5343\u5B05MV4K"},{n:"\u6768\u5B97\u7EACMV4K",v:"\u6768\u5B97\u7EACMV4K"},{n:"\u5468\u6770\u4F26MV4K",v:"\u5468\u6770\u4F26MV4K"},{n:"\u5F20\u5B66\u53CBMV4K",v:"\u5F20\u5B66\u53CBMV4K"},{n:"\u5F20\u4FE1\u54F2MV4K",v:"\u5F20\u4FE1\u54F2MV4K"},{n:"\u5F20\u5B87MV4K",v:"\u5F20\u5B87MV4K"},{n:"\u5468\u534E\u5065MV4K",v:"\u5468\u534E\u5065MV4K"},{n:"\u5F20\u97F6\u6DB5MV4K",v:"\u5F20\u97F6\u6DB5MV4K"},{n:"\u5468\u6DF1MV4K",v:"\u5468\u6DF1MV4K"},{n:"\u7EB5\u8D2F\u7EBFMV4K",v:"\u7EB5\u8D2F\u7EBFMV4K"},{n:"\u8D75\u96F7MV4K",v:"\u8D75\u96F7MV4K"},{n:"\u5468\u4F20\u96C4MV4K",v:"\u5468\u4F20\u96C4MV4K"},{n:"\u5F20\u56FD\u8363MV4K",v:"\u5F20\u56FD\u8363MV4K"},{n:"\u5468\u6167\u654FMV4K",v:"\u5468\u6167\u654FMV4K"},{n:"\u5F20\u60E0\u59B9MV4K",v:"\u5F20\u60E0\u59B9MV4K"},{n:"\u5468\u7B14\u7545MV4K",v:"\u5468\u7B14\u7545MV4K"},{n:"\u90D1\u4E2D\u57FAMV4K",v:"\u90D1\u4E2D\u57FAMV4K"},{n:"\u5F20\u827A\u5174MV4K",v:"\u5F20\u827A\u5174MV4K"},{n:"\u5F20\u9707\u5CB3MV4K",v:"\u5F20\u9707\u5CB3MV4K"},{n:"\u4E2D\u56FD\u597D\u58F0\u97F3MV4K",v:"\u4E2D\u56FD\u597D\u58F0\u97F3MV4K"},{n:"\u5F20\u96E8\u751FMV4K",v:"\u5F20\u96E8\u751FMV4K"},{n:"\u90D1\u667A\u5316MV4K",v:"\u90D1\u667A\u5316MV4K"},{n:"\u5353\u4F9D\u5A77MV4K",v:"\u5353\u4F9D\u5A77MV4K"},{n:"\u4E2D\u5C9B\u7F8E\u96EAMV4K",v:"\u4E2D\u5C9B\u7F8E\u96EAMV4K"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E15\u6885\u62C9:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5E15\u6885\u62C9",v:"\u5E15\u6885\u62C9"},{n:"\u5E15\u6885\u62C9\u7626\u817F",v:"\u5E15\u6885\u62C9\u7626\u817F"},{n:"\u5E15\u6885\u62C9\u8179\u90E8",v:"\u5E15\u6885\u62C9\u8179\u90E8"},{n:"\u5E15\u6885\u62C9\u624B\u81C2",v:"\u5E15\u6885\u62C9\u624B\u81C2"},{n:"\u5E15\u6885\u62C9\u70ED\u8EAB",v:"\u5E15\u6885\u62C9\u70ED\u8EAB"},{n:"\u5E15\u6885\u62C9\u821E\u8E48",v:"\u5E15\u6885\u62C9\u821E\u8E48"},{n:"\u5E15\u6885\u62C9\u71C3\u8102",v:"\u5E15\u6885\u62C9\u71C3\u8102"},{n:"\u5E15\u6885\u62C9\u6709\u6C27",v:"\u5E15\u6885\u62C9\u6709\u6C27"},{n:"\u5E15\u6885\u62C9\u62C9\u4F38",v:"\u5E15\u6885\u62C9\u62C9\u4F38"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u77E5\u540DUP\u4E3B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u77E5\u540DUP\u4E3B",v:"\u77E5\u540DUP\u4E3B"},{n:"\u83E0\u841D\u8D5B\u4E1C",v:"\u83E0\u841D\u8D5B\u4E1C"},{n:"\u51AF\u63D0\u83AB",v:"\u51AF\u63D0\u83AB"},{n:"\u6797\u5EF6\u79CB",v:"\u6797\u5EF6\u79CB"},{n:"-LKs-",v:"-LKs-"},{n:"\u5C0F\u7EA6\u7FF0\u53EF\u6C57",v:"\u5C0F\u7EA6\u7FF0\u53EF\u6C57"},{n:"low\u9986\u957F",v:"low\u9986\u957F"},{n:"\u81EA\u8BF4\u81EA\u8BDD\u7684\u603B\u88C1",v:"\u81EA\u8BF4\u81EA\u8BDD\u7684\u603B\u88C1"},{n:"\u6240\u957F\u6797\u8D85",v:"\u6240\u957F\u6797\u8D85"},{n:"\u4E16\u754C\u672A\u89E3\u4E4B\u8C1CM",v:"\u4E16\u754C\u672A\u89E3\u4E4B\u8C1CM"},{n:"\u674E\u6C38\u4E50\u8001\u5E08\u5B98\u65B9",v:"\u674E\u6C38\u4E50\u8001\u5E08\u5B98\u65B9"},{n:"\u7F57\u5179",v:"\u7F57\u5179"},{n:"\u56DE\u52302049",v:"\u56DE\u52302049"},{n:"\u4E8C\u6B21\u5143\u7684\u4E2D\u79D1\u9662\u7269\u7406\u6240",v:"\u4E8C\u6B21\u5143\u7684\u4E2D\u79D1\u9662\u7269\u7406\u6240"},{n:"\u6BD5\u5BFCTHU",v:"\u6BD5\u5BFCTHU"},{n:"\u7F57\u7FD4\u8BB2\u5211\u6CD5",v:"\u7F57\u7FD4\u8BB2\u5211\u6CD5"},{n:"\u6234\u535A\u58EB\u5B9E\u9A8C\u5BA4",v:"\u6234\u535A\u58EB\u5B9E\u9A8C\u5BA4"},{n:"\u82B3\u65AF\u5854\u8299",v:"\u82B3\u65AF\u5854\u8299"},{n:"\u53C2\u8D5B\u8005\u7F51",v:"\u53C2\u8D5B\u8005\u7F51"},{n:"\u4E09\u7EF4\u5730\u56FE\u770B\u4E16\u754C",v:"\u4E09\u7EF4\u5730\u56FE\u770B\u4E16\u754C"},{n:"\u6709\u673A\u793E\u4F1A",v:"\u6709\u673A\u793E\u4F1A"},{n:"\u4E4C\u9E26\u6821\u5C09CaptainWuya",v:"\u4E4C\u9E26\u6821\u5C09CaptainWuya"},{n:"\u679C\u58F3",v:"\u679C\u58F3"},{n:"\u4E25\u4F2F\u94A7",v:"\u4E25\u4F2F\u94A7"},{n:"\u662F\u4F60\u4EEC\u7684\u5EB7\u5EB7",v:"\u662F\u4F60\u4EEC\u7684\u5EB7\u5EB7"},{n:"\u8001\u7238\u8BC4\u6D4B",v:"\u8001\u7238\u8BC4\u6D4B"},{n:"\u786C\u6838\u7684\u534A\u4F5B\u4ED9\u4EBA",v:"\u786C\u6838\u7684\u534A\u4F5B\u4ED9\u4EBA"},{n:"\u76D7\u6708\u793E\u98DF\u9047\u8BB0",v:"\u76D7\u6708\u793E\u98DF\u9047\u8BB0"},{n:"\u6211\u662F\u90ED\u6770\u745E",v:"\u6211\u662F\u90ED\u6770\u745E"},{n:"\u65E0\u7A77\u5C0F\u4EAE\u7684\u79D1\u666E\u65E5\u5E38",v:"\u65E0\u7A77\u5C0F\u4EAE\u7684\u79D1\u666E\u65E5\u5E38"},{n:"papi\u9171",v:"papi\u9171"},{n:"\u8001\u756A\u8304",v:"\u8001\u756A\u8304"},{n:"\u7EF5\u7F8A\u6599\u7406",v:"\u7EF5\u7F8A\u6599\u7406"},{n:"\u8001\u5E08\u597D\u6211\u53EB\u4F55\u540C\u5B66",v:"\u8001\u5E08\u597D\u6211\u53EB\u4F55\u540C\u5B66"},{n:"\u656C\u6C49\u537F",v:"\u656C\u6C49\u537F"},{n:"\u5468\u516D\u91CEZoey",v:"\u5468\u516D\u91CEZoey"},{n:"\u6728\u9C7C\u6C34\u5FC3",v:"\u6728\u9C7C\u6C34\u5FC3"},{n:"\u51C9\u98CEKaze",v:"\u51C9\u98CEKaze"},{n:"\u5C0F\u6F6E\u9662\u957F",v:"\u5C0F\u6F6E\u9662\u957F"},{n:"\u4E2D\u56FDBOY\u8D85\u7EA7\u5927\u7329\u7329",v:"\u4E2D\u56FDBOY\u8D85\u7EA7\u5927\u7329\u7329"},{n:"\u674E\u5B50\u67D2",v:"\u674E\u5B50\u67D2"},{n:"\u6556\u5382\u957F",v:"\u6556\u5382\u957F"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u592A\u6781\u62F3:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u592A\u6781\u62F3",v:"\u592A\u6781\u62F3"},{n:"\u592A\u6781\u62F3\u90B1\u6167\u82B3",v:"\u592A\u6781\u62F3\u90B1\u6167\u82B3"},{n:"\u592A\u6781\u62F3\u9648\u6C0F",v:"\u592A\u6781\u62F3\u9648\u6C0F"},{n:"\u592A\u6781\u62F3\u6B66\u5F53",v:"\u592A\u6781\u62F3\u6B66\u5F53"},{n:"\u592A\u6781\u62F3\u4E8C\u5341\u56DB\u5F0F",v:"\u592A\u6781\u62F3\u4E8C\u5341\u56DB\u5F0F"},{n:"\u592A\u6781\u62F3\u4E09\u5341\u516D\u5F0F",v:"\u592A\u6781\u62F3\u4E09\u5341\u516D\u5F0F"},{n:"\u4E94\u79BD\u620F",v:"\u4E94\u79BD\u620F"},{n:"\u516B\u6BB5\u9526",v:"\u516B\u6BB5\u9526"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u821E\u8E48:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u821E\u8E48",v:"\u821E\u8E48"},{n:"\u5B85\u821E",v:"\u5B85\u821E"},{n:"\u8857\u821E",v:"\u8857\u821E"},{n:"\u4E2D\u56FD\u821E",v:"\u4E2D\u56FD\u821E"},{n:"\u5E7F\u573A\u821E",v:"\u5E7F\u573A\u821E"},{n:"\u4EA4\u8C0A\u821E",v:"\u4EA4\u8C0A\u821E"},{n:"\u821E\u8E48\u6559\u7A0B",v:"\u821E\u8E48\u6559\u7A0B"},{n:"\u821E\u8E48",v:"\u821E\u8E48"},{n:"\u660E\u661F\u821E\u8E48",v:"\u660E\u661F\u821E\u8E48"},{n:"\u97E9\u821E",v:"\u97E9\u821E"},{n:"\u53E4\u5178\u821E",v:"\u53E4\u5178\u821E"},{n:"\u7FFB\u8DF3",v:"\u7FFB\u8DF3"},{n:"\u53E4\u98CE\u821E",v:"\u53E4\u98CE\u821E"},{n:"\u73B0\u4EE3\u821E",v:"\u73B0\u4EE3\u821E"},{n:"\u7235\u58EB\u821E",v:"\u7235\u58EB\u821E"},{n:"\u82AD\u857E",v:"\u82AD\u857E"},{n:"\u7F16\u821E",v:"\u7F16\u821E"},{n:"POPPING",v:"POPPING"},{n:"\u6781\u4E50\u51C0\u571F",v:"\u6781\u4E50\u51C0\u571F"},{n:"\u6843\u6E90\u604B\u6B4C",v:"\u6843\u6E90\u604B\u6B4C"},{n:"\u65B0\u5B9D\u5C9B",v:"\u65B0\u5B9D\u5C9B"},{n:"\u62C9\u4E01\u821E",v:"\u62C9\u4E01\u821E"},{n:"\u8E66\u8FEA",v:"\u8E66\u8FEA"},{n:"\u6C11\u65CF\u821E",v:"\u6C11\u65CF\u821E"},{n:"\u6296\u80A9\u821E",v:"\u6296\u80A9\u821E"},{n:"\u9F50\u821E",v:"\u9F50\u821E"},{n:"\u673A\u68B0\u821E",v:"\u673A\u68B0\u821E"},{n:"BDF",v:"BDF"},{n:"\u7EC3\u4E60\u5BA4",v:"\u7EC3\u4E60\u5BA4"},{n:"\u7F8E\u5973\u821E\u8E48",v:"\u7F8E\u5973\u821E\u8E48"},{n:"\u725B\u4ED4\u88E4",v:"\u725B\u4ED4\u88E4"},{n:"\u9ED1\u4E1D",v:"\u9ED1\u4E1D"},{n:"\u8D85\u77ED\u88E4",v:"\u8D85\u77ED\u88E4"},{n:"\u8D85\u77ED\u88D9",v:"\u8D85\u77ED\u88D9"},{n:"\u821E\u8E48\u7EFC\u5408",v:"\u821E\u8E48\u7EFC\u5408"},{n:"\u821E\u8E48\u6559\u7A0B",v:"\u821E\u8E48\u6559\u7A0B"},{n:"4K\u821E\u8E48",v:"4K\u821E\u8E48"},{n:"4K\u5B85\u821E",v:"4K\u5B85\u821E"},{n:"4K\u8857\u821E",v:"4K\u8857\u821E"},{n:"4K\u660E\u661F\u821E\u8E48",v:"4K\u660E\u661F\u821E\u8E48"},{n:"4K\u97E9\u821E",v:"4K\u97E9\u821E"},{n:"4K\u53E4\u5178\u821E",v:"4K\u53E4\u5178\u821E"},{n:"4K\u7FFB\u8DF3",v:"4K\u7FFB\u8DF3"},{n:"4K\u4E2D\u56FD\u821E",v:"4K\u4E2D\u56FD\u821E"},{n:"4K\u53E4\u98CE\u821E",v:"4K\u53E4\u98CE\u821E"},{n:"4K\u73B0\u4EE3\u821E",v:"4K\u73B0\u4EE3\u821E"},{n:"4K\u7235\u58EB\u821E",v:"4K\u7235\u58EB\u821E"},{n:"4K\u82AD\u857E",v:"4K\u82AD\u857E"},{n:"4K\u7F16\u821E",v:"4K\u7F16\u821E"},{n:"4K POPPING",v:"4K POPPING"},{n:"4K\u6781\u4E50\u51C0\u571F",v:"4K\u6781\u4E50\u51C0\u571F"},{n:"4K\u6843\u6E90\u604B\u6B4C",v:"4K\u6843\u6E90\u604B\u6B4C"},{n:"4K\u65B0\u5B9D\u5C9B",v:"4K\u65B0\u5B9D\u5C9B"},{n:"4K\u62C9\u4E01\u821E",v:"4K\u62C9\u4E01\u821E"},{n:"4K\u8E66\u8FEA",v:"4K\u8E66\u8FEA"},{n:"4K\u6C11\u65CF\u821E",v:"4K\u6C11\u65CF\u821E"},{n:"4K\u6296\u80A9\u821E",v:"4K\u6296\u80A9\u821E"},{n:"4K\u9F50\u821E",v:"4K\u9F50\u821E"},{n:"4K\u673A\u68B0\u821E",v:"4K\u673A\u68B0\u821E"},{n:"4K\u5E7F\u573A\u821E",v:"4K\u5E7F\u573A\u821E"},{n:"4KBDF",v:"4KBDF"},{n:"4K\u7EC3\u4E60\u5BA4",v:"4K\u7EC3\u4E60\u5BA4"},{n:"4K\u7F8E\u5973\u821E\u8E48",v:"4K\u7F8E\u5973\u821E\u8E48"},{n:"4K\u725B\u4ED4\u88E4",v:"4K\u725B\u4ED4\u88E4"},{n:"4K\u9ED1\u4E1D",v:"4K\u9ED1\u4E1D"},{n:"4K\u8D85\u77ED\u88E4",v:"4K\u8D85\u77ED\u88E4"},{n:"4K\u8D85\u77ED\u88D9",v:"4K\u8D85\u77ED\u88D9"},{n:"4K\u821E\u8E48\u7EFC\u5408",v:"4K\u821E\u8E48\u7EFC\u5408"},{n:"4K\u821E\u8E48\u6559\u7A0B",v:"4K\u821E\u8E48\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u97F3\u4E50:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u94A2\u7434\u66F2",v:"\u94A2\u7434\u66F2"},{n:"\u534F\u594F\u66F2r",v:"\u534F\u594F\u66F2r"},{n:"\u4E2D\u56FD\u53E4\u98CE\u97F3\u4E50",v:"\u4E2D\u56FD\u53E4\u98CE\u97F3\u4E50"},{n:"\u80CC\u666F\u97F3\u4E50",v:"\u80CC\u666F\u97F3\u4E50"},{n:"\u52A9\u7720\u97F3\u4E50",v:"\u52A9\u7720\u97F3\u4E50"},{n:"\u80CE\u6559\u97F3\u4E50",v:"\u80CE\u6559\u97F3\u4E50"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u539F\u521B\u97F3\u4E50",v:"\u539F\u521B\u97F3\u4E50"},{n:"\u7FFB\u5531",v:"\u7FFB\u5531"},{n:"\u6F14\u594F",v:"\u6F14\u594F"},{n:"VOCALOID\xB7UTAU",v:"VOCALOID\xB7UTAU"},{n:"\u97F3\u4E50\u73B0\u573A",v:"\u97F3\u4E50\u73B0\u573A"},{n:"\u539F\u58F0\u97F3\u4E50",v:"\u539F\u58F0\u97F3\u4E50"},{n:"\u4E50\u8BC4\u76D8\u70B9",v:"\u4E50\u8BC4\u76D8\u70B9"},{n:"\u97F3\u4E50\u6559\u5B66",v:"\u97F3\u4E50\u6559\u5B66"},{n:"\u97F3\u4E50\u7EFC\u5408",v:"\u97F3\u4E50\u7EFC\u5408"},{n:"\u8BF4\u5531",v:"\u8BF4\u5531"},{n:"HIPHOP",v:"HIPHOP"},{n:"\u4E2D\u56FD\u98CE",v:"\u4E2D\u56FD\u98CE"},{n:"\u53E4\u98CE",v:"\u53E4\u98CE"},{n:"\u7535\u97F3",v:"\u7535\u97F3"},{n:"\u6447\u6EDA",v:"\u6447\u6EDA"},{n:"\u6C11\u8C23",v:"\u6C11\u8C23"},{n:"\u7235\u58EB",v:"\u7235\u58EB"},{n:"\u7EAF\u97F3\u4E50",v:"\u7EAF\u97F3\u4E50"},{n:"BEAT",v:"BEAT"},{n:"REMIX",v:"REMIX"},{n:"\u4EBA\u58F0\u672C\u5BB6",v:"\u4EBA\u58F0\u672C\u5BB6"},{n:"\u56FD\u4EBA\u539F\u521B",v:"\u56FD\u4EBA\u539F\u521B"},{n:"\u539F\u521B\u6B4C\u66F2",v:"\u539F\u521B\u6B4C\u66F2"},{n:"\u7F16\u66F2",v:"\u7F16\u66F2"},{n:"\u6539\u7F16",v:"\u6539\u7F16"},{n:"\u5409\u4ED6",v:"\u5409\u4ED6"},{n:"\u7535\u5B50\u97F3\u4E50",v:"\u7535\u5B50\u97F3\u4E50"},{n:"\u94A2\u7434",v:"\u94A2\u7434"},{n:"\u56FD\u4EBA\u7537\u58F0",v:"\u56FD\u4EBA\u7537\u58F0"},{n:"\u56FD\u4EBA\u5973\u751F",v:"\u56FD\u4EBA\u5973\u751F"},{n:"\u4E2D\u6587\u7FFB\u5531",v:"\u4E2D\u6587\u7FFB\u5531"},{n:"\u82F1\u6587\u7FFB\u5531",v:"\u82F1\u6587\u7FFB\u5531"},{n:"VOCALOID",v:"VOCALOID"},{n:"\u71C3\u5411",v:"\u71C3\u5411"},{n:"\u4E2D\u6587\u586B\u8BCD",v:"\u4E2D\u6587\u586B\u8BCD"},{n:"\u7075\u9B42\u6B4C\u624B",v:"\u7075\u9B42\u6B4C\u624B"},{n:"\u6CBB\u6108\u5411",v:"\u6CBB\u6108\u5411"},{n:"COVER",v:"COVER"},{n:"\u521D\u6295\u7A3F",v:"\u521D\u6295\u7A3F"},{n:"\u5409\u4ED6\u5F39\u5531",v:"\u5409\u4ED6\u5F39\u5531"},{n:"\u539F\u521BPV",v:"\u539F\u521BPV"},{n:"\u9B54\u9053\u7956\u5E08",v:"\u9B54\u9053\u7956\u5E08"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u65B0\u4EBA\u5411",v:"\u65B0\u4EBA\u5411"},{n:"\u798F\u5229\u8033\u673A",v:"\u798F\u5229\u8033\u673A"},{n:"\u521B\u610F\u6F14\u594F",v:"\u521B\u610F\u6F14\u594F"},{n:"\u8857\u5934\u8868\u6F14",v:"\u8857\u5934\u8868\u6F14"},{n:"\u7FFB\u5F39",v:"\u7FFB\u5F39"},{n:"\u4E50\u961F",v:"\u4E50\u961F"},{n:"\u6C11\u4E50",v:"\u6C11\u4E50"},{n:"\u5408\u594F",v:"\u5408\u594F"},{n:"\u6307\u5F39",v:"\u6307\u5F39"},{n:"\u5C0F\u63D0\u7434",v:"\u5C0F\u63D0\u7434"},{n:"\u67B6\u5B50\u9F13",v:"\u67B6\u5B50\u9F13"},{n:"\u6728\u5409\u4ED6",v:"\u6728\u5409\u4ED6"},{n:"BGM",v:"BGM"},{n:"\u5361\u7956\u7B1B",v:"\u5361\u7956\u7B1B"},{n:"\u7535\u5409\u4ED6",v:"\u7535\u5409\u4ED6"},{n:"LAUNCHPAD",v:"LAUNCHPAD"},{n:"\u8D1D\u65AF",v:"\u8D1D\u65AF"},{n:"\u53E3\u7434",v:"\u53E3\u7434"},{n:"\u6307\u5F39\u5409\u4ED6",v:"\u6307\u5F39\u5409\u4ED6"},{n:"\u7435\u7436",v:"\u7435\u7436"},{n:"\u626C\u7434",v:"\u626C\u7434"},{n:"\u53E4\u5178\u97F3\u4E50",v:"\u53E4\u5178\u97F3\u4E50"},{n:"\u53E4\u7B5D",v:"\u53E4\u7B5D"},{n:"\u4E8C\u80E1",v:"\u4E8C\u80E1"},{n:"BEATBOX",v:"BEATBOX"},{n:"\u53E4\u5178",v:"\u53E4\u5178"},{n:"\u6D1B\u5929\u4F9D",v:"\u6D1B\u5929\u4F9D"},{n:"\u4E50\u6B63\u7EEB",v:"\u4E50\u6B63\u7EEB"},{n:"\u8A00\u548C",v:"\u8A00\u548C"},{n:"\u4E50\u6B63\u9F99\u7259",v:"\u4E50\u6B63\u9F99\u7259"},{n:"\u58A8\u6E05\u5F26",v:"\u58A8\u6E05\u5F26"},{n:"\u5FBD\u7FBD\u6469\u67EF",v:"\u5FBD\u7FBD\u6469\u67EF"},{n:"Vsinger",v:"Vsinger"},{n:"\u5FC3\u534E",v:"\u5FC3\u534E"},{n:"\u661F\u5C18",v:"\u661F\u5C18"},{n:"\u5AE3\u6C50",v:"\u5AE3\u6C50"},{n:"\u521D\u97F3\u672A\u6765",v:"\u521D\u97F3\u672A\u6765"},{n:"\u955C\u97F3\u94C3",v:"\u955C\u97F3\u94C3"},{n:"\u5DE1\u97F3\u6D41\u6B4C",v:"\u5DE1\u97F3\u6D41\u6B4C"},{n:"KAITO",v:"KAITO"},{n:"flower",v:"flower"},{n:"\u5143\u7B71",v:"\u5143\u7B71"},{n:"VOCALOID\u4E2D\u6587\u66F2",v:"VOCALOID\u4E2D\u6587\u66F2"},{n:"\u83B2\u534E",v:"\u83B2\u534E"},{n:"\u5357\u5317\u7EC4",v:"\u5357\u5317\u7EC4"},{n:"\u955C\u97F3\u53CC\u5B50",v:"\u955C\u97F3\u53CC\u5B50"},{n:"MUTA\u4E2D\u6587\u66F2",v:"MUTA\u4E2D\u6587\u66F2"},{n:"UTAU\u4E2D\u534E\u7EC4",v:"UTAU\u4E2D\u534E\u7EC4"},{n:"XStudio",v:"XStudio"},{n:"\u521D\u97F3",v:"\u521D\u97F3"},{n:"IA",v:"IA"},{n:"GUMI",v:"GUMI"},{n:"SynthV",v:"SynthV"},{n:"UTAU",v:"UTAU"},{n:"\u5E7B\u6653\u4F0A",v:"\u5E7B\u6653\u4F0A"},{n:"\u4E94\u7EF4\u4ECB\u8D28",v:"\u4E94\u7EF4\u4ECB\u8D28"},{n:"\u53EF\u4E0D",v:"\u53EF\u4E0D"},{n:"ACE\u865A\u62DF\u6B4C\u59EC",v:"ACE\u865A\u62DF\u6B4C\u59EC"},{n:"deepvocal",v:"deepvocal"},{n:"SYNTHV",v:"SYNTHV"},{n:"\u534E\u8BED\u73B0\u573A",v:"\u534E\u8BED\u73B0\u573A"},{n:"\u6B27\u7F8E\u73B0\u573A",v:"\u6B27\u7F8E\u73B0\u573A"},{n:"\u65E5\u8BED\u73B0\u573A",v:"\u65E5\u8BED\u73B0\u573A"},{n:"\u97E9\u8BED\u73B0\u573A",v:"\u97E9\u8BED\u73B0\u573A"},{n:"\u56FD\u8BED\u73B0\u573A",v:"\u56FD\u8BED\u73B0\u573A"},{n:"\u7CA4\u8BED\u73B0\u573A",v:"\u7CA4\u8BED\u73B0\u573A"},{n:"live",v:"live"},{n:"\u97F3\u4E50\u5267",v:"\u97F3\u4E50\u5267"},{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u97F3\u4E50\u8282",v:"\u97F3\u4E50\u8282"},{n:"\u7ECF\u5178\u8001\u6B4C",v:"\u7ECF\u5178\u8001\u6B4C"},{n:"\u7CBE\u9009\u6B4C\u5355",v:"\u7CBE\u9009\u6B4C\u5355"},{n:"\u5F71\u89C6\u97F3\u4E50",v:"\u5F71\u89C6\u97F3\u4E50"},{n:"\u6E38\u620F\u97F3\u4E50",v:"\u6E38\u620F\u97F3\u4E50"},{n:"\u4E2D\u56FD\u620F\u66F2",v:"\u4E2D\u56FD\u620F\u66F2"},{n:"\u9ED1\u80F6\u5531\u7247",v:"\u9ED1\u80F6\u5531\u7247"},{n:"ACG\u97F3\u4E50",v:"ACG\u97F3\u4E50"},{n:"\u4EA4\u54CD\u4E50",v:"\u4EA4\u54CD\u4E50"},{n:"\u5FAA\u73AF\u97F3\u4E50",v:"\u5FAA\u73AF\u97F3\u4E50"},{n:"OST\u97F3\u4E50",v:"OST\u97F3\u4E50"},{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"DJ\u97F3\u4E50",v:"DJ\u97F3\u4E50"},{n:"\u821E\u66F2",v:"\u821E\u66F2"},{n:"\u591C\u5E97\u821E\u66F2",v:"\u591C\u5E97\u821E\u66F2"},{n:"\u56FD\u5916\u821E\u66F2",v:"\u56FD\u5916\u821E\u66F2"},{n:"\u4E9A\u6D32\u821E\u66F2",v:"\u4E9A\u6D32\u821E\u66F2"},{n:"\u6B27\u7F8E\u821E\u66F2",v:"\u6B27\u7F8E\u821E\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6B4C\u66F2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6B4C\u66F2",v:"\u6B4C\u66F2"},{n:"\u9999\u6E2F\u6B4C\u66F2",v:"\u9999\u6E2F\u6B4C\u66F2"},{n:"\u53F0\u6E7E\u6B4C\u66F2",v:"\u53F0\u6E7E\u6B4C\u66F2"},{n:"\u5185\u5730\u6B4C\u66F2",v:"\u5185\u5730\u6B4C\u66F2"},{n:"\u82F1\u6587\u6B4C\u66F2",v:"\u82F1\u6587\u6B4C\u66F2"},{n:"\u65E5\u6587\u6B4C\u66F2",v:"\u65E5\u6587\u6B4C\u66F2"},{n:"\u5C0F\u8BED\u79CD\u6B4C\u66F2",v:"\u5C0F\u8BED\u79CD\u6B4C\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66",v:"\u5E73\u9762\u8BBE\u8BA1\u6559\u5B66"},{n:"Adobe Photoshop\u6559\u7A0B",v:"Adobe Photoshop\u6559\u7A0B"},{n:"Adobe Illustrator\u6559\u7A0B",v:"Adobe Illustrator\u6559\u7A0B"},{n:"CorelDRAW\u6559\u7A0B",v:"CorelDRAW\u6559\u7A0B"},{n:"Adobe InDesign\u6559\u7A0B",v:"Adobe InDesign\u6559\u7A0B"},{n:"Adobe Pagermaker\u6559\u7A0B",v:"Adobe Pagermaker\u6559\u7A0B"},{n:"SAI\u6559\u7A0B",v:"SAI\u6559\u7A0B"},{n:"Adobe Bridge\u6559\u7A0B",v:"Adobe Bridge\u6559\u7A0B"},{n:"Adobe Pagermake\u6559\u7A0Br",v:"Adobe Pagermake\u6559\u7A0Br"},{n:"3D Studio Max\u6559\u7A0B",v:"3D Studio Max\u6559\u7A0B"},{n:"PR\u6559\u7A0B",v:"PR\u6559\u7A0B"},{n:"AE\u6559\u7A0B",v:"AE\u6559\u7A0B"},{n:"CINEMA 4D\u6559\u7A0B",v:"CINEMA 4D\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8F6F\u4EF6\u6559\u7A0B:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u8F6F\u4EF6\u6559\u7A0B",v:"\u8F6F\u4EF6\u6559\u7A0B"},{n:"MT\u7BA1\u7406\u5668",v:"MT\u7BA1\u7406\u5668"},{n:"NP\u7BA1\u7406\u5668",v:"NP\u7BA1\u7406\u5668"},{n:"mixplorer",v:"mixplorer"},{n:"\u8131\u58F3",v:"\u8131\u58F3"},{n:"\u722C\u866B",v:"\u722C\u866B"},{n:"json&jar",v:"json&jar"},{n:"\u7F51\u76D8\u6302\u8F7D",v:"\u7F51\u76D8\u6302\u8F7D"},{n:"alist+WebDav",v:"alist+WebDav"},{n:"TVBox\u4FEE\u6539\u6559\u7A0B",v:"TVBox\u4FEE\u6539\u6559\u7A0B"},{n:"EXCEL\u6559\u7A0B",v:"EXCEL\u6559\u7A0B"},{n:"Git\u5165\u95E8\u5230\u7CBE\u901A",v:"Git\u5165\u95E8\u5230\u7CBE\u901A"},{n:"java\u6559\u7A0B",v:"java\u6559\u7A0B"},{n:"phyton\u6559\u7A0B",v:"phyton\u6559\u7A0B"},{n:"xml\u6559\u7A0B",v:"xml\u6559\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],Windows:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5C0F\u59D0\u59D0\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E7F\u573A\u821E\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u821E\u66F2\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u767D\u566A\u97F3\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u641E\u7B11\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u4F53\u80B2\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K":[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8DB3\u7403\u6BD4\u8D5B\u5408\u96C6\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7BEE\u7403\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u52A8\u7269\u4E16\u754C\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u513F\u7AE5\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8352\u91CE\u6C42\u751F\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7EAA\u5F55\u7247\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98DF\u8C31:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u98DF\u8C31",v:"\u98DF\u8C31"},{n:"\u5DDD\u83DC\u98DF\u8C31",v:"\u5DDD\u83DC\u98DF\u8C31"},{n:"\u8C6B\u83DC\u98DF\u8C31",v:"\u8C6B\u83DC\u98DF\u8C31"},{n:"\u6DEE\u626C\u83DC\u98DF\u8C31",v:"\u6DEE\u626C\u83DC\u98DF\u8C31"},{n:"\u6E58\u83DC\u98DF\u8C31",v:"\u6E58\u83DC\u98DF\u8C31"},{n:"\u9C81\u83DC\u98DF\u8C31",v:"\u9C81\u83DC\u98DF\u8C31"},{n:"\u7CA4\u83DC\u98DF\u8C31",v:"\u7CA4\u83DC\u98DF\u8C31"},{n:"\u6F6E\u83DC\u98DF\u8C31",v:"\u6F6E\u83DC\u98DF\u8C31"},{n:"\u6D59\u83DC\u98DF\u8C31",v:"\u6D59\u83DC\u98DF\u8C31"},{n:"\u5FBD\u83DC\u98DF\u8C31",v:"\u5FBD\u83DC\u98DF\u8C31"},{n:"\u95FD\u83DC\u98DF\u8C31",v:"\u95FD\u83DC\u98DF\u8C31"},{n:"\u82CF\u83DC\u98DF\u8C31",v:"\u82CF\u83DC\u98DF\u8C31"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5065\u8EAB:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u5065\u8EAB",v:"\u5065\u8EAB"},{n:"\u7626\u817F",v:"\u7626\u817F"},{n:"\u8179\u90E8",v:"\u8179\u90E8"},{n:"\u624B\u81C2",v:"\u624B\u81C2"},{n:"\u70ED\u8EAB",v:"\u70ED\u8EAB"},{n:"\u5E15\u6885\u62C9",v:"\u5E15\u6885\u62C9"},{n:"\u71C3\u8102",v:"\u71C3\u8102"},{n:"\u6709\u6C27",v:"\u6709\u6C27"},{n:"\u62C9\u4F38",v:"\u62C9\u4F38"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7A97\u767D\u566A\u97F3:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7F8E\u98DF\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u7F8E\u98DF\u8D85\u6E05",v:"\u7F8E\u98DF\u8D85\u6E05"},{n:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD\u8D85\u6E05",v:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD\u8D85\u6E05"},{n:"\u8001\u5B57\u53F7\u7F8E\u98DF\u8D85\u6E05",v:"\u8001\u5B57\u53F7\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5BB6\u5E38\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5BB6\u5E38\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u9999\u6E2F\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u9999\u6E2F\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6FB3\u95E8\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6FB3\u95E8\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u4E0A\u6D77\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u4E0A\u6D77\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5317\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5317\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u91CD\u5E86\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u91CD\u5E86\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5357\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5357\u4EAC\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5E7F\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u5E7F\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u676D\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u676D\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6210\u90FD\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6210\u90FD\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u82CF\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u82CF\u5DDE\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u6B66\u6C49\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u6B66\u6C49\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u53F0\u6E7E\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05",v:"\u53F0\u6E7E\u7F8E\u98DF\u63A2\u5E97\u8D85\u6E05"},{n:"\u5DDD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5DDD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u8C6B\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u8C6B\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6DEE\u626C\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6DEE\u626C\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6E58\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6E58\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u9C81\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u9C81\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u7CA4\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u7CA4\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6F6E\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6F6E\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6D59\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u6D59\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5FBD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5FBD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u95FD\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u95FD\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u4E1C\u5317\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u4E1C\u5317\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u5BA2\u5BB6\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u5BA2\u5BB6\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u82CF\u83DC\u7F8E\u98DF\u8D85\u6E05",v:"\u82CF\u83DC\u7F8E\u98DF\u8D85\u6E05"},{n:"\u706B\u9505",v:"\u706B\u9505"},{n:"\u9762\u98DF",v:"\u9762\u98DF"},{n:"\u7092\u83DC",v:"\u7092\u83DC"},{n:"\u70B9\u5FC3",v:"\u70B9\u5FC3"},{n:"\u65E5\u6599",v:"\u65E5\u6599"},{n:"\u5C0F\u5403",v:"\u5C0F\u5403"},{n:"\u7D20\u98DF",v:"\u7D20\u98DF"},{n:"\u84B8\u83DC",v:"\u84B8\u83DC"},{n:"\u51C9\u83DC",v:"\u51C9\u83DC"},{n:"\u65E9\u9910",v:"\u65E9\u9910"},{n:"\u62AB\u8428",v:"\u62AB\u8428"},{n:"\u70E4\u9C7C",v:"\u70E4\u9C7C"},{n:"\u6D77\u9C9C\u7F8E\u98DF\u8D85\u6E05",v:"\u6D77\u9C9C\u7F8E\u98DF\u8D85\u6E05"},{n:"\u6C49\u5821",v:"\u6C49\u5821"},{n:"\u97E9\u56FD\u83DC",v:"\u97E9\u56FD\u83DC"},{n:"\u6CF0\u56FD\u83DC",v:"\u6CF0\u56FD\u83DC"},{n:"\u7A46\u65AF\u6797\u83DC",v:"\u7A46\u65AF\u6797\u83DC"},{n:"\u6CD5\u56FD\u83DC",v:"\u6CD5\u56FD\u83DC"},{n:"\u610F\u5927\u5229\u83DC",v:"\u610F\u5927\u5229\u83DC"},{n:"\u897F\u73ED\u7259\u83DC",v:"\u897F\u73ED\u7259\u83DC"},{n:"\u571F\u8033\u5176\u83DC\u7CFB",v:"\u571F\u8033\u5176\u83DC\u7CFB"},{n:"\u963F\u62C9\u4F2F\u83DC",v:"\u963F\u62C9\u4F2F\u83DC"},{n:"\u5FB7\u56FD\u83DC",v:"\u5FB7\u56FD\u83DC"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5E7F\u573A\u821E:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7403\u661F:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u7403\u661F",v:"\u7403\u661F"},{n:"\u6885\u897F",v:"\u6885\u897F"},{n:"C\u7F57",v:"C\u7F57"},{n:"\u5929\u4E0B\u8DB3\u7403",v:"\u5929\u4E0B\u8DB3\u7403"},{n:"\u7F57\u7EB3\u5C14\u591A",v:"\u7F57\u7EB3\u5C14\u591A"},{n:"\u4EA8\u5229",v:"\u4EA8\u5229"},{n:"\u5C0F\u7F57",v:"\u5C0F\u7F57"},{n:"\u9F50\u8FBE\u5185",v:"\u9F50\u8FBE\u5185"},{n:"\u8D1D\u514B\u6C49\u59C6",v:"\u8D1D\u514B\u6C49\u59C6"},{n:"\u5185\u9A6C\u5C14",v:"\u5185\u9A6C\u5C14"},{n:"\u5FB7\u5E03\u52B3\u5185",v:"\u5FB7\u5E03\u52B3\u5185"},{n:"\u6B27\u51A0",v:"\u6B27\u51A0"},{n:"\u4E16\u754C\u676F",v:"\u4E16\u754C\u676F"},{n:"\u897F\u7532",v:"\u897F\u7532"},{n:"\u82F1\u8D85",v:"\u82F1\u8D85"},{n:"\u610F\u7532",v:"\u610F\u7532"},{n:"\u5FB7\u7532",v:"\u5FB7\u7532"},{n:"\u56FD\u7C73",v:"\u56FD\u7C73"},{n:"\u7687\u9A6C",v:"\u7687\u9A6C"},{n:"\u5DF4\u8428",v:"\u5DF4\u8428"},{n:"\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC",v:"\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC"},{n:"\u66FC\u8054",v:"\u66FC\u8054"},{n:"\u66FC\u57CE",v:"\u66FC\u57CE"},{n:"NBA",v:"NBA"},{n:"\u8A79\u59C6\u65AF",v:"\u8A79\u59C6\u65AF"},{n:"\u5E93\u91CC",v:"\u5E93\u91CC"},{n:"\u675C\u5170\u7279",v:"\u675C\u5170\u7279"},{n:"UFC",v:"UFC"},{n:"\u65AF\u8BFA\u514B",v:"\u65AF\u8BFA\u514B"},{n:"\u7F51\u7403",v:"\u7F51\u7403"},{n:"F1",v:"F1"},{n:"\u9AD8\u5C14\u592B",v:"\u9AD8\u5C14\u592B"},{n:"\u7403\u661F",v:"\u7403\u661F"},{n:"\u7BEE\u7403",v:"\u7BEE\u7403"},{n:"\u8DB3\u7403",v:"\u8DB3\u7403"},{n:"4K\u7403\u661F",v:"4K\u7403\u661F"},{n:"4K\u6885\u897F",v:"4K\u6885\u897F"},{n:"4K C\u7F57",v:"4K C\u7F57"},{n:"4K\u5929\u4E0B\u8DB3\u7403",v:"4K\u5929\u4E0B\u8DB3\u7403"},{n:"4K\u7F57\u7EB3\u5C14\u591A",v:"4K\u7F57\u7EB3\u5C14\u591A"},{n:"4K\u4EA8\u5229",v:"4K\u4EA8\u5229"},{n:"4K\u5C0F\u7F57",v:"4K\u5C0F\u7F57"},{n:"4K\u9F50\u8FBE\u5185",v:"4K\u9F50\u8FBE\u5185"},{n:"4K\u8D1D\u514B\u6C49\u59C6",v:"4K\u8D1D\u514B\u6C49\u59C6"},{n:"4K\u5185\u9A6C\u5C14",v:"4K\u5185\u9A6C\u5C14"},{n:"4K\u5FB7\u5E03\u52B3\u5185",v:"4K\u5FB7\u5E03\u52B3\u5185"},{n:"4K\u6B27\u51A0",v:"4K\u6B27\u51A0"},{n:"4K\u4E16\u754C\u676F",v:"4K\u4E16\u754C\u676F"},{n:"4K\u897F\u7532",v:"4K\u897F\u7532"},{n:"4K\u82F1\u8D85",v:"4K\u82F1\u8D85"},{n:"4K\u610F\u7532",v:"4K\u610F\u7532"},{n:"4K\u5FB7\u7532",v:"4K\u5FB7\u7532"},{n:"4K\u56FD\u7C73",v:"4K\u56FD\u7C73"},{n:"4K\u7687\u9A6C",v:"4K\u7687\u9A6C"},{n:"4K\u5DF4\u8428",v:"4K\u5DF4\u8428"},{n:"4K\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC",v:"4K\u5DF4\u9ECE\u5723\u65E5\u8033\u66FC"},{n:"4K\u66FC\u8054",v:"4K\u66FC\u8054"},{n:"4K\u66FC\u57CE",v:"4K\u66FC\u57CE"},{n:"4K NBA",v:"4K NBA"},{n:"4K\u8A79\u59C6\u65AF",v:"4K\u8A79\u59C6\u65AF"},{n:"4K\u5E93\u91CC",v:"4K\u5E93\u91CC"},{n:"4K\u675C\u5170\u7279",v:"4K\u675C\u5170\u7279"},{n:"4K UFC",v:"4K UFC"},{n:"4K\u65AF\u8BFA\u514B",v:"4K\u65AF\u8BFA\u514B"},{n:"4K\u7F51\u7403",v:"4K\u7F51\u7403"},{n:"4K\u7BEE\u7403",v:"4K\u7BEE\u7403"},{n:"4K\u8DB3\u7403",v:"4K\u8DB3\u7403"},{n:"4K F1",v:"4K F1"},{n:"4K\u9AD8\u5C14\u592B",v:"4K\u9AD8\u5C14\u592B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7535\u89C6\u5267:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F8\u58F0\u5C0F\u54C1\u8D85\u6E05:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u76F8\u58F0\u5C0F\u54C1",v:"\u76F8\u58F0\u5C0F\u54C1"},{n:"\u5355\u53E3\u76F8\u58F0",v:"\u5355\u53E3\u76F8\u58F0"},{n:"\u7FA4\u53E3\u76F8\u58F0",v:"\u7FA4\u53E3\u76F8\u58F0"},{n:"\u5FB7\u4E91\u793E",v:"\u5FB7\u4E91\u793E"},{n:"\u9752\u66F2\u793E",v:"\u9752\u66F2\u793E"},{n:"\u90ED\u5FB7\u7EB2",v:"\u90ED\u5FB7\u7EB2"},{n:"\u5CB3\u4E91\u9E4F",v:"\u5CB3\u4E91\u9E4F"},{n:"\u66F9\u4E91\u91D1",v:"\u66F9\u4E91\u91D1"},{n:"\u8BC4\u4E66",v:"\u8BC4\u4E66"},{n:"\u5C0F\u66F2",v:"\u5C0F\u66F2"},{n:"\u4E8C\u4EBA\u8F6C",v:"\u4E8C\u4EBA\u8F6C"},{n:"\u6625\u665A\u5C0F\u54C1",v:"\u6625\u665A\u5C0F\u54C1"},{n:"\u8D75\u672C\u5C71",v:"\u8D75\u672C\u5C71"},{n:"\u9648\u4F69\u65AF",v:"\u9648\u4F69\u65AF"},{n:"\u51AF\u5DE9",v:"\u51AF\u5DE9"},{n:"\u5B8B\u5C0F\u5B9D",v:"\u5B8B\u5C0F\u5B9D"},{n:"\u8D75\u4E3D\u84C9",v:"\u8D75\u4E3D\u84C9"},{n:"\u90ED\u8FBE",v:"\u90ED\u8FBE"},{n:"\u6F58\u957F\u6C5F",v:"\u6F58\u957F\u6C5F"},{n:"\u90ED\u51AC\u4E34",v:"\u90ED\u51AC\u4E34"},{n:"\u4E25\u987A\u5F00",v:"\u4E25\u987A\u5F00"},{n:"\u6587\u677E",v:"\u6587\u677E"},{n:"\u5F00\u5FC3\u9EBB\u82B1",v:"\u5F00\u5FC3\u9EBB\u82B1"},{n:"\u5C4C\u4E1D\u7537\u58EB",v:"\u5C4C\u4E1D\u7537\u58EB"},{n:"\u559C\u5267\u7EFC\u827A",v:"\u559C\u5267\u7EFC\u827A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u620F\u66F2:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u620F\u66F2",v:"\u620F\u66F2"},{n:"\u4EAC\u5267",v:"\u4EAC\u5267"},{n:"\u8D8A\u5267",v:"\u8D8A\u5267"},{n:"\u9EC4\u6885\u620F",v:"\u9EC4\u6885\u620F"},{n:"\u8BC4\u5267",v:"\u8BC4\u5267"},{n:"\u8C6B\u5267",v:"\u8C6B\u5267"},{n:"\u6606\u66F2",v:"\u6606\u66F2"},{n:"\u9AD8\u8154",v:"\u9AD8\u8154"},{n:"\u6886\u5B50\u8154",v:"\u6886\u5B50\u8154"},{n:"\u6CB3\u5317\u6886\u5B50",v:"\u6CB3\u5317\u6886\u5B50"},{n:"\u664B\u5267",v:"\u664B\u5267"},{n:"\u84B2\u5267",v:"\u84B2\u5267"},{n:"\u96C1\u5267",v:"\u96C1\u5267"},{n:"\u4E0A\u515A\u6886\u5B50",v:"\u4E0A\u515A\u6886\u5B50"},{n:"\u79E6\u8154",v:"\u79E6\u8154"},{n:"\u6B66\u5B89\u5E73\u8C03",v:"\u6B66\u5B89\u5E73\u8C03"},{n:"\u4E8C\u4EBA\u53F0",v:"\u4E8C\u4EBA\u53F0"},{n:"\u5409\u5267",v:"\u5409\u5267"},{n:"\u9F99\u6C5F\u5267",v:"\u9F99\u6C5F\u5267"},{n:"\u8D8A\u8C03",v:"\u8D8A\u8C03"},{n:"\u6CB3\u5357\u66F2\u5267",v:"\u6CB3\u5357\u66F2\u5267"},{n:"\u5C71\u4E1C\u6886\u5B50",v:"\u5C71\u4E1C\u6886\u5B50"},{n:"\u6DEE\u5267",v:"\u6DEE\u5267"},{n:"\u6CAA\u5267",v:"\u6CAA\u5267"},{n:"\u6ED1\u7A3D\u620F",v:"\u6ED1\u7A3D\u620F"},{n:"\u5A7A\u5267",v:"\u5A7A\u5267"},{n:"\u7ECD\u5267",v:"\u7ECD\u5267"},{n:"\u5FBD\u5267",v:"\u5FBD\u5267"},{n:"\u95FD\u5267",v:"\u95FD\u5267"},{n:"\u8386\u4ED9\u620F",v:"\u8386\u4ED9\u620F"},{n:"\u68A8\u56ED\u620F",v:"\u68A8\u56ED\u620F"},{n:"\u9AD8\u7532\u620F",v:"\u9AD8\u7532\u620F"},{n:"\u8D63\u5267",v:"\u8D63\u5267"},{n:"\u91C7\u8336\u620F",v:"\u91C7\u8336\u620F"},{n:"\u6C49\u5267",v:"\u6C49\u5267"},{n:"\u6E58\u5267",v:"\u6E58\u5267"},{n:"\u7941\u5267",v:"\u7941\u5267"},{n:"\u6E56\u5357\u82B1\u9F13\u620F",v:"\u6E56\u5357\u82B1\u9F13\u620F"},{n:"\u7CA4\u5267",v:"\u7CA4\u5267"},{n:"\u6F6E\u5267",v:"\u6F6E\u5267"},{n:"\u6842\u5267",v:"\u6842\u5267"},{n:"\u5F69\u8C03",v:"\u5F69\u8C03"},{n:"\u58EE\u5267",v:"\u58EE\u5267"},{n:"\u5DDD\u5267",v:"\u5DDD\u5267"},{n:"\u9ED4\u5267",v:"\u9ED4\u5267"},{n:"\u6EC7\u5267",v:"\u6EC7\u5267"},{n:"\u50A3\u5267",v:"\u50A3\u5267"},{n:"\u85CF\u5267",v:"\u85CF\u5267"},{n:"\u76AE\u5F71\u620F",v:"\u76AE\u5F71\u620F"},{n:"\u620F\u66F2",v:"\u620F\u66F2"},{n:"4K\u620F\u66F2",v:"4K\u620F\u66F2"},{n:"4K\u4EAC\u5267",v:"4K\u4EAC\u5267"},{n:"4K\u8D8A\u5267",v:"4K\u8D8A\u5267"},{n:"4K\u9EC4\u6885\u620F",v:"4K\u9EC4\u6885\u620F"},{n:"4K\u8BC4\u5267",v:"4K\u8BC4\u5267"},{n:"4K\u8C6B\u5267",v:"4K\u8C6B\u5267"},{n:"4K\u6606\u66F2",v:"4K\u6606\u66F2"},{n:"4K\u9AD8\u8154",v:"4K\u9AD8\u8154"},{n:"4K\u6886\u5B50\u8154",v:"4K\u6886\u5B50\u8154"},{n:"4K\u6CB3\u5317\u6886\u5B50",v:"4K\u6CB3\u5317\u6886\u5B50"},{n:"4K\u664B\u5267",v:"4K\u664B\u5267"},{n:"4K\u84B2\u5267",v:"4K\u84B2\u5267"},{n:"4K\u96C1\u5267",v:"4K\u96C1\u5267"},{n:"4K\u4E0A\u515A\u6886\u5B50",v:"4K\u4E0A\u515A\u6886\u5B50"},{n:"4K\u79E6\u8154",v:"4K\u79E6\u8154"},{n:"4K\u6B66\u5B89\u5E73\u8C03",v:"4K\u6B66\u5B89\u5E73\u8C03"},{n:"4K\u4E8C\u4EBA\u53F0",v:"4K\u4E8C\u4EBA\u53F0"},{n:"4K\u5409\u5267",v:"4K\u5409\u5267"},{n:"4K\u9F99\u6C5F\u5267",v:"4K\u9F99\u6C5F\u5267"},{n:"4K\u8D8A\u8C03",v:"4K\u8D8A\u8C03"},{n:"4K\u6CB3\u5357\u66F2\u5267",v:"4K\u6CB3\u5357\u66F2\u5267"},{n:"4K\u5C71\u4E1C\u6886\u5B50",v:"4K\u5C71\u4E1C\u6886\u5B50"},{n:"4K\u6DEE\u5267",v:"4K\u6DEE\u5267"},{n:"4K\u6CAA\u5267",v:"4K\u6CAA\u5267"},{n:"4K\u6ED1\u7A3D\u620F",v:"4K\u6ED1\u7A3D\u620F"},{n:"4K\u5A7A\u5267",v:"4K\u5A7A\u5267"},{n:"4K\u7ECD\u5267",v:"4K\u7ECD\u5267"},{n:"4K\u5FBD\u5267",v:"4K\u5FBD\u5267"},{n:"4K\u95FD\u5267",v:"4K\u95FD\u5267"},{n:"4K\u8386\u4ED9\u620F",v:"4K\u8386\u4ED9\u620F"},{n:"4K\u68A8\u56ED\u620F",v:"4K\u68A8\u56ED\u620F"},{n:"4K\u9AD8\u7532\u620F",v:"4K\u9AD8\u7532\u620F"},{n:"4K\u8D63\u5267",v:"4K\u8D63\u5267"},{n:"4K\u91C7\u8336\u620F",v:"4K\u91C7\u8336\u620F"},{n:"4K\u6C49\u5267",v:"4K\u6C49\u5267"},{n:"4K\u6E58\u5267",v:"4K\u6E58\u5267"},{n:"4K\u7941\u5267",v:"4K\u7941\u5267"},{n:"4K\u6E56\u5357\u82B1\u9F13\u620F",v:"4K\u6E56\u5357\u82B1\u9F13\u620F"},{n:"4K\u7CA4\u5267",v:"4K\u7CA4\u5267"},{n:"4K\u6F6E\u5267",v:"4K\u6F6E\u5267"},{n:"4K\u6842\u5267",v:"4K\u6842\u5267"},{n:"4K\u5F69\u8C03",v:"4K\u5F69\u8C03"},{n:"4K\u58EE\u5267",v:"4K\u58EE\u5267"},{n:"4K\u5DDD\u5267",v:"4K\u5DDD\u5267"},{n:"4K\u9ED4\u5267",v:"4K\u9ED4\u5267"},{n:"4K\u6EC7\u5267",v:"4K\u6EC7\u5267"},{n:"4K\u50A3\u5267",v:"4K\u50A3\u5267"},{n:"4K\u85CF\u5267",v:"4K\u85CF\u5267"},{n:"4K\u76AE\u5F71\u620F",v:"4K\u76AE\u5F71\u620F"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u65C5\u6E38:[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6E38\u6CF3:[{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u6CF3\u59FF",v:"\u6CF3\u59FF"},{n:"\u8776\u6CF3",v:"\u8776\u6CF3"},{n:"\u4EF0\u6CF3",v:"\u4EF0\u6CF3"},{n:"\u86D9\u6CF3",v:"\u86D9\u6CF3"},{n:"\u81EA\u7531\u6CF3",v:"\u81EA\u7531\u6CF3"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u9009\u7F8E:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6A21\u7279:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6CF3\u88C5\u79C0:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5185\u8863\u79C0:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u7F8E\u98DF:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD",v:"\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD"},{n:"\u820C\u5C16\u4E0A\u7684\u6E56\u5317",v:"\u820C\u5C16\u4E0A\u7684\u6E56\u5317"},{n:"\u5DDD\u83DC",v:"\u5DDD\u83DC"},{n:"\u6E58\u83DC",v:"\u6E58\u83DC"},{n:"\u82CF\u83DC",v:"\u82CF\u83DC"},{n:"\u7CA4\u83DC",v:"\u7CA4\u83DC"},{n:"\u95FD\u83DC",v:"\u95FD\u83DC"},{n:"\u5FBD\u83DC",v:"\u5FBD\u83DC"},{n:"\u9C81\u83DC",v:"\u9C81\u83DC"},{n:"\u6D59\u83DC",v:"\u6D59\u83DC"},{n:"\u706B\u9505",v:"\u706B\u9505"},{n:"\u5BB6\u5E38\u83DC",v:"\u5BB6\u5E38\u83DC"},{n:"\u4E0B\u9152\u83DC",v:"\u4E0B\u9152\u83DC"},{n:"\u84B8\u83DC",v:"\u84B8\u83DC"},{n:"\u5364\u83DC",v:"\u5364\u83DC"},{n:"\u51C9\u83DC",v:"\u51C9\u83DC"},{n:"\u70B9\u5FC3",v:"\u70B9\u5FC3"},{n:"\u65E5\u6599",v:"\u65E5\u6599"},{n:"\u5C0F\u5403",v:"\u5C0F\u5403"},{n:"\u65E9\u9910\u98DF\u8C31",v:"\u65E9\u9910\u98DF\u8C31"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u7F8E\u98DF",v:"4K\u7F8E\u98DF"},{n:"4K\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD",v:"4K\u820C\u5C16\u4E0A\u7684\u4E2D\u56FD"},{n:"4K\u820C\u5C16\u4E0A\u7684\u6E56\u5317",v:"4K\u820C\u5C16\u4E0A\u7684\u6E56\u5317"},{n:"4K\u5DDD\u83DC",v:"4K\u5DDD\u83DC"},{n:"4K\u6E58\u83DC",v:"4K\u6E58\u83DC"},{n:"4K\u82CF\u83DC",v:"4K\u82CF\u83DC"},{n:"4K\u7CA4\u83DC",v:"4K\u7CA4\u83DC"},{n:"4K\u95FD\u83DC",v:"4K\u95FD\u83DC"},{n:"4K\u5FBD\u83DC",v:"4K\u5FBD\u83DC"},{n:"4K\u9C81\u83DC",v:"4K\u9C81\u83DC"},{n:"4K\u6D59\u83DC",v:"4K\u6D59\u83DC"},{n:"4K\u706B\u9505",v:"4K\u706B\u9505"},{n:"4K\u5BB6\u5E38\u83DC",v:"4K\u5BB6\u5E38\u83DC"},{n:"4K\u4E0B\u9152\u83DC",v:"4K\u4E0B\u9152\u83DC"},{n:"4K\u84B8\u83DC",v:"4K\u84B8\u83DC"},{n:"4K\u5364\u83DC",v:"4K\u5364\u83DC"},{n:"4K\u51C9\u83DC",v:"4K\u51C9\u83DC"},{n:"4K\u70B9\u5FC3",v:"4K\u70B9\u5FC3"},{n:"4K\u65E5\u6599",v:"4K\u65E5\u6599"},{n:"4K\u5C0F\u5403",v:"4K\u5C0F\u5403"},{n:"4K\u65E9\u9910\u98DF\u8C31",v:"4K\u65E9\u9910\u98DF\u8C31"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F4\u64AD\u5E73\u53F0:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u6296\u97F3",v:"\u6296\u97F3"},{n:"\u6296\u97F3\u7F8E\u5973",v:"\u6296\u97F3\u7F8E\u5973"},{n:"\u6296\u97F3\u5C0F\u59D0\u59D0",v:"\u6296\u97F3\u5C0F\u59D0\u59D0"},{n:"\u6296\u97F3\u821E\u8E48",v:"\u6296\u97F3\u821E\u8E48"},{n:"\u6296\u97F3\u97F3\u4E50",v:"\u6296\u97F3\u97F3\u4E50"},{n:"\u6296\u97F3MV",v:"\u6296\u97F3MV"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u6296\u97F3",v:"4K\u6296\u97F3"},{n:"4K\u6296\u97F3\u7F8E\u5973",v:"4K\u6296\u97F3\u7F8E\u5973"},{n:"4K\u6296\u97F3\u5C0F\u59D0\u59D0",v:"4K\u6296\u97F3\u5C0F\u59D0\u59D0"},{n:"4K\u6296\u97F3\u821E\u8E48",v:"4K\u6296\u97F3\u821E\u8E48"},{n:"4K\u6296\u97F3\u97F3\u4E50",v:"4K\u6296\u97F3\u97F3\u4E50"},{n:"4K\u6296\u97F3MV",v:"4K\u6296\u97F3MV"}]},{key:"tidc",name:"\u5206\u7C7B",value:[{n:"\u5FEB\u624B",v:"\u5FEB\u624B"},{n:"\u5FEB\u624B\u7F8E\u5973",v:"\u5FEB\u624B\u7F8E\u5973"},{n:"\u5FEB\u624B\u5C0F\u59D0\u59D0",v:"\u5FEB\u624B\u5C0F\u59D0\u59D0"},{n:"\u5FEB\u624B\u821E\u8E48",v:"\u5FEB\u624B\u821E\u8E48"},{n:"\u5FEB\u624B\u97F3\u4E50",v:"\u5FEB\u624B\u97F3\u4E50"},{n:"\u5FEB\u624BMV",v:"\u5FEB\u624BMV"}]},{key:"tidd",name:"\u5206\u7C7B",value:[{n:"4K\u5FEB\u624B",v:"4K\u5FEB\u624B"},{n:"4K\u5FEB\u624B\u7F8E\u5973",v:"4K\u5FEB\u624B\u7F8E\u5973"},{n:"4K\u5FEB\u624B\u5C0F\u59D0\u59D0",v:"4K\u5FEB\u624B\u5C0F\u59D0\u59D0"},{n:"4K\u5FEB\u624B\u821E\u8E48",v:"4K\u5FEB\u624B\u821E\u8E48"},{n:"4K\u5FEB\u624B\u97F3\u4E50",v:"4K\u5FEB\u624B\u97F3\u4E50"},{n:"4K\u5FEB\u624BMV",v:"4K\u5FEB\u624BMV"}]},{key:"tide",name:"\u5206\u7C7B",value:[{n:"\u6597\u9C7C\u76F4\u64AD",v:"\u6597\u9C7C\u76F4\u64AD"},{n:"\u6597\u9C7C\u7F8E\u5973",v:"\u6597\u9C7C\u7F8E\u5973"},{n:"\u6597\u9C7C\u5C0F\u59D0\u59D0",v:"\u6597\u9C7C\u5C0F\u59D0\u59D0"},{n:"\u6597\u9C7C\u821E\u8E48",v:"\u6597\u9C7C\u821E\u8E48"},{n:"\u6597\u9C7C\u97F3\u4E50",v:"\u6597\u9C7C\u97F3\u4E50"},{n:"\u6597\u9C7CMV",v:"\u6597\u9C7CMV"}]},{key:"tidf",name:"\u5206\u7C7B",value:[{n:"4K\u6597\u9C7C\u76F4\u64AD",v:"4K\u6597\u9C7C\u76F4\u64AD"},{n:"4K\u6597\u9C7C\u7F8E\u5973",v:"4K\u6597\u9C7C\u7F8E\u5973"},{n:"4K\u6597\u9C7C\u5C0F\u59D0\u59D0",v:"4K\u6597\u9C7C\u5C0F\u59D0\u59D0"},{n:"4K\u6597\u9C7C\u821E\u8E48",v:"4K\u6597\u9C7C\u821E\u8E48"},{n:"4K\u6597\u9C7C\u97F3\u4E50",v:"4K\u6597\u9C7C\u97F3\u4E50"},{n:"4K\u6597\u9C7CMV",v:"4K\u6597\u9C7CMV"}]},{key:"tidg",name:"\u5206\u7C7B",value:[{n:"\u817E\u8BAF\u76F4\u64AD",v:"\u817E\u8BAF\u76F4\u64AD"},{n:"\u817E\u8BAF\u6F14\u5531\u4F1A",v:"\u817E\u8BAF\u6F14\u5531\u4F1A"},{n:"\u817E\u8BAF\u97F3\u4E50\u4F1A",v:"\u817E\u8BAF\u97F3\u4E50\u4F1A"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"4K\u817E\u8BAF\u76F4\u64AD",v:"4K\u817E\u8BAF\u76F4\u64AD"},{n:"4K\u817E\u8BAF\u6F14\u5531\u4F1A",v:"4K\u817E\u8BAF\u6F14\u5531\u4F1A"},{n:"4K\u817E\u8BAF\u97F3\u4E50\u4F1A",v:"4K\u817E\u8BAF\u97F3\u4E50\u4F1A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u641E\u7B11:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K\u97F3\u4E50":[{key:"tidy",name:"\u5206\u7C7B",value:[{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"4K\u539F\u521B\u97F3\u4E50",v:"4K\u539F\u521B\u97F3\u4E50"},{n:"4K\u7FFB\u5531",v:"4K\u7FFB\u5531"},{n:"4K\u6F14\u594F",v:"4K\u6F14\u594F"},{n:"4K VOCALOID\xB7UTAU",v:"4K VOCALOID\xB7UTAU"},{n:"4K\u97F3\u4E50\u73B0\u573A",v:"4K\u97F3\u4E50\u73B0\u573A"},{n:"4K\u539F\u58F0\u97F3\u4E50",v:"4K\u539F\u58F0\u97F3\u4E50"},{n:"4K\u4E50\u8BC4\u76D8\u70B9",v:"4K\u4E50\u8BC4\u76D8\u70B9"},{n:"4K\u97F3\u4E50\u6559\u5B66",v:"4K\u97F3\u4E50\u6559\u5B66"},{n:"4K\u97F3\u4E50\u7EFC\u5408",v:"4K\u97F3\u4E50\u7EFC\u5408"}]},{key:"tidc",name:"4K\u539F\u521B\u97F3\u4E50",value:[{n:"4K\u8BF4\u5531",v:"4K\u8BF4\u5531"},{n:"4K HIPHOP",v:"4K HIPHOP"},{n:"4K\u4E2D\u56FD\u98CE",v:"4K\u4E2D\u56FD\u98CE"},{n:"4K\u53E4\u98CE",v:"4K\u53E4\u98CE"},{n:"4K\u7535\u97F3",v:"4K\u7535\u97F3"},{n:"4K\u6447\u6EDA",v:"4K\u6447\u6EDA"},{n:"4K\u6C11\u8C23",v:"4K\u6C11\u8C23"},{n:"4K\u7235\u58EB",v:"4K\u7235\u58EB"},{n:"4K\u7EAF\u97F3\u4E50",v:"4K\u7EAF\u97F3\u4E50"},{n:"4K BEAT",v:"4K BEAT"},{n:"4K REMIX",v:"4K REMIX"},{n:"4K\u4EBA\u58F0\u672C\u5BB6",v:"4K\u4EBA\u58F0\u672C\u5BB6"},{n:"4K\u56FD\u4EBA\u539F\u521B",v:"4K\u56FD\u4EBA\u539F\u521B"},{n:"4K\u539F\u521B\u6B4C\u66F2",v:"4K\u539F\u521B\u6B4C\u66F2"},{n:"4K\u7F16\u66F2",v:"4K\u7F16\u66F2"},{n:"4K\u6539\u7F16",v:"4K\u6539\u7F16"},{n:"4K\u5409\u4ED6",v:"4K\u5409\u4ED6"},{n:"4K\u7535\u5B50\u97F3\u4E50",v:"4K\u7535\u5B50\u97F3\u4E50"},{n:"4K\u94A2\u7434",v:"4K\u94A2\u7434"}]},{key:"tidf",name:"4k\u7FFB\u5531",value:[{n:"4K\u56FD\u4EBA\u7537\u58F0",v:"4K\u56FD\u4EBA\u7537\u58F0"},{n:"4K\u56FD\u4EBA\u5973\u751F",v:"4K\u56FD\u4EBA\u5973\u751F"},{n:"4K\u4E2D\u6587\u7FFB\u5531",v:"4K\u4E2D\u6587\u7FFB\u5531"},{n:"4K\u82F1\u6587\u7FFB\u5531",v:"4K\u82F1\u6587\u7FFB\u5531"},{n:"4K\u53E4\u98CE",v:"4K\u53E4\u98CE"},{n:"4K VOCALOID",v:"4K VOCALOID"},{n:"4K\u71C3\u5411",v:"4K\u71C3\u5411"},{n:"4K\u4E2D\u6587\u586B\u8BCD",v:"4K\u4E2D\u6587\u586B\u8BCD"},{n:"4K\u7075\u9B42\u6B4C\u624B",v:"4K\u7075\u9B42\u6B4C\u624B"},{n:"4K\u6CBB\u6108\u5411",v:"4K\u6CBB\u6108\u5411"},{n:"4K COVER",v:"4K COVER"},{n:"4K\u521D\u6295\u7A3F",v:"4K\u521D\u6295\u7A3F"},{n:"4K\u5409\u4ED6\u5F39\u5531",v:"4K\u5409\u4ED6\u5F39\u5531"},{n:"4K\u539F\u521BPV",v:"4K\u539F\u521BPV"},{n:"4K\u9B54\u9053\u7956\u5E08",v:"4K\u9B54\u9053\u7956\u5E08"},{n:"4K\u6B27\u7F8E",v:"4K\u6B27\u7F8E"},{n:"4K\u65B0\u4EBA\u5411",v:"4K\u65B0\u4EBA\u5411"},{n:"4K\u798F\u5229\u8033\u673A",v:"4K\u798F\u5229\u8033\u673A"}]},{key:"tidz",name:"4K\u6F14\u594F",value:[{n:"4K\u521B\u610F\u6F14\u594F",v:"4K\u521B\u610F\u6F14\u594F"},{n:"4K\u94A2\u7434",v:"4K\u94A2\u7434"},{n:"4K\u8857\u5934\u8868\u6F14",v:"4K\u8857\u5934\u8868\u6F14"},{n:"4K\u7FFB\u5F39",v:"4K\u7FFB\u5F39"},{n:"4K\u4E50\u961F",v:"4K\u4E50\u961F"},{n:"4K\u6C11\u4E50",v:"4K\u6C11\u4E50"},{n:"4K\u5408\u594F",v:"4K\u5408\u594F"},{n:"4K\u5409\u4ED6",v:"4K\u5409\u4ED6"},{n:"4K\u6307\u5F39",v:"4K\u6307\u5F39"},{n:"4K\u5C0F\u63D0\u7434",v:"4K\u5C0F\u63D0\u7434"},{n:"4K\u67B6\u5B50\u9F13",v:"4K\u67B6\u5B50\u9F13"},{n:"4K COVER",v:"4K COVER"},{n:"4K\u6728\u5409\u4ED6",v:"4K\u6728\u5409\u4ED6"},{n:"4K\u94A2\u7434\u66F2",v:"4K\u94A2\u7434\u66F2"},{n:"4K BGM",v:"4K BGM"},{n:"4K\u5361\u7956\u7B1B",v:"4K\u5361\u7956\u7B1B"},{n:"4K\u7535\u5409\u4ED6",v:"4K\u7535\u5409\u4ED6"},{n:"4K LAUNCHPAD",v:"4K LAUNCHPAD"},{n:"4K\u8D1D\u65AF",v:"4K\u8D1D\u65AF"},{n:"4K\u53E3\u7434",v:"4K\u53E3\u7434"},{n:"4K\u6307\u5F39\u5409\u4ED6",v:"4K\u6307\u5F39\u5409\u4ED6"},{n:"4K\u7435\u7436",v:"4K\u7435\u7436"},{n:"4K\u626C\u7434",v:"4K\u626C\u7434"},{n:"4K\u53E4\u5178\u97F3\u4E50",v:"4K\u53E4\u5178\u97F3\u4E50"},{n:"4K\u53E4\u7B5D",v:"4K\u53E4\u7B5D"},{n:"4K\u4E8C\u80E1",v:"4K\u4E8C\u80E1"},{n:"4K BEATBOX",v:"4K BEATBOX"},{n:"4K\u53E4\u5178",v:"4K\u53E4\u5178"}]},{key:"tidv",name:"4k VOCALOID\xB7UTAU",value:[{n:"4K\u6D1B\u5929\u4F9D",v:"4K\u6D1B\u5929\u4F9D"},{n:"4K\u4E50\u6B63\u7EEB",v:"4K\u4E50\u6B63\u7EEB"},{n:"4K\u8A00\u548C",v:"4K\u8A00\u548C"},{n:"4K\u4E50\u6B63\u9F99\u7259",v:"4K\u4E50\u6B63\u9F99\u7259"},{n:"4K\u58A8\u6E05\u5F26",v:"4K\u58A8\u6E05\u5F26"},{n:"4K\u5FBD\u7FBD\u6469\u67EF",v:"4K\u5FBD\u7FBD\u6469\u67EF"},{n:"4K Vsinger",v:"4K Vsinger"},{n:"4K\u5FC3\u534E",v:"4K\u5FC3\u534E"},{n:"4K\u661F\u5C18",v:"4K\u661F\u5C18"},{n:"4K\u5AE3\u6C50",v:"4K\u5AE3\u6C50"},{n:"4K\u521D\u97F3\u672A\u6765",v:"4K\u521D\u97F3\u672A\u6765"},{n:"4K\u955C\u97F3\u94C3",v:"4K\u955C\u97F3\u94C3"},{n:"4K\u5DE1\u97F3\u6D41\u6B4C",v:"4K\u5DE1\u97F3\u6D41\u6B4C"},{n:"4K KAITO",v:"4K KAITO"},{n:"4K flower",v:"4K flower"},{n:"4K\u5143\u7B71",v:"4K\u5143\u7B71"},{n:"4K VOCALOID\u4E2D\u6587\u66F2",v:"4K VOCALOID\u4E2D\u6587\u66F2"},{n:"4K\u83B2\u534E",v:"4K\u83B2\u534E"},{n:"4K\u5357\u5317\u7EC4",v:"4K\u5357\u5317\u7EC4"},{n:"4K\u955C\u97F3\u53CC\u5B50",v:"4K\u955C\u97F3\u53CC\u5B50"},{n:"4K MUTA\u4E2D\u6587\u66F2",v:"4K MUTA\u4E2D\u6587\u66F2"},{n:"4K UTAU\u4E2D\u534E\u7EC4",v:"4K UTAU\u4E2D\u534E\u7EC4"},{n:"4K XStudio",v:"4K XStudio"},{n:"4K\u521D\u97F3",v:"4K\u521D\u97F3"},{n:"4K IA",v:"4K IA"},{n:"4K GUMI",v:"4K GUMI"},{n:"4K SynthV",v:"4K SynthV"},{n:"4K UTAU",v:"4K UTAU"},{n:"4K\u5E7B\u6653\u4F0A",v:"4K\u5E7B\u6653\u4F0A"},{n:"4K\u4E94\u7EF4\u4ECB\u8D28",v:"4K\u4E94\u7EF4\u4ECB\u8D28"},{n:"4K\u53EF\u4E0D",v:"4K\u53EF\u4E0D"},{n:"4K ACE\u865A\u62DF\u6B4C\u59EC",v:"4K ACE\u865A\u62DF\u6B4C\u59EC"},{n:"4K deepvocal",v:"4K deepvocal"},{n:"4K SYNTHV",v:"4K SYNTHV"}]},{key:"tidx",name:"4K\u97F3\u4E50\u73B0\u573A",value:[{n:"4K\u534E\u8BED\u73B0\u573A",v:"4K\u534E\u8BED\u73B0\u573A"},{n:"4K\u6B27\u7F8E\u73B0\u573A",v:"4K\u6B27\u7F8E\u73B0\u573A"},{n:"4K\u65E5\u8BED\u73B0\u573A",v:"4K\u65E5\u8BED\u73B0\u573A"},{n:"4K\u97E9\u8BED\u73B0\u573A",v:"4K\u97E9\u8BED\u73B0\u573A"},{n:"4K\u56FD\u8BED\u73B0\u573A",v:"4K\u56FD\u8BED\u73B0\u573A"},{n:"4K\u7CA4\u8BED\u73B0\u573A",v:"4K\u7CA4\u8BED\u73B0\u573A"},{n:"4K live",v:"4K live"},{n:"4K\u97F3\u4E50\u5267",v:"4K\u97F3\u4E50\u5267"},{n:"4K\u6F14\u5531\u4F1A",v:"4K\u6F14\u5531\u4F1A"},{n:"4K\u97F3\u4E50\u8282",v:"4K\u97F3\u4E50\u8282"}]},{key:"tidh",name:"4K\u97F3\u4E50\u7EFC\u5408",value:[{n:"4K\u7ECF\u5178\u8001\u6B4C",v:"4K\u7ECF\u5178\u8001\u6B4C"},{n:"4K\u7CBE\u9009\u6B4C\u5355",v:"4K\u7CBE\u9009\u6B4C\u5355"},{n:"4K\u5F71\u89C6\u97F3\u4E50",v:"4K\u5F71\u89C6\u97F3\u4E50"},{n:"4K\u6E38\u620F\u97F3\u4E50",v:"4K\u6E38\u620F\u97F3\u4E50"},{n:"4K\u4E2D\u56FD\u620F\u66F2",v:"4K\u4E2D\u56FD\u620F\u66F2"},{n:"4K\u9ED1\u80F6\u5531\u7247",v:"4K\u9ED1\u80F6\u5531\u7247"},{n:"4K ACG\u97F3\u4E50",v:"4K ACG\u97F3\u4E50"},{n:"4K\u97F3\u4E50\u5267",v:"4K\u97F3\u4E50\u5267"},{n:"4K\u4EA4\u54CD\u4E50",v:"4K\u4EA4\u54CD\u4E50"},{n:"4K\u5FAA\u73AF\u97F3\u4E50",v:"4K\u5FAA\u73AF\u97F3\u4E50"},{n:"4K OST\u97F3\u4E50",v:"4K OST\u97F3\u4E50"},{n:"4K BGM\u97F3\u4E50",v:"4K BGM\u97F3\u4E50"},{n:"4K\u97F3\u4E50",v:"4K\u97F3\u4E50"},{n:"4K DJ\u97F3\u4E50",v:"4K DJ\u97F3\u4E50"},{n:"4K\u7535\u97F3",v:"4K\u7535\u97F3"},{n:"4K\u821E\u66F2",v:"4K\u821E\u66F2"},{n:"4K\u591C\u5E97\u821E\u66F2",v:"4K\u591C\u5E97\u821E\u66F2"},{n:"4K\u56FD\u5916\u821E\u66F2",v:"4K\u56FD\u5916\u821E\u66F2"},{n:"4K\u4E9A\u6D32\u821E\u66F2",v:"4K\u4E9A\u6D32\u821E\u66F2"},{n:"4K\u6B27\u7F8E\u821E\u66F2",v:"4K\u6B27\u7F8E\u821E\u66F2"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],MV:[{key:"tidm",name:"\u5206\u7C7B",value:[{n:"MV",v:"MV"},{n:"MV\u5408\u96C6",v:"MV\u5408\u96C6"},{n:"\u5168\u7F51\u7B2C\u4E00",v:"\u5168\u7F51\u7B2C\u4E00"},{n:"4K60FPS",v:"4K60FPS"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"\u97E9\u56FD\u5973\u661F MV\u5408\u96C6",v:"\u97E9\u56FD\u5973\u661F MV\u5408\u96C6"},{n:"\u674E\u5B5D\u5229 MV\u5408\u96C6",v:"\u674E\u5B5D\u5229 MV\u5408\u96C6"},{n:"\u674E\u77E5\u6069 MV\u5408\u96C6",v:"\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"\u6797\u5141\u513F MV\u5408\u96C6",v:"\u6797\u5141\u513F MV\u5408\u96C6"},{n:"\u91D1\u6CEB\u96C5 MV\u5408\u96C6",v:"\u91D1\u6CEB\u96C5 MV\u5408\u96C6"},{n:"\u91D1\u6CF0\u598D MV\u5408\u96C6",v:"\u91D1\u6CF0\u598D MV\u5408\u96C6"},{n:"\u674E\u5BA3\u7F8E MV\u5408\u96C6",v:"\u674E\u5BA3\u7F8E MV\u5408\u96C6"},{n:"\u5D14\u96EA\u8389 MV\u5408\u96C6",v:"\u5D14\u96EA\u8389 MV\u5408\u96C6"},{n:"\u5B89\u559C\u5EF6 MV\u5408\u96C6",v:"\u5B89\u559C\u5EF6 MV\u5408\u96C6"},{n:"\u91D1\u4E9A\u8363 MV\u5408\u96C6",v:"\u91D1\u4E9A\u8363 MV\u5408\u96C6"},{n:"\u674E\u77E5\u6069 MV\u5408\u96C6",v:"\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"\u674E\u8D1E\u8D24 MV\u5408\u96C6",v:"\u674E\u8D1E\u8D24 MV\u5408\u96C6"},{n:"\u6D2A\u771F\u82F1 MV\u5408\u96C6",v:"\u6D2A\u771F\u82F1 MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"\u65E5\u672C\u5973\u661F MV\u5408\u96C6",v:"\u65E5\u672C\u5973\u661F MV\u5408\u96C6"},{n:"YUI MV\u5408\u96C6",v:"YUI MV\u5408\u96C6"},{n:"\u5E78\u7530\u6765\u672A MV\u5408\u96C6",v:"\u5E78\u7530\u6765\u672A MV\u5408\u96C6"},{n:"\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6",v:"\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6"},{n:"\u6EE8\u5D0E\u6B65 MV\u5408\u96C6",v:"\u6EE8\u5D0E\u6B65 MV\u5408\u96C6"},{n:"\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6",v:"\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6"},{n:"\u5B87\u591A\u7530\u5149 MV\u5408\u96C6",v:"\u5B87\u591A\u7530\u5149 MV\u5408\u96C6"},{n:"\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6",v:"\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6"},{n:"\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6",v:"\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6"},{n:"\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6",v:"\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6"},{n:"Angela MV\u5408\u96C6",v:"Angela MV\u5408\u96C6"},{n:"\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6",v:"\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"\u5973\u661F MV\u5408\u96C6",v:"\u5973\u661F MV\u5408\u96C6"},{n:"\u6234\u4F69\u59AE MV\u5408\u96C6",v:"\u6234\u4F69\u59AE MV\u5408\u96C6"},{n:"\u9093\u7D2B\u68CB MV\u5408\u96C6",v:"\u9093\u7D2B\u68CB MV\u5408\u96C6"},{n:"\u5F20\u97F6\u6DB5 MV\u5408\u96C6",v:"\u5F20\u97F6\u6DB5 MV\u5408\u96C6"},{n:"\u8521\u5065\u96C5 MV\u5408\u96C6",v:"\u8521\u5065\u96C5 MV\u5408\u96C6"},{n:"\u83AB\u6587\u851A MV\u5408\u96C6",v:"\u83AB\u6587\u851A MV\u5408\u96C6"},{n:"\u5218\u82E5\u82F1 MV\u5408\u96C6",v:"\u5218\u82E5\u82F1 MV\u5408\u96C6"},{n:"\u9093\u4E3D\u541B MV\u5408\u96C6",v:"\u9093\u4E3D\u541B MV\u5408\u96C6"},{n:"\u8521\u4F9D\u6797 MV\u5408\u96C6",v:"\u8521\u4F9D\u6797 MV\u5408\u96C6"},{n:"\u674E\u5B87\u6625 MV\u5408\u96C6",v:"\u674E\u5B87\u6625 MV\u5408\u96C6"},{n:"\u5F90\u4F73\u83B9 MV\u5408\u96C6",v:"\u5F90\u4F73\u83B9 MV\u5408\u96C6"},{n:"\u6768\u5343\u5B05 MV\u5408\u96C6",v:"\u6768\u5343\u5B05 MV\u5408\u96C6"},{n:"\u5F20\u9753\u9896 MV\u5408\u96C6",v:"\u5F20\u9753\u9896 MV\u5408\u96C6"},{n:"\u6768\u4E1E\u7433 MV\u5408\u96C6",v:"\u6768\u4E1E\u7433 MV\u5408\u96C6"},{n:"\u8427\u4E9A\u8F69 MV\u5408\u96C6",v:"\u8427\u4E9A\u8F69 MV\u5408\u96C6"},{n:"\u5BB9\u7956\u513F MV\u5408\u96C6",v:"\u5BB9\u7956\u513F MV\u5408\u96C6"},{n:"\u6885\u8273\u82B3 MV\u5408\u96C6",v:"\u6885\u8273\u82B3 MV\u5408\u96C6"},{n:"\u5B59\u71D5\u59FF MV\u5408\u96C6",v:"\u5B59\u71D5\u59FF MV\u5408\u96C6"},{n:"\u8881\u5A05\u7EF4 MV\u5408\u96C6",v:"\u8881\u5A05\u7EF4 MV\u5408\u96C6"},{n:"\u738B\u83F2 MV\u5408\u96C6",v:"\u738B\u83F2 MV\u5408\u96C6"},{n:"\u6881\u9759\u8339 MV\u5408\u96C6",v:"\u6881\u9759\u8339 MV\u5408\u96C6"},{n:"\u5468\u6167\u654F MV\u5408\u96C6",v:"\u5468\u6167\u654F MV\u5408\u96C6"},{n:"\u5F20\u60E0\u59B9 MV\u5408\u96C6",v:"\u5F20\u60E0\u59B9 MV\u5408\u96C6"},{n:"\u5468\u7B14\u7545 MV\u5408\u96C6",v:"\u5468\u7B14\u7545 MV\u5408\u96C6"},{n:"\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6",v:"\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6"},{n:"\u9648\u6167\u5A34 MV\u5408\u96C6",v:"\u9648\u6167\u5A34 MV\u5408\u96C6"},{n:"\u90ED\u9759 MV\u5408\u96C6",v:"\u90ED\u9759 MV\u5408\u96C6"},{n:"\u90A3\u82F1 MV\u5408\u96C6",v:"\u90A3\u82F1 MV\u5408\u96C6"},{n:"\u97E9\u7EA2 MV\u5408\u96C6",v:"\u97E9\u7EA2 MV\u5408\u96C6"},{n:"\u6797\u5FC6\u83B2 MV\u5408\u96C6",v:"\u6797\u5FC6\u83B2 MV\u5408\u96C6"},{n:"\u674E\u739F MV\u5408\u96C6",v:"\u674E\u739F MV\u5408\u96C6"},{n:"\u5F90\u5C0F\u51E4 MV\u5408\u96C6",v:"\u5F90\u5C0F\u51E4 MV\u5408\u96C6"},{n:"\u5353\u4F9D\u5A77 MV\u5408\u96C6",v:"\u5353\u4F9D\u5A77 MV\u5408\u96C6"},{n:"\u90C1\u53EF\u552F MV\u5408\u96C6",v:"\u90C1\u53EF\u552F MV\u5408\u96C6"},{n:"\u7530\u9707 MV\u5408\u96C6",v:"\u7530\u9707 MV\u5408\u96C6"},{n:"\u51E4\u98DE\u98DE MV\u5408\u96C6",v:"\u51E4\u98DE\u98DE MV\u5408\u96C6"},{n:"\u8C2D\u6676 MV\u5408\u96C6",v:"\u8C2D\u6676 MV\u5408\u96C6"},{n:"\u53F6\u5029\u6587 MV\u5408\u96C6",v:"\u53F6\u5029\u6587 MV\u5408\u96C6"},{n:"\u738B\u5FC3\u51CC MV\u5408\u96C6",v:"\u738B\u5FC3\u51CC MV\u5408\u96C6"},{n:"\u90ED\u91C7\u6D01 MV\u5408\u96C6",v:"\u90ED\u91C7\u6D01 MV\u5408\u96C6"},{n:"\u963F\u9EDB\u5C14 MV\u5408\u96C6",v:"\u963F\u9EDB\u5C14 MV\u5408\u96C6"},{n:"LadyGaga MV\u5408\u96C6",v:"LadyGaga MV\u5408\u96C6"},{n:"\u5E03\u5170\u59AE MV\u5408\u96C6",v:"\u5E03\u5170\u59AE MV\u5408\u96C6"},{n:"\u6D1B\u5929\u4F9D MV\u5408\u96C6",v:"\u6D1B\u5929\u4F9D MV\u5408\u96C6"},{n:"\u521D\u97F3\u672A\u6765 MV\u5408\u96C6",v:"\u521D\u97F3\u672A\u6765 MV\u5408\u96C6"}]},{key:"tidx",name:"\u5206\u7C7B",value:[{n:"\u7537\u661F MV\u5408\u96C6",v:"\u7537\u661F MV\u5408\u96C6"},{n:"\u5468\u6770\u4F26 MV\u5408\u96C6",v:"\u5468\u6770\u4F26 MV\u5408\u96C6"},{n:"\u9648\u5955\u8FC5 MV\u5408\u96C6",v:"\u9648\u5955\u8FC5 MV\u5408\u96C6"},{n:"\u5218\u5FB7\u534E MV\u5408\u96C6",v:"\u5218\u5FB7\u534E MV\u5408\u96C6"},{n:"\u90ED\u5BCC\u57CE MV\u5408\u96C6",v:"\u90ED\u5BCC\u57CE MV\u5408\u96C6"},{n:"\u5F20\u5B66\u53CB MV\u5408\u96C6",v:"\u5F20\u5B66\u53CB MV\u5408\u96C6"},{n:"\u9ECE\u660E MV\u5408\u96C6",v:"\u9ECE\u660E MV\u5408\u96C6"},{n:"\u674E\u5B97\u76DB MV\u5408\u96C6",v:"\u674E\u5B97\u76DB MV\u5408\u96C6"},{n:"\u6734\u6811 MV\u5408\u96C6",v:"\u6734\u6811 MV\u5408\u96C6"},{n:"\u6797\u5B50\u7965 MV\u5408\u96C6",v:"\u6797\u5B50\u7965 MV\u5408\u96C6"},{n:"\u4EFB\u8D24\u9F50 MV\u5408\u96C6",v:"\u4EFB\u8D24\u9F50 MV\u5408\u96C6"},{n:"\u5F20\u4FE1\u54F2 MV\u5408\u96C6",v:"\u5F20\u4FE1\u54F2 MV\u5408\u96C6"},{n:"\u5B59\u6960 MV\u5408\u96C6",v:"\u5B59\u6960 MV\u5408\u96C6"},{n:"\u5F20\u5B87 MV\u5408\u96C6",v:"\u5F20\u5B87 MV\u5408\u96C6"},{n:"\u5468\u534E\u5065 MV\u5408\u96C6",v:"\u5468\u534E\u5065 MV\u5408\u96C6"},{n:"\u859B\u4E4B\u8C26 MV\u5408\u96C6",v:"\u859B\u4E4B\u8C26 MV\u5408\u96C6"},{n:"\u8BB8\u5D69 MV\u5408\u96C6",v:"\u8BB8\u5D69 MV\u5408\u96C6"},{n:"\u5468\u6DF1 MV\u5408\u96C6",v:"\u5468\u6DF1 MV\u5408\u96C6"},{n:"\u6BDB\u4E0D\u6613 MV\u5408\u96C6",v:"\u6BDB\u4E0D\u6613 MV\u5408\u96C6"},{n:"\u6C6A\u82CF\u6CF7 MV\u5408\u96C6",v:"\u6C6A\u82CF\u6CF7 MV\u5408\u96C6"},{n:"\u6768\u5B97\u7EAC MV\u5408\u96C6",v:"\u6768\u5B97\u7EAC MV\u5408\u96C6"},{n:"\u80E1\u5F66\u658C MV\u5408\u96C6",v:"\u80E1\u5F66\u658C MV\u5408\u96C6"},{n:"\u674E\u8363\u6D69 MV\u5408\u96C6",v:"\u674E\u8363\u6D69 MV\u5408\u96C6"},{n:"\u6797\u5FD7\u70AB MV\u5408\u96C6",v:"\u6797\u5FD7\u70AB MV\u5408\u96C6"},{n:"\u9676\u5586 MV\u5408\u96C6",v:"\u9676\u5586 MV\u5408\u96C6"},{n:"\u80E1\u590F MV\u5408\u96C6",v:"\u80E1\u590F MV\u5408\u96C6"},{n:"\u674E\u7389\u521A MV\u5408\u96C6",v:"\u674E\u7389\u521A MV\u5408\u96C6"},{n:"\u5F26\u5B50 MV\u5408\u96C6",v:"\u5F26\u5B50 MV\u5408\u96C6"},{n:"\u9648\u5C0F\u6625 MV\u5408\u96C6",v:"\u9648\u5C0F\u6625 MV\u5408\u96C6"},{n:"\u9E7F\u6657 MV\u5408\u96C6",v:"\u9E7F\u6657 MV\u5408\u96C6"},{n:"\u8BB8\u5DCD MV\u5408\u96C6",v:"\u8BB8\u5DCD MV\u5408\u96C6"},{n:"\u6797\u4FCA\u6770 MV\u5408\u96C6",v:"\u6797\u4FCA\u6770 MV\u5408\u96C6"},{n:"\u8D75\u96F7 MV\u5408\u96C6",v:"\u8D75\u96F7 MV\u5408\u96C6"},{n:"\u8C2D\u548F\u9E9F MV\u5408\u96C6",v:"\u8C2D\u548F\u9E9F MV\u5408\u96C6"},{n:"\u5468\u4F20\u96C4 MV\u5408\u96C6",v:"\u5468\u4F20\u96C4 MV\u5408\u96C6"},{n:"\u5F20\u56FD\u8363 MV\u5408\u96C6",v:"\u5F20\u56FD\u8363 MV\u5408\u96C6"},{n:"\u674E\u5065 MV\u5408\u96C6",v:"\u674E\u5065 MV\u5408\u96C6"},{n:"\u534E\u6668\u5B87 MV\u5408\u96C6",v:"\u534E\u6668\u5B87 MV\u5408\u96C6"},{n:"\u5927\u5F20\u4F1F MV\u5408\u96C6",v:"\u5927\u5F20\u4F1F MV\u5408\u96C6"},{n:"\u738B\u4FCA\u51EF MV\u5408\u96C6",v:"\u738B\u4FCA\u51EF MV\u5408\u96C6"},{n:"\u6613\u70CA\u5343\u73BA MV\u5408\u96C6",v:"\u6613\u70CA\u5343\u73BA MV\u5408\u96C6"},{n:"\u738B\u6E90 MV\u5408\u96C6",v:"\u738B\u6E90 MV\u5408\u96C6"},{n:"\u7530\u99A5\u7504 MV\u5408\u96C6",v:"\u7530\u99A5\u7504 MV\u5408\u96C6"},{n:"\u5C0F\u864E\u961F MV\u5408\u96C6",v:"\u5C0F\u864E\u961F MV\u5408\u96C6"},{n:"\u5F20\u6770 MV\u5408\u96C6",v:"\u5F20\u6770 MV\u5408\u96C6"},{n:"\u4F0D\u4F70 MV\u5408\u96C6",v:"\u4F0D\u4F70 MV\u5408\u96C6"},{n:"\u5200\u90CE MV\u5408\u96C6",v:"\u5200\u90CE MV\u5408\u96C6"},{n:"\u6F58\u73AE\u67CF MV\u5408\u96C6",v:"\u6F58\u73AE\u67CF MV\u5408\u96C6"},{n:"\u6797\u5BA5\u5609 MV\u5408\u96C6",v:"\u6797\u5BA5\u5609 MV\u5408\u96C6"},{n:"\u8521\u5F90\u5764 MV\u5408\u96C6",v:"\u8521\u5F90\u5764 MV\u5408\u96C6"},{n:"\u674E\u5723\u6770 MV\u5408\u96C6",v:"\u674E\u5723\u6770 MV\u5408\u96C6"},{n:"\u8427\u656C\u817E MV\u5408\u96C6",v:"\u8427\u656C\u817E MV\u5408\u96C6"},{n:"\u7126\u8FC8\u5947 MV\u5408\u96C6",v:"\u7126\u8FC8\u5947 MV\u5408\u96C6"},{n:"\u5C24\u957F\u9756 MV\u5408\u96C6",v:"\u5C24\u957F\u9756 MV\u5408\u96C6"},{n:"\u90D1\u4E2D\u57FA MV\u5408\u96C6",v:"\u90D1\u4E2D\u57FA MV\u5408\u96C6"},{n:"\u5F20\u827A\u5174 MV\u5408\u96C6",v:"\u5F20\u827A\u5174 MV\u5408\u96C6"},{n:"\u738B\u5609\u5C14 MV\u5408\u96C6",v:"\u738B\u5609\u5C14 MV\u5408\u96C6"},{n:"\u5218\u5BAA\u534E MV\u5408\u96C6",v:"\u5218\u5BAA\u534E MV\u5408\u96C6"},{n:"\u5F20\u656C\u8F69 MV\u5408\u96C6",v:"\u5F20\u656C\u8F69 MV\u5408\u96C6"},{n:"\u674E\u514B\u52E4 MV\u5408\u96C6",v:"\u674E\u514B\u52E4 MV\u5408\u96C6"},{n:"\u963F\u675C MV\u5408\u96C6",v:"\u963F\u675C MV\u5408\u96C6"},{n:"\u5D14\u5065 MV\u5408\u96C6",v:"\u5D14\u5065 MV\u5408\u96C6"},{n:"\u5EBE\u6F84\u5E86 MV\u5408\u96C6",v:"\u5EBE\u6F84\u5E86 MV\u5408\u96C6"},{n:"\u6C6A\u5CF0 MV\u5408\u96C6",v:"\u6C6A\u5CF0 MV\u5408\u96C6"},{n:"\u6768\u5764 MV\u5408\u96C6",v:"\u6768\u5764 MV\u5408\u96C6"},{n:"\u5F20\u9707\u5CB3 MV\u5408\u96C6",v:"\u5F20\u9707\u5CB3 MV\u5408\u96C6"},{n:"\u9F50\u79E6 MV\u5408\u96C6",v:"\u9F50\u79E6 MV\u5408\u96C6"},{n:"\u5F20\u96E8\u751F MV\u5408\u96C6",v:"\u5F20\u96E8\u751F MV\u5408\u96C6"},{n:"\u9EC4\u54C1\u6E90 MV\u5408\u96C6",v:"\u9EC4\u54C1\u6E90 MV\u5408\u96C6"},{n:"\u4E01\u5F53 MV\u5408\u96C6",v:"\u4E01\u5F53 MV\u5408\u96C6"},{n:"\u90D1\u667A\u5316 MV\u5408\u96C6",v:"\u90D1\u667A\u5316 MV\u5408\u96C6"},{n:"\u8C22\u9706\u950B MV\u5408\u96C6",v:"\u8C22\u9706\u950B MV\u5408\u96C6"},{n:"\u9EC4\u5C0F\u7425 MV\u5408\u96C6",v:"\u9EC4\u5C0F\u7425 MV\u5408\u96C6"},{n:"\u4EFB\u5609\u4F26 MV\u5408\u96C6",v:"\u4EFB\u5609\u4F26 MV\u5408\u96C6"},{n:"\u5B8B\u4E9A\u68EE MV\u5408\u96C6",v:"\u5B8B\u4E9A\u68EE MV\u5408\u96C6"},{n:"\u8D39\u7389\u6E05 MV\u5408\u96C6",v:"\u8D39\u7389\u6E05 MV\u5408\u96C6"},{n:"\u8D39\u7FD4 MV\u5408\u96C6",v:"\u8D39\u7FD4 MV\u5408\u96C6"},{n:"\u91D1\u5FD7\u6587 MV\u5408\u96C6",v:"\u91D1\u5FD7\u6587 MV\u5408\u96C6"},{n:"\u9EC4\u5BB6\u5F3A MV\u5408\u96C6",v:"\u9EC4\u5BB6\u5F3A MV\u5408\u96C6"},{n:"\u65B9\u5927\u540C MV\u5408\u96C6",v:"\u65B9\u5927\u540C MV\u5408\u96C6"},{n:"\u5434\u514B\u7FA4 MV\u5408\u96C6",v:"\u5434\u514B\u7FA4 MV\u5408\u96C6"},{n:"\u7F57\u5927\u4F51 MV\u5408\u96C6",v:"\u7F57\u5927\u4F51 MV\u5408\u96C6"},{n:"\u5149\u826F MV\u5408\u96C6",v:"\u5149\u826F MV\u5408\u96C6"},{n:"\u738B\u6770 MV\u5408\u96C6",v:"\u738B\u6770 MV\u5408\u96C6"},{n:"\u91D1\u6C60 MV\u5408\u96C6",v:"\u91D1\u6C60 MV\u5408\u96C6"},{n:"\u5C60\u6D2A\u521A MV\u5408\u96C6",v:"\u5C60\u6D2A\u521A MV\u5408\u96C6"},{n:"\u6234\u8343 MV\u5408\u96C6",v:"\u6234\u8343 MV\u5408\u96C6"},{n:"\u7F57\u5FD7\u7965 MV\u5408\u96C6",v:"\u7F57\u5FD7\u7965 MV\u5408\u96C6"},{n:"\u738B\u529B\u5B8F MV\u5408\u96C6",v:"\u738B\u529B\u5B8F MV\u5408\u96C6"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6"}]},{key:"tidz",name:"\u8BED\u79CD",value:[{n:"\u534E\u8BED MV\u5408\u96C6",v:"\u534E\u8BED MV\u5408\u96C6"},{n:"\u6B27\u7F8E MV\u5408\u96C6",v:"\u6B27\u7F8E MV\u5408\u96C6"},{n:"\u65E5\u8BED MV\u5408\u96C6",v:"\u65E5\u8BED MV\u5408\u96C6"},{n:"\u97E9\u8BED MV\u5408\u96C6",v:"\u97E9\u8BED MV\u5408\u96C6"},{n:"\u56FD\u8BED MV\u5408\u96C6",v:"\u56FD\u8BED MV\u5408\u96C6"},{n:"\u7CA4\u8BED MV\u5408\u96C6",v:"\u7CA4\u8BED MV\u5408\u96C6"},{n:"\u95FD\u5357\u8BED MV\u5408\u96C6",v:"\u95FD\u5357\u8BED MV\u5408\u96C6"},{n:"\u4E1C\u5357\u4E9A MV\u5408\u96C6",v:"\u4E1C\u5357\u4E9A MV\u5408\u96C6"},{n:"\u82F1\u8BED MV\u5408\u96C6",v:"\u82F1\u8BED MV\u5408\u96C6"},{n:"\u4FC4\u8BED MV\u5408\u96C6",v:"\u4FC4\u8BED MV\u5408\u96C6"},{n:"\u5370\u5EA6 MV\u5408\u96C6",v:"\u5370\u5EA6 MV\u5408\u96C6"},{n:"\u81EA\u5236 MV\u5408\u96C6",v:"\u81EA\u5236 MV\u5408\u96C6"}]},{key:"tidd",name:"\u4E50\u961F\u7EC4\u5408",value:[{n:"\u4E50\u961F MV\u5408\u96C6",v:"\u4E50\u961F MV\u5408\u96C6"},{n:"\u7EC4\u5408 MV\u5408\u96C6",v:"\u7EC4\u5408 MV\u5408\u96C6"},{n:"Beyond MV\u5408\u96C6",v:"Beyond MV\u5408\u96C6"},{n:"\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6",v:"\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6"},{n:"\u7EB5\u8D2F\u7EBF MV\u5408\u96C6",v:"\u7EB5\u8D2F\u7EBF MV\u5408\u96C6"},{n:"\u82CF\u6253\u7EFF MV\u5408\u96C6",v:"\u82CF\u6253\u7EFF MV\u5408\u96C6"},{n:"\u4E94\u6708\u5929 MV\u5408\u96C6",v:"\u4E94\u6708\u5929 MV\u5408\u96C6"},{n:"TFBOYS MV\u5408\u96C6",v:"TFBOYS MV\u5408\u96C6"},{n:"\u7FBD\u6CC9 MV\u5408\u96C6",v:"\u7FBD\u6CC9 MV\u5408\u96C6"},{n:"\u8349\u8722 MV\u5408\u96C6",v:"\u8349\u8722 MV\u5408\u96C6"},{n:"\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6",v:"\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6"},{n:"\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6",v:"\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6"},{n:"\u98DE\u513F\u4E50\u961F MV\u5408\u96C6",v:"\u98DE\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"\u82B1\u513F\u4E50\u961F MV\u5408\u96C6",v:"\u82B1\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"\u5357\u62F3\u5988\u5988 MV\u5408\u96C6",v:"\u5357\u62F3\u5988\u5988 MV\u5408\u96C6"},{n:"\u6C34\u6728\u5E74\u534E MV\u5408\u96C6",v:"\u6C34\u6728\u5E74\u534E MV\u5408\u96C6"},{n:"\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6",v:"\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6"},{n:"\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6",v:"\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6"},{n:"\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6",v:"\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6"},{n:"\u4FE1\u4E50\u961F MV\u5408\u96C6",v:"\u4FE1\u4E50\u961F MV\u5408\u96C6"},{n:"\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6",v:"\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6"},{n:"\u6797\u80AF\u516C\u56ED MV\u5408\u96C6",v:"\u6797\u80AF\u516C\u56ED MV\u5408\u96C6"},{n:"BIGBANG MV\u5408\u96C6",v:"BIGBANG MV\u5408\u96C6"},{n:"\u540E\u8857\u7537\u5B69 MV\u5408\u96C6",v:"\u540E\u8857\u7537\u5B69 MV\u5408\u96C6"},{n:"\u591C\u613F\u4E50\u961F MV\u5408\u96C6",v:"\u591C\u613F\u4E50\u961F MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],"4K MV":[{key:"tidv",name:"\u5206\u7C7B",value:[{n:"4K MV",v:"4K MV"},{n:"4K MV\u5408\u96C6",v:"4K MV\u5408\u96C6"},{n:"4K\u5168\u7F51\u7B2C\u4E00",v:"4K\u5168\u7F51\u7B2C\u4E00"},{n:"4K60FPS",v:"4K60FPS"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"4K\u97E9\u56FD\u5973\u661F MV\u5408\u96C6",v:"4K\u97E9\u56FD\u5973\u661F MV\u5408\u96C6"},{n:"4K\u674E\u5B5D\u5229 MV\u5408\u96C6",v:"4K\u674E\u5B5D\u5229 MV\u5408\u96C6"},{n:"4K\u674E\u77E5\u6069 MV\u5408\u96C6",v:"4K\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"4K\u6797\u5141\u513F MV\u5408\u96C6",v:"4K\u6797\u5141\u513F MV\u5408\u96C6"},{n:"4K\u91D1\u6CEB\u96C5 MV\u5408\u96C6",v:"4K\u91D1\u6CEB\u96C5 MV\u5408\u96C6"},{n:"4K\u91D1\u6CF0\u598D MV\u5408\u96C6",v:"4K\u91D1\u6CF0\u598D MV\u5408\u96C6"},{n:"4K\u674E\u5BA3\u7F8E MV\u5408\u96C6",v:"4K\u674E\u5BA3\u7F8E MV\u5408\u96C6"},{n:"4K\u5D14\u96EA\u8389 MV\u5408\u96C6",v:"4K\u5D14\u96EA\u8389 MV\u5408\u96C6"},{n:"4K\u5B89\u559C\u5EF6 MV\u5408\u96C6",v:"4K\u5B89\u559C\u5EF6 MV\u5408\u96C6"},{n:"4K\u91D1\u4E9A\u8363 MV\u5408\u96C6",v:"4K\u91D1\u4E9A\u8363 MV\u5408\u96C6"},{n:"4K\u674E\u77E5\u6069 MV\u5408\u96C6",v:"4K\u674E\u77E5\u6069 MV\u5408\u96C6"},{n:"4K\u674E\u8D1E\u8D24 MV\u5408\u96C6",v:"4K\u674E\u8D1E\u8D24 MV\u5408\u96C6"},{n:"4K\u6D2A\u771F\u82F1 MV\u5408\u96C6",v:"4K\u6D2A\u771F\u82F1 MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"4K\u65E5\u672C\u5973\u661F MV\u5408\u96C6",v:"4K\u65E5\u672C\u5973\u661F MV\u5408\u96C6"},{n:"4K YUI MV\u5408\u96C6",v:"4K YUI MV\u5408\u96C6"},{n:"4K\u5E78\u7530\u6765\u672A MV\u5408\u96C6",v:"4K\u5E78\u7530\u6765\u672A MV\u5408\u96C6"},{n:"4K\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6",v:"4K\u5B89\u5BA4\u5948\u7F8E\u60E0 MV\u5408\u96C6"},{n:"4K\u6EE8\u5D0E\u6B65 MV\u5408\u96C6",v:"4K\u6EE8\u5D0E\u6B65 MV\u5408\u96C6"},{n:"4K\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6",v:"4K\u53E4\u8C37\u4EC1\u7F8E MV\u5408\u96C6"},{n:"4K\u5B87\u591A\u7530\u5149 MV\u5408\u96C6",v:"4K\u5B87\u591A\u7530\u5149 MV\u5408\u96C6"},{n:"4K\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6",v:"4K\u4F0A\u85E4\u7531\u5948 MV\u5408\u96C6"},{n:"4K\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6",v:"4K\u7389\u7F6E\u6210\u5B9E MV\u5408\u96C6"},{n:"4K\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6",v:"4K\u4ED3\u6728\u9EBB\u8863 MV\u5408\u96C6"},{n:"4K Angela MV\u5408\u96C6",v:"4K Angela MV\u5408\u96C6"},{n:"4K\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6",v:"4K\u4E2D\u5C9B\u7F8E\u96EA MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"4K\u5973\u661F MV\u5408\u96C6",v:"4K\u5973\u661F MV\u5408\u96C6"},{n:"4K\u6234\u4F69\u59AE MV\u5408\u96C6",v:"4K\u6234\u4F69\u59AE MV\u5408\u96C6"},{n:"4K\u9093\u7D2B\u68CB MV\u5408\u96C6",v:"4K\u9093\u7D2B\u68CB MV\u5408\u96C6"},{n:"4K\u5F20\u97F6\u6DB5 MV\u5408\u96C6",v:"4K\u5F20\u97F6\u6DB5 MV\u5408\u96C6"},{n:"4K\u8521\u5065\u96C5 MV\u5408\u96C6",v:"4K\u8521\u5065\u96C5 MV\u5408\u96C6"},{n:"4K\u83AB\u6587\u851A MV\u5408\u96C6",v:"4K\u83AB\u6587\u851A MV\u5408\u96C6"},{n:"4K\u5218\u82E5\u82F1 MV\u5408\u96C6",v:"4K\u5218\u82E5\u82F1 MV\u5408\u96C6"},{n:"4K\u9093\u4E3D\u541B MV\u5408\u96C6",v:"4K\u9093\u4E3D\u541B MV\u5408\u96C6"},{n:"4K\u8521\u4F9D\u6797 MV\u5408\u96C6",v:"4K\u8521\u4F9D\u6797 MV\u5408\u96C6"},{n:"4K\u674E\u5B87\u6625 MV\u5408\u96C6",v:"4K\u674E\u5B87\u6625 MV\u5408\u96C6"},{n:"4K\u5F90\u4F73\u83B9 MV\u5408\u96C6",v:"4K\u5F90\u4F73\u83B9 MV\u5408\u96C6"},{n:"4K\u6768\u5343\u5B05 MV\u5408\u96C6",v:"4K\u6768\u5343\u5B05 MV\u5408\u96C6"},{n:"4K\u5F20\u9753\u9896 MV\u5408\u96C6",v:"4K\u5F20\u9753\u9896 MV\u5408\u96C6"},{n:"4K\u6768\u4E1E\u7433 MV\u5408\u96C6",v:"4K\u6768\u4E1E\u7433 MV\u5408\u96C6"},{n:"4K\u8427\u4E9A\u8F69 MV\u5408\u96C6",v:"4K\u8427\u4E9A\u8F69 MV\u5408\u96C6"},{n:"4K\u5BB9\u7956\u513F MV\u5408\u96C6",v:"4K\u5BB9\u7956\u513F MV\u5408\u96C6"},{n:"4K\u6885\u8273\u82B3 MV\u5408\u96C6",v:"4K\u6885\u8273\u82B3 MV\u5408\u96C6"},{n:"4K\u5B59\u71D5\u59FF MV\u5408\u96C6",v:"4K\u5B59\u71D5\u59FF MV\u5408\u96C6"},{n:"4K\u8881\u5A05\u7EF4 MV\u5408\u96C6",v:"4K\u8881\u5A05\u7EF4 MV\u5408\u96C6"},{n:"4K\u738B\u83F2 MV\u5408\u96C6",v:"4K\u738B\u83F2 MV\u5408\u96C6"},{n:"4K\u6881\u9759\u8339 MV\u5408\u96C6",v:"4K\u6881\u9759\u8339 MV\u5408\u96C6"},{n:"4K\u5468\u6167\u654F MV\u5408\u96C6",v:"4K\u5468\u6167\u654F MV\u5408\u96C6"},{n:"4K\u5F20\u60E0\u59B9 MV\u5408\u96C6",v:"4K\u5F20\u60E0\u59B9 MV\u5408\u96C6"},{n:"4K\u5468\u7B14\u7545 MV\u5408\u96C6",v:"4K\u5468\u7B14\u7545 MV\u5408\u96C6"},{n:"4K\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6",v:"4K\u8C2D\u7EF4\u7EF4 MV\u5408\u96C6"},{n:"4K\u9648\u6167\u5A34 MV\u5408\u96C6",v:"4K\u9648\u6167\u5A34 MV\u5408\u96C6"},{n:"4K\u90ED\u9759 MV\u5408\u96C6",v:"4K\u90ED\u9759 MV\u5408\u96C6"},{n:"4K\u90A3\u82F1 MV\u5408\u96C6",v:"4K\u90A3\u82F1 MV\u5408\u96C6"},{n:"4K\u97E9\u7EA2 MV\u5408\u96C6",v:"4K\u97E9\u7EA2 MV\u5408\u96C6"},{n:"4K\u6797\u5FC6\u83B2 MV\u5408\u96C6",v:"4K\u6797\u5FC6\u83B2 MV\u5408\u96C6"},{n:"4K\u674E\u739F MV\u5408\u96C6",v:"4K\u674E\u739F MV\u5408\u96C6"},{n:"4K\u5F90\u5C0F\u51E4 MV\u5408\u96C6",v:"4K\u5F90\u5C0F\u51E4 MV\u5408\u96C6"},{n:"4K\u5353\u4F9D\u5A77 MV\u5408\u96C6",v:"4K\u5353\u4F9D\u5A77 MV\u5408\u96C6"},{n:"4K\u90C1\u53EF\u552F MV\u5408\u96C6",v:"4K\u90C1\u53EF\u552F MV\u5408\u96C6"},{n:"4K\u7530\u9707 MV\u5408\u96C6",v:"4K\u7530\u9707 MV\u5408\u96C6"},{n:"4K\u51E4\u98DE\u98DE MV\u5408\u96C6",v:"4K\u51E4\u98DE\u98DE MV\u5408\u96C6"},{n:"4K\u8C2D\u6676 MV\u5408\u96C6",v:"4K\u8C2D\u6676 MV\u5408\u96C6"},{n:"4K\u53F6\u5029\u6587 MV\u5408\u96C6",v:"4K\u53F6\u5029\u6587 MV\u5408\u96C6"},{n:"4K\u738B\u5FC3\u51CC MV\u5408\u96C6",v:"4K\u738B\u5FC3\u51CC MV\u5408\u96C6"},{n:"4K\u90ED\u91C7\u6D01 MV\u5408\u96C6",v:"4K\u90ED\u91C7\u6D01 MV\u5408\u96C6"},{n:"4K\u963F\u9EDB\u5C14 MV\u5408\u96C6",v:"4K\u963F\u9EDB\u5C14 MV\u5408\u96C6"},{n:"4K LadyGaga MV\u5408\u96C6",v:"4K LadyGaga MV\u5408\u96C6"},{n:"4K\u5E03\u5170\u59AE MV\u5408\u96C6",v:"4K\u5E03\u5170\u59AE MV\u5408\u96C6"},{n:"4K\u6D1B\u5929\u4F9D MV\u5408\u96C6",v:"4K\u6D1B\u5929\u4F9D MV\u5408\u96C6"},{n:"4K\u521D\u97F3\u672A\u6765 MV\u5408\u96C6",v:"4K\u521D\u97F3\u672A\u6765 MV\u5408\u96C6"}]},{key:"tidx",name:"\u5206\u7C7B",value:[{n:"4K\u7537\u661F MV\u5408\u96C6",v:"4K\u7537\u661F MV\u5408\u96C6"},{n:"4K\u5468\u6770\u4F26 MV\u5408\u96C6",v:"4K\u5468\u6770\u4F26 MV\u5408\u96C6"},{n:"4K\u9648\u5955\u8FC5 MV\u5408\u96C6",v:"4K\u9648\u5955\u8FC5 MV\u5408\u96C6"},{n:"4K\u5218\u5FB7\u534E MV\u5408\u96C6",v:"4K\u5218\u5FB7\u534E MV\u5408\u96C6"},{n:"4K\u90ED\u5BCC\u57CE MV\u5408\u96C6",v:"4K\u90ED\u5BCC\u57CE MV\u5408\u96C6"},{n:"4K\u5F20\u5B66\u53CB MV\u5408\u96C6",v:"4K\u5F20\u5B66\u53CB MV\u5408\u96C6"},{n:"4K\u9ECE\u660E MV\u5408\u96C6",v:"4K\u9ECE\u660E MV\u5408\u96C6"},{n:"4K\u674E\u5B97\u76DB MV\u5408\u96C6",v:"4K\u674E\u5B97\u76DB MV\u5408\u96C6"},{n:"4K\u6734\u6811 MV\u5408\u96C6",v:"4K\u6734\u6811 MV\u5408\u96C6"},{n:"4K\u6797\u5B50\u7965 MV\u5408\u96C6",v:"4K\u6797\u5B50\u7965 MV\u5408\u96C6"},{n:"4K\u4EFB\u8D24\u9F50 MV\u5408\u96C6",v:"4K\u4EFB\u8D24\u9F50 MV\u5408\u96C6"},{n:"4K\u5F20\u4FE1\u54F2 MV\u5408\u96C6",v:"4K\u5F20\u4FE1\u54F2 MV\u5408\u96C6"},{n:"4K\u5B59\u6960 MV\u5408\u96C6",v:"4K\u5B59\u6960 MV\u5408\u96C6"},{n:"4K\u5F20\u5B87 MV\u5408\u96C6",v:"4K\u5F20\u5B87 MV\u5408\u96C6"},{n:"4K\u5468\u534E\u5065 MV\u5408\u96C6",v:"4K\u5468\u534E\u5065 MV\u5408\u96C6"},{n:"4K\u859B\u4E4B\u8C26 MV\u5408\u96C6",v:"4K\u859B\u4E4B\u8C26 MV\u5408\u96C6"},{n:"4K\u8BB8\u5D69 MV\u5408\u96C6",v:"4K\u8BB8\u5D69 MV\u5408\u96C6"},{n:"4K\u5468\u6DF1 MV\u5408\u96C6",v:"4K\u5468\u6DF1 MV\u5408\u96C6"},{n:"4K\u6BDB\u4E0D\u6613 MV\u5408\u96C6",v:"4K\u6BDB\u4E0D\u6613 MV\u5408\u96C6"},{n:"4K\u6C6A\u82CF\u6CF7 MV\u5408\u96C6",v:"4K\u6C6A\u82CF\u6CF7 MV\u5408\u96C6"},{n:"4K\u6768\u5B97\u7EAC MV\u5408\u96C6",v:"4K\u6768\u5B97\u7EAC MV\u5408\u96C6"},{n:"4K\u80E1\u5F66\u658C MV\u5408\u96C6",v:"4K\u80E1\u5F66\u658C MV\u5408\u96C6"},{n:"4K\u674E\u8363\u6D69 MV\u5408\u96C6",v:"4K\u674E\u8363\u6D69 MV\u5408\u96C6"},{n:"4K\u6797\u5FD7\u70AB MV\u5408\u96C6",v:"4K\u6797\u5FD7\u70AB MV\u5408\u96C6"},{n:"4K\u9676\u5586 MV\u5408\u96C6",v:"4K\u9676\u5586 MV\u5408\u96C6"},{n:"4K\u80E1\u590F MV\u5408\u96C6",v:"4K\u80E1\u590F MV\u5408\u96C6"},{n:"4K\u674E\u7389\u521A MV\u5408\u96C6",v:"4K\u674E\u7389\u521A MV\u5408\u96C6"},{n:"4K\u5F26\u5B50 MV\u5408\u96C6",v:"4K\u5F26\u5B50 MV\u5408\u96C6"},{n:"4K\u9648\u5C0F\u6625 MV\u5408\u96C6",v:"4K\u9648\u5C0F\u6625 MV\u5408\u96C6"},{n:"4K\u9E7F\u6657 MV\u5408\u96C6",v:"4K\u9E7F\u6657 MV\u5408\u96C6"},{n:"4K\u8BB8\u5DCD MV\u5408\u96C6",v:"4K\u8BB8\u5DCD MV\u5408\u96C6"},{n:"4K\u6797\u4FCA\u6770 MV\u5408\u96C6",v:"4K\u6797\u4FCA\u6770 MV\u5408\u96C6"},{n:"4K\u8D75\u96F7 MV\u5408\u96C6",v:"4K\u8D75\u96F7 MV\u5408\u96C6"},{n:"4K\u8C2D\u548F\u9E9F MV\u5408\u96C6",v:"4K\u8C2D\u548F\u9E9F MV\u5408\u96C6"},{n:"4K\u5468\u4F20\u96C4 MV\u5408\u96C6",v:"4K\u5468\u4F20\u96C4 MV\u5408\u96C6"},{n:"4K\u5F20\u56FD\u8363 MV\u5408\u96C6",v:"4K\u5F20\u56FD\u8363 MV\u5408\u96C6"},{n:"4K\u674E\u5065 MV\u5408\u96C6",v:"4K\u674E\u5065 MV\u5408\u96C6"},{n:"4K\u534E\u6668\u5B87 MV\u5408\u96C6",v:"4K\u534E\u6668\u5B87 MV\u5408\u96C6"},{n:"4K\u5927\u5F20\u4F1F MV\u5408\u96C6",v:"4K\u5927\u5F20\u4F1F MV\u5408\u96C6"},{n:"4K\u738B\u4FCA\u51EF MV\u5408\u96C6",v:"4K\u738B\u4FCA\u51EF MV\u5408\u96C6"},{n:"4K\u6613\u70CA\u5343\u73BA MV\u5408\u96C6",v:"4K\u6613\u70CA\u5343\u73BA MV\u5408\u96C6"},{n:"4K\u738B\u6E90 MV\u5408\u96C6",v:"4K\u738B\u6E90 MV\u5408\u96C6"},{n:"4K\u7530\u99A5\u7504 MV\u5408\u96C6",v:"4K\u7530\u99A5\u7504 MV\u5408\u96C6"},{n:"4K\u5C0F\u864E\u961F MV\u5408\u96C6",v:"4K\u5C0F\u864E\u961F MV\u5408\u96C6"},{n:"4K\u5F20\u6770 MV\u5408\u96C6",v:"4K\u5F20\u6770 MV\u5408\u96C6"},{n:"4K\u4F0D\u4F70 MV\u5408\u96C6",v:"4K\u4F0D\u4F70 MV\u5408\u96C6"},{n:"4K\u5200\u90CE MV\u5408\u96C6",v:"4K\u5200\u90CE MV\u5408\u96C6"},{n:"4K\u6F58\u73AE\u67CF MV\u5408\u96C6",v:"4K\u6F58\u73AE\u67CF MV\u5408\u96C6"},{n:"4K\u6797\u5BA5\u5609 MV\u5408\u96C6",v:"4K\u6797\u5BA5\u5609 MV\u5408\u96C6"},{n:"4K\u8521\u5F90\u5764 MV\u5408\u96C6",v:"4K\u8521\u5F90\u5764 MV\u5408\u96C6"},{n:"4K\u674E\u5723\u6770 MV\u5408\u96C6",v:"4K\u674E\u5723\u6770 MV\u5408\u96C6"},{n:"4K\u8427\u656C\u817E MV\u5408\u96C6",v:"4K\u8427\u656C\u817E MV\u5408\u96C6"},{n:"4K\u7126\u8FC8\u5947 MV\u5408\u96C6",v:"4K\u7126\u8FC8\u5947 MV\u5408\u96C6"},{n:"4K\u5C24\u957F\u9756 MV\u5408\u96C6",v:"4K\u5C24\u957F\u9756 MV\u5408\u96C6"},{n:"4K\u90D1\u4E2D\u57FA MV\u5408\u96C6",v:"4K\u90D1\u4E2D\u57FA MV\u5408\u96C6"},{n:"4K\u5F20\u827A\u5174 MV\u5408\u96C6",v:"4K\u5F20\u827A\u5174 MV\u5408\u96C6"},{n:"4K\u738B\u5609\u5C14 MV\u5408\u96C6",v:"4K\u738B\u5609\u5C14 MV\u5408\u96C6"},{n:"4K\u5218\u5BAA\u534E MV\u5408\u96C6",v:"4K\u5218\u5BAA\u534E MV\u5408\u96C6"},{n:"4K\u5F20\u656C\u8F69 MV\u5408\u96C6",v:"4K\u5F20\u656C\u8F69 MV\u5408\u96C6"},{n:"4K\u674E\u514B\u52E4 MV\u5408\u96C6",v:"4K\u674E\u514B\u52E4 MV\u5408\u96C6"},{n:"4K\u963F\u675C MV\u5408\u96C6",v:"4K\u963F\u675C MV\u5408\u96C6"},{n:"4K\u5D14\u5065 MV\u5408\u96C6",v:"4K\u5D14\u5065 MV\u5408\u96C6"},{n:"4K\u5EBE\u6F84\u5E86 MV\u5408\u96C6",v:"4K\u5EBE\u6F84\u5E86 MV\u5408\u96C6"},{n:"4K\u6C6A\u5CF0 MV\u5408\u96C6",v:"4K\u6C6A\u5CF0 MV\u5408\u96C6"},{n:"4K\u6768\u5764 MV\u5408\u96C6",v:"4K\u6768\u5764 MV\u5408\u96C6"},{n:"4K\u5F20\u9707\u5CB3 MV\u5408\u96C6",v:"4K\u5F20\u9707\u5CB3 MV\u5408\u96C6"},{n:"4K\u9F50\u79E6 MV\u5408\u96C6",v:"4K\u9F50\u79E6 MV\u5408\u96C6"},{n:"4K\u5F20\u96E8\u751F MV\u5408\u96C6",v:"4K\u5F20\u96E8\u751F MV\u5408\u96C6"},{n:"4K\u9EC4\u54C1\u6E90 MV\u5408\u96C6",v:"4K\u9EC4\u54C1\u6E90 MV\u5408\u96C6"},{n:"4K\u4E01\u5F53 MV\u5408\u96C6",v:"4K\u4E01\u5F53 MV\u5408\u96C6"},{n:"4K\u90D1\u667A\u5316 MV\u5408\u96C6",v:"4K\u90D1\u667A\u5316 MV\u5408\u96C6"},{n:"4K\u8C22\u9706\u950B MV\u5408\u96C6",v:"4K\u8C22\u9706\u950B MV\u5408\u96C6"},{n:"4K\u9EC4\u5C0F\u7425 MV\u5408\u96C6",v:"4K\u9EC4\u5C0F\u7425 MV\u5408\u96C6"},{n:"4K\u4EFB\u5609\u4F26 MV\u5408\u96C6",v:"4K\u4EFB\u5609\u4F26 MV\u5408\u96C6"},{n:"4K\u5B8B\u4E9A\u68EE MV\u5408\u96C6",v:"4K\u5B8B\u4E9A\u68EE MV\u5408\u96C6"},{n:"4K\u8D39\u7389\u6E05 MV\u5408\u96C6",v:"4K\u8D39\u7389\u6E05 MV\u5408\u96C6"},{n:"4K\u8D39\u7FD4 MV\u5408\u96C6",v:"4K\u8D39\u7FD4 MV\u5408\u96C6"},{n:"4K\u91D1\u5FD7\u6587 MV\u5408\u96C6",v:"4K\u91D1\u5FD7\u6587 MV\u5408\u96C6"},{n:"4K\u9EC4\u5BB6\u5F3A MV\u5408\u96C6",v:"4K\u9EC4\u5BB6\u5F3A MV\u5408\u96C6"},{n:"4K\u65B9\u5927\u540C MV\u5408\u96C6",v:"4K\u65B9\u5927\u540C MV\u5408\u96C6"},{n:"4K\u5434\u514B\u7FA4 MV\u5408\u96C6",v:"4K\u5434\u514B\u7FA4 MV\u5408\u96C6"},{n:"4K\u7F57\u5927\u4F51 MV\u5408\u96C6",v:"4K\u7F57\u5927\u4F51 MV\u5408\u96C6"},{n:"4K\u5149\u826F MV\u5408\u96C6",v:"4K\u5149\u826F MV\u5408\u96C6"},{n:"4K\u738B\u6770 MV\u5408\u96C6",v:"4K\u738B\u6770 MV\u5408\u96C6"},{n:"4K\u91D1\u6C60 MV\u5408\u96C6",v:"4K\u91D1\u6C60 MV\u5408\u96C6"},{n:"4K\u5C60\u6D2A\u521A MV\u5408\u96C6",v:"4K\u5C60\u6D2A\u521A MV\u5408\u96C6"},{n:"4K\u6234\u8343 MV\u5408\u96C6",v:"4K\u6234\u8343 MV\u5408\u96C6"},{n:"4K\u7F57\u5FD7\u7965 MV\u5408\u96C6",v:"4K\u7F57\u5FD7\u7965 MV\u5408\u96C6"},{n:"4K\u738B\u529B\u5B8F MV\u5408\u96C6",v:"4K\u738B\u529B\u5B8F MV\u5408\u96C6"},{n:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6",v:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A MV\u5408\u96C6"},{n:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6",v:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279 MV\u5408\u96C6"},{n:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6",v:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F MV\u5408\u96C6"}]},{key:"tidy",name:"\u8BED\u79CD",value:[{n:"4K\u534E\u8BED MV\u5408\u96C6",v:"4K\u534E\u8BED MV\u5408\u96C6"},{n:"4K\u6B27\u7F8E MV\u5408\u96C6",v:"4K\u6B27\u7F8E MV\u5408\u96C6"},{n:"4K\u65E5\u8BED MV\u5408\u96C6",v:"4K\u65E5\u8BED MV\u5408\u96C6"},{n:"4K\u97E9\u8BED MV\u5408\u96C6",v:"4K\u97E9\u8BED MV\u5408\u96C6"},{n:"4K\u56FD\u8BED MV\u5408\u96C6",v:"4K\u56FD\u8BED MV\u5408\u96C6"},{n:"4K\u7CA4\u8BED MV\u5408\u96C6",v:"4K\u7CA4\u8BED MV\u5408\u96C6"},{n:"4K\u95FD\u5357\u8BED MV\u5408\u96C6",v:"4K\u95FD\u5357\u8BED MV\u5408\u96C6"},{n:"4K\u4E1C\u5357\u4E9A MV\u5408\u96C6",v:"4K\u4E1C\u5357\u4E9A MV\u5408\u96C6"},{n:"4K\u82F1\u8BED MV\u5408\u96C6",v:"4K\u82F1\u8BED MV\u5408\u96C6"},{n:"4K\u4FC4\u8BED MV\u5408\u96C6",v:"4K\u4FC4\u8BED MV\u5408\u96C6"},{n:"4K\u5370\u5EA6 MV\u5408\u96C6",v:"4K\u5370\u5EA6 MV\u5408\u96C6"},{n:"4K\u81EA\u5236 MV\u5408\u96C6",v:"4K\u81EA\u5236 MV\u5408\u96C6"}]},{key:"tidd",name:"\u4E50\u961F\u7EC4\u5408",value:[{n:"4K\u4E50\u961F MV\u5408\u96C6",v:"4K\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u7EC4\u5408 MV\u5408\u96C6",v:"4K\u7EC4\u5408 MV\u5408\u96C6"},{n:"4K Beyond MV\u5408\u96C6",v:"4K Beyond MV\u5408\u96C6"},{n:"4K\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6",v:"4K\u51E4\u51F0\u4F20\u5947 MV\u5408\u96C6"},{n:"4K\u7EB5\u8D2F\u7EBF MV\u5408\u96C6",v:"4K\u7EB5\u8D2F\u7EBF MV\u5408\u96C6"},{n:"4K\u82CF\u6253\u7EFF MV\u5408\u96C6",v:"4K\u82CF\u6253\u7EFF MV\u5408\u96C6"},{n:"4K\u4E94\u6708\u5929 MV\u5408\u96C6",v:"4K\u4E94\u6708\u5929 MV\u5408\u96C6"},{n:"4K TFBOYS MV\u5408\u96C6",v:"4K TFBOYS MV\u5408\u96C6"},{n:"4K\u7FBD\u6CC9 MV\u5408\u96C6",v:"4K\u7FBD\u6CC9 MV\u5408\u96C6"},{n:"4K\u8349\u8722 MV\u5408\u96C6",v:"4K\u8349\u8722 MV\u5408\u96C6"},{n:"4K\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6",v:"4K\u9003\u8DD1\u8BA1\u5212 MV\u5408\u96C6"},{n:"4K\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6",v:"4K\u9752\u9E1F\u98DE\u9C7C MV\u5408\u96C6"},{n:"4K\u98DE\u513F\u4E50\u961F MV\u5408\u96C6",v:"4K\u98DE\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u82B1\u513F\u4E50\u961F MV\u5408\u96C6",v:"4K\u82B1\u513F\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u5357\u62F3\u5988\u5988 MV\u5408\u96C6",v:"4K\u5357\u62F3\u5988\u5988 MV\u5408\u96C6"},{n:"4K\u6C34\u6728\u5E74\u534E MV\u5408\u96C6",v:"4K\u6C34\u6728\u5E74\u534E MV\u5408\u96C6"},{n:"4K\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6",v:"4K\u52A8\u529B\u706B\u8F66 MV\u5408\u96C6"},{n:"4K\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6",v:"4K\u7B77\u5B50\u5144\u5F1F MV\u5408\u96C6"},{n:"4K\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6",v:"4K\u9E7F\u5148\u68EE\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u4FE1\u4E50\u961F MV\u5408\u96C6",v:"4K\u4FE1\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6",v:"4K\u65C5\u884C\u56E2\u4E50\u961F MV\u5408\u96C6"},{n:"4K\u6797\u80AF\u516C\u56ED MV\u5408\u96C6",v:"4K\u6797\u80AF\u516C\u56ED MV\u5408\u96C6"},{n:"4K BIGBANG MV\u5408\u96C6",v:"4K BIGBANG MV\u5408\u96C6"},{n:"4K\u540E\u8857\u7537\u5B69 MV\u5408\u96C6",v:"4K\u540E\u8857\u7537\u5B69 MV\u5408\u96C6"},{n:"4K\u591C\u613F\u4E50\u961F MV\u5408\u96C6",v:"4K\u591C\u613F\u4E50\u961F MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5973\u56E2:[{key:"tidt",name:"\u5206\u7C7B",value:[{n:"\u5973\u56E2",v:"\u5973\u56E2"},{n:"\u5973\u56E2\u5408\u96C6",v:"\u5973\u56E2\u5408\u96C6"}]},{key:"tidz",name:"\u5206\u7C7B",value:[{n:"\u4E2D\u56FD\u5973\u56E2",v:"\u4E2D\u56FD\u5973\u56E2"},{n:"\u4E2D\u56FD\u5973\u56E2\u5408\u96C6",v:"\u4E2D\u56FD\u5973\u56E2\u5408\u96C6"},{n:"SNH48 MV\u5408\u96C6",v:"SNH48 MV\u5408\u96C6"},{n:"S.H.E MV\u5408\u96C6",v:"S.H.E MV\u5408\u96C6"},{n:"Twins MV\u5408\u96C6",v:"Twins MV\u5408\u96C6"},{n:"\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6",v:"\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6"},{n:"BY2 MV\u5408\u96C6",v:"BY2 MV\u5408\u96C6"},{n:"S.I.N.G MV\u5408\u96C6",v:"S.I.N.G MV\u5408\u96C6"},{n:"3unshine MV\u5408\u96C6",v:"3unshine MV\u5408\u96C6"},{n:"\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6",v:"\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6"},{n:"\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6",v:"\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6"},{n:"GNZ48 MV\u5408\u96C6",v:"GNZ48 MV\u5408\u96C6"}]},{key:"tidh",name:"\u5206\u7C7B",value:[{n:"\u97E9\u56FD\u5973\u56E2",v:"\u97E9\u56FD\u5973\u56E2"},{n:"\u97E9\u56FD\u5973\u56E2\u5408\u96C6",v:"\u97E9\u56FD\u5973\u56E2\u5408\u96C6"},{n:"TWICE MV\u5408\u96C6",v:"TWICE MV\u5408\u96C6"},{n:"4MINUTE MV\u5408\u96C6",v:"4MINUTE MV\u5408\u96C6"},{n:"EXID MV\u5408\u96C6",v:"EXID MV\u5408\u96C6"},{n:"KARA MV\u5408\u96C6",v:"KARA MV\u5408\u96C6"},{n:"TARA MV\u5408\u96C6",v:"TARA MV\u5408\u96C6"},{n:"BLACKPINK MV\u5408\u96C6",v:"BLACKPINK MV\u5408\u96C6"},{n:"LOONA MV\u5408\u96C6",v:"LOONA MV\u5408\u96C6"},{n:"ITZY MV\u5408\u96C6",v:"ITZY MV\u5408\u96C6"},{n:"RedVelvet MV\u5408\u96C6",v:"RedVelvet MV\u5408\u96C6"},{n:"Everglow MV\u5408\u96C6",v:"Everglow MV\u5408\u96C6"},{n:"Mamamoo MV\u5408\u96C6",v:"Mamamoo MV\u5408\u96C6"},{n:"\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6",v:"\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6"},{n:"S.E.S MV\u5408\u96C6",v:"S.E.S MV\u5408\u96C6"},{n:"FIN.K.L MV\u5408\u96C6",v:"FIN.K.L MV\u5408\u96C6"},{n:"2NE1 MV\u5408\u96C6",v:"2NE1 MV\u5408\u96C6"},{n:"WonderGirls MV\u5408\u96C6",v:"WonderGirls MV\u5408\u96C6"},{n:"IZ*ONE MV\u5408\u96C6",v:"IZ*ONE MV\u5408\u96C6"},{n:"Sistar MV\u5408\u96C6",v:"Sistar MV\u5408\u96C6"},{n:"Apink MV\u5408\u96C6",v:"Apink MV\u5408\u96C6"},{n:"AOA MV\u5408\u96C6",v:"AOA MV\u5408\u96C6"},{n:"GFRIEND MV\u5408\u96C6",v:"GFRIEND MV\u5408\u96C6"},{n:"f(x) MV\u5408\u96C6",v:"f(x) MV\u5408\u96C6"},{n:"(G)I-DLE MV\u5408\u96C6",v:"(G)I-DLE MV\u5408\u96C6"},{n:"Itzy MV\u5408\u96C6",v:"Itzy MV\u5408\u96C6"},{n:"Oh!GG MV\u5408\u96C6",v:"Oh!GG MV\u5408\u96C6"},{n:"GirlCrush MV\u5408\u96C6",v:"GirlCrush MV\u5408\u96C6"}]},{key:"tidr",name:"\u5206\u7C7B",value:[{n:"\u65E5\u672C\u5973\u56E2",v:"\u65E5\u672C\u5973\u56E2"},{n:"\u65E5\u672C\u5973\u56E2\u5408\u96C6",v:"\u65E5\u672C\u5973\u56E2\u5408\u96C6"},{n:"AKB48 MV\u5408\u96C6",v:"AKB48 MV\u5408\u96C6"},{n:"SKE48 MV\u5408\u96C6",v:"SKE48 MV\u5408\u96C6"},{n:"NMB48 MV\u5408\u96C6",v:"NMB48 MV\u5408\u96C6"},{n:"JKT48 MV\u5408\u96C6",v:"JKT48 MV\u5408\u96C6"},{n:"HKT48 MV\u5408\u96C6",v:"HKT48 MV\u5408\u96C6"},{n:"AKB48TeamTP MV\u5408\u96C6",v:"AKB48TeamTP MV\u5408\u96C6"},{n:"Perfume MV\u5408\u96C6",v:"Perfume MV\u5408\u96C6"},{n:"\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6",v:"\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6"},{n:"\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6",v:"\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6"},{n:"\u6A31\u574246 MV\u5408\u96C6",v:"\u6A31\u574246 MV\u5408\u96C6"},{n:"\u65E5\u5411\u574246 MV\u5408\u96C6",v:"\u65E5\u5411\u574246 MV\u5408\u96C6"},{n:"E-girls MV\u5408\u96C6",v:"E-girls MV\u5408\u96C6"},{n:"NiziU MV\u5408\u96C6",v:"NiziU MV\u5408\u96C6"},{n:"BiSH MV\u5408\u96C6",v:"BiSH MV\u5408\u96C6"},{n:"\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6",v:"\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6"}]},{key:"tidn",name:"\u5206\u7C7B",value:[{n:"4K\u5973\u56E2",v:"4K\u5973\u56E2"}]},{key:"tidg",name:"\u5206\u7C7B",value:[{n:"4K\u4E2D\u56FD\u5973\u56E2",v:"4K\u4E2D\u56FD\u5973\u56E2"},{n:"4K\u4E2D\u56FD\u5973\u56E2\u5408\u96C6",v:"4K\u4E2D\u56FD\u5973\u56E2\u5408\u96C6"},{n:"4K SNH48 MV\u5408\u96C6",v:"4K SNH48 MV\u5408\u96C6"},{n:"4K S.H.E MV\u5408\u96C6",v:"4K S.H.E MV\u5408\u96C6"},{n:"4K Twins MV\u5408\u96C6",v:"4K Twins MV\u5408\u96C6"},{n:"4K\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6",v:"4K\u706B\u7BAD\u5C11\u5973101 MV\u5408\u96C6"},{n:"4K BY2 MV\u5408\u96C6",v:"4K BY2 MV\u5408\u96C6"},{n:"4K S.I.N.G MV\u5408\u96C6",v:"4K S.I.N.G MV\u5408\u96C6"},{n:"4K 3unshine MV\u5408\u96C6",v:"4K 3unshine MV\u5408\u96C6"},{n:"4K\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6",v:"4K\u871C\u8702\u5C11\u5973\u961F MV\u5408\u96C6"},{n:"4K\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6",v:"4K\u4E03\u6735\u7EC4\u5408 MV\u5408\u96C6"},{n:"4K GNZ48 MV\u5408\u96C6",v:"4K GNZ48 MV\u5408\u96C6"}]},{key:"tidk",name:"\u5206\u7C7B",value:[{n:"4K\u97E9\u56FD\u5973\u56E2",v:"4K\u97E9\u56FD\u5973\u56E2"},{n:"4K\u97E9\u56FD\u5973\u56E2\u5408\u96C6",v:"4K\u97E9\u56FD\u5973\u56E2\u5408\u96C6"},{n:"4K TWICE MV\u5408\u96C6",v:"4K TWICE MV\u5408\u96C6"},{n:"4K 4MINUTE MV\u5408\u96C6",v:"4K 4MINUTE MV\u5408\u96C6"},{n:"4K EXID MV\u5408\u96C6",v:"4K EXID MV\u5408\u96C6"},{n:"4K KARA MV\u5408\u96C6",v:"4K KARA MV\u5408\u96C6"},{n:"4K TARA MV\u5408\u96C6",v:"4K TARA MV\u5408\u96C6"},{n:"4K BLACKPINK MV\u5408\u96C6",v:"4K BLACKPINK MV\u5408\u96C6"},{n:"4K LOONA MV\u5408\u96C6",v:"4K LOONA MV\u5408\u96C6"},{n:"4K ITZY MV\u5408\u96C6",v:"4K ITZY MV\u5408\u96C6"},{n:"4K RedVelvet MV\u5408\u96C6",v:"4K RedVelvet MV\u5408\u96C6"},{n:"4K Everglow MV\u5408\u96C6",v:"4K Everglow MV\u5408\u96C6"},{n:"4K Mamamoo MV\u5408\u96C6",v:"4K Mamamoo MV\u5408\u96C6"},{n:"4K\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6",v:"4K\u5C11\u5973\u65F6\u4EE3 MV\u5408\u96C6"},{n:"4K S.E.S MV\u5408\u96C6",v:"4K S.E.S MV\u5408\u96C6"},{n:"4K FIN.K.L MV\u5408\u96C6",v:"4K FIN.K.L MV\u5408\u96C6"},{n:"4K 2NE1 MV\u5408\u96C6",v:"4K 2NE1 MV\u5408\u96C6"},{n:"4K WonderGirls MV\u5408\u96C6",v:"4K WonderGirls MV\u5408\u96C6"},{n:"4K IZ*ONE MV\u5408\u96C6",v:"4K IZ*ONE MV\u5408\u96C6"},{n:"4K Sistar MV\u5408\u96C6",v:"4K Sistar MV\u5408\u96C6"},{n:"4K Apink MV\u5408\u96C6",v:"4K Apink MV\u5408\u96C6"},{n:"4K AOA MV\u5408\u96C6",v:"4K AOA MV\u5408\u96C6"},{n:"4K GFRIEND MV\u5408\u96C6",v:"4K GFRIEND MV\u5408\u96C6"},{n:"4K f(x) MV\u5408\u96C6",v:"4K f(x) MV\u5408\u96C6"},{n:"4K (G)I-DLE MV\u5408\u96C6",v:"4K (G)I-DLE MV\u5408\u96C6"},{n:"4K Itzy MV\u5408\u96C6",v:"4K Itzy MV\u5408\u96C6"},{n:"4K Oh!GG MV\u5408\u96C6",v:"4K Oh!GG MV\u5408\u96C6"},{n:"4K GirlCrush MV\u5408\u96C6",v:"4K GirlCrush MV\u5408\u96C6"}]},{key:"tida",name:"\u5206\u7C7B",value:[{n:"4K\u65E5\u672C\u5973\u56E2",v:"4K\u65E5\u672C\u5973\u56E2"},{n:"4K\u65E5\u672C\u5973\u56E2\u5408\u96C6",v:"4K\u65E5\u672C\u5973\u56E2\u5408\u96C6"},{n:"4K AKB48 MV\u5408\u96C6",v:"4K AKB48 MV\u5408\u96C6"},{n:"4K SKE48 MV\u5408\u96C6",v:"4K SKE48 MV\u5408\u96C6"},{n:"4K NMB48 MV\u5408\u96C6",v:"4K NMB48 MV\u5408\u96C6"},{n:"4K JKT48 MV\u5408\u96C6",v:"4K JKT48 MV\u5408\u96C6"},{n:"4K HKT48 MV\u5408\u96C6",v:"4K HKT48 MV\u5408\u96C6"},{n:"4K AKB48 TeamTP MV\u5408\u96C6",v:"4K AKB48 TeamTP MV\u5408\u96C6"},{n:"4K Perfume MV\u5408\u96C6",v:"4K Perfume MV\u5408\u96C6"},{n:"4K\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6",v:"4K\u6843\u8272\u5E78\u8FD0\u8349Z MV\u5408\u96C6"},{n:"4K\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6",v:"4K\u4E43\u6728\u574246\u4E43 MV\u5408\u96C6"},{n:"4K\u6A31\u574246 MV\u5408\u96C6",v:"4K\u6A31\u574246 MV\u5408\u96C6"},{n:"4K\u65E5\u5411\u574246 MV\u5408\u96C6",v:"4K\u65E5\u5411\u574246 MV\u5408\u96C6"},{n:"4K E-girls MV\u5408\u96C6",v:"4K E-girls MV\u5408\u96C6"},{n:"4K NiziU MV\u5408\u96C6",v:"4K NiziU MV\u5408\u96C6"},{n:"4K BiSH MV\u5408\u96C6",v:"4K BiSH MV\u5408\u96C6"},{n:"4K\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6",v:"4K\u65E9\u5B89\u5C11\u5973\u7EC4 MV\u5408\u96C6"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u5F71\u89C6MV:[{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u76F8\u58F0\u5C0F\u54C1:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u76F8\u58F0\u5C0F\u54C1",v:"\u76F8\u58F0\u5C0F\u54C1"},{n:"\u5355\u53E3\u76F8\u58F0",v:"\u5355\u53E3\u76F8\u58F0"},{n:"\u7FA4\u53E3\u76F8\u58F0",v:"\u7FA4\u53E3\u76F8\u58F0"},{n:"\u5FB7\u4E91\u793E",v:"\u5FB7\u4E91\u793E"},{n:"\u9752\u66F2\u793E",v:"\u9752\u66F2\u793E"},{n:"\u90ED\u5FB7\u7EB2",v:"\u90ED\u5FB7\u7EB2"},{n:"\u5CB3\u4E91\u9E4F",v:"\u5CB3\u4E91\u9E4F"},{n:"\u66F9\u4E91\u91D1",v:"\u66F9\u4E91\u91D1"},{n:"\u8BC4\u4E66",v:"\u8BC4\u4E66"},{n:"\u5C0F\u66F2",v:"\u5C0F\u66F2"},{n:"\u4E8C\u4EBA\u8F6C",v:"\u4E8C\u4EBA\u8F6C"},{n:"\u6625\u665A\u5C0F\u54C1",v:"\u6625\u665A\u5C0F\u54C1"},{n:"\u8D75\u672C\u5C71",v:"\u8D75\u672C\u5C71"},{n:"\u9648\u4F69\u65AF",v:"\u9648\u4F69\u65AF"},{n:"\u51AF\u5DE9",v:"\u51AF\u5DE9"},{n:"\u5B8B\u5C0F\u5B9D",v:"\u5B8B\u5C0F\u5B9D"},{n:"\u8D75\u4E3D\u84C9",v:"\u8D75\u4E3D\u84C9"},{n:"\u90ED\u8FBE",v:"\u90ED\u8FBE"},{n:"\u6F58\u957F\u6C5F",v:"\u6F58\u957F\u6C5F"},{n:"\u90ED\u51AC\u4E34",v:"\u90ED\u51AC\u4E34"},{n:"\u4E25\u987A\u5F00",v:"\u4E25\u987A\u5F00"},{n:"\u6587\u677E",v:"\u6587\u677E"},{n:"\u5F00\u5FC3\u9EBB\u82B1",v:"\u5F00\u5FC3\u9EBB\u82B1"},{n:"\u5C4C\u4E1D\u7537\u58EB",v:"\u5C4C\u4E1D\u7537\u58EB"},{n:"\u559C\u5267\u7EFC\u827A",v:"\u559C\u5267\u7EFC\u827A"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u76F8\u58F0\u5C0F\u54C1",v:"4K\u76F8\u58F0\u5C0F\u54C1"},{n:"4K\u5355\u53E3\u76F8\u58F0",v:"4K\u5355\u53E3\u76F8\u58F0"},{n:"4K\u7FA4\u53E3\u76F8\u58F0",v:"4K\u7FA4\u53E3\u76F8\u58F0"},{n:"4K\u5FB7\u4E91\u793E",v:"4K\u5FB7\u4E91\u793E"},{n:"4K\u9752\u66F2\u793E",v:"4K\u9752\u66F2\u793E"},{n:"4K\u90ED\u5FB7\u7EB2",v:"4K\u90ED\u5FB7\u7EB2"},{n:"4K\u5CB3\u4E91\u9E4F",v:"4K\u5CB3\u4E91\u9E4F"},{n:"4K\u66F9\u4E91\u91D1",v:"4K\u66F9\u4E91\u91D1"},{n:"4K\u8BC4\u4E66",v:"4K\u8BC4\u4E66"},{n:"4K\u5C0F\u66F2",v:"4K\u5C0F\u66F2"},{n:"4K\u4E8C\u4EBA\u8F6C",v:"4K\u4E8C\u4EBA\u8F6C"},{n:"4K\u6625\u665A\u5C0F\u54C1",v:"4K\u6625\u665A\u5C0F\u54C1"},{n:"4K\u8D75\u672C\u5C71",v:"4K\u8D75\u672C\u5C71"},{n:"4K\u9648\u4F69\u65AF",v:"4K\u9648\u4F69\u65AF"},{n:"4K\u51AF\u5DE9",v:"4K\u51AF\u5DE9"},{n:"4K\u5B8B\u5C0F\u5B9D",v:"4K\u5B8B\u5C0F\u5B9D"},{n:"4K\u8D75\u4E3D\u84C9",v:"4K\u8D75\u4E3D\u84C9"},{n:"4K\u90ED\u8FBE",v:"4K\u90ED\u8FBE"},{n:"4K\u6F58\u957F\u6C5F",v:"4K\u6F58\u957F\u6C5F"},{n:"4K\u90ED\u51AC\u4E34",v:"4K\u90ED\u51AC\u4E34"},{n:"4K\u4E25\u987A\u5F00",v:"4K\u4E25\u987A\u5F00"},{n:"4K\u6587\u677E",v:"4K\u6587\u677E"},{n:"4K\u5F00\u5FC3\u9EBB\u82B1",v:"4K\u5F00\u5FC3\u9EBB\u82B1"},{n:"4K\u5C4C\u4E1D\u7537\u58EB",v:"4K\u5C4C\u4E1D\u7537\u58EB"},{n:"4K\u559C\u5267\u7EFC\u827A",v:"4K\u559C\u5267\u7EFC\u827A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u513F\u7AE5\u5C11\u513F:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u513F\u7AE5\u6559\u80B2",v:"\u513F\u7AE5\u6559\u80B2"},{n:"\u513F\u7AE5\u6B4C\u66F2",v:"\u513F\u7AE5\u6B4C\u66F2"},{n:"\u513F\u7AE5\u821E\u8E48",v:"\u513F\u7AE5\u821E\u8E48"},{n:"\u513F\u7AE5\u6210\u8BED\u6545\u4E8B",v:"\u513F\u7AE5\u6210\u8BED\u6545\u4E8B"},{n:"\u513F\u7AE5\u97F3\u4E50",v:"\u513F\u7AE5\u97F3\u4E50"},{n:"\u513F\u7AE5 MV",v:"\u513F\u7AE5 MV"},{n:"\u8D1D\u4E50\u864E",v:"\u8D1D\u4E50\u864E"},{n:"\u5B9D\u5B9D\u5DF4\u58EB",v:"\u5B9D\u5B9D\u5DF4\u58EB"},{n:"\u513F\u6B4C\u591A\u591A",v:"\u513F\u6B4C\u591A\u591A"},{n:"\u8D85\u7EA7\u5B9D\u8D1DJOJO",v:"\u8D85\u7EA7\u5B9D\u8D1DJOJO"},{n:"\u513F\u7AE5\u597D\u58F0\u97F3",v:"\u513F\u7AE5\u597D\u58F0\u97F3"},{n:"3-6\u5C81\u76CA\u667A\u52A8\u753B",v:"3-6\u5C81\u76CA\u667A\u52A8\u753B"},{n:"6-8\u5C81\u5C11\u513F\u9891\u9053",v:"6-8\u5C81\u5C11\u513F\u9891\u9053"},{n:"\u5B66\u800C\u601D\u8BFE\u7A0B",v:"\u5B66\u800C\u601D\u8BFE\u7A0B"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u513F\u7AE5",v:"4K\u513F\u7AE5"},{n:"4K\u513F\u7AE5\u6559\u80B2",v:"4K\u513F\u7AE5\u6559\u80B2"},{n:"4K\u513F\u7AE5\u6B4C\u66F2",v:"4K\u513F\u7AE5\u6B4C\u66F2"},{n:"4K\u513F\u7AE5\u821E\u8E48",v:"4K\u513F\u7AE5\u821E\u8E48"},{n:"4K\u513F\u7AE5\u6210\u8BED\u6545\u4E8B",v:"4K\u513F\u7AE5\u6210\u8BED\u6545\u4E8B"},{n:"4K\u513F\u7AE5\u97F3\u4E50",v:"4K\u513F\u7AE5\u97F3\u4E50"},{n:"4K\u513F\u7AE5 MV",v:"4K\u513F\u7AE5 MV"},{n:"4K\u8D1D\u4E50\u864E",v:"4K\u8D1D\u4E50\u864E"},{n:"4K\u5B9D\u5B9D\u5DF4\u58EB",v:"4K\u5B9D\u5B9D\u5DF4\u58EB"},{n:"4K\u513F\u6B4C\u591A\u591A",v:"4K\u513F\u6B4C\u591A\u591A"},{n:"4K\u8D85\u7EA7\u5B9D\u8D1DJOJO",v:"4K\u8D85\u7EA7\u5B9D\u8D1DJOJO"},{n:"4K\u513F\u7AE5\u597D\u58F0\u97F3",v:"4K\u513F\u7AE5\u597D\u58F0\u97F3"},{n:"4K 3-6\u5C81\u76CA\u667A\u52A8\u753B",v:"4K 3-6\u5C81\u76CA\u667A\u52A8\u753B"},{n:"4K 6-8\u5C81\u5C11\u513F\u9891\u9053",v:"4K 6-8\u5C81\u5C11\u513F\u9891\u9053"},{n:"4K\u5B66\u800C\u601D\u8BFE\u7A0B",v:"4K\u5B66\u800C\u601D\u8BFE\u7A0B"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u52A8\u7269\u4E16\u754C:[{key:"tid",name:"\u5206\u7C7B",value:[{n:"\u52A8\u7269\u4E16\u754C",v:"\u52A8\u7269\u4E16\u754C"},{n:"4K\u52A8\u7269\u4E16\u754C",v:"4K\u52A8\u7269\u4E16\u754C"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u6F14\u5531\u4F1A:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A",v:"\u5468\u6770\u4F26\u6F14\u5531\u4F1A"},{n:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A",v:"\u9648\u5955\u8FC5\u6F14\u5531\u4F1A"},{n:"Beyond\u6F14\u5531\u4F1A",v:"Beyond\u6F14\u5531\u4F1A"},{n:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A",v:"\u5218\u5FB7\u534E\u6F14\u5531\u4F1A"},{n:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A",v:"\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A"},{n:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A",v:"\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A"},{n:"\u9ECE\u660E\u6F14\u5531\u4F1A",v:"\u9ECE\u660E\u6F14\u5531\u4F1A"},{n:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A",v:"\u674E\u5B97\u76DB\u6F14\u5531\u4F1A"},{n:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A",v:"\u9093\u4E3D\u541B\u6F14\u5531\u4F1A"},{n:"\u6734\u6811\u6F14\u5531\u4F1A",v:"\u6734\u6811\u6F14\u5531\u4F1A"},{n:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A",v:"\u6797\u5B50\u7965\u6F14\u5531\u4F1A"},{n:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A",v:"\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A"},{n:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A",v:"\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A"},{n:"\u5B59\u6960\u6F14\u5531\u4F1A",v:"\u5B59\u6960\u6F14\u5531\u4F1A"},{n:"\u5F20\u5B87\u6F14\u5531\u4F1A",v:"\u5F20\u5B87\u6F14\u5531\u4F1A"},{n:"\u5468\u534E\u5065\u6F14\u5531\u4F1A",v:"\u5468\u534E\u5065\u6F14\u5531\u4F1A"},{n:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A",v:"\u8521\u4F9D\u6797\u6F14\u5531\u4F1A"},{n:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A",v:"\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A"},{n:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A",v:"\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A"},{n:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A",v:"\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A"},{n:"\u8BB8\u5D69\u6F14\u5531\u4F1A",v:"\u8BB8\u5D69\u6F14\u5531\u4F1A"},{n:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A",v:"\u6234\u4F69\u59AE\u6F14\u5531\u4F1A"},{n:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A",v:"\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A"},{n:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A",v:"\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A"},{n:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A",v:"\u8521\u5065\u96C5\u6F14\u5531\u4F1A"},{n:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A",v:"\u83AB\u6587\u851A\u6F14\u5531\u4F1A"},{n:"\u5218\u82E5\u82F1\u6F14\u5531\u4F1A",v:"\u5218\u82E5\u82F1\u6F14\u5531\u4F1A"},{n:"\u5468\u6DF1\u6F14\u5531\u4F1A",v:"\u5468\u6DF1\u6F14\u5531\u4F1A"},{n:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A",v:"\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A"},{n:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A",v:"\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A"},{n:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A",v:"\u674E\u5B87\u6625\u6F14\u5531\u4F1A"},{n:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A",v:"\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A"},{n:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A",v:"\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A"},{n:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A",v:"\u80E1\u5F66\u658C\u6F14\u5531\u4F1A"},{n:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A",v:"\u6768\u5343\u5B05\u6F14\u5531\u4F1A"},{n:"\u5F20\u9753\u9896\u6F14\u5531\u4F1A",v:"\u5F20\u9753\u9896\u6F14\u5531\u4F1A"},{n:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A",v:"\u674E\u8363\u6D69\u6F14\u5531\u4F1A"},{n:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A",v:"\u6768\u4E1E\u7433\u6F14\u5531\u4F1A"},{n:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A",v:"\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A"},{n:"\u9676\u5586\u6F14\u5531\u4F1A",v:"\u9676\u5586\u6F14\u5531\u4F1A"},{n:"\u80E1\u590F\u6F14\u5531\u4F1A",v:"\u80E1\u590F\u6F14\u5531\u4F1A"},{n:"\u674E\u7389\u521A\u6F14\u5531\u4F1A",v:"\u674E\u7389\u521A\u6F14\u5531\u4F1A"},{n:"\u5F26\u5B50\u6F14\u5531\u4F1A",v:"\u5F26\u5B50\u6F14\u5531\u4F1A"},{n:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A",v:"\u9648\u5C0F\u6625\u6F14\u5531\u4F1A"},{n:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A",v:"\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A"},{n:"\u9E7F\u6657\u6F14\u5531\u4F1A",v:"\u9E7F\u6657\u6F14\u5531\u4F1A"},{n:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A",v:"\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A"},{n:"\u8BB8\u5DCD\u6F14\u5531\u4F1A",v:"\u8BB8\u5DCD\u6F14\u5531\u4F1A"},{n:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A",v:"\u6797\u4FCA\u6770\u6F14\u5531\u4F1A"},{n:"\u8D75\u96F7\u6F14\u5531\u4F1A",v:"\u8D75\u96F7\u6F14\u5531\u4F1A"},{n:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A",v:"\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A"},{n:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A",v:"\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A"},{n:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A",v:"\u5BB9\u7956\u513F\u6F14\u5531\u4F1A"},{n:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A",v:"\u5468\u4F20\u96C4\u6F14\u5531\u4F1A"},{n:"SHE\u6F14\u5531\u4F1A",v:"SHE\u6F14\u5531\u4F1A"},{n:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A",v:"\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A"},{n:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A",v:"\u4E94\u6708\u5929\u6F14\u5531\u4F1A"},{n:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A",v:"\u5F20\u56FD\u8363\u6F14\u5531\u4F1A"},{n:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A",v:"\u6885\u8273\u82B3\u6F14\u5531\u4F1A"},{n:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A",v:"\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A"},{n:"\u674E\u5065\u6F14\u5531\u4F1A",v:"\u674E\u5065\u6F14\u5531\u4F1A"},{n:"\u534E\u6668\u5B87\u6F14\u5531\u4F1A",v:"\u534E\u6668\u5B87\u6F14\u5531\u4F1A"},{n:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A",v:"\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A"},{n:"\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A",v:"\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A"},{n:"TFBOYS\u6F14\u5531\u4F1A",v:"TFBOYS\u6F14\u5531\u4F1A"},{n:"\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A",v:"\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A"},{n:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A",v:"\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A"},{n:"\u738B\u6E90\u6F14\u5531\u4F1A",v:"\u738B\u6E90\u6F14\u5531\u4F1A"},{n:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A",v:"\u7530\u99A5\u7504\u6F14\u5531\u4F1A"},{n:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A",v:"\u5C0F\u864E\u961F\u6F14\u5531\u4F1A"},{n:"\u5F20\u6770\u6F14\u5531\u4F1A",v:"\u5F20\u6770\u6F14\u5531\u4F1A"},{n:"\u738B\u83F2\u6F14\u5531\u4F1A",v:"\u738B\u83F2\u6F14\u5531\u4F1A"},{n:"\u4F0D\u4F70\u6F14\u5531\u4F1A",v:"\u4F0D\u4F70\u6F14\u5531\u4F1A"},{n:"\u5200\u90CE\u6F14\u5531\u4F1A",v:"\u5200\u90CE\u6F14\u5531\u4F1A"},{n:"\u8349\u8722\u6F14\u5531\u4F1A",v:"\u8349\u8722\u6F14\u5531\u4F1A"},{n:"\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A",v:"\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A"},{n:"\u6881\u9759\u8339\u6F14\u5531\u4F1A",v:"\u6881\u9759\u8339\u6F14\u5531\u4F1A"},{n:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A",v:"\u6797\u5BA5\u5609\u6F14\u5531\u4F1A"},{n:"\u8521\u5F90\u5764\u6F14\u5531\u4F1A",v:"\u8521\u5F90\u5764\u6F14\u5531\u4F1A"},{n:"\u5468\u6167\u654F\u6F14\u5531\u4F1A",v:"\u5468\u6167\u654F\u6F14\u5531\u4F1A"},{n:"\u674E\u5723\u6770\u6F14\u5531\u4F1A",v:"\u674E\u5723\u6770\u6F14\u5531\u4F1A"},{n:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A",v:"\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A"},{n:"\u8427\u656C\u817E\u6F14\u5531\u4F1A",v:"\u8427\u656C\u817E\u6F14\u5531\u4F1A"},{n:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A",v:"\u5468\u7B14\u7545\u6F14\u5531\u4F1A"},{n:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A",v:"\u7126\u8FC8\u5947\u6F14\u5531\u4F1A"},{n:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A",v:"\u5C24\u957F\u9756\u6F14\u5531\u4F1A"},{n:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A",v:"\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A"},{n:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A",v:"\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A"},{n:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A",v:"\u9648\u6167\u5A34\u6F14\u5531\u4F1A"},{n:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A",v:"\u5F20\u827A\u5174\u6F14\u5531\u4F1A"},{n:"\u738B\u5609\u5C14\u6F14\u5531\u4F1A",v:"\u738B\u5609\u5C14\u6F14\u5531\u4F1A"},{n:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A",v:"\u5218\u5BAA\u534E\u6F14\u5531\u4F1A"},{n:"\u5F20\u656C\u8F69\u6F14\u5531\u4F1A",v:"\u5F20\u656C\u8F69\u6F14\u5531\u4F1A"},{n:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A",v:"\u674E\u514B\u52E4\u6F14\u5531\u4F1A"},{n:"\u963F\u675C\u6F14\u5531\u4F1A",v:"\u963F\u675C\u6F14\u5531\u4F1A"},{n:"\u90ED\u9759\u6F14\u5531\u4F1A",v:"\u90ED\u9759\u6F14\u5531\u4F1A"},{n:"\u5D14\u5065\u6F14\u5531\u4F1A",v:"\u5D14\u5065\u6F14\u5531\u4F1A"},{n:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A",v:"\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A"},{n:"\u6C6A\u5CF0\u6F14\u5531\u4F1A",v:"\u6C6A\u5CF0\u6F14\u5531\u4F1A"},{n:"\u90A3\u82F1\u6F14\u5531\u4F1A",v:"\u90A3\u82F1\u6F14\u5531\u4F1A"},{n:"\u6768\u5764\u6F14\u5531\u4F1A",v:"\u6768\u5764\u6F14\u5531\u4F1A"},{n:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A",v:"\u53F6\u5029\u6587\u6F14\u5531\u4F1A"},{n:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A",v:"\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A"},{n:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A",v:"\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A"},{n:"\u97E9\u7EA2\u6F14\u5531\u4F1A",v:"\u97E9\u7EA2\u6F14\u5531\u4F1A"},{n:"\u9F50\u79E6\u6F14\u5531\u4F1A",v:"\u9F50\u79E6\u6F14\u5531\u4F1A"},{n:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A",v:"\u5F20\u96E8\u751F\u6F14\u5531\u4F1A"},{n:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A",v:"\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A"},{n:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A",v:"\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A"},{n:"\u4E01\u5F53\u6F14\u5531\u4F1A",v:"\u4E01\u5F53\u6F14\u5531\u4F1A"},{n:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A",v:"\u90D1\u667A\u5316\u6F14\u5531\u4F1A"},{n:"\u674E\u739F\u6F14\u5531\u4F1A",v:"\u674E\u739F\u6F14\u5531\u4F1A"},{n:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A",v:"\u8C22\u9706\u950B\u6F14\u5531\u4F1A"},{n:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A",v:"\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A"},{n:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A",v:"\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A"},{n:"\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A",v:"\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A"},{n:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A",v:"\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A"},{n:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A",v:"\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A"},{n:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A",v:"\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A"},{n:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A",v:"\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A"},{n:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A",v:"\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A"},{n:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A",v:"\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A"},{n:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A",v:"\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A"},{n:"\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"By2\u6F14\u5531\u4F1A",v:"By2\u6F14\u5531\u4F1A"},{n:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A",v:"\u90C1\u53EF\u552F\u6F14\u5531\u4F1A"},{n:"\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A",v:"\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A"},{n:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A",v:"\u8D39\u7389\u6E05\u6F14\u5531\u4F1A"},{n:"\u8D39\u7FD4\u6F14\u5531\u4F1A",v:"\u8D39\u7FD4\u6F14\u5531\u4F1A"},{n:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A",v:"\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A"},{n:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A",v:"\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A"},{n:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A",v:"\u65B9\u5927\u540C\u6F14\u5531\u4F1A"},{n:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A",v:"\u5434\u514B\u7FA4\u6F14\u5531\u4F1A"},{n:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A",v:"\u7F57\u5927\u4F51\u6F14\u5531\u4F1A"},{n:"\u5149\u826F\u6F14\u5531\u4F1A",v:"\u5149\u826F\u6F14\u5531\u4F1A"},{n:"\u7530\u9707\u6F14\u5531\u4F1A",v:"\u7530\u9707\u6F14\u5531\u4F1A"},{n:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A",v:"\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A"},{n:"\u8C2D\u6676\u6F14\u5531\u4F1A",v:"\u8C2D\u6676\u6F14\u5531\u4F1A"},{n:"\u738B\u6770\u6F14\u5531\u4F1A",v:"\u738B\u6770\u6F14\u5531\u4F1A"},{n:"\u7FBD\u6CC9\u6F14\u5531\u4F1A",v:"\u7FBD\u6CC9\u6F14\u5531\u4F1A"},{n:"\u91D1\u6C60\u6F14\u5531\u4F1A",v:"\u91D1\u6C60\u6F14\u5531\u4F1A"},{n:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A",v:"\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A"},{n:"\u6234\u8343\u6F14\u5531\u4F1A",v:"\u6234\u8343\u6F14\u5531\u4F1A"},{n:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A",v:"\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A"},{n:"\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A",v:"\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A"},{n:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A",v:"\u738B\u529B\u5B8F\u6F14\u5531\u4F1A"},{n:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A",v:"\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A"},{n:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A",v:"\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A"},{n:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A",v:"\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A"},{n:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A",v:"\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A"},{n:"BIGBANG\u6F14\u5531\u4F1A",v:"BIGBANG\u6F14\u5531\u4F1A"},{n:"LadyGaga\u6F14\u5531\u4F1A",v:"LadyGaga\u6F14\u5531\u4F1A"},{n:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A",v:"\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A"},{n:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A",v:"\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A"},{n:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A",v:"\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A"},{n:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A",v:"\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A"},{n:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A",v:"\u5E03\u5170\u59AE\u6F14\u5531\u4F1A"},{n:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A",v:"\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u6F14\u5531\u4F1A",v:"4K\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6770\u4F26\u6F14\u5531\u4F1A",v:"4K\u5468\u6770\u4F26\u6F14\u5531\u4F1A"},{n:"4K\u9648\u5955\u8FC5\u6F14\u5531\u4F1A",v:"4K\u9648\u5955\u8FC5\u6F14\u5531\u4F1A"},{n:"4 KBeyond\u6F14\u5531\u4F1A",v:"4 KBeyond\u6F14\u5531\u4F1A"},{n:"4K\u5218\u5FB7\u534E\u6F14\u5531\u4F1A",v:"4K\u5218\u5FB7\u534E\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A",v:"4K\u90ED\u5BCC\u57CE\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A",v:"4K\u5F20\u5B66\u53CB\u6F14\u5531\u4F1A"},{n:"4K\u9ECE\u660E\u6F14\u5531\u4F1A",v:"4K\u9ECE\u660E\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5B97\u76DB\u6F14\u5531\u4F1A",v:"4K\u674E\u5B97\u76DB\u6F14\u5531\u4F1A"},{n:"4K\u9093\u4E3D\u541B\u6F14\u5531\u4F1A",v:"4K\u9093\u4E3D\u541B\u6F14\u5531\u4F1A"},{n:"4K\u6734\u6811\u6F14\u5531\u4F1A",v:"4K\u6734\u6811\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5B50\u7965\u6F14\u5531\u4F1A",v:"4K\u6797\u5B50\u7965\u6F14\u5531\u4F1A"},{n:"4K\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A",v:"4K\u4EFB\u8D24\u9F50\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A",v:"4K\u5F20\u4FE1\u54F2\u6F14\u5531\u4F1A"},{n:"4K\u5B59\u6960\u6F14\u5531\u4F1A",v:"4K\u5B59\u6960\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u5B87\u6F14\u5531\u4F1A",v:"4K\u5F20\u5B87\u6F14\u5531\u4F1A"},{n:"4K\u5468\u534E\u5065\u6F14\u5531\u4F1A",v:"4K\u5468\u534E\u5065\u6F14\u5531\u4F1A"},{n:"4K\u8521\u4F9D\u6797\u6F14\u5531\u4F1A",v:"4K\u8521\u4F9D\u6797\u6F14\u5531\u4F1A"},{n:"4K\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A",v:"4K\u859B\u4E4B\u8C26\u6F14\u5531\u4F1A"},{n:"4K\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A",v:"4K\u6D1B\u5929\u4F9D\u6F14\u5531\u4F1A"},{n:"4K\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A",v:"4K\u521D\u97F3\u672A\u6765\u6F14\u5531\u4F1A"},{n:"4K\u8BB8\u5D69\u6F14\u5531\u4F1A",v:"4K\u8BB8\u5D69\u6F14\u5531\u4F1A"},{n:"4K\u6234\u4F69\u59AE\u6F14\u5531\u4F1A",v:"4K\u6234\u4F69\u59AE\u6F14\u5531\u4F1A"},{n:"4K\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A",v:"4K\u9093\u7D2B\u68CB\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A",v:"4K\u5F20\u97F6\u6DB5\u6F14\u5531\u4F1A"},{n:"4K\u8521\u5065\u96C5\u6F14\u5531\u4F1A",v:"4K\u8521\u5065\u96C5\u6F14\u5531\u4F1A"},{n:"4K\u83AB\u6587\u851A\u6F14\u5531\u4F1A",v:"4K\u83AB\u6587\u851A\u6F14\u5531\u4F1A"},{n:"4K\u5218\u82E5\u82F1\u6F14\u5531\u4F1A",v:"4K\u5218\u82E5\u82F1\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6DF1\u6F14\u5531\u4F1A",v:"4K\u5468\u6DF1\u6F14\u5531\u4F1A"},{n:"4K\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A",v:"4K\u6BDB\u4E0D\u6613\u6F14\u5531\u4F1A"},{n:"4K\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A",v:"4K\u6C6A\u82CF\u6CF7\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5B87\u6625\u6F14\u5531\u4F1A",v:"4K\u674E\u5B87\u6625\u6F14\u5531\u4F1A"},{n:"4K\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A",v:"4K\u5F90\u4F73\u83B9\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A",v:"4K\u6768\u5B97\u7EAC\u6F14\u5531\u4F1A"},{n:"4K\u80E1\u5F66\u658C\u6F14\u5531\u4F1A",v:"4K\u80E1\u5F66\u658C\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5343\u5B05\u6F14\u5531\u4F1A",v:"4K\u6768\u5343\u5B05\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u9753\u9896\u6F14\u5531\u4F1A",v:"4K\u5F20\u9753\u9896\u6F14\u5531\u4F1A"},{n:"4K\u674E\u8363\u6D69\u6F14\u5531\u4F1A",v:"4K\u674E\u8363\u6D69\u6F14\u5531\u4F1A"},{n:"4K\u6768\u4E1E\u7433\u6F14\u5531\u4F1A",v:"4K\u6768\u4E1E\u7433\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A",v:"4K\u6797\u5FD7\u70AB\u6F14\u5531\u4F1A"},{n:"4K\u9676\u5586\u6F14\u5531\u4F1A",v:"4K\u9676\u5586\u6F14\u5531\u4F1A"},{n:"4K\u80E1\u590F\u6F14\u5531\u4F1A",v:"4K\u80E1\u590F\u6F14\u5531\u4F1A"},{n:"4K\u674E\u7389\u521A\u6F14\u5531\u4F1A",v:"4K\u674E\u7389\u521A\u6F14\u5531\u4F1A"},{n:"4K\u5F26\u5B50\u6F14\u5531\u4F1A",v:"4K\u5F26\u5B50\u6F14\u5531\u4F1A"},{n:"4K\u9648\u5C0F\u6625\u6F14\u5531\u4F1A",v:"4K\u9648\u5C0F\u6625\u6F14\u5531\u4F1A"},{n:"4K\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A",v:"4K\u8427\u4E9A\u8F69\u6F14\u5531\u4F1A"},{n:"4K\u9E7F\u6657\u6F14\u5531\u4F1A",v:"4K\u9E7F\u6657\u6F14\u5531\u4F1A"},{n:"4K\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A",v:"4K\u7EB5\u8D2F\u7EBF\u6F14\u5531\u4F1A"},{n:"4K\u8BB8\u5DCD\u6F14\u5531\u4F1A",v:"4K\u8BB8\u5DCD\u6F14\u5531\u4F1A"},{n:"4K\u6797\u4FCA\u6770\u6F14\u5531\u4F1A",v:"4K\u6797\u4FCA\u6770\u6F14\u5531\u4F1A"},{n:"4K\u8D75\u96F7\u6F14\u5531\u4F1A",v:"4K\u8D75\u96F7\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A",v:"4K\u8C2D\u548F\u9E9F\u6F14\u5531\u4F1A"},{n:"4K\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A",v:"4K\u51E4\u51F0\u4F20\u5947\u6F14\u5531\u4F1A"},{n:"4K\u5BB9\u7956\u513F\u6F14\u5531\u4F1A",v:"4K\u5BB9\u7956\u513F\u6F14\u5531\u4F1A"},{n:"4K\u5468\u4F20\u96C4\u6F14\u5531\u4F1A",v:"4K\u5468\u4F20\u96C4\u6F14\u5531\u4F1A"},{n:"4K SHE\u6F14\u5531\u4F1A",v:"4K SHE\u6F14\u5531\u4F1A"},{n:"4K\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A",v:"4K\u82CF\u6253\u7EFF\u6F14\u5531\u4F1A"},{n:"4K\u4E94\u6708\u5929\u6F14\u5531\u4F1A",v:"4K\u4E94\u6708\u5929\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u56FD\u8363\u6F14\u5531\u4F1A",v:"4K\u5F20\u56FD\u8363\u6F14\u5531\u4F1A"},{n:"4K\u6885\u8273\u82B3\u6F14\u5531\u4F1A",v:"4K\u6885\u8273\u82B3\u6F14\u5531\u4F1A"},{n:"4K\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A",v:"4K\u5B59\u71D5\u59FF\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5065\u6F14\u5531\u4F1A",v:"4K\u674E\u5065\u6F14\u5531\u4F1A"},{n:"4K\u534E\u6668\u5B87\u6F14\u5531\u4F1A",v:"4K\u534E\u6668\u5B87\u6F14\u5531\u4F1A"},{n:"4K\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A",v:"4K\u8881\u5A05\u7EF4\u6F14\u5531\u4F1A"},{n:"4K\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A",v:"4K\u5927\u5F20\u4F1F\u6F14\u5531\u4F1A"},{n:"4K TFBOYS\u6F14\u5531\u4F1A",v:"4K TFBOYS\u6F14\u5531\u4F1A"},{n:"4K\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A",v:"4K\u738B\u4FCA\u51EF\u6F14\u5531\u4F1A"},{n:"4K\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A",v:"4K\u6613\u70CA\u5343\u73BA\u6F14\u5531\u4F1A"},{n:"4K\u738B\u6E90\u6F14\u5531\u4F1A",v:"4K\u738B\u6E90\u6F14\u5531\u4F1A"},{n:"4K\u7530\u99A5\u7504\u6F14\u5531\u4F1A",v:"4K\u7530\u99A5\u7504\u6F14\u5531\u4F1A"},{n:"4K\u5C0F\u864E\u961F\u6F14\u5531\u4F1A",v:"4K\u5C0F\u864E\u961F\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u6770\u6F14\u5531\u4F1A",v:"4K\u5F20\u6770\u6F14\u5531\u4F1A"},{n:"4K\u738B\u83F2\u6F14\u5531\u4F1A",v:"4K\u738B\u83F2\u6F14\u5531\u4F1A"},{n:"4K\u4F0D\u4F70\u6F14\u5531\u4F1A",v:"4K\u4F0D\u4F70\u6F14\u5531\u4F1A"},{n:"4K\u5200\u90CE\u6F14\u5531\u4F1A",v:"4K\u5200\u90CE\u6F14\u5531\u4F1A"},{n:"4K\u8349\u8722\u6F14\u5531\u4F1A",v:"4K\u8349\u8722\u6F14\u5531\u4F1A"},{n:"4K\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A",v:"4K\u6F58\u73AE\u67CF\u6F14\u5531\u4F1A"},{n:"4K\u6881\u9759\u8339\u6F14\u5531\u4F1A",v:"4K\u6881\u9759\u8339\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5BA5\u5609\u6F14\u5531\u4F1A",v:"4K\u6797\u5BA5\u5609\u6F14\u5531\u4F1A"},{n:"4K\u8521\u5F90\u5764\u6F14\u5531\u4F1A",v:"4K\u8521\u5F90\u5764\u6F14\u5531\u4F1A"},{n:"4K\u5468\u6167\u654F\u6F14\u5531\u4F1A",v:"4K\u5468\u6167\u654F\u6F14\u5531\u4F1A"},{n:"4K\u674E\u5723\u6770\u6F14\u5531\u4F1A",v:"4K\u674E\u5723\u6770\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A",v:"4K\u5F20\u60E0\u59B9\u6F14\u5531\u4F1A"},{n:"4K\u8427\u656C\u817E\u6F14\u5531\u4F1A",v:"4K\u8427\u656C\u817E\u6F14\u5531\u4F1A"},{n:"4K\u5468\u7B14\u7545\u6F14\u5531\u4F1A",v:"4K\u5468\u7B14\u7545\u6F14\u5531\u4F1A"},{n:"4K\u7126\u8FC8\u5947\u6F14\u5531\u4F1A",v:"4K\u7126\u8FC8\u5947\u6F14\u5531\u4F1A"},{n:"4K\u5C24\u957F\u9756\u6F14\u5531\u4F1A",v:"4K\u5C24\u957F\u9756\u6F14\u5531\u4F1A"},{n:"4K\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A",v:"4K\u90D1\u4E2D\u57FA\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A",v:"4K\u8C2D\u7EF4\u7EF4\u6F14\u5531\u4F1A"},{n:"4K\u9648\u6167\u5A34\u6F14\u5531\u4F1A",v:"4K\u9648\u6167\u5A34\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u827A\u5174\u6F14\u5531\u4F1A",v:"4K\u5F20\u827A\u5174\u6F14\u5531\u4F1A"},{n:"4K\u738B\u5609\u5C14\u6F14\u5531\u4F1A",v:"4K\u738B\u5609\u5C14\u6F14\u5531\u4F1A"},{n:"4K\u5218\u5BAA\u534E\u6F14\u5531\u4F1A",v:"4K\u5218\u5BAA\u534E\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u656C\u8F69\u6F14\u5531\u4F1A",v:"4K\u5F20\u656C\u8F69\u6F14\u5531\u4F1A"},{n:"4K\u674E\u514B\u52E4\u6F14\u5531\u4F1A",v:"4K\u674E\u514B\u52E4\u6F14\u5531\u4F1A"},{n:"4K\u963F\u675C\u6F14\u5531\u4F1A",v:"4K\u963F\u675C\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u9759\u6F14\u5531\u4F1A",v:"4K\u90ED\u9759\u6F14\u5531\u4F1A"},{n:"4K\u5D14\u5065\u6F14\u5531\u4F1A",v:"4K\u5D14\u5065\u6F14\u5531\u4F1A"},{n:"4K\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A",v:"4K\u5EBE\u6F84\u5E86\u6F14\u5531\u4F1A"},{n:"4K\u6C6A\u5CF0\u6F14\u5531\u4F1A",v:"4K\u6C6A\u5CF0\u6F14\u5531\u4F1A"},{n:"4K\u90A3\u82F1\u6F14\u5531\u4F1A",v:"4K\u90A3\u82F1\u6F14\u5531\u4F1A"},{n:"4K\u6768\u5764\u6F14\u5531\u4F1A",v:"4K\u6768\u5764\u6F14\u5531\u4F1A"},{n:"4K\u53F6\u5029\u6587\u6F14\u5531\u4F1A",v:"4K\u53F6\u5029\u6587\u6F14\u5531\u4F1A"},{n:"4K\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A",v:"4K\u738B\u5FC3\u51CC\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A",v:"4K\u5F20\u9707\u5CB3\u6F14\u5531\u4F1A"},{n:"4K\u97E9\u7EA2\u6F14\u5531\u4F1A",v:"4K\u97E9\u7EA2\u6F14\u5531\u4F1A"},{n:"4K\u9F50\u79E6\u6F14\u5531\u4F1A",v:"4K\u9F50\u79E6\u6F14\u5531\u4F1A"},{n:"4K\u5F20\u96E8\u751F\u6F14\u5531\u4F1A",v:"4K\u5F20\u96E8\u751F\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A",v:"4K\u9EC4\u54C1\u6E90\u6F14\u5531\u4F1A"},{n:"4K\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A",v:"4K\u6797\u5FC6\u83B2\u6F14\u5531\u4F1A"},{n:"4K\u4E01\u5F53\u6F14\u5531\u4F1A",v:"4K\u4E01\u5F53\u6F14\u5531\u4F1A"},{n:"4K\u90D1\u667A\u5316\u6F14\u5531\u4F1A",v:"4K\u90D1\u667A\u5316\u6F14\u5531\u4F1A"},{n:"4K\u674E\u739F\u6F14\u5531\u4F1A",v:"4K\u674E\u739F\u6F14\u5531\u4F1A"},{n:"4K\u8C22\u9706\u950B\u6F14\u5531\u4F1A",v:"4K\u8C22\u9706\u950B\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A",v:"4K\u9EC4\u5C0F\u7425\u6F14\u5531\u4F1A"},{n:"4K\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A",v:"4K\u5F90\u5C0F\u51E4\u6F14\u5531\u4F1A"},{n:"4K\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A",v:"4K\u4EFB\u5609\u4F26\u6F14\u5531\u4F1A"},{n:"4K\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A",v:"4K\u5353\u4F9D\u5A77\u6F14\u5531\u4F1A"},{n:"4K\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A",v:"4K\u9003\u8DD1\u8BA1\u5212\u6F14\u5531\u4F1A"},{n:"4K\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A",v:"4K\u9752\u9E1F\u98DE\u9C7C\u6F14\u5531\u4F1A"},{n:"4K\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u98DE\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u82B1\u513F\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A",v:"4K\u5357\u62F3\u5988\u5988\u6F14\u5531\u4F1A"},{n:"4K\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A",v:"4K\u6C34\u6728\u5E74\u534E\u6F14\u5531\u4F1A"},{n:"4K\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A",v:"4K\u52A8\u529B\u706B\u8F66\u6F14\u5531\u4F1A"},{n:"4K\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A",v:"4K\u7B77\u5B50\u5144\u5F1F\u6F14\u5531\u4F1A"},{n:"4K\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u9E7F\u5148\u68EE\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u4FE1\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u65C5\u884C\u56E2\u4E50\u961F\u6F14\u5531\u4F1A"},{n:"4K By2\u6F14\u5531\u4F1A",v:"4K By2\u6F14\u5531\u4F1A"},{n:"4K\u90C1\u53EF\u552F\u6F14\u5531\u4F1A",v:"4K\u90C1\u53EF\u552F\u6F14\u5531\u4F1A"},{n:"4K\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A",v:"4K\u5B8B\u4E9A\u68EE\u6F14\u5531\u4F1A"},{n:"4K\u8D39\u7389\u6E05\u6F14\u5531\u4F1A",v:"4K\u8D39\u7389\u6E05\u6F14\u5531\u4F1A"},{n:"4K\u8D39\u7FD4\u6F14\u5531\u4F1A",v:"4K\u8D39\u7FD4\u6F14\u5531\u4F1A"},{n:"4K\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A",v:"4K\u91D1\u5FD7\u6587\u6F14\u5531\u4F1A"},{n:"4K\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A",v:"4K\u9EC4\u5BB6\u5F3A\u6F14\u5531\u4F1A"},{n:"4K\u65B9\u5927\u540C\u6F14\u5531\u4F1A",v:"4K\u65B9\u5927\u540C\u6F14\u5531\u4F1A"},{n:"4K\u5434\u514B\u7FA4\u6F14\u5531\u4F1A",v:"4K\u5434\u514B\u7FA4\u6F14\u5531\u4F1A"},{n:"4K\u7F57\u5927\u4F51\u6F14\u5531\u4F1A",v:"4K\u7F57\u5927\u4F51\u6F14\u5531\u4F1A"},{n:"4K\u5149\u826F\u6F14\u5531\u4F1A",v:"4K\u5149\u826F\u6F14\u5531\u4F1A"},{n:"4K\u7530\u9707\u6F14\u5531\u4F1A",v:"4K\u7530\u9707\u6F14\u5531\u4F1A"},{n:"4K\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A",v:"4K\u51E4\u98DE\u98DE\u6F14\u5531\u4F1A"},{n:"4K\u8C2D\u6676\u6F14\u5531\u4F1A",v:"4K\u8C2D\u6676\u6F14\u5531\u4F1A"},{n:"4K\u738B\u6770\u6F14\u5531\u4F1A",v:"4K\u738B\u6770\u6F14\u5531\u4F1A"},{n:"4K\u7FBD\u6CC9\u6F14\u5531\u4F1A",v:"4K\u7FBD\u6CC9\u6F14\u5531\u4F1A"},{n:"4K\u91D1\u6C60\u6F14\u5531\u4F1A",v:"4K\u91D1\u6C60\u6F14\u5531\u4F1A"},{n:"4K\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A",v:"4K\u5C60\u6D2A\u521A\u6F14\u5531\u4F1A"},{n:"4K\u6234\u8343\u6F14\u5531\u4F1A",v:"4K\u6234\u8343\u6F14\u5531\u4F1A"},{n:"4K\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A",v:"4K\u90ED\u91C7\u6D01\u6F14\u5531\u4F1A"},{n:"4K\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A",v:"4K\u7F57\u5FD7\u7965\u6F14\u5531\u4F1A"},{n:"4K\u738B\u529B\u5B8F\u6F14\u5531\u4F1A",v:"4K\u738B\u529B\u5B8F\u6F14\u5531\u4F1A"},{n:"4K\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A",v:"4K\u6797\u80AF\u516C\u56ED\u6F14\u5531\u4F1A"},{n:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A",v:"4K\u8FC8\u514B\u5C14\u6770\u514B\u900A\u6F14\u5531\u4F1A"},{n:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A",v:"4K\u6CF0\u52D2\xB7\u65AF\u5A01\u592B\u7279\u6F14\u5531\u4F1A"},{n:"4K\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A",v:"4K\u963F\u9EDB\u5C14\u6F14\u5531\u4F1A"},{n:"4K BIGBANG\u6F14\u5531\u4F1A",v:"4K BIGBANG\u6F14\u5531\u4F1A"},{n:"4K LadyGaga\u6F14\u5531\u4F1A",v:"4K LadyGaga\u6F14\u5531\u4F1A"},{n:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A",v:"4K\u8D3E\u65AF\u4E01\u6BD4\u4F2F\u6F14\u5531\u4F1A"},{n:"4K\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A",v:"4K\u4E2D\u5C9B\u7F8E\u96EA\u6F14\u5531\u4F1A"},{n:"4K\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A",v:"4K\u4ED3\u6728\u9EBB\u8863\u6F14\u5531\u4F1A"},{n:"4K\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A",v:"4K\u540E\u8857\u7537\u5B69\u6F14\u5531\u4F1A"},{n:"4K\u5E03\u5170\u59AE\u6F14\u5531\u4F1A",v:"4K\u5E03\u5170\u59AE\u6F14\u5531\u4F1A"},{n:"4K\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A",v:"4K\u591C\u613F\u4E50\u961F\u6F14\u5531\u4F1A"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u8BFE\u7A0B\u8F85\u5BFC:[{key:"tida",name:"\u82CF\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u82CF\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u82CF\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u82CF\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u82CF\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidb",name:"\u4EBA\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u4EBA\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u4EBA\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidc",name:"\u6CAA\u6559\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5730\u7406",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u751F\u7269",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u7269\u7406",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u6CAA\u6559\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5730\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u751F\u7269",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u7269\u7406",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u6CAA\u6559\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"tidd",name:"\u5317\u5E08\u5927\u7248\u5E74\u7EA7\u79D1\u76EE",value:[{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72481\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72482\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72483\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72484\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72485\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72486\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72487\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72488\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u8BED\u6587",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u6570\u5B66",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u82F1\u8BED",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5386\u53F2",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5730\u7406",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5730\u7406"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u751F\u7269",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u751F\u7269"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u7269\u7406",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u7269\u7406"},{n:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5316\u5B66",v:"\u5317\u5E08\u5927\u72489\u5E74\u7EA7\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E00\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E8C\u5316\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u8BED\u6587",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u8BED\u6587"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u6570\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u6570\u5B66"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u82F1\u8BED",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u82F1\u8BED"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u601D\u60F3\u653F\u6CBB"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5386\u53F2",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5386\u53F2"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5730\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5730\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u751F\u7269",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u751F\u7269"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u7269\u7406",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u7269\u7406"},{n:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5316\u5B66",v:"\u5317\u5E08\u5927\u7248\u9AD8\u4E09\u5316\u5B66"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],\u98CE\u666F:[{key:"tida",name:"\u5206\u7C7B",value:[{n:"\u98CE\u666F",v:"\u98CE\u666F"},{n:"\u6FB3\u95E8\u98CE\u666F",v:"\u6FB3\u95E8\u98CE\u666F"},{n:"\u5B89\u5FBD\u98CE\u666F",v:"\u5B89\u5FBD\u98CE\u666F"},{n:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F",v:"\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F"},{n:"\u5317\u4EAC\u98CE\u666F",v:"\u5317\u4EAC\u98CE\u666F"},{n:"\u91CD\u5E86\u98CE\u666F",v:"\u91CD\u5E86\u98CE\u666F"},{n:"\u8349\u539F\u98CE\u666F",v:"\u8349\u539F\u98CE\u666F"},{n:"\u5927\u6D77\u98CE\u666F",v:"\u5927\u6D77\u98CE\u666F"},{n:"\u798F\u5EFA\u98CE\u666F",v:"\u798F\u5EFA\u98CE\u666F"},{n:"\u5E7F\u4E1C\u98CE\u666F",v:"\u5E7F\u4E1C\u98CE\u666F"},{n:"\u5E7F\u897F\u98CE\u666F",v:"\u5E7F\u897F\u98CE\u666F"},{n:"\u8D35\u5DDE\u98CE\u666F",v:"\u8D35\u5DDE\u98CE\u666F"},{n:"\u7518\u8083\u98CE\u666F",v:"\u7518\u8083\u98CE\u666F"},{n:"\u6D77\u5357\u98CE\u666F",v:"\u6D77\u5357\u98CE\u666F"},{n:"\u6CB3\u5317\u98CE\u666F",v:"\u6CB3\u5317\u98CE\u666F"},{n:"\u6CB3\u5357\u98CE\u666F",v:"\u6CB3\u5357\u98CE\u666F"},{n:"\u6E56\u5317\u98CE\u666F",v:"\u6E56\u5317\u98CE\u666F"},{n:"\u6E56\u5357\u98CE\u666F",v:"\u6E56\u5357\u98CE\u666F"},{n:"\u9ED1\u9F99\u6C5F\u98CE\u666F",v:"\u9ED1\u9F99\u6C5F\u98CE\u666F"},{n:"\u5409\u6797\u98CE\u666F",v:"\u5409\u6797\u98CE\u666F"},{n:"\u6C5F\u82CF\u98CE\u666F",v:"\u6C5F\u82CF\u98CE\u666F"},{n:"\u6C5F\u897F\u98CE\u666F",v:"\u6C5F\u897F\u98CE\u666F"},{n:"\u8FBD\u5B81\u98CE\u666F",v:"\u8FBD\u5B81\u98CE\u666F"},{n:"\u6C11\u5BBF\u98CE\u666F",v:"\u6C11\u5BBF\u98CE\u666F"},{n:"\u5185\u8499\u53E4\u98CE\u666F",v:"\u5185\u8499\u53E4\u98CE\u666F"},{n:"\u5B81\u590F\u98CE\u666F",v:"\u5B81\u590F\u98CE\u666F"},{n:"\u9752\u6D77\u98CE\u666F",v:"\u9752\u6D77\u98CE\u666F"},{n:"\u4E0A\u6D77\u98CE\u666F",v:"\u4E0A\u6D77\u98CE\u666F"},{n:"\u9655\u897F\u98CE\u666F",v:"\u9655\u897F\u98CE\u666F"},{n:"\u56DB\u5DDD\u98CE\u666F",v:"\u56DB\u5DDD\u98CE\u666F"},{n:"\u5C71\u897F\u98CE\u666F",v:"\u5C71\u897F\u98CE\u666F"},{n:"\u5C71\u4E1C\u98CE\u666F",v:"\u5C71\u4E1C\u98CE\u666F"},{n:"\u5929\u6D25\u98CE\u666F",v:"\u5929\u6D25\u98CE\u666F"},{n:"\u53F0\u6E7E\u98CE\u666F",v:"\u53F0\u6E7E\u98CE\u666F"},{n:"\u5929\u7A7A\u98CE\u666F",v:"\u5929\u7A7A\u98CE\u666F"},{n:"\u897F\u6E56\u98CE\u666F",v:"\u897F\u6E56\u98CE\u666F"},{n:"\u897F\u85CF\u98CE\u666F",v:"\u897F\u85CF\u98CE\u666F"},{n:"\u65B0\u7586\u98CE\u666F",v:"\u65B0\u7586\u98CE\u666F"},{n:"\u9999\u6E2F\u98CE\u666F",v:"\u9999\u6E2F\u98CE\u666F"},{n:"\u4E91\u5357\u98CE\u666F",v:"\u4E91\u5357\u98CE\u666F"},{n:"\u6D59\u6C5F\u98CE\u666F",v:"\u6D59\u6C5F\u98CE\u666F"},{n:"\u6CB3\u5357\u536B\u89C6\u56FD\u98CE",v:"\u6CB3\u5357\u536B\u89C6\u56FD\u98CE"}]},{key:"tidb",name:"\u5206\u7C7B",value:[{n:"4K\u98CE\u666F",v:"4K\u98CE\u666F"},{n:"4K\u6FB3\u95E8\u98CE\u666F",v:"4K\u6FB3\u95E8\u98CE\u666F"},{n:"4K\u5B89\u5FBD\u98CE\u666F",v:"4K\u5B89\u5FBD\u98CE\u666F"},{n:"4K\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F",v:"4K\u5E03\u8FBE\u62C9\u5BAB\u98CE\u666F"},{n:"4K\u5317\u4EAC\u98CE\u666F",v:"4K\u5317\u4EAC\u98CE\u666F"},{n:"4K\u91CD\u5E86\u98CE\u666F",v:"4K\u91CD\u5E86\u98CE\u666F"},{n:"4K\u8349\u539F\u98CE\u666F",v:"4K\u8349\u539F\u98CE\u666F"},{n:"4K\u5927\u6D77\u98CE\u666F",v:"4K\u5927\u6D77\u98CE\u666F"},{n:"4K\u798F\u5EFA\u98CE\u666F",v:"4K\u798F\u5EFA\u98CE\u666F"},{n:"4K\u5E7F\u4E1C\u98CE\u666F",v:"4K\u5E7F\u4E1C\u98CE\u666F"},{n:"4K\u5E7F\u897F\u98CE\u666F",v:"4K\u5E7F\u897F\u98CE\u666F"},{n:"4K\u8D35\u5DDE\u98CE\u666F",v:"4K\u8D35\u5DDE\u98CE\u666F"},{n:"4K\u7518\u8083\u98CE\u666F",v:"4K\u7518\u8083\u98CE\u666F"},{n:"4K\u6D77\u5357\u98CE\u666F",v:"4K\u6D77\u5357\u98CE\u666F"},{n:"4K\u6CB3\u5317\u98CE\u666F",v:"4K\u6CB3\u5317\u98CE\u666F"},{n:"4K\u6CB3\u5357\u98CE\u666F",v:"4K\u6CB3\u5357\u98CE\u666F"},{n:"4K\u6E56\u5317\u98CE\u666F",v:"4K\u6E56\u5317\u98CE\u666F"},{n:"4K\u6E56\u5357\u98CE\u666F",v:"4K\u6E56\u5357\u98CE\u666F"},{n:"4K\u9ED1\u9F99\u6C5F\u98CE\u666F",v:"4K\u9ED1\u9F99\u6C5F\u98CE\u666F"},{n:"4K\u5409\u6797\u98CE\u666F",v:"4K\u5409\u6797\u98CE\u666F"},{n:"4K\u6C5F\u82CF\u98CE\u666F",v:"4K\u6C5F\u82CF\u98CE\u666F"},{n:"4K\u6C5F\u897F\u98CE\u666F",v:"4K\u6C5F\u897F\u98CE\u666F"},{n:"4K\u8FBD\u5B81\u98CE\u666F",v:"4K\u8FBD\u5B81\u98CE\u666F"},{n:"4K\u6C11\u5BBF\u98CE\u666F",v:"4K\u6C11\u5BBF\u98CE\u666F"},{n:"4K\u5185\u8499\u53E4\u98CE\u666F",v:"4K\u5185\u8499\u53E4\u98CE\u666F"},{n:"4K\u5B81\u590F\u98CE\u666F",v:"4K\u5B81\u590F\u98CE\u666F"},{n:"4K\u9752\u6D77\u98CE\u666F",v:"4K\u9752\u6D77\u98CE\u666F"},{n:"4K\u4E0A\u6D77\u98CE\u666F",v:"4K\u4E0A\u6D77\u98CE\u666F"},{n:"4K\u9655\u897F\u98CE\u666F",v:"4K\u9655\u897F\u98CE\u666F"},{n:"4K\u56DB\u5DDD\u98CE\u666F",v:"4K\u56DB\u5DDD\u98CE\u666F"},{n:"4K\u5C71\u897F\u98CE\u666F",v:"4K\u5C71\u897F\u98CE\u666F"},{n:"4K\u5C71\u4E1C\u98CE\u666F",v:"4K\u5C71\u4E1C\u98CE\u666F"},{n:"4K\u5929\u6D25\u98CE\u666F",v:"4K\u5929\u6D25\u98CE\u666F"},{n:"4K\u53F0\u6E7E\u98CE\u666F",v:"4K\u53F0\u6E7E\u98CE\u666F"},{n:"4K\u5929\u7A7A\u98CE\u666F",v:"4K\u5929\u7A7A\u98CE\u666F"},{n:"4K\u897F\u6E56\u98CE\u666F",v:"4K\u897F\u6E56\u98CE\u666F"},{n:"4K\u897F\u85CF\u98CE\u666F",v:"4K\u897F\u85CF\u98CE\u666F"},{n:"4K\u65B0\u7586\u98CE\u666F",v:"4K\u65B0\u7586\u98CE\u666F"},{n:"4K\u9999\u6E2F\u98CE\u666F",v:"4K\u9999\u6E2F\u98CE\u666F"},{n:"4K\u4E91\u5357\u98CE\u666F",v:"4K\u4E91\u5357\u98CE\u666F"},{n:"4K\u6D59\u6C5F\u98CE\u666F",v:"4K\u6D59\u6C5F\u98CE\u666F"},{n:"4K\u6CB3\u5357\u536B\u89C6\u56FD\u98CE",v:"4K\u6CB3\u5357\u536B\u89C6\u56FD\u98CE"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}]},fpn=()=>[{key:"order",name:"\u6392\u5E8F",value:[{n:"\u7EFC\u5408\u6392\u5E8F",v:"totalrank"},{n:"\u6700\u591A\u70B9\u51FB",v:"click"},{n:"\u6700\u65B0\u53D1\u5E03",v:"pubdate"},{n:"\u6700\u591A\u5F39\u5E55",v:"dm"},{n:"\u6700\u591A\u6536\u85CF",v:"stow"}]},{key:"duration",name:"\u65F6\u957F",value:[{n:"\u5168\u90E8\u65F6\u957F",v:"0"},{n:"60\u5206\u949F\u4EE5\u4E0A",v:"4"},{n:"30~60\u5206\u949F",v:"3"},{n:"10~30\u5206\u949F",v:"2"},{n:"10\u5206\u949F\u4EE5\u4E0B",v:"1"}]}],ppn={129:"HDR Vivid",127:"8K\u8D85\u6E05",126:"\u675C\u6BD4\u89C6\u754C",125:"HDR\u771F\u5F69",120:"4K\u8D85\u6E05",116:"1080P\u9AD8\u5E27",112:"1080P\u9AD8\u7801",80:"1080P"},hpn=[129,127,126,125,120,116,112,80],mpn=new Set(hpn),Zl=class extends Error{constructor(t,r="UNKNOWN_ERROR"){super(t),this.name="BiliAPIError",this.code=r}},bxe=class{constructor(){this.cookie="",this.isSet=!1}setCookie(t){return t&&t.trim()?(this.cookie=t.trim(),this.isSet=!0,!0):!1}clearCookie(){this.cookie="",this.isSet=!1}getCookie(){return this.cookie}hasCookie(){return this.isSet&&this.cookie.length>10}getCsrf(){let t=this.cookie.match(/bili_jct=([^;]+)/);return t?t[1]:""}},Ef=new bxe,Exe=class{constructor(){this.cache="",this.last=0}isValid(){return this.cache&&Date.now()-this.last<ipn}async refresh(){try{let r=(await Ee.get("https://www.bilibili.com",{headers:{"User-Agent":opn},timeout:8e3})).headers["set-cookie"];if(r&&Array.isArray(r))return this.cache=r.map(n=>n.split(";")[0].trim()).join("; "),this.last=Date.now(),this.cache}catch{}return""}getCookie(){return this.cache}},Sf=new Exe,Sxe=class{constructor(){this.key="",this.exp=0}isValid(){return this.key&&Date.now()-this.exp<spn}setKey(t){this.key=t,this.exp=Date.now()}getKey(){return this.key}clear(){this.key=""}},sL=new Sxe,xxe="",gpn=e=>{let t=Ee.create({timeout:1e4,headers:{"User-Agent":U7,Cookie:e,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com"}});return t.interceptors.response.use(r=>{if(r.data?.code!==void 0&&r.data.code!==0)throw new Error(r.data.message||`API\u9519\u8BEF: ${r.data.code}`);return r},r=>{throw r}),t},wxe=class{constructor(){this.instance=Ee.create({timeout:wBt,maxRedirects:5}),this.instance.interceptors.request.use(async t=>{t.headers&&t.headers["User-Agent"]&&(xxe=t.headers["User-Agent"]),t.headers={"User-Agent":U7,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Connection:"keep-alive",...t.headers};let r="";return Ef.hasCookie()?r=Ef.getCookie():(Sf.isValid()||await Sf.refresh(),Sf.getCookie()&&(r=Sf.getCookie())),r&&(t.headers.Cookie=r),t}),this.instance.interceptors.response.use(t=>{if(t.data?.code!==void 0&&t.data.code!==0)throw new Zl(t.data.message||`API\u9519\u8BEF: ${t.data.code}`,t.data.code);return t},async t=>{throw t.response?.status===412&&sL.clear(),t})}async request(t,r=apn){try{return await this.instance(t)}catch(n){if(r>0&&!n.response)return await new Promise(i=>setTimeout(i,1e3)),this.request(t,r-1);throw n}}get(t,r={}){return this.request({...r,method:"GET",url:t})}post(t,r={},n={}){return this.request({...n,method:"POST",url:t,data:r})}},O_=new wxe,F7=null;async function yC(e=null){Ef.hasCookie()||Sf.isValid()||(F7||(F7=(async()=>{try{if(e){let t=await yBt(e);t&&Ef.setCookie(t)}!Ef.hasCookie()&&!Sf.isValid()&&await Sf.refresh(),await IBt()}finally{F7=null}})()),await F7)}async function IBt(){if(sL.isValid())return sL.getKey();try{let e="";Ef.hasCookie()?e=Ef.getCookie():(Sf.isValid()||await Sf.refresh(),e=Sf.getCookie()||"");let r=(await Ee.get("https://api.bilibili.com/x/web-interface/nav",{timeout:wBt,headers:{"User-Agent":U7,Referer:"https://www.bilibili.com",Origin:"https://www.bilibili.com",Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",...e?{Cookie:e}:{}}})).data?.data?.wbi_img;if(r?.img_url&&r?.sub_url){let n=o=>o.split("/").pop().split(".")[0],i=n(r.img_url)+n(r.sub_url),a=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52].map(o=>i[o]||"").join("").slice(0,32);if(a)return sL.setKey(a),a}}catch(e){console.error("\u83B7\u53D6 mixinKey \u5931\u8D25:",e.message)}return"tkk"}async function Cxe(e){let t=await IBt(),r=Math.floor(Date.now()/1e3),n={...e,wts:r},i=Object.keys(n).sort().map(a=>`${encodeURIComponent(a)}=${encodeURIComponent(n[a])}`).join("&"),s=EBt.default.createHash("md5").update(i+t).digest("hex");return SBt.default.stringify({...n,w_rid:s})}function uL(e){if(e==null||e==="")return 0;if(typeof e=="number")return Number.isFinite(e)?Math.max(0,e):0;if(typeof e!="string")return 0;let t=e.trim();if(!t)return 0;if(!t.includes(":"))return parseFloat(t)||0;let r=t.split(":");return r.length===2?(Number.parseInt(r[0],10)||0)*60+(parseFloat(r[1])||0):r.length===3?(Number.parseInt(r[0],10)||0)*3600+(Number.parseInt(r[1],10)||0)*60+(parseFloat(r[2])||0):0}function Ixe(e){return!e||typeof e!="object"?"":e.bvid?e.bvid:e.aid?`av${e.aid}`:""}function xBt(e){return String(e||"\u672A\u77E5\u6807\u9898").replace(lpn,"").replace(dpn,"").trim()||"\u672A\u77E5\u6807\u9898"}function bBt(e,t){if(!Array.isArray(e)||e.length===0)return null;let r=null,n=-1/0;for(let i of e){let s=t(i);s>n&&(r=i,n=s)}return r}function aL(e){if(!e||typeof e!="string")return upn;let t=e.trim();return t.startsWith("//")?t="https:"+t:t.startsWith("http://")&&(t=t.replace("http://","https://")),t.startsWith("https://")||(t="https://"+t),t}function Txe(e){if(!e&&e!==0)return"0";let t=Number.parseInt(e,10);return!Number.isFinite(t)||t<0?"0":t>=1e8?`${(t/1e8).toFixed(1)}\u4EBF`:t>=1e4?`${(t/1e4).toFixed(1)}\u4E07`:`${t}`}function Nxe(e){if(!e&&e!==0)return"";let t=uL(e),r=Math.floor(t/3600),n=Math.floor(t%3600/60),i=Math.floor(t%60);return r>0?`${r}:${n.toString().padStart(2,"0")}:${i.toString().padStart(2,"0")}`:`${n.toString().padStart(2,"0")}:${i.toString().padStart(2,"0")}`}function Rxe(e){if(!e&&e!==0)return"";let t=uL(e),r=Math.floor(t/3600),n=Math.floor(t%3600/60),i=Math.floor(t%60);return r>0?`${r}\u65F6${n}\u5206${i}\u79D2`:n>0?`${n}\u5206${i}\u79D2`:`${i}\u79D2`}function oL(e){if(!e)return"";let t=new Date(e*1e3),n=Math.floor((new Date-t)/1e3);return n<60?"\u521A\u521A":n<3600?`${Math.floor(n/60)}\u5206\u949F\u524D`:n<86400?`${Math.floor(n/3600)}\u5C0F\u65F6\u524D`:n<2592e3?`${Math.floor(n/86400)}\u5929\u524D`:`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function CBt(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function ypn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}async function _pn(e){try{let t=await _Bt(e);if(t&&t.trim()){let r=JSON.parse(t.trim());if(Array.isArray(r)&&r.length)if(typeof r[0]=="string"){let n=r.filter(i=>i&&typeof i=="string").map(i=>({type_id:i,type_name:i}));if(n.length)return n}else{let n=r.filter(i=>i&&typeof i.type_id=="string");if(n.length)return n}}}catch{}return null}async function Apn(e){try{let t=await ABt(e);if(t&&t.trim()){let r=JSON.parse(t.trim());if(typeof r=="object"&&r!==null)return r}}catch{}return null}function vpn(e){if(!e||e<=0)return"PT0S";let t=Math.floor(e/3600),r=Math.floor(e%3600/60),n=e%60,i="PT";return t>0&&(i+=`${t}H`),r>0&&(i+=`${r}M`),i+=`${n.toFixed(3)}S`,i}function bpn(e,t="",r="PT0H0M0.00S"){let n=o=>o.replace(/&/g,"&"),i=n(e),s=t?n(t):"",a=['<?xml version="1.0" encoding="UTF-8"?>','<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"',' xmlns="urn:mpeg:dash:schema:mpd:2011"',' xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd"',' type="static"',` mediaPresentationDuration="${r}"`,' minBufferTime="PT1.5S"',' profiles="urn:mpeg:dash:profile:isoff-on-demand:2011">'," <Period>",' <AdaptationSet mimeType="video/mp4" codecs="avc1.640028">',' <Representation id="1" bandwidth="1000000">',` <BaseURL><![CDATA[${i}]]></BaseURL>`,' <SegmentBase indexRange="0-1023"/>'," </Representation>"," </AdaptationSet>"];return t&&a.push(' <AdaptationSet mimeType="audio/mp4" codecs="mp4a.40.2">',' <Representation id="2" bandwidth="128000">',` <BaseURL><![CDATA[${s}]]></BaseURL>`,' <SegmentBase indexRange="0-1023"/>'," </Representation>"," </AdaptationSet>"),a.push(" </Period>","</MPD>"),a.join(` -`)}function Epn(e,t="",r="PT0S"){let n=r&&r!=="PT0S"?r:"PT0S",i=[' <AdaptationSet mimeType="video/mp4" codecs="avc1.640028" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1">',' <Representation id="v1" bandwidth="1000000">',` <BaseURL><![CDATA[${e}]]></BaseURL>`,' <SegmentBase indexRange="0-1023"><Initialization range="0-1023"/></SegmentBase>'," </Representation>"," </AdaptationSet>"].join(` -`),s=t?[' <AdaptationSet mimeType="audio/mp4" codecs="mp4a.40.2" startWithSAP="1" subsegmentAlignment="true" subsegmentStartsWithSAP="1">',' <Representation id="a1" bandwidth="128000">',` <BaseURL><![CDATA[${t}]]></BaseURL>`,' <SegmentBase indexRange="0-1023"><Initialization range="0-1023"/></SegmentBase>'," </Representation>"," </AdaptationSet>"].join(` -`):"";return['<?xml version="1.0" encoding="UTF-8"?>','<MPD xmlns="urn:mpeg:dash:schema:mpd:2011"',' xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"',' xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd"',' type="static"',` mediaPresentationDuration="${n}"`,' minBufferTime="PT1.5S"',' profiles="urn:mpeg:dash:profile:isoff-on-demand:2011">',' <Period id="1" start="PT0S">'," ",i," ",s," </Period>","</MPD>"].join(` -`)}var Spn=async e=>{try{await yC(e);let r=await _pn(e)||vxe,n=await Apn(e),i={};return r.forEach(s=>{let a=s.type_id;n&&n[a]?i[a]=n[a]:vBt[a]?i[a]=vBt[a]:i[a]=fpn()}),{class:r.map(s=>({type_id:s.type_id,type_name:s.type_name})),filters:i}}catch(t){return console.error("\u83B7\u53D6\u9996\u9875\u5931\u8D25:",t),{class:vxe.map(r=>({type_id:r.type_id,type_name:r.type_name})),filters:{}}}},wpn=async({id:e,page:t=1,filters:r={},ext:n={}})=>{let i=Math.max(1,Number.parseInt(t,10)||1),s={};if(r&&typeof r=="object"&&Object.keys(r).length>0)s=r;else if(n&&typeof n=="string")try{let l=Buffer.from(n,"base64").toString();s=JSON.parse(l)}catch{try{s=JSON.parse(n)}catch{}}let a=e,o=[];for(let l in s)l!=="order"&&l!=="duration"&&s[l]&&s[l]&&s[l].trim()!==""&&o.push(s[l].trim());o.length>0&&(o.length===1?a=o[0]:(o=[...new Set(o)],a=`(${o.join(" OR ")})`));let u="totalrank";s.order&&cpn.has(s.order)&&(u=s.order);let c=0;s.duration&&(c=Number.parseInt(s.duration,10)||0);try{await yC();let f=`https://api.bilibili.com/x/web-interface/wbi/search/type?${await Cxe({keyword:a,page:i,search_type:"video",order:u,duration:c,tids:0,page_size:uh})}`,h=(await O_.get(f)).data.data;if(!h)return console.error("\u641C\u7D22\u8FD4\u56DE\u6570\u636E\u4E3A\u7A7A"),{page:i,pagecount:1,total:0,limit:uh,list:[]};let m=h.result||[],y=h.numResults||0,g=Math.ceil(y/uh)||1,v=m.map(A=>{let _=uL(A.duration),E=Rxe(_),S=Txe(A.play||A.view||0),C=oL(A.pubdate),I=Ixe(A),N=`${E}|${S}|${C}`;return{vod_id:CBt(I,{vod_pic:aL(A.pic),vod_remarks:N||"\u65E0\u4FE1\u606F"}),vod_name:xBt(A.title),vod_pic:aL(A.pic),vod_remarks:N||"\u65E0\u4FE1\u606F",vod_time:oL(A.pubdate),vod_author:A.author||A.owner?.name||"",vod_duration:Nxe(_)}}).filter(A=>A.vod_id);return{page:i,pagecount:g,total:y,limit:uh,list:v}}catch(l){return console.error("\u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",l.message,l.stack),{page:i,pagecount:1,total:0,limit:uh,list:[]}}},Ipn=async({id:e,headers:t={}})=>{let r=ypn(e);e=r.id;try{await yC();let i=e.startsWith("BV")?{bvid:e}:{aid:e.replace("av","")},a=`https://api.bilibili.com/x/web-interface/view?${await Cxe(i)}`,u=(await O_.get(a)).data.data;if(!u)throw new Zl("\u89C6\u9891\u4FE1\u606F\u83B7\u53D6\u5931\u8D25");let c=[80];try{c=(await O_.get(`https://api.bilibili.com/x/player/playurl?avid=${u.aid}&cid=${u.cid}&qn=127&fnval=4048&fourk=1`)).data?.data?.accept_quality||c}catch{}let l=c.filter(I=>mpn.has(I)),d=l.length?l:[80],f={},p=(u.pages||[]).map(I=>({title:I.part||`P${I.page}`,cid:I.cid})),h=80;f.MP4=p.map(I=>`${I.title}$${u.bvid}_${u.aid}_${I.cid}_${h}_mp4`).join("#");let y=(t["user-agent"]||xxe||"").toLowerCase().includes("tvbox"),g=y?"mira":"dash",v=y?"(Mira)":"(Dash)";d.forEach(I=>{let T=`${ppn[I]||`${I}P`}${v}`;f[T]=p.map(k=>`${k.title}$${u.bvid}_${u.aid}_${k.cid}_${I}_${g}`).join("#")});let A=Object.keys(f).join("$$$"),_=Object.values(f).join("$$$"),E=Rxe(u.duration),S=Txe(u.stat?.view||0),C=oL(u.pubdate);return{list:[{vod_id:u.bvid,vod_name:u.title,vod_pic:r.meta?.vod_pic||aL(u.pic),vod_content:u.desc||"\u6682\u65E0\u7B80\u4ECB",vod_year:new Date(u.pubdate*1e3).getFullYear().toString(),vod_area:"\u4E2D\u56FD",vod_actor:u.owner?.name||"",vod_director:u.owner?.name||"",vod_tag:u.tname||"",vod_remarks:`${E}|${S}|${C}`,vod_play_from:A,vod_play_url:_,vod_duration:Nxe(u.duration)}]}}catch(n){throw console.error("\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25:",n),new Zl("\u83B7\u53D6\u89C6\u9891\u8BE6\u60C5\u5931\u8D25: "+n.message)}},xpn=async({wd:e,page:t=1})=>{try{if(await yC(),!e||e.trim()==="")return{page:1,pagecount:1,total:0,list:[]};let r=e.trim(),n=Math.max(1,Number.parseInt(t,10)||1),s=Array.from({length:3},(p,h)=>n+h),a=await Promise.all(s.map(async p=>{let h=await Cxe({keyword:r,page:p,search_type:"video",order:"totalrank",duration:0,tids:0,page_size:uh});return(await O_.get(`https://api.bilibili.com/x/web-interface/wbi/search/type?${h}`)).data?.data})),o=a.find(Boolean);if(!o)return{page:n,pagecount:1,total:0,list:[]};let u=new Set,c=[];for(let p of a)if(p?.result)for(let h of p.result){let m=Ixe(h);!m||u.has(m)||(u.add(m),c.push(h))}let l=c.map(p=>{let h=uL(p.duration),m=Ixe(p),y=`${Rxe(h)}|${Txe(p.play||p.view||0)}|${oL(p.pubdate)}`;return{vod_id:CBt(m,{vod_pic:aL(p.pic),vod_remarks:y||"\u65E0\u4FE1\u606F"}),vod_name:xBt(p.title),vod_pic:aL(p.pic),vod_remarks:y,vod_time:oL(p.pubdate),vod_author:p.author||p.owner?.name||"",vod_duration:Nxe(h)}}).filter(p=>p.vod_name&&p.vod_name.toLowerCase().includes(r.toLowerCase())),d=o.numResults||l.length,f=Math.max(1,Math.ceil(d/uh));return{page:n,pagecount:f,total:d,limit:uh,list:l}}catch(r){return console.error("\u641C\u7D22\u5931\u8D25:",r.message,r.stack),{page:Math.max(1,Number.parseInt(t,10)||1),pagecount:1,total:0,limit:uh,list:[]}}};async function Axe(e){let{do:t,video_url:r,audio_url:n,mode:i,duration:s}=e;if(t==="mpd"){if(!i||i!=="mira"&&i!=="dash")return[400,"text/plain",Buffer.from('Missing or invalid mode parameter. Must be "mira" or "dash"')];try{let a=r?decodeURIComponent(r):"",o=n?decodeURIComponent(n):"",u=parseFloat(s)||0,c=vpn(u),l=i==="mira"?bpn(a,o,c):Epn(a,o,c);return[200,"application/dash+xml",Buffer.from(l)]}catch(a){return console.error("proxy/mpd error:",a),[500,"text/plain",Buffer.from("MPD build error: "+a.message)]}}return[501,"text/plain",Buffer.from("Unsupported proxy action")]}var Cpn=async({id:e,flag:t,serverUrl:r})=>{try{await yC();let n=e.split("_");if(n.length!==5)throw new Zl("\u53C2\u6570\u9519\u8BEF");let[i,s,a,o,u]=n,c=`https://comment.bilibili.com/${a}.xml`;if(u==="mp4"){let l=`https://api.bilibili.com/x/player/playurl?avid=${s}&cid=${a}&qn=${o}&fnval=1&fourk=1`,f=(await O_.get(l)).data?.data?.durl?.[0];if(!f)throw new Zl("MP4 \u94FE\u63A5\u83B7\u53D6\u5931\u8D25");return{parse:0,url:f.url,header:{"User-Agent":U7,Referer:"https://www.bilibili.com"},subt:c,extra:{danmaku:c}}}if(u==="mira"||u==="dash"){let l=`https://api.bilibili.com/x/web-interface/view?bvid=${i}`,f=(await O_.get(l)).data?.data;if(!f)throw new Zl("\u83B7\u53D6\u89C6\u9891\u8BE6\u60C5\u5931\u8D25");let h=f.pages?.find(I=>String(I.cid)===String(a))?.duration,m=uL(h??f.duration),y=`https://api.bilibili.com/x/player/playurl?avid=${s}&cid=${a}&qn=${o}&fnval=4048&fourk=1`,v=(await O_.get(y))?.data?.data?.dash;if(!v)throw new Zl("\u65E0\u53EF\u7528\u7684 DASH \u6570\u636E");let A=bBt(v.video,I=>Number(I?.id)||0),_=bBt(v.audio,I=>Number(I?.bandwidth)||0);if(!A)throw new Zl("\u6CA1\u6709\u89C6\u9891\u6D41");let E=A.backup_url?.[0]||A.base_url||"",S=_&&(_.backup_url?.[0]||_.base_url)||"";if(!E)throw new Zl("\u89C6\u9891\u6D41URL\u83B7\u53D6\u5931\u8D25");return{parse:0,url:`${r}/proxy?do=mpd&mode=${u}&video_url=${encodeURIComponent(E)}`+(S?`&audio_url=${encodeURIComponent(S)}`:"")+`&duration=${m}`,header:{Referer:"https://www.bilibili.com/"},extra:{format:"application/dash+xml",duration:m,danmaku:c},subt:c}}throw new Zl("\u4E0D\u652F\u6301\u7684\u64AD\u653E\u7C7B\u578B")}catch(n){throw console.error("\u64AD\u653E\u9519\u8BEF:",n),n}},q7={meta:{key:"bili_all",name:"\u{1F3AC} \u54D4\u54E9",type:3,version:"1.0.3",author:"BiliCatpaw",description:"\u54D4\u54E9\u5927\u5168 - \u4F18\u5316\u7248\uFF0C\u652F\u6301\u641C\u7D22\u529F\u80FD\uFF0C\u9ED8\u8BA4\u5206\u7C7B\u4E3A\u7A7A\uFF0C\u4ECE\u524D\u7AEF\u52A0\u8F7D\uFF0C\u652F\u6301\u591A\u7EBF\u8DEF\u64AD\u653E\uFF0C\u65E0\u9700Cookie",homepage:"https://www.bilibili.com"},api:async e=>{e.post("/set-cookie",async(t,r)=>{let{cookie:n}=t.body||{},i=Ef.setCookie(n);if(i&&t.server?.db)try{await t.server.db.push("/bilibili_all/cookie",n.trim())}catch{}r.send({code:i?0:400,message:i?"\u8BBE\u7F6E\u6210\u529F":"\u8BBE\u7F6E\u5931\u8D25"})}),e.post("/clear-cookie",async(t,r)=>{if(Ef.clearCookie(),t.server?.db)try{await t.server.db.push("/bilibili_all/cookie","")}catch{}r.send({code:0,message:"Cookie\u5DF2\u6E05\u9664"})}),e.get("/cookie-status",async(t,r)=>{r.send({code:0,data:{user_cookie_set:Ef.hasCookie(),system_cookie_valid:Sf.isValid(),mixin_key_valid:sL.isValid(),current_user_agent:xxe||"\u672A\u68C0\u6D4B\u5230"}})}),e.post("/init",async(t,r)=>{try{await yC(t.server),r.send({code:0,message:"\u54D4\u54E9\u5927\u5168\u521D\u59CB\u5316\u5B8C\u6210"})}catch(n){console.error("\u521D\u59CB\u5316\u5931\u8D25:",n),r.send({code:500,message:"\u521D\u59CB\u5316\u5931\u8D25: "+n.message})}}),e.post("/validate-cookie",async(t,r)=>{try{let{cookie:n}=t.body||{};if(!n||n.trim().length<10)return r.send({code:400,message:"Cookie\u683C\u5F0F\u65E0\u6548",valid:!1});let i=n.trim(),s=gpn(i);try{let o=await s.get("https://api.bilibili.com/x/web-interface/nav");o.data.data.isLogin?r.send({code:0,message:"Cookie\u9A8C\u8BC1\u6210\u529F",valid:!0,data:{nickname:o.data.data.uname,face:o.data.data.face,level:o.data.data.level_info?.current_level||0,vip:o.data.data.vipType?"\u5927\u4F1A\u5458":"\u975E\u5927\u4F1A\u5458",mid:o.data.data.mid}}):r.send({code:401,message:"Cookie\u65E0\u6548\uFF0C\u672A\u767B\u5F55",valid:!1})}catch(a){console.error("API\u9A8C\u8BC1\u5931\u8D25:",a.message),r.send({code:500,message:"\u9A8C\u8BC1\u5931\u8D25: "+a.message,valid:!1})}}catch(n){console.error("\u9A8C\u8BC1Cookie\u5931\u8D25:",n),r.send({code:500,message:"\u9A8C\u8BC1\u5931\u8D25: "+n.message,valid:!1})}}),e.get("/user-info",async(t,r)=>{try{if(!Ef.hasCookie())return r.send({code:401,message:"\u672A\u8BBE\u7F6ECookie",data:null});let i=await O_.get("https://api.bilibili.com/x/web-interface/nav");i.data.data.isLogin?r.send({code:0,data:{nickname:i.data.data.uname,face:i.data.data.face,level:i.data.data.level_info?.current_level||0,vip:i.data.data.vipType?"\u5927\u4F1A\u5458":"\u975E\u5927\u4F1A\u5458",mid:i.data.data.mid,coins:i.data.data.coins||0,following:i.data.data.following||0,follower:i.data.data.follower||0}}):r.send({code:401,message:"Cookie\u5DF2\u5931\u6548",data:null})}catch(n){console.error("\u83B7\u53D6\u7528\u6237\u4FE1\u606F\u5931\u8D25:",n),r.send({code:500,message:"\u83B7\u53D6\u5931\u8D25: "+n.message,data:null})}}),e.post("/home",async(t,r)=>{try{let n=await Spn(t.server);return r.send(n)}catch(n){return console.error("\u83B7\u53D6\u9996\u9875\u5931\u8D25:",n),r.send({class:vxe.map(i=>({type_id:i.type_id,type_name:i.type_name})),filters:{}})}}),e.post("/category",async(t,r)=>{try{let n=await wpn(t.body||{});return r.send(n)}catch(n){return console.error("\u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",n),r.send({page:t.body?.page||1,pagecount:1,total:0,limit:uh,list:[]})}}),e.post("/detail",async(t,r)=>{try{let n=await Ipn({...t.body,headers:t.headers});return r.send(n)}catch(n){return console.error("\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",n),r.send({list:[]})}}),e.post("/search",async(t,r)=>{try{let n=await xpn(t.body||{});return r.send(n)}catch(n){return console.error("\u641C\u7D22\u5931\u8D25:",n),r.send({page:t.body?.page||1,pagecount:1,total:0,list:[],message:"\u641C\u7D22\u5931\u8D25: "+n.message})}}),e.post("/play",async(t,r)=>{try{let n=`${t.protocol}://${t.hostname}${t.port?":"+t.port:""}`,i=await Cpn({...t.body,serverUrl:n});return r.send(i)}catch(n){return console.error("\u64AD\u653E\u9519\u8BEF:",n),r.send({code:500,message:n.message||"\u64AD\u653E\u5931\u8D25",parse:0,url:"",header:{}})}}),e.get("/proxy",async(t,r)=>{try{let[n,i,s]=await Axe(t.query);return r.code(n).header("Content-Type",i).send(s)}catch(n){return console.error("proxy error:",n),r.code(500).send("Internal Server Error")}}),e.post("/proxy",async(t,r)=>{try{let[n,i,s]=await Axe(t.body||{});return r.code(n).header("Content-Type",i).send(s)}catch(n){return console.error("proxy error:",n),r.code(500).send("Internal Server Error")}}),e.options("*",async(t,r)=>{r.header("Access-Control-Allow-Origin","*").header("Access-Control-Allow-Methods","GET,POST,OPTIONS").header("Access-Control-Allow-Headers","Content-Type").send()})},proxy:Axe};Kt();var cc="http://www.23ts.net",NBt=12e3,TBt=3e4,RBt=30*60*1e3,Tpn=4,DBt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",bE="https://via.placeholder.com/150x200?text=No+Image",EE=3,j7=500,cL=new Map;function lL(e=cc+"/"){return{"User-Agent":DBt,Referer:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}}function ch(e){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:t.startsWith("//")?`https:${t}`:new URL(t,cc).href:""}function kBt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function Mi(e){return String(e||"").replace(/\s+/g," ").trim()}function H7(e){return new Promise(t=>setTimeout(t,e))}async function OBt(e,{retries:t=EE,delayMs:r=j7}={}){let n;for(let i=1;i<=t;i+=1)try{return await e(i)}catch(s){if(n=s,i>=t)break;await H7(r)}throw n}function PBt(e,t={}){let r={id:String(e||"").trim(),meta:{...t}};return Buffer.from(JSON.stringify(r),"utf8").toString("base64")}function Npn(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(Buffer.from(t,"base64").toString("utf8"));return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}function Rpn(){let e=Date.now();for(let[t,r]of cL.entries())(!r||e-r.ts>=RBt)&&cL.delete(t)}async function Dpn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let o=i++;if(o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>s())),n}function kpn(e,t){let r=String(e||"").trim();return r?r==="lastupdate"?t<=1?`${cc}/top/lastupdate.html`:`${cc}/top/lastupdate/${t}.html`:t<=1?`${cc}/sort/${r}.html`:`${cc}/sort/${r}/${t}.html`:`${cc}/sort/lastupdate/1.html`}async function SE(e,t=cc+"/",r=NBt){let n=await OBt(()=>_e.get(e,{headers:lL(t),timeout:r}));return typeof n.data=="string"?n.data:String(n.data||"")}async function Opn(e,t){let r=await OBt(()=>_e.post(`${cc}/search.html`,new URLSearchParams({searchtype:e,searchword:t}).toString(),{headers:{...lL(cc+"/"),"Content-Type":"application/x-www-form-urlencoded"},timeout:NBt}));return typeof r.data=="string"?r.data:String(r.data||"")}function Ppn(e){let t=[{type_id:"lastupdate",type_name:"\u6700\u8FD1\u66F4\u65B0"}],r=new Set(["lastupdate"]);return e(".nav-ol li a").each((n,i)=>{let s=e(i),a=s.attr("href")||"",o=Mi(s.text()),u=a.match(/\/sort\/([^/.]+)\.html/i);if(!u||!o||/首页|排行榜|最近更新|手机版/.test(o))return;let c=u[1];r.has(c)||(r.add(c),t.push({type_id:c,type_name:o}))}),t}function Dxe(e,t){let r=e(t),n=r.find("a[href]"),i="",s="";if(n.each((l,d)=>{let f=e(d).attr("href")||"";if(!f||!/\/tingshu\//i.test(f))return;let p=Mi(e(d).attr("title")||e(d).text());!p||/^(连载|完结|详情|播放|收听)$/.test(p)||(i=f,s=p)}),!i){let l=r.find('a[href*="/tingshu/"]').last();i=l.attr("href")||"",s=Mi(l.attr("title")||l.text())}let a=ch(i);if(!a||!/\/tingshu\//i.test(a))return null;let o=s||Mi(r.find(".tab-book-title").first().text())||Mi(r.find("h3").first().text())||"";if(!o)return null;let u=ch(r.find("img").attr("data-original")||r.find("img").attr("src")||"")||bE,c=Mi(r.find(".book-author").last().text())||Mi(r.find(".tab-book-author").first().text())||Mi(r.find(".list-book-des").first().text())||"";return{vod_id:PBt(a,{vod_pic:u,vod_remarks:c}),vod_name:o,vod_pic:u,vod_remarks:c}}function Mpn(e,t){let r=e(t),n=r.find('.z2 a[href*="/tingshu/"]').first(),i=ch(n.attr("href")||""),s=Mi(n.attr("title")||n.text());if(!i||!s)return null;let a=Mi(r.find(".z3 a").first().text()||r.find(".z3").text()),o=Mi(r.find(".z1").text()).replace(/^\[|\]$/g,""),u=Mi(r.find(".z4 em").first().text()),c=Mi(r.find(".z5").text()),l=[o,a,u,c].filter(Boolean).join(" / ");return{vod_id:PBt(i,{vod_pic:bE,vod_remarks:l}),vod_name:s,vod_pic:bE,vod_remarks:l}}async function Lpn(e){Rpn();let t=Date.now();return await Dpn(e,Tpn,async r=>{if(!r?.vod_id||r.vod_pic!==bE)return r;let n=cL.get(r.vod_id);if(n&&t-n.ts<RBt)return n.pic&&(r.vod_pic=n.pic),r;try{let i=await SE(r.vod_id,cc+"/top/lastupdate.html"),s=Jr.load(i),a=ch(s(".book-cover").attr("src")||s(".book-cover").attr("data-original")||s('meta[property="og:image"]').attr("content")||"")||bE;cL.set(r.vod_id,{pic:a,ts:Date.now()}),a&&(r.vod_pic=a)}catch{cL.set(r.vod_id,{pic:bE,ts:Date.now()})}return r}),e}function Bpn(e,t){let r=e.match(/<iframe[^>]+id=["']play["'][^>]+src=["']([^"']+)["']/i)?.[1]||e.match(/<iframe[^>]+src=["']([^"']+)["'][^>]*>/i)?.[1]||"";return r?new URL(r,t).href:""}function $pn(e){let t=String(e||""),r=t.match(/mp3\s*:\s*([^\n\r}]+)/i)?.[1]?.trim()||"",n=r.match(/https?:\/\/[^'"\s]+\.(?:mp3|m4a|aac|flac|wav)(?:\?[^'"\s]*)?/i)?.[0]||t.match(/https?:\/\/[^'"\s]+\.(?:mp3|m4a|aac|flac|wav)(?:\?[^'"\s]*)?/i)?.[0]||"";if(n)return n;let i=Object.create(null);for(let u of t.matchAll(/\b([a-zA-Z_$][a-zA-Z0-9_$]*)\s*=\s*([^;]+);/g))i[u[1]]=u[2].trim();let s=(u,c=0)=>{if(!u||c>8)return"";let l="";for(let d of u.matchAll(/'([^']*)'|"([^"]*)"|([a-zA-Z_$][a-zA-Z0-9_$]*)/g)){let f=d[1]??d[2];if(f!==void 0){l+=f;continue}let p=d[3];!p||p==="mp3"||p in i&&(l+=s(i[p],c+1))}return l.trim()},a=s(r);if(/^https?:\/\//i.test(a))return a;let o=t.match(/mp3\s*:\s*['"]([^'"]+)['"]/i)?.[1]||"";return o||a}function Fpn(e){let t=String(e||"").trim();return/^https?:\/\//i.test(t)?/\/[^/?#]+\.(?:mp3|m4a|aac|flac|wav)(?:\?[^\s]*)?$/i.test(t):!1}async function Upn(){return{}}async function qpn(){for(let e=1;e<=EE;e+=1){try{let t=await SE(cc+"/"),r=Jr.load(t),n=Ppn(r).slice(0,12),i=[];if(r("#myTab_Content1 li, ul.list-works li").each((s,a)=>{let o=Dxe(r,a);o&&i.push(o)}),n.length>0||i.length>0)return{class:n,list:i.slice(0,20)}}catch{}e<EE&&await H7(j7)}return{class:[],list:[]}}async function jpn(e){let t=e.body||{},r=String(t.id||"").trim(),n=kBt(t.page);for(let i=1;i<=EE;i+=1){try{let s=kpn(r,n),a=await SE(s),o=Jr.load(a),u=[];r==="lastupdate"?(o("ul.gengxin li").each((l,d)=>{let f=Mpn(o,d);f&&u.push(f)}),await Lpn(u)):o("ul.list-works li").each((l,d)=>{let f=Dxe(o,d);f&&u.push(f)});let c=r==="lastupdate"?o(".fanye a").toArray().some(l=>/下一页/.test(Mi(o(l).text()))||/\/top\/lastupdate\//.test(o(l).attr("href")||"")):u.length>0;if(u.length>0||n>1||r==="lastupdate")return{page:n,pagecount:c?n+1:n,limit:24,total:u.length,list:u}}catch{}i<EE&&await H7(j7)}return{page:n,pagecount:n,limit:24,total:0,list:[]}}async function Hpn(e){let t=e.body?.id,r=(Array.isArray(t)?t:[t]).filter(Boolean),n=[];for(let i of r)try{let s=Npn(i),a=ch(s.id||i),o=await SE(a),u=Jr.load(o),c=Mi(u(".book-cover").attr("alt"))||Mi(u(".book-info h1").text())||Mi(u("title").text()),l=ch(u(".book-cover").attr("src")||u(".book-cover").attr("data-original")||"")||bE,d=Mi(u(".book-des").text()),f=[];u(".book-info dd").each((m,y)=>{let g=Mi(u(y).text());g&&f.push(g)});let p=[],h=[];if(u(".playlist-top h2").each((m,y)=>{let g=Mi(u(y).text())||`\u7EBF\u8DEF${m+1}`,v=[];u(`#playlist:eq(${m}) li a, #playlist${m+1} li a`).each((A,_)=>{let E=u(_),S=Mi(E.text()),C=ch(E.attr("href")||"");S&&C&&v.push(`${S}$${C}`)}),v.length&&(h.push(g),p.push(v.join("#")))}),!p.length){let m=[];u(".book-list li a, .playlist li a").each((y,g)=>{let v=u(g),A=Mi(v.text()),_=ch(v.attr("href")||"");A&&_&&m.push(`${A}$${_}`)}),m.length&&(h.push("\u9ED8\u8BA4"),p.push(m.join("#")))}n.push({vod_id:s.id||a,vod_name:c,vod_pic:s.meta?.vod_pic||l,vod_content:d,vod_remarks:s.meta?.vod_remarks||f.slice(0,4).join(" / "),vod_play_from:h.join("$$$")||"\u9ED8\u8BA4",vod_play_url:p.join("$$$")})}catch{}return{list:n}}async function Kpn(e){let t=ch(e.body?.id||"");if(!t)return{parse:0,url:""};try{let r=await SE(t,t,TBt),n=Bpn(r,t);if(!n)return{parse:0,url:t,header:lL(t)};let i=async()=>{let a=await SE(n,t,TBt),o=ch($pn(a));return Fpn(o)?{parse:0,url:o,header:{"User-Agent":DBt,Referer:n}}:null},s=await i();if(s)return s;for(let a=0;a<3;a+=1){await new Promise(u=>setTimeout(u,500));let o=await i();if(o)return o}return{parse:0,url:n,header:lL(t)}}catch{return{parse:0,url:t,header:lL(t)}}}async function Vpn(e){let t=e.body||{},r=Mi(t.wd||""),n=kBt(t.page);if(!r)return{page:n,pagecount:n,limit:20,total:0,list:[]};for(let i=1;i<=EE;i+=1){try{let s=n<=1?await Opn("novelname",r):await SE(`${cc}/search.html?searchtype=novelname&searchword=${encodeURIComponent(r)}&page=${n}`,cc+"/"),a=Jr.load(s),o=[];if(a("ul.list-works li, .search-list li, .book-list li").each((u,c)=>{let l=Dxe(a,c);l&&o.push(l)}),o.length>0||n>1)return{page:n,pagecount:o.length>0?n+1:n,limit:20,total:o.length,list:o}}catch{}i<EE&&await H7(j7)}return{page:n,pagecount:n,limit:20,total:0,list:[]}}var MBt={meta:{key:"aishangtingshu",name:"\u{1F3A7} \u542C\u4E66",type:3,supportSearch:!0},api:async e=>{e.post("/init",Upn),e.post("/home",qpn),e.post("/category",jpn),e.post("/detail",Hpn),e.post("/play",Kpn),e.post("/search",Vpn)}};Kt();var LBt="f090bb54758cabf231fb605d3e3e0468",BBt=8e3,zpn=1e4,dL=20,UBt=6;var Qpn={home1:["\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6","\u4ECA\u5929\u64AD\u51FA\u7684\u756A\u5267","\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6","\u660E\u5929\u64AD\u51FA\u7684\u756A\u5267","\u73B0\u6B63\u70ED\u64AD","\u4EBA\u6C14 Top 10","\u65B0\u5267\u96F7\u8FBE","\u70ED\u95E8\u56FD\u6F2B","\u5DF2\u6536\u5B98\u597D\u5267"],home0:["\u534E\u8BED\u70ED\u95E8","\u672C\u5B63\u65B0\u756A","\u4ECA\u65E5\u63A8\u8350","\u56FD\u4EA7\u5267","\u65E5\u5267","\u82F1\u7F8E\u5267","\u756A\u5267","\u97E9\u5267","\u6E2F\u53F0\u5267"]},Gpn=["\u56FD\u4EA7\u5267","\u65E5\u5267","\u82F1\u7F8E\u5267","\u756A\u5267","\u97E9\u5267","\u6E2F\u53F0\u5267"],qBt=["juji_week.json","fanju_week.json","guoman_week.json","zongyi_week.json"],Ypn={todayPlay:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6",tomorrowPlay:"\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6",weekPlay:"juji_week.json",todayReCommand:"\u4ECA\u65E5\u63A8\u8350",rank:"\u73B0\u6B63\u70ED\u64AD",area:"\u56FD\u4EA7\u5267"},Wpn=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],P_={raw:{ttl:5*60*1e3,maxSize:80},parsed:{ttl:3*60*1e3,maxSize:120},category:{ttl:60*1e3,maxSize:200},tmdb:{ttl:24*60*60*1e3,maxSize:2e3}},M_={raw:new Map,rawInflight:new Map,parsed:new Map,parsedInflight:new Map,category:new Map,categoryInflight:new Map,tmdb:new Map,tmdbInflight:new Map};function $Bt(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}async function K7(e,t,r,n,i,s){let a=Date.now(),o=e.get(r);if(o&&a-o.timestamp<n)return o.data;if(t.has(r))return t.get(r);let u=(async()=>{let c=await s();return e.set(r,{data:c,timestamp:Date.now()}),$Bt(e,i),c})();t.set(r,u),$Bt(t,i);try{return await u}finally{t.get(r)===u&&t.delete(r)}}async function jBt(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let u=i++;if(u>=e.length)break;n[u]=await r(e[u],u)}},a=Math.min(t,e.length),o=new Array(a);for(let u=0;u<a;u++)o[u]=s();return await Promise.all(o),n}function Xpn(e,t){return t?.sort_by||Ypn[e]||""}function Jpn(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}var HBt={};Object.entries(Qpn).forEach(([e,t])=>{t.forEach(r=>HBt[r]=e)});async function Zpn(e,t){let r=e.server.prefix+"/device",n=await e.server.db.getObjectDefault(r,{});return n.id||(n.id=mb(32).toLowerCase(),n.ua="okhttp/4.1.0",await e.server.db.push(r,n)),{}}async function ehn(e,t){return{class:[{type_id:"todayPlay",type_name:"\u4ECA\u65E5\u64AD\u51FA"},{type_id:"tomorrowPlay",type_name:"\u660E\u65E5\u64AD\u51FA"},{type_id:"weekPlay",type_name:"\u64AD\u51FA\u5468\u5386"},{type_id:"todayReCommand",type_name:"\u4ECA\u65E5\u63A8\u8350"},{type_id:"rank",type_name:"\u5404\u9879\u699C\u5355"},{type_id:"area",type_name:"\u5730\u533A\u699C\u5355"}],filters:{todayPlay:[{key:"sort_by",name:"\u7C7B\u578B",init:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6",value:[{n:"\u5267\u96C6",v:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6"},{n:"\u756A\u5267",v:"\u4ECA\u5929\u64AD\u51FA\u7684\u756A\u5267"},{n:"\u56FD\u6F2B",v:"\u4ECA\u5929\u64AD\u51FA\u7684\u56FD\u6F2B"},{n:"\u7EFC\u827A",v:"\u4ECA\u5929\u64AD\u51FA\u7684\u7EFC\u827A"}]}],tomorrowPlay:[{key:"sort_by",name:"\u7C7B\u578B",init:"\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6",value:[{n:"\u5267\u96C6",v:"\u660E\u5929\u64AD\u51FA\u7684\u5267\u96C6"},{n:"\u756A\u5267",v:"\u660E\u5929\u64AD\u51FA\u7684\u756A\u5267"},{n:"\u56FD\u6F2B",v:"\u660E\u5929\u64AD\u51FA\u7684\u56FD\u6F2B"},{n:"\u7EFC\u827A",v:"\u660E\u5929\u64AD\u51FA\u7684\u7EFC\u827A"}]}],weekPlay:[{key:"sort_by",name:"\u7C7B\u578B",init:"juji_week.json",value:[{n:"\u5267\u96C6",v:"juji_week.json"},{n:"\u756A\u5267",v:"fanju_week.json"},{n:"\u56FD\u6F2B",v:"guoman_week.json"},{n:"\u7EFC\u827A",v:"zongyi_week.json"}]},{key:"weekday",name:"\u5468\u51E0",init:"All",value:[{n:"\u5168\u90E8",v:"All"},{n:"\u5468\u4E00",v:"Monday"},{n:"\u5468\u4E8C",v:"Tuesday"},{n:"\u5468\u4E09",v:"Wednesday"},{n:"\u5468\u56DB",v:"Thursday"},{n:"\u5468\u4E94",v:"Friday"},{n:"\u5468\u516D",v:"Saturday"},{n:"\u5468\u65E5",v:"Sunday"}]}],todayReCommand:[{key:"sort_by",name:"\u7C7B\u578B",init:"\u4ECA\u65E5\u63A8\u8350",value:[{n:"\u4ECA\u65E5\u63A8\u8350",v:"\u4ECA\u65E5\u63A8\u8350"}]}],rank:[{key:"sort_by",name:"\u7C7B\u578B",init:"\u73B0\u6B63\u70ED\u64AD",value:[{n:"\u73B0\u6B63\u70ED\u64AD",v:"\u73B0\u6B63\u70ED\u64AD"},{n:"\u4EBA\u6C14 Top 10",v:"\u4EBA\u6C14 Top 10"},{n:"\u65B0\u5267\u96F7\u8FBE",v:"\u65B0\u5267\u96F7\u8FBE"},{n:"\u70ED\u95E8\u56FD\u6F2B",v:"\u70ED\u95E8\u56FD\u6F2B"},{n:"\u5DF2\u6536\u5B98\u597D\u5267",v:"\u5DF2\u6536\u5B98\u597D\u5267"},{n:"\u534E\u8BED\u70ED\u95E8",v:"\u534E\u8BED\u70ED\u95E8"},{n:"\u672C\u5B63\u65B0\u756A",v:"\u672C\u5B63\u65B0\u756A"}]}],area:[{key:"sort_by",name:"\u5730\u533A",init:"\u56FD\u4EA7\u5267",value:[{n:"\u56FD\u4EA7\u5267",v:"\u56FD\u4EA7\u5267"},{n:"\u65E5\u5267",v:"\u65E5\u5267"},{n:"\u82F1\u7F8E\u5267",v:"\u82F1\u7F8E\u5267"},{n:"\u756A\u5267",v:"\u756A\u5267"},{n:"\u97E9\u5267",v:"\u97E9\u5267"},{n:"\u6E2F\u53F0\u5267",v:"\u6E2F\u53F0\u5267"}]}]}}}async function KBt(e){let t=e.tmdb_id||e.id;if(t&&!fL(e))try{let r=`tmdb:${t}`,n=await K7(M_.tmdb,M_.tmdbInflight,r,P_.tmdb.ttl,P_.tmdb.maxSize,async()=>{let i=`https://api.themoviedb.org/3/tv/${t}?api_key=${LBt}&language=zh-CN`,s=await _e.get(i,{timeout:BBt}).catch(()=>null);if(s?.data&&s.data.success!==!1)return s.data;let a=`https://api.themoviedb.org/3/movie/${t}?api_key=${LBt}&language=zh-CN`,o=await _e.get(a,{timeout:BBt}).catch(()=>null);return o?.data&&o.data.success!==!1?o.data:null});if(!n)return;n.poster_path&&(e.poster_path=n.poster_path),n.vote_average!==void 0&&(e.vote_average=n.vote_average),(n.first_air_date||n.release_date)&&(e.first_air_date=e.first_air_date||n.first_air_date,e.release_date=e.release_date||n.release_date),n.overview&&(e.overview=n.overview||e.overview),!e.name&&!e.title&&(n.name||n.title)&&(e.name=n.name||n.title,e.title=n.title||n.name)}catch{}}async function thn(e){return K7(M_.raw,M_.rawInflight,`raw:${e}`,P_.raw.ttl,P_.raw.maxSize,async()=>{try{let t;if(qBt.includes(e))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/${e}`;else if(e.includes("\u4ECA\u5929\u64AD\u51FA\u7684\u56FD\u6F2B")||e.includes("\u660E\u5929\u64AD\u51FA\u7684\u56FD\u6F2B"))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/guoman_${e.includes("\u4ECA\u5929")?"today":"tomorrow"}.json`;else if(e.includes("\u4ECA\u5929\u64AD\u51FA\u7684\u7EFC\u827A")||e.includes("\u660E\u5929\u64AD\u51FA\u7684\u7EFC\u827A"))t=`https://gist.githubusercontent.com/huangxd-/5ae61c105b417218b9e5bad7073d2f36/raw/zongyi_${e.includes("\u4ECA\u5929")?"today":"tomorrow"}.json`;else{let n="https://zjrl-1318856176.cos.accelerate.myqcloud.com",i=HBt[e];if(!i)return null;t=`${n}/${i}.json`}let r=await _e.get(t,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json"},timeout:zpn});return r&&r.data?r.data:null}catch(t){return console.error("fetchRawData error:",t.message),null}})}function fL(e){return e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:e.images&&e.images.poster?e.images.poster:e.cover_url?e.cover_url:e.cover?e.cover:e.pic&&e.pic.normal?e.pic.normal:""}function V7(e){if(e.vote_average!==void 0&&e.vote_average!==null&&e.vote_average!==""){let t=Number(e.vote_average);return Number.isNaN(t)?`\u8BC4\u5206: ${e.vote_average}`:`\u8BC4\u5206: ${t.toFixed(1)}`}return e.rating!==void 0?`\u8BC4\u5206: ${e.rating}`:e.t3!==void 0?`\u8BC4\u5206: ${e.t3}`:""}function z7(e){return e.release_date?e.release_date.split("-")[0]:e.first_air_date?e.first_air_date.split("-")[0]:e.year?e.year.toString():""}function Q7(e){return e.title||e.name||e.t1||""}function rhn(e,t){try{let r=e.find(i=>i.type==="category");if(!r||!r.content)return[];let n=r.content.find(i=>i.title===t);return!n||!n.data?[]:n.data.map(i=>({vod_id:i.id?.toString()||"",vod_name:Q7(i),vod_pic:fL(i),vod_remarks:V7(i),vod_year:z7(i),vod_content:i.t2||i.overview||""}))}catch(r){return console.error("parseAreaData error:",r.message),[]}}function nhn(e,t){try{let r;return t==="\u4ECA\u65E5\u63A8\u8350"?r=e.find(n=>n.type==="1s"):r=e.find(n=>n.title===t),!r||!r.content?[]:r.content.map(n=>({vod_id:n.id?.toString()||"",vod_name:Q7(n),vod_pic:fL(n),vod_remarks:V7(n),vod_year:z7(n),vod_content:n.overview||n.description||""}))}catch(r){return console.error("parseNormalData error:",r.message),[]}}async function ihn(e,t="All"){try{let r=[];return t==="All"?Wpn.forEach(i=>{e[i]&&Array.isArray(e[i])&&(r=r.concat(e[i]))}):r=e[t]||[],await jBt(r,UBt,async i=>(await KBt(i),{vod_id:i.tmdb_id?.toString()||i.id?.toString()||"",vod_name:Q7(i),vod_pic:fL(i),vod_remarks:V7(i),vod_year:z7(i),vod_content:i.overview||""}))}catch(r){return console.error("parseWeekData error:",r.message),[]}}async function shn(e){try{return Array.isArray(e)?await jBt(e,UBt,async r=>(await KBt(r),{vod_id:r.id?.toString()||r.tmdb_id?.toString()||"",vod_name:Q7(r),vod_pic:fL(r),vod_remarks:V7(r),vod_year:z7(r),vod_content:r.overview||""})):[]}catch(t){return console.error("parseOtherData error:",t.message),[]}}async function FBt(e,t="All"){let r=`parsed:${e}:${t}`;return K7(M_.parsed,M_.parsedInflight,r,P_.parsed.ttl,P_.parsed.maxSize,async()=>{try{let n=await thn(e);return n?qBt.includes(e)?ihn(n,t):(e.includes("\u56FD\u6F2B")||e.includes("\u7EFC\u827A"))&&(e.includes("\u4ECA\u5929")||e.includes("\u660E\u5929"))?shn(n):Gpn.includes(e)?rhn(n,e):nhn(n,e):[]}catch(n){return console.error("parseRawData error:",n.message),[]}})}async function ahn(e,t){let r=e.body||{},n=r.id,i=Jpn(r.page),s=r.filters||{},a=Xpn(n,s),o=s.weekday||"All";if(!n||!a)return{page:1,pagecount:1,limit:dL,total:0,list:[]};let u=`category:${n}:${a}:${o}:${i}`;return K7(M_.category,M_.categoryInflight,u,P_.category.ttl,P_.category.maxSize,async()=>{let c=[];try{n==="weekPlay"?c=await FBt(a,o):c=await FBt(a)}catch(p){console.error("category error:",p.message)}let l=(i-1)*dL,d=l+dL,f=c.slice(l,d);return{page:i,pagecount:Math.ceil(c.length/dL)||1,limit:dL,total:c.length,list:f}})}async function ohn(e,t){let r=Array.isArray(e.body.id)?e.body.id:[e.body.id],n=[];for(let i of r)n.push({vod_id:i,vod_name:`\u8FFD\u5267\u65E5\u5386\u9879\u76EE ${i}`,vod_pic:"",type_name:"\u8FFD\u5267\u65E5\u5386",vod_year:"2026",vod_area:"",vod_remarks:"\u8FFD\u5267\u65E5\u5386\u63A8\u8350",vod_actor:"",vod_director:"",vod_content:"\u8FD9\u662F\u6765\u81EA\u8FFD\u5267\u65E5\u5386\u7684\u63A8\u8350\u5185\u5BB9",vod_play_from:"\u8FFD\u5267\u65E5\u5386",vod_play_url:`\u7B2C1\u96C6$${i}`});return{list:n}}async function uhn(e,t){return{parse:0,url:"",header:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}}async function chn(e,t){return{page:1,pagecount:1,list:[]}}async function lhn(e,t){try{let r=function(o){o.statusCode&&o.statusCode==500&&console.error(o)},n=e.server.prefix,i={},s=await e.server.inject().post(`${n}/init`),a=s.json();if(i.init=a,r(a),s=await e.server.inject().post(`${n}/home`),a=s.json(),i.home=a,r(a),i.home.class&&i.home.class.length>0){let o=i.home.class.find(c=>c.type_id==="area");o&&(s=await e.server.inject().post(`${n}/category`).payload({id:o.type_id,page:1,filters:{sort_by:"\u56FD\u4EA7\u5267"}}),a=s.json(),i.area_category=a,r(a));let u=i.home.class.find(c=>c.type_id==="todayPlay");u&&(s=await e.server.inject().post(`${n}/category`).payload({id:u.type_id,page:1,filters:{sort_by:"\u4ECA\u5929\u64AD\u51FA\u7684\u5267\u96C6"}}),a=s.json(),i.today_category=a,r(a))}return s=await e.server.inject().post(`${n}/search`).payload({wd:"\u7231",page:1}),a=s.json(),i.search=a,r(a),i}catch(r){return console.error("Test error:",r),t.code(500),{err:r.message,tip:"check debug console output"}}}var VBt={meta:{key:"zhuijurili",name:"\u{1F3E0} \u65E5\u5386",type:3,indexs:1},api:async e=>{e.post("/init",Zpn),e.post("/home",ehn),e.post("/category",ahn),e.post("/detail",ohn),e.post("/play",uhn),e.post("/search",chn),e.get("/test",lhn)}};Kt();var zBt=[{moduleId:"mod_1",index:0,title:"\u{1F338} \u52A8\u6F2B\u5168\u5883\u805A\u5408",functionName:"routeAnimeOmni",params:[{name:"anime_source",title:"\u9009\u62E9\u6570\u636E\u6E90",value:"cal",belongTo:null,enumOptions:[{title:"\u{1F338} \u52A8\u6F2B Bangumi \u8FFD\u756A\u65E5\u5386",value:"cal"},{title:"\u{1F338} \u52A8\u6F2B Bilibili \u70ED\u5EA6\u699C\u5355",value:"bili"},{title:"\u{1F338} \u52A8\u6F2B Bangumi \u8FD1\u671F\u70ED\u95E8",value:"hot"},{title:"\u{1F338} \u52A8\u6F2B Bangumi \u5E74\u5B63\u5EA6\u699C",value:"rank"},{title:"\u{1F338} \u52A8\u6F2B Bangumi \u6BCF\u65E5\u653E\u9001",value:"daily"},{title:"\u{1F338} \u52A8\u6F2B TMDB \u70ED\u95E8/\u65B0\u756A",value:"tmdb"},{title:"\u{1F338} \u52A8\u6F2B AniList \u6D41\u884C\u699C\u5355",value:"anilist"},{title:"\u{1F338} \u52A8\u6F2B MAL \u6743\u5A01\u699C\u5355",value:"mal"}]},{name:"cal_day",title:"\u9009\u62E9\u65E5\u671F",value:"today",belongTo:{paramName:"anime_source",value:["cal"]},enumOptions:[{title:"\u{1F4C5} \u4ECA\u65E5\u66F4\u65B0",value:"today"},{title:"\u5468\u4E00",value:"1"},{title:"\u5468\u4E8C",value:"2"},{title:"\u5468\u4E09",value:"3"},{title:"\u5468\u56DB",value:"4"},{title:"\u5468\u4E94",value:"5"},{title:"\u5468\u516D",value:"6"},{title:"\u5468\u65E5",value:"7"}]},{name:"bili_sort",title:"\u699C\u5355\u5206\u533A",value:"1",belongTo:{paramName:"anime_source",value:["bili"]},enumOptions:[{title:"\u{1F4FA} B\u7AD9\u756A\u5267 (\u65E5\u6F2B)",value:"1"},{title:"\u{1F1E8}\u{1F1F3} B\u7AD9\u56FD\u521B (\u56FD\u6F2B)",value:"4"}]},{name:"hot_cat",title:"\u5206\u7C7B",value:"anime",belongTo:{paramName:"anime_source",value:["hot"]},enumOptions:[{title:"\u52A8\u753B",value:"anime"}]},{name:"rank_cat",title:"\u5206\u7C7B",value:"anime",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u52A8\u753B",value:"anime"},{title:"\u4E09\u6B21\u5143",value:"real"}]},{name:"rank_year",title:"\u5E74\u4EFD",value:"2026",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"2026",value:"2026"},{title:"2025",value:"2025"},{title:"2024",value:"2024"},{title:"2023",value:"2023"},{title:"2022",value:"2022"},{title:"2021",value:"2021"},{title:"2020",value:"2020"},{title:"2019",value:"2019"},{title:"2018",value:"2018"},{title:"2017",value:"2017"},{title:"2016",value:"2016"},{title:"2015",value:"2015"},{title:"2014",value:"2014"},{title:"2013",value:"2013"},{title:"2012",value:"2012"},{title:"2011",value:"2011"},{title:"2010",value:"2010"},{title:"2009",value:"2009"},{title:"2008",value:"2008"},{title:"2007",value:"2007"},{title:"2006",value:"2006"},{title:"2005",value:"2005"},{title:"2004",value:"2004"},{title:"2003",value:"2003"},{title:"2002",value:"2002"},{title:"2001",value:"2001"},{title:"2000",value:"2000"},{title:"1999",value:"1999"},{title:"1998",value:"1998"},{title:"1997",value:"1997"},{title:"1996",value:"1996"},{title:"1995",value:"1995"},{title:"1994",value:"1994"},{title:"1993",value:"1993"},{title:"1992",value:"1992"},{title:"1991",value:"1991"},{title:"1990",value:"1990"},{title:"1989",value:"1989"},{title:"1988",value:"1988"},{title:"1987",value:"1987"},{title:"1986",value:"1986"},{title:"1985",value:"1985"},{title:"1984",value:"1984"},{title:"1983",value:"1983"},{title:"1982",value:"1982"},{title:"1981",value:"1981"},{title:"1980",value:"1980"},{title:"1979",value:"1979"},{title:"1978",value:"1978"},{title:"1977",value:"1977"},{title:"1976",value:"1976"},{title:"1975",value:"1975"},{title:"1974",value:"1974"},{title:"1973",value:"1973"},{title:"1972",value:"1972"},{title:"1971",value:"1971"},{title:"1970",value:"1970"},{title:"1969",value:"1969"},{title:"1968",value:"1968"},{title:"1967",value:"1967"},{title:"1966",value:"1966"},{title:"1965",value:"1965"},{title:"1964",value:"1964"},{title:"1963",value:"1963"},{title:"1962",value:"1962"},{title:"1961",value:"1961"},{title:"1960",value:"1960"},{title:"1959",value:"1959"},{title:"1958",value:"1958"},{title:"1957",value:"1957"},{title:"1956",value:"1956"},{title:"1955",value:"1955"},{title:"1954",value:"1954"},{title:"1953",value:"1953"},{title:"1952",value:"1952"},{title:"1951",value:"1951"},{title:"1950",value:"1950"},{title:"1949",value:"1949"},{title:"1948",value:"1948"},{title:"1947",value:"1947"},{title:"1946",value:"1946"},{title:"1945",value:"1945"},{title:"1944",value:"1944"},{title:"1943",value:"1943"},{title:"1942",value:"1942"},{title:"1941",value:"1941"},{title:"1940",value:"1940"}]},{name:"rank_month",title:"\u6708\u4EFD/\u5B63\u5EA6",value:"all",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u5168\u5E74",value:"all"},{title:"\u51AC\u5B63",value:"1"},{title:"\u6625\u5B63",value:"4"},{title:"\u590F\u5B63",value:"7"},{title:"\u79CB\u5B63",value:"10"}]},{name:"rank_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"collects",belongTo:{paramName:"anime_source",value:["rank"]},enumOptions:[{title:"\u6392\u540D",value:"rank"},{title:"\u70ED\u5EA6",value:"trends"},{title:"\u6536\u85CF\u6570",value:"collects"},{title:"\u53D1\u552E\u65E5\u671F",value:"date"},{title:"\u540D\u79F0",value:"title"}]},{name:"daily_filter",title:"\u7B5B\u9009\u8303\u56F4",value:"today",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u4ECA\u65E5\u653E\u9001",value:"today"},{title:"\u672C\u5468\u4E00\u81F3\u56DB",value:"mon_thu"},{title:"\u672C\u5468\u4E94\u81F3\u65E5",value:"fri_sun"},{title:"\u6574\u5468\u653E\u9001",value:"all_week"}]},{name:"daily_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"popularity_rat_bgm",belongTo:{paramName:"anime_source",value:["daily"]},enumOptions:[{title:"\u70ED\u5EA6(\u8BC4\u5206\u4EBA\u6570)",value:"popularity_rat_bgm"},{title:"\u8BC4\u5206",value:"score_bgm_desc"},{title:"\u653E\u9001\u65E5(\u66F4\u65B0\u65E5\u671F)",value:"airdate_desc"},{title:"\u9ED8\u8BA4",value:"default"}]},{name:"tmdb_sort",title:"\u699C\u5355\u7C7B\u578B",value:"trending",belongTo:{paramName:"anime_source",value:["tmdb"]},enumOptions:[{title:"\u{1F525} \u5B9E\u65F6\u6D41\u884C (Trending)",value:"trending"},{title:"\u{1F4C5} \u6700\u65B0\u9996\u64AD (New)",value:"new"},{title:"\u{1F451} \u9AD8\u5206\u795E\u4F5C (Top Rated)",value:"top"}]},{name:"anilist_sort",title:"\u6392\u5E8F\u65B9\u5F0F",value:"TRENDING_DESC",belongTo:{paramName:"anime_source",value:["anilist"]},enumOptions:[{title:"\u{1F4C8} \u8FD1\u671F\u8D8B\u52BF (Trending)",value:"TRENDING_DESC"},{title:"\u{1F496} \u5386\u53F2\u4EBA\u6C14 (Popularity)",value:"POPULARITY_DESC"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8 (Score)",value:"SCORE_DESC"}]},{name:"mal_sort",title:"\u699C\u5355\u7C7B\u578B",value:"airing",belongTo:{paramName:"anime_source",value:["mal"]},enumOptions:[{title:"\u{1F525} \u5F53\u524D\u70ED\u64AD Top",value:"airing"},{title:"\u{1F3C6} \u5386\u53F2\u603B\u699C Top",value:"all"},{title:"\u{1F3A5} \u6700\u4F73\u5267\u573A\u7248",value:"movie"},{title:"\u{1F51C} \u5373\u5C06\u4E0A\u6620",value:"upcoming"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_2",index:1,title:"\u{1F3F7}\uFE0F \u5168\u7403\u5F71\u5267\u7C7B\u522B",functionName:"loadGenreRank",params:[{name:"sort_by",title:"\u5F71\u89C6\u7C7B\u578B",value:"all",belongTo:null,enumOptions:[{title:"\u{1F31F} \u5168\u90E8 (\u5F71+\u5267\u6DF7\u5408)",value:"all"},{title:"\u{1F3AC} \u7535\u5F71 (Movie)",value:"movie"},{title:"\u{1F4FA} \u7535\u89C6\u5267 (TV)",value:"tv"}]},{name:"genre",title:"\u9898\u6750\u6D41\u6D3E",value:"all",belongTo:null,enumOptions:[{title:"\u{1F31F} \u5168\u90E8\u9898\u6750 (All)",value:"all"},{title:"\u{1F6F8} \u79D1\u5E7B (Sci-Fi)",value:"scifi"},{title:"\u{1F50D} \u60AC\u7591 (Mystery)",value:"mystery"},{title:"\u{1F47B} \u6050\u6016 (Horror)",value:"horror"},{title:"\u{1F52A} \u72AF\u7F6A (Crime)",value:"crime"},{title:"\u{1F4A5} \u52A8\u4F5C (Action)",value:"action"},{title:"\u{1F602} \u559C\u5267 (Comedy)",value:"comedy"},{title:"\u2764\uFE0F \u7231\u60C5 (Romance)",value:"romance"},{title:"\u{1F3AD} \u5267\u60C5 (Drama)",value:"drama"},{title:"\u{1F409} \u5947\u5E7B (Fantasy)",value:"fantasy"},{title:"\u{1F3A8} \u52A8\u753B (Animation)",value:"animation"},{title:"\u{1F3A5} \u7EAA\u5F55\u7247 (Documentary)",value:"documentary"}]},{name:"region",title:"\u56FD\u5BB6/\u5730\u533A",value:"all",belongTo:null,enumOptions:[{title:"\u{1F30D} \u5168\u7403 (\u6240\u6709\u56FD\u5BB6)",value:"all"},{title:"\u{1F1E8}\u{1F1F3} \u4E2D\u56FD\u5927\u9646",value:"cn"},{title:"\u{1F1ED}\u{1F1F0} \u4E2D\u56FD\u9999\u6E2F",value:"hk"},{title:"\u{1F1F9}\u{1F1FC} \u4E2D\u56FD\u53F0\u6E7E",value:"tw"},{title:"\u{1F3EE} \u6E2F\u53F0 (\u9999\u6E2F+\u53F0\u6E7E)",value:"hktw"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"jp"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"kr"},{title:"\u{1F338} \u65E5\u97E9\u5408\u96C6",value:"jpkr"},{title:"\u{1F1F9}\u{1F1ED} \u6CF0\u56FD",value:"th"},{title:"\u{1F1F8}\u{1F1EC} \u65B0\u52A0\u5761",value:"sg"},{title:"\u{1F1F2}\u{1F1FE} \u9A6C\u6765\u897F\u4E9A",value:"my"},{title:"\u{1F1EE}\u{1F1F3} \u5370\u5EA6",value:"in"},{title:"\u{1F30F} \u4E9A\u592A\u5927\u533A",value:"apac"},{title:"\u{1F1FA}\u{1F1F8} \u7F8E\u56FD",value:"us"},{title:"\u{1F1EC}\u{1F1E7} \u82F1\u56FD",value:"gb"},{title:"\u{1F1E9}\u{1F1EA} \u5FB7\u56FD",value:"de"},{title:"\u{1F1F8}\u{1F1EA} \u745E\u5178",value:"se"},{title:"\u{1F1EA}\u{1F1FA} \u6B27\u6D32\u5168\u5883",value:"europe"},{title:"\u{1F1EA}\u{1F1F8} \u897F\u73ED\u7259",value:"es"},{title:"\u{1F1F2}\u{1F1FD} \u58A8\u897F\u54E5",value:"mx"},{title:"\u{1F483} \u897F\u8BED/\u62C9\u4E01\u7F8E\u6D32",value:"latin"}]},{name:"order_rule",title:"\u6392\u5E8F\u89C4\u5219",value:"popularity",belongTo:null,enumOptions:[{title:"\u{1F525} \u70ED\u95E8\u8D8B\u52BF",value:"popularity"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8",value:"rating"},{title:"\u{1F4C5} \u6700\u65B0\u4E0A\u7EBF",value:"time"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_3",index:2,title:"\u{1F3AC} \u5168\u80FD\u7535\u5F71\u699C\u5355",functionName:"routeMovieOmni",params:[{name:"movie_source",title:"\u699C\u5355\u6A21\u5F0F",value:"general",belongTo:null,enumOptions:[{title:"\u{1F525} \u7535\u5F71\u7EFC\u5408\u699C",value:"general"},{title:"\u{1F3C6} \u5E74\u5EA6\u6700\u4F73\u7535\u5F71",value:"yearly"},{title:"\u{1F3F7}\uFE0F \u6309\u7C7B\u578B\u63A2\u7D22\u7535\u5F71",value:"genre"}]},{name:"general_sort",title:"\u699C\u5355\u5206\u7C7B",value:"popular",belongTo:{paramName:"movie_source",value:["general"]},enumOptions:[{title:"\u{1F525} \u6D41\u884C\u8D8B\u52BF (Popular)",value:"popular"},{title:"\u2B50\uFE0F \u5386\u53F2\u9AD8\u5206 (Top Rated)",value:"top_rated"},{title:"\u{1F4B0} \u5168\u7403\u7968\u623F\u699C (Box Office)",value:"box_office"},{title:"\u{1F3C6} \u5965\u65AF\u5361\u4F73\u7247 (Oscar)",value:"oscar"}]},{name:"yearly_sort",title:"\u9009\u62E9\u5E74\u4EFD",value:"2024",belongTo:{paramName:"movie_source",value:["yearly"]},enumOptions:[{title:"2025\u5E74 \u6700\u4F73",value:"2025"},{title:"2024\u5E74 \u6700\u4F73",value:"2024"},{title:"2023\u5E74 \u6700\u4F73",value:"2023"},{title:"2022\u5E74 \u6700\u4F73",value:"2022"},{title:"2021\u5E74 \u6700\u4F73",value:"2021"},{title:"2020\u5E74 \u6700\u4F73",value:"2020"},{title:"2019\u5E74 \u6700\u4F73",value:"2019"},{title:"2018\u5E74 \u6700\u4F73",value:"2018"},{title:"2017\u5E74 \u6700\u4F73",value:"2017"},{title:"2016\u5E74 \u6700\u4F73",value:"2016"},{title:"2015\u5E74 \u6700\u4F73",value:"2015"}]},{name:"genre_sort",title:"\u9009\u62E9\u7C7B\u578B",value:"878",belongTo:{paramName:"movie_source",value:["genre"]},enumOptions:[{title:"\u{1F6F8} \u79D1\u5E7B (Sci-Fi)",value:"878"},{title:"\u{1F3AD} \u5267\u60C5 (Drama)",value:"18"},{title:"\u{1F92F} \u60AC\u7591 (Mystery)",value:"9648"},{title:"\u{1F4A5} \u52A8\u4F5C (Action)",value:"28"},{title:"\u{1F602} \u559C\u5267 (Comedy)",value:"35"},{title:"\u2764\uFE0F \u7231\u60C5 (Romance)",value:"10749"},{title:"\u{1F47B} \u6050\u6016 (Horror)",value:"27"},{title:"\u{1F52A} \u72AF\u7F6A (Crime)",value:"80"},{title:"\u{1F9D9}\u200D\u2642\uFE0F \u5947\u5E7B (Fantasy)",value:"14"},{title:"\u{1F984} \u52A8\u753B (Animation)",value:"16"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_4",index:3,title:"\u{1F4FA} \u5168\u7403\u7EFC\u827A\u9891\u9053",functionName:"loadVarietyShows",params:[{name:"sort_by",title:"\u56FD\u5BB6/\u5730\u533A",value:"cn",belongTo:null,enumOptions:[{title:"\u{1F1E8}\u{1F1F3} \u4E2D\u56FD\u5927\u9646",value:"cn"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"kr"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"jp"},{title:"\u{1F1F9}\u{1F1FC} \u4E2D\u56FD\u53F0\u6E7E",value:"tw"},{title:"\u{1F1ED}\u{1F1F0} \u4E2D\u56FD\u9999\u6E2F",value:"hk"},{title:"\u{1F1FA}\u{1F1F8} \u6B27\u7F8E\u7EFC\u5408",value:"eu_us"},{title:"\u{1F30D} \u5168\u7403\u7EFC\u5408",value:"all"}]},{name:"list_type",title:"\u6392\u64AD\u4E0E\u699C\u5355",value:"hot",belongTo:null,enumOptions:[{title:"\u{1F525} \u8FD1\u671F\u70ED\u64AD (Hot)",value:"hot"},{title:"\u{1F4C5} \u4ECA\u65E5\u66F4\u65B0 (Today)",value:"today"},{title:"\u{1F51C} \u660E\u65E5\u9884\u544A (Tomorrow)",value:"tomorrow"},{title:"\u{1F4C8} \u6D41\u884C\u8D8B\u52BF (5\u5E74\u5185\u70ED\u699C)",value:"trend"},{title:"\u2B50 \u9AD8\u5206\u795E\u7EA7 (Top Rated)",value:"top"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_5",index:4,title:"\u{1F9ED} \u5F71\u5267\u6D41\u884C\u98CE\u5411",functionName:"routeTrendsHub",params:[{name:"hub_source",title:"\u9009\u62E9\u5E73\u53F0",value:"imdb",belongTo:null,enumOptions:[{title:"\u{1F7E1} \u5F71\u5267 IMDb \u6743\u5A01\u699C\u5355",value:"imdb"},{title:"\u{1F345} \u5F71\u5267 \u70C2\u756A\u8304\u98CE\u5411\u6807",value:"rt"},{title:"\u{1F30D} \u5F71\u5267 Trakt \u8D8B\u52BF\u699C",value:"trakt"},{title:"\u{1F7E2} \u5F71\u5267 \u8C46\u74E3 \u56FD\u5185\u98CE\u5411",value:"douban"}]},{name:"imdb_sort",title:"IMDb \u699C\u5355",value:"trending_week",belongTo:{paramName:"hub_source",value:["imdb"]},enumOptions:[{title:"\u{1F4C5} \u672C\u5468\u70ED\u699C (Trending Week)",value:"trending_week"},{title:"\u{1F525} \u4ECA\u65E5\u70ED\u699C (Trending Day)",value:"trending_day"},{title:"\u{1F30A} \u6D41\u884C\u8D8B\u52BF (Popular)",value:"popular"},{title:"\u{1F48E} \u9AD8\u5206\u795E\u4F5C (Top Rated)",value:"top_rated"},{title:"\u{1F1E8}\u{1F1F3} \u56FD\u4EA7\u5267\u70ED\u5EA6(\u6A21\u62DF)",value:"china_tv"},{title:"\u{1F1E8}\u{1F1F3} \u56FD\u4EA7\u7535\u5F71\u70ED\u5EA6(\u6A21\u62DF)",value:"china_movie"}]},{name:"mediaType",title:"\u8303\u56F4 (\u4EC5\u5168\u7403\u699C\u6709\u6548)",value:"all",belongTo:{paramName:"imdb_sort",value:["trending_week","trending_day","popular","top_rated"]},enumOptions:[{title:"\u5168\u90E8 (\u5267\u96C6+\u7535\u5F71)",value:"all"},{title:"\u7535\u5F71",value:"movie"},{title:"\u5267\u96C6",value:"tv"}]},{name:"rt_sort",title:"\u70C2\u756A\u8304 \u699C\u5355",value:"rt_movies_home",belongTo:{paramName:"hub_source",value:["rt"]},enumOptions:[{title:"\u{1F3AC} \u6D41\u5A92\u4F53\u70ED\u6620",value:"rt_movies_home"},{title:"\u{1F37F} \u9662\u7EBF\u70ED\u6620",value:"rt_movies_theater"},{title:"\u{1F48E} \u6700\u4F73\u6D41\u5A92\u4F53",value:"rt_movies_best"},{title:"\u{1F4FA} \u70ED\u95E8\u5267\u96C6",value:"rt_tv_popular"},{title:"\u{1F195} \u6700\u65B0\u4E0A\u7EBF",value:"rt_tv_new"}]},{name:"trakt_sort",title:"Trakt \u699C\u5355",value:"trending",belongTo:{paramName:"hub_source",value:["trakt"]},enumOptions:[{title:"\u{1F525} \u5B9E\u65F6\u70ED\u64AD (Trending)",value:"trending"},{title:"\u{1F30A} \u6700\u53D7\u6B22\u8FCE (Popular)",value:"popular"},{title:"\u2764\uFE0F \u6700\u53D7\u671F\u5F85 (Anticipated)",value:"anticipated"}]},{name:"traktType",title:"Trakt \u7C7B\u578B",value:"all",belongTo:{paramName:"hub_source",value:["trakt"]},enumOptions:[{title:"\u5168\u90E8 (\u5267\u96C6+\u7535\u5F71)",value:"all"},{title:"\u5267\u96C6",value:"shows"},{title:"\u7535\u5F71",value:"movies"}]},{name:"db_sort",title:"\u8C46\u74E3 \u699C\u5355",value:"db_tv_cn",belongTo:{paramName:"hub_source",value:["douban"]},enumOptions:[{title:"\u{1F1E8}\u{1F1F3} \u70ED\u95E8\u56FD\u4EA7\u5267",value:"db_tv_cn"},{title:"\u{1F3A4} \u70ED\u95E8\u7EFC\u827A",value:"db_variety"},{title:"\u{1F3AC} \u70ED\u95E8\u7535\u5F71",value:"db_movie"},{title:"\u{1F1FA}\u{1F1F8} \u70ED\u95E8\u7F8E\u5267",value:"db_tv_us"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_6",index:5,title:"\u{1F500} \u5E73\u53F0\u5206\u6D41\u7247\u5E93",functionName:"loadPlatformMatrix",params:[{name:"sort_by",title:"\u5185\u5BB9\u5206\u7C7B",value:"tv_drama",belongTo:null,enumOptions:[{title:"\u{1F4FA} \u7535\u89C6\u5267",value:"tv_drama"},{title:"\u{1F3A4} \u7EFC\u827A",value:"tv_variety"},{title:"\u{1F432} \u52A8\u6F2B",value:"tv_anime"},{title:"\u{1F3AC} \u7535\u5F71",value:"movie"}]},{name:"platform",title:"\u64AD\u51FA\u5E73\u53F0",value:"2007",belongTo:null,enumOptions:[{title:"\u817E\u8BAF\u89C6\u9891",value:"2007"},{title:"\u7231\u5947\u827A",value:"1330"},{title:"\u4F18\u9177",value:"1419"},{title:"\u8292\u679CTV",value:"1631"},{title:"Bilibili",value:"1605"},{title:"Netflix",value:"213"},{title:"Disney+",value:"2739"},{title:"HBO",value:"49"},{title:"Apple TV+",value:"2552"}]},{name:"sort",title:"\u6392\u5E8F",value:"popularity.desc",belongTo:null,enumOptions:[{title:"\u{1F525} \u70ED\u5EA6\u6700\u9AD8",value:"popularity.desc"},{title:"\u{1F4C5} \u6700\u65B0\u9996\u64AD",value:"first_air_date.desc"},{title:"\u2B50 \u8BC4\u5206\u6700\u9AD8",value:"vote_average.desc"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]},{moduleId:"mod_7",index:6,title:"\u{1F947} \u6D41\u5A92\u4F53TOP10",functionName:"loadOfficialTop10",params:[{name:"sort_by",title:"\u699C\u5355\u5730\u533A",value:"united-states",belongTo:null,enumOptions:[{title:"\u{1F1FA}\u{1F1F8} \u7F8E\u56FD",value:"united-states"},{title:"\u{1F1F0}\u{1F1F7} \u97E9\u56FD",value:"south-korea"},{title:"\u{1F1F9}\u{1F1FC} \u53F0\u6E7E",value:"taiwan"},{title:"\u{1F1ED}\u{1F1F0} \u9999\u6E2F",value:"hong-kong"},{title:"\u{1F1EF}\u{1F1F5} \u65E5\u672C",value:"japan"},{title:"\u{1F1EC}\u{1F1E7} \u82F1\u56FD",value:"united-kingdom"},{title:"\u{1F30D} \u5168\u7403",value:"world"}]},{name:"platform",title:"\u6D41\u5A92\u4F53\u5E73\u53F0",value:"netflix",belongTo:null,enumOptions:[{title:"Netflix",value:"netflix"},{title:"HBO",value:"hbo"},{title:"Disney+",value:"disney"},{title:"Apple TV+",value:"apple-tv"},{title:"Amazon Prime",value:"amazon-prime"}]},{name:"mediaType",title:"\u699C\u5355\u7C7B\u578B",value:"tv",belongTo:null,enumOptions:[{title:"\u{1F4FA} \u5267\u96C6 (TV Shows)",value:"tv"},{title:"\u{1F3AC} \u7535\u5F71 (Movies)",value:"movie"}]},{name:"page",title:"\u9875\u7801",belongTo:null,enumOptions:[]}]}];var dhn="f090bb54758cabf231fb605d3e3e0468",fhn="https://raw.githubusercontent.com/MakkaPakka518/List/refs/heads/main/data/bangumi-hot.json",phn="https://api.themoviedb.org/3",hhn="https://www.themoviedb.org",JBt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",ZBt=60*1e3,mhn=10*60*1e3,ghn=128,yhn={16:"\u52A8\u753B",10759:"\u52A8\u4F5C\u5192\u9669",35:"\u559C\u5267",18:"\u5267\u60C5",14:"\u5947\u5E7B",878:"\u79D1\u5E7B",9648:"\u60AC\u7591",10749:"\u7231\u60C5",27:"\u6050\u6016",10765:"\u79D1\u5E7B\u5947\u5E7B",80:"\u72AF\u7F6A",99:"\u7EAA\u5F55\u7247",10751:"\u5BB6\u5EAD",36:"\u5386\u53F2",10402:"\u97F3\u4E50",10770:"\u7535\u89C6\u7535\u5F71",53:"\u60CA\u609A",10752:"\u6218\u4E89",37:"\u897F\u90E8",28:"\u52A8\u4F5C",12:"\u5192\u9669"},kxe=new Map,_C=new Map;function QBt(e,t=ghn,r=16){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n+=1,n>=r)break}async function Bxe(e,t,r){let n=Date.now(),i=kxe.get(e);if(i&&n-i.ts<t)return i.data;if(_C.has(e))return _C.get(e);let s=(async()=>{let a=await r();return kxe.set(e,{ts:Date.now(),data:a}),QBt(kxe),a})();_C.set(e,s),QBt(_C);try{return await s}finally{_C.get(e)===s&&_C.delete(e)}}function e3t(e){let t=Number.parseInt(e,10);return Number.isNaN(t)||t<=0?1:t}function Mxe(e=""){return String(e).replace(/[\u{1F300}-\u{1FAFF}\u{2600}-\u{27BF}]/gu,"").replace(/\s+/g," ").trim()}function yi(e,t=""){return e==null?t:String(e).trim()}function t3t(e,t){return`${hhn}/${e==="movie"?"movie":"tv"}/${t}`}async function lh(e,t={}){let r={"User-Agent":JBt,...t.headers||{}};return _e.get(e,{...t,headers:r})}async function gs(e,t={}){let r={api_key:dhn,language:"zh-CN",...t.params||{}};return(await lh(`${phn}${e}`,{...t,params:r,timeout:t.timeout||15e3}))?.data||{}}function _hn(e){return`mod_${e+1}`}function r3t(){let e=new Map;return zBt.forEach((t,r)=>{e.set(_hn(r),{...t,__index:r})}),e}function GBt(e=[]){return e.filter(t=>t&&t.name!=="page").map(t=>({key:t.name,name:t.title||t.name,init:t.value??"",showWhen:t.belongTo?{key:t.belongTo.paramName,values:Array.isArray(t.belongTo.value)?t.belongTo.value:[t.belongTo.value]}:null,value:Array.isArray(t.enumOptions)?t.enumOptions.map(r=>({n:yi(r.title||r.label||r.value),v:yi(r.value)})):[]}))}function Ahn(e){return(e.params||[]).find(t=>t&&!t.belongTo&&t.name!=="page"&&Array.isArray(t.enumOptions)&&t.enumOptions.length>1)}function vhn(e,t,r){return`${e}__${t}__${r}`}function bhn(e){let t=String(e).match(/^(mod_\d+)__([^_]+(?:_[^_]+)*)__(.+)$/);return t?{moduleId:t[1],rootParamName:t[2],rootValue:t[3]}:null}function Ehn(){let e=r3t(),t=[],r={};for(let[n,i]of e.entries()){let s=Ahn(i),a=Ihn(i,s);if(!s||!a){t.push({type_id:n,type_name:Mxe(i.title||i.functionName||n)}),r[n]=GBt(i.params||[]);continue}for(let o of s.enumOptions||[]){let u=vhn(n,s.name,yi(o.value)),c=Mxe(o.title||o.label||o.value||`${i.title}`),l={[s.name]:yi(o.value)},d=(i.params||[]).filter(f=>!f||f.name==="page"||f.name===s.name?!1:s3t(f,l));t.push({type_id:u,type_name:c}),r[u]=xhn(u,GBt(d).map(f=>({...f,showWhen:null})))}}return{classes:t,filters:r}}async function Shn(e){try{let t=await e?.db?.getObjectDefault("/config/zhuiju",{});return t&&typeof t=="object"?t:{}}catch{return{}}}function whn(e=[],t={},r={}){let n=r?.classes&&typeof r.classes=="object"?r.classes:{},s=e.map((o,u)=>{let c=n[o.type_id]||{};return{...o,type_name:yi(c.name,o.type_name)||o.type_name,__hidden:c.hidden===!0,__order:Number.isFinite(Number(c.order))?Number(c.order):u+1}}).filter(o=>!o.__hidden).sort((o,u)=>o.__order-u.__order||o.type_name.localeCompare(u.type_name,"zh-CN")).map(({__hidden:o,__order:u,...c})=>c),a={};return s.forEach(o=>{a[o.type_id]=t[o.type_id]||[]}),{classes:s,filters:a}}function Ihn(e,t){return t?!!new Set(["anime_source","movie_source","hub_source"]).has(t.name):!1}function xhn(e,t=[]){let r=Chn(e);return!r||!Object.keys(r).length?t:t.map(n=>Object.prototype.hasOwnProperty.call(r,n.key)?{...n,init:r[n.key]}:n)}function Chn(e){switch(e){case"mod_5__hub_source__imdb":return{imdb_sort:"trending_week",mediaType:"all"};case"mod_6__sort_by__movie":return{platform:"213",sort:"popularity.desc"};case"mod_7__sort_by__united-kingdom":return{platform:"netflix",mediaType:"tv"};default:return null}}function Thn(e,t=""){let r=yi(e?.tmdbId||e?.id),n=yi(e?.title,"\u672A\u547D\u540D"),i=yi(e?.subTitle||e?.genreTitle||e?.date||e?.releaseDate,t),s=yi(e?.description||e?.desc||e?.overview,"\u6682\u65E0\u7B80\u4ECB"),a=yi(e?.posterPath||e?.poster||e?.cover||e?.image),o=yi(e?.year||(e?.releaseDate||e?.date||"").slice(0,4));return{vod_id:`${e?.mediaType==="movie"?"movie":"tv"}:${r}`,vod_name:n,vod_pic:a,vod_remarks:i,vod_year:o,vod_content:s,vod_tag:yi(e?.genreTitle)}}function wf(e){if(!e||!Array.isArray(e))return"\u5F71\u89C6";let t=e.map(r=>yhn[r]).filter(Boolean);return t.length>0?t.slice(0,2).join(" / "):"\u5F71\u89C6"}function vC({id:e,tmdbId:t,type:r,title:n,date:i,poster:s,backdrop:a,genreText:o,subTitle:u,desc:c}){let l=[i,u].filter(Boolean).join(" \xB7 "),d=c?` -${c}`:` -\u6682\u65E0\u7B80\u4ECB`;return{id:String(e),tmdbId:parseInt(t,10)||parseInt(e,10),type:"tmdb",mediaType:r,title:n,genreTitle:o||(r==="tv"?"\u5267\u96C6":"\u7535\u5F71"),description:l?l+d:c||"\u6682\u65E0\u7B80\u4ECB",releaseDate:i,posterPath:s?String(s).startsWith("http")?String(s):`https://image.tmdb.org/t/p/w500${s}`:"",backdropPath:a?String(a).startsWith("http")?String(a):`https://image.tmdb.org/t/p/w780${a}`:"",subTitle:u}}function YBt(e){return yi(e).replace(/[./]/g,"-")}async function Nhn(e,t={},r={}){let n={"User-Agent":JBt,"Content-Type":"application/json",...r.headers||{}};return _e.post(e,t,{...r,headers:n})}async function hL(e,t,r){async function n(s){if(!s||typeof s!="string")return null;let a=s.replace(/第[一二三四五六七八九十\d]+[季章]/g,"").replace(/Season \d+/i,"").trim();try{let o={query:a,language:"zh-CN",include_adult:!1};r&&(o.first_air_date_year=r);let u=await gs("/search/tv",{params:o}),c=u.results||[];c.length===0&&r&&(delete o.first_air_date_year,u=await gs("/search/tv",{params:o}),c=u.results||[]);let l=c.filter(p=>Array.isArray(p.genre_ids)&&p.genre_ids.includes(16));if(l.length>0)return l.find(p=>p.poster_path)||l[0];let d={query:a,language:"zh-CN",include_adult:!1};r&&(d.primary_release_year=r),u=await gs("/search/movie",{params:d}),c=u.results||[],c.length===0&&r&&(delete d.primary_release_year,u=await gs("/search/movie",{params:d}),c=u.results||[]);let f=c.filter(p=>Array.isArray(p.genre_ids)&&p.genre_ids.includes(16));if(f.length>0)return f.find(p=>p.poster_path)||f[0]}catch{}return null}let i=await n(e);return!i&&t&&e!==t&&(i=await n(t)),i}async function Lxe(e){return Array.isArray(e)?(await Promise.all(e.map(async r=>{let n=r.name_cn||r.title||r.name,i=r.title!==n?r.title:null,s=r.releaseDate||r.description||r.air_date||r.info||"",a=yi(s).match(/(\d{4})/),o=a?a[1]:null,u=await hL(n,i,o);return u?{id:String(u.id),tmdbId:parseInt(u.id,10),type:"tmdb",mediaType:u.title?"movie":"tv",title:u.name||u.title||n,genreTitle:wf(u.genre_ids),description:u.first_air_date||u.release_date||YBt(s)||"\u5373\u5C06\u64AD\u51FA",releaseDate:u.first_air_date||u.release_date||YBt(s),posterPath:u.poster_path?`https://image.tmdb.org/t/p/w500${u.poster_path}`:"",backdropPath:u.backdrop_path?`https://image.tmdb.org/t/p/w780${u.backdrop_path}`:"",rating:u.vote_average?u.vote_average.toFixed(1):r.rating||"0.0"}:null}))).filter(Boolean):[]}var AC={airtime:Object.create(null),daily:[]},n3t={parseBangumiListItems(e){let t=lr(e||""),r=[];return t("ul#browserItemList li.item").each((n,i)=>{let s=t(i),a=s.attr("id")?.substring(5);if(!a)return;let o=s.find("h3 a.l").text().trim(),u=s.find("p.info.tip").text().trim(),c=s.find("small.fade").text().trim();r.push({id:a,title:o,info:u,rating:c})}),r},async processBangumiPage(e){try{let t=await lh(e);return this.parseBangumiListItems(t.data)}catch{return[]}},async processDailyCalendar(){try{let e=await lh("https://api.bgm.tv/calendar"),t=[];return Array.isArray(e?.data)&&e.data.forEach(r=>{r&&Array.isArray(r.items)&&r.items.forEach(n=>{n.bgm_weekday_id=r.weekday?.id,t.push(n)})}),t}catch{return[]}}};async function Rhn(e={}){let{sort_by:t="today",page:r=1}=e,n=parseInt(t,10);if(t==="today"){let i=new Date().getDay();n=i===0?7:i}try{let s=((await lh("https://api.bgm.tv/calendar")).data||[]).find(c=>c.weekday&&c.weekday.id===n);if(!s)return[];let a=20,o=s.items.slice((r-1)*a,r*a);return(await Promise.all(o.map(async c=>{let l=yi(c.name_cn||c.name).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim(),d=c.air_date?c.air_date.substring(0,4):null,f=await hL(l,c.name,d);return f?vC({id:f.id,tmdbId:f.id,type:"tv",title:f.name||f.title||c.name_cn||c.name,date:f.first_air_date||c.air_date,poster:f.poster_path,backdrop:f.backdrop_path,genreText:wf(f.genre_ids),desc:f.overview||c.summary||"\u6682\u65E0\u7B80\u4ECB"}):null}))).filter(Boolean)}catch{return[]}}async function Dhn(e={}){let t=e.category||"anime",r=parseInt(e.page||"1",10),n=20,i=(r-1)*n,s=await Bxe(`bangumi-hot:${t}`,ZBt,async()=>(await lh(fhn,{timeout:15e3}))?.data||{});return(t==="anime"?s?.hot_anime||[]:Array.isArray(s?.[t])?s[t]:[]).slice(i,i+n).map((o,u)=>{let c=yi(o.description).split(` -`),l=c.length>1?c.slice(1).join(` -`):o.description;return vC({id:o.id,tmdbId:o.tmdbId,type:o.mediaType||o.type||"tv",title:o.title,date:o.releaseDate||"",poster:o.posterPath,backdrop:o.backdropPath,genreText:o.genreTitle,subTitle:`\u{1F525} \u70ED\u5EA6 TOP ${i+u+1}`,desc:l||"\u6682\u65E0\u7B80\u4ECB"})})}async function khn(e={}){let t=e.category||"anime",r=e.year||`${new Date().getFullYear()}`,n=e.month||"all",i=e.sort||"collects",s=parseInt(e.page||"1",10),a=`airtime-${t}-${r}-${n}-${i}-${s}`;if(AC.airtime[a])return Lxe(AC.airtime[a]);let o=`https://bgm.tv/${t}/browser/airtime/${r}/${n}?sort=${i}&page=${s}`,u=await n3t.processBangumiPage(o);return AC.airtime[a]=u,Lxe(u)}async function Ohn(e={}){AC.daily.length||(AC.daily=await n3t.processDailyCalendar());let t=AC.daily||[],{filterType:r="today",specificWeekday:n="1",dailySortOrder:i="popularity_rat_bgm"}=e,s={0:7,1:1,2:2,3:3,4:4,5:5,6:6},a=[];if(r==="all_week")a=t;else{let u=new Date().getDay(),c=new Set;switch(r){case"today":c.add(s[u]);break;case"specific_day":c.add(parseInt(n,10));break;case"mon_thu":[1,2,3,4].forEach(l=>c.add(l));break;case"fri_sun":[5,6,7].forEach(l=>c.add(l));break;default:c.add(s[u])}a=t.filter(l=>l.bgm_weekday_id&&c.has(l.bgm_weekday_id))}let o=[...a];return i!=="default"&&o.sort((u,c)=>i==="popularity_rat_bgm"?(c.bgm_rating_total||0)-(u.bgm_rating_total||0):i==="score_bgm_desc"?(c.bgm_score||0)-(u.bgm_score||0):i==="airdate_desc"?new Date(c.air_date||0).getTime()-new Date(u.air_date||0).getTime():0),Lxe(o)}async function Phn(e={}){let{sort_by:t="1",page:r=1}=e,n=`https://api.bilibili.com/pgc/web/rank/list?day=3&season_type=${t}`;try{let i=await lh(n,{headers:{Referer:"https://www.bilibili.com/"}}),s=i.data?.result?.list||i.data?.data?.list||[],a=20,o=s.slice((r-1)*a,r*a);return(await Promise.all(o.map(async c=>{let l=yi(c.title).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim(),d=await hL(l,c.title,null);return d?vC({id:d.id,tmdbId:d.id,type:"tv",title:d.name||d.title,date:d.first_air_date,poster:d.poster_path,backdrop:d.backdrop_path,genreText:wf(d.genre_ids),desc:d.overview,subTitle:c.new_ep?.index_show||"\u70ED\u64AD\u4E2D"}):null}))).filter(Boolean)}catch{return[]}}async function Mhn(e={}){let{sort_by:t="trending",page:r=1}=e,n={language:"zh-CN",page:r,with_genres:"16",with_original_language:"ja"};t==="trending"?n.sort_by="popularity.desc":t==="new"?n.sort_by="first_air_date.desc":t==="top"&&(n.sort_by="vote_average.desc");try{return((await gs("/discover/tv",{params:n})).results||[]).map(s=>vC({id:s.id,tmdbId:s.id,type:"tv",title:s.name||s.title,date:s.first_air_date,poster:s.poster_path,backdrop:s.backdrop_path,genreText:wf(s.genre_ids),desc:s.overview}))}catch{return[]}}async function Lhn(e={}){let{sort_by:t="TRENDING_DESC",page:r=1}=e,n=`query ($page: Int, $perPage: Int) { Page (page: $page, perPage: $perPage) { media (sort: ${t}, type: ANIME) { title { native romaji english } averageScore seasonYear } } }`;try{let s=(await Nhn("https://graphql.anilist.co",{query:n,variables:{page:r,perPage:20}})).data?.data?.Page?.media||[];return(await Promise.all(s.map(async o=>{let u=await hL(o.title.native||o.title.romaji,o.title.english,o.seasonYear);return u?vC({id:u.id,tmdbId:u.id,type:"tv",title:u.name||u.title,date:u.first_air_date,poster:u.poster_path,backdrop:u.backdrop_path,genreText:wf(u.genre_ids),desc:u.overview}):null}))).filter(Boolean)}catch{return[]}}async function Bhn(e={}){let{sort_by:t="airing",page:r=1}=e,n={page:r};t==="airing"?n.filter="airing":t==="upcoming"&&(n.filter="upcoming");try{let s=(await lh("https://api.jikan.moe/v4/top/anime",{params:n})).data?.data||[];return(await Promise.all(s.map(async o=>{let u=await hL(o.title_japanese||o.title,o.title_english,null);return u?vC({id:u.id,tmdbId:u.id,type:"tv",title:u.name||u.title,date:u.first_air_date,poster:u.poster_path,backdrop:u.backdrop_path,genreText:wf(u.genre_ids),desc:u.overview}):null}))).filter(Boolean)}catch{return[]}}async function $hn(e){let t=e.anime_source||"cal",r={page:e.page||1};return t==="cal"?(r.sort_by=e.cal_day||"today",Rhn(r)):t==="bili"?(r.sort_by=e.bili_sort||"1",Phn(r)):t==="hot"?(r.category=e.hot_cat||"anime",Dhn(r)):t==="rank"?(r.category=e.rank_cat||"anime",r.year=e.rank_year||"2026",r.month=e.rank_month||"all",r.sort=e.rank_sort||"collects",khn(r)):t==="daily"?(r.filterType=e.daily_filter||"today",r.specificWeekday=e.daily_weekday||"1",r.dailySortOrder=e.daily_sort||"popularity_rat_bgm",Ohn(r)):t==="tmdb"?(r.sort_by=e.tmdb_sort||"trending",Mhn(r)):t==="anilist"?(r.sort_by=e.anilist_sort||"TRENDING_DESC",Lhn(r)):t==="mal"?(r.sort_by=e.mal_sort||"airing",Bhn(r)):[]}var Fhn={all:{movie:"",tv:""},scifi:{movie:"878",tv:"10765"},mystery:{movie:"9648",tv:"9648"},horror:{movie:"27",tv:"27"},crime:{movie:"80",tv:"80"},action:{movie:"28",tv:"10759"},comedy:{movie:"35",tv:"35"},romance:{movie:"10749",tv:"10749"},drama:{movie:"18",tv:"18"},fantasy:{movie:"14",tv:"10765"},animation:{movie:"16",tv:"16"},documentary:{movie:"99",tv:"99"}},Uhn={all:"",cn:"CN",hk:"HK",tw:"TW",hktw:"HK|TW",jp:"JP",kr:"KR",jpkr:"JP|KR",th:"TH",sg:"SG",my:"MY",in:"IN",apac:"CN|HK|TW|JP|KR|TH|SG|MY|IN",us:"US",gb:"GB",de:"DE",se:"SE",europe:"GB|DE|FR|IT|ES|SE|NO|DK|FI|NL|BE|CH|AT|IE",es:"ES",mx:"MX",latin:"ES|MX|AR|CO|CL|PE|VE"};function wE(e){if(!e)return null;let t=e.release_date||e.first_air_date||"";return{id:String(e.id),tmdbId:parseInt(e.id,10),type:"tmdb",mediaType:e.title?"movie":"tv",title:e.title||e.name,releaseDate:t,genreTitle:wf(e.genre_ids),subTitle:t?t.substring(0,4):"\u672A\u77E5",posterPath:e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",backdropPath:e.backdrop_path?`https://image.tmdb.org/t/p/w780${e.backdrop_path}`:"",description:`${t} -${e.overview||"\u6682\u65E0\u7B80\u4ECB"}`}}async function Oxe(e,t,r,n,i){let s=Fhn[t]?.[e]||"",a=Uhn[r]||"",u={language:"zh-CN",page:i,sort_by:n==="rating"?"vote_average.desc":n==="time"?e==="movie"?"primary_release_date.desc":"first_air_date.desc":"popularity.desc",include_adult:!1,include_video:!1};if(s&&(u.with_genres=s),a&&(u.with_origin_country=a),u["vote_count.gte"]=n==="rating"?200:10,n==="time"){let c=new Date;c.setMonth(c.getMonth()+1);let l=c.toISOString().split("T")[0];e==="movie"?u["primary_release_date.lte"]=l:u["first_air_date.lte"]=l}try{return((await gs(`/discover/${e}`,{params:u})).results||[]).map(l=>({...wE(l),_popularity:l.popularity||0,_date:l.release_date||l.first_air_date||"1970-01-01"}))}catch{return[]}}async function qhn(e={}){let t=parseInt(e.page,10)||1,r=e.sort_by||"all",n=e.genre||"all",i=e.region||"all",s=e.order_rule||"popularity";if(r==="all"){let[a,o]=await Promise.all([Oxe("movie",n,i,s,t),Oxe("tv",n,i,s,t)]);return[...a,...o].sort((c,l)=>s==="time"?new Date(l._date)-new Date(c._date):l._popularity-c._popularity).slice(0,20)}return Oxe(r,n,i,s,t)}async function jhn(e={}){let t=e.sort_by||"popular",r="/movie/popular",n={language:"zh-CN",page:e.page||1};t==="top_rated"?r="/movie/top_rated":t==="box_office"?(r="/discover/movie",n.sort_by="revenue.desc"):t==="oscar"&&(r="/discover/movie",n.with_keywords="818",n.sort_by="vote_average.desc",n["vote_count.gte"]=1e3);try{return((await gs(r,{params:n})).results||[]).map(wE).filter(Boolean)}catch{return[]}}async function Hhn(e={}){try{return((await gs("/discover/movie",{params:{language:"zh-CN",page:e.page||1,primary_release_year:e.sort_by||"2024",sort_by:"vote_average.desc","vote_count.gte":500}})).results||[]).map(wE).filter(Boolean)}catch{return[]}}async function Khn(e={}){try{return((await gs("/discover/movie",{params:{language:"zh-CN",page:e.page||1,with_genres:e.sort_by||"878",sort_by:"popularity.desc"}})).results||[]).map(wE).filter(Boolean)}catch{return[]}}async function Vhn(e={}){let t=e.movie_source||"general",r={page:e.page||1};return t==="general"?(r.sort_by=e.general_sort||"popular",jhn(r)):t==="yearly"?(r.sort_by=e.yearly_sort||"2024",Hhn(r)):t==="genre"?(r.sort_by=e.genre_sort||"878",Khn(r)):[]}async function zhn(e={}){let t=parseInt(e.page,10)||1,r=e.sort_by||"cn",n=e.list_type||"hot",i={all:"",cn:"CN",kr:"KR",jp:"JP",tw:"TW",hk:"HK",eu_us:"US|GB|DE|FR|IT|ES|CA|AU"},s={language:"zh-CN",page:t,with_genres:"10764|10767",include_adult:!1};i[r]&&(s.with_origin_country=i[r]);let a=new Date,o=a.toISOString().split("T")[0],u=new Date(a);u.setDate(u.getDate()+1);let c=u.toISOString().split("T")[0],l=new Date(a);l.setFullYear(l.getFullYear()-5),n==="today"?(s.sort_by="popularity.desc",s["air_date.gte"]=o,s["air_date.lte"]=o):n==="tomorrow"?(s.sort_by="popularity.desc",s["air_date.gte"]=c,s["air_date.lte"]=c):n==="trend"?(s.sort_by="popularity.desc",s["first_air_date.gte"]=l.toISOString().split("T")[0]):n==="top"?(s.sort_by="vote_average.desc",s["vote_count.gte"]=15):s.sort_by="popularity.desc";try{return((await gs("/discover/tv",{params:s})).results||[]).map(f=>({...wE({...f,title:f.name}),mediaType:"tv"})).filter(Boolean)}catch{return[]}}async function WBt(e,t){try{return((await gs(`/discover/${e}`,{params:t})).results||[]).map(wE).filter(Boolean)}catch{return[]}}async function Qhn(e={}){let t=e.sort_by||"tv_drama",r=e.platform||"2007",n=e.sort||"popularity.desc",i=e.page||1;if(t==="movie"&&!["213","2739","49","2552"].includes(r))return[];let a={language:"zh-CN",sort_by:n,page:i,include_adult:!1,include_null_first_air_dates:!1};if(t.startsWith("tv_"))return a.with_networks=r,t==="tv_anime"?a.with_genres="16":t==="tv_variety"?a.with_genres="10764|10767":t==="tv_drama"&&(a.without_genres="16,10764,10767"),WBt("tv",a);let o={213:"8",2739:"337",49:"1899|15",2552:"350"};return a.watch_region="US",a.with_watch_providers=o[r]||"8",WBt("movie",a)}async function Ghn(e,t,r){let n={netflix:"8",disney:"337",hbo:"1899|118","apple-tv":"350","amazon-prime":"119"},i={"united-states":"US","south-korea":"KR",taiwan:"TW","hong-kong":"HK",japan:"JP","united-kingdom":"GB",world:"US"};try{return((await gs(`/discover/${r}`,{params:{watch_region:i[t]||"US",with_watch_providers:n[e]||"8",sort_by:"popularity.desc",page:1,language:"zh-CN"}})).results||[]).slice(0,10).map((a,o)=>({...wE(a),subTitle:`TOP ${o+1}`}))}catch{return[]}}async function Yhn(e={}){return Ghn(e.platform||"netflix",e.sort_by||"united-states",e.mediaType||"tv")}function pL(e,t){if(!e)return null;let r=t||e.media_type||(e.title?"movie":"tv"),n=e.release_date||e.first_air_date||"";return{id:String(e.id),tmdbId:parseInt(e.id,10),type:"tmdb",mediaType:r,title:e.title||e.name,subTitle:n||"",description:n?`${n} -${e.overview||"\u6682\u65E0\u7B80\u4ECB"}`:e.overview||"\u6682\u65E0\u7B80\u4ECB",releaseDate:n,posterPath:e.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",backdropPath:e.backdrop_path?`https://image.tmdb.org/t/p/w780${e.backdrop_path}`:"",year:n.substring(0,4),genreTitle:wf(e.genre_ids)||(r==="tv"?"\u5267\u96C6":"\u7535\u5F71")}}async function i3t(e="trending_week",t="all",r=1){try{let n=[];if(String(e).startsWith("china_")){let a=e==="china_tv"?"tv":"movie";return((await gs(`/discover/${a}`,{params:{language:"zh-CN",page:r,sort_by:"popularity.desc",with_original_language:"zh","vote_count.gte":2}})).results||[]).map(u=>pL(u,a))}if(String(e).startsWith("trending_"))return n=((await gs(`/trending/${t==="all"?"all":t}/${e==="trending_day"?"day":"week"}`,{params:{language:"zh-CN",page:r}})).results||[]).map(u=>pL(u)),n;if(t==="all"){let[s,a]=await Promise.all([gs(`/movie/${e}`,{params:{language:"zh-CN",page:r}}),gs(`/tv/${e}`,{params:{language:"zh-CN",page:r}})]),o=(s.results||[]).map(c=>pL(c,"movie")),u=(a.results||[]).map(c=>pL(c,"tv"));return[...o,...u].slice(0,20)}return((await gs(`/${t}/${e}`,{params:{language:"zh-CN",page:r}})).results||[]).map(s=>pL(s,t))}catch{return[]}}var XBt={rt_movies_theater:"https://www.rottentomatoes.com/browse/movies_in_theaters/sort:popular?minTomato=75",rt_movies_home:"https://www.rottentomatoes.com/browse/movies_at_home/sort:popular?minTomato=75",rt_movies_best:"https://www.rottentomatoes.com/browse/movies_at_home/sort:critic_highest?minTomato=90",rt_tv_popular:"https://www.rottentomatoes.com/browse/tv_series_browse/sort:popular?minTomato=75",rt_tv_new:"https://www.rottentomatoes.com/browse/tv_series_browse/sort:newest?minTomato=75"};async function Whn(e){let t=XBt[e]||XBt.rt_movies_home;try{let r=await lh(t),n=lr(r.data||""),i=[];return n('[data-qa="discovery-media-list-item"]').each((s,a)=>{let o=n(a),u=o.find('[data-qa="discovery-media-list-item-title"]').text().trim();if(!u)return;let c=o.find("score-pairs");i.push({title:u,tomatoScore:c.attr("critics-score")||"",popcornScore:c.attr("audiencescore")||"",mediaType:String(e).includes("tv")?"tv":"movie"})}),i}catch{return[]}}async function Xhn(e,t){try{let r=yi(e.title).replace(/\s\(\d{4}\)$/,""),i=((await gs(`/search/${e.mediaType}`,{params:{query:r,language:"zh-CN"}})).results||[])[0];if(!i)return null;let s=[];e.tomatoScore&&s.push(`\u{1F345} ${e.tomatoScore}%`),e.popcornScore&&s.push(`\u{1F37F} ${e.popcornScore}%`);let a=i.first_air_date||i.release_date||"";return{id:String(i.id),tmdbId:i.id,type:"tmdb",mediaType:e.mediaType,title:`${t}. ${i.name||i.title}`,genreTitle:wf(i.genre_ids)||(e.mediaType==="movie"?"\u7535\u5F71":"\u5267\u96C6"),description:`${a} -\u539F\u540D: ${e.title}`,releaseDate:a,subTitle:s.join(" ")||"\u70C2\u756A\u8304\u8BA4\u8BC1",posterPath:i.poster_path?`https://image.tmdb.org/t/p/w500${i.poster_path}`:"",backdropPath:i.backdrop_path?`https://image.tmdb.org/t/p/w780${i.backdrop_path}`:""}}catch{return null}}async function Jhn(e,t=1){let r=await Whn(e);if(!r.length){let o=String(e).includes("tv")?"tv":"movie";return i3t("popular",o,t)}let n=15,i=(t-1)*n,s=r.slice(i,i+n);return(await Promise.all(s.map((o,u)=>Xhn(o,i+u+1)))).filter(Boolean)}async function Pxe(e,t,r,n){try{return(await lh(`https://api.trakt.tv/${e}/${t}?limit=15&page=${n}`,{headers:{"Content-Type":"application/json","trakt-api-version":"2","trakt-api-key":r}})).data||[]}catch{return[]}}async function Zhn(e="trending",t="all",r="95b59922670c84040db3632c7aac6f33704f6ffe5cbf3113a056e37cb45cb482",n=1){let i=[];if(t==="all"){let[a,o]=await Promise.all([Pxe("movies",e,r,n),Pxe("shows",e,r,n)]);i=[...a,...o].sort((u,c)=>(c.watchers||c.list_count||0)-(u.watchers||u.list_count||0))}else i=await Pxe(t,e,r,n);return i.length?(await Promise.all(i.slice(0,20).map(async(a,o)=>{let u=a.show||a.movie||a,c=a.show?"tv":"movie",l=e==="trending"?`\u{1F525} ${a.watchers||0} \u4EBA\u5728\u770B`:e==="anticipated"?`\u2764\uFE0F ${a.list_count||0} \u4EBA\u60F3\u770B`:`No. ${(n-1)*15+o+1}`;if(t==="all"&&(l=`[${c==="tv"?"\u5267":"\u5F71"}] ${l}`),!u?.ids?.tmdb)return null;try{let d=await gs(`/${c}/${u.ids.tmdb}`,{params:{language:"zh-CN"}});return{id:String(d.id),tmdbId:d.id,type:"tmdb",mediaType:c,title:d.name||d.title||u.title,genreTitle:wf((d.genres||[]).map(f=>f.id)),releaseDate:d.first_air_date||d.release_date||"",subTitle:l,description:`${d.first_air_date||d.release_date||""} -${d.overview||"\u6682\u65E0\u7B80\u4ECB"}`,posterPath:d.poster_path?`https://image.tmdb.org/t/p/w500${d.poster_path}`:"",backdropPath:d.backdrop_path?`https://image.tmdb.org/t/p/w780${d.backdrop_path}`:""}}catch{return null}}))).filter(Boolean):[]}async function emn(e,t){try{let r=yi(e).replace(/第[一二三四五六七八九十\d]+[季章]/g,"").trim();return((await gs(`/search/${t}`,{params:{query:r,language:"zh-CN"}})).results||[])[0]||null}catch{return null}}function tmn(e,t){e.id=String(t.id),e.tmdbId=t.id,e.posterPath=t.poster_path?`https://image.tmdb.org/t/p/w500${t.poster_path}`:e.posterPath,e.backdropPath=t.backdrop_path?`https://image.tmdb.org/t/p/w780${t.backdrop_path}`:"";let r=t.first_air_date||t.release_date||"";e.genreTitle=wf(t.genre_ids)||(e.mediaType==="tv"?"\u5267\u96C6":"\u7535\u5F71"),e.releaseDate=r,e.description=`${r?`${r} \xB7 `:""}${e.subTitle}${t.overview?` -${t.overview}`:` -\u6682\u65E0\u7B80\u4ECB`}`}async function rmn(e,t,r=1){let n=(r-1)*20;try{let i=Math.random().toString(36).slice(2,13),s=await lh(`https://movie.douban.com/j/search_subjects?type=${t}&tag=${encodeURIComponent(e)}&sort=recommend&page_limit=20&page_start=${n}`,{headers:{"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X)",Referer:"https://movie.douban.com/explore",Host:"movie.douban.com","X-Requested-With":"XMLHttpRequest",Cookie:`bid=${i};`}}),o=(typeof s.data=="string"?JSON.parse(s.data):s.data||{}).subjects||[];return await Promise.all(o.map(async c=>{let l={id:`db_${c.id}`,type:"tmdb",mediaType:t,title:c.title,subTitle:`\u8C46\u74E3 ${c.rate}`,description:`\u8C46\u74E3 ${c.rate} -\u6682\u65E0\u7B80\u4ECB`,genreTitle:t==="tv"?"\u5267\u96C6":"\u7535\u5F71",posterPath:c.cover},d=await emn(c.title,t);return d&&tmn(l,d),l}))}catch{return[]}}async function nmn(e={}){let t=e.hub_source||"imdb",r=e.page||1;if(t==="rt")return Jhn(e.rt_sort||"rt_movies_home",r);if(t==="imdb")return i3t(e.imdb_sort||"trending_week",e.mediaType||"all",r);if(t==="trakt")return Zhn(e.trakt_sort||"trending",e.traktType||"all",e.traktClientId,r);if(t==="douban"){let n=e.db_sort||"db_tv_cn",i="\u70ED\u95E8",s="tv";return n==="db_tv_cn"?(i="\u56FD\u4EA7\u5267",s="tv"):n==="db_variety"?(i="\u7EFC\u827A",s="tv"):n==="db_movie"?(i="\u70ED\u95E8",s="movie"):n==="db_tv_us"&&(i="\u7F8E\u5267",s="tv"),rmn(i,s,r)}return[]}async function imn(e,t){return{}}async function smn(e,t){let r=e?.query?.raw==="1"||e?.query?.raw===1||e?.query?.raw===!0,n=Ehn();if(r)return{class:n.classes,filters:n.filters};let i=await Shn(e?.server),s=whn(n.classes,n.filters,i);return{class:s.classes,filters:s.filters}}function s3t(e,t){let r=e?.belongTo;if(!r||!r.paramName)return!0;let n=t?.[r.paramName];return Array.isArray(r.value)?r.value.includes(n):n===r.value}function amn(e,t={}){let r=t.filters||{},n={};for(let s of e.params||[])!s||s.name==="page"||s.belongTo||(r[s.name]!==void 0&&r[s.name]!==""?n[s.name]=r[s.name]:s.value!==void 0&&(n[s.name]=s.value));let i=!0;for(;i;){i=!1;for(let s of e.params||[]){if(!s||s.name==="page"||!s.belongTo||!s3t(s,n))continue;let a=r[s.name]!==void 0&&r[s.name]!==""?r[s.name]:s.value;a!==void 0&&n[s.name]!==a&&(n[s.name]=a,i=!0)}}return n.page=e3t(t.page),n}async function omn(e,t){let r=e.body||{},n=yi(r.id),i=e3t(r.page);return n?Bxe(`category:${n}:${JSON.stringify(r.filters||{})}:p${i}`,ZBt,async()=>{let s=r3t(),a=bhn(n),o=a?.moduleId||n,u=s.get(o);if(!u)return{page:1,pagecount:1,limit:20,total:0,list:[]};let c=amn(u,{...r,filters:{...r.filters||{},...a?{[a.rootParamName]:a.rootValue}:{}}}),l=[];if(u.functionName==="routeAnimeOmni")l=await $hn(c);else if(u.functionName==="loadGenreRank")l=await qhn(c);else if(u.functionName==="routeMovieOmni")l=await Vhn(c);else if(u.functionName==="loadVarietyShows")l=await zhn(c);else if(u.functionName==="loadPlatformMatrix")l=await Qhn(c);else if(u.functionName==="loadOfficialTop10")l=await Yhn(c);else if(u.functionName==="routeTrendsHub")l=await nmn(c);else throw new Error(`\u672C\u5730\u5B9E\u73B0\u672A\u63A5\u5165: ${u.functionName}`);let d=Array.isArray(l)?l.filter(Boolean).filter(f=>f.type!=="text").map(f=>Thn(f,Mxe(u.title||""))):[];return{page:i,pagecount:d.length<20?i:i+1,limit:20,total:d.length,list:d}}):{page:1,pagecount:1,limit:20,total:0,list:[]}}async function umn(e,t){return Bxe(`detail:${e}:${t}`,mhn,async()=>gs(`/${e}/${t}`,{params:{append_to_response:"credits,videos,external_ids"}}))}function cmn(e,t,r){let n=e?.id||r,i=yi(e?.name||e?.title,`TMDB ${n}`),s=yi((e?.first_air_date||e?.release_date||"").slice(0,4)),a=Array.isArray(e?.origin_country)?e.origin_country.join("/"):"",o=Array.isArray(e?.credits?.cast)?e.credits.cast.slice(0,8).map(p=>p.name).join("/"):"",u=Array.isArray(e?.credits?.crew)?e.credits.crew.filter(p=>["Director","Series Director","Writer","Screenplay"].includes(p.job)).slice(0,6).map(p=>p.name).join("/"):"",c=Array.isArray(e?.genres)?e.genres.map(p=>p.name).join("/"):"",l=yi(e?.overview,"\u6682\u65E0\u7B80\u4ECB"),d=yi(e?.vote_average?`TMDB ${Number(e.vote_average).toFixed(1)}`:"TMDB"),f=t3t(t,n);return{vod_id:`${t}:${n}`,vod_name:i,vod_pic:e?.poster_path?`https://image.tmdb.org/t/p/w500${e.poster_path}`:"",type_name:c,vod_year:s,vod_area:a,vod_remarks:d,vod_actor:o,vod_director:u,vod_content:l,vod_play_from:"TMDB\u8BE6\u60C5",vod_play_url:`\u67E5\u770B\u8BE6\u60C5$${f}`}}async function lmn(e,t){let r=e.body?.id,n=Array.isArray(r)?r:[r],i=[];for(let s of n){let a=yi(s),[o,u]=a.includes(":")?a.split(":"):["tv",a],c=o==="movie"?"movie":"tv";try{let l=await umn(c,u);i.push(cmn(l,c,u))}catch(l){i.push({vod_id:a,vod_name:`TMDB ${u}`,vod_pic:"",type_name:c==="movie"?"\u7535\u5F71":"\u5267\u96C6",vod_year:"",vod_area:"",vod_remarks:"\u8BE6\u60C5\u62C9\u53D6\u5931\u8D25",vod_actor:"",vod_director:"",vod_content:l.message,vod_play_from:"TMDB\u8BE6\u60C5",vod_play_url:`\u67E5\u770B\u8BE6\u60C5$${t3t(c,u)}`})}}return{list:i}}async function dmn(e,t){try{let r=e.server.prefix,i=await(await e.server.inject().post(`${r}/home`)).json(),s=i?.class?.[0],a=null;return s&&(a=await(await e.server.inject().post(`${r}/category`).payload({id:s.type_id,page:1,filters:{}})).json()),{home:i,category:a}}catch(r){return t.code(500),{err:r.message}}}var a3t={meta:{key:"zhuiju",name:"\u{1F3E0} \u8FFD\u5267",type:3,indexs:1,ext:{configurable:!0}},api:async e=>{e.post("/init",imn),e.post("/home",smn),e.post("/category",omn),e.post("/detail",lmn),e.get("/test",dmn)}};Kt();var u3t="https://live.douyin.com",G7="",fmn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",pmn={FULL_HD1:"\u84DD\u5149",HD1:"\u8D85\u6E05",ORIGION:"\u539F\u753B",SD1:"\u6807\u6E05",SD2:"\u9AD8\u6E05"},bC=15,dh=20,c3t=async()=>{if(G7)return G7;try{let{headers:e}=await _e.get(u3t,{timeout:5e3}),n=(Array.isArray(e?.["set-cookie"])?e["set-cookie"]:[]).find(i=>typeof i=="string"&&i.includes("ttwid="))?.match(/ttwid=([^;]+)/);G7=n?n[0]:""}catch(e){console.error("[\u6296\u97F3\u76F4\u64AD] \u83B7\u53D6cookie\u5931\u8D25:",e.message)}return G7},Fxe=async()=>{let e=await c3t(),t={"User-Agent":fmn,Referer:u3t,Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9"};return e&&(t.Cookie=e),t},Uxe=()=>Date.now().toString(36)+Math.random().toString(36).substring(2,15),IE=(...e)=>e.find(t=>t!=null&&t!==""),l3t=e=>{let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1},EC=(e=1,t=0)=>({list:[],page:e,pagecount:e,limit:t,total:0}),$xe=(e,t,r)=>({list:e,page:t,pagecount:e.length>0?t+1:t,limit:r,total:e.length}),d3t=(e,t={})=>JSON.stringify({id:String(e||"").trim(),meta:{...t}}),hmn=e=>{let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}},mmn=e=>{let t=e?.room;if(!t?.id_str)return null;let n=`${e?.web_rid||t?.owner?.web_rid||t?.id_str||Uxe()}@@${t.id_str}`,i=t.cover?.url_list?.[0]||"",s=`${t.owner?.nickname||""} (\u{1F525}${t.stats?.user_count_str||t.user_count||0})`.trim();return{vod_id:d3t(n,{vod_pic:i,vod_remarks:s}),vod_name:t.title||t.owner?.nickname||"\u6296\u97F3\u76F4\u64AD",vod_pic:i,vod_remarks:s}},o3t=(e={})=>Object.entries(e).filter(([,t])=>!!t).map(([t,r])=>`${pmn[t]||t}$${r}`).join("#"),gmn=e=>{if(!e||typeof e!="object")return null;let t=[e?.lives?.rawdata,e?.lives?.raw_data,e?.live?.rawdata,e?.live_info?.rawdata,e?.aweme_info?.live_info?.rawdata,e?.data?.rawdata,e?.rawdata,e?.lives,e?.live,e?.live_info,e?.aweme_info?.live_info,e?.aweme_info,e?.data,e];for(let r of t)if(r){if(typeof r=="string"){try{let n=JSON.parse(r);if(n&&typeof n=="object")return n}catch{}continue}if(typeof r=="object")return r}return null},ymn=(e,t={})=>{if(!e||typeof e!="object")return null;let r=IE(e?.id_str,e?.room_id_str,e?.room?.id_str,e?.room?.id,e?.room_id,e?.roomId);if(!r)return null;let n=IE(e?.owner?.web_rid,e?.web_rid,e?.room?.owner?.web_rid)||Uxe(),i=IE(e?.owner?.nickname,e?.nickname,e?.room?.owner?.nickname,t?.nickname)||"\u6296\u97F3\u76F4\u64AD",s=IE(e?.title,e?.room?.title,t?.title,i),a=IE(e?.owner?.avatar_large?.url_list?.[0],e?.room?.cover?.url_list?.[0],e?.cover?.url_list?.[0],e?.cover_url)||"",o=IE(e?.room?.stats?.user_count_str,e?.user_count_str,e?.room?.user_count_str,e?.user_count),c=[IE(e?.video_feed_tag,e?.room?.partition_road_map?.[0]?.title,e?.partition?.title,t?.tag),o].filter(Boolean).join(" "),l=`${n}@@${r}`;return{vod_id:d3t(l,{vod_pic:a,vod_remarks:c}),vod_name:i,vod_pic:a,vod_remarks:c,vod_content:s}},_mn=e=>{let t=[],r=new Set,n=Array.isArray(e)?e:[];for(let i of n){let s=gmn(i),a=ymn(s,{nickname:i?.nickname,title:i?.title||i?.desc,tag:i?.search_keyword});a&&(r.has(a.vod_id)||(r.add(a.vod_id),t.push(a)))}return t},Amn=async()=>(await c3t(),{}),vmn=async()=>({class:[{type_id:"1010045$1",type_name:"\u738B\u8005"},{type_id:"101$4",type_name:"\u804A\u5929"},{type_id:"102$4",type_name:"\u97F3\u4E50"},{type_id:"103$4",type_name:"\u6E38\u620F"},{type_id:"104$4",type_name:"\u4E8C\u6B21\u5143"},{type_id:"105$4",type_name:"\u821E\u8E48"},{type_id:"106$4",type_name:"\u6587\u5316"},{type_id:"107$4",type_name:"\u751F\u6D3B"},{type_id:"108$4",type_name:"\u8FD0\u52A8"}]}),f3t=async e=>{let t=e?.body||{},r=t.id||"",n=l3t(t.page),i=bC*(n-1),[s,a]=r.split("$");if(!s||a===void 0)return EC(n,bC);let o=new URLSearchParams({aid:6383,app_name:"douyin_web",live_id:1,device_platform:"web",language:"zh-CN",browser_language:"zh-CN",browser_platform:"Win32",browser_name:"Chrome",browser_version:"120.0.0.0",partition:s,partition_type:a,count:bC,offset:i,web_rid:Uxe(),cookie_enabled:!0,screen_width:1920,screen_height:1080}),u=[`https://live.douyin.com/webcast/web/partition/detail/room/v2/?${o}`,`https://webcast.amemv.com/webcast/web/partition/detail/room/v2/?${o}`],c=await Fxe();for(let l=0;l<u.length;l++)try{let{data:d}=await _e.get(u[l],{headers:c,validateStatus:h=>h<500});if(!d||d.status_code!==0)continue;let p=(Array.isArray(d?.data?.data)?d.data.data:[]).map(mmn).filter(Boolean);return $xe(p,n,bC)}catch(d){if(console.error(`[\u6296\u97F3\u76F4\u64AD] \u7B56\u7565 ${l+1} \u5931\u8D25:`,d.message),l===u.length-1)return EC(n,bC);await new Promise(f=>setTimeout(f,500))}return EC(n,bC)},bmn=async e=>{let t=e?.body?.id,r=(Array.isArray(t)?t:[t]).filter(Boolean);if(r.length===0)return{list:[]};let n=await Fxe();return{list:(await Promise.all(r.map(async s=>{try{let a=hmn(s),o=a.id||s,[u,c]=o.split("@@");if(!u||!c)return null;let l=`https://live.douyin.com/webcast/room/web/enter/?aid=6383&app_name=douyin_web&live_id=1&device_platform=web&enter_from=web_live&browser_language=zh-CN&browser_platform=Win32&browser_name=Chrome&browser_version=120.0.0.0&web_rid=${u}&room_id_str=${c}&enter_source=&is_need_double_stream=false`,{data:d}=await _e.get(l,{headers:n}),f=d?.data?.data?.[0];if(!f)return null;let p=o3t(f?.stream_url?.flv_pull_url||{}),h=o3t(f?.stream_url?.hls_pull_url_map||{});return{vod_id:o,vod_name:f.title||f.owner?.nickname||"\u6296\u97F3\u76F4\u64AD",vod_pic:a.meta?.vod_pic||f.cover?.url_list?.[0]||"",vod_actor:f.owner?.nickname||"",vod_content:f.title||"",vod_remarks:a.meta?.vod_remarks||f.owner?.nickname||"",vod_play_from:"FLV$$$HLS",vod_play_url:`${p}$$$${h}`}}catch(a){return console.error("[\u6296\u97F3\u76F4\u64AD] \u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",a.message),null}}))).filter(Boolean)}},Emn=async e=>{let t=e?.body||{},r=l3t(t.page),i=(t.wd||"").trim();if(!i)return EC(r,dh);let s=dh*(r-1);try{let a=await Fxe();a.Referer=`https://www.douyin.com/search/${encodeURIComponent(i)}?source=switch_tab&type=live`;let o={device_platform:"webapp",aid:"6383",channel:"channel_pc_web",search_channel:"aweme_live",search_source:"switch_tab",query_correct_type:1,need_filter_settings:1,list_type:"single",keyword:i,offset:s,count:dh,os_version:10},u={device_platform:"webapp",aid:"6383",channel:"channel_pc_web",search_channel:"aweme_live",keyword:i,offset:s,count:dh,os_version:10},c=[{name:"live/search",url:`https://www.douyin.com/aweme/v1/web/live/search/?${new URLSearchParams(o).toString()}`},{name:"general/search/stream",url:`https://www.douyin.com/aweme/v1/web/general/search/stream/?${new URLSearchParams(u).toString()}`}];for(let g of c)try{let A=(await _e.get(g.url,{headers:a,timeout:1e4,validateStatus:E=>E<500})).data||{},_=_mn(A.data);if(_.length>0)return $xe(_,r,dh);if(A?.search_nil_info?.search_nil_type==="verify_check"){console.warn(`[\u6296\u97F3\u76F4\u64AD] \u641C\u7D22\u7B56\u7565 ${g.name} \u89E6\u53D1\u98CE\u63A7 verify_check\uFF0C\u51C6\u5907\u964D\u7EA7\u5206\u533A\u641C\u7D22`);break}}catch(v){console.error(`[\u6296\u97F3\u76F4\u64AD] \u641C\u7D22\u7B56\u7565 ${g.name} \u5931\u8D25:`,v.message)}console.log(`[\u6296\u97F3\u76F4\u64AD] \u5C1D\u8BD5\u964D\u7EA7\u5206\u533A\u641C\u7D22\uFF0C\u5173\u952E\u8BCD: ${i}`);let l=`https://live.douyin.com/webcast/web/partition/search/?keyword=${encodeURIComponent(i)}&aid=6383`,f=(await _e.get(l,{headers:a,timeout:1e4,validateStatus:g=>g<500})).data||{},p=Array.isArray(f?.data?.SearchResult)?f.data.SearchResult:[];if(p.length===0)return EC(r,dh);let h=[],m=new Set,y=Math.min(3,p.length);for(let g=0;g<y;g++){let v=p[g]?.partition,A=v?.id_str,_=v?.type;if(!(!A||_===void 0||_===null))try{let E=await f3t({body:{id:`${A}$${_}`,page:1}}),S=Array.isArray(E?.list)?E.list:[];for(let C of S)if(!(!C?.vod_id||m.has(C.vod_id))&&(m.add(C.vod_id),h.push({...C,vod_remarks:C.vod_remarks||v?.title||i}),h.length>=dh))break;if(h.length>=dh)break}catch(E){console.warn("[\u6296\u97F3\u76F4\u64AD] \u5206\u533A\u964D\u7EA7\u641C\u7D22\u5931\u8D25:",E.message)}}return $xe(h,r,dh)}catch(a){return console.error("[\u6296\u97F3\u76F4\u64AD] \u641C\u7D22\u5931\u8D25:",a.message),EC(r,dh)}},Smn=async e=>({parse:0,url:e?.body?.id||""}),p3t={meta:{key:"douyinlive",name:"\u{1F4FA} \u6296\u97F3",type:3},api:async e=>{e.post("/init",Amn),e.post("/home",vmn),e.post("/category",f3t),e.post("/detail",bmn),e.post("/play",Smn),e.post("/search",Emn)}};Kt();var m3t=Se(di(),1),wmn="Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15",qxe={"User-Agent":wmn,Referer:"https://m.huya.com/"},Imn={"User-Agent":"Mozilla/5.0 (Linux; Android 10; SM-G960F Build/QP1A.190711.020; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/81.0.4044.138 Mobile Safari/537.36",Referer:"https://m.huya.com/"},xmn=[{type_id:"2336",type_name:"\u738B\u8005\u8363\u8000"},{type_id:"2135",type_name:"\u4E00\u8D77\u770B"},{type_id:"2168",type_name:"\u989C\u503C"},{type_id:"1663",type_name:"\u661F\u79C0"},{type_id:"1",type_name:"\u7F51\u6E38\u7ADE\u6280"},{type_id:"2",type_name:"\u5355\u673A\u70ED\u6E38"}],jxe={SEARCH:"https://search.huya.com/search.php",CATEGORY:"https://www.huya.com/cache.php",PROFILE:"https://mp.huya.com/cache.php?m=Live&do=profileRoom&roomid="},Cmn=1e4,Tmn=1,Nmn=6,Rmn=30*1e3,Dmn=500,M0=new Map,Y7=new Map,h3t=e=>m3t.default.MD5(e).toString();function lc(e,t=0){let r=Number.parseInt(e,10);return Number.isNaN(r)?t:r}function g3t(e){let t=lc(e,1);return t<=0?1:t}function y3t(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function kmn(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}function Omn(e){return new Promise(t=>setTimeout(t,e))}async function Hxe(e,t={},r=Tmn){let n=null;for(let i=0;i<=r;i++)try{return await _e.get(e,{...t,timeout:t.timeout||Cmn})}catch(s){if(n=s,i>=r)break;await Omn(200*(i+1))}throw n}function Pmn(e){let t=M0.get(e);return t?Date.now()-t.timestamp>Rmn?(M0.delete(e),null):(M0.delete(e),M0.set(e,t),t.data):null}function Mmn(e,t){if(M0.size>=Dmn){let r=Math.min(50,M0.size),n=0;for(let i of M0.keys())if(M0.delete(i),n++,n>=r)break}M0.set(e,{data:t,timestamp:Date.now()})}async function _3t(e,t=!0){let r=String(e||"").trim();if(!r)return null;if(t){let i=Pmn(r);if(i)return i}if(Y7.has(r))return Y7.get(r);let n=(async()=>{let{data:{data:i}={}}=await Hxe(`${jxe.PROFILE}${encodeURIComponent(r)}`,{headers:qxe});return t&&i&&Mmn(r,i),i||null})();Y7.set(r,n);try{return await n}finally{Y7.delete(r)}}function Lmn(e){if(!e)return[];if(Array.isArray(e))return e;try{let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function Bmn(e,t){let r=Lmn(t);return r.length===0?`\u539F\u753B$${e}_0`:[...r].sort((i,s)=>lc(s?.iBitRate,0)-lc(i?.iBitRate,0)).map(i=>{let s=lc(i?.iBitRate,0);return`${i?.sDisplayName||(s===0?"\u539F\u753B":`${s}K`)}$${e}_${s}`}).join("#")}function $mn(e,t,r){let n=Array.isArray(e)?e:[],i=Math.max(1,Math.min(t,n.length||1)),s=new Array(n.length),a=0,o=async()=>{for(;;){let u=a++;if(u>=n.length)return;s[u]=await r(n[u],u)}};return Promise.all(Array.from({length:i},()=>o())).then(()=>s)}function Fmn(e,t){let r=t?.profileInfo||{},n=t?.liveData||{},i=t?.liveStatus,s=lc(n.totalCount||r.activityCount,0),a=r.nick||n.nick||"\u864E\u7259\u4E3B\u64AD",o=n.gameFullName||"\u672A\u77E5\u6E38\u620F",u=n.startTime?new Date(lc(n.startTime)*1e3).toLocaleString():"\u672A\u77E5";return{vod_id:e,vod_name:n.introduction||r.introduction||n.contentIntro||a,vod_pic:n.screenshot||r.avatar180||"",vod_content:`\u4E3B\u64AD\uFF1A${a} -\u6E38\u620F\uFF1A${o} -\u5728\u7EBF\uFF1A${s.toLocaleString()} -\u5F00\u64AD\uFF1A${u} -\u72B6\u6001\uFF1A${i==="ON"?"\u{1F7E2}\u76F4\u64AD\u4E2D":"\u{1F534}\u672A\u5F00\u64AD"}${n.introduction?` -\u7B80\u4ECB\uFF1A${n.introduction}`:""}`.trim(),vod_actor:`\u623F\u95F4ID: ${e}`,vod_director:"\u864E\u7259\u76F4\u64AD",vod_remarks:`${s.toLocaleString()}\u4EBA\u5728\u7EBF`,vod_year:"",vod_area:"",type_name:"\u76F4\u64AD",vod_play_from:"\u864E\u7259\u76F4\u64AD",vod_play_url:Bmn(e,n.bitRateInfo)}}var Umn=async()=>({}),qmn=async()=>({class:xmn,filters:{}}),jmn=async e=>{let t=String(e.body?.wd||"").trim(),r=g3t(e.body?.page);if(!t)return{page:1,pagecount:1,limit:0,total:0,list:[]};let n=(r-1)*20,i=new URLSearchParams({m:"Search",do:"getSearchContent",q:t,uid:"0",v:"4",typ:"-5",start:String(n),rows:"20"});try{let{data:s}=await Hxe(`${jxe.SEARCH}?${i.toString()}`,{headers:qxe}),a=s?.response?.["1"]?.docs||[],o=a.map(u=>({vod_id:y3t(u.room_id||u.game_channel||"",{vod_pic:u.game_avatarUrl180||u.game_avatarUrl52||"",vod_remarks:`${lc(u.game_activityCount,0)}\u4EBA\u5728\u7EBF${u.gameLiveOn?" \u{1F7E2}":" \u{1F534}"}`}),vod_name:u.game_nick||u.game_name||"\u864E\u7259\u76F4\u64AD",vod_pic:u.game_avatarUrl180||u.game_avatarUrl52||"",vod_remarks:`${lc(u.game_activityCount,0)}\u4EBA\u5728\u7EBF${u.gameLiveOn?" \u{1F7E2}":" \u{1F534}"}`,vod_content:u.live_intro||u.recommended_text||""}));return{page:r,pagecount:a.length>=20?r+1:r,limit:o.length,total:o.length?9999:0,list:o}}catch(s){return console.error("[\u864E\u7259\u76F4\u64AD] \u641C\u7D22\u5931\u8D25:",s.message),{page:1,pagecount:1,limit:0,total:0,list:[]}}},Hmn=async e=>{let t=String(e.body?.id||"").trim(),r=g3t(e.body?.page);if(!t)return{page:r,pagecount:0,limit:0,total:0,list:[]};let n=new URLSearchParams({m:"LiveList",do:"getLiveListByPage",gameId:t,tagAll:"0",page:String(r)});try{let{data:{data:i={}}={}}=await Hxe(`${jxe.CATEGORY}?${n.toString()}`,{headers:qxe}),s=i.datas||[];return{page:lc(i.page,r),pagecount:lc(i.totalPage,999),limit:s.length,total:s.length?9999:0,list:s.map(a=>({vod_id:y3t(a.profileRoom||"",{vod_pic:a.screenshot||"",vod_remarks:`${lc(a.totalCount,0)}\u4EBA\u5728\u7EBF`}),vod_name:a.roomName||a.nick||"\u864E\u7259\u76F4\u64AD",vod_pic:a.screenshot||"",vod_remarks:`${lc(a.totalCount,0)}\u4EBA\u5728\u7EBF`}))}}catch(i){return console.error("[\u864E\u7259\u76F4\u64AD] \u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",i.message),{page:r,pagecount:0,limit:0,total:0,list:[]}}},Kmn=async e=>{let r=(Array.isArray(e.body?.id)?e.body.id:[e.body?.id]).map(i=>kmn(i)).filter(i=>i.id);return{list:(await $mn(r,Nmn,async({id:i,meta:s})=>{try{let a=await _3t(i,!0);if(!a)throw new Error("\u65E0\u6570\u636E");let o=Fmn(i,a);return o.vod_pic=s?.vod_pic||o.vod_pic,o.vod_remarks=s?.vod_remarks||o.vod_remarks,o}catch(a){return console.error(`[\u864E\u7259\u76F4\u64AD] \u8BE6\u60C5\u5931\u8D25 [${i}]:`,a.message),{vod_id:i,vod_name:"\u864E\u7259\u76F4\u64AD",vod_pic:"",vod_content:"\u76F4\u64AD\u95F4\u4FE1\u606F\u83B7\u53D6\u5931\u8D25",vod_actor:`\u623F\u95F4ID: ${i}`,vod_director:"\u864E\u7259\u76F4\u64AD",vod_remarks:"",vod_year:"",vod_area:"",type_name:"\u76F4\u64AD",vod_play_from:"\u864E\u7259\u76F4\u64AD",vod_play_url:`\u539F\u753B$${i}_0`}}})).filter(Boolean)}},Vmn=async e=>{let t=String(e.body?.id||"").trim(),[r,n]=t.split("_"),i=String(r||"").trim(),s=String(lc(n,0));if(!i)return{parse:0,url:""};try{let a=await _3t(i,!0);if(!a?.stream?.baseSteamInfoList?.length)return{parse:0,url:""};let o=a.stream.baseSteamInfoList.find(A=>A?.sCdnType==="AL")||a.stream.baseSteamInfoList[0],u=o?.sStreamName,c=o?.sFlvUrl;if(!u||!c)return{parse:0,url:""};let l=new URL(c.startsWith("http")?c:`http://${c}`).hostname,d=String(a.profileInfo?.uid||"0"),f=`${lc(d,0)+Date.now()}`,p="huya_adr",h="102",m=Math.floor(Date.now()/1e3+21600).toString(16),y=h3t(`${f}|${p}|${h}`),g=h3t(`DWq8BcJ3h6DJt6TY_${d}_${u}_${y}_${m}`),v=new URLSearchParams({wsSecret:g,wsTime:m,ctype:p,seqid:f,uid:d,fs:"bgct",ver:"1",t:h,ratio:s});return{parse:0,url:`https://${l}/src/${u}.flv?${v.toString()}`,header:Imn}}catch(a){return console.error("[\u864E\u7259\u76F4\u64AD] \u89E3\u6790\u5931\u8D25:",a.message),{parse:0,url:""}}},A3t={meta:{key:"HuyaLive",name:"\u{1F4FA} \u864E\u7259",type:3},api:async e=>{e.post("/init",Umn),e.post("/home",qmn),e.post("/category",Hmn),e.post("/detail",Kmn),e.post("/play",Vmn),e.post("/search",jmn)}};Kt();var dc=Se(di(),1),J7="https://m.yichengwlkj.com",zmn="https://api.rrmj.plus",Kxe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36",Vxe="https://i2.100024.xyz/2024/01/13/pptcej.webp",W7="BA21A0F5-7C57-41BA-8665-B7164A131832",Qmn="ES513W0B1CsdUrR13Qk5EgDAKPeeKZY",Gmn="3b744389882a4067",Ymn="b1da7878016e4e2b",Wmn=200,L0=new Map,X7=new Map,v3t={home:5*60*1e3,category:90*1e3,detail:5*60*1e3,search:60*1e3},E3t=new Set(["hot","new","score","season_new"]);function Xmn(e,t="category"){let r=L0.get(e);if(!r)return null;let n=v3t[t]||v3t.category;return Date.now()-r.ts>n?(L0.delete(e),null):(L0.delete(e),L0.set(e,r),r.data)}function Jmn(e,t){if(L0.size>=Wmn){let r=Math.min(40,L0.size),n=0;for(let i of L0.keys())if(L0.delete(i),n+=1,n>=r)break}L0.set(e,{ts:Date.now(),data:t})}function B0(e){return Array.isArray(e)?e:[]}function Zmn(e){if(Array.isArray(e))return e.map(r=>String(r||"").trim()).filter(Boolean);let t=String(e||"").trim();return t?[t]:[]}function e0n(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function t0n(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function Or(e=""){return String(e||"").trim()}function r0n(e){let t=dc.default.HmacSHA256(e,Qmn);return dc.default.enc.Base64.stringify(t)}function n0n(e,t={},r="GET"){let n=Date.now().toString(),i=Object.keys(t).sort().map(u=>`${u}=${t[u]}`).join("&"),s=i?`${e}?${i}`:e,a=[r.toUpperCase(),`aliId:${W7}`,"ct:web_pc","cv:1.0.0",`t:${n}`,s].join(` -`),o=r0n(a);return{Accept:"application/json, text/plain, */*","User-Agent":Kxe,Origin:J7,Referer:J7,aliId:W7,clientType:"web_pc",clientVersion:"1.0.0",ct:"web_pc",cv:"1.0.0",deviceId:W7,t:n,token:"",uet:"9",umid:W7,"x-ca-sign":o}}function i0n(e){if(e==null)return null;if(typeof e=="object")return e;let t=String(e).trim();if(!t)return null;try{return JSON.parse(t)}catch{}try{let r=t.replace(/\s/g,""),n=dc.default.enc.Utf8.parse(Gmn),s=dc.default.AES.decrypt(r,n,{mode:dc.default.mode.ECB,padding:dc.default.pad.Pkcs7}).toString(dc.default.enc.Utf8);return s?JSON.parse(s):null}catch{return null}}function s0n(e,t){try{let r=String(e||"").trim(),n=String(t||"");if(!r||n.length<20)return"";let i=n.substring(4,20),s=dc.default.enc.Utf8.parse(i),a=dc.default.enc.Utf8.parse(Ymn);return dc.default.AES.decrypt(r,s,{iv:a,mode:dc.default.mode.CBC,padding:dc.default.pad.Pkcs7}).toString(dc.default.enc.Utf8)}catch{return""}}async function a0n(e,{method:t="GET",params:r={},data:n=null,timeout:i=1e4}={}){let s=n0n(e,r,t),a={method:t,url:`${zmn}${e}`,headers:s,timeout:i};return t.toUpperCase()==="GET"?a.params=r:a.data=n||r,(await _e(a))?.data}async function mL(e,{method:t="GET",params:r={},data:n=null,timeout:i=1e4,cacheKey:s="",cacheType:a="category"}={}){if(s){let c=Xmn(s,a);if(c)return c}let o=s||`${t}:${e}:${JSON.stringify(r)}:${JSON.stringify(n)}`;if(X7.has(o))return X7.get(o);let u=(async()=>{let c=await a0n(e,{method:t,params:r,data:n,timeout:i}),l=i0n(c);return s&&l&&Jmn(s,l),l})();X7.set(o,u);try{return await u}finally{X7.delete(o)}}function o0n(e="hot"){let t=E3t.has(e)?e:"hot";return[{key:"area",name:"\u5730\u533A",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"\u5E74\u4EFD",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"sort",name:"\u6392\u5E8F",init:t,value:[{n:"\u6700\u70ED",v:"hot"},{n:"\u6700\u65B0",v:"new"},{n:"\u597D\u8BC4",v:"score"}]},{key:"type",name:"\u7C7B\u578B",init:"",value:[{n:"\u5168\u90E8",v:""}]}]}function u0n(e){let t=String(e?.dramaId||e?.id||"").trim();if(!t)return null;let n=[Or(e?.year),Or(e?.score),Or(e?.newestEpisodeDesc)].filter(Boolean).join(" "),i=Or(e?.coverUrl||e?.cover||Vxe),s=n||Or(e?.playStatus||"");return{vod_id:e0n(t,{vod_pic:i,vod_remarks:s}),vod_name:Or(e?.title||e?.name||"\u4EBA\u4EBA\u89C6\u9891"),vod_pic:i,vod_remarks:s}}function b3t(e=""){return String(e||"").toLowerCase().replace(/\s+/g," ").trim()}function c0n(e,t,r){let n=b3t(t);return n?e.filter(i=>b3t(r(i)).includes(n)):e}async function l0n(){return{}}async function d0n(e,t){try{let r=await mL("/m-station/drama/get_drama_filter",{method:"GET",cacheKey:"rrmj:home",cacheType:"home",timeout:8e3}),n=[],i={},s=B0(r?.data),a=[];for(let o of s)if(B0(o?.dramaFilterItemList).length>0){a=o.dramaFilterItemList;break}a.length===0&&(a=B0(r?.data?.dramaFilterItemList));for(let o of a){let u=Or(o?.displayName),c=Or(o?.value);!u||!c||u==="\u5168\u90E8"||(n.push({type_id:c,type_name:u}),i[c]=o0n(c))}return{class:n,filters:i}}catch{return{class:[],filters:{}}}}async function f0n(e,t){let r=e.body||{},n=Or(r.id),i=Math.max(parseInt(r.page,10)||1,1),s=r.filters||{},a=E3t.has(n),o=Or(s.sort||(a?n:"hot")),u=Or(a?s.type||"":n||s.type||""),c={area:Or(s.area),sort:o||"hot",year:Or(s.year),dramaType:u,plotType:Or(s.plotType),contentLabel:Or(s.contentLabel),page:i,rows:30},l=`rrmj:category:${n}:${i}:${JSON.stringify(c)}`;try{let d=await mL("/m-station/drama/drama_filter_search",{method:"POST",params:c,data:c,cacheKey:l,cacheType:"category"}),p=(B0(d?.data?.list).length>0?d.data.list:B0(d?.data)).map(u0n).filter(Boolean),h=parseInt(d?.data?.total,10),m=parseInt(d?.data?.rows,10)||30,y=Number.isNaN(h)?p.length:h,g=Number.isNaN(h)?p.length>=m?i+1:i:Math.max(1,Math.ceil(y/m));return{page:i,pagecount:g,limit:m,total:y,list:p}}catch{return{page:i,pagecount:i,limit:30,total:0,list:[]}}}async function p0n(e,t){let r=Zmn(e.body?.id);if(r.length===0)return{list:[]};let n=t0n(r[0]),i=n.id;if(!i)return{list:[]};let s={hsdrOpen:"0",isAgeLimit:"0",dramaId:i,quality:"AI4K",hevcOpen:"0",tria4k:"1"},a=`rrmj:detail:${i}`;try{let u=(await mL("/m-station/drama/page",{method:"GET",params:s,cacheKey:a,cacheType:"detail"}))?.data||{},c=u?.dramaInfo||u?.drama||{},d=B0(u?.episodeList).map((p,h)=>{let m=Or(p?.id||p?.episodeSid);return m?`${Or(p?.episodeNo||p?.title||p?.name||`\u7B2C${h+1}\u96C6`)}$${i}@${m}`:""}).filter(Boolean);return{list:[{vod_id:i,vod_name:Or(c?.title||c?.name||"\u4EBA\u4EBA\u89C6\u9891"),vod_pic:n.meta?.vod_pic||Or(c?.coverUrl||c?.cover||Vxe),vod_content:Or(c?.introduction||c?.desc||""),vod_remarks:n.meta?.vod_remarks||Or(c?.playStatus||""),vod_year:Or(c?.year||""),vod_area:Or(c?.area||""),vod_director:Or(c?.director||""),vod_actor:Or(c?.actor||""),vod_play_from:"\u4EBA\u4EBA\u4E13\u7EBF",vod_play_url:d.join("#")}]}}catch{return{list:[]}}}async function h0n(e,t){let r=Or(e.body?.id);if(!r||!r.includes("@"))return{parse:1,url:"",header:{}};let[n,i]=r.split("@"),s={dramaId:Or(n),episodeSid:Or(i),hevcOpen:"0",hsdrOpen:"0",quality:"AI4K",tria4k:"1"};try{let a=await mL("/m-station/drama/play",{method:"GET",params:s,timeout:12e3}),o=Or(a?.data?.m3u8?.url||a?.data?.playUrl),u=Or(a?.data?.newSign),c=s0n(o,u)||o;if(!c)return{parse:1,url:"",header:{}};let l=c;try{l=(await _e.get(c,{headers:{"User-Agent":Kxe,Referer:J7},maxRedirects:0,timeout:5e3,validateStatus:f=>f>=200&&f<400}))?.headers?.location||c}catch{l=c}return{parse:0,url:l,header:{"User-Agent":Kxe,Referer:J7}}}catch{return{parse:1,url:"",header:{}}}}async function m0n(e,t){let r=Math.max(parseInt(e.body?.page,10)||1,1),n=Or(e.body?.wd);if(!n)return{page:r,pagecount:1,limit:20,total:0,list:[]};let i={keywords:n,size:"20",searchAfter:r>1?String((r-1)*20):""},s=`rrmj:search:${n}:${r}`;try{let a=await mL("/search/comprehensive/precise-mixed",{method:"GET",params:i,cacheKey:s,cacheType:"search",timeout:1e4}),o=a?.data||{},u=B0(o?.fuzzySeasonList).length>0?o.fuzzySeasonList:B0(o?.list).length>0?o.list:B0(a?.data),l=c0n(u,n,h=>h?.title||h?.name||"").map(h=>({vod_id:Or(h?.id||h?.dramaId),vod_name:Or(h?.title||h?.name||"\u4EBA\u4EBA\u89C6\u9891"),vod_pic:Or(h?.cover||h?.coverUrl||Vxe),vod_remarks:Or(h?.year||h?.subtitle||"")})).filter(h=>h.vod_id),d=parseInt(o?.total,10),f=(Number.isNaN(d),l.length),p=Number.isNaN(d)?l.length>=20?r+1:r:Math.max(1,Math.ceil(l.length/20));return{page:r,pagecount:p,limit:20,total:f,list:l}}catch{return{page:r,pagecount:r,limit:20,total:0,list:[]}}}var S3t={meta:{key:"rrmj",name:"\u{1F3AC} \u4EBA\u4EBA",type:3,supportSearch:!0},api:async e=>{e.post("/init",l0n),e.post("/home",d0n),e.post("/category",f0n),e.post("/detail",p0n),e.post("/play",h0n),e.post("/search",m0n)}};Kt();var zxe=Se(di(),1),x3t="https://m.douyu.com",$0="https://www.douyu.com",w3t="10000000000000000000000000001501",Qxe="Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1",g0n={"User-Agent":Qxe,Referer:`${x3t}/`,Accept:"application/json, text/plain, */*"},y0n=[{type_id:"LOL",type_name:"\u7F51\u6E38\u7ADE\u6280"},{type_id:"TVgame",type_name:"\u5355\u673A\u70ED\u6E38"},{type_id:"wzry",type_name:"\u624B\u6E38\u4F11\u95F2"},{type_id:"yz",type_name:"\u989C\u503C"},{type_id:"smkj",type_name:"\u79D1\u6280\u6587\u5316"},{type_id:"yiqiwan",type_name:"\u8BED\u97F3\u4E92\u52A8"},{type_id:"yyzs",type_name:"\u8BED\u97F3\u76F4\u64AD"},{type_id:"znl",type_name:"\u6B63\u80FD\u91CF"},{type_id:"yqk",type_name:"\u5A31\u4E50\u5929\u5730"}],Z7=20,gL=20,_0n=20*1e3,SC=new Map;function C3t(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function F0(e,t=0){let r=Number.parseInt(e,10);return Number.isFinite(r)?r:t}function T3t(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function A0n(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}function v0n(e){return new Promise(t=>setTimeout(t,e))}async function _L(e,t={},r=1){let n=null;for(let i=0;i<=r;i++)try{return(await _e({url:e,method:t.method||"GET",headers:t.headers||g0n,data:t.data,timeout:t.timeout||15e3,responseType:t.responseType,validateStatus:a=>a>=200&&a<500})).data}catch(s){n=s,i<r&&await v0n(300*(i+1))}throw n}function b0n(e={}){let t=String(e.rid||"").trim();if(!t)return null;let r=e.roomSrc||e.avatar||"",n=[`\u{1F525}${e.hn||0}`,e.nickname||""].filter(Boolean).join(" | ");return{vod_id:T3t(t,{vod_pic:r,vod_remarks:n}),vod_name:e.roomName||e.nickname||`\u6597\u9C7C\u76F4\u64AD\u95F4 ${t}`,vod_pic:r,vod_remarks:n}}function E0n(e){let t=SC.get(e);return t?Date.now()-t.timestamp>_0n?(SC.delete(e),null):t.data:null}function S0n(e,t){if(SC.size>=200){let r=SC.keys().next().value;r&&SC.delete(r)}SC.set(e,{data:t,timestamp:Date.now()})}function N3t(e){return Array.isArray(e)?[...e].map(t=>({rate:F0(t?.rate,0),bit:F0(t?.bit,0),name:String(t?.name||"").trim()})).sort((t,r)=>r.bit!==t.bit?r.bit-t.bit:t.rate-r.rate):[]}function R3t(e,t=""){let r=new Set,n=[];if(Array.isArray(e))for(let s of e){let a=String(s?.cdn||"").trim();!a||r.has(a)||(r.add(a),n.push({cdn:a,name:String(s?.name||a).trim()}))}let i=String(t||"").trim();return i&&!r.has(i)&&n.push({cdn:i,name:i}),n}function I3t(e,t,r=""){let n=r?`@${r}`:"";return`${e}_${t}${n}`}function w0n(e,t){let r=t?.multirates,n=N3t(r),i=R3t(t?.cdnsWithName,t?.rtmp_cdn),a=(i.length>0?i:[{cdn:"",name:"\u6597\u9C7C\u76F4\u64AD"}]).slice(0,2).map((o,u)=>{let c=o.name||`\u7EBF\u8DEF${u+1}`,l=(n.length===0?[`\u539F\u753B$${I3t(e,0,o.cdn)}`]:n.map(d=>`${d.name||(d.rate===0?"\u539F\u753B":`${d.rate}`)}$${I3t(e,d.rate,o.cdn)}`)).join("#");return{from:c,url:l}});return{from:a.map(o=>o.from).join("$$$"),url:a.map(o=>o.url).join("$$$")}}async function yL(e,t=null,r=""){let n=`${e}:${t??"auto"}:${r||"auto"}`,i=E0n(n);if(i)return i;let s=Math.floor(Date.now()/1e3),a=await _L(`${$0}/wgapi/livenc/liveweb/websec/getEncryption?did=${w3t}`,{headers:{"User-Agent":Qxe,Referer:`${$0}/${e}`,Accept:"application/json, text/plain, */*"},timeout:12e3});if(a?.error!==0||!a?.data)throw new Error("\u83B7\u53D6\u6597\u9C7C\u52A0\u5BC6\u53C2\u6570\u5931\u8D25");let o=a.data,u=o.rand_str||"",c=F0(o.enc_time,0);for(let p=0;p<c;p++)u=zxe.default.MD5(u+o.key).toString();let l=zxe.default.MD5(u+o.key+e+s).toString(),d=new URLSearchParams({v:"22032021",did:w3t,tt:String(s),auth:l,enc_data:o.enc_data});t!=null&&String(t).trim()!==""&&d.set("rate",String(t)),r&&d.set("cdn",r);let f=await _L(`${$0}/lapi/live/getH5PlayV1/${e}`,{method:"POST",data:d.toString(),headers:{"User-Agent":Qxe,Referer:`${$0}/${e}`,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*"},timeout:12e3});if(f?.error!==0||!f?.data?.rtmp_url||!f?.data?.rtmp_live)throw new Error("\u83B7\u53D6\u6597\u9C7C\u6D41\u5730\u5740\u5931\u8D25");return S0n(n,f.data),f.data}async function I0n(e,t=null,r=""){if(t!=null&&String(t).trim()!=="")return await yL(e,t,r);let n=await yL(e),s=N3t(n?.multirates)[0]?.rate,a=r||R3t(n?.cdnsWithName,n?.rtmp_cdn)[0]?.cdn||"",o=F0(n?.rate,-1),u=String(n?.rtmp_cdn||"").trim();if((s===void 0||o===s)&&(!a||u===a))return n;try{return await yL(e,s,a)}catch{if(a&&u!==a)try{return await yL(e,t,a)}catch{return n}return n}}async function x0n(){return{}}async function C0n(){return{class:y0n,filters:{}}}async function T0n(e){let t=String(e.body?.id||"").trim(),r=C3t(e.body?.page);if(!t)return{page:r,pagecount:r,limit:Z7,total:0,list:[]};try{let n=await _L(`${x3t}/api/room/list?page=${r}&type=${encodeURIComponent(t)}`),s=(Array.isArray(n?.data?.list)?n.data.list:[]).map(b0n).filter(Boolean),a=Math.max(r,F0(n?.data?.pageCount,r));return{page:F0(n?.data?.nowPage,r),pagecount:a,limit:Math.max(s.length,Z7),total:a>0?a*Math.max(s.length,Z7):s.length,list:s}}catch(n){return console.error("[\u6597\u9C7C\u76F4\u64AD] \u5206\u7C7B\u5931\u8D25:",n.message),{page:r,pagecount:r,limit:Z7,total:0,list:[]}}}async function N0n(e){let t=String(e.body?.wd||"").trim(),r=C3t(e.body?.page);if(!t)return{page:r,pagecount:r,limit:gL,total:0,list:[]};try{let n=await _L(`${$0}/japi/search/api/searchUser?kw=${encodeURIComponent(t)}&page=${r}&pageSize=${gL}`,{headers:{"User-Agent":"Mozilla/5.0",Referer:`${$0}/`,Accept:"application/json, text/plain, */*"},timeout:12e3}),a=(Array.isArray(n?.data?.relateUser)?n.data.relateUser:[]).map(c=>c?.anchorInfo).filter(c=>c?.rid).map(c=>({vod_id:T3t(String(c.rid||"").trim(),{vod_pic:c.roomSrc||c.avatar||"",vod_remarks:[c.cateName||"",c.followerCount||c.fansNumStr||"",F0(c.isLive,0)===1?"\u76F4\u64AD\u4E2D":""].filter(Boolean).join(" | ")}),vod_name:c.nickName||c.roomName||`\u6597\u9C7C\u76F4\u64AD\u95F4 ${c.rid}`,vod_pic:c.roomSrc||c.avatar||"",vod_remarks:[c.cateName||"",c.followerCount||c.fansNumStr||"",F0(c.isLive,0)===1?"\u76F4\u64AD\u4E2D":""].filter(Boolean).join(" | ")})).filter(c=>c.vod_id),o=F0(n?.data?.total,a.length),u=Math.max(r,Math.ceil(o/gL)||1);return{page:r,pagecount:u,limit:gL,total:o,list:a}}catch(n){return console.error("[\u6597\u9C7C\u76F4\u64AD] \u641C\u7D22\u5931\u8D25:",n.message),{page:r,pagecount:r,limit:gL,total:0,list:[]}}}async function R0n(e){let r=(Array.isArray(e.body?.id)?e.body.id:[e.body?.id]).map(i=>A0n(i)).filter(i=>i.id);return r.length===0?{list:[]}:{list:await Promise.all(r.map(async({id:i,meta:s})=>{let a=`\u6597\u9C7C\u76F4\u64AD\u95F4 ${i}`,o="",u="\u6597\u9C7C\u76F4\u64AD",c="\u6597\u9C7C\u76F4\u64AD",l=`\u539F\u753B$${i}_0`;try{let d=await _L(`${$0}/betard/${encodeURIComponent(i)}`,{headers:{"User-Agent":"Mozilla/5.0",Referer:`${$0}/${i}`,Accept:"application/json, text/plain, */*"},timeout:1e4},0),f=d?.room||d?.data?.room||{},p=d?.owner||d?.data?.owner||{};a=f.room_name||p.nickname||a,o=f.room_src||p.avatar||"",u=f.show_details||f.room_name||u}catch{}try{let d=await yL(i),f=w0n(i,d);c=f.from,l=f.url}catch{}return{vod_id:i,vod_name:a,vod_pic:s?.vod_pic||o,vod_remarks:s?.vod_remarks||"\u6597\u9C7C\u76F4\u64AD",vod_content:u,vod_play_from:c,vod_play_url:l}}))}}async function D0n(e){let t=String(e.body?.id||"").trim(),[r,n]=t.split("@"),i=r.lastIndexOf("_"),s=i>0&&/^\d+$/.test(r.slice(i+1)),a=s?r.slice(0,i):r,o=s?r.slice(i+1):null,u=String(n||"").trim();if(!a)return{parse:0,url:""};try{let c=await I0n(a,o,u),l=`${c.rtmp_url}/${c.rtmp_live}`,d={"User-Agent":"Mozilla/5.0",Referer:`${$0}/`};return{parse:0,url:l,header:d,headers:d}}catch(c){return console.error("[\u6597\u9C7C\u76F4\u64AD] \u89E3\u6790\u5931\u8D25:",c.message),{parse:0,url:""}}}var D3t={meta:{key:"douyu",name:"\u{1F4FA} \u6597\u9C7C",type:3},api:async e=>{e.post("/init",x0n),e.post("/home",C0n),e.post("/category",T0n),e.post("/detail",R0n),e.post("/play",D0n),e.post("/search",N0n)}};Kt();var ez="https://fy-musicbox-api.mu-jie.cc",k0n={Host:"fy-musicbox-api.mu-jie.cc",Connection:"keep-alive",Pragma:"no-cache","Cache-Control":"no-cache","sec-ch-ua-platform":'"Windows"',"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 Edg/129.0.0.0","sec-ch-ua":'"Microsoft Edge";v="129", "Not=A?Brand";v="8", "Chromium";v="129"',"sec-ch-ua-mobile":"?0",Accept:"*/*",Origin:"https://mu-jie.cc","Sec-Fetch-Site":"same-site","Sec-Fetch-Mode":"cors","Sec-Fetch-Dest":"empty",Referer:"https://mu-jie.cc/","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"},AL=20;function k3t(e){return Buffer.from(JSON.stringify(e||{}),"utf8").toString("base64")}function O0n(e){try{return JSON.parse(Buffer.from(String(e||""),"base64").toString("utf8"))}catch{return null}}function P0n(e){return`playlist@@${k3t(e)}`}function M0n(e){return`song@@${k3t(e)}`}function L0n(e){let[t,r]=String(e||"").split("@@");if(!t||!r)return null;let n=O0n(r);return n?{type:t,payload:n}:null}function O3t(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}async function vL(e,t={}){return await _e({url:e,method:t.method||"GET",headers:t.headers||k0n,timeout:t.timeout||15e3,data:t.data,maxRedirects:t.maxRedirects,validateStatus:t.validateStatus||(r=>r>=200&&r<500)})}function B0n(e={}){let t=String(e.url||"").trim();return t?{name:e.name||"\u64AD\u653E",id:t}:null}function $0n(e){return Array.isArray(e)?e:Array.isArray(e?.result?.songs)?e.result.songs:Array.isArray(e?.songs)?e.songs:[]}async function F0n(){return{}}async function U0n(){try{let e=await vL(`${ez}/getPlaylistCategory`),t=[],r=Array.isArray(e.data)?e.data[0]:null,n=Array.isArray(r?.category)?r.category:[];for(let i of n){let s=Array.isArray(i?.sub)?i.sub:[];for(let a of s){let o=String(a?.name||"").trim();o&&t.push({type_id:o,type_name:o})}}return{class:t,filters:{}}}catch(e){return console.error("[\u67AB\u53F6\u97F3\u4E50] \u9996\u9875\u5931\u8D25:",e.message),{class:[],filters:{}}}}async function q0n(e){let t=String(e.body?.id||"").trim(),r=O3t(e.body?.page);if(!t)return{page:r,pagecount:r,limit:60,total:0,list:[]};try{let n=await vL(`${ez}/netease/playlist/category?type=${encodeURIComponent(t)}&limit=60`),s=(Array.isArray(n.data)?n.data:[]).map(a=>{let o=a?.id;return o?{vod_id:P0n({id:o,name:a.name||"",pic:a.coverImgUrl||"",category:t,remark:`${a.playCount||0} \u64AD\u653E`}),vod_name:a.name||"",vod_pic:a.coverImgUrl||"",vod_remarks:`${a.playCount||0} \u64AD\u653E`}:null}).filter(Boolean);return{page:r,pagecount:r,limit:60,total:s.length,list:s}}catch(n){return console.error("[\u67AB\u53F6\u97F3\u4E50] \u5206\u7C7B\u5931\u8D25:",n.message),{page:r,pagecount:r,limit:60,total:0,list:[]}}}async function j0n(e){let t=L0n(e.body?.id);if(!t)return{list:[]};try{if(t.type==="playlist"){let r=t.payload.id,n=await vL(`${ez}/meting/?server=netease&type=playlist&id=${encodeURIComponent(r)}`),s=(Array.isArray(n.data?.tracks)?n.data.tracks:Array.isArray(n.data)?n.data:[]).map(B0n).filter(Boolean);return{list:[{vod_id:e.body.id,vod_name:t.payload.name||"\u6B4C\u5355",vod_pic:t.payload.pic||"",vod_remarks:t.payload.remark||"",vod_content:`\u67AB\u53F6\u97F3\u4E50\u6B4C\u5355\uFF0C\u5171 ${s.length} \u9996`,vod_play_from:"\u67AB\u53F6\u97F3\u4E50",vod_play_url:s.map(a=>`${a.name}$${a.id}`).join("#")}]}}if(t.type==="song"){let r=t.payload;return{list:[{vod_id:e.body.id,vod_name:r.name||"\u97F3\u4E50\u64AD\u653E",vod_pic:r.pic||"",vod_remarks:r.remark||r.artist||"",vod_content:r.artist||"\u67AB\u53F6\u97F3\u4E50",vod_play_from:"\u67AB\u53F6\u97F3\u4E50",vod_play_url:`${r.name||"\u64AD\u653E"}$${r.url||""}`}]}}}catch(r){console.error("[\u67AB\u53F6\u97F3\u4E50] \u8BE6\u60C5\u5931\u8D25:",r.message)}return{list:[]}}async function H0n(e){let t=String(e.body?.wd||"").trim(),r=O3t(e.body?.page);if(!t)return{page:r,pagecount:r,limit:AL,total:0,list:[]};try{let n=await vL(`${ez}/netease/search/song/?keywords=${encodeURIComponent(t)}&pn=${r}&limit=${AL}`),s=$0n(n.data).map(a=>{let o=String(a?.url||"").trim();return o?{vod_id:M0n({url:o,name:a.name||"\u64AD\u653E",pic:a.pic||"",artist:a.artist||"",remark:a.artist||""}),vod_name:a.name||"",vod_pic:a.pic||"",vod_remarks:a.artist||""}:null}).filter(Boolean);return{page:r,pagecount:s.length>=AL?r+1:r,limit:AL,total:s.length?9999:0,list:s}}catch(n){return console.error("[\u67AB\u53F6\u97F3\u4E50] \u641C\u7D22\u5931\u8D25:",n.message),{page:r,pagecount:r,limit:AL,total:0,list:[]}}}async function K0n(e){let t=String(e.body?.id||"").trim();if(!t)return{parse:0,url:""};try{let n=(await vL(t,{method:"HEAD",maxRedirects:0,validateStatus:i=>i>=200&&i<400})).headers?.location;return{parse:0,url:n?new URL(n,t).href:t,header:{"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36"}}}catch{return{parse:0,url:t,header:{"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36"}}}}var P3t={meta:{key:"fengye_music",name:"\u{1F3B5} FY\u97F3\u4E50",type:3},api:async e=>{e.post("/init",F0n),e.post("/home",U0n),e.post("/category",q0n),e.post("/detail",j0n),e.post("/play",K0n),e.post("/search",H0n)}};Kt();var Gxe=new Map,V0n=1e3*60*30,z0n=2,Wxe=4,Xxe=12,Jxe=3,Zxe=1600,bL=new Map,Q0n=1e3*60*30,Y3t=800,G0n=3,nCe={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",Referer:""},eCe={"User-Agent":nCe["User-Agent"],Referer:"https://www.kuwo.cn/",Accept:"application/json, text/plain, */*"},ed="https://via.placeholder.com/300x400?text=No+Image",Y0n=90;function M3t(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function xC(e){return Buffer.from(JSON.stringify(e||{}),"utf8").toString("base64")}function Yxe(e){try{return JSON.parse(Buffer.from(String(e||""),"base64").toString("utf8"))}catch{return null}}function fc(e,t){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).href:""}function rz(e,t){return String(e||"").replace(new RegExp(t,"gi"),"").replace(/视频下载说明|视频下载地址|MP3免费下载|LRC歌词下载|全部歌曲|\[第\d+页\]|刷新|每日推荐|最新|热门|推荐|MV|高清|无损/gi,"").replace(/\s+/g," ").trim()}function W0n(e,t){if(t<=1)return e;let r=String(e||"");return r=r.replace(/\/\d+\.html$/i,".html").replace(/_\d+\.html$/i,".html"),/\/(singerlist|radiolist|mvlist|playtype|list)\//i.test(r)?r.replace(/\.html$/i,`/${t}.html`):r.replace(/\.html$/i,`_${t}.html`)}function X0n(e){return/\/(video|mp4)\//i.test(e)?"video":/\/(song|mp3|radio|radiolist|radioplay)\//i.test(e)?"audio":"list"}function nz(e){if(!e)return null;try{return JSON.parse(e)}catch{return null}}function tCe(e=""){return String(e||"").replace(/^\d+[、.\-:]\s*/,"").replace(/\(听精品有声书.*?\)$/i,"").replace(/\[Mp3_Lrc\]/gi,"").replace(/\s+/g," ").trim()}function EL(e=""){let t=tCe(e).replace(/\s+/g," ").trim(),r=t.match(/^(.+?)《(.+?)》$/);if(r)return{title:r[2].trim(),artist:r[1].trim(),query:`${r[2].trim()} ${r[1].trim()}`.trim()};let n=t.replace(/[《》]/g,"").replace(/\s+/g," ").trim(),i=n.match(/^(.+?)\s*[-—–]\s*(.+)$/);return i?{title:i[1].trim(),artist:i[2].trim(),query:`${i[1].trim()} ${i[2].trim()}`.trim()}:{title:n,artist:"",query:n}}async function iCe(e,t={}){let r=await _e({url:e,method:t.method||"GET",headers:t.headers||eCe,timeout:t.timeout||12e3,data:t.data,validateStatus:n=>n>=200&&n<500});return typeof r.data=="object"&&r.data!==null?r.data:nz(String(r.data||""))||{}}async function J0n(e){let t=await iCe(`http://m.kuwo.cn/newh5/singles/songinfoandlrc?musicId=${encodeURIComponent(e)}`),r=Array.isArray(t?.data?.lrclist)?t.data.lrclist:[];return r.length?r.map(n=>{let i=Number(n.time||0),s=Math.floor(i/60).toString().padStart(2,"0"),a=Math.floor(i%60).toString().padStart(2,"0"),o=Math.floor(i%1*100).toString().padStart(2,"0");return`[${s}:${a}.${o}]${n.lineLyric||""}`}).join(` -`):""}async function tz(e={}){let t=JSON.stringify({title:String(e.title||"").trim().toLowerCase(),artist:String(e.artist||"").trim().toLowerCase(),query:String(e.query||"").trim().toLowerCase()}),r=Gxe.get(t);if(r&&Date.now()-r.ts<V0n)return r.value;let n=[e.query,[e.title,e.artist].filter(Boolean).join(" "),e.title].filter(Boolean);for(let i of n){let s=await iCe(`https://search.kuwo.cn/r.s?client=kt&all=${encodeURIComponent(i)}&pn=0&rn=10&vipver=1&ft=music&encoding=utf8&rformat=json&mobi=1`),a=Array.isArray(s?.abslist)?s.abslist:[];if(!a.length)continue;let o=String(e.artist||"").trim().toLowerCase(),c=a.find(f=>{let p=String(f.ARTIST||"").trim().toLowerCase(),h=tCe(f.NAME||"").toLowerCase(),m=tCe(e.title||"").toLowerCase();return!!(o&&p.includes(o)&&m&&h.includes(m))})||a[0],l=String(c?.MUSICRID||"").replace(/^MUSIC_/,""),d=String(c?.hts_MVPIC||(c?.web_albumpic_short?`https://img4.kuwo.cn/star/albumcover/${String(c.web_albumpic_short).replace(/^120\//,"500/")}`:"")||c?.hts_img||c?.albumpic||c?.PICPATH||c?.pic||"").trim();if(l){let f={rid:l,name:c.NAME||e.title||"",artist:c.ARTIST||e.artist||"",pic:d};return Gxe.set(t,{ts:Date.now(),value:f}),f}}return Gxe.set(t,{ts:Date.now(),value:null}),null}async function L3t(e,t="320kmp3"){let r=await iCe(`http://nmobi.kuwo.cn/mobi.s?f=web&user=0&source=kwplayerhd_ar_4.3.0.8_tianbao_T1A_qirui.apk&type=convert_url_with_sign&rid=${encodeURIComponent(e)}&br=${encodeURIComponent(t)}`);return String(r?.data?.url||"").trim()}async function B3t(e,t={}){let r=t.referer||t.url||"",i=String(r||"").match(/\/(song|mp3|radio|radiolist|radioplay)\/([^/.]+)\.html/i)?.[2];if(!i||!r)return null;let s=async c=>await _e({url:fc(e,"/js/play.php"),method:"POST",timeout:12e3,validateStatus:d=>d>=200&&d<500,headers:{"User-Agent":nCe["User-Agent"],Referer:r,Origin:e,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",Accept:"application/json, text/javascript, */*; q=0.01",...c?{Cookie:c}:{}},data:`id=${encodeURIComponent(i)}&type=music`}),a=await s(""),o=typeof a.data=="object"&&a.data!==null?a.data:nz(String(a.data||""))||{},u=(a.headers?.["set-cookie"]||[]).map(c=>String(c).split(";")[0]).filter(Boolean).join("; ");if(o?.url)return{url:String(o.url).trim(),pic:o.pic||""};if(u){let c=await s(u),l=typeof c.data=="object"&&c.data!==null?c.data:nz(String(c.data||""))||{};if(l?.url)return{url:String(l.url).trim(),pic:l.pic||""}}return null}async function $3t(e={}){let t=await tz(e);if(!t?.rid)return null;let r=await L3t(t.rid,"320kmp3")||await L3t(t.rid,"128kmp3");if(!r)return null;let n=await J0n(t.rid).catch(()=>"");return{...t,url:r,lrc:n}}function F3t(e){let t=String(e||"").match(/[\/_](\d+)\.html/i);return t?Number.parseInt(t[1],10):0}async function Z0n(e,t={},r={}){let n=await _e({url:e,method:r.method||"GET",headers:t,timeout:r.timeout||1e4,data:r.data,params:r.params,maxRedirects:0,validateStatus:i=>i>=200&&i<500});if(n.status===403){let s=(n.headers?.["set-cookie"]||[]).map(a=>String(a).split(";")[0]).filter(Boolean).join("; ");if(s){let a=await _e({url:e,method:r.method||"GET",headers:{...t,Cookie:[t.Cookie,s].filter(Boolean).join("; ")},timeout:r.timeout||1e4,data:r.data,params:r.params,maxRedirects:r.maxRedirects??5,validateStatus:o=>o>=200&&o<500});return{text:typeof a.data=="string"?a.data:JSON.stringify(a.data||{}),headers:a.headers||{},status:a.status}}}return{text:typeof n.data=="string"?n.data:JSON.stringify(n.data||{}),headers:n.headers||{},status:n.status}}async function wC(e,t,r){try{let n=await Z0n(fc(e,t),r);return Jr.load(n.text||"<html></html>")}catch{return Jr.load("<html></html>")}}async function W3t(e,t,r,{method:n="GET",data:i,params:s,referer:a}={}){try{let o={url:fc(e,t),method:n,headers:{...r,...a?{Referer:a}:{}},timeout:6e3,data:i,params:s,maxRedirects:0,validateStatus:c=>c>=200&&c<500},u=await _e(o);if(u.status===403){let l=(u.headers?.["set-cookie"]||[]).map(d=>String(d).split(";")[0]).filter(Boolean).join("; ");l&&(u=await _e({...o,headers:{...o.headers,Cookie:[o.headers.Cookie,l].filter(Boolean).join("; ")},maxRedirects:5}))}if((u.status===301||u.status===302)&&u.headers?.location)return fc(e,u.headers.location);if(typeof u.data=="string"){let c=u.data.trim(),l=nz(c);return l?.url?fc(e,String(l.url).replace(/\\\//g,"/").trim()):(/^https?:\/\//i.test(c),c)}if(u.data?.url)return fc(e,String(u.data.url).replace(/\\\//g,"/").trim())}catch{return""}return""}function egn(){return[{type_name:"\u7535\u53F0",type_id:"/radiolist/index.html"},{type_name:"\u6B4C\u5355",type_id:"/playtype/index.html"},{type_name:"\u4E13\u8F91",type_id:"/albumlist/index.html"},{type_name:"\u6B4C\u624B",type_id:"/singerlist/index/index/index/index.html"},{type_name:"\u9AD8\u6E05MV",type_id:"/mvlist/oumei.html"},{type_name:"\u65B0\u6B4C\u699C",type_id:"/list/new.html"},{type_name:"TOP\u699C\u5355",type_id:"/list/top.html"}]}function tgn(){return[{key:"area",name:"\u5730\u533A",value:[{n:"\u5168\u90E8",v:"index"},{n:"\u534E\u8BED",v:"huayu"},{n:"\u6B27\u7F8E",v:"oumei"},{n:"\u97E9\u56FD",v:"hanguo"},{n:"\u65E5\u672C",v:"riben"}]},{key:"sex",name:"\u6027\u522B",value:[{n:"\u5168\u90E8",v:"index"},{n:"\u7537",v:"male"},{n:"\u5973",v:"girl"},{n:"\u7EC4\u5408",v:"band"}]},{key:"genre",name:"\u6D41\u6D3E",value:[{n:"\u5168\u90E8",v:"index"},{n:"\u6D41\u884C",v:"liuxing"},{n:"\u7535\u5B50",v:"dianzi"},{n:"\u6447\u6EDA",v:"yaogun"},{n:"\u563B\u54C8",v:"xiha"},{n:"R&B",v:"rb"},{n:"\u6C11\u8C23",v:"minyao"},{n:"\u7235\u58EB",v:"jueshi"},{n:"\u53E4\u5178",v:"gudian"}]},{key:"char",name:"\u5B57\u6BCD",value:[{n:"\u5168\u90E8",v:"index"},..."ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("").map(e=>({n:e,v:e.toLowerCase()}))]}]}function rgn(){return[{key:"id",name:"\u5206\u7C7B",value:[{n:"\u6700\u65B0",v:"index"},{n:"\u6700\u70ED",v:"hot"},{n:"\u6709\u58F0\u5C0F\u8BF4",v:"novel"},{n:"\u76F8\u58F0",v:"xiangyi"},{n:"\u97F3\u4E50",v:"music"},{n:"\u60C5\u611F",v:"emotion"},{n:"\u56FD\u6F2B",v:"game"},{n:"\u5F71\u89C6",v:"yingshi"},{n:"\u8131\u53E3\u79C0",v:"talkshow"},{n:"\u5386\u53F2",v:"history"},{n:"\u513F\u7AE5",v:"children"},{n:"\u6559\u80B2",v:"education"},{n:"\u516B\u5366",v:"gossip"},{n:"\u63A8\u7406",v:"tuili"},{n:"\u5934\u6761",v:"headline"}]}]}async function ngn(e,t,r){let n=await wC(e,r,t),i=[".ilingku_fl",".class_list",".screen_list",".box_list",".nav_list"].map(a=>n(a)).filter(a=>a.length>0),s=[];return i.forEach((a,o)=>{let u=r.includes("top")?"top":"index",c=[{n:"\u5168\u90E8",v:u}],l=new Set([u]);a.find("a").each((d,f)=>{let p=n(f).attr("href");if(!p)return;let h=String(p).split("?")[0].replace(/\/+$/,"").split("/").pop()?.replace(/\.html$/i,"")||"",m=n(f).text().trim();!h||!m||l.has(h)||(l.add(h),c.push({n:m,v:h}))}),c.length>1&&s.push({key:o===0?"id":`id${o}`,name:"\u5206\u7C7B",value:c})}),s}function U3t(e,t,r,n=""){let i=[];return e(".play_list li, .video_list li, .pic_list li, .singer_list li, .ali li, .layui-row li, .base_l li").each((a,o)=>{let u=e(o).find("a").first(),c=u.attr("href");if(!c||c==="/"||/\/user\/|\/login\/|javascript/i.test(c))return;let l=rz(e(o).find(".name").text()||u.attr("title")||u.text(),r);if(!l)return;let d=e(o).find("img").first().attr("src")||e(o).find("img").first().attr("data-src")||e(o).find("img").first().attr("data-original")||"",f=d?fc(t,d.replace("120","500")):ed,p=fc(t,c),h=EL(l),y=n.includes("/singerlist/")&&p.includes("/singer/")?{type:"oval"}:/(\/list\/|\/playtype\/|\/albumlist\/)/.test(n)?{type:"list"}:{type:"rect",ratio:1.33},g=rz(e(o).find(".singer, .subtitle, .remark, .label, .tips, .type").first().text(),r);i.push({vod_id:xC({type:X0n(p),url:p,remark:g}),vod_name:l,vod_pic:f,vod_remarks:g,style:y,_meta:h})}),i}async function rCe(e=[],t={}){let r=Number.isFinite(t.limit)?t.limit:1/0,n=Number.isFinite(t.concurrency)?t.concurrency:z0n,i=Number.isFinite(t.offset)?t.offset:0,a=e.filter(o=>o&&o.vod_name&&(!o.vod_pic||o.vod_pic===ed)).slice(i,i+r);for(let o=0;o<a.length;o+=n){let u=a.slice(o,o+n);await Promise.all(u.map(async c=>{let l=c._meta||EL(c.vod_name),d=await tz(l).catch(()=>null);!d?.pic&&l?.title&&(d=await tz({title:l.title,artist:"",query:l.title}).catch(()=>null)),!d?.pic&&l?.artist&&(d=await tz({title:"",artist:l.artist,query:l.artist}).catch(()=>null)),d?.pic&&(c.vod_pic=d.pic)}))}return e.map(o=>(o&&o._meta&&delete o._meta,o))}async function q3t(e=[],t={}){let r=Number.isFinite(t.budgetMs)?t.budgetMs:Zxe,n=Number.isFinite(t.firstCount)?t.firstCount:Xxe,i=Number.isFinite(t.firstConcurrency)?t.firstConcurrency:Wxe,s=Number.isFinite(t.extraConcurrency)?t.extraConcurrency:Jxe,a=Date.now();for(await rCe(e,{limit:n,concurrency:i});Date.now()-a<r;){let o=e.filter(l=>l&&l.vod_name&&(!l.vod_pic||l.vod_pic===ed));if(!o.length||Date.now()-a>=r)break;let c=Math.max(s,Math.min(s*2,o.length));await rCe(o,{limit:c,concurrency:s})}return e.map(o=>(o&&o._meta&&delete o._meta,o))}function ign(e){return new Promise(t=>setTimeout(t,e))}function j3t(e,t){return`${e}:${JSON.stringify(t||{})}`}function H3t(e=[]){return e.map(t=>(t&&t._meta&&delete t._meta,t))}function K3t(e,t=[]){let r=bL.get(e);if(!r||Date.now()-r.ts>Q0n)return t;let n=r.pics||{};for(let i of t){let s=n[i?.vod_id];s&&(i.vod_pic=s)}return t}function IC(e,t=[],r=!1){let i={...(bL.get(e)||{}).pics||{}};for(let s of t)s?.vod_id&&s?.vod_pic&&s.vod_pic!==ed&&(i[s.vod_id]=s.vod_pic);bL.set(e,{ts:Date.now(),pics:i,warming:r})}function V3t(e,t=[]){let r=bL.get(e),n=r?.pics||{},i=t.filter(a=>{let o=a?.vod_pic&&a.vod_pic!==ed?a.vod_pic:n[a?.vod_id];return!o||o===ed}).length,s=!!r?.warming;return{poster_warming:s||i>0,poster_missing_count:i,poster_retry_after_ms:s||i>0?Y3t:0}}function z3t(e,t=[]){let r=bL.get(e);if(r?.warming)return;let n=new Set,i=t.map(s=>({...s,_meta:s._meta||EL(s.vod_name)})).filter(s=>{if(!s?.vod_id||n.has(s.vod_id))return!1;n.add(s.vod_id);let a=r?.pics?.[s.vod_id],o=s?.vod_pic&&s.vod_pic!==ed?s.vod_pic:a;return!o||o===ed});if(!i.length){IC(e,t,!1);return}IC(e,t,!0),(async()=>{try{for(let s=0;s<G0n&&(await rCe(i),IC(e,i,!0),i.filter(o=>!o?.vod_pic||o.vod_pic===ed).length!==0);s+=1)await ign(Y3t)}finally{IC(e,i,!1)}})().catch(()=>{})}function Q3t(e,t,r){let n=[];return e(".play_list li, .song_list li, .music_list li").each((i,s)=>{let a=e(s).find("a").first(),o=a.attr("href");if(!o||!/(song|mp3|radio|radiolist|radioplay)/i.test(o))return;let u=rz(a.text()||e(s).find(".name").text(),r)||"\u64AD\u653E",c=fc(t,o),l=EL(u);n.push(`${u}$${xC({type:"audio-fallback",...l,url:c})}`)}),n}function sgn(e,t,r){let n=new Set;return e(".page a, .dede_pages a, .pagelist a").each((i,s)=>{let a=e(s).attr("href");if(!a||a==="#"||a.startsWith("javascript"))return;let o=fc(t,a);o&&o!==r&&n.add(o)}),Array.from(n).sort((i,s)=>F3t(i)-F3t(s))}async function G3t(e,t,r){if(/(song|mp3|radio|radiolist|radioplay)/i.test(r)){let n=await wC(e,r,t),i=EL(n("h1").first().text()||n("title").first().text()||""),a=r.match(/\/(song|mp3|radio|radiolist|radioplay)\/([^/.]+)\.html/i)?.[2],o=a?fc(e,`/plug/down.php?ac=music&lk=lrc&id=${a}`):"",u=[];return i.query&&u.push(`\u64AD\u653E$${xC({type:"audio-fallback",...i,referer:r})}`),o&&u.push(`\u6B4C\u8BCD$${xC({type:"direct",url:o,referer:r})}`),u}if(/(video|mp4)/i.test(r)){let i=r.match(/\/(video|mp4)\/([^/.]+)\.html/i)?.[2];if(!i)return[];let s=[{name:"\u84DD\u5149",q:1080},{name:"\u8D85\u6E05",q:720},{name:"\u9AD8\u6E05",q:480}];return(await Promise.all(s.map(async o=>({name:o.name,url:await W3t(e,"/plug/down.php",t,{method:"GET",params:{ac:"vplay",id:i,q:o.q},referer:r})})))).filter(o=>o.url).map(o=>`${o.name}$${xC({type:"direct",url:o.url,referer:r})}`)}return[]}function X3t({key:e,name:t,host:r}){let n={...nCe,Referer:`${r}/`};async function i(){return{}}async function s(){let l={},d=["/list/new.html","/list/top.html","/mvlist/index.html","/playtype/index.html","/albumlist/index.html","/radiolist/index.html"];for(let f of d){let p=await ngn(r,n,f);p.length&&(l[f]=p)}return l["/radiolist/index.html"]||(l["/radiolist/index.html"]=rgn()),l["/singerlist/index/index/index/index.html"]=tgn(),{class:egn(),filters:l,list:[]}}async function a(l){let d=l.body||{},f=String(d.id||"").trim(),p=M3t(d.page),h=d.filters||{},m=f;if(f.includes("/singerlist/")){let _=f.split("/");_.length>=6&&(_[2]=h.area||_[2],_[3]=h.sex||_[3],_[4]=h.genre||_[4],_[5]=`${h.char||"index"}.html`,m=_.join("/"))}else h.id&&!["index","top"].includes(h.id)&&(m=f.replace("index.html",`${h.id}.html`).replace("top.html",`${h.id}.html`),m===f&&(m=`${f.replace(/\/[^/]*$/,"")}/${h.id}.html`));m=W0n(m,p);let y=await wC(r,m,n),g=j3t("category",{key:e,tid:f,page:p,extend:h,categoryUrl:m}),v=U3t(y,r,t,f);v=K3t(g,v),await q3t(v,{firstCount:Xxe,firstConcurrency:Wxe,extraConcurrency:Jxe,budgetMs:Zxe}),IC(g,v,!1);let A=V3t(g,v);return A.poster_missing_count>0&&z3t(g,v),v=H3t(v),{page:p,pagecount:p+1,limit:Y0n,total:999999,list:v,...A}}async function o(l){let d=l.body||{},f=String(d.wd||"").trim(),p=M3t(d.page);if(!f)return{page:p,pagecount:p,limit:20,total:0,list:[]};let h=await wC(r,`/so/${encodeURIComponent(f)}/${p}.html`,n),m=j3t("search",{key:e,wd:f,page:p}),y=U3t(h,r,t,"search");y=K3t(m,y),await q3t(y,{firstCount:Xxe,firstConcurrency:Wxe,extraConcurrency:Jxe,budgetMs:Zxe}),IC(m,y,!1);let g=V3t(m,y);return g.poster_missing_count>0&&z3t(m,y),y=H3t(y),{page:p,pagecount:y.length?p+1:p,limit:20,total:y.length?9999:0,list:y,...g}}async function u(l){let d=Array.isArray(l.body?.id)?l.body.id[0]:l.body?.id,f=Yxe(d),p=fc(r,f?.url||"");if(!p)return{list:[]};let h=await wC(r,p,n),m=rz(h("h1").first().text()||h("title").first().text(),t)||t,y=fc(r,h(".djpg img, .pic img, .djpic img").first().attr("src")||"")||ed,g=[];if(/(playlist|album|list|singer|special|radio|radiolist)/i.test(p)){g.push(...Q3t(h,r,t));let v=sgn(h,r,p);(await Promise.all(v.map(E=>wC(r,E,n)))).forEach(E=>{g.push(...Q3t(E,r,t))});let _=new Set;g=g.filter(E=>_.has(E)?!1:(_.add(E),!0))}return g.length||(g=await G3t(r,n,p)),{list:[{vod_id:d,vod_name:m,vod_pic:y,vod_remarks:f?.remark||"",vod_content:"",vod_play_from:t,vod_play_url:g.length?g.join("#"):`\u89E3\u6790\u5931\u8D25$${xC({type:"detail-play",url:p})}`}]}}async function c(l){let d=Yxe(l.body?.id);if(!d?.url&&d?.type!=="audio-fallback")return{parse:0,url:""};let f=d?.url?fc(r,d.url):"";if(d.type==="audio-fallback"){let y=await B3t(r,d).catch(()=>null),g=y||await $3t(d);return{parse:0,url:g?.url||f,header:y?{"User-Agent":n["User-Agent"],"Accept-Encoding":"identity;q=1, *;q=0"}:{...eCe},lrc:g?.lrc||"",pic:g?.pic||ed}}if(d.type==="direct"){let y=f;if(/\/plug\/down\.php\?/i.test(f)&&/(?:^|[?&])ac=music(?:&|$)/i.test(f)){let g=await W3t(r,f,n,{method:"GET",referer:d.referer||n.Referer});g&&/^https?:\/\//i.test(g)&&(y=g)}return{parse:0,url:y,header:/resource\/(?:m2|mp32)\/|\.m(?:p4|4a)(?:\?|$)/i.test(y)?{"User-Agent":n["User-Agent"],"Accept-Encoding":"identity;q=1, *;q=0"}:{"User-Agent":n["User-Agent"],...d.referer?{Referer:d.referer}:{}}}}let h=(await G3t(r,n,f))[0]?.split("$")[1]||"",m=Yxe(h);if(m?.type==="audio-fallback"){let y=await B3t(r,m).catch(()=>null),g=y||await $3t(m);return{parse:0,url:g?.url||f,header:y?{"User-Agent":n["User-Agent"],"Accept-Encoding":"identity;q=1, *;q=0"}:{...eCe},lrc:g?.lrc||"",pic:g?.pic||ed}}return{parse:0,url:m?.url||f,header:{"User-Agent":n["User-Agent"]}}}return{meta:{key:e,name:`\u{1F3B5} ${t}`,type:3},api:async l=>{l.post("/init",i),l.post("/home",s),l.post("/category",a),l.post("/detail",u),l.post("/play",c),l.post("/search",o)}}}var J3t=X3t({key:"aiting_music",name:"\u7231\u542C",host:"http://www.2t58.com"});Kt();var agn={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",Referer:"https://www.kuwo.cn/",Accept:"application/json, text/plain, */*"},CC="https://p1.music.126.net/SUeqMM8HOIpHv9Nhl9qt9w==/109951165647004069.jpg",sCe=30,aCe=20;function e$t(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function ogn(e){if(typeof e=="object"&&e!==null)return e;try{return JSON.parse(String(e||"{}"))}catch{return{}}}function iz(e){return Buffer.from(JSON.stringify(e||{}),"utf8").toString("base64")}function t$t(e){try{return JSON.parse(Buffer.from(String(e||""),"base64").toString("utf8"))}catch{return null}}async function TC(e,t={}){let r=await _e({url:e,method:t.method||"GET",headers:t.headers||agn,timeout:t.timeout||12e3,data:t.data,validateStatus:n=>n>=200&&n<500});return ogn(r.data)}function r$t(e={},t="hot"){return{vod_name:e.name||e.title||"\u672A\u547D\u540D\u6B4C\u5355",vod_id:iz({type:"playlist",id:String(e.id||e.pid||""),pic:e.img||e.pic||e.cover||CC,remarks:e.info||e.uname||e.userName||""}),vod_pic:e.img||e.pic||e.cover||CC,vod_remarks:e.info||e.uname||e.userName||"",type_name:t}}function ugn(e={}){let t=String(e.MUSICRID||"").replace(/^MUSIC_/,"");if(!t)return null;let r=e.ARTIST||"";return{vod_name:`${e.NAME||"\u672A\u77E5\u6B4C\u66F2"}${r?` - ${r}`:""}`,vod_id:iz({type:"song",id:t,name:e.NAME||"\u672A\u77E5\u6B4C\u66F2",artist:r,pic:e.hts_MVPIC||"",remarks:"\u9177\u6211\u97F3\u4E50"}),vod_pic:e.hts_MVPIC||CC,vod_remarks:"\u9177\u6211\u97F3\u4E50",type_name:"search"}}async function cgn(e){let t=await TC(`http://m.kuwo.cn/newh5/singles/songinfoandlrc?musicId=${encodeURIComponent(e)}`),r=Array.isArray(t?.data?.lrclist)?t.data.lrclist:[];return r.length?r.map(n=>{let i=Number(n.time||0),s=Math.floor(i/60).toString().padStart(2,"0"),a=Math.floor(i%60).toString().padStart(2,"0"),o=Math.floor(i%1*100).toString().padStart(2,"0");return`[${s}:${a}.${o}]${n.lineLyric||""}`}).join(` -`):""}async function Z3t(e,t="320kmp3"){let r=await TC(`http://nmobi.kuwo.cn/mobi.s?f=web&user=0&source=kwplayerhd_ar_4.3.0.8_tianbao_T1A_qirui.apk&type=convert_url_with_sign&rid=${encodeURIComponent(e)}&br=${encodeURIComponent(t)}`);return String(r?.data?.url||"").trim()}async function lgn(){return{}}async function dgn(){return{class:[{type_id:"hot",type_name:"\u70ED\u95E8\u6B4C\u5355"},{type_id:"new",type_name:"\u65B0\u6B4C\u63A8\u8350"}]}}async function fgn(){let e=await TC("http://wapi.kuwo.cn/api/pc/classify/playlist/getRcmPlayList?loginUid=0&loginSid=0&appUid=76039576&rn=30&order=hot&pn=1"),t=e?.data?.data||e?.data||[];return{list:Array.isArray(t)?t.map(r=>r$t(r,"hot")):[]}}async function pgn(e){let t=e.body||{},r=String(t.id||"hot"),n=e$t(t.page),i=`http://wapi.kuwo.cn/api/pc/classify/playlist/getRcmPlayList?loginUid=0&loginSid=0&appUid=76039576&rn=${sCe}&order=${encodeURIComponent(r)}&pn=${n}&_=${Date.now()}`,s=await TC(i),a=s?.data?.data||s?.data||[],o=Array.isArray(a)?a.map(u=>r$t(u,r)):[];return{list:o,page:n,pagecount:o.length>=sCe?n+1:n,limit:sCe,total:o.length?9999:0}}async function hgn(e){let t=Array.isArray(e.body?.id)?e.body.id[0]:e.body?.id,r=t$t(t);if(!r?.id)return{list:[]};if(r.type==="song")return{list:[{vod_id:t,vod_name:r.name||"\u97F3\u4E50\u64AD\u653E",vod_pic:r.pic||CC,vod_actor:r.artist||"",vod_remarks:r.remarks||r.artist||"\u9177\u6211\u97F3\u4E50",vod_play_from:"\u9177\u6211\u97F3\u4E50",vod_play_url:`${r.name||"\u64AD\u653E"}$${iz({type:"song-play",id:r.id,pic:r.pic||"",cover:r.pic||CC,artist:r.artist||""})}`}]};let n=`http://nplserver.kuwo.cn/pl.svc?op=getlistinfo&pid=${encodeURIComponent(r.id)}&pn=0&rn=200&encode=utf8&keyset=pl2012&identity=kuwo&pcmp4=1&vipver=MUSIC_9.1.1.2_BCS2&newver=1`,i=await TC(n),a=(Array.isArray(i.musiclist)?i.musiclist:[]).map(o=>{let u=String(o.id||"");if(!u)return"";let c=String(o.name||o.SONGNAME||o.displaysongname||"").trim(),l=String(o.artist||o.ARTIST||o.FARTIST||o.displayartistname||"").trim(),d=o.albumpic||"",f=o.artistPic||"";return`${l?`${c} [${l}]`:c}$${iz({type:"song-play",id:u,pic:d||f,cover:d,artistPic:f,artist:l})}`}).filter(Boolean);return{list:[{vod_id:t,vod_name:i.name||i.title||"\u9177\u6211\u6B4C\u5355",vod_pic:r.pic||i.pic||i.img||CC,vod_remarks:r.remarks||i.info||i.desc||"",vod_content:i.info||i.desc||"",vod_play_from:"\u9177\u6211\u6B4C\u5355",vod_play_url:a.join("#")}]}}async function mgn(e){let t=t$t(e.body?.id);if(!t?.id)return{parse:0,url:""};if(/\.(m3u8|mp4|m4a|mp3|aac)(\?|$)/i.test(t.id))return{parse:0,url:t.id,pic:t.pic||t.cover||""};let r=await Z3t(t.id,"320kmp3")||await Z3t(t.id,"128kmp3"),n=await cgn(t.id);return{parse:0,url:r,pic:t.pic||t.cover||"",cover:t.cover||t.pic||"",lrc:n}}async function ggn(e){let t=e.body||{},r=String(t.wd||"").trim();if(!r)return{list:[]};let n=e$t(t.page),i=Math.max(n-1,0),s=`https://search.kuwo.cn/r.s?client=kt&all=${encodeURIComponent(r)}&pn=${i}&rn=${aCe}&vipver=1&ft=music&encoding=utf8&rformat=json&mobi=1`,a=await TC(s),o=Array.isArray(a.abslist)?a.abslist.map(ugn).filter(Boolean):[];return{list:o,page:n,pagecount:o.length>=aCe?n+1:n,limit:aCe,total:o.length?9999:0}}var n$t={meta:{key:"tingleme",name:"\u{1F3B5} \u542C\u4E86\u4E48",type:3},api:async e=>{e.post("/init",lgn),e.post("/home",dgn),e.post("/homeVod",fgn),e.post("/category",pgn),e.post("/detail",hgn),e.post("/play",mgn),e.post("/search",ggn)}};Kt();var NC=Se(require("crypto"),1),If="https://tingyou.fm",uCe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",wL=15e3,c$t="ea9d9d4f9a983fe6f6382f29c7b46b8d6dc47abc6da36662e6ddff8c78902f65",l$t=1,ygn="Bearer gAAAAABpxTyveIsV3svITKMLKF6NdvuVhbJzxnWPJFmeav8M502s6toC4ryey8_DGOVK62SyVzJ1eDpcYA7Snr8kkcp5V40NaDyAudniva8y-Ac7MOBxPS9Ly1hlXxJ86s3xO9eg8HW9OPtoPIAIVJu19MSWo52zlVLeBlMBO903FQ-ZJBCVZuZdzg_Cok1d1_-C819LqDAfh_RzkMQmzBYxa6yCnhh_VImejRNaqSyb8sNYf-zYl009OaDGLNG8srEhaix7sVlN55n_9lhoxEVontCRN8rdaA==",_gn="dfp=f-c28yu:f-FTCFtTJZeXVY2UuWHmawNVQqrdGrZPVkiLIbYEqzXTnAgPfIngVZ4rn1sO+Y0AaxEryBUXuyhA5JUyUw7x0NcW/UEhTsbrYcpf30YWJPMcuN/edHp0T/fMMcMC07yROtEupjp6qCgfAZkU7zlDvWRx3cGG90tcQvvMXkEiCm4qKaq8zTTCTIAKeWjVdIjzis; Hm_lvt_487a45d5a76f87740d9bd6c64551f918=1774497846,1774517403,1774531868; HMACCOUNT=6848F17C0F59F642; Hm_lpvt_487a45d5a76f87740d9bd6c64551f918=1774533196",az=[{type_id:"46",type_name:"\u6709\u58F0\u5C0F\u8BF4"},{type_id:"11",type_name:"\u6B66\u4FA0\u5C0F\u8BF4"},{type_id:"19",type_name:"\u8A00\u60C5\u901A\u4FD7"},{type_id:"21",type_name:"\u76F8\u58F0\u5C0F\u54C1"},{type_id:"14",type_name:"\u6050\u6016\u60CA\u609A"},{type_id:"17",type_name:"\u5B98\u573A\u5546\u6218"},{type_id:"15",type_name:"\u5386\u53F2\u519B\u4E8B"},{type_id:"9",type_name:"\u767E\u5BB6\u8BB2\u575B"}];function oCe(e){try{return JSON.stringify(e)}catch{return String(e)}}function L_(e={},t={}){return{"User-Agent":uCe,Referer:If+"/",Origin:If,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",...t.auth?{Authorization:t.auth}:{},...t.cookie?{Cookie:t.cookie}:{},...e}}function RC(e){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:t.startsWith("//")?`https:${t}`:t.startsWith("/")?`${If}${t}`:t:""}function cCe(e){if(!e||!e.attr)return"";let r=[e.attr("src"),e.attr("data-src"),e.attr("data-lazy-src"),e.attr("data-original"),e.attr("data-url")].filter(Boolean)[0]||"";return String(r).startsWith("data:image")?"":RC(r)}function pc(e){return!e||!e.text?"":e.text().replace(/\s+/g," ").trim()}function CE(e,t){let r=new Map;for(let n of e||[]){let i=t(n);i&&(r.has(i)||r.set(i,n))}return Array.from(r.values())}function d$t(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function hCe(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function Agn(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}function mCe(e,t,r="",n=""){let i=e(t),a=(i.attr("href")||"").match(/\/albums\/(\d+)/);if(!a)return null;let o=a[1],u=i.find("img.cover").first().length?i.find("img.cover").first():i.find("img").first(),c=u.attr("alt")||pc(i.find("p").first())||pc(i.find(".title").first())||pc(i.find(".name").first())||"";c||(c=pc(i).split("\u4F5C\u8005\uFF1A")[0].trim()||`\u4E13\u8F91${o}`);let l=pc(i),d=/(\d+)\s*期/.exec(l)?.[1]||"",f=/连载中|已完结/.exec(l)?.[0]||"",p=/播音[::]\s*([^\s·|]+)/.exec(l)?.[1]||"",h=/作者[::]\s*([^\s·|]+)/.exec(l)?.[1]||"",m=[d?`${d}\u671F`:"",f,p||h].filter(Boolean).join(" \xB7 ");return{vod_id:hCe(o,{vod_pic:cCe(u),vod_remarks:m}),vod_name:c,vod_pic:cCe(u),vod_remarks:m,type_id:String(r||""),type_name:n||""}}function f$t(e,t,r=new Map){let n=new Set(["ShallowReactive","Reactive","Ref","EmptyRef","Set","Map","Date","RegExp","BigInt","null","undefined","NaN","-0","Infinity","-Infinity"]);function i(s){if(typeof s=="number"&&Number.isInteger(s)&&s>=0&&s<e.length){if(r.has(s))return r.get(s);let a=e[s];if(Array.isArray(a)){if(a.length&&typeof a[0]=="string"&&n.has(a[0])){let u=a[0];if(u==="ShallowReactive"||u==="Reactive"||u==="Ref")return a.length>1?i(a[1]):null;if(u==="EmptyRef"||u==="null"||u==="undefined"||u==="NaN")return null}let o=[];r.set(s,o);for(let u of a)o.push(i(u));return o}if(a&&typeof a=="object"){let o={};r.set(s,o);for(let[u,c]of Object.entries(a))o[u]=i(c);return o}return r.set(s,a),a}if(Array.isArray(s))return s.map(i);if(s&&typeof s=="object"){let a={};for(let[o,u]of Object.entries(s))a[o]=i(u);return a}return s}return i(t)}function vgn(e,t){let r=e.match(/<script[^>]*id=["']__NUXT_DATA__["'][^>]*>([\s\S]*?)<\/script>/i);if(!r)return null;let n=JSON.parse(r[1]);return f$t(n,1)?.data?.[`categoryAlbums-${t}`]||null}function bgn(e,t,r){if(!e||!e.id)return null;let n=String(e.status)==="1"?"\u8FDE\u8F7D\u4E2D":String(e.status)==="0"?"\u5DF2\u5B8C\u7ED3":"",i=[e.count?`${e.count}\u671F`:"",n,e.teller||e.author||""].filter(Boolean).join(" \xB7 ");return{vod_id:hCe(String(e.id),{vod_pic:RC(e.cover_url||""),vod_remarks:i}),vod_name:e.title||`\u4E13\u8F91${e.id}`,vod_pic:RC(e.cover_url||""),vod_remarks:i,type_id:String(t||""),type_name:r||""}}function Egn(e){let t=e.match(/<script[^>]*id=["']__NUXT_DATA__["'][^>]*>([\s\S]*?)<\/script>/i);if(!t)return[];try{let r=JSON.parse(t[1]),i=f$t(r,1)?.data||{},s=Object.keys(i),a=s.find(l=>/^search[-_]/i.test(l))||s.find(l=>/search/i.test(l)),o=a?i[a]:null;if(!o)return[];let u=[],c=l=>{if(l){if(Array.isArray(l))return l.forEach(c);if(typeof l=="object"){l.id&&(l.title||l.name)&&(l.cover||l.cover_url||l.pic||l.pic_url)&&u.push(l);for(let d of Object.values(l))c(d)}}};return c(o),CE(u,l=>String(l.id||l.album_id||""))}catch{return[]}}function Sgn(e){let t=String(e?.id||e?.album_id||"");return t?{vod_id:hCe(t,{vod_pic:RC(e?.cover||e?.cover_url||e?.pic||e?.pic_url||""),vod_remarks:String(e?.desc||e?.subtitle||e?.author||e?.teller||"").trim()}),vod_name:String(e?.title||e?.name||`\u4E13\u8F91${t}`),vod_pic:RC(e?.cover||e?.cover_url||e?.pic||e?.pic_url||""),vod_remarks:String(e?.desc||e?.subtitle||e?.author||e?.teller||"").trim(),vod_content:String(e?.desc||e?.intro||e?.description||"").trim()}:null}function oz(e){let t=String(e||"").trim(),r=new Uint8Array(Math.floor(t.length/2));for(let n=0;n<r.length;n+=1)r[n]=parseInt(t.slice(n*2,n*2+2),16);return r}async function wgn(e){let t=oz(c$t),r=NC.default.webcrypto.getRandomValues(new Uint8Array(12)),n=await NC.default.webcrypto.subtle.importKey("raw",t,"AES-GCM",!1,["encrypt"]),i=await NC.default.webcrypto.subtle.encrypt({name:"AES-GCM",iv:r},n,new TextEncoder().encode(e)),s=new Uint8Array(i),a=new Uint8Array(1+r.length+s.length);return a[0]=l$t,a.set(r,1),a.set(s,1+r.length),Buffer.from(a).toString("hex")}function Ign(e){let t=new Uint8Array(e.length);for(let r=0;r<e.length;r+=1)t[r]=e[e.length-1-r];return t}function ti(e,t=new Uint8Array(4),r=0){return t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function i$t(e,t=new Uint8Array(8),r=0){return ti(e>>>0,t,r),ti(e/4294967296>>>0,t,r+4),t}function Ka(e){for(let t=0;t<e.length;t+=1)e[t]=0;return e}function xgn(e,t,r){let n=1634760805,i=857760878,s=2036477234,a=1797285236,o=r[3]<<24|r[2]<<16|r[1]<<8|r[0],u=r[7]<<24|r[6]<<16|r[5]<<8|r[4],c=r[11]<<24|r[10]<<16|r[9]<<8|r[8],l=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=r[19]<<24|r[18]<<16|r[17]<<8|r[16],f=r[23]<<24|r[22]<<16|r[21]<<8|r[20],p=r[27]<<24|r[26]<<16|r[25]<<8|r[24],h=r[31]<<24|r[30]<<16|r[29]<<8|r[28],m=t[3]<<24|t[2]<<16|t[1]<<8|t[0],y=t[7]<<24|t[6]<<16|t[5]<<8|t[4],g=t[11]<<24|t[10]<<16|t[9]<<8|t[8],v=t[15]<<24|t[14]<<16|t[13]<<8|t[12],A=n,_=i,E=s,S=a,C=o,I=u,N=c,T=l,k=d,O=f,P=p,$=h,Q=m,j=y,z=g,X=v;for(let K=0;K<20;K+=2)A=A+C|0,Q^=A,Q=Q>>>16|Q<<16,k=k+Q|0,C^=k,C=C>>>20|C<<12,_=_+I|0,j^=_,j=j>>>16|j<<16,O=O+j|0,I^=O,I=I>>>20|I<<12,E=E+N|0,z^=E,z=z>>>16|z<<16,P=P+z|0,N^=P,N=N>>>20|N<<12,S=S+T|0,X^=S,X=X>>>16|X<<16,$=$+X|0,T^=$,T=T>>>20|T<<12,E=E+N|0,z^=E,z=z>>>24|z<<8,P=P+z|0,N^=P,N=N>>>25|N<<7,S=S+T|0,X^=S,X=X>>>24|X<<8,$=$+X|0,T^=$,T=T>>>25|T<<7,_=_+I|0,j^=_,j=j>>>24|j<<8,O=O+j|0,I^=O,I=I>>>25|I<<7,A=A+C|0,Q^=A,Q=Q>>>24|Q<<8,k=k+Q|0,C^=k,C=C>>>25|C<<7,A=A+I|0,X^=A,X=X>>>16|X<<16,P=P+X|0,I^=P,I=I>>>20|I<<12,_=_+N|0,Q^=_,Q=Q>>>16|Q<<16,$=$+Q|0,N^=$,N=N>>>20|N<<12,E=E+T|0,j^=E,j=j>>>16|j<<16,k=k+j|0,T^=k,T=T>>>20|T<<12,S=S+C|0,z^=S,z=z>>>16|z<<16,O=O+z|0,C^=O,C=C>>>20|C<<12,E=E+T|0,j^=E,j=j>>>24|j<<8,k=k+j|0,T^=k,T=T>>>25|T<<7,S=S+C|0,z^=S,z=z>>>24|z<<8,O=O+z|0,C^=O,C=C>>>25|C<<7,_=_+N|0,Q^=_,Q=Q>>>24|Q<<8,$=$+Q|0,N^=$,N=N>>>25|N<<7,A=A+I|0,X^=A,X=X>>>24|X<<8,P=P+X|0,I^=P,I=I>>>25|I<<7;ti(A+n|0,e,0),ti(_+i|0,e,4),ti(E+s|0,e,8),ti(S+a|0,e,12),ti(C+o|0,e,16),ti(I+u|0,e,20),ti(N+c|0,e,24),ti(T+l|0,e,28),ti(k+d|0,e,32),ti(O+f|0,e,36),ti(P+p|0,e,40),ti($+h|0,e,44),ti(Q+m|0,e,48),ti(j+y|0,e,52),ti(z+g|0,e,56),ti(X+v|0,e,60)}function Cgn(e,t,r){let n=1;for(;r--;)n=n+(255&e[t])|0,e[t]=255&n,n>>>=8,t+=1;if(n>0)throw new Error("ChaCha: counter overflow")}function lCe(e,t,r,n,i=0){if(e.length!==32)throw new Error("ChaCha: key size must be 32 bytes");if(n.length<r.length)throw new Error("ChaCha: destination is shorter than source");let s,a;if(i===0){if(t.length!==8&&t.length!==12)throw new Error("ChaCha nonce must be 8 or 12 bytes");s=new Uint8Array(16),a=s.length-t.length,s.set(t,a)}else{if(t.length!==16)throw new Error("ChaCha nonce with counter must be 16 bytes");s=t,a=i}let o=new Uint8Array(64);for(let u=0;u<r.length;u+=64){xgn(o,s,e);for(let c=u;c<u+64&&c<r.length;c+=1)n[c]=r[c]^o[c-u];Cgn(s,0,a)}return Ka(o),i===0&&Ka(s),n}function s$t(e,t,r,n=0){return Ka(r),lCe(e,t,r,r,n)}function a$t(e,t,r){let n=1634760805,i=857760878,s=2036477234,a=1797285236,o=e[3]<<24|e[2]<<16|e[1]<<8|e[0],u=e[7]<<24|e[6]<<16|e[5]<<8|e[4],c=e[11]<<24|e[10]<<16|e[9]<<8|e[8],l=e[15]<<24|e[14]<<16|e[13]<<8|e[12],d=e[19]<<24|e[18]<<16|e[17]<<8|e[16],f=e[23]<<24|e[22]<<16|e[21]<<8|e[20],p=e[27]<<24|e[26]<<16|e[25]<<8|e[24],h=e[31]<<24|e[30]<<16|e[29]<<8|e[28],m=t[3]<<24|t[2]<<16|t[1]<<8|t[0],y=t[7]<<24|t[6]<<16|t[5]<<8|t[4],g=t[11]<<24|t[10]<<16|t[9]<<8|t[8],v=t[15]<<24|t[14]<<16|t[13]<<8|t[12];for(let A=0;A<20;A+=2)n=n+o|0,m^=n,m=m>>>16|m<<16,d=d+m|0,o^=d,o=o>>>20|o<<12,i=i+u|0,y^=i,y=y>>>16|y<<16,f=f+y|0,u^=f,u=u>>>20|u<<12,s=s+c|0,g^=s,g=g>>>16|g<<16,p=p+g|0,c^=p,c=c>>>20|c<<12,a=a+l|0,v^=a,v=v>>>16|v<<16,h=h+v|0,l^=h,l=l>>>20|l<<12,s=s+c|0,g^=s,g=g>>>24|g<<8,p=p+g|0,c^=p,c=c>>>25|c<<7,a=a+l|0,v^=a,v=v>>>24|v<<8,h=h+v|0,l^=h,l=l>>>25|l<<7,i=i+u|0,y^=i,y=y>>>24|y<<8,f=f+y|0,u^=f,u=u>>>25|u<<7,n=n+o|0,m^=n,m=m>>>24|m<<8,d=d+m|0,o^=d,o=o>>>25|o<<7,n=n+u|0,v^=n,v=v>>>16|v<<16,p=p+v|0,u^=p,u=u>>>20|u<<12,i=i+c|0,m^=i,m=m>>>16|m<<16,h=h+m|0,c^=h,c=c>>>20|c<<12,s=s+l|0,y^=s,y=y>>>16|y<<16,d=d+y|0,l^=d,l=l>>>20|l<<12,a=a+o|0,g^=a,g=g>>>16|g<<16,f=f+g|0,o^=f,o=o>>>20|o<<12,s=s+l|0,y^=s,y=y>>>24|y<<8,d=d+y|0,l^=d,l=l>>>25|l<<7,a=a+o|0,g^=a,g=g>>>24|g<<8,f=f+g|0,o^=f,o=o>>>25|o<<7,i=i+c|0,m^=i,m=m>>>24|m<<8,h=h+m|0,c^=h,c=c>>>25|c<<7,n=n+u|0,v^=n,v=v>>>24|v<<8,p=p+v|0,u^=p,u=u>>>25|u<<7;return ti(n,r,0),ti(i,r,4),ti(s,r,8),ti(a,r,12),ti(m,r,16),ti(y,r,20),ti(g,r,24),ti(v,r,28),r}var dCe=class{digestLength=16;_buffer=new Uint8Array(16);_r=new Uint16Array(10);_h=new Uint16Array(10);_pad=new Uint16Array(8);_leftover=0;_fin=0;_finished=!1;constructor(t){let r=t[0]|t[1]<<8;this._r[0]=8191&r;let n=t[2]|t[3]<<8;this._r[1]=8191&(r>>>13|n<<3);let i=t[4]|t[5]<<8;this._r[2]=7939&(n>>>10|i<<6);let s=t[6]|t[7]<<8;this._r[3]=8191&(i>>>7|s<<9);let a=t[8]|t[9]<<8;this._r[4]=255&(s>>>4|a<<12),this._r[5]=a>>>1&8190;let o=t[10]|t[11]<<8;this._r[6]=8191&(a>>>14|o<<2);let u=t[12]|t[13]<<8;this._r[7]=8065&(o>>>11|u<<5);let c=t[14]|t[15]<<8;this._r[8]=8191&(u>>>8|c<<8),this._r[9]=c>>>5&127,this._pad[0]=t[16]|t[17]<<8,this._pad[1]=t[18]|t[19]<<8,this._pad[2]=t[20]|t[21]<<8,this._pad[3]=t[22]|t[23]<<8,this._pad[4]=t[24]|t[25]<<8,this._pad[5]=t[26]|t[27]<<8,this._pad[6]=t[28]|t[29]<<8,this._pad[7]=t[30]|t[31]<<8}_blocks(t,r,n){let i=this._fin?0:2048,s=this._h[0],a=this._h[1],o=this._h[2],u=this._h[3],c=this._h[4],l=this._h[5],d=this._h[6],f=this._h[7],p=this._h[8],h=this._h[9],m=this._r[0],y=this._r[1],g=this._r[2],v=this._r[3],A=this._r[4],_=this._r[5],E=this._r[6],S=this._r[7],C=this._r[8],I=this._r[9];for(;n>=16;){let N=t[r+0]|t[r+1]<<8;s+=8191&N;let T=t[r+2]|t[r+3]<<8;a+=8191&(N>>>13|T<<3);let k=t[r+4]|t[r+5]<<8;o+=8191&(T>>>10|k<<6);let O=t[r+6]|t[r+7]<<8;u+=8191&(k>>>7|O<<9);let P=t[r+8]|t[r+9]<<8;c+=8191&(O>>>4|P<<12),l+=P>>>1&8191;let $=t[r+10]|t[r+11]<<8;d+=8191&(P>>>14|$<<2);let Q=t[r+12]|t[r+13]<<8;f+=8191&($>>>11|Q<<5);let j=t[r+14]|t[r+15]<<8;p+=8191&(Q>>>8|j<<8),h+=j>>>5|i;let z=0,X=z;X+=s*m,X+=a*(5*I),X+=o*(5*C),X+=u*(5*S),X+=c*(5*E),z=X>>>13,X&=8191,X+=l*(5*_),X+=d*(5*A),X+=f*(5*v),X+=p*(5*g),X+=h*(5*y),z+=X>>>13,X&=8191;let K=z;K+=s*y,K+=a*m,K+=o*(5*I),K+=u*(5*C),K+=c*(5*S),z=K>>>13,K&=8191,K+=l*(5*E),K+=d*(5*_),K+=f*(5*A),K+=p*(5*v),K+=h*(5*g),z+=K>>>13,K&=8191;let Z=z;Z+=s*g,Z+=a*y,Z+=o*m,Z+=u*(5*I),Z+=c*(5*C),z=Z>>>13,Z&=8191,Z+=l*(5*S),Z+=d*(5*E),Z+=f*(5*_),Z+=p*(5*A),Z+=h*(5*v),z+=Z>>>13,Z&=8191;let Y=z;Y+=s*v,Y+=a*g,Y+=o*y,Y+=u*m,Y+=c*(5*I),z=Y>>>13,Y&=8191,Y+=l*(5*C),Y+=d*(5*S),Y+=f*(5*E),Y+=p*(5*_),Y+=h*(5*A),z+=Y>>>13,Y&=8191;let ie=z;ie+=s*A,ie+=a*v,ie+=o*g,ie+=u*y,ie+=c*m,z=ie>>>13,ie&=8191,ie+=l*(5*I),ie+=d*(5*C),ie+=f*(5*S),ie+=p*(5*E),ie+=h*(5*_),z+=ie>>>13,ie&=8191;let ue=z;ue+=s*_,ue+=a*A,ue+=o*v,ue+=u*g,ue+=c*y,z=ue>>>13,ue&=8191,ue+=l*m,ue+=d*(5*I),ue+=f*(5*C),ue+=p*(5*S),ue+=h*(5*E),z+=ue>>>13,ue&=8191;let he=z;he+=s*E,he+=a*_,he+=o*A,he+=u*v,he+=c*g,z=he>>>13,he&=8191,he+=l*y,he+=d*m,he+=f*(5*I),he+=p*(5*C),he+=h*(5*S),z+=he>>>13,he&=8191;let ye=z;ye+=s*S,ye+=a*E,ye+=o*_,ye+=u*A,ye+=c*v,z=ye>>>13,ye&=8191,ye+=l*g,ye+=d*y,ye+=f*m,ye+=p*(5*I),ye+=h*(5*C),z+=ye>>>13,ye&=8191;let q=z;q+=s*C,q+=a*S,q+=o*E,q+=u*_,q+=c*A,z=q>>>13,q&=8191,q+=l*v,q+=d*g,q+=f*y,q+=p*m,q+=h*(5*I),z+=q>>>13,q&=8191;let B=z;B+=s*I,B+=a*C,B+=o*S,B+=u*E,B+=c*_,z=B>>>13,B&=8191,B+=l*A,B+=d*v,B+=f*g,B+=p*y,B+=h*m,z+=B>>>13,B&=8191,z=(z<<2)+z|0,z=z+X|0,X=8191&z,z>>>=13,K+=z,s=X,a=K,o=Z,u=Y,c=ie,l=ue,d=he,f=ye,p=q,h=B,r+=16,n-=16}this._h[0]=s,this._h[1]=a,this._h[2]=o,this._h[3]=u,this._h[4]=c,this._h[5]=l,this._h[6]=d,this._h[7]=f,this._h[8]=p,this._h[9]=h}finish(t,r=0){let n=new Uint16Array(10),i,s,a,o;if(this._leftover){for(o=this._leftover,this._buffer[o++]=1;o<16;o+=1)this._buffer[o]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(i=this._h[1]>>>13,this._h[1]&=8191,o=2;o<10;o+=1)this._h[o]+=i,i=this._h[o]>>>13,this._h[o]&=8191;for(this._h[0]+=5*i,i=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=i,i=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=i,n[0]=this._h[0]+5,i=n[0]>>>13,n[0]&=8191,o=1;o<10;o+=1)n[o]=this._h[o]+i,i=n[o]>>>13,n[o]&=8191;for(n[9]-=8192,s=(1^i)-1,o=0;o<10;o+=1)n[o]&=s;for(s=~s,o=0;o<10;o+=1)this._h[o]=this._h[o]&s|n[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),a=this._h[0]+this._pad[0],this._h[0]=65535&a,o=1;o<8;o+=1)a=(this._h[o]+this._pad[o]|0)+(a>>>16)|0,this._h[o]=65535&a;return t[r+0]=this._h[0]>>>0,t[r+1]=this._h[0]>>>8,t[r+2]=this._h[1]>>>0,t[r+3]=this._h[1]>>>8,t[r+4]=this._h[2]>>>0,t[r+5]=this._h[2]>>>8,t[r+6]=this._h[3]>>>0,t[r+7]=this._h[3]>>>8,t[r+8]=this._h[4]>>>0,t[r+9]=this._h[4]>>>8,t[r+10]=this._h[5]>>>0,t[r+11]=this._h[5]>>>8,t[r+12]=this._h[6]>>>0,t[r+13]=this._h[6]>>>8,t[r+14]=this._h[7]>>>0,t[r+15]=this._h[7]>>>8,this._finished=!0,this}update(t){let r,n=0,i=t.length;if(this._leftover){r=16-this._leftover,r>i&&(r=i);for(let s=0;s<r;s+=1)this._buffer[this._leftover+s]=t[n+s];if(i-=r,n+=r,this._leftover+=r,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(i>=16&&(r=i-i%16,this._blocks(t,n,r),n+=r,i-=r),i){for(let s=0;s<i;s+=1)this._buffer[this._leftover+s]=t[n+s];this._leftover+=i}return this}digest(){if(this._finished)throw new Error("Poly1305 was finished");let t=new Uint8Array(16);return this.finish(t),t}clean(){return Ka(this._buffer),Ka(this._r),Ka(this._h),Ka(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this}},o$t=new Uint8Array(16),uz=class{nonceLength=12;tagLength=16;_key;constructor(t){if(t.length!==32)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(t)}seal(t,r,n,i){if(t.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");let s=new Uint8Array(16);s.set(t,s.length-t.length);let a=new Uint8Array(32);s$t(this._key,s,a,4);let o=r.length+this.tagLength,u;if(i){if(i.length!==o)throw new Error("ChaCha20Poly1305: incorrect destination length");u=i}else u=new Uint8Array(o);return lCe(this._key,s,r,u,4),this._authenticate(u.subarray(u.length-this.tagLength,u.length),a,u.subarray(0,u.length-this.tagLength),n),Ka(s),u}open(t,r,n,i){if(t.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(r.length<this.tagLength)return null;let s=new Uint8Array(16);s.set(t,s.length-t.length);let a=new Uint8Array(32);s$t(this._key,s,a,4);let o=new Uint8Array(this.tagLength);this._authenticate(o,a,r.subarray(0,r.length-this.tagLength),n);let u=o,c=r.subarray(r.length-this.tagLength,r.length);if(u.length===0||c.length===0||(()=>{if(u.length!==c.length)return 0;let f=0;for(let p=0;p<u.length;p+=1)f|=u[p]^c[p];return 1&f-1>>>8})()===0)return null;let l=r.length-this.tagLength,d;if(i){if(i.length!==l)throw new Error("ChaCha20Poly1305: incorrect destination length");d=i}else d=new Uint8Array(l);return lCe(this._key,s,r.subarray(0,r.length-this.tagLength),d,4),Ka(s),d}clean(){return Ka(this._key),this}_authenticate(t,r,n,i){let s=new dCe(r);i&&(s.update(i),i.length%16>0&&s.update(o$t.subarray(i.length%16))),s.update(n),n.length%16>0&&s.update(o$t.subarray(n.length%16));let a=new Uint8Array(8);i&&i$t(i.length,a),s.update(a),i$t(n.length,a),s.update(a);let o=s.digest();for(let u=0;u<o.length;u+=1)t[u]=o[u];s.clean(),Ka(o),Ka(a)}},fCe=class{nonceLength=24;tagLength=16;_key;constructor(t){if(t.length!==32)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(t)}seal(t,r,n,i){if(t.length!==24)throw new Error("XChaCha20Poly1305: incorrect nonce length");let s=a$t(this._key,t.subarray(0,16),new Uint8Array(32)),a=new Uint8Array(12);a.set(t.subarray(16),4);let o=new uz(s),u=o.seal(a,r,n,i);return Ka(s),Ka(a),o.clean(),u}open(t,r,n,i){if(t.length!==24)throw new Error("XChaCha20Poly1305: incorrect nonce length");if(r.length<this.tagLength)return null;let s=a$t(this._key,t.subarray(0,16),new Uint8Array(32)),a=new Uint8Array(12);a.set(t.subarray(16),4);let o=new uz(s),u=o.open(a,r,n,i);return Ka(s),Ka(a),o.clean(),u}clean(){return Ka(this._key),this}};async function u$t(e){let t=oz(e);if(!t||t.length<41)throw new Error("payload too short");let r=oz(c$t),n=t[0],i=t.subarray(1,25),s=t.subarray(25),a=n===2?Ign(s):s,o=new fCe(r).open(i,a);if(!o)throw new Error(`decrypt failed: auth mismatch, v=${n}, body=${s.length}`);return new TextDecoder().decode(o)}async function pCe(e,t,r,n={}){let i=t.startsWith("http")?t:`${If}${t.startsWith("/")?t:`/${t}`}`,s=L_({"X-Payload-Version":String(l$t)},n),a={method:e,url:i,headers:s,timeout:wL,validateStatus:()=>!0},o="";if(r!=null){let d=typeof r=="string"?r:JSON.stringify(r);o=await wgn(d),a.data=o,a.headers["Content-Type"]="text/plain"}let u=await _e(a),c=u?.data,l="";try{if(c&&typeof c=="object"&&typeof c.payload=="string"){let d=await u$t(c.payload);try{c=JSON.parse(d)}catch{c=d}}else if(typeof c=="string"&&/^[0-9a-fA-F]+$/.test(c)&&c.length>32){let d=await u$t(c);try{c=JSON.parse(d)}catch{c=d}}}catch(d){l=d?.message||String(d||"")}if(process.env.TINGYOU_DEBUG==="1"&&/\/api\/(me|guest|play_token)$/.test(i)&&console.log("[tingyou][api]",oCe({method:e,path:i.replace(If,""),status:u?.status,auth_sha16:xE(n?.auth||"").slice(0,16),cookie_sha16:xE(n?.cookie||"").slice(0,16),req_sha16:xE(o||"").slice(0,16),resp_type:typeof u?.data,resp_payload_sha16:typeof u?.data?.payload=="string"?xE(u.data.payload).slice(0,16):"",decodeError:l,data_preview:typeof c=="string"?c.slice(0,300):oCe(c).slice(0,600)})),(u?.status||200)>=400)throw new Error(`HTTP ${u.status}: ${typeof c=="string"?c:oCe(c).slice(0,500)}`);return c}function Tgn(){return{auth:process.env.TINGYOU_AUTH||process.env.TINGYOU_ANON_AUTH||ygn||"",cookie:process.env.TINGYOU_COOKIE||process.env.TINGYOU_ANON_COOKIE||_gn||""}}function xE(e){return NC.default.createHash("sha256").update(String(e||"")).digest("hex")}function SL(e){return xE(e).slice(0,8)}var Ngn=[214,144,233,254,204,225,61,183,22,182,20,194,40,251,44,5,43,103,154,118,42,190,4,195,170,68,19,38,73,134,6,153,156,66,80,244,145,239,152,122,51,84,11,67,237,207,172,98,228,179,28,169,201,8,232,149,128,223,148,250,117,143,63,166,71,7,167,252,243,115,23,186,131,89,60,25,230,133,79,168,104,107,129,178,113,100,218,139,248,235,15,75,112,86,157,53,30,36,14,94,99,88,209,162,37,34,124,59,1,33,120,135,212,0,70,87,159,211,39,82,76,54,2,231,160,196,200,158,234,191,138,210,64,199,56,181,163,247,242,206,249,97,21,161,224,174,93,164,155,52,26,85,173,147,50,48,245,140,177,227,29,246,226,46,130,102,202,96,192,41,35,171,13,83,78,111,213,219,55,69,222,253,142,47,3,255,106,114,109,108,91,81,141,27,175,146,187,221,188,127,17,217,92,65,31,16,90,216,10,193,49,136,165,205,123,189,45,116,208,18,184,229,180,176,137,105,151,74,12,150,119,126,101,185,241,9,197,110,198,132,24,240,125,236,58,220,77,32,121,238,95,62,215,203,57,72],sz=[2746333894,1453994832,1736282519,2993693404],Rgn=[462357,472066609,943670861,1415275113,1886879365,2358483617,2830087869,3301692121,3773296373,4228057617,404694573,876298825,1347903077,1819507329,2291111581,2762715833,3234320085,3705924337,4177462797,337322537,808926789,1280531041,1752135293,2223739545,2695343797,3166948049,3638552301,4110090761,269950501,741554753,1213159005,1684763257];function p$t(e){let t=[e>>>24&255,e>>>16&255,e>>>8&255,e&255];for(let n=0;n<4;n+=1)t[n]=Ngn[t[n]];let r=(t[0]<<24|t[1]<<16|t[2]<<8|t[3])>>>0;return(r^r<<2>>>0^r<<10>>>0^r<<18>>>0^r<<24>>>0)>>>0}function Dgn(e){let t=((e[0]<<24|e[1]<<16|e[2]<<8|e[3])^sz[0])>>>0,r=((e[4]<<24|e[5]<<16|e[6]<<8|e[7])^sz[1])>>>0,n=((e[8]<<24|e[9]<<16|e[10]<<8|e[11])^sz[2])>>>0,i=((e[12]<<24|e[13]<<16|e[14]<<8|e[15])^sz[3])>>>0,s=new Uint32Array(32);for(let a=0;a<32;a+=1){let o=(r^n^i^Rgn[a])>>>0;o=p$t(o);let u=(t^o)>>>0;s[a]=u,t=r,r=n,n=i,i=u}return s}function kgn(e,t){let r=Dgn(e),n=(t[0]<<24|t[1]<<16|t[2]<<8|t[3])>>>0,i=(t[4]<<24|t[5]<<16|t[6]<<8|t[7])>>>0,s=(t[8]<<24|t[9]<<16|t[10]<<8|t[11])>>>0,a=(t[12]<<24|t[13]<<16|t[14]<<8|t[15])>>>0;for(let c=0;c<32;c+=1){let l=(i^s^a^r[c])>>>0;l=p$t(l);let d=(n^l)>>>0;n=i,i=s,s=a,a=d}let o=new Uint8Array(16),u=[a,s,i,n];for(let c=0;c<4;c+=1){let l=u[c];o[c*4]=l>>>24&255,o[c*4+1]=l>>>16&255,o[c*4+2]=l>>>8&255,o[c*4+3]=l&255}return o}function Ogn(e,t){let r=new TextEncoder().encode(String(e||"")),n=16-(r.length%16||16),i=new Uint8Array(r.length+(n||16));i.set(r),i.fill(n||16,r.length);let s=oz(t),a=new Uint8Array(i.length);for(let o=0;o<i.length;o+=16)a.set(kgn(s,i.subarray(o,o+16)),o);return Buffer.from(a).toString("base64")}function Pgn(e,t){let r=new Map;for(let n of String(e||"").split(";")){let i=n.trim();if(!i||!i.includes("="))continue;let s=i.indexOf("=");r.set(i.slice(0,s).trim(),i.slice(s+1).trim())}for(let n of String(t||"").split(";")){let i=n.trim();if(!i||!i.includes("="))continue;let s=i.indexOf("=");r.set(i.slice(0,s).trim(),i.slice(s+1).trim())}return Array.from(r.entries()).map(([n,i])=>`${n}=${i}`).join("; ")}function Mgn(e=""){let t=String(e||"").match(/(?:^|;\s*)dfp=f-([^:;]+):f-([^;]+)/i),r=new Date,n=t?String(parseInt(t[1],36)):`${r.getFullYear()}${String(r.getMonth()+1).padStart(2,"0")}${String(r.getDate()).padStart(2,"0")}`;if(t){let m=NC.default.createHash("sha256").update(`reuse|${t[2]}|${n}`).digest("hex").slice(0,16);return{fingerprint:t[2],timeFactor:n,deviceCode:m,cookie:e}}let i="Asia/Shanghai",s=SL(`fpjs|${uCe}|${If}`),a=SL(""),o=SL(""),u=SL(""),l=[SL("fingerprint"),s,o,u,uCe,i].join("|"),d=xE(`fa317cd29b|${n}`).slice(0,32),f=Ogn(l,d),p=xE(l).slice(0,16),h=`dfp=f-${parseInt(n,10).toString(36)}:f-${f}`;return{fingerprint:f,timeFactor:n,deviceCode:p,cookie:Pgn(e,h)}}async function Lgn(){let e=Tgn();try{let t=Mgn(e.cookie);e={...e,cookie:t.cookie||e.cookie}}catch{}try{let t=await pCe("POST","/api/me",{},e);if(t?.auth_token)return{auth:`Bearer ${t.auth_token}`,cookie:e.cookie};if(e.auth)return e}catch{}try{let t=await pCe("POST","/api/guest",{},e);if(t?.auth_token)return{auth:`Bearer ${t.auth_token}`,cookie:e.cookie}}catch{}return e}async function Bgn(){try{let e=await _e.get(If+"/",{headers:L_(),timeout:wL}),t=typeof e.data=="string"?e.data:JSON.stringify(e.data),r=Jr.load(t),n=[],i=new Set;r("a[href*='/categories/']").each((a,o)=>{let c=(r(o).attr("href")||"").match(/\/categories\/(\d+)/);if(!c)return;let l=c[1];if(i.has(l))return;i.add(l);let d=pc(r(o))||az.find(f=>f.type_id===l)?.type_name||`\u5206\u7C7B${l}`;!d||/全部分类/.test(d)||n.push({type_id:l,type_name:d})});let s=[];return r("a[href*='/albums/']").each((a,o)=>{if(r(o).find("img").length===0)return;let u=mCe(r,o,"46","\u6709\u58F0\u5C0F\u8BF4");u&&s.push(u)}),{class:n.length?n:az,list:CE(s,a=>a.vod_id).slice(0,20)}}catch{return{class:az,list:[]}}}async function $gn(e){let t=e.body||{},r=String(t.id||"").trim(),n=d$t(t.page);try{let i=`${If}/categories/${r}?sort=comprehensive&page=${n}`,s=await _e.get(i,{headers:L_(),timeout:wL}),a=typeof s.data=="string"?s.data:JSON.stringify(s.data),o=Jr.load(a),u=pc(o("h1").first())||az.find(f=>f.type_id===r)?.type_name||`\u5206\u7C7B${r}`,c=vgn(a,r);if(c){let f=Array.isArray(c.data)?c.data:[],p=CE(f.map(h=>bgn(h,r,u)).filter(Boolean),h=>h.vod_id);return{page:Number(c.page||n)||1,pagecount:Number(c.pages||n||1),total:p.length,list:p}}let l=[];o("a[href*='/albums/']").each((f,p)=>{if(o(p).find("img").length===0)return;let h=mCe(o,p,r,u);h&&l.push(h)});let d=CE(l,f=>f.vod_id);return{page:n,pagecount:d.length>0?n+1:n,total:d.length,list:d}}catch{return{page:n,pagecount:n,total:0,list:[]}}}async function Fgn(e){let t=e.body?.id,r=(Array.isArray(t)?t:[t]).filter(Boolean),n=[];for(let i of r)try{let s=Agn(i),a=s.id||i,o=`${If}/albums/${a}`,u=await _e.get(o,{headers:L_(),timeout:wL}),c=typeof u.data=="string"?u.data:JSON.stringify(u.data),l=Jr.load(c),d=l("section.album-pannel"),f=pc(d.find(".album-intro h1").first())||pc(d.find("h1").first())||`\u4E13\u8F91${a}`,p=cCe(d.find("img").first())||RC(l('meta[property="og:image"]').attr("content")||""),h=l('meta[name="description"]').attr("content")||l('meta[property="og:description"]').attr("content")||pc(l(".album-desc, .desc, .intro").first())||"",m="";d.find(".pods span").each((g,v)=>{let A=pc(l(v));A.startsWith("\u5206\u7C7B:")&&(m=A.replace(/^分类:\s*/,"").trim())});let y=[];l("ul.chapter-list > li.chapter-item").each((g,v)=>{let A=l(v),_=pc(A.find("p").first()),E=pc(A.find(".item-content .title").first())||pc(A.find(".title").first())||`\u7B2C${g+1}\u96C6`,S=Number(_)||g+1;y.push(`${E}$${a}|${S}`)}),n.push({vod_id:String(a),vod_name:f,vod_pic:s.meta?.vod_pic||p,vod_remarks:s.meta?.vod_remarks||m||"",vod_content:h,type_name:m,vod_play_from:"\u542C\u53CBFM",vod_play_url:CE(y,g=>g).join("#")})}catch{}return{list:n}}async function Ugn(e){let t=e.body||{},r=String(t.wd||"").trim(),n=d$t(t.page);if(!r)return{page:n,pagecount:n,total:0,list:[]};try{let i=`${If}/search?q=${encodeURIComponent(r)}`,s=await _e.get(i,{headers:L_({},{auth:"",cookie:""}),timeout:wL}),a=typeof s.data=="string"?s.data:JSON.stringify(s.data),o=Egn(a).map(Sgn).filter(Boolean);if(!o.length){let c=Jr.load(a),l=[];c("a[href*='/albums/']").each((d,f)=>{let p=mCe(c,f,"","");p&&l.push(p)}),o=CE(l,d=>d.vod_id)}let u=CE(o,c=>c.vod_id).filter(c=>`${c.vod_name||""} ${c.vod_remarks||""} ${c.vod_content||""}`.toLowerCase().includes(r.toLowerCase()));return{page:n,pagecount:n,total:u.length,list:u}}catch{return{page:n,pagecount:n,total:0,list:[]}}}async function qgn(e){let t=String(e.body?.id||"").trim(),[r,n]=t.split("|");if(!r||!n)return{parse:0,url:""};let i=`${If}/audios/${r}/${n}`,s=await Lgn(),a=o=>/^https?:\/\//.test(String(o||"").trim())&&/(m3u8|mp3|m4a|aac|flac|wav|stream)(\?|$|\/)/i.test(String(o||"").trim());try{let o=await pCe("POST","/api/play_token",{album_id:Number(r),chapter_idx:Number(n)},s),u=[o?.url,o?.data?.url,o?.result?.url,o?.play_url,o?.audio_url,o?.src,o?.file,o?.link].filter(Boolean),c=u.find(a)||u.find(p=>/^https?:\/\//.test(String(p||"").trim()));if(c)return{parse:0,url:c,header:L_({},s)};let l=[],d=p=>{if(p){if(typeof p=="string"){/^https?:\/\//.test(p)&&/(m3u8|mp3|m4a|aac|flac|wav|stream)(\?|$|\/)/i.test(p)&&l.push(p);return}if(Array.isArray(p))return p.forEach(d);if(typeof p=="object")for(let[h,m]of Object.entries(p))typeof m=="string"&&/^https?:\/\//.test(m)&&/(url|src|play|audio|file|link|token)/i.test(h)&&l.push(m),d(m)}};d(o);let f=l.find(Boolean);if(f)return{parse:0,url:f,header:L_({},s)}}catch{}return{parse:0,url:i,header:L_()}}var h$t={meta:{key:"tingyou",name:"\u{1F3A7} \u542C\u53CB",type:3,supportSearch:!0},api:async e=>{e.post("/init",async()=>({})),e.post("/home",Bgn),e.post("/category",$gn),e.post("/detail",Fgn),e.post("/play",qgn),e.post("/search",Ugn)}};Yr();var y$t=Se(require("http"),1),_$t=Se(require("https"),1);var jgn="https://web5.mukaku.com/prod/api/v1/",Hgn="83768d9ad4",Kgn="23734adac0301bccdcb107c4aa21f96c",Vgn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",zgn=1e4,Qgn=10*60*1e3,Ggn=5*60*1e3,xf=20,A$t=300,Ygn=/<[^>]+>/g,Wgn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u8FD1\u65E5\u70ED\u95E8"},{type_id:"4",type_name:"\u672C\u5468\u70ED\u95E8"},{type_id:"5",type_name:"\u672C\u6708\u70ED\u95E8"}],Xgn=Ee.create({httpsAgent:new _$t.default.Agent({rejectUnauthorized:!1}),httpAgent:new y$t.default.Agent({keepAlive:!0}),timeout:zgn,transformResponse:[e=>e],headers:{"User-Agent":Vgn,Connection:"Keep-Alive","Accept-Encoding":"gzip","Accept-Language":"zh-CN,zh;q=0.8","Cache-Control":"no-cache"}}),cz={ts:0,data:null},m$t=new Map;function DC(e){return String(e||"").replace(Ygn," ").replace(/ /g," ").replace(/\s+/g," ").trim()}function Jgn(e,t={}){let r=new URL(e,jgn);return r.searchParams.append("app_id",Hgn),r.searchParams.append("identity",Kgn),Object.entries(t).forEach(([n,i])=>{i!=null&&i!==""&&r.searchParams.append(n,i)}),r.toString()}async function dz(e,t={}){let{data:r}=await Xgn.get(Jgn(e,t)),n=r;if(typeof n=="string"){n.charCodeAt(0)===65279&&(n=n.slice(1));try{n=JSON.parse(n)}catch{let i=n.match(/callback\((.*)\)/);n=i?JSON.parse(i[1]):null}}return!n||n.success!==!0||n.code!==200?null:n.data||null}async function Zgn(){if(cz.data&&Date.now()-cz.ts<Qgn)return cz.data;let e=await dz("getVideoTypeList");return e&&(cz={ts:Date.now(),data:e}),e}async function gCe(e={}){let t=await dz("getVideoList",e);return Array.isArray(t?.data)?t.data:Array.isArray(t?.list)?t.list:[]}async function eyn(e={}){let t=await dz("getVideoMovieList",e);return Array.isArray(t?.data)?t.data:Array.isArray(t?.list)?t.list:Array.isArray(t)?t:[]}async function v$t(e){let t=String(e||"").trim();if(!t)return null;let r=m$t.get(t);if(r&&Date.now()-r.ts<Ggn)return r.data;let n=await dz("getVideoDetail",{id:t});return n&&m$t.set(t,{ts:Date.now(),data:n}),n}function xL(e={}){let t=String(e.doub_id||e.id||""),r=e.image||e.epic||"",n=DC(e.ejs||e.zqxd||e.eqxd||"");return{vod_id:S$t({mode:"detail",baseVodId:t,pic:r,remark:n}),vod_name:DC(e.title||"\u672A\u77E5\u6807\u9898"),vod_pic:r,vod_remarks:n,vod_year:String(e.years||e.niandai||""),vod_content:DC(e.abstract||e.ecc||""),vod_actor:DC(e.performer||""),vod_director:DC(e.director||""),vod_area:DC(e.production_area||"")}}function lz(e=[]){let t=new Set,r=[];for(let n of e){let i=String(n?.doub_id||n?.id||"");!i||t.has(i)||(t.add(i),r.push(n))}return r}function b$t(e=[],t=1,r=xf){let n=Math.max(1,Number.parseInt(t,10)||1),i=Math.max(1,Number.parseInt(r,10)||xf),s=e.length,a=Math.max(1,Math.ceil(s/i));return{list:e.slice((n-1)*i,n*i),page:n,pagecount:a,total:s,limit:i}}function IL(e=[]){return[{n:"\u4E0D\u9650",v:"0"},...e.map(t=>{let r=String(t?.title||"").trim();return{n:r||"\u672A\u77E5",v:r||""}}).filter(t=>t.v)]}function tyn(e){if(!e||typeof e!="object")return{};let t=[{key:"sc",name:"\u5F71\u89C6\u7C7B\u578B",value:IL(e.t1)},{key:"sd",name:"\u5236\u7247\u5730\u533A",value:IL(e.t2)},{key:"se",name:"\u4E0A\u6620\u5E74\u4EFD",value:IL(e.t3)},{key:"sf",name:"\u8D44\u6E90\u753B\u8D28",value:IL(e.t4)},{key:"sh",name:"\u5F71\u89C6\u6807\u7B7E",value:IL(e.t5)},{key:"sg",name:"\u6392\u5E8F\u65B9\u5F0F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"1"},{n:"\u6DFB\u52A0\u65F6\u95F4",v:"3"},{n:"\u4E0A\u6620\u65F6\u95F4",v:"4"},{n:"\u8BC4\u5206\u6700\u9AD8",v:"5"},{n:"\u8BC4\u5206\u4EBA\u6570",v:"6"}]},{key:"iswp",name:"\u4EC5\u7F51\u76D8\u8D44\u6E90",value:[{n:"\u4E0D\u9650",v:"0"},{n:"\u4EC5\u7F51\u76D8",v:"1"}]}];return{1:t,2:[...t,{key:"status",name:"\u5267\u96C6\u72B6\u6001",value:[{n:"\u4E0D\u9650",v:"0"},{n:"\u66F4\u65B0\u4E2D",v:"\u66F4\u65B0\u4E2D"},{n:"\u5DF2\u5B8C\u7ED3",v:"\u5DF2\u5B8C\u7ED3"}]}]}}function ryn(e={}){return e.extend||e.filters||{}}function B_(e,t=""){if(e==null)return t;let r=String(e).trim();return!r||r==="0"||r==="\u4E0D\u9650"||r==="all"?t:r}function g$t(e,t=0){if(e==null||e==="")return t;let r=String(e).trim().toLowerCase();return["1","true","yes","on","y"].includes(r)?1:["0","false","no","off","n"].includes(r)?0:t}function nyn(e,t,r){let n=ryn({extend:r}),i={sa:Number(e),page:Math.max(1,Number.parseInt(t,10)||1),sc:B_(n.sc||n.type||n.class),sd:B_(n.sd||n.area),se:B_(n.se||n.year),sf:B_(n.sf||n.quality),sh:B_(n.sh||n.tag),sg:B_(n.sg||n.sort,"1")||"1",pfrs:Number.parseInt(n.pfrs||n.score_count||0,10)||0,pfqj:B_(n.pfqj||n.score_range,"0x10")||"0x10",imdb:g$t(n.imdb,0),iswp:g$t(n.iswp??n.only_pan??n.pan_only,0)};return Number(e)===2&&(i.status=B_(n.status,"")),i}function E$t(e=""){let t=String(e).toLowerCase();return t.includes("pan.quark.cn")?"quark":t.includes("pan.baidu.com")?"baidu":t.includes("aliyundrive.com")||t.includes("alipan.com")?"aliyun":t.includes("drive.uc.cn")?"uc":t.includes("cloud.189.cn")?"tianyi":t.includes("yun.139.com")||t.includes("caiyun.139.com")||t.includes("caiyun.feixin.10086.cn")?"mobile":t.includes("123pan.com")||t.includes("123pan.cn")||t.includes("123684.com")||t.includes("123685.com")||t.includes("123865.com")||t.includes("123912.com")||t.includes("123592.com")?"pan123":t.includes("115.com")||t.includes("115cdn.com")||t.includes("anxia.com")?"pan115":"pan"}function iyn(e=""){let t=E$t(e);return t==="pan123"?"123pan":t==="pan115"?"115pan":t}function S$t(e={}){return JSON.stringify({source:"lingjisoupan",mode:"resource",...e})}function syn(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="lingjisoupan")return t}catch{}return null}function ayn(e={},t=""){let r=String(t||"").trim();if(!r)return null;let n=E$t(r);if(n==="xunlei"||n==="pan")return null;let i=iyn(r),a={quark:"\u5938\u514B\u7F51\u76D8",baidu:"\u767E\u5EA6\u7F51\u76D8",aliyun:"\u963F\u91CC\u4E91\u76D8",uc:"UC\u7F51\u76D8",tianyi:"\u5929\u7FFC\u7F51\u76D8",mobile:"\u79FB\u52A8\u4E91\u76D8",pan123:"123\u7F51\u76D8",pan115:"115\u7F51\u76D8",pan:"\u7F51\u76D8\u8D44\u6E90"}[n]||"\u7F51\u76D8\u8D44\u6E90";return{vod_id:S$t({baseVodId:e?.vod_id||"",baseVodName:e?.vod_name||"",shareUrl:r,panSite:n,panFlag:i,pic:e?.vod_pic||"",content:e?.vod_content||"",year:e?.vod_year||"",area:e?.vod_area||"",actor:e?.vod_actor||"",director:e?.vod_director||""}),vod_name:e?.vod_name||"\u8D44\u6E90",vod_pic:e?.vod_pic||"",vod_remarks:`${a} [\u7075\u673A\u641C\u76D8]`,vod_year:e?.vod_year||"",vod_content:e?.vod_content||"",vod_actor:e?.vod_actor||"",vod_director:e?.vod_director||"",vod_area:e?.vod_area||"",type_name:a}}function w$t(e){let t=e?.movies_online_seed&&typeof e.movies_online_seed=="object"?e.movies_online_seed:{},r=[],n=new Set;for(let i of Object.values(t))if(Array.isArray(i))for(let s of i){let a=String(s?.link||"").trim();!a||n.has(a)||(n.add(a),r.push(a))}return r}async function oyn(e,t){return await xs(e,t),{}}async function uyn(e,t){let r=await Zgn();return{class:Wgn,filters:tyn(r)}}async function cyn(e,t){return{list:lz(await gCe({sc:"3",page:1,limit:xf})).slice(0,xf).map(xL)}}async function lyn(e,t){let r=e.body||{},n=String(r.id||r.t||"").trim(),i=Math.max(1,Number.parseInt(r.page,10)||1);if(!n)return{page:1,pagecount:1,limit:xf,total:0,list:[]};if(n==="1"||n==="2"){let o=lz(await eyn(nyn(n,i,r.extend||r.filters||{}))).map(xL);return{page:i,pagecount:o.length>0?i+1:i,limit:xf,total:o.length>0?i*xf+1:(i-1)*xf+o.length,list:o}}let s=lz(await gCe({sc:n,page:1,limit:A$t})),a=b$t(s,i,xf);return{page:a.page,pagecount:a.pagecount,limit:a.limit,total:a.total,list:a.list.map(xL)}}async function dyn(e,t){let r=Array.isArray(e.body?.id)?e.body.id[0]:e.body?.id,n=syn(r);if(n?.mode==="resource"&&n?.shareUrl){let u={vod_id:String(r||""),vod_name:n.baseVodName||"\u8D44\u6E90",vod_pic:n.pic||"",vod_remarks:`${n.panSite||"pan"} [\u7075\u673A\u641C\u76D8]`,vod_year:n.year||"",vod_content:n.content||"",vod_actor:n.actor||"",vod_director:n.director||"",vod_area:n.area||"",type_name:n.panSite||"\u7F51\u76D8\u8D44\u6E90"};try{let c=await hi(n.shareUrl,e);c?.froms&&c?.urls&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,Array.isArray(c.links)&&c.links.length>0&&(u.vod_links=c.links))}catch(c){console.error("[lingjisoupan] flat pan detail failed:",c?.message||c)}return{list:[u]}}let i=n?.mode==="detail"?String(n.baseVodId||"").trim():String(r||"").trim(),s=await v$t(i);if(!s)return{list:[]};let a=xL(s);n?.mode==="detail"&&(a.vod_pic=n.pic||a.vod_pic||"",a.vod_remarks=n.remark||a.vod_remarks||"");let o=w$t(s);if(o.length>0)try{let u=await hi(o,e);u?.froms&&u?.urls&&(a.vod_play_from=u.froms,a.vod_play_url=u.urls,Array.isArray(u.links)&&u.links.length>0&&(a.vod_links=u.links))}catch(u){console.error("[lingjisoupan] pan detail failed:",u?.message||u)}return{list:[a]}}async function fyn(e,t){let r=String(e.body?.wd||"").trim(),n=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!r)return{page:1,pagecount:1,limit:xf,total:0,list:[]};let i=lz((await gCe({sb:r,page:1,limit:A$t})).filter(c=>String(c?.title||"").toLowerCase().includes(r.toLowerCase()))),s=[];for(let c of i){let l=xL(c),d=await v$t(l.vod_id).catch(()=>null),f=w$t(d);for(let p of f){let h=ayn(l,p);h&&s.push(h)}}let a=[],o=new Set;for(let c of s){let l=String(c?.vod_id||"");!l||o.has(l)||(o.add(l),a.push(c))}let u=b$t(a,n,xf);return{page:u.page,pagecount:u.pagecount,limit:u.limit,total:u.total,list:u.list}}async function pyn(e,t){return Ci(e,t)}var I$t={meta:{key:"lingjisoupan",name:"\u2601\uFE0F \u7075\u673A",type:3},api:async e=>{e.post("/init",oyn),e.post("/home",uyn),e.post("/homeVod",cyn),e.post("/category",lyn),e.post("/detail",dyn),e.post("/play",pyn),e.post("/search",fyn),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};Yr();var T$t=Se(require("https"),1);var $_="https://pinglian.lol",bCe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",OC=20,N$t=Number.POSITIVE_INFINITY,hyn=Number.POSITIVE_INFINITY,myn=6,gyn=20*1e3,yyn=80,_yn=80,Ayn=15e3,Cli=10*60*1e3,vyn=60*60*1e3,Tli=60*1e3;var ECe=new Set(["quark","uc","baidu","tianyi","115","123","ali","yidong"]),U0={baidu:/https?:\/\/pan\.baidu\.com\/s\/[a-zA-Z0-9_-]+(?:\?pwd=[a-zA-Z0-9]{4})?/i,quark:/https?:\/\/pan\.quark\.cn\/s\/[a-zA-Z0-9]+/i,xunlei:/https?:\/\/pan\.xunlei\.com\/s\/[a-zA-Z0-9]+(?:\?pwd=[a-zA-Z0-9]{4})?(?:#)?/i,tianyi:/https?:\/\/cloud\.189\.cn\/(?:t\/[a-zA-Z0-9]+(?:%[0-9A-Fa-f]{2})*(?:([^)]*))?|web\/share\?code=[^&\s]+)/i,uc:/https?:\/\/drive\.uc\.cn\/s\/[a-zA-Z0-9]+(?:\?public=\d)?/i,pan123:/https?:\/\/(?:www\.)?123(?:684|865|685|912|pan|592)\.(?:com|cn)\/s\/[a-zA-Z0-9_-]+(?:\?(?:%E6%8F%90%E5%8F%96%E7%A0%81|提取码)[::][a-zA-Z0-9]+)?/i,pan115:/https?:\/\/(?:115\.com|115cdn\.com|anxia\.com)\/s\/[a-zA-Z0-9]+(?:\?password=[a-zA-Z0-9]{4})?(?:#)?/i,ali:/https?:\/\/(?:www\.)?(?:alipan|aliyundrive)\.com\/s\/[a-zA-Z0-9]+(?:\/folder\/[a-zA-Z0-9_-]+)?/i,mobile:/https?:\/\/(?:(?:www\.)?yun\.139\.com\/shareweb\/#\/w\/i\/[a-zA-Z0-9]+|(?:www\.)?caiyun\.139\.com\/(?:w\/i\/[a-zA-Z0-9]+|m\/i\?[a-zA-Z0-9]+)[^\s<>"']*|caiyun\.feixin\.10086\.cn\/[a-zA-Z0-9]+)/i},R$t=Ee.create({timeout:Ayn,validateStatus:()=>!0,httpsAgent:new T$t.default.Agent({rejectUnauthorized:!1}),headers:{"User-Agent":bCe,"X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*"}}),fz={ts:0,data:[]};var yCe=new Map,CL=new Map;function x$t(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n+=1,n>=r)break}async function byn(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let o=i;if(i+=1,o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>s())),n}function Eyn(e){return String(e||"").trim()}function kC(e,t,r){let n=Array.isArray(r)?r.length:0,i=t>0?Math.max(1,Math.ceil(t/OC)):Math.max(1,Number(e)||1);return{page:e,pagecount:i,limit:OC,total:t,list:r,count:n}}function q0(e){return String(e||"").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/\s+/g," ").trim()}async function D$t(e){return await e?.server?.db?.getObjectDefault("/panlian",{})}async function _Ce(e){let t=await D$t(e);return String(t?.cookie||"").trim()}async function Syn(e){let t=await D$t(e);return{username:String(t?.username||"").trim(),password:String(t?.password||"").trim()}}async function pz(e,t,r){await e.db.push(`/panlian/${t}`,r)}function wyn(e=[]){let t=new Map,r=Array.isArray(e)?e:[e];for(let n of r){let i=String(n||"").split(";")[0].trim();if(!i||!i.includes("="))continue;let s=i.indexOf("="),a=i.slice(0,s).trim(),o=i.slice(s+1).trim();a&&t.set(a,o)}return t}function Iyn(e=""){let t=new Map;return String(e||"").split(";").forEach(r=>{let n=String(r||"").trim();if(!n||!n.includes("="))return;let i=n.indexOf("="),s=n.slice(0,i).trim(),a=n.slice(i+1).trim();s&&t.set(s,a)}),t}function xyn(e){return[...e.entries()].map(([t,r])=>`${t}=${r}`).join("; ")}function k$t(e="",t=[]){let r=Iyn(e);for(let[n,i]of wyn(t).entries())r.set(n,i);return xyn(r).trim()}async function Cyn(e,t){let r=t?.headers?.["set-cookie"];if(!r)return await _Ce(e);let n=await _Ce(e),i=k$t(n,r);return i&&i!==n&&await pz(e.server,"cookie",i),i||n}async function Tyn(e,t=`${$_}/all-videos.php`){let r=await _Ce(e);return{"User-Agent":bCe,"X-Requested-With":"XMLHttpRequest",Accept:"application/json, text/plain, */*",Referer:t,Origin:$_,...r?{Cookie:r}:{}}}function Nyn(e){let t=String(e?.message||e?.msg||"").trim();return t.includes("\u8BF7\u5148\u767B\u5F55")||e?.code===401||e?.success===!1&&t.includes("\u767B\u5F55")}async function hz(e,t,r={},n,i={}){let{retryAuth:s=!0}=i||{},a=await R$t.get(`${$_}${t}`,{params:r,headers:await Tyn(e,n)});await Cyn(e,a);let o=a.data;if(a.status===401||Nyn(o)){if(s){let{username:c,password:l}=await Syn(e);if(c&&l)return await yz(e,c,l,!0),await hz(e,t,r,n,{...i,retryAuth:!1})}let u=new Error("\u76D8\u94FE\u9700\u8981\u767B\u5F55");throw u.loginRequired=!0,u.response=o,u}if(a.status>=400)throw new Error(`HTTP ${a.status}`);return o}function TE(e={}){return{vod_id:String(e.vod_id||e.id||""),vod_name:q0(e.vod_name||e.title||"\u672A\u77E5\u6807\u9898"),vod_pic:e.vod_pic||e.pic||e.cover||"",vod_remarks:q0(e.vod_remarks||e.state||e.note||""),vod_year:String(e.vod_year||e.year||""),vod_content:q0(e.vod_content||e.content||e.description||""),vod_actor:q0(e.vod_actor||e.actor||""),vod_director:q0(e.vod_director||e.director||""),vod_area:q0(e.vod_area||e.area||""),type_id:String(e.type_id||e.type||""),type_name:String(e.type_name||e.class||"")}}function Ryn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.url)return t}catch{}return null}function ACe(e,t=null){let r=String(e||"").trim(),n=t&&typeof t=="object"?{vod_id:r,vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||"",vod_year:t.vod_year||"",vod_content:t.vod_content||"",vod_actor:t.vod_actor||"",vod_director:t.vod_director||"",vod_area:t.vod_area||"",type_id:t.type_id||"",type_name:t.type_name||""}:null;return n?JSON.stringify({source:"panlian",mode:"show",vodId:r,baseVod:n}):`panlian_show|${r}`}function Dyn(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="panlian"&&r.mode==="show"&&r.vodId)return{vodId:String(r.vodId),baseVod:r.baseVod&&typeof r.baseVod=="object"?TE(r.baseVod):null}}catch{}let t=String(e||"").match(/^panlian_show\|(.+)$/);return t?{vodId:t[1],baseVod:null}:null}function kyn(e,t,r=null){let n=String(e||"").trim(),i=String(t||"").trim(),s=r&&typeof r=="object"?{vod_id:n,vod_name:r.vod_name||"",vod_pic:r.vod_pic||"",vod_remarks:r.vod_remarks||"",vod_year:r.vod_year||"",vod_content:r.vod_content||"",vod_actor:r.vod_actor||"",vod_director:r.vod_director||"",vod_area:r.vod_area||"",type_id:r.type_id||"",type_name:r.type_name||""}:null;return s?JSON.stringify({source:"panlian",mode:"group",vodId:n,panType:i,baseVod:s}):`panlian_group|${n}|${i}`}function Oyn(e){try{let r=JSON.parse(String(e||""));if(r&&r.source==="panlian"&&r.mode==="group"&&r.vodId&&r.panType)return{vodId:String(r.vodId),panType:String(r.panType),baseVod:r.baseVod&&typeof r.baseVod=="object"?TE(r.baseVod):null}}catch{}let t=String(e||"").match(/^panlian_group\|([^|]+)\|([^|]+)$/);return t?{vodId:t[1],panType:t[2],baseVod:null}:null}function Pyn(e){return JSON.stringify({source:"panlian",mode:"resource",...e})}function Myn(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="panlian"&&t.mode==="resource"&&t.url)return t}catch{}return null}function SCe(e={}){let t=String(e?.vod_id||"").trim();return{...e,vod_id:ACe(t,e),cate:{}}}function wCe(e={}){return mz(e?.pan_type||e?.drive_type||e?.sourceName||e?.groupName||e?.groupKey||"")||Byn(e?.url||e?.link||"")}function Lyn(e={},t={}){let r=String(t.url||t.link||"").trim();if(!r)return null;let n=String(t.password||t.pwd||"").trim(),i=wCe(t);if(!ECe.has(i)||!xCe(i))return null;let s=O$t(i)||q0(t.groupName||t.groupKey||"\u7F51\u76D8"),a=q0(t.note||t.remark||t.title||""),o=q0(t.created_at||t.create_time||t.updated_at||t.update_time||t.time||t.add_time||t.date||""),u=n&&!/([?&])(pwd|password|passcode|code)=/i.test(r)&&["baidu","xunlei","123"].includes(i)?`${r}${r.includes("?")?"&":"?"}pwd=${encodeURIComponent(n)}`:r,c=[e?.vod_name||"\u8D44\u6E90",a].filter(Boolean),l=[s,a,o].filter(Boolean);return{vod_id:Pyn({vodId:String(e?.vod_id||"").trim(),url:u,name:c.join(" \xB7 "),sourceName:s,note:a,time:o,pic:e?.vod_pic||"",content:e?.vod_content||"",panType:i,baseVodRemark:e?.vod_remarks||"",baseVodYear:e?.vod_year||"",baseVodActor:e?.vod_actor||"",baseVodDirector:e?.vod_director||"",baseVodArea:e?.vod_area||""}),vod_name:c.join(" \xB7 "),vod_pic:e?.vod_pic||P$t(i)||"",vod_remarks:l.join(" \xB7 "),vod_year:e?.vod_year||"",vod_content:e?.vod_content||"",vod_actor:e?.vod_actor||"",vod_director:e?.vod_director||"",vod_area:e?.vod_area||"",type_id:"",type_name:`${s} \u8D44\u6E90`,__panType:i,__time:Uyn(o)}}function Byn(e=""){let t=String(e||"").trim();return t?U0.ali.test(t)?"ali":U0.quark.test(t)?"quark":U0.baidu.test(t)?"baidu":U0.uc.test(t)?"uc":U0.tianyi.test(t)?"tianyi":U0.mobile.test(t)?"yidong":U0.pan123.test(t)?"123":U0.pan115.test(t)?"115":U0.xunlei.test(t)?"xunlei":"":""}function mz(e=""){let t=String(e||"").toLowerCase().trim();return t?["quark","\u5938\u514B","\u5938\u514B\u7F51\u76D8"].includes(t)?"quark":["uc","uc\u7F51\u76D8"].includes(t)?"uc":["baidu","\u767E\u5EA6","\u767E\u5EA6\u7F51\u76D8"].includes(t)?"baidu":["tianyi","189","\u5929\u7FFC","\u5929\u7FFC\u7F51\u76D8","cloud189"].includes(t)?"tianyi":["115","115\u7F51\u76D8"].includes(t)?"115":["123","pan123","123\u7F51\u76D8","123\u4E91\u76D8"].includes(t)?"123":["ali","aliyun","alipan","\u963F\u91CC","\u963F\u91CC\u4E91\u76D8"].includes(t)?"ali":["mobile","139","yidong","caiyun","\u79FB\u52A8","\u79FB\u52A8\u4E91\u76D8","\u79FB\u52A8\u7F51\u76D8"].includes(t)?"yidong":"":""}function ICe(){return Array.isArray($a())?$a():[]}function $yn(){return new Map(ICe().map((e,t)=>[String(e?.key||"").trim(),t]))}function xCe(e=""){let t=mz(e);return t?!!ICe().find(n=>String(n?.key||"").trim()===t)?.enable:!1}function O$t(e=""){let t=mz(e);if(!t)return"";let r=ICe().find(i=>String(i?.key||"").trim()===t);return r?.name?r.name:ls().find(i=>i?.key===t)?.name||""}function P$t(e=""){let t=mz(e);return t&&ls().find(n=>n?.key===t)?.pic||""}function Fyn(e=[]){let t=$yn();return[...e].sort((r,n)=>(t.get(r?.__panType)??999)-(t.get(n?.__panType)??999))}function Uyn(e){if(e==null)return 0;if(typeof e=="number")return Number.isFinite(e)?e:0;let t=String(e).trim();if(!t)return 0;let r=Date.parse(t.replace(/\./g,"-"));if(!Number.isNaN(r))return r;let n=t.match(/(20\d{2})[-/.](\d{1,2})[-/.](\d{1,2})(?:\s+(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?)?/);if(!n)return 0;let[,i,s,a,o="0",u="0",c="0"]=n;return new Date(Number(i),Number(s)-1,Number(a),Number(o),Number(u),Number(c)).getTime()}async function M$t(e){if(fz.data.length&&Date.now()-fz.ts<vyn)return fz.data;let t=await hz(e,"/api/get_types.php"),r=Array.isArray(t?.data)?t.data:[];return fz={ts:Date.now(),data:r},r}async function gz(e,t={}){let r=await hz(e,"/api/get_videos.php",t,`${$_}/all-videos.php`);return(Array.isArray(r?.data?.list)?r.data.list:Array.isArray(r?.data)?r.data:Array.isArray(r?.list)?r.list:[]).map(TE)}async function qyn(e,t,r=N$t){let n=[],i=new Set;for(let s=1;s<=hyn&&n.length<r;s+=1){let a=await gz(e,{wd:t,pg:s});if(!Array.isArray(a)||a.length===0)break;for(let o of a){if(!String(o.vod_name||"").includes(t))continue;let c=String(o.vod_id||"").trim()||`${o.vod_name||""}|${o.vod_pic||""}`;if(!i.has(c)&&(i.add(c),n.push(o),n.length>=r))break}if(a.length<OC)break}return n}async function vCe(e,t,r){let n=await hz(e,"/api/search_pan_links.php",{keyword:t,vod_id:r,_t:1},`${$_}/all-videos.php`),i=n?.data&&typeof n.data=="object"?n.data:{},s=[];for(let[a,o]of Object.entries(i)){let u=Array.isArray(o?.links)?o.links:[];for(let c of u)s.push({...c,groupKey:a,groupName:o?.name||a})}return s}async function C$t(e,t){let r=String(t||"").trim();if(!r)return null;let n=await M$t(e).catch(()=>[]);for(let i of n){let a=(await gz(e,{t:i?.type_id||0,pg:1}).catch(()=>[])).find(o=>String(o.vod_id)===r);if(a)return a}return null}async function yz(e,t,r,n=!0){let i=new URLSearchParams;i.set("username",String(t||"").trim()),i.set("password",String(r||"").trim()),n&&i.set("remember","on");let s=await R$t.post(`${$_}/api/login.php`,i.toString(),{headers:{"User-Agent":bCe,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",Referer:`${$_}/pages/login.php`,Origin:$_,Accept:"application/json, text/plain, */*"}}),a=s.data||{};if(s.status>=400||a?.success!==!0)throw new Error(a?.message||`\u767B\u5F55\u5931\u8D25 HTTP ${s.status}`);let o=k$t("",s.headers["set-cookie"]||[]);if(!o)throw new Error("\u767B\u5F55\u6210\u529F\u4F46\u672A\u62FF\u5230 Cookie");return await pz(e.server,"cookie",o),await pz(e.server,"username",String(t||"").trim()),await pz(e.server,"password",String(r||"").trim()),{success:!0,message:a?.message||"\u767B\u5F55\u6210\u529F",cookie:o}}async function jyn(e,t){return await xs(e,t),{}}async function Hyn(e){let t=await M$t(e),r=[],n={};for(let i of t)r.push({type_id:String(i.type_id),type_name:i.type_name}),Array.isArray(i.children)&&i.children.length&&(n[String(i.type_id)]=[{key:"sc",name:"\u5206\u7C7B",value:[{n:"\u5168\u90E8",v:""},...i.children.map(s=>({n:s.type_name,v:String(s.type_id)}))]}]);return{class:r,filters:n}}async function Kyn(e){return{list:(await gz(e,{t:0,pg:1})).slice(0,OC).map(r=>SCe(r))}}async function Vyn(e){let t=e.body||{},r=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),n=String(t.tid||t.id||t.t||"0").trim(),i=t.extend||t.filters||t.ext||{},s=Oyn(n);if(s){if(r>1)return kC(r,0,[]);let l=s.vodId,d=s.baseVod||null,p=(Array.isArray(t?.list)?t.list:[]).find(y=>String(y?.vod_id||"")===ACe(l)||String(y?.vod_id||"")===l);p&&(d=TE({...p,vod_id:l})),d||(d=await C$t(e,l).catch(()=>null)),d||(d=TE({vod_id:l,vod_name:l}));let m=(await vCe(e,d.vod_name||l,l).catch(()=>[])).map(y=>Lyn(d,y)).filter(y=>y&&y.__panType===s.panType).sort((y,g)=>(g.__time||0)-(y.__time||0)).map(({__panType:y,__time:g,...v})=>v);return kC(1,m.length,m)}let a=Dyn(n);if(a){if(r>1)return kC(r,0,[]);let l=a.vodId,d=a.baseVod||null,p=(Array.isArray(t?.list)?t.list:[]).find(g=>String(g?.vod_id||"")===n||String(g?.vod_id||"")===ACe(l));p&&(d=TE({...p,vod_id:l})),d||(d=await C$t(e,l).catch(()=>null)),d||(d=TE({vod_id:l}));let h=await vCe(e,d.vod_name||l,l).catch(()=>[]),m=new Map;for(let g of h){let v=wCe(g);if(!ECe.has(v)||!xCe(v))continue;let A=m.get(v)||{count:0};A.count+=1,m.set(v,A)}let y=Fyn([...m.entries()].map(([g,v])=>({vod_id:kyn(l,g,d),vod_name:O$t(g),vod_pic:P$t(g)||"",type_id:n,type_name:"\u7F51\u76D8\u5206\u7EC4",vod_remarks:`${v.count} \u6761\u8D44\u6E90`,cate:{},__panType:g}))).map(({__panType:g,...v})=>v);return kC(1,y.length,y)}let u=String(i.sc||"").trim()||n,c=await gz(e,{t:u,pg:r});return kC(r,r*OC+(c.length>=OC?1:0),c.map(l=>SCe(l)))}async function zyn(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let i=Myn(n)||Ryn(n);if(!i?.url)continue;let s=await hi(i.url,e).catch(()=>({froms:"",urls:"",links:[]})),a={vod_id:String(n||""),vod_name:i.name||i.baseVodName||"\u8D44\u6E90",vod_pic:i.pic||"",vod_remarks:i.baseVodRemark||[i.sourceName,i.note,i.time].filter(Boolean).join(" \xB7 "),vod_year:i.baseVodYear||"",vod_actor:i.baseVodActor||"",vod_director:i.baseVodDirector||"",vod_area:i.baseVodArea||"",vod_content:i.content||"",vod_play_from:s?.froms||"",vod_play_url:s?.urls||""};Array.isArray(s?.links)&&s.links.length>0&&(a.vod_links=s.links),r.push(a)}return{list:r}}async function Qyn(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!t)return kC(1,0,[]);let n=Eyn(t),i=Date.now(),s=yCe.get(n),a=null;if(s&&i-s.timestamp<gyn)a=s.data;else{let o=CL.get(n);o||(o=(async()=>{let u=await qyn(e,t,N$t),c=[],l=new Set,d=await byn(u,myn,async f=>{let h=(await vCe(e,f.vod_name||f.vod_id,f.vod_id).catch(()=>[])).filter(m=>{let y=wCe(m);return ECe.has(y)&&xCe(y)});return{vod:f,enabledLinks:h}});for(let f of d){if(!f?.vod||!Array.isArray(f.enabledLinks)||f.enabledLinks.length===0)continue;let p=f.vod,h=String(p.vod_id||"").trim()||`${p.vod_name||""}|${p.vod_pic||""}`;!h||l.has(h)||(l.add(h),c.push(SCe(p)))}return c})(),CL.set(n,o),x$t(CL,_yn));try{a=await o,yCe.set(n,{data:a,timestamp:Date.now()}),x$t(yCe,yyn)}finally{CL.get(n)===o&&CL.delete(n)}}return{page:r,pagecount:1,limit:a.length,total:a.length,list:a,count:a.length}}async function Gyn(e,t){return Ci(e,t)}var L$t={meta:{key:"panlian",name:"\u2601\uFE0F \u76D8\u94FE",type:3},api:async e=>{e.post("/init",jyn),e.post("/home",Hyn),e.post("/homeVod",Kyn),e.post("/category",Vyn),e.post("/detail",zyn),e.post("/play",Gyn),e.post("/search",Qyn),e.post("/login",async t=>yz(t,t.body?.username,t.body?.password,t.body?.remember!==!1)),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};Yr();var gu="https://www.qwnull.com",Yyn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",NCe=20,Wyn=15e3,Xyn=20*1e3,Jyn=80,Zyn=10*60*1e3,e_n=10*60*1e3,t_n=2,r_n=2,$$t=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"30",type_name:"\u77ED\u5267"}],n_n={\u7C7B\u578B:"class",\u5E74\u4EE3:"year",\u5730\u533A:"area",\u8BED\u8A00:"lang",\u6392\u5E8F:"by"},F$t=Ee.create({timeout:Wyn,validateStatus:()=>!0,headers:{"User-Agent":Yyn,Accept:"text/html,application/json,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9"}}),CCe=new Map,B$t=new Map,TCe=new Map;function U$t(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n+=1,n>=r)break}function F_(e){return String(e||"").replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/\s+/g," ").trim()}function Bo(e){return F_(e?.text?.()||"")}function _z(e=""){let t=String(e||"").trim();return t?/^https?:\/\//i.test(t)?t:t.startsWith("//")?"https:"+t:new URL(t,gu).toString():""}function td(e,t,r){return{page:e,pagecount:t,limit:NCe,total:Math.max(r.length,t*NCe),list:r,count:r.length}}function i_n(e,t=null){let r=String(e||"").trim();return t&&typeof t=="object"?JSON.stringify({source:"qwnull",mode:"show",vodId:r,baseVod:t}):"qwnull_show|"+r}function q$t(e){try{let r=JSON.parse(String(e||""));if(r?.source==="qwnull"&&r?.mode==="show"&&r?.vodId)return{vodId:String(r.vodId).trim(),baseVod:r.baseVod&&typeof r.baseVod=="object"?r.baseVod:null}}catch{}let t=String(e||"").match(/^qwnull_show\|(.+)$/);return t?{vodId:t[1],baseVod:null}:null}function s_n(e,t,r="",n=null){let i=String(e||"").trim(),s=String(t||"").trim(),a=String(r||s).trim();return n&&typeof n=="object"?JSON.stringify({source:"qwnull",mode:"group",vodId:i,groupKey:s,groupName:a,baseVod:n}):"qwnull_group|"+i+"|"+encodeURIComponent(s)}function j$t(e){try{let r=JSON.parse(String(e||""));if(r?.source==="qwnull"&&r?.mode==="group"&&r?.vodId){let n=String(r.groupKey||"").trim();if(n)return{vodId:String(r.vodId).trim(),groupKey:n,groupName:String(r.groupName||n).trim(),baseVod:r.baseVod&&typeof r.baseVod=="object"?r.baseVod:null}}}catch{}let t=String(e||"").match(/^qwnull_group\|([^|]+)\|(.+)$/);return t?{vodId:t[1],groupKey:decodeURIComponent(t[2]),groupName:decodeURIComponent(t[2]),baseVod:null}:null}function a_n(e={}){return JSON.stringify({source:"qwnull",mode:"resource",...e})}function o_n(e){try{let t=JSON.parse(String(e||""));if(t?.source==="qwnull"&&t?.mode==="resource"&&t?.url)return t}catch{}return null}function u_n(e){try{let t=JSON.parse(String(e||""));if(t?.source==="qwnull"&&t.id)return{id:String(t.id).trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function c_n(e=""){return String(e||"").match(/\/mv\/(\d+)\.html/i)?.[1]||""}function H$t(e={}){return{vod_id:String(e?.vod_id||"").trim(),vod_name:String(e?.vod_name||"").trim(),vod_pic:String(e?.vod_pic||"").trim(),vod_remarks:String(e?.vod_remarks||"").trim(),vod_year:String(e?.vod_year||"").trim(),vod_content:String(e?.vod_content||"").trim(),vod_actor:String(e?.vod_actor||"").trim(),vod_director:String(e?.vod_director||"").trim(),vod_area:String(e?.vod_area||"").trim(),type_id:String(e?.type_id||"").trim(),type_name:String(e?.type_name||"").trim()}}function DCe(e={}){let t=H$t(e);return{...t,vod_id:i_n(t.vod_id,t),cate:{}}}function Az(e=""){let t=String(e||"").toLowerCase().trim();return t?["quark","\u5938\u514B","\u5938\u514B\u4E91\u76D8","\u5938\u514B\u7F51\u76D8"].includes(t)?"quark":["uc","uc\u4E91\u76D8","uc\u7F51\u76D8"].includes(t)?"uc":["baidu","\u767E\u5EA6","\u767E\u5EA6\u4E91\u76D8","\u767E\u5EA6\u7F51\u76D8"].includes(t)?"baidu":["tianyi","189","\u5929\u7FFC","\u5929\u7FFC\u4E91\u76D8","\u5929\u7FFC\u7F51\u76D8","cloud189"].includes(t)?"tianyi":["115","115\u7F51\u76D8"].includes(t)?"115":["123","pan123","123\u7F51\u76D8","123\u4E91\u76D8"].includes(t)?"123":["ali","aliyun","alipan","\u963F\u91CC","\u963F\u91CC\u7F51\u76D8","\u963F\u91CC\u4E91\u76D8"].includes(t)?"ali":["mobile","139","yidong","caiyun","\u79FB\u52A8","\u79FB\u52A8\u4E91\u76D8","\u79FB\u52A8\u7F51\u76D8"].includes(t)?"yidong":["xunlei","\u8FC5\u96F7","\u8FC5\u96F7\u4E91\u76D8","\u8FC5\u96F7\u7F51\u76D8"].includes(t)?"xunlei":"":""}function kCe(){return Array.isArray($a())?$a():[]}function l_n(){let e=kCe(),t=e.length>0?e:ls();return new Map(t.map((r,n)=>[String(r?.key||"").trim(),n]))}function d_n(e=""){let t=Az(e);if(!t)return!0;let r=kCe();return r.length===0?!0:!!r.find(i=>String(i?.key||"").trim()===t)?.enable}function f_n(e=""){let t=Az(e);if(!t)return"";let r=kCe().find(i=>String(i?.key||"").trim()===t);return r?.name?r.name:ls().find(i=>i?.key===t)?.name||""}function p_n(e=""){let t=Az(e);return t&&ls().find(n=>n?.key===t)?.pic||""}function PC(e="",t=""){let r=Az(e);return{panType:r,enabled:d_n(r),name:f_n(r)||F_(e||"\u7F51\u76D8\u4E0B\u8F7D"),pic:p_n(r)||t||""}}function h_n(e=[]){let t=l_n();return[...e].sort((r,n)=>{let i=r?.__panType?t.get(r.__panType)??999:999,s=n?.__panType?t.get(n.__panType)??999:999;return i!==s?i-s:(r?.__groupIndex??999)-(n?.__groupIndex??999)})}function m_n(e={},t={}){let r=H$t(e),n=String(t?.url||"").trim();if(!n)return null;let i=PC(t?.groupName||"",r.vod_pic);if(i.panType&&!i.enabled)return null;let s=i.name||F_(t?.groupName||"\u7F51\u76D8\u4E0B\u8F7D"),a=F_(t?.title||r.vod_name||"\u8D44\u6E90");return{vod_id:a_n({vodId:r.vod_id,url:n,sourceName:s,groupKey:String(t?.groupKey||"").trim(),name:a,pic:r.vod_pic,content:r.vod_content,baseVodRemark:r.vod_remarks,baseVodYear:r.vod_year,baseVodActor:r.vod_actor,baseVodDirector:r.vod_director,baseVodArea:r.vod_area}),vod_name:a,vod_pic:r.vod_pic,vod_remarks:s,vod_year:r.vod_year,vod_content:r.vod_content,vod_actor:r.vod_actor,vod_director:r.vod_director,vod_area:r.vod_area,type_name:s+" \u8D44\u6E90"}}function K$t(e,t){let r=e(t),n=r.find('.li-img a[href*="/mv/"], h3 a[href*="/mv/"], a[href*="/mv/"]').first(),i=n.attr("href")||"",s=c_n(i);if(!s)return null;let a=Bo(r.find(".li-bottom h3 a").first())||Bo(n.find(".txt").first())||F_(n.attr("title")||""),o=_z(r.find("img").first().attr("data-original")||r.find("img").first().attr("src")||""),u=Bo(r.find(".bottom2").first())||Bo(r.find(".tag").first())||Bo(r.find(".li-bottom h3 span").first());return{vod_id:s,vod_name:a||s,vod_pic:o,vod_remarks:u}}function OCe(e=[]){let t=[],r=new Set;for(let n of e){let i=String(n?.vod_id||"");!i||r.has(i)||(r.add(i),t.push(n))}return t}function g_n(e=""){let t=decodeURIComponent(String(e||"").trim()),r=t.split("-");for(;r.length<12;)r.push("");return{raw:t,parts:r,tid:r[0]||"",area:r[1]||"",by:r[2]||"",class:r[3]||"",lang:r[4]||"",page:r[8]||"",year:r[11]||""}}function V$t(e=""){let t=String(e||"").match(/\/ms\/([^/?#]+)\.html/i);return t?g_n(t[1]):null}function y_n(e,t={},r=1){let n=new Array(12).fill("");return n[0]=String(e||"").trim(),n[1]=String(t.area||"").trim(),n[2]=String(t.by||t.sort||"").trim(),n[3]=String(t.class||"").trim(),n[4]=String(t.lang||"").trim(),n[8]=r>1?String(r).trim():"",n[11]=String(t.year||"").trim(),"/ms/"+n.map(i=>encodeURIComponent(i)).join("-")+".html"}function __n(e={}){return["area","by","sort","class","lang","year"].some(t=>String(e?.[t]||"").trim()!=="")}function A_n(e){let t=[];return e(".list-box dl, .list-box .sort").each((r,n)=>{let i=e(n),s=Bo(i.find("dt").first()).replace(/[::]/g,"").trim(),a=n_n[s]||"";if(!a)return;let o=i.find("a[href]").map((l,d)=>{let f=e(d),p=f.attr("href")||"",h=V$t(p),m=Bo(f);return!h||!m?null:{n:m,v:h[a]||""}}).get().filter(Boolean),u=[],c=new Set;for(let l of o){let d=l.n+"|"+l.v;c.has(d)||(c.add(d),u.push(l))}u.length>0&&t.push({key:a,name:s,value:u})}),t}async function vz(e,t=gu){let r=await F$t.get(e,{headers:{Referer:t},responseType:"text"});if(r.status>=400)throw new Error("HTTP "+r.status);return E_n(typeof r.data=="string"?r.data:String(r.data||""))}function v_n(e){return new Promise(t=>setTimeout(t,e))}async function b_n(e,t=gu,r=3){let n=null;for(let i=0;i<r;i+=1){try{let s=await vz(e,t);if(String(s||"").trim())return s;n=new Error("EMPTY_HTML")}catch(s){n=s}i<r-1&&await v_n(200*(i+1))}throw n||new Error("DETAIL_FETCH_FAILED")}function E_n(e){let t=String(e||""),r=t.trim();if(!r)return"";if(!r.startsWith('"'))return t;try{let n=JSON.parse(r);return typeof n=="string"?n:t}catch{return t}}async function S_n(e,t=gu){let r=await F$t.get(e,{headers:{Referer:t,Accept:"application/json, text/plain, */*","X-Requested-With":"XMLHttpRequest"}});if(r.status>=400)throw new Error("HTTP "+r.status);return r.data}async function RCe(e,t,r){if(!Array.isArray(e)||e.length===0)return[];let n=new Array(e.length),i=0,s=async()=>{for(;;){let o=i;if(i+=1,o>=e.length)break;n[o]=await r(e[o],o)}},a=Math.min(t,e.length);return await Promise.all(Array.from({length:a},()=>s())),n}function w_n(e=""){let t=String(e||"").trim();return!(!t||t==="#"||/^javascript:/i.test(t))}function I_n(e,t){let r=[],n=new Set,i=e.find(".nav-tabs li.title").map((a,o)=>Bo(t(o))).get();return e.find(".down-list ul.content").each((a,o)=>{let u=F_(i[a]||"\u7F51\u76D8\u4E0B\u8F7D"),c=String(a)+":"+u;t(o).find("li.down-list2").each((d,f)=>{let p=t(f),h=F_(p.find(".down-list3 a").attr("title")||Bo(p.find(".down-list3 a").first())||""),m=p.find("span a[href], .down-list3 a[href]").map((g,v)=>_z(t(v).attr("href")||"")).get(),y=[...new Set(m.filter(w_n))];for(let g of y){let v=c+"|"+g;n.has(v)||(n.add(v),r.push({url:g,title:h,groupKey:c,groupName:u,groupIndex:a}))}})}),r}function x_n(e,t,r={}){let n=Bo(e(".main-ui-meta h1").first().clone().find("span").remove().end())||r.vod_name||"",i=Bo(e(".main-ui-meta h1 span.year").first()).replace(/[()]/g,""),s=_z(e(".main-left-1 .img img").first().attr("src")||r.vod_pic||""),a=Bo(e(".main-ui-meta .otherbox").first())||r.vod_remarks||"",o=Bo(e(".movie-introduce .sqjj_a").first())||Bo(e(".movie-introduce .zkjj_a").first())||"",u="",c="",l="";return e(".main-ui-meta > div").each((d,f)=>{let p=Bo(e(f));p&&(p.startsWith("\u5BFC\u6F14\uFF1A")&&(u=p.replace(/^导演:/,"").trim()),p.startsWith("\u4E3B\u6F14\uFF1A")&&(c=p.replace(/^主演:/,"").trim()),p.startsWith("\u5730\u533A\uFF1A")&&(l=p.replace(/^地区:/,"").trim()))}),{vod_id:String(t||"").trim(),vod_name:n||t,vod_pic:s,vod_remarks:a,vod_year:i,vod_content:o,vod_actor:c,vod_director:u,vod_area:l}}async function NE(e,t={}){let r=String(e||"").trim();if(!r)return null;let n=CCe.get(r);if(n&&Date.now()-n.ts<Zyn){let c={...n.data.vod,...Object.fromEntries(Object.entries(t||{}).filter(([,l])=>l))};return{...n.data,vod:c}}let i=await b_n(gu+"/mv/"+encodeURIComponent(r)+".html",gu+"/",3),s=Jr.load(i),a=x_n(s,r,t),o=[];s(".wrap.row").each((c,l)=>{let d=s(l);Bo(d.find("h2").first()).includes("\u7F51\u76D8\u4E0B\u8F7D")&&(o=I_n(d,s))});let u={html:i,vod:a,shareLinks:o};return CCe.set(r,{ts:Date.now(),data:u}),U$t(CCe,200,40),u}async function C_n(e){let t=String(e||"").trim();if(!t)return[];let r=B$t.get(t);if(r&&Date.now()-r.ts<e_n)return r.data;let n=await vz(gu+"/vt/"+t+".html",gu+"/"),i=Jr.load(n),s=A_n(i);return B$t.set(t,{ts:Date.now(),data:s}),s}async function T_n(){let e=await RCe($$t,r_n,async r=>{let n=String(r?.type_id||"").trim(),i=await C_n(n).catch(()=>[]);return[n,i]}),t={};for(let[r,n]of e)t[r]=n;return t}function N_n(e){return String(e||"").trim().toLowerCase()}async function R_n(e){let t=gu+"/index.php/ajax/suggest?mid=1&limit=20&wd="+encodeURIComponent(e),r=await S_n(t,gu+"/");return(Array.isArray(r?.list)?r.list:[]).map(i=>({id:String(i?.id||"").trim(),name:F_(i?.name||""),pic:_z(i?.pic||"")})).filter(i=>i.id&&i.name)}function D_n(e,t,r){let n=[];return e('.pages a[href*="/vt/'+t+'-"]').each((i,s)=>{let o=(e(s).attr("href")||"").match(new RegExp("/vt/"+t+"-(\\d+)\\.html","i"));o&&n.push(Number.parseInt(o[1],10)||0)}),n.push(r),Math.max(1,...n)}function k_n(e,t){let r=[];return e(".pages a[href], .page a[href], .pagination a[href]").each((n,i)=>{let s=V$t(e(i).attr("href")||"");s?.page&&r.push(Number.parseInt(s.page,10)||0)}),r.push(t),Math.max(1,...r)}function O_n(e=[],t=""){return e.some(r=>{let n=PC(r?.groupName||"",t);return!n.panType||n.enabled})}async function P_n(e,t){return await xs(e,t),{}}async function M_n(){return{class:$$t,filters:await T_n()}}async function L_n(){let e=await vz(gu+"/",gu+"/"),t=Jr.load(e);return{list:OCe(t("ul.content-list li").map((n,i)=>K$t(t,i)).get()).slice(0,NCe).map(n=>DCe(n))}}async function B_n(e){let t=e.body||{},r=String(t.tid||t.id||t.t||"1").trim()||"1",n=Math.max(1,Number.parseInt(t.pg||t.page||t.pn,10)||1),i=j$t(r);if(i){let h=PC(i.groupName||i.groupKey,i.baseVod?.vod_pic||"");if(h.panType&&!h.enabled)return td(1,1,[]);if(n>1)return td(n,1,[]);let m=await NE(i.vodId,i.baseVod||{}).catch(()=>null);if(!m)return td(1,1,[]);let y=m.shareLinks.filter(g=>g.groupKey===i.groupKey).map(g=>m_n(m.vod,g)).filter(Boolean);return td(1,1,y)}let s=q$t(r);if(s){if(n>1)return td(n,1,[]);let h=await NE(s.vodId,s.baseVod||{}).catch(()=>null);if(!h)return td(1,1,[]);let m=new Map;for(let g of h.shareLinks){let v=PC(g.groupName,h.vod.vod_pic);if(v.panType&&!v.enabled)continue;let A=m.get(g.groupKey)||{groupName:g.groupName||"\u7F51\u76D8\u4E0B\u8F7D",groupIndex:Number.isFinite(g.groupIndex)?g.groupIndex:m.size,count:0};A.count+=1,m.set(g.groupKey,A)}let y=h_n([...m.entries()].map(([g,v])=>{let A=PC(v.groupName,h.vod.vod_pic);return{vod_id:s_n(h.vod.vod_id,g,v.groupName,h.vod),vod_name:A.name,vod_pic:A.pic,type_id:r,type_name:"\u7F51\u76D8\u5206\u7EC4",vod_remarks:String(v.count)+" \u6761\u8D44\u6E90",cate:{},__panType:A.panType,__groupIndex:v.groupIndex}})).map(({__panType:g,__groupIndex:v,...A})=>A);return td(1,1,y)}let a=t.extend||t.filters||t.ext||{},o=__n(a),u=o?y_n(r,a,n):n<=1?"/vt/"+r+".html":"/vt/"+r+"-"+n+".html",c=gu+"/vt/"+r+".html",l=await vz(gu+u,c),d=Jr.load(l),f=OCe(d(".content-list > li").map((h,m)=>K$t(d,m)).get()).map(h=>DCe(h)),p=o?k_n(d,n):D_n(d,r,n);return td(n,p,f)}async function $_n(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let i=q$t(n);if(i){let c=await NE(i.vodId,i.baseVod||{}).catch(()=>null);c&&r.push({...c.vod,vod_id:String(n||""),vod_remarks:c.vod.vod_remarks||String(c.shareLinks.length)+" \u6761\u7F51\u76D8\u8D44\u6E90",cate:{}});continue}let s=j$t(n);if(s){let c=PC(s.groupName||s.groupKey,s.baseVod?.vod_pic||"");if(c.panType&&!c.enabled)continue;let l=await NE(s.vodId,s.baseVod||{}).catch(()=>null);l&&r.push({vod_id:String(n||""),vod_name:c.name,vod_pic:c.pic,vod_remarks:"\u76EE\u5F55\u9879\uFF0C\u8BF7\u8FDB\u5165\u4E0B\u4E00\u5C42\u67E5\u770B\u8D44\u6E90",vod_year:l.vod.vod_year||"",vod_content:l.vod.vod_content||"",vod_actor:l.vod.vod_actor||"",vod_director:l.vod.vod_director||"",vod_area:l.vod.vod_area||""});continue}let a=o_n(n);if(a?.url){let c=await hi([a.url],e).catch(()=>null),l={vod_id:String(n||""),vod_name:a.name||"\u8D44\u6E90",vod_pic:a.pic||"",vod_remarks:a.baseVodRemark||a.sourceName||"",vod_year:a.baseVodYear||"",vod_content:a.content||"",vod_actor:a.baseVodActor||"",vod_director:a.baseVodDirector||"",vod_area:a.baseVodArea||""};c?.froms&&c?.urls&&(l.vod_play_from=c.froms,l.vod_play_url=c.urls,Array.isArray(c.links)&&c.links.length>0&&(l.vod_links=c.links)),r.push(l);continue}let o=u_n(n);if(!o.id)continue;let u=await NE(o.id,o.meta).catch(()=>null);u&&r.push(u.vod)}return{list:r}}async function F_n(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!t)return td(1,1,[]);if(r>1)return td(r,1,[]);let n=N_n(t),i=TCe.get(n);if(i&&Date.now()-i.ts<Xyn)return td(1,1,i.data);let s=await R_n(t),a=await RCe(s,t_n,async l=>({item:l,bundle:await NE(l.id,{vod_name:l.name,vod_pic:l.pic}).catch(()=>null)})),o=a.filter(l=>!l.bundle).map(l=>l.item);if(o.length>0){let l=await RCe(o,1,async f=>({id:f.id,bundle:await NE(f.id,{vod_name:f.name,vod_pic:f.pic}).catch(()=>null)})),d=new Map(l.map(f=>[f.id,f.bundle]));for(let f of a)!f.bundle&&d.has(f.item.id)&&(f.bundle=d.get(f.item.id))}let u=a.some(l=>!l.bundle),c=OCe(a.filter(l=>l.bundle&&O_n(l.bundle.shareLinks,l.bundle.vod?.vod_pic||"")).map(l=>DCe({...l.bundle.vod,vod_remarks:l.bundle.vod.vod_remarks||String(l.bundle.shareLinks.length)+" \u6761\u7F51\u76D8\u8D44\u6E90"})));return u||(TCe.set(n,{ts:Date.now(),data:c}),U$t(TCe,Jyn)),td(1,1,c)}async function U_n(e,t){return Ci(e,t)}var z$t={meta:{key:"qwnull",name:"\u2601\uFE0F \u4E03\u5473",type:3},api:async e=>{e.post("/init",P_n),e.post("/home",M_n),e.post("/homeVod",L_n),e.post("/category",B_n),e.post("/detail",$_n),e.post("/play",U_n),e.post("/search",F_n),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};Kt();var MC="https://wooyun.tv",q_n=`${MC}/api/proxy?url=`,Y$t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",W$t={"User-Agent":Y$t,Referer:MC,Origin:MC},BCe=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv_series",type_name:"\u7535\u89C6\u5267"},{type_id:"korean_drama",type_name:"\u97E9\u5267"},{type_id:"short_drama",type_name:"\u77ED\u5267"},{type_id:"animation",type_name:"\u52A8\u753B"},{type_id:"variety",type_name:"\u7EFC\u827A"}],j_n=Object.fromEntries(BCe.map(e=>[e.type_id,e.type_name])),H_n=[1,2,3],X$t=12e3,TL="default",Q$t=24,PCe=10,G$t={genre:"class",region:"area",language:"lang",year:"year"},LCe=new Map,bz=new Map,U_={homeVod:60*1e3,detail:2*60*1e3,search:30*1e3,category:30*1e3,play:20*1e3};function K_n(e,t){let r=LCe.get(e);return r?Date.now()-r.ts>t?(LCe.delete(e),null):r.data:null}function V_n(e,t){LCe.set(e,{ts:Date.now(),data:t})}function z_n(e){return`${q_n}${encodeURIComponent(e)}`}async function q_(e,t={}){let r=z_n(e),n=(t.method||"GET").toUpperCase(),i=`${n}:${e}:${t.body||""}`,s=t.ttl||0;if(s>0){let o=K_n(i,s);if(o)return o}if(bz.has(i))return bz.get(i);let a=(async()=>{let o={headers:{...W$t,...t.headers||{}},timeout:t.timeout||X$t,method:n};t.body!==void 0&&(o.data=t.body,o.headers["Content-Type"]||(o.headers["Content-Type"]="application/json"));let c=(n==="POST"?await _e.post(r,o.data,o):await _e.get(r,o))?.data;return s>0&&V_n(i,c),c})();bz.set(i,a);try{return await a}finally{bz.delete(i)}}function Cf(e){return Array.isArray(e)?e:[]}function Q_n(e){return String(e||"").replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function MCe(e){return Array.isArray(e)?e.filter(Boolean).join(" / "):String(e||"").trim()}function J$t(e,t=0){let r=Number.parseInt(e,10);return Number.isNaN(r)?t:r}function $Ce(e={}){let t=String(e.id||e.mediaId||"").trim(),r=e.title||e.mediaName||e.originalTitle||"",n=e.mediaType?.name||j_n[e.mediaType?.code]||"",i=e.releaseYear||e.releaseDate||"",s=e.rating?`\u2B50${e.rating}`:"",a=[n,i,e.episodeStatus,e.remark,s].filter(Boolean).join(" \xB7 ");return{vod_id:t?JSON.stringify({id:t,pic:e.posterUrl||e.thumbUrl||e.backdropUrl||"",remark:a}):"",vod_name:r,vod_pic:e.posterUrl||e.thumbUrl||e.backdropUrl||"",vod_remarks:a}}function G_n(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return t}catch{}return{id:String(e||"").trim(),pic:"",remark:""}}async function Y_n(){return{}}async function W_n(){let e=await q_("/movie/category/menu",{ttl:U_.homeVod}).catch(()=>null);return Cf(e?.data||e)}function X_n(e=[]){let t={},r=[];for(let n of e){let i=G$t[n?.nameEn]||G$t[n?.code];i&&r.push({key:i,name:n?.name||i,init:"",value:Cf(n?.children).map(s=>({n:s?.name||s?.code||"",v:s?.code||""})).filter(s=>s.v)})}for(let n of BCe)t[n.type_id]=[{key:"sort",name:"\u6392\u5E8F",init:TL,value:[{n:"\u9ED8\u8BA4",v:TL},{n:"\u6700\u65B0",v:"latest"},{n:"\u6700\u70ED",v:"hot"},{n:"\u8BC4\u5206",v:"score"}]},...r];return t}async function J_n(){let e=await W_n();return{class:BCe,filters:X_n(e)}}async function Z_n(){let e=[],t=new Set;for(let r of H_n)try{let n=await q_(`/movie/media/home/custom/classify/${r}/3?limit=12`,{ttl:U_.homeVod}),i=Cf(n?.data?.records);for(let s of i)for(let a of Cf(s?.mediaResources)){let o=$Ce(a);!o.vod_id||t.has(o.vod_id)||(t.add(o.vod_id),e.push(o))}}catch{}return{list:e.slice(0,36)}}async function eAn(e){let t=String(e.body?.id||"").trim()||"movie",r=Math.max(1,J$t(e.body?.page,1)),n=e.body?.extend||e.body?.filters||{},i=String(n.wd||"").trim();if(i)return Z$t({body:{wd:i,page:r,tid:t}});let s=[];for(let d of["class","area","lang","year"]){let f=String(n[d]||"").trim();f&&s.push(f)}let a=String(n.other||"").trim();a&&!s.includes(a)&&s.push(a);let o=String(n.sort||TL).trim()||TL,u=await q_("/movie/media/search",{method:"POST",body:JSON.stringify({menuCodeList:s,pageIndex:r,pageSize:Q$t,searchKey:"",sortCode:o===TL?"":o,topCode:t}),ttl:U_.category}).catch(()=>null),c=u?.data||u||{},l=Cf(c?.records);return{page:r,pagecount:Math.max(Number(c?.pages||1),r),limit:Number(c?.size||Q$t),total:Number(c?.total||l.length),list:l.map($Ce)}}async function tAn(e){let t=G_n(e.body?.id),r=String(t.id||"").trim();if(!r)return{list:[]};let[n,i,s]=await Promise.all([q_(`/movie/media/base/detail?mediaId=${encodeURIComponent(r)}`,{ttl:U_.detail}).catch(()=>null),q_(`/movie/media/detail?mediaId=${encodeURIComponent(r)}`,{ttl:U_.detail}).catch(()=>null),q_(`/movie/media/video/list?mediaId=${encodeURIComponent(r)}`,{ttl:U_.detail}).catch(()=>null)]),a=i?.data||n?.data||{},o=Cf(s?.data),u=[],c=[];o.forEach((d,f)=>{let p=Cf(d?.videoList);if(!p.length)return;let h=d?.seasonNo?`\u7B2C${d.seasonNo}\u5B63`:`\u7EBF\u8DEF${f+1}`,m=p.map(y=>`${[y.epNo>0?`\u7B2C${y.epNo}\u96C6`:"\u6B63\u7247",y.remark].filter(Boolean).join(" ")}$${r}@@${y.id||""}`).filter(Boolean);m.length&&(u.push(h),c.push(m.join("#")))}),u.length||(u.push("\u4E4C\u4E91\u5F71\u89C6"),c.push(`\u64AD\u653E$${r}`));let l=[a.overview,a.description].filter(Boolean).map(Q_n).join(` -`);return{list:[{vod_id:r,vod_name:a.title||a.originalTitle||r,vod_pic:t.pic||a.posterUrl||a.thumbUrl||a.backdropUrl||"",vod_remarks:t.remark||[a.mediaType?.name,a.releaseYear,a.episodeStatus,a.rating?`\u2B50${a.rating}`:""].filter(Boolean).join(" \xB7 "),vod_actor:MCe(a.actors),vod_director:MCe(a.directors),vod_area:a.region||MCe(a.regions),vod_year:String(a.releaseYear||a.releaseDate||""),vod_content:l,vod_play_from:u.join("$$$"),vod_play_url:c.join("$$$")}]}}async function rAn(e){let t=String(e.body?.id||"").trim();if(!t)return{parse:1,url:""};let[r,n]=t.split("@@");try{let i=await q_(`/movie/media/video/list?mediaId=${encodeURIComponent(r)}`,{ttl:U_.play}),s=Cf(i?.data),a=null;for(let u of s)if(a=Cf(u?.videoList).find(c=>String(c.id||"")===String(n||""))||a,a)break;a||(a=s.flatMap(u=>Cf(u?.videoList))[0]||null);let o=String(a?.playUrl||"").trim();if(o){let u=o;try{let c=await _e.get(o,{headers:{...W$t,Referer:MC,Accept:"application/vnd.apple.mpegurl, application/x-mpegURL, video/*, */*"},timeout:X$t,maxRedirects:5,responseType:"text",validateStatus:()=>!0});u=String(c?.request?.res?.responseUrl||c?.config?.url||o).trim()||o}catch{}return{parse:0,url:u,header:{"User-Agent":Y$t,Referer:MC}}}}catch{}return{parse:1,url:`${MC}/play/${encodeURIComponent(r||t)}`}}async function Z$t(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,J$t(e.body?.page,1)),n=String(e.body?.tid||e.body?.id||"").trim();if(!t)return{page:r,pagecount:1,limit:PCe,total:0,list:[]};let i=await q_("/movie/media/search",{method:"POST",body:JSON.stringify({searchKey:t,pageIndex:r,pageSize:PCe,topCode:n||"animation"}),ttl:U_.search}).catch(()=>null),s=i?.data||i||{},a=Cf(s?.records);return{page:r,pagecount:Math.max(Number(s?.pages||1),r),limit:Number(s?.size||PCe),total:Number(s?.total||a.length),list:a.map($Ce)}}async function nAn(e){e.post("/init",async()=>Y_n()),e.post("/home",async()=>J_n()),e.post("/homeVod",async()=>Z_n()),e.post("/category",async t=>eAn(t)),e.post("/detail",async t=>tAn(t)),e.post("/play",async t=>rAn(t)),e.post("/search",async t=>Z$t(t))}var e6t={meta:{key:"wooyun",name:"\u{1F3AC} \u4E4C\u4E91",type:3},api:nAn};Kt();var k6t=Se(require("crypto"),1);var v6t=Se(o6t(),1);function A6t(e,t){return!!(t===e||e.indexOf(t)===0&&(t[t.length-1]==="/"||e.startsWith(t)&&e[t.length]==="/"))}var u6t=["local","example","invalid","localhost","test"],SAn=["localhost","invalid"],wAn={allowSpecialUseDomain:!1,ignoreError:!1};function KCe(e,t={}){t={...wAn,...t};let r=e.split("."),n=r[r.length-1],i=!!t.allowSpecialUseDomain,s=!!t.ignoreError;if(i&&n!==void 0&&u6t.includes(n)){if(r.length>1)return`${r[r.length-2]}.${n}`;if(SAn.includes(n))return n}if(!s&&n!==void 0&&u6t.includes(n))throw new Error(`Cookie has domain set to the public suffix "${n}" which is a special use domain. To allow this, configure your CookieJar with {allowSpecialUseDomain: true, rejectPublicSuffixes: false}.`);let a=(0,v6t.getDomain)(e,{allowIcannDomains:!0,allowPrivateDomains:!0});if(a)return a}function IAn(e,t){let r=KCe(e,{allowSpecialUseDomain:t});if(!r)return;if(r==e)return[e];e.slice(-1)=="."&&(e=e.slice(0,-1));let i=e.slice(0,-(r.length+1)).split(".").reverse(),s=r,a=[s];for(;i.length;)s=`${i.shift()}.${s}`,a.push(s);return a}var b6t=class{constructor(){this.synchronous=!1}findCookie(e,t,r,n){throw new Error("findCookie is not implemented")}findCookies(e,t,r=!1,n){throw new Error("findCookies is not implemented")}putCookie(e,t){throw new Error("putCookie is not implemented")}updateCookie(e,t,r){throw new Error("updateCookie is not implemented")}removeCookie(e,t,r,n){throw new Error("removeCookie is not implemented")}removeCookies(e,t,r){throw new Error("removeCookies is not implemented")}removeAllCookies(e){throw new Error("removeAllCookies is not implemented")}getAllCookies(e){throw new Error("getAllCookies is not implemented (therefore jar cannot be serialized)")}},VCe=e=>Object.prototype.toString.call(e),xAn=(e,t)=>typeof e.join!="function"?VCe(e):(t.add(e),e.map(n=>n==null||t.has(n)?"":E6t(n,t)).join()),E6t=(e,t=new WeakSet)=>typeof e!="object"||e===null?String(e):typeof e.toString=="function"?Array.isArray(e)?xAn(e,t):String(e):VCe(e),qCe=e=>E6t(e);function yu(e){let t,r,n,i=new Promise((s,a)=>{r=s,n=a});return typeof e=="function"?t=(s,a)=>{try{s?e(s):e(null,a)}catch(o){n(o instanceof Error?o:new Error)}}:t=(s,a)=>{try{s?n(s):r(a)}catch(o){n(o instanceof Error?o:new Error)}},{promise:i,callback:t,resolve:s=>(t(null,s),i),reject:s=>(t(s),i)}}function kL(e,t){return e in t}var CAn=class extends b6t{constructor(){super(),this.synchronous=!0,this.idx=Object.create(null)}findCookie(e,t,r,n){let i=yu(n);if(e==null||t==null||r==null)return i.resolve(void 0);let s=this.idx[e]?.[t]?.[r];return i.resolve(s)}findCookies(e,t,r=!1,n){typeof r=="function"&&(n=r,r=!0);let i=[],s=yu(n);if(!e)return s.resolve([]);let a;t?a=function(l){for(let d in l)if(A6t(t,d)){let f=l[d];for(let p in f){let h=f[p];h&&i.push(h)}}}:a=function(l){for(let d in l){let f=l[d];for(let p in f){let h=f[p];h&&i.push(h)}}};let o=IAn(e,r)||[e],u=this.idx;return o.forEach(c=>{let l=u[c];l&&a(l)}),s.resolve(i)}putCookie(e,t){let r=yu(t),{domain:n,path:i,key:s}=e;if(n==null||i==null||s==null)return r.resolve(void 0);let a=this.idx[n]??Object.create(null);this.idx[n]=a;let o=a[i]??Object.create(null);return a[i]=o,o[s]=e,r.resolve(void 0)}updateCookie(e,t,r){if(r)this.putCookie(t,r);else return this.putCookie(t)}removeCookie(e,t,r,n){let i=yu(n);return delete this.idx[e]?.[t]?.[r],i.resolve(void 0)}removeCookies(e,t,r){let n=yu(r),i=this.idx[e];return i&&(t?delete i[t]:delete this.idx[e]),n.resolve(void 0)}removeAllCookies(e){let t=yu(e);return this.idx=Object.create(null),t.resolve(void 0)}getAllCookies(e){let t=yu(e),r=[],n=this.idx;return Object.keys(n).forEach(s=>{let a=n[s]??{};Object.keys(a).forEach(u=>{let c=a[u]??{};Object.keys(c).forEach(d=>{let f=c[d];f!=null&&r.push(f)})})}),r.sort((s,a)=>(s.creationIndex||0)-(a.creationIndex||0)),t.resolve(r)}};function FCe(e){return S6t(e)&&e!==""}function zCe(e){return e===""||e instanceof String&&e.toString()===""}function S6t(e){return typeof e=="string"||e instanceof String}function Sz(e){return VCe(e)==="[object Object]"}function RL(e,t,r){if(e)return;let n=typeof t=="function"?t:void 0,i=typeof t=="function"?r:t;Sz(i)||(i="[object Object]");let s=new w6t(qCe(i));if(n)n(s);else throw s}var w6t=class extends Error{},TAn="6.0.0",DE={SILENT:"silent",STRICT:"strict",DISABLED:"unsafe-disabled"};Object.freeze(DE);var NAn=` -\\[?(?: -(?:[a-fA-F\\d]{1,4}:){7}(?:[a-fA-F\\d]{1,4}|:)| -(?:[a-fA-F\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-fA-F\\d]{1,4}|:)| -(?:[a-fA-F\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,2}|:)| -(?:[a-fA-F\\d]{1,4}:){4}(?:(?::[a-fA-F\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,3}|:)| -(?:[a-fA-F\\d]{1,4}:){3}(?:(?::[a-fA-F\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,4}|:)| -(?:[a-fA-F\\d]{1,4}:){2}(?:(?::[a-fA-F\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,5}|:)| -(?:[a-fA-F\\d]{1,4}:){1}(?:(?::[a-fA-F\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,6}|:)| -(?::(?:(?::[a-fA-F\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-fA-F\\d]{1,4}){1,7}|:)) -)(?:%[0-9a-zA-Z]{1,})?\\]? -`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),QCe=new RegExp(`^${NAn}$`),RAn="(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])",DAn=new RegExp(`^${RAn}$`);function c6t(e){return new URL(`http://${e}`).hostname}function $C(e){if(e==null)return;let t=e.trim().replace(/^\./,"");return QCe.test(t)?(t.startsWith("[")||(t="["+t),t.endsWith("]")||(t=t+"]"),c6t(t).slice(1,-1)):/[^\u0001-\u007f]/.test(t)?c6t(t):t.toLowerCase()}function kAn(e){return e.toUTCString()}var OAn=/[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]/,rd={jan:0,feb:1,mar:2,apr:3,may:4,jun:5,jul:6,aug:7,sep:8,oct:9,nov:10,dec:11};function jCe(e,t,r,n){let i=0;for(;i<e.length;){let s=e.charCodeAt(i);if(s<=47||s>=58)break;i++}if(!(i<t||i>r)&&!(!n&&i!=e.length))return parseInt(e.slice(0,i),10)}function PAn(e){let t=e.split(":"),r=[0,0,0];if(t.length===3){for(let n=0;n<3;n++){let i=n==2,s=t[n];if(s===void 0)return;let a=jCe(s,1,2,i);if(a===void 0)return;r[n]=a}return r}}function MAn(e){switch(e=String(e).slice(0,3).toLowerCase(),e){case"jan":return rd.jan;case"feb":return rd.feb;case"mar":return rd.mar;case"apr":return rd.apr;case"may":return rd.may;case"jun":return rd.jun;case"jul":return rd.jul;case"aug":return rd.aug;case"sep":return rd.sep;case"oct":return rd.oct;case"nov":return rd.nov;case"dec":return rd.dec;default:return}}function HCe(e){if(!e)return;let t=e.split(OAn),r,n,i,s,a,o;for(let u=0;u<t.length;u++){let c=(t[u]??"").trim();if(c.length){if(i===void 0){let l=PAn(c);if(l){r=l[0],n=l[1],i=l[2];continue}}if(s===void 0){let l=jCe(c,1,2,!0);if(l!==void 0){s=l;continue}}if(a===void 0){let l=MAn(c);if(l!==void 0){a=l;continue}}if(o===void 0){let l=jCe(c,2,4,!0);l!==void 0&&(o=l,o>=70&&o<=99?o+=1900:o>=0&&o<=69&&(o+=2e3))}}}if(!(s===void 0||a===void 0||o===void 0||r===void 0||n===void 0||i===void 0||s<1||s>31||o<1601||r>23||n>59||i>59))return new Date(Date.UTC(o,a,s,r,n,i))}var LAn=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/,BAn=/[\x20-\x3A\x3C-\x7E]+/,l6t=/[\x00-\x1F]/,d6t=[` -`,"\r","\0"];function $An(e){if(zCe(e))return e;for(let t=0;t<d6t.length;t++){let r=d6t[t],n=r?e.indexOf(r):-1;n!==-1&&(e=e.slice(0,n))}return e}function FAn(e,t){e=$An(e);let r=e.indexOf("=");if(t)r===0&&(e=e.substring(1),r=e.indexOf("="));else if(r<=0)return;let n,i;if(r<=0?(n="",i=e.trim()):(n=e.slice(0,r).trim(),i=e.slice(r+1).trim()),l6t.test(n)||l6t.test(i))return;let s=new nd;return s.key=n,s.value=i,s}function UAn(e,t){if(zCe(e)||!S6t(e))return;e=e.trim();let r=e.indexOf(";"),n=r===-1?e:e.slice(0,r),i=FAn(n,t?.loose??!1);if(!i)return;if(r===-1)return i;let s=e.slice(r+1).trim();if(s.length===0)return i;let a=s.split(";");for(;a.length;){let o=(a.shift()??"").trim();if(o.length===0)continue;let u=o.indexOf("="),c,l;switch(u===-1?(c=o,l=null):(c=o.slice(0,u),l=o.slice(u+1)),c=c.trim().toLowerCase(),l&&(l=l.trim()),c){case"expires":if(l){let d=HCe(l);d&&(i.expires=d)}break;case"max-age":if(l&&/^-?[0-9]+$/.test(l)){let d=parseInt(l,10);i.setMaxAge(d)}break;case"domain":if(l){let d=l.trim().replace(/^\./,"");d&&(i.domain=d.toLowerCase())}break;case"path":i.path=l&&l[0]==="/"?l:null;break;case"secure":i.secure=!0;break;case"httponly":i.httpOnly=!0;break;case"samesite":switch(l?l.toLowerCase():""){case"strict":i.sameSite="strict";break;case"lax":i.sameSite="lax";break;case"none":i.sameSite="none";break;default:i.sameSite=void 0;break}break;default:i.extensions=i.extensions||[],i.extensions.push(o);break}}return i}function f6t(e){if(!e||zCe(e))return;let t;if(typeof e=="string")try{t=JSON.parse(e)}catch{return}else t=e;let r=new nd;return nd.serializableProperties.forEach(n=>{if(t&&typeof t=="object"&&kL(n,t)){let i=t[n];if(i===void 0||kL(n,Va)&&i===Va[n])return;switch(n){case"key":case"value":case"sameSite":typeof i=="string"&&(r[n]=i);break;case"expires":case"creation":case"lastAccessed":typeof i=="number"||typeof i=="string"||i instanceof Date?r[n]=t[n]=="Infinity"?"Infinity":new Date(i):i===null&&(r[n]=null);break;case"maxAge":(typeof i=="number"||i==="Infinity"||i==="-Infinity")&&(r[n]=i);break;case"domain":case"path":(typeof i=="string"||i===null)&&(r[n]=i);break;case"secure":case"httpOnly":typeof i=="boolean"&&(r[n]=i);break;case"extensions":Array.isArray(i)&&i.every(s=>typeof s=="string")&&(r[n]=i);break;case"hostOnly":case"pathIsDefault":(typeof i=="boolean"||i===null)&&(r[n]=i);break}}}),r}var Va={key:"",value:"",expires:"Infinity",maxAge:null,domain:null,path:null,secure:!1,httpOnly:!1,extensions:null,hostOnly:null,pathIsDefault:null,creation:null,lastAccessed:null,sameSite:void 0},OL=class j_{constructor(t={}){this.key=t.key??Va.key,this.value=t.value??Va.value,this.expires=t.expires??Va.expires,this.maxAge=t.maxAge??Va.maxAge,this.domain=t.domain??Va.domain,this.path=t.path??Va.path,this.secure=t.secure??Va.secure,this.httpOnly=t.httpOnly??Va.httpOnly,this.extensions=t.extensions??Va.extensions,this.creation=t.creation??Va.creation,this.hostOnly=t.hostOnly??Va.hostOnly,this.pathIsDefault=t.pathIsDefault??Va.pathIsDefault,this.lastAccessed=t.lastAccessed??Va.lastAccessed,this.sameSite=t.sameSite??Va.sameSite,this.creation=t.creation??new Date,Object.defineProperty(this,"creationIndex",{configurable:!1,enumerable:!1,writable:!0,value:++j_.cookiesCreated}),this.creationIndex=j_.cookiesCreated}[Symbol.for("nodejs.util.inspect.custom")](){let t=Date.now(),r=this.hostOnly!=null?this.hostOnly.toString():"?",n=this.creation&&this.creation!=="Infinity"?`${String(t-this.creation.getTime())}ms`:"?",i=this.lastAccessed&&this.lastAccessed!=="Infinity"?`${String(t-this.lastAccessed.getTime())}ms`:"?";return`Cookie="${this.toString()}; hostOnly=${r}; aAge=${i}; cAge=${n}"`}toJSON(){let t={};for(let r of j_.serializableProperties){let n=this[r];if(n!==Va[r])switch(r){case"key":case"value":case"sameSite":typeof n=="string"&&(t[r]=n);break;case"expires":case"creation":case"lastAccessed":typeof n=="number"||typeof n=="string"||n instanceof Date?t[r]=n=="Infinity"?"Infinity":new Date(n).toISOString():n===null&&(t[r]=null);break;case"maxAge":(typeof n=="number"||n==="Infinity"||n==="-Infinity")&&(t[r]=n);break;case"domain":case"path":(typeof n=="string"||n===null)&&(t[r]=n);break;case"secure":case"httpOnly":typeof n=="boolean"&&(t[r]=n);break;case"extensions":Array.isArray(n)&&(t[r]=n);break;case"hostOnly":case"pathIsDefault":(typeof n=="boolean"||n===null)&&(t[r]=n);break}}return t}clone(){return f6t(this.toJSON())}validate(){if(!this.value||!LAn.test(this.value)||this.expires!="Infinity"&&!(this.expires instanceof Date)&&!HCe(this.expires)||this.maxAge!=null&&this.maxAge!=="Infinity"&&(this.maxAge==="-Infinity"||this.maxAge<=0)||this.path!=null&&!BAn.test(this.path))return!1;let t=this.cdomain();return!(t&&(t.match(/\.$/)||KCe(t)==null))}setExpires(t){t instanceof Date?this.expires=t:this.expires=HCe(t)||"Infinity"}setMaxAge(t){t===1/0?this.maxAge="Infinity":t===-1/0?this.maxAge="-Infinity":this.maxAge=t}cookieString(){let t=this.value||"";return this.key?`${this.key}=${t}`:t}toString(){let t=this.cookieString();return this.expires!="Infinity"&&this.expires instanceof Date&&(t+=`; Expires=${kAn(this.expires)}`),this.maxAge!=null&&this.maxAge!=1/0&&(t+=`; Max-Age=${String(this.maxAge)}`),this.domain&&!this.hostOnly&&(t+=`; Domain=${this.domain}`),this.path&&(t+=`; Path=${this.path}`),this.secure&&(t+="; Secure"),this.httpOnly&&(t+="; HttpOnly"),this.sameSite&&this.sameSite!=="none"&&(this.sameSite.toLowerCase()===j_.sameSiteCanonical.lax.toLowerCase()?t+=`; SameSite=${j_.sameSiteCanonical.lax}`:this.sameSite.toLowerCase()===j_.sameSiteCanonical.strict.toLowerCase()?t+=`; SameSite=${j_.sameSiteCanonical.strict}`:t+=`; SameSite=${this.sameSite}`),this.extensions&&this.extensions.forEach(r=>{t+=`; ${r}`}),t}TTL(t=Date.now()){if(this.maxAge!=null&&typeof this.maxAge=="number")return this.maxAge<=0?0:this.maxAge*1e3;let r=this.expires;return r==="Infinity"?1/0:(r?.getTime()??t)-(t||Date.now())}expiryTime(t){if(this.maxAge!=null){let r=t||this.lastAccessed||new Date,n=typeof this.maxAge=="number"?this.maxAge:-1/0,i=n<=0?-1/0:n*1e3;return r==="Infinity"?1/0:r.getTime()+i}return this.expires=="Infinity"?1/0:this.expires?this.expires.getTime():void 0}expiryDate(t){let r=this.expiryTime(t);return r==1/0?new Date(2147483647e3):r==-1/0?new Date(0):r==null?void 0:new Date(r)}isPersistent(){return this.maxAge!=null||this.expires!="Infinity"}canonicalizedDomain(){return $C(this.domain)}cdomain(){return $C(this.domain)}static parse(t,r){return UAn(t,r)}static fromJSON(t){return f6t(t)}};OL.cookiesCreated=0;OL.sameSiteLevel={strict:3,lax:2,none:1};OL.sameSiteCanonical={strict:"Strict",lax:"Lax"};OL.serializableProperties=["key","value","expires","maxAge","domain","path","secure","httpOnly","extensions","hostOnly","pathIsDefault","creation","lastAccessed","sameSite"];var nd=OL,p6t=2147483647e3;function h6t(e,t){let r,n=e.path?e.path.length:0;if(r=(t.path?t.path.length:0)-n,r!==0)return r;let s=e.creation&&e.creation instanceof Date?e.creation.getTime():p6t,a=t.creation&&t.creation instanceof Date?t.creation.getTime():p6t;return r=s-a,r!==0||(r=(e.creationIndex||0)-(t.creationIndex||0)),r}function qAn(e){if(!e||e.slice(0,1)!=="/")return"/";if(e==="/")return e;let t=e.lastIndexOf("/");return t===0?"/":e.slice(0,t)}var jAn=/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-f\d]{1,4}:){7}(?:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,2}|:)|(?:[a-f\d]{1,4}:){4}(?:(?::[a-f\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,3}|:)|(?:[a-f\d]{1,4}:){3}(?:(?::[a-f\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,4}|:)|(?:[a-f\d]{1,4}:){2}(?:(?::[a-f\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,5}|:)|(?:[a-f\d]{1,4}:){1}(?:(?::[a-f\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,6}|:)|(?::(?:(?::[a-f\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,7}|:)))$)/;function m6t(e,t,r){if(e==null||t==null)return;let n,i;if(r!==!1?(n=$C(e),i=$C(t)):(n=e,i=t),n==null||i==null)return;if(n==i)return!0;let s=n.lastIndexOf(i);return s<=0||n.length!==i.length+s||n.substring(s-1,s)!=="."?!1:!jAn.test(n)}function HAn(e){let t=e.split(".");return t.length===4&&t[0]!==void 0&&parseInt(t[0],10)===127}function KAn(e){return e==="::1"}function VAn(e){return e.endsWith(".localhost")}function zAn(e){let t=e.toLowerCase();return t==="localhost"||VAn(t)}function QAn(e){return e.length>=2&&e.startsWith("[")&&e.endsWith("]")?e.substring(1,e.length-1):e}function GAn(e,t=!0){let r;if(typeof e=="string")try{r=new URL(e)}catch{return!1}else r=e;let n=r.protocol.replace(":","").toLowerCase(),i=QAn(r.hostname).replace(/\.+$/,"");return n==="https"||n==="wss"?!0:t?DAn.test(i)?HAn(i):QCe.test(i)?KAn(i):zAn(i):!1}var YAn={loose:!1,sameSiteContext:void 0,ignoreError:!1,http:!0},g6t={http:!0,expire:!0,allPaths:!1,sameSiteContext:void 0,sort:void 0},UCe='Invalid sameSiteContext option for getCookies(); expected one of "strict", "lax", or "none"';function y6t(e){if(e&&typeof e=="object"&&"hostname"in e&&typeof e.hostname=="string"&&"pathname"in e&&typeof e.pathname=="string"&&"protocol"in e&&typeof e.protocol=="string")return{hostname:e.hostname,pathname:e.pathname,protocol:e.protocol};if(typeof e=="string")try{return new URL(decodeURI(e))}catch{return new URL(e)}else throw new w6t("`url` argument is not a string or URL.")}function _6t(e){let t=String(e).toLowerCase();if(t==="none"||t==="lax"||t==="strict")return t}function WAn(e){return!(typeof e.key=="string"&&e.key.startsWith("__Secure-"))||e.secure}function XAn(e){return!(typeof e.key=="string"&&e.key.startsWith("__Host-"))||!!(e.secure&&e.hostOnly&&e.path!=null&&e.path==="/")}function Ez(e){let t=e.toLowerCase();switch(t){case DE.STRICT:case DE.SILENT:case DE.DISABLED:return t;default:return DE.SILENT}}var I6t=class DL{constructor(t,r){typeof r=="boolean"&&(r={rejectPublicSuffixes:r}),this.rejectPublicSuffixes=r?.rejectPublicSuffixes??!0,this.enableLooseMode=r?.looseMode??!1,this.allowSpecialUseDomain=r?.allowSpecialUseDomain??!0,this.allowSecureOnLocal=r?.allowSecureOnLocal??!0,this.prefixSecurity=Ez(r?.prefixSecurity??"silent"),this.store=t??new CAn}callSync(t){if(!this.store.synchronous)throw new Error("CookieJar store is not synchronous; use async API instead.");let r=null,n;try{t.call(this,(i,s)=>{r=i,n=s})}catch(i){r=i}if(r)throw r;return n}setCookie(t,r,n,i){typeof n=="function"&&(i=n,n=void 0);let s=yu(i),a=s.callback,o;try{if(typeof r=="string"&&RL(FCe(r),i,qCe(n)),o=y6t(r),typeof r=="function")return s.reject(new Error("No URL was specified"));if(typeof n=="function"&&(n=YAn),RL(typeof a=="function",a),!FCe(t)&&!Sz(t)&&t instanceof String&&t.length==0)return s.resolve(void 0)}catch(y){return s.reject(y)}let u=$C(o.hostname)??null,c=n?.loose||this.enableLooseMode,l=null;if(n?.sameSiteContext&&(l=_6t(n.sameSiteContext),!l))return s.reject(new Error(UCe));if(typeof t=="string"||t instanceof String){let y=nd.parse(t.toString(),{loose:c});if(!y){let g=new Error("Cookie failed to parse");return n?.ignoreError?s.resolve(void 0):s.reject(g)}t=y}else if(!(t instanceof nd)){let y=new Error("First argument to setCookie must be a Cookie object or string");return n?.ignoreError?s.resolve(void 0):s.reject(y)}let d=n?.now||new Date;if(this.rejectPublicSuffixes&&t.domain)try{let y=t.cdomain();if((typeof y=="string"?KCe(y,{allowSpecialUseDomain:this.allowSpecialUseDomain,ignoreError:n?.ignoreError}):null)==null&&!QCe.test(t.domain)){let v=new Error("Cookie has domain set to a public suffix");return n?.ignoreError?s.resolve(void 0):s.reject(v)}}catch(y){return n?.ignoreError?s.resolve(void 0):s.reject(y)}if(t.domain){if(!m6t(u??void 0,t.cdomain()??void 0,!1)){let y=new Error(`Cookie not in this host's domain. Cookie:${t.cdomain()??"null"} Request:${u??"null"}`);return n?.ignoreError?s.resolve(void 0):s.reject(y)}t.hostOnly==null&&(t.hostOnly=!1)}else t.hostOnly=!0,t.domain=u;if((!t.path||t.path[0]!=="/")&&(t.path=qAn(o.pathname),t.pathIsDefault=!0),n?.http===!1&&t.httpOnly){let y=new Error("Cookie is HttpOnly and this isn't an HTTP API");return n.ignoreError?s.resolve(void 0):s.reject(y)}if(t.sameSite!=="none"&&t.sameSite!==void 0&&l&&l==="none"){let y=new Error("Cookie is SameSite but this is a cross-origin request");return n?.ignoreError?s.resolve(void 0):s.reject(y)}let f=this.prefixSecurity===DE.SILENT;if(!(this.prefixSecurity===DE.DISABLED)){let y=!1,g;if(WAn(t)?XAn(t)||(y=!0,g="Cookie has __Host prefix but either Secure or HostOnly attribute is not set or Path is not '/'"):(y=!0,g="Cookie has __Secure prefix but Secure attribute is not set"),y)return n?.ignoreError||f?s.resolve(void 0):s.reject(new Error(g))}let h=this.store;h.updateCookie||(h.updateCookie=async function(y,g,v){return this.putCookie(g).then(()=>v?.(null),A=>v?.(A))});let m=function(g,v){if(g){a(g);return}let A=function(_){_?a(_):typeof t=="string"?a(null,void 0):a(null,t)};if(v){if(n&&"http"in n&&n.http===!1&&v.httpOnly){g=new Error("old Cookie is HttpOnly and this isn't an HTTP API"),n.ignoreError?a(null,void 0):a(g);return}t instanceof nd&&(t.creation=v.creation,t.creationIndex=v.creationIndex,t.lastAccessed=d,h.updateCookie(v,t,A))}else t instanceof nd&&(t.creation=t.lastAccessed=d,h.putCookie(t,A))};return h.findCookie(t.domain,t.path,t.key,m),s.promise}setCookieSync(t,r,n){let i=n?this.setCookie.bind(this,t,r,n):this.setCookie.bind(this,t,r);return this.callSync(i)}getCookies(t,r,n){typeof r=="function"?(n=r,r=g6t):r===void 0&&(r=g6t);let i=yu(n),s=i.callback,a;try{typeof t=="string"&&RL(FCe(t),s,t),a=y6t(t),RL(Sz(r),s,qCe(r)),RL(typeof s=="function",s)}catch(g){return i.reject(g)}let o=$C(a.hostname),u=a.pathname||"/",c=GAn(t,this.allowSecureOnLocal),l=0;if(r.sameSiteContext){let g=_6t(r.sameSiteContext);if(g==null)return i.reject(new Error(UCe));if(l=nd.sameSiteLevel[g],!l)return i.reject(new Error(UCe))}let d=r.http??!0,f=Date.now(),p=r.expire??!0,h=r.allPaths??!1,m=this.store;function y(g){if(g.hostOnly){if(g.domain!=o)return!1}else if(!m6t(o??void 0,g.domain??void 0,!1))return!1;if(!h&&typeof g.path=="string"&&!A6t(u,g.path)||g.secure&&!c||g.httpOnly&&!d)return!1;if(l){let A;if(g.sameSite==="lax"?A=nd.sameSiteLevel.lax:g.sameSite==="strict"?A=nd.sameSiteLevel.strict:A=nd.sameSiteLevel.none,A>l)return!1}let v=g.expiryTime();return p&&v!=null&&v<=f?(m.removeCookie(g.domain,g.path,g.key,()=>{}),!1):!0}return m.findCookies(o,h?null:u,this.allowSpecialUseDomain,(g,v)=>{if(g){s(g);return}if(v==null){s(null,[]);return}v=v.filter(y),"sort"in r&&r.sort!==!1&&(v=v.sort(h6t));let A=new Date;for(let _ of v)_.lastAccessed=A;s(null,v)}),i.promise}getCookiesSync(t,r){return this.callSync(this.getCookies.bind(this,t,r))??[]}getCookieString(t,r,n){typeof r=="function"&&(n=r,r=void 0);let i=yu(n),s=function(a,o){a?i.callback(a):i.callback(null,o?.sort(h6t).map(u=>u.cookieString()).join("; "))};return this.getCookies(t,r,s),i.promise}getCookieStringSync(t,r){return this.callSync(r?this.getCookieString.bind(this,t,r):this.getCookieString.bind(this,t))??""}getSetCookieStrings(t,r,n){typeof r=="function"&&(n=r,r=void 0);let i=yu(n),s=function(a,o){a?i.callback(a):i.callback(null,o?.map(u=>u.toString()))};return this.getCookies(t,r,s),i.promise}getSetCookieStringsSync(t,r={}){return this.callSync(this.getSetCookieStrings.bind(this,t,r))??[]}serialize(t){let r=yu(t),n=this.store.constructor.name;Sz(n)&&(n=null);let i={version:`tough-cookie@${TAn}`,storeType:n,rejectPublicSuffixes:this.rejectPublicSuffixes,enableLooseMode:this.enableLooseMode,allowSpecialUseDomain:this.allowSpecialUseDomain,prefixSecurity:Ez(this.prefixSecurity),cookies:[]};return typeof this.store.getAllCookies!="function"?r.reject(new Error("store does not support getAllCookies and cannot be serialized")):(this.store.getAllCookies((s,a)=>{if(s){r.callback(s);return}if(a==null){r.callback(null,i);return}i.cookies=a.map(o=>{let u=o.toJSON();return delete u.creationIndex,u}),r.callback(null,i)}),r.promise)}serializeSync(){return this.callSync(t=>{this.serialize(t)})}toJSON(){return this.serializeSync()}_importCookies(t,r){let n;if(t&&typeof t=="object"&&kL("cookies",t)&&Array.isArray(t.cookies)&&(n=t.cookies),!n){r(new Error("serialized jar has no cookies array"),void 0);return}n=n.slice();let i=s=>{if(s){r(s,void 0);return}if(Array.isArray(n)){if(!n.length){r(s,this);return}let a;try{a=nd.fromJSON(n.shift())}catch(o){r(o instanceof Error?o:new Error,void 0);return}if(a===void 0){i(null);return}this.store.putCookie(a,i)}};i(null)}_importCookiesSync(t){this.callSync(this._importCookies.bind(this,t))}clone(t,r){typeof t=="function"&&(r=t,t=void 0);let n=yu(r),i=n.callback;return this.serialize((s,a)=>s?n.reject(s):DL.deserialize(a??"",t,i)),n.promise}_cloneSync(t){let r=t&&typeof t!="function"?this.clone.bind(this,t):this.clone.bind(this);return this.callSync(n=>{r(n)})}cloneSync(t){if(!t)return this._cloneSync();if(!t.synchronous)throw new Error("CookieJar clone destination store is not synchronous; use async API instead.");return this._cloneSync(t)}removeAllCookies(t){let r=yu(t),n=r.callback,i=this.store;return typeof i.removeAllCookies=="function"&&i.removeAllCookies!==b6t.prototype.removeAllCookies?(i.removeAllCookies(n),r.promise):(i.getAllCookies((s,a)=>{if(s){n(s);return}if(a||(a=[]),a.length===0){n(null,void 0);return}let o=0,u=[],c=function(d){if(d&&u.push(d),o++,o===a.length){u[0]?n(u[0]):n(null,void 0);return}};a.forEach(l=>{i.removeCookie(l.domain,l.path,l.key,c)})}),r.promise)}removeAllCookiesSync(){this.callSync(t=>{this.removeAllCookies(t)})}static deserialize(t,r,n){typeof r=="function"&&(n=r,r=void 0);let i=yu(n),s;if(typeof t=="string")try{s=JSON.parse(t)}catch(l){return i.reject(l instanceof Error?l:new Error)}else s=t;let a=l=>s&&typeof s=="object"&&kL(l,s)?s[l]:void 0,o=l=>{let d=a(l);return typeof d=="boolean"?d:void 0},u=l=>{let d=a(l);return typeof d=="string"?d:void 0},c=new DL(r,{rejectPublicSuffixes:o("rejectPublicSuffixes"),looseMode:o("enableLooseMode"),allowSpecialUseDomain:o("allowSpecialUseDomain"),prefixSecurity:Ez(u("prefixSecurity")??"silent")});return c._importCookies(s,l=>{if(l){i.callback(l);return}i.callback(null,c)}),i.promise}static deserializeSync(t,r){let n=typeof t=="string"?JSON.parse(t):t,i=u=>n&&typeof n=="object"&&kL(u,n)?n[u]:void 0,s=u=>{let c=i(u);return typeof c=="boolean"?c:void 0},a=u=>{let c=i(u);return typeof c=="string"?c:void 0},o=new DL(r,{rejectPublicSuffixes:s("rejectPublicSuffixes"),looseMode:s("enableLooseMode"),allowSpecialUseDomain:s("allowSpecialUseDomain"),prefixSecurity:Ez(a("prefixSecurity")??"silent")});if(!o.store.synchronous)throw new Error("CookieJar store is not synchronous; use async API instead.");return o._importCookiesSync(n),o}static fromJSON(t,r){return DL.deserializeSync(t,r)}};var x6t=Se(require("crypto"),1);function JAn(e){return x6t.default.createHash("md5").update(String(e||"")).digest("hex")}function C6t(e){return(Array.isArray(e)?e:e?[e]:[]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean)}function PL(e={}){let t=String(e.cookie||"").trim(),r=String(e.key||"default"),n=e.meta&&typeof e.meta=="object"?{...e.meta}:{};return{key:r,cookie:t,hash:JAn(t),meta:n}}function ZAn(e){return e?.cookie?{Cookie:e.cookie}:{}}function T6t(e,t){let r=e?.hash?`|auth=${e.hash}`:"|auth=";return`${t}${r}`}function evn(e,t,r={}){let n=String(e?.cookie||"").trim(),i=C6t(t?.headers?.["set-cookie"]||t?.headers?.["Set-Cookie"]);if(!i.length)return e;let s=new Map;for(let o of n.split(";").map(u=>u.trim()).filter(Boolean)){let u=o.indexOf("=");u<=0||s.set(o.slice(0,u).trim(),o.slice(u+1).trim())}for(let o of i){let u=o.indexOf("=");u<=0||s.set(o.slice(0,u).trim(),o.slice(u+1).trim())}let a=Array.from(s.entries()).map(([o,u])=>`${o}=${u}`).join("; ");return PL({key:e?.key||r?.scope||"default",cookie:a,meta:e?.meta||{}})}function tvn(e,t,r){let n=String(r||""),i=C6t(t?.headers?.["set-cookie"]||t?.headers?.["Set-Cookie"]).length>0;return!!(t?.status===403&&i||/人机验证|防火墙正在检查您的访问|请不要频繁操作|搜索时间间隔为3秒前/.test(n)&&i)}async function N6t({method:e="GET",headers:t={},timeout:r=12e3,send:n,authContext:i,onAuthContext:s,shouldRetry:a=tvn,requestInfo:o={}}){if(typeof n!="function")throw new Error("requestWithAuth requires send()");let u=i||PL({key:o?.scope||"default"}),c=2;for(let l=0;l<c;l+=1){let d={...t,...ZAn(u)},f=await n({method:e,headers:d,timeout:r,authContext:u,attempt:l}),p=typeof f?.data=="string"?f.data:String(f?.data||""),h=evn(u,f,o);s&&h?.cookie!==u?.cookie&&s(h);let m=l===0&&a(u,f,p);if(u=h,!m)return{response:f,authContext:u,bodyText:p}}throw new Error("requestWithAuth exhausted retry without response")}var Ti="https://www.cupfox.ai",Iz="Mozilla/5.0 (iPhone; CPU iPhone OS 18_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Mobile/15E148 Safari/604.1",ZCe={"User-Agent":Iz,Referer:`${Ti}/`,Origin:Ti,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"},rvn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"}],YCe=new Map,wz=new Map,xz=new Map,O6t=new Map,UC={home:5*60*1e3,homeVod:60*1e3,category:30*1e3,categorySession:45*1e3,detail:2*60*1e3,search:20*1e3,play:20*1e3};function P6t(e,t){let r=YCe.get(e);return r?Date.now()-r.ts>t?(YCe.delete(e),null):r.data:null}function M6t(e,t){YCe.set(e,{ts:Date.now(),data:t})}function nvn(e="default"){return O6t.get(e)||PL({key:e})}function ivn(e="default",t){O6t.set(e,t||PL({key:e}))}async function Tz(e,t={}){let r=(t.method||"GET").toUpperCase(),n=String(t.scope||"default"),i=`${r}:${e}`,s=nvn(n),a=T6t(s,i),o=t.ttl||0;if(o>0){let c=P6t(a,o);if(c)return c}if(wz.has(a))return wz.get(a);let u=(async()=>{let c=await N6t({method:r,timeout:t.timeout||12e3,headers:{...ZCe,...t.headers||{}},authContext:s,onAuthContext:d=>ivn(n,d),requestInfo:{scope:n,path:e},send:async({method:d,headers:f,timeout:p})=>{let h={headers:f,timeout:p,maxRedirects:5,validateStatus:()=>!0};return d==="POST"?await _e.post(`${Ti}${e}`,t.data,h):await _e.get(`${Ti}${e}`,h)}}),l=typeof c.response?.data=="string"?c.response.data:String(c.response?.data||"");return o>0&&M6t(a,l),l})();wz.set(a,u);try{return await u}finally{wz.delete(a)}}function Ds(e,t,r=1){let n=t.exec(e);return n?(n[r]||"").trim():""}function WCe(e){return String(e||"").replace(/<br\s*\/?>/gi,` -`).replace(/<[^>]*>/g," ").replace(/ /g," ").replace(/&/g,"&").replace(/\s+/g," ").trim()}function H_(e){return String(e||"").replace(/&#(\d+);/g,(t,r)=>String.fromCharCode(Number(r))).replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/ /g," ").trim()}function Cz(e,t,r){let n=[],i;for(;(i=t.exec(e))!==null;){let s=r(i);s&&n.push(s)}return n}function svn(e){try{return Buffer.from(String(e||"").replace(/[\r\n]/g,""),"base64").toString("utf8")}catch{return""}}function avn(e){return k6t.default.createHash("md5").update(String(e||"")).digest("hex")}function LL(e){try{let t=String(e||"").replace(/[^A-Za-z0-9+/=]/g,"");return Buffer.from(t,"base64").toString("utf8")}catch{return""}}function ovn(e){let t=LL(e);if(!t)return"";let r=avn("test"),n=r.length,i="";for(let s=0;s<t.length;s+=1){let a=s%n;i+=String.fromCharCode(t.charCodeAt(s)^r.charCodeAt(a))}return LL(i)}function uvn(e,t,r){let n=String(r||"").split(""),i="";for(let s of n)if(/^[a-zA-Z]+$/.test(s)&&t.includes(s)){let o=e.indexOf(s);i+=o!==-1&&t[o]||s}else i+=s;return i}function cvn(e){try{let t=ovn(e),r=String(t||"").split("/");if(r.length<3)return"";let n=r[0],i=r[1],s=r.slice(2).join("/"),a=JSON.parse(LL(i)),o=JSON.parse(LL(n)),u=LL(s);return uvn(a,o,u)}catch{return""}}var ML="PXhw7UT1B0a9kQDKZsjIASmOezxYG4CHo5Jyfg2b8FLpEvRr3WtVnlqMidu6cN";function lvn(e){let t=ML,r=svn(e);if(!r)return"";let n="";for(let i=1;i<r.length;i+=3){let s=r[i],a=t.indexOf(s);n+=a===-1?s:t[(a+59)%t.length]}return n}function R6t(e){let t=String(e||""),r="";for(let n=0;n<t.length;n+=1){let i=t[n],s=ML.indexOf(i),a=s===-1?i:ML[(s+3)%62],o=Math.floor(Math.random()*62),u=Math.floor(Math.random()*62);r+=ML[o]+a+ML[u]}return Buffer.from(r,"utf8").toString("base64")}async function FC(e){return new Promise(t=>setTimeout(t,e))}async function L6t(){let e=new I6t;async function t(n,i){let s=i?.["set-cookie"]||i?.["Set-Cookie"],a=Array.isArray(s)?s:s?[s]:[];for(let o of a)try{await e.setCookie(o,n)}catch{}}async function r(n,i,s=null,a={}){let o=`${Ti}${i}`,u=await e.getCookieString(o),c={...ZCe,Referer:`${Ti}/`,...u?{Cookie:u}:{},...a},l=n==="POST"?await _e.post(o,s,{headers:c,timeout:15e3,validateStatus:()=>!0}):await _e.get(o,{headers:c,timeout:15e3,validateStatus:()=>!0});return await t(o,l?.headers||{}),l}return{get:(n,i={})=>r("GET",n,null,i),post:(n,i,s={})=>r("POST",n,i,s)}}async function D6t(e="default"){let t=Date.now(),r=xz.get(e);if(r&&t-r.ts<=UC.categorySession)return r.ts=t,r.session;let n=await L6t();return xz.set(e,{session:n,ts:t}),n}function dvn(e="default"){let t=xz.get(e);t&&(t.ts=Date.now())}function fvn(e="default"){xz.delete(e)}function pvn(e){return String(e||"").match(/var\s+token\s*=\s*encrypt\("([^"]+)"\)/i)?.[1]||""}async function XCe(e,t,r){let n=pvn(r);if(!n)return null;let i=`value=${encodeURIComponent(R6t(`${Ti}${t}`))}&token=${encodeURIComponent(R6t(n))}`;return e.post("/robot.php",i,{Referer:`${Ti}${t}`,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded"})}async function hvn(e,t){let r;try{r=(await _e.post(`${Ti}/foxplay/api.php`,`vid=${encodeURIComponent(e)}`,{headers:{...ZCe,Referer:`${Ti}/foxplay/muiplayer.php?vid=${encodeURIComponent(e)}`,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/x-www-form-urlencoded"},timeout:15e3,validateStatus:()=>!0}))?.data,typeof r=="string"&&(r=JSON.parse(r))}catch{return null}let n=r?.data;if(!n?.url)return null;let i="",s=Number(n.urlmode||0);return s===2?i=lvn(n.url):s===1?i=cvn(n.url):i=n.url,!i||!/^https?:\/\//i.test(i)&&!/\.m3u8|\.mp4|\.flv/i.test(i)?null:{parse:0,url:i,header:{"User-Agent":Iz,Referer:`${Ti}${t}`}}}function GCe(e){return Cz(e,/<a[^>]*>(.*?)<\/a>/gsi,t=>H_(WCe(t[1]))).filter(Boolean)}function mvn(e){let t=Ds(e,/href="\/video\/(\d+)\.html"/i);if(!t)return null;let r=H_(Ds(e,/title="([^"]+?)(?:影片信息)?"/i)||Ds(e,/<div class="movie-title[^>]*">(.*?)<\/div>/si)),n=Ds(e,/data-original="([^"]+)"/i)||Ds(e,/<img[^>]+src="([^"]+)"/i),i=H_(Ds(e,/<div class="movie-item-score">(.*?)<\/div>/si)),s=H_(Ds(e,/<div class="movie-item-note">(.*?)<\/div>/si));return{vod_id:gvn(t,{vod_pic:n,vod_remarks:[i,s].filter(Boolean).join(" \xB7 ")}),vod_name:r,vod_pic:n,vod_remarks:[i,s].filter(Boolean).join(" \xB7 ")}}function eTe(e){let t=Cz(e,/<div class="movie-list-item">([\s\S]*?)<\/div>\s*<\/div>/gsi,i=>mvn(i[0])),r=[],n=new Set;for(let i of t.filter(Boolean))!i.vod_id||n.has(i.vod_id)||(n.add(i.vod_id),r.push(i));return r}function B6t(e,t,r){let n=String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=[...e.matchAll(new RegExp(`/type/${n}-(\\d+)\\.html`,"g"))].map(a=>Number(a[1])),s=i.length?Math.max(...i):r;return Math.max(s,r)}function gvn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function yvn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}async function _vn(){return{}}async function Avn(){return{class:rvn,filters:{}}}async function vvn(){let e=await Tz("/",{ttl:UC.homeVod});return{list:eTe(e).slice(0,24)}}function JCe(e){return/人机验证|防火墙正在检查您的访问|请不要频繁操作|搜索时间间隔为3秒前/.test(String(e||""))}async function bvn(e){let t=`category-page:${e}`,r=P6t(t,UC.category);if(r)return r;let n="category",i=await D6t(n),s=String((await i.get(e,{Referer:`${Ti}/`}))?.data||"");if(/人机验证|防火墙正在检查您的访问/.test(s)){let a=await XCe(i,e,s);(!a||Number(a?.status)>=400)&&console.warn(`[cupfox] category verify submit failed: path=${e}, status=${a?.status||"unknown"}`),await FC(3500),s=String((await i.get(e,{Referer:`${Ti}/`}))?.data||"")}if(/请不要频繁操作|搜索时间间隔为3秒前/.test(s)&&(console.warn(`[cupfox] category rate-limited, retrying: path=${e}`),await FC(3500),s=String((await i.get(e,{Referer:`${Ti}/`}))?.data||"")),JCe(s)){if(console.warn(`[cupfox] category still blocked after first pass, resetting session and retrying: path=${e}`),fvn(n),i=await D6t(n),s=String((await i.get(e,{Referer:`${Ti}/`}))?.data||""),/人机验证|防火墙正在检查您的访问/.test(s)){let a=await XCe(i,e,s);(!a||Number(a?.status)>=400)&&console.warn(`[cupfox] category second verify submit failed: path=${e}, status=${a?.status||"unknown"}`),await FC(3500),s=String((await i.get(e,{Referer:`${Ti}/`}))?.data||"")}/请不要频繁操作|搜索时间间隔为3秒前/.test(s)&&(console.warn(`[cupfox] category second rate-limit retry: path=${e}`),await FC(3500),s=String((await i.get(e,{Referer:`${Ti}/`}))?.data||""))}return dvn(n),JCe(s)||M6t(t,s),s}async function Evn(e){let t=String(e.body?.id||"1").trim()||"1",r=Math.max(1,Number(e.body?.page||1)),n=r<=1?`/type/${t}.html`:`/type/${t}-${r}.html`,i=r<=1?await Tz(n,{ttl:UC.category}):await bvn(n),s=JCe(i),a=s?[]:eTe(i),o=s?r:B6t(i,t,r);return{page:r,pagecount:o,limit:a.length||24,total:o*(a.length||24),list:a}}async function Svn(e){let t=yvn(e.body?.id),r=String(t.id||"").trim();if(!r)return{list:[]};let n=await Tz(`/video/${r}.html`,{ttl:UC.detail}),i=H_(Ds(n,/<h1 class="movie-title"[^>]*title="([^"]+)"/i)||Ds(n,/<title>([^<]+?)-在线观看/i)),s=Ds(n,/<div class="poster">\s*<img[^>]+src="([^"]+)"/i)||Ds(n,/<meta property="og:image" content="([^"]+)"/i),a=H_(Ds(n,/<meta name="description" content="([^"]+)"/i)),o=Ds(n,/<div class="scroll-content">([\s\S]*?)<\/div>/i),u=GCe(o),c=u.find(A=>/^\d{4}$/.test(A))||"",l=u.filter(A=>!/^\d{4}$/.test(A)).join(" / "),d=Ds(n,/<div class="info-data"><strong>导演:<\/strong>([\s\S]*?)<\/div>/i),f=Ds(n,/<div class="info-data"><strong>演员:<\/strong>([\s\S]*?)<\/div>/i),p=GCe(d).join(" / "),h=GCe(f).join(" / "),m=Cz(n,/<a class="titleName[^>]*>(.*?)<small>/gsi,A=>H_(WCe(A[1]))),y=[...n.matchAll(/<div id="playsx" class='play_list_box[^>]*>([\s\S]*?)<\/ul>[\s\S]*?<\/div>/gsi)],g=[],v=[];return y.forEach((A,_)=>{let E=A[1],S=Cz(E,/href="(\/play\/[^"#]+)"[^>]*>(.*?)<\/a>/gsi,C=>{let I=H_(WCe(C[2])),N=C[1],T=Ds(N,/\/play\/([\d-]+)\.html/i);return T?`${I}$${T}`:null}).filter(Boolean);S.length&&(g.push(m[_]||`\u7EBF\u8DEF${_+1}`),v.push(S.join("#")))}),g.length||(g.push("cupfox"),v.push(`\u64AD\u653E$${r}`)),{list:[{vod_id:r,vod_name:i,vod_pic:t.meta?.vod_pic||s,vod_remarks:t.meta?.vod_remarks||u.slice(0,3).join(" \xB7 "),vod_actor:h,vod_director:p,vod_area:l,vod_year:c,vod_content:a,vod_play_from:g.join("$$$"),vod_play_url:v.join("$$$")}]}}async function wvn(e){let t=String(e.body?.id||"").trim();if(!t)return{parse:1,url:""};let r=await Tz(`/play/${t}.html`,{ttl:UC.play}),n=Ds(r,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/i),i=Ds(n,/"from":"([^"]+)"/i),s=Ds(n,/"encrypt":(\d+)/i)||"0",a=Ds(n,/"url":"([^"]+)"/i);if(a=a.replace(/\\\//g,"/"),s==="1")try{a=decodeURIComponent(a)}catch{}else if(s==="2")try{a=decodeURIComponent(Buffer.from(a,"base64").toString("utf8"))}catch{}if(a.startsWith("http://")||a.startsWith("https://")||a.includes(".m3u8")||a.includes(".mp4"))return{parse:0,url:a,header:{"User-Agent":Iz,Referer:`${Ti}/`}};if(a){let o=await hvn(a,`/play/${t}.html`);return o||{parse:1,url:`${Ti}/foxplay/muiplayer.php?vid=${encodeURIComponent(a)}`,header:{"User-Agent":Iz,Referer:`${Ti}/play/${t}.html`},from:i}}return{parse:1,url:`${Ti}/play/${t}.html`}}async function Ivn(e){let t=String(e.body?.wd||"").trim(),r=Math.max(1,Number(e.body?.page||1));if(!t)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=encodeURIComponent(t),i=r<=1?`/search/${n}-------------.html`:`/search/${n}----------${r}---.html`,s=await L6t(),a=String((await s.get(i,{Referer:`${Ti}/`}))?.data||"");/人机验证|防火墙正在检查您的访问/.test(a)&&(await XCe(s,i,a),await FC(3500),a=String((await s.get(i,{Referer:`${Ti}/`}))?.data||"")),/请不要频繁操作|搜索时间间隔为3秒前/.test(a)&&(await FC(3500),a=String((await s.get(i,{Referer:`${Ti}/`}))?.data||""));let o=/人机验证|防火墙正在检查您的访问|请不要频繁操作|搜索时间间隔为3秒前/.test(a),u=o?[]:eTe(a),c=o?r:Math.max(r,B6t(a,"search",r));return{page:r,pagecount:c,limit:u.length||20,total:u.length?c*u.length:0,list:u}}async function xvn(e){e.post("/init",async()=>_vn()),e.post("/home",async()=>Avn()),e.post("/homeVod",async()=>vvn()),e.post("/category",async t=>Evn(t)),e.post("/detail",async t=>Svn(t)),e.post("/play",async t=>wvn(t)),e.post("/search",async t=>Ivn(t))}var $6t={meta:{key:"cupfox",name:"\u{1F3AC} \u8336\u676F\u72D0",type:3},api:xvn};Kt();var j0="https://gimyai.tw",F6t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",Nz=20,Rz={"User-Agent":F6t,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${j0}/`,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8"},Cvn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"34",type_name:"\u77ED\u5267"},{type_id:"13",type_name:"\u9646\u5267"}],Tvn={1:[{key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6700\u65B0",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],2:[{key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6700\u65B0",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],4:[{key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6700\u65B0",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],29:[{key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6700\u65B0",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],34:[{key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6700\u65B0",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],13:[{key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6700\u65B0",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}]},Nvn={1:{by:"time"},2:{by:"time"},4:{by:"time"},29:{by:"time"},34:{by:"time"},13:{by:"time"}};function Sn(e){return e==null?"":String(e)}function Rvn(e){return Sn(e).replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function Dvn(e){let t={\u9B25:"\u6597",\u7F85:"\u7F57",\u9678:"\u9646",\u9F8D:"\u9F99",\u50B3:"\u4F20",\u8AAA:"\u8BF4",\u7D55:"\u7EDD",\u528D:"\u5251",\u5875:"\u5C18",\u52D5:"\u52A8",\u614B:"\u6001",\u756B:"\u753B",\u5287:"\u5267",\u5834:"\u573A",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u96FB:"\u7535",\u8996:"\u89C6",\u9023:"\u8FDE",\u7E8C:"\u7EED",\u7DDA:"\u7EBF",\u842C:"\u4E07",\u8207:"\u4E0E",\u98A8:"\u98CE",\u96F2:"\u4E91",\u5F8C:"\u540E",\u958B:"\u5F00",\u95DC:"\u5173",\u9580:"\u95E8",\u66F8:"\u4E66",\u8C93:"\u732B",\u99AC:"\u9A6C",\u9B5A:"\u9C7C",\u9CE5:"\u9E1F",\u4F86:"\u6765",\u6642:"\u65F6",\u6703:"\u4F1A",\u611B:"\u7231",\u6230:"\u6218",\u96D9:"\u53CC",\u7121:"\u65E0",\u76E1:"\u5C3D",\u9806:"\u987A",\u6975:"\u6781",\u6B72:"\u5C81",\u7576:"\u5F53",\u9019:"\u8FD9",\u500B:"\u4E2A",\u5011:"\u4EEC",\u70BA:"\u4E3A",\u7E3D:"\u603B",\u5BE6:"\u5B9E",\u9670:"\u9634",\u967D:"\u9633",\u8056:"\u5723",\u9748:"\u7075",\u5922:"\u68A6",\u6200:"\u604B",\u7DB2:"\u7F51",\u5BF6:"\u5B9D",\u85CD:"\u84DD",\u89BA:"\u89C9",\u7D93:"\u7ECF",\u7D42:"\u7EC8",\u8C9D:"\u8D1D",\u5E7E:"\u51E0",\u9AD4:"\u4F53",\u982D:"\u5934",\u5E2B:"\u5E08",\u6176:"\u5E86",\u9918:"\u4F59",\u9928:"\u9986",\u6F22:"\u6C49",\u8D99:"\u8D75",\u6EC4:"\u6CA7",\u7CB5:"\u7CA4",\u8A9E:"\u8BED",\u5C08:"\u4E13",\u5340:"\u533A",\u865F:"\u53F7",\u5283:"\u5212",\u71C8:"\u706F",\u8CB4:"\u8D35",\u984F:"\u989C",\u5EE3:"\u5E7F",\u6FA4:"\u6CFD",\u9072:"\u8FDF",\u6B61:"\u6B22",\u9C57:"\u9CDE",\u7DBA:"\u7EEE",\u7D00:"\u7EAA",\u7FA9:"\u4E49",\u7344:"\u72F1",\u6EEC:"\u6CAA",\u7063:"\u6E7E",\u5CFD:"\u5CE1",\u5C64:"\u5C42",\u6A13:"\u697C",\u9E7D:"\u76D0",\u6F80:"\u6DA9",\u6B78:"\u5F52",\u6A02:"\u4E50",\u8C50:"\u4E30",\u4FE0:"\u4FA0",\u4FC1:"\u4FE3",\u512A:"\u4F18",\u5049:"\u4F1F",\u5074:"\u4FA7",\u50C5:"\u4EC5",\u50F9:"\u4EF7",\u5100:"\u4EEA",\u5104:"\u4EBF",\u5132:"\u50A8",\u5152:"\u513F",\u525B:"\u521A",\u5289:"\u5218",\u52C1:"\u52B2",\u52DE:"\u52B3",\u52F3:"\u52CB",\u532F:"\u6C47",\u83EF:"\u534E",\u5354:"\u534F",\u55AE:"\u5355",\u885B:"\u536B",\u5EF3:"\u5385",\u53B2:"\u5389",\u58D3:"\u538B",\u53C3:"\u53C2",\u53E2:"\u4E1B",\u5433:"\u5434",\u555F:"\u542F",\u55AC:"\u4E54",\u559A:"\u5524",\u5606:"\u53F9",\u562F:"\u5578",\u5678:"\u5428",\u56B4:"\u4E25",\u5712:"\u56ED",\u5718:"\u56E2",\u570D:"\u56F4",\u58D8:"\u5792",\u58DE:"\u574F",\u58EF:"\u58EE",\u58FD:"\u5BFF",\u5920:"\u591F",\u596A:"\u593A",\u596E:"\u594B",\u5967:"\u5965",\u596C:"\u5956",\u5A66:"\u5987",\u5ABD:"\u5988",\u5AFB:"\u5A34",\u5B78:"\u5B66",\u5BE7:"\u5B81",\u5C0D:"\u5BF9",\u5C0E:"\u5BFC",\u5C07:"\u5C06",\u5C0B:"\u5BFB",\u5C46:"\u5C4A",\u5CA1:"\u5188",\u5CF6:"\u5C9B",\u5CEF:"\u5CF0",\u5DD4:"\u5DC5",\u5E63:"\u5E01",\u5E6B:"\u5E2E",\u5E79:"\u5E72",\u5EAB:"\u5E93",\u5EE2:"\u5E9F",\u5F48:"\u5F39",\u5F37:"\u5F3A",\u5F65:"\u5F66",\u5F91:"\u5F84",\u5FB9:"\u5F7B",\u6182:"\u5FE7",\u61C9:"\u5E94",\u61F7:"\u6000",\u61F8:"\u60AC",\u61F2:"\u60E9",\u6236:"\u6237",\u62CB:"\u629B",\u633E:"\u631F",\u6368:"\u820D",\u6383:"\u626B",\u6384:"\u62A1",\u63DA:"\u626C",\u63DB:"\u6362",\u63EE:"\u6325",\u640D:"\u635F",\u6416:"\u6447",\u651D:"\u6444",\u64C1:"\u62E5",\u64DA:"\u636E",\u64C7:"\u62E9",\u64CA:"\u51FB",\u64CB:"\u6321",\u64FE:"\u6270",\u64F4:"\u6269",\u64FA:"\u6446",\u6582:"\u655B",\u6583:"\u6BD9",\u6595:"\u6593",\u65BC:"\u4E8E",\u6688:"\u6655",\u66C9:"\u6653",\u66C6:"\u5386",\u66E0:"\u65F7",\u66EC:"\u6652",\u6727:"\u80E7",\u6BBA:"\u6740",\u689D:"\u6761",\u689F:"\u67AD",\u68C4:"\u5F03",\u69AE:"\u8363",\u69CD:"\u67AA",\u69D3:"\u6760",\u6A01:"\u6869",\u6A4B:"\u6865",\u6A5F:"\u673A",\u6A94:"\u6863",\u6AA2:"\u68C0",\u6B50:"\u6B27",\u6B98:"\u6B8B",\u6C23:"\u6C14",\u6C7A:"\u51B3",\u6C92:"\u6CA1",\u6C96:"\u51B2",\u6CC1:"\u51B5",\u6EFE:"\u6EDA",\u6EFF:"\u6EE1",\u6F54:"\u6D01",\u6F5B:"\u6F5C",\u6FC3:"\u6D53",\u6FE4:"\u6D9B",\u6FDF:"\u6D4E",\u6FF1:"\u6EE8",\u703E:"\u6F9C",\u71DF:"\u8425",\u720D:"\u70C1",\u7210:"\u7089",\u722D:"\u4E89",\u723E:"\u5C14",\u7368:"\u72EC",\u7345:"\u72EE",\u737B:"\u732E",\u74A3:"\u7391",\u74B0:"\u73AF",\u74CA:"\u743C",\u760B:"\u75AF",\u76DC:"\u76D7",\u76E4:"\u76D8",\u76E7:"\u5362",\u76E3:"\u76D1",\u76EA:"\u8361",\u77DA:"\u77A9",\u77EF:"\u77EB",\u790E:"\u7840",\u798D:"\u7978",\u79A6:"\u5FA1",\u79AA:"\u7985",\u7A2E:"\u79CD",\u7A31:"\u79F0",\u7A40:"\u8C37",\u7AA9:"\u7A9D",\u7AF6:"\u7ADE",\u7B46:"\u7B14",\u7BC9:"\u7B51",\u7C43:"\u7BEE",\u7CF0:"\u56E2",\u7CFE:"\u7EA0",\u7D04:"\u7EA6",\u7D1A:"\u7EA7",\u7D0B:"\u7EB9",\u7D0D:"\u7EB3",\u7D14:"\u7EAF",\u7D19:"\u7EB8",\u7D1B:"\u7EB7",\u7D2E:"\u624E",\u7D39:"\u7ECD",\u7D44:"\u7EC4",\u7D30:"\u7EC6",\u7D50:"\u7ED3",\u7D43:"\u5F26",\u7D66:"\u7ED9",\u7D71:"\u7EDF",\u7D72:"\u4E1D",\u7D81:"\u7ED1",\u7DAD:"\u7EF4",\u7DB1:"\u7EB2",\u7DCA:"\u7D27",\u7DD2:"\u7EEA",\u7DF4:"\u7EC3",\u7E23:"\u53BF",\u7E31:"\u7EB5",\u7E3E:"\u7EE9",\u7E54:"\u7EC7",\u7E5E:"\u7ED5",\u7E7C:"\u7EE7",\u7F77:"\u7F62",\u7F8B:"\u8288",\u7FD2:"\u4E60",\u7FF9:"\u7FD8",\u806F:"\u8054",\u8072:"\u58F0",\u8077:"\u804C",\u8085:"\u8083",\u8166:"\u8111",\u8173:"\u811A",\u8108:"\u8109",\u816B:"\u80BF",\u81FA:"\u53F0",\u8266:"\u8230",\u8271:"\u8270",\u8277:"\u8273",\u7BC0:"\u8282",\u838A:"\u5E84",\u84BC:"\u82CD",\u84CB:"\u76D6",\u84EE:"\u83B2",\u8523:"\u848B",\u856D:"\u8427",\u85A9:"\u8428",\u85E5:"\u836F",\u865C:"\u864F",\u86FB:"\u8715",\u8755:"\u8680",\u88DC:"\u8865",\u88DD:"\u88C5",\u8907:"\u590D",\u8972:"\u88AD",\u8988:"\u6838",\u8993:"\u89C5",\u89BD:"\u89C8",\u89F8:"\u89E6",\u8A02:"\u8BA2",\u8A03:"\u8BA3",\u8A08:"\u8BA1",\u8A0A:"\u8BAF",\u8A17:"\u6258",\u8A18:"\u8BB0",\u8A13:"\u8BAD",\u8A34:"\u8BC9",\u8A3A:"\u8BCA",\u8A50:"\u8BC8",\u8A54:"\u8BCF",\u8A55:"\u8BC4",\u8A5E:"\u8BCD",\u8A60:"\u548F",\u8A62:"\u8BE2",\u8A66:"\u8BD5",\u8A69:"\u8BD7",\u8A71:"\u8BDD",\u8A72:"\u8BE5",\u8A73:"\u8BE6",\u8A85:"\u8BDB",\u8AA0:"\u8BDA",\u8AA4:"\u8BEF",\u8AB0:"\u8C01",\u8AB2:"\u8BFE",\u8ABF:"\u8C03",\u8AC7:"\u8C08",\u8ACB:"\u8BF7",\u8AD2:"\u8C05",\u8ADC:"\u8C0D",\u8AFE:"\u8BFA",\u8B00:"\u8C0B",\u8B0A:"\u8C0E",\u8B0E:"\u8C1C",\u8B1B:"\u8BB2",\u8B1D:"\u8C22",\u8B5A:"\u8C2D",\u8B5C:"\u8C31",\u8B6F:"\u8BD1",\u8B70:"\u8BAE",\u8B77:"\u62A4",\u8B80:"\u8BFB",\u8B8A:"\u53D8",\u8B93:"\u8BA9",\u8CAB:"\u8D2F",\u8CAC:"\u8D23",\u8CA7:"\u8D2B",\u8CA8:"\u8D27",\u8CA9:"\u8D29",\u8CAA:"\u8D2A",\u8CC0:"\u8D3A",\u8CC8:"\u8D3E",\u8CC7:"\u8D44",\u8CCA:"\u8D3C",\u8CD3:"\u5BBE",\u8CDC:"\u8D50",\u8CDE:"\u8D4F",\u8CE0:"\u8D54",\u8CE2:"\u8D24",\u8CE3:"\u5356",\u8CEA:"\u8D28",\u8CF4:"\u8D56",\u8D08:"\u8D60",\u8D0F:"\u8D62",\u8D95:"\u8D76",\u8DE1:"\u8FF9",\u8E10:"\u8DF5",\u8E34:"\u8E0A",\u8E5F:"\u8FF9",\u8ECA:"\u8F66",\u8ECC:"\u8F68",\u8ECD:"\u519B",\u8EDF:"\u8F6F",\u8F03:"\u8F83",\u8F1B:"\u8F86",\u8F1D:"\u8F89",\u8F29:"\u8F88",\u8F2A:"\u8F6E",\u8F2F:"\u8F91",\u8F38:"\u8F93",\u8F5F:"\u8F70",\u8FA6:"\u529E",\u9081:"\u8FC8",\u9084:"\u8FD8",\u908A:"\u8FB9",\u90F5:"\u90AE",\u9109:"\u4E61",\u9127:"\u9093",\u912D:"\u90D1",\u919C:"\u4E11",\u91AB:"\u533B",\u91AC:"\u9171",\u91C0:"\u917F",\u91CB:"\u91CA",\u91DD:"\u9488",\u9234:"\u94C3",\u923A:"\u94B0",\u9245:"\u5DE8",\u9264:"\u94A9",\u9280:"\u94F6",\u9283:"\u94F3",\u9285:"\u94DC",\u9298:"\u94ED",\u92B3:"\u9510",\u92D2:"\u950B",\u9318:"\u9524",\u9326:"\u9526",\u934B:"\u9505",\u9396:"\u9501",\u9418:"\u949F",\u9435:"\u94C1",\u9444:"\u94F8",\u9451:"\u9274",\u9577:"\u957F",\u9583:"\u95EA",\u9589:"\u95ED",\u554F:"\u95EE",\u805E:"\u95FB",\u95A9:"\u95FD",\u95A3:"\u9601",\u95D6:"\u95EF",\u9663:"\u9635",\u969B:"\u9645",\u96DC:"\u6742",\u96E2:"\u79BB",\u96E3:"\u96BE",\u96F7:"\u96F7",\u9727:"\u96FE",\u975C:"\u9759",\u97FF:"\u54CD",\u9802:"\u9876",\u9803:"\u9877",\u9805:"\u9879",\u9808:"\u987B",\u9811:"\u987D",\u9813:"\u987F",\u9812:"\u9881",\u9817:"\u9887",\u9818:"\u9886",\u9830:"\u988A",\u9846:"\u9897",\u9867:"\u987E",\u986B:"\u98A4",\u986F:"\u663E",\u9871:"\u9885",\u9874:"\u98A7",\u98DB:"\u98DE",\u98EF:"\u996D",\u98F2:"\u996E",\u98FC:"\u9972",\u99C1:"\u9A73",\u99D5:"\u9A7E",\u9A0E:"\u9A91",\u9A19:"\u9A97",\u9A30:"\u817E",\u9A45:"\u9A71",\u9A57:"\u9A8C",\u9A5A:"\u60CA",\u9AD2:"\u810F",\u9B1A:"\u987B",\u9B27:"\u95F9",\u9B31:"\u90C1",\u9B6F:"\u9C81",\u9B91:"\u9C8D",\u9BAE:"\u9C9C",\u9BE8:"\u9CB8",\u9CF4:"\u9E23",\u9DF9:"\u9E70",\u9E97:"\u4E3D",\u9EA5:"\u9EA6",\u9EC3:"\u9EC4",\u9EDE:"\u70B9",\u9EE8:"\u515A",\u9F4A:"\u9F50",\u9F52:"\u9F7F"};return Sn(e).split("").map(r=>t[r]||r).join("")}function U6t(e){return Dvn(Sn(e))}function ph(e){return U6t(Rvn(e))}function BL(e){let t=Sn(e).trim();return t?/^https?:\/\//i.test(t)?t:t.startsWith("//")?`https:${t}`:t.startsWith("/")?`${j0}${t}`:`${j0}/${t.replace(/^\.\//,"")}`:""}function kvn(e){if(!e)return{};if(typeof e=="object")return e;let t=Sn(e).trim();if(!t)return{};try{return JSON.parse(t)}catch{try{return JSON.parse(Buffer.from(t,"base64").toString("utf8"))}catch{return{}}}}async function Ovn(e,t={}){let r=BL(e),n=await _e({url:r,method:t.method||"GET",headers:{...Rz,...t.headers||{}},data:t.data||void 0,timeout:t.timeout||2e4,responseType:t.responseType||"text",validateStatus:()=>!0});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status||"unknown"} @ ${r}`);return n}async function qC(e,t={}){let r=await Ovn(e,t);return typeof r.data=="string"?r.data:Sn(r.data)}function Dz(e){return U6t(Sn(e)).replace(/[\s\-_—–·•::,,.。!?!?'"“”‘’()()\[\]【】{}]/g,"").toLowerCase()}function Pvn(e){let t=Dz(e);if(!t)return[];let r=new Set([t]),n=t.replace(/線上看|线上看|全集|連續劇|连续剧|電視劇|电视剧|動漫|动漫|電影|电影|綜藝|综艺/g,"").trim();n&&r.add(n);let i=n.replace(/第\d+[集季部篇]?$/g,"").replace(/\d+$/g,"");return i&&r.add(i),[...r].filter(Boolean).sort((s,a)=>a.length-s.length)}function Mvn(e,t){let r=Dz(e),n=Pvn(t);if(!r||!n.length)return 0;let i=0;for(let s of n)s&&(r===s?i=Math.max(i,1e3+s.length):r.startsWith(s)?i=Math.max(i,800+s.length):r.includes(s)?i=Math.max(i,600+s.length):s.includes(r)&&r.length>=2&&(i=Math.max(i,450+r.length)));return i}function Lvn(e,t){let n=e.map(a=>({item:a,score:Mvn(a.vod_name,t)})).filter(a=>a.score>0).sort((a,o)=>o.score-a.score||Sn(a.item.vod_name).localeCompare(Sn(o.item.vod_name),"zh-Hans-CN")).map(a=>a.item);if(n.length)return n;let i=Dz(t),s=e.filter(a=>Dz(a.vod_name).includes(i));return s.length?s:[]}function tTe(e,t){let r=[],n=new Set;return(t&&t.length?t:e.root()).find("a.video-pic[href*='/detail/'], h5.text-overflow a[href*='/detail/']").each((s,a)=>{let o=e(a),u=o.attr("href")||"",l=BL(u).match(/\/detail\/(\d+)\.html/i);if(!l||n.has(l[1]))return;let d=o.closest("li"),f=ph(o.attr("title")||d.find("a.video-pic").attr("title")||d.find("h5.text-overflow a").attr("title")||d.find("h5.text-overflow").first().text()||o.text());if(!f)return;let p=BL(o.attr("data-original")||o.attr("data-src")||o.attr("data-funlazy")||d.find("a.video-pic").attr("data-original")||d.find("a.video-pic").attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),h=o.find(".note, .jidi, .hdinfo, .pic-text").first().text()||d.find(".note, .jidi, .hdinfo, .pic-text").first().text()||"",m=ph(h),y=m&&m!==f?m:"";n.add(l[1]),r.push({vod_id:Bvn(l[1],{vod_pic:p,vod_remarks:y}),vod_name:f,vod_pic:p,vod_remarks:y})}),r}function q6t(e){let t=e("div.layout-box").filter((n,i)=>{let s=e(i),a=ph(s.find(".box-title").first().text());return s.find("a.video-pic[href*='/detail/']").length>=8&&/Gimy.*(电影|电视剧|动漫|综艺|短剧|陆剧)|热播推荐/.test(a)});if(t.length)return t.first();let r=e("ul.col-md-8.col-sm-12.col-xs-12.p-0.clearfix").first();return r.length?r:e.root()}function K_(e,t){let r=new RegExp(`<span[^>]*>${t}[\uFF1A:]<\\/span>([\\s\\S]*?)<\\/li>`,"i"),n=Sn(e).match(r);return n?ph(n[1]):""}function Bvn(e,t={}){return JSON.stringify({id:Sn(e).trim(),meta:t&&typeof t=="object"?{...t}:{}})}function $vn(e){try{let t=JSON.parse(Sn(e));if(t&&typeof t=="object"&&t.id)return{id:Sn(t.id).trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:Sn(e).trim(),meta:{}}}function Fvn(e){let t=[],r=[];e('#playTab a[href^="#con_playlist_"]').each((n,i)=>{let s=e(i),a=Sn(s.attr("href")||"").replace(/^#/,""),o=ph(s.text())||a;a&&t.push({tabId:a,name:o})});for(let n of t){let i=[];e(`#${n.tabId} a[href*='/play/']`).each((s,a)=>{let o=e(a),u=o.attr("href")||"",c=ph(o.text())||"\u6B63\u7247",d=BL(u).match(/\/play\/(\d+-\d+-\d+)\.html/i);!d||!c||i.push(`${c}$${d[1]}`)}),i.length&&r.push({from:n.name,urls:i.join("#")})}return r}function Uvn(e){let t=Sn(e?.url).trim(),r=Sn(e?.encrypt).trim();if(!t)return"";if(r==="1")try{return decodeURIComponent(t)}catch{return t}if(r==="2")try{return decodeURIComponent(Buffer.from(t,"base64").toString("utf8"))}catch{try{return Buffer.from(t,"base64").toString("utf8")}catch{return t}}return t}function qvn(e){let t=Sn(e).match(/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i);if(!t||!t[1])return null;try{return JSON.parse(t[1])}catch{return null}}function jvn(e,t,r){let i={...Nvn[Sn(e)]||{by:"time"},...r||{}},s=Sn(i.by||"time");return`${j0}/genre/${Sn(e)}.html${t>1||s!=="time"?`?page=${t}&by=${encodeURIComponent(s)}`:""}`}async function Hvn(){return{}}async function Kvn(){return{class:Cvn,filters:Tvn}}async function Vvn(){let e=await qC(j0),t=Jr.load(e);return{list:tTe(t,q6t(t)).slice(0,24)}}async function zvn(e){let t=e.body||{},r=Sn(t.id||"2"),n=Math.max(1,Number.parseInt(t.page||"1",10)||1),i=kvn(t.extend||t.filters||t.ext),s=jvn(r,n,i),a=await qC(s),o=Jr.load(a),u=tTe(o,q6t(o));return{page:n,pagecount:n+(u.length>=Nz?1:0),limit:Nz,total:n*Nz+u.length,list:u}}async function Qvn(e){let t=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],r=[];for(let n of t){let i=$vn(n),s=Sn(i.id).trim();if(!s)continue;let a=/^https?:\/\//i.test(s)?s:`${j0}/detail/${s}.html`,o=await qC(a),u=Jr.load(o),c=Fvn(u);r.push({vod_id:s,vod_name:ph(u("h1.text-overflow, h1").first().text()||u("title").text().split("\u7DDA\u4E0A\u770B")[0]),vod_pic:i.meta?.vod_pic||BL(u("meta[property='og:image']").attr("content")||u(".details-pic .video-pic").attr("style")?.match(/url\(([^)]+)\)/)?.[1]||u("img").first().attr("src")||""),vod_content:ph(u(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||u('meta[name="description"]').attr("content")||""),vod_remarks:i.meta?.vod_remarks||K_(o,"\u72C0\u614B")||K_(o,"\u72B6\u6001"),type_name:K_(o,"\u985E\u5225")||K_(o,"\u7C7B\u522B"),vod_year:K_(o,"\u5E74\u4EE3")||K_(o,"\u5E74\u4EFD"),vod_area:K_(o,"\u570B\u5BB6/\u5730\u5340")||K_(o,"\u56FD\u5BB6/\u5730\u533A"),vod_actor:ph(u("li:contains('\u4E3B\u6F14') a").map((l,d)=>u(d).text()).get().join(" / ")),vod_director:ph(u("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a").map((l,d)=>u(d).text()).get().join(" / ")),vod_play_from:c.map(l=>l.from).join("$$$"),vod_play_url:c.map(l=>l.urls).join("$$$")})}return{list:r}}async function Gvn(e){let t=e.body||{},r=Math.max(1,Number.parseInt(t.page||"1",10)||1),n=Sn(t.wd).trim();if(!n)return{page:r,pagecount:0,total:0,list:[]};let i=await qC(`${j0}/find/-------------.html?wd=${encodeURIComponent(n)}&page=${r}`),s=Jr.load(i),a=s(".box-main-content").first(),o=tTe(s,a),u=Lvn(o,n);return{page:r,pagecount:r+(o.length>=Nz?1:0),total:u.length,list:u}}async function Yvn(e){let t=e.body||{},r=Sn(t.flag).trim(),n=Sn(t.id).trim();if(!n)return{parse:0,url:""};let i=/^https?:\/\//i.test(n)?n:`${j0}/play/${n}.html`,s={...Rz,Referer:i,Origin:j0};try{let a=await qC(i,{headers:{Referer:i}}),o=qvn(a),u=Uvn(o),c=Sn(o?.from).trim();if(/^https?:\/\/.*\.(m3u8|mp4|flv|m4s)(\?.*)?$/i.test(u))return{parse:0,jx:0,url:u,header:{...Rz,Referer:i}};if(u){let l="https://play.gimyai.tw/v/",d=`https://play.gimyai.tw/v/?url=${encodeURIComponent(u)}`;["JD4K","JD2K","JDHG","JDQM"].includes(c)?(l="https://play.gimyai.tw/d/",d=`https://play.gimyai.tw/d/?url=${encodeURIComponent(u)}&jctype=${encodeURIComponent(c)}&next=${encodeURIComponent(i)}`):c==="NSYS"&&(l="https://play.gimyai.tw/n/",d=`https://play.gimyai.tw/n/?url=${encodeURIComponent(u)}&jctype=${encodeURIComponent(c)}&next=${encodeURIComponent(i)}`);let f=`${l}parse.php?url=${encodeURIComponent(u)}&_t=${Date.now()}`,p=await qC(f,{headers:{Referer:d,Origin:new URL(l).origin,Accept:"application/json, text/plain, */*"}}),h=null;try{h=JSON.parse(p)}catch{h=null}let m=Sn(h?.url||h?.video||h?.playurl).trim(),y=Sn(h?.type).trim();if(m)return{parse:0,jx:0,url:m,header:{"User-Agent":F6t,Referer:d,Origin:new URL(l).origin},flag:y||c||r||"direct"};if(/^https?:\/\//i.test(u))return{parse:1,jx:1,url:u,header:{...Rz,Referer:d}}}return{parse:1,jx:1,url:i,header:s}}catch{return{parse:1,jx:1,url:i,header:s}}}var j6t={meta:{key:"gimy",name:"\u{1F3AC} Gimy",type:3},api:async e=>{e.post("/init",Hvn),e.post("/home",Kvn),e.post("/homeVod",Vvn),e.post("/category",zvn),e.post("/detail",Qvn),e.post("/play",Yvn),e.post("/search",Gvn)}};var V6t=Se(require("crypto"),1);Kt();var Qn="https://www.4kvm.org",V_="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",kE=30,jL=15e3,z6t=200,Wvn=5*60*1e3,Xvn=60*1e3,Jvn=3*60*1e3,Zvn=60*1e3,ebn=30*1e3,tbn=new Set(["unknown","undefined","null","nan","none"]),rbn="nbmovie2024secretkeynbmovie2",iTe=120,Oz=new Map,$L=new Map;function Q6t(e,t,r=20){if(e.size<=t)return;let n=0;for(let i of e.keys())if(e.delete(i),n++,n>=r)break}function nbn(e,t){let r=Oz.get(e);return r?Date.now()-r.ts>t?(Oz.delete(e),null):r.data:null}function ibn(e,t){Oz.set(e,{ts:Date.now(),data:t}),Q6t(Oz,z6t)}async function FL(e,t,r){let n=t>0?nbn(e,t):null;if(n)return n;if($L.has(e))return $L.get(e);let i=(async()=>{let s=await r();return t>0&&ibn(e,s),s})();$L.set(e,i),Q6t($L,z6t);try{return await i}finally{$L.delete(e)}}async function OE(e,t=Qn){let r=await _e.get(e,{timeout:jL,headers:{"User-Agent":V_,Referer:t,Origin:Qn,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Cache-Control":"no-cache"},validateStatus:()=>!0});return typeof r?.data=="string"?r.data:String(r?.data||"")}function id(e=""){let t=String(e||"").trim();return t?t.startsWith("//")?`https:${t}`:t.startsWith("/")?`${Qn}${t}`:t:""}function sbn(e=""){return String(e||"").replace(/<br\s*\/?>/gi,` -`).replace(/<[^>]+>/g," ").replace(/ /g," ").replace(/&/g,"&").replace(/\s+/g," ").trim()}function $o(e=""){return sbn(String(e||"").replace(/[\u00a0]/g," "))}function rTe(e=""){let t=$o(e).toLowerCase();return!t||tbn.has(t)}function H6t(e,t){let r=e(t),n=id(r.find('a[href*="/play/"]').first().attr("href")||r.find("a[href]").first().attr("href")||r.attr("href")||"");if(!n||!n.includes("/play/"))return null;let i=$o(r.find("h3").first().text()||r.find("img").attr("alt")||r.find("a").attr("title")||"");if(!i)return null;let s=id(r.find("img").attr("data-src")||r.find("img").attr("src")||""),a=$o(r.find(".absolute.bottom-0 span").last().text()||r.find(".text-xs.text-gray-400").last().text()||r.find(".rating, .imdb, .vote").text()||r.find(".year, .date, span").last().text()||"");return{vod_id:n,vod_name:i,vod_pic:s,vod_remarks:a}}function UL(e=[]){let t=new Set,r=[];for(let n of e){let i=String(n?.vod_id||"");!i||t.has(i)||(t.add(i),r.push(n))}return r}function abn(e={}){let t=Number.parseInt(e?.id,10);if(!Number.isFinite(t)||t<=0)return null;let r=$o(e?.title||e?.vod_name||"");if(!r)return null;let n={1:"\u7535\u5F71",2:"\u7535\u89C6\u5267",3:"\u52A8\u6F2B",4:"\u7EFC\u827A"},i=Number.parseInt(e?.classifyid,10),s=n[i]||"",a=Number.parseInt(e?.updated_episodes,10),o=[s,Number.isFinite(a)&&a>0?`\u66F4\u65B0\u81F3${a}`:"",$o(e?.rating?`\u8BC4\u5206 ${e.rating}`:"")].filter(Boolean).join(" \xB7 ");return{vod_id:`api:${t}`,vod_name:r,vod_pic:id(e?.cover||e?.poster||""),vod_remarks:o,vod_tag:s,vod_content:$o(e?.description||""),api_id:String(t)}}function obn(e=[],t=[]){if(!e.length)return UL(t);if(!t.length)return UL(e.map(({api_id:i,...s})=>s));let r=new Map;for(let i of t){let s=$o(i?.vod_name||"").toLowerCase();s&&!r.has(s)&&r.set(s,i)}let n=e.map(i=>{let s=$o(i?.vod_name||"").toLowerCase(),a=s?r.get(s):null;if(!a){let{api_id:o,...u}=i;return u}return{...a,vod_pic:i.vod_pic||a.vod_pic,vod_remarks:i.vod_remarks||a.vod_remarks,vod_content:i.vod_content||a.vod_content,vod_tag:i.vod_tag||a.vod_tag}});for(let i of t){let s=$o(i?.vod_name||"").toLowerCase();!s||e.some(a=>$o(a?.vod_name||"").toLowerCase()===s)||n.push(i)}return UL(n)}function qL(e=[],t=1,r=kE){let n=Math.max(1,Number.parseInt(t,10)||1),i=Math.max(1,Number.parseInt(r,10)||kE),s=e.length,a=Math.max(1,Math.ceil(s/i));return{page:n,pagecount:a,limit:i,total:s,list:e.slice((n-1)*i,n*i)}}function Pz(e,{search:t=!1}={}){let r=lr(e),n=[];return t?(r('a[href^="/play/"]').each((i,s)=>{let a=H6t(r,s);a&&n.push(a)}),UL(n)):(r(".movie-card, article, .items article, .content article").each((i,s)=>{let a=H6t(r,s);a&&n.push(a)}),UL(n))}function ubn(){return[{type_id:`${Qn}/movie`,type_name:"\u7535\u5F71"},{type_id:`${Qn}/tv`,type_name:"\u7535\u89C6\u5267"},{type_id:`${Qn}/anime`,type_name:"\u52A8\u6F2B"}]}function cbn(e){let t=lr(e),r={},n=new Map,i={classify:"\u5206\u7C7B",areas:"\u5730\u533A",types:"\u5267\u60C5",years:"\u5E74\u4EFD",tags:"\u6807\u7B7E",sort_by:"\u6392\u5E8F"},s={update_time:"\u6700\u65B0\u4E0A\u6620",hits:"\u6700\u53D7\u6B22\u8FCE",score:"\u8BC4\u5206\u6700\u9AD8"};t('a[href^="?"]').each((o,u)=>{let c=t(u),l=String(c.attr("href")||"").trim(),d=$o(c.text());if(!l||!d||rTe(d))return;let f=new URLSearchParams(l.startsWith("?")?l.slice(1):l),p=[...f.entries()];if(!p.length)return;if(f.has("sort_by")){let g=String(f.get("sort_by")||"").trim();if(!g||rTe(g))return;n.has("sort_by")||n.set("sort_by",[]);let v=n.get("sort_by");v.some(A=>A.v===g)||v.push({n:s[g]||d,v:g});return}if(p.length!==1)return;let[h,m]=p[0];if(!i[h]||!String(m||"").trim()||rTe(m))return;n.has(h)||n.set(h,[]);let y=n.get(h);y.some(g=>g.v===m)||y.push({n:d,v:m})});let a=Object.entries(i).map(([o,u])=>{let c=n.get(o)||[];return c.length?{key:o,name:u,value:[{n:`\u5168\u90E8${u==="\u6392\u5E8F"?"":u}`.trim(),v:""},...c]}:null}).filter(Boolean).filter(o=>o.key!=="classify");return a.length&&(r[`${Qn}/movie`]=a.map(o=>({...o,value:o.value.map(u=>({...u}))})),r[`${Qn}/tv`]=a.map(o=>({...o,value:o.value.map(u=>({...u}))})),r[`${Qn}/anime`]=a.map(o=>({...o,value:o.value.map(u=>({...u}))}))),r}function lbn(e,t,r={}){let n=Math.max(1,Number.parseInt(t,10)||1),i=String(e||`${Qn}/movie`).trim(),s=new URL(i.startsWith("http")?i:id(i),Qn),a=i.includes("/tv")?"tv":i.includes("/anime")?"anime":"movie",o={movie:"1",tv:"2",anime:"3"};if(s.pathname==="/movie"||s.pathname==="/tv"||s.pathname==="/anime"||s.pathname==="/filter"){s.pathname="/filter";let u=String(r?.type||a).trim()||a,c=String(r?.classify||o[u]||"").trim();s.search="",c&&s.searchParams.set("classify",c);for(let l of["areas","types","years","tags","sort_by","order"]){let d=String(r?.[l]||"").trim();d&&s.searchParams.set(l,d)}}return n>1?s.searchParams.set("page",String(n)):s.searchParams.delete("page"),s.toString()}async function dbn(){let e=await OE(Qn);return{class:ubn(),filters:cbn(await OE(`${Qn}/filter`)),list:Pz(e)}}async function fbn(e,t,r,n){let i=lbn(e,t,n),s=await OE(i,Qn),a=Pz(s);return{...qL(a,t,kE),list:a}}function pbn(e=[]){return e.map(t=>{let r=encodeURIComponent(JSON.stringify({href:t.href,dataid:t.dataid}));return`${t.name}$${r}`}).join("#")}function hbn(e=[],t){let r=new Set,n=[];for(let i of e){let s=t(i);!s||r.has(s)||(r.add(s),n.push(i))}return n}async function mbn(e){let t=await OE(e,Qn),r=lr(t),n={};r(".grid .text-gray-500").each((d,f)=>{let p=$o(r(f).text()),h=$o(r(f).next("div").text());p&&h&&["\u5BFC\u6F14","\u4E3B\u6F14","\u5730\u533A","\u56FD\u5BB6/\u5730\u533A","\u5E74\u4EFD","\u72B6\u6001","\u7C7B\u578B","\u7F16\u5267","\u8BED\u8A00"].includes(p)&&(n[p]=h)});let i=$o(r("h1.text-xl, h1").first().text()||r('meta[property="og:title"]').attr("content")||"")||"\u672A\u77E5\u6807\u9898",s=id(r(".video-player").attr("data-poster")||r(".video-player img").attr("src")||r('meta[property="og:image"]').attr("content")||""),a=$o(r(".bg-dark-800 p.text-xs.text-gray-300.leading-relaxed").first().text()||r('meta[name="description"]').attr("content")||""),o=$o(n.\u72B6\u6001||r(".text-xs.text-gray-500").filter((d,f)=>r(f).text().includes("\u5168")).first().text()||""),u=new Map;r(".episode-link[dataid]").each((d,f)=>{let p=r(f),h=String(p.attr("data-line")||"1"),m=String(p.attr("data-episode")||"").trim(),y=id(p.attr("href")||""),g=String(p.attr("dataid")||"").trim();!y||!g||(u.has(h)||u.set(h,[]),u.get(h).push({name:/^\d+$/.test(m)?`\u7B2C${m}\u96C6`:m||"\u64AD\u653E",href:y,dataid:g,order:Number(m)||u.get(h).length+1}))});let c=[];for(let[d,f]of u.entries()){let p=hbn(f.sort((h,m)=>h.order-m.order),h=>h.href);p.length&&c.push({name:`\u7EBF\u8DEF${d}`,episodes:p})}return{list:[{vod_id:e,vod_name:i,vod_pic:s,vod_content:a,vod_year:n.\u5E74\u4EFD||"",vod_area:n.\u5730\u533A||n["\u56FD\u5BB6/\u5730\u533A"]||"",vod_remarks:o,vod_actor:n.\u4E3B\u6F14||"",vod_director:n.\u5BFC\u6F14||"",type_name:n.\u7C7B\u578B||"",vod_play_from:c.map(d=>d.name).join("$$$")||"4KVM",vod_play_url:c.map(d=>pbn(d.episodes)).join("$$$")||`\u64AD\u653E$${e}`}]}}async function gbn(e,t){let r=String(e||"").trim();if(!r)return qL([],t,kE);let n=`${Qn}/search?q=${encodeURIComponent(r)}${t>1?`&page=${t}`:""}`;try{let i=await X6t(`${Qn}/api/search?q=${encodeURIComponent(r)}`,Qn),s=(i?.data?.list||[]).map(abn).filter(Boolean),a=Number.parseInt(i?.data?.total,10)||s.length,o=await OE(n,Qn),u=Pz(o,{search:!0}),c=obn(s,u),l=qL(c,t,kE);return a>l.total&&(l.total=a,l.pagecount=Math.max(1,Math.ceil(a/l.limit))),l}catch{let i=await OE(n,Qn),s=Pz(i,{search:!0});return qL(s,t,kE)}}function kz(e=""){return/\.(m3u8|mp4|flv|avi|mkv|ts)(\?|$)/i.test(String(e||""))}function G6t(e=""){return/\.(png|jpe?g|webp|gif)(\?|$)/i.test(String(e||""))}function ybn(e="",t=""){return String(e||"").split(/\r?\n/).map(r=>String(r||"").trim()).filter(r=>r&&!r.startsWith("#")).map(r=>{try{return new URL(r,t).toString()}catch{return""}}).filter(Boolean)}function Y6t(e=""){return Buffer.from(String(e||""),"utf8").toString("base64url")}function K6t(e=""){try{return Buffer.from(String(e||""),"base64url").toString("utf8")}catch{return""}}function _bn(e){return Buffer.isBuffer(e)&&e.length>iTe+188&&e[0]===137&&e[1]===80&&e[2]===78&&e[3]===71&&e[iTe]===71}function Abn(e){return _bn(e)?e.subarray(iTe):e}function W6t(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:""}function vbn(e,t){let r=W6t(e);return!r||!t?"":`${r}/spider/4kvm/3/proxy/wrapped.m3u8?u=${Y6t(t)}`}function bbn(e,t){let r=W6t(e);return!r||!t?"":`${r}/spider/4kvm/3/proxy/wrapped.ts?u=${Y6t(t)}`}function Ebn(e="",t=Date.now()){let r=lr(e),n={};r("meta[id]").each((u,c)=>{let l=String(r(c).attr("id")||"").trim();l&&(n[l]=String(r(c).attr("content")||"").trim())});let i=[/window\.myuserlink\s*=\s*['"]([^'"]+)['"]/i,/userlink\s*:\s*'([^']+)'/i,/userlink\s*:\s*"([^"]+)"/i],s="";for(let u of i){let c=e.match(u);if(c?.[1]){s=String(c[1]).trim();break}}let a=Number.parseInt(n["nb-st"],10),o=Number.parseInt(n["nb-plt"],10);return(!Number.isFinite(o)||o<=0)&&(o=t),{userlink:s,nbSt:Number.isFinite(a)&&a>0?a:t,nbPlt:o}}function Sbn(e=""){let t=Buffer.from(String(e||"").trim());if(!t.length)return"";let r=Buffer.from(rbn),n=Buffer.alloc(t.length);for(let i=0;i<t.length;i++)n[i]=t[i]^r[i%r.length];return n.toString("base64")}function wbn(e,t,r,n=Date.now()){let i=Number.isFinite(r?.nbSt)?r.nbSt:n,s=Number.isFinite(r?.nbPlt)?r.nbPlt:n,a=Math.max(1,n-(s-i)),o=`${e}:${a}:${t}`;return{p:String(e),v:String(t),q:"1080",t:String(a),s:V6t.default.createHmac("sha256",String(t)).update(o).digest("hex").slice(0,32),k:Sbn(r?.userlink||"")}}function Ibn(e,t,r,n=Date.now()){let i=wbn(e,t,r,n),s=new URL("/video/play",Qn);return Object.entries(i).forEach(([a,o])=>{o&&s.searchParams.set(a,String(o))}),s.toString()}function nTe(e={}){return[e?.locked,e?.is_locked,e?.need_vip,e?.need_login,e?.vip,e?.lock].some(t=>t===!0||t===1||t==="1"||t==="true")}function xbn(e){let t=e?.data?.quality_urls;return(Array.isArray(t)?t:t&&typeof t=="object"?Object.values(t):[]).map((n,i)=>{let s=id(n?.url||n?.play_url||n?.m3u8||n?.src||"");return{...n,index:i,directUrl:["1","0","null","undefined"].includes(String(s).toLowerCase())?"":s}})}function Cbn(e){let t=id(e?.data?.url||e?.url||"");if(t&&kz(t))return t;let r=xbn(e),n=String(e?.data?.current_quality??"").trim(),i=r.find(s=>String(s?.quality??s?.value??s?.index??"").trim()===n&&s.directUrl&&!nTe(s));return i?.directUrl&&kz(i.directUrl)?i.directUrl:r.find(s=>s.directUrl&&!nTe(s)&&kz(s.directUrl))?.directUrl||r.find(s=>s.directUrl&&!nTe(s))?.directUrl||r.find(s=>s.directUrl&&kz(s.directUrl))?.directUrl||r.find(s=>s.directUrl)?.directUrl||""}function Tbn(e=""){let t=String(e||"").trim();if(!t)return null;try{return JSON.parse(decodeURIComponent(t))}catch{return null}}async function X6t(e,t=Qn){return(await _e.get(e,{timeout:jL,headers:{"User-Agent":V_,Referer:t,Origin:Qn,Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Cache-Control":"no-cache"},validateStatus:()=>!0}))?.data||{}}async function Nbn(e,t){let r=id(e);if(!r)return{url:"",wrappedTs:!1};if(!/\.m3u8(\?|$)/i.test(r))return{url:r,wrappedTs:!1};try{let n=await _e.get(r,{timeout:jL,responseType:"text",headers:{"User-Agent":V_,Accept:"application/vnd.apple.mpegurl, application/x-mpegURL, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Cache-Control":"no-cache"},validateStatus:()=>!0}),i=typeof n?.data=="string"?n.data:String(n?.data||""),s=ybn(i,r);if(!s.length)return{url:r,wrappedTs:!1};if(s.some(G6t))return{url:r,wrappedTs:!0}}catch{return{url:r,wrappedTs:!1}}return{url:r,wrappedTs:!1}}async function Rbn(e,t){let r=id(e);if(!r)return"";let n=await _e.get(r,{timeout:jL,responseType:"text",headers:{"User-Agent":V_,Accept:"application/vnd.apple.mpegurl, application/x-mpegURL, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Cache-Control":"no-cache"},validateStatus:()=>!0}),i=typeof n?.data=="string"?n.data:String(n?.data||"");return i?i.split(/\r?\n/).map(s=>{let a=String(s||"").trim();if(!a||a.startsWith("#"))return s;let o="";try{o=new URL(a,r).toString()}catch{return s}return G6t(o)&&bbn(t,o)||o}).join(` -`):""}async function Dbn(e){let t=id(e);if(!t)return null;let r=await _e.get(t,{timeout:jL,responseType:"arraybuffer",headers:{"User-Agent":V_,Accept:"*/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Cache-Control":"no-cache"},validateStatus:()=>!0});if(Number(r?.status||0)>=400)return null;let n=Buffer.from(r?.data||[]);return n.length?{body:Abn(n),upstreamHeaders:r?.headers||{}}:null}async function kbn(e,t){let r=Tbn(e);if(!r?.href||!r?.dataid)return{parse:1,url:String(e||"").trim()};let n=id(r.href),i=n.includes("/play/")?n.split("/play/")[1].split(/[?#]/)[0]:"";if(!i)return{parse:1,url:n};let s=await OE(n,Qn),a=Ebn(s);if(!a.userlink)return{parse:1,url:n,header:{"User-Agent":V_,Referer:Qn},message:"\u7F3A\u5C11\u64AD\u653E\u7B7E\u540D\u53C2\u6570"};let o=Ibn(String(r.dataid),i,a),u=await X6t(o,n),c=Cbn(u);if(c){let l=await Nbn(c,n);if(l.url){let d=l.wrappedTs?vbn(t,l.url):"";return{parse:0,url:d||l.url,header:d?{}:{"User-Agent":V_,Referer:""}}}}return{parse:1,url:n,header:{"User-Agent":V_,Referer:Qn},message:c?"\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25":u?.message||"\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25"}}var Obn={meta:{key:"4kvm",name:"\u{1F3AC} 4KVM",type:3,supportSearch:!0,supportQuickSearch:!0,supportFilter:!0},async api(e){e.get("/proxy/wrapped.m3u8",async(t,r)=>{let n=K6t(t?.query?.u||"");if(!n)return r.code(400).send("Missing playlist url");let i=await Rbn(n,t);return i?(r.header("Content-Type","application/vnd.apple.mpegurl; charset=utf-8").header("Access-Control-Allow-Origin","*").header("Cache-Control","no-cache"),r.send(i)):r.code(502).send("Fetch playlist failed")}),e.get("/proxy/wrapped.ts",async(t,r)=>{let n=K6t(t?.query?.u||"");if(!n)return r.code(400).send("Missing segment url");let i=await Dbn(n);return i?.body?.length?(r.header("Content-Type","video/mp2t").header("Content-Length",String(i.body.length)).header("Access-Control-Allow-Origin","*").header("Cache-Control","public, max-age=30"),r.send(i.body)):r.code(502).send("Fetch segment failed")}),e.post("/init",async()=>({})),e.post("/home",async()=>FL("home",Wvn,dbn)),e.post("/category",async t=>{let r=t?.body||{},n=String(r.id||`${Qn}/movie`),i=Math.max(1,Number.parseInt(r.page,10)||1),s=r.extend||{},a=`category:${n}:${i}:${JSON.stringify(s)}`,o=await FL(a,Xvn,async()=>fbn(n,i,r.filter,s));return qL(o.list||[],i,kE)}),e.post("/detail",async t=>{let r=t?.body||{},n=String(r.id||"").trim();if(!n)return{list:[]};let i=`detail:${n}`;return FL(i,Jvn,async()=>mbn(n))}),e.post("/search",async t=>{let r=t?.body||{},n=String(r.wd||"").trim(),i=Math.max(1,Number.parseInt(r.page,10)||1),s=`search:${n}:${i}`;return FL(s,Zvn,async()=>gbn(n,i))}),e.post("/play",async t=>{let r=t?.body||{},n=String(r.id||"").trim(),i=`play:${n}`;return FL(i,ebn,async()=>kbn(n,t))})}},J6t=Obn;Kt();var vTe=Se(require("crypto"),1),Hr={title:"\u{1F3AC} \u6728\u516E",key:"muxi",host:"https://film.symx.club",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 13; 23049RAD8C Build/TQ3A.230901.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/124.0.6367.82 Mobile Safari/537.36","x-platform":"web"},class:[{type_id:"1",type_name:"\u7535\u89C6\u5267"},{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{1:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],2:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],3:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],4:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],5:[{key:"lang",name:"\u8BED\u8A00",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"}]},{key:"year",name:"\u5E74\u4EFD",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"by",name:"\u6392\u5E8F",value:[{n:"\u66F4\u65B0\u65F6\u95F4",v:"updateTime"},{n:"\u70ED\u5EA6",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}]},filterDef:{1:{lang:"",by:"updateTime",year:""},2:{lang:"",by:"updateTime",year:""},3:{lang:"",by:"updateTime",year:""},4:{lang:"",by:"updateTime",year:""},5:{lang:"",by:"updateTime",year:""}}},iEn={1:"\u7535\u89C6\u5267",2:"\u7535\u5F71",3:"\u7EFC\u827A",4:"\u52A8\u6F2B",5:"\u77ED\u5267"},PE={auth:10*60*1e3,category:30*1e3,detail:2*60*1e3,search:20*1e3,play:15*1e3},EFt=Math.max(0,Number.parseInt(process.env.MUXI_VERIFY_SOLVE_RETRIES||"",10)||1),sEn=Math.max(200,Number.parseInt(process.env.MUXI_VERIFY_SOLVE_RETRY_DELAY_MS||"",10)||1e3),_Te=new Map,Fz=new Map,Uz={parse:0,jx:0,url:""},aEn=[/聚合\s*[-_]?\s*0/i],bt={cookies:"",clientId:"",reportId:"",session:"",traceId:"",verifyToken:"",verifiedAt:0,initedAt:0},gTe=null;async function oEn(){return gTe||(gTe=Promise.resolve().then(()=>(bFt(),vFt)).then(e=>typeof e.solveVerifyToken=="function"?e.solveVerifyToken:null).catch(e=>(console.error("[muxi] load verify solver failed:",e?.message||String(e)),null))),gTe}function ATe(e=16){return vTe.default.randomBytes(e).toString("hex")}function uEn(e,t){let r=_Te.get(e);return r?Date.now()-r.ts>t?(_Te.delete(e),null):r.data:null}function cEn(e,t){_Te.set(e,{ts:Date.now(),data:t})}function SFt(e){return Array.isArray(e)?e.map(t=>String(t).split(";")[0]).join("; "):typeof e=="string"&&e.trim()?e.split(";")[0].trim():""}function wFt(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function lEn(e){if(!e)return{};if(typeof e=="object")return e;if(typeof e!="string")return{};try{return JSON.parse(e)}catch{try{return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return{}}}}function dEn(e){return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${Hr.host}${e}`:`${Hr.host}/${e}`:""}function fEn(e){let t=String(e||"").trim();return t?aEn.some(r=>r.test(t)):!1}function yTe(e){let t=String(e||""),r="0x1A2B3C4D5E6F7A8B9C",n="";for(let i=0;i<t.length;i+=2){let s=t.slice(i,i+2),a=Number.parseInt(s,16);if(Number.isNaN(a))return"";n+=String.fromCharCode(a^r.charCodeAt(i/2%r.length))}return n}function pEn(e){let t=String(e||"").slice(0,12),r=0;for(let n of t)r+=Number.parseInt(n,10)||0;return`${t}${r%10}`}function hEn(e,t,r,n){let s={p:String(e||"").split("?")[0].replace(`${Hr.host}/api`,""),t:String(t||""),s:`symx_${String(r||"")}`},a=String(n||"").split("").map(o=>s[o]||"").join("");return a=a.replace(/1/g,"i").replace(/0/g,"o").replace(/5/g,"s"),vTe.default.createHmac("sha256",String(r||"")).update(a).digest("hex")}async function bTe(e,t={}){let r=String(t.method||"GET").toUpperCase(),n={headers:{...Hr.headers,...t.headers||{}},timeout:t.timeout||1e4,validateStatus:()=>!0,maxRedirects:3};t.data!==void 0&&(n.data=t.data);let i=r==="POST"?await _e.post(e,n.data,n):await _e.get(e,n);return{data:i?.data,headers:i?.headers||{},status:Number(i?.status||0)}}async function IFt(e,t={}){let r=await bTe(e,t);return typeof r.data=="string"?r.data:JSON.stringify(r.data||{})}async function KL(e,t={}){let r=await IFt(e,t);try{return JSON.parse(r)}catch{return null}}async function VL(e,t,r){if(t>0){let i=uEn(e,t);if(i!==null)return i}if(Fz.has(e))return Fz.get(e);let n=(async()=>{let i=await r();return t>0&&cEn(e,i),i})();Fz.set(e,n);try{return await n}finally{Fz.delete(e)}}async function mEn(e=!1){if(!e&&bt.cookies)return bt.cookies;let t=await bTe(`${Hr.host}/`,{headers:{referer:`${Hr.host}/`},timeout:15e3}).catch(()=>({data:"",headers:{},status:0})),r=t.headers?.["set-cookie"]||t.headers?.["Set-Cookie"],n=SFt(r);return n&&(bt.cookies=n),bt.cookies}async function ME(e=!1){let t=bt.cookies&&bt.session&&bt.traceId&&bt.reportId&&Date.now()-bt.initedAt<PE.auth;return!e&&t?!0:VL(`auth:${e?"force":"normal"}`,0,async()=>{if(!e&&bt.cookies&&bt.session&&bt.traceId&&bt.reportId&&Date.now()-bt.initedAt<PE.auth)return!0;await mEn(e).catch(()=>"");let r=await bTe(`${Hr.host}/api/stats/track`,{headers:{...bt.cookies?{cookie:bt.cookies}:{},referer:`${Hr.host}/m/index`}}).catch(()=>({data:"",headers:{},status:0})),n=r.headers?.["set-cookie"]||r.headers?.["Set-Cookie"],i=SFt(n);i&&(bt.cookies=i);let a=(await KL(`${Hr.host}/api/system/config`,{headers:{...bt.cookies?{cookie:bt.cookies}:{},referer:`${Hr.host}/`}}).catch(()=>null))?.data||{};return(!bt.clientId||e)&&(bt.clientId=ATe(16)),bt.reportId=yTe(a.reportId||""),bt.session=yTe(a.session||""),bt.traceId=yTe(a.traceId||""),(!bt.clientId||e)&&(bt.clientId=ATe(16)),bt.initedAt=Date.now(),!!bt.cookies})}function qz(e,t,r=!1){let n=r?pEn(Date.now()):String(Date.now()),i=hEn(e,n,bt.session,bt.traceId),s={...Hr.headers,...bt.cookies?{cookie:bt.cookies}:{},referer:t||Hr.host,"x-client-id":bt.clientId||ATe(16),"x-verify-token":bt.verifyToken||"","x-timestamp":n};return bt.reportId&&i&&(s[bt.reportId]=i),s}function gEn(e={}){e.cookie&&(bt.cookies=String(e.cookie)),e.clientId&&(bt.clientId=String(e.clientId)),e.reportId&&(bt.reportId=String(e.reportId)),e.session&&(bt.session=String(e.session)),e.traceId&&(bt.traceId=String(e.traceId)),e.verifyToken&&(bt.verifyToken=String(e.verifyToken),bt.verifiedAt=Date.now()),bt.initedAt=Date.now()}async function yEn(e=!1){let t=bt.verifyToken&&Date.now()-bt.verifiedAt<PE.auth;if(!e&&t)return bt.verifyToken;let r=await oEn();if(typeof r!="function")return"";let n=null;for(let i=0;i<=EFt&&(n=await r({challenge:`muxi-${Date.now()}-${Math.random().toString(16).slice(2,8)}`}).catch(s=>(console.error("[muxi] solve verify token failed:",s?.message||String(s)),null)),!(n?.success&&n?.token));i+=1)i<EFt&&await xFt(sEn*(i+1));return!n?.success||!n?.token?"":(gEn(n.auth||{}),bt.verifyToken=String(n.token||""),bt.verifiedAt=Date.now(),bt.verifyToken)}async function _En(e,t){let r=await KL(e,{headers:qz(e,t,!0)}).catch(()=>null);return String(r?.data||"").trim()}function xFt(e){return new Promise(t=>setTimeout(t,e))}async function AEn({filmId:e,lineId:t,referer:r}){let n=[`${Hr.host}/api/system/config`,`${Hr.host}/api/stats/track`,`${Hr.host}/api/film/detail/play?filmId=${encodeURIComponent(e||"")}`,`${Hr.host}/api/category/top`,`${Hr.host}/api/issue/new`,`${Hr.host}/api/film/search/hot`,`${Hr.host}/api/line/play?lineId=${encodeURIComponent(t||"")}`];for(let i of n)await IFt(i,{headers:qz(i,r,!0)}).catch(()=>"");await xFt(2800)}function vEn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function bEn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}function CFt(e){return(Array.isArray(e)?e:[]).map(t=>({vod_id:vEn(String(t?.id||""),{vod_pic:t?.cover||"",vod_remarks:t?.updateStatus||""}),vod_name:t?.name||"",vod_pic:t?.cover||"",vod_remarks:t?.updateStatus||"",vod_content:t?.blurb||""})).filter(t=>t.vod_id&&t.vod_name)}async function EEn(){return await ME().catch(()=>!1),{}}async function SEn(){return{class:Hr.class,filters:Hr.filters}}async function wEn(){return{list:[]}}async function IEn(e){let t=e?.body||{},r=String(t.id||"1").trim()||"1",n=wFt(t.page),i=lEn(t.extend||t.filters||t.ext),s={...Hr.filterDef[r]||Hr.filterDef[1],...i},a=`category:${r}:${n}:${JSON.stringify(s)}`;return VL(a,PE.category,async()=>{await ME().catch(()=>!1);let o=new URLSearchParams({categoryId:r,language:String(s.lang||""),pageNum:String(n),pageSize:"15",sort:String(s.by||"updateTime"),year:String(s.year||"")}),u=`${Hr.host}/api/film/category/list?${o.toString()}`,c=`${Hr.host}/m/category?categoryId=${encodeURIComponent(r)}`,l=async()=>{let f=await KL(u,{headers:{...Hr.headers,...bt.cookies?{cookie:bt.cookies}:{},referer:c}}).catch(()=>null);return CFt(f?.data?.list||[])},d=await l();return d.length===0&&await ME(!0)&&(d=await l()),{page:n,pagecount:d.length>=10?n+1:n,limit:15,total:d.length?n*15+d.length:0,list:d}})}async function xEn(e){let t=e?.body||{},n=(Array.isArray(t.id)?t.id:[t.id]).map(s=>bEn(s)).filter(s=>s.id);if(!n.length)return{list:[]};await ME().catch(()=>!1);let i=[];for(let s of n){let a=s.id,o=`detail:${a}`,u=await VL(o,PE.detail,async()=>{let c=`${Hr.host}/api/film/detail/play?filmId=${encodeURIComponent(a)}`,d=(await KL(c,{headers:qz(c,Hr.host,!1)}).catch(()=>null))?.data;if(!d)return null;let f=[],p=[];for(let h of Array.isArray(d.playLineList)?d.playLineList:[]){let m=String(h?.playerName||"\u9ED8\u8BA4").trim()||"\u9ED8\u8BA4";if(fEn(m))continue;let y=(Array.isArray(h?.lines)?h.lines:[]).map(g=>{let v=String(g?.id||"").trim();return v?`${String(g?.name||"\u64AD\u653E").trim()||"\u64AD\u653E"}$${v}@${d.id}@${d.categoryId}`:""}).filter(Boolean);y.length&&(f.push(m),p.push(y.join("#")))}return{vod_id:String(d.id||a),vod_name:d.name||"",type_name:iEn[d.categoryId]||"",vod_pic:s.meta?.vod_pic||d.cover||"",vod_remarks:s.meta?.vod_remarks||d.updateStatus||"",vod_content:d.blurb||"",vod_play_from:f.join("$$$"),vod_play_url:p.join("$$$")}});u&&i.push(u)}return{list:i}}async function CEn(e){let t=String(e?.body?.id||"").trim();if(!t)return{...Uz};let r=`play:${t}`;return VL(r,PE.play,async()=>{if(!await ME())return{...Uz};let[i,s,a]=t.split("@");if(!i)return{...Uz};let o=`${Hr.host}/m/player?cid=${encodeURIComponent(a||"")}&film_id=${encodeURIComponent(s||"")}&line_id=${encodeURIComponent(i||"")}`,u=`${Hr.host}/api/line/play/parse?lineId=${encodeURIComponent(i)}`,c=async(d=!1)=>await yEn(d)?(await AEn({filmId:s,lineId:i,referer:o}),_En(u,o)):"",l=await c(!1);return l||await ME(!0)&&(l=await c(!0)),l?{parse:0,jx:0,url:l,header:{"User-Agent":Hr.headers["User-Agent"],Referer:o}}:{...Uz}})}async function TEn(e){let t=e?.body||{},r=wFt(t.page),n=String(t.wd||"").trim();if(!n)return{page:r,pagecount:r,limit:10,total:0,list:[]};let i=`search:${r}:${n}`;return VL(i,PE.search,async()=>{await ME().catch(()=>!1);let s=dEn(`/api/film/search?keyword=${encodeURIComponent(n)}&pageNum=${r}&pageSize=10`),a=`${Hr.host}/m/search?keyword=${encodeURIComponent(n)}`,o=await KL(s,{headers:qz(s,a,!0)}).catch(()=>null),u=CFt(o?.data?.list||[]);return{page:r,pagecount:u.length>0?r+1:r,limit:10,total:u.length,list:u}})}async function NEn(e){e.post("/init",async()=>EEn()),e.post("/home",async()=>SEn()),e.post("/homeVod",async()=>wEn()),e.post("/category",async t=>IEn(t)),e.post("/detail",async t=>xEn(t)),e.post("/play",async t=>CEn(t)),e.post("/search",async t=>TEn(t))}var TFt={meta:{key:Hr.key,name:Hr.title,type:3,searchable:2,quickSearch:1,filterable:1},api:NEn};Kt();var jC="https://www.budaichuchen.net",REn="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",jz="Mozilla/5.0 (Linux; Android 13; Pixel 7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Mobile Safari/537.36",RFt={"User-Agent":REn,Referer:`${jC}/`,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"},zL=20,DEn=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"}],z_={1:[{v:"1",n:"\u5168\u90E8"},{v:"6",n:"\u52A8\u4F5C\u7247"},{v:"7",n:"\u559C\u5267\u7247"},{v:"8",n:"\u6050\u6016\u7247"},{v:"9",n:"\u79D1\u5E7B\u7247"},{v:"10",n:"\u7231\u60C5\u7247"},{v:"11",n:"\u5267\u60C5\u7247"},{v:"12",n:"\u6218\u4E89\u7247"},{v:"20",n:"\u7EAA\u5F55\u7247"}],2:[{v:"2",n:"\u5168\u90E8"},{v:"13",n:"\u56FD\u4EA7\u5267"},{v:"15",n:"\u65E5\u97E9\u5267"},{v:"16",n:"\u6D77\u5916\u5267"}],3:[{v:"3",n:"\u7EFC\u827A"}],4:[{v:"4",n:"\u5168\u90E8"},{v:"25",n:"\u56FD\u4EA7\u52A8\u6F2B"},{v:"26",n:"\u65E5\u97E9\u52A8\u6F2B"}],5:[{v:"5",n:"\u77ED\u5267"}]},DFt=e=>{let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1},Hs=(e,t)=>String(e||"").match(t)?.[1]||"";function STe(e){let t=String(e||"").trim();return t?t.startsWith("/img.php?url=")?t.slice(13):/^https?:\/\//i.test(t)?t:t.startsWith("//")?`https:${t}`:`${jC}${t.startsWith("/")?"":"/"}${t}`:""}function kEn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function OEn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.id)return{id:String(t.id||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{id:String(e||"").trim(),meta:{}}}async function QL(e,t={}){let r=/^https?:\/\//i.test(e)?e:`${jC}${e}`,n=await _e.get(r,{headers:{...RFt,...t.headers||{}},timeout:t.timeout||15e3,validateStatus:()=>!0,maxRedirects:5});return typeof n?.data=="string"?n.data:String(n?.data||"")}function Hz(e,t=".public-list-box"){let r=lr(e||""),n=[],i=new Set;return r(t).each((s,a)=>{let o=r(a),u=o.find(".public-list-exp").first(),c=u.attr("href")||o.find('a[href*="/detail/"]').first().attr("href")||"",l=Hs(c,/detail\/([^/.]+)\.html/i);if(!l||i.has(l))return;i.add(l);let d=o.find("img").first();n.push({vod_id:kEn(l,{vod_pic:STe(d.attr("data-src")||d.attr("src")),vod_remarks:(o.find(".public-list-prb").first().text()||o.find(".thumb-blurb").first().text()||"").trim()}),vod_name:(u.attr("title")||o.find(".thumb-txt a").first().text()||d.attr("alt")||"").trim(),vod_pic:STe(d.attr("data-src")||d.attr("src")),vod_remarks:(o.find(".public-list-prb").first().text()||o.find(".thumb-blurb").first().text()||"").trim()})}),n}function PEn(e){let t=Hz(e,".search-box");return t.length?t:Hz(e)}function kFt(e,t){let r=Number.parseInt(Hs(e,/当前\s*(\d+)\s*\/\s*\d+页/i),10)||t,n=Number.parseInt(Hs(e,/当前\s*\d+\s*\/\s*(\d+)页/i),10)||r,i=Number.parseInt(Hs(e,/const\s+MY_CONSTANT\s*=\s*(\d+)/i),10)||0;return{page:r,pagecount:n,total:i}}function MEn(e,t={},r=1){let n=encodeURIComponent(String(t.area||"").trim()),i=encodeURIComponent(String(t.by||"time").trim()||"time"),s=encodeURIComponent(String(t.class||"").trim()),a=encodeURIComponent(String(t.lang||"").trim()),o=encodeURIComponent(String(t.letter||"").trim()),u=encodeURIComponent(String(t.year||"").trim());return`/cupfox-list/${e}-${n}-${i}-${s}-${a}-${o}---${r}---${u}.html`}function LEn(e){return Hs(e,/\/cupfox-list\/(\d+)-/i)||""}function BEn(e,t){let r=lr(e||""),n=[],i={\u7C7B\u578B:"id",\u5267\u60C5:"class",\u5730\u533A:"area",\u5E74\u4EFD:"year",\u8BED\u8A00:"lang",\u5B57\u6BCD:"letter"};r(".nav-swiper").each((a,o)=>{let u=r(o).find(".filter-text span").first().text().trim(),c=i[u];if(!c)return;let l=[],d=new Set;r(o).find("li a").each((f,p)=>{let h=r(p).attr("href")||"",m=r(p).text().trim();if(!h||!m)return;let y="";c==="id"?y=LEn(h):y=decodeURIComponent(Hs(h,/\/cupfox-list\/\d+-([^-.]*)/i)),c==="class"&&(y=decodeURIComponent(Hs(h,/\/cupfox-list\/\d+-[^-]*-[^-]*-([^-]*)-/i))),c==="lang"&&(y=decodeURIComponent(Hs(h,/\/cupfox-list\/\d+-[^-]*-[^-]*-[^-]*-([^-]*)-/i))),c==="letter"&&(y=decodeURIComponent(Hs(h,/\/cupfox-list\/\d+-[^-]*-[^-]*-[^-]*-[^-]*-([^-]*)---/i))),c==="year"&&(y=decodeURIComponent(Hs(h,/\/cupfox-list\/\d+-.*---(\d{4})\.html/i))),c==="area"&&(y=decodeURIComponent(Hs(h,/\/cupfox-list\/\d+-([^-]*)-/i)));let g=`${m}@@${y}`;d.has(g)||(d.add(g),l.push({n:m,v:y}))}),l.length>1&&n.push({key:c,name:u,value:l})}),!n.find(a=>a.key==="id")&&z_[t]&&n.unshift({key:"id",name:"\u7C7B\u578B",value:z_[t]});let s=[{n:"\u6309\u65F6\u95F4",v:"time"},{n:"\u6309\u4EBA\u6C14",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}];return n.find(a=>a.key==="by")||n.push({key:"by",name:"\u6392\u5E8F",value:s}),n}function $En(e){let t=e(".detail-info .slide-info").map((o,u)=>e(u).text().replace(/\s+/g," ").trim()).get(),r=Hs(t.join(` -`),/(20\d{2})/),n=Hs(t.join(` -`),/类型:.*?,([^,]+)$/)||"",i=Hs(t.join(` -`),/导演:(.+)/)||"",s=Hs(t.join(` -`),/演员:(.+)/)||"",a=Hs(t.join(` -`),/连载\s*:?(.+)/)||t.find(o=>/更新至|全\d+集|HD|完结/i.test(o))||"";return{year:r,area:n,director:i,actor:s,remarks:a}}function ETe(e){let t=String(e||"").replace(/\s+/g,""),r=t.match(/第?(\d+(?:\.\d+)?)(?:集|期|话|回|部|章)?/i)?.[1]||"";if(r){let i=Number.parseFloat(r);return Number.isFinite(i)?i:null}let n=t.match(/(?:EP?|E)(\d+(?:\.\d+)?)/i)?.[1]||"";if(n){let i=Number.parseFloat(n);return Number.isFinite(i)?i:null}return null}function NFt(e){let t=Number.parseInt(Hs(e,/^[^-]+-[^-]+-(\d+)$/),10);return Number.isFinite(t)?t:null}function FEn(e){let t=[],r=new Set;for(let i of e||[])!i?.pid||r.has(i.pid)||(r.add(i.pid),t.push(i));let n=t.filter(i=>ETe(i.name)!==null).length;return t.length>1&&n>=Math.max(2,t.length-1)&&t.sort((i,s)=>{let a=ETe(i.name),o=ETe(s.name);if(a!==null&&o!==null&&a!==o)return a-o;if(a!==null&&o===null)return-1;if(a===null&&o!==null)return 1;let u=NFt(i.pid),c=NFt(s.pid);return u!==null&&c!==null&&u!==c?u-c:0}),t}function UEn(e){return String(e||"").replace(/\s+/g,"").replace(/\(\d+\)/g,"").trim()}async function qEn(){return{}}async function jEn(){return{class:DEn,filters:{1:[{key:"id",name:"\u7C7B\u578B",value:z_[1]}],2:[{key:"id",name:"\u7C7B\u578B",value:z_[2]}],3:[{key:"id",name:"\u7C7B\u578B",value:z_[3]}],4:[{key:"id",name:"\u7C7B\u578B",value:z_[4]}],5:[{key:"id",name:"\u7C7B\u578B",value:z_[5]}]}}}async function HEn(){return{list:Hz(await QL("/")).slice(0,zL)}}async function KEn(e){let t=String(e.body?.id||"1").trim()||"1",r=DFt(e.body?.page),n=e.body?.filters||e.body?.extend||{},i=String(n.id||z_[t]?.[0]?.v||t).trim(),s=MEn(i,n,r),a=await QL(s),o=Hz(a,".list-vod .public-list-box"),u=kFt(a,r),c=BEn(a,t);return{page:u.page,pagecount:u.pagecount,limit:zL,total:u.total||u.pagecount*zL,list:o,filter:c}}async function VEn(e){let t=OEn(e.body?.id),r=String(t.id||"").trim();if(!r)return{list:[]};let n=await QL(`/detail/${r}.html`),i=lr(n),s=i(".anthology-tab a").map((l,d)=>UEn(i(d).text())).get().filter(Boolean),a=[];i(".anthology-list-box").each((l,d)=>{let f=[];i(d).find(".anthology-list-play a").each((h,m)=>{let y=i(m).attr("href")||"",g=Hs(y,/play\/([^/.]+)\.html/i),v=i(m).text().trim();g&&v&&f.push({name:v,pid:g})});let p=FEn(f);p.length&&a.push({sourceName:s[l]||`\u7EBF\u8DEF${l+1}`,urls:p.map(h=>`${h.name}$${h.pid}`).join("#")})}),a.sort((l,d)=>{let f=/^(?:至臻4k|蓝光2k)$/i.test(l.sourceName)?1:0,p=/^(?:至臻4k|蓝光2k)$/i.test(d.sourceName)?1:0;return f-p});let o=a.map(l=>l.sourceName),u=a.map(l=>l.urls),c=$En(i);return{list:[{vod_id:r,vod_name:i(".slide-info-title").first().text().trim(),vod_pic:t.meta?.vod_pic||STe(i(".detail-pic img").attr("data-src")||i(".detail-pic img").attr("src")),vod_remarks:t.meta?.vod_remarks||c.remarks,vod_year:c.year,vod_area:c.area,vod_director:c.director,vod_actor:c.actor,vod_content:i("#height_limit").text().trim(),vod_play_from:o.join("$$$"),vod_play_url:u.join("$$$")}]}}async function zEn(e){let t=String(e.body?.id||"").trim();if(!t)return{parse:0,url:""};let r=await QL(`/play/${t}.html`,{headers:{...RFt,"User-Agent":jz}}),n="",i="",s=r.match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)?.[1]||"";if(s)try{let a=JSON.parse(s),o=String(a?.url||"").trim(),u=String(a?.from||"").trim(),c=Number.parseInt(String(a?.sid||""),10);(c===6||c===7||/^(?:JD4K|JD2K)$/i.test(u))&&o?i=o:/^https?:\/\/[^\s]+\.(?:m3u8|mp4)(?:[^\s"'<]*)?$/i.test(o)&&(n=o)}catch{}return i?{parse:1,url:i,header:{"User-Agent":jz,Referer:`${jC}/`}}:(n||(n=Hs(r,/(https?:\/\/[^'"\s]+\.(?:m3u8|mp4)[^'"\s]*)/i)),n?{parse:0,url:n,header:{"User-Agent":jz,Referer:`${jC}/`}}:{parse:0,url:"",header:{"User-Agent":jz,Referer:`${jC}/`}})}async function QEn(e){let t=String(e.body?.wd||"").trim(),r=DFt(e.body?.page);if(!t)return{page:r,pagecount:1,limit:zL,total:0,list:[]};let n=await QL(`/cupfox-search/${encodeURIComponent(t)}----------${r}---.html`),i=PEn(n),s=kFt(n,r);return{page:s.page,pagecount:s.pagecount,limit:zL,total:s.total||i.length,list:i}}async function GEn(e){e.post("/init",async()=>qEn()),e.post("/home",async()=>jEn()),e.post("/homeVod",async()=>HEn()),e.post("/category",async t=>KEn(t)),e.post("/detail",async t=>VEn(t)),e.post("/play",async t=>zEn(t)),e.post("/search",async t=>QEn(t))}var OFt={meta:{key:"fengye4k",name:"\u{1F3AC} \u67AB\u53F6",type:3},api:GEn};Kt();var H0=Se(di(),1),gh="https://www.hanju7.com",YEn="https://pics.hanju7.com/pics/default.jpg",sd={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",Referer:`${gh}/`,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9","Accept-Encoding":"gzip, deflate",Connection:"keep-alive","Cache-Control":"max-age=0","Upgrade-Insecure-Requests":"1"},PFt=[{type_id:"1",type_name:"\u97E9\u5267"},{type_id:"3",type_name:"\u97E9\u56FD\u7535\u5F71"},{type_id:"4",type_name:"\u97E9\u56FD\u7EFC\u827A"},{type_id:"hot",type_name:"\u6392\u884C\u699C"},{type_id:"new",type_name:"\u6700\u65B0\u66F4\u65B0"}];function WEn(e){let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:1}function Kz(e){if(!e)return"";try{return new URL(e,`${gh}/`).href}catch{return e.startsWith("http")?e:e.startsWith("/")?`${gh}${e}`:`${gh}/${e}`}}function mh(e,t=""){let r=String(e||"").trim();return r.startsWith("http")?r:r.startsWith("//")?`https:${r}`:r?Kz(r):t.startsWith("/detail/")?`https://pics.hanju7.com/pics/${t.replace("/detail/","").replace(".html",".jpg")}`:YEn}function wTe(e,t={}){return JSON.stringify({path:String(e||"").trim(),meta:t&&typeof t=="object"?t:{}})}function XEn(e){try{let t=JSON.parse(String(e||""));if(t&&typeof t=="object"&&t.path)return{path:String(t.path||"").trim(),meta:t.meta&&typeof t.meta=="object"?t.meta:{}}}catch{}return{path:String(e||"").trim(),meta:{}}}async function GL(e,t={}){return await _e({url:e,method:t.method||"GET",headers:t.headers||sd,data:t.data,timeout:t.timeout||1e4,maxRedirects:t.maxRedirects,validateStatus:t.validateStatus||(r=>r>=200&&r<500)})}async function YL(e,t={}){let r=await GL(e,t);return lr(r.data||"<html></html>")}async function JEn(e){let t=Kz(e);if(!t)return mh("",e);try{let r=await YL(t),n=r("div.detail div.pic img").attr("data-original")||r("div.detail div.pic img").attr("src")||"";return mh(n,e)}catch{return mh("",e)}}async function ZEn(e){let t=String(e||"").trim();if(!/^https?:\/\//i.test(t)||!/\.m3u8(\?|$)/i.test(t))return t;try{let r=await GL(t,{headers:{"User-Agent":sd["User-Agent"],Referer:sd.Referer,Accept:"*/*"},timeout:12e3}),i=String(r.data||"").split(/\r?\n/).map(o=>o.trim()).filter(Boolean);if(!i.some(o=>o.startsWith("#EXT-X-STREAM-INF")))return t;let a=i.find(o=>!o.startsWith("#"));return a?new URL(a,t).href:t}catch{return t}}function MFt(e,t){let r="";return e(t).contents().each((n,i)=>{i.type==="text"&&(r+=i.data)}),r.trim()}async function e1n(){return{}}async function t1n(){try{let e=await YL(gh),t=[];return e("div.list ul li").slice(0,100).each((r,n)=>{let i=e(n).find("a").first(),s=i.attr("href")||"";s&&t.push({vod_id:wTe(s,{vod_pic:mh(i.attr("data-original")||"",s),vod_remarks:e(n).find("span").first().text().trim()}),vod_name:MFt(e,i)||i.attr("title")||"",vod_pic:mh(i.attr("data-original")||"",s),vod_remarks:e(n).find("span").first().text().trim()})}),{class:PFt,filters:{},list:t}}catch(e){return console.error("[\u65B0\u97E9\u5267\u7F51] \u9996\u9875\u5931\u8D25:",e.message),{class:PFt,filters:{},list:[]}}}async function r1n(e){let t=String(e.body?.id||"").trim(),r=WEn(e.body?.page);try{if(t==="hot"||t==="new"){let a=await YL(`${gh}/${t}.html`),o=a("div.txt ul li, div.list_txt ul li").get(),u=20,c=o.length,l=Math.max(1,Math.ceil(c/u)),f=o.slice((r-1)*u,r*u).map(p=>{let h=a(p).find("a").first(),m=h.attr("href")||"";return{vod_id:wTe(m,{vod_pic:mh("",m),vod_remarks:a(p).find("span").first().text().trim()}),vod_name:MFt(a,h)||h.attr("title")||"",vod_pic:mh("",m),vod_remarks:a(p).find("span").first().text().trim()}}).filter(p=>p.vod_id);return{page:r,pagecount:l,limit:u,total:c,list:f}}let n=r===1?"":r-1,i=await YL(`${gh}/list/${t}---${n}.html`),s=[];return i("div.list ul li").each((a,o)=>{let u=i(o).find("a.tu").first(),c=u.attr("href")||"";c&&s.push({vod_id:wTe(c,{vod_pic:mh(u.attr("data-original")||"",c),vod_remarks:i(o).find("span.tip").text().trim()}),vod_name:u.attr("title")||"",vod_pic:mh(u.attr("data-original")||"",c),vod_remarks:i(o).find("span.tip").text().trim()})}),{page:r,pagecount:s.length>0?r+1:r,limit:s.length,total:s.length?9999:0,list:s}}catch(n){return console.error("[\u65B0\u97E9\u5267\u7F51] \u5206\u7C7B\u5931\u8D25:",n.message),{page:r,pagecount:r,limit:0,total:0,list:[]}}}async function n1n(e){let t=String(e.body?.wd||"").trim();if(!t)return{page:1,pagecount:1,limit:0,total:0,list:[]};try{let r=`show=searchkey&keyboard=${encodeURIComponent(t)}`,n=await GL(`${gh}/search/`,{method:"POST",data:r,headers:{...sd,"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(r)},maxRedirects:0,validateStatus:l=>l>=200&&l<400}),i=n.headers?.location||"";if(!i)return{page:1,pagecount:1,limit:0,total:0,list:[]};i=Kz(i.startsWith("http")?i:new URL(i,`${gh}/search/`).href);let s=Array.isArray(n.headers?.["set-cookie"])?n.headers["set-cookie"].map(l=>l.split(";")[0]).join("; "):"",a=await GL(i,{headers:s?{...sd,Cookie:s}:sd}),o=lr(a.data||"<html></html>"),u=[];o("div.txt ul li").each((l,d)=>{if(o(d).attr("id")==="t")return;let f=o(d).find("p#name a").first(),p=f.attr("href")||"";p&&u.push({vod_id:p,vod_name:f.text().trim().replace(/\(\d+\)$/,""),vod_pic:"",vod_remarks:o(d).find("p#actor").text().trim()})});let c=await Promise.all(u.map(async l=>({...l,vod_pic:await JEn(l.vod_id)})));return{page:1,pagecount:1,limit:c.length,total:c.length,list:c}}catch(r){return console.error("[\u65B0\u97E9\u5267\u7F51] \u641C\u7D22\u5931\u8D25:",r.message),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function i1n(e){let r=(Array.isArray(e.body?.id)?e.body.id:[e.body?.id]).map(i=>String(i||"").trim()).filter(Boolean);return r.length===0?{list:[]}:{list:(await Promise.all(r.map(async i=>{let s=XEn(i),a=String(s.path||"").trim();try{let o=await YL(Kz(a)),u=[];o("div.play ul li a").each((l,d)=>{let f=o(d).text().trim(),p=o(d).attr("onclick")||"",h=p.match(/bb_a\('([^']+)'/)||p.match(/'(.*?)'/);h?.[1]&&u.push({name:f,id:h[1]})});let c=a;return{vod_id:a,vod_name:o("div.detail div.info dl:eq(0) dd").text().trim(),vod_pic:s.meta?.vod_pic||mh(o("div.detail div.pic img").attr("data-original")||"",c),vod_remarks:s.meta?.vod_remarks||o("div.detail div.info dl:eq(4) dd").text().trim(),vod_year:o("div.detail div.info dl:eq(5) dd").text().trim(),vod_actor:o("div.detail div.info dl:eq(1) dd").text().trim(),vod_content:o("div.juqing").text().trim(),vod_play_from:o("#playlist").text().trim()||"\u65B0\u97E9\u5267\u7EBF\u8DEF",vod_play_url:u.map(l=>`${l.name}$${l.id}`).join("#")}}catch(o){return console.error(`[\u65B0\u97E9\u5267\u7F51] \u8BE6\u60C5\u5931\u8D25 ${a}:`,o.message),null}}))).filter(Boolean)}}async function s1n(e){let t=String(e.body?.id||"").trim();if(!t)return{parse:0,url:""};try{let r=await GL(`${gh}/u/u1.php?ud=${encodeURIComponent(t)}`),n=String(r.data||"").trim(),i=H0.default.enc.Utf8.parse("my-to-newhan-2025\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"),s=H0.default.enc.Base64.parse(n),a=H0.default.lib.WordArray.create(s.words.slice(0,4)),o=H0.default.lib.WordArray.create(s.words.slice(4)),u=H0.default.AES.decrypt({ciphertext:o},i,{iv:a,mode:H0.default.mode.CBC,padding:H0.default.pad.Pkcs7}),c=await ZEn(u.toString(H0.default.enc.Utf8).trim()),l={"User-Agent":sd["User-Agent"],Referer:sd.Referer};return{parse:/\.(m3u8|mp4|flv|avi|mkv|ts)(\?|$)/i.test(c)?0:1,url:c,header:l,headers:l}}catch(r){return console.error("[\u65B0\u97E9\u5267\u7F51] \u64AD\u653E\u5931\u8D25:",r.message),{parse:0,url:"",header:{"User-Agent":sd["User-Agent"],Referer:sd.Referer},headers:{"User-Agent":sd["User-Agent"],Referer:sd.Referer}}}}var LFt={meta:{key:"xinhanju",name:"\u{1F3AC} \u65B0\u97E9\u5267",type:3},api:async e=>{e.post("/init",e1n),e.post("/home",t1n),e.post("/category",r1n),e.post("/detail",i1n),e.post("/play",s1n),e.post("/search",n1n)}};Yr();var ITe="/yingchao",Qc={tmdb_api_key:"",tmdb_bearer_token:"",tmdb_auth_mode:"",tmdb_language:"zh-CN",tmdb_region:"CN",tmdb_api_base_url:"https://api.themoviedb.org/3",tmdb_image_base_url:"https://image.tmdb.org/t/p",tmdb_image_poster_size:"w500",hdhive_api_base_url:"https://hdhive.com/api/open",hdhive_api_key:"",hdhive_proxy_url:"",billing_mode:"all",hide_invalid:!0};function Vz(e={}){let t=e&&typeof e=="object"?e:{},r=["all","free_only","paid_only"].includes(String(t.billing_mode||"").trim())?String(t.billing_mode||"").trim():Qc.billing_mode;return{...Qc,...t,tmdb_api_key:String(t.tmdb_api_key??Qc.tmdb_api_key),tmdb_bearer_token:String(t.tmdb_bearer_token??Qc.tmdb_bearer_token),tmdb_auth_mode:String(t.tmdb_auth_mode??Qc.tmdb_auth_mode),tmdb_language:String(t.tmdb_language??Qc.tmdb_language),tmdb_region:String(t.tmdb_region??Qc.tmdb_region),tmdb_api_base_url:String(t.tmdb_api_base_url??Qc.tmdb_api_base_url),tmdb_image_base_url:String(t.tmdb_image_base_url??Qc.tmdb_image_base_url),tmdb_image_poster_size:String(t.tmdb_image_poster_size??Qc.tmdb_image_poster_size),hdhive_api_base_url:String(t.hdhive_api_base_url??Qc.hdhive_api_base_url),hdhive_api_key:String(t.hdhive_api_key??Qc.hdhive_api_key),hdhive_proxy_url:String(t.hdhive_proxy_url??Qc.hdhive_proxy_url),billing_mode:r,hide_invalid:t.hide_invalid!==!1}}async function zz(e){let t=await e.db.getObjectDefault(ITe,{});return Vz(t)}async function xTe(e){e.get("/config",async(t,r)=>{try{let n=await zz(t.server);return r.send({code:0,data:n})}catch(n){return r.send({code:1,message:`\u83B7\u53D6\u5F71\u5DE2\u914D\u7F6E\u5931\u8D25: ${n.message}`,data:Vz({})})}}),e.put("/config",async(t,r)=>{try{let n=await zz(t.server),i=Vz({...n,...t.body||{}});return await t.server.db.push(ITe,i),r.send({code:0,data:i,message:"\u5F71\u5DE2\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){return r.send({code:1,message:`\u4FDD\u5B58\u5F71\u5DE2\u914D\u7F6E\u5931\u8D25: ${n.message}`})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete(ITe),r.send({code:0,data:Vz({}),message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u914D\u7F6E"})}catch(n){return r.send({code:1,message:`\u91CD\u7F6E\u5F71\u5DE2\u914D\u7F6E\u5931\u8D25: ${n.message}`})}})}var a1n=process.env.TMDB_API_KEY||process.env.TMDB_KEY||"f090bb54758cabf231fb605d3e3e0468",o1n=process.env.TMDB_BEARER_TOKEN||process.env.TMDB_AUTH_TOKEN||process.env.TMDB_ACCESS_TOKEN||"",u1n=String(process.env.TMDB_AUTH_MODE||"").toLowerCase(),c1n=process.env.TMDB_LANGUAGE||"zh-CN",l1n=process.env.TMDB_REGION||"CN",UFt=process.env.TMDB_API_BASE_URL||"https://api.themoviedb.org/3",CTe=process.env.TMDB_IMAGE_BASE_URL||"https://image.tmdb.org/t/p",TTe=process.env.TMDB_IMAGE_POSTER_SIZE||"w500",qFt=process.env.HDHIVE_API_BASE_URL||"https://hdhive.com/api/open",d1n=process.env.HDHIVE_API_KEY||"",f1n=process.env.HDHIVE_PROXY_URL||"",BFt=20,p1n=2e4,$Ft="https://www.themoviedb.org",h1n=60*1e3,jFt=Ee.create({timeout:p1n,validateStatus:()=>!0,headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*"}}),NTe=new Map,m1n=[{type_id:"movie_popular",type_name:"\u70ED\u95E8\u7535\u5F71"},{type_id:"tv_popular",type_name:"\u70ED\u95E8\u7535\u89C6\u5267"},{type_id:"movie_top_rated",type_name:"\u9AD8\u5206\u7535\u5F71"},{type_id:"tv_top_rated",type_name:"\u9AD8\u5206\u7535\u89C6\u5267"},{type_id:"movie_filter",type_name:"\u7535\u5F71\u7B5B\u9009"},{type_id:"tv_filter",type_name:"\u7535\u89C6\u5267\u7B5B\u9009"}],g1n={movie_filter:[{key:"genre",name:"\u7C7B\u578B",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u52A8\u4F5C",v:"action"},{n:"\u559C\u5267",v:"comedy"},{n:"\u7231\u60C5",v:"romance"},{n:"\u79D1\u5E7B",v:"science_fiction"},{n:"\u52A8\u753B",v:"animation"},{n:"\u60AC\u7591",v:"mystery"},{n:"\u72AF\u7F6A",v:"crime"},{n:"\u60CA\u609A",v:"thriller"},{n:"\u6050\u6016",v:"horror"},{n:"\u5267\u60C5",v:"drama"},{n:"\u7EAA\u5F55\u7247",v:"documentary"}]},{key:"region",name:"\u5730\u533A",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD",v:"cn"},{n:"\u7F8E\u56FD",v:"us"},{n:"\u65E5\u672C",v:"jp"},{n:"\u97E9\u56FD",v:"kr"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"hk"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"tw"},{n:"\u82F1\u56FD",v:"gb"},{n:"\u6CD5\u56FD",v:"fr"},{n:"\u5FB7\u56FD",v:"de"},{n:"\u5370\u5EA6",v:"in"},{n:"\u6CF0\u56FD",v:"th"}]},{key:"year",name:"\u5E74\u4EE3",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020s",v:"2020s"},{n:"2010s",v:"2010s"},{n:"2000s",v:"2000s"}]},{key:"sort",name:"\u6392\u5E8F",init:"hot",value:[{n:"\u70ED\u5EA6",v:"hot"},{n:"\u8BC4\u5206",v:"score"},{n:"\u65F6\u95F4",v:"time"}]}],tv_filter:[{key:"genre",name:"\u7C7B\u578B",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u52A8\u4F5C\u5192\u9669",v:"action_adventure"},{n:"\u559C\u5267",v:"comedy"},{n:"\u60AC\u7591",v:"mystery"},{n:"\u79D1\u5E7B\u5947\u5E7B",v:"sci_fi_fantasy"},{n:"\u52A8\u753B",v:"animation"},{n:"\u771F\u4EBA\u79C0",v:"reality"},{n:"\u8131\u53E3\u79C0",v:"talk"},{n:"\u5267\u60C5",v:"drama"},{n:"\u72AF\u7F6A",v:"crime"},{n:"\u7EAA\u5F55\u7247",v:"documentary"}]},{key:"region",name:"\u5730\u533A",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD",v:"cn"},{n:"\u7F8E\u56FD",v:"us"},{n:"\u65E5\u672C",v:"jp"},{n:"\u97E9\u56FD",v:"kr"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"hk"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"tw"},{n:"\u82F1\u56FD",v:"gb"},{n:"\u6CD5\u56FD",v:"fr"},{n:"\u5FB7\u56FD",v:"de"},{n:"\u5370\u5EA6",v:"in"},{n:"\u6CF0\u56FD",v:"th"}]},{key:"year",name:"\u5E74\u4EE3",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020s",v:"2020s"},{n:"2010s",v:"2010s"},{n:"2000s",v:"2000s"}]},{key:"sort",name:"\u6392\u5E8F",init:"hot",value:[{n:"\u70ED\u5EA6",v:"hot"},{n:"\u8BC4\u5206",v:"score"},{n:"\u65F6\u95F4",v:"time"}]}]},y1n={action:28,adventure:12,animation:16,comedy:35,crime:80,documentary:99,drama:18,family:10751,fantasy:14,history:36,horror:27,music:10402,mystery:9648,romance:10749,science_fiction:878,tv_movie:10770,thriller:53,war:10752,western:37},_1n={action_adventure:10759,animation:16,comedy:35,crime:80,documentary:99,drama:18,family:10751,kids:10762,mystery:9648,news:10763,reality:10764,sci_fi_fantasy:10765,soap:10766,talk:10767,war_politics:10768,western:37},A1n={all:"",cn:"CN",us:"US",jp:"JP",kr:"KR",hk:"HK",tw:"TW",gb:"GB",fr:"FR",de:"DE",in:"IN",th:"TH"},v1n={movie_popular:{mediaType:"movie",apiPath:"/movie/popular",typeName:"\u70ED\u95E8\u7535\u5F71",remarks:"\u70ED\u95E8"},tv_popular:{mediaType:"tv",apiPath:"/tv/popular",typeName:"\u70ED\u95E8\u7535\u89C6\u5267",remarks:"\u70ED\u95E8"},movie_top_rated:{mediaType:"movie",apiPath:"/movie/top_rated",typeName:"\u9AD8\u5206\u7535\u5F71",remarks:"\u8BC4\u5206\u699C"},tv_top_rated:{mediaType:"tv",apiPath:"/tv/top_rated",typeName:"\u9AD8\u5206\u7535\u89C6\u5267",remarks:"\u8BC4\u5206\u699C"},movie_filter:{mediaType:"movie",apiPath:"/discover/movie",typeName:"\u7535\u5F71\u7B5B\u9009",remarks:"\u7B5B\u9009",isDiscover:!0},tv_filter:{mediaType:"tv",apiPath:"/discover/tv",typeName:"\u7535\u89C6\u5267\u7B5B\u9009",remarks:"\u7B5B\u9009",isDiscover:!0}};function st(e){return e==null?"":String(e)}function HFt(e){let t=st(e).match(/^(\d{4})/);return t?t[1]:""}function b1n(e,t){return e==="movie"?`${$Ft}/movie/${t}`:`${$Ft}/tv/${t}`}function RTe(e,t={}){let r=st(t.tmdb_image_base_url||CTe)||CTe,n=st(t.tmdb_image_poster_size||TTe)||TTe;return e?`${r}/${n}${e}`:""}function K0(e){return Array.isArray(e)?e:[]}function LE(e,t=0){let r=Number(e);return Number.isFinite(r)?r:t}function E1n(e){let t=st(e).trim();return!!t&&(t.includes(".")||t.startsWith("eyJ"))}function S1n(e){return JSON.stringify({source:"yingchao",...e})}function w1n(e){try{let t=JSON.parse(String(e||""));if(t&&t.source==="yingchao"&&t.slug)return t}catch{}return null}function I1n(e,t){return`yingchao_tmdb_${e}_${t}`}function x1n(e){let t=st(e).match(/^yingchao_tmdb_(movie|tv)_(\d+)$/);return t?{mediaType:t[1],tmdbId:t[2]}:null}function C1n(e,t,r){return`yingchao_pan|${e}|${t}|${r}`}function T1n(e){let t=st(e).split("|");return t.length!==4||t[0]!=="yingchao_pan"?null:{mediaType:t[1],tmdbId:t[2],panType:t[3]}}function HC(e){let t=st(e).toLowerCase();return t?t.includes("aliyun")||t.includes("alipan")||t==="ali"||t.includes("\u963F\u91CC")?"ali":t.includes("baidu")||t.includes("\u767E\u5EA6")?"baidu":t.includes("tianyi")||t.includes("\u5929\u7FFC")||t==="189"?"tianyi":t.includes("quark")||t.includes("\u5938\u514B")?"quark":t==="uc"||t.includes("uc")?"uc":t.includes("115")?"115":t.includes("mobile")||t.includes("139")||t.includes("yidong")||t.includes("\u79FB\u52A8")?"yidong":t.includes("pan123")||t==="123"||t.includes("123")?"123":t.includes("xunlei")||t.includes("\u8FC5\u96F7")||t.includes("ed2k")?"":t:""}function kTe(){return Array.isArray($a())?$a():[]}function N1n(){return new Map(kTe().map((e,t)=>[st(e?.key),t]))}function R1n(e){let t=HC(e);return t?!!kTe().find(n=>st(n?.key)===t)?.enable:!1}function Qz(e){let t=HC(e);if(!t)return"";let r=kTe().find(i=>st(i?.key)===t);return r?.name?r.name:ls().find(i=>i?.key===t)?.name||t}function FFt(e){let t=HC(e);return t&&ls().find(n=>n?.key===t)?.pic||""}function D1n(e=[]){let t=N1n();return[...e].sort((r,n)=>(t.get(r?.__panType)??999)-(t.get(n?.__panType)??999))}async function G_(e){let t=await zz(e).catch(()=>({}));return{tmdb_api_key:st(t.tmdb_api_key||a1n),tmdb_bearer_token:st(t.tmdb_bearer_token||o1n),tmdb_auth_mode:st(t.tmdb_auth_mode||u1n).toLowerCase(),tmdb_language:st(t.tmdb_language||c1n),tmdb_region:st(t.tmdb_region||l1n),tmdb_api_base_url:st(t.tmdb_api_base_url||UFt),tmdb_image_base_url:st(t.tmdb_image_base_url||CTe),tmdb_image_poster_size:st(t.tmdb_image_poster_size||TTe),hdhive_api_base_url:st(t.hdhive_api_base_url||qFt),hdhive_api_key:st(t.hdhive_api_key||d1n),hdhive_proxy_url:st(t.hdhive_proxy_url||f1n),billing_mode:["all","free_only","paid_only"].includes(st(t.billing_mode))?st(t.billing_mode):"all",hide_invalid:t.hide_invalid!==!1}}async function k1n(e){let t=await G_(e),r=st(t.tmdb_bearer_token||t.tmdb_api_key).trim();if(!r)throw new Error("TMDB Key/Token \u672A\u914D\u7F6E");return t.tmdb_auth_mode==="bearer"||!t.tmdb_auth_mode&&E1n(r)?{mode:"bearer",value:r}:{mode:"query",value:r}}async function WL(e,t,r={}){let n=await G_(e),i=await k1n(e),s=new URL(`${n.tmdb_api_base_url||UFt}${t}`);i.mode==="query"&&s.searchParams.set("api_key",i.value),n.tmdb_language&&s.searchParams.set("language",n.tmdb_language),n.tmdb_region&&s.searchParams.set("region",n.tmdb_region);for(let[o,u]of Object.entries(r||{}))u==null||u===""||s.searchParams.set(o,String(u));let a=await jFt.get(s.toString(),{headers:i.mode==="bearer"?{Authorization:`Bearer ${i.value}`}:void 0});if(a.status!==200)throw new Error(`TMDB \u8BF7\u6C42\u5931\u8D25: ${a.data?.status_message||a.status}`);return a.data||{}}async function Gz(e,t,r="GET",n=null){let i=await G_(e),s=st(i.hdhive_api_key||"");if(!s)throw new Error("HDHive API Key \u672A\u914D\u7F6E\uFF1A\u8BF7\u5148\u5728 website \u586B\u5199");let a=`${st(i.hdhive_api_base_url||qFt)}${t}`,o=!1,u=st(i.hdhive_proxy_url||"");if(u)try{let l=new URL(u);o={protocol:l.protocol.replace(":",""),host:l.hostname,port:l.port?Number(l.port):l.protocol==="https:"?443:80},(l.username||l.password)&&(o.auth={username:decodeURIComponent(l.username||""),password:decodeURIComponent(l.password||"")})}catch{}let c=await jFt({url:a,method:r.toLowerCase(),headers:{"X-API-Key":s,Accept:"*/*","Content-Type":"application/json"},data:n||void 0,proxy:o,responseType:"json"});if(c.status!==200)throw new Error(`HDHive HTTP ${c.status}`);if(c.data?.success===!1)throw new Error(`HDHive \u4E1A\u52A1\u5931\u8D25: ${c.data?.message||"unknown"}`);return c.data||{}}function O1n(e={}){let t=st(e.slug||"").trim(),r=st(e.media_url||e.url||"").trim(),n=st(e.title||"").trim();return!t||!r&&!n}function DTe(e=[],t={}){let r=Array.isArray(e)?e.slice():[];return r=r.filter(n=>R1n(n?.pan_type)),t.hide_invalid&&(r=r.filter(n=>!O1n(n))),t.billing_mode==="free_only"?r=r.filter(n=>LE(n?.unlock_points,0)===0):t.billing_mode==="paid_only"&&(r=r.filter(n=>LE(n?.unlock_points,0)>0)),r.sort((n,i)=>{let s=LE(n?.unlock_points,0)-LE(i?.unlock_points,0);if(s!==0)return s;let a=st(n?.share_size||"");return st(i?.share_size||"").localeCompare(a,"zh-CN")}),r}function P1n(e,t){return e==="score"?"vote_average.desc":e==="time"?t==="movie"?"release_date.desc":"first_air_date.desc":"popularity.desc"}function M1n(e,t={}){let r={},n=st(t.genre||""),i=st(t.region||""),s=st(t.year||""),a=st(t.sort||"hot");if(n){let o=e==="movie"?y1n[n]||"":_1n[n]||"";o&&(r.with_genres=o)}if(i){let o=A1n[i]||"";o&&(r.with_origin_country=o)}if(/^\d{4}$/.test(s))e==="movie"?r.primary_release_year=s:r.first_air_date_year=s;else if(/^\d{4}s$/.test(s)){let o=s.slice(0,4),u=String(Number(o)+9);e==="movie"?(r["primary_release_date.gte"]=`${o}-01-01`,r["primary_release_date.lte"]=`${u}-12-31`):(r["first_air_date.gte"]=`${o}-01-01`,r["first_air_date.lte"]=`${u}-12-31`)}return r.sort_by=P1n(a,e),r}function Yz({mediaType:e,tmdbItem:t,groupTypeId:r,groupTypeName:n,remarks:i,config:s}){let a=t?.id;if(!a)return null;let o=st(e==="movie"?t?.title:t?.name),u=HFt(e==="movie"?t?.release_date:t?.first_air_date),c=t?.vote_average,l=c==null?"":Number(c).toFixed(1);return{vod_id:I1n(e,a),link:b1n(e,a),vod_name:o,vod_pic:RTe(t?.poster_path,s),type_id:r,type_name:n,vod_remarks:[st(i),l?`TMDB ${l}`:"",u].filter(Boolean).join(" | "),vod_year:u,vod_douban_score:l,cate:{}}}function Q_(e,t,r){let n=Number.isFinite(t)?t:r.length;return{page:e,pagecount:Math.max(1,Math.ceil(n/BFt)),limit:BFt,total:n,list:r}}function L1n(e){let t=NTe.get(e);return t&&Date.now()-t.ts<h1n?t.data:(t&&NTe.delete(e),null)}function B1n(e,t){NTe.set(e,{ts:Date.now(),data:t})}async function $1n(){return{}}async function F1n(e){let t=await G_(e?.server);return{class:m1n,filters:g1n,styles:{runtime:t}}}async function U1n(e){let t=await G_(e?.server),[r,n]=await Promise.all([WL(e?.server,"/movie/popular",{page:1}).catch(()=>({results:[]})),WL(e?.server,"/tv/popular",{page:1}).catch(()=>({results:[]}))]),i=[];for(let s of K0(r.results).slice(0,10)){let a=Yz({mediaType:"movie",tmdbItem:s,groupTypeId:"movie_popular",groupTypeName:"\u70ED\u95E8\u7535\u5F71",remarks:"\u70ED\u95E8",config:t});a&&i.push(a)}for(let s of K0(n.results).slice(0,10)){let a=Yz({mediaType:"tv",tmdbItem:s,groupTypeId:"tv_popular",groupTypeName:"\u70ED\u95E8\u7535\u89C6\u5267",remarks:"\u70ED\u95E8",config:t});a&&i.push(a)}return{list:i}}async function q1n(e){let t=await G_(e?.server),r=e.body||{},n=Math.max(1,Number.parseInt(r.pg||r.page||r.pn,10)||1),i=st(r.tid||r.id||r.t),s=r.extend||r.filters||r.ext||{},a=T1n(i);if(a){if(n>1)return Q_(n,0,[]);let p=await Gz(e?.server,`/resources/${a.mediaType}/${a.tmdbId}`,"GET"),m=DTe(K0(p?.data).filter(y=>HC(y?.pan_type)===a.panType),t).map(y=>{let g=st(y.title)||`${a.mediaType.toUpperCase()} ${a.tmdbId}`,v=LE(y.unlock_points,0),A=[];st(y.share_size)&&A.push(st(y.share_size)),A.push(v===0?"\u514D\u8D39":`${v}\u79EF\u5206`),st(y.pan_type)&&A.push(`\u7F51\u76D8:${st(y.pan_type)}`);let _=[],E=K0(y.video_resolution).map(C=>st(C)).filter(Boolean),S=K0(y.source).map(C=>st(C)).filter(Boolean);return E.length&&_.push(E.join("/")),S.length&&_.push(S.join("/")),st(y.remark)&&_.push(st(y.remark)),{vod_id:S1n({slug:st(y.slug),mediaType:a.mediaType,tmdbId:a.tmdbId,title:g,posterPath:"",year:"",remark:st(y.remark),panType:a.panType}),vod_name:g,vod_pic:FFt(a.panType),type_id:i,type_name:`${Qz(a.panType)} \u8D44\u6E90`,vod_remarks:A.join(" | "),vod_subtitle:_.join(" | "),vod_content:[st(y.description||""),st(y.remark||"")].filter(Boolean).join(` -`)}});return Q_(1,m.length,m)}let o=x1n(i);if(o){if(n>1)return Q_(n,0,[]);let p=await Gz(e?.server,`/resources/${o.mediaType}/${o.tmdbId}`,"GET"),h=DTe(K0(p?.data),t),m={};for(let g of h){let v=HC(g?.pan_type);v&&(m[v]||(m[v]={panType:v,count:0,totalUnlockPoints:0}),m[v].count+=1,m[v].totalUnlockPoints+=LE(g?.unlock_points,0))}let y=D1n(Object.values(m).map(g=>({vod_id:C1n(o.mediaType,o.tmdbId,g.panType),vod_name:Qz(g.panType),vod_pic:FFt(g.panType),type_id:i,type_name:"\u7F51\u76D8\u5206\u7EC4",vod_remarks:`${g.count} \u6761\u5206\u4EAB\u94FE\u63A5`,vod_subtitle:`${g.totalUnlockPoints>0?"\u542B\u4ED8\u8D39":"\u5168\u514D\u8D39"} | \u70B9\u51FB\u8FDB\u5165`,cate:{},__panType:g.panType}))).map(({__panType:g,...v})=>v);return Q_(1,y.length,y)}let u=v1n[i];if(!u)return Q_(n,0,[]);let c=u.isDiscover?M1n(u.mediaType,s):{},l=await WL(e?.server,u.apiPath,{page:n,...c}),f=K0(l?.results).map(p=>Yz({mediaType:u.mediaType,tmdbItem:p,groupTypeId:i,groupTypeName:u.typeName,remarks:u.remarks,config:t})).filter(Boolean);return Q_(n,Number(l?.total_results||0),f)}async function j1n(e){let t=await G_(e?.server),r=st(e.body?.wd||e.body?.keyword).trim(),n=Math.max(1,Number.parseInt(e.body?.page,10)||1);if(!r)return Q_(1,0,[]);let i=await WL(e?.server,"/search/multi",{query:r,page:n,include_adult:!1}),s=K0(i?.results).filter(u=>["movie","tv"].includes(st(u?.media_type))).slice(0,8),o=(await Promise.all(s.map(async u=>{let c=st(u?.media_type),l=st(u?.id);if(!c||!l)return null;try{let d=await Gz(e?.server,`/resources/${c}/${l}`,"GET"),f=DTe(K0(d?.data),t);if(f.length===0)return null;let p=[...new Set(f.map(g=>HC(g?.pan_type)).filter(Boolean))],h=f.filter(g=>LE(g?.unlock_points,0)===0).length,m=f.length-h,y=Yz({mediaType:c,tmdbItem:u,groupTypeId:c,groupTypeName:c==="movie"?"\u641C\u7D22-\u7535\u5F71":"\u641C\u7D22-\u7535\u89C6\u5267",remarks:"\u641C\u7D22\u7ED3\u679C",config:t});return y?(y.vod_remarks=[`\u5171${f.length}\u6761`,`${p.length}\u79CD\u7F51\u76D8`,h>0?`${h}\u514D\u8D39`:"",m>0?`${m}\u79EF\u5206`:""].filter(Boolean).join(" | "),y.vod_subtitle=p.map(g=>Qz(g)).join(" | "),y.type_name=c==="movie"?"\u641C\u7D22\u7ED3\u679C-\u7535\u5F71":"\u641C\u7D22\u7ED3\u679C-\u7535\u89C6\u5267",y):null}catch{return null}}))).filter(Boolean);return Q_(n,o.length,o)}async function H1n(e){let t=await G_(e?.server),r=Array.isArray(e.body?.id)?e.body.id:[e.body?.id],n=[];for(let i of r){let s=w1n(i);if(!s?.slug)continue;let a=`detail:${s.slug}`,o=L1n(a);if(o){n.push(o);continue}let u=await Gz(e?.server,"/resources/unlock","POST",{slug:s.slug}),c=st(u?.data?.full_url||u?.data?.url);if(!c)throw new Error("HDHive unlock \u672A\u8FD4\u56DE\u5206\u4EAB\u94FE\u63A5");let l=await hi(c,e).catch(()=>({froms:"",urls:""})),d=null;s.mediaType&&s.tmdbId&&(d=await WL(e?.server,`/${s.mediaType}/${s.tmdbId}`,{}).catch(()=>null));let f={vod_id:st(i),vod_name:st(d?.title||d?.name||s.title||`\u8D44\u6E90 ${s.slug}`),vod_pic:s.posterPath?RTe(s.posterPath,t):RTe(d?.poster_path||s.posterPath,t),type_name:s.mediaType==="tv"?"\u5267\u96C6\u8D44\u6E90":"\u7535\u5F71\u8D44\u6E90",vod_year:HFt(s.mediaType==="movie"?d?.release_date:d?.first_air_date)||s.year||"",vod_remarks:s.listRemark||[st(u?.message||"HDHive\u8D44\u6E90"),s.panType?Qz(s.panType):"",d?.vote_average!=null?`TMDB ${Number(d.vote_average).toFixed(1)}`:""].filter(Boolean).join(" | "),vod_content:st(d?.overview||s.remark||""),vod_play_from:l?.froms||"",vod_play_url:l?.urls||"",vod_douban_score:d?.vote_average!=null?Number(d.vote_average).toFixed(1):""};Array.isArray(l?.links)&&l.links.length>0&&(f.vod_links=l.links),B1n(a,f),n.push(f)}return{list:n}}async function K1n(e,t){return Ci(e,t)}var KFt={meta:{key:"yingchao",name:"\u2601\uFE0F \u5F71\u5DE2",type:3},api:async e=>{e.post("/init",$1n),e.post("/home",F1n),e.post("/homeVod",U1n),e.post("/category",q1n),e.post("/detail",H1n),e.post("/play",K1n),e.post("/search",j1n),e.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",xi)}};var V1n={meta:{key:"20260428",name:"20260428",type:0},api:async e=>{e.get("/",async()=>({code:0,message:"This is the 20260428 spider - always last in the list",timestamp:new Date().toISOString(),version:"1.0.0"})),e.get("/home",async()=>({code:0,list:[]})),e.get("/category",async()=>({code:0,list:[]})),e.get("/detail",async()=>({code:0,list:[]})),e.get("/play",async()=>({code:0,url:"",header:{},extra:{}})),e.get("/search",async()=>({code:0,list:[]}))},check:()=>{}};function VFt(e){return`${e}_legacy_${Date.now()}_${Math.random().toString(36).slice(2)}`}async function OTe(e,t,r,n){try{let i=await e.db.getObjectDefault(`/config/${t}`,[]);if(Array.isArray(i)&&i.length>0)return i.filter(a=>a&&a.enabled!==!1).map(a=>(a.id||(a.id=VFt(t)),r(a)));let s=e.config?.[t]||[];if(s.length>0){let a=s.map(o=>(o.id||(o.id=VFt(t)),o));return await e.db.push(`/config/${t}`,a),a.filter(o=>o.enabled!==!1).map(r)}}catch(i){console.error(`\u52A0\u8F7D ${n} \u914D\u7F6E\u5931\u8D25:`,i)}return[]}async function Wz(e){let t=[cDt,VBt,a3t,ZMt,URt,q7,MRt,WNt,NLt,$Rt,yLt,vLt,KNt,SLt,xLt,pBt,I$t,L$t,z$t,KFt,CRt,ORt,uDt,sLt,V4t,cBt,X4t,pLt,G4t,hLt,q4t,e6t,$6t,j6t,J6t,TFt,OFt,LFt,gBt,S3t,P3t,J3t,n$t,h$t,MBt,p3t,A3t,D3t,QNt,lDt];return t.push(...await OTe(e,"emby",hDt,"Emby")),t.push(...await OTe(e,"alist",ADt,"Alist")),t.push(...await OTe(e,"webdav",iIe,"WebDAV")),(await zbe(e)).forEach(i=>t.push(Gbe(i.name,i.address))),(await Ybe(e)).forEach(i=>t.push(Xbe(i.name,i.address))),t.push(V1n),t}var Xz=async e=>(await e.db.getObjectDefault("/sites",{}))?.list||e.config.sites.list,z1n=async(e,t)=>{await e.db.push("/sites/list",t)},Q1n=async e=>{await e.db.delete("/sites/list")};async function PTe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await Xz(t.server)})}),e.put("/list",async(t,r)=>{await z1n(t.server,t.body.list),r.send({code:0})}),e.delete("/list",async(t,r)=>{await Q1n(t.server),r.send({code:0})})}var G1n="/spider";function Y1n(e,t){return e<10?t.video.sites:e<20?t.read.sites:e<30?t.comic.sites:e<40?t.music.sites:e<50?t.pan.sites:null}async function zFt(e){let t={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:e.config?.color||[]};return(await Wz(e)).forEach(n=>{let i=Object.assign({},n.meta);i.api=G1n+"/"+i.key+"/"+i.type,i.key="nodejs_"+i.key;let s=Y1n(n.meta.type,t);s&&s.push(i)}),t}function QFt(e,t,{includeDisabled:r}){let n={};e.forEach(a=>n[a.key]=a);let i={},s=[];return t.forEach(a=>{let o=a.key;if(i[o]=!0,!n[o])return;let u={...n[o],name:a.name||n[o].name};r?s.push({...u,enable:a.enable,t4:a.t4,cms:a.cms}):a.enable&&s.push(u)}),e.forEach(a=>{i[a.key]||(r?s.push({...a,enable:!0,t4:a.t4,cms:a.cms}):s.push(a))}),s}function MTe(e,{key:t,label:r,allowDelete:n}){e.get(`/website/${t}/config`,async i=>{try{let s=await i.server.db.getObjectDefault(`/config/${t}`,[]);return(!s||s.length===0)&&i.server.config?.[t]&&(s=i.server.config[t]),{code:0,data:s}}catch(s){return console.error(`\u83B7\u53D6 ${r} \u914D\u7F6E\u5931\u8D25:`,s),{code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"}}}),e.put(`/website/${t}/config`,async(i,s)=>{try{await i.server.db.push(`/config/${t}`,i.body),s.send({code:0,message:`${r}\u914D\u7F6E\u4FDD\u5B58\u6210\u529F`})}catch(a){s.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+a.message})}}),n&&e.delete(`/website/${t}/config`,async(i,s)=>{try{await i.server.db.delete(`/config/${t}`),s.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u914D\u7F6E"})}catch(a){s.send({code:1,message:a.message})}})}async function LTe(e){e.get("/check",async(t,r)=>{r.send({run:!e.stop,version:"1.0.0",timestamp:new Date().toISOString()})}),e.get("/config",async(t,r)=>{try{let n=await zFt(t.server),i=await Xz(t.server);n.video.sites=QFt(n.video.sites,i,{includeDisabled:!1}),n.video.danmuSearchUrl=`http://127.0.0.1:${t.server.address().port}/website/danmu/fe`,n.video.internalDanmuUiUrl=`http://127.0.0.1:${t.server.address().port}/internal-danmu/ui`,r.send(n)}catch(n){console.error("\u83B7\u53D6\u914D\u7F6E\u5931\u8D25:",n),r.code(500).send({error:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.get("/full-config",async(t,r)=>{try{let n=await zFt(t.server),i=await Xz(t.server);n.video.sites=QFt(n.video.sites,i,{includeDisabled:!0}),r.send(n)}catch(n){console.error("\u83B7\u53D6\u5B8C\u6574\u914D\u7F6E\u5931\u8D25:",n),r.code(500).send({error:"\u83B7\u53D6\u5B8C\u6574\u914D\u7F6E\u5931\u8D25"})}}),MTe(e,{key:"emby",label:"Emby",allowDelete:!1}),MTe(e,{key:"alist",label:"Alist",allowDelete:!0}),MTe(e,{key:"webdav",label:"WebDAV",allowDelete:!0})}Yr();async function W1n(e,t){try{let{do:r,url:n,referer:i,aid:s,cid:a,qn:o,video_url:u,audio_url:c,mode:l,duration:d}=e.query;if(!r)return t.code(400).send("Invalid parameters");if(r==="mpd"){let{proxy:f}=q7,[p,h,m]=await f({do:r,aid:s,cid:a,qn:o,video_url:u?decodeURIComponent(u):"",audio_url:c?decodeURIComponent(c):"",mode:l||"dash",duration:d||0});return t.header("Content-Type",h).header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Type,Content-Length").code(p),t.send(m)}if(r==="image"){let f=decodeURIComponent(n),p={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Accept:"image/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};i&&(p.Referer=decodeURIComponent(i));let h=await Ee.get(f,{responseType:"stream",timeout:1e4,headers:p});return h.headers["content-type"]&&t.header("Content-Type",h.headers["content-type"]),h.headers["content-length"]&&t.header("Content-Length",h.headers["content-length"]),h.headers["cache-control"]&&t.header("Cache-Control",h.headers["cache-control"]),t.send(h.data)}return t.code(400).send("Unsupported action")}catch(r){return console.error("\u4EE3\u7406\u9519\u8BEF:",r),t.code(500).send("Proxy error: "+r.message)}}async function BTe(e){e.get("/proxy",W1n)}Yr();var Fo=Se(require("fs"),1);var zC=Se(require("path"),1);Ot();var $Te=new Map;function FTe(e,t={}){if(!e||typeof e!="string")throw new TypeError("createCache: name \u5FC5\u987B\u662F\u975E\u7A7A\u5B57\u7B26\u4E32");if($Te.has(e))return $Te.get(e).cache;let r=new Gg(t.maxSize??100,t.ttl??5*60*1e3);return $Te.set(e,{cache:r,options:{maxSize:r.maxSize,ttl:r.ttl},createdAt:Date.now()}),r}var $E=FTe("router.danmu.video",{maxSize:100,ttl:10*60*1e3}),UE=FTe("router.danmu.episodeIndex",{maxSize:1e4,ttl:10*60*1e3}),BE=new Map,X1n=8,J1n=800,Z1n=400,eSn=12*1e3,KC=[],GFt=200,qTe={detailRequests:0,playRequests:0,detailCacheStores:0,episodeMappingOverwriteCount:0,episodeIndexHitCount:0,episodeIndexMissCount:0,videoCacheHitCount:0,videoCacheMissCount:0,mappingRebuildCount:0,fallbackUsedCount:0,fallbackSuccessCount:0,fallbackFailedCount:0,danmakuInjectedCount:0,danmakuOverwriteCount:0,invalidTitleSkipCount:0,blacklistSkipCount:0,autoPushDisabledSkipCount:0,proxyRouteSkipCount:0,replySentSkipCount:0,jsonParseErrorCount:0};function _i(e,t=1){Object.prototype.hasOwnProperty.call(qTe,e)&&(qTe[e]+=t)}function Y_(e){return String(e?.url||"").match(/\/spider\/([^\/]+)\/\d+\/(detail|play)/)?.[1]||"unknown"}function HTe(e){return String(e?.url||"").endsWith("/detail")?"detail":String(e?.url||"").endsWith("/play")?"play":"unknown"}function YFt(e,t,r){return`${Y_(e)}:${t}_${r}`}function VC(e,t=""){if(!eQ(e))return"";let r=e?.body||{};return`push:${String(r?.url||r?.vod_id||r?.id||r?.wd||t||"").trim()}`}function jTe(e,t=""){let r=`${String(e?.body?.flag||"")}_${String(e?.body?.id||"")}`,n=VC(e,t);return n?`${n}:${r}`:r}function Jz(e,t=""){let r=`${String(e?.body?.flag||"")}_${String(e?.body?.id||"")}`,n=VC(e,t);return n?`${n}:${r}`:r}function tSn(e,t=HTe(e)){let r=Y_(e),n=String(e?.body?.flag||""),i=String(e?.body?.id||"");return`${r}:${n}:${i}:${t}`}function rSn(e={}){KC.push({ts:new Date().toISOString(),...e}),KC.length>GFt&&KC.splice(0,KC.length-GFt)}function wn(e,t={}){let r=t.phase||HTe(e);rSn({traceKey:tSn(e,r),spiderKey:Y_(e),flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),phase:r,status:t.status||"ok",reason:t.reason||"",...t})}function WFt(){let e=KC.slice(-50),t=e.reduce((i,s)=>{let a=String(s?.status||"unknown");return i[a]=(i[a]||0)+1,i},{}),r=e.reduce((i,s)=>{let a=String(s?.reason||s?.action||"unknown");return i[a]=(i[a]||0)+1,i},{}),n=Object.entries(r).sort((i,s)=>s[1]-i[1]).slice(0,10).map(([i,s])=>({reason:i,count:s}));return{cache:{videoCacheSize:$E.size,episodeIndexCacheSize:UE.size,autoPushContextSize:gF(),pendingAutoPushTaskCount:BE.size},counters:{...qTe},events:{totalBuffered:KC.length,recentCount:e.length,statusBuckets:t,topReasons:n},recentEvents:e}}function XFt(e=""){let t=String(e||"").trim();return t?/^(https?:\/\/|magnet:\?|ed2k:\/\/)/i.test(t)||/(?:pan\.quark\.cn|pan\.baidu\.com|aliyundrive\.com|alipan\.com|115\.com|123pan\.com|cloud\.189\.cn|drive\.uc\.cn)/i.test(t):!1}function FE(e=""){let t=String(e||"").trim();return!!(!t||t==="undefined"||t==="null"||XFt(t))}function Zz(e=0){return new Promise(t=>setTimeout(t,e))}async function nSn({maxAttempts:e=1,initialDelayMs:t=0,intervalMs:r=0}={}){let n=null,i=0,s=Date.now();t>0&&await Zz(t);for(let a=1;a<=e;a++){i=a;try{let o=await Xr.getPlayInfo(),u=String(o?.title||"").trim();if(!FE(u))return{title:u,attempts:i,durationMs:Date.now()-s};n=new Error(`empty title on attempt ${a}`)}catch(o){n=o}a<e&&r>0&&await Zz(r)}throw Object.assign(n||new Error("play title unavailable"),{attempts:i,durationMs:Date.now()-s})}function eQ(e){return Y_(e)==="push"}function UTe(e="",t=""){let r=String(e||"").trim(),n=String(t||"").trim();return!n||!r||r===n||XFt(r)?!1:vl(r)!==vl(n)}function iSn(e,t={},r=null){let n=String(e?.body?.flag||"").trim(),i=String(e?.body?.id||"").trim(),s=String(t?.flag||"").trim(),a=String(t?.id||"").trim(),o=r||Ay(),u=String(o?.flag||"").trim(),c=String(o?.id||"").trim();return s&&a?s===n&&a===i:u&&c?u===n&&c===i:!1}function Ks(e,t,r={}){let n={stage:t,spiderKey:Y_(e),isPushSpider:eQ(e),flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),url:String(e?.url||""),...r};console.info(`[PUSH_DANMU_TRACE] ${JSON.stringify(n)}`)}function JFt(e,t,r){return`http://127.0.0.1:${e}/danmu-proxy?name=${encodeURIComponent(t)}&episodeNumber=${encodeURIComponent(r)}`}function ZFt(e,t,r){let n=Jz(e,t),i=vl(t);return Aze(n,{rawTitle:t,autoKey:i,episodeNumber:r.episodeNumber}),console.info(`[DanmuAutoPushFlow] \u5DF2\u4FDD\u5B58\u81EA\u52A8\u63A8\u9001\u4E0A\u4E0B\u6587: contextKey="${n}", autoKey="${i}"`),Ks(e,"auto_push_context_saved",{contextKey:n,autoKey:i,rawTitle:t,episodeNumber:r?.episodeNumber||""}),{contextKey:n,autoKey:i}}function sSn(e,t="push_detail_reset"){if(Y_(e)!=="push")return;let n=VC(e),i=0;for(let[o]of $E.entries())String(o).startsWith("video_push_")&&($E.delete(o),i++);let s=0;for(let[o]of UE.entries())String(o).startsWith("push:")&&(UE.delete(o),s++);let a=0;for(let[o]of BE.entries())(!n||String(o||"").startsWith(n))&&(BE.delete(o),a++);Ks(e,"push_state_cleared",{reason:t,pushSessionKey:n,clearedVideoCache:i,clearedEpisodeIndex:s,clearedPendingTasks:a})}function aSn(e,{episodeKey:t,vodName:r,episodeInfo:n,port:i,playContextSnapshot:s=null}){let a=jTe(e,r),o=eQ(e),u=s?{...s}:null,c=String(u?.title||n?.name||r||"").trim(),l=Date.now(),d=`${a}:${l}:${Math.random().toString(36).slice(2,8)}`;Ks(e,"deferred_schedule_enter",{taskKey:a,taskToken:d,episodeKey:t,pushSessionKey:VC(e,r),autoPushContextKey:Jz(e,r),vodName:r,episodeName:n?.episodeName||"",episodeNumber:n?.episodeNumber||"",port:i,snapshotTitle:c,snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||"")}),BE.set(a,{token:d,createdAt:l,episodeKey:t,vodName:r});let f=()=>{let h=BE.get(a);return!h||h.token!==d||Date.now()-l>eSn},p=(async()=>{_i("fallbackUsedCount");try{let h="",m=null,y="",g=X1n,v=J1n,A=Z1n;v>0&&await Zz(v);for(let C=1;C<=g;C++){if(f()){wn(e,{action:"deferred_push_cancelled",status:"skip",reason:"task_replaced_or_expired",episodeKey:t,vodName:r,taskKey:a,taskToken:d,attempt:C});return}try{let I=await Xr.getPlayInfo(),N=String(I?.title||"").trim(),T=iSn(e,I,u),k=Ay();if(Ks(e,"deferred_getPlayInfo_candidate",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,candidateTitle:N,snapshotTitle:c,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:I?JSON.stringify(I):"",playInfoFlag:String(I?.flag||""),playInfoId:String(I?.id||""),playInfoMatched:T,localContextRaw:JSON.stringify(k||{}),localFlag:String(k?.flag||""),localId:String(k?.id||""),localTitle:String(k?.title||""),localEpisodeKey:String(k?.episodeKey||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||"")}),!FE(N))if(o&&!T){if(!FE(c)&&!UTe(r,c)){h=c,m={attempts:C,durationMs:v+Math.max(0,C-1)*A},y="snapshot_title_on_playinfo_mismatch",Ks(e,"deferred_getPlayInfo_accept",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,acceptedTitle:h,acceptReason:y,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:I?JSON.stringify(I):"",playInfoFlag:String(I?.flag||""),playInfoId:String(I?.id||""),localContextRaw:JSON.stringify(k||{}),localFlag:String(k?.flag||""),localId:String(k?.id||""),localTitle:String(k?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:c});break}Ks(e,"deferred_getPlayInfo_reject_stale",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,candidateTitle:N,rejectReason:"playinfo_mismatch",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:I?JSON.stringify(I):"",playInfoFlag:String(I?.flag||""),playInfoId:String(I?.id||""),localContextRaw:JSON.stringify(k||{}),localFlag:String(k?.flag||""),localId:String(k?.id||""),localTitle:String(k?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:c}),wn(e,{action:"deferred_push_reject_stale_title",status:"skip",reason:"playinfo_mismatch",episodeKey:t,vodName:r,taskKey:a,rawTitle:N,finalTitle:N,fallbackUsed:!0,fallbackAttempts:C})}else if(o&&UTe(r,N)){if(!FE(c)&&!UTe(r,c)){h=c,m={attempts:C,durationMs:v+Math.max(0,C-1)*A},y="snapshot_title_on_stale_playinfo",Ks(e,"deferred_getPlayInfo_accept",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,acceptedTitle:h,acceptReason:y,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:I?JSON.stringify(I):"",playInfoFlag:String(I?.flag||""),playInfoId:String(I?.id||""),localContextRaw:JSON.stringify(k||{}),localFlag:String(k?.flag||""),localId:String(k?.id||""),localTitle:String(k?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:c});break}Ks(e,"deferred_getPlayInfo_reject_stale",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,candidateTitle:N,rejectReason:"stale_title",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:I?JSON.stringify(I):"",playInfoFlag:String(I?.flag||""),playInfoId:String(I?.id||""),localContextRaw:JSON.stringify(k||{}),localFlag:String(k?.flag||""),localId:String(k?.id||""),localTitle:String(k?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:c}),wn(e,{action:"deferred_push_reject_stale_title",status:"skip",reason:"stale_title",episodeKey:t,vodName:r,taskKey:a,rawTitle:N,finalTitle:N,fallbackUsed:!0,fallbackAttempts:C})}else{let O=Ay();h=N||String(O?.title||"").trim(),m={attempts:C,durationMs:v+Math.max(0,C-1)*A},y=N?"playInfo_title":"local_context_title",Ks(e,"deferred_getPlayInfo_accept",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,acceptedTitle:h,acceptReason:y,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:I?JSON.stringify(I):"",playInfoFlag:String(I?.flag||""),playInfoId:String(I?.id||""),localContextRaw:JSON.stringify(O||{}),localFlag:String(O?.flag||""),localId:String(O?.id||""),localTitle:String(O?.title||"")});break}}catch(I){let N=Ay();Ks(e,"deferred_getPlayInfo_error",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:C,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),localContextRaw:JSON.stringify(N||{}),localFlag:String(N?.flag||""),localId:String(N?.id||""),localTitle:String(N?.title||""),error:I?.message||String(I||"")})}C<g&&A>0&&await Zz(A)}if(!h){let C=Ay();throw Ks(e,"deferred_getPlayInfo_exhausted",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",maxAttempts:g,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),localContextRaw:JSON.stringify(C||{}),localFlag:String(C?.flag||""),localId:String(C?.id||""),localTitle:String(C?.title||""),exhaustedReason:"no_acceptable_title_after_max_attempts"}),Object.assign(new Error(`empty title on attempt ${g}`),{attempts:g,durationMs:v+Math.max(0,g-1)*A})}if(f()){wn(e,{action:"deferred_push_cancelled",status:"skip",reason:"task_replaced_before_push",episodeKey:t,vodName:r,taskKey:a,taskToken:d});return}let _=String(h||"").trim();n.name=_;let E=JFt(i,_,n.episodeNumber);Ks(e,"deferred_push_ready",{taskKey:a,taskToken:d,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",finalName:_,acceptedSource:y,danmuProxyUrl:E}),await Xr.pushDanmu(E),_i("fallbackSuccessCount");let{autoKey:S}=ZFt(e,_,n);console.info(`[DanmuAutoPushFlow] \u540E\u53F0\u8865\u63A8\u5F39\u5E55\u6210\u529F: vodName="${r}", rawTitle="${_}", episodeNumber="${n.episodeNumber}", taskKey="${a}", danmuProxyUrl="${E}"`),wn(e,{action:"deferred_push_success",reason:"deferred_push_success",episodeKey:t,vodName:r,rawTitle:_,finalTitle:_,episodeNumber:n.episodeNumber,autoKey:S,taskKey:a,danmuProxyUrl:E,acceptedSource:y,fallbackUsed:!0,fallbackAttempts:m?.attempts||0,fallbackDurationMs:m?.durationMs||0})}catch(h){_i("fallbackFailedCount"),console.error("[AutoPush] \u540E\u53F0\u8865\u63A8\u83B7\u53D6\u6807\u9898\u5931\u8D25:",h.message),wn(e,{action:"deferred_push_failed",status:"error",reason:"deferred_push_failed",episodeKey:t,vodName:r,error:h.message,taskKey:a,fallbackUsed:!0,fallbackAttempts:h.attempts||0,fallbackDurationMs:h.durationMs||0,fallbackError:h.message})}finally{BE.get(a)?.token===d&&BE.delete(a)}})();wn(e,{action:"deferred_push_scheduled",reason:"deferred_push_scheduled",episodeKey:t,vodName:r,taskKey:a,taskToken:d,episodeNumber:n.episodeNumber})}function oSn(e,t){let r;try{r=JSON.parse(t)}catch(c){return _i("jsonParseErrorCount"),wn(e,{action:"detail_skip_json_parse_failed",status:"error",reason:"json_parse_failed",error:c.message}),t}let n=r.list?.[0];if(!n)return wn(e,{action:"detail_skip_missing_vodInfo",status:"skip",reason:"missing_vodInfo"}),t;if(!n.vod_play_from||!n.vod_play_url)return wn(e,{action:"detail_skip_missing_play_fields",status:"skip",reason:"missing_play_fields",vodName:n.vod_name}),t;let i=n.vod_name,s=Y_(e);s==="push"&&sSn(e,"push_detail_enter"),Ks(e,"detail_enter",{vodName:i,playFrom:String(n.vod_play_from||""),playUrlPreview:String(n.vod_play_url||"").slice(0,300)});let a=`video_${s}_${i}`,o=new Map,u=n.vod_play_from.split("$$$")||[];return n.vod_play_url.split("$$$").filter(Boolean).forEach((c,l)=>{c.split("#").forEach(d=>{let[f,p]=d.split("$"),h=YFt(e,u[l],p),m=UE.get(h);m&&m!==i&&(_i("episodeMappingOverwriteCount"),console.info(`[DanmuAutoPushFlow] \u8986\u76D6\u65E7\u5267\u96C6\u6620\u5C04: episodeKey="${h}", from="${m}", to="${i}"`),wn(e,{action:"episode_mapping_overwrite",reason:"mapping_overwrite",episodeKey:h,vodName:i,previousVodName:m,videoCacheKey:a,mappingOverwrite:!0})),o.set(h,{name:i,episodeNumber:zS(f),episodeName:f}),Ks(e,"detail_episode_mapped",{vodName:i,episodeKey:h,line:u[l],episodeName:f,episodeNumber:zS(f),rawId:p}),UE.set(h,i)})}),$E.set(a,o),_i("detailCacheStores"),console.info(`[DanmuAutoPushFlow] \u5DF2\u7F13\u5B58\u8BE6\u60C5\u5267\u96C6\u6620\u5C04: spiderKey="${s}", vodName="${i}", episodeCount=${o.size}`),wn(e,{action:"detail_cache_store",reason:"detail_cache_store",vodName:i,videoCacheKey:a,episodeCount:o.size}),t}async function uSn(e,t){let r;try{r=JSON.parse(t)}catch(m){return _i("jsonParseErrorCount"),wn(e,{action:"play_skip_json_parse_failed",status:"error",reason:"json_parse_failed",error:m.message}),t}if(!(r.url||r.url?.length||r.urls?.length))return wn(e,{action:"play_skip_no_media_url",status:"skip",reason:"no_media_url"}),t;let n=YFt(e,e.body.flag,e.body.id),i=UE.get(n),s=Y_(e);if(Ks(e,"play_enter",{episodeKey:n,taskKey:jTe(e,i||""),pushSessionKey:VC(e,i||""),autoPushContextKey:Jz(e,i||""),initialVodName:i||"",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||"")}),i){_i("episodeIndexHitCount");let m=$E.get(`video_${s}_${i}`);m?.has(n)&&_i("videoCacheHitCount"),m?.has(n)||(console.warn(`[AutoPush] \u53D1\u73B0\u5931\u6548\u5267\u96C6\u6620\u5C04\uFF0C\u51C6\u5907\u91CD\u67E5: episodeKey=${n}, vodName=${i}`),i=null)}else _i("episodeIndexMissCount");if(!i){let m=!1;for(let[y,g]of $E.entries())if(String(y).startsWith(`video_${s}_`)&&g.has(n)){i=String(y).slice(`video_${s}_`.length),UE.set(n,i),m=!0,_i("mappingRebuildCount"),_i("videoCacheHitCount"),console.info(`[DanmuAutoPushFlow] \u901A\u8FC7\u89C6\u9891\u7F13\u5B58\u91CD\u5EFA\u5267\u96C6\u6620\u5C04: episodeKey="${n}", vodName="${i}"`),wn(e,{action:"episode_mapping_rebuild",reason:"mapping_rebuild",episodeKey:n,vodName:i,videoCacheKey:y,mappingRebuilt:!0});break}m||_i("videoCacheMissCount")}if(!i)return console.warn(`[AutoPush] \u672A\u627E\u5230 vodName: episodeKey=${n}`),wn(e,{action:"play_skip_missing_vodName",status:"skip",reason:"missing_vodName",episodeKey:n}),t;let a=`video_${s}_${i}`,o=$E.get(a);if(!o)return _i("videoCacheMissCount"),console.warn(`[AutoPush] \u89C6\u9891\u7F13\u5B58\u7F3A\u5931: vodName=${i}, videoCacheKey=${a}`),wn(e,{action:"play_skip_missing_videoCache",status:"skip",reason:"missing_videoCache",episodeKey:n,vodName:i,videoCacheKey:a}),t;let u=o.get(n);if(!u)return console.warn(`[AutoPush] \u672A\u627E\u5230 episodeInfo: episodeKey=${n}, vodName=${i}`),wn(e,{action:"play_skip_missing_episodeInfo",status:"skip",reason:"missing_episodeInfo",episodeKey:n,vodName:i}),t;Ks(e,"play_episode_resolved",{episodeKey:n,vodName:i,episodeName:u?.episodeName||"",episodeNumber:u?.episodeNumber||"",cachedName:u?.name||""});let c=MAt({spiderKey:s,flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),episodeKey:n,vodName:String(i||""),episodeName:String(u?.episodeName||""),episodeNumber:String(u?.episodeNumber||""),title:String(u?.name||i||"")});Ks(e,"play_context_updated",{episodeKey:n,taskKey:jTe(e,i||""),pushSessionKey:VC(e,i||""),autoPushContextKey:Jz(e,i||""),vodName:i,localFlag:String(e?.body?.flag||""),localId:String(e?.body?.id||""),localTitle:String(u?.name||i||"")});let l=String(u.name||"").trim(),d=eQ(e);if(!d&&FE(l)){_i("fallbackUsedCount");try{let m=await nSn();FE(m.title)||(l=m.title,u.name=m.title,_i("fallbackSuccessCount"),wn(e,{action:"title_fallback_success",reason:"fallback_success",episodeKey:n,vodName:i,rawTitle:m.title,finalTitle:m.title,fallbackUsed:!0,fallbackAttempts:m.attempts,fallbackDurationMs:m.durationMs}))}catch(m){_i("fallbackFailedCount"),console.error("[AutoPush] getPlayInfo \u83B7\u53D6\u6807\u9898\u5931\u8D25:",m.message),wn(e,{action:"title_fallback_failed",status:"error",reason:"fallback_failed",episodeKey:n,vodName:i,error:m.message,fallbackUsed:!0,fallbackAttempts:m.attempts||0,fallbackDurationMs:m.durationMs||0,fallbackError:m.message})}}if(d||FE(l)){if(r.extra||(r.extra={}),d){Ks(e,"push_clear_stale_danmaku",{episodeKey:n,vodName:i,oldDanmaku:String(r.extra.danmaku||"")});try{await Xr.clearDanmu()}catch{}r.extra.danmaku=""}return _i("invalidTitleSkipCount"),aSn(e,{episodeKey:n,vodName:i,episodeInfo:u,port:e.server.address().port,playContextSnapshot:c}),wn(e,{action:"play_deferred_push_pending_title",status:"skip",reason:d?"push_deferred_only":"invalid_title_deferred",episodeKey:n,vodName:i,rawTitle:l}),t}r.extra||(r.extra={}),r.extra.danmaku&&(_i("danmakuOverwriteCount"),console.info(`[DanmuAutoPushFlow] \u8986\u76D6\u5DF2\u6709 danmaku: episodeKey="${n}", old="${r.extra.danmaku}"`),wn(e,{action:"danmaku_overwrite",reason:"danmaku_overwrite",episodeKey:n,vodName:i,oldDanmaku:r.extra.danmaku,overwroteExistingDanmaku:!0}));let f=e.server.address().port,p=JFt(f,l,u.episodeNumber);console.info(`[DanmuAutoPushFlow] \u6CE8\u5165\u5F39\u5E55\u4EE3\u7406: vodName="${i}", rawTitle="${l}", episodeNumber="${u.episodeNumber}", flag="${e.body.flag}", id="${e.body.id}", danmuProxyUrl="${p}"`),r.extra.danmaku=p;let{autoKey:h}=ZFt(e,l,u);return wn(e,{action:"danmaku_injected",reason:"danmaku_injected",episodeKey:n,vodName:i,rawTitle:l,finalTitle:l,episodeNumber:u.episodeNumber,autoKey:h,danmuProxyUrl:p}),JSON.stringify(r)}function KTe(e){e.addHook("onSend",async(t,r,n)=>{try{if(Ks(t,"hook_enter",{replySent:!!r?.sent,payloadType:typeof n}),!t.url.includes("/spider/"))return wn(t,{action:"hook_skip_non_spider",phase:"unknown",status:"skip",reason:"non_spider_route"}),n;if(t.url.includes("/proxy/"))return _i("proxyRouteSkipCount"),wn(t,{action:"hook_skip_proxy_route",status:"skip",reason:"proxy_route"}),n;if(r.sent)return _i("replySentSkipCount"),wn(t,{action:"hook_skip_reply_sent",status:"skip",reason:"reply_sent"}),n;let i=HTe(t);i==="detail"&&_i("detailRequests"),i==="play"&&_i("playRequests");let s=await $g(t.server);if(!s||!s.autoPush)return _i("autoPushDisabledSkipCount"),wn(t,{action:"hook_skip_autoPush_disabled",status:"skip",reason:"autoPush_disabled"}),n;let a=s.autoPushBlacklist||[],o=t.url.match(/\/spider\/([^\/]+)\/\d+\/(detail|play)/);if(o&&a.includes(o[1]))return _i("blacklistSkipCount"),wn(t,{action:"hook_skip_blacklisted",status:"skip",reason:"blacklisted"}),n;if(t.url.endsWith("/detail"))return oSn(t,n);if(t.url.endsWith("/play"))return await uSn(t,n)}catch(i){wn(t,{action:"hook_error",status:"error",reason:"hook_error",error:i.message}),console.error(i)}return n})}var i5t="127.0.0.1",s5t=9321,cSn="87654321",lSn="/internal-danmu/ui-inline.js",e5t=zC.default.resolve(process.cwd(),"runtime","danmu_api","run","danmu_api.status.json"),a5t=new Set(["LOCALCACHEVALID","REDISVALID","LOCALREDISVALID","AIVALID"]),o5t=new Set(["DEPLOYPLATFORM"]),dSn=new Set([...a5t,...o5t]),fSn={LOCALCACHEVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u672C\u5730\u7F13\u5B58\u53EF\u7528\u6027\u7531\u8FD0\u884C\u65F6\u81EA\u52A8\u63A2\u6D4B\u3002",REDISVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 UPSTASH_REDIS_REST_URL / UPSTASH_REDIS_REST_TOKEN \u6765\u5F71\u54CD Redis \u8FDE\u901A\u6027\u3002",LOCALREDISVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 LOCAL_REDIS_URL \u6765\u5F71\u54CD\u672C\u5730 Redis \u8FDE\u901A\u6027\u3002",AIVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 AI_BASE_URL / AI_MODEL / AI_API_KEY \u540E\u7531\u8FD0\u884C\u65F6\u81EA\u52A8\u9A8C\u8BC1\u3002",DEPLOYPLATFORM:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u5F53\u524D\u503C\u7531\u90E8\u7F72\u73AF\u5883\u51B3\u5B9A\u3002"},pSn=new Set(["PROXY_URL","TMDB_API_KEY","AI_API_KEY","UPSTASH_REDIS_REST_URL","UPSTASH_REDIS_REST_TOKEN","LOCAL_REDIS_URL","DEPLOY_PLATFROM_ACCOUNT","DEPLOY_PLATFROM_PROJECT","DEPLOY_PLATFROM_TOKEN","TOKEN","ADMIN_TOKEN"]);function tQ(e){let t=e?.config||{},r=t.danmuBuiltin?.host||i5t,n=t.danmuBuiltin?.port||s5t;return`http://${r}:${n}`}function hSn(e){return(e?.config||{}).danmuBuiltin?.host||i5t}function mSn(e){return(e?.config||{}).danmuBuiltin?.port||s5t}function qE(e){return(e?.config||{}).danmuBuiltin?.token||cSn}function u5t(e,t=""){let r=tQ(e),n=qE(e),i=String(t||"").startsWith("/")?t:`/${t}`;return`${r}/${n}${i}`}function gSn(e){let t=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"";return`${lSn}${t}`}function ySn(e,t){if(typeof e!="string")return e;let r=e.match(/<script[^>]*>([\s\S]*?)<\/script>/i);return r?e.replace(r[0],`<script src="${t}"></script>`):e}function t5t(e){if(typeof e!="string")return"";let t=e.match(/<script[^>]*>([\s\S]*?)<\/script>/i);return t?t[1]:""}function _Sn(){return["(function(){"," try {",' var __internalBase = "/internal-danmu";',' var __diagnosticsSectionId = "diagnostics-section";',' var __diagnosticsNavAttr = "data-internal-diagnostics-nav";'," var __origFetch = window.fetch ? window.fetch.bind(window) : null;"," function __rewriteUrl(url) {",' if (typeof url !== "string") return url;',' if (url.indexOf("/internal-danmu/87654321/api/") === 0) return __internalBase + url.slice("/internal-danmu/87654321".length);',' if (url.indexOf("/87654321/api/") === 0) return __internalBase + url.slice("/87654321".length);',' if (url.indexOf("/87654321/api") === 0) return __internalBase + url.slice("/87654321".length);'," return url;"," }"," function __escapeHtml(value) {",' return String(value == null ? "" : value)',' .replace(/&/g, "&")',' .replace(/</g, "<")',' .replace(/>/g, ">")',' .replace(/"/g, """)',` .replace(/'/g, "'");`," }"," function __ensureDiagnosticsUi() {",' var navWrap = document.querySelector(".nav-buttons");',' if (navWrap && !navWrap.querySelector("[" + __diagnosticsNavAttr + "]")) {',' var btn = document.createElement("button");',' btn.className = "nav-btn";',' btn.setAttribute(__diagnosticsNavAttr, "1");',' btn.textContent = "\u8BCA\u65AD\u9762\u677F";'," btn.onclick = function(ev) {",' if (typeof window.switchSection === "function") window.switchSection("diagnostics", ev);'," };"," navWrap.appendChild(btn);"," }",' var content = document.querySelector(".content");'," if (content && !document.getElementById(__diagnosticsSectionId)) {",' var wrap = document.createElement("div");',' wrap.className = "section";'," wrap.id = __diagnosticsSectionId;",' wrap.innerHTML = "<h2>\u8BCA\u65AD\u9762\u677F</h2>" +',' "<p style=\\"color:#666;margin-bottom:15px;\\">\u5C55\u793A internal-danmu \u4E0E\u81EA\u52A8\u5F39\u5E55\u589E\u5F3A\u5668\u7684\u6700\u5C0F\u8BCA\u65AD\u6458\u8981\u3002</p>" +',' "<div style=\\"display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px;\\">" +',' "<button class=\\"btn btn-primary\\" id=\\"refresh-diagnostics-btn\\">\u{1F504} \u5237\u65B0\u8BCA\u65AD</button>" +',' "<span id=\\"diagnostics-status\\" style=\\"color:#666;align-self:center;\\">\u7B49\u5F85\u52A0\u8F7D...</span>" +',' "</div>" +',' "<div id=\\"diagnostics-summary\\" style=\\"display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:15px;\\"></div>" +',' "<div id=\\"diagnostics-health\\" style=\\"margin-bottom:15px;\\"></div>" +',' "<div id=\\"diagnostics-reasons\\" style=\\"margin-bottom:15px;\\"></div>" +',' "<div id=\\"diagnostics-config\\" style=\\"margin-bottom:15px;\\"></div>" +',' "<div id=\\"diagnostics-counters\\" style=\\"margin-bottom:15px;\\"></div>" +',' "<div><h3 style=\\"margin:0 0 10px;\\">\u6700\u8FD1\u4E8B\u4EF6</h3><div id=\\"diagnostics-events\\" class=\\"api-response\\" style=\\"max-height:360px;overflow:auto;\\"></div></div>";'," content.appendChild(wrap);"," }",' var refreshBtn = document.getElementById("refresh-diagnostics-btn");'," if (refreshBtn && !refreshBtn.__diagnosticsBound) {"," refreshBtn.__diagnosticsBound = true;"," refreshBtn.onclick = function() {",' if (typeof window.loadInternalDanmuDiagnostics === "function") window.loadInternalDanmuDiagnostics();'," };"," }"," }"," function __setHtml(id, html) {"," var el = document.getElementById(id);"," if (el) el.innerHTML = html;"," }"," function __renderDiagnostics(payload) {"," var data = payload && payload.data ? payload.data : {};"," var enhancer = data.enhancer || {};"," var cache = enhancer.cache || {};"," var counters = enhancer.counters || {};"," var summary = data.summary || {};"," var config = data.config || {};"," var health = data.health || {};"," var eventsMeta = summary.events || enhancer.events || {};"," var recentEvents = Array.isArray(enhancer.recentEvents) ? enhancer.recentEvents : [];",' var statusEl = document.getElementById("diagnostics-status");',' if (statusEl) statusEl.textContent = "version=" + (data.version || "n/a") + " \xB7 health=" + (health.status || "unknown") + " \xB7 recent=" + (eventsMeta.recentCount || recentEvents.length || 0);',' __setHtml("diagnostics-summary", [',' ["detailRequests", summary.requests && summary.requests.detail || counters.detailRequests || 0],',' ["playRequests", summary.requests && summary.requests.play || counters.playRequests || 0],',' ["injected", summary.injection && summary.injection.injected || counters.danmakuInjectedCount || 0],',' ["fallbackSuccess", summary.fallback && summary.fallback.success || counters.fallbackSuccessCount || 0],',' ["pendingTasks", cache.pendingAutoPushTaskCount || 0],',' ["recentEvents", eventsMeta.recentCount || recentEvents.length || 0]'," ].map(function(item){",' return "<div style=\\"background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;\\"><div style=\\"color:#666;font-size:12px;\\">" + __escapeHtml(item[0]) + "</div><div style=\\"font-size:20px;font-weight:700;margin-top:4px;\\">" + __escapeHtml(item[1]) + "</div></div>";',' }).join(""));'," var warnings = Array.isArray(health.warnings) ? health.warnings : [];"," var findings = Array.isArray(health.findings) ? health.findings : [];",' __setHtml("diagnostics-health", "<h3 style=\\"margin:0 0 10px;\\">\u5065\u5EB7\u72B6\u6001</h3><div style=\\"padding:12px;border-radius:8px;border:1px solid " + (health.status === "ok" ? "#b7eb8f" : "#ffe58f") + ";background:" + (health.status === "ok" ? "#f6ffed" : "#fffbe6") + ";\\"><div style=\\"font-weight:600;margin-bottom:6px;\\">" + __escapeHtml(health.status || "unknown") + "</div><div style=\\"color:#666;word-break:break-word;\\">" + __escapeHtml(warnings.length ? warnings.join("\uFF0C") : "\u6682\u65E0\u544A\u8B66") + "</div>" + (findings.length ? "<ul style=\\"margin:10px 0 0 18px;padding:0;color:#666;\\">" + findings.map(function(item){ return "<li><code>" + __escapeHtml(item.code || "") + "</code> = " + __escapeHtml(item.value) + "</li>"; }).join("") + "</ul>" : "") + "</div>");'," var topReasons = Array.isArray(eventsMeta.topReasons) ? eventsMeta.topReasons : [];",' __setHtml("diagnostics-reasons", "<h3 style=\\"margin:0 0 10px;\\">\u9AD8\u9891\u539F\u56E0</h3>" + (topReasons.length ? "<div style=\\"display:grid;gap:8px;\\">" + topReasons.map(function(item){ return "<div style=\\"background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;display:flex;justify-content:space-between;gap:12px;\\"><code style=\\"word-break:break-word;\\">" + __escapeHtml(item.reason || "unknown") + "</code><strong>" + __escapeHtml(item.count) + "</strong></div>"; }).join("") + "</div>" : "<div style=\\"color:#666;\\">\u6682\u65E0\u9AD8\u9891\u539F\u56E0</div>"));',' __setHtml("diagnostics-config", "<h3 style=\\"margin:0 0 10px;\\">\u914D\u7F6E\u6458\u8981</h3><pre style=\\"margin:0;white-space:pre-wrap;word-break:break-word;\\">" + __escapeHtml(JSON.stringify(config, null, 2)) + "</pre>");',' __setHtml("diagnostics-counters", "<h3 style=\\"margin:0 0 10px;\\">\u8BA1\u6570\u5668</h3><pre style=\\"margin:0;white-space:pre-wrap;word-break:break-word;\\">" + __escapeHtml(JSON.stringify(counters, null, 2)) + "</pre>");',' __setHtml("diagnostics-events", recentEvents.length ? "<pre style=\\"margin:0;white-space:pre-wrap;word-break:break-word;\\">" + __escapeHtml(JSON.stringify(recentEvents, null, 2)) + "</pre>" : "<div style=\\"color:#666;\\">\u6682\u65E0\u4E8B\u4EF6</div>");'," }"," window.loadInternalDanmuDiagnostics = async function() {"," __ensureDiagnosticsUi();",' var statusEl = document.getElementById("diagnostics-status");',' if (statusEl) statusEl.textContent = "\u52A0\u8F7D\u4E2D...";'," try {",' var resp = await fetch(__internalBase + "/api/diagnostics", { cache: "no-store" });'," var data = await resp.json();"," __renderDiagnostics(data);"," } catch (e) {",' if (statusEl) statusEl.textContent = "\u52A0\u8F7D\u5931\u8D25";',' __setHtml("diagnostics-events", "<div style=\\"color:#cf1322;\\">" + __escapeHtml(e && e.message ? e.message : e) + "</div>");'," }"," };"," if (__origFetch) {"," window.fetch = function(input, init) {",' var url = typeof input === "string" ? input : ((input && input.url) || "");'," var rewritten = __rewriteUrl(url);",' if (typeof input === "string") input = rewritten;',' else if (typeof Request !== "undefined" && input instanceof Request && rewritten !== url) input = new Request(rewritten, input);'," return __origFetch(input, init);"," };"," }"," var __origSwitchSection = null;",' document.addEventListener("DOMContentLoaded", function() {'," try {"," __ensureDiagnosticsUi();"," __origSwitchSection = window.switchSection;",' if (typeof __origSwitchSection === "function" && !window.__internalDanmuSwitchPatched) {'," window.__internalDanmuSwitchPatched = true;"," window.switchSection = function(section, ev) {",' if (["logs","api","env","push","request-records","diagnostics","preview"].indexOf(section) >= 0) {',' var navs = document.querySelectorAll(".nav-btn");',' navs.forEach(function(nav){ nav.classList.remove("active"); });',' if (ev && ev.currentTarget) ev.currentTarget.classList.add("active");',' var sections = document.querySelectorAll(".section");',' sections.forEach(function(sec){ sec.classList.remove("active"); });',' var target = document.getElementById(section + "-section");',' if (target) target.classList.add("active");',' if (section === "diagnostics") window.loadInternalDanmuDiagnostics();'," return;"," }"," return __origSwitchSection.apply(this, arguments);"," };"," }"," } catch (e) {",' console.warn("[internal-danmu shim] switchSection patch failed", e);'," }"," });"," } catch (e) {",' console.warn("[internal-danmu shim] init failed", e);'," }","})();",""].join(` -`)}function r5t(e=""){return{script:`${_Sn()}${e||""}`,degraded:!1}}function ASn(e,t){if(typeof e!="string"||!t)return e;let r='<div class="content">';return e.includes(r)?e.replace(r,`${r} -${t}`):`${t} -${e}`}function vSn(e){return e?`<div style="margin:16px 20px 0;padding:12px 14px;border:1px solid #ffe58f;border-radius:8px;background:#fffbe6;color:#8c6d1f;font-size:13px;line-height:1.6;">\u26A0\uFE0F ${e}</div>`:""}function bSn(){let e=zC.default.dirname(resolveInternalDanmuOverridesPath());return Fo.default.existsSync(e)||Fo.default.mkdirSync(e,{recursive:!0}),e}async function XL(){let e=globalThis.__internalDanmuOverrideDb;if(e&&typeof e.getObjectDefault=="function")try{let r=await e.getObjectDefault("/internalDanmu/overrides",{});return r&&typeof r=="object"?r:{}}catch{return{}}let t=resolveInternalDanmuOverridesPath();if(!Fo.default.existsSync(t))return{};try{let r=Fo.default.readFileSync(t,"utf8");return r.trim()?JSON.parse(r):{}}catch{return{}}}async function c5t(e){let t=globalThis.__internalDanmuOverrideDb;if(t&&typeof t.push=="function")return await t.push("/internalDanmu/overrides",e,!0),"db:/internalDanmu/overrides";bSn();let r=resolveInternalDanmuOverridesPath();return Fo.default.writeFileSync(r,JSON.stringify(e,null,2),"utf8"),r}function ESn(e){if(typeof e!="string")return e;let t=e.trim();if(!t)return e;if(t.startsWith("[")&&t.endsWith("]")||t.startsWith("{")&&t.endsWith("}"))try{return JSON.parse(t)}catch{return e}return t==="true"?!0:t==="false"?!1:/^-?\d+(\.\d+)?$/.test(t)?Number(t):e}function QTe(e){return e==null||e===""?"":Array.isArray(e)?e.join(","):typeof e=="object"?JSON.stringify(e):String(e)}function SSn(e){let t={};if(!e||!Fo.default.existsSync(e))return t;let r=Fo.default.readFileSync(e,"utf8");for(let n of r.split(/\r?\n/)){let i=n.trim();if(!i||i.startsWith("#"))continue;let s=i.indexOf("=");s!==-1&&(t[i.slice(0,s).trim()]=i.slice(s+1))}return t}function l5t(e,t,r){if(!e||!t)return!1;let n=zC.default.dirname(e);Fo.default.existsSync(n)||Fo.default.mkdirSync(n,{recursive:!0}),Fo.default.existsSync(e)||Fo.default.writeFileSync(e,"","utf8");let s=Fo.default.readFileSync(e,"utf8").split(/\r?\n/),a=r==null||r==="",o=QTe(r),u=!1,c=[];for(let l of s){let d=l.trim();if(!d||d.startsWith("#")){c.push(l);continue}let f=d.match(/^([^=]+)=/);if(f&&f[1].trim()===t){u=!0,a||c.push(`${t}=${o}`);continue}c.push(l)}return!a&&!u&&(c.length&&c[c.length-1]!==""&&c.push(""),c.push(`${t}=${o}`)),Fo.default.writeFileSync(e,c.join(` -`),"utf8"),!0}function wSn(){try{if(!Fo.default.existsSync(e5t))return null;let e=Fo.default.readFileSync(e5t,"utf8"),t=e.trim()?JSON.parse(e):null;return t&&typeof t=="object"?t:null}catch{return null}}function GTe(){let e=zC.default.resolve(process.cwd(),"runtime","danmu_api","config",".env"),t=wSn(),r=typeof t?.envPath=="string"?t.envPath.trim():"";return r&&zC.default.resolve(r)===e?r:e}async function ISn(e){try{let t=GTe(),r=SSn(t),n=new Set([...Object.keys(r||{}),...Object.keys(e||{})]);for(let i of n)Object.prototype.hasOwnProperty.call(e||{},i)&&l5t(t,i,e[i]);return globalThis.__internalDanmuRuntimeEnvPath=t,t}catch{return null}}async function xSn(e,t,r,n="set"){if(!e||!t)return{ok:!1,skipped:!0,reason:"missing_server_or_key"};let i=n==="del"?"/api/env/del":n==="add"?"/api/env/add":"/api/env/set",s=n==="del"?{key:t}:{key:t,value:QTe(r)};try{let a=await Ee({url:u5t(e,i),method:"POST",data:s,responseType:"json",validateStatus:()=>!0,headers:{"content-type":"application/json"},timeout:8e3});return{ok:a.status>=200&&a.status<300&&a.data?.success!==!1,status:a.status,data:a.data}}catch(a){return{ok:!1,error:a}}}async function CSn(e){if(!e)return{ok:!1,skipped:!0,reason:"missing_server"};try{let t=await Ee({url:u5t(e,"/api/cache/clear"),method:"POST",data:{},responseType:"json",validateStatus:()=>!0,headers:{"content-type":"application/json"},timeout:8e3});return{ok:t.status>=200&&t.status<300&&t.data?.success!==!1,status:t.status,data:t.data}}catch(t){return{ok:!1,error:t}}}async function rQ(){let e=await XL(),t={...li.env||{}};for(let[r,n]of Object.entries(e))if(!YTe(r)){if(n==null||n===""){delete t[r];continue}t[r]=QTe(n)}return li.env=t,globalThis.__internalDanmuOverrides=e,await ISn(e),li.reInit()}async function TSn(e){let t=await XL();if(!e||typeof e!="object"||!Object.keys(t).length)return e;let r={...e};r.envs={...e.envs||{}},r.originalEnvVars={...e.originalEnvVars||{}},r.categorizedEnvVars={...e.categorizedEnvVars||{}};for(let[n,i]of Object.entries(t))if(!YTe(n)){r.envs[n]=i,r.originalEnvVars[n]=i;for(let s of Object.keys(r.categorizedEnvVars)){let a=Array.isArray(r.categorizedEnvVars[s])?r.categorizedEnvVars[s]:[];r.categorizedEnvVars[s]=a.map(o=>o&&o.key===n?{...o,value:i}:o)}}return r}function NSn(){let e=globalThis.__internalDanmuOverrideDb;return e&&typeof e.getObjectDefault=="function"?"db:/internalDanmu/overrides":resolveInternalDanmuOverridesPath()}function RSn(){return globalThis.__internalDanmuRuntimeEnvPath||GTe()}var DSn=new Set(["DANMU_OUTPUT_FORMAT","CONVERT_COLOR","COLOR_POOL","CONVERT_TOP_BOTTOM_TO_SCROLL","DANMU_SIMPLIFIED_TRADITIONAL","DANMU_LIMIT","GROUP_MINUTE","DANMU_OFFSET","LIKE_SWITCH","COMMENT_CACHE_MINUTES","SEARCH_CACHE_MINUTES"]);function kSn(e=""){let t=[];return li.searchCache instanceof Map&&(li.searchCache=new Map,t.push("searchCache")),li.commentCache instanceof Map&&(li.commentCache=new Map,t.push("commentCache")),li.lastSelectMap instanceof Map&&(li.lastSelectMap=new Map,t.push("lastSelectMap")),li.requestHistory instanceof Map&&(li.requestHistory=new Map,t.push("requestHistory")),t.length&&console.log("[InternalDanmuRoute] cleared runtime caches after env change",{reasonKey:e,cleared:t}),t}function OSn(e){let t=String(e||"").trim().toUpperCase();return!t||!DSn.has(t)?[]:kSn(t)}async function PSn(e){let t=WFt(),r=await XL(),n=await $g(e).catch(()=>null),i={autoPushEnabled:!!(n&&n.autoPush),autoPushBlacklistSize:Array.isArray(n?.autoPushBlacklist)?n.autoPushBlacklist.length:0,internalDanmuHost:hSn(e),internalDanmuPort:mSn(e),internalDanmuOverrideCount:Object.keys(r||{}).length,internalDanmuOverridesStore:NSn(),internalDanmuRuntimeEnvStore:RSn()},s=t?.counters||{},a=t?.cache||{},o=t?.events||{},u=[],c=[];return(s.fallbackFailedCount||0)>0&&(u.push("fallback_failed_detected"),c.push({code:"fallback_failed_detected",severity:"warn",value:s.fallbackFailedCount||0})),(s.jsonParseErrorCount||0)>0&&(u.push("json_parse_errors_detected"),c.push({code:"json_parse_errors_detected",severity:"warn",value:s.jsonParseErrorCount||0})),(s.videoCacheMissCount||0)>(s.videoCacheHitCount||0)&&(s.videoCacheMissCount||0)>3&&(u.push("video_cache_miss_high"),c.push({code:"video_cache_miss_high",severity:"warn",value:s.videoCacheMissCount||0})),(s.episodeIndexMissCount||0)>(s.episodeIndexHitCount||0)&&(s.episodeIndexMissCount||0)>3&&(u.push("episode_index_miss_high"),c.push({code:"episode_index_miss_high",severity:"warn",value:s.episodeIndexMissCount||0})),i.internalDanmuOverrideCount>20&&(u.push("override_count_high"),c.push({code:"override_count_high",severity:"warn",value:i.internalDanmuOverrideCount})),(a.pendingAutoPushTaskCount||0)>5&&(u.push("pending_autopush_tasks_high"),c.push({code:"pending_autopush_tasks_high",severity:"warn",value:a.pendingAutoPushTaskCount||0})),(s.invalidTitleSkipCount||0)>3&&c.push({code:"invalid_title_skip_present",severity:"info",value:s.invalidTitleSkipCount||0}),(s.blacklistSkipCount||0)>0&&c.push({code:"blacklist_skip_present",severity:"info",value:s.blacklistSkipCount||0}),(o.recentCount||0)===0&&c.push({code:"no_recent_events",severity:"info",value:0}),{version:2,enhancer:t,config:i,summary:{requests:{detail:s.detailRequests||0,play:s.playRequests||0},injection:{injected:s.danmakuInjectedCount||0,overwritten:s.danmakuOverwriteCount||0,invalidTitleSkipped:s.invalidTitleSkipCount||0},fallback:{used:s.fallbackUsedCount||0,success:s.fallbackSuccessCount||0,failed:s.fallbackFailedCount||0},cache:a,events:o},health:{status:u.length?"warn":"ok",warnings:u,findings:c}}}async function MSn(e,t){let r=await XL();r[e]=ESn(t);let n=await c5t(r);return await rQ(),n}async function LSn(e){let t=await XL();delete t[e];let r=await c5t(t);try{let n=GTe();l5t(n,e,""),globalThis.__internalDanmuRuntimeEnvPath=n}catch{}return li.env&&typeof li.env=="object"&&delete li.env[e],await rQ(),r}async function VTe(e,t,r){try{let n=e.body||{},i=n.key,s=n.value;if(!i)return t.code(400).send({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"});if(r!=="del"&&YTe(i))return t.code(400).send({success:!1,readonly:!0,message:FSn(i),key:i});let a=r==="del"?await LSn(i):await MSn(i,s),o=OSn(i),u=await xSn(e.server,i,s,r),c=null;o.length&&(c=await CSn(e.server));let l;if(r==="del")try{l={ok:!0,currentValue:(await d5t(e.server))?.envs?.[i]}}catch(d){l={ok:!1,currentValue:void 0,error:d}}else l=await qSn(e.server,i,s);if(!l.ok){let d=l.reason==="derived_runtime_state"?"\uFF08\u8BE5\u5B57\u6BB5\u5C5E\u4E8E\u8FD0\u884C\u6001\u6D3E\u751F\u72B6\u6001\uFF0Craw config \u4E0D\u4FDD\u8BC1\u76F4\u63A5\u7B49\u4E8E\u8F93\u5165\u503C\uFF09":"";return t.code(202).send({success:!1,pending:!0,message:`\u73AF\u5883\u53D8\u91CF ${i} \u5DF2\u5199\u5165 overrides\uFF0C\u4F46 danmu_api \u8FD0\u884C\u65F6\u5C1A\u672A\u5B8C\u6210\u5237\u65B0${d}`,filePath:a,expectedValue:r==="del"?"":s,currentLiveValue:l.currentValue,liveCheckError:l.error?.message||"",clearedCaches:o,livePush:u,liveCacheClear:c,liveCheckReason:l.reason||""})}return t.send({success:!0,message:r==="del"?`\u73AF\u5883\u53D8\u91CF ${i} \u5220\u9664\u6210\u529F\u5E76\u5DF2\u5B9E\u65F6\u751F\u6548`:`\u73AF\u5883\u53D8\u91CF ${i} ${r==="add"?"\u6DFB\u52A0":"\u8BBE\u7F6E"}\u6210\u529F\u5E76\u5DF2\u5B9E\u65F6\u751F\u6548`,filePath:a,currentLiveValue:l.currentValue,clearedCaches:o,livePush:u,liveCacheClear:c,liveCheckReason:l.reason||""})}catch(n){return t.code(500).send({success:!1,message:`\u73AF\u5883\u53D8\u91CF${r==="del"?"\u5220\u9664":r==="add"?"\u6DFB\u52A0":"\u8BBE\u7F6E"}\u5931\u8D25: ${n.message}`})}}async function zTe(e,t){let r=tQ(e.server),n=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"",i=`${r}${t}${n}`,s=e.method||"GET";return await Ee({url:i,method:s,data:["GET","HEAD"].includes(s.toUpperCase())?void 0:e.body,responseType:"text",transformResponse:[o=>o],validateStatus:()=>!0,headers:{...e.headers,host:void 0,connection:void 0,"content-length":void 0},timeout:3e4})}async function d5t(e){let t=tQ(e),r=qE(e),n=await Ee({url:`${t}/${r}/api/config`,method:"GET",responseType:"json",validateStatus:()=>!0,timeout:5e3});if(n.status!==200||!n.data||typeof n.data!="object")throw new Error(`\u8BFB\u53D6 danmu live config \u5931\u8D25: HTTP ${n.status}`);return n.data}function JL(e){return String(e||"").trim().toUpperCase()}function BSn(e){return typeof e=="string"&&e.length>0&&/^\*+$/.test(e)}function $Sn(e){return pSn.has(JL(e))}function f5t(e){return a5t.has(JL(e))}function p5t(e){return o5t.has(JL(e))}function YTe(e){return dSn.has(JL(e))}function FSn(e){return fSn[JL(e)]||"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\u3002"}function USn(e,t,r){return t==null||t===""?r==null||r==="":$Sn(e)&&BSn(r)?!0:f5t(e)||p5t(e)?!1:String(r)===String(t)}async function qSn(e,t,r,{timeoutMs:n=4e3,intervalMs:i=150}={}){let s=Date.now()+n,a,o=null;for(;Date.now()<s;){try{let c=(await d5t(e))?.envs?.[t];if(a=c,USn(t,r,c))return{ok:!0,currentValue:c,reason:"matched"};if((f5t(t)||p5t(t))&&c!==void 0)return{ok:!1,currentValue:c,reason:"derived_runtime_state"}}catch(u){o=u}await new Promise(u=>setTimeout(u,i))}return{ok:!1,currentValue:a,error:o}}async function n5t(e,t,r){try{let n=tQ(e.server),i=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"",s=`${n}${r}${i}`,a=e.method||"GET",o=await Ee({url:s,method:a,data:["GET","HEAD"].includes(a.toUpperCase())?void 0:e.body,responseType:"arraybuffer",validateStatus:()=>!0,headers:{...e.headers,host:void 0,connection:void 0,"content-length":void 0,"accept-encoding":void 0},timeout:3e4});return t.code(o.status),Object.entries(o.headers||{}).forEach(([u,c])=>{if(c===void 0)return;let l=String(u).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(l)||t.header(u,c)}),t.header("Cache-Control","no-store"),t.send(Buffer.from(o.data))}catch(n){return t.code(502).send({code:1,message:`internal danmu proxy failed: ${n.message}`})}}async function WTe(e){e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/ui-inline.js",handler:async(t,r)=>{let n=qE(t.server),i=await zTe(t,`/${n}`),s=t5t(i.data||""),a=r5t(s);return r.code(i.status||200),r.header("Content-Type","application/javascript; charset=utf-8"),r.header("Cache-Control","no-store"),a.degraded&&r.header("X-Internal-Danmu-Shim","degraded"),r.send(a.script)}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/ui",handler:async(t,r)=>{let n=qE(t.server);console.log("[InternalDanmuRoute] hit /internal-danmu/ui",{query:t.query||{},token:n});let i=await zTe(t,`/${n}`),s=t5t(i.data||""),a=r5t(s),o=gSn(t),u=ySn(i.data||"",o);return a.degraded&&(u=ASn(u,vSn("diagnostics \u6269\u5C55\u811A\u672C\u5DF2\u81EA\u52A8\u964D\u7EA7\u5230\u539F\u59CB UI \u811A\u672C\uFF0C\u9875\u9762\u529F\u80FD\u53EF\u6B63\u5E38\u4F7F\u7528\uFF0C\u4F46\u672C\u6B21\u589E\u5F3A\u9762\u677F\u672A\u6CE8\u5165\u3002"))),r.code(i.status||200),Object.entries(i.headers||{}).forEach(([c,l])=>{if(l===void 0)return;let d=String(c).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(d)||r.header(c,l)}),r.header("Content-Type","text/html; charset=utf-8"),a.degraded&&r.header("X-Internal-Danmu-Shim","degraded"),r.send(u)}}),e.route({method:["POST"],url:"/internal-danmu/api/env/set",handler:async(t,r)=>VTe(t,r,"set")}),e.route({method:["POST"],url:"/internal-danmu/api/env/add",handler:async(t,r)=>VTe(t,r,"add")}),e.route({method:["POST"],url:"/internal-danmu/api/env/del",handler:async(t,r)=>VTe(t,r,"del")}),e.route({method:["GET"],url:"/internal-danmu/api/diagnostics",handler:async(t,r)=>r.send({success:!0,data:await PSn(t.server)})}),e.route({method:["GET"],url:"/internal-danmu/api/config",handler:async(t,r)=>{let n=qE(t.server),i=await zTe(t,`/${n}/api/config`),s=i.data;try{s=JSON.stringify(await TSn(JSON.parse(i.data||"{}")))}catch{}return r.code(i.status||200),Object.entries(i.headers||{}).forEach(([a,o])=>{if(o===void 0)return;let u=String(a).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(u)||r.header(a,o)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s)}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/api",handler:async(t,r)=>{let n=qE(t.server);return console.log("[InternalDanmuRoute] hit /internal-danmu/api",{method:t.method,token:n}),n5t(t,r,`/${n}/api`)}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/api/*",handler:async(t,r)=>{let n=qE(t.server),i=t.params["*"]?`/${n}/api/${t.params["*"]}`:`/${n}/api`;return console.log("[InternalDanmuRoute] hit /internal-danmu/api/*",{suffix:i,method:t.method,token:n}),n5t(t,r,i)}})}var jSn="/spider";async function nQ(e,{db:t,config:r}){globalThis.__internalDanmuOverrideDb=t,await rQ(),(await Wz({db:t,config:r})).forEach(i=>{let s=jSn+"/"+i.meta.key+"/"+i.meta.type;e.register(i.api,{prefix:s}),i.check?.(e)}),e.register(LTe),await BTe(e),await WTe(e),e.get("/danmu-proxy",BAt),KTe(e)}var fQ=Se(R5t(),1);Yr();Yr();var k5t=Se(kb(),1),V0=Se(di(),1);var h2e="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",D5t=[],m2e=null,iwn=async e=>{let t=String(e.config?.quark?.cookie||""),r=V0.default.enc.Hex.stringify(V0.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/quark",{});return n[r]?n[r]:t?(await e.db.push(`/quark/${r}`,t),t):""},swn=async(e,t)=>{let r=V0.default.enc.Hex.stringify(V0.default.MD5(e.config.quark.cookie)).toString();await e.db.push(`/quark/${r}`,t)};async function g2e(e){e.get("/qrcode",async(t,r)=>{let n=await Ee.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":h2e}});D5t=Mp(n.headers["set-cookie"]),m2e=n.data.data.members.token;let i="https://su.quark.cn/4_eMHBJ?token="+m2e+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",s=await k5t.default.toBuffer(i,{width:300,height:300});r.send(s)}),e.post("/cookie",(t,r)=>{Ee.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${m2e}`).then(n=>n.data.status===2e6?{data:n.data.data,cookies:D5t}:Promise.reject(new Error(`service_ticket\u83B7\u53D6\u5931\u8D25: ${n.data.message}`))).then(async({data:n,cookies:i})=>{let s=await Ee.get(`https://pan.quark.cn/account/info?st=${n.members.service_ticket}&fr=pc&platform=pc`,{headers:{"User-Agent":h2e,Cookie:i.join("")}});return s.headers["set-cookie"]?i.concat(Mp(s.headers["set-cookie"])):Promise.reject(new Error(`\u4E2A\u4EBAPus\u83B7\u53D6\u5931\u8D25\uFF1A${s.data.message}`))}).then(async n=>{let i=await Ee.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":h2e,Cookie:n.join("")}});if(i.headers["set-cookie"])r.send({code:0,data:n.concat(Mp(i.headers["set-cookie"])).join("")});else return Promise.reject(new Error(`\u4E2A\u4EBAPuus\u83B7\u53D6\u5931\u8D25\uFF1A${i.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await iwn(t.server)})}),e.put("/cookie",async(t,r)=>{await swn(t.server,t.body.cookie),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=V0.default.enc.Hex.stringify(V0.default.MD5(t.server.config.quark.cookie)).toString(),i=await t.server.db.getObjectDefault(`/quark/settings/${n}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1});r.send({code:0,data:i})}catch(n){console.error("\u83B7\u53D6\u5938\u514B\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let{chunkSize:n,poolSize:i,useMultithread:s,enableFast:a}=t.body;if(typeof n!="number"||typeof i!="number"||typeof s!="boolean"||typeof a!="boolean")return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let o=V0.default.enc.Hex.stringify(V0.default.MD5(t.server.config.quark.cookie)).toString();await t.server.db.push(`/quark/settings/${o}`,{chunkSize:n,poolSize:i,useMultithread:s,enableFast:a}),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u5938\u514B\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}Yr();var y2e=Se(di(),1);var O5t=null,awn=null,lQ="token",own=async e=>{let t=String(e.config?.uc?.token||""),r=y2e.default.enc.Hex.stringify(y2e.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[lQ]?n[lQ]:n[r]?n[r]:t?(await e.db.push(`/uc/${lQ}`,t),t):""},uwn=async(e,t)=>{await e.db.push(`/uc/${lQ}`,t)};async function _2e(e){e.get("/qrcode",async(t,r)=>{try{let n="/oauth/authorize",i=Math.floor(Date.now()/1e3).toString()+"000",s=Bc.DeviceID,a=wP(s,i),o=Sj("GET",n,i,us.signKey),u={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":i,"x-pan-token":o,"x-pan-client-id":us.clientID,...Bc.AccessToken?{Authorization:`Bearer ${Bc.AccessToken}`}:{}},c=await Ee.get(`${us.api}${n}`,{params:{req_id:a,access_token:Bc.AccessToken,app_ver:us.appVer,device_id:s,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:us.channel,auth_type:"code",client_id:us.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:u});if(!c.data)return console.error("[UC Token] No data in response"),r.status(500).send("No data received from API");if(!c.data.qr_data)return console.error("[UC Token] No qr_data in response:",JSON.stringify(c.data)),r.status(500).send("QR code data not available in response");O5t=c.data.query_token,awn=a,r.type("image/png").send(Buffer.from(c.data.qr_data,"base64"))}catch(n){console.error("[UC Token] Error generating QR code:",n.message),n.response&&(console.error("[UC Token] Error response status:",n.response.status),console.error("[UC Token] Error response data:",JSON.stringify(n.response.data))),r.status(500).send(`Failed to generate QR code: ${n.message}`)}}),e.post("/token",async(t,r)=>{let n="/oauth/code",i=Math.floor(Date.now()/1e3).toString()+"000",s=Bc.DeviceID,a=wP(s,i),o=Sj("GET",n,i,us.signKey),u={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":i,"x-pan-token":o,"x-pan-client-id":us.clientID,...Bc.AccessToken?{Authorization:`Bearer ${Bc.AccessToken}`}:{}},c=await Ee.get(`${us.api}${n}`,{params:{req_id:a,access_token:Bc.AccessToken,app_ver:us.appVer,device_id:s,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:us.channel,client_id:us.clientID,scope:"netdisk",query_token:O5t},headers:u});if(c.data.status===0){let l="/token",d=Math.floor(Date.now()/1e3).toString()+"000",f=wP(Bc.DeviceID,d),p=JSON.stringify({req_id:f,app_ver:us.appVer,device_id:Bc.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:us.channel,code:c.data.code}),m=(await Ee.post(`${us.codeApi}${l}`,p,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}})).data;m.code===200?r.send({code:0,data:m.data.access_token}):r.send({code:-1,message:m.message??"\u83B7\u53D6token\u5931\u8D25"})}else r.send({code:-1,message:c.data.message??"\u67E5\u8BE2\u626B\u7801\u72B6\u6001\u5931\u8D25"})}),e.get("/token",async(t,r)=>{r.send({code:0,data:await own(t.server)})}),e.put("/token",async(t,r)=>{await uwn(t.server,t.body.cookie),r.send({code:0})})}var P5t=async(e,t)=>{let n=(await e.db.getObjectDefault("/tyi",{}))?.[t]||"";return!n&&e.config.tianyi&&(t==="cloud_account"?n=e.config.tianyi.username||"":t==="cloud_password"&&(n=e.config.tianyi.password||""),n&&await e.db.push(`/tyi/${t}`,n)),n},A2e=async(e,t,r)=>{await e.db.push(`/tyi/${t}`,r)};async function v2e(e){e.get("/account",async(t,r)=>{let n=await P5t(t.server,"cloud_account"),i=await P5t(t.server,"cloud_password");r.send({code:0,data:{username:n,password:i}})}),e.put("/account",async(t,r)=>{await A2e(t.server,"cloud_account",t.body.username),await A2e(t.server,"cloud_password",t.body.password),await A2e(t.server,"cloud_cookie",""),r.send({code:0})})}var M5t=async(e,t)=>{let n=(await e.db.getObjectDefault("/pan123",{}))?.[t]||"";return!n&&e.config.pan123&&(t==="pan_passport"?n=e.config.pan123.username||"":t==="pan_password"&&(n=e.config.pan123.password||""),n&&await e.db.push(`/pan123/${t}`,n)),n},L5t=async(e,t,r)=>{await e.db.push(`/pan123/${t}`,r)};async function b2e(e){e.get("/account",async(t,r)=>{let n=await M5t(t.server,"pan_passport"),i=await M5t(t.server,"pan_password");r.send({code:0,data:{username:n,password:i}})}),e.put("/account",async(t,r)=>{await L5t(t.server,"pan_passport",t.body.username),await L5t(t.server,"pan_password",t.body.password),r.send({code:0})})}var E2e=async(e,t)=>{let n=(await e.db.getObjectDefault("/xunlei",{}))?.[t]||"";return!n&&e.config.xunlei&&(t==="username"?n=e.config.xunlei.username||"":t==="password"&&(n=e.config.xunlei.password||""),n&&await e.db.push(`/xunlei/${t}`,n)),n};var q5t=async e=>await e.db.getObjectDefault("/xunlei/verification",{}),cwn=async(e,t={})=>{await e.db.push("/xunlei/verification",t)},lwn=async e=>{await e.db.push("/xunlei/verification",{})},B5t=async e=>{await lwn(e),HE=null},HE=null,S2e=e=>{let t=String(e||"").trim();if(!t)return"";if(t.startsWith("+"))return t;let r=t.replace(/\D/g,"");return r?r.length===11&&!r.startsWith("86")?`+86 ${r}`:r.startsWith("86")?`+${r}`:`+${r}`:t},dwn=(e={})=>{let t=Date.now()+Number(e.expiresIn||300)*1e3;return{phone:e.phone,verificationId:e.verificationId,expiresAt:t,reviewState:e.reviewState||{}}},$5t=(e,t="")=>!e?.verificationId||Number(e?.expiresAt||0)<=Date.now()?!1:t?e.phone===S2e(t):!0,fwn=async(e,t="")=>{let r=S2e(t),n=await q5t(e),i=$5t(HE,r)?HE:null,s=$5t(n,r)?n:null;return i||s||null},pwn=(e,t={})=>{let r=Number(e?.expiresAt||0);return{status:"sent",phone:e?.phone||"",verificationId:e?.verificationId||"",expiresAt:r,expiresIn:Math.max(0,Math.ceil((r-Date.now())/1e3)),selectedChannel:"sms",remaining:null,reviewState:e?.reviewState||{},...t}};var F5t=e=>{let t=e?.data?.verifyUrl||e?.data?.captchaUrl||"";return t?{status:"verify_required",verifyUrl:t,message:e?.message||"\u9700\u8981\u5148\u5B8C\u6210\u5B89\u5168\u9A8C\u8BC1"}:null},U5t=async(e,t)=>{let r=await Wxt(e,t,{forceSend:!0});if(!r?.verificationId)throw new Error(r?.message||"\u5F53\u524D\u8D26\u53F7\u672A\u8FDB\u5165\u77ED\u4FE1\u9A8C\u8BC1\u7801\u6D41\u7A0B");let n=dwn(r);return await cwn(e.server,n),HE=n,{status:"sent",...r,expiresAt:n.expiresAt}};async function w2e(e){e.get("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/xunlei/settings",{chunkSize:524288,poolSize:4,useMultithread:!0});r.send({code:0,data:n})}catch(n){console.error("\u83B7\u53D6\u8FC5\u96F7\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let{chunkSize:n,poolSize:i,useMultithread:s}=t.body;if(typeof n!="number"||typeof i!="number"||typeof s!="boolean")return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});await t.server.db.push("/xunlei/settings",{chunkSize:n,poolSize:i,useMultithread:s}),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u8FC5\u96F7\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}}),e.get("/verify-callback",async(t,r)=>{r.type("text/html").send(` +`).replace(/^\s+/,""),t=t.replace(/\n/g," "),t}pdfa(t,r){if(!t||!r)return[];r=this.parseHikerToJq(r);let n;lj&&this.pdfa_html===t&&this.pdfa_doc?n=this.pdfa_doc:(n=Xt(t),lj&&(this.pdfa_html=t,this.pdfa_doc=n));let s=r.split(" "),i=null;for(let o of s)if(i=this.parseOneRule(n,o,i),!i)return[];return(i?.toArray()??[]).map(o=>{let c=`${n(o)}`;return c||""})}pdfl(t,r,n,s,i){if(!t||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=Xt(t),c=r.split(" "),u=null;for(let l of c)if(u=this.parseOneRule(o,l,u),!u)return[];return u.each((l,d)=>{a.push(`${o(d)}`)}),a}pdfh(t,r,n=""){if(!t||!r)return"";let s;if(lj&&this.pdfh_html===t&&this.pdfh_doc?s=this.pdfh_doc:(s=Xt(t),lj&&(this.pdfh_html=t,this.pdfh_doc=s)),r==="body&&Text"||r==="Text")return this.parseText(s.text());if(r==="body&&Html"||r==="Html")return s.html();let i;if(this.contains(r,"&&")){let c=r.split("&&");i=c.pop(),r=c.join("&&")}r=this.parseHikerToJq(r,!0);let a=r.split(" "),o=null;for(let c of a)if(o=this.parseOneRule(s,c,o),!o)return"";if(i)switch(i){case"Text":o=o?this.parseText(o.text()):"";break;case"Html":o=o?o.html():"";break;default:let c=o.clone(),u=i.split("||");for(let l of u){if(o=c?.attr(l)||"",this.contains(l.toLowerCase(),"style")&&this.contains(o,"url("))try{o=o.match(/url\((.*?)\)/)[1],o=o.replace(/^['"]|['"]$/g,"")}catch{}if(o&&n&&this.test(qin,l)&&!this.test(Hin,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):Q1e(n,o)),o)break}}else o=`${o}`;return o}pd(t,r,n=""){return n||(n=this.MY_URL),this.pdfh(t,r,n)}pq(t){return Xt(t)}pjfh(t,r,n=!1){if(!t||!r)return"";try{t=typeof t=="string"?JSON.parse(t):t}catch{return""}r.startsWith("$.")||(r="$."+r);let s="",i=r.split("||");for(let a of i){let o=W1e.query(t,a);if(s=Array.isArray(o)?o[0]||"":o||"",n&&s&&(s=Q1e(this.MY_URL,s)),s)break}return s}pj(t,r){return this.pjfh(t,r,!0)}pjfa(t,r){if(!t||!r)return[];try{t=typeof t=="string"?JSON.parse(t):t}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=W1e.query(t,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},J1e=X1e;Dn();fc();fa();Ds();Jxe();ia();var swe={crypto:{default:XG.default||XG,...XG},axios:{default:ye,...ye},cheerio:{default:CT,...CT},"crypto-js":{default:Zxe.default,...Zxe.default},"iconv-lite":{default:ewe.default,...ewe.default},http2:{default:twe.default,...twe.default},"jpeg-js":{default:rwe.default,...rwe.default},qs:{default:nwe.default,...nwe.default},"runtime-context":H1e,req:ZSe,htmlParser:Z1e,"home-cache":oTe,pan:jxe,"concurrency-limiter":Qxe,misc:rIe,"m3u8-ad-cleaner":Xxe,"lru-cache":{default:_t}};globalThis.__CAT_JS_UTIL=swe;var Dmn=`${Ql.default.sep}spider${Ql.default.sep}video${Ql.default.sep}`;function Pmn(e,t){return e&&typeof e=="object"?{...e}:{name:String(e||"").trim(),path:String(t||"").trim()}}function M8t(e){return String(e||"").trim().replace(/^nodejs_/,"").replace(/[^a-zA-Z0-9_\-]/g,"_").replace(/^_+|_+$/g,"")}function Lmn(e){let t=String(e||"").trim();if(!t)throw new Error("JS \u6587\u4EF6\u8DEF\u5F84\u4E0D\u80FD\u4E3A\u7A7A");if(/^file:\/\//i.test(t))return(0,ZG.fileURLToPath)(new URL(t));let r=t.startsWith("~")?Ql.default.join(process.env.HOME||"",t.slice(1)):t;return Ql.default.isAbsolute(r)?r:Ql.default.resolve(process.env.NODE_PATH||process.cwd(),r)}function Mmn(e,t){let r=`globalThis.__CAT_JS_UTIL[${JSON.stringify(t)}]`,n=String(e||"").trim(),s=n.match(/^\*\s+as\s+([A-Za-z_$][\w$]*)$/);if(s)return`const ${s[1]} = ${r};`;let i=[],a=null,o=null,c=n.indexOf("{");if(c===-1)n&&(a=n);else{let u=n.slice(0,c).replace(/,\s*$/,"").trim();u&&(a=u);let l=n.indexOf("}",c);o=n.slice(c+1,l)}if(a&&i.push(`const ${a} = ${r}.default;`),o!=null){let u=o.split(",").map(l=>l.trim()).filter(Boolean).map(l=>{let d=l.match(/^([A-Za-z_$][\w$]*)\s+as\s+([A-Za-z_$][\w$]*)$/);return d?`${d[1]}: ${d[2]}`:l});u.length&&i.push(`const { ${u.join(", ")} } = ${r};`)}return i.join(` +`)}function kmn(e){let t=String(e||"").match(/(?:^|\/)core\/([A-Za-z0-9_-]+)\.js$/);if(t)return{key:t[1],type:"core"};let r=String(e||"").match(/(?:^|\/)util\/([A-Za-z0-9_-]+)\.js$/);return r?{key:r[1],type:"util"}:Object.prototype.hasOwnProperty.call(swe,e)?{key:e,type:"package"}:null}function Bmn(e){let t=[],r=/import\s+(?:[^;]*?\s+from\s+)?(['"])([^'"]+)\1\s*;?/g,n=null;for(;(n=r.exec(e))!==null;)t.push(n[2]);return t}function Umn(e){return e.startsWith("./")||e.startsWith("../")}async function Fmn(e,t){let r=Ql.default.resolve(Ql.default.dirname(e),t),n=Ql.default.extname(r)?[r]:[r,`${r}.js`,Ql.default.join(r,"index.js")];for(let s of n)try{return await JG.default.access(s),!0}catch{}return!1}async function $mn(e,t){if(Ql.default.normalize(e).includes(Dmn))return!0;let r=Bmn(t);for(let n of r)if(Umn(n)&&await Fmn(e,n))return!0;return!1}async function qmn(e){let t=await JG.default.stat(e),r=(0,ZG.pathToFileURL)(e);return r.searchParams.set("mtime",String(Math.floor(t.mtimeMs))),await import(r.href)}function Hmn(e,t){let r=/import\s+([^;]*?)\s+from\s+(['"])([^'"]+)\2\s*;?/g,n=new Set,s=e.replace(r,(i,a,o,c)=>{let u=kmn(c);return u?Object.prototype.hasOwnProperty.call(swe,u.key)?Mmn(a,u.key):((u.type==="util"||u.type==="core")&&n.add(`${u.type}/${u.key}.js`),i):i});return n.size&&console.error(`[js] ${t}: \u4E0A\u4F20\u811A\u672C\u4F9D\u8D56\u672A\u5185\u7F6E\u7684\u6A21\u5757 ${[...n].join("\u3001")}\uFF1B\u8BBE\u5907 bundle \u65E0 src/ \u6E90\u7801\u6811\uFF0C\u9700\u5728 src/spider/video/js.js \u7684 JS_IMPORT_REGISTRY \u8865\u5145\u5BFC\u51FA\u540E\u91CD\u65B0\u6253\u5305\u3002`),s}async function Vmn(e,t){let r=e.path||e.file,n=Lmn(r),s=await JG.default.readFile(n,"utf8");if(await $mn(n,s)){let u=await qmn(n),l=u.default||u;if(!l)throw new Error("JS \u6A21\u5757\u6CA1\u6709\u53EF\u7528\u5BFC\u51FA");return l}let i=Hmn(s,t),o=await import("data:text/javascript;charset=utf-8,"+encodeURIComponent(i)),c=o.default||o;if(!c)throw new Error("JS \u6A21\u5757\u6CA1\u6709\u53EF\u7528\u5BFC\u51FA");return c}function jmn(e,t){if(!e||typeof e!="object")throw new Error("JS \u6A21\u5757\u5BFC\u51FA\u503C\u4E0D\u662F spider \u5BF9\u8C61");if(!e.meta||typeof e.meta!="object")throw new Error("JS \u6A21\u5757\u7F3A\u5C11 meta");if(typeof e.api!="function")throw new Error("JS \u6A21\u5757\u7F3A\u5C11 api(fastify)");let r={...e.meta},n=M8t(r.key||t.key||t.id||t.name),s=String(r.name||t.name||n||"local_js").trim();if(!n)throw new Error("JS spider key \u4E0D\u80FD\u4E3A\u7A7A");return{...e,meta:{...r,key:n,name:s,type:Number(r.type??t.type??3),js:!0}}}function iwe(e,t){let r=Pmn(e,t),n=M8t(r.key||r.id||r.name||Ql.default.basename(String(r.path||r.file||"local_js"),".js")),s=String(r.name||n||"\u672C\u5730JS").trim(),i=null;async function a(){return i||(i=(async()=>{let o=await Vmn(r,s),c=typeof o=="function"?await o(s,r):o;return jmn(c,{...r,key:n,name:s})})()),i}return{meta:{key:n,name:s,type:Number(r.type??3),js:!0},api:async o=>{try{return(await a()).api(o)}catch(c){console.error(`[js] \u52A0\u8F7D ${s} \u5931\u8D25:`,c);let u=async(l,d)=>d.code(500).send({code:-1,message:`JS spider \u52A0\u8F7D\u5931\u8D25: ${c?.message||c}`});o.post("/init",u),o.post("/home",u),o.post("/category",u),o.post("/detail",u),o.post("/play",u),o.post("/search",u)}},check:o=>{a().then(c=>c.check?.(o)).catch(c=>console.error(`[js] \u52A0\u8F7D ${s} \u5931\u8D25:`,c))}}}Cr();Dn();var ez=Ne(require("crypto"),1);fa();Ds();var owe=class{constructor(){this.cache={short:new Map,medium:new Map,long:new Map},this.accessOrder={short:new Map,medium:new Map,long:new Map},this.config={short:{max:1e3,ttl:30*1e3},medium:{max:500,ttl:5*60*1e3},long:{max:200,ttl:30*60*1e3}},this.cleanupTimer=null,this.startCleanupInterval()}get(t,r="medium"){let n=this.cache[r],s=this.accessOrder[r];if(!n)return null;let i=n.get(t);return i?Date.now()>i.expiry?(n.delete(t),s?.delete(t),null):(s?.set(t,Date.now()),i.lastAccess=Date.now(),i.accessCount=(i.accessCount||0)+1,i.value):null}set(t,r,n="medium"){let s=this.cache[n],i=this.accessOrder[n];if(!s)return;let a=this.config[n];s.size>=a.max&&this.evictOldest(n),s.set(t,{value:r,expiry:Date.now()+a.ttl,type:n,setTime:Date.now(),accessCount:0,lastAccess:Date.now()}),i?.set(t,Date.now())}evictOldest(t){let r=this.cache[t],n=this.accessOrder[t],s=null,i=1/0;for(let[a]of r.entries()){let o=n?.get(a)||0;o<i&&(i=o,s=a)}s&&(r.delete(s),n?.delete(s))}generateKey(t,r={}){try{let s=Object.keys(r).sort().map(a=>`${a}=${r[a]}`),i=s.length?`${t}?${s.join("&")}`:t;return i.length>256?ez.default.createHash("md5").update(i).digest("hex"):i}catch{return t}}clear(t=null){t?(this.cache[t]?.clear(),this.accessOrder[t]?.clear()):(Object.values(this.cache).forEach(r=>r.clear()),Object.values(this.accessOrder).forEach(r=>r.clear()))}startCleanupInterval(){this.cleanupTimer=setInterval(()=>this.cleanupExpired(),5*60*1e3),typeof this.cleanupTimer.unref=="function"&&this.cleanupTimer.unref()}cleanupExpired(){let t=Date.now();Object.entries(this.cache).forEach(([r,n])=>{let s=this.accessOrder[r];for(let[i,a]of n.entries())t>a.expiry&&(n.delete(i),s?.delete(i))})}};function Kmn(e,t={}){return JSON.stringify({id:String(e||"").trim(),meta:{...t}})}function Gmn(e){let t=String(e||"").trim();if(!t)return{id:"",meta:{}};try{let r=JSON.parse(t);return{id:String(r?.id||"").trim(),meta:r?.meta&&typeof r.meta=="object"?r.meta:{}}}catch{return{id:t,meta:{}}}}var cwe=class{constructor(t){this.config=t,this.cache=new owe,this.queue=[],this.activeCount=0,this.maxConcurrent=t.maxConcurrent||6,this.abortControllers=new Map}async schedule(t,r=null){return this.activeCount<this.maxConcurrent?(this.activeCount++,this.execute(t,r)):new Promise((n,s)=>{this.queue.push({fn:t,resolve:n,reject:s,requestId:r})})}async execute(t,r){try{return await t()}catch(n){throw n}finally{this.activeCount--,r&&this.abortControllers.delete(r),this.processNext()}}processNext(){if(this.queue.length>0&&this.activeCount<this.maxConcurrent){let{fn:t,resolve:r,reject:n,requestId:s}=this.queue.shift();this.activeCount++,this.execute(t,s).then(r).catch(n)}}async retryRequest(t,r=3,n=1e3){let s;for(let i=0;i<=r;i++)try{let a=`req_${ez.default.randomUUID()}`,o=new AbortController;return this.abortControllers.set(a,o),await this.schedule(async()=>{let c=this.config.timeout||1e4,u=null;try{return await Promise.race([t(o.signal),new Promise((l,d)=>{u=setTimeout(()=>{o.abort(),d(new Error(`\u8BF7\u6C42\u8D85\u65F6 (${c}ms)`))},c)})])}finally{u&&clearTimeout(u)}},a)}catch(a){if(s=a,i===r||!this.shouldRetry(a))break;await this.sleep(n*Math.pow(2,i))}throw s}shouldRetry(t){if(!t.response)return!0;let r=t.response.status;return[408,429,500,502,503,504].includes(r)}getCachedResponse(t,r="medium"){let s=[r,...["short","medium","long"].filter(i=>i!==r)];for(let i of s){let a=this.cache.get(t,i);if(a)return a}return null}async cachedGet(t,r={},n="medium"){let s=this.cache.generateKey(t,r.params),i=this.getCachedResponse(s,n);if(i)return i;let a=`${n}:${s}`;return sw(`emby:${this.config.id}:${a}`,async()=>{try{let o=await this.retryRequest(c=>Xe.get(t,{...r,signal:c}),this.config.retryCount||2);if(o.data){let u=JSON.stringify(o.data).length>1024*100?"long":n;this.cache.set(s,o,u),u!==n&&this.cache.set(s,o,n)}return o}catch(o){let c=this.getCachedResponse(s,n);if(c&&!o.response)return c;throw o}},(this.config.timeout||1e4)*((this.config.retryCount||2)+1)+2e3)}async post(t,r,n={}){return this.retryRequest(s=>Xe.post(t,r,{...n,signal:s}),this.config.retryCount||1)}abortRequest(t){let r=this.abortControllers.get(t);r&&(r.abort(),this.abortControllers.delete(t))}sleep(t){return Yt(t)}},uwe=class{constructor(t,r,n,s){this.config=t,this.requestManager=r,this.getHeaderProvider=n,this.urlBuilder=s,this.enablePlaybackReport=t.enablePlaybackReport!==!1,this.playSessions=new Map,this.heartbeatTimer=null,this.maxSessionDuration=7200*1e3,this.maxConcurrentReports=5,this.reportQueue=[]}startHeartbeat(){this.heartbeatTimer||!this.enablePlaybackReport||(this.heartbeatTimer=setInterval(()=>this.tick(),1e4))}stopHeartbeat(){this.heartbeatTimer&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null)}async tick(){if(!this.enablePlaybackReport||this.playSessions.size===0){this.playSessions.size===0&&this.stopHeartbeat();return}let t=Date.now(),r=[];for(let[n,s]of this.playSessions.entries()){if(t-s.startTime>this.maxSessionDuration){this.playSessions.delete(n);continue}if(!s.isPaused&&t-s.lastReportTime>=3e4){let i=t-s.startTime-s.totalPausedDuration,a=s.initialPositionTicks+Math.floor(i/1e3)*1e7;if(s.positionTicks=a,s.lastReportTime=t,r.push(this.recordPlaybackProgress(n,a,!1)),r.length>=this.maxConcurrentReports)break}}r.length>0&&await Promise.allSettled(r)}async recordPlaybackStart(t,r,n=0){if(!this.enablePlaybackReport)return null;try{let s=await this.getHeaderProvider(),i=`js_${Date.now()}_${Math.floor(Math.random()*1e4)}`,a=n;if(!a)try{let u=this.urlBuilder(`/Users/${this.config.userId}/Items/${t}`),l=await this.requestManager.cachedGet(u,{headers:s,params:{Fields:"UserData"}},"short");l.data?.UserData&&(a=l.data.UserData.PlaybackPositionTicks||0)}catch(u){console.debug("\u83B7\u53D6\u7528\u6237\u6570\u636E\u5931\u8D25:",u.message)}let o={ItemId:t,MediaSourceId:r.Id||r.mediaSourceId,CanSeek:!0,IsPaused:!1,IsMuted:!1,PositionTicks:a,PlayMethod:"DirectStream",PlaySessionId:i,LiveStreamId:null,AudioStreamIndex:1,SubtitleStreamIndex:-1,VolumeLevel:100,PlaybackStartTimeTicks:Math.floor(Date.now()*1e4)},c=await this.requestManager.post(this.urlBuilder("/Sessions/Playing"),o,{headers:s,timeout:5e3}).catch(()=>null);if(c&&(c.status===200||c.status===204))return this.playSessions.set(i,{itemId:t,mediaSource:r,startTime:Date.now(),lastReportTime:Date.now(),initialPositionTicks:a,positionTicks:a,totalPausedDuration:0,isPaused:!1,lastPauseTime:0}),this.startHeartbeat(),i}catch(s){console.debug("\u64AD\u653E\u5F00\u59CB\u8BB0\u5F55\u5931\u8D25:",s.message)}return null}async recordPlaybackProgress(t,r,n=!1){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let s=this.playSessions.get(t),i=await this.getHeaderProvider();s.isPaused!==n&&(s.isPaused=n,n?s.lastPauseTime=Date.now():s.lastPauseTime>0&&(s.totalPausedDuration+=Date.now()-s.lastPauseTime,s.lastPauseTime=0)),r!==void 0&&(s.positionTicks=r);let a={ItemId:s.itemId,MediaSourceId:s.mediaSource.Id||s.mediaSource.mediaSourceId,PositionTicks:s.positionTicks,IsPaused:n,PlaySessionId:t,EventName:n?"pause":"timeupdate"},o=await this.requestManager.post(this.urlBuilder("/Sessions/Playing/Progress"),a,{headers:i,timeout:5e3}).catch(()=>null);if(o&&(o.status===200||o.status===204))return s.lastReportTime=Date.now(),!0}catch(s){console.debug("\u64AD\u653E\u8FDB\u5EA6\u8BB0\u5F55\u5931\u8D25:",s.message)}return!1}async recordPlaybackStop(t,r=null){if(!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t),s=await this.getHeaderProvider(),i;if(r!==null)i=r;else if(n.positionTicks!==void 0)i=n.positionTicks;else{let c=Date.now(),u=c-n.startTime;n.isPaused&&n.lastPauseTime>0&&(n.totalPausedDuration+=c-n.lastPauseTime),u-=n.totalPausedDuration;let l=Math.floor(u/1e3);i=n.initialPositionTicks+l*1e7}let a={ItemId:n.itemId,MediaSourceId:n.mediaSource.Id||n.mediaSource.mediaSourceId,PositionTicks:i,PlaySessionId:t},o=await this.requestManager.post(this.urlBuilder("/Sessions/Playing/Stopped"),a,{headers:s,timeout:5e3}).catch(()=>null);return this.playSessions.delete(t),this.playSessions.size===0&&this.stopHeartbeat(),o&&(o.status===200||o.status===204)}catch(n){this.playSessions.delete(t),this.playSessions.size===0&&this.stopHeartbeat(),console.debug("\u64AD\u653E\u505C\u6B62\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async recordPlaybackPause(t,r){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t);return n.isPaused=!0,n.lastPauseTime=Date.now(),r!==void 0&&(n.positionTicks=r),await this.recordPlaybackProgress(t,r,!0)}catch(n){console.debug("\u64AD\u653E\u6682\u505C\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async recordPlaybackUnpause(t,r){if(!this.enablePlaybackReport||!this.playSessions.has(t))return!1;try{let n=this.playSessions.get(t);return n.isPaused&&n.lastPauseTime>0&&(n.totalPausedDuration+=Date.now()-n.lastPauseTime),n.isPaused=!1,n.lastPauseTime=0,r!==void 0&&(n.positionTicks=r),await this.recordPlaybackProgress(t,r,!1)}catch(n){console.debug("\u64AD\u653E\u6062\u590D\u8BB0\u5F55\u5931\u8D25:",n.message)}return!1}async cleanupAllSessions(){let t=[];for(let r of this.playSessions.keys())t.push(this.recordPlaybackStop(r));return Promise.allSettled(t)}setEnablePlaybackReport(t){this.enablePlaybackReport=t,t||this.cleanupAllSessions()}getSession(t){return this.playSessions.get(t)}},awe=(e,t,r,n=null,s=null)=>{let i=new URLSearchParams({UserId:s||e.userId,StartTimeTicks:"0",IsPlayback:"true",AutoOpenLiveStream:"true",MaxStreamingBitrate:"7000000","X-Emby-Client":e.client,"X-Emby-Device-Name":e.deviceName,"X-Emby-Device-Id":e.deviceId,"X-Emby-Client-Version":e.clientVersion,"X-Emby-Token":e.token,reqformat:"json"});return n&&i.set("MediaSourceId",n),`${t(`/Items/${r}/PlaybackInfo`)}?${i.toString()}`},zmn=(e,t)=>t.DirectStreamUrl?t.DirectStreamUrl.startsWith("http")?t.DirectStreamUrl:e.server+t.DirectStreamUrl:t.Path&&t.Path.startsWith("http")?t.Path:e.isJellyfin?`${e.server}/Videos/${t.Id}/stream?static=true&api_key=${e.token}`:`${e.server}/emby/videos/${t.Id}/original?api_key=${e.token}&Static=true`;function k8t(e){let t={id:e.id,name:e.name||`Emby ${e.id.slice(0,8)}`,server:(e.server||"").replace(/\/$/,""),username:e.username||"",password:e.password||"",token:e.token||"",userId:e.userId||"",deviceId:e.deviceId||ez.default.randomUUID(),deviceName:e.deviceName||"iPhone",client:e.client||"SenPlayer",clientVersion:e.clientVersion||"5.6.3",enablePlaybackReport:e.enablePlaybackReport!==!1,enabled:e.enabled!==!1,timeout:e.timeout||1e4,retryCount:e.retryCount||2,cacheViews:e.cacheViews!==!1,maxConcurrent:e.maxConcurrent||6,isJellyfin:e.isJellyfin||!1,serverType:e.isJellyfin?"jellyfin":"emby"},r=`/config/embyInstances/${t.id}`;function n(te){let Q=t.isJellyfin?"":"/emby";return`${t.server}${Q}${te}`}let s={"User-Agent":`${t.client}/${t.clientVersion}`,"X-Emby-Client":t.client,"X-Emby-Device-Name":t.deviceName,"X-Emby-Client-Version":t.clientVersion,"X-Emby-Device-Id":t.deviceId,...t.isJellyfin?{"X-Jellyfin-Client":t.client,"X-Jellyfin-Client-Version":t.clientVersion,"X-Jellyfin-Device-Id":t.deviceId,"X-Jellyfin-Device-Name":t.deviceName}:{}};async function i(){let te={...s};if(t.token){let Q=`MediaBrowser Token="${t.token}", UserId="${t.userId}", Client="${t.client}", Device="${t.deviceName}", DeviceId="${t.deviceId}", Version="${t.clientVersion}"`;te["X-Emby-Authorization"]=Q,te["X-Emby-Token"]=t.token,t.isJellyfin&&(te["X-Jellyfin-Token"]=t.token,te["X-Jellyfin-Authorization"]=Q.replace("MediaBrowser","MediaBrowser"))}return te}let a=new cwe(t),o=new uwe(t,a,i,n),c=["\u64AD\u653E\u5217\u8868","\u76F8\u673A","Playlists","Collections","Trailers","\u76F4\u64AD"],u=90,l=400,d=30,f=50,h=200,p=3e3;function m(te){let Q=Number.parseInt(te?.IndexNumber,10);return Number.isNaN(Q)?Number.MAX_SAFE_INTEGER:Q}function g(te){if(!te?.IndexNumber)return"";let Q=te.Name||`\u7B2C${te.IndexNumber||0}\u96C6`,Z=te.MediaSources||[];if(Z.length>1){let B=Z.map((k,W)=>{let P=k.Name||`\u7248\u672C${W+1}`,H=`${te.Id}|${k.Id}`;return`${P}$${H}`});return B.length>0?`${Q}@@${B.join("#")}`:""}if(Z.length===1){let B=Z[0],k=B.Name||Q,W=`${te.Id}|${B.Id}`;return`${k}$${W}`}let de=awe(t,n,te.Id,null,t.userId);return`${Q}$${de}`}function _(te){if(!Array.isArray(te)||te.length===0)return"";let Q=[],Z=[...te].sort((de,B)=>m(de)-m(B));for(let de of Z){let B=g(de);B&&Q.push(B)}return Q.join("#")}function y(te){let Q=Number.parseInt(te,10);return Number.isNaN(Q)?Number.MAX_SAFE_INTEGER:Q}function A(te){let Q=y(te?.ParentIndexNumber),Z=te?.SeasonName||(Q!==Number.MAX_SAFE_INTEGER?`\u7B2C${Q}\u5B63`:"\u7279\u522B\u7BC7"),de=te?.SeasonId||"";return{groupKey:de||`idx_${Q}_${Z}`,seasonId:de,seasonIndex:Q,seasonName:Z}}async function E(te,Q,Z,de="medium"){let B=[],k=0,W=Number.MAX_SAFE_INTEGER;for(;k<W&&B.length<p;){let P=await a.cachedGet(te,{headers:Z,params:{...Q,Limit:h,StartIndex:k}},de),H=P.data?.Items||[],j=Number.parseInt(P.data?.TotalRecordCount,10);if(Number.isNaN(j)||(W=j),H.length===0||(B.push(...H),H.length<h))break;k+=H.length}return B.slice(0,p)}async function v(te,Q){let Z="Id,Name,IndexNumber,ParentIndexNumber,SeasonId,SeasonName,MediaSources",de=n(`/Shows/${te}/Episodes`);try{let k=await E(de,{UserId:t.userId,Fields:Z,SortBy:"ParentIndexNumber,IndexNumber",SortOrder:"Ascending"},Q,"medium");if(k.length>0)return k}catch(k){console.debug("\u6309\u5267\u96C6\u63A5\u53E3\u83B7\u53D6\u5931\u8D25\uFF0C\u5C1D\u8BD5\u7528\u6237\u63A5\u53E3:",k.message)}let B=n(`/Users/${t.userId}/Items`);return E(B,{ParentId:te,IncludeItemTypes:"Episode",Recursive:!0,Fields:Z,SortBy:"ParentIndexNumber,IndexNumber",SortOrder:"Ascending"},Q,"medium")}function b(){return!(!t.server||!t.token&&!t.username)}async function I(te){if(!t.username||!t.server)return{success:!1,reason:"\u7F3A\u5C11\u767B\u5F55\u51ED\u8BC1"};let Q=t.isJellyfin?"/Users/AuthenticateByName":"/emby/Users/AuthenticateByName",Z=`${t.server}${Q}`,de={Password:t.password||"",Pw:t.password||"",Username:t.username},B=`MediaBrowser Token="", UserId="", Client="${t.client}", Device="${t.deviceName}", DeviceId="${t.deviceId}", Version="${t.clientVersion}"`,k={Host:t.server.replace(/^https?:\/\//,"").replace(/\/$/,""),"Content-Type":"application/json","X-Emby-Authorization":B,Connection:"keep-alive",Accept:"*/*","User-Agent":`${t.client}/${t.clientVersion}`,"Accept-Language":"zh-CN,zh-Hans;q=0.9","Accept-Encoding":"gzip, deflate",...t.isJellyfin?{"X-Jellyfin-Authorization":B,"X-Jellyfin-Client":t.client,"X-Jellyfin-Device-Name":t.deviceName,"X-Jellyfin-Device-Id":t.deviceId,"X-Jellyfin-Client-Version":t.clientVersion}:{}};try{let W=await Xe.post(Z,de,{headers:k,timeout:5e3});if(W.data?.AccessToken)return t.token=W.data.AccessToken,t.userId=W.data.User.Id,te?.server?.db&&await te.server.db.push(r,{token:t.token,userId:t.userId,deviceId:t.deviceId,deviceName:t.deviceName,client:t.client,clientVersion:t.clientVersion}),{success:!0,token:t.token}}catch(W){console.debug("SenPlayer\u683C\u5F0F\u767B\u5F55\u5931\u8D25:",W.message);try{let H=`${t.server}/emby/Users/AuthenticateByName`,j={"Content-Type":"application/json","X-Emby-Client":t.client,"X-Emby-Device-Name":t.deviceName,"X-Emby-Device-Id":t.deviceId,"X-Emby-Client-Version":t.clientVersion,"User-Agent":"Mozilla/5.0"},q=await Xe.post(H,de,{headers:j,timeout:5e3});if(q.data?.AccessToken)return t.token=q.data.AccessToken,t.userId=q.data.User.Id,te?.server?.db&&await te.server.db.push(r,{token:t.token,userId:t.userId,deviceId:t.deviceId,deviceName:t.deviceName,client:t.client,clientVersion:t.clientVersion}),{success:!0,token:t.token}}catch(P){console.debug("Emby\u6807\u51C6\u683C\u5F0F\u767B\u5F55\u5931\u8D25:",P.message)}}return{success:!1,reason:"\u767B\u5F55\u5931\u8D25"}}async function T(te){if(t.token&&t.userId)try{let Q=await i(),Z=n(`/Users/${t.userId}`);return await a.cachedGet(Z,{headers:Q},"short"),!0}catch(Q){Q.response?.status}return(await I(te)).success}async function x(){try{let te=await i();return!!(await a.cachedGet(n("/System/Info"),{headers:te},"short")).data}catch{return!1}}function w(te,Q,Z={}){if(!Q)return"";let{maxWidth:de=l,quality:B=u,imageType:k="Primary"}=Z,W=`/Items/${te}/Images/${k}`,P=`?maxWidth=${de}&tag=${Q}&quality=${B}`;return t.isJellyfin?`${t.server}${W}${P}`:`${t.server}/emby${W}${P}`}function D(te){let Q=String(te?.headers?.["x-forwarded-proto"]||te?.protocol||"http").split(",")[0].trim()||"http",Z=String(te?.headers?.["x-forwarded-host"]||te?.headers?.host||"").split(",")[0].trim();return Z?`${Q}://${Z}`:""}function M(te,Q,Z={},de=null){if(!Q)return"";let{maxWidth:B=l,quality:k=u,imageType:W="Primary"}=Z,P=D(de);if(!P)return w(te,Q,Z);let H=new URL(`${P}/spider/emby_${t.id}/3/proxy/image`);return H.searchParams.set("itemId",String(te||"")),H.searchParams.set("tag",String(Q||"")),H.searchParams.set("imageType",String(W||"Primary")),H.searchParams.set("maxWidth",String(B)),H.searchParams.set("quality",String(k)),H.toString()}async function L(te,Q){if(!await T(te))return Q.code(401).send("\u767B\u5F55\u5931\u8D25");let Z=String(te?.query?.itemId||"").trim(),de=String(te?.query?.tag||"").trim(),B=String(te?.query?.imageType||"Primary").trim()||"Primary",k=Math.max(1,Number.parseInt(te?.query?.maxWidth,10)||l),W=Math.max(1,Number.parseInt(te?.query?.quality,10)||u);if(!Z||!de)return Q.code(400).send("missing image params");try{let P=await i(),H=w(Z,de,{maxWidth:k,quality:W,imageType:B}),j=await Xe.get(H,{headers:{...P,Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8"},responseType:"stream",timeout:t.timeout||1e4,validateStatus:()=>!0});return(j.status||500)>=400||!j.data?Q.code(j.status||502).send("fetch image failed"):(j.headers["content-type"]&&Q.header("Content-Type",j.headers["content-type"]),j.headers["content-length"]&&Q.header("Content-Length",j.headers["content-length"]),Q.header("Access-Control-Allow-Origin","*"),Q.header("Cache-Control","public, max-age=300"),Q.send(j.data))}catch{return Q.code(502).send("proxy image error")}}async function U(te,Q){try{if(!b())return{success:!1,error:"\u914D\u7F6E\u4E0D\u5B8C\u6574"};if(te?.server?.db){let Z=await te.server.db.getObjectDefault(r,{});Z?.deviceId&&Object.assign(t,Z)}return(!t.token||!t.userId)&&!await T(te)?{success:!1,error:"\u767B\u5F55\u5931\u8D25"}:{success:!0,name:t.name,server:t.server,serverType:t.serverType}}catch(Z){return{success:!1,error:Z.message}}}async function G(te,Q){let Z=Qr("emby",{...arguments[0],cacheKeyExtra:t.id}),de=Wr(Z);if(de)return de;if(!await T(te))return{class:[],error:"\u767B\u5F55\u5931\u8D25"};try{let B=await i(),k=n(`/Users/${t.userId}/Views`),W=t.cacheViews?"long":"short",H=(await a.cachedGet(k,{headers:B},W)).data.Items||[],j=[],q={};H.filter(X=>!c.some(ae=>X.Name.includes(ae))).forEach(X=>{let ae=X.Id.toString();j.push({type_id:ae,type_name:X.Name,type_image:M(X.Id,X.ImageTags?.Primary,{maxWidth:200,imageType:"Thumb"},te)});let ne=[{n:"\u6700\u8FD1\u6DFB\u52A0",v:"dateadded"},{n:"\u6700\u8FD1\u53D1\u884C",v:"premieredate_desc"},{n:"\u6700\u8FD1\u64AD\u653E",v:"dateplayed"},{n:"\u5E74\u4EFD\u65B0\u2192\u65E7",v:"year_desc"},{n:"\u5E74\u4EFD\u65E7\u2192\u65B0",v:"year_asc"},{n:"\u8BC4\u5206\u6700\u9AD8",v:"rating"},{n:"\u540D\u79F0A\u2192Z",v:"name"}],se=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"}];for(let ce=2025;ce>=2010;ce--)se.push({n:String(ce),v:String(ce)});let J=[{n:"\u5168\u90E8",v:""},..."ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("").map(ce=>({n:ce,v:ce}))];q[ae]=[{key:"tid",name:"\u6392\u5E8F",init:"dateadded",value:ne},{key:"year",name:"\u5E74\u4EFD",init:"",value:se},{key:"letter",name:"\u5B57\u6BCD",init:"",value:J}]});let Y={class:j,filters:q};return hn(Z,Y,bt.semiStatic),Y}catch{return{class:[],error:"\u83B7\u53D6\u9996\u9875\u5931\u8D25"}}}async function $(te,Q){let Z=te.body.id,de=parseInt(te.body.page,10)||1;de<1&&(de=1);let B=d,k=(de-1)*B;if(!await T(te))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let W=await i(),P=n(`/Users/${t.userId}/Items`),H=te.body.filters||{},j=H.tid||"dateadded",q=H.year||"",Y=H.letter||"",X={dateadded:{sortBy:"DateCreated,SortName",sortOrder:"Descending"},premieredate_desc:{sortBy:"PremiereDate,SortName",sortOrder:"Descending"},dateplayed:{sortBy:"DatePlayed,SortName",sortOrder:"Descending"},year_asc:{sortBy:"ProductionYear,SortName",sortOrder:"Ascending"},year_desc:{sortBy:"ProductionYear,SortName",sortOrder:"Descending"},rating:{sortBy:"CommunityRating,SortName",sortOrder:"Descending"},name:{sortBy:"SortName",sortOrder:"Ascending"}},{sortBy:ae,sortOrder:ne}=X[j]||X.dateadded,se={SortBy:ae,SortOrder:ne,ParentId:Z,Recursive:"true",Limit:B,StartIndex:k,Fields:"ProductionYear,Status,DateCreated,CommunityRating,PremiereDate",IncludeItemTypes:"Movie,Series",ImageTypeLimit:1,EnableImageTypes:"Primary,Backdrop",EnableUserData:"true"};if(q){let xe=parseInt(q,10);isNaN(xe)||(se.Years=xe.toString())}Y&&(se.NameStartsWith=Y);let J=await a.cachedGet(P,{headers:W,params:se},"medium"),ce=J.data.Items||[],ge=J.data.TotalRecordCount||0,be=ce.map(xe=>{let Fe=xe.CommunityRating?`\u2B50${xe.CommunityRating.toFixed(1)}`:"",Ee=xe.ProductionYear||"",me=[Fe,Ee].filter(Boolean).join(" ");return{vod_id:Kmn(xe.Id,{vod_pic:M(xe.Id,xe.ImageTags?.Primary,{},te),vod_remarks:me}),vod_name:xe.Name,vod_pic:M(xe.Id,xe.ImageTags?.Primary,{},te),vod_remarks:me,vod_year:Ee,vod_score:xe.CommunityRating||0}}),Te=Math.ceil(ge/B);return{list:be,page:de,pagecount:Te,limit:B,total:ge}}catch{return{list:[],error:"\u83B7\u53D6\u5206\u7C7B\u5931\u8D25"}}}async function K(te,Q){let Z=Gmn(te.body.id),de=Z.id;if(!await T(te))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let B=await i(),k=n(`/Users/${t.userId}/Items/${de}`),P=(await a.cachedGet(k,{headers:B,params:{Fields:"MediaSources,Overview,Genres,ProductionYear,OfficialRating,RunTimeTicks,People,Studios,Taglines,Type"}},"long")).data,H={vod_id:P.Id,vod_name:P.Name,vod_pic:Z.meta?.vod_pic||M(P.Id,P.ImageTags?.Primary,{},te),vod_type:P.Genres?.join(",")||"",vod_year:P.ProductionYear||"",vod_area:P.ProductionLocation||"",vod_actor:P.People?.filter(Y=>Y.Type==="Actor").map(Y=>Y.Name).join(",")||"",vod_director:P.People?.filter(Y=>Y.Type==="Director").map(Y=>Y.Name).join(",")||"",vod_content:(P.Overview||"").replace(/\r\n/g," "),vod_remarks:Z.meta?.vod_remarks||P.OfficialRating||"",vod_play_from:"",vod_play_url:""},j=[],q=[];if(P.Type==="Series")try{let Y=[];try{let J=n(`/Shows/${de}/Seasons`);Y=(await a.cachedGet(J,{headers:B,params:{UserId:t.userId,Fields:"Id,Name,IndexNumber",EnableTotalRecordCount:!1}},"long")).data?.Items||[]}catch(J){console.debug("\u83B7\u53D6\u5B63\u5217\u8868\u5931\u8D25\uFF0C\u7EE7\u7EED\u5C1D\u8BD5\u6279\u91CF\u83B7\u53D6\u5267\u96C6:",J.message)}let X=await v(de,B),ae=new Map;for(let J of X){let ce=A(J);ae.has(ce.groupKey)||ae.set(ce.groupKey,{...ce,episodes:[]}),ae.get(ce.groupKey).episodes.push(J)}let ne=[...Y].sort((J,ce)=>y(J?.IndexNumber)-y(ce?.IndexNumber));for(let J of ne){let ce=J?.Id||"",ge=ce?ae.get(ce):null;if(!ge||ge.episodes.length===0)continue;let be=_(ge.episodes);be&&(j.push(J.Name||ge.seasonName||`Season ${J.IndexNumber||ce}`),q.push(be),ae.delete(ce))}let se=[...ae.values()].sort((J,ce)=>J.seasonIndex!==ce.seasonIndex?J.seasonIndex-ce.seasonIndex:(J.seasonName||"").localeCompare(ce.seasonName||""));for(let J of se){if(!J.episodes||J.episodes.length===0)continue;let ce=_(J.episodes);ce&&(j.push(J.seasonName||t.name),q.push(ce))}}catch(Y){console.debug("\u83B7\u53D6\u5267\u96C6\u4FE1\u606F\u5931\u8D25:",Y.message)}else{let Y=P.MediaSources||[];if(Y.length>0)Y.forEach(X=>{let ae=X.Name||"\u9ED8\u8BA4\u7EBF\u8DEF";j.push(ae);let ne=awe(t,n,de,X.Id,t.userId);q.push(`${P.Name}$${ne}`)});else{j.push(t.name);let X=awe(t,n,de,null,t.userId);q.push(`${P.Name}$${X}`)}}return j.length===0||q.length===0?{list:[],error:"\u65E0\u6CD5\u83B7\u53D6\u64AD\u653E\u5217\u8868"}:(H.vod_play_from=j.join("$$$"),H.vod_play_url=q.join("$$$"),{list:[H]})}catch(B){return console.debug("\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25:",B.message),{list:[],error:"\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25"}}}async function ee(te,Q){let Z=te.body.wd?.trim();if(!Z)return{list:[]};if(!await T(te))return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let de=await i(),B=n(`/Users/${t.userId}/Items`),k={SearchTerm:Z,IncludeItemTypes:"Movie,Series",Recursive:"true",Limit:f,Fields:"ProductionYear,Type",EnableImageTypes:"Primary",SortBy:"SortName",SortOrder:"Ascending"};return{list:((await a.cachedGet(B,{headers:de,params:k},"short")).data.Items||[]).map(j=>({vod_id:j.Id,vod_name:j.Name,vod_pic:M(j.Id,j.ImageTags?.Primary,{},te),vod_remarks:j.Type==="Series"?"\u5267\u96C6":"\u7535\u5F71",vod_year:j.ProductionYear||""}))}}catch{return{list:[],error:"\u641C\u7D22\u5931\u8D25"}}}async function z(te,Q){let Z=String(te.body?.id||"");if(!Z)return{parse:1,url:"",header:s};if(Z.endsWith("_more")){let k=Z.replace("_more","");return{parse:0,url:`${t.server}/web/index.html#!/details?id=${k}&serverId=${t.server}`,header:s}}let de,B;if(Z.includes("|")){let k=Z.split("|");de=k[0],B=k[1]}else if(Z.includes("/PlaybackInfo?"))try{let k=new URL(Z),W=k.pathname.split("/");de=W[W.length-2],B=k.searchParams.get("MediaSourceId")}catch{return{parse:1,url:Z,header:s}}else return{parse:1,url:Z,header:s};try{let k=await i(),W={DeviceProfile:{MaxStreamingBitrate:14e7,DirectPlayProfiles:[{Container:"mp4,mkv,m4v",Type:"Video"}]}},P=n(`/Items/${de}/PlaybackInfo`),H={UserId:t.userId,MaxStreamingBitrate:14e7};B&&(H.MediaSourceId=B);let q=(await Xe.post(P,W,{headers:{...k,"Content-Type":"application/json"},params:H,timeout:5e3})).data?.MediaSources||[];if(q.length===0)return{error:"\u65E0\u53EF\u7528\u5A92\u4F53\u6E90"};let Y=q.find(se=>se.Id===B)||q[0],X=null;t.enablePlaybackReport&&o.recordPlaybackStart(de,Y).then(se=>{X=se}).catch(()=>{});let ae=oe(Y,X);return ae||{parse:0,url:zmn(t,Y),header:s,extra:{mediaSourceId:Y.Id,playbackSessionId:X}}}catch(k){return console.debug("\u64AD\u653E\u8BF7\u6C42\u5931\u8D25:",k.message),{parse:0,url:t.isJellyfin?`${t.server}/Videos/${de}/stream?api_key=${t.token}`:`${t.server}/emby/videos/${de}/stream?api_key=${t.token}`,header:s}}}function oe(te,Q){return te.DirectStreamUrl?{parse:0,url:te.DirectStreamUrl.startsWith("http")?te.DirectStreamUrl:t.server+te.DirectStreamUrl,header:{...s,Referer:`${t.server}/`,...Q&&{"X-Playback-Session-Id":Q}},extra:{source:te.Name||"\u9ED8\u8BA4",bitrate:te.Bitrate?`${(te.Bitrate/1e6).toFixed(1)}M`:"",mediaSourceId:te.Id,playbackSessionId:Q}}:te.Path&&te.Path.startsWith("http")?{parse:0,url:te.Path,header:s,extra:{mediaSourceId:te.Id,playbackSessionId:Q}}:null}return{meta:{key:`emby_${t.id}`,name:`${t.isJellyfin?"Jellyfin":"Emby"} ${t.name}`,type:3,version:"0.0.3"},api:async te=>{te.get("/proxy/image",L),te.post("/init",U),te.post("/home",G),te.post("/category",$),te.post("/detail",K),te.post("/play",z),te.post("/search",ee)}}}Cr();Dn();Jc();la();var lwe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",tz=3e4,Ymn=1e4,Qmn=new Set(["desktop.ini","thumbs.db","readme.md"]),dwe=1e3,Wmn=5e3,Xmn=/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|iso)$/i,Jmn="https://img.icons8.com/color/48/folder-invoices.png",Zmn="https://img.icons8.com/fluency/96/video-file.png",egn="",B8t="__alist_playlist__",U8t="https://img.icons8.com/fluency/96/playlist.png",tgn={mp4:"video/mp4",m4v:"video/mp4",mkv:"video/x-matroska",avi:"video/x-msvideo",mov:"video/quicktime",flv:"video/x-flv",wmv:"video/x-ms-wmv",m3u8:"application/vnd.apple.mpegurl",ts:"video/MP2T",webm:"video/webm",mpg:"video/mpeg",mpeg:"video/mpeg","3gp":"video/3gpp"},rgn={srt:"text/plain; charset=utf-8",ass:"text/plain; charset=utf-8",ssa:"text/plain; charset=utf-8",sub:"text/plain; charset=utf-8",idx:"text/plain; charset=utf-8",smi:"text/plain; charset=utf-8",txt:"text/plain; charset=utf-8",vtt:"text/vtt; charset=utf-8"};function ngn(e="",t=""){let r=String(e),n=String(t),s=r.match(/(\d+|\D+)/g)||[],i=n.match(/(\d+|\D+)/g)||[],a=Math.min(s.length,i.length);for(let o=0;o<a;o++){let c=s[o],u=i[o],l=/^\d+$/.test(c),d=/^\d+$/.test(u);if(l&&d){let h=Number(c)-Number(u);if(h!==0)return h;continue}let f=c.localeCompare(u);if(f!==0)return f}return s.length-i.length||r.localeCompare(n)}function sgn(){try{if(typeof Intl<"u"&&Intl&&typeof Intl.Collator=="function"){let e=new Intl.Collator("zh-Hans-CN",{numeric:!0,sensitivity:"base"});return(t,r)=>e.compare(t,r)}}catch{}return ngn}var F8t=sgn();function rz(e=""){try{return decodeURIComponent(e)}catch{return e}}function nz(e=""){let r=String(e).trim().replace(/[?#].*$/,"").replace(/\/+$/,"").split("/").filter(Boolean);return r.length>0?r[r.length-1]:""}function ign(e="",t=""){let r=rz(String(e).trim()),n=rz(String(t).trim()),s=nz(r);if(s)return s;let i=nz(n);return i||r||n||"\u672A\u77E5\u89C6\u9891"}function $8t(e=""){return Buffer.from(String(e),"utf8").toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function q8t(e=""){let t=String(e||"").replace(/-/g,"+").replace(/_/g,"/"),r=t+"=".repeat((4-t.length%4)%4);return Buffer.from(r,"base64").toString("utf8")}function H8t(e){let t=String(e?.headers?.["x-forwarded-proto"]||e?.protocol||"http").split(",")[0].trim()||"http",r=String(e?.headers?.["x-forwarded-host"]||e?.headers?.host||"").split(",")[0].trim();return r?`${t}://${r}`:e?.server?.address?.()?.url||""}function V8t(e){return String(e?.server?.prefix||"").replace(/\/+$/,"")}function j8t(e=""){let t=String(e||"").toLowerCase().match(/\.([a-z0-9]+)(?:[?#].*)?$/);return t?t[1]:""}function agn(e=""){return tgn[j8t(e)]||"application/octet-stream"}function K8t(e){let t=String(e.id||"unknown"),r=(e.server||"").replace(/\/$/,"");r=r.replace(/:443$/,"").replace(/(:443)\//,"/"),r=r.replace(/^http:\/\/([^:\/]+):80$/,"http://$1"),r=r.replace(/^http:\/\/([^:\/]+):80\//,"http://$1/");let n={id:t,name:e.name||`Alist ${t.slice(0,8)}`,server:r,username:e.username||"",password:e.password||"",token:e.token||"",enabled:e.enabled!==!1},s=n.server,i=null;function a(B,k="",W={}){return JSON.stringify({c:n.id,p:B||"",n:k,...W})}function o(B){try{return JSON.parse(B)}catch{return{c:n.id,p:B||"/",n:""}}}function c(){let B={"Content-Type":"application/json","User-Agent":lwe};return n.token&&(B.Authorization=n.token),B}async function u(){if(!n.username)return null;if(i)return i;i=(async()=>{try{let B=await Xe.post(`${s}/api/auth/login`,{username:n.username,password:n.password||""},{timeout:tz});if(B.data?.code===200&&B.data?.data?.token)return n.token=B.data.data.token,n.token;console.error(`[Alist\u767B\u5F55] \u767B\u5F55\u5931\u8D25: ${n.name}, \u54CD\u5E94\u7801: ${B.data?.code}`)}catch(B){console.error(`[Alist\u767B\u5F55] \u767B\u5F55\u5F02\u5E38: ${n.name}, \u9519\u8BEF: ${B.message}`)}return null})();try{return await i}finally{i=null}}function l(B,k){let W=B?.data?.code||k?.response?.status,P=String(B?.data?.message||k?.response?.data?.message||"").toLowerCase();return W===401||W===403||P.includes("token")||P.includes("unauthorized")}async function d(B,k){let W=()=>Xe.post(`${s}${B}`,k,{headers:c(),timeout:tz});try{let P=await W();return l(P,null)&&n.username&&await u()?await W():P}catch(P){if(n.username&&l(null,P)&&await u())return await W();throw P}}async function f(){return n.token?!0:n.username?!!await u():!0}async function h(B,k=1,W=dwe,P={}){let H=Math.max(1,Number.parseInt(k,10)||1),j=Math.min(dwe,Math.max(1,Number.parseInt(W,10)||dwe)),q=Math.max(j,Number.parseInt(P.maxItems,10)||Wmn),Y=[],X=H,ae=0;try{for(;Y.length<q;){let ne=await d("/api/fs/list",{path:B||"/",password:"",page:X,per_page:j,refresh:!1});if(ne.data?.code!==200){console.error(`[Alist\u5217\u8868] \u5931\u8D25: ${B}, \u54CD\u5E94\u7801: ${ne.data?.code}, \u6D88\u606F: ${ne.data?.message}`);break}let se=ne.data.data||{},J=Array.isArray(se.content)?se.content:[];if(ae=Number(se.total||se.count||ae||0),Y.push(...J),J.length<j||ae>0&&Y.length>=ae)break;X+=1}}catch(ne){console.error(`[Alist\u5217\u8868] \u5F02\u5E38: ${B}, \u9519\u8BEF: ${ne.message}`)}return Y.slice(0,q)}async function p(B){try{let k=await d("/api/fs/get",{path:B||"/",password:""});if(k.data?.code===200)return k.data.data;console.error(`[Alist\u6587\u4EF6] \u5931\u8D25: ${B}, \u54CD\u5E94\u7801: ${k.data?.code}, \u6D88\u606F: ${k.data?.message}`)}catch(k){console.error(`[Alist\u6587\u4EF6] \u5F02\u5E38: ${B}, \u9519\u8BEF: ${k.message}`)}return null}function m(B){if(!B)return"";let P=(B.startsWith("/")?B:`/${B}`).split("/").map(H=>H===""?"":encodeURIComponent(H).replace(/%2F/g,"/")).join("/");return`${s}/d${P}`}function g(B,k,W){let P=$8t(JSON.stringify({c:n.id,p:k||"",n:W||""})),H=j8t(W),j=`${V8t(B)}/proxy/media/${P}${H?`.${H}`:""}`,q=H8t(B);return q?`${q}${j}`:j}function _(B=""){let k=b(B);return rgn[k]||"text/plain; charset=utf-8"}function y(B,k,W,P=""){let H=b(P||W),j=$8t(JSON.stringify({c:n.id,p:k||"",n:W||"",f:H})),q=`${V8t(B)}/proxy/subtitle/${j}.${H}`,Y=H8t(B);return Y?`${Y}${q}`:q}function A(B,k){let W=String(B||"/");return W==="/"?`/${k}`:`${W}/${k}`}function E(B){return!!B&&Xmn.test(B)}function v(B){return St(B)}function b(B){return rr(B)||String(B||"").toLowerCase().replace(/^\./,"")||"srt"}function I(B){return String(B||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function T(B,k=0){let W=Number(k||0);return W>0?`${I(B)} [${U(W)}]`:I(B)}function x(B){return String(B||"/").split("/").filter(Boolean).pop()||"\u6839\u76EE\u5F55"}function w(B){let k=Array.isArray(B)?B.filter(P=>P?.url).map(P=>({url:P.url,name:P.name||"\u5916\u6302\u5B57\u5E55",format:b(P.format||P.name)})):[];if(k.length===0)return{};let W=k[0];return{subt:W.url,subtitle:W.url,subs_urls:k.map(P=>P.url),subs:k,extra:{subt:W.url,subtitle:W.url,subs_urls:k.map(P=>P.url),subs:k}}}function D(B,k){let P=(Array.isArray(B)?B:B?[B]:[]).map(H=>{let j=H?.name||"",q=H?.path||(k==="/"?`/${j}`:`${k}/${j}`);return!j||!q?null:{p:q,n:j,e:b(j)}}).filter(Boolean);return P.length===0?{}:{ss:P}}function M(B,k,W,P,H=0){return a(B,k,{...D(W,P),s:Number(H||0)})}async function L(B){let k=await p(B);return k&&k.raw_url?{fileInfo:k,url:k.raw_url,urlSource:"raw_url"}:k&&k.url?{fileInfo:k,url:k.url,urlSource:"url"}:{fileInfo:k,url:m(B),urlSource:"direct_link"}}function U(B){if(!B||B===0)return"0B";let k=1024,W=["B","KB","MB","GB","TB"],P=Math.floor(Math.log(B)/Math.log(k));return parseFloat((B/Math.pow(k,P)).toFixed(2))+W[P]}async function G(B,k){try{if(!n.server)return{success:!1,error:"\u670D\u52A1\u5668\u5730\u5740\u672A\u914D\u7F6E"};if(n.username&&!n.token&&!await f())return{success:!1,error:"\u767B\u5F55\u5931\u8D25"};let W=await d("/api/fs/list",{path:"/",password:"",page:1,per_page:1});return W.data?.code!==200?{success:!1,error:W.data?.message||"\u8FDE\u63A5\u6821\u9A8C\u5931\u8D25",message:`\u8FDE\u63A5\u5931\u8D25: ${W.data?.message||"\u8FDE\u63A5\u6821\u9A8C\u5931\u8D25"}`}:{success:!0,name:n.name,message:`\u8FDE\u63A5\u6210\u529F: ${n.name}`}}catch(W){return{success:!1,error:W.message,message:`\u8FDE\u63A5\u5931\u8D25: ${W.message}`}}}async function $(B,k){let W=Qr("alist",arguments[0]||{}),P=Wr(W);if(P)return P;let H={class:[{type_id:a("/",""),type_name:n.name,type_flag:"alist"}],filters:{}};return hn(W,H,bt.semiStatic),H}async function K(B,k){let W=B.body||{},P="/",H=null;W.id&&(H=o(W.id),P=H.p||"/");let j=parseInt(W.page)||1,q=50;if(!await f())return{page:1,pagecount:1,limit:q,total:0,list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let X=(await h(P,1,1e3)).filter(me=>{let Ae=me?.name||"";return Ae&&!Ae.startsWith(".")&&!Qmn.has(Ae.toLowerCase())}),ae=[],ne=[],se=[];X.forEach(me=>{let Ae=A(P,me.name);me.is_dir?ae.push({...me,path:Ae,type:"folder"}):(ne.push({...me,path:Ae,type:"file",isVideo:E(me.name)}),v(me.name)&&se.push({...me,path:Ae}))}),ae.sort((me,Ae)=>F8t(me.name,Ae.name));let J=Gt(ne.filter(me=>me.isVideo)),ce=new Set(J.map(me=>me.path)),ge=ne.filter(me=>!ce.has(me.path)).sort((me,Ae)=>F8t(me.name,Ae.name)),be=[...ae];J.length>1&&be.push({isPlaylist:!0,path:P,name:"\u64AD\u653E\u5217\u8868",count:J.length}),be.push(...J,...ge);let Te=(j-1)*q,xe=Te+q,Ee=be.slice(Te,xe).map(me=>{if(me.isPlaylist){let Ae=a(me.path,B8t,{t:`${x(me.path)} \u64AD\u653E\u5217\u8868`});return{vod_id:Ae,vod_name:"\u64AD\u653E\u5217\u8868",vod_pic:U8t,vod_remarks:`${me.count}\u4E2A\u89C6\u9891`,vod_tag:"playlist",vod_content:"",extend:{id:Ae,path:me.path,type:"playlist"}}}if(me.is_dir){let Ae=a(me.path,"");return{vod_id:Ae,type_id:Ae,type_name:me.name,vod_name:`\u{1F4C1} ${me.name}`,vod_pic:"https://img.icons8.com/color/48/folder-invoices.png",vod_remarks:"\u6587\u4EF6\u5939",vod_tag:"folder",vod_content:"",cate:{id:Ae,name:me.name},extend:{id:Ae,path:me.path,type:"folder"}}}else{let Ae=me.isVideo?ac(me.name,se,Ie=>Ie?.name||""):[],pe=M(me.path,me.name,Ae,P,me.size),Se=[];return me.isVideo&&Se.push("\u{1F3AC}"),me.size&&Se.push(U(me.size)),{vod_id:pe,vod_name:me.name,vod_pic:me.thumb||"",vod_remarks:Se.join(" "),vod_tag:me.isVideo?"video":"file",vod_content:"",extend:{id:pe,path:me.path,type:"file",isVideo:me.isVideo}}}});return{page:j,pagecount:Math.max(1,Math.ceil(be.length/q)),limit:q,total:be.length,list:Ee}}catch(Y){return console.error("Alist\u5206\u7C7B\u5931\u8D25:",Y),{page:1,pagecount:1,limit:q,total:0,list:[],error:Y.message}}}async function ee(B,k){let W=B.body||{};if(!W.id)return{list:[],error:"ID\u53C2\u6570\u7F3A\u5931"};if(!await f())return{list:[],error:"\u767B\u5F55\u5931\u8D25"};try{let P=o(W.id);if(!P.n)return{list:[],error:"\u76EE\u5F55\u65E0\u6CD5\u67E5\u770B\u8BE6\u60C5\uFF0C\u8BF7\u4F7F\u7528\u5206\u7C7B\u6D4F\u89C8"};let H=P.p;if(P.n===B8t){let q=await h(H),Y=q.filter(ne=>!ne.is_dir&&v(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})),X=Gt(q.filter(ne=>!ne.is_dir&&E(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})));if(X.length===0)return{list:[],error:"\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let ae=X.map(ne=>{let se=ac(ne.name,Y,ce=>ce?.name||""),J=M(ne.path,ne.name,se,H,ne.size);return`${T(ne.name,ne.size)}$${J}`}).join("#");return{list:[{vod_id:W.id,vod_name:P.t||`${x(H)} \u64AD\u653E\u5217\u8868`,vod_pic:U8t,vod_content:`\u5F53\u524D\u76EE\u5F55: ${H}`,vod_remarks:`\u5171${X.length}\u4E2A\u89C6\u9891`,vod_play_from:n.name,vod_play_url:ae}]}}let j=await p(H);if(!j)return{list:[],error:"\u6587\u4EF6\u4E0D\u5B58\u5728\u6216\u65E0\u6CD5\u8BBF\u95EE"};if(j.is_dir){let q=await h(H),Y=q.filter(ne=>!ne.is_dir&&v(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})),X=Gt(q.filter(ne=>!ne.is_dir&&E(ne.name)).map(ne=>({...ne,path:A(H,ne.name)})));if(X.length===0)return{list:[],error:"\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let ae=X.map(ne=>{let se=ac(ne.name,Y,ce=>ce?.name||""),J=M(ne.path,ne.name,se,P.p,ne.size);return`${T(ne.name,ne.size)}$${J}`}).join("#");return{list:[{vod_id:W.id,vod_name:P.n,vod_pic:j.thumb||"",vod_content:"",vod_remarks:U(j.size)||"",vod_play_from:n.name,vod_play_url:ae}]}}else{if(!E(j.name))return{list:[],error:"\u4E0D\u662F\u89C6\u9891\u6587\u4EF6"};let q=H.substring(0,H.lastIndexOf("/"))||"/",X=(await h(q)).filter(J=>!J.is_dir&&v(J.name)).map(J=>({...J,path:A(q,J.name)})),ae=ac(P.n,X,J=>J?.name||""),ne=M(H,P.n,ae,q,j.size),se="";return ae.length>0&&(se=`\u5B57\u5E55\u6587\u4EF6: +${ae.map(ce=>ce.name).join(` +`)}`),{list:[{vod_id:W.id,vod_name:P.n,vod_pic:j.thumb||"",vod_content:se,vod_remarks:U(j.size)||"",vod_time:j.modified||"",vod_play_from:n.name,vod_play_url:`${T(P.n,j.size)}$${ne}`}]}}}catch(P){return console.error("Alist\u8BE6\u60C5\u5931\u8D25:",P),{list:[],error:P.message}}}async function z(B,k){let W=B.body||{};if(!W.id)return{error:"ID\u53C2\u6570\u7F3A\u5931"};if(!await f())return{error:"\u767B\u5F55\u5931\u8D25"};try{let P=o(W.id),H=P.n||(P.p?P.p.split("/").pop():"")||"";if(!E(H))return{error:"\u4E0D\u662F\u89C6\u9891\u6587\u4EF6\uFF0C\u65E0\u6CD5\u64AD\u653E"};let j=P.p,{url:q,urlSource:Y}=await L(j);if(!q)throw new Error("\u65E0\u6CD5\u83B7\u53D6\u64AD\u653E\u5730\u5740");let X={parse:0,url:g(B,j,H),header:{},extra:{from:n.name,path:j,urlSource:Y}},ae=Array.isArray(P.ss)&&P.ss.length>0?P.ss.map(ne=>({path:ne?.p||"",name:ne?.n||"\u5916\u6302\u5B57\u5E55",format:ne?.e||ne?.n||"srt"})).filter(ne=>ne.path):P.sp?[{path:P.sp,name:P.sn||"\u5916\u6302\u5B57\u5E55",format:P.se||P.sn||"srt"}]:[];if(ae.length>0)try{let ne=[];for(let ce of ae)try{let ge=y(B,ce.path,ce.name,ce.format);ge&&ne.push({url:ge,name:ce.name||"\u5916\u6302\u5B57\u5E55",format:ce.format||ce.name||"srt"})}catch(ge){console.warn("[Alist\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",ge.message)}let se=w(ne),J={...X.extra||{},...se.extra||{}};Object.assign(X,se),X.extra=J}catch(ne){console.warn("[Alist\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",ne.message)}return X}catch(P){return console.error("[Alist\u64AD\u653E] \u64AD\u653E\u5931\u8D25:",P.message,P.stack),{parse:0,url:"",header:{},error:P.message}}}function oe(B,k={}){let W={"User-Agent":lwe,...k},P=String(B).startsWith(`${s}/`);return P&&(W.Referer=s),P&&n.token&&(W.Authorization=n.token.startsWith("Bearer ")?n.token:`Bearer ${n.token}`),W}async function le(B,k){let W=String(B.params?.encoded||B.params?.["*"]||"").replace(/\.[a-z0-9]+$/i,""),P=null;try{P=JSON.parse(q8t(W))}catch{return k.code(400),"bad media token"}if(!P||P.c!==n.id||!P.p)return k.code(403),"invalid media token";try{let H=String(P.p||""),j=String(P.n||nz(H)||"video"),{url:q}=await L(H);if(!q)return k.code(404),"media url not found";let Y=oe(q,{Accept:"*/*","Accept-Encoding":"identity",...B.headers?.range?{Range:B.headers.range}:{}}),X=await Xe.get(q,{responseType:"stream",headers:Y,timeout:tz,maxRedirects:5,validateStatus:()=>!0});if(X.status<200||X.status>=400)return X.data&&typeof X.data.destroy=="function"&&X.data.destroy(),k.code(X.status||502),`media fetch failed: ${X.status||502}`;k.code(X.status||200);let ae=["content-type","content-length","content-range","accept-ranges","etag","last-modified"];for(let se of ae){let J=X.headers?.[se];J!=null&&k.header(se,J)}let ne=String(X.headers?.["content-type"]||"").toLowerCase();return(!ne||ne.includes("application/oct-stream")||ne.includes("application/octet-stream"))&&k.header("Content-Type",agn(j)),k.header("Accept-Ranges",X.headers?.["accept-ranges"]||"bytes"),k.header("Access-Control-Allow-Origin","*"),k.header("Access-Control-Allow-Headers","Range, Content-Type"),k.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),k.header("Cache-Control","no-store"),k.send(X.data)}catch(H){return console.error("[Alist\u4EE3\u7406] \u5A92\u4F53\u4EE3\u7406\u5931\u8D25:",H.message),k.code(502),`media proxy failed: ${H.message}`}}async function te(B,k){let W=String(B.params?.encoded||B.params?.["*"]||"").replace(/\.[a-z0-9]+$/i,""),P=null;try{P=JSON.parse(q8t(W))}catch{return k.code(400),"bad subtitle token"}if(!P||P.c!==n.id||!P.p)return k.code(403),"invalid subtitle token";try{let H=String(P.p||""),j=String(P.n||nz(H)||"subtitle.srt"),q=b(P.f||j),{url:Y}=await L(H);if(!Y)return k.code(404),"subtitle url not found";let X=await Xe.get(Y,{responseType:"stream",headers:oe(Y,{Accept:"text/plain,text/vtt,*/*","Accept-Encoding":"identity"}),timeout:tz,maxRedirects:5,validateStatus:()=>!0});if(X.status<200||X.status>=400)return X.data&&typeof X.data.destroy=="function"&&X.data.destroy(),k.code(X.status||502),`subtitle fetch failed: ${X.status||502}`;k.code(X.status||200);let ae=String(X.headers?.["content-type"]||"").toLowerCase();return k.header("Content-Type",ae&&!ae.includes("application/octet-stream")?X.headers["content-type"]:_(q)),X.headers?.["content-length"]&&k.header("Content-Length",X.headers["content-length"]),k.header("Access-Control-Allow-Origin","*"),k.header("Access-Control-Allow-Headers","Range, Content-Type"),k.header("Access-Control-Expose-Headers","Content-Length, Content-Range, Accept-Ranges"),k.header("Cache-Control","no-store"),k.send(X.data)}catch(H){return console.error("[Alist\u4EE3\u7406] \u5B57\u5E55\u4EE3\u7406\u5931\u8D25:",H.message),k.code(502),`subtitle proxy failed: ${H.message}`}}async function Q(B,k){let W=B.body||{},P=W.wd||"",H=parseInt(W.page,10)||1;if(!P.trim())return{page:1,pagecount:1,limit:0,total:0,list:[]};try{let j=`${s}/search?box=${encodeURIComponent(P)}&type=video`,q=await Xe.get(j,{timeout:Ymn,headers:{"User-Agent":lwe}});if(!q.data)return{page:1,pagecount:1,limit:0,total:0,list:[]};let X=new J1e().pq(q.data),ae=[];X("div ul a").each((se,J)=>{let ce=J.attribs?.href,ge=X(J).text().trim();ce&&ge&&ce.startsWith("/")&&ae.push({path:rz(ce),name:rz(ge)})});let ne=ae.map(se=>{let J=ign(se.name,se.path),ce=E(J)||E(se.path),ge=a(se.path,ce?J:""),be={vod_id:ge,vod_name:J,vod_pic:ce?Zmn:Jmn,vod_remarks:ce?"\u89C6\u9891\u6587\u4EF6":"\u6587\u4EF6\u5939",vod_tag:ce?"video":"folder",vod_content:se.path,extend:{id:ge,path:se.path,type:ce?"file":"folder",isVideo:ce}};return ce?(be.vod_play_from=n.name,be.vod_play_url=`${J}$${ge}`):(be.type_id=ge,be.type_name=J,be.cate={id:ge,name:J}),be});return{page:H,pagecount:1,limit:ne.length,total:ne.length,list:ne}}catch(j){return console.error(`[Alist\u641C\u7D22] ${n.name} - \u5931\u8D25:`,j.message),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function Z(B,k){try{let W=Buffer.from(egn,"base64");return k.header("Content-Type","image/png"),k.header("Content-Length",W.length),k.send(W)}catch{k.code(500).send({error:"Failed to load image"})}}return{meta:{key:`alist_${n.id}`,name:`Alist ${n.name}`,type:3,version:"2.1.0",author:"\u878D\u5408\u7248\u672C",description:`Alist\u6587\u4EF6\u6D4F\u89C8 - ${n.name}`,supportSearch:!0},api:async B=>{B.post("/init",G),B.post("/home",$),B.post("/category",K),B.post("/detail",ee),B.post("/play",z),B.post("/search",Q),B.get("/icon",Z),B.get("/proxy/media/*",le),B.get("/proxy/subtitle/*",te)}}}Cr();Dn();var _Vt=Ne(gVt(),1);fa();ia();la();Jc();function hDe(e){let t=(e.server||"").replace(/\/$/,"");t=t.replace(/:443$/,"").replace(/(:443)\//,"/"),t=t.replace(/^http:\/\/([^:\/]+):80$/,"http://$1"),t=t.replace(/^http:\/\/([^:\/]+):80\//,"http://$1/");let r={id:e.id,name:e.name||`WebDAV ${e.id.slice(0,8)}`,server:t,path:e.path||"/",username:e.username||"",password:e.password||"",enabled:e.enabled!==!1},n=r.server,s=r.path&&r.path!=="/"?r.path.replace(/\/$/,""):"/",i=15*1e3,a=20*1e3,o=10*1e3,c=200,u=50,l=20,d=2*1024*1024,f="1.3.0",h="webdav@@@",p="__webdav_playlist__",m="https://img.icons8.com/color/48/folder-invoices.png",g="https://i2.100024.xyz/2024/01/13/pptcej.webp",_="https://img.icons8.com/fluency/96/playlist.png",y=new _t(c,i),A=new _t(c,a),E=new _t(c,o),v=`webdav:${r.id}`;async function b(Ee,me,Ae,pe,Se){let Ie=Ee.get(Ae);return Ie!==null?Ie:$n(v,me,Ae,async()=>{let Le=await Se();return Ee.set(Ae,Le),Le},{timeout:3e4})}function I(Ee){let me=Number.parseInt(Ee,10);return Number.isNaN(me)||me<=0?1:me}function T(Ee,me="",Ae={}){let pe={c:r.id,p:Ee||"/",n:me||""};if(Ae&&typeof Ae=="object")for(let[Se,Ie]of Object.entries(Ae))["c","p","n"].includes(Se)||Ie==null||Ie===""||(pe[Se]=Ie);return h+Buffer.from(JSON.stringify(pe),"utf8").toString("base64url")}function x(Ee){let me={c:r.id,p:Ee||"/",n:""};try{let Ae=typeof Ee=="string"?Ee:"";if(!Ae)return me;if(Ae.includes("%"))try{Ae=decodeURIComponent(Ae)}catch{}return Ae.startsWith(h)?JSON.parse(Buffer.from(Ae.slice(h.length),"base64url").toString("utf8")):Ae.startsWith("{")?JSON.parse(Ae):me}catch{return me}}let w=r.username?{Authorization:`Basic ${Buffer.from(`${r.username}:${r.password||""}`).toString("base64")}`,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"}:{};function D(){return{...w}}function M(Ee){let me=String(Ee||"/").trim();return me.startsWith("/")||(me="/"+me),s&&s!=="/"&&(me===s||me.startsWith(s+"/"))&&(me=me.substring(s.length)||"/"),me.startsWith("/")||(me="/"+me),me.replace(/\/+/g,"/")}function L(){return(0,_Vt.create)({version:"1.0",encoding:"UTF-8"}).ele("d:propfind",{"xmlns:d":"DAV:"}).ele("d:prop").ele("d:displayname").up().ele("d:getcontentlength").up().ele("d:getcontenttype").up().ele("d:getlastmodified").up().ele("d:resourcetype").up().up().up().end()}let U=L();function G(Ee,me){let Ae=[];try{let pe=/<[^:>]+:response>([\s\S]*?)<\/[^:>]+:response>/g,Se;for(;(Se=pe.exec(Ee))!==null;){let Ie=Se[1],Le=/<[^:>]+:href>(.*?)<\/[^:>]+:href>/.exec(Ie);if(!Le)continue;let we=Le[1];try{we=decodeURIComponent(we)}catch{}let He=me.replace(/\/$/,"");if(we.replace(/\/$/,"")===He)continue;let ke=/<[^:>]+:displayname>(.*?)<\/[^:>]+:displayname>/.exec(Ie),Qe=ke?ke[1]:we.split("/").filter(Boolean).pop();if(!Qe){let vt=we.split("/").filter(Boolean);Qe=vt[vt.length-1]||"\u672A\u77E5\u6587\u4EF6"}let Rt=/<[^:>]+:getcontentlength>(.*?)<\/[^:>]+:getcontentlength>/.exec(Ie),ze=Rt&&Number.parseInt(Rt[1],10)||0,ot=/<[^:>]+:getlastmodified>(.*?)<\/[^:>]+:getlastmodified>/.exec(Ie),lt=ot?ot[1]:null,At=/<[^:>]+:collection\s*\/>/.test(Ie)||/<[^:>]+:resourcetype><[^:>]+:collection/.test(Ie),gr=M(we),Vt=!At&&z(Qe),it=!At&&oe(Qe);Ae.push({name:Qe,path:gr,size:ze,isDir:At,isVideo:Vt,isSubtitle:it,lastModified:lt})}}catch(pe){console.error("\u89E3\u6790WebDAV\u54CD\u5E94\u5931\u8D25:",pe.message)}return Ae}async function $(Ee){let me=s==="/"?Ee:s+Ee;me.startsWith("/")||(me="/"+me);let Ae=n+me,pe=await Xe({method:"PROPFIND",url:Ae,headers:{...D(),Depth:"1","Content-Type":"application/xml"},data:U,timeout:3e4});return G(pe.data,me)}async function K(Ee,me={}){let Ae=`dir:${Ee}`;try{let Se=(me.noCache?await $(Ee):await b(y,"category",Ae,i,async()=>$(Ee))).slice();if(me.sortBy==="name"?Se.sort((Ie,Le)=>Ie.isDir&&!Le.isDir?-1:!Ie.isDir&&Le.isDir?1:Ie.name.localeCompare(Le.name)):me.sortBy==="time"&&me.sortOrder==="desc"&&Se.sort((Ie,Le)=>Ie.lastModified&&Le.lastModified?new Date(Le.lastModified)-new Date(Ie.lastModified):0),me.filter==="videos"?Se=Se.filter(Ie=>Ie.isVideo):me.filter==="folders"&&(Se=Se.filter(Ie=>Ie.isDir)),me.page&&me.pageSize){let Ie=(me.page-1)*me.pageSize;Se=Se.slice(Ie,Ie+me.pageSize)}return Se}catch(pe){throw console.error("WebDAV\u5217\u51FA\u76EE\u5F55\u5931\u8D25:",pe.message),pe}}async function ee(Ee){let me=await K(Ee),Ae=me.filter(Le=>Le.isDir),pe=me.filter(Le=>!Le.isDir),Se=pe.filter(Le=>Le.isVideo),Ie=pe.filter(Le=>Le.isSubtitle);return{folders:Ae,files:pe,videoFiles:Se,subtitleFiles:Ie,total:me.length}}function z(Ee){return[".mp4",".mkv",".avi",".mov",".flv",".wmv",".m3u8",".ts",".rmvb",".webm",".rm",".mpg",".mpeg",".3gp",".f4v",".vob",".iso"].some(Ae=>Ee.toLowerCase().endsWith(Ae))}function oe(Ee){return[".srt",".ass",".ssa",".sub",".idx",".vtt",".smi",".txt"].some(Ae=>Ee.toLowerCase().endsWith(Ae))}function le(Ee){return/\.[^./\\]+$/.test(String(Ee||""))}function te(Ee){return String(Ee||"\u64AD\u653E").replace(/\.[^.]+$/,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()||"\u64AD\u653E"}function Q(Ee,me=0){let Ae=Number(me||0);return Ae>0?`${te(Ee)} [${ae(Ae)}]`:te(Ee)}function Z(Ee){let me=String(Ee||"").toLowerCase().replace(/^\./,"");return["srt","ass","ssa","sub","idx","vtt","smi","txt"].includes(me)?me:rr(Ee)||"srt"}function de(Ee){let me=Array.isArray(Ee)?Ee.filter(pe=>pe?.url).map(pe=>({url:pe.url,name:pe.name||"\u5916\u6302\u5B57\u5E55",format:Z(pe.format||pe.name)})):[];if(me.length===0)return{};let Ae=me[0];return{subt:Ae.url,subtitle:Ae.url,subs_urls:me.map(pe=>pe.url),subs:me,extra:{subt:Ae.url,subtitle:Ae.url,subs_urls:me.map(pe=>pe.url),subs:me}}}function B(Ee){return Gt(Array.isArray(Ee)?Ee.slice():[])}function k(Ee,me){return ac(Ee?.name,me,Ae=>Ae?.name||"")}function W(Ee,me=[]){let Ae=k(Ee,me),pe=Ae.length>0?{ss:Ae.map(Se=>({p:Se.path,n:Se.name,e:Z(Se.name)}))}:{};return T(Ee.path,Ee.name,pe)}function P(Ee,me=[]){return`${Q(Ee.name,Ee.size)}$${W(Ee,me)}`}function H(Ee,me=[]){return B(Ee).map(Ae=>`${Q(Ae.name,Ae.size)}$${W(Ae,me)}`).join("#")}function j(Ee){return Ee.split("/").filter(Boolean).pop()||"\u6839\u76EE\u5F55"}function q(Ee,me={}){let Ae=s==="/"?Ee:s+Ee;Ae.startsWith("/")||(Ae="/"+Ae);let Se=Ae.split("/").map(Le=>Le===""?"":encodeURIComponent(Le).replace(/%2F/g,"/")).join("/"),Ie=n+Se;if(me.includeCredentialsInUrl&&r.username){let Le=Ie.split("://")[0],we=Ie.split("://")[1];Ie=`${Le}://${encodeURIComponent(r.username)}:${encodeURIComponent(r.password||"")}@${we}`}return{url:Ie,headers:me.includeCredentialsInUrl?{}:D()}}async function Y(Ee,me=""){let Ae=s==="/"?Ee:s+Ee;Ae.startsWith("/")||(Ae="/"+Ae);let Se=Ae.split("/").map(Ge=>Ge===""?"":encodeURIComponent(Ge).replace(/%2F/g,"/")).join("/"),Ie=n+Se,Le=await Xe({method:"GET",url:Ie,headers:D(),responseType:"arraybuffer",transformResponse:[Ge=>Ge],maxContentLength:d,maxBodyLength:d,timeout:15e3}),we=Buffer.from(Le.data).toString("base64");return`data:${Z(me)==="vtt"?"text/vtt":"text/plain"};charset=utf-8;base64,${we}`}async function X(){try{return await K("/",{noCache:!0}),!0}catch(Ee){return console.error("WebDAV\u8FDE\u63A5\u6D4B\u8BD5\u5931\u8D25:",Ee.message),!1}}function ae(Ee){return!Ee||Ee===0?"0B":Ee<1024?Ee+"B":Ee<1024*1024?(Ee/1024).toFixed(2)+"KB":Ee<1024*1024*1024?(Ee/1024/1024).toFixed(2)+"MB":(Ee/1024/1024/1024).toFixed(2)+"GB"}function ne(Ee){if(!Ee)return"";try{let me=new Date(Ee);return me.toLocaleDateString()+" "+me.toLocaleTimeString()}catch{return Ee}}async function se(Ee,me){try{return r.server?await X()?{success:!0,name:r.name,version:f}:{success:!1,error:"\u8FDE\u63A5WebDAV\u670D\u52A1\u5668\u5931\u8D25"}:{success:!1,error:"\u670D\u52A1\u5668\u5730\u5740\u672A\u914D\u7F6E"}}catch(Ae){return{success:!1,error:Ae.message}}}async function J(Ee,me){let Ae=Qr("webdav",arguments[0]||{}),pe=Wr(Ae);if(pe)return pe;let Se={class:[{type_id:T("/"),type_name:r.name}]};return hn(Ae,Se,bt.semiStatic),Se}async function ce(Ee,me){let Ae=Ee.body||{},pe=I(Ae.pg||Ae.page),Se=u,Ie="/";Ae.id&&(Ie=x(Ae.id).p||"/");try{let{folders:Le,files:we,videoFiles:He}=await ee(Ie),Ge=Le.slice().sort((it,vt)=>it.name.localeCompare(vt.name,"zh-CN")),ke=B(He),Qe=new Set(ke.map(it=>it.path)),Rt=we.filter(it=>!Qe.has(it.path)).sort((it,vt)=>it.name.localeCompare(vt.name,"zh-CN")),ze=[...Ge.map(it=>({...it,isFolder:!0}))];ke.length>1&&ze.push({isPlaylist:!0,path:Ie,name:"\u64AD\u653E\u5217\u8868",count:ke.length}),ze.push(...ke.map(it=>({...it,isFolder:!1})),...Rt.map(it=>({...it,isFolder:!1})));let ot=ze.length,lt=Math.ceil(ot/Se)||1,At=(pe-1)*Se,Vt=ze.slice(At,At+Se).map(it=>{if(it.isPlaylist)return{vod_id:T(it.path,p,{t:`${j(it.path)} \u64AD\u653E\u5217\u8868`}),vod_name:"\u64AD\u653E\u5217\u8868",vod_pic:_,vod_remarks:`${it.count}\u4E2A\u89C6\u9891`,vod_tag:"playlist"};if(it.isFolder){let vt=T(it.path);return{vod_id:vt,type_id:vt,type_name:it.name,vod_name:`\u{1F4C1} ${it.name}`,vod_pic:m,vod_remarks:it.lastModified?ne(it.lastModified):"\u6587\u4EF6\u5939",vod_tag:"folder",cate:{id:vt,name:it.name}}}else{let vt=it.isVideo,bs=it.isSubtitle,Un=ae(it.size);return vt&&(Un="\u{1F3AC} "+Un),bs&&(Un="\u{1F4DD} "+Un),{vod_id:T(it.path,it.name,{s:it.size}),vod_name:it.name,vod_pic:vt?g:"",vod_remarks:Un,vod_tag:vt?"video":bs?"subtitle":"file"}}});return{page:pe,pagecount:lt,limit:Se,total:ot,list:Vt}}catch(Le){return console.error("WebDAV\u5206\u7C7B\u5931\u8D25:",Le.message),{page:1,pagecount:1,limit:Se,total:0,list:[],error:Le.message}}}async function ge(Ee,me){let Ae=Ee.body||{};if(!Ae.id)return{list:[]};try{let pe=x(Ae.id),Se=pe.p||"/",Ie=pe.n||"";if(Ie&&z(Ie)){let ze=Se.substring(0,Se.lastIndexOf("/"))||"/",{subtitleFiles:ot}=await ee(ze),lt={name:Ie,path:Se,size:Number(pe.s||0)},At=P(lt,ot);return{list:[{vod_id:Ae.id,vod_name:te(Ie),vod_pic:g,vod_remarks:lt.size>0?ae(lt.size):"",vod_content:`\u5F53\u524D\u76EE\u5F55: ${ze}`,vod_play_from:r.name,vod_play_url:At}]}}if(Ie&&oe(Ie))return{list:[{vod_id:Ae.id,vod_name:Ie,vod_pic:"",vod_remarks:"\u5B57\u5E55\u6587\u4EF6",vod_play_from:r.name,vod_play_url:`${te(Ie)}$${Ae.id}`}]};let Le=Se,{videoFiles:we,subtitleFiles:He}=await ee(Le);if(we.length===0)return{list:[],message:"\u8BE5\u6587\u4EF6\u5939\u4E2D\u6CA1\u6709\u89C6\u9891\u6587\u4EF6"};let Ge=B(we),ke=H(Ge,He),Qe=Ie===p,Rt=Qe?pe.t||`${j(Le)} \u64AD\u653E\u5217\u8868`:j(Le);return{list:[{vod_id:Ae.id||T(Le),vod_name:Rt,vod_pic:Qe?_:g,vod_remarks:we.length>1?`\u5171${we.length}\u4E2A\u89C6\u9891`:"\u5355\u4E2A\u89C6\u9891",vod_content:`\u5F53\u524D\u76EE\u5F55: ${Le}`,vod_play_from:r.name,vod_play_url:ke}]}}catch(pe){return console.error("WebDAV\u8BE6\u60C5\u5931\u8D25:",pe.message),{list:[],error:pe.message}}}async function be(Ee,me){try{return await Xe({method:"HEAD",url:Ee,headers:me,maxRedirects:0,timeout:5e3}),{url:Ee,headers:me}}catch(Ae){let pe=Ae.response?.headers?.location;if(pe)return{url:pe,headers:{}}}try{return await Xe({method:"GET",url:Ee,headers:{...me,Range:"bytes=0-0"},maxRedirects:0,timeout:15e3}),{url:Ee,headers:me}}catch(Ae){let pe=Ae.response?.headers?.location;return pe?{url:pe,headers:{}}:{url:Ee,headers:me}}}async function Te(Ee,me){let Ae=Ee.body||{};if(!Ae.id)return{error:"\u7F3A\u5C11ID\u53C2\u6570"};try{let pe=x(Ae.id),Se=pe.p||"",Ie=pe.n||"";if(Ie&&oe(Ie))return{parse:0,url:await Y(Se,Ie),header:{},contentType:"text/plain; charset=utf-8"};let{url:we,headers:He}=q(Se),Ge=Ie.toLowerCase().endsWith(".m3u8"),ke=`redirect:${we}`,{url:Qe,headers:Rt}=await b(E,"play",ke,o,async()=>be(we,He)),ze={parse:0,url:Qe,header:Rt};Ge&&(ze.extra={format:"m3u8","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"});let ot=Array.isArray(pe.ss)&&pe.ss.length>0?pe.ss.map(lt=>({path:lt?.p||"",name:lt?.n||"\u5916\u6302\u5B57\u5E55",format:lt?.e||lt?.n||"srt"})).filter(lt=>lt.path):pe.sp?[{path:pe.sp,name:pe.sn||"\u5916\u6302\u5B57\u5E55",format:pe.se||pe.sn||"srt"}]:[];if(ot.length>0)try{let lt=[];for(let Vt of ot)try{let it=Z(Vt.format||Vt.name),vt=await Y(Vt.path,it);lt.push({url:vt,name:Vt.name||"\u5916\u6302\u5B57\u5E55",format:it})}catch(it){console.warn("[WebDAV\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",it.message)}let At=de(lt),gr={...ze.extra||{},...At.extra||{}};Object.assign(ze,At),Object.keys(gr).length>0&&(ze.extra=gr)}catch(lt){console.warn("[WebDAV\u64AD\u653E] \u5B57\u5E55\u52A0\u8F7D\u5931\u8D25:",lt.message)}return ze}catch(pe){return console.error("[WebDAV\u64AD\u653E] \u64AD\u653E\u5931\u8D25:",pe.message,pe.stack),{parse:0,url:"",header:{},error:"\u64AD\u653E\u5931\u8D25: "+pe.message}}}async function xe(Ee,me){let Ae=Ee.body||{},pe=(Ae.wd||"").trim(),Se=I(Ae.pg||Ae.page),Ie=l;if(!pe)return{page:1,pagecount:1,limit:Ie,total:0,list:[]};try{let Le=`search:${pe}`,we=await b(A,"search",Le,a,async()=>{let ot=`${n}${s==="/"?"":s}/SEARCH/${encodeURIComponent(pe)}`,At=((await Xe({method:"GET",url:ot,headers:D(),timeout:3e4})).data||"").split(` +`).map(Vt=>Vt.trim()).filter(Boolean),gr=new Map;for(let Vt of At){let it=Vt.lastIndexOf(" "),vt,bs;it!==-1?(vt=Vt.substring(0,it).trim(),bs=Number.parseInt(Vt.substring(it+1).trim(),10)||0):(vt=Vt.trim(),bs=0),vt&&(vt=M(vt),(!gr.has(vt)||bs>0)&&gr.set(vt,{filePath:vt,size:bs}))}return Array.from(gr.values())}),He=we.length,Ge=Math.ceil(He/Ie)||1,ke=(Se-1)*Ie,Rt=we.slice(ke,ke+Ie).map(({filePath:ze,size:ot})=>{let lt=ze.split("/").filter(Boolean).pop()||ze,At=z(lt),gr=oe(lt),Vt=ze.endsWith("/")||ot===0&&!At&&!gr&&!le(lt),it=T(ze,Vt?"":lt,Vt?{}:{s:ot}),vt={vod_id:it,vod_name:Vt?`\u{1F4C1} ${lt}`:lt,vod_pic:Vt?m:At?g:"",vod_remarks:Vt?"\u6587\u4EF6\u5939":`${At?"\u{1F3AC} ":gr?"\u{1F4DD} ":""}${ae(ot)}`,vod_tag:Vt?"folder":At?"video":gr?"subtitle":"file"};return Vt&&(vt.type_id=it,vt.type_name=lt,vt.cate={id:it,name:lt}),vt});return{page:Se,pagecount:Ge,limit:Ie,total:He,list:Rt}}catch(Le){return console.error("[WebDAV\u641C\u7D22] \u5931\u8D25:",Le.message),{page:Se,pagecount:1,limit:Ie,total:0,list:[]}}}async function Fe(Ee,me){let Ae=Ee.body||{},pe={server:Ae.server||r.server,path:Ae.path||r.path,username:Ae.username||r.username,password:Ae.password||r.password},Se=hDe({...pe,id:"test"});try{let Ie=null;if(await Se.api({post(we,He){we==="/init"&&(Ie=He)}}),!Ie)throw new Error("WebDAV init route not registered");let Le=await Ie({body:{}},me);return{code:Le.success?0:500,message:Le.success?"\u8FDE\u63A5\u6210\u529F":Le.error||"\u8FDE\u63A5\u5931\u8D25"}}catch(Ie){return{code:500,message:`\u8FDE\u63A5\u5931\u8D25: ${Ie.message}`}}}return{meta:{key:`webdav_${r.id}`,name:`WebDAV ${r.name}`,type:3,version:f,author:"WebDAV\u589E\u5F3A\u7248",description:"\u652F\u6301\u65E0\u9650\u5C42\u7EA7\u6D4F\u89C8\u3001\u5B57\u5E55\u5339\u914D\u3001\u591A\u65B9\u6848\u64AD\u653E\u7684WebDAV\u9A71\u52A8\u6E90",supportSearch:!0},api:async Ee=>{Ee.post("/init",se),Ee.post("/home",J),Ee.post("/category",ce),Ee.post("/detail",ge),Ee.post("/play",Te),Ee.post("/search",xe),Ee.post("/test-connection",Fe),Ee.post("/debug",async(me,Ae)=>{try{let{path:pe="/"}=me.body||{},Se=await K(pe);return{success:!0,config:{name:r.name,server:r.server,basePath:s,hasAuth:!!r.username},currentPath:pe,totalItems:Se.length,items:Se.slice(0,10),videoCount:Se.filter(Ie=>Ie.isVideo).length,subtitleCount:Se.filter(Ie=>Ie.isSubtitle).length,folderCount:Se.filter(Ie=>Ie.isDir).length}}catch(pe){return{success:!1,error:pe.message,stack:pe.stack}}})}}}Cr();var AVt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",ERn=6e4,yRn=/\.(mp4|mkv|avi|mov|flv|wmv|m3u8|ts|rmvb|webm|m4v|mpg|mpeg|3gp|iso)$/i,vRn="alist_tvbox",SRn="\u{1F3AC} AT",TRn=new Set(["img1.doubanio.com","img2.doubanio.com","img3.doubanio.com"]);function bRn(e,t){return e?e.startsWith("http")?e:e.startsWith("/")?`${t}${e}`:`${t}/${e}`:""}function pDe(e,t){if(!e)return"";let r=bRn(e,t);if(!t||!r.startsWith("http"))return r;try{let n=new URL(r);return TRn.has(n.hostname)?`${t}/images?url=${r}`:r}catch{return r}}function IRn(e,t){if(!Array.isArray(e))return e;for(let r of e)!r||typeof r!="object"||(r.vod_pic?r.vod_pic=pDe(r.vod_pic,t):r.VodPic&&(r.VodPic=pDe(r.VodPic,t)));return e}function EVt(e){let t=e||{},r=String(t.base_url||"http://127.0.0.1:4567").replace(/\/$/,""),n=String(t.token||""),s=String(t.custom_classes||""),i=String(t.file_base_url||r.replace(/:4567(?=\/|$)/,":5678")).replace(/\/$/,""),a=`/vod1/${n}`,o=`/play/${n}`;function c(Q){return String(Q||"").replace(/\/+/g,"/")}function u(Q){let Z=c(Q);return Z.startsWith("/")?Z:`/${Z}`}function l(Q){let Z=String(Q||"");try{return decodeURIComponent(Z.replace(/\+/g,"%20"))}catch{return Z}}function d(Q){let Z=String(Q||"").trim(),de=Z.split("$");if(de.length<3){let B=l(Z);B!==Z&&(Z=B,de=Z.split("$"))}return de.length<3?null:{raw:Z,drive:de[0],path:u(l(de[1])),type:de[2],parts:de}}function f(Q){let Z=String(Q||"").trim(),de=d(Z);return!de||de.type!=="1"?Z:(de.parts[1]=de.path,de.parts.join("$")||Z)}function h(Q){return yRn.test(String(Q||"").split(/[?#]/)[0])}function p(Q){let Z=c(String(Q||"")).split("/").filter(Boolean);return Z[Z.length-1]||"\u64AD\u653E"}function m(Q){return u(Q).split("/").map(Z=>Z?encodeURIComponent(Z):"").join("/")}function g(Q){return Q?`${i}/d${m(Q)}`:""}function _(Q,Z){let de=p(Z);return{vod_id:Q,vod_name:de,vod_pic:"",vod_tag:"file",vod_remarks:"",vod_content:Z,vod_play_from:"\u4E2B\u4ED9\u5973",vod_play_url:`${de}$${g(Z)}`}}function y(Q){return!Q||typeof Q!="object"?!1:Q.vod_tag==="folder"||Q.vod_remarks==="\u6587\u4EF6\u5939"||/folder\.png(?:$|[?#])/i.test(String(Q.vod_pic||""))}function A(Q){if(!Array.isArray(Q))return Q;for(let Z of Q){if(!y(Z))continue;let de=f(Z.vod_id||Z.type_id);de&&(Z.vod_id=de,Z.type_id=de,Z.type_name=Z.type_name||"AList\u76EE\u5F55",Z.cate=Z.cate||{})}return Q}function E(Q){return Q&&Q.list&&(A(Q.list),IRn(Q.list,r)),Q}function v(Q){return Q&&typeof Q=="object"&&!Array.isArray(Q)}function b(Q){if(!Q)return{};if(v(Q))return Q;if(typeof Q=="string")try{let Z=JSON.parse(Q);return v(Z)?Z:{}}catch{return{}}return{}}async function I(Q,Z={}){let de={};for(let[k,W]of Object.entries(Z||{}))W==null||W===""||(de[k]=W);return(await Xe.get(`${r}${Q}`,{params:de,timeout:ERn,headers:{"User-Agent":AVt}})).data}function T(){if(!s)return[];try{let Q=JSON.parse(s);return Array.isArray(Q)?Q:[]}catch{return[]}}function x(Q,Z={}){return JSON.stringify({id:String(Q||"").trim(),meta:Z&&typeof Z=="object"?Z:{}})}function w(Q){try{let Z=JSON.parse(String(Q||""));if(Z&&typeof Z=="object"&&Z.id)return Z}catch{}return{id:String(Q||"").trim(),meta:{}}}function D(Q){if(!Q)return Q;let Z=String(Q).trim().replace(/[?&]sign=(&|$)/,(de,B)=>B==="&"?"&":"");return Z=Z.replace(":5234/",":5678/"),Z}function M(Q){return/^https?:\/\//i.test(String(Q||""))}function L(Q){let Z=D(Q);if(!Z||M(Z))return Z||"";try{return new URL(Z,`${r}/`).toString()}catch{return Z}}function U(Q){if(!Q)return{};if(typeof Q=="string")try{let Z=JSON.parse(Q);return Z&&typeof Z=="object"?Z:{}}catch{return{}}return Q&&typeof Q=="object"?Q:{}}function G(Q={}){return{"User-Agent":AVt,Accept:"*/*","Accept-Encoding":"identity",Connection:"keep-alive",Referer:r,...Q}}async function $(Q,Z={}){if(!M(Q))return{ok:!0};try{let de=await Xe.get(Q,{timeout:15e3,responseType:"arraybuffer",maxRedirects:5,headers:{...Z,Range:"bytes=0-1023"},validateStatus:()=>!0}),B=String(de.headers?.["content-type"]||"").toLowerCase(),k=Number(de.status||0),W=Buffer.isBuffer(de.data)?de.data.toString("utf8",0,Math.min(de.data.length,512)):String(de.data||"").slice(0,512),P=B.includes("json")&&/"(?:code|status)"\s*:\s*(?:4|5)\d\d|require login|failed link|proxy not allowed/i.test(W),H=k===206||B.startsWith("video/")||B.includes("octet-stream")||B.includes("mpegurl")||B.includes("mp2t");return k>=200&&k<400&&H&&!P?{ok:!0,status:k,contentType:B}:k>=200&&k<400&&!P&&!B.includes("json")?{ok:!0,status:k,contentType:B}:{ok:!1,status:k,contentType:B,message:W||`HTTP ${k}`}}catch(de){return{ok:!1,message:de.message||String(de)}}}async function K(Q,Z){return{}}async function ee(Q,Z){try{let de=Q.body.page||1,B=await I(a,{ac:"list",pg:String(de)}),k=T();return k.length>0&&(B.class=k),E(B),B}catch(de){return console.error("[AListTvbox] \u9996\u9875\u83B7\u53D6\u5931\u8D25:",de.message),{class:[],list:[]}}}async function z(Q,Z){try{let de=Q.body||{},B=de.id||de.tid||"",k=de.page||1,W=b(de.extend||de.filters||de.ext),P=Object.keys(W).length>0?JSON.stringify(W):"",H=W.sort||de.sort||"";if(!B)return{page:1,pagecount:0,total:0,list:[]};if(W.dir){let q=String(B).split("$"),Y=c(String(W.dir));q.length>=3&&q[2]==="1"&&(q[1]=u(Y),B=q.join("$"))}let j=await I(a,{ac:"videolist",t:String(f(B)),f:P,sort:H,pg:String(k)});return E(j),j}catch(de){return console.error("[AListTvbox] \u5206\u7C7B\u83B7\u53D6\u5931\u8D25:",de.message),{page:1,pagecount:0,total:0,list:[]}}}async function oe(Q,Z){try{let de=Q.body||{},B=de.wd||"",k=de.page||1;if(!B.trim())return{page:1,pagecount:0,total:0,list:[]};let W=await I(a,{ac:"detail",wd:B,pg:String(k)});return E(W),W}catch(de){return console.error("[AListTvbox] \u641C\u7D22\u5931\u8D25:",de.message),{page:1,pagecount:0,total:0,list:[]}}}async function le(Q,Z){try{let de=Q.body||{},B=w(de.id),k=f(B.id||"");if(!k)return{list:[]};let W=await I(a,{ac:"detail",ids:k});if(W&&Array.isArray(W.list)&&W.list.length===0){let P=d(k);P?.type==="1"&&h(P.path)&&(W.list=[_(k,P.path)])}if(W&&W.list){A(W.list);for(let P of W.list)if(P.vod_pic&&(P.vod_pic=pDe(P.vod_pic,r)),P.vod_play_from&&P.vod_play_url){let H=P.vod_play_url.split("$$$").map(q=>q.trim()).filter(Boolean),j=[];for(let q=0;q<H.length;q++){let Y=H[q].split("#").map(ae=>ae.trim()).filter(Boolean),X=[];for(let ae of Y)if(ae.split("$").length>=2)X.push(ae);else if(M(ae)){let se=P.vod_name||P.name||`\u7B2C${X.length+1}\u96C6`;X.push(`${se}$${ae}`)}else X.push(ae);j.push(X.join("#"))}P.vod_play_url=j.join("$$$")}}return W||{list:[]}}catch(de){let B=Q.body||{},k=w(B.id),W=f(k.id||""),P=d(W);return P?.type==="1"&&h(P.path)?{list:[_(W,P.path)]}:(console.error("[AListTvbox] \u8BE6\u60C5\u83B7\u53D6\u5931\u8D25:",de.message),{list:[]})}}async function te(Q,Z){try{let de=Q.body||{},k=w(de.id).id||"";if(!k)return{parse:0,url:"",header:{}};if(M(k)){let X=L(k),ae=G(),ne=await $(X,ae);return ne.ok?{parse:0,url:X,header:ae}:{parse:0,url:"",header:{},msg:`AListTvbox \u8FD4\u56DE\u7684\u76F4\u94FE\u4E0D\u53EF\u64AD\u653E\uFF1A${ne.message||ne.status||"unknown"}`}}let W=d(k);if(W?.type==="1"&&h(W.path)){let X=g(W.path),ae=G(),ne=await $(X,ae);return ne.ok?{parse:0,url:X,header:ae}:{parse:0,url:"",header:{},msg:`AListTvbox \u8DEF\u5F84\u76F4\u94FE\u4E0D\u53EF\u64AD\u653E\uFF1A${ne.message||ne.status||"unknown"}`}}let P=await I(o,{id:k}),H=typeof P=="string"?P:P?.url||P?.playUrl||P?.play_url||"",j=L(H),q=G(U(P?.header));if(!j)return{parse:0,url:"",header:{},msg:P?.msg||P?.message||"AListTvbox \u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740"};let Y=await $(j,q);return Y.ok?{parse:0,url:j,header:q}:{parse:0,url:"",header:{},msg:`AListTvbox \u64AD\u653E\u5730\u5740\u4E0D\u53EF\u7528\uFF1A${Y.message||Y.status||"unknown"}`}}catch(de){return console.error("[AListTvbox] \u64AD\u653E\u5730\u5740\u83B7\u53D6\u5931\u8D25:",de.message),{parse:0,url:"",header:{}}}}return{meta:{key:vRn,name:SRn,type:3,version:"1.0.0",description:"AListTvbox",supportSearch:!0},api:async Q=>{Q.post("/init",K),Q.post("/home",ee),Q.post("/category",z),Q.post("/detail",le),Q.post("/play",te),Q.post("/search",oe)}}}function ki(e){return async()=>(await e()).default}function wer(){return String(process.env.ONLY_SPIDER_KEYS||"").split(",").map(e=>e.trim()).filter(Boolean)}var Cer=[{match:["douban"],load:ki(()=>Promise.resolve().then(()=>(vVt(),yVt)))},{match:["zhuiju"],load:ki(()=>Promise.resolve().then(()=>(OVt(),NVt)))},{match:["zhuijujuhe"],load:ki(()=>Promise.resolve().then(()=>(YVt(),zVt)))},{match:["pansou"],load:ki(()=>Promise.resolve().then(()=>(a7t(),i7t)))},{match:["tgsou"],load:ki(()=>Promise.resolve().then(()=>(p7t(),h7t)))},{match:["bili_all"],load:ki(()=>Promise.resolve().then(()=>(OW(),iPe)))},{match:["bili_official","bili\u5B98"],load:ki(()=>Promise.resolve().then(()=>(yjt(),Ejt)))},{match:["wanoujuhe","\u73A9\u5076\u805A\u5408"],load:ki(()=>Promise.resolve().then(()=>(bKt(),TKt)))},{match:["sharemount"],load:ki(()=>Promise.resolve().then(()=>(NYt(),wYt)))},{match:["mycloud"],load:ki(()=>Promise.resolve().then(()=>(sQt(),nQt)))},{match:["panlian"],load:ki(()=>Promise.resolve().then(()=>(lMe(),EQt)))},{match:["filejin"],load:ki(()=>Promise.resolve().then(()=>(vX(),TMe)))},{match:["pan1"],load:async()=>(await Promise.resolve().then(()=>(fWt(),dWt))).default()},{match:["guangyaqsxy"],load:async()=>(await Promise.resolve().then(()=>(IWt(),bWt))).default()},{match:["jying"],load:async()=>(await Promise.resolve().then(()=>(ZWt(),JWt))).default()},{match:["tgchannel"],load:ki(()=>Promise.resolve().then(()=>(NXt(),wXt)))},{match:["88kanqiu"],load:ki(()=>Promise.resolve().then(()=>(HXt(),qXt)))},{match:["live"],load:ki(()=>Promise.resolve().then(()=>(YXt(),zXt)))},{match:["guazi"],load:ki(()=>Promise.resolve().then(()=>(aZt(),iZt)))},{match:["muxi"],load:ki(()=>Promise.resolve().then(()=>(qZt(),$Zt)))},{match:["alist_tvbox"],load:e=>c8n(e,"alist_tvbox",EVt,"AListTvbox")},{match:["dudb"],load:ki(()=>Promise.resolve().then(()=>(Aer(),_er)))},{match:["js"],load:ki(()=>Promise.resolve().then(()=>(yer(),Eer)))},{match:["baseset"],load:ki(()=>Promise.resolve().then(()=>(ber(),Ter)))},{match:["push"],load:ki(()=>Promise.resolve().then(()=>(Rer(),Ier)))}];async function a8n(e){let t=wer(),r=t.length>0?new Set(t):null,n=r?Cer.filter(s=>s.match.some(i=>r.has(i))):Cer;return(await Promise.all(n.map(s=>s.load(e)))).filter(Boolean)}async function Ner(){return await ki(()=>Promise.resolve().then(()=>(OW(),iPe)))()}var t4e="20260722",o8n={meta:{key:t4e,name:t4e,type:0},api:async e=>{e.get("/",async()=>({code:0,message:`This is the ${t4e} spider - always last in the list`,timestamp:new Date().toISOString(),version:"1.0.0"})),e.get("/home",async()=>({code:0,list:[]})),e.get("/category",async()=>({code:0,list:[]})),e.get("/detail",async()=>({code:0,list:[]})),e.get("/play",async()=>({code:0,url:"",header:{},extra:{}})),e.get("/search",async()=>({code:0,list:[]}))},check:()=>{}};function xer(e){return`${e}_auto_${Date.now()}_${Math.random().toString(36).slice(2)}`}async function r4e(e,t,r,n){try{let s=await e.db.getObjectDefault(`/config/${t}`,[]);if(Array.isArray(s)&&s.length>0)return s.filter(a=>a&&a.enabled!==!1).map(a=>(a.id||(a.id=xer(t)),r(a)));let i=e.config?.[t]||[];if(i.length>0){let a=i.map(o=>(o.id||(o.id=xer(t)),o));return await e.db.push(`/config/${t}`,a),a.filter(o=>o.enabled!==!1).map(r)}}catch(s){console.error(`\u52A0\u8F7D ${n} \u914D\u7F6E\u5931\u8D25:`,s)}return[]}async function c8n(e,t,r,n){try{let s=await e.db.getObjectDefault(`/config/${t}`,null);if(Array.isArray(s)&&(s=s[0]||null,s?await e.db.push(`/config/${t}`,s):await e.db.delete(`/config/${t}`)),s&&typeof s=="object")return r(s);let i=e.config?.[t];if(i&&typeof i=="object"&&!Array.isArray(i))return await e.db.push(`/config/${t}`,i),r(i)}catch(s){console.error(`\u52A0\u8F7D ${n} \u914D\u7F6E\u5931\u8D25:`,s)}return null}async function jJ(e){let t=await a8n(e);t.push(...await r4e(e,"emby",k8t,"Emby")),t.push(...await r4e(e,"alist",K8t,"Alist")),t.push(...await r4e(e,"webdav",hDe,"WebDAV")),(await KSe(e)).forEach(o=>t.push(eTe(o.name,o.address))),(await tTe(e)).forEach(o=>t.push(cTe(o.name,o.address))),(await Awt(e)).filter(o=>o&&o.enabled!==!1).forEach(o=>t.push(iwe(o))),t.push(o8n);let i=wer();if(i.length===0)return t;let a=new Set(i);return t.filter(o=>a.has(String(o?.meta?.key||"").trim()))}var KJ=async e=>(await e.db.getObjectDefault("/sites",{}))?.list||e.config.sites.list,u8n=async(e,t)=>{await e.db.push("/sites/list",t)},l8n=async e=>{await e.db.delete("/sites/list")};async function n4e(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await KJ(t.server)})}),e.put("/list",async(t,r)=>{await u8n(t.server,t.body.list),r.send({code:0})}),e.delete("/list",async(t,r)=>{await l8n(t.server),r.send({code:0})})}var d8n="/spider";function f8n(e,t){return e<10?t.video.sites:e<20?t.read.sites:e<30?t.comic.sites:e<40?t.music.sites:e<50?t.pan.sites:null}async function Oer(e){let t={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:e.config?.color||[]};return(await jJ(e)).forEach(n=>{let s=Object.assign({},n.meta);s.api=d8n+"/"+s.key+"/"+s.type,s.key="nodejs_"+s.key;let i=f8n(n.meta.type,t);i&&i.push(s)}),t}function Der(e,t,{includeDisabled:r}){let n={};e.forEach(a=>n[a.key]=a);let s={},i=[];return t.forEach(a=>{let o=a.key;if(s[o]=!0,!n[o])return;let c={...n[o],name:a.name||n[o].name};r?i.push({...c,enable:a.enable,t4:a.t4,cms:a.cms}):a.enable&&i.push(c)}),e.forEach(a=>{s[a.key]||(r?i.push({...a,enable:!0,t4:a.t4,cms:a.cms}):i.push(a))}),i}function s4e(e,{key:t,label:r,allowDelete:n}){e.get(`/website/${t}/config`,async s=>{try{let i=await s.server.db.getObjectDefault(`/config/${t}`,[]);return(!i||i.length===0)&&s.server.config?.[t]&&(i=s.server.config[t]),{code:0,data:i}}catch(i){return console.error(`\u83B7\u53D6 ${r} \u914D\u7F6E\u5931\u8D25:`,i),{code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"}}}),e.put(`/website/${t}/config`,async(s,i)=>{try{await s.server.db.push(`/config/${t}`,s.body),i.send({code:0,message:`${r}\u914D\u7F6E\u4FDD\u5B58\u6210\u529F`})}catch(a){i.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+a.message})}}),n&&e.delete(`/website/${t}/config`,async(s,i)=>{try{await s.server.db.delete(`/config/${t}`),i.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u914D\u7F6E"})}catch(a){i.send({code:1,message:a.message})}})}function h8n(e,{key:t,label:r}){e.get(`/website/${t}/config`,async n=>{try{let s=await n.server.db.getObjectDefault(`/config/${t}`,null);if(Array.isArray(s)&&(s=s[0]||null),!s||typeof s!="object"){let i=n.server.config?.[t];i&&typeof i=="object"&&!Array.isArray(i)?s=i:s={}}return{code:0,data:s}}catch(s){return console.error(`\u83B7\u53D6 ${r} \u914D\u7F6E\u5931\u8D25:`,s),{code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"}}}),e.put(`/website/${t}/config`,async(n,s)=>{try{let i=n.body||{},a={base_url:String(i.base_url||"").trim(),token:String(i.token||"").trim(),custom_classes:String(i.custom_classes||"").trim()};await n.server.db.push(`/config/${t}`,a),s.send({code:0,message:`${r}\u914D\u7F6E\u4FDD\u5B58\u6210\u529F`})}catch(i){s.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+i.message})}}),e.delete(`/website/${t}/config`,async(n,s)=>{try{await n.server.db.delete(`/config/${t}`),s.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u914D\u7F6E"})}catch(i){s.send({code:1,message:i.message})}})}async function i4e(e){e.get("/check",async(t,r)=>{r.send({run:!e.stop,version:"1.0.0",timestamp:new Date().toISOString()})}),e.get("/config",async(t,r)=>{try{let n=await Oer(t.server),s=await KJ(t.server);n.video.sites=Der(n.video.sites,s,{includeDisabled:!1}),n.video.danmuSearchUrl=`http://127.0.0.1:${t.server.address().port}/website/danmu/fe`,n.video.internalDanmuUiUrl=`http://127.0.0.1:${t.server.address().port}/internal-danmu/ui`,r.send(n)}catch(n){console.error("\u83B7\u53D6\u914D\u7F6E\u5931\u8D25:",n),r.code(500).send({error:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.get("/full-config",async(t,r)=>{try{let n=await Oer(t.server),s=await KJ(t.server);n.video.sites=Der(n.video.sites,s,{includeDisabled:!0}),r.send(n)}catch(n){console.error("\u83B7\u53D6\u5B8C\u6574\u914D\u7F6E\u5931\u8D25:",n),r.code(500).send({error:"\u83B7\u53D6\u5B8C\u6574\u914D\u7F6E\u5931\u8D25"})}}),s4e(e,{key:"emby",label:"Emby",allowDelete:!1}),s4e(e,{key:"alist",label:"Alist",allowDelete:!0}),s4e(e,{key:"webdav",label:"WebDAV",allowDelete:!0}),h8n(e,{key:"alist_tvbox",label:"AListTvbox"})}vr();GH();function Per(e){if(!e)return"";for(let t of[e,(()=>{try{return decodeURIComponent(e)}catch{return""}})()])if(t)try{let r=JSON.parse(t);if(r&&typeof r=="object")return r.url||r.base_url||r.baseUrl||r.backup_url?.[0]||r.backupUrl?.[0]||""}catch{}return""}async function p8n(e,t){try{let{do:r,url:n,referer:s,aid:i,cid:a,qn:o,video_url:c,audio_url:u,video_track:l,audio_track:d,mode:f,duration:h}=e.query;if(!r)return t.code(400).send("Invalid parameters");if(r==="mpd"){let p=await Ner(),m=c?decodeURIComponent(c):"",g=u?decodeURIComponent(u):"",_=Per(l),y=Per(d);for(let I of[m,g,_,y]){if(!I)continue;let T=await pT(I);if(!T.ok)return t.code(400).send(`Forbidden upstream: ${T.reason}`)}let{proxy:A}=p,[E,v,b]=await A({do:r,aid:i,cid:a,qn:o,video_url:m,audio_url:g,video_track:l,audio_track:d,mode:f||"dash",duration:h||0});return t.header("Content-Type",v).header("Access-Control-Allow-Origin","*").header("Access-Control-Expose-Headers","Content-Type,Content-Length").code(E),t.send(b)}if(r==="image"){if(!n)return t.code(400).send("missing url");let p;try{p=decodeURIComponent(n)}catch{return t.code(400).send("invalid url encoding")}let m=await pT(p);if(!m.ok)return t.code(403).send(`Forbidden upstream: ${m.reason}`);let g={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Accept:"image/*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};if(s)try{g.Referer=decodeURIComponent(s)}catch{}let _=await ye.get(p,{responseType:"stream",timeout:1e4,maxRedirects:3,headers:g});return _.headers["content-type"]&&t.header("Content-Type",_.headers["content-type"]),_.headers["content-length"]&&t.header("Content-Length",_.headers["content-length"]),_.headers["cache-control"]&&t.header("Cache-Control",_.headers["cache-control"]),t.send(_.data)}return t.code(400).send("Unsupported action")}catch(r){return console.error("\u4EE3\u7406\u9519\u8BEF:",r),t.code(500).send("Proxy error: "+r.message)}}async function a4e(e){e.get("/proxy",p8n)}vr();var Nc=Ne(require("fs"),1),$N=Ne(require("path"),1);Wt();jd();A0();Nm();$Ce();var t1=fx("router.danmu.video",{maxSize:100,ttl:10*60*1e3}),n1=fx("router.danmu.episodeIndex",{maxSize:1e4,ttl:10*60*1e3}),L_=new Map,m8n=8,g8n=800,_8n=400,Mer=12*1e3,c4e=new Bx(200),Ler=setInterval(()=>{let e=Date.now();for(let[t,r]of L_.entries())e-(r?.createdAt||0)>Mer*5&&L_.delete(t)},30*1e3);typeof Ler?.unref=="function"&&Ler.unref();var u4e={detailRequests:0,playRequests:0,detailCacheStores:0,episodeMappingOverwriteCount:0,episodeIndexHitCount:0,episodeIndexMissCount:0,videoCacheHitCount:0,videoCacheMissCount:0,mappingRebuildCount:0,fallbackUsedCount:0,fallbackSuccessCount:0,fallbackFailedCount:0,danmakuInjectedCount:0,danmakuOverwriteCount:0,invalidTitleSkipCount:0,blacklistSkipCount:0,autoPushDisabledSkipCount:0,proxyRouteSkipCount:0,replySentSkipCount:0,jsonParseErrorCount:0};function si(e,t=1){Object.prototype.hasOwnProperty.call(u4e,e)&&(u4e[e]+=t)}function Yy(e){return String(e?.url||"").match(/\/spider\/([^\/]+)\/\d+\/(detail|play)/)?.[1]||"unknown"}function d4e(e){return String(e?.url||"").endsWith("/detail")?"detail":String(e?.url||"").endsWith("/play")?"play":"unknown"}function ker(e,t,r){return`${Yy(e)}:${t}_${r}`}function FN(e,t=""){if(!YJ(e))return"";let r=e?.body||{};return`push:${String(r?.url||r?.vod_id||r?.id||r?.wd||t||"").trim()}`}function l4e(e,t=""){let r=`${String(e?.body?.flag||"")}_${String(e?.body?.id||"")}`,n=FN(e,t);return n?`${n}:${r}`:r}function GJ(e,t=""){let r=`${String(e?.body?.flag||"")}_${String(e?.body?.id||"")}`,n=FN(e,t);return n?`${n}:${r}`:r}function A8n(e,t=d4e(e)){let r=Yy(e),n=String(e?.body?.flag||""),s=String(e?.body?.id||"");return`${r}:${n}:${s}:${t}`}function E8n(e={}){c4e.push({ts:new Date().toISOString(),...e})}function os(e,t={}){let r=t.phase||d4e(e);E8n({traceKey:A8n(e,r),spiderKey:Yy(e),flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),phase:r,status:t.status||"ok",reason:t.reason||"",...t})}function Ber(){let e=c4e.recent(50),t=e.reduce((s,i)=>{let a=String(i?.status||"unknown");return s[a]=(s[a]||0)+1,s},{}),r=e.reduce((s,i)=>{let a=String(i?.reason||i?.action||"unknown");return s[a]=(s[a]||0)+1,s},{}),n=Object.entries(r).sort((s,i)=>i[1]-s[1]).slice(0,10).map(([s,i])=>({reason:s,count:i}));return{cache:{videoCacheSize:t1.size,episodeIndexCacheSize:n1.size,autoPushContextSize:t9(),pendingAutoPushTaskCount:L_.size},counters:{...u4e},events:{totalBuffered:c4e.length,recentCount:e.length,statusBuckets:t,topReasons:n},recentEvents:e}}function Uer(e=""){let t=String(e||"").trim();return t?/^(https?:\/\/|magnet:\?|ed2k:\/\/)/i.test(t)||/(?:pan\.quark\.cn|pan\.baidu\.com|aliyundrive\.com|alipan\.com|115\.com|123pan\.com|cloud\.189\.cn|drive\.uc\.cn)/i.test(t):!1}function r1(e=""){let t=String(e||"").trim();return!!(!t||t==="undefined"||t==="null"||Uer(t))}function zJ(e=0){return new Promise(t=>setTimeout(t,e))}async function y8n({maxAttempts:e=1,initialDelayMs:t=0,intervalMs:r=0}={}){let n=null,s=0,i=Date.now();t>0&&await zJ(t);for(let a=1;a<=e;a++){s=a;try{let o=await tn.getPlayInfo(),c=String(o?.title||"").trim();if(!r1(c))return{title:c,attempts:s,durationMs:Date.now()-i};n=new Error(`empty title on attempt ${a}`)}catch(o){n=o}a<e&&r>0&&await zJ(r)}throw Object.assign(n||new Error("play title unavailable"),{attempts:s,durationMs:Date.now()-i})}function YJ(e){return Yy(e)==="push"}function o4e(e="",t=""){let r=String(e||"").trim(),n=String(t||"").trim();return!n||!r||r===n||Uer(r)?!1:Il(r)!==Il(n)}function v8n(e,t={},r=null){let n=String(e?.body?.flag||"").trim(),s=String(e?.body?.id||"").trim(),i=String(t?.flag||"").trim(),a=String(t?.id||"").trim(),o=r||hE(),c=String(o?.flag||"").trim(),u=String(o?.id||"").trim();return i&&a?i===n&&a===s:c&&u?c===n&&u===s:!1}function La(e,t,r={}){if(!process.env.DEBUG_PUSH_DANMU)return;let n={stage:t,spiderKey:Yy(e),isPushSpider:YJ(e),flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),url:String(e?.url||""),...r};De.info(`[PUSH_DANMU_TRACE] ${JSON.stringify(n)}`)}function Fer(e,t,r,n="xml"){let s=aa(n);return`http://127.0.0.1:${e}/danmu-proxy?name=${encodeURIComponent(t)}&episodeNumber=${encodeURIComponent(r)}&format=${encodeURIComponent(s)}`}function $er(e,t,r){let n=GJ(e,t),s=Il(t);return Art(n,{rawTitle:t,autoKey:s,episodeNumber:r.episodeNumber}),De.info(`[DanmuAutoPushFlow] \u5DF2\u4FDD\u5B58\u81EA\u52A8\u63A8\u9001\u4E0A\u4E0B\u6587: contextKey="${n}", autoKey="${s}"`),La(e,"auto_push_context_saved",{contextKey:n,autoKey:s,rawTitle:t,episodeNumber:r?.episodeNumber||""}),{contextKey:n,autoKey:s}}function S8n(e,t="push_detail_reset"){if(Yy(e)!=="push")return;let n=FN(e),s=0;for(let[o]of t1.entries())String(o).startsWith("video_push_")&&(t1.delete(o),s++);let i=0;for(let[o]of n1.entries())String(o).startsWith("push:")&&(n1.delete(o),i++);let a=0;for(let[o]of L_.entries())(!n||String(o||"").startsWith(n))&&(L_.delete(o),a++);La(e,"push_state_cleared",{reason:t,pushSessionKey:n,clearedVideoCache:s,clearedEpisodeIndex:i,clearedPendingTasks:a})}function T8n(e,{episodeKey:t,vodName:r,episodeInfo:n,port:s,playContextSnapshot:i=null,danmuFormat:a="xml"}){let o=l4e(e,r),c=YJ(e),u=i?{...i}:null,l=String(u?.title||n?.name||r||"").trim(),d=Date.now(),f=`${o}:${d}:${Math.random().toString(36).slice(2,8)}`;La(e,"deferred_schedule_enter",{taskKey:o,taskToken:f,episodeKey:t,pushSessionKey:FN(e,r),autoPushContextKey:GJ(e,r),vodName:r,episodeName:n?.episodeName||"",episodeNumber:n?.episodeNumber||"",port:s,snapshotTitle:l,snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||"")}),L_.set(o,{token:f,createdAt:d,episodeKey:t,vodName:r});let h=()=>{let m=L_.get(o);return!m||m.token!==f||Date.now()-d>Mer},p=(async()=>{si("fallbackUsedCount");try{let m="",g=null,_="",y=m8n,A=g8n,E=_8n;A>0&&await zJ(A);for(let T=1;T<=y;T++){if(h()){os(e,{action:"deferred_push_cancelled",status:"skip",reason:"task_replaced_or_expired",episodeKey:t,vodName:r,taskKey:o,taskToken:f,attempt:T});return}try{let x=await tn.getPlayInfo(),w=String(x?.title||"").trim(),D=v8n(e,x,u),M=hE();if(La(e,"deferred_getPlayInfo_candidate",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,candidateTitle:w,snapshotTitle:l,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),playInfoMatched:D,localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),localEpisodeKey:String(M?.episodeKey||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||"")}),!r1(w))if(c&&!D){if(!r1(l)&&!o4e(r,l)){m=l,g={attempts:T,durationMs:A+Math.max(0,T-1)*E},_="snapshot_title_on_playinfo_mismatch",La(e,"deferred_getPlayInfo_accept",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,acceptedTitle:m,acceptReason:_,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l});break}La(e,"deferred_getPlayInfo_reject_stale",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,candidateTitle:w,rejectReason:"playinfo_mismatch",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l}),os(e,{action:"deferred_push_reject_stale_title",status:"skip",reason:"playinfo_mismatch",episodeKey:t,vodName:r,taskKey:o,rawTitle:w,finalTitle:w,fallbackUsed:!0,fallbackAttempts:T})}else if(c&&o4e(r,w)){if(!r1(l)&&!o4e(r,l)){m=l,g={attempts:T,durationMs:A+Math.max(0,T-1)*E},_="snapshot_title_on_stale_playinfo",La(e,"deferred_getPlayInfo_accept",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,acceptedTitle:m,acceptReason:_,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l});break}La(e,"deferred_getPlayInfo_reject_stale",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,candidateTitle:w,rejectReason:"stale_title",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(M||{}),localFlag:String(M?.flag||""),localId:String(M?.id||""),localTitle:String(M?.title||""),snapshotContextRaw:JSON.stringify(u||{}),snapshotFlag:String(u?.flag||""),snapshotId:String(u?.id||""),snapshotTitle:l}),os(e,{action:"deferred_push_reject_stale_title",status:"skip",reason:"stale_title",episodeKey:t,vodName:r,taskKey:o,rawTitle:w,finalTitle:w,fallbackUsed:!0,fallbackAttempts:T})}else{let L=hE();m=w||String(L?.title||"").trim(),g={attempts:T,durationMs:A+Math.max(0,T-1)*E},_=w?"playInfo_title":"local_context_title",La(e,"deferred_getPlayInfo_accept",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,acceptedTitle:m,acceptReason:_,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),playInfoRaw:x?JSON.stringify(x):"",playInfoFlag:String(x?.flag||""),playInfoId:String(x?.id||""),localContextRaw:JSON.stringify(L||{}),localFlag:String(L?.flag||""),localId:String(L?.id||""),localTitle:String(L?.title||"")});break}}catch(x){let w=hE();La(e,"deferred_getPlayInfo_error",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",attempt:T,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),localContextRaw:JSON.stringify(w||{}),localFlag:String(w?.flag||""),localId:String(w?.id||""),localTitle:String(w?.title||""),error:x?.message||String(x||"")})}T<y&&E>0&&await zJ(E)}if(!m){let T=hE();throw La(e,"deferred_getPlayInfo_exhausted",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",maxAttempts:y,requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||""),localContextRaw:JSON.stringify(T||{}),localFlag:String(T?.flag||""),localId:String(T?.id||""),localTitle:String(T?.title||""),exhaustedReason:"no_acceptable_title_after_max_attempts"}),Object.assign(new Error(`empty title on attempt ${y}`),{attempts:y,durationMs:A+Math.max(0,y-1)*E})}if(h()){os(e,{action:"deferred_push_cancelled",status:"skip",reason:"task_replaced_before_push",episodeKey:t,vodName:r,taskKey:o,taskToken:f});return}let v=String(m||"").trim();n.name=v;let b=Fer(s,v,n.episodeNumber,a);La(e,"deferred_push_ready",{taskKey:o,taskToken:f,episodeKey:t,vodName:r,episodeNumber:n?.episodeNumber||"",finalName:v,acceptedSource:_,danmuProxyUrl:b,danmuFormat:a}),await tn.pushDanmu(b),si("fallbackSuccessCount");let{autoKey:I}=$er(e,v,n);De.info(`[DanmuAutoPushFlow] \u540E\u53F0\u8865\u63A8\u5F39\u5E55\u6210\u529F: vodName="${r}", rawTitle="${v}", episodeNumber="${n.episodeNumber}", format="${a}", taskKey="${o}", danmuProxyUrl="${b}"`),os(e,{action:"deferred_push_success",reason:"deferred_push_success",episodeKey:t,vodName:r,rawTitle:v,finalTitle:v,episodeNumber:n.episodeNumber,autoKey:I,taskKey:o,danmuProxyUrl:b,acceptedSource:_,fallbackUsed:!0,fallbackAttempts:g?.attempts||0,fallbackDurationMs:g?.durationMs||0})}catch(m){si("fallbackFailedCount"),De.error("[AutoPush] \u540E\u53F0\u8865\u63A8\u83B7\u53D6\u6807\u9898\u5931\u8D25:",m.message),os(e,{action:"deferred_push_failed",status:"error",reason:"deferred_push_failed",episodeKey:t,vodName:r,error:m.message,taskKey:o,fallbackUsed:!0,fallbackAttempts:m.attempts||0,fallbackDurationMs:m.durationMs||0,fallbackError:m.message})}finally{L_.get(o)?.token===f&&L_.delete(o)}})();os(e,{action:"deferred_push_scheduled",reason:"deferred_push_scheduled",episodeKey:t,vodName:r,taskKey:o,taskToken:f,episodeNumber:n.episodeNumber})}function b8n(e,t){let r;try{r=JSON.parse(t)}catch(u){return si("jsonParseErrorCount"),os(e,{action:"detail_skip_json_parse_failed",status:"error",reason:"json_parse_failed",error:u.message}),t}let n=r.list?.[0];if(!n)return os(e,{action:"detail_skip_missing_vodInfo",status:"skip",reason:"missing_vodInfo"}),t;if(!n.vod_play_from||!n.vod_play_url)return os(e,{action:"detail_skip_missing_play_fields",status:"skip",reason:"missing_play_fields",vodName:n.vod_name}),t;let s=n.vod_name,i=Yy(e);i==="push"&&S8n(e,"push_detail_enter"),La(e,"detail_enter",{vodName:s,playFrom:String(n.vod_play_from||""),playUrlPreview:String(n.vod_play_url||"").slice(0,300)});let a=`video_${i}_${s}`,o=new Map,c=n.vod_play_from.split("$$$")||[];return n.vod_play_url.split("$$$").filter(Boolean).forEach((u,l)=>{u.split("#").forEach(d=>{let[f,h]=d.split("$"),p=ker(e,c[l],h),m=n1.get(p);m&&m!==s&&(si("episodeMappingOverwriteCount"),De.info(`[DanmuAutoPushFlow] \u8986\u76D6\u65E7\u5267\u96C6\u6620\u5C04: episodeKey="${p}", from="${m}", to="${s}"`),os(e,{action:"episode_mapping_overwrite",reason:"mapping_overwrite",episodeKey:p,vodName:s,previousVodName:m,videoCacheKey:a,mappingOverwrite:!0})),o.set(p,{name:s,episodeNumber:pR(f),episodeName:f}),La(e,"detail_episode_mapped",{vodName:s,episodeKey:p,line:c[l],episodeName:f,episodeNumber:pR(f),rawId:h}),n1.set(p,s)})}),t1.set(a,o),si("detailCacheStores"),De.info(`[DanmuAutoPushFlow] \u5DF2\u7F13\u5B58\u8BE6\u60C5\u5267\u96C6\u6620\u5C04: spiderKey="${i}", vodName="${s}", episodeCount=${o.size}`),os(e,{action:"detail_cache_store",reason:"detail_cache_store",vodName:s,videoCacheKey:a,episodeCount:o.size}),t}async function I8n(e,t,r="xml"){let n;try{n=JSON.parse(t)}catch(g){return si("jsonParseErrorCount"),os(e,{action:"play_skip_json_parse_failed",status:"error",reason:"json_parse_failed",error:g.message}),t}if(!(n.url||n.url?.length||n.urls?.length))return os(e,{action:"play_skip_no_media_url",status:"skip",reason:"no_media_url"}),t;let s=ker(e,e.body.flag,e.body.id),i=n1.get(s),a=Yy(e);if(La(e,"play_enter",{episodeKey:s,taskKey:l4e(e,i||""),pushSessionKey:FN(e,i||""),autoPushContextKey:GJ(e,i||""),initialVodName:i||"",requestFlag:String(e?.body?.flag||""),requestId:String(e?.body?.id||"")}),i){si("episodeIndexHitCount");let g=t1.get(`video_${a}_${i}`);g?.has(s)&&si("videoCacheHitCount"),g?.has(s)||(De.warn(`[AutoPush] \u53D1\u73B0\u5931\u6548\u5267\u96C6\u6620\u5C04\uFF0C\u51C6\u5907\u91CD\u67E5: episodeKey=${s}, vodName=${i}`),i=null)}else si("episodeIndexMissCount");if(!i){let g=!1;for(let[_,y]of t1.entries())if(String(_).startsWith(`video_${a}_`)&&y.has(s)){i=String(_).slice(`video_${a}_`.length),n1.set(s,i),g=!0,si("mappingRebuildCount"),si("videoCacheHitCount"),De.info(`[DanmuAutoPushFlow] \u901A\u8FC7\u89C6\u9891\u7F13\u5B58\u91CD\u5EFA\u5267\u96C6\u6620\u5C04: episodeKey="${s}", vodName="${i}"`),os(e,{action:"episode_mapping_rebuild",reason:"mapping_rebuild",episodeKey:s,vodName:i,videoCacheKey:_,mappingRebuilt:!0});break}g||si("videoCacheMissCount")}if(!i)return De.warn(`[AutoPush] \u672A\u627E\u5230 vodName: episodeKey=${s}`),os(e,{action:"play_skip_missing_vodName",status:"skip",reason:"missing_vodName",episodeKey:s}),t;let o=`video_${a}_${i}`,c=t1.get(o);if(!c)return si("videoCacheMissCount"),De.warn(`[AutoPush] \u89C6\u9891\u7F13\u5B58\u7F3A\u5931: vodName=${i}, videoCacheKey=${o}`),os(e,{action:"play_skip_missing_videoCache",status:"skip",reason:"missing_videoCache",episodeKey:s,vodName:i,videoCacheKey:o}),t;let u=c.get(s);if(!u)return De.warn(`[AutoPush] \u672A\u627E\u5230 episodeInfo: episodeKey=${s}, vodName=${i}`),os(e,{action:"play_skip_missing_episodeInfo",status:"skip",reason:"missing_episodeInfo",episodeKey:s,vodName:i}),t;La(e,"play_episode_resolved",{episodeKey:s,vodName:i,episodeName:u?.episodeName||"",episodeNumber:u?.episodeNumber||"",cachedName:u?.name||""});let l=jxt({spiderKey:a,flag:String(e?.body?.flag||""),id:String(e?.body?.id||""),episodeKey:s,vodName:String(i||""),episodeName:String(u?.episodeName||""),episodeNumber:String(u?.episodeNumber||""),title:String(u?.name||i||"")});La(e,"play_context_updated",{episodeKey:s,taskKey:l4e(e,i||""),pushSessionKey:FN(e,i||""),autoPushContextKey:GJ(e,i||""),vodName:i,localFlag:String(e?.body?.flag||""),localId:String(e?.body?.id||""),localTitle:String(u?.name||i||"")});let d=String(u.name||"").trim(),f=YJ(e);if(!f&&r1(d)){si("fallbackUsedCount");try{let g=await y8n();r1(g.title)||(d=g.title,u.name=g.title,si("fallbackSuccessCount"),os(e,{action:"title_fallback_success",reason:"fallback_success",episodeKey:s,vodName:i,rawTitle:g.title,finalTitle:g.title,fallbackUsed:!0,fallbackAttempts:g.attempts,fallbackDurationMs:g.durationMs}))}catch(g){si("fallbackFailedCount"),De.error("[AutoPush] getPlayInfo \u83B7\u53D6\u6807\u9898\u5931\u8D25:",g.message),os(e,{action:"title_fallback_failed",status:"error",reason:"fallback_failed",episodeKey:s,vodName:i,error:g.message,fallbackUsed:!0,fallbackAttempts:g.attempts||0,fallbackDurationMs:g.durationMs||0,fallbackError:g.message})}}if(f||r1(d)){if(n.extra||(n.extra={}),f){La(e,"push_clear_stale_danmaku",{episodeKey:s,vodName:i,oldDanmaku:String(n.extra.danmaku||"")});try{await tn.clearDanmu()}catch{}n.extra.danmaku=""}return si("invalidTitleSkipCount"),T8n(e,{episodeKey:s,vodName:i,episodeInfo:u,port:e.server.address().port,playContextSnapshot:l,danmuFormat:r}),os(e,{action:"play_deferred_push_pending_title",status:"skip",reason:f?"push_deferred_only":"invalid_title_deferred",episodeKey:s,vodName:i,rawTitle:d}),t}n.extra||(n.extra={}),n.extra.danmaku&&(si("danmakuOverwriteCount"),De.info(`[DanmuAutoPushFlow] \u8986\u76D6\u5DF2\u6709 danmaku: episodeKey="${s}", old="${n.extra.danmaku}"`),os(e,{action:"danmaku_overwrite",reason:"danmaku_overwrite",episodeKey:s,vodName:i,oldDanmaku:n.extra.danmaku,overwroteExistingDanmaku:!0}));let h=e.server.address().port,p=Fer(h,d,u.episodeNumber,r);De.info(`[DanmuAutoPushFlow] \u6CE8\u5165\u5F39\u5E55\u4EE3\u7406: vodName="${i}", rawTitle="${d}", episodeNumber="${u.episodeNumber}", format="${r}", flag="${e.body.flag}", id="${e.body.id}", danmuProxyUrl="${p}"`),n.extra.danmaku=p;let{autoKey:m}=$er(e,d,u);return os(e,{action:"danmaku_injected",reason:"danmaku_injected",episodeKey:s,vodName:i,rawTitle:d,finalTitle:d,episodeNumber:u.episodeNumber,autoKey:m,danmuProxyUrl:p}),JSON.stringify(n)}function f4e(e){e.addHook("onSend",async(t,r,n)=>{try{if(La(t,"hook_enter",{replySent:!!r?.sent,payloadType:typeof n}),!t.url.includes("/spider/"))return os(t,{action:"hook_skip_non_spider",phase:"unknown",status:"skip",reason:"non_spider_route"}),n;if(t.url.includes("/proxy/"))return si("proxyRouteSkipCount"),os(t,{action:"hook_skip_proxy_route",status:"skip",reason:"proxy_route"}),n;if(r.sent)return si("replySentSkipCount"),os(t,{action:"hook_skip_reply_sent",status:"skip",reason:"reply_sent"}),n;let s=d4e(t);s==="detail"&&si("detailRequests"),s==="play"&&si("playRequests");let i=await Rh(t.server);if(!i||!i.autoPush)return si("autoPushDisabledSkipCount"),os(t,{action:"hook_skip_autoPush_disabled",status:"skip",reason:"autoPush_disabled"}),n;let a=aa(i.format),o=i.autoPushBlacklist||[],c=t.url.match(/\/spider\/([^\/]+)\/\d+\/(detail|play)/);if(c&&o.includes(c[1]))return si("blacklistSkipCount"),os(t,{action:"hook_skip_blacklisted",status:"skip",reason:"blacklisted"}),n;if(t.url.endsWith("/detail"))return b8n(t,n);if(t.url.endsWith("/play"))return await I8n(t,n,a)}catch(s){os(t,{action:"hook_error",status:"error",reason:"hook_error",error:s.message}),De.error(s)}return n})}var Her="127.0.0.1",Ver=9321,R8n="87654321",qer=$N.default.resolve(process.cwd(),"runtime","danmu_api","run","danmu_api.status.json"),jer=new Set(["LOCALCACHEVALID","REDISVALID","LOCALREDISVALID","AIVALID"]),Ker=new Set(["DEPLOYPLATFORM"]),C8n=new Set([...jer,...Ker]),x8n={LOCALCACHEVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u672C\u5730\u7F13\u5B58\u53EF\u7528\u6027\u7531\u8FD0\u884C\u65F6\u81EA\u52A8\u63A2\u6D4B\u3002",REDISVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 UPSTASH_REDIS_REST_URL / UPSTASH_REDIS_REST_TOKEN \u6765\u5F71\u54CD Redis \u8FDE\u901A\u6027\u3002",LOCALREDISVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 LOCAL_REDIS_URL \u6765\u5F71\u54CD\u672C\u5730 Redis \u8FDE\u901A\u6027\u3002",AIVALID:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u8BF7\u6539 AI_BASE_URL / AI_MODEL / AI_API_KEY \u540E\u7531\u8FD0\u884C\u65F6\u81EA\u52A8\u9A8C\u8BC1\u3002",DEPLOYPLATFORM:"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\uFF1B\u5F53\u524D\u503C\u7531\u90E8\u7F72\u73AF\u5883\u51B3\u5B9A\u3002"},w8n=new Set(["PROXY_URL","TMDB_API_KEY","AI_API_KEY","UPSTASH_REDIS_REST_URL","UPSTASH_REDIS_REST_TOKEN","LOCAL_REDIS_URL","DEPLOY_PLATFROM_ACCOUNT","DEPLOY_PLATFROM_PROJECT","DEPLOY_PLATFROM_TOKEN","TOKEN","ADMIN_TOKEN"]);function QJ(e){let t=e?.config||{},r=t.danmuBuiltin?.host||Her,n=t.danmuBuiltin?.port||Ver;return`http://${r}:${n}`}function N8n(e){return(e?.config||{}).danmuBuiltin?.host||Her}function O8n(e){return(e?.config||{}).danmuBuiltin?.port||Ver}function Kp(e){return(e?.config||{}).danmuBuiltin?.token||R8n}function Ger(e,t=""){let r=QJ(e),n=Kp(e),s=String(t||"").startsWith("/")?t:`/${t}`;return`${r}/${n}${s}`}var D8n=/^[A-Za-z_][A-Za-z0-9_]*$/;function m4e(e){return typeof e=="string"&&D8n.test(e)}function P8n(){let e=$N.default.dirname(resolveInternalDanmuOverridesPath());return Nc.default.existsSync(e)||Nc.default.mkdirSync(e,{recursive:!0}),e}async function PU(){let e=globalThis.__internalDanmuOverrideDb;if(e&&typeof e.getObjectDefault=="function")try{let r=await e.getObjectDefault("/internalDanmu/overrides",{});return r&&typeof r=="object"?r:{}}catch{return{}}let t=resolveInternalDanmuOverridesPath();if(!Nc.default.existsSync(t))return{};try{let r=Nc.default.readFileSync(t,"utf8");return r.trim()?JSON.parse(r):{}}catch{return{}}}async function zer(e){let t=globalThis.__internalDanmuOverrideDb;if(t&&typeof t.push=="function")return await t.push("/internalDanmu/overrides",e,!0),"db:/internalDanmu/overrides";P8n();let r=resolveInternalDanmuOverridesPath();return Nc.default.writeFileSync(r,JSON.stringify(e,null,2),"utf8"),r}function L8n(e){if(typeof e!="string")return e;let t=e.trim();if(!t)return e;if(t.startsWith("[")&&t.endsWith("]")||t.startsWith("{")&&t.endsWith("}"))try{return JSON.parse(t)}catch{return e}return t==="true"?!0:t==="false"?!1:/^-?\d+(\.\d+)?$/.test(t)?Number(t):e}function _4e(e){return e==null||e===""?"":Array.isArray(e)?e.join(","):typeof e=="object"?JSON.stringify(e):String(e)}function M8n(e){let t={};if(!e||!Nc.default.existsSync(e))return t;let r=Nc.default.readFileSync(e,"utf8");for(let n of r.split(/\r?\n/)){let s=n.trim();if(!s||s.startsWith("#"))continue;let i=s.indexOf("=");i!==-1&&(t[s.slice(0,i).trim()]=s.slice(i+1))}return t}function g4e(e,t,r){if(!e||!t)return!1;let n=$N.default.dirname(e);Nc.default.existsSync(n)||Nc.default.mkdirSync(n,{recursive:!0}),Nc.default.existsSync(e)||Nc.default.writeFileSync(e,"","utf8");let i=Nc.default.readFileSync(e,"utf8").split(/\r?\n/),a=r==null||r==="",o=_4e(r),c=!1,u=[];for(let l of i){let d=l.trim();if(!d||d.startsWith("#")){u.push(l);continue}let f=d.match(/^([^=]+)=/);if(f&&f[1].trim()===t){c=!0,a||u.push(`${t}=${o}`);continue}u.push(l)}return!a&&!c&&(u.length&&u[u.length-1]!==""&&u.push(""),u.push(`${t}=${o}`)),Nc.default.writeFileSync(e,u.join(` +`),"utf8"),!0}function k8n(){try{if(!Nc.default.existsSync(qer))return null;let e=Nc.default.readFileSync(qer,"utf8"),t=e.trim()?JSON.parse(e):null;return t&&typeof t=="object"?t:null}catch{return null}}function A4e(){let e=$N.default.resolve(process.cwd(),"runtime","danmu_api","config",".env"),t=k8n(),r=typeof t?.envPath=="string"?t.envPath.trim():"";return r&&$N.default.resolve(r)===e?r:e}async function B8n(e){try{let t=A4e(),r=M8n(t),n=new Set(Object.keys(e||{}));for(let i of n)m4e(i)&&g4e(t,i,e[i]);let s=globalThis.__internalDanmuLastOverrides;if(s&&typeof s=="object")for(let i of Object.keys(s))n.has(i)||Object.prototype.hasOwnProperty.call(r||{},i)&&m4e(i)&&g4e(t,i,"");return globalThis.__internalDanmuLastOverrides={...e||{}},globalThis.__internalDanmuRuntimeEnvPath=t,t}catch{return null}}async function U8n(e,t,r,n="set"){if(!e||!t)return{ok:!1,skipped:!0,reason:"missing_server_or_key"};let s=n==="del"?"/api/env/del":n==="add"?"/api/env/add":"/api/env/set",i=n==="del"?{key:t}:{key:t,value:_4e(r)};try{let a=await ye({url:Ger(e,s),method:"POST",data:i,responseType:"json",validateStatus:()=>!0,headers:{"content-type":"application/json"},timeout:8e3});return{ok:a.status>=200&&a.status<300&&a.data?.success!==!1,status:a.status,data:a.data}}catch(a){return{ok:!1,error:a}}}async function F8n(e){if(!e)return{ok:!1,skipped:!0,reason:"missing_server"};try{let t=await ye({url:Ger(e,"/api/cache/clear"),method:"POST",data:{},responseType:"json",validateStatus:()=>!0,headers:{"content-type":"application/json"},timeout:8e3});return{ok:t.status>=200&&t.status<300&&t.data?.success!==!1,status:t.status,data:t.data}}catch(t){return{ok:!1,error:t}}}async function WJ(){let e=await PU(),t={...Js.env||{}};for(let[r,n]of Object.entries(e))if(!E4e(r)){if(n==null||n===""){delete t[r];continue}t[r]=_4e(n)}return Js.env=t,globalThis.__internalDanmuOverrides=e,await B8n(e),Js.reInit()}async function $8n(e){let t=await PU();if(!e||typeof e!="object"||!Object.keys(t).length)return e;let r={...e};r.envs={...e.envs||{}},r.originalEnvVars={...e.originalEnvVars||{}},r.categorizedEnvVars={...e.categorizedEnvVars||{}};for(let[n,s]of Object.entries(t))if(!E4e(n)){r.envs[n]=s,r.originalEnvVars[n]=s;for(let i of Object.keys(r.categorizedEnvVars)){let a=Array.isArray(r.categorizedEnvVars[i])?r.categorizedEnvVars[i]:[];r.categorizedEnvVars[i]=a.map(o=>o&&o.key===n?{...o,value:s}:o)}}return r}function q8n(){let e=globalThis.__internalDanmuOverrideDb;return e&&typeof e.getObjectDefault=="function"?"db:/internalDanmu/overrides":resolveInternalDanmuOverridesPath()}function H8n(){return globalThis.__internalDanmuRuntimeEnvPath||A4e()}var V8n=new Set(["DANMU_OUTPUT_FORMAT","CONVERT_COLOR","COLOR_POOL","CONVERT_TOP_BOTTOM_TO_SCROLL","DANMU_SIMPLIFIED_TRADITIONAL","DANMU_LIMIT","GROUP_MINUTE","DANMU_OFFSET","LIKE_SWITCH","COMMENT_CACHE_MINUTES","SEARCH_CACHE_MINUTES"]);function j8n(e=""){let t=[];return Js.searchCache instanceof Map&&(Js.searchCache=new Map,t.push("searchCache")),Js.commentCache instanceof Map&&(Js.commentCache=new Map,t.push("commentCache")),Js.lastSelectMap instanceof Map&&(Js.lastSelectMap=new Map,t.push("lastSelectMap")),Js.requestHistory instanceof Map&&(Js.requestHistory=new Map,t.push("requestHistory")),t.length&&console.log("[InternalDanmuRoute] cleared runtime caches after env change",{reasonKey:e,cleared:t}),t}function K8n(e){let t=String(e||"").trim().toUpperCase();return!t||!V8n.has(t)?[]:j8n(t)}async function G8n(e){let t=Ber(),r=await PU(),n=await Rh(e).catch(()=>null),s={autoPushEnabled:!!(n&&n.autoPush),autoPushBlacklistSize:Array.isArray(n?.autoPushBlacklist)?n.autoPushBlacklist.length:0,internalDanmuHost:N8n(e),internalDanmuPort:O8n(e),internalDanmuOverrideCount:Object.keys(r||{}).length,internalDanmuOverridesStore:q8n(),internalDanmuRuntimeEnvStore:H8n()},i=t?.counters||{},a=t?.cache||{},o=t?.events||{},c=[],u=[];return(i.fallbackFailedCount||0)>0&&(c.push("fallback_failed_detected"),u.push({code:"fallback_failed_detected",severity:"warn",value:i.fallbackFailedCount||0})),(i.jsonParseErrorCount||0)>0&&(c.push("json_parse_errors_detected"),u.push({code:"json_parse_errors_detected",severity:"warn",value:i.jsonParseErrorCount||0})),(i.videoCacheMissCount||0)>(i.videoCacheHitCount||0)&&(i.videoCacheMissCount||0)>3&&(c.push("video_cache_miss_high"),u.push({code:"video_cache_miss_high",severity:"warn",value:i.videoCacheMissCount||0})),(i.episodeIndexMissCount||0)>(i.episodeIndexHitCount||0)&&(i.episodeIndexMissCount||0)>3&&(c.push("episode_index_miss_high"),u.push({code:"episode_index_miss_high",severity:"warn",value:i.episodeIndexMissCount||0})),s.internalDanmuOverrideCount>20&&(c.push("override_count_high"),u.push({code:"override_count_high",severity:"warn",value:s.internalDanmuOverrideCount})),(a.pendingAutoPushTaskCount||0)>5&&(c.push("pending_autopush_tasks_high"),u.push({code:"pending_autopush_tasks_high",severity:"warn",value:a.pendingAutoPushTaskCount||0})),(i.invalidTitleSkipCount||0)>3&&u.push({code:"invalid_title_skip_present",severity:"info",value:i.invalidTitleSkipCount||0}),(i.blacklistSkipCount||0)>0&&u.push({code:"blacklist_skip_present",severity:"info",value:i.blacklistSkipCount||0}),(o.recentCount||0)===0&&u.push({code:"no_recent_events",severity:"info",value:0}),{version:2,enhancer:t,config:s,summary:{requests:{detail:i.detailRequests||0,play:i.playRequests||0},injection:{injected:i.danmakuInjectedCount||0,overwritten:i.danmakuOverwriteCount||0,invalidTitleSkipped:i.invalidTitleSkipCount||0},fallback:{used:i.fallbackUsedCount||0,success:i.fallbackSuccessCount||0,failed:i.fallbackFailedCount||0},cache:a,events:o},health:{status:c.length?"warn":"ok",warnings:c,findings:u}}}async function z8n(e,t){let r=await PU();r[e]=L8n(t);let n=await zer(r);return await WJ(),n}async function Y8n(e){let t=await PU();delete t[e];let r=await zer(t);try{let n=A4e();g4e(n,e,""),globalThis.__internalDanmuRuntimeEnvPath=n}catch{}return Js.env&&typeof Js.env=="object"&&delete Js.env[e],await WJ(),r}async function h4e(e,t,r){try{let n=e.body||{},s=n.key,i=n.value;if(!s)return t.code(400).send({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"});if(!m4e(s))return t.code(400).send({success:!1,message:`\u975E\u6CD5\u73AF\u5883\u53D8\u91CF\u540D\u79F0: ${s}\uFF08\u4EC5\u5141\u8BB8\u5B57\u6BCD/\u6570\u5B57/\u4E0B\u5212\u7EBF\uFF0C\u4E14\u4E0D\u4EE5\u6570\u5B57\u5F00\u5934\uFF09`});if(r!=="del"&&E4e(s))return t.code(400).send({success:!1,readonly:!0,message:X8n(s),key:s});let a=r==="del"?await Y8n(s):await z8n(s,i),o=K8n(s),c=await U8n(e.server,s,i,r),u=null;o.length&&(u=await F8n(e.server));let l;if(r==="del")try{l={ok:!0,currentValue:(await Yer(e.server))?.envs?.[s]}}catch(d){l={ok:!1,currentValue:void 0,error:d}}else l=await Z8n(e.server,s,i);if(!l.ok){let d=l.reason==="derived_runtime_state"?"\uFF08\u8BE5\u5B57\u6BB5\u5C5E\u4E8E\u8FD0\u884C\u6001\u6D3E\u751F\u72B6\u6001\uFF0Craw config \u4E0D\u4FDD\u8BC1\u76F4\u63A5\u7B49\u4E8E\u8F93\u5165\u503C\uFF09":"";return t.code(202).send({success:!1,pending:!0,message:`\u73AF\u5883\u53D8\u91CF ${s} \u5DF2\u5199\u5165 overrides\uFF0C\u4F46 danmu_api \u8FD0\u884C\u65F6\u5C1A\u672A\u5B8C\u6210\u5237\u65B0${d}`,filePath:a,expectedValue:r==="del"?"":i,currentLiveValue:l.currentValue,liveCheckError:l.error?.message||"",clearedCaches:o,livePush:c,liveCacheClear:u,liveCheckReason:l.reason||""})}return t.send({success:!0,message:r==="del"?`\u73AF\u5883\u53D8\u91CF ${s} \u5220\u9664\u6210\u529F\u5E76\u5DF2\u5B9E\u65F6\u751F\u6548`:`\u73AF\u5883\u53D8\u91CF ${s} ${r==="add"?"\u6DFB\u52A0":"\u8BBE\u7F6E"}\u6210\u529F\u5E76\u5DF2\u5B9E\u65F6\u751F\u6548`,filePath:a,currentLiveValue:l.currentValue,clearedCaches:o,livePush:c,liveCacheClear:u,liveCheckReason:l.reason||""})}catch(n){return t.code(500).send({success:!1,message:`\u73AF\u5883\u53D8\u91CF${r==="del"?"\u5220\u9664":r==="add"?"\u6DFB\u52A0":"\u8BBE\u7F6E"}\u5931\u8D25: ${n.message}`})}}async function DU(e,t){let r=QJ(e.server),n=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"",s=`${r}${t}${n}`,i=e.method||"GET";return await ye({url:s,method:i,data:["GET","HEAD"].includes(i.toUpperCase())?void 0:e.body,responseType:"text",transformResponse:[o=>o],validateStatus:()=>!0,headers:{...e.headers,host:void 0,connection:void 0,"content-length":void 0},timeout:3e4})}async function Yer(e){let t=QJ(e),r=Kp(e),n=await ye({url:`${t}/${r}/api/config`,method:"GET",responseType:"json",validateStatus:()=>!0,timeout:5e3});if(n.status!==200||!n.data||typeof n.data!="object")throw new Error(`\u8BFB\u53D6 danmu live config \u5931\u8D25: HTTP ${n.status}`);return n.data}function LU(e){return String(e||"").trim().toUpperCase()}function Q8n(e){return typeof e=="string"&&e.length>0&&/^\*+$/.test(e)}function W8n(e){return w8n.has(LU(e))}function Qer(e){return jer.has(LU(e))}function Wer(e){return Ker.has(LU(e))}function E4e(e){return C8n.has(LU(e))}function X8n(e){return x8n[LU(e)]||"\u8BE5\u5B57\u6BB5\u4E3A\u8FD0\u884C\u72B6\u6001\uFF0C\u53EA\u8BFB\u3002"}function J8n(e,t,r){return t==null||t===""?r==null||r==="":W8n(e)&&Q8n(r)?!0:Qer(e)||Wer(e)?!1:String(r)===String(t)}async function Z8n(e,t,r,{timeoutMs:n=4e3,intervalMs:s=150}={}){let i=Date.now()+n,a,o=null;for(;Date.now()<i;){try{let u=(await Yer(e))?.envs?.[t];if(a=u,J8n(t,r,u))return{ok:!0,currentValue:u,reason:"matched"};if((Qer(t)||Wer(t))&&u!==void 0)return{ok:!1,currentValue:u,reason:"derived_runtime_state"}}catch(c){o=c}await new Promise(c=>setTimeout(c,s))}return{ok:!1,currentValue:a,error:o}}async function p4e(e,t,r){try{let n=QJ(e.server),s=e.raw.url.includes("?")?e.raw.url.slice(e.raw.url.indexOf("?")):"",i=`${n}${r}${s}`,a=e.method||"GET",o=a.toUpperCase(),c=!["GET","HEAD"].includes(o),u=c&&e.body!==void 0&&e.body!==null&&!(typeof e.body=="string"&&e.body.length===0),l={};for(let[f,h]of Object.entries(e.headers||{})){let p=String(f).toLowerCase();["host","connection","content-length","accept-encoding","content-type"].includes(p)||h!==void 0&&(l[f]=h)}(u||c)&&(l["content-type"]="application/json");let d=await ye({url:i,method:a,data:c?u?e.body:{}:void 0,responseType:"arraybuffer",validateStatus:()=>!0,headers:l,timeout:3e4});return t.code(d.status),Object.entries(d.headers||{}).forEach(([f,h])=>{if(h===void 0)return;let p=String(f).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(p)||t.header(f,h)}),t.header("Cache-Control","no-store"),t.send(d.data||Buffer.alloc(0))}catch(n){return t.code(502).send({code:1,message:`internal danmu proxy failed: ${n.message}`})}}async function y4e(e){e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/ui-inline.js",handler:async(t,r)=>(r.header("Content-Type","application/javascript; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(`(() => { + const patch = () => { + if (typeof window.checkAdminToken !== 'function') return false; + const original = window.checkAdminToken; + window.checkAdminToken = function patchedCheckAdminToken() { + try { + const path = String(window.location && window.location.pathname || ''); + if (path === '/internal-danmu/ui' || path.startsWith('/internal-danmu/ui/')) { + return true; + } + } catch {} + return original.apply(this, arguments); + }; + + if (typeof window.editEnv === 'function' && !window.editEnv.__internalDanmuPatched) { + const originalEditEnv = window.editEnv; + window.editEnv = function patchedEditEnv(index, clickEvent) { + const safeEvent = clickEvent || window.event || { target: null }; + return originalEditEnv.call(this, index, safeEvent); + }; + window.editEnv.__internalDanmuPatched = true; + } + + if (typeof window.deleteEnv === 'function' && !window.deleteEnv.__internalDanmuPatched) { + const originalDeleteEnv = window.deleteEnv; + window.deleteEnv = function patchedDeleteEnv(index, clickEvent) { + const safeEvent = clickEvent || window.event || { target: null }; + return originalDeleteEnv.call(this, index, safeEvent); + }; + window.deleteEnv.__internalDanmuPatched = true; + } + + if (typeof window.renderEnvList === 'function' && !window.renderEnvList.__internalDanmuPatched) { + const originalRenderEnvList = window.renderEnvList; + window.renderEnvList = function patchedRenderEnvList() { + return originalRenderEnvList.apply(this, arguments); + }; + window.renderEnvList.__internalDanmuPatched = true; + try { window.renderEnvList(); } catch {} + } + + if (typeof window.confirmClearCache === 'function' && !window.confirmClearCache.__internalDanmuPatched) { + window.confirmClearCache = async function patchedConfirmClearCache() { + const configCheck = await window.checkDeployPlatformConfig(); + if (!configCheck.success) { + window.hideClearCacheModal(); + window.customAlert(configCheck.message); + return; + } + + window.hideClearCacheModal(); + window.showLoading('\u6B63\u5728\u6E05\u7406\u7F13\u5B58...', '\u6E05\u9664\u4E2D\uFF0C\u8BF7\u7A0D\u5019'); + window.addLog('\u5F00\u59CB\u6E05\u7406\u7F13\u5B58', 'info'); + + try { + const response = await fetch(window.buildApiUrl('/api/cache/clear', true), { + method: 'POST', + headers: { 'Content-Type': 'application/json' }, + body: JSON.stringify({}) + }); + const result = await response.json(); + if (result.success) { + window.updateLoadingText('\u6E05\u7406\u5B8C\u6210', '\u7F13\u5B58\u5DF2\u6210\u529F\u6E05\u9664'); + window.addLog('\u7F13\u5B58\u6E05\u7406\u5B8C\u6210', 'success'); + window.addLog('\u2705 \u7F13\u5B58\u6E05\u7406\u6210\u529F\uFF01\u5DF2\u6E05\u7406: ' + JSON.stringify(result.clearedItems), 'success'); + } else { + window.updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u8BF7\u67E5\u770B\u65E5\u5FD7\u4E86\u89E3\u8BE6\u60C5'); + window.addLog('\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ' + result.message, 'error'); + } + } catch (error) { + window.updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u7F51\u7EDC\u9519\u8BEF\u6216\u670D\u52A1\u4E0D\u53EF\u7528'); + window.addLog('\u7F13\u5B58\u6E05\u7406\u8BF7\u6C42\u5931\u8D25: ' + error.message, 'error'); + } finally { + setTimeout(() => window.hideLoading(), 10); + } + }; + window.confirmClearCache.__internalDanmuPatched = true; + } + return true; + }; + + if (!patch()) { + let tries = 0; + const timer = setInterval(() => { + tries += 1; + if (patch() || tries > 80) clearInterval(timer); + }, 100); + } +})();`))}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/ui",handler:async(t,r)=>{let n=Kp(t.server);console.log("[InternalDanmuRoute] hit /internal-danmu/ui",{query:t.query||{},token:n});let s=await DU(t,`/${n}`),i=s.data||"";return typeof i=="string"&&(i=i.replaceAll('onclick="editEnv(${index})"','onclick="editEnv(${index}, event)"').replaceAll('onclick="deleteEnv(${index})"','onclick="deleteEnv(${index}, event)"').replace("function editEnv(index) {","function editEnv(index, clickEvent) {").replace("const editButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE","const editButton = clickEvent?.target || event?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE").replace("function deleteEnv(index) {","function deleteEnv(index, clickEvent) {").replace("const deleteButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE","const deleteButton = clickEvent?.target || event?.target || null; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE"),i.includes("</body>")&&(i=i.replace("</body>",'<script src="/internal-danmu/ui-inline.js"></script></body>'))),r.code(s.status||200),Object.entries(s.headers||{}).forEach(([a,o])=>{if(o===void 0)return;let c=String(a).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(c)||r.header(a,o)}),r.header("Content-Type","text/html; charset=utf-8"),r.send(i)}}),e.route({method:["POST"],url:"/internal-danmu/api/env/set",handler:async(t,r)=>h4e(t,r,"set")}),e.route({method:["POST"],url:"/internal-danmu/api/env/add",handler:async(t,r)=>h4e(t,r,"add")}),e.route({method:["POST"],url:"/internal-danmu/api/env/del",handler:async(t,r)=>h4e(t,r,"del")}),e.route({method:["GET"],url:"/internal-danmu/api/diagnostics",handler:async(t,r)=>r.send({success:!0,data:await G8n(t.server)})}),e.route({method:["GET"],url:"/internal-danmu/api/config",handler:async(t,r)=>{let n=Kp(t.server),s=await DU(t,`/${n}/api/config`),i=s.data;try{i=JSON.stringify(await $8n(JSON.parse(s.data||"{}")))}catch{}return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([a,o])=>{if(o===void 0)return;let c=String(a).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(c)||r.header(a,o)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(i)}}),e.route({method:["GET"],url:"/internal-danmu/api/logs",handler:async(t,r)=>{let n=Kp(t.server),s=await DU(t,`/${n}/api/logs`);return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([i,a])=>{if(a===void 0)return;let o=String(i).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(o)||r.header(i,a)}),r.header("Content-Type","text/plain; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s.data||"")}}),e.route({method:["POST"],url:"/internal-danmu/api/logs/clear",handler:async(t,r)=>{let n=Kp(t.server),s=await DU(t,`/${n}/api/logs/clear`);return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([i,a])=>{if(a===void 0)return;let o=String(i).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(o)||r.header(i,a)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s.data||"")}}),e.route({method:["POST"],url:"/internal-danmu/api/cache/clear",handler:async(t,r)=>{let n=Kp(t.server),s=await DU(t,`/${n}/api/cache/clear`);return r.code(s.status||200),Object.entries(s.headers||{}).forEach(([i,a])=>{if(a===void 0)return;let o=String(i).toLowerCase();["transfer-encoding","content-encoding","connection","content-length"].includes(o)||r.header(i,a)}),r.header("Content-Type","application/json; charset=utf-8"),r.header("Cache-Control","no-store"),r.send(s.data||"")}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/internal-danmu/api",handler:async(t,r)=>{let n=Kp(t.server);return console.log("[InternalDanmuRoute] hit /internal-danmu/api",{method:t.method,token:n}),p4e(t,r,`/${n}/api`)}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/:token/api",handler:async(t,r)=>{let n=Kp(t.server);return(t.params.token||"")!==n?r.code(404).send({message:`Route ${t.method}:${t.raw.url} not found`,error:"Not Found",statusCode:404}):(console.log("[InternalDanmuRoute] hit /:token/api",{method:t.method,token:n}),p4e(t,r,`/${n}/api`))}}),e.route({method:["GET","POST","PUT","DELETE","OPTIONS"],url:"/:token/api/*",handler:async(t,r)=>{let n=Kp(t.server);if((t.params.token||"")!==n)return r.code(404).send({message:`Route ${t.method}:${t.raw.url} not found`,error:"Not Found",statusCode:404});let s=t.params["*"]?`/${n}/api/${t.params["*"]}`:`/${n}/api`;return console.log("[InternalDanmuRoute] hit /:token/api/*",{suffix:s,method:t.method,token:n}),p4e(t,r,s)}})}Cr();Dn();fa();async function S4e(e){e.get("/internal/http/agent-stats",async()=>{try{let t=QSe();return{code:0,data:{summary:{https:{totalSockets:Object.values(t.https.sockets).reduce((n,s)=>n+s,0),totalFreeSockets:Object.values(t.https.freeSockets).reduce((n,s)=>n+s,0),totalRequests:Object.values(t.https.requests).reduce((n,s)=>n+s,0),hosts:Object.keys(t.https.sockets).length},http:{totalSockets:Object.values(t.http.sockets).reduce((n,s)=>n+s,0),totalFreeSockets:Object.values(t.http.freeSockets).reduce((n,s)=>n+s,0),totalRequests:Object.values(t.http.requests).reduce((n,s)=>n+s,0),hosts:Object.keys(t.http.sockets).length}},details:t}}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/cache/stats",async()=>{try{return{code:0,data:iTe()}}catch(t){return{code:-1,message:t.message}}}),e.post("/internal/cache/clear",async t=>{try{let{spider:r}=t.query;return sTe(r),{code:0,message:r?`Cleared cache for spider: ${r}`:"Cleared all cache"}}catch(r){return{code:-1,message:r.message}}}),e.post("/internal/cache/reset-stats",async()=>{try{return aTe(),{code:0,message:"Cache stats reset successfully"}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/concurrency/stats",async()=>{try{return{code:0,data:Yxe()}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/inflight/stats",async()=>{try{return{code:0,data:WSe()}}catch(t){return{code:-1,message:t.message}}}),e.get("/internal/probe/filejin-pow",async t=>{try{let r=await Promise.resolve().then(()=>(vX(),TMe)),{solvePowChallenge:n,solvePowSync:s,solvePowParallel:i}=r.__test||{};if(!n||!s||!i)return{code:-1,message:"filejin.__test missing solve* exports"};let a="https://www.xn--rhqp87dfoiv9a830g.com",o="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",c=Date.now(),l=await(await fetch(`${a}/`,{headers:{"User-Agent":o}})).text(),d=Date.now()-c,f=l.match(/const json=(\{.*?\});const jss=/s);if(!f)return{code:-1,message:"no PoW payload in HTML",fetchMs:d,htmlLen:l.length};let h=JSON.parse(f[1]),p=String(t.query?.mode||"both"),m={fetchMs:d,diff:h.diff,challengeLen:h.challenge.length,saltLen:h.salt.length};if(p==="sync"||p==="both"){let g=Date.now(),_=s(h.challenge,h.salt,h.diff);m.sync={ms:Date.now()-g,remainingCount:_.remainingCount,nonce:_.nonce}}if(p==="parallel"||p==="both"){let g=Date.now(),_=await i(h.challenge,h.salt,h.diff,2);m.parallel2={ms:Date.now()-g,remainingCount:_.remainingCount,nonce:_.nonce}}return{code:0,data:m}}catch(r){return{code:-1,message:r?.message||String(r),stack:String(r?.stack||"").split(` +`).slice(0,6).join(" | ")}}}),e.get("/internal/probe/worker-threads",async()=>{try{let{runWorkerProbe:t}=await Promise.resolve().then(()=>(etr(),Zer));return{code:0,data:await t()}}catch(t){return{code:-1,message:t?.message||String(t),stack:String(t?.stack||"").split(` +`).slice(0,6).join(" | ")}}}),e.post("/internal/concurrency/reset-stats",async()=>{try{return zxe(),{code:0,message:"Concurrency stats reset successfully"}}catch(t){return{code:-1,message:t.message}}})}fa();var t$n="/spider";async function eZ(e,{db:t,config:r}){globalThis.__internalDanmuOverrideDb=t,await WJ();let n=process.env.DISABLE_SPIDER_BOOT_CHECKS==="1";e.addHook("preHandler",async a=>{let o=Gxe(a.url);if(!o)return;let c=await QG(o).acquire();a.__spiderLimiterRelease=c});let s=a=>{let o=a.__spiderLimiterRelease;if(o){a.__spiderLimiterRelease=null;try{o()}catch{}}};e.addHook("onResponse",async a=>{s(a)}),e.addHook("onError",async a=>{s(a)}),e.addHook("onTimeout",async a=>{s(a)}),e.addHook("onRequestAbort",async a=>{s(a)}),(await jJ({db:t,config:r})).forEach(a=>{let o=t$n+"/"+a.meta.key+"/"+a.meta.type;e.register(a.api,{prefix:o}),n||a.check?.(e)}),n&&console.warn("[router] \u5DF2\u7981\u7528\u542F\u52A8\u671F spider.check \u9884\u63A2\u6D3B\uFF08DISABLE_SPIDER_BOOT_CHECKS=1\uFF09"),e.get("/assets/*",async(a,o)=>{let c=String(a.params["*"]||"").replace(/^\/+/,""),u=ZJ.default.resolve(process.cwd(),"src/website/assets"),l=ZJ.default.resolve(u,c);return!l.startsWith(u+ZJ.default.sep)&&l!==u?o.code(403).send({message:"Forbidden"}):!JJ.default.existsSync(l)||!JJ.default.statSync(l).isFile()?o.code(404).send({message:"Not Found"}):o.send(JJ.default.createReadStream(l))}),e.register(i4e),await a4e(e),await y4e(e),await S4e(e),e.get("/danmu-proxy",Wxt),f4e(e)}var xZ=Ne(_tr(),1);vr();vr();var Etr=Ne(jE(),1),M_=Ne(Yi(),1);Ds();el();var $4e="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Atr=[],q4e=null,_$n=async e=>{let t=String(e.config?.quark?.cookie||""),r=M_.default.enc.Hex.stringify(M_.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/quark",{});return n[r]?n[r]:t?(await e.db.push(`/quark/${r}`,t),t):""},A$n=async(e,t)=>{let r=M_.default.enc.Hex.stringify(M_.default.MD5(e.config.quark.cookie)).toString();await e.db.push(`/quark/${r}`,t)};async function H4e(e){e.get("/qrcode",async(t,r)=>{let n=await ye.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":$4e}});Atr=g0(n.headers["set-cookie"]),q4e=n.data.data.members.token;let s="https://su.quark.cn/4_eMHBJ?token="+q4e+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",i=await Etr.default.toBuffer(s,{width:300,height:300});r.send(i)}),e.post("/cookie",(t,r)=>{ye.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${q4e}`).then(n=>n.data.status===2e6?{data:n.data.data,cookies:Atr}:Promise.reject(new Error(`service_ticket\u83B7\u53D6\u5931\u8D25: ${n.data.message}`))).then(async({data:n,cookies:s})=>{let i=await ye.get(`https://pan.quark.cn/account/info?st=${n.members.service_ticket}&fr=pc&platform=pc`,{headers:{"User-Agent":$4e,Cookie:s.join("")}});return i.headers["set-cookie"]?s.concat(g0(i.headers["set-cookie"])):Promise.reject(new Error(`\u4E2A\u4EBAPus\u83B7\u53D6\u5931\u8D25\uFF1A${i.data.message}`))}).then(async n=>{let s=await ye.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":$4e,Cookie:n.join("")}});if(s.headers["set-cookie"])r.send({code:0,data:n.concat(g0(s.headers["set-cookie"])).join("")});else return Promise.reject(new Error(`\u4E2A\u4EBAPuus\u83B7\u53D6\u5931\u8D25\uFF1A${s.data.message}`))}).catch(n=>{console.error(n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/cookie",async(t,r)=>{r.send({code:0,data:await _$n(t.server)})}),e.put("/cookie",async(t,r)=>{await A$n(t.server,t.body.cookie),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=M_.default.enc.Hex.stringify(M_.default.MD5(t.server.config.quark.cookie)).toString(),s=await t.server.db.getObjectDefault(`/quark/settings/${n}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0,enableFast:!1});r.send({code:0,data:s})}catch(n){console.error("\u83B7\u53D6\u5938\u514B\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=LE(t.body,{chunkSize:524288,poolSize:8,useMultithread:!0,enableFast:!1},{requireEnableFast:!0});if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let s=M_.default.enc.Hex.stringify(M_.default.MD5(t.server.config.quark.cookie)).toString();await t.server.db.push(`/quark/settings/${s}`,n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u5938\u514B\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}wCe();vr();var V4e=Ne(Yi(),1);hB();var ytr=null,E$n=null,oZ="token",y$n=async e=>{let t=String(e.config?.uc?.token||""),r=V4e.default.enc.Hex.stringify(V4e.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/uc",{});return n[oZ]?n[oZ]:n[r]?n[r]:t?(await e.db.push(`/uc/${oZ}`,t),t):""},v$n=async(e,t)=>{await e.db.push(`/uc/${oZ}`,t)};async function j4e(e){e.get("/qrcode",async(t,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=tu.DeviceID,a=kx(i,s),o=YK("GET",n,s,fi.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":fi.clientID,...tu.AccessToken?{Authorization:`Bearer ${tu.AccessToken}`}:{}},u=await ye.get(`${fi.api}${n}`,{params:{req_id:a,access_token:tu.AccessToken,app_ver:fi.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:fi.channel,auth_type:"code",client_id:fi.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c});if(!u.data)return console.error("[UC Token] No data in response"),r.status(500).send("No data received from API");if(!u.data.qr_data)return console.error("[UC Token] No qr_data in response:",JSON.stringify(u.data)),r.status(500).send("QR code data not available in response");ytr=u.data.query_token,E$n=a,r.type("image/png").send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("[UC Token] Error generating QR code:",n.message),n.response&&(console.error("[UC Token] Error response status:",n.response.status),console.error("[UC Token] Error response data:",JSON.stringify(n.response.data))),r.status(500).send(`Failed to generate QR code: ${n.message}`)}}),e.post("/token",async(t,r)=>{let n="/oauth/code",s=Math.floor(Date.now()/1e3).toString()+"000",i=tu.DeviceID,a=kx(i,s),o=YK("GET",n,s,fi.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":fi.clientID,...tu.AccessToken?{Authorization:`Bearer ${tu.AccessToken}`}:{}},u=await ye.get(`${fi.api}${n}`,{params:{req_id:a,access_token:tu.AccessToken,app_ver:fi.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:fi.channel,client_id:fi.clientID,scope:"netdisk",query_token:ytr},headers:c});if(u.data.status===0){let l="/token",d=Math.floor(Date.now()/1e3).toString()+"000",f=kx(tu.DeviceID,d),h=JSON.stringify({req_id:f,app_ver:fi.appVer,device_id:tu.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:fi.channel,code:u.data.code}),m=(await ye.post(`${fi.codeApi}${l}`,h,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}})).data;m.code===200?(m.data.refresh_token&&await t.server.db.push("/uc/refresh_token",m.data.refresh_token),r.send({code:0,data:m.data.access_token})):r.send({code:-1,message:m.message??"\u83B7\u53D6token\u5931\u8D25"})}else r.send({code:-1,message:u.data.message??"\u67E5\u8BE2\u626B\u7801\u72B6\u6001\u5931\u8D25"})}),e.get("/token",async(t,r)=>{r.send({code:0,data:await y$n(t.server)})}),e.put("/token",async(t,r)=>{await v$n(t.server,t.body.cookie),r.send({code:0})})}zT();RLe();HLe();APe();var vtr=async(e,t)=>{let n=(await e.db.getObjectDefault("/tyi",{}))?.[t]||"";return!n&&e.config.tianyi&&(t==="cloud_account"?n=e.config.tianyi.username||"":t==="cloud_password"&&(n=e.config.tianyi.password||""),n&&await e.db.push(`/tyi/${t}`,n)),n},K4e=async(e,t,r)=>{await e.db.push(`/tyi/${t}`,r)};async function G4e(e){e.get("/account",async(t,r)=>{let n=await vtr(t.server,"cloud_account"),s=await vtr(t.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),e.put("/account",async(t,r)=>{await K4e(t.server,"cloud_account",t.body.username),await K4e(t.server,"cloud_password",t.body.password),await K4e(t.server,"cloud_cookie",""),r.send({code:0})})}hPe();UDe();DRe();var cZ=async(e,t)=>{let n=(await e.db.getObjectDefault("/pan123",{}))?.[t]||"";return!n&&e.config.pan123&&(t==="pan_passport"?n=e.config.pan123.username||"":t==="pan_password"&&(n=e.config.pan123.password||""),n&&await e.db.push(`/pan123/${t}`,n)),n},Str=async(e,t,r)=>{await e.db.push(`/pan123/${t}`,r)};function uZ(e){if(Array.isArray(e))return e.map(uZ);if(!e||typeof e!="object")return e;let t={};for(let[r,n]of Object.entries(e))/^(access_?token|refresh_?token|token)$/i.test(r)||(t[r]=uZ(n));return t}function k_(e,t){return e.send({code:-1,message:t?.message||String(t)})}async function z4e(e){e.get("/account",async(t,r)=>{let n=await cZ(t.server,"pan_passport"),s=await cZ(t.server,"pan_password");r.send({code:0,data:{username:n,password:s}})}),e.put("/account",async(t,r)=>{await Str(t.server,"pan_passport",t.body.username),await Str(t.server,"pan_password",t.body.password),r.send({code:0})}),e.get("/open/config",async(t,r)=>{try{let n=await tl(t.server);return r.send({code:0,data:jT(n)})}catch(n){return k_(r,n)}}),e.put("/open/token",async(t,r)=>{try{let n=String(t.body?.access_token||t.body?.accessToken||"").trim(),s=String(t.body?.refresh_token||t.body?.refreshToken||"").trim();if(!n)return r.send({code:-1,message:"access_token is required"});await k4t(n),await j4(t.server,{access_token:n,...s?{refresh_token:s}:{}});let i=await tl(t.server);return r.send({code:0,data:jT(i)})}catch(n){return k_(r,n)}}),e.put("/open/settings",async(t,r)=>{try{let n={enabled:t.body?.enabled===!0,target_parent_id:String(t.body?.target_parent_id||"0").trim()||"0",target_parent_name:String(t.body?.target_parent_name||"\u6839\u76EE\u5F55").trim()||"\u6839\u76EE\u5F55",oauth_server:String(t.body?.oauth_server||KE()).trim()||KE()};await RRe(t.server,n);let s=await tl(t.server);return r.send({code:0,data:jT(s)})}catch(n){return k_(r,n)}}),e.post("/open/check",async(t,r)=>{try{await M4t(t.server);let n=await tl(t.server);return r.send({code:0,data:jT(n)})}catch(n){return k_(r,n)}}),e.post("/open/refresh",async(t,r)=>{try{await ORe(t.server);let n=await tl(t.server);return r.send({code:0,data:jT(n)})}catch(n){return k_(r,n)}}),e.get("/open/folders",async(t,r)=>{try{let n=String(t.query?.parentFileId||t.query?.parent||"0").trim()||"0",s=await B4t(t.server,n);return r.send({code:0,data:s})}catch(n){return k_(r,n)}}),e.post("/open/oauth/start",async(t,r)=>{try{t.body?.oauth_server&&await RRe(t.server,{oauth_server:String(t.body.oauth_server).trim()});let n=await L4t(t.server,t.body||{});return r.send({code:0,data:uZ(n)})}catch(n){return k_(r,n)}}),e.post("/open/oauth/password",async(t,r)=>{try{let n=await cZ(t.server,"pan_passport"),s=await cZ(t.server,"pan_password"),i=await P4t(t.server,{username:n,password:s});return r.send({code:0,data:jT(i)})}catch(n){return k_(r,n)}}),e.get("/open/oauth/status/:sessionId",async(t,r)=>{try{let n=String(t.params?.sessionId||"").trim();if(!n)return r.send({code:-1,message:"sessionId is required"});let s=await wRe(t.server,n),i=V4(s),a=!1,o=!1;if(i?.access_token){await j4(t.server,i,{oauth_session_id:n}),a=!0;try{await NRe(t.server,n),o=!0}catch{}}return r.send({code:0,data:{...uZ(s),token_saved:a,token_confirmed:o}})}catch(n){return k_(r,n)}})}hG();el();var S$n=As.maxPoolSize,Y4e=async(e,t)=>{let n=(await e.db.getObjectDefault("/xunlei",{}))?.[t]||"";return!n&&e.config.xunlei&&(t==="username"?n=e.config.xunlei.username||"":t==="password"&&(n=e.config.xunlei.password||""),n&&await e.db.push(`/xunlei/${t}`,n)),n};var Rtr=async e=>await e.db.getObjectDefault("/xunlei/verification",{}),T$n=async(e,t={})=>{await e.db.push("/xunlei/verification",t)},b$n=async e=>{await e.db.push("/xunlei/verification",{})},Q4e=async e=>{await b$n(e),i1=null},i1=null,W4e=e=>{let t=String(e||"").trim();if(!t)return"";if(t.startsWith("+"))return t;let r=t.replace(/\D/g,"");return r?r.length===11&&!r.startsWith("86")?`+86 ${r}`:r.startsWith("86")?`+${r}`:`+${r}`:t},I$n=(e={})=>{let t=Date.now()+Number(e.expiresIn||300)*1e3;return{phone:e.phone,verificationId:e.verificationId,expiresAt:t,reviewState:e.reviewState||{}}},Ttr=(e,t="")=>!e?.verificationId||Number(e?.expiresAt||0)<=Date.now()?!1:t?e.phone===W4e(t):!0,R$n=async(e,t="")=>{let r=W4e(t),n=await Rtr(e),s=Ttr(i1,r)?i1:null,i=Ttr(n,r)?n:null;return s||i||null},C$n=(e,t={})=>{let r=Number(e?.expiresAt||0);return{status:"sent",phone:e?.phone||"",verificationId:e?.verificationId||"",expiresAt:r,expiresIn:Math.max(0,Math.ceil((r-Date.now())/1e3)),selectedChannel:"sms",remaining:null,reviewState:e?.reviewState||{},...t}};var btr=e=>{let t=e?.data?.verifyUrl||e?.data?.captchaUrl||"";return t?{status:"verify_required",verifyUrl:t,message:e?.message||"\u9700\u8981\u5148\u5B8C\u6210\u5B89\u5168\u9A8C\u8BC1"}:null},Itr=async(e,t)=>{let r=await RFt(e,t,{forceSend:!0});if(r?.autoLoggedIn)return await Q4e(e.server),{status:"auto_logged_in",userId:r.userId||"",hasRefreshToken:!!r.hasRefreshToken};if(!r?.verificationId)throw new Error(r?.message||"\u5F53\u524D\u8D26\u53F7\u672A\u8FDB\u5165\u77ED\u4FE1\u9A8C\u8BC1\u7801\u6D41\u7A0B");let n=I$n(r);return await T$n(e.server,n),i1=n,{status:"sent",...r,expiresAt:n.expiresAt}};async function X4e(e){e.get("/config",async(t,r)=>{try{let n=await t.server.db.getObjectDefault("/xunlei/settings",{chunkSize:524288,poolSize:10,useMultithread:!0});r.send({code:0,data:n})}catch(n){console.error("\u83B7\u53D6\u8FC5\u96F7\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=LE(t.body,{chunkSize:524288,poolSize:10,useMultithread:!0});if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});n.poolSize=Math.min(S$n,n.poolSize),await t.server.db.push("/xunlei/settings",n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u8FC5\u96F7\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}}),e.get("/verify-callback",async(t,r)=>{r.type("text/html").send(` <!doctype html> <html lang="zh-CN"> <head> @@ -8766,7 +10734,7 @@ ${e}`}function vSn(e){return e?`<div style="margin:16px 20px 0;padding:12px 14px </script> </body> </html> - `)}),e.get("/account",async(t,r)=>{let n=await E2e(t.server,"username"),i=await E2e(t.server,"password"),s=await fwn(t.server,n);r.send({code:0,data:{username:n,password:i,verification:s?pwn(s):null}})}),e.put("/account",async(t,r)=>{try{await CP(t,{username:t.body.username,password:t.body.password}),await B5t(t.server),r.send({code:0})}catch(n){r.send({code:1,message:n?.message||"\u4FDD\u5B58\u5931\u8D25"})}}),e.post("/verification",async(t,r)=>{try{let n=t.body.username||t.body.phone;await CP(t,{username:n,password:t.body.password});let i=await U5t(t,n);r.send({code:0,data:i})}catch(n){let i=F5t(n);if(i){r.send({code:0,data:i});return}r.send({code:1,message:n?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",data:n?.data||{}})}}),e.post("/verification/retry",async(t,r)=>{try{let n=await E2e(t.server,"username");if(!n)throw new Error("\u8BF7\u5148\u8F93\u5165\u624B\u673A\u53F7\u548C\u5BC6\u7801\uFF0C\u518D\u91CD\u65B0\u53D1\u9001\u9A8C\u8BC1\u7801");let i=await U5t(t,n);r.send({code:0,data:i})}catch(n){let i=F5t(n);if(i){r.send({code:0,data:i});return}r.send({code:1,message:n?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",data:n?.data||{}})}}),e.post("/login",async(t,r)=>{try{let n=t.body.username||t.body.phone,i=S2e(n),s=await q5t(t.server),a=HE?.phone===i&&Number(HE?.expiresAt||0)>Date.now()?HE:null,o=s?.phone===i&&Number(s?.expiresAt||0)>Date.now()?s:null,u=String(t.body.verificationId||"").trim(),c=(u?[a,o].find(f=>f?.verificationId===u):a||o)||null,l=u||c?.verificationId||"";c?.reviewState&&await jxt(t,c.reviewState);let d=await Jxt(t,{username:n,password:t.body.password,verificationId:l,verificationCode:t.body.verificationCode});await B5t(t.server),r.send({code:0,data:d})}catch(n){r.send({code:1,message:n?.message||"\u767B\u5F55\u5931\u8D25",data:n?.data||{}})}}),e.post("/login-web",async(t,r)=>{try{let n=await Xxt(t,{username:t.body.username||t.body.phone,password:t.body.password});r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u7F51\u9875\u767B\u5F55\u5931\u8D25",data:n?.data||{}})}}),e.post("/debug-download",async(t,r)=>{try{let n=await fCt(t,t.body||{});r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u8C03\u8BD5\u5931\u8D25",data:n?.data||{}})}}),e.post("/debug-auth",async(t,r)=>{try{let n=await pCt(t);r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u8BA4\u8BC1\u8C03\u8BD5\u5931\u8D25",data:n?.data||{}})}}),e.get("/debug-proxy-trace",async(t,r)=>{r.send({code:0,data:Rxt()})}),e.delete("/debug-proxy-trace",async(t,r)=>{Dxt(),r.send({code:0})})}Yr();var j5t=Se(kb(),1),e4=Se(di(),1),H5t=Se(MP(),1),hwn="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",dQ={},mwn=async e=>{let t=String(e.config?.ali?.token||""),r=e4.default.enc.Hex.stringify(e4.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/ali",{});return n[r]?n[r]:t?(await e.db.push(`/ali/${r}`,t),t):""},gwn=async(e,t)=>{let r=e4.default.enc.Hex.stringify(e4.default.MD5(e.config.ali.token)).toString();await e.db.push(`/ali/${r}`,t)};async function I2e(e){e.get("/qrcode",async(t,r)=>{dQ=(await Ee.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{"User-Agent":hwn})).data.content.data;let i=await j5t.default.toBuffer(dQ.codeContent,{width:300,height:300});r.send(i)}),e.post("/token",(t,r)=>{let n="";Ee.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",H5t.default.stringify({t:dQ.t,appName:"aliyun_drive",ck:dQ.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}),{headers:{"content-type":"application/x-www-form-urlencoded"}}).then(async i=>{let s=i.data.content.data;if(s.qrCodeStatus==="CONFIRMED"){let a=decodeURI(atob(s.bizExt)),o=JSON.parse(a).pds_login_result.refreshToken;return o?(n=o,Promise.resolve(o)):Promise.reject(new Error(`\u83B7\u53D6refreshToken\u5931\u8D25: ${i.data.message}`))}else return Promise.reject(new Error(`\u626B\u7801\u72B6\u6001\u68C0\u6D4B\u5931\u8D25: ${i.data.message}`))}).then(async i=>{r.send({code:0,data:{token:i}})}).catch(i=>{console.error(i),r.send({code:-1,message:i?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/token",async(t,r)=>{r.send({code:0,data:{token:await mwn(t.server)}})}),e.put("/token",async(t,r)=>{await gwn(t.server,t.body.data.token),r.send({code:0})})}Yr();var Api=Se(kb(),1),r4=Se(di(),1);var WC="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",t4={},ywn=async e=>{try{let t=String(e.config?.baidu?.cookie||"");Zu.isInitialized()||await Zu.init(e.db);let r=Zu.get("baidu_cookie")||"";return r||(t?(await Zu.set("baidu_cookie",t),t):"")}catch(t){return console.error("\u83B7\u53D6\u767E\u5EA6Cookie\u5931\u8D25:",t),""}},x2e=async(e,t)=>{try{if(Zu.isInitialized()||await Zu.init(e.db),!t||typeof t!="string")throw new Error("\u65E0\u6548\u7684Cookie\u683C\u5F0F");let r=t.replace(/\r\n/g,"").replace(/\n/g,"").replace(/\s+/g," ").trim();if(!r.includes("BDUSS=")||!r.includes("STOKEN="))throw new Error("Cookie\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u5305\u542BBDUSS\u548CSTOKEN");if(!await Zu.set("baidu_cookie",r))throw new Error("\u4FDD\u5B58Cookie\u5230\u6570\u636E\u5E93\u5931\u8D25");return r}catch(r){throw console.error("\u4FDD\u5B58\u767E\u5EA6Cookie\u5931\u8D25:",r),r}};function _wn(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}async function C2e(e){e.get("/qrcode",async(t,r)=>{try{let n=_wn(),i=new Date().getTime().toString(),s=Math.floor(new Date().getTime()/1e3).toString(),a=`tangram_guid_${i}`,u=(await Ee.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:n,callback:a,apiver:"v3",tt:s,tpl:"netdisk",_:i},headers:{"User-Agent":WC,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',"sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126"',DNT:"1","sec-ch-ua-mobile":"?0","Sec-Fetch-Site":"same-site","Sec-Fetch-Mode":"no-cors","Sec-Fetch-Dest":"script","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let c=JSON.parse(u);if(c.errno===0){t4={sign:c.sign,imgurl:c.imgurl,channel_id:c.channel_id,t1:s,t3:i,requestId:n,callback:a};let l="https://"+c.imgurl,d=await Ee.get(l,{responseType:"arraybuffer",headers:{"User-Agent":WC}});r.send(d.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${c.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(n){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",n),r.status(500).send({code:-1,message:n?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),e.post("/cookie",async(t,r)=>{try{if(!t4.sign)throw new Error("\u8BF7\u5148\u83B7\u53D6\u4E8C\u7EF4\u7801");for(let n=0;n<30;n++){let i=new Date().getTime().toString(),s=`tangram_guid_${i}`,o=(await Ee.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:t4.sign,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:s,_:i},headers:{"User-Agent":WC,Referer:"https://pan.baidu.com"}})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let u=JSON.parse(o);if(u.errno===0&&u.channel_v){let c=JSON.parse(u.channel_v);if(c.status===1){await new Promise(l=>setTimeout(l,1e3));continue}if(c.status===0&&c.v){let l=c.v,d=new Date().getTime().toString(),f=Math.floor(new Date().getTime()/1e3).toString(),h=(await Ee.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:d,bduss:l,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:d,traceid:"",time:f,alg:"v3",elapsed:"1"},headers:{"User-Agent":WC,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof h=="string"){h=h.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let m=h.match(/"bduss":\s*"([^"]+)"/),y=h.match(/"stoken":\s*"([^"]+)"/),g=h.match(/"ptoken":\s*"([^"]+)"/),v=h.match(/"ubi":\s*"([^"]+)"/);if(m&&y&&g&&v){let A=m[1],_=y[1],E=g[1],S=encodeURIComponent(v[1]),N=(O=>Object.entries(O).map(([P,$])=>`${P}=${$}`).join("; "))({newlogin:"1",UBI:S,STOKEN:_,BDUSS:A,PTOKEN:E,BDUSS_BFESS:A,STOKEN_BFESS:_,PTOKEN_BFESS:E,UBI_BFESS:S}),k=(await Ee.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":WC,Referer:"https://pan.baidu.com/",Cookie:N},maxRedirects:0,validateStatus:O=>O===302||O===200})).headers.location;if(k){let P=(await Ee.get(k,{headers:{"User-Agent":WC,Referer:"https://pan.baidu.com/",Cookie:N},maxRedirects:0,validateStatus:j=>j===302||j===200})).headers["set-cookie"],$="";if(P){let j=P.find(z=>z.toLowerCase().includes("stoken"));j&&($=j.split(";")[0])}let Q=$?`BDUSS=${A};${$};`:`BDUSS=${A};STOKEN=${_};`;await x2e(t.server,Q),r.send({code:0,data:Q,message:"\u626B\u7801\u6210\u529F"}),t4={};return}else{let O=`BDUSS=${A};STOKEN=${_};`;await x2e(t.server,O),r.send({code:0,data:O,message:"\u626B\u7801\u6210\u529F"}),t4={};return}}else throw new Error("Cookie\u89E3\u6790\u5931\u8D25: \u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5")}}}else if(u.errno===1){await new Promise(c=>setTimeout(c,1e3));continue}else if(u.errno===2)throw new Error("\u4E8C\u7EF4\u7801\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u83B7\u53D6")}}throw new Error("\u626B\u7801\u8D85\u65F6\uFF0C\u8BF7\u91CD\u8BD5")}catch(n){console.error("\u767E\u5EA6\u626B\u7801\u767B\u5F55\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})}}),e.get("/cookie",async(t,r)=>{try{let n=await ywn(t.server);r.send({code:0,data:n})}catch(n){console.error("\u83B7\u53D6\u767E\u5EA6Cookie\u5931\u8D25:",n),r.send({code:-1,message:"\u83B7\u53D6Cookie\u5931\u8D25"})}}),e.put("/cookie",async(t,r)=>{try{let n=t.body.cookie;if(!n||typeof n!="string")return r.send({code:-1,message:"Cookie\u4E0D\u80FD\u4E3A\u7A7A"});await x2e(t.server,n),r.send({code:0,message:"Cookie\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u767E\u5EA6Cookie\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58Cookie\u5931\u8D25"})}}),e.get("/config",async(t,r)=>{try{let n=r4.default.enc.Hex.stringify(r4.default.MD5(t.server.config.baidu.cookie)).toString(),i=await t.server.db.getObjectDefault(`/baidu/settings/${n}`,{chunkSize:512*1024,poolSize:8,useMultithread:!0});r.send({code:0,data:i})}catch(n){console.error("\u83B7\u53D6\u767E\u5EA6\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let{chunkSize:n,poolSize:i,useMultithread:s}=t.body;if(typeof n!="number"||typeof i!="number"||typeof s!="boolean")return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});let a=r4.default.enc.Hex.stringify(r4.default.MD5(t.server.config.baidu.cookie)).toString();await t.server.db.push(`/baidu/settings/${a}`,{chunkSize:n,poolSize:i,useMultithread:s}),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u767E\u5EA6\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}var T2e=[{key:"quark",name:"\u5938\u514B",enable:!0},{key:"tianyi",name:"\u5929\u7FFC",enable:!0},{key:"yidong",name:"\u79FB\u52A8",enable:!0},{key:"123",name:"P123",enable:!0},{key:"115",name:"P115",enable:!0},{key:"uc",name:"UC",enable:!0},{key:"baidu",name:"\u767E\u5EA6",enable:!0},{key:"ali",name:"\u963F\u91CC",enable:!0}],N2e=async e=>{let r=(await e.db.getObjectDefault("/pans",{}))?.list||e.config.pans.list;return r.filter(n=>T2e.some(i=>i.key===n.key)).concat(T2e.filter(n=>!r.some(i=>i.key===n.key)))},Awn=async(e,t)=>{await e.db.push("/pans/list",t),DI(t)},vwn=async e=>{await e.db.delete("/pans/list"),DI(T2e)};async function R2e(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await N2e(t.server)})}),e.put("/list",async(t,r)=>{await Awn(t.server,t.body.list),r.send({code:0})}),e.delete("/list",async(t,r)=>{await vwn(t.server),r.send({code:0})})}var K5t=Se(eP(),1);async function D2e(e){e.get("/",async(t,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,K5t.default)().format("YYYY-MM-DD")}.json"`);let n=await t.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),e.put("/",async(t,r)=>{await t.server.db.push("/",t.body),r.send({code:0})})}var k2e=async(e,t,r="")=>(await e.db.getObjectDefault("/panlian",{}))?.[t]??r,z0=async(e,t,r)=>{await e.db.push(`/panlian/${t}`,r)};async function O2e(e){e.get("/config",async(t,r)=>{let n=await k2e(t.server,"username",""),i=await k2e(t.server,"password",""),s=await k2e(t.server,"cookie","");r.send({code:0,data:{username:n,password:i,cookie:s,hasCookie:!!String(s||"").trim()}})}),e.put("/config",async(t,r)=>{let n=t.body||{};Object.prototype.hasOwnProperty.call(n,"username")&&await z0(t.server,"username",n.username||""),Object.prototype.hasOwnProperty.call(n,"password")&&await z0(t.server,"password",n.password||""),Object.prototype.hasOwnProperty.call(n,"cookie")&&await z0(t.server,"cookie",n.cookie||""),r.send({code:0,data:!0})}),e.post("/login",async(t,r)=>{try{let n=t.body||{},i=String(n.username||"").trim(),s=String(n.password||"").trim(),a=n.remember!==!1;if(!i||!s)return r.send({code:-1,message:"\u8D26\u53F7\u548C\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A"});let o=await yz(t,i,s,a);await z0(t.server,"username",i),await z0(t.server,"password",s),await z0(t.server,"cookie",o?.cookie||""),r.send({code:0,data:o})}catch(n){r.send({code:-1,message:n?.message||"\u767B\u5F55\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{try{await z0(t.server,"username",""),await z0(t.server,"password",""),await z0(t.server,"cookie",""),r.send({code:0,data:!0})}catch(n){r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u5931\u8D25"})}})}async function P2e(e){e.get("/config",async(t,r)=>{try{let n=await L7(t.server);return r.send({code:0,data:Array.isArray(n)?n:[]})}catch{return r.send({code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:[]})}}),e.put("/config",async(t,r)=>{try{let n=t.body;if(!Array.isArray(n))return r.send({code:400,message:"\u914D\u7F6E\u6570\u636E\u683C\u5F0F\u9519\u8BEF"});let i=n.filter(s=>!(!s||typeof s!="object"||!s.name||typeof s.name!="string"||s.name.trim()===""||!s.url||typeof s.url!="string"||s.url.trim()==="")).map(s=>({name:s.name.trim(),url:s.url.trim(),ua:s.ua||"okhttp/3.15",enabled:s.enabled!==!1,logoUrl:s.logoUrl||""}));return await t.server.db.push("/config/live",i),r.send({code:0,message:"\u76F4\u64AD\u6E90\u914D\u7F6E\u4FDD\u5B58\u6210\u529F",data:{count:i.length}})}catch{return r.send({code:500,message:"\u4FDD\u5B58\u5931\u8D25"})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete("/config/live"),r.send({code:0,message:"\u76F4\u64AD\u6E90\u914D\u7F6E\u5DF2\u6E05\u7A7A",data:[]})}catch{return r.send({code:500,message:"\u5220\u9664\u5931\u8D25"})}})}var M2e="/config/zhuiju";function L2e(e){let t=e&&typeof e=="object"?e:{},r=t.classes&&typeof t.classes=="object"?t.classes:{},n={};for(let[i,s]of Object.entries(r))!i||!s||typeof s!="object"||(n[i]={name:typeof s.name=="string"?s.name.trim():"",hidden:s.hidden===!0,order:Number.isFinite(Number(s.order))?Number(s.order):9999});return{classes:n,updatedAt:Number.isFinite(Number(t.updatedAt))?Number(t.updatedAt):0}}async function bwn(e){try{let t=await e.db.getObjectDefault(M2e,{});return L2e(t)}catch{return L2e({})}}async function Ewn(e){try{let r=await(await e.inject({method:"POST",url:"/spider/zhuiju/3/home?raw=1",payload:{}})).json();return Array.isArray(r?.class)?r.class:[]}catch{return[]}}async function B2e(e){e.get("/config",async(t,r)=>{try{let n=await bwn(t.server),i=await Ewn(t.server);return r.send({code:0,data:{classes:i,config:n}})}catch(n){return r.send({code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25: "+n.message,data:{classes:[],config:{classes:{},updatedAt:0}}})}}),e.put("/config",async(t,r)=>{try{let n=L2e(t.body||{});return n.updatedAt=Date.now(),await t.server.db.push(M2e,n),r.send({code:0,message:"\u8FFD\u5267\u805A\u5408\u5206\u7C7B\u914D\u7F6E\u4FDD\u5B58\u6210\u529F",data:n})}catch(n){return r.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+n.message})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete(M2e),r.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u5206\u7C7B\u914D\u7F6E",data:{classes:{},updatedAt:0}})}catch(n){return r.send({code:1,message:"\u91CD\u7F6E\u5931\u8D25: "+n.message})}})}async function $2e(e){e.get("/",(t,r)=>{r.type("text/html").send(` + `)}),e.get("/account",async(t,r)=>{let n=await Y4e(t.server,"username"),s=await Y4e(t.server,"password"),i=await R$n(t.server,n);r.send({code:0,data:{username:n,password:s,verification:i?C$n(i):null}})}),e.put("/account",async(t,r)=>{try{await AB(t,{username:t.body.username,password:t.body.password}),await Q4e(t.server),r.send({code:0})}catch(n){r.send({code:1,message:n?.message||"\u4FDD\u5B58\u5931\u8D25"})}}),e.post("/verification",async(t,r)=>{try{let n=t.body.username||t.body.phone;await AB(t,{username:n,password:t.body.password});let s=await Itr(t,n);r.send({code:0,data:s})}catch(n){let s=btr(n);if(s){r.send({code:0,data:s});return}r.send({code:1,message:n?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",data:n?.data||{}})}}),e.post("/verification/retry",async(t,r)=>{try{let n=await Y4e(t.server,"username");if(!n)throw new Error("\u8BF7\u5148\u8F93\u5165\u624B\u673A\u53F7\u548C\u5BC6\u7801\uFF0C\u518D\u91CD\u65B0\u53D1\u9001\u9A8C\u8BC1\u7801");let s=await Itr(t,n);r.send({code:0,data:s})}catch(n){let s=btr(n);if(s){r.send({code:0,data:s});return}r.send({code:1,message:n?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25",data:n?.data||{}})}}),e.post("/login",async(t,r)=>{try{let n=t.body.username||t.body.phone,s=W4e(n),i=await Rtr(t.server),a=i1?.phone===s&&Number(i1?.expiresAt||0)>Date.now()?i1:null,o=i?.phone===s&&Number(i?.expiresAt||0)>Date.now()?i:null,c=String(t.body.verificationId||"").trim(),u=(c?[a,o].find(f=>f?.verificationId===c):a||o)||null,l=c||u?.verificationId||"";u?.reviewState&&await EFt(t,u.reviewState);let d=await xFt(t,{username:n,password:t.body.password,verificationId:l,verificationCode:t.body.verificationCode});await Q4e(t.server),r.send({code:0,data:d})}catch(n){r.send({code:1,message:n?.message||"\u767B\u5F55\u5931\u8D25",data:n?.data||{}})}}),e.post("/login-web",async(t,r)=>{try{let n=await CFt(t,{username:t.body.username||t.body.phone,password:t.body.password});r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u7F51\u9875\u767B\u5F55\u5931\u8D25",data:n?.data||{}})}}),e.post("/debug-download",async(t,r)=>{try{let n=await VFt(t,t.body||{});r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u8C03\u8BD5\u5931\u8D25",data:n?.data||{}})}}),e.post("/debug-auth",async(t,r)=>{try{let n=await jFt(t);r.send({code:0,data:n})}catch(n){r.send({code:1,message:n?.message||"\u8BA4\u8BC1\u8C03\u8BD5\u5931\u8D25",data:n?.data||{}})}}),e.get("/debug-proxy-trace",async(t,r)=>{r.send({code:0,data:aFt()})}),e.delete("/debug-proxy-trace",async(t,r)=>{oFt(),r.send({code:0})})}vr();var wtr=Ne(jE(),1),a1=Ne(Yi(),1),Ntr=Ne(cx(),1);el();var x$n="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",lZ={},J4e={chunkSize:512*1024,poolSize:6,useMultithread:!0},Ctr=As.maxPoolSize;function xtr(e){return a1.default.enc.Hex.stringify(a1.default.MD5(e.config.ali.token)).toString()}var w$n=async e=>{let t=String(e.config?.ali?.token||""),r=a1.default.enc.Hex.stringify(a1.default.MD5(t)).toString(),n=await e.db.getObjectDefault("/ali",{});return n[r]?n[r]:t?(await e.db.push(`/ali/${r}`,t),t):""},N$n=async(e,t)=>{let r=a1.default.enc.Hex.stringify(a1.default.MD5(e.config.ali.token)).toString();await e.db.push(`/ali/${r}`,t)};async function Z4e(e){e.get("/qrcode",async(t,r)=>{lZ=(await ye.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{"User-Agent":x$n})).data.content.data;let s=await wtr.default.toBuffer(lZ.codeContent,{width:300,height:300});r.send(s)}),e.post("/token",(t,r)=>{let n="";ye.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",Ntr.default.stringify({t:lZ.t,appName:"aliyun_drive",ck:lZ.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}),{headers:{"content-type":"application/x-www-form-urlencoded"}}).then(async s=>{let i=s.data.content.data;if(i.qrCodeStatus==="CONFIRMED"){let a=decodeURI(atob(i.bizExt)),o=JSON.parse(a).pds_login_result.refreshToken;return o?(n=o,Promise.resolve(o)):Promise.reject(new Error(`\u83B7\u53D6refreshToken\u5931\u8D25: ${s.data.message}`))}else return Promise.reject(new Error(`\u626B\u7801\u72B6\u6001\u68C0\u6D4B\u5931\u8D25: ${s.data.message}`))}).then(async s=>{r.send({code:0,data:{token:s}})}).catch(s=>{console.error(s),r.send({code:-1,message:s?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})})}),e.get("/token",async(t,r)=>{r.send({code:0,data:{token:await w$n(t.server)}})}),e.put("/token",async(t,r)=>{await N$n(t.server,t.body.data.token),r.send({code:0})}),e.get("/config",async(t,r)=>{try{let n=xtr(t.server),s=await t.server.db.getObjectDefault(`/ali/settings/${n}`,J4e);s.poolSize=Math.min(Ctr,Number(s.poolSize)||J4e.poolSize),r.send({code:0,data:s})}catch(n){console.error("\u83B7\u53D6\u963F\u91CC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=LE(t.body,J4e);if(!n)return r.send({code:-1,message:"\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});n.poolSize=Math.min(Ctr,n.poolSize);let s=xtr(t.server);await t.server.db.push(`/ali/settings/${s}`,n),r.send({code:0,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u963F\u91CC\u5206\u7247\u914D\u7F6E\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25"})}})}vr();var DBs=Ne(jE(),1);Ds();LB();var jN="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",BU={},O$n=async e=>{try{let t=String(e.config?.baidu?.cookie||"");sl.isInitialized()||await sl.init(e.db);let r=sl.get("baidu_cookie")||"";return r||(t?(await sl.set("baidu_cookie",t),t):"")}catch(t){return console.error("\u83B7\u53D6\u767E\u5EA6Cookie\u5931\u8D25:",t),""}},eBe=async(e,t)=>{try{if(sl.isInitialized()||await sl.init(e.db),!t||typeof t!="string")throw new Error("\u65E0\u6548\u7684Cookie\u683C\u5F0F");let r=t.replace(/\r\n/g,"").replace(/\n/g,"").replace(/\s+/g," ").trim();if(!r.includes("BDUSS=")||!r.includes("STOKEN="))throw new Error("Cookie\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u5305\u542BBDUSS\u548CSTOKEN");if(!await sl.set("baidu_cookie",r))throw new Error("\u4FDD\u5B58Cookie\u5230\u6570\u636E\u5E93\u5931\u8D25");return r}catch(r){throw console.error("\u4FDD\u5B58\u767E\u5EA6Cookie\u5931\u8D25:",r),r}};function D$n(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){let t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}async function tBe(e){e.get("/qrcode",async(t,r)=>{try{let n=D$n(),s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),a=`tangram_guid_${s}`,c=(await ye.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:n,callback:a,apiver:"v3",tt:i,tpl:"netdisk",_:s},headers:{"User-Agent":jN,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',"sec-ch-ua":'"Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126"',DNT:"1","sec-ch-ua-mobile":"?0","Sec-Fetch-Site":"same-site","Sec-Fetch-Mode":"no-cors","Sec-Fetch-Dest":"script","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}})).data;if(typeof c=="string"){c=c.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let u=JSON.parse(c);if(u.errno===0){BU={sign:u.sign,imgurl:u.imgurl,channel_id:u.channel_id,t1:i,t3:s,requestId:n,callback:a};let l="https://"+u.imgurl,d=await ye.get(l,{responseType:"arraybuffer",headers:{"User-Agent":jN}});r.send(d.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${u.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(n){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",n),r.status(500).send({code:-1,message:n?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),e.post("/cookie",async(t,r)=>{try{if(!BU.sign)throw new Error("\u8BF7\u5148\u83B7\u53D6\u4E8C\u7EF4\u7801");for(let n=0;n<30;n++){let s=new Date().getTime().toString(),i=`tangram_guid_${s}`,o=(await ye.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:BU.sign,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:i,_:s},headers:{"User-Agent":jN,Referer:"https://pan.baidu.com"}})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=JSON.parse(o);if(c.errno===0&&c.channel_v){let u=JSON.parse(c.channel_v);if(u.status===1){await new Promise(l=>setTimeout(l,1e3));continue}if(u.status===0&&u.v){let l=u.v,d=new Date().getTime().toString(),f=Math.floor(new Date().getTime()/1e3).toString(),p=(await ye.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:d,bduss:l,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:d,traceid:"",time:f,alg:"v3",elapsed:"1"},headers:{"User-Agent":jN,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof p=="string"){p=p.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let m=p.match(/"bduss":\s*"([^"]+)"/),g=p.match(/"stoken":\s*"([^"]+)"/),_=p.match(/"ptoken":\s*"([^"]+)"/),y=p.match(/"ubi":\s*"([^"]+)"/);if(m&&g&&_&&y){let A=m[1],E=g[1],v=_[1],b=encodeURIComponent(y[1]),x=(M=>Object.entries(M).map(([L,U])=>`${L}=${U}`).join("; "))({newlogin:"1",UBI:b,STOKEN:E,BDUSS:A,PTOKEN:v,BDUSS_BFESS:A,STOKEN_BFESS:E,PTOKEN_BFESS:v,UBI_BFESS:b}),D=(await ye.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":jN,Referer:"https://pan.baidu.com/",Cookie:x},maxRedirects:0,validateStatus:M=>M===302||M===200})).headers.location;if(D){let L=(await ye.get(D,{headers:{"User-Agent":jN,Referer:"https://pan.baidu.com/",Cookie:x},maxRedirects:0,validateStatus:$=>$===302||$===200})).headers["set-cookie"],U="";if(L){let $=L.find(K=>K.toLowerCase().includes("stoken"));$&&(U=$.split(";")[0])}let G=U?`BDUSS=${A};${U};`:`BDUSS=${A};STOKEN=${E};`;await eBe(t.server,G),r.send({code:0,data:G,message:"\u626B\u7801\u6210\u529F"}),BU={};return}else{let M=`BDUSS=${A};STOKEN=${E};`;await eBe(t.server,M),r.send({code:0,data:M,message:"\u626B\u7801\u6210\u529F"}),BU={};return}}else throw new Error("Cookie\u89E3\u6790\u5931\u8D25: \u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5")}}}else if(c.errno===1){await new Promise(u=>setTimeout(u,1e3));continue}else if(c.errno===2)throw new Error("\u4E8C\u7EF4\u7801\u5DF2\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u83B7\u53D6")}}throw new Error("\u626B\u7801\u8D85\u65F6\uFF0C\u8BF7\u91CD\u8BD5")}catch(n){console.error("\u767E\u5EA6\u626B\u7801\u767B\u5F55\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u626B\u7801\u767B\u5F55\u5931\u8D25"})}}),e.get("/cookie",async(t,r)=>{try{let n=await O$n(t.server);r.send({code:0,data:n})}catch(n){console.error("\u83B7\u53D6\u767E\u5EA6Cookie\u5931\u8D25:",n),r.send({code:-1,message:"\u83B7\u53D6Cookie\u5931\u8D25"})}}),e.put("/cookie",async(t,r)=>{try{let n=t.body.cookie;if(!n||typeof n!="string")return r.send({code:-1,message:"Cookie\u4E0D\u80FD\u4E3A\u7A7A"});await eBe(t.server,n),r.send({code:0,message:"Cookie\u5DF2\u4FDD\u5B58"})}catch(n){console.error("\u4FDD\u5B58\u767E\u5EA6Cookie\u5931\u8D25:",n),r.send({code:-1,message:n?.message||"\u4FDD\u5B58Cookie\u5931\u8D25"})}})}QX();yi();jg();var rBe=[{key:"quark",name:"\u5938\u514B",enable:!0},{key:"tianyi",name:"\u5929\u7FFC",enable:!0},{key:"yidong",name:"\u79FB\u52A8",enable:!0},{key:"123",name:"P123",enable:!0,routeOrder:[...kT[123]]},{key:"115",name:"P115",enable:!0,routeOrder:[...kT[115]]},{key:"uc",name:"UC",enable:!0,routeOrder:[...kT.uc]},{key:"baidu",name:"\u767E\u5EA6",enable:!0},{key:"ali",name:"\u963F\u91CC",enable:!0,routeOrder:[...kT.ali]},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0},{key:"guangya",name:"\u5149\u9E2D",enable:!0},{key:"magnet",name:"115\u4E91\u8F6C\u5B58",enable:!0},{key:"magnet_guangya",name:"\u5149\u9E2D\u4E91\u8F6C\u5B58",enable:!1}],Otr=(e=[])=>{let t=mMt(e);for(let n of t)n?.key==="guangya"&&(n.name="\u5149\u9E2D");let r=t.filter(n=>["magnet","magnet_guangya"].includes(n?.key)&&n.enable!==!1);if(r.length>1){let n=r[r.length-1]?.key;for(let s of t)["magnet","magnet_guangya"].includes(s?.key)&&(s.enable=s.key===n)}return t},nBe=async e=>{let r=(await e.db.getObjectDefault("/pans",{}))?.list||e.config?.pans?.list||[],n=new Set(rBe.map(a=>a.key)),s=new Set,i=[];for(let a of r)!n.has(a.key)||s.has(a.key)||(s.add(a.key),i.push(a));for(let a of rBe)s.has(a.key)||(s.add(a.key),i.push(a));return Otr(i)},P$n=async(e,t)=>{let r=Otr(t);return await e.db.push("/pans/list",r),OE(r),r},L$n=async e=>{await e.db.delete("/pans/list"),OE(rBe)};async function sBe(e){e.get("/list",async(t,r)=>{r.send({code:0,data:await nBe(t.server)})}),e.put("/list",async(t,r)=>{let n=await P$n(t.server,t.body.list);r.send({code:0,data:n})}),e.delete("/list",async(t,r)=>{await L$n(t.server),r.send({code:0})})}var Dtr=Ne(T4(),1);async function iBe(e){e.get("/",async(t,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,Dtr.default)().format("YYYY-MM-DD")}.json"`);let n=await t.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),e.put("/",async(t,r)=>{await t.server.db.push("/",t.body),r.send({code:0})})}RPe();hW();lMe();var aBe=async(e,t,r="")=>(await e.db.getObjectDefault("/panlian",{}))?.[t]??r,B_=async(e,t,r)=>{await e.db.push(`/panlian/${t}`,r)};async function oBe(e){e.get("/config",async(t,r)=>{let n=await aBe(t.server,"username",""),s=await aBe(t.server,"password",""),i=await aBe(t.server,"cookie","");r.send({code:0,data:{username:n,password:s,cookie:i,hasCookie:!!String(i||"").trim()}})}),e.put("/config",async(t,r)=>{let n=t.body||{};Object.prototype.hasOwnProperty.call(n,"username")&&await B_(t.server,"username",n.username||""),Object.prototype.hasOwnProperty.call(n,"password")&&await B_(t.server,"password",n.password||""),Object.prototype.hasOwnProperty.call(n,"cookie")&&await B_(t.server,"cookie",n.cookie||""),r.send({code:0,data:!0})}),e.post("/login",async(t,r)=>{try{let n=t.body||{},s=String(n.username||"").trim(),i=String(n.password||"").trim(),a=n.remember!==!1;if(!s||!i)return r.send({code:-1,message:"\u8D26\u53F7\u548C\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A"});let o=await j3(t,s,i,a);await B_(t.server,"username",s),await B_(t.server,"password",i),await B_(t.server,"cookie",o?.cookie||""),r.send({code:0,data:o})}catch(n){r.send({code:-1,message:n?.message||"\u767B\u5F55\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{try{await B_(t.server,"username",""),await B_(t.server,"password",""),await B_(t.server,"cookie",""),r.send({code:0,data:!0})}catch(n){r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u5931\u8D25"})}})}vX();var dZ=async(e,t,r="")=>(await e.db.getObjectDefault("/filejin",{}))?.[t]??r,Gp=async(e,t,r)=>{await e.db.push(`/filejin/${t}`,r)};async function cBe(e){e.get("/config",async(t,r)=>{let n=await dZ(t.server,"username",""),s=await dZ(t.server,"password",""),i=await dZ(t.server,"cookie",""),a=await dZ(t.server,"site","");r.send({code:0,data:{username:n,password:s,cookie:i,site:a,hasCookie:!!String(i||"").trim()}})}),e.put("/config",async(t,r)=>{let n=t.body||{};if(Object.prototype.hasOwnProperty.call(n,"username")&&await Gp(t.server,"username",n.username||""),Object.prototype.hasOwnProperty.call(n,"password")&&await Gp(t.server,"password",n.password||""),Object.prototype.hasOwnProperty.call(n,"cookie")&&await Gp(t.server,"cookie",n.cookie||""),Object.prototype.hasOwnProperty.call(n,"site")){let s=String(n.site||"").trim().replace(/\/+$/,"");await Gp(t.server,"site",s)}r.send({code:0,data:!0})}),e.post("/login",async(t,r)=>{try{let n=t.body||{},s=String(n.username||"").trim(),i=String(n.password||"").trim(),a=n.remember!==!1;if(!s||!i)return r.send({code:-1,message:"\u8D26\u53F7\u548C\u5BC6\u7801\u4E0D\u80FD\u4E3A\u7A7A"});let o=await hN(t,s,i,a);await Gp(t.server,"username",s),await Gp(t.server,"password",i),await Gp(t.server,"cookie",o?.cookie||""),r.send({code:0,data:o})}catch(n){r.send({code:-1,message:n?.message||"\u767B\u5F55\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{try{await Gp(t.server,"username",""),await Gp(t.server,"password",""),await Gp(t.server,"cookie",""),r.send({code:0,data:!0})}catch(n){r.send({code:-1,message:n?.message||"\u6E05\u7A7A\u5931\u8D25"})}})}vr();var Ptr="https://pan1.me",M$n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",uBe="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86";async function Ltr(e){let t=await e.db.getObjectDefault("/pan1",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:String(t?.replyMessage||uBe).trim()||uBe}}async function fZ(e,t,r){await e.db.push(`/pan1/${t}`,r)}function k$n(e=""){let t=String(e||"").match(/\bvar\s+uid\s*=\s*(\d+)\s*;/i)?.[1]||"0";return{valid:t!=="0"&&!/您所在的用户组权限不足|登录后体验更多功能/.test(String(e||"")),uid:t==="0"?"":t}}async function lBe(e){e.get("/config",async(t,r)=>{let n=await Ltr(t.server);r.send({code:0,data:{...n,hasCookie:!!n.cookie,cookieLength:n.cookie.length}})}),e.put("/config",async(t,r)=>{let n=t.body||{};if(Object.prototype.hasOwnProperty.call(n,"cookie")&&await fZ(t.server,"cookie",String(n.cookie||"").trim()),Object.prototype.hasOwnProperty.call(n,"autoReply")&&await fZ(t.server,"autoReply",n.autoReply!==!1),Object.prototype.hasOwnProperty.call(n,"replyMessage")){let s=String(n.replyMessage||"").trim()||uBe;await fZ(t.server,"replyMessage",s)}r.send({code:0,data:!0})}),e.post("/validate",async(t,r)=>{try{let n=await Ltr(t.server);if(!n.cookie)return r.send({code:-1,message:"\u8BF7\u5148\u586B\u5199\u5E76\u4FDD\u5B58\u8BBA\u575B Cookie"});let s=await ye.get(`${Ptr}/`,{timeout:15e3,validateStatus:()=>!0,headers:{"User-Agent":M$n,Referer:`${Ptr}/`,Cookie:n.cookie}});if(s.status>=400)return r.send({code:-1,message:`\u8BBA\u575B\u8FD4\u56DE HTTP ${s.status}`});let i=k$n(String(s.data||""));if(!i.valid)return r.send({code:-1,message:"Cookie \u5DF2\u5931\u6548\u6216\u8D26\u53F7\u6CA1\u6709\u8D44\u6E90\u7248\u8BBF\u95EE\u6743\u9650"});r.send({code:0,data:{valid:!0,uid:i.uid}})}catch(n){r.send({code:-1,message:n?.message||"Cookie \u9A8C\u8BC1\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{await fZ(t.server,"cookie",""),r.send({code:0,data:!0})})}vr();Xd();var dBe="https://guangya.qsxy.top",B$n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",fBe="\u611F\u8C22\u5206\u4EAB\uFF0C\u8F9B\u82E6\u6574\u7406\u4E86";async function Mtr(e){let t=await e.db.getObjectDefault("/guangyaqsxy",{});return{cookie:String(t?.cookie||"").trim(),autoReply:t?.autoReply!==!1,replyMessage:String(t?.replyMessage||fBe).trim()||fBe}}async function hZ(e,t,r){await e.db.push(`/guangyaqsxy/${t}`,r)}function U$n(e=""){return String(e||"").replace(/\s+/g," ").trim()}function ktr(e=""){let t=String(e||""),r=U$n(Xt(t)("body").text()),n=/<body[^>]*\blogged-in\b/i.test(t)||/退出登录|用户中心/.test(t),s=/https?:\/\/(?:www\.)?guangyapan\.com\/s\//i.test(t),i=/内容已隐藏[^。!;]{0,100}评论后刷新页面查看|评论后可见|回复后可见/.test(r),a=t.match(/<body[\s\S]*?\buser-name[^>]*>([^<]+)</i)?.[1]?.trim()||t.match(/\bdisplay_name["']?\s*[:=]\s*["']([^"']+)/i)?.[1]?.trim()||"";return{loggedIn:n,canReadResource:s,commentRequired:i,username:a}}function F$n(e=""){let t=Xt(String(e||"")),r=[];if(t(".posts-item a[href], article a[href]").each((n,s)=>{let i=String(t(s).attr("href")||"").trim();/^https:\/\/guangya\.qsxy\.top\/\d+\.html$/i.test(i)&&!r.includes(i)&&r.push(i)}),r.length===0)for(let n of String(e||"").matchAll(/href=["'](https:\/\/guangya\.qsxy\.top\/\d+\.html)["']/ig))r.includes(n[1])||r.push(n[1]);return r}async function hBe(e){e.get("/config",async(t,r)=>{let n=await Mtr(t.server);r.send({code:0,data:{...n,hasCookie:!!n.cookie,cookieLength:n.cookie.length}})}),e.put("/config",async(t,r)=>{let n=t.body||{},s=String(n.replyMessage||"").trim();if(Object.prototype.hasOwnProperty.call(n,"replyMessage")&&s.length<4)return r.send({code:-1,message:"\u81EA\u52A8\u56DE\u590D\u5185\u5BB9\u81F3\u5C11\u9700\u8981 4 \u4E2A\u5B57\u7B26"});if(Object.prototype.hasOwnProperty.call(n,"replyMessage")&&s.length>120)return r.send({code:-1,message:"\u81EA\u52A8\u56DE\u590D\u5185\u5BB9\u4E0D\u80FD\u8D85\u8FC7 120 \u4E2A\u5B57\u7B26"});Object.prototype.hasOwnProperty.call(n,"cookie")&&await hZ(t.server,"cookie",String(n.cookie||"").trim()),Object.prototype.hasOwnProperty.call(n,"autoReply")&&await hZ(t.server,"autoReply",n.autoReply!==!1),Object.prototype.hasOwnProperty.call(n,"replyMessage")&&await hZ(t.server,"replyMessage",s||fBe),r.send({code:0,data:!0})}),e.post("/validate",async(t,r)=>{try{let n=await Mtr(t.server);if(!n.cookie)return r.send({code:-1,message:"\u8BF7\u5148\u586B\u5199\u5E76\u4FDD\u5B58 Cookie"});let s={timeout:2e4,validateStatus:()=>!0,headers:{"User-Agent":B$n,Referer:`${dBe}/`,Cookie:n.cookie}},i=await ye.get(`${dBe}/`,s);if(i.status>=400)return r.send({code:-1,message:`\u7AD9\u70B9\u8FD4\u56DE HTTP ${i.status}`});let a=ktr(i.data);if(!a.loggedIn)return r.send({code:-1,message:"Cookie \u5DF2\u5931\u6548\u6216\u672A\u767B\u5F55"});let o=F$n(i.data).slice(0,5),c=!1,u=!1,l=a.username,d=0;for(let p of o){let m=await ye.get(p,{...s,headers:{...s.headers,Referer:`${dBe}/`}});if(m.status===404)continue;if(m.status>=400)return r.send({code:-1,message:`\u8D44\u6E90\u9875\u8FD4\u56DE HTTP ${m.status}`});d+=1;let g=ktr(m.data);if(l||=g.username,g.canReadResource){c=!0;break}g.commentRequired&&(u=!0)}let f=c?"unlocked":u?"comment_required":"unknown",h=c?"\u767B\u5F55\u6709\u6548\uFF0C\u62BD\u68C0\u6587\u7AE0\u8D44\u6E90\u5DF2\u89E3\u9501":u?`\u767B\u5F55\u6709\u6548\uFF0C\u62BD\u68C0\u6587\u7AE0\u9700\u8BC4\u8BBA\u89E3\u9501${n.autoReply?"\uFF0C\u8BE6\u60C5\u9875\u5C06\u81EA\u52A8\u56DE\u590D":""}`:"\u767B\u5F55\u6709\u6548\uFF0C\u4F46\u62BD\u68C0\u6587\u7AE0\u672A\u8BC6\u522B\u5230\u8D44\u6E90\u72B6\u6001";r.send({code:0,data:{valid:!0,loggedIn:!0,canReadResource:c,resourceGate:f,username:l,checkedPostCount:d,autoReply:n.autoReply,message:h}})}catch(n){r.send({code:-1,message:n?.message||"Cookie \u9A8C\u8BC1\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{await hZ(t.server,"cookie",""),r.send({code:0,data:!0})})}vr();Cr();var Utr="https://www.jying.top",$$n="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",Btr=ye.create({baseURL:Utr,timeout:2e4,validateStatus:()=>!0,httpAgent:fn().httpAgent,httpsAgent:fn().httpsAgent,headers:{"User-Agent":$$n,Accept:"application/json, text/plain, */*","X-Requested-With":"XMLHttpRequest"}});function o1(e){return String(e??"").trim()}async function pBe(e){let t=await e.db.getObjectDefault("/jying",{});return{username:o1(t?.username),password:String(t?.password||"").trim()}}async function KN(e,t,r){await e.db.push(`/jying/${t}`,r)}function q$n(e){let t=e?.headers?.["set-cookie"];return(Array.isArray(t)?t:t?[t]:[]).map(n=>String(n||"").split(";")[0].trim()).filter(Boolean).join("; ")}function H$n(e,t){return String(t||"").match(/(?:^|;\s*)csrftoken=([^;]+)/i)?.[1]||o1(e?.data?.csrfToken||e?.data?.csrf_token)}async function V$n(e,t){let r=await Btr.get("/api/csrf/");if(r.status<200||r.status>=300)throw new Error(`\u805A\u5F71 CSRF \u63A5\u53E3\u8FD4\u56DE HTTP ${r.status}`);let n=q$n(r),s=H$n(r,n);if(!s)throw new Error("\u805A\u5F71\u672A\u8FD4\u56DE CSRF \u51ED\u636E");let i=await Btr.post("/api/app/login/",{username:e,password:t},{headers:{Cookie:n,"X-CSRFToken":s,Referer:`${Utr}/login/`}}),a=i?.data||{};if(i.status<200||i.status>=300||!o1(a.token))throw new Error(o1(a.message||a.detail)||`\u805A\u5F71\u767B\u5F55\u8FD4\u56DE HTTP ${i.status}`);return a.user||{}}async function mBe(e){e.get("/config",async(t,r)=>{let n=await pBe(t.server);r.send({code:0,data:{username:n.username,usernameConfigured:!!n.username,passwordConfigured:!!n.password}})}),e.put("/config",async(t,r)=>{try{let n=t.body||{},s=await pBe(t.server),i=Object.prototype.hasOwnProperty.call(n,"username")?o1(n.username):s.username,a=Object.prototype.hasOwnProperty.call(n,"password")?String(n.password||"").trim():"";if(!i)return r.send({code:-1,message:"\u8BF7\u586B\u5199\u805A\u5F71\u8D26\u53F7"});if(!a&&!s.password)return r.send({code:-1,message:"\u8BF7\u586B\u5199\u805A\u5F71\u5BC6\u7801"});await KN(t.server,"username",i),a&&await KN(t.server,"password",a),r.send({code:0,data:{username:i,passwordConfigured:!!(a||s.password)}})}catch(n){r.send({code:-1,message:n?.message||"\u805A\u5F71\u914D\u7F6E\u4FDD\u5B58\u5931\u8D25"})}}),e.post("/validate",async(t,r)=>{try{let n=t.body||{},s=await pBe(t.server),i=o1(n.username)||s.username,a=String(n.password||"").trim()||s.password;if(!i||!a)return r.send({code:-1,message:"\u8BF7\u5148\u586B\u5199\u805A\u5F71\u8D26\u53F7\u548C\u5BC6\u7801"});let o=await V$n(i,a);n.save===!0&&(await KN(t.server,"username",i),await KN(t.server,"password",a)),r.send({code:0,data:{valid:!0,username:o1(o.username)||i,level:Number(o.level||0),points:Number(o.points||o.user_points||0)}})}catch(n){r.send({code:-1,message:n?.message||"\u805A\u5F71\u8D26\u53F7\u9A8C\u8BC1\u5931\u8D25"})}}),e.post("/clear",async(t,r)=>{await KN(t.server,"username",""),await KN(t.server,"password",""),r.send({code:0,data:!0})})}EW();GPe();SPe();UPe();HPe();LPe();NPe();dke();async function gBe(e){e.get("/config",async(t,r)=>{try{let n=await rJ(t.server);return r.send({code:0,data:Array.isArray(n)?n:[]})}catch{return r.send({code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25",data:[]})}}),e.put("/config",async(t,r)=>{try{let n=t.body;if(!Array.isArray(n))return r.send({code:400,message:"\u914D\u7F6E\u6570\u636E\u683C\u5F0F\u9519\u8BEF"});let s=n.filter(i=>!(!i||typeof i!="object"||!i.name||typeof i.name!="string"||i.name.trim()===""||!i.url||typeof i.url!="string"||i.url.trim()==="")).map(i=>({name:i.name.trim(),url:i.url.trim(),ua:i.ua||"okhttp/3.15",enabled:i.enabled!==!1,logoUrl:i.logoUrl||""}));return await t.server.db.push("/config/live",s),r.send({code:0,message:"\u76F4\u64AD\u6E90\u914D\u7F6E\u4FDD\u5B58\u6210\u529F",data:{count:s.length}})}catch{return r.send({code:500,message:"\u4FDD\u5B58\u5931\u8D25"})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete("/config/live"),r.send({code:0,message:"\u76F4\u64AD\u6E90\u914D\u7F6E\u5DF2\u6E05\u7A7A",data:[]})}catch{return r.send({code:500,message:"\u5220\u9664\u5931\u8D25"})}})}WPe();eLe();var _Be="/config/zhuiju";function ABe(e){let t=e&&typeof e=="object"?e:{},r=t.classes&&typeof t.classes=="object"?t.classes:{},n={};for(let[s,i]of Object.entries(r))!s||!i||typeof i!="object"||(n[s]={name:typeof i.name=="string"?i.name.trim():"",hidden:i.hidden===!0,order:Number.isFinite(Number(i.order))?Number(i.order):9999});return{classes:n,updatedAt:Number.isFinite(Number(t.updatedAt))?Number(t.updatedAt):0}}async function j$n(e){try{let t=await e.db.getObjectDefault(_Be,{});return ABe(t)}catch{return ABe({})}}async function K$n(e){try{let r=await(await e.inject({method:"POST",url:"/spider/zhuiju/3/home?raw=1",payload:{}})).json();return Array.isArray(r?.class)?r.class:[]}catch{return[]}}async function EBe(e){e.get("/config",async(t,r)=>{try{let n=await j$n(t.server),s=await K$n(t.server);return r.send({code:0,data:{classes:s,config:n}})}catch(n){return r.send({code:1,message:"\u83B7\u53D6\u914D\u7F6E\u5931\u8D25: "+n.message,data:{classes:[],config:{classes:{},updatedAt:0}}})}}),e.put("/config",async(t,r)=>{try{let n=ABe(t.body||{});return n.updatedAt=Date.now(),await t.server.db.push(_Be,n),r.send({code:0,message:"\u8FFD\u5267\u805A\u5408\u5206\u7C7B\u914D\u7F6E\u4FDD\u5B58\u6210\u529F",data:n})}catch(n){return r.send({code:1,message:"\u4FDD\u5B58\u5931\u8D25: "+n.message})}}),e.delete("/config",async(t,r)=>{try{return await t.server.db.delete(_Be),r.send({code:0,message:"\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u5206\u7C7B\u914D\u7F6E",data:{classes:{},updatedAt:0}})}catch(n){return r.send({code:1,message:"\u91CD\u7F6E\u5931\u8D25: "+n.message})}})}VJ();async function yBe(e){BN(),e.get("/list",async t=>{let r=await HJ(t.server);return{code:0,data:{dir:ter(),files:r.map(n=>({name:n.name,size:n.size,size_str:n.size_str,mtime:n.mtime,key:n.key}))}}}),e.post("/upload",async(t,r)=>{let n=UN(),s=null;try{s=await t.file({limits:{fileSize:n}})}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${FJ(n)} \u4E0A\u9650`}):r.code(400).send({code:-1,message:"\u4E0A\u4F20\u8BFB\u53D6\u5931\u8D25: "+(i?.message||i)})}if(!s)return r.code(400).send({code:-1,message:"\u672A\u6536\u5230\u6587\u4EF6"});try{let i=t.query?.overwrite==="1"||t.query?.overwrite==="true";return{code:0,data:await cer(s.filename,s.file,{maxBytes:n,overwrite:i})}}catch(i){return i?.code==="FST_REQ_FILE_TOO_LARGE"||i?.code==="DUDB_UPLOAD_TOO_LARGE"?r.code(413).send({code:-1,message:`\u6587\u4EF6\u8D85\u8FC7 ${FJ(n)} \u4E0A\u9650`}):i?.code==="DUDB_UPLOAD_EXISTS"?r.code(409).send({code:-1,message:i?.message||"\u6587\u4EF6\u5DF2\u5B58\u5728\uFF0C\u8BF7\u786E\u8BA4\u8986\u76D6",data:{exists:!0,name:i?.name||s.filename}}):r.code(400).send({code:-1,message:i?.message||String(i)})}}),e.delete("/file/:name",async(t,r)=>{let n=decodeURIComponent(String(t.params?.name||""));if(!n)return r.code(400).send({code:-1,message:"\u7F3A\u5C11 name"});try{return{code:0,data:await uer(t.server,n)}}catch(s){return r.code(400).send({code:-1,message:s?.message||String(s)})}}),e.put("/order",async(t,r)=>{let n=t.body||{},s=Array.isArray(n)?n:n.order;if(!Array.isArray(s))return r.code(400).send({code:-1,message:"\u53C2\u6570\u5E94\u4E3A\u6587\u4EF6\u540D\u6570\u7EC4"});try{return await oer(t.server,s),{code:0}}catch(i){return r.code(400).send({code:-1,message:i?.message||String(i)})}}),e.get("/settings",async(t,r)=>{try{return{code:0,data:await $J(t.server)}}catch(n){return r.code(400).send({code:-1,message:n?.message||String(n)})}}),e.post("/settings",async(t,r)=>{try{return{code:0,data:await ner(t.server,t.body||{})}}catch(n){return r.code(400).send({code:-1,message:n?.message||String(n)})}})}var vBe=Ne(jE(),1),mZ=require("crypto");Ox();SK();jRe();var zp=new Map,FU=new Map,pZ="";function SBe(e=""){return(0,mZ.createHash)("sha256").update(String(e||"")).digest("hex")}function qtr(){let e=Date.now();for(let[t,r]of FU)Number(r?.expiresAt||0)<=e&&FU.delete(t)}function G$n(e={}){let t=String(e.refreshToken||"").trim();if(!t)throw new Error("\u626B\u7801\u6210\u529F\uFF0C\u4F46\u672A\u83B7\u53D6\u5230\u53EF\u4FDD\u5B58\u7684 Cookie");return qtr(),FU.set(SBe(t),{accessToken:String(e.accessToken||"").trim(),refreshToken:t,deviceId:String(e.deviceId||"").trim(),expiresAt:Date.now()+10*60*1e3}),t}function z$n(e=""){qtr();let t=SBe(e);return FU.get(t)||null}function Htr(){let e=Date.now();for(let[t,r]of zp)Number(r?.expiresAt||0)<=e&&zp.delete(t);for(;zp.size>20;){let t=zp.keys().next().value;if(!t)break;zp.delete(t)}}async function Ftr(e){Htr();let t=await e3t(e),r=Date.now(),n=(0,mZ.randomUUID)(),s={...t,sessionId:n,createdAt:r,expiresAt:r+Math.max(30,Number(t.expiresIn||120))*1e3};return zp.set(n,s),s}function UU(e,t,r,n={}){return{sessionId:e?.sessionId||"",status:t,message:r,expiresAt:Number(e?.expiresAt||0),pollIntervalMs:Math.max(1500,Number(e?.interval||2)*1e3),loggedIn:n?.loggedIn===!0,updatedAt:n?.updatedAt||""}}async function $tr(e,t){Htr();let r=zp.get(String(t||""));if(!r)return UU(null,"EXPIRED","\u767B\u5F55\u4F1A\u8BDD\u4E0D\u5B58\u5728\u6216\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u751F\u6210\u4E8C\u7EF4\u7801");if(r.expiresAt<=Date.now())return zp.delete(r.sessionId),UU(r,"EXPIRED","\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u751F\u6210");let n=await t3t(e,r,{persist:!1});if(n.status==="CONFIRMED"){zp.delete(r.sessionId);let s=G$n(n);return{...UU(r,n.status,n.message||"\u626B\u7801\u6210\u529F\uFF0C\u8BF7\u70B9\u51FB\u5165\u5E93\u4FDD\u5B58"),cookie:s}}return(n.status==="EXPIRED"||n.status==="CANCELED")&&zp.delete(r.sessionId),UU(r,n.status,n.message||"\u7B49\u5F85\u626B\u7801\u786E\u8BA4")}async function TBe(e){e.get("/config",async(t,r)=>{try{r.send({code:0,data:await lK(t.server)})}catch(n){console.error("[guangya/config] load failed:",n?.message||n),r.send({code:-1,message:"\u8BFB\u53D6\u5149\u9E2D\u64AD\u653E\u4EE3\u7406\u914D\u7F6E\u5931\u8D25"})}}),e.put("/config",async(t,r)=>{try{let n=UBt(t.body);if(!n)return r.send({code:-1,message:"\u64AD\u653E\u4EE3\u7406\u914D\u7F6E\u53C2\u6570\u683C\u5F0F\u9519\u8BEF"});await t.server.db.push(VRe,n),r.send({code:0,data:n,message:"\u914D\u7F6E\u5DF2\u4FDD\u5B58"})}catch(n){console.error("[guangya/config] save failed:",n?.message||n),r.send({code:-1,message:"\u4FDD\u5B58\u5149\u9E2D\u64AD\u653E\u4EE3\u7406\u914D\u7F6E\u5931\u8D25"})}}),e.post("/login/session",async(t,r)=>{try{let n=await Ftr(t.server),s=await vBe.default.toDataURL(n.verificationUrl,{width:300,margin:1});r.send({code:0,data:{...UU(n,"NEW","\u8BF7\u4F7F\u7528\u5149\u9E2D\u626B\u63CF\u4E8C\u7EF4\u7801\u5E76\u5728\u624B\u673A\u4E0A\u786E\u8BA4\u767B\u5F55"),qrCode:s}})}catch(n){console.error("[guangya/login/session] create failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u751F\u6210\u5149\u9E2D\u767B\u5F55\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),e.post("/login/status",async(t,r)=>{try{let n=await $tr(t.server,t.body?.sessionId);r.send({code:0,data:n})}catch(n){console.error("[guangya/login/status] poll failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u68C0\u67E5\u5149\u9E2D\u767B\u5F55\u72B6\u6001\u5931\u8D25"})}}),e.get("/qrcode",async(t,r)=>{try{let n=await Ftr(t.server);pZ=n.sessionId;let s=await vBe.default.toBuffer(n.verificationUrl,{width:300,height:300});r.type("image/png").send(s)}catch(n){r.code(500).send({code:-1,message:n?.message||String(n)})}}),e.post("/cookie",async(t,r)=>{if(!pZ)return r.send({code:-1,message:"\u8BF7\u5148\u70B9\u51FB\u4E8C\u7EF4\u7801\u751F\u6210\u767B\u5F55\u4F1A\u8BDD"});try{let n=await $tr(t.server,pZ);if(["CONFIRMED","EXPIRED","CANCELED"].includes(n.status)&&(pZ=""),n.status!=="CONFIRMED")return r.send({code:-1,message:n.message||"\u7B49\u5F85\u626B\u7801\u786E\u8BA4"});r.send({code:0,data:n.cookie,message:"\u626B\u7801\u6210\u529F\uFF0C\u8BF7\u70B9\u51FB\u5165\u5E93\u4FDD\u5B58"})}catch(n){console.error("[guangya/cookie] poll failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u68C0\u67E5\u5149\u9E2D\u767B\u5F55\u72B6\u6001\u5931\u8D25"})}}),e.get("/cookie",async(t,r)=>{try{let n=await XRe(t.server,{reveal:!0});r.send({code:0,data:n.refreshToken||""})}catch(n){console.error("[guangya/cookie] load failed:",n?.message||n),r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u5149\u9E2D Cookie \u5931\u8D25"})}}),e.put("/cookie",async(t,r)=>{let n=String(t.body?.cookie||"").trim();if(!n)return r.send({code:-1,message:"Cookie \u4E0D\u80FD\u4E3A\u7A7A"});try{let s=z$n(n);await J4(t.server,{accessToken:s?.accessToken||"",refreshToken:n,...s?.deviceId?{deviceId:s.deviceId}:{}}),FU.delete(SBe(n)),r.send({code:0,message:"Cookie \u5DF2\u5165\u5E93"})}catch(s){console.error("[guangya/cookie] save failed:",s?.message||s),r.send({code:-1,message:s?.message||"\u4FDD\u5B58\u5149\u9E2D Cookie \u5931\u8D25"})}}),e.get("/account",async(t,r)=>{r.send({code:0,data:await XRe(t.server)})}),e.put("/account",async(t,r)=>{await J4(t.server,t.body||{}),r.send({code:0})}),e.get("/cloud/settings",async(t,r)=>{let n={savePath:"root",savePathName:"\u6839\u76EE\u5F55",pollAttempts:20,pollIntervalMs:1500},s=await t.server.db.getObjectDefault("/guangya_cloud_settings",n),i={...n,...s||{}};(!i.savePath||i.savePath==="auto")&&(i.savePath="root",i.savePathName="\u6839\u76EE\u5F55"),r.send({code:0,data:i})}),e.get("/cloud/quota",async(t,r)=>{try{r.send({code:0,data:await rCe(t.server)})}catch(n){r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u5149\u9E2D\u4E91\u6DFB\u52A0\u989D\u5EA6\u72B6\u6001\u5931\u8D25"})}}),e.post("/cloud/settings",async(t,r)=>{let n=t.body||{},s=String(n.savePath||"root"),i=!s||s==="auto"?"root":s,a={savePath:i,savePathName:i==="root"?"\u6839\u76EE\u5F55":String(n.savePathName||"").slice(0,200),pollAttempts:Math.max(1,Math.min(50,Number(n.pollAttempts)||20)),pollIntervalMs:Math.max(200,Math.min(1e4,Number(n.pollIntervalMs)||1500))};await t.server.db.push("/guangya_cloud_settings",a),await oCe(t.server),r.send({code:0,data:a})}),e.get("/cloud/folders",async(t,r)=>{try{let n=String(t.query?.parentId||""),i=(await YT(t.server,n,1,200)).list.filter(a=>Number(a?.resType)===2&&a?.fileId).map(a=>({fileId:String(a.fileId),name:String(a.fileName||a.fileId)}));r.send({code:0,data:i})}catch(n){r.send({code:-1,message:n?.message||"\u8BFB\u53D6\u5149\u9E2D\u76EE\u5F55\u5931\u8D25"})}}),e.post("/cloud/clear",async(t,r)=>{try{let n=t.body?.deleteFiles===!0,s=await s3t(t.server,{deleteFiles:n});await oCe(t.server),r.send({code:0,data:{...s,deleteFiles:n}})}catch(n){console.error("[guangya/cloud/clear]",n?.message),r.send({code:-1,message:n?.message||"\u6E05\u7406\u5149\u9E2D\u4E91\u8F6C\u5B58\u5931\u8D25"})}})}var Hrr=Ne(qrr(),1);VJ();async function HBe(e){await e.register(Hrr.default,{limits:{fileSize:Math.max(UN(),LC())}}),e.get("/",(t,r)=>{let n=String(globalThis.websiteBundle||"").replace(/<\/script>/gi,"<\\/script>");r.type("text/html").send(` <!DOCTYPE html> <html lang="zh-CN"> <head> @@ -8879,11 +10847,11 @@ ${e}`}function vSn(e){return e?`<div style="margin:16px 20px 0;padding:12px 14px <script crossorigin src="https://lib.baomitu.com/axios/0.26.0/axios.min.js"></script> <script crossorigin src="https://lib.baomitu.com/dayjs/1.10.8/dayjs.min.js"></script> <script crossorigin src="https://lib.baomitu.com/antd/5.25.0/antd.min.js"></script> - <script>${globalThis.websiteBundle}</script> + <script>${n}</script> </body> </html> - `)}),e.register(g2e,{prefix:"/quark"}),e.register(dAe,{prefix:"/uc"}),e.register(_2e,{prefix:"/uc-tv"}),e.register(wve,{prefix:"/115"}),e.register(Kve,{prefix:"/muou"}),e.register(v2e,{prefix:"/tianyi"}),e.register(Abe,{prefix:"/wogg"}),e.register(tbe,{prefix:"/leijing"}),e.register(Sbe,{prefix:"/zhizhen"}),e.register(Nbe,{prefix:"/tgsou"}),e.register(b2e,{prefix:"/pan123"}),e.register(w2e,{prefix:"/xunlei"}),e.register(I2e,{prefix:"/ali"}),e.register(C2e,{prefix:"/baidu"}),e.register(j9,{prefix:"/tgchannel"}),e.register(PTe,{prefix:"/sites"}),e.register(R2e,{prefix:"/pans"}),e.register(D2e,{prefix:"/backup"}),e.register(O6,{prefix:"/danmu"}),e.register(Qbe,{prefix:"/t4"}),e.register(Wbe,{prefix:"/cms"}),e.register(ZV,{prefix:"/pansou"}),e.register(O2e,{prefix:"/panlian"}),e.register(_xe,{prefix:"/bilibili"}),e.register(CIe,{prefix:"/ouge"}),e.register(RIe,{prefix:"/labi"}),e.register(OIe,{prefix:"/kuaiying"}),e.register(LIe,{prefix:"/huban"}),e.register(FIe,{prefix:"/erxiao"}),e.register(qve,{prefix:"/duoduo"}),e.register(P2e,{prefix:"/live"}),e.register(lxe,{prefix:"/shandian"}),e.register(B2e,{prefix:"/zhuiju"}),e.register(xTe,{prefix:"/yingchao"})}var V5t=Se(require("os"),1),F2e=e=>e?.find(t=>t.family==="IPv4")?.address,z5t=function(){let e=V5t.default.networkInterfaces();return F2e(e.en0)||F2e(e.en1)||F2e(e.en2)||"127.0.0.1"};var J5t=Se(require("fs"),1),Z5t=Se(require("path"),1),e8t=Se(require("util"),1),t8t=Se(require("crypto"),1);var Ht=null,Q5t=5,Swn=300;function wwn(e){return new Promise(t=>setTimeout(t,e))}function n4(e){return!!e&&typeof e=="object"&&Object.keys(e).length>0}function G5t(e){return e==null?!0:typeof e=="string"?e.trim()==="":!1}function U2e(e){return t8t.default.createHash("md5").update(String(e??"")).digest("hex")}async function Tf(e,t,r){if(G5t(r))return;let n=await e.getObjectDefault(t,"");G5t(n)&&await e.push(t,r)}async function Y5t(e){let t=e?.db,r=e?.config||{};if(!t)return;let n=String(r?.ali?.token||"");await Tf(t,`/ali/${U2e(n)}`,n);let i=String(r?.quark?.cookie||"");await Tf(t,`/quark/${U2e(i)}`,i);let s=String(r?.uc?.cookie||""),a=String(r?.uc?.token||""),o=String(r?.uc?.ut||"");await Tf(t,"/uc/cookie",s),await Tf(t,"/uc/token",a),await Tf(t,"/uc/ut",o);let u=String(r?.baidu?.cookie||"");await Tf(t,"/baidu_driver/baidu_cookie",u);let c=String(r?.y115?.cookie||"");await Tf(t,`/y115/${U2e(c)}`,c);let l=String(r?.pan123?.username||""),d=String(r?.pan123?.password||"");await Tf(t,"/pan123/pan_passport",l),await Tf(t,"/pan123/pan_password",d);let f=String(r?.tianyi?.username||""),p=String(r?.tianyi?.password||"");await Tf(t,"/tyi/cloud_account",f),await Tf(t,"/tyi/cloud_password",p)}var Iwn=["duoduo","muou","leijing","wogg","zhizhen","ouge","labi","kuaiying","huban","erxiao","shandian"];async function W5t(e){if(e?.db)for(let r of Iwn)await r_(e,r)}var xwn="",Cwn=()=>{let e=String(xwn||"").trim();return e?Z5t.default.join(process.env.NODE_PATH||".",e):""},q2e=!1;function Twn(){if(q2e)return;let e=Cwn();if(!e){q2e=!0,console.log("Log file disabled (LOG_FILE_NAME is empty).");return}let t=J5t.default.createWriteStream(e,{flags:"w"}),r=console.log,n=console.error,i=console.warn,s=(a,o)=>{let u=new Date().toISOString(),c=e8t.default.format(...o);t.write(`[${u}] [${a}] ${c} -`)};console.log=(...a)=>{s("INFO",a),r.apply(console,a)},console.error=(...a)=>{s("ERROR",a),n.apply(console,a)},console.warn=(...a)=>{s("WARN",a),i.apply(console,a)},process.on("uncaughtException",a=>{s("FATAL",[a]),n("Uncaught Exception:",a)}),process.on("unhandledRejection",a=>{s("ERROR",["Unhandled Rejection:",a]),n("Unhandled Rejection:",a)}),q2e=!0,console.log(`Log system initialized. Path: ${e}`)}async function Nwn(e){Twn(),console.log("\u5F00\u59CB\u542F\u52A8\u670D\u52A1\u5668...");try{if(Ht=(0,X5t.default)({serverFactory:catServerFactory,forceCloseConnections:!0,logger:process.env.NODE_ENV!=="development",maxParamLength:10240}),!Ht)throw new Error("Server initialization failed");Ht.isReady=!1;let t=new Set;globalThis.messageToDart=Ht.messageToDart=async i=>{let s=i?.action||"unknown",a=Number(catDartServerPort()),o=s==="getPlayInfo"?8e3:s==="queryProfile"||s==="saveProfile"?5e3:2500;if(!Number.isFinite(a)||a<=0)return null;let u=Number(Ht?.address?.()?.port||0);if(u>0&&u===a){let d=`self:${s}`;return t.has(d)||(console.warn(`[messageToDart] \u8DF3\u8FC7\u81EA\u8C03\u7528: action=${s}, port=${a}`),t.add(d)),null}let c=["127.0.0.1","localhost"],l=null;for(let d of c)try{return(await Ee.post(`http://${d}:${a}/msg`,i,{timeout:o})).data}catch(f){l=f;let p=f?.response?.status;if(p===400||p===404){let g=`${p}:${s}`;return t.has(g)||(console.warn(`[messageToDart] Dart\u901A\u4FE1\u6682\u672A\u5C31\u7EEA: action=${s}, status=${p}`),t.add(g)),null}let h=f?.code||"",m=f?.message||"";if(h==="ECONNRESET"||h==="ECONNREFUSED"||h==="ECONNABORTED"||m.includes("socket hang up")){let g=`transient:${d}:${s}:${h||m}`;t.has(g)||(console.warn(`[messageToDart] Dart\u6865\u63A5\u6682\u4E0D\u53EF\u7528\uFF0C\u5DF2\u964D\u7EA7\u5FFD\u7565: action=${s}, host=${d}, code=${h||"unknown"}, message=${m}`),t.add(g));continue}}return l&&console.error("[messageToDart] \u5931\u8D25:",l.message),null},typeof Ht.address!="function"&&(Ht.address=function(){if(!this.server)return{port:0,url:"",dynamic:"js2p://_WEB_"};let i=this.server.address();return i?(i.url=`http://${z5t()}:${i.port}`,i.dynamic="js2p://_WEB_",i):{port:0,url:"",dynamic:"js2p://_WEB_"}}),Ht.addHook("onError",async(i,s,a)=>(console.error("\u670D\u52A1\u5668\u9519\u8BEF:",a),a.statusCode||(a.statusCode=500),a)),Ht.stop=!1,Ht.config=e,Ht.db=new fQ.JsonDB(new fQ.Config((process.env.NODE_PATH||".")+"/test0.db.json",!0,!0,"/",!0)),setTimeout(async()=>{try{let i=null;for(let s=0;s<Q5t&&(i=await Ht.messageToDart({action:"queryProfile"}),!n4(i));s++)s<Q5t-1&&await wwn(Swn);if(n4(i))await Ht.db.push("/",i);else if(n4(e)){let s=null;try{s=await Ht.db.getData("/")}catch{s=null}n4(s)||await Ht.db.push("/",e)}await Y5t(Ht),await W5t(Ht)}catch(i){if(console.warn("\u6062\u590D\u914D\u7F6E\u5931\u8D25\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u914D\u7F6E:",i.message),n4(e))try{await Ht.db.push("/",e),await Y5t(Ht),await W5t(Ht)}catch(s){console.error("\u4FDD\u5B58\u9ED8\u8BA4\u914D\u7F6E\u5931\u8D25:",s)}}},100),(()=>{if(!Ht.db)return;let i=Ht.db.push.bind(Ht.db),s=Ht.db.delete.bind(Ht.db),a=null,o="",u=()=>{a&&clearTimeout(a),a=setTimeout(async()=>{a=null;try{let c=await Ht.db.getData("/"),l=JSON.stringify(c);if(l===o)return;o=l,await Ht.messageToDart({action:"saveProfile",opt:c})}catch(c){console.warn("\u5F02\u6B65\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25:",c.message)}},300)};Ht.db.push=async(...c)=>{if(c[0].includes("juhua_duanju")){console.warn("[\u5B89\u5168\u9632\u62A4] \u5DF2\u62E6\u622A\u53EF\u7591\u64CD\u4F5C");return}try{let d=await i(...c);return u(),d}catch(d){throw console.error("\u6570\u636E\u5E93push\u64CD\u4F5C\u5931\u8D25:",d),d}},Ht.db.delete=async(...c)=>{try{let l=await s(...c);return u(),l}catch(l){throw console.error("\u6570\u636E\u5E93delete\u64CD\u4F5C\u5931\u8D25:",l),l}}})();try{await ab()}catch(i){console.error("\u542F\u52A8 danmu_api \u5931\u8D25:",i)}console.log("\u6CE8\u518C\u8DEF\u7531..."),Ht.register(nQ,{db:Ht.db,config:e}),Ht.register($2e,{prefix:"/website"});try{DI(await N2e(Ht))}catch(i){console.warn("\u521D\u59CB\u5316Pans\u7F13\u5B58\u5931\u8D25:",i.message),DI([])}let n=i=>{if(console.log(`\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668\u5728\u7AEF\u53E3 ${i}...`),!Ht||!Ht.listen){console.error("server \u5BF9\u8C61\u65E0\u6548\uFF0C\u65E0\u6CD5\u542F\u52A8");return}try{Ht.listen({port:process.env.DEV_HTTP_PORT||i,host:"0.0.0.0"},(s,a)=>{s?(console.error("\u670D\u52A1\u5668\u542F\u52A8\u9519\u8BEF:",s),s.code==="EADDRINUSE"?(console.log(`\u7AEF\u53E3 ${i} \u5DF2\u88AB\u5360\u7528\uFF0C\u5C1D\u8BD5\u4E0B\u4E00\u4E2A\u53EF\u7528\u7AEF\u53E3...`),n(i+1)):setTimeout(()=>{console.log("\u91CD\u65B0\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668..."),n(i)},2e3)):(console.log(`\u670D\u52A1\u5668\u542F\u52A8\u6210\u529F: ${a}`),Ht.isReady=!0,setTimeout(async()=>{try{await Xr.notifyServerStarted(a)}catch(o){console.warn("\u901A\u77E5 Dart \u7AEF\u542F\u52A8\u72B6\u6001\u5931\u8D25:",o.message)}},500))})}catch(s){console.error("\u76D1\u542C\u7AEF\u53E3\u65F6\u53D1\u751F\u5F02\u5E38:",s),setTimeout(()=>{console.log("\u91CD\u65B0\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668..."),n(i)},2e3)}};n(9988)}catch(t){throw console.error("\u670D\u52A1\u5668\u521D\u59CB\u5316\u5931\u8D25:",t),Ht=null,t}}async function Rwn(){if(console.log("\u6B63\u5728\u505C\u6B62\u670D\u52A1\u5668..."),Ht)try{await Ht.close(),console.log("\u670D\u52A1\u5668\u5DF2\u505C\u6B62")}catch(e){console.error("\u505C\u6B62\u670D\u52A1\u5668\u65F6\u51FA\u9519:",e)}finally{Ht.stop=!0,Ht.isReady=!1,Ht=null}else console.warn("server \u5BF9\u8C61\u4E3A null")}0&&(module.exports={start,stop}); + `)}),e.register(H4e,{prefix:"/quark"}),e.register(xCe,{prefix:"/uc"}),e.register(j4e,{prefix:"/uc-tv"}),e.register(TK,{prefix:"/115"}),e.register(H0,{prefix:"/sharemount"}),e.register(H0,{prefix:"/115share"}),e.register(H0,{prefix:"/alishare"}),e.register(H0,{prefix:"/quarkshare"}),e.register(H0,{prefix:"/ucshare"}),e.register(H0,{prefix:"/123share"}),e.register(H0,{prefix:"/139share"}),e.register(H0,{prefix:"/baidushare"}),e.register(H0,{prefix:"/smb"}),e.register(qLe,{prefix:"/mycloud"}),e.register(_Pe,{prefix:"/muou"}),e.register(G4e,{prefix:"/tianyi"}),e.register(fPe,{prefix:"/wogg"}),e.register(IPe,{prefix:"/zhizhen"}),e.register(BDe,{prefix:"/tgsou"}),e.register(z4e,{prefix:"/pan123"}),e.register(X4e,{prefix:"/xunlei"}),e.register(Z4e,{prefix:"/ali"}),e.register(tBe,{prefix:"/baidu"}),e.register(YX,{prefix:"/tgchannel"}),e.register(n4e,{prefix:"/sites"}),e.register(sBe,{prefix:"/pans"}),e.register(iBe,{prefix:"/backup"}),e.register(v$,{prefix:"/danmu"}),e.register(GSe,{prefix:"/t4"}),e.register(rTe,{prefix:"/cms"}),e.register(lTe,{prefix:"/js"}),e.register(fW,{prefix:"/pansou"}),e.register(oBe,{prefix:"/panlian"}),e.register(cBe,{prefix:"/filejin"}),e.register(lBe,{prefix:"/pan1"}),e.register(hBe,{prefix:"/guangyaqsxy"}),e.register(mBe,{prefix:"/jying"}),e.register(FDe,{prefix:"/bilibili"}),e.register(wPe,{prefix:"/ouge"}),e.register(PPe,{prefix:"/labi"}),e.register(qPe,{prefix:"/kuaiying"}),e.register(BPe,{prefix:"/huban"}),e.register(vPe,{prefix:"/erxiao"}),e.register(KPe,{prefix:"/duoduo"}),e.register(gBe,{prefix:"/live"}),e.register(QPe,{prefix:"/shandian"}),e.register(ZPe,{prefix:"/wouniu"}),e.register(EBe,{prefix:"/zhuiju"}),e.register(yBe,{prefix:"/dudb"}),e.register(TBe,{prefix:"/guangya"})}var jrr=Ne(require("os"),1);function tqn(e){return e&&(e.family==="IPv4"||e.family===4)}function rqn(e){if(typeof e!="string")return!1;if(/^10\./.test(e)||/^192\.168\./.test(e)||/^169\.254\./.test(e))return!0;let t=e.match(/^172\.(\d{1,3})\./);if(!t)return!1;let r=Number(t[1]);return Number.isFinite(r)&&r>=16&&r<=31}function nqn(){return["en0","en1","en2","eth0","eth1","eth2","ens33","ens18","ens160","ens192","enp0s3","enp0s8","enp1s0","wlan0","wlan1","wlp2s0","wlp3s0"]}var sqn=/^(lo|docker|br-|veth|virbr|tun|tap|utun|ipsec|pdp_ip|awdl|llw|anpi|bridge|wg|tailscale|zt|ham|gif|stf|ap\d)/i;function iqn(e){return sqn.test(e)}function Vrr(e){return/^192\.168\./.test(e)?0:/^172\.(?:1[6-9]|2\d|3[01])\./.test(e)?1:/^10\./.test(e)?2:3}var Krr=function(){let e=jrr.default.networkInterfaces(),t=new Set(nqn()),r=[];for(let n of Object.keys(e)){if(iqn(n))continue;let s=e[n];if(Array.isArray(s))for(let i of s)!tqn(i)||i.internal||rqn(i.address)&&r.push({name:n,address:i.address})}return r.length===0?"127.0.0.1":(r.sort((n,s)=>{let i=Vrr(n.address),a=Vrr(s.address);if(i!==a)return i-a;let o=t.has(n.name)?0:1,c=t.has(s.name)?0:1;return o-c}),r[0].address)};var CZ=Ne(require("fs"),1),zBe=Ne(require("path"),1),Yrr=Ne(require("util"),1),Qrr=Ne(require("crypto"),1);LW();yi();jd();Nm();Cr();var Qt=null;function VBe(e){return!!e&&typeof e=="object"&&Object.keys(e).length>0}function Grr(e){return e==null?!0:typeof e=="string"?e.trim()==="":!1}function jBe(e){return Qrr.default.createHash("md5").update(String(e??"")).digest("hex")}async function X0(e,t,r){if(Grr(r))return;let n=await e.getObjectDefault(t,"");Grr(n)&&await e.push(t,r)}async function KBe(e){let t=e?.db,r=e?.config||{};if(!t)return;let n=String(r?.ali?.token||"");await X0(t,`/ali/${jBe(n)}`,n);let s=String(r?.quark?.cookie||"");await X0(t,`/quark/${jBe(s)}`,s);let i=String(r?.uc?.cookie||""),a=String(r?.uc?.token||""),o=String(r?.uc?.ut||"");await X0(t,"/uc/cookie",i),await X0(t,"/uc/token",a),await X0(t,"/uc/ut",o);let c=String(r?.baidu?.cookie||"");await X0(t,"/baidu_driver/baidu_cookie",c);let u=String(r?.y115?.cookie||"");await X0(t,`/y115/${jBe(u)}`,u);let l=String(r?.pan123?.username||""),d=String(r?.pan123?.password||"");await X0(t,"/pan123/pan_passport",l),await X0(t,"/pan123/pan_password",d);let f=String(r?.tianyi?.username||""),h=String(r?.tianyi?.password||"");await X0(t,"/tyi/cloud_account",f),await X0(t,"/tyi/cloud_password",h)}var aqn=["duoduo","muou","leijing","wogg","zhizhen","ouge","labi","kuaiying","huban","erxiao","shandian"];async function GBe(e){if(e?.db)for(let r of aqn)await Qw(e,r)}var oqn="cat.log",cqn=()=>{let e=String(oqn||"").trim();return e?zBe.default.join(process.env.NODE_PATH||".",e):""},RZ=!1,KU=null;function jU(e,t){let r=KU;if(!r||r.destroyed||r.writableEnded)return;let n=new Date().toISOString(),s=Yrr.default.format(...t);r.write(`[${n}] [${e}] ${s} +`)}function uqn(){let e=cqn();if(!e){RZ||(console.log("Log file disabled (LOG_FILE_NAME is empty)."),RZ=!0);return}if(KU){try{KU.end()}catch{}KU=null}try{CZ.default.truncateSync(e,0)}catch{}if(KU=CZ.default.createWriteStream(e,{flags:"w"}),!RZ){let t=console.log,r=console.error,n=console.warn;console.log=(...s)=>{jU("INFO",s),t.apply(console,s)},console.error=(...s)=>{jU("ERROR",s),r.apply(console,s)},console.warn=(...s)=>{jU("WARN",s),n.apply(console,s)},process.on("uncaughtException",s=>{jU("FATAL",[s]),r("Uncaught Exception:",s)}),process.on("unhandledRejection",s=>{jU("ERROR",["Unhandled Rejection:",s]),r("Unhandled Rejection:",s)}),RZ=!0}console.log(`Log system initialized. Path: ${e}`)}async function lqn(e){uqn(),console.log("\u5F00\u59CB\u542F\u52A8\u670D\u52A1\u5668...");try{if(Qt=(0,zrr.default)({serverFactory:catServerFactory,forceCloseConnections:!0,logger:process.env.NODE_ENV!=="development",maxParamLength:10240}),!Qt)throw new Error("Server initialization failed");Qt.isReady=!1;let t=new Set,r=1500,n=0;globalThis.messageToDart=Qt.messageToDart=async c=>{let u=c?.action||"unknown",l=Number(catDartServerPort()),d=u==="getPlayInfo"?8e3:u==="queryProfile"||u==="saveProfile"?1500:2500;if(!Number.isFinite(l)||l<=0||u!=="getPlayInfo"&&Date.now()<n)return null;let f=Number(Qt?.address?.()?.port||0);if(f>0&&f===l){let g=`self:${u}`;return t.has(g)||(console.warn(`[messageToDart] \u8DF3\u8FC7\u81EA\u8C03\u7528: action=${u}, port=${l}`),t.add(g)),null}let h=["127.0.0.1"],p=null,m=!1;for(let g of h)try{return(await ye.post(`http://${g}:${l}/msg`,c,{timeout:d})).data}catch(_){p=_;let y=_?.response?.status;if(y===400||y===404){let b=`${y}:${u}`;return t.has(b)||(console.warn(`[messageToDart] Dart\u901A\u4FE1\u6682\u672A\u5C31\u7EEA: action=${u}, status=${y}`),t.add(b)),null}let A=_?.code||"",E=_?.message||"";if(A==="ECONNRESET"||A==="ECONNREFUSED"||A==="ECONNABORTED"||E.includes("socket hang up")){m=!0;let b=`transient:${g}:${u}:${A||E}`;t.has(b)||(console.warn(`[messageToDart] Dart\u6865\u63A5\u6682\u4E0D\u53EF\u7528\uFF0C\u5DF2\u964D\u7EA7\u5FFD\u7565: action=${u}, host=${g}, code=${A||"unknown"}, message=${E}`),t.add(b));break}}return m&&(n=Date.now()+r),p&&console.error("[messageToDart] \u5931\u8D25:",p.message),null},typeof Qt.address!="function"&&(Qt.address=function(){if(!this.server)return{port:0,url:"",dynamic:"js2p://_WEB_"};let c=this.server.address();if(!c)return{port:0,url:"",dynamic:"js2p://_WEB_"};let u=Krr();return c.url=`http://${u}:${c.port}`,c.dynamic="js2p://_WEB_",c}),Qt.addHook("onError",async(c,u,l)=>(console.error("\u670D\u52A1\u5668\u9519\u8BEF:",iS(l)),l.statusCode||(l.statusCode=500),l)),Qt.stop=!1,Qt.config=e;let s=zBe.default.join(process.env.NODE_PATH||".","test0.db.json"),i=(()=>{try{return CZ.default.existsSync(s)}catch{return!1}})();Qt.db=new xZ.JsonDB(new xZ.Config(s,!0,!0,"/",!0)),Qt.firstRun=!i,Qt.userWroteSinceBoot=!1;try{Qt.firstRun&&VBe(e)&&(await Qt.db.push("/",e),console.log("\u9996\u6B21\u542F\u52A8\uFF1A\u5DF2\u7528 index.config.js \u521D\u59CB\u5316 db")),await KBe(Qt),await GBe(Qt)}catch(c){if(console.warn("\u521D\u59CB\u5316 db \u5931\u8D25\uFF0C\u5C1D\u8BD5\u56DE\u9000\u9ED8\u8BA4\u914D\u7F6E:",c.message),VBe(e))try{await Qt.db.push("/",e),await KBe(Qt),await GBe(Qt)}catch(u){console.error("\u4FDD\u5B58\u9ED8\u8BA4\u914D\u7F6E\u5931\u8D25:",u)}}if((()=>{if(!Qt.db)return;let c=Qt.db.push.bind(Qt.db),u=Qt.db.delete.bind(Qt.db),l=null,d="",f=!1,h=!1,p=async()=>{try{let _=await Qt.db.getData("/"),y=JSON.stringify(_);if(y===d)return;d=y,await tn.saveProfile(_)}catch(_){console.warn("\u5F02\u6B65\u4FDD\u5B58\u914D\u7F6E\u5931\u8D25:",_.message)}},m=()=>{if(f){h=!0;return}l&&clearTimeout(l),l=setTimeout(async()=>{l=null,f=!0;try{await p()}finally{f=!1,h&&(h=!1,m())}},300)},g=(_,y)=>{let A=_[0];if(typeof A!="string")return _;if(!A)throw new TypeError(`\u6570\u636E\u5E93${y}\u8DEF\u5F84\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u6839\u8DEF\u5F84\u8BF7\u663E\u5F0F\u4F7F\u7528 /`);if(A.startsWith("/"))return _;let E=`/${A}`;return console.warn(`[\u6570\u636E\u5E93${y}] \u5DF2\u5C06\u76F8\u5BF9\u8DEF\u5F84\u89C4\u8303\u4E3A\u7EDD\u5BF9\u8DEF\u5F84:`,A,"->",E),[E,..._.slice(1)]};Qt.db.push=async(..._)=>{try{let y=await c(...g(_,"push"));return Qt.userWroteSinceBoot=!0,m(),y}catch(y){throw console.error("\u6570\u636E\u5E93push\u64CD\u4F5C\u5931\u8D25:",y),y}},Qt.db.delete=async(..._)=>{try{let y=await u(...g(_,"delete"));return Qt.userWroteSinceBoot=!0,m(),y}catch(y){throw console.error("\u6570\u636E\u5E93delete\u64CD\u4F5C\u5931\u8D25:",y),y}}})(),process.env.SKIP_DANMU_API_BOOT!=="1")try{await hT()}catch(c){console.error("\u542F\u52A8 danmu_api \u5931\u8D25:",c)}try{OE(await nBe(Qt))}catch(c){console.warn("\u521D\u59CB\u5316Pans\u7F13\u5B58\u5931\u8D25:",c.message),OE([])}console.log("\u6CE8\u518C\u8DEF\u7531..."),Qt.register(eZ,{db:Qt.db,config:e}),Qt.register(HBe,{prefix:"/website"});let o=c=>{let u=Number(process.env.DEV_HTTP_PORT||c),l=String(process.env.DEV_HTTP_HOST||"0.0.0.0");if(console.log(`\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668\u5728\u7AEF\u53E3 ${u}...`),!Qt||!Qt.listen){console.error("server \u5BF9\u8C61\u65E0\u6548\uFF0C\u65E0\u6CD5\u542F\u52A8");return}try{Qt.listen({port:u,host:l},(d,f)=>{if(d)if(console.error("\u670D\u52A1\u5668\u542F\u52A8\u9519\u8BEF:",d),d.code==="EADDRINUSE"){if(process.env.DEV_HTTP_PORT){console.error(`\u5F00\u53D1\u7AEF\u53E3 ${u} \u5DF2\u88AB\u5360\u7528\uFF0C\u8BF7\u5148\u91CA\u653E\u540E\u91CD\u8BD5`);return}console.log(`\u7AEF\u53E3 ${u} \u5DF2\u88AB\u5360\u7528\uFF0C\u5C1D\u8BD5\u4E0B\u4E00\u4E2A\u53EF\u7528\u7AEF\u53E3...`),o(c+1)}else setTimeout(()=>{console.log("\u91CD\u65B0\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668..."),o(c)},2e3);else console.log(`\u670D\u52A1\u5668\u542F\u52A8\u6210\u529F: ${f}`),Qt.isReady=!0,setTimeout(async()=>{try{await tn.notifyServerStarted(f)}catch(h){console.warn("\u901A\u77E5 Dart \u7AEF\u542F\u52A8\u72B6\u6001\u5931\u8D25:",h.message)}if(Qt.firstRun)try{let h=await tn.queryProfile();if(!VBe(h))return;if(Qt.userWroteSinceBoot){console.log("\u542F\u52A8\u540E\u5DF2\u53D1\u751F\u7528\u6237\u5199\u5165\uFF0C\u8DF3\u8FC7 Dart profile \u8986\u76D6");return}await Qt.db.push("/",h),await KBe(Qt),await GBe(Qt),console.log("\u5DF2\u7528 Dart profile \u5B8C\u6210\u9996\u6B21\u540C\u6B65")}catch(h){console.warn("\u9996\u6B21\u540C\u6B65 Dart profile \u5931\u8D25:",h?.message||h)}},500)})}catch(d){console.error("\u76D1\u542C\u7AEF\u53E3\u65F6\u53D1\u751F\u5F02\u5E38:",d),setTimeout(()=>{console.log("\u91CD\u65B0\u5C1D\u8BD5\u542F\u52A8\u670D\u52A1\u5668..."),o(c)},2e3)}};o(9988)}catch(t){throw console.error("\u670D\u52A1\u5668\u521D\u59CB\u5316\u5931\u8D25:",t),Qt=null,t}}async function dqn(){if(console.log("\u6B63\u5728\u505C\u6B62\u670D\u52A1\u5668..."),Qt)try{await Qt.close(),console.log("\u670D\u52A1\u5668\u5DF2\u505C\u6B62")}catch(e){console.error("\u505C\u6B62\u670D\u52A1\u5668\u65F6\u51FA\u9519:",e)}finally{Qt.stop=!0,Qt.isReady=!1,Qt=null}else console.warn("server \u5BF9\u8C61\u4E3A null")}0&&(module.exports={start,stop}); /*! Bundled license information: forwarded/index.js: @@ -8998,36 +10966,22 @@ rwlock/lib/lock.js: * Author: Alberto La Rocca <a71104@gmail.com> (https://github.com/71104) * Released under the MIT license * Copyright (c) 2015 Alberto La Rocca *) - -tough-cookie/dist/index.js: - (*! - * Copyright (c) 2015-2020, Salesforce.com, Inc. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * 3. Neither the name of Salesforce.com nor the names of its contributors may - * be used to endorse or promote products derived from this software without - * specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - *) */ + + if (typeof globalThis.__catpawBootLog === 'function') { + var __catpawExportKeys = []; + try { + if (typeof module !== 'undefined' && module && module.exports) { + __catpawExportKeys = Object.keys(module.exports); + } + } catch (_) {} + globalThis.__catpawBootLog('bundle fully loaded module.exports keys=' + __catpawExportKeys.join(',')); + } +} catch (e) { + if (typeof globalThis.__catpawBootLog === 'function') { + var __catpawErr = e && (e.stack || e.message) ? (e.stack || e.message) : e; + globalThis.__catpawBootLog('FATAL bundle eval: ' + __catpawErr); + } + throw e; +} + diff --git a/catvod/lmentor/index.js.md5 b/catvod/lmentor/index.js.md5 index 1de3a1a6..ba9e07c9 100644 --- a/catvod/lmentor/index.js.md5 +++ b/catvod/lmentor/index.js.md5 @@ -1 +1 @@ -e1bb04cb98ba5ffc6763293e2f34d72b \ No newline at end of file +d743dda47c2574be9e29f15e78934c90 \ No newline at end of file diff --git a/cluntop_tvbox/lib/iptv.m3u b/cluntop_tvbox/lib/iptv.m3u index e212c455..dcac4d57 100755 --- a/cluntop_tvbox/lib/iptv.m3u +++ b/cluntop_tvbox/lib/iptv.m3u @@ -1,24 +1,24 @@ #EXTM3U #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K",东方卫视4K -http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K",东方卫视4K -http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 +http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K -http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K -http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 +http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K -http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路3』 +http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="浙江卫视4K" tvg-name="浙江卫视4K" group-title="4K",浙江卫视4K http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="浙江卫视4K" tvg-name="浙江卫视4K" group-title="4K",浙江卫视4K http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="江苏卫视4K" tvg-name="江苏卫视4K" group-title="4K",江苏卫视4K -http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="江苏卫视4K" tvg-name="江苏卫视4K" group-title="4K",江苏卫视4K -http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路2』 +http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="江苏卫视4K" tvg-name="江苏卫视4K" group-title="4K",江苏卫视4K -http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路3』 +http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="广东卫视4K" tvg-name="广东卫视4K" group-title="4K",广东卫视4K http://vvip.lqcc.xyz:8092/stream/channelid/1248069700?auth=PrI5LXwb51dYilt30TvNYVVAgd4A&profile=pass$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="广东卫视4K" tvg-name="广东卫视4K" group-title="4K",广东卫视4K @@ -34,17 +34,17 @@ https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001540/index.m3 #EXTINF:-1 tvg-id="广东卫视4K" tvg-name="广东卫视4K" group-title="4K",广东卫视4K http://101.35.240.114:88/live.php?id=广东卫视4K$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K -http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路1』 +http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K -http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路2』 +https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K -https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路3』 +http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K -http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路4』 +http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K -http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路5』 +http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K -http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路6』 +http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de76cdccd646&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K @@ -62,11 +62,11 @@ http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="北京卫视4K" tvg-name="北京卫视4K" group-title="4K",北京卫视4K http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•6『线路1』 +http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路2』 +http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8f3fc8c76002b5768090d2d68f75b9bb&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-fec2a87194a11509dcf09defebca4ed8&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K @@ -84,47 +84,49 @@ http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="CCTV8K" tvg-name="CCTV8K" group-title="8K",CCTV8K http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://222.223.41.27:8888/hls/1/index.m3u8$LR•IPV4•11『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://111.8.224.6:9999/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路2』 +http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•11『线路3』 +http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•11『线路4』 +http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•11『线路5』 +http://222.223.41.27:8888/hls/1/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•11『线路6』 +http://111.8.224.6:9999/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•11『线路7』 +http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•11『线路8』 +http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路9』 +http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•11『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•12『线路10』 #EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•11『线路11』 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•12『线路11』 +#EXTINF:-1 tvg-id="CCTV1" tvg-name="CCTV1" group-title="央视",CCTV1 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://101.66.199.102:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://111.8.224.6:9999/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路2』 +http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路3』 +http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://183.129.255.66:8480/hls/2/index.m3u8$LR•IPV4•14『线路4』 +http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•14『线路5』 +http://101.66.199.102:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•14『线路6』 +http://111.8.224.6:9999/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•14『线路7』 +http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•14『线路8』 +http://183.129.255.66:8480/hls/2/index.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•14『线路9』 +http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 -http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路10』 +http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•14『线路11』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 @@ -134,109 +136,107 @@ http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv2hd$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="CCTV2" tvg-name="CCTV2" group-title="央视",CCTV2 http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•12『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://183.129.255.66:8480/hls/3/index.m3u8$LR•IPV4•12『线路3』 +http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://118.193.115.2:9901/tsfile/live/0003_1.m3u8?key=txiptv$LR•IPV4•12『线路4』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•12『线路5』 +http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•12『线路6』 +http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•12『线路7』 +http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•12『线路8』 +http://183.129.255.66:8480/hls/3/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路9』 +http://118.193.115.2:9901/tsfile/live/0003_1.m3u8?key=txiptv$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•12『线路10』 +http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•12『线路11』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•18『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路2』 +http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://183.129.255.66:8480/hls/4/index.m3u8$LR•IPV4•18『线路3』 +http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•18『线路4』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•18『线路5』 +p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•18『线路6』 +http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•18『线路7』 +http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 +http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•18『线路9』 +http://183.129.255.66:8480/hls/4/index.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•18『线路10』 +http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6ed114801b644526e56bc651d7ab5b8b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•18『线路11』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-98245a006136ecdf04e0d3c737dd6086&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•18『线路12』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784768400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-7a2de08a3a510255b2be53fbd6929544&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•18『线路13』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•17『线路13』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•18『线路14』 +http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•18『线路15』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•18『线路16』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•18『线路17』 -#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•18『线路18』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://183.129.255.66:8480/hls/5/index.m3u8$LR•IPV4•14『线路2』 +http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路3』 +http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•14『线路5』 +http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•14『线路6』 +http://183.129.255.66:8480/hls/5/index.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 +http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•14『线路8』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://38.75.136.137:98/gslb/dsdqpub/cctv5hd.m3u8?auth=testpub$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://111.8.224.6:9999/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路10』 +http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路11』 +http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://cssbyd.imwork.net:8082/hls/6/index.m3u8$LR•IPV4•14『线路12』 +http://111.8.224.6:9999/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•14『线路13』 +http://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?$LR•IPV6•14『线路14』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•12『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://118.193.115.2:9901/tsfile/live/0006_1.m3u8?key=txiptv$LR•IPV4•12『线路2』 +http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•12『线路4』 +http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•12『线路6』 +http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•12『线路7』 +http://118.193.115.2:9901/tsfile/live/0006_1.m3u8?key=txiptv$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•12『线路8』 +http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•12『线路9』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 @@ -246,23 +246,23 @@ http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.123.243.37:50085/tsfile/live/0008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://101.66.194.177:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 +http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://222.223.41.27:8888/hls/7/index.m3u8$LR•IPV4•12『线路3』 +http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•12『线路4』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•12『线路6』 +http://112.123.243.37:50085/tsfile/live/0008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•12『线路7』 +http://101.66.194.177:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 +http://222.223.41.27:8888/hls/7/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•12『线路9』 +http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•12『线路10』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 @@ -270,21 +270,21 @@ http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv7hd$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•11『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://183.129.255.66:8480/hls/9/index.m3u8$LR•IPV4•11『线路2』 +http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://38.75.136.137:98/gslb/dsdqpub/cctv8hd.m3u8?auth=testpub$LR•IPV4•11『线路3』 +http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://124.228.160.210:9901/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 +http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•11『线路5』 +http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•11『线路6』 +http://183.129.255.66:8480/hls/9/index.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•11『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/cctv8hd.m3u8?auth=testpub$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路8』 +http://124.228.160.210:9901/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 @@ -292,53 +292,49 @@ http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://112.123.243.37:50085/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://183.129.255.66:8480/hls/10/index.m3u8$LR•IPV4•14『线路2』 +http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•14『线路3』 +http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•14『线路4』 +http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•14『线路5』 +http://112.123.243.37:50085/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 +http://183.129.255.66:8480/hls/10/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•14『线路7』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=12d4950b0bc42e870ce7e582a7eb5860$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=21a9fbe86aa9a66410c55abf57faa942$LR•IPV4•14『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•12『线路8』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=073d230277253add6243b808de436f8c$LR•IPV4•14『线路9』 +http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•14『线路10』 +http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•14『线路11』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•14『线路12』 -#EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•14『线路13』 -#EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•14『线路14』 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://101.66.198.105:9901/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•14『线路2』 +http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://111.8.224.6:9999/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 +http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•14『线路4』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://183.223.157.123:85/tsfile/live/0010_1.m3u8?key=txiptv$LR•IPV4•14『线路5』 +http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•14『线路6』 +http://101.66.198.105:9901/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•14『线路7』 +http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•14『线路8』 +http://111.8.224.6:9999/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 +http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•14『线路10』 +http://183.223.157.123:85/tsfile/live/0010_1.m3u8?key=txiptv$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 @@ -348,21 +344,21 @@ https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://111.8.224.6:9999/tsfile/live/1041_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•12『线路3』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•12『线路4』 +http://120.202.94.181:9446/tsfile/live/0011_1.m3u8?key=txiptv$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•12『线路5』 +http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•12『线路6』 +http://111.8.224.6:9999/tsfile/live/1041_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 +http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•12『线路8』 +http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 @@ -372,35 +368,37 @@ http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•12 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://222.223.41.27:8888/hls/12/index.m3u8$LR•IPV4•9『线路2』 +http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://183.129.255.66:8480/hls/13/index.m3u8$LR•IPV4•9『线路3』 +http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•9『线路4』 +http://112.27.235.94:8000/hls/13/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•9『线路5』 +http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路6』 +http://222.223.41.27:8888/hls/12/index.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•9『线路7』 +http://183.129.255.66:8480/hls/13/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•9『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•10『线路8』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•9『线路9』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•10『线路9』 +#EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•10『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•10『线路2』 +http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•10『线路3』 +http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•10『线路4』 +http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 +http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•10『线路6』 +http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•10『线路7』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 @@ -410,17 +408,17 @@ http://go.bkpcp.top/mg/cctv13$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•12『线路2』 +http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•12『线路5』 +http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•12『线路7』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 @@ -434,17 +432,17 @@ http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•12『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://183.129.255.66:8480/hls/16/index.m3u8$LR•IPV4•12『线路2』 +http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•12『线路5』 +http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +http://183.129.255.66:8480/hls/16/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•12『线路7』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 @@ -458,29 +456,25 @@ http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•5『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•5『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•4『线路2』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•5『线路3』 +http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•5『线路5』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://183.129.255.66:8480/hls/18/index.m3u8$LR•IPV4•7『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•7『线路2』 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•7『线路3』 +http://183.129.255.66:8480/hls/18/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•7『线路4』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•7『线路5』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•6『线路5』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•7『线路6』 -#EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•7『线路7』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="CCTV第一剧场" tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV怀旧剧场" tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 @@ -492,9 +486,9 @@ http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV兵器科技" tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV风云足球" tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•13『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•13『线路1』 #EXTINF:-1 tvg-id="CCTV风云足球" tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 -http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•13『线路2』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-id="CCTV风云足球" tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•13『线路3』 #EXTINF:-1 tvg-id="CCTV风云足球" tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 @@ -540,9 +534,9 @@ http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV电视指南" tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV世界地理" tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 -https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•2『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="CCTV世界地理" tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 -http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•2『线路2』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="CCTV卫生健康" tvg-name="CCTV卫生健康" group-title="央视",CCTV卫生健康 http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CETV1" tvg-name="CETV1" group-title="央视",CETV1 @@ -564,9 +558,9 @@ https://0472.org/hls/cgtnd.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="CGTN记录" tvg-name="CGTN记录" group-title="央视",CGTN记录 https://english-livetx.cgtn.com/hls/yypdjlctzb_hd.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="CGTN俄语" tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -https://0472.org/hls/cgtne.m3u8$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="CGTN俄语" tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•2『线路2』 +https://0472.org/hls/cgtne.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="CGTN法语" tvg-name="CGTN法语" group-title="央视",CGTN法语 https://0472.org/hls/cgtnf.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="CGTN西语" tvg-name="CGTN西语" group-title="央视",CGTN西语 @@ -574,21 +568,19 @@ https://0472.org/hls/cgtnx.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="CGTN阿语" tvg-name="CGTN阿语" group-title="央视",CGTN阿语 https://0472.org/hls/cgtna.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="直播中国" tvg-name="直播中国" group-title="央视",直播中国 -https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001$LR•IPV4•2『线路1』 -#EXTINF:-1 tvg-id="直播中国" tvg-name="直播中国" group-title="央视",直播中国 -https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8$LR•IPV4•2『线路2』 +https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001$LR•IPV4 #EXTINF:-1 tvg-id="重温经典" tvg-name="重温经典" group-title="卫视",重温经典 -http://112.27.235.94:8000/hls/50/index.m3u8$LR•IPV4•6『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="重温经典" tvg-name="重温经典" group-title="卫视",重温经典 -http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•6『线路2』 +http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="重温经典" tvg-name="重温经典" group-title="卫视",重温经典 -http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•6『线路3』 +http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="重温经典" tvg-name="重温经典" group-title="卫视",重温经典 -http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•6『线路4』 +http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="重温经典" tvg-name="重温经典" group-title="卫视",重温经典 -http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•6『线路5』 +p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="重温经典" tvg-name="重温经典" group-title="卫视",重温经典 -p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•6『线路6』 +http://112.27.235.94:8000/hls/50/index.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="香港卫视" tvg-name="香港卫视" group-title="卫视",香港卫视 https://hkstv.tv/api/m3u8-proxy?url=http%3A%2F%2Fwebcast.hkstv.tv%2Flivestream%2Fmutfysrq%2Fplaylist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="星空卫视" tvg-name="星空卫视" group-title="卫视",星空卫视 @@ -608,897 +600,887 @@ https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://112.123.243.37:50085/tsfile/live/1002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•16『线路4』 +https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•16『线路5』 +https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路6』 +http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路7』 +http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•16『线路8』 +http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 +https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路10』 +https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•16『线路11』 +http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•16『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路12』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•16『线路13』 +http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•16『线路14』 +http://112.123.243.37:50085/tsfile/live/1002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路15』 +http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路16』 +http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784123883-f178167128c55cd66b7eca004ccca015-0-69f388bdaa594feb900510d687566182$LR•IPV4•18『线路1』 +http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784718132-ebc796d43096e23aad5d56ba638be8c6-0-bb2c2dbcd2b4e115aa53bc84322b8a7f$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路3』 +http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://120.198.95.220:9901/tsfile/live/1045_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路4』 +http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•18『线路5』 +http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://111.8.224.6:9999/tsfile/live/1064_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路6』 +http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•18『线路7』 +http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://124.228.160.210:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 +https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•18『线路9』 +https://httop.top/ysp-浙江卫视$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•18『线路10』 +http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•18『线路11』 +http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•18『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路12』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•18『线路13』 +http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•18『线路14』 +http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•18『线路15』 +http://120.198.95.220:9901/tsfile/live/1045_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://httop.top/ysp-浙江卫视$LR•IPV4•18『线路16』 +http://111.8.224.6:9999/tsfile/live/1064_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•18『线路17』 +http://124.228.160.210:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路2』 +http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•17『线路3』 +http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路4』 +http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路5』 +http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路6』 +https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路7』 +https://httop.top/ysp-东方卫视$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路8』 +http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路9』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路10』 +http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路11』 +http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路12』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://httop.top/ysp-东方卫视$LR•IPV4•17『线路13』 +https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路14』 +http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路15』 +http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路17』 +http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://101.66.198.105:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路2』 +http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://120.198.95.220:9901/tsfile/live/1065_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路3』 +http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•14『线路4』 +http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://go.bkpcp.top/mg/bjws$LR•IPV4•14『线路5』 +http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•14『线路6』 +https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•14『线路7』 +https://httop.top/ysp-北京卫视$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•14『线路8』 +http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•14『线路9』 +http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•14『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路10』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•14『线路11』 +http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://httop.top/ysp-北京卫视$LR•IPV4•14『线路12』 +http://101.66.198.105:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•14『线路13』 +http://120.198.95.220:9901/tsfile/live/1065_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路14』 +http://go.bkpcp.top/mg/bjws$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226897/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0BmO6uHF7WFoTed__Xr3NQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://112.123.243.37:50085/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://101.66.198.242:9901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 +http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://221.226.51.220:50081/newlive/live/hls/18/live.m3u8$LR•IPV4•17『线路5』 +http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•17『线路6』 +http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•17『线路7』 +https://httop.top/ysp-江苏卫视$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•17『线路8』 +http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•17『线路9』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226897/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0BmO6uHF7WFoTed__Xr3NQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路10』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•17『线路11』 +http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•17『线路12』 +http://112.123.243.37:50085/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•17『线路13』 +http://101.66.198.242:9901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•17『线路14』 +http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://httop.top/ysp-江苏卫视$LR•IPV4•17『线路15』 +http://221.226.51.220:50081/newlive/live/hls/18/live.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•17『线路16』 +http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•17『线路17』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226943/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0QmKQ_slRCwvVVUUfxPVbw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 +http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•13『线路1』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•13『线路2』 +http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ahwshd$LR•IPV4•13『线路3』 +http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•13『线路3』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路4』 +https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://36.136.38.87:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路5』 +https://httop.top/ysp-安徽卫视$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•13『线路6』 +http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•13『线路7』 +http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•13『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226943/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0QmKQ_slRCwvVVUUfxPVbw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路8』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•13『线路9』 +http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•13『线路10』 +http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://httop.top/ysp-安徽卫视$LR•IPV4•13『线路11』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ahwshd$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•13『线路12』 +http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路13』 +http://36.136.38.87:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•15『线路1』 +http://p2.ioioz.com/videojs.php?id=https://sjlivecdn9.cbg.cn/202607222106/app_2/_definst_/ls_2.stream/chunklist.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路2』 +http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路3』 +http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 +http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路5』 +http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•15『线路6』 +https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•15『线路7』 +https://httop.top/ysp-重庆卫视$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•15『线路8』 +http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•15『线路9』 +http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•15『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路10』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•15『线路11』 +http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•15『线路12』 +http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://httop.top/ysp-重庆卫视$LR•IPV4•15『线路13』 +http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•15『线路14』 +http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路15』 +http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226995/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EBQiz3wrGrpG0CUSRIJ-7Jg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://101.66.198.105:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路2』 +http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 +https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://198.204.228.26/live/scwshd.m3u8$LR•IPV4•14『线路4』 +https://httop.top/ysp-四川卫视$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•14『线路5』 +http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://112.123.243.37:50085/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226995/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EBQiz3wrGrpG0CUSRIJ-7Jg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路6』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路7』 +http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•14『线路8』 +http://101.66.198.105:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•14『线路9』 +http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•14『线路10』 +http://198.204.228.26/live/scwshd.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•14『线路11』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•14『线路12』 +http://112.123.243.37:50085/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://httop.top/ysp-四川卫视$LR•IPV4•14『线路13』 +http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•14『线路14』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226991/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQ6F5Mjgs0tJyEArWFL3vQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•16『线路2』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•16『线路4』 +http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•16『线路5』 +http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•16『线路6』 +http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路7』 +http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•16『线路8』 +https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•16『线路9』 +https://httop.top/ysp-东南卫视$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•16『线路10』 +http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•16『线路11』 +http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•16『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226991/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQ6F5Mjgs0tJyEArWFL3vQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路12』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•16『线路13』 +http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://httop.top/ysp-东南卫视$LR•IPV4•16『线路14』 +http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•16『线路15』 +http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 +http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://sztv-hls.sztv.com.cn/1SIQj6s/500/q7rdSsQ.m3u8?sign=71764b3a0bcc96b03dea9693d605e020&t=6a579f21$LR•IPV4•18『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 +http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路3』 +http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•18『线路4』 +http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•18『线路5』 +https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•18『线路6』 +https://httop.top/ysp-深圳卫视$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•18『线路7』 +http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 +http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•18『线路9』 +http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•18『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路10』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•18『线路11』 +http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•18『线路12』 +http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•18『线路13』 +http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•18『线路14』 +http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://httop.top/ysp-深圳卫视$LR•IPV4•18『线路15』 +http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•18『线路16』 +http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -#EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•18『线路18』 +http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 https://piccpndks.v.kcdnvip.com/audio/guangdong_2/index.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226961/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2MGyx659D_aaDPP0qt3NgA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://101.66.194.177:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路3』 +http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://120.238.94.82:9901/tsfile/live/1009_1.m3u8$LR•IPV4•18『线路4』 +http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://120.198.95.220:9901/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•18『线路5』 +http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 +http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://58.56.162.102:4466/newlive/live/hls/25/live.m3u8$LR•IPV4•18『线路7』 +https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 +https://httop.top/ysp-广东卫视$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•18『线路9』 +http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•18『线路10』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•18『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226961/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2MGyx659D_aaDPP0qt3NgA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路11』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•18『线路12』 +http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•18『线路13』 +http://101.66.194.177:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•18『线路14』 +http://120.238.94.82:9901/tsfile/live/1009_1.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•18『线路15』 +http://120.198.95.220:9901/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://httop.top/ysp-广东卫视$LR•IPV4•18『线路16』 +http://58.56.162.102:4466/newlive/live/hls/25/live.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•18『线路17』 +http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•18『线路18』 +http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227010/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkAhb-89sxdm9fz6-heXCuw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路2』 +http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•17『线路3』 +http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://111.8.224.6:9999/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路4』 +http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 +http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.198.242:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.198.105:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 +https://httop.top/ysp-广西卫视$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.199.102:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227010/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkAhb-89sxdm9fz6-heXCuw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路8』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路9』 +https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•17『线路10』 +http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•17『线路11』 +http://111.8.224.6:9999/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•17『线路12』 +http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•17『线路13』 +http://101.66.198.242:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•17『线路14』 +http://101.66.198.105:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•17『线路15』 +http://101.66.199.102:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•17『线路16』 +http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://httop.top/ysp-广西卫视$LR•IPV4•17『线路17』 +http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•4『线路1』 +https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路2』 +http://e2.woc.iiiya.cn:28888/rtp/239.61.2.11:8060$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路3』 +http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路4』 +http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•6『线路1』 +https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路2』 +https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•6『线路3』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•6『线路3』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路4』 +http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路5』 +http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路6』 +http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227012/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EnqBF03rFwPucF8ODtWxLQQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 +http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://101.66.198.242:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://101.66.199.102:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路4』 +http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路5』 +https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•17『线路6』 +https://httop.top/ysp-贵州卫视$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•17『线路7』 +http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•17『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227012/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EnqBF03rFwPucF8ODtWxLQQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路8』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•17『线路9』 +http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•17『线路10』 +http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•17『线路11』 +http://101.66.198.242:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•17『线路12』 +http://101.66.199.102:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•17『线路13』 +http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•17『线路14』 +http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•17『线路15』 +http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://httop.top/ysp-贵州卫视$LR•IPV4•17『线路16』 +http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 https://tv.pull.hebtv.com/jishi/weishipindao.m3u8?t=1784283312&k=9740237ad5542a40ff56157ccf9bc99d$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227014/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErSGjhI3DMaaAASPrbQJYTg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路2』 +http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://112.123.243.37:50085/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路3』 +http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://101.66.199.102:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 +http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 +https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•14『线路6』 +https://httop.top/ysp-河北卫视$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•14『线路7』 +http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•14『线路8』 +http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•14『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227014/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErSGjhI3DMaaAASPrbQJYTg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路9』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•14『线路10』 +http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•14『线路11』 +http://112.123.243.37:50085/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -https://httop.top/ysp-河北卫视$LR•IPV4•14『线路12』 +http://101.66.199.102:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•14『线路13』 +http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路14』 +http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•11『线路1』 +http://tvcdn.stream3.hndt.com/tv/65c4a6d5017e1000b2b6ea2500000000_transios/playlist.m3u8?wsSecret=132cb2fc54c2c4fe7a0b58973cdd5fee&wsTime=1784235566$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://198.204.228.26/live/hawshd.m3u8$LR•IPV4•11『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路3』 +http://23.237.228.134/live6/henan.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•11『线路4』 +http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•11『线路5』 +https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•11『线路6』 +https://httop.top/ysp-河南卫视$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://23.237.228.134/live6/henan.m3u8$LR•IPV4•11『线路7』 +http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•11『线路8』 +http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•11『线路9』 +http://198.204.228.26/live/hawshd.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://httop.top/ysp-河南卫视$LR•IPV4•11『线路10』 +http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路11』 +http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://112.123.243.37:50085/tsfile/live/0142_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 +http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://101.66.199.102:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 +http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hljwshd$LR•IPV4•17『线路5』 +https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://221.226.51.220:50081/newlive/live/hls/31/live.m3u8$LR•IPV4•17『线路6』 +https://httop.top/ysp-黑龙江卫视$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•17『线路7』 +http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路8』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•17『线路10』 +http://112.123.243.37:50085/tsfile/live/0142_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•17『线路11』 +http://101.66.199.102:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•17『线路12』 +http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•17『线路13』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hljwshd$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•17『线路14』 +http://221.226.51.220:50081/newlive/live/hls/31/live.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•17『线路15』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://httop.top/ysp-黑龙江卫视$LR•IPV4•17『线路16』 +http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•17『线路17』 +http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路2』 +http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路3』 +http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路4』 +http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路5』 +http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路6』 +https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路7』 +https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路8』 +http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路9』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路10』 +http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路11』 +http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路12』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 +http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路14』 +http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_fsgw.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://101.66.199.102:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://107.150.60.122/live/jxwshd.m3u8$LR•IPV4•17『线路4』 +http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•17『线路5』 +http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路6』 +https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•17『线路7』 +https://httop.top/ysp-江西卫视$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•17『线路8』 +http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•17『线路10』 +http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•17『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路11』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•17『线路12』 +http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•17『线路13』 +http://101.66.199.102:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://httop.top/ysp-江西卫视$LR•IPV4•17『线路14』 +http://107.150.60.122/live/jxwshd.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•17『线路15』 +http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•17『线路16』 +http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227015/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EW5-3AVdwD5KlUpuA4mz7Cg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路2』 +http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路3』 +http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.198.242:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 +http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.199.102:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路5』 +https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 +https://httop.top/ysp-吉林卫视$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路7』 +http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•15『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227015/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EW5-3AVdwD5KlUpuA4mz7Cg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路8』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•15『线路9』 +http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•15『线路10』 +http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•15『线路11』 +http://101.66.198.242:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•15『线路12』 +http://101.66.199.102:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•15『线路13』 +http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•15『线路14』 -#EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://httop.top/ysp-吉林卫视$LR•IPV4•15『线路15』 +http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227018/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErN_hoRDwApMKnJqiNHvn9w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 +http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 +https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•12『线路3』 +https://httop.top/ysp-内蒙古卫视$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•12『线路4』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227018/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErN_hoRDwApMKnJqiNHvn9w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路4』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•12『线路6』 +http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•12『线路7』 +http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•12『线路8』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•12『线路9』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•12『线路10』 +http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•12『线路11』 +http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://httop.top/ysp-内蒙古卫视$LR•IPV4•12『线路12』 +http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226966/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6qJH8Fd-zgCGx3P-Ce86cA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 +http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•17『线路4』 +http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路5』 +http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•17『线路6』 +http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•17『线路7』 +https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•17『线路8』 +https://httop.top/ysp-辽宁卫视$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路9』 +http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•17『线路10』 +http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•17『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226966/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6qJH8Fd-zgCGx3P-Ce86cA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路11』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•17『线路12』 +http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•17『线路13』 +http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•17『线路14』 +http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://httop.top/ysp-辽宁卫视$LR•IPV4•17『线路15』 +http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•17『线路16』 +http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 +http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227003/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESco1zinvdUYzleEkXYhIvA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路1』 +http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路2』 +https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://198.204.228.26/live/nxws.m3u8$LR•IPV4•9『线路3』 +https://httop.top/ysp-宁夏卫视$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•9『线路4』 +http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•9『线路5』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227003/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESco1zinvdUYzleEkXYhIvA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路5』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•9『线路6』 +http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•9『线路7』 +http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://httop.top/ysp-宁夏卫视$LR•IPV4•9『线路8』 +http://198.204.228.26/live/nxws.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路9』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 +http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 +http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://38.75.136.137:98/gslb/dsdqpub/qhws.m3u8?auth=testpub$LR•IPV4•10『线路3』 +https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•10『线路4』 +https://httop.top/ysp-青海卫视$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路5』 +http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路6』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路7』 +http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/qhws.m3u8?auth=testpub$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://httop.top/ysp-青海卫视$LR•IPV4•10『线路9』 -#EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路10』 +http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226957/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjW26v5VaHGy1jQuIA-4EbA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•19『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://101.66.199.102:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路2』 +https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•19『线路3』 +https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•19『线路4』 +http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路5』 +http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路6』 +http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•19『线路7』 +https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•19『线路8』 +https://httop.top/ysp-山东卫视$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•19『线路9』 +http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•19『线路10』 +http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226957/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjW26v5VaHGy1jQuIA-4EbA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•19『线路11』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路12』 +http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•19『线路12』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•19『线路13』 +http://101.66.199.102:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•19『线路14』 +http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•19『线路15』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•19『线路16』 +http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://httop.top/ysp-山东卫视$LR•IPV4•19『线路17』 +http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路17』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•19『线路18』 +http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路19』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路2』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路3』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路4』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 +https://httop.top/ysp-天津卫视$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路7』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路8』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路9』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路10』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路11』 +http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路12』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路13』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://httop.top/ysp-天津卫视$LR•IPV4•15『线路14』 +http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路15』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路2』 +http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路3』 +http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路4』 +https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路5』 +https://httop.top/ysp-海南卫视$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路6』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路7』 +http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://httop.top/ysp-海南卫视$LR•IPV4•8『线路8』 +http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•11『线路1』 +https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•11『线路2』 +https://httop.top/ysp-新疆卫视$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•11『线路3』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•11『线路3』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•11『线路4』 +http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•11『线路5』 +http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•11『线路6』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路7』 +http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路8』 +http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•11『线路9』 +http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•11『线路10』 +http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://httop.top/ysp-新疆卫视$LR•IPV4•11『线路11』 +http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227028/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGfQPqRNVeBjTMsZ48qu0SA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路2』 +http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.8.224.6:9999/tsfile/live/1055_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路3』 +https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•18『线路4』 +https://httop.top/ysp-云南卫视$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ynwshd$LR•IPV4•18『线路5』 +http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://120.198.95.220:9901/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227028/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGfQPqRNVeBjTMsZ48qu0SA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路6』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路7』 +http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.198.105:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路8』 +http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.198.242:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路9』 +http://111.8.224.6:9999/tsfile/live/1055_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.199.102:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路10』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ynwshd$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路11』 +http://120.198.95.220:9901/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•18『线路12』 +http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•18『线路13』 +http://101.66.198.105:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•18『线路14』 +http://101.66.198.242:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•18『线路15』 +http://101.66.199.102:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•18『线路16』 +http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://httop.top/ysp-云南卫视$LR•IPV4•18『线路17』 +http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 +https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 +https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路2』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://107.150.60.122/live/xzws.m3u8$LR•IPV4•10『线路3』 +http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://198.204.228.26/live/xzws.m3u8$LR•IPV4•10『线路4』 +http://107.150.60.122/live/xzws.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•10『线路5』 +http://198.204.228.26/live/xzws.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•10『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•10『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•10『线路8』 +http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•10『线路9』 -#EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•10『线路10』 +http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 -p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•3『线路3』 +http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路1』 +http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://112.123.243.37:50085/tsfile/live/0112_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路2』 +https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•7『线路3』 +https://httop.top/ysp-兵团卫视$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•7『线路4』 +http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•7『线路5』 +http://112.123.243.37:50085/tsfile/live/0112_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•7『线路6』 -#EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://httop.top/ysp-兵团卫视$LR•IPV4•7『线路7』 +http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="安多卫视" tvg-name="安多卫视" group-title="卫视",安多卫视 https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 @@ -1506,27 +1488,27 @@ http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="农林卫视" tvg-name="农林卫视" group-title="卫视",农林卫视 -http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路1』 +http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="农林卫视" tvg-name="农林卫视" group-title="卫视",农林卫视 -http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路2』 +http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://107.150.60.122/live/ssws.m3u8$LR•IPV4•5『线路2』 +http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•5『线路3』 +https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•5『线路4』 +http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•5『线路5』 +http://107.150.60.122/live/ssws.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•4『线路1』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•4『线路2』 +http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•4『线路3』 +https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="延边卫视" tvg-name="延边卫视" group-title="卫视",延边卫视 -http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•4『线路4』 +https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="中国教育3台" tvg-name="中国教育3台" group-title="卫视",中国教育3台 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226577/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EhE2Z89HKgsQOlN9opVn1iw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNN03yUnk4zBVk1bynPPL3hZ%2CEND$LR•IPV6 #EXTINF:-1 tvg-id="上海卫视" tvg-name="上海卫视" group-title="卫视",上海卫视 @@ -1538,7 +1520,7 @@ https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&tx #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="辽宁公共" tvg-name="辽宁公共" group-title="卫视",辽宁公共 -http://120.76.248.139/live/bfgd/4200000481.m3u8$LR•IPV4 +http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="中华特产" tvg-name="中华特产" group-title="卫视",中华特产 http://120.76.248.139/live/bfgd/4200000158.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="河北4K" tvg-name="河北4K" group-title="卫视",河北4K @@ -1550,93 +1532,89 @@ http://43.251.226.89:8080/play/928.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="河北4K" tvg-name="河北4K" group-title="卫视",河北4K http://106.53.99.30/tv/api.php?id=hebtv4k$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://livehhhttps.sxrtv.com/lsdream/lce1mC4/800/h1thc41.m3u8$LR•IPV4•19『线路1』 +http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227016/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESb5Qr3NTpE2ZugIroKoyTw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•19『线路2』 +https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•19『线路3』 +https://httop.top/ysp-山西卫视$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 +http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://101.66.198.242:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路5』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227016/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESb5Qr3NTpE2ZugIroKoyTw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路5』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://101.66.199.102:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路6』 +http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://101.66.198.105:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路7』 +http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路8』 +http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路9』 +http://101.66.198.242:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•19『线路10』 +http://101.66.199.102:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•19『线路11』 +http://101.66.198.105:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://107.150.60.122/live/sxwshd.m3u8$LR•IPV4•19『线路12』 +http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•19『线路13』 +http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•19『线路14』 +http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•19『线路15』 +http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•19『线路16』 +http://107.150.60.122/live/sxwshd.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•19『线路17』 +http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://httop.top/ysp-山西卫视$LR•IPV4•19『线路18』 -#EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路19』 +http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•23『线路1』 +http://stream.snrtv.com/sxbc-star-JNW048.m3u8$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•23『线路2』 +http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•23『线路3』 +http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•23『线路4』 +https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•23『线路5』 +https://httop.top/ysp-陕西卫视$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=snwshd$LR•IPV4•23『线路6』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://113.25.252.226:9901/tsfile/live/1040_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 +http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.123.243.37:50085/tsfile/live/0109_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•23『线路8』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://101.66.199.102:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路9』 +http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://101.66.198.105:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路10』 +http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://101.66.198.242:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路11』 +http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路12』 +http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路13』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=snwshd$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•23『线路14』 +http://113.25.252.226:9901/tsfile/live/1040_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•23『线路15』 +http://112.123.243.37:50085/tsfile/live/0109_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•23『线路16』 +http://101.66.199.102:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•23『线路17』 +http://101.66.198.105:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•23『线路18』 +http://101.66.198.242:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•23『线路19』 +http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•23『线路20』 +http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://httop.top/ysp-陕西卫视$LR•IPV4•23『线路21』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•23『线路22』 +http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路23』 +http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="CHC影迷电影" tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4 -#EXTINF:-1 tvg-id="CHC家庭影院" tvg-name="CHC家庭影院" group-title="数字",CHC家庭影院 -http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="睛彩竞技" tvg-name="睛彩竞技" group-title="数字",睛彩竞技 http://dl.wifi942.com:66/jsyd/jsyd.php?id=HD-8000k-1080P-miguaoyun2$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="睛彩竞技" tvg-name="睛彩竞技" group-title="数字",睛彩竞技 @@ -1914,9 +1892,7 @@ http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/ #EXTINF:-1 tvg-id="NewTV超级体育" tvg-name="NewTV超级体育" group-title="数字",NewTV超级体育 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3188&tk=23a9aca1f79f$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路1』 -#EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路2』 +http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae70ef8e17d93eec249a3c8ad6.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 @@ -1929,8 +1905,6 @@ https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9 http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•6『线路6』 -#EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" group-title="数字",哈哈炫动 @@ -1940,15 +1914,13 @@ http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•2『线路1 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•5『线路1』 +http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.194.177:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路2』 +http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•5『线路3』 +http://101.66.198.242:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.198.242:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.199.102:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路5』 +http://101.66.199.102:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•86『线路1』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 @@ -2122,41 +2094,41 @@ https://stream1.freetv.fun/jin-ying-ji-shi-13.ctv$LR•IPV4•86『线路85』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6268&tk=23a9aca1f79f$LR•IPV4•86『线路86』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路1』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路1』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路2』 +https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路2』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路3』 +http://111.231.6.102:1234/961930263$LR•IPV4•31『线路3』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://111.231.6.102:1234/961930263$LR•IPV4•31『线路4』 +http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路4』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路5』 +https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路5』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路6』 +http://115.190.247.176:1111/961930263$LR•IPV4•31『线路6』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://115.190.247.176:1111/961930263$LR•IPV4•31『线路7』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路7』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路8』 +http://182.61.15.84:80/961930263$LR•IPV4•31『线路8』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://182.61.15.84:80/961930263$LR•IPV4•31『线路9』 +http://60.168.105.87:5008/961930263$LR•IPV4•31『线路9』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://60.168.105.87:5008/961930263$LR•IPV4•31『线路10』 +http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路10』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路11』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路11』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路12』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路12』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路13』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路13』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路14』 +http://123.113.205.253:3000/961930263$LR•IPV4•31『线路14』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://123.113.205.253:3000/961930263$LR•IPV4•31『线路15』 +https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路15』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路16』 +http://110.154.192.66:7788/961930263$LR•IPV4•31『线路16』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://110.154.192.66:7788/961930263$LR•IPV4•31『线路17』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路17』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路18』 +http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路18』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 https://migu.188766.xyz/?migutoken=396182b2a9b61dca2daded3fc6f62311&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路19』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 @@ -2184,9 +2156,9 @@ http://e1.woc.iiiya.cn:8888/rtp/239.61.3.8:9566$LR•IPV4•31『线路30』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/ydcmklcd/51/20251225/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600603&netType=0&sid=5910022317&pid=2028597139×tamp=20260722080327&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=961930263&ParentNodeID=-99&assertID=5910022317&client_ip=171.8.79.254&SecurityKey=20260722080327&promotionId=&mvid=5900006783&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=336b026337e0131f650177076b9cd07c&sv=10004&ct=android$LR•IPV4•31『线路31』 #EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 -http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路1』 +http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 -http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路2』 +http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8487&tk=a0c4f6cfaba3$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 @@ -2206,15 +2178,15 @@ http://111.22.153.159:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4 #EXTINF:-1 tvg-id="华数4K" tvg-name="华数4K" group-title="数字",华数4K http://home.wwang.pw:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路1』 +http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路2』 +https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 +https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路4』 +http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路5』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="滁州新闻综合频道" tvg-name="滁州新闻综合频道" group-title="安徽",滁州新闻综合频道 http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="滁州科教频道" tvg-name="滁州科教频道" group-title="安徽",滁州科教频道 @@ -2332,57 +2304,57 @@ https://tylive.kan0512.com/norecord/csztv4k_4k.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="苏州4k" tvg-name="苏州4k" group-title="江苏",苏州4k http://106.53.99.30/tv/api.php?id=sztv4k$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•20『线路1』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•20『线路2』 +https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•20『线路2』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•20『线路3』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•20『线路3』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•20『线路4』 +http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•20『线路4』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•20『线路5』 +http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•20『线路5』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•20『线路6』 +http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•20『线路6』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•20『线路7』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路7』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•20『线路8』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•20『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路9』 +http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•20『线路9』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•20『线路10』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•20『线路10』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•20『线路11』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•20『线路11』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•20『线路12』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•20『线路12』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•20『线路13』 +http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路13』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•20『线路14』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路14』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路15』 +http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•20『线路15』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路16』 +http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•20『线路16』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•20『线路17』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路17』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路18』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•20『线路18』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•20『线路19』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路19』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路20』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路2』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路3』 +http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路4』 +http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路5』 +http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路6』 +http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 @@ -2424,75 +2396,75 @@ http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•25『 #EXTINF:-1 tvg-id="浙江经济生活" tvg-name="浙江经济生活" group-title="浙江",浙江经济生活 http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 -http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路1』 +http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 -http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路2』 +https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 -https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路3』 +http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路1』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路2』 +https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路3』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路4』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路5』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路6』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路7』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路8』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路9』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路10』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路11』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路12』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路13』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路14』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路14』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路15』 +http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路15』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路16』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路16』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路17』 +http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路17』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路18』 +http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路18』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路19』 +http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路19』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路20』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-4.ctv$LR•IPV4•37『线路20』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-4.ctv$LR•IPV4•37『线路21』 +http://ali-vl.cztv.com/channels/lantian/channel006/360p.m3u8$LR•IPV4•37『线路21』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-vl.cztv.com/channels/lantian/channel006/360p.m3u8$LR•IPV4•37『线路22』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-10.m3u8$LR•IPV4•37『线路22』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-10.m3u8$LR•IPV4•37『线路23』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-8.m3u8$LR•IPV4•37『线路23』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-8.m3u8$LR•IPV4•37『线路24』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路24』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路25』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-2.ctv$LR•IPV4•37『线路25』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-2.ctv$LR•IPV4•37『线路26』 +http://120.55.49.231:3095/rtp/233.50.201.136:5140$LR•IPV4•37『线路26』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://120.55.49.231:3095/rtp/233.50.201.136:5140$LR•IPV4•37『线路27』 +http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路27』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路28』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『线路28』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『线路29』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路29』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路30』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路30』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路31』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-9.ctv$LR•IPV4•37『线路31』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 -https://stream1.freetv.fun/zhe-jiang-min-sheng-9.ctv$LR•IPV4•37『线路32』 +https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路32』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 https://stream1.freetv.fun/zhe-jiang-min-sheng-7.m3u8$LR•IPV4•37『线路33』 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 @@ -2504,37 +2476,37 @@ https://t.freetv.fun/live/zhe-jiang-min-sheng-11.m3u8$LR•IPV4•37『线路36 #EXTINF:-1 tvg-id="浙江民生" tvg-name="浙江民生" group-title="浙江",浙江民生 https://t.freetv.fun/live/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路2』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路3』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路4』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路5』 +http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路6』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路7』 +http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路8』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路9』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路10』 +http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路11』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路12』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路13』 +http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路14』 +https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路15』 +http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路16』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://stream1.freetv.fun/zhe-jiang-xin-wen-10.m3u8$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 @@ -2572,35 +2544,35 @@ https://t.freetv.fun/live/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路33』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路34』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 +http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路2』 +https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路3』 +https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路4』 +https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路5』 +https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路6』 +http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路7』 +https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路8』 +https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路9』 +https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路10』 +http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路11』 +https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路12』 +http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路13』 +https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路14』 +https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路15』 +https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 @@ -2680,9 +2652,9 @@ http://www.jeremyoto.com:82/rtp/233.50.201.180:5140$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 -http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•10『线路2』 +http://api3.52tb.xyz/info?id=432&token=20230226bgyszp$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 -http://api3.52tb.xyz/info?id=432&token=20230226bgyszp$LR•IPV4•10『线路3』 +http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://zwebl02.cztv.com/live/channel041080P.m3u8?auth_key=2524708799-0-0-f195b808217db133bfd648edc01e91fa$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 @@ -2698,15 +2670,15 @@ http://ali-vl.cztv.com/channels/lantian/channel004/360p.m3u8$LR•IPV4•10『 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路1』 +http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路2』 +http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路3』 +http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="之江纪录" tvg-name="之江纪录" group-title="浙江",之江纪录 -https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路1』 +http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="之江纪录" tvg-name="之江纪录" group-title="浙江",之江纪录 -http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•6『线路2』 +https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="之江纪录" tvg-name="之江纪录" group-title="浙江",之江纪录 https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="之江纪录" tvg-name="之江纪录" group-title="浙江",之江纪录 @@ -2716,57 +2688,57 @@ http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『 #EXTINF:-1 tvg-id="之江纪录" tvg-name="之江纪录" group-title="浙江",之江纪录 http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路1』 +http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路1』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路2』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路2』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路3』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路3』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路4』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路4』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路5』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路5』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路6』 +https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路6』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路7』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路7』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路8』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路8』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路9』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路9』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路10』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路10』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路11』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路11』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路12』 +http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路12』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路13』 +http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路13』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路14』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路14』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路15』 +http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路15』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路16』 +https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路16』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路17』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路17』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路18』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路18』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路19』 +https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路19』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路20』 +http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路20』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路21』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路21』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路22』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路22』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路23』 +http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路23』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路24』 +https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路24』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路25』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路25』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路26』 +https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路26』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 http://ali-xwl.cztv.com/live/channel10720Plxw.m3u8$LR•IPV4•32『线路27』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 @@ -2780,11 +2752,11 @@ https://t.freetv.fun/live/zhe-jiang-guo-ji.m3u8$LR•IPV4•32『线路31』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 https://t.freetv.fun/live/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路32』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 -http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路1』 +http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 -http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路2』 +http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 -http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路3』 +http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 http://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 @@ -2792,35 +2764,35 @@ https://live-auth.51kandianshi.com/szgd/csztv1.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="丽水新闻" tvg-name="丽水新闻" group-title="浙江",丽水新闻 http://120.55.49.231:3095/rtp/233.50.201.162:5140$LR•IPV4 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路1』 +https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路2』 +https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路3』 +https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路4』 +https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路5』 +https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路6』 +https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路7』 +https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路8』 +http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路9』 +http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="湖州新闻综合" tvg-name="湖州新闻综合" group-title="浙江",湖州新闻综合 -http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 +https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="湖州新闻综合" tvg-name="湖州新闻综合" group-title="浙江",湖州新闻综合 -https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 +http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="湖州新闻综合" tvg-name="湖州新闻综合" group-title="浙江",湖州新闻综合 http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865&fbl=$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="湖州文化娱乐" tvg-name="湖州文化娱乐" group-title="浙江",湖州文化娱乐 -http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 +https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="湖州文化娱乐" tvg-name="湖州文化娱乐" group-title="浙江",湖州文化娱乐 -https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路2』 +http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="湖州文化娱乐" tvg-name="湖州文化娱乐" group-title="浙江",湖州文化娱乐 -http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路3』 +http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="舟山新闻综合" tvg-name="舟山新闻综合" group-title="浙江",舟山新闻综合 http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4 #EXTINF:-1 tvg-id="舟山公共" tvg-name="舟山公共" group-title="浙江",舟山公共 @@ -2850,25 +2822,25 @@ https://stream1.freetv.fun/zhe-jiang-gong-gong-xin-wen-1.m3u8$LR•IPV4•6『 #EXTINF:-1 tvg-id="浙江青田" tvg-name="浙江青田" group-title="浙江",浙江青田 http://play-sh13.quklive.com/live/1692755062081192.m3u8?auth_key=2028414252-b15176e05a684b589d12314dfabf6225-0-d175afe86fbea31e2eb167a6dd06cd4f$LR•IPV4 #EXTINF:-1 tvg-id="浙江遂昌" tvg-name="浙江遂昌" group-title="浙江",浙江遂昌 -http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路1』 +http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="浙江遂昌" tvg-name="浙江遂昌" group-title="浙江",浙江遂昌 -http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="浙江遂昌" tvg-name="浙江遂昌" group-title="浙江",浙江遂昌 http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="诸暨新闻综合" tvg-name="诸暨新闻综合" group-title="浙江",诸暨新闻综合 -https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="诸暨新闻综合" tvg-name="诸暨新闻综合" group-title="浙江",诸暨新闻综合 -http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 +https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="龙游生活娱乐" tvg-name="龙游生活娱乐" group-title="浙江",龙游生活娱乐 -https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="龙游生活娱乐" tvg-name="龙游生活娱乐" group-title="浙江",龙游生活娱乐 -http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 +https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="龙游生活娱乐" tvg-name="龙游生活娱乐" group-title="浙江",龙游生活娱乐 http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="龙游新闻综合" tvg-name="龙游新闻综合" group-title="浙江",龙游新闻综合 -https://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8$LR•IPV4•5『线路1』 +http://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8?zzhed$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="龙游新闻综合" tvg-name="龙游新闻综合" group-title="浙江",龙游新闻综合 -http://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8?zzhed$LR•IPV4•5『线路2』 +https://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="龙游新闻综合" tvg-name="龙游新闻综合" group-title="浙江",龙游新闻综合 http://play-sh13.quklive.com/live/1703570877483349.m3u8?auth_key=2028414694-515206b2ec504fa3bc90bb1ec3b0c48e-0-eeeeb3d5a8f8e5415142bf430b916d79$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="龙游新闻综合" tvg-name="龙游新闻综合" group-title="浙江",龙游新闻综合 @@ -2898,31 +2870,31 @@ http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江",象山综合 http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 -http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•6『线路1』 +https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 -https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•6『线路2』 +https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 -https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•6『线路3』 +https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 -https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•6『线路4』 +https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 -https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路5』 +http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="衢江新闻综合" tvg-name="衢江新闻综合" group-title="浙江",衢江新闻综合 https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-3.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="萧山生活" tvg-name="萧山生活" group-title="浙江",萧山生活 -https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="萧山生活" tvg-name="萧山生活" group-title="浙江",萧山生活 http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="萧山生活" tvg-name="萧山生活" group-title="浙江",萧山生活 -http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路3』 +https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 -https://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8$LR•IPV4•17『线路1』 +https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-4.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 -https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-4.m3u8$LR•IPV4•17『线路2』 +https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-3.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 -https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-3.m3u8$LR•IPV4•17『线路3』 +https://t.freetv.fun/live/xiao-shan-xin-wen-zong-he-1.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 -https://t.freetv.fun/live/xiao-shan-xin-wen-zong-he-1.m3u8$LR•IPV4•17『线路4』 +https://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8?zzhed$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 @@ -2950,15 +2922,15 @@ http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8?$LR•IPV4•17『 #EXTINF:-1 tvg-id="萧山新闻综合" tvg-name="萧山新闻综合" group-title="浙江",萧山新闻综合 http://l.cztvcloud.com/channels/lantian/SXxiaoshan3/720p.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 -https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•9『线路1』 +http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 -http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•9『线路2』 +https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 -https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路3』 +https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 -https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路4』 +https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 -https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路5』 +https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-4.ctv$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="苍南新闻综合" tvg-name="苍南新闻综合" group-title="浙江",苍南新闻综合 @@ -2974,9 +2946,9 @@ http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed"$LR•IPV #EXTINF:-1 tvg-id="缙云综合" tvg-name="缙云综合" group-title="浙江",缙云综合 http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="缙云新闻综合" tvg-name="缙云新闻综合" group-title="浙江",缙云新闻综合 -http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="缙云新闻综合" tvg-name="缙云新闻综合" group-title="浙江",缙云新闻综合 -http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路2』 +http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="绍兴电视台公共" tvg-name="绍兴电视台公共" group-title="浙江",绍兴电视台公共 http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="绍兴电视台公共" tvg-name="绍兴电视台公共" group-title="浙江",绍兴电视台公共 @@ -3018,47 +2990,47 @@ https://stream1.freetv.fun/shao-xing-wen-hua-ying-shi-1.m3u8$LR•IPV4•3『线 #EXTINF:-1 tvg-id="绍兴文化影视" tvg-name="绍兴文化影视" group-title="浙江",绍兴文化影视 http://live.shaoxing.com.cn/video/s10001-sxtv3/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路1』 +https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路2』 +https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路3』 +https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路4』 +https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路5』 +https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路6』 +http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路7』 +http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="海盐新闻" tvg-name="海盐新闻" group-title="浙江",海盐新闻 http://lived.dmqhyadmin.com/ds/sd/live.m3u8?zzhed$LR•IPV4 #EXTINF:-1 tvg-id="海宁新闻综合" tvg-name="海宁新闻综合" group-title="浙江",海宁新闻综合 -https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 +http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="海宁新闻综合" tvg-name="海宁新闻综合" group-title="浙江",海宁新闻综合 -http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 +https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="海宁新闻综合" tvg-name="海宁新闻综合" group-title="浙江",海宁新闻综合 https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8?zbid=293304&tpid=1708007815$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="洞头综合" tvg-name="洞头综合" group-title="浙江",洞头综合 -http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="洞头综合" tvg-name="洞头综合" group-title="浙江",洞头综合 -http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="洞头综合" tvg-name="洞头综合" group-title="浙江",洞头综合 -http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 +http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路1』 +https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路4』 +https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路5』 +https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路6』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路7』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-3.ctv$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 @@ -3066,51 +3038,51 @@ https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 https://t.freetv.fun/live/yong-jia-xin-wen-zong-he.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 -http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路1』 +http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 -http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 -https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路3』 +http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed\r\n$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路1』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路4』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路5』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="普陀新闻综合" tvg-name="普陀新闻综合" group-title="浙江",普陀新闻综合 -http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="普陀新闻综合" tvg-name="普陀新闻综合" group-title="浙江",普陀新闻综合 -http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="普陀新闻综合" tvg-name="普陀新闻综合" group-title="浙江",普陀新闻综合 -http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 +http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="新昌生活" tvg-name="新昌生活" group-title="浙江",新昌生活 http://l.cztvcloud.com/channels/lantian/SXxinchang2/720p.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路1』 +https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路2』 +https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路3』 +https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路4』 +http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 +https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-4.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 -http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路1』 +http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 -http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?fbl=$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 @@ -3122,31 +3094,31 @@ https://stream1.freetv.fun/kai-hua-xin-wen-zong-he-1.m3u8$LR•IPV4•3『线路 #EXTINF:-1 tvg-id="开化新闻综合" tvg-name="开化新闻综合" group-title="浙江",开化新闻综合 https://stream1.freetv.fun/kai-hua-xin-wen-zong-he-2.ctv$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="开化国家公园" tvg-name="开化国家公园" group-title="浙江",开化国家公园 -http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="开化国家公园" tvg-name="开化国家公园" group-title="浙江",开化国家公园 -http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="开化国家公园" tvg-name="开化国家公园" group-title="浙江",开化国家公园 http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路1』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路5』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?fbl=$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 -http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•9『线路1』 +https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 -https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路2』 +http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 -http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•9『线路3』 +https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 -https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路4』 +http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 @@ -3158,11 +3130,11 @@ https://t.freetv.fun/live/ping-hu-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路8 #EXTINF:-1 tvg-id="平湖新闻综合" tvg-name="平湖新闻综合" group-title="浙江",平湖新闻综合 http://play-sh13.quklive.com/live/1690167908295069.m3u8?auth_key=2027466211-f190eec410c24473825cbe1d8541e545-0-f21db57ae1b534802c1cf7be86cc3aef$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 -http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•7『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•7『线路2』 +https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 -https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•7『线路3』 +http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 @@ -3172,9 +3144,9 @@ https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-2.m3u8$LR•IPV4•7『线 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="兰溪新闻综合" tvg-name="兰溪新闻综合" group-title="浙江",兰溪新闻综合 -http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•6『线路1』 +https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="兰溪新闻综合" tvg-name="兰溪新闻综合" group-title="浙江",兰溪新闻综合 -https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="兰溪新闻综合" tvg-name="兰溪新闻综合" group-title="浙江",兰溪新闻综合 https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="兰溪新闻综合" tvg-name="兰溪新闻综合" group-title="浙江",兰溪新闻综合 @@ -3184,21 +3156,21 @@ https://t.freetv.fun/live/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路5 #EXTINF:-1 tvg-id="兰溪新闻综合" tvg-name="兰溪新闻综合" group-title="浙江",兰溪新闻综合 http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="余杭综合" tvg-name="余杭综合" group-title="浙江",余杭综合 -http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="余杭综合" tvg-name="余杭综合" group-title="浙江",余杭综合 -http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="余杭综合" tvg-name="余杭综合" group-title="浙江",余杭综合 -http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="余杭未来E" tvg-name="余杭未来E" group-title="浙江",余杭未来E -http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="余杭未来E" tvg-name="余杭未来E" group-title="浙江",余杭未来E -http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 -https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 -http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 -http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路3』 +https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 @@ -3214,15 +3186,15 @@ https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•4『线 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="云和新闻综合" tvg-name="云和新闻综合" group-title="浙江",云和新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="云和新闻综合" tvg-name="云和新闻综合" group-title="浙江",云和新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•2『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="义乌新闻综合" tvg-name="义乌新闻综合" group-title="浙江",义乌新闻综合 https://44911.hlsplay.aodianyun.com/tv_radio_44911/tv_channel_1796.m3u8?auth_key=4830573978-0-0-92824c2c03f95906a3c49a4aa28f1709&extra_key=Yc1XsmxOKy2UBoPM4Wy5vCPsEYqnj06taCR2SRB2Xrg2w28NPilH03KdIbbM5wgSql-VBohSnoO9AOKl94q2t2DWMftz-XB-2qUX-UjXcS80StcSZahBFjrKLivXaRjiY5r2NOMKWMKFbv-S0Bz2G6iEXgCK8yGjtrFHDcPfAQEE0pvXq0Bwy34b7We8zARN&ali_ffmpeg_version=mpengine$LR•IPV4 #EXTINF:-1 tvg-id="中国蓝新闻" tvg-name="中国蓝新闻" group-title="浙江",中国蓝新闻 -http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="中国蓝新闻" tvg-name="中国蓝新闻" group-title="浙江",中国蓝新闻 -https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="东阳影视生活" tvg-name="东阳影视生活" group-title="浙江",东阳影视生活 http://l.cztvcloud.com/channels/lantian/SXdongyang1/720p.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="上虞新闻综合" tvg-name="上虞新闻综合" group-title="浙江",上虞新闻综合 @@ -3230,19 +3202,19 @@ http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?zzhed$LR•IPV4•2 #EXTINF:-1 tvg-id="上虞新闻综合" tvg-name="上虞新闻综合" group-title="浙江",上虞新闻综合 http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路1』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 +https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路3』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路4』 +http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路5』 +https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路6』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路7』 +http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://stream1.freetv.fun/shang-yu-xin-shang-du-4.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 @@ -3252,25 +3224,25 @@ http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed\r\n$LR•IPV4 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://stream1.freetv.fun/shang-yu-xin-shang-du-2.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•10『线路1』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•10『线路2』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路3』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•10『线路4』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•10『线路5』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路6』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•10『线路7』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•10『线路8』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•10『线路9』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="上虞文化影院" tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•10『线路10』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="民生休闲" tvg-name="民生休闲" group-title="浙江",民生休闲 http://l.cztvcloud.com/channels/lantian/SXpinghu2/720p.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="民生休闲" tvg-name="民生休闲" group-title="浙江",民生休闲 @@ -3586,9 +3558,9 @@ http://ls.qingting.fm/live/4877.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="长沙新闻" tvg-name="长沙新闻" group-title="湖南",长沙新闻 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路1』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路2』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="长沙女性" tvg-name="长沙女性" group-title="湖南",长沙女性 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="衡阳新闻综合" tvg-name="衡阳新闻综合" group-title="湖南",衡阳新闻综合 @@ -3958,7 +3930,7 @@ http://120.76.248.139/live/bfgd/4200000073.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="辽宁经济" tvg-name="辽宁经济" group-title="辽宁",辽宁经济 http://120.76.248.139/live/bfgd/4200000076.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="辽宁都市" tvg-name="辽宁都市" group-title="辽宁",辽宁都市 -http://120.76.248.139/live/bfgd/4200000610.m3u8$LR•IPV4 +https://ls.qingting.fm/live/1099/64k.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="辽宁体育" tvg-name="辽宁体育" group-title="辽宁",辽宁体育 http://dassby.qqff.top:99/live/辽宁体育/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="辽宁体育" tvg-name="辽宁体育" group-title="辽宁",辽宁体育 @@ -4627,14 +4599,12 @@ https://stream1.freetv.fun/yan-dong-min-sheng-13.ctv$LR•IPV4•55『线路53 https://stream1.freetv.fun/yan-dong-min-sheng-9.ctv$LR•IPV4•55『线路54』 #EXTINF:-1 tvg-id="广东民生" tvg-name="广东民生" group-title="广东",广东民生 https://stream1.freetv.fun/yan-dong-min-sheng-2.m3u8$LR•IPV4•55『线路55』 -#EXTINF:-1 tvg-id="广东少儿" tvg-name="广东少儿" group-title="广东",广东少儿 -http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="大湾区卫视" tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="大湾区卫视" tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="大湾区卫视" tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•3『线路3』 +http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 https://t.freetv.fun/live/yan-zhou-zong-he-1.m3u8$LR•IPV4•53『线路1』 #EXTINF:-1 tvg-id="广州综合" tvg-name="广州综合" group-title="广东",广州综合 @@ -5080,11 +5050,11 @@ http://120.77.205.62:8087/rtp/239.77.0.202:5146$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="江门侨乡生活" tvg-name="江门侨乡生活" group-title="广东",江门侨乡生活 http://120.77.205.62:8087/rtp/239.77.0.196:5146$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 +http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路2』 +http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路3』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 @@ -5434,19 +5404,21 @@ http://116.77.239.26:44300/tsfile/live/0107_1.m3u8?key=txiptv&playlive=0&authid= #EXTINF:-1 tvg-id="广东新闻" tvg-name="广东新闻" group-title="广东",广东新闻 https://stream1.freetv.fun/yan-dong-xin-wen-12.ctv$LR•IPV4•73『线路73』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=59b2d3f371597c07d47815034a0e6e78&txTime=19019c65629$LR•IPV4•7『线路1』 +https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=59b2d3f371597c07d47815034a0e6e78&txTime=19019c65629$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=c82f82d7a6beda92b2b1ce93753dcacb&txTime=18e4a381d46$LR•IPV4•7『线路2』 +https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=c82f82d7a6beda92b2b1ce93753dcacb&txTime=18e4a381d46$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -http://r.jdshipin.com/nWaZO$LR•IPV4•7『线路3』 +http://r.jdshipin.com/nWaZO$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=6594e9d5&txSecret=e783742d1233ae402ec4566b8537ca17$LR•IPV4•7『线路4』 +https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=6594e9d5&txSecret=e783742d1233ae402ec4566b8537ca17$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=659a5130&txSecret=79b02fdfa77e39b5f5b86cd4bb848a0e$LR•IPV4•7『线路5』 +https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=659a5130&txSecret=79b02fdfa77e39b5f5b86cd4bb848a0e$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -http://tencentplaygzrb01.gztv.com/live/nanguodushi.m3u8$LR•IPV4•7『线路6』 +http://tencentplaygzrb01.gztv.com/live/nanguodushi.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 -https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=627498b93bc6f5d6e2460d0823bf81a3&txTime=18e6df74fc2$LR•IPV4•7『线路7』 +https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=627498b93bc6f5d6e2460d0823bf81a3&txTime=18e6df74fc2$LR•IPV4•8『线路7』 +#EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 +http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 http://feiyang.ak47s.top:35455/itv/5000000010000018926.m3u8?cdn=bestzb$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 @@ -5514,93 +5486,93 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•44『线路1』 +http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路1』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路2』 +https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路2』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路3』 +https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路3』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路4』 +https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路4』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路5』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路5』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路6』 +http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路6』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路7』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路7』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路8』 +https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路8』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路9』 +https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路9』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路10』 +https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路10』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路11』 +http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路11』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路12』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•44『线路12』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•44『线路13』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路13』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路14』 +https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路14』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路15』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路15』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路16』 +https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路16』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路17』 +https://t.freetv.fun/live/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路17』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路18』 +https://t.freetv.fun/live/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路18』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路19』 +https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路19』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路20』 +https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•44『线路20』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•44『线路21』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路21』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路22』 +https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路22』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路23』 +https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路23』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路24』 +http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路24』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路25』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路25』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路26』 +http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路26』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路27』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路27』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路28』 +http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路28』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路29』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路29』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路30』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路30』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路31』 +http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路31』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路32』 +https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路32』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路33』 +https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路33』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路34』 +https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路34』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路35』 +https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路35』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路36』 +http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路36』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路37』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路37』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路38』 +https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路38』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路39』 +https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路39』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路40』 +https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路40』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路41』 +https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路41』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路42』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路42』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路43』 +https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路43』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路44』 +http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•44『线路44』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 https://t.freetv.fun/live/dong-fang-ying-shi-3.m3u8$LR•IPV4•35『线路1』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 @@ -5828,313 +5800,319 @@ http://13457610200.8866.org:2018/live/上海纪实/index.m3u8$LR•IPV4•10『 #EXTINF:-1 tvg-id="上海纪实" tvg-name="上海纪实" group-title="上海",上海纪实 https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-5.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•124『线路1』 +https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•127『线路1』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•124『线路2』 +https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•127『线路2』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•124『线路3』 +http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•127『线路3』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•124『线路4』 +http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•127『线路4』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•124『线路5』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•127『线路5』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•124『线路6』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路6』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•124『线路7』 +http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•127『线路7』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://221.5.213.4:30000/1111.m3u8$LR•IPV4•124『线路8』 +http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•127『线路8』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•124『线路9』 +http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•127『线路9』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•124『线路10』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•127『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•124『线路11』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路11』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•124『线路12』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•127『线路12』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•124『线路13』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•127『线路13』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•124『线路14』 +http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=b53278f712f65771788d341e9c3dc5a0&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722062037&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=39.103.188.159&SecurityKey=20260722062037&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&puData=8b5db5d95c206fa3e43449798a9cdeb1&ddCalcu=18bbve5addwcba95ad89957c9240463f4ae3&sv=10004&ct=android$LR•IPV4•127『线路14』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•124『线路15』 +http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•127『线路15』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•124『线路16』 +https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•127『线路16』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•124『线路17』 +https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•127『线路17』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•124『线路18』 +https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•127『线路18』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•124『线路19』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•127『线路19』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•124『线路20』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•127『线路20』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•124『线路21』 +http://59.175.11.109:1234/651632657$LR•IPV4•127『线路21』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•124『线路22』 +https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•127『线路22』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•124『线路23』 +http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722080330&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722080330&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=095d4acaa910ed867d2a04f1124293cf&sv=10004&ct=android$LR•IPV4•127『线路23』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•124『线路24』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•127『线路24』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•124『线路25』 +http://119.88.243.98:17231/651632657$LR•IPV4•127『线路25』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•124『线路26』 +https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•127『线路26』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•124『线路27』 +https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•127『线路27』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•124『线路28』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•127『线路28』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•124『线路29』 +https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•127『线路29』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•124『线路30』 +http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20251023080141ea171d5993054ddd94612bf653be3cfa&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20251023080141&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.83&SecurityKey=20251023080141&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=4757c0d2f0cd0feb69bcfc7ea14ddd49&ddCalcu=9447ed52d71dc0401da2ef70ccfdc0bf9e6b$LR•IPV4•127『线路30』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路31』 +https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路31』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•124『线路32』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•127『线路32』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•124『线路33』 +http://60.168.105.87:5008/651632657$LR•IPV4•127『线路33』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•124『线路34』 +http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•127『线路34』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•124『线路35』 +https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路35』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路36』 +http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•127『线路36』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•124『线路37』 +http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•127『线路37』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•124『线路38』 +http://123.113.205.253:3000/651632657$LR•IPV4•127『线路38』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=b53278f712f65771788d341e9c3dc5a0&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722062037&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=39.103.188.159&SecurityKey=20260722062037&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&puData=8b5db5d95c206fa3e43449798a9cdeb1&ddCalcu=18bbve5addwcba95ad89957c9240463f4ae3&sv=10004&ct=android$LR•IPV4•124『线路39』 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•127『线路39』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•124『线路40』 +https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•127『线路40』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•124『线路41』 +http://47.104.178.59:3566/651632657$LR•IPV4•127『线路41』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•124『线路42』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•127『线路42』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•124『线路43』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•127『线路43』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•124『线路44』 +https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•127『线路44』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•124『线路45』 +https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路45』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://59.175.11.109:1234/651632657$LR•IPV4•124『线路46』 +http://182.61.15.84:80/651632657$LR•IPV4•127『线路46』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•124『线路47』 +http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•127『线路47』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722080330&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722080330&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=095d4acaa910ed867d2a04f1124293cf&sv=10004&ct=android$LR•IPV4•124『线路48』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•127『线路48』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•124『线路49』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•127『线路49』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://119.88.243.98:17231/651632657$LR•IPV4•124『线路50』 +http://116.52.173.134:1234/651632657$LR•IPV4•127『线路50』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•124『线路51』 +http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20250919080134d0a4f61e680b4d1b8d2460b858ff1fec&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=c6e37e6787e81aeb250c874ff8533137&ddCalcu=7c36e1e13313705e86f7f8477e88c10a5e2b$LR•IPV4•127『线路51』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•124『线路52』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•127『线路52』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•124『线路53』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•127『线路53』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•124『线路54』 +http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•127『线路54』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20251023080141ea171d5993054ddd94612bf653be3cfa&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20251023080141&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.83&SecurityKey=20251023080141&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=4757c0d2f0cd0feb69bcfc7ea14ddd49&ddCalcu=9447ed52d71dc0401da2ef70ccfdc0bf9e6b$LR•IPV4•124『线路55』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•127『线路55』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路56』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•127『线路56』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•124『线路57』 +https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•127『线路57』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://60.168.105.87:5008/651632657$LR•IPV4•124『线路58』 +http://115.190.247.176:1111/651632657$LR•IPV4•127『线路58』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•124『线路59』 +http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•127『线路59』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路60』 +https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•127『线路60』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•124『线路61』 +https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•127『线路61』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•124『线路62』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•127『线路62』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://123.113.205.253:3000/651632657$LR•IPV4•124『线路63』 +http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•127『线路63』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•124『线路64』 +https://migu.188766.xyz/?migutoken=779bd2c7e2b23a37be54ec1b50771d47&id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&type=yy$LR•IPV4•127『线路64』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•124『线路65』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•127『线路65』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.104.178.59:3566/651632657$LR•IPV4•124『线路66』 +https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•127『线路66』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•124『线路67』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•127『线路67』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•124『线路68』 +http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722040328&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722040328&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=8d55a170b41ca441b1cc8e0b44df1555&sv=10004&ct=android$LR•IPV4•127『线路68』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•124『线路69』 +https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•127『线路69』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路70』 +https://iptv.catvod.com/migu?id=651632657&token=6ae14c419f6a0254b2b101892a90c635$LR•IPV4•127『线路70』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.84:80/651632657$LR•IPV4•124『线路71』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•127『线路71』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•124『线路72』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路72』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•124『线路73』 +https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•127『线路73』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•124『线路74』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路74』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://116.52.173.134:1234/651632657$LR•IPV4•124『线路75』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•127『线路75』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20250919080134d0a4f61e680b4d1b8d2460b858ff1fec&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=c6e37e6787e81aeb250c874ff8533137&ddCalcu=7c36e1e13313705e86f7f8477e88c10a5e2b$LR•IPV4•124『线路76』 +https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•127『线路76』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•124『线路77』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路77』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•124『线路78』 +https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•127『线路78』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•124『线路79』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•127『线路79』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•124『线路80』 +https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•127『线路80』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•124『线路81』 +http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•127『线路81』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•124『线路82』 +http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•127『线路82』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.190.247.176:1111/651632657$LR•IPV4•124『线路83』 +http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•127『线路83』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•124『线路84』 +https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•127『线路84』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•124『线路85』 +http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•127『线路85』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•124『线路86』 +http://221.5.213.4:30000/1111.m3u8$LR•IPV4•127『线路86』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•124『线路87』 +https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•127『线路87』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•124『线路88』 +http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•127『线路88』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://migu.188766.xyz/?migutoken=779bd2c7e2b23a37be54ec1b50771d47&id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&type=yy$LR•IPV4•124『线路89』 +https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•127『线路89』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•124『线路90』 +http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•127『线路90』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•124『线路91』 +http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•127『线路91』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•124『线路92』 +https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•127『线路92』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722040328&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722040328&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=8d55a170b41ca441b1cc8e0b44df1555&sv=10004&ct=android$LR•IPV4•124『线路93』 +https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•127『线路93』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•124『线路94』 +http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•127『线路94』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://iptv.catvod.com/migu?id=651632657&token=6ae14c419f6a0254b2b101892a90c635$LR•IPV4•124『线路95』 +http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•127『线路95』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•124『线路96』 +http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•127『线路96』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路97』 +http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•127『线路97』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•124『线路98』 +http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•127『线路98』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路99』 +http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•127『线路99』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•124『线路100』 +https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•127『线路100』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•124『线路101』 +http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•127『线路101』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路102』 +http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•127『线路102』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•124『线路103』 +https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•127『线路103』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•124『线路104』 +http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•127『线路104』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•124『线路105』 +http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•127『线路105』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•124『线路106』 +http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•127『线路106』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.spccmc.com:90/live/spxwzh.m3u8?zsicd$LR•IPV4•124『线路107』 +http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•127『线路107』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•124『线路108』 +http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•127『线路108』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•124『线路109』 +https://m3u8channel.ganzitv.com/nmip-media/channellive/channel1/playlist.m3u8$LR•IPV4•127『线路109』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•124『线路110』 +http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•127『线路110』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/267.m3u8$LR•IPV4•124『线路111』 +https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•127『线路111』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•124『线路112』 +http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•127『线路112』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•124『线路113』 +http://ls.qingting.fm/live/267.m3u8$LR•IPV4•127『线路113』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•124『线路114』 +http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8?zanhd$LR•IPV4•127『线路114』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•124『线路115』 +https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•127『线路115』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•124『线路116』 +https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•127『线路116』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•124『线路117』 +http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•127『线路117』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•124『线路118』 +https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•127『线路118』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•124『线路119』 +http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•127『线路119』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•124『线路120』 +http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•127『线路120』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•124『线路121』 +http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•127『线路121』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•124『线路122』 +http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•127『线路122』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•124『线路123』 +https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•127『线路123』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•124『线路124』 +https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•127『线路124』 +#EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 +https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•127『线路125』 +#EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 +http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•127『线路126』 +#EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 +http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•127『线路127』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 +http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路3』 +https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路4』 +https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路5』 +https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路6』 +http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路8』 +https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路9』 +http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路10』 +http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路11』 +https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路12』 +https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路13』 +https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路14』 +https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路15』 +https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路16』 +http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 +https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路2』 +http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路3』 +https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路4』 +http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路5』 +https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路6』 +http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 +http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 +https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路9』 +https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路10』 +https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路11』 +https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路12』 +http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 http://121.19.134.222:808/tsfile/live/1033_1.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 @@ -6180,57 +6158,57 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•22 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_SDETV$LR•IPV4•22『线路22』 #EXTINF:-1 tvg-id="山东农科" tvg-name="山东农科" group-title="山东",山东农科 -http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路1』 +http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="山东农科" tvg-name="山东农科" group-title="山东",山东农科 -http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路2』 +http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路1』 +http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路2』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 +http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路4』 +http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路5』 +http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 +http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路10』 +http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 +http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路2』 +http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 +http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路4』 +http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路5』 +http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路6』 +http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路7』 +http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 +http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路2』 +https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路3』 +https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路4』 +http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路5』 +https://stream1.freetv.fun/shan-dong-ti-yu-19.m3u8$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-19.m3u8$LR•IPV4•37『线路6』 +http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路7』 +http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 https://stream1.freetv.fun/shan-dong-ti-yu-18.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 @@ -6292,17 +6270,17 @@ https://stream1.freetv.fun/shan-dong-ti-yu-6.m3u8$LR•IPV4•37『线路36』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 http://58.57.40.22:9901/tsfile/live/1020_1.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路2』 +http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路3』 +http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路4』 +http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路5』 +http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路6』 +http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="山东文旅" tvg-name="山东文旅" group-title="山东",山东文旅 http://60.209.125.254:352/tsfile/live/1004_1.m3u8?ace$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="山东文旅" tvg-name="山东文旅" group-title="山东",山东文旅 @@ -6334,75 +6312,77 @@ http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 +http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路1』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路2』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路3』 +http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路4』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路5』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路6』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路7』 +https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路8』 +https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•11『线路1』 +p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•11『线路2』 +p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•11『线路3』 +p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•11『线路4』 +http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•11『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•11『线路6』 +p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•11『线路7』 +https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://r.jdshipin.com/GeWKr$LR•IPV4•11『线路8』 +http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•11『线路9』 +http://r.jdshipin.com/qClQf$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•11『线路10』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•11『线路11』 +https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•12『线路11』 +#EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 +http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="TVB明珠台" tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 @@ -6440,47 +6420,47 @@ https://live.ottiptv.cc/huya/23734169$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS http://38.64.72.148/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路1』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 +http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 +http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路3』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路4』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 +http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 +http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 +http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 +http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 +http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 +p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 +p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 +http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路1』 +http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路2』 +http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路3』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路4』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路5』 +http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路6』 +rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路8』 +p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路9』 +http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 @@ -6492,17 +6472,17 @@ http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路3 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 +https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 +http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ -http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 +http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ -http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路2』 +http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ -http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路3』 +http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="数位电影" tvg-name="数位电影" group-title="港澳台",数位电影 p3p://167.114.175.6:55331/6223ae1b0007136f3e5c44280e3300fa$LR•IPV4 #EXTINF:-1 tvg-id="龙华偶像" tvg-name="龙华偶像" group-title="港澳台",龙华偶像 @@ -6594,33 +6574,33 @@ p3p://167.114.175.6:55331/663e9212000a54b4285005cd59217563$LR•IPV4 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN http://210.210.155.37/dr9445/h/h21/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路2』 +https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路3』 +p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路4』 +p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路5』 +http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路6』 +https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="華視" tvg-name="華視" group-title="港澳台",華視 http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路2』 +https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路3』 +http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路4』 +http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路5』 +https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路6』 +https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路7』 +http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路8』 +https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 @@ -6634,99 +6614,99 @@ https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX -https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX -p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 +https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路1』 +http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路2』 +https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路3』 +https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•13『线路1』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•13『线路1』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://aes.m3u8simplu.workers.dev/nickjr/index.m3u8$LR•IPV4•13『线路2』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•13『线路3』 +https://aes.m3u8simplu.workers.dev/nickjr/index.m3u8$LR•IPV4•13『线路3』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•13『线路4』 +https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•13『线路5』 +http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•13『线路6』 +https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•13『线路7』 +https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•13『线路8』 +https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•13『线路9』 +https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•13『线路10』 +http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•13『线路11』 +https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•13『线路12』 +https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•13『线路13』 +http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://213.91.179.28:8000/play/a056$LR•IPV4•29『线路1』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•29『线路1』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•29『线路2』 +http://213.91.179.28:8000/play/a056$LR•IPV4•29『线路2』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•29『线路3』 +https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•29『线路3』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•29『线路4』 +http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•29『线路4』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://193.239.186.231/NICK/index.m3u8$LR•IPV4•29『线路5』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•29『线路5』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://aes.m3u8simplu.workers.dev/nickelodeon/index.m3u8$LR•IPV4•29『线路6』 +http://193.239.186.231/NICK/index.m3u8$LR•IPV4•29『线路6』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://stream.mcquack.net/443/index.m3u8$LR•IPV4•29『线路7』 +https://aes.m3u8simplu.workers.dev/nickelodeon/index.m3u8$LR•IPV4•29『线路7』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://tvsen7.aynascope.net/nicklodean/index.m3u8$LR•IPV4•29『线路8』 +http://stream.mcquack.net/443/index.m3u8$LR•IPV4•29『线路8』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•29『线路9』 +http://tvsen7.aynascope.net/nicklodean/index.m3u8$LR•IPV4•29『线路9』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•29『线路10』 +http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•29『线路10』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•29『线路11』 +http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•29『线路11』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•29『线路12』 +https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•29『线路12』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•29『线路13』 +https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•29『线路13』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•29『线路14』 +https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•29『线路14』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•29『线路15』 +https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•29『线路15』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://46.149.191.217:9011/play/a018$LR•IPV4•29『线路16』 +https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•29『线路16』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•29『线路17』 +http://46.149.191.217:9011/play/a018$LR•IPV4•29『线路17』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•29『线路18』 +http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•29『线路18』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•29『线路19』 +http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•29『线路19』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•29『线路20』 +https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•29『线路20』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•29『线路21』 +https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•29『线路21』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•29『线路22』 +https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•29『线路22』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•29『线路23』 +https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•29『线路23』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•29『线路24』 +https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•29『线路24』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•29『线路25』 +https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•29『线路25』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•29『线路26』 +http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•29『线路26』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•29『线路27』 +https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•29『线路27』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•29『线路28』 +https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•29『线路28』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•29『线路29』 +https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•29『线路29』 #EXTINF:-1 tvg-id="Thrill" tvg-name="Thrill" group-title="港澳台",Thrill https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4 #EXTINF:-1 tvg-id="ZooMoo" tvg-name="ZooMoo" group-title="港澳台",ZooMoo @@ -6774,17 +6754,17 @@ p3p://167.114.175.6:55331/64c3653f0007f6812c7970122ff43531$LR•IPV4•2『线 #EXTINF:-1 tvg-id="年代新闻" tvg-name="年代新闻" group-title="港澳台",年代新闻 p3p://167.114.175.6:55331/5fe09fec000ac0127462c4ac6b1f16a3$LR•IPV4 #EXTINF:-1 tvg-id="人间卫视" tvg-name="人间卫视" group-title="港澳台",人间卫视 -http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u$LR•IPV4•3『线路1』 +http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="人间卫视" tvg-name="人间卫视" group-title="港澳台",人间卫视 -http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u8$LR•IPV4•3『线路2』 +https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/chunklist_w511254805.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="人间卫视" tvg-name="人间卫视" group-title="港澳台",人间卫视 -https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/chunklist_w511254805.m3u8$LR•IPV4•3『线路3』 +http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="三立戏剧" tvg-name="三立戏剧" group-title="港澳台",三立戏剧 http://61.221.215.25:8800/hls/41/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="凤凰卫视" tvg-name="凤凰卫视" group-title="港澳台",凤凰卫视 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="凤凰卫视" tvg-name="凤凰卫视" group-title="港澳台",凤凰卫视 -p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Viutv" tvg-name="Viutv" group-title="港澳台",Viutv http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4 #EXTINF:-1 tvg-id="Now剧集" tvg-name="Now剧集" group-title="港澳台",Now剧集 @@ -6872,67 +6852,67 @@ http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8$LR•IPV4•3『线路 #EXTINF:-1 tvg-id="东森超视" tvg-name="东森超视" group-title="港澳台",东森超视 rtmp://f13h.mine.nu/sat/tv331$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="ROCK Action" tvg-name="ROCK Action" group-title="港澳台",ROCK Action -http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="ROCK Action" tvg-name="ROCK Action" group-title="港澳台",ROCK Action -p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路2』 +http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://r.jdshipin.com/Nr5jq$LR•IPV4•4『线路1』 +http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•4『线路2』 +p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus -p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线路3』 +p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus -p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路4』 +http://r.jdshipin.com/ndGgS$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•25『线路1』 +p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路2』 +p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•25『线路3』 +http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路4』 +http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路5』 +http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路6』 +http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://aes.m3u8simplu.workers.dev/axnblack/index.m3u8$LR•IPV4•25『线路7』 +http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路8』 +http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://85.11.144.9:4222/AXN$LR•IPV4•25『线路9』 +https://aes.m3u8simplu.workers.dev/axnblack/index.m3u8$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路10』 +http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路10』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://aes.m3u8simplu.workers.dev/axn/index.m3u8$LR•IPV4•25『线路11』 +http://85.11.144.9:4222/AXN$LR•IPV4•25『线路11』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•25『线路12』 +http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路12』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•25『线路13』 +https://aes.m3u8simplu.workers.dev/axn/index.m3u8$LR•IPV4•25『线路13』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•25『线路14』 +http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•25『线路14』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路15』 +http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•25『线路15』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路16』 +http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•25『线路16』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路17』 +http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路17』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://aes.m3u8simplu.workers.dev/axnspin/index.m3u8$LR•IPV4•25『线路18』 +http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路18』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://aes.m3u8simplu.workers.dev/axnwhite/index.m3u8$LR•IPV4•25『线路19』 +https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路19』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路20』 +https://aes.m3u8simplu.workers.dev/axnspin/index.m3u8$LR•IPV4•25『线路20』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路21』 +https://aes.m3u8simplu.workers.dev/axnwhite/index.m3u8$LR•IPV4•25『线路21』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路22』 +http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路22』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•25『线路23』 +http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路23』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路24』 +http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路25』 +http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-id="娱乐新闻" tvg-name="娱乐新闻" group-title="港澳台",娱乐新闻 https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="澳门卫视" tvg-name="澳门卫视" group-title="港澳台",澳门卫视 @@ -6962,79 +6942,79 @@ https://live.streamingfast.net/osmflivech1.m3u8$LR•IPV4•39『线路1』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good https://live.streamingfast.net/osmflivech2.m3u8$LR•IPV4•39『线路2』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•39『线路3』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•39『线路3』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•39『线路4』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•39『线路4』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•39『线路5』 +p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•39『线路5』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•39『线路6』 +https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•39『线路6』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•39『线路7』 +http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•39『线路7』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•39『线路8』 +https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•39『线路8』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•39『线路9』 +https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•39『线路9』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•39『线路10』 +https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•39『线路10』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•39『线路11』 +https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•39『线路11』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•39『线路12』 +https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•39『线路12』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•39『线路13』 +https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•39『线路13』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•39『线路14』 +https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•39『线路14』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•39『线路15』 +https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•39『线路15』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•39『线路16』 +https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•39『线路16』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•39『线路17』 +https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•39『线路17』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•39『线路18』 +https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•39『线路18』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•39『线路19』 +https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•39『线路19』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•39『线路20』 +https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•39『线路20』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•39『线路21』 +https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•39『线路21』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•39『线路22』 +https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•39『线路22』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•39『线路23』 +https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•39『线路23』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•39『线路24』 +https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•39『线路24』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•39『线路25』 +https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•39『线路25』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•39『线路26』 +https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•39『线路26』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•39『线路27』 +https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•39『线路27』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•39『线路28』 +https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•39『线路28』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•39『线路29』 +https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•39『线路29』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•39『线路30』 +https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•39『线路30』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•39『线路31』 +https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•39『线路31』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•39『线路32』 +https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•39『线路32』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•39『线路33』 +https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•39『线路33』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•39『线路34』 +https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•39『线路34』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -http://stream.mcquack.net/47/index.m3u8$LR•IPV4•39『线路35』 +https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•39『线路35』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•39『线路36』 +https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•39『线路36』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•39『线路37』 +https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•39『线路37』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•39『线路38』 +http://stream.mcquack.net/47/index.m3u8$LR•IPV4•39『线路38』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•39『线路39』 +https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•39『线路39』 #EXTINF:-1 tvg-id="Beautiful Life TV" tvg-name="Beautiful Life TV" group-title="港澳台",Beautiful Life TV https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Supreme Master TV" tvg-name="Supreme Master TV" group-title="港澳台",Supreme Master TV @@ -7116,11 +7096,9 @@ https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=GB17000088V&channel_i #EXTINF:-1 tvg-id="KPop" tvg-name="KPop" group-title="港澳台",KPop https://lotus.stingray.com/manifest/ose-317ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 +p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路2』 -#EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路3』 +https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="MOMOTV" tvg-name="MOMOTV" group-title="港澳台",MOMOTV rtmp://f13h.mine.nu/sat/tv761$LR•IPV4 #EXTINF:-1 tvg-id="大爱1" tvg-name="大爱1" group-title="港澳台",大爱1 @@ -7192,17 +7170,17 @@ https://d198ro05q94rc4.cloudfront.net/XITE_Rock_On.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FIGHT SPORTS" tvg-name="FIGHT SPORTS" group-title="港澳台",FIGHT SPORTS p3p://167.114.175.6:55331/65a4480e000eb9449aeb1d5a33663b73$LR•IPV4 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•6『线路1』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路2』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路3』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路4』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路5』 +https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路6』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="Sukan" tvg-name="Sukan" group-title="港澳台",Sukan https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 #EXTINF:-1 tvg-id="TV9" tvg-name="TV9" group-title="港澳台",TV9 @@ -7232,209 +7210,209 @@ https://vs-hls-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_ch #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•98『线路2』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路3』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•98『线路3』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路4』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•98『线路4』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路5』 +p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•98『线路5』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•98『线路6』 +p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•98『线路6』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路7』 +http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•98『线路7』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路8』 +https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•98『线路8』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路9』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路9』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•98『线路10』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路10』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路11』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路11』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路12』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•98『线路12』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路13』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路13』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路14』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路14』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路15』 +https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路15』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路16』 +http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•98『线路16』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路17』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路17』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路18』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路18』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•98『线路19』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路19』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路20』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路20』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路21』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路21』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路22』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路22』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路23』 +https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路23』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路24』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路24』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•98『线路25』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•98『线路25』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路26』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路26』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路27』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路27』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•98『线路28』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路28』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路29』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路29』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路30』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路30』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路31』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•98『线路31』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路32』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路32』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•98『线路33』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路33』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路34』 +http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•98『线路34』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•98『线路35』 +https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路35』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://gpuserver3.tier1streams.com/BBC_WORLD_NEWS/index.m3u8$LR•IPV4•98『线路36』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路36』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://45.153.96.44:8001$LR•IPV4•98『线路37』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路37』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路38』 +https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路38』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•98『线路39』 +https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•98『线路39』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://gpuserver3.tier1streams.com/BBC_AMERICA/index.m3u8$LR•IPV4•98『线路40』 +https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路40』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://91.146.94.234:10001/play/a087$LR•IPV4•98『线路41』 +http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•98『线路41』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路42』 +https://gpuserver3.tier1streams.com/BBC_WORLD_NEWS/index.m3u8$LR•IPV4•98『线路42』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•98『线路43』 +http://45.153.96.44:8001$LR•IPV4•98『线路43』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路44』 +https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路44』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•98『线路45』 +http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•98『线路45』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路46』 +https://gpuserver3.tier1streams.com/BBC_AMERICA/index.m3u8$LR•IPV4•98『线路46』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路47』 +http://91.146.94.234:10001/play/a087$LR•IPV4•98『线路47』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路48』 +https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路48』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路49』 +https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•98『线路49』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路50』 +https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路50』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路51』 +https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•98『线路51』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路52』 +https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路52』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路53』 +https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路53』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路54』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路54』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路55』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路55』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路56』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路56』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路57』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路57』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路58』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路58』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路59』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路59』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路60』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路60』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路61』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路61』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路62』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路62』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路63』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路63』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路64』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路64』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路65』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路65』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路66』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路66』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路67』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路67』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路68』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路68』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路69』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路69』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路70』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路70』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•98『线路71』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路71』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•98『线路72』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路72』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•98『线路73』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路73』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路74』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路74』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路75』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路75』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路76』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路76』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路77』 +https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•98『线路77』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路78』 +https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•98『线路78』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路79』 +https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•98『线路79』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•98『线路80』 +https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路80』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路81』 +https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路81』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路82』 +https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路82』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•98『线路83』 +https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路83』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•98『线路84』 +https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路84』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•98『线路85』 +https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路85』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•98『线路86』 +https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•98『线路86』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://aes.m3u8simplu.workers.dev/bbcearth/index.m3u8$LR•IPV4•98『线路87』 +https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路87』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路88』 +https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路88』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路89』 +https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•98『线路89』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路90』 +https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•98『线路90』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•98『线路91』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•98『线路91』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•98『线路92』 +http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•98『线路92』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•98『线路93』 +https://aes.m3u8simplu.workers.dev/bbcearth/index.m3u8$LR•IPV4•98『线路93』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•98『线路94』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路94』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•98『线路95』 +https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路95』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•98『线路96』 +https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路96』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•98『线路97』 +http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•98『线路97』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•98『线路98』 +http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•98『线路98』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路2』 +http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路3』 +https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路4』 +https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 +https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路6』 +https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN https://turnerlive.warnermediacdn.com/hls/live/586495/cnngo/cnn_slate/VIDEO_0_3564000.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN @@ -7536,55 +7514,55 @@ https://86fdc85a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctZ2 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals https://bloomberg.com/media-manifest/streams/qt.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="Fashion TV" tvg-name="Fashion TV" group-title="港澳台",Fashion TV -https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路1』 +http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Fashion TV" tvg-name="Fashion TV" group-title="港澳台",Fashion TV -http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路2』 +https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•23『线路1』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•23『线路2』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•23『线路3』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•23『线路4』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•23『线路5』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•23『线路6』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•23『线路7』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•23『线路8』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•23『线路9』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•23『线路10』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•23『线路11』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•23『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•23『线路13』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•23『线路14』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•23『线路15』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•23『线路16』 +https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•23『线路17』 +http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•23『线路18』 +https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•23『线路19』 +https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•23『线路20』 +https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276918$LR•IPV4•23『线路21』 +https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276924$LR•IPV4•23『线路22』 +https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276906$LR•IPV4•23『线路23』 +https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="KBS world" tvg-name="KBS world" group-title="港澳台",KBS world http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ @@ -7608,19 +7586,19 @@ https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路2』 +https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路3』 +https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路4』 +https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路5』 +https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路6』 +https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路7』 +http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 +http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="CBN News" tvg-name="CBN News" group-title="港澳台",CBN News https://fastly.live.brightcove.com/6380396819112/us-east-1/734546207001/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJob3N0IjoiczFpM3ZpLmVncmVzcy50N2M3emwiLCJhY2NvdW50X2lkIjoiNzM0NTQ2MjA3MDAxIiwiZWhuIjoiZmFzdGx5LmxpdmUuYnJpZ2h0Y292ZS5jb20iLCJpc3MiOiJibGl2ZS1wbGF5YmFjay1zb3VyY2UtYXBpIiwic3ViIjoicGF0aG1hcHRva2VuIiwiYXVkIjpbIjczNDU0NjIwNzAwMSJdLCJqdGkiOiI2MzgwMzk2ODE5MTEyIn0.GDYp4IWtzwPkupEWeeOavnioVknO-Ev3UGlHvM1rE6I/playlist-hls.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="GB News" tvg-name="GB News" group-title="港澳台",GB News @@ -7642,19 +7620,19 @@ https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playl #EXTINF:-1 tvg-id="ION" tvg-name="ION" group-title="港澳台",ION https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路1』 +p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路2』 +https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路4』 +https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路5』 +https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路6』 +https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路7』 +http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="Fight Network" tvg-name="Fight Network" group-title="港澳台",Fight Network https://d12a2vxqkkh1bo.cloudfront.net/hls/main.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Wild Earth" tvg-name="Wild Earth" group-title="港澳台",Wild Earth @@ -7754,69 +7732,69 @@ https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="香港国际财经" tvg-name="香港国际财经" group-title="港澳台",香港国际财经 p3p://167.114.175.6:55331/64838620000cd8ed32fb0d6a414411f7$LR•IPV4 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路1』 +https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路2』 +https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路3』 +https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路4』 +https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路5』 +http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路6』 +https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路7』 +http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路8』 +https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路9』 +https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路10』 +https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路11』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路12』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路13』 +https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路14』 +https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路15』 +https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路16』 +https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路1』 +http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路2』 +https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路3』 +https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://gpuserver3.tier1streams.com/CNBC/index.m3u8$LR•IPV4•16『线路4』 +https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路5』 +https://gpuserver3.tier1streams.com/CNBC/index.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路6』 +https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路7』 +https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路9』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路10』 +https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路12』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路13』 +http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路14』 +https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路15』 +https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路16』 +https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="TV8" tvg-name="TV8" group-title="港澳台",TV8 https://1740288887.rsc.cdn77.org/1740288887/index.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="TV8" tvg-name="TV8" group-title="港澳台",TV8 @@ -7888,33 +7866,33 @@ p3p://167.114.175.6:55331/643a6b71000a47fb156c2a403510409b$LR•IPV4•2『线 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS https://d4ybyqrhce41r.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-xumo-linear-nbcu-hlsv3/master.m3u8?ads.channelId=99991626$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路2』 +https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路3』 +https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路4』 +https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路5』 +https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路6』 +https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路7』 +https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路8』 +https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路9』 +https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路10』 +https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路11』 +https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•15『线路12』 +https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•15『线路13』 +https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•15『线路14』 +https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="ABC NEWS" tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•15『线路15』 +https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="大爱" tvg-name="大爱" group-title="YouTube",大爱 https://pulltv3.wanfudaluye.com/live/tv3.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="INDIA TODAY" tvg-name="INDIA TODAY" group-title="YouTube",INDIA TODAY diff --git a/cluntop_tvbox/lib/iptv.txt b/cluntop_tvbox/lib/iptv.txt index 3802c8cd..f7e27294 100755 --- a/cluntop_tvbox/lib/iptv.txt +++ b/cluntop_tvbox/lib/iptv.txt @@ -1,15 +1,15 @@ 4K,#genre# -东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 -东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 -湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 -湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 -湖南卫视4K,http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路3』 +东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路1』 +东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路2』 +湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路1』 +湖南卫视4K,http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路2』 +湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路3』 浙江卫视4K,http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•2『线路1』 浙江卫视4K,http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•2『线路2』 -江苏卫视4K,http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路1』 -江苏卫视4K,http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路2』 -江苏卫视4K,http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路3』 +江苏卫视4K,http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路1』 +江苏卫视4K,http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路2』 +江苏卫视4K,http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路3』 广东卫视4K,http://vvip.lqcc.xyz:8092/stream/channelid/1248069700?auth=PrI5LXwb51dYilt30TvNYVVAgd4A&profile=pass$LR•IPV4•7『线路1』 广东卫视4K,http://ikuai.haleeyo.cn:9003/udp/239.77.0.27:5146$LR•IPV4•7『线路2』 广东卫视4K,https://live.264788.xyz/channel/guangdongweishi4k?streamid=33aeafbb59f2bcb1877c3a8229c0135b&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路3』 @@ -17,12 +17,12 @@ 广东卫视4K,https://live.264788.xyz/channel/guangdongweishi4k?streamid=0508c0316aedc9152adcf323fa95c2c0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路5』 广东卫视4K,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001540/index.m3u8?streamid=33aeafbb59f2bcb1877c3a8229c0135b&streamkey=0AGMO6LiBIxyH4UUBGZSecN0VLptakvTRcCBdKPsgZ5LvjIJtZ6lVmakn2xtYKNlvaZmadVnIW0Ur7nROOy5lbmQHqDT5XsDIAlz3aket1LK13kwaGDOHJf9U7zQSS6b&token=1775753804-a378e51446e90f3d-0-831fa09b2b3eafcffbd9550a9e04cf4d$LR•IPV4•7『线路6』 广东卫视4K,http://101.35.240.114:88/live.php?id=广东卫视4K$LR•IPV4•7『线路7』 -深圳卫视4K,http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路1』 -深圳卫视4K,http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路2』 -深圳卫视4K,https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路3』 -深圳卫视4K,http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路4』 -深圳卫视4K,http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路5』 -深圳卫视4K,http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路6』 +深圳卫视4K,http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路1』 +深圳卫视4K,https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路2』 +深圳卫视4K,http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路3』 +深圳卫视4K,http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路4』 +深圳卫视4K,http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路5』 +深圳卫视4K,http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路6』 深圳卫视4K,https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de76cdccd646&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•8『线路7』 深圳卫视4K,http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 南国都市4K,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 @@ -31,9 +31,9 @@ 北京卫视4K,http://8.138.7.223/tv/btime.php?id=bjws4k$LR•IPV4•5『线路3』 北京卫视4K,http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•5『线路4』 北京卫视4K,http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•5『线路5』 -CCTV4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•6『线路1』 -CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路2』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8f3fc8c76002b5768090d2d68f75b9bb&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 +CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路1』 +CCTV4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•6『线路2』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-fec2a87194a11509dcf09defebca4ed8&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•6『线路4』 CCTV4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路5』 CCTV4K,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路6』 @@ -46,212 +46,209 @@ CCTV8K,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•3『线路2』 CCTV8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•3『线路3』 央视,#genre# -CCTV1,http://222.223.41.27:8888/hls/1/index.m3u8$LR•IPV4•11『线路1』 -CCTV1,http://111.8.224.6:9999/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路2』 -CCTV1,http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•11『线路3』 -CCTV1,http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•11『线路4』 -CCTV1,http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•11『线路5』 -CCTV1,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•11『线路6』 -CCTV1,http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•11『线路7』 -CCTV1,http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•11『线路8』 -CCTV1,http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路9』 -CCTV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•11『线路10』 -CCTV1,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•11『线路11』 -CCTV2,http://101.66.199.102:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 -CCTV2,http://111.8.224.6:9999/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路2』 -CCTV2,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路3』 -CCTV2,http://183.129.255.66:8480/hls/2/index.m3u8$LR•IPV4•14『线路4』 -CCTV2,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•14『线路5』 -CCTV2,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•14『线路6』 -CCTV2,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•14『线路7』 -CCTV2,http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•14『线路8』 -CCTV2,http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•14『线路9』 -CCTV2,http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路10』 +CCTV1,http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV1,http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•12『线路2』 +CCTV1,http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 +CCTV1,http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•12『线路4』 +CCTV1,http://222.223.41.27:8888/hls/1/index.m3u8$LR•IPV4•12『线路5』 +CCTV1,http://111.8.224.6:9999/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +CCTV1,http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•12『线路7』 +CCTV1,http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•12『线路8』 +CCTV1,http://120.198.95.220:9901/tsfile/live/1015_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•12『线路9』 +CCTV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•12『线路10』 +CCTV1,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•12『线路11』 +CCTV1,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•12『线路12』 +CCTV2,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•14『线路1』 +CCTV2,http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•14『线路2』 +CCTV2,http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 +CCTV2,http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•14『线路4』 +CCTV2,http://101.66.199.102:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 +CCTV2,http://111.8.224.6:9999/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 +CCTV2,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路7』 +CCTV2,http://183.129.255.66:8480/hls/2/index.m3u8$LR•IPV4•14『线路8』 +CCTV2,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•14『线路9』 +CCTV2,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•14『线路10』 CCTV2,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•14『线路11』 CCTV2,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•14『线路12』 CCTV2,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv2hd$LR•IPV4•14『线路13』 CCTV2,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•14『线路14』 -CCTV3,http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•12『线路1』 -CCTV3,http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 -CCTV3,http://183.129.255.66:8480/hls/3/index.m3u8$LR•IPV4•12『线路3』 -CCTV3,http://118.193.115.2:9901/tsfile/live/0003_1.m3u8?key=txiptv$LR•IPV4•12『线路4』 -CCTV3,http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•12『线路5』 -CCTV3,http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•12『线路6』 -CCTV3,http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•12『线路7』 -CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•12『线路8』 -CCTV3,http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路9』 -CCTV3,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•12『线路10』 +CCTV3,http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•12『线路2』 +CCTV3,http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 +CCTV3,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•12『线路4』 +CCTV3,http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•12『线路5』 +CCTV3,http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•12『线路6』 +CCTV3,http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 +CCTV3,http://183.129.255.66:8480/hls/3/index.m3u8$LR•IPV4•12『线路8』 +CCTV3,http://118.193.115.2:9901/tsfile/live/0003_1.m3u8?key=txiptv$LR•IPV4•12『线路9』 +CCTV3,http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•12『线路10』 CCTV3,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•12『线路11』 CCTV3,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•12『线路12』 -CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•18『线路1』 -CCTV4,http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路2』 -CCTV4,http://183.129.255.66:8480/hls/4/index.m3u8$LR•IPV4•18『线路3』 -CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•18『线路4』 -CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•18『线路5』 -CCTV4,http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•18『线路6』 -CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•18『线路7』 -CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 -CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•18『线路9』 -CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•18『线路10』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6ed114801b644526e56bc651d7ab5b8b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•18『线路11』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•18『线路12』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784768400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-7a2de08a3a510255b2be53fbd6929544&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•18『线路13』 -CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•18『线路14』 -CCTV4,http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•18『线路15』 -CCTV4,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•18『线路16』 -CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•18『线路17』 -CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•18『线路18』 -CCTV5,http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路1』 -CCTV5,http://183.129.255.66:8480/hls/5/index.m3u8$LR•IPV4•14『线路2』 -CCTV5,http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路3』 +CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•17『线路1』 +CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•17『线路2』 +CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路3』 +CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•17『线路4』 +CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•17『线路5』 +CCTV4,http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•17『线路6』 +CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•17『线路7』 +CCTV4,http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +CCTV4,http://183.129.255.66:8480/hls/4/index.m3u8$LR•IPV4•17『线路9』 +CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•17『线路10』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-98245a006136ecdf04e0d3c737dd6086&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•17『线路11』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•17『线路12』 +CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•17『线路13』 +CCTV4,http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•17『线路14』 +CCTV4,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•17『线路15』 +CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•17『线路16』 +CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•17『线路17』 +CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•14『线路1』 +CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•14『线路2』 +CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•14『线路4』 -CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•14『线路5』 -CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•14『线路6』 -CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 +CCTV5,http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路5』 +CCTV5,http://183.129.255.66:8480/hls/5/index.m3u8$LR•IPV4•14『线路6』 +CCTV5,http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路7』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•14『线路8』 CCTV5,http://38.75.136.137:98/gslb/dsdqpub/cctv5hd.m3u8?auth=testpub$LR•IPV4•14『线路9』 -CCTV5,http://111.8.224.6:9999/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路10』 -CCTV5,http://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路11』 -CCTV5,http://cssbyd.imwork.net:8082/hls/6/index.m3u8$LR•IPV4•14『线路12』 -CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•14『线路13』 +CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•14『线路10』 +CCTV5,http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•14『线路11』 +CCTV5,http://111.8.224.6:9999/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路12』 +CCTV5,http://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路13』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?$LR•IPV6•14『线路14』 -CCTV6,http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•12『线路1』 -CCTV6,http://118.193.115.2:9901/tsfile/live/0006_1.m3u8?key=txiptv$LR•IPV4•12『线路2』 +CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•12『线路2』 CCTV6,http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 -CCTV6,http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•12『线路4』 +CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•12『线路4』 CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•12『线路5』 -CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•12『线路6』 -CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•12『线路7』 -CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•12『线路8』 +CCTV6,http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•12『线路6』 +CCTV6,http://118.193.115.2:9901/tsfile/live/0006_1.m3u8?key=txiptv$LR•IPV4•12『线路7』 +CCTV6,http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•12『线路8』 CCTV6,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•12『线路9』 CCTV6,http://198.204.228.26/live/cctv6hd.m3u8$LR•IPV4•12『线路10』 CCTV6,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•12『线路11』 CCTV6,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•12『线路12』 -CCTV7,http://112.123.243.37:50085/tsfile/live/0008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路1』 -CCTV7,http://101.66.194.177:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 -CCTV7,http://222.223.41.27:8888/hls/7/index.m3u8$LR•IPV4•12『线路3』 -CCTV7,http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•12『线路4』 +CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•12『线路2』 +CCTV7,http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 +CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•12『线路4』 CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•12『线路5』 -CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•12『线路6』 -CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•12『线路7』 -CCTV7,http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 -CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•12『线路9』 +CCTV7,http://112.123.243.37:50085/tsfile/live/0008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 +CCTV7,http://101.66.194.177:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路7』 +CCTV7,http://222.223.41.27:8888/hls/7/index.m3u8$LR•IPV4•12『线路8』 +CCTV7,http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•12『线路9』 CCTV7,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•12『线路10』 CCTV7,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv7hd$LR•IPV4•12『线路11』 CCTV7,http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•12『线路12』 -CCTV8,http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•11『线路1』 -CCTV8,http://183.129.255.66:8480/hls/9/index.m3u8$LR•IPV4•11『线路2』 -CCTV8,http://38.75.136.137:98/gslb/dsdqpub/cctv8hd.m3u8?auth=testpub$LR•IPV4•11『线路3』 -CCTV8,http://124.228.160.210:9901/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 -CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•11『线路5』 -CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•11『线路6』 -CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•11『线路7』 -CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路8』 +CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•11『线路1』 +CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•11『线路2』 +CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路3』 +CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•11『线路4』 +CCTV8,http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•11『线路5』 +CCTV8,http://183.129.255.66:8480/hls/9/index.m3u8$LR•IPV4•11『线路6』 +CCTV8,http://38.75.136.137:98/gslb/dsdqpub/cctv8hd.m3u8?auth=testpub$LR•IPV4•11『线路7』 +CCTV8,http://124.228.160.210:9901/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路8』 CCTV8,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•11『线路9』 CCTV8,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•11『线路10』 CCTV8,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•11『线路11』 -CCTV9,http://112.123.243.37:50085/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 -CCTV9,http://183.129.255.66:8480/hls/10/index.m3u8$LR•IPV4•14『线路2』 -CCTV9,http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•14『线路3』 -CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•14『线路4』 -CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•14『线路5』 -CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 -CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•14『线路7』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=21a9fbe86aa9a66410c55abf57faa942$LR•IPV4•14『线路8』 -CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=073d230277253add6243b808de436f8c$LR•IPV4•14『线路9』 -CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•14『线路10』 -CCTV9,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•14『线路11』 -CCTV9,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•14『线路12』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•14『线路13』 -CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•14『线路14』 -CCTV10,http://101.66.198.105:9901/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 -CCTV10,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•14『线路2』 -CCTV10,http://111.8.224.6:9999/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 -CCTV10,http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•14『线路4』 -CCTV10,http://183.223.157.123:85/tsfile/live/0010_1.m3u8?key=txiptv$LR•IPV4•14『线路5』 -CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•14『线路6』 -CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•14『线路7』 -CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•14『线路8』 -CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 -CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•14『线路10』 +CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•12『线路2』 +CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 +CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•12『线路4』 +CCTV9,http://112.123.243.37:50085/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路5』 +CCTV9,http://183.129.255.66:8480/hls/10/index.m3u8$LR•IPV4•12『线路6』 +CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=12d4950b0bc42e870ce7e582a7eb5860$LR•IPV4•12『线路7』 +CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•12『线路8』 +CCTV9,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•12『线路9』 +CCTV9,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•12『线路10』 +CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•12『线路11』 +CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•12『线路12』 +CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•14『线路1』 +CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•14『线路2』 +CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 +CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•14『线路4』 +CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•14『线路5』 +CCTV10,http://101.66.198.105:9901/tsfile/live/0010_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路6』 +CCTV10,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•14『线路7』 +CCTV10,http://111.8.224.6:9999/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路8』 +CCTV10,http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•14『线路9』 +CCTV10,http://183.223.157.123:85/tsfile/live/0010_1.m3u8?key=txiptv$LR•IPV4•14『线路10』 CCTV10,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•14『线路11』 CCTV10,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•14『线路12』 CCTV10,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•14『线路13』 CCTV10,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•14『线路14』 -CCTV11,http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路1』 -CCTV11,http://111.8.224.6:9999/tsfile/live/1041_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 -CCTV11,http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•12『线路3』 -CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•12『线路4』 -CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•12『线路5』 -CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•12『线路6』 -CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 -CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•12『线路8』 +CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•12『线路3』 +CCTV11,http://120.202.94.181:9446/tsfile/live/0011_1.m3u8?key=txiptv$LR•IPV4•12『线路4』 +CCTV11,http://112.123.243.37:50085/tsfile/live/0012_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路5』 +CCTV11,http://111.8.224.6:9999/tsfile/live/1041_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +CCTV11,http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•12『线路7』 +CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•12『线路8』 CCTV11,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•12『线路9』 CCTV11,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•12『线路10』 CCTV11,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•12『线路11』 CCTV11,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•12『线路12』 -CCTV12,http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路1』 -CCTV12,http://222.223.41.27:8888/hls/12/index.m3u8$LR•IPV4•9『线路2』 -CCTV12,http://183.129.255.66:8480/hls/13/index.m3u8$LR•IPV4•9『线路3』 -CCTV12,http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•9『线路4』 -CCTV12,http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•9『线路5』 -CCTV12,http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路6』 -CCTV12,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•9『线路7』 -CCTV12,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•9『线路8』 -CCTV12,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•9『线路9』 -CCTV13,http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•10『线路1』 -CCTV13,http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•10『线路2』 -CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•10『线路3』 -CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•10『线路4』 -CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•10『线路6』 +CCTV12,http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•10『线路1』 +CCTV12,http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•10『线路2』 +CCTV12,http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 +CCTV12,http://112.27.235.94:8000/hls/13/index.m3u8$LR•IPV4•10『线路4』 +CCTV12,http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 +CCTV12,http://222.223.41.27:8888/hls/12/index.m3u8$LR•IPV4•10『线路6』 +CCTV12,http://183.129.255.66:8480/hls/13/index.m3u8$LR•IPV4•10『线路7』 +CCTV12,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•10『线路8』 +CCTV12,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•10『线路9』 +CCTV12,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•10『线路10』 +CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•10『线路1』 +CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 +CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•10『线路3』 +CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•10『线路4』 +CCTV13,http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•10『线路5』 +CCTV13,http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•10『线路6』 CCTV13,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•10『线路7』 CCTV13,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•10『线路8』 CCTV13,http://go.bkpcp.top/mg/cctv13$LR•IPV4•10『线路9』 CCTV13,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•10『线路10』 -CCTV14,http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路1』 -CCTV14,http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•12『线路2』 +CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•12『线路3』 CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•12『线路4』 -CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•12『线路5』 -CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +CCTV14,http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路5』 +CCTV14,http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•12『线路6』 CCTV14,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•12『线路7』 CCTV14,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•12『线路8』 CCTV14,http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•12『线路9』 CCTV14,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•12『线路10』 CCTV14,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•12『线路11』 CCTV14,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•12『线路12』 -CCTV15,http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•12『线路1』 -CCTV15,http://183.129.255.66:8480/hls/16/index.m3u8$LR•IPV4•12『线路2』 +CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•12『线路1』 +CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 CCTV15,http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•12『线路3』 CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•12『线路4』 -CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•12『线路5』 -CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +CCTV15,http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•12『线路5』 +CCTV15,http://183.129.255.66:8480/hls/16/index.m3u8$LR•IPV4•12『线路6』 CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•12『线路7』 CCTV15,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•12『线路8』 CCTV15,http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•12『线路9』 CCTV15,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•12『线路10』 CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•12『线路11』 CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•12『线路12』 -CCTV16,http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•5『线路1』 -CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•5『线路2』 -CCTV16,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•5『线路3』 -CCTV16,http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•5『线路4』 -CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•5『线路5』 -CCTV17,http://183.129.255.66:8480/hls/18/index.m3u8$LR•IPV4•7『线路1』 -CCTV17,http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•7『线路2』 -CCTV17,http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•7『线路3』 -CCTV17,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•7『线路4』 -CCTV17,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•7『线路5』 -CCTV17,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•7『线路6』 -CCTV17,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•7『线路7』 +CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•4『线路1』 +CCTV16,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•4『线路2』 +CCTV16,http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•4『线路3』 +CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•4『线路4』 +CCTV17,http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•6『线路1』 +CCTV17,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•6『线路2』 +CCTV17,http://183.129.255.66:8480/hls/18/index.m3u8$LR•IPV4•6『线路3』 +CCTV17,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•6『线路4』 +CCTV17,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•6『线路5』 +CCTV17,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•6『线路6』 CCTV第一剧场,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4 CCTV怀旧剧场,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4 CCTV风云剧场,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4 CCTV风云音乐,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4 CCTV兵器科技,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 -CCTV风云足球,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•13『线路1』 -CCTV风云足球,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•13『线路2』 +CCTV风云足球,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•13『线路1』 +CCTV风云足球,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•13『线路2』 CCTV风云足球,http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•13『线路3』 CCTV风云足球,http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_FENGSHANGZQ-CQ$LR•IPV4•13『线路4』 CCTV风云足球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4934&tk=a0c4f6cfaba3$LR•IPV4•13『线路5』 @@ -274,8 +271,8 @@ CCTV央视台球,http://dassby.qqff.top:99/live/高尔夫网球/index.m3u8$LR• CCTV央视台球,http://107.150.60.122/live/ystq.m3u8$LR•IPV4•9『线路9』 CCTV女性时尚,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4 CCTV电视指南,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4 -CCTV世界地理,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•2『线路1』 -CCTV世界地理,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•2『线路2』 +CCTV世界地理,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•2『线路1』 +CCTV世界地理,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•2『线路2』 CCTV卫生健康,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4 CETV1,http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•2『线路1』 CETV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226494/1.m3u8?$LR•IPV6•2『线路2』 @@ -286,21 +283,20 @@ CETV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/22 CGTN英语,https://0472.org/hls/cgtn.m3u8$LR•IPV4 CGTN记录,https://0472.org/hls/cgtnd.m3u8$LR•IPV4•2『线路1』 CGTN记录,https://english-livetx.cgtn.com/hls/yypdjlctzb_hd.m3u8$LR•IPV4•2『线路2』 -CGTN俄语,https://0472.org/hls/cgtne.m3u8$LR•IPV4•2『线路1』 -CGTN俄语,p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•2『线路2』 +CGTN俄语,p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•2『线路1』 +CGTN俄语,https://0472.org/hls/cgtne.m3u8$LR•IPV4•2『线路2』 CGTN法语,https://0472.org/hls/cgtnf.m3u8$LR•IPV4 CGTN西语,https://0472.org/hls/cgtnx.m3u8$LR•IPV4 CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 -直播中国,https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001$LR•IPV4•2『线路1』 -直播中国,https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8$LR•IPV4•2『线路2』 +直播中国,https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001$LR•IPV4 卫视,#genre# -重温经典,http://112.27.235.94:8000/hls/50/index.m3u8$LR•IPV4•6『线路1』 -重温经典,http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•6『线路2』 -重温经典,http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•6『线路3』 -重温经典,http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•6『线路4』 -重温经典,http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•6『线路5』 -重温经典,p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•6『线路6』 +重温经典,http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•6『线路1』 +重温经典,http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•6『线路2』 +重温经典,http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•6『线路3』 +重温经典,http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•6『线路4』 +重温经典,p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•6『线路5』 +重温经典,http://112.27.235.94:8000/hls/50/index.m3u8$LR•IPV4•6『线路6』 香港卫视,https://hkstv.tv/api/m3u8-proxy?url=http%3A%2F%2Fwebcast.hkstv.tv%2Flivestream%2Fmutfysrq%2Fplaylist.m3u8$LR•IPV4 星空卫视,http://114.105.187.77:9901/tsfile/live/0117_1.m3u8$LR•IPV4•7『线路1』 星空卫视,http://114.105.187.47:9901/tsfile/live/0117_1.m3u8$LR•IPV4•7『线路2』 @@ -310,523 +306,516 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 星空卫视,http://171.213.140.54:8123/udp/239.93.1.10:2193$LR•IPV4•7『线路6』 星空卫视,https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 湖南卫视,http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路1』 -湖南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路2』 -湖南卫视,http://112.123.243.37:50085/tsfile/live/1002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 -湖南卫视,http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•16『线路4』 -湖南卫视,http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•16『线路5』 -湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路6』 -湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路7』 -湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•16『线路8』 -湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 -湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路10』 -湖南卫视,http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•16『线路11』 -湖南卫视,http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•16『线路12』 -湖南卫视,http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•16『线路13』 -湖南卫视,https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•16『线路14』 -湖南卫视,https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路15』 -湖南卫视,http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路16』 -浙江卫视,http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784123883-f178167128c55cd66b7eca004ccca015-0-69f388bdaa594feb900510d687566182$LR•IPV4•18『线路1』 -浙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 -浙江卫视,http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路3』 -浙江卫视,http://120.198.95.220:9901/tsfile/live/1045_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路4』 -浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•18『线路5』 -浙江卫视,http://111.8.224.6:9999/tsfile/live/1064_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路6』 -浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•18『线路7』 -浙江卫视,http://124.228.160.210:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 -浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•18『线路9』 -浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•18『线路10』 -浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•18『线路11』 -浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•18『线路12』 -浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•18『线路13』 -浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•18『线路14』 -浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•18『线路15』 -浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•18『线路16』 -浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•18『线路17』 -浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 -东方卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -东方卫视,http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路2』 -东方卫视,http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•17『线路3』 -东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路4』 -东方卫视,http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路5』 -东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路6』 -东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路7』 -东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路8』 -东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路9』 -东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路10』 -东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路11』 -东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路12』 -东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•17『线路13』 -东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路14』 -东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路15』 -东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 -东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路17』 -北京卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 -北京卫视,http://101.66.198.105:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路2』 -北京卫视,http://120.198.95.220:9901/tsfile/live/1065_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路3』 -北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•14『线路4』 -北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•14『线路5』 -北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•14『线路6』 -北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•14『线路7』 -北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•14『线路8』 -北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•14『线路9』 -北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•14『线路10』 -北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•14『线路11』 -北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•14『线路12』 -北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•14『线路13』 -北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路14』 -江苏卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226897/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0BmO6uHF7WFoTed__Xr3NQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -江苏卫视,http://112.123.243.37:50085/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 -江苏卫视,http://101.66.198.242:9901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 -江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 -江苏卫视,http://221.226.51.220:50081/newlive/live/hls/18/live.m3u8$LR•IPV4•17『线路5』 -江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•17『线路6』 -江苏卫视,http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•17『线路7』 -江苏卫视,http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•17『线路8』 -江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•17『线路9』 -江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路10』 -江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•17『线路11』 -江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•17『线路12』 -江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•17『线路13』 -江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•17『线路14』 -江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•17『线路15』 -江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•17『线路16』 -江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•17『线路17』 -安徽卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226943/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0QmKQ_slRCwvVVUUfxPVbw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 -安徽卫视,http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•13『线路2』 -安徽卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ahwshd$LR•IPV4•13『线路3』 -安徽卫视,http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路4』 -安徽卫视,http://36.136.38.87:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路5』 -安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•13『线路6』 -安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•13『线路7』 -安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•13『线路8』 -安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•13『线路9』 -安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•13『线路10』 -安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•13『线路11』 -安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•13『线路12』 -安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路13』 -重庆卫视,http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•15『线路1』 -重庆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路2』 -重庆卫视,http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路3』 -重庆卫视,http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 -重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路5』 -重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•15『线路6』 -重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•15『线路7』 -重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•15『线路8』 -重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•15『线路9』 -重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•15『线路10』 -重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•15『线路11』 -重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•15『线路12』 -重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•15『线路13』 -重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•15『线路14』 -重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路15』 -四川卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226995/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EBQiz3wrGrpG0CUSRIJ-7Jg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 -四川卫视,http://101.66.198.105:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路2』 -四川卫视,http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路3』 -四川卫视,http://198.204.228.26/live/scwshd.m3u8$LR•IPV4•14『线路4』 -四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•14『线路5』 -四川卫视,http://112.123.243.37:50085/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路6』 -四川卫视,http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路7』 -四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•14『线路8』 -四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•14『线路9』 -四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•14『线路10』 -四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•14『线路11』 -四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•14『线路12』 -四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•14『线路13』 -四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•14『线路14』 -东南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226991/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQ6F5Mjgs0tJyEArWFL3vQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 -东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•16『线路2』 -东南卫视,http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 -东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•16『线路4』 -东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•16『线路5』 -东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•16『线路6』 -东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路7』 -东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•16『线路8』 -东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•16『线路9』 -东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•16『线路10』 -东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•16『线路11』 -东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•16『线路12』 -东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•16『线路13』 -东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•16『线路14』 -东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•16『线路15』 -东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 -深圳卫视,https://sztv-hls.sztv.com.cn/1SIQj6s/500/q7rdSsQ.m3u8?sign=71764b3a0bcc96b03dea9693d605e020&t=6a579f21$LR•IPV4•18『线路1』 -深圳卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 -深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路3』 -深圳卫视,http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•18『线路4』 -深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•18『线路5』 -深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•18『线路6』 -深圳卫视,http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•18『线路7』 -深圳卫视,http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 -深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•18『线路9』 -深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•18『线路10』 -深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•18『线路11』 -深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•18『线路12』 -深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•18『线路13』 -深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•18『线路14』 -深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•18『线路15』 -深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•18『线路16』 -深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•18『线路18』 +湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路2』 +湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•16『线路3』 +湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路4』 +湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路5』 +湖南卫视,http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•16『线路6』 +湖南卫视,http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•16『线路7』 +湖南卫视,http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•16『线路8』 +湖南卫视,https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•16『线路9』 +湖南卫视,https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路10』 +湖南卫视,http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路11』 +湖南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路12』 +湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路13』 +湖南卫视,http://112.123.243.37:50085/tsfile/live/1002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路14』 +湖南卫视,http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•16『线路15』 +湖南卫视,http://antvlive.ab5c6921.cdnviet.com/antv/playlist.m3u8$LR•IPV4•16『线路16』 +浙江卫视,http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784718132-ebc796d43096e23aad5d56ba638be8c6-0-bb2c2dbcd2b4e115aa53bc84322b8a7f$LR•IPV4•18『线路1』 +浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•18『线路2』 +浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•18『线路3』 +浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•18『线路4』 +浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•18『线路5』 +浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•18『线路6』 +浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•18『线路7』 +浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•18『线路8』 +浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•18『线路9』 +浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•18『线路10』 +浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路11』 +浙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路12』 +浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•18『线路13』 +浙江卫视,http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路14』 +浙江卫视,http://120.198.95.220:9901/tsfile/live/1045_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路15』 +浙江卫视,http://111.8.224.6:9999/tsfile/live/1064_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路16』 +浙江卫视,http://124.228.160.210:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 +浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•18『线路18』 +东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路1』 +东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路2』 +东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路3』 +东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路4』 +东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路5』 +东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路6』 +东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•17『线路7』 +东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路8』 +东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路9』 +东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 +东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路11』 +东方卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路12』 +东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路13』 +东方卫视,http://120.198.95.220:9901/tsfile/live/1047_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路14』 +东方卫视,http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•17『线路15』 +东方卫视,http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路17』 +北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 +北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•14『线路2』 +北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•14『线路3』 +北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•14『线路4』 +北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•14『线路5』 +北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•14『线路6』 +北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•14『线路7』 +北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•14『线路8』 +北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 +北京卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路10』 +北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•14『线路11』 +北京卫视,http://101.66.198.105:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 +北京卫视,http://120.198.95.220:9901/tsfile/live/1065_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路13』 +北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•14『线路14』 +江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•17『线路1』 +江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路2』 +江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•17『线路3』 +江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•17『线路4』 +江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•17『线路5』 +江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•17『线路6』 +江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•17『线路7』 +江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•17『线路8』 +江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•17『线路9』 +江苏卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226897/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0BmO6uHF7WFoTed__Xr3NQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路10』 +江苏卫视,http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•17『线路11』 +江苏卫视,http://112.123.243.37:50085/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路12』 +江苏卫视,http://101.66.198.242:9901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 +江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路14』 +江苏卫视,http://221.226.51.220:50081/newlive/live/hls/18/live.m3u8$LR•IPV4•17『线路15』 +江苏卫视,http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•17『线路16』 +江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•17『线路17』 +安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•13『线路1』 +安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•13『线路2』 +安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•13『线路3』 +安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•13『线路4』 +安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•13『线路5』 +安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•13『线路6』 +安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路7』 +安徽卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226943/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0QmKQ_slRCwvVVUUfxPVbw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路8』 +安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•13『线路9』 +安徽卫视,http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•13『线路10』 +安徽卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ahwshd$LR•IPV4•13『线路11』 +安徽卫视,http://124.228.160.210:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路12』 +安徽卫视,http://36.136.38.87:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路13』 +重庆卫视,http://p2.ioioz.com/videojs.php?id=https://sjlivecdn9.cbg.cn/202607222106/app_2/_definst_/ls_2.stream/chunklist.m3u8$LR•IPV4•15『线路1』 +重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•15『线路2』 +重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•15『线路3』 +重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•15『线路4』 +重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•15『线路5』 +重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•15『线路6』 +重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•15『线路7』 +重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•15『线路8』 +重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路9』 +重庆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路10』 +重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•15『线路11』 +重庆卫视,http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路12』 +重庆卫视,http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路13』 +重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路14』 +重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•15『线路15』 +四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 +四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•14『线路2』 +四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•14『线路3』 +四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•14『线路4』 +四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•14『线路5』 +四川卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226995/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EBQiz3wrGrpG0CUSRIJ-7Jg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路6』 +四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•14『线路7』 +四川卫视,http://101.66.198.105:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路8』 +四川卫视,http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 +四川卫视,http://198.204.228.26/live/scwshd.m3u8$LR•IPV4•14『线路10』 +四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•14『线路11』 +四川卫视,http://112.123.243.37:50085/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 +四川卫视,http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路13』 +四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•14『线路14』 +东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•16『线路1』 +东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路2』 +东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•16『线路3』 +东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•16『线路4』 +东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•16『线路5』 +东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•16『线路6』 +东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•16『线路7』 +东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•16『线路8』 +东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•16『线路9』 +东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•16『线路10』 +东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路11』 +东南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226991/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQ6F5Mjgs0tJyEArWFL3vQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路12』 +东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•16『线路13』 +东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•16『线路14』 +东南卫视,http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路15』 +东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•16『线路16』 +深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 +深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•17『线路2』 +深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•17『线路3』 +深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•17『线路4』 +深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•17『线路5』 +深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•17『线路6』 +深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•17『线路7』 +深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路9』 +深圳卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路10』 +深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•17『线路11』 +深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路12』 +深圳卫视,http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•17『线路13』 +深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•17『线路14』 +深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•17『线路15』 +深圳卫视,http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•17『线路16』 +深圳卫视,http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 广东卫视,https://piccpndks.v.kcdnvip.com/audio/guangdong_2/index.m3u8$LR•IPV4•18『线路1』 -广东卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226961/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2MGyx659D_aaDPP0qt3NgA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 -广东卫视,http://101.66.194.177:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路3』 -广东卫视,http://120.238.94.82:9901/tsfile/live/1009_1.m3u8$LR•IPV4•18『线路4』 -广东卫视,http://120.198.95.220:9901/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•18『线路5』 -广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 -广东卫视,http://58.56.162.102:4466/newlive/live/hls/25/live.m3u8$LR•IPV4•18『线路7』 -广东卫视,http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 -广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•18『线路9』 -广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•18『线路10』 -广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•18『线路11』 -广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•18『线路12』 -广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•18『线路13』 -广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•18『线路14』 -广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•18『线路15』 -广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•18『线路16』 -广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•18『线路17』 -广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•18『线路18』 -广西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227010/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkAhb-89sxdm9fz6-heXCuw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -广西卫视,http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路2』 -广西卫视,https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•17『线路3』 -广西卫视,http://111.8.224.6:9999/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路4』 -广西卫视,http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 -广西卫视,http://101.66.198.242:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 -广西卫视,http://101.66.198.105:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 -广西卫视,http://101.66.199.102:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 -广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路9』 -广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•17『线路10』 -广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•17『线路11』 -广西卫视,http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•17『线路12』 -广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•17『线路13』 -广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•17『线路14』 -广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•17『线路15』 -广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•17『线路16』 -广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•17『线路17』 -厦门卫视,http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•4『线路1』 -厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路2』 -厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路3』 -厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路4』 -甘肃卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•6『线路1』 -甘肃卫视,http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路2』 -甘肃卫视,http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•6『线路3』 -甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路4』 -甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路5』 -甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路6』 -贵州卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227012/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EnqBF03rFwPucF8ODtWxLQQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -贵州卫视,http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 -贵州卫视,http://101.66.198.242:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 -贵州卫视,http://101.66.199.102:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路4』 -贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路5』 -贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•17『线路6』 -贵州卫视,http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•17『线路7』 -贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•17『线路8』 -贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•17『线路9』 -贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•17『线路10』 -贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•17『线路11』 -贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•17『线路12』 -贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•17『线路13』 -贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•17『线路14』 -贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•17『线路15』 -贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•17『线路16』 -贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 +广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•18『线路2』 +广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•18『线路3』 +广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•18『线路4』 +广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•18『线路5』 +广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•18『线路6』 +广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•18『线路7』 +广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•18『线路8』 +广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•18『线路9』 +广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•18『线路10』 +广东卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226961/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2MGyx659D_aaDPP0qt3NgA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路11』 +广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•18『线路12』 +广东卫视,http://101.66.194.177:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路13』 +广东卫视,http://120.238.94.82:9901/tsfile/live/1009_1.m3u8$LR•IPV4•18『线路14』 +广东卫视,http://120.198.95.220:9901/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•18『线路15』 +广东卫视,http://58.56.162.102:4466/newlive/live/hls/25/live.m3u8$LR•IPV4•18『线路16』 +广东卫视,http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 +广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•18『线路18』 +广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 +广西卫视,http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•17『线路2』 +广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•17『线路3』 +广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•17『线路4』 +广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•17『线路5』 +广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•17『线路6』 +广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•17『线路7』 +广西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227010/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkAhb-89sxdm9fz6-heXCuw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路8』 +广西卫视,https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•17『线路9』 +广西卫视,http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路10』 +广西卫视,http://111.8.224.6:9999/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路11』 +广西卫视,http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路12』 +广西卫视,http://101.66.198.242:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 +广西卫视,http://101.66.198.105:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路14』 +广西卫视,http://101.66.199.102:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路15』 +广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•17『线路17』 +厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路1』 +厦门卫视,http://e2.woc.iiiya.cn:28888/rtp/239.61.2.11:8060$LR•IPV4•4『线路2』 +厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路3』 +厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路4』 +甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路1』 +甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路2』 +甘肃卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•6『线路3』 +甘肃卫视,http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路4』 +甘肃卫视,http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•6『线路5』 +甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路6』 +贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 +贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•17『线路2』 +贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•17『线路3』 +贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•17『线路4』 +贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•17『线路5』 +贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•17『线路6』 +贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路7』 +贵州卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227012/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EnqBF03rFwPucF8ODtWxLQQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路8』 +贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•17『线路9』 +贵州卫视,http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 +贵州卫视,http://101.66.198.242:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 +贵州卫视,http://101.66.199.102:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路12』 +贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路13』 +贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•17『线路14』 +贵州卫视,http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•17『线路15』 +贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•17『线路16』 +贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•17『线路17』 河北卫视,https://tv.pull.hebtv.com/jishi/weishipindao.m3u8?t=1784283312&k=9740237ad5542a40ff56157ccf9bc99d$LR•IPV4•14『线路1』 -河北卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227014/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErSGjhI3DMaaAASPrbQJYTg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路2』 -河北卫视,http://112.123.243.37:50085/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路3』 -河北卫视,http://101.66.199.102:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 -河北卫视,http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 -河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•14『线路6』 -河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•14『线路7』 -河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•14『线路8』 -河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•14『线路9』 -河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•14『线路10』 -河北卫视,https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•14『线路11』 -河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•14『线路12』 -河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•14『线路13』 -河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路14』 -河南卫视,http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•11『线路1』 -河南卫视,http://198.204.228.26/live/hawshd.m3u8$LR•IPV4•11『线路2』 -河南卫视,http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路3』 -河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•11『线路4』 -河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•11『线路5』 -河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•11『线路6』 -河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•11『线路7』 -河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•11『线路8』 -河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•11『线路9』 -河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•11『线路10』 -河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路11』 -黑龙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -黑龙江卫视,http://112.123.243.37:50085/tsfile/live/0142_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 -黑龙江卫视,http://101.66.199.102:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 -黑龙江卫视,http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 -黑龙江卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hljwshd$LR•IPV4•17『线路5』 -黑龙江卫视,http://221.226.51.220:50081/newlive/live/hls/31/live.m3u8$LR•IPV4•17『线路6』 -黑龙江卫视,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•17『线路7』 -黑龙江卫视,http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•14『线路2』 +河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•14『线路3』 +河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•14『线路4』 +河北卫视,https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•14『线路5』 +河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•14『线路6』 +河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•14『线路7』 +河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路8』 +河北卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227014/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErSGjhI3DMaaAASPrbQJYTg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路9』 +河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•14『线路10』 +河北卫视,http://112.123.243.37:50085/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路11』 +河北卫视,http://101.66.199.102:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 +河北卫视,http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 +河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•14『线路14』 +河南卫视,http://tvcdn.stream3.hndt.com/tv/65c4a6d5017e1000b2b6ea2500000000_transios/playlist.m3u8?wsSecret=132cb2fc54c2c4fe7a0b58973cdd5fee&wsTime=1784235566$LR•IPV4•11『线路1』 +河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•11『线路2』 +河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•11『线路3』 +河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•11『线路4』 +河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•11『线路5』 +河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•11『线路6』 +河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路7』 +河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•11『线路8』 +河南卫视,http://198.204.228.26/live/hawshd.m3u8$LR•IPV4•11『线路9』 +河南卫视,http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路10』 +河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•11『线路11』 +黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 +黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•17『线路2』 +黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•17『线路3』 +黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•17『线路4』 +黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•17『线路5』 +黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•17『线路6』 +黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•17『线路7』 +黑龙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路8』 黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•17『线路9』 -黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•17『线路10』 -黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•17『线路11』 -黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•17『线路12』 -黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•17『线路13』 -黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•17『线路14』 -黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•17『线路15』 -黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•17『线路16』 -黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•17『线路17』 -湖北卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 -湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路2』 -湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路3』 -湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路4』 -湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路5』 -湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路6』 -湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路7』 -湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路8』 -湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路9』 -湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路10』 -湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路11』 -湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路12』 -湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 -湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路14』 +黑龙江卫视,http://112.123.243.37:50085/tsfile/live/0142_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 +黑龙江卫视,http://101.66.199.102:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 +黑龙江卫视,http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路12』 +黑龙江卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hljwshd$LR•IPV4•17『线路13』 +黑龙江卫视,http://221.226.51.220:50081/newlive/live/hls/31/live.m3u8$LR•IPV4•17『线路14』 +黑龙江卫视,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•17『线路15』 +黑龙江卫视,http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•17『线路17』 +湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 +湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路2』 +湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路3』 +湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路4』 +湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路5』 +湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路6』 +湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路7』 +湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路8』 +湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路9』 +湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路10』 +湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路11』 +湖北卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路12』 +湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路13』 +湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路14』 江西卫视,https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_fsgw.m3u8$LR•IPV4•17『线路1』 -江西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 -江西卫视,http://101.66.199.102:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 -江西卫视,http://107.150.60.122/live/jxwshd.m3u8$LR•IPV4•17『线路4』 -江西卫视,http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•17『线路5』 -江西卫视,http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路6』 -江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•17『线路7』 -江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•17『线路8』 -江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 -江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•17『线路10』 -江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•17『线路11』 -江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•17『线路12』 -江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•17『线路13』 -江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•17『线路14』 -江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•17『线路15』 -江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•17『线路16』 -江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 -吉林卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227015/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EW5-3AVdwD5KlUpuA4mz7Cg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路1』 -吉林卫视,http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路2』 -吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路3』 -吉林卫视,http://101.66.198.242:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 -吉林卫视,http://101.66.199.102:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路5』 -吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 -吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路7』 -吉林卫视,http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•15『线路8』 -吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•15『线路9』 -吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•15『线路10』 -吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•15『线路11』 -吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•15『线路12』 -吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•15『线路13』 -吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•15『线路14』 -吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•15『线路15』 -内蒙古卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227018/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErN_hoRDwApMKnJqiNHvn9w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 -内蒙古卫视,http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 -内蒙古卫视,http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•12『线路3』 -内蒙古卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•12『线路4』 +江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•17『线路2』 +江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•17『线路3』 +江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•17『线路4』 +江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•17『线路5』 +江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•17『线路6』 +江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•17『线路7』 +江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•17『线路8』 +江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•17『线路9』 +江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 +江西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路11』 +江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•17『线路12』 +江西卫视,http://101.66.199.102:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 +江西卫视,http://107.150.60.122/live/jxwshd.m3u8$LR•IPV4•17『线路14』 +江西卫视,http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•17『线路15』 +江西卫视,http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路16』 +江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•17『线路17』 +吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•14『线路1』 +吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•14『线路2』 +吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•14『线路3』 +吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•14『线路4』 +吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•14『线路5』 +吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•14『线路6』 +吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 +吉林卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227015/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EW5-3AVdwD5KlUpuA4mz7Cg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路8』 +吉林卫视,http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路9』 +吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路10』 +吉林卫视,http://101.66.198.242:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路11』 +吉林卫视,http://101.66.199.102:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 +吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 +吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•14『线路14』 +内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•12『线路1』 +内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•12『线路2』 +内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•12『线路3』 +内蒙古卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227018/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErN_hoRDwApMKnJqiNHvn9w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路4』 内蒙古卫视,http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•12『线路5』 -内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•12『线路6』 -内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•12『线路7』 -内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•12『线路8』 -内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•12『线路9』 -内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•12『线路10』 -内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•12『线路11』 -内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•12『线路12』 -辽宁卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226966/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6qJH8Fd-zgCGx3P-Ce86cA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -辽宁卫视,http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 -辽宁卫视,http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 -辽宁卫视,http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•17『线路4』 -辽宁卫视,http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路5』 -辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•17『线路6』 -辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•17『线路7』 -辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•17『线路8』 -辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路9』 -辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•17『线路10』 -辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•17『线路11』 -辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•17『线路12』 -辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•17『线路13』 -辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•17『线路14』 -辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•17『线路15』 -辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•17『线路16』 -辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 -宁夏卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227003/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESco1zinvdUYzleEkXYhIvA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路1』 -宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路2』 -宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•9『线路3』 -宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•9『线路4』 -宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•9『线路5』 -宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•9『线路6』 -宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•9『线路7』 -宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•9『线路8』 -宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路9』 -青海卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 -青海卫视,http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 -青海卫视,http://38.75.136.137:98/gslb/dsdqpub/qhws.m3u8?auth=testpub$LR•IPV4•10『线路3』 -青海卫视,http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•10『线路4』 -青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路5』 -青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路6』 -青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路7』 -青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路8』 -青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•10『线路9』 -青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路10』 -山东卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226957/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjW26v5VaHGy1jQuIA-4EbA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•19『线路1』 -山东卫视,http://101.66.199.102:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路2』 -山东卫视,http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•19『线路3』 -山东卫视,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•19『线路4』 -山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路5』 -山东卫视,http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路6』 -山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•19『线路7』 -山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•19『线路8』 -山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•19『线路9』 -山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•19『线路10』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路11』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路12』 -山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•19『线路13』 -山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•19『线路14』 -山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•19『线路15』 -山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•19『线路16』 -山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•19『线路17』 -山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•19『线路18』 -山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路19』 -天津卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路1』 -天津卫视,http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路2』 -天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路3』 -天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路4』 -天津卫视,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 -天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 -天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路7』 -天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路8』 -天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路9』 -天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路10』 -天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路11』 -天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路12』 -天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路13』 -天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•15『线路14』 -天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路15』 +内蒙古卫视,http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 +内蒙古卫视,http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•12『线路7』 +内蒙古卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nmgws$LR•IPV4•12『线路8』 +内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•12『线路9』 +内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•12『线路10』 +内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•12『线路11』 +内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•12『线路12』 +辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 +辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路2』 +辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•17『线路3』 +辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•17『线路4』 +辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•17『线路5』 +辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•17『线路6』 +辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•17『线路7』 +辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•17『线路8』 +辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•17『线路9』 +辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 +辽宁卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226966/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6qJH8Fd-zgCGx3P-Ce86cA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路11』 +辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•17『线路12』 +辽宁卫视,http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路13』 +辽宁卫视,http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路14』 +辽宁卫视,http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•17『线路15』 +辽宁卫视,http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•17『线路17』 +宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•9『线路1』 +宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•9『线路2』 +宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•9『线路3』 +宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路4』 +宁夏卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227003/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESco1zinvdUYzleEkXYhIvA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路5』 +宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•9『线路6』 +宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路7』 +宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•9『线路8』 +宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•9『线路9』 +青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•9『线路1』 +青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•9『线路2』 +青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•9『线路3』 +青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•9『线路4』 +青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路5』 +青海卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路6』 +青海卫视,http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路7』 +青海卫视,http://38.75.136.137:98/gslb/dsdqpub/qhws.m3u8?auth=testpub$LR•IPV4•9『线路8』 +青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•9『线路9』 +山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•19『线路1』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路2』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•19『线路3』 +山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•19『线路4』 +山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•19『线路5』 +山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•19『线路6』 +山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•19『线路7』 +山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•19『线路8』 +山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•19『线路9』 +山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路10』 +山东卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226957/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjW26v5VaHGy1jQuIA-4EbA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•19『线路11』 +山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•19『线路12』 +山东卫视,http://101.66.199.102:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路13』 +山东卫视,http://198.204.228.26/live/sdwshd.m3u8$LR•IPV4•19『线路14』 +山东卫视,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•19『线路15』 +山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路16』 +山东卫视,http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路17』 +山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•19『线路18』 +山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•19『线路19』 +天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路1』 +天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路2』 +天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路3』 +天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路4』 +天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路5』 +天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•15『线路6』 +天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路7』 +天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路8』 +天津卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路9』 +天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路10』 +天津卫视,http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路11』 +天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路12』 +天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路13』 +天津卫视,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路14』 +天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路15』 海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路1』 -海南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路2』 -海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路3』 -海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路4』 -海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路5』 -海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路6』 -海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路7』 -海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•8『线路8』 -新疆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•11『线路1』 -新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•11『线路2』 -新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•11『线路3』 -新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•11『线路4』 -新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•11『线路5』 -新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•11『线路6』 -新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路7』 -新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路8』 -新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•11『线路9』 -新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•11『线路10』 -新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•11『线路11』 -云南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227028/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGfQPqRNVeBjTMsZ48qu0SA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路1』 -云南卫视,http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路2』 -云南卫视,http://111.8.224.6:9999/tsfile/live/1055_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路3』 -云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•18『线路4』 -云南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ynwshd$LR•IPV4•18『线路5』 -云南卫视,http://120.198.95.220:9901/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路6』 -云南卫视,http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路7』 -云南卫视,http://101.66.198.105:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路8』 -云南卫视,http://101.66.198.242:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路9』 -云南卫视,http://101.66.199.102:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路10』 -云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路11』 -云南卫视,http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•18『线路12』 -云南卫视,http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•18『线路13』 -云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•18『线路14』 -云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•18『线路15』 -云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•18『线路16』 -云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•18『线路17』 -云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 -西藏卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 -西藏卫视,http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路2』 -西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•10『线路3』 -西藏卫视,http://198.204.228.26/live/xzws.m3u8$LR•IPV4•10『线路4』 -西藏卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•10『线路5』 -西藏卫视,http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•10『线路6』 -西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•10『线路7』 -西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•10『线路8』 -西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•10『线路9』 -西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•10『线路10』 -海峡卫视,http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•3『线路1』 -海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•3『线路2』 -海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•3『线路3』 -兵团卫视,http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路1』 -兵团卫视,http://112.123.243.37:50085/tsfile/live/0112_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路2』 -兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•7『线路3』 -兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•7『线路4』 -兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•7『线路5』 -兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•7『线路6』 -兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•7『线路7』 +海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路2』 +海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路3』 +海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路4』 +海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•8『线路5』 +海南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路6』 +海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路7』 +海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路8』 +新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•11『线路1』 +新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•11『线路2』 +新疆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•11『线路3』 +新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•11『线路4』 +新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•11『线路5』 +新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•11『线路6』 +新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•11『线路7』 +新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•11『线路8』 +新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路9』 +新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•11『线路10』 +新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•11『线路11』 +云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•18『线路1』 +云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•18『线路2』 +云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•18『线路3』 +云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•18『线路4』 +云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 +云南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227028/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGfQPqRNVeBjTMsZ48qu0SA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路6』 +云南卫视,http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•18『线路7』 +云南卫视,http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 +云南卫视,http://111.8.224.6:9999/tsfile/live/1055_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路9』 +云南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ynwshd$LR•IPV4•18『线路10』 +云南卫视,http://120.198.95.220:9901/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路11』 +云南卫视,http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路12』 +云南卫视,http://101.66.198.105:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路13』 +云南卫视,http://101.66.198.242:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路14』 +云南卫视,http://101.66.199.102:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路15』 +云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路16』 +云南卫视,http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•18『线路17』 +云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•18『线路18』 +西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•9『线路1』 +西藏卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•9『线路2』 +西藏卫视,http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路3』 +西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•9『线路4』 +西藏卫视,http://198.204.228.26/live/xzws.m3u8$LR•IPV4•9『线路5』 +西藏卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•9『线路6』 +西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•9『线路7』 +西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•9『线路8』 +西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•9『线路9』 +海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•3『线路1』 +海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•3『线路2』 +海峡卫视,http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•3『线路3』 +兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•6『线路1』 +兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•6『线路2』 +兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•6『线路3』 +兵团卫视,http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 +兵团卫视,http://112.123.243.37:50085/tsfile/live/0112_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路5』 +兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•6『线路6』 安多卫视,https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 康巴卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227027/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkHMvBpWz4rccMxNvSRekpQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•2『线路1』 康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•2『线路2』 -农林卫视,http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路1』 -农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路2』 +农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路1』 +农林卫视,http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路2』 三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•5『线路1』 -三沙卫视,http://107.150.60.122/live/ssws.m3u8$LR•IPV4•5『线路2』 -三沙卫视,http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•5『线路3』 -三沙卫视,http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•5『线路4』 -三沙卫视,https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•5『线路5』 +三沙卫视,http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•5『线路2』 +三沙卫视,https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•5『线路3』 +三沙卫视,http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•5『线路4』 +三沙卫视,http://107.150.60.122/live/ssws.m3u8$LR•IPV4•5『线路5』 延边卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•4『线路1』 -延边卫视,https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•4『线路2』 -延边卫视,https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•4『线路3』 -延边卫视,http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•4『线路4』 +延边卫视,http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•4『线路2』 +延边卫视,https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•4『线路3』 +延边卫视,https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•4『线路4』 中国教育3台,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226577/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EhE2Z89HKgsQOlN9opVn1iw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNN03yUnk4zBVk1bynPPL3hZ%2CEND$LR•IPV6 上海卫视,http://112.27.235.94:8000/hls/28/index.m3u8$LR•IPV4 家庭理财,http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4 梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•2『线路1』 梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 -辽宁公共,http://120.76.248.139/live/bfgd/4200000481.m3u8$LR•IPV4 +辽宁公共,http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 中华特产,http://120.76.248.139/live/bfgd/4200000158.m3u8$LR•IPV4 河北4K,https://event.pull.hebtv.com:443/live/live101.m3u8$LR•IPV4•4『线路1』 河北4K,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=f56e90&tk=922ba46651d3$LR•IPV4•4『线路2』 河北4K,http://43.251.226.89:8080/play/928.m3u8$LR•IPV4•4『线路3』 河北4K,http://106.53.99.30/tv/api.php?id=hebtv4k$LR•IPV4•4『线路4』 -山西卫视,https://livehhhttps.sxrtv.com/lsdream/lce1mC4/800/h1thc41.m3u8$LR•IPV4•19『线路1』 -山西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227016/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESb5Qr3NTpE2ZugIroKoyTw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•19『线路2』 -山西卫视,http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•19『线路3』 -山西卫视,http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 -山西卫视,http://101.66.198.242:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路5』 -山西卫视,http://101.66.199.102:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路6』 -山西卫视,http://101.66.198.105:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路7』 -山西卫视,http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路8』 -山西卫视,http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路9』 -山西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•19『线路10』 -山西卫视,http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•19『线路11』 -山西卫视,http://107.150.60.122/live/sxwshd.m3u8$LR•IPV4•19『线路12』 -山西卫视,http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•19『线路13』 -山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•19『线路14』 -山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•19『线路15』 -山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•19『线路16』 -山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•19『线路17』 -山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•19『线路18』 -山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路19』 -陕西卫视,http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•23『线路1』 -陕西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•23『线路2』 -陕西卫视,http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•23『线路3』 -陕西卫视,http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•23『线路4』 -陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•23『线路5』 -陕西卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=snwshd$LR•IPV4•23『线路6』 -陕西卫视,http://113.25.252.226:9901/tsfile/live/1040_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 -陕西卫视,http://112.123.243.37:50085/tsfile/live/0109_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路8』 -陕西卫视,http://101.66.199.102:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路9』 -陕西卫视,http://101.66.198.105:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路10』 -陕西卫视,http://101.66.198.242:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路11』 -陕西卫视,http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路12』 -陕西卫视,http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路13』 -陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•23『线路14』 -陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•23『线路15』 -陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•23『线路16』 -陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•23『线路17』 -陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•23『线路18』 -陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•23『线路19』 -陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•23『线路20』 -陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•23『线路21』 -陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•23『线路22』 -陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路23』 +山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•18『线路1』 +山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•18『线路2』 +山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•18『线路3』 +山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路4』 +山西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227016/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESb5Qr3NTpE2ZugIroKoyTw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路5』 +山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•18『线路6』 +山西卫视,http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•18『线路7』 +山西卫视,http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 +山西卫视,http://101.66.198.242:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路9』 +山西卫视,http://101.66.199.102:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路10』 +山西卫视,http://101.66.198.105:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路11』 +山西卫视,http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路12』 +山西卫视,http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路13』 +山西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•18『线路14』 +山西卫视,http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•18『线路15』 +山西卫视,http://107.150.60.122/live/sxwshd.m3u8$LR•IPV4•18『线路16』 +山西卫视,http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•18『线路17』 +山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•18『线路18』 +陕西卫视,http://stream.snrtv.com/sxbc-star-JNW048.m3u8$LR•IPV4•23『线路1』 +陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•23『线路2』 +陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•23『线路3』 +陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•23『线路4』 +陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•23『线路5』 +陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•23『线路6』 +陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路7』 +陕西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•23『线路8』 +陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•23『线路9』 +陕西卫视,http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•23『线路10』 +陕西卫视,http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•23『线路11』 +陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/snwshd.m3u8?auth=testpub$LR•IPV4•23『线路12』 +陕西卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=snwshd$LR•IPV4•23『线路13』 +陕西卫视,http://113.25.252.226:9901/tsfile/live/1040_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路14』 +陕西卫视,http://112.123.243.37:50085/tsfile/live/0109_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路15』 +陕西卫视,http://101.66.199.102:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路16』 +陕西卫视,http://101.66.198.105:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路17』 +陕西卫视,http://101.66.198.242:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•23『线路18』 +陕西卫视,http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•23『线路19』 +陕西卫视,http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•23『线路20』 +陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•23『线路21』 +陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•23『线路22』 +陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•23『线路23』 数字,#genre# CHC影迷电影,p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4 -CHC家庭影院,http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 睛彩竞技,http://dl.wifi942.com:66/jsyd/jsyd.php?id=HD-8000k-1080P-miguaoyun2$LR•IPV4•17『线路1』 睛彩竞技,http://drive.mxmy.net:8888/udp/239.3.1.125:8001$LR•IPV4•17『线路2』 睛彩竞技,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5735&tk=a0c4f6cfaba3$LR•IPV4•17『线路3』 @@ -965,24 +954,21 @@ NewTV超级体育,http://feiyang.ak47s.top:35455/itv/1000000001000009601.m3u8?cd NewTV超级体育,http://39.134.65.66/ottrrs.hl.chinamobile.com/PLTV/88888888/224/3221225715/index.m3u8$LR•IPV4•5『线路3』 NewTV超级体育,http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/TVOD/88888888/224/3221225715/index.m3u8$LR•IPV6•5『线路4』 NewTV超级体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3188&tk=23a9aca1f79f$LR•IPV4•5『线路5』 -NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路1』 -NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路2』 +NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4 NewTV精品体育,https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae70ef8e17d93eec249a3c8ad6.m3u8$LR•IPV4•6『线路1』 NewTV精品体育,http://146.56.165.66:7788/TVOD/2000000003000000021/hnbblive/index.m3u8$LR•IPV4•6『线路2』 NewTV精品体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•6『线路3』 NewTV精品体育,https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•6『线路4』 NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•6『线路5』 NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•6『线路6』 -卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4 哈哈炫动,http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4 嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•2『线路1』 嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•2『线路2』 -金鹰卡通,http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•5『线路1』 -金鹰卡通,http://101.66.194.177:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路2』 -金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•5『线路3』 -金鹰卡通,http://101.66.198.242:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路4』 -金鹰卡通,http://101.66.199.102:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路5』 +金鹰卡通,http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•4『线路1』 +金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•4『线路2』 +金鹰卡通,http://101.66.198.242:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•4『线路3』 +金鹰卡通,http://101.66.199.102:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•4『线路4』 金鹰纪实,http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•86『线路1』 金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-20.ctv$LR•IPV4•86『线路2』 金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-6.m3u8$LR•IPV4•86『线路3』 @@ -1069,24 +1055,24 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-31.ctv$LR•IPV4•86『线路84』 金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-13.ctv$LR•IPV4•86『线路85』 金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6268&tk=23a9aca1f79f$LR•IPV4•86『线路86』 -快乐垂钓,http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路1』 -快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路2』 -快乐垂钓,https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路3』 -快乐垂钓,http://111.231.6.102:1234/961930263$LR•IPV4•31『线路4』 -快乐垂钓,http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路5』 -快乐垂钓,https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路6』 -快乐垂钓,http://115.190.247.176:1111/961930263$LR•IPV4•31『线路7』 -快乐垂钓,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路8』 -快乐垂钓,http://182.61.15.84:80/961930263$LR•IPV4•31『线路9』 -快乐垂钓,http://60.168.105.87:5008/961930263$LR•IPV4•31『线路10』 -快乐垂钓,http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路11』 -快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路12』 -快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路13』 -快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路14』 -快乐垂钓,http://123.113.205.253:3000/961930263$LR•IPV4•31『线路15』 -快乐垂钓,https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路16』 -快乐垂钓,http://110.154.192.66:7788/961930263$LR•IPV4•31『线路17』 -快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路18』 +快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路1』 +快乐垂钓,https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路2』 +快乐垂钓,http://111.231.6.102:1234/961930263$LR•IPV4•31『线路3』 +快乐垂钓,http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路4』 +快乐垂钓,https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路5』 +快乐垂钓,http://115.190.247.176:1111/961930263$LR•IPV4•31『线路6』 +快乐垂钓,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路7』 +快乐垂钓,http://182.61.15.84:80/961930263$LR•IPV4•31『线路8』 +快乐垂钓,http://60.168.105.87:5008/961930263$LR•IPV4•31『线路9』 +快乐垂钓,http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路10』 +快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路11』 +快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路12』 +快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路13』 +快乐垂钓,http://123.113.205.253:3000/961930263$LR•IPV4•31『线路14』 +快乐垂钓,https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路15』 +快乐垂钓,http://110.154.192.66:7788/961930263$LR•IPV4•31『线路16』 +快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路17』 +快乐垂钓,http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路18』 快乐垂钓,https://migu.188766.xyz/?migutoken=396182b2a9b61dca2daded3fc6f62311&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路19』 快乐垂钓,http://47.104.178.59:3566/961930263$LR•IPV4•31『线路20』 快乐垂钓,http://wouu.net:9977/udp/239.93.1.151:5140$LR•IPV4•31『线路21』 @@ -1100,8 +1086,8 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 快乐垂钓,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8530&tk=e503191f8e20$LR•IPV4•31『线路29』 快乐垂钓,http://e1.woc.iiiya.cn:8888/rtp/239.61.3.8:9566$LR•IPV4•31『线路30』 快乐垂钓,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/ydcmklcd/51/20251225/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600603&netType=0&sid=5910022317&pid=2028597139×tamp=20260722080327&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=961930263&ParentNodeID=-99&assertID=5910022317&client_ip=171.8.79.254&SecurityKey=20260722080327&promotionId=&mvid=5900006783&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=336b026337e0131f650177076b9cd07c&sv=10004&ct=android$LR•IPV4•31『线路31』 -纪实人文,http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路1』 -纪实人文,http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路2』 +纪实人文,http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路1』 +纪实人文,http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路2』 天元围棋,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8487&tk=a0c4f6cfaba3$LR•IPV4•6『线路1』 天元围棋,http://wouu.net:9977/udp/239.93.42.55:5140$LR•IPV4•6『线路2』 天元围棋,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gztywq$LR•IPV4•6『线路3』 @@ -1111,11 +1097,11 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 弈坛春秋,http://223.110.245.139/PLTV/4/224/3221227031/index.m3u8$LR•IPV4 华数4K,http://111.22.153.159:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路1』 华数4K,http://home.wwang.pw:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路2』 -纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路1』 -纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路2』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路4』 -纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路5』 +纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路1』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路2』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 +纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 +纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路5』 安徽,#genre# 滁州新闻综合频道,http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 @@ -1192,32 +1178,32 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 苏州4k,http://106.53.99.30/tv/api.php?id=sztv4k$LR•IPV4•4『线路4』 浙江,#genre# -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路1』 -浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•20『线路2』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•20『线路3』 -浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•20『线路4』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•20『线路5』 -浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•20『线路6』 -浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•20『线路7』 -浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•20『线路8』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路9』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•20『线路10』 -浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•20『线路11』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•20『线路12』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•20『线路13』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•20『线路14』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路15』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路16』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•20『线路17』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路18』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•20『线路19』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路20』 -浙江生活,http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路1』 -浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路2』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路3』 -浙江生活,http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路4』 -浙江生活,http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路5』 -浙江生活,http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路6』 +浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•20『线路1』 +浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•20『线路2』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•20『线路3』 +浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•20『线路4』 +浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•20『线路5』 +浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•20『线路6』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路7』 +浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•20『线路8』 +浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•20『线路9』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•20『线路10』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•20『线路11』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•20『线路12』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路13』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路14』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•20『线路15』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•20『线路16』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•20『线路17』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•20『线路18』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•20『线路19』 +浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•20『线路20』 +浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路1』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路2』 +浙江生活,http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路3』 +浙江生活,http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路4』 +浙江生活,http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路5』 +浙江生活,http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路6』 浙江生活,http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•25『线路7』 浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8?$LR•IPV4•25『线路8』 浙江生活,http://api3.52tb.xyz/info?id=437&token=20230226bgyszp$LR•IPV4•25『线路9』 @@ -1238,62 +1224,62 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•25『线路24』 浙江生活,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•25『线路25』 浙江经济生活,http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4 -浙江教育,http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路1』 -浙江教育,http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路2』 -浙江教育,https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路3』 -浙江民生,https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路1』 -浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路2』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路3』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路4』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路5』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路6』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路7』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路8』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路9』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路10』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路11』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路12』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路13』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路14』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路15』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路16』 -浙江民生,http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路17』 -浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路18』 -浙江民生,http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路19』 -浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路20』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.ctv$LR•IPV4•37『线路21』 -浙江民生,http://ali-vl.cztv.com/channels/lantian/channel006/360p.m3u8$LR•IPV4•37『线路22』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-10.m3u8$LR•IPV4•37『线路23』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-8.m3u8$LR•IPV4•37『线路24』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路25』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-2.ctv$LR•IPV4•37『线路26』 -浙江民生,http://120.55.49.231:3095/rtp/233.50.201.136:5140$LR•IPV4•37『线路27』 -浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路28』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『线路29』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路30』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路31』 -浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.ctv$LR•IPV4•37『线路32』 +浙江教育,http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路1』 +浙江教育,https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路2』 +浙江教育,http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路3』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路1』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路2』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路3』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路4』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路5』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路6』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路7』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路8』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路9』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路10』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路11』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路12』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路13』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路14』 +浙江民生,http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路15』 +浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路16』 +浙江民生,http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路17』 +浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路18』 +浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路19』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.ctv$LR•IPV4•37『线路20』 +浙江民生,http://ali-vl.cztv.com/channels/lantian/channel006/360p.m3u8$LR•IPV4•37『线路21』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-10.m3u8$LR•IPV4•37『线路22』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-8.m3u8$LR•IPV4•37『线路23』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路24』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-2.ctv$LR•IPV4•37『线路25』 +浙江民生,http://120.55.49.231:3095/rtp/233.50.201.136:5140$LR•IPV4•37『线路26』 +浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路27』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『线路28』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路29』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路30』 +浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.ctv$LR•IPV4•37『线路31』 +浙江民生,https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路32』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-7.m3u8$LR•IPV4•37『线路33』 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian.m3u8$LR•IPV4•37『线路34』 浙江民生,https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8?$LR•IPV4•37『线路35』 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-11.m3u8$LR•IPV4•37『线路36』 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路37』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路2』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路3』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路4』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路5』 -浙江新闻,http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路6』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路7』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路8』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路9』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路10』 -浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路11』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路12』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路13』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路14』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路15』 -浙江新闻,http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路16』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路1』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路2』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路3』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路4』 +浙江新闻,http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路5』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路6』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路7』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路8』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路9』 +浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路10』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路11』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路12』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路13』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路14』 +浙江新闻,http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路15』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路16』 浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-10.m3u8$LR•IPV4•34『线路17』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路18』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路19』 @@ -1312,21 +1298,21 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen.m3u8$LR•IPV4•34『线路32』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路33』 浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路34』 -浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 -浙江少儿,http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路2』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路3』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路4』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路5』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路6』 -浙江少儿,http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路7』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路8』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路9』 -浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路10』 -浙江少儿,http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路11』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路12』 -浙江少儿,http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路13』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路14』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路15』 +浙江少儿,http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路2』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路3』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路4』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路5』 +浙江少儿,http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路6』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路7』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路8』 +浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路9』 +浙江少儿,http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路10』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路11』 +浙江少儿,http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路12』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路13』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路14』 +浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路15』 浙江少儿,https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路16』 浙江少儿,http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?fbl=$LR•IPV4•18『线路17』 浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-4.ctv$LR•IPV4•18『线路18』 @@ -1366,8 +1352,8 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 宁波TV4,http://www.flyskyman.cn:4022/rtp/233.50.201.180:5140$LR•IPV4•2『线路1』 宁波TV4,http://www.jeremyoto.com:82/rtp/233.50.201.180:5140$LR•IPV4•2『线路2』 浙江教科,https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•10『线路1』 -浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•10『线路2』 -浙江教科,http://api3.52tb.xyz/info?id=432&token=20230226bgyszp$LR•IPV4•10『线路3』 +浙江教科,http://api3.52tb.xyz/info?id=432&token=20230226bgyszp$LR•IPV4•10『线路2』 +浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•10『线路3』 浙江教科,http://zwebl02.cztv.com/live/channel041080P.m3u8?auth_key=2524708799-0-0-f195b808217db133bfd648edc01e91fa$LR•IPV4•10『线路4』 浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•10『线路5』 浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•10『线路6』 @@ -1375,68 +1361,68 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 浙江教科,http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•10『线路8』 浙江教科,http://ali-vl.cztv.com/channels/lantian/channel004/360p.m3u8$LR•IPV4•10『线路9』 浙江教科,http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•10『线路10』 -浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路1』 -浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路2』 -浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路3』 -之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路1』 -之江纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•6『线路2』 +浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路1』 +浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 +浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 +之江纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•6『线路1』 +之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路2』 之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•6『线路3』 之江纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•6『线路4』 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『线路5』 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路6』 -浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路1』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路2』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路3』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路4』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路5』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路6』 -浙江国际,https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路7』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路8』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路9』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路10』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路11』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路12』 -浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路13』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路14』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路15』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路16』 -浙江国际,https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路17』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路18』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路19』 -浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路20』 -浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路21』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路22』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路23』 -浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路24』 -浙江国际,https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路25』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路26』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路1』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路2』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路3』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路4』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路5』 +浙江国际,https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路6』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路7』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路8』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路9』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路10』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路11』 +浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路12』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路13』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路14』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路15』 +浙江国际,https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路16』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路17』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路18』 +浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路19』 +浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路20』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路21』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路22』 +浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路23』 +浙江国际,https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路24』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路25』 +浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路26』 浙江国际,http://ali-xwl.cztv.com/live/channel10720Plxw.m3u8$LR•IPV4•32『线路27』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-8.m3u8$LR•IPV4•32『线路28』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•32『线路29』 浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-3.m3u8$LR•IPV4•32『线路30』 浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji.m3u8$LR•IPV4•32『线路31』 浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路32』 -嘉兴新闻综合,http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路1』 -嘉兴新闻综合,http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路2』 -嘉兴新闻综合,http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路3』 +嘉兴新闻综合,http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路1』 +嘉兴新闻综合,http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路2』 +嘉兴新闻综合,http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路3』 嘉兴新闻综合,http://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•5『线路4』 嘉兴新闻综合,https://live-auth.51kandianshi.com/szgd/csztv1.m3u8$LR•IPV4•5『线路5』 丽水新闻,http://120.55.49.231:3095/rtp/233.50.201.162:5140$LR•IPV4 -湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路1』 -湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路2』 -湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路3』 -湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路4』 -湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路5』 -湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路6』 -湖州公共,https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路7』 -湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路8』 -湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路9』 -湖州新闻综合,http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 -湖州新闻综合,https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 +湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路1』 +湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路2』 +湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路3』 +湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路4』 +湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路5』 +湖州公共,https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路6』 +湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路7』 +湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路8』 +湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路9』 +湖州新闻综合,https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 +湖州新闻综合,http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 湖州新闻综合,http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865&fbl=$LR•IPV4•3『线路3』 -湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 -湖州文化娱乐,https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路2』 -湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路3』 +湖州文化娱乐,https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 +湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路2』 +湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路3』 舟山新闻综合,http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4 舟山公共,http://play-sh13.quklive.com/live/1699002430299200.m3u8?auth_key=2027429366-f4515e585a0347f780a01c73ae293945-0-b3699e931cf04290680745e989c63d86$LR•IPV4 浙江留学,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 @@ -1451,16 +1437,16 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 浙江公共新闻,https://stream1.freetv.fun/zhe-jiang-gong-gong-xin-wen-1.ctv$LR•IPV4•6『线路5』 浙江公共新闻,https://stream1.freetv.fun/zhe-jiang-gong-gong-xin-wen-1.m3u8$LR•IPV4•6『线路6』 浙江青田,http://play-sh13.quklive.com/live/1692755062081192.m3u8?auth_key=2028414252-b15176e05a684b589d12314dfabf6225-0-d175afe86fbea31e2eb167a6dd06cd4f$LR•IPV4 -浙江遂昌,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路1』 -浙江遂昌,http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路2』 +浙江遂昌,http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路1』 +浙江遂昌,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路2』 浙江遂昌,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 -诸暨新闻综合,https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•2『线路1』 -诸暨新闻综合,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 -龙游生活娱乐,https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 -龙游生活娱乐,http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 +诸暨新闻综合,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•2『线路1』 +诸暨新闻综合,https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•2『线路2』 +龙游生活娱乐,http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 +龙游生活娱乐,https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 龙游生活娱乐,http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8?zzhed$LR•IPV4•3『线路3』 -龙游新闻综合,https://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8$LR•IPV4•5『线路1』 -龙游新闻综合,http://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8?zzhed$LR•IPV4•5『线路2』 +龙游新闻综合,http://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8?zzhed$LR•IPV4•5『线路1』 +龙游新闻综合,https://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8$LR•IPV4•5『线路2』 龙游新闻综合,http://play-sh13.quklive.com/live/1703570877483349.m3u8?auth_key=2028414694-515206b2ec504fa3bc90bb1ec3b0c48e-0-eeeeb3d5a8f8e5415142bf430b916d79$LR•IPV4•5『线路3』 龙游新闻综合,http://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8?$LR•IPV4•5『线路4』 龙游新闻综合,http://l.cztvcloud.com/channels/lantian/SXlongyou1/720p.m3u8$LR•IPV4•5『线路5』 @@ -1475,19 +1461,19 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 象山综合,http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•3『线路1』 象山综合,http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•3『线路2』 象山综合,http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 -衢江新闻综合,http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•6『线路1』 -衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•6『线路2』 -衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•6『线路3』 -衢江新闻综合,https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•6『线路4』 -衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路5』 +衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•6『线路1』 +衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•6『线路2』 +衢江新闻综合,https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•6『线路3』 +衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路4』 +衢江新闻综合,http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•6『线路5』 衢江新闻综合,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-3.m3u8$LR•IPV4•6『线路6』 -萧山生活,https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路1』 +萧山生活,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 萧山生活,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed$LR•IPV4•3『线路2』 -萧山生活,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路3』 -萧山新闻综合,https://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8$LR•IPV4•17『线路1』 -萧山新闻综合,https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-4.m3u8$LR•IPV4•17『线路2』 -萧山新闻综合,https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-3.m3u8$LR•IPV4•17『线路3』 -萧山新闻综合,https://t.freetv.fun/live/xiao-shan-xin-wen-zong-he-1.m3u8$LR•IPV4•17『线路4』 +萧山生活,https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路3』 +萧山新闻综合,https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-4.m3u8$LR•IPV4•17『线路1』 +萧山新闻综合,https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-3.m3u8$LR•IPV4•17『线路2』 +萧山新闻综合,https://t.freetv.fun/live/xiao-shan-xin-wen-zong-he-1.m3u8$LR•IPV4•17『线路3』 +萧山新闻综合,https://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8$LR•IPV4•17『线路4』 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8?zzhed$LR•IPV4•17『线路5』 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•17『线路6』 萧山新闻综合,https://stream1.freetv.fun/xiao-shan-xin-wen-zong-he-2.m3u8$LR•IPV4•17『线路7』 @@ -1501,11 +1487,11 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8$LR•IPV4•17『线路15』 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8?$LR•IPV4•17『线路16』 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan3/720p.m3u8$LR•IPV4•17『线路17』 -苍南新闻综合,https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•9『线路1』 -苍南新闻综合,http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•9『线路2』 -苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路3』 -苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路4』 -苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路5』 +苍南新闻综合,http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•9『线路1』 +苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路2』 +苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路3』 +苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路4』 +苍南新闻综合,https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•9『线路5』 苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-4.ctv$LR•IPV4•9『线路6』 苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•9『线路7』 苍南新闻综合,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-5.m3u8$LR•IPV4•9『线路8』 @@ -1513,8 +1499,8 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 缙云综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 缙云综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed"$LR•IPV4•3『线路2』 缙云综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 -缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路1』 -缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路2』 +缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路1』 +缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路2』 绍兴电视台公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•2『线路1』 绍兴电视台公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路2』 绍兴新闻综合,http://live.shaoxing.com.cn/video/s10001-sxhb/index.m3u8$LR•IPV4•9『线路1』 @@ -1535,97 +1521,97 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 绍兴文化影视,https://t.freetv.fun/live/shao-xing-wen-hua-ying-shi-1.m3u8$LR•IPV4•3『线路1』 绍兴文化影视,https://stream1.freetv.fun/shao-xing-wen-hua-ying-shi-1.m3u8$LR•IPV4•3『线路2』 绍兴文化影视,http://live.shaoxing.com.cn/video/s10001-sxtv3/index.m3u8$LR•IPV4•3『线路3』 -绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路1』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路2』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路3』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路4』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路5』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路6』 -绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路7』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路1』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路2』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路3』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路4』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路5』 +绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路6』 +绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路7』 海盐新闻,http://lived.dmqhyadmin.com/ds/sd/live.m3u8?zzhed$LR•IPV4 -海宁新闻综合,https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 -海宁新闻综合,http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 +海宁新闻综合,http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 +海宁新闻综合,https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 海宁新闻综合,https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8?zbid=293304&tpid=1708007815$LR•IPV4•3『线路3』 -洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路1』 -洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路2』 -洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路1』 -永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路2』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路3』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路4』 -永嘉新闻综合,https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路5』 -永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路6』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路7』 +洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 +洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路2』 +洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路3』 +永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路1』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路2』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路3』 +永嘉新闻综合,https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路4』 +永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路5』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路6』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路7』 永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-3.ctv$LR•IPV4•10『线路8』 永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路9』 永嘉新闻综合,https://t.freetv.fun/live/yong-jia-xin-wen-zong-he.m3u8$LR•IPV4•10『线路10』 -武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路1』 -武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 -武义新闻综合,https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路3』 +武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +武义新闻综合,https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路2』 +武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路3』 武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed\r\n$LR•IPV4•4『线路4』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路1』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路2』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路4』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路5』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路1』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路3』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路5』 松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 -普陀新闻综合,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•3『线路1』 -普陀新闻综合,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路2』 -普陀新闻综合,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 +普陀新闻综合,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路1』 +普陀新闻综合,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +普陀新闻综合,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•3『线路3』 新昌生活,http://l.cztvcloud.com/channels/lantian/SXxinchang2/720p.m3u8$LR•IPV4 -新昌新闻综合,https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路1』 -新昌新闻综合,https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路2』 -新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路3』 -新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路4』 -新昌新闻综合,http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 +新昌新闻综合,https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路1』 +新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路2』 +新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路3』 +新昌新闻综合,http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路4』 +新昌新闻综合,https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路6』 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-4.m3u8$LR•IPV4•7『线路7』 -文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路1』 -文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路2』 文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?fbl=$LR•IPV4•4『线路3』 文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8$LR•IPV4•4『线路4』 开化新闻综合,http://l.cztvcloud.com/channels/lantian/SXkaihua1/720p.m3u8?zzhed$LR•IPV4•3『线路1』 开化新闻综合,https://stream1.freetv.fun/kai-hua-xin-wen-zong-he-1.m3u8$LR•IPV4•3『线路2』 开化新闻综合,https://stream1.freetv.fun/kai-hua-xin-wen-zong-he-2.ctv$LR•IPV4•3『线路3』 -开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路1』 -开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路1』 +开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路2』 开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8zzhed$LR•IPV4•3『线路3』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路1』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路2』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路5』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路1』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路3』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路4』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路5』 庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?fbl=$LR•IPV4•6『线路6』 -平湖新闻综合,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•9『线路1』 -平湖新闻综合,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路2』 -平湖新闻综合,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•9『线路3』 -平湖新闻综合,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路4』 +平湖新闻综合,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•9『线路1』 +平湖新闻综合,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•9『线路2』 +平湖新闻综合,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•9『线路3』 +平湖新闻综合,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•9『线路4』 平湖新闻综合,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路5』 平湖新闻综合,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•9『线路6』 平湖新闻综合,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-5.m3u8$LR•IPV4•9『线路7』 平湖新闻综合,https://t.freetv.fun/live/ping-hu-xin-wen-zong-he-1.m3u8$LR•IPV4•9『线路8』 平湖新闻综合,http://play-sh13.quklive.com/live/1690167908295069.m3u8?auth_key=2027466211-f190eec410c24473825cbe1d8541e545-0-f21db57ae1b534802c1cf7be86cc3aef$LR•IPV4•9『线路9』 -嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•7『线路1』 -嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•7『线路2』 -嵊泗综合,https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•7『线路3』 +嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•7『线路1』 +嵊泗综合,https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•7『线路2』 +嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•7『线路3』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路4』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-2.ctv$LR•IPV4•7『线路5』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-2.m3u8$LR•IPV4•7『线路6』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路7』 -兰溪新闻综合,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•6『线路1』 -兰溪新闻综合,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•6『线路2』 +兰溪新闻综合,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•6『线路1』 +兰溪新闻综合,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•6『线路2』 兰溪新闻综合,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路3』 兰溪新闻综合,https://t.freetv.fun/live/lan-xi-xin-wen-zong-he.m3u8$LR•IPV4•6『线路4』 兰溪新闻综合,https://t.freetv.fun/live/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•6『线路5』 兰溪新闻综合,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•6『线路6』 -余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路1』 -余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 -余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路3』 -余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路1』 -余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 -余姚综合,https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路1』 -余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路2』 -余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路3』 +余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路1』 +余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路2』 +余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 +余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路1』 +余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路2』 +余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路1』 +余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路2』 +余姚综合,https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路3』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路4』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•6『线路5』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 @@ -1633,35 +1619,35 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路2』 余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•4『线路3』 余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路4』 -云和新闻综合,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•2『线路1』 -云和新闻综合,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•2『线路2』 +云和新闻综合,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•2『线路1』 +云和新闻综合,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•2『线路2』 义乌新闻综合,https://44911.hlsplay.aodianyun.com/tv_radio_44911/tv_channel_1796.m3u8?auth_key=4830573978-0-0-92824c2c03f95906a3c49a4aa28f1709&extra_key=Yc1XsmxOKy2UBoPM4Wy5vCPsEYqnj06taCR2SRB2Xrg2w28NPilH03KdIbbM5wgSql-VBohSnoO9AOKl94q2t2DWMftz-XB-2qUX-UjXcS80StcSZahBFjrKLivXaRjiY5r2NOMKWMKFbv-S0Bz2G6iEXgCK8yGjtrFHDcPfAQEE0pvXq0Bwy34b7We8zARN&ali_ffmpeg_version=mpengine$LR•IPV4 -中国蓝新闻,http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 -中国蓝新闻,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 +中国蓝新闻,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路1』 +中国蓝新闻,http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路2』 东阳影视生活,http://l.cztvcloud.com/channels/lantian/SXdongyang1/720p.m3u8$LR•IPV4 上虞新闻综合,http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?zzhed$LR•IPV4•2『线路1』 上虞新闻综合,http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•2『线路2』 -上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路1』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 -上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路3』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路4』 -上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路5』 -上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路6』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路7』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路1』 +上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路3』 +上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路4』 +上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路5』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路6』 +上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路7』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-4.m3u8$LR•IPV4•11『线路8』 上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed?$LR•IPV4•11『线路9』 上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed\r\n$LR•IPV4•11『线路10』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-2.m3u8$LR•IPV4•11『线路11』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•10『线路1』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•10『线路2』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路3』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•10『线路4』 -上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•10『线路5』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路6』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•10『线路7』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•10『线路8』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•10『线路9』 -上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•10『线路10』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•10『线路1』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路2』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•10『线路3』 +上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•10『线路4』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路5』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•10『线路6』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•10『线路7』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•10『线路8』 +上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•10『线路9』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•10『线路10』 民生休闲,http://l.cztvcloud.com/channels/lantian/SXpinghu2/720p.m3u8$LR•IPV4•2『线路1』 民生休闲,http://l.cztvcloud.com/channels/lantian/SXpinghu2/720p.m3u8?zzhed$LR•IPV4•2『线路2』 @@ -1821,8 +1807,8 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 长沙新闻综合,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.m3u8$LR•IPV4•2『线路1』 长沙新闻综合,http://ls.qingting.fm/live/4877.m3u8$LR•IPV4•2『线路2』 长沙新闻,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4 -长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路1』 -长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路2』 +长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路1』 +长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路2』 长沙女性,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 衡阳新闻综合,https://liveplay-srs.voc.com.cn/hls/tv/183_554704.m3u8$LR•IPV4 @@ -2013,7 +1999,7 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 辽宁教育青少,http://120.76.248.139/live/bfgd/4200000075.m3u8$LR•IPV4 辽宁生活,http://120.76.248.139/live/bfgd/4200000073.m3u8$LR•IPV4 辽宁经济,http://120.76.248.139/live/bfgd/4200000076.m3u8$LR•IPV4 -辽宁都市,http://120.76.248.139/live/bfgd/4200000610.m3u8$LR•IPV4 +辽宁都市,https://ls.qingting.fm/live/1099/64k.m3u8$LR•IPV4 辽宁体育,http://dassby.qqff.top:99/live/辽宁体育/index.m3u8$LR•IPV4•3『线路1』 辽宁体育,http://120.76.248.139/live/bfgd/4200000611.m3u8$LR•IPV4•3『线路2』 辽宁体育,https://stream1.freetv.fun/liao-zhu-ti-yu-3.m3u8$LR•IPV4•3『线路3』 @@ -2350,10 +2336,9 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-13.ctv$LR•IPV4•55『线路53』 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-9.ctv$LR•IPV4•55『线路54』 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-2.m3u8$LR•IPV4•55『线路55』 -广东少儿,http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 -大湾区卫视,http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•3『线路1』 -大湾区卫视,http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•3『线路2』 -大湾区卫视,p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•3『线路3』 +大湾区卫视,http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•3『线路1』 +大湾区卫视,p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•3『线路2』 +大湾区卫视,http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•3『线路3』 广州综合,https://t.freetv.fun/live/yan-zhou-zong-he-1.m3u8$LR•IPV4•53『线路1』 广州综合,https://stream1.freetv.fun/yan-zhou-zong-he-17.ctv$LR•IPV4•53『线路2』 广州综合,https://tencentplay.gztv.com/live/zonghes.m3u8?txSecret=439b0fd2cf766b363c93a59cbcbe1370&txTime=18d00acf488$LR•IPV4•53『线路3』 @@ -2576,9 +2561,9 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 江门侨乡生活,http://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路2』 江门侨乡生活,http://120.77.205.62:8087/rtp/239.77.0.202:5146$LR•IPV4•4『线路3』 江门侨乡生活,http://120.77.205.62:8087/rtp/239.77.0.196:5146$LR•IPV4•4『线路4』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 -河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路2』 -河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路3』 +河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 +河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路2』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路3』 河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路4』 河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路5』 河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路6』 @@ -2753,13 +2738,14 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 广东新闻,https://stream1.freetv.fun/yan-dong-xin-wen-15.ctv$LR•IPV4•73『线路71』 广东新闻,http://116.77.239.26:44300/tsfile/live/0107_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•73『线路72』 广东新闻,https://stream1.freetv.fun/yan-dong-xin-wen-12.ctv$LR•IPV4•73『线路73』 -南国都市,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=59b2d3f371597c07d47815034a0e6e78&txTime=19019c65629$LR•IPV4•7『线路1』 -南国都市,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=c82f82d7a6beda92b2b1ce93753dcacb&txTime=18e4a381d46$LR•IPV4•7『线路2』 -南国都市,http://r.jdshipin.com/nWaZO$LR•IPV4•7『线路3』 -南国都市,https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=6594e9d5&txSecret=e783742d1233ae402ec4566b8537ca17$LR•IPV4•7『线路4』 -南国都市,https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=659a5130&txSecret=79b02fdfa77e39b5f5b86cd4bb848a0e$LR•IPV4•7『线路5』 -南国都市,http://tencentplaygzrb01.gztv.com/live/nanguodushi.m3u8$LR•IPV4•7『线路6』 -南国都市,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=627498b93bc6f5d6e2460d0823bf81a3&txTime=18e6df74fc2$LR•IPV4•7『线路7』 +南国都市,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=59b2d3f371597c07d47815034a0e6e78&txTime=19019c65629$LR•IPV4•8『线路1』 +南国都市,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=c82f82d7a6beda92b2b1ce93753dcacb&txTime=18e4a381d46$LR•IPV4•8『线路2』 +南国都市,http://r.jdshipin.com/nWaZO$LR•IPV4•8『线路3』 +南国都市,https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=6594e9d5&txSecret=e783742d1233ae402ec4566b8537ca17$LR•IPV4•8『线路4』 +南国都市,https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=659a5130&txSecret=79b02fdfa77e39b5f5b86cd4bb848a0e$LR•IPV4•8『线路5』 +南国都市,http://tencentplaygzrb01.gztv.com/live/nanguodushi.m3u8$LR•IPV4•8『线路6』 +南国都市,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=627498b93bc6f5d6e2460d0823bf81a3&txTime=18e6df74fc2$LR•IPV4•8『线路7』 +南国都市,http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•8『线路8』 上海,#genre# 上海都市,http://feiyang.ak47s.top:35455/itv/5000000010000018926.m3u8?cdn=bestzb$LR•IPV4•26『线路1』 @@ -2795,50 +2781,50 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路5』 上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路6』 上海外语,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路7』 -五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•44『线路1』 -五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路2』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路3』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路4』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路5』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路6』 -五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路7』 -五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路8』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路9』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路10』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路11』 -五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路12』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•44『线路13』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路14』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路15』 -五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路16』 -五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路17』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路18』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路19』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路20』 -五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•44『线路21』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路22』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路23』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路24』 -五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路25』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路26』 -五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路27』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路28』 -五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路29』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路30』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路31』 -五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路32』 -五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路33』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路34』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路35』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路36』 -五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路37』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路38』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路39』 -五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路40』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路41』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路42』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路43』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路44』 +五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路1』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•44『线路2』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•44『线路3』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路4』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路5』 +五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•44『线路6』 +五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•44『线路7』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路8』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•44『线路9』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路10』 +五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路11』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•44『线路12』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路13』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路14』 +五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•44『线路15』 +五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•44『线路16』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路17』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路18』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路19』 +五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•44『线路20』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•44『线路21』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•44『线路22』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•44『线路23』 +五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•44『线路24』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路25』 +五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•44『线路26』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•44『线路27』 +五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•44『线路28』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•44『线路29』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路30』 +五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•44『线路31』 +五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•44『线路32』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•44『线路33』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•44『线路34』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•44『线路35』 +五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•44『线路36』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•44『线路37』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•44『线路38』 +五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•44『线路39』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•44『线路40』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路41』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•44『线路42』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•44『线路43』 +五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•44『线路44』 东方影视,https://t.freetv.fun/live/dong-fang-ying-shi-3.m3u8$LR•IPV4•35『线路1』 东方影视,https://t.freetv.fun/live/dong-fang-ying-shi.m3u8$LR•IPV4•35『线路2』 东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•35『线路3』 @@ -2952,164 +2938,167 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 上海纪实,https://hls-gateway.vpstv.net/streams/709570.m3u8$LR•IPV4•10『线路8』 上海纪实,http://13457610200.8866.org:2018/live/上海纪实/index.m3u8$LR•IPV4•10『线路9』 上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-5.m3u8$LR•IPV4•10『线路10』 -新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•124『线路1』 -新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•124『线路2』 -新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•124『线路3』 -新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•124『线路4』 -新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•124『线路5』 -新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•124『线路6』 -新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•124『线路7』 -新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•124『线路8』 -新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•124『线路9』 -新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•124『线路10』 -新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•124『线路11』 -新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•124『线路12』 -新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•124『线路13』 -新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•124『线路14』 -新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•124『线路15』 -新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•124『线路16』 -新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•124『线路17』 -新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•124『线路18』 -新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•124『线路19』 -新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•124『线路20』 -新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•124『线路21』 -新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•124『线路22』 -新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•124『线路23』 -新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•124『线路24』 -新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•124『线路25』 -新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•124『线路26』 -新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•124『线路27』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•124『线路28』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•124『线路29』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•124『线路30』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路31』 -新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•124『线路32』 -新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•124『线路33』 -新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•124『线路34』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•124『线路35』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路36』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•124『线路37』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•124『线路38』 -新闻综合,http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=b53278f712f65771788d341e9c3dc5a0&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722062037&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=39.103.188.159&SecurityKey=20260722062037&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&puData=8b5db5d95c206fa3e43449798a9cdeb1&ddCalcu=18bbve5addwcba95ad89957c9240463f4ae3&sv=10004&ct=android$LR•IPV4•124『线路39』 -新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•124『线路40』 -新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•124『线路41』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•124『线路42』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•124『线路43』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•124『线路44』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•124『线路45』 -新闻综合,http://59.175.11.109:1234/651632657$LR•IPV4•124『线路46』 -新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•124『线路47』 -新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722080330&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722080330&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=095d4acaa910ed867d2a04f1124293cf&sv=10004&ct=android$LR•IPV4•124『线路48』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•124『线路49』 -新闻综合,http://119.88.243.98:17231/651632657$LR•IPV4•124『线路50』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•124『线路51』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•124『线路52』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•124『线路53』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•124『线路54』 -新闻综合,http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20251023080141ea171d5993054ddd94612bf653be3cfa&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20251023080141&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.83&SecurityKey=20251023080141&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=4757c0d2f0cd0feb69bcfc7ea14ddd49&ddCalcu=9447ed52d71dc0401da2ef70ccfdc0bf9e6b$LR•IPV4•124『线路55』 -新闻综合,https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路56』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•124『线路57』 -新闻综合,http://60.168.105.87:5008/651632657$LR•IPV4•124『线路58』 -新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•124『线路59』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路60』 -新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•124『线路61』 -新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•124『线路62』 -新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•124『线路63』 -新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•124『线路64』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•124『线路65』 -新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•124『线路66』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•124『线路67』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•124『线路68』 -新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•124『线路69』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路70』 -新闻综合,http://182.61.15.84:80/651632657$LR•IPV4•124『线路71』 -新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•124『线路72』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•124『线路73』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•124『线路74』 -新闻综合,http://116.52.173.134:1234/651632657$LR•IPV4•124『线路75』 -新闻综合,http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20250919080134d0a4f61e680b4d1b8d2460b858ff1fec&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=c6e37e6787e81aeb250c874ff8533137&ddCalcu=7c36e1e13313705e86f7f8477e88c10a5e2b$LR•IPV4•124『线路76』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•124『线路77』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•124『线路78』 -新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•124『线路79』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•124『线路80』 -新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•124『线路81』 -新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•124『线路82』 -新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•124『线路83』 -新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•124『线路84』 -新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•124『线路85』 -新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•124『线路86』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•124『线路87』 -新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•124『线路88』 -新闻综合,https://migu.188766.xyz/?migutoken=779bd2c7e2b23a37be54ec1b50771d47&id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&type=yy$LR•IPV4•124『线路89』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•124『线路90』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•124『线路91』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•124『线路92』 -新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722040328&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722040328&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=8d55a170b41ca441b1cc8e0b44df1555&sv=10004&ct=android$LR•IPV4•124『线路93』 -新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•124『线路94』 -新闻综合,https://iptv.catvod.com/migu?id=651632657&token=6ae14c419f6a0254b2b101892a90c635$LR•IPV4•124『线路95』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•124『线路96』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路97』 -新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•124『线路98』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•124『线路99』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•124『线路100』 -新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•124『线路101』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•124『线路102』 -新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•124『线路103』 -新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•124『线路104』 -新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•124『线路105』 -新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•124『线路106』 -新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8?zsicd$LR•IPV4•124『线路107』 -新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•124『线路108』 -新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•124『线路109』 -新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•124『线路110』 -新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•124『线路111』 -新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•124『线路112』 -新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•124『线路113』 -新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•124『线路114』 -新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•124『线路115』 -新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•124『线路116』 -新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•124『线路117』 -新闻综合,http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•124『线路118』 -新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•124『线路119』 -新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•124『线路120』 -新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•124『线路121』 -新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•124『线路122』 -新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•124『线路123』 -新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•124『线路124』 +新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•127『线路1』 +新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•127『线路2』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•127『线路3』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•127『线路4』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•127『线路5』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路6』 +新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•127『线路7』 +新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•127『线路8』 +新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•127『线路9』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•127『线路10』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路11』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•127『线路12』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•127『线路13』 +新闻综合,http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=b53278f712f65771788d341e9c3dc5a0&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722062037&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=39.103.188.159&SecurityKey=20260722062037&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&puData=8b5db5d95c206fa3e43449798a9cdeb1&ddCalcu=18bbve5addwcba95ad89957c9240463f4ae3&sv=10004&ct=android$LR•IPV4•127『线路14』 +新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•127『线路15』 +新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•127『线路16』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•127『线路17』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•127『线路18』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•127『线路19』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•127『线路20』 +新闻综合,http://59.175.11.109:1234/651632657$LR•IPV4•127『线路21』 +新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•127『线路22』 +新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722080330&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722080330&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=095d4acaa910ed867d2a04f1124293cf&sv=10004&ct=android$LR•IPV4•127『线路23』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•127『线路24』 +新闻综合,http://119.88.243.98:17231/651632657$LR•IPV4•127『线路25』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•127『线路26』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•127『线路27』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•127『线路28』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•127『线路29』 +新闻综合,http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20251023080141ea171d5993054ddd94612bf653be3cfa&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20251023080141&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.83&SecurityKey=20251023080141&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=4757c0d2f0cd0feb69bcfc7ea14ddd49&ddCalcu=9447ed52d71dc0401da2ef70ccfdc0bf9e6b$LR•IPV4•127『线路30』 +新闻综合,https://t.freetv.fun/live/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路31』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•127『线路32』 +新闻综合,http://60.168.105.87:5008/651632657$LR•IPV4•127『线路33』 +新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•127『线路34』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路35』 +新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•127『线路36』 +新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•127『线路37』 +新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•127『线路38』 +新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•127『线路39』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•127『线路40』 +新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•127『线路41』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•127『线路42』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•127『线路43』 +新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•127『线路44』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路45』 +新闻综合,http://182.61.15.84:80/651632657$LR•IPV4•127『线路46』 +新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•127『线路47』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•127『线路48』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•127『线路49』 +新闻综合,http://116.52.173.134:1234/651632657$LR•IPV4•127『线路50』 +新闻综合,http://gslbmgsplive.miguvideo.com/wd_r4/dfl/xinwenzonghehd/1200/index.m3u8?msisdn=20250919080134d0a4f61e680b4d1b8d2460b858ff1fec&mdspid=&spid=699212&netType=0&sid=5500002275&pid=2028597139×tamp=20250919080134&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=651632657&ParentNodeID=-99&assertID=5500002275&client_ip=106.13.250.88&SecurityKey=20250919080134&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=c6e37e6787e81aeb250c874ff8533137&ddCalcu=7c36e1e13313705e86f7f8477e88c10a5e2b$LR•IPV4•127『线路51』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•127『线路52』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•127『线路53』 +新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•127『线路54』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•127『线路55』 +新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•127『线路56』 +新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•127『线路57』 +新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•127『线路58』 +新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•127『线路59』 +新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•127『线路60』 +新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•127『线路61』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•127『线路62』 +新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•127『线路63』 +新闻综合,https://migu.188766.xyz/?migutoken=779bd2c7e2b23a37be54ec1b50771d47&id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&type=yy$LR•IPV4•127『线路64』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•127『线路65』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•127『线路66』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•127『线路67』 +新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260722040328&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260722040328&promotionId=&mvid=5100001716&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h265&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=8d55a170b41ca441b1cc8e0b44df1555&sv=10004&ct=android$LR•IPV4•127『线路68』 +新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•127『线路69』 +新闻综合,https://iptv.catvod.com/migu?id=651632657&token=6ae14c419f6a0254b2b101892a90c635$LR•IPV4•127『线路70』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•127『线路71』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路72』 +新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•127『线路73』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•127『线路74』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•127『线路75』 +新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•127『线路76』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•127『线路77』 +新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•127『线路78』 +新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•127『线路79』 +新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•127『线路80』 +新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•127『线路81』 +新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•127『线路82』 +新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•127『线路83』 +新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•127『线路84』 +新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•127『线路85』 +新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•127『线路86』 +新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•127『线路87』 +新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•127『线路88』 +新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•127『线路89』 +新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•127『线路90』 +新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•127『线路91』 +新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•127『线路92』 +新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•127『线路93』 +新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•127『线路94』 +新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•127『线路95』 +新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•127『线路96』 +新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•127『线路97』 +新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•127『线路98』 +新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•127『线路99』 +新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•127『线路100』 +新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•127『线路101』 +新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•127『线路102』 +新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•127『线路103』 +新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•127『线路104』 +新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•127『线路105』 +新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•127『线路106』 +新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•127『线路107』 +新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•127『线路108』 +新闻综合,https://m3u8channel.ganzitv.com/nmip-media/channellive/channel1/playlist.m3u8$LR•IPV4•127『线路109』 +新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•127『线路110』 +新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•127『线路111』 +新闻综合,http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•127『线路112』 +新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•127『线路113』 +新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8?zanhd$LR•IPV4•127『线路114』 +新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•127『线路115』 +新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•127『线路116』 +新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•127『线路117』 +新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•127『线路118』 +新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•127『线路119』 +新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•127『线路120』 +新闻综合,http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•127『线路121』 +新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•127『线路122』 +新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•127『线路123』 +新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•127『线路124』 +新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•127『线路125』 +新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•127『线路126』 +新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•127『线路127』 陕西,#genre# 西安新闻,http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 西安新闻,http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路2』 山东,#genre# -山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 -山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路3』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路4』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路5』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路6』 -山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路8』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路9』 -山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路10』 -山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路11』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路12』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路13』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路14』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路15』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路16』 -山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路2』 -山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路3』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路4』 -山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路5』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路6』 -山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 -山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路9』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路10』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路11』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路12』 +山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路1』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路2』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路4』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路5』 +山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路7』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路8』 +山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路9』 +山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路10』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路11』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路12』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路13』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路14』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路15』 +山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路1』 +山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路2』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路3』 +山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路4』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路5』 +山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路8』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路9』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路10』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路11』 +山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 山东教育,http://121.19.134.222:808/tsfile/live/1033_1.m3u8$LR•IPV4•22『线路1』 山东教育,https://iptv.catvod.com/migu?id=609154353&token=cb79b390056a6bbef5521541d10629eb$LR•IPV4•22『线路2』 山东教育,http://120.238.94.10:9901/tsfile/live/1062_1.m3u8$LR•IPV4•22『线路3』 @@ -3132,32 +3121,32 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 山东教育,https://migu.188766.xyz/?migutoken=1134813ab83db9f651ce86515f06b7c5&id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&type=yy$LR•IPV4•22『线路20』 山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•22『线路21』 山东教育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_SDETV$LR•IPV4•22『线路22』 -山东农科,http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路1』 -山东农科,http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路2』 -山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路1』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路2』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路4』 -山东齐鲁,http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路5』 -山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 -山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路10』 -山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 -山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路2』 -山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 -山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路4』 -山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路5』 -山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路6』 -山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路7』 -山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 -山东体育,http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路2』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路3』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路4』 -山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路5』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-19.m3u8$LR•IPV4•37『线路6』 -山东体育,http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路7』 +山东农科,http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路1』 +山东农科,http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路2』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路1』 +山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路2』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路3』 +山东齐鲁,http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路4』 +山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 +山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 +山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 +山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路8』 +山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 +山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 +山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路1』 +山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路2』 +山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 +山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路4』 +山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路5』 +山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路6』 +山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +山东体育,http://221.2.148.205:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路1』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-10.m3u8$LR•IPV4•37『线路2』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-1.m3u8$LR•IPV4•37『线路3』 +山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路4』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-19.m3u8$LR•IPV4•37『线路5』 +山东体育,http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路6』 +山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路7』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-18.m3u8$LR•IPV4•37『线路8』 山东体育,http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•37『线路9』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-26.m3u8$LR•IPV4•37『线路10』 @@ -3188,12 +3177,12 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-12.m3u8$LR•IPV4•37『线路35』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-6.m3u8$LR•IPV4•37『线路36』 山东体育,http://58.57.40.22:9901/tsfile/live/1020_1.m3u8$LR•IPV4•37『线路37』 -山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 -山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路2』 -山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路3』 -山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路4』 -山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路5』 -山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路6』 +山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 +山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路2』 +山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路3』 +山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路4』 +山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路5』 +山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 山东文旅,http://60.209.125.254:352/tsfile/live/1004_1.m3u8?ace$LR•IPV4•3『线路1』 山东文旅,http://221.2.148.205:8154/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•3『线路2』 山东文旅,http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路3』 @@ -3215,41 +3204,42 @@ NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f7 港澳台,#genre# 凤凰中文,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1』 凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 -凤凰中文,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 -凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 -凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 -凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 +凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路3』 +凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路4』 +凤凰中文,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路5』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路6』 +凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路7』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路8』 凤凰资讯,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 -凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 -凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 -凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 -凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 -凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 -凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 -凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 -凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路1』 -凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路2』 -凤凰香港,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路3』 -凤凰香港,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路4』 -凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路5』 -凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路6』 -凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路7』 -凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路8』 -TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•11『线路1』 -TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•11『线路2』 -TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•11『线路3』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•11『线路4』 -TVB翡翠台,p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•11『线路5』 -TVB翡翠台,https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•11『线路6』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•11『线路7』 -TVB翡翠台,http://r.jdshipin.com/GeWKr$LR•IPV4•11『线路8』 -TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•11『线路9』 -TVB翡翠台,https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•11『线路10』 -TVB翡翠台,http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•11『线路11』 +凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路2』 +凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路3』 +凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路4』 +凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路5』 +凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路6』 +凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路7』 +凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路9』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路10』 +凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路1』 +凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路2』 +凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路3』 +凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路4』 +凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路5』 +凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路6』 +凤凰香港,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路7』 +凤凰香港,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路8』 +TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•12『线路1』 +TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•12『线路2』 +TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•12『线路3』 +TVB翡翠台,http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•12『线路4』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•12『线路5』 +TVB翡翠台,p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•12『线路6』 +TVB翡翠台,https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•12『线路7』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•12『线路8』 +TVB翡翠台,http://r.jdshipin.com/qClQf$LR•IPV4•12『线路9』 +TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=j1$LR•IPV4•12『线路10』 +TVB翡翠台,https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•12『线路11』 +TVB翡翠台,http://cdn6.163189.xyz/163189/fct4k$LR•IPV4•12『线路12』 TVB明珠台,http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•5『线路1』 TVB明珠台,https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•5『线路2』 TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•5『线路3』 @@ -3268,38 +3258,38 @@ TVB星河,http://r.jdshipin.com/Voac4$LR•IPV4•5『线路3』 TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•5『线路4』 TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•5『线路5』 TVBS,http://38.64.72.148/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路1』 -TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 -TVBS,http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 -TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路4』 -TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 -TVBS,http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 -TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 -TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 -TVBS,http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 -TVBS,http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 -TVBS,http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 -TVBS,p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 -TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 -台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路1』 -台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路2』 -台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路3』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路4』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路5』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路6』 -台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路7』 -台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路8』 -台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路9』 +TVBS,http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路2』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路3』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路4』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路5』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路6』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路7』 +TVBS,http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路8』 +TVBS,http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路9』 +TVBS,http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路10』 +TVBS,p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路11』 +TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路12』 +TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路13』 +台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路1』 +台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路2』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路3』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路4』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路5』 +台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路6』 +台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路7』 +台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路8』 +台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路9』 台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路10』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路1』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路2』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路3』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路4』 -耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路1』 +耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路2』 耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 -美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 -美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路2』 -美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路3』 +美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路1』 +美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路2』 +美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路3』 数位电影,p3p://167.114.175.6:55331/6223ae1b0007136f3e5c44280e3300fa$LR•IPV4 龙华偶像,http://cdn8.163189.xyz/163189/lhox$LR•IPV4•3『线路1』 龙华偶像,p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•3『线路2』 @@ -3345,73 +3335,73 @@ TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13 东森新闻,http://38.64.72.148:80/hls/modn/list/2015/chunklist0.m3u8$LR•IPV4 PopC,p3p://167.114.175.6:55331/663e9212000a54b4285005cd59217563$LR•IPV4 tvN,http://210.210.155.37/dr9445/h/h21/index.m3u8$LR•IPV4•6『线路1』 -tvN,http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路2』 -tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路3』 -tvN,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路4』 -tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路5』 -tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路6』 +tvN,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路2』 +tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路3』 +tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路4』 +tvN,http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路5』 +tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路6』 華視,http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 DW,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•8『线路1』 -DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路2』 -DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路3』 -DW,http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路4』 -DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路5』 -DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路6』 -DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路7』 -DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路8』 +DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路2』 +DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路3』 +DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路4』 +DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路5』 +DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路6』 +DW,http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路7』 +DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路8』 France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路1』 France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路2』 France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路3』 France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路4』 France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•5『线路5』 KIX,http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 -KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 -KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 -NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路1』 -NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路2』 -NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路3』 -Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•13『线路1』 -Nick Jr,https://aes.m3u8simplu.workers.dev/nickjr/index.m3u8$LR•IPV4•13『线路2』 -Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•13『线路3』 -Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•13『线路4』 -Nick Jr,https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•13『线路5』 -Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•13『线路6』 -Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•13『线路7』 -Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•13『线路8』 -Nick Jr,http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•13『线路9』 -Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•13『线路10』 -Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•13『线路11』 -Nick Jr,http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•13『线路12』 -Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•13『线路13』 -Nickelodeon,http://213.91.179.28:8000/play/a056$LR•IPV4•29『线路1』 -Nickelodeon,https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•29『线路2』 -Nickelodeon,http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•29『线路3』 -Nickelodeon,http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•29『线路4』 -Nickelodeon,http://193.239.186.231/NICK/index.m3u8$LR•IPV4•29『线路5』 -Nickelodeon,https://aes.m3u8simplu.workers.dev/nickelodeon/index.m3u8$LR•IPV4•29『线路6』 -Nickelodeon,http://stream.mcquack.net/443/index.m3u8$LR•IPV4•29『线路7』 -Nickelodeon,http://tvsen7.aynascope.net/nicklodean/index.m3u8$LR•IPV4•29『线路8』 -Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•29『线路9』 -Nickelodeon,http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•29『线路10』 -Nickelodeon,https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•29『线路11』 -Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•29『线路12』 -Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•29『线路13』 -Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•29『线路14』 -Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•29『线路15』 -Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•29『线路16』 -Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•29『线路17』 -Nickelodeon,http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•29『线路18』 -Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•29『线路19』 -Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•29『线路20』 -Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•29『线路21』 -Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•29『线路22』 -Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•29『线路23』 -Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•29『线路24』 -Nickelodeon,http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•29『线路25』 -Nickelodeon,https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•29『线路26』 -Nickelodeon,https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•29『线路27』 -Nickelodeon,https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•29『线路28』 -Nickelodeon,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•29『线路29』 +KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 +KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 +NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路1』 +NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路2』 +NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路3』 +Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•13『线路1』 +Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•13『线路2』 +Nick Jr,https://aes.m3u8simplu.workers.dev/nickjr/index.m3u8$LR•IPV4•13『线路3』 +Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•13『线路4』 +Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•13『线路5』 +Nick Jr,https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•13『线路6』 +Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•13『线路7』 +Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•13『线路8』 +Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•13『线路9』 +Nick Jr,http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•13『线路10』 +Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•13『线路11』 +Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•13『线路12』 +Nick Jr,http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•13『线路13』 +Nickelodeon,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•29『线路1』 +Nickelodeon,http://213.91.179.28:8000/play/a056$LR•IPV4•29『线路2』 +Nickelodeon,https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•29『线路3』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•29『线路4』 +Nickelodeon,http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•29『线路5』 +Nickelodeon,http://193.239.186.231/NICK/index.m3u8$LR•IPV4•29『线路6』 +Nickelodeon,https://aes.m3u8simplu.workers.dev/nickelodeon/index.m3u8$LR•IPV4•29『线路7』 +Nickelodeon,http://stream.mcquack.net/443/index.m3u8$LR•IPV4•29『线路8』 +Nickelodeon,http://tvsen7.aynascope.net/nicklodean/index.m3u8$LR•IPV4•29『线路9』 +Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•29『线路10』 +Nickelodeon,http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•29『线路11』 +Nickelodeon,https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•29『线路12』 +Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•29『线路13』 +Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•29『线路14』 +Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•29『线路15』 +Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•29『线路16』 +Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•29『线路17』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•29『线路18』 +Nickelodeon,http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•29『线路19』 +Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•29『线路20』 +Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•29『线路21』 +Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•29『线路22』 +Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•29『线路23』 +Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•29『线路24』 +Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•29『线路25』 +Nickelodeon,http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•29『线路26』 +Nickelodeon,https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•29『线路27』 +Nickelodeon,https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•29『线路28』 +Nickelodeon,https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•29『线路29』 Thrill,https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4 ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 华视,http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•5『线路1』 @@ -3435,12 +3425,12 @@ ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 美亚电影台,p3p://167.114.175.6:55331/655f8ccc0007d2578e70f934113a2428$LR•IPV4•2『线路1』 美亚电影台,p3p://167.114.175.6:55331/64c3653f0007f6812c7970122ff43531$LR•IPV4•2『线路2』 年代新闻,p3p://167.114.175.6:55331/5fe09fec000ac0127462c4ac6b1f16a3$LR•IPV4 -人间卫视,http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u$LR•IPV4•3『线路1』 -人间卫视,http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u8$LR•IPV4•3『线路2』 -人间卫视,https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/chunklist_w511254805.m3u8$LR•IPV4•3『线路3』 +人间卫视,http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u8$LR•IPV4•3『线路1』 +人间卫视,https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/chunklist_w511254805.m3u8$LR•IPV4•3『线路2』 +人间卫视,http://61.216.67.119:1935/bltvhd/bltv1/chunklist_w1266569526.m3u$LR•IPV4•3『线路3』 三立戏剧,http://61.221.215.25:8800/hls/41/index.m3u8$LR•IPV4 -凤凰卫视,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•2『线路1』 -凤凰卫视,p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线路2』 +凤凰卫视,p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线路1』 +凤凰卫视,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•2『线路2』 Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4 Now剧集,p3p://167.114.175.6:55331/63ed3e1500077d30e7f449055a0846ce$LR•IPV4 民视,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV17.m3u8$LR•IPV4•2『线路1』 @@ -3484,37 +3474,37 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist0.m3u8$LR•IPV4•3『线路1』 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8$LR•IPV4•3『线路2』 东森超视,rtmp://f13h.mine.nu/sat/tv331$LR•IPV4•3『线路3』 -ROCK Action,http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路1』 -ROCK Action,p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路2』 -TVB Plus,http://r.jdshipin.com/Nr5jq$LR•IPV4•4『线路1』 -TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•4『线路2』 -TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线路3』 -TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路4』 -AXN,http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•25『线路1』 -AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路2』 -AXN,http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•25『线路3』 -AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路4』 -AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路5』 -AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路6』 -AXN,https://aes.m3u8simplu.workers.dev/axnblack/index.m3u8$LR•IPV4•25『线路7』 -AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路8』 -AXN,http://85.11.144.9:4222/AXN$LR•IPV4•25『线路9』 -AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路10』 -AXN,https://aes.m3u8simplu.workers.dev/axn/index.m3u8$LR•IPV4•25『线路11』 -AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•25『线路12』 -AXN,http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•25『线路13』 -AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•25『线路14』 -AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路15』 -AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路16』 -AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路17』 -AXN,https://aes.m3u8simplu.workers.dev/axnspin/index.m3u8$LR•IPV4•25『线路18』 -AXN,https://aes.m3u8simplu.workers.dev/axnwhite/index.m3u8$LR•IPV4•25『线路19』 -AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路20』 -AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路21』 -AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路22』 -AXN,http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•25『线路23』 -AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路24』 -AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路25』 +ROCK Action,p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路1』 +ROCK Action,http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路2』 +TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•4『线路1』 +TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线路2』 +TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路3』 +TVB Plus,http://r.jdshipin.com/ndGgS$LR•IPV4•4『线路4』 +AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路1』 +AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路2』 +AXN,http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•25『线路3』 +AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路4』 +AXN,http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•25『线路5』 +AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路6』 +AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路7』 +AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路8』 +AXN,https://aes.m3u8simplu.workers.dev/axnblack/index.m3u8$LR•IPV4•25『线路9』 +AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路10』 +AXN,http://85.11.144.9:4222/AXN$LR•IPV4•25『线路11』 +AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路12』 +AXN,https://aes.m3u8simplu.workers.dev/axn/index.m3u8$LR•IPV4•25『线路13』 +AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•25『线路14』 +AXN,http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•25『线路15』 +AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•25『线路16』 +AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路17』 +AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路18』 +AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路19』 +AXN,https://aes.m3u8simplu.workers.dev/axnspin/index.m3u8$LR•IPV4•25『线路20』 +AXN,https://aes.m3u8simplu.workers.dev/axnwhite/index.m3u8$LR•IPV4•25『线路21』 +AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路22』 +AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路23』 +AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路24』 +AXN,http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•25『线路25』 娱乐新闻,https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4 澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 澳门卫视,http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路2』 @@ -3529,43 +3519,43 @@ Celestial Movies,http://103.58.160.157:8278/720-CELESTIALMOVIES/playlist.m3u8$LR TVB News,p3p://167.114.175.6:55331/63efe2a100034c82f2470ad419e43975$LR•IPV4 Good,https://live.streamingfast.net/osmflivech1.m3u8$LR•IPV4•39『线路1』 Good,https://live.streamingfast.net/osmflivech2.m3u8$LR•IPV4•39『线路2』 -Good,https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•39『线路3』 -Good,http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•39『线路4』 -Good,https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•39『线路5』 -Good,https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•39『线路6』 -Good,https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•39『线路7』 -Good,https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•39『线路8』 -Good,https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•39『线路9』 -Good,https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•39『线路10』 -Good,https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•39『线路11』 -Good,https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•39『线路12』 -Good,https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•39『线路13』 -Good,https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•39『线路14』 -Good,https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•39『线路15』 -Good,https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•39『线路16』 -Good,https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•39『线路17』 -Good,https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•39『线路18』 -Good,https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•39『线路19』 -Good,https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•39『线路20』 -Good,https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•39『线路21』 -Good,https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•39『线路22』 -Good,https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•39『线路23』 -Good,https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•39『线路24』 -Good,https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•39『线路25』 -Good,https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•39『线路26』 -Good,https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•39『线路27』 -Good,https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•39『线路28』 -Good,https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•39『线路29』 -Good,https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•39『线路30』 -Good,https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•39『线路31』 -Good,https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•39『线路32』 -Good,https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•39『线路33』 -Good,https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•39『线路34』 -Good,http://stream.mcquack.net/47/index.m3u8$LR•IPV4•39『线路35』 -Good,https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•39『线路36』 -Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•39『线路37』 -Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•39『线路38』 -Good,p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•39『线路39』 +Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•39『线路3』 +Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•39『线路4』 +Good,p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•39『线路5』 +Good,https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•39『线路6』 +Good,http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•39『线路7』 +Good,https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•39『线路8』 +Good,https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•39『线路9』 +Good,https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•39『线路10』 +Good,https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•39『线路11』 +Good,https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•39『线路12』 +Good,https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•39『线路13』 +Good,https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•39『线路14』 +Good,https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•39『线路15』 +Good,https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•39『线路16』 +Good,https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•39『线路17』 +Good,https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•39『线路18』 +Good,https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•39『线路19』 +Good,https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•39『线路20』 +Good,https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•39『线路21』 +Good,https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•39『线路22』 +Good,https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•39『线路23』 +Good,https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•39『线路24』 +Good,https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•39『线路25』 +Good,https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•39『线路26』 +Good,https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•39『线路27』 +Good,https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•39『线路28』 +Good,https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•39『线路29』 +Good,https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•39『线路30』 +Good,https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•39『线路31』 +Good,https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•39『线路32』 +Good,https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•39『线路33』 +Good,https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•39『线路34』 +Good,https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•39『线路35』 +Good,https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•39『线路36』 +Good,https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•39『线路37』 +Good,http://stream.mcquack.net/47/index.m3u8$LR•IPV4•39『线路38』 +Good,https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•39『线路39』 Beautiful Life TV,https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/playlist.m3u8$LR•IPV4 Supreme Master TV,https://lbs-us1.suprememastertv.com/720p.m3u8$LR•IPV4 Taiwan Plus TV,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV78.m3u8$LR•IPV4•2『线路1』 @@ -3606,9 +3596,8 @@ KPop,https://cloud.tvomix.com/KPOPMIX/index.m3u8$LR•IPV4•5『线路2』 KPop,https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=USAJ3000013FJ&channel_id=newid_338&tp=samsung_tvplus$LR•IPV4•5『线路3』 KPop,https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=GB17000088V&channel_id=newid_086&tp=samsung_tvplus$LR•IPV4•5『线路4』 KPop,https://lotus.stingray.com/manifest/ose-317ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•5『线路5』 -HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 -HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路2』 -HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路3』 +HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•2『线路1』 +HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•2『线路2』 MOMOTV,rtmp://f13h.mine.nu/sat/tv761$LR•IPV4 大爱1,p3p://167.114.175.6:55331/63ed9fff00076875e972c31c79f4152e$LR•IPV4 大爱2,p3p://167.114.175.6:55331/63eda04a0001f6fae973e6a334696980$LR•IPV4 @@ -3644,12 +3633,12 @@ Xite Hits,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36 Xite Hits,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•3『线路3』 Xite Rock,https://d198ro05q94rc4.cloudfront.net/XITE_Rock_On.m3u8$LR•IPV4 FIGHT SPORTS,p3p://167.114.175.6:55331/65a4480e000eb9449aeb1d5a33663b73$LR•IPV4 -NBA TV,https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•6『线路1』 -NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路2』 -NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路3』 -NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路4』 -NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路5』 -NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路6』 +NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路1』 +NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路2』 +NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路3』 +NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路4』 +NBA TV,https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•6『线路5』 +NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路6』 Sukan,https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 TV9,https://cdn4.skygo.mn/live/disk1/TV9HD/DASH-FTA/TV9HD.mpd$LR•IPV4•11『线路1』 TV9,https://dyjmyiv3bp2ez.cloudfront.net/pub-iotv9banaen8yq/liveabr/playlist.m3u8$LR•IPV4•11『线路2』 @@ -3664,108 +3653,108 @@ TV9,https://dash4.antik.sk/live/test_tv9/playlist.m3u8$LR•IPV4•11『线路10 TV9,https://5bf7b725107e5.streamlock.net/tv9/tv9/playlist.m3u8$LR•IPV4•11『线路11』 BBC,https://vs-hls-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/t=3840/v=pv14/b=5070016/main.m3u8$LR•IPV4•98『线路1』 BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•98『线路2』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路3』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路4』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路5』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•98『线路6』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路7』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路8』 -BBC,https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路9』 -BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•98『线路10』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路11』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路12』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路13』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路14』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路15』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路16』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路17』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路18』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•98『线路19』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路20』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路21』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路22』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路23』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路24』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•98『线路25』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路26』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路27』 -BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•98『线路28』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路29』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路30』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路31』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路32』 -BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•98『线路33』 -BBC,https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路34』 -BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•98『线路35』 -BBC,https://gpuserver3.tier1streams.com/BBC_WORLD_NEWS/index.m3u8$LR•IPV4•98『线路36』 -BBC,http://45.153.96.44:8001$LR•IPV4•98『线路37』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路38』 -BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•98『线路39』 -BBC,https://gpuserver3.tier1streams.com/BBC_AMERICA/index.m3u8$LR•IPV4•98『线路40』 -BBC,http://91.146.94.234:10001/play/a087$LR•IPV4•98『线路41』 -BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路42』 -BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•98『线路43』 -BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路44』 -BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•98『线路45』 -BBC,https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路46』 -BBC,https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路47』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路48』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路49』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路50』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路51』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路52』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路53』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路54』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路55』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路56』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路57』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路58』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路59』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路60』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路61』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路62』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路63』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路64』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路65』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路66』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路67』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路68』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路69』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路70』 -BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•98『线路71』 -BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•98『线路72』 -BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•98『线路73』 -BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路74』 -BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路75』 -BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路76』 -BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路77』 -BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路78』 -BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路79』 -BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•98『线路80』 -BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路81』 -BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路82』 -BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•98『线路83』 -BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•98『线路84』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•98『线路85』 -BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•98『线路86』 -BBC,https://aes.m3u8simplu.workers.dev/bbcearth/index.m3u8$LR•IPV4•98『线路87』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路88』 -BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路89』 -BBC,https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路90』 -BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•98『线路91』 -BBC,http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•98『线路92』 -BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•98『线路93』 -BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•98『线路94』 -BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•98『线路95』 -BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•98『线路96』 -BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•98『线路97』 -BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•98『线路98』 +BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•98『线路3』 +BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•98『线路4』 +BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•98『线路5』 +BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•98『线路6』 +BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•98『线路7』 +BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•98『线路8』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路9』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路10』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路11』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•98『线路12』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路13』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路14』 +BBC,https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路15』 +BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•98『线路16』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路17』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路18』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路19』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路20』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路21』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路22』 +BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路23』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路24』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•98『线路25』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•98『线路26』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路27』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•98『线路28』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•98『线路29』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•98『线路30』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•98『线路31』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路32』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路33』 +BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•98『线路34』 +BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•98『线路35』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路36』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路37』 +BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路38』 +BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•98『线路39』 +BBC,https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路40』 +BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•98『线路41』 +BBC,https://gpuserver3.tier1streams.com/BBC_WORLD_NEWS/index.m3u8$LR•IPV4•98『线路42』 +BBC,http://45.153.96.44:8001$LR•IPV4•98『线路43』 +BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•98『线路44』 +BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•98『线路45』 +BBC,https://gpuserver3.tier1streams.com/BBC_AMERICA/index.m3u8$LR•IPV4•98『线路46』 +BBC,http://91.146.94.234:10001/play/a087$LR•IPV4•98『线路47』 +BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路48』 +BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•98『线路49』 +BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路50』 +BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•98『线路51』 +BBC,https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•98『线路52』 +BBC,https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路53』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路54』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路55』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路56』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路57』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路58』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路59』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路60』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路61』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路62』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路63』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路64』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路65』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路66』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路67』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路68』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路69』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路70』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路71』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路72』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路73』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路74』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路75』 +BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路76』 +BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•98『线路77』 +BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•98『线路78』 +BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•98『线路79』 +BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路80』 +BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路81』 +BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路82』 +BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路83』 +BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路84』 +BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路85』 +BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•98『线路86』 +BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•98『线路87』 +BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路88』 +BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•98『线路89』 +BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•98『线路90』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•98『线路91』 +BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•98『线路92』 +BBC,https://aes.m3u8simplu.workers.dev/bbcearth/index.m3u8$LR•IPV4•98『线路93』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路94』 +BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•98『线路95』 +BBC,https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•98『线路96』 +BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•98『线路97』 +BBC,http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•98『线路98』 CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路1』 -CNA,https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路2』 -CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路3』 -CNA,https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路4』 -CNA,https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 -CNA,http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路6』 +CNA,http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路2』 +CNA,https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路3』 +CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路4』 +CNA,https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路5』 +CNA,https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路6』 CNN,https://turnerlive.warnermediacdn.com/hls/live/586495/cnngo/cnn_slate/VIDEO_0_3564000.m3u8$LR•IPV4•11『线路1』 CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路2』 CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路3』 @@ -3816,31 +3805,31 @@ TRT World,https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IP Bloomberg Originals,https://e96a7526.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ09yaWdpbmFsc19ITFM/playlist.m3u8$LR•IPV4•3『线路1』 Bloomberg Originals,https://86fdc85a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctZ2JfQmxvb21iZXJnT3JpZ2luYWxzX0hMUw/playlist.m3u8$LR•IPV4•3『线路2』 Bloomberg Originals,https://bloomberg.com/media-manifest/streams/qt.m3u8$LR•IPV4•3『线路3』 -Fashion TV,https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路1』 -Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路2』 -SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•23『线路1』 -SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•23『线路2』 -SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•23『线路3』 -SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•23『线路4』 -SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•23『线路5』 -SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•23『线路6』 -SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•23『线路7』 -SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•23『线路8』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•23『线路9』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•23『线路10』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•23『线路11』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•23『线路12』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•23『线路13』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•23『线路14』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•23『线路15』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•23『线路16』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•23『线路17』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•23『线路18』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•23『线路19』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•23『线路20』 -SKY,http://vocotv.pro//revol/revol/276918$LR•IPV4•23『线路21』 -SKY,http://vocotv.pro//revol/revol/276924$LR•IPV4•23『线路22』 -SKY,http://vocotv.pro//revol/revol/276906$LR•IPV4•23『线路23』 +Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路1』 +Fashion TV,https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路2』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•23『线路1』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•23『线路2』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•23『线路3』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•23『线路4』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•23『线路5』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•23『线路6』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•23『线路7』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•23『线路8』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•23『线路9』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•23『线路10』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•23『线路11』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•23『线路12』 +SKY,http://vocotv.pro//revol/revol/276918$LR•IPV4•23『线路13』 +SKY,http://vocotv.pro//revol/revol/276924$LR•IPV4•23『线路14』 +SKY,http://vocotv.pro//revol/revol/276906$LR•IPV4•23『线路15』 +SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•23『线路16』 +SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•23『线路17』 +SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•23『线路18』 +SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•23『线路19』 +SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•23『线路20』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•23『线路21』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•23『线路22』 +SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•23『线路23』 KBS world,http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4 FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•9『线路1』 FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•9『线路2』 @@ -3852,13 +3841,13 @@ FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/ FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/v1/sysdata_s_p_a_fifa_7/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•9『线路8』 FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•9『线路9』 Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路1』 -Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路2』 -Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路3』 -Newsmax,https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路4』 -Newsmax,https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路5』 -Newsmax,http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路6』 -Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路7』 -Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 +Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路2』 +Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路3』 +Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路4』 +Newsmax,https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路5』 +Newsmax,https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路6』 +Newsmax,http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路7』 +Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 CBN News,https://fastly.live.brightcove.com/6380396819112/us-east-1/734546207001/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJob3N0IjoiczFpM3ZpLmVncmVzcy50N2M3emwiLCJhY2NvdW50X2lkIjoiNzM0NTQ2MjA3MDAxIiwiZWhuIjoiZmFzdGx5LmxpdmUuYnJpZ2h0Y292ZS5jb20iLCJpc3MiOiJibGl2ZS1wbGF5YmFjay1zb3VyY2UtYXBpIiwic3ViIjoicGF0aG1hcHRva2VuIiwiYXVkIjpbIjczNDU0NjIwNzAwMSJdLCJqdGkiOiI2MzgwMzk2ODE5MTEyIn0.GDYp4IWtzwPkupEWeeOavnioVknO-Ev3UGlHvM1rE6I/playlist-hls.m3u8$LR•IPV4 GB News,https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路1』 GB News,https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路2』 @@ -3869,13 +3858,13 @@ ION,https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•5『线路2 ION,https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•5『线路3』 ION,https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•5『线路4』 ION,https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•5『线路5』 -Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路1』 -Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路2』 -Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路3』 -Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路4』 -Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路5』 -Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路6』 -Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路7』 +Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路1』 +Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路2』 +Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路3』 +Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路4』 +Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路5』 +Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路6』 +Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路7』 Fight Network,https://d12a2vxqkkh1bo.cloudfront.net/hls/main.m3u8$LR•IPV4 Wild Earth,https://wildearth-plex.amagi.tv/masterR1080p.m3u8$LR•IPV4 Clarity 4K,https://pb-qyrvophnifz47.akamaized.net/Clarity_4K.m3u8$LR•IPV4 @@ -3925,38 +3914,38 @@ MovieSphere,https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/pla MovieSphere,https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路4』 MovieSphere,https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路5』 香港国际财经,p3p://167.114.175.6:55331/64838620000cd8ed32fb0d6a414411f7$LR•IPV4 -Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路1』 -Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路2』 -Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路3』 -Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路4』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路5』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路6』 -Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路7』 -Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路8』 -Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路9』 -Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路10』 -Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路11』 -Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路12』 -Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路13』 -Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路14』 -Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路15』 -Bloomberg,https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路16』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路1』 -CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路2』 -CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路3』 -CNBC,https://gpuserver3.tier1streams.com/CNBC/index.m3u8$LR•IPV4•16『线路4』 -CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路5』 -CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路6』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路7』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 -CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路9』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路10』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 -CNBC,http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路12』 -CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路13』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路14』 -CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路15』 -CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路16』 +Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路1』 +Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路2』 +Bloomberg,https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路3』 +Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路4』 +Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路5』 +Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路6』 +Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路7』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路8』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路9』 +Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路10』 +Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路11』 +Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路12』 +Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路13』 +Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路14』 +Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路15』 +Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路16』 +CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路1』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路2』 +CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路3』 +CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路4』 +CNBC,https://gpuserver3.tier1streams.com/CNBC/index.m3u8$LR•IPV4•16『线路5』 +CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路6』 +CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路7』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路9』 +CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路10』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路12』 +CNBC,http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路13』 +CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路14』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路15』 +CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路16』 TV8,https://1740288887.rsc.cdn77.org/1740288887/index.m3u8$LR•IPV4•7『线路1』 TV8,https://k20.usastreams.com:8081/tv8/index.m3u8$LR•IPV4•7『线路2』 TV8,https://cdn4.skygo.mn/live/disk1/TV8HD/DASH-FTA/TV8HD.mpd$LR•IPV4•7『线路3』 @@ -3994,20 +3983,20 @@ YouTube,#genre# 三立INEWS,p3p://167.114.175.6:55331/644f81c10003ba2367cad2610d3a2ab5$LR•IPV4•2『线路1』 三立INEWS,p3p://167.114.175.6:55331/643a6b71000a47fb156c2a403510409b$LR•IPV4•2『线路2』 ABC NEWS,https://d4ybyqrhce41r.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-xumo-linear-nbcu-hlsv3/master.m3u8?ads.channelId=99991626$LR•IPV4•15『线路1』 -ABC NEWS,https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路2』 -ABC NEWS,https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路3』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路4』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路5』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路6』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路7』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路8』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路9』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路10』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路11』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•15『线路12』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•15『线路13』 -ABC NEWS,https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•15『线路14』 -ABC NEWS,https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•15『线路15』 +ABC NEWS,https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•15『线路2』 +ABC NEWS,https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•15『线路3』 +ABC NEWS,https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路4』 +ABC NEWS,https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路5』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路6』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路7』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路8』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路9』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路10』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路11』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路12』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路13』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•15『线路14』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•15『线路15』 大爱,https://pulltv3.wanfudaluye.com/live/tv3.m3u8$LR•IPV4 INDIA TODAY,https://d1rc86nwwc9fag.cloudfront.net/vglive-sk-293160/master.m3u8$LR•IPV4 NBC NEWS,https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路1』 diff --git a/cluntop_tvbox/lib/iptv_test.m3u b/cluntop_tvbox/lib/iptv_test.m3u index b3e98ab9..f3554870 100755 --- a/cluntop_tvbox/lib/iptv_test.m3u +++ b/cluntop_tvbox/lib/iptv_test.m3u @@ -1,6 +1,6 @@ #EXTM3U #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8f3fc8c76002b5768090d2d68f75b9bb&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•2『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-fec2a87194a11509dcf09defebca4ed8&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江频道",象山综合 @@ -16,37 +16,35 @@ http://www.goodiptv.club/douyu/4246519$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="铜梁综合" tvg-name="铜梁综合" group-title="重庆频道",铜梁综合 http://183.64.174.171:40123/ch1.m3u8?zzhongqd$LR•IPV4 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•5『线路1』 +https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•5『线路2』 +https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•5『线路3』 +https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-id="功夫" tvg-name="功夫" group-title="经典小品",功夫 -http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•5『线路5』 +http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="小草" tvg-name="小草" group-title="经典小品",小草 https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K频道",东方卫视4K -http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K频道",东方卫视4K -http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 +http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K频道",湖南卫视4K -http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K频道",湖南卫视4K -http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 +http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K频道",湖南卫视4K -http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路3』 +http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="浙江卫视4K" tvg-name="浙江卫视4K" group-title="4K频道",浙江卫视4K http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="浙江卫视4K" tvg-name="浙江卫视4K" group-title="4K频道",浙江卫视4K http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="江苏卫视4K" tvg-name="江苏卫视4K" group-title="4K频道",江苏卫视4K -http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="江苏卫视4K" tvg-name="江苏卫视4K" group-title="4K频道",江苏卫视4K -http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路2』 +http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="江苏卫视4K" tvg-name="江苏卫视4K" group-title="4K频道",江苏卫视4K -http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路3』 +http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="广东卫视4K" tvg-name="广东卫视4K" group-title="4K频道",广东卫视4K http://vvip.lqcc.xyz:8092/stream/channelid/1248069700?auth=PrI5LXwb51dYilt30TvNYVVAgd4A&profile=pass$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="广东卫视4K" tvg-name="广东卫视4K" group-title="4K频道",广东卫视4K @@ -62,21 +60,23 @@ https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001540/index.m3 #EXTINF:-1 tvg-id="广东卫视4K" tvg-name="广东卫视4K" group-title="4K频道",广东卫视4K http://101.35.240.114:88/live.php?id=广东卫视4K$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K -http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路1』 +http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K -http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路2』 +https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K -https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路3』 +http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K -http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路4』 +http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K -http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路5』 +http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K -http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路6』 +http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de76cdccd646&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="深圳卫视4K" tvg-name="深圳卫视4K" group-title="4K频道",深圳卫视4K http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 +#EXTINF:-1 tvg-id="四川卫视4K" tvg-name="四川卫视4K" group-title="4K频道",四川卫视4K +http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="南国都市4K" tvg-name="南国都市4K" group-title="4K频道",南国都市4K https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K频道",CCTV4K真4K @@ -96,7 +96,7 @@ http://ebsonairios.ebs.co.kr/ebsutablet500k/tablet500k/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="七龙珠" tvg-name="七龙珠" group-title="动画频道",七龙珠 http://103.193.151.146/huya.php?id=11601966$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="七龙珠" tvg-name="七龙珠" group-title="动画频道",七龙珠 -https://live.ottiptv.cc/huya/11601966$LR•IPV4•2『线路2』 +https://live.metshop.top/huya/11601966$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="哆啦A梦" tvg-name="哆啦A梦" group-title="动画频道",哆啦A梦 http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="哆啦A梦" tvg-name="哆啦A梦" group-title="动画频道",哆啦A梦 @@ -115,8 +115,6 @@ https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路2』 https://live.ottiptv.cc/huya/30080236$LR•IPV4 #EXTINF:-1 tvg-id="航海王" tvg-name="航海王" group-title="动画频道",航海王 http://103.193.151.146/huya.php?id=16913382$LR•IPV4 -#EXTINF:-1 tvg-id="宇宙科幻合集" tvg-name="宇宙科幻合集" group-title="虎牙影视",宇宙科幻合集 -http://cdn.jdshipin.com:8880/huya.php?id=11342428$LR•IPV4 #EXTINF:-1 tvg-id="古装武侠" tvg-name="古装武侠" group-title="斗鱼影视",古装武侠 http://www.goodiptv.club/douyu/2793084$LR•IPV4 #EXTINF:-1 tvg-id="冰冰影剧" tvg-name="冰冰影剧" group-title="斗鱼影视",冰冰影剧 @@ -168,19 +166,19 @@ https://live.ottiptv.cc/huya/29580970$LR•IPV4 #EXTINF:-1 tvg-id="特种兵之火凤凰" tvg-name="特种兵之火凤凰" group-title="电视剧频道",特种兵之火凤凰 https://live.ottiptv.cc/huya/29982636$LR•IPV4 #EXTINF:-1 tvg-id="士兵突击" tvg-name="士兵突击" group-title="电视剧频道",士兵突击 -https://live.ottiptv.cc/huya/11342430$LR•IPV4•2『线路1』 +https://live.metshop.top/huya/11342430$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="士兵突击" tvg-name="士兵突击" group-title="电视剧频道",士兵突击 -https://live.metshop.top/huya/11342430$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11342430$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="天龙八部" tvg-name="天龙八部" group-title="电视剧频道",天龙八部 -https://live.ottiptv.cc/huya/20985816$LR•IPV4 +https://live.ottiptv.cc/yy/1351814644$LR•IPV4 #EXTINF:-1 tvg-id="倚天屠龙记" tvg-name="倚天屠龙记" group-title="电视剧频道",倚天屠龙记 https://live.ottiptv.cc/huya/11342403$LR•IPV4 #EXTINF:-1 tvg-id="康熙王朝" tvg-name="康熙王朝" group-title="电视剧频道",康熙王朝 https://live.ottiptv.cc/huya/11352940$LR•IPV4 #EXTINF:-1 tvg-id="庆余年" tvg-name="庆余年" group-title="电视剧频道",庆余年 -https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路1』 +http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="庆余年" tvg-name="庆余年" group-title="电视剧频道",庆余年 -http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="鬼吹灯之精绝古城" tvg-name="鬼吹灯之精绝古城" group-title="电视剧频道",鬼吹灯之精绝古城 https://live.ottiptv.cc/huya/11352871$LR•IPV4 #EXTINF:-1 tvg-id="鬼吹灯之怒晴湘西" tvg-name="鬼吹灯之怒晴湘西" group-title="电视剧频道",鬼吹灯之怒晴湘西 @@ -211,8 +209,16 @@ https://live.ottiptv.cc/yy/1354926650$LR•IPV4 https://live.ottiptv.cc/huya/29465868$LR•IPV4 #EXTINF:-1 tvg-id="武林外传" tvg-name="武林外传" group-title="电视剧频道",武林外传 http://live.nctv.top/DJlio/huya.php?id=21059598$LR•IPV4 +#EXTINF:-1 tvg-id="楚汉骄雄" tvg-name="楚汉骄雄" group-title="埋堆堆频道",楚汉骄雄 +http://cdn.jdshipin.com:8880/huya.php?id=29465854$LR•IPV4 +#EXTINF:-1 tvg-id="西游记2" tvg-name="西游记2" group-title="埋堆堆频道",西游记2 +http://cdn.jdshipin.com:8880/huya.php?id=29465859$LR•IPV4 #EXTINF:-1 tvg-id="活佛济公3" tvg-name="活佛济公3" group-title="埋堆堆频道",活佛济公3 http://cdn.jdshipin.com:8880/huya.php?id=23903123$LR•IPV4 +#EXTINF:-1 tvg-id="无心法师" tvg-name="无心法师" group-title="埋堆堆频道",无心法师 +http://cdn.jdshipin.com:8880/huya.php?id=30080233$LR•IPV4 +#EXTINF:-1 tvg-id="野蛮亲家" tvg-name="野蛮亲家" group-title="埋堆堆频道",野蛮亲家 +http://cdn.jdshipin.com:8880/huya.php?id=23863796$LR•IPV4 #EXTINF:-1 tvg-id="倩女幽魂人间道" tvg-name="倩女幽魂人间道" group-title="点播电影",倩女幽魂人间道 http://jsmov2.a.yximgs.com/bs3/video-hls/5250634317044855747_hlsb.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="倩女幽魂道道道" tvg-name="倩女幽魂道道道" group-title="点播电影",倩女幽魂道道道 @@ -278,29 +284,29 @@ https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?zzhed$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="YMG未来" tvg-name="YMG未来" group-title="☘️浙江频道",YMG未来 http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路1』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•12『线路2』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路3』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路4』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线路5』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路6』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•12『线路7』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路8』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路9』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路10』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed?$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 @@ -310,9 +316,9 @@ https://stream1.freetv.fun/shang-yu-zong-he-1.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="上虞综合" tvg-name="上虞综合" group-title="☘️浙江频道",上虞综合 http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed?$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="云和新闻" tvg-name="云和新闻" group-title="☘️浙江频道",云和新闻 -http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="云和新闻" tvg-name="云和新闻" group-title="☘️浙江频道",云和新闻 -http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="云和新闻" tvg-name="云和新闻" group-title="☘️浙江频道",云和新闻 http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="余杭新闻" tvg-name="余杭新闻" group-title="☘️浙江频道",余杭新闻 @@ -320,9 +326,9 @@ http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed?$LR•IPV4 #EXTINF:-1 tvg-id="余杭未来" tvg-name="余杭未来" group-title="☘️浙江频道",余杭未来 http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?$LR•IPV4 #EXTINF:-1 tvg-id="兰溪新闻" tvg-name="兰溪新闻" group-title="☘️浙江频道",兰溪新闻 -http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•7『线路1』 +https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="兰溪新闻" tvg-name="兰溪新闻" group-title="☘️浙江频道",兰溪新闻 -https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路2』 +http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="兰溪新闻" tvg-name="兰溪新闻" group-title="☘️浙江频道",兰溪新闻 https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="兰溪新闻" tvg-name="兰溪新闻" group-title="☘️浙江频道",兰溪新闻 @@ -336,25 +342,25 @@ http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed?$LR•IPV4•7 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路3』 +https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="嵊州新闻" tvg-name="嵊州新闻" group-title="☘️浙江频道",嵊州新闻 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed?$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="嵊州新闻" tvg-name="嵊州新闻" group-title="☘️浙江频道",嵊州新闻 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed?$LR•IPV4•2『线路2』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="平湖新闻" tvg-name="平湖新闻" group-title="☘️浙江频道",平湖新闻 -http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•10『线路1』 +https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="平湖新闻" tvg-name="平湖新闻" group-title="☘️浙江频道",平湖新闻 -https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路2』 +http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="平湖新闻" tvg-name="平湖新闻" group-title="☘️浙江频道",平湖新闻 -http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•10『线路3』 +https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="平湖新闻" tvg-name="平湖新闻" group-title="☘️浙江频道",平湖新闻 -https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•10『线路4』 +http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="平湖新闻" tvg-name="平湖新闻" group-title="☘️浙江频道",平湖新闻 https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="平湖新闻" tvg-name="平湖新闻" group-title="☘️浙江频道",平湖新闻 @@ -386,11 +392,11 @@ http://l.cztvcloud.com/channels/lantian/SXkaihua1/720p.m3u8$LR•IPV4•5『线 #EXTINF:-1 tvg-id="开化新闻" tvg-name="开化新闻" group-title="☘️浙江频道",开化新闻 http://l.cztvcloud.com/channels/lantian/SXkaihua1/720p.m3u8?zzhed?$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="普陀新闻" tvg-name="普陀新闻" group-title="☘️浙江频道",普陀新闻 -http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•4『线路1』 +http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="普陀新闻" tvg-name="普陀新闻" group-title="☘️浙江频道",普陀新闻 -http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•4『线路2』 +http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="普陀新闻" tvg-name="普陀新闻" group-title="☘️浙江频道",普陀新闻 -http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•4『线路3』 +http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="普陀新闻" tvg-name="普陀新闻" group-title="☘️浙江频道",普陀新闻 http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed?$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="绍兴文化" tvg-name="绍兴文化" group-title="☘️浙江频道",绍兴文化 @@ -436,15 +442,15 @@ https://t.freetv.fun/live/shao-xing-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线 #EXTINF:-1 tvg-id="绍兴新闻" tvg-name="绍兴新闻" group-title="☘️浙江频道",绍兴新闻 http://live.shaoxing.com.cn/video/s10001-sxtv1/index.m3u8?zzhed?$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 -https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•11『线路1』 +http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 -http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•11『线路2』 +https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 -https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•11『线路3』 +https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 -https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•11『线路4』 +https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 -https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•11『线路5』 +https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-4.ctv$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 @@ -458,15 +464,15 @@ http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•11『 #EXTINF:-1 tvg-id="苍南新闻" tvg-name="苍南新闻" group-title="☘️浙江频道",苍南新闻 http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed?$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 -http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•8『线路1』 +https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 -https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•8『线路2』 +https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 -https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•8『线路3』 +https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 -https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•8『线路4』 +https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 -https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•8『线路5』 +http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-3.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 @@ -474,17 +480,17 @@ http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8$LR•IPV4•8『线 #EXTINF:-1 tvg-id="衢江新闻" tvg-name="衢江新闻" group-title="☘️浙江频道",衢江新闻 http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed?$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="诸暨新闻" tvg-name="诸暨新闻" group-title="☘️浙江频道",诸暨新闻 -https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="诸暨新闻" tvg-name="诸暨新闻" group-title="☘️浙江频道",诸暨新闻 -http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="诸暨新闻" tvg-name="诸暨新闻" group-title="☘️浙江频道",诸暨新闻 http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="象山新闻" tvg-name="象山新闻" group-title="☘️浙江频道",象山新闻 http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8?zzhed?$LR•IPV4 #EXTINF:-1 tvg-id="青田电视" tvg-name="青田电视" group-title="☘️浙江频道",青田电视 -http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?zzhed$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="青田电视" tvg-name="青田电视" group-title="☘️浙江频道",青田电视 -http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="青田电视" tvg-name="青田电视" group-title="☘️浙江频道",青田电视 http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?zzhed?$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="杭州余杭平安" tvg-name="杭州余杭平安" group-title="☘️浙江频道",杭州余杭平安 @@ -810,53 +816,53 @@ http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 +http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路1』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路2』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路3』 +http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路4』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路5』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路6』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路7』 +https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路8』 +https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 @@ -910,35 +916,35 @@ http://183.64.181.25:40023/rongchang01.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="来宾综合" tvg-name="来宾综合" group-title="☘️广西频道",来宾综合 http://zb.gxlbamc.com:1935/live/lbzh.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路2』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路3』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路4』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 +https://httop.top/ysp-天津卫视$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路7』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路8』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路9』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路10』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路11』 +http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路12』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路13』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://httop.top/ysp-天津卫视$LR•IPV4•15『线路14』 +http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路15』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="西峰综合" tvg-name="西峰综合" group-title="☘️甘肃频道",西峰综合 https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="渭源新闻" tvg-name="渭源新闻" group-title="☘️甘肃频道",渭源新闻 @@ -950,7 +956,7 @@ http://110.153.180.106:55555/out_3/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="伊犁经济法制" tvg-name="伊犁经济法制" group-title="☘️新疆频道",伊犁经济法制 http://110.153.180.106:55555/out_4/index.m3u8?zxinjd$LR•IPV4 #EXTINF:-1 tvg-id="伊犁维吾尔" tvg-name="伊犁维吾尔" group-title="☘️新疆频道",伊犁维吾尔 -http://110.153.180.106:55555/out_2/index.m3u8?zxinjd$LR•IPV4 +http://110.153.180.106:55555/out_2/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="青州综合" tvg-name="青州综合" group-title="☘️山东频道",青州综合 http://sdqz.chinashadt.com:2036/live/stream:1.stream/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="青州综合" tvg-name="青州综合" group-title="☘️山东频道",青州综合 @@ -1025,6 +1031,8 @@ http://50.7.234.10:8278/momo1_twn/playlist.m3u8?ct=19225&tid=MA0A489898364898983 http://125.227.210.55:8167/VideoInput/play.ts$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="CN卡通" tvg-name="CN卡通" group-title="🪁动画频道",CN卡通 p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4•3『线路3』 +#EXTINF:-1 tvg-id="海绵宝宝" tvg-name="海绵宝宝" group-title="🪁动画频道",海绵宝宝 +https://live.metshop.top/douyu/3949681$LR•IPV4 #EXTINF:-1 tvg-id="音乐现场" tvg-name="音乐现场" group-title="🎵音乐频道",音乐现场 https://satellitepull.cnr.cn/live/wx32nmgyygb/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="华语影院" tvg-name="华语影院" group-title="百事通",华语影院 @@ -1045,8 +1053,6 @@ https://vip.ffzy-play2.com/20221127/1567_f1965b4b/index.m3u8$LR•IPV4 https://vip.ffzy-play6.com/20221019/118_1367b8f6/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="喜剧影院" tvg-name="喜剧影院" group-title="数字",喜剧影院 http://74.91.26.218:82/live/vlxjyy.m3u8$LR•IPV4 -#EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC @@ -1382,135 +1388,135 @@ https://live.kh.malimarcdn.com/live/tvk2.stream/playlist.m3u8$LR•IPV4•3『 #EXTINF:-1 tvg-id="TVK" tvg-name="TVK" group-title="•杂货",TVK https://stream.tvkstella.pl/stella/stella.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路1』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路1』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路2』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路2』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路3』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路3』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路4』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路4』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路5』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路5』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路6』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路6』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路7』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路7』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路8』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路8』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路9』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路9』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路10』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路10』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路11』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路11』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://45.153.96.44:8001$LR•IPV4•52『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路12』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路13』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路13』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路14』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路14』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路15』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路15』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路16』 +https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路16』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路17』 +https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路17』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路18』 +https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路18』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路19』 +https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路19』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路20』 +https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路20』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路21』 +http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路21』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路22』 +https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路22』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路23』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路23』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路24』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路24』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路25』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路25』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路26』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路26』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路27』 +http://45.153.96.44:8001$LR•IPV4•52『线路27』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路28』 +https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路28』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路29』 +https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路29』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路30』 +https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路30』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路31』 +https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路31』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路32』 +https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路32』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路33』 +https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路33』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路34』 +https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路34』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路35』 +https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路35』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路36』 +https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路36』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路37』 +https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路37』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路38』 +https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路38』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路39』 +https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路39』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路40』 +https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路40』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路41』 +https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路41』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路42』 +https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路42』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路43』 +https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路43』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路44』 +https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路44』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路45』 +https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路45』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路46』 +https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路46』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路47』 +https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路47』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路48』 +https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路48』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路49』 +https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路49』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路50』 +https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路50』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路51』 +https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路51』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路52』 +https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路52』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路1』 +p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路2』 +p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路3』 +p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路4』 +p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路5』 +http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路6』 +https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路7』 +https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路8』 +https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路9』 +http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路10』 +https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路11』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路12』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路13』 +https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US @@ -1752,9 +1758,9 @@ https://stream1.freetv.fun/skysports-12.ctv$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="skysports" tvg-name="skysports" group-title="体育频道",skysports https://stream1.freetv.fun/skysports-15.ctv$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="纪晓岚" tvg-name="纪晓岚" group-title="zonghe",纪晓岚 -https://live.ottiptv.cc/huya/11342396$LR•IPV4•2『线路1』 +http://fmbox.cc/huya.php?id=11342396$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="纪晓岚" tvg-name="纪晓岚" group-title="zonghe",纪晓岚 -http://fmbox.cc/huya.php?id=11342396$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11342396$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="地下交通站" tvg-name="地下交通站" group-title="zonghe",地下交通站 http://live.nctv.top/DJlio/huya.php?id=11342433$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="地下交通站" tvg-name="地下交通站" group-title="zonghe",地下交通站 @@ -1770,21 +1776,21 @@ https://gcwbndali.v.myalicdn.com/gcwbnd/ipanda1000_2/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="钱塘江" tvg-name="钱塘江" group-title="💓专享源🅰️",钱塘江 http://gslbmgsplive.miguvideo.com/wd_r3/cnr/qiantangjiang/2000/index.m3u8?msisdn=20250923080124d2a289d7e8424ddd9ea0d2d29a9e0744&mdspid=&spid=800033&netType=0&sid=5500613479&pid=2028597139×tamp=20250923080124&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=647370520&ParentNodeID=-99&assertID=5500613479&client_ip=106.13.250.83&SecurityKey=20250923080124&promotionId=&mvid=5102115888&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=a4be52553a643d1013946a49db1f0e09&ddCalcu=9a04eeb20e7f5012b5d5934aa664439d3110$LR•IPV4 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•8『线路1』 +p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•8『线路2』 +p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•8『线路3』 +p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•8『线路4』 +p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•8『线路5』 +p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•8『线路6』 +p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•8『线路7』 +http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•8『线路8』 +https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="▶️哪吒1魔童降世" tvg-name="▶️哪吒1魔童降世" group-title="💓专享源🅰️",▶️哪吒1魔童降世 https://vip.ffzy-play7.com/20221111/3098_4ec0b2e9/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="🔀复仇者联盟1" tvg-name="🔀复仇者联盟1" group-title="💓专享源🅰️",🔀复仇者联盟1 @@ -2056,93 +2062,93 @@ https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist. #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY https://9e754fa707344ccca6d84955c8fcaf36.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/RlaxxTV-eu_AutenticHistory/playlist.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路3』 +http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路4』 +http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路5』 +p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路6』 +https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路7』 +https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路8』 +https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路9』 +https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路10』 +https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路11』 +https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路12』 +https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路13』 +https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路14』 +https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路15』 +https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路16』 +https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路17』 +https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路18』 +https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路19』 +https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路19』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路20』 +https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路21』 +https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路21』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路22』 +https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路23』 +https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路23』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路24』 +https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路25』 +https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://aes.m3u8simplu.workers.dev/history/index.m3u8$LR•IPV4•46『线路26』 +http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路27』 +http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路28』 +http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路29』 +https://aes.m3u8simplu.workers.dev/history/index.m3u8$LR•IPV4•46『线路29』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://streamer12.xploretv.si/__cl/cg:prod/__c/A1_SI_HISTORYHD_ott/__op/dash-default/__dci/__f/index.m3u8?admin=xploreTv_test_user&redirect=true$LR•IPV4•46『线路30』 +http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路30』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路31』 +http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路32』 +http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路32』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路33』 +https://streamer12.xploretv.si/__cl/cg:prod/__c/A1_SI_HISTORYHD_ott/__op/dash-default/__dci/__f/index.m3u8?admin=xploreTv_test_user&redirect=true$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路34』 +https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路34』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路35』 +http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路36』 +http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路37』 +http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路38』 +http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路39』 +https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路39』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路40』 +https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路40』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路41』 +https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路41』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路42』 +https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路42』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路43』 +http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路43』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路44』 +http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路44』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路45』 +https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路46』 +http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 http://jackgao.top:35455/itv/3000000001000005308.m3u8?cdn=FifastbLive$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 @@ -2374,53 +2380,53 @@ https://stream1.freetv.fun/jsports-1-1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="JSPORTS2" tvg-name="JSPORTS2" group-title="⚽️SPORTS",JSPORTS2 https://stream1.freetv.fun/jsports-2-2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="MLB NETWORK" tvg-name="MLB NETWORK" group-title="⚽️SPORTS",MLB NETWORK -https://gpuserver3.tier1streams.com/MLB_Network/index.m3u8$LR•IPV4•2『线路1』 +http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="MLB NETWORK" tvg-name="MLB NETWORK" group-title="⚽️SPORTS",MLB NETWORK -http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路2』 +https://gpuserver3.tier1streams.com/MLB_Network/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路1』 +http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路2』 +https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路3』 +https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路4』 +https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路5』 +https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路6』 +http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路7』 +https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路8』 +http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路1』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路2』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•8『线路3』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路4』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路5』 +https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路6』 +https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路7』 +https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路8』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路1』 +http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路2』 +http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路3』 +http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路4』 +http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路5』 +http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路6』 +http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="緯來體育" tvg-name="緯來體育" group-title="⚽️SPORTS",緯來體育 http://live4play.uk/livehttpplay?channel_id=20120$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="緯來體育" tvg-name="緯來體育" group-title="⚽️SPORTS",緯來體育 @@ -2798,19 +2804,17 @@ https://vip.ffzy-play7.com/20221129/7714_a0c75de1/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="音乐僵尸" tvg-name="音乐僵尸" group-title="🎞️电影点播",音乐僵尸 https://vip.ffzy-play6.com/20221207/10627_09b3f2e5/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -http://cdn.jdshipin.com:8880/huya.php?id=23824164$LR•IPV4•7『线路1』 +https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://live.ottiptv.cc/yy/1352475619$LR•IPV4•7『线路2』 +https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•7『线路3』 +https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•7『线路4』 +https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•7『线路5』 +https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•7『线路6』 -#EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•7『线路7』 +https://live.ottiptv.cc/yy/1352475619$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="赢钱专家" tvg-name="赢钱专家" group-title="🎞️电影点播",赢钱专家 https://vip.ffzy-play6.com/20221113/6794_d514b390/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="有话好好说" tvg-name="有话好好说" group-title="🎞️电影点播",有话好好说 @@ -3024,15 +3028,15 @@ https://live.metshop.top/huya/11342388$LR•IPV4 #EXTINF:-1 tvg-id="联合抗日" tvg-name="联合抗日" group-title="💓电视剧🔁",联合抗日 https://live.metshop.top/huya/11352910$LR•IPV4 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路1』 +https://live.metshop.top/huya/11352944$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路2』 +http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路3』 +https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.metshop.top/huya/11352944$LR•IPV4•5『线路4』 +https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路5』 +https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="雍正皇帝" tvg-name="雍正皇帝" group-title="💓电视剧🔁",雍正皇帝 https://live.metshop.top/huya/11342439$LR•IPV4 #EXTINF:-1 tvg-id="许冠英合集" tvg-name="许冠英合集" group-title="💓电视剧🔁",许冠英合集 @@ -3092,87 +3096,85 @@ http://newcntv.qcloudcdn.com/asp/hls/4000/0303000a/3/default/2bdfdad540b342f592f #EXTINF:-1 tvg-id="地理中国" tvg-name="地理中国" group-title="💓优质个源",地理中国 http://newcntv.qcloudcdn.com/asp/hls/1200/0303000a/3/default/c6baf6f74bb944aeacee1065ea72c798/1200.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=21a9fbe86aa9a66410c55abf57faa942$LR•IPV4•41『线路1』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=12d4950b0bc42e870ce7e582a7eb5860$LR•IPV4•40『线路1』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=073d230277253add6243b808de436f8c$LR•IPV4•41『线路2』 +http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•40『线路2』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路3』 +http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•40『线路3』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•41『线路4』 +http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•40『线路4』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•41『线路5』 +http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•40『线路5』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•41『线路6』 +http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•40『线路6』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•41『线路7』 +http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•40『线路7』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•41『线路8』 +http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•40『线路8』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•41『线路9』 +http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•40『线路9』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•41『线路10』 +http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•40『线路10』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•41『线路11』 +http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•40『线路11』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•41『线路12』 +http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•40『线路12』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•41『线路13』 +http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•40『线路13』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•41『线路14』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•40『线路14』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•41『线路15』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•40『线路15』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•41『线路16』 +http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•40『线路16』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•41『线路17』 +http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•40『线路17』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•41『线路18』 +http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•40『线路18』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•41『线路19』 +http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•40『线路19』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•41『线路20』 +http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•40『线路20』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•41『线路21』 +http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•40『线路21』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•41『线路22』 +http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•40『线路22』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•41『线路23』 +http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•40『线路23』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•41『线路24』 +https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•40『线路24』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•41『线路25』 +https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•40『线路25』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•41『线路26』 +http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•40『线路26』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•41『线路27』 +http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•40『线路27』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•41『线路28』 +http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•40『线路28』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路29』 +https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•40『线路29』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•41『线路30』 +https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•40『线路30』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•41『线路31』 +p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•40『线路31』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•41『线路32』 +https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•40『线路32』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路33』 +https://gpuserver3.tier1streams.com/MOTORTREND/index.m3u8$LR•IPV4•40『线路33』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://gpuserver3.tier1streams.com/MOTORTREND/index.m3u8$LR•IPV4•41『线路34』 +https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•40『线路34』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路35』 +p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•40『线路35』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•41『线路36』 +http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•40『线路36』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•41『线路37』 +p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•40『线路37』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•41『线路38』 +p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•40『线路38』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路39』 +https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•40『线路39』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路40』 -#EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•41『线路41』 +p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•40『线路40』 #EXTINF:-1 tvg-id="樱桃小丸子剧" tvg-name="樱桃小丸子剧" group-title="💓儿童专享",樱桃小丸子剧 http://103.193.151.146/huya.php?id=11342394$LR•IPV4 #EXTINF:-1 tvg-id="东森幼幼" tvg-name="东森幼幼" group-title="💓儿童专享",东森幼幼 @@ -3192,29 +3194,29 @@ https://xilam-animation-1-fr.samsung.wurl.tv/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FanpopTV" tvg-name="FanpopTV" group-title="💓儿童专享",FanpopTV https://streaming-cl.sh1ny.space/memfs/e16d2f72-70b5-4bf5-b9c5-107b6390a10f.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•26『线路1』 +http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•26『线路2』 +http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•26『线路3』 +http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•26『线路4』 +http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•26『线路5』 +http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•26『线路6』 +http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•26『线路7』 +http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•26『线路8』 +http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•26『线路9』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•26『线路10』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•26『线路11』 +p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•26『线路12』 +http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbeebies_hd/iptv_hd_abr_v1.mpd$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 @@ -3236,19 +3238,19 @@ https://trs1.aynaott.com/discoverykids/index.m3u8$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 https://627bb251f23c7.streamlock.net:444/ExtremaKids/ExtremaKids/playlist.m3u8$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•26『线路23』 +p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•26『线路24』 +p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•26『线路25』 +https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 p3p://167.114.175.6:55331/64bea3f00002bdf919e6522520650b26$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="韩国娱乐台" tvg-name="韩国娱乐台" group-title="🍹定制台☕️",韩国娱乐台 https://stream1.freetv.fun/glo-bet-1.ctv$LR•IPV4 #EXTINF:-1 tvg-id="贝爷" tvg-name="贝爷" group-title="🍹定制台☕️",贝爷 -http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路1』 +http://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="贝爷" tvg-name="贝爷" group-title="🍹定制台☕️",贝爷 -http://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路2』 +http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="挨饿德•1" tvg-name="挨饿德•1" group-title="🍹定制台☕️",挨饿德•1 https://live.iill.top/huya/20985858$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="挨饿德•1" tvg-name="挨饿德•1" group-title="🍹定制台☕️",挨饿德•1 @@ -3338,15 +3340,15 @@ p3p://167.114.175.6:55331/657da67d0006060a0404d5987d1853db$LR•IPV4 #EXTINF:-1 tvg-id="Mytv Super18" tvg-name="Mytv Super18" group-title="🍹定制P3P☕️",Mytv Super18 p3p://167.114.175.6:55331/6506d591000d6d7733e6bdfb4725689e$LR•IPV4 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路1』 +p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路2』 +http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路3』 +http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路4』 +http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路5』 +http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="NOW 668跑马" tvg-name="NOW 668跑马" group-title="🍹定制P3P☕️",NOW 668跑马 p3p://167.114.175.6:55331/6318b7730000b372fb7ca7e170c66e54$LR•IPV4 #EXTINF:-1 tvg-id="Cinemax HK" tvg-name="Cinemax HK" group-title="🍹定制P3P☕️",Cinemax HK @@ -3358,11 +3360,11 @@ p3p://167.114.175.6:55331/66e860ba000b17abca4b7ac11c665324$LR•IPV4 #EXTINF:-1 tvg-id="OneTV综合" tvg-name="OneTV综合" group-title="🍹定制P3P☕️",OneTV综合 p3p://167.114.175.6:55331/64d5c5550007c4d9744057ea09db782a$LR•IPV4 #EXTINF:-1 tvg-id="C+" tvg-name="C+" group-title="🍹定制P3P☕️",C+ -http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•4『线路1』 +http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="C+" tvg-name="C+" group-title="🍹定制P3P☕️",C+ -http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•4『线路2』 +http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="C+" tvg-name="C+" group-title="🍹定制P3P☕️",C+ -http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•4『线路3』 +http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="C+" tvg-name="C+" group-title="🍹定制P3P☕️",C+ p3p://167.114.175.6:55331/65ac2e740004fbd2b9c6ef2b03744ac0$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="有线赛马18" tvg-name="有线赛马18" group-title="🍹定制P3P☕️",有线赛马18 @@ -3380,9 +3382,9 @@ p3p://167.114.175.6:55331/667b119a00012c7814a0fd5f0a4144be$LR•IPV4 #EXTINF:-1 tvg-id="Bein Sport 3" tvg-name="Bein Sport 3" group-title="🍹定制P3P☕️",Bein Sport 3 p3p://167.114.175.6:55331/667b130b000bb1a114a6a17a06ea671a$LR•IPV4 #EXTINF:-1 tvg-id="Super Kids" tvg-name="Super Kids" group-title="🍹定制P3P☕️",Super Kids -https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Super Kids" tvg-name="Super Kids" group-title="🍹定制P3P☕️",Super Kids -p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路2』 +https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="创世电视" tvg-name="创世电视" group-title="🍹定制P3P☕️",创世电视 p3p://167.114.175.6:55331/65ac3ff5000d8862ba0b51494dc3254e$LR•IPV4 #EXTINF:-1 tvg-id="面包台" tvg-name="面包台" group-title="🍹定制P3P☕️",面包台 @@ -3422,27 +3424,27 @@ p3p://167.114.175.6:55331/62011f820008c9f3c33ae0231cf86a05$LR•IPV4 #EXTINF:-1 tvg-id="EL生活英语" tvg-name="EL生活英语" group-title="🍹定制P3P☕️",EL生活英语 p3p://167.114.175.6:55331/624888bb000b784ace507da37b7906ea$LR•IPV4 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路1』 +p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路2』 +https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路3』 +http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路4』 +https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路5』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路6』 +https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路7』 +https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路8』 +https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路9』 +https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路10』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路11』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="博斯无限1" tvg-name="博斯无限1" group-title="🍹定制P3P☕️",博斯无限1 p3p://167.114.175.6:55331/647cba27000a6f78186e481d11013645$LR•IPV4 #EXTINF:-1 tvg-id="博斯无限2" tvg-name="博斯无限2" group-title="🍹定制P3P☕️",博斯无限2 @@ -3454,53 +3456,53 @@ https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/ #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://webtvstream.bhtelecom.ba/filmbox_premium.m3u8$LR•IPV4•26『线路3』 +http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•26『线路4』 +p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://aes.m3u8simplu.workers.dev/filmboxpremium/index.m3u8$LR•IPV4•26『线路5』 +https://webtvstream.bhtelecom.ba/filmbox_premium.m3u8$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•26『线路6』 +http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•26『线路7』 +https://aes.m3u8simplu.workers.dev/filmboxpremium/index.m3u8$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•26『线路8』 +https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•26『线路9』 +https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•26『线路10』 +https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路11』 +https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•26『线路12』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•26『线路13』 +https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•26『线路14』 +https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•26『线路15』 +http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•26『线路16』 +http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•26『线路17』 +http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路18』 +https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•26『线路19』 +https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路20』 +https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•26『线路21』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•26『线路22』 +https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•26『线路23』 +https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•26『线路24』 +https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•26『线路25』 +https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•26『线路26』 +https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-id="探索亚洲" tvg-name="探索亚洲" group-title="🍹定制P3P☕️",探索亚洲 p3p://167.114.175.6:55331/623bc4f4000da3919c742e942bdb3571$LR•IPV4 #EXTINF:-1 tvg-id="中旺电视" tvg-name="中旺电视" group-title="🍹定制P3P☕️",中旺电视 @@ -3568,11 +3570,11 @@ p3p://167.114.175.6:55331/6233e2240002d3af7da6a1bf693a1ed5$LR•IPV4 #EXTINF:-1 tvg-id="Trace Sport" tvg-name="Trace Sport" group-title="🍹定制P3P☕️",Trace Sport https://lightning-tracesport-samsungau.amagi.tv/playlist.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="Trace Sport" tvg-name="Trace Sport" group-title="🍹定制P3P☕️",Trace Sport -https://stream8.cinerama.uz/1274/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路2』 +p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="Trace Sport" tvg-name="Trace Sport" group-title="🍹定制P3P☕️",Trace Sport -https://channels.trace.plus/Traceprod/TRACE_SPORT_STARS_sd/index.m3u8$LR•IPV4•4『线路3』 +https://stream8.cinerama.uz/1274/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="Trace Sport" tvg-name="Trace Sport" group-title="🍹定制P3P☕️",Trace Sport -p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$LR•IPV4•4『线路4』 +https://channels.trace.plus/Traceprod/TRACE_SPORT_STARS_sd/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="韩国娱乐" tvg-name="韩国娱乐" group-title="🍹定制P3P☕️",韩国娱乐 p3p://167.114.175.6:55331/621e16b0000ec4772884cc295a1614a8$LR•IPV4 #EXTINF:-1 tvg-id="爱尔达娱乐" tvg-name="爱尔达娱乐" group-title="🍹定制P3P☕️",爱尔达娱乐 @@ -3600,9 +3602,9 @@ p3p://167.114.175.6:55331/6445172e000920783f1aafee754f43e4$LR•IPV4 #EXTINF:-1 tvg-id="Classica古典音乐" tvg-name="Classica古典音乐" group-title="🍹定制P3P☕️",Classica古典音乐 p3p://167.114.175.6:55331/6452b4f1000c38e8744ac80744c33d67$LR•IPV4 #EXTINF:-1 tvg-id="Mezzo Live" tvg-name="Mezzo Live" group-title="🍹定制P3P☕️",Mezzo Live -https://test.946985.filegear-sg.me/proxy/749755700e4ed9c6$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Mezzo Live" tvg-name="Mezzo Live" group-title="🍹定制P3P☕️",Mezzo Live -p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$LR•IPV4•2『线路2』 +https://test.946985.filegear-sg.me/proxy/749755700e4ed9c6$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="UniverseTV" tvg-name="UniverseTV" group-title="🍹定制P3P☕️",UniverseTV p3p://167.114.175.6:55331/644fbb7c0004a5e968ac550c11f72df5$LR•IPV4 #EXTINF:-1 tvg-id="Global Trekker" tvg-name="Global Trekker" group-title="🍹定制P3P☕️",Global Trekker @@ -3620,17 +3622,17 @@ p3p://167.114.175.6:55331/64ce0646000722d755fe479603e64ba8$LR•IPV4 #EXTINF:-1 tvg-id="国会 2" tvg-name="国会 2" group-title="🍹定制P3P☕️",国会 2 p3p://167.114.175.6:55331/64ce06980008b4f755ff884d646a56da$LR•IPV4 #EXTINF:-1 tvg-id="SMART" tvg-name="SMART" group-title="🍹定制P3P☕️",SMART -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/bsmart.m3u8$LR•IPV4•4『线路1』 +p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="SMART" tvg-name="SMART" group-title="🍹定制P3P☕️",SMART -https://amg16109-shgliving-amg16109c1-klowdtv-us-2235.playouts.now.amagi.tv/playlist/amg16109-shglivingnetwork-smarthealthygreenliving-klowdtvus/playlist.m3u8$LR•IPV4•4『线路2』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/bsmart.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="SMART" tvg-name="SMART" group-title="🍹定制P3P☕️",SMART -https://brightstar-sls-pull-secure.akamaized.net/brightstarsls/stream.m3u8$LR•IPV4•4『线路3』 +https://amg16109-shgliving-amg16109c1-klowdtv-us-2235.playouts.now.amagi.tv/playlist/amg16109-shglivingnetwork-smarthealthygreenliving-klowdtvus/playlist.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="SMART" tvg-name="SMART" group-title="🍹定制P3P☕️",SMART -p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路4』 +https://brightstar-sls-pull-secure.akamaized.net/brightstarsls/stream.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="CMUSIC" tvg-name="CMUSIC" group-title="🍹定制P3P☕️",CMUSIC -https://lotus.stingray.com/manifest/cmusic-cme004-montreal/samsungtvplus/master.m3u8$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="CMUSIC" tvg-name="CMUSIC" group-title="🍹定制P3P☕️",CMUSIC -p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$LR•IPV4•2『线路2』 +https://lotus.stingray.com/manifest/cmusic-cme004-montreal/samsungtvplus/master.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Rock Entertainmen" tvg-name="Rock Entertainmen" group-title="🍹定制P3P☕️",Rock Entertainmen p3p://167.114.175.6:55331/65ad27c7000dfceebd94ddb20bec19f4$LR•IPV4 #EXTINF:-1 tvg-id="台湾戏剧" tvg-name="台湾戏剧" group-title="🍹定制P3P☕️",台湾戏剧 @@ -3646,19 +3648,19 @@ p3p://167.114.175.6:55331/64bbca22000912200ec3b2631bca27c7$LR•IPV4 #EXTINF:-1 tvg-id="凤凰美洲" tvg-name="凤凰美洲" group-title="🍹定制P3P☕️",凤凰美洲 p3p://167.114.175.6:55331/5fe00fca0004e627722fbe5a480a642f$LR•IPV4 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路1』 +http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路2』 +https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路3』 +https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 +https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 +https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 +https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路7』 +https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="FRANCE24 English" tvg-name="FRANCE24 English" group-title="💓英语频道",FRANCE24 English http://aktv.top/AKTV/live/aktv3/france24/AKTV.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="BAND NEWS" tvg-name="BAND NEWS" group-title="💓英语频道",BAND NEWS @@ -3690,229 +3692,215 @@ http://101.43.145.141:12002/itv/3000000010000015686.m3u8?cdn=FifastbLive$LR•IP #EXTINF:-1 tvg-id="CCTV兵器" tvg-name="CCTV兵器" group-title="🌐央视频道",CCTV兵器 http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6ed114801b644526e56bc651d7ab5b8b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•97『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-98245a006136ecdf04e0d3c737dd6086&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•96『线路1』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•97『线路2』 +http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•96『线路2』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•97『线路3』 +https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•96『线路3』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•97『线路4』 +http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•96『线路4』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•97『线路5』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•96『线路5』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•97『线路6』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•96『线路6』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•97『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•96『线路7』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•97『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•96『线路8』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•97『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•96『线路9』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•97『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•96『线路10』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•97『线路11』 +http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•96『线路11』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•97『线路12』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•96『线路12』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•97『线路13』 +http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•96『线路13』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•97『线路14』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•96『线路14』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•97『线路15』 +http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•96『线路15』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•97『线路16』 +http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•96『线路16』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•97『线路17』 +http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•96『线路17』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•97『线路18』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•96『线路18』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•97『线路19』 +http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•96『线路19』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•97『线路20』 +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•96『线路20』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•97『线路21』 +http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•96『线路21』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•97『线路22』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•96『线路22』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•97『线路23』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•96『线路23』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•97『线路24』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•96『线路24』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv2hd$LR•IPV4•97『线路25』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•96『线路25』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•97『线路26』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•96『线路26』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•97『线路27』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•96『线路27』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•97『线路28』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•96『线路28』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•97『线路29』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•96『线路29』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv5hd.m3u8?auth=testpub$LR•IPV4•97『线路30』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•96『线路30』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://198.204.228.26/live/cctv6hd.m3u8$LR•IPV4•97『线路31』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•96『线路31』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•97『线路32』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•96『线路32』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•97『线路33』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•96『线路33』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv7hd$LR•IPV4•97『线路34』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•96『线路34』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•97『线路35』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•96『线路35』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•97『线路36』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•96『线路36』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•97『线路37』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•96『线路37』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•97『线路38』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•96『线路38』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•97『线路39』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•96『线路39』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•97『线路40』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•96『线路40』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•97『线路41』 +http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•96『线路41』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•97『线路42』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv2hd$LR•IPV4•96『线路42』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•97『线路43』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•96『线路43』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•97『线路44』 +http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•96『线路44』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•97『线路45』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•96『线路45』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•97『线路46』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•96『线路46』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•97『线路47』 +http://38.75.136.137:98/gslb/dsdqpub/cctv5hd.m3u8?auth=testpub$LR•IPV4•96『线路47』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•97『线路48』 +http://198.204.228.26/live/cctv6hd.m3u8$LR•IPV4•96『线路48』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•97『线路49』 +http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•96『线路49』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•97『线路50』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•96『线路50』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•97『线路51』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv7hd$LR•IPV4•96『线路51』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•97『线路52』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•96『线路52』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•97『线路53』 +http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•96『线路53』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•97『线路54』 +http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•96『线路54』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•97『线路55』 +http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•96『线路55』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•97『线路56』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•96『线路56』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•97『线路57』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•96『线路57』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•97『线路58』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•96『线路58』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•97『线路59』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•96『线路59』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784768400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-7a2de08a3a510255b2be53fbd6929544&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•97『线路60』 +http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•96『线路60』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•97『线路61』 +http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•96『线路61』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•97『线路62』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•96『线路62』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•97『线路63』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•96『线路63』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•97『线路64』 +https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•96『线路64』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•97『线路65』 +https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•96『线路65』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•97『线路66』 +http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•96『线路66』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•97『线路67』 +http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•96『线路67』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•97『线路68』 +http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•96『线路68』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•97『线路69』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•96『线路69』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://go.bkpcp.top/mg/cctv13$LR•IPV4•97『线路70』 +http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•96『线路70』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•97『线路71』 +http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•96『线路71』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•97『线路72』 +http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•96『线路72』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•97『线路73』 +http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•96『线路73』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•97『线路74』 +http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•96『线路74』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•97『线路75』 +http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•96『线路75』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•97『线路76』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•96『线路76』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•97『线路77』 +http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•96『线路77』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•97『线路78』 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•96『线路78』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•97『线路79』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•96『线路79』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•97『线路80』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•96『线路80』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•97『线路81』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•96『线路81』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•97『线路82』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•96『线路82』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•97『线路83』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•96『线路83』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•97『线路84』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•96『线路84』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•97『线路85』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•96『线路85』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•97『线路86』 +http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•96『线路86』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•97『线路87』 +https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•96『线路87』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•97『线路88』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•96『线路88』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•97『线路89』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•96『线路89』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•97『线路90』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•96『线路90』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•97『线路91』 +http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•96『线路91』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•97『线路92』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•96『线路92』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•97『线路93』 +http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•96『线路93』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•97『线路94』 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•96『线路94』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•97『线路95』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•96『线路95』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•97『线路96』 -#EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•97『线路97』 -#EXTINF:-1 tvg-id="周星星" tvg-name="周星星" group-title="明星",周星星 -http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•96『线路96』 #EXTINF:-1 tvg-id="周星驰" tvg-name="周星驰" group-title="明星",周星驰 http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4 -#EXTINF:-1 tvg-id="李连杰" tvg-name="李连杰" group-title="明星",李连杰 -http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4 -#EXTINF:-1 tvg-id="梁家辉" tvg-name="梁家辉" group-title="明星",梁家辉 -http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://epg.112114.xyz/douyu/2516864$LR•IPV4•3『线路1』 +http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•3『线路2』 -#EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•3『线路3』 +http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="成龙" tvg-name="成龙" group-title="明星",成龙 http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4 -#EXTINF:-1 tvg-id="黄渤" tvg-name="黄渤" group-title="明星",黄渤 -http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4 +#EXTINF:-1 tvg-id="王晶" tvg-name="王晶" group-title="明星",王晶 +http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://epg.112114.xyz/douyu/218859$LR•IPV4•3『线路1』 +http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•3『线路2』 +http://epg.112114.xyz/douyu/218859$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="甄子丹" tvg-name="甄子丹" group-title="明星",甄子丹 http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4 -#EXTINF:-1 tvg-id="谍战片" tvg-name="谍战片" group-title="主题片",谍战片 -http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4 -#EXTINF:-1 tvg-id="战争片" tvg-name="战争片" group-title="主题片",战争片 -http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="VOA美国之音" tvg-name="VOA美国之音" group-title="国际台",VOA美国之音 https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="人与自然" tvg-name="人与自然" group-title="纪录片",人与自然 @@ -4052,17 +4040,15 @@ https://gcalic.v.myalicdn.com/gc/qdls03_1/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="鸣沙山" tvg-name="鸣沙山" group-title="直播中国",鸣沙山 https://gcalic.v.myalicdn.com/gc/dhyyqst_1/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="黄山" tvg-name="黄山" group-title="直播中国",黄山 -https://gcalic.v.myalicdn.com/gc/ahhs01_1/index.m3u8$LR•IPV4•6『线路1』 +https://gcalic.v.myalicdn.com/gc/ahhs01_1/index.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="黄山" tvg-name="黄山" group-title="直播中国",黄山 -http://hslive.hsnewsnet.com/lsdream/iY92ady/1000/live.m3u8?zanhd$LR•IPV4•6『线路2』 +https://gcalic.v.myalicdn.com/gc/hsyg_1/index.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="黄山" tvg-name="黄山" group-title="直播中国",黄山 -https://gcalic.v.myalicdn.com/gc/hsyg_1/index.m3u8$LR•IPV4•6『线路3』 +https://gcalic.v.myalicdn.com/gc/hspyt_1/index.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="黄山" tvg-name="黄山" group-title="直播中国",黄山 -https://gcalic.v.myalicdn.com/gc/hspyt_1/index.m3u8$LR•IPV4•6『线路4』 +http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8?zanhd$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="黄山" tvg-name="黄山" group-title="直播中国",黄山 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•6『线路5』 -#EXTINF:-1 tvg-id="黄山" tvg-name="黄山" group-title="直播中国",黄山 -https://gcalic.v.myalicdn.com/gc/hsptgy_1/index.m3u8$LR•IPV4•6『线路6』 +https://gcalic.v.myalicdn.com/gc/hsptgy_1/index.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="黄果树六角亭瀑布" tvg-name="黄果树六角亭瀑布" group-title="直播中国",黄果树六角亭瀑布 https://gcalic.v.myalicdn.com/gc/hgsspzxdpb_1/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="黄花城水长城01" tvg-name="黄花城水长城01" group-title="直播中国",黄花城水长城01 @@ -4077,8 +4063,6 @@ https://gcalic.v.myalicdn.com/gc/hlzycc_1/index.m3u8$LR•IPV4 https://cdn3.wowza.com/5/cHYzekYzM2kvTVFH/charlotte/G0055_009/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Cc" tvg-name="Cc" group-title="一起看",Cc https://jmp2.uk/plu-5d4947590ba40f75dc29c26b.m3u8$LR•IPV4•2『线路2』 -#EXTINF:-1 tvg-id="嫣然" tvg-name="嫣然" group-title="一起看",嫣然 -http://live.metshop.top/huya/11601977?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="YOUNG" tvg-name="YOUNG" group-title="一起看",YOUNG https://amg01220-amg01220c1-firetv-us-5111.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="YOUNG" tvg-name="YOUNG" group-title="一起看",YOUNG @@ -4086,41 +4070,41 @@ https://amg00143-younghollywoodfast-amg00143c1-cineverse-us-946.playouts.now.ama #EXTINF:-1 tvg-id="YOUNG" tvg-name="YOUNG" group-title="一起看",YOUNG https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路1』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路1』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路2』 +https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路2』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路3』 +http://111.231.6.102:1234/961930263$LR•IPV4•31『线路3』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://111.231.6.102:1234/961930263$LR•IPV4•31『线路4』 +http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路4』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路5』 +https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路5』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路6』 +http://115.190.247.176:1111/961930263$LR•IPV4•31『线路6』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://115.190.247.176:1111/961930263$LR•IPV4•31『线路7』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路7』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路8』 +http://182.61.15.84:80/961930263$LR•IPV4•31『线路8』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://182.61.15.84:80/961930263$LR•IPV4•31『线路9』 +http://60.168.105.87:5008/961930263$LR•IPV4•31『线路9』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://60.168.105.87:5008/961930263$LR•IPV4•31『线路10』 +http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路10』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路11』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路11』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路12』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路12』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路13』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路13』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路14』 +http://123.113.205.253:3000/961930263$LR•IPV4•31『线路14』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://123.113.205.253:3000/961930263$LR•IPV4•31『线路15』 +https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路15』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路16』 +http://110.154.192.66:7788/961930263$LR•IPV4•31『线路16』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://110.154.192.66:7788/961930263$LR•IPV4•31『线路17』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路17』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路18』 +http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路18』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 https://migu.188766.xyz/?migutoken=396182b2a9b61dca2daded3fc6f62311&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路19』 #EXTINF:-1 tvg-id="快乐" tvg-name="快乐" group-title="一起看",快乐 @@ -4152,49 +4136,49 @@ https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&tx #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="辽宁公共" tvg-name="辽宁公共" group-title="卫视",辽宁公共 -http://120.76.248.139/live/bfgd/4200000481.m3u8$LR•IPV4 +http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="中华特产" tvg-name="中华特产" group-title="卫视",中华特产 http://120.76.248.139/live/bfgd/4200000158.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="安多卫视" tvg-name="安多卫视" group-title="卫视",安多卫视 https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路1』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路2』 +https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路3』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路4』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路5』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路6』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路7』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路8』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路9』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路10』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路11』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路12』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路13』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路14』 +https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路14』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路15』 +http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路15』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路16』 +https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路16』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路17』 +http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路17』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路18』 +http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路18』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 -http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路19』 +http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路19』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 https://stream1.freetv.fun/zhe-jiang-min-sheng-4.ctv$LR•IPV4•37『线路20』 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 @@ -4232,43 +4216,43 @@ https://t.freetv.fun/live/zhe-jiang-min-sheng-11.m3u8$LR•IPV4•37『线路36 #EXTINF:-1 tvg-id="浙江民生休闲" tvg-name="浙江民生休闲" group-title="浙江",浙江民生休闲 https://t.freetv.fun/live/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-id="浙江教科影院" tvg-name="浙江教科影院" group-title="浙江",浙江教科影院 -http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•2『线路1』 +http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="浙江教科影院" tvg-name="浙江教科影院" group-title="浙江",浙江教科影院 -http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•2『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="舟山新闻综合" tvg-name="舟山新闻综合" group-title="浙江",舟山新闻综合 http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路2』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路3』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路4』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路5』 +http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路6』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路7』 +http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路8』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路9』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路10』 +http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路11』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路12』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路13』 +http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路14』 +https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路15』 +http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路16』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://stream1.freetv.fun/zhe-jiang-xin-wen-10.m3u8$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 @@ -4306,57 +4290,57 @@ https://t.freetv.fun/live/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路33』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路34』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路1』 +http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路1』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路2』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路2』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路3』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路3』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路4』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路4』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路5』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路5』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路6』 +https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路6』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路7』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路7』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路8』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路8』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路9』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路9』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路10』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路10』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路11』 +https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路11』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路12』 +http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路12』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路13』 +http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路13』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路14』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路14』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路15』 +http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路15』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路16』 +https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路16』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路17』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路17』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路18』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路18』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路19』 +https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路19』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路20』 +http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路20』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路21』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路21』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路22』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路22』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路23』 +http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路23』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路24』 +https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路24』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路25』 +https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路25』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 -https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路26』 +https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路26』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 http://ali-xwl.cztv.com/live/channel10720Plxw.m3u8$LR•IPV4•32『线路27』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 @@ -4370,35 +4354,35 @@ https://t.freetv.fun/live/zhe-jiang-guo-ji.m3u8$LR•IPV4•32『线路31』 #EXTINF:-1 tvg-id="浙江国际" tvg-name="浙江国际" group-title="浙江",浙江国际 https://t.freetv.fun/live/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路32』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 +http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路2』 +https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路3』 +https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路4』 +https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路5』 +https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路6』 +http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路7』 +https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路8』 +https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路9』 +https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路10』 +http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路11』 +https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路12』 +http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路13』 +https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路14』 +https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 -https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路15』 +https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-id="浙江少儿" tvg-name="浙江少儿" group-title="浙江",浙江少儿 @@ -4422,37 +4406,37 @@ http://ali-vl.cztv.com/channels/lantian/channel004/360p.m3u8$LR•IPV4•8『线 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路2』 +https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路3』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路4』 +http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路5』 +http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路6』 +http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路7』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路8』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路9』 +http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路10』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路11』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路12』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路12』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路13』 +http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路14』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路15』 +http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•19『线路16』 +http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路17』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 @@ -4476,19 +4460,19 @@ http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?zzhed$LR•IPV4•2 #EXTINF:-1 tvg-id="上虞新闻综合" tvg-name="上虞新闻综合" group-title="浙江",上虞新闻综合 http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路1』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 +https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路3』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路4』 +http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路5』 +https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路6』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路7』 +http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://stream1.freetv.fun/shang-yu-xin-shang-du-4.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 @@ -4498,25 +4482,25 @@ http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed\r\n$LR•IPV4 #EXTINF:-1 tvg-id="上虞新商都" tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://stream1.freetv.fun/shang-yu-xin-shang-du-2.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="开化国家公园" tvg-name="开化国家公园" group-title="浙江",开化国家公园 -http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="开化国家公园" tvg-name="开化国家公园" group-title="浙江",开化国家公园 -http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="开化国家公园" tvg-name="开化国家公园" group-title="浙江",开化国家公园 http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路1』 +https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路4』 +https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路5』 +https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路6』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 -http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路7』 +http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-3.ctv$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="永嘉新闻综合" tvg-name="永嘉新闻综合" group-title="浙江",永嘉新闻综合 @@ -4526,27 +4510,27 @@ https://t.freetv.fun/live/yong-jia-xin-wen-zong-he.m3u8$LR•IPV4•10『线路1 #EXTINF:-1 tvg-id="萧山生活频道" tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="萧山生活频道" tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 -https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="萧山生活频道" tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 -http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路3』 +https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="龙游生活娱乐" tvg-name="龙游生活娱乐" group-title="浙江",龙游生活娱乐 -https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="龙游生活娱乐" tvg-name="龙游生活娱乐" group-title="浙江",龙游生活娱乐 -http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 +https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="龙游生活娱乐" tvg-name="龙游生活娱乐" group-title="浙江",龙游生活娱乐 http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路2』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路3』 +http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路4』 +http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路5』 +http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路6』 +http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 @@ -4586,11 +4570,11 @@ https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•25『 #EXTINF:-1 tvg-id="浙江生活" tvg-name="浙江生活" group-title="浙江",浙江生活 http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 -http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路1』 +http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 -http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路2』 +https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="浙江教育" tvg-name="浙江教育" group-title="浙江",浙江教育 -https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路3』 +http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="杭州综合" tvg-name="杭州综合" group-title="浙江",杭州综合 https://stream1.freetv.fun/hang-zhou-zong-he-2.ctv$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="杭州综合" tvg-name="杭州综合" group-title="浙江",杭州综合 @@ -4636,45 +4620,45 @@ https://stream1.freetv.fun/hang-zhou-ying-shi-2.ctv$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="杭州影视" tvg-name="杭州影视" group-title="浙江",杭州影视 http://www.jeremyoto.com:82/rtp/233.50.201.176:5140$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 -http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路1』 +http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 -http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路2』 +http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 -http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路3』 +http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 http://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="嘉兴新闻综合" tvg-name="嘉兴新闻综合" group-title="浙江",嘉兴新闻综合 https://live-auth.51kandianshi.com/szgd/csztv1.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路1』 +https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路2』 +https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路3』 +https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路4』 +https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路5』 +https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路6』 +https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路7』 +https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路8』 +http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="湖州公共" tvg-name="湖州公共" group-title="浙江",湖州公共 -http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路9』 +http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="湖州新闻综合" tvg-name="湖州新闻综合" group-title="浙江",湖州新闻综合 -http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 +https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="湖州新闻综合" tvg-name="湖州新闻综合" group-title="浙江",湖州新闻综合 -https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 +http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="湖州新闻综合" tvg-name="湖州新闻综合" group-title="浙江",湖州新闻综合 http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865&fbl=$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="湖州文化娱乐" tvg-name="湖州文化娱乐" group-title="浙江",湖州文化娱乐 -http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 +https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="湖州文化娱乐" tvg-name="湖州文化娱乐" group-title="浙江",湖州文化娱乐 -https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路2』 +http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="湖州文化娱乐" tvg-name="湖州文化娱乐" group-title="浙江",湖州文化娱乐 -http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路3』 +http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="浙江留学" tvg-name="浙江留学" group-title="浙江",浙江留学 https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="浙江留学" tvg-name="浙江留学" group-title="浙江",浙江留学 @@ -4688,9 +4672,9 @@ https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8\r\n$LR•IPV4• #EXTINF:-1 tvg-id="浙江青田" tvg-name="浙江青田" group-title="浙江",浙江青田 http://play-sh13.quklive.com/live/1692755062081192.m3u8?auth_key=2028414252-b15176e05a684b589d12314dfabf6225-0-d175afe86fbea31e2eb167a6dd06cd4f$LR•IPV4 #EXTINF:-1 tvg-id="浙江遂昌" tvg-name="浙江遂昌" group-title="浙江",浙江遂昌 -http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路1』 +http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="浙江遂昌" tvg-name="浙江遂昌" group-title="浙江",浙江遂昌 -http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="浙江遂昌" tvg-name="浙江遂昌" group-title="浙江",浙江遂昌 http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="遂昌综合" tvg-name="遂昌综合" group-title="浙江",遂昌综合 @@ -4704,101 +4688,101 @@ http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed"$LR•IPV #EXTINF:-1 tvg-id="缙云综合" tvg-name="缙云综合" group-title="浙江",缙云综合 http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="缙云新闻综合" tvg-name="缙云新闻综合" group-title="浙江",缙云新闻综合 -http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="缙云新闻综合" tvg-name="缙云新闻综合" group-title="浙江",缙云新闻综合 -http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路2』 +http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="绍兴电视台公共" tvg-name="绍兴电视台公共" group-title="浙江",绍兴电视台公共 http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="绍兴电视台公共" tvg-name="绍兴电视台公共" group-title="浙江",绍兴电视台公共 http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路1』 +https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路2』 +https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路3』 +https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路4』 +https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路5』 +https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路6』 +http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="绍兴公共" tvg-name="绍兴公共" group-title="浙江",绍兴公共 -http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路7』 +http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="海宁新闻综合" tvg-name="海宁新闻综合" group-title="浙江",海宁新闻综合 -https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 +http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="海宁新闻综合" tvg-name="海宁新闻综合" group-title="浙江",海宁新闻综合 -http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 +https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="海宁新闻综合" tvg-name="海宁新闻综合" group-title="浙江",海宁新闻综合 https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8?zbid=293304&tpid=1708007815$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="洞头综合" tvg-name="洞头综合" group-title="浙江",洞头综合 -http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="洞头综合" tvg-name="洞头综合" group-title="浙江",洞头综合 -http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="洞头综合" tvg-name="洞头综合" group-title="浙江",洞头综合 -http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 +http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 -http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路1』 +http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 -http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 -https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路3』 +http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="武义新闻综合" tvg-name="武义新闻综合" group-title="浙江",武义新闻综合 http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed\r\n$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路1』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路4』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 -http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路5』 +http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="松阳综合" tvg-name="松阳综合" group-title="浙江",松阳综合 http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="新昌生活" tvg-name="新昌生活" group-title="浙江",新昌生活 http://l.cztvcloud.com/channels/lantian/SXxinchang2/720p.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路1』 +https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路2』 +https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路3』 +https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路4』 +http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 -http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 +https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="新昌新闻综合" tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-4.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 -http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路1』 +http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 -http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?fbl=$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="文成综合" tvg-name="文成综合" group-title="浙江",文成综合 http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路1』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 -http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路5』 +http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="庆元综合" tvg-name="庆元综合" group-title="浙江",庆元综合 http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?fbl=$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 -http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•8『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•8『线路2』 +https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 -https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•8『线路3』 +http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 @@ -4810,21 +4794,21 @@ https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-2.m3u8$LR•IPV4•8『线 #EXTINF:-1 tvg-id="嵊泗综合" tvg-name="嵊泗综合" group-title="浙江",嵊泗综合 https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-1.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="余杭综合" tvg-name="余杭综合" group-title="浙江",余杭综合 -http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="余杭综合" tvg-name="余杭综合" group-title="浙江",余杭综合 -http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="余杭综合" tvg-name="余杭综合" group-title="浙江",余杭综合 -http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="余杭未来E" tvg-name="余杭未来E" group-title="浙江",余杭未来E -http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="余杭未来E" tvg-name="余杭未来E" group-title="浙江",余杭未来E -http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 -https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 -http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路2』 +http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 -http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路3』 +https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 @@ -4832,45 +4816,43 @@ http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZ #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="中国蓝新闻" tvg-name="中国蓝新闻" group-title="浙江",中国蓝新闻 -http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 +https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="中国蓝新闻" tvg-name="中国蓝新闻" group-title="浙江",中国蓝新闻 -https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -https://sztv-hls.sztv.com.cn/1SIQj6s/500/q7rdSsQ.m3u8?sign=71764b3a0bcc96b03dea9693d605e020&t=6a579f21$LR•IPV4•18『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 +http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路3』 +http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•18『线路4』 +http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•18『线路5』 +https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•18『线路6』 +https://httop.top/ysp-深圳卫视$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•18『线路7』 +http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 +http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•18『线路9』 +http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•18『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路10』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•18『线路11』 +http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•18『线路12』 +http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•18『线路13』 +http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•18『线路14』 +http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -https://httop.top/ysp-深圳卫视$LR•IPV4•18『线路15』 +http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•18『线路16』 +http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -#EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="广东",深圳卫视 -http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•18『线路18』 +http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="汕头经济" tvg-name="汕头经济" group-title="广东",汕头经济 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2962&tk=a0c4f6cfaba3$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="汕头经济" tvg-name="汕头经济" group-title="广东",汕头经济 @@ -4893,8 +4875,6 @@ https://stream1.freetv.fun/shan-tou-jing-ji-2.ctv$LR•IPV4•11『线路9』 http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=LEsjua&tk=zUr4K92Dl6kh$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="汕头经济" tvg-name="汕头经济" group-title="广东",汕头经济 https://stream1.freetv.fun/shan-tou-jing-ji-1.ctv$LR•IPV4•11『线路11』 -#EXTINF:-1 tvg-id="广东少儿" tvg-name="广东少儿" group-title="广东",广东少儿 -http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="优优宝贝" tvg-name="优优宝贝" group-title="北京",优优宝贝 http://120.76.248.139/live/bfgd/4200000153.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="生态环境" tvg-name="生态环境" group-title="北京",生态环境 diff --git a/cluntop_tvbox/lib/iptv_test.txt b/cluntop_tvbox/lib/iptv_test.txt index b558c6eb..0a71cf11 100755 --- a/cluntop_tvbox/lib/iptv_test.txt +++ b/cluntop_tvbox/lib/iptv_test.txt @@ -1,6 +1,6 @@ 央视频道,#genre# -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-8f3fc8c76002b5768090d2d68f75b9bb&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•2『线路1』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-fec2a87194a11509dcf09defebca4ed8&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•2『线路1』 CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•2『线路2』 浙江频道,#genre# @@ -16,24 +16,23 @@ CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•2『线路2』 铜梁综合,http://183.64.174.171:40123/ch1.m3u8?zzhongqd$LR•IPV4 经典小品,#genre# -功夫,https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•5『线路1』 -功夫,https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•5『线路2』 -功夫,https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•5『线路3』 -功夫,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•5『线路4』 -功夫,http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•5『线路5』 +功夫,https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•4『线路1』 +功夫,https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•4『线路2』 +功夫,https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•4『线路3』 +功夫,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•4『线路4』 小草,https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 4K频道,#genre# -东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 -东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 -湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 -湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 -湖南卫视4K,http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路3』 +东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路1』 +东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路2』 +湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路1』 +湖南卫视4K,http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•3『线路2』 +湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路3』 浙江卫视4K,http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•2『线路1』 浙江卫视4K,http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•2『线路2』 -江苏卫视4K,http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路1』 -江苏卫视4K,http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路2』 -江苏卫视4K,http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路3』 +江苏卫视4K,http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路1』 +江苏卫视4K,http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路2』 +江苏卫视4K,http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路3』 广东卫视4K,http://vvip.lqcc.xyz:8092/stream/channelid/1248069700?auth=PrI5LXwb51dYilt30TvNYVVAgd4A&profile=pass$LR•IPV4•7『线路1』 广东卫视4K,http://ikuai.haleeyo.cn:9003/udp/239.77.0.27:5146$LR•IPV4•7『线路2』 广东卫视4K,https://live.264788.xyz/channel/guangdongweishi4k?streamid=33aeafbb59f2bcb1877c3a8229c0135b&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路3』 @@ -41,14 +40,15 @@ CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•2『线路2』 广东卫视4K,https://live.264788.xyz/channel/guangdongweishi4k?streamid=0508c0316aedc9152adcf323fa95c2c0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路5』 广东卫视4K,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001540/index.m3u8?streamid=33aeafbb59f2bcb1877c3a8229c0135b&streamkey=0AGMO6LiBIxyH4UUBGZSecN0VLptakvTRcCBdKPsgZ5LvjIJtZ6lVmakn2xtYKNlvaZmadVnIW0Ur7nROOy5lbmQHqDT5XsDIAlz3aket1LK13kwaGDOHJf9U7zQSS6b&token=1775753804-a378e51446e90f3d-0-831fa09b2b3eafcffbd9550a9e04cf4d$LR•IPV4•7『线路6』 广东卫视4K,http://101.35.240.114:88/live.php?id=广东卫视4K$LR•IPV4•7『线路7』 -深圳卫视4K,http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路1』 -深圳卫视4K,http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路2』 -深圳卫视4K,https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路3』 -深圳卫视4K,http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路4』 -深圳卫视4K,http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路5』 -深圳卫视4K,http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路6』 +深圳卫视4K,http://43.251.226.89:8080/play/919.m3u8$LR•IPV4•8『线路1』 +深圳卫视4K,https://livepull-tcms.sztv.com.cn:443/live/sz4Kpgm.m3u8$LR•IPV4•8『线路2』 +深圳卫视4K,http://8.138.7.223/tv/gd.php?id=0201$LR•IPV4•8『线路3』 +深圳卫视4K,http://ikuai.haleeyo.cn:9003/udp/239.77.1.14:5146$LR•IPV4•8『线路4』 +深圳卫视4K,http://27.184.29.189:4022/rtp/239.254.201.68:6000$LR•IPV4•8『线路5』 +深圳卫视4K,http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•8『线路6』 深圳卫视4K,https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de76cdccd646&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•8『线路7』 深圳卫视4K,http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 +四川卫视4K,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4 南国都市4K,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 CCTV4K真4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4 @@ -68,7 +68,7 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 动画频道,#genre# 韩国EBS少儿,http://ebsonairios.ebs.co.kr/ebsutablet500k/tablet500k/playlist.m3u8$LR•IPV4 七龙珠,http://103.193.151.146/huya.php?id=11601966$LR•IPV4•2『线路1』 -七龙珠,https://live.ottiptv.cc/huya/11601966$LR•IPV4•2『线路2』 +七龙珠,https://live.metshop.top/huya/11601966$LR•IPV4•2『线路2』 哆啦A梦,http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路1』 哆啦A梦,https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路2』 蜡笔小新,http://103.193.151.146/huya.php?id=11352970$LR•IPV4 @@ -79,9 +79,6 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 名侦探柯南,https://live.ottiptv.cc/huya/30080236$LR•IPV4 航海王,http://103.193.151.146/huya.php?id=16913382$LR•IPV4 -虎牙影视,#genre# -宇宙科幻合集,http://cdn.jdshipin.com:8880/huya.php?id=11342428$LR•IPV4 - 斗鱼影视,#genre# 古装武侠,http://www.goodiptv.club/douyu/2793084$LR•IPV4 冰冰影剧,http://www.goodiptv.club/douyu/74374$LR•IPV4 @@ -110,13 +107,13 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 爱情公寓,https://goodiptv.club/douyu/4105989$LR•IPV4•2『线路2』 雪豹,https://live.ottiptv.cc/huya/29580970$LR•IPV4 特种兵之火凤凰,https://live.ottiptv.cc/huya/29982636$LR•IPV4 -士兵突击,https://live.ottiptv.cc/huya/11342430$LR•IPV4•2『线路1』 -士兵突击,https://live.metshop.top/huya/11342430$LR•IPV4•2『线路2』 -天龙八部,https://live.ottiptv.cc/huya/20985816$LR•IPV4 +士兵突击,https://live.metshop.top/huya/11342430$LR•IPV4•2『线路1』 +士兵突击,https://live.ottiptv.cc/huya/11342430$LR•IPV4•2『线路2』 +天龙八部,https://live.ottiptv.cc/yy/1351814644$LR•IPV4 倚天屠龙记,https://live.ottiptv.cc/huya/11342403$LR•IPV4 康熙王朝,https://live.ottiptv.cc/huya/11352940$LR•IPV4 -庆余年,https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路1』 -庆余年,http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路2』 +庆余年,http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路1』 +庆余年,https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路2』 鬼吹灯之精绝古城,https://live.ottiptv.cc/huya/11352871$LR•IPV4 鬼吹灯之怒晴湘西,https://live.ottiptv.cc/huya/11602075$LR•IPV4 鬼吹灯之云南虫谷,https://live.ottiptv.cc/huya/11352898$LR•IPV4 @@ -134,7 +131,11 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 武林外传,http://live.nctv.top/DJlio/huya.php?id=21059598$LR•IPV4 埋堆堆频道,#genre# +楚汉骄雄,http://cdn.jdshipin.com:8880/huya.php?id=29465854$LR•IPV4 +西游记2,http://cdn.jdshipin.com:8880/huya.php?id=29465859$LR•IPV4 活佛济公3,http://cdn.jdshipin.com:8880/huya.php?id=23903123$LR•IPV4 +无心法师,http://cdn.jdshipin.com:8880/huya.php?id=30080233$LR•IPV4 +野蛮亲家,http://cdn.jdshipin.com:8880/huya.php?id=23863796$LR•IPV4 点播电影,#genre# 倩女幽魂人间道,http://jsmov2.a.yximgs.com/bs3/video-hls/5250634317044855747_hlsb.m3u8$LR•IPV4 @@ -171,45 +172,45 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路2』 钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路3』 钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8?zzhed$LR•IPV4•5『线路4』 -钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 +钱江都市,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路1』 -上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•12『线路2』 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路3』 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路4』 -上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线路5』 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路6』 -上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•12『线路7』 -上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路8』 -上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路9』 -上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路10』 +上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•12『线路1』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路2』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路3』 +上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线路4』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路5』 +上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•12『线路6』 +上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路7』 +上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路8』 +上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路9』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路10』 上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed?$LR•IPV4•12『线路11』 上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-1.m3u8$LR•IPV4•12『线路12』 上虞综合,https://stream1.freetv.fun/shang-yu-zong-he-1.m3u8$LR•IPV4•2『线路1』 上虞综合,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed?$LR•IPV4•2『线路2』 -云和新闻,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•3『线路1』 -云和新闻,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +云和新闻,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?zzhed$LR•IPV4•3『线路1』 +云和新闻,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8$LR•IPV4•3『线路2』 云和新闻,http://l.cztvcloud.com/channels/lantian/SXyunhe1/720p.m3u8?$LR•IPV4•3『线路3』 余杭新闻,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed?$LR•IPV4 余杭未来,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?$LR•IPV4 -兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•7『线路1』 -兰溪新闻,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路2』 +兰溪新闻,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路1』 +兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8$LR•IPV4•7『线路2』 兰溪新闻,https://stream1.freetv.fun/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路3』 兰溪新闻,https://t.freetv.fun/live/lan-xi-xin-wen-zong-he.m3u8$LR•IPV4•7『线路4』 兰溪新闻,https://t.freetv.fun/live/lan-xi-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路5』 兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•7『线路6』 兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed?$LR•IPV4•7『线路7』 姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路1』 -姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路2』 -姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路3』 +姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路2』 +姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路3』 姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路4』 姚江文化,http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?$LR•IPV4•5『线路5』 -嵊州新闻,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•2『线路1』 -嵊州新闻,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed?$LR•IPV4•2『线路2』 -平湖新闻,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•10『线路1』 -平湖新闻,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路2』 -平湖新闻,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•10『线路3』 -平湖新闻,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•10『线路4』 +嵊州新闻,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed?$LR•IPV4•2『线路1』 +嵊州新闻,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•2『线路2』 +平湖新闻,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路1』 +平湖新闻,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8$LR•IPV4•10『线路2』 +平湖新闻,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-3.m3u8$LR•IPV4•10『线路3』 +平湖新闻,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?zzhed$LR•IPV4•10『线路4』 平湖新闻,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路5』 平湖新闻,http://l.cztvcloud.com/channels/lantian/SXpinghu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•10『线路6』 平湖新闻,https://stream1.freetv.fun/ping-hu-xin-wen-zong-he-5.m3u8$LR•IPV4•10『线路7』 @@ -225,9 +226,9 @@ YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 开化新闻,https://stream1.freetv.fun/kai-hua-xin-wen-zong-he-2.ctv$LR•IPV4•5『线路3』 开化新闻,http://l.cztvcloud.com/channels/lantian/SXkaihua1/720p.m3u8$LR•IPV4•5『线路4』 开化新闻,http://l.cztvcloud.com/channels/lantian/SXkaihua1/720p.m3u8?zzhed?$LR•IPV4•5『线路5』 -普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•4『线路1』 -普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•4『线路2』 -普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•4『线路3』 +普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•4『线路1』 +普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8$LR•IPV4•4『线路3』 普陀新闻,http://l.cztvcloud.com/channels/lantian/SXputuo1/720p.m3u8?zzhed?$LR•IPV4•4『线路4』 绍兴文化,https://stream1.freetv.fun/shao-xing-wen-hua-ying-yuan-4.m3u8$LR•IPV4•11『线路1』 绍兴文化,https://t.freetv.fun/live/shao-xing-wen-hua-ying-yuan-2.m3u8$LR•IPV4•11『线路2』 @@ -250,31 +251,31 @@ YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 绍兴新闻,https://stream1.freetv.fun/shao-xing-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路8』 绍兴新闻,https://t.freetv.fun/live/shao-xing-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路9』 绍兴新闻,http://live.shaoxing.com.cn/video/s10001-sxtv1/index.m3u8?zzhed?$LR•IPV4•10『线路10』 -苍南新闻,https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•11『线路1』 -苍南新闻,http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•11『线路2』 -苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•11『线路3』 -苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•11『线路4』 -苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•11『线路5』 +苍南新闻,http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed$LR•IPV4•11『线路1』 +苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-2.m3u8$LR•IPV4•11『线路2』 +苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-3.m3u8$LR•IPV4•11『线路3』 +苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•11『线路4』 +苍南新闻,https://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•11『线路5』 苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-4.ctv$LR•IPV4•11『线路6』 苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•11『线路7』 苍南新闻,https://stream1.freetv.fun/cang-nan-xin-wen-zong-he-5.m3u8$LR•IPV4•11『线路8』 苍南新闻,https://t.freetv.fun/live/cang-nan-xin-wen-zong-he-1.m3u8$LR•IPV4•11『线路9』 苍南新闻,http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8$LR•IPV4•11『线路10』 苍南新闻,http://l.cztvcloud.com/channels/lantian/SXcangnan1/720p.m3u8?zzhed?$LR•IPV4•11『线路11』 -衢江新闻,http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•8『线路1』 -衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•8『线路2』 -衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•8『线路3』 -衢江新闻,https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•8『线路4』 -衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•8『线路5』 +衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.ctv$LR•IPV4•8『线路1』 +衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-2.m3u8$LR•IPV4•8『线路2』 +衢江新闻,https://t.freetv.fun/live/qu-jiang-xin-wen-zong-he.m3u8$LR•IPV4•8『线路3』 +衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-1.m3u8$LR•IPV4•8『线路4』 +衢江新闻,http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed$LR•IPV4•8『线路5』 衢江新闻,https://stream1.freetv.fun/qu-jiang-xin-wen-zong-he-3.m3u8$LR•IPV4•8『线路6』 衢江新闻,http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8$LR•IPV4•8『线路7』 衢江新闻,http://l.cztvcloud.com/channels/lantian/SXqujiang1/720p.m3u8?zzhed?$LR•IPV4•8『线路8』 -诸暨新闻,https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•3『线路1』 -诸暨新闻,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +诸暨新闻,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•3『线路1』 +诸暨新闻,https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•3『线路2』 诸暨新闻,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•3『线路3』 象山新闻,http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8?zzhed?$LR•IPV4 -青田电视,http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8$LR•IPV4•3『线路1』 -青田电视,http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +青田电视,http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?zzhed$LR•IPV4•3『线路1』 +青田电视,http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8$LR•IPV4•3『线路2』 青田电视,http://l.cztvcloud.com/channels/lantian/SXqingtian1/720p.m3u8?zzhed?$LR•IPV4•3『线路3』 杭州余杭平安,http://l.cztvcloud.com/channels/lantian/SXyuhang2/720p.m3u8$LR•IPV4 金华东阳综合,http://l.cztvcloud.com/channels/lantian/SXdongyang1/720p.m3u8$LR•IPV4 @@ -455,30 +456,30 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 香港卫视,https://hkstv.tv/api/m3u8-proxy?url=http%3A%2F%2Fwebcast.hkstv.tv%2Flivestream%2Fmutfysrq%2Fplaylist.m3u8$LR•IPV4 凤凰卫视中文台,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1』 凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 -凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 -凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 -凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 -凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 +凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路3』 +凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路4』 +凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路5』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路6』 +凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路7』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路8』 凤凰卫视资讯台,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 -凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 -凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 -凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 -凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 -凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 -凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 -凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 -凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路1』 -凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路2』 -凤凰卫视香港台,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路3』 -凤凰卫视香港台,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路4』 -凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路5』 -凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路6』 -凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路7』 -凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路8』 +凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路2』 +凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路3』 +凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路4』 +凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路5』 +凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路6』 +凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路7』 +凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路9』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路10』 +凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•8『线路1』 +凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•8『线路2』 +凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•8『线路3』 +凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•8『线路4』 +凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•8『线路5』 +凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•8『线路6』 +凤凰卫视香港台,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•8『线路7』 +凤凰卫视香港台,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•8『线路8』 台视新闻,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路1』 台视新闻,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•4『线路2』 台视新闻,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路3』 @@ -511,21 +512,21 @@ NOW NEWS,http://cdn.163189.xyz/163189/now$LR•IPV4•5『线路5』 来宾综合,http://zb.gxlbamc.com:1935/live/lbzh.stream/playlist.m3u8$LR•IPV4 ☘️天津频道,#genre# -天津,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路1』 -天津,http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路2』 -天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路3』 -天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路4』 -天津,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 -天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 -天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路7』 -天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路8』 -天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路9』 -天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路10』 -天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路11』 -天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路12』 -天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路13』 -天津,https://httop.top/ysp-天津卫视$LR•IPV4•15『线路14』 -天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路15』 +天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•15『线路1』 +天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•15『线路2』 +天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•15『线路3』 +天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•15『线路4』 +天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•15『线路5』 +天津,https://httop.top/ysp-天津卫视$LR•IPV4•15『线路6』 +天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•15『线路7』 +天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路8』 +天津,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226954/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eaf3wyULP1h575eM_4ByMDg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路9』 +天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•15『线路10』 +天津,http://112.123.243.37:50085/tsfile/live/0128_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路11』 +天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•15『线路12』 +天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路13』 +天津,http://36.136.38.87:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路14』 +天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•15『线路15』 ☘️甘肃频道,#genre# 西峰综合,https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 @@ -535,7 +536,7 @@ NOW NEWS,http://cdn.163189.xyz/163189/now$LR•IPV4•5『线路5』 玛纳斯综合,http://218.84.127.245:1026/hls/main1/playlist.m3u8?zxinjd,$LR•IPV4 伊犁哈萨克,http://110.153.180.106:55555/out_3/index.m3u8$LR•IPV4 伊犁经济法制,http://110.153.180.106:55555/out_4/index.m3u8?zxinjd$LR•IPV4 -伊犁维吾尔,http://110.153.180.106:55555/out_2/index.m3u8?zxinjd$LR•IPV4 +伊犁维吾尔,http://110.153.180.106:55555/out_2/index.m3u8$LR•IPV4 ☘️山东频道,#genre# 青州综合,http://sdqz.chinashadt.com:2036/live/stream:1.stream/playlist.m3u8$LR•IPV4•2『线路1』 @@ -587,6 +588,7 @@ Now华剧,p3p://167.114.175.6:55331/6519bc200001e7b37dbb01f124075086$LR•IPV4 CN卡通,http://50.7.234.10:8278/momo1_twn/playlist.m3u8?ct=19225&tid=MA0A4898983648989836&tsum=bd109117d126916f203880b1f2063d5e$LR•IPV4•3『线路1』 CN卡通,http://125.227.210.55:8167/VideoInput/play.ts$LR•IPV4•3『线路2』 CN卡通,p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4•3『线路3』 +海绵宝宝,https://live.metshop.top/douyu/3949681$LR•IPV4 🎵音乐频道,#genre# 音乐现场,https://satellitepull.cnr.cn/live/wx32nmgyygb/playlist.m3u8$LR•IPV4 @@ -607,7 +609,6 @@ CN卡通,p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4• 数字,#genre# 喜剧影院,http://74.91.26.218:82/live/vlxjyy.m3u8$LR•IPV4 -卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 •特色,#genre# UFC,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路1』 @@ -787,71 +788,71 @@ TV Guará,https://video02.logicahost.com.br/tvguara23/tvguara23/playlist.m3u8$LR TVK,https://live.kh.malimarcdn.com/live/tvk.stream/playlist.m3u8$LR•IPV4•3『线路1』 TVK,https://live.kh.malimarcdn.com/live/tvk2.stream/playlist.m3u8$LR•IPV4•3『线路2』 TVK,https://stream.tvkstella.pl/stella/stella.m3u8$LR•IPV4•3『线路3』 -UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路1』 -UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路2』 -UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路3』 -UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路4』 -UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路5』 -UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路6』 -UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路7』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路8』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路9』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路10』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路11』 -UK,http://45.153.96.44:8001$LR•IPV4•52『线路12』 -UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路13』 -UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路14』 -UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路15』 -UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路16』 -UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路17』 -UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路18』 -UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路19』 -UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路20』 -UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路21』 -UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路22』 -UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路23』 -UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路24』 -UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路25』 -UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路26』 -UK,https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路27』 -UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路28』 -UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路29』 -UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路30』 -UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路31』 -UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路32』 -UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路33』 -UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路34』 -UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路35』 -UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路36』 -UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路37』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路38』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路39』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路40』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路41』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路42』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路43』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路44』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路45』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路46』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路47』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路48』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路49』 -UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路50』 -UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路51』 -UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路52』 -US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路1』 -US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路2』 -US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路3』 -US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路4』 -US,http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路5』 -US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路6』 -US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路7』 -US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路8』 -US,https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路9』 -US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路10』 -US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路11』 -US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路12』 -US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路13』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路1』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路2』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路3』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路4』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路5』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路6』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路7』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路8』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路9』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路10』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路11』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路12』 +UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路13』 +UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路14』 +UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路15』 +UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路16』 +UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路17』 +UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路18』 +UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路19』 +UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路20』 +UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路21』 +UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路22』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路23』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路24』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路25』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路26』 +UK,http://45.153.96.44:8001$LR•IPV4•52『线路27』 +UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路28』 +UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路29』 +UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路30』 +UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路31』 +UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路32』 +UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路33』 +UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路34』 +UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路35』 +UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路36』 +UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路37』 +UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路38』 +UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路39』 +UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路40』 +UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路41』 +UK,https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路42』 +UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路43』 +UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路44』 +UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路45』 +UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路46』 +UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路47』 +UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路48』 +UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路49』 +UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路50』 +UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路51』 +UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路52』 +US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路1』 +US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路2』 +US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路3』 +US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路4』 +US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路5』 +US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路6』 +US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路7』 +US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路8』 +US,http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路9』 +US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路10』 +US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路11』 +US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路12』 +US,https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路13』 US,https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路14』 US,https://content.uplynk.com/channel/64ca339f04964a5e961c3207a7771bf1.m3u8$LR•IPV4•17『线路15』 US,https://jmp2.uk/plu-62cebd7302478b00073a6b71.m3u8$LR•IPV4•17『线路16』 @@ -988,8 +989,8 @@ skysports,https://stream1.freetv.fun/skysports-12.ctv$LR•IPV4•8『线路7』 skysports,https://stream1.freetv.fun/skysports-15.ctv$LR•IPV4•8『线路8』 zonghe,#genre# -纪晓岚,https://live.ottiptv.cc/huya/11342396$LR•IPV4•2『线路1』 -纪晓岚,http://fmbox.cc/huya.php?id=11342396$LR•IPV4•2『线路2』 +纪晓岚,http://fmbox.cc/huya.php?id=11342396$LR•IPV4•2『线路1』 +纪晓岚,https://live.ottiptv.cc/huya/11342396$LR•IPV4•2『线路2』 地下交通站,http://live.nctv.top/DJlio/huya.php?id=11342433$LR•IPV4•2『线路1』 地下交通站,http://fmbox.cc/huya.php?id=11342433$LR•IPV4•2『线路2』 鹊刀门,http://fmbox.cc/huya.php?id=11352963$LR•IPV4 @@ -999,14 +1000,14 @@ zonghe,#genre# 💓专享源🅰️,#genre# 🐼直播熊猫,https://gcwbndali.v.myalicdn.com/gcwbnd/ipanda1000_2/index.m3u8$LR•IPV4 钱塘江,http://gslbmgsplive.miguvideo.com/wd_r3/cnr/qiantangjiang/2000/index.m3u8?msisdn=20250923080124d2a289d7e8424ddd9ea0d2d29a9e0744&mdspid=&spid=800033&netType=0&sid=5500613479&pid=2028597139×tamp=20250923080124&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=647370520&ParentNodeID=-99&assertID=5500613479&client_ip=106.13.250.83&SecurityKey=20250923080124&promotionId=&mvid=5102115888&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=a4be52553a643d1013946a49db1f0e09&ddCalcu=9a04eeb20e7f5012b5d5934aa664439d3110$LR•IPV4 -HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•8『线路1』 -HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•8『线路2』 -HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•8『线路3』 -HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•8『线路4』 -HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•8『线路5』 -HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•8『线路6』 -HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•8『线路7』 -HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•8『线路8』 +HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•8『线路1』 +HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•8『线路2』 +HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•8『线路3』 +HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•8『线路4』 +HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•8『线路5』 +HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•8『线路6』 +HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•8『线路7』 +HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•8『线路8』 ▶️哪吒1魔童降世,https://vip.ffzy-play7.com/20221111/3098_4ec0b2e9/index.m3u8$LR•IPV4 🔀复仇者联盟1,https://bp-resource.bestv.com.cn/material/8e9fd77cb864f2dd5e70d093a4bba368/2021/0426/video/5fd85575e23f40379d319f455fde9351.m3u8$LR•IPV4 🔀复仇者联盟2,https://bp-resource.bestv.com.cn/material/8e9fd77cb864f2dd5e70d093a4bba368/2020/0722/video/bce6e4ce6a3a4c9989837b58486cc777.m3u8$LR•IPV4 @@ -1148,50 +1149,50 @@ TVB生活,p3p://167.114.175.6:55331/6649aff000061a1753bc59f97f596d07$LR•IPV4 生命电视,http://61.216.67.119:1935/lifetv/lifetv.stream/manifest.m3u8$LR•IPV4 HISTORY,https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.m3u8$LR•IPV4•46『线路1』 HISTORY,https://9e754fa707344ccca6d84955c8fcaf36.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/RlaxxTV-eu_AutenticHistory/playlist.m3u8$LR•IPV4•46『线路2』 -HISTORY,https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路3』 -HISTORY,https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路4』 -HISTORY,https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路5』 -HISTORY,https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路6』 -HISTORY,https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路7』 -HISTORY,https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路8』 -HISTORY,https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路9』 -HISTORY,https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路10』 -HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路11』 -HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路12』 -HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路13』 -HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路14』 -HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路15』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路16』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路17』 -HISTORY,https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路18』 -HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路19』 -HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路20』 -HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路21』 -HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路22』 -HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路23』 -HISTORY,http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路24』 -HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路25』 -HISTORY,https://aes.m3u8simplu.workers.dev/history/index.m3u8$LR•IPV4•46『线路26』 -HISTORY,http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路27』 -HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路28』 -HISTORY,http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路29』 -HISTORY,https://streamer12.xploretv.si/__cl/cg:prod/__c/A1_SI_HISTORYHD_ott/__op/dash-default/__dci/__f/index.m3u8?admin=xploreTv_test_user&redirect=true$LR•IPV4•46『线路30』 -HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路31』 -HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路32』 -HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路33』 -HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路34』 -HISTORY,http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路35』 -HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路36』 -HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路37』 -HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路38』 -HISTORY,https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路39』 -HISTORY,http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路40』 -HISTORY,http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路41』 -HISTORY,https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路42』 -HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路43』 -HISTORY,http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路44』 -HISTORY,http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路45』 -HISTORY,p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路46』 +HISTORY,http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路3』 +HISTORY,http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路4』 +HISTORY,p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路5』 +HISTORY,https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路6』 +HISTORY,https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路7』 +HISTORY,https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路8』 +HISTORY,https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路9』 +HISTORY,https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路10』 +HISTORY,https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路11』 +HISTORY,https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路12』 +HISTORY,https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路13』 +HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路14』 +HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路15』 +HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路16』 +HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路17』 +HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路18』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路19』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路20』 +HISTORY,https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路21』 +HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路22』 +HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路23』 +HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路24』 +HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路25』 +HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路26』 +HISTORY,http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路27』 +HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路28』 +HISTORY,https://aes.m3u8simplu.workers.dev/history/index.m3u8$LR•IPV4•46『线路29』 +HISTORY,http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路30』 +HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路31』 +HISTORY,http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路32』 +HISTORY,https://streamer12.xploretv.si/__cl/cg:prod/__c/A1_SI_HISTORYHD_ott/__op/dash-default/__dci/__f/index.m3u8?admin=xploreTv_test_user&redirect=true$LR•IPV4•46『线路33』 +HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路34』 +HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路35』 +HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路36』 +HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路37』 +HISTORY,http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路38』 +HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路39』 +HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路40』 +HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路41』 +HISTORY,https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路42』 +HISTORY,http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路43』 +HISTORY,http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路44』 +HISTORY,https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路45』 +HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路46』 🏈体育赛事🏆️,#genre# 视频_8M1080_咪视通-1,http://jackgao.top:35455/itv/3000000001000005308.m3u8?cdn=FifastbLive$LR•IPV4•2『线路1』 @@ -1313,30 +1314,30 @@ HISTORY,p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•4 HOOPPARK篮球公园,http://lxajh.top/tv/douyu.php?id=10228726$LR•IPV4 JSPORTS1,https://stream1.freetv.fun/jsports-1-1.m3u8$LR•IPV4 JSPORTS2,https://stream1.freetv.fun/jsports-2-2.m3u8$LR•IPV4 -MLB NETWORK,https://gpuserver3.tier1streams.com/MLB_Network/index.m3u8$LR•IPV4•2『线路1』 -MLB NETWORK,http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路2』 -FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路1』 -FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路2』 -FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路3』 -FOX Sports,https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路4』 -FOX Sports,http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路5』 -FOX Sports,https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路6』 -FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路7』 -FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路8』 -NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路1』 -NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路2』 -NBA,https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•8『线路3』 -NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路4』 -NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路5』 -NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路6』 -NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路7』 -NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路8』 -ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路1』 -ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路2』 -ESPN,http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路3』 -ESPN,http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路4』 -ESPN,http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路5』 -ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路6』 +MLB NETWORK,http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路1』 +MLB NETWORK,https://gpuserver3.tier1streams.com/MLB_Network/index.m3u8$LR•IPV4•2『线路2』 +FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路1』 +FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路2』 +FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路3』 +FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路4』 +FOX Sports,https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路5』 +FOX Sports,http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路6』 +FOX Sports,https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路7』 +FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路8』 +NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路1』 +NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路2』 +NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路3』 +NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路4』 +NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路5』 +NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路6』 +NBA,https://cdn1.ayitistream.com/NBATV/index.m3u8$LR•IPV4•8『线路7』 +NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 +ESPN,http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路1』 +ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路2』 +ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路3』 +ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路4』 +ESPN,http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路5』 +ESPN,http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路6』 緯來體育,http://live4play.uk/livehttpplay?channel_id=20120$LR•IPV4•2『线路1』 緯來體育,rtmp://60.248.77.83/sat/tv721$LR•IPV4•2『线路2』 ELTA體育1台,http://50.7.234.10:8278/eltasport_twn/playlist.m3u8?tid=md3567b35401611916221&ct=17874&tsum=be2a069324faa7f0737ca0d396d43745$LR•IPV4 @@ -1527,13 +1528,12 @@ TraceSports,http://209.141.58.162:4994/proxy?url=http%3A//209.141.58.162%3A5050/ 义胆红唇,https://vip.ffzy-play6.com/20221116/7315_8765f39c/index.m3u8$LR•IPV4 义胆雄心,https://vip.ffzy-play7.com/20221129/7714_a0c75de1/index.m3u8$LR•IPV4 音乐僵尸,https://vip.ffzy-play6.com/20221207/10627_09b3f2e5/index.m3u8$LR•IPV4 -英雄,http://cdn.jdshipin.com:8880/huya.php?id=23824164$LR•IPV4•7『线路1』 -英雄,https://live.ottiptv.cc/yy/1352475619$LR•IPV4•7『线路2』 -英雄,https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•7『线路3』 -英雄,https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•7『线路4』 -英雄,https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•7『线路5』 -英雄,https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•7『线路6』 -英雄,https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•7『线路7』 +英雄,https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•6『线路1』 +英雄,https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•6『线路2』 +英雄,https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•6『线路3』 +英雄,https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•6『线路4』 +英雄,https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•6『线路5』 +英雄,https://live.ottiptv.cc/yy/1352475619$LR•IPV4•6『线路6』 赢钱专家,https://vip.ffzy-play6.com/20221113/6794_d514b390/index.m3u8$LR•IPV4 有话好好说,https://vip.ffzy-play7.com/20221112/3406_98dc6f14/index.m3u8$LR•IPV4 与龙共舞,https://vip.ffzy-play6.com/20221207/10859_1b02d27c/index.m3u8$LR•IPV4 @@ -1642,11 +1642,11 @@ A计划,https://vip.ffzy-play7.com/20221115/4412_bf4bdaf6/index.m3u8$LR•IPV4 贺岁合家欢剧场,https://live.metshop.top/huya/11602067$LR•IPV4 滇军抗战,https://live.metshop.top/huya/11342388$LR•IPV4 联合抗日,https://live.metshop.top/huya/11352910$LR•IPV4 -三国,https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路1』 -三国,https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路2』 -三国,https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路3』 -三国,https://live.metshop.top/huya/11352944$LR•IPV4•5『线路4』 -三国,http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路5』 +三国,https://live.metshop.top/huya/11352944$LR•IPV4•5『线路1』 +三国,http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路2』 +三国,https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路3』 +三国,https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路4』 +三国,https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路5』 雍正皇帝,https://live.metshop.top/huya/11342439$LR•IPV4 许冠英合集,https://live.metshop.top/huya/11601972$LR•IPV4 未知1,http://58.39.190.143:35455/huya/23734246$LR•IPV4 @@ -1678,47 +1678,46 @@ XXXXXXXXX粤,http://lxajh.top/tv/douyu.php?id=8912325$LR•IPV4 航拍中国第一季,http://hls.cntv.myhwcdn.cn/asp/hls/4000/0303000a/3/default/8edf3fb6a69148ea9a7dc0b5a9d99fdb/4000.m3u8$LR•IPV4 航拍中国第二季,http://newcntv.qcloudcdn.com/asp/hls/4000/0303000a/3/default/2bdfdad540b342f592f9817cb7f3b79a/4000.m3u8$LR•IPV4 地理中国,http://newcntv.qcloudcdn.com/asp/hls/1200/0303000a/3/default/c6baf6f74bb944aeacee1065ea72c798/1200.m3u8$LR•IPV4 -纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=21a9fbe86aa9a66410c55abf57faa942$LR•IPV4•41『线路1』 -纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=073d230277253add6243b808de436f8c$LR•IPV4•41『线路2』 -纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路3』 -纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•41『线路4』 -纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•41『线路5』 -纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•41『线路6』 -纪录,http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•41『线路7』 -纪录,http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•41『线路8』 -纪录,http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•41『线路9』 -纪录,http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•41『线路10』 -纪录,http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•41『线路11』 -纪录,http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•41『线路12』 -纪录,http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•41『线路13』 -纪录,http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•41『线路14』 -纪录,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•41『线路15』 -纪录,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•41『线路16』 -纪录,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•41『线路17』 -纪录,http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•41『线路18』 -纪录,http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•41『线路19』 -纪录,http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•41『线路20』 -纪录,http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•41『线路21』 -纪录,http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•41『线路22』 -纪录,http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•41『线路23』 -纪录,http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•41『线路24』 -纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•41『线路25』 -纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•41『线路26』 -纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•41『线路27』 -纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•41『线路28』 -纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路29』 -纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•41『线路30』 -纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•41『线路31』 -纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•41『线路32』 -纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路33』 -纪录,https://gpuserver3.tier1streams.com/MOTORTREND/index.m3u8$LR•IPV4•41『线路34』 -纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路35』 -纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•41『线路36』 -纪录,http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•41『线路37』 -纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•41『线路38』 -纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路39』 -纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路40』 -纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•41『线路41』 +纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=12d4950b0bc42e870ce7e582a7eb5860$LR•IPV4•40『线路1』 +纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•40『线路2』 +纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•40『线路3』 +纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•40『线路4』 +纪录,http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•40『线路5』 +纪录,http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•40『线路6』 +纪录,http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•40『线路7』 +纪录,http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•40『线路8』 +纪录,http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•40『线路9』 +纪录,http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•40『线路10』 +纪录,http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•40『线路11』 +纪录,http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•40『线路12』 +纪录,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•40『线路13』 +纪录,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•40『线路14』 +纪录,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•40『线路15』 +纪录,http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•40『线路16』 +纪录,http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•40『线路17』 +纪录,http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•40『线路18』 +纪录,http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•40『线路19』 +纪录,http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•40『线路20』 +纪录,http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•40『线路21』 +纪录,http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•40『线路22』 +纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•40『线路23』 +纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•40『线路24』 +纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•40『线路25』 +纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•40『线路26』 +纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•40『线路27』 +纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•40『线路28』 +纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•40『线路29』 +纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•40『线路30』 +纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•40『线路31』 +纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•40『线路32』 +纪录,https://gpuserver3.tier1streams.com/MOTORTREND/index.m3u8$LR•IPV4•40『线路33』 +纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•40『线路34』 +纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•40『线路35』 +纪录,http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•40『线路36』 +纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•40『线路37』 +纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•40『线路38』 +纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•40『线路39』 +纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•40『线路40』 💓儿童专享,#genre# 樱桃小丸子剧,http://103.193.151.146/huya.php?id=11342394$LR•IPV4 @@ -1730,18 +1729,18 @@ Japanim TV,https://foxkidstv.be:3369/stream/play.m3u8$LR•IPV4 Kuriakos Kids,https://w2.manasat.com/kkids/smil:kkids.smil/playlist.m3u8$LR•IPV4 XilamTV,https://xilam-animation-1-fr.samsung.wurl.tv/playlist.m3u8$LR•IPV4 FanpopTV,https://streaming-cl.sh1ny.space/memfs/e16d2f72-70b5-4bf5-b9c5-107b6390a10f.m3u8$LR•IPV4 -儿童,http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•26『线路1』 -儿童,http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•26『线路2』 -儿童,http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•26『线路3』 -儿童,http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•26『线路4』 -儿童,http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•26『线路5』 -儿童,http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•26『线路6』 -儿童,http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•26『线路7』 -儿童,http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•26『线路8』 -儿童,http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•26『线路9』 -儿童,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•26『线路10』 -儿童,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•26『线路11』 -儿童,p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•26『线路12』 +儿童,http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•26『线路1』 +儿童,http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•26『线路2』 +儿童,http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•26『线路3』 +儿童,http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•26『线路4』 +儿童,http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•26『线路5』 +儿童,http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•26『线路6』 +儿童,http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•26『线路7』 +儿童,http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•26『线路8』 +儿童,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•26『线路9』 +儿童,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•26『线路10』 +儿童,p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•26『线路11』 +儿童,http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•26『线路12』 儿童,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbeebies_hd/iptv_hd_abr_v1.mpd$LR•IPV4•26『线路13』 儿童,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•26『线路14』 儿童,https://amg02757-amg02757c3-rakuten-de-6135.playouts.now.amagi.tv/playlist/amg02757-loolookids-llkdefast-rakutende/playlist.m3u8$LR•IPV4•26『线路15』 @@ -1752,15 +1751,15 @@ FanpopTV,https://streaming-cl.sh1ny.space/memfs/e16d2f72-70b5-4bf5-b9c5-107b6390 儿童,https://jmp2.uk/plu-60fb01a24795a6000762fe83.m3u8$LR•IPV4•26『线路20』 儿童,https://trs1.aynaott.com/discoverykids/index.m3u8$LR•IPV4•26『线路21』 儿童,https://627bb251f23c7.streamlock.net:444/ExtremaKids/ExtremaKids/playlist.m3u8$LR•IPV4•26『线路22』 -儿童,https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•26『线路23』 -儿童,p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•26『线路24』 -儿童,p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•26『线路25』 +儿童,p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•26『线路23』 +儿童,p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•26『线路24』 +儿童,https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•26『线路25』 儿童,p3p://167.114.175.6:55331/64bea3f00002bdf919e6522520650b26$LR•IPV4•26『线路26』 🍹定制台☕️,#genre# 韩国娱乐台,https://stream1.freetv.fun/glo-bet-1.ctv$LR•IPV4 -贝爷,http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路1』 -贝爷,http://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路2』 +贝爷,http://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路1』 +贝爷,http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路2』 挨饿德•1,https://live.iill.top/huya/20985858$LR•IPV4•2『线路1』 挨饿德•1,http://dns.yiandrive.com:15907/huya/20985858$LR•IPV4•2『线路2』 挨饿德•2,https://live.iill.top/huya/17693860$LR•IPV4 @@ -1807,19 +1806,19 @@ Now Golf 2,p3p://167.114.175.6:55331/65ac341b0001d490b9dd02ac4c2c28a0$LR•IPV4 Now Golf 3,p3p://167.114.175.6:55331/65ac34bf000aaf51b9df85914abe0ec4$LR•IPV4 Channel V,p3p://167.114.175.6:55331/657da67d0006060a0404d5987d1853db$LR•IPV4 Mytv Super18,p3p://167.114.175.6:55331/6506d591000d6d7733e6bdfb4725689e$LR•IPV4 -Star Movies,http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路1』 -Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路2』 -Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路3』 -Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路4』 -Star Movies,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路5』 +Star Movies,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路1』 +Star Movies,http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路2』 +Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路3』 +Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路4』 +Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路5』 NOW 668跑马,p3p://167.114.175.6:55331/6318b7730000b372fb7ca7e170c66e54$LR•IPV4 Cinemax HK,p3p://167.114.175.6:55331/65b1767d00058cdcce68527c3131148e$LR•IPV4 NOW 报价,p3p://167.114.175.6:55331/65acda400000be11bc6602f779434a76$LR•IPV4 智慧跑马,p3p://167.114.175.6:55331/66e860ba000b17abca4b7ac11c665324$LR•IPV4 OneTV综合,p3p://167.114.175.6:55331/64d5c5550007c4d9744057ea09db782a$LR•IPV4 -C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•4『线路1』 -C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•4『线路2』 -C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•4『线路3』 +C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•4『线路1』 +C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•4『线路2』 +C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•4『线路3』 C+,p3p://167.114.175.6:55331/65ac2e740004fbd2b9c6ef2b03744ac0$LR•IPV4•4『线路4』 有线赛马18,p3p://167.114.175.6:55331/66e85b81000bcd1eca37145143a407c7$LR•IPV4•2『线路1』 有线赛马18,p3p://167.114.175.6:55331/64db58eb000d759e8a08afbc7bd65062$LR•IPV4•2『线路2』 @@ -1828,8 +1827,8 @@ C+,p3p://167.114.175.6:55331/65ac2e740004fbd2b9c6ef2b03744ac0$LR•IPV4•4『 Bein Sport 1,p3p://167.114.175.6:55331/667b10d1000e2b38149def9902d56b98$LR•IPV4 Bein Sport 2,p3p://167.114.175.6:55331/667b119a00012c7814a0fd5f0a4144be$LR•IPV4 Bein Sport 3,p3p://167.114.175.6:55331/667b130b000bb1a114a6a17a06ea671a$LR•IPV4 -Super Kids,https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路1』 -Super Kids,p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路2』 +Super Kids,p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路1』 +Super Kids,https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路2』 创世电视,p3p://167.114.175.6:55331/65ac3ff5000d8862ba0b51494dc3254e$LR•IPV4 面包台,p3p://167.114.175.6:55331/64c26e6d0003155c28b54a8561850853$LR•IPV4 神州新闻,p3p://167.114.175.6:55331/655e74f7000953678a2be18968661f5f$LR•IPV4 @@ -1849,46 +1848,46 @@ EYE旅游,p3p://167.114.175.6:55331/64c105a500023b4e2333fd1453e42393$LR•IPV4 尼克JR,p3p://167.114.175.6:55331/6233e05300064fcf7d9f8a39563b6c75$LR•IPV4 达芬奇,p3p://167.114.175.6:55331/62011f820008c9f3c33ae0231cf86a05$LR•IPV4 EL生活英语,p3p://167.114.175.6:55331/624888bb000b784ace507da37b7906ea$LR•IPV4 -Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路1』 -Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路2』 -Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路3』 -Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路4』 -Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路5』 -Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路6』 -Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路7』 -Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路8』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路9』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路10』 -Z,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路11』 +Z,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路1』 +Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路2』 +Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路3』 +Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路4』 +Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路5』 +Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路6』 +Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路7』 +Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路8』 +Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路9』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路10』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路11』 博斯无限1,p3p://167.114.175.6:55331/647cba27000a6f78186e481d11013645$LR•IPV4 博斯无限2,p3p://167.114.175.6:55331/6146901b0006875bea841df772893d7b$LR•IPV4 Star World,p3p://167.114.175.6:55331/621dc4640002052a2743501031f65ed4$LR•IPV4 HITS,https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•26『线路1』 HITS,https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•26『线路2』 -HITS,https://webtvstream.bhtelecom.ba/filmbox_premium.m3u8$LR•IPV4•26『线路3』 -HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•26『线路4』 -HITS,https://aes.m3u8simplu.workers.dev/filmboxpremium/index.m3u8$LR•IPV4•26『线路5』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•26『线路6』 -HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•26『线路7』 -HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•26『线路8』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•26『线路9』 -HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•26『线路10』 -HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路11』 -HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•26『线路12』 -HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•26『线路13』 -HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•26『线路14』 -HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•26『线路15』 -HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•26『线路16』 -HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•26『线路17』 -HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路18』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•26『线路19』 -HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路20』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•26『线路21』 -HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•26『线路22』 -HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•26『线路23』 -HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•26『线路24』 -HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•26『线路25』 -HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•26『线路26』 +HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•26『线路3』 +HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•26『线路4』 +HITS,https://webtvstream.bhtelecom.ba/filmbox_premium.m3u8$LR•IPV4•26『线路5』 +HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•26『线路6』 +HITS,https://aes.m3u8simplu.workers.dev/filmboxpremium/index.m3u8$LR•IPV4•26『线路7』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•26『线路8』 +HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•26『线路9』 +HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•26『线路10』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•26『线路11』 +HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•26『线路12』 +HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路13』 +HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•26『线路14』 +HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•26『线路15』 +HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•26『线路16』 +HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•26『线路17』 +HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•26『线路18』 +HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•26『线路19』 +HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路20』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•26『线路21』 +HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•26『线路22』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•26『线路23』 +HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•26『线路24』 +HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•26『线路25』 +HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•26『线路26』 探索亚洲,p3p://167.114.175.6:55331/623bc4f4000da3919c742e942bdb3571$LR•IPV4 中旺电视,p3p://167.114.175.6:55331/5fe09c570001addf7454c44e021f76be$LR•IPV4 龙华影剧,p3p://167.114.175.6:55331/65e4428e00043fa694d464e62de86858$LR•IPV4 @@ -1922,9 +1921,9 @@ Life Time,p3p://167.114.175.6:55331/6233e3870008739f7dac0de912e2311a$LR•IPV4 爱尔达体育4,p3p://167.114.175.6:55331/6561b7fc0008015996e9acc674481614$LR•IPV4 历史2,p3p://167.114.175.6:55331/6233e2240002d3af7da6a1bf693a1ed5$LR•IPV4 Trace Sport,https://lightning-tracesport-samsungau.amagi.tv/playlist.m3u8$LR•IPV4•4『线路1』 -Trace Sport,https://stream8.cinerama.uz/1274/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路2』 -Trace Sport,https://channels.trace.plus/Traceprod/TRACE_SPORT_STARS_sd/index.m3u8$LR•IPV4•4『线路3』 -Trace Sport,p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$LR•IPV4•4『线路4』 +Trace Sport,p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$LR•IPV4•4『线路2』 +Trace Sport,https://stream8.cinerama.uz/1274/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路3』 +Trace Sport,https://channels.trace.plus/Traceprod/TRACE_SPORT_STARS_sd/index.m3u8$LR•IPV4•4『线路4』 韩国娱乐,p3p://167.114.175.6:55331/621e16b0000ec4772884cc295a1614a8$LR•IPV4 爱尔达娱乐,p3p://167.114.175.6:55331/6655f9670006cadc83bb27fd61065f47$LR•IPV4 Cinemax,p3p://167.114.175.6:55331/64ce039d0009f00b55f3e422778f3af3$LR•IPV4 @@ -1938,8 +1937,8 @@ Boomerang,p3p://167.114.175.6:55331/621e313f0005594c28ec88582a49029c$LR•IPV4 原住民电视,p3p://167.114.175.6:55331/64450b180002b23d3eeb784a0aa62e20$LR•IPV4 EVE,p3p://167.114.175.6:55331/6445172e000920783f1aafee754f43e4$LR•IPV4 Classica古典音乐,p3p://167.114.175.6:55331/6452b4f1000c38e8744ac80744c33d67$LR•IPV4 -Mezzo Live,https://test.946985.filegear-sg.me/proxy/749755700e4ed9c6$LR•IPV4•2『线路1』 -Mezzo Live,p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$LR•IPV4•2『线路2』 +Mezzo Live,p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$LR•IPV4•2『线路1』 +Mezzo Live,https://test.946985.filegear-sg.me/proxy/749755700e4ed9c6$LR•IPV4•2『线路2』 UniverseTV,p3p://167.114.175.6:55331/644fbb7c0004a5e968ac550c11f72df5$LR•IPV4 Global Trekker,p3p://167.114.175.6:55331/644fb34f000f396e688c67ff6b147338$LR•IPV4 高点综合,p3p://167.114.175.6:55331/66451f170007dee141e6b5b207f34f57$LR•IPV4 @@ -1948,12 +1947,12 @@ Global Trekker,p3p://167.114.175.6:55331/644fb34f000f396e688c67ff6b147338$LR•I ELtoday综合,p3p://167.114.175.6:55331/64c7d0cb0005131a3dbd5e9f3e8523f2$LR•IPV4 国会 1,p3p://167.114.175.6:55331/64ce0646000722d755fe479603e64ba8$LR•IPV4 国会 2,p3p://167.114.175.6:55331/64ce06980008b4f755ff884d646a56da$LR•IPV4 -SMART,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/bsmart.m3u8$LR•IPV4•4『线路1』 -SMART,https://amg16109-shgliving-amg16109c1-klowdtv-us-2235.playouts.now.amagi.tv/playlist/amg16109-shglivingnetwork-smarthealthygreenliving-klowdtvus/playlist.m3u8$LR•IPV4•4『线路2』 -SMART,https://brightstar-sls-pull-secure.akamaized.net/brightstarsls/stream.m3u8$LR•IPV4•4『线路3』 -SMART,p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路4』 -CMUSIC,https://lotus.stingray.com/manifest/cmusic-cme004-montreal/samsungtvplus/master.m3u8$LR•IPV4•2『线路1』 -CMUSIC,p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$LR•IPV4•2『线路2』 +SMART,p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路1』 +SMART,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/bsmart.m3u8$LR•IPV4•4『线路2』 +SMART,https://amg16109-shgliving-amg16109c1-klowdtv-us-2235.playouts.now.amagi.tv/playlist/amg16109-shglivingnetwork-smarthealthygreenliving-klowdtvus/playlist.m3u8$LR•IPV4•4『线路3』 +SMART,https://brightstar-sls-pull-secure.akamaized.net/brightstarsls/stream.m3u8$LR•IPV4•4『线路4』 +CMUSIC,p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$LR•IPV4•2『线路1』 +CMUSIC,https://lotus.stingray.com/manifest/cmusic-cme004-montreal/samsungtvplus/master.m3u8$LR•IPV4•2『线路2』 Rock Entertainmen,p3p://167.114.175.6:55331/65ad27c7000dfceebd94ddb20bec19f4$LR•IPV4 台湾戏剧,p3p://167.114.175.6:55331/65db6918000269797243208140f3251f$LR•IPV4 视纳华仁纪实,p3p://167.114.175.6:55331/62c9a3be00088219c69bba2111fd091e$LR•IPV4 @@ -1963,13 +1962,13 @@ Rock Entertainmen,p3p://167.114.175.6:55331/65ad27c7000dfceebd94ddb20bec19f4$LR 凤凰美洲,p3p://167.114.175.6:55331/5fe00fca0004e627722fbe5a480a642f$LR•IPV4 💓英语频道,#genre# -Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路1』 -Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路2』 -Red Bull TV,https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路3』 -Red Bull TV,https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 -Red Bull TV,https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 -Red Bull TV,https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 -Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路7』 +Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路1』 +Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路2』 +Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路3』 +Red Bull TV,https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 +Red Bull TV,https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 +Red Bull TV,https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 +Red Bull TV,https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路7』 FRANCE24 English,http://aktv.top/AKTV/live/aktv3/france24/AKTV.m3u8$LR•IPV4 BAND NEWS,https://stream1.freetv.fun/band-news-2.ctv$LR•IPV4•2『线路1』 BAND NEWS,https://stream1.freetv.fun/band-news-1.m3u8$LR•IPV4•2『线路2』 @@ -1991,123 +1990,114 @@ Loupe 4K,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4726&tk=f6cc1e0a0e1a$LR•IP 🌐央视频道,#genre# CCTV兵器,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784772000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6ed114801b644526e56bc651d7ab5b8b&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•97『线路1』 -CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•97『线路2』 -CCTV,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•97『线路3』 -CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•97『线路4』 -CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•97『线路5』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•97『线路6』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•97『线路7』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•97『线路8』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•97『线路9』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•97『线路10』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•97『线路11』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•97『线路12』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•97『线路13』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•97『线路14』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•97『线路15』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•97『线路16』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•97『线路17』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•97『线路18』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•97『线路19』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•97『线路20』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•97『线路21』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•97『线路22』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•97『线路23』 -CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•97『线路24』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv2hd$LR•IPV4•97『线路25』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•97『线路26』 -CCTV,http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•97『线路27』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•97『线路28』 -CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•97『线路29』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv5hd.m3u8?auth=testpub$LR•IPV4•97『线路30』 -CCTV,http://198.204.228.26/live/cctv6hd.m3u8$LR•IPV4•97『线路31』 -CCTV,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•97『线路32』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•97『线路33』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv7hd$LR•IPV4•97『线路34』 -CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•97『线路35』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•97『线路36』 -CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•97『线路37』 -CCTV,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•97『线路38』 -CCTV,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•97『线路39』 -CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•97『线路40』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•97『线路41』 -CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•97『线路42』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•97『线路43』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•97『线路44』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•97『线路45』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•97『线路46』 -CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•97『线路47』 -CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•97『线路48』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•97『线路49』 -CCTV,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•97『线路50』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•97『线路51』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•97『线路52』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•97『线路53』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•97『线路54』 -CCTV,http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•97『线路55』 -CCTV,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•97『线路56』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•97『线路57』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•97『线路58』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•97『线路59』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784768400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-7a2de08a3a510255b2be53fbd6929544&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•97『线路60』 -CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•97『线路61』 -CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•97『线路62』 -CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•97『线路63』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•97『线路64』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•97『线路65』 -CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•97『线路66』 -CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•97『线路67』 -CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•97『线路68』 -CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•97『线路69』 -CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•97『线路70』 -CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•97『线路71』 -CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•97『线路72』 -CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•97『线路73』 -CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•97『线路74』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•97『线路75』 -CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•97『线路76』 -CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•97『线路77』 -CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•97『线路78』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•97『线路79』 -CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•97『线路80』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•97『线路81』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•97『线路82』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•97『线路83』 -CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•97『线路84』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•97『线路85』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•97『线路86』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•97『线路87』 -CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•97『线路88』 -CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•97『线路89』 -CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•97『线路90』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•97『线路91』 -CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•97『线路92』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•97『线路93』 -CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•97『线路94』 -CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•97『线路95』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•97『线路96』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•97『线路97』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784779200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-98245a006136ecdf04e0d3c737dd6086&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•96『线路1』 +CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•96『线路2』 +CCTV,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•96『线路3』 +CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•96『线路4』 +CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•96『线路5』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784703600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-3f00907937f03b0f567a51d53fdb3640&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•96『线路6』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•96『线路7』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•96『线路8』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•96『线路9』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•96『线路10』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•96『线路11』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•96『线路12』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•96『线路13』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•96『线路14』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•96『线路15』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•96『线路16』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•96『线路17』 +CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•96『线路18』 +CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•96『线路19』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•96『线路20』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•96『线路21』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•96『线路22』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•96『线路23』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•96『线路24』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•96『线路25』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•96『线路26』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•96『线路27』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•96『线路28』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•96『线路29』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•96『线路30』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•96『线路31』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•96『线路32』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•96『线路33』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•96『线路34』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•96『线路35』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•96『线路36』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•96『线路37』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•96『线路38』 +CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•96『线路39』 +CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•96『线路40』 +CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•96『线路41』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv2hd$LR•IPV4•96『线路42』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•96『线路43』 +CCTV,http://198.204.228.26/live/cctv4hd.m3u8$LR•IPV4•96『线路44』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•96『线路45』 +CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•96『线路46』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv5hd.m3u8?auth=testpub$LR•IPV4•96『线路47』 +CCTV,http://198.204.228.26/live/cctv6hd.m3u8$LR•IPV4•96『线路48』 +CCTV,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•96『线路49』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•96『线路50』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv7hd$LR•IPV4•96『线路51』 +CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•96『线路52』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•96『线路53』 +CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•96『线路54』 +CCTV,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•96『线路55』 +CCTV,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=ee40d0896bf97f61967a1128cb8af630$LR•IPV4•96『线路56』 +CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•96『线路57』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•96『线路58』 +CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•96『线路59』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•96『线路60』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•96『线路61』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv11hd$LR•IPV4•96『线路62』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv12hd$LR•IPV4•96『线路63』 +CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•96『线路64』 +CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•96『线路65』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv14hd.m3u8?auth=testpub$LR•IPV4•96『线路66』 +CCTV,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•96『线路67』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•96『线路68』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv14hd$LR•IPV4•96『线路69』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•96『线路70』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•96『线路71』 +CCTV,http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•96『线路72』 +CCTV,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•96『线路73』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•96『线路74』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv16hd.m3u8?auth=testpub$LR•IPV4•96『线路75』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv17hd$LR•IPV4•96『线路76』 +CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•96『线路77』 +CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•96『线路78』 +CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•96『线路79』 +CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•96『线路80』 +CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•96『线路81』 +CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•96『线路82』 +CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•96『线路83』 +CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•96『线路84』 +CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•96『线路85』 +CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•96『线路86』 +CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•96『线路87』 +CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•96『线路88』 +CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•96『线路89』 +CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•96『线路90』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•96『线路91』 +CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•96『线路92』 +CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•96『线路93』 +CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•96『线路94』 +CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•96『线路95』 +CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•96『线路96』 明星,#genre# -周星星,http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4 周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4 -李连杰,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4 -梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4 -刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•3『线路1』 -刘德华,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•3『线路2』 -刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•3『线路3』 +刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路1』 +刘德华,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•2『线路2』 成龙,http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4 -黄渤,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4 -林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•3『线路1』 -林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•3『线路2』 +王晶,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4 +林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•3『线路1』 +林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•3『线路2』 林正英,http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•3『线路3』 甄子丹,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4 -主题片,#genre# -谍战片,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4 -战争片,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4 - 国际台,#genre# VOA美国之音,https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlist.m3u8$LR•IPV4 @@ -2184,12 +2174,11 @@ VOA美国之音,https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlis 青岛崂山八水河,https://gcalic.v.myalicdn.com/gc/qdls02_1/index.m3u8$LR•IPV4 青岛崂山双福,https://gcalic.v.myalicdn.com/gc/qdls03_1/index.m3u8$LR•IPV4 鸣沙山,https://gcalic.v.myalicdn.com/gc/dhyyqst_1/index.m3u8$LR•IPV4 -黄山,https://gcalic.v.myalicdn.com/gc/ahhs01_1/index.m3u8$LR•IPV4•6『线路1』 -黄山,http://hslive.hsnewsnet.com/lsdream/iY92ady/1000/live.m3u8?zanhd$LR•IPV4•6『线路2』 -黄山,https://gcalic.v.myalicdn.com/gc/hsyg_1/index.m3u8$LR•IPV4•6『线路3』 -黄山,https://gcalic.v.myalicdn.com/gc/hspyt_1/index.m3u8$LR•IPV4•6『线路4』 -黄山,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•6『线路5』 -黄山,https://gcalic.v.myalicdn.com/gc/hsptgy_1/index.m3u8$LR•IPV4•6『线路6』 +黄山,https://gcalic.v.myalicdn.com/gc/ahhs01_1/index.m3u8$LR•IPV4•5『线路1』 +黄山,https://gcalic.v.myalicdn.com/gc/hsyg_1/index.m3u8$LR•IPV4•5『线路2』 +黄山,https://gcalic.v.myalicdn.com/gc/hspyt_1/index.m3u8$LR•IPV4•5『线路3』 +黄山,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8?zanhd$LR•IPV4•5『线路4』 +黄山,https://gcalic.v.myalicdn.com/gc/hsptgy_1/index.m3u8$LR•IPV4•5『线路5』 黄果树六角亭瀑布,https://gcalic.v.myalicdn.com/gc/hgsspzxdpb_1/index.m3u8$LR•IPV4 黄花城水长城01,https://gcalic.v.myalicdn.com/gc/wgw01_1/index.m3u8$LR•IPV4 黄花城水长城02,http://gctxyc.liveplay.myqcloud.com/gc/wgw02_1/index.m3u8$LR•IPV4 @@ -2199,28 +2188,27 @@ VOA美国之音,https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlis 一起看,#genre# Cc,https://cdn3.wowza.com/5/cHYzekYzM2kvTVFH/charlotte/G0055_009/playlist.m3u8$LR•IPV4•2『线路1』 Cc,https://jmp2.uk/plu-5d4947590ba40f75dc29c26b.m3u8$LR•IPV4•2『线路2』 -嫣然,http://live.metshop.top/huya/11601977?cdn=alicdn$LR•IPV4 YOUNG,https://amg01220-amg01220c1-firetv-us-5111.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•3『线路1』 YOUNG,https://amg00143-younghollywoodfast-amg00143c1-cineverse-us-946.playouts.now.amagi.tv/playlist/amg00143-younghollywoodfast-younghollywood-cineverseus/playlist.m3u8$LR•IPV4•3『线路2』 YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3』 -快乐,http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路1』 -快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路2』 -快乐,https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路3』 -快乐,http://111.231.6.102:1234/961930263$LR•IPV4•31『线路4』 -快乐,http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路5』 -快乐,https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路6』 -快乐,http://115.190.247.176:1111/961930263$LR•IPV4•31『线路7』 -快乐,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路8』 -快乐,http://182.61.15.84:80/961930263$LR•IPV4•31『线路9』 -快乐,http://60.168.105.87:5008/961930263$LR•IPV4•31『线路10』 -快乐,http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路11』 -快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路12』 -快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路13』 -快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路14』 -快乐,http://123.113.205.253:3000/961930263$LR•IPV4•31『线路15』 -快乐,https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路16』 -快乐,http://110.154.192.66:7788/961930263$LR•IPV4•31『线路17』 -快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路18』 +快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8454&tk=a0c4f6cfaba3$LR•IPV4•31『线路1』 +快乐,https://hls-gateway.vpstv.net/streams/708835.m3u8$LR•IPV4•31『线路2』 +快乐,http://111.231.6.102:1234/961930263$LR•IPV4•31『线路3』 +快乐,http://home.wwang.pw:35455/itv/5000000011000031206.m3u8?cdn=bestzb$LR•IPV4•31『线路4』 +快乐,https://migu.188766.xyz/?migutoken=f4d62cd1f8775b1b837f4232f1051f36&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路5』 +快乐,http://115.190.247.176:1111/961930263$LR•IPV4•31『线路6』 +快乐,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/KLCDMPP360.m3u8$LR•IPV4•31『线路7』 +快乐,http://182.61.15.84:80/961930263$LR•IPV4•31『线路8』 +快乐,http://60.168.105.87:5008/961930263$LR•IPV4•31『线路9』 +快乐,http://nas.hssvm.com:8888/udp/225.1.2.18:5002$LR•IPV4•31『线路10』 +快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8968&tk=e640d0a1bf70$LR•IPV4•31『线路11』 +快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0882&tk=f6cc1e0a0e1a$LR•IPV4•31『线路12』 +快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4961&tk=b53028476470$LR•IPV4•31『线路13』 +快乐,http://123.113.205.253:3000/961930263$LR•IPV4•31『线路14』 +快乐,https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路15』 +快乐,http://110.154.192.66:7788/961930263$LR•IPV4•31『线路16』 +快乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1275&tk=a0c4f6cfaba3$LR•IPV4•31『线路17』 +快乐,http://drive.mxmy.net:8888/udp/239.3.1.164:8001$LR•IPV4•31『线路18』 快乐,https://migu.188766.xyz/?migutoken=396182b2a9b61dca2daded3fc6f62311&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•31『线路19』 快乐,http://47.104.178.59:3566/961930263$LR•IPV4•31『线路20』 快乐,http://wouu.net:9977/udp/239.93.1.151:5140$LR•IPV4•31『线路21』 @@ -2238,30 +2226,30 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 卫视,#genre# 梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•2『线路1』 梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 -辽宁公共,http://120.76.248.139/live/bfgd/4200000481.m3u8$LR•IPV4 +辽宁公共,http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 中华特产,http://120.76.248.139/live/bfgd/4200000158.m3u8$LR•IPV4 安多卫视,https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 浙江,#genre# -浙江民生休闲,http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路1』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路2』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路3』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路4』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路5』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路6』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路7』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路8』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路9』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路10』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路11』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路12』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路13』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路14』 -浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路15』 -浙江民生休闲,http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路16』 -浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路17』 -浙江民生休闲,http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路18』 -浙江民生休闲,http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路19』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路1』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路2』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-5.m3u8$LR•IPV4•37『线路3』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.m3u8$LR•IPV4•37『线路4』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-3.ctv$LR•IPV4•37『线路5』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路6』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-2.m3u8$LR•IPV4•37『线路7』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路8』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路9』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路10』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路11』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路12』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-1-1.m3u8$LR•IPV4•37『线路13』 +浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-6.ctv$LR•IPV4•37『线路14』 +浙江民生休闲,http://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路15』 +浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路16』 +浙江民生休闲,http://ali-xwl.cztv.com/live/channel06720Plxw.m3u8$LR•IPV4•37『线路17』 +浙江民生休闲,http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路18』 +浙江民生休闲,http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路19』 浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-4.ctv$LR•IPV4•37『线路20』 浙江民生休闲,http://ali-vl.cztv.com/channels/lantian/channel006/360p.m3u8$LR•IPV4•37『线路21』 浙江民生休闲,https://stream1.freetv.fun/zhe-jiang-min-sheng-10.m3u8$LR•IPV4•37『线路22』 @@ -2280,25 +2268,25 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江民生休闲,https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8?$LR•IPV4•37『线路35』 浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-11.m3u8$LR•IPV4•37『线路36』 浙江民生休闲,https://t.freetv.fun/live/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路37』 -浙江教科影院,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•2『线路1』 -浙江教科影院,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•2『线路2』 +浙江教科影院,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•2『线路1』 +浙江教科影院,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8$LR•IPV4•2『线路2』 舟山新闻综合,http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路2』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路3』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路4』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路5』 -浙江新闻,http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路6』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路7』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路8』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路9』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路10』 -浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路11』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路12』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路13』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路14』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路15』 -浙江新闻,http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路16』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路1』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路2』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-5.m3u8$LR•IPV4•34『线路3』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路4』 +浙江新闻,http://api3.52tb.xyz/info?id=434&token=20221127jxwhhemby$LR•IPV4•34『线路5』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-12.m3u8$LR•IPV4•34『线路6』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路7』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路8』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.ctv$LR•IPV4•34『线路9』 +浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路10』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路11』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路12』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路13』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/1080p.m3u8$LR•IPV4•34『线路14』 +浙江新闻,http://ali-vl.cztv.com/channels/lantian/channel007/360p.m3u8$LR•IPV4•34『线路15』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路16』 浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-10.m3u8$LR•IPV4•34『线路17』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路18』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路19』 @@ -2317,53 +2305,53 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen.m3u8$LR•IPV4•34『线路32』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路33』 浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路34』 -浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路1』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路2』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路3』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路4』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路5』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路6』 -浙江国际,https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路7』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路8』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路9』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路10』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路11』 -浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路12』 -浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路13』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路14』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路15』 -浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路16』 -浙江国际,https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路17』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路18』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路19』 -浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路20』 -浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路21』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路22』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路23』 -浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路24』 -浙江国际,https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路25』 -浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路26』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?zzhed$LR•IPV4•32『线路1』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.ctv$LR•IPV4•32『线路2』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-5.m3u8$LR•IPV4•32『线路3』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路4』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路5』 +浙江国际,https://qiniup-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路6』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路7』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路8』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-3.ctv$LR•IPV4•32『线路9』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-4.m3u8$LR•IPV4•32『线路10』 +浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路11』 +浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8$LR•IPV4•32『线路12』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/720p.m3u8$LR•IPV4•32『线路13』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-10.m3u8$LR•IPV4•32『线路14』 +浙江国际,http://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路15』 +浙江国际,https://stream1.freetv.fun/8edc171ba7945fd93cc0f2c9e39b48ba0a94500d0029db9456dfdc2d75f9ea9d.m3u8$LR•IPV4•32『线路16』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路17』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-11.m3u8$LR•IPV4•32『线路18』 +浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8?$LR•IPV4•32『线路19』 +浙江国际,http://ali-xwl.cztv.com/live/channel101080Plxw.m3u8$LR•IPV4•32『线路20』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-6.m3u8$LR•IPV4•32『线路21』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-7.m3u8$LR•IPV4•32『线路22』 +浙江国际,http://ali-vl.cztv.com/channels/lantian/channel010/360p.m3u8?a=1000&d=4e3d476240659192311f471b7b63aec2&k=d26568bae9dd23dd781c769c148459b2&t=1683180450$LR•IPV4•32『线路23』 +浙江国际,https://ct-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路24』 +浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-1.m3u8$LR•IPV4•32『线路25』 +浙江国际,https://ali-m-l.cztv.com/channels/lantian/channel010/1080p.m3u8$LR•IPV4•32『线路26』 浙江国际,http://ali-xwl.cztv.com/live/channel10720Plxw.m3u8$LR•IPV4•32『线路27』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-8.m3u8$LR•IPV4•32『线路28』 浙江国际,https://stream1.freetv.fun/zhe-jiang-guo-ji-9.m3u8$LR•IPV4•32『线路29』 浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-3.m3u8$LR•IPV4•32『线路30』 浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji.m3u8$LR•IPV4•32『线路31』 浙江国际,https://t.freetv.fun/live/zhe-jiang-guo-ji-2.m3u8$LR•IPV4•32『线路32』 -浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 -浙江少儿,http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路2』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路3』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路4』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路5』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路6』 -浙江少儿,http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路7』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路8』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路9』 -浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路10』 -浙江少儿,http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路11』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路12』 -浙江少儿,http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路13』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路14』 -浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路15』 +浙江少儿,http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路1』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-6.ctv$LR•IPV4•18『线路2』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-11.m3u8$LR•IPV4•18『线路3』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-8.m3u8$LR•IPV4•18『线路4』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-7.m3u8$LR•IPV4•18『线路5』 +浙江少儿,http://ali-xwl.cztv.com/live/channel081080Plxw.m3u8$LR•IPV4•18『线路6』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-2.m3u8$LR•IPV4•18『线路7』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-3.m3u8$LR•IPV4•18『线路8』 +浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?$LR•IPV4•18『线路9』 +浙江少儿,http://ali-vl.cztv.com/channels/lantian/channel008/360p.m3u8$LR•IPV4•18『线路10』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-4.m3u8$LR•IPV4•18『线路11』 +浙江少儿,http://ali-xwl.cztv.com/live/channel08720Plxw.m3u8$LR•IPV4•18『线路12』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-9.ctv$LR•IPV4•18『线路13』 +浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-10.ctv$LR•IPV4•18『线路14』 +浙江少儿,https://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路15』 浙江少儿,https://ct-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8$LR•IPV4•18『线路16』 浙江少儿,http://ali-m-l.cztv.com/channels/lantian/channel008/1080p.m3u8?fbl=$LR•IPV4•18『线路17』 浙江少儿,https://stream1.freetv.fun/zhe-jiang-shao-er-4.ctv$LR•IPV4•18『线路18』 @@ -2375,22 +2363,22 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江教科,http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•8『线路6』 浙江教科,http://ali-vl.cztv.com/channels/lantian/channel004/360p.m3u8$LR•IPV4•8『线路7』 浙江教科,http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•8『线路8』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路1』 -浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路2』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路3』 -浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路4』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路5』 -浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路6』 -浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路7』 -浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路8』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路9』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路10』 -浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路11』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路12』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路13』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路14』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路15』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•19『线路16』 +浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路1』 +浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路2』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路3』 +浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路4』 +浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路5』 +浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路6』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路7』 +浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路8』 +浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路9』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路10』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路11』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路12』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路13』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路14』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•19『线路15』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路16』 浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路17』 浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•19『线路18』 浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路19』 @@ -2402,42 +2390,42 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 公共新闻,https://stream1.freetv.fun/zhe-jiang-gong-gong-xin-wen-1.m3u8$LR•IPV4•6『线路6』 上虞新闻综合,http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?zzhed$LR•IPV4•2『线路1』 上虞新闻综合,http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•2『线路2』 -上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路1』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 -上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路3』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路4』 -上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路5』 -上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路6』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路7』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路1』 +上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路3』 +上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路4』 +上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路5』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路6』 +上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路7』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-4.m3u8$LR•IPV4•11『线路8』 上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed?$LR•IPV4•11『线路9』 上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed\r\n$LR•IPV4•11『线路10』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-2.m3u8$LR•IPV4•11『线路11』 -开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路1』 -开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路2』 +开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8?zzhed$LR•IPV4•3『线路1』 +开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8$LR•IPV4•3『线路2』 开化国家公园,http://l.cztvcloud.com/channels/lantian/SXkaihua2/720p.m3u8zzhed$LR•IPV4•3『线路3』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路1』 -永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路2』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路3』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路4』 -永嘉新闻综合,https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路5』 -永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路6』 -永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路7』 +永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-4.m3u8$LR•IPV4•10『线路1』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路2』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed$LR•IPV4•10『线路3』 +永嘉新闻综合,https://t.freetv.fun/live/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路4』 +永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-2.m3u8$LR•IPV4•10『线路5』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8?zzhed"$LR•IPV4•10『线路6』 +永嘉新闻综合,http://l.cztvcloud.com/channels/lantian/SXyongjia1/720p.m3u8$LR•IPV4•10『线路7』 永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-3.ctv$LR•IPV4•10『线路8』 永嘉新闻综合,https://stream1.freetv.fun/yong-jia-xin-wen-zong-he-1.m3u8$LR•IPV4•10『线路9』 永嘉新闻综合,https://t.freetv.fun/live/yong-jia-xin-wen-zong-he.m3u8$LR•IPV4•10『线路10』 萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed$LR•IPV4•3『线路1』 -萧山生活频道,https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路2』 -萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路3』 -龙游生活娱乐,https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 -龙游生活娱乐,http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 +萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•3『线路2』 +萧山生活频道,https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•3『线路3』 +龙游生活娱乐,http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路1』 +龙游生活娱乐,https://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8$LR•IPV4•3『线路2』 龙游生活娱乐,http://l.cztvcloud.com/channels/lantian/SXlongyou2/720p.m3u8?zzhed$LR•IPV4•3『线路3』 -浙江生活,http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路1』 -浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路2』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路3』 -浙江生活,http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路4』 -浙江生活,http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路5』 -浙江生活,http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路6』 +浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8\r\n$LR•IPV4•25『线路1』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•25『线路2』 +浙江生活,http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•25『线路3』 +浙江生活,http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•25『线路4』 +浙江生活,http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•25『线路5』 +浙江生活,http://ls.qingting.fm/live/1099.m3u8$LR•IPV4•25『线路6』 浙江生活,http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•25『线路7』 浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8?$LR•IPV4•25『线路8』 浙江生活,http://api3.52tb.xyz/info?id=437&token=20230226bgyszp$LR•IPV4•25『线路9』 @@ -2457,9 +2445,9 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•25『线路23』 浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•25『线路24』 浙江生活,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•25『线路25』 -浙江教育,http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路1』 -浙江教育,http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路2』 -浙江教育,https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路3』 +浙江教育,http://120.55.49.231:3095/rtp/233.50.201.134:5140$LR•IPV4•3『线路1』 +浙江教育,https://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?$LR•IPV4•3『线路2』 +浙江教育,http://ali-m-l.cztv.com/channels/lantian/channel04/720p.m3u8$LR•IPV4•3『线路3』 杭州综合,https://stream1.freetv.fun/hang-zhou-zong-he-2.ctv$LR•IPV4•6『线路1』 杭州综合,http://www.flyskyman.cn:4022/rtp/233.50.201.173:5140$LR•IPV4•6『线路2』 杭州综合,http://www.jeremyoto.com:82/rtp/233.50.201.173:5140$LR•IPV4•6『线路3』 @@ -2482,126 +2470,125 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 杭州影视,http://www.flyskyman.cn:4022/rtp/233.50.201.176:5140$LR•IPV4•3『线路1』 杭州影视,https://stream1.freetv.fun/hang-zhou-ying-shi-2.ctv$LR•IPV4•3『线路2』 杭州影视,http://www.jeremyoto.com:82/rtp/233.50.201.176:5140$LR•IPV4•3『线路3』 -嘉兴新闻综合,http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路1』 -嘉兴新闻综合,http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路2』 -嘉兴新闻综合,http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路3』 +嘉兴新闻综合,http://live.zohi.tv/video/s10001-fztv-1/index.m3u8$LR•IPV4•5『线路1』 +嘉兴新闻综合,http://play-sh13.quklive.com/live/1675942165226154.m3u8?auth_key=2028730261-e7db80d294b04dc9ab5c8136b4c88b74-0-f0795306faa59c7edb35860a8ae63528$LR•IPV4•5『线路2』 +嘉兴新闻综合,http://tvfile.jyrmt.cn:80/nmip-media/channellive/channel104452/playlist.m3u8$LR•IPV4•5『线路3』 嘉兴新闻综合,http://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•5『线路4』 嘉兴新闻综合,https://live-auth.51kandianshi.com/szgd/csztv1.m3u8$LR•IPV4•5『线路5』 -湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路1』 -湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路2』 -湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路3』 -湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路4』 -湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路5』 -湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路6』 -湖州公共,https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路7』 -湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路8』 -湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路9』 -湖州新闻综合,http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 -湖州新闻综合,https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 +湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路1』 +湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-3.m3u8$LR•IPV4•9『线路2』 +湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-6.m3u8$LR•IPV4•9『线路3』 +湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-9.m3u8$LR•IPV4•9『线路4』 +湖州公共,https://stream1.freetv.fun/hu-zhou-gong-gong-1.m3u8$LR•IPV4•9『线路5』 +湖州公共,https://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路6』 +湖州公共,https://t.freetv.fun/live/hu-zhou-gong-gong-2.m3u8$LR•IPV4•9『线路7』 +湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e&fbl=$LR•IPV4•9『线路8』 +湖州公共,http://hzcm-live.media.hugd.com/1e6b554b9ab74513958c0e1ffe664d22/9acaa7634309494cb29a85eb12136607.m3u8?auth_key=2272900830-9a2389b8bf4e49d580d4ad807423d326-0-ea78a5c7a678c436263582d368f5009e$LR•IPV4•9『线路9』 +湖州新闻综合,https://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路1』 +湖州新闻综合,http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865$LR•IPV4•3『线路2』 湖州新闻综合,http://hzcm-live.media.hugd.com/3f5fa7d64c7c46a38c6bd8ad35e836cc/65128273761b4731ae53729ea6dcf932.m3u8?auth_key=2277598215-9d21c15111244bea8d298c361d31a72e-0-d031198f58d44b0e91ba2e3f3b188865&fbl=$LR•IPV4•3『线路3』 -湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 -湖州文化娱乐,https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路2』 -湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路3』 +湖州文化娱乐,https://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路1』 +湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887&fbl=$LR•IPV4•3『线路2』 +湖州文化娱乐,http://hzcm-live.media.hugd.com/613c47f0ab0d4eaa98b21378d0db6ded/0051d31c9dd543a7825eea4e49675b2a.m3u8?auth_key=2277598059-0a5ebfa1c0dc4671b42a60810fc37039-0-fa625b7d1feab612062453c12e3c8887$LR•IPV4•3『线路3』 浙江留学,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 浙江留学,http://ali-vl.cztv.com/channels/lantian/channel009/360p.m3u8$LR•IPV4•2『线路2』 浙江数码时代,http://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•3『线路1』 浙江数码时代,http://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8?zzhed$LR•IPV4•3『线路2』 浙江数码时代,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8\r\n$LR•IPV4•3『线路3』 浙江青田,http://play-sh13.quklive.com/live/1692755062081192.m3u8?auth_key=2028414252-b15176e05a684b589d12314dfabf6225-0-d175afe86fbea31e2eb167a6dd06cd4f$LR•IPV4 -浙江遂昌,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路1』 -浙江遂昌,http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路2』 +浙江遂昌,http://play-sh13.quklive.com/live/1708426592499070.m3u8?auth_key=2028414342-e92bda8423ad478c987a8b7ae82abe0e-0-c616f7fabb9675e1ed1d84d9edae7e07$LR•IPV4•3『线路1』 +浙江遂昌,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8$LR•IPV4•3『线路2』 浙江遂昌,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 遂昌综合,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?zzhed$LR•IPV4•2『线路1』 遂昌综合,http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsuichang1/720p.m3u8zzhed$LR•IPV4•2『线路2』 缙云综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 缙云综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed"$LR•IPV4•3『线路2』 缙云综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 -缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路1』 -缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路2』 +缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8?fbl=$LR•IPV4•2『线路1』 +缙云新闻综合,http://l.cztvcloud.com/channels/lantian/SXjinyun1/720p.m3u8$LR•IPV4•2『线路2』 绍兴电视台公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•2『线路1』 绍兴电视台公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?zzhed$LR•IPV4•2『线路2』 -绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路1』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路2』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路3』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路4』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路5』 -绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路6』 -绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路7』 -海宁新闻综合,https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 -海宁新闻综合,http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-8.m3u8$LR•IPV4•7『线路1』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-1.m3u8$LR•IPV4•7『线路2』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-7.m3u8$LR•IPV4•7『线路3』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-3.m3u8$LR•IPV4•7『线路4』 +绍兴公共,https://stream1.freetv.fun/shao-xing-gong-gong-2.m3u8$LR•IPV4•7『线路5』 +绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8?$LR•IPV4•7『线路6』 +绍兴公共,http://live.shaoxing.com.cn/video/s10001-sxtv2/index.m3u8$LR•IPV4•7『线路7』 +海宁新闻综合,http://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路1』 +海宁新闻综合,https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8$LR•IPV4•3『线路2』 海宁新闻综合,https://p2hs.vzan.com/slowlive/317913155078575177/live.m3u8?zbid=293304&tpid=1708007815$LR•IPV4•3『线路3』 -洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路1』 -洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路2』 -洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路3』 -武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路1』 -武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 -武义新闻综合,https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路3』 +洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?zzhed?$LR•IPV4•3『线路1』 +洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•3『线路2』 +洞头综合,http://l.cztvcloud.com/channels/lantian/SXdongtou1/720p.m3u8$LR•IPV4•3『线路3』 +武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +武义新闻综合,https://stream1.freetv.fun/wu-yi-xin-wen-zong-he-3.m3u8$LR•IPV4•4『线路2』 +武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8$LR•IPV4•4『线路3』 武义新闻综合,http://l.cztvcloud.com/channels/lantian/SXwuyi1/720p.m3u8?zzhed\r\n$LR•IPV4•4『线路4』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路1』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路2』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路4』 -松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路5』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8zzhed$LR•IPV4•6『线路1』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?fbl=$LR•IPV4•6『线路3』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 +松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8$LR•IPV4•6『线路5』 松阳综合,http://l.cztvcloud.com/channels/lantian/SXsongyang1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 新昌生活,http://l.cztvcloud.com/channels/lantian/SXxinchang2/720p.m3u8$LR•IPV4 -新昌新闻综合,https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路1』 -新昌新闻综合,https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路2』 -新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路3』 -新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路4』 -新昌新闻综合,http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 +新昌新闻综合,https://t.freetv.fun/live/xin-chang-xin-wen-zong-he.m3u8$LR•IPV4•7『线路1』 +新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路2』 +新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-3.m3u8$LR•IPV4•7『线路3』 +新昌新闻综合,http://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路4』 +新昌新闻综合,https://l.cztvcloud.com/channels/lantian/SXxinchang1/720p.m3u8$LR•IPV4•7『线路5』 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路6』 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-4.m3u8$LR•IPV4•7『线路7』 -文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路1』 -文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路2』 +文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路2』 文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?fbl=$LR•IPV4•4『线路3』 文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8$LR•IPV4•4『线路4』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路1』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路2』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路3』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 -庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路5』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路1』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed?$LR•IPV4•6『线路2』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路3』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed[浙江]洞头综合频道$LR•IPV4•6『线路4』 +庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路5』 庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?fbl=$LR•IPV4•6『线路6』 -嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•8『线路1』 -嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•8『线路2』 -嵊泗综合,https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•8『线路3』 +嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed$LR•IPV4•8『线路1』 +嵊泗综合,https://play-sh11.quklive.com/live/1626935015913208.m3u8$LR•IPV4•8『线路2』 +嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengsi1/720p.m3u8$LR•IPV4•8『线路3』 嵊泗综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•8『线路4』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-3.m3u8$LR•IPV4•8『线路5』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-2.ctv$LR•IPV4•8『线路6』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-2.m3u8$LR•IPV4•8『线路7』 嵊泗综合,https://stream1.freetv.fun/sheng-zhou-xin-wen-zong-he-1.m3u8$LR•IPV4•8『线路8』 -余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路1』 -余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路2』 -余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路3』 -余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路1』 -余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 -余姚综合,https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路1』 -余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路2』 -余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路3』 +余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•3『线路1』 +余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8$LR•IPV4•3『线路2』 +余杭综合,http://l.cztvcloud.com/channels/lantian/SXyuhang1/720p.m3u8?zzhed$LR•IPV4•3『线路3』 +余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?zzhed$LR•IPV4•2『线路1』 +余杭未来E,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8$LR•IPV4•2『线路2』 +余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路1』 +余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?$LR•IPV4•6『线路2』 +余姚综合,https://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路3』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8$LR•IPV4•6『线路4』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•6『线路5』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 -中国蓝新闻,http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路1』 -中国蓝新闻,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 +中国蓝新闻,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路1』 +中国蓝新闻,http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『线路2』 广东,#genre# -深圳卫视,https://sztv-hls.sztv.com.cn/1SIQj6s/500/q7rdSsQ.m3u8?sign=71764b3a0bcc96b03dea9693d605e020&t=6a579f21$LR•IPV4•18『线路1』 -深圳卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路2』 -深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路3』 -深圳卫视,http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•18『线路4』 -深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•18『线路5』 -深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•18『线路6』 -深圳卫视,http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•18『线路7』 -深圳卫视,http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路8』 -深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•18『线路9』 -深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•18『线路10』 -深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•18『线路11』 -深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•18『线路12』 -深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•18『线路13』 -深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•18『线路14』 -深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•18『线路15』 -深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•18『线路16』 -深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•18『线路18』 +深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•17『线路1』 +深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•17『线路2』 +深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•17『线路3』 +深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•17『线路4』 +深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•17『线路5』 +深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•17『线路6』 +深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•17『线路7』 +深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路9』 +深圳卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路10』 +深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•17『线路11』 +深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路12』 +深圳卫视,http://107.150.60.122/live/szwshd.m3u8$LR•IPV4•17『线路13』 +深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•17『线路14』 +深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•17『线路15』 +深圳卫视,http://120.238.94.82:9901/tsfile/live/1065_1.m3u8$LR•IPV4•17『线路16』 +深圳卫视,http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路17』 汕头经济,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2962&tk=a0c4f6cfaba3$LR•IPV4•11『线路1』 汕头经济,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9512&tk=a0c4f6cfaba3$LR•IPV4•11『线路2』 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-6.ctv$LR•IPV4•11『线路3』 @@ -2613,7 +2600,6 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-2.ctv$LR•IPV4•11『线路9』 汕头经济,http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=LEsjua&tk=zUr4K92Dl6kh$LR•IPV4•11『线路10』 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-1.ctv$LR•IPV4•11『线路11』 -广东少儿,http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 北京,#genre# 优优宝贝,http://120.76.248.139/live/bfgd/4200000153.m3u8$LR•IPV4 diff --git a/cluntop_tvbox/lib/sbjh.m3u b/cluntop_tvbox/lib/sbjh.m3u index 921a86cf..990ab2a8 100755 --- a/cluntop_tvbox/lib/sbjh.m3u +++ b/cluntop_tvbox/lib/sbjh.m3u @@ -1,360 +1,390 @@ #EXTM3U x-tvg-url="" -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yingke.jpg" group-title="映客",大浪交友厅 -http://extlive-pull-ws.inke.cn/live/1784703614231313.flv?auth_version=1&codecInfo=8192&dpSrc=-1&from=hallfe&ikHost=ws&ikLiveType=multiplayer&ikLog=1&md5sum=38bd&pushHost=zego-sixlive.link.inke.cn×tamp=1784708126 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",溜溜子 -http://xrgszsbrila.yueyongli.top/live/cx_386319.flv?wsSecret=ad8df96c90c7d34df3257f91d1ea1a18&wsTime=1784698488 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",咩咩羊 -http://laxlv03me.sqfkkj.top/live/cx_387004.flv?wsSecret=12a1f7f65b94b2be4990b4f3094a7200&wsTime=1784707732 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",猪咪 -http://77b.xn--vuqy52q.com/live/cx_12366.flv?wsSecret=8659451f62d595cb44c3f5e3789487cf&wsTime=1784693842 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花花姐姐 -http://77bo.xn--thqp73n.com/live/cx_16165.flv?wsSecret=aa2a4f1ffc9464dbba3a11805cbff0b8&wsTime=1784707157 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金枝玉叶 -http://laoechxow.jinkangyl.com/live/cx_386185.flv?wsSecret=5c1f066b53a6117507f1f52fcf913c5d&wsTime=1784702435 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",爱咪思柚 -http://lawoazletjsuet.sqfkkj.top/live/cx_381386.flv?wsSecret=f016e35fe336a9d1cae5dc94e0eeb576&wsTime=1784698408 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小七七 -http://xinlcse02lais.yueyongli.top/live/cx_386764.flv?wsSecret=e0141534a74373fddef48a574e6ac440&wsTime=1784705416 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",甜一口 -http://laxincr05spring.abrillantlee.top/live/cx_366491.flv?wsSecret=2290d899c9b347209868633100128207&wsTime=1784697357 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大奶妹 -http://laxincr05spring.abrillantlee.top/live/cx_387028.flv?wsSecret=f1d54e4dc9c50062cda429b994935aea&wsTime=1784696369 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",芝芝. -http://la193sahrigxt.sqfkkj.top/live/cx_372271.flv?wsSecret=7bb5b162676c8d2a0984f21e4299f2ee&wsTime=1784707985 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产三级片@ -https://zjkkdkdkd06.oss-ap-northeast-2.aliyuncs.com/zxcvb/1.flv -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",纯纯的诱惑 -http://xrgszsbrila.yueyongli.top/live/cx_386997.flv?wsSecret=ed5b98e94c9e29585e91e58563162382&wsTime=1784699898 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",颜宝 -http://77bo.xn--4lw519c.com/live/cx_16565.flv?wsSecret=a2f74c8c958bc2c8bb402fae14c95d73&wsTime=1784706460 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",巧乐兹 -http://laxincr05spring.abrillantlee.top/live/cx_386037.flv?wsSecret=89a0dd5b787da95627d9bae7a814d3e4&wsTime=1784690083 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",夜色温柔 -http://lawoazletjsuet.sqfkkj.top/live/cx_386055.flv?wsSecret=7fe6fa73d299e6b6d1a3d873e71c559f&wsTime=1784707327 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",心心丫 -http://77bo.xn--4lw519c.com/live/cx_15985.flv?wsSecret=0587bea2b18e9845d266ca410729c073&wsTime=1784707451 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",茶茶子 -http://77bo.xn--thqp73n.com/live/cx_12396.flv?wsSecret=c7f62afeeff7afb4e3334da773e2706e&wsTime=1784708011 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",貂蝉 -http://xinlcse02lais.yueyongli.top/live/cx_385909.flv?wsSecret=e550c43a337f13349a60bbe39e6719a0&wsTime=1784695881 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",烧云baby -http://la001xencoffee.yueyongli.top/live/cx_379833.flv?wsSecret=aa9e1d6735ab86a8c815d5a19cfe2b1d&wsTime=1784707376 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",宫百万 -http://lawoazletjsuet.sqfkkj.top/live/cx_374039.flv?wsSecret=5fa0a5206f9e0ca35e281394c37c1f57&wsTime=1784695607 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",软绵绵呀 -http://77b.xn--vuqy52q.com/live/cx_9825.flv?wsSecret=542488e937ba9d0535e029eb3adbb3c6&wsTime=1784706967 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",按摩馆的秘密@ -http://77bo.xn--fhqv92p.com/live/cx_15652.flv?wsSecret=7bd3511343b215aba45517f6fca241f8&wsTime=1784604360 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是肉丝呀 -http://77bo.xn--uw0as83a.com/live/cx_13322.flv?wsSecret=22e62fe6329439c8057e7964116c44c6&wsTime=1784707181 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小怪兽o -http://77bo.xn--uw0as83a.com/live/cx_16620.flv?wsSecret=1e5c03de3309fa1a1803096b0f880a42&wsTime=1784707140 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",日本av放映室 -http://laxincr05spring.abrillantlee.top/live/cx_373479.flv?wsSecret=30144983eb2e939bfa4f6ce3ae395b19&wsTime=1784632687 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狂草精神小妹.@ -http://77b.xn--ypzw80d.com/live/cx_120.flv?wsSecret=119fd3c34be85fe9bef40130a5ddc819&wsTime=1784608831 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Fay小乔流水 -http://lawoazletjsuet.sqfkkj.top/live/cx_369469.flv?wsSecret=569bef984d844b7d6a49826d6e29de94&wsTime=1784704783 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",一对性感情侣 -http://laoechxow.jinkangyl.com/live/cx_383343.flv?wsSecret=a275bc77145df6c4816433c3bb4ae221&wsTime=1784700897 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",咬一口苹果 -http://lawoazletjsuet.sqfkkj.top/live/cx_386022.flv?wsSecret=9a3e216f7d6ca03fa6ee34365f50a2d3&wsTime=1784689786 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yingke.jpg" group-title="映客",后起之秀交友厅 +http://extlive-pull-ws.inke.cn/live/1784721058694028.flv?auth_version=1&codecInfo=8192&dpSrc=-1&from=hallfe&ikHost=ws&ikLiveType=multiplayer&ikLog=1&md5sum=6ab2&pushHost=ext.zego.link.inke.cn×tamp=1784727585 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",哇韩水水 +http://laoechxow.jinkangyl.com/live/cx_366905.flv?wsSecret=ac798658b70891a53cb181addb62adb3&wsTime=1784718981 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",至尊百家乐 http://xcplawater02.yueyongli.top/live/cx_386778.flv?wsSecret=80a4e1f6a85f1351e4aee60ac20fe26f&wsTime=1784654802 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",空儿 -http://laoechxow.jinkangyl.com/live/cx_382667.flv?wsSecret=9f604d29af014b31ebe97c8a3bac4d8d&wsTime=1784700329 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小水o -http://laxincr05spring.abrillantlee.top/live/cx_385569.flv?wsSecret=fcdacbf08a6eb953233de2a9c5324295&wsTime=1784701484 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",桃桃气泡水呀 -http://laxlv03me.sqfkkj.top/live/cx_386420.flv?wsSecret=a259ff007dbf9cdaf18ab64db231a563&wsTime=1784705742 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",热一3 -http://77bo.xn--fhqv92p.com/live/cx_15993.flv?wsSecret=4b5ed10ca14b998bb77f7c5f72680154&wsTime=1784707119 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",月落星沉 -http://la193sahrigxt.sqfkkj.top/live/cx_371517.flv?wsSecret=3944e353d11d8c6c4695e0ec53f4186f&wsTime=1784700835 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Cos二次元@ -http://77b.xn--ypzw80d.com/live/cx_32.flv?wsSecret=e0fef15c848275d5ba6eb3932682cbb8&wsTime=1784704304 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩大秀@ -http://77bo.xn--t8w422e.com/live/cx_15861.flv?wsSecret=f1e53d2490888c48e2645e118b8adbcd&wsTime=1784507091 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",芝士奶芙 -http://lawoazletjsuet.sqfkkj.top/live/cx_385561.flv?wsSecret=8d7bd29a85fae385a58523c043929478&wsTime=1784702003 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狂送高潮 -http://laxincr05spring.abrillantlee.top/live/cx_366975.flv?wsSecret=07fdc700bdc7ae69e7b4ea1e11dc9f9f&wsTime=1784703314 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",懒懒Q -http://laxingcenr.yueyongli.top/live/cx_385968.flv?wsSecret=8f6b6cfc9ac1940e2f81116a0e549862&wsTime=1784701346 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欧美白人黑人合集 -http://laoechxow.jinkangyl.com/live/cx_375008.flv?wsSecret=265abe20b0c7c0677abd5ffb451aa544&wsTime=1784694806 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",香香 -http://la193sahrigxt.sqfkkj.top/live/cx_386009.flv?wsSecret=2f92fc7c02e0581d23b07b6390279ab5&wsTime=1784705315 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Baby%252520 -http://laxincr05spring.abrillantlee.top/live/cx_386302.flv?wsSecret=de246b20ce20669dbf83916956a226e4&wsTime=1784706434 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",戚怡 -http://laxincr05spring.abrillantlee.top/live/cx_373360.flv?wsSecret=4b969464dfaf04a33b8751b3668893da&wsTime=1784700631 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",海棠依旧 -http://laoechxow.jinkangyl.com/live/cx_382709.flv?wsSecret=6867e84eebb5bfe2f74ea840af99cb8e&wsTime=1784707397 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",真实探花嫖娼@ -http://77bo.xn--fhqv92p.com/live/cx_15710.flv?wsSecret=f17ac31c7e4d0d5c15866953a716d70d&wsTime=1784564051 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",玖月儿 -http://guetnzweozela.sqfkkj.top/live/cx_386166.flv?wsSecret=013ee1d1be5b169caff1a60b20df850e&wsTime=1784694579 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",三叶 -http://laxincr05spring.abrillantlee.top/live/cx_380465.flv?wsSecret=c332874e6459045340b5d48675f475dd&wsTime=1784703984 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",星月月 -http://laoechxow.jinkangyl.com/live/cx_385722.flv?wsSecret=b5e12bcc9d7c5539c3efbe4c8c4739db&wsTime=1784700032 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",甜心格格 -http://lawoazletjsuet.sqfkkj.top/live/cx_385555.flv?wsSecret=b6be7d2a1798e24aa328379538f90745&wsTime=1784697647 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小佩奇 -http://77bo.xn--vuqy52q.com/live/cx_3932.flv?wsSecret=728242dfbecb062cd539a31272990441&wsTime=1784707807 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",茂密的小森林 -http://laoechxow.jinkangyl.com/live/cx_380333.flv?wsSecret=c2cb3eed7a2f6608da8eca0045772f8d&wsTime=1784705040 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Lucky6 -http://la193sahrigxt.sqfkkj.top/live/cx_385283.flv?wsSecret=4adef9e5f92128ecea4b806646c52e52&wsTime=1784704619 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",青衣小姐 -http://laxincr05spring.abrillantlee.top/live/cx_386849.flv?wsSecret=a2eeba00ff5bcd3acc5c9dde4853e681&wsTime=1784693812 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小薇薇 +http://laxincr05spring.abrillantlee.top/live/cx_386718.flv?wsSecret=807a64d199e8c4628e1030feb72b00f5&wsTime=1784722600 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",宝宝 +http://guetnzweozela.sqfkkj.top/live/cx_386729.flv?wsSecret=dd954d7b66bf832f507d6ac1c66b28dd&wsTime=1784726680 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",清纯 +http://laoechxow.jinkangyl.com/live/cx_386918.flv?wsSecret=069e8448abff057b7c1805d64e22dd0f&wsTime=1784720345 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",烧云baby +http://laxincr05spring.abrillantlee.top/live/cx_379833.flv?wsSecret=454039d64acb02c1dd02217d25422764&wsTime=1784721907 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",巧乐兹 +http://laxincr05spring.abrillantlee.top/live/cx_386037.flv?wsSecret=08b5f9058bf67af774ee96c97de1d67e&wsTime=1784713109 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",涂一瀛 +http://lawoazletjsuet.sqfkkj.top/live/cx_362643.flv?wsSecret=39266de01720ecd980e94af8f1de3d87&wsTime=1784712461 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",李富贵 +http://77bo.xn--thqp73n.com/live/cx_15595.flv?wsSecret=041dd71594b17e9e479033708d15935a&wsTime=1784721870 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",温%20酒 +http://lawoazletjsuet.sqfkkj.top/live/cx_362932.flv?wsSecret=5fdf7357c96765bbb100978595b89c96&wsTime=1784722701 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩剧情@ +https://zjkkdkdkd06.oss-ap-northeast-2.aliyuncs.com/zxcvb/1.flv +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是小奶猫吖 +http://77bo.xn--vuqy52q.com/live/cx_15562.flv?wsSecret=942806b63e16568fbc525ed532c707f2&wsTime=1784720483 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金瑶 +http://77bo.xn--4lw519c.com/live/cx_16257.flv?wsSecret=d964946327aad8827da26f429499b801&wsTime=1784720004 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花开 +http://77bo.xn--t8w422e.com/live/cx_16312.flv?wsSecret=e96fc9f9fe733cfdecbe836a292ffdde&wsTime=1784721007 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",七七/ +http://guetnzweozela.sqfkkj.top/live/cx_386202.flv?wsSecret=b28352cefd09b0a0b1535dc11db70506&wsTime=1784721751 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",草莓不甜 +http://laxlv03me.sqfkkj.top/live/cx_349623.flv?wsSecret=11e43cc3d32401058f52816ebefc47a8&wsTime=1784716774 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小猫可爱 +http://laoechxow.jinkangyl.com/live/cx_386626.flv?wsSecret=a69cb31d860dc37b892d079f19335a84&wsTime=1784726934 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",潘金莲莲 +http://laoechxow.jinkangyl.com/live/cx_386782.flv?wsSecret=0137dc38710f1559f5ab19372b41d490&wsTime=1784721790 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Mine -http://laxincr05spring.abrillantlee.top/live/cx_381555.flv?wsSecret=061228a325355f91de712c8e78625b7a&wsTime=1784708193 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",美汐 -http://la193sahrigxt.sqfkkj.top/live/cx_364960.flv?wsSecret=7a83b4ac680415ab277c70db507443f8&wsTime=1784702103 +http://laoechxow.jinkangyl.com/live/cx_381555.flv?wsSecret=59b9ed36be17177f15c152ebc9d6767b&wsTime=1784726071 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",亲亲 -http://laxincr05spring.abrillantlee.top/live/cx_386748.flv?wsSecret=bcd69342f5144866b3f2695215792780&wsTime=1784696940 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",慕慕呀 -http://77bo.xn--uw0as83a.com/live/cx_16762.flv?wsSecret=7d8d2601f01ba9df3d4d697c0efe06e6&wsTime=1784707192 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是炫子吖 -http://77bo.xn--kcrp02i.com/live/cx_11178.flv?wsSecret=952a358f10881c29687fb7cef99977e4&wsTime=1784707334 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",软软呀 -http://laoechxow.jinkangyl.com/live/cx_382957.flv?wsSecret=68483a9d2780f401f515d381f576189c&wsTime=1784705355 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产乱伦强奸@ -http://77bo.xn--fhqv92p.com/live/cx_31.flv?wsSecret=170f333ef3ab08381620572bf9caf86b&wsTime=1784604034 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小蛋糕 -http://77b.xn--vuqy52q.com/live/cx_14208.flv?wsSecret=73bb9b207b8199d736dbc13c1773e6a3&wsTime=1784693729 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",深情女人 -http://laoechxow.jinkangyl.com/live/cx_386094.flv?wsSecret=67d9e72399b4898e5a2d0f4b8fa54ae3&wsTime=1784703029 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",曼曼 -http://laxincr05spring.abrillantlee.top/live/cx_387067.flv?wsSecret=3cb842bb340a0c8695b50b0d222f70bf&wsTime=1784708010 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",林灵 -http://xinlcse02lais.yueyongli.top/live/cx_386944.flv?wsSecret=9d41f8b52b260f0583926e4b2f038622&wsTime=1784706491 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",檬茶味 -http://guetnzweozela.sqfkkj.top/live/cx_386220.flv?wsSecret=d24b6fe733848debdbd70c78deccef5e&wsTime=1784707942 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小荔枝 -http://xrgszsbrila.yueyongli.top/live/cx_1216.flv?wsSecret=8ebb59f8543d26ae22f02c1c0ec20f56&wsTime=1784702961 +http://laxincr05spring.abrillantlee.top/live/cx_386748.flv?wsSecret=b413ba87ce8caa093626543d65d9b1b1&wsTime=1784710236 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我超甜呀 +http://77bo.xn--ypzw80d.com/live/cx_16581.flv?wsSecret=4aa37fa2486c63128d72d54272480f73&wsTime=1784720953 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",看看裙底 +http://77bo.xn--thqp73n.com/live/cx_5113.flv?wsSecret=135f766ba0d9ea72b2666fcf606d2253&wsTime=1784721271 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",亲亲狐狸 +http://laxincr05spring.abrillantlee.top/live/cx_385616.flv?wsSecret=d60f7723741f9a0e747289ad3c255e44&wsTime=1784713151 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妩媚御姐 +http://lawoazletjsuet.sqfkkj.top/live/cx_384791.flv?wsSecret=81489d2f46c60a23d94e1d98955e3f1f&wsTime=1784721238 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",露露好想要 +http://la193sahrigxt.sqfkkj.top/live/cx_386757.flv?wsSecret=a3b6f6d2f23862ced4b432cbbe20e8f9&wsTime=1784719414 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",樱花树下 +http://lawoazletjsuet.sqfkkj.top/live/cx_386168.flv?wsSecret=27df0104cb767b2aa0037fb387ad445b&wsTime=1784723676 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",云朵啊 +http://77bo.xn--ypzw80d.com/live/cx_15308.flv?wsSecret=e8a6ad0c9d393fa7bc7b39c804276342&wsTime=1784720314 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",罐罐子 +http://la193sahrigxt.sqfkkj.top/live/cx_381717.flv?wsSecret=e804f0c9c166734605f033efe9d5ee8d&wsTime=1784726636 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",少女乱伦@ http://77bo.xn--t8w422e.com/live/cx_15966.flv?wsSecret=7d5fa19b3c414d21fda057fecbdf8864&wsTime=1784507092 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蓉宝 -http://xinlcse02lais.yueyongli.top/live/cx_386171.flv?wsSecret=54c665e986d393d4b0b7236a7d3c51a1&wsTime=1784699892 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",玉兰 -http://laxlv03me.sqfkkj.top/live/cx_386891.flv?wsSecret=e8f0b331d1eaaf9a6fc4e728d9b01a8a&wsTime=1784705068 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",职场身体上位@ -http://77bo.xn--fhqv92p.com/live/cx_15604.flv?wsSecret=ddce98ad6882174f243d694ae120e225&wsTime=1784604980 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",瑞蕊蕊 -http://77bo.xn--t8w422e.com/live/cx_16310.flv?wsSecret=1a3e09e5c21db7c256e63e969a470999&wsTime=1784708115 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小幸运321 -http://77bo.xn--thqp73n.com/live/cx_15519.flv?wsSecret=18e22f67d9a65a5ec81c52079e9bdbf4&wsTime=1784706455 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩剧情@ -http://77bo.xn--uw0as83a.com/live/cx_16437.flv?wsSecret=6883df0465859caf0a64a1dd3197d0c4&wsTime=1784507385 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",温%20酒 -http://la193sahrigxt.sqfkkj.top/live/cx_362932.flv?wsSecret=b2f5462e8077532dbf61c8691058a411&wsTime=1784701438 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安安。。 -http://la001xencoffee.yueyongli.top/live/cx_386060.flv?wsSecret=12a33e850a555f254075f8e62db9c4e2&wsTime=1784704940 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狸猫猫 +http://lawoazletjsuet.sqfkkj.top/live/cx_385660.flv?wsSecret=46ed58e9de6f79ee9488fcb71e55b75c&wsTime=1784719294 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大宝宝姐 +http://la193sahrigxt.sqfkkj.top/live/cx_370617.flv?wsSecret=2fba1c8385b8494e2a14c7738dacba4d&wsTime=1784720422 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",水水小师妹 +http://la193sahrigxt.sqfkkj.top/live/cx_387016.flv?wsSecret=a91fb3d9a8d7921e6379dc852b58a2e2&wsTime=1784718427 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小肉松 +http://77bo.xn--kcrp02i.com/live/cx_16669.flv?wsSecret=324045553c2cf95a80ced4a83cd9cb54&wsTime=1784720177 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",巧乐滋 +http://77bo.xn--uw0as83a.com/live/cx_14892.flv?wsSecret=7e6e0f9fdeb8c809acd62334a9fc7535&wsTime=1784721087 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产乱伦强奸@ +http://77bo.xn--fhqv92p.com/live/cx_31.flv?wsSecret=13ffb5f6d31e26f69d24469fcc1c0bc5&wsTime=1784717112 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",朵儿 +http://77b.xn--vuqy52q.com/live/cx_15904.flv?wsSecret=045c55e7d7dcea9ce28d14e2f08397ac&wsTime=1784720554 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",人兽大战@ +http://77bo.xn--fhqv92p.com/live/cx_24.flv?wsSecret=589d12497d3400e1b489c918da3f427b&wsTime=1784717401 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小内内 +http://77b.xn--ypzw80d.com/live/cx_14836.flv?wsSecret=9d3943cc5ef9712fad9cf0335b1c56f6&wsTime=1784721466 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",滋一滋 +http://77bo.xn--4lw519c.com/live/cx_16712.flv?wsSecret=7d8481b53ff66939eec5fd8893578ae8&wsTime=1784723775 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",K9草莓 +http://guetnzweozela.sqfkkj.top/live/cx_385590.flv?wsSecret=780918179703b6f2ded1ad187f8f3de7&wsTime=1784719500 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大扎 +http://laxincr05spring.abrillantlee.top/live/cx_382445.flv?wsSecret=2ea12025de848d5c9961bcd540e069d4&wsTime=1784709801 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",辣椒味的魅 +http://77bo.xn--fhqv92p.com/live/cx_16698.flv?wsSecret=cd80c7ad24c389d617e40ff87501e31c&wsTime=1784713502 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我嘞个乖乖 +http://laoechxow.jinkangyl.com/live/cx_385458.flv?wsSecret=7692926b03609cbd2e21fd3b7aa21ae6&wsTime=1784724393 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",夜色温柔 +http://lawoazletjsuet.sqfkkj.top/live/cx_386055.flv?wsSecret=210d92b3942ea0f76b5a8753279ece5c&wsTime=1784710028 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",未成年@ +http://77bo.xn--fhqv92p.com/live/cx_28.flv?wsSecret=8bdef2a06b3503da4b7d36daa6aafe26&wsTime=1784717352 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",不加糖 +http://77bo.xn--kcrp02i.com/live/cx_16743.flv?wsSecret=0e73e5e45da5409a520c0de5c7318626&wsTime=1784720713 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",贝贝 +http://laoechxow.jinkangyl.com/live/cx_386683.flv?wsSecret=a2613f52c35d00bc88bc6a4eb0e44877&wsTime=1784726584 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",舟舟 +http://laxincr05spring.abrillantlee.top/live/cx_386585.flv?wsSecret=2eaf123c46d3eabc98e2e88481dbb8cb&wsTime=1784725116 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妹妹d +http://guetnzweozela.sqfkkj.top/live/cx_386284.flv?wsSecret=a7f8c11b1159acc83ac11e074b007c8f&wsTime=1784723563 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小纯纯! +http://la193sahrigxt.sqfkkj.top/live/cx_378676.flv?wsSecret=341160551e8f99307fa7d62e85897b3b&wsTime=1784719391 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",淑欣 +http://laxincr05spring.abrillantlee.top/live/cx_385830.flv?wsSecret=4cd196ac6223eaf1f8f9a46794315863&wsTime=1784723741 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欧北北 +http://77b.xn--ypzw80d.com/live/cx_16645.flv?wsSecret=45072c82e9e7cb1141379ea69f5da8d6&wsTime=1784720891 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",米妮宝 +http://77bo.xn--vuqy52q.com/live/cx_15542.flv?wsSecret=9e45a481489c1f59b925bf9c5653e878&wsTime=1784725354 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",05后少女专场@ http://77bo.xn--4lw519c.com/live/cx_30.flv?wsSecret=daf8ae05114eb81fa1fa789704593ba6&wsTime=1784666149 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",唱歌星瑶 -http://laxlv03me.sqfkkj.top/live/cx_387042.flv?wsSecret=71b4be6bb9de85cab870e2859b62ef07&wsTime=1784699415 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",舞蹈九九 -http://laxlv03me.sqfkkj.top/live/cx_386266.flv?wsSecret=8ebda4ce5f9960c922625dbb242c3246&wsTime=1784694965 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",芝芝莓莓 -http://77bo.xn--uw0as83a.com/live/cx_15810.flv?wsSecret=83f970fef7a2e37be9a44e067bcb23c0&wsTime=1784706472 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",贝贝 -http://laoechxow.jinkangyl.com/live/cx_386683.flv?wsSecret=0c72ce4de3bb8abde7469503b6e5fe3b&wsTime=1784707714 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",按摩馆的秘密@ +http://77bo.xn--fhqv92p.com/live/cx_15652.flv?wsSecret=b1c40d8acfc321d1bdd4f3f704cae718&wsTime=1784716988 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大白兔奶糖 +http://la001xencoffee.yueyongli.top/live/cx_384721.flv?wsSecret=bfda6726a1fb40a340ff4b2e8d098b03&wsTime=1784727095 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欲望女孩i +http://77b.xn--ypzw80d.com/live/cx_6263.flv?wsSecret=22872c6b040c6cf7b4829786d8c72f18&wsTime=1784720769 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",八尺夫人 +http://lawoazletjsuet.sqfkkj.top/live/cx_368657.flv?wsSecret=edc3f565f56602432334484d1a4cfb0d&wsTime=1784725516 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",原儿 +http://77b.xn--vuqy52q.com/live/cx_15169.flv?wsSecret=3f2ba94b6f843a879fd361a44957d63d&wsTime=1784719823 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",恰口酱酱 +http://laxlv03me.sqfkkj.top/live/cx_378408.flv?wsSecret=735279747095c72617b216082777851d&wsTime=1784718933 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大白兔超甜 +http://laoechxow.jinkangyl.com/live/cx_382658.flv?wsSecret=bede87b8b07d965c11b7ba0069f68512&wsTime=1784709751 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",人鱼姬 +http://laoechxow.jinkangyl.com/live/cx_386671.flv?wsSecret=d4a7c8b760b6d2e76f5d4341364ca3eb&wsTime=1784724145 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",遇见%26 +http://laxincr05spring.abrillantlee.top/live/cx_386267.flv?wsSecret=d3f5f1cb56edc23546ce228a4dd553e1&wsTime=1784718708 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",泡泡糖o +http://laxincr05spring.abrillantlee.top/live/cx_386163.flv?wsSecret=1340caca46c573d90af9454edbc48cea&wsTime=1784724562 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶味葡萄 +http://guetnzweozela.sqfkkj.top/live/cx_386127.flv?wsSecret=9f93fd2cfdb0d5d3ef9f215c86726a32&wsTime=1784711513 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",多米, http://guetnzweozela.sqfkkj.top/live/cx_364327.flv?wsSecret=b04569a366a0c24784af16c43792b813&wsTime=1784692696 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",海澄 -http://77bo.xn--4lw519c.com/live/cx_15225.flv?wsSecret=45a88ed31cf5eb7d3d329a96c37ee76b&wsTime=1784707618 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶嘟嘟 -http://77bo.xn--thqp73n.com/live/cx_12613.flv?wsSecret=d14e692c41ec924f71fd67f629da9e97&wsTime=1784706526 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",饱饱- -http://77bo.xn--4lw519c.com/live/cx_15777.flv?wsSecret=b0dbf60f1ba3c7c21bc937a021b7175b&wsTime=1784707327 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",在逃公主柳如烟 -http://laxincr05spring.abrillantlee.top/live/cx_386008.flv?wsSecret=83522a1a452ac68b6fb5190bb744f220&wsTime=1784697105 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小喵酱 -http://xinlcse02lais.yueyongli.top/live/cx_385723.flv?wsSecret=167d105c665e827c16ccb6ecb2088511&wsTime=1784706221 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",骚月月 -http://xinlcse02lais.yueyongli.top/live/cx_386092.flv?wsSecret=afcfb601cd3f6cc9e2f24ce16aa7fda7&wsTime=1784704284 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花 +http://laxincr05spring.abrillantlee.top/live/cx_360501.flv?wsSecret=1a32950cb9716c65271cbc46d7bd776c&wsTime=1784722541 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",由美 +http://xrgszsbrila.yueyongli.top/live/cx_386359.flv?wsSecret=735521bb813b8f5e330956e5f68fb971&wsTime=1784722591 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",邻家小妹 +http://laxincr05spring.abrillantlee.top/live/cx_379199.flv?wsSecret=ecd551a457568c578530381a641fdc15&wsTime=1784723778 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依情柔念 +http://laxincr05spring.abrillantlee.top/live/cx_386831.flv?wsSecret=8a95c8ab1a6c8067f0f020fbeebe913f&wsTime=1784727022 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金枝玉叶 +http://laoechxow.jinkangyl.com/live/cx_386185.flv?wsSecret=5c1f066b53a6117507f1f52fcf913c5d&wsTime=1784702435 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶油小甜甜 +http://77bo.xn--vuqy52q.com/live/cx_15503.flv?wsSecret=aed8494034d323f64ac4b819def0033d&wsTime=1784721391 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",照雪 +http://xrgszsbrila.yueyongli.top/live/cx_378879.flv?wsSecret=37f7ccc8bba771a2b3b4ed23c4c407fd&wsTime=1784712504 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蓝汐 +http://77bo.xn--vuqy52q.com/live/cx_4062.flv?wsSecret=3d585febd31e25dc7e4914ba327d7490&wsTime=1784716682 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大奶妹 +http://laxincr05spring.abrillantlee.top/live/cx_387028.flv?wsSecret=870e19fd721e01e42d97bdfeb5226753&wsTime=1784716511 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",松本無敵香 +http://laxingcenr.yueyongli.top/live/cx_382146.flv?wsSecret=867f96088c844a49dd9b48227cfb435d&wsTime=1784723969 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",软软. +http://laxincr05spring.abrillantlee.top/live/cx_381065.flv?wsSecret=f0f51ef6a52cf1847ff102294349c8a5&wsTime=1784725505 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小湿妹呀 +http://la193sahrigxt.sqfkkj.top/live/cx_374211.flv?wsSecret=1c62ba54f03ad31dac2c6029344cafd1&wsTime=1784725026 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",猫语吖 +http://xrgszsbrila.yueyongli.top/live/cx_385765.flv?wsSecret=7423038d4a6a59d640bfaaea23beff2f&wsTime=1784719939 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产三级片@ +http://77bo.xn--fhqv92p.com/live/cx_16585.flv?wsSecret=6a280fb940a5e4b17fb6147550c7b420&wsTime=1784717202 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",戚怡 +http://laxincr05spring.abrillantlee.top/live/cx_373360.flv?wsSecret=6687b68d28e0f85f905389c238e836ed&wsTime=1784724817 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小幸运 +http://la193sahrigxt.sqfkkj.top/live/cx_369026.flv?wsSecret=c6562b08521a01ce4826ab835e83ef06&wsTime=1784713568 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩大秀@ +http://77bo.xn--t8w422e.com/live/cx_15861.flv?wsSecret=f1e53d2490888c48e2645e118b8adbcd&wsTime=1784507091 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",嫂子 +http://77bo.xn--fhqv92p.com/live/cx_7004.flv?wsSecret=2d38a33f229dd3a0e9c195ce81367da8&wsTime=1784721048 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依依实力带飞 +http://xcplawater02.yueyongli.top/live/cx_364954.flv?wsSecret=e0603b58714f17590589d9bb8f4fad7a&wsTime=1784717814 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶u +http://la193sahrigxt.sqfkkj.top/live/cx_381417.flv?wsSecret=c1c9ca8498386a3b82a7a97e81c4bfc8&wsTime=1784722488 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",户外打野@ +http://77bo.xn--fhqv92p.com/live/cx_15642.flv?wsSecret=fb8b604bb5ef865c415f01ddb9efb8a4&wsTime=1784717472 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",淼淼 +http://la193sahrigxt.sqfkkj.top/live/cx_385696.flv?wsSecret=135fdcadf158bb549f7bc144a8145f08&wsTime=1784725565 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我超甜 +http://xrgszsbrila.yueyongli.top/live/cx_351087.flv?wsSecret=be5660d4af6757cf95786a6f88532364&wsTime=1784724723 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",星月月 +http://laoechxow.jinkangyl.com/live/cx_385722.flv?wsSecret=b5e12bcc9d7c5539c3efbe4c8c4739db&wsTime=1784700032 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安克娜娜 +http://la193sahrigxt.sqfkkj.top/live/cx_380928.flv?wsSecret=7962ce491439c002895d170c510d333a&wsTime=1784726535 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妮妮酱 +http://xinlcse02lais.yueyongli.top/live/cx_386592.flv?wsSecret=b17023ef64e9b5e16fd636337f9b7784&wsTime=1784717590 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",骚倪倪 +http://77b.xn--ypzw80d.com/live/cx_14193.flv?wsSecret=e2d4fb3aadc707472a130e3b030227f7&wsTime=1784720787 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",饼干 +http://lawoazletjsuet.sqfkkj.top/live/cx_385112.flv?wsSecret=bca4b0f115fda08a8eb1351e25a5b701&wsTime=1784724352 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",热舞安妮 +http://xrgszsbrila.yueyongli.top/live/cx_387007.flv?wsSecret=f15b47a900b281adbc7a3bd2e79a32af&wsTime=1784720838 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",有有 +http://77bo.xn--thqp73n.com/live/cx_16689.flv?wsSecret=99f94b8892ce8df21a3dd1f329da0702&wsTime=1784720873 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小萝莉 +http://laxincr05spring.abrillantlee.top/live/cx_386789.flv?wsSecret=b758ac7be1f4de64863996645d7a0642&wsTime=1784725733 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",00台球助教 +http://la193sahrigxt.sqfkkj.top/live/cx_381356.flv?wsSecret=55a7d88f9e62a48ed4d6329019f72254&wsTime=1784726755 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",糕冷小美 +http://laxingcenr.yueyongli.top/live/cx_375631.flv?wsSecret=00e1acbdf0865e8e2fe2f5a56c3251c3&wsTime=1784723661 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",日本av放映室 +http://laxincr05spring.abrillantlee.top/live/cx_373479.flv?wsSecret=30144983eb2e939bfa4f6ce3ae395b19&wsTime=1784632687 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",浓浓 +http://lawoazletjsuet.sqfkkj.top/live/cx_368741.flv?wsSecret=3de98d9d8ef9d8aacdee6f938707090d&wsTime=1784720215 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",水多多一线天 +http://laoechxow.jinkangyl.com/live/cx_386894.flv?wsSecret=3ac83b27906aa1b5e18bdfa8aede23a3&wsTime=1784713920 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",梅梅 +http://laxincr05spring.abrillantlee.top/live/cx_386830.flv?wsSecret=b00035f4cf950680de0f2a3b70a1ddbd&wsTime=1784726604 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",可可好骚 +http://laoechxow.jinkangyl.com/live/cx_386068.flv?wsSecret=fe62004537c94434d5ecac1b47eeff39&wsTime=1784717788 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蛋糕呀 +http://xrgszsbrila.yueyongli.top/live/cx_343894.flv?wsSecret=749b888b07d1742612ce12d4e27c0408&wsTime=1784724342 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",掰块小饼干 +http://laxingcenr.yueyongli.top/live/cx_385760.flv?wsSecret=761f0893d8470afde4f0b5ac07efefa5&wsTime=1784710001 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",西宝 +http://laxincr05spring.abrillantlee.top/live/cx_386767.flv?wsSecret=0a49d75b90de1978e40e1d44a8c4e3c4&wsTime=1784718426 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",四毛 +http://77bo.xn--thqp73n.com/live/cx_15377.flv?wsSecret=b4c44d3f776acacb8cf69c624b866c74&wsTime=1784720507 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",仙宁 +http://laxingcenr.yueyongli.top/live/cx_386707.flv?wsSecret=1e72de2fd58ce421ab669cb79e70af24&wsTime=1784718669 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",千岁 +http://xinlcse02lais.yueyongli.top/live/cx_358590.flv?wsSecret=84d695944512c0e5063c1076b8b52f0a&wsTime=1784712613 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",酸奶奶昔 +http://lawoazletjsuet.sqfkkj.top/live/cx_386725.flv?wsSecret=b98daeaec13ec5218cd08d21c57dd313&wsTime=1784725788 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",单亲妈妈户外 +http://lawoazletjsuet.sqfkkj.top/live/cx_376546.flv?wsSecret=a58cec8797c0b683029467cb52858b42&wsTime=1784726302 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",畔畔 +http://77b.xn--vuqy52q.com/live/cx_16679.flv?wsSecret=49123fda63499883ca4f9d61a619a3bd&wsTime=1784721358 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",痞桃吖 +http://lawoazletjsuet.sqfkkj.top/live/cx_364965.flv?wsSecret=fe24a36d724ff78d55e3e9d05fe506c3&wsTime=1784725600 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",岛国一本道东京热 http://laoechxow.jinkangyl.com/live/cx_385550.flv?wsSecret=0b82245318b7e7dc4c0c3077d44b1dab&wsTime=1784594341 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",许安画 -http://laxlv03me.sqfkkj.top/live/cx_361599.flv?wsSecret=14cc60df73dff686d9274162fc5b17a4&wsTime=1784707452 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",野性诱惑者 +http://la193sahrigxt.sqfkkj.top/live/cx_382144.flv?wsSecret=cf03d2ccd7a6b54261ed1cc265e5a4c4&wsTime=1784727001 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",轶轶 +http://77bo.xn--t8w422e.com/live/cx_16519.flv?wsSecret=8c3698470426d7da6a78d1f6b044e6ac&wsTime=1784721189 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶思兔 +http://lawoazletjsuet.sqfkkj.top/live/cx_375411.flv?wsSecret=ac38789c8bc1aed90a026a354414ad43&wsTime=1784720706 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",看的清纯一的骚 -http://lawoazletjsuet.sqfkkj.top/live/cx_385712.flv?wsSecret=424ce4dfe423aa9017ac4ccad6582436&wsTime=1784698752 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",柠檬不萌 -http://la193sahrigxt.sqfkkj.top/live/cx_385527.flv?wsSecret=a099393470ed1d08228d97a1ffc50e7d&wsTime=1784694043 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大白兔奶糖 -http://la193sahrigxt.sqfkkj.top/live/cx_384721.flv?wsSecret=1d4e6d3e9ba05c74b6e9c5b32bf309eb&wsTime=1784701967 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",罐罐子 -http://laoechxow.jinkangyl.com/live/cx_381717.flv?wsSecret=a3754c64f098e9e116251d717d7ba915&wsTime=1784690850 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大耳朵 -http://laxingcenr.yueyongli.top/live/cx_384764.flv?wsSecret=e0964309e6c69e96b59fb611b29b9c88&wsTime=1784696689 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",福猫 -http://lawoazletjsuet.sqfkkj.top/live/cx_385676.flv?wsSecret=7fed40aac723a1292e6e1afbb53b27d5&wsTime=1784696379 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",深喉控 -http://xrgszsbrila.yueyongli.top/live/cx_385964.flv?wsSecret=75a324101658b91cb25240f8cf18607b&wsTime=1784688264 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",熙熙儿 -http://77b.xn--vuqy52q.com/live/cx_12602.flv?wsSecret=801248bc72d82a75c7533984a36570f7&wsTime=1784693558 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小薇薇 -http://laxincr05spring.abrillantlee.top/live/cx_386718.flv?wsSecret=9760ac873b9773e40bf66e3374331e42&wsTime=1784704977 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",梨儿 -http://laxingcenr.yueyongli.top/live/cx_386173.flv?wsSecret=5165f42acb1d5f7cafbb81fdc1d738df&wsTime=1784703465 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",浪花朵朵 -http://77bo.xn--t8w422e.com/live/cx_16309.flv?wsSecret=eb4975ff78562279d9cd66caff0b29b3&wsTime=1784707066 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",户外打野@ -http://77bo.xn--fhqv92p.com/live/cx_15642.flv?wsSecret=444bb0e680270720433b4682a769cf0c&wsTime=1784604589 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",莹莹 -http://guetnzweozela.sqfkkj.top/live/cx_386558.flv?wsSecret=993cdc4e007f91836329c3b017917eba&wsTime=1784704737 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",悠咪 -http://xinlcse02lais.yueyongli.top/live/cx_386186.flv?wsSecret=d8e5f1cd2b82f34416c2710e7a9250cd&wsTime=1784706245 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",招财元宝 -http://xrgszsbrila.yueyongli.top/live/cx_386181.flv?wsSecret=b6c6cdbf559dfbd80b37f3ae88c9eb25&wsTime=1784707923 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依儿 -http://xrgszsbrila.yueyongli.top/live/cx_386781.flv?wsSecret=daee865860ab55619beb08275bdc5ccd&wsTime=1784703112 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",姐姐r -http://laxincr05spring.abrillantlee.top/live/cx_363144.flv?wsSecret=c900c21d6538e910c467609c2d635e2b&wsTime=1784708115 +http://la193sahrigxt.sqfkkj.top/live/cx_385712.flv?wsSecret=cfb95bc099e6b9ab9105a2bd227d71bf&wsTime=1784722217 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",吞精控 +http://xrgszsbrila.yueyongli.top/live/cx_385994.flv?wsSecret=cf7836dfb2eb9f230c0e29d8b7b6aefb&wsTime=1784721942 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小黄海 +http://xinlcse02lais.yueyongli.top/live/cx_386927.flv?wsSecret=f900cda8ab54d8f1f0c269f1f8331708&wsTime=1784726030 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",在逃公主柳如烟 +http://laxincr05spring.abrillantlee.top/live/cx_386008.flv?wsSecret=aacf8a45772dc523aa28204fe1eaac81&wsTime=1784712934 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",钱多多 +http://laxincr05spring.abrillantlee.top/live/cx_386889.flv?wsSecret=a14317d4e8129e024070d074be64fabe&wsTime=1784724109 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",司理理 +http://laxincr05spring.abrillantlee.top/live/cx_377328.flv?wsSecret=d74585f8922f8fc3f49410399dc5e87e&wsTime=1784725532 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小喵酱 +http://xinlcse02lais.yueyongli.top/live/cx_385723.flv?wsSecret=84a131c2f0e5088e47403ec1e058109e&wsTime=1784711872 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",莫妮卡 +http://laoechxow.jinkangyl.com/live/cx_374520.flv?wsSecret=27f16f285e13c653df6cf0f40c556500&wsTime=1784722986 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",阿琴 -http://la001xencoffee.yueyongli.top/live/cx_387118.flv?wsSecret=2db25a3ad849380e884b11ebe9972b64&wsTime=1784706064 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",舟舟 -http://laxincr05spring.abrillantlee.top/live/cx_386585.flv?wsSecret=db5d4b1fc9bcb2fdaf9b21e56c90508b&wsTime=1784706271 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",萌萌不暴躁 -http://77bo.xn--thqp73n.com/live/cx_15547.flv?wsSecret=ae53f32ed9dccafd32744b75f3f0d88d&wsTime=1784706278 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",人鱼姬 -http://laoechxow.jinkangyl.com/live/cx_386671.flv?wsSecret=d11c5c09b92d29fc3da5cbb739c667c1&wsTime=1784705151 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",媚儿6 -http://laoechxow.jinkangyl.com/live/cx_386176.flv?wsSecret=9602a6c8afecbd6f59d57e50ee590e5a&wsTime=1784698016 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",酥酥m -http://laoechxow.jinkangyl.com/live/cx_385708.flv?wsSecret=cd41922f4026af0726d75833be748b95&wsTime=1784703667 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",爆乳肥臀 -http://laxincr05spring.abrillantlee.top/live/cx_386741.flv?wsSecret=88fe3036d8e18d0a12c8f9b938515fc5&wsTime=1784704034 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",草莓熊 -http://laxingcenr.yueyongli.top/live/cx_386739.flv?wsSecret=198b06decf2cebbeb030130bd42720f7&wsTime=1784699442 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",国产三级片@ -http://77bo.xn--fhqv92p.com/live/cx_16585.flv?wsSecret=986250f9ff7c7515b1e4a3958bcfa17b&wsTime=1784586708 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",钱多多 -http://laxincr05spring.abrillantlee.top/live/cx_386889.flv?wsSecret=8f05b48db808d5901673e3c29a53a11c&wsTime=1784708095 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",人兽大战@ -http://77bo.xn--fhqv92p.com/live/cx_24.flv?wsSecret=5486fc8f7d40f78f148eb094354df11d&wsTime=1784604475 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",极品奶昔 -http://laxingcenr.yueyongli.top/live/cx_384694.flv?wsSecret=30fa00db16cbce063657a916c2a5710e&wsTime=1784702530 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",未成年@ -http://77bo.xn--fhqv92p.com/live/cx_28.flv?wsSecret=98acbd0b3734bf1ec5feee10fee89b40&wsTime=1784604522 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",小耳朵66 -http://la193sahrigxt.sqfkkj.top/live/cx_361786.flv?wsSecret=6b2ae58cd8dc62561b5d12fc24f7cf73&wsTime=1784704874 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",金西西 -http://xinlcse02lais.yueyongli.top/live/cx_16397.flv?wsSecret=78f5980beacf8132d2327ab62de19131&wsTime=1784695449 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",花无缺5 -http://guetnzweozela.sqfkkj.top/live/cx_378665.flv?wsSecret=45e996e61fafa81fc1b108e03c4b36ef&wsTime=1784708043 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",蓝汐 -http://77bo.xn--vuqy52q.com/live/cx_4062.flv?wsSecret=2e5dd9edb55d77572f4a0fcae0934fc8&wsTime=1784699686 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",梅梅 -http://laxincr05spring.abrillantlee.top/live/cx_386830.flv?wsSecret=fc2d1ce4d01060791e7c21e6a301beed&wsTime=1784704408 +http://laxincr05spring.abrillantlee.top/live/cx_387118.flv?wsSecret=85bf74edead6fa91961938974e93dcda&wsTime=1784717557 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",浅兮 +http://la193sahrigxt.sqfkkj.top/live/cx_376216.flv?wsSecret=70d7824ef990d756a8a71f536adf04df&wsTime=1784719017 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安欣 +http://77bo.xn--ypzw80d.com/live/cx_7945.flv?wsSecret=27c8dc69951571ede5fbe185d5973403&wsTime=1784714307 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小喇叭 +http://77bo.xn--vuqy52q.com/live/cx_4605.flv?wsSecret=21d0a6d884d913245af58ab0979a311c&wsTime=1784723184 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",水水蜜桃 +http://laxingcenr.yueyongli.top/live/cx_386740.flv?wsSecret=c714812b7603a73d76e027a9e6cffcae&wsTime=1784719093 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",真实探花嫖娼@ +http://77bo.xn--fhqv92p.com/live/cx_15710.flv?wsSecret=f17ac31c7e4d0d5c15866953a716d70d&wsTime=1784564051 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",布拿拿 +http://la193sahrigxt.sqfkkj.top/live/cx_385777.flv?wsSecret=348137e9348a98cc6b487d84b94a180a&wsTime=1784720037 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小七七 +http://xinlcse02lais.yueyongli.top/live/cx_386764.flv?wsSecret=cba8533d2eef5e50709a0f237580dbb5&wsTime=1784722813 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欧美白人黑人合集 +http://laoechxow.jinkangyl.com/live/cx_375008.flv?wsSecret=265abe20b0c7c0677abd5ffb451aa544&wsTime=1784694806 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狂草精神小妹.@ +http://77b.xn--ypzw80d.com/live/cx_120.flv?wsSecret=119fd3c34be85fe9bef40130a5ddc819&wsTime=1784608831 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",娜娜 +http://laoechxow.jinkangyl.com/live/cx_386747.flv?wsSecret=dc756f28ca867ead33298a10edc9c950&wsTime=1784713373 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",精彩剧情@ +http://77bo.xn--uw0as83a.com/live/cx_16437.flv?wsSecret=6883df0465859caf0a64a1dd3197d0c4&wsTime=1784507385 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",糖心%3F%3F +http://lawoazletjsuet.sqfkkj.top/live/cx_386206.flv?wsSecret=549197fb86baa55010eb131720b34547&wsTime=1784725059 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",小菲菲 -http://laxincr05spring.abrillantlee.top/live/cx_385697.flv?wsSecret=3dbb811325683693fc3ad0cedeb38d92&wsTime=1784702340 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",妹妹超白 -http://77bo.xn--kcrp02i.com/live/cx_15460.flv?wsSecret=ad31ca280d274926f9998be71717962d&wsTime=1784707379 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",山竹、 -http://laxincr05spring.abrillantlee.top/live/cx_377292.flv?wsSecret=99bd57eb77db913efe00f5a88bd3310c&wsTime=1784706605 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",洁宝儿 -http://la193sahrigxt.sqfkkj.top/live/cx_387053.flv?wsSecret=199da42168a1c5f3f633449a82394658&wsTime=1784691513 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",茱丽叶 -http://la001xencoffee.yueyongli.top/live/cx_374370.flv?wsSecret=d74a482ef484d4451a444e16b285e3de&wsTime=1784708175 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",照雪 -http://xrgszsbrila.yueyongli.top/live/cx_378879.flv?wsSecret=a96424f81d082e2a7fa4882f7926d122&wsTime=1784700904 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",小啪 -http://laoechxow.jinkangyl.com/live/cx_386913.flv?wsSecret=c42799bf267ce84735100ff96aea821c&wsTime=1784701813 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",依依实力带飞 -http://xcplawater02.yueyongli.top/live/cx_364954.flv?wsSecret=a751e418f4105ab7b40192f762556af7&wsTime=1784703800 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",腿模熙熙 -http://lawoazletjsuet.sqfkkj.top/live/cx_385806.flv?wsSecret=e82db1c02cf9c3ed9e902664b73f6d6a&wsTime=1784702283 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",大屁股水水 -http://laxincr05spring.abrillantlee.top/live/cx_386276.flv?wsSecret=2409d300f755c4eae9768117777486ec&wsTime=1784701917 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",Wandyaii -http://la193sahrigxt.sqfkkj.top/live/cx_376884.flv?wsSecret=9455c39cf98a8562a417f189a6384911&wsTime=1784706721 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",多水水 -http://laxingcenr.yueyongli.top/live/cx_385841.flv?wsSecret=d07da2b706f733a79126ee28c0bf07cc&wsTime=1784708017 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",眯崽 -http://lawoazletjsuet.sqfkkj.top/live/cx_383425.flv?wsSecret=80be6f5c43a99bf4960ce38478aad17a&wsTime=1784687404 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ChristaHot -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a3d1c7a19c05/pbg5puTFoFppeu0912804036288127190_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MiraxMonroe -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a5e111a5fd72/BiSbhFA9CNtZvDC416702934081862000_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Reina_Cummings -https://edge-cdn2.streamparty.online/LiveApp/streams/user68692199abab5/6jZchoFWH9tr89Fe5310350849956496_adaptive.m3u8 +http://laxincr05spring.abrillantlee.top/live/cx_385697.flv?wsSecret=56aef08950f7f72a8e6d15e0e8fe0f9a&wsTime=1784725638 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",坦克贝塔 +http://laxingcenr.yueyongli.top/live/cx_381205.flv?wsSecret=4e8825fb63a034e7609643a2d3708c8a&wsTime=1784719309 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",多水水 +http://guetnzweozela.sqfkkj.top/live/cx_385841.flv?wsSecret=c4b2ad9bc8ac5aba15396b69713e0747&wsTime=1784722822 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",karina +http://laoechxow.jinkangyl.com/live/cx_362421.flv?wsSecret=95169c58e5f0b81508ba5880a2772ae7&wsTime=1784722643 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",Yomi%252520 +http://guetnzweozela.sqfkkj.top/live/cx_386432.flv?wsSecret=a9bd3852fc54c1f6a17e54a4d7b4faeb&wsTime=1784717452 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",Cos二次元@ +http://77b.xn--ypzw80d.com/live/cx_32.flv?wsSecret=e0fef15c848275d5ba6eb3932682cbb8&wsTime=1784704304 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",职场身体上位@ +http://77bo.xn--fhqv92p.com/live/cx_15604.flv?wsSecret=46bd3e039f41c20ea3f9b076f7b82028&wsTime=1784717256 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",鹿瑶 +http://laxincr05spring.abrillantlee.top/live/cx_385363.flv?wsSecret=89d2258f6102e3662010076ae80584a1&wsTime=1784727232 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",苏妲己7 +http://la001xencoffee.yueyongli.top/live/cx_385591.flv?wsSecret=7280a5e667eaf566d56e6ca3d4c57b36&wsTime=1784727331 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",姐姐r +http://laxincr05spring.abrillantlee.top/live/cx_363144.flv?wsSecret=d936e0e5060ef5fca454c5958d9da567&wsTime=1784727210 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",冰美式 +http://laxincr05spring.abrillantlee.top/live/cx_386857.flv?wsSecret=4293a9280275c696fdbdde386ceceab4&wsTime=1784727293 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",慕夏 +http://la001xencoffee.yueyongli.top/live/cx_381391.flv?wsSecret=260db9c45175585526d885d8212df7b2&wsTime=1784727395 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mitao.jpg" group-title="蜜桃",小黄海 +http://la001xencoffee.yueyongli.top/live/cx_386927.flv?wsSecret=4197b1789e17f3bdc0734ff286799932&wsTime=1784727242 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mitao.jpg" group-title="蜜桃",大漂亮 +http://laoechxow.jinkangyl.com/live/cx_386854.flv?wsSecret=be9ec312fe9434445798aeb1ce675623&wsTime=1784725772 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yami.jpg" group-title="亚米",清纯 +http://laoechxow.jinkangyl.com/live/cx_386918.flv?wsSecret=084ef2e8efd9d8f71ca576f5d16238d2&wsTime=1784727177 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SassyIvana +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0efbcc59c65/MT3lAERTnBwgFz3Z9799333133249621_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",EdithOliviere +https://edge-cdn2.streamparty.online/LiveApp/streams/user680a27acdeea3/MVajFU0ZaeFWcNNb14392804986079310_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",elsajeanX +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a51e39440cff/XlWHCRnRSLB9P92T14284805520869305_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",HaileyMadow +https://edge-cdn2.streamparty.online/LiveApp/streams/user677d6444f096f/LBGgbFTVuNq4ASGA13412984620035944_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",EVASOFT +https://edge-cdn1.streamparty.online/LiveApp/streams/user667d71071396f/p3LBUKqULZPoLEl54647836615923187_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",BlancheSummer https://edge-cdn2.streamparty.online/LiveApp/streams/user67ae482dbbd9e/Bc7tXYigA6yGlJR211075376295302717_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",KayaSins -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0eefe52e013/1ZLwgas1LttQ6MN111519676738680349_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LuxaCole -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a509abd57ba8/1JsD6oCaKvacy2dd1507103594830533_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AmyBlair -https://edge-cdn2.streamparty.online/LiveApp/streams/user6827430dbe19c/AkJr9SpHipCjz2ok5244083312879880_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",BellaStylezz -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a509857c9614/R9Vs7erZyKISdyta14462158606619388_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",BrainyBelle -https://edge-cdn2.streamparty.online/LiveApp/streams/user69d63e6012c77/QCnFhkPqOW9DS9y97840754683428306_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SarahVellmont -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0c075416b8e/hdh14wAN8WDMBPwQ9618456668589984_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",EvellineClaire -https://edge-cdn2.streamparty.online/LiveApp/streams/user678f10951ef4e/eNaG1FjzhXd2dtZi13978969136850470_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Assmerising https://edge-cdn2.streamparty.online/LiveApp/streams/user69d6274be072f/swTRpdRXGiMLwYPL7161315205961481_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LilithBlaze -https://edge-cdn1.streamparty.online/LiveApp/streams/user69b83aef46dd8/zj4WSY2XIuh2ZbCy4031000498387315_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",gloriaa_shine -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a156dd55cb28/xXG5p74XwjNLgsQT12335331462059866_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ScarletFlame -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a3d408dc3117/TFvsf1juTePCfMsi12804127467484441_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ClaraHazel -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a38de595e245/jWU38Ej7s5PKLWKq403202327106156_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Linseddie -https://edge-cdn2.streamparty.online/LiveApp/streams/user69f1ff81361b4/ezacS9MvaF3Jfw4P11239347329241130_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",DeliaSmith -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a38dc4e8b5e1/zrpFUeyBXwbxu8aP13347511917977818_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AbellaFox -https://edge-cdn1.streamparty.online/LiveApp/streams/user6a470af989e53/63J8eCI6sIio7nxC15204951227910386_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Divine_Goddes69 -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a1521abb1788/5m9jrWAzVgQWXhQU10131708084541144_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",BellaStylezz +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a509857c9614/R9Vs7erZyKISdyta14462158606619388_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Melisa_babe +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a157c0b8ed73/CF6fXuhkGXr9vTQc10322904497851485_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SofiaCopper +https://edge-cdn1.streamparty.online/LiveApp/streams/user6991f25738f6b/46AS4uhlGEBGA5Im5207081392880448_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",IrisRoss +https://edge-cdn1.streamparty.online/LiveApp/streams/user6984d56b09f7d/KjPvAK8SaLo7W7fb5266179657231397_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Sara_Vanegas +https://edge-cdn1.streamparty.online/LiveApp/streams/user66fe545b36a14/v3QDRlqSxPDeZa9v5233889239981204_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AgataDelphine +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a049dee1d806/kGTmplf2grGCkhoX9674670781102106_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",IngAdn +https://edge-cdn2.streamparty.online/LiveApp/streams/user67d95604e206e/Qx8jB3BJW6XmEC1m10363112489982332_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",BriannaChelsea +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a049c9b89d73/HVl49FmWXfVMpmSf10191938976674779_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ElizabethSweet +https://edge-cdn1.streamparty.online/LiveApp/streams/user686d9b8871cad/VlfaS26nPE4TBR3o13376430085196620_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",DestinySins +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a049e5945c16/S4QYqhII3E64uygE11948956719476643_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",RileySweet +https://edge-cdn1.streamparty.online/LiveApp/streams/user6991f465e13ca/v653KzywLm7yolJu4573982604733723_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",DahianaMoss +https://edge-cdn1.streamparty.online/LiveApp/streams/user6991ed2489442/9s9rwynK8jDVMhth5152908444310736_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Jaadee +https://edge-cdn1.streamparty.online/LiveApp/streams/user69b33f57b3213/qx7K1CyvlPYOm4EH4931045560417726_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AlliciaKim +https://edge-cdn1.streamparty.online/LiveApp/streams/user697e95beac0f7/o61ywC9FHoYUWFVf5152390031404193_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LunaVelvet +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a56abb253381/SOeFhua4Bf7JXocK1404789487353244_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",hanny-milf +https://edge-cdn1.streamparty.online/LiveApp/streams/user670db76e3e983/6zbxGGOQL2gkUOqY5219417474114492_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Dasha%2520Novikov +https://edge-cdn1.streamparty.online/LiveApp/streams/user66fe47b8648da/qK60GpXu2sw8ciSR5168162906023093_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",EllaAziana https://edge-cdn2.streamparty.online/LiveApp/streams/user69f36e57169fb/3yufzAljNgqqGuBz16716067063786542_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Hotmodel -https://edge-cdn1.streamparty.online/LiveApp/streams/user695c9d27b594a/fWcHKSElgSAxW4Fs5186762221403242_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Amber_Foks -https://edge-cdn2.streamparty.online/LiveApp/streams/user67f6691c9d1f5/Z3ZUGRSRm8HDRGLc5324534366922769_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",NovaDiamond -https://edge-cdn2.streamparty.online/LiveApp/streams/user69f37211c322b/TS2qr1CTTCQJ1uJe16715804527948131_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",VIOLETAMEDINA -https://edge-cdn1.streamparty.online/LiveApp/streams/user667d83598abb2/3lXn0Z8oZLaoW2l24625642316367340_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",OrianaWade -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a38e09c98f83/4cybMgdiubxM61gf405023033280455_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",VeronaNoct -https://edge-cdn2.streamparty.online/LiveApp/streams/user6a4f7dfd0f654/0dMe7zj4KGH3IK8L14456209701768695_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",JenexaXO -https://manifest-server.naiadsystems.com/live/8a54b5cc-c244-4e59-82ac-6b6e954befbd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=u4mMdaM9sLMhNlEsmQb%2BlsPHhFZJ1EkLDqD0%2FxYbHxs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22u4mMdaM9sLMhNlEsmQb%2BlsPHhFZJ1EkLDqD0%2FxYbHxs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228a54b5cc-c244-4e59-82ac-6b6e954befbd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Goddesspaigee22 -https://manifest-server.naiadsystems.com/live/fc8e4237-eae3-4882-aba2-78721f2ba31e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=%2BP5r0pwAl188U8stBJ9PGSDZXJrf7abplH5EBxCA1k0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22%2BP5r0pwAl188U8stBJ9PGSDZXJrf7abplH5EBxCA1k0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fc8e4237-eae3-4882-aba2-78721f2ba31e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TashaNoir -https://manifest-server.naiadsystems.com/live/bb8793ec-a567-49ac-abe1-dcb668b019f0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=KnIx1jIFB%2BB4mlSM%2BQjmMpAqzFU6AqIcw5T2lbCDzpo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22farfetchd%3A8303%22%2C%22btk%22%3A%22KnIx1jIFB%2BB4mlSM%2BQjmMpAqzFU6AqIcw5T2lbCDzpo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bb8793ec-a567-49ac-abe1-dcb668b019f0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Monica_Steals -https://manifest-server.naiadsystems.com/live/e5057fcd-b223-46ac-afd5-9447fd853378.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=Fzr0keAlZBsF9ORd6sjDSv%2BgGmulDfQfXVSjNhU787o&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22Fzr0keAlZBsF9ORd6sjDSv%2BgGmulDfQfXVSjNhU787o%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e5057fcd-b223-46ac-afd5-9447fd853378%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",BritishBellaxx -https://manifest-server.naiadsystems.com/live/2e70aa3c-6a73-43e3-b70b-bcb869e18c60.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=MPYXQdTPjTM32EHie3LqgY4uGiTXBrYrhzmkEnXevi8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22MPYXQdTPjTM32EHie3LqgY4uGiTXBrYrhzmkEnXevi8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%222e70aa3c-6a73-43e3-b70b-bcb869e18c60%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AmandaAndrews -https://manifest-server.naiadsystems.com/live/447519d0-e67c-4a26-9118-0fc7463e366d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golem%3A8303&btk=wxrYMJrsBG8QYax8kVCrBJp6eCTFuD2AqF2txLYHky0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golem%3A8303%22%2C%22btk%22%3A%22wxrYMJrsBG8QYax8kVCrBJp6eCTFuD2AqF2txLYHky0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22447519d0-e67c-4a26-9118-0fc7463e366d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",KimiKoda -https://manifest-server.naiadsystems.com/live/466b2b91-79db-432e-9f9f-47bfc328c2ad.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=V1mH6%2BgxLW5Khr1%2FLAGNkRhlkpBggoN1AkC%2FNhDnjYk&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22V1mH6%2BgxLW5Khr1%2FLAGNkRhlkpBggoN1AkC%2FNhDnjYk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22466b2b91-79db-432e-9f9f-47bfc328c2ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Skinny_Asian_Amanda -https://manifest-server.naiadsystems.com/live/22de4695-012b-4049-a9b0-2350197ee16d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=tfuRoT7wLfK68NEYleG3yJSGxy1kWbb9I7ymH6arPwE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22tfuRoT7wLfK68NEYleG3yJSGxy1kWbb9I7ymH6arPwE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2222de4695-012b-4049-a9b0-2350197ee16d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Ambersnowxoxoxo -https://manifest-server.naiadsystems.com/live/78556bb2-d3fa-45fa-a91d-0c4f3e9042a8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=zS1glDx%2BzAQw1TCMnqreS9tJ1t%2B1y3ltEyczqpF4CmI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowking%3A8303%22%2C%22btk%22%3A%22zS1glDx%2BzAQw1TCMnqreS9tJ1t%2B1y3ltEyczqpF4CmI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2278556bb2-d3fa-45fa-a91d-0c4f3e9042a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MelodyRoseUK -https://manifest-server.naiadsystems.com/live/37b9308a-160e-40ea-aa28-c2c60a2f4e30.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=ekans%3A8303&btk=aRvDmZpmC9%2BqYZt%2FtUUf232e4LP5ZKSnK2RSjUccc24&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ekans%3A8303%22%2C%22btk%22%3A%22aRvDmZpmC9%2BqYZt%2FtUUf232e4LP5ZKSnK2RSjUccc24%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2237b9308a-160e-40ea-aa28-c2c60a2f4e30%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AmberLynnXXX -https://manifest-server.naiadsystems.com/live/fd66a402-5449-4539-b15d-0b77790146a7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=rahu%3A8303&btk=BCA5%2BDSUil1M4L3NFDBvVgAKn8GPaT7xC0mhW9VbQ88&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rahu%3A8303%22%2C%22btk%22%3A%22BCA5%2BDSUil1M4L3NFDBvVgAKn8GPaT7xC0mhW9VbQ88%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fd66a402-5449-4539-b15d-0b77790146a7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Boredintheoffice -https://manifest-server.naiadsystems.com/live/45a655e8-5033-44e7-9800-1c7875fc1569.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=Psog7sRTNwkJp5DvTy2uDqdZBrBgcn7YTZqHBVEcQ0Y&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22Psog7sRTNwkJp5DvTy2uDqdZBrBgcn7YTZqHBVEcQ0Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2245a655e8-5033-44e7-9800-1c7875fc1569%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TheNaughtyMilfNextDoor +https://manifest-server.naiadsystems.com/live/1903dc33-9ace-4a03-87a5-7fa804e3a609.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=8xc606ENzrE7u7GjrnvgmlqERtG%2FF6fCE3EFUiEOQuk&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22cloyster%3A8303%22%2C%22btk%22%3A%228xc606ENzrE7u7GjrnvgmlqERtG%2FF6fCE3EFUiEOQuk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221903dc33-9ace-4a03-87a5-7fa804e3a609%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",DurtyDyannna +https://manifest-server.naiadsystems.com/live/5e348e83-49bf-4816-b5c7-873fd0c190ec.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=NvIVu8A%2FeBJbUu9d0EY1hyj0lIqQoc52HJbXtn0P1uM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22NvIVu8A%2FeBJbUu9d0EY1hyj0lIqQoc52HJbXtn0P1uM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225e348e83-49bf-4816-b5c7-873fd0c190ec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",libby_love +https://manifest-server.naiadsystems.com/live/8e50c9f3-4efe-4674-93de-cfaf1c6b7bba.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=Xw8lWdivp9v57tuBXSyaTgd17iCUnKEFYwl0UlXvtDg&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22Xw8lWdivp9v57tuBXSyaTgd17iCUnKEFYwl0UlXvtDg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228e50c9f3-4efe-4674-93de-cfaf1c6b7bba%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TheElaySmith +https://manifest-server.naiadsystems.com/live/8cfd9396-ecf3-497e-8a58-bee4903e9d69.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=c%2FTugQb5cGj6yFk41uloo%2B7w%2F5dIHdUAHjvqSlrXfXg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22c%2FTugQb5cGj6yFk41uloo%2B7w%2F5dIHdUAHjvqSlrXfXg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228cfd9396-ecf3-497e-8a58-bee4903e9d69%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",RavenSundance +https://manifest-server.naiadsystems.com/live/64cef38d-6364-412a-abf5-e662ed7843f8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=C6yZFlMPIcMECbQ6gdj5X4Y8UOVNHFpz4YV3vbAbHMA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22C6yZFlMPIcMECbQ6gdj5X4Y8UOVNHFpz4YV3vbAbHMA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2264cef38d-6364-412a-abf5-e662ed7843f8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",JoanieOakley21 +https://manifest-server.naiadsystems.com/live/9aeaefc8-8c1b-4ebd-90a5-6ae866e5cef1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=PQ7vC3SqyUhMMFfxQsWcQuyNjKExkEf%2FaxI9dipHIKs&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22PQ7vC3SqyUhMMFfxQsWcQuyNjKExkEf%2FaxI9dipHIKs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229aeaefc8-8c1b-4ebd-90a5-6ae866e5cef1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Annahilation +https://manifest-server.naiadsystems.com/live/03f69a62-87e1-4841-ad22-c1873a4367a2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=y7b0P7WvLW9yNoMwOe1WyUbjACzOKtAm0AGkKVX99Qk&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%22y7b0P7WvLW9yNoMwOe1WyUbjACzOKtAm0AGkKVX99Qk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2203f69a62-87e1-4841-ad22-c1873a4367a2%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",jesseraeuk +https://manifest-server.naiadsystems.com/live/f0ad95d0-8d44-4fbd-96e6-b904a06f727d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=o%2FPMZ%2FqRrPhYODsoPdJ6zZwocNM1qKpvoPkkcOdxLtc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%22o%2FPMZ%2FqRrPhYODsoPdJ6zZwocNM1qKpvoPkkcOdxLtc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f0ad95d0-8d44-4fbd-96e6-b904a06f727d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",itsfreckless +https://manifest-server.naiadsystems.com/live/24026e8e-cd6a-4c6c-9bc4-954ba400b64c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=qSZU2U7r0G3OY1mMqqCP2%2BKrHeRAIlZdw%2FHtDiwRz%2FI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22qSZU2U7r0G3OY1mMqqCP2%2BKrHeRAIlZdw%2FHtDiwRz%2FI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2224026e8e-cd6a-4c6c-9bc4-954ba400b64c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SoVeryDifferent +https://manifest-server.naiadsystems.com/live/145b6ccc-4cea-4529-8cb9-a07f1ecccb99.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=im5w%2BKk0cz44f68QIbk5yhocARAvetW8PtTNyEBvhzs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22im5w%2BKk0cz44f68QIbk5yhocARAvetW8PtTNyEBvhzs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22145b6ccc-4cea-4529-8cb9-a07f1ecccb99%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",GoddessNinaOdille +https://manifest-server.naiadsystems.com/live/a783bee0-d749-46e9-9219-af2e3449191f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=kEYSxJ4y6YlMSEIvRQvDsLD8Qcd5MiOXY5DTI8kWQ7I&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%22kEYSxJ4y6YlMSEIvRQvDsLD8Qcd5MiOXY5DTI8kWQ7I%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a783bee0-d749-46e9-9219-af2e3449191f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",IzzyKreame +https://manifest-server.naiadsystems.com/live/1addc820-9123-46d8-beb6-2e7a528ed558.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=fj3dHs91ct6BAZ4SZleo0Lcam4WDwsvukDb%2Fg14%2Bgyc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22fj3dHs91ct6BAZ4SZleo0Lcam4WDwsvukDb%2Fg14%2Bgyc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221addc820-9123-46d8-beb6-2e7a528ed558%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Lucybrookess +https://manifest-server.naiadsystems.com/live/079e6d1c-ce2d-43db-aafc-59a51b402f5f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=E6nyLLzfcbIvcwB%2F89d5ssiY92qNSVRYqGbEUvYl2pU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%22E6nyLLzfcbIvcwB%2F89d5ssiY92qNSVRYqGbEUvYl2pU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22079e6d1c-ce2d-43db-aafc-59a51b402f5f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",VelvetSpell https://edge-cdn2.streamparty.online/LiveApp/streams/user69d63d5fd76ab/c0gcdFmorSKuHqU98319178333204356_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",BrainyBelle @@ -363,6 +393,8 @@ rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/6062_1688606258868 https://edge-cdn2.streamparty.online/LiveApp/streams/user69e9f43aeb884/lG6urQh6xzdzbmly7292263411761171_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",MisshaNight https://edge-cdn2.streamparty.online/LiveApp/streams/user67b75cb6b238f/ocNo5BcqPputJpa55227089597541539_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Reina_Cummings +https://edge-cdn2.streamparty.online/LiveApp/streams/user68692199abab5/6jZchoFWH9tr89Fe5310350849956496_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",veronnaink https://edge-cdn1.streamparty.online/LiveApp/streams/user693f18bad0f04/rNZmTDdkPSqPYkm67173841547962237_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Vivibambi @@ -383,8 +415,6 @@ https://edge-cdn2.streamparty.online/LiveApp/streams/user6938f7945fa07/drxqGWHFD https://edge-cdn1.streamparty.online/LiveApp/streams/user6a0f5e551fdc2/N7FzpKl0ZbN44ufU9786077615430769_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Greeneyedlovex https://edge-cdn1.streamparty.online/LiveApp/streams/user683716d04109f/53ZgRUMULbAskVj911356929493620526_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",AlliciaKim -https://edge-cdn1.streamparty.online/LiveApp/streams/user697e95beac0f7/o61ywC9FHoYUWFVf5152390031404193_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Nahirr https://edge-cdn1.streamparty.online/LiveApp/streams/user69b1c1f5a69a6/3NxtFIlvP3Z9AWnt5355039648617613_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",simonasim @@ -401,6 +431,8 @@ rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/8086_1687906258899 https://edge-cdn2.streamparty.online/LiveApp/streams/user688477dd8a778/6GJIZg76hAzzvzD13481885604727867_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Natasha_Lau https://edge-cdn1.streamparty.online/LiveApp/streams/user68cd8bc4dcaa8/ppoa6pw9jhchEwnN5211037129721915_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",KayaSins +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0eefe52e013/1ZLwgas1LttQ6MN111519676738680349_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Petitkaya https://edge-cdn2.streamparty.online/LiveApp/streams/user69f4bba6b1fef/AGUpf8N2h13bL8JZ9852060320472380_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",secrethoneypotxo @@ -431,183 +463,183 @@ https://manifest-server.naiadsystems.com/live/e835ade1-e89b-4249-9b81-ad09a67557 https://manifest-server.naiadsystems.com/live/e8642cf5-afb3-4858-bd85-337750031b24.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8323&btk=bBRlDb2iEdcP%2FJh%2BNm%2Be%2Fbhbqq9yeO4UNnB73Os5zNM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22magneton%3A8323%22%2C%22btk%22%3A%22bBRlDb2iEdcP%2FJh%2BNm%2Be%2Fbhbqq9yeO4UNnB73Os5zNM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e8642cf5-afb3-4858-bd85-337750031b24%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Sarahsteveson018 https://manifest-server.naiadsystems.com/live/b64bf44b-b536-4c30-af4d-229ac078fd1c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8323&btk=948z4V0O7i%2Bsowsc2Q1c20eWuq6clmYhPd5R8liEgFo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8323%22%2C%22btk%22%3A%22948z4V0O7i%2Bsowsc2Q1c20eWuq6clmYhPd5R8liEgFo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b64bf44b-b536-4c30-af4d-229ac078fd1c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",JenexaXO -https://manifest-server.naiadsystems.com/live/8a54b5cc-c244-4e59-82ac-6b6e954befbd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=8hZPtYzQ%2FkyW9MkkdOy%2FrMgw7AdFlf%2BQWqc7aKQGL28&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%228hZPtYzQ%2FkyW9MkkdOy%2FrMgw7AdFlf%2BQWqc7aKQGL28%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228a54b5cc-c244-4e59-82ac-6b6e954befbd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Goddesspaigee22 -https://manifest-server.naiadsystems.com/live/fc8e4237-eae3-4882-aba2-78721f2ba31e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=0LItnSzk4M6ST%2Bi%2Fb9KU9VSX%2Bk7a1C8EM6f5WmE4S8E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%220LItnSzk4M6ST%2Bi%2Fb9KU9VSX%2Bk7a1C8EM6f5WmE4S8E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fc8e4237-eae3-4882-aba2-78721f2ba31e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TashaNoir -https://manifest-server.naiadsystems.com/live/bb8793ec-a567-49ac-abe1-dcb668b019f0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=m%2FKIi6FMseb8ibS6ghtu4gqhBq1LihwKHlb6tTLLTbo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22farfetchd%3A8303%22%2C%22btk%22%3A%22m%2FKIi6FMseb8ibS6ghtu4gqhBq1LihwKHlb6tTLLTbo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bb8793ec-a567-49ac-abe1-dcb668b019f0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Monica_Steals -https://manifest-server.naiadsystems.com/live/e5057fcd-b223-46ac-afd5-9447fd853378.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=mdHw6unF28vdvZ4kIpEmy5C%2B0iF2KbiyVuVzyxnr7Ls&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22mdHw6unF28vdvZ4kIpEmy5C%2B0iF2KbiyVuVzyxnr7Ls%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e5057fcd-b223-46ac-afd5-9447fd853378%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",BritishBellaxx -https://manifest-server.naiadsystems.com/live/2e70aa3c-6a73-43e3-b70b-bcb869e18c60.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=9TRRUzBaFE2Qcx0v7hmc3nVbWW1Q%2Bk1wD6zdhPktts0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%229TRRUzBaFE2Qcx0v7hmc3nVbWW1Q%2Bk1wD6zdhPktts0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%222e70aa3c-6a73-43e3-b70b-bcb869e18c60%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AmandaAndrews -https://manifest-server.naiadsystems.com/live/447519d0-e67c-4a26-9118-0fc7463e366d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golem%3A8303&btk=rtFwRcsV7Ue1ct%2FrnaDLQJcEFJgDGsx3%2Fu4SysnHZzo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golem%3A8303%22%2C%22btk%22%3A%22rtFwRcsV7Ue1ct%2FrnaDLQJcEFJgDGsx3%2Fu4SysnHZzo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22447519d0-e67c-4a26-9118-0fc7463e366d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",KimiKoda -https://manifest-server.naiadsystems.com/live/466b2b91-79db-432e-9f9f-47bfc328c2ad.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=MgnVlkHi18IPrD1qxgukt0Eil6lyvojIgKkokG3O7%2BM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22MgnVlkHi18IPrD1qxgukt0Eil6lyvojIgKkokG3O7%2BM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22466b2b91-79db-432e-9f9f-47bfc328c2ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Skinny_Asian_Amanda -https://manifest-server.naiadsystems.com/live/22de4695-012b-4049-a9b0-2350197ee16d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=Ml0PVsVt0Y%2BTqQijm6LdCo6vhqvUlXJ6upsB1bnVSuU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22Ml0PVsVt0Y%2BTqQijm6LdCo6vhqvUlXJ6upsB1bnVSuU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2222de4695-012b-4049-a9b0-2350197ee16d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Ambersnowxoxoxo -https://manifest-server.naiadsystems.com/live/78556bb2-d3fa-45fa-a91d-0c4f3e9042a8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=eGyDApfSZqgpoSvW1dqpdt%2BWIxtHdywxFOsUpCZ9opI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowking%3A8303%22%2C%22btk%22%3A%22eGyDApfSZqgpoSvW1dqpdt%2BWIxtHdywxFOsUpCZ9opI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2278556bb2-d3fa-45fa-a91d-0c4f3e9042a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TheNaughtyMilfNextDoor +https://manifest-server.naiadsystems.com/live/1903dc33-9ace-4a03-87a5-7fa804e3a609.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=bcuKfUetdUbjpV3pkVa21jps0KDsa6nnnI6OIE3lpug&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22cloyster%3A8303%22%2C%22btk%22%3A%22bcuKfUetdUbjpV3pkVa21jps0KDsa6nnnI6OIE3lpug%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221903dc33-9ace-4a03-87a5-7fa804e3a609%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",DurtyDyannna +https://manifest-server.naiadsystems.com/live/5e348e83-49bf-4816-b5c7-873fd0c190ec.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=VzXy1XJivgUw5zFpNGGc6a2V2EOvhYqGE3qgaF1o9Tc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22VzXy1XJivgUw5zFpNGGc6a2V2EOvhYqGE3qgaF1o9Tc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225e348e83-49bf-4816-b5c7-873fd0c190ec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",libby_love +https://manifest-server.naiadsystems.com/live/8e50c9f3-4efe-4674-93de-cfaf1c6b7bba.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=rZNSRNzAaKota3ls6WQmHOc9TsP8RDPf01U9WBJJ2PA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22rZNSRNzAaKota3ls6WQmHOc9TsP8RDPf01U9WBJJ2PA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228e50c9f3-4efe-4674-93de-cfaf1c6b7bba%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TheElaySmith +https://manifest-server.naiadsystems.com/live/8cfd9396-ecf3-497e-8a58-bee4903e9d69.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=tE180LpGk6Y3lRrYXO6nQSe%2BkqrGbHVDdZ1G%2BmmunmM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22tE180LpGk6Y3lRrYXO6nQSe%2BkqrGbHVDdZ1G%2BmmunmM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228cfd9396-ecf3-497e-8a58-bee4903e9d69%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RavenSundance +https://manifest-server.naiadsystems.com/live/64cef38d-6364-412a-abf5-e662ed7843f8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=ZB5OZCRa6CFGxiWoAZ8v1kQ7e4l8jHMUQhcACbV4FQo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22ZB5OZCRa6CFGxiWoAZ8v1kQ7e4l8jHMUQhcACbV4FQo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2264cef38d-6364-412a-abf5-e662ed7843f8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",JoanieOakley21 +https://manifest-server.naiadsystems.com/live/9aeaefc8-8c1b-4ebd-90a5-6ae866e5cef1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=xqnua8Pij60Y7j3vxQA7eEEWEFege4n8q0Ps9BWfIXI&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22xqnua8Pij60Y7j3vxQA7eEEWEFege4n8q0Ps9BWfIXI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229aeaefc8-8c1b-4ebd-90a5-6ae866e5cef1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Annahilation +https://manifest-server.naiadsystems.com/live/03f69a62-87e1-4841-ad22-c1873a4367a2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=noeKFXHGdAtFN7K%2BxhL44tvdZiv7C7n5PyUpyZWdew0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%22noeKFXHGdAtFN7K%2BxhL44tvdZiv7C7n5PyUpyZWdew0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2203f69a62-87e1-4841-ad22-c1873a4367a2%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SophiaWren +https://manifest-server.naiadsystems.com/live/53454ac8-9337-4238-ac48-d903b8b2e96c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=threehorn%3A8303&btk=zLdsO7wDeAmjVznQs2DTUgv%2FT76jw0uNetxoSIxgW3M&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22threehorn%3A8303%22%2C%22btk%22%3A%22zLdsO7wDeAmjVznQs2DTUgv%2FT76jw0uNetxoSIxgW3M%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2253454ac8-9337-4238-ac48-d903b8b2e96c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",jesseraeuk +https://manifest-server.naiadsystems.com/live/f0ad95d0-8d44-4fbd-96e6-b904a06f727d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=3pv009Xh%2F4oHPZlU93IrdtX6SbRdOKKF%2FSCBy%2FXDzNA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%223pv009Xh%2F4oHPZlU93IrdtX6SbRdOKKF%2FSCBy%2FXDzNA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f0ad95d0-8d44-4fbd-96e6-b904a06f727d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",itsfreckless +https://manifest-server.naiadsystems.com/live/24026e8e-cd6a-4c6c-9bc4-954ba400b64c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=ejjdCjbWlRdXq4MyAuFBRs4hHCwaJwLnAk4LV7EJWSI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22ejjdCjbWlRdXq4MyAuFBRs4hHCwaJwLnAk4LV7EJWSI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2224026e8e-cd6a-4c6c-9bc4-954ba400b64c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",GoddessNinaOdille +https://manifest-server.naiadsystems.com/live/a783bee0-d749-46e9-9219-af2e3449191f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=sKOu9qTXBCElCZluJ0sp4yz%2Fa2zyNwbQgZ2nCueiiw8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%22sKOu9qTXBCElCZluJ0sp4yz%2Fa2zyNwbQgZ2nCueiiw8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a783bee0-d749-46e9-9219-af2e3449191f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",IzzyKreame +https://manifest-server.naiadsystems.com/live/1addc820-9123-46d8-beb6-2e7a528ed558.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=0UE62EW8whd46Ld2pbUbcvL%2FI1b6JW7f4lL4eU7FiKQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%220UE62EW8whd46Ld2pbUbcvL%2FI1b6JW7f4lL4eU7FiKQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221addc820-9123-46d8-beb6-2e7a528ed558%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MartaShadow +https://manifest-server.naiadsystems.com/live/fb3ea7b2-c47b-4fd1-b3ff-a0fecb7eba73.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=eCNAluZJI6tWZDmUUypblL3AsNmdiRW3I3TLUxWlIrc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%22eCNAluZJI6tWZDmUUypblL3AsNmdiRW3I3TLUxWlIrc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fb3ea7b2-c47b-4fd1-b3ff-a0fecb7eba73%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Lucybrookess +https://manifest-server.naiadsystems.com/live/079e6d1c-ce2d-43db-aafc-59a51b402f5f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=0VvV8yZ%2F71TBQEKJauGV35CLs1mXnRbx9LxdWMC1M%2FE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%220VvV8yZ%2F71TBQEKJauGV35CLs1mXnRbx9LxdWMC1M%2FE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22079e6d1c-ce2d-43db-aafc-59a51b402f5f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",QueenChloeXO +https://manifest-server.naiadsystems.com/live/09193a94-47e2-4557-a75d-483135ab6963.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=spiketail%3A8303&btk=MhkD1wWWa6Jl5sT8F1vp%2B9tkeuw4%2BRQGf%2FOKJBEvGqE&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22spiketail%3A8303%22%2C%22btk%22%3A%22MhkD1wWWa6Jl5sT8F1vp%2B9tkeuw4%2BRQGf%2FOKJBEvGqE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2209193a94-47e2-4557-a75d-483135ab6963%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RoxyRoseX +https://manifest-server.naiadsystems.com/live/1583cb56-de38-42f3-b091-2f10355ba825.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=4pQbJoJL%2BWg614AnHudbEYwgXzqJuOqavpH7pd2vGjQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hypno%3A8303%22%2C%22btk%22%3A%224pQbJoJL%2BWg614AnHudbEYwgXzqJuOqavpH7pd2vGjQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221583cb56-de38-42f3-b091-2f10355ba825%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MelodyRoseUK -https://manifest-server.naiadsystems.com/live/37b9308a-160e-40ea-aa28-c2c60a2f4e30.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=ekans%3A8303&btk=%2FOL6QOzNDc89aa4kdjXkAOgT6agz00hBCA9GE8e1Jpo&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ekans%3A8303%22%2C%22btk%22%3A%22%2FOL6QOzNDc89aa4kdjXkAOgT6agz00hBCA9GE8e1Jpo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2237b9308a-160e-40ea-aa28-c2c60a2f4e30%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Boredintheoffice -https://manifest-server.naiadsystems.com/live/45a655e8-5033-44e7-9800-1c7875fc1569.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=4TyOHmQ8u13jcasynJ6EhxDiJiHAI0tTYTdaAu2VWqc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%224TyOHmQ8u13jcasynJ6EhxDiJiHAI0tTYTdaAu2VWqc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2245a655e8-5033-44e7-9800-1c7875fc1569%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",BrookeMasonn -https://manifest-server.naiadsystems.com/live/b4c9ec94-1176-4771-b2a3-6e80d5d05bba.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=539CBrLV87BttjWsHxygAY7IOeBNi%2F1De%2BAxVRlIGEY&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hypno%3A8303%22%2C%22btk%22%3A%22539CBrLV87BttjWsHxygAY7IOeBNi%2F1De%2BAxVRlIGEY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b4c9ec94-1176-4771-b2a3-6e80d5d05bba%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SOBLU -https://manifest-server.naiadsystems.com/live/effddb34-0107-4076-b6ee-97c7ae355e60.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=%2FuhWry403uM9YCWwMW8NT%2BuefOQYlDpGIJCI7uXS%2Fn4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22%2FuhWry403uM9YCWwMW8NT%2BuefOQYlDpGIJCI7uXS%2Fn4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22effddb34-0107-4076-b6ee-97c7ae355e60%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RebeccaHxXx -https://manifest-server.naiadsystems.com/live/c0d3aecc-44b1-459f-84ad-e464e6e1498d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=raichu%3A8303&btk=vA5RleKE6JUlyfXnmoSOny6MW4qiV8XR26LGj%2BlAduA&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22raichu%3A8303%22%2C%22btk%22%3A%22vA5RleKE6JUlyfXnmoSOny6MW4qiV8XR26LGj%2BlAduA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22c0d3aecc-44b1-459f-84ad-e464e6e1498d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Divine_Solace -https://manifest-server.naiadsystems.com/live/cdec4795-8b1a-48a1-8fd3-e27a8a13237b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=jigglypuff%3A8303&btk=OkXhqKg77B%2FIrBotm2%2F33fW6J9Lz%2Bws45q8ZgEZYpXk&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22jigglypuff%3A8303%22%2C%22btk%22%3A%22OkXhqKg77B%2FIrBotm2%2F33fW6J9Lz%2Bws45q8ZgEZYpXk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22cdec4795-8b1a-48a1-8fd3-e27a8a13237b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Lily_Blue -https://manifest-server.naiadsystems.com/live/97dd5db6-5dd2-4071-b876-dadb8fb2dd09.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=lickitung%3A8303&btk=Rpsam3EbvChxFUoKLDTQPdnSrKh%2BdWX8M0WcwXcT6cE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22lickitung%3A8303%22%2C%22btk%22%3A%22Rpsam3EbvChxFUoKLDTQPdnSrKh%2BdWX8M0WcwXcT6cE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2297dd5db6-5dd2-4071-b876-dadb8fb2dd09%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",GoddessElexia -https://manifest-server.naiadsystems.com/live/060cf94a-77f9-4501-87e1-4cd887e071f6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=ZxDeNVTiz6b77eIgRyHE2DMUUkakDDAChl0TIgAXZWs&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22ZxDeNVTiz6b77eIgRyHE2DMUUkakDDAChl0TIgAXZWs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22060cf94a-77f9-4501-87e1-4cd887e071f6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SpicyCutieMoo -https://manifest-server.naiadsystems.com/live/0bf0dc29-3ef9-4afb-85f9-afc635bbc4b6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=ekans%3A8303&btk=cc8G7UfGo%2BMQafHCUUKYDb3Ycztq0%2BcbWzSPYmanU%2B4&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ekans%3A8303%22%2C%22btk%22%3A%22cc8G7UfGo%2BMQafHCUUKYDb3Ycztq0%2BcbWzSPYmanU%2B4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%220bf0dc29-3ef9-4afb-85f9-afc635bbc4b6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SouthBeachSizzle -https://manifest-server.naiadsystems.com/live/c6297ea8-e9ce-48bb-8057-558675bdf4a6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=aIX%2FuLR1UMrmH9ydfOlt%2B8GfV9afTzJsc%2BMfBoFL8yY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22aIX%2FuLR1UMrmH9ydfOlt%2B8GfV9afTzJsc%2BMfBoFL8yY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c6297ea8-e9ce-48bb-8057-558675bdf4a6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LLspinz -https://manifest-server.naiadsystems.com/live/5ba03a07-5835-492f-b666-ab9daa2cd6a1.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=XPZuzQRbjQnu0Zrjm69P83uWrnyO17aLDz%2FQ96IgZhM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22XPZuzQRbjQnu0Zrjm69P83uWrnyO17aLDz%2FQ96IgZhM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225ba03a07-5835-492f-b666-ab9daa2cd6a1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TiffanySkyyXo -https://manifest-server.naiadsystems.com/live/6dde49ff-5bd3-4864-8295-fbcba104820b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=appaloosa%3A8303&btk=7PNyN0AbhSuD4ZLvtrI5SuVcLreb1T3zJ0bpPZmqoyg&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22appaloosa%3A8303%22%2C%22btk%22%3A%227PNyN0AbhSuD4ZLvtrI5SuVcLreb1T3zJ0bpPZmqoyg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%226dde49ff-5bd3-4864-8295-fbcba104820b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/f8a170aa-33e9-4fc8-8d30-d51495448abe.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonlee%3A8303&btk=%2F%2FKfvp2nykoFuqgqv1JJ2VsoyvodqtF7BC7YQhD76Jo&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonlee%3A8303%22%2C%22btk%22%3A%22%2F%2FKfvp2nykoFuqgqv1JJ2VsoyvodqtF7BC7YQhD76Jo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f8a170aa-33e9-4fc8-8d30-d51495448abe%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",JadeGrantt +https://manifest-server.naiadsystems.com/live/310b9142-861e-4a3e-9f1a-14124d7860da.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=sUBEezDGNw8Ebe4%2BhxsuIkr2zQhwaZ0VOoGBGwryt0k&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22sUBEezDGNw8Ebe4%2BhxsuIkr2zQhwaZ0VOoGBGwryt0k%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22310b9142-861e-4a3e-9f1a-14124d7860da%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Adamialni69 +https://manifest-server.naiadsystems.com/live/54c1e4cf-5784-49df-9d4b-6a71487ba74c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=Ksi9aRQ%2BpH8jRR9k5YZiRxgQNygk6nJAwQpo9XU7gfE&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22Ksi9aRQ%2BpH8jRR9k5YZiRxgQNygk6nJAwQpo9XU7gfE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2254c1e4cf-5784-49df-9d4b-6a71487ba74c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",ZaraHartUK +https://manifest-server.naiadsystems.com/live/7fc1c83f-efec-4441-9e80-1b4c9df97c4f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=appaloosa%3A8303&btk=Ysfi8jxMgSXutY2gVuR5dV31mSfTk%2FPCGqyZq2n7dtQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22appaloosa%3A8303%22%2C%22btk%22%3A%22Ysfi8jxMgSXutY2gVuR5dV31mSfTk%2FPCGqyZq2n7dtQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227fc1c83f-efec-4441-9e80-1b4c9df97c4f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",GingerXSpiceUK +https://manifest-server.naiadsystems.com/live/b19aff59-54ca-4d6c-bdf9-b13a1f03baf5.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=rhyhorn%3A8303&btk=Au0B86nhPXGXCxs1Zeq9sWrVrMCoUJoeDOTtqD%2FAGZc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rhyhorn%3A8303%22%2C%22btk%22%3A%22Au0B86nhPXGXCxs1Zeq9sWrVrMCoUJoeDOTtqD%2FAGZc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b19aff59-54ca-4d6c-bdf9-b13a1f03baf5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SYIA +https://manifest-server.naiadsystems.com/live/eb23e2cb-1714-4d19-88bc-fb0dd248b2a4.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weezing%3A8303&btk=IT2sXqCcQRU6wJD69TdkJJAp%2FYvAJcYq6TPyfjUFmlA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weezing%3A8303%22%2C%22btk%22%3A%22IT2sXqCcQRU6wJD69TdkJJAp%2FYvAJcYq6TPyfjUFmlA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22eb23e2cb-1714-4d19-88bc-fb0dd248b2a4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Kutekittenheels +https://manifest-server.naiadsystems.com/live/bb56ec4d-f27c-4169-b295-8d8e2bc9f52c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=rhydon%3A8303&btk=vOO1oMtTjBk1bl7SzHdPeb2g6B%2BbZFTTmUZh3K47l7M&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rhydon%3A8303%22%2C%22btk%22%3A%22vOO1oMtTjBk1bl7SzHdPeb2g6B%2BbZFTTmUZh3K47l7M%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bb56ec4d-f27c-4169-b295-8d8e2bc9f52c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SimoneSimmons +https://manifest-server.naiadsystems.com/live/6a70eff5-47af-44db-962b-86cfbfcd0c60.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=eMJhrzUPtUfShE%2BpB4UzuV0QVxtgUFArPZ3ZXaXzx0g&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22eMJhrzUPtUfShE%2BpB4UzuV0QVxtgUFArPZ3ZXaXzx0g%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226a70eff5-47af-44db-962b-86cfbfcd0c60%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Divinemilf67 +https://manifest-server.naiadsystems.com/live/1a639137-6c01-4ac1-b873-62c58f0d1080.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=nazgul%3A8303&btk=nUinQsFxgVY%2Fp6Mo8rzp3zmVJHU62Od04TKR6AygVNA&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22nazgul%3A8303%22%2C%22btk%22%3A%22nUinQsFxgVY%2Fp6Mo8rzp3zmVJHU62Od04TKR6AygVNA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221a639137-6c01-4ac1-b873-62c58f0d1080%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",BackSeatSusan +https://manifest-server.naiadsystems.com/live/2f006920-effd-4cd1-9262-818889b0e445.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=3TcYP6wcqAVisotxF30QE7PBqK70%2Bs7SiMzSYT0p2Lk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%223TcYP6wcqAVisotxF30QE7PBqK70%2Bs7SiMzSYT0p2Lk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222f006920-effd-4cd1-9262-818889b0e445%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",GoddessLaVitaBella +https://manifest-server.naiadsystems.com/live/3b09c2af-673f-47eb-9b37-93a24b80bed6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=o35rigcmW9wHgZn1E3rfPm%2Ba9nI50u9KnzhO%2B3GC19c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%22o35rigcmW9wHgZn1E3rfPm%2Ba9nI50u9KnzhO%2B3GC19c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%223b09c2af-673f-47eb-9b37-93a24b80bed6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Honeybum88 +https://manifest-server.naiadsystems.com/live/89d1dae0-c41a-4ce0-a405-0da14cf37124.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=tangela%3A8303&btk=jUiympJlx6jsNSz4kjj7XZd5GEG%2BDLSc2pdo3BBzRNo&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tangela%3A8303%22%2C%22btk%22%3A%22jUiympJlx6jsNSz4kjj7XZd5GEG%2BDLSc2pdo3BBzRNo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2289d1dae0-c41a-4ce0-a405-0da14cf37124%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SERENNAWALACE +https://manifest-server.naiadsystems.com/live/adb79c54-aa6c-4c32-964c-92b8191d7001.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=qPN9%2FNTAFSjRaDqigCSENdlNpD4yaLxX4WZoH1ZEtAg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22qPN9%2FNTAFSjRaDqigCSENdlNpD4yaLxX4WZoH1ZEtAg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22adb79c54-aa6c-4c32-964c-92b8191d7001%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",KatieSkyMadison +https://manifest-server.naiadsystems.com/live/8805d54a-1cf1-4ba7-b8ca-1147f91e56b0.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=clefable%3A8303&btk=r2qzkLmfmC1EeM22XmH0gOAfy5x%2FWbQH5rHU4EigCC8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22clefable%3A8303%22%2C%22btk%22%3A%22r2qzkLmfmC1EeM22XmH0gOAfy5x%2FWbQH5rHU4EigCC8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228805d54a-1cf1-4ba7-b8ca-1147f91e56b0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TemptressFox +https://manifest-server.naiadsystems.com/live/684dbf95-8c2e-4fc4-94ee-ca7ad3efb518.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=i16kzT%2B%2FwUHPHZHrri2tlpSijZx8Zp7AMzBzP3ZWAl8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22i16kzT%2B%2FwUHPHZHrri2tlpSijZx8Zp7AMzBzP3ZWAl8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22684dbf95-8c2e-4fc4-94ee-ca7ad3efb518%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MillieRosexx +https://manifest-server.naiadsystems.com/live/a105bb3b-86a0-4ae4-bd7e-d434fd56c83c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=CI6E479WaN3yaQTq676%2FncRzuvR%2BEILRDxO1aNq3EFE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hypno%3A8303%22%2C%22btk%22%3A%22CI6E479WaN3yaQTq676%2FncRzuvR%2BEILRDxO1aNq3EFE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a105bb3b-86a0-4ae4-bd7e-d434fd56c83c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MindBender +https://manifest-server.naiadsystems.com/live/9cc41296-f508-49b2-a20f-5c6388294444.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=rqhHyEBp5TH7%2BEOEvi0ynd9cfXXUlirvUjdzz4wCCkY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22rqhHyEBp5TH7%2BEOEvi0ynd9cfXXUlirvUjdzz4wCCkY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229cc41296-f508-49b2-a20f-5c6388294444%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",EviilAngel +https://manifest-server.naiadsystems.com/live/634d3dd2-310a-4821-afcc-e9cc25bb9d82.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=n41m0r5KboKuOMalPud2dr9cOdig4mz0S30YXRuHKsI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machoke%3A8303%22%2C%22btk%22%3A%22n41m0r5KboKuOMalPud2dr9cOdig4mz0S30YXRuHKsI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22634d3dd2-310a-4821-afcc-e9cc25bb9d82%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MayaRoseXXX +https://manifest-server.naiadsystems.com/live/b9796b1e-0b76-4da4-b2be-3d0057500556.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=xVSpxTO83Pt9InnKw7THSU%2BNuXjvrMEMqCRfcBl3758&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22xVSpxTO83Pt9InnKw7THSU%2BNuXjvrMEMqCRfcBl3758%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b9796b1e-0b76-4da4-b2be-3d0057500556%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",IzzyOnCam +https://manifest-server.naiadsystems.com/live/7d6afccc-b867-4549-ace7-a6dd80e71edd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=CoMVZyMWG2HC50tt%2BZ8TupTqWNvIh3VSFCGYfZ0RmYg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22CoMVZyMWG2HC50tt%2BZ8TupTqWNvIh3VSFCGYfZ0RmYg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227d6afccc-b867-4549-ace7-a6dd80e71edd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TastyMorgan -https://manifest-server.naiadsystems.com/live/5259659f-4beb-4cbc-a9e9-1271a19f4967.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=arbok%3A8323&btk=WzmDSuuTrkVzUxt%2BhrBGA0xiZyKSdtQsYtvZMJBguYg&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arbok%3A8323%22%2C%22btk%22%3A%22WzmDSuuTrkVzUxt%2BhrBGA0xiZyKSdtQsYtvZMJBguYg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%225259659f-4beb-4cbc-a9e9-1271a19f4967%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",alessandrabicet -https://manifest-server.naiadsystems.com/live/cb932cf4-8b8f-4a4d-8069-bc2105bff2ca.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=yPx5sEnj3L08UsYw0VSbVsGiJYKHkouNjLIHbBeYuWE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hypno%3A8303%22%2C%22btk%22%3A%22yPx5sEnj3L08UsYw0VSbVsGiJYKHkouNjLIHbBeYuWE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22cb932cf4-8b8f-4a4d-8069-bc2105bff2ca%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",EmilyDuque -https://manifest-server.naiadsystems.com/live/3da366c3-e38d-4715-8d13-e9909b2f222b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=yAPSFK3BmRbAdTcvUCG%2BJb5ga6CuD8DyTvOMsGQzTdk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kadabra%3A8303%22%2C%22btk%22%3A%22yAPSFK3BmRbAdTcvUCG%2BJb5ga6CuD8DyTvOMsGQzTdk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%223da366c3-e38d-4715-8d13-e9909b2f222b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Lindy18 -https://manifest-server.naiadsystems.com/live/3c4e48c1-4bef-42e7-bdec-e30adb6ae40d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=oEaejVyob%2BmVNqcpWxgrFlZPh6Dp2fKHTlkqHADgCEA&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-4.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22oEaejVyob%2BmVNqcpWxgrFlZPh6Dp2fKHTlkqHADgCEA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%223c4e48c1-4bef-42e7-bdec-e30adb6ae40d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LittleMissSweetLips -https://manifest-server.naiadsystems.com/live/458321bf-9c8c-488d-acf4-62d85f9aa691.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=wAvpSNu%2B%2FF1eCYVf71D7bdmxXmzM%2BPemUe6HZywOQ6s&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22wAvpSNu%2B%2FF1eCYVf71D7bdmxXmzM%2BPemUe6HZywOQ6s%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22458321bf-9c8c-488d-acf4-62d85f9aa691%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TaniaKatts -https://manifest-server.naiadsystems.com/live/5d1cae60-9b64-4403-9162-190dd171ccdb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=winddolphin%3A8303&btk=RAv8O4AdLAYH0hE183N7%2BmKnM%2FHmyYDrz%2Fw2TJpR%2BI8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22winddolphin%3A8303%22%2C%22btk%22%3A%22RAv8O4AdLAYH0hE183N7%2BmKnM%2FHmyYDrz%2Fw2TJpR%2BI8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225d1cae60-9b64-4403-9162-190dd171ccdb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",ChanelKnight -https://manifest-server.naiadsystems.com/live/0841c202-c1de-474e-80ff-962091027909.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=%2FQWfp1PUUwxMJ%2FAuIGcDpaEZ10EA6BB%2BkvAu4KSqYSI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%22%2FQWfp1PUUwxMJ%2FAuIGcDpaEZ10EA6BB%2BkvAu4KSqYSI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220841c202-c1de-474e-80ff-962091027909%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",KittyVonSweet -https://manifest-server.naiadsystems.com/live/92c55d5d-7424-46a8-965e-f46e3decd47b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=fearow%3A8303&btk=diFrhnIt%2BkQu4tdNhenUCTlEddEotv4xE02JHv%2FEhBY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22fearow%3A8303%22%2C%22btk%22%3A%22diFrhnIt%2BkQu4tdNhenUCTlEddEotv4xE02JHv%2FEhBY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2292c55d5d-7424-46a8-965e-f46e3decd47b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LittleRedBunny -https://manifest-server.naiadsystems.com/live/c9e5ae9c-4c48-4ec8-96d2-a8a5ee47b30c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=hSbhct0doFCK7vmoKAe2Zfu7fArDFFXbnSTdWRiwceg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22hSbhct0doFCK7vmoKAe2Zfu7fArDFFXbnSTdWRiwceg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c9e5ae9c-4c48-4ec8-96d2-a8a5ee47b30c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RainbowLov21 -https://manifest-server.naiadsystems.com/live/0d8cca74-ae3a-439d-ba9e-fad8ee335cbd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=fireweasel%3A8303&btk=k%2BQalvSD8gq8r9syfAj0nMSO3e66hZrw0bNDfRjlTOk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22fireweasel%3A8303%22%2C%22btk%22%3A%22k%2BQalvSD8gq8r9syfAj0nMSO3e66hZrw0bNDfRjlTOk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220d8cca74-ae3a-439d-ba9e-fad8ee335cbd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Zelie108 -https://manifest-server.naiadsystems.com/live/a796b99f-9f93-44d4-bafe-c6686a2c9f12.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggcute%3A8303&btk=0QsUvrm0h3PI0kFv2EaMQTinpBVKKXA9tAF9%2F%2BL5wbw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggcute%3A8303%22%2C%22btk%22%3A%220QsUvrm0h3PI0kFv2EaMQTinpBVKKXA9tAF9%2F%2BL5wbw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a796b99f-9f93-44d4-bafe-c6686a2c9f12%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",BlancheLuxee -https://manifest-server.naiadsystems.com/live/20210fef-da69-47b9-ba0a-b195c93c4fc6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=raichu%3A8303&btk=GnpAvssZU%2F%2FKWVWnVeaFfRqkd%2BCb8l5P11SOi0wbYbE&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22raichu%3A8303%22%2C%22btk%22%3A%22GnpAvssZU%2F%2FKWVWnVeaFfRqkd%2BCb8l5P11SOi0wbYbE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2220210fef-da69-47b9-ba0a-b195c93c4fc6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",EmmaEmberr -https://manifest-server.naiadsystems.com/live/3c1aaa3d-b7b4-4557-992e-9d235a64d04c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=UKILIQVhFn9pwYWZXxEvGXSoNaG2lSueiIVaGUwtA7E&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22UKILIQVhFn9pwYWZXxEvGXSoNaG2lSueiIVaGUwtA7E%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%223c1aaa3d-b7b4-4557-992e-9d235a64d04c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TinaClaytoon -https://manifest-server.naiadsystems.com/live/8c87db5d-1b26-442d-9d69-fa6d942a8adf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=g7GAy2nGGMzHasgfukkaDF28vCsy4Ca%2FHaNLjtWKICY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22g7GAy2nGGMzHasgfukkaDF28vCsy4Ca%2FHaNLjtWKICY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228c87db5d-1b26-442d-9d69-fa6d942a8adf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SeductiveCelinny -https://manifest-server.naiadsystems.com/live/8057e85d-33ec-47f0-8681-a045f562260e.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=zUDf5Q1FK1TvK2A8RUZLdHvP3UNVFkxY1DzAdsZjSJY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22zUDf5Q1FK1TvK2A8RUZLdHvP3UNVFkxY1DzAdsZjSJY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228057e85d-33ec-47f0-8681-a045f562260e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Leonoraaa -https://manifest-server.naiadsystems.com/live/91ca0363-9eb2-4764-b880-b72553dd0374.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=metapod%3A8303&btk=eyKb5JF8x7fcqF%2FoqKI6v5FmWNtPoKUTa6zMeB3HwqM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22metapod%3A8303%22%2C%22btk%22%3A%22eyKb5JF8x7fcqF%2FoqKI6v5FmWNtPoKUTa6zMeB3HwqM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2291ca0363-9eb2-4764-b880-b72553dd0374%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",DannaClayton -https://manifest-server.naiadsystems.com/live/313cf0e6-3f41-413e-95f0-565b0dad2c50.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=icedolphin%3A8303&btk=OBjGo2XYtrT8W6GSxYjKONi0gBzloFrtsDUBVtbbFb0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22icedolphin%3A8303%22%2C%22btk%22%3A%22OBjGo2XYtrT8W6GSxYjKONi0gBzloFrtsDUBVtbbFb0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22313cf0e6-3f41-413e-95f0-565b0dad2c50%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SamyBlair -https://manifest-server.naiadsystems.com/live/54e0ec37-02db-40cc-bfdb-3f10b14e1a7c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=u8xPJpd4JbvwrY7HLwWmrEUF%2B7DZOU0IazpotFxWKoQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%22u8xPJpd4JbvwrY7HLwWmrEUF%2B7DZOU0IazpotFxWKoQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2254e0ec37-02db-40cc-bfdb-3f10b14e1a7c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Sergio36030 -https://edge-cdn1.streamparty.online/LiveApp/streams/user6a5e46ce03db5_blur/jZBa9SA442fZWmXV15056847474955009_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Sportsman12345 -https://manifest-server.naiadsystems.com/live/a6207833-c6e3-4cd7-b0e4-6f346e75b3cf.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=lickitung%3A8303&btk=qFBgfi5ax8TMbDOQ3mXgF2h2CrwjBDqjiYttosvRP6Y&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22lickitung%3A8303%22%2C%22btk%22%3A%22qFBgfi5ax8TMbDOQ3mXgF2h2CrwjBDqjiYttosvRP6Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a6207833-c6e3-4cd7-b0e4-6f346e75b3cf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DavisLewis -https://manifest-server.naiadsystems.com/live/ead499ba-325f-4156-ba75-cb7138ed0b74.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=bdTCc5tApmDniXu0YaG2idZzudmN75PeYSmz2ovRBxI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%22bdTCc5tApmDniXu0YaG2idZzudmN75PeYSmz2ovRBxI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ead499ba-325f-4156-ba75-cb7138ed0b74%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",FillTheWallet -https://manifest-server.naiadsystems.com/live/28f283c8-b567-446d-89dc-185c0e63606f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=FSl6rCEZruZZ2ZEcqiaPow8kSeC0zg2NkXm%2BWVgX8Jg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22FSl6rCEZruZZ2ZEcqiaPow8kSeC0zg2NkXm%2BWVgX8Jg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2228f283c8-b567-446d-89dc-185c0e63606f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",NaughtyNate98 -https://manifest-server.naiadsystems.com/live/71e9d24c-49f7-414b-b68c-d5b00119cccc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=36%2F639PUzIETQDMbuSiX263BNDiEMVazw6455n%2BAit4&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%2236%2F639PUzIETQDMbuSiX263BNDiEMVazw6455n%2BAit4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2271e9d24c-49f7-414b-b68c-d5b00119cccc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",BCgonewild -https://manifest-server.naiadsystems.com/live/ba822d1d-85fc-4506-909c-8217e16f2e81.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=NsJBg1mi4FpSNuHGHXiSmj9wtJgPLHwF01mOV7lphO8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22NsJBg1mi4FpSNuHGHXiSmj9wtJgPLHwF01mOV7lphO8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ba822d1d-85fc-4506-909c-8217e16f2e81%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Tattooed_StepDad -https://manifest-server.naiadsystems.com/live/dd966800-bda7-4c1f-a282-f856c5e9acf6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=yvdNaoNtNcNDRtWm4EwzRNjamKpxzD%2FD1UlKX%2BZcisE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22yvdNaoNtNcNDRtWm4EwzRNjamKpxzD%2FD1UlKX%2BZcisE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22dd966800-bda7-4c1f-a282-f856c5e9acf6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",theguycock -https://manifest-server.naiadsystems.com/live/4690bad5-7003-468e-9d23-e29d379f4d04.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=edf0AGz2VqBQw8JJsygoG0O%2F9UtXQUOrDMGLb16THGc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22graveler%3A8303%22%2C%22btk%22%3A%22edf0AGz2VqBQw8JJsygoG0O%2F9UtXQUOrDMGLb16THGc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224690bad5-7003-468e-9d23-e29d379f4d04%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Jake_Muller -https://manifest-server.naiadsystems.com/live/51d42d08-e101-4268-8c9c-c016ecc2c771.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=QdHtk3Z6u%2BSLSe9wFeflURcn4W1j8EoTlAM5ZjW3dPQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-4.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22QdHtk3Z6u%2BSLSe9wFeflURcn4W1j8EoTlAM5ZjW3dPQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2251d42d08-e101-4268-8c9c-c016ecc2c771%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Graysonn_Owen -https://manifest-server.naiadsystems.com/live/21853a9b-63d6-4d07-b708-7f5610ea9dde.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=qsnCYWgMt%2F1UzV2MGwibNjsunBxSzRUpXXK0lBla0qk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22qsnCYWgMt%2F1UzV2MGwibNjsunBxSzRUpXXK0lBla0qk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2221853a9b-63d6-4d07-b708-7f5610ea9dde%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",TiagoBlaze -https://manifest-server.naiadsystems.com/live/13ebb2c6-bbd6-4348-8911-f45b70948e21.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golduck%3A8303&btk=36S9A2SvEVliS6HSxnUFODkVgo8IJb%2FPKq22Vbkd3ps&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golduck%3A8303%22%2C%22btk%22%3A%2236S9A2SvEVliS6HSxnUFODkVgo8IJb%2FPKq22Vbkd3ps%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2213ebb2c6-bbd6-4348-8911-f45b70948e21%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Dustin_Sonne -https://manifest-server.naiadsystems.com/live/2603fc82-007c-4320-be8e-c228720734a3.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=JelazmaID%2BI%2BgmHFvi4ulJvjj7RtaXfKtFL2wQVgFkI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22psyduck%3A8303%22%2C%22btk%22%3A%22JelazmaID%2BI%2BgmHFvi4ulJvjj7RtaXfKtFL2wQVgFkI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222603fc82-007c-4320-be8e-c228720734a3%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MensUltimate -https://manifest-server.naiadsystems.com/live/e2fe269c-07de-4177-97f3-5cfcae034e46.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=WW9XdkZtFc%2FKx0CVeRgZBpdPiD%2F1XQXBWMSUM7xfQUk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22WW9XdkZtFc%2FKx0CVeRgZBpdPiD%2F1XQXBWMSUM7xfQUk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e2fe269c-07de-4177-97f3-5cfcae034e46%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",EidenAllenx18 -https://manifest-server.naiadsystems.com/live/e2ceccd2-a139-4633-8f4a-790c4d97e29d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=5SIXIqpWRsUdlLWHN7vcn77ShGS%2FE44Xh1hrKFEeVDs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%225SIXIqpWRsUdlLWHN7vcn77ShGS%2FE44Xh1hrKFEeVDs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e2ceccd2-a139-4633-8f4a-790c4d97e29d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DickeyHogstuffin -https://manifest-server.naiadsystems.com/live/bfcdd81d-282b-4e9a-9626-2ac3d0e45fe4.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=leshy%3A8303&btk=hbC9hS%2FUFJWn7P%2BkI7TSQKA6e2EbgoRNhNTxBXRGH1Q&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22leshy%3A8303%22%2C%22btk%22%3A%22hbC9hS%2FUFJWn7P%2BkI7TSQKA6e2EbgoRNhNTxBXRGH1Q%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bfcdd81d-282b-4e9a-9626-2ac3d0e45fe4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Mecchaude -https://manifest-server.naiadsystems.com/live/694ab013-7cdd-460b-baf5-17686df13d58.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=d1cHI44ZKHA43uOPyOFSmb0Mlwj3uL38OFfbA7pvQKo&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%22d1cHI44ZKHA43uOPyOFSmb0Mlwj3uL38OFfbA7pvQKo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22694ab013-7cdd-460b-baf5-17686df13d58%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LordDominik -https://manifest-server.naiadsystems.com/live/596d4433-a169-4640-8565-e01804632e44.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=JkaTRb%2Bn7Eq1hXZWZmhQRcPHBe0pse4I4gEP2DStMus&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22meowth%3A8303%22%2C%22btk%22%3A%22JkaTRb%2Bn7Eq1hXZWZmhQRcPHBe0pse4I4gEP2DStMus%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22596d4433-a169-4640-8565-e01804632e44%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MatewHottxxx -https://manifest-server.naiadsystems.com/live/2d5ed261-e8cc-4e85-8d31-b41a25114b87.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=exuVTNBofF2h38fVjspK1hUYBULbFSngWKEmbFak0RQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22exuVTNBofF2h38fVjspK1hUYBULbFSngWKEmbFak0RQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222d5ed261-e8cc-4e85-8d31-b41a25114b87%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AnndySex -https://manifest-server.naiadsystems.com/live/8ca265f2-8f74-4da9-8d5f-10da4732423e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=eGXxyXqgeD4cr5zEw3%2FyH0Bxwv%2B%2BYwXy%2FgH2dWr77NI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22eGXxyXqgeD4cr5zEw3%2FyH0Bxwv%2B%2BYwXy%2FgH2dWr77NI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228ca265f2-8f74-4da9-8d5f-10da4732423e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",losomo1312 -https://manifest-server.naiadsystems.com/live/d712647b-ca5e-4c66-82f3-49a363e3043f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=%2BuQ%2FPCgpJynUXOogphoT%2F4sZC5xLyrWeW%2BAA6kXVHYM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22%2BuQ%2FPCgpJynUXOogphoT%2F4sZC5xLyrWeW%2BAA6kXVHYM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d712647b-ca5e-4c66-82f3-49a363e3043f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",jayyblessed -https://manifest-server.naiadsystems.com/live/544ed660-0bad-4447-b1fb-bf50b65e5b16.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=DDQKZ0%2BaytdyX0kKBGe%2FKIK9DBmcNRZeCMSKuiLRudM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arcanine%3A8303%22%2C%22btk%22%3A%22DDQKZ0%2BaytdyX0kKBGe%2FKIK9DBmcNRZeCMSKuiLRudM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22544ed660-0bad-4447-b1fb-bf50b65e5b16%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",ZekeFrost -https://manifest-server.naiadsystems.com/live/1f1e2cea-e86e-428d-b359-391061bc6694.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=glaucous%3A8303&btk=ETvdgctJJP2kmPXAS3oIB55DOvVN5YVVk%2B8bXcQKugI&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22glaucous%3A8303%22%2C%22btk%22%3A%22ETvdgctJJP2kmPXAS3oIB55DOvVN5YVVk%2B8bXcQKugI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221f1e2cea-e86e-428d-b359-391061bc6694%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",ItalianBear78 -https://manifest-server.naiadsystems.com/live/e4e1d115-9833-4e2d-8b90-0373cf66d9f7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=rhydon%3A8303&btk=l251ebXwI9%2FWtGCALBkOl9NvMGTTmlmXDv7IfOpXKA0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rhydon%3A8303%22%2C%22btk%22%3A%22l251ebXwI9%2FWtGCALBkOl9NvMGTTmlmXDv7IfOpXKA0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e4e1d115-9833-4e2d-8b90-0373cf66d9f7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Darkboss_25 -https://manifest-server.naiadsystems.com/live/81a70352-34ef-43ce-ac2a-e0be8773512b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8303&btk=iTpEAudsfCBCmOfNOTe1mdl40VMIcAg3Y88AJAlZIwM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22magneton%3A8303%22%2C%22btk%22%3A%22iTpEAudsfCBCmOfNOTe1mdl40VMIcAg3Y88AJAlZIwM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2281a70352-34ef-43ce-ac2a-e0be8773512b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JacobKnight -https://manifest-server.naiadsystems.com/live/67fd0ccc-9439-4e3b-bac1-62b2d86e3498.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=pDZLVABnpP9gUvBuS5rCrLOzq8tjzVVcpMuvsqW59Hw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22pDZLVABnpP9gUvBuS5rCrLOzq8tjzVVcpMuvsqW59Hw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2267fd0ccc-9439-4e3b-bac1-62b2d86e3498%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",mmj19762 -https://manifest-server.naiadsystems.com/live/4847d46a-37ad-41cc-a2a0-a9104611cd54.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=flkQXbKYPeDWC4ZCXj1qkGuE0Q7uxb6QiyehTx6ZMy8&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22flkQXbKYPeDWC4ZCXj1qkGuE0Q7uxb6QiyehTx6ZMy8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%224847d46a-37ad-41cc-a2a0-a9104611cd54%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Demonsalvaatore -https://manifest-server.naiadsystems.com/live/db4eeba4-6f62-4b61-aa20-d4e223b4e1cd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=icedolphin%3A8303&btk=xUxuRewM%2FCtJs%2FYXSoQYMpzx9qH%2BC0RwW%2FwmZbuyu7M&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22icedolphin%3A8303%22%2C%22btk%22%3A%22xUxuRewM%2FCtJs%2FYXSoQYMpzx9qH%2BC0RwW%2FwmZbuyu7M%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22db4eeba4-6f62-4b61-aa20-d4e223b4e1cd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",SamuelMatthew -https://manifest-server.naiadsystems.com/live/4304d4de-0faf-4bad-b7bb-8738875b17f5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=%2Bv4RBeU9%2FKqs6rKoBEdsHd9HNEsO%2FLdjwGxMGPPgUTU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22%2Bv4RBeU9%2FKqs6rKoBEdsHd9HNEsO%2FLdjwGxMGPPgUTU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224304d4de-0faf-4bad-b7bb-8738875b17f5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Feniixa -https://manifest-server.naiadsystems.com/live/a887bc97-29e0-482e-b888-b34baa02194a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=%2BqmLNNB1s8Gb7jZ9IQmxVVGgDvZykqqH9lbkfunbe10&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22%2BqmLNNB1s8Gb7jZ9IQmxVVGgDvZykqqH9lbkfunbe10%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a887bc97-29e0-482e-b888-b34baa02194a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/a61b90e5-e71e-4e10-a51c-d3a7def5ea0d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandshrew%3A8303&btk=2uW71CMmtjIGLnaB4dzQREhkmIA4znyvj4RoFRBSIVA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandshrew%3A8303%22%2C%22btk%22%3A%222uW71CMmtjIGLnaB4dzQREhkmIA4znyvj4RoFRBSIVA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a61b90e5-e71e-4e10-a51c-d3a7def5ea0d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LenaMontes +https://manifest-server.naiadsystems.com/live/b7e9dd09-27a1-4383-9604-1ac9908aac0d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=KnIxoegTUf%2BKgcRVHwLGSpJFSBdOI5EDQivNdGvjqcQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22KnIxoegTUf%2BKgcRVHwLGSpJFSBdOI5EDQivNdGvjqcQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b7e9dd09-27a1-4383-9604-1ac9908aac0d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",yoximanuelprime +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a57f1e123ba4/IGuYfYbp8xOSySG61484395167161156_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AntonioWest +https://manifest-server.naiadsystems.com/live/68d61fc5-e4e5-4637-bfe5-06727c2321ad.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=Tuo%2B3viLsh26aAErOecwF0J%2Fw5sm68V%2BbRD1AUronKQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22Tuo%2B3viLsh26aAErOecwF0J%2Fw5sm68V%2BbRD1AUronKQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2268d61fc5-e4e5-4637-bfe5-06727c2321ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MisterDilf +https://manifest-server.naiadsystems.com/live/b3db7dbd-6081-4d80-85a2-49fe8702c61e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=KXVquPWh01Jg8gt6TTHfeN4SPtufidVZry0RMy5yyVs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kadabra%3A8303%22%2C%22btk%22%3A%22KXVquPWh01Jg8gt6TTHfeN4SPtufidVZry0RMy5yyVs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b3db7dbd-6081-4d80-85a2-49fe8702c61e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",cris_hotsex +https://manifest-server.naiadsystems.com/live/de60a8e2-29c3-4911-bb5c-d7753681e852.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=0sk3qs2jiozMRNQzltKBaoxx7qYai5BAWkTkXv131Tg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%220sk3qs2jiozMRNQzltKBaoxx7qYai5BAWkTkXv131Tg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22de60a8e2-29c3-4911-bb5c-d7753681e852%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LeoCooper +https://manifest-server.naiadsystems.com/live/1b14719a-6aa7-4528-a640-eb0fab6f19e6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=N92Mmkxbch9WNk5DviBANvfOecxg3j%2BTqDjIxpTSgeE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machoke%3A8303%22%2C%22btk%22%3A%22N92Mmkxbch9WNk5DviBANvfOecxg3j%2BTqDjIxpTSgeE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221b14719a-6aa7-4528-a640-eb0fab6f19e6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Jorge_Perezz +https://manifest-server.naiadsystems.com/live/3bcce0e3-e569-4b28-9db4-4750d38c206b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=47NdKiHyLxNVCsuHOC%2FB8FJpmESPSvyp5B%2Bnm9qsnEc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%2247NdKiHyLxNVCsuHOC%2FB8FJpmESPSvyp5B%2Bnm9qsnEc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%223bcce0e3-e569-4b28-9db4-4750d38c206b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MaicolParker0 +https://manifest-server.naiadsystems.com/live/33ead91a-d379-4410-a628-152fa1de05f7.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=p1KTWK7RokqfkCFA4KSYm%2BoSCjwBcwLHw%2BbSpkv%2Fo5M&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22p1KTWK7RokqfkCFA4KSYm%2BoSCjwBcwLHw%2BbSpkv%2Fo5M%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2233ead91a-d379-4410-a628-152fa1de05f7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Tonyyprice18 +https://manifest-server.naiadsystems.com/live/003d619c-68c3-497d-93b2-a0b8dffb1991.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=q58gLqMsAI3QAFSHfMkDF8DrnSeuwtAIrMv1iHA2wps&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22graveler%3A8303%22%2C%22btk%22%3A%22q58gLqMsAI3QAFSHfMkDF8DrnSeuwtAIrMv1iHA2wps%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22003d619c-68c3-497d-93b2-a0b8dffb1991%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JHOVIPAIN +https://manifest-server.naiadsystems.com/live/938740ad-8742-469c-b701-25209dd0fbbf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=6c28fXqRJvNruQ6rs3soj2Ww7n3UpoD3LRm5rkayqts&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22psyduck%3A8303%22%2C%22btk%22%3A%226c28fXqRJvNruQ6rs3soj2Ww7n3UpoD3LRm5rkayqts%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22938740ad-8742-469c-b701-25209dd0fbbf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Kane24 +https://manifest-server.naiadsystems.com/live/bf17652e-dee7-4dde-aadc-1e41c7488c03.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandshrew%3A8303&btk=gVyO%2FYS4s5IX%2F6lQr6KCty9z4hwFljmLOtMgVqtxOps&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandshrew%3A8303%22%2C%22btk%22%3A%22gVyO%2FYS4s5IX%2F6lQr6KCty9z4hwFljmLOtMgVqtxOps%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bf17652e-dee7-4dde-aadc-1e41c7488c03%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AmberMonroebg +https://manifest-server.naiadsystems.com/live/10568760-794a-4a99-bfd0-4405e5f9d177.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=earthturtle%3A8303&btk=v7MbPeyI33jOhALr86mxSWKNHMJYRDwk5PUUQG8dbg8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22earthturtle%3A8303%22%2C%22btk%22%3A%22v7MbPeyI33jOhALr86mxSWKNHMJYRDwk5PUUQG8dbg8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2210568760-794a-4a99-bfd0-4405e5f9d177%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Cris_Lacobra +https://manifest-server.naiadsystems.com/live/c75b3690-a647-428e-ab0a-a9da1945a2a8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=victreebel%3A8303&btk=vUDwjEVsIvQtPFzfw097uZZ83H26rCxw6IFJfBykYVY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22victreebel%3A8303%22%2C%22btk%22%3A%22vUDwjEVsIvQtPFzfw097uZZ83H26rCxw6IFJfBykYVY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c75b3690-a647-428e-ab0a-a9da1945a2a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Drake_OS +https://manifest-server.naiadsystems.com/live/e761de64-86b9-4939-adfc-73d050be9904.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=earthturtle%3A8303&btk=ZO1%2BCvITECxaRlJE5NqOkeNSM%2Fbm8wn5ILC5tYYadnY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22earthturtle%3A8303%22%2C%22btk%22%3A%22ZO1%2BCvITECxaRlJE5NqOkeNSM%2Fbm8wn5ILC5tYYadnY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e761de64-86b9-4939-adfc-73d050be9904%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MichelBrooks +https://manifest-server.naiadsystems.com/live/fe688fd3-abf9-422f-9b44-e6c7376ef089.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=ldvvUjgsNmOwNN83HU%2BLSchSdqgTGjsdwYhLj5t%2Fe90&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowpoke%3A8303%22%2C%22btk%22%3A%22ldvvUjgsNmOwNN83HU%2BLSchSdqgTGjsdwYhLj5t%2Fe90%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fe688fd3-abf9-422f-9b44-e6c7376ef089%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",KealRiya +https://manifest-server.naiadsystems.com/live/6e41a1e0-e701-4a7f-89ef-c843c34524f9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=Qu%2BqZAu2YjGwB9pHEBHq98con62Apq64CGEISNxDr%2BU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22meowth%3A8303%22%2C%22btk%22%3A%22Qu%2BqZAu2YjGwB9pHEBHq98con62Apq64CGEISNxDr%2BU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226e41a1e0-e701-4a7f-89ef-c843c34524f9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",James_22 +https://manifest-server.naiadsystems.com/live/80eaab44-e71a-42fd-8e22-ab512fbd1f2e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=SnfxsCJeKHNwMGfQ%2Blduf3FvU67hcYmSuoK9DfXEfkI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22SnfxsCJeKHNwMGfQ%2Blduf3FvU67hcYmSuoK9DfXEfkI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2280eaab44-e71a-42fd-8e22-ab512fbd1f2e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Moggleflop +https://manifest-server.naiadsystems.com/live/14c5097d-3107-420b-a966-8ce3ddd47b5d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=wBNgyLt5vPC2mw6zgMm717DRqtnwM%2B3pjgTYxvaa%2FOU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22wBNgyLt5vPC2mw6zgMm717DRqtnwM%2B3pjgTYxvaa%2FOU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2214c5097d-3107-420b-a966-8ce3ddd47b5d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AlphaPulseX +https://manifest-server.naiadsystems.com/live/aa3b0dc2-719e-425c-8d18-7c0de16ad0e9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=aUhu5joqbXgJoG3wmQ2bMQc4nQ2NNLWHSbj%2FC2CP27E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowking%3A8303%22%2C%22btk%22%3A%22aUhu5joqbXgJoG3wmQ2bMQc4nQ2NNLWHSbj%2FC2CP27E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22aa3b0dc2-719e-425c-8d18-7c0de16ad0e9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",CoachKarl +https://manifest-server.naiadsystems.com/live/e039892e-3279-4a01-863a-dd6ad935d1e9.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hypno%3A8303&btk=FOJ%2BKT0o78xIxyGJIi69bhHaH4hhwmvcZRizl4UKuVw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hypno%3A8303%22%2C%22btk%22%3A%22FOJ%2BKT0o78xIxyGJIi69bhHaH4hhwmvcZRizl4UKuVw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e039892e-3279-4a01-863a-dd6ad935d1e9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",jasonstromm +https://manifest-server.naiadsystems.com/live/a57739c1-f5ab-40c6-ab08-c0542e1e6953.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=rhydon%3A8303&btk=6MGJQ2Sa8tzFE0x2LzSuEa4nkrKOcnuFJSa4Tm4uans&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rhydon%3A8303%22%2C%22btk%22%3A%226MGJQ2Sa8tzFE0x2LzSuEa4nkrKOcnuFJSa4Tm4uans%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a57739c1-f5ab-40c6-ab08-c0542e1e6953%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JacobCole20 +https://manifest-server.naiadsystems.com/live/16bdff73-3213-4098-8a9a-65edc7e16b62.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=qqWKXoHbwqkMmFc3mUOOJ%2FpXmTffIpVVyYE21pkOGk4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kadabra%3A8303%22%2C%22btk%22%3A%22qqWKXoHbwqkMmFc3mUOOJ%2FpXmTffIpVVyYE21pkOGk4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2216bdff73-3213-4098-8a9a-65edc7e16b62%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",SophieFoxx18 +https://manifest-server.naiadsystems.com/live/f086c922-3eef-45c2-82d0-de64f0698d2c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=FqO4p2q7Iw39oFRtodzJBH951%2B1Om05IK0V6Ek6xsUw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22FqO4p2q7Iw39oFRtodzJBH951%2B1Om05IK0V6Ek6xsUw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f086c922-3eef-45c2-82d0-de64f0698d2c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JohnCartter +https://manifest-server.naiadsystems.com/live/0a89db93-51c7-46c4-a0e7-b14364beccba.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=gDzJi5kIRniEtOY%2FwC1fRL8Gh8JA7lmodXzLSJJ8am4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machoke%3A8303%22%2C%22btk%22%3A%22gDzJi5kIRniEtOY%2FwC1fRL8Gh8JA7lmodXzLSJJ8am4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220a89db93-51c7-46c4-a0e7-b14364beccba%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DanteRios +https://manifest-server.naiadsystems.com/live/0aa008eb-7ffd-4d8d-befa-e6014c81d4b8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=bUVfL8%2BOxSGZqRsSrPNKCHanjbpCiAn3oMtQxa6pJp8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22bUVfL8%2BOxSGZqRsSrPNKCHanjbpCiAn3oMtQxa6pJp8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220aa008eb-7ffd-4d8d-befa-e6014c81d4b8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",deividparker +https://manifest-server.naiadsystems.com/live/60d9d551-bb51-4feb-b998-a1d37caee82b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=bxOSbU3VDWGpCwkx2DdacBEHyRV92i65VtMUvviZpFM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22graveler%3A8303%22%2C%22btk%22%3A%22bxOSbU3VDWGpCwkx2DdacBEHyRV92i65VtMUvviZpFM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2260d9d551-bb51-4feb-b998-a1d37caee82b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AxelFairchaild +https://manifest-server.naiadsystems.com/live/bc565032-eeed-4d71-badb-efdca7ca006f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=9PowFc%2B%2FVZ%2FzGYzSnWhrVFe94Ew%2Fb97B6kVVvjgXO%2BY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%229PowFc%2B%2FVZ%2FzGYzSnWhrVFe94Ew%2Fb97B6kVVvjgXO%2BY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bc565032-eeed-4d71-badb-efdca7ca006f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Mr_B_Naughty -https://manifest-server.naiadsystems.com/live/f7e4360e-382f-4c92-b23b-9d1bb5c376ab.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=QmNuVXYL%2B0rpBtmoDd2Cz5PpdZTDyz%2FZWt6cS7kEkEQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%22QmNuVXYL%2B0rpBtmoDd2Cz5PpdZTDyz%2FZWt6cS7kEkEQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f7e4360e-382f-4c92-b23b-9d1bb5c376ab%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Yiyooo100 -https://manifest-server.naiadsystems.com/live/1366f7e2-7ad7-4b0b-abb7-036543b2491c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=Q4j7kmDLAFE%2BOpIBC4AQcpWQynbWRf%2BYzXKh9WPWIQs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22Q4j7kmDLAFE%2BOpIBC4AQcpWQynbWRf%2BYzXKh9WPWIQs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221366f7e2-7ad7-4b0b-abb7-036543b2491c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",ALHAN_SILVER -https://manifest-server.naiadsystems.com/live/da90fb7d-fd88-49aa-ad2d-dedaf968c4eb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machop%3A8303&btk=nZGsgYGogAotxdykvuX0C0WMPlwPIUobKUYyW2pE%2BqE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machop%3A8303%22%2C%22btk%22%3A%22nZGsgYGogAotxdykvuX0C0WMPlwPIUobKUYyW2pE%2BqE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22da90fb7d-fd88-49aa-ad2d-dedaf968c4eb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MarisMuscle -https://manifest-server.naiadsystems.com/live/88c4414d-111f-4be7-b530-516c05fcc1ae.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weezing%3A8303&btk=TPZkPw%2Fqubauc3OQcOZaQDJhq%2FPxOYXVOUItMnVnxk8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weezing%3A8303%22%2C%22btk%22%3A%22TPZkPw%2Fqubauc3OQcOZaQDJhq%2FPxOYXVOUItMnVnxk8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2288c4414d-111f-4be7-b530-516c05fcc1ae%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",RobbyShawz -https://manifest-server.naiadsystems.com/live/835cce04-013e-4f50-bf27-0b9ffb3918a2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=p09tne%2F72z%2F3si2VVPucR4kOFP%2FvGCSN%2FaZ8R%2Fe6VqE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-4.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22p09tne%2F72z%2F3si2VVPucR4kOFP%2FvGCSN%2FaZ8R%2Fe6VqE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22835cce04-013e-4f50-bf27-0b9ffb3918a2%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",BentoFox -https://manifest-server.naiadsystems.com/live/b5d700e9-ab89-4b4a-ab4f-745ae4a48ed0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=41EhYNPIookom5jjYjQmuSbh%2BHuSCz20wfA6PjnRc9E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%2241EhYNPIookom5jjYjQmuSbh%2BHuSCz20wfA6PjnRc9E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b5d700e9-ab89-4b4a-ab4f-745ae4a48ed0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",FelixRook -https://manifest-server.naiadsystems.com/live/44cecf7b-98fd-4a82-9019-c5663b3072e9.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=oQwIb6xiyl%2FyiqxJ1Z4S2JprcqlQf6NXqS7wlbUWLMQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22oQwIb6xiyl%2FyiqxJ1Z4S2JprcqlQf6NXqS7wlbUWLMQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2244cecf7b-98fd-4a82-9019-c5663b3072e9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Armandopein -https://manifest-server.naiadsystems.com/live/64587224-415c-443a-8cab-ea62c60a4c3d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=Zsojmq8gDy7wKOxx3%2FAwZZ0nCUUnurU69%2BucSG701xI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22Zsojmq8gDy7wKOxx3%2FAwZZ0nCUUnurU69%2BucSG701xI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2264587224-415c-443a-8cab-ea62c60a4c3d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/5a3b0328-f29f-49e0-9d50-937ceb319e41.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=JM0LVUE3Je2ZV3Wog9laf5KIkYz5K8sZPwhyEe3yYJE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22JM0LVUE3Je2ZV3Wog9laf5KIkYz5K8sZPwhyEe3yYJE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%225a3b0328-f29f-49e0-9d50-937ceb319e41%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Drakehottt +https://manifest-server.naiadsystems.com/live/b4922aad-2ee7-4469-983f-ceff192cdf72.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=%2B6tmWHUb6Z05xKyI8j043rzRIS8x4cOXNqJEyJ048ns&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowpoke%3A8303%22%2C%22btk%22%3A%22%2B6tmWHUb6Z05xKyI8j043rzRIS8x4cOXNqJEyJ048ns%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b4922aad-2ee7-4469-983f-ceff192cdf72%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Axel_greyy +https://manifest-server.naiadsystems.com/live/089fc416-0170-4301-829e-36094d69e7d4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=HDxTtBAZWRmYOJ5qtGg82GylPVQqh78jHEvlZqqFAZw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%22HDxTtBAZWRmYOJ5qtGg82GylPVQqh78jHEvlZqqFAZw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22089fc416-0170-4301-829e-36094d69e7d4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DominicSccott +https://manifest-server.naiadsystems.com/live/3f29bf95-de3c-4542-a13b-d6f4306eb0e5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=eE3Xtr9FXVRw2kz%2FfN1u2RlV8mI53DNzIyVe89g5cXU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22eE3Xtr9FXVRw2kz%2FfN1u2RlV8mI53DNzIyVe89g5cXU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%223f29bf95-de3c-4542-a13b-d6f4306eb0e5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",hotttoro +https://manifest-server.naiadsystems.com/live/b45c3e25-3914-4388-878f-24bf0712852d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=B7Vyx75U1ODPZKTk3fr19cxqBhbClpIptcbGjCNxjTU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22meowth%3A8303%22%2C%22btk%22%3A%22B7Vyx75U1ODPZKTk3fr19cxqBhbClpIptcbGjCNxjTU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b45c3e25-3914-4388-878f-24bf0712852d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Col_Wild +https://manifest-server.naiadsystems.com/live/b81a109b-0ed2-44a0-b152-f67dd657d225.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowbro%3A8303&btk=5wBHhc5auReKdPKFDIU1Y7ZLqGgR0ba2Y5LXn2IxezA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowbro%3A8303%22%2C%22btk%22%3A%225wBHhc5auReKdPKFDIU1Y7ZLqGgR0ba2Y5LXn2IxezA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b81a109b-0ed2-44a0-b152-f67dd657d225%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",BrutusK -https://manifest-server.naiadsystems.com/live/515afa89-c3d1-4ecb-b4db-ac1882db9655.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weezing%3A8303&btk=d0NsQRVemVVVoWKW4SGpxvnj4EX1Mi0kEuAjCmUg03U&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weezing%3A8303%22%2C%22btk%22%3A%22d0NsQRVemVVVoWKW4SGpxvnj4EX1Mi0kEuAjCmUg03U%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22515afa89-c3d1-4ecb-b4db-ac1882db9655%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LiamDeeps -https://manifest-server.naiadsystems.com/live/5bda8a84-26f9-4710-ac66-12f1d0c7e5b9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=23FQt9lYb%2F2H8zJw8TihBlfPohcUrm95NtOnYWIOUsc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%2223FQt9lYb%2F2H8zJw8TihBlfPohcUrm95NtOnYWIOUsc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225bda8a84-26f9-4710-ac66-12f1d0c7e5b9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",JenexaXO -https://manifest-server.naiadsystems.com/live/8a54b5cc-c244-4e59-82ac-6b6e954befbd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=jLgMNkgFI4WRjT2iWbWVEuVr9IRMZqGUH6mJ0sX%2BKZg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22jLgMNkgFI4WRjT2iWbWVEuVr9IRMZqGUH6mJ0sX%2BKZg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228a54b5cc-c244-4e59-82ac-6b6e954befbd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Goddesspaigee22 -https://manifest-server.naiadsystems.com/live/fc8e4237-eae3-4882-aba2-78721f2ba31e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=DWS7VEif7wxNYUklfJNR1zQHROTbQvM9Z34hobsCrT0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22DWS7VEif7wxNYUklfJNR1zQHROTbQvM9Z34hobsCrT0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fc8e4237-eae3-4882-aba2-78721f2ba31e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",TashaNoir -https://manifest-server.naiadsystems.com/live/bb8793ec-a567-49ac-abe1-dcb668b019f0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=4Tz4TcdZ6zcsLR7cs8KaJI%2FZAC7nxlt70PF%2FFp86KV4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22farfetchd%3A8303%22%2C%22btk%22%3A%224Tz4TcdZ6zcsLR7cs8KaJI%2FZAC7nxlt70PF%2FFp86KV4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bb8793ec-a567-49ac-abe1-dcb668b019f0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Monica_Steals -https://manifest-server.naiadsystems.com/live/e5057fcd-b223-46ac-afd5-9447fd853378.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=V1oJ0HV10gVxiToKay2IJfsib%2FytMDp%2FhdroVzuqwYA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22V1oJ0HV10gVxiToKay2IJfsib%2FytMDp%2FhdroVzuqwYA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e5057fcd-b223-46ac-afd5-9447fd853378%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",BritishBellaxx -https://manifest-server.naiadsystems.com/live/2e70aa3c-6a73-43e3-b70b-bcb869e18c60.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=EBXKIImJ3mIDExxcwyvNaVSe4FMRfAllJ7YOU%2Fab8x0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22EBXKIImJ3mIDExxcwyvNaVSe4FMRfAllJ7YOU%2Fab8x0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%222e70aa3c-6a73-43e3-b70b-bcb869e18c60%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",AmandaAndrews -https://manifest-server.naiadsystems.com/live/447519d0-e67c-4a26-9118-0fc7463e366d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golem%3A8303&btk=wZzZZmPqbtr109K6L7gTKHXMQloaA%2BF4u3UvjRX%2FAIk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golem%3A8303%22%2C%22btk%22%3A%22wZzZZmPqbtr109K6L7gTKHXMQloaA%2BF4u3UvjRX%2FAIk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22447519d0-e67c-4a26-9118-0fc7463e366d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",KimiKoda -https://manifest-server.naiadsystems.com/live/466b2b91-79db-432e-9f9f-47bfc328c2ad.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=2HC4CBJ2HnT1ZAkY%2F4a3nYrd9qBjsDlyGuqltuZUH%2B4&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%222HC4CBJ2HnT1ZAkY%2F4a3nYrd9qBjsDlyGuqltuZUH%2B4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22466b2b91-79db-432e-9f9f-47bfc328c2ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Skinny_Asian_Amanda -https://manifest-server.naiadsystems.com/live/22de4695-012b-4049-a9b0-2350197ee16d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=AOxKrv8umk6wJywncP8D5c4zKCv9R1RP7U2i%2By8hKXw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22AOxKrv8umk6wJywncP8D5c4zKCv9R1RP7U2i%2By8hKXw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2222de4695-012b-4049-a9b0-2350197ee16d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Ambersnowxoxoxo -https://manifest-server.naiadsystems.com/live/78556bb2-d3fa-45fa-a91d-0c4f3e9042a8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=EgpdEOgqqJ%2Fh7gZhB5CoECYw%2F8eHJMC7NEI24OJi2sw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowking%3A8303%22%2C%22btk%22%3A%22EgpdEOgqqJ%2Fh7gZhB5CoECYw%2F8eHJMC7NEI24OJi2sw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2278556bb2-d3fa-45fa-a91d-0c4f3e9042a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",MelodyRoseUK -https://manifest-server.naiadsystems.com/live/37b9308a-160e-40ea-aa28-c2c60a2f4e30.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=ekans%3A8303&btk=aRFe8%2F%2FsdHhfz1LRpKBo4gsC1WoTPUkIe41LOXukGIM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ekans%3A8303%22%2C%22btk%22%3A%22aRFe8%2F%2FsdHhfz1LRpKBo4gsC1WoTPUkIe41LOXukGIM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2237b9308a-160e-40ea-aa28-c2c60a2f4e30%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",AmberLynnXXX -https://manifest-server.naiadsystems.com/live/fd66a402-5449-4539-b15d-0b77790146a7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=rahu%3A8303&btk=usskO%2BBpLNkFMdUSV5yqUtAI5WXZ6HOeevSj7XFTLE4&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rahu%3A8303%22%2C%22btk%22%3A%22usskO%2BBpLNkFMdUSV5yqUtAI5WXZ6HOeevSj7XFTLE4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fd66a402-5449-4539-b15d-0b77790146a7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Boredintheoffice -https://manifest-server.naiadsystems.com/live/45a655e8-5033-44e7-9800-1c7875fc1569.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=BX3rtRYvA1Pe2JXxgI6Ei%2B475gNQfeTnG4LwnSVEg6Q&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22BX3rtRYvA1Pe2JXxgI6Ei%2B475gNQfeTnG4LwnSVEg6Q%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2245a655e8-5033-44e7-9800-1c7875fc1569%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D \ No newline at end of file +https://manifest-server.naiadsystems.com/live/a27db821-8ead-458b-aa43-be2de5ebd5bc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=ZXc7VMED5wzY%2FxMk%2BtCv3y3PFPil1A%2BpYevMH6%2B7XX0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22ZXc7VMED5wzY%2FxMk%2BtCv3y3PFPil1A%2BpYevMH6%2B7XX0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a27db821-8ead-458b-aa43-be2de5ebd5bc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Lee_Roze +https://manifest-server.naiadsystems.com/live/6fe84a6e-2612-4eb7-83c1-36648743a8dd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=f94wOPr2gxBCzp4GCwVElb5P0xM2y%2FuetxFepKFgs3g&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22f94wOPr2gxBCzp4GCwVElb5P0xM2y%2FuetxFepKFgs3g%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226fe84a6e-2612-4eb7-83c1-36648743a8dd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",TaylerWhite +https://manifest-server.naiadsystems.com/live/741b015e-5f49-478e-a4fa-5632ca5f0449.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=nFZddVtZIHbofUh9o8nf5Kpjsn1WVLd86Yqmje5h%2B3U&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22nFZddVtZIHbofUh9o8nf5Kpjsn1WVLd86Yqmje5h%2B3U%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22741b015e-5f49-478e-a4fa-5632ca5f0449%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",BossDominator +https://manifest-server.naiadsystems.com/live/cc2df864-c28c-4fb8-8b8a-179c21dc6c29.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=lZPKO%2BMcn%2FsogcJXOXu0y6iSve%2BjP6PKt7k%2F7soNMzM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arcanine%3A8303%22%2C%22btk%22%3A%22lZPKO%2BMcn%2FsogcJXOXu0y6iSve%2BjP6PKt7k%2F7soNMzM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cc2df864-c28c-4fb8-8b8a-179c21dc6c29%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Maxpetit +https://manifest-server.naiadsystems.com/live/2fec0769-bfc7-4a5a-976e-a9643391b9b4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=QNeXXRAhYQgJeyZ62u7bRMk2QHCMkbB5u9lrWJlWEeA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22QNeXXRAhYQgJeyZ62u7bRMk2QHCMkbB5u9lrWJlWEeA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222fec0769-bfc7-4a5a-976e-a9643391b9b4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",blacman19 +https://manifest-server.naiadsystems.com/live/a38bd3b0-dc89-4420-b842-e9959c61dbc4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=JKH2CDIdUPnD863HQkbG3TCtqLeUF61dHoLGUFSOFDw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22JKH2CDIdUPnD863HQkbG3TCtqLeUF61dHoLGUFSOFDw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a38bd3b0-dc89-4420-b842-e9959c61dbc4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",SalomonKalou +https://manifest-server.naiadsystems.com/live/f0edeeee-cf67-42a1-8fd0-eae179e94d34.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=gCTsJ5gNDfteOUY35kBoZDA%2FoMBw7QkTFGAbns17SoU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%22gCTsJ5gNDfteOUY35kBoZDA%2FoMBw7QkTFGAbns17SoU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f0edeeee-cf67-42a1-8fd0-eae179e94d34%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",TheNaughtyMilfNextDoor +https://manifest-server.naiadsystems.com/live/1903dc33-9ace-4a03-87a5-7fa804e3a609.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cloyster%3A8303&btk=8mpOC%2Ft26TKKf0%2F8AObQc29o%2ByX1p6rrrYeLnztQ9AA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22cloyster%3A8303%22%2C%22btk%22%3A%228mpOC%2Ft26TKKf0%2F8AObQc29o%2ByX1p6rrrYeLnztQ9AA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221903dc33-9ace-4a03-87a5-7fa804e3a609%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",DurtyDyannna +https://manifest-server.naiadsystems.com/live/5e348e83-49bf-4816-b5c7-873fd0c190ec.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=YkQNpE6cGVeXfyO2Y3kVmTd6u%2ByB6lyBXjVzJiDLqFM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22YkQNpE6cGVeXfyO2Y3kVmTd6u%2ByB6lyBXjVzJiDLqFM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225e348e83-49bf-4816-b5c7-873fd0c190ec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",libby_love +https://manifest-server.naiadsystems.com/live/8e50c9f3-4efe-4674-93de-cfaf1c6b7bba.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=P6a2wYTrwOYgNypawy%2BrWc4LD3N4aXiahg9czMGVKjM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22P6a2wYTrwOYgNypawy%2BrWc4LD3N4aXiahg9czMGVKjM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228e50c9f3-4efe-4674-93de-cfaf1c6b7bba%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",TheElaySmith +https://manifest-server.naiadsystems.com/live/8cfd9396-ecf3-497e-8a58-bee4903e9d69.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=CpHmQyoC39NYjHsuYrk%2BNsBKwrDHbYWGdCf3zqLip8E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22CpHmQyoC39NYjHsuYrk%2BNsBKwrDHbYWGdCf3zqLip8E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228cfd9396-ecf3-497e-8a58-bee4903e9d69%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",RavenSundance +https://manifest-server.naiadsystems.com/live/64cef38d-6364-412a-abf5-e662ed7843f8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=fkN6LZepSuCG5TnPrNO4DfNrBnwG4T4SSjhXjfk6F%2Bs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22fkN6LZepSuCG5TnPrNO4DfNrBnwG4T4SSjhXjfk6F%2Bs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2264cef38d-6364-412a-abf5-e662ed7843f8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",JoanieOakley21 +https://manifest-server.naiadsystems.com/live/9aeaefc8-8c1b-4ebd-90a5-6ae866e5cef1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=3fBpO35p10u3%2FRGZmjaJeFjOHzKtgXQu9bc4TUoZcyY&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%223fBpO35p10u3%2FRGZmjaJeFjOHzKtgXQu9bc4TUoZcyY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229aeaefc8-8c1b-4ebd-90a5-6ae866e5cef1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Annahilation +https://manifest-server.naiadsystems.com/live/03f69a62-87e1-4841-ad22-c1873a4367a2.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=5BcdYWUKRxlULUz7YZhoxHfdS0TuGXFuEjdsltc0v0c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%225BcdYWUKRxlULUz7YZhoxHfdS0TuGXFuEjdsltc0v0c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2203f69a62-87e1-4841-ad22-c1873a4367a2%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",jesseraeuk +https://manifest-server.naiadsystems.com/live/f0ad95d0-8d44-4fbd-96e6-b904a06f727d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=gon%2BPDh0NE6Fv6XU3VfIxywE7XjwWRKh%2FcHz80AH8c8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%22gon%2BPDh0NE6Fv6XU3VfIxywE7XjwWRKh%2FcHz80AH8c8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f0ad95d0-8d44-4fbd-96e6-b904a06f727d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",itsfreckless +https://manifest-server.naiadsystems.com/live/24026e8e-cd6a-4c6c-9bc4-954ba400b64c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=eQc0T5%2FXibnLXH2HEj7aEzJgypPcp1HKDtpBDkEgocY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22eQc0T5%2FXibnLXH2HEj7aEzJgypPcp1HKDtpBDkEgocY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2224026e8e-cd6a-4c6c-9bc4-954ba400b64c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",SoVeryDifferent +https://manifest-server.naiadsystems.com/live/145b6ccc-4cea-4529-8cb9-a07f1ecccb99.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=q%2BJvpa3WM39e53x4QVAV%2FWLdWDHolYTPHiGCHNRqyZk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22q%2BJvpa3WM39e53x4QVAV%2FWLdWDHolYTPHiGCHNRqyZk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22145b6ccc-4cea-4529-8cb9-a07f1ecccb99%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",GoddessNinaOdille +https://manifest-server.naiadsystems.com/live/a783bee0-d749-46e9-9219-af2e3449191f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=3%2Bn%2FFgYSWdRbEpInzYlb8yAp6YQtbUO2mC2naJmdJgc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%223%2Bn%2FFgYSWdRbEpInzYlb8yAp6YQtbUO2mC2naJmdJgc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a783bee0-d749-46e9-9219-af2e3449191f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",IzzyKreame +https://manifest-server.naiadsystems.com/live/1addc820-9123-46d8-beb6-2e7a528ed558.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=d0BKClnOxSIRpcDVgY1Dz%2BH%2FT%2BfaAVpQ0ea2iPSVLYI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22d0BKClnOxSIRpcDVgY1Dz%2BH%2FT%2BfaAVpQ0ea2iPSVLYI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221addc820-9123-46d8-beb6-2e7a528ed558%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Lucybrookess +https://manifest-server.naiadsystems.com/live/079e6d1c-ce2d-43db-aafc-59a51b402f5f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=5DQy8LT0uJ1gwUyTIXBNp0%2BasMDrioUDRJehgUo86uw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%225DQy8LT0uJ1gwUyTIXBNp0%2BasMDrioUDRJehgUo86uw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22079e6d1c-ce2d-43db-aafc-59a51b402f5f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D \ No newline at end of file diff --git a/cluntop_tvbox/py/config/iptv_test.txt b/cluntop_tvbox/py/config/iptv_test.txt index 65e25b9e..5d93f0a3 100755 --- a/cluntop_tvbox/py/config/iptv_test.txt +++ b/cluntop_tvbox/py/config/iptv_test.txt @@ -6147,3 +6147,7 @@ NOW NEWS, # 以下 1 个频道为其他任务未匹配到的频道,自动追加于 2026-07-21 15:01:21.199912 卫视,#genre# 安多卫视, + +# 以下 1 个频道为其他任务未匹配到的频道,自动追加于 2026-07-22 22:01:13.420153 +数字,#genre# +CHC家庭影院, diff --git a/jaychouqq/tvbox/file.json b/jaychouqq/tvbox/file.json index 853bc8c3..b1a6299b 100644 --- a/jaychouqq/tvbox/file.json +++ b/jaychouqq/tvbox/file.json @@ -1 +1 @@ -24233132333435362324bf253e7e69d4583bfa32fd71d5d52a24e96b90398873f1b5c6cdc500d82e35ccc582a73eaefc2dc99173c53a4a6bdb5ed40d34a6478050a9075173381d675e3c04e4de98b07395816a96268b77c14905c53e5d3ef4f38330e2d47725c958ddfe4bca4c50d020d03a732106428b2fcc85479bf6eb2cde81ca222c6f69163555131098dc09b9b58ac0845afd139e5b2fcf489d9257e73a06562a5e67fb517f0eefc9d381987973785e858b9306d69e51cb1683acd71755949acdfcb296614c917b99338a83f8df6f07a5267322db1cbe18ae9a60e5e85c546d66246069f61904c26076987be730ba92d45d97f5fb38221b825312fe83eedd308786ec07b7bebd4042c57c6489821486ae5e0f39d2aa09c230a753ba7078fae2b46b07c31fc1a43765e785c3b701f26ca016767b658c032f6050c2175198cc685a680bd65adb44ac09544cce0e1e890e4d0cbbb918d3062dbf83b29c3b1c3cb9c279a022d63944adc9aaccd4b63e226c57f6a9ccfecb9edab9281465e6e32e64b6c3e944c4312426af24ee239bbe7a39735a811523b278176c7e2aa3231595d6c4abcdc0b75cb8fab0f348ac46395230a7e43ff59a29da5c7bf93383868e0e30b2d40c6f65012b41df310d00d0940735f10a651d78881041866e150422e302f44de7ac4e9970f26e1cc29b382027fcd7285305ab6cc4d0d4ef3612ccdfdb35d1695fdc4a1b59619a749650d88b3f00f201bb503b49467612c0c6ca0a1413f5ac24d4251e6168ee4f755f6717be07860f68d604e4b890152b9fbb05b3fe7041f0dcfb15dc506d25544b9672b2035f748bd0d658851431b2391e11aa1ff21dd8e0db8fe8fad69978f9d056bb82a2c46c75d1d14a7fa2dbecde88573bd3602f8b5e1e9a3fbb9abdb502dc15e8bc4c76466236a01fb1292246083529450e5dc11ce6378fd8de78c4232ce1cca4115cb464029d733858707fcd907d998a8fc381f1407311dfafbeafffffcc07297b5726425be8b76dddb4461a14b7c764e89b64dfd1448c4a518706bea91a8a794331cd014e40c5a2508fa988d889349af11d8f97a907167183cbc14f290018c8660de44af431d8d7f1a5e0be314f541df6991df5256ccb36fce1b2c2cc006fb5281b10acd3fcc157a7fbdd56b642afc25a1d2cfb328a1a605b874d7d6cf6fd210f31f37b0268085cc139e9fe279503d2bcfc8f4ea783db3f6ccf32b38f863b564c007da747fa0f95585ad9fc1216031fa3ac29446354b34c39acf6d20000b7b5db4189965bb6be1b5a452afa1f102435de515b8ee8fd56498c7366a2435f0b2f5094ca09aca5b6472f6b7e92815331f39d58d77cad8eeaad5769751e8b159ec8a34154820c96ec754cd73a8e937fa6211ed5b3b332c47e4908de6147ac67e8272d8003a32693414479e918832a92c272a95afcf489816f82929cb1ee33cc3551d22b7aafce31effa4d64a9d83bba912fb7081ade502a7b1e747d29f0ef341a5fcc8598e8d34de9565ad79f1be803e367894682550c313776b24556294b0d6c827d9abee187476a62adde407ece7f6157968221f467b5d79a515f8d3dc158cd354900c58f5338273d02f3b23e213aaad91fc32ac7394b5d100a9b54bde62feb12f45862e0e5434af4d30b806fc2488bf60aeb3413244b8496afcef1704e4c54b5b641221227d7e82d54591a2cdffca60b6fa74777ac37a98e1d937914ff8de594eefa7fbeec2daf52bcd467be407a68b7eb5876ccc1c3f7543eadaad2b0443f460ac4a4f66bab2dbdc6f6f98f3dc0e10ed365f7c17570a7bf586c3628628818ffd2177e2033aa9dec52e2705e1f235ca4762b4ec092781341c7a0d56f0d63e224821fbf9b31219abd8d9ce286b4d856e8133d7af2a80d7acc542728479288eec489e6e15e60cee437b4b8286708cbc296a093b423561bae3ac13ca90a9c6ede7ba70e689b3d9087a883757f7f9687072c1a1295897e0e0a745351b84c29b7d6b0ff363a21e278468a5dc5f70e5fe34fb34f20990f72699f7981c498e52db2f672b55da890baa6a78c05123f25a9a579e36357eb1afb01c406d7e709dedfa3af51dc1732063546dee50919e4b879a5a4b551dcedd5c83c4d549e7bc37268d79fe34d789bcb11b9dec193a6ca776ce536fb94ca2597f51de4d706fe085d5f4d9fea1773d678b36ba943cb2950f29c0e3d64486a79bbb87f7866741695c9692a59af9ffaca2650c1af4149281d995a6616d95114262104353d430a706a64a333ac01697f6cea039838f03fa2007c53cf9a4c5cba80bcdd319b86ad642e6b36f9dd460b6a184cc47252c2411cdd2d859c45932daeaa3632c030e9b53d0596919d875a031a9a8043bc660e74f3287149bf4848d866b0f5c375e79473ec6f067d3fceea475ab28ccef39070ffea52c8597194cda1ae82dc30d0723abc0a1e1bb2af8616282e9bb3999b24948f55ebee85cc6a5a7d011a36bd2aa2c0107e586ec3fb092af9043ec8ad3e20a2eafdd90c434c5a2b20f87750ca97869bc724f511e111be33327abd55dc7d1f113625b957224eabe0eef356c66028c93acf55ed7daa5ce8ea5d9ca71f1a66eaedb2e8cf6841199a9b8c78cea89e17ae21379e41a125be26ddf78452b8baa51d0a667d92bd10b2e3a1069859592ae70820167535fe21fc2b295f34e26d569d52839704ce818d415efbe34265723a76b6ebd57fc0deafb2d561d482fb3ec6bd765db9d14daaf932983204a480221174ad9f9cb8f3866616a37f83b07adc1bf8df384145229394536b2587b53034c1d68244aab6d3f3d154d2de2e9f1cd3cff8fc131bd02084ae91159d1ed2c711ace957fcb1f0896c0d15e1e5740e297f80ff8294fdbe8cff14f1db13cadb6a979e8d536907c1cf8eb6b427695188917b20d117225b1883fcfa07316659631db1662a3c94bc0a7deadd4bdb0e48f3e05c4081591747a41e58b11c9233ec3fd289ca3249b697127c0876e84301e6063295ffe46c6d232870cf6bac5ae273dfaac82105f8131d14b97e1266d9b9819f64fffdfd050eac658108df704b73693998176eeaeb74fe8296ae737e9bd2fcd51b0620fb91018fab0aeb2215eb46dffe7487c9a48bd30dd618c5c993574096056c65c258be709f2aa1910be350c69ace154c522440834ac02677961c7fcfabf4f7927c851692859c10a051e60634f93010209a5ca51868d76c4138f5d90dac45fabf638a4e0f9b5e616f93fe662419a7f6cff5e89b300e873d1c2d4b707c7c8ac33b18f111a73749bd2a982fd5e00c503581bb9b1c48981b7bb7799f6fb69f0e811e990b992d571aef9bf4b3cc38a9a626ddb91207fdc233d1e579c48080c51c63f1f157b2bdb7c95575f2c2d04e1e4b2b6db9522ca1b33fb8e1e793431646c5b942177484e2143ab65c7a13a6643ebc0d131f65e6b04af797f85c9b8b9e199d656d0e371cd6adee86f0cbb8a7d2fee855e4d552bfe544857e3941ec6b14b633f2b90531c7aa0743ccb7f4f51807d614b7993f5556b097112e3c28fa931ed1e113bb196b4e70d3c2aa11d34b970c66cccdb23f52c44973aa1f6106217db5ed56e8426014d20426f0c9dd37b038ae05cf36a330d708a99ec7bcfd55eba9cf263538679f2bc0384f0ec0c82c69f2c6f684de8353fd3645b9311c99ae32e6aaee55e75476afcefd799aa557eb61dc6b38519f563d2b3979c9010114bba3fff46d9985a64e09150ff23aa20b353d90450da5eaafcfe35ca969152fb05b614b59cd714bf9c26967992913a64337507711a7e8b0a0dea7c3e77164cc9c843bcde0e58aeb5639074989c528851aa27da5edf74768ac25ae8ed401de99d10d896525c0cae943fa8759f4a4de2e7f8ae0ae91843f0208eec454ac78aea4c66c8e8264e0bbf4813f623402f9b966a123cb64940345306a6bc89f58525e71ae6fc3aa91d153a3027c26f8ecf6cc433c3bd38173474344fc79d53703d70ebd42139bce779dcd985fa53c115039107d1acc6f8f552b3818ddfaff5859643343732c558fb4731f3fc050e4009b226713bf5337bcfa2f5963e5f3a71739fe7a71211ececcc610d8d1557a2323a3a87923b7ed1442f5b27c552647d4c87126a4c946869333f41b4b110e1bac5fd5982b978b34b05f08eee26ae5c203e2c7ee9f35cd20a6347801291a1c9f41dcc365f40a4006d35d807e762811b311b26a1c9d703d52b70f88a6af242415ca3cf6ba87b25d9cdc3aea486c3f56a23d86ba02e8ad774c19b6a2180dab519ad30700267f1a8541eb0ec48cb65bfe2d6677bb255683a8816999e8c0f42bf4ebf7378f1112ef98b5339852b7e0e0423ce0804c4d1ab024f7683ef2e7008915d6ef1c4e91e81dbbafc0c1c331a0189ee6dd5295fb7c5bb09dbcf884bd69d7f52d76428a9cddf6239e6a930ed183ef4de99a9287283f08353667c7979fd1245e36f01a08c85aef243646d99c23ad183cd8bf7e7c80d3d7f62ab790177fc86d2dd2cd0ca858356238fb204fb62d61281eb80061be85a4d957dc95bfb7b924c2c7c625cf86cfffebf0f7c0435f0284686d11b939e3c653c1a68250845bc633571990934529eb6a2915548a78833443ba01ed69568b538475cbeab215395c0607476ba62707208922cacfa89e815f78b4a89fef4e95d8cbd5e7918a3c13ee60b9766856e06f9f98e60e16f14ba66655dc439b3762b320f7ac1b7c5dba94143ac6afe701fdfd709fc29aab62d62d18bf9508e789abf743f9189ce461beb8134e09aa7ccb740a344c308100b82121352e7e3f2ba6a29979816f505d45ef2a75c7f563ad1117286f53a2aff799275761aec41b81f37bcf35d3ef4843efbe67d4eb192c990c596647ce46482132ccd87218546c5b1b3b9f96673dc4288192111e4e9abcd7c21512ff5aae6c7a77b9f3a7676acb390f3e10796e8cd7f29b68b2bc957890e02a3b3e7a8de1347a78126e3efdb9fc55dc2db607cf860231d1c6187ec125f6abab72ea32824db445f73c4f1074754a28f7bfe247a93be7039be98a2ebc8217f2fd8eed45727920a3a8c510404bcd17dbc82eb507628e1219108c98fbdbb122939d28fa593ea163982023d98b4927ee4edb9c671e9b2cc258f59acec231e273e8da4f8d334ea36c7ec3b4958096450a1c4a447ba090a7013a40f2437ca6415a7a1a693f5fac54e46d7923f328c389945cef3c21db8c79aef0a2628748b5da1801636d063d4a7ea11488a1d1bb159cc42f3a6085c565ea4968af546488f24418ff4ca5c9a40dd79f627ff00acd84a07863cb9540da07be25aedca5196421fc7b5a979fc71e26c268e78f12e7ce6460e6d4f011289efc9d030177481d4fa50ceea2cdac36601729513a9012781cb00650bc8cfd943d680bc1794f77ddb1e44d3666f85db0c7e1714badb998a383f3f40ae40706779e2a0c28a266f69352edb21fa16d3f1e6818e2f049149a17536e904a21747bb8e1160c42a9fd5a51af6926e06913ef9327f22780b3d996aec6e890b3e740d8126f2156cf62f7b68a9ea97d89be61156216acc30a856914f1d6069dcca786306fc13634001e332db9e4e71b7337f68cf40a139f5d84317eea0005642aa683162237bf3cca5aa37be849efae61c3b0842182d4bd2905f3437140fac474e605b8c96ce7a913b6763eaae9f5b325c223ef7c9ed1356fb5e2d1d75d6b83878ea7d2d40f96c6144e3efb9c9322aa3641b9657a771e4cdef960dd2705f6104449eee78c9110792e05806dddf3f92f0f78677d74eb946eba5fce469620dc582841e6dd8793115ea478b0a094eb2162a0d9a051d3f0fa6bb7479a8c3da4d1de11d44b2ff1e105acffe2558ccba45ade18da432119057843249c58f9c949797c16b2ea68c25d21cb000c391aa16a71e8b751bad346097575c3b2cb5d49373fdce9160b2a27243b9bf16e105c66102040ffebeadc19c27ee43f4be5768103cc7338caac9ac05cea07da2b9e86f407f252f4af563f3472e810f6a794b67a16114bdc54ae01b90cd1038009607a2988cf03b3c904245ca766a18302c6027d7e9b1434597fd417f28b052db172a3cc9c0966ad945e28237c45727b49e829e82211abc9bf1d4497d5a0a6b771b92a8f654ae0ac1957d8cb5b18de01804f864cd3ff2134550cd422e439dd8f9a38952af32382951d7a5927ff32d2ac6a2085e1682005a9f008a3d42226d53180135a709745b6b23a66192c78983f25492abd7e62b56777f5f5c98263ec12584ca6cca4926adc396c75925baf3b19f81a5d60524fcf5e19c3e7897ec80e0b17c00c68e4e2fbcea41a788d6a458cd88a513cb6d9059a716faab48cb7d9eeb19cad26a0d806eff65d63eefe842286bda314d686575a30439d67e5d77c00ecf06517ee56801148013a34aafac39148a97a31006b13ea4296e52c1d7ffeac371ca468219d5a538f631f9144816b96db13e1c639640e90b89e3b1c82537b4794fdbe596448b068652d8b59052b20ad68a674fcf2fba4e4a440c54301421910ecf9567d58f27e6c664bb570a87adc099ca1a492d994df93724ce7d5652770c57014a33c1a166f7395b8ff04e1dfa9dab38ea0caf45a8adb9677a2ef7a6b96911f4502b0857c2c56bca6c29c6be70d723ed56a162c611827ecf790ca72b7a28749935ce338f9ab2fd6391849c1bd842f2232a60308687bfd582cda57fec5dfc530ac58cfbaf84d8cd4b40cca4ad99d8258628b637fcd651ff706d43e1d501a7e5596560a012ea71896403b245628e5b21fb10f3dfe128cfb952991b6d2a8154c00a5e57a48a85857eaa39e5daecf7998f34a73470c6eda48219d5f23436e22fc1418bcfc423a8ff96f7695e5d86e7a879e85223985c4293ee490f2aad3545d2f835a37f8545b75a2d870a3c3a4749865a4a1f65576259b14ffbc449179a287e679aada414053a87655a6d38f3c8e15f13252463d42dc10eee3485c042ff64a06317a0c423c007f3a8fd7a6e2eb02ccd81d3d9bf936f2d92a887c74a78033be75fc02f7610e2732f7797196d4bfdec40cf20af06c13866c665806b7e8008232b1bcd553d3fd8effe7ee60bc676321a4dba41a418cc517c2dd48fc33179929cd623f1e20ed40e3214380c936f499f19efb38aa91a1d0c150218fc4b620bd4a1b2057122531b5fff136218f8b02e22d39d15aa05a1e43456df4beca22ad7b71bcc802e11038d3d36fb0aae0f5451ed5b3fa87f6e33975ab07b34759a31fc145aef005494299049c5e314cec3ebdb3541a5e5e8882a51c30da9d1a38f20c5679859c94292ccd7451f6a49527403ab4625f6d875e295c39184060bfdc448571ab47516f9e733a8f4466ca2052316e3f97892006743b31b74bcb6767b5b661db3cc034fd6732b27b82a793d1dfabbde84d0ba3a3d51dd8b2f0b27ec123ca782b37ce6147ed6f3495a2cdeac4de75a5a85472719fa3abb050f4f28e5dca747ad10cd7cd34f59b51075c696071c8698182e1460e102e1bc67ed81cb2e4ee85d2ca896d8b337b6180be22167ca068c4ed39386ddb560f402abd5088f21284fe38af2c18fd4eb9463d594210280f76e02a2ae944b02eceb92eacef18178bef0a18a3dcc2f0dd2de35409a9554be3f5ccc5c39f69acc5015d41899f0fa694b62057a7d0cf696ad86772cf9e2e334013125b83e5fc7a239bdcc443541782331ff289d17490e3f180de9fbb1dc4cd10864534667d4da274993b1d3cfeb0e7b06a8d63b9a732e518e54d8cca44b280b132c5e4c40c1933a1041ef6127bd99b6414d0dcb2767363984c62d1613c086c7992f136542ffe5c28515608ee7f4938e12c288d6463291100fa38c57a0339c6319ccab33035d4654c7e2d1cbdf2e8b5ac84b869a7c6dba57a4f643e58c8d79aef16766598029ffbc5a3f375a552cc1fb19da974db34dbecbf5d6597d361cceb7b1ce89ea15b94426fb587424a210be74265aafa7aecea5a4a70649e257e9e92a4249262a784451b09e4e25ec166862dfc98eb31a9535e5db2f140d8b14e606966957b973f5355e01dd433b0336f2249a6ed8996b2a3cc2b9f3928135a3a403dc9de7815b6c1a63a0f4dfc348182ba3a11f2021ddbd426623014acb0ea4cd5b2b69e418b531f7eedcab41eac8976fbbf0e24a6ba47b8421d4ea0dd903f99022f26772351b25e8e7338e9ce065d16ba2cc65f861d8fb56175cd7e770d6d66569b89dc0d3925adadb8e820d7c59e74773795eff6c84833f38c4bf7de1ef8a91c39f71272f0d65f6c76a77bc71326ce714977913bcfc530e54babb447a91d0259e5a4b351f9664d183b83eb9b3061ae98c476c7db78a14a2f14dc53b1cb240fbf92d0a87116a4f2fec56d33164efa257f4a22568be1ad2268a9c80b7b4ff1d522bac0feb29781283ea8dc2efb18344c0190313a3bdda8ae2eb4ac46735134dc12272ff7c0997242cff87dc8468110b09d158d6ab6491abe699e3617f4a486cdc8e889ffe12e451fe4e24f713ad315c315ddc4fe88cda46f2bd1411998c740e2d3990b9521d0a52f6322e85833957542fea3242f317c4ef7975ec8cdad006904181f78ddc0fca510810faa028a18928d2a69e57dce9519756199381acf4d3d290c38e8f554337c0347c290b465ba867755d36d85ccfbbeb2a14749977ec1b09b46f4464b625e1a91aa5149241596688b26f0497bc76cf1c1555ca74b7c87f83ffb58c19383accd5b1c374716a22151a97310455957372df810edc21e906950a9648f09057da1677cc45380e819aa64f9521722503f66245772dd9b422f1392915daaea1c1ff73a4faa0b3f519022705915df2b9f282bfe66a99d70696ec133db52378717f59cd253656aa9aa7a40e1629c2f232aae5ad0309e47521751277a0a7d95349f92ecda0ac392aaca873c5655cd4ff11844c99da0ab1fb309c1b1a1285372f15f7b188c3678598fc088ee7626724d593fd31de42cb6b83aaed2e63ee4fc9b962f0b9f020387d3e811b5a722c4ab7f20fc8930a8f31c4ac7ab14618c03160119139bd1d8ff9cd9fc78928784681f22b7480ee8fd1cb0d139c1673bf38513fdc2da2b508353f015d1148e1022d66916de243bc27480bf39c56a74c2134a9080f7b1227adba0cabce85e5e2814eb2cf9f6a698168f7164bbe590dc7e00b1737a5c090b2071a181f30f94ff18ccdf32bc2be1274275fb8443962f033df57b196b65f24ab0d5e57188aec709260a6ad0dd08dab1a86621e478c2ca8cb6696df60f6051da2007befb056ffee58ae9c92e72ce663595833e88da9acea661e00ef2f6b1392460993195a16b77400d6c8e2f275fe976b27017c77124723f7f3ec35fafee1a58405154e06482f45b5a37ac13f1d0e0974532d9fc1f946b329f4cc13795f186d784074102503899dca887aac51e4852c0491cc47339293955d3107dd8faea6004addeae31c275eb1822e63da5f37d35f2cf75d8073e8d21581d3562a4365b11fb8793ac91e6487f7e459966019a3eca9e6fcf5992e1b61a1d8a7e7b1d0e97d218d5433b31db5115de4a13ecd3eef7ec28fa2abdd51406f30f4508c38b3022d8f41262c1373a7dbf379ceb95dda6d27c46fafdf8ed5eb18a070fc73009201db604d02e233dfc65e6a9a3c1cd1c675e33c2727288813470a4aef0bee1cecc3a20c10356343e27dc17718350a58d4471f0975fa43d6879025c9ab2afeeba735def8947ea3e87b86f30e2f8f5d007f74d14cba0875c96eaceb6f3f7891b98be0abaae4994d7414d8c5a3027447c597ee3a0078659ad7c9805c720c1d1cdf8d60a433e5a33a75674362494d5add468d91b2f05e549b63fc92987fc1f81d0eba4a244f68f4a005778270739ba36b33f3f6fdfdc2a82cbeeaf1c17dfaef16ab57fbbb054b2dad9d21d9c011efd97b3669b69e86331621bf9c04bfe3ddbbd26dd30a5435394e2f26fa469aa77ea0034d8ec23890b2062b3989f4cc68ac6b830b288563a0a8a1099d2c7d3a8a91f83b7f67665012fcaec721b0570e46e6f4d798027aea43303c857b45479179d76b06aabd3b540770a91624af3bcbc6324c79887bf1aa86eb32d1496174a80766985a8d662b167e4a311283124635ccddfe7da3c94878f4af95d87af34ebc50538b6e59852fc56ef67f84a951f865f142e6c6a34b2a3715c0e39b640adc8cd4c0c9ff9a5af1c1eea5e3722f46a5949fb69c4aa3989483f7a61506d351511467d84cc5a58c5d6886ebd3bc987a4def5e3d3523f590133a17ce076aefcb013e2eba8fa007e2f0e7df5e974a41b50ef2c29e43bdebbfc4a9dd0672b5f0af5b9cacb46e032ae5b56ec85c46235fab3f1c767fcdd144b904566253530bd37cc0668fe9896c4df2241ebc1925dae94a84ffc004e521bfd3b0e2e10d41b6a6efa3a349ee572e9fe400086962cbaad6b08836f2c56075ca563eca89fc8682a3c73a7434f533d3a9caeb2572ea0a778ba34f881ffbeb997d0e7ad6752facc2c3ee8b620f5ca6348667fb62c63435232fa17fd232d76bac60ba5039b1c9fbcde7daf2b18818b0471bdb8965f6851c98ecc5685b79637c0d21dd78ee7f78c6cee910b31920fd64d52dcb6775aebd9147b1ff86bf595751a9d479be4bb6f6fa0e6591067fd0d89f0b7b0a7b8ad139c3c0e32777e2ce38eed95dcef94735c09800bc7b728aa35f467b7a1ec93453c62ee384ed647065d6b7b849dd8acbea3b91ff7a8758a3feb09c48cd7c7a64cd4ffb5f34a253d6b035c09f8b93ca461d2f65eff29c3361e835fd5331f6cf4912c8306486ea6fee621c4cf09436a5ecda7ffb47b5b19517a0d1536e65b6202b60e6c21fe8fc4b825793c8fcc4453fe3679feab0d01223e6a2aac2c3bfa2b5c1d0440a4e22730749047ca405d801dcf6dc145eba1d197854cd78e700486018ec0df6df73c2e03c12faa5e5e7bae25855a798dd15acfcfdaf73f6182c702cda7a1d6528edf55f14bce37499d2e1ab25cca9b7f8c1c9574dedde0c67aa6c2b60bb643f3b29a819ce1f7bfe0b6f42fadd060e363090c10fb089c7c55531d3d3006108dc9e16d5e2016122d215561bda2292bcf5295bcec3acdf10316eef222ab264ddf292b2b4d2e60386464623386c22544ac70ddb9c58d5167dd960a86cf87b54c60aceb878ddbf0423600f2f499d456e09a24bf6edad5164ccca5cd9dfc5ad8518c5d8a8f6f642ff3259df57e3dcaa6c39f2aa88564415b4cd8ed861fffdfeda91b012f20c862b0c9fb6041c96088e0917a2e430bae99dc9b8860a09996db6f52a8b61c8a5be72ec8b6888bd4981171f03983ca4df65ec7426e8038a57ac810c70e84d4d24b58198e23a9c379b98745cda4d0e848a57c5642fa2eb4fedebebc339393d60ad17751e5d58a376812a881896c0b2d1f63ced36675bd24ef6bda72bfc86f33abf8eb1fbd321ed5025aeb61493354a0b2cc4a0da717d6c6c5258ad15e55e07453eb9922e3f3d7a7c2e7150c0f348e336f79287213058ff2778c620bda73780f61a4e008350fd6057d84d0865c5a4455bea8e1f3f39af2d2d16fe54f181f99cfa269cc971b309d606c977e193e255676ce8389373b939520c20b43ec0792a90dabf15e4d9f0491a4f3191834e2cbf975f0d606724300f613fe85cb49df8ac3a34e190a7d42e6796bd7ff1270906fd533943519a5ba061e7f99cbc69227885df225ceea7b9b5f39c342fb631e623ceda1a857198ebf4dada70a97002120aaea64266657ffc5ea246d1ffbdf8d3380b35324e7fc64b4b21ff9649d50701ed45642054642560b303af1d3fa3e5e01ef1a0c4bf069f4b99bd38c2672a2815a607503c7ac434fc0bee799dd080d7ca30d9389117011800dbed7268a7b726c1f87ae86d9c849a4898de427b58e80c9069469dec49ef6789ab8c8c0890f48329290540a1f3c0750d5cd115771da965ca2bcf953f1645d4f4868197dc15f491b46c744da921609c35ec15bd0fd10e351437b7cb458a524765bf507711b01327a12f09f966b147cd71d62b5855e4f140a063fb75828d93a49aad963e167fc8605e56282f467ee2ee3db4d6d001aedb362f0b0e3a854779480e7b28086a63e54c26ef730b50a16d4f9b28f94d1a17fb373f4848ebc13c5f9a0dfd9837559b927b4def8199e553ec670e1d1913a16852ac3700e3d52100c505a9e54e747b6f7fdbc757d4a91fed18b1c945d767fe57c08789d44a75c0d6e16e07c3957cf793d10b9839521fd6303d0467f59ab766fccd23bbc90c686d60869f871460e6acce0c0d803a81e00f26fd674e13f76fc01691829b2198ff73b7c01786b9c8c268a61e11de8d41e8c423f825dc3fa52be0f4673db5ca7b9af8108003576dbfb15f3580fd91c9ab40080a95def552f3996cee4c4c7c1d9e5c998f695cac882a3b3272e1cd3ea4f485b44a89a456bc4cbfe48a39c61d27ebd737bf74661079918a13ca0cae99688039b9cbfe17430ba81addb09f63a0915cdf5676fadaf00ac789761f94845e5c066259db698aa254d11559478adf9310913516543d8431df8c245f5c5d05bc24d5a0096d391ce688980b1024e6b630e18ec2b83a34ad11384779ea31c3802347143a99a5b533e551929e4bae199d372779c40df30e51ad933b4a76f68d91d0d6d500dc595fa67feeeb95c7b888c5cc320498fd70426ec99dc429eeee904bcfe8cb66e59a10545bc0b6476e5ad19dfae0842328b9769415a2c15d98b686ad460d24b0b880b458e336c1bdf318d654cf7d07f5d5b4208e3e78a7c0f59501aee3c9ac4faec99643bef68ee4cf7c6f42bda20b13130ebb9fcf5fb52a498936d8f978bde510e17c5456e93fff21c9bcbfc88b9c4957f8439e19d9037541051578d103bc14019ba0678ad6041985fd51de158ca51cdb0622e71077ddd92540e54161c48d5de4c763e04b27e03186963dd4200b7cd3bdf975a7e09a55f63775ffbd1df1403c5e9c269d4e6d936cbb56ea727da2bc3f86adb6c1a1f577981dc2f1400fc568cadef9844aa26a304bd411724445bdc445292d83f48a5119f930eae83aa8502f42c8d08611be500f29c7da19c77da42184f6b780618f8be70c009fb60d89368ecf1066a2fcb2d63fb53520191e1f8b2d851d756a6c2f917ed15d04443564ce1e91250b5fd24e7af5247416631244f241002080bdaeeb93e52fae052cc69bfa30b3d2cbab73b4c697f32f334bd019fdcf17ea5f194ef9c3e02179ad8f54087cd7b6d64c7d9a2b3ba5e276bd324ad72dd9755093bf8aa130a89f8c6815b5f625576713a910472c2e62da3cca1ba6d7f9d80e18fb66e15296cbbec97e95eb316054cd0c5dd5fe9128d5ddeef551fa5e1c60336bf12174add82d23e04f9b207c1951529f8a8ca2204c50545dbeef69faeb5ae4d8ae941164329fac4bf32f7099e20f4569c3e2f65787a2468088f5dc3b337148bf106b8efcd27e1b550f4654f8f10f1fc1e4dccab3033d37c7aad06425352c8d30e02ac237f4c0840aaa3923852f0e79df72fb974c95f6ac775ebc1ee7ee684e5335258e23273ba58f72c4b6376ce175bb4113b314e836551abf976a21cd3689e1bf5785d851ed3775757eb97e85e7d788c4eac91a9a2103f757e8234b4a8a863e160b3e0828578680d0bffe17af34ac9ec99e7b9ce288572c1090462a62579d42630fd0ee2a00c04cf5bcf59470380b9f99f583fe5583e22568d2f614c4e6acdbfecca29bd608d6164291ea7e9b1333535d35a037f33015b75b836d33f2248e8388ce36456ded7262470da7f5e7354d33ae28700e529965643756b1a20272c603469c91d4959728ed03dea2ebfe9eeb869b5bd6d0fa173a21048b83c2f57117cb3ae5b001408f364fc25041b4af10c168db6286651c47ccd5411e3a9dc8d47d308b476bc1bf8bfc332f6963d914f26be6d212a8bf51c22b7a7e2830179d3e5bef4480791664e0aa3a6da0c5af7ab97cb56b7b859a41e8210e6704eee078c43aac8251645b2b2bedf56adecfdb7f47f98c5ad57587d8ac148f39253fdbc14d9880793da73c56a7c04e21aedf96bee85b6fd863b1fbe519c5ef7b5b7f24100d703fa456b1735a1451aa54ff5370178557ecf1ba032c50a2e0442dd6e5e2760936a1ad15c416c60fe1de43f7b1491cb02bc942efa43b25ddb004ef1381942d1b338077ab6c546b44948d378a0f9a273e05ce0b49698e15fbaf4a0a8cfe05fb6b693759d735c120351f2f3b4e075e820ef55e5fd6bbebee0559cc1f4434636f82743b3c161b37c7e7993d24880e9ebca1ac9a9aa8fd93de3012ec41aa089b70d92e306467ca4a8225088f5b7c55950df9c12db333df97685df19d44a8ae52096c87ab626e5072316c233a9d04b98ca40b3b15dba08fc8298b8cc9ae97ae11c884acbc3790576a7dea12738c1152e8d0c8e08dba3d3cf789e2177a16e1dbc0033329f0acdec90302f15f7c2dc431d1552f2b41411e54a0d288a578ab3f02d0b4e66b8b4271f4d149bd2c7933f6302fc92f0b6e69fa7a4fc45f3eaf9af6ad920d92f4842e76f2f0e280d823fa39e7f04563ad8eb9a3f63fa446c5f7e30ec315962010c1ebd32b0e711a0d0c4491c5dd4828a327d9bfd6295d579e192d16c33da67c31e232862843befcddb3bf171f7b8b15a220b1dd1accb9e41625d54cfc0c97239b537084a40b4f3b52fdae689d1883c02d561dbbffd199d67a5afc1477c4830c91b15d3ea5edd0e873e0ff150d8b9247782c9ecb5f31ad0261757ba12a5c8b2cda8c39a3240d4362b7d332e8c8d8b2a5903c6f86bb57255c441f0a863972d4d9a55350d3bba20dded4a51ba2fa77391878c4358803a0f2114c8053d3175af9967bcd0781bf910e01dcd0c906b355faeff3b9ae0cf90e33a5144a44969a99b1d73d6ad42cfa9f1b3154731ca5d17eb2ac5213fe6ab3ddc63c8ab19f7cfaf817c81f09cb7335e8af56c31e78c1a8ffac3b82b91955ff71328e3542ae5acc12504faf9ce891fda47812c238d2d4c11e41d151912836d0ae17141d741d721dfbb6663e2a7a9a7ca9cda4dd4335ad2cc7d8b8226920d0b5bcc8f3e5cbbe011dc96df89777a106db2c4d49b839b96bd253e55bd0fda1bab6c1f67f8b03df6acdd7988aef8340c917f549df139723a06b801e7e07187b458ceeefa6e742c0b9260c16d0d45265c0800ead1365fb790177aa7f478fae658f22e95541ec56070a58c4fac886ddc255277fe8736f7d6457281eb0d1fd4a0e46aa5c35d77289cd3eb4330dfd2fbecc89daa3ad629ccad430a8836b45c65bbed1bec1dcf2431e11d6b5a1522c540d40f1037a42e166ec6738407608dc654629546a115a98cc650a0b59e453a21f21b1b91c5caf9edfe160149399359f953806878c0ba5f5c03c0a23671083479f2c9d209c7b2282f697d5f8b379aeaf85d3296da99f0de015bbb40cd04caa60cfec846952bf3b3587000ef31a8d9f3507dacf0e38ad3f2236ef87d5a92a7e09988fa364bf8e8f799d6f2793cdf66565d5e3c5081232da1c5ab215ef736cc6f2984bb3f2aa46015b5c203ac4dce7af01bd0a11999028c3f8449a3135621e9f1c4fe7367f0953b5a24b705ff803d16ed2c5a7437b71a40871a0b1fdacdd93e37cb561ae710f3fb56fdddb9de4e5408e7427824a34321569b015bd4d8aeb3c04e9a902b40421820adc9b2d3c2e766bb1588ce6adfaab8ecc67438b89f0e993098b9fe4f893b454655b501166b2c18fa3c38613d0c6b817b057d307cff97f1e777753c24d8345e0fe9a0a247da0ba147758c4563e58214a055a25a0c4b0f5bff414c62b92c955ebf0131db3d39c3b13f62d099b831d83eda42322b68d58156898065edf3f8b33afb41e4cc4024c2bf2a924e4ce40e65bf950deffb712caede122a67c7d1ac20be68e02cfeb3b5a904660f3595f14a799d0cba70beaa42eb4d2dd2bf1ee4723f56a9b7d29afa81dc52ec5fc4605d09112157491bbafacfa048ee2b32d472c61697860e1de74b79d1a4a474097eed6d25129db21d2041b97cca8b7285fc32188b1e7302ab460a35b30d86dc7970665843519a10050de3e035b48aad36c318aa36bb642407f9fe788de01fea78e5a0519596f449debdf0c36ab5d914731a09bc876b321fa48ec215e71ad058c77662cb9f0d1b0d7fbfeb86b9d6b8683d53636b8c8adb5576c75027711f89bacce8caa822c962c26715f6a9ba713626e375a61393b663682ace2282afcaa35c5b79a15c23e2207fb6b5e4c48994927397231842e99c17007b253addd7ca765a686fef4489c6dd13d12f23ecde25922d11912a5c9c46fd9a20d1b516a359322869b8e080ec55832cb62cdbf6429d63bd68f75184b9100cc6734ecd4f49d8bda18ad7f131f04d06c19c9786d76c76ab1e6c5f4b49e50837470fcdebc7852f2b055c71a61f800653b5cf76cfb13f6ccd7865e5c6576056a258c0b860935528af8c49861de3ee0f1365cada3e64bb3d7b04cf380a8cccb25b0881fbed8a92b34a12c81b9c0100cff643cb6ed5569de9b2e59a90462be7eb8e11a0ffda406120b823d5f0a8c488d4dea066dbcdd092ec5df12c403c4fe10f7a96aee62f65c2001b28a8bb9115c2ee07f37c31cb84834f18faa8e806bed23e3a48b437351a35775a17822b7115ffeb55d23123458215d83094098fa1fb4367012f43c806341bd06a77f45b0692b2bbe7b76dfd9825ae1092c62db585c42d58b106672b957e3165853ebee580780d253c849b1f7ba28d5a4f8c32b4d0974144b5e111338a8e9181386645959b3c3c87af1ac06900281930464dee80e25915c79d4b4606cfb627e2a27bb4ca52e58d961e08dfe9bf11d65851112e3e44a043f490059dfa7f10c6fd3c4191b8856aefb22fadec46ad54151c483bd9e36c071c82d7b6b9f4ea6c3f3f32a571d2037c561ec6d28a816788661cc3acde0409520a1310676d1b31b05c2932ec8b4c18bed5505771db77cd32e7ba733a122e5e72bb111e04b1f44e012dc8489e6cacae1432d228b6793e428d77fe94968bf5a5b850e3c333734b131e45fd0d7acfb724569d5869c4cc918aa3c6fc87d4949b92b7e13f77c07baf348221e35b73f9a9e0e7a98cc28e1109250ec6e233d3a6118d9a340a686d6a3484745e5828bf3b1de24a0a73ec386ca8b6b70746afc4fa31b7796b96b6361805fec2dc3933cf6f192fe1ff8efd9a728e9af9f2d97f3892ec9a6248938796644d732eee2929cc395d2a6a23f32685a38403a90bf61c02f68929e429d1d0a08a2f25388532090ca765f1ab7df80fc9f8737e37132a5d1956a99e75c16e8b3d12de96fb4a300d8a4ba602e241f053562eb374ac6584b0434cb24a719550b8e74d20cfc48359fffa3d539552927bf5e1e0bfb0d04ce1b8a8ccefd5a64603d28e98b55b91a21a7ae5437542a4418226d757d28f77862ff580f9f6d54e288ab84242ddc1034496ad620d34c504b1e3b7ad7e2dd75db5d17297b321ea98e649b6e194d388a944facd7e70cca3f34aa31e1a43a46bc7e15471409ecc3c1c7a6a860956292e8d8fe9d687b727b59296ea986c53cdfcc21acf1ba0f4ab5167384754bb2a341e3de499f9fdcac4c7990579fff6a5efd49e8491cf9558bb84749fde5b03dbb37e29d3e92fac09d608f51852f40b374b8ab561bc46fe12f6308fd3d3a94dc55c90561dd93cdc3846b338efb51f8f689db8ceb2dc8b511ac6f1c7d6376b8efcd8e3076b8cc70bedb61ad7ad0ee1442db26fd54986e497d62ece4f03a12b51b95e477eb05a6fb0103f6f15a6825d5624a26186347c69b04a210c5124907da604b89e0c446bbcc4d0fbb91f789e75bf155fc0dab77e6c4c578889dd4e80dc6da0ce900a96b8b10ee06061745cc528f36603420fb6fc20c9bcf9c06ef8f1ce52920f7c553cdc1a52473b078de35ddb95c85801b88acb1e1423a81e0455b016c195c78be2cb65e1ac358986384e8f9c9ee2343a60ae585890d50f8f80fafa18c40d84e7860649349f5477d06ecde900679b1d66b82a040ba3e8d164936dffa3565e9372a789aa3be0d5a1f5f330b28c94a5f22cac1fffdfc62f71563dfbf820d6250807910473bfb708c3ffbae55dc33bd510cb8f588d34f9c2d57de7cfa76e5550f5f554beb6dbef63f679f37cf3a96303f10e85a2f1f185b1b6a9817f0c3ab4c7ead79505910ba8517e16566f896e506497fc17e83626f3bc51525f371f43b0b379d6168d70f213c9f3f95a2977503bd6e31f839e52ea468d0b4f7dfa508ecdd566b5fdfa18ef2da22b97834127b00b3a7b326e55b51e3a74e3c6dd1212f3e6e726c3d6396411bcec929f8b3b87cc1da63cda817ac9983cb31eb1d71bc1ea08d12c065431c7d92115f10eaa66f648551ea79d108d199c2f86a87c9224370c97887548ab3b5e304aa9433271fa8a10d7b507f62a8e1bb68a5f1bbe8a01af06968467f6bfc02844b1715bab5eee32289ebc4a0b3deee75cbcd4720c8a1cbb86e0ca329d8e8751b8bc44b29716fb5566cc07d69d6ce1b8316042f549a26e0c67bcdf0ea5395df7874eb3e93c085676f9e845ba9635533aa46668e581fd10a579e5cafe3ba4cde9db7d481c463897e612d9b4cac1c737bc3862af2502bf80ab2e0bf2bba0e505072c94c43de688a42367517ac3b6eb4ecf792c7e20adf4ba95eab3652c38d748792969dcebab022b99c54ce0f9b7a5c0043fd165c9dde63af6ffb2802f91d0676a71241e76a0135d7acdf56f5e31fcdbd52a8dd1273fd7daa651216767bf2de48db5d90805174a8e9785a60301b312fa9b57b935d0027fea6710bbb857d9a373b1f0c3a557ce9b6ff359361cb0d0716a69e021a40b2d866a89b43444d9e1d356ff66ec72deef66f957776735062cb83dd8a9893a4a2b67456d07406be664abbdf6e250850c969cbb9381228b1bc06635e0b95fd5458d3fd86402001fee2c5acf45f5ebe357a0dbcfa83d1340de9d3858976fbc7d5d15ce43e14b8fdeabf90a0ccbdda360c80efe2abf0cebf5eba18d59a6e5154be734a9f2cfef93616f84502a19fd03a0bab04d55d1a88173b2fad05e5440843f3d397a94f0e8204e83e09c497ff3e2a6440d72d9b3e8c9b8e46ae7342f7c7d5adf7608001ae09693140da863b205e43b3179ca8cdb9b7745005538c91cd15cd11b9f32d2a1dc27f698e1aa97e31d6c0eb7666437fe29bd8840faafe29bb55614362478dbb528e9bed9beb753a453e9ae1f22e869955b9968c4cdff8fe6b2181ffa857cafb130316075e5434c438300df59efcd1207a78af6fa38673174842e80e307e85dc9df06fcc8acfd650daa9b0a746f2dfcae9ce0d36e5c624300326d6d0c065e5a50ab94bacf8dd10e9303f200eda6c78da1232e9f4815e436ad1ac5f3fcaa8ac51bc6824c80d61cc60a10b71e1119294e473c106694d108aeb3ecb13947a43454252222f0324bba914ad683224df3208794cc2df636c6394ce7e82dd54ebffe8c795d4c1d12da10069bca3794d421135888f6aae67fa0b5767ba4bbf2810f5b9129896f394b968e94609d12849d34d8f75c6527c5a8b5399e1a36c3076b8e73e1c7d351f75b8d42447c334e8ccdacdaea8b869c137f047b1430a3ec721c17d8b42cdc531d4cd74af3a2ed5b273681dd789e9e1da185754e8c212b61660a333696b8e778b5a449e4fe46ba1fd1bb4500099c55d82a24024726f058c8b2b70a8a7f08fa48e85cf815f792fd838d36c36062a5f36d1add65ea25d3a169fb589ee9e08f799a21ea33113df5144f5332cacd8c158497551cf1242243d8365f24c60ad7d12741c8711d0fac28e97d649f43270ed9d15c4e90933feaf3011316e2e31c421fdb6445f54352da072d1428a3bd5ddcd207781c91b17c09fcb3de7f5241de79c25de5026d69ad274f35a767d5fb464cad41ebce915daefa881b460fe296f7bb1aab81994848d9a8a58775a9919d0f928c71e343c18d0f882255252476b5602f979dc99dd1a5ab675460c4d43e9c4da3afab3bca6416c81f9c371700135800b0829c03bbf00c3d8b939169ae81f84a9abbd45b090989ae03c08f95e97490aabecf0ae251db015a535866b9ed5bb53fd401f20449b32f8cac36890d85d33521c2306da183dbbf5a9bdf98cc41c0c2e1fbb6aca3e8fc79bce1a96e2925a81e3397a28fad4f1c32dea3eafff1d10dcdb251baf929a6e77c1dac2700d9bf3859e90cd7385d62fe4ce105774cee33756663ddb63ce59913a58559d25e5e3d92cfb8fa080cddc078d666438bf6e0037b4dcf08292229f04918034f8e46c13df12f8d2b3723caed66dcb47d238b95eda2acdd81427106008e92d774c014540c3f36ed9310f0f03393a69cae10ceb3b83833301bf17e1f086f4fb1f0dc39eb5e5a8e3755aa190b4b39a5be1dd38f3340c90b69520e179a8e7a703106e34d6eb2864d5c808978209b0ca94a4c9444af0efbc8ec724a324db4dba4094f5da08d9d6d488502c7cc1da7069fd80db71854f86e70b742505cc7b400ac6235e30bdbe75cd82f422e14f4f84b695828afd816753f98582907bed711d16f5f90018778c328a26aea0ab87ba3ccdc119d6249f1575215809fbe271f873495f5aa20cdd7da7392394d8553cb121c2e956284a3daf4da3d21565b403e2b47e66907bc04e9874b2bc75955665d16d5f339ab46d9530a6e104619fef9e7039205bdd45390a1fde6b12056411150b26bc2ad3b29a6a4c0412743ef2a06be48a190b713d907317ccf89afb32dd43e730009e52eb2e8009eac913a3e306415d971200b24fded8ab6e9741ea00527e858da09452fee867a7af4e0e2457df16042b98f607ee79e2bd8e503449b0aa30448bed1865d7e82827a17fd1ab3d8e48122ecab72aacf7f119d0578265257ea0dc9a9b7db138b2669bce464eb8e75650b0f81f1e6f943b56b8fb96619983bfd3985282b3d866bc7deba608a542ae2b4af7f5617e7ae07254ab3141ccf8081728233085bb1e5c8a723de6cf256155cde393fb42870e8a43e4f55a414fe42c03c34219d1c996165dfb9942d5b4365f5b911f6890345c9604adca761c4b9c704d5a6506aed0ab1acff96fcfdaeb993af91bae6b63c97e678798ffd96e9d2e0a1a5be53fd98b43c12701aa25d148f6c0b26e30551f853f2010de5d2a9bbbca4be58082c8c736115476514fa3de91a24be4ed64867263ebb114ca0a48cdd98e1ee85045c2be414d32fc71dbd748daebe50e398d960c73265418de174056c9c46320a5c9cabb292504f85c3ce2cd94c4bc8013a14d78b244d47eac798f5727e9ef6bcb111eabeac2c7f6f5b0de017f7e3e24dc12d347da217234c86b67b055749ff6a3578afe1738829c19a6a8a12a55780669762238567dcf7b2941ebb6def723d57fda277429dd546f91d6d45b088caa7ee573aad578607022d383e57017ac27da6acde0acefb02782518e5e3b95d3fa1765821f196863a1076ee34f5a954775e647ed4f7eaf7371230469abd5524ebd78beb678239b363fb78d701b296440d354bedee32a6bf3ab84e2f8ae418c54311ded71a857127a4c99f3d49c48289ba75f37cf971f244af13c5b7270be95ce656b878b6f25a9badbdb98fe7d16c09e48e850a039fd569090b8a23eb15be7798199aba54f5f4f28cc5b376215bb3faee60749e904b7eb19e4b8f3d78126bb7c2cb8f2c0644a770c800e40151fa54b6fd8d29cd74d052f071d927dfa5e040739358cf831abebcc0363576a8bb7d666cd17e2a8684cb3c61e45e03e07e17da3c9448a3869e92e906884cd068db6cae39d0b273c76379e3a4d306a6bab2961bbcacc9314fe91a79787c0bc9dbc4c2be08ad16ec9d0f838a7f1f865d7a5441aeea349899e57ff98aba340044aa1230296407998db72306c7ee0862cdc82bf5a5cbc947e0bf634c3f98d144065b3f250bf3f08996da8ce8cd7f87c4a32df7b65c03413ff42c8ed9445e556c679408cbb75acbe95695beaa5a80071cee095361fa739c508afac9d5b84718eaa1bba48074a86c01b255abb944d4e64a0751145e967ceb35a71e1037d88ef507ebd60fc02ffa1bf6d05eec5271055464b42b0955db60862fe35b4faa1c26077c0dc1dfb63a2d9d0a4a506d1671d2e571ccd674b50f68a07cf79c6d93636b90e4afb3364533487667bc77d1600f7c9d4fc7dcc9608652534393397f268cf3d03336002a67371a3cb4bffad6832886d9b12b764da4a8572f5426cd36471a0053f68b2f4ab9ff9b1770722c5edc140c9d01ce47094e63f0a8edb4a3d199ba8aa6ed100348898761cb036c2f483b372688490ede6fc63743916fccf5b0add1e28c38b17b40e9455174bee5c4bbdf87aae2e7313f32b5a0a80705b3eb30b97d8f5278f005405bb9262e1278b5140061ac7b90e61cb10286ad2ff2fc4e768b362266932bdaac998e61cb5c93af5306767b0bbde762407c30b9895a1e7b27ab9f3cb9472044bf5b70a24d8fcff8f1a343e32a3f303c86900d314c7313dd12bd4eda74c5cc93ea6c2c1eaf430364a5f1d1dc1318486ee3961a2f92293364fcec52ef739578051496835c97e5d563293e8fee0ad6ab8bd824646775e5d57fb5e8a9c089926ddeaf4569625bb7ed2a057479cd471f3c51279ab31174f99e763677839feaf300a169596431cfc3a7f7578b1e7ff41f5c58dbd90f3ad74194339ea371deaf390c4eba2a97d6556ce7172d4d5288ff568465f2e8aa303719e65491654916f6ed8842bb48941c5e63ac1b166b242aa557cd07dfad8fdac6cd441008745f07daa957ddd7958b7ad9f9b15b6981e5d02e841d0c0fbf75e4a0f0235d005adb8db8f4b0842c3754e82f1591e456f44081d9a21d9d80d1cd13f72d985419aeb21b8af04931e56b4bc2919fc6ed7668f34e75f9c7ede57a31050f2471487f3a912f6fbf907e97b049427bfb15b92bf0cc4d34918e62390f8a587f10322b7e45c5030e8f1143c38de48dbc52faa1cec1f9fc781fa879832b7cbf3d146607dc9cc86ccd574c1601ac0cc6636e1e2d16a504838f5f84d0b6e42807eefc580e3b26c8c0927d0e3f15c210a627a0ade96b7701f7172aceba853bb7665e3c154121949a7bf386b3b8163cecb00109a79f4723d810825acf10046d6d71ed3e60dbbe3d1b09386882d4b8ec759e7b6cf279a2746e2671417446435a35200d85ad53006413401bf219b1fcda7680bfe5a2e7c686ec93947c054d4161fa8436aaad7a1d9444cc6edb90ff1c70d001ed1f56f6d6da1cbf3f5724284455b8cd401dd27ea7fcd05ab277f21446d78813887249b3a9de1a6d9f5629d18765e19ac4fb5864cdecac8f349b10e62d573af480044687bc69c89ec6dee28b85770a57ebe0865ed4995425ee4f8772e35f7db1c2a3c14095c9a72a120073f2c68079b5e193eee9c7dfc0762000679fd19d9ab89a939a3c3464d546e8408a5734b5678874b407fda196d8606b2b8efa00cf7d2283b13adb863ee9999942577b8559d3d988f3f502ede8ec97c6c60fe50b9478db39740e263d0d40d72eb7d942c12f162b7ba84c8ffcb0e396749aa02e87b385d4dc24c9321cda502dd8a11b38d6296362d4679f48eaa22c3ef825dd9d4f73eb66c9c2145ff613b9279b7e4202402329e340a98f2d3c19dc4f17701a03d43e2000f47ff4472f87624bfda727420618643f5969ecb035797ed880dc90be11ceabf964ada16c70bc301453d7ced1ce936beb53971af3981f63901a9ebf9866f7a362a7d426c0fb54849c2a8f6a0b8f259261668245d2cfeb201a3b1408e5f1c7f152b2060ca67c4eb51fba2378181dab44fa87db40bf6de73eaec6a87e83e95a6a19940663eab264d2e0a1f736f6a44a1a14b8284073e9c40eed32d9a38fd959b9f1cbeafc94d65132f1cac1621d667b9d2679d46473a8fb8900f153f491fd99ac12274ade9d32a7738fd6b5e150f7b63045ff86085960cf4343248db10f80acfa35886d92ee17524cc1f3ed020960ab3b64ea22db85980c3d31ae80b64965e8c79ac708ab58f43edb99539cffc5b4e4e1e7d86485e1331986d9eb238bf17c527d51f986bc909220be1295997288f721d292a98c8955cc76669ebc1dc6fd128835e3e0efadc02778eeeb1958d561a164ad6dc45383e187231f21f4f8e4ed599984ffa9afb98bfefb60c52997a02409dbe0c8829250d9323782cec195cb72861716dded88d2398ff3fac497599c25255785d196e3f7465917f3cd33e07d0e35cd026ae9b2c422f1a8cbb38fbb7b4688e4b82e56d9de92d50bc73526cf52adc1366cb1a40397349783f7768aa5fffcafcb6614c605502ef0a934c241522aede8fef3615eb0b0b6a03f644ea67a4875d7d4dfe4e6f4941b77149bbe20c35a0ae53363ef60476f976523c96b9179ae05f5281a0d541b1dbbac64bc22ba623bbf9ef9732127782245586f499c0e369832895ab056f4fc12d965e500a9e9f6c9579e3fe04c683f258bb6c7b8d91e936e5c93e3ed6677e695fd5a228c54d6475b81b50d4e858ace06b5647915ece5234df9bedf18bce84e3f40de6c512b38fdeec6bad0000c219db4cd2246b3d6c25384084c2085970a9b8e0eb01e1e0c4220ad06f9e1736fd1789067dc6a903a17338a6056becfc427c0cedad616df5d9d7e879285ba93ba335e17ce4fd94894480ba36d3bfbd105dc5af4b0a4fe42720ab2bbdc22644c73c7ab0d288f5aa00c23877831c9799b6638b208ec6bd91abaa165977378b08d1999bb483bf6f1c4d4b9fc609f42a4d84e715ec9cdea90de176e4fcbe08d85dccc64abd90c702a8693d08ed34e2141d02aa83943822065659feb29151053806167c92d96c1d6f185b2bea1773c520a0aafe27795f2f9a0a05b1c2f07eb204a31a5c5cfe7c65e987ee51d9af8e3a1aaceb792dd38b40e3838a523530ac703fce256507359cadcf80dd797206edec88f991ea5d7cca80258358481012a0d39681e6201ef5e465778504635c42c93af8ee68fa8c49527bbaa713c6975e810ebcefd3b2697d9b2435cc024047d5f80021b394aaeacdf75c2c8529444158ad828c8644d64d7572bf016a7a60209a2bb9e7756d738388627bfdc625112b932e34316a61ccd7ee957482d95ff092268bc9cb9eb1d1c444dbf2ddf8c2e3d05c1433a18d4b2c6700879a78d02ba9ac4e7b36bc7ed45851e67930fae2f1b93d70b86c0ce56a7c9d1576800039a880b7af7bcdc82136bdf71e351f7d58e4d171bc74ede2db1353106ab0bca8d04495d10fdd7d852acbb02502a87a931b7c232a2e084857f9bb52971af65e0a6a6e1acc1ecf9604b74526146fea70cadb0e1105ccefb114daf6cc5d8d61a4e3361444f873f9a1b7b070b5397aec9506cb81cd513aadf4661fd1f721325be4d1226c39e1fee78ae20a77752f3ce6c11e409a884dbea381a9537d96a1b65826888895a8190f1d0f8ae5a637d4027ef1dba303ad273d0667a571a710261373d8d046c06f3b5ad7952563b035bd7780d77ff743f3fc1f1ec20a24a5cce1d3511685452d73cdd1615313cda2aaa0cf0e32c0151c1afc3bc4f8e9ca13fbed554db3adf6d92611437c95f7ab8f4f8d842274627c9046f04ae5eda795ef07025bb4946ab4ee1f9a101c94db8e60c2be4517d881d8eda3fefa4d65bfada5aba3d47e0f94eb2ddf17736e10be15bd8d85c4c72e18c3ec1487ce110ad54bb87340f1b1c9c35f09108a0904352dc9cc6766a396304998c5c2ca78a9597783aaa0abfb51a53ded7cbfec578f72fea9bc89510606314da3396eadb4c68c69d66abc92be827a73ed91a730bfcba5a17646ceadd531aa4631a91ec1dee8f8290eeaed21f4ce8f81d9ea293d7cc3898ddc01df341e51a901603a46a16e12550108678e28b0fd1605dad721d3d70e02d34661e2ff0f5150669cd5ce43134150c7d6734d41a58f966527455bf3ddb75889dd6eb6e6fd6a3331d0f9dfd308c11b09d879044f0f03b63197475129dcfddf79d6fd62dd6572ca3886b45e1a832a7cbb1def30f49f74ab89eeae6ade32fa9e969a4c2878458745761cb7b06224400cf8fca8f525c7ed50dd5dabe1134ac28e3d654c569fe6aec9dabb74dec54ee740926f0c1df400613dd006893272bf1d7d9ee93aa0f3fecbdaf4c331f462fd8cc366c427c38f9bb19323354d991ef37179fc714255ec406016d1d78968c55f6dd6c44fce078d877dae00948085f71d89599433ca9ed7c52c4f76dcc4bb7abe20152500da5fe1f05bbc65c952b1d947922ba4dcc43773dd9e00a6cabe8b2a9169614fbbcd5347b2bfca93c47e3eab6f9dfc54e1d52784ca3354f1dd3275590b410e3b5c096b7fdcbc6550441c7090baa23eef3435240179502f1c276a7474ce683ab185bafb1dd74d241dacf76c01427f0eb61734fad6c690ac31f962cc3729f0efae7dd8fa21bd14f33a1624252ed637b65f3adbbf97860c4a91a22a76fe5af6bff5eaccf2ec8b13616d396474cb9974a4d3d8be59d33f43e9449fa9e7a861fd3f39b815f2c193d0df57b0ada48da495f8c04ba09b77324ac1d94ca5bc75fff158c44b0b35aadd630eb468e03bc529bcadf2e20eb96b59d989dcac414b52be442bfb697fc3033b0fe6370c35d149275923716884f9e7e330c189e9696b8d7f7070cdd0e92c6dc2c03ab7a3b11a19ca9998f76036ff9add017294dd139c93971fc91acf6da7cd9b28bdd2bd83e31289667e7dc3bdc3ef05e4dcd0ff186ec5db36238f5540940355867364cbac43dfaaf9c15d0faab3e000306710e8eca80b236b2d9c63ddb130292f63613f4fd7325d6f1ba1816f743641e4704fb22de2f7d6128ed0f6eea4e49cf91998c5fc150e207c5896027bcb089950cc11e0aac7b6f88f6952c51c72b4e4df2f0d9d404d1037bd48c4697e583508a18698c962b2e407c9ffc55a359d61e6b791f30ec126499ae9236e5a5593421d41a2ea8d8d9cb689be70227fc29d2c83f9a63140e02ed2f357a3bfdfd02bfc7c6906d0d3d4d0ee53a5f13a906dbb2cdff3881948bd3bd3951dd2f1d86d6a6b7b72dfb4494faedbe3e4405174ba7799566b94eaa545d358b8feece57c0561cc57bb7eb6f229fbd4ddce712de50c49ddf61ded079ffe698659d27989738bac9cde0e2f8ce36ec7e0b24522f520877af128d63cf2ce6af45283b688d125893994ec28de05e8a06b5d5ea6dfb69b0204da08c9b20cc86d53055f0ac2a6258b4dc2686951cea052e6f1daea08820cd21ece9364a3137276d69ecb0b6360955b8557792cebb5460a564b6cde8741c42445d47bc5ac1f5c73d081e653e2ea2881bf646eecab1af4680ce8b31c5288d7caa696493439a4992bcb274c5b9cabddbf898fcbde5c767f4fa5bb6f65689d55afcd2ab81106fc69f89c9c6334c57fd0303aadca09a5da34541f89fb42351cbf38c042101c7f785b2d879b3c0ea75344b96fee10b2bf7ee897123470715e1a5820c07d9a47d2ce4d73fd43fac83cef627c9db20ddab5305e55bc82015165ea4c1979a0e175d0b23edce52bf325ab60e179a07aa69a0618c8e1a3415bc97ee745cf0d286dfbc675651502a148a2b1fea89c4fd15e1c70579115d7d327e40849fa4e0a21141a8cc0e2edfa16e8d8b9049c296dcc30f5fb304cbc23be498370e5e58faca3761a9c3cd49d09d7070be439525d39bbb622726e84c1325e8441de833f523f25db6285f9272af08b1de57cb38d4360815f472ff020df3adffd1ee4dc613f68bedc26900116f4579fa387db60d5fd44776fae82668179c31749db553e2d88535f85a029c16a0daaa6f5337ffae9381a11ddcdb0396d47a2839473cd9ed984f66fbd256dbe98f547c97cd291758c5003bebe2a19babbc0c884c788c4fae2b7643b0ba42fde1710453f869127ffce0a82d589fd70f0d255e96cca39ff74a05ffc5e752eb63c9dfd200c70e1d906f0a2788d7254c4512071c765008cf771ecb7f7f4d5ca06b5064d454d927117d64d169e0a99ce3d091934505a97efb0ac5f6d96a38c40e8a195642fa34c7c6127139e35e2a79bbfebdae61ea9dbed4debaf0fbc10c1358cb7e27586d5c91796999d7c6146adfc58e56ff9e604b40168309539cd642a20114bc41e76b542ec8c32372e19650832331c73e798378b58252f4e231c50a13574bc9e64efb235d6614aa3c73906f6a302e8816bff2138cd06b793b74095142d1f330144332775b18a49f567193c3bd0c545f9cdfdaa0c0306721f4ea2ce96890c1f35755e3f958539f8b0119ffeccb95803ec7f4c0013c848cfe3193d5d24fa890c5829339449f7740130125a0e97685bf07f599bcedc17c202c732df34aa02af68d4a0a10f86184a2aeb146840e3fbc8784ba38be8e52997bcc4539730b28d65a6fb4b106fbde47be1d0a509f8f4a8a758819d3bd66704ca9b9d7e8b0d4397165d66b78cecb33243319ff5edb8d5cc81bfca4e653ddb48f41c18ad4cc9b794cfb362644929d1dd541d6a450499358b1e24d7e5d61747f686c2a5e3a719ee9adb0655715b2508863a822a8ede902814c15f0e12b09b913bc299604e1720d02fffa0fa1df055794fc20912abb42b323bed3d06faff0dbe84489b3f1e448ed6d309a2ad041ec4cc9c909229aa81bb5224d6d30bff0c965118eb4f8ea452098302a67a46e192d03d5e58c5910fe7168b14b21f97db4444fcd6b9a56899811ae666806c7c234a24097636a635638d4c1d36afe75b562b1c033dd7fb94c9a908a803bc0d83f0daebd419268233e7858ab88aac6cf31670a7adee99683e4b57f7dc635448f8c6f75976eb7a2706e914be13eca16bee11f4505e9b394c42e51835a07207129d77190b6abb1aa88f33d5ecad564741caffab1bb1efcd587ed49c88e2d78cae68a42005ccbf7937e2b0cb7d84b031fd77284742fd74f8dda914c9c3418d3e301812e283256b38483373c427a61b2c828fc44717ece67a8763cec771c4691211ea05efe63c6f8e005acfb24c9e916f5b3e25140ad43c1aeca739c334728078418ea43f772ffd0d0b8fe8fd77474d1bc42e8b1290684a8ea6a0fd8db35c139e726c7db3d3f10032b0f1eee9d03701c0beeefa5f05319aecb50179dbca5c3d95cf425907c3bab304db5f92e511d345dec7fbcb74c424d261251fd7c51b06fc64f3ae04423f1274a29c35b26e470af9ccb8d60f0e93c8c0891a0f5def907aafa484600c35da52db4a97601c0af3338f41429fecc89fcd061eb4238ac81db92b60cbb2928a102056d16fdcd76a14efa8791b090490b65925008d7ac7c2053dd2a57aa8351971ec96925166c6571d77f8501d8f89f18d1f9756f3af4c8765a6b863cb81fe2be933ab390c61d51f46809388f8c1106215e4e5439f3698d35bd38e2e68a2c1bb54ea438935c7621e2de42c4152283e691f6757a0ceb68ccd9f031983bf72857e320e1e9db751d710b48c0a39712319fd75a52f9962c1902c9e30c747beaf746607a1658c87be605d83adf4060eac27fbd18b159aaf98c0e6c36dae527d69cd539eafc7f56b1018006a5fd39d350fd4dd83fda1d70000cec56e44bcef2e1b8e064f6f756d6c1d10ad90f3ee6620f629fb11890bc7525a71f073a37d6b35d90ab1f6537d7842883edc121f3d39d8dfafca5ce5366488804f24dfeefa2a568543be81b7cc5cfca1aafa08908929bc0ccbdec8a6995c6fb316f9d48e1a99746d3371e6d202e4aee70d8717ad71f87f58a4f1371ab4614ec5d9d2979455b477fa7435ec044c532723499189d57b9979d9d7e073c655637ba18a0e75c5c5a27c4851e070e8af4849d6cd05f7fe4030a86a8e64c0fb2b05057ecf1997f20393be7a172fe49002b14bd4dab97adc6d3b2a44d3d7f5264fa37082969a1976b2765e0d8863e619e98ff3f57cc90223c25e4436d829dc4583f8d6425a9aba6f35cd77fe6db43dc8b24c88b5d1957a45a52b26ea320622970c69d7451c582ef6b45abc6988763526f470239e67d8375cdf14323bfdb083f63201baf2bb5915c282340e0c0c594babe3d785f2041f6bfa532b648f4dc40ce77d53a8cd7294c557fab1b914d42810b0c3ca7ad6ef1d4674927a6fa94014fb37c8822bb4b5ed4a4443915133bbc041ff1062cff1a131075296c09421de5798a8b79398dd541d1a4d1e4e8d8c9b36382ceeb33c4a828333284e756403a863914cf20e35e26760f7d50864ea02f999a101371f2812a876a099194d1144dce5c3a2c3e87a45c31fc43fe1c401bc5820829bbb278485a76214fb85f814bcd83d61d2562ad881f7ec37747c95dc94b1a79b1651699054d1130458a3a6c03ed5956d644eec6ee7c75013a9f84eee2aab9a0d700d956fd67048e49ab3d386539b24246d74718b5ab70c4e01587a26c757d3e05b275c6cdf7a27f9b4a7dbe3e6154bb8b113f5c7f4e4ffddac4beb486617c8693c24a1490d1b66083b5700c48e7a64c02d4f5e4f2ecd1ec0689a573ca1500db9d86eeb8682111c7c472a724ea4dcb46b3cf9d26740cdf94c2763efd48f36eeb661ea725a28d0c1f8fd23a455cfbd46fb69a4dc1d49d72616fbae17f935cbf1055ec73126511ba78ad6d9a1aeb932b8ffaf44522a7a23199875ca4831f6e04580bbf232b7c118f595a6cc1c19be97ea3c5af4265de6aeadfad485d37544e58a92c4c3fa412d4a5a4a7eea1f0f6e2db6def883fa733663521fbae1e1c112c6018ec1397e263d22a72698d28b63fb57d4a050ad5950170f5941138421e6caf84c92c86e2a67045ef570b13153974b199c0864ed6360faaec3318948a7ea702ac04ac9f49aedf6223d814d33d6a8513338e9bc444881e142db8bc37bdb93220244a19ed22fad068591adf8fee1ab17ad4c93232140451de85931bf2b0b8031eedc356ecf788c079c9d950e9bd9b1a7b648b864142d1b3a73277a1fe61b58048388348cee5e4bb96e92e250d3a1b5489529e86a121e36a89c983dab51ab17f7686e55646ccbb06eb2c694066d0c076d88677942bfb0ea13bb40b96388d34c6d4da37a5c31b2172c1b1362ef83ab8c337bf2d99bfa496d2c6fe62ec3badd36e239a394f4c43d4299726cd8e4410d16d6347c173a75327a97d2403c54dcdde8a3486b7751ecd380719ad3adeaf5acdf1b347a004016f3ef0ce954b8d11a152d3cdd30bb34afca690e9a8f821d429ae39b7e1ad53e977959342b7efd8b07ecfafab261bf5cb56c14ad1d2065eee08081d64fd2ca9853e32941c075012e58e4a12115def1574e9f3dd70cfe13b98cfac725c9c0ace67501064bdb115cb60757611bfd8a9a4f35512aa68960c9cda5a53b5825675669c264e5f7d0f2b334738a59dec4e4692f0fd75a46685488216758cd0100605b8f662939b3f3472a75e07f6426a8be13e6ffd32744fa8b7abc26a0f215a4b0938fc38a4dfc9725f9f536759c1f79a338325bbbafdddddf25c19babd163b926021f3c69250a5f6d34673cfe35a50ff24a71db36bb3f8bb11e18e5522e41081700f938d3641465a17bd94bb033c233b8ec0878dbbf77db3c7a1468046d72ee6ad9f467d1095923025fdb3a250abe8fb21b8fecded987985e78b3870ddb70d0490c9320750d6e4ffbc2174eece2dc31d3e43742d80adf6e9104f34c77684c51bc92b0d28ca88e4d2d15d532187bb0e4d9b6a72fa6abc69ec0b91d60034951ca434f347524cb755489584f2536b86777fa4b76ced9e15ee53e804744c6ce13c05dfe06d574cfa787fee0057648ad5e8ab85f6b195fdf97dfea18b747fd5e310b80a6093043326ff879942cf0851ca9f13f8bb8f4b6cc513544c265c54072694800a0ce9e6c559b8569c85d4664179b5c8eb481535fe46091c9f77ae00b78431484a51c949f641622fc1d3be84bd8f27752aed4d3284fed62a77bdb9575c4da117db1dd45aa0084db6bd9d22f123136836cddba88d9ee41528f81ceca1dd499e353212fb7af4d81ccba0ff94ccb5eed96e4dbee8294ccf4e4263286f53ab8292d07a425fc2baf4a330148a174dfa09fa0937eb6f87599b2b386b2dc3b3ea739e392fbb2a165d15b83f1279fcb31e154ef55d2ea7d60b54e3ba5c157a9a2fb48bcda6f1633c6017e5a4fd10f1df10469c026503eb3e960588778723f80f0b6a2f6a9a9b3a214cab0dee71268739b42416146cd09e2c79d3a4a24b9305545f77bf2681bdcdb3e194ff0a3a962d1d1474cf04a6a4a1eabe2a228b57409da27409ed8113b5a8f61c1605aa10a9a0e7a63169473e3192d0708fc1aeb9fb47b3d7f579ee8a97f454488a5511e97dc18a06cb2116d5f88cb892ec6455961138374bafb099083ab8790b7d77742d60b310f388e161752ebf884acd0b3688f40d865c4fed4175f1d5efd14bd8d642911c284ae743a2d3ff22ae97bc5b5d22c5e0c6b1759388cb706f9b5b6af9962ba4586234a05fe2113a690295aebb3e733927af72c59b837894d576644fc1bf82e2111b26e57397a9d882e62ffa400d0306a97924400357b1311421f6f6c46ccfa04688a16c5187c342ea394f7e2701a51e6f1d010274516fc3f5bf6ec87a6b49403f930cc20c6a7fa01a86a4be2bf8384e6bd1eb6299604bda7ceac23cc354cf4e3a5a80a0ae398547b4690d77197c3168b4a27eaeb32e44653f4b3cdb21fc9434d87664be0815bd9be613ff3978b9ccc1c9ac09fcdd66f327c998908fb9f324fe3727e89b4df10791a821007931b42813dc075dd86fbdfe3a3925eebbf6d92edc0e1507b7be89769139fd79015a6c47f172a8f1f6178202f918fc7dd2d14e4923258091fcc3d5bfe47c6834bda162bf99ff53f204ee5e2f616fa8a33674e1ff3bf44050333eb0d96554dc4d19224d12be02a85d044148fedc2baea3e1a4f638ec68e476ee4e0554f367db4ed9b1b2fb60d34a273548553c45152c3321b2a71ef8c4c5ab2048f40e0611940c572d02663d59b1192710511c882d0391c7016a2454890c3ed046e7a179337b3aa197db9654230f45ee48948b9389086f0d6dcaae158008ed3058b1d483fb86d57ceddd1d211436968d4509153b17879005f0aac6a3161b04363b9d0e50f4358178b9a943f8ff279683697bf42b0130c2117451d3f049c22ce903042875df74543936fd71a8f2a3a3675859040cb1f8ef1ad53e038c4509eacaf2de0bb5785e03b491de333a2faa90c16e07d2b3d31787fdf2d1929242d0965a83ace3a644fab959898b3033be83794647e5a0a14964cf8a96cfc1b32f7a97c528bd384df22e97a28ec3b9556a1364aa8a2aeb5e5963f108448d990b92404d03bc54d2f41cec2bce5ed9777f67166470cd3cff40c50bda235d63df14a7a4964f8fc041a721d10b1940bbfe4f1eb9519a80858849c7f5ed2c796a01c68cae3715f849c294d67b193933968c8e6e850fa0591f0ac7e312d5bc3d370c125bd88a85d719a68dde4415be83ade6bd1f981dee757b8230c11a3e40090fee9db9c436a5cdf69a7b13112a686aee271841c23687a8ca130dc11ba8411206a86b8ae3e024a2c79cd3924c98e92d2f1842b791396fa8f40746b7070a4f08eac1b18fd410e26b26eb38e2eb9dfc271e7bca8ad518a63bf6f77874d225645c4dc7315879415c837be349647df41aad07813aa1043be90606103dfd6b369d637e9a5686920e72f15dae73fa0f025aaeca5c7ef8d3c343b8ca51039df7bdf6ff26cdfb29bd4311a7cba928896968ae475cf03b59a4fbb44c765ccddc8bed3830c57d42ce3d05ef92bcb12eab1d3796fdbf2fb0e76ad111a190d33e97519ded7a3c74f9d07ea64f1f75ab5412946f7e1c459bb6f31dd5e25a9a0dbeb25fa2d131fca638abbbdd314ddde94462e26b507b6151999cd78dd8788e01392fd11833fe0c2d85fbaa76790a358094aaf1f96e5bf00f5660d76616a99d6cc52635dbbd84371172b4367958ee98a63efd4da7bb76d65829572f4bd3cb67b99e6dafc1203c05233736d5102f82af07e0646ab989ceb5711da89664146c79191ab837acd9600f4552a41b20b8fd9d56acbc4515aba216de7f2a80384f7b36f00752221bcdf1f1fb74fd0de6528e61ff11d4a2722a90ccf633cbc36d77cdd706dfa19f8421f31e07bbf4392891cc218e130b893e0d1739d354264449b76636a1635441e71647ea517d3765e84c410b0edca7815499c7b323e5f5689db8704dfa8e2c232233b15214c6eda53b859f9c3e79122ab3c66396669a227c9b71dc09f2feb7978d9484fcdd179e113d06581814bd2256a2225e781fe9d295f5c8fc2b1c599d0b81dc99c15ef6834c043ef2e0170fdced1df6710931c78017b4813490ad87d7b44d39f8fa67ca073f9f7d2f83edd82a75fce55f73eea31d1a984a3c3ee4087e65026f4af4437789c8e7899e8ebdc6bb6fd73580fdb9a6fbe76f0e0adc69ce948b278cdc53322c7c61afce180c27d67f08e9212abd98caf7335cba7d509ad1505a686863f51b69d734fc25eaee319f96067b6058de8ff5cc9a2c83e2baa94fb33a8ed8dfc72cf9b8af207ff3768742e028c9d5f7479dc4745f7ba21960b136d973a2b5207a32ddaafe4a1dd1cee411218799301e4279597859512ec6288503574c137f76cb5f1d836bba1da3e61b044e7d3067d3b0e8842a5668d69b50f9124dd07ca0a8ed94baf2366eb2eeb4517e4b299511170d299982dc7cf5c1c016e851c63c55cf5ae41682f722bd8be06533daad11e0cbd5b91cdb78798988cdeccbc8f37f3dd81bf31099e09fe1c82991ca251e11ff32ad5494354efbe0adb5a103019c91eefbd92f286ceff6bfbfafd7b9020adbde0618cf04813845fa92b4db7631e66dd4b1c1744670bbd031a198df1b231e248b56be8ebf3c57e6292e305b118a58542241387ce1f420175837dce88a8d9c7b8cdab920afbced5038e3de73b42bdef2d7512acf35264ea29246cd3489f1557a25e76c19ea5a7ba385cdf941e04fc893576bc824c1bacd188a79e56311922c7818c159551880c3f15d1569c37d41ce99b48c6ad4c9cbe80b236a7bc9e852415e0f04e30bfa99549c1225aadc4371930596ae1330f659f945881826e710865a7d6239e87cdd302d1d32955cecd7985fccc3ffe834a908440cfc38af345f84c909e08a9e0b55855d62afb3378803b54df898915e7abe96989f337725bbc39c371998b9903ee768e81f015a73402a57fdacd87343e14365348d12adcc94396cd7ed088091db87886befb1d5125b68deddecc8c0ab831e0d3639c01429e47dfc21810a66a33cd08a3d4e13b8609bb1540445547c8f555abde3629301e83fadaac12e8f53529fbcab6f842698067fe086a7cb4d129a21aacd770ec335176327475c44137e420c74858f9fd35a8f0f8079097db2f75ca629368e0e2bd7df779ab56b08ceffdb066478fdd310cf178df163310d160f0095f916b80d96d9e4fdf29dadf61613cab087d6cac88059357ce259127e6f0a5e5656a50eff247852857b761783b5eec252aa49e7eb4a30954ffcd11ac276ca13719671eae10407bcc176e445f5678c4087f872764487c244cfad4fe7bbf460ae6d1c487d086efef5ae4e928c6f1f046ff2fa10326c5aec5ab953390f82369c2c5a7e767ea7b7a524884c28cc93bec7ae7a24d2ee305b84430512d9073f665bd484475b7b6cc72a071d9087ba9325c114da1deb99b2ef596160496bf5a9173714481b5e380409c28fe3c53e5456a683bcf179870f3c9dfd520cf1f9add115e68832a7f379361234fbac4a2ff95ff00b091531c3daf7d39f18a18bebe9043b59c553aca11ad9b6b5383136bd44bf631152cd3d2029dd3b1deba1801032d0acf1af277e2cb028f577c0cc87ea9c680583d4ad2e86b1d1ce5337941869c807a5666f9bd9858e866f6d4f7b4dac2599514430e73b4b7b6580b5acbd86c9668ac7f4ff3f3026eee01e301d594100fd161bf98f7430c91535ccb53d8282e2455e256118efcab187652f456af9a84aae752b0a0eca68a1ca20bfbd5028eee2da4a7c95304c51337cea381a45f7db8a25392daf1ce14a5532730910b5b08ce86f9baabe3507b23aee16077eaa9706e71bc4c5e911159d92888041d068012fd41988c701836daac0b5cbf54f1dcb52b2e4593e7c473bdcd5ccc1d10c2c9f21fb2bb484c54ceb03f2a8c12bac52e38d1236795552bb7a328470503c86e91174cf8deac83108863d3330d0990321be9901eb06c56626ffb11ef6ce5f7385e4688061ed9354daa3fea1e3869b22c7e86c7c468efb78ba6a6dbd6ac98bf3dba0ec51a23b0ea41b0f92ad2f611233f6a9def0a7679c5d6f24b9f42f285dc8ac4aee0d31e0c3ee2b865d66d944aba00fa3eca62c84de611e7473649949a8236968c2e05d919273da1da45c58dfaee3a575dd165262284a3e23b19b3a7f88cad2dd5bdd9d2066f93f1d854a4a8e1a9e3c46b3367db340a6e46abfdba1c8b9cb7c97d72c26b9acaced561e7636de256a23cf38c0e8e51f1a07a2ecafe120b8ca46fbe9f606219a06aa7dbbae8be35e7d104c768dfbf3dbb7737d6e35bff36c9286c86207aa750a5366c2b5e9e83a2a3ae15dd376e00e0c59f8a9b31be0a81856c259e5a1adcccab959860ae31e4c308334dbcf54c1eded3c9bbdf07c9a9adc2715a3347c1199c93f32530af2e1f944e752baa9f045c9f445f052f17ecfe170c6507b391c5898aa6f8916fbefab47f30a20a002d337c07794aa21b4e91ef5c5c0459a8d0fc3770e415c8cf3e6e1dc8c18bc7467374fba3de6c4956af7aaaaf676475eb25fa96946ebc82c85b962f7a0f08e4b38be00a6aac4152f0c071c838a49ccc4844407d8a81627bd329493461d7e108d3562ba425595bb933e21b943a5419551e8ed0e249b2f5975b510ee906927942cf1ddb884bdee74246ea0b89c7ae70b55ca6e0b17204e9d901abaa1a314279bf055b281e1c5b127c4919bbe0f966ce2bc821c46c870f32903863be2c03897e06e282d08cb64cf5f7d7e47d7ac3aa573213482207c9fba697e64de1f8fe19f11f29e17e24096529855b69e1cc431a9e8554b7d4d6fb85cfb2f78e342510b7cfe95a2a84ef1dba617d2407b7c00a10474715ceac2345cffe8ee46d32fc552f71dcf7e09277077223f3519e4e18842c7c22f216cde374d2d5b34bd6960b5b4622dac3c849c190835ba9c50ce7718655cdf1bf7d7effa8036723050d5c3dcb3f47f098ee76f4b391abef9e860c1a332181d9743347e8aeef805ae7585ee024af4db13296f5492859ce915088afbf593b05fff018cd787481f3854e5dfae7e2eede70fb41d7d326ea60e505f130fbb6b9ee9395412a75a8d257708bff282e5f58038493e1e11bf2f25fc3a04cb5f69955fc8508248ad1c88cb67d3d9dbc9365e6a18c78ac131b91c81ac5648d39bc6c04533badf3e1a26deb730177a7341bb7660ac200df7f9678fb8bd129844538f1e862f373f808e7f894b6da69c0c353ffe5edb7755365ec9848ecead4be640d134d10dab0c027b7c488d16a8d45490c434d03cc3b9007dc7b738102f2fbda55f1f5dcd24a88e4fb4bbe8db1a299030cd94edd4c8e3d3b02b3c5e4ea46ac41c2da47813227349f5ef9c8581fb180f8d178d34d67e83cae3562925c4e670cc5ee588f16a3f32ec9286936a33ceb4909e180adb8f555a45abfaec81b9125e10f29b833d01ef589e02609e8ad9cf80a2aa609da3efe97fcdb2b0d8d7a4a33ea6d3655a15a16172b68bf6c05f317d5154442d9f1115acbc7e6894a1e066a6e0b38b4bf381e5ac281fce9795639053858fa14220cc2f5850c90f80310e0ab4279bddfbe35bae239ff0400731457240abaf0bc0f2897628fe7f0102a1b5a1c27a1135386395e415b6e85360c351994ecb7289df9d2b2c07512e27b17c05b5bb8b1e794f372835e30432ac3a6ab681318375a7c3d25805828644c5e4a1caae63100f1af5f16c323e50d2296540722202e8e210bfdf6c511cac7c19386e61bf98c3ef9992ddd14bffd487c8fe3c14d92032b3fc03089ace07066a37387dad8ccc8f9d096d0e4c077d0bf45ae73f5b0e024bb018595a1335a1ae8df8d46dead67085081ad75b86119cf1e53779fad5d462f8cb366bf63072746831ce04d3633f6f7d5023f763700b3c8026710582de3dcf76aeb651f57390ad0adb37e4c82bf2c37db1bf0aa10fe937a1eea4e5313e5bd59bd45cff2fb084ec512db07b234a9199d091fe508ddbde41a50b6a7860f9669ca64f112dcd52e7736afa3bac9117c094f2c26337d626b9a1d750cd68475d183e5ae643b35efff146c4a0af0fbfaa54c609956bfae641955c76fe79c5912888e62ab350d1a4906c236c8c3630e71b4dbf350bbe6defb703f326d6a02942d7e98b1cf82479ba4ac0cb09c122af810af1354fc2eb5b77bdc711f0e169d15cf0db11a776eef5a2962a8800e6150d726645cdf18b797be08b295f1afda75bc79dcf7ba97e6d3cfec29f5d5c1815a97a42b6ab4bc46056de0ab69ff55da9bf1ff063e231044b69d7314ed6b6e2f1b4589539ecb6e5f5e6d6ab6c45134dad5865daf64e88dc4d9c50a4cf002e8500e89eeca3f1e6f2ec404e28da8399f0112ecabebf6bead4ce8c17340307e18de490c369771ad7ce7886db1841aba8544c43638de98424ea8cebae98e4017eb915aff81653b17f135d1688ac14fcb8489b87c6eea91edd121aa0f0bf289b57c014efda718a2fa38beb49d0df600bd8674cd76b60ca15af5f8bb8aaab78028019516eac3c0e37f568d188ad22be777998846574c4ea498e9b1d147f16373eafa9d38fe79a1f01b26eb5b2e770e7ae2f005ada5f92c93a84f15cae682461dba6fcac425e6b73f38c15a713df8b0edbe56f58f0338f9ec5aeba65bc0c305c46fa3f002391da41a9f926553544e9bdebd4bb36b7fba831c3ca8bee12f21eeea378d6ad0acc128773fcaf0ecb366be336cdf69756bc4fba377b1bb5aaabed6fe7686ae90aaeab2eef7445e8deecd282f52732cc315f1c4e5e1e71f12666d6f5caa0a2ad749f8d087c4eb010b633436afb42ecc8353e8bcbe852442ce72d18dbaeec4d3725dff862e37d01e5955406091ef2b30da1d0e46fcdc0d53853634baaec466bc15326a0f6bb0e1c7e037277fdaf6df3a76ed6db25d22916989f61436cbc0ac647adc649e8a811d783b9702340e0cc240bbbda1bd8f650edfa02fffdaebfa30fe31a48f47556af4a08c3a382ee79b1531e3002c4513a9a07d1a7833f4c065599f005423912c3427c3445e261739dd3194604107871a39c1985ef21f7f5997a913c7a1e115570d3f23f9e858f32b4fec972a9f4c39622b9d9bee954e1e1360c99e4aff85d966c462505283afbc0f060152a6f42f24e52ab354498c55d3020321e82e6ca5959998f87e65f8c0d91696f97910cb850df8c018d8bb6699205d9410c72e597c9e1f4270a21f48240608b402e319b81ef12601c72c3acd55660786ea80d628ad50f9e768a2787c2c019bdf59c4b64dd3781f10aa67169f146dc6dbdb0e063c7f2dfba4149dfa2021dd8d1f503b21040ea17181631eaa2bc12130dc51dfc8318afe50d3c7887d677f637b65838c546c69d24bec9974e4f6822e898e07f882d983ecf270b7d11cc0f047818af7c3677e78fe0d93533bb53034f2bba9930a7799ac0208e722ea55978309ab16f70b1cf713b662a6d14bc5a30fd3d92afa80363fa7fdc46f571ac04c5c0efeb32e72e1f98fd477ccb55b27ae199c6c0a6fd7296a24967918e7fcd532e41d9ad3bf9862e704bf18de87e451324fe3706df65b789c05395381e0c2ab7cc330b307d1465c74ed1e4b71089bf55d918084d0e1d4450e8f67b73271afe4bb1ac39799dff5c896941fbae2c7246497d630d002744a7f714cb709143f2b38ce1d05d73e6818d049e707d96da0b96fbf021411dc73d43ff7960b67052676e237af10532ca44a17ff0289a36bca96efbbb7062b011feb9e0d6b4427270b6d4d897cdd774983552f6a309657e31ab54a81371308dc1a538535f561651d94fcd775ea83d7a34e7abf857dd4c5071ea40db0246d34d9f510a71b5aad99334d854236486ba17b06b30a271614fd3ad75a774bbdc2e3f9734c70b76158a7979b494e72707b037323f3f064fd39b9707f5bc65a20f7c7d45ccdb23c1004ae2645e3798313725da21c3a128f30f9847057edf22695bae109a87619d0b29a53b62a2e925c46025a547c8cea98dd2ce30edefaa374d5adc6183ee6d6beb517f9ddeb63a46493f464becbc1ed6098bed0c8d5fb4e7d018bd912710b4e8b9049190ca78e49def98d4f63d5ba9f6c8778454603567b7c44131a95a051dd3299efbaa69f151c837ab3660d155c1ba24af13893953b644096b2bf0870d3598cf169d8a4ed5644829880f809f0e69c33b7cfb6dfd46b20b2fd73604af417e500f39edc570de748030bb871c790906b15fb0669d6eb9022bc7f3d45302580d31ee8d5de79889a1b132d0f6faca3330d1301f9e3eed603d3f05fc29efe31928cc54cf7c7f4f569e021c23df5093efcbab10a5cf4919ac1930188ebfaea2629ff92971ad91918ee9385573f5bb530178f7066de1afe403c344e6ad5f22c1632083144c4914aba222e57a2bdf7abf47a084fe3f009e458f57aaf922ca22ac39fb8df4950eae87eca1646a99f8bd5cb00608f12ffcc5cb883315fe9ef5ce23a58ab9ef6f292c8b5524891e0ba3fa6a30640a38b3be0fab332ef696c3ebd172d8e6a1aa8cadb504a5a22a9f514d846cd3a9b0ea284ddbfdf094a87e4d7cf3a14b1a254479f3ea129f40ae79830d925ab81b1d3a49b7dff6f97a249625ff06c99aa74a19cd96f89290879933d53055b936a91a998208dc651242599468af72ef663ad4f002824dd530bc8eac60c9d236d8ace6f08a4586177f8fdf3b5642bd9d20d71f57b0def8e2913186db4e29a7c0769f1f58d5ffa5d699d00870e559562d9fc24c35ad9e89a9a84b99c1136f423a32765004b2a9b4b4c152a6d5acbe047792282a7124dc1338b9e7dc0bded19d0d4ffbf760ea303d53c46b03d5ca538f17b8e24a066a3e01d7de93ad4692f296ef2321be09e336138531f96706de7af1aed21bc8ddb6fbdaf701d14e0d15718ec5cdce3ce775958a3b9bf88cca7d618047c7d1b8ddc9d8a489c217b9aa7f390f63af953c1520cb2e913f7303fbf7853fe66d8a3577bc6ee7f5d0d1e9cc617fec6219e43e01f658511ba944dccaebd623ebe93dcc94aae9aad59eccf9005e6d51dc6f47aa9e677111073d64b69eb27cf5ce9d09aa7efc7ab192494654e35dfab60a3324d735b2dbd518264cc6f4fbad3bad7b461d44ac73d5c3db0c4f87c4d3739f0c1a53c1a7fbef07cdff7f8dbd27b875314dd41b706c54f2afcbaaa72f8d417eb902ddb6e121bb765cb1d95d862a30097056ad05d15d74c5f1711e073cd40d2fba7ff097364b314df0be90de782c61863c4e3d1c196865b1771abd4fb5d8d471eb4f3a2f219a86fb6e51ca19f5f18aec5f8abda7450f918027fc01a4643cfe5016402f1fb070ca91976250385e5ecd7c8b82ad3000b934ca22a6fed2647e2463ba94fcec35c9fe044c57e69df0a24f7b9cc89a8453b249af4b7a82a9c5a6761f0b95a404d833880c0d2393809e376bd7eb1ffb263d210b3078eef137b97c2dc934d8e78cd37c8a65745bd8b213f7ee3180aa2c9b0d0496a3caaf424d11676e15a26eb3ee4d6fa8dbb36109bcb1f370f66ed2625ad3237a58ed751a05dac4a4243cb863ff517b07610d49f4d52db701a9d309fbcda7dd943d4aa7b38953477cd897db95e206506be9c9b2b0bdd09edd32c26cb9c5852000e60b30b5fdd25c4d1f96cebed605e98ef89370930cb941f8f290bb0210c736b38866c5a993efae69ffdaa9d6f20274999a4405c587b19ec40c651d5172e5a31e228fd4379675cefd4e1fce329c120d6a41cbde0c5956f2fbbf1ee8ce7979fa00c83e0034df317f4780f30e7d2ef7b87e8e716a3f68b2a9e2da074747e4eb0f76599745ab82212c8e9812dd608278eba3a1481bbfc1cbf7c74e400ee7f4b0ca95bcb25e3b1d57fc5f9bf8d293727905aa619536ef4a08389811286f86d1e2ffdd66d0f20ad3a7366f18218cfd613895dcd67492ded9e58cdbfaeeaca3f765165001c792f099df65ddfae07f5cc983c784f5ce1ed131ec703e4719eae10d7c00f90cad9721a9d10c88b513c4b5443dfa93193e485befff8084c07b58ed72de1a2fd933af12018d71f20d8b33d8fb2ca49ac0fed44f24c73449f1f97781bd86868fc30408a9fbca7b630b5937e6e2b5c4294e5289bd840d364108f76ed1c885826f637120df50757b3908d0c3a03ddf0f48a8c0b08e9e64c544f1cbc95b708315f6c08a94e14b5916dceb7571e3b401e6e5b7a53ae879d3052a61f96c3d8b1ef16fbfe7b5e41ae6b5b69538b79849f5a44d79bb64a1c93a35992f1506bbcc215bb55733a262211ccc83806f1ecf7926adab43b79c90fe2dbb96ac862f20e80421e0b3941ef7d6f5be7544cb44a3259270d3500889b55d28e034fcc738d1d444c328dca619773e46606c5accf62a89d6be830d3c78b48d47052f5ac1803d156235b040618118aa8f8b13b4c1179108f5d2e5faa261083b56c5c5d9c760b6e1597767653dba16eea2769cfd5fe2f0e98fd5e23a058f1299bf8fe54289246389faaa06d1f4b907b46b516c841b346911c0506147c5acfa6f31938d8df5ead5475da13d7c0da09c410fa6f20da06dcb2b4f9ca8a8d3615fd3ab3412523614e55e9c45de553868e9740ccd875d3982ad6f83f772162036c707b74ecc7ffed3bed174cc6f46b01a2aaa740645a3db03e17c2d10b58417ecd92bcba3f16acd1ec1fef2c56239bb0773677f96458b927d6655cb7d264ba46298e606b24dcf9b2a943eb245ea4373e266352c5f633e82d583d25ee184e2d589437b1544f9318290c11757ce9861ae3ae53492db68bdcec2acb04bca34ed76259c40a807f339382434604ea303e5d9d85224b55627dfc42b9517e809a5ddbf68f5d8e69fb769bf5b3e1f212f5251148a23575644706c2afb345711c27ad5c501202d1186720b8a01d99844aef8153b0ab992186a4b53fff93d8fed101e63413f0de1d36009beec80e715c81c774ae2534dbd9a0cb6c21bcd3eaad74562911765dcbd476ce07da39c224599534bd057711eb1d1921a0a65b8762307702ad533d4dd153b261754fcefa38101f9c5935564ce8c09923898bf19f2380430efec543d332c9a8c47b8be86b6dd52bc15bb91718a527164d7119b7e6e4bb9f57bdc72f1af077e7efdd20f3f908e57b21af0f8df593950dbabaabd9e13479a175caf316e693f3614d39ed206f758586b82a92d9ae677200d1c28427d2e92fb8df3c1f3e6df279f274548bcc09d10323638adb3cfae0128fcde464cea651ad6a5d63714ea9246e028254a09ec83660ceab2937ee46babba23eaa972e0772204a5ce8804f68f908d7b60bed3d31cd683e357466a8f056945b7e0aee00dd105888f5667aed4c706ab7215a978a1eaa7b7266085a3bee0243f31a298820f5df5f8c97d312c655cc2a93ca8ff0daebfeeda250ed8199b2862960171b5ba5512d8d6bab3dc08237cb941469c9d8475cafec54c62c640e277730cd6968cb36f5f8dcd3b7ffc969c3908ff2b4069973658de8e63fdd3caed650fd1ae91b3fd3390e09240980846edea0b7f4cac0b3186e83eec62bb3bbca4c98d4130dba98892147b7ddc72a874bffb4e4ecc1ace74e7bd3c6c637dd18972eab869d70e739d9535d06e2dcb8d3dca8245f181eefa5adc289b7ef989dce11841b17e2147640567208c0e012db17a94a04b633a16500468e11831fb2393dfceae2dd87a19cf73c23b7268808b220e1a0bd0b4246b59db9a1eb1b25cda7126d1cacc2f7d7ba83160d4835e599fda08788a209653cc01d6bd0a76f650084cbc741143fbad848cc4d57b66efa68bb343e364ec4798afec797b4a51d27b383160d11f43f35023dd2c707d6ed69516bbdc052fd42714f578457adc21811e900565e95c759ab6a6201561c7a207e090f3b3c8baff5976de3c5dc3ddb37e997d5b66121387ce7eead9d38049eeb7d8ce1098e384ff569b4b2f765b9534973e57a1b6389e452ea57e49b9ce1e5f98c84b71f0f8d3909bdf635e2863348d2b6dde271064bfb5b7a862a79613c4d4482f0d4682f1e218696e1ce5bed2c3ca273f57d1cdb6e8bc63b7a75e7f4ed732a9facba7ca53ca9b28108c7d88ce9a96ccff046b5443612ec7e584efde59c99a62467d2aec62f73386c6dda0fa486b8548e2aeda05cd33cee93df45c947cfb7721cea4c920bc2e78d6cee8485edf6b0d8c166b38855d5dc096ce3b417dce4a959d2fcb72f7d5463f830f07719655f7a7f30e04b21833c31322a2cc5cfda7d1d2616e1ddc1f0567ce1a7f65c02556d055d0b3e1e874f93e54161a24bf787c931e4dffa46b61d599616a17a7b8186f2d51a37e0a8a546cee2bb5c7127f60a73255e75723b07d301cb7d19cad40ee474462151e03a46eedfaebfe87b919bbdcffb1dac62769c1a0ce0212ff3678e8cac63c0c7a2097c6fe2df476ddd8f5cdf81562dd184eac696206fdcb3d95c0bf2ff98ab442a7004b088e67c80f2de9e90c7fcfe4ef8c2928945d6546ce161d88c04a169198b2f3de938aa199bc8366e941a57a0d912ee3860c38369b5f814e31bc7e7f2dec0f338ba8af0448f45667134eb3b8a49452c01378f6dcfe5389eb5d8ce375f5b9ad6e5eee2a19276fc6284e9512dacccb2a37570e2e649948678ec963df2eaa6ac35fba6bd24444cc579022ed5cbc0fe09f6d9fcb8cd7a0c5f5f363e1524bb0e2dabff9790ea3db3821e03ce61714328e26d3d28bb5b51335f72f576fb48e8c1064ab962fce5365293378c192a46f698e21538173121b22ed8b396db9e9bd450e80498c88bff1e0ea491a2ba1bf4de802bb5a2a8ec93f5865ad5ee25fbeb029cfcb8dccd16c939b82bbdad122ee4621fc8aeaefa883690f48c729fed6fd00803884e5ccdb078a72dc108a532456fcf84681aa3240ae2fe5ffbad31c66222d12b504be0e10ba2df342bbdf4059a46706d9cb0ad2d9ff527c4f26a2d04c9c757e5ab8ac28764ebd0c4177cabde8b8ae007fda4cb1503ffc040b66ed35234730b67bdd69bef3ef7d3fe000a337f45c4f69142535833e742d79c40bcefdfae995547cf03908b9139a82990d0fba71c9f7696b021ab5960dfbd008de33a4df8ce52342b1d42807cf5bf6ad7f0936f861ee01ba65149907390ac61a0aff07688fcd89bded74ab2e1737f9a2d9ecc43998355d5e1a333285d3136a0c2e07d28c15d4e95b82f5bfa8fab7b374178f286c30dcaf9c42c9d21ba72b36c527f38c5fb3ad28c63aedb8578bff47e1e482988c030a93331a61fa72998229034fa95372ec585285eca9636bef58e5dde2d49fcdb7ff9fbc31ad167ea1b23d3164fc5a7ea37c911549c24a3f16a75f2bd306206f75086fd79bff7b357516fa7624520a8567c996cbd5a44520a5499f8899335f14e3e5ab14496cdab1a785b1b01200250a508dddc338d330d60ed9542056d3b9b76dba7d12e61848a8404ad69f0353399d4349768f72477050029eb4ac903f2063dbc395e21a9a435afe4f4ad98b1cbef449064c22fe7b818974baf434ea3e4b3f7e11a20a497d9a63a5b9be2e7733300beb354abc09c33f9c922a37334cbbfef4f1494990d064aeb6509d0ff5ccb378d0f8486fb641fe4551681367055d0f59bde89f9c63bc6b0d178808ba9967cb34791924280a6d836870ac1146696af5a045c55c2be791a885dc84932f9a289e692e2078d4a0fa23b9d76d0e7bb9dd8b1fd77afd87381ebf87c7d17ff18e1f0fcda0d1414c524a94ad7764ad834c2d5aea910c6aa2ab5fa3d6821536fd4125625d68e0e6683cdfabfdb91b5799a5c64c3698791ce499cc832e35834b31e3fd87719bca0b2a7bb4427cdc79ea6d13907e94e7f2ff58f3e008b8e8eeea3b4d9c86da33f16a8cd7ca59654f72d81b1cee57abe15b96d42fb103e66d47c8d73c2cdbeb154806ec4f28d9917ad89afea6711cc70f0cd90cb22858dea0720f84603cdca82630af8d7dfa931044789a55dec1710b0641eed13347bdbbcc349c767ae4217639bafc5fb106867242d5476e7c4a21126bd38c40ec0fc1bbb8dd3537dd36eb18ab040bcc469147b9dd922c5a244c8dc25b477268a0c535b28b697ca124ab6af04d9db4c8b7411a2af58e5641dd04e77912fd5e40795729d42f2489480ad44c275c4bdce2454f20da760db0022b11d016f86c3acd63863801c863ec2e8bdfc2f8a3a482d7fc7fe47c7ebc818ca341de81602fdc9c2c8949ebb1b75df10455c5ee2c59502f0f14175300336e125f93f81ebd7a5ed5113baf89813397148631f0a04f9de4ffc3a9a9cebe2e8324f1da3e71f0853314b093e012c91fc486f4b3da72ef89fed0266fee655851e99155acfa1e6b0c02638b4850de5f3f416998488a1778707afc62e30e1f234619e07ba2cf919f824f383793a73664826992e0c9cf65c02725279f1634f03585fb07c7472b2aca13fd06d431507e6da3456feb4aa9a96d924db2cf9067c91c0ded5b67e89546af5bd61b6575260e6eb4ec7fdd01730fb050d8b48f1537298bae99d7670d9b86306601aefa3b63c710a9be07a72e57bbc6ec6a7308c9ba875a45dc1550a1228d89e333c38f5e2db0ba3d211c54ea1fe0739dca5fd2c186c317b47c9659a9e8c7621d8f0e068968ade7404fde86eaf985731be8e9e01ea1307bbbdc5626c681d15c5efeb771011c481f0c2a77ee5fe63eeb7a0455c46f046199c68c21995842ea2ac4320af5f294bbd1f2ef8c0260cca05b15ce247f92661ce3e433169e4959f56e84618b9b020d59964ca5c0edfffe88c58b3aba78609f79e7f0ad2c54b986948391d302ab497d795cf10f2131d12edfc0e211afa0a8140ce1a54255189e33ec286fbaded84d844407063cb1deb641a90b95b7553e2c7a8db45bf5ba2d20ddc0bbb01ff8892bc2f911dcb6f943bed9ba6ce0da677689de6ff2441e30804911df11eb87cfb53f27d29fba570145c99d2d83fd684788b47faf1b451e1d820215d072bb6ae3db34eca51268dd3784d6129c7f9443cd8d23c7344e799cb349abf505209e665bfaa8a0a0de8d4204dec37fb1f31239481f06f5e6e8cf78ce7ee35ed9a8d231effeabf21d4a6c240629e52ff69be5d48ca06998837755ab386aae470a7215021384cafbb91d92eaf0a9852d671925239f4d354e45a02af0af2783a96b0716faf076603405cb6c95973fad60b4d6034319e92fd7d18bb7748ade351fb184f205c98f15b953f7e5cf9c4a533361bbac94dc285668218a51967ed498353d47b2a449df656535b99a259f8c48278ef0d3d7420257b490a0a4c0abe4185db4a53d16da7fba87687f866d8dda15a036ca3e38c2b42db1431511cb479e605841f0d96908ac31aab2246b5d51f9d587d84687798bd8d89bba5b1f5d67ec15f9bc0b06b8aadf70a0c82b388a6fbb602ca52b8aa4a007eb930ad728d737a7c92262b958e6514483bfc5df7d26c8e4ad64c5275edc37b81d6aeae53f330602995c2580e82c5379aa4eb1dfc17afcf8e8cf98898c5818534f9837a24dfb9f589a74cefc44c14c08f950fac6e1a3149d0e741fe1cdad43de4d77cc4d91901f5f27746a4888f1dd7fe0109139a516079656a658e0e8abadc47db7a80b1ecdf7e23e8b0170bf0de8d91ed7def46f183268b7e7471b241edd8add8d7e62578edf2132d9ad58a657791d9892a965b5b1276d509195d15ed364ad60c1da25c3f064a51af85d000d91d0bc2f1c90019a9297c0e2f79b393ac5efb9b74092d3d1cfc97acd5d61c795ab69d63d2644021f0be85f3d9fcff3505f0cd0565f3f362d318232a62f426abcbc685207b0c96085e5dea716a0a6159d66ff5a26f68c8b6d195d6fe829a17e6fdc72a740cd9543faf9c3a10b9ce220361bc19ccf4baaf84c9ab04c1502e072b11dd5ea1cd1989224e7d3dafebfcaf4a92b53dc4bfab377e81e4d498f73a1a32a98988deea38b1e27f48fed7d3eeb34be5f02e3bec2320c844a194ad537c97495384b7b7fb0c5e5fb8f2eaecb1f6656c3e5b4f1d33212477e0b724fd7a8bd0b9451d77e05a5a4165b2d9a171fb33155d2bc53e25c08cd47eb37b9ffc0d77819196f9d2d6802379848ae3654b13ba5a6fd72248533a6e2a30228c2e5635fd5fcbf16e1b47e9a10476ebec7689849cc2cd464cbff3d169a715b3a6863cc8a83bb4c1be4eaacb55ae9073443f6b8852f8287666d650ab2927cd09323ba649d3d3ae1c0b220f855eb05a7da29e44d2ba02ac592a9a4510de13c29af31f132498d1713a03c8f8a5f980b1febba5af4ca49f9ca57c0a0a6bac0798a564a566d740c4f4572fb844585ab5004bbc87992c229aee7261d095fc805a6b704e03f04a6eac656a67edb464a244ee1d18cf3889e30d513a032192ed2bb07766cd49547004b7e01c09d9b47535fe09a448326b6abccac31d06ae1a309505c127d8b418ff400991d9544d3cb9555e5c0c62061ab0f692bbf5d6ce50da3038f5ed980e1d8f2c6df08733ce3f7428ecfcb2cce486b5b86d0418f2dbb53a40b5c7e8d778f45615ac3e0a778851a47273abd81e466078b29ecc8eebba379f92e71b04f215692e19019d7bfae37a68fcb7477bc841abe852543ea205088dd2c738fe41461dd0e13855c5ba85e35d301a28abe85f69e002db94874e9e27c75fd71560a17b52f21bd516e3207bb7ef6d57d580c638ad91bcb54019777f38bd4b36b680f8a78ef0866ca48244e9230dc2e73bca33e9e44b5f94c248aa60beb5853ce2ba2f357807f315dab565542fbc85cd434dcbba7d50debf2d26e93381ae7aa9a99018001fc8732155b0c4aeac0a636b38a664f9b30ea5265591c277c0c8b7120adf142eb84a45f3ad57c23afe47d05b81dc088cbb025599ccd0a501a2159fc4478b3b27b89d5670875bf3ad772d2503ce4401b26bacddb75f0b3771306c4d45e2f18abff2f60655d4fa8c3b60d17eabc55b0012e1bfc9b55b30e7c69fe711ef3254d7cfce629cc0febbc5834cf73273a018d1801901830f221daf13b184dd34dcd111290ff3f12b9d306057706f597e409354c98eb6b12228d24048af6b09a9961b45039bc9a108c94ccfc76ebbf7da95c08b5584cec5d38a1a28713b13b99f57beb616b84a7b253cac7fd247ca6a04126d49d04d31dc83c385ce45a818eb6cdabbefc8db1ab8dcdb420ae267946a21c54a0466311d874312c54e2d64737d35d9f1229a664faee0974ae7cbde55562220517523971c2d2b47072a5ae49fed9c28f43ef86d453bcb6277a7d29549eb7f3be960df6e320b5033e887c50058ac54308d5fa261501f09fefa135c79a570059857a5c8a57f27c6fb611c1c0d736c804d2c0ed908cf842d87c6ccc9768845f07c657491d9dc851f7eefbd6308750565bcf407eee9a46d0dce0ca95be9626078fc97821b5621ac3f78fa4dcb0e745b0fa9e12ae7716235743d63fd92f4aaabc95097091dc4e781577516de40d674e962b690d86e33cb6314a7cb05e19d86321140e87a62012221a45487e4750ef54783b465be31824b4e939021fc1936e59316fe3c6927d92d5e3dad6f9abc290e8f12f0ef0ac5aa91d4f7656e6b84116e8b5edeb29ee648b5a1aeaea28e119db6d86b1083caf7e7259fb16e3a606d1ca041eb39364bfa4046d7358b83ebf1e589fdcb83d7f34c885c81ef2727c74c0ccdd8cc366d2dc5c4918dbb9d3d62d5e98b1d2d709f1ba2b8d59e565e5cc7be314b82224164724011c3b6df378e1736a0e9dec783bb8935b8c0bf135ca3317f31ceee2c8e87ad6b48d992c2bfbbdff1723973c8013491e6c9355a9a295472d6a558499c6ec731507d3e47d96e1c24209e898c5dabcaa2a316597ad110a153f5476cc5fdfcc15b6eee906a5d99c8eabb8ecc4bd3b1ebb74903078e29acb95f337b49bbaa2036082bef943b85820cd4b01dd2f487465241fb928253b5614da5072f529eb71977990f0e2bdb59e602dabe09ecc478eca0bf133de6e75047b79c89bdb6461e0bfe11d165cd44c0ed5e9967af9ba6de6844d14f0879769dac49680c8dc4f0a2d0b5b5016fdb163bfbaedafc9e6bbab3942cee2635d387e8952b55868cedd0790cd2344a9f6f26d928be6f73ef6da4c5d0042a484d6e4fe362617c46171079145f8a39c004c841f33478f7d08dfc5e8b417ca4523250a164347e89c1731d5fd6dd578ace1a621e5248857d3fbeb6a9f9c7fb5a6f822eaa4e2e4477d49a44b42e67118588fecbe36e9a91ce54f7d25ba6983797a0fe9448992de5b54ef8a5ab3e64f78de196c4629a4a3a35ab68dc0bd8f08a12afb9f3e41223c1a32751a4bc7e6e04c689606de4f51e19767becec974ae427d9dac87bde23e57ef54270ff2724d7b751d4cf642d0f375c83a14bbc2fc498e5087791962f9fefe7257b739b69aa12734ee33b8b01b134ffd720ae8814c10757c664447929506e89cebb3aa1150bca562da3e4e417f4e8b07574aad4557434ed6b5ae80304e83ee67ae456382957c530a81fe5dda2b6be5ba3d8e9064dea9558d26c5d8e495c7208f71889eb84711376fb4087f1d3158e2d794e2c9ce5e422d1c4e26120990ba0879a4d935ed493a835114f62386dfd5b11bbe138627b8f604b66cb5ecc574ceba85badf21032c18f99cd5964befd6ec476b3915a0d822ab64f488d546839b998f5a82a2ca27794029ee8f7a585ff881b889eca7cd12d925b495fa0a619d342954ee8d09be858e0977d939abbc4b10ce867debf06b7329031248a20b0b7a25815111505b0e81f46904b57216c03cd2d4575c16c1e3361a3caa09225f2be81777a96374add638aaf9132d530079b8cb53728fc31d7d665129d993edd2da8dc40c62727f4aca91b528bc4590dd0b3665c95a04e33ac318f33f3d19d988f08f2ac2a8810aee91de2c6d4b84101c714066ca85589c37e17e57a1261071a785abfb68e9de317377cdb0647540066eb453c8ffc8fca644a62c08b2006871b8e108c3c72cb03143f3df9d343bd4a76d94a83697a8adb8bb5430caa6fdfd6c6af800dde953abedc57df528d641aa60f15d039b86fc426f5d23a1a9e449e4e9fd24cb47c0ece0154bca44f41ee1b99c57e5337f15dd1d2c52ba8dd2b84f1c43005e752c9d696982edd003003d54c419dd0876407189d4975ce07416ae5976bf4cbfb88f71ade8f4dfa714ec7266c5d12941fce492c8575e5d07bd155aa92968cb9683e6b0a4c9d6966aebe295c5a3b8cb6eb23076712f4fcc67909dc7638a2edcc062721d189bbe36bb924e09467ead4f63b4017ec7c69122f29ed5e638c7b110aec1cdab65a331be8218ae01b155674168aa4260aa1578eab77da28175a4f241a9eaa23dcc98ba221b24e4b7e34eeb61c9c587042edf3cd23546caa1675fcb98be792c506ef61790c9356a5a8062747b19b7ac3da12bf02bf9ee059ff9271c778c940e019d5c8c2847eb97cc6a254d7b033bbc743e32e0accc9c46f2fb31239bf89ac716d1e22eec812bd6b33a43d1fa8cf82c13cf6d97bc3a683e19c387fa936a004145f9836c2964b60d9b8ef39354d3e30e381e160a1c83159e89a6b95b3bcc17623ba34fb2c9bf950fd91a0dbce13d9b56d649109047971ed7b0b91e686d454315c09340dd2384a7dc2dc9e5c0b609bb8d4bc81d197d9bdbb38a38ee312503db6628b8f17448b716cfa29e8e0bbbe5243a5d3128e7cb1005bba186d578d4253789346e9649468ed20923fc2c97800ca831eefaf6d9b9d55936c15fa31c9937df9e86fe84a797cf0357869f1317d136b550d4dad1f2a819f0761dcf078ab85764b519c372852bf78497b15a86c2d777ce74628364868b85d97bed4e6c665990e51120d66c04b059ce90993b7a06c899135cb8485f15da0d38cda73fd976e4c7fc29a523c83fa81ea55e448923ac408f11c2ef9fce17aaecc1b2f4d54351e882d6fa56b3a50872f1a7b6299b62b343e14e7eed0efc5b1e60a7bb15c99eb0959c7b8b13e2886b85ac6e8fee4efade4a2856f6b24ce17e4e51dc06d43f1efff4c69a227ac1f2e2b19e1111e7edbfc3576f4bb1538c9f7563d296e465db83b8dca436731800cc5271a864662a68ad73cff29a3fc3f01d7161ebf9986ad01166b97bc3c78a49441d8b756e5012fd0113e8c3cc1c06be71cedfd6daff8840c032ce2bc5b3445abf8c94e1d040b058a9aa9cd641de264de76c531a9931af6b571d340334f0d4f268492554f4a362a32db440ab6fe39915964aeb3d1415f090d2686801f8725c865c231ed4bc0528fc85e00841400ad16e9608a9200982d93d6d5fadaac076b55e560e2372d56ecfc66f6c1bea88181b960714457a1058db18fb4d8c96a1423006bbd2a9a5d3df0e63be870fb45907becb4fcc40d9bc0c2c0068fe33ada5747730fc767d7ae9645a10b6ec8dde2bd000cdcdec9351f43e4d47f7655f105a8016c3557b0bcf469ca5cbab28134c1bcbbc5d5735d1802e2f17a855c6d4e594a16eb367e35657aff091c271f6ad6fc95be6b246a9b785e15687bce10730335bc854c61f550d9facec5a701e8edd161bce2f31e86e22a0720c624d5aaf0a36639fc0b4303dc1988a226b2fce4271b696591f3b213438a032c5f0aff2278b7e50ecb6ce238745faa5019566a7adf94a2d898987cbb2ba193bbafcfa38c1ae5253e423b45358b4f873dbb83c5d5129a47ee6fad0c969d1c49a3e14d604f33f81f7d9650d4294c354f79d4a4b47e31ef2dee6b3fcf0940a5ecd43f09974aa4a4820da5e5f8de858ea5cfa8815d50c8537c4e20beba80d00bad79450f6b0b5ef3938b6b02a2a477cdd902450f3cf1a94e09b8f74cefb3b506e798f56694a593ea747d282d1c99cf28df87f0d6ff99c8092d4b54d55489fed45c554fd51b1a0f6e5c542691d28bfa6a3419920b2f38034fb31596d818e3de0712bb50c645d965babee0939ed5acd941db5174b9022fef9fc0177834c80a12934f31eab2d920d3f7cb47ad2a8f63db7cb19b5780b6ad921bb7843918a12093b61f470f34357e50fbd23e868a549c3c6009b18f5379e4a65c2e2be33b057f7ab9f09ee7b2dab9357d405c028d4bb4744393be52b2911239d905ffe072eb7a46ad8405a349aa8c94903ca831e3fab4050427b63c8fc0e739bbd94bf866fb0257f149124ffea2356a438765de084089e82d0b74c375de3c361f7dfbb19d21632b26cfcc397cb15e65c35798f7ee4d5cbed8135dce343cb024e036345ecfb5c3a05bdc674e32c91f7a2596795f336420cec06e597928763da3e96b0671b9429f2037c15f19bfa2d02ba3a2782b3d3a920a496d83d1dcd050a4eef6cea924e7e05efa4e62c9a3e6ae46d7e8c5a5be42ca3c2350f65a22955323831ab11e9adac6c7785faf658b40289125b7cb853612f39bdd7d98aac2af8284c4cf6105ffe3af1a076c90c46e1c0dc06cfb53c451ddf395fa50ec8f854e53d13ef2a9f8ac6aaec5b9086a5278c08939652d816b7ef936bb5cc4546bffddd1dec1f48edcf00508cd0036d4c64587c8bb19bdb7563e85cf98e00fb86559f66c699b87bfb026798abf9c2273e0b4aae5786b83bebc547860512780d9b57a4e8e4c9ba45ed453927c46d022cdf20b89fec993bd764ddef66247fbfc2809082cfcab45c46e4a84eb3ede9190ee5b04eb71c9dfd6410b76a0a5a5e8e63a140b22176737e4a94ded610bba7c7fa7abe41ee053c6d6cfe0e707a0357aa7847d2efcd0d2942a80b5e33ec0e4d9e182c44ebba83047b8b58be204fdc64f1bacb2c4772551e973b1a39011f3fcf6b9e4e17c93eb6e8017b8c8e814f3ea31cb489b985ce6b2654355ca8c21f5bc322db776c2cae17640c5d4933c6df823fde0c0a1e10cd4006eafa91a5b6271dcf1565850a0066d63e62945f3be43f582dfc6fdbb4d22958885e1f249833d663d1699fa7b6dbccd00f65aa673ffa3324fd27949e4c0d2e6ad387930321cabb7844682f45ef5c06b953b4ed21669e805fdccfadfb03e9b2dd97be6121d64793514155bbaa540da000342ce4f8b36ac24afbd8e640f3250c70cb9fb24852c737b0fd49b5df6e85321741492a6946f3d67b66107e71cdced78fff88846e246612d091bd329a1e6a3d52687ec98fbd7cd83ab818b3c069f7c1823e4781bfdf21d11254fd08ea8899d635c30b20590215022c74f4116a5c4392c4d8e6b65d2442d0ce6fb58d1d69e8b785933da0eae4355dbab5f6e1828233af7ed923be94169b0989cd4c659e326e295974c89054e6e1f93b3d9a1e9e9676f8f1f303186f28a3ff76161464854c7905561f46683fec2ed79452d9810180fd4ca3120358de27b82eb517550fd64cb4e0739b8d8379cc43f00b5cd175bbece215b929f3af56516d34a6f07b202f3e9711aebee11b529e63b68f7930509d04da124ba6ec80253102a21108f48635df05561ec153c3378a096933510362aa931b0d48c4a7dcde99fcb51be3cc0f2da9c1947ca7249378006a200732edf6b197c3cfc4066c1116663e1ff090e21bff36d3e8dd8c3aa9dcc41fa01519679ed8f5cbec7e5251e26f898c6170064ecbeaf1421ff1640f0eac93e51d9b57f0d1c52a0f892eaf7741cefc7bebeff541b8881e932b59aba154142e449c9e6c62f6dd9a04f1b037b7e5ebcb52cfc4925864907eb29daa7f149fb12c0afa9812fe8249730d17cfb6416f3352d612936dc14697ddef53033f50a5e245a10af5da84c0e6bc5eb6e8cbbae51184de194d91c74cd6c5aee2f17060ced92802d42a915b3053b92fdfd64da431944c60165d397e60f98176fc08d0013172577793270fba3e0e96d9841bcceac5cec0be0dabc4998d327651fc0791c73110bc450a64989467a2bca97a361df690a0ff9d706b2ee176a36702eb3debc7e1750243a4afc7b33fbaf3efd04df34afbfeaad540a67890762321e68e7cfaa983e4d3dcdddbc9bf74ce1b1d47740cd9ca06f8046ff33fe64530494ce00afe0e606ed89aeb93db4761fd3af5a04d16a9dd70610373e13a85bf01d4f8c45a6a9b6e215a1b900d2f9ef8b10fefaa13f2f432275d1d627069402c67fc7936a07502c47338811a05d003e162c28accb4b3f3a4de2924a68a5f882c45aad4bb080e2852071691d304b3ab9a8ddc155ba67cfaff4b4acc8480375e08c27423810a06573dde65b7acd09cbd96f6309a6ea884407ef40e9cbf7f89c378d8e8378f4171bf60efa346102683454b0a745ba71d026e2c122f6262c3649074012e53584cd256a34ab451489a0a56c49b3b4388c8e643c0b5abbb8ced2a2ec073477d72b17b0004c529aed9344b0edc6388c647cf40a983d45ed535dccda78545898c8c7e9f52d6fa34f842d988a5468121d71a2244a161c4a29585944bb628aacae27b629097d5a74b1c41c2cdcb61b1835a2929481fd020a98924256d38603224d4e688efd75f71cf0d7cd8b0dac72d721d02c111b72d4d747005d5de529d53f848922f6f9a2bf61843841367197d4f2bea80bdf351dcdba40456aeefa9464483af5a42475813291b081310c5a679103ed4d1cac054e7c86adfca79730cb3b59f40c812cea40880c3ff0a15b66720bafa41bdf1c08c85deb591717e39280685379a63fce4e1bc61398a35b5491a910ed7db2f9a4f14fe5bf66a64fcbc6d36d1f7040a703848bad3405b8a9870331ddb1dda018b708d93a0df997580b499904dc8a032d4c1ac48de58bb8dddf7261bd66b24a0e1645f6af98716753c19e430d7f4bc5d605354fe552f60f24713b5d6fd08a6f460d33f1a518ef50af3ec3ac47540db73bd2f51a9d330974aa576b98f380eca431193d29091246ac60671e90d280aa29aaa9b6521797e15015d1568af21a6cf70b7aeeef9cb3b1eed861ca6a98bdfdadd9c3de8b5e0539e26caf79c78d77c1507f71afda6597e5ee02e05b85524599ca5ed6936cf97f42a1ba9b3bd8a17aca72b120bc36c2211a435cc7833960caad7a4cb3f5fd6d496baed90e5766fca5fe4aa4360aff0b9cc203ca68751572f8e20ea0abe86974e29d33082b1ba31e8a4f3b042f8dbc3ea7576edae9bfe7f1a4594f4996f132fb1f4f784c362f6eddb85c85b4b4ae422c0d412e63f2a8a3d8c687356f62295d6fb065dae81b18b964caa2b0de291460b1c7a83b318280d49b9eff80b685e0232f450db798fdfffd72399bbd2abfa3450925cc7e436ba8b0f9321aa9f3551e7a59aadefb718ec02a1b85eddfbacc5a4a96b9c2f5099e716424675bd14b990e50db49a57b50d10cd1071f58629d92a8a81e5b8d82b8cdcac40fec2528bdc8dec45da9198865129330c08226dfa8726a6669c613d2570064f28bf6f6079412655800f0886b492962257ee5198a558ed7a8114f4fd4aaceec40df6415f337840d759a8c267ccf72770184a8a3ea8dbc7eb736b631fc30d056b6b7ae12e97ce996dc7be07707b4feb1a6fc30f31d79caf1e97565649ae4a1b377eda7386d2384b70a13cf8b604923be63c905e1d50a632b846262435e512fd21c8662ee8f31eb64e680043c70406ce7f7705e2e207c63f5701ee4c88892d09dd1ae8b28b76896e619963f1869799b9709e1acb0b1a14ab101d9e80869ff0ef8948a1535915ea808050258191166e44a0c2f8be0862f36feb716cedb3d630c9520ef9cff6ee25fa4ebe933506cf3cb5cfa4bb5691cac80a254614eeeff254a852f5d6ad82138fd66c998b799a5b41a09a19d144e9d06d1184475456db89a18fdbff64fa0fb3a5bba200bd6328e6fadc61275b6156043b07d1a3e30adc96ba1876db2b55af25668a39a625681cba2b7291f9e5da8419f9a842736d4a34e042067b18fd7b40d927b69de9fa06fac5c00cbd6d6fdafc4c6bf075777b0675a6650b35aa8af88ce1c6251e784b850295586fce1c6c3f8064e99aca2d42977c52665f0a974622d33ce0c2ee4f4cb5eb93f795d79cdd2788531de8b4c6f99f7e92f0293b5d2ff04076d83fe87ec6821f5c9c03083c84db5df97fc739682c20f48d2a23689599c20cd1cf3971c3e1d7b683d0649ec3d5ebc9264d2f1635de93231154bb3955c7dce787e900ecdbea977e9f0d2724913e19dfb8b975acbc777af0ce0363fa63a19575148aca2adf8034a7a99b036d3d57a7641bc4849ec77c5cec41af37a485cb83e7604e3494fd30224b049cf61bba2b3d48c9084daf354abac843fdddccf2b973249a58eb10252eaf367ec0d4d81f654f1515eb0f8a5f37851d830057ca1663e7bb4b915324d57c6c246afbadaa134cf188f175a5bade4bd55c1958daa12463e497227da745c2cd542cc49540c13bfaad6cc642630d9df0a057e4a63a08ac1dbcc5fd8e7bf39452ea7a007641f6ebbb13fb768f8b1e553bcdf1c8aca2f40cb7f8de8f3b5b7ead0174634ae6a92c5b0f41609bca56f35f1b0921911061429262b8f4c1731f1eba2178a1f07b206303905284c4a6d579bf015e141c9c55ac3813a3917f3cfca2c5212326ee8dcfda190cba975a6bf0e1f8ca93604fe75fbb69fb2114ae8bb527bfef88e3152c0035014302e09207d5d5c370b94806c46aaf35b5ca1a9523acec9d10629b3769a54fc21e711c5ab750f33933f86be9aa7da7054381c9ca3be26ef7ec189c480b83487b4615cdaacede66bdb1bbab3e66339a8dfac02b3a581cbb26127d67c88efb038e4c17c7d68635b1423016820df61a71eea6ec2bf83ea46af640db3744f030fc320fba983cb9688bd3dd8ffa7abc94ad6347a9d13fb0199b81f97bb42f3cbbf1a1b3835285396e6e7bab92f3bb7dcffafc9ca1f68a67436cd36e7b5a7f3a008ae1945821b6ba453a849f3b5851c425ca8e0a91eb006f18caebec53c4415eb762cc8eca9e81736b08bb8aba4a47e4dcdd62cc7aa49bef467a78152339b60304d3cf722a206d9b16e3876f1f38f37b35ea31eef3a45b0c40b5d6babcb39b9df5c03961cc3a7fd3f10f4bb780f59e40fba533e313b72bc3e229c14d7e81a01d12720afda83e0ec83d6cec7717c6e67509bdbedee3829cf29675841402f6361cf6c1af3ddec078c8ac4c8227ecdf94ed23ac9dc72c9fad8761484adbc515c7a001771c7259650ef6a4cd9e2b802c9ac88db6c66943e54ab5c9aaae916ae92152712d7127295bd3372af78e1dd085c075dffe950abdc213b2150a38a393f44c3619298680d56aaaacc639d18eb2852dfef9035efd2b5917361ed11dcaffd2240b6a025c057cad9301f5a3c1ad9c7e853b366dde616aeaaa0c6b38815698fe4f93ab40c502e1a32bf57d9e21e3d4efd5b6b022f46ac489b2da9bb9cb8291edceb2db2d3a52ea223e5ec50402065fecb2da1e08d25aac9185e9db3f39450b6d69d4b9fb007add9493ca8f76f9014c0fde88144996ddab8cd9042c447dd53e80113cc760482ab387e292496bb2f9c0b699beaef19e584991fe8f833f456b288fed2ce0a6c998fa3b7db9e6582ba834979b64cc9e26e711781f415839827756f2e46e8556cfde033d2e1c5da84ed4ac063d87f71b727f9fcba70550c843cad7e427e9a0fa70580dba6e5c0598617839bebd317f338425583ad3e25acfb2f751e93ec0c0c08b6ce9960f5c3f0a012006f5dcf4485f21dc5e9b1ff95c9138b571d5cb5b7a0aa09ca6921eef71216fdd6abe86e462cad85fd7933a13b756475b261ad5e0163bef809f6a33b02e900345df8d543399bbe8d19c8d6ac2bdf26592417d68bc7199652c3b3f7a691e8543016fb1640ce6f06bd8ade999bc18ccb051c222904cfb228776979c34f92a0c53ca6ab12edca8b26ebdcba6858ad2b4eb169feac1bbff9ee40b365fba26c432b67e166c81656abec4c14b97ef58821955fc85cbf218fc7e6e557ae133240b30fbc5d8c9beac4fe4887d9f383ec8c17aeb5717284d0919bf0c8d8c8a22dbb297fdb81a698357c88c27d71b3c5c1baea78cb2b488239ea761068984e6cc20505703ee30561ac2757f97bffd7924e6502812f3bf1eee46c7e2fc32812fb1df853242f9ae83473ff54df2c4024dee02742cd0962d43cea804611bfa94b049390df791fa9a27f84fdeeda4596d31dd89154d77aa253aafca25ffb092bfc8ed00715b978e496f0746ee46c7520d8fbbea5f62ab6a4d712ba8c8ec83fa0fcf4e2299011c600afcba4ceed513bbd2aa066965372a86f790c574af330a6b498a331b1bd809aaf4ec00c1a072c92550227a805ff6f1c94fed9ee143bb56502f293fc85ca34f43a963b5d817b99ecdb5a11c80cb526a06f53842fa74f72d448ac724e5cd305529fae032e7d004e55042cd49683048de90d9d8ebcd6fcc75eff3d9f6492c31fffcc4b256f827d4240def6be8513a29fea139e0adaf352abb457dfe35c821f060cb8f014723e2582ebce6f58fb173a518ac0ce39cdd50b3c33366f297597b5eca3ab17f6a62e0d3df5bc13dc0e22ff568f4c3854a2c12ff09c687d9d633aa69bd550afec3d118c265584afe86cbe63dbe6c3c63ba037a47f460c2688eb0bb407f58804fe8b232c91f38ef3ef11786c84cb57084393e24adca3215772065a73f4dd894827457bd569a157a0e85693dbb9bd34a26c14e81286aa015f4d1d0607fcd5c4108b3028bfe6045202238548c597a94a6c93b5d14fc913c14dc0ebfb1def42857b45aab944ddb6d303255c12a518b5c2987f2ce8222f518170384f72b2699125cc26fb23804757ce536f1329a99aaf9704ff42b05cf10940407703cdd74e30c11ffcf67cdd62129e8e640b4522beef1b6386035c65fef753111a8adec0a5d6c08a83da72468d63d219f5fb004cf6e09dc24373e22dacfe96fab822ed82e8d114c85fa75ba2c43ab4f734ec9e01461fd7c561a824de5a2d8496e0169608a3596902c513280fb068afc5845045745b179330727ca682312e54747b3882a4afaf6335cee07c2d9a2bd8ecfac77879cdfb80cb039c399b71e46dc5d09f73d1ab78ec4a2418a9cfe2ecf13a24901559d307a45de4c213c07593d0f1de02dc4dadda2c796ef26f82c1f540d677c11210e60447f621c9e707302386416c79b6ca0e2f39e028aaad971f8a18efcc6e32be8cbc26c4e8cb63cbb14004606a3d978893643bf7b219aa5b8e61ef8825aba9fb19ebad79e1482f66d45778224b9a994846d1ca5c41e773333187153ac88e7bf531c5ce6b2b50037ac713cac9b2b776c78dde94b09f9fd07ac78445a457d34b77c81f21b2d8f273da76231456291ef0026c2f16a5decdd163884b6abc1a09796fd82b497dd37d73fc3e9546639a34845b9df4e66a85c16aea7e4324313b6849c4455dee3686111be2eace19df9e619acf4bb2cb419771861b9b98388f20bb3804cf1e3be60579b3eca32ceef1604205ba0d27e1eda93f89e5309f39915628826d005d85f0336a539d13806a66b0fb0e58c9027ee5634cfd58168c842157089a007bb66b25b493ed4594ce45b99b6a040fcf7bcb9e681f08ac8b90f27fd2e7b485e0f19d4ee70b5e0048794ec3194fbc8f9eaa37fcb91e5d65740761374a0c3f081963c5cc930af27b54d298c06cdd4d48b48e27dd1c0e1c4d43197c902274e5c4a8302356bed7797425dfd9c1404eeecf34ac7dca5b5927a8d94ebc4f13f46ba0de7188be8119c5bb36492f3ed0f72882b172845963911f3ee63a4711ca644b7da8d8ecd13e391124faff31eba078ba951c07f405c3ac55f50c926abcf6bd2444434078cc34112c584aac0b4a941d57d413c63d8dc0db75b3887a1a3a908297180cf18ea8453acde9b6b92ac41785a5aa6c8c2871b7981ec79f989bb740b64a848240710a373de9fe6ee5a71617d89459cadc5b31db283f620f1505ee5191283c53ca7cff8cb4d9a72948ddf92a7ad85a4e5e9d8cfd816b04bfa36511debc3c00d16f08c81a18ec6e3e2e0ec1bdca3268b0c93fd9ed092abc381e5a3e373483cd3cf693982db049a538e59015b5810ec5e56e03518d4948c8f92e37010f65780944ce0a1e1412a60bb30e374f8391aade5b28402b219ab501f3fccc10af9c6555916c5c30d97f84ec8845d8f2e1ee89f7c1a2b5c6ee8bc57f2d618368acb39136aa012c7f1adb75f0704930c1be50a7ff49c91909645bf49f6a5740bd3ec3b92b233b2267111db4db0f05eaea6d521000ccdb0e107915d3a8ecfaf2dccdb519f91fc51fdbc187e05dd6fcaa0de8e6d9024a57a6958b8ff16a7251247c5794cac0988240cc28d79c5be84dc3ca69e2e07e4090471e4299d87cff4c385ea8d858d3dbcde7b2e8ddd17b1088a9d3bb571396fca0d22891f1c18e42441fca5260d85b56a37e5d2a82183eed20b4aff0dfe05c00eef706f25d7bec7ee149a11d3286b232c0d4b0aa2955330bd3c91b194a6933cc1631a2504fe58136c76ba04f580d9504cb23e71b4a5486fc6005bbf2bc831015d11bf247bb2995335ba1b18f892ec0284037c10ebe7d449958419f81caa30243b5ce41d07c83a25f236959d758c1bb1f9514c114f4e8b71dc9a8d1be3e7e5508d3da622af982f47215d5bbc40c197102ba23975ad2bba92fff69cc5e0fb0531226a2d95b145833b576871e802c79d2cc0d7bbbbf7466042db89c50875df444b7d90ef1d7130e7c54ca6fa70fe014a457e5e9277630c50c4e99cde7496fb3f3694898314500415610a103f391871342a59df72b7ec273a21b25f6d5737e9926d7b528e1ca207a4138839a813d68456556ecfeb33880a8c1e6c6af558d80f13941e16a9fe952cf4a02d1825a629b4b10af9d1357f711a2533c34f7821200805493bf77b840723cff11fe83cc21a5bc805d6f94a0b50068f9b99d4fce452965e1b2df658bbb99a8693bf8fe7c21f25ccd0de35eaed58fab3cde0f7e9b20ab390e9b76852254e776cdb119e758651be1a6ebe3421bf6557e142f094595d466db71430b66feac6d49b2a851cdfe5b0c30523f232d050cd1ce5c6b89d3046e816a007f26d374caf0953cc61ae002b11355d9c38883d656560865ac23c79a1e14e4325601d9f8c6e055ef45c7db9e06f02597ebcd198ef78d3dcf3f08f28d94e4c5a59d578a2762c36b39c92516dbb88314c476fd1af3f9aa634ecf6315b6628aa89787541f4e108e013b72af8e9d407842dbd29aeccdee4fe3e9278988287f4a71b8647fb29c1ac57722125d04b3c626a823f6d72cd8e09d674727a47d51fb6e8b9c08cc3ce65372bd6f7cec3aa72be32e3662fc941a878821163fc5c78f147b500b345b29c20c4e59763be7a25a5c49cdb355f8cdab99079fb4395f73f1eb8c4e8d6f232fa5b6a5dd4b314793e0c78a25050edc44530bc4fbf9cb1fd8e706418a06a3648e29f2eeff39dabd7ae6a5a4afd11cc79bbd1e0052d04a9ebb1fe871d8975f7ce00d34dc2cabf9f18f0deb98feb6f5290bd555f80ff3365fe34c150fbd0586e62228d4b5a5fc60507df035ccefa3ecce7647d0543785a2d2fec6614ab7812647e5f88e914183483015a019332db282103d2c258dd060297664317adb82dcfe6965b844ca93d553891c534210b4764727fcc285ce067a0bca42ec440d43fb6303205ff4e666c68ba7365a71346b2c10b724aa77b6af0639994b5ddf95b6c1310c794e4176306df09898ab12f84f1f8c16d3d696082dea78493d61d1f004ef67f8d1ccda9fe594a8c3c873d169041222088a7232434ea27fa436693952785f050b42bd27232731aa15bdd4e17303b826e1b93b567230cd7b7824affbb0117ae4db53cb4d1beb2a7b9ef1e6d457420614fcd678c93288f8d386d6f2e07573227ed682c956300feef4e6895d0822ba2e6170a630a10bce0702ec6bd072e03bf1619abdb70dbad9a752c2b224578bd06c522bf4089e52e84b2b8382ab3cd298fede1c096b45a43967b061d205705f56f6ff65658ee1efd61a7d8e7f71c1418c5d6386126242659eb2825c6193ec35ef4c7eca840f0c78bbd9a206ced20c5bdfe85cf7a74580bcd4d063435052d77f505d6e93209a27947f775abdcc86a045aeca699142dcadca7dac295d092f025eba0464c4135c6c2b93a1c57258a0c20ba8224b6dd0f96a22e57acc52c151c730f314e05af888ee48be5fd14f32828697dfc113bfb16502aadd1a08e7386d05c68898d4abc723559f71cf738238a830be828a1059c4eddfa391b0663e87adfa32a4faceba79087c42b436f0ae15b825ac0954effdd1bcc861962da48e85c595f44876adf036e1eaea43c6a351b650b9b26c041bc042dce9457f1d2f32bf20f47df0ff4784a86dddc752efbb32478ad7788c6a9e5b6629985b2d400056f8c60f23b5863060b2f1c2e8d9b95b94b7c19cb7d7ebe4710163b5c1dfe9edc637605d93c0d996dd79c872d7da8f294f5dbd631ff55a0189b8f20b6479b5813cc8aa4d669c51adcde6fabc3a1e6b699428a19043321089ad63c973af0f5068415f5183b2bfa407ad4f0217f629ff225b3044490d0ff0021c19b3be617123695c8c09b87200c161dd09be12590679a931241d86dd6526d0e07b8c9bbdffd040e1464ae16301a3c8cc788c96b37cf3fae56136196a853b73c6b47e08e9893586fe85afdcd8e73300d2df8ea025c8cbf92f7ae552a5dc758a4e1af69780fd5b0e9c46a3100cc6aba026a2bac5b0497d545d29722c919a5983b2a73546fa3d7d8782afe3ddc35aea1f0f2c2aeb7ee8b6366b953d08ee9c912534d25932c362873c69ab36faeda3cef79f3a0e5fb303a593244fac94c4f1b8a80fc6d104d1bca960e97809be853fae55265474ffc316be812ac2cb2e8b4842ba21602f5009e4c20a066c2d7f6018a3165f40a7437feaba272f491174101a2829c0e00af88755b173609ffdea46189318a657f891bbbc718b62d36a7eec24c4da34712d835466ffed4b5446a571836d7cc775d2adab45b3613087ac157a11c711797483a66cd588ae6bc467052d746e69139654a22d3c4cf023c865aa9a40440f38b3c10b5f4060962ec9b778c5f5c84939f78b078aef58adebaf7a4f8fed7c21e6bfc118438a27097cf3b270466480944adae983fd609a07a470c9e7735ae8bdb4a61b64bd26b5d0c9c9430bb2663eb75750b8ef8f64057714ceb65e70504863e25106710010410d8333042745e22bfdbd37f0665c9a4ea3ebf3b16ddc2e671aafd64052a47fecb790f657623219e75937c5fb5140ad8829afd5c06ac506ce8a269e846d64cfc6dafa28877f9ad7c06cab41ff52e54aac5948ff49a208662fd03637b1405d913bba0361095ebb55406e2beca7a777ba6c699a42347f26834c32ddaf405a74c38f852594246653885f000abbc9e4772db339eb70be1b3b39fe944cb4fe4a63b3a2bad67402d274c6539ee6068d1a880d54f6dc5880f9b66544fea3118cd159728fd906d23c884c15888a0a6334896bb84a1ab8a316d0ba4fa4fd43ed5a32381c63f8db4bbb3330799332b10aa3cc8662fc3156606076afb64547565534c8c17da5f15a579070057f9920ec70c702fd511244e250c7d2d12dd2c575597507e2928a9310f01f0d7b002f71bd8a6a56fd59ddcecc55c9c4d1bc172c4202d96b15b219d9206f1aa67c05acd0e967641f6ed4fc3b3f80ef07d4b19062460de83f9ec97166495cb0d2e7df26e3c21712aa40e2e1caa5d751fa7c7aceb3ce86c4f9c63fe3ccf6871cbc0ba09054446deb18b4fb76cd79ddc0d4a5d89f6ec0e1db4859bc10e4c83ecad83f32283fcb1212d938f004f98d5995648afb0130e971e9ae263144521fe4e049aa994cd96dca8a4f91bb6e952b197f95f7bb34b5db0092bbe3060bb52d472961ebd92326b4265ff52cac100ea6baa266acedc8b4f087d75bbc7662eaa8f30b64d1747c6afe4727b1823dd4902565d5daf0c9d96263b7666ebf83458c81755f66e314739f78b84fb7725b3d664c684677ba456a8746033a8552baecea57b6d41bf7407f47b8b3cbbfac60a943191e66b059293ec8cc9df670c2b888905192340ee4798551dfa3b6363ec1b1ba4fb9ea7b6e59f7b3d6b50bb7ef8f68b6ca942d0465a9f8af0bd26e19b0795fddadb2dd8d39409ec71fb8eac1ce430d0df40ff00971a5cb8803fed2728769f1231c42e3fe9366ec99830f59cb23e59a38e606c0b812bd7340e2b901dc6631f2e21c8d521a48d3ae1ac54330d906d895856c3cf07ee7208a2cb7cb8afd7d31bd7f0c521c1c84dad453101b003134baf9f11b033ce953312daaff3a345783f61229eadfbcf3c928c284816b30ea9faf51558376a2cab174fe2b2e2f570c6d82340ee0636b7b1cc240b2628c702480c2545c9f38e69c198bd717acb15efc08ca313a960cc9937bdcfd112410a43f81837e8a8417fd39a2cdc9d8d2d26c3e66969e28b8b4761aa10e94ba0750228995bddfe8097e330722ac2a9ecbbb2a1cace6b2f57f52a58318b3f01407d9a26268a0f14afb43a6e41caeb263e9c28000363292531b5f41fd2b5dc71b093796a70181e3a982c74d4906c0ef9a7ba5c1d0a2e209202c8f6eae782a22af3ad52f35e5ff4bc40949e19c50d2e079bfd91afc255f41b47b6b4a6c9bb8fba03ad54fb492ccc3ec7986560f44910704d0dc7f7c15948ac3a2d8628fdc94382342ba09e689c24eeebb6197afdde73f567250fe979c20f3ce2727e9ba5c50426519575acbb2ad82c44bfd85ae3fbdb92364103b1599849a88ab0ea009315ea743dd257f4d4ce910be0077bbc30a9f42e764e30ebec039d5460631771473b14d06bdd12c61a44bb7c2dd3b97edeebcefadf50ce135cc6dee60c3200fc64cf770c12f8a617a2439bf2b4f776e22a2812cb7a07c2da24a72ff59a60fb333dfda248091c8bb45ad42a5d128266c90762378c465a0cea94f86f418056396de4f9b8f8f657f9ff9eb458e189b1cdb4bf7c7c62fb355807076f9c78f7398e4b68207652c28c28935914a2a96811286809f9854800f9743a255ef4f720efe7271c74bdf659918eabe924966b7f1f6c8dae24fbe213709447d88d2e453b2d3cbea447d8ce72408596fc16d167efadbc91c2e0a78a2f0a6ede0733c0c79e3804fab3d42dcf7de8c1f6eee9c4d0a5d912b4bd1501e2105089ccadff1ae5071b30328f60cdc0c7c58fcfb94f8aa83a939d6087c5760b864274228385d5d2852961a15ff614d6ee9097a06358eda7c46118819789a0fc812cf48d3123ae7e3ca4425232fac50e256409ba7cf0a816e851eeca59368d6fb42681fad4b97b4500617e9f642e76036fc106831ad0b71631554d3686147ac24ffba3e029fd1f2c119b3ec565e5fec9b33d74f0bed9e5a9d92e443f899e3ad86156294ed2c06c8f32a3f81a55258d39f7770f10aca0fcee1a773ef42a1dfcaeadf4461ea0e386d019092dee60f6a6a97020d8c2c6fe15cc066e818403652a3ed975c7e3c434ad9af2a6f1c3181cd54e2ae4ff076b4e8097a077d6c0a40618ed9693fe369d939fd9fb2019f1f05df15f6abe8a90e63b48b46c542789abbcfb1b1f2a6a1155cfc43a006c5ba6e608311b809925326e9e2d7c7725fe05f56fd98a295228b07564c61801725d276bbd50fa0d01a81dc78854febb46df1a2f817f9e7cf91c26494dcc4244b3f7d5dcd17c06255e68c4eadfbf2eab0b4ab55d013e82fda68df33e7f1fb2e774d6e6ffc36d8f926f918162accd4b58adcc2dd0282efccefa91c84cd52f4e0157ff56a72da2238eb1404e90fc58b1c5053ccbe36f6ca7fb614107ce2218fa288e541a5dd7e40c6a19be83678a79ff91630ef825d06b6a1432988f9e868b43ef743839031ff1c6c20edfffcf921b99f58d8e4ea9395b2bfff326a2d0e5e2b43d784722b154d780a4339a13047b3aa754950d89cb21d1309477f0faf506abbba3ce1b64fb1f42674655412aa86bb677fb5b66e90213224a5143a77310948d6f951437aeef5d73e29fff5d717eca83758d287e9910db9e902756bfd2556bcf65afca2e9c1b1c18208efd69763e6e224771682704bfa37c72cced16ca37737c7d653d13205117643558671bc1d69b8d087e0b8ff5435aacc2f53bf8f179c8420c0c5039ad3a178eda2b5b899b89d3e3b7ab2d1ced8e05173ba9fd142d1ff573f0c5966c9d68f0e869ae130dc60a5269ab8a7ef0e2deda6c05e4d2cf57e86a9f6cab83bebee1919f644efe07c596bb264ae679dd53ba9744644099418d5d6cb51795acce4ea2fc1fb32b9d12cd263730c3b8d4a7686f0a9865ecbbd8b23e5688ccf1035299acb9348242a0c852561bc5f46ef5be0f19d24a589db9907ab6918d50aa404f764c625331441dc4b7e58f1fb3b9e0eea0875be3a088cf3ca912c20efdd735280e863e8014d42a0d4004bef1b559c2c1efe21e3692a7c620894af252e6ae10c46119d2453395d9a0fbdb4528c71210557561a5c7007d7eba62abacc060df160ccf2001dc8bdbe7d48b5c1dc41a437e7c76cc1b80c598df16f4bb30d664fd6f4eb402d69a101dac07fcd48fcd8df27a0178a68139bf3104350834506c4086678e2f8136b6b7745e4943a89d0e867068b846e97481703e79f4bf03e87b175c7e4bcf57147a21f6fe27cec8464b084e474fa37e33c813e2756dede1257c739b169c2a6f211e9b3ef2eddd0f7172c9d6a686709e5726e23a330218cda3a2609ae06dab03c247d93a4954acebdf83a374fcca1cdb057e2007e88924b6cdc8d1185170c1c00a345e77e775c2336862574c3a7c0db1dc7b17f210bebb7772e9316da6ec924bf3eba6bea0997f21aeb7dbd7c746e3058d36b07833cb1d84ab8f0c24163e5f7525651d11221244de6a0444e9fe7509ec739e28b119b94aae91754c03de8e61bb79b7fd39cb545c6a3186e4118027db0e6e48ea64cdff2039fbba806a21e4407fccb2952595c9ed5b2dbbce71f88f931676e461d28a96547c606aaee7f2a1a31591a12585ec4a3a5433764def6a6d136a36b0713cbd0c11b40682b9d0cb02e4f16f782754fbb4b0e4ec94ad94d82bd447561d1face43c8f1cbffc78a524071e917354ff0b11f96baf3774ef968e98381f6bd8d457d1922c3421e7081a5de1448e8255fe39af833668038b6786482fb52c8d89e1e1f0a507f35d18c387096e2f40a602fc7c6e7e6043ba2b8db3be24ed367f41b33b2dbb5837fde9cb040e16f4a3775ba9c2972da61ff4df06b47d0c058814ee620130293ead77e9de2e2c3c0191c2838b0ff9c4069ef9cf187238ab7af87af5c474c5186a7010b4611f25a2946249e9f43b14599e73a8432af9bab1c01630e16329d83e65918fe591620dc5f0e93a9e76e016ca57deb0aada9b6de68395aa6fdf173d60670ec1ab6fca7fd502d4f9e13502f17fec4d8ac54edddd5963366178e7a3789ea26304a0ce8505ef1d7f865de6f0bc8c670cc49f87b35652981815474c2aba894977b44b5e5b1f8ee95a759414afd6467103ddbeb55879c12be68368ab2750481ae1dbddae6f93af4de012166ced66caa97a0f3442337a52cad09064c64e618d1aca4841957fe69fab622a9cafa50e3b36a52386b425e948166a13e097961563a8a97218d09b018267ccecc080f0e3ae53bd2432eba595cb75ed27f437f33fcfa83cb71a04f76a4d0ec07ebaf2c7d81bb0f4c71af7f080b5a72305bfae4ee2ff726928d68ca622566b5aad21d16bcd5d68aa919b129dff7322d09d774702c1f8fad0662acc4ac618be6e68ab8ebf33faa19144222a6a22523d5f2624786bff8fc79c44945f559d3057fe54267372ca31f3cb51f92935e25f004c4e8d408a5ef6fc9c26719152de7e9fb805c965d604beeb5a8a83e36ecd99d9e0a270c4a7b584082129b4fdaa22067bf0d24be4310252502f4b800089d31547a8713c624c80091007efcd3c94fb89c509137a6c4ecb8ffcd1411f2091f992d9e754769f483b445aa26a812000e65eecebd1d8c03c98703d163db1cf2b3ef5aec196d0f5feebf7643915652dbc477991cf2bc1b0f508e70e4cb6c8c1554249421e408acde2993a1b2396a2c48d149e0de50c869ce04d7e9123bacb5a469d18e35839d62e7164847309a819f4b4ae37f8db6780f1f9d3cdf5b91346e9291f9febf85e0e266363f281e28b630ac6ce10e466f2e64f7b4bf3f97568707869852b84422d759f4051e7a07d247a4ecd906b27530ada8ca2c90d05e6ed7c09225b1d182f57f5b010def1274e8782662dd2bdd50f3aa7f3eea33077f02103d354454b65979303c40c93ecb77d88a81be18ac7252367b453b2457cccd0ea2ec64331940995a34d63a641c6c21b84f83edb61178df18127a0ad8019467e6c314a2898219ece0d65a223f0389a361b90ce04ced1ecece03e6b062ba1262323c48d27095a4362e072f3e09bd1980bd7bbca33baf74112e8c21b2da58f99dbd91c3507e3fada242b7e5bcc29dfdd21f035b3e0c86e39c5bfd9cb4bd3d773ace39ee587321de7a23cbcb79dc651adcd7b12aff8558bd8a55728040cdae63f39f849d3b5a6f68f66858e09707d96a5acd349c831c6b7e7a6d21b0bc71e8b132fd581adecce7ef9178eb0c084897cdc4e21f89c8e976f7578b264525f27d8427564cafa0dff914c0b07a4e64ab9741ee7904e7260fd6b232a31808dc91ffc3a7fdd9a4fa91a66181ed6018d337eb65623f7e7229e19b86e8bf983dc615eb7aa017eb8c68d073291c360a8c4784eaa1897f6e48c9b76e4da7e60b1e11698bf9db14369cc550ea25a30f717628daab345a51e5fe0fe269fc3c9a638e569d07fc4094b6a256a0d10aedc8228a826a837bbdc955e1efb1eccb9f2c984b21c58c9c70f5d09f31b26df9a691c3660780ba03b336512c941453d1a83a61509a83d7ec761c680065966ca183e2dc98c56ed5cb11ca44a0d0f8906fe4959c8bc48b15bc6324256f697b6f3e11042a94ee89e7a80b45cd398b699b58ffcc685433f234c511171d33d94c39584c77f015981344a8452908e3cb84dcc31d9dfc92fe2b54890b5e795a4cb361a4e06d13784d0a888e916e1347fdca664eb446c628387dd2edf984dea3790af369f5d8782b38f879c8351af615674c8e4bb1464d9e0b72382b68672b2ed07e5f4799908fef976b96ce67bb2a50ffa5e6f43580794c781858da74121834ee19559452bca733cb7ad224e8b80a4768e2a18164656e2c80a7830d4fd2de56005841fd1edf3a8b81ccc950a343db2fbfc340dfc2781f9ecc859fafda0bfb9bb8e09843e0e3a6a134be9c318f57195c05d0d31ef6a9ae55305f8c6c2a10b7af5639e4e90e459e04656148e0658942d7f0e152a0aa1471824d00d032deb278dade73d7822e14be5acd527e306d9448813c51cf5fc89f161457c23c87df3068f51eea78feb12adb1cdbff7d326ad3d7bf421d67b5aef51952cd534bbaa017091b770301321c563f364bd8a5295ab684e9206cfebfad6dc460d4134a3018abff8debcdbfc999bbe1daa8e25d67daee19d07c49ffcf08628388304dc72668ed58595712a5ae1794ad47f27854e6a443ec43a02d82df4acf9b6d59ccb0a3548b9fcc8c1ca227f5e62198a165694617b342ecd281c76082d6cff654ae058e6bee43447f8258aa4cdc3de0e343ecbdad45559e9224260b2def4a67f15b1efc62b2a7cc558b12bf282908148ba0c3bdf3f2782796f4b77d930fbe60e4f570668e726626e3a6ee1298544428a0226524b0bf8ce309ab863bdec6edded35c19da998925997a85567bf00e66d11e13c7b487ea3718f1aee7d44f90a62b591ccad983cdda3df7ffc9b7b203d84b6739f06beb4d2e52dc22855aeccc2ee5bd7b564756e212cd42b1512d2c2e39f83817d300252224dce306ce3e28b3dfa2817228ce690dd6655f03393c99050e17a86107d3e929f227a2df00d664984dce8881ab3eccb2947124e284ebeb4640ded3d6bca076186247d425c990ea57bd3a64236e41314a2907cd883a8b2b04b868015158dac76051ef9801884dc2d9e8cffaadee10ccaa6a9df0ccf6c88c982b952428fbdf8d7ca1e82fa5e3b3650a113fa68a571bf5dae0c1a9b79b6855e31727132859cf05aeed9560705324b3ceff1f0bc1a136e042fdbf9da0e4fa19f00f0e35ba955eb27ab79a4ec53399a2937dcc5fef577f17048d83c2d397b1d376602a5f65f8828af83a14ff23c5bedb78f169f6038e005823784d8073ab10ae29e863670ac6d6086076302d1fb382d978285a7690dbc316f1f3252e83b5ca1dd0c73c1f77ef8e83929fcccecf5f6a723481c6c636a133adbfe73565d2373e8e7ef734b5271e9036ac3e7f5d97b718290873afe1c243dc2a5014831c4027f69cba6c6941b8bbf7e4628cfbc5ed44cb6e07dbd6845d16ce4b76576679dbfce91583bfb58745e17f510fd6d83911913398b47e5f0010cbe95435b2e280bef6655bd684b164721c5fd41efd57fd79fc3ece35d76601ded2a1a23da38273f4ed7feb9ae93da6a8ec0631b62d0eb058fd5abbeb0a7b898f15202a7feb1a9a8bfab8299a3ee26aa80303c202e8d02b485a4d7fb9faf69458a1f6e207a2f41d29db878b845f6f66c24ab2792abdcdf4fafa1cf972365110bb41b3c93bb608c2f6d655f52bc9b3bdbe5b4e70062c05a1f1a41dd31ea95719fb4c8348ab09c39814d1392f4639b461a44e0fab7a9a9f5baeaddb25d0ce9eeced6e9e648a2d6c033795f555a1ad89e58c74a790e27bdf6e79ef34e70dd2e07cc8ffa4ccca29f253f076fddf443286fb65117219f501b0e445c591556057edd163828ca34f2d1fb7b5dab3558d17ac9776b89f6193098bee512147dc938e2bbaf3e6f1656fbe225ae35ca9535827a294e66014774f641b7566584b81ae6a984b990a578833ade913c582490e312387e7270fb7a4970f547be0cd74ea5c9231b00edb090780d0d8ae4b3854fcebeaf740a16400f0846d2f62c208a8d913b55cd9cf4edb9f71e7b3ad87ab90fbe11bc44ccff4422e7ad8d058bd0d30a1ef234e528ffa718cd21a085141e9c635a8d6c000fae03149a27b10877a9f5367f9c785020d8da155a6746888667ff0663741c5586040942034a18f94c235c69fa7f6945d003b040402d5f0f98f836c7e95ce93f215fffca43e887fdb6125a6f6d4d1ce6b0dd41ab0a9d6026290dd938cae88f9d690275611c966b2a4b6ce198eb091bf05060e1f066fc33018a3bbc38639848c082a3bc1a8b31081b9903bcc20ddc0ad3bb8ff029c205fc7e815e7f1278b63431fe4f957bc6c8fbf363ed64a883083440ab50ccd89009705dea90b796315ca92b2029954c5cfc7510f2a043c72f1fec636a4ec99c41f91993fc77d86b6d8c02771d467c3524e86dc49f526482ed60165adf1725ff34051d42c234375dd79b529af5306c7c10e9d3194c2e41f6470d3a2ccfa4e3075e2cbbb3412d27ce3ce97de01ffca9c135758c906cdff5615f4de422b57a47f3761d06e2a9a94f4c65eb0a4c3d02c35ddcadce7bae9ae5f16d6c4576a5839908675eda67d70053335f8a914bdf1f15c3837d1b96ba275324e2425d9579c0a3adf8715f327bdc0b46dd1b4e353c9de378bdc08fb3f8df0a224438c6760cae5fe09474324638ab0b04ac387c6e3c5255a52f3263533500bff5aa79803131729072b9edc11091bbc65ebb8c2ab09b5fda2fa99fc7c29ba7e28a43cf130c45639385ec7a06b7a931cb5caa51cb7996abf60fbd1b12adc62b65a5583e8f14e86cafb2d071180797879fbfba71c37db047072bffc53740eef660e2751eb6cb00cdd53a405da2385989ef2a25eb6dc22f610f1fb583635d1d7ec46278ed4c93564dff3c50a4f9eecbec338702d528c2d7da8886a222c9f96e1dcb0c5407de5059e8cafeeaa9cad1a8e05aafe5a9e8519ab4344a2f5835c3b255438906d07c3f108a11633344af1843c422d1df7d3f18b105b8ca6b9a2f88793affcf1eb5e7f1a745695886e691acb7fe6089a17ec89aeae5bd2ec556d0c8e74b5b094ed81c0b518e869b699048ed73b4ee9c9c5b9693bc14cb1cf9e26c881090eb120525ed9f22404f9935433d621f1f6b486a0b04024c4779b37424d96c7868d3d6c6d79a669e20046b8e2188c7c9e632c6af3cdece67e528f41c3520157637919ab45f3ec0d57dd34e72d7eb6fbad03d3e9be8ab1b717f4c0fc1d58681e75c3c94dbcd6a2ec6be6607ed8fa98d256e97d1596a8ff85c451f1085da89e0a3475e9a0e46c9203363c094c7b9609f3b4638716740c7fbc572d98925f72aa8b8844cf666ce4cd58bd62f26a10eb6a5461d79586fd1bee0bdb91b2ef91a4974e7269c0c26ebcb2e51cfbf103b418177706a736574e6ebd6846726e6bffd61c70674d3987fa4acea7b2670c3533f1785fadb6f0c0b154cc67df029adbbfbc28776685b5db4c6f12e6011a9e3f17a93e44ce7981f664c0e776f4f151c71bfcdcba5c661b5caea916ad55cc2fe2373ac5bd758ae7f64d0631e868580c5e2e4da387a5bfe0dfd7d5d4575ecd236afc3d6e50f71c69a41588758547cee73bb6c345356fcba2e15b8fdceb8226911fe97e7af0c2a7de9e3fccecab13f84f7da49d314aeb57a632d51a699483ba3f6f0047e8a82886024995fead51544fe220fa4b7a787df1559a68133d93a0fddc7116a965223c944887984d4f3fcfdbbe9cb387bff386c8c67d2df4589cebe790be761951b3622083fbdbdb97b273d9293b807d8cd0bd98690556045d705ffbcf863c61747f994204366e17c65cbf9401bb143baac8849410f84273135a818ea5c14a486f214976088ffed4567683724f2901312e9939d328cbe9bff22d3891221b2cfc6d5a53893b0b0bc873bb22d90e2e5cb6b4815cee3c1dc789b198d58f0bb68f5fd6cd90320dda6608867d19d82698131e785a237ff59028119a54c391e04af89516fb4746faae5679d30e2b83f05f45aefd47622a4e07d2045d1292a6dab956c1d44a756413ef46cbcac9f65d588ba538855e6ca69589d905ba5c59c2d94f1f948641977a9daa39b2d029771faab5732a26ef6628839f679353160a752e3c835deb34cab925ad5cd31118c08a6cbf620c8b65767847ffaa1eb7ede2a21aec7062f7938e3cc673ec10b737436c01ac09ed0c9ddc2f5b4a70affd328fabca2d9e5ae179ee21fcb342a167d3955cbe8f87637cfa48a2c9991e7d1c921400e5a65ee8539879a793ddacda2ef8c36281a89fc94852e4f9d334013d5a9c223a8723853634e9e60faf3d42a084095e0ad6a4e3f0f87d681b9819b3f4e35ee914168a0d66afd36c0ea0c1d44899f5b5662f20cd7090af06d6e8d2023d090afd463415b22f2511cf81b0b3946217bbd5bc9c4c02a27a61ed355de6ad991afcfde06bb7bb3d3788cd1e58f1f009b16445589276dc39ee115f39b096065c1c0bb3e0ec727bd206d0f29886accf7e2745e44de42ded6f2607aefb74b150a88760b39d4152b76093a6815a0b95e71fe0a759bea6d19cdedc8d3249f711d876efbd6a0f384997e70c64217eaef750de269540959694d5787314c9454a2a8ec981b34639b9899d455c876f3250b270c926cae32b74947b221882920364e138aec85a3a1878679aa34121dce74ff3ce16bb74b24320f0ee44a161c7e539d10660df24807900860731333e29717b6325e00cce891aec25613c0e2849ea6de5debea0e50448944bedabbde79357e0e343f849d378564ee8e9f8c21842bf4689b5c5db4a3e047b7ed5d4bda7f25ac104596eac5e30bd1965f06c343fa844fc32efac200782ebd6508fbb4b65f02f91e49b0a7b8492b6e2c61dc9ba582834384709542c9621a56c2558ff5d4e00330f6ef6be76122d0d1ad1e8b01ad5730561aa9ac5fc8245314274943d461591d96fa6dcd4d748fd9c72bdfca7d979fa185084b55817afd730cf495deb3da3e21ec226f1611d97a34b5c62bfadcd15d9e04c0a1ee16ccc6919bf7cf94871098191d483c8def74ea46808bb578b74573d525dd61eead3bf4a214cb2c86e7b702b6d714440d2376916f7ed75fb3e25475a17048eb6def9bea7cf339bdbdd98e19fb00eb87e3d5f4ac255bc3a5bd5737a5a9c3cddbbc233fa060951a63e52fa99288f3f3bc5b3e69fb53fa456bb01626127a6a77026414480ab3096eeb05a91fc2c64d269c00faed08454dcd69de8d9214228c3dafa16a7a3ff56c72cc9a01a9a44c00839ff45f47c17ade44a3de0978b833dec0985554c4e33cf9b68e7a7d70093d5e62da7b039a56cd54a8b70b6f219921f0ae3067634b9c684da0aca09a5213f0f6443578ee6cbf7928b53d65f8d2047f3607baf245a6212c819acf046c277194f79f77b7fa3c77ab621cdcdae672a1bdf2450cb09056629f5a6eaf1df6c31c824933021f648424307af8760cf8e67a54395dec50f1a0bde45f14824ae1ef131eb54a2d6d248fd3b878dff3ef7364de573505c228cf077f2e54a4e02fe18609f7027ecf5f26296fd300fadfedd08d41e68260035d4e8738da0a57135419b42d3434195f63343b16763b34848c580240358c73ebca2e309285a7ad04291aadd4ca06cd71215e699bddb22033009155c1ef4d406c903930b3c84e4b64991ad619416bf32eee66506cfe2b8ae080107b4dc9fa174c4d3fdf223cde1c10998c9a42ba8800b6a7bf8d00cf4c44a67bf2510fc05dfb4ca45ba8df00e7d10f3778d5c4cb4504a020e63966cce318c4c1e7f3f6606808f62ec198bcbeb2cab28968aeca553627606d71aebef4588eb19454890ebc75473c3d706b5a97cd05a9c5523ab02e783aa690c59b01556cdaa70ec58ae04c47933661d4e86e4ef4370334013f92d1e1c5865e60c67fea4a6787df09e6bba91a9b9482583c95b35f53764c1587973b3863425747d251be415701c91396460ff8bd41c6f582ffe75e9dce75a5468aaa87d869bb8c2557a6c645ee6e677b8e8dbdd46ce2fd385888d84c22099308683a9453f2a96652a8a1de8273bed013bb4f9a7c23eaa148cf98976e16e5d270358d7f3d6d06877c89ff35d7e9c35f1ef6328536da81d4df75fc8b3bd7a8c97b179f4169439afb640e475dedc2fbac439590a17361e5ed29f879abd3ff688f2449bf1a2d1cb787ac87247e51c633926ca75d7525aef940c2d35f29aebf3e2e3ae0dc218fa809765e54baa92b849c60666abdd0cf06e826819706a083633eee0d152dd94c0172838deaeabd84a8e120bc2fb8e8c0ee1ddc71603549a7a7380ed8f782e847d8c045ad69bd69307243ff29a0162aca257f173f2719d0fd192ec2b2ca1119e4b8bbc9ed6b1ac820098549feab69d2c3798d14a850211954db87d58ce26173594d7f9d2b2c4cc5a74eb87d45abe2161f1ce611563c890f9706491dc2d34f99505fe9b3a154a34b759b8fe7cbce2a4db435f38b2870c0c91c0cdef1394299cc7b32beaba58f750e84cad0a53d603cb56eb11a5d0bd8001c5802e3eae0fd13bde255095359124ac9b037165224a1e1e496e00a7d1e4d7d9ca09eb72b69b350a5e86594cc58332a1785d2db4ab4847e4047165ebe0b012f14b9dcde881d83c88ce088c3a52330a7f2792f4a4ea620a77c4c8638b2f1e424df6a7e29fa347bb372f8161cfa079c9dd0083c96bbf1e10f09dd5296198f4687e3828ca02714d224d965eddd0d13acc0de2eb2a02a48be9a76dbcc535be172b417d29a66c0b8b1d2b9cdf0beb17354970fff211e6bd74a903508ef0e8b97379e42a78e5883a392834fc8b39a2c1cb9b540767058b33981dae090fbd278d5c2456fc23c1c8970282031c6629c2718efc8ce0c76f59f4b0bcce40cde7fd594d09077410b43dd45ff1c020eb370d038ca4d234e22bda4a729f4a932317cb7dc4c753e6818e5705a24acbde28282e9ab23c8d7b0f930f31171bef8d8d3ca76a7f6b5d5f474bec4b77f221827fd38a44edc8a06d87d45b9b3b9f1f42db6c5cac77223eb5350cef8d319a1110caf09e5ea77ab32540ea507d347693858963ac85ddbeddbed3f0ca053a74e779283d806719d133646325facb1fea19ccc0574973e9ce379d967871715369171c870969607e99430c6be0ff1bc7eb412093ffb0fe57f68c450b66c6f110fe9f1f67d6ffa982b35669873e05750222ec50d7e07351b0d57acd7f1eebb4e84a6c5114677904db02e1b0017cc2f59d4a83521a32e99b21dcb52e4694c6658330299295b63087a625d0d985e53c5109411033ba685eba8d249b6b7995853d44b977c96e1a4deafcd1e48d8203bb2e343cbc2083b130082230c8812137b5eceac84d8bf431bdffa202eb035a7f1b8e502ddaa0f7182a89b9dc0c5f5fe63f77f277bf0826830cefcb0d0967c7adc4634334263230f5248fad59a2d88ee8e30eb29bba41df4ae4d2200090c8e6d9396197859c0df044eb86d12a6818aaa5421b814bb5dfcdb8d6e9fe46a8dde5c08629ae538b5f575be1c00cf9832c2a7416374238938f21e116fc85a70f635be69d580084060ca16f498e75883f4477f909b4c2c11b7381aba907f58e11be8b78dbcc1de49bdc366f6711de1b2a07d3062951e095f5ac9ffd61b2f8e0f7219911ee6bf61fdf06b8d1619b3be7c0cc4f884f440142849995c21bef89d072536d135336113ee4cc35f8314ff3b712ccb5eb3e738299d61cdef4ddab2ad209dc67d58ef1579707b47a61bd938b1f715669934de88206f11aae2e5a461a7d98f39ce4d1c89ff267c6fb43d382408f0b26943737805354e79f22c96c4190723e8f439ff45b64ca772c8932c9437bf82047608f4cc2dc831394e9a325afc3d287c60c05103d43f20492e726e4fa23fdda2c3e33399db73dc684f8a82fd7d3456e5abe8c607292b4caf5386dbfb83da22a31bd8c3ec05ef865375eab0e786a05118c137f44a3fe45d5dcecd9d88d845e5bcd383639f29875e707d02ca04a3b453fd87e01f18160bafc43814271d9eae827c4821709e8ddb669607730d8ac4ae0e75cfbcb4eea20bf3ad7af595ea92b820ca236b24e6d8406998c740964e16680919521ef3f170f07cdeeb4168c3e81e76701394b1324ac9f2d867abc3431bb3bfc72769e04631ba6cc6eabeb70c6acdefbccb6244385fe46da776d59a94bb7ee6387a32d260ab0d915e67288d7f9dee1745767453f9f84c276458c6c4ad5e56439d6481f73747c4e316a49994feece60ee3ac144308302b046b64b3acb3a606f305773bdb47cd0a97e8d8e16a0feec4ca4215eed5a641682c6213d4ffb09c78656e9cad5693c296d729a690f46c1f151a3469d5b8fef63551869d653c7cf84d28ca9ee8654958d081620aae8173964cea8c81e2dc43aec518110c77ff55d5e373429c4755472c742d257fbd9f26255af2f4e442b42f90c3f7a1159c465152cd77729ecb5efe38b8a90fe8e76729120d1a1536648efb4c070f88181be28180f11e23ab0dc93145f23ade20184495ab0b4e3c98865ae224dac81f3182abdee44afa888b517361b01037d7ca61978d1363f1509b67389aa894c9ab31824376f905d8dac5988b8ede53c26e5057f82667f73a6ef2891f1e7df41cf53d1221d565c839fc4b05aea29b5ca0c92d1542f42189e3fede9d9d6dd856666d57af850f0adfd47bb10daf4151cd70bb03cb3a626c04d5128df4afef91f19385340fd4e74721816b5a458052f3afa27d1e288afe15b8b6a76fe00e2d0d8bf8c57815dc43e0bac784e5319c766a61fa649c1359eb2a18bb47e96ce4dcc0ac67940c64fe2e84f684a2401bd82a8df077bc8fb4808181ed2b7d5be9e0ecb6a9ce6cdca0548180fe656350a2108338a93ea117050a4d6a6229dec00f7405b2d0ee5578b42c39e7b6fc730ac0ae32b0b440ca0b377f6181dc67a726bdf38da6563928bbd828d564bb0656ab6eba0c4db88162c4ac3297975a540505dec1bd37bfb93721ff4f619dd63c85253fb209b235cd083faf00085e6e7fa3d1d2ee1ac44fed4847d2e4ce6307ad32960244306f125341f44943610f70971eb51812e88067634fa7540767580296627a371f59cedaf23316c87e2108a123e9c8cde5e8ffb6d955659efabec9926caf8d29eb84117d7f7ceed94805288616c7f6f6692469b6d3f8110f6bbc95918b58cb1ba93184646a2c74c24d4e466eff94ba27304409256c2ace9f4394633cc06a7ddf00b8ab082c659ee97059b2fb2b7942f948c8815779b53b2c2bdb96b59771747c89b461c354ffde980a5df1a2f6838d368d7604f6065303283d9239e83a34b670e5222000d10b2e1896ebd38c83860fca6a21b5b301eac932160703cb85bbb5dd16812f08332426cf95b61f647e5ac68df90921766f95283718a62a4415e28a0a493ab972ae00b9469d3a8a4d40236f30e7d3f81be35a42e438002629c6288f0eb2ce0a18142d611bb332bcbd2439752b8fe9a526e2a6ceb5eaff27dc6764ca8cc51f661077e7743e4e92f61b7bf89f7a76668abf69b7ea9fc6e321d53930b53748103adcb74516e031a76f0e09098aa6655d3f03468b89be2eb9091a9dd480ab720c347ff0f010e639a5585a7c354ab782cf84aa9b1b158f81acb9b2f5a44fc4f2cab71a09a1b02147351b136e64808acc8ffebd441f32e3ea1cc17a7480dcfbc459b43b0c6066b81fd18118183f8d19fa060e08f9e7b99d4db3257f71fd99f5e7360fa2bd406a8d83a6c6dd6c522589232ac710d6514f5f638611019c92e465a5c53750cfb452340a3905555727e7e60bd5b609434657274055c3919fa816b937ec63c5a75f79736e4b60cf0d42863f79c25a13171d1e5e71be58ac5cf43b81187daa503a18d27c19f09ada0b7c26e0961339ae8d547ddd15d9968e16f3278979c76ed80799ceaeb61e01ed3fcb1947dfecb696f08da65f9375e097292754acf58c64921fe541c3c6137cb76b49197f2f66d521e2d439afcd617c25d391031bac53372dd20b4e782b8c2972e166bcfb26433eac176c61c1f6aafa9c71d135649c170e03de066a31e2898d1e5c815c6fe2946022bc6c0bc17346d9961603ab258e11bf96d6d524f0e2956c1602040cac9386e789feb0eba7e940430a798880ae98da2aa5e95dc66c409efa9ba37ccff73062b8143c37b4e781779798532cd9916304a6f8bc2f7012e31570079624dec8c87924257feaaa6e1c1dcf03b88a672f2e06ec8a915f03706d89d8c33dcdf64f62f02ea86b82165b30429cd348f00fbea3810d6aaa46cf735726e31f72295ad131eee7f9f812ff2d0c58d445d27c34fa40f4b2b9dee3790f6e535d5a6a0f75d97d536497c14264725883b8b25e064ecaf82dee0380fc262e425ce0bfdb0e46270d61ea0bd2ca3cd6f9879e26bf5e4baa8887b29e7e9e24ba3368c6708d634a9d9e17d87e3370f54379ab73f65a106c7d17277c7a997a8743bd9ee9dc77f66e6ac8f350bb2ff6094717a00d77a7b2f01eea5af165ea7cdad979c88c259fc95909889006dc8d1d9fa0fdb0e970b297ef42843202c5cfa06e04bc43f00c3886548aabc8f3f776da694efb36d66fedd38d91cfa1e4523eed24b2b9443fb56add69f518d2ed85a6ce18df6172782aaa604c42cfd90a1edd6495d6fe64adaae96b0ee2a3d076a74342bae9bbc6d3c3733946df7ef7ba6bfb1cd8befe5c0339411bf553bf40b01111f38cb49e1b7a5b7aa33d57c7effde764ab5d665d89850e544ef848cbbc0213cc9eb90ccca2500f7b7d8ee1cd97661d5f80c36911ab90bc9e00f226302d46ffd3e78d03e2833a3b6c9d2b45fd35998ac434bbb524dbe59113dc3843d9e73870a267f69527143abbc306b82baf077d1582c67c2aaa7ec6447448dca8acded29e5dec343e16d530dc2eafa7a985b1d1c4462679a3c379cc92d90042e07ccd0adbb20f5171ababac3ce7f3e419fa32377ddf335c426a3306d4be3a0c1c4409e1eefb4ab56fbff0c0cc3c54c4fd9a0f4150f3c62a23734e198c546d321421b0340df010a9660a2950c251737ebd12e2544dda95ae82f9f0ac81bb6ca0df953a35518dab43f00d87768e199e0d61299288b896b76115ccca4da210f839a18d78b52fed2e7ce05bb0748bbd084608d3c3e8a4a754d91b0abbc9f0f1f5efa2b72dda09483bb8c5c83fcccfedc4910f16d36bf009043eb6c9501ae9a346d077f1503f89971fdb83ce1b3cd27277e999c10bc40f40895b6f72ae7d4a34e7fe149806b573cf294030a6a312c15e50afda838057daa9673f808a0722db3eb287cc434e102993d7509de599cf4d37e84c2244d8e67224e0e0ee80e585225299d2743c3760cec4d19c9b766edebb68c3449f283868dbad591bb344bb43b094cbe3b7e6c0a3b6452fa636659a6444171b5b5198341f90de7d9f8f01c45ebadb66aba4b6678743e1a242bbded36f8e2d7f9f9049286300eb5fffb6f65226b7c8c242948d46404d47c45b60f0d927811bfc8d59a7a06066a985537cabd4270e6073a084114e606dbdafdf5c7daca99962f2ed03de82c4591b9675b6ae7f67f3a395626c52d27b854f3659b79d7c66b46834d409505bb181dbcd97fa9ff54e5d8b7dc5075a69e8269f8876259c1b0a86273c31062bb87842cc17e7f498062bef8b96e4c03f9554749970a3edd4de20a2b6263445aff5646d8b7c2916ad1a3e610d97cebd8c97919ee020392b5016cff62c81d237419167a1372832a66398589625837f10881520ab129b5676e4a70f7ccfb2618d83bc1bc699b69c2074c298d7df48cef4b71b869d9130a8489435bccfdcd7717aadb525cab8c14f938bac2361b6380b469020bf12323b499a5ed3dffb1ea2bc32aa728d76604a76dba150ee9c98f7d24a9ed3a40ec0269d54a14e5ec3a521920deb9bbc2d8a2e827a7b13f5e00a2f9af6667bf64c961757bd545ef61d25c997e62c949b7395d85fe8666b0d2a41d55c3614a66ef7d6da145317a9e89485dfbb4ff70cb3d9a7da059b614e1b72611151705c29f4ed4fcbe2e22785d8c23cacf374383010bdb10cee9fd561b4390d6b3a3427b05938fd6b576623beda142e0116b654376744acc0a73cff2a4c2401980d21f75ac4ae1e5893ac97dd2dc28da3f542c05cf771503b5142518b3548c381a068b7f7169157ee2303d8be74350fc01b6cdccb6541bea3be691a096387ff6560611cc98363d07cf31e5eb7a6f68cabe89a1513246380f92b4d86a67573bda1749cb64c1844238e687635555bcd950ba59bfa5b9ea1ceab9390003be32f4fa85f2914b0643f9dea059cadae721297f37945483edbf3158e1d5b05acef255251d241ea3a7ce88fdc0a7cbde2a2648927d3fa924cdc6d586ab80d5c67f6a2aca0319b99a764dbc652eeb4a3bbd7c0ac7c8e7128d8dfffac6fd25f856746c5a3b28eb3174bd8059e5e618d2e199982148c266fce66fad45598c88f4aca1572f975b7d6017d05cf65fe08662983e0d1d4e5f9c07a209847ecc650160649d84803020861f936caf8692af0fff79204cbf88140cb333ca595d449d92ed78d15d5f407d6b76f18d7717434afca56f418003347c80aea59e6b81cced96e887bdb13661598bf87924eae757db2dbda196b0dc7eacd8505d3941bd3b76467e24ff8f90ca93600c0675458501c30a9e4b722ed4c095d68f19f413df246d0fc34864c6d872aa9ecbffd0a54073bd219172a9b7cbf9e51e0ecdd43dde21591f28502359a0c140d34ed00020f250ce2c9f723fedd3eb3afeec9088feb41a1a75d1cb9048c0ded22caaa066a9316b1bc2396c1fcf95f8cec8080c453476a5028689ff592dcde9097931619d7bc79e8ccfcb1bcb89faf5b57939a3ebbfd8255f026782ff6a5333e5dabd70154e6b541cda6d0627f4155b5cd31df2d2188ab66a14e538965ff7294cad392ba198f01d9dcd7a5a8af902583a654824563fbe0a0a7d283b201cd8be26f6c35b387d6897600b4475fbbb571271e644712cf2daf7054ed68b1a7fe7e06cf3ae2b75f7c63d22f833a4d01f28268802e18353d588c29e3eb2c72c0bd5e1c4d4c6c1a10cb84e111b4c85700fec42d0e42f6a8e16ed6c74aed280cbadbd81cf9640f316981c8a65266097991ee0822baf3d0526e7d9d54577897f1539045074110323819b51dc4e5d297e9b65b46cdf273588ab61745c58552781fce2493a9c5fa32e729232b40034417b23a725343b853ceafbe9c73cf42a74669236213ef1c1355e751acf72da84831180012125f235449dc15552835a733c52ac2e72a4b9cfb8dda3374cb6d93bc0feea49f02a0be01fb90863007e38900c6e7e0ee247630fa4ecdbab464cc2239d71011043d84540a7bbfd67193b8db694554ba03127405fea29d3d43420ad1dc1bbe595007dddec9d92efebc14f16184f972a7f608bf8809df89dcd2b917bdde97d3ab85e643ff1ea1a8ef1676887498f5ad13c5bc63e7a580756d4b059b218ed25b81f1310d465562ff9dc26d139891256c6d2b98608543520bac136f58b094669f4f028a1fa5bbcd55df5e8685b9a03b0fc680365b49585303f741144052f61aeceebe01ce81502aa1f4ece94b38af13e06993cc2533dadbc41efec2e7e6f7818f50cb6d6aff62bc343f8ed94148b5bf19493fa855711ac3b29150de92e1181609a121c7ccf5a9fab796d6aa5d30f3d757fcc450892d587b790b2f4602ba251a051e087bdefa5d30d0239d232f31f09cec4a00c860031cbc9d7a79beca1f15704c79d525a826d2216042a9cfc877ae68265fa5947f82905fc19e0cd20d9539c805782e1f462d240bceb37c8485d940b1d84244b40ad27742010c6027e93dfe5f6aeb33eabc8bac3582bd2d999aae0952a07d853f031b26cf1a36a820d0b8210bd844a8065b9bda0605beb490a8fb9218efdb3c31d36c98020cebfe3859f521c3350fa9c46c9849d6df13f0f38494abd6fb19da050711684f1390dcc04de26779058fb3335591d710d2fd7f052ec2554f071445ef1b69943cbec34979d4b61bb17a701b8a546c018be951ab85d1f97c90ba6210387aed75f3a091197bd0dae2a95704561521eb74d0313b3a095a759a84e05436a92b7fc641bb8b5cdc0285747456796c91cb270d0917856c8cdc881ffa5b1278345abd7faaff37b8dbf5e88e05d10304a95a3db4eb1d2528c403f34c33e939d0847fd35f9da6c6c25dac42cc60f8ab754e06c12a1a0cd2bec90d26d12cfa37f577268a2cb0ab6007d7a14071fb001ab2d86b1ac5feee6c239f8062838d013249b2ad15b8091ca0bb23ddf8db0224d15709ccb2983d9c88c39b247228eb9d6659fd049c1eb15c2727df54742ff9cd58966f5af1ca59c222ec54afded47d14b4930683a41ebc592ac02ba18ee62c56f5e770c83b5a7ec877e433ea3d0c205d67c61af2dd4b882058fea964f8207dc0cad365ba29fb9f1416891dd00a966f06a34b5fd424bddf5065a98bdacff1ff56e4e383e563cde62aa135958df2b3086ba2aeff3dbc9c89717a9ca2b2a8640820d5559aa8503173dbc0532a774379a1c69b23aa7c0442e8261b2feac8cecf1359e717ef86a3e6720ecded5f6692b516a3c7ebcd6ceb28fe23a7a3e0eba7f0888b27730d7da3af60e85ef5b1857d9663ea10d241c7656a0f1c928f67a138de985b115b640d6a50a2b042158e93851b878814d102c3b1ec2de66e3ceff6a2d17e893a91fefdf6791d4ced177484f58beb1cd416149d2fcc93e094e0c16cbeb498ad0d3b03fa756021ebbeb2ba9251773103c85a01de8d94d2a8c7ec4641300d145e5de15ded4b14316fcf0937facd505f7c7348571ec17be4363c2b39aeb8d9bba4657397e1902dd5564754c211beb9f6832d55ff69edef93e3ec192b6b16166f9fb2c61a15462d7a3997dc521b8532ae3b26039966162046fa5dbe42063e6cebc5977a8cd33246a3edeadd819df028f7f677ed52fecabd9a00b133d25becfd198c3248573798a541c2fd541738d2513b56bd3a5253c8dfaf863593b4ae923b4f3e6ababd15a1fe3af584a840c1d03ba3658cab6c226e83ad5422b0b55c39e51c1bdcb770f767d88f18df4529fadf402aa299dab5997fc477f561e16a99cb13ec9bedcf443eace69462662ab94ad309ef555cbaad735c332d0d31de57603f3c0799466270c2888377a2476cb19b1e3f06db0fefd5dfd7744eebe309b53af8bdb4d81df5d41ad97d300b0cfc776e752da30e0f9e87d24217cf12e85552a8d5d78920567027827c2477ee4bae02583d5ed06a50e90fef781a04a191506ddf0d986b6a0e325d668fe0073cfe31c588e47ed90555d6119057b348be8e4ef2b5073d7e27cad9f8e0c70af2cae39c139ccbcd5a04fdd47b8848ba33fb31fba05d93d48747994e6df667df23364c16f2e9edeaa77d254dae11fe1645750a99b83d98f1b29895824baeb7210f1b67b13ad05233c552fb572723449960be251cda3c4ab2cf9a0e48315d00533ec5116141f9ddf7c58aeddbd8637c7236dd45859760cd9bd3ad2226b48242c3c3516f5883a594cb3e7399c8659ccc438b690e87329bb18bb9f1112903d7d30c53e6824b06e5201d34ec4521dc8982de4a4ac711593d5b2ec9224d21a0717ddd50055b1bae7389896fdca31c45517ea8833cc1d838aa0452ee636361cd880fc8f1cfdc93df2f720a00584b92e640cc531195158bf7e455ab7c774dc01b78c5b755af0c000853b26ce12b6e8a72a497f6cf309ae1e76c7b2006c40188615b899bab2ab28a448438dc6fd495c5ae8f992b589bda5743a1890e9ff106c3a3e7fabcee0c24e464a287f5875765592e5b3518d872bd9e434d344eece387e98920c10bc9d0d68b8a162bb22e1cd56cd98a3e6af6eb702dad82efc13720796a252578a89e7c3d215453c43c41928fb25f5ad975ced4a0b22610f95d76b7349fe14d24d80c7ea0c236b597f4cb88eba72b3d01ff3553e68db39710d237841630b2e152fc81e63d4f9b01c2a615689f826145b8c2ad370f591c3d7f33511ad8122a97f9deac9fb585ec63d749fff175747913c58fb43f50b072e55771930491652d5509e4408e957a0917d6d8d29257cf4e14cb5d076860ccbdc5553ff099e8881445ac2c1e04931c15b0139391c7f13ac1b936e51cdcc46c33743c1680ceddd0c1ee45d4c4fd424f6346aa73db72084fb1647a98fa145bcc3ac1f1a7fb000247ac8c3ecc28f1aa513ce28450b286cbe212952666af708377e22332e32b0346665621ef59c7ff5c0d39b2eeda2a06586acfa9fe878147a17e1a7491b57c29e8f7881d035477eb4acfb564e3ecc839fd8f15b74d7ad0928d0a5f43e429f6db2099bdd46529c269715408b69c99f6d497d2f73dc810e2537487ef98fd2afd01b36a0a10df3a279feadc0f0fcdcd13cd374ec2599020bb2b24015976206925ac023216955b9a4447a2e7894fde5fce70412f8c8ca098ef1ebe58d9faa50f585c7b8a9af26e5a97e4e71d31a888f88e4777d64c5f87854c40e439c17df3639e720f27e03dcd4e94f3f211d75e59069f2c536d5d02553bde23af023b75a774247ea65442625ed11941a78b1d6aa6390b32736adf6173d2be605102c5d3dbf29fdf4ddefd7248cfcc640d63dc7dad99485aa230b18772e1c273c8afb70a676ccb8d17721439d7de161d0f2e9490c3069732bd7541fc430d1694c1949fe340eb2ae3650d5b6a213227a63d8a0ad349ea3eff5c0fe54e8ae520d7190a9e036c3fa5da2f10ffd065ef7bf80f77d1e107b53a0eb489ad7aef115033168b8d0893f11d3a317d9f12a3db4a53823d8d707200ec010b36f55f2e7e38514d49c0e9615804b2dd8b3760ef64479c705fc70926f9dbb320db853f32a750ca565a29a9ab9adf669ee924ed3fd538676522539bac4010466fbfad968f66f8cb5759ac8dabd848ef8f37d93e69c11a5a1d83e49ba40a0438daee1f8e83f338cc113220d08a6b092702876d6b01c3c05d81ba513b2130c26a691671a5393bb837414637f383e638cb95553f8ce1627cdb37ba30dd312ff114c070c45dcf8527d268196326d822e8a64dea7755d4cbdedf55a78c1495063b43d04a2138f1b9b9d8d4b833f93643980cba730e9bf5c21e0b59afeaefc46fa156187b20c46df33b1672bbd5bacd2d1987c06a91a39deddb01db6bb10cd134efaba53a30e04b11adc6c237e3a3bf43d60373ab0d2df1960856271e59655158933bede32599d6c7d75e2ed5984fa338a4b108186f0ced2775814cd6d68e63c26635f5fe1d2d9e11f69a7b3dd225800955009ce0ec573810ebd764f315393bec0d19670d4130112b3cf686f39ec6c89c68e1ba8b5e7e89b3b270c01d7c9560d134c504159e65c58eda4b3f8be798e3bbd0a4ebfa8cbef93779a99a07c6d05623995b828600254d70018342e786e2a09d8bc7f9fb5b1689035401a1b62ba9dd4ab3ab4339c3bf832d64b99fda6672e9aa13852cbfa80691c924fa1802e547c586886b41a6c62e73a4944019b882b132113bc772d7cd326f76f93fcf71e6a30335dab64e85ebb95092488c5e74fcd1a96d5082fe525115dabe2ac70dcb0403118ec6a8e9fb1a5c237100c4700708c5fec4337cb8e666a64a156b872946b84a89cecb864780c60a145de2562051258cb65372c640a2b3bda11c484847ebea3583b0e48d64d9174de9ed971b07e3ff110747bf6bb4c7298125f6190a2f6cfb0c96b94bdf72c25a66b98859c0572927a493858a93fd06974137df8adca08d447afbb7e59c53cf4cdfe61066d74d6b0036b7e718d866b37444eb700493ae78062c16a7f41a967d8f6f0777361c3b7e95b1ddefa2e6ae2ecec7d9019a725e77d967b14f60ae04b3f62352a68b1f2a6a45c7feafd5fbbba121dad5afe81281e1ebc73f52fe25fe2017b0233295e3c1cfe69a1991c727360e2fe390729c678141890b8281f620c157385266281afbaaebcd347b11a4f2a477d9fa8b9bd423fcd2e84f01e03930e3b0ffe5d72b99c51b6b52ffd575bfd30815d9768014fd74bd8740d3a8240e892e35a12dd08aed3e2a787b963008f971f13fe9de7b3624f21d5ba9dd802cd1f7c05a56c88552f3daee7a950a13c4e02fa96f75046e4a1d39f7e14d1af53ced77c3e4115cdeed84668c06ee412c6dd92cd561b94f7935011debe7f7cbc81cb6f63fc24d72071e1bd50070fb2c06f06d38ed35c3d32b665e41c2edd82f546850a9f979e481b78f4903827293342863cb6428f71e556e0ae3f4181fd5a9b5abf508a711d137546723b7bddc2be7d54e0cf0f8cf735004eadced2fc3d11c60bad53edc6306bdc2acc09c17053226f03b069265c51f72a760763e24ce2ee9bfab5ec077e060631d9501fc09182ed323ddbe2fee19b5576b6437577b2f652731136a2cd5012b7e70ad682a79732caa083b9ab631ab3c778fc7a774da554f7f9f5248b00aa23cd50be0cb0acc6076ad03cd03263dbc5f7c4cd748d7ae9d02fc504fd8f3a0b70c9183ca4f86ec3aee1db1883fe4b271aff3e9948eec26231fe0f58d2d31363f912fa924b50e0e1530b3043be205b177ff8122fcc2d1c87f1c9cc05f4f2574a2bbcf87521b181f7d76cb30675ec3335850f90db971ac4ff21c1fc30c5c8e51e6b4bd10bc990faabdada17050dc30e763762d4ca97eacf9f0e8b5d43e530885abf1010c1f968047fb528d4f7d68a92ef18c377e5e5ba288c07372c3aa8948bb8f87ed31be24fa5cd49674fb4c045a731e6308706d1fa689049676214ead591574b879470e2dd919bf8a9c5fdadc7d8d5bb333a112c3dfd09f0e67774e8940426dbd402ddd21ecb3529e3fd0e651109d0f0465e942f0cc7b3414491296eb7cd2d1e09960c39a5b73e28614fd663ed66d390b48e3942de75eea546996fc266d4659c3c9e95cd3cd525151efaa2d24962fd55055519a826c7202665767f9495c67aa50cd32b093596d82b6efd2c5963400e4608c2de1f6314dbac67c0f898ad50a0e17e06ae3e29eb80ef05c1ec3a649001625fb97386dfb86e33914b0eddeafdfcaf92b951bcefb21368762b33c8c4780b7e6486c62c07cb254a6a6064078bdf2120b27fdfe55bbc15b2c9b3630babb82f1d9961caf3f2428fc429e623e7f06b1d0151f31d93fa5cd0bbcf1a1b39cd525e216f40df654732fefb258adb0d0d43fdeacb27bc5cf2f63b84b8a6d7c0af4f9644303475688edac38e72a9de419def838bbd5ded898d2955156f0be63245cdbc0072a1763c81d5c325a0ad35a55df76c7595ef0125dcdea723070a2c0cafa4b259ebf253d5be81a59c2a1ab3bb7d2b98ec4db967839a517405271837c892d3067bcd5455212751e1955530ee34f26b42cddf880c822df0f86237a4bdd4fd369d0860f9a7aed0fa68dd7d20a76bcd070fee01a343d60ba87f46e71e4508b32cb04bb17bd59b9060ecf1e24128de5d0044f15ec9af810ccc2342c99b3b363da07cf77c69f647b4b70bb6ba3523a52a47d798dc3d209efe227e1d7c9fddc7df505d437da0c285d3adbf67e5d4e67e48b7b8138fadfc677f4be1b7223c513255c3d4017a57324143d4f12af5791c3ab0080abc15524ad3d4904363878fd77b3f1f74881352984df8eab26cf442293ae94deb798b6d4d49b8ce24aa746d270fab6f137f87207839d13887009bc572466d40c782bcbaeb6eb37f59a07274c6e9cb6c82757c28d64a1e9b2787036576f71b3c9230b7f0f771e45ad79d71ddad2e276e3d2ac7a70310c0f0f61f2ec25b710b279af3137549bab5fae999165c9e66cf28277dafe3a794f9df32ffe7a88f2c86444fd14db5a624cd2da7981f1923731d21f2f942799b8d3b8d8d065daa74da284bf1b0102c9caf7b62cd3ee8c43c6a2d645c05bcf0ca8b115a1715abae8d40622beff700062877e9de28ecf6cdbddb175807c087117154ec0ca8066482980120a97d39e363ee859e0a3ee88726a1a538fea0033c4ace2b45f76a938450b07e125bdd4e360582946355eaaa0986a6e2c61cf4ce0772484b35192d9e25bd8d48986a09da618906659b62af6876e9b784448603257a409bc9fef41514dd6e3da342987fa9fcb3aad1e3e3a8a3d69f80e396fb1525c698b2e1f341f88a1058f053bf213bfa6aa0ae6de730082a70c3a396a6db72786f8f445956d75d71c77d9a5f4e6e31296c8b7e41d17b54f91f52d70c947a8f6f6b2b559db160bf74e29e312cbf7d530c70b712b0f9a533a8d1041b0e7b627e6fbe17a835e341efe2815b9a7e421f26617565b9fab2fbaaefff19af695e4c9aa373940676ff437eb6f955ac3e0cda09af5c9814bc14175b845b2254f38918f6918196d75361bdd464553e0d8231f8e9574f039cef632d0ea29ddbaba1cbb24965b68a567de54a9568619648e6b829b69e36ca28d03ecba1d4668b81fc05a854b032a73ae6867515a962c11e99f20446e33f0442711f5669772419fe5227c940cb396578629fad47bb3f42b583a64f1e1907dc8487ffd87b95c17aea03e3144a1b256c6b981e64df0ee8821249817a0ab9f3979a53692c90a050ca55f6a838c242bd26b7b1a5321ffe5660594af9eef3451107105a822bb457e842ddacf651c5d8a01d6965f8ed199c0e62580a1d629de701ee626bbdd4c5e07f583cf230f795e70c48aed8012c1f43163afe3402b421d8c5ccf66ed919a5f48f1bd7467459af56c40c78ec6c93a5e1f901b6e6776e4b0d06bf290d9069bf7ef7828e176044a7d8c5e3c2feb572e3588b84e014af1b3394cd345851c1072244163d05817dd26ca67e05a02800b8cb8cf0c2dcc38dc17458cba1b2a445f6546d52b8ac360b4f940ff5f829fe92094ef95f9b9e913b4ca4febf8a4b94aa9fccca709229a755acdbdb3851c1c1c79af2380125396700b2d2def2151584455e2d477bd3c755323631fdde0d661a026fb1d4b5df6651d72d5c3def9093edafc175d3e2a8e250a37d2eb5a12c95b688b1ecf3d359b2156d5e5d59d1462ec6eef008b6f1e557e0815be50a072474f6761bd0f8b6bb81e1b1970a136451ff5cc33295114b661b4fcfc28028a18f8983f214b05c73d5ba8fe778bf449cb15f8f07c7fa7bd54d95cbf105aab346bd86369af9281b92d3441b9784d4af3bd43365ebfff0ab658741aee0a93b3bf54f56e6a50f3130aaaa80992fced355ad7f2492e9f50071a59c804bbb438a70575be33c56bfad9e4b41f63ee0c69bd0b8ff4f2a919688af172710227ef8dcd71a2e9e6ed4a94b777dbd373ab825d2f7a6d4d616fdef3932f04e760d3888e6fb4678c70c1c6d6490adb682c87242b34b99f55440ecb5e62cee1dd6bc318e49b4335f937763f9021511d1fe0c001fc919006fed5162dfe889fba1b2aec0eaaeb4dd28b44994dd31f8a491d5cc62fca753a7156fc016e7a882581040235842efcb0558850a71f0238450646f6f29e5c00064fa9624491f98d813827955cb9de44430c015373214dc85f8f9166c301ce3e7547b96c122fbb5fe6b3c70c5fff926d75b00cb401da2d54bfb333e2b53a5452fc5e529c766c7382488e87e4705b8b4998478de95daadc569914c8412ac880e9e94def98ed9cc2633dbe39c2295a137154128f12393bb673f027a98825200c444cb1db7203888f505dd9ee6e0f9fcb7ad25b64899112d9aeee3dc375afea7f5b83bce491ef83110db303103088f81b0b9ae2dd3cd7b556f3dd45ddca9238d616fd5e836a862289f9d65c67db4493a4432e1d7ecd45386e568cb2b9d9fc9a0c75d6585cd20b912f4c2f8e5f94a57191af66c418cf6d9e2d09d69c654af29df19c5562c93fcce96fd077bf6a82c7a91c1539900b09d0247b402e7dda265a410733f8aa9728324814f7a86e1466d080ffba5a50db771118f82da7858704ac7f2f4bd0dfd8a2c4ed370be25a07885782ce885a1d38111948d7e4d04df77deb6fc843e152184690d6f02a5b4a6a59eedd339947c9f524d617734e8c016fbef1242d24b2ab6cf1c242b10e8f227dbc5d92d0b2dbee4a971f908dab050a61e4a0878f1a634cc3e752d6fa02805d3a5b59c0bfe690516668d7a8a3dd875e11bf2032d9b73daebdc30f504341371566f2b0fe4a899b5e4b6a2ff61f73470c91707a23896c1f1e334f106fcd9320ad4958ac4b28d60fcab1c5bfa25097bfa2c01f5828832c00c919cc695bfbc8b46057a103dd024a0422d34f8a9078dd0dc9039df9d3270aaa88eff986179fd73228097bfc838bbd299e557652211b2f2dc8b373ec16c014c512ff848865bf0c5e68309881576cb6ddcf8d4441abc19e3b167c36172f8f31df6a04a7ad60f7c95cef2e556de5b915b1c258bc484fb8558f39a93a50602cdcaaaa024d22d7d5e4fe0b24aebd2f342ae3715a2c6214895d2d8adc2a65afb7786eeb2298eececf17f708a70cd19735ca78e1a871358d9863280fd650e549a16901d44b73845ef685e7c8c5fb95e72fe59bde3310505c3a819760bf98d6e1ff703ae3a4ee8bbe282763dbc5fe0ac8069fd80129e526e74706fe041c0baf0d9cd51948a101465c0fbc806a8af48dc0d7762459134faebaebc1401174db189b06b361b5b83389f07c399517b382b6299fbdc296135779860fe37d8f8cd4d6fbbc13c3a02666c8cdfd096c045c7c8b873efb618c3647fa8ee4ac0da36fe2ab4d9fcf45e88b47182394dab8ca4c45555f78da0040c8b8c920d59d397b88d4327e896ab8298e1be21371165957467f767fafdf9d7a0cf269fdfd28d691a3a6322011f28be86bb780bd795f8a958b0b095a7c04289076ed0598bc48405ac7f77e83779b3338386b8d1320598a48fcfc059fc72892379ea6bacf65f0d02198e1f5e658d3bd237de096878874bfed6645bc0f82c0ec86798a287bd5710804fa2e8336fa99c5584e18406007fdc7ecaf91b1716b10fa0d00c49c85c7c1bb8dfe5137a209723daeee815e1de5b7a57220b8ee45a8628ee7ebddec623722d6be9b4f9e968e26861b9ad98abbe94e595a905aa0be3d71ae8aba3024f4f61422477f9befd07f934600614f468f3db49568b365a8e5dd2176fb86aff7e26640f258a09240ae56146902b90184e51ffbd37e3ab357ee33b06f93e6223673b189c7d93b273b8972f37e24ee2750a6d9bcd9506749d39bfb644dd138b8c6d8d1007933d84d58195748e3d578c40577174592a33fee4ba9fa3f94cb74767bedacad4ee6f04bd76792e52e820b1dba57552fd52fd0adc65e0c0f4bcb8863a315e0f8ae663959b4defeea40b225818dbd2c816eb0dd18b30867cc5fee629ab5a44549589d840c68172330c9d5825c7cad0196a8b870b07e3f5061e12384cd0697708bdeabef7da494bab918cdb9e34c2af0f288cd9643274ec5181b8f418ca915797e9c99edb34dcf260e2b586d5957d1acb9df839b7df5df179915b9d90586ff29478d64b7e8680552ac4bf7f90e34160484026b142869b46ece4265cfa9a575be517fb3de1eca9ce0b5f5b29c602d6bfe93d073d8e53b94dd2739b9704865c79d852e452f00e4337ee2eec9ab31a763be9d7f260e7bbbea761eb62f81785bcee55a926a9d5553bb067044f27fb13303816f167f0f6d7699d5d6223b577401d3bbc7ad151c2a244ac803f46f34dcc6dbc04cbb90b745818b32eb1226268a92aa5dfeb1b6e5b96f7a0f1a341acc9adb6e2869049c5e3087cc5e403c7e669d806deedd1528bc85518c8fab3eee424a8430720a8ea719322ed13f45ad330aaa7d8a3619ba92173196c500bacac05e93bc7818cc8a0dcb559de3b3b07396286e2d4da88039c1e60270e00550867464ed4de64c207b9aae0c4af576d4a6b9c72f1852ca80c5ef863f522d80a111cffb8e8a27b920b5db63dbfbc09c40a6fcdca09ab915fec0c0ee20e9842229110e5ed91c768decba4b83a545b34274fd72140eac74caa464f1ca9b7ac168efa3db673dc9065d1371b752e0c573e038a21c0e931770ef1775c59a730c7ba05bea507013ada7813bc08160df94704bc7421ed0d0c9de81d787ccb306c4e873f8f68f30b3aa2c74dda810282b6043824a1b1959a6ae8f8f4771b97b6aea484ab0f60647001c34c38a838cbc69925c74117a5da4f3203038cb5f3017fcdff8df13d2afef6c40f7139f9ffd8f3097c88f608242410cb227e03e2759dc79e747acf27af8e5c3c86cddafcb748ff3cf46ed77ad80a5238583ad006e61724370f69123905dc5ad793befc4edb7f991d47a7f500191f9cb833a23083a325e5034212b4087cd6c6320a54c5c832feac5e119f38a6f4be18f6843bed84e98e81575ca2178ede87a98e30092a4962b81a5a4a6f5e34c73a88f425524e756e879a1b36f6cda60c6bab135a30df6ee298060affe35ae9e83233d5a9b7769c218a60989ccbdcd1599abb33de6b4901bbe80b13ea1c3cecdfd498933df31f65e055f51e9838044a5f70ece77b59020287b2263955ed9ffbdf07d48334ec76087e0ecf3025090e0d0bc8eee12af02bbff774dceffc53517c019ddbdfb88e7723751b069a171edcc52645a626c1e7e387450991de8b323e640bcf0e3a20af21b58c7cbc0c2a18703fb447373a368d684b9a21c6bfbc3346dca5362ac6a2f49262d10e924e8ed4e5e68db9570e61601081bde9faadbc637ec4695cef0d2728b904b273da68482f043ffd427de2ba45b59ff29fd239ccb4bb030d985dab3488240704aec15ac5deb81d441f70de0da26803309cbd6b333b54117b234b37a7e92a1be6b2eefed63ffa6615ce2a2b33c9a0001018411435a7af095c82dc2a10c879862e3ddc0168023324c7689cd578fc439148f0c1ff8f1b8efe391fcd5e1ac430a268122a97cafb3dc9cb17ef83ef615792c9d833566696c057041b96ca8db1e1ac972a19b9590b9bf6132e1db8088865993a097ba63f1c8c8e84c85d33c0b7e69e8d7f37ed51409b68b99d93d816f47c7eff31f4bf5f3d037320f6f1a4e775bf255f7ee0de98af227a14c88f47953d2df15c12b8709b9cf6331044f9a4c151a289d0db84f9cd35f10760715e752563c7d4961227164c846f8805dcc01d748d8f9d5a3a3d31d1c859203477eb596f619ac70209cc8c9395485d525bb27b057efb0c4808d91c1b51b8a9d1a11fecd30b3c92489d515c1b96f46804585798c59d7f99f019e6d3f39b1421eb0e3c926bf7b33359e9b13bf2c34f25294005dfe9b5134efa77c12eb28973ab93c8f7ca2394540e0ab1492cfbc1d0c30c1b746e903c1b11931e070659023bd49a883ae05ad695185e633286855b8b4ed195fb4444eba6ee66ef96b70c675848e23236f6167168862208aaf533ff281929a1f469d40b37612a1cf1e51069e6fb7eb6548609c06903a25713e68321c0b422ea1e747ce4d5babc01700e7ea80b2a96399b0dd56c06768812f591730496d9dc8d49dcada84a0762929625f07cc5ea125339a9e2ad4ef6c9b6c7c8a9e5ad45c2623792c85ce92ec46a58518658c042097280b56d519b0439a485f409420aa1ed20a7bf2cd3137f42845f660293af48d6137811abefa7e7b17aa1cbaee57f5e96cefae214998c3a2136cf5bbc836dc73b951c573aec85aeb250c5eadb249b17af06fa83baca6505a343d2790ce7cd162d9f05657e0414a809255ad545b16bf97ea7013811e888891a94add2dcb788647deca3c2904a086218e278a315b86b4a4c9665b0b9018e5123aa5a69f4384948269f4ab29c44f1eff6d0c3fa3b3bcb9fd889cff72ba4f44c946308b80b32b21ee23af4f0c190523e4f4efbdabe3e5b6face107844c0245b9eff90139797a3d599223ec9e3347e2514672125da1afdfb0bf743d153edca6f3827a08ee8a6ab1f0d124a02e071acba283fd2858e8f587c400a3b43d357d0239aefeb4929f9c12ed3e136e2861aac6e66b59ec4852fa62f8c1838eb4b6956096ca00d372f58bd31b16d0794f37e783277dbb5b02eb690de6d97dab5561eb5e07cfe913764d621570130e0a7cc0d93c0d0b76339c93537eb3ab9edc7fe33c4388a0900e9d9e0cb2651fe4b2e4c6f64f5ae496fbfc52fadd6947863ab842bed20408a785b26142e65aaecb80b07e3f8547c829da945d83583dc5a0fd83920627e7e6fc133655e5e09d8febcfe8187fe18c7b955aa9a3f3edf1fc015976023f171b5fb164ab1cdeada90c6d00acf2e97e537cdaa10be481e8f3de3e6e4f22885e63c593a1d5e22295302424714f9f7767568b6eec05c95cbacc67e1b809c7ba3c97907f3bba324716bddf4a3f1d2035943547f8a3180ae4aa1a951c87077b1c826740f0d26bfdb728223f6ffb2cf51aa06a9cf5505e29a0290c8d85a4cf2720a010d64c888498487c31a6d7499472ab3266de1ebd56851997a448c8d756350571398d0ce9965865649c65dcb28ec1c0d427ef82e11189a612302a6dacca152dba089b0dc43398352689023b072dcc6bd60cf3f659d21c4d5d3790f2438882d4ffc48bf4db5f8365ed0d17155cbbb4f0f230a4aa9195600e45ce29f3993bdf52ed3902949c9060bbe9209f6e82059245ef3a2174f93fe5ee592d18b59dffe9d9c64d014cc71112784d6bafc0c384b35213fad26c9d42afa7b548e660f1aba9b43474cac94748a22d78b19d88a440735441a3efe4ff3ecfaddb78eae5973ce219dc914595ff56d0f1321b8f51239c299068a98d6d5092b072dff5938288c52b7f13b32322f4fbcb8283192b157a58aaec92cf4ff8369b43765d64b169343bfe65297edd083edc5193444ff089d01c49e39e06340eef40c1f564f4d0e8ba7605361ac7d8dfccb093a4039a2714ea8f94a8f5fcc6ba003feee3ee4f7650dc3033e15add860338a454b5802cee9cc755fe2294875d2e315e1c796d7f05d4de1b40a4773e6d4307410c8a94ddb0c815f5cc7f2562eb3af05ccab89a9d5e364e7920c2d02505f0684a437ad25b6ed37f712d7b7e067bb6ec5db117dd21e8c1b9875472c1f4052df687ba4435b78e9413857b8312b5fccb0ce3dd19389e63ff0c7e2396895ac84844d01b5e93bcb281b73f4c15693bd82c12649d6951d1a7f23064a17ef6fe461fd9bacfc41440cf588bcaad91b2cb364836db378b36b0663c7bc2b78ebb88159dd1eccdaa0dfd5908ba3a0bb19380a6b00f0da368e9fc46d4abded395c11227c318d7f8f6b86e2f265c641e4cd6fdaf783c45be32efd995e3ba7ee563845b1fd119709486f2fda4f768c68bc127957fbbe6607cc1d4a4efe3b0d4ebc0a71cf54b4830d546383edc9f2d3bf992a6a66f0877caab09fbec279e43da103098bad98f581b96f21363049c0cd15f48c4dfa1aeeaf653d360a988aa74890dc07c4c3107b13a518bc31041014df6f7c01cf5b004d21868ec90503879334d10d05a3f4e26850c0ef8c1833c98d0f2afd9390caad2160b7f8861ff46f4ffab85fedf906e724a963101c7dadf221d3cb92ab5cc0ef0bc069345b25e5321a2e237cb3c8bc55c1746cffa136c0c870db6a5344d759d526f8996ce4179dea2992f603da87c7882e589b3907a16e4681710bda91fee0a2544e02fa304401d2a17bb9b9cda6e958480795a6469930c19542c5147720f9e1cf2010dd04a28f03b80f02a870e4c69f78b952fd807f538f610315c8c340aa0e630f8c51cb023855cc5f16cd2eb27d4cf78e1bba83d257d68f06ef0b838bee64c4241bc6d37c96f52955e6324100927e23832f00f3c509bcfdfadd64afe28486daec2f77acce41ed2ea6754316d9d47fffe0a027cb95db3b1dcc38af0495a7013f93a54e250a6d98befadd341222ce846b08d96e2d36bb7fd1599181c2924227cccdcc994d5aee321764841032ec5d38c2f04087de38f5c2dc935f679e7288dfc3bbe077df4c9134d003aea928aaf16c5237c48434337c942695b5a019d91839e5597493861a3391f4ba406de1c615d073152938bc2aad668bd2000b73290d8c83c300c1c84e168d6c523f76a2f787d7a3dd8e4e8df23aa37bf353884e37d0396da2956d69801471c13efce997bfe557ad6d407dd04e188d932dbc199aa2f4c0f0eaa704382fadbb6de2ec29c829937d5f3936421b60ba5994f754d1479537b34238bc10b084976ba1e7fbbe8c24c1ad3169c1a866f550a24c0af613abb4d27efe1d2cffe535ef89f81c64c29f9f5a0611fbf5459e431637c1630c685d535a4600cb0286ae63d861604e754f9283c09bbf5085620c8fce80ddad98c6e9daa187298cb05fb26c1f4b673abf35608bdf1a923893fc8ad00a28a490f573c067bdb4f13bcb7cb24ee99c5627767ae31cc1a3925bdf0a5d449c23a69922ddb24abf4148c047148f353e5e83ec334b64c48db9679f658e62fa4122b1b0c322fb4739091f724a2d7d1868d1cca877a3388d3b35ceb8ef61707a62a39f78352fe4598c84b4c7bfe516736c8e83fc8a66be2b0911d23ec1f74c9a7b6477dc344f4fbea5d66e6a192817329c760e485cd2b5fff5e4df4193150dfe60401da4a5e6d591b08f5c9d4f4067f4b5234a4362ed8a32a6330a57933991207aba8b96d450324975c4df5fe396878b2cedaffe60956e60f81c1b52b71b5b481ae877328b93f1957c85232afe8ab04f49d5663e115f1c03bb4ac71daedbca1c1d03d466c359c380d075068f51ad1c59fa296b2b8b115781d7b574b6b081b58f79e30e1e804a4fd9ebd40897f964b4e15e9b20ef871924ceb2d5d3e9c4c4818f8f462771ecafb5e589cddc726d6a42e8914ca43e6a4bdad6bfbb164783e14f6d1be9788f37f6769069632f2403575b2ea0f1729683ec886ea00013590775e8279b871f1b612813b5186a8d836f52d7b0e73ef95e3560364767bdcc801baace7f90db12d8d21b8e7832e12fbf6d4dc0e556b4051fc8d3c89bcdf0dc0d139397eecbe91c1822ee2f2c1d8d48487397b07071dd67624755d378a3e76bd99d595dd1a07bbba7f85eb904701fd8b0df5e343b54b0a9dc850ca05ab2a099e932c951742740c06093755b0ecfe9d84e872291f21ffeb2745d94df6c3b2cbe317569a91e6758f34f6d61ebb6fb46bc0ec26f21a22bed1b59225e6939a916c0e80344f7cede716d1aa1482cd908c43ba6c66de6e4185e75c057bc5adc740c6e9bcbce04c584a334346d050f6beddf2a04632e4b535e12e82ecd0743e2e556c1aafb2a91778e9711d4ef3079e3cf254d0e1afe1faede2bd48f8fc914c057c32ee03286c6a0e36ed29f473abf6a646063d7a67b1140e331df535b8d66e397e8e153bb7b1ee03a9eb56edda3d00b08a249df04cd82e78c27595009e8b42fb8f35ac40572e0a3ce7bbada2cadc2c97edd54c0bd8b6c035d1e35b80d423decb5dc7722a36da76620d471ede63ef1f383bdeb553bf987264769fecb543e2fa68059405a9cdf0cec34e9041cc3b0bfcc9664127d165dfc4a1e9d2434dc6f6e28e22249a904853bcd50e04c63c0f81b0e0ca47287f7be8c21db7465f2501807be7fb5607edb9b4341e342a4de0a7a23e0899e34527c9a087d596a7f1e8089e4886808241d9166128a891b4d790f524b6cb156e68496af332334e669bf460e1634e250aa9b8d6c53ec2be39aeb92111b3ccb038e73f349db1d87860f8d72cc09178619ae0d3c21b72e0a01e103c521a5e5993e26ff6c397968fe26caf0773e3c00353f637a110c2e61ba23e0d209223242bc4ca0e1a7f96f627e14817ad966f19f2d812c71d8c08603df4e43781d59f1fe52f331fe978264bfbc869b5e9050b4df55c9cafa7e1f0bf7ee60fc4fb6be1170a9a4dac48188970eb365d9e692ce6bf97cd1d60cff8d131b365e2da7603ba52c4081112a254d9b0ac69e0447ef9a0bcabc80aa22e99de8eaca43080d5f13c85c167713bd0ff2a9ad68fc61cbc532e3bc54e0d31c3b6647e8bb264f53a496b9cc20735b908f3022bba30ca02f2f82559b8e6a27998d8652a69039877be5c14b39cf87bb23360fa592182128432769d14134fe668e14a2df4c2fafeecabda5adabe3be23bed9981432f3a19ce13ec3db05b6c16fcf3d17852ff154323bceee65c45a4c38876709b65c2234277efcbb7606db549b3f60802faebe3cb38f12be30debc694de57273667e0ad41a46136ed525a550e0d006fa60aff04ef382edd1afb15267dc15c791a961793b898ced5ffe1cebc159a31a1458d431d3415d5f658432ced6ef43062fa77430acfc1b864aa65ac62bcfea0a90fd697336513e57e1ad897a9307c82c9af1f1313fae1183063029dee700ebf33550384c66dd10a8fa12eae519fff0fd9711aa00b78f218d8af8ca43562878e569de6eca27bb46f07f5b46a461085c96ae31a82bff5b6e12944a6e87e25c622c1c79ade98a3b29c1e7acbacddf650e64677afd965c03ff44dc90e27cf404ca02905b91dd27e732a0c71b26acca9700d248c93f1ed68f4e4d8f52a68511081b4556795e45faa641e5997555a3c030288c7a7f340aea7b793c6a717efb51905f2b9b481c6126c8e65cd50b88d9411cc2bfdf3957501b997ab5cadd01e1def9bce3a0c5b7015e3de2b26cd6a767918884e5aa95cc9b73abe70da22e48c83b75501367937a30ef1a7822fa1c647d754be422cd5cd7e572ee6a0a072e9c0db1cb38c4c55d67293e6ac624975a61bb611021473ac2742d6b12a502d21ab92f3b821d49f923de768dbc08ac9b52ea313650eadc553dc34ea9dc1c714ea7994182cd84a5e4f6ecac3807175ece229ff586d0b0c3593bfcd186376caa217dac9bc945faab418ed3e67c93ee234d40be219c7e3c94c3da0ccf19eef68d6dfebea2f023b7bdf936a59a1381b33149e8d75c678942107eba8dd327bb217bf35d67f451422a9ef6d7ea6a63edd9f1d899f2746a2cb8a4937ca50bf498225bae261131317f3c0680ba646300068b9d52db5a79e97c9d67d377739d7430d388e431bf84eb1fa272bf1822f25abdfec6365e4e25a428bf3a7be4844dd6258f1c5af34766a37edf2e10fbf10ec4dbf3e87a0dc9f90950e3d90b30112d08a64cc51e702a4afe3fa4aef75fe07cc938ff8187425d724987f0439cf10d3b7e508f6754668df2e4d2d64b1ff48b4271196fcbbbb1e382de2331fbc25758ae0b5608de45c1a376a90dfcbe26bf5a101317d4f146c39322fa58098e0515995e953d02997234bd5b787b2bd330b2e37b6067e91cab3695083dee1aca3195464684cc380ca1f5b842150995973410f6adab9d78e6f60fae24f5bf8de4566263a41d48c3d37cb6e3bb9afa338f7b09fbcf213128c845e680465d976fad8595a4ecca2f1d96c0f7c34b9e787d3212a79c5ee7be08d8243e0f9b80490ad664909e5b19267785cbb723df29e1847ba317d49a9288ff28b93cff590cfb8e7f9b3b13eca41a550ac33a919346d0689a5f7d2d435225171f32ac76d4fba3cb35927892289877d7143000e2b66605f8c901afafa10358178515a0d3917a57a400a39908915d7946cf06ef0fd808f115eae7292ea11171bba3aa994ae3fc0be59f4d54ea6001a085833a0a229f29a0f2fb936dc3dd68c6c0edfd99b3320cca15e623f842c61124da430c1cd3a58a578c829bf094fe9b2681283d8dd4ce4f242cb782e87386ab033ec647d6e37170c31e6ab2e4d8ed9215c01d694570da3870e098a5c434021381fbd65a79042edf670b28f0cd4e154c77d5a446598902d574249ca35fe033436b6b0766983bf060edbb7e4d40c224657da1b882e7cab4861c8446f13f319cca9b41e37b9a42811944aa55b4d21d451637f99e2729a26aaa2f747b7e9d8813a8d3c0248b4d08e4b852ae3e2802303ecdded3c5424d1e8ed7fd74be7b65ab1c173a85298d14b2bba1da06f1f75c152cc7fa4fba79d9d25da510c821a7b89a99b50efd4fc916c2f4b739f3579c6f76fb0f38a5ff5d422687072e9492b245acd66957a9a1a483d99164acabbcd3fb5d2770204b9c2adfa4d74cf6385795a454495aec77afb2972a79b3f436f13cc5b72a173520e03f9fbc7f10883465027ecb4f4c10116b1c6f644a6b4fa9b1ea3a3b9471e2ed20723d5ddd99bf1f6aa9d24b0be31510e448cc48cb3edc95ca187469686e7cdd29b676169ef17a10e481801c46f596b35d85c5fd7b95e0dd281e170b136a6c869068cd37f8b7b0aa0e8fff38862314e8899b2f933996169d5831ff05eb8840dd0964719fe5e23f96aa74c5913d35e89ca305d07d9f330567e5c562206daeae0f7e86bcab78c1cc747c26c01b083879847d4d0130a0ba714d4ebf7e1ac5a2deab4337a014887f3b98fcdb08b2fcdc23f36399f7bc5ba037b74882b098dccfbe52c2402890ab221f514708e322e2cf624b709651a72a3c2ea9a445283a708eaa640c97a78a822f01658cd8bbd2b77e94fee79a8d5d9d150c5b2319c440f9ecb3732d0d9390d14dcaa830dbfc9530264fe09d13c6c6663d2f7ecb934fa7a09f34abeea884a00ef0c47d6141b207b2449b147534d98d71dfa3b23e551459ef65ac4585970444335df008574555df415948fe94172bfb779ed5dde2ddb450fb80a9b8a6dc1408027b0e996c6532ef2251ab8322f605bbb98ed220406fc4447f3a91d84423cf1c6b8f0cc5aee45b32f5fd738872c1a6dab25fd9aa595453004a7e859d8a073db58a490bc65974c43bf19fdc85ca6c7444c6a7e2ed13ffa3df31e8ed687c020c38e0d4943a8bada35e75529e9a1baf99e35fc748365703a904ab99a297ee1e1ebae8bbaa5af23cf99f93d24c8e1a8f6366518084bfdd8c31935bad5fe6b82ce2c029b1a32e08deda3bf26e60d81433ad227d0914a009714f937bd6bb0c8c8c7c0fb3c1df7e65b8c064c19058d7d35b18ae11bdb5f40ff066fe6a84d99a311ceace3c1e03a2279645d2af22e058a16aee5eb84cff5a4c3e8f40d0ee12e2d896bf7a4fee80d439b78fd6a12444bf9775ad4a8fee7ea1498812c52a892f53684be976aab80ac28f7257125146c443b5290c5d9c83bfc2a6dc96c7c43454b8760b7200f42b49be65096628eaa07be14f73b65eef5a75e97c907fdeca8be17757eb4d01eaf5779679dc6b161122a2a80e6d84afb131a828a81c38ff9ac007cfb7ce5ac2a0a578a2bbe4fea3b2c04d32dfcbc95217c22eaabfa06a896628c3bec080e0086ed95eb08ca13ffab656fa8fcd363b3b1e16c84ea3fade377a569620a66a7ebfc4fc6c0fad044cfbe8e41e6844efc34df41284bb1270858c12b647eaee507ee163b312e2cddb98b83d41a1e05f35606d89455659dbcb9dd0a179f4f9f0803f5deb25221cd6d7eff98fb17d58e33ba93138a9c0c908d5068ac2c4511756e2bc4892b88eb4ecf013ea8929d3da30ee8c8b88dc35684690aff17078d4db38d3812752ee32c91df29ea04511ad570f55590823997fd600446632d949aa64b53af8daedb5835b5ecff52d1406a8bcaf3e656766bcd30921d66d754d1da58e0f845a3f5fdb2c7751f882c8d7381009927118bcc68e5a2572b323da8de353d73c86d844178f5b1aff481742c39e00394476b7e4fe331fa724d7c1560dc2b5a2c8a8c0646cb3101bc342e5af917c9dd2f10dee250d72761ff678c6524068463d093ce5622d4ae31b51b9b39885cd5303b4c1c810b450f24ff8a2906cd88278b11f30c005b9c94d319ec7ef48d2d4304bba47ac6ac3e26fd9c462a116a08c01178c4284a0e711848351d8e13dc031d49306391ac8654bb0fe5db51a40773348e691c1e901659c3af4098b3c388f2241c689ed3828dee6837bed046d4ffdb2a4675fd3bfd4091d784618cfd68b2790ff8f3569d2a68042da413bcfb6b3f33c1fdbf0b9afb3ee59d3005ed507e8664feeb7a54818e9f3a1365a0173ec4ffaf1f945389d3300502091fd18fae48e208710ab13e8e0dc528c54012cd1aa3a4502e73242e41d358bd814b7181168415b1be291cbb4b5f67c2981adef1e3b6dd32ef6077eb16ca5cfd5392b332b3d8905bc3ac3407345a0d9eb550aec00783fd9e9d610e95282550cf022a1727b0c446a4be5022ed21a0ce1889feeb500cc390c2cba69bc9359246c0a1cd3d965b6920092b7f0226666d63d2685da7b41a81901ab3be2f7019581064052ed404914517b11817dbd332547f2f4e2d6f62eeff40e0407043903a46a4acc55d40871bfd7899ab46706e046602bacbb59070ea0da19de1e360e158d3379f02183c682449f9e7f8ff0d3f316ec6582db65ffaa1311d6139df624ad6db62929198b96455705d8a743a376ac74db8511961a12938c8abce76497d28e0aea82c9484e7ec0590a28c9a82414b22fac49a14bd9cdd8c96228a976c2a869bf8ba73680a853ec6096b515bbf70292caf5dcb30beb333e31399ab8fad8baa4e448f6be997e8dc0008a7b78b22ebb05920faf41048ab9ff8dcd33b319190936a4c4d8abfff36a14d040297378da52a1c580ed4094720f62371e17b03c367024d09f553da3c4d604a7d621a49ff0c83c2b9bd78c8f977655e531adea020fc88a896458e9c791eb7f2fd8c6134f1fed806c12a11fd12d67b39e8d49c568b21b7ee526cb07f929c6a56fcb31c8227fae2689ff201ea2e6cd25b1395450986b1c94910ee4ba7a6bbb08363f46f742f497889216bcb1eed1845564c38c2d922cc008225f8c62a9ef2bb57e742f8bd700b870783999ab66662db42b2231776b66747364e50b55487148fdc999ec640de6792c007ca7c35d4fdce61bcfbeb542ce37a96e5af8431107463a2eec4454087f214e0204d05ea9ac7fc12fb882ef1c6c3927621ac9521ffc16f796655bd630f764871fe22c4364f0067e7e57e3298be58d6877cc44dbf77e0ae0fb4949355de040fe967c5888e1ef564ec8143866cf2e23aade636cd79b72174f2777906d494d77dca40f6e71de02f0664a0adc19d7e2878833ce23145ce6835995e6954737affc1b7ecea9be1afc035325c70e22b59a2c0f544002311a5e8880ff8722332b8ebb35ddfbf733f306b3cdfc7907d43387ddb53aea0d166a40728296ad30202c6520a36b703aff49b63b88e562bc204c9ecb6f5964d09f00cd95640c201f05b6edbff85a1911d5f7336d336f6588e9d24f7cd0b5a6c514e36654d509b807addd01adaac895024354dd124d7cff84d73d9d4d604a0cf830b2635a04e8df1ebf18913cde52bcfe1997e3db3fa74f1c7605dbba1ccb03a26776056a31eb9320482d6f3b9af48c0b8b304d4275fa903c4aacf178cf281d05120544a407e5aea02df8373ef66316bcecdab42b4b56789c95104e58e64c9b9f7292ccbee424604a4ec72a8182d1c69b7498fbc6f07e6997379f30d555fd79636ecb597479b8327ab78d2d0e9287fa2b577e6f0642169e1db88a1a5b078ede656ab51b303c60df60ebd48f6268a84fbe8ebc8d609e1104c0b7278ea86ca3fe91c2fec0a6a11c24bdd197354fa3f2d283b40114ca4771e1a0403453514eb49b71cd2a2d15f9e70899df9a6dd7a0f71eeb194d214307c0d71472c4d17020b2eafc0442735f250173657a9b51831671670ac4c7d3400225a938e553c8f5bf04d53d1196fe568ad3f526f04ddb1b8c94fcd4b8e4a0cd4348584fdd2a74f73ec26cf2d346666427a2010960f296481d3c2a8b67b7a608ba06914a0598b9bf55a3e40cf8b5e773aa8f4540b6bb6b6e3077cb7681602a3131432c122317ab39e63cea48cfdb5d4977e6a00d82c6a318594b8adcba3123fa506c25cc15773b674c1eb8365b2a767e0e633cb7b022200dbea71c469428feb99d287cea8072e6d65a72ba7654d88bc58691fe8a98ae58765e860b183f03d62d67670d618be3c2b837c5cfb8184d2f209a7797900a149264f6b84ad7cb2fa3fef95161e41732bfeb79ded4a77d974091fe9469112e54ab2066359e18bd166a69266130f87e0e32e98a29c25ef6b22d808449b7f372f0a2f1ccd20e2d4820aae30b480934100f36426793466da5c758868a63dc385da3096c7bd650eb3496da60c4d9d111cf6a663818af590aff947127f7b107a085fae744736ed7f5abd5a805d8930461c3b8aee10a9525afa6215f31ed0b9c333d6c3cc8c79e8fb3266579e279e8659ba98e585fecdd2e73a604d184c703d27048b5170360c7db0f0f25d3904787813cc9fb14ffa444dfd4be784428fb982612220caf9f7a9d4e235b2d5a42e2c14e35f68ad03b82516421b7cb8267348681987aab6dc46a1a107848e4ec077dfe3d22bc394fddbda13943d3be6ddafc553d793332fe6f34ee08abbf0960a87cf8ea9b073797c9ea9f186f0e651f4ab29fc0c2f452ecea03940d51a345187ce255ca61ce6f1862c9d2e59c653862174a5f29f05bcc6abf4ad75178878302cfb52b2b2ddeffb78bbbc71edbf27f78629869051e06976e7a4542f96b792068fe0c51de7d9ca0249f6bdbed6b835dc185abe09ea84ad4a00e73b8c011bd5282b5ef9ab49ba205a106a4bef5518783b34cd44a2011f63133f67c0e8cc0bdbfd5e1e10bc0878c7003aba49b99afec33c3d11f7ec0cbde687df4e7eac712363c92a0b74e043d46500b37add17b2eb6da79f09c6c6674d5d8b099c0f176b9f61232f5386290c40a89b6984db693a6eb12bb669567f0cfb067e0b1d2473d278fe6f86b4eb93afd101eaed36a983ad70e8a5edf4ef92b660580f99ec250043e42bd8f575fade6c2c62a595dbe400676ee8fac29e293ab229189392d32038a548db7b40828f2c67be8ae7ff1f4c51b0e48edcea36f80dcc538e9424156933309251dc0b042353a83e9f6cf0de3e671fc37d34d0cf3a7128a9feb5080e9eccf3fe01c94c66f2d2dc243ba55608d560601ca5c151dbee3b11fd618fcbc2a223fd646fb1a46a80a5826a8435b2aba1e0122bcc214fdad01187ce607fe951181d92a597f81be34249f36630254c198f532613b0f2826446176ca6d5a9b4af290bc37c355c6ff2b05b536d56d50ad9ce1a308f9fb9ae792ab6d8425c2d5d7f7aedae0cbff502a2d35b45ec47e5056e2f6f1e0430184e333a54aee2217062c696c68de53f122ba78d50f75dc26e9d7c77064cb53c88e1d85e508965bee620b97fc71febd650d56dd915aeb0b133ebe3f8f4717369bae52ed8f681fef66dd4f9d0eaaf245d9f6959b6853ec74f6d875e82a9ee03a62cd24aff3861940f491c1117fb2dedd2d58f2313cc9a11870afca4ada6ba8179b11c820e59c7526909f7e590e0a8c245577d37836dafcfd296e92a2d72f1ee82fb1697dfdb46bac0d3cb0f7985ceecfbd51e42fd2dfcffc26118e6bf4f63361608db13c9d244d0c8a81a83046bc275a8c7f71d238d00e848696a3358dca32da6a97cd157fa41785057c5228c754cb8eabe15792b4f51beb5467c6b44696c27b4c0fefde0301b73d99d4c2be9c409bfe9d0302e0b666d0eb6f2f6d765b5a45394bc4eb2566056c7c7308c83ece8c55072852bafed54253731dccef70722b1ac4b119cf59086059723edd95edf44878add2ea06e95fc854454d4d42e9baa2189f20a8e589593083e04bcbfffdd05b26d3113d4c69c5d0608f0a375e4b793f2ca27567db3126b270187f1947d24d7b95631a9aee981f24dc356b07398367e0ad873dffd6c3875d75457d4522da0617403556f95fc635b1733d66dbdd65fd51549657fe611da06818330c3399708212721f6653c7d6d41d05cb60f0a1a9fb3d1c88885d92cebce5c02c248aaf753ffed5dc891624c00fc2954102b945b255237bd5d413c64bb545ea1b8f9dfadbd3303e256dd734c75c7465bec798def3009d65c7b72f6fe03e8afb0428068058c61c1c640cb357d78a8cd940efbe33aaadbe6005206c51aefcef4250fef80ca51295b26f82e4b64ae7688be7fa8dc7365d067d734ea238d064d807578849bccee1c7ef712114fc9d86e9b9383a3601117b64b69b44220ad7e290004413aa2330e23ef629c600c0d0c8085d96dab23378b8b216edd5ba8f95a7b44468658ba02922dc1bea260288ab14743ac2e89e5900563acf9c5fbf11fa6c6a74cb069434003c21906de196efdf947a7d104b2b125a3fb1c5f580ad3c91902114369e91f03c4948e7c1224e9b02ceecf42c9573b8739c61d3b1e0f482f492bc0dc4d2324bd87337c10f3cc1aea8aebd74289d19c46b8562d8e560820d25b80b15e9ecb27bb26b42af5d6b8e1829a9c373d1a9572f2c4aaf5f8ab10826416d84e04b937099c82ca4a63a10263e9d4b41321b8bfe8a07741d10855fd3174f0a8cc66cc867652cf98d3e8315c80d31bea57c2521d9641acbc0dced72e08c09bfd370f8580a6f8072e4cfd8382c0032bf2e4ec1d3b5b55b7b463e031f10a13698490f9dbe0641651a227b6f196c12116577547cbaefc83a702722adc4401d7154b315a845a7002fa028de45f4ad1251c1e7f3ac233deb4355e6f575e4ede1fdb155e64ad344b2123342ab95a9e1c113999e39eab57c5bd0946259b7ee9211072382bab3652bc5412eb9d424ae8649423bd5a409a972c9cc07fcd9714bf8209e1a6aaa19adc177a71d4d57680e3b3dca3417831b4563ad28c23163116377009cb6746c0cd66389a01c94d4eff5acf9d6bea364c88d202cd4b112d51ce6dd4f73392b03ee44de97f276a7c3a7ad1521fa11dac4d1c6c66a717e90d3e18dc02b81100d9587dcaa4c86e40f114d322acc1485cad25049251dc9f87d617d1d4c72fb7345c9a1974ebef859c2d3af9f772e44ff256a20a34310697b1ac20398fbcb4b5d0a6be985c7ef7916cb5612424000eb03369a2cf4e599c11e11260dee33977f4643314e363c4c76fec2112e56902b99887ef28b7b59128b733da679d36030b75383babaabd89da9309e778de5b0e121e42cdec07733746bcaf95f4c437614817f87d62ed9bb84654dd0085ed709032c2b1a7cabf15520d7d3bc9daf89f8f887125638e5702b56eba46150b77e5146d780f8a9c382a0d6e56e6394da291b8b6cab205740bc0cb4c9d64cef7b0aadf4825a3fdd79071d6a814bc7d852505ab8c1f120c29774530f81a2170ecaaaedef0908d08ce69099e2423486d246d8b735a1fffdab1d7ebc6d6b99a6ef183fe7a5f95610b0348075aea6573a9644d626d64664aafeb46ce01f425c9923a76381be3a85ba7688097ac122193ce051f657a26925f4871c79a16afef73a396de830b72670ffa977b8e61ca1eab587b24437a41e29e70ee63165ec8d4c40468fbe244acd00fd9516352bc9a9e0030e3aa7dad1ce4b27fd75d5ebfa2c6188ccbef09b32601ce2e1d0ebc944dadca3fc23c9260cdc7fc62ea4c8078e53de3deca5ec681ba03a0244582ea1ad43fb549bfef6c10645cf1baddcd089ee99d53e802c9e4c065a8c66232472b0e4fd547d80f1683439f93dc3a92b4db1a4b21748005e3aefbde8ffe90fb52b9e14f5239bab48559b4cdde25c4b64d431a5dfb70009733e32c78606e3524988c3ca3a1029c2993c7fe56da43c82d58fb08e220084f03d2913984d98fa1ca4fc753b38737cc6157cf89f53550239ad230951af019f8d4a12ecf76af6360195d6d128ba1faf28230e3422861c93baf28ffa592463d42135c21897ddd8634956d3eda2b13fece511806aecfc3eb9f77b58171650435e12fd37f062a00a902697e7645851316da5ea4506eeb44578701863a32cc39c7bbfc6154e0cc6b77976b1a11af5163c5085661ce08ac4cd3671ca71afab9637fbbdb05047c7a65ee9b2b17782ae927189a1dc63eb7b61e8d67e458cc9989ebdf4b4ff0104cf2fa521f655a5f299994f918ebc88aa964d0befe266731e0dab5c1ace48f790142bd34ee3e46fd3c86520d807dac1e0ebfe25423b9583fe4d6333fb067f4ac211d89f03c43c0d07f49e5bda013981d2088458b706cdb12d68eec0cdd8f4ba1c8194bc5c82a9d1894967800ade0db196c99da3389cf2659ac38bd81b71c7077f0ea40d594526cb1f62c9999704b08aa489403fd5af82ca0b01836f852722f43d3b11ed9da5c13e5c6b6134aca311c8d237560bd2bb55e08975aa37605cf85c56f507c9fca721597681f7aaad56c62880e950d2ff3b8772bbc48946e037866f45e90c86da85cd167da266ba3ef112db3f7ac6a23a806028ba5c9b949f3597b2302dfa90c567efba11a160c3e5acfe32aadd3534ee0bfd84ea51116e0a7a4ca19bd9e117ca3f19660fc7fcf4b00d30340179717193aaa08ae063373c30e51a6628e52d657c993bc04b6b542a209f3525df47351df465e630d8ca45014204791c0732c60fe596686657fea64ecf316ab8bfa4be831737679785c562d25ee5538c97444970b7a00b3fd9d6ee5b7559c6136fe721fa78c7f4f948000c21d5250f4c859f9309a0de4addf38d4f02c9d38e263c81a33d3bcbe7cd608475bb8b1a68b74d4f668b9de03f9d335a60eb5ab2b02d4f1fb7d2c01533aa9904492616e3f5a7d71f269b5d708cd7736a4b823b2004d68f13b3132e05f117fec70db0d5bbff8a2be94a4896ee0a41d661b63457be9aa756bbab8615170bb1d188ef19906cb918214e35cbb9cc629a49690e1a278a152c5e42c5db3ba381455e5dc3c4795dc1ef3631763f5cc06071b1bb94134830141bf703c96cd43510f04e8461d45d510f5e7affbb19d8f69065680b1b1ae80b10e18a33802cc09a89f6e41e3dd044bb5699ddbcf59d868456f433ed6ef8e2af6ce2bcb3dbc41c51758d0ce4a015b3c1b4a0a755309f4fb01bb27975e2776f81f711b476b56d2212472c4782de6093d72f8ff6a8e194e5911007e9d69ff5505ac8d0791988543e16f73bef9f7dd1ace8699d16a7eec591ab5967da6d5f3970761d5381f63d54b03caa5657a9932b9dc135dc56ffa7951192cb2bbc96b6fd7dfc6e406b8b0541f9341eb55cd51edfc3a9ac1e6ddc3d9a26996fcf8b8fd27946d517d5dd32aba99c911215bff3b99c9b5c12777821521cbdc0dacfb19656d157b43c4bd2b786d366bad3d06dc224f67f151c4e6c687ad23f7ab71f416fded7500b82fa70e7d807dcc2a49e19f15e972d8614ef3c025eab82927ad40b3726837cd0d4f527701ff90ce46362b68518c73aa3520deb2ed71ff3a1737684184155e5b2c9864870f1bf087c9901705d7d97035700b074be0bd12d9c3de0ac13a36c4c60c5bc83f436f8ea3166d2a5518e27efba479dfec3c8bba361da62ea2ddca00de85f1aa438061541bcc21bae2ef23f8fc6ee5fda0a19de5b72803188d907fdd4b0b1154d92952fac71ce8579fc16f4ec31400b80353e2c6ae346433acd1f4c624340da1ab6e481e098aa83e143f985dec9e02a5713037a7d2af9310d13a63400db954f2f72e64f75ad4ad8273993a2ac8efe700c096696f411a56253ba5593eae770092ebc8aa13204d7328e05bd0184d320858e17a030f0d8dd4441cd4ab1f0713154df7f9273a9eab7e4d6507710eaa0438eb2ebe4a68ad75b3b5fe447999f74683c1beab7da20d1c676ca1bb25641a1659d1cc21ef5bb933db0d883f5da2f256bfe06bc3fe79b366e7d68933e456343bdb9fe7b1a04cb7229e78bf5242233aa32bfbb59867fb810ef445bd7988bdbb58a73a619abef5e949e4879e64971bf35e13978ad1cd49189afa843adc32ea2530dcda9f9257851218ce14972dfecf81ebf5b3d78d4bb50434c4fea5ee4afeff138ded069faf18fd23e2af318075ecf1b827d8aaaa1b0d767b43a6a5228164bf94b98fddde7be7849198a0e31ef5495264bd6c74c7e149b372227aab4e9f8ad8500ff82ff80753efcecfbdf89c21d7f9e4a74c27e4e25df06bf352515c998382d7bc39c92686cd03d368074956a2a022edc7d9396ef66fc031e22736bc773fcb6341fc142c200a26fefc7642c46e684d5e0a4177fa4db58d25296c696ea97b855e8d6c15d19ae2fd4382791a7c3748dedaecd177b5415c01711873e97b7201872d228a181d6e0be755fec6aea0653b9604d37bc08a3bc7438354d79c4a1a02a7f2d24faa1a49fa210c8a080b3a37c6a3da83cddb3e164a18e1edf3cdbe03872f3f9e215baf169434fd03c02ec1588564f6b03668d5ae12e17dc682ae0dec717736b6f636764e57093a018f8db0b163d9edb560bb411f381926d2613308a921bc3afb0f1fa3aec04e127c54058ee8f0a6293a6725608bb4b3a346075965155a1953c5453d495ca027f6b8ac967a98ef5d8685fe11db61cb56e42b4b8130305498e917bc0b53173ac0736470bd3f4ff72e849d3fc4af6f4411171faed23a67394537623935903ff0ea18449c4cb1887fe8ab5f611ae4de681f79d33bd5830df893e24470f5316c18b76c4d9c6ced0bf7ec2666da9221e122d5e7f2971952788301d062a36317b8a6eb9e52073ec59afbc38b1806229cf77240fb4b76a3b7c1cf19e39f9beb7be3282f98c13a954ce60d4875c85d31b6e1ac71ac61b1d2011d984f138d923832885f0ce3a037285931ffa3a4d5e2629bd572731e5bcaf20fc1861e0a4b278faccbad319853d4adf615f762ac40650ed24f29e88019adfb5ac90706c8262a83bd08a6b69a11c33e99a9bbf824f9cf3568e5ad2b8ba9c707606cb309fe5876540ee68b39416383f466f89b8056015880eed0428e5a572e0725413651e08df2c2c13f104fde40330cd277eceea53458d9d81388d6a1d9f5eb2a6409af712a1fade07125b3dfb5043209a17d713f688d337da6d1656848580c55199f8970a0ffbea5103fe89cf626f061c35bb01ad7b36238d5e6cfd25504b9099c8d06b440a44456b4f01e48802fc9fe67fdf431543e98e9319a5a580c07103a419cf9b7917cebda08c3cb560238b11969ac7d71a4ab490d69dfc29f8b2f47d806bbf367a0c93d46e2543abaf2abb65ebe49107bb829dc85b091ad56ba8a41f3e15ee8a5220f1b378465dbb3ef1757a148be4097233b366f732a36e6051c89753e3f6672bd4b75467997fa54d08de0f2d1d9d196491b7b7af04081fd65bad7728a24a022a4e8c12e2df18a094b23864a1cbcceef19adc62e2b48f202a3241575f31151a7aa9cf98ba113989adc4427ac328ce6059a06d33fa96fcdb66f2209f9bbc67dc8025a8f92237fe54a9e7a9e96de73703b664455b841acd81a8a0589c4cf21367dd8b458d21691768e423ad52c05b0cb82c2cb0122a569058ce5b75c7759a354250d4270df8230f8be96e9c9a0879eeb8c5ea9f892ccc57a8a6717f76b44ec8965d46d23c8baef3b063ba7b6addbbe45a915551d3f96d1fb6b49dd6b483ca6dab028a0e94a8d0a3b7e03cbc49a142a9c05d90e524c4d8c5ef3f650ff17e00258ff8c5e49bfb49863b235fd762daa0670b8e16bf361ca1639a7f17bfe929a8304c1a6fc7ddbb150aa732dacedf077c676ba0de22c91e82a0dd58174edfcc90d67e01a0f01b306f7dd31283fd5193730194d470249934d06f84068a868b1508a307e9fe0f22d4495599d596ef5e41caa95155659dc60b37a96aae15a6b1e41826f188000bf65850944232fe756227c853d1dd9d96b21330e744ca95b5f0b99282286be5f3281de8e174169f4f78ec74245c8783a6c5750c81b15564bd21964ade055e69d9084ec2d6048033282a061aeba29235dac0aa0c1a4f0efa521aa40caa3070ff00df6f1865493ba9cfd39c3112dccae7545ca84a8bde789b093918cef70ed489b403ed49d77de9f912e1dd9c9f03b24d0ef9639872c1da8c06d6b5db90bc1152ff24c4cdc289d19d626d934f0487dae713ff4a2650c06ef829f1b53ffbdd49fc44d777c37220c2757dee54e39313bab44c8fc59a639729a37d5fbe10509904a1c739afee9358fb23f609459d7c2e2289901c2d86dbccd4fd16a0dcb4c39d960a93a773c2961ae16b1f9955ee4724cb0e46b8544ce25153d2625c0a398bf6a6f6864503d7c4a64ae3bf437935073d82c44b74a8f78a3089e5314f2d6daf7981132fd4533a2d5a10a929fbff4fedbc02c735116e8b8464ed381e4075beccebb73d506838f25e92d6128255b4b1510d05bf92ce17c0f10449b00ebfd465e19dd16a655de4d5beb5f151d6d96e839ede78b7efa6244d781ba3e2dcd388efcc8c548dccd09a11af98d783f4a9bb5dc6c4b0d405aaafdc7dd12a40d0f82e76a3e1c2d3b39b2df07d45b83446415c716a1e42ddff3796d920f5bb1c6c5810d185c8601cf949d7a163095a2ea82f25a8d72506c9c30a5a14904eaaac87b04d77b0965818766323ddedc4a419fbdaa7862484ea241039c3f1bcf081054f7d34b0c03d1f0a97f7e769077aef246f9675a7b021db4df4514b00edad6c4439ab1d62ca8bb396d8103598ba3cf402edcce82ac723ebe9850bc49897c07a2300d446e998f14205eff2a61221fb514f0abe1cda41c19c30f2bcb7d96982bfe18917cb98b4ee63ccdb39e2445edafed6c92e73181fe0caf958151fc6f105bf382e1c2fa4b210801fba8f67c7ec296e9b265c14436192c5496115d9e67c9670e1aee7c171d6c9beff195215de29b7dcbd93208eadcd1640b6a5c345894627d7575eeee5191a41463b790f8538efa10b7a0d6ddd4b92a278010f4e8f84b2f57203a9057faeeef4821c014d16dce3bc44e7c1298c186aa9df4be9ddf29767219e0c121e03eb996ca34b39b3e7401e62635c8527beb23a2c764205ccb81bd94ca476c769648eb92e1d41aa8bfdc666c40dd7e039a77d2bbdfdcb75321c3201d1439db48b150876e423534135fb68423eab3053b09cce5a46132f4b66b8aef36a1d1e041d2f5ef5487aea6f3270c9e37a15389b6a32ee9f830a947788efaa87b9cd002a148d515c413e8da094515b1342e38abc4ef118676de12500bf0aeb2ee01d6d1950bf8e7593117b05221705a8fbc91d003b83341e1fe62e7baa574477c2d58578cce0de287d2cabfd46efc5259482b4234dc8f3482fdd67bd791a26d92bd7652e8ef63184e43ba4a2fe4d091eed5a0ccb1f4fedc872e8c5425a9437c31da32794b8f1b419b2b795400d80063c9ac2e0271d2656a300ca8fe90aaed86254075c67f3926abad9685763652b90cb7f46d08b4dc235c79c9c7c0c67adf681a6a707ce9a6f1eca4f0a09b7ac18cc962f4d0cd3572c4286944ae1eeaac75e9f5bf031673a4368f8afb439589e1cd7b27264afc1aa398d9ca4b01d658b5a178c522553e876d5fe61519e9ebdbc957dd51892ee0fccd83a95db79732196fbdeea9a8d2bf7c0f9fe49b0344b22bf4e799c1543af8db419d920797b4a32bd3727efa44bfa05adc56c40a66a76852bb6c3f582eb11582e753591d138bb5e8ce5204124fca87ef1dbdb1a5a1bf11118ddf427e7b9742beb0d57a41652b37d642b9c3c5f4996456242e04483719005428129fb16f943b554587311ab4c757459100c6c1f553b5c82dc371cbcc146de50cf07e2b0eed90a1d3c794adbc25220dca94e49e85601b3851a690b3489f04da4b341f358f583425be34af3240c929aa2107953c64c4b539fcdccb9f6e3c4cca99f41766f5e724112bf37876725efc4d182e9ac0e92304943d3cd2f6c4829c14c10389ac8153d58691109694b8e0483a5d5813510a6bc5724c684f4d6dd9384fdde7578b5f7446924365f40901aa66dd47aef55ebea6afc376abff8aad6d623c5dcc98f4e5a1429081d379133fac5f49b8007427688d9c2b8838fd2565b4e6ce959281fc0a29957888e6a8e53fc76308bdbfd103a902407ee1b2f1b0606ad4f206b0aba38248a47dec15f8e79a7b409884f9ce8a14452658165d7896bb50a1ad88a1eef2ce92dc7ceb98dff18a632b1a2f26bee179a5ddc979ffdab196c71982cde04cf67aed1aaa1d3d10afce82356dbe5e00283724f0520e0954c1251ad529c73ea96560ce93b438bd2c1c2b08b6cc3457357348c01b7c08d621562a7ecca266ead75c5fc3788535ba91d11b139fb6f1b8e9862e389575cca0a764675e13b9d2d63f37bb26917171e3879da2283b338d0a2b725b4124a6978e4d9dfb8cd897d89abe4fe326dd8c074c0fcc83c187fd70fd6d3d222210d9231892e66a8b977d5243afb38a6e0c96c9dea19d9c5a280231076e46683f863cf82e2395afbb95b0611297642b4b7d324289ecf0fe5059dad1bb4a283205b165717604a9d7293580a109bedc957f3f893c808b90200033fcfdb1ceb424a4b8ee0a35d4ef1b56bbf4a8f7cf960d7f44bc034575b5438ecb28435875640a49369340fcc38f27b1f6f79ea72ef72c0a2dbacb21933609ebb574d116a24d6bf3ab560c3505beff6241092bc317a4b481d00ee4640aa7bdc9fe032379763f6b56b194fa2d31d449524121d1bd7adb61929d32a241547a48d38cd1836cf9721c2210ffdef7e4a59b99b4dd744c5ea9ed5ea7dd9cbae0953ce7746575df73b6d684591a90c9bc202f2fb3db624b248241db29ac5d2d1c1e7a2c7a5cf0253d5d1ac5dfcd08d0591a5655d34139deedfea3928e7915f0e9993711b993650bf303aadc12ae5b1999a5d1d4e9e87ba3a6196ef39c653f60e021457a3facfbe9e9ad704cf997b02fdf96996c0462481fb6ce7b80d36cd47724b0106d3aa54a33a60ef211b2f8b492f29cb9d1c1c89e4d611fa81c842a00461306ff8e7947c8aa91b0b6c6acbb2547b771db770a013a4e9c4828ff7df5b2967e989204bbf9b16eb16ed92b88bc68267161ccc92950346f7d343b78654a2c16bd849a484f11e68fc0254afb7270813575e6f8b1531db69e70a22e08f70e7254581f936accb51eda305ea1f78fc364fd2b0d8a59e90c7fb2a0b4f50b10ffc28b42dee3b47bb9e8b541228763a68a1f190b970c2311481263fd7a1a596acaaadbc866547ee56f3edd42f03684064d8ed34311d9441c0a64620fbd8d96da8fee4632ffe286da2eabe77adeeb462f76352f5f094afb68a1933a65af0d45f9757b807c89ca02a74293c40574193f0c0b0d49b5a778cd8fe0a9119b683b0a9f724ae3076915af59e84cc704ea3fe64761bebdc4bfbd4961ad23507398b4d9727397941d47e50be2be75d96e929772fdc2b8e0ccad41cf38c939c0a76631ad208ac5d02b18b72a3e93a0585c84eac7d9e2bdf0ce116960999bed747ebd9908532dba59adf1acc8c12286cc195969564923095b141795dd752daeac1eb97178e1e1dea2d966f3ea8e6244e1c9dc269ac63909a2ee0c67476b813ce32a802240269b94cb8d9e22775da92fa8e844f76c10aa5f1b1c7799d9dca7eae3b7fc032836356bd4c3ff01c6901a13aaec39c859a3b64c5e51c51e55bf86a67e7db0a78be388e739acaca14edcfd9310d8329221c105651ea94c8022c60af0115b9eddfe37d6eb9d1e4cbb5ad269a7fe9c0a95b94f236ea46074081d515878b0eaff75d03955b9a852fcfd83896a9db0c78ba61755e4ebdd5d0e3dbe63d0429443420d84f9b0636f36b61ecc0fd9832c7ca3af20fdc813be30fb62d93867253460941cb65e70207aec22a403d6889988d7a9ca9afae3f7ca3c7005135e997954f5c3892724826f3a96c4c221467868820ced56aae4b35e711cb7d7466bb63a138c0c6712f183279c1a832cf03fe74204a8ced41f895b761bd2db11e94d66175cd55fe9e1c2fef3285292b6eb65e5860faac6cd3ce8903b6872d17c2e7c366294f237c75c0d4f7a161ba4f37b41be76e08087b75e9e4312cb1b0c36792f733052ec7a33f1d4131cf390f07f23bee21d018ed655183e30c82b857911716891125b1318e4c3adde8b3d4efa4644156d9b0ea674e3ff864b715c466e31a7869e9b97a3d2ce1f2b3c758f3e19f5a36c9bc6458b601a9a8792763ca5aea12cd67eedd5011ec4ec914a757c7c31d484f22395592efd1da7b0796a3cd777fd3c8dac9ac19acd02458d6fa62d532d5bd82763f206ba03dbf419abe3b381cb930317e4c2187378390c051af09fc7dee8f680d645229387e84849a26575c5b3c7c9e9961a790bdf4006b5cb4ef753dc162a7c4148557415ada67afbace96ecec76ea12e0bc21993ab9c744beac86ecc1b828978cda69c021a06a556f69f4fd546e6f9e197cdbbdefe081336ff26163b9a419ec74b47b6c526ea31bbedd5f2c10c0850883d0bfe16f7889958a0dac64d697b427b7655f38fb577ae3c06f446363b1c3a367c9a306fb1cc4aa7e0dd7671d907ae1f0e48d58f806e84b84761a77f037a8eb8eaf7f17d20b9cf0097048c18b592451afbddd8cd056b58b2c3b96c9c164aee6b770c0079f7f4fe68b01ac1315c243484e5356354d64f05b5f2bfb6225d75cd22b8d61fa5056e546a02f31ec1b76b8728a6b4955409392733fda98d7b8732be3fdd042605bad36fbd254815442705fd1ca56c0e35b24b71bb0fe840ec064fb94d4d3aa4141b6104ceb2df2a3def13eb90dea8dd3f08c9e3728aca3db4ad40dda4503bb1742f646c1cdbd1609e91b683f3284a0ba6fdb3ace1bf37bf71f0076a7fbd59fabb472d435ddd2b316771d9555a29dc1355f1f2e5f55e60a8cabd26d35e421fd76b84d0118ca4d85d6b6f4df88d41021fe10c56043c0f69744d46d58881002a1d07607b785b061b4eddd8a1138188026de037f0c90259793cbe394a10aa8e1926ad5c444aaf4817b470d4429b71c3cc492ea6a5361e543308a69f66150529fb137cf7867a2c9833abf1300c55cee0f54babfbe2c5bb0831529dc49e46fd3b579d8be747dcd63ef1f9bf83ffdab4040e049dea5e91f9df282e884932e17e070ee2fc529d13b7d8e03d39225f0ac5abb75c8fdefd22a8d1b2827a32e4bb657c5f85c1abff7ab80df5ce4d5403d46001ed8d43171514143969f01329a46a1ed06985ba2c5d55c9c912c0645fee813819526c9967f59d1496705d111e55d5042ed95f836877f6386475b5bb1433b5f7b1113eb2aac6415149a1f025ab2175c98d603a280c73cfdfa49db49d5a589f81b10a6b0fc5e8973ed7c4262ac9a19196f238ca25437de334d220bd36966765c77bd9185d7bf127b6531622b75be2539d93f3e76eae7659929b2fbc72bd9c14882b64d13236c779069346ae5284d63cbb36efd6543fe6bedc85453e83be623ad0fa8b14cb3ea8c0437382eda2033be1a08dc499310628fe8d1ccc79a348b65388ba692dba3abba2d2c91882de25f43c2cd208fb7c46930ee7805f1a3dff04dedd37b29815975531e9e34962a0f414f922e07b01cac191ad53eb4dac2881550bb49a8a2109ee7ce42f2a262ae9fb2dd019339e8ae2301bdb2305c31db6a1698545512d7cd0f43d0badfc91fbb87f29c023a5a20b2f40446f2fb31670bd4cd5fc935f67ce2c6e0a5c9924dd35fdde61b0106b4a6deb471c1a0594dcbb731cd8692eba2752a0e152f010e26fa2d863e486f21f641487eb8c383b3a45df18c3563509dae0046e1d33b59aa012c54be6335b53fae93b4b4ea682ba4d9ae5c73b8331c5ed46340683b91f5edddcce057ab7e8e2099acfb4ec5553996940c90fd1104454b3546a9af203243a3f2b552f633c6a469cf03240ef4a7e04b75f752e349c58c03fab6a1ce948d4ebdff914d719ae28c5b2443a6c5cc766af288cbb547e22bb5ee5dc2feb658475da25550b38c096e8f3827fa92b788739e118ff9b6edd42013dcc4bf586b8a85375d6114c508fe9c8c9ac09566397862b22b12c994320da88f8b61660e3138a01b4635f25e5f4d21652c45863e24f9369dbc9763ceceb65a92d8663ca55efc4bf03642ac54b4327ad09e55ea59cff76cd75d7eec8d35ba5003d544f5c8720a5cdbbd3c6df4c729d0b2acce807b22c87a7dfe686d55c34b2974ea599e80745e536291ce1dd014c9766064bb76c8d7847b5b336efde1ebd0eb6fe6f47f9192dd0359a8e5af0259c3b98155cf1e0369f5b3f129c3284f429084ebd386cc1d58b241cc4d33bf84b0d2e210d0e1b4c70727cb966920c3605cb332e3d8c9d4c2225a7fa1a6f6ed486ca1cf22b377bd92c22a6cd4728cd25ca79be904f42054fa73cb3682013a8196c2d728d2b51661e546321096bb10847f8692fb1254956da8b4a84c481566ee4318efeb334971badebcf4ea83093822d197ca975450954c9d8ba95fa7b64bac476a736c27a7575414931e3ad57bed27025801d74a69d2a76ec18efd9198f4a2441981551d0021b95070f8522ed7a448ecc49c3d09a231a1883f13f265a9f49aa0be5c1c0d9fcddfe2fb6781057aa5536c5d746b01ab8464e0eacfbd0c4b32e021bc7595d653a427fc796d61fba6d258046fce1dc2eefe05d06aed993e4a3b56456b4ffa3a364bec7494601b4a848b796bb5031b32ae5fd1086e3e8c434dafba2dc9e286332f2883d3b2891658fc4f41fab309c5f40375e4c35f8d3a2c9c15156275a0bbebb7cbb953ad8689aed57bc262e6441a12f8fefac5e527b5dd50f1f10d63ee4064f1b93eb9004de0dd26d48a7c9ff36a93f2fe5dbce005dfd5f3f0cdacf8da977b472d4f1ec967623ea68b053254fc134f8e784550c99d73fe4a65e60d5f628124ed3c679796c8685a9956ced1803b5d3da986aa0e2674972efe9997ec76b566b9b54b20a3bd6cc15251ceb74403ef7444d92a6f68011e37275e55125f85b8e10b0e83a73a6390cfc687677f2abb4a1218a51a00acaa6f480b0c041ae2592503a061b43b5e1818b29a2d3227d41537d4c2946c588d98b8203f6038418cc9a0484e8c19a1c149cb5c52da19ed39193ad371295d6a893def71cfed5cdb6b0d078bc1b4fb8f184173baf48a7e917d74448e27755096fe477789b09679ef836dee60a68437841b885726e9e5a8a72d135270b6f0a3f0d8a1288fa7272d7a5887d4ccf8504503aab7e3787f00b575b2cb2cd8a4d57ee9a21b6add4757973293f2c8fd2bd50ceab73aab80fd7f9e7c3cf2214ecbe1902dcf88cda3409e7a0797409204b20b930c315eba030f1dc663ce96be53fd2c457cfcc52d9f5d25d29b37c22734ebb828a0be378af6da2f231bb1616d97ebb618632fcbfb1589cb83e52ade3e2d637baf09f92e44ee2294f0215190c87bfd13b3a90f038bf451e581763eb3aa70e68ae55da0499710bb1610f15d97f9191e4185edbb4f751480734883c434a1995e26a0dc4f527b9cc86f911b227b18bb0b050dd089939b68eb9ff379a5e4cb24a54bf297f86cdd26c259910d073546e14edb3d8bdeed3f8a63d769d4a9947e6afbf70c134184b120461142c2cd66091fdc614bc122e34f5dd6de27c62eeb7ddaa11620ade88fea0653b693b6be315e101f1dd0f00a4850b86783e784a45a0834e347ddbfa797acf247a4a9ca412672cfa7c01d8e0f97dd055bad8fe6deb5d47421f04408a19346c355830f40e7e08466b7f09e4c86b1cc8bbcc59b6009e836d07a08069c358de23ee5aa8c8f75b2d96c3ec0318fa526521aef5c5be87478a7d214627a9485277810dd772ed7d7aaa4b3affa954ef23081127195c255f448236549a66982531ba7645fc29cb7cfed755cfaebd8996fd1a2f07dabaf8bfd54d7ec6ac0094726a69b01e2329dd4cbe48aa661f2eed51ddbafec236e4078700a0119493206f9bb29b0000c5b7f812a59d4dd91377ae42c155d1f5aeddd3552408acde54029604de48377b17bc1aba603c58f8a0bf0d2de0651991ef073f0a999faf0f622280f30989a6b3c5c7a097df4065f3b8fc65a65529855a068aafb689ab27fae132074bb117109001f952b7b12d0eeedce3cdee08a7874ca8ffdd06692a187877a56539c6aac277344105be510cbd2fc58c4aec79899d2506b9f182f4e953b51c69a3c15f3d16ef1d80b5352289825e9e60c7d377debad29f251accd9575a6851d4f26b47e069d47f5a696a3aa48551873715a5e6141dd6d0f950e0a1402d1b2fd32711a74a1960ff973f22b72538a3c8cafb95ce35414d41d3e1b9617fe718a6f2676736642452b43890622a0d4d123ce75ac3e2cfa10affd83ff6a098a29a14088e082516a8df9705f907ad325f5b986959ccc63e549853ce2f0150d03c5edbcbc0e400773e53a2658f606273673cdda51f49c1358350702e1d7e091aa3b07e0442c3cb7312e05550384bd4b2fb6d511f382190e02ec4f8ef4e469e213d7a0210714902c77457f5c701bb81eb76947efab306b95ca732ddc8d33df71d71b1ca1eb27c17e8d9e4624d5eb453f0518fe0a8160806d192701a668fcb9b3e3312a004abbe417e1a35fe6f521ab76f0f76942a1ea03545db808bfaf1442f139257b393e6c47922e65bcab51119117f94327830a89a113d6649b1043147728d3224fb5a26de22b66cec736ec438bf338d3203f86060adad3ae95299b545139aa1dc761cff79497521420199979930387526031297089a135c9a13995e41079a32988e2372a5bb2f600df4211b0a22f32c87cd5a3da464be2a08235e9af055f924e89055365418eb8b4a03f624c10634b73fe0fe167bbfffbfb507d0d5476e4e275b56d42a9a41ae64c073fa09125b9e68c2ac11c1cc2b025e78aa2b0cc302234f0083af99c08772657589cb9dbf2fb4200a9a66f49402e669d0fed7a1197fcbb6f3e84dc559cd181754c19f72a76603fbcf00af2c995da8b57bca4d9005967b8b0bc51fa62adbfb12f91b844bb944bb9a3b85d88d755956b03b28ad9971b48efaa4cd9c3c954273e312b290f7c9810389d9ac68fc7e52e5bc0831f750ece977ea98c8ed95d8f20c4479ddc4f84969d3d398124503869bd6d000f67dbbcce9940ff5f1773746c9352e9f281d81c3458cfa7e71cc1f7b957e8e97b931f220d3f7d203ab9988655dc9c03aa86f2676117426eb74c8ffe937a73c2d47b0052d994782ec657387e6a3303463001080a1b0b20ed96e84cf16ad77b6bffb3b5a1c6e014bafb668da34cbf99976485aabd59b9b34bd1a72ce1511db6ca8be3c1d0f848d5f4f260145947fb70aef5d8ce3dc8ed323d417530d272172f7ca379dca31eb873640f40928e52f679d5c17af68cf4316c9ddd90be8deca4ddfaa27ef96ff563729df7ed546edea4c8113a7911a9fb35e1146b637d3ba16b6128ec41bcc786df3ecebb6e2f91fccf2a69a9e9de2828ebdec7c484c56122c418b76cc5e554e280f79bc8aaa0340a3e3dd6e0ded9b5944b2e600dc9cc598f5aa5cd5e17235233169f0c1cd13da9b03b43500847c28bd4adb81df669b6613c8b11805b795d7fae4a5b8a508c6fe8afc7ed74c8633e5266e5e694f26332948f8d0b8bd082686baee73f1d3931e23dfc41dddd4dbdcd493f4f7ba2bb5829c5fbd597e9b51735a78206c52568057d5dff04d2c060257881756029e5fdf33f97870426d832aca3a34559056c7ecbc61922d483b1c366644f017b7b0b89ad6ce2c07e0498b419a54b8a7a2744fee1e40b1f77637de911af4f0aa43d5a56aae09a6aa4b17aee9bc46d38b00ba1ade09246888d3b149dccb28f237a27763145a29a8bfa7b3cf771d2117b64c771f92ab83f05e4d9e7da5831d93abb16544a8ae29574c6ad982930cf8de44c45240b7f2e02ab95a75289aa66ab05c9109e09f25adc5d967b64d81a297a9089c8304a7104ee45a52fe525160159eb4f61584525fe3caf7b5e404994f677f12a73157eab45a79e48e3ae12dda3eb65b967f49e2ad4c8a513d0cbba76608035903add1df1c2d02b07d50862b3a72c841b267960bbcc153c4948a27270eb48670c0b76a6774736f03bdf7bf9efdf9c6535081b6c76ef0212750f8eb3e08167a62b5f9a97e4b4702365ac14847d021ddb6fe88170b92d8e4d55c6c32a9793359cd732ca7d7e772ba5dc00be282a405c4fb70e659c080ceaf7613379ce9dfb2b4f44f639b810ec40a10f3dee9b322ce512c660d16cc43b7cb940a93b50d2749a160fed9dbed2b3016b231be66b31676e56e74e41fb27749f3d9135ee40e340624cf016bc66765a056caa55eae0498fd7d89ed5dad5dbc3428b066431e926bb6b738db75fed646d9de1a6a6cd9345b60db1455f26b4524456b1500d73d6d67ac0c1c162555f819d107efc3652efcd8397fcc7b7272acf1deb9bd9cb973c31130530126e221000d9ece51ab9a4177ce34f254bf6f52c1292907978cca34b2387d2403b821b9f749a8ba5a8b6c692364411860b4f36e8e2d448e906104dffb48fd4012dcf68acbd3d7cf09061f9ddd8488a433c3a1310ce73544852f93a9677ec938bd9b9eeee739c4f9a91a5b86a9a0a0568280b9b92c07c0007c8e03f6a354b5817072f799cec434374cb2969740774e51a9e3916198c353e8dd6b5b47d67b10d295c7302488da4485527beb38a7ff95bb7b7c4d731fa333ba41111a01c1cbc63a71b40bc1c9410c410dbc64fc55777b1edddf6bbdbb88d554600c0a7867f46318820b52af2d8181384c5fb0d2fd6d2486503a345b34831c6e168726c8b4196ab7442018450abcbb6a1c8951316f81f353740bc6ed989618269440d7fa1053c04f565a033a5c5600ebba42f7b23ca89bad43148eaf651f9f6eb4d9f4e93ff630e5d28aa26228d84ccb3dfd82b4e1e68fde0d3eef280fe3261b06935f4e7d6d05c31c62009f668e6da0d1f26086d5c348a4c20f036ed25e613ffa5c72901945d231421c6f90f1da375274bf37488b918317069bb06482697d38753a21462b86be4e8c3224e9600fc4ee61179b95f2d1f7bd2603e883322ff7cbd8e0b4f6daa5bd4c4e3559e4e97f08ddba2a14e9f384edb399a09109a73fdd99e16309f511db01612917986a1171cab934d56d3d4a134e25fadfb5038e95d87e8e8eccbcc4ae4670472e1aeab18cbc654288c1409a0a89426c6c36c39c2ee5057a1f7519acd165c24b8149b723d1f215f6224e8d01c50a52f340bbb97df29df2aad065e821989ccd33ca588cf31268a91a0ac2113603f85570a29f51ddb7875242f7befbd4ea640708d4afb595f9d2e146d3f7af69780a8dc27ba58c98ce34651d271860af96f9660f7047b5bda7a58434cf6da0951c5a18e58aebe21a7ea2f29660008d88ae15622e8f68b4a90e02fcb93d9ab03f5ec2d88f4faf08cc76ea1038a6a9a0ee74b7c54b97e8f1433314c9d16d03039ab334314c11ad754369a0e5830200e90e73365e7e1cabe5e711ceb8ad2ba8119040c193748e08a8d099de0a1369f6f363c1e4916ebac50a5b8c4b97b1e42e43bc298ebc3e42af291c255d10cabe4502537b91cf4983229b18505fdf548a5d6fe03d9c8402890a93b21d3943d81fd70bae1597ca14b468543ce0883aaddd51d7faa6ba6a98d12cbe5377789d5b8c7abb48e0d3ffc2c55e0934716ed7431a053a18b945d2cdcee5fa4c979303a60971cd88ffb88c9088cc359c9614f303a15e9b8bcf58a28f77630d5b084960820a10c80f3dc24dc506c05aafc528e38be099cc4bf1c5390c4096c76138d3dea2f56e774bad9d6b08326789585161d3bd4f4bdf0405911231d81d507f094121aabb9829b330c73e96098870bfc6e237c69ca641520fb4cb8a107331d9826bcaeb55c2b416995ebb8d96bb8a055199ee7e839719eeadb9534d53d9a41a0e99d8809041baf1958431975930ce9e7e25c7746553c5049d95ad45faba5922f6f184411d44b638d905f3a0dfa96e27c1490104d8c8c4d6ba3b1a24db637ca7464ebe6729eb3bcd90a1af19c41186cfcdb4a891efff8549b24fa1629629c5c87e5c599367f9ffcd11e9ef83f20317f68124dc81a0e4be73b8738bb54d6afac9f81c027054ea7577c5c98172adea44ed430dc046eae6a464732895f145b6d2df4927a63caa1b3605d3714d1a9afb39f2cbd337e4c9cc690f03ee55adc249eb700817cb901ca567ccfcb0b694e3038bc0abf67614aec6a4122e9a4bc72da44ff62f3c18bdd828a27b20345027387b5291f3049907f016a13075cb365872963c59652eee493f9d2ab4a19d3166e6d43bc25e902a461e8021c41a93196220f596e5c22bbed33c9ff216f286086c46a8278091ba2e66dba56068f1f0b9e5a7bee8a3f9e6f4450c4cd3802aedd0ed05ab7078f8e2ad68d1c5a79306854329454057caaa2c983aa9c6ef6d56c51cd29566d6f5fad38ace34aee2378350cc18ebf28ac6fd68b48c90b20db22ae693b30302dd063b669a1c09dd84ee0c37cce599ef7f9ade0a36c3f802a56b1e1717bf59696600b24c79c1c590871b5eaa1e67760f37f204b9a597816919c4a2b8326a6f60c067ca344ef9bfe1ee8e16bf8a9f88c3b76f8b928042fa9e5c4a7f320c9fba63d0b1e0782ddbd934cf47a3904eb5b40f943352e7e303db6ac7dbee9c65b0f7e6d552ba34c9f63fb9f74ba360a7c8320228b7d05f07fe796624d8d6cec406e52488d6441a4bcf8226277e6b3a2002e5b73512d58b4b921330f2056314c4eb269e51a0272a97d489790fe7d402184d71c95c4bedc1b388f4bd360a39f2d2de15d90bc0c25ec90964c0c1226cea311589da5a677fa50cb6a063f6d52fd4eb7332db2d0b838abb8c8db8d6c95c8695570c7d0a2036378c21807ce4c312ccb16c5a27ec5cff4bfac911c1f75c4c6c7f6c5182b6f415705e14194cc1d54664b9a67a217e69734f44e801598cd9ab727d22134a1071945393ed98d9bbd3720aaaf6aefcac5aa63a3fe979f080bc43882ce5e408d1750baf332d6a5e02064a0734c4a9d37ba5046bb374a3db33f93fe4b95934326a144f9de71245f686ae9d1295a9682b8b533023d6e46d28ca3f9dc6e4952b5742e180d065f1f8f29c2f41e9b8c7d9f4e6ea7f9b2f42b9ca6079fbfd8b865bfd65f7ed2ca23a75612799d37092d022562cb7d939e1c96a90a3549d8c211a320b0827f34e004bdc1acb28e4a7570992d97bd4effefd6258d21c545386a3b804f24e9b2487854238e6d26f3354651f227cdcd21271e77e9fc283735dfcd48fae4ecddf0c51af8d5b13397be6748811078b3ec94ca867262b5f5e81a50d5540953e87ade6bf59afa5de619f90da2d6e9c92cd4e26eccb99c61962f53a56db92b1e8578a5f484c673d33b150214616590a8cd80963e81fd7d3ad670836a6a63f941148caaa7a6c19bdc8859c3583b658dac893fd69b939a33dbfc088f689cd1b7560d35f48c0565585c9e6b695c339637cf3dc1ca7ab55e272dfe903999fe27925c0fb1f19d0deeba503f98bc36afb096dae43f99b809d3c3c229f492ddb51d2729090a90c54384833ce64b8a4025ba6f5dddbad59368bf3558a5ebf6c6c0ddd63d637f6ee048db8d38d59008388d053805defec8206ede46be57b1c61dd7ac18d8c0e5f3044c80de9f5d2af9c78046ce3dc3acbf5a88f9acf1b94a85721f9249518da1c1c7c2434c99d96b467c4a59da69767a303190f36fc9755edbd9b28a20ae889a6363086fb8fb877434c125eaa7e1a2bda96c227c477b57977b731310f2360b428f2aee06b5842ed85878acd7f88f932cf538f5aea6e773c240556e296ed009d348a7a667912b20e1b9753ff32e12c2e2443d1f5552e8d5654cf41e6cda257c0acf611fb7ae321da2e2dbe67ae61bc9a65b2e42d3bef500fba9ca949ce71665289d7a34b643bd3ba77759255aa307052169572511001362afadfe8b779121d27bc505b2bfd86557b955f0d67b719b3e9b6b336a4cf9e531b86bcffad14d2608e77180f43178aa1036fe38669bd45905e24edb282af59db2c0b156650cbad01ed089778f9f90b897f5cf1f64057c24bdf7a2951fc237946f36d3ad8eee72c78163791cf642c473ccb989cc186a576ee11b8a770cc02893448017149521d34190c6bfdf0b596adcf1dac679a14a63a1f82d6c45a85195b726eb623f0393b7c4ff6dee442445a8336e0354d41f2f675a7d8d8ed24de4f3bde7aa39a08f827b130e8fe4c33c136e88eabadf10a893c2fb87fc893ce6a2848165a00ee8e5a1124779fbed95108daa44d86c8efb9dddb5170cd40ca8e12bc4f363528bdd6d97a7e94bde6e8c10534d261e7da92404a56c79ec7dc2424f4efc6ea930be543df8801985b52ce7f32d00ccabb218caef145fa162fac0a6af893dce038f8ae261a9728796768c0256c8af60cdd2843093c5fb11493842fbd81c4a40e2d5294ca492271a3aac45579a1617284eb21b66c8ed989057a9dd56434cc903156b3d4acef7c4616203f12ff3ac7a362aaa9a932a23d1f5e297dd57a4daae101cc6d7c87884cb1cf889c69d321716ecaf5b63405ce94d5455c672c50cb537c31d1f1d38be6b38dc8025146cb16351451eff5a1e4c464292d26c666a75fcc975069ff49be85760ebf1073bab0e45094d7648e0b91507837f1df4b02aa8d8105a162b7cf277ddd1da5db0da1c735cd32cfb4f6fe1ff2c8b4d7fab2dd92001e33a43737994a992b58b91283fdfc7c6a0e58db33eca53368ebfaabc4de24d208193128c0a7341b8e9a6c155dd65a5712017bd5f576e95d37d9a30aa600ce73e608787329ea4d7e9d51c9a81a1b162c6708fc1abacb35d352d75f7d1069fd78519fa3a0450eface807a39be2a72eed27e435722b0b5f53feabc7e31c15f5379724340acf38ac625e2aeb4e912333fe50f99c77972e6e2a9670d6aed711650090b6a6749688d27440d84691f8173b33aaadbc19d9158ef1a97246992a7c15361979bf46448e3889d73dd5f2364d834095761c7569c59859a3c89bfe1add48d57def2ee94f672872d479ba3928ec31255d29faca9ed70cef9d6037adddbfa802efb6c5d54b1890712db19e470f82d9668cc1901dda93ef57d2dd86e51fc815018a9b306e9a1d6037d334da56b182429862ee2e42b8537297ff85ba58a77ba5a2a618ba707adcda299b529e002cf6a4529cd779bde10258756a088fa6fc298047951660e61872a23102966b7d1721a314cf8112e7e21b55c9a8bc080a6dd38f786645b4af64ad972c444deb819986f75349cf3fd08c8890f05f04adc6db540b580a7ffb845284a91bc2a3e751e9261b30eefc922c22a08fbb42eb002ff2cd548e77d3cb07f5c68d3da19181c4fcc911b1a977c57e6397352f3b4acfa1957c2412459a76dded5443ef35815c91f2e0667f04070e5309ae016da9bd493cf1fe9350fe481e5c9459ed058e05b36da948dcb907416abb9f23e843062c860c123b35f130472e48cc3981f5f5d8a7c300fccb7ad999b548fc05294bbc485cdc852d90327769742cdf451f01a7a08604875e9a1ad373d78fd966c00a7cb4a1c258e49ef38f2308d2a1906d4b628541b9b188cdb29370c0f9521fe902ad9368c915ec5a78ea8ad8199e636d7cf9ac9d1ec8b1bde41ed2a61c5da5ba0d1978bbaab26dc5d17f9a8a43cbc3b60fb35bcba2350d414244aaf9a762a701e516fa56f12ed819111ca18275633d98e6cc73c0b993c4380ab00447df1be066111415d0b31084bf9fa95d367327d43430806da049fd9a5ccdbb85ce224a73e7815a309e203dcf40d62006acb9a9a39d1508116164df58efec095b6853a9bc2d8a03188d7243b5d26d7e25571652bd9af4e6a24de433720943d0ee2f00d4a06c583267973654292e53d52dcf28b082f32bb55afb674ba5c4d29767818bea1e4cb1b634a62595ef4e08c569eae6361effd30284d44c94cc2bb01f30fd404f8c21eabe1df54c9d2dc27ba778e67f71a8265c7d00b6517f15faaff80a3c59176a449d687f7be14969fe1cf98a825e8c7025dec15d4bd39aa530bdf16c4d798226ad987b8dc23d0c358e0832a4b947dabcf9facfa888b774355e171792c12d62ce44ee14f82eb7b6c30b7191f5ea424d1d7e65abc24277f52d848f974662f7068516a981c80bc6f431feebd0849e45e461bcc026f472cce2c00613bb5bf56437e33512cc1c3ad674f25bb49ceb52c2fb94894883ae42567fe4b70e119882b68fab604895e93f0d5e226274e640bd05dc4be64985a555720e1a2026cdb3e3e10da69a0ce5a762ed624a9feb920e40a303dacf9d048127c6ac4afed43e52a28585ad399cdb19edc2e9f982c70226b125da6dc25cf0a1bd22855eee12ffd473f34e8a6f1fcf1eec5d8f1b46d3ad5060f9cecc4e40ed3656e9d99c8a62be0a6e5076d340cc42e9b55b1dcc7d789e94c2c986ccf5a35ae9038d9b950c439719ee1382efe616f2c60fa3f12694114024330aa3e45d955831b46e7504646b338e150d2e9598b26b4199ec9665b23f5f2ccbb7af61750b4b52e7c15680797e3b1a7f944202d773e4bac2849805f74f6d2563f2e7d634a7da711dec34f1febaef7b70632487613b82300eaf864aecdccd52b8edcdaccc9b080cb0d135a6c233362c02e353e5f714e9e1a517378a058fca6fd63ef9eae5371583c9786777e0dff6641f8958a4d10f0743b1b083e346302e8276f3ed836f51da3cf932c42ca68d3bb690bbd5b75d0f3340937e22aae3e38f898a34a0ca85257f186735295b851e8d3e89c5a83918b81bf121753c8d4fe7f539bb9beaf8bb91d96a002ec42d18dc67969d0f4cd61813de2494ae735e86c50f28af2acde1171775cde7ee770c1828bcee7a6bca28e6b1c54cbe489ab66c3a569cf722f2ba21870cd2eab2d3b6824957bbef885bb7f2435d3093c7eb99d2e3876096ead97e785c4726fdacbc15db036c43a865eeb12f120a2f775b759416010c2fdd12aff828248a3029869718d83bbbd9bd792509529f8874015bc18bbf489ab806b9650cf5d92922cd9a5574fa8f4eebe8b8b2330ef642749b7b5212a5dee81f6cc2374f342bae751df3fef5dbb7974eb0ce4e14b4d02e85faca45d83c001347b88547221b91369234199a3bb8c0031befca6f2ae0b70f1dccc592051023127eb6c60fa8a6c01163bde6041f8f94def2a5e3ee8ba3a1c710696a69b53bc595b6966dcf62410c20ff2e01d4e9598fb625694bb9a28b3e11f7d6594017976f927e7ab34b3fcff4431fc708d9be4f806581cdfef83e66f0e9491937a46508031c7df43ec427ab114c00a9d0e43c6cb4998147eebad85136eb4cda93c88e6a34a6876314597ea811ce3d755da1f465ec147c2a47779684107608121c2a896dc0ca8976f50f159e98f2416c05a42d7f10ddb7a87b7ac80734a767c634813995b78e83dd2aadb6208de58831100dfa8d9af3ec7b07bba9aa62e8b74d953c64c2977e8d79dfbe1ee7ab4d1f0e0bde42315241c9545ed7ceebce5e16d57c92498f7398cecc3ae42cb7a550e1f770f74a91beb06098203f5fe041e6f98d1664ab0617b46112d1b694a959bf364f686bfd4769be5fc526b9d6279e3ccdbb64a2b00eeea0ba63f2f7b3ab8e5087f9934811b9e5dabd7533ce85dbadf44b4a38ef836653e3df81a9af0c00a7d10893b0f0e65f698d6536f92c9f3e57b4883202fda6bf086fd7aba65106ff05e00fc1b9954d5bdade7e569161291c9999a50ac9eb3d532b62b2786f8a2c9773078f694bcf1421a9dfb8b07d76cdf5616ba1929f9e8c3dcec66bf91e63db1a0a216bf061624874caeca5669da6cb7fc8db6259abb23f2220201c4c34cb159c07fd3f43544f1796a0b63f6bc9f2f52ca02b2bad3932b6bf323d3ed18836f045192574d202e5518793b52b75bfa16cd07db8c5b1d6e573eb96889c984c69bfd3ebd6a22be606473bc9d4e05dee49adcddc8385e24e66543ca2c1617fdd6c44bd0b4a945df0e382921034957f59ef0f8a7ca6a1d68376b29a9bc1351c93acceeb298156fda678241a50702e30df7d51abb0eebdf5531e36bdddcafd852ed30063d7ba9303c19736aac083f03a8c3f2484d7a7b032ac6060b59e3532b4880679b09f6706953a8b389036283a915e18da53b40acd7e5e857e42da3d57f21f1a382b471eb69454e767122f51350727c25c065307357baec7ecebed63747457692a2923e9243ce5c4e3162c6b65c991f848e011784cf67379415bd5424a2448c8ed3730fce16ae4a15305ebcc638ba449737cd1d7bdf1d74fcb8d1c30dbb74bd4aff40580221b2b72aa710cb4f243636edbe19fb15ed17dd251420459bf83c720d0bde4fbc5ea493c01578e21d3f02d5757e206c4c7a1475e53201c40b868ac5937008922e47670bada5520a9fd31686e941c3cc413617a5afdadb2d02ac45010ceb960f17ab55a6697e95c376d3f341b093b13115e1c2e0ff63f5f2867a470d98f7f4e2b6844fb5e4ed93bb1c2c8ceebeae3afcc288cda6c039381ccd5e10307a3fd001ed85e0b463329023df90b4b1924050db3cf10d9a593c8e54f693254250e21660bc0398237b0ea3443c0daf5ba1ebd94463e7e91727d9975afc170ce73334d356212ceba23abe1c147d4abc81398007d12c2b0ad564f4e137eead6ff64f54ec1864b2567cd7faf4c5c35fac6c652ce510caab35afd9e84fa6b32d23c4a2b5d642f47139af3b09b587836ee7093372ab3cae31188b7d26510a195ff5a2f72ad8016daea5ab09c85d97b3db49f5fd79b38096fc1a3062da271cdeb8cdff4eb6fd473a3d1013c1624754980d2552d3589beec89e1e2001122ea824e1ed62c87d0f0a4623c802c6d34dbe6d87de1733f170c90ef076de2952218d20aba1c69241a52f11b2c721b14d9647279c6e0d8dafa6c700746a1692e7522d22135f095fe083a2a702e6f207d38151a3e2dffae746e3ca20b9f6a16b11960d4871529e16dd8150fd8f465fab94f36cf795ed0a0cbd43fab301307211e88548f224a08fdfdb59247470e01ffadfdd6e2f95006fd3762ed8ce664ffe82dc35a9e16ae0b5a27bbcce0c2f3cc5e49ce18be4f5ebe212b0c82014a7b2b4fa6b6506d626c796ffc43edc923232e47e3968eb508969383d58cda1f80124a8599fee2c9ac698a5a92e5fc1fb3d727b92997776444959a81713b73181bdf88224723b16e327ec11f81f631abaad9ded82448b7de11d76795e5ce267a9365b65500d2f340dcd8cb54e9cdd4f679ef337e6c48129047cfa1e26aba31cec28a59e1f6fc7f9007f82f3f50dc87324944462cc0ce3947cd3817535334003c67293804d66dace9bba7890e939e6768e3af61fbc8cdf30aafbf4eb2ab7201766042c545216b20f1040daa18becb554c500bf74c9f5a3e8c08fb644ee13dcbba16cefbc134a1ce3c4848c1fb8dde75621b27d36f3d5b717e000d5ca3139d6a2421722ab9bc0aa79e30938ef755a259e610b03518ce01154ff1aa0b89128b921b905e5ae98b52469ae64b4fc2ab0d162ec1a856365b7fe4713a2beb06a310a8ebaa0de1c820656e498363fa23ca10a7ca4909702f1189859e268b551d515b3bb3f76cba78f453b88f3a1e2718f3482fc08851491bfdfd4664f231c6f9b0f60bf056b06da9c6223da387201e79f710b27ef6aeba07db8caf1ad58a27d07437235351a8a0b39a6b1e1452f6e9e6f7c782140068fc60b1553ac79bb62bd39f2202ea6b4ba80242160131493ffb20cc062596b2060a3c5f3991af27931fc25662a4b23d4c4697d1d0b502f8f31a0563c66be0e0270d7a6481ac194011fae66bd66c8cb543cb806c5dc410c80da4b65de495bbf5171ea4c9bb84685a7505efc327194b9fa4c016bf89ba060b4ce3b4b14ca39c8c549b469830de98e6493221ad8bdc8d70bfa767076fcbceaf603e1d8234ae5cdbfe79375ea54b53aa1dde98d09893f005d34163e8a839789d7b874eeaa977fc64ffeb3999ea7992401339c0a50c72a42804ec0c4c5cadb3133693e0bca2eb0cca1f8734863da0817c18139a0f5ed0be0b35abd741886100bf7764b76e3b9b340275bbf27bc75cda5a3801f3ab50f13be2e8ef1b5cc520cb84cac954d70a1648081139eeb97d4f4a55622ba75ce8a10538e9d70a36f8b802951485c7b6e785d38cd92f2ae1a25f301b1129bdc048bb46bcc3c676bb4a7d2cf0298d116be70c73364e63c3f1d7769620654dff216f90eeec0a8effbb009df51749939c3594d9202a56b198f0717fe6eb1f17fb6e07e0aad0aec75587fdedbcf0f5a703d5fab235cc7e2ce67d7dfac9e1e7a6db81658074c0e203a31c7410cae5ea2f4d7dd7189af790807defa339a3099ed33d05ba71233d0254bb46adc3452870cf2aa9c3aaef0c0e16ee92f14fe1494a170741e312d65a2c649b72e0cb889c4e419172847934b6041fdaa42740e7d90199d2e51f0d3171a0f4f3eeeae6b1d99c69f91f0c1fe0978af3b53d9579a360b802a247057e59f9829bf372e2caca7b4ce8c0cbf28045e683532615f16a51320c494931a01b5d46b179d3b194c54f50dc03756c7448abda64f0c3f1fe981f375353c4d33663ebc9ffd50564242a96edfcf0488da512892faefa2b5f7fe38dbbb86159878e5ba7fc7f0f8858c44d84eb9b9ef8f2416a4e7110d565ebefb374bfa7fcef8eb16b62af44bd142aa685feabab8fb9ba9259fd11a89ac9224246bb1c88cb64427b844568a671363f7a4e5ec54921d5640d271bbef7b7730456989ae0ee7e65c358022fa8148447fc67d9e31251129e476334b117efc6b35cf8098f62d01a159a755a9b4bb8829a6e6c1c56d195dfd38aff5a812eba16b7d9be2e53024fae300b9a4217fcfbd72ee7ac23934cb570df9c0d28909cfc58aea5b62dd6026322fc95daa93c25c7329b0b62caf5a52eafe7544afb52bdc248036e95f705e13ce6849d5470feb74a79f56bc701da270efde3644d7974880eca5bc7a73cb6c4c00c0121dcd6d22a8e8791f059b3ac5c1de473378db9af1e99588d93b282379e4d66dd272770e16a62a91d36a5327bb1b6a67fd20d9a4ce8f54091ce8875fc035259ae50684e556c883757ce29f0e0a07e24e474ddc1cad5a61b6ebe0977e1afc6fb2c7f498ce9cc86d9ee254f0cfc156bbcdbb9f46d06d50aa560b2f02f5d110d1f899c06daba50a692a53dc90f7e3d1ef8be50602735fe643f6cc55a8442ec09641f1ac148aa372613ef57c5ba4b02d89ed9e50219c879f743defb2fdb91beab6cb7240f7dc58bf11099ae0bf0a3047ba223ae763b77531bf151e23aaf2c234347113d24b8a197dfb6f4109b53c3e59d451aa52964e7958d775cbf921dbe630a07576d2a791ff616ece1cbcaaddc43e8a5c64b7b281b5dac4fcd7a87231a4398ac5820ccea4b117a2cc543a8a83daa1a50a7913572d23ecf7920100a3b51054bbd6598d6a500a41a83440240291c21dc4503f23be2804ed31a2fd78f4d77ad833b8e9df8fd3b0d02c52296bb0880c0f49376458881a05efcbfa821934eaa5238f3384f04e30443db1d78e53989616ee07e7402048d438970eb16e6f5883e6fa139ffb80b7d594bb2f8f79450380308c97831f61650b00b7d15d956728667653a2ed5b7779a976fd07c44de2639e0c9ba9a165d3e1d9d9bd99e803d31113f654ae6e4d6cec92bbe8a6e23717f5a2deaea2906d529448d4b00948393e399e1c601b67d2dc0eb569fbebe6738b32984fa4bdc7995338f239cfe1980495c374f5f46d38734dfe5391ca112c155ee210fbe54668d71de2c70a432be8ced5893b1a49078056b7809d9733e9e488971881b89d012a0b915ea38a1bb42b9d2b2a78a64108715cf451090a156d120c4b428cf780dce9ef1a9429f4010be7c54c7347d02c6836a2b47446392f360ead27d0849795b1b523c196512dcc03d20cfccbb5c2c4b8fd3259f336f6c7ffaa6e1e8e1056bf93bb7ebfb60c88ce390ec8eab761113bd2336b2f29ecaa350e23586c2ecc664f4fd1a3157f61325d45ba09c9a5f4e5e3d26ae05e31e9069ee6cc288eaa49fb0887f93fd26f54a92ee4d52d29b752205e5b190f1f1c70242cee207ae6271f26584fe78c5ff052b0f4186c7ee6e107770575bbffbc8994d0e1a265729025d563de21464aea4807de03897d3271fd60227c55fe4040d673de1958f29a332734a6ee704cd7b8be6c0242d1d3098ebd50e623b03b1929f1bc1d5612e6e49c8cc7ffeaeb0413660915b5274c85fce9b792e7dfd186656c9d9c8d7e4c87011914c91c7cc75f49563d5e75049a3fd360e287fee5d761ab67df582aa6d4e845e0a721066323d82f499785287ea9635c4602100a0f828b71d9913c0559fe23b117fb539ae703d11631309aafec9105eed2e9a57c89d22733c35257579fdbe27d6dd6a6e63e822d48703027ba57b16725a3b27ad3b5df47788375a06e174d1445786eb9dea44957ea5b4ce0243b826aadccc73c51c769a6985471451f578396529f924bb903513b78bb7afc0833b625fbca95878b61d3da94598a8dcfae15bd1b948329f6248f0f1f9333d77186ddd0cf2495de13fd66f668dd201a9acb301d3f483fe2154f291eef4487ee3cc6af953db64f0f88f1f2e6dff24170b8e5fb7ee1cdf485b0466b0461aba911863da902a46422ade581710fd2ea77cc8e619f699c779cc4a3faa1032c6c4c2f66e0b0f026a4afb9897f0a34245aa12c2b28c8f5ee71c6844ea5be2f3b76e8496dac435917f82273960388ef8f3d0cec51d9a84a64ebff4fe89109101ece77e58bb4991f796d588e14dfee8f4f8ce82f613d69d997f372916b61844cd2be9ddf5f58189e8cdcf3243c87b9280b3a6ac54daee34ac55e524e4bf9861ec2ec6904e290fd7679e41e4d68c038778a7d0d4b07d21c36a5f9fb7464e2b98e0069654dfda89ce43a28e798fc47d0a8e5f29440a8ec397ade9cb76490c7cf795842ca48e15f5e5c488a65e03763d6188a699451ae0041a8334e0e3aec6b024c55644ff19e4795f95f2c52d3feb66abefeed8b040ff80ebbb913988b4ce5ac37900b9fcb4438b8b1dcfe2031c8ff4c96bd6bf78e56c76e8b69a91bc463c178cfa4d79cbc615e07d807be58c7a5d30f67f68d0593b3d3f4f9cc2153353b6d794f7390237df0001c4d7fcf5dc9cf7f32024d43177f2ce0c9651f9b21b6229860e4e418235b24cbde42d19861eb0b87cd8cb8ef116ebe309760dab9bbe1486a81b9a362a3c0c41e92b61b39595f3740901e36865c61302d1d68711565fc1e2a1ca27219df9f0a8522f99d3a4ee72cfba1168c4f62cfd2e1470b5c11b6126538c571c484d4203d8aa206d7b631d7b7886714f6939abdf7a5e6dd2edbfa97fcbc972eac18e635b16b4cda1701b16f05b6f88b275010660f83317e9561b124a3d4ff7c3a276d0da48217eb2d32689bc5732971440528934ac2f761a56f233819562fed1ee26e8710f77e7ae9eb40f36204ce7c7f2e25bda1af740804c4d64884571cc4bae15f89a23beebebd3970b163801c0aff9e5c627c2063ab54b719986170553e014581620723a326a3a3f06889429f0020008286beccafcbadd17beb49024ccf4d11e821fa2b839dac958855883444cd2b65aa44b42a7452c1aaaffed24a7f9ff71f5d74862ee1f13d8e21d649ab20d7b62ef6ef98bd9dd342286dff9d81af7506457d7c52dbe9c6f88abbb217ab05d72a015509b7f74bba1c37fecddbe920b573905197a0d4d603eb09e43f2fb7f8f5d92f094c689766ed43412f87ffbcda6f8230b15c6faeb79de608676c1b2453cec692e9d5c5091409ccaa504a5241ca37fa8bb339a72198e6198ef3261ccfd38235fd44ef00ee02d7ccbbf05b3354264e170958af71201dd66e012eb8e58273841d77f757522b3836531474297fcfdde15c8dc83fbdca7d95792a1182565620effa05bcee0a8eccf65fbe9be976cbb6e6251a110fbc05145c2762f791fcb7db8539d4d1d9edf8f5c925a55d301c496ae655a1c111f28402f3dcea05d9f76c1462c40087d60afce6b265d151df9cacb4a88c8f2cd7278217c02ddc7a192ddc21a9cf6cb0f6f3dd13a3c971b049d89f43e373c3fcc77a6b244fedb331a051652bce445e353440edc3c1789efa4932381ff44feba00a52aa90630ce5bb91d832723535e6ec4da86dc3a00e96743fee5e786a88966bb511fa84d211553f48a8b4c966991c9aceb3bc93c962b393b5e1615be57b54da7233350f6dac38389cb27b5a7f5d78bd0626ac70d1f5001ffab148fb1f823e8cd75cd3f3f2cd7b797b5dd8a76d4a657c3023708195dab4a6573af21b081983f8e5f0892c6205e3ef279d5afcbdacbbe2a411515b7c29927162a114b550129aa9a99b287e308fac78c1c4d8291027aa3cf87e9633995f6aa97c44395b289af1aba44dd515bd116f7a9bd353afc03ce31cd0a882f2239c9827541f4e7fab76d5d984d3e61b57dfa5e35e42eb5e5265aeba23e2138096f856de34ab2e9828b7f83698de077ba6b189144e4e1e6985b6ac19a8e921d3c75ff8cc3b720a2bfdcae70e959ca8e9f8b85b56a7ec3830883d7901a19b1e0e4e9c042d50d87eeb6ec88d4ac15acae1c77287cc19c1f905bb740a691e3a411acf943a06d8bdde588b4ed8fbd7d2473e56c31d8872c8419ee127a24549681cf6b00554d3c1c96ad92ae4b5c7ed7d44ec760e5def2638332137a303aa76fd32a398e73348b3e216087a473da9b6254309bb7141af9a1d9f77d08699075cd8312b9a25b67e96115cac5fab266427d046bd609aa9269278d6b001b438e2ec6a0c2075f0ccdf35329cdf56b7d50c194affcff3fc337665d91122bb3c3c4b743b1483860e931c3bac47b302a87e885c43a7de3ff530a7580594080b60a4aa3c2b7c004d31a82bd50897b17d274df8e280264d2b1e9f3d0a21429bc1c1e8dee0b47704cd659c47713605eb00a15a67e9e5768c7684b11d02017f3211bf250113156eb21a54f2229de1cae793833a29b75ec1d6e6cd0564a47ee2e797daba5ead0fa2bd019b1357b729a06cceaa8e3f5739908e68b033e8d8b30e24f3a1e5485be23b0299e2331dcc32a37fcfceb5e283a75b17701c0b0c424687c28f99083cc19335bcc527b5c6df5ee5e6c3878bc7bcc1305d72fa593b5a0ec548b39c17a22077e9f7a81b2839bd68a9d881d7baf94557551a836c1742268a35f1024039a35f194dd8ee59cfd9415bb088b8bd9c69ca57a29e433d9bc1b887c96c179b707367ee955d3c4a42179b8dcce9a320b71213e637f60411ff8477ceee615c3cb91056231fa7d0945e2576ccbf3630a2176206e8565c76bfb53d5e26ff72ad3a5fd67ad8567b28f298230bde1586f730565aa0b9dc9e8874d529e524e12a5bc524d21cac393806285985a1ded79efe570deda952d6feae8e9cb92bc1c7d8615dea85bbbaed3d0c508a69782940e6049b435475260730a0812db5776ebf76183f2ecd11774f1262553cbaf591af8be26c97b40f39162546ccda5e428e3c8b24979943eb87b262b9287dd7d3392e1332a936a1f4f71bb59da6b4abba2c97a09681633494ace51a0fdb5c17a311972e589b1a8e8b8529d8a3d4884561beef5cd907ed9b3d02a9c71cb5c6b4e49b5e51109c0d55f0cbdfeed08de6500585893e2fc0f28f2fd330b31bc68d7dd663d5bacc7eb482019a9c996e01eb3c99239b8485ac18a98f052ddc4f438ab5bbe18a8b0bb71f4958a2bf0053eab53a959bd40f550638129a1e480d88b4bb258762d2495837b446d1ef4f2799293d56cdcdbb2cf3bff5a16ce88d18645fb3b8a616a811119644ada41ef11167549873a44721b746cb7eb68ef426d84ea1cef461c8ac1a751176654bd80565530c954f89067c9558e70e6f44bbf2cbafe857be43448085789209a4647e678d2227393bbb8742a8e80cdf36d99c589e7c4102f0f882cdab77c95604793c562c2de4d3b6c44ead12941b463480332e0849d04f40a9daa4ade9a50ba802ad0dcc87f5ae775f3f682a632bf582b18424e6f9f3de0839243d9d328314566b6428cd5de1198091df09f5d25cc7f63594f62a0c7caefb2420fee6f6a827da9a7af25494ca5fe885b590df40b78599382a7f133a6ec5cfe63eb09b85fb9df2f993362a3054ec8388755cc2ac75af1f045c8126a9508ed8fe6898e8c380a6003def87d8e3546a5b36942d888f162e176e95afb81a3c14b62c8bf029d1b36da1267ec2157a95f99de48e6ca43a4853b83b77408da085a2caeb7b62ad26bc542da6039b59aa2fae71bc62a0a2f19e686eebb2aa40a3faee134e2e787f4a96281ecfbe0d9e4d949046e62dd9b2821a3e4ad5e9e5f74dda160dac7e573e00ebdfe290138edb6299f174a7d3db91885517dd1fdbd41218ec185030054b8c76b75269d61acfe743c2b7e65e0d87a5ea7c8ad52c510e2ef7b407859416c661719c704a06ab3623a2ed9d84063edde9fc3bda32243046c9ff55d4367cdcf90436d022da4c5b8172ec05a3c346a56696e8536460a4ed2ed948d96272e652fffb883972b035797869e6157501f02c2381025d926e71ba250477025bcaba1788c453542b7af81861c8dac4d1c9f2e38dc8d874ac770fefa4420cb3d894017b2253c9ce3d19eb6af67ad6c7f3426565d115c574b81624e92f8b50b7ebcd00e9d763da595b2cb690e0228710da4467b7d774393b32ff1911a8c50816acb2c1a3bf92bccb8da28e14dcf2873b9a85a58c5ad68177968fa7e0886296e2d44f96389e55d6886b0cdb211f10c9686a4840854fce203d8229189c640f81448572b58d13b2934afef012a2cda1724826612bcf9029c7051924e60933184c4503514192eb53dae2c3281bcd983e611497938db819f31061fa83b6a8675a198d6597d9583cf53e833d922f9a45b81eaa8a442996bbb69fd8beeeaa3cdb1231b38919fbb683ae088829e83bbd5c932257cd77cf8bd2dce25b2554d1773853368673d6b4b6814c5832524536a3969578f6f9065e7dac4af9fe60aa48d76937dddd6682e52109d661dc0ad163f0d9f897840b6f857e4c6318cf22f737578e13fee7aff1bdb1dd0c411cbe14053b5031272f7b74f823bd414dbd9276e597c34d50deee743784ac6fa303f10270cc69d3ec5e2de0470634d6464afd5d4d81d9b56058e870f918283a5f27c4dfb859f45e45e04f114eacc6f4a4927b5fe050494586d2c67f669b6c0d38fd356a37066ed7879718c005492608b39d79071b11cec35757c007f543622e6a53ad49a5848f87f29521d5cfec4ab8bb20bc374401fb925c4dd13a5185c04728160986023c15313cd1248e8465cfb1d2d6a0d1814a1107587e7e0b7f715e52f85cea8b768c43fe0ef09e4c30c6c1f9909e57ecabef07850f1ae4dfe266c63aef3e34d975aaf166fd14361690d83a6f085b4a401da847785d8f479a994ee32cc5cf23baf52402efc9b870fe39282dfa308afc9af13532698cc072f131e5631f131cab2816ccdd9b3b223621aa20419ae9c8f068ed1eb6691a5711e3cfc04851b2892b8e7c9dfcb56eefd987cff72cca092c57230805a1f6a86cd088592038d22e2ff7fefaaa6b429593f52ad85a1c212d7fff6d023aa4108fe21543b47d2cb6cd0ee7e5ab50e1d4833b118567b67fb452e662a1aee6c269f9477e3c79a50e50aba6f9889223ef31fc556fb83ab1b54afb3a9aa416ce5a962b251a928fbcaa83e222e2382e7ba071e4ac5dca225c77c42ade39bd9fe3be9ea6ba45efa8e9897b44f390bc6408d1cb892ca9971cd9eff053ddef7ef97ba1498f5fab73453099f889f563a20e780b22ca5d5310d2139c7c2b325d5ef182d3038a057e2e8a9aa4098aeb131eca2241649394344df458639a15c2ea61e376adcb1012bf5db7dac9af5f95f13443459e22efd5165e8cb4d8f08fe02992d420727bd69788526bc1db7a12e446e108c46be53599a33b8dbd819666909d492dfdf9804bdc9bbc8a37147887ff9a0e0242d46cb3479660e96f2b83d62c6eebd1d538f5f27e1ddfa0c2c8561cd3e327b7d82709320314d521fdc14902caf207d40b2622d1bcd2aebf8cee66e407c7ebcbf18dea8286f6d6a695768076dc5613c9a4b96b0f8bf5b8c2829bd86351b10412f6f85e5687a7c460049fca25259f0457ff6ec98ad417e8cf91fcf628b35e4a1c3ac3a09de702c35853c351636079498d11e11cd412850b6b3a5e39b3630f82084ba7d047985d5f6286d44e4fbfa9d0d81d01ac6f750a9fcd078189693f893005029dc9a570c559c32dee5f045984e12581bd0cc4d5bb8fd218bd6c2bee8b7e81e86f77534ac817caea99cc534841bc89d468971a5fc8ebbf857cb3188ef41b1cd11ca9018ff1a90bcf924663d218907e3cc04e860c9efdbc8274536673dd712319c40139025faa26e94c5f64e7d32a141a3ee50f778986cab2769453f173fe96c9508e7385bc1df32610cd50ede41cfc99f3e33dbd740b1fbd8b59b8802131e8b2e8c470490927b6b910c265a4545ee8f6ace76c8d53adbead5526cd627eb76a369fb5b69acd3d952a935d22fe7c8c28adc8056651ba5888954ef70c596a206fd15a4892cae40a838d5b206807f4a4c3336b524671b81a55f3cb717e8299dd54ccd9abfc1747ee816df655543c4366ba38a232f8e44d5ee124fdfe5e8f228d2b511bd06ac7082d368c4f2b6b1f0f987648ec6772e8e938ffd304211038f689da118b87e5dcf131066581b1f11fb5870abfd70ab6dcb3410b6b97b45f41b8ac728a350dc8135cb6029ff419c3ea8b8be2ca8c3ecbac43d4c20afffd334b1daf74eb04593ccafd32526507d891c986f154914c6ccb8b6e832e5e8cc83634a45f77e61c1d072417a4bdf33d5c5b736897dcc29eec7a689c31c9c53dc9c0026ba4ba91431b7d995a7c8406263758b2da81c2fe00ce9cecd3306947d6a95451ddcfc454fdacd438cfe7ee9d6f934567fbb289114cffea9b1a9283dd57dd9c62f3c7f9951d213c12e57a472b82f05cb49a2d9721593c3c5c8575ba007f3b60921b2577cc22e90f4053cb14605fa0d7b9802e0063716586bf51cd396f14f5ba7369e4eb806f92e959e05c41f72194a8384f5d2ee8aa1b3048f3d454303799a2e4d1be9fd9d0665fe763e05814d507f44b5ccae2920528e0cdaa1f5877683355ab531f4dd76fbb7c79309011c73ccf9ed3781f027abc45640b30f71a5c091ef42d815c2c88da752349522324e6e4057c046273f67466aa3eec1414d987c51e310d19f8efb55a68fc673ad5f34848b68766f7886dffb870618bf18186af5a5e3aec556f1576646656af3b70a673371b4042f4d29d409bc9a5d81a5b5019d219fc6da23a86b0a6f7f1a5d4d56c529b91cb769597b761063fa3a39a833ba570be7b2b6b53037292cb43487ca92b4362141ac5b05806d7f6394cb28ad8e2208fdc4314a3766a195c16a46c9a77e0597c41f116df6198cff1be21acc55dc268dff2a6e96eb3336660be6b0be7ce09376351583fcc12386753e387e06a9b04138a60f1b2f654c94bb444678a236e662b3fc0a668255f12f2850748f28310e65161e15295e6a982bcc8998d69f6e85286dabce4f69633e03bfca16028a4fa0ff6393d171412de599a06207a4fed1dead94d14af4d9068993a56b84803f93d92661ee112238a496999f0f2b487428702374074c5c050b404308a78124d52c967250f6868f1051c754068275861364e19e7ebec4d724ba7d513d7d1007dec0ed374310a504505e8a49788fba919f46701fc1ccdd7c40f6bf8f075f986305f07ac1383cd280dd9f601e7c1413fa49f74c9bf1e96653ad393a74288021fec60c622a7c42b06a7e034ea210d76d3b6cb3913bc9e0cd133899fb67867969cc53fbd52f2030e989a3bd5261cc0fe76b0e3dfa9e04a5be5f6380b83d520e59b1568a4802ab1eaeff772abfe57bfc14926d5f8218e295cb9131a165d65e13ff0d4d7cce20922277d56479c31f0f86346a81a4b177a8e0e9d6ea8533ec5a5233ff19f5f2822d5e5643379f2e49f735bbe7f7d73c6efcf0c73bf21601e2c9c586bacab50dd9e46cffabb21223ba2d898acb2bce36ad20bed23364524da7b7c4d6270c87f434ee0d72a41ffb8f137f8a7fb74815e9399d07ea76fa0739d30f8efa986130b04b8928751a7b52382db894181cbf651da7cd058ab7c85a3bbe8459df686c2fa68edc69741a38cc170445fa2b9f33643c2ec1b8995f8997902c5b2ce571277533c1c51376804b933dac5e1bfe87a8ba2263a76a4a299b805b6ab5fa610fde6b5addddc616f85d1573336f988efc3b3b9ebf73698c9a56a30c4429376ea88d2aa8f75e6f7227fd5b08fd87ced342d30fbd25e22fe139287041a005af2e1bfc5cd2182d91c2a17e8bce8c904efc7674b6c679c280ee769d8253c6f87b9385a9b41b872019849c56312710d67b0b71cf0154d11b1104e073a3cb3fbe37444e82a41ab1de56bfc0e9a1db77d7c1549d97dcecd19872786efb3bbd470763b653b51bd011564799385832c386735935f9b38f2712fd4946f822645b6d798fb5b63052482daccb1950ebf38f3b67641d7ac448a7a2270d9f0a2f18f7545d795d4e6f263da47f8a6678551866f37df0214c43e2bc64698292e17a8d35f7415d11973ffeb01c00dcf6e1650e326104f30409bb23c90b118e8bde24a1787e2986a90843dde497dd3e2237ec58469514c13dcb590b0be29a9dd09718e769f48f485ee9692f0dfddec80299ece1b51e245ab863bd3133961d4ce6b8a6c737bfec181b029730e42a793d512097a5ebda6e76ce4d3e0135d46a474a040afdbaf32544fb50812623ecdb6be84d374d47e86adaa36a6f5dff2b183a3bd12469ce2c24c0c3434bb0286aa3927dcdd546a6ca78a82d8113d3357f701f560f68bcbfa9a4b88cf0c0d98b86ee8dda9545c1d738cffc0446ef03da93f4d291559f2db7391e2f29334939435932fcc950250b020c246ddcfddd6fc7596153323af350cf4ff391b52e4d17a30e51580966745a14448d15c5acfbb9d4f8b7d155ded41ef30bc8ed847d66cf0b5698745d61878f099566c211fd3d5b1ac0759619e757df7024d9c7f189b96d21a88a82bf67970cad9ea0b7f8555631b49728d898b955b23f9a5cdefd06796feef9e4c072ba3c0616c98494397edea7277f969b87c690702e06ab2dc62625854f890f1ae2e79c5c0e297d2a95519ad30d00acfcaa4e8c805e6e9040d3efcde7bcc4b8190356986009a7eec097d23d55663be0117f27e06fc2192715d9e042d2ee6adbb7b8d2ecf6945742e2b1e36cfc2f02571fe07f8be860bc42e479bac2c8bbeaf36cb6901e25f9fe48c13334f4063b468fe5e4657a0b23bff701cd7dfa77a374bdc5fdc8fc44502361344aaa654ece30743e3dee143f41cf9ce9ad2b285bc91a2c21954daa678bb9c2c4321ef9458c984592623cc3fded97aba78d696f224a28d7b861e464630926cfdf7ddd26d6bca73334cb5b318295ba3cca031b3e8d0b42e1f397fedf3cf09c720798aaf42144387aa87a46ea7b37ca510370da298fbae363ddf6e5f2f8ae47d8554f4525c0aef9cd01010eff692695fe9c5a196cd94e8c9e28226238739ba942ae7a7d4fe12fecafbae5cf1b33436e39739940b49ec09c8202bf000f3ee26d87d23dde8c26e8b0091651f9999189193fea1145acbe83d650edde2d93421ff468049fcd7dc428bea479bb5d7d828ff3d538c2a35968d4757c4fc3c5c3734fe548ba19a9c6a11f58243102730c6c529bab6650e25797728e5f00c5c0848c2ee7b9d68e571df2c840ce1eeef4d017bd2e238711e9e92fbbabcc0009812ea6a9e3c5bb15d0aec66250c642a5c0526738570fe8d87320fac0bd7d169c0663eef7d9e0e13f6352b86d96d52f97bfae5489c676ee94d5f09a1018350433bc5de46e815b3c0b17a7392d14ce8448f90fb8dc32af929ee8a1b9a3f87073903bd02068621176acc9f24773cbfae11792175c23146c07e39c69a083d9a0e3e787b0acba650abc27c6972085acd69a7ab58ef01d60b4c1e7326c1eb22038810e102276e472bedd8c4b4d2bbb861ca33c0eca8a2c1bb87b32d7e3aaded9cdcb8d3b6efecb670f768e89888035128820f8527a9c4d3bcdd31f166087530671bb7f5791c4a2d6cff72aa8cbdb8f7d9a013c270f37a75a2f86530a408ec48b73dfff9e3317c798e358eacc3a7332a2da0fedae92bcbdb7bb9fcff6ac28fbdb79dc5ffa8650681e13e1ead0bfe51a3816857f0bb7703f41ab3418392250e5d894d7a229e5fbde16130a343f9f94f0b391aa64fe3ae3c82355ce56ff1be81183204ac0387e4dab56fbab0e92ac93c5c8049b96d0f0fa4decda6f3fae28517577fd7c8ca0542f60178533b0f8cc728ab9a939f1fb71ad550d3d64d4d95d3ce982a34ef57fb3f52172de422be89002cedea261be36905a43b0f08c2db84b3f02eb950365ea61e09da81fccb7f159aaff2fd514447a9b3ed9b74e2e61bb7a12784dea73c653746b38683c9f5721611921c9f521bd3dad070dbf100cfbb0f55fe2590ec8d3c3a8ce1cae3119c366ad4fcb43c8cae3200a4e8258fca0edfe2a15e3f437c1dbb562358da6f842dfce54cd4fbb74cb1d573758d2223b6bc333a2bd45ce5a527c0cb2531090501bc6b0dbac5f13070fe7b6a34799896ad3fb54cf2577c0b4a2caca040c9c5bfe2ffdd1ad64fe0231c32f89df124c8cbe1ccaf700055f12a7e3a05685748daf97402b11462261c9e5444633ee30ba578573a740c4c4b98c84c866c554a4907dca9034707a963ac8a8b8f6648500dd4080ad135e373a01409fca198db32f1971a585eba4be3049afa753f764907e220adbd4d972c77291e929199ef236ee94589aa2a78ada7c4a10b6dfe12e92de4db1f5d8c324eb23f215879d5a4d5a173114337d71b09b3664187025ecff1f83f8ecc291d0bbad17a8f2ceac8238bc3e2e821cf8adc30d42e3d858e63b392715693e4c1d140987aedccd8471423be49872ebcec713dcd51699086cea38925f1c464b23c96d40fbe6827416539171855ffb113aa2f8b45befc46c093ab3587f4d1f84127a1f74c116f60c09b6b4dc10fdc0769265fc54a2a883ae6a5b4ac347769c77f7ed377755f07e6ec033c95bb59aab67821d10da56586c8288a671be087d4d35568be19c56547e7dc8eb65f0b4a6ecdd90636a2445a3037c1fe28f9c65228cfe1c00ebd1cbb472e4f7c73553ea8ee46a39e51daa8f28a2f3d201f087ce1758d3467a0951c9836c7072591147def28cb8e19e6a1f2f3e6aa9df18cc3cc711d6cb3e9d9c035e7fa1a07afa3ea90bdb8ccfcc4e9e9ddd8c340a372d5430bf2372e51a56b5197eaae0c6136de1d106e5851f4bd665ce8f6ba697b3a66876ada4e9e0354b75bb9ff87cddf79a35946a50c6396f467aabf3b889a35003dd5d2b3fc6d88ff453102913cfb8a53c93808b9dc77f7bc6db2675f161821e121a9371e4fc4ebc0e4aa61010ceed3096ac7d8acf878d4805d2d2c658186b5b13665e230fc51b3974dd5f0abce143574bc7cccd37b0288b42bfb607329748843a5973111bd8022d6f871f16071c456036438bd154d8d2998196b2c15c37caf726d347ed4bdcd34165fc2ff97972bb4ce354e103b138cbbd1e2607de0111984aee813447043e5ea687b40394508397fcf5d3673fe771e0a593e6dcd181fab70504eec3d0b394b760d1688189b7fa3f32cd104c46debd0755a12fc608041d785a83a667f348e82371d60d1c4f622b224cafab31ea99efb75b148f283337e5deadc3a363e6239f67376e4cfb4dff6745f2df0d6001adc7ce9ed94bc71a6cb252184dd1bb10df53d1750a4180692b54aa1a99dbbac6c99a0779978176fd119762f40752c00bcf9f051e1e6bf779f9a44fdcc8e8dbb103407260a48b1667cca851ab5110e229519afe2b1dc02104d9a2e3d04342fea614c14788f87f4ece429c8bfa54c641428d5db8449fdab8a5be143ccde52dc0f9b4e4fbade8ac0408c472b1a1c850e88d1b518f22c8f8fb72db06b6057f9d324ee3afe0cb410a666ee25752469d2c927d17886c1bae351fc77f59fb88b79d1f099877e5e91fffb659eb2bf6d2e4ed1f3f130788f5a600b3a1ba83c5380b66da7ddb957359ab6c67375ca2c0ca494d8666df61c86e3383b8923d48fbdefff9656e653be26271b368b39e07dd557ba8d434df91469c155943d935f1aad468a75558bdf75ce92ed8a0130cfdc8f5313e779401eca8e2bd72ef510e24f6114415328fa0a45ca3af185cf0d71ea542bef8e882345ff432fb30229756aacddc41310731703f27c5af2d077a30f13454b28011c8ea343a0eb7b611e05eefff79610c8b8379d757e181fed7d12ec2e95fb646ff8d0dcde721c8d3cc138f01933d949723f7d6a4f125d0ac6039cd454cb70f564ca875426f0918a36f22c0cc7dbc983c82a0369fde7216f255f68f812a2b7a1921f2f1a9a7b951124c4a97a55ce0c390c7a329af921c35c8a9add9465fab24e720730ff18b957bb21e2494641720e0824805dd8deef0c17bcbe94aecadb6d5571237253f1eb6f22cd1edbee26a7f8d3631b0e747d6ab65f2f8d977b06c640268199eed2d0198f80aec551a88774430cae8920811b7bfdd9cb1873971e56815f352308a59779bf7986e35640c8e92f7002429937f46fe2e59adc60334c60114758e6b02f6e3f1c29ba54fe7dc5b73b1c0bb3afb94d72db9dad2cadd951829e964812b7a58e939068c34d5cd302726d8af4f576ce441b6bf0acde642e6910d20bd530804836228af5f28aa9c98f580833c2e5541d79f67174c1b47a1bfa8df64325dbcf1423cb0d8c437d959d73edce9542512de1af9807ab0a1fedd591d9b893fc952772dcd3dbab7a660b469c5a9859ed55836782a7ce373d42820f1d3ae26a6c779e03a8f84bf04de1e6b7edfda6d29a9ff74eb445ce99695c85cb9ea024e7e79ca3de0dc50ffbd4d730dcc581fab8cd3e102603716e104d7d3364bc87b1117bfd3688e03c11e2ba83c760bb2a0e6092623e933dfdc0f48ef6b61737eeca7252a14eb3435bfdb85b9f2d4aad018dcc887b33ce460bb6326b18c1372b1d3b0ae1a466e664b1c4a5b638ae345faebcf0f5e3ef9d206400f59be752eb429fd59261c17be0f52013b342481d8269773a04be6d6734f80bb254044f50c9a7d4f88492ee4e8e60828cb3a191644af5e586d516c418ed9f0276c7baf78aa77d4a773cfa8c469cc176fe31476e639dd067d45dc8af9cd4a0fd5aed02a0599c961973f292da79cb5e8ea8cd975d7629480a17783807189f5337976c5f2e538b648b4734ebe42f122bb65ea2d463474f89697a9c504275566e152817a0bca55502be60b3352cca5f0b19f88330ce1bc7c180240b4dde91d51d6d0af4dc43b800ca72ad2b97430256ac01bc226ed2f2ff1773f0caf19bcdc63e5597e7f74ad2766eecc7ee487a063edafb4c14b879313e68bae386455140d27ac84bcf84c31422f15250091036023d2a51f2967850bb3fd6d598ca736cde57c0d8c1280dc7a0d4395c858c82ebce712ff6ca7e9c8525911215c9c525dc0658e6d634a02b6e08ff52e5ac7a1ec0dc3bbb7ae9473cd44568e9c69898f7a8d7e9779a11bf8a71674a413d9451aa16a4b59b86d6d540d8dc8955ba23db781c51c79f0e99cdc42fb4cb213a5bb3607516af0959566ef2b5476ace9df230bd87d873a046a3223f24d6eb8847805987fb228d628c7135fd10c572e855f5f3a56b2a8a7665bbb917613031f23eeb8070858f5c54279c95bb39c1cc9fbe8eeef22446646600fd6d359f1c9b9fa8637a1d96d815e78b4850673636e1d65e007fc94933a48e0ce416d9126a30eb0949571df744d69e357bd42ec2deb6a60e28d2b169fb72ef6e9152ff4557fdf8099a34bf3c4dbe19f11c3d3d89f62e89f18cecf52ddc77279c25bb8002f9d2a07258778bb3421826caae4ffe779616a9207f591f1c69a93bd9cdaa7eb7388f6a491a6a3eee562d964420e0c0796373f9098918a1fbb84c8ba73f1de91bd808a307c2fe1408ec7f06397715d7a17f742edfe6b053a44c8dee8a5ebb7a677714167b78c96ed798771c46999f57be2bf2e2ebfd586414dc399fd8fcd79a3b70867abbbc851784e4ea8840c5940be1c526d190a3928ed3b2419dd26cce937a65b3a5cd016388be07f117f3240b1e175880b841f7d763dbfcaa2bdc91b8d6bba3af4cd648669c975c0ed8c1ad7213722f3c0f3757c60c3536349510f0221018eaa46ebbda022f8a37ed97e6ad9ac46fabb0f74ebfd1afb63d77fba02967edd926ebbbc9769be95ffc72dc3dd71925febd31e65e80b6f608f41c252c7960e309f2a672d71283b3cf7e3bf77be2351c08a52f0faaea185823fef68f9b3187636723b9cd2b937b2411178ff0c8fef7318df254b3ba17f14079f9afce6e7de4e8d13486e38663286fbb6a313ab24f48c582fd57b21501d728c2b8da03469f5030634e30a2b3c7866ae299b768420ebd0310b56d88e37dedf18bf84def5e03b6de79c51643ca922b5427d182aeb28fee27f41bc814d0408d94a62179ab460e6e10ff9fd7eb3196ad8adfa11666df3a33e994a36e406c7fd599b59832452c8f885f57c8ceeefb28e641da35f806f3ad58ed39aa2124f4f62fb935e0588264a447b82645f8cb0e7102e8415b2545d5c21ced20e6cec8a8389fe04433f671e27b7c85d551d11aad3715d0f6904d7017962052ace92340010efa5988479ffcaf34de5dbb27a1141567317812e7b521e913642327f644a590337bf646399a28e9caa88dcb60823043b42b017e76d82ebdf972d2e8cec7552d870c43caf56b655e84ca178bad7afa4939e0180828c59d5fafc5f31a21d0c7c86e9c5ef56fef60a1a04ec64b9fc1910d2775fee21b9d8c5709b80211511b134ab359069ea97cf32d53755cd23f6205bf02a898eb11e7793f2073b1cfc56820094720e1f01189a7da59454e097da34ed31ed2e1b442701861e6b42f49b7f48244da5ef43f0b6b5e8c276af39a7d6fed746bb1fc085fea5f979f54cf59edd61231b81be3b23eb1697f2ec6faf6ad004c223517c6a4047eddbc06039ca93d11d87696ed087e9cba32b7a76344059660e4b4e22b9aad07dd329cdf9dc956ae23399b0c32b04db38f3ab63a385a7d11e32147c93ff7680ed7b1694c44f90921e045416088599f5ee14e6d444ade06993544b57f89cadb9b3da97b6a2d1f6d9242324453c60c49c25d623400bdf2725f96c981fa0a089ab75d8cbf50796c711f2523b05ad49e574ec5e14c5e67f157ac2d038e2142a76fb86d7155113de0278e8f67d3555eb17647fae35a0133571a3e9ea1981f464c6d73a25d0ebae7b50fe67ee17d0df4b344f4ac67201bf6ce71a2f2b91032676cd4dfbc1fb390dd5606b0347ecd8d9d263d41d86d8a96f5a94af0a0036f19e9ca0de588caedcc84898910b1d9554901c9256284851994caeeaa334ea5094336b388f2137315b3e36b3615379064eb64c8f794c134ccb4b241325c80538569c7d692f8e1cc26cc1231f895c7f226343fba7ecc59619f26b71cbcb37f34bef95b5ee2c46e4046c4167cc742baed0e3cca6d6ed003b4c2f22311b9763d1ed22f8411a395e24b1efd900e7af0a66c78322f26ff50796f3d702241a6179cd4cc3800370ef1fc4a9033feb31ae765c5939fcb8c168f5c30dee5151550278bc926e9be0c972e9efc71e5bdcbe2f3b16925f99ddca698950cd8db15b18d07587709202b59ecc86d69b2c21e2ebf723e4e490f1404016ef7fe9e802cc8a5a4121c8051b79f870a18b719e0808196630e9ac4f9660ab393aa19bdef56256d7c45c7c5a4c351d895259687f2670e102dc3a0eaee5a8f07efa44ecf1b33c6658302a835b4b2680b2639043f22daa486f5dc443e80bf9a28076d05c10f1c0b8b421f22e356175a6561dcfb141b0423bdb333db84054b7b4b351d00d272b299ea806125b733ac8fa5df36c38c7aee339773b8a1329efb6bd193f1beb857dbae43e0a4ef6411b3c536d74899332fa4a730137ef85950ee57046bb08ce161fc13af9b292b3c55e193293d4054de53ba165757bd66120a96f1daeb29a1718caaf800846d893b213e8eaf452e0ecfe99043753d40f730097c26ec4a318a01f6e40222c12e0d52e338ad9726fc782d0c43d2ada4b8c760020d1b31745d539407d0ad98557aa568fee0eef69a68d4c5d6f8d989fda72792bd3b49ebdb65bd2786c91f4a7ed081e43daa46f6153e0fbf971f90c80d696e49290848da2b6764d49717203d86d3020397877a3d5c1fcdb52d809f119e2b5ffdb38e129050718fe64140aeb1e4311a3042eba0dee36abb2c6b1cc606fa94caa90eea6b5547fbee00d197c8a35dd8edb1fe1ee9769445c29bfa221b0b5d0aea63df413e241e5b67d64efbbfa4451dc16b6fc60dc4dbb25ed9f146394b52b257fafb3b6795f36d6f86dba0b3e414dafb1db0a469b4f9ec7215af2a325528b4ba974d5c89f73798a0cb797ababa74a2fc63b9af9d9b50f402f3a657ca4a486fca21cf91b0e4bb9fe68f5b7f5b5ee63607eb3c39051ccac12f653a0dbe43fc1f13c0f5409bf412c7baa5dfce28a7e1074b2cb23c8d66ce54d616d139a2ad57de32ddeb351ab7dd945eeb3d614ff29e839dde5d87919668f73056fc6bf8b9924f8d2027a3a166484a6c0c29979699faeb5516f81d94155e19eb9e3f37dcb6034cb0cc76a02cd2fe49b649e837fca6a259733744ecd298ea2c5cab323f193f0b676e8990e0c11117e3ddb76a4faa30b2addcf96e7aef35a6716b8f4d9a519ca02dbf6a23f44b7d0cb0939b001530346e673b25e2bec401b2d45d04cb8d4b8a6522f988c6d1f8cf4d088098d596a45fa6925f0055730c880a0bf300d29f753955eae794d8ac3617560899cc6043052f4c243c7b293a32a4f2415bd4d4214419a3388a50e8a60a27a49437277dc6bc3c8842d4a50c7874fda38c4962ef72e56049f06888c1fe2a5508f98b4b043066d74b49b05f514a7e8399d210f633fb7efae3889eb8b7df5f8d2ab801d0387928b64205117bacbd50aadc560958d22abf9912bd40d7543dcb95713d0039d12fbcd81f89614d2af04653f9b8a885a68ce93600d042ee6bd85dbc3c5c193bddf4f808d5315aa95c4ebadbdb83f1295965756f24389f034e6a3ebdbb19d685cc2b57a8ca56c39d7236ddda52b9691169399fecad332e775b5940e4be6968cde71fafbe2a037d90e5960c568ed38a330d7236e4a856e0a56f131f53c4133f6bfb2db60e93f7e64e5ec017b27ffd6efbbff0d15d29fa3c43985028f41f004e347740e7ce90ea06bba3599f75d03d5f528ad9979d07fe5c0e50ac085ab90f1fee3276f8fcbabe64699405493d4f47ec424b758bfb52010c0992c08ad588447a34b14419bf6bc5b43ca27998fe28444e38b5c5d773b8d7d1d7d8eab3bf786ae7a15f2e6fddfd4ed9e7af7826cf36c5394a1476cfbed39068f475da6e1316fceff0c972a8436153ddba8b85c713bdf491f3a666594868223b90722012a2d4855986b13129a384ba7ecba5d2628bb6a505ed3d70f240a2ebf39d8357331328ac55e6f9de0e6004f51ba67aa1c6b1d8e38f800e832a7ac5ec34b9251f378fe0c087f1eb3eeb026e974765c2de847fc75338e12512a2ffe614df89c79caba20165d50d735ab37a45eccb47937470f5e633c2bce3b6449a2b323daf9fa2912dc3a7605a23d7006b22eafb119fccdff31cdf2acb0adfee86ef54359b1c3558d3923b452f932f837180a7e34a93dcabb32dc7b3b034be11227d7812b5d0368e3985df911eafb0bb24c05169bc69436a483e1510d9b7cbe15790a65ef702adf6b0f6fdeb27d6bbdc5f1a74a6a99efbb5ee6e9aea26d53dcf5a28d119ef4fe51b23123a491162c0959df47a66ea4879f8432577fc38dc1a51eca3ac4953ecb3cfa315258a92d0a18473e8f6debb937605689e913e1cb8e6b25ae42ae9a4d35479ba38ff97e654f728f3a5b76de291289db161af296f78c8e12364dcc55d6f2215085c0d1945bbdf9b933934f1dffb6a1baf5052985035879f954823e61f9d96dabf2d9c878e2c24a4a212d09b9e5c60e0d8995956d25b35d3581fe0060ac0fd054c7b667c770c269af9771515b39716678c535d127f9061ef70f113195c11839599bd8ca6013656be35db1e4665642b3b547931d75e401dc9ca8b16df25df0d444651dcb94108a96b8e17325244175098218d7a1855c1c24e6b3cd02c4e80e903c12c64fc7c9fc09548b0da10f37b1cb7a0c937d98dc7f12d6f7c5c341c7b9c76c2c8ddb3840fa42252c230e555bddb6d0fb7e49405aa286aeb3123ea32aa3b2f8f5155c440361499334eaa305063b067879e2b5246cb65aab0138e7b05ee84971bfc5b6e9f12ba1f45934b4b237f40bf69ca1064df43c601f053a485a80675f641a89c511d00626e24d000b0bd56afaa80c13293fa4f494ccad2d39a453e48964a69237484509f4070a7d345caa0e4b234df3c4bc1c535aec8c2b92b408fb21cc4f17e2540c989f867c9c9dd197aa67cc16eef67a098b045ae98b8f04b52cfdb251a5e2fb9b2efb27c7f4b711241a4ae9ac264e50b7339ea3d6cb9a844aea6a9294913469474bf83975ee2d895faa2b36577240c9faf39c118e4df661d231879ab48aaf31652c54c498b975341d5f44f845534cb1fe6f21a96cf5a0fbbad0c92a373d869a71ca0ae7646810f952840ce397b06f450691df0f5cfae076b6b40de42b3aa6817a7f48f65e3eaea50afc4490216531091aad05b6e6bb98061140731c561f5454a0f95567a8acdd017dbfc0540ab30f4c73bc424d549ac9294644baa4b204aab05afec26e53af567a3693958531fe0066d094d8ee23e9e1764ae9a978b4f8d99fc97fd90cefd32a3f200bd27effa2deb2b37097df2bdff4a52a80e14043afb068e08ea2173a8d64388341471115fd14d6527c9f1e34c135673bd4614b2439ec6fe9dbb68dd23a2b24a777eab0c4315dcf8f800dfabd29e1f0bd2d8e5c62ecd8ba5391fd28450799756f18fb44f035e2d614127dda57b413dcf2665448b852d96c513d15756d07fb24825abd012f83c57333f28a6877ea72c2e3be36637942f169fcf06c636bc9658207c4afcb792431f7a7c9015ffddfc37fffcb64e43305f9528741c79d4a97f3f84b305174cccff2c08913cda9c70163965efdf8a6b766e5ad8ef57cad58e03e4e35793e5a587b143a138b08c2834fec38a7c7b067e6e31094963cf06da86a43370fd43170cb0b6dc3d45965d79b2a80554e319d67ce94a5c21c5f2995ae155119dd78c8e951d0c5e5f78d379475de12ed4481c3b1ce09333ea5bb868f912e3286cd7707ee1093af6b967b51e9a5114167ee6e52117b72aa698a5caa7395ceb2b7300e6e6fa68a3d5aa73ea3e720805e447abaac83e220d46fa473d487f23cb2e53d881b2eb45f07d1aed8b40da4210a79eec733b10ca9958c7b4603c9e08b941f053d28d9e870414d06c6865f6e38d33dab1ec1bb2412825426c85c80b70e7de762e3ee746492afeaae6632689cbbc793ab7ece227778553d63709c2843504595365284edfa469977ec1f9cd2e145ae55b36c2cd2fdd5fc9ad865d0b2337d699b9c69224893506756129d3e86654a58c6a34934e9eafbbb713f58cc7422b5b16935494e733e6f4de1f425d18802e131f636f26f62fae74419f8062ed5c1c1a648750f68a1545e69c5abdc2964609d45a28311384a9661076ae345cf6b4e5faa422bc41dc5fc3cfb8ea0fa662df12db92bbb817c8adc5006c0c2613cdf58d4a4b36434bcf1fe917aac0f44d6c111336f1e1ea63df63b9abf3a20f55e4839c08cbe721802d57b17dd1dd828a482dea22ff911f8e651c3926f4a907915e55680a9c4df2bded23904ab425151297c683a412bc39884aa46e1feb538eb948e723941753c1b2f5d8b98d4f694dca77ed769f5a1abaab843953f98431b6ed8d68cfce24e883d3b271f9e5aea14ddfb16efe1e773c965ca863b4dbc0d59eae1de808407e2ed12431685b2b4e80d35d4d7fd33a3c56a582be39d84a2e49c1a1165b1107fd9849ad4d22f4227174a4c5791954f08e949aa799f61046865887f03bab3e6b66c012db5c4f0e78eb735caab14efec812a91053fb3294a6d4ae560ff15942be524014ec407fc1bbbdaf7504a7d35897d07b3426e4917aa7bb8cf8ea7a22beb6f8e3f36698b38a2162d539fc637144dac1c751cf0687e36771fa11aeaf3b9a45abda0d2e4e70c3d5bdc19d5d60aafca72f2fca21f8bc42098fd364c274b0f5384d3757f88074a3c327697629a66172a97a01d403848002a2fbb691c2cfb1d2606daaa4d3a65e81812530ec374f924100b4b1a396f986fe14558a28410ff7da71638f5c18797d2a2159270acad613a99a196b0bf76fc696bc48fd238b46f431cc613baeb11eb4859f38c7aba0b4a396701dab1772497cd8d19dc341fd4de0189222277545c26ece477772bcbf6eeaca2d1b704e3ac2705a03f73885b7a0cfc7edb6862c1041f50c03e3b60cf92166175e488c6fc5f04be7a0c5f40b35e559d340eafc9930bba580d135ad4d1a77cc0565a5a55812a1bac9f1a75267fe3a030f43a3f1687708006a1a3bbfe024d90f0551e13a0c2952dfa7c3d1a0aed119a4b3ff2b22217332d744b8905826aebb4f90e2175a65f49a2e689878aea3663e1a52a93a2e90b911fe8811143589a3520b909a23fd7e5f9f6d6a976836c8a66db1f1b7ef90f407e8bfd661a4770c5ec8f795e12810bf505d594a4a3e1e7b9e6f64d8d8092cfbe6cadc1711a39490927607cce3d982b37d08a989ee22bda990d9f65d98f9850eb261891510b4850544942b694a02fcdcef1e253f96d529a5850f2765c7692fb092f33dcfac32ecf8d991f8f44974d5ca5f36bb780b71a73b5ff6b13840a0019109d6dcbcbec4eee11e1f65ae13430306f0487fa1dafb584a028f10591a9ff2dd1362830ad1ec930e3ad1537911e742d337eda92862b378d73876f9f6614c028f1e4f69f93495502b615f6d4b647988848a940ba1ac1eb0774b36cd864fb87ab8c6a9f38a3459d768f6f45fb6de702ded4b38c5a071dc22ab26d78d1554aef2784f3be146412144d61e68098fc66c5fe159c1857191f7a30a93a23e58c688e9d0f6fc5362d17b2981060086fa1525bb701ac2e4dae0f69dc60ff741b269d01855bcd1ae93a31e5127e9f1f1b8c1c2ce418004458783304eff9ac43dbe26b76b873620145f1ef688a6e074b46971a0dba5a02507c3cbf82d78fd851affa3955080668677c11114b9c7fa165d414b6aa0e24b60d310b7dd4b5f7c635ab13c85179f47135d7f64fa62ae7f9983a60875151aa153c9d4bb526fd7c3e961568f2816fa21929150d0e23cae63fe08ec0085d235b448787964bce429afb9806697d618829d72a1b16702686b62abd59390886a90518ebcf66fe175c3bd11d317212b8c643e696551965aa6821253e548b3b6d131e2b0fcd5fb0ff88b2da4246407e97222b2a76cf39c673cbda1eff674084fc6af91e185e10b60201c883976c543fef8cb2702da7c2dc6d703632600ecce9cc373034e6cc3d7a1cda0df3cea305fdc643f0c8251ff7d56e6794aea48bbd6d259459d871014c29a5a5592b5963e091cf4ad05efd9a8637dd3c0e48db2a7c5b49cfba43412ad944d540dc3295a0b821b290634584b8b1d832882cc883ef8c5b4cec1baf0e767ebd88c292a7ce5b1cb46084c6d894652b3842a0aa4a91e4341d529dc8d5e450a16c921ab33d737e1a1bac32bc891ad94e21cfc2b60f85d07fce64fe2e67fd3bf006036e9f6df246ad5e1682309dd3448ffc91a6e363ac7ebd8c5ff614455e8d5012a6aa3dbad51a816df2942a67b5b61d5ecee2007543a06a1e9c600a138dd47dd9925d16d3eb289bfb0a4d91c8d4b56e85ca4d77ac12b2bd112cd67f5257604287175e4834c7c32ff8d6938f98faa19a8b9396ec3f88492fb878d2502065c9d799b51a10ae8e59476fb92dd1c47fad6021aeff2b323ef254aa2e2be5e3428d416e4e92c2fb7493336ce8e28344c3faa8bdfe9fdd6a8796142229dde5fbc3aa8f3abb10d136e1ebd3963c1e823b6bfce26ec6c9f8773d7796bb11c086361318d5f98fdcf3f72d01cab3e8ce45eea945088ef9dfced354185ef63eb6bf24d8efc3860d1916a5db13a96ea2a6b6aebcd67175e6333c758dca559b48e3c69566da434ece9598dee6318fa4b8a6a85bb8165ef1ecae9f6951428d5055c72be969c5ab378ef0133a01ff49cf5ac61e32454b6efe1f6f4a514a31be1968549b2ab7ad414ecdf3b208293e0d6f93d2bc37e7a748fb0ad1010d1ef353a5fa70072be9ce6877568ef0ed95c7c3540915d28444a24c08dcdc869dbdd3d3f82594467d217dc3621d5a6210e09c9940ea9fca9ad64870eb2c51dea0f1b3491b541a8cb327bab8f3410cd58c26821f3f7eef2df8f83cfab61767be1c8721f7531e3262a8aeac059ce205fc322858e540579deebccc9a501cbb7e1500092a8ae7b73c76d687e166ae6e1e92c5e519032daee8f2646032825211fb2c780d37f175f708989dcb41e95e282411d1c19e60c9b9eca9d4c17b6d8ae9afc2387953a3fb61c560e4535999aa4633d34f2a41afb3b1093c5e424568d395004698cb6a8b1c2af88a6b6d77e1bd621f663a06baa88ed85c00c99c8a2365d8426a309a8073f037d54ebdd5e7170d98fa99860cb239317b0bb804842fea4f7cf68e918dd852be9cc036f30a8aba8ecfe0608310079f0cc07eb443031308ebb341ee0d659c36f5ac1a1cc6a1459a75995f4e24f0fab65f503028b896c1a61cb78e2ac282e92d9a005c4f4f6d0f084f98e57da0f8ddb080ebce3635a2fc5c46dd1768a8bc49da228e32291bf8971c8c541dd969a968c5f462be3668eb953334ec2770bb36550a6ed172b70e09e54fb59d26141c22b6bb188e01fb87651e1b2e29dee5880b96435a8b9721aa0acda58dce57d52515860b3eff93ab906c175708338f7c34c9a508093790b462acf15e80ff35e4778b03cc7ed8de5b2ba1e23c5328113f0022af33ac3620aa650c942706711468475461f532e71b5caa53ff660012356a8670292075d1d82cae45e73b205859ce141be33e2e10d27751a9548f4a127d11642508b5dfcb01e0fc28e91477e5891dd2e9735805b040b081645dfff3f85646c02cee5140129d0a1dfbfd11eb1b044b81b7da05e050ea770ccfcaa17984f09f90300b3caf0a8e429500068e225ba797dd1d525b8cc53e85653ba196937575976b7c1983bf3e4eb15737d981e537039901bf1ecae537e453c3e35583643b79a8f6d564ab870778cf0742682fb71e752a7ca047ad792e858c02953874041bab7833d0a22029d26854e6a2649541fccf1753f7cfd2ad6c6e540415d75f5494f3320f82eb96f3424e63eea3690f87c228475eaef36e9630d618ecbee4b051daec1eb9a36103752dbcfa2745270000462680056937122392e798159c3d2537b35543cc165d28f68054270942639c61e4698dda01495435a932cb31dcfb768b0ed75fbadaa222d91033f85f48de347b8c5d12404e750575e2aeeeba36f7ec6927e3dffeedf7fce33c2406d1afc8cc29a5034d1471b173f55d65e6cea24d5fc08eaef2fb33e1fed78b76a128c53e097e8b6a540c3aeb9c01819f5591210253f9ed1ae233c88982e892f6dbed4d6cb0c9d1220349464917cd192cd617305af8d85cc8b68d391f0d091598133cf40eab141ca521fa61a04503e807a75e098f1e66b971eb7adc1dad68757f75419e85e36358a85d648971131c1d0fe15bb80f132bb9db446115b28fb317d6ade331a574f7bba91ddf65d2504f3a2128093b613521fad9a18497b52b1a1d79ddc3cfbe1a228f253f70c2594a0ce106145414fa26e3a25cddf303904d50bb94c0869d120c986db8beedfba4854f2f59cc501d199020b687efe07fcdfbb7b03f7aa8103976f9955af54a0711dd1cec5550f64be9d2af3b86478e73ed9de5a83a02d85521452553043cd29b7ff633bb91294e1ef25061beb0d1f9a3f5e8c1ef06daf9234db17d7c341302ddb44f94e559ba475c5316ed0434f8789f02172475aaaf91490a5a59acbc1b0f817d187d79796f38967a771347dca139703f8c413639e05ce0e101fd890eeafb8efb089d380b97033b259eca6243ff3982e41fa3bd03cdaaf2bd73b81a0cf192bcfeae9c370e6fcb83f1aa54602a7fe2b897939ff58b961f69d51c6028856cf8f5195f90d8a2747a50ecf40d3d12e697d3e0f2fd59cb1da96c8c39d8410d782904cf927038a245fd0dc736b9104551c2a284fbe7f8d33fdf2966c19c10f2ba113ba59943f5d5de6b2b48e1614e7c723c145d2ea74835f34eae9e50db70e839512770919c7b1e3a90bc047cf2104543cb03451bd8b7b5ac73475da8e8d91e10119a78fbbf2bc0d78b761a5ddd644e1dc31ca17b34dfa8d1dd7b8e27762eac4b46d68193280239a995a97dcd6338b2aadb32a3e7e19062e4e5e2d7f7572c993e2e238840d7d401762833cfedd5b5763351ea79508693615a4176575ad1af66efd6e38358755754f8001463ef628471e76cf92131ab0bdbc8a1a75109230c5d79ed503aca655289284df12f166a4c84d5d6281b8f5ad8bde63ab014cb43369b0246c6ab1fea88f9f78c1a69f6a819ae3325dc372599a12c4876adc61518ddc19b138b7c91d7671d91d1214648bff3f35f2e87a22801ea1eba7d3c2f5af275ca646bbab89db6591a89e80851af5a5749bed5dd89d6bcc23c21fdd514c87f154f6d46e0d5b38186421818ab0eb5adfff4918d8a0474cecbfe4b4993b7468006fbf59f2531f31491d81ddfaf9b703be43516e8afe899872b071806417e35e51b72206b4e75eefa9d7573bf24bd1afa72971138dfa002774da3c000a9b44ed87acf76f0f435ae25d2a06694c7ff65c766c78f47e469782eb00a9d52d0204fca5f5b4f094bd7395740e484341b3d7f284f5cf726599e78bf7a3ff0ccc57970556cb72ec39cd32c027d1b4fbd50c76bec809b8a1c99a016b7fc59156a143598f7df51fbc67f296ee5a565c1c6e88255acfb0d9391dc32767d2106d694b4133da7622536cd8baf5f66bd868c53cb120ebb50c016413417824b213e72cb5c7d3a3d1068eff224f423588ff3ce19b494060fb3f034e7885d27b38cd914067234e8f533b13314dc047b052301fa3bf20b4fbe6d8614a2077c137ec29a9d506bae0a32f771b1ac0b4a2289cbfcfde36a742dc1ff590fd4a42e487125259f7a6c9e263638b460c283722b10c19c91f148d3271480d057d8fbd20596db395fa11ad07689df795e7f0eed1aab7a13f12beb669ce372384c03ca43fcc12937966b1e15dcfcf2466ecbe346d8273ef1b1e9e56c56da3e72f5dc9c9713d29eb5f1113ee98bac2edd5e80441db626f2020db048cd7d3368d04570fd29314dba13845a62b047f766dbccdc11fa93fd14652d38162e42800941e66bc093468717378b59c3947e004cc2d670e3e16014411607022d692a9b631d3b76b6cdc9255462ea6d202cb91e8ffce78b3d073d2e369c229e4b7804326a1ad9c9c64c03854a67de9b443bff94f8bd92a9c06d43f5c6db2825e91a27ee2e0c15dcba78d3bac4fb6dc86d4e40296b9afa62468f83892398604aaa20344d365ee065f2d934e7568e700d5aa6e09668e16fc3dc21a6094ff15f2fd27a0c0a70c91e3a0ea5010a2e8914e51dddc6ddd0cf7c5e16efb64ae272a90846e609f1819f74d0a219e004b41ecf00181e52d40a647be67f7c0adb114c0c098bc58f66961be66be4bd1c7c5cbde50f3502e0bed52cc9b62fa724c5ba7e5b3a35c4741647c9c7a030d15f39cd7bfe40f1192cac1e408b7a4f772b804ba782e1c5217f3ac2ad8cfa6e7a23fc8a7da3cd7ace672b23f242df2b1f920daa2023218fd11eb6fa465f4c57a2beff2fecc174137ed5d198565fc960d5c4cbd0d27ffa08997748587e17898e62405461081be494f478ee38b7e7b399299075e20dc638b2bd156c11b8431f01eeeee897c5a11a829b468fad10c28f719bc7cfb4ea5dfca364d5f0afb37d2dc3af5fc45e4fd052c336ab2e3c8492263d40b430d8ffcd2508e9f3f876bd99ddb2d840a3d898a68f7ed3982c578040a7e4f5ee0e4526c374288370cc9444bd713fc9a087aa7be464e9395e84a103a00dce0cac88feacc21131f52a24fc2033aeff0feb5d3a17de2204f22f92c42bd918518be256404c830a911f9e0f5e32a794f2d1f0ed9e67b0185555c3f0409965ef6e75a8d9de9d4c015205a64379b65f6cd07b22678cee9edfbcd86b8558d3c095f78870ce2ae4a73658315e476d773ba796ae11cb2ea2630ce1d8a01e38a380c49981bc5499dbf11fd2650f8d8415dac089d7cb2f0ee435902e4062d9c4c1008eccbaf7819d3f63f6699d630b771de0569e9628105aaeae54a1c07af693b818b300ee454d630ef4b3b2005ed0f8f261f167547767f7f3f670999f2396a43f0d2ba8e90d91930c68a9b20ac68f473757fcba3f98ccc7aa2ebaaf148b360c23ea56bb98143113fdbb8cef96c712939ff9c103c230764d83dc80e43c27bcad19cb10846261aa0fc8b5c2137c27a7a03051653494a96452d2ccb6b04702e744356aedc5add0d43fac432868eb0b066170a282ada5ed08c6a9ad20741fa9f0d4d8a5ce2db6f6509358b81933fa002cfe48b90edff198b10bb49aec3b652a19066f658f4191106c031493d02c58407245240caee5208ed5da872b557e73e13b1d8168fffefb325f5eae0117a793798756fba4bf372315f273284cdbc8ee75f1d0baa84e6d530356c6dad0cd1fdfe8f00081a497a63b364d32b3db00df051e867df19b347d9bc1ed512a75b8355a3d19b2b3613bbc799beac0f2cf12768d6e9b4d31503f9050543f2665256b3cfe7ad766012ee63004175fb04c66d2cabc8641f6e6863061e0613ad805eb32000bf503021d22e237040095fa8c330bca95ec5bc282e0b91ebf37ae11b106f13d18830696c451ef0e8fc81e27561751ae30ab7a905af8d129c511104b1f9c172147d1f5bf1e38546dcc7bae90c32e56c4f627c06ea8b99b4375d91cde6b4f57121dd624aee6e89cbcd694e6db458727cc6a6160ff9731c2bf2c14c43953f49d4d7f5d11646f03f4e03eb1a0ccf1c42390f2f20b6a5251bfc83817a1efa5f1224839552ce8183bc35acdf5e9394d80d9d0985139add09dc82d7ad864461e6ac92ee0aa527b6ae915f2723d73c03d81de2b09a492a0e24c8382356e181ae78b81166d1b972a8f687613a96815ccc5af9d2bff9bdf796b29801271e557c95cf7137fae41d4520a53588332ec3e924b8056d95e01d964b55c28676197efe45faba6c501dfb5f2cfc89bffe0fa08bf60967e37e046a54ad1c9d584e820d4a3904c26c9e8e21ba53bc8da0d8156246ca83441fdb1a8c0a1c46f65be7855ed2565e8f879e7115ffed9ef7e7f8cd0a6d6b616bc653c8697875afddc62b0c58c094b9f519d3da7753e0999123befbd9cecf94b71936def4f90f2472aac3ab8e00e279d4c2d1661edc0311cf64a99b62dfd9fff13c619a3070a9793e48eb22af1d218bcf3d71754c47899992d96c19e7fafa38ad5d820515695a8edc3006d89cd46118b68f84c176703e3f6f8d86e816c025e279089e68118ba87158bc6e0f51384dc058be9684b419278492858f2845f00af8378e4fc5cbe4a7d246f62bfd997233880bf0b1d02b7853a19c0c4ffe292d0c8a1e81b7e07efa23267f2ee58d43a7db26636263e08464318a12c3de92b64e1542c8472745b15f02830325a4a9d7e5b84c4d393b017ba87e9c3a5411479ec155beffb509b01e30a01ac90c713698fcab27d701f0288e1424eb91784bcee136d0b66a5cdcbb8f3635be88fbf33143bd6fdb73efceade767e9cdcf5fd420eed480aadd50b44cb2e944ebd274d03f00646becc6266a13b629843decdff54633f1864b290ddc3fd752a9857b324c9ff2377b0137bd0f9a88b3e49ba73d9bf6a364356c258f855953e120b0056bda7b162ce3a45f97d0c6b5b6964d952a91017ed116030b5ad5c396e4b56cace620ed456b798c9155e0b6c12c0cbcac66ce4d589d7cb1f3316f333e9a9f78c01f211558403f40a5d84e78f3f104357ea165f33a6eab0999d072df88d658ac6b5d6ef7a16018ecca5d41a5b23e9be3591f89b6aee5ba74f1547c2953ce0b926372da110c0b1e108fda2fa1100afe7ba6e98d86167e4bdf3edf3a77e00cb905240d776e47bacd8358369cd8adb8682da7ea4832a5123ba1f8f9ab5b7170511f787e4a8d7fc8f7d0b56fa1f054c0bcb59f60a006ab9d3612c7c9f942da78bc88ff9b3a94ffc42a10fe5e31d9e975b83613828f1ee6a96a45bfd4cb5260d8fe9c42f282032336c328434be399a07e6e57865445bbcade6cd60b41f710a44314f8dc93d69633ac09408ab91a0283fe108e2c0d905272b68fb2efa44fd0b36b62d323cf27ae544a3fdbfa1d8aebdba3976951e7b238d956806700fe5d90b6992f475f3dba812fb285ef5a7e44fef436626649d25040584de3c6cf1c1cf3f05a8871588fd1e2c99cdd58e257c5edb0512d0117c893dffdd81fada766dbc58e5e33803ae07cb64ea8ad2967b279737c8ddf127f4ea8319ae7af171f87458e77c0d3a8a1b5d36d373f5c0d661a69c539bc810805e46184287660d3820169284c3581de81b89a526a8208d34e4422ea9fe4ddd62e0a457981c4faa148d2fa7b621684c7c0e26e1ccae52a8c49c9f57bad8e43ad9d55f5ac54b65c9764f7d6969acd9409a08109075a542f2c73563b392c5bf35daa2457f18e8ae8ecd93a13bca9418c847d097ed231b12a672dcc3442387b99e9134f44cb1d297786fa547a448ea5b799e4e521d24ed5283fab387feeacc31ede37e757e1191e34a5841ccdfb842b2f0637acae4c1be5a289cf400c395b9053ebca6fb0dabd96a883d942d0cad4569dbf6cf7bbfb157321396fdbea7cd0d929dac30c24b5544c24fdf62250366e21dcdb18282745c96f347ab787c6431a63b11e52922218172a92d732f43a6109419b6fda45c4b894adf6502d802f967bf222f372e01d636dd7c2352ff929e3ffc8444713feb6fac4443739fd780424847fea41e431655e0e394b8643d4111320b60a01594412e1405b7b970412d8fe948c45db7bb1895ec4adf781e5b6592a5ed657f5f10a51bc595b576a78b91e149d4334b7b433227cb7d33ae2ff6803e491b69f7d4d64d6e195db9812c3caf2313a6907af5aa9d587ec41b347e2e3148c8641bdeba76fcb10d33d08c7e5a5d22ed9e0bda9b001ab01f79e435d239396664aa0a66ebc6957bd287ea2942987f5c298fed0774323dfbeef6965b5954c5eb4e277f3085a4c3459e6be81ec1040f7338a4308b58dc01799e1eb63ccb6eadcc497abbf848d165d5df1dff1dae55b61e0af717eb673798515322a2cd32603c884ad67156129910144ece6d6d3d2be3ad308607970d60f42bc09a2909130a60f51535ef7275af4c5c210623574cd1fff103ee636ce13f3e3dcdcecea59e44d60caa6d29e40d8104c63ee8e1c30505b4c507e4bfd5005cb160587c31591367dd9806c60150d28a326510dac7afb97a4b54a48c80db2067147f959aacf89679c64f7d7443892e7bc5dfb57aceac8d13f16a9d01a8bb426bfbb7cfad93d8ef2a5abdeb21fc15706606314baa7f1a541001d3913e9f038435cf4390cfa9bbbeb85e967ce074d28182638fa7dd96c73c95ff58296d09109194281e4c0fd469360c13a2673103f66ff4ff6b2bd43698ef216aa868a677c062268fe671173fb7d36946842fdca286f074c26cc76c2b68b61b233df70dd4977a37fbffa08322fe39da518228f0fcec39a6671afcff599481018b4c995f523ca52f0e75d9d266fafcd04268dca164774155b54dbc99b4f1325d75af5dca17592eba215e87d0a9bb911576c7990377d8e5cb379909d2f351f2943012da384a44b4e46a0ec2ca343e4cd667373e6f09e05556b016de8467b7e6908c3e7af55229b0cbefa5326a114bd4eda6a7194b8a4d25e5c284dcc06f8d441d4eb1421b39d2d6ed96a49ce1d377dc5360014199e0438bef5b17dbc33a3a57311d858a0122aca5187c42e4586df23c06d6678cce69fe95c3dffa95387ed62bb11617e87a6f1578c75078406e349d8ee27ea14879ee7b94b48345e671016457ba1d6536eb00d1887bb74ffddf15acfd7f79a353bf522dc9eac59b2178437b0d2e83497ed02d4f5f40551a63e2ec4ba0694185715a85d672b7fd7b49a5889fbef6cbb3efbacf0e6e001352982afb43bdcefdb2898ee1730b5f03d768fea7040c0ff1e2e5d00fb011b495dd31dc620513aaae5c936995d135edea51ea387edcaaaf6e5795920fb2e64e3c06f64ba48680d0de142d948f02392c78f674c778555c94a0e9e0847bfd3abae17d151ddde104105100fedaaac01b08ef85349c9753d6f4c908fb46350f8f9abd913ff60d4b0de1ad3819b80844559a30d6b56629b45cb7095b24988ae798dde791dc6c18a35104200ac0293bbaf0a2c40a610e039e38cab2ed0c4fd466e36885f0119c7c14154af2d9dfeb382fcec76d488288f341abd7ca7bb7487b2ebcbdf49331d15056c24a6ffa6e39457c5cae5057cb2615b7c1c86fa540633a1214a8f0833333377f9f26523674bd7229ad3eee1ed4070d493e260cf3f17dd6d65791d4143a3affc014fcee8015e6bc68faf6425f3ccf4109d67b53b2fbc5b80bfb88304ff51088599f9d5b3a6bb151f6ad07f921a027a4a6feaec5896faf96619a8b272ab06ac5054fa4a9b1894f57a5824b41d6640efa8a89086796362a9c0c9f235cf27d6098a1757f1faecc21a1de746a48c3ca63296715c9a2d4a2c28c5060da8e1934416673bd770065d8632119ac5174aec420fa077bcc5b927bcf4c8553f74c45906346b829dacda7e5c3576cfebd3740d1c0a04c75d17620b2a533173aef67bbe0223bc7cdc3087d5637d8b34e664bbcf18fe019a811e4f6d0d8f54738e21c44eed3ca2e9ae94e382409076f47734e280e2b954040ca56bb2f388bebd78e6bac468cb1a91877cb3051192e62efedf9558eeace7163c73e456948c0bb62576cea68825aa864f86eb7c463afc2e053fbffe81d0f6855584c9cfad5538c467cd103d3790313863c952772b107a09bda3887254d9a07f58095b78900bb2ae4c737f9eff6b4faea99da34e48f4de6182143ee9bcd8b878e2486fd130c7af7435686cf22cb307d5bc2514bfafed712578dd74668856100b20f863db2de491ce8cd54cb3224fa9b5b6f4eb4ad971e2b0a141fc51563f1e46d2ec4edcd7f9ab405c0ab3dc45d09b819bab68043ed8b8aa9ccb14413e5d93698358ccf2644d08ac3c39daef1b9fa97c944da55e3f466e928ef9369b6840295bfa5463089f526d58832c0fb9d2cf14ed4987299de814a05cf2b8d19828954ab131a45e4f6d5ef1e6c82bcea48cc60556f692fe874550d89f642fc2194d68cfd7fc815cd730f7974aaf9af38b71c6cbd10522617a6f55a0c6b73709e6778efeaf0f078198dc3d88c1a881c92828febbad1c18e177d22fa9deb29999dc03101e6a2632f754115db597e37c3b53ecaa927c215ebcb14dd440c2c603d6768e7db7de4154d9eed77509963b494900c1d29a73f32c0923ddbd8cb716b031dad8dbda262620157073dfe88cd57373168ff2eddb96f24ec518971be807a1c05f744c5a31e327949d10264da4db66975189d0e8bb0bd065be867f6654f3bf11f7f83af42563deecb73f70d136ff985668db0da482bebdb0e3b752e5fe5bdb0329ab3d7efb9ffbaa36dca87cefbf19acf911ea10bf0aa18d5f94874dcfa5f2df22b056eb72740b7b2bc0fce4325b91c32f1e7210804b848395410afbd92c247090ff487e3b1d56ef02974fabb5351df60d0b20a007102692bc14c03af9dff5dd55398547c6be474bd36557c160be9a9d318b75e89cebf4a2c015deb8c2c8c2a8681df642db8c4ebe01c77eb0efacfa4310c386e70e9ad37d87324353b1337cb605390080319c3918f86216636bddf1bf265815b9d3e9fd996389ac723cce2ed030510f46668f3bf40eb0cce6ff67011783a122ba7a89faad37cec8eb6c8b838c52e3ebadf34781feb7e1b322e1a12431e4b776d551b75f7e57dd94e465a77d1afe5e180754fef3c155c3b0bc307be200519f4b8a131d569726bee454cbce628e0fb93440a7d44172ef7cdcf6c0f843a975da777d8cd555b6839cf2f066e80fd8e67c8bb9018867bb035a8cb72f451cb3326800f5cd311557c87d3084f9a73fabccc4f4d69ce707637e2ec17c0d2cea83c3ce2cf2997e5a963a6e16e2a0c11c8be67abc7ffce0a53ed951a2c8ae33f274b60ea9d2dab4f4149e4f3e34bf4cdcacc220b8cacabb127de515ea753b1c8efb8d7e907ae03d1e144e98f87c647511f1a1c7d251ce425bdb199d353b4b102795f1aa37b3f838ee62db82f2edfa058702fbd3a552db60abe4d1b5c3ab1379ae99499dac44f3b799a35fb681bda2ea57c03bf88edbaaa8dd51341a108a2d56f6ef2a56eda3466758923c587d9b0d88640de9e710c8cfa9579f6bef802e343ae002228c8e76855fd37876b3ac56dad13a874d0584b5ff69e3b7a63ac89324cb714b2a5f07b45adbdbf0aa5088e5416f65d20ac4a3ea31a85e32b4a7b64556f2bc18cd3242da2c2737632d453c3d5f08e7a925f6483c9e826134c5c59f5c468bc74d306eb0a3ab9dfd609fa1dd43eb516501f45a9902c14f59c09d7cabb863cf5d9f9332d6846245d166785773cdc12877f2c57aa5272c49c34d5fdbcf134a4884204fa081f3813827a9ec9d64e112fd684818ae0342edc7c07cc9df59117f0fd7f24ab1928d2dbb5fc3d6a5f88026538e5c16ca252dcd2ae2e91861b2c33a195896e07d5f34944daf409647cdad1206ed9f7633ac14bac12f2302f3a8b4cf8af3853dc1866abc65127434a5edd761e7b0954662f73ade421359bc365aa84f61b369bc5bdcbe67ef5a02a48f5c7764fb4178dfb747103790a0d1e50562a7c5b288c8c5714437b9e0ddda764d22b0f6e0abc6cb3ea368026e3f8bc68badc20fb4c8c8124cdea08334e7e117978ab321a52084565ec79c305476c13beda480fa803ba711dbbf483d3d4dfad6f3b07479a0d0cd57353e52291c9c55e21f87bcb96562e411934d0900608859cdaf3674a9908e32ac7d452ecc899862d73bdb6404a1829d71f3a201c2fa37df19e215b46b8925d117c16b2b47ecd681f217a7f51990f981fa1405aec305b1f9c0e1ffe2b6a3ab8f03d77e5906a704f5bf6f6312e5ff33c6dc57dc0511c90c2906a0deb401b1783fdc452da38cd9f1c709bb3df64e40fe1f004de3ca9fe68b7832a89254076408f32cd8244138963d3d704fe77bdaab3737bd3c1d4e4513839c62c2c3f15744692eb6940f24729e3975ef3e4fbdb0ddcce418c8cc27c4fd31ef5ad8434c9998fe3c48d870a8fa0a0435755a7023ae2707f868afda611113b2dfda3cbf814fa38acfcc75140043c104d2c158f74e2e056e5073c1e40fc165e868e89beef93798c41e2dd898d169e9537963995f7a5c8dd749407d83006b13a4e667c55d8a020c15277ec5d0cb99bd35e60ff2cfe382b3aab4eb92a4d26d0ba5db3680d4db9dce6853d81a811c493fc672a9c96335caffe8ddb38b75d4c340c1d2ebda011d603c733d81cd99909b88d17201ffb06e9de8f72a44df6c536efd1e229220c417bf2df53c88642ed6fceed56074b6e02e2aa5d4120a6b954785ab5a02b1f2dc3bff6c03eb8399b44fd24b3015e9ff0cdf674383205a9b046cd1182fff99bbb48c4e2f048bbcd276efcb6df73b1d70a9ae0f3361afa34cc74240995ed1cacadbaa4251b27c8efd454ef843849dce0be24feb048f2addd14464b80b2938755fcea71cd146ff012897a0ac52a301b6940b1f007d73a7ce3212a59912749e7fcef4269cd758933e4f8facc2b3cd09c647a4f7d932e16444ea2bf4a0593a29564ba95df506b6e9ee39ce6c6bab9cd90221731c58a49b24b99861019574fd105e0ee6d142b3048dcf6b8fd058b3af6f80eafa8a946341da8f6c0605d220a830df8edc4698404b35ba7bfadd3afaf954829a52cb8c32cd43cbea324d3eccd0999ea7a2fc1f3e1abddc40841699f4113753c98806d7fb786f423c22785676509a539beac000246a458cf9c4385df85dab743dbb703b00c36ed9ffbdb7285d237b181c7e98f8b2ca2533a32aed89dc536ed758298afca5629e979883e9fec8936fd77c243c71652d8c32e8546340586cccb50011a0f9d45a0ee4b71c958767deb28ddf2f9310355da5638d3ae3734983a37ac2a3137d5974c5894cd661e62fcd51495998ac6129c843e0110e0a5ed39ea10d52f95043e13a3e8266cf13d04427892380c494ec660e2108915dee017f18e26c8cdc634468987d54afd99128eb2c06aaf704d15e487e31478a9db939ecb3845326fb775a905e1bcdf0fa9ef31a4227fc5928f27183a54315d4e19643c1e3fc6f045075e1db16ecd6aa752244898c3bf801684532e1b75af9649eb2868d7ff859f962a6a6d1e5d57d5372284fc16895e61c4ea6e9f1d9e29f4e2328f178e26cb5aead7e8581f641b0ba24b886916551d8f4ba6662749c77cb79f887b03502e6f8eae622cebd5982bc7f69365c07f6c83c991b0c337ff63aae52f4e90a0f5d5964bba196b6c09c211f3e700996a2fe4220e7ca83fb074535a308316d993b619781d44ad3e76ba019e8a4dec3b0a8e7a2fa44f484741948f6cba38da8956b598023fe5048feb7df66f63d1395b5fa6cadd21a640c16ca06e734a9e06e94464f56d6b77f44cbc6e30e04e52a1520521c315da33122d714a9e4e6a323971780850619f119a8096dabf78aa556c6d0a77625f1590145dbcb0de9472f52527d7a621a551ad43e4bc41271064b3f351be573c8724072782003603606fceb223de167fe9be7fb319a2d351fe61efab88a6c56e696bb64d8f49fe91a0b1be529e0b49d3d8dded91a0de791645e0b7d21f1ac9068e0c643e1abf546fdc4d638572607c9092dc0fde629a7a756b2bea6eae3534d958e69c77002574db081c64ceb88ef3b6f97ef23ae1ef249e22bb8d4c6face42b328fee4c8057c476a664b3c1e50fd5f17956bac6e0e7ecdb4672c31045009adf7351e802b07df0285c954976a3cc8beb5ad981e95186297f6e4f2e69958d7f93519ddeb757abd3421c3c3116ba0e0c0286ab5cf1bc008ca587c18c3528b6bc42b24dc45fc9d265ed1674eeda5cf34af4e72bb513f5dbae5dfaaa51708f00cdf63de3966d24708ddd78ddafd5aa2a0cba8d6fdfdb30ae229ecf44f186661e5dc152d163b983eecabefe13d167aaa6a8c441357515f48ec31ddb34c7cb92cb2cb4bf590b2d44bbeb1b5535dab95f94e0652e47692be63e1c154e27450efef5c9e381002e7b6d56cee158cfb94153f5b05aab134020faec0d51baacc8b83bfe85c9081da096f5346a316d6aaae3556e08843cbff725c333c4d3005eced8dccb661916b40a2ceee1af5e9ec7f5c7d8ecd67aef205e8c5cd6e1c72cf265b9732fa7e46d680dbecc4be3511472f259d154212596c5917f7427861bdb94c6e9ab0fb4d4c769184789b9a99ab0a080553451e616974e6237aaeb609727c879da3421ce823d1efc7af554e4db8f56e974f30aa22252ca9c38e24024c0cacc27eb0c40d935d8d5699691915467a13188593134d985441b2e9be043d6548dba10aca81733cf5570584154d8904d5f0b14592e637fd919ae5c4032fd31a861987fc3745ca0b1c8047c254ad1c48cf60990b46fc0ae62998cf827e1000b7daf4bccb7fa0d91e18f8db59c98ad084f637aeeed53dc16d083753e1c422ee69e35b711e3a3d678b2b30436649d4e1b38a5d4dbd00d9599fb8107eb1c69e5b9cfd0a309b85fad1284f118c82de3352eefccbfd98bf9ba68fc0d242136e458826eadd1e0a0950221edc7c1760c3f346033df359a4707bf98fceedc7649eb6cbea94bbca19d4e5cccf4c6d50c5fb8f9c4bfe111c0bc30500e5628294c9e1baa31a7bed627ded358e8ac1c1393040742788ccef726bec0743b65fc9d72df42fb1742fd338b6868004e59d7e03d6d6cccd42694430059aa124375746885f369b80a5a9966dd5e05c8aaf03cff66a6747bd961221e43180bb7a59812dc961f2fb9a64cbbc0d8abe1a132547fde27bcb60664d7dbc00fc1e96d40ecb3aec02a46dcd8fabf3fcae835f2a86a7141534503e33dc20b89660643afcb0fa27077634da69c63e937b0fad8328552335fced57820542c96f9a1cdfee9f83500e7fb2a47727da4f494d25036f8ae3a4b5ec7dd2915ba51cd94e51f77e6cd17414dcff9dd70996f67b592ae92b76315bf45e5eb5a68e7fdfb83b99f0ab291146ff07e67cd9b2dcf8cb44fae9e8fcf3a3881f4c3d832723edfc4613bd0e39ab645368f3249a355a2606e887e7c3a59be3571f0d947f4a5aa2ff40070d9b1192c21cd1e3ecf637dd2951e17b064c743bdaa95a5f475610c7e5d4780b82d6bbb4240e1090813c40875dbbd18803708e0798a1eb25c2fd8a1d5c966ae0e8f68bbff2878da0af95041876e45d914e6af531a1a49912598c98bcf7184eeb9337435c007c843fb81fb26d35378d33d85ede9d730f7a768e3e2354f2f8ae357c00edd82f6488a756f4337e753930a22afcf622c6f1239fa541d7a8ab57637d1a510f1c0012d0a50019d4a527c823c3cb864bb834760f3fe0b5bd7f6ff2c8849058315b61ec46e62a410f134f3f71b08619b284fd6fe74530ec6da5b0a8299a73f8b65d1421e84759f193873ff19c09a851519ab292efe3546850d0e1f48dffa3c6ffa9ebdd7a995fac92878ebc837b45e64cf3409ed4bbbd6ea78469ed19f4a3e68df1f88f4cf387f1b6d296e1226aee46009a59b2e24426887a4d393e40f97762f0824a5be39193487d7c0cdee4e35ea59493168f46313e7998d6fdb31b672517b1fa5c2bde0aa4467e803df92aa73125d9bb3d36357eee14dc6648fc504ab0f96c5f4cef94b8690be60d4f75087ce83f03d3e0d1cc93eddf9b6a219c0d50d592126518bbfad41335f7395b7904ccb0fed98526fe276cf47bd2f570c4844546a106106f82cdef1367627cc044ea842942c7089174a1300c4301372cff29e24fc5c533ee66d32d41a0a926c881d5b99734ae5cf85dccefb8ba9aff8cb21e1d9ce1c8235e4f9af901bdfde62d43cf31e81a520fb96ee655a6308a2c16ba71792c50095160646fed3eac723a31e6f44d440dab03a8f2b69dbb9b73ec485457373e38057e6d043c23c3ef0ec3488d86659e3cb40e560ad0fa3eca5c0c61ddf57eb3a3b891e447c50300e2c07920b28476cd975dfb705f1d3cadf7f1c476e6530d1266cb3d4c67e452e4ca15420c790ca48e0e801519a1b04ec2d8366c9aa648d2be9aa4b917840b6e1ace540f775f90fd47eb2ace4785264bf870f89cd87a66a7f17e521ad0ca25340c117e6e904088b136e2d0ea510905809d7f6d651395d8ff1375ac2f929826b922e8df910433c74d8e1ee4bf5d897b038d87b95f2d89ff6a48ef0520634823d96794e6bc621df9ba55671762a519933c691eeaf15e69a24875d1544c333e7338f82b793c4fd0dea047bbba7b7b461adf90db9f1c3c19c75a59ebb6a1eca88f4d9323a625ebd6a7cacb476fb84d142de6e82cf32f788ee418175b00a76977a86de3228e7eb7db34cca383cd725747801e88a642d796b9b181ea8d9f54ec2dee3e16489cff324619856e5f590ce0ec408e17f95d63d3701a41ddd5bd4a6b3a25ff78f200a7727241ac19cb3e5eecec4f626b56f5c42990b991ec95308ebff6c50d411d105efea9d8f73811ea2185f8c94ec337d6553f1bcf5e525cad6e787827908b9943d760a8115530959ea0254253399bdd2038c358f787d5e999a2bcd3949a19d1702ebfe87bc28d68c88741382d4ad23e0d04782ba33b7c87e048f5cd4d9ec8ac8a78b843f28956c226cac483e5e1f4b54d46091eebe2efb7cfd95fe331369d2e9e9c6a21eab718ead39e0e90b6a27a19778fe431edeb5a6079d9f5fb5d8cbc027dc4d033d65b93ac7561a0dfbbca0a35e9f047b7a0c74aa36e90f474e116525953d3428a50a41e46ac8b722acfb1f79581106112d4300acd265309607bd139b5994166b89442f6e9eb2d78250bff342e7c646be162019c8c3ebd64a205cb14e9c23df552aa6b9808d2e54b4e49465c9678e19fcc231f49737e484c85c7d2dee66b804c164b0a218358934d1e5e20f87eff8ae09c91b410ef6ed64b3f9bd1af06ed8faeb7f39fae4b443ac717cb3bd1992fe98a88d17a5f23231f5ff44ea6137611e0d4f9b3d8d11b04308ddf3a8ef44e8fdb9fd7ab39ef6f714b792d82d99477a735639520b78917aa96d09af8d4d108b77fe038f7168043f940d58b735001fd03775d2a6b54ac61c56896446638066b41fc30f08ca81a2bca7d4d0bf84d0e8e5e06eb82a6432535769596ac1cb7f9728da6542f934bd567e52b0ae21d77148857da21fc5c2ff3667d9e4c796910c0c64b31e6a2015e1fa26020d41398886c5b58c2f3cc8fdd0d16c034cd060bd6e0b1dba2b56bb0ca17115d381f0018aff94cb22e695e1e001d02ed63830619b63d1616eaa48dd9100dea50e6c4d44ddc2ba84d817bad9e09610db155cf6e685c8dd13bd92cc6023bb1745bad0d3bbc7f5ecf5e9260e3a5d5f9c3bd4300439ed12366375898c72464efa5a880da81b05b17733fe6caafdc6fa0e7bd1c57e74f4f3bb23faebf87ec680d1697cdf36151d4d3fee76afca574f5538fe999d7484316582ee74e99e6926e68b10875a3024f5c9e326c638d431f12e2fb7e1ccff0fdd7d541d7fc30151580b83d4efa5d50494da1433fca7603c0d0b2b81223c3e81ba2ad7079ff84b06bf28f224ad6b575181a33f464eb515faf07ec808c19e70b34d02409e0692c9d3c596ee9ffa4182fec4c2a63d23ad57b987518f481f601551a3c77f42348852bacc253d505d9a88d91d723d30a254b3d10b59765147acb252d641e926453fc3c6f128967359fa25bf2ac43e51d7d2f0b3b279342858cd17ba41676e2e4e871e8322c71c2869563d699a5701f87c69393cab7acbddd93a576ad5e12c44d970c9190f076b5af6216975f9960a9faa8c160959a99331b9ad8bee569feef1e889ea17f01847c98b4a3fa17ba2a6b1dede1e715162f23aed9035eeefdfb90bdf6cddbb2d0c0f1a7d6d42e2d80d77d02792f04017ee8eb25a05be0866f96dd797acb4d69f0cc35493320e57cc889f705a47d91ce0f0b1dc27ce5bf198576ea58e255e8d115837a7d72c3ab2da684c0a13981ee0c564a419603140136f2646b5c27fb26b2a57fd005d4b93add545bb50e04319f59f5ea8983ad5032606a504276ccb3e884fedf9bed6d085c41b830fb12a985fb68c6c24606b875e64204786a2f2ba03f889a053d7ee4af3f4cc089cd901cc3aff153fc5b389d46b3f2f73cc9dc1ec1e49f1e3b07861ce43015756dad5f5bb4dc0925233420037dd2e485f4fe545ee2df1e3d24fbd5c9245657f60945a4a8209fe61bb0e2c9769082ccb7247b296543865a66117c87972e3a6842d9a0c03a41c6f1d8c49273eeb28767187239169be77e53f1eeb796a483e66e601bb15e949015d67a9adcc1fb1c624cb52f64fcd20d75a4992694e798cd46460b95183330d6200250a714f86b7a6792c139e9ec48d3024eb14a2a0f635dbc7fa1e66b210877f86c19cd4002b0a0c6705986267c5ec174d8fd3b95eeebd76490edae4f2eeb4b6817113b14c7e256fee7ccfd08da2d22a31dbe9c60cc6e0fec657ac0539e46e0fa1c22d90b73b05f6efb9e0102286fcd53bb7f650e07fdcd9cb327fd074ed0d490a0f460d187f0a48504cfab90995bbf130ce615c8d22c4c2b91a8527f778e2088b553b20877ea119e7a12cdcfd9fb217de3edb88c168666a2ea3431333e29cf157694b785401b231af9dbbf15859d91e443441bd161906056758796598a23d10537b6d8416a4fe7cb90ce9d135736f07eb4f56d9e338533b27d1ba9d4d5f0b7ebb846efd024ecf09082d4e36840192486bdf18814cd605f33b606af4ac208efb99bb3aefdc5dcc76be45a31fa1d69d2ff0ba6b78b47b318c79f451229576da573cbb972fa5b1b8ddc84799a77c1b8279c237c03b5dc60c37b20e9e192d6d65933d288169938085e66193116678d64bb865bb982e61c4df7b3bdc702b1a3ade3c7d1473bb9f8223a6a154322db8ec429e8b70d429977dc1c7edc52ad4c622dc759b985b43e6b6627aa6b4277fd74f207fd2ecfc1da36e9fd46512414ec4c63f61d5a00f50be6d1fa52f705b56e6053db6b1c1441c28402a0e2b1ca97f1e1d64570237419da0630296b2a0a062519e34a4e92e8711c9b4fb9637f263a60d650bc23b24e2c55fba9fcf58086773af349dfa2ab9b70213e30ddd3a19a2b52d31ef2c0fa1a9a38b61b22f829ae7a00c89ee6fac10b8db799323cce540b01957be6a021d4a537fac1f0746123a2b4475e4e9fa3e6bebfef4244ef5e5c241a58892dc3512e331897db72cdf3fb6fc20330d7cc71297fe5954d5c882eac17203879a5b093d362590dd161a14b2888934bc828dadd5cb7138e54f3b3e1813da0a21d3dc31a90092f54d297c8579866136d7fc2f3cafb9bece7213a13da50df71a871f3c5c28d76c7aa6e37fd67c989d733acaf859dbc8fde3d0f3040efc6bffe66009a15dcb93a307d1114d4624643b52a8a36d55ca67a9d1b37a831b7f242f527f832a38cf3a0ef34a95082fd796c6ec099195f5c72642dd5b66ed1295de56536bbb46c09e5f39bdcbbfb3656412474faa869b0ee89cc2381b5bb1e57a57bdec062411a8458a74f30c745c77e72283f7a5a6e147e820c813989bf7e80a94660f3fc77adae327c057777b2be8299b58c81720144300c2fb9c94cb27de38412773d764a4616ebd3bb126475e6c652b3b65d20bd5ed8dafecbe9e7247d2a5329e49e9a7c155dcddbf7d170bbe27eaf0d329c137d341c33ed8a8a10b6bb6e2eb1964eee1bd6cb57900171d29313da150fbffee4b388117a4f4c309bcdeb9c33ddafd98b0e02d6612f98abc7f632237eaabbe90b5fc7de667148f435d1df9d64eac7f096da6c3d2a9d560435b6764719c174ad83ced86f75fe8ead7512d1528efb8d144471b5c4a5fe706324660f8c42a7f2cb226f82142f1a6ce62a137bf76805862133c45811cddc48865d5f2d04f27e501169a2a2006c9760e9231298e1f4f6fb95871b1ac8cd8ef6567dcc4ae65c5bd8475fe6225dc877ab4489861836633f24f06ccda934ae04edff5580af6ec8a9006b44aa23b4d013c0a71a676b88e9c2fe27609165519466ccfb5aaf7b3f24b61416a62742e623c0d558f8de1afc52f4f477e9ddc2a30412bfae0cbdcb1bf0cc0f88b63d05f4ecbe49bb2d795de211b5ef93ab08a3fbea034fdcfdf305f22529a4b71350f5299ee9bdc4203ccac18eb1a1204b382d376da3aa047372ff49020bfc204fededdb44d293506d6764efe47d1aad48dbd99cbe61fe2b2f114c463a5599906f64bd00f8ce680b1031d5956afad4803596d1fedb24de2c66739f2178b0681d15b332d4d4a1f4548eb8632c14d1bf7fae371dd2f782bdb600ddb0c00aaaa020b7e992a73358b2e7714938eb591d80708b49ab3d35159d055cbfebef7bcade323f50792ad1235deecd83b0a0eab1bae464eb48ebe9f8319d21fc711d19659bb6865535eb31e8e350e8cef240307ed4d4e2ef10dc7fe5dddfa3588217a327232508103c93c112598f03c9746e9c7fc275475b134525c44abe256966a6e908b07766f5f9c73d9fc1ab74db400dfae16881cc913f6d0d532e9194bf3635b6e8be5b9c838e9f40321ce4f38b09b84c68e5238270c168efe5120a69fe89a40fbee7ea2347483f78efafa080c7c8fe23f42827a0dc3ca93f74d76ade5a548bf1048702bd458c9e4d5a750f587aefad160fadbc6b9b0a82c0696ee994520e1d72eba13dcb6a6e7c765b865c602dcbbe49ece86c91967fb831a26107897b63e772ee876f8ec04273eb627c0fa1a626464e1ec39f2034da9613be528180aa57f3daca059745c732ce9f9d603b844b38265d25a92b30cc91f7afc6327428aebcd3634c4e59be080222db40fcbe410611aec14ca893a9393e3e51ab99dda383b35873004451f1c378e94372b5ef1dfb934f49f4174a132de4412e9f91970641e7e967695620c1e54ca9e1cc1c711eb4675bdf156525b83194223197ec754b7730ef8b6b308feaba6ed2acdf7f44746e3619eaf81ce61dd1254aa71b4582c5a377dc6bd893c785868abf1169685dec808b9482f77de3338256afcd0d72b6c2d399013bcf10f7403c8ef6d5d71e81b1fedd4dccd86fc53b048b0e785d362c06a683cd4ebc28ff20f3eae102f3ff51397f8136cd6d17716c33f7539346cffd3e0e064b980564e1516e33e0ac22125fecd6975fbde9f178284f5a85fe56da465ceb3f083383390bef796795bea45e2330acb477ae8828a30e9cf91ef792a7fab8769c7128730d77a822d558369489ac0491e240c7a6ed9341ea2656178c43fdd9787e7d81a05de7af946c67aefb4b2c9caeb09af76983829f47428a4b2430e329936b58d82f681b57abb71e307c6326b2028fb3acf5a0bd57d69a956c628b2692eaba0fbb32cd4ea63394c00384b27fdcf1fd01553aeda43ed6f54ef084bd835d55e9a09172d8ec2982911652db0d8bf123302bf67c9ae8bd90215724fe4b98e0d0e52d00367b2d69963ef8531a268274f07eb09e545a4e382eac0c1100e90086dce310ced00f469919c8d8e734a5d7eee263dc209adb97f6dd46a397eece8d0964dca2b3ac867a77bb0c4e396f611cd46735bf343373a0338e6ce570813c0895c11d1d096e239891d106cb225f6f5026f8c7ca93a6b3bebd1200a6ee11d7b1e2c80c01e5110e95d930cb3cf9e017cded40c1d2406ae636d757115756660ea894abdc8035df99d755628bfdd220b3aadf998b8ab61884562192e1961e6b72443d12055ac3201fc57bc02690e25a69bc9ad5a5565ff002522310b5ebf9b76963e20bc144f89db0a27071b8017dc4b5b7f024ef80a2908c438f0c822ee070fb1be7e8ade023436863c036c9ec382e75cf7ea893819e7ee9461c2ca002451fa911b3be2522fb9cf817883b49768b34557b89fcac17fdf741c4c26b017b63de71e8c617417c7e6d104bd84c1fc201c5601618b1420b5e839d1c739997a53e3e5604a7390be64a9d640de9282129a2264e16d2996df71e0abd100550b53324c680e6a50db2924115996d56ba9de511e47924d119b785e6d00c9930c29fd15747afa424d7e8546cd4da443847296e4e7a8433fa58428c5ed5cbd915f62af8b3f4a0ee543937d2729253317eaff1e7a5f6cebfd59b548af7df13159ecf55cb6ad1a055251ddcf729a6f4c09e5abde43bee3b8f6ceca8c2c6cf8cc66030e59cd52f215c39eb822cd20a7145600e3c1d7cc34b451cf89be7322a2d2f9b844c320a1f2a3f37db374546354755d84b7ad19e3e0b77c0e6d9b3ddb05ec4ceb3cd7914b06df0279952c5ebeaa6c9e6e531b0a2b9319656a5dff1464e113b0360934d86ee4dc95f0a5d9bbf9ce8f11e2db994c12b929338a7fc2045bf3efa7f6f4d0cade10168ef52332b801c693e2597086a5f32d4f7c0e2d209237dbfbc24bda432909da2fe8d49869b1387846b8d9d5ac80286ba288586ef32c9003e638d82a9feabf0bb67058e84099f7aea57d79da6acc167fe60e4c8f5c5cdae554f8d0bdeb0001623cc323ca9c654a3110d72c9f998729ca1a9cb723046d1fc99531c8d01adbd93121586cd18cd51b47a28c18a503796264eda15eb7212857708b8cad2b6edd14dd8770e109e01ed49cc0444b8a105e1d50bae44639b746baf9a8e57c37819b5f5b8e61807d6dfc85b524e9a82c74e35a3869d4002ac83495182598cd1e8729f1f787001608abf284a2d63710fac556716ca8d781848f0a176accb115286cdbe0892ce9f330ad07f22c9eb45096029a3a7da885fde3a1db9a9681a630a4b878facd892cc5169bee52ec7e6eddf9fce38a349d47bf98f38ff3f30b868aee0cba8232f64e2d03c50eb53dfca8543fbc5ed866dfe05bfccf60d0d6d23f6c21c393801271ba7014438aced3b9bdabe0e40c9cc22b14cc3ad51cecb8385dcfae06d4c13ee319fa32cdcaec25f5c898d44b7a2c4aebcfc2375b50186324f9209ab9fc1067e5204cb1b7f0de66e4d3ecb246b8da278b6d76d2b5cd091be0c955d85e8de8c6b5a1e066b0686fc9afb2bcd5f355d5fd7a2f05497ac33848a18700d964c6ffa9edd4e4f3d78988f30075d0ee1380e13c03b3a0e382ab445bc03c4b36d677a749e76f5c43ddea68ea529b2a27b298962849d1025228074b68613eb2cd67526249da9ef71e911d6b85da9b3ded59ecf171f613cafb5b1920aa1a704fa42c2f1230cf15850b80376b6aff9321358ceb9996734eb1e5ebc59f4dc5bed093e95d06b2a9a71ef644dbbc15a64ac1c621a58e6015aeb2decbf740a5d0a4acd7a53684efaeb00d5a0ab13332c343a591248437f8a81d22f8668d9e0915c94d0122d31e36d554059ab7e324644b83deed6e4f17004e31de9d8625c87d5288d488305c3d1522653df4c4e9874d96315f074c2501b0aec12521f9658a02c809eed853184c0ac4e4419d9acd5fe79e566a5e454f8f7b892d84ef0123355b9e9e40b190136b049a03ed6becde6fd68776f774c113341c8d7c5728db959b91f2b0dae08c7b958b68fb6fda8b2e8c8b16278a4c0e27c2cde5312f5a11fc8b6bb05618682befdbced3b500da60ba6fb8af44a984cbe00ad1e1c506cadb407e90be116b9377ec325a703045a5d88f1194950576e8d43887d763fb95214da236e028b2735a58c4b238db04abda9eac0b5f2dde5806ca9c7bc3a998ee0a2ef4d131f88caa7b23ae95e7050cf6b917444999a8c3ee1081eed2f083d3b8d7695d380948361c3c406fe02fe791f1161c35185eb849e90ec3f88491e8b6afe25b31bae109c0bb6614df297ed6cc4b6fd019eb378ed7842e851611a6dc980b1598894507923b5ac43de4967e17b7226c52f041a9a7c7b1a203dc541242fa4459d809f46f18649292776f4514b79b7f5c39cccff7284554a6b3f27009bc1bd9317041197a8de50625d424f4832b8d49ac3561edd1db75eef866e7447978d56975a5e3d615b2ec94dfdcd5c9004ae6d23d6ed8c33a17d8d0d59e968f4675aa1dde33846f246709cfee82086d97bf256e5fb6fbde14887cca210fa63978a0e7be0474ffa693de79e23de690106007f1272b5251a01473b99765da057007a48c9bfce3d74cd20178bb0b69ea20084442c8e56475217dce3303d2b186dea7387a5a877f6d5fd07bf5312b8f0461dfaee81a6fa42ce370ab3944452bdb10c13ae0757534e1dcead758991b3bedd4c8881fc8260ba478533b195148c4d85c81f3d47daa0ed9c64c4ce744a8e8d97f324a759b1fb06442833728895ace576b61885c30539db4718cc0a0ac332b12298a1a2beff30842814de7465cb13ad50c95e5ecc27e1ecff7ccdf1f374e1afeb71455e2f40d450409087cea332c59ead96b21e1fd03ae54a8c0d2c4dce648329c108b9ad05da2444677636db0339c7b1341198156c6f6b497f6a3a80423ffd0295bd4c4e20d2c6e41728f93118137111c0f942053925af418eb1cf969afdc5a97c12b6411e3cdecf34e473cbc3c5dd315c1e952769b6a71f3e7239bf2d21bb3ba22a941b84b25e823a5eaeab5202451582c6c08240e6a154b3faf5b5ec3d39b8fa5c4dff6ff8fdc1873051fd26506b6bb66b35f23cb10c3eed82e520afc10f8b3d70d7cd2b5fc7d165756039731f83d2cbc5f2c46a627851cc1d5ce5fe74d5fb87a3f3e2e23e6689847487f4dd36accb07fcb558e5025549700ad476be61dbb65cf0faf54af5599a0d498f8e277e7f5e918dac9ca3c0f1216466d31f5cea12b16795d0f3a93b67a0af8ac86757dbe919d7443bcd7603c923237306356360be9de6e43191d53f818e159d66e2b0f7dd33a6920bf7fe54b73b3240d69f8e9b8a9d1da7211d7233f51a26687d15f994cf073b9c034279594174743e08199b640ddc943bee1e824b3f5ff38ae295197ff4b57104f3caa9caeaad9b46b07d0350418417e75acb25145b72390385290e010a6df2a60e3e994344d9380104634f81d6b73d0b9fbc9797ad263fa67810aa4f7fef6d9836137ebc2911385872b54147d11043f30758f45614c18a9f0d6f832677f72f635df98b8ae6b787102e00b677b17a7c7ae75992941e2a9217b2d4bce029a7a2f1560eafde3d6fd957b50e011c1985e6a8057c702f87c38b0bbf297ce628f71ce753d30b7e287330f98e32689480cfedab689081ac7fd69fc581351ec4bdf44c96f3434ec4cf12790c1faf1dda5911f892a6fb3935de00d9d8d3b34c140d55bdb9f77dbc7c6e8eb5d03ebe772a40f4a04e9462c4c3808c4263b1f176b7a6da0706ed0c5776383d7856e9d476870165c082ed53c845190c88bb44b2571ace8dd02916a593a33f10971bee7b4c2b254ce827d2befa7b6046353cd2013d5820e3ea40424e5d89d2a668771cbb05b51740dd3a43ba16d377b57270b2bc1e1c0e54d690fc2be104ebf18b8bdcb3d8390f098b8a5f0bf4743cbea224f473fc641b62d898852f1e8a5abe9c44a256eb4cc45dd0adb85be5d34a75aad0161efaa0746b3b58e3a9ead2d22953396a9c42e1075880fb5ee9804966a16f48e07209ef7518198e7d47a91a7297fc4edef0cddcb645dae02d3feee53d6db5222b08aba1a257edae86a34a42c6075a7b1905a2a2733c9f765c1407c8cad7c892d536ec11cc531da2b41943b83292f99cd67d652a3c14786126e3388a7753ddaeb676460f142a9a0c398e699516ff225f4d32ae1130c0997d5326cf3d202d99e746ec3edc71f14e642b416fdaed248cc4714ee8e3366337b406cb44ee9e72e0f63680b326fd5e4c5a167efd4c6a6eb5391f36dd78a8dc41c5e3a1d0abb231476eb1568c4b00563d68b82c9f46555a87d11071518dd52e0decc68b0424163bda9571fcc0618dc9077f5f8a0bb1548a93308b17c65268f66a820e7671d27fb584c2b9b79d198ef0a4e4cbaa7bdd54b74928009fa6b8f51113c193edded553703677d152f9fd8e37b4242f19666b9229bd00c740bf14601af3621b26ed6778f2f8ff65d0f6d44b06fdfea70d42bfea58f832e8b146d6ebb42cd2cc030c91f87b193466136dc3fd77beba519393a654747571f6b8489703755232d24909837da0129843628f2506ab62950e3f6e92988bf5cdd752420c89f979273d534ff888105a89d368d208ac37a46537990b14990424b50567e6c094a7ad8ddb7aa423c9ac54a5ef0f581fdfdebbbf4eda47080aa6c52a9383068814f1258fda516b35c4e8b3f801bd8946896faae4e9240c2ada195df9750070e881996e6949bf98558c4707e831e28bdf54891cc067a5c69f53f91b7d59551f68f93ac13fc561e0ef9882b5da107d16066f8e3f6c28a2fd3c8ec8ad0635308c2c175c685a7f22470100172fc2e091430ccb4ef3435e1e10e7f2c19a435ff2f6fec4e736f8b67dd5c6811c3cf8e0521ffcb6c1edd07212424746d91eaeb319b0ae1397bc247fa106e563ae9fb8fde866d7434f1a919346df51a11ffe24261c6e882abe58f1e265a24faa789f323d94234aed4a3cc8804d688890831589b4c64d8fa594e52d4c24579f25b3f86ca0cfc90543ee606728869d7ba1d2bc97344dff1540e9139c12aeccd1a142f36a476b4d54838b7d1d736e3de06a0a296f417239dfe7d1703d5969a8dc26e1c801a82ac739492889d014787dac38ec3ec9e520f23c5e5fd1d02b8c1c1423a81531f2914338e1782765d7ca9bb399a5acd941f19f88975d19acc3354f5afb758b1f7cc1182885c0b5b8ac0c6999fbb54e2eca99f5ee296cbc0f990975d7f8b12b211c553e18a764feeced7e39797ab772036e36fed80195f9045ef12009b6990bcb0256ef892874f703f35b38a4143e5cfe6fc6a39b74b3402a5f29b56d88ed814431912957ae38acae0a5c09707cf9db6ff3e12f00b0ea32bf8f0cd9e4d1d60f76898cdc5f2123b8aa26dcf47f0d3d3b1a2b37d5971eb1e333ca30d0b5afb40edeec06d5607f7427edac2949721b9583f50fa144e731fc83e1b97a689195a8b7a022476d11587028401ef4296513dd197fc6c084b8cda18ebe6a7d8b0cac5e4434b081cbdf7535b14d45b16899278209476768def07891d9f1b4ff6971aa0ae0eddbf883efd098342474626a59700d1754a406fb034c444a0ccd06bd08c119cf0bdd5f15515d89d5290180f99437aaa011d0d01580f2eb444ed55b45f6ec184ccaacdc66bd0aa1c61fb5bfb1d1273481b13871dca0aaa0a5e225c300cc40569f4399b71c687224f85239af9a1bc256b5b64ab66150213a1000d4fe07c4c0df904e4ce1656bd9a81cf9b7861b79baeccae719899b4e17d1c713f8d81342b362ac317a26ec3c4575da615dc22d95c583175f8799c73f7d1373890169ded60ce7adade2be8d96e8433a1b4552777c0331f5c0785e5ba9a9943fda6b209c932f72d0f15a10fa7ace756c618124bc6c7b79a1dccaf61b9dcd0ecd5bfeafcc39a4729d030903affe6e85b8a98092bfb5ffe8b6a6727aa90d1cb099a2c3d06f6913317225e3deec642fa4ed3b17ed8f99cbd66cee8bf59615e84cccfbcd76bd529d99d0f2f089ce6276066373352413165995c19dd44e4e7a81ccb737a4c55addafd9f4d3b57fa7b803336596135d319c893df5d26a27ec8e770a584946748263ea8e4d06be2582cce41afa2a554d6aea9f026c05bc31606e736449e9595919838818f45687812032b61d320a9f90e6235ec3dd3f8619ed295d1402d17fcec543aad09865f27e594156572104d00c8c4f5e87d8b7f5cac4afafbdb1caba18ea4063893bbb87942decd478587342c0f7f5a8ae604974fe760112fcbb070da0698d9bd99cb972493336e243365748590c1c51e712d2506442db348f7348006a1018c0b087cdb0c39e30fc83b03ce5d72423218654f5ac8d913b9f626bde3ae467541e3cfeb8301a2d054de046a61aa9800416fca0a2eb815b23201177669c2ccea24325c9b3fde5246ba6f854dbc8439be080ee611ec166f9cbd46816aebc744b09d7751c3c37d11ea76347bddec52429aed242ca4de7c3b8fed9f751e5e4131d3cbbc23c415d39f28fe992c6e85e4fec6fbc77b9f2d02847467f2de030b9ecb40557a89350064e5f01c60432b151f35e68c32c536cc4b01f287c0b49823e6b0296f0311cd6908b928abb3ca36abd59d6b62ac39ce02609c4a3005fcec3f267a3404b2d019f12fb2ce13e038563695fb6733939807a86f25934fee3001c63ab06eb2f2b02f068b86d1ef282f793634f44578c7a4f8effeba40e36d21352e8237f09552a8dae1c0f95d04b7a43af9c50a8a950c2daa50e801c20a7e8133900e8ec3da16f777db856c388ca883976d55d4b9f48fb78db77b113f559ea978e97f9933ef4e14bef64df6b4f5228c34a339402e008373478ae3744dddcd5d246674e73a7edd72addd7c271d77941a685f479e67c91e3a2b7ae8ae5ad50f3b3e2f8263652b8496bebdc31a48fbcb1d7762802e6d23774f4161c064e879626a6967ace3e3b279bde8402f95d71beaf53ab8b1ced036e612b90080e655c3f697f5998fc6ed335688c4b4c91aa0330254a4766256b514d5a040aadfb1072d1406a040bcf0bab75a1e234e310502d70165bf62a19ab381a991a6564a443f1da5e2cd8c49600e285477b2551529ebd96e2ea81a8e204ea2e8806d451d118ac97f3a59092232795e2449de11c275f40f4c8a7b2bc5edf46e72945e13bfc27042f9baa377ceb1622a425d5de4a931757d18c23b6284054f57daf977899f5ceb9bd9900668478dd1fe452353989270174cc822f41d84969580511bfd23f7338fa8a4e74673b9f6b92781eb67f9779f2108112e32071f4c20949ea2b8e7da7edcdfe3c33ba74cff0da345a464d00f567d4355ab8d113dc3d3b80c1486520315bad1e204edd11dba75835c07b9f627f3046e4a9d9812fdfb8f2e2aaaeb6760f4caf5ee0cee41eb86351e61ba0a8cc9ba701175dad82e5f76c9f7bb305137e9c1227a968fed843a0dbc797c9d0abaf88bcd37428472b69e9040ccb955d6a8cb565ecc1658a505a5be1f304a68949c30a21bcc0e237a6f0e7da30ef2a92cf4916167bd56bfbc00509bfba587b1c21c0b2507c5bb3cf1d99d70f5729a3e07eac03904b33b72c8796ba5bac7f5389f1fefbee9b3799fba1f97da5d806e1da3c9d97a5f139cc02f9b2525dd7c91e6f6285263a310cb3dcdac04fdbaf6497d3e081b401039b6cde0051b1ed18737b9099b8e43f17b287c5211e7ea0644df98d37fba4ba9924ddefbfc271bab1553bd75d2080c7844c02ce069e969a13d9d3833905c5f4496435efded530fcfbd0e82f4fbddaa9280adee1ea342ff01ea80d948c9726ad185a79798621020eb8c5e96a728760fa248f8c297f534fdeeb80c85331cd0dcddc399db1592f18516e106ecb4a0441b3946eb26dea52f6ede09b2ba470eed9f2fbd26f5f896d0e8af1a5c68d2159176b6742e1d7d302906a908f47ad1f228a4ef8dbba7b01a095e132d74899349b0f286899c0b9c6f38646edd5c881730310073930566e0fcdec834c2522f008c206a69d0b69efa136da068ae325960ef90c83ff4b4ce380e6a197381d65f29d8bca76c4db0d0bfe99988ea93694ab995def0bf1ebf031c2eb6074e6160a1a68965b61c4430c2c759ac81e2302d8bbba4921ffb1c5db33b4c7e0e9269b3e1da7ac908a3de518a172b36fa9d27afe8129741945c6a763651c79fd04c43dfaaaa8b249d77d36746a72ff8655ef180f3ae73e7ec8d4e79d3f7f2313eaec81b4a42bd3ec1e0b9f8778311e0a4e54cdc0db3abcae0d0048a298d0b5cab2efafd64a6bc66fe482156fe878f68c2be4d026180cf124f792004e40f858cff3eb9aadaa1a32bf05682973a59772baa6c83a08d790eb9a7702e87841f749d4e4b959bc8110c9581f54aba06bc50abf76f48077df9b3cb4585e5a3c41e6ad4e3645243ee4e9534f1722dc2b70070660e93455aa1018f622bb684e558a99fe37ed1c97dce89bca962b0ea854f2b1a42d9685ae5a65a492451f9dd1a0cacea2aa199c57d7bd3a39924efd4f887a60e725f2919b0446d301906d56b88d75c986db55f42a750efe82a8e785d6aa69723ea9b688897d6412b3d2eed7a1aa905faefe7ed4deed6036cc3ae1236e52450ab40eb7fe8e7a0ce858e6f4e7e28ab21c2a2364b94d4fd3cd1c3df6fb598a899bbae4ba8925a4d81e48aee1b1d9a4f85a9a83e8004b84e87530326ee403c99154cb5d56a3976c29170640250a68cff1f5f78378cbd4028999d452db8717678a174971b6c6496040302c8d8fef7255afa331f2033a35f85c15e73697d1a791fb9789d4c0e4539831ef6801bfe12f4290a93c15b0390106b978a804b9bb373c203b1f15a57f4d949ea0a3dd75b7e6c435b80bbc4e244c2c6a0e2e62bd60f58684446df1a6ba0810bc43367df1893c83375da256486d3508cf84b5decc8e4a81872bd235c19ce709b38d9f9591d925197ec3fc4338f621aad56fc3ad93b3c1173faedce44bd30d9a9a37367049088aaec9a3b227653f0777e35207fa81848ae17ff77f597fddb26be9a65e1a75e96ea23e9a9deb6bdf385d6a6246776a66ccb34ff4438779ad281fdc95e3bf02ee6577c34d8d0cef2e513c91f53fb89f43bb7d42120a61cb796feac56d066b2d86e94ff18a99ad3d07e486a9174a2f496193cf885dc455957ac0680940f089d509f7a09c66e4a6ce65aac2a970948c668a2b5b1c52cdb58e10e35b8d1d04edd0e5c512a69612f3f8b483be525ad04effe130307c67a8e965d65e1cafcf89c3de3fa6b5129a6cc4e578257a659175412d2b40d7a39a5d0d61dd08372bc46027921dc6b61c519695ce638257708e723d4b3cdd0e5813f62a830c5cc75eabf7fb7b084918ae011f3413e99e02cbe27fa6f116aee4dbd66e3ebcf33f5a074e25be2e5edc0c49bfd3870ee7d3f52eab4095cc00d144f42ab77998338fad5c1c6c322bdc2c17790befe8cbeb0283b355664821de6f4594da5b941b1fe9da0df16e4d42ec9da4b2e5fcdb70c51e9fe0655a07c66dd5e29068dc773d61de04d3e2e39cb11777bd8d26b097e3396b72600d9733ca44e75c2954133de946e1b168d77ff099f90aa4a6763d99f490af3ec0abeecaf2f8785b26ec98349a2f772eeebbb7f04dc60cf2bb895cd9f272319b3983444c927731bdab9c592b430ad4495fc504b97d0093819715b2866fa3924fd7a324766004f2091b37d9516d4ba93911c7b17243ef12372a8ed61e1716aab3892c06aefa3e4aa603d3ca9d4e5d18819e5ba249664c7aeb8cc9fa951480aae16f06a3b5ae914462fca0262955e11bcf887d0b94f112bcd30d436453d674161ba27e262c5ef20f6ba5c4c9096a111d2a6aecd7710501e19e3c805419162b640972bb0a05cbee573aa18ab49fb94ade3af0fafee4ef24388e1e03898aa8f7928722e61b81b539c8a32cf4c8c7621e346eae2fddd1e6bc8d9d193be25074bf0e66d2e29fb20ec6ddd476c52ae7386c16627343934ad1583c74dbd0ceb14ce4ff90374c3539e87d80d45406165f14d0cb73e52249af9e301800932963524823b2c6de121fb155d77cb6397b89aa29754bdd34a89c39dc0ab1fd96853eea784dd910e588b9d2c9af182a382e353e0ec293c4133a2a32e201cdfdd2093fc2641427dfcc9719d9b9777242053521d1877ba20d4b6e00a98547f1de7590705983ecf8e85786812fa7f3a3b01cb880f3472156235f189d5ac092ca283b10274807b370e4ec341dcc8ef636032a4178e2738ed4b93559cd8e1cc6dd5a833811102af4cf1084398ce027e1cb815601a13cb971c8bf9e67581e5a75279fd57db28aa30364239581a980609b1c6822e881a7207422319288135f448871262d77a94dc96e70bc89512866cbe6e343aa631e53a52a784659f93fe65779ec02bc1541e6dfa977fbf02ecfbf56fde978f48333cd84038506bbf89e50074770c03afbdef872da47334186c17fdd3fd19419eb4896cf8198899a30e8fad78e4b44a9b12f7028a1d2f5024feb97872fe868222f7f27551e136fb18565134e4d09fc34a03bcd04fe8a7d6e9a411921b7db18cf8bab8ffaa1923d7b2153430632284d6bf12dd7aaf143fb1b03d45c78b4dda2228ab1657ca31e04bc770ba12406c93563cfced3a7fb59675b2df2432bccb1223dbd758ddc3b397f2291b86c6059f3ec7ab74b8ab6f3aa8ad41ed5b7bc2218f510b82d0f218f0cf1c8fce1b6ab9ca3e318d283d6d1220fa315e4147732dfb1cf9b87874a2befd654bd491d5961470a003275cfa93875503665352c1aa76b96a5446cc9fba2c71aca81f3e353a49562934737a2821c1c474f355af731faa61e9a166164f0608e094fea29973436424061981c8bf866d910339a96ad989a00f0fa9096aeeb594e364b05c19ffed2d7e0b32b851d8b2fc41b5255cbe98ff1ddd00d5c6f737a40193ced339fb6130839811cf41384a535cbb486dd6abdf0087daee8a7ce4ff6feecec3ebcc5d7baf5c0777bff253f4f3636d7b4961ae801044923ec822a5e7b17cf6e3b1dff3081a76ca81dd3723be2b4d606f2ab275f37d6213b75a2fe3b1259f082b73ab4b89b4bdb44da30f25d4ef0211b7bcd50fd514cd84e03ce2127dbd0ec60f5d0108de350b87527e1da0b3f10c0d641e3f9aec4ed273572ec09fbd39f3cd504bcd73863a6f66196fc781ddcf137b30daa7b82e8005ecee420f1daaced6db5ed1de0d9b4147e4138abef28a048f8a83da9587ad8c70c7f95a0a2187179b8cce551c6f9e2adeada794a70491caf40101a52a94b1b619c0e1d1a4e6b9c73b61a73b36b002878183fce56e2f45066bf4d54d4d2178899d5eb0834cc62b76867bedc09367f9699a84281dca1a1e7bdd453ec5bc895a39cd0925542f7ec180dc2682791ffb32ba741e54cce0b01c8731117a4e2751ee31b202692d539af5cf351b1adc257a9a3011599dd38991ff2c6916abf559fd5abcdae844b32cd74adad4a5a98fe52f112ba74b847e810f94e3677ecb9ecdd688924ed8e5d5845ed5e8f6a6e331b065a81dbe29996b9416737d9599fcd6a1015c89a80ec93aa6aeb55cf65a043604ee5a1319c8d81d6c7e63c085ce1790527c81d8324377147c5dd2a34fc7834d1014945d68812acaa6ddccffb45d3d90f0f285f50db8d42be26135aa7ec2ecfc91168958ea9ea68c39116af80ad4c4ed32863044d05016043a91dffd550aba47131049989f6eea275e788e66d87e2e8800c2de3784232ea2902981eaef3cef6f59395edb9c39b591cfb0693d64cca6540707ad823653d510cee1789fa4bca9bfa6567389afd97b6bcfbb3494c222a74cddf84a92bd9119dbc38db6334f13b3aa8b66f21d751aa29d435d51e7f54145bec65fa206aef3c5b273390672a9cfa06176af4a2c5c00d3b9531706761973193367f64d85f9c6d51beb4b0bcb6819fafc2eb5b4b2d7b37e46da7182863de18358558d21a0dd2d9aeb7f54814766f39d19a1a0e1e747b9d72d894e8c07e5c05964797f0fff211c75ea558a270ead0a7c8438b6d6ea5ccc0c6170d8ee15a93c8aa78d4bf8ce1d4ccba52f69f37b3735af53886e0cca3608ea7b2602705096dbf4b0f9a8de19c1da9a0f02c40235a527c505f7ca93fb1f3196a19f581eeb6c5651ba455a066d7d40fec91aa5f3fd699e9b73819027c98c44fc2f53b9338f0f4e42aeb0bcae05eb9a464a9acd986d7a8f6e3a4c57a0baa3a16673956e99728a6e967aab2359d8fcc934a573e29e06491202149ea3f8e39e9d6d572e41e65021bff95d9459afb0fdb3058570f73ea866aa11ae2deef9b66fa4b09ac42c2a7f5130da0712bb0a263471e49d575872694e653e65fcfc7f2d5d07bbb2964cdd56d3bcf47b8cbf1ad543bf2d0fb050803e798503fc41673905f58cab55f48531b96809135435fff09364715816d98ffafa23982c9987751133ebe0386636e24060b7d9ace222c5d8affffbe58eb43203efc723754b2509ed19964161bdcdc29d4e7c3a6ced0eb4baf5e90ff7f1ba887914bf2bd0e8ab72babc0cb3b40468bbbfa5ff509fca0074d3ea78f551a77d04e2a4a89901f87527883026991ba8cb9bf4a9acdb715d475c85ed0eecff1e30f0e2c0425e3314b3bca8676de8d5c0ff027a8e72e9b6f6ce39ae3e2eea6e98d53d27e9ebd7caef4898e772576f5511918e267662b1ac11a922260711730c1e37522d67ee8bf4436b2838000d07cce699756e2a9b5fb8ee54b1f6068f95e71b897890d93dc7c070cd2deeebec801a85cd1779398072d3bcc579974af3cdadfde688b14a86c8be19490da7193139beda71345289607fc3a5bb9812a67f55506063971d219fcd0516e2a1308cde91d3df059c3ef7bd9d343f00d1990672f18c9bc14fd1c1b81548d14eb8d727ac8accfa70ebdb3f8f7cd29b7bb2a600d86f29c0092edb346a46c45d8a1f6cd5f5ee2d5bb949db2a41d5d42f42c2a44f92365e3c445858b7df3a688c80714e6b6d871c95552d14e595aad9ae8c003322caadacad11bf983ca8dbac1558193fa78d2626be350553ce0b791315fa227f31364324a164e37ca499059cffe5da54b1ac8109f7bff491bc10cc2ec2ad0e207d5a37feebc66c601fa4ae62f52ea7b3ab04dc0bf99d979b792d42cf64058196953165b8dabd3431ecbf93e3909095a80d0f914c8ed48087a4db3c1c28ec628e49feaf28f0c6b9fc331013311cb3a4a6fba9556c3fbc8527b30ba6b04baf12feec88864e23585a61da06dea2932dcdca579ecfcbd3efae58a39ea03e5f8b61cb267d4756350a70bfecbecb8add2b02f9c24712555912ffbb361b0a16e000bf77856d6b4add16cb0b0dcb2b32c8fa862e2fd8ee0af74f1f41432ed081eebe7b60ac6fc09e43e55eca9fde43abce717582617a8529b0634e146d58215e480e01fc9e2d047613fa0f380519ba58b3f1cf557bf51a41c0e9ae63e2622e5df74c0f9d37ae4f851cc15f7bafec57012dfdf9d06fe03d42fa1fc8d97449392fa259665385c2b4ded58146855ab44d47c6b996a07bb070f656a653c32d99ae8306e6410fa745698c92cc8fa9b10bf39483fd08fc6670fa3bf68601ecfd6b5d4193a6e163d50978f90923577dbe72d35236cbbef996c0ef47db5a5aae1065926b8f3aab26abc39677c310419effab9502ebe1b0960ec5c7dd219c44c7235a891a016dea92da8add4bdfd1a7c5e250e168da7f71ac7ac3faadf0f59ffa02610d23cdf27ec11437e52b6668b844c91d214be1c02f2119d7cabac102fd9c1091082835664cb42b61a95b16a1f722f215a77beb1c968fe98cc4a13ca933ae55545a13921c3e6975898c011df2ff923731bf6aab8864d7e8364afd80d58deea436dbab1c2bda14ced5619970c0e61c01a3529fddc5f87701a2017d8f18960b8cefddf3039cd30de36e1c1213303707868c0a0e26f9c3b06b847912840cb4fbced3f0a5147b08421d49fee0c7fdb290ca3addeca27df71717d84a97ea551b4b6f347d1545c957d4a9ef65167ee304c576bfb1cbf05ceb03ba7b554c0e0d4deffd4379fecd47f8c95a4e17edfe96cead89b106062c00a4b40e3b1eb40bf6e5da6f2b249b59397dab77cc5e8acf92955f31f5b4e5482560bb40be7ec9ead8c694ed04dba3d151915e5b13022a0e771b740efc85672356af6354f0012b47e6dc5a04f6b77dfc8c444a6549d62f92785a5b88391c4da0910cfe5ad759b00827aec38f980c77f74034b3e6cfb50a704828f87909e93075d17ee85b5b3b683c584663eec45e92f1a65bb2191d23dbd697fc55d9672222d854022134935e1e42318369e77df30a0b75eddb6ba85da44ff6258345de48eebca24bfe692e061f2e6cd01480c925b1d52ea94acb0e148cbab9e8f26305d54aa37409f64ee29d0493479bcd8a4c855680e2cbb09d8cfc5947edaa18fb8dbf1d4bc2d212180e66592fc207f073ef35ba4028f127fc805542662afed2b3146896077d8eda59e054b76b66739bbd1a0b72450e3f2ebbcd30490f40113eee69118f917b7fbaccbc86dcd03c85fc79b658dfe45d4d02f0fda170d2e1986be71c835eaf4a8eb980d1a4e29fb6ff032924de856d518a475a9edcbed6c6366170122b46d0843092be84e6efee368c5de2cbbdc7703c96d6e03e7e3407e5c26198d29261c4d1106e725394f5fec2fff3044682ad2e40eef954c16cd908e0bdd5e87b9441141b354bebe54d962ed05b2703a51c9dd5fae30195048648634c7a8d78639aeb10dba047debedc56c85e756d7e7e7abd1e38604b371c2d3a3dc8fad653e029ca2e3f5591575878d696423f756a7f7778602490a1227833c8e4ad3c3fc5c449c1252afc607a30cbc0a4ad9a234e50e0fbf256429983b6ea3b2777fb4805ac1ef9947098a23ebc5676d5a39dcbd90b0493d87116ddde41b0cbeaaf9698454bc43cd5621112afd7c2850d62eadafe237ff9d90da2703f75c954f2916bb7410f9ce99956fdad01f1856762cc3dfc90834a938e3e8d2517883ac2129ed841d219b9cc4bf27132237801799a1d18ff7a7a71037f747498f01baa8d48c9235978e14bfc6eef014352ad050c0f3459f14a1011bf4a65c60478567c1950acfac812dde40c4b044a2735bef9d05e8edea541a92e0b5a66a9f9e4e3dd217e6b1a158860fcca554ab43e659c08cade44d74c1145d8e1f249b4f014058257e0fa0ce7aa9660076444dc99c3f7beecfa9fcde860be191a8524d41bed32a22e6f95349b97f8a3146913efa7bbf73e4cb066d04f22e22195c6f92c1512431bf2940b66e31ef83ed20c585d94f1c0dd1010e1c2203f6a1a3b01a2257fa9854a9c608fcff8e3ae277670c424d97734aa56434a3df60e2be0ca2a69935101afdac5e79a4fa92e40168cce67992a2f3d5dc7e42b11d88bf1398e7a71501c923880f5c41ef3670eef922260232de533005ea2693a618741e4ace9086f1014260a44c975fb8f4c77361268b353bccba26ea8bbc4a2bf7b220c66ec7724a97b469c7e4f6f3cac46efd89e8fcceca0740ac291719930cd5f0bb602cff9102b96546a5742586e753706577673e60040c92913c47df7261d8d876641625f547508400637bc1d86beec7ef383c6e48fd5142e7064bb143792ef07ffc1896f3c18d7165773ffd4034e662aa683cc80b74025967c3756b46ee819e0ea83a833bb42f89849da021db1b88555ca0363ef7770417abdf349aab7f3cff1df3b5cd401990328a76d6398b28dfe45bca169540daf5ce215f590dfa57a0405508db645fda58dbc3d47045ef1ad4f03eaf534e32499cbc00d48a274979f866eeae550d55bd2201edc53c5ea975d0563820ff50aa82836b2a06ac365ba6874bb92788992d3d6206ea909e2f11cb19fa4cbbb7f2997ff5c372eedbefb39ff2374734ff9a71826228e97ae6d523725ba01e3d06d9f25c6015ae5d0e02d06c89d1d0bb99f6d0d5e600dd3c24c8af7e9cf591b77337ce8ec3ab61f742bbb7f38947e2d69aee907af793a81dc168767f19662ed81eb6005c7ba93d8ee41fca98b63f94c5ee99b25c604e17c47d7edf6bfc172e5aca5fbfd7f895ea3a852d6b68e8a1224c1d3813c8eb70a80b159af9d8b79ae56715fac0ca52043058290aed9c787642ceb9804352d29e8dfeea7c6c747c892f9bfa97dc023797180e0683387fd8274f2ea8c4728a1c49535f211a825554f16c6a634ec9514cf038dc5cbf7a03dd6366ed0916c626f51eb31b8730df9d1c2627e6831243a4ca636aef387365901b835050d581c929c9723755ade9cf37afd246274ab3c03dc96ee496db2b8c724e2e82600bc5249a8b59af8b5c838ff229b4d11160972d0778754ec1092d3809121193a9181a6490f0e3eab81eaebec69acee01e061a5566d0618724aa827f1f6b5716762328ccdaba2f059c91415c9540567c624aa050f60fc80b1ee48b70311da1f75b09031c4ce1509f2b96b10631b3f00bc2b4c80c8f94283ed812259fb8b90dd3527bea480356daa6dced6d5d9d38091f9870bfaa4a1232bd79b9fd5741b50491491668aaa16ecf31c2ea33d816f29295e0e92d435515f56b8563541f54f5a74ec2a59855bc57a85c885e20bc65534f30e09b1cbce7a5a692c457e9575451589983bc8ece521ce3bf72502277bdca9e8880bec7835a68851022ed2b4094f2c46163d772726650867dfc07994f4e7045f4791b6d2cc73a61457284051cab5cb61ef318e668501ad29dc1d1e9a8cecb66541a64b1941724c335f3182e271eb8c20c208abe5eb97b959fc5fe39d917a7545cbf0e3d920a05803113e8395a655c365e6b75a5c7ceed5fee7e828164eabe0fd2633cbb1c1ddc22515555cff5947227fbd5828c4cf6d59fa951c772803da5560bb0766f326280ba55e61e4b3aaf8346550b6df290a38732a7a81510c9249f3f00d8db05d459099e9110ccafa29426bf82e96640d6e3d58c890b66d2184fb18e521a66e108e8d5084a5ddf8921f00934fdef5cea9f6306275fca1d9e6f040f17c1cf42087aae82d034b61e6d42e050a27d8b699db292baa3959570642eb8e088aa14bef406405908e403f405a5d3890076b4cc85df018188c72cb04f185384112278b55f49d45b4995e922cdc2b624395a1ba49791ba49ec549ef16d84776c7add0a3db95538d42b7700408f4c9a2c077e0a01a8a02705b10d48b4bce2821e440fdde65210ee026be02f710d99328c18dbd53f5c1f01f9a3c79eb5b4221600e5cb9a4e91467dda476666f1d55884a846ea74988bf67451df53ee09f2acf3b30015d9c0883ac7a7081c76df3393631e718d21b9863569150d8ab2bb4f76597cbbe5efe1eb415f96634302bb32d81ecff69719633001c20fb9f29a2d90bf30c86bd9c9716a596219478d9c1fa7ea777f8e92162c441dc32be3121eb0124a65d1a4378b507bee0c03bb08df80a5fd70ef1f24fb4af051afe7cba7fe492f268dca6735bf9b15f52c56d9a86550b3d1ab57e75c19bb37130a3f563485dda1582a9b556cc68cf5d79a4496f2ac5d0789ebfd655ba94982891686980b0467fd4b36bd52093899a75ca99ce88b7ec4a4301e35bd09fbeff63c7cb6b246ba81d9dd9d23cde66d7e760bd10b24639333d6ab989dd0011a3342b2443de7854f3e58574469e412af9114a61712e186cd0fa287b366e402320f8ad22f368e6625c4d80e06366d55563ceb11fb42c677bcb3329c827aa8ffd72de0546a9d228b85c7c1f697113aa751cddf912e0360d4be9a361d0f39dbdac03a4cb7715fafc0b551590c8f2ca34e8d1b813a0a09134d5fb8302b6a2c3c395a204cac0896d549da03f54c3a3ecbccaee04fd36957ef42bf5520acbfdab87cb06b48ce85973558e68097c935c45ff08253b0c083cea024596ed24926b0b9d93172c7361250d51bf1a02563c3312f25c20ca26fcb9967e732c4b9afc286213a6e7346c05fc6126b0b22537f20998eb49af932e66d7fe9241fda3a6ef4d6dd9231baffc20a1b5f525f3554608334a89a3b5cc005ccd6b1fbc074f97d0f9d900807f5ddb7c584b8a8a4d3e9a41b3319f941626ebb8fbf86433b2dd190872150a74068cd350f00ab5fee7fdbb418e90db446b487448ef6b6b32864e00cf501b605c58da1dcf94ef6d3edd4eb2f8c680ff45ef0956c83905e535713569ace6418edeef8ed8289b1253f18dc434768d8c5c626e20dc7182a07b0f9c8e8a45fc900736000d2ff6db527eae533ed766aa41a675cd5a18b57148107f382df2ef7174e89862d9386de4dae8b20534b714733ca0db3701e316bbbf910d78043511b3af0e75206dc25a3f3e35b880abb3f5aac7eeefabfc360d372a851b06024402b89a576853590f191b4a1a571b386c6bfd2a6d11f51ca9b8e84b7d419105feae2890977ea9ec409ac62801326b3cb670afdf2e8d4ffc7887b320231a65ef3bca0688e3d4f600ce36a05f54159c76014db8344dbd78998d1bed28e98fde29018fcf3884bdaee1d582b3ffbcd3ae250400ceaac23bbb141348c4fe2e01fe8e3f4ccb370f906b83b3d46c64db148a2e4402d7bd18d00d520d2f358180538ba06f9427d07da7c2a9031981407bde94d29151683f93bdaff98a1e890d561d81a2d34415fa80851d0ec711449b93fa42b9a54e419cd0424a3664178bed252ce3fa11025667db876d3b688fbf17f27bf013678918bee897d01dc7f5633bce1eb20245035b27abf1c5bb123bf2e8b6d93b0940d978b96379539bed69ea11202304ae1b3a12b3261d645b1d908a1c24dca4ff49fb41a71f42d73630b1664a43b0b39a1c067b7775c703929abfa3dd15f236f178e2c7760a88464f1b245770c24f22ecca17acf1ed92dfe534662f7ce1a70a74c4cd58421d5c2565081d1cff28500a210c64a37d2e7d2ad13bde4aa68ea21e77650daebfcba06da2bdece161a7b05759e5be3f7bdd33dc134521b41a42840ff63e35c9f0338d1a7785cdf6a18cb0339a4f7ebeed5bb0d48174b26ccd2c8dca953385b6867c79d10c94006bad27c9d6ee3508b56a584493c593f29421629ab41fbc32182350b21dc07c640ccf9f3ae70e8fb0326b45ff3c9bc108fc05b8c9cd53268f69c0cfe6ba314d025161af022da9a8a621b1f1e96749ea88ca7cc4a477bf274729f0dcc103ad9de8da57380479cfb761c8918555792e8d9150ae2a2800c49588006d07cbb8d6449894eac05fb82317a2691508b7b19dd2b4e68bd0c641dbff2fb8e8d879d488a9da32f15519d55b16ca285f71053b498f56e4e282920d2050fead8d29ba96668aa58cb97cd08edbe1f05aaea4bde2f38fd2a24486db846da3da559ae5f05f5a385f062ddad6214f9b07e06c4b870baff305c15ebf9ecead1a3a9a5d0ea1bf39153ebabf8aed9078534a9e7eeefb4359e8a75833edd9bff52ed0c183ab1b2f1ae4e239486348cfa1f4ffc7bd0b607a57d1a22b746cbcfc7fab1ea03fb5dc1e41c55acf6571c5e11da965edc5c42b616ebce3a31b1317575547674ca8e8c73c3dbf13cce2fa920e37b7f3f43c1f71d506898d31ed736a3a5c9f6c857b687a8baea000eb49cb2ee89503778e44064fa85dab9485203e08d6b5e9d27eb6308a2ae3c3919b026889347de01d63b1e78e41ed78687cc754fb9e94d8b64b459ffdf376a6822f2439ca79ca6e3564e3b6b1303a4a13b43d9b81e2e9d257453773fef62d0c075e0c185032e9b2ca63edffa6bb126b6b7cb25f3b902f620bfb479b7ee6a905fcbd48947bd2ffa9a140b252296f50a3363602e93066a07692ec9a949d747522afd6886aa7e149279930767fef1eb047233577f7d33585ca0abb522d953bc2c06ade61d83875aec94ded2745312850e265a897c08f7c6980a660a1e9a967399dd143186f1e90423f097d7be821b05769f134cdaebe68a691aea1d354b8a80bd61bc927c91e002130c760db74fd6a651f1d21c3c4379d0cca6333671a964cb1a5d1645be8810af6f7db2ad69a083434e569e274fd986f3c4dd2b02c55b0ce9c972999e386034bdf20293a9d7a8c1c6c64556cf276e516d84e20f1268b5f6ab96fb078b9cf10fcd5b928aa687ad7ccc23b9b198175561b104dd0615a15e360cb588aa885c91920866cf3078913867d9b6aa61c885f945b53f3ed9e591ad158ad004da6ede85fe6b7782bb3bee875cbf3b458150956d538d52bc89027d3fa2ea79cf87b3008ae2948628067d15141167cea1032b871aed72cf3917b582ae80b0df08aa5a90170c16125d26263d39cd856ebacc003a97683eec64f2bfa4f870c7ff6c07c63af22492bed256677c9b89590a519a115f134833be7c3620434e110994252bca9ebf72579a1c74929b1f9e504b1861353b614cfc518bdbde4d084cd74254406284012e06849b4736362abd447c3d41a3ff2f64bd82c8b92307753316f692731bec2d6bafbd2bd830cf0f7a55def65442bd17ed0dfc02246f102338b33c744abd7c6c733ca04e83be0b06864b88f36469c7f43ad1f95a63e753e55917297c5429691a5b64935499d8d7667c879cc8b248e636d1f3d697c4e9f82f52c77e71c1f55d46b57b5b0353e026ca9910905a218dd3932dc8f47bbaeec6f68465002f51a13fd5062c4efaa8e29292a4d44182d8735b75b96c9a019123b295245e4fba30270c4b5fb9e279e9450f45a728f9ab70841ad803ce41e93ca563e4c8f75b0acf6c95d7d9c8260a2723ef39d1e686b930a90ed882d44cbfc58008dcbea172a51925669d5b66fa72984ec24ad4a626efed787ea3cbee555378cad2720e4cb535faac879feb008425c622f75b9396babb91e2fd4640f1314ba1d6885b66a1c739456daf7740aa7a24333c9a47f94e69e7c6dca5f7bdf18c4277277d71d3f3f2a081094bf0890611337b48943283103a0192cc2046f4050f9fa79ffe8ac16361e5bd38d93330dc20a147b25fe57374295d055a7bd3b3f199407ed143ab6d9cef1eccd908db6fdd54ae410a0ddd5fc97b6191da0059e2392c8bc6eed892f7aa049636edf24621185e3465350470837208b607e370824bdfe13449d46193c1cd164c622fdef11068ff1df89a3efcb74abbad42779273ae7d4ae5e747b91c03813e9c56d0c15977023ed46461102e58b15282b60ef840fec5e86c8189c2abafbbbc22c7bd68e897c42b18c6226376615c84914618d5024afab383e6c6c15ccbbec8c540bd27c9f8ff6b1c9a42a01887ea4a8b99030c6d632bf2e625a50d8fcc4993f827bdb9e702db781f4cb4bccf75fd1599cbdf2f3cbe3f5be9aa6d2f2d064d8d6b0442e11e9310ca33f8b0f66199c7d7d16ec79fb48eba0753f318d5992368868491ceb92dd522fc510df074c95ac5bb23f4cdb234b28833c181bdd49f907ddcfcf55bc4385caedb22436788f87a7143ee9eca52e0f459b556478bbc07d8835c1300339aa626e418a9c05e0ecd5cdaba2425ce783302fd5e12bf5b884c86e8f5abb0ca13ac6aedd4597c820b803e8806b48ec5e15656eda3304080a0dc01c2260c983c047203b8ee7d5e4a9310a9c368cebf7759ca4d51736a069a24f9c67e0193ccdbea9cabd334e18dd32c0ea7b4cc926a05358a800749b52b36356e6bf3f2b4275c21197621f0255545df846fd9a66b827449c70f3670f9bd5dcb8a0569f6a5c88a3ab9e141ad2d5513ebfd3c49059aaf32dec9e2e1745294dd676e5a419c7a63b9192dc349ee7f2a09900f151e6650a723801cbbfac394e54fe48e48c879fd9f38a6dfefb56652ac38e1980888b96e3db09fe628e47300210eb8854f9a316f539f1c029ac9b6b5abf89c6ca7bfe8c86544435b7c9cef5cd28c240184e4130222867df94067dcef42337bbbc7cda50baf03edfcf2a2a33d61733b0a2ed5997c16e7a6d6d3802bd9d56e23b7b93ec5bdb683c3132baa0f7752bc45b6a30a057446a75069175539cc80f8b341e7b6c0fe06dd92913cec3246472db518515d03bccffd5b313fad3f84dc3c7f6020942eaf94a6d4f87430e16eaefbf0c8292a2a23b72b8d783e67bf8b490edd33f712177ae5887b3ba39f163cb52f2f11af9ee3ff0d7360e447387b773cfe7eddab1106a74ababc37c83694a68c919d0df743ed73136e8a86b666319ea8cbb7822605ad95c95d85fc851b0321a5c7681216a9ae1ee2af886449ba0433d77734369ae141c9765f9adc6ba26829eee9faf7297793e447cebeae98a27e188e1a404531843114657d0cc8ba1c4481dbbc7d410a4df7ca40f3c9a6f65b45d3de4746c6468d087cb5520f6d042d3ad2a55ef07394db26bfc014fb039b096573ad278efd08a9410e82462cd7f8809babf7421c0bcb925fb25a68431115a6229615271141e3a40494975df4e221a41f63cfd93c074d273b0c49a920158bf2ae0087a208cae91bd035baf3ab3b956c9057db7b662220463e22a04cfa330aea5e30b5b31d9157e11088b99ac006cdc801e6191759582ee13968370c8d5340e0d485ea231ffe1cf51b1b4b880a072ca03a09b753927a02abd9e378ac8c45febc624aa689ec442f8244f5ee4cd291a4bb3ec24c63603ed9e2f41effa499654c18e42817498461f9ea6b2a8f4bad67f9f5f3f976198958c23b33862bdd8166afcb46a98edc00278e2ece8c02e065ceb826cd2abbb04a350a058f007cfb97fcd2ca79dada5dc9075df50a5f79fd4a2be682e322b7c4cefa96a32743882ce400f8d4a6861a72cbc53e629fc42f80554be59aa9c1015eb7737dbbc6c039b2accf6d8feac9eca5e2e15a0bffc39ca21d8ad2daeea00273d023700570bb0aacfe30f0b034a9a7a497f3047b00ff4a6c30ffd10018f0a9851e0b5c7a3b91103376f0e175b934a8bd8987a15c21d7095111f841e2c69dc2b9477d3c5e06b47b83759f5ef265f010aee3aa9fe88552dd6e3703ecfb1dcbdb08233e1a0b26eb625372f3ac4e8a639ed553a8acde85715103c91ccfeda41e6c195cc542a45963c70cc2d66159beee0f358ddcd4e63272fa1ad923fa3e9e3e69ed64903cfca4f6eb1aa127a6de08f6e78d0974b00e08f6b3fbf47db6c75a2eb779b0bb94bc9facfc6f5041820fa7625648dba3ddc4b23f6b10a3b2490495d1562ab2c662fc8598ce0dcc2d7e90a64375e27a7306332894597b25b70e1c951b83c1d6d0a168e2692afdfaeb765cb24fcb2dfb68562b6bb0580994892cc1f29a3f2624e524ccadae000140b8689315d7a2554a5356d10b9a0c38fe1a85bb54e1e72eb6d782b186bdc639a890dde1315ff74fe470b537f950102bb78664501c84e2fe536ca0f8cffdaeec0510150c281dcdfba9818674d26dbabc6030bafd37bf3651995d188081e6d42960879caaad185d48db0894f8a5f7e78a6ba88080772464117633a1b4c34b2f91d8658e7a2c9579b23737584a78cdd90ae64cebe63aff50f70ce5412196b5e3c6eeaa023b2385465ac8a895a9ed997e55162ab5f0d64613547408fb6d3a3d86583924a7d8b9d845705c7c2624c2131ed37ec2e0ad03357a4662f931c4d4295e6dfa994d6c14754cc4f9a457725f6b3bf21e18298fb37f4bbc8a3437a274f14bba76e4cd71db4fd4a175f3689190dfc583ea4e87be4585a95835f4f7301800d545755e4c7d2d794a6b7025c05a42b799338632b0c4b9335049588305a0402d3e8af66a88f4c843fbb3d4d008dcd1b56787f39ea1dff2f8df1590df827356f1c9f432941df53aca9f610ab5da045d508bcbdf57374ed17e943c715bf3b90eed0e711bdff1486aabef06c3bf0a0986148b2bab2bfcb8c277bd46a733ddceed7207f608a87d7ce177b3adcfacf460277f3e45ebf547c0c691dadc8570aac4e0e49babef88c68d48a36ff4073ca1fe20cb7eac03ba1392450fc9c935c52859a0bd59ef26416e4aea569dd2dcc4ef98405682663e2092572973f662e397b3c5eaf000e55176e8ab57de6627b45d0788f85d5376244ba7aad7a84c2bd8acbbeeb03f3c8df134a2cdb43fb04e9142e9024c5b2a02fa69bec74566460cee146e2091a5edcf97a6985280f8d8c02230e71adf3d2527f7ed022523470f1d661f43f36455fef8e00f54a0edcc03ad400f1bc62f2f85f38a94525e074af33a683b6217ae42ab9198602d01b48117199bedd355105fa5805b1cc25bca23b30b00a09ef93b03f584b2fa4a3f1204d4f45553b06105529236aded7c85d766320f99a512affbe37a7f58e1134f0b8a4d5fa8ca716e56f7ebc4385d32e1d1e04f4b6508af5a8d44d6647536f0aee15cc4bbc89754dcd8423e36ba48fcef9a97b719517a38514afdd1fd7ca32cd3991f2aa3ae5b7519269c927fe034ea37ebdf07f9811c11f2b04eeae43d9834fda5954903eaab6f73fc0ae6f2f110c7150feae1dddcb431d35ebd6f3fb40edb47d27fbe8da21e902fc7a1a92d692c729a2d4ee988b16234ee725b6825b1a0eaff020f71d8b7a0ae2ced7fa9c52d4ae99d1d3f0881f6f000d00c5ee18b4bf0d2764a60b1560d40ef2a9cab3dd61ca2c386d1a2dad1f0d039109bca02cff193c2f3e5fd6d1f9daec1637d2f1c562e75d6b38640053b804741ddc669950b3e116d49c987e742e0879dfb39f0b951242f1ad998af97062d15af6f0bf3f8a37aca20509aded1c50dbd851d8779cef222c9942d6e75bead2ddeee53473ab2bd6eb8d836ac674fba931361ced9afaf61fa70c2a9c3e482ae58380504d611ba3d3dfeea437f18b453006e2d4b1f0542ea685c700ff78d9b280410e474afae18756e03392be2fde2fff0c3b324a0e98bc8724c57e5bf91d81df72b0b1d082051f388604050dad3c4038b62de399694b032454ea73773bd662d1422b6db262056a75ced6493056cb71d767556cfe6e98c3b4eda1db260ff6aedac7bca5c3637e800f0d4b271719975397d341a1d4ebb28e887c97f93cb0b2090f50d557b70f00cea8d08507695fb8b99987c99aebfaa7fe41f5fd497a432d8972df27208d96802f9d0f5a5fc98efe944e4c42a8d289a4aff65d74c73b1513bb3b3c508962d56aa56b6ecff503cd7cf654f4904ab5f4119b0aed1b63f54d5628fc8aa765ab85888150c0658958f3926a3eba6157f64231bc77afd7e1a4973f75de8a269fbf0f975997cc05fa62e1c9d09d7e87b2e057f35a02ab5b9c2c3c4ec4f7d521494b6c786284c99522ad6acd8bbe8807e1e853e57269699769c084753156414a2c20135f75ef668f1cb4e61d179d87b5699205dbcffbfd76b60500772e2422c642a19127729d9c3261e86311b2ab94a608f7450dd092dfe9990ea21d3a8c1a8268dba819f29769bd1976021e171e658cdc1f6d4aaf626fc6a1a037418871aa6ad75186d91d5019a6ba80d99aece9b38fdde51ad5206c8b3e7b998e0cf404fe4879dd81367b518344a7832871a47cfe5abe657367595bad95dfd872d6bf16d10d40837fe4cd78ba03018ab8ba0ec426e1bbbce8542024d97752bd1411bf6693adba4a956988f42c999f4d3cc0756b179aca9d2abba9827c1da4274e9bae8528b74a719c0a2e961c58da8605387ad3d21d1ba6978bd9fa8c9d9dd1bb54e728a7b02d84a62464b95fc593f872a3cedef5d6b8018cc500932723ae24454e405bc0fcfbc68c00e5872667b0d2c4f08cfebbcd1320255f63329388c05869d4057055a757fe75f64af1a16520234f68a9ffad6222464d496a5d612ed9dcc32f74d13446b04d7ef973af700810aa6a2d6ee373875f083ab30cb453438e289e7fdbe2e6755e32bbd040f7eff64fbc18163485578d444b30a92b34ce044751bce2da6a77fcd2398fb118dd41957bafb8e5d4270d29ee39a27c19191db8b656603e60831a9902e0180ca8bf37297f169e612481b3e582491c098ade70768df2116e1c101af690532330d413cce8e8c94c8ed43936fafdb1d4e3826d6b581e2b01806bf9a855e56e13174e2a036fda677ea9ecd6553ae729a9ecb97967c5d3ae5c29d509412f7eb87ae404e9f26245517feb15e332479004ff367f07da6dfb0455abde5d5c9718d5dd221d90b8b1998200057a220fe2f55e787ccef43be451c5d40a85f512fa0e1549d32a54152125d0badc0d2a95f025544af83777b200f317859706bbe7f9e92af49d3f0b04626351449475abb1c8ecbe46ab3b03055bb07428ed10b991ce03b3ed90647b9eba11606f4f24da334e1651acaf6d69a30252ae057ddd967321083243bacd570054faef25737181f78174e56107a4f14f4265c7a4bbc91f1d3603e55813db28416c7db5bddcd8c2bcf8d82b79da9af2039bbee8d0916eed868c804770b57457a5fa598e23622af83b7aabf0dc989e33887c7bb8fb50b92f3e4ccdfce4ebf57f582cbfae899a8fa530b60b0c9307e218463dc25dd3202e4e313239e08bc623c03f88a0ae8c9aebcf126b758ff54f8a3806fa2e193cd40a0c9303730406f5d42fb4ff1712e1a6618bf58c53330db2a98f9b96c94e246cc7f95271289b8acc843925999152dce44d07a885665434f47e0600ece31ad4177cb7cc1d637fd282468673e17d81b86e18c1e628a0c6452f456617396a5be0826cb33e1120cfb398a9e3605ab46de1e269220f1c387bb41ffe113f6f28553ac28101701267cd2bbcec54ffb97e22cddb0caed588445fff6f7392d0b6415fd4042ce5d345fd64e4ea25f405b9105232b9ba5685d8f5727f055b3ca9b7b465e313682cb780153457fa881f0bcf0e193447b84fd499cf8f4bba8506163210b953be1fa8d195bd7454ddea1c0dc79430aabf8de3273fc236a44a8f7c97311e0370e4c0184a51e3fbf0f782d753511d14551660d0101fdadedcff8a655697cc6f16d13333a095e7486002f826de14d0b7c603df000856b206470bf04ab534e8ced1c742577e26256d99a9e4629f755d5ad6ae727197927ad09fe529526851113cbb4ef9d50a99909c7c7a96fc4d21265ecb8e5a9d92fefe18cc53b5ea7231d38f3d8165f2a40dbb45e7d96203836c833c5d5bf6d5a45a6b9712f9584e2251f0ce460db80067c8e83ed13e679b8fe9fefc02183e9c78ce0339c4881329de211bb382c8641c136b0d7477bd0ad7dd8e6db002cae041daaa57519b1b4ec596ea2bf825aaea9bf2f2056cd8423143b66675cd2d948976e1d707ef7ff9bac4aa0329be0e628475ac2ce2212519aef9ae916b2101671b7c1610ded4bf0245d8a0b78249e1441dffc983f075ee57ba4670d6a7c8cf8e1bd9e18028926cded21e758e224def337b6fa525514ea85288970cdc9bda8fc6d5b301d62743690f3f21197cb1a4e3dac1f51b18044094b09be34a8078ecb97d4f7155dfef88e4c31e7e5c6f69865a53a49eeb901e7540f60a740ebd77d30a7548d4d7675350ade8bf5a720f4ce2a0dcccff192544c8e567c595a8b0b7882a7584408b105b87b6ea39ae7bfa4ecf57c39a66372d04cccbbcc2cf8bf68604c38a150b6a3aad8a4a0311c7df892ba52b529daa9cbfdae157fb50a093d2aa5a411ce6af12bba14043339525ad951a0309358b2c450b5b79105208cb345dd4874ef4deb5c9e8f6017583a7dbd95267df3cf3fef328e3e070453a6bd487dc8cb18ef410793c5ccf22df9ac8fc8486ada15e377e7c5dbd33017f95205f3c199e5f3d399c46927b4b7b159cac18d8726a46c1d374f300fe2cd3c3fc52b969adfeb02c58b1d10aab5738c9e0436799e7f69ea2507cef729b5cd929d2f3e7f07a45bd71d290078c2a88bd1c3c90bca9598aec023a76a618e0b84848057c801d396eba6751ca7594d8a9ae6887ab41871c75fe091dec43dac88123091dc502c9b5cfa50ace0f04c943361c5f6faafa83521189f13ae316faa2d71b641e3043b9ddf271289b43c90608db6ac3b33a7cafb86aed32b91a6010897f8639acf2bcea7ba0d26e06474ad21c32812262dfe75eba46c93d5c7f6d614b56125061d0dd5aee24df0cd987e32503aec2155043e0cdd85731bf9f2b2eee72d78f1e451706b3bdfbac4b07fadc8203386a526cfb058d05571d13cdf7946233507779cb22e9bf6fdc28662cd254c52d78aed4c040c0051a73226872afd19ac2ce1eef14f43776675e40377a38dae63b8f83887ec1154bbbd4edf4ddbac3ed90907371c929fcd66ec02f5f0b2f4c0618c623db1c930e73e046c7352681a1e3aea16ca08b227cf3e434b6bfb160061e801d15586f6f0fe4f7ccaa20d8cc4ea58ad91552afcaced3fad83dc4b68d7c2fa6c14f5d0e1f878c8b51283121705cc5ac704d574c427dcd11e5c2ef48f8e87d27db1d20e1c144a635e839792bf1aebb057a7bc1ca84b7f82a18b55c1e41e38808f453c823a6a8bde0b4544ce9294141a58390e042d8dc5bb279a1166a0350fbe749db56fa0910e358dea109802c9c954bbe401b0f3de7e547e4c1ec4e15f4a633d3f0c265db62390ad2f4bf2c71f50cbda298773d0274c0935db52e923f69abea1b679bdea206c6f9b9625214ccaaa85695c94c01c2c8f68a682a7178c08adcf3b38b6d2cd881bf9124ff1f901da9b51205da22b4ae5ce5b49c1a0c5ee7a08492de7bbef138ed14e746c2ca1c8729eed14da08c92b7b768eab2097be14ccf8887bebabb196868774475302da2bdad949b0f4f010d254d03be07aea8ef47987e3c10e8fb49fe2571cea75af1e178259259f7362c1e20edac51f9222aaff18637da42baa8752f03dc8612b07a100596b03a6e52dd17fad934d13f6f3fc35a77d57604747c1cba6a7dfec9725cb970e801785d9102a07e3db99e04ad6b17f3ef1be16378d3c462998a06a0d7b12c3c223030074cada1fedd7eb12bab04b4c46ef8fc77626357ae4cddcc37569178570d68e73779310648878f124856065cd348102c0728588a064efe7806e1eaa0841850292ba7dc77099d22bf90a0abbe1ffe22a8124b6c1b85ff70909019c1086ae16b46a44819d8816ad3038f201723ee5ed04476d8146ea68de882121fad7e2460945d60475b07eb25731f4e0bcf9dbe230765877e7484b04770879d2c043fcd2bd82ce844b7aa0ff9fb3a4af40b763bc6ef3e82781d51ab5c87087616ccfab4eeb816c17ef247608191b48e0365ec739f88d4c03a2f4750d229cd4ec340166dc65a20b96d564d3d5f307555ef6fa963891492babe610f6f086bc85f2d0a14483be0cd7010df16a9da7277d743db8fd87b50ad106bbd691f7b408170688c01f7b767ba823cfe8402041372b601ac49429e10298c8e4085d5145464a943cc18df2abbfd0966cd5aadb4dfcd0f6bb1b6ba57bf89397f26618300aea229c2d61e750a8be4e33e66da2ae4fee2580e8f92f60ef8fe1eeec59c5149cda2a81f986c1b5552b57f1619f5e991864395fb1f8215ab4e7c6c9e4ea666c161024e146233327437f847330a4c4e181f08d12f501ecffbab2010d6b5f5025eaad15aa46323152222a8d491ee560e475456d89f63db6196240efebb98a48004d60de882bc9b0fa58e12f9f32e0a29e606267a5a05c6b52722d5e3c755690dc96c013d0beb7af3e48fe894cd1bac45c649320faf6f056a6aa89d50b322e0672d1bbf508dd81bcee90a3a972987e72fac7fa47cd3e875ab147b56780d20b857fc3023c187e4006e8823e7fe2fcade20423994d19f46e7d5e438a2f6386d622e2f819c58ef28ad06f32f424d7823d024c7288f201f61397fbf343bfb816f3275614c593e9d1bdc9356ee8b4f561905c57652d679a917ee1ab7bace896f6bbbba5c8d5426b79e70acfef9351ccead007f5637a33f3fb337abdb5a99470d0fe4f31142046adf48b9471546d6f4eb2d6fcfbe8cd1cf76593b6a2f57f3753c1f4a593c2687add8f7270685c728297715260f2ab38cd5a49d27c2c2950c5a4ec4d092136372940a5466e1828ab380446125527d0809f007e0bcbe57d66c1d72c2bcb24e4004816a9c087913f210ec49c335ffd6ba067f0c548d3bc9a0e1ab65c51a617706411e3d47c3382919ced8575496a266bb0ab7ffcc6ecc0a86fbfeacdf21e83537bc1531892f0f2f4f1e36d27e92ad95d4c59a14ca508ae4dd4e2924222e7f87db5df920c1f0465c26ad7649357310bb689e3155e9113f43ea2ce15f72a4e213eead01c27ab2a4af9ce74885a6de7b2f966b59f52e1d66a8ad4a8776cde97d783c2c52ec68ddc290dab8d42c8eb699d884e17c01937c1dc5493fb89791d025edf3eb733087f2a0c9492f4e2c7b13c1ddefb6ef5e38a94603ed408b310aa025a952d794b7686150ddc4f5b0252300346f4730b8bf94d5912a5f7a8d0eba409b3f5602f0537b977f0f210c2a0d024c4c91cab2b19abfcb411f10c25a6afb172a6158d2fde023893b0aefe18b2f012939f66d2cdc3e6fd640e28501748d9c4e7886ec2d80d5e92029be615f87118dda8a0e7b6f57c782b80ef038948e22eae121e72892cf01c232ace901b9fcb5e0ec9bf6e0ded350ce775ba03fc5ae97f126030fd412db1ed92749dfc8c4dbd45238935bcd2bd9fb8a8d38c9890386159f7ee1954120e274ae25ab2388ece7c180354612c9e0638d34c8181d533ee7637bdbfe7c68e42521d74f8de4de9c1b0140a0cfbe0387dac85467b03c1b1a6414a1d2f160a7705a9998bbc89319b064fcbc0d5665d2d96f1fd53e24ddcd576f843f93dd180e7034207f97ddff0fe8ba9d4a266793f0fb18ae01fbdb7829a66d8354d6f41c9cc1a5d498f93ae4eea5ef87470c39e9a16ead7491d5e64c671c76110581a52b6897ae035a3d24017da403bba58cfc68548abc95d4b086ced5da40ec35a993a1984433ed77961392d978f7f0a102b898d3933510d0f553c01c48e8a7d5a5afc2f64e25e59c35d02ed7d35a2696aaf118cf1c2991c4b54be581ac6a3b7fef0eeccc6db00d94071b273b07c714f7678545f994da70844061eeab9121dd5075914433e24b823be0980af81a30b887c15723403d7501e19f20cc6ee6597e86e25ca63c7f2d7ab8e9fb872abad86350263c1fea503e736a41d5787397f69a4735fe90d08253ea05d7b322ddd2a6ed0957f15c39dae496cd0b89524c1265b9ce8420a6890085c9139013d3fdfe281176f3486fc115a5e616b3840533053fa00ee68aef3048d3558b2bdd129f86e85e1a15e7889c33754ac68080def5493e55ef6e9ae0673c07c99ae98e1b03b0b55f5fb388373aa9c582938350462f79fea7003c29681b0a2493648a2232273305dd4a57a3f54512794f44cd5b6a832b790ab893f99ab9d31d3f0fd426278216d08a64726af21129bde287e69a86833ab7a6b2f3d0e067df5ae4e01ed1409e7c5a813c2b4483613a5d17c4d8bb489edada18ef51479886da2cb2d41633ebc862d6bda6c42730e16771258451093d40a1e05f248b6039bac9812a6723d2233a2d98e0d71bad314bff8c1c14b1970406913b25d71314ac73c2fb98410e7777e8c0a28d579116dba12241ca1efa1410978b48a9028c903aa7884544bae23814d64eaac1a75b602b6939af19131f11048be2c4fd1147e9f57f61de7c7de1f1472e8a1b18b30951e8f7870885ae58e773ec23cfc245d511d5c5d45df395533dd3d7f80479c309ec986ed91a9aadea364c440eab408f92478d8a30db59c8e8d21153afa3895e67925bb9859acd3224a08f1621dc634430081ca50641c07a9d4cd2b832347dc1f743aebdd30fdf9134b7e73745752350292e4a38129c45a0893fcd87ba710574529f3c9537a590aa6dced64f87b60e388cd04addc35c1d0883720cc824f5b58c8b82043b64906e3fe5d34d710b991edced752dc191489e870de4a03aba385482c9a5af9bc745b8ee66a13c1c37267e930129700e3658d172b1ee9d43844964c6b27a770ce67424b44d3c66c61a394d20fa3c32b297e3523573ee638487041e7ef63977cb366dad4bebdb7ec9cdb1c00c54ca9e92b559b435f3a60b5c95cdb54262d8f9d44032a6aea13f4fba7d7ca2afb382d6fc90b9bacbb45eb1670ee5890eadd549d97992f2365205de6f5a464ae14cdc2b3243fdda63f5effe57e4d24b5b06a3fa6b7b2baeea41d724162b98aac4c3a704167780a1212181de3982084e88d0c2446ec3ea2ccb212ebdfab475f350c082b8ea9865157cc3b67afc0526e621e5166f2556341761e6f451675c24d82690158af2ced334b23061ccd583adfaf1049c7970703c3d971b0f07c62787eb658f229b7ebc751ef237e039da3956b50a7beb41c838ceeac3157fd8ce7d76ae12979b81edee0ef4a0e397c560732c744dbb3d7bd03049d988c74602f1645eeb92e94cd5a866113266fb7fc5aab0ce41e894a63e81f160eba53b19a3643d1d72180f61d086e977e8bb44d0a5743329ba0292bcb5c6f52b1a214674b7cd1f41105b38f970d03fcbeee09e5b2446153d5df09af05b0f418c0ac5d1fd29b96f4a28b4231dc050c67ea49134dc359bb674fffa5673210ece49f065d4c90272b9f1a6f9b2f594fcd236568c8bc24be676697a96cdc702598f2bfc43cd38110193f26485cce0e78bde91f68fc796e517c2fe7d1506a4424815dd884a234eaaf2c967d1a12b18ed6194971a9c8d2055e35b40c8c7f795b6a7e1a3da67d01b424e59809d91ca6d9975dbe109694b1c356765a76eecb1940f0257576a1df4f56d52c58fc746de8b7254c497f2eaa1b69b1863490ed8495cd63dc4ab5e952f267e537240a020bdb67ba33dba12e76500157770909e6226090de259bf9dfc3f6046c715d0a55f2024441ff080122a03de464c5e6e9b2b102ef393d8a05333975b189551ed261fbf2443e5875d994832fe676670451fe50c860f0967f088db2021661f2df33b9a75bc84622820356e378125e032bed0742a805d1be333ce94f75fc05d697aea08a453690245f9c4b950be32a563b4e9599ac81f539ea91674e832c2fe071c5f6a5bfa6f569b2405bf3209120c317c237423168d1db9b0beba3b39c2758b6ee3ca8cb87da13e51ca834ab87ec99b8dfa794b8f93bfeab44e454ebe15893f7f0015485d55350d8c4f6972be9039fd22b46546ad950092e82d8b59a61536d19f6682d0275042614926566eeb5ddd47eecb85fae6a576a292d13e1917a2ebf092ddc76a08cb0f526bb3474b78cd5c85262cd2c5dd2ca208129870d2bcab6771626ad32e1bcbda055a2e390d4891a3bc0cd36aef457cccd60c45f4a5cc175076fd12c8481e01bc6407e5f7ed9f0cd4191bf00905695012d0ebb11e6f76b9b9e85e08844dfb5482698517daed8516e2b64c94e9148f741c93ac0acaf9db22a2aa809bee7e357212d4deb8753b0b3ef83ea1679777525aaf8df313a26d4b2463bde010e48d3ba1501c1eeb33752b2327cf6ae09c5e631cc4a293e4c2ca45de6cc6e5eb1728de8fa045be2165494b0f264eb99e87d05ddb620993ec9f85b2324531d8083097e326eccd952aa64068eab59952b8c9f7de41117b2e8831e8c13a89a121c7c0ece202cb9ecf9c135ad40ce95005a8a2f1dc907b0e7fdf2212e4a73ebe7f4dfb8a027e48ff06af4f2a2a4e90a7647a3ee88966448a5fcd0dc54a58b1f7834ba766443327a624156f937e9acc36a3cf694e379ed50fa7087e562f7c1cdebe2b457f67f408a963626558042896ae382ac85cb9a30b0ff4cf90efef17b1c5fe6853605f3637b06baa423786b69bbc9dd4ebd11d5bd1209713a151c644b68498093fa809bdefaab9f312949da8935ceef8c2cd5af4035786b48d6498238dde507ae75620fbcb1e184cf134a288cedef085ba90563ee2130f6b0f8927fb2c1b4b5408016e03cd61e0e3989c3e7967b399aac2d51ba1e12cdb99b566f84f1a2faba3501d0c7f86c581d9611ed0ff349498fd4cbf7318112b00032f0bb2ed5b36348e894a566f423366d922007d484d6ae11805546a1673bc032761887b6340b3ce979346d448d30f33aff8ebf85f649056ff682d8975bb227d1fb1558bc415d3ef2fede5d0256aeb7602c7158bb98729537976f093e8e9bde06f4e28d49df29e69877d50dd149bc04ef638f9016fd46b062adbd2f4278f26a89ab729319daf4145229a21a6a5012a95088b37e5230a3b29c6a0379cbe6ebba3118e7badbf4a083eefaddeea2ce253c4fee1a5eb98ce79e6b2d900e2308e7046b5ba67b599cf0a485fcf1c51df2195f6a402ad0115a28c983d29136e6bfdd2cde926bca4fc7b75afc6768b9cdccd8b6169d27d3ad404fc6f15777a1d648814b22aefe479c387b1ecb5a5ffd13e258713c76021892977589bcbe7580336b4c121cbf0ab5b950cea66c8bacfec36da6b79906a055e6d842fe28a519501ae1c987f1ab298569220537dd1120810aca96e814bbb055e0af90a107a9050e1ddf801e040c2b82c61761b657b62fbec6fe335d50f52630578afd12d3b16127b8807bbe245379bd8ac55ef0202b75eb1c1f64aa277cbc9a80d6215a976e1805893ff178d146c3891f0dc265c84aaeef30089b1fd53fe77bdda2801368b292a39552fa64abbe1f0a23735c0709646371e8c8be2d4154dcd3d0e580b5228e376a2a41892c8fa11ef6010cfcc692ea767fb4f5a14d31e14326d975265b2f7dc3c5eeecebaa56e6cf1324c46504353218db3f665adb0f301dc5a3356b6558f9f6b294cc28b58e94f97d704093b68c15be52383ab7c5b4836654ad6d8a99f54761f27cb4bb954d57ba8dfee7b61347cf9d62ec1a55c32157632ced4c85ceb8d974a9b54fe098169d93846909e28a54d1cb2529500332a3343e40531a2d2448c232bd6bb0d3fcecb070b876b3d12d25ac1ec625e9e98180ede6f6957246976397a436e71da984289f3f6e53da707ea1c4c96abafa90e2d368662f6c7e23516c49ef91fab973bbd0c109fe70f5d2e13acc789775abca7fdd09a2dfece9904c8476571e0e39aca6a91f3021d44713b9f1f7445be6d1c82d6c8df823696f312661f7a1f5c231615278b53907e6e7485c51d1f08e81d3fe56eb0b5d8eec75eaf833a28d544c3e0ff26d2c3a8b120d77c3768c23878567abda59d1030adea50d86fc5100757c245a007908f3503ddf0f3789b1ff2819e60083d49d4aecb7040129cea877dd7d4e49f0de45e39c2b4e1d0acfc9da2522e15b8b411bcef5d7fd5d178a9fdfba965594fb22cb08f45a7bb8d01a3e4695ee9347cf0a6dc6a4c8d23436a3d00e35228af8e814d196cad9f11a9f0b4e05e56ceb0b538663ed5ce6615fe5cf26c53df533de1204a02c6a09805f5721fba50107998ec3364baf9126a3eea16408ae4c2b3306f923f357648718f0338d59edee86fc35f95b86ecc463d5ba26a14f17a91fccc322924292279c8d707fdf108b7e48c75672363fba237c7a621ecf97732d7cb739fede11d75a83b6b4bf3aaae7c8e030b1c2ff8428789bab0dfe2d145bf6d934511ad9d54dd49ed6f46c813dd97a2e0183dd83a88fa1e8f4c5ca602e66df08cd677994f45824e7d296d0fead51620b119ad86f83f3411d5c91af432d5ca7330476030033b5b5c7b403e93beda9c71f380f3c5c592b5fdc9a0b82e5afa984020175212eb44dcb4a243da29ea3f327fd0a0eb0c3102b683e634d7f2cb47cb295e00986508f8db38f98690b5b2968c756a88c5d15c853a4dcacc72646cdb9f403a71e171f50584c0a4cc5bee6d9f67e094a2a15215b19fb8384925d6d912cb4610893c5b035e1248f5a346edda5b66c8a8882c103344a73f3b52b46ae0f0ae968679084ec0584b453dda0c61fb27f131f7eaf397ba2f8f9ba6bc48bb2f8ccff1bb855254be668d3ea367fd06a40966d8d7c4696144458e441b9aa946233f4f6600436bb180ba955ca718d06aed875a6de9f6f559e18cdb3e2de55a6bb59fcf6c39388e930e1f9ab357f87beb84a1b2d9f2634ed211e54af9da48520416f89d96607243bab372608a3eae454a85c5a19489e6ed47768c4227e4101f06577670e6423b70bc030f4aa7ec2e9742bbb1b48266715e4e52b80dbef634f2c16266cfb80562d4198f671824f63e664ff34d0705c9c45900e6313156cb608346a8453baff2576d1a2c7371d0216f20ffc7ae5fb2a91d3a81640a007208e98e8758047e7077cbe1b5914df9e9fdfd1fd672f841326d665c4710414ea45464fe880a6011c44099c1f43f700ddbb0a89f788df764bdba19c62097d26030b84972c4319b0844a17234dabd0222af703d2c056228f059437703d35607620288eac5850e6b0319e3e3b1f256499cfdefe0086ba5eca0038580b9e7b405adea4280665c3e7f5aad36f8107394054c352b40d1f5a81fd26e933e8d391fc464d2e08dfdd780ceecc787070384fa4470395e7b0743ebc6ed2ee4134e6de7bdf9b711e0bad35b4ad41d6bae047c20e4ff2df4488cc1bd4a17a458f6a8cdb575864f91db8c7f429d88665600a27121f5d63a14ae6fc82a0d45232b4f12bf805ad2fc7676a4f7e98f803fa8030dacb2226db679c303528c1db4da0b5720cf869e5acb382b1335b75ff83712fd98fc2c56be0ad2d8668ca4025c9c2a3ef0aa61c80b19ee1657839dd1d061f96c2c4bf66586b12a54f392a63d496074de82f94321d956846a6bf27e21096dfc6aa9a82c2ea8e58a1a69ec35f0a921b3ea041e0f595f8b99a68c075052c72edd0ac39160f68b0b904b02b03580f9b6e89177d5d75af078554cfe752514434a6d2feb3ecb5796ae9daddf3a6ff12785fa42d0ccd8900f01f33791cca1d0e286cb8933aa6625fe5021c63fd2c1c08a5bf70ae0fd6d5b9b13acf89c35e592b6e4b68ac8311bf997828110d04301711991c6fb522a54d75f5df2279d87253a923db54a64425c48944dd3ae55aa462f6b9255def420586b708f0cfb8baedbe78f5a3cfb0e1e6d0ef2d90cccf28b0352c8782a7343c323db71df4913dfb4e70bbde2e6092d2e9d8e12aeac7c078f9cdf232855d6fc0096ecd5e3be629cec9e315b72033dde161604dd964c5b3dfff39b96e947e6992d7a0e2bb2bcc9aa123a2d41b4899d828a4b867c3d8aeed81f9aaa5d1fed021d6c0616e998b58f68ae6446df83d28933fe875339965af51ed2e817d75ab420aa347ec981a6c5145c63df60a654c5fd4556c80977bb6a9b1d9cb52a819f0dab122e26bd4faab345d44ff1a2f249d2552e7ff7bfab3a85ceab17d631d55fd79799b8fc60f8d1a89da338638031964289a529d4b411530423a67657f8ddb5cdf9f1072ece529b6be9d367732faeb1b63920c23d529fdb30c650fea8e32b5c37c4431fb560a2bf7fc2118c860b0b111c91572b463e0c656258e5f9fa0ea270fda6698afbb510e82610a27d12518de8c4d5e455e6605edf31755bdd4e2095cd112a9ca4d34a2e23595dd1d9d18faa340c324db312abe7a54e14f58aaa6aaa6a098ba7471033ec7debe7bbee98809b5fd9589f8cb19023279bcb66f1dae942e5e14f7419ffbbc3f9ac0f5d04a9e20b02dbee6ad9bca8dad22c2169414a03a491a1a312a2a42cae1df3faa2c9ee9381c6f77cd8630a25dcd4524b92bdb3b2c8a2e5bef19db17ba15735767968facdca5a64cbbaf739b0875eaa602eb8ffe241584f3f39255de3b43b4fc55bd2e0e7dbae0c2af0a157bb0ec430b1cf155c7d7959eb26c32baada6b65ac0af9f2ecbdc02dd1a88f57d5d482158021afc9e911dd227b77805f49183f6496f26d355d99ded96831642af3188e0a8ed25815e6864b5a74466d5f542804886feb62a89c21e0e920db59c1c85cc45d721d8b0fe4eb4285a8904a5a5a061b8c94baa95a65e0f6d90efabfc43fa8e18d11739c6ef9e0368c6562b3b3c9a9e961a1b103b47e5f8658c4afffc8ebd2d654ed717cdcb14b16043248757a11b2e5345fbba47c0ebc99747c93a5e9a627e3e3282f01344bede1770426df6f28915b18986b0c7719740beb4e9d2ed8c2a125fd889112900df8de57a0aff3c0fe6271a7d4ce045decd83d0aed18400849fd9cd22c0cd2a5393f1873783cfabcd340cec2e8b12a4b87d66a9a20d9de3143135012229eaa8336962eda84b3927ea233d7bd742a0b9147d427fdc3688d92fb10315fa1babf0ffca0194e74698d586194c487f5e621fc4940e867f33dce4f6643160cbfae929d89fc61c35d72e69062203c3ccec48845de08a166eb162a947b8c418950bdb07584d0b7dd1a43605a9c6c2edf01201028dd7bdcc017ec9d0590fcc29cda2b2534fceb63608088c136d4cc4e359105ba05cd2bd925c013ac5c5b089172990b077180cb113c22297237d578629cb1483ea32b3fd2c7a21caccce10e5a4f6a1bcba4b9c635911351ece11079d3c930004e903676af330122c894a2b2974bd84ac3f15effd9b5630d4bc92e332f54fb2eb81afad975248259db0fc8f94f2245eed612a6a1610904b7703c4596751a39c16c8178a79776a52c3c33d387fe345a765d26058ce824bd3fcaa609c8ca972b4aeb3380bd2f6a035cef26e323164b58267c57418376c0355d659bd85da86b34cb2729e76aba94370dda54dd419beffd9eafe936a45ccbf4840cadd0f76cbb01f04b71a6d7fa350c7a2aa324fbeb90addf18ef2a8ad43cb3f941f58537e442c32e4586e092dfd37dac61210f3c70095f64b065df62118176cb7d9af98b94157444edd07ea7fe1211d6979181bda3d39304ae02ebdc0c0c0bc2f647a22468d1334f2bb3e7070833f9d5fba0bfc72e05582913fd2f22aa61430eedbb59add3ea2dca0cf9a2cc75e3df0c22329e9654c660a3580860ec1cfbb40dc05d8f795c876ebecc0a7adc8a3c90657e843aa619e059519298c14c72f5e756d6580138dc18832a3ff3f1057d9fc49aad128d7d972ec428d148a1fc1313dde39fbcdf0d1f54e8d779b5956d61fe6999dd832d528bcd8a03922d8b4aa14070c406e411b2b93bfb31520e06b22c11bbccd3e564cd4bc9e03d1e58aa2efb0c85eed1c8fa998b99cb41599a007f7d33c77cd641648ea353a45bdf1bc363d428e7a0df8e4ebf84d6801f2d4d52a2a2f1e26e7d36f134ef03fdea6fc26226d2a31947f560d43a218ef3a2b773b2ab9776d3b52e92af5d67ff8ad1698da7bccfd3a5623e1946b9a07dabea8eba3fb778f065d7179b8365ea5c7380ca935a685e2f063da4819a08ebe7235c873be5f0e471f3e0c73e72aad7a378f02102180b189c79a41480e1c74eab2b351fbdd372ac1ec218cdd6e9559aff848aa74260b416cc581bec1030e485f01c17300a5ac6843f8782e2b1da52d990ce1eb3399742a174c6bedd4d818b2250454af639b95eec4d3c66adbaadc51a32f328a98be7ae82ba924867a84eb50620dfb0fd8f7c98131babe5814316a8ef5efb7086751425b6cc036f71c05ae08f5c42429e3bb1e7047b1fc65ca750421b8b1fd99593a72c05270c989b1337567a3da5f078056161f766a58d8071a115f5e01a77864b802f3abc0c66b6992bb657889625fde0d6dbc7227e3f52b9bfd92d799f5bb1b402887f9974fb8033f9951edb83075a773cdc68baaf1103e714629792e2e7d41d446f59b1e9d3dc71c249b9761367200dc11705e351cb66d5c7685fe01015cafa9e78446d2657564dd89f5574a46e22899bb17c614e4a8a063382fca84798d80949defed085efc35ae8d3adaddf298174b5c62a618ba643925cab07da05491d5ad6a1bfe37283eb21a8581884caab9c13561a8a6961753b206b57eebd0a8656dd45a18534049b29fc46b16431d6b45b79168d1b2f6318eb0dc5408739fd78208fa921542787b547c7c09d7c9c369e324df18bcb2fca20dfdc0e6b3251eeb84753211bcf19429e2fe37ca81618e868ff8d854d929559cb4e89272ef746180d87336bc1b5f3106aec7375271f2f5f0159a927d632413642bc52dfce1a541b9cfcb4f5ceb7d8319bafae594331f22811171002391920bb84012d4d4605c774153b2798a5b31057ad9f81c6479dfb67cbfc42a6d58837f3af55b05af07b795416973489786b6eebcc97a3244429b3158fdc53be83c3239bf0bb8dc899d02449255128088a1f6ec64d53475c138aabe2cda5a2b9f0039842aa6ae5c6bd2e4519f6782b45cbdc44952840fb344cc331c3f2130b3b360c54286bb5540677de0cb5ad8ed7e083abc9be74707b7a4fb3399b4eb9101c43eae04598e96ca8fea1b6b0b95e843a85da4c9149738e659f877ac2609f47651ab8dab8730e5ac21d33c727fbc6eaa5472fc92e0f1c82c4332c9d86efb3e06b434a74c17eb1bd03fec1b9dffd7573866bfc496c793fcc12922dcd2d9eb31aa88bcc9948f129f3df8a0d26ed07efaf779a2a54a4fe98b3935fab84039cdeec84339826a4891ca3c60dda3d59aa653d1f0d420f32e163537420bcc7b13ecaa6a483b110dcc4c3a095f26c18f24c9ea6a4b5a675fbd300e9d409c39cb219c59f7980a5808ed656f76fb63ca9e427e6feb328180113b0f003c2ff311473f89cf9dfb5f7adeeb968a8439c4e800c29a029b4740060d63aeaece06990a3c716ed8fcff075387685ed68a1f01a8460a43b87b51d4ddb437fa4359d56320a51b98f1fc1d464f8d17f2679ed7b66fcb43255857d6bb52f969a2232905f5b2c6514972643bd2f5422a43805ff94024267fcea54bdd3a29702f24dd7dcd4569607cdc0e6a042036a2ea3ac65e046a36edb0f55c089534626de1e8ab4d7bea94bcd7bf11336b1cba5600155b74d80be3c41acabb2dd6b6f1adde46b2875d880ea1bbf6b7324597466240095a2aa88937dfddf5b4bbfccf4eb0740e65d0b5689550eea163cf713d5b7404405c67a59c20b1d45fe8ef0c51954f9c3677bac97380996f9da755565866af8e143365d310bbc817ee10a42488ac8f7fa97a9ed8fd6f3c9f613edc069749baf6593c9681d0dac03cc6b4db9799eb6e8f63997280771434717195e3cb81cdd7231af9a1d4c06e8e52bdece09a049896796f59b768d34b8e8edfa2aa65926b76cee46aaf54860536e5e9e24d400459df3dd2fbd541aed6bb619e030f9929069d1c17d1211cdf3f2cf7a879bf5bc4b37c781847488800197ed65a20ee40ab6f51bac44c80aa70b1d6c55d7eba4f89e951ba65654a03e841e67c4498bf5c472b48f73cbbc143224d070d33ac8405f11d8fec947f4cfe467a345c88e9954557657c00d380597548d79d882bdf2b13a7520f0e8927ebd83a94ee8ada0fc44340097adca9885c2c6077c3dd75da43b53ea05275dc0d0e5077f784b72dd13fbdaa3d5fb3b14a2f92e17876a8e64a0fd9e3ef148fa3eedccf8cbf2d50596256611cf7c20eafd8af4c73dc1d52e61afaf758138c8e2a81c1c6e20f050afbc880234a633490e86157c33ee2fbf111299bb67758e8c707bce7933638813aeb7d7afa951d1372dc51708ba692c7861036b94de4a92b1753ee7e84f965dead2000e3bbf5ca715ca5d8e0d93d96b5521fb56428b4242b1847932e85cba157bfc208e77dc099986d400aa8626815ee4937278f6912a69d20c3de2160b3c1e310c5cdba2ce16c7369e60700acec9b295c9b01def78130a7eee17496e86c6f2f767c6480150cae3df9fb8f4730e12a06bd4abd52dbf61ab689510e1226538c91d75ddaa4a7c393fb123354c16d6e946177858cd2bd9049be20ffa5d4a92c861820686346fe36cfa24fff5af32ab666cd8d8a5639117b90c6c6b6d56b388f99bc178a61d18a1f2cfbec9c3d643eed4045b1a17e14d2bd3c66d60721b1edd58990e49c3e48a47c7279185d6e45ccb97873b81351f74140a4af5258c11a571ab09edb902add1631df1ed9851ffa4b045be8b916ab335da9d982710c997647224b0b77e4eade4979890be0ae7f977c6f3a7c5c75026bca2fd8f4c068ceb9cf406eb69080e4780817b927ff136683573622d1e98ff8e39aeaf38820d320d979832b40c1a0e43d6776ad35b1fe2c45ca5ebe7f07590b89f2289c89d5169f003d0aa55a80547bbbb41ff93a57de53d03ead0e4e6f3ec5f6d3c7df3843f5215f6cdb29c852fbd899a42b3ee7b667bb325a0b33bbb90e738403fbc0f48b5f3b4301084bb67f1c43cf48767313676b0bfa1e15d7d5cac9bb0d4cad2205831df7a1869f1686bc348f9633abd92144972e6a6e13364df57b0069a1d4467d6dfdca20ec7370b7088d56e82631d48a13cfaac1bcafdd70268b9375fb71b28b7a71b22a9467fa75eeed44c60e7d3db47d283452cea0251130140f23d7a7e0d8b5d012ac6fd1e33f40eb30a50822b9ff16e593efc39d3ce90f161c8e2ef3e1d36b7c57b3a0cc676d1ab46d5851eff9aa87b57ede58caa7dee8729174c9af2dfcc6c6d2af83bcb94a009d61c7f415a9cc88e360a6ad08de459f1e599fc854b6932b28fd9411be25c1321a49931ac8413a4e0e8306938ae079e81b28927587961f8d3b9a5bf089a2410c408581b7640143b197d2234266b5486f386b7ff3172aece57483f6edc61eafe5a6fcc35c3b8ac2275187adcd3ad2c5a8398b3a34349520e2a1711335d9bf6c6191f467a84477991c327b14142afc2fc851c349751a526042b5b6ad5fb1c8aba6442591a6d78e3af75ba559069a701070d80dada7e29fb8edae14390dc01e3d4ff64ba84c188aae0e7d1d1a7a6f8428af51d268e8a253b7e02d479a13759ca6801b0835506fafbf4c12e730f8ecdebc8cc827c4b03494f4bdc1c898f06aa38a9261d448c18fe950d0dfebd550571d54391af6f7c23e19497b57e5d3c4692b7f8997e07a33cc703f860fe782a0bea269b60dcbd212dff67be2559641ed3e9967d0bcc75be7c94f93be8f40ed5a2ce29bbd1e8ddcd39dab441229ef8f7cfbef30f6ffc2a8a45f19d122f9f5bdc7f8e0291b7e13c7cbe030954879d6ad9404afe8f1de8e8e59d2c8ee3a343de5722c37be71b1d3dd91a13dde3b4f146afe5680c731af7ff3cdddb17408ac69c9018de3b7579feac7162fe0d2c4739ada99daeed8068da5435f9c47a69ad1ab9ae2a908b76cf276041ec9a8dd413a591797853ffd7f3b721a88c7bf298a86104be20c40aafac5883b5c7949aab51cf59824e629f5c7a10837f4fde41cefe6d31c0dbe32d219def0ca19736b27b2e49e8ba0e0458867aa3f7f26617d149e66282dfe86170c9f1bf2382d1a8896c9d7f65a0e287d39d669f9d57fdffcb86182e95636e7fe7e623132122d2e83f560942be4090fce77eaf544753d02dc16f02c33320c01db7226de695630b4f9a364dfa05ec6e272b5341eb05401f7ff2aa42dc54bf36a2da6cb1282841e78ac53f33d9c003d3638ae4d2590598d7adf27a72d392c188888a8e2390a0bbe9f495a64ffd9ef1ec0656922d3b95be0c60301abce21f8458378aff84cbd80e319f0aed1f93b0da1ef4dab3db83424b93bc814ff82d6335b139087bcb2790a83a31673ee8e2039786797366afed376d53f85ea15a6c17c0f8833520bd4e8a5520de8224d2337d98f9cfe690ad024e450dd5c1cbca535e765fdc2d077c7bde070bb359379224da4722ecfedd4389c80120e5e6be72919b911f7e55bc9f77a509cb1c6b001f85b15478736d0dbd65a3cb89218d87278ff84b993fcff7ed7aa454f84027b2209e13c60c4046c1633ba99e2158ef4ff37e8a08d6726e537b61b02d3a7381cff8d22142a95bec0abffcfa91ab9f3230fed3e336e1c544681fcd9d18b171eec138e07c0ee6ad6f0cb59b94e38b3923ef7a95b0cf48507a24933df2dd805c4ff07bf161408fd266ef963abe2ce9439e6eb7b820b8bf75146b67ca7eec9e8b5b589978659f4bfa263c17634da6866a1eeef11dd266f9a402d834cf6243a05bd4458105227bff3c92499da0aafe8381a93bce94e58d9bdec0abbe7e1e0f30a062ce8b85207f05e47e4fe1e10f9bc89dc52547d7addc87b64aa101d489d53d03e2c6678425e849a3544b500d3d6196a9f9dd0f94e7fdf17e28639bd3cfe8a029fe349dcb5b2aaa2eb4859dbd23129e4f21b4ed1e004d42cb8c7372dfbf56ebb287de89a06bf436e34c5c34bf47204ea599c9697f39947b64453a2afc99cd1c89781971be2e6b0fc42d76f3dc407e4d07ad21802c71cd9808fbc21f575cf400055ad0f2b5173888114523118f2964ea84738f641dc839d0d082116280cd51a74734a149760cbc9d731d827236ef244953ac001d69aa216599ddcb6cd06127e8a062769ca2c4063c92d9233eb429b0b7e173659c9d1020584478d24f6f2df843fad9e5b300d933ae44ae55c5b1eac75d6129574c0ce531a40836f80a48a0a369151c6a47db5577161fad1d1c665817bc39961b99bfc1dabd0d502db2c7b68a73531147bacf054084dec21c181f64586f5519b3ed48bdb4a6c8b2f2f343a46c4cc0fc5cd6eca09649c22d7611e7d94371cd4885dbb7b4aed24ff372c8103150cad72b44e4efdd79327d088b58b4f6c65c17652e68d75485bcc365b958b39a437647486ae51c5b957faedd136707386e80e005befc4db35fd5bc922ae9d69d9919aa309f353ddeb92d3cf047d4c4098dfe6bff3488f3b109820e70c21f6b3c63738db4ed1850eecc696492621f995d16bcc67ecd168d1eeb7512926c66f0c32682e8de70d4193f7c6f5a67a5d54d6cb9b2e97320b043ae7564ae498a494bd2a2f1eb8e915b8368fb4c9fc3f219d9b881015c30c850b844f6a46e4526fbeea650a9b787ceefee0c4f3129592fa30477ea632ae7789f214fafcb685dc49fe237a976b02411786f4f879491e68e78dd18eeecc7f2df336a8935fb1ff5bfcaf730e082ec719e183948fb8cf9ed9af0e42b5a198d66f042b781b3a7f57c54479d0fdc22f9d9ddaefca7f0618393714e2e756a7a7f557c49699e4430937904cc93dcda99bf2af293a723f651e9666a9e4724c3890a0bc503b7a385676b8ee6ab3f20777384f2732f47fe07f881b58712077dd5d775f44bc66a6957348b747bffb1ec0961c60f2441485359ebb1917391852f9a5a37dd35c60383bb6ec5366b4342a8ae6636eab3d51447a69fdb346fad5e0238defbfe2b4fc4f41c718b850e0a24fc8c02eee7f951eb2f870bbe3f352488e353d467873a584033f18d8457797d08d2acfba34c41207a5086b7b23066242c0de6c0acd91d837cbdf739d2fca34b02e137e53c20897e7cdacd251ac9231f52ef3fc5d242a7542142b16a0652bd1baaa6455054ea3aa4a2a22ac11d78999ed05544fbcc1c725d2306a9a386aa296dd197e56e037012a0008e1e7128b9d093460b8d21c5745cf47c98a1bf0a856bd072b34ffd447f5ff9e63da56d65b69a008be07b77e603cbf8d75277d1b54788d492cc1be60b97fa3db91449ed4b965761b77a7aa730a2cec7ffb34415c634cdf8bee511e669ec848e79b10fcc94a4d3c5492cdd6243fbbc913ef8420a7b74d328c24a65b72aef97c02baa681ced95abbdda6a28c0564517f5fe4244dfe1833b26192e3a0d0c7531fad6f5184c77070986823c0b00f788baeb3acd950bc3fcf4b3b8766cbdcbbcd644d78e26b5e1e1ee49fecfe47c212572ed589e038ef91da04d5a0a6e7614bee4c5f790bc6ab6404f7d44a737903078ba596aec3b0f9867ca4ad47e40a15b48ce4f72ad97b70212de0e249fb06ed505a668f25f4f5a82c31deefdfbefb88eaf9386abcff706d42ca48a48186c1b7dc27254f1f8fc2035d657ccba69766f17c43a655d566ea1df7f782340e294d67b603ce1691312b5757a8c0f2dff6bb42ba35252034b1c74b87920c9f290883876e819f64561c9df0a790ccac7dad1286165541bcc6ad25de936ea0137028892ca22e26b1674c1a1b26d12d78d7242fb27b0f24f37ba1cd72d4f009e3c716fb0c700b425b2f9ba3ce114adec1b4c6b89bae2dbfc88e68b67affe26566cf16491df1358c82269bd6c052eb42458f34960b698d8290c94e0c18bf06c315b2ec71767fe4992b9cea8794040ad6973e3990f7731c2867af455f7c9f3af6e79e5ad200d3659cf57a9e15678543eeef06a221f2bf24c83145b103b48468d36e7e07b77f3cc70fee1df8f2d8415baf6f9ba49c2203a5e83730ed593fbb032be0d6f0eebe09ce6bdc27fb102b661a9ffbf555ff1ca86be4b3dc42dee1424d1013d60ffcf47dbb27a7409b50386033720b646a75c6888dc9aee41ea334030ad6461264dae20bd519b5f43354ed86be8a24e3b9c1fb50731e491f28011f3cd8575a9d4224242b360d5e6882a8721028b2629eee028289add8743ca96919bee59f61cb1de096d6099df3f2795478408153fdc78b5f2469a7f99422a20ea333b795c4be783d8962aefde8e2ad394d42f62c2373af1f7333a86a57e5a4cae87f39c9306140a0fec898537ba73b89dbb385e38dae7b9d9a0de64c86cc4207c6b19f1d822a8e2f8936e213b317539d64c92f75d3a3e724ae4de37a67a4f20af63678d78acdc98b7dc384794491bb958891adda7be226f4335514885256249ac559c4378e62211439d9bbfbd9d00546ef4f4dc6f7f146812565447c014fd9ca047d9abdd6ded388a9ab64078136e11815f2549e406990a1fc3078721f969af1ee23769269e763e1314a315610bd00d8c07731061e068e1c148194d124cc6a70b32208273412be99c1aa96c8ecb2c0d9c732721af00ad7f2c373d020ff953a0bb0dc62cea7c83ec4afeaa0261e745168f0fae1de04ee7ea83d53297f89c85699958e174ab4c8fd2b4d22cac6c902d0c7983d9b0fd81479daae6ec40a960b030104e2fde45d5f2e4ded5879da1ac47364476f292b269e498e4e58a0a0ec87186fc17e1f42b2c16149902a6b44fe257cddf68b23ecb6d40387e8801a23b2af72914c0bdcddf07a1c013802e375423155f7cc73ec94d297cdd63072130910f550829cdd9a4072ec2347d6264c40718629575634601b5cdf9f597a9c9b1e261c15f7046571777410ee4f77b960eb59d66041062f8a05986920f39c7644297a59e232436cde68fa99e8aa5da635d8718a174b8142ac7fa4fa78f84105b67e8d993a20aef751b6d6bb0238f75f342be4d806fce4d3828112ad1f77ca08b86cbdf7233e1df9390f24567e44fef68136b66155007e95845cc7ae8e413a592189c2aee95e95160943abb9d87e89fd4754746bcae232028950245653491973a5dc1f0a791c2e8ad1835a08d6f0df15801a87f4d0f884c685fbcd11bed9404e2ea8cc6aaf1b6793c76369b6c9753029d1330645f3f2a5dd54ad5b2aedf927ab345e3e7ccc23c72ba463bcc9e47286dc2786d741340ef15b6972a3c004ccd1ec510f91361ea4767974f4e7eb3b4d4b951bec64ca415ebf2f45144a4c2e0a70f0cc7a8bb96475a2b86e147dc00c9649f9e53a9918115783d406345a4c401c5dd2d7b272f8193e0edb136493961cb6889d555936cf05fc0038d9abe1261305de0b9166f019b03258bc556ddfd2bbdb7a5909a27fa1cfbe328beb276e51caaa39112b8da0aa4d0e09f680547cabab6b90ec43de9c314128886d8317fc17b09e5d080ef11c972aac1412a69c5ef261ed32201203448476c2a9cd696efcc09f1468a6532f6185af98c7704c129fa933c7c3cc608dbb7e3816dd5a0e6a8a3fdbc8094ca3720a552df3bdeae86a586cc1a26994cdaf8f7b94ee56b28db6263d4fe5ddf3a846facc4a00b0c8107c29f90a4a5f7f21026b7848e51b2d10b1cbc32c4898020440599b78090cb4e7ffefe0a42808e2675a6d7ac1454ec3cf73a95d8732015b6827c15a389bbe1013cf67fcde8d27227852351c941623e2b349e179ef5a318eab065120d52e11395523ba5812118f7466ec98efafddcc4cc067e9b0a76822cfca31f1c66db212d6367ae343a3c354dedb66047db67ea4d37ea095ed03756fb72503718a41e37f95ef0a79f4aa479a8c9cd1ddcd24710bd50023355af352871e9c7e37ef6c19a008cffdff68dcbb486f682cc024a064995e801e6e01a0819f1b70d3bd58e69e2d02035e45bf87870f35bb05ad0f9b146d3b2e4a0bfd841b891e61ef2bc08aafefb85c72763e58dacb3760687b8c71c9d5ceb2a2e73b49bb66747d6414abdb90a28348daba4b6f9b8539f789d3be75eecae1c2707b32e6891593269f786616f2e71d6d3363a93c55aa3cf477939a9c87e07afa861f5e605b0149f435bfa59cfa6f0ed45fed1d52ee44d7f3fa297dbb6b1670260e228b09038b3d1c91ad82c3ff621b565fa3c6b8ada3e512693e216257ea07d3efef8d69ab77ce91a5734afc32186d7b2f5dc66271db02a89b7c1a3069ece72b94b773dc03d555f5776949809271c242d81f2c36d3a00eded92a22c82692f96b32deb63a8ec969a8fa55bb3fd060aa0777d44060fafcc72b5ce3ecd4a2390f4fd4d7b3de299ac623b9c69fdf1c85dc310507319b70f082056b389c43c52e7276aadc70a23990b3b517fc8daae7ac195281271b214d0a272ed72f1b39149ed414ae8e368fb3494b1a748d80d19167fbd025c9d4d7ae0d20717fba64e687c1ab8cc991780e2c6742dab2e737590aabe45138d3e5b53f129a8359f782178aa78db4bf9dd5d259c193dbf2bf236ffe6bc97038648a81d4cd7a3f9ccdad103a498ac57d47daf2bb15e6d655c525b8af5641474699b90ee6cf4818e14d29528096a515368cdf90d1f297626673f5e141d3a48fb91718287aa42554a29b4a0e0a0e43e762f6a0acc3f56a055012ed1fbf5a1044357480228a7c2033c460ccf6db2c4cda3ec5bcef7bb180a5a9f850300386b2a1a50a355dfd576c9a7347b76ce08b6c78d1efe6e4464467aa144faa2cbad074e2d37582287a02446c8a3c3da3b61836ed2a2460f3fe2a3f648e710be051bd45aa9027b0f6ebe000205136522914db6706c982a41fd1be651b816c57266b5415aa8e39e836a4697c85481b0fb68a8f73ab73bcb875a8bc88c167ada95145c2a08d6dcea70c82bd666cbc85ce37cd3630b364a48ad94cf7bfe1c0a80b56718628dc22bb779d3462439af0e379ea103282b6886c5b1e9934214467e8c154ed0459ad40452a7970263397c2762d3017388d6142760646d753646d6d7acef34288282444f479bd999d5a1b3ee874f5676fe00d299469d2587c9699439d9778b4eaf7d4f65e40aaf399b37b2176268e79c1ab8240191cb92269f34fe95bb1aefad3999c79707439de77bf9a28c986b419d86fcaf03e7a466e01c79a0159e0ec7edc1dcfd86c593e27ffc03f525b331572fff98772db5c30f79062c44050b955bb7e788be57a7d25ec867f26e59b369014dfbafe0fac9f126957199ea7398d4071c871fe57d069c9261463cae5daf4e20a284afbd38903a242446d468052b71ab117302e8e352e3b62b3805f8846d8fa8ff83fc0bb42dffe4bf7ba4ff661d4ffb45a1f2ebb66c723c2c7e2fc6531967077915e1b47630f3d9a18ffb60064c73c47a740eae39fa1b51aabfd3ebf21751f7f0c0d8083f02170c4e1c4a7af60103e714e2b415da705dba0ea925f9ccab0fde6343f9278909d2087651b81803f1632e0328b029e253fbf79389b0fee2bd6c591ebfd1600409c7ddb42ff55edf601ab7f2e7c917d53ad2c92baa21263430b6f6c116c216df72b14dc09b49e20e6e23b5c0f9ee6ffff64336a019aac4c953b01c96208ae493d1e1c3ecab79dbe10e1d5b6036cd0771e5ef5531378ac6c1307d3cd22520011481b08ed4f5b2f0bf84e9ed1ff47b9e33db9e1c767527715b8ac231238a584c4e8305c7147229828393502924875b9da1f173bff32142fd82d4453ee43d3b2b054599d786c174d6437cf20e934310b6d347b1e90af55a24aaa5650df07782f5a926701463f0cc074c488310df5ba7ccfb5cf29b13d109ed7da23fc1c628417c48cdae7cba29e55e45c26eb97eb08bac98f835a7fb05f25b050bd56caf72db9522b5851b1dd28be7b548dfb0f7054b7a42b42beeaddea0aed0e3c0673c82dd257d6c8c426a33a4817784b8021d67c3794d0df28dce7387b01f2273037e29c04cdcedd90e265690bf03b12aa85f5dd9b2a85b5896896680c40a386efbb3afec78dca4969369f6e24a12c76ccc19194b19d553c27127ae6af48d39aa0033f497d272d9960e8d6333037075cb26c0b862afb5eb928d85b426b4df0c9cfdf8640117c011480e3c07dea2584cb42ddaba7ec0dbb9b2623bc0581f114b5b272fde739aee93c3c8032a69c8668963e32d6d946f9ce3dcd4d6d78612618e68b0a62e24aa009d2f8a5c6c97caeaa3944fcc5f97ecd6abec07f2d28c930fb2bfd1f823204f82bc27f0fde8f9fa9f16153744d4fce0b05c8e74f60b4d787d0521423620746cfe9db9baa06e014160527f96d47ec2ca07d14e6a644f38136f0749533ceb642ea64b25f427cbf9c90f77228f70d977ee8875e115cefa41ef4bf228c815151a8f305f243c1672e6db2aa0822e32dc95a880fca9c95191b42b4dd5c756af1c36309f38f747e2f9aec1b51066c6dfdc0463cda1bbc26ceb9c16f0184bbdc964cfe5bceed994b711bda9f7ff436a15616a057607bf906a1dc06b7d68c8c5e5b84140d1f5dc5b2dc2135524e3125967eb34409dea0c2c2ae8ae6ca72be7335e6863e6ac3fea86bfe710bf0658c3c47614466cf4d6c2c49a0b5282065ccea398a5cc2e913ed551459a8d47cd6455ec6c8f167c28acf4c89c9c14cb59ccc043b395e62a84399fc78f0ffe7c5108230eb069febe93e671e4c94b96cd18dad1e8d3470f5a9137ec180f25d655f943e853cbbeb393b1ee22bf35f1d4de22443191add55b9356160a3666ffae12c68ff3be27f090f808fc8a8bcda93b2fd38c807f3dae92d1407ccc3102060030f4c2fcf24244c85551d853b49a218afa42bc33ea76c860ee1246b1da33650b88e6a77572f655bffb91c46551d69fa0c2626a90d366a5a3ec634670da8cbc11fdfec46b373f7317bad300e98541943f4c20023673bf82aef99404ed76c6613f3f7d6eb73ccf782ac7512e1a54c0af3da0d8ddafa25d42d1402a90391d33040dc94d8edd49311429add96c6bdb16c77f8bd8675c57e0ca76ff5dbbbfe86a452171afcdecfb11d71e10c0c60a570ae0451983e4332ef8f5afabe484ab90db6f28c57122dcb5f218d0fe3daaca6c5f990c9aef0affcc310474f69da21bb6788613d13c04aac8f447f685bba1f902f07913836f523d618e6f19e05110640edbd73a0b05aac1206235c46fffe6fea2700ba063c9548c6b86cb7a7567232441a4a9f3db4a93589bb2903e983cfbb8878355d5d23a07f030f8c4ae92ba107ee2b93bc0bf3bda5138b300f34165cf43afce3f852cef728a3ae30a8468c5a91b3d8e43904153c0fd0be604b66063ea11846ce193a211bce2012d26c78b795647dbf85c6ab8a7e71acc7b18626018329266f7ee64187c49e8c6dab1be9308a2693ec25c8252b70bdd510d9c8c2ce36ca77357a16a53a18f8ad87d1e9ce3beac41bfba3e5cc2d49ba24f1bd3b819cea5914a2f87f6c09d3cdb67e72686be2af4bd2a02566d1c940c68adca677d6c37b9a48302048b752c9cf62f0c7387c669ef3f2e290add671d68a4d6f0f06cf1f80ec414b6fb6825f5b3adea66fea50ffb52bb9cbabff6683d2df2d0a84542899d65bf9e496d4d451df8b7e08540f3d5ea63012da21b1d981c1732e40c0abca3d610b46fcb4eec482ea243706692e6a37330d16d3dff3e0b0831a5ea9402d6f633197232dab195598a7d1c020932e11c05f05993a640fe46a73b85870e1588a16abfaddffd966b2e91a84f229e7c381fbf40fb73fe61799952fd3849913d4d05a8c998fd6176574cacbe315e10448505c6628d38f49d3dc7fdb2eac7d6e0fb0adb2a73c37af5d087cb8af215426b6de2d3996351acb195cfa26e72e55bc32b8ca26fba35140df044012fd8e6e94d5ad806d5cdd361d6fd6956d8bb0698fd423306afc043508bf72abeb67dbb2981a7a5b70ad83842146af673fde235622dedcbfc1ecf738cb439158ce22ab4b47c7468ba783ca59598da8e4f868f572aa3c30a1f45917ad1370d8db584cd8e85a933d08e5c5672877ad119a713b199752344886c650cf23047f8a454f0ef394a6526a634fba8dc1e3cfb279a55c5786b440bccbdcdb63ca931cf7478a2d2aa5d7b9a2dee89e0154ac216205948a1709d5b458b98b6aebf0f97c09edb3fe02564ff53c92bf6af1d04756b62d127cbe104b19b39aa810386f0aa5671edac178e211091c185b136210af9f43d23e6b081ba16fd88632fdc8e8b09bb8f9a1c47071652f45f9eb1ca3df4d75b5447b435bcd4e13b4fe620969b095a481c95f386972a6f0d0613a3d5998e36c925b036dd810d51424be500f54a3b2335fbeeaeec6aa21c84ba62f194bd2ea0e885c7c0e7e47b689e23a40f042a263a76cb1c744f3a69fe65cea97a7845fb33bdb3ec2524622ff7d89b9ba25496f45996201f18caf3230033a87ed862b507febf257ea2ccd49e920132dbdc20c9dd5036ed035c9b4b6f75ecebf185a1e2e8f38b48be6e1bc6cf2c03164bd598771c4df14e7f5b64ff77fa9d3ee8b91e14a08d3e6b485b9f6cf80e0ae39036f001fda816aabfe61823b1e9a7f4e44e07f45220f401715118edaf6802628de8db73460a1a7ebc08525a0a6dc99a2729c04c54a6670b93d1e74a8274a98b421333d3d1e2eb4c04db899d8bc46123c1fbd40fb9825dbac6b75661781dad13a4fb8ee5a4e8d5dd985d6dd685102bc3f0920900ed80cc63801dc0297dd83178a4fcbfa234faac14b375cc2e9e9850a9401cb8371eacedd7aea6d2ddd752dbcab1bd15d79fe365de5ad62d8f1a793a0ce9a3304fb5d3767457c7842cad08e386b481ac44301746f1fa4e7e1129e3464a6cb3d03bc448d87940865f1b51cacbf50f4f11084af4d86e9d41c8f32a3564cd82d3c87408f5a256f4a23f7e04bc787e3e7325d74a830b8e5fe2a94ee77dc7a1d5410903c9258d87997572c01ffec3a56b9bfcbb505589f8ab84aec5a33c3d5c50eb6f356241d93c9631eaa82078c129a3b2084aef8f65c98325402ca9102afef2652fecef465808f6c71d6eb49272046650a470eb88d6e5d88ccaa9e736ac1c45a11b22e00a40e763495d67550c0015feb2039c13761152fa0dc943cdb5bb1f99768696f0d98fb0d7e7f366e78a32b959b083360ae35991316686d8c281c09f9416518a668358a8b0d6652bef0bdc8767d6f09711999c4ef62e6e705a41bf437a0ec7aca6cdc6a3103f063a64461970bc2f05aa461605ccd340a9f1d3bc3440bc3c54d3740df2eebfdb21846f255b0494d1f3ad55e056937daecff8b6608b8b57631862644a4e9171a21d82819e761d68dba55b8930faf03858092687838a45847edaea9c17efe7789970e010cdab3f9ad61f9bc397f8817b1de60318753da7c30e8b28fbf3ac2a6e81cdce07bc2ae2cd32b9fab7ac2f972fc549eb1938a4db865d2b51803d26f6f722eef8320ba40ec55e4e0dc5078a7fcf53c8305de6d946aa6851f854a3af207d1ea8b353764c33876385ed19609c3c9de17bdca87445461ca6b95fc70bfbee3091acb189553ffb899d7860d61c6519d8e596d2ec32bcd5180bdf788fbaf9709c91c05c7a503dd11eeaa7735857e81203fcf441aa91d984f64f2405f85ea269986fff9c073194864489d697c089521d68da0f6f542b5f8242b8e5514a37148ad19de48dcadcc36366bc6e81aec8e2bbff864e0ef38127c5e517612d22716f1436d16cb4bf7792c54e09144e747cdb65358add61fe2483bf49a3fa03a5396589ea46bc96297095d3883e3844caee7f017fd266919bed667b349a8dd2e921aaf55c733bf66473c29fa13dcfbf5a8f94d0d9d4c49989c90029046d4765588e2bc27a2f96eb1f7a76fddea07c5e93e964584111b1cae0974f2cb4898e7f1529b8a4d6e06406e3a8bef308dcf301fa401ac7c3e76c56a4aa5fdc518315a460bdd74ab99c9cd82340f70857a05da8f92a7830dcfdcf330bcff25c7e1aaddaf81eb3f1c220b74d346cdd6d12e19c0ab9d326c8aa308615e0593e33d532e3c305f5d806ff687c4e23d2e580ff11535a0746d19529d9843ac51762e8dbe7e7d57ec00995eec3e8dad662bf464ca35dc690019d3532446642fbd34a69044b7ad480eb201ebb454a6b512e7e1dbab71d3fcf0f7d9149565a3c5d1c8626b3c6c0df908ea6ed29d2052a3f9fcf82bbd246741d6c65ba9593db80cd525e103ca6a38c50dc4b7cf2d2b773f0851cba222d9f775a1e6ccacd3cfb9c6a53e7dd0122e07810dc04ae1d169224746f10f3d2704d3ae466ffaf95551fcabec2c37f03adf78d6a49662a2fc5fffff0ebdb47db68308ced51da1829bc1429598e685fd53830bfe7ba43e842ee6684993b5f09c3ab13ee8ffe10552df5468691cc13cf529aedf8f4cb82d2e3cbf6e6cc76656c72a297ed0d757729944d7755b4255146d1b28b7156c5b427ad47348945a4b12c54d8d9f6a27a07765ef5fb70be4e126adcc1a716bdaa633541ce52c37a5daec424d272502a95b2fba2868b3acc2460221946c19ca69e1f4f45592280998a41ae8827c1d02d8f8c8b3f720b3a3b01494a1135ffd1e9ccab5facde200f76a5dcfa88013002d834f5c7c4d762e65bb582bb973c9284465f89fb68f293a69e328dc1466be288ddaad4cab30caf2e6b72ca1f2ec3c386564eb4fb72be206617c65c33b467e4c30d5821232a045efeaea432c4ef7804824851a354fdb134bd969ebbeaa47e1524f30f91ee089cf03e77424d03e456426d4005707e3159b53ad8fe6b00671d61acd48a1d42927a4a495bbd50ccae6c2cb17b696565e55a4b4e057d0b0bb0c77a7d05f971f4d221577f24f1dc89601ded2e948176a991717682cbade8802038081d18cee72cd4d23662cd0c551a13c35817ae466977ebe0e5ba33a98a6e9b34b71413dd9f44a659fb39e8ce9c50d2a9f55df7cb8af77e33fdd406cc00e92c65d6b474662c84e95a83f6f1adb70bbce559126f1974451fd880232ff3fa9770295974fd0a9ca54cbbf1eaf733eef7085645beec08ae5ac8bb79681c8889a03d87adbeb79925692a1cafa87dc00b7b3d240b48cd521282e7ac88a84b3db4a9f4b8e7b07c1827241897c523bba13501f8f5e81d96eb3ccc6a4d1a3b7bb44cec56e3422b6bdd535ce0b0406c0d8d9d7ef35ef47d9767605187271d736763d6053f2d354a2bcce0dbeb814e0017f4e4f79b7f788f55f719232a11c5affccd1e50cef932155371d1c1e65758502dd7bb1f67333b6c9d715c86fa1a8139bdbdf000e116c70c2495b038415ee2470221d117446ff367c6e38c314ee083b72028f32b47d3469c68e3a273c060cae5fd63c0cee9b62cdd3548b71c373820121c108aec6223aae90391e5498eca551fdb765232912dd1d69ab08488f04a0aea13d417e50e8dd1d93cdabd68c590f231776379b3c496ba464b09db40771ad65ccd5be73d199af71886941ceb09e59165fc4cbae21ca99b59e1d6f962c14784f841cf3f5f3ad134fbc550fe09572d1683e179d1b48dfda5edd4c1d1e04d34e3cc63883c701a211873a7487929e5c18a6ce4ba5e570937fc2f92f1aef59dbfeab3c8addfa93224f1f07ee6ce659e9b9d9a9e3088770bc51cf5ff710802d0efa0b1a6c3b7156b4f9488a9015f784773e483f5fbc59b45c0f7cde7929f692140923fcf1d125f7a44f55bcf0ba7fef17c8c52a04d2784cffd40ea8c6b3942965d4ed6c16e114f027ee6c66a4b5dea8aa5abceb3481a8d9c17ec90935abcfede93bc551017fff2d6d8791c4f37f6bb2caa409068a28ee1284142282ab5c4fa154b1f9a2e631b67a82e792404e05383d00f1c4e79d84d966a43bcca55a927cf7d6cb01fadbbbd09bcddd44e40dadce1f57674a48b7fcb0b8f719374007b3b3aecd94c5189515b42c1a5fc4a7e2e69bc50b34e0bb8fe83c3c0c38823bef28c72f0548a3e6f6e910ef0810ed83578018335cf1655efcc2e58f22262073e7af4d0b014566533aaca64b7eb23e0df9183e9736ad579ad869c8c686c83bc02a2c1e45b592ceb721997bb0a95afdfddfb3ad113fd6e367e222272e72dc2bf1394f73223bf1f1cc9a4439305cda237a1009f71dab7b7f674e96aed483fe9bfbc32a1bc8b101b762c0ce2cf912fee717c47950cffb84b86c968116e37546a276c2e022d21265590c3e9be8328ea7c1c52495e7d5620339986ae28edf09e18966f9d97705b4279c05bbb1edc1a384591e30487dde50ee7da8bb3c8c023db96e12770b37c80aa6d0f9c975d1c9efe2c9362ac7982650b8b2a14128797e05658593cd3857c2e45e70647436e4cbe56f2ae475858491f281f5057a6aa231639ddca8bdfe9b98e72e983000630024268c045ea9ace63ade7c6ab2c15ba0e32501fb876a2dc59a9df16a1d39b11915e25b3ad710a02a2134047a651036dd2861b38ab4c6662082d5aa517b8ff47f5a5a790e763afa5cf936751d629bc9ba758b90fbc04668f99c36537ee48389185157444f46d57f408b0b377f4ded6a39144a0f31e1ccfbccdc0b559db3b27b758f0188e6da688195934b26047de6166c499fa66fe112c7568c803c5ceffda1ff9559f5997a9ed730b013c3db0ab2557ade4d5fee140561f020b3516211c6064c7d84882ca772832f68ca4e0038aa122c2e175e43f5e18e8acdc0c992068f49ca57238e23b0d2067faf70251a63bc1fae8d99fb02038c40c75fd466901d6e7ad1575963c1231326fced07fa422159dee60d0043e9f55d7dee2fbd0e64dbfa81f1ad444aab745bd45909b4ca23ba103511f5590ebff2e8d99d8760cac0778e2bae01701058e0f0fafb254f045aefa63285a7702fcaedbf0413ae1be02b4f3f47f5102f13b6664fe43a903f62b427140d6449823e31683c2b37092beca85a9ca8a25ddb9368488a51e01740b415860f8541c64f83b9ed41e45046c5073549f8e939addaf69f4c1cea5d0bf9a0d7de8807c6bad312f7c52f410e44fe11491e8ef9b9fdb32e6a5f0d605469dd51d8c610927dfe7da92595c3de1267fd45015f68b82046a67f9aff89e9e008d222cea5757e67b4058b53bc98bda40b1801e23ab9d3439f2f781ec28f47554e296f28781ee4f774f0694ee8b98c803c1429ee59ff172d0616ca06513f07da254178a355be449f3212236b3b667a1e56edfa8a8219a00805dde399b6ccefe453b829df000fb3c708b060ffdbee716932298e5b2ca26012150f2dacfcfbef6782b16e0459f34c61bb47c6fb622ba08c5169f33255876337f859fa806241ea3473c763cbc93a9ad8cd50b6b49caa22da37b4f270a7653d05b16108960c8873c0293b66ef96b62525d79c70461bbbd29b63cfe2fa05f4d96ca0c88671b03944844043f987f09d13fbbb039103b12256a75b598ff4860ededc8839b88ce2b3bf3e2edb32834b10c877ca5cf683a3eab511f8ac414ff28abfd34cd70bc4743b5dc3b96f521e1402b9f8fc230afd2c0d0e989bca80ca6126503a7effd88dfa10c2824751cb334b31ac3a672935e9de740cf0468407e5d471f5854b1f44a1afa5ac30d60a3c332548b725451f8bd94987d1947a2a5715a2dcda99605db050623426d09b60e4e7ff633e633b855104b4ad808f8c91b984271b285d97472af7cb1289bdc9071f91c3c22ea677b99df6f359a904157ddd774b945d27be27673c0554e96dc548bb39c4de7b6d66df4a61789e01ded705042f3433418c27102bee8d0a5e94d7471bb2ab61f1819a971175e75278c33ac49cb678d79923c9416a65349fc397c5a820e516be705727dc437a71484a292a0e85d032d031fb855a5ad791c90ac1a1b7dbbef530b88d1c17874548d767844920135f41cfca62ccff7d418c80e0602aace75541faec957d93ba128eb686f92dc9e514563f268119b79d6927e36810b4b42221a705f87f144bb1ed0f940835137a10b9101c51e1c8f6be835fa2b9412007e84a649d21c02f15f93f6161a11518e5932f66591b0357d975803ef98a85f1d8acedace2aaa27d3573b48cffe0ef533645d84bf4451bbea8976068ad880d736ef51716419b7387206169c60b1a9c6d3c231731b03330d04aecc4fe980be679f8ff0a355e75ca766584580fe633c123aaf969b2273f92a961aefeb41beb714349bdf3328869d9bb05efde16aac348762e10d6ee61fe9f4e0e4027b11ca1e4a7539a455b830878073531ecd0f2d0468fd34c30d91f6a4d6c7c47b4c870fb08ddd8af72a2932b981ff4adbd4b8c651f17e8292fab6cbcca7b9b7a0ec12023ede7ed850ecf853b6aebe9fcae0fc25ea56293043cc98860ff442a677ac9b61434580058496c483e7169c212662689cd642454c0e1447db7abc202b4dc80d942e04994a47a5ee4a9952f6645903b7dcb8e36055b0daec7ac09ed4c682f33d36cee9ce8f20cb1e8e9316e4397f5bdeab2606a112f42f80b485f29673701d061e1a8fcc040f63901bf81caf1a71124678b94a9df2337c2d359f93e4e0fb0bd2a7e63d9f4dbee89cc5b4654216d7fe5e28c26c91cb114f169dbebf4e9a39a95f2a8ba9816f5a7f0b9e36c4f46d8a4a76b05f61ec3dc061e6c2a16ef860cad41a4dbdb0237f431f970fc27d071e17221fa822c2d4384798beed61477a5558f77e94c419bfe8ebd8db7be8a3f3c87f428f423d5cb89dfe7cd234e7b47317a298a02043e3db4ead5c6731ada94d05afea29c6ea85fcafe5167bb83f3d4d8092a261df670688d2704b4ec476c16281480950f2e4108036289a44903e5b3c11b9f10e65fe3645c57985e48183b0059e625552c57f44dacd3007b735328bf46617fd535fc33493d41ecaabde70adafe2535331cb0587bf062770d29d2d291bae3b3925db2ed48dbc7bb0f4c531b0c276e96ca9dcb3c3c28d8aeb2baa046b63ca619157b1d445a363be16c4e8b30ffb0aa32f2f8d0ba83464ea04f159f47bb0881bab9d1092a032a057f0ec393fbd8256162de43e33631b6a85baa7291eea9399a58d5e244d4b16bcd2a2dc0a0e24c3a643cf25314e46283ddac087318eba689d187ab96d50bb89efe2012af8cbee05094532697b1be7d28f2d25b3b0bc7ecc933118d5aebbf844d083c6bae707449b76662c015e606b19d13d7e89aeb50db5ec359be3277eeaa697b727b7630e53f1d5087091b4e57027314ec480ab24e881a5764e1da35217ea9b0084493d98b6e92ad6fe3b986f57ed59f612029d01363af94e28563eaf2bae5ec3de0e7337e82dec492ea1a513daf6e5e7c7afa40ed2d0c45c1ff4cb18f7329255f178405bdf0fcb5b215e483bcfb622107ccb2f29d0dcd1dea59e612ec9d7c14390f2d66f65ab5bcfabdbadad6e0b7bd2e3744fb019f6237f92f7706c02268f0fbd151fe36461ee7d329a8a08990aeb59c26a12e58c755834aae695c98c14ff121bcc50db0271ffbece387f38be6dd1f6a4c09d6350c13baea84f9925a44ace4e2acdb62a0f06500f07327bc340517bc7dcfa11e9728660bdcea12e829f6d50852723be920833104b9c05d46902a5dbf05d9b53587b8c6d4e3057bc96b6b6d7884591ad66f29fc742130f7810dd7140715a2a6607c5444f446923ddd0b98835cdb96c5f2515f1493da0ab9033ebb75ee40338a6438c37fc0245228f9c0d853cdb10b9bdb9979d0c00dc75e3d3efed8511600f04e340a6430724c0d3cdd18a523b16629d09eb9714942ca431dcdf5d50d0615a79a24d95a04de7bca0fdea0c496e4a29879433e6a3f1ff03a32dd12def84ac0eab34b02c36e6d67e3f179588e90126ddb0eec6208f472d0b8666faf5b974bc0ca316ccc4d550bcc71264c9281ff7beecf1c714b01f0a0c30eb3be900b165c08a59ff6f85acce5febd9392f8b1c5715488000a4d5ada8ef0cc03de67b6162b3613fb80dcb82e588bf6949836bb3f02e9177dc4c891d6e47d92a8dab9a77a0d5917ece906c111972999d01b4a6a633ad71f822c71f823954bd35bf11f908260a3d695792bcefdd4763894a2e7d91a7ff26d75124664f57f0b6d7f903b296b0758ffd75c29e30e85706141d9a6c2762a39a65c8a906ce0bce70528c5de8beea2791fedc92c71e3fac1a51635a53acfba0684336af543540255c41353f9a972951ced3768bbe2add8796d9c0794c2781852c13476f8c6efa8613e45360abc21b9ecbf7d3d8cf021b64f4c7fd69b461a098fdd58f5cb2b9cd6aa93c857111537e0db938f84193f10f5f4b8d445035cfa35b64cbcbff5d27cca5877ee1daae17488f270967a6846c13e7d5a2cc3a7e2c9f0c4f0e00f5f7f166bce46193e062061d885d5e4592c903e57ac88f33d318578fda36b66fee65b6e5c8dd07e3ab7e5fd387f936f9b438434994434316ae994f952d9dc552d1a1e2a543132a0ea4691cae001a26764a060d1cf8523902ca331804904b226fbf798ad0cfbc491ba79ab79d1a639916be052473e07ec8dae33c9dea82b148e45aa10a45a066ab7cd0b2fb674e72021b6bc9d8ea5cf6aa97373a860750d88bd3320b3bb759fa0bca1f503d09b34bf9d534714a10d5ba9a7a436868facb6a84a416d44c37484f6b1ad6480d70b53ef85295641d94696e6bff913f1458f43535201cd837fb35821213c30499997b2c6252c97983901fe80165e43f260eb4551d2a02c304347d6020c117b3d451675e8b017d44315a50819137c360acd8ce55af43a3b7bef3c05f10a5e2b8287e59a1f23dd5cd2701836723aa3eb1bfaf98353e78931eb3bbbb9e64a44850504fa383d41c951ce202469a20580bdd24d6453f276a9fee6bbfeebcd65592d6c2c1f5c258a5a5f491cf0a35921571c96c9b1dfb8862d6e0ea9958aee0a28cb99031e4749f49f84ce35fa7602984f63de6feec557d038da2f11feddcb71fe73eab55276949ad2ea098d1e0e1a1711ceacf97ef8c1d6bd5ab2dd17be301898be204eab311bff61fcb7b9eb3d1b661e1964931373834363838303633303638 +2423313233343536232433add89993ce6ca7b059810d7ab49be94b7f84ed6a219f6493576628836fea2039f141f951ea4149b1db4c8eb9be48d4c9c0d34160d11c91d7142c3a02edccc2495225272192f40626e3feb7925ba84ba9a993fa7eaa7efcf60f50f71bccc44187957ac67d5d85676a7faee1e10b920291aedc53448e0a553b9add7373b4c98b8411022f550a842e3f90bd642a595b769adcaf8177547c12b0d056776bf3916e775b2b57df7ab031298f8ea04971b327559192f65fee95e3c94ea1882a372ecdb4609cab67459210eef4edbf9de3c17aa4f096464572c5fcbc9250baaaaaef7609036fff9493e652826ca31045d637f492b9f36acb491c4395672607d84e86dd3fa0a0383b8bf1fc2880aad5841976995f25ff8bbf469f6db6c4a84e30fefa3c1e31095450b16f880811ce32184ade4c957631da9ed4c05f116819ab1e92231c10445dbc0d4a78f2f52116fd24984d6549805f15166c39b459f733efb894ece0f8bfbc2189487b680e818f5bfcd72bc34d23b95e9174d8ca440b33487c1586ac44c1190dcdf30fdac64b441f6be9270483ec2f4e99c38ba6ebc5629f5ce9287d3b38fabb832ae45f3bc9fbfa0eed6a84ee53b57fc63281b86630a63ba008c6414d7701ea2cae4cbe386ad6dc9c3ff2ca6849a8ce28fd4de308100480b3d25be6a7329e7dc2fae1306a9d519aa8a3dc73ffe95082158ab6fe1f5c0a1af9cd7dba402bee2985bbf91e5a3c8294dc01dbf862bb84decddcebe2529494d071ae000acbfb9a97f59c8f316ffd558af5df19e4460676358879ce13b4ba9b4184a913f8b1faf6e0eecd1f7e73495ca8aae9ca3bbed4033a7342535796cdec104871278c4c47d5a33fe384711f5ca8bec5bd86d9031076d6f4b00e71301a235d8ca99372f992f95088d076c6e98c216f1c8c547db7f536bab66511907dbc5dc522e9e68995a694ed61a90ef55710e96fb7c2d7d19310d96f57d3d909d903c17fbcaf257dd398b03f1c39e925ed456db30cdbfcadbeb83ed26130a598e1546e0edc208eacab79917d7ab21f1f0e89873067130cdef51f3514503f23a164073be33b525443e83bc85c7703a379d9dca7023558c395830001fdf90537db7ca6761eced783c50e4f8a3ec5ae9a5a631c90d07212536e8967cb6dc3c18f7d3187daf5e1245e6a5cf4aa6971967e54fb2594e4fac0b29b1c5e0ecda96906f713767d35d2eea15872699befa26ec8d1865aa75a37c8360c370bfe07d6eb3a49382df87a88c9808bc2bc9fb033f63ae438109d9ef570cc01e73223a85758850797dbfb2bad6161514361a822a00238f019b47597acb49f715f9c79d88ca2e14ffb02b63886c1be822addba02ae186a37f867246b64e7d5e3374e86571eafded0fd240bad31a6f2f1ac19c26fd044d62f5d28c057ae58e712dbdfd510b0fcd5890e08f43307c5b5ce2d40dc3fd76bf6ed8d8e9eae0af3fbca4d82f828a12a5b2419d807ec5faf27bd519c3b5f634ccfe3cce8f9d853bd53eb68894372917ea8d8939c30dabd70b9f2d0c3c549e1be7574f220b90b78649316a6c74c7088f91cac661725b0c40b174b65d0a3a6b4567d1902a13746fa9a16f874c04c85ad5468dc180b6ba02ce7508c06ed812bfbd67d9a881ca6072d7c892b5682c590dedcfd225150615992092a971261bb2be5ffbd1f8e6c6b80fb17f668cf407855c4ed82e4b89b59e2106f8b771037d5aece5ce68664314cb87ae36d219535792bf9476a5a051d0ad5bd5cbeb6202982de70d09e2eb058e6b54d899a0dea4319a69aeb872ba70aebb6f1831a1cddda003ac2fe35f865718f1e58d35736ab0e0758cfc2cc7935a4852f422585aaaaacd614d42b143a776dda3d14e30d156b868fd1d433f793096b76ec5b20ad72b24133b6754abbf1acb5229123c6475d36f1cb462d58860b3009b4e312ef949a8700e292b3d35a7f917ffb99d6cafe221fea0553d45767ff5bd7e916960d563eda239df7d91fe6207675309006c0dd570ac8b8826f913955b665fcacc53c985abfb0c000f2ac9d036b94d6572d4659bd94cca3e89867a259bb770e2ebacb4507a8e79746ea8e3e2c7b45d83db384e3a6d17a23d698d974f097bfdfaea97de6777742e34972d7ffecdd866f884e0dfd0ef51d9f948c853d6d26f7439cc52ce67156b02ad6ad85732f4d67f248968ae2867666a5200b9afa18d09f67defc840ad9af114fe6b1ac453b29a7702ca4bcf9b6cf50e1a1e170fa8dc2352aac1e6e8099fbca6f3002fcb94021295243f918716550fb67c892925e651dc69046734568c4de19e1f1c7cc8cc2d6f307f464c7c14f3115ce7d5e1acbff7c9390d6345067fafa5d668afd7fb28227b0b2a66b15ef8357768bfd7d745592d801d5489ef119ae7421cf060ba31800ea20d5b946177d32425e27ea8f50dfaac7cc9e4fe92e3c1634dbf99ccec849d60f3b22488774117feeba1a414a69d555f73edc8d283a620f0d0fe6a46f59b0c793ce7c81d1027cbe03305684cf7f616450ca560ff70d2b4ec0003733018fccf4c3fdc632afb17e99ec76189706a98158790836418ff7ec29dc7d71d62ba738c47bf74482d865c8a9a452477fb7f9f3242c1901d6c7ac8a81e97438c0750a1824759d8bf7a680dd37d4ef11855307ec0b4ac51156e0163d46e418db3f2d6369ddf9d4e80cb8372bd930fac18e40e1680ce92fe8fc21672b49e7f93e82ff8117b384f4430222d9ef34d8ef450d6ec3b451d2a7bc3d5c019bbbf6e14b1aa5550767f9369e7a6bca20d26d7dd9b20e62cc8a1e2cd932c852b3285c01a5bf9d117283f80574b757c8d033f02a18c11d5fcb9972603c35903b33b914aa8301713d894f33a03563a134145e015e97fb422a0f65bb3048d98af830d3dee31d87e28bfe6d817bb469a655b59d2faa1c17dd2afd90943f98c43379ec53acfdefc6cbe3916eb159d96969b6cf841be62751345fc9b9bf7026c00b586932a72d794edb8740ba43e4ef93e492166e61279d3c1c057a457ff888608c760aaeb51ebfd7e4e7a035bdc4db8802a85de186c23f8f09056ba8a54aea18c415df075d02ddf50824c83ea18fcbe47446fbcca226511d6e75226343b31a9c3063eb352f031d26f7a2f8f7d0ca46a019f2edfeeda67dc53797c03cf887ab918214caf836a22da7bd392d30b548457d93179606a1ec036080ff1109726b713e2b688eb12ce96e4ce38832eaad32491372793c7d6e098924ac1fffed07ad4b041d1cb8e9537d90993aaa9c5dbf173ca3dbf633d25ad6679f871d020b08e1c7bb260dae8e493f15f36b1385b7738e2386f0a3a3c8893f6233b7d58e387b1d5af69481faabb214e9c85b70984502e98e6028612ca7a4c0da121a02f0ba34382d4d79dcb4b0f2992fea399215e80e8603419883025267e9eaf70288d52a5d03bfc04c75136770d7cd4338724bbce99f230a8db39b032d3d11a446cc981e2de002e5dbd6758cb99358e1824d5cb5c4912a7a6c987f1df9fd2a6c1b2ee69f0014c35765e006c6695b491cefdecfd9e06d521659606e521a50283c073c88b719b5c88ee3a249f095bc2016115c60ee095b259e7a7ef39ef3a900de37585029f45429d8830bfdd29e5fa7d5e235b4cf942d77b47d408d6b1854873ab8c60365d2004689be7d5b576f5d0177c694ccb57207270feb64828c0c375957b1a4ee18f581a845531c2b2e1b3d5fb3edb4f5cfe0954f63f2f132c6e3595f7080223018179d470486f9560f400a6959f35dfcc06e0bc1f8324bb7ed7bc59e2bb5674a9f65339b6239faa3adfd231bb28e0e622d2d93bec8a6a5449adab1688a15015cbcd4929970b2a2f2ac7f86eab47e73c1fc436ad91230cb0713ef9ac466fb8fb54ab90afc5bba43c7b10a9ae983563ff6bceeacf51c3550a71563cdbd48f85844c7fdbbdd2db01a78eadd9d3d134a65874ea0786b00e887d73d36fc9c1fbde45462335adae05a6428d7b9f108647f5f3a1742fd422101e410f27b53297b3e98d580c600cfbe3d200b15f9a027cbd2edb9f8ba56a910f94d36b9d3a7aca36a2a6e3a9e6abd5295da5cf223e4f4a12d6117cb103dcc76fac8ea9bbd37902858617451ea88a5e72df45a5edeae7f3259a64547e3801cac53ea7f724877364d1d0a2a5eb25b824fddd7dda51d471ac67bf9fa7abec29780d98a35d89fd05c24f8878009b7bf78dddecb0af0b28208dd94c057f4a8fb157a124b2b83f8e83cea6e15b337457cb3ae2ca6308b284e9adbc987d51ae29ad45e8043e7921f685514362f0bde6a4e4b86a2b25b986c43de05d8d18b810cd8a2797579fbf505fec228d8e4a534b0f407f4b1e9186fccb62ed466e7b9aad59940abff531d8985ac4c8b7b68abe9e0bbb376e738513782a8ab13a8192839e5c2e8513b23691a933fa43930b1868358c61844b5075899a4ffaaabe6d7e500fb9999d7f9b8e97ffa7c2b0d0fff3656d6c3bb72fc5a8fe4c43993c06ba1d361c891f93f6144587a3e8cb7110a14dc1f0cccb03ee1b1015997689ed9aeca61ca85830f011e9a63473badd684f1651571d86a902f98adaa0d6b6cf5fc1af71cc6ed4608558427ab0d430a91a1fe6afb126aa716666fb0761d82571a68e1ba487ec651ff52a5a33892d95fff0693d0448387af8a687b9e207148f9f6f0ca58428f10e21453a0690de45ace3aadef6433960f61dab0dc032e6948c3e7cc3d1677e1df341ec84ad0a6e518b4b12a24da0cd54c2c2a47b9bdc2a1d9bb83d1fe27c3522c9351c837ff939c729697d047621b4aba6dd84848a4a91cc4eb7e4f97b86f802a61d1368f0408db9af42ce8b954c9419ebdf192e061e957a0a3e33c7b7b2cda107928c58b6fa3b9152fb14d2371ee30b1298b0c4c2bcee41e00d06cccb62a92ace5b1e3d442d3e8512b521899967677a27faa24745ae9bf0fa03b89d412e5ceee75604ca5c7e23888775cc53bbca88af724d9c363a8a4ec79eb3b5760f54c3859078e6a8e22bd92d18d87815aa215906cff1bf4a295b33494acc4302df3dbbb06281fe6080141f7a05c9ffb32bb2d3cd57b99b64abde7e0b70d4c1019ac269e07a9081547b313506c91adaac356cfb751368c0c05ab0015033d095cc5cf8be1fb0bce05bed8e8059183332efdcfc65da838b6109e4557f4d185c13f1d4261d36f85174ff483df268edbc7e7ba4597f7c90eb9fb5822d00fcddb2b76348dd8698dfe05ab03231c61c3f7f2e4a0c0714ad27476ea5f12eb53336162d0046ee8ca0cb42be0cd9a9f382f703a2cef7462fd996c629097d2b9e8fa8e4fe1f3f09f0ecfeda69e518ef8089841a8532e480489b3650c9cda16755ac63c08e458811fbbb17f7738baaeffe8201ae1125925927860431a0b9245dfaa9c4eadcb180172ea30a26b30a6bca6a2c5157dd40b7a9df8dcc903121f7bbd7f1f9563d4db89bafa10205eb4b9c2659215f90ee94d72cc450e980c206db84be21c86c976b4153fd07f6ad07e2dc67a4ac582efc26e1b92895d4a394057f38c221735ad9473ae5205bffa9ff53ab8d054f2a129e9fe1fcf881fb62494b48b4c603f7192afa11afd276150fc1e9de6ae74b7fa8a61d384d707f471be0551eb0cd368d594eacc3fd1b628094e4207cb9c28dae4fc789ac8ca9da2cc70ad889b75033fc70b6d4b482b04112d2e045f9e084a45ce4bed5264c59a28f7bf77d05e082f37fec8ad1aa95b7a7a01ed8a43de05c73056d4a5ff60d412c71336fd429180c1203bf8522f6a299db625cc4d1898842e212354e06502278d40e18fe6f9cd4eda64dd75538f36e4683f04c382a5da7438ad84b1753c36aec1185d1815b8829d6fffd1b3a6e9f0667915610ec3c15c510d19faaa79a00eb9f1beabb0fc727350fd090fed5f3b2572b4320df3c85cca4db6c886ae6df9d627bc40b6cbb9c289c96656121578c4e083b2773e3496c83bb2fd8adadc4154dc109e41eccb4e041daf5107ec0a86e160960d3feed35dcf140fc0388f9d0a7cf639fd4fa44e09f210ed7ad2cd2794bcd00e7625a4f68c093d0caedf4a1ba0927ebfb4f47dd90355a19bf8461128fb3ed64eb3765ce9236d3fdb8845ec64439f69a6419f8f52b98e173cae6fe1b8c56bd15b225ea57b920d9deb6e6598f5f68fac7fb8baef66b5532fbb1f4ce127325bbfaaa3d28843bfe6bad801c4cce2376875c06128cbd0c5090d6a08b523ba2341efb3fccf10b9917ef13fb3778169063ffbbb9b50d668340903b244dbf2ef8768f6e23d94056c33cc0af5b228c72f6d38078ca9141ddf775ca2602054a41c64b70d9a561d3a0071cc2ebbf1bfce75c8a8baf9bad32af461c74a4beb0a3ab6db97dda988395b2c3933ad734072feb97b7e2e9a2e3ab94c0f7785305769915eb6abf8d4a829fd334572aee948dc7098fe549b1d64048078929b4b1a0c8b5ce644fe54eb9304b462a8b4ffdd90fd73ecfd5705de8e1da868aa3650a2060ab31e255ab32a31e52f2d037654dd24b2df5f3152852b575f98ccff9268b82b5ee2b6976fdf430f01db4ef4d5109f1d5d8e2ed716c191d9c3651b71228d040120161db59a8244c65c3d87ebdfe3084fc5003fe59c67d2d4f289a200e11cb668c94250ba911b945988f2edd82cb32c792bbeb5326fb99a455cf4fc3ab2cdd394a4b60d5dca45ee0d096f43446e2c6a5436855b132e561582d03c048e8bc7063db8cc12b0a67d8e911d1acb39ccd6ab26e9cd9b2ff167e73435ec2cda5ade5e1cdc3d717860ea00d349005b91d05d8ad73c765dc04a9e661f1143e76524e996b0cdb6b7edabbcbccc614794b0731fa3ff89ec98f5a01223694f053921a844bfbf1a1c7ea5263facf71e3e0babc5430f5970d371284904e8e29e4e8bb5490c906d9330c6a585112b1f41d1e446f94ae7412bf92ce63fe3962b94b8f1bdbb29d19f0f350589ae41ff6f303082ad23800142ddb87c18fd3048001c3a6d9e330b3c02f72de65af2363cec9698b810bd2b704d64905c7750ee3adba0939d355d7acc9d37cafafb96f37d96b0fd6e84dc1713f2b66c0d5e9c4b67699a754bfbf522aff51787186f4afb6979e878d90a4dc6671700c287c1318ec7e56f18e1091f36ddaece1b0456722282ae8bd77afd4ce2ba04ea56ce0b1bc1ffe9acef9af6570c5486ca0f4c8b69df631a936d468e2cd1be0fbcbb0e1eb6b08796d134364196a654c68a6c315562f398295aaccf3d21350e6f2bee92b4eb0f5a140074985c1c9b0ef2fbae56363a8ff913c5e675470e49d2585ea59b806a6d7d6434055adfb32278eff2be900e5b200e7b27bced7806d58eea4d39bc3fe35728993a3b3953fe449cbca8ea34442de27eed50fe99c45fe93c66eaf7f691e4ab894da641656a8110cdf500c3a3925f95e1a3aaf187751b41d12f60209cb9191b8246342e2083fd2916ce04503b159c1704e2bf3d5ae56f64418d71fe495d5035529d1fd15282c7c0bc16e2eeb62169dacc2d54e8eedcfcf6ef71dbafd1a3519fc7e91ea8ec29f0ddda83513e678743171df5a078cb11659b9b777cd1d967367bcf08044e0dd0d82f58d64c81343f3d341de77f58e0f98b4b1e31eaf47d4d1d4d5217cda2c1bc7ca666e3802623ef7919b9c70aaddad7cc4f428c050b784ed01decc0569b920339c6258bcd7bb89bcf59f85dd253b4eb217ac95f868d6fd71774cba77b02a2537666d372d0e6ad839f4dbf760db588416b3836bcba6dca2dc30488e1c0941c37eaf3bf2a72577c270a0545e402d3e4cf3725ac98f8260d162c1e4801fc304d4c7bd81f7181cc57525add6db649eb464a93298867957b9515858a73034a752ad08b7900a8a2655200bb9e33aa0b8077923b99b0b157c11ad9653eb6c9487e682c116bc9e2e4eab6998dfb3d248b8cf234269f4e71a8cbecc0816fe4fae8c9d9139552c3dc499a5d29c19cd6cacda2dfa62425e19f836d5b6fdb69bd89c14aeb8aea1b180af42daef8248c26a79f486119e2d94d296d648c70e8e3b7cf4633745d6ec0905a95c9a5b55d9d8a486528336b4f9c9ca39a0f1351b30b89613962ff0854bc41aa22cd7b238e131b224b06b6dfbdea52ef0958ff034ec4c1f72b4d1a13877c66e76899fd535fb61665b9415743a98d3d503895119537d858c341e64577add769684d91ca43a92a7081cd9c42ed6286fede85fe1912f6247775f01c03e2cddfee6adb53947735a88e7c9cd1e3356ec29cd7fcb0b3d1e460f3a5ef8385ee82260c21b556faca0cb974b844aefa78b6bac71e927b915a9053d52b9d5921a48e639445e3476e0c5755201d1dd34fe3bc5de6e3d3451c9dc9c4fa55df90c102fca9984317300c9b998adbb317bcfd145a93b4652b6cc602ad0da537768acd0ae6bf512c2ea6591ff906373b3245a45f8321730a36f816be89b806251cc75f53dd9c7009e4e8de204f22e261f6f1bb488b27d41c551907163a6a059da48b2157218978e49f73a16211c7ef2572138a7b5227384217a13c2f1d93fa142c86882b0fe7c45322d05ab2eb788ada2eed5ea0cad6497caa68f027032efce454e6a35257a65ff6b034ff25447fa3928bc2f5736bc3d4a6c3a814b4d9f386ba0a6243b74c75001ad9e43c14c153a00ed4e8f766cc9eede2f75f6a56a9277a5d55f9e491558c9f8e7043b6f6940d52b7ac37ba5375874c5cd59df9ca170bd5f81991db95458e4b3a1c069f368f2aabdb4b732114820ef6be8cab57e2fbf806b8f3e87a3f1c8a009a445b9ce53a3691da7d8cd21744707ed9af89647dd0409dd39b141b5a03a7cad013b4b7fd8d5032d325266c377218ace0a29838fb05b9546cf0ec93bc5a42515f706fcc02843fb85dcf77978bf9ae50ade1769ebbf220ae83833167688fd9ea58b0a28cd34c24015ca3fe5e0015836697fe43a11e5130a62e66ce58b6bbc14338bedb6c54b2d880e6d1f85a0dd973131adab039444c5e95125c25714983f36037a9a677be8919e1d08102670c3ca442f4085722ec3cf3eddd2687dbaabbfda2414ed5c18be6188b3d53a74dd25e0145529cd727db178255efebcfd8e3a33d7037ec047369c0435af1481d1b083d615777fc0631aead7952a50c25ed9a644964b472e807ba815f1682f6af234c0805752e014e62f1ca5591f46c7fba1070948c4e148e2a56182d2374d18dfb3f85292dd681dc4b5d066981be5eab147f38fe49909b73ca7774ae7202b9d6e538821c1ebbd822dea177f209849b12e894fd00c47af8206b1559c63e0a70f77259549cb29fb60a024c221bc097bd640cc06d7ab8486877209ef474872ec8085dcae8ad6714ad6b6f7e2ee92469c66c322b8d4697c15e5147efe04b88a4735faf1bf6c968f7987db6aaaf29677f9d8c59cb565bac506dad8ec6fce631193b35c04773bdaedb5954b47657112be83222d8f9be001b76d2da63e0179a16ba1bef21b226e8a512ab66ac71ddb1bc4a271be0101e83bc305a54feac4caab4b99fc55a3213b376ba48deff112a2a276fcdc946ff8fa040ebb45e451a0b49566e46ecd4e6078fc4a3c1b819aa25d9876886da203f9f94489988654d94fe144313e2a3a6b152f46106ad15f486753c4e69b709eefe134d7e2cebb43528cb3db4906d176e0ae06812fd0dc19ee0ca2ddcb79a56947fa8f0225302fe1eb47613a5988577b04f7429de4da917721b504ff1369593d74f7fd428695339a14381079ad12ce87891766b66e288033da8567f0c5606cf5f3fa0a5b20177a5a3536722e786f16b02fb608381edcf98a21424269f0bea94972872ce9e9ad9562e906ffa6d116db1bbb68b783fc097a3aa9c8292370c61e7e6a14f2870f7f1eb6d082b826df5e4999c2e068b206015f45ecd349e2a452b6b33bdb409b001744eb867dde99ab4f932c7a7baf2b77c73ce6d6e4a606a317b554bfa96a90079881472137dac9ea2906d05418afcf755c0844e9a6df971f8487d7055df21314c1bab6371b171d3e4aa3dbaf8eb4901a83eb24d8006392bc6445aca2f0dc0ce9eab71637a1512d865b5486e9e15a35f45bd50cad3f9ac59f1cb4f8948a6aed0bf6744394d1299238470c5b8027417931a5e9eba2d8e0c39d3741c42323cd4e4b7d292ed3c02b225660a181f36cc23cdf200d3ba12622285f9baa7d21266043281787c36bdd0091b0cb30331410b686ccee3748874b985ae2992a75b0bdd39ba44293805b683a36a0c126e331dfdd6cec96f3d55f9eb760cdc7b2d0d06d0cd5b11ef2eb0eb41197df5acefc6524f08c3d1ff1525807cc25a2eb0ff5f6af736bc211cddde2daa818da6b41530b62f51b924c7b37979fe7780f37f88b60320e0fc8e9a9558db49418ddc2cd255a66e582437ebd0033c002cbfb7def7060d4819203f8287a145180ed65ea313fad5557c2d1d0c8b15f3ed99e579493b8651aa3842d7cb93acddb0cb2577d0f66e87a93eb8779d65172cc01095ac60424e14a37eb371cc7e6bca8f8ad9ee57db196e374630db3ab91bdc905e5a04c94beb3e4023e25d4254cf7d28fd257c20b6e7543aec84695262bad3b840abc0c237b4f45971c51adeafbf1492de7e1193fa5f489a8f8eeb8cd8f000a57d4359a9aa9998973a65b2aa385ed09d6f9982dd0c37fe854e6763de509a2fc51dc2102dee431388e1887d509654f474ae2feacd17760050e609562eaeb38b0e47daabf03a87e1e7fa86ecf42f12137f7e544fd1f3467b40551fc4016ee43a97d9776126f8010effe08ed568e0015491cfce225a0d1496001fe4737bdc83594c87c3c767d8fc44012b1b41657c8fddd4a697ea561130adf560f0b833894a3ad062322c2d3fb1260340a5eaf345c462683c61203222b17692bc4ec576bd514d9ccfe9cbac9cc49fcd4668b006bb5ba2cb3681e3eab2b83fc2947858f52caa67947efb06f029f1d74e1667dfebe0b612088a94ccd7848b0a5a51e74a9e128de9ade6e86f29e49d69b182f26b56d40b3c85628cd13ce0e345da42453f76943d051ae7015221ef343bd4c9592a4aed4ce7d1241854cd6228d05e1d19462b3c57fcaa9928d90a8dcfd39fb6cc98eb12f4f063d4352f1d80ead6fe3c777ba8f626b3f5de62500958d746a164c38da10cc576182d0a5cc165cf4e83d77510aad35749e67c486dc73a2cd5024b1334a8eadd7a19ac9581fa98284a4e82296b4a76164a85c5d440e0f4289fe6c2c3a1dd03fa182bc469b8965f7d517d88d6787d796a58ab804a053c6b19dc9e77370b73b895e0b68bc7bf7758f7524cc285f01a503993eb4c3e80a26e5acf75757d9e8f7e242ee1213e0e0af71806669e359e0ccaa41705cab73c639ff717c5223b7fc74c532859f034e4c3d2ca359fd9a07de586da3dee4d829f4ebb10d1c7f79e86a4b61d78cc386131b746fd8af6481d206817d55814b393a918aefbd3de212afca90a375453c94f4d3f44ac26dda46fb312238eba28703841d0460591c68026a1d6ef24894e52007d65bb9dbcd78cfe46aa7abce6d8851170561cf0ade8026977baa6b7d67e429e5f7154d3ab999a76f83fe2b8b9095011ddd30614cc8c173c9b253e13abd997749e1cdd515446605e264eb7b25236799a636779419c921038fdb168f8010769fc8537248394f4c218509ed3d2de07a5923d2a8055841378e839d9892ebbb122338b3cc866132f80c5042e730dcab9a8a61844912ff2669d0930f0591f736337c0ac578578f44591566123cc05e54e2d4febe43b33bc14304a84184c4206ebd0ebb906ffebb8f1756750eddda1836bf8c6791b1938b19994b2c645d4c26440092bd91fbe7d6c363eee1a73d01f3a9de5dc72ec436d04b58a01555ca3f5f981c48a6072ad54510f6f550601e6368b987480174f449a1e39d20b59418a71c3eef5ff651fe43a18e50ff354062674f6ab247948ffb844d5b4e8c12db738373c76c83ad0539a242ab2ee5ca7188c1b69bb774a8d5f4170efe9d14187feb40cb78114b1fa0d70c9d3f5930070645ca6c3f4d4009312f8b406d6bf3024e71c6a714dbcd982bfff7a51c9434ed95f4f41968af2f532f17980274b329a1e81b13b2905bb7246c04716d1292727960e1c63535a4e732a2e45c29100fe31818512f031667011ba5350e5547f07b1c0ffb4a6421244969c6d9cf304e9fb051808ea22315952e248ab5b89b847028f1498a82dedf35b5eb754b1228cc6fedc057b437cd188b2d416ea6f9f5a83b3203adb793d11e63925d9ea95030b2b48719d48c0aad27f74506836985f857f9d78bfbbab74b987101ae7f1f7a6eeef0946a3289587d127e479bdcd326456013398e18c0e507d066ee9676718cfd386a7a157ca39e95dbf7693f4b82c8053c5497c735963cdac862f52da65de32c595c8a9163438eb8d6c830891a58e7d5c033a058e0eb589206111df47fa805933fd3da7b869f02adcee644a7751b2202ffd9b247482c244b7950f64b19f40ef62cc0a30b550212f4b2f64841073ee7d35403d21a6128e3e0feb1d1a6dbf7e8ec5f2445cd540b2f3f4ae8de083d6370c12167168fe4007a8925e53e629036a7952418da76462eaa39da13e98b848ec7cbad4230df4f04a67a9bdda21d44af3f4ea6d2012906fad03421a90ffd2989d08435689998e56bb5534eb729bcb6e20b23a388f15cd22c19eef26c21d13a38df77e01a529cb1e8d727756f0c86d325c1b14f79aed3510b198481c64f6d88be044eb829de5ee800416b43b90049c7e9c6ce5f36b1f2b9073e7ec8533a28499973a096b50676dbe20e8913ea71ec146269d900f11e44d7d8a2128c7ca71f77c7b3fa4df10a85d14aa2abe55459dc5bff8d63e228139e7038e7c8cd89597599c1f888df45826a66a16599f67e6a53e0138603e52e256412bc6984d1ee1c6e2f167d47b5ea6ac1eb5de7caccc0ea49e685c1f58614825f2475fc088662adf1f5387aefd5de6e13a48f025e8db7d7f6bec12574f19a8a623b29bcac2b2705bd9d21318ae55fcde6160a4fe8bd9d07ac620a017275594e664f3fef2eca72041c9e80b54e27a564ac88a0f3cf45f7689863eca67e11cf95316aac040e370c84271c3e7d6cc95e462c306f72dac6255d8fc8ba8b232953bb0cce338f0459d2f8465a1b5cddf7dd9d950e3f9795abce3811723c46ac24a7ddf722e284032d6fb923fc2c932d40fcd2f0e758dd77344928cdb42f8c2171e3e6c93b60f69dddf565aff5a2909ee01cce0684514316c7c23a8f5aafcc58d7126f63a2ee3d4ede0718006ee1ea91737cd1acdbf10fa723d826db9d96adae865160d87de2fcec178f1727bf028a7082b4a4b71b64747206b723a057d2a40cfe5b378e65f011ddcc7c9e889461eaa299b3da6e133cc5a8b55c6660136d63d44f3d8198db9d29628fa516a963be53ac3dea66593c6e3652569e591e437bc99d0667146ff92e7fead6c4d157381607f37f18fe3ef0e250ad54290ac8907430886221e8c55b6f80ac9fd789d17d1d168ccee21c8a83a97531a58a90aa76ffe9eb742632674a445fe2d268786bb9ba021cd38defe329285f0fd866664a96d0c19178367e947ff89f461ebc32b61b58fa0f7d71fa918bf90c7d68da1ae5cffec0802b2917b340fbfc3e28bfa55d9648b85f6ea00bf6baa1e85da3154bbd3fd41990e3a7f1c984eba1c8a67a89cbc3e687bcc2a2e7bb2d572bbaacc7e5a9475f1739abf40130f233d5f5298f0c1de476fa1e381ddd7c4d6d315b43fb26726b0a9cc66a5b72cfab68675d6cec0d9322b3490e54f727c4443c6c12c1f5beb9d0a471f236c8541231f75f75ec84c197571f031fb644494e8df2f32a11ea8615b03cb8aceffe6223085743a75dc75a31b6cfa5758ba26b2ee63533f6fbe761712b9372c644d4f4606b877cd094dda54c6f4361d932f10afb6d1b502ca15b441e7aa4e6f3a4614a862e596bf79d2055afa0f621302bc7da33b782f9b86a83fa7fa7a98aae045b8fd072aa7b0abde1b9a3a273a014996193cee961961c2c921c007461ce5e4eafb430a298d6607419e1a08228ad48d27bf4432e6549f75fb4726c7a11750028cadc639fde1e74b1edd54e12f4477fbb068f0c0a12a5885c2203763a5af82859494fc928f4354e96fd32b22d52365be670f1b57e309bed89d7dbb378e5b7604bf5ca9e96b978b055c899b3c55cac2e576ef6f42632d68273053d94a79d75f10eddaba441608c9f766f31e2a4bd5fc8e310f7cf3c253fea1a3c6e3ee73857a386a019f218e6996d9ce880463cf363bdb222a56c7df2267dcf582b7e2a18ac34e1cf4d2dcf7feb85b226f353928763dfa14c0092ef2735d14903c481b722a5ce61b8b1399387f611318ce4b85a24fb7e4dd5c47dd7dbf7532d20989083897ea0f40fc260684e929526fad14e01c0e35f1b99b6257c3e86dd5ceaee3045bd4b200975db8619645680ed2911c3753fa05368672c4e92bd68274e2987b390b92a814a95945e9713ff7c2c40c6ef948777a352400f241d321955fb936e4287b939446466b90b37b7f93a67e605e4d56443e5692cde82609fe0d12324884bb388d2d8a830509d8468c21e13bf664e376e087f7189ce77266f657912c2928ea43c8394e34abe54067f1db2df75eacdc3bbaf5bc9e6a6ee4830f5c91788588127d7fa1f330a562df5a58bc918d69b6266fed2711057a14a3f0c87bb965080a1010ce4838dfddbf691f2bdc60cf0d6df7d2ba9f94a05463063b8edc054b16777a387ad70717fe18a7222253be321a3b2f9be77319c3136d3a8c4aaf838e5d01bda14fe7316f711c8b49d2b039e26d0456acd95e7ba721e51b9817148463b64470d6cedb5edb86ce64fe7a22c7030831f1643575a104fdcf83fdc9d5ea1953b84d970a7e7594033d27709037f0d64eb5db968d97bd417c2b79718ec5fe067e8274a81951a6f3ee235fa232aafd812082e8fc208474c65594c98da85b91cdfe755f122bd671adeb03b6de6452196e2f6aadbd2920522322e417b5d59574f4b2fc467017d5b85e3d1790c8c689e47115f63799c93091b075d1ea634d191a5f9d848f7844afc4766eaff5bcbc7bee5c9357af7bc0e81f30a67c2f85b8c5014295c2c5374c410320e3f2d19451b6e692f462b65c96dcb5a8a640c7327160e612c6879e84ec6f1a267390df2fc4e83db45f1bd6a8df63412f439a93dd72c81a90baea620a80be566ff3fc56649e5a89838a4dc7350f44c6cb1db22d9e43719d0df9a5ecdfb969c926525b4336ced35f94071137aeea930df03b876c85e26af8a3c3d8710f656e57bc809afa04210616d085d392d413dc988763c31be77cce291d658fcee98023dc22c29d2199585d404c201857eec938b16db0e687a9a5f9d600acfe4e53ab8465f7a061b05043dbb33a022d2a95ecaa1609ad4382d34bb7600be6c0a320cf521e6e2410952170ae7326bdc5fde7dafb3537f6bd297736e971cfd89cc6db3278b7f728195174ff28897148d4d0a6b2cf01630103854b803eccdf215f7baee78468357833012d549bf55b8668b1e87972f09c9d63da218b59304e9bf62ac00338b400847cc586ab9f9e3a0cee76219f7eb193507bdf4e7eb7e4003e73d1c30ea7059b2adf832d83d11fffdb2c8190dc25e0b4d06ee9fac8f55ff4abb4477d80a89983badfa32c3568bb816eab39dd4e0110ce8ea4efce950f7f44b9fc0cefce7863bb1381bb53da0617708be317aa66ea130a4d51ca319ea9bd6cdba644d6d85bb69ed95fd92a99d904095471bbf3be782eb8f7280a31a041caa91c7be68f5a9895610d10fa76ffc12dfb06f763cc7bab0ab0dfbac19885a3ccc77f0e76f9b1109cec83074a75f5092f48e1a49bb2eb514a2ecea62b852187323a83be00d59292a0aeb772b465afd297a3ef1f4a7a5f5adbcc9fbd56189f426b50a933654f02bd1df695166a508d391257bd5f1854157df18ea6389c27d781b196911d0c6b18fe1c1fa3183164efefc7a02d797626dd5352b90385e69e504bc4b3880a631132096994346bc5e0de4c96d2cda191b2e9d4ca79266d0492855d78c9708a0b879a30a5ee4df5e0b489fe14dd34622d343fd9ef998af047fd13f2d962badd1447bbce0c75d364a4d3e561e850c577e9d658fda05c29707f1e3413b599a5f299586cef2b071c7c41d40c5caffdbaec6af77af3aab8c66bcd6a95a98a0d135e58e095367c52aa61fd63839301b8cad39ba92c97059c5279c94fd2ddf0351c4c24d6c8fafbcae73410ef7668cf9dd750ca1d3b55fea0f4c201edd0fc8e68cb7fcb8883ca53d4b4b63efb9a9c497a155038ed8b05a840463f5cf23fdfa2f5e1eb2c51a04aec141836e7e508ffc6ffb1cf2a7ba34734926a8228bfb8b729f8a053e3e7aba9385e574b10cf624bb4ec38d21afb9b2177323b88783416caa6acf8f02467b7fd287cc998772049f0dde560084597203413d5a99de995ac102f27b401b4d9d18d5a50cbeb4879ff26ac49a16d0dff064deadb882cd8c30aa925ad35aaeb951c01323e43c054183f3611010ccb1d553c3836c87ba4e1df5f61fe72dea383673c0fb0a4872810112c548719e907d5fe139c60fd37e198f6cd756933f862657a69e549ae7a7011ebd2860a28b099e3edfb2d838ebbd4d7139a01df4603e05c84067f2ff8e57babf90247991fe271a4e714d3cb8f89f6084084ad78c46d06fc613c97068af6321c87ec9085d597eb4f33ca712c8b8274accadfcf246ae1bb685b96110aab98d0be25fc0abc5819ddcd152b5e296b4340a1574ba3bf350e290f5433224aa7bbe8581d3b0acf64a9a294c663ff3486762e2cc77ee5916fa5083814116c215e611c7236f1aea8f6c1a4b50064bddb0ff848a9d67419784b0211e3766fa77503df7e05d9e2d021862a9b5eecb4f85b9bdb4c9815b9eb7bef23d759d5c5c7bfad05b331c42901e91ee4e6cb6a99db88586f9cbf9882693b4e61647a93d1cd766dd26542a49d3609ef3f03f848fc62b41d0e6629573727b6bb858850064b4c0d02e860bedbf55120ddd76fa6139fa8fd42eabf12ab5d9ab5eb9546d07a5be2133a950b0dff0c72c719876a5be0ea6ee76f09233ec9dbf5929bed1647a9486ff3e6146b3daf71f4bba1e29dee827f48151efeed77d246f62a6b9b25dc5c4e306178158255059e8eb162810733ab11b685424b1b6b33922ef63ab8adae9e11e7b03d5cb4ada0056f22e2beed989763b0463c9fded34a716c03471145b7289b6151a0c0ab4afc7aa73eceeeb2839b8fd836c5ccaa0ae7a36efabbaa0d0320fec86bb3d071fe08b8475c57fb7a66df3789730e50c14313f3b4aaede6a9fd147d6939cabb462bd097d9bab19ef047b81b64e8d77fcb80b51fe58e852fe01999ab8093bf13f64c933ea2ffa79f6d8867d52784696b828148f55fb91d6a8d92b20d9df86da3b7a947e3d0dd80b02739b0c53eac47818ae3f450ce5c9421fde120135a5145e60d62fc91a8b917e93e5964401001edf079d5fc5c1ddd42999f121f03da01ed4528c3cbc1ca6e23c9cd22b3c565e2c9ebb56074eb4a39660b3ab3cc41d9ae292dd5deecb151d94bf6340db0dab6d44e96eafd2a3884b679de5a7a6c231401ceb0832c772f099a75ab0149be35cd8e2f1c5fac8f2b71424648c2c83571d48d6e06667a9567d2c39d979d68d454f57f4e620ea7600827f587fb7e61af2d286c36ca212c40f8c32ed9056233895f2edab6576981d2be852175c62d1f3627daf36654adf3022165c71a9c2b07bf649b6045e7a404084688734dfcb2b6e6760851d017a0f429e97cd8b65e671fa45f24db37f4e4702fcc412b653b470f8731989d75ced09c9d32c9bde628dae426b7cff70744680df65ca0704e1cf1c9512d1e8200ed12c9fc636f3f116c3fb4f0145126755271b9e3bdce5b56f665f904ba88c1c61d18ee69a389daf47c96ab14a1566c29fd4fa811485328956c660907f6a6073525187f4fcc009a85142a58c91f0bcc7012dcd03c3f1a7d93008be5a84b730ecd7f2dccbee4234f96b10731564c81ff72b7ee4f8ccda5bbf0af4ec31aea38080e2cdbca897e631a7c89b897b93d3f1675e314700f1ae2bf1142d38bc0e2b545c4ad22fade46c3400451353e478362c0c315e77d024e07d77b0d10f54105a87e87be30471db0f8906bb5a65be670ceb9db9286202566980b0c3b7be01b4bba88440b7dd02f2833e7f5f774578d3b6230a3c6df4019e4868fe9dc77180bb70bc86fe34c414ef16f9eabab56d94b2dcf570a25c671b8f4f3f140bbcf65b7d2df7fcc042c1534024ace8913629ca799a613d1440e3d6bbfb644dfb546f5a95ee6d16edb79f2ee002e0695d37f25e16847c5a27bf428e0d83086f9e8e5cf02161a371a1facf44dfe90bcb7af4934e2edba2e22839891d8bce0febc4ce4f099acb8e6b1371a12d9ed0fb121e98cb59fcb2dc7891e3862e5673d5d7875d5a0754328e8e5c0eb746ed19e812c3b35a11635d67f8b2b3381cd213c7815879b5eefa4efdd27ac080d417c94eaa0a442abd88d44682eb302c229318ec2b7880bbc4aaf024cbbb30aae9d8f066c3e52b4e10e2195099e0a15edd7bb671d5f601dbcce7b91031aa33209b2a40a254ed118cfd7fe75b689ba9be096e60ff05a0ed0d65ce1691cda5d788c9c61c4a4addbf18026dfc31c55dd8bab20304c7a46989a3c49323cd71e4da2f7cfa89f5a388d33382455829018145cf28f2bc8c0cfdd2c712d379615fd2b95ce5edab15651d0cd646ada91064367dd8ccb1c33114d45294e1acb4b18fee8b66c9e1c5ce532b1b30e4220b2330a69c9c6ea12ce6d5b06242286716b54e328ab889ea0e75a84742eeb6de2fa9a149b2c8824a5c3ad321ecf4bc86825bcfe6a9e3e89b618d3e379abdc0340255052e8b78aace54dbe64738368570c732a1a7ec6da2728436d88ece1ba12f75218f48f4dbc3eef89ba8a170e4f6d3d59d834afdc764fbeb84faffb47c05f8aa2c442ec5a5282369a1effeb18bad58e11047dd065b8d7e41304717ceaa560588467271b6e47987ba35dbb31353b73acc2ba076f323a46c78dba10718bc174448b09094618a64af664cee09097932261cf4cf04d5148b5ab291969df6072b37e237eda1e5126af8546a40d5aa2d02420387f799ca785d5f2fbbbda13ef49763e65c4f1c58b9f81c15427f3921313abf72c979edbc7cefc768f6c4412a0324e7fdeb7160965cc8f2fc4a768e18999a2375602dead88f8c28ff35bdd0c5ac8c0f55703c17494779fea262c3d7ceea292fbb880b962fb0d9bcbc9c92b59ee6db63fa447ccbc87c0858019a4f184366192de1904718d7a3b3d0bd440bc8b8881083c4d51d51d9870b23f39fe2c44b272a05c87c11c412bce03bd6b4dac6e3e31c4474178c7fb72fac85da2468e1e0c403f463385c3669d53ac62bb440b230fef8221804f5503f91f556a76f51d03a3f9a0db417c7fd9470f75f9c5a2d6b30400749fc1ad63ecf68c3ee803499acb276417909b50dca2725b8be0334beedda0bc784fee5f32225522f1bcd2c75190970084aba0c02fc9feb2f13a42f236e9c27976462f6a7c9dd91f54972462df003d9f679500376a64e4238d04773de78e6b58e83fedfc14cca440545880d5bf9ebbbbb6cf1149183e8403f5083cf3b672f42f1d2f62820342ddee8da3de2111ff216294070d2d2edafeb5168068f54b023082a8092c4b8b8f4f5b588993ecd5b8e5655bede25ae504e13bc2eefa2a698950e60f7ea89942ef41855e75f38cabccffa27bdaa076b36f6192757cfc5fcb9ae30cec2328926c0f38efda23454d510184c812b7b2c7732468b9948ed4689343be502b4d69735ed0b12bd749a0eb6177a70eb56de9f8aa2d2a2ec9281bcc4c3ea68653be75655d16f2e9b4d857f1d1ae99a6f259ee6711ecd0357a45ff98d20369d6749454142b80fa24cee3c66971f00421c2632309e0547bba380e252047879fdc3f5f11c1ce0da59f292a5ac427663d999aadb53177c6c983d7bca2c2170d88d97f060c7875d2176ab088c2dfd10ac26bb4c3ad548ace01b6e8a2d7658d9a258f5cf61609d37e191fbbbdd7b202d515694464c62b644b421b6b331859fb226573cbd26e9754ec152c9899bf5fceede63615808f10038a644f4fd3fe8be66c94f0c394bbe19c49a4213718e04385facf87dbf183ba8cc1ae766ddd6b1f49c8feffab6733cc396f4d1400459ebfb50ccd3bf40970cc0489663d17f84feb398145a3420deeb762914b4dbd460b04546766f8a8fbf664cb9bf65caed35f3199dc72eeaf01def47a7a730c5f4e50b10339aa429718dc88ca0bc7e8b2b5b27af91c68aa878c759a75b17f4d4b1cd7708848b5a01c2c723be70c19cccd00f02b3c836b1bef451ad9501eb2d3ae5eadf4201173d1bfe1131f5ed9b610ed82e030d65f8cac4761a98b60e78af97a848af52866b20568abb4947f946bd420440e7b831cc41316d0a37965f4fc22702b59a17b89661703252b93256606e620fabaf1a0552e5857f413acffccf7172cacc055a6df6712552282f11d1c1480543ec72370fbb4cacebf1eca42d8c2dd40057d39ddce6e6772b6676c606046277df861d9884febc2a0d80cfb07002ffcb8baa7ef3a4b6e1dce802a33118b5784bae3054a597b527f8acb8c2110737d4bbd327e1fa05bfed8f437ad3404ad966d9abf8bd193c022f11cf48ccc6a14e210a8fff3a1cbb8e7b0c9bb00660c9ddade5f2f9d1457592ef911c26dfe75de9bb11e5307ebbaaa434025218c7c804ed219d7700acb6175633d77ed64101598a8a7252c9926ad12f4736d9d66c4ac40170315aaaa97f5252cd91c50ae0a8641f6f6e17df7670c560b22a5278f959e3885bdfd9744ba03b742daa0f36d0e04d0f3458316bb73f99708d4fca70aac0027ae79859b09c8b648e009204694c57ce2e5bdeb00f8b5155831895896e36229bd50bc53e30c4aa61f662242050381889613169f17a1f652f671cb3f1a7289950b09329eda6d8056ec53c80d63f5bd4f31e05c716e0ed83060e0e4826eb3d58c02ad2c7c1a3120bf1bf7757ade187add12d5a78707c252db526003716296539f6ee2f5ecd6de38ead370fcbe29e3f8586132a32edaae46f8a4a4e9586b9b1a7e6d9ac56492089e3d95f2f49c2419b5777ecf75b1440207273b329a05622bbf142973bb8fddf588d694c293e9ebe22ef1923631a5adf11c5d75d046aa17c4adf47a14b0cd2c449991680bda69da95aebf99d2c2369ade8a2090a013ecda1acfa30cdcc83c082a29bc3e799f86dc857e82edc95b797eafaf423f717768206d08c7f2f8bbe2010c2282c150f214508d398b594afdcc4fd202c5353abdf207f15fbb5ebec5d547570879aa39dafa40afc79e6bece3983b534525653baa0008cf7066b1cdda59cc1388bf6f3dd66cd70e0420fa0aa7218c7f955907a8cceb10b1366247474cef829c873819fd6fd39c4b4ecbe9a90401b3ac27b9bde3c252f47c23408e07f4b39d56f078c0a61952ec7200ca0f7ee587bba2b397f18d6321c0c83c38f277a44b0ff8df9f0a2f35ea74cb5955d136347b28f6c1575729d98160b405eeb850bdb34cacb9add0795ad066bc7517946436d65ddd5dcce6fc92e3dfc1370535509ed6c04b07c3a3cf64ab73402ac129325d44d656351a7a770d75ed7bf1eb20a7e9978c1ef045294767b747cae1576741d4e3654bacd86f4893e712d8197f68a5ec13101f1f8fb0820afaa06b83768168e0f7ebad97ad4186ce1992a4c600fc750c1b707875375dca935dd63ef91497e3d19103ef182225de84d5cd901e28402a7f008d9bac3c1bb6b2c6ac3c5125d230fd8dfbcc0695429e4ac04b7937fd75dd0edffbe5689d252e4e54f7760fea0a34d40ef25ecf260c407ae48ba6b86a81c1a2e8c36846d4787cff7a934097b25aacf41f80bff3c260fdf7c3086b9a5b7683c2c571b582ead0249b7c203e0ecf3d49886f0fea62d9d287d6e95f135a318e2acfb5072ef3089309277bacaa9a3ae3773e9798901ca26070bcd5906c23cf50ff7146fbac979a3f5d7bdaba071bcb3919662d4774816441fd15c6153b756279b54b5626197ae5bf8dc7b623a1b0c0675cfbdfc84cbc83ded09f688d7dada19dae4f61a1971450b699189e062304caa2d6deb8a22d0544f1b63a0bdc23bddffd3899cb4ffe98e0b24150fb49218433fbf54a34fcc0b079a8e2f3942cc4ecf394eec59f5ae66dcc624d04012751d0912015688737e51e144d5555c72b8ffc97cace9fa5978b3fd05184f347851c67de1d4c2aeeecb23c301150bce1d14b448c1cd1e34ee4652c2eb2d1285dd0f2c6426d06702cb56f3aa3820109d70a1113d4da6054f140cb90050862e380fde56646a24c58b5e759f10c2f9a73e5aeefe7c12a144c0a06e2c4464c38239b0b3eb4066801242a7e2041bb48a421f1b1d3608c536c1b88f14d022e954b88ff27053e21a834f6f59f660e385cd5210d207fd1ff6dc85083384439f6759f7b6959d4b61234e94221df5752c1181f5b5d18286cbc9ebe6ccc6d6c9eed8e926aec9a43d4f850d6468acc6f42c914ba99d6f81b15af572fcbe78e44b59db891cbf41533f22899fcc71e3a1fd0836612c3d0beb3851c60e9ebe0035afc76a39b20558a4fdf635733fefb455fe6d068a3d0cc0e7223cabbe9de1c47f5782d7c09e6e459ad184a4fb6c7bf9cac75d0bf2b9dd374109a8957bf699871f0625168bd968e86af9cd2c4d168028db30553091c792df66d4d63a0b2b54cf0ee86b5edee008c8af1c797efd29dab0db20717a5ac522352df4762d9124b025cbb474d1f7fb74143cb9a93daef3d54bb4f7940246bd9ce5ba81338f238c83443592f4f8b5648a8cf91164bea281108494edd216c9078cd7d84f49665bdb95de3ccc3e86998addc3aaeca98f293878a2dfd378943c015cd242cc87bab77f1e1ff30d8186e8f66d50e2e0f5aa211e95bcad352781d569bf09c320576c86d44947b31ea75bdf2843a6bcd1036ab27545c3f8e4d8a843b02a86701d071a044a9748b1500072d1befe3b33d91af840d66408722a96ae87d5a7d208748e850430b05ecce3b64a1198a41d1a350b207733e2e445020ee89ee976a3e27b1cd1350a9270386733a909e7838dec959418509152ca14a35a1a2d99c4e849e31b24fcac903981028ca78daee9d7f6255bbd81d5c2a215c1b4bdbd3c888c70504116c118764f728f5e2d1bc3ce5dbd6037063f1a0207bf89bf901532eb2efade88a3955de710272f44a577aa8a31e308e2e0354de16d004c6ffde2434445b5575422f4f1d165e9322185d3c76f92ac2d76f7e9651585bf405db853aa7ac99764c7d7161c9b2e6b86f1f30333371052df3f98614229a86cc9f6b6787226ce64122fb794505f9ad8766db5517c860e6ebf8aa9961d7ec450d8e182b0a9a8205e2105ea06c26c358d88f95c3d056d4b4c508afe3ff6ba6e2a7eb9c78c069c01b022753f0b941df2354b7cda3bcee546c0c65c1e83a82780745f0c7b7f1e87a340d010abb889e32c273b70dfbff624096363ff63418f852dbadb44171fb8cf7945786dc752ab65f664cc0f4abc966d8c179e6ec92da38d9d3804bf45ea6af16652f94a68977d788f502c0bffe77485838430a8eda68451b2d279aff269cd9f184adda8832464a385ecb1b7c7ceb813ab3a8c5612e3ad5d8e42b59137766b89415d2c6bf70b1e67618b8478c0f37d98fa6d6337eee9909f8836062fcd19e4b9d0a60b19a5882a0fd9655f53fd9ce07a2169b508ea2d32cb954381ee0effab45ac5fa5e4456f0175d41ad78e3c7c8b9df9b0c230378f26a7aa7fc80eb101fe8186a49ac8cfefdb6cd41e8fe0921d9ed0af9a90004ac85892d777010969d1876499c71c052dc7f76f57ec8cbfa1e0ccec6a54c4cfc8634aea1da05aae0c727aeef98141459db8619e66e2c17e6cc32563c7177a0b575c5954fadb16efb04e9baf17627403bb9f0b75bb4ceaaed38171a4b81eff9f773f1c8ea438fb3c71fb11dd0fa134481f6a7fe59e94446e10f7bb8f39ba982818a4804101a11d89125e5e13a47e53ebd6908d94a330c613e29cebdde18199b2fa798bac2f0ed07dc18b88369019ecf12be450a45be9f7ca66936a3761acd3b9b7b72ce7292c7e52df7f003fafd9f4dc8e8bc4aabd0a0c369fda44676bfe53afbdf7618199940100e298388a998b9fd71e00327fffcad80c50843f91f28bd72d32ec40fe71457953442594ae323362623c82dff04dcd3fa574b22bab4d5ea029230d05a4a1d0798023f39a3579724aaa0ee82e40d823497f2e6a5e114a499c6c893a149df8611e05c9a7eb9c1b5a6f1606a0a1c8d0f2176772dc96172201714e1248603a88a478674c43d8f25e37348e60c05d199d131254d7f899c8ab1e4b84a640dc8ba9d864141be8250b862b6d211cbe8b02e5aed826f965c908b7fcc153178ce758151444a02b6f64c5e01ddf437f3a9d6a738bdfcc6abeec346c4b4463b5b5531b6f9455e021ba2fa01d1634a93cfa2f676ca6e8e3400659388d6ddbfa585f8ebdc73cec30c22d27d73efc568688b35fa3ec8fd2389caa09225a7ea8e62631e9abdc231fe53ad822f3f8357672a2d4c173da450631f5250838d61a655dfe1874c215e014bf9942dd750d56bb0cd323e4f65245c1b8d6f50659b27aa6f0a19fd3c4fadb11f6f2d65e9e1ac2d7c95097e2a719bdb417961b5200d4ddd178557c4bc84219d2b6cabf6b2aa6f38ccb16fe6720311c1b6a75b439da8150f079994396894541db97dc4a0a965e6606a6bc6041eceee59fb1c5ece88bebaf9079ecc79f0485f82eb2d87887d7f343fa6f87567a05cc151e84c5f83393b664c40eee453ee148100ab07215b276da079c13387f045a9be91558f97fbc708b145249776224d4acd133406f813ddf3307f2f33a8731c766c3d9dfc1a0c366ab15784f457fad247f3bc95492503a58e5bbda788dfe8e8ef64527ce629b58a033f272c94afadb637320b1d56d72e78d7db3c47d2bf128ae15b3eba1659a20ff1ccb030150b79a555977ce7d59791e88f48ba37ab8823538419d3f1ee8b1bfb4131ba7311363c98691657b44e5db065626bc464085ea67d5cc4859a8def40eb995335778ae060d211ccffb075648b2c4e6006c66f77953ab01f5b27c8be1fff860cc1148e58a7263f0db6381e43761ba1ff167c7e6d00e9f41ef835047cbc56ecbd7e629103af33e8fca0524d243816ad8ebbea76bc62607dd8275e6e2720e1ab2fba37a89f9d2bd5265018e86ac3ac18ebdddc5a6c26367d05decfb8685e740a6c3a772460cc73c05bce64473aaeccc6e1a28ef6340b1bf1f533a4b03100ad2e9e907f8bd58b51f186fa4a91f428471a1db7d3a441c53330d0d69a4301f91e00de2f39ad79cc1a659c57901cc613d87b5f365c3623c159ed8c12e467c2ee6b788cca61fa555293fd13609142baee7df227c1654bf48e27e0df0b6907c2fb8bad8c9d64cfecd592973a46652e9866208abb2717ee6222b4a396983fedab42cebe9c83cea90dfdd8ea52e5b5f8dc73b04d8d2e0f22eabc547b6566cd1d8300fc0f8bdb8387e11b506a1dfbddea2ae9fb7d9bc3ebb68487ff2058f28e83618f06b2bda2c165d833858ca9e4a378e3b148e2a4d071e34b253cf9fead1808b1f9244421c715743c4df0ebef9d13cb5bbe4cbe5f40356642b0843ff218d96b5d457e2d425a502be5406862d22aa23eb33c82071f5fa9bd5374f2ffc633b9a812aebceb5577e58ff9affbd601404368893a2dc61019336f8a1d048315ee9a69a3cb068e67e3ae6965fd1e9369c2ef976da7bff8ded63fd8e958226af52bf0282191e1245e92b56443ead488f7359a40989fd760fee1a941348a04789ff9d0b3d696ab18de5e040dbe58a359660aa13d933e0154864623ade6497e5952f77c557f6f94c53e53e0555a6555dfca2fd54890f647a932aa130daabd3fd931e286aca9d5de61921c47574f0cbe0f976ed51b505bd6bc6cc40601c0d2a614d37724900bfa6108c0fde68376803220db82384d72326dc9deb3573a75ee1849509e431dca831ff862bec26f234b81ccb29ade4563b8d790599891439deae9e173d895b03867b4608b70018e9a71ba908a3308595d85b8bd1a14fa0716c9707e63f066423f972b25c5a31add4e323274ece96f1921e41b3500660a062dbcab99134c7c648c992bfa8b9cdf03faa58cd81cef2b075eaae84b0d5fd83b33a812f0afd67c6d6a2914bf64c0d5673e3a9e44d2582e87d6b12295d254793191088a32eaadf796ee634dacbec92873c45067efcd69ae8510dd1fdc5c808f384ed9b00e41a6cd8ec2b7d7f8932e810efa7d1039ebefdc557227de2c677b1088bef7a4b281e7af515d475ecb2b8c17718991de3e8311deffc705c01f6cbdef82caeb2bbffe81eafd958a1dd24360bbb2b405fc78c6c61d9f0adbfd3188dbf22378e0f1827ab692befe8113c029b7d59382470750e2e3f6c80269bf5180cb96ebe0114923532c83c90575db78a611732a1aca536efcb066044e744fc9f44212550dbe0f6d35b38e3cf6a442616163d85c5f39ff86e432914f7beb1b217eedbb1ce85e0a5b02f3790929c1221cf40e521cedfe52aadb098bbf50d41100f58984bc90406b479ffa8a8e1332cf634ca857ba16fc2324492aa7a0712bfe7c6cb29640d928c34f6dfb39d0733b89b520fdf086e532743cdc5c1abd6d663a8fd57177a88e725d7d0e43b0f53f2e836f51a148317a1713caf87b5a58f1ce6a2f50d5ecfa1f2a52bb75ab8bf2490259e0875ea977615ff654b61c3abfa39dc5d7d0bb9af01501918afd53b809ab7d929a5451c564bd1f19fec70573360e7307942aedfd031b80061c34e6c4e01c8b09a6c33ee1054c7429ab58ec7275e68fc533cd3c234acd707fb8a5a685a2e34ae2d37bad25f814841a5ff3d65dffa9c6723eeacd6e5b57d254013415af7e9cbb38130ed7aa4a4b6386e2a73a6ca5cb0102366756a2c6c0a8aec6d347b68e5b9e4aa063c9e5b438c900c84e2d0df81e19c3c3635ea25f630ccd15b32ad38967e6923b634f9e11327d73c1218d8bcb951623f457c53a8ba20186f8646decff980199e6dcbf3654b83dcfcb50459b1dfd9cc899a683fcd28f055c692eb30ca3dd62c045968cea43b12e6eb100beacc4ead7ee7d4432c54a906c5f1e3db2a276a5b12258c31e97f909f0b0147858a50aaa587f6dc9f47747ae235749c8d029f1a5517d7b560eaecb811c0ed93774616e6c0e50ab19113184a068a46721318f688d011eb3af23a1c5c81f4adb1f1b1d9a62944a549aed644e72068eb56bada4e7c6c137a158954ba4900fae683b3b9f384d4e571d846d1a28281293f91272de655ab9c47e45dd84ff7f1467ae3ea60678d1e83b8c45a75635d3a4398d34d9291f5a110454eb7ee84bccf5ff766ac7f5132293022946ae7d048e94172517657fac5d7c4ebba1735ef87f94e6c5a776838c591d6c3844e8e0485b21a80c02a949e86f99960d421955cfaccd3c6d8395aa47a25e805a74c4038d16a94b7867494a2d203b8a2b46b2211491076d61c4ba2f87925463256965c271b22a1395b960975d885596f9bf89ba106cb297c46fdaf7b14d55a01e010b9018d3074bdbb2216702a24ba4c29d9f8a0e14897cf213046637a7ba5f0a08e80ae50ce4b6237af1ad4f86ffa6f5402bd674739a600f5b5a35b4dbff111d2f9e6b1c3f8bb55efb4e9cf8c47516b52bfa84a133a95ab165003b507b96621a44c57864e9fd71c328c2f001a4d19c4281819d7d2c01c785d03fba3fe1d71b3d3dd1c839d99de11664567b405951074a557343d57b76c6e810edd1cb4b9b662575ea3e773b1e7e3dbab200b5294e3311f02b198e3b4af7b115eaf1375bf81db5fea0b2fad77ff315ad4001469d784dfc102cf11d76d000eb6b031a777013eaf83f442006976ec728ef4d40ca2f914b1d5ed1493c34703480f343247d5e879f54cfda0aa8360efa0f0df4fc6f9f2643a83ca7c6e7d6cffc32034dbc491ee9a7f3fca5a539980e736cd37e1cf7f774ae2c1896f55753d62a2dd9eaae5d0da10b25a9ed1b4a8fbe721eb353e568abb2c99663be197a5d8c96d81135bb3df4476289729160bb33aefb1c97892c4048d47f44268d536f0e0aeb0f8b0001452e42432484b065481fcce6d63339b23912bf92d3276744f39d1afa84ec5cb6b1cc04c387098f40e078813cdfe29636ee8c6afc5d2093f7a9b23fa21cc792b4210e7937c2d2eb714339e39ff2644b1d65d62b9cab2a99c22b13940cbedca1f9bc5a26a966dbe8baa061d1f8871c01a7dafbf4b147268e6dac143456529abbd1fc75b3cbc05b859290be3b609392cbe65f6a97345148d7929f63a392b6dd9ec2ca3020d5aa52148a56a57eca7cdf86273f800c1072335e700e0b4a2a8dd70641eaebf205f07457a1885b7973b7b62ececcf4a9932104b80a1e2813f20fe08429cf018cb128e9cf4b3ffb41760d97eee30c73feed13ae392ea6b7341f0bc3757a0519987deaa17a0a2b4c957198d5d35144c6c5fff5b03e459ec6b71c7d5ca2979e281820072feeb129db358f3426eee8969729502eeccaa8b7b9d3d9eb8d5d23aef411b1957daa42bd36dcf79cf71c1bdb2e602c74c281620b459bfd789a37b7dc331e01be1e19510c6ea3312490e6b5b7a45693e19f266ecab5d2ac55eedf538543c41f548e92b48fdb74f35fc7c66edff22eca71f383d15e1319bb85b2b3d02ab5970703d95c13fd6db5f2871c95fe96758b6b8ba65bc0a756740325d2b3ed09111f25dc56766f6d59907d07ead56f74dd46415a407203f886d69eea22e73e6a64e8079399c3b45ee0dd00f62f25abfc4d9deb9dcf1172ffa32272d72d48b4aa3de80496745e1e3eef5714f1551026703237af1df2feb0bbe280835515613a96d3fe5c645f4a15330115bc01ba765a880e3be19534cea83a6aeaf4089764fb8b6929000b4572dcbe9ec4c9db380bc2033471dfca45508b9fc5a8e81c977b61d6e33da33d3d5a9f3d3e96d5c61a38c8b18879cef949a06a903f7c09f952d731e25b3491c89f22484ce4aa5b232f8d4c9fa3b1089ae88d4519c4a97514ba12e998f0163957501342dd606699895056c1a8c6df340e4c67fe100d080eaa13ce1af7637b8a14aa41c82d07ca9e7cb7c4fd9e918d8e7c2c0297290970fdd0539c68fb2ed10e2d05fb2b377049bef752d96197ecdb3ec267f87e4a1c3be0a3ed66feece8670a94b4a2aa0aa9985484b8c2b15d7228222cc819e3fde1abe45a92cf53b06ecaa5ffc1c837c5efe63a7324e9793a5d3275339d6f68907e86a61c7c14bd21cb7c0eba3e1ced8af387d1c7b2312ac4cfa2fdd1cc46fba4a7c3bddb717a04d8c73b48ea6ae04b6799d4729ced65071add9b6669c4f0117b158f9ad981b096da44f28137cfcb0d88e9d558e1fe5bff7020f9b5a277cb23177d2e316cf022067404670f2369e58d4c208862dadea2a27d2ac7afa453c5dffca86bdb4d51a523298cc24f244f40291c9bb7ca85db206c6614b611bcac6893ce8cccf647f4888cc8483093cb41883883e5eac07390d8f405c0592ce987418ac6998188e6251c6ad9222f1a305505a499a7500a28ce4e7ee8608857c0a2d38d8361b7c11b6fba1545dc20bb207e27a6f419cfb49f3f6a3571c53a222a9698332e7db682f8e253533928c176550117ea01b9cc931dfdbf06cd400860004d1f679559b17d93d0fb3db162d14aeb678c642ee40b3f99ec1644b85630cf86a19dbc6d3bb5a2b6555bf05e4c1a698d37e53d4ffd71571ee88a6005394a219d6788d232578d0e0f2bccc7f13b41b95bc2e8fc90cdf8552b4eae6d1b6403ecf204e56c39db03208bed85c243a1effcfa4a89d7242281df8145f813b161ffe5f42f24b0a4baccbf6a6700f3932e2ed1a590759f27c352ffe99da39ed5e48f11380be31e627c3cdc1d25d0c7c944942147862c0c6b9c373c2c3ca3abc93cc1ddaac714d4562460967e9b9b4142bc759e33fe2cf45ae263006e9e5baade037b64e3be48118a3617b74284315f09b565dd40004e5c6cd39bd5a2780be196e4e0f54f08c879b2e32e881de6ffcf63914a19cc2dccfc6078136a6be8e7fe5bee8e17d8236c53179b9d6c18d343a0f5b015e6449193ed5f7d3d2b65457b3af759044b2268925ed28486d11e8b0af274fc07b89325ccb0da18d44a11c0e9a01ac54b23aa1914d7d47649d8a3676211e78d76bceb10d4d035c382da02c48420fe49a6f87cf8e981701f6705eaa0f690efc1965b86c987f5669d3263f960568d7dedcd905cad451747a42f48d886bb4eebb8bfa814df771ed18c3aaa94fcefb1e18bf647f377e632a4cfabf5cb27eb714b21c546679db906582b77feaabf11a752cd991e3f48e3a11a2b6e825a0e2bfbe21ae9971a3de9f4d96a5cca697b5eeef98609208e26b0372c2ced445508f03cdcb3b0881db203226b493a013e8b7e8068320dffba4e5d6866b41518b2ccdbb434efb89c235e9d19b5fd8a12664f84c775de18ff58f78a445f51dea92f2b9186b8192dd3792a2890fec1bb40f7fe122089022c71afdc19bf77120c8b75dad440781e49b2fcdc80c69923c3562bc0c458fd3c8d1f1c157a88db8b423e812d33712e9f57dfba9a0c63d829d2b5af603ba0431580a6ea740ceb8d35cc1e6813aeb01e6ef31e6fc62aafd9b4fda0c09b61e3a64b6aed50d46887bf50eb54f4257e79572d5edcc03f8b19aa508fdfad99ee88b50e77a4871a8ebcc5f2d12e676528f962a0e0e06d5ebfbd2ae07887c197c24912db686d78636730e3096eb50503073402d8dbf293ff0d6a0bf949e9b26259e70d2dc7080475447239db515ab11e02fa4f5a8b85c75392ade2882979118f30ce9926b1a7cee0190b097ecb9175c667d3dd357f43b81649b24b1832045557e30f724d220231056d7875141ff8c5e1e64d4d776cc0142f659dbccc16187ea0b8a5e60d28a4746875328335452bba5395c248e3c366662d9834abab5554fe941780000bc482fca16fdcc2ae305bc87d105e1a8c95354ee4338629d78430caba94249e65a23983e45b9d79c0244f82b1eb36a040d578425d17cdcc87d597cf658696e90255beb7027752c6771ae47d717eed157cf631485aef986e80d68a1134c03bc84132f0e0bc720ef69c7a86330f2c83f3773ca89c95cecbb5849fdc1f33e5f6a2cb725a30bd7163c180be900faa783701a9ec28c45eadb91c23453a5bfe94400ad708b43a24e47cbf3eaa227092c2085e0cc1b5ca90ca35fcc0b29fd4a6a7be40fe5eff6a5dc964d7a2ba59dfe28c829397e59d07141c7d75768e719e8c67611af07535dca0e65f66636e0b6624e93e7efca5524a9f3cb5ee996776e8f7b504fd1cd56c381b86bdb881dc277bec09d7e3ae31acd2e9e454aaf373a9d67ea127c1d1e42c837eacc449b9649b33ee350da52c0c45f8ba619f107c9824d68140bdcd7cb93514e2b61c5fe3f6fd75ab2ff6ed0dafc4c20bc96d19e44525471807e7f62af551755d16529ea43c97ee4593af6850ea69d353ead09bf93a496d844570e3e4d442c5cd4d0f14f884b9a8067de60a3176ef9fe43d5a0a5a344afd3f3b762f90815afae0ef610ced22731d8411a7f9abd35b2b335812813f881e0ea32e58c1e315c814831ebd1955af14e496bbc02c5c47c25e95e1cd8459c6001f6e84ae97f32dd1ff598bcccd4f0380261fd92e6f52905f9d3d9aa7d42e9d29c294986c72ca700d8b941a8040558e2f1f84c249c463625c526b161eca7b7413c8a1e4d5989e601613eacbffd939292180b955416e2f63f6e285ff55785dc2ab72eb9b7565e69576ba458e9e007ed668cfa3f2537eb94e64e2711dc63d54d62ee8bd94226754722c66e821df4ea5234eabc576388be2c94a70171a19161900e641e02c12ba7e1d92216ae1cda9486c4350173ce23290c4222e7a71105403ac1d7880f09003a08165ad7b37c020de2fc3c2b3a85b85e6be7889e58fc4b93b7ad2a1c3e89f4f8154507d79b7a39edcbef4ed39aa63e0b91dfafc0af47a989998823e7565716151eb64601646f345e498fde85800d325c52cb20dc94261d2e42450e812631c78ecf4c832e355ca0191c2e60ebe862841bfd30954ef6de63c1a9231295d9671891edae5f1158269df939b29605c3c9ca8d7303d61c74297e73a09cd99e8c42a5ba6d408df10579a5ac84a4d2af8dd1ef7db9dc664661944c4080a2850b95cb2fbbb2ee8ef98c00d3e0b713ffe57814df9c255ad33e3a186fc372d034137a2939294241eb2da9265e82199cead394758ad19ab26f8654897db8cb53d1884b7a1d80f7efaf6d8f04f8d3625fb2a626d1f6ddcb8d9b63cf7584c4a5ba2f840288649bef33682af2178f9696393de8eb30d16933a6ca4cb8cb60a0e25679941802d31d6f2979fa86578503d334ed75a73941c302d4d43b97968909989367c595a7a9b1704a98376b26a95f1a31218e7174e19a7df32f15f1498c725658f4958f5705363d395a46a7bc234e3f3d05aa875f221bae62adc1feef903e3c2122ff29e8a6e83ac9fc81c31424b93e40bf1fe37c883fa25f52ace9860ef4670544156264a13fc20cb07c2d2f863648c9aaed2aca1ca669bfccb35a51c423b5f1ea0685b4229e53966d92da0732c4555853f54bdc2fac1b6bffd045d2f970775f6fc166c958f7821c74b74f6a92ff230751ba620894e06bbcc1b99b9fcd5d743ea3d52d235f699a645ed313017b1cba71b64b841e580c29bf11706347ad993291c6ded39532d95a7e9732d570c24d25a4e264d2f586c2daa37d75bfc6011a1a0109fac10edaf2827c9187d5990d76796d0a89099f1ea906f35f1f2bdcc886d67e98437359eb746b5554a18287f26c6c5e7c2cf9ff0c0c8717a2e91fe7eaf2a1da406e144fc7703cca071675ee9bebdc85e9f92f2209bde782a584205a0206d6681a5fbdb9f2b6d97f1822dd80634606abc2a9f9d668d5df15e44c95f5be929fb74e56c0d35848ce26b1a65dd2f702be8b5c5aa42476ae6f5ee4fe112b191f6ada50161777e33d000d53064a8332e8e9f7b1bad6906acac8fd6973e02d075d9aa96379aeb8d5c4bdd3305ea86e532fa40d6aa61c5b1a7856ede834543dc18f4a7536f4d38cca031a73321626457901ea93dd4a92853ef73bca384a5f369a433cda191b061129553209dda828bf0402801380b0c6accc246dcb39559ffb2fb33ec26296ca85f1caf1812d256b007a0975a5b8e365bf137d9ea585981b40873ecf8c2254a674b0b0580c2ff172a8abacd103d8f41dc220957f0df3638324b46dc18b4d60fdc64f24ed9eba3f5140bf08e5867a94a53c3f59b5021f7c23ba03daeb803f73474232287188571d5289f93a8fd37eead28fb7dddb3cd1fd51d9e58968d9d8abecf3ad52c75f40a6c8797273f8912e5e75ae8b3c404057efb25cd91a2e638d08deb0c96c8ab604033515e71097c7aae1e253d06a0865eec0d30a485c2e4fab33e8da2fef5dd6925cf2de390948265c834926887c65c461864a604036e441dbc71d461c90bab007e9b4c749e5a06aab23d2a5f51cc269ad1f5970527f669911a30320c8af7d53d2f3e8ef5f77e0e5172bdf4a00ea1b40860601f7d94aca387b704e66a384480e2dccca611f25e6699bf11507813b2337a4bd469a35c850dbdcab903a146a4ddadd6a4a9ab84423db8c6f5457a087357a35b56ef7fccc70e2b64cca618a4116229c30ad26369637a0125863f0c78b9fb371a9ac937dcffc9305265612ae36c15b23f88d0986284ce6413f204b8d5c021461527a61426d088f6a0b4b34c0615b2fad1410f5d51756ac54471bd0c2765201a1aa9a035bde8e4f726c10fe4a3f6e424c58f7bc81ea4746f4185f73acce388fa76e9044f15d05cd08b7a17b1ba38e717b678805631d7e006983a8d8ca6ae99b25ea23c1fc213095c16a5c387d69d2d397c95b37e345a813f35b08ec9df0e5ca8c7aaadbd528ed14744fecf88b1b0d15511417dfff0674fd46ffbff82ebf597e1dab010028f25eda5bf32f6a497dfebb0ca4864f270d20eb1495c092baa853fc2afcf0000db189883b581ab652e8dd985c5e7741b3d5bed0a36ebee67edef6377d1b0427323331c7127d299855c1ed629b4f9d47fdb97138113c8dfb0b2b6b1b25980e186bc81f0860c9a14564ff95c0c8fca0278f3706e369bfafb1097f18426ae9634c4f117f958eb2ece5fc70a12caeaf3b5b518912ae8d8836a4e01e7e230433da5ef5e74a2cad2bdce13cdd1ca50083ba73e06df5e2d56f6739c0386874656fec0602f6ad7c6e346990e243c71b69be7fd91cbae9e509e6d003af5d17c5d02d4cb0280bdc28ec4648c7c4e6ad4cc223fab0deb8ff210e16233b857bd74c747b4475147d7218ec6f12f5a764e38afc4cde5391dbfaf9212d19ef94ab3f06fefadd5cb83017dc8c32dcd444bb5d183585679928990aca283120a524ad54a4a2318435c6eab65a2928ea4c9931192d6763003f2ad7fcee7d3433c6f12fbf638c01f645109051221fe0e67d883475f682b78fd4dd81def749f24f6bbda3d9eefa45aee1a88c6c64dea9369c05a6c9aa558241b4b5c2b1f019f9d4df73a60c6e367def2b6aab92ddf91f8e471d37b32d1d430db4f1fe2fc52216b89f70225156ef5d039d51b007491023b8412be91e7c38b28b97f7dd1a684a8495959db64c5105bc0d357e4356f072c4ad3fcf1d918b31ec954e21e745879a13aa53110310b1713de7c120fe6ecb6ffa59981f49660d31c044a76d0ab47b26ab7cb7eed259c32f3143a8bf9be96d727cbb99788639acf5b37f58c08b15fc89e1cce18fe76920d618b76d0a6473b65b044ff944e2f5926bb796349b6dd395f56e3c276e1c0c32ee7664940bec3134f6e4f710b94a732b56372b396db990062c3a37eb20c4349db8529d372da44c6f52cfcd66e0e304c2d7782fb0548c86cd588a3afc06c8fa8f9223ba9e883cbefe27b8cc30e668414f9c6c2c0bc33a90a24f089c6c2a519432f240f192776111f051c9b2fd1d969c284866aa7336953bbeba048ccdd3b04da8ed66c76254bf72fa3ca77cbcddd9e7491754747fbb2bea9e1fa382d1a1fbdad34175fb3bc1d57476827980cd6f620cc9f0b3e2ef5c70203563555cdbdc277f840679905915616711b670e6998ad7a976ef1b982e29c8fc2907967453fbd296748d2d876f2ca2ee77f81d7d73da9fc9cdadea7c7f9d694114daa3a17cea9b6d9b7379a8b0ed850fe9dd8f1248607f43f9ff55560ec14d2b70b3f043e51506c85082a13d5a3beeadc57fe605de9919c88a2a199ea91b818c30c84c3f199443d3601889c0f9e37c1ce2a2e64dc1620856321fae402e01c003f1c015ee4e85c0a8bf6dd94b185330212ab2ecfd35d6b9ec2e29365546c2d6ecb097a12949efe90dc98a6febb529d666306c88d7f3ad5740d43d16c67b670227cb2e5c3a64df1a1e0342bbb7b47fc229f367537d6fcc29627fc5fcd12053f5cca48161f69d2e1ddd5a0754c9981972bb013394fc2dd47cbf9525732dd657b9e38856bed6e31a811ef4dcea1f707940e6d4d4544a2cf4cef3d2420d44fe129b5e788d38fd2323b7ab8dc6675707990a94cc65c24fd6c4342defec8820eeb7785355fb81822b4c434d9ad802c1f6bfa3848a9caaba4a4b3f076c58f6058a6d7632f1f9f1d5d5bdb797da0e5a5649b3ad90e7a2c00ac10635ae96d54a61f1a6de5e22b7eca3122bc443c40a8320ada1c5414283937ef48967696763add0aa16c6a63245ea2ffcbb9b90325f86ef9451d7846f661084d104d91ecd544bde8f566c8f99cc3d5a970c8cf6fd72a3d9be7151e4b528a54adde98fc919ae1f7316e0027589e8842fcf330b5fd1137c7dcf9f66819b7f507749c741505dec999ccce1de89bd40f10287fa4e1d933b59c758dbacc771ec747a73d37c5ec33cedd977d5978966b2dd51d7748e283a228196c0f795584a7830eb07ec976b2d88bde6b9ce87abf8537cadadb09816a87c400e5cd9831215804b0b0c873b6180f10d015cbd22997c3731cd74931981c99f93fc156873d7bcf4f2a993dee48e99778d1887f959b1d75695cb3652a9a548b72b5e31f6a83b0ec167d1ad855dc5b77d6e4502e048fdf3d0ddccbe2834ac470e78811af675e54003d63109ba81c9e04fe3da50a7ae7c18f40c0c2c0c782c913361f829a20ae414144cd9b04d0a0078f9a4e12f3b22cd7cfafd6d18b4f23d2c27c2dbd9d9064462eeb869de9a61e9f3a67dc147f9a52c7e315996371265b6358a8721ca12dfeacc6d2ef248c5753e165c561cc8eecc7c0567f3fb2b07d24375f90354124bd27e9b1ce43334d6d3d32945779dc812898458c25cd7417b0af2c5a8172d8f23cd7646e9433d283a81141a1e39fda9ec142eaa11f6e97838694c3a218953fd4db84a4ca44da7814325247247089589c24bb369c41c594de6863627f03fe305a65d2fa97d82e7e6f8ad81e1637d5d5f8126526bdb055fa834918be9d3a450d8b2a6d11a6ff30ee3bf9ed91d2e46d3c2c98f6914c0de59f7ac48e865f5cd9049e7b4510f3e4eea8925f2f64b25ddf47a5a1d75f8b841dae894d6582a26a88702fdfbac0e1ae736f56f0349b1a35b4f03caf25c5fed359f9eb482cef119c4519519909ee634fbcb9793a7964dacb7800e965ca491b6678feeea2250843922cd6d171c24d0937b1360d1252f64f0e14269cbf75b75ec905900c7ac9d90154854b132bb96d2ae82406785aaee186e280d26514d3f2399fb28b6091e21f1909de46d6428463125d32d66f013f71126a5f44122fb4320d4f83d2b5f356731bbe059ebafe907efc06681134164148a3eade287ec382b516fa652162485074f0ae602099a5b5df64d8aa5751db61cb2f4a0e707bc7798e64a759a816476bf3c3c3e24275c37c2eed0aaf4d1260f5f28b8a3c0848fd4ac56ca1933b896628444e5e582435d6ad3f5e0e20ec5271c774b5ed9b32365b05c52110a5c5a9f156ea096e0a0d3fa4130cfdd0dcdc588e4deafb20309b69346448407c4f487ce5f9835e4e5d703e69465bb13fccb0c521f9b4462b65fdf63835607f5db364a5e6ed9def829a20e7c1dc6a86a78df0a73cd5d5b18bb5e9776eb342a7cf18eb53da42289400cc41ca752e926a3a2d934cde6d9b6ac2d67f4e8d5f43515c9c7f4072e9d76414a06b3368d8b9caa26abc243761fe665b511d6ce0b835604e59e636017693ccc3e9f404d25e6e375720fe580660167c9e3c6529f8f8de12a6f0f48805f904ae100e0735a19623c63e579956ceaf3b06456e19275d18887b00fd095bb7a5ee9f38f8eecc97cc6043f3a6626f6f652441209a6f7d84f1be7415a6e2b3ff37ccfdf6074a78783eaeb03cfcb3ce993e794487f96498abf7a7fad3ff2f3146a6ff281566d03c574015fd851180f8e2119f9dd2a71bd1186e4ee55311356689e2682a3e0fc141da7139a16edce83eea03eede28e58bdf157529664174a14e3c0473564fb5cd190bf5e3a1c93f102154eb1460e7e7ce81b6dacda9a73ba1eb3d4d92636b6bf7416e2ac2aa91d0d060a375879416b237a7e35d83523f7251922a7717f8f699bf7d4b0dc187ed0b18d9f9e877c0ec2591d5d5146a2be5c6c9f70a9c25ed3972a8b2911ecafb81716398fd8c892b270726442b630536d4fd5150113463a39fa961c1ab6815b8acc2a4e0b235c86459c48320ea7e228fffe1d84723df63e4156906800ab33ceeff9e02094a3ecd9c7ce590abd100a77f5c2dd19127d8f9d250da8b917fdb1dbd8d9b4afb9a0e339da45bc7a2e6cb1d93436993593227f79a90a8e860f7544c05356782a943ccc684abdef5a4994f89da594e626d8f7cea8ef44c73d00ffb4e3c7e633db40db324744feac45b2a2f340c3bf7a032d430ea2cdfc185a61c5ad9cfeef26c0f7e2f0cefde90f85ac2bc541b7f7bfe429f3c6fac4d85571c23bb877613bab5eaecc66b98b7410bb61bd15592cde63510324cd43f252999547c138b91d3668581664dbf09eaa2dcc900366805a8e4ed1c5ae04ffab375f800652c6b2464d0eb4bbe57ca403ade70a92f5741d66eac5bee5cb44b3c25e9f423d764ba6338d6f426f9e2b50d4b6d70983240507c0e47ce8b685c748cc4bc34ae6403e86a91421fa5e6bef4e4bc6f45e4983f7c5c190ab3233f6280a153fd3082749289783ddee9165aa648279f3de5ea4439b2be01aeeb1c3954a907a001d93292fe74568af12e23bd79158dc62163c2a7776ecf19247bf73307a858b088a092140b26034b65a0ff8c4a80f73896c72ccbd40254dd4fd64f7d8bd6544434a429a91cfccccbdd0f7a250290f0aae4f7bcb6f19308b82111214852f8b8c217dd6cb2a4d1f28d33ab670717a83db3978ab9fd27e94005056b6b0adccb0dea5799dea58ab4d4c0830caab9cdfa4fcc81eee67b73e19ef42aaf4a0e764fc2c89a0efd131a313e1fe4e50f868afc16ea1f70d9f0b788de0e43a5048c5016e36ada72f3a2244c2dcec3937e0d1eab6ea5503499efba64515468c03136e74771da590e371a2ccf744fa4243ba8d96736b59b3494152b3774978f2f02308c18aebfc81e47bd7610ac8c3d5d5c377320afb228c09e5b42e811bc794a3289b3ad14f4a827162958b02cfa5c2fb7a1472d28da874b49a6809fefcb06f573ee18f3eaf6b0d188e27646c2b8428395f84f9d0d5891e5ef17d0580167551c2b021953bad2407fc67d9e8fee11cb019229abb0d1cba6e2138dfd5408a2f9f95b81a098b138628ddc34698c948607744c03f5894d665d5111af73d683e69eb50b630b7602607517c3dd99b999832872739b49badc45c12cb26a5734c4461bebdd2d536bdbb1a0fc9ae72c5d583a3901f09e09ec3e3b5600160c4bce1a46a597f05ff395db92aaff202fe9330c85d72f21f9fae6150a63db12f3a5bf4e9312b1c1eb2ffc01c3764534722e60f7c0300de5e5cc1fcdd6dadde3a0aec7721e11eeb852557ed6c1ada16fa21ca3b3d92c3750d6e01147fe7d1794df85fe1aa873d15711392c27188cbf687dd936dc8e970c7ae689601c420b3034bff52b5c387c82e44e574e2676121a3bc21423710c4ab3b67ba9177d28c4e6eccdf99922b256417a34166fd3405a349581179d2abbfbd3d0f3a2773d8d50852848d37ff11decf84319df76d22debec3ab1768ab80f3dccdc28a30d4f817fdacd4665377ca6a6bcfc7a0719227510f5318b253a8edc5da582121262de2ea0c2129f78a0fa02a3d65278770a05cbc2317a3f593d349903dcb0a1c39084a187277d454fe64f1a39e70e7400adc1733842f2f6b43f84cb55a219fb57e7c3e24919fb7ee024954af2b79a71de64ca9ee7561539b9513125594ffeecf386408cbb9cc8e64df2e86090372b90bf618076da5581bd13c44955a3c36b2db8966dd9bd87429b00d5d2fb6004563011f678e9f2869c3c23677ee0fde16e6d2e67c842b1d548560639d0a92f16c86479ce81e9fcb76b3b212f228acbc4636a9a782b4808ffcc3584e5e4ffd74634d760672b8eb09f14245b9b554d193305c782b2a8d38afa5a9033e5764d39c42b9b4d5dae96cb831fefcb412c7da692bec83f48e8ca2c53d97f4f0d06b16371a8100f0907123cf18080e21c2686c9a189cd75de194eb888df6a46b17ef49029eae8901955b06e26222f768e678f50bb64068581fde02f314806ccd4a6850103973b6953f5f4f8b3ed12022f1e339da7aa6c907e0fba3bc0c18de7c033d61c50fca4f24057e5bf96141c94dec29d90bc197df36096cad385f2b261142833dac5ad2afd416c950a02dc0c321485890bf19727b586c43b3fd050823e17e5f5b799076a2cc8ad1ba4db2c3c8242492d5f0cbbcae3851d4a5068e4fc6bc646f856ca5a976f8235ab1b38b89a32f92bb63ed390a5f61610e9c96e1a9af4344bf78062684732828adc33a9b4c2d29088792fc1d37c65ed741f23bf8d5c6ae67a3e7353ab9f89cf874f32a63fbc5e3950d7e7867015a50657dd1bb3d4f6790bde59d3bbef67222db6b4cf711ae49b43b67d0dcfbe0b51e5a15fb72e8ac5ac5da0a6ba864fb43cf314db535ff4768ae73d1ac65d1ae46f1c28e3b39c488dcad5d927d16b064243e02b4cf7a51881db5eb3a14a23a2ae0bb254049c80c6be113e440b14e29d4299d12f8bddfe458f6f0d25a77030272cc2dce0cb4c26c7acd2282686de5f1d071a60ac8e59ce8fce2388f9d2d7f426dfbb22dee8fdb4936ead6143b523d2642305e0d9266d82bf880f2ad25be689c4329e80ca92d866ce974885b98cb44090524c893db34236a374b5b2fdc0b9dbd029e24c2653a2d178afe1965768fc880af9ca3372c0045538427263807f762088d020796d97bc4cb2742f1b50f5ff3bfb3e0eec5762b2d3d1cd8a8f8b9a9dd216390bc1cd730c0c31deb5ceafe1f495470b4e5415aae92fb686f45e813de6d834c76e7d3d85451192fd8c57f4a66e248ed57ad0910adb8c8cf60c8aeadc9c05c621d553794d87f801a580fe94e083321916c182d98d5fe9cd062ae6a90073433a4ace884048a39dab83c390de64e0123a57ff165bcce28dcc2088d81e7bd9eaa0c31b3050edae6d133e478472090791be0dcf47fe5d59d533d9ddb83042c95afc732bd70eefcddb4a6450a443641b6d22cf06b4466640c18cf81b19558ddfdb70d6ae4f1e2f6565ef0918be014842abaa33e8cb92b1d57d8c801603f5df604e79359706bfec7d24678a6fae61d6dc8864e33b90cc30bdcb47e5a6275709f2bfb9d372a6767d4a91354d58ce83d80c59ce3da5e43cc986618b329d3fa95a1b78d0d8aa3fe0e983d941ea78bd8473205b99574bc82157ae7765e52dd83a22ffd7774ef868a9c478cd9545d6815273c1f6038dd014c60feb205b8bab41a7d36117c34318435445289615882fc73d3adb1faf5034afebf89e4f94f02b945a026b82619099d519517db6df175d5976ca2c36c6f251084e5606327e777915b46cee3583513af590c0d829b2fbedd72160b2a7f2c1d54d8f3e1bfeb443532bef2cccb9304e3673b56479479fdad4064b83b8f842ef438f0e18659ea4055d2aceed79ab780ea63d02e1ece424387330b6d00341c9c7eeec8d287d1464795cdf7d91e518efd37f0d794c6aabf21991465d7d70fa6485e698ebea2a031fdc3377fc936022839ae5a867450ec429ba803bd84353d059470196fde99e0cd9820403979333fa90bb04e5cf41cf101fc9da6a00ecdc146a27254c5b22d125393c9b748b582959aa0b614b44be9f2b65ab76e136e941807bf33bf6c263a9b346c24be49aab0430a5c6fbf06d7e0f8fb410126d10a86df32dc852f84b0321b8e0ec9370e32f52452ac7e5f0b50aa9cc0090299b03b62b2828efcfcfd86dc696aeb697f8341c13303d2f205f4e712f4f1f7e69c4273c25db82361b8b5217cfd5e1777eebe49a2096dad48c6066d883421ad83450a469ebbefc7881ea6460d98a9149cb7995806bd9819425fd1cf2a20ec0b171345c7f8040775ce3d07abe22bff020d5c6fc4a99cda3e010266231ec6c3582be4590e938b46adc33c84bfdbe8aeb96916735002877895422e759575d42e727426125380af90637043002392a3037f47f37bfcf95b231b9ad92a034a6373fad48af266168ee32d94563e2f356f8aeeb7033bc9f11e07e4661a8733d88b19b3b68d67d56cb1614b4ff7853ae60a206500d3dca8b01346717856d0141a23d269f8adaf75ea878a9141bb91db5d2529620b110b217723f02bd70a03a72bbe1cf067e22c100d6c3658ba5c9d0dd61f30827d2f60ae3a2fa4a712620aa8eda509b69d47e309564e3dbacf11b5deb5ca7db7b3c9aa2d02b6b63902a0b4829b93c8586fb1d552a13d5b3b5375b863fee791b2fea12893d0c0939a4ae29f3446e68e6c5117f8d33731a5ea4a504c3af4012910c7f8308ab9a1779de9a4f81d9a743e66f1f0a2d0af9b2fb5b200272988d8439cced259c1755afac08563d7982e24636afbdbff91fb7809543b3658e68f435123ab9db86bedd367ffb3b8e87fa28116ffa2db93020ad8421e4d4290a469eb25144ff26370e486276bcda8beb0e44dad50b8380afbd7ca19a88b90f2048673a51cea0426d3e452fa876a4850141415055441083553e8433cec45a8c755a5662d12ae9f3fcba7360333035f11188ac1ae0a67417a2578e4767298d7b28b74dec1faa0d98b385bb46f1da26b13fcd277eacfbefda1ffbb8c7c032341479f7d9a5c12f20a4c801367c32009e6e22f9b64d96e55c6ae0ebb2ca3d2ce227829d3b6f3e2c401abcdfe89407824f1141eae8fb8fcd6f1cae53766566034cba003565c0abc6c269240b6f35d001e58923f39f605d10ef8fb03ecd6f84f261a9537656ec8a552d23997eb57d06eb13043a5f44f7adccd2e2caa5eae9271c9fff6da3dc2297ab5171f7813199840e703b409e75f66ee1a466e51e96fa07e2f1e58cd231ab2ae302bc84e5f528e57b78f19a7202f47fea009053ccba393c89818e53200ec3c5ab0c6fed79e496d0ff11334ed755ae93e0ba71cca5ddd5c82bace3bce275c7795078e5074d3e66b12dc47a4c8ebabe40fcef4eb59de011d81d06c2fa73a960ef76c81d37a1a57e5ff9f8dead18e22d8cb4092d0a87a252c14e0f3f86eccb5d93a8d1f64e38acd81b504127ad1de8be35a3192fb8778132c817a366c74cc2c0c835768099cfab9916388b573daec8e4066128da37bb5a80bebb473c0adb846f3ad4d3e656e860c6dde84eaabc6a8b339b8c7f8ec426972d2647de21d1a35861c86d2e68b944288d0909a310fac2b4b481ae9ccec3bdf3a4cc035d608a5b3ace2865912699ce556ede8d3e3d7f3414dd7b354b66ea51e061d9d9f4b46338ffb9f6c0ccd61d46f89cf158488b28d7c136e45196a9086510b4a65d4b43ff96f9ce6dff729284f7e6fd1480fbd5a65c36e56e85453225136882222c07e339fd29f4e346b566270565eae64569d2827f9567087cc272568f7f4f748f6a201f5514a6cba00ec3e492939f0b08123b95c5e69914df685930c484c78be8ddd06f5e3e80845da6fae2853074281cd720dbf4ffd803cad511b347d7fe626d2f5372ea112c560c7e4cab5a38aa69e912008db36c12de4c4ec5c3c8cab589c91782f8544b7ae087bb99fdb8015bfec74c93a432bddb10fb8fb84f339a3fc4e637cf0fc6549f2709c9611c6b1f6d49ec4393b2c009a45e06a2a6bb71c164eeee0bc7336c6759cd14e628284b5010f5da87f218464cb24321d509ee6b9781f8f7b7fd565f0170567623a6762a3e130adab72080dfa3ac93e1089f001f78593ba293059cac0a0a784a32d9e1122ed43586385cb28bbb6f5050bf8955eb657fa301ec825d783d3e85cf6ee081b6f6495b6f8adea2cc1302be65752789fbea8b736cdc542efc8a7216f006975710e07bad25dec4ce5cb4723e3f1a9346971490ddada501f6f8968653461e7b7f20e119a76d4b2e998e90d1dbc71ec911a4c281f018d0bf5208811ea0128fc8caa50eb9cdd097e93f150835c377a7bfa3b1aa5796ed6dd6ddd40ea379f77d0e50932c2262016de4365c4433b23eb6403939c901c96f2d60c7de9aa021808b363d01d1507d4812e46622845dd28fe6f078d8992b625cfaf751df685ad71cedc1ad7271df2378fbbc48d7152b1e121183d1f62969e15910ab99f55c925de5f7ed064554a41f92a359d26845ef892f8ba5c2632e11c174be85b95597800e4fa61aff6653a829adac4405ee001fc95dc7c4eea27fa462a4329f1ee8c94eb3401437b3c837e0213c512583074136506b734f04cdf94f9d9d9c98be242f1b5d19d44f2ff5ba70a8b32749c55e0b8beef4f4b07d8d27c5742901c07c911000e2dcfc4bb8ab08490ae1d1c751bff1c38388ab4b7e01c4b8fd9c0a2c5c087a911c4708aa30ba42658f63358333c3fd5cc3c4f5705e00289cb0270f61f8b68bcc7aef67c0757de40b75c23d19da20af8edf530a63f0feb099e15c39590d8a9345902d61f656cc3b3a958ec08cd55880eb76401de97842de87aec3a593bcfec92bbf94d53fd3949b49aea80cacca861ffeedac5d5e5e9824924757e2d8da6d47c876d2bc3a62142024f84f474f044d306eb45fc3fd12f92333e6288bc15ea893bd4221d03af38243dbe79248e1cd04255ffff3692dc248fd4400f5bc0a736117c2e941d0242032927565b5fc284e062305d6d65b9748b20e358d187961ab5c0f86ceb575a1bd37926a99095d43094a2d04ca8bfd18b240adbd134a5745f0674146487a561cd9fd08ae9c1be30c3d5bd770b82dd9beb5f6e96514be0aaf142d378ca6ec25b72473f7129ccfc6746c057524b2d862ce00c5aa0ddae4a573c8f9c54074b2bab3eb887d89fc57aec3df33b56a936c8256e9502b0338fd4a8b5db3ab2d9c755139518dabf9349cada1d92e4c73b8b1d2e9b9ad3746c8b0525abfc17087bd1a96d6cb23c6c94fe6e389556b4b2af18698dba5afb85c7e1def370f5ec3f42468030de0cc62624d9f68418a2c96587ca97ceed4178ca8d69fcd719bf199d0d5d45d3d2d12c80d999417f454ae7fec77a113a6fdb028660a50a338f105e5cf27192eb27709b5fa8906b933c321b41b609c0e74938bd901ff53d49d327b1bfae891465767272b0224997a85728ce75ed1267437e10cf96c395134eecce3ac9063dd0d25635c3258175510d9542f0bf491e701354de0e6cf677fc13aa9947bbe0cb0d7798d30ae2a26e19815b17106e242e2cf460bbfa7a3da94fe7d062a00b27e6fb3bc720b224b0019243b31f2f7285705f270f6dcb8f7c2cf9e3e1ae30a403ee0a957211529f3c08618697add48b26a8626db5b549d6fa1cdb130dd2dacda2cd59c4bb9f1247416045c9f83ec3c73a1e456e8f54bb89c5fb78a344718e648300869bf675a9f41fe99d76ef8ff20aec19f9a982ed47fb6aadcb5e00afa8837e0e60c3131953fbb62ceef2f763f220f41c9ca8070acd5e060b8c0a7c93b05ac804f22d3c35a9ab41933b7d57da6f64d7cbfb9d2b3d32a68da017261558885343bf531d01e5b3afd8389476e3d6c97758b90849a2040011bcc384151ff7aec6fb59d25a3903db2e11e0aba8a41c364d7e7076ec593c1cafcbcebc6d2e84f28d7ca329d813b012b97bb44d5f07c4498e5bc06bbade72831257524f112593261d12cf1656e285578fe2fccaa6d8d3a2d50f1fc98c35b3ba2887da24263dfb94031d684a5c40bf18da27f5fdb08b2339f40e13e5ade081a65d36e4f9738a0b0a76a21db901311d9666f0fe1cd6117e2e95b9db129daff031f0789b1b52f0a141bb9fcaf53924cb6e48e6132d18cba4a66496600bb48d58ccc509f6a3e11362bf135ced0ae724e84df731ba50614fd3bfa87a0172364d44da05b2af271d760931ac66644de13b763e2f9b1ea2d4abda52ba4737e24ec2de786633d8a079e31b2e7d626ce6624edd6d1ecbbc1ae6c0de8a0906aa5eebaebd092fd77f5903f57dc4290817edb67343c82fad00871c827124d4d89b41d3b75e90dd862244c71377d2d28cf98c70004f754ff32893ea7233069826a073e0544f9a0997d94678bd0ab618be4abc5651f9550acf23438a25c59b593b41201a62f958b9f7b2a43fa8871812caca4bac73e74cd0ada93c1b32dbda7b60e860eedc7197120780f7caebf744ced6b4a0e2e1ba191bc353512aa2ac3fb61fe9144de72c465b880842e517bb909a3fcd9858df24b8dd35bc252dccd53e9e953e03173e7bc39234b742c9f6bcf84f502e8f1269030c6a1d188ce41622dfe0fc702c6e70197cf6ebc2b60265c649a1bb838ecab99b6f077e3813936e4a107b187d946740475fb3a6979cb33aa5d50dc6e7489aa3be24ee6ab1a7608dccff728bf8d3675656775156f79698dcf60d69f1e08a56a36c203e11d96ab020d7854de44f09a3badb2abe9d9979d3feb28702dad9617a9794815a450bc39f234e5fd6d735ac819c3441a7a76067cdcddf30a6d9535d07eb4336222665ad7e704ffa2770d45d8803f55587917fd4cfebd5bcb6cbc1713813adbe5a773f909862754e0671d2e751a109be659c72eb1a10ee52fef90d20c00d545edbcfe812e53772e9d2297fdb4003331fa7f602776956d99ef80f6f4becc3b80f2f7c859dfb6aa967fe5039105f35a141a124b21eb16c8b344e229c7ccbfe105055ee007f838675dc0ed58912b3b2c3125db48f8e2e56f602113a92e2d31e1db8691c8cf645466ac73f5b25ef3402eed2888552779010e1f473d26cbd36b79289aac2aa5be78388220cb4889f5cbb219e2104c28221570a665bbd688f0ef82a0665d2b78a661f2d5825a434cd3123775890e85bc40c209c449a435bca6a03662258aeab78fc46341af3bd4a52763f96b7006a5d1018e601931ae711aeb267ada3ce3c83157b79d85e470f976c72576e2266e0fd04ca312a97df863bd2da698f2c9b047d9fb9eceaaf5fd4b4bc7fcc9fb2e6ad6b397675606b044da29594d97c2c6c11ebc0adff05536151e9eb48f519d6035cb6cc5059b244aff5c68f711a3cfb60f3570a16cda7012fe5df3c1fe0862eaf43d4daacbe237bb7d22819603975e5679ebe404a84a00ebe8d5c536d62860462d37bb7121a169650a59a978a4e586686247b2452af36cee384db3b9b1a290d62bd41e560ff11e802d668a6f7af3c7f397d89c930ca9797c20eca6d71b49db3d08bf35fee27be95d948ec44a3df65335e2c4e6d76c42bc1d04349d9fea020af4bf31dd592073c86fe081d196e509522a91cf14c7b591f54e1c30886b2290dd11cfcb5fbc7d1462d4f5256a15e9b1613e038a67f424382e78c990f808cfcc8c59e8fb1bee6d6cc7e5547bdb3a916d2e88d9830a54b7646d45aedc220accaccde59504f58ad38ef156dbbe2ba80e1905c7fb5336faef77a0ab2ca2869f994078f7d440e1e22cce4465130606dc8afb389a979822906408902d14d4e8289f32bb82fd47aa8d9f25ef22513ca0a69b07255a1606d7492ffde8fa6fc1745188bb105cb4c5879a806c9c1f5a45872b970b2f65c69e0d33d32742e3651ab197a76d4571fe41ea67cf52bdcba935e0df26242e6ba3a6346f2f78241c70d86ea58c814563d6ca902595b1dcbf310253c74a1c98042c5afd5b25e9a2b69c1e2f5800d201b64f9a0526e9cb3318d904ea404db394249019e7861be0271cc5015548e353287011a0d0191d5a22f0b8a0cb844f1f24eacfc7bb13a108447d7bb94557ab440d86d8d87ddaa3c994af62f21fd992ce0f74e1df23edeaa9bf5b263b226778a85ab38b458ca0cb061d8c54939069c5a11127f5ae98d1e96255fadc91bfa117207f71644cb20b48263ae72facec024ddfd3461decf066407f793f3f053dc63249663afe3fa7821e093c3dbd78dd7a41e3ece02c71875e8e735ed474925892f73b3d2f3820db289f07e98f363613f151c4af3832760fc6f2eba1a4d79df070e352d223721bff38dda790948dd4c959f7600df5b211d1e0c122ea701c321a2caf4cc6248096f46b00cfc34224373b2ddf43557e37862f9d48639b924d143ce05bd48ac465e80fc04b3db6a82843be6056695989664abbc1a383e235c29356f864a438181793998cf259cd22794c1896c4babb35927897c7b16a30809e28826c2fdd48ecfac44acd1dde0f75bbbc008f0844afbc94701f56895729992875d8f1af3891b7b1f9148bcdf0c6617c12ac2ad802fce3116e79a0e666692437dbf6800b54780a782e4bfcd201b055a9d0512358b3cba2db91edd41f6b31755bdf187478ca3ee357bf63425c9fca2a0b4ef0851fcab07e5e7381afcaf9c06de30bcfb5e9de9e4455f20c880cb324bf3c6b047d52a8ec2e0d005b9377a2189eaae1a33e7f3b2d3a9a6aeae98797c62014d1e50d96cdd0f8d7aa8d050aaefc07998044813facd481738c1e51072cfa0bb294574a39b6dbbbfb4312fec34a286811dd0d5fa5a7b48bde940df6822c5f6f8e7cf272feafa0026d0834a3b0ce29cab26c37af9ad62db94a6ec876eac2162af729f255f287edbbba1f87d7831f8ffd56a0001b29addacb7f25e2ff55f3a8bbb39e363bb2f1b5fcf15698632669e1cca5e42c32fb4270cefa049b2081c0758b151c6012b6704f2fe38e328477df9155dc806b3d89781366d61dcd8143bde83985df87d583096771046e4d0d0c60f6182000154b20f6432c4d15285fe03a6025b09b9772f48726bbbdccd6363cb10c30ae113e925eb21c02e0ac14cd5fb8784813a744439c78f554f4684e827e34a0b395cf11057bca6df872be548d902e0114ad30b08a4cf69056ad5fa9f3a3e557a11ff62decb7759b47c6e426b2e36a94469dbfc0bf5881332e0838b707f41ab0ad15ca6c5eefe739ff87cd6e247ebff4f54b4a50ba17a19bde703e837fabc75b97c8b21f5e650a18d5d9ee2a6d7d6c1fb569f6426a541d7ffdddf709928970c65414139a37caf8ddbf1a113d68c23f4de588f651f284ade1c90b1519af13deb0955b5ca433a532acc24c1173b3b797af1bdeaf2e5db6922f442272474e9cc48b4eef9b977a05a86053d8a9e0b87295058c456211c6c3e6d871e9384e94ea996a1e98ce0229b9f525e2f998c5b154f1a669877ac53ce49f787fa7a28078055be9cb1f29eaa31087c1312238549f91322beeb3a7b4d280c399a6e17ca5b30783b21462dc764effc6219c90deaf30dfcea4e5070a36806cc8d12864dc4b8abd431f5f1c1b270a45e154dcdfa300eed3b6805c2ddb65576b4ef0b99363c1ee0c1826420e578fae523f55abeb7734f89bc9a11aca8065a443cf5dda78d944bbf97240e71b63d723ff5a677868250c0cd48cba8541603eed5d4a78d3fd36714d6502c4efa74f7ff6224ecce784695d34b08b1da0c1997f32bf131499572529b79a11e4d29a68e10bd86d19e2b465900ebadc3001bb9f4f2bd16c2dbd4833ecd20b517aae73e6ec88896121326cd78966252527e1277e65484669e6a9dab00f7dc06b39fe9588f805eb4b365fdd2b9f25563453a9394aa7b7b55421348da76192da76bc7169ea6650b7af8c9a335a70ab9c3af5d2570f7c33e21bf165395e01328c2e2b324a857bb520e0329fef06f5e1e69e6daad6ba9328d028f0ec00f784ca95f36d9d5155235528e08f9bde77b461751292c393edf4fa53e2e328fde080839536232b4d8094c1c979d2d117c9cbc636160e0fdf6864bd3458716005c550d9617a0b1f8248132f8b673f3d09ef392141239cff9c13b8a023de59447016a6fac3b2b35761221ecbc9490d2d5f51a36e96c6c5c2051f453578e6da75f0564fddc45790cca763c9d8d31206d378c52126cf5c35210cae6f11643191b0ca2facdfe1931e8fb7c3dbabffcff2d50ebf6b63d7d40e5a3601bc2600f0bdad14fecd8f825696ca79035efbeb0eacf26d1c531bfd64756554631b822bde479cfe9067c3845924c622a77f364126a788710a4bef3d8a8e3e64333e0968560f89f535a0487ea078786fa7d07d60dc924876b0786d802f48ab06264e1304bcd2e5dbb7fa1eb9c6d6b2ed027f74532e0034e7964bd9db5de0e7609426d9ef9730a6cbd6cc14682d8bf3d28646df35a277995644b92d240d9978a1b7a1c91f54a13300fae86893c6710bc9eb7fff215466d7c51aef2ffd4ed721abdc306ec457f8bc6e7ec47305c7acdeabd6921846938d1f6aabfdf4c3dfd4304aa42e8c95a00d3991d6d3494e38f96d3fcc6fb4f5db924cfcfa5cb94389a025b1c9d6b48159910382f0b9276d88279b34e422bb905111d4dd4f151e414879177619e174f6f57f43f0f5e4e11c371585f8ad98ce285108c3956cd90cc4fefa4d6373041a2f50ffa725c615c1d68ecbe87db02d9b47e5238e793fe4bdfc65eeef5b4c113feecc8b562cdcf155135b75c38e9464f7eed6e882244127cf89a5248f68fc99b3f376874e5c592839596e7241840b252b56036ccef6427cc9f57b3f91e97478e59a8a35eb599003f02d6285a1415436412c826e2d61e3e8e239b2c3a2245ea39ee0d26c2e71e792254691637e675c69bd6d9d6f620657e0661ccda6b18a518eccf22326df83bc729c47796c4b216da3718f915113b6655b91080341b404dbd089c3d07a25c08d83cfcf02ee18dfe11ca3270750b37398f341a4f8861cee934e747eea09cb612b000d5c5cf2bce8de4c0147b60cf04eeb3f5f36fa8fe6ff96f0cafea735ffe8cb98f2a81744e581578efabcc8a8a8abfabffcb5370e1a39274b42012ddc4a5ff130bc043e2407d98c84ee20542eb30558b16826c39b64630e3f3d66e260bbfcd1ebd387e749b41fd00197ea80a628433efeb6398e0c6af1cb7916f0cb05be6ad339d331e8f491371c6639683a5d016c30773d45eb27304261b825221affd385855f7a361ab16a22fa031106fd22424c7808069f99d3c817ce5bb2aa0c636e19c05afe2153473d3026ff22ad6ad5221650b6cd0651a570a91d541f02e19ef28d66cfab32f6b806e75feda025967871454b66bdcbae3527fed2b7630f13285b6ac32bf425a571f684d7c1f40434a241c56531b11b83e094d8be4723823252edfbfc0ced8341300b69052b79fd66eb893e4dac35a9efb7f5e0f1a70d33bdb4c97e67b8be2bd53d8faadc17e8d1e152402ca03c4bcb75c11a2f3edeec351db19b50aac030034b1226a12d449336aab17e72753c13cfbc6b9e086af2a286e78c15ca54f40113c47e051abe433aac792f04a92de3e3547764c32ef1c2bcf391258436a27f01a027c83d7f230277bf5bef6315dd8289fb898f715169272cdefa28b7a65d914920f0b28f5184317f5ad3fa76316d2f8a2a6364b476470d33f5d5b17d3eb978ed434df998af9c626c73a5bd46231be51f88709337fc8443d1009b88bc3d4d76b3ab5316b4cc3ca2fd392d94d5520675a55a8e5d6b32d30c315292a25b35fde0afaf3577a3414b3f79d948623b6333d8a6b68bae2ac16c261dc338985367a2c3e7598092ceeb3913023817d807f4dbabb7cd8952b89fe9579af45bc454efbb97c75de1b7dd4020f8074635889e497f7d6fe7cdfb4e2ab5d8f099edde825b3a0cd9f457e785d9814d69d86c77c253a12bf3909d1c5b9068955611f8e51aa1e042313291cfcff77496e79520da71bd62fe4990a85b5b3b790f526ea0edf59b5f017c77953931028da5610d50af574f3aa0f67425ef19b731ed3f936f370c47eb1d7547531789c6c4d02d6e2266a614df9bf56cfc5ac2a523e13ab64e7e85799da28240bbdec6e7872a5d91622bc444c7c8620bf0d10b8f53bd6768e543ebc05126a8f82865e252ce8260256cc817a6edcfc44e3900766f3ed2136732c51643add475cfe59ac82c0778b6a8ad211598f4d5cd85915880ad819c49cef714be0686c2f66ca78e15729f9a8475377684735c354e7cfe6821007d974b7c1e57d211d96a7388f90ce01b35a73d6ec6c2e6e72fedf11df0dbbdc546682adcc758d472e4e4ac65959e6998293279771a9ad9a091bbb9c035e1b422ef032ec2cfc9f81a70cdef01b4d83e8a3e9c76f7c2bc495fcb8246969df0d338d4d57fd371b49e8dfd3d695f301e35eefa917684b3db738a59477fba5c09df0ebec7bb07493d14c32d82110ab08d51d9b1cb379e4313baad3c925f715cc6a47ff98764a3f76639d411cf7fdfe7a29d1927e2f17f538d3025ff35327915a51d331b003a0a807d832a7529bac696cae6c047ec7b24fe67aaf8dcb79219a1aebf740663f41283301b829f44c02f3f044a612d4a6140b18bb0712c5271a98e546bca265a8d1d1f30ca509db3bf5f5a1568de1f59621cdab521b1dfbd6ca7e45589f32a22407b305c8b18c7c8ac9618ac31c38d406537b0ed9e0aec5c00198a097a00234b8a1e48dbb826ccbd74e00b075c9f9fb7868c7daa0befdfd125f175e177d1e2786fd5eee6487352e08c0ecf97ebe9bdb8fff38989966b01b778862a942c8d6ae41d8ae1924bc62d19b0059b22c33c1dabea66582d82546b6347db2b600d6bbe5e8b7999cd67f9022facda34736b4952c15393391a5481e58cb5332e613e692155b37516cb94a9156db7eb8b7aae3ff30d2f374ea83c2d9f6f65e33908c0a353422ac4468df8c91b3cf8714e25092475a888ea84b96cffaca60aaf8d6bc048f65f6fc89138e64120ab6154c1f6d1bafcbb8901094e0d43084ad61481dff842e49309cec64b17ef1555c2412773b46add7c11320ee9c52a11cd360757d3e41057921f895cbff635f65ab771c01ac2d95c130dc074649ad9c2211a48cac291d7f25bd9763e1923b1ace1d2b756c75631e735b25605eacd544ccc2a6725f9f10e08b32561004663ce0bfc672ff2dd0f654a9b4669c44022d6a65447b5b363b5a9d5f6365c6f95599df6b407c3150f90ccc9e2e5ddfc71c469fcdaecf3f0f3664c64a470fca95234ca03994e360445e5336b1ea0fac5bcf12939f88af353d5f361fe0a6845628005acf77151687387dc0d88a8a1a7785e4b72ba1a56631c93d4275e27919afdfa314afca33b1c153cd452d9ca607ca322705ae551c6c1dea36979d82654d200a4d7eb833bc0b185f5677dac30542d3b7503470d5c9f6434beca8221e482df94f7d336ddfae05558d3bc7cea353928c5bef717d7f695ed440165e0b226b3a73b1c5897ae6a79852047a9127997539955826b875ba5bb9aa07d8e6129364beb1165a3df9f8b77a9549e394d5ccc760b39fc465cbbc123e48296c4c9254a9b839abd9f93fed19986a404a1485646a7c858146b000a32cb56737c94026dd44abba19188746bcce63ee2059857b86df5761e1f3736f99a6cf43968aec9ef767a12e6465df5989431e9c4358faa8682a6954d036b55575e464699faead6f0d6327c3709e6f130bffcf516a9e5b0b805b4c3dc466d2db30753fc6d4e1b27250b651c53a37fdade3c714842afed237deab4827f33d0f2de309058c83672fd6dae7c17a5282dee962153e32cbf84309349ce19264c88513f63bc0cc91040149473ecc4f0ab5e7030baf017b3fb280c9ef9960de4065e06ff6c643d099a0c32842108f4c72c43bf71caef5d27102bab322d1ccfd2c1d64e7135edc5fdc30d2ea690e67a1368126696a84a1007556b80ddbfa8217aa345f883e50c345ea3e296ffac37b79d6aa20fe4a31558a34283464a8d28010ecd02aa5701d296b8e21e69a8e5140a98789b317aed34d610c91eb177131b23546333c3d95de8ba4be215d9df7c168dab704f22d209d73bfa4bf340bb52f786b95572f5e6eb02f2ad5fe5aebd2478dd4380162b4e440365e2f36e0fec73cd3724d4583775e1714b4f736fbb40e18db6b950ae2ef86c1ec8394fbbdeb74ffe8b200cba708f3974154f7d8f398b06569cb2de26508cd7b3bccc8fab3b21f92c6282d212e672c5f6cb08a02ff82224c30fd62c0f55880f95a8a98e03cda5bcc4138493b694ccb8dd5878f999e78889f5ce7a275fbdf832192203cd6cc94912496202c1b98e4fd45d56a323abefc8b24e3c29cefda2e117e725321016ba3472a6b4c8e89d776d0ddcfd77a7ca7d76fe2031a4730666eb239be474ac438dad29ff946b8464bd4985ca787c0f993c582ba5db2ef0b590bb5b726f0074a8cc3808831e7bbfef56ec158d71eaa1e56c479872d8c9e522da95218ff7fb4cd658f5951e9efcbc3be7e6321a7e044a0df2cc17004088f74d359e55b670e1c579c14ca67268969dd7b06da05403199647ea6059688d412fe60de497dd2bcf3799c728610587ec65ba70d3b9b9c9d1b017a6f954b576a72a8a4f4f9c9d97aa26a9a0ef4c349f1945d7d97b8295c7cdcf76705e204a9b908613708a6675b090ef54697da25654b339f27c59d0a880c7fd7485660ecec2396e81a45d6c4138df9a5176725ee48636ca1599cc17f0b68be66c38f6cd1c9ea3d57c64cd96243494a5e6afe5189dc516be09bfefb82a4a77f5958c4d785db22a3bf6cf1bdaaacf7351ae07f132b4ade741e3eb490da32db6b0db942b8b64bef22bc922b6f1ee80e0ee877a19ce6eab0a9620cfdfed001c6ad2f6058d2eb3bc5377703187f63592b5b11fa5bf66c71a1a14b2911d366754512fad5ac9e504a8403cb141b62f57f748af04fdaf167984a6c21c5b295f85545107630133197f5684eb210ba6c99529f9548a61fc0cf0afb2e5fb3d5e9a93d490fd4ec75259907f93ed31ddc3d26b1f50f311c3e96414f5f1026cb5eefd1c0801ffa9a2f35d353e271fb8579625dde2f62398f15f901c36f72e7a9230f254a570d0bcfe0d4ba307c273bc3ce77b9980b789c1c424829fc19a7983408d87f1bd78f25274ad575000c855be8d9a412fd3e7b435a3a66f070259ca1ca988360def97a67316861144c5bb9583d94d3898fa6a1af982c97b9a5ceb4e357ce9fb732f44cadcd3cfc49bafd78726a66a62ab634ee164cd0e4fcc5de90b6c460488142c0b6151e2d38fd092c09d84c5513eb4edfce2cadaf63c13ea88133bde83528d547986a0688d357455dad3477a90e64f42cf898145ac022c3bfedc4a931ca037feefdfc712f484d808a5444c0f6dc80ab3cadb4434845903498b3119cb178555b5bf2e8a3126f7830b52b05afb3ebc865b416075f0a91115466924b1f35f7a3b57074f61789d0ae9e7721a5fcce82a52d6441a82a98fac936f8cdbed855582ed8d0d85396eb663d58270000fde0c048164b824475f9cd529c84431980ae0e5e2a1d5280c9a13dda056ebaad7b931be04e6a7bce247b80105e983193f41888951cd516ae6270b829d95e9912530b45511b65077f634cf5f2c97cf567d533b303b2a506430424e04669bbf09a2b7d001b51179ec89da7b607a1f232b87c82b606e1b1c53e408a8a7a8a0c02ed6ae5250ed2524428f38f20199635d2111437ecb4c684dc4a45d71bf7a3ab5ec0011e5290157211b3cd3f60ffb2580ef8670b622bba88a80cd826ce24909834851191ac183bf4f1f1263c59826fea73b086dc9a9e9d356ed5fd83ce742ff758938e48abb7e1bd917a68b844efef943a1ebcf26f556ecc24c18d2ac767bf436ded7caa8ee4f20ea052face1f39f3c33a89adc891c332bd17a11c22dcb9833438bf66cf02ac912dad9d91e8bc6770a2ca0de5641b163c0f32bbef34bfce38b8eb2329a55edbbd1f7c1e7b9491ebdc44773bcf040966b254d838f419e1cb9bf8a53df7cf4d149966c7341010b3ccbf6d8086a731ffbaf2a6b82f1b960df1332529b60f8e632ddd3a252e31e1b99f6ceaafd40f555b4af1da52e0ddce12c88e6233040764a71ba6ca1151ea33dc8e423b5e52edcda2be2439a01749514dac4b66e6418f92e9b06583a53e5760956c670734d6726e66e52e4fd2153307b4162dfaf83df15676d30e03380d01a77f28a8074dd1b14a75b55dc2a3fcb8b25eda2fcdd21db63922ab4ee2c84ae2577d8075d2386e8b30b8a96a40f7106464c8aa02ad9909711d2139eec7f75aa946138150b46cc0f80a71cd125c00f18eb82541d4ae6ea719bfb76c100a8407bc776095916e2e502abac63c1e2bd625c6c6737a39da8fc84940d4c288d9537eb5bf0e7351b5b1521a220544bc720adc6ee8d4aeb04bf9910a7f86543893a02e2057de2edc8148c64d110c24e020ebe5c935bc9d780cf2e3995092b14a584dc8cbd73c7088557ee589cd5c5495060f7799ee2c95b7f69514744722ae3064a6230f4d4c9b7373dbb290d97d507845d324f6541d7fd4eb258600147e892d27157b7792769acaaa4dd16d744dd3f07273867d9b3c461b9fdba55c583fc43def8863295c654cca726934288fe7b744de4327fa38329d974f71a0921659da8f46eff434224574d9c9566ac7be2099de4ebdb03ddfc4159c19cf48ae3a8363c10325ba562a53fbf494fbfbd161934576cdaf3f7b01f9030b12a8592cff62863e2fff08b52776c91c2a8737a9526ed67f350cf992471f6b881cc90e8281d19d8805a0f2539fb2e906977d769d5c127fdbf5c99a299da8595d892cdddeec3f1b794b71c48ac649fccb13b88a70af97e35fac71ad6b492ce31f317aeb1eb28a03e1bf6cb9502810b0e1ebd66642c374b72bb1a7e0c65c1768333f73703d49a0c786e60483a37b69115e89ee10464bf48f73adde23e41f4cf846569783faed56698bcd51d956db5168702a548e1632bc2a69b7357239bcd73dc3e9021fec7179a009fea312d2a85fa3337e397f3c48bd8a750b8f8451876693fcd21c40f0209dd4bf2d82e2ea5c76b705c10d8411d2e3507bc47b9558446fe10ed4babb0656388f9b918b277eebf04b2518c63a6a695dfe838303f170c604d58d182b2349b76bbf92e72acbfae2a55eb996ddda02224dd7d14ac0b257ca741dcf4fc940c79890e23c18bd60e625c89d780f3ba88bf715e7924a5e527cffac348a0274727670432cd5117ee13bd4928823e6c85d01db07af964c20da2ee3c7db7f91818b6b219d598faac0319bb011039a36525480a2279e347593bd999bb4a3f008dc149884f2a9afe76f9472b7f36beddc026ce766816256e634699a636d8b652a450cdc34708bcd5e245276308d8949140ec48121500dfd5448ef92950bcfcf24cd71f622ea17c2d1bfd396a77a42a6ce0a6e705d32cb080b107745410ceabb0ca3817602b62459281cb72d983268d5570cb7105250a157ee3054d8e766e6681586b14afeb39937ead9d9ced05774b18b77fb2440345224db01a7ea275b9b4774c0ffff3471845a318af5df1c965608bacd07ba328c4c9d9e5087f20e52e4e92c5bd039d9de34d2309c03febc424394f0bc9931dafc8782d5c90d8079deba0b503bbc201fd5136864beafb0ac51e4c588e09a81c8db734ff748d9fc9d849437e70906ae21cffe70aedc0bb875b18e69fda4ce3e986dd0c950dfa25c7af306581a7b59ee95c8ef3cd5bd96901d957ae21efc54f7e11ff84d4aad30643429fafe660459009c8426e150a07819520cad322d9038d671116b758052c7ea5f0d960d234eade2bc4c50e035c9c64a25eb9950ea7d930b3cce5dc5706b3c6d097ed04c89bf6579327dcbd0fda87d856be516ea2cbf2803bce496dca308c9d8f1fde8ac3b2e2c3fa190cd55a64d95adc62a381ea6e2e203fa0fe4c7e12a9a83e36233e9dafabe8518794732ecd14d958cb8d2c91de12fee5b75fb5f050340dc9fb5e0ecd4b32fda99475321998c29380da95e224c66d866da336f5b4ad31b76bf0b35eb76e7af309ea422b0f05e6a9b572168f30c067358312c05e6d7d94d9dce15195e7c3964976346819ba47b9135fd1ccd038261c12537b99341c913967664555c8a204ecb4ca9b7a7bb5aac86753dbee1610bf61ae5554d11af4399fd3ccbace9458388e5acd128f9cabfeaf8a4f55b274881314a1a2c4f77ac25352042d4df190339f147d68246b8126d7e86e6dcd2e75928534eef5598bf8ec417d941f3ec4775aadecb1eb82807a0ad758d9809df0a7ef0d3babb7ba984fa58da8408110f416bd418dfcb1addb1341e43103a5678dcbd88a3dfcfab2e12c0935389d4a7deb422b632a04e9a055239e48d74730bb28ec995b532084d461451d7f48fe0193e3b9bb09ef1ac2e53bf767fca83246f91a82954f287b9b48ecb7b26320b8a2aa951c0ecca34735f13b779f70dfb138fbdec7605e3aa767e408cb4592c4cad04c2be5965b1da800af6f87579595505ce3046b8a2ce95611ef52ddadb856f298631fccea0feb61b87e4394810f23966b9b5f3ebdeb1aa1f5f07bef3c4d866eee6f39ec02ffa59daa055f35a760508be401295c28c876c0e23f5454de65c611d80eb434ab82157ff186e0cf1ab10ce05428befe267fe8db04f3a4c4c201a3b2a48be7a8c659632f93aaa25eed5b09c9bdaeebf069ac0e2511e1652127ee07cb4bb27d9cdf8a3a0a5e680dc548a68ddd5fa9b992d50d9a0ec2c360eebecfffc68062a3fbe299fd2dfa6aa007b2b35c65f3d1e2404d41d8b3870c7525d73b5f95895028d5c709a7bbe51b00f473b5a8933088fbb1b815f967f30a1ee16d0bf9c5c9f79a688156da6ade2345c7dad9e6586414df60c48f95db590e0538fafd38632bff51d86cbb73fe91fd5f8e82d58ef0fdb3335035159810df2067d6d944089ca4a63e8b075272da38f2d02720d3bea0ea0038e566f96c1fa267a4e43c1b5336fe8cad6e827f38d80feaddbcdabe1bc2dccecf2d1ced93075cdc61af8a4c22dd47af343036643b7f426d5328359a1f279057b60e3c15af00f6fa2f423681b7cd7f2adf3078bc828972d12b9eb8f50dc7215a805910887f60a4b758d446e4395ec58d8a88c0badf3b59a3dfbbb65c7b754320d0fc0acf98730d654123a1fbb07766e02dce75a806991d4894cccdc0178306499a8477b8e67523df0d1784673fae873b94f4b2e4a09caba8e2635d6b8f18721e3c1a990d3a71480762091e6377a5563f99d954c7d3bd5bf610f9b25de446bd4cf4f5a0740214c5a8f87b339d09ce53c11664d4a3e8f0bd4849fd5f04114b1bf372c280230f1d69d14da48b8e5c3e67138eb4bb91b7f8414069f96a887d160d8dce89588d4ffdf778fc6521e79bd467a545c4f4d377828979034c0eb9df180f5f682635356f2e8745360ceda3ac680fa962c9bdf503b361ecb77e7a845eeb7cdb9882444813f5a2f70056c2eebdaf1ebe1fc605f9ec0193c08ac85415e9722bafb417e4bbd296d11c92d7b10d1aa7648f2cd9c6a6467ad2c6e0a4afafb482b3af77fed03a2b1f3ec41d00ca66615e0e859ce67fa75e256b669b96b155878032e26fe018c637d80df2f7204b2f0f9b4fd39c4c19e71b06dbfe2099578bf77ed17df85e2c2a64dbebc816fdd28f75f2c92314d12bb6e5e35cda7a99841adb2fb7806a65a2d07120178413f39662e121404b6ab2a6ddb7d6703a469026a77abc87a762d1beec194ed131f4080c4464f688d58d1e7cad5fd958ec8978608043c4bc8f47ab449b911276dfd3b7ce58fe7f8dc95886879f3b819ae7dcdbd88671b834a07d082aaf389a869cc2380bcbdc9316958c081dbc21ac00ac972bd9c81a39934cf5fe151b9db7dcfc5300b65677c659afe829e0de9c89aac31741c672b52781dd8f64c4e5dfb2e7169afcad40417d2201721936aed349f67cb315c23d4e62d83f802241c24eda07c5a584a70eaeec999e85a9ac4434fd509fb66374589cd65527f81b7ceb92fa923d137eb8cc22c922b4b93a7eaa234c7d0d53dcb0513bed3dfd98f4d857cecc313cae9494a34fdb6402d1972ad777a5dc23d036408ef979aa9d564b6ea79f0066c185f560ec9e6cc9e6182f14e47039b30b118a85a252435909eaa05d9ab49da7ecf12228db9a8b702102f6a25e3bfdcf8b5f357ce0caafc2c2ad16bee12cda6a5fa21d6d819e75114c7a8488e63fddf2d555568393ee77dd5ddc012d2e230eef51a5a56e91b1756c78aa1967c929bc4009c623981858f1fec5bfcca6783a162b99b9b0597916de326f7dc0255f5b06042ec358e2e7724f30541441a15ce97b5183314c311bdbdfe66361ec6ad473f874fbb7d13369117e3ac207d481e5719343fb0eba5aed7da503f73dbde245dde8c1d15efe2e576379f5950d069cdc35da0444c6d008f40a18cd1765aff3e1fbe69df559b5a3efd969c45df11f97000ea4ca4b3574ef967a4ce3af927b7c22bf832e22643b61ee93ba515ac6b36b82b708b9182664243fe2f922789705140173a0bd79062c543cf3c2e8d5bbed64e248ba4af27a1ab4df70f8036534c8c7aae8610fd47af588f8d28d02e6fe9024f05906ca2f0219ff0673b615f53bb8e686409e04536e3dc446b732c63182a07e8e852f639c8e25d58174222d42d31e747fd1e07c79c44808f7d4d32d357e670083ac8b337bc9d3d1a798e1dd32b151f28822363ca425b3ba2bde7c904d4f28857f810bab9be6b04499e5ae0c0a24c1731600e0968157b864dca654125a1221943f78a348f56a6c29ff57d63bf2cf9e6edf3575b689566f70b24bb72b01bfcb7c6e130de33205d527654615583ac3c4ea27c0147445dbe9175c9373a43eefd5a00e4eaa04fb2006f2bfc51b2feb614c2f5d047d4ece75ca013fc7922bc64227bfea50a2aaf628bbf8f071f5fbe7c50636a5e5695d760678b871e7eb14d958d9b32600e82728228836c5abc48bb6291e45648469ee9c1049c33f75b799978665788e488b588b22a7b0a1354cfe03c730eb38ae8c24e4d776858a8c82e1b1370129c906b830d010f85dc3d2394ac183dcc5e697eefa3ebb8d528b4afaf972ee054f96f7350579fd643f01e71c8cc9129f99d501502af36b856da070d9fc3ed2a1f6f4dec74f9be6199a789f63ec8d0c68e2ec28b3b32a8681c2265264262bb1219ae0adaa0b2f09ce6310ac30c104f65ae5d432ee34cc0b8550a9082b1fedc6d1e06f6dc7bbb08a25f2282e2fb96ba7d9c0171ee310545fe2c56431b8564e9a37008601c1f942afeac3264f0f9aec0f37f1098670ea331b74db9b168e5aa096a8236e50e3a2b7885dc1c780d2d36345042fe0421a4f284e6aa45170436d82c35a7d0da0ee2c62695e2293c364ef59545efa6c9f751063b59009ad6d4e65aeeec29f062030b7152e7207c203c08cb92888c587776f586ec9f30462e31bb7f2f9d22ec1b2c767ff001203c8d0687be5712fbf087694adad79bf129e61b2df882f146a4979bf792b51ee03e4327b7ab2ffd5df027fabcfef958b0989f108d14d71e1d502ba0efd9adeb1e26f87b7d5251b6b27afbeaf72505fb6af802ebf10332639d858e3de12b4b89ddd58d2028f5af1820d2cdff1895809d83597dabf225910b3177f93c7ef1a2edbb2632ceeb499e8f67efaa57065b066a72451a04875a229a9f78da798dc2f58d876e9ecf2f25eddf6b1ea4040a2b5df7973e8f1c4c5f0f9b6d40eae855d097ea1d3874c0a293a943b0a12c26981fa801ca881ef80ffd5d1fe70db980a2fcccb6afefcf5bacc0d81b8a2a4a31a669e40443964d5a89347fcc9325778249e6386c935f6d38435cdf26256884298481eb1ed330f9f24585119c00e2210d6e7cd6727d8f730b8c73e5943aca7da79e1106a1b1b3bc10811acc15623d204d6c14aef5d5fb469456db084aa3503890794bc0410c37de09e1e9954e6a63660670b7eb4a46db05ac443e8fa12c418a9c8c2d4f536cc545028105259adfe644265f7a4c7c6da5e99390f9cdc9cc61aea5c85dcb63eb3a6194b22f9a13a4bc1f029799999b3856ba779c7aadd4554d14aac282e4dcd7fa8cbed3eb208c09461c9f03e0b35edf45253b0835152d8c20b76317163db7b53072e7c5bfbc2276927f6dc41b92213abfb015a45012d9b5a1cfb5c69c9eb0304f004807f01c16a291b1a44cd700844bbfa3d0e1eadbf0f995e0c3b241d99945e0806fd37e4cba4bf82c19d5983bb17c00a9415486ef0b9907ea27e247b687e356f1975843f07351ee20ae9cd13c75b37d9c9a3a32f7a298a68f42a38d0267a4663c7362f17b796fb8a4e4ced3938ec91a0dd151d94b0297a74e5890ed0081aed726c7ef1c950487902a1c73a79deed1b44254513ec3229ab602b32b430a71f7ee6da24b4ada8407dfede39ecdbfa8b43cba428404f248998318556f9f464ee3190e38f3a7290fc69edb34f2285bde91b9946d60420474aca25279806a3667e65d1e403ca98da8a2f7eda70ef055cca738e6bc4e0d239b96e30c5196de958cb3066522d2a4c2a5287a6aaf9f1acbc16d67141f00ede97676b8acceb1c1fe38df43495a1d0d9b6970c05a56c24fe7c7543cf758d6e468cdf613847b4d8ca4a5aa46c7e0d9daa137c64645d1164a95aa419d0806052ef981646b65734c6cac67ed0d416bb8c15335473e7b5fff6129f79c441ddd9dfc69247b7d63c5228a072ab6e9588014ef51073bbabec91139d6aaf7ed1f644eb45b8e6245416d2051572f7cb613e55700b6dd6cf357ffa861ff936dceef488af111629b70d11da08484ced2e516601cac9f576e793edf2cdc72ceed15a26a643fb6b538c08e46e4bc188d2d2f0593f015e317c8d9ed035b06a2ebc4d980357b7cb73afdbd1db07ac59eff56df1d34696707c7dc7f29e9641aa111bb6ae589ecd08462b53f41fe843427b301f8e031d94aec82792834ac8f80e6fd06b45908c90f92a3aab1fd6bc1dcd514ab853a536cb23c98ac05e0304fb0b05913b20864395b135a3b30c0c8bbf643150ed748c4cebc9383b39d21389ed31676939ef289dfd0ab28dc0b9d86d12d7f13195de577227550e38361ae455e185a2f7934ca4c09055b7c418d107f47078962a24d9a4ac73695eeaad4b7407fb4ded7fae87b6954067e263a57710a49e25b56842579a0f30931e03ddf1c089d8c178e0565283f715b516c62304bbbb1db272de08aa76846c31bafca0c4f1412ff42e81b688e362fcc453621da9048a3f0bd3b2db8f19c52c2452f919451cb916eb4bb196132fc9ca233a28fb8bb4c38a7cb0993f90e7b7380c0fdf072c6838974a8b8c99a4367e4cac73bed79329cfa7bad196903f67514a423fac53e972059e812f53a565e73e133f711ef787958aee66019d44624fec2d739581679e9245128e4d2812b98ac075765bb29cb7e722d0a7c10ccabf1e0d214104bd1e35ff23fe296c1531f7bb4806ec2e611f97dd4d449cfc2b80df56ed2d7cc74f6cf8ed197798d5df9240bbdd99266f33d5ed007670e445a8153c50bfa8627bfcb4f1e76227707081e22cbbec8158630d958b31def9b38a3f3dc1b9c89abb15805daa347ff0b49b0aa31afd5f5c03529d775cdff582e62fb76822c5db3c90ed293673a3b5550dfc4e70530c72894ec2d9166898e1fa5c8ed8e21c56c0b686e43dc113663a2559de693b022c0d955759459847df270697aa0580247daabfc14fbf62ae87a41d0f490cdf463f37dfe64db88bdfca4d33f8b5189a6815a5bfb0c74fcc7cab978a9852f63626d954df3bb7869c05fd5bc6e76ea600db098340c2c2fc563bfb9a7e52f247596ae6ffd1dabf2677816cb18831ea21f7b5aa498aa2077a01cfbcea01f7be76e0afa6477ed0c12c9cf78421c0a763671c0821ac70b1d1cf767a3965f38d4525ae237e578975247d8d055bbc42bb9910a4512e6288a26b07172c7436e50d1124a354b26a74db42680f7fb7cced71995dff3e454ee36e04ba63e625a1bbb8fcc18f857556aebbc3289f8b392ab3987e93e02463dda6807918ac1ffbe67f019513647290dd8618f4cf7c14e09a00744b705007a794e05056b6ebad888428e31feff36315ea090b4c89f8ec18a24bcffc72ed9b43d756df63ae01ca987cb99919ddda46d133d7f4b0ed5d8fb7cd30388ad0ced842ca08f033085baf97e32794248b0c95e605b7be7b8946b2929f6754ce5f8f1ac96be498a270b55c1b22351afe354b9d33b827ce6abd10a9faae89cd7a8b57872711e060972e179185762a5cb50ca675975dcf33e47adc13fd94977eb1d7192221896164843f85a2eaaed8c13b4be5980c325417efb9bbc54347ace746bbbcae6f7bc5ea34f8f4a7f010bff6529956b100d77a194ef5007dbfb5255ae85d86ee82c6e2792a23a3480c1bfa11a52a36e416b31193904e4b57df6e32efcd118edfa252e2f46676e00cf407b1c4f788b9f7966b7af2f63215ef3688bbfd6fc517b373c66d7326a72862485eeed4d835fd400ddb7643d628d51c3e2705ba94165ec7e8b3093805f9cfc99cc10b2d6b825c4a9176c00be8688692c2e9fb7f5bf1ea2de7b2753853dff81087ce57718084dfa559d2c34bc8867b77b0045379bd07078173d87a21adb499877b37d4ff07ce21165523dacb6230ae864dab3c0e30751e2a93bc1713a5299e72ce393b338ad2b659b3f464770ddcbfffb181104f1ed3a06834c0b9a10ccc76e6299c752ef40011100cd57452c8a03c0915cd2ee5206602615f5179a4f4c6f0d1b3ec5c391a5777f8a767d63f954780b0763c2e1e23b82e2c9d3df74dc8b5bf225878560912894bf78f6ee0013ac98915779d9ac2bbcb7ce5b4626e463c551be56e5f7f2a839165ad79fd322b9df6e77984fc4debcfdb09809605d004b128b061d61722306f5243f29cdbe0e5e08e766d2a53ce9cd6e58a41e605fd0b9a6e98ff5d4965618959743fbd8960b9b73fc7b0e398b8f6199725b20ae61ad702bbec4d97d4a6018cd6814cf0be27e66d57907db56a4bb49f846c63e12041f044839ad7be926cad9f73e80fd4b221a272cc5ec58e17ac8175ea3e9eabe77be062d6acbbf600c98097eaa9620c61cfa3aad8b545ce35081380c1c3e680a4b4a5fc662bf3051d68654212776084b913598bc330af3d20f8673ca49e0aabafac4cc45be76af9e138b4484f15a7fdb1c97c97b6ae52f6ef7b054a62b88fc3b182dcf9c3a4a3359031eaec1f56cda356b8def994b3eea600fe2481a2a58f3d7e878d28c557d16b5c5283de0e5be7a81789db90c59aa6ccac7deae00fc165ca2d1f40db77cec74f7e7afa0c6e81480444a065f9bc9a12e7100b38d9e46d866fcf896413d48838258d4bcc54466be8670952dec45ff4e606e5e75195903c18ba801046b2f958bf5e85e8cc3f7a40666d7256076d65638f8c2fea83947004ee31a6f553e9560a99c8aa55c2d28b43211cea3ab2fd6b545ec1a829218ac40f2c7c924ee2f52bb47ab695e4311cda999ecac2113d1a55cdb2ed1e6a198803f3e1c4248db5942165586861ed3ee466671c9fccc0a10b810574448d4188fe1f13e111118a7688060b4e9b2f8158d3e910864a4ed45bb37cf103d83559a4fa9ef2994f6f7145a6091b897a61c31cb0e42b7196f911a9955a9bfc7bd9c5438a833d79d8b0db548a2462ad1d0984a100685cc91ef5290cee00943f4fe5f9125c10b28ef7104e56313f88e37fc6b6c4c18f7bb5d42871980aa27db2227994a0e7e54d8974b4b2a7f4d158cd15c400960df0b11bcdb592d70d4a5bb09a2598bc65eebf16cb9cf5b77cb6da2c5fbe78bee45fc40687d3e4cc5412ecf9605ca85cbac6039f6f195e66a8c10b1cfb372857ccd493eb9445c46da6ffc683141bdc08df8c91a14581ecd23b5dd3f141534d5e7cd84cf6611d465d7a91583dba74dc6f1537ebb274fe018acb117854cdc05907d6620b9c899af278d8ab02d69449053f3df5b84120f6e8158bf6ec0efb35a449f006d03a3957d95c7cc1008855e7c07d46273606a3917d4938c848b9d3ca4ccb620308069d80dc7fb17a499be3cc26f53a1121e0cfdb89004c2632cb8a31a3fc3ad73b5c50a655650f0c258326a64a0a05a7a0532e46980bc860b1230004d47d10f8cc1032d2859c49ab6cf52c4510a54e28777e407b532a8550ead9e6b8dea5fc8007e23a133f2e8dd27b1a590b83825f9c41f6bc507f044915e607fe5b94604dd05f43425b56502c97190498ea2c08b7f9e3c763d9419668efd1c272b431296483b237dfbe7a9a5a126dd9a870a729351da9e231f337fd87e98410eb830dc233336e4da81ad517c22745c581f4c660925e0b53a10b6caad6c0485241e5c8a21820e749cb59b7be5d7e16462f3d3fc81118a2af80084cc943c06124dc6a90b96bff22ba8a3652c9e228292c532ae80ddd2537405f5b43f1cd7a27cc8341acc62e985d967ecb4f9753dbb4b6cab3bda2997ae97aac17fe3bdf1e8409c5bdf91f4400f38581d9ff27baefd9b14a493a5144beec147dd109f1b934003afe2cf741212b52127973f951331fab08e2fa89bc2d5804808f0dd92754b72b9c2b83b0e73a370d709d7d785bf6bdf25936e0d5f5a05ce0a0cfb57b8ef5bf1e7c363bc5b1d28e7fc033692e01296f5f3d3deceb7a94957f59ba4aab7c812397867fb74373df66731c3cddafe6feac9f3e7ab352d96ab42c0dc858a2e6cf1ff23f77bd6cfc4c4e9dc54f0898d3721f3586db27a674a9b401b9cf5c3bd73e72d0ae971fec0e72a8cd6f8a018a5f668bd93c90a0d12fe46bd100547668d238f21f7326037ca1babe25a82f935e381d8c139f237cf79385f65cb40142c35fc4e92e794c9b1215aec87280e6db2dd1b1aa5b0413e8c7b72c38a98bea4d976078b3ab8edbecf68b447557650c99c3b7f56abce78674347ede5aefe1896426dbfe6b88d2d09306bbdab0ddff5717f3d19f29e45763a1e6ce25407e5d1b2deee9b152c784965bee7a44331bf73c82e901eedda06021efd13cb77024de4e353e31814c30ba85af9708fd30487450cabc5e72ac392f4faa920702c34cab371074cb0e75b01260bbec31339e673ec15de4b32f57c60e4e96041f5f01fd06a8682dae410fcbfb5f71e75c35a845bba1723fe9ef000b8098769bab92c91ae9a3b09e9488021bf5b2420c8eb915e847101629a1ef5b97a468d880134d00c531dea8cbabee32108436dd1dc793f80b9c0af92f4270b4ee4676909f9dbc71849ba9fb3f74ccaabe5795e65ee4e04a10c154fea541fa72613f75ff2fb9595ede3f96304e63f1254247a4484e7f2b7c369228be27f064bfaf17fd11230bed2f6fe3f091df248558dbb4918e61fa6cbd271bbe5454a1ee61a65e7cc23716a1033a58c379c0d05c9af8d89e07ab96d6d3bf492c9a43fabaad62183f39ac7ffc112791317205da1c70c0a6dcec1257f09e22a97263b3535c91caa8ca9f93a6219b14fc8c6919bcd3e21da8fc7dd2334a2373cf4672b784cae5b1e9d353d7db65ef26264a9f6d610086a7a2b43c60a78a8a0749c8301d9d0c39116e3570b3fdeb22c6044d032678f6cb2ec7b6f77f42a6ca0477a8765b88af0586d838e0d743d9c2c7910678850ff646ee0339d8deab31c5969570f584aa70073f4a9d96f803a1e5f04f6b8d59ddcd414e5d2d66dc4600e130e7d6674d36e78f77b5f818fb4d57bf49e8d3afd82c0850e9a2b95f9766488806fd5beccd68732b1019032717e6478a0aa87d10399c1cc65442d9ab3a43c90bd5cd14fbe0463bf7e9691c9b7dcd735ddf70126856fd607314c63d339e3dc0bb08a5b417a4e5afe1373195d988967367772ea37b0099a185ba77409b5d1dd1a08099dbd893e5dbe176dc367869ab0e47ee809a6e590051da83e6b28cec6498d4c4216ae792bc93b97cdbafa184d91864d7658e2df9257ef4085c5464f932b66fd24e3f800657e89d04795513aae7f489576cd104cd036433760189e7de0de9aeadaed30ca76c73625b4637c53b430f34110083a7a77b1a5603187c639ae8565161962abef76c802f7f97d18fa6137bbfd207ec64b9183fce579aea0cad5e821ad5230be996e7a5a00d6b818d7c39e1cc0cce9845a3ffba34aca15a4adfeb7e6501be13584207ac8bdb7f8dc771460e6f4f77ea716f60ab18e8bbd4b8c60dbbec251352240811a8dac167318fe506babf2d34e8cf3c07ee0b81eb14dc62e6f476377df2359ae191ccd5a9c742c45060423ba0edda9a53761aa04d780863edd746dc6e64d4f0b56662f0fc02057c5f0109ddac43c3ebd26dccdf34512c10f9339306b00bc0e6ee836545b069c3a4e7519852d0bd5640e82d02c570354b36d85543ad5b2c4b50c4b5a64e35a227bb9aad8dfe5865b824798924d74869afadb0f4cdfb7d3f2da26f562ee078bf54a8129ace516e5d2412e73a73dab986cafd22b64b6a62ba9fcd837708119075df40f9b82e614fc85d064b41600b88a47480c7bd779cdd4a39cb4faea9bdeccfb68f56deba88b6fd084547558d39d71339e5cd0ecc5028cf18c891a39902696ea745d4ee6bfaa9c8114d52bdd37221d46f836f0971e93ed3cfe5b83bc120a5cb49edf448b373b841ca31205d35b802c740c9fa80234d88eb006d84c457c49ff92ab89958b9f8a8f145f4941753e4c84849ed91324dc9edd4383cff0b08a09b764bc43d98b7310f7d09c3166255e4fdad095fd62e54361ba62cb49b90a44ad43afa971495877733221d9fdb25f073245f6d8072bfea6c3bd2162a207cca65c38e4e47f90bb7ff4045460686e4bdf309bf0b9cd54444930a3e25ea49b2baf97f0f931c01bf76fd70ab500154ce23bd4bdb079029cafd1d8c666755e52252c8c58365707fea015b80f6c11d2253e61849067989d95652c1025c259b9c75da772ffba035c8983cba0b9d237d5828681382d9363d333ba2167c40644aa84c0c7997773f285d3a9c68a2cf1e21fb549fbf88d3f9d887850c708e87016bfe50b5975116e9de16f31a28a5cd2d7e7f84c3add5e5916bad2fc1f5f189d3b73c24a2254db3a8e27d497385fefd25568c4b34d6a8a3bfe7cbf4874ceed4f7d21e17e8ee905c93fc78f96d2a2e9ca61f2007c5f46f15f9e94687041f15aa2f2e21e9b81225ae447a6fa11bfa13d9bf08ce3f8b56c153d4325e6fd60d2f4fdff1cecbb64574fce0a3ae081fb65f2c01eb34003e2f0b33df2466926e9c4d89cd684ca3d09986eb82ffd7b4045db76277c64e61e65abce1f00c805c857a80b064c3cc5d46216641388b20daa3863556cce00f35e621177daef79db36a443790f9e3df3f0bee3b48785db09fbcae4ddfa00ea36bf8956ff8337e859e855b747e061f447d4675c49ce83de39e7964aae730e3393a47db68da4afe51810d841bd07fb1e11209943e7aefdbe663e878edfdea452d5551c80b7b942023a2001ca43de0a9a87fe45611fbe0fcd340ff906f22126aabe4dd2ef51a0d953b88ca942cec81b87ae1d7eb4d11def716499f5bf58436409c252d0b2893ed4c3d28516819deebccb11431e7662f01e9666537fb9aacf5a4539ae0bf7209f77ddd2c58b8510d4ef01d006683dcacae764e680f393ee6e79de1f957b70f72fe829502c0b7d0bb4a2d2a9c784afdd27bbe9a089bc55fbd6d984a5c4b01fcb82b41d0da9e2e39191ed2dc8730d6dc9b52daee617069e37649ee279961d174889c2048bf5f4c9d6dbb839c46d25e2e56f55f678a975f867d390b30e0402220f2e9e217b7af3f0633a1d2ca8ee3d22bc984dd9787e356376c9aa84159c7e45324aeb287aa4e3aa802ced478781fee60b7caff8620569a286ba188786dca730937052cce065dd8a5fb35a2286b3cd0ec3589d5b748a9b78b6b3f424e8f9898f6e5be120df453a15cac752ced3753ca211eb866665cf4e40acceca38beccff1996e07fa823465009c05e9e8ef32b838594f456a688d26eb5440330e98b2a469b17bc5f76c708f8586eec88470ab05260fad63913de712ca0cc55882fc1feb2cd89d9e8369a954f5215201f224cb00eace605351ddde382c3e5fe6f0266b2f9cd0f72ce52eb90d9cb22e5e3af55eb17b1026188abd9135f8b16483ff955fcc269cb0ce798bd421103f1fc5f215f9615603c789d94398e37750faf1c6c08b8392fbf5af740857fe82d803435161c708b28f72ec11f3b16dec7e0626d4ec5994bf10851364943be88634df8a487c1bb3a9981a63cec35756fe58bb1bf781d56b5ad2360d0f66d8c415be7174af55141376ba045c68fa10d8f3223ef0642316b9810fc5fd45e98e2f0ae54ee70df1c930755c04b7a4f3ba2cf648fe5cfc698886446ce540f9c345886584b2f4077c10c06978bb12a099162861b2241b935729b8bf4792211d709ba5f995ab593194ffee5a8e54be8d7eea8831c062677fed3f5794fb07b1bff94fae9bd6414e51daa997e27f38c30708325e565356d2eba99a832b030add3eb70a1445b39b3f9b3f5c80af0a18481fe1e11082a315bc0bf14c94af51b8c6cef8b30cdee409c6ed947bfb15909fcfd5897ae99af619e04867672c249586f6c159a833c72289d523787af7e09ec01b6e77e120550f5aaab912167760c50e567417b03bef12e5817ec5b0b77160c12c72a60174c530cb1a2849cbfdee6c5b7e5ed078fd919e3bb5a3bdba2f0bf520707abb7a72153f70b74fa1dd06b37aab400315ff3a1d943e764e4f53f12b5bb072a694dcac2d59aed143087a032777fb2efc020822233455822461ed1e5922f070d0d80699f9f67b8dd8a830a54b78b907556daf132812d61fa395c0b9640438c5e7b3f333034ca89a6581dad56fd8dfbdafac0efb6f06d16c1a7486574af3611623b2883821be4684c202e3251101e61ce7db7279f78e0c632a190c65bb0547c4943995a44bab829b124bd2cf08ab5862a0d96e52c8765069019a5ae404fda03334fbf3680aef0b97980020a935f1aae7fa913afcde43a77625a00bcba0b896d326a4c8ac47ddab0d0e8041a313376a8ab4236badd1891a86f4c6f5bac91ad82a84287262c53158ee3259dc28836c6bac878b94b716f43fa4e4ad52f5c21cb7c6060833b538bbdab28fd25e463e4f7d234f13ea28619a29b26d208712468ef6c507367d5a6e5b07aeb4c47d8668bd1d90cf3805fad53f59f86026e5133ffdf5234219171498d83a3c0d3326b1958682612a8215b6e74462a8dda44ccf807035ce6132ba2712b8981c9139ff210d7c4058a143b4acbce97c7c8c68c3c0ff2da8920264ebc42ccf69c3955a916b9ed492f8b3bb38ba2cf7ad77d1ac3c488d3a37da521898779e1f48e1525cec00bb8a1c4df84be73d96139cd546702be9d0a4db742bd39c2fabe4a554419f1e9dfce7de824898e717bc5d280977dee1547e9a27f4794e199b649b1f6d0f417719679e7cde2fb4a0e6b1620eb87673dcd56159cb85a2fb00a5e23a8095dfb4af92ad4622ce62caff66a03b7971fad3674b578a8780632dc7da038b4af91afe4781ff5df8ae568ec669788564111f9b4a1bdfdae23e07ac1a983b71e43026faa39955f93bed84bd82f27cf58ebb4d5467eb282ae063d9ca088c9d91bc64c997bc14f83eebd6dbfeb132ee76fc3021a9490517e47e9911981cc3d7693458434c381db35453ce1f60dce08ae43cc00b0676a8e8b368c0f6aad68b0c76ca1adcd86aded60359401ca8d24695590aee2d916724efaea17f02d10bc18eeecf1e9172323023065f2daff48f0e992cbc801e5732bd44960cbe73d1aff529f6da913f0fe77e932fd4d7576fc8bd88fead08fb89c11dc470b9f844cedff75fbb9078d869520f98e13b0059973e6a96c643c75c4cebe8be45b4e347e7012beec821617816bb9cab39904021f56d62f3450289f6f9fc5631453a4af4cc7da43a84742b0ccfa43ad73c6fc73d47c45fa51ba3f17198c0a879df6be858a3b0429db483637a0ed56e4057d2c2912b5040b85c308a3b031a0a2e371a03982278988eec305b46606fb7a1f87dddb63c18ca122e61fa32c8f296bc4c5d46af94f3591869247ea2c01a081292151dd713b64b960b7ba255e656d33c997d09d5703410695457ea840c431f97e090cb538c6c8e2ccaa21eac8f74c501d6b3f74ccec62b9d0638a2743eb3ffc485d6cd4df2a7d72c8a494a4c5e8d9529e11014ce639549898e84b5d01a70abb0f1d16aa40ed7f00606b9d7377ffc9215dfd14eaadd9eae9b6a56e9bdb6e14cdcc90d1fb6654bac79100fb49219e6f5d1f15ca25380bc5e6944742cb965027ecb207086e0a559760f014159d5b6d4cc2c696865a00b2ab92266a578bbcf9038405df6e6170cd44fc9a1789b99a515dcdbf19c3d865efeb135afe301843d90ef6918a79327630455fabfba07061d6728324d4dceaae5983051cd3339d1311b098713160070250c0cc286d1369ab86dcef1770c2c9b306e75743445932ddc2d7de641c1e4d711c8eb5f598e505baa29ed536609472d1b0f0a1890544b98ae9dc353fc35d91f64d4b42e8d13d69299344446269f05197907cb4032868a27b84bef6008110200ef8bb0cde6dd21c88f89be85a994956734bae7925725fda35823077640aae650f0134212351c14ca988361fefa7a9c879f339cec2fa680578acd0adf6857cf6336c20cec7607403ebf23726081dfdcead475fc03170fa656f398fa07c0bfd6ce72e1e1582fe7d78c04dd4a0740e236001c369c3e25379fe13c976fb6e072405e923e24d091e2678f8b2afa26c2036e701de14f838cb910a22af632f46ac79041c87a23918a98de69151ed58671cebfe4e4fe1705f15c85b4fbcaa185978d0a58bd803959887581e81bb5484dba71ec1a7127d378ef4312713057b70501f82c54f0c2596e184117f5d8cc5531b47b448972a8ea4100c5da470078a1689ed95c61e99b0f52c6fcc151d331af5f168aa62dd555703f982cab5b17f2a34bd089d77db8fe9fb9091e4aabbd14b8df173beb6a12e7781e187a1318bcd70f1ac4b171a961ab31149a267f862fe94791f269464ef6cfdfd2ff51f9e5548eaf1fb8f19d4863b7459a7ee5fea63725c84dc961644868ae5ff62580325bffb967e86fb06dac681344a09ef8c188b34ca6268256c684b8e13a31f6387f1acb23c8f1893215be18ca71847f3c701fa4867a452229190e1560349be72fe6cfb0840d3c05c3ac1f2b5899d377ccefe8244c67e13235376bd838993bc5a89ac03ef6a99f736c59e9331dc10e5485d7b9c30f729681e42d05a8d4f2c0bf6f3584b6d9bde49e688e8de9e333e250fafa8dff1e015cefaf1235f6f84c852f2ae4675173205966c932faf5dfdf96636d04e2eb7a72e7c3829e1818c2c35d3acdee9f9c41c1644f157d79341dc64403a79b4d40e20faa60680a58b0fcc4e4c3e2b085a932e0c14ce7113d90d52695c5a322b37f645c0c52c637b9502f47f9f85f6399b4392c5dabe14a799b911c6abdf20f32bfe20702f3cb3d44ea19a1ac9c50c4e1f7b6c0f9a48676b3b12fd7a7457cf77704f74c2a4d924af3321818683b6cc3eb957331d80e9265ce946b56b9ca385544302946cbd3cad4f6407ea4473a6aad3f25bb09db9329a1bbed359920c881f88bee29f9de52e12c42b3ff2af67f8030f612810ac08c13a0a5c918f46c161ca40765a1d15d67b0164341ce164c5c86ff587c66aa7a083e0aa013347284b5e03a524fd4f55fe54ba6c6898a67ebd578d30f0fb9f6587ff66810c01d953cf052a23d5cc4c05bad4f936ae7b04e2f915fdf6a7fe14a446e54733b12633621db8b359152b92f503d8e8f9d4198330e3383039304396075edb9e2d2c230b4de5521fe714ad802c1398e62c102bbaf73a664d668cbaa7e0ec37b012e3de239f71ab07b6c43ccb653ee150ab502b72d82b470750c01cad49c8e36640dc8d3e7b9dc13c7192c925d4c1008e3eca320a366b32009cddffcae43d745248eb8f601df4e1e245da4771e0cba8b9e7134ff794ed65c2650d5b230feeb020471452660d445573e1074806828891f6966d2a0dde0301bafc3c0c6c2b4dd4e474c9fc5b143907769bac37e85b067dc576633b7dd9a3f95a5e59e0b845738c4664d0cdc8bbc0f717fc8b37853d2073b0b7bfdea42088ebcced097f94e79dfa50494bf317a69f34b284f8330f80b78fd238444bb2f8663551d8cefb94efc36c7064f15bd1ac3a93eb1c15473b09f31eb5ab01cfe9b0ae707ddd056e3d2722ef2749b891bbdb13474d40c7556040e6fb2a1b0f7747a27259a6ea62c9a6a8c57a021496e0d2f1ee374e22fc40f91c2c9f4e619b05622e0874a9ad749369f9a898d04b8205c2418aa45147e1af18c1fe8453ed7ec21f37c3cb2144847d2d550b422a60f1abe839c440d442ed8a1ebf2483529ee80d0cf305f4b6dd21d9b0b160f8b21d03918a508e8a98992dc2aee537e4556bee3ca52d4f1ccd67dbaa56184ac6358de7f997fa41c05ad5cefca89f220fffc00822d2b0a30a63b3bd1e79cc7465c519ab52f5f2cb204751736713b64c06ca7df4a44428a16d5b2f0d28f70b87953bd1c2e7fc163365cb8fd6c53345b644e7af805615c516f4456160a51e246c9c1ad509aa9447da81f5c0c05df5c8bd03d40682bbda79893c05f30db5734f635188d202953661d403fc387da46cdd4d9596a6a66ba5efb5e70b4e6705e75605b16928e84f4a292f3c4e23ce67fd379091f205a0be2e2a459ff8704b40200294d4bd44e658e6c70d95ba87129526f6cdf0e14863012e941be336aabd7d4ca809e667be28a0f0bb8cde3a1b86b80afd699c2711f9de467c941503f11e8f4ea1f02f3bf48e1f6776e3d86762423e9055db6bc5d361903d240c3dc7b16d562dd2d1dfb660434e33418a89c4fbc1dd26f03557d7961d2b0ee1562111fe4e9d26ca9aebc7c51dbd61f0a0196273a8d7f0a966aa172dde8316ff7ec917c43508af6930d86a7bd76592e7ba8374800b21f36ab401960485e659f833c9ae18eb6cb94ee624da6451aad473f990b66f3b9efbc32d891d38a13f1f991fb37dba388038e3b3cbd9d39c80fa927adc8923c0c567ee69b3837c0898da734ad27a3a636a465c25bab7fe320ecf937c4245e7ab47577c1e6d248e712378ecd670ae6a2788e6cd0ae5a1f1d1726c63fe6248e82a250b5b93bec8719bc771f12af85cfe08b294552136f13afc96c25f77268611b0e5c65db9e96eb93107ca4c889897a218fb89d9368c0eab8bb3cc6e09bc16d2afa6cc960a1713cd0aed0c44ac8194633091576074a18439ba825b77f4b218244f7c9bc6d6776a6556c238bcf5951c3c259852792f02b0d866b0a8e23fbeef3f356e77652b82f5285a9bc0221ef3af77804008dbf8fb4f4f7e2d1b974edcbcd6e5dfa5675cda6e74e270d0944aaf65c4ce37423ecb7dcb498b5bb94f953925d499fe8a77b354f22fbfbc75521e91ed3aade968473588e8f67947279fba371ad173066ca902f3cf46a022d346fb5d866553124a095647d75da85e6d65021f302b57af54eb6150b5297c5c68bbcfececcfdc7742361bb84d35916a05cc9ee2499f47c19488c73a1bd4ed2241fb38488c129539f397f32caa35f42a39e64504ae1f6ee47ecc608cbdb4ff57a03dca044c81af3f49fc29eb1e869d681d660fd2b386b74206573c2c84c105d518f2f30309130504cf5a7367eadbab11d686a9d5e6a1c2f171f3a18e1ef713cf25dc1fd79cb05d06908e2e33b46cb3909fbc44e736b7fd4537bd5612224a3e2aa65919d84c83c85eda2539a6b0460cb7e6080a4947f4a78c6f18e590762b35ee8b18788f53cdfa3d8d4be0465ae0b1d387d76d23f83c4bf3bb104c1d6875bbaeb9509a579650602d281bdfa6ea4a3bf54fe2141f05aced706cc01ad588d866b177cd0574c6dfff91a43c148e49a3df0f8d3b5ee691abf3e36ad30afc7ed5aa8a3db3a13d50de290b6354f6f8ff587eb68c99000d9fda7cfeeefd2c153fe021117499437275d66fd0b0144ba2819fc4a46ed0447499aeeee4bd5514fe6f85425b73033f3b895972e689761707739c697922dba0cd3b636242a907a06ab949a2026b2201ae8a6b1f6792b12d86b6e173ef597b78a0f73c5734e817a3978163970262e5ee74e648283e9161511803f2a9121b6e9900e1d19af41615aa42f884428788108fceb61fc25c9b5e16d3b74f6a66e9a4b1545ac445e55e0a076fc65a6f0823bda5f3f3c401aedab44f1b3cdc011058cfe76be6e8f81a8e66b069a58ae6b7fe6b78702c2aa43b5c6cbc460cfcbdae59cbecc1487f0e0b7d31bc1d617ad4c8390509b88854f6288ea68682a75fa3d4d886ddd067232b596f0d19a91202e6f59e1379584318a015390fc38698a1a4d6ad2ece8d49e40e30c6aaa0b2e84d09dcc48f3449c8e8295b57f475989623a066072fb760706d6e35180670adc36cc545025781b7483a0a2e7e854f5de6500d16e32b0bcd2794298600ae5227c7f6b6afaf4c8294e915ce870721466427d56b84b156c308f9c0d220c21666aacd8afcb07c34d1acffbf23b191fc38705850d9fb9e6094561ce9b778f2e8b55b1fe9f4675fd46e0e867c508d3ca6fec29430b4107da8fd778510491dbdb4ace1df0163421bc509341cc6c5fe83c9b5f8d23baea2097c65868d291a41a75e544d68aa0c3235090b78f2d85924994376e6379e7625d6bab2ae1a01b8fb2978688ae1fdafec27e34ad0d3453866224c317c7a68dd135954a54a37f03c9d7d9dfb6ff57028ba9d442f7fbd11aa954acdca775c0cabccb5f9628625f2db6a119f85b6361241e076d8dd8d7fce8a26d5719bb08a4435405ec7707eec8af327cfdf2d2c97de5dc6d3429bdda727aa379ba18730b5ada4b554c2013e94f93e81d65cc5b7c8f92816ad0706d9b1e96b2d044d0d076c00ffec26c7170dcca26f4881538603fb3471ae3d4a8a02703259a47f50dfce6a285f554ecec884a11fc24125acbd7f86fd19249721014178b22bdd171feb51e642fba0edec5687032c81d253b978beea1543dc9286a0b3201706cebb26cccd7fbcd2201b342ac1be1e4d303554fa0ed39b454b0562bd2632da03c262424d8bfbcb56bf242768eeb12d53d509cd2d6ea4ff79d7bec0b7fa9ffa96b5412b88c6b397b526b00655486efb6214f129dc2703983a3dadea83a3605d60f91fcdd513507e8976956a8dc3ba5a12c117c3dfd361ad59f0dec7b0e14321a2724e5171d5f840506ef5f19847ba6b1ace4574965b63eaa3467706956f194d93b4d57da14c76efede99c302062ac693e35a49023150d4d9a64e0219f41655173bb2ecf36c3e97b1fb1a1488980f487b20b4ad62e372aeecf8060f7a937ef192cdae3628f7b75f0019fdadcfc330964c497df8e7092f730202cf8988cb2e5e5228cc3a6c852fcd37e87268e15e025c8dc48998425c5bef1dc92a1b1065d41852cdb7c837eb8269d062c16868a6ebdcc1fbba33c14df56ad59ba9449b9431d1b4e86656ad082fd63cb8e79d8d31873a15a492bb06993affd21ada5d0bc9ac06013505aa15a7ca777dcf49b6fe9e91fc8a88ebd6033aa6fbfbe48aba8f7efcf2260407c37bf3b412a417ef2a21ec727da24daffa5f46e908a07a335a7a6d3b10a46ad4dac0ed9c46cf442314f92139efe330271bb56ca6ed58e6a350846fe168e3c8d47d2e40cfe5c8e4dae50a21fb1843277f0fd34fcc312965592a30365896cbb89b433b439cfba2762de1a7b0a20fa01ff75ab6c785e8aaf18ed0fba29f1c2114705f37f316c2f8ba7f2aacbd5d3d4facae5ebabec1070610fc6481de1a2f4e2dd67f73cc6d3dc4c12a1e624ae587c4b07e4ea6b81200d8cd295971cea7d97a61f5a71a23b3624f5fad6dcef11a093858a6c247fcd2ebe609a89245c519a78555d85590110f2f5171179f52ed84d5603ef42cf0b6e01bcf9dffe0197ea0592e276b5b72d2feaf4b2cf8aa49cd5f4b1afd640f5553bcf7be78b772b5dfcd273dae53db65b2116b0ec7f9d318f34b8e20d192951280f8c93487f126c39d824d978f6ea5edf5fe395cf8f35a8cbe2974b59e823d12e820c345c525fc55ea277898a23db3e2d50c4d0d5590e6cfa62ff0a8e4d86df7ecfc60b6fa8a4e2e35accb60efeb59783ce9b0a2e80bb994e568c561945cf9807e86b159986befdb383e183301645435bd0689dd0cba71c99ae5513e8f88602a337532c26125aaa103368cc5cb86baa587f968e9e4e880dafbf205c926f7e2da520c3912bd6fa6befea1b2c3465de5152a48980f3639a909a48b6b2e03344f0ef3330ad9aadf69fa950b04ca2745a07cc233ba491fd5e1bbf0286776c9b8bd553e89f5fcdec80f1f8ba0a9ea4506233311e1b3c2886d52c1ef08a370c0f731d2c842b163f7988570eaefbf5582e1dee7b5314ece8bff4e7c7722b9ed126082ef9529cafa8c406f1a84f4086a6ae49238e66dc55cde4aeec8d02d723f7eb0214b641e1ff54ac90a6a3edd2826bd1f47819dd503310e44f13304a7cd65fb771ab5049a1592cb9a9cc3d640630242e4c76fc9c2232b960372d0ac7550ee09757d78eccd432111bb72e038634107bcd1990826efbdaf7e8615a7d52280bd459fa5e920f29ac9cfb70dccf2f48b19e290e7cb90010878945520847f8e9b796ef42cea5fec5c7e3846a1c02bcfe7ed116b423a90bdae1ca8ffe04114604c77c7172af1bf4d4462b913f8278894924fd99a6965dea16d4b4d2506ddac46030bc21b6b9f8023fec031731cbc8c7a742a54ee427608a244bf602c4427ea81cd1f1b6b73dfb5a34fdbb741c8dc2204d582e7de31e8a124c8e1ae11f6d47892b39ff12ae8d82f20db4cf644008ccf464bff30e42f170cdf97a36ea0a9e6e260629263be4fff15e328379a7d1e6a93ab114821e2dbd12211210590171a101acc6a25c5e3fe8883d1780b7db0fa6df15891c5a516c76c7a5722a7800a7a72dd22f9ba139c072a6b436d2668e73a1caee26bfdb00b20134f9b5be83519fbfc28e2fbc13fdd3a729559e2de05be59d0c9221b5e4ed353b645667636cbc53520f74353c8e299b3a6e7c538f5738d2b4c9f17882959356efdf6afbb57ab5dd6e0fe205eeb7a0a2480c802c6bc89f4f4457133a1873dcc40200797e691d3fda877c3619d54e124c19acc3f690609d06c8e37c317853861b1427757c8873074f8f20df2d6d11c453ca3385cfbb5336d79fe0b22d5d35a835c4f0321acda0d4f684a56365612c22c04041114c544f18155ca33693df6d9d2474c2e96fde0d6ebcd07d39fd533a6c64cc5ff3c7a066ee8f34fe30672fe528ee9959cae08d11899d3328b4be859db65a4a4c93dfffa3ba03997b1a3590d13049cfcdbd42583fd3f8dacd8072097a16d570e44db6d39eab87deb8297d7daa11f6a1031e525f2bb6f9c859cae6ae4b7e832584f6cd871274939d5df7076978ecd14ec711d14c893b98642a63e765bc7464b05605b28c7e5bef223214bdb1aec819ac6f1f1bf81354b51253dcccc27ff6ce6cba9dd30506b026b4d84ed2a69764e5f5011d07b544b8560849599c2b4377d79796abb9b56edaad658824b98511f2a791db5c6d6a8fc9f53820853bb19b492d0f0e7cb38f133af0e3e00797edd49c3b713d9575b3825d8fe1d62277743f9ed9d8d7c2a8dae9e0b808d9ca88a7ffcad265077edee4a0ef145cff9a42bbe7ea5f97b3b7acbc2547c876c16cc861c95413c4c2e6bef58d5f44d401208f2cc1e44e6dfc69ade72b8e69f77131545568e5f212d695c7372c74e6a20dbb9fea70f8fa58fb77b47e951f1624321ddef95e0d7dfe912ac8d90079030548b5a832c28805cc622094ffad9871543174cf6841585084e5b5952604ae0740bbd3595519a7c6bf2edc1155a6cc0cf5360585037d3b8d51c90a9d357cf650eff127e7e04339272c9bde98d16f704ab508f41828911f18de6876b01bcd496337d83df6572d3890431ab738f7ca097abfc8959b3675b8b2b9b66b0dcb9d306702fdbb00de2dfe7f932dfd0b05d8ac415cbaab6f95da2e40df951251ff76a3e0b3172076b4f4dbb195f6614e748ce243a8fcea41bd79e7ae1467cc7b3847d81702478b27d9951632b1e686068ca7422d58660561b4e20fc8d08db40b8d12cdee3eddf9fb8ed47f2016a16176d3c7d9fa7cacdde15ef5f902fc2932943c4f8b65c30149066a4968fadd367e9fd6acb163bbdbeac7d238e1472eab30f5ddca5b00ea7e7024726b533e77f400eaa33e1bc560b4609e5c395716c052d78f578f5e3aa88d6df3b257348bfa56725b47a98f6f0c8b43b79714ad40162dacb883556410039a8aea7b995e677e6164679af4e0ef4e80112a9f1485c721d5cfbbc248ec3a18891352a5fd9de62caaae7647ab81b0f3101015f3cd25d44ece0d00ca4421bbe1cbb2e15c9ff369fe8d58f1da71772ddeb10007db8f6e104b5e8fb7a756a1a909817a1a10fb175fab4ef5831cfdd82c1efdd47c186d29cfba8f94cac1ee0f296f3aeb27b4d0cc369c840b8fc7d99526833ea9a8438f65230dd2da9ec8f29181a6f3b884502d3434b7739a902df1611d171f5ad577e32ad4539534d56e79c520dee48c1e9ef9c3c14413a17466be0ed99ac57f9e59e0b06d7a60c2daca0f6c95dae4af733dfdcff5acd7c75abd312f96933a205b1388265c1eca46dcc7094c36ff2c649fa9a3b09ac3eb4032403f1594dc856d6d7b10da150667318dc2213aa9c0ecf086900019725dead69e1a62e3dfb61a9e51c4270dca47d66aeda876f23fad2801fb262335e7850387f13a0f172579d2544bcac3813d3722e6c447f25e5765047dda9f69cf2d4915c8737161c1d35e31b9d48e097bc486217fc39260d29b1d98f7000b4e55e0c1d711ad3bdb2f756bbb422abacfc03213306a46d47fb7ee82af2ba5abde59581ff22160f429f10bd8df56db6186428cc7acdf9c077935706bac392b46dfa2c62f45cf3752e9620f0b7fbb0be264626dc7edb44330b373075b7a1de0a050b72b453927298f802a7b58d00f48dc4abc939c20ff858537030f91028bb245d144886b5f44a32e96d1e6cfb519e3a22a4967f5eeea4684e3009af0304612b10595ead2fd6da5f4d78a2a4700c75fa9afba4f1b4a6508b46233b1f52327f199bdb15a07b255d677ebdc698d7b2940102e4de074dcf247388362cd19265efb008af777fe84c9113c2ae1f1fa78e8e233afa3bf1bd688a7e8f6f1e30d0e1d8a63b93f5383d7efb776358ceaa778d48a4ac0bc759f970dea9d19b95f96747f6816a6e44c52a070dfe1fbe2a986847c61048e7b4c35a06ada170398149f9b7fae8c8d7bf86bf598137ea4751f45dde3d3dd496d5d2b99e2d82e3adf1352bac0627bb88c8391deb562d71a448806c9f7ca8bc94247ff6e53c1e3ab5c2463960e2e88c861453a8f26d8e3145cdf885704a381106044afa3a5d5f3a4196e7f93b69b742eefc7961b254eed6a503a73ecd464f0a6b1b1d648f40139421d7897d0f9e0f5c7422de40c733f4aafd1417d330f9ef5e279c41fad838eaf863f3fbbcd22a90489e1ba606371c18f07d6e026aef4c4d37f49ccfff68db5c0838d3a2208534fede7a685e00c66b6e80194a72200f01031fd2848ebdbf8db8613e54bc26752d86405ddde97b3c4e1c407acaffc6731600c76a979de90feb10d26c78aa05283ebf4ec162fc892bd2809ad2a393d231fd302bc3b03ecd3dc676b05b987f0adf62a225021d6f6ce56188556b2dae89e028e8ae2698af887f86cdee05433552046c1cd9ffc990c24bb21fd8840a98342f8d8caf8338eae78f2587b4eb06af79c24dcdcf21ec3c612ed38233802212408010b7cf05c367565dc502379bd334b6062eaed8ec33cfafac25f1745b83bb2bd0ba07053dac06ad9b2eb64d3d0eceb408aa130a9b3504d145ac8cecbdc6a058d465c034a55e3916c5740dd4900a7f386bb55899eb958888504c01779f16221ff6c8de1f6f1cf948431b99cc1ba8f72735522b255787bd63ef774540e69187317b0873ca98b42a3454ba3f006e8e8890bdfd7201caecb76d55ac8b1e37fb3b7dca0104b40d28280ed35143bc8e516b9080a59d03dfc4786698d884fdd56df806b09d8d139dd75add5aad95ddc2925029476962ec645348773895f38442baaa07a292eb86a096fef09786f5ae0b308e999ea75448d50830711fb76c4f9e805d4c9d2d0d406d9829a3ed5d6adbe5ef55d4222dadcbc3a891022c0f52d76b4cfd9136541986e62623c5700d48d67d9e5f78a75dce2145257faacdc368ed735fa624ea1b4f4f408031e1611be475b1c195f34134b1cd7f9c5c3d37fb7e5be8594c4bcd65f8abc984b7d5d9a197e1dd7d7d734aed2d641f464446963cdc0989297a0ace5cb22d08ca94416710281ca82b28baf1c78e29ae4409bb272cec61f14da5be9d9e5fc4f81f1a718dab90bc7e70320a4cda6bad4e2f52f1080929c6a924b19251e496ae8a0c37ea7daf84da1326102ec3fc6b8b4bc69601cf91d867f9af940d819167ed4f7f53c19171fee238f3f6538992e56295106c42ec942cda00ae0cbede5a029d0ea8f5745cd33ec3737eba97f8a95991ee1f99290f3f09351e12fe2569a7306b4bcd1b5b7cd342ea4fa3de66bd921def698a0b397b3d5e3a8f207c10f15523b920a563c33b9d703a7cb668a4eb23ce2a67f93cda5d14d9680f204ee552d6a9db7ed3e8fb9454503b73550b83e706e8b2b3ecb46b51b3bcf6efd1e162bfc06dd950b26e41db66b2063270927c6503ebb1a195a22ba83d9c6e59aa8eaacca18b7fd9fd66fa164c34219ae6b6747b25ea91cee83f57c4adcc886008f4cd96888bae4a9c140dee8524a4103d05a7713b749d6812e101d8a0def757a42690a549cba9033e25e98f7d4f8eb80ba7610daab78d915d53fb66083786a0383fba0d01f277e5db4afccf7f3c9da9c04dd06960307a814c78a1e2d6378d78079fd55ab1b063f8a507b81fc927b1755b98396c7e82c064c93e4e86255fb49c3e60b214f492cf9453b5a49472507901be787b281bf7a5147cd10d94148733bd5efbfb5528f61670884f52f17efbdded2bd9db82e7a40711b4c0c968cd5a39a3be3acafc530dc07888c192d322cbcd41eb4ae327b16916c4996169b38a98cdfde79bcf154e06ce728d14ef4d6d4a6496f0c80e209b18035e718a82d5940791db1fc23267261312e07b52847f9b59567d38509d463764538c0b0e725a6701372373ecce99f7e4d382795ce9e748e176dfb7678aec5dcfe696e90b27f405c430ea0071eadb6841df07face4dfa874b7849fb4b8f39531d884af3a837fddc643c97d79dab169ff592e0530345603b745632fcdbe1479513e00460adac211031e48a8e31315be8da08516110e4b9e10d73f65c07f0a97d9f82a7633f6a3d46cd91a9fc16ab949a8e2812c73fae970188fdb4588ef224f372903d1ce831f2b1fd85a4294d81a927a4419dcb57202fb4591d783b205858d637a6a91b37d398cf8ca9ec1d3e04f82f80073774b04accd837278352fc9d53d6b1a45d2a28156be27f51f738f23aa706973ed624b1d3b0e1e7bb80204760e25ddcdf4b37a4032c9ba137b894026dc40e9684e6d2e3f3078577a43aaba8f83118903f738086cea6c5438181a60c57185698e9620cedde68f049c75ca51632c4893ce1e1e7c6bd235a9a656df11c7e2b1778c40137cac76cab8779848997cd7dab7d2ff9798f968fc3fb087caa0aa210544b4c503c5bac78421ac60c70859e9981b989786510fc361247ebb00e19edd17a662777377e4f8f0aa04125a27fd2ac2e5206a3d6d8f406cc8b613607d6d633a7d6434fb7e3c24e693cf883471f183a7a6596840adf6bb666920f6e2d83b4a0d84a46e9e88d94795e6279edb0e38b80fac913f35ff8371fd684be778faaaf2a3d45d09e3c739ea9d4a05991e98fab4d8e95cf616ccc89abfd51c1ef5da20d67ba80c2a111c633d8631d38771c37a4fa4d9885d1d3ca7637ede5e5aa8432a3e1c312228122c966f48a7f8fa64d7624841e19abed64668e822951f6dfcbd73d7a3d696481a6ae98db7e790715185d0c0656fde9e5cb242dfd1836d4060adee312f0cb68ecaf6a23064a78e5271bebb55e311a5fd6bac930bd95a2afea5723d8193a98b9c023a06518da5835a8a756da8146ea916b2486f60c198bdeea9b0340601a662b5aab79a50bccac985087cd8cc73b05137edac81166e260934f2de0f6f6d069d1074f55b9526448e8dee5874453918a9051493a0b35e947f0dfd3c6249fe25e5d228741dfb590a72aec7ef0be1209a492acc2355b9e3f933cbce3ac3b5bd3d67dd96defbf671e0701e1343d3c704a9a3b0763b5a19d253985a40bb1ca03d514b79312d20b7f76cb73714e64abff87808cd8c4bdfc6c5c9d0c2f5ececaabe829db859cc4ae75890245c7816198b289e464da7def2c8e454217694e521b2b097bfe257d8c13571664aba5f8a87b65e07b98ba1c21d2de2f2c7d3f1bb054047b138d720a39cf7adf5293a0f1f0d999fdffb7e112ef94ddd059c8f3ad599bac57848686bff2bda6e785784b76a12a462a2a923e32f44e0dbd0627d3f2355f819139d51e567e33bac4b03a882422fea324d083fad0af5efb45837e320ce302e1a223b4f20594d0cab687a83e63ef0e6e8a088ae418d8e4eaa22256393efc379b912a4b6b947df278d714dfef58a983748d962a7931a4c619fa87909c53e53a518122229a553c8a566d5825997ac7e201c88c8f2f1957c638ae3e4563de29c008bae1751598e89febc5db4ceb72070ef08c2af51804588cc3f8cef4d51f03396b0e9b77c4b28aaa5cc582aad60ca505cc12923d1044eabd354fb2d706dc8bf22e563ecc3db548317468bb963a0f48f4027940587b60c60ec521087b69e70337f45092e1c672eb2ca0ad1b78d5d7d79aac0fa9d25d31bcf2fbe0df586e00503030eb41863a08688f4ef93f8da1d53093e6d37a9caf8dbeeac3c061ccc6f3daeac26eaf97ecb059fd21d4bf008995044a8efc165b8601ee8f1b839a6f2d0ad6ce580eaaa7e77795c69a9d941ef0dd87f5336d181c5ef1a8f8ffa9eed9293fe36e5db38cfd29ee18cd536b4cbb50c90b4e2aeb2186b138fdb7b005a94ca683c9c1d337d21d9529101156dff5cb77f881c31155ca4bd1643cba914e123d5c687b451f0309897f1841ef8c74a4cfc6bf6cfc5ecd11d5e908d3c147a014fb13e941fca588309aec2cc13aa34da00e2047401a46fc00519b46f399ae4b2b49fae63b570da129df45a9d3d3e6a1e0e65eefa90fdfa6d44f7bed9273259db7cf5e94307dc0df7bfaac9a2eec2c8549de706b1e5d78877ded5e5bb99172b13c418a04aa02e24a21e59b190800508d9c82163705011abe27f73e84f101e3ec2c4a92513975d3eaa859c7f356cd5ac75c0025260702ce85838b177dbd950eddb37393f3adbc2e205205db4fc34705d14ea34bb722e7cca3d7914a3c6f808eb321d44717ae7572e51b9872f33d7f728a91c3ee4d72e15ed03dd91afaa7993faeef8809f74e0152751f1b592512bf6b77d32455a6d6f894857294cd2172f279ffb7429cfccdec45f7221acde5b2067ac4232319dcc2b92d9583ce02f1b24abbef669f2fbac8de3db69c985dff8efd2937c614f5ba8a186b1be424dde20ef32bab6a25a4dfe81c516f99f8caaf42453070bc0a3c7be1112a2355a1baf143104789ad677d48c3fa07fd362f914f5e8f3e66359055eda5e82b15a1cfd4089d82b96fd1cf322081f2fdeca9cd1e76dc7b9fac72cf878142918b4a32e81f3f9d22572b3e1ad1b4e9194425a62d0ead50fe3ad840db3de28def4b991a0336178eac6fefdd99ebc7fa139286768cf30558d9bfb8875499a8054c3cbd569b0cb8809c0eda8eacc0b81cc71ae6b666d6e7c73c4b19911145211a1d45cfe72e2937fd87e9d4246038c14df39698f2caa54ca019a09ad92ebf4a00acee33188a18eedfdb22c78d6bc7e79c6b19779e7561a47c3ab8ef0fb1650acbfe20780c3ad0951e50b3556dbb0d2634b5dfa3a77d7977baf21aefa62edca297fad7841bd3bb4973918e44fb13775b0b67f5257a0ae192fb95475b95562294f9918f093cb13e7f823932d0de7cc17b2d00d1fc79654acbc83960730c301b9d4418f1c21ad050d16eaf95cadc513a1c96ddd9e5c0ea4378e8674988152c52fd70f82ad4019a07f6f9e2fb87ad9e10fe39d2e2a496a30e74f4055780d2a011db3b79124b3b00e8f087ed1f580e09a86c966442c28d97b2ed7b35e37c4a193e2bf53717c6dcdbcc9b41ad6fcc6b02aa83012160f8e5a76e83e3aa58561410466ce7cc316acf64682209f2b59df273479457181752ceb639fc55b927237f30948051d0626588f1f63bd940d1ad85525b230ee0687e557d97dafa26fc785a663d6f7b3e6709ecc2ae6187ea3938d5605125ce431ebe75849819ebdf953453828fe5f7d81bcd51650279f17ef7873ef31becc3f1d8ee7ac2ef0f58f006f184b1785ced223bc05906ece9ca3c8cb565b4a3fe2ff24fe8992d717d99ea867f1cc859aa8724dbe160f60584250462fb9fb1a81bca54e75e6c6bb10b6beef9b4c5ca5f17ec836099be3191a776d887df82279826c05cc2ba693b7f7ab48e0b70638fd933dcbc4c88ab90bb3fe507aa88a915eda9363685f50d07b193a2321990eb3ab5e3d47cb3a19aa0a2ccdcfcd1f66516fca74d0b8b6cd71dfe3bbf629cb8aeed10915024507ee3e6b905ef010a4ccefa3bd612a6b74adf9f62e35899019cf979a9ee38541378d4f900f0bc859ccd4286aae139418de715dd9c4d11105ab8ad9e8b8687466413510147f2ac54427f4c6d4257e3a818a3295191d9d283ae8f19ea3a2159cdcacca4279317a09f7f72ea793d6fb38bc2a1c31c6fa22fe309908872268c66bb69273e5e42c4c460009714e6015267287bcfb6efbfd8d1e5530c6bf68fa3fc6c21080c96885b4336e799a515b2937b72167e293b32ef8c3e57c778294e1ac9fde9c3a563b8dbd2ebcacb366ba3a6478494a4353d63fdf7ebf9d4a40d817a393d06be14a0393ff392dcf755e25a2ec1e5960b68b906c0b3cf1f586eb3063870302eaa721e7f400ad916c323bb77d38020e693339aeda74a23da32e441a132163094b5cee1d7746e4fc311b542a9ccc8eeab3e7e1223b3d8eaa9c72508420178e9bdf602eb5767e999750b8d88554065f6b183cf70d60c7e99f6c126a9e5b4c83452c099bf962c547c3d4bb3c08286e4729d3a2df3675d9cc2552e61ba088d6d0ae3881ca60d96f2b3a81c7671e22a7ea1e2284e0d6e234dd5beef1b2888d57fc68e9e4fabf81dc5d5b6ef8869e9dca1d041b819cde29eae014f5b6945daacad98e7814df6af84b1bf3fefbf705b6bd6c02c42a26914565a71d2175af689035295fdfd0debd067bff4e64df9b64fb8354dde40e9dab9c10ae7678b192b024154208aa76e2d82afb07836a6e379bd9da437bc7a595e46fb9560ad7375d98132aa1c2f3f414999424d7831e3d77e61810bcd21f9b19cbe18d1150fb14db8f44c3cd6716785cb6458134b64da5de49b99ac963c71176d326f0e2d2f5ff4c024582c1d417228288ffcdd2276d8b2bb1221be7745600dfac5acaa5fbd0bce0400f94bdcdd3fc449104b1daa272f3679264000c021404f65bd10b7ab0e23782a3d381b2c5847ca65db743fee7883afde62895a8820e41279c1d3db54d394f9abd1d74d68e91932247e7511fdc72cdda12c95d621b5a7b1d9074f34ba3622da057f99aef72dcea134678366bed43b2f4a200a1d30dd854215a5fef67e07ebe7c4a5ea7b25c759263b82c22adeaba49f8c357bb081ac4d87e5947b1eefbde58aa6ff8db5f392ae480e63579cf60dbd1c62d3846f4d76f34fb85d0d12fe5c099abe080aafa16fefb37d876565b785495b698a15801166e8d3186b41ea5f9ea3709e64b1b21019defcea06e0793131d681721f6460ce1daeb449f1ae33a3a7f30c64cc4bbdc13776f20b5b74bde529ad1c05947ef146ff58f8894bdc4730c4c6ac622b35e273ff49ac70c706dc43536269d52cc7b89ee756c8723a198d733bfdb36dc361e7fe752a3b62bb72d7a575220c9250fa39eba292cb0afd2b4d60a808c2d5d99aaa0d53f1e8c652216ab11b934ae915f8bcf78e30afb367e2c125c53b1801164bda1065956755b32c7c2191089bad2c817331b5dfcaaaf51bd903d53d4611d89644d7f8730ede76dcf27e49e22488a865409880a238486331163100d7c26b5917172ee92769b4214a93ab3408849a837016660a003c0efdb481c8ae93ca5b0f3538e0b454a4eed0ffd048065b97da506d80870ea3af0fb3e13c708cc978ae70f3ecf2b5782566cd46dbe358b44dab7861b18edaf7a2a3c50a37e1e19d967d4709e010ea0dcc898d6650ac1db9fb255c41b136c7b848b94b23c1e7a8c1027adbfa03502a16ade0a693e82f3ea68600cf11037c2800a3e78d2167ef0ecdee11be0908a8c38665631479adb63b6afe7b24dc675a316040e1a5f765e93d1434e44bfbccfccfd70678a827c75797ed6d03aa7f58e5e7b390e2ad54b6ae3294d167b1b47a6c1ff19ae6564cac1b016b8795e9b0ed9fccb111ec482da58de6602917fafda934902c371f7e5de06ed734d74325029618456cb3428fabf525ab92b7eb0d15491e36ae0b1a7e6fd1814fa6f0520c4abbe2209a1731917eec4766d875c89f3e1ffde590f900fefbe6e074c8bacf3c56b470d6d9405aa18e6689932127a78cfb1b7f91213c1996ed0a85f1d05c7062fe5e3961dfcc6d17ea89e233fdd785de092f5bdd8fc3367fdfd843fa0bae249ed0b786b4fb817fb404ce2c77950ec6dce8b6cff87c332fdca4c50dab4af2ca3f6f6d480e7ebb03fa72beaaf01afe4dcab6193138eb894af01321795f72dd0bd749297ad95d406de2d19337cdd6ea630b4c908204558dd5caa4ce317fc23a0e85b50b4ad43850827d5bf8fb09879ac11ad2aa70f9168a119e0bc996d46af5c0ef486cb47501a2ac3448e801a99a8fd1d7eb9272056c097f12829347c99798dcae10e0aecf880b50422db0126110e02d225d390907cbae3730c8621a7c28ef907fcb32a619aa9e120632361cc3129d7a17ea4b5d4295bd4dd03e4c570b036011656b5df79ed22df35e753a7ecdf75fa4a4268a7a1fdc649c230816be8f6cbc508023698927cbe5a34d3108dedcbdeffc7385c70d933c1fcf1fe8b45e3c972aa59d82084f5b416bff259b8316c6e13dfad38b7efa476ad63b9ac07ff9347b14c9f00487ca56423fcea174fb89bde0802a108d4073c6f5c31d4581123b4514ac53b3a574c5c6b6c1fc4a337cf3faeadf85839f9dea74bde9ff6846e6023a25a7ac79fc3473e75cc3bb36b54e49bfcc70a043752937c8491cea3cb4a4b9a050a92d8ebd5bd782c1e50df11abaf40cc7daff34c9098cb4c892eddd7c9669913c5d3598a445093db5b8baa08eab1b9229ac11370d96cff44a1d403fc41d4ba39073cd3f653295c3383937e73269f1ac0514cacc8978c3f04cd9255d874e8ebc1f34e235b9ce87b821948e9ad69af2a8d31f27a965d8e70a339d7294269684ffd8c5d68042c8963b3f635381364e645cfeace390a98f58e9da101a5332cf0720f78e6a02a6d8e353a35850ec6a74de5a3b984ac7f6445dba22b78b41b9e3d549c03be19c770aa00cd2f32bf325da47bc1a5541314e1baef6430a07052aad67ad6f15351836c5d26da0432f5ea5a27108cee7f0288053c7c5644a05758388cd218d22c5afa5e10bd58407e94b7ff41d689de4f40d6b53b8195257c6d3e2c6ea7ef82066de53a5de9dac96a3945dca4ca6046cf4767c668b4bd3887d9195f96ed53fb3da6be99583e89bb7c87de00b47f23d29763545ded372ed06a9d6ba80e389a6d2e6f48fe8f02e894a83ed1a8bf882c5286ca0d128c9a56547b1718e6d5078303a9a1b8764e0b059669b5861c828aa4fa5c6c6a06a81803cf2d45a822fdff70025acb8cd2b6d33419504a948c08556da12d19a87901060ccd23fc4589aa53723ddc69fcea214cfb1770dc50b6d815327fa098677f3f8c229b75a67dd387d01b2f82463ba02cef06976f0718c79701ce8d6b9ce4235e7d0443f745811396f2bb5f06fa71dc25f47b9bf9759e26a503f558b15d3ab408fae79dec16ae9056d51336bbca81b12e6e73452fdd22771094990bb62cf08c62eecb90c97ccc82ea7947b702e2fb922984ec9033f72f542c6c5586fcff3f46b08086ef41e4a936bec8392075744f55992fa3eb985e20f35f15eade9da430771964fe6a53e41b8c43eb193ff6d0d981b1765ab194162c0666b6079e9c3d5c71e2dd437d70eb2514fcb269851cb93877a366d61e4013ce013fa2520b5bfc02de6b1dce3cf03433399c28f48c8d309cd437762b508bfec301d600a4074f3292516c734a031f97cc16c9edd3160cea234939314d6fa6110804855d1d47c11df5da0e090ba4c3df723a6523b1969c0151fc6a9ec6e22b787f9e2400312cda2ec55ee9c368413d9612085a1d32a88ca54a0977e56e6d42803d5a2254c092a4db05e754eada2e702bff55e73ae1717b49a804d76de0110b83a63a7acf784c58435f04e0eaaf16301368d7ceab00053f612e545056395de46b163fdd7fe4a51bcfc6405a857a1d6d63381ce3e51e090a4b44d4fe14d9c3c5d6241f389c131529003b6850d5c14eaa6773aa2e6557c303aedab25456cfab1c4ec7434f40c9e4ec7a999bd76b7a7cbb3faa553fcd38505c54aa27f3fe6b6ec7e9f4b80c009ad1fb95a00e75eba6f2dd49f698e419350eac614f1d8ed868001994c42b2ff50b73ce5befd91853c3bd0ff7c38298cea7bee02ba472de54a9ad299a5b36455d177325d13dfdffa1a2b9e2c6fbbd6c97df4d18da0ef688f0883f67dbe67104c00c3298214cf44a5962a75e288ebdd512043207b66dc1007758d4faf8cc848984141d4dc71d3112980c7c90f1f42445b6aa8d8f8e1fe77ad00f466c5a172ae856926e2026e2ba2f9ed90c8d579bd62f65a3e04b185f2482424a8cddc926449a3856c9fd0540b113ecb6e8c1af5fbadec00de45ac243bb628abb19954fc093ebe77f4e3e12cd0f1a89fb0080103bf129ade5e2d4d0e1f4599e24187193f90e1ad34efcf8ef5cad92be3e0f4a87c275aed91213de611a7663dd6e455f3a954bdd3445c9e0560025d4d0c7e885fe03f8e01ffcb89cef8606c39ca9a7af021087b0256a1a2b9a5fc780b07c9959686114c82e6a652c4280d3658d0b28c6a0133587cd55f1df16a52b14f4f028a01f29cd9e6e2f1a879edbcaa16ec8535406f630ef957de5b7ab6291a23709de78fc9a60dd8a2a7b46960c11759997d71ceb7659bf27a2c6866757de5eab4b5280b1b9d7daa6021490d48ff302e66c2f4c73b45bfe3663ecf3c2b98881753d8852dd651c7529f11dda96e3b17797b48ce578e8823ed67c1d6d413fa450cd20e3d6fd7de3acb388b8a8c89f20c82b9621a78e2db8184741cc7aadcd6e12084cf6c2770a41885ab262352effea424b376558bfd3e85fa01cfc90ed6a2717ddd067497acf2abe3c88ea3b25dc7cafee4186e93a99d6502fa523389917b0537b377f8d27340496dbf9c61b4f64a7aab4f5f091d13c6af4c146844928f5ffe1665a1a7ac3f16ee62dacb5bf8efe44ba761e02c62625a92f6c2fd7db33b9cf1ef3547db4057ba80a97b7b91d495db2ad58f176b1c71c478f22908c45d304fe6c80ec68bb1f9e3fc5116dccc5790e5d62b30a6a7bc4d449e773d26d9718ebb6b180dc30ee8af35dc5745b5639ec654640db2656610ceeeced736290e2dd06617d5f5c17ae7bf7a6725f7115e3a42a2b67c97cfb2e700a7f2e27e864c338802bb904b7772dd20f0628dae6dbbd70831381e71c8810a955f34e6d9d2d2d903ae4452adff303f0550dd8e9a7f14ae4218df33001f2a3d160fb8170ac30e7050a3a3d5e7ef98fe9b684d7417fa512c01957b0a1cff3b3833aba3867be06857037651d39f44139a21753680c1a7928316180f11d32b90634f627d5e8dcbd236461e44c047392fd44feacbebafda7b12431bc1011e20e26f681a7e4aadcddab34db67fb3d27fd5e7c983bb9af209ce4a2257c55e4d23ce0e6580e4a910aec09b923703a71148bb92dc86f8719ea1e74c7b23428e9a964f0ba4c3155ed7afe03986e26075cb177a1273a45a266a28d701c4ec43c5121885f01a26ac678c55dec9101cf57ec4ffba1482bbdcae2f1f57fa8879547e6886c90e7571c07b18b3b6ad9e2fa15fc31f848495b01b49d050e7e79dba2b7e6b36207362e905d1f7800f70240c0f536b294feed94415c459e38740ed2f4f8da923c023b282ef11fbe02b1dd2a71f049ce3493b15fe5dd95847bcf31f4a6ec65bb58eb07b5b94c1aea8399e97ef2d32a68019bcc320732f1e8d44afcfba66a702c77b4530588283efd41bde722ba7c2db82e15e885b143c57bcd1ad0596f91432efb3b773f64351beaed123ccd2e2d9aedc35d90fcccfc754ca144a4faebd9be22d27f4e0e85db11eef26a8e3d8a077fa16f9915a50537cde221bf9bd92c4d1f22a7bcafb31c561a5525f8eb139670e843cefa109ef4c7f6e980d622a56362a92e465f7f97730bd517f30d6d493b64f84e3fa2285b9b5157617540db68489585dac4244f2813b3fb65e07d6c2a453f8459fb533a6f9c8902dcf67ca3bf9a26a96ab6f25b944f674226d009533978d2ff84489e2959b478297664a423c6bc66c4899b5fd34c274fba089d45fbef5e28adbc2eab328ca916cc9d5abb0782e430a7c7a7e2ca87e96c9e4878c95516f752c53b971a68c9a70d96e99d984f2387bb2624ced266856ac0967b2078e56dc209ce8d01778f63dbd662279029dbf4f7718a23e258aa76b78fb5b757414462e6081570b2497e3d3a60122e6e0ad41f8fe4ac4c540c640637444450c5325bc1ac589630e55aa10966e074a76b931455c3c22a22509a9a621673d5332571d71a74c4639f327606fe36c602639a6e943888a010d64f444aab14748ca2dd86c332cf0ea2bfa1240a70776a19d1d6014c04911f4849329ccb59f02b98591f5f3aa5225bbd28a6128ae7a134c26a962fd6918ebdef3292fac6535da9ac53d4ab286d45a02f8d8ddbf2f672979ece55421b99b06e96a5c92c3f453ca0109a0f19d2bf8d764bef076a6a7614a69aa85c0c4512528f830d938a59859746c2794dc3667fd9aba17b9806f6a2701398c2299b772440df45b6f9481c8cf4e146ed61c042427ca7083f3e642b5471da575be4a0ef21a0b993faf696e300e93b22a4493633069eb40ee412eabbbbdc1ff5fac3aa642d81da5d0c3a9a0c49a5e8bb2d498dbbe3692f011691bb174925187018c1db6ae5afebd19ddabeedccb9e1af27e92d97a01f4ceac065f4e96625a7782992edd271d6ceef632fd29b8c4dcf0db595e25d9c37402a82d2b2f8456b26808118a435603a0de1f52db9595b3f7b15533593411edcd3667466c6c498574fcbafa1d89bc0602c3214337a227b7b8e67c7207bc0e4ea29cbe91d2a2f19e0e1d87150459677d6b08342393421d152c514851cfa4c10b6a57db591556a645f2e93f6dd227ed59e7dd6a5c0b11a93554ef276f5c77feba91b0093e441887ccfefb2c5adaa375c48595475e0220cbb40f74b7fe95d51f7c3f621c369f22925339200e0cfd3c66bc4b37552f04904ff1584c05d35ab373b7169e08436971f106682fb31c4a75e757f64407cc0c7ab5c393e576a4d0b1df8db60bbad3bd8894fc6426a2a690e37ff3fcb4f38ee686a23ff51cc00fc6bec7f4174dec7af5e8b482e9ce9eb72b8526a91b7020b3e16c7fdc549906079e25fc116b313a9bf7491acb7d17db27d6e05894c3cb89f1fdc0197b785af30b9f78fde9d068cea4f1b41b818170744962543fafd42a4fd59c808a034b5425e400fce326e34be8a3176cfa0dae611f694706689ed3cebb202f676a36854b6b78af7ae57787457ed31cf4a837128f14def21858eb2d904bd35ff70b50fcad84fff9489d87e412ba54af781d66110acd0305b239085a1b46b18822f54d196a64acf78e1a9f1a2405e59ebaeb8fb03e805a12038585d764e9fd924fd8c8b37f4c20230533870e57b61148c18095f14fcbef9bf635616af45524bdf50770f8edfffcfe77f80d770769becb096921940d287d87080fcc8b8148c5b5741300cc72ace56b372cd143ee86cd61d59de16bb7e57f8e771bcec4de30d07598700e376f8cba0e2d8028c4da2533f236694901d1a45f23d4ae339a6bf401569486a6dc16b81bd4d1d19c805626aea016fbf828989e08968fa2468ee27f45e0cd7588db90f557cfd135443e0c802d4ac74dae6e76244c0ea6403b22b329deaa9b8f0964e888b24d0470401613609401642376e6835abe012cb9ea9d500c7c1c064e3a805e8d6e49fcd5a56d6d89226495507270fe3315d82067421e28600abae2b5b52951ab13914d7d28047ebae04f28574e0451abcb9f55d36b964df703e55ebf1948c1f7ed965dc57ba237f5a6d8e634ced17271c79223f8d2838f5b8b1e9da848c9595bd38d69908c47ec41205ee237a525771d8d10bdc20d388cad854059d83f33182f39a5bca9e243fc43d6bd96b52c8163c4ad05dd48de133baf91345152b6a5ab7b474eacc21efbd43909f1619de46f7956dcae820689fdac491adee1bddad8c82918d956c3d7e02ba89e2db979453f992c0849ee022605469249da0835bc6534f271f565783204607bd352145aff0e1afe6f34039f870c39eccafa7d33bbb6141f989a26f2926ead04d2be270d62676d4dda374377344122d0602ed6b80dd9a3e698e49150e1a96df8d3fe2f1760ac7900ceccd202b2ac768e2e17a7e1c3cd7987b4d1740295174b228c1015f80a4293101df91f69c4b4afcd4b272f0daac8751abcfece42990b5fb84ff1fe8519ded0f770d50633c8e48a93853fabc66c8e72c0070f711f56d6cfb02b115098601955831dc3dcafd7c619bfab995f2636bc57094caba43736c8b45fecb1d372dee45c78fda5f80d5d0bcf7755b1d6eb3dc07596aa960ba68eea0ff135e46efa7224a213ba5a587db0c4615e8d34bc2858a7629efe60a30911d0cf41887e6d8352daa09326944ca83a57e8eef6e4d7bc95a5aae78bc42b0f9bd6e2daec4cac0f5ff22ceaf3dd1473e60d82f8fac046d80338ab7c5c36c046eeeeedd20e50c15fe8a7541ba801a1f1d4bc996c9b319a477b085d01afcc1db580c25de3a0dcfcaf213c8b8fe17af3d8636c511c87341e342715088895366e5948548ee1117aee95277d5a04cbd55612223256f1a24cf4b14609af7685ab1d3c9fa7bf49af798f2255043f2edcfe8ac8d0c36da181b666af618449e14956d2127279923da74d38aa4890d05974ebce2b4628bf99053b5404c97f968264b6c0b88ea8e50183af73dba54a8e66c92f09f56e4a4e5a5e814537235c116d7bef7f7253002f9fa04fe1bb00d5b0e04ae354fe6347d5f00d3060ee8a4bf9801ba3acecafd917ae420570dc0a15b1df98bc0eceaec153093fc60b976991e6cf34bf7afec5db4842fa403eee08d6fcbb2f2251191c8325b03e0f49098e63aef3246278fea8c9a7338133990a1cf07604ed9b3a946a92d3271777d79732f48ab195141e4190498fc5bb2bdd73e45493f0516728d565d9adcc0cc8d706a3630f5a357dfe6346a008d5cd184046b64d4d1b2d0b3dfb93f27f2efecd5ae50eb386c1b78d17e018415245da177fd61475aacf5c592442f155c7208137bfa432369850c671aea170ae58eadad30be4c32dd8e526435c62c32605eb98b4a4ee883de483b61da772043a61f5c6b16fef8cdd8897c8b7ccd27eb04ba9409eb6c923b3db95d01fc157d1efd15fed8e236b135dd74c7344200a1657f6337663d144c2d6127f631f9f5ee7aacb6faf222a59b6efeabcf7e616ca934f920812678bdc616d93be4fd549824a574ffd6a1fc07dc10b7adda7497cf7110012979d1e3a0cd3931e569b2e1fcfb0e0458ff5730448d51e5492fbb689b6fcc8fbcbb4f2872645b5684cb49c249fe056a47bcb946a14f12ea41d69ee7168a8d66194d2f8c3a8f92086b5a55e2aca4e249275e238da7d7582e66e3866d6d12b12ede57887d9a6eb5a49e92d324fdedef3a45b44aa19e7d7ad4ec44f3f60b95d4e253fd0b7d40e744c24240bf69d2fe9616dabef148ee2112293ffcf2882b30bf62fa0cc38211269d5c899ea306f590b5099e226ebd52f788a5402100ec3435fb9ceccc70b74efa1521f73d125e42c7962be7fb1ef238ec61ba33bee582b6172468475b7475a76e9ad2c3d57e199fdfcdc0743d6c7a3feb0123051ea33330f98319818a220e609b524b8741eff3f249e3e82fb684a8699601626bed4617d5cea2b212a3ad0efb86a05f02214d4cd34298fe2e39111bff4442a9fc25cf15fc50aaa515ef530cb4d75be9d5f4be9dfb23870b6401fbfa6c90ce6b04ff033497fb1c4d630b886d6f37bc13c03019d541c4b1ff4b6b239381a8314f97c7b49e1e62dfc0de6fc756e020923d3c1ce1bca6a4be8365fa25f4b83d7ee21e96db3753be0903f260f1b03d1b712b2c8fb975383ffb60e0f0ae6736ee0beb9291ff0b2bd5bc6c7c43b35498f547743e532df49099bbb5f54f851ef2a333cf6441572a83d93d4f50dee4313ba0eedde56af587b943b15e8c895cf03a153463cb4d546fab0f0c6093770fba8bb17b015fb78c0a4dad5d3dd0fc0cac3f4f88a6f29d6a9588de73fe7c0a8fb1a7f947d89eb59cb99fe357a1c6cd47448e76e814eb1b7944b7c6756f487eaa4d4468d2232c5045e372b6c2947b25ebdf22e1b6028d540522b081508970f39472371efa357da8679cb9f77ad590b01651c1c113473560fa297cbe105afd45f0645d417d24befff8ff402b81137153a41ee775e460b389ff5c347f0d1f3cf1a55b560c3b15139cbe7120d66ef5da1472f7226dac36d06bc135367d2e82607d13bc604d189e787f2952431aa213eeb8bbd93ff5edb15437980705412980e45637ef3e19ffc045c80c5125b7ccf87c0f9405278e01e1038126bdacf15125cc0afd0c846f3dfaa40da9a0f2d35eeed72f609bdbd8e61b7474bea131b53a146079230b35064f3c4201666adfec5df11020843b28482ae18761d16beefe07aea0d444a46da03aac7223e1024f83a30cc1e02a610d641913727024281c1f3cf8ca76a74abca25202d86996fb658cc0309bb2f9b91df55a3ce17b0d260646591bf3f5dddfe770929aced861b79d457d3b3ff8a4012d8a18ddcc3c3bf201b9bb528fa6afab007cba4497059744b72f4c6c44b17d83fde4609ed83aad41fe95a10d6282f225a62050c5675b6411c5d0bc10fdfbb0730bf8cb1f98cd0e7012cd451985ac9e2671f873e9d2dc20403150345f51feb8cb14b80bb2c710f1c7ecf83a3b8554fc9fffab706c1f97002c1acc82d9b58779f7f0fbab38c6f767198bb9ca7a3e9ea69d193c8bbd1c5848cd7e4a852614bec7942e942fae8026f8b66c5b64e2c2cb0596d16810db9bfea4fcc425d0ae13fe5ce0ca8fa1df2307c8a08595297c04f26110f167567182e210e421cf3dbe9722d9c52042ec406832e92e8814049ceb69dd51ba08076a9caf8082bca5b01a46988490fb7465aac79fa91c1f2c3c307fbf71d0951add1aebf02955b18e480bad122aa4c87042e056dcefefd8271b1f29deaf585764614e4d7ebcd853bc44649d5df4649cb382f9af93d9cebd0642a6a9876938834b892d5e30e92997ebfc94e02191e0b6e2babd609336a16d8b0ced32de2d6319455c3c591b84b1add9e0505598f2675b27353fac9e889f6e5d4fdd6234ebd2d89a302a66aa61c5e5c905c82e7fdb0f32a86196d9ec35615b3c4ea309ec63bfe1141200422b69d0ac739dd76c1b526058da88829e755ae5268cdb213cda529b7a1e136848cf0e0b9f4584812945da807c2e8ea0293c7a706cfa1ebe007ef1abf20aab53bf983aa38a1d15015c40024b5a88f698cbaaa6b7c049d29d1997d43d77997ff4c4f10ae0cdca072e431f7db52e7a5184f2eabb9e0d47d3bcdce7585a91541e228a93b1a6545824c3f6f68b1b0cf7b16b9d436af4f6c1fc0d368cf0be8f065f0b860cba3215c0b5b4e02d71801d87e553d436f4c99f18d2026bfdad8b606529ddb8d86a3e19f5b871f7f6a1829b1ed011061e392a3ffa5059bda9c4d7c0adda714c884bbf32a4376d11f2b2f90607f2cfc4413f2a9c03e98be4268d83d80c4ebe8d1f6ef4efbcac1bf542aa8bc24fda6b1521be1e71c6e771b5854e4261f90c73c55236ed751aaa8bbfdf0a46d52f9221081d77a51e54e07bf2ae1f217ce9c6bfece8537b9739985f39b16790fed652101ac6e8c31fea6cf7aa4cf9a2e1046f4a327f0ff34d3efe6af1e58d874af90c5b17ae259be44aa608678c482d1e5d4c1e17c425ccef5479d16831483d650a5631da820f7aa79e6ec016b9873b5ff907d7ff570da58853416ec6aa7742e7f7eab66036a68fff79439924d57746a8a470cfbda707bec08d8b6e724870c61dafe2e2c49ac04d080409b909f7641d56817e32da6479eb793ac9471a7ade2fb4965bb59f26e088fce9d20521b2cc2a5d2e1273534a4e64572e0df4b3db4283b70a8e04f3e2f0a5237b9a0db3f4033f120d39da65049f98297d3d9f38e9fbfa92278629f79bb29301444a83d4f135d948aee284c24ae72ff7841133446e5a201fd0e2b8a546d00db097a9151f63dde7403ef3c8ddd3e8a21635698e4f4f536d82560f5537973c50655cca5dfaa9c7f07e07bef49cbf7bd5076e8d0f23f824e3095a43c50e13558401a7f649fbc779c11bdea071120bf524280b220a08e6ef80d8ba227f0ee3a5252f9ce9f3198ed9acc26e267893aaafc728dd1e5db226dda592c5d713492213e53414de57766606fca1df7bcaf07010892e54301e743d4704cecf57403b317343dd6eab2d26bc1ad49d2a1fa978ae2392ecf94ceb46d2a118500d6adfd81dc9e21bb5ef2401fd4b8351907c13b4d2fffd343ab652ba7a6e099647d62b62a8dbdc3201c9e36fe63c00c6c588350b1d8c1b72065b0d7ee6c4a808beb3d56b1684cfebc69d2acf7b341ad4da1a57d1322c03199d05e1f925fb3925200a01fd728a890c38e4f1ae79ddf3098f7e33dc872d234602cbfcd834c898d327debb17db15499820518a4bff0e889a917f27c45776a8b2120a01096511a2418535e519424eed90b79a80fd27532f52c099072be43dac8887ffa81f87d4578feae3a5a90cf3ced8d6aab94e0827c276a10f439581e0ffa713f442941f3f8586f46f8cabb9c4858cdb7f7ed1819a23fe2b41619057198ce7ae6db8061509f076d186e661792b4a3f15d4d92cfa4b07a585af17bed92264bee1bf3017e71c2696114ec0cc7d88565c51dd5ba584cc9528047bf6fbd2488665485be33b7cd7127def4b0ec0b1b16f7465e07bc3c05667ac0cb106241fea14cf8d3569d21f87629013d02b249d5cd71a9dab114e64dc3ede22d7144ee88ded6eb36c2d99890d5d6f2089f633550ceda99107c8dfd93f76b21d9821e593d1cd42bf66f7548386f4a942a2320d632c0d35a662cb8e276cdf05ab1ca5e90607ce830d1282bb2cf981218df74ffba168fa63c5f2ba93ad3623bf28c7536eaf4054d9db97f70ed707613e1e6d89bb8ecfcebcbed7c67f6a704ce71b73020c074f98e8fd3fb5da65ed43387c702b9204ff13df4dbc4b41afc3b0b0cedc300c0af035bb9a6ef362de6e48d59bca6db4d97c73b434c6a17a150b594a9a5a2ae04220f3c6ce71daaa6931f1e7f0cb65c8d709efd8c65472f1168ed67148f1318eeda96ae33f09e72aea8998404452982446d004be8e82ae7f04c24864c5931cc114498fe32220f06a97214c8f47a2a540dc3fa11fc16f93e046fbfefb16fc0b361d5b451c32f687b45fa40d2bc99220a45d524c022f7af9fa57e47fe5f4dd17eda5d3a454921d39b39c00629516b44eab8915c8910ccddde20eacfd1567cd93184d43f9c13daff5789523b9dbaa1301c183591464714b55f313bf480f8c1185b54a1b92793cb4497f587466cd077dd66df29f9db50037dfae5fc3bdd824924e36eabfd4b4f336da44113d1c57a39383a0c71d6f70f8beaf2d7d5435e6de9cec973ae9d9a46add6daf7b10e70f483e92dc095e122991434b40a2f053cd1ddfc56fd0255dee74f6669348303caa73cdb4ab64f942d359ea886031771af2be939a5b5f86be9c0e1cb5f6eb9f13d2b8c207881a9dccf7b43981fc2127df07e9e300ce340b57f313261a7ef0db96836701c126edac9495bf301e10ccc68148b5d6f1f5900a7e29a770821b315858638d65ecc976206c4398d4402751f6f3843e54cc9d02e4d4337c61d264287cb65ab1192249810028b4599f3079896f2a28639e21e33b4530fd9fbb32eb6f24fd9ef459e65c2564795458ae3dfc70fbdc2d7fc7dbed17147d66d56f4fdae05c7f2c64f9bcf0c9b2fc81072aea33cbd49d5c448e8429cc8fd4951e3e1de27c93759ee3ad048b3429be871d0e46fe6a08fb3a07284c067c4a9738b2aebc8a5f9631345cda0ee7aec2708659aaf56a590d2d294e8bbe160c572e1bffedbe2e936a83c5c671b7f5d60fc6412fcd4a813e7797809d068ded6d155b83e33be039ea74cfabff20760008926c09303a1290a7f4e0904dc83ae5586decb0742f06bf22a786b3e2515f1e377d6a0fa6bfe5e0e3d6fbf98c2679bc96a156aa76a86a227d131d8710be772416fab299f2f733ccaa2db695061096e4cf04f46f8bb73326676973311ff889208922a0abbce29a1966a9a34fe4b31faa7474216d58ed13c62c7c6e25d199f98453f4f463e33a85d7ac3558582c3db299431b1098de03561897c972f47f0f74378153bc5d2ccc90c408234349a02a2ad9934f200f67a18631a8d037b5a6206fd0580673e7a3ef72499c17d1f942af5543cd07f215df09e841d77d2eb956f0a4c291a9ccafa29d1e2f46b8aedf9935f1c2d2249fadda33764d4a101886bf62c2af900677949f673d1da98c55c70d26f422f451d5bbc07b301f564a4599d64b372ef5c6ba8f758200cd7372ab12d477fc25465a0954a8d28d04021a1218f728afa889279f73f826a6c7293835de81ddf788af5c68c681751b31f0b84461b4c837bd801b23e7a4e9b9a5d6e21e007865231c4fe9d28c1438f06ac09238a7031d19035e106b58ece8e4527c90895616ed63aa51c47985952a167fe54cacb35c59d6148fc48b1b0ac10f41576b424b068f93cf4ebf24741e57352f6976a4ddf23d281122fecc61cc3d3040e8e72b6d4e4fc71543dcdbe35040ec90f252567024e156dc9649d806944fc1f3995613b2428fbb471a2e77db315dd0f4579043a554a4aab4f818301bf74e39563db6af0c2fe8f75475c9d1e58f47bf10227cf7feae6dc569740d01362faac5da97cce1f76146ea7c75b60efdb82fc4d4c698d8c254348cff6bc078911afc683b28721f549e739d6af01bc3c5c0cbcd26cbab554781afbee7c426de97045890667562b91040a0cf553c46e5b70c8b9e7c6b9f7be054ff4d01803b708be90b6d633c18e413965b4d45abbc11bf950c27644edda404c68f8766f4c9e7a4494885faf91823a07503b14a1f7e062c34b2097dfd89dfc1bdee81d4c42ef367973cff7c185300f8e890499b1006ca4c4f4ded5279676bb8cb24da80235d8d731c8b3da81614c4ce349751a4398612072911c69fd1481eb29b18325e9441dc39ca4ae46bc02eda5a4b732cb38d5b4205080d32b0540a83fd48f3ce6a26dba2686cda5b6108944c73f375e76b94d671e1130e65ea3b625ca3c607d1936ccf4640a6e661d53a2b86ebafa1be0012602e9155604904ab859c6680c8efd0cd3868cb02caecc8c79bacc8387e23e813e5657606de5370e5df0d0efeaf84c98b44a34119f03e642fd28fda8c26693ae5fa9275410fe8757fe903dda71d939b752bc6daf02e7154f26d4825acda0b49b4676e92057b585a081a2e9582cdc4e08acca52f6172b0fc3c3ad90359d7064af31bbd00fd09b4d3bddaf3dca9d0cd9ad29bc809bdc3abd5d4a63fd67752f8871b704b4558e66a936f1c6313929aef5cb6fb5c7f74eba67d89c7dcb6d20d409ac5f0620a7910491077ad73a9e66dac5b817249e2786a943ceeb54fc7219216df1042a71f0871abed4c5bad4a12aeba2c54d33f3ee5d60566d9c4a39c1287cc3cd291be0f17537085121d2cd6243e35c68a0f2562f69c373b63054ef4527f82b5a0787df1ddd5373da50cb58f925a20d276e085cded05b6dbaecd0012ddef07bc41a9a60c2f8f34609093e6b17ac1b1c621665e1f9d0fd3c2127f0898a48c8141ee2485746dbdb7a68ccf7dac9f9d62683e47c7fa33c33ab0e0e603e73a2b3f46592e166fa3f54ec5e6e293cac5aedd7227a97815f249590fd2d7cd28d3f2c97f599a95c5762a2bc418bd94a76899f8f714229dc053aa17456ca67c5b32b7c063d8cecf5d5fbd11e1097746d1d4f2ff9115e24e9eaf1923eba377ce008f9367f69df6c7c5331555855e73378cf58cbe842437cde71311b3feb9259e072e59966f906ad3d1f4f61d0b158a0400d7ba084b29cd4ec464ad7a30940133cb11d42a1157e8de1bf5b0f8cab21d0ab8082e478aad36f719094e7a5166b1bb0b97aef34b585972f9e1f03a3214fca7997a7b51a02ca2da91ebe77f1f7cc2357b9896c2506095e4c68636a19687b72276a6eb9caccbb69dbdd284b12a3cdba11f0d350d6c738207640febbd80e1304de9669617ac58750c366f8e359bb48b17c1afa8964b9cd3cca00726603bd374fa596e62f196da0462a9f930319090f614be4aa46c2f8aeb82065d85979a247548f69bf9292534011aa74f72d6fe028ecff4d5ba3b5a1e024b5db0acd47e755f96af0efa0ffa0653b4e008f648a20974e31639896ba173156aa2778972ba60d75983930269584056e3fa47f047be78856de18bbbb8437e877e556829f10347e0231a82803e13fcaaaa493d6ae414f62acbdd7da0e48c5c12a9dcf5d67220c9cc6015fadab4912d93e4e5e0658f50d081d6172c3c236f6482e7320262f6ede12786bdf3777c700506caa56a2a84e03a25b3fdb50140eedc82410c859861cc776fadc342f147e67da0df1190fc54cda6ca88d8d184d4cc313845447a17db0bf1f18bc995a2b1269190efacb6a9ee41fe6720a4deee457b718179f375ed1a9f2aaff4940f76bf42d3ea7fda5adf33f3dbbef324c6c509059a2f15c8d111c39556012543e7193c05678bf40517443440e42093682c947772ec546d8ba406f23192866cb3ac547ae41f73e5fc79c91109cdabbb84d19d7f75e97946e46bb678768b43567ac249165caadf5fcb524339d7edc69356f6c9d9688848f0778001594d6b96f22182b30c6a30d9be53cb06c38da5dd17632e96d62cebd6e9cda9b0c71c556b2f262dbc65aefc055d2f7751ee243d397a5426823f2a108a6bc4b6d6542db1dbfbb38630401dfdbd8f3d174497a96cbe7141847044cb9b7596fc6668e627c6dcf02b87662c8cc60b6298645b2602326a181b2b419c1b692338be9d2ca842a01e3b945673d255da381444a2d3ee62902c845f79cb7c335a8bc2df3dd4c4890baa4290ed9307185d65daf715d7f50168eee8632cfc0ba1044d6ab47a7b47889b5de11cc99eb1d15092d2a43b5cdc64abd601ab16d9e1e300a41c2235e1215f8a2994a530865039ac9908f4feb5b85769b7724a377adc9f6a566dca5b59606194eb2e06bd4da89c1cb2a634b73b1a32b5f9171bfee65fa71a8d4e21f53aef71a52886913120754deb9a11c561aaed0e552cd3e02280f5106f8e4631666ed1e03f383f596feb75073dac9169a02ed0e312b3b646300d685a47f696aac45e199a62591c87f85903e01d0bd7734036aac521c52aa7ce2d7bb30c26295627a00dd2a43f24c682d42bc916bfadea49aea5a6561e062a6c50404b71125c46de72fccef3eb5bf5e7ac45f0aab847baeb9a3baa73c4ab0b33a94cdaebd7f0d9c5477bdbd3868ec4fa5cc3209c3c6c136fbdadb3273fa052a34cd6261848ab4694df155d4afdf5aeb8bbd894e7ace63dfc2f8872a88b90a28e440b3f83c7048e13f5f178a83bfc1a9623afcee905a00f65c2ca0e61dc3c430d71fb7a015762a123f2ddbc0c32bf2fced656f015ce5378f7c2158836ab26d727e23d926f64717f9c2820c73a9b2534246d1594f101be7dfd7c5d850f576fd51acd5e3a0edfa17d81231807fdd508611eb87a4ae298fd1b6cf4aed4f7d14d5abee3cb123b0f79ff2d2b518e0ba81c5a9087a3f443b9a890974893b5f099edffd58ac77e07c3522d994f065cabf88e9381cf0d43c38bcd572de3efb9baa0905d1f47bda30378fefaa2ca1738035784879981e93fad18c7b377bc6b9614c5d7363f8f320a510baa4f4d9526af4cf8e9e261809588af604d3b9b25f86ea9c64ab45f07935a8537244b1bfe70ab4676439fc051c1ee1471b3611e9780a58668fd2348f9106dffa1eb49fb8f3350ed18b33c1a1bd0b3311674f3e9ca1df6bab93d9977113d358c610ca83d377ddd9587d60165f92ca65ab945cf97fc2aca7575d236fb015630b572db9a324c935a9e5ecb0cdce980bc838e3e21cce04dd96582a8805350e36b795a8b5575fe9ef76b7217870f850f3906479e7edab8939c5a3b9913987d9e45e399b3dad04bb160e575ce086c55b9257f5577fefd131ab2a7dbd25131692632872c0b6356c4e201e5c098a4cd46b7c314de4aa5f4a941c7adbc2735cc61cf5a5931f55a917d54c67b7da889c457c0ac05d37bb158c63e19a5a9a8d2a0b4c7d9dba9cf5f9bf7e1c169ab7e2dd18bc2fea456b30c699deeef4ce3ca5fd1e38342e71c549ba7389c7821e9085824f8db6103e35af45882f1567273c6c82ef48769ab8deacd006c764c3db6c5cf52b18b7d0005eb2c3f9f02cb019cda2ed7c787a1bcf238335da1db08f22247ebb00b31acd1229a370408e6f937d6bea4b317afed845285d4f554a30d15c3bea4c5cd36b614d07c65fca50131985c3216a58c38cbb2cf70ad98f07c2e59f9bd2aea44ac0b5fedf04eb1f193cb263c2f718a8301866aa9590ee4ac39f6748e9d81e222de4dd8153ed7a8fa6479bc755b0c8d28aca43bc3177826756275307ee9bed4f99a2ea94daf1c86dac6929fb6204a22ec29de6eb7f4362bf3ef2785e005f742279cb48e6affece3c869ebf72639dd84478c7f210fe02639c0cd21c742acd3d79ad8b5f61a5e124bbbd3e500f80a9013ad03926edad331d76ed5a96b38d2932209ebe87ae113283055cef5dca6d603870d11e8fa7723e78469de967f6ddbf7c465f12bf13b042f93c0cf204971d6459e4420a196ab2f76cacb86c0c70412f450170c0f3543264dc1e6658b2c13c8b6d0a9a5cdb434a3d24833178161b31aea52e2594f3cec9dd6460466234a72b5c7bfd95577170470776d7512ff259658201273b721e5e8999e3132beaee359cdf08437e61872c729700b752c8f23f7b9942406d728f720822cd4b6e6c782e35990296444f35992a19730c2de57c0e555186e3d86eb285624df177b0f39a32848f6da507a766d49decf3fd5f7538f1c690cb7caa3cfa5a8302fbcbc617cc9c399d2f01333a693d6c7c5a30bf8cc4ddca88807a4272ecdc768edb48552fe1cc9f2f5e6bfcf152efdff7c0f376319009bb2387adcbd62b945bd2ca29243fc8edee33ee77d3caea02b95b59814ae900780b08fe4b191827f8119419f094e51b1f75ace3c5dae2f3dc3d4c9741f36c9e0abfc1ce60da61e8cbdbfc47451f1694b11c90dddae4d9dc50a25a03b6905f802b23ee11c90d9f173a623f0036508f16499b8e5916bd4daac80cdbdada50617c37c53e50074938767d6ba239c5a090228fb7584476bf44d09363effdc9d27cbcc9babf48a34764578c4b766c67ccab8ab5afa42d7181fa1af930ea8df9d090d56663ae1ff6357c528ec51b27634ef9b8088768becbc8183c544b24d18a9c7442943cde136bf05c1944c03c65137bebbac84927b0355acb2b48a1c632c538af49dd2883e398dc285c48f713ce6e25a76a91ca28a2d40ef822f549b6ea810928f735a78f47a9f724e4eb5930509f92e8bacfaff69c79e8f8bbbb464ecce41fb301b927bfdf224a51567d1e38e762c9bda6c28bba42e351b87f5fbb4552a779e434465b98e92bbefdee6fbbebaed57bb966985193146d1cf620dabd76033f11e0333972b117078376a0bead4ee987a9ff1c940af9663d8fc11e7b8ec57b32d71c9fa59d78b2ea7a119e9c9aedef2524689659a2a952bcbdfaa0f10b33f8c81f0648824f22b68932db7842ff3f9276d9760368ac88be73fae25435c353b19e0d669df56c92321c1c02b1ab08d6011b33430d7807dc8b3c73a92179fe5ffb06b4fb6a69a4079cc97604bd36ac06e2406893eaf8cefcbb47061b3b7e92331ab12b350a4143220df6346607d227a54297d6d8991c3651166642006ae85d008c4d27b80cce54a29b8a6e73d1e4b4c917141fa78cf93fa1a9d2d58fd1abd3bfe7a00250f8ab8a928047cd039b33a013bbe1504be77bb4034e8fd3cfcba1c118dd91a8e789a53968812d4c96568fa46f19c6f060c68785d8f4c794f24235b266139e31dabf0d2cc6aef71fcee19da8423d699ad41fe38581bb9ef92e1407b9499fac648735d9f9eb00f40cebd11c3bfd394ef96acad07a8a273a5ca5ea909ab05ca7811b308106a7770f3704553689b211491f0656ae7500ff8707039609e2bee8711dadce3373884c7006d87d3ea0fe29911f8a82d06096e5cf977759c7bb1062e126940e6e7b164565c42c186a2cd0e36aeb51ba87ff92051f4b0462a215c23fb8f0eaee20982114f539539e373b85395ac362ae36573be4fac5f5c62418e746579f4d7bdc0fb2d5e9118d8b92234a3472808445cedff913ae6a644411c8bfa535ecb8bc85147225bf7cb9a970b4fa69f78c53fdcdad653f2526815a590215dee03ca1edf37dd9efbb065a5f1af1065cf85e5819361a827ae989dc8877df721afadcfb516b781ebda5cef175bb72457d28ed2d4e2a2cca655850610fd3344d2d708813914af8e3103dd5dace4c012e2b961b061ef11c6777ec2180acaa6a05e4a31c99dc114c11fae5f8d95ea8204415be990ea070406059c2905085f5f5c2e3c8bf63ae7186cbe9352b74aeb49be3edd36a7206747ae563ae578ed7f71fe335c5fdce7c493375fdd067ee199256c00298d83c7bcd90b8c107ca2f889f7da07f6df3f9201d997ae5d530e3d4672a970b170ab39a476a0603b5e9c35b00c4ee57981a765051248012a9210df3e38d687d9dddb5be7ff9a36fac0c73cca063c471a2d16d6ca9bcdded547457b1b1cc545c1703ffc15c6ccae582c454d4fcb87a800b9e8b6c6692324ad8c7b3762afb361d15f530dec47047faf2fd24d29021f14432e3220cb16abb8988b5b56617090266f43677eeea5d6c16aca9c02d5e4fc25df1b48f0aaff82073bf847a1fb21335ce47d38daadfef4fc2cda7fe74aca5debc3232208a0ca748f21fff4f3caa28f616c0f540c0edc47719be350a96bcaeeb7f821a4a52df561f1ed7a7da00ee26de3be942ef6c6c95b64ba0ee8ba5af12dfc13ffde93c50f0cdad0d87b8fbee6502c812c49ac0a90480bd8e0eb2f6d67ec5212840baa5664bcb3b2a8a978f9d8ed0ace8277cf6454d6d98b7ca1bda712ae0db85bd7c463dadff9cd2e98da6ffdb85a0074c2f0d938bc4e78a0d2007cedf090e9864123ffa6b5f2e63dad20826cbb6fecb41c81b7de419632f22bd4e6354490bb15941e25924be47eeacd4f4a7379f3ac99d91ae251e39c08fcd7ae558e1190515702561feb97270520fb7f15462cb7460688c354dc2e92cf22c9978abe094965f6b2a7289d5f914c95bfb9ce9e8d9006a1e1e618e150b85cabf21ccb1a5d6767e16208a0a01f39661bf1cad4f17bc24b41fc8a8aa165625f9e793ad7cc47f8ef83fd334b7941aa0769d6ce89fb06d81d1894683eb199f10e387794043d8afb81331f7e13591eb7c30f5825b40375a3a3b8a068b60a711a3f3b8cbb0e6156098fa13aac888a5e033291d0e50fd221d8b7fc3a06640ef5bb070b72da29a236feebe0cb235dae7cbe19fd4e26cd6c518e77e20e713b658fb7e78e7eb91bdc9df7fed58cee66e1d91817d82c23b9afbe627f949c79502563db12a23855545ade5c4566946252f6dad9e49070cf755f46bdce146bfc5247b30a86ff9122088d9e9dd018ae27ae88865b87f0f4bdcf3364d9a776c78d06e82d5ba90f0226fcfd96cde7030118b404ff73baad6f99f35b64465f22bd656fecad0c91670c0596f3dfee8acdce4bca24f38fbeff117f8b2e8cdf9dae553d87bbac43cf47a32ce8a1a4e3177fa020ac3f33dffde1ace5e14453b271cb76f8d009bf33c22ceb874e7f4b072b441767995824d285bd9bba81ed2e3386a4c778e20f27b69bc7c337c1aaa709a7908b6e35cf843f260165d4bab05d502dde48472949c696a5e7390861229d4b864e125a7c5688f5380cdb30fc403d0fd920f79a95990903feb0a1efc90eea0e1dcc841b7eabdc28ea8d6495f847641c0dc99d076d68fde68289b2e6d0ed6fa4d0c46da182d3fd189ef98351dfd9b1d29bfa433cb5e2d479b905d60cd218bbad3e55cc04b4de8421dcf1b8ca7580cab8be283aa477c50791dbd3d37d48dfa1ece581a0a0ef645615b850463614e97a564a11e16b2348c6d17838036d653de4b42741b5e5d9f54ffb3433fb52671683d23fa76db1276854dd6ea7bd0ffeacdcb2da3919118b6e2c7e8716ae3f73852fb86c75792dda69e2290d551c9702c2dad1c370226d5740fe34687bc85fa8a2c7670d20d7c3c6466691cff656606ee6f0e127c7c939e1bc8ae62f6b05626a67a9f1cb1abdb402183e43afc61243f759dd0c905b7396cdd5d542b67d564525a3e720eacbe2c683b0cefad40e6924c98d04dd9089fd28119d27443c1af0faefce31bd0913b93d8fb002495be68ef6929f36ff0149c2956eb3fe33ef33732c7b62548e94e0e1dcf37436561e8ccf0b3cda9055149c2fb6b9abb6b2bef1d60e24fe167f893b5c7dc1715ff8a462e0f281f0eb96bab00ee4d531c18047d1cee41c959decad57bc0171915223e49e15cf528d6feaab974ef22a02b1fda19ed10f5fe9b542da5a4bfb2eb05371d6b47fdbbfdd1109ee99b2e2e39567fb09c94bfec66455417a07f2df87cd14cea6f103dce4e243bc58bb4ef026e594c5fdec4cbc3531a4466afb5641b6a6792f2874c39bb983291f5a2c254e5eede225438098173ec2be9fc61df5abdbbd4fcefa4cb909c9aa1d62c81dc2a3e4c76217fe54e542396742394abf33e0e87c8a2b03153bbad961dcf300747975724e2f845af156f3f6a727279ac558a833c4e1b72d06e29a2ecc2cce9f313a6b55c4e56d3e62b0f8086df266970004de0012c224a7438daf54b4d461afe5d0fc6da8d6a7e38778b6827f175d7de71a4498925153a52bd000105eb44e6de2816c5647bc3732289f7f88e63d29bf58b54341a9b39926d6bc31852ab2773cb322bcf7bdfa7aa647e2c7483de41a7e4bcf369b36a385e0244e6263c5d817368eb97bf11a7d6c2e6d5c28adba6c460f2aec187f390817d437b6caa5f0f955864a5e2115e36f3d2d4b1e86cd3744bd4d9b25cbf9001ff6d36b91d3ccf45faeeba362c8d8f301e80b479fdd97277d3b67b1a565189212221e7af966fd7f03b7ccdd9c63ea3a5202e3a3f1ac718d49593bb82ae5b5dc6bc364425c27f825ecda89561e7b7cc231bcfa655ec636f842211f1ed4dc6637eb74fd0410e19e1a9e6a9e26dcd489cce15517a74fb0b494380a214dd9a5d75193c70f040c43b848244039f456416b9b166f2f1d008bff92c3c71b885abde9d8a0e0c864115b015d12d7b3ebfe9a88afa40fc9593b4fc089a156d43544160eb2452f55b3a86590475eb97d17e596bf0da4e2401b84add70aa91ea67c37cc859cb2f8e4cd688ae6828768f737feefb4e6f659515dfcbee8961da42f2744d1d4c433a6c4b0329d1605b027fec0e0be83a05b99a56791edd6f4631b8e7c152f066e2df2268bc6372d8ce5aa9f19e5a44ef04e50f5bcfc74bef7eea8be4f8089603bb69ee5b67bd04d41bf1a41b198cff8716926aa01f5e71c63bcebd521000393c8ef357eb055d0e3bc4cbab68f2a329733a775cbb55d66d7f005e865ea0f955dff37c3c64fe9ba03e7430dd183e488a96f5fcafc292f59bf542fb84b2d4e1f5376ba7f34a3429615b2aa0b49122058939b424248ef8ce11042260854ae60ff31fcc5d2f9a1367accc33dfc84b3336fc6f3aac498d8cdb22f169832335d89030d3b08ca61c49658b566ff1e643c1df72fd46fe3744e98abcc8e7c93a0195f88029f07675b51886a733721c121aeb6d7deed43e2d7dd1b85365c48b538d3d3978c8c75c8b9a75ce1e26c2276540878d43a37940491be9d35da436228c80bda17caa29718a71aa6a3ae2c6ff554e8143e08f862a1b31e95324cc2f8c700bd58c7f00ddd6a05edede935fc60910d974cba71fdff2d4cfc68e40dd2a8a72fca6f41a8339118fda5855b13634ee5f417512b6c3955a8295a4d9ff7db65b8d201e2c049e81f3fdebae4b0a4a6f4db62bd36610426d1fd14b74a035471d3eedc8a7a55af8ce99b851975f3a018cdf0f5f6da26d6978a874b11fd188c094beeddb791a6cf1c0a3788732a42836406bcac49ef83456fa6e14c484cc110195b8f9d6bb791248682ac6b34df6adc34243c5211b0b4fa59d00c73b979338dbdbcd07b8c004f8c8978f2a7e4ac2ab2e01e244d3efae5e992a6f2e084595332bc2bf01ce3d842976cd7e1011ef38adb89faa8de2d84b8dfe004e863b8767611b03adef33660b3a39dce4fc6b37172de2a6ce2d1f1a204c2d5afcd4f93f32aaf913c60f088176652b71c06dc71dd241c2c1a323d9364472c3248a2d91e4bed2161779508d232a320c04bcf32d834e8df7367dc54155697e1fc3123f6bfd0a3070eebde5153af3c6e8efc48702b475c59323a366b57000f5985463c70f4807a0f19aac4e8789322a17bec8dc584e5941ba032bf9ccb5d55e3620ead577fb5ef3a91a1b4dac1a61d09b03cd277360f9365a312c0b0d0d43bf98371f2026b1d5a7991387fed2d15815f9248758653a3a53ac96a322eaa2b07e1aabbb57dbd654ba74b3fa349c7b13e23734648ab9f4f475c35561a0068b0c8587faf325c39c76f2a5c63f784523d3d6b3fbd605ab8f82aa11caafe8ee76d0115e8eac321bbba8cb273997281c73cd4943fad9f8fcd9f865d0bd5af80a8afe94a280c6e0aa7428300be9ab70e679d4f00e4f99dacefb701491c0b7977b6d7798a0465006d04354dd4b813aa24d3eccfe5d3a5c9162118d28b797aaccd7f984853e6dd4e42abd9bde5f38aa39f4a5c26fca11d083dc10af9a61c11367168846b80edb35c006b05dd80ac13a952b6df1f4d7dfa174f752bc40bb892acaae1cbc8010c2087940596a4bc2724198176c82c65b2232f111d3cbdf8b4c186e6516aca26b2e78cbfb4b598d0b74a17c4b1948f96f9721d8560091bfc150bc7efc46a6b375e4cdd3212b016003e1e6743decc563524f8d63c473717dc110f945e2d774c6d1a1ddf691f92b1a949fed59b310f075428be5d1e038f4aed92f58000c15494e19d39bbdea4b835ecf79e5c464219eb755750c748990e118e08e073499fae74211d5a5bf33803da8ce569fb1516e11b3ee5f4a982be7f38c1833478176b7557e60acfefcee7e99b35b156f0899785d66f0d52cba9f34255d7f23aa128ed61bddb9f66db1ca5f2ba67e65bb4357633b327c259bbc0257d355a6fdf34ce2df0e5bdd532d7e84aff1e3225c8de4674c009ae4499a5de0612e5cb12f61d9f17ad84075b8edd7aad8841dc688255920baade4b90c69c02320614a7d61db6625646e028a626715611abad5108cbc3502b40b482476b49d27ad1b7c7f3dddb34e51d56d46ff09dec8775f7d86ab0d01c91869c5b5bfe77d3230b857bdc395e9f674fefdb95d29d6e7ef62b9b6d625cf584cc0a84f795e20c075c9046d6f7da7f64afeaccdb6de8aa531c0091cfead1f88e68dfe20bc75e84d658083ef19ca2914fa90caa6bf4659a403ee0db75fa3113f2b2fbdb6314f380ec1cd052583d21c617ecbd69d0adade8b831981aeb2c6e14402e69b1ecc959ca7dc5982b451856a05c450f4926adf3ec9f5ffc8eff8d3acb2a69edcda7c81c863d6b17fd956c9451a49b631706a2bf2daaf0c7171eb0f1edf0a2e0d4b36ea7d35569a66bc38cc31cb08179e146f01558785ec39e8c9ca88f76f07485544debaaf7dce3b709e5600a12a4185c282ae90a8d166afa0e2f7d58e6590e491ae9be90796135c0907564b7eb4afa5fba4a6c86b2cf1b094e694fb0f27aaad5e48a64f048b05518961315d97d89d405243e6666e27b9e411d5b1e6b657f7b3aa176bafd83388c8069da68ad712ea3e21dd04dd51e4f426e5547b8e2371de4bbefb4dea9a1d3c18e8c9d2cc75ea9d31f50eafede46292aae8059620ec922faac12bc74aafc6699d494ba6302ee40bfd494a44e41561f72d7679ba6e91e358f0735442f7999e392f629c7e51e564b056a3d7a58dc1f602715ed17e1409f68f298c03296406168140733322e7be4ce036c596aab4b8bc0af954f896e35fba6f3aebe35640c66a18602ce6025580d63c51b7ec4ffed59f6a2370352792280dcedc7e09a817054eb9f9b361826cc4e342f5a18e769f7abc8f7833e63194281f73884c15ec6a890313d9b1fee81f73bae0c673e22f80adb05e261e8bf72441738e1d762238efd2d874e4c0b7f1c636c0ecc460ec65ab19f0606e590e46209654cf5a22a3bc4d2a534c8e15e6a252c9530036e5ca93bab4060af4ab232aca625865d578cd256c5342a1aae5353a20ce07bced4a280f4cabf9e891f8421fd164214f047768407691aebfb83ecc9d281337bdfef3bdf8d4193749e2c69f6cc64042f266f65ac05cf76124b10ead071ecacb5a2b9a6c5468d2f54b8600894434361f1e13f57b6d28d3945d92bc29ef87abb5381dda0289879eef15e51cf10937bdf366f1b0f0b819277214c023f27745d5b4bf515502b250e079f4e9924e59944c685f23ca07efd4ca58db95f10c1ecaa3ac540e86d6929386be42e6ce9f3bc2c7794f0436977822034a588dbec9dd55bf576ef5c614300e4ba803e64f173391d5948ac6cff519bab3fb55e207e6267c98535a4b96448c72fdcfaf719c395eb9db75529147f8f1a487d12c8328b7be7365aa7d8abbbfa664659a0c1d5856b6f65e6724468da9a83114fe43487219fb1f63b32072f00a51d28507423a27ddddc3606f4661b800d5f2b035a627a243f43ffbd7a92bb12e9e6b815138059bbcf110592111c0131fbe7a26e32b6f363f2336fb734a31c941035de9e4f9d5a8b7de4d43b07cec08735749bf5212c8c586ad4191658ee81d254cd0f88064f461eddbce49cbf65362306229909342208907a1f9df780826f8da09f29cfdb654ea97805748f010bc499f472501e0c2d9d852ee100165fabbc03a6c04033e7e17ad8ddc8f112aab987585f1d9f3c01c0f272c6b247f6c9aad08d35d89378660f521bf0f27a7d02aaff71157075f65e29739a978f0a210b2df102018dd681ce25b6a898d035e395e54f97a62a682a0f75f3a5d4f1249bac6e5f39595ca15819c7f6c3dcd5de45b45080d5fc00db60c48ab0c459c7a5e45d32dbcf39969082756f4695ea78c7b681c0094b70172d7f27c92aef7c332b5882f898c6fb1ed385c2078c4d7283fdd3cc9a5df36fe5b3b1eaeed1104798771f87f1118350ed84de3353084592abb8bec4ecee204a91f9033500ee60fc74946c33fc20be2ca866b11df3864afddea042067c2fab8d0f528ba18701ae2ce3d5a0afddec91dfebc97f103fb88a48cebe3a220aa18395e8af4f324b6c4708256a52be6468c07cfdca6da3d498a8e95cbade31a605717456be920cbdf4af36271a95e1ea20c359a3452e2c1edf17a0698ce3d3b3436708a20a6d72873856edfea85af576bab990c82a4d19df2854fbaa480e3d9f6ec4ece46220aca24060f939ee37d9519820cd628c86a2e7011e2aeae8f087c25df3b2ad6b55336a5263bd4c5e41fc400aae6db226b4dd1473593b28ea777054c251beb7a692ca9f40eee02aa9839e8e736ba7df05bd9c34c3aa854a4823e6116db48af937fdbd49f4b999a60990517996b4696d71a30dbb6eab296b95f13a6ea97c9d017454a54a7cb133fc751ca0631e52497d414a5778666838bf02f9cc5a3fec7f58b36d19f6b893978c09710f95d28ed96ee45df23495143c54a29e89c225ac10ef0e41587b3f893132caab9ddb69cedf46c3ec7b79e35dec9ef52af3489ea66b1d94c9b51db9b772b43a79b6f6be89b7a0065a7dacd14425be9cc5b43b3974c641bba8fc60454db208a72c86789970966ff4900276a58ada4855a98ec79cfb2d4a9e93c2962b5502eb254fa0c55a4fc99757518cbff47d8b4a3859da1be32ceff6740ac55024e5296230e492bdd557e8dfa240387c1a8581e3c38afda4d8d5b323d8624f0e7cc03e3c6348341f85bcfdae6d06f5094c40786cbbf9735a3fc424556066d4cdb94ae48a5114e4c6fa2d26203ca109297094c5561e516cc43bee08e13f5beade01daed101ac3b61a64c7d7b2ac833a31d1e2d5dcf25bb9b2421a4f485b8e5b9e502c5230a20a9a775f42d1783212468a8555bd8af1f90d21fc71da27f569fcf6331b893b3a69fbe1ef347f4e853af2169185892afcac3e48e122ca31c06aa338dbc9c6b2764bfc6e32853d0d36ce9163b0e6051557ff9e923e85b54caf3380f02a27be9253bf8256562306a5b85469d4626c139bdb15155d2357dc798cc00b0e40723be002195d24733c203e22bca067e1c4c6b1baf20f709d67f3e7b7d5103adced02d7d8cf4dfdce6b640a559b6f2c1e37ba7dcce0284aa5869b6d24c6acc8b5655331b9ad6de203452740cfbeea21c50c944d06d6b594cb60055e18f784c4b244ddb403aee51f878a3265b4e933b868dc9a1ce2a1d65a1b80b29ce3278c49e6a1a59f850ab0d1c68767b70ef31dc6829d91c1fc8c0b5424813ae6c970a2d15622af15d61920788aa95a3cfa61aa03ef0cf193a87f9d0f9bfb40e8666e3b9fa759ee8ab234094ba62a89b3dfc7263aa43989e96541783ffba924ee63b3bebe7d6e130894bc3760518433089dab67e5ed78e520608f7d74bdf480643a3abcbf1d92e90d4a89c86ee765b4f08a12b57b1369a0ad781e4ebd0bcbe6d907619629a103569bb07dd479db2858b150d19664c2465801460a242ea69e6de2f8430c09b3768e551b9ae4166240da5e4133e6cd972420369bdb8994789a5b9bb9844e02e9f508bc0af3e31354abb77b5e1a0ba647977507bf0291629605bf40a2a323416c15f2dc4a7822094bc4d109e4a96897f2567a27ee642d616a4fa188c4b1cc4b86285c3b8b8e3188b38813159c9a61af3e940bd2801f30caecb11bf785e84117f641a3776492f403936468f294caaa4abe78cc8748a4709e536fcc35b50afac13fd95439f743fd86920de8546f8d633a27745947d6d39912f98729728ed554ea82a61d08ed7683e226e086b37ac07ceff06141ec2679c5e8005f02cffd19e4f80043311a17b441c5fb94713a05d1cee4582325cc4981a9576ba3f7b47c930caa9676462aa493ada593d0bf4a7cf08d21b050bac5e504980b78a9213d99089311d9eecf44152453a1ae218a8bf37a799bbcad794ecb4b84eec5ecd595eac099747be0458743e5ea74ceeeb8fa5f955e614282df3a08efcfb9ce33a24ab87b6e16cab96820d076a169929dc9c1f6445013c2641f013fcabdf8eba8bfd988208dd68e585efe41359a82d27d8f2266a1e23a3cea868dd1155e1c56864788f7084772a96cfbdda38cbefd13f6297d92db120d13ff129db7e4762156e79aad68693abf72cdb38ab2fc28fc237b4edd997823720ebfd069e09ae9e2639fd44e0640e061ba370f2d083d676dc9db56075885c2d07635bf7945b307a173069a7789ac04fbcf5dc99ecd737c4d054c1f8ac8c69f07e653427029be6b7fcd604308222d6391ad964f486398ead20257bd950c43f1731e86a6a58683a83f0822798938b560a62217540c40a55b170e4e657b759a16e549934b5d7585aeecbd6c61ed99a5e26ad27fcd57056266094988ea256bfdd1369fbacc0a7e56465c7ef1433e229831d28b220c05fc2b00c4b3e4aad9f5ce1c5a71d551ded35c811e33f165493b885fb0166e25a0f028fe07aabf6dfdc4634b7cc412215ca9f5cf3d766378a22db8a620db5dc3ead11a683fe913ed610accf4716de54ebccff7e5e74fa63a6608855ed467c1fedc47c498975738f7257d5f317a277b33682728f2c740252c5e2e647c5bd1008babf7832dab154b93ffe7b821d55989e138dc91d862235a68e68b6b66f62e0ad072b1299f3a31e04bcbccd184b4af172c4a18c98a0cb47ab3d588d85f87f10f8f523e2e6150ffa15106302db0d665223b09794fe07c4e8a508d02db5b0b3bdf400c858b4c7d65118eb2bc5d6cf97ee9fcee1e708473c0e12a650522dd033c02265386e0176e24adaf6c04f87b127abc3ebc8e5977ff5e8d432ce4e92145792005ddd58153172f5b49f9ff075da399e3020311202183a98dca4376631e05a7583652908560f707e9781e681f090a42b3543db0f42e7f44b602e3185d1c36dd98ac2e8dff92af752ccc8391ea90261b0d3c64c6ef5391243b4b5b27850b7e77f4d4cc248fe2ff07562b83bfd234cdcc2bc9276ca4601656ab369e0cc7ad2b915bebb3f9841da40e792dfea22faaca6455d7aced3e811e64cd6896e12ed5b272298fc6c21d5ac3d3b37b1f2e19f578f2bbde7a00b878e61b595f91ac0b61d112784025f94aeb9c6c3ef064b801de8d8ae05f82d4684ead64de76ce9c12de417250d38b3b4080e8ddae36c57d166d61700cc95fc644156be88f0803802fc8568e4a1e109f331d2b4e8ca81ebfcf5b1dadaf75684d8f8262472a3a80eff2d5c66aea6444a2bda82e0a3f239a0bdc005fad0db83a979558ce06018f88d8ebec8ebb4b41eb6335fe190c788cae7a7677671f9d1b4858b3569d0fd9730535f0246153378156bc224973414e29fa837e8a5078bfb94e091934f3edd26758b8a7d8266197c88ef337ed2ef9bbcc877a024629ae6d8029a342a466ac7122d80b2a5e6fe9010c83904ad6011ac6c44b70b8de72ea2d7ee91dd46091f5a4c01525eb4e9790c6a43bae74b350c4d1a7388677649e7fe9f901f7b6fd19a22d1749f9d856228e868cb8a0498e9dd8b8a128f9975fcae04064e89e3288bce8dd2178e86676a280852dfba20529a8ee272383ac8059c38153a45860abdab967f00b95fa8fa195e605407bbb84f1fd7f96e173138e0c852d9cc6d5fa958e962279d594c53a501a43d925a211f9a8d37de7c69cc2ac29dd6be0b1d3acae14a4420a27d5dd3f78196618ca7717fb85cf9f08a73864ba98eb686b12ce83ca7acf1f12ef0a3ca85f11121d22738f3a810932547444b17366b61dfce8c526f13fd25fb3e48bc033d52371de582c6b909c994dbd30a2d0bca1711ceb3babfd048ce5633cacf8a1fe7c1a3149abff2e796f45dc11f5aaa6c2b84debc3ee0062932408835a0dfcb0852e02de239b5e9467b074afcec2e12beb00287945c366efc8b85bb094e085258c21e4112cdbee24caafc13211ad4b2b82f79b95f2a6f33817bc19fe2dd247ef10d8e336b0694e07e3fed9952dfdd1834b192d0d6a2333a031c7376ff2d21a57d9990a5449e44dd5a69b0eac3e4095da7a0931f2df2396aff0454aba58b4fc519108c955a9554e351d09998d14d82ad40beba71bd952d8a5809f1cd717f145100e437d0624d61dc7769f8b4b03299d2ec1f2065683982275931638fe2c59b1ca711d4fadf4b585118d1ddb32e66b901f4dcfe4fe94668b522209c15d0dbb6be41825b7f8eb18a16795c7ffbfa7be26fac9a63d40604b308a1a292bb956599bff02a05948a2688e0ba3c51c6ef1fbe5dd6eea78aa61773b4ab3022b28ba8b8f6981bc0d45f93824026390431a2a02e63b36421ce4c6e03dc161897a4066fedc396fb28a7cd0dd987ffe5104ef100e97b187ea00565cecec6236602ed3a193683dbe83a0d9eb1a683aab7cc2784a42e481a040f0abd13861bf70bf252640bd9913c1d4a85ee38f998dbded919178e2d6c59d00972edb20f8cc8d9892700ae5f0b49d9749559f3af28f4fba7b9c171b7e7c93772b09c5fa6412aa85e49d00b9e9ff176b4da8821fe56463ed6ff4c85814d9ec9e29c70b7d342c090119f05dd8e87989233b02b226aa1ce00f7ce4e8bad5d5a2c1502eb14e19cddeaad47502c6e7956a2f5cfde415caae30d1eacaefbf11187e5dc2f590c9a9e6094d83e396026b950f075d15e1a47d832d734bfdf629b6bd06293197119a25d958bf8c5d9bfc62f50fc766921bdc2b4e1b63d58f1a9911baa9a31e029e38b164dccb2e83c5f29678e3fa7b8258fdbcd06d89cd7e3901c195d1641f3d963b2a2f455f9ae18eb94a95455435f85bd66396b389363197515fa82f2f0424ad01d9e4199f0694cab78e59c65b23952b0504755f843119e2a4da453ef4e4cc5b0f0c334fbe8c72915046af3d30d9ced4b31eb7f0cabe1c25162d2744572c84b92e94f2d0be7a56478ccec8b88d7185b75e5fde3e11577d396886bf6b4d811adb32ef0b34139e4ac417924ed6d3e04c48845020c495376409324ceb92858675de1fd1f2209b73a62e86955f0ec87921e1c31fc8d60b938cb7baf8835ace5ba29a2475940dba8c8c3fd420f8e6a36cc2e893d520ee6d72f9b40e81cde74073a6b889663ddea2067fae5ebaf85d8192838da44b28c47b883405d5d26637e020e513c56ebbce00d36148c296266b00358f36d867cb170985c3770c2e8b2f4d05924cd482545d2d0fbffebeb926ab8faa5083a5643a592e7d5017d03db5cbff9b41326b365dcf8231b08935caf62bca9b51fb98b4b775529de59eb30a7e6c65a34f1fd16f81e7980b3ac9e702ee1f5e0c05b6a2952746fd81fb0119f4ddd90d3010afe819a96c08f4715210605c670f30feb127b7d54d4e6b07144623c7d3bee4871c2f4d7fbc756d1c3293a42a5d9742248548b842fd143e61d6286d46357a072e3c0855f2bcf2bf977f47d02ba0b1d130d8fd601bf2b11df2e1a7b1d139de7c892b2c234e4f7d36d6fe6a53c209b28da96248ef8de21799a7ea1950ea461562506dedf99cf61ddc7b9889de931ddd6cec168d8695fab3dd28ae9dacc6b27a30ebcc3934db288b5ba1a2e74dfb24687e7bf90001384fead1f7cdd407d2d812edb8b29d49cdeb7054c4a555004b78b6a8933d05dd98f0e285b7678ad965f0148b09349be0d6cbfd06dbb706fec473f2c080b6411385cdba53987df4fed46c8fa97ec5314a4df2452a3ac1b7d7c451e78b031bc14b4d249ba91cf62d7d498289a8d58bc726aa72664b903a493e236ba81ecd96db2bb99f41f977fd3151f9812eb4c5ecee502a0a8d23dac52611b7a8c4b3a5097ae2521942db298afe1111c85a269760ea7a895c917b1f6f750dd1161d8e3a6c552547371289c6a3605d5a282d531dc03bebe1453d74a55cdcbdfda2c47f518b1ff40980e92b71e72f97d091fe35c38425120a6f77f73e6578b9b3c32994923599f0f9920c65b53e9ff0b6610ddd2dd1bd949f95d952ca4f47e725ed304a595998d20cf5d8908c3618ea3b2a692452c9f76e3b9fdc545180bb1364d908fcf445f4b10221c5b7bf05abb5bdc2396d6386f3dcf84ebaa055edbe9e1a4abbfc97a88c8820ff94e5598c4b46560152e04266fb238ddc2ba85180be10775e90580940deab22454447db5e22f24b8dcec39ba47523df1c93e674e840e4005a76723c8fdfb475c6eb9614b636e6ac38544ce439583e3bed2b8d7397637ad427b22fadbee8bab67e6f5985772e12f75ed29f9ce7a570b5735931f40e8aa81308c7bde3767127a8aa342b300cf8c0af2052808b73b2142dbe0157b37fd746e0a4694ec6c354f481c7cb0f2a1126770798d3d815c62ba8dd4a3eeab4aec435dc21131f2cab2e28412d18e1d1a692a1a4bc8fbffd1885df8ed5c5deda46d3fd69bde784f77f9c3660fbc6f2fcf8e786da548fc44cb44c961ce0b24d9e818765f5c356d89a5fe454ed7e2d07c8c0e12ecb7ca0dec2d31293fa999b836c5c196e8550c2dda3ff3e62976a074d8e8bf62010a75dd18d231e389eb07cf2ee30e76cf401d8fa76cc6d83d1be4cee4cded77a101ec99c629a15f3ded4ef09d7680f5cb6f1e8e341b77789cd753b9d9594cdb7ee162fa832dd3ebcfb868cc23fcbd05cb242f7b1029f1a2bf79a8c94979f77ea1df63deda9998b3679de58b5dc13eb1cb033997e8c7d5fc9abb3639c34b4579b0cafdf5fc95e86a837edbffc7ca6e4bcec17e1f18808f969ca6b6cb728e35af54a6e7aa471e9e07721cb68b92f8f5a1a3acdc3c78f4ee726e7d3239992ac265f3cb4197cea7a6d16f4aac1e80824d81a324e6059b2acea851380d4553f42d343b10942c98e759da77e1171d954891288b85806f89dbf45d9ac44b05da96569b4a3483c9f09a0e21597c9e515eea5a6b9b82e05e375d374e5705d167e39719490eceb87119219595a2e5d3173e4b9f614441c4029218684f5d52d2470484158e1a115ff8cd857178324eb447411230b62db9ae8013a4260054f9ac9f4f093d7490be5a657091f27852a3eb62b15695c1228e8040ba52acb7d8ba66206cef043cf235b31431c873d47437741fcf7d674a3d2a6e6ff89dce674ab41ffcba53fb8830a0dafbdd6b2ed81c254af4d5bfadf816a0405eb153bcbfa4a18127e88cdc2206a5a2e6007b0a359e4f3ef5d681e4bda6e2b32bcb7e55159f00d6c58e1364f4ecc730b0b190cd6d0751a23b840fb13d50314e6fefee4f0c80e48749e13e3a4bf62ceebbcdd7cc17caf90658408c17ed34670492df1bf91f6047367f4c953fa30cc2560adf6b524b9c5c85762517b0b02fb42c9ca3895f6b8d34e4a07f49d8500e22abf10c564fbc0c45c07681a9ff449408412e2b5d6459dc84ce3ec8e7cfc47f58397c2312ebc7681a015848e6b3dd9daa940449a52b6e05547be795c3c5ece5951eeb071947aa220990cd7ea37238064e0c39d18410d852bcedf5ad385f486810428c5b91ad74398f6c65db718c5b70826876467f75ac03ad5cc657b596d4bfe42bcc8740dcac165f4f15e7f921a891e3ea05a7563bbf2342034ce36d14aec196cf6fa967505d89dbe640b1502de4189e59197a2d05c619377826722daec85b45a08107903f8afadb29870fa7f6406c14fa82a31a145e01151c7e81557aad8bac5afc59990871dc0d8847f8caab92248eb240899b582b53779a27d7ac5f69ba4e56cbc37cef2b8abd2457bc4012ac8f8116ee7bbe7ab9f435050169b9bee4d9dec083f91ac9ff7b6273e416cc511187434abf6e9e41a1d6d38b6748f2da86282aada7e453eb29bf373654286faa280a1826c48ba6c7a9d85655a04d9d38fbf7c9ff06dd3802abaea55b6fa67930790e1e8e7387e49fff9344032dbd851e400b867088b958cb5bca28fba42e9635299f7622a2ad0e8586dd12a467abc70a3256f130a27a391984a998d939b9407bf0dd82236ee0c51b43d4d133ba43c29b3851153e53be059d508c406289560eba9a0479fe9fce2718ad032691c15991988cbcd57b248e94510d6706d0ddb4fb856523e2accca233cea3055aa45b8fabef1781b8e44d590ba1c5f0d1cc6c37b6ded687d7474c77b714bd8379ba4116c1b024333eb8a016fb04da7a8083d4b2500efb506f08a4ab7fde850ca593b6f67eb59c7481d79deae53ebdd4be72ebbdef7224765caf8f45d3acad62bb0fe563555abda5253332704fc922edac7bc2011adb48939073efff500c139dbcbd99563ab6ffc45c144b97591bff954dee25dab09b7c08d8da5750b172fd2ef81d9b7411eefe102293defec9261707a20fdc4c331c15a5a862e911102241c00adc0f46913088496a49f3c40d85ef68833e3689e95b4777ffa83e3eee3b69c856b6d50a458dcca742100c73bd4668a7cad4597c967bed738b693b697990cbec7d03e1cec7d1e40b1839d86809b7dceb77d0842fc73793d4845620613c65484cb912d4de323e0d7a9333058b029995c756c53d4b2745dbf7e6d231fdbd552881966b628537629f23857d0da70ed227b596793f8d62bfdaae77146c2d4baa47de29a034c44d84668a77f348a8249d663c5876e174592ed469985046ea65c0340b2bd3a46e5ec67e91818da2b2851e7486225868d6ad350b0e46dbb52a3dafe6b4c4a8e3320fea0120f1a5792085e8fb3f5cd0e2f801691f8865afe621d0773e6dd95cb547ab483ee34cf805ea8a94327f0dc4a2924a8ce65e4c3844f8a01395545b0ef4b3124e4e43ca80c784702b58d8e71f6ccd3639f20078676c3fddf4ae585f29a4bc2735565b334d5c1d3ab05643120c5e7501a3bf71d66677af15a2305f82e5a97d0c63c32e11d6d19254f6a98961e7032cc35ce80149766d750cf6c5ccac872595a83e560c24ae5037b9f52425f93b6312c1a78f3df85cc59265abc004eee4b2dada973a5512bbf50bab61fca25cf65a2672813bc62e4f60b61bc6840ac8ccf3e6825033a79e84a3ba35caf1239fca9216b58f69c1ca94a51c6ec0d48aeed0d8a3e370b87c02916b049262b2b1564849eb9bb75c202c5af7439c6f4f51c9e4345ca08575830dc5c2e4102fc67c7ab74273213bf8f419bdad47b99e15a83ff4236496137026ff6e3196e4ed5f281b0cd0cd878a769fa31e430c47bac1f5f24d4f2f84c287a91969c43f238d24d438219d7c18dbe8f5303874f3927e869574ce0d622e41b3b58de341e26ae535eb3235f9e5a6d2488b8dbee55e50c827dfb8309c4bb14ede115e84b64b59dca3bbc6077394951cf78c2724ef713603dc5d6f0ea097c2f1161c3cde487549f473f2e0bbf67b2cbb5085d1e04c604b24956a4ca0fd1a5a8cde86eb483991df5b62bd1575a788d6ca4905178d5a9e6dbb25de6b33020df006a09803ce61cd91ee96dac458a548205a91532bb8e28b8bbc50b311529bace1bd02fb38850bf1fdfc70347219933d6ee3432deb31d476dd8ca8415ab48dbfda1143cdff57a49ecb9efdfeeb1d8aa5eb0d31eb933b812c1eaa800db8487abcb1b95f459ca6dc8cbfbe64032b017c1403f935500a8e694e7acf17b0f041af592975ba74bfd2d3c37dd6c6a5772fdefbc677d9b0b006e384ab60e7716450601de184dd58fbfdbd22dcb8230ede6b2d33a0a2491d2fa544f2ff73e1bccd5fbf6ba6f9404114760cad307eedacadbdcf1c9869e8cae6d68978b09f6f3f7958810e8a6f06db9510efef02850562ccfc92c89c4259f43594e7540b9219d2a5816b00129935c0fc74ea64b6b3af868d36f5c12450215167dc3e2588d39ef3dcf6e34a4f6f14f0107cd8362d3118b0c61cb9dfba45e9d5958687a38829c22b0e7b8d148610a3c04fbb78951942857d3b59d95849d3a204c81dd0b968e8c07a5da508190a9335f12abe3aa3642b84fc0ee5d73557d675ae6cde91190f423b636b6180153ec8b71d74773f15d2524f2c617835fa2d319be10dd4e4c747088b4cbf155f3fa6a2997ef5937f92a99839032671be8e5c22589ced624262344aa5cdc824495ac3a56025a7330656c7d2a28ea9f3667a7e9a747fcc5c8d2cbda71283c060b90e3c921671dbfe0fe6cf88b3f49a08b9b55e2a39ce02456e8f7bb0e9e5951c5891c7a58d232e7fe8233e630cea2a6816d79c010bd888ca33534f8ca52ead09db9947079d1394710a81c26a0c295dae3c25a510a3c07a647ad79a2a71251979156c757af5ebdfb72967bc4e221268fce61534f5c1328a4b392001068c40006b60ff22504c3bc1dbf15732383db2b25517557be442781082f136a5a8b99cd77fe7df018037811f6b97ee329443bd539d06899dfa5cc51ca68f1e8e87ffb181fda2bd8a860520a1d2d10ce740a4fb31501b5ff4b668b49562f421ee507599f6fc42e6eb4bace292428b1dd3cd34571a736d0523d33c6be779e55e256130ecb1ceabcc6c54425f2d497d76f86414f9ad85887a858e7965f9981b2e5ba1621397826e32f1be6555b908ffe3c7bcc61f4e96aedd23cc04d30e9218fedb25403c8052090ede8f8e0020cc8d94c2a4859aa53126ef843d249721ccbfa13621ef656991e8de6145efbce3dd5578eadc55ba303bce4dce6ca715c8818ae8f190789a197986239f4a25beb180366a7a2486bd524fce0c2f21ce036d44d7c790db2d3065d5f0a5e6bd6c9c439041724433375004f9b129247148790a4510486d1e6609b407b5afa9849bc38c648b23269c1dc4ac58ecdfef32f788282992d3504fffd835dba064a14cb3a81ed8fb806f779959b2c483f6ab4de31f4ef1eb73bead50b1b10f24bb0a6d4255ccb416389977eb936cc1689d5387a045c1ad69d30308dce10f799090386c7f927443f5af37a92460e697735343c2475f79c8edc776bd497906617f3c92e8ea4414056ff531e70ba39c04bc898f2193b3cf51ed74f370c1c82340b1dc1f680e351058bc146a4a5eb76cbe7ac6ee4cc96e1c200cd18254ae3699dc461b1010664f9188a86253749149ee7c988c5fa0ca773b61b6ea4807f58b9182ff833f725c3e1ee69624547a5056fc0559e563b3dfc7eedbc10ca77d77d1051c3167f7022b4ce0dfa48d972d5d3e80a860fde1c93f59715fb70eae33874a222173c48647f008361c4fa133fe77c84ece9a0c3a2ad4e8eedd05e092e95c935e13ea3917f3bae08d2c127586fcd7cedfd911d6eb98baaaa0570fa846610a70ab6e9fbe8a9487e7b54a5d9daceb0ba1548bc0e252d4cc50f84e7013013d0c72045dfa289cff3f1e1d9a7d87f9dc54c0841598bb437f850f818b911e94da6e47d513e16d70c68e0481d5d8cef6d5ff0d011f1efca6369f3d17ab63ba7dba7b5431c24df8446491e286d2c4849cc1d9cbf61c4e65753a7cb43559d36bdc44a9e0e1486ceb63f7d0fddc4e9e64b81b12a1c50f7693c9e73711c90425ede1d993944c2d2b9ad91170af42f11b9d4ffdd74f629adb27eabd5a3274b0fb9f804e63c99c4906de41301621aeeff5da82d6b352ba8fa3d1681da06d747136fa717af63c68f3eacf6953ae09d9f1ce5400e6aac527709739f606e9ec1e417d2411fead4d7af78728f70ef787bd3c574c7c0f0500488fe0488c07d6cf613a359900d6841e2678b438197d15666c45e6a3fe403ef7c88e14e41b469dae0a6256f2a15897f18ae83599bbd4f0a071565eaba428c39520aa1b643498c1adcee35aa5ffafd559ef35c7368b4dd4a5127118f366105f26e60e615e4b9e80eb2ff717f2c3f91020e62cc7d70a1e66b19b3d9e96239266017dadf63858978d8c5f9b0c4da39503ebce3625c1c9a2807ec639ffebfaa5678a338878758ea0702b79c3b9bdc854013ff78284c48d63a11aa2b1c69437840304ecf45bc1cd7e4ac5ad27bd854201f3b11e00ad67679c23dd763e93665010b7cb729505afc2da8a9df0144d7ca6e55abe6ab17e8f75917589aadf625ba8df6d5708d4aec206955a74d348c0934d3cf8bb4e97aabe6159f40760eb858f44b096c29175608d7e17ec45541562fe1eaa62cd721a529ef85249d4a4de19aa37b962f27104f32fec6fbbff0d98281ba93b4cd19c68d4bfe7c19fd1a2b7ea11615ef8722595d83a4cc7ccd283cbd577cb917f81ba4663940c536ec2910cc81c7e075a2301800f34930444b2de984329686ca8d819f5b870cfc615e7b02ca7aefc46be1ea362ec573de89500b52d9689e27a1c382032f6d55a3e491b178b04bb11fe29bc2e1edad4b62c9ebd5f0bc4171d8b7bf1588bb16aac8bc37f6966424331cd1a990f0977e0eabd5c98c730a043d6d2ac9175d6073f869d4979353255678baeeb1166292b1793ad86b8b1987e635984d0a192b96a0f2c90f80f2bfe469b4f85824e1cdfee74e8c61493ce42adb3b32d7e792f3812b8f3a6e12712ae1d631c7a678b186bcdc6d9c9fa21a57c963c0184ccf981fb0a0c72bba0dba6288b62df31d69b2c021def57eda4a7ce932ec0dc2c4f55d2647c6ab66a733dae1356b0ce1fac585acedc87869ee38ae049267a755587125361cd6772d6d2c8dfa3ad89e26224c92bd4d5fa2e2a7dd314673324ddfd8859931e1865768e7f70ccae1829a1d006e4977b793d5cb369cdf8aa2f669f2543a012776e69b61225a572ec08bc5c87c8c64edf2e85d25f7a07edad98a4c877cc75f344aca87b6e3dc206ff179009cee23990d34c8705bf0abdb8f8dcef381e292dc42af7a19d0683ab684fcc1520067e0591b7b5e7f898ded2ee69b4f40da12b2789b077f42559aae6eb133411e08dd7700265e477b90524df966fab85724d0f8ad768cba98a3f71b756133d3a58c779fa17d5c1414452ce087c0ce0ab66c0721da12645a96fa2af7463ac45f03619a6f6f74696e2c3b71bdcefe40e6bf24cca5cb5afb1f190a7a897c06ea41385daf627909b17f2cc992f1fee3cbc18d946ebb4cf57647fa352a09152e8726f5053942c752d8b6ca29c539c7177b6eefda1f958a7a14f23f99a1ec00e0d2cc777aded43f38410fa5aed8a380921ea5c380472eecf9e350a136e8b81f58f50de8a568672e609e8bb20a661014daed622d98a2c7058adb9010cae04bffed00234fd9a30b3d73ac69992c6d485be8844598cecfce1b1764dff883b8758ce8fa115b2c4e2568d3142e894c11a80fc8504a174f15bf03fa9ccd60ed186b07552ea2d52b22adfdc5ffc2d57c0771c7e15bb8efcdf614a9ba5a48dd8abee82f1b22647ac806f7dc4a24c0a8a37a13f9b7ed5088a9b2c72693116f4df85c3bec8d32212e5401cb6adbb61a6fccf1e4fbe25721dfed60729898c5968c7ee895eeddc0f566e48d250a5bca37cb9b617b49c91d56961d5ea00543f509fd75a58250ee8f79400db0d58578e567a95209b6a6d134d5eeecb81299b0c22908b8fe32614ec56a2ed8c97c4d6986594f50ed4ee29511ec30d6c579a8f8e3698d2ec2f82071277ceefa5f20310a0d601794b28408725d83a8b7138572c4fdf05a8ab89b7e2c4b43902eaf2fa41f8e35f098db21da1cef7d01be13d76df3c38beb5d59ea5797088e828d8f8c406f0002854374ea35df186442b65e1725bd0bcb20ac7765e004ee714b6da860bc4ef7b68577b01b8935362cb87482ef8489fc8d19f50b25341affc84328ed433b4672009fe8f72e64b783c48037787835b79d5e89b751562b6aaa279bbd81f3482e668867a3725de502d01a5f7c1a930ae909b6925008256d3dfb379705c52ad2947f386905ad20549c6a39ad72dcfe63dd8b376552312a7865dcdd6c870a7093b4f405413375b0b821a6ed81b59b32346b4c11bd83b122c6e3de48aedd8274742bc0077e46ca10943ab10eb757737c24f8f454fd8d58f26afe6ca9b7919caf19b975b6dbeace0dcdb023cf24ab06f6d3d6f86d846a16cf7387a9743e123da675a3f7e8ec69a71b8691da941b3b94dba405d5e2f3d4598659202e69a942e578b10e0e10798315c55159e3124329463415d384d05118c31c0ddc7dea2857662f93a296146afdc0e2aba3a4eb3ccfcc85ff05518a5a7aa130d2c7a284889b1de211af4fddcf7771f04a85a5149d81c814c511f9e5342ddf37a55369225804094664563dcbe4b327000f26a1d12011ff0ce1c85dcbcce294215ffb95f187688eb14963f324a4d42f4b48c8a8b28c9934faa385a3a4744733b720e6e6dc750f767ed54d27410d0139d382fbbdc42327cac7d9430ac9f9608f2ddab5cdb64889e2b6bb2e186391e6daa1cfa8bca77de6d6e72013e726aea0e4626794151d747fb1da7e05a02f269532e8e4d29b223ab8f87857c4989eac91a360f0410edbc0ca5bed29528cf6c605dd2337131fe00c337639457441d62700a1f3ada423f0006b95cdf79c3dc5e0966bc16b120f5f1a244db08f32e6cbf1c4bd6b0f4f2ddb0f6cf541af982a2b0d86a0042111187547a8758061dc09499288852e824aecb366ecc1cc97fdbf938c6fcdd7aa0a0ea869adf437343adbca3e810e1e150e400ad19ef634adff28bfa428aa483e95d807d6d20a71f9562f17154ac64997d7c09ca51c394936b9006d30aad09bd4b72910c545ef2c2b61b6fd9bc942735fa12d7135d3aaa7ca802968ed05ddf39495ed3dbe50d52051b91cb0e14f7a47ced79e3614e3c4a81ef4e0ebca4217ec64347ada1b00a38b8b291f1810e18a2fd6ee302c2bc1b94f965fcb7382a543d3748bde75bbcd61e0c68a042ed2fe21be85f893244126bd7a8dd17223e34682fad204b20b58b8f63cfe9edab88cdb72be01130a689b7f8d0fcc5864b0d9ad591f3643b76af9ff36ca3ef33031ab8418008bd9ba4018dd1ff28f7ad6887cf4c9b8b03a3dc63444a455cd3fcc239086c7cec28fe3443ffc7cbbb8b0def4bf854c329608c5545e5790377d690958215c67b3f703969a5a470f014d66e98107665d141db999539e094ad1518dbcd7a936bcd51219803900479e2346ddd71da5a4e74dfb89e22fcafe453fbe67d865d6d779c62b67f8d618a01bb4177d0c0527f2938a74d8e02e9a08a598cfba389938c0bbc1f0d738bc59cb9286dac6404b471267133f212ba6be590c76c81cfde61e9f2314cc01f7298682d94970e8f10bb61b261841df2e9c685a051e2f649fd97dd36c56745d8a74761c276a49eccf0d13f81cd287b66fba187bc440e7185c870bd686c04c858bac6a75ed71f7168b42ebe3e962ae8272c7a5f67e89247a3cf8060cd8cb92161d80e4d32c975104f14f8d5b787b3ec645cbafdc00e5474476dac47738ff161f6a72130613c8b556694c2b11aa16c2ee29d8572898316c0071d5373af28ae591fe099552b9025e875189c2e526d8f4009a6d2ba5da2277ba8259f67b4d2212ba886afdd8e2c700bbff7ae44e79b698f726ec651f82bbf2f0001392c3a6bfc229001e9b812c493e1df2e22d1c8ae3dd2abb714dc99d40de1d417230be4124adfdb1d3da1933b042ab2c3fa9b1fe4a160506687aac99087bb8fcdeca862862e00f328504668eac94149854112a2e35c28768e412e76f86a59fedf2baa8edf8499f5d55f02f8fabf90ff319546d69730d28158eff8607dc735d053ff5b4f455c8191502eb905c9e7fc60ab109342ea7889cb7e7dbdaa1efed4e888b6b7b3f441c4c404a8d57f7574fb26d5b42301ec0a8e285ef74950dbae0490e1b9024fa6ab5a00e0577977e4ce5f86a452b9e5e5ef7ffe84ce05eccb4ccf1254db401dd375b77ee43bf4fd17df749489c421e4442f39379d6226a22b0aa5cfe6277e06d0e6edf4f9763302d2a2474e63a00528b0546653625271e8b2925c45bd02e95dec5fe037796abfa21480543230f3a2849a5a9ab5e8796abb939e97072cdae38372b49f8e8a0d869b944405360c9d031d0d950bad52cde30fbfc7934ba79a0ed4c7abde50897945c5ea964815a84a686215458084e2cb33a222aa99bae930d858497987b2cb6aee0076dfd2d546cb1fab17e51c757fc7892ee88702c87fe1574c6c43d98630fb2f8cd8b3d701a1f1423a08972c7148a558d714a393fbe57a1b11e40d4983cf8d77a11762d7bb4c77793abb04d790a9515d6083106bbf1e2d3aa9e661301740eb8fd0a1b25f4c442fba62b24e82c58cf904f0b8323e977df4d3a153ddf5be3d827530e2b87c9d2d22f5b473e86ca683a88c98236a59e026cac7633be10e9d2767da206b595be90c08294a820bf4370df7b373b7a5b0cd7cab161992eedbb193d39650d7f88f77e58728f2069b34b5496bb75dbd198484990e340f69828ef7ced2f05594de88eac52dccd03bd69b1fd833f99b6ec0e64c891b93c99535af92d51d2b6bc4e3c039f7dc060808c71a5580ccd4fd2fa61b86b21e4afc85bed3dde806be7582e2408c773abd8589888a9ed5118a22cd0cc7d411f7add095510c5eed3277cdd71dd7876140c8249f4be483a2cf71d26386ceb0a9e83c72aed681e85ec47e809867c25550f557d58ab02fc0016d2556441e89bd1332b60c7baf0bed216b0e72c691b7dee923f59fc87b8cbb09d0af43ad84bcd9fc4e5245440620afe56a0cf7c2c807627227f888f9506a141d75a9c0838be2f63f08226abc9dc3342ad71f585f5cdde06a08bda81607bb3a39e1bbb9d726a0bf3393f0f52d5d4617a4811a2cbc2a42cdfe2462833a920b7f5240e06969ee1e412dd060c12148472afc54ccdb21a5df1e9f6e435038c7450c963a56c8f18322196438502266bcbfea42e675ee6624a994dc4c71e2225d89855aa172615a5b4fbf84c0e71bf4acba6f3ee05fac21c9354ac773b37ad3bbcbad987b6525efbea1c2867adeff383e116e73422aab12bf2c769f0bef707a9acf2f9037d13570c5ace75b60fa44915c8ca8ebbba69fc8aa208769abf05f7a57185ce34227d618de1be425c77a24d734e94641f1a5d296aac34a39248877617a5f406a2a50324d299dd82656a6927da61c390fa0e759bb79aa77fc4d131287deedaae94c892d378bac2e8fa566fcd999bfda01f791d0e7d15f1238533ca331ecc78dca10f3af00299b2672e48b83c0cf6ea52f3f564b7de5b386300bb85ff19a005513e7da69e29fb916ab4059265f168eeae57f42eee47069249e5d0fffa3a53ee0f17160cd6e6bb8166c1bbe92d478f3dff9a6a209aee62f8f25a9cce0618e2e650c8727f2051f6f16aa96f855cd80920ffa0183ffcdfa83b56bc4a266fef407520dbf6bc23de0995863f17ac3785d79c35c4aad20452f289e473ee3c5b511278f230793472e31856f2d2ca4ec0f5e1e61c12f3fe49126a85d286812239c17475b02b93feb6ee53d63a942ac6d65c6c0da6601c2ccb9c19efa4f03adc629625a30be37bad7e0d3fa6e3af4443cb9679580669e3212ed23b166c985863627b00d501da09af45621af80f7ecde40307f0275699dd2bef04ff46d246460df737c21bc380dd850d726fa036b573db4382c276fa9b52ebc26bea161f9b8850073e30ae3cb0f12a894b9e49ad818f8903c44842f2abef385ba1437766c32f55f3011a91c49b8128ca24f28d9be6cd44775af1d487bdfe4d478ac2205d85f8b1c6bfe072a5447c764f77c9772c065d963d72554b561d0635deb145161d4f0124f72f584a5c7c5b545cb4d3ec9468f5035913f447e31c4abfde18c7e6a9402cb0abe10d16a6fb2695910340701b1f0c9ef9bc79f263ad5d1c99bd5575d6b4a1a197037d68e73c0f234dcacadce306dae6e36e361aae921ebe8d46c14de569db4d594c384b7ec5b41f3540a7b9d83b7b766a08fbe4c6b7bc1c69d6c874dfa8fce0ccc6e62e5ba7d547cf553601a3736bee09f8dde7d7a6940207904d5113d8a49f54e675ddd2f9f52dfc6868e4bea9097679c48b65449527baf04514b5ddb4f50fc232418b254504f2e115ffbcad4811ee2328b701c2a32520c0820dbdf94dd98fbe6fe2488d4b4a3f3894e31f198cbf72566cf3bd5a8d2941d5e25fd1af2a54f630e2e35a452eb42ed01f5c3f81857b12e8582d46bdf33559a33e6a7f096515b7ab1b61795bb049a48e1357432ee232ae0719737596583662f303a035b933debe4b7eea85083a67ee264fcfc9c4ff7284d0a231ec709f9546dfd61619b81d04aeecaab69899b09a21e29e65fcfa9439c7aaa53feb55b227d7cbc166fa8daf44ac415aa7fdf32f7f84eea3fa42e7b9b64510dd953856b9ef58b286e03b7432a1efb6b42f9723f8fd5bc49ba340df0f312ebe4edb8ed9befc57f1adc125490a48e5d32c19aa35e8d185c15cc79430448583a46d333119d31f44154b350f63c3ad5e97bc5143b00820e2d90a44f85290885a5fdfcc39d3dbab34a156984dfd0390d8f847ffe36df865c3227045cc97cc433f0822fb2c90e5fe1fbc0674a042b985b164e803fcdc0b1824defb695bf2e7a7db75157fac1b0c9bc1f33d49ec694b409a70f1f637db33be817d4ea304b76358ae35b9073f329dd61f0c39dc71e172ceb8bb643c399d48ed037d37acdfa4543c440980fbb398ff1f135fa297a4035a0463c3d506c4cb74bd6a9d15c97d74fab90e5f83e9feb317691a9cacb0b66017233bb200d459e103b75f2cc44a82d37c51cb91580217e60859b9694aa588bddc56fec6a0dc86766accd23a0a3d07a3be43fed358f8a3157f5d857cc164f366905b8bf6d09e0e8dee0d5fd8ac6f5cfaaa677d829c8ceed02eb602e466632856df7604ce3d8069a14546dfba8f667caea783a6569f133234a27c960f9ad1bb72eb112a3c91c5ee8a8f91057bfa8acac563e300aa80e1e95b862d9ae52183834b451acdbf7403f405b2f4023eed759665a62b2e6fd506fd350fb955b05c30cb9590bb0b957ee17123cef0c58210fa4a2ea728d95ed22bb1eaae883e0f2d4950f495a6c0bac82c519011ee85157d788e84731a9b0903632582b4305ea02f5d204a0db5701389c2e9bb303433782dc5ba1d449562696610572ab6b84f13a6c2c960923070a92e93e8a6feaf3982c8055ab5912d9b467167acebbbf41749c096f7b3e908aeadad291860a3fb84d8ef6a06a132a4927892fae9ed2ccca64b9a03b0ef6b5a899d75015fc12d613cd2aeeb860bc1d69c1ef67b4b20bbbb5ead2b909427404e22631490ebb376825b2d12ab02b0948142ea44c580e826dc8132a49c8693810693cccf2069cd0fa62c2ad437f77ed9106fbfe9f37a671a09079cfefbbff89a59190eb6b7eb67fa0ced8c1e5526a7fd26b94bc2540f10306811f8949ba06cb996b9b3152005ace805d732134ae28642c3036dee6c853e688c62f83e752ece3b0576595411a44eb7e03d05415fbfdab3238adc1cc247f45e93f75a5c48e174fb56c0de0af40a0be2da9cd699b59d9c553c1fafa48b8113e8c0b49648f12f51d2b2ca67a58c44d4de01e3ffecc9707ecaba2deb606454ef51c31bfc203e59981cfcaba6b5be59323444d00ea274b5ee9e39d4b7fc0e5e8bacc03de2ce3bf245c901bf02eb43a2766f5d018a6964606e8e61f3934b68e2c3918c7dde2975bc68d5a4adc8d9d2b1b4857be76efd9ff1d1b6d42ac0c2444b1e2a956d40452deeaf6b054ed155f95114077d58d9faa44b6cdb37ee92fa55f174e80699ae86b2ea91a34863767699c67844b7581ef527ecbddcdd01537a2523ac0256e545feb547267e9500be31539e5b3f0a1ea5be9bdc3cc2619d229ce4368d96d879f410bf7c50253c5247a6c04f9ed30f08a72b421bdc37c483cd529a164ededa998f242b9b534e70811dad7fa870495b0840a8eca22bc2ef657ae661f2f644bb56e4f4dfe5402854c9b1e9e233bd7669c4e1ab549b9d4ef1425641b620d15d771b456efb8471f95a17d7cfa51c076dc40e5bf9ab12094cc126777ab5b6ca1403c4162590187914a6b75b5e39f7e1d7d7a346e41fbf12513cbdf5f2673fbc4d828bd34a7c135a4e54cf0c26ed7fc99cc70248f8af5c9113d2af33426bf745d73eee8a718afc1c9cec33cd92d6fd32da7ddf9a27f97ca589abf09fc11233ed6b6b6f3c7e14deb3dd0173fc4d5dd4a807e0a1f73e53223122e2e622c5e5cfbaf7f19833c4bfcc8df7d590ae83a6af07024fcb05fd5c70411d06b62e22dd19da571124aa03c7ea9e52febe662f3088284c1225883143c64e3d48bfce6807f4c35d8ba9b17b577e0d74b54a26806e53536f95630f5955340ad9dcd9d8cf48ced4369a8dae54994d125a4f1547c74476b49f988befd8d4edc488b747093655ab7bc18d76cbb44f369e60503f1fa8eb453a0904a4f545ab2c99bc3a8c0d624d9519fd067b463706aa9ac2d4a7a3d2236bb28bfa2525ec284998eb25d67c1c69a21420cd194f1aac4b6012b06c4ed7db4dfc3a156e3e968d12f3694c24ba9260aacef2e2340b4ade1797e3fbd4859ab0c48b82c8b6627149d8a7daeaf9143d217e852d202e3ff1716ebea72a508970d8bbbf9097544d1a152b1ee47277c9667671f31638c9abed65c6955b410b7bb950e0bbe8f2e45fbfe2207f29f8af475e0e70c1e5a7ea25432c924978fecaf8099f042a5b8d0e4ba411d659732c580ddea74862d68e2f2bc0a127c984851b350f3bfc24c9539477f6cc68be4996e0b965d8b0b1cd5f90d2a6d691b2af1c7c8293cfc4fd7a09a8c40319c0cf25a3e614f5708f160419d17f50d01f3f58508cb4fc177d3397d4fb9da51338a1ba54d7fd81e8b90da4ddc242553e42537e78bad74358959d64ee1814882ae6bbc05f255b065b2ba3a55cec164f1fb08bd8cb5249abf722e200651fbc3b503d2ff87ac4da59e5c09e23815949b316cc06671904179d6bd6cb1737177674d14b6fef52e84328a9e2feb129ff05f6f4af96e273f960747f8f22ac7fb340e1ed1b34ff2b0ebae367490ad77cf2d807bdd377ccc0d27e9856ac6d920b677ab1b0a25b99d2a8808b78030dbe16e5ee7c7a09b5af194233263381a5286370fc18291fca1ad46b800c39ac8a133eb0ff39d364d9e17dfd62b596aef48d498f685d6f18728923fbace8f3732ed896a8da475c58654bb2d2eab4a205fa91a990b40a69f5ddb63be5f5de769f7f786f873b06aea5a64963783f95289f6eddc053b5ccf9d193688e99f225ef2a52489ce7046b82d1e9b81482450f075b3cac37bda91d89953424a98471c7ac41492ba7e5861612659fd7fd2f8ecb87a66d34b762be1494cb55b38a29aaa0e30f5d1162d68bca5a8e766e44feb9c09ed81c6888cf4f40599c5d034baf048988220c5f25de5723875cb72863cf4ad7372e0c153397625de89950421e5679a73fb3984637902382f565f4582a617f1a54634b34bdf760d884beb8739094ae94229a50121763d3cd0f77ca7a2ff532a35b80fc4c90d336bff776e11627d4bbc8fb4a4b629ee1b24955811fb8c19c0d24e304a4fa13b63c106baa6c8f5acf7eb1976d5c3bc562f7ed3494efcc883c0551a5d1013dc78438ec3193b4c645286086974d20175211a9c9a42f619cffd0f923577dd9af32c1cbacf0f4328c4c45829d7f4e60043b47baec4009d73b47a56611ebf5831ba970c2e7d4c56eb96ebea58bed708cd23f94c17551403b10747f4e026867ec9d7f95e1fec560251cb6578dcbba836d84a7cb1282226ac6f708c7f09e901d0c8d9ec0952a3cc1e52a55c1309f06f4c51e238b1c965ee95b0f9b0455d92469450e323b25872d465d58493c3f7f6dfe86a1a9ed53903dd64f866a19ea8d6768f283194a9b1e4c2ab409f0c937bf31e8a08d1ff3d05adc90ca9b7b130996a20277ad2a983ef026311efdfbe15279dbe25818291c459f1b838c7197d287fd1cf003b1d2a3edef04916e61190e3359a1e03d220ef8c254c81efa439fff49ea15d38bf9ac94a5ac6cb2ccea4c37526b69bfdadaa32a05e6d0a369efca57db0fb4bd9a8d24f0f424741ed1b850979b3c79827772407f1df9ba5ea017c277ba561a58c15e7f21f941c1d0fdbe57880fe0c125a3b9e48755b93a5165620239b1a0e08dda25837bdc101c05b5fa8cda281e0442aa8b325876b654d976d567186a1d706377133c5bbd24e040cf8804c70aec3b08f7d51c37a4adf4259bb86bcaa44dec92fa3dc50757027d4f3ad3368772dd543ad89d7ac1652a42e4a21d5d8217040ca1599b82c5ffd85071c25046c93bf3b47570d6156f5751ff9c6eeee428f61b7aeae3da82687cf299cf58c67c9d3f7a45fb68047043dd61fad34a2d4f3e601fddbc66953997124903d95d88c092ed885e7e190819c4880ccb5d919f595c5560a60a7bb4be58647d2291474e4b7c019c02dfe147a6080e6ea3e340ec4fe99e5d6f69acdb7bba789057a9c0754c1a57fc1607d667118b669d4e82357ca13dd6be0769ff5dfc520f555d6628c62347532c8beab0cfc4ab64440b1dca8c80042e7dee46a1465a7ec75f98d7de4fd1ac35735b2e00703a7817d1bc52c9343134cb7653d370a3e62a09fe328db2914d69a75a68195d160129893fbe3ba0e256a6d2a858f93faf7e93a70e3b4b5107b948c7391c1e1892b02922a10b6e1894c12f4405041fb32f0d34aa7487d674f1bf1f9f06d414f158dcdc94b5b45793a492adfa22f4bd575d04f83815407f226de8a41baa9280aca536485b320fd12c7bafa7f48e6ca00b974defd1ddf4a0ca596d9c8f02dbc3fdfa03f6c68da4753468bccea822f916e4da7883bd10d9e5aaf010dbe760f81eec5491de0f23b70a9eb77803f0a57faf4de21043892fb9c6da1bdf78cddafec8e725e0dbcd9086887b175f925b36d1aaa2da85448b5d7223ddd87dbd52ece7928de6f49ef347242b4b57481e5ceed65c1a6ce5ed603f26e91bea4e34d33d945a964cc141dc1449421c620dde0ed91b819fa19c58a95d1ab4bc4f7d90db0608e73deaa77fa5927bfa10b6a55eae4a9f95e4d2a6e89807bdc5d5dce043004f36a06b96bb35cbd1d0b80a931425c81219b3dea28bbbba59acb698ec4f07dd37947484bae40d76d30131e33a68e4ba1cda79f2edf00581c9e514784a41019276ad52d58172e7d95a20460e217d1515d7ab71e62e24acf989c5c8ceb1b582fcf543753dfedf7c8540b23f835071c0b72fa368d095d807a77c0b0893210e6bbab1a41f94a409e3859b9e41d320902bc13f8d86f80117efa33bf8258413d9b99fad4eb3e807503ef34d9ab32f4f8eb732cad9bd109c92958572d5c34a66d59cb11e9a0364acf2480dc088f8eb7bd46e0e6c522c9d1672ca901e8576ff2e89f85fd6f0ac37248d5350d59817302b8c4fedabc59fa850385e00e754b7356c026eb27a765db686e21d45b49269b71301c021567cdc2ec1bea110d5cd512931931ba660d6ab21c4c55b24901b426417e923742c440cee47937e90c4be0a485c9109cbf104bbc21e6e3c097ba176e423ca595d11dbf3c5fab86c465f3788396dd1a038f31bf1e099134ee51b9d5c82d803fdc9bb9505cdc815575d0ad23a440e4e93f79c6ef4632506f5d2890f47ae4caab39aad9dba11de4b8e54c87919abb12f3f6db2760f330c3d32995446f0dea511c8d768af673228c116a9ab9120e16d9c7d78a64bc4db0eb4c239b99926fb97f834c14b41fa8ea70f5242c6fbc7c4c57ae821b6106e3e2a3df2da91771d19554190a41cb4c2080a2aa4d3649899e93765ab7e531acb74b3f2d07fc919ddb4ec4aefbadaf4b6282a701586189e704a5ecdc2a87f1ddab64a5b41b239a91ed6942607f279eb7a5b06762a97aba72b665a9abf7aa6b28e4d8292c36383a4455925810490dcffd6ef5fca9e382c48f1244b80b55a4a0370bb8b344a5f01ad220ae3d9c9cadac03afc3a78f8589245defffecb72930264bc6dc3d39f32ac162551c5303285c602c347a8cc84b8ae749df6db1abc55e2948458c43df3f990fd40b092fdc19cf8968c1bc925c16dd335cbb2a29c71376d877a9289f79c765a37d32e9ee5173bc7cc9d2eeea6b662f3325e273b348fadc9f77e57d8df457803e8658281b55f5a939cfae1944344f0c21ec55f5e64f488b81e5a232efe0a93378cd36ba5e70d90f10072e35f28921cb711e06ef001a30e5a01f93157ee130a242d9bb52ca325f82f5dac55fdac031ac802f9b2d06c5af92896a5eaa7f172d9c4ca4d8c5be3b1db123649107305b6fbf09717ec7f65a7bc9391456a63214fb04808568e35882ff249fc645f79eb87daf51c603ebfecb5e5b426edc287d21aadc19a78d2bae761c13237c6ff7e2b4bfc94f0b87d36af48b329b5e7747574a23fbdc758d041ce87d97799039c8ba382fb9219591d05c2bdb796bb074dbecd7230dfaee4a5ef3bb5f08f97f2c579b58ebe965d6479583142e128e0976542bcd0022d8074455fd72594475022934da4f3ebc81d613268de0651c6f5f4aeceb6d689f9dc77d5bf008fb160f55afccd102fcfac0623d5a4fdca42cec4d83215e647aa9458ad52286b0b9c84c0853b6bea8729e8ac883b2a7f8b5bfe1595f37f0e186e075dc3a486bdd64d1eb0992fdabe700466af45ca0dd3399dcd3e5c01bc2af7a02e1e9cf130c477453ff8158edf70e72bdb8d7aa89726325c3479f6302a95a680c42f5955275065e0ecf6c2f6934d9989bb6650d306b4b610d50d8540f23bda8f4fd1079abd5b56e6ebce4954aabcf56f6784b22c9e40d67829f6030bcd1c0e0948c48ffc81123be6fee12dc5a347f6908c591941031403be701414aa198f2f6c75d4a9cb560cb61b68fb877512f63a68bd0246140cad5181d0dbe73c9237d4b9daa3f2d2e6bfae2bb905d78102e354a0ae55307a70e47dee0f766b8d6c93060ec0bd9b045faea779a6c9049b03af2dfb622a4207bc3d35c63b611c5e7d57ed344b66439d901c4c31c9e4a11329f0654236f5a41e4e531affcf011d9af670ad00afd3c120d8b71cee822b89836537c21193ef1756ecc59e7561190e2feeb95c3bcb0dec6ef02da6c11897385f10eff433cdf3fbadd56f8b7a09a291558a45837d192a7a9a11b82bddba0d20a039ff9b0b0f8c83587c4b6ab2b1e3fe437156b5470dd6de46bb3771d388d3476cfa5515e6c990a6013e5b2ac1035c2e8becbfb67353326a4e97ec1310c3e5523df67759699adf32bec5f935dd6e84c72fbcf310e2c24e1e399d99e96dad23e2761788e9069d95a966fa33bd0896f67d5db21daff0e0310c572d64ad48145681b13c7bbbf02842f2fc9d3b721934fe189dba89b3194eeb282f0c4f2911a15a07f38c0d6d9b1f1a625cf74fc92387fcd568a44ac69bbdc76afba7908ace8443a89b338264d142e1e40b89a4e43bf32da6c6bda6e2052809f423e8976cdc89df17caea4b8c7f46bd596bca26cb03e5356fc2fdbe72844cbd9709bf323946f6403865cab3fae6adff9541851b5e79df9759de6d7c6bb2d70f5624ce6a993c81c66b06a98984367144e038e426b67a0701a99ed1555b64490ea6315c6b998c10f6d708b34cd13b0647eefde9a486fbf91c6bcc0a1122e23151ad4b78ea04400c3b5b574609760d9c727b22c06c829e396c2297a0140fd853f908f8c31abc2567b783d86687fd41869b03fcb4772b836b4ef869f653dabec601a542d14d57a38f9495f4a44652d3d71a7f7a75b39c19a213e68a950c4c15c5c818f30044310f90513d3ff01321d291dbd88a82564f71f0ff60962b29cceca9206b0abe1a792eef1281d4b05135179065e9d0b9a5f2b232610dc73fe57777fb4f249b744186b9b4ae0c1ccdf64c917fe0934cf651f9ad70aa12d70753e4e528af9952989d8f8b7acf5f28c83683031d09569bb919dc31f1ca66d7d345185a516df7ee2214c6416cc9f672af0dfb0a305ada43f3b4d0c4a30aee4eb0cf88fd7972f3a00e93b494384ab8f5d2316544f72ae54e73a345766000757a8c97cec2c67b4215d95a7f2c370a57b5e9a2ec03ab9c3d9036e3b0592d56f10ef0c5a31fba4ecad740041f939dfb690f270a1f3db150bf428f6b1938d79ae9128566f30d61453f408a64262dbc71454d485ba6f0a1e4fb7dacfabe5b264a7cd88865ad55093e9970fe5a7e9867970d039aa65848b2a86fb99fb18f0272363096a57d8c92743ec6ff05c29f41882d44796e400ba973b787eff7c56d599cb707dd4b27a2e00ee7423634ad75556c018bd90a076c3df68fce46da411d994deeb5afcbad30f1ae732f2bd677dd20e7dc7023f15ea56344138afcb0a80b753b99784b219f6aef53b8eb621c822838d75ee01f0c6dd1e84bf33b3a266178ce2a241f157f753190bc834d194e0ab97953b9a0d1648b946dd86d2664a1efbebd282657de1f4871d9b009ef647ee642633b0a1475072c506e0b6f867db4dd38d96c9f52dca052da1a752854bf1bbc87d2d277a63c7a7f1ae5f907b1515176567b6a641b16c5b179836ed03c4d48e1d7aac548b3be39cd7ed031234c3c6bb1eb58f2dd5cf8ffa6cd1d06ec75c44dd44434460bae50d36036efe7247b29371d250ca837086856955cb24fe4d109bd68ac852e15fd40d0abd00d2b01124e3676280bfcf56eafca1de88b78cbaa1c5ef9a79e3e06da0de215517978f32cf2f0790ffedc70b3642b05d75ea0a321363587a1e8c7a7ccc2567d8255225b22503650de8aafcfd85e362220dc52cf94332214d95e17087ba29702f52bf39eebaf67cdc531f3744ed54d7105ee6e99f19872624830eeeaa8f84b5738d30df16ca62ea30321f252ddfa5f1d42055438c8c2619b577e702c4dc564fdd809a2d034c6a0dec23917d5c179373b9ccd7e93067725e2fabae8256422b9a92fb674427923e0aa0f5d7624e0db76abba60b74f9bf00639c93c4f4091cceaafcbd6c7d23a733520fe7e14d60472c40a4e17dc9b5a67009dc3134061f85148f78102734041cdc1957dc8db78c74c34376724d97163d6cded12d7cceb189f63c97df15767a2d4d49acfa8a3f954cb66d556f4f75520919e70ca38cfbea9860579f0ffc9152d92138467de96dd14d1c1a7006572f1ff058b2f0af055195415964d3d367b370e98923f55c5e4f3886062f7010947b4470dc1ab9631e259e990a90c7b7e80aaf8614d171d134eb2b514ea0cb065534dc03a0cb930b49fd9d08caa2288ffd5ecc1b34174b5de3a73d64bda6010d247e65adaa8f3d3d3b5ebce71b62c0c27e5fc1636cf68ed4f8c15cb0004776ff1490a3e0603e9e4110dc8d5168b1d4dba7077c6d256edf361d9df421ef670f63cb83cca4f0a4ce7795101296e50d604f268ea398777673ad12990e62fbfd66fc9eae20e340e47d445790cac6cf4689615a6b653672a8a5472b35961b74a2fa2552c79fcb6ee5ef3802bb04632c9178449e6328781da32e8d58cd5d456d41452b36f11a4bc7993e94aefc5947fea0dcb08a3f6dbd67c5d5f02747d4abd027694bcc780bb95557ff2b5c7afad5f3d2838a7c3de9176c699b69d648a0113a2f65aa9867d9c227bc5e9dd9b3edc6866eeea9cfa050fec809cfcf8e7f83f115cdff724e93dd1cbba3fdf100678fe11cb699fdcce73905090e09d1c5da3e34ddad4e7b5a8e9c56282ec724aae464f4ed58a46634f82f15ed647e542678bbbc07cc0fbfd16db4d21611f4496fb2f4c1b1068527db308184e2f58f78be113ffcc47839e948904ce4d5343e6c263383ee0da6655f6aaa61804856d98c0ba5b56e88caf7bab58d4b934c8f6152a1f1a4d4c0ff45e98b7c1997d62d6500c9351d0614e95f08f20600be976dc869b484fd8954ae10ca6e07678ee166c439a96397839ced08431aba3a7903d70f5f7092f82612913c1a412f39fac9fcf39b89203b11410dab27843bf1514e688dddb2cf536db7707d520e1b1d4f4929d9df71a1cbe683d2e8c600bfb50afe13f7e6bb3c72ed6879cf2bb42b636639cf82e4804d0662c617a32f654979711c6d774b485e4bf39ab3be9ea08c4955999ca35b71a9d8e8e44ffc4dd14ef86429b64fe359c186da1cc254bde5dd274053d8ac5ea6e44e7bc52fb2f90c44ac6d014e52df4ad63e6fbec09fe2862e92ab2025cb8b700c6c98eb4dde34cc0597d41ad18801930eae81a40effb9c6de9ad1f28b4429705509e671895725de2870dd0b347911dcc36bc40f3c5d111bad9ee20bca195404edd9abdfdeabec7e5944e339d28275f2cd26ec034a6bcd2310734d036d8d1953e97eb3546b369072fd662cc1d5357f25c137986d33443eca60f329156bbe26d6d91614eaf39f901aafa0ac10416f98bb66bedb103e91c918151a8b0cb20cff02a86736f962c3de6b2a1187e04ff7cf5275a7c11fda41ab065410bf63661f78ed265a289b5d436956c61cfacc20b6f2666e969e5b161280377ad687f67432fc646da7e511c50e68c82ff1d85de0fa05862709f7577fba7ba69d4bb01f4e16cc6edc1f85c2dfec53ec689eed2aa90eb580e63bd0369007d0d6b57d35a48ada9b3c51bfa16f72f7526e6cd50b63321f1b2e1d9f970738c9b51df42da8f8d935b6d0c242aee673df863f3ef3074a77f03e3d8b2f397b7a594329e8359275644ebaa4f850ada0d86de9810a5e3bf67347d38cdff94a2b3349b105377d6743065180ffe69d8f75c88802b8e5ddc8938c8c9b9a519ff2c27f53da88f0906a90116e3316e6a70b766a6d822726b0b1b140d0fa865088a96e8fd4f04228c50c0026747f2ad8b021b351f304f535d8a7335e328f0dc5eee747f74932346987dde013376c56af7c6bf4a98f3f8af69e4acbe17b5e0fdee6becb75984269f55e2aebefc7ed91637c83264e8d88ae43e5cfd9f516fa1b316fa9599944279be9b68af3407da8086b9d11a08ddbe0a045856ae0d2f1fd403672caeec49f0530e759b19d5ed14ae6731bf5dc25dc0bbdd74032e3cf9ed065197b956479f3ca6361af21fdb9e57534b27ef37d1ec3dfed4f786e94c7d4f6db62eb5d087885a789cee55be6f959f17ffa268c0ff5159d1a38eb8ffb9b1512395c8d10f1951a32f9824a5f8c823696b7e540602bc632ff0a132895ac678fee23f9631b1b85a2f5cdcb2f1f9cc24cfed2fe3135178576ecd6748bfc5e549621338cff6e24dce542bfc8208067473de82f952b33d517c8f849f87a4c2f5e6286ee65b77d3d984a177465de0f61c9c31c29b6cf27b31fb469db4eb5c140351997ab7808b1d5322417729e31cedf5ee741c0548c3b4342121f37103e736120460dabafcdec27ee22fc8660113a2bc2447d5c8a8e9ad41b2102f477a133d1788782d8534a3755e11af54fd2a05c59acce5628dfe1c5d139bed6d5c9e6a186a9c361a05f8eedd53c16f47fdc8db9412f9e362b01061f26c999a58b6e784d32f76bb44d05a194b61971c99840e7afb655a8889a91e21cff0816206ca3b9ef8790ec3347ef2f2e89bacbdf8127f719ca55c42d8cc53019ad90889b56952f17a4e55cf4ecedf20bed8c65861fec848dc51ce677c72ad1f4f150db81310f52549d310f24450a52bc817e258710efdb313f4122a4dbd3b11661da77d1817a7852232d5621e487a39ae9ea0d41fbeefdef26d0b442d2c41898e0f8823016d2fa45fb6e1432b77d07e5d53663813df246f410d2c0fc3de94ba49bad236d3da6766386978284b94422ab9a6cb6b34493ead60b6484af6613230b66c3ad7527bee951b715d4c098d06e840cbc9db2538a384e122d665eb50f640fa0bb58f6591b6727135c7e348a67018a886634d07b34ddf2aa681fe0464cb1c070dc791fad4a624dcf7bb9c0a139185fb5382edeef7a6d097f56dc019532644778f62a0856cff8ba612d720cf07e24071e728738bccd41a7c0dff108eb14a4149067f535830ea47473af3652e0d0aeb2b219febf30b945356d981de4206a1a7b387e015ffc0cdf88af8a2295c5ff2359b0db081cc602cd75f1218b4442ecd9c2f97826967e494a42159e039d2a1e1f7b67293ea1d97493bb9c230e47a74f43b1e3d3b7939b3e9e1b6a4d19b69f5e026407164f1098aab16b0482fb6f804e469225cabcd49f11efea39150f655fd7b21ec1e1435397ee18fc5971f133e50a587748d331a800c7fffc5598d021abc51c633d81865905a7b5e7309edf30328c44b721f41979646f67de334fde61fb3e0cb1c6d659d131a7762f7870e4f159ceb1b15d44ec5c35008b1a02737b2a01cc43371c2bbea353ce0faf86d98220f22cef161df03d345b99b95ac92d1aa7efe1fbada12ae169c152e5b931a4dde4b885bcdda7bf087a42cd7d28f1fe15078cb03d0dc39aeacf4318a7ea5ebaead74d0e303ef2e537d56af6f847f234c855d30e8da3119d2922ba319c101e1f309205ae8656074cd6529d9c3a5d8e318003af5e55067d26d9caac3dc0daf02a23c0c6560ea8357463a968e8b4a38029f0fbf4fbcbd7c3f8d622bd90af33fb35374e8568f371d8891dc511874304c54edffc4c4ac4b4fb2539400264a8f1620af4cf861c9ffb8f31f935ed10e816a2a3f8140f5a4dc1dab39f8f143391b3911f7b331c66433baf4ed8021aa2a7e069d6d573b8b5d250f69469b45ae491b2816b99511a598b8e08c8f59b3a1b7865a86bfca274ce3ddf844944f294db4026f1aeaf59a0b98b0b930278c160854d5d25313bedcda83ef1c861aefec90f0fae6424c84f894e914534d779c46e8b85a2e4584a882715a8efd5a227f14e043b15100647c825595f4d7762e322dc86c091dc06a84b477d4475bdee487b31f290c67e32faba8843c86a81c6a21d100481f2c5ebc00eda00e0f4fb4f465f1a0e1ef6dbf8812e8b8a377a9c9ff904a36aeac0446390f3299eecd53ede88dd54a19c076fd0cdd69914aa64898f7ca8967f6ad39fc8025f1d510c6da70c3253abedade45164705c9d5694aa4e1f511274fc5851035492b3264b8a433cb654e34892034327fa27e58cf023697752f5dcc50c0b52a9464a9fd1ced1810f6137ced5d079d2da977453625a89629aced244e46408b247dfb77df196f06eed927f52cbe27694e355d272446cacd448de358ef792dddebbf1f18dfe90fc4ae689b332b5ca6065a15a0dc904d83dd63b134fa770b2d4245c8ac9f343772534121c890694e1aa7309a4a258c90e4f538ec62e25f1230523f07de1ca6e659cbebf0c228af11fcd34d64b5d72f18054541672d6adc5dca8d0ae098539e3b7042864e9e94924b4e2fc991b683497fa50b3f1fe4ae7625cc69b199999b961950e2d53d0cadd44b2293dc0cd84fcbedd24d6d1010f6eaee3983ee6d47f43d524156462ee33356d8b67c270ca8ae5de7ed7491f9073219c966732526b3997fab5ad96a73af73438a37635ab7dcb5ca579095812ede00285aea65870024e0bdd0b8abad236979932bcf8384a21cc337df867f15103b257564fd7b9b16a71e636dac62867d15ed0db8cdaeffa92ae645e119f1b27ae007239c04097332e489edf293aa91ac208cd6a0f53837b09377570160f0471a985a2fb03177221bb86e9f852d8e6b16c94577e8553315f97499ce6730fdffd5b35e9cdd64b7bae7e3daec8a8359fa7084644abdfa3e24adb5c4222e27b1bd1a77ca3b2b5759725dfe361ef62fbbd49af5d39779190bc0536268c93a0830e8753da574c7ce6643b6a960c655f3f882c9aacccd85f96db4b2db735864b4a06682d2bd30e10f4022dd09fc6fca62dce9854be189656abd2ccd484c5b60020d35c08b0f7e9f07519e6f39c418ee27a04bdd762232ed8129fbfbec4d395b6e57e884b6fcefdb2be4e0e115bd5dc7bff7ed78680b3e2fd1423f482adf4169b98a2f6b36dac2287f55f3af299f75c61313fd4de38af8aac5cb2a799422dc0cb374afde958ea2c142c1fff3254b644fb14854a6b0c3bf1d20dea4c74e50613bab9cb01af733d5375e3f2be9014e03d36e903ef68759484e746640a949f450a285b530cdb2dee1c4b597863813c9759bc242144acded66a8798a5acbf523f0b067c213908baea295f921d90981f29e9b739d6b51c472b2210b640e7f4a488fec1baa47fe50cc53dbe2621704ed5fa6e1c5c17ccc3e0708cdda038eea153acedd0cf91f25d08b76205aa935865412e2a9925a1eb1018926d398a027a7b6a7a474cbe8a39d3b5fb54c4cfefdd93fb7f11e71d29f207f6362e19de0d7a45d5a7ab8205ddd530f19071a63f24940adfe7ce4bf3a6e84c42826da26116c48a2e657b07c143fd8b595ba9ae34f5a31b746fc8a5c588ce794031834b90217226e151e0947e1f022d5f7f7183085b2746723abc2d6e71b383fefda959d55a9faaac53a380d3477a619123bf7442028497814cfe79be3fdd5ec483da57560ceecd25d0548709c7641e9d23c01409dd018da596aa7fe8c37d77f42358c5de966ee07f43fc90fdd4ee084ae15e97557afbe1eb004b7a655e3241a45d447601a24859d97c25b05a47d00cbedc49b1e8bea84b724bd836839ef3ac6d4c63bb2bc4c1dd2f661bdb7869d00e101e3787115d8706009b590bb9d46b5d36348a59af89a0496e75876117171db58589a37c581ecb937d205e67b06d96a2524ef4e1ee9ef32c47cec07993dec97e4093e56649ec44dc894860a1a2ad66e9619df4613645d4ac4d2a9623a93b0971ee709c36f5dc2fc9f2920af1f040418f6ff9bae851f15199a5f4f0ea5752195a415eb89573945d6c28a6e1f9f00fe430f80260350864db2348521057a4c09a9b61440d90208c53ef494e5332b7afe941faa3eaefdbbd241c5ef7243d508278f54b11d0b6180d11e2ac0ed2f00ef19189d5786013b5fe34b70e67f411c9bab57050a66b9375c9b6c6ad851c3c478d97f9cc82aed4fc8d028b12c9e72f22cf611fd7a1f515d713f649431d0cacb371167f75e56a085784540d4e7c2078662188a296114deaf4de1c4bf1bdcdfe9614da0ac3fab204ad9bcfd0033f39c2b35a67b822a0194a3fa8db02551759c6091bd086a5e286c4b59189c0551ae28b4617f5492d868bf4082a05f6a5486c131ea22602eb26219883add836a110e77a732292baa70506d95d5e0a134ac6b9e281af4a3abd45d944439a55968c508c95a98b21284cb8d90d6369c239abaaf321f0c588946e6bfcb5ceba00effc172defa6a00cfc279fe492b76618975676b51315093857eca6395c8d0d0625e4caa29496c32470e41da4e628cd89df42b19dd6a9ef73557efca208c21fae4cd0a5d9cad648e3ad275909e26cff130f6d635c56b96858be9c4231508e0f142cbf0dc87c2231c4a7d043f6735ccd4f05cf6973e08176ebc20d165ee48d08644cb67d87cd081dee8c8a2fdd00b4520066ac9c8defb0a34c393e08b98140dceeb369b28479af0b2f6cbbb5016f5f86f19044b0743bf0b2eaa175829201a060cf98753e9a900b38af43818ee0e55931354a86e73acfba5e29138ef4174425ecf6a5a7d95906d235f07b1399a255dced432922b5d558118bbc050f1670a4f894a3e56d6e6d3d5643f71d92700f83f5ceb33a2267728d6bb22859710c602407b532370ccfbe5e7c56c83e57b66dd64129e0380fcc671a099f1cabcb2cd273327f39fa19f5bc5c57f64de437f600d92127c8907fee7e0cc3bf4a880b7def4d2d8dcb07fe5b6163b8db6f796e479bae56a8f9358a355722be47b5821aa97f60bfe14da0d312eda1a060df2262333eb0bee1ba06a4cdd0b250e614446c1bc4fd2ea871e383d570ed2dc6427a1b16db2d224a1a96547846a0a454bf353d4fec83a84f0948a0a471c4f8f0cfa7c19b869a675792fb57870e53f35488b680b9aee2e1f09bca6697ea6dd4d1678c5c756d8214efbd354082a881ff0603b76cfd8be895df72ad88970e01351ab650354b9180464a6d586abd563fcb883ad7b6ccb76ea3506c816013928b12351abaa530e6b899fd0ca15a71cecbbb9df48ab6370b890c006d0fc7367f4454665e60b75179afed3b57bfd04d92d789a8d1e960dbd9f8aa46caabffdaf8e7cc107a46189787cf9eba3c93ded776c380acfc784527ba6139d8f7ecbbb79ce0756244e4875b3c8dcd4e8e2dde17624ada7b529dacbe925d53429d01d7cdd9fb470a0dbc5dc24e775a19abc2eb66f4b46dec3c5693b0990459063e0360763a08110c6daaee49a7af860df5573269b5bff9b06f603883d8e25b4eaa55f49982cabf73d0762405cf755f8b670d1c64eabee2c45a0ecd53b0e946c8aa7e79956cf8b4b633f4d1456368f2981ceaa29630e4f55333f577f21f313902451416880c0b0f217d075f17c727d0bc0bbe5db29219e85a7bf85737c11f529d676af50dbb2e93b8b3afec74908b6f9945a7c45215a6269c534a42fd86fecf7ee5144667eeb73b269b96755d8f92556fd226e67f5c70228f1fb2cce7eedae2a4b9df27eea08cae68c9c205ecbefe6c75e277573c537b4999f92cda130cef1dc8487a913a50ffce13042332e0fd051864ae2a184837963cbdab1cdc41fb7ceed45715183bc1a2fe3f1185bcbb59a8a71bb3a6fa2f5f16f1ce8b8b0508b782740819790d52382e94fde181c9730fa812534001421b20c6229b4ef29942303dd718bf08cd954f62db88e228871b3627929e6832c2b8445cfbb8edfab34bda54047881820cf8bcab5bec94fe95bd074d8609f1376d11b0d78ebf495768c816c0478df97137ff359f0e97619a93200a36645b03d7a24023a4a5fc90010b3b9854d2d7beae8891a4adf91c5e6587b222760fc27da5ebeb71edb4bbc6fc1d616eb82243c72535d46beb45b33c96c7605b971b112d658b895765e2745bec8f053fb585e3be236547e6a0f8a628fcb0068d85f87d0d922213c4b5d994f6bf7dd1448c9c8afcf3f002d80fce0a3c24cc9c1ca5c8e5d79857bfc2626812a028bdef64c7cb95fcb5ec114e4bdb8b9bd108475af8b07d9619a5d7293addf9c1b9e0327877d78d59167739898dd9ae2fda3f54371447c08aaa4b922d2880824cc42486a915f4ccde17f018cdad2b5325cb7a83cef482217e306e5d4ddd10c884f5f0b34b39bf77a13c92dcc35c627dea6e9779c76ae3086e1d05856a66aedf6e7470ca51a15613de702754ed8e773f49f8d3122526051446278b4e4440eed3c5d972074308e6443720ac146a2e79821aad084a8fd557445af1a04fe7b641fc19f768baa7c3d5bc61ef1f4380b7e41d52ff524c9d6f3890ba888103bfb0e26297eb486adbdc3ced8326683ebc35714963db0b4980f63ef23216cb348b2bb9b47ea7b62b2d23adc90ff3830d09da96fbf3a9df7b0ff6b340b9a0b844be084eb1aae09bf1fed2729d60692e4da3ff857497263b0015a8dde5f9769b8ffe5520ee2adcddb29c1cf6e0715c6b661b6b56e92e308afe21f9ae6b3d2ff2874e1dddc397c1689ff653d3aa036c21d1f16eff06911385c4c07e1c3fa21b2010db43c49b5a5ecf6fefe42e7d083e429b953e50a307f06635005a91be30307c464544c81479af27f81bab0f038c2ea75bc0671a3e94cfa7fbf89968fa1dd84dad717b2248b9a6e23d9a92c609c75a6dded7bc5c46b7105356a6bca591e1f32e916c333c4d4bbe2d4ebefbedcedd0ec3cb2179012a1fc7edd8b682d1ed51380e3755f3ab6026277181789f9dce38feeffda842ccf354d75693a1da4271f7bfc7c995afde6446d6e40e9b1a1fef9f7a71c7b1bb16826aaca5cc8394a1540a29adfe4aa03340d02446adbfb800bcc82962936f27302cc295321ac4d26333fa6224af6b92ab8cb51d56ee6d5e0f7bd0df15b29b992cd7e104b34ed1af59d708637756d4739306122c6a66d6377f45f69ab169aad4599400804e1ecdc983cbf5b8e9ea1fa523068647488f7d2db2181611ae28acfd8458150028cd34b1ac81938a6d1757661498b0531b6307414d6ac275fe5cc6e153d7083f3edeca4a656b7424459bda245ca225c38a5f8516ffca2fdaefa43f26831ef7df4a8fec8af2e0da7a24b95060193ddc97df0099d06aa8c88333cae2c119ca3bd82857263ab769e86f6e3fd1833406c526206443ff724225dc2e992ce0c45956f577ae3a01dae62b7bd642beaeb9b6bdc664ee40fac52bd63949a85cc380fc4dedaa9bc3727b282b322b81a3fedf6311442771314bc3cf04dac210a8f257003e31810ee3fe723fac0b1bc938e126698d8930a896b14413b9f5919b99e72b1460857c33f7abe397329f351b3daa6b5a7a4a2037f7bf363bb0b47bd6ea20a9ed3a5790a86a23dd80d77a31abf25f295d0f0057b532ffab5fe27c25025c6becdabba9ecb0b8f634ea1532ff8ec9b29405890058af676e108f7cfa5986e647340622c55ab783a9eadd0fb063bdca96d6f2e2b5151edfd89716f471d7fcc9ba1775d1f13af793ea814a4e3b504e7db9493ba08dc95a159bc30e75e9eaeb0a0f4297a50b80fe39fe3aad82fd4549d93cec9052a9181f17451d386380f5c1ad9239a2064ccbac163a039c1e75b96c7faac30f076b597512a353fee4c723d962ba4de7aa743bb06a18073cbb0ca261830f12720ca75fa1cf4b0ed4a7e6bed1b975de638d5318f773d1bbb75601ffc2cb9d7a5a2c430ae06400d054bc96e559b9c82e6b1aee6dc1eecc891ada8c01a6ded688fa6e375845a70ee7dc39ac82b7325e0f6594c4c9221d90c6764cb1985822f2ee948cedc9d312391b70234fb7a0bd62efafc463ffbd16b64c6436268f8e9bc37f28dc8be97e433235643296b53bc0fd391c474204d9bbbabfe0ce27d33a129b6f3f8a9f1a49e6d792c71c24588c8f20e52dfb3720b18f537d2409cd2c79e5450716f8f67d746733094045f157d6cb50fbdd78ad3031437c1bd83434592508d176174803b7618e8cd7932da1fa3e6cedf10b0fb1cbedb60515eec9240baa7e23809542e4001f15c91b3fd1ed735f1d72844bb15da9d6a33120100746e32b225ae324ec4ec0d98c5bca729d97348e770a6cc96a3c6023e53f6c2459a858c3295dc8fe4c042fb83c0b1e8729cfae81056b24d7fd212d31a026bf273fe76d47f73c9f9ec8021bbfab950eb48621e50423f3d120d9d7fa05e918e175fa56817a2bf08d58e3bd32412aaf28e94668896920bd91bb4181decddf524aa3452dced36fa9dfcc46141f4a0a6cc046fe6545171716909e3b90572528a1b8af62e4449a401641199a4c22b82c0b94ffbfe1022495c9cdf35ce77b4d0226bb2d248ff2ae05351651bc952e98a0c7b27bc110d389106379158298f72d19b8ff12f562b8350ba4f611fade4a284b53d44c276739031554531ba4f6bb80c76623073588fa2767e23b7db63961c61ef13b088d6a463dec3414f84c58423724af89f39fb24e6d7b04757b5d5e4505baee1b9bac4914508b94dac58d7ef82ae9ff86fb7e939fd6e440766e902eda1edcddd859fcdb01c99c294035cfcbd69d0860dd553bd3e2e0422cd74fc7697dd90ef6c0ab5d129e1c25316f26c216ff681d28d7a1dbed5c969ee753c43535972942b3c6d5305128f1c5962675396c4f6d4898d6b0fe66e1f57290bb180e7c5f7e5df854d67f57b63532a15b66a764c2d0fba3a9c557de86cd23d11fec231ca0c9cf154116930391b8536994e9e3e1aa3bb82164c6adff5469d87faf34a57693dd8f3d73b297fa8f8ce00a498efded36ffa4fe352aee485bc0d332800772288416e369331e4bc1731f26233e9ecd44dd51b539911846c5f8760c0f25233415ecff1be69e46a002843aacf9c981fe91d232379abc44cfce2e43e54967cab6aa950b2064fdbf9ca49e6b64e0956967c9efd733f5106c8ad84af3ddf77c5c63dcece6a7db491f8838a035cf7062d28fd5409bc1c6b3a9c74eb8cc5a4197ab7aec18bc090392d66b6119467c37c3bc607576007596bf48bf4090620c50d2cf942ddcf795bff97475a7bc5872ff9e116a5cec98235031f457a880bfd56a4d3e1dfed29282fe5300815b3ddc4a6026c36f3dec28129c3087e89a54cc9a8039faf69cb432c8a9f61d7366765004525d0c2587c98217a826460969a26237be88e9d400a38089593fba754aec08dc6cfc5362de42781bccc4982aa733f80d8e64a3dc1fadacf7182488fac514c81a5dcb2a5dd31d66bb5569be489e1d842ebb81575a65d2c9f28d36ace40ab70fb648ceecaaa487f336f1286119b6b0c984a124f1ad1cdef14ebd7b32ada76d3d17c0ac38c047c2051936cdb193c20854b90d4616512202a22563d7693b75af28b7eea19157df9f699ab17d5fc5e169b494eb3c2a0fa5eb503588b106156677de330619e6626dc26539d5368d8a1e14bb7597c50b6f0b115220692dd489878ad9b425983e80b38eb8747373e68295168befd27fb12c5186cffdb5f82aeb4542e30183311dceb09ca0e74eba31465794ce692dd6899010895523d4b919982a8543352b848cd74978b1f4ab4be5c300f196723e4cab016a3610205357ba2d45ddc33d6d62ebb17662b0d96c5625d6b74a241bb30b8e5da63675f017e9534ada2178ed84b01d1664ca16133362949de0ff1adf233e02ae2c99eb778ca264990b89ed662b92f3ae0b5707e1002950834c7074edb7f3efbdfe53ffbc4b41ef495c19035a46bd6a58bef3e282fa13bfac4883caa7c1b5d693dde1c2e996fb5f33650b473e567d657200ee7878ad13a1f5c3bba762601d602264ddc6a2b9a8d1ef7e39dba555364329ed30177385acc75a504b23502d0bd97e7803c78b32b98e69fc9f3b85750aa3c6e6f41af296427ff11fee59f2c106bb908f0102f8148af826d673bbae5a527fbe463bed22dd7ce405ace078a1fbdbe5453561eb2fd3a61dba0d4ee7f07e1c3b15c32d0b24c5218c4049d0c7d4449145f077a85e13ee192f6301d7b7c7bdbdde5f5195b403146adc4b53d6d5a38523adfeaec4f7d2bcb622bba2bf0bf3d1bb28fda11b1c5f16391721a4fbc1c6a277ea7b1ec0dd4c345db6a6df6c36a4c85126354ab7edd78f1aa6c496a1f8183d1b6cf368020db4782f2ed2669cb5332767a4ae8baf18df83a7a93b559bbe336459be7e25b91342c6322febcf50b95fd04d6ec4cc00a12cd9032a8846facb962ea79f2cc8fdaaed18bdedf1286dbfd504acce4f3e32c775ab88a6375883777d0fd255e37b07e3d0aac10e50346d37cc39c3fed074ec869e2c83a7882538df8ca88eacf2191815f23acef0abd9809bd1b262c1b767c963315339b7a22690de786aeae45233f3c7ca503b0a37a9be61bf4078f0b157b24391efb0c7255ffb4a9935b530d172998a1893660e24d427b216e0633555696ec091fcc2288484804ffa3841a31d6d52a5759845b9a24bc0fd6093d0794a98ce76a2b728fea4cbdb6b3767a60c3fb4b5e73d80ffdc462cdfc6ca30c7fa28cf1209dd340f5e47708936f4c7f11f332e1a24808622602b7084569093c4e35bee3fb7b5507167293aded0d5a9e2728b8d6fcc4e853349120832ca821e01b89610cf52163621e202f0a41067956ba62f5448c83e4f2bfc46e4b01f57cd244087ad2e49390dfacfc6b79348cf8b95d66409656361862149fba02e046730128e46fec8b016843f2e2adfcd788acc99a8ee944fc2614dd1b3b8b9660e9078d52a500e12d9d8641f13fb37a5767a82c2fce632da72baab7a190cd1925bb83edc91018000c5635e3f86507b7b2df518c7b0234a316ad326f6f44b109ecfc6a4f6f49adc8bb32d2c6242e462b699a6df949c4a9c42453db1cf68296110d8f7001a3e385b9672a1a9776cadeabe9656b2c607bf215bb0a7d539afb880b5b7d40adbfd5dd5915f3fdb4377cc3f5bd9aaa6fc02cfa1b548dd32f06c721677d93d9eba32b8f174b07a9d3ea5a1b5e234e8ffbbf27d51edee5228d4a2fc8e17ac2d2db1438b6b1b6fca2c4bd1931cfc6d4bf6a3a83fbe5b2079d0bfc31b86d9052de426028f868826d5c4707db018a088e00e4aa9fee53de97050cd0399e886aa8dbadbba91ce06133e57eacd36fe093c04419727d8f98a8de445c3d5af19b86a4088aad2e01da0dd9a0debed76a1a655b722621802f2e47c2bf620537b51475f480e9ac20e69bca1c321eed9d8498a02d73b3d3dbc04d81279b57dd30ff194f9f7e834a7b3fa0e9ea3abf3cfaacd566ff835190f94e35919f5e9e8eeb8b8ba122ed08e35b5d09b6dd487080185ddb40a98e09ce73e97e96c102a5b3ce8ff158b32fdb7a7c3dbbb596c241ab748c1f6e3520e6111e23a8ac98cfb06e62fcd094aba78f76bf9ba31312ec67bab3502a460cb142fd9d6aafb121bea4f9377fdd21fc63c8cd875c9464cbdc0310335eabfcaaad3271531a377f30607d5bc41bfdd362aad21e94b31e2de6acce577b23856595bc661d611b0a41fffcb810cef9308102ac20b326a49ee3ab4ce2f466fb7d1099caf8a57256c327b33aac64dec8a1431f5826efa06be7197f096d4c26095e2345de70dedf5180d0b371d71e651d1e58a0b51c3590bbd218b102f45f50d52c6b1a577c7b3c1e2f3f550ba2ce566c81c8553c1984e63917cd76b8defa4b6b12a915022ddc10e249f747cccb462aa1a4e7c4148361cffa54bd4b98e42c65ea84fe1d91cd9c3a8dc9af80fa23ceaa9b842eee2f08483a9260ecee3937402b1308ccfda259a8da9a12ab17146d62062952b330f26573a4261329305cf6ef429e5bbb8ae6026072a7299af514b9f7a07f63e3fe7fe5f8d06a8d486a7415bbc115a54e5ce0778af4c56fd53456c43946aa5345816d9902d647d661b9cc10151cf17ab1fc56087a5963c97b97f81402d341f8d9fb159efabb3472949ce266054fbdb489f5e964b257ac9a4cd37d1c7f504c1194fdd87a24ba0b9a67e737070097fcefa3bb0fd001d1077f4928321666371542c26b02a5dab52cd57ec19db4533ad2efa005e1773de670d2b177f1399418b349ba2bab1e7a676e26afb60b9b7d93dfb4f779d7ada57e8984ab5fc27eedce1a24d7e42678fb167f835d5c165412ba6f477011003bf7a6a0abb7579c2fdd2b304f0206a70800a965604b513f3290d43fd35d6d73fb94e720d788099433889a9b78f87a9278be28cd41d8fbfd7ff74945e4021d9273343bc7b70afadafd08d9acbaae4368637374590976b4fc37c71e835ba394a098baae78d7b9b739fd61258c17f9b959789262aac95ec26df0f515d621ef5c972d028960424761eb61d6d925f7ed9604974953c8a68b3e2912317a4930450a3a7db431ffad048d4d96ddd572ba304ff67c1587b5b9954f10d2934f42b3f49d529d161611fb92000cc54fe90a0226f2d594c9518ff903e03e6bedae110d94d38a16f27215530a2b2560e96474761aed09391a068b60f24d455561e6da7462ecc29e84259c3dbbee01469ff3ffc83c71034e98fef9fc23dbbae49d21719842dd39005b6f75298a4db4314bcdd1e0603599eeca6a83b4f91a5cb9e7d272d31213a5e114faa39f094e623b262a9c2914275613a84c63a08b7445dc4bca27bd485544f8d1d7e58f6dd7b813dec6a0014f4c562d655689458ecb78a16a0cb0bc21ea6a41c4b66ea26514eb620afd552f2d265e27c5eb247071ca5b834b22c8822ac2d00bc14556f891f54daaa0afa0c09317f4135d9435e40e81d6f1cafa25caf085719d1d1ee306d2b9642fa281cc58f9e24b190e604d90e62e1f962f74f92d23b45ae3aadc10bb9c2fd68e7e46377ab167aa22816a289772573206ab280259f6427ceb4200dcba9fa9fbf7a3eff2f8e5f23a3fd4958cb7118d8ad207f39242db7df147f070c1603db75cb4a5cb8072880726188df5529272bb656adb3671295b4dadf3acdaf922f68d0662a6d6f64dadee8f05064eb86960ac6e66f763bd0b8e3961812bee30f14529d24cfb8668acb948e8d85cbb81d17d0b66e9b03876aa6cdf0922e7cde843c1d08dc0a7c269eb4e672c8cfa789f2c49871dce919ba5187a80553b309a38538f95bfb832f77499737cb6dfb478917b19effa5d194c45207c8434bd5b36fc9718897e28117a304fa85eff6f83762ddaaad9909259bc9bc1cbaf667236bbda0d94f158ed219db50b490bc28c05b0753f508198909333ef1a9ca76655650c5a1a92661b37d59e0d4e664d2db9d6fc8d10cf9d21b6eaecca1ae133721b205091602d0416e310d7a434e7982bab6f3d554aa21f31b426ee9506f1b757c5ec4c50cbcd61e159fc89825a4eeac68f1ee866e9e2bb7a76f49bb31386f9427f16b79d097aae9d95431fb6ca3ac783cb3770c982f89739d010bea957362a663582783ce2ddbbe6163edcdd49d63eb718ba6de8f2ae750a736a1f2eaceb59fd6dfe07cd17c08b0edca394a1c3c6087bc66789ada03d185fb532debd0559bcd680b43830b400da9a38df1eed9eab169c3f1cb7ae6d5cbab2d60025bec732d54b663a7445e06d1005900091c96c57f82595a3203c42048bdd5785d71df185a8558532bb13b538a6840364c4f8d960b5663d6a2fb358ff0e7e4c9752a7169fb6b7f1afe28cf0eb06ca269f6aa733ca7d15a74d190fef34de1871e5bff6944094852395d78f2c9ebe4d53a4d26d771e1550f43f3777d0e7e5ac9250946a42da6615934a9e24b61a1d5943091252e85e076d1b9734d336f9fdbc6ca1dd84b0a94a0c37a90eb6d9cddaa5a156e49e4e34ee415ed9c00ceef7c7f921c31015d1db6d567dc01103fd5d6c4b01f5b93cb9f0388824ee10015b98268ad2f7d67448f9b00e505cc695cf994fa8c2d3e0d3039f5bfad75c5fa3c5c85745eedbb35eb1cabc71028e633f4227461a1a4f264f548fe40654b5c46f1c545e5bb914549ec6384d389994c01bfff57ce17adae46d52328f6759f65d7cfea1fc88471cf2b385fa9c80ee1633e294a52774fd4edc725b5dac8c3e6de8c6ed3b612a8f34ad124e11dcf66ad517dde463970e5d81cb17091af688ab00b93d5080e6fd13c7468e676febb23bf134dcc0781d3d69edea324de6ca70cb62e182aeaeac15d04b616874d603730ad26f3c1b2e525a7b5a9e67b794536259dd4af75d850955b6ade29b5eaff47233bd3b4af0ff7ca06386a81971e3616946af2d4358d75393e12cc414e5224ae1517bf073d9e0903af638d29a8d9d6b1596b15a28da77b5aa616373da4395409f07e882c15a9ee0225dea02de3b2c4b7cae95339871989b7d7b1bacc7b90d6d0bf50a68ca6ee4bb475d1f5fb866b95e8bacce65f4263c7f860c02cf84a5872e5f735803891c68a2d071d8c1d9d379ed6b9dce2cc1d2eebb3b819ae73703500f6a2a73890cbe9fa1e4e6453512fe3a36f6a199fe70fae499755b287693ae0e0fe0b73974791249dd861b45fc8a9af9d3cc397a9cfda982db6a0139bd56f96b74ef279399dc9c20e6fa0b5f83e5224fdd5d11a0b7178235f4e4ac999714abadd01c1bc39eddd230a496b935cc029dbf214827792de7146c5297509f5367a5a8cf40a76169ae3d97e84777dbf890ef52e3d798b459486e7bdb982be57c8dfda56c8582ffbbe107686f745d0321c0ff4e31e2a483228fb72441f423db72ff5f5df288477f8da68e75ae59d53753ed36974b3647422a98f13438ad80d28bde942e712b33ef07963fceb41fbc160ce6e30707a19935c0bca3f575fc3db48daed2e18485b5a667bf15deb6e887b0198ef344f6b9bb6e8587898b991281deb6672dfbd1a3f3804c77a88df2ba375c2fceb8ef9d8c3e33eeae98117c2a344f4e1b54e295233a285aefa14ca1006192e0c4cc334addfbec456fbaaafda7ae3105da50ed62e46665e221e85bb79f04dd3a324aef749eef93709c0cca410883e807853b9920c32e02e8813aee8344e972de0d532a841a6bb62e511893c120854c14a0d1e25419f3a8d0619d900f705c8f8c4b9ab58f791041a28cb4591cbe24d1902b82c295b08e998fd3b21649079c6bcbdf986d0ce91c0a3844a2f426aa453bf6c1e3f1b4c4261669949a2fc81bb769a1545f255a05a171d2e12c5bfefdcfc468c6fa5a8ab2522eb607d1449904f005b86220c00f02ce0b7dba0ecd8cf2d8963ef66cd148885ddc974d29eb7d3695c9eec50aa51af0137ee39ed4fa19dbd4a76a8bed640416f4a8711e5e8b10801e0814e6b3fc60bc4b46324517cd6e0c13f03c5d471b0a7a3a4adceefa35318701ad40902c1d12553cdfeeec44a50dd71e52c3376cc62697beead7451a8d53c6f222e82f3028637775fa25e8c18eb2d21d5bc62fbb11fbf1d6be3fe6a8fb735331adb57dc26eafe0adc8772e6e0457ab6e9d8b71856a901385c7e9b0208bb8c81fbadb4dca9679c2aa62ff44979e8fbe1d38b0f0618c35959fc04b4575024dd30ac959ead1069f21e2daebdc09e45d6b1e7572362687c70352de3fd01e71b096a13dcbbb21f455617d0df5fb15651a5ed7cd9ad1359b059eef6b60f006d079db148d254782d41d0c4ec056938be50d2695b6c9a102a6ef31cb1e54c633cfa196059e5917437adba7b058a5537c2b589fbc09d18f53df41d0550e471a74d92bd3652210f370cce93b79066e5f9ebb5a954ba522035628131382d1a5bb3ecce265d78a31777d7344316494c4e96c0c8da68c04868da855ca57163b82f23437a9c984a9a64f0d0ff8a7524ad8039f58ae072eb2018eed429d44ef2d6ea0d12597a98bd96064fdd439d26d8c1534dae6ec4e93c58eb46cf5cbbef6ba7453b61cf9c9aafa261b323241db54b2eb1cb8c541714f778ee404f961fbd693a45e917c9e43d2168bc16d19fd9b53e11016aa4b362c8d0b2d880cc65fb28fd80d39b87ebfd57caf182035777fded175d581ee955818dec4621d9f63a1188cef6d898c2412479a21adae52c456e8369db531f63fed7ff87062694b5763cd9656494d191fa0b18cb375d659609b69a04c98278d30827e8a7ca78ac861d712ef8cd82e12c4815d30ac12475e772d04cc93e11ff9f7ea1ed03ac9f4388808bfdf1c285ffdf09b54f22a141da0112dd73e10a810682e8090497f9bb1e0688709517dfdcd230d6666c48afabc759cc7ce7693189b76533b4475efcca9429c5da43d13415cf91661c327aad6bb44b60e84b763c09c2ed85fcc1ce698dd6b139dd99f148ad03674da43b2914ed5f213d3cc9e42b4a2cc3b58a060c751e8a53ebcb630b484bb2ce9d1ef2c9c50cb2a302d2ea6a5e45b47d1fa3e9ea807851ad1c3a6a3ddd8e38ed47b805330fb7a2d8991f28ce81edebbe95531962fe4f3875b6ab27e91c23a8184178b5679aec03750d827f00f9fadda57fdaaaf37ded5e4dfeb1fba00b91d42a72d266f1d8a56245d542572319e5af1d994af6c0b3e9e7dfc347ef874b4b2b1d1bf1397fbaf3236534b7ddb86a93205995e540dbb9b8d86fd418ea1cce32816d0a4ff273a1b893877894f2fe015a7ede014fc2cba59a1c79309639ce64f1312101b5f1aa9dd630f8e24ffdd6b7f87ff9175f3aacc32d47f9ced795a0abe2f95dcda790fed8c8f925c6b37447ca7e33c8da2b05103eb346cc222e9b8700e98f4740809c77d6a34c854391e80b0768b1ab6687a1e806befc66d3d17dd78350588ea9795e7cd4b0fc76213d64235c7d0d918308f2dfbca8cd1ff5b7835859e14976d83c1df516ed747615384a8581f1de7a4b73df8a209b4dba54e97bd119fcb97b30f5ffc6bb604e6634f1c6321f6ce71991a89849383399db1148bc312dcbf2cb73bae2fa3d321b7b00faf5a26db016fc02428587baff8e25335fc785c893fdf44811e7098bc3a2ce47b7257155bc44dcf0631f3ea7a008ed99e09ffa672b5c5ad16a316d3b88d7644f36af43648c01ac105bb4f161e2ec8749eec108733782cc8798b606eced5042ef8c0e4ee09ddb9456174b8c591e9ebb3f82f95d8def14a1d9040f744b61f883702326b2a97aabe9e28e068cb2e60b690a07bc1aecb4ba7ea693ed8bdfb02cb7191f5f6172aaa46896cbda594db3212108fa7c797e91b2dc7a835d6f993f47b8b74f5ead4000cc45e4c6c2daff83a32bf0d0eb83163fb7c543f4ee2b79ef0f7ed169d3d1fdeaefa341358632292a029708deac5f433357b58c0f831ed284b7c46864b5d3e23c42b4f7c6b612ef2c6ed8d65ece1f268701c26aedc80be5e211074524b4ef3e870547ddcb4b7cbfe17316de45f0ee622e40d6712c6b6f0c5f7a182cc645a037e03b2a3071154413c62dd20336e3ad3ed3ef8e579103e955d04b9dfac82b740732e24c40d0de1f0c16dd14c83c6f74c47c19723f5e17b6a0efd9cedb07059338ffc9431f8b686c67da42030e74b04ecede5da7df9f5c151acbc93a0622859bdfb382830d731a5ffdeba5b2eafee687ec9a1368bd156357dd507fb842c3c062a6127dcb723a201a2bc2ac908881128616071ee920e1acb587e64d5757aa52390c16e7411e7320797d5459673fda90057d8a6306ec6bf97968e2fe82c600fba1d6619e5ada8fc9af8cc0d1b866694f2d32747156633682d21b7d4668d38f09b22da25831943225be8b9ad8df7aa3f2bd6cc5b45e78275938dffab634cdb5511689ca316161dd977cd2afa61719628b3222dec5b9f38e01e6b210cfc4b0a830bbfa5bf253b262527c5e793e42f827bb13ab4bc0647d0721f2cd5476e0b1f966bce785e3d46f352e388c59701602e71fc681a32dc070cbceaacbb9c8eff0c1233327819872751edbb86f5dffe208dd18517103205cd7344b3e7b3551165f9b78a6f1105d2be6217393796d630e8e223fe9aee68b3366843b1d3b57e489fac8acd2bb91656041acc63c52a12ea29ac0585d76457640521450bac9d570507bab0479d43950659e9dc6f42dad4b9a99cf3cb257b296543f8d45c07891ec6f2e19a758fd9f3c3f534851242f29da021196836987c9d98068e17cd788e75b722008b954fd89533e73ff92e65a74dd949f77f46336583c12af94146c45e15548cef98fefa8c3efda2a82e161937bb4bb8f7d2ee41a4ebb0531c9f52c5fc93f104b45957431403ee2e305f4980f6984b74b527cd1e132d62816ed81bd5543ce7bbfdda3aff2e37b3a17a595d2ce820379926ed0ac3f32364309d731733f6f2b8a3451a684b80cbe621c9a5588f5cc3e288907c7d93a2f7bbeada493e1ae8932e373dd498a4596c96fab939658f4cb49f3977e2f3255189f5f7d55849ffe75a730cf174839e68c3da6a911e66cfcac75053f8231cee9d8368312afd6ed18b894b024075ecb2151caaf9969eb89f7d063e910de87850ad7583f0ccaea95fda1840b4bfc0e992145fc4721e99fbe7258c21bb8c389bf6b8082202f2756512288d8411fcd747242efa58ffd9b91b84412f92ae8ae3a712df0039a9c8ead4cfe22f2cf58b1dc63e7b52e0163beeebd8790812b0fd0afd70653d87ac13009ab54300d23b7d6369fd7b62151f1f381044957cc2b8ee87192bc162caeef85584af27ca30bfb3c330dfaeecdf58c8560419fab15415214bfd39e006dacfb7887f118b7c5e4e8523d9af26bbd43b3a6edeb4e0d3a6138cd04db2dacfcc481ed793be436ebdc688a1b456b635f7298682578366caba555bd1253e3a10ae31b26f19eb20ba94130883c8d7cc3d74a821131c957aa97153d84d4203ee404f621718f1387196c614bc5085827bfe7a9a4a16d77a42829152868aa69b8e166510aafd6b5c8db836bd8368dc0ba22c461fee2ef684c0021cb50e8bbcbdfd37824d701c20eadb4826227d7dd7206c40c1670421eda4556f7b2c05bef0807f07cbb445923832bab820744ed0deda8ddb89b9011d4933d62ffcbc1657e8c4645b76eba08b94c82281f278650ff49b8072352de83cc9b1bf07c184e3f71131d09fb16ce35ddf8efc65d755744f190c722f374e50d06a8542564fd7eb7b8e3e33bf6da8b3915baee530e100c5095b9326ec7328f098c141354861998c2546ee330b55aac59a90252f316aa74a03de979f22079f3812d2792ae9fc68502530436cad01e31e4f84a73863d6df467761f3462ac95c530d593f9522441cd46ff514b71b70a4d42295ec3a3e87ff57fb55e7ae8507aa8e9ea718b0fe200efcc014478a87cf29a8048b51e15264bed8d00fc606e8b406fc0261bc082b4d1d3500fbfefa499ae7f6a6e796ae4dc8bf7e9284230bfe3aa0f19383bc844fd52d67a102c2ea09a8da8ffc24f1fd91c32e3a21261f2b0ed4f6460528cea83af1949fa489492989a246e33befcbbf95675044309cb00126bfe8cfd8208616e64daa06eff627944a171df6cd095f85f9fdb285e5f66fa2cf6cc7d2f55928baf546ac52c06151768aa1f405f35797a6c0654e5dfb07b666f6c3ce804a8127a936966cacf61565d9dfd4f42e33d74ec26a0180d32db922fdbd5bbefcf93353401a3193924f23a9efe044debf1f576a7aec81a567acd47e3f2614bb240a93b99bdb4121605191fe28e6d6e696d752021d4215702742b604a12be1ed76da6033a4cfd3e73af3ae827b2c6ab6de6e8004f4d4649c8c71eb2110958451b17dac536032e252c3864a1b63e98e30f0c331e31b019ad0f7ce56298e5b861dec793233b83d613e3ee7b8913c5906df6e31d57cf89cf420d3e17a134530e5c35e7a69789c5c26dbff2f25f90b155dcdd3e6fbcfc35aeae50bd28c352aa47465a1f45a16bad59bfcb0303f9bc7cc0464da2c656dc7e1efa395e815057cb5191f583f51c4bc0e58c2d95a147a81b87429d1a096d28d40c57cad548522a5ce4f488142405109633bd60afa3368dde69cc52c2c66a35638acfec46b1dec92b46aa671d7f30e55019bdfe445b3ea1f29634674fa24f6f0a08d7113b18d2bf14f30d9459c3226008f2edd4a15e4afa3b4e0965e49675f16893be13a672202a9a37db39814c3ffd43345526efe7ada31ce5b504df60dae1f4e19f40319a3c3224c781b4a59675b702eb18a8bbb2fc0342dd0ab33c7ba29a355a97dea8b6791b4f4e8fbf459fa3970769a8deed9d65b3e39b1391cd84e82471bd11ebad2ac662221531d766bbdc6be84cac69da5a87fe913e5a1947e0c3196326099d8bf46ad295f68e72f66fdd5dca48641152a2ac2a5b15ee558c3d80502a16b2feac841db1c4ebdc89f6a844083f7b0c07cb107701c780bf383de4572dc8c3e7bdab631c98f67511b29c400769c488b0d9cbf0d419dea0541292db39b552d32790a46b52fde6c366e7b3bc003bfef591138ef4cffd85dfa1652c7db44acbefb8265dbb2f3307d39591a986bfdb05d073ac313624d27a11ed880668446670d918e0a3e96b80d0aed74bb827edb74cc8c64d3445de25908ec14eb2cd116948e61fd2853a16d04796d4ee7fa2ad209253e43b324f7fc250b4e95aaafa59ac8bbc29d743d4dcda8b43e28c6461005aafa58027d99c2cf446832692ab88c30810523487a3bf3e1419464a88ea49d5a30e2e8607593f1ea889b83080a960918e55e41faf7e0db92a65436e74589c4bfa07cf9c262322fc6585eed465b7b8d3b8879c80966c7c0287141e40b1ca822101f9e64f60b1555ce85421fccbf91ae7dc28a7ebcefaf1239e08782245c0893a2758569b1eb49aac99aaf699e6f3bb0923327403475894c0e577c5fe19ecbd19658419ae000dbfa281d752fc48175f83273364f090c8fa0a50e4ff364d79fe3391fed49c999a06194099965a7cfe65823915f4edbfcc779e8d8380378cc61da760ba0a207b9aaddfaf947f9aa9cc3fca145da51f8b2a800bbe2de2005f6075f8deb4bbfe97ce170025acc46120cfbb9cba6f10ad797af846494981cfbf23874121011b16309ea6f010ba7c5322de5e3a5af16a76251cfdd386ac51bfb323e591d3a8af44d88bf266e46d5f02aa721bfa3eb5b8430b3093694cfeb1b65b19e758430f3679b0afcdc8bea6b240be0a28aca952c5bec0491e3e1c60a4f216bbcf7b3ac390078dd448ed552027e439e8c4f1f81a1cb1e51df8d966b2e249e9e3ca9dcd7cb174d72aa36528ec2b27a53a3fd23ad737735ae8d6ff78f42ca5442385239e40d0907861ea8944b112c81edd0b8591580b0ea68a38d4788b189ac69cfe0fa522050b417f1abce5edde56ba8a0e352029c0be2ffc15dd63303aa6775db53ce743338d5e933076487497991f189b3231b182342848357c77101a6d7413954f7837b6d61906b0eabfdf3076f549c92420fbc2d17e9f959f9223505e3e0fee351b7e732185c23b8269eb4aee61bc4d834d5f2f2f20f9f2d347aeade3fa88cca29ee2ccc1499079b29ff373914b42f1571d4a89227a6a810cbc5e20a7ebdc450050129b2235e08a7a5db1f74ff6fbc2d7872b67c2f97608ffbb47be4ffe946c491308c5327a4c6ce1be646e86ee79a3e3fc3f9718132e8ff76dd70380d555b0f1a51eeb404fb0ad86e4449d0cf56857939ab063ba22c4313f51be0b20f0e1dc73d761e01d624b28a8fdfb66cb334ac898308606674068a92cad529e253760629b117b2cdbfc502308b7ed8bee9021308949486c308fef0cc96de9ae0c189610504a6eae298c2bbc31a156c2a9ad01d0b216331d664baa2c9448567803a2e577aa349b27606532f3eddf699f35142e4af60412b99cf0bb952ed40b603c5a7e1b2354eb6983202556f32157658aaca2474ac84faba71b7ce9f9601f67a75ae3a38152eabfdf25a6974d59a630dfc42764ba3927576c6957dbba9a0c5017f5e690f5c56c86caafe504080368eda5a4867f5f4d4318e4232e3f156419815cac0328aa6c7995e3dc8c6fc0f6088b3b0f6c8509ae4bde1c0a647cd60b2ed618dd157c0ac228522a8dd01dc1419779ee79981a3d04a18a124dcb35536acbcee182bc81b8c66868bae1d037d8952198e7cd6a28007e2125b59e92509a7a57c404c88b8fa0fdcd23fd265ea25d4add6df241d9382d2850e625e5a750574b5aa5dfc779d49f1e68617d6dbb5751607c5726d4f7d05751731e22f0c96d1b71fcb45885042fc8543bd4526fd3ec56092fd25ebfa81fd4a2ee71b19b286ea431cdd52e6fa3ee74da2785c172df39fa624e1648fdbfe7442d3d70d83490d23306a3b6fd6eb778e548da99359bfb8787664bfbf53f4a88f09cc444196774b8103fc9a6e3ffc855b978aa34ff07f3bbf2350b668254665f7100c1451de9bcb945cb2f9402b6f0fc37c132d8b3505275d48de662a145136de6707e295b149a3a52663ca5a4076bd24068a2244333f6179c3b8c20d6c5529e5537d0c37af3df916c4a5d3299573bb5630452314b8cc9c5b519310d5711bdc2a7834143d852e4274f84c8f9826f8969e1a937b227804b28dd942215bb21078d7e01753f28975dc0233853c8c1b92a7f9f69ff672c01a1b52d6f2b88f89b7aa8586d53b7d4a026d7c56731b92ddecfd4f531af05196881827abf9651c65b66dff34eebd05999b8494caa3ea26ec992f7ddc9b314f05932d7c9d33ac31dbc666ff338eaae9d8be18f7e344ba25cc2544b08fca1f0ac998b7c346ebc63a39ac6b028597c5f5a0ddbe240ef427820f84cbee6990fc8a8da0996609bf3107fc2d788aa4262cdd19f9a1638a7acae9c81ae7f79f9710d281958fe6337e065ecfb0ac97b4279bb18e7faa3efc35e4d1d4a2c54d202e20129fbdb7ce5e250166d9c6a61624ca66577e754b5404dcf89c3fb2378d43df85502c598952a1752d2fdcd7cff151d48e263031a7668e96092ed7c261ee947fca3a2be3ec7c8b35ce1a030970056b7739910676b1171fe010fd072e4630e78c71176f3571b7abfd13084a3a88a461017f92d6b66f3f01fc23996aac77b54912ee5bb3871847fcd5c8b003372d6b21f965d3d9b8761ce1fd440630b405554d975ec2ac63d03d0aa231b8e013cf2b4b2525973f6788b09141db19b26e087d42bb74c4e083ab24f0802162bc1782cfc7d18d36822b7864c07eeffd5023241a5c25acd27bda80995c1c2814476b3aeb3b304696ca42487742e6f3c48ef740e453ccbc5cf6eef660d7e327101cee4881ec9081255482b753360467cfa2edcf653533fc25cce563029bc6a5a7381e4e977e1c0becd7ec751fa5ecc51aa38597d8eeffb025f45256065260269eb1640eb6b405e511c79e5aed3a9b0fb4c8bc216f9f46739bc5915c53fe9d6f6bb0affea9ca80094a2009ef5e1cba8886b23016cb133132a259db2820dec047a4241e71e492e782490d179d0e2867381ceb2b13ac0500f5a86648f1082daa825d727ded5028c180c12825ae933cca778beeb3bd8c222464b834bbfb9a066c85d3c91712bc011f16ff3171a6da535ee5fa65786d6a6c0e3cc1942fae2836506f222e1d30a9f4f4940532ab6ca383cfc3b97e5be976e78a244e7584c5b824d612fbf87cbddc9ab5d007fee5b41a8b76c9ca06b0b70266e26e73b48cb7eb8273f73529d21c6694eab5f3de9c05fa7273503a5479fbbb8db1d09cc1ed0cc5b38b81a22f62dd0d0f7989cc1e78b79ad351695deedea7c0493e9f29ae4a558792ee015c9c0855f9de9a61ed0cf84a03fa51748408efb16de9b5b5a7544c5bd57952f52f91b64f45e6034e868bb0bb3f933b63752a19c95b0c6ec71e180cca992109ab2addc23a5f37b27f6507462ba715c7c65f1211fe4e1e5b29cf9cdd368a96dba43e7e944ca4a1b5e736f995c45b41ff81ff299ecff08fe0ac8091c0fd9f0764ffcd535aca3464d214beaf9d94ac995c1b42179f7bbffcc68bca21b19f3d76604e74aead265ccf45c94722a387cf4bd6a98dd9f9ec5a53f46874d3f996cbecfc1e6d3ab42d085bfa5e8758e940783b72a2136fcf41836e6e6b8b792ce342cbc4a7e864a5a9e2de505a86798dd7d2d9af69e9599f8f9977d853402ca70c8be3fd06af013c20ae9052edd93589aa40987156aadc55012d93e4b52310e403b4230f2ace21c82beb39796f9f708befb3ce91814b65b58536856a9a847fd3ad5a006e03b6bd2b6e8785042ea9351f4f116eb77897b1be564ab32b8d1a5c46fe02defc3e96112aed99ccfb870f7fffc3030ca732965e1284fdd41910f54070bd0cb2fd11db81ad13a6d2c88eb9fd64c71ff0cc5431718644bf40d887716dee71753a5a63ba97308cedb6d9ee5da58b23f40093caab639c823c7a884aca355175c4902a8d0af86fb4cac192d4a290d39307214c714918e628a6636372689f71dbaa6ec4329c6eecb50f3cce792b7b928466e5a857ada96b8687e52269d84356071d4771d88882b994095ca6bd43d7e7c708596d6d5683b7d946d9b46cc79403e0a9dcbb0861966150b36081f8fca7fc8c606f00dde9e7b66e61867e8cb60c06ceedd093611bd21240a8e87bab4cd8b1f273686117671b7b9dc04fa0f084a67eb4bf7c2d215e9f58b707ba43c47aac18cd27e585661b52cddcc384e6d5f37aef90d99c446e7affb334ba7aa9be12d02d5472224586d01bb3019c43e03d804bd22182902e8d7e6c041bf246631fd6db9f5304a0f44c170234bc6f9b1e992eb62054a23b99e997ea772c4d8536e07b7d03459171b55242c2211cdecb83de5536a5484c88e5cdfbf87e347f360633d945c6f7033ea04ed2947ce3f2a14aef67e6de7856180f5f8dceb68a51e840fcbdcbc08360f2d8d1efff2aa4725d9f3dca9d3acfe2ecd7dee6b336fd07eff478600899d90178fb0cb47e6e0af389adea36317bac630709bb5f95ee968a0b648ad81db633e2479e37f62a87070e7efe156a595401e87684f9335ea7ef75ad2a79317f119e4490c1225f27bd5c5aa64bba84dd17298dff8864695e7ceb3f10043fd0ebe88884e6ed214c64ac445d6d8a51c185156c26e27b405660a6c88ce46738dd03575e75ca9f99195219302b001e4f82fb49e7f74ce1a9fdfc0b8d12c0515b13b6e69c8dc8bfd88b2e4093f845bfe00fcbfa53762224aa9596f725885d774391df4e88ea15d05c62bc4216adc05cb811567978dee0671c0e2b4f02120f78f63be705e9e8020c31a179d4fbcb6f8de7e89b4e14bfaf6a251d4931da88c0ff7565df4895a7019b31dbf1acaf76d62e605bd7693ab33e656eaa34fb72b778073cdf26931c41c02e92224c58275477c91b8fac1fc78fed475b4879abcd3a0d4f6aba2b8a4813d87e22fddd73f75d0fdeb21d799882bb4c8462e96b61f31a6c4a9cd556d22ca9084b5aed20e2e9596cfa4baf8197a055df0c7f26d33ba2560734de08b2dccb79a7a96a26b82135c3389b0c643d13b052760805a707fe59621d3f500d28f4d008abde3cda3d6ca5d5eed30002a2afaf27559ee01c69e6157fae90a55e5da8ecdc83e16ca32f81956ed1d8751be39377b8b5920311a308a1bc8ba65dce4286b77b20391e100f500e049669d66a1f31520038200a5d2b52b343dbb25b42e75fb85248a54492bb8c0eeb237028a92ace3059b62d2fdc6de090e5e8c07e2b34a2867dd3832bd02da27e69391ec6aa81b8105a62fb8e72a6ee9b3384c90f015540dfd24f470d1fa4f7529911371341b11757ea62d4f121fd42b8387e53a80e77d88bff429026de97dca76eda951798ed76a3545c1e94fae3e6c40c3663219e24bf8a6f1ec102974ba7b059df6c392a32d5c2a8d44712c99b1aff1496c6c1028d4f6d98c3e3f568370659465df487c6b4b2f8f0a69a01bde6d2c76c8bb5fe7659945846a74c2201068738ea86b12c343da8aa30e1f439dcddcca6ba71dc9ed8726688c05c5a7db7453b0f87b7a4139c95dddf7c19fc366d21acd754ea930759ae987cba92d20762a7251ebb6967857b974c1dd3e9148ba9454a512a86f59b793a4d01a704af748f78ce5f808a9504ebe4a75dd65b081581c0ce7255d503fe802b8ffbce48df2391b30bb1a20017a2fe2b2b0ca3226de62299c47cb14a9d4d57298a57e331ef1d7d70c91e24d5d233123f749dafb69558c99c86feb81f8c53a15d3907a9755f1b11c5862972b1520cfc6f7e853dec765720b25c36a2d306d50788c57254e6938cac9318576491062de7194bcec2a966c71e7555ac54bfc0263632c5b85e86eb705aab66f361cda7254156ef4ad4d1636681f9f9a920cde66c9f117197680907381a7a738de85f2343186eb36938402fe1ff30ab06b150dc9624b16e4db90fce61c07868856c2339bea6da16a37e1b383936309b79e24b134882ea00fd3ae84d037935de0129ad8f3f64463c9c7cf06598f33bef60291d05884d3e448d1512d304753c33c670ea97b6601829898232720af684e640813aabec5fd004e6a6da09aabd30aaab0ee818cd3100c0bcfcdd4afb7531d6fcb6f037169294100ae1559683aa8e76302a3695353540c0e84a07964352eee97e79abc07f25eb1b8ed7e76871c8eb38b491441da394a70f727281e70a73f683c37f5af6538cd8bc266f83d413e96a00841604d2f5a14f946393334172156f39ef79faf4df57f245e4ce98c7295b4dadb84640c79f933d1a08ad3decdc14bb2d6c4f31e1b795209444a6489672a085afc2029e479ec2f265ac7592e43e95397366617f47ce7a5b037b9c9196a8aa8d8042511dadd311f45044fae3c919f99897a7d24f3ab42df8b83fb3b85c4c16db9ca9ca545a7bfb6349f6725fe10415c9155630aa6b3204a2ee73f19e4533990b9cdebccb4f3a8305edf5d615aa46783c4210c99092dd5fce6d4df4fa7ff388ce8f7ce6c3e2be717558d643861ffed89c1b10657a72aa0baead65223bf1e9cabe90ce3dffaae98cfcaab278640615114d7f5bd030c4fad82079a21a2768fe4452df25e8b2c7c0b16f8a53173cfb366b3d90a5e204ce2ee3d29e937014eceb351a108f16a0dbcd3c7b137c6a4b2d8ff527356aaf581fa1c9fa0dda348672efae0eaebeca7e2f7c1ff8ba73156f5d14b91b1c487792ce8e7a34eb1cf8d7bdbd85f8b37fe1fcd742e0fe12d23ea334982c8b2714f657dc9250a29d946f98d8250856d4b76e40824ccf02fc35b975c47e4da93a3ac21b09fcd24c0fe15fc536578c31c4d8aa1f31baf73e5a5bb0549ae995da936b5ea1fee8c08842d1274d388a0f384c99fb5b375e676cabbb4aac5fc30d5ab5646043f0580236b7c9ddd603a7bd36082d4125de7a5a903150bda768d0d738639b09f1e5a4ec0ec88465a6085ca654b40f1fb538b237eecc3aee4a74667ca29280e95f1cb2d133252f54799209670c92bbedaaadb58145a7e066f362db4059c7253162e00f8a61e506c6cf39dd61ac44869d283f679a8ab69b6eed549e9466fce7c5b1bdd6d2c24d49f79dcd8da62340237f7b661f5e8d22583f9d2f4c4fcca82c1d285d93f749f50ba39ce32b416d8e79c9562c3e9e91d29073bb6acdc2b7c862886242b2d0f9ee372d561a0c3acd84655b5347241e9382f08366a1e90fcc0dbadce3714a085ce9bc494ec3bc82d76efce1583446966e8147d49b7a6da8b895c853add2d2bf0e91510d1e459ddb7bc90318111a2ce059c3ba243db9c7e789947e03f88a090ce68051aaa7196893999a62bdc2a4eefc513629cc580c78b504522a47a94e77cb06efa9d483c2dc8a87b362fa2c4a932ce18dfcc3fdb0999432dd6c8c59e7d236560e44c44045893422fd1c7bf1b6bea53775038ce2587bb48991db6eadcaaa822d62ab3d36d1228405f9b46d4b57b3c0306c51066a64a126935358b8475e7f27121d81282e7b25eafea8da97d4c41a36e0d5073e0694b216b8798039d720b7d317666a2f18db9c691ee816196d328cae4e1c64766bb9d33881f2a70d59cf9fc5f2f9a9ef782a178158aaa6f18ba7e010a934601d070971ead390690f30fb7bf2f8405407c146ccb00203d808d019767b0488f2d1b69e6dcaec47a0a1a0248abf49370e64c9cf4375e7b9a888276cc795b9469a22f52809c2a83fd9551cad0e1e9d12833eb7914f1b0c61246a2766753acd6d4c6eb8badc8ac2d8d851b2e5f7e0daa84695900612d53ee963cb983d3bbf11f4f2364a24ba840998275c51f6be1474455ca9039b59d59642fd9bb4f9dfab900e129b005b189ab529c388478a4d5b59975944877ccc967a4eea59369536f7dabcc9e7d858f5cc6440c2068ec7e714fdb7a74b5c2539913a7a9884f600581eed597db37d3ea475befe7938a4a0134eab5763b6533d7ff46bcb5ab5ad05f7e05d821f30eea0eaf0208cab8a2df296b25a2e76079d80b5c95a285ac1fe0c11168b2c0b683a1fa8416ef71be469bebd508b56e58bc40fee888ddfd8fe62edc11954e52de039d8d81b3e648b30b055c3fd1cfe3deb900eff3b1e1390959f9fe76e4cd95cced4a7facc8d4cab4b931f4d2cad7374269a536c9f0802f532d8999a7ca1300ddf9425c5b252c53c2e4327c13131b84d9a913e151f967c7c80bc376334b7bfba4e06ad18dc5297d1221e15c770cab73b7c6f93dd3a63bee16823d90f3f6509314753eff91d8652544769c1269e9e74c37428c2783a48bd866b81ef761869a70d30df3c0bfc12d4fee8c4b3735002e090b323cc871b846f50296084c782ed87ba5fd26178102cdf29280f12e1ee512e7f694a0120e3ab8dff574a007ac6a51924b0e111a55609f6bd61d9d102c80b6f43465fadc6ccd5c9ee4b1dfeebe409890bbf2c5567475c649fcd8e91ccea47920d1366af78a113b0905d070f2bc2695cafe4e98ca8145b2302bacc1eb7d916d25ad549edb9d94a0f6d360ba400873dc7f3767fba97e07dc3ada6371a3a940ca98a2f034e44db7e09e5c4bee1b99025b28820d814e127e99b57226928becbaca93699f15fa94160ba7368a533c0fd2d55edb94b2bf2e596b54994588f27e75d01295961cf1482e24551ead17e313bfc195b9f3c27acb7ab50715e45bc8d35fffb4c8ec5ac61774ef1491b92325b98bdccbbe5918e413046b969c72936a33b417ab44cfe994b1057d573d55a40e01dd5557d091b8546c09e48df83ce64ba9cefa6d04451828607128af8e6d8c5765ae593e40f9ca1086e88067c75dedfcb43c8ede75a198e691165bfd1ed7b7c539e5e10cca92ebaf75f79056deeadfb750fb4bd51e9ec6280f34a7e7a75659ebc8e9ea62326c55ecc01bcfa965f4931d4ce4d113c7602e69c075c46ac95b8ae92afdd5e252244cb084da6599be25e060b4b978f123398cda5c3595189133b5e26182ebcd1320e190076f0834f76c5da5abf460aeed8b7b3a95480e1f816acb705091b3ba879f9a5d0f15bc0a52375419b3ed840f1b392b2aaa681eec52759b79e84d114cd07aec27cef3519e9882d8bfbc2d216e87011401931c8f62b5fcf8ebcbff55545259e44561be54211ce9c29812cb2513dd5ca39f2a5f75f0a31dba70942124bbe2b90de3cc7f6ea4abbe0e0f734d83329ae7a0bc39a1d85a65dc5544c8cce328826d256a22a377d0263a143e006da7c38a8620dcc8cae8549ad2abc93db2c3d861e727f4925e9e07f6840af8acb76bb88fb6c90cbb2142cf6c391ee1640838f1368ef0e4a422709173feb7d24aed3f7511bcfbab499932bb46447f430769d5a9b0f68cd14b157cb4c3aec6fea9c919b4612dc1597cf29bd2377dd3e66cb60852fd2d76132432bceaef96989505c884af3830ebb9025bb2a5e7acb956a6322733b046ee2a41c59149c8017914b0430bfc8ad451a7b9416c9626d1ec8d842262055555e74b78c2b0e4e5254be1bcf5537b6f7512580cf1afdb2dc107cff9cef8f6ea91b01969e4b425498e258f01da6ae1f6bb2bd9f38f1473423c315092a55d81b9aabb537e2ffa94b72e1f9178b2e78d7f870b901632e5f6f7937b7a1f5f5347f218425a35916577ce7262a360bdb30988e2b60ed1af86fdbde7324df87ed382afb1c9278842dec65b75551cc0de6c867410ae55abc59134c55fdfcac718694de3aba21a1af80967bb37aa4793db0db37d7f3c14468ec86930a976731d06035781a1247019b57dcfaff8ca0bbd01e54089a7141b6510518dcede2d269a2bd4367beac8b2f6d5d4b19fe322779b53311d1f98cea8e00c68a35dd158e3fb5c0803e4d40b509e4362a20cff6a0291e6ce15baf6f52d3fd60d2aa4b588567b4b115f94a7a13208cbc47ebc06332fa46fbfba5fbcd0b0744469c2407abd2f8f64a232c2f1ed783275534cc3fa6ec194f625f6b791aeb278d86c4fb6634f34211cb9df04f2bc84740eff6af0a102d7e329ac5d920299d1f9a9f482b5b1272d4905b7171c344c5326022f14de5ae5324451c23eb7677a54fd8de705ac5f1710ebf5e5c8c0b360b046b6542ad29164228a3b4dfbb8386e0d5a53bb80a4d69e4c65ac598f96418827e85219e52de1c67bb45ed750eb2900d1393f72238e28a01501ac61b7accccd4c313194e08224db66b86e43ec96a1869b5c316f081c9551a77fac7447fa9a47939cdfbf510032cfee8792514fc0c7d55892bdaf186dccd54d4e9db0965de87db35f4893cffa8b2e41cb813ee283b002557e6d5561bc8357e23e3fe290ff609394e20127290f4636bc6065a9ad3b253957f4401867a6b22549bf60f02cc39270eeea6aac2795270534800d04060b1498f2c280db63bc855e38f2b0ed107d6cf84b3e23e60274c6232ef3f8fb8b228ff77c64712995aa035116a08c40efa3f36e3c639f94e3a829dd240e021bcc5c7ccc2dcd8d384eabb43d22d990237813db997485724db2efc2ba9f38fdb365d55669aa173f8a5084fcb070e1b3c43b1dbb062586bb0eeb0b9d14bd82457a3d490f61750548dc7b333743b59001fa71ef2d0cc6bf6e21b75c2065c4bf1fb89412b24a8cf854cbd586b5b51734e62294952cfdc3c589ef70666f7f0cabd5c8636134bb5f5635776755f9b60d7ef3fc2dbd36bc727fe1aaa0d6abcd4c78d0517650195ccaeb30583c5ce064cf2aac25605c7dd267e662addd2cb9dd6c7b6e7c210c9b7340934976fe8926d2d47ae3166074149c831897bf1d639cf52a2e3c7261ece9d54af9238b14316cfe1165a0af50808250312db4022fce1b69f619410c906621ff31235f7ae1d7bebbe4d7951a00543f0b7cf47da80504c71c8a5804e89109b3a24e5fc5009088650e003e858d0681241097ae2b3f0bcc0f839eacd3fd6f08978a08bef16ee0aef15945dd0d10dad4050d80fa25ae6db0e5cdf94060b04db506dde7d502a1e88e941645163cc830be983534b02b1673ff55eb65f146574fd79bc4b1419c4250bd1b4a698f40cf1a2f021838fc3286b03e81b33c682636f7205c03c14765bbddc8a615dfae6a871d047712192510b0ee9c780a8b259c56693fa00a5be76d01d165e06235809d257e08fe64b5e32814b02a5657e91ab479e42342ab193880dcd10f8f26d89d45356f464bae8c1c71321366ad65274c3d9696135dd793ed15ba554a156020b5ebb0f05834fe8a17688b43cb031a4c028f9d5d12ceefbb650ecb75ff4c93bc2201229b987fcc51a4591f209377abb4ae316351bcc2ceaf690248d4f28b3d138bf807099a38ba23a954d1f8032a9a458c278f3d845fdf5d2f7ef960f693a91461bdd4ef54f2a4c9550609406e58a671ab19883eea29a36e54fa959b002df1dd74ab10c93631bf10fff6fa6ce3b9f2f1fae35c60e065b9a23536fcc258b234a3e808ae75da32bc16684dab2708aaca3456b9f01eef5255dc29aa32eb48ad50dda0607d9da6ff0424ad0152ae7c599d5c91a53cdb022f6ccfe63b8ce3110858a4053a45dfc8747ed6eb263f0f862257f5e2d3d30274ad0078606486dcee0e965c3f6edd79b10370b23bbec20981cd222ddb8fc7ae4540ad765c12ccbc58078c1e2ee2e1d4238a202b945c6a3765769599dad12f573a98757cdd1a8afdc59c9bc2bfbe04afe418bce7fd9827a0faa70d8906f8839fcd953393cb7c2d96b6a14e0e3e823a18374429afa7c61efecea7fab8fea7a34df4d694f8957bff7d893d3b91b63066d59c29f4b8fe8d3ab26b7947288c75639942a3a789e69a8d383b956f703ea6b714b8fc89be2a3dfaf9dc4df91565e2f0d589cd8bbaa1e9c28636ad78874474fbf964da93dda5dc41dac7e4e6b96d30e9c222c5ab387a04bea7d7c3a9562d59a4292f3ef544fc18fe6ad7aeed0823cd6aab7d58137ce32c5c323b05f09d9429506a97b3b7701addc6462de441e33c0fe59ae7ad224267b383c13c14cc8c76bbba9b0a3d98af39d137034b016960f24214b8f433be85b790a66b28392c986d6d5ec4ddf4a28fc184e8e90d30bf24f2aa9e4d4694656fbcc937137366b0a54c7b66b939e234ffb29bdaad725af5617aea81c5f502b08a427445877132aa9e4832019b8b4deae8832bc0d3f7da3e1fe2f8bc893dd88fed5e713249acdd3ec6fcbff000d5da87b7d2c997896b1004101e016e7911860630f2b0104e9bf03d44d71b1fba58a5b7aea58f6f9c2bf9dc7b147136b3df40fa4b03fdd41838ea0ef740ae94eb73ae4d4f3526d500023d6c30cbc1ff1264b790b16857105bff24a86dd87a9109f29af8bbaaac11e2d3f4df7caa54826034bad0b7ed5ff1ca3d637fac3bc03fca78d5ecf365d63867a75e8381062d269306b0ba0b86f66740cdf7f2d5bfb6062d08d743a56fc02a643f06d97d3514ce2ab061236696bdb6928b9e77c2ebe8a214a1edcd4d1dd10af87c34669f85a54ff0dc0776dc1a92c876b7664586aba2bd49365e349e3f9b3eac806c168d7d4ca95810200865d7dc00dea7d543f67409af1d1637029745eec2986fe38768fce06b59d08ef464b4f5dd335836db7319cf98319d0cd7594eb78bd4d894844329af3ffed73aff232b02e1a8ccfb09a14e70bdf1d6a512671345f115ddc20b1b6a9cdfe694033d7e5c7c043349f1fa8c2edd59083ff9498350397b22957ce773d62ecb4519fb59a658266b46f315dff9ef5513974d8e51dbaf4eddfba897319714822afca91c9c25b1d6d5f2b867140472c3cd50f0228f40ab5cac1a3e6a5496aefd8e4975fe4d85479262d13e278b4ab6c39f576ca90a78d2b64edd7faea4a226dd4078ed8cdeb6af7c06911de5e0069aed18713f0767428bab719acfa6931f1827ed4513631613d2fd0fc31356bc33b38c3d2220779ff9334d7fd5a2fbe95d938170c181aa8a54bfb73a258eede2088bc9ac49df2a39a45e2ce5842ee760d05e522aaadcb0eff8ea2b7da4ede21047a54fbeed7a3640a7af0a53ec4f9c282753cb6b0657dfb2ffeed55cedda819ed029181704648ab7511de0ddfbc688a71f28ae33e6a0a3baa0e84c92e233c9473d8efd71ed19a727596774cd87852f84715e474def42d523dfb385dbfd3c3091f6afdfa3da7232e3db8f987ac99e5d8aeedb183610f6dc66aad12afcef02246d1817aaa232beb22eb5131a68a63aaccd59d7a482115889e9f55e1a7f814ed35b0a7238d229876bb8378c741a70e832cf43ddcdb7e2aa05e5f4857990cf63aa0e82b48ca27c47fe9dfdbd2c0ed56bf9f400046df9924bac5ea24c6673c7f0c6f45a4b518c4d99c9474c25f6becafcc36bf0ebf7a9dd9a4e57a7b9fcc872ac617b8939e4f3af8426b3ac906b624c2763563d14fa3d528c63b1a0a44f01d8d43ba964d985a68c5238bb5977d612b8bc32516de09c78f40675d09af75b41f8c3bc7e51cce5114061467c74966eb3e6ce44f7bd943c948c64576f628bc4b2d39e0879aaa156408bf3ae1bd73cd86c5e427d981e0ffa475e321853adfb08e266150bd81d6590e9a821914a6bbc7a3a85bdb3ac5678fc2c8c5d42d53c6f2d50e0df02298c71d2275d96af8160ac900f62a3a8b28c6454e9b7e8c33a6e13204028863e4ba76cfd115c648c2d64e78470f0d4671c799813aebe06dc92ac1be5aab6fdfc4ca317dbc3a82d94277f3121468f1258c76ac2501d04e3ff93a5519be00b1ff0bc939a85404c4357af9a128295faf4b01a6cc96e667c4d7f531dfb9cb573f5cabb89cdc201fd05e4e878cbe1286d289ac7b29e2ca382fb88a975aa34f15ea215da37f8b6dcdd80b21607ff5344c02f44b1dee9915192a3b566714fc64a6fb426847334f1cce7848baf6138f1b01bc91b21b84ca708dc315798533188e964e4de14556ba4fb295d7164c6e3099b7db70ce3d1d5458dd03d80896bffb169dadf84559099bbc97bd8a5bd3f661974f19077183de68bbcc7015d5cbdd583dbdbadeec75e9bc4375da9f580b60ebc6b40c7a7d0cc0cadbefc4e3686a4b66ca99b642f40ca9cec8906b75a0f3c31b11771884789d8025e16e6d60e2d229c44a7eb57b64b156daeaa987f44710a8318af58a3d1287fafd9e180f593fa8a5b4bde45db5716456c74dc1b788c7381e4d3c1bb4a6a60a78620251c8380a05107f057dd31e75b8f5d76f5689bd77c281d9bbe08e5d9e63f0798472817f21b64fb1cb81c3720775d064f7c4cebd37b73f4d8c86f77a8568e207f354db8ab350bc37d8a953434092f8c7862691e14797b4890e9a1819d2d3cc8d3a813397e3039cffc799adf25b19a8550266d5830ef233cd78beb0ebb1ba0875cdeac82588eeddc26171058f5e5d73009f0546082fe40b62e72a1d2ed2ba3fbe1f05de92f74e3a5c4b4b16a6d533c5ccc76490c3175dba8ab96923c3d85a336042c4f531626cab1631f510ea915b9e812af53d3be1335dd99da6b3897ef7e2f9d51bd415255d877455796cd011764cae6b9aa0f16838cda94924b17c61982a92c824160267d0f4523136cfebd9db4caf00de4f1d24a90b58d202b179ad574c9419dfa4a5d897335f43e0356ea347d92444c0e14adea925fbbafcf6f2fde972f9a637caf34dd2afe37a32825a8b7e620610f7a0c581afc2ea22347d980390853726c319d1dbc9641167aba2fe5841fbbad625e85545adb58977a0e5f7c3069b1c2b135c983919e0ac60dd14842db92a03e56fcd4d0b17bbf357dbe017e82cd5b73bffed30e4d17597c6a44e9968de439b43432b5d6429c871aebdc6a631811f17a7a34aca28bfa831002da4297878e8c772052a4054dcff2bb91ddfbc76319ae11f30dab1bf350c086d79e88e613228d21fb28e1368cf2fa78b5085d83bf386f7d4ab22473cc5b0ab263c67413cbdcaf60fe1cb9161c0a12394e62262a620b0ad70a449b1e89a9c19923ab114e9a8fbe2bfd6fe85d3bd05cb872a3a2209b2c0c128b2075211b39abb0d892cd0ebdf787fa410a7f4707dcb0f099c848329245ccac2cb2b8246b816ec934a2a9ae6cada6577f869a21239ef0ad5a70aa0324c93fd5585ca914e3944f3cc397495446a5faf4d027be21697eb3d2fae983618165348cd52af0868c743f87137a9cce86c43668b11aad29ef26ed2bcd61b41ddbb9d63fb4e795281c44825a3824694032a862f0c44510cb6fe20976eca0b037fdf0ec2e7cacf2b50e68aa865af8afec511a79d4168cee1f0bf234ce10e7f68c9a36c7b010fe6892ec4654d47861e6c104d6559d1673baff5f550d657d52e5c7e5e8d42aff16c8dd5fd0c25c18485f903800fe6b4c869567871c4192fafb04918d10075e2585218816dd78a9eeda9b3fc14b4f83f6863c4fd93ea97cf1a4c5de9cc787c25bab6515551e996f57837e69ad4537e71c90d694e35c720c65ac72129399209243c57d1845a956061dd14a277a2cf6ddeb19e6c533320aac06792fc255c0c4d6b53633962b616bb0ea601d414893c771316d6acf7fe32b8e697b3c205bfd07e2c835659af791fb9eb22c414a00066cc1c453d638e8c17fad9283c71e7ad1548115dedc8609be32113db3c046c49c5a58ca9058c45d6260637e6a52a767f216b02122b235ce8b80b08925d16f328576b9fdc1f1066ec93cb71b7abaf71b77a5dc7dd0c208d068860d2904fbd5b86920cea55df56ea0ea66e6cbca06b9595eff621d2a93a5d6319b13a79a8dff1f8e1b3411a4772179a73d69d47269ed5bc0613bbbe8adc97d9700b7646098fb39d0e5429877e246f1d74d9ce2c9466702239305ee013cace7b1c4f1d4fbc972aeefbd311cb963180a4945071325c2ed3262f5e22b29d500d6c59b55782496e6e109bb9fa710f0e7be06b22c519f590f92ab4a340b5f8a360a534433ce8f4a9130a38e5943e6fd425e41fd3e2f72c2565012bfbc74926891fca66fd49accd9f341a029e1f51189e1fe84a5913e61c01f2d8dc28f138e5b5d7b1ef137687b9d705a5a1b33d54ec15ea77c89f02d55e28793f00811f958a551f5dd01821bcac3511451f34585d2a1de8ffa37489bd11673da96777f597fd9499a8bd73943473759609031ae92b6a165143f71bcb9d4638fb2c2652ab3e5c6f3619c23ecee7a036fe3040aaee10acfa187bc265ae88e295c0ddcd2d5d404406713edcd7e489fc65a5496cc4a502c7ed6fe45220ab101172fdd6bcd0e252e83b5e9bf3cd6e57bc316c96eb572b3d5a835b34006b1fd143470866908acffd39b3abd970bff5b028c55fa801391950f0b6eef770de9056cd423b9f48f5ced67b076677c6c92dbfaa56220bb7c6c4c5c131da981257695a7d1a3c05f89ecbec96a0b98d37552b586e240d7ede4ba7cbf4804512a1c346071a3f0841faac3c32549564bc6d0e1eb4c2869945a78975c841f17dbafa7d5c4b7c9a226895c8393c89780fed10e6cbc9c9e8ada7e66c71fe1bf49bc9c415cd9876e0223e55ca4b50dbdc2930a179053ca847e57f2d738c349a31e3b661f7a17dfccb7c18ace0a6f6c9fa5adb9d2574c8f23e18a6b2457414f187e4c5abcee3a40559b1341e3d20d4756e34843e707d009ad3983dafc9ce13ed4a6d73db8808d2518cee35c8d2e332d816fb322587eaae3f6bfe06ab9f0652b8043eff624db1e204762e848fe820710de845dbe97db3270fa59378f141fe4aa5bf76af47b580186dca87869dd4b6eb726b156bec5521b4f7c6883f7a45c6816b11ce142981c526f3f28d83231f29e39e4b8a20a025e4f4161aabf04656d68baae64d2759d36bedff77c6c5004092215d24ca3fca7a486ffd85dd255235d2beb1fe008ebb4baacd78fba0466cc1e100d73075e1d78dd7d42cf8981641b05e606f316c75c5b59a879db5098929ba9030f8492fc43510606d92a2473280dbd0e95889c15163a983af6d4360f08734f0156759b78814381c31ee1ab7e4dd54ce94e4dbb99b733528cadb8ac978c8f5ce6e2a47d76d4162f04b41ffee286ca324cb9ddf86533a9cd791a6aa7ff643502cd8183b3b1a9f8ab8fc52f1c5c5ff9274f2894f9f1b08654167736536f4762beffa17808d3f12905a3fa119c7a5f8a8566084fb736a465d18d8632e39ff750b8e71fecb6a5cac049ef8349144112f9955516879615860d650c935e2ca9a46bf7f2e20f3d35817dcc828efe26e5efb6c0122454302e37a45f2ffb7db5a789fed9fe3dd50ad7a390da97722f5afbd18ed70b4e145f8e3dc67c2aa87e1101cd1488d6aa309b777dd70205125f41a94db13c601b5faf958012c34f816285cfa88735878d6876c6ac37c38b5ef8721b9d9ebc356bdbc726c54042d874366a7320e3c9e5c1d08f14dbd648637543909085ecba971fd142681dbc60aa796a4a7a5c6ede85d9787196b7ecfffca5cb64ffccc74cbaac64c0bea40a861a0fe271eb7e3f99d4704f36f458f803a2bb0c22cd7559ce430c0eb15fe48efe7ed30d0e1152a0bde1b823dd9dcc99893e0085ad0a189234ff9416a57df3ed8b5ff8d291367aba16760fab6074b60435a0b54ae7a0f9dc3a0b96cd08c26e1e45695e7ce9c57d90bdbe501bee7ccf5c2e5422121f26914d7e905c58834915ab65d04c4296ba103d85141e13753901e80a22bda00c93e8c34999123e7446c457b5a1380b24b2c0ff1cf2727f4cac28a08b0d51026f1c9c4d2186e2642294497aef65694fd988da1078369b8a12ca3b3204acb9c4131e099b50ad66f42f054e8e6af19783f1246b7f8cfaf1093a3fb9023721241e05e9b70cb4ebe28b1a26d88691cbc97f7bb1bcc7f66eafd96b6a6ec4ab9a9f0a6468976a16ea5ea53e6bd0016eaf517816079325398563abef475638ad702bbb19d9acdec8d9d2e4a38cde8ed3f107def7280516b5010d1b60615572f2d7901a1efa2c18e2a3563f787f27a93c110b337ffbdc43b343a3a9a63a510f04db1d103baaeec6c60614105720d79b02759065658585211f66f5ec29d1fae1e9e8015d38c607901e67ab2da95f672f8e1a59332594d81a5927f88a19f588c165824e2385b1900509d46afc5ce44e62a5ccbf9a3ab96aefd0a70b4da49477592d20dc6807eefb873c280469eb3a2b292fcc2755b45102d662f5ada49a3c45e8f32ffb09c77cf659aad3285e7ea07ab480071e6de112baf3340d325135525555ec2e2eea72fff73d4c93cc0ec95a2a18fd34d9b7ffa2c31a7e825da9f73d751f22e418ef026914a426743787c1e5a57b8447f8367323d2363c6d99faf3edbd9e4a710e0b8539636c4f2a9a0a208ae94f97de09ddb959865f23aad59545e13ac818f98974a971812ff465220912e79f812e96efd7408e67d2f9d47116ad3dc31da9e674c4b75f9e0c9debb80b00e8740695e923b778ff2bcfab70bf973817a6dc271cb87b92f77af74df1c6763728facd639037d1dff8b89d2dc3d113896c52025e52600be2dcec02110758e329d04e158d02aab0f0d33b8ff29f20b92b4178a91a28933ec32738374120861cf44cb8f9d6bbe386fcfb996b7fc0c64383930c1797f7c656dea23df1c32d666244fc544d2ab61457ca0104340f81a3635f18aa387d7dd01253bb285cbb0f8444070eb268bd3ac672e2c91a520715131fb3275eec3164f03ff1ba16898b1f76c2a5e2500a425ca9fd4cf9a675a4023fb3cdd559acb7cfa6ad3307cae365f28a4a65818defb3e69b4cab8fbed7c49de3ad17d19937b0a1d1fdaf414779d05969094938fb7f7dcf71084b94243fe62297e939d37dca85a71093ab8785c5267690e7bb344127d750de37db63e7d7b1792cd74d8e5f3813e4011fe41a83cd3675e149e183c39016b479585d119ebbe4282851220d74401901e8c91e444749b34ad33b0861af118a1d8dc0841911f1d8354ea818b49c66e91b9fb6fc747ef7b4a6a95c03a674b0d8602cb5798d24824c6270451ff331024067b00bb6bd36e5503a410d8a44e0621464c9b4e88d0a6dd6366ac4c57d32d74b1ade6292d4a0214465ed29eb8af0a53343dac51e16bbcbbe8c9317377014922331718dfe230c0ed461963cce27d9002489ee6317762a7a4f0272bbe355670f86de69b6712ad0599f7eb5bf380f50e8305d586fe0b02009797fdeb6f9d20f9ad517fb0b8b14d54ffee78017ec9c53f7ae632c79d1bfbb1db946bd787ed35a87c4a947ba279c657851837f5414e6c78ec6a86baecbd2b34dda8e5427b5ad186847e7392cc2eb7e7dae98e63a158039573174f0fc9123ce778df9b4aa2771fd756f7ff569962d09c2ae3079ed0642783433d528d11392e3ecb92c1732bc894946e69a4282df58156e4f9ef91fba1d3ea08a8056a77353229a47c1240f4ec0755f053c978256eb21276f1d8c6c8d7e00b1c916980834559b4434f3e041fe82c7603f6f525964214ba74bd542fbcd1dc48c9aae9e76bb835d08bdf4aaa63bfab93c46fe07fbfb70be6bb6b944da66c8a3b254ca34a118ea5eaba598ff1ce90ab5615ab00add57401c3f2c0d36a926995ea3e93d0789167d9375318358a131dccb82c092c9bef9abd30a104065fdbae6415f51e9dad969692d47f9a511e577ef1b286ca42c5e7f82b93dc60b21747209c2685684a0ce928da681a9d57cc1082fe9a1d26339ae47a1d572d55776c71212b73e19ecc2c868bc8888b9e839bc3a7d4e2fe29a0c481e0d7eb2f39f19fbc00057e759ecd58f472a75482cd59e0ce5bf6fd1d7b01ef4ea0d4a7a3f08a6764c89fbcaadf29a6e50f2174e51e0656c97b8ffaa656396274ca8fb4badc0c2399eb6fcae66b74f5285e0e01a82619df720d289c3794fb84e3f257fff48df0fa06c4ba8a810e0b3c7b232758ac1a3f94593800c888f56540832c8bb3bb950fdec54e8122f2027bf4ab868a63c3ddb0708b550dac1f54e0367ecdac71109596fa598a297fd7c78c6ca7f56240784da630b9fff0763bc80c662402085a155dd0e821d0e17320d36390c8e8f2ca47da270e386093da1eb8b8f004985e0fd58ed72a9e4392f82955cd0c8820dbc244d860ad4152cdc0d190cbc3324ee6d0f421969fbb705271751a6cc2c9fc2a6cac5c56ffe5100624de59d5d32e45c8a9214ca57538bf73d4fe3e97306db36b6eb5c09fe589b6ab2fcbfb8916a831c384e818683b4f9cdc2347e62fedf8a51bf4057e330278c182e6a634922a0330897436b47a85ab15e0e769e7e1b6fc4e08b4cdc83fd644f9d4d6f9bf2b67f87909882cb89020d5097b5cf81ef5c2630ff50a503a1255138dfa6c2342c99bdd9907bc1dff6cd3dce8aaa62d038977e9bece5bbe57bfa1e698ecbba4a2cdad45856cffe7cf609a1734315134888b64a4789dbf3fdfd593d56e845a58bf7b0c4b3b01bc43322f537b84923390d53e6879e8b24792f58b3d8488fa278e653e4437062ac131a718c7c30f17860a6ca01ae54431da8c228b326a58400537874afade251eba5478609f78b3d8adb5aa6df33d446a8c15339d0eeaa7e40ca75358da080ff20621c0bbcefa49804444cb4f6a6d3b8a72c0af59d6fc86dec1dbbc1263993c82944ba96957f71a6a55ccc06ef9c969792a782d2ec653650893ffbf1e7b2ea439643ff47486e1ee69ab35bbda7a1168fe3ed650cae1c7fc8ab671e882253c8b9918eeeb1534907a9f7e5289a755d5f5e0ad85ac365667165b56b0ad29ca0c746c63467a043970464424d3909c9cfcee890f1a06f6c6c652a992e2fc4ec103a5edbb91abc733c1873d914f4c6b53fb2991d71853be97edc9f992897a0dfc4950ca72cf7f58f495df803c1a7cb161e380aeb0dbbcd590b5954f43d0973e3ce3785caf5f992cbc8649f6154cdaf414091b9627860a34fa2a9918b4a5812700bdefa4e4061f4740cf4a576dfd4905bd2ccd5c20ab16d698dcdc28bf4c052acc6c98cdcc442203d28ef7b5c273fb14640c056ed1e177a8b7dfc49be17f1a483526a21cdb3189148b357aeb16eaa8fc0faff99e3292d961e7b1776c84e5018f1979567732743cdca96d6539728d14cc2b22e7cbf8cc078d6b65dbcacc3541e57abf33699510c705af21fd410479ebae0006218ca6573f7d7629859f94f61d573acbedc76b5a343cbaacd2321e2141c0b49062cd85cfaba95ca2b8f84dbdececd8ca79b93a96ac06c925aaebe7ad8f7619111ddb6f865ac13074d3b2161252618e415781d6cb94d2c25143c319f953a75c26ee936105f94049eb307ad87f0c4c4b6366f625af6f05b27b3af8ed406b8fbd47f728496161510c3caecd28661eb4896dcf5d0cb4650bfec0a80389d78f4a898046b44a42e3d5874d6cd59c8f698ca7a313d62192b060d8495cd8a1aa1d8fe399b0aeb8f9245cf1c69c423b8b20c779fb9ff00461f80d43edad526d345efb3b2cc039cadd1d14ae163bf67ad3097f83b5c62bbd2b50e9c458619710b11e228c261e5460cd29975e98da33dc060d886a19caf84134b197509c37646e14a61b0a83a074959344ef31de73c46866062417d9459070089fcbb6638da5ab00765e9d123b1fc4f3e41cf92fe49cbffa50caaad95d2a77aac218fb8a2758015b4b739b9bd6909cfae24d3731d2fd730f583357518edcf9899d000325beb284243f3a0dd824f523e5cc3ff5c92228c3d50070ac6311bc06cdefb903c0cc191647455c9f04930c40968c29b2bb22062e4b5b063f878f8ebc3a114e6365058d036f02e329df3b92835a81664dab5c61210440ca7fd1331c49d3e0eb4438311efa513c6c082aa2f3ec1690818a00d8a4159c013c4db6b16f3adb532c21ae227bd2a9c2a7cb5ab823cec337bf53a52eae06d97e8b8ea97b7f50af46a437b5fde4281738eae6a01f55ca3c1f27e19d154ab9fb6d7f9b5880e3baaeb23529a086838bec41dcb70646d242ceaac35152972b0916a079d1e44893fc6dd13e6065bd032dbb365004aec1ffafd438385a106b9aab599dd581e327f2e15682411c5c355c3a3c1a8ff24b2adbe136bd08804e9f83d6e18379190e9edfe2675738d1f0dac4c1bcd82252a73ec0d801dd084c6da68b1adfc0e25c52b8585e54045c7b3a6d598cb2ba581fa9fb4148af608568275d5178e62d5869b264b1b75c8c01af2ef006d6bb20e6fcbc24d89b482744d2b7038aa723117b8037c9ba2bfa33a8fb88509b62b6b25ee43bf44634d3a0e1686d35f1a8aae5e67c71aeb353895a699f13915aebed899c02be59ed082930d102791e790d366219b2d876e5cff9bd04ac0d72d7e485c4760e4ddbf00ab224cbdf0ff3165f3b2c36d1e789effd6d6745950a756a09a7d39cd074ba4e07adddc5dc2aa88dc7a33e94ef793454b5299f66e78be05089d29868aba442aaed3d6b2748abb3436d7598338ea6bb935209ab672c8c4321956dc4f7755950a626a46d5aafdb1aac93f21bfb328739b8627519b6286a6e74bd74e10a4c2d8a9b8147a32c68c2883d1410a09ad48a3273258d5caae7517ef0af3e008dc6a699b4c4f66c815740be121906c998fe37dbdc9eedd7a05c7942b1a24b920d29f2ed85e7da51eaaa521eccda2551cecb59e6723ea56110dc2c86482d39c8d0eae94401501c18bea12592a9f27a47d82915483378429135da4b33d884e5decc9d4209b0240547cab9fbba35652603cf0360fd05c9ec64dadb833479df007cfe0fae4e143fe449480c821763649c2f91f7847d3b9f5528ccc2397e68aa27f20ce28ca3a712ffe5497927ed40f92cb1e2672e30fbfb5aabaf06b054961ce009a54fb967952308a9b5f0fa94e6d0b5f8162cd4dac6ec236ef9b70fd2c41bb446d1a581ab5ddbbb0376db90e284ab31e6c039a9684205585639f0cd29c9f4f74ec774a63e103f1996e8a10b250734ee11d7b85332c494be5fd8a7fdb653593d514c3d0b47d8bf97e3effb7d6533d294063ac36addeda6d56287a0b9a8c684c143e437b2dc7e09dcaa6b23f8c355a43f1ff800d81d358f423ad109e1dd18577173d4bc63d190534b2ec72712fdc263d4d2aab75881e428ea1047d6b22e29f1989b0a7a2e30893f374b3994a7d8443a4a4d36a3fbd24c559b9c437c7febb039f964619f8a79bcad496b972a7c264980c55f9aca56fff0366a43dc57cab62e7adb4f475aba3d7a20f0e687a14cc1f34dfe26428ce0d64b336b0cd58e0f377f501e03f2057071d5f7958bcd69fed858b1d51473299c272730a1df7360fa9a8b7dddd5d4070e281c42387f7f544fad4cb7d495ffa0cdd8eb1ffe612a2e74475cdd08ca1bf0acbf039dc871c4db11b142bb8714064a1b57d03d98ea9fa3155ad8c0d3669d220393d0ff088239ee57a771bce1e648783ea5d716f4e0d767f15b670733396b208217d045b22860ec32dae56baf2bfce345ca83ad125683f8e43a47930f69a94fe7c62f1501c49bd45ae5908c15845e198d240026b9caa51c1f1508170e75b89fbacc953eb8f9ecfaf98264b42fff5ade2c956f184f23d0bf3555c8039fbc574aacc798ac6be46cd309f5c8fbdf8e321f85dc92ff5730767cc9f11b03ed57704e973a98a6eab3f2d2c4c2b5722e33365b66360c2fcbb4ea1139a6486a300756a04751447943a61b59d7831ac47598ecd744751049ae19f1a98ff34d0d63d9f47af8f16d5afc7165b875ff7bff677bcff9bfcd15980b8348ce299662c1aeffe977937067b86fb8c921af4147745d56404107f3c84b87061cf40f934ad3898c892b9cc90e24178e90086795c94131ef383b0e7ea05485f3d456a16e28ffb995e7d251c41101bc5e698a1521d4f279edd9f3031152d930bfe193d20f74edc1d1898a6506f5fbeb18def51196579eeb19086fd9a323800c37088350766657687562800b5e0ce6399f41425e0cdd5135ec70291b6aad1f5b795c87679fa1ce1ddd275809176446f931d8f23be1c256ed3a5f41fe1457bcbf35ab4951fac36a559fc8c1e24296632ee8b6ccb9055dcfe2dc7605dc46755b644e01b4222c9474747ced588c8a1e5d0a051f100bf1dc63619a479e127141f82ed373ca715729c48523446b609430ea62564d0adfc68371d4991ace16213b2a42434ca95efc62190cd49c3e767a97e8fd7cd5047ed734b8f93d8c223e3119f53577533fb896896de10939f8ec2d38607716d736ea249e3f147211b8170def1908b17224e61e1b4ab570d1074399d262c3c1667b3045a18dc8fac13d56f02dcb74a80cd7bcf56095aacea4a1d776b41b9546000392436de0fe0a801846326ba2a1510870239b4f3ffe6b582e4213ccac1cfac7063661b2240e2a71584b2ec44919900d452f1bb07a304ea57f522b509194a97cea075101053af0a9195dcf893954f72fb8c30770f5da60c48118fd292c828ad76076e285e80ecfb84fedb665ee09a38b988bbf908d5e897037ebeaad039739d8b68967067221e563b552fbf138e3d8f1ee8716423b47fc3a4645eee309fd82cd9465679f5f8d773c1379b0fb6801678cf69b85355878eae4eb7f174accfc7fa3800f9750329337bb50b08027554c36136b4f1bc749996414e7e148d6d02476ea7d5390683ba1cfcc42af047145f65cf6ef73f10f63345b62ec5c4137912f5bfb99d18ca199527ccbea456aef6aa55bdf7fc217776ffc8792f9b70af827718cce54bdbb99b57eb903dcbef5a1ae4d170cac8a6f86e40099d9fe72db8f0e99580923e66019e5caa45544ff79046cdeafec35238f94b7dc9fca8c93ef041ad1fe5b505cc4f69e042cf83a652bee4b77e702d4c595d4c35463541f8cdc131da2df84f9fcc27ffaca8966ee97caf28f2d7c136c4388d881d2833f963a5d8064778a217ed325782f28f0ea05b50b2283861218931a1b05f631e94628161d28f6eedd1c2168ccb0e2fa5436a1cc065b1a0d12cb59c62facfad2e0ea7764bda80a5cdc8e5a2f4e41851ad7eb7e811f41ab93f4f9e5fddc3e96334af82280abbb1304480ec0f4ab0fbb049aab46f0b5bedde17bba8b6fc21a3618f2992672e841023b49a8a64d6e686bdfa2f19faac7d81f4efe6ebc1e95f35f744156fb19bf35936f6173df40643399cbfb780d5138b94b9946076bbd2a023daec7e0a8f56c98beb0cc204d02cfd8e4fc8d6e4a5e66a81fb3d8f10f1aef6c7f153ea83dad12eb8c7a65ea25e1c51aee3bba159e9bb9740a3b20dc4ecf74c947aedbbacfc6176880e80ddaddbe9f15d21e8f7441190e9a6a0800814aa80fcc30d4a634de103809b625f92a6a082da8b165de5fa54f4e09e2f197e5ccc168e82bf36bd371a93453efc425d0bf7e0946a9955f127e281a385fdb761fbaac6b672054f54aa7b9b93dfc1587e8612d0b66a94014893b884993cdf892a12a2b7ff378b74923bbbd685a1ac431e1032478067bd53ae1ab82b552e7e0415f2b3139815d7fdd8481c5e72c0471d6d14221075cfd4be0a1ab0c04e46670d9c2f11b683087a05939b8230a48395b885ccbea49ffb358c18a24eec50bdd22a860d208e73cd16483d30fd5e4f3018bdc74a1e9f55f0b35fe5d8ab3995507880f8ac5dcb0aedac6c5cacffab0f682e8f9affc803c831c0d5b426ac18cd387574e1ad1351ae553b1b322dad659a41bc991cf785110c244d815d0fd461350932c8f46a8d01f3a9f07e59ee5ede39605c2900b7e46bc130981bfbb6291891c6b07bbb581dacd282d451deecc7ec3b11ae789accd651e0863c9387758f1bcfdb04421794f817d8d7c8ba088904a02b4fafe639bbe01b8dda8592c34275ef913570d5cde7f63cdedc10e48082b53a7cace1a68fff68971884fc40e5144692b76e9fdd6cb7fadcd8fd42a89a885dafd1b8f1c4cb520d0b16ece070bb05477ac565be9198dd8774d1dbfdfe97e716fd55f32d3425cc78bfedabe2ff357700ce05a88e7a103938c10eda345c01b9236aaac84b5c54fb677ab03830844600266678be5968322f6f5004ad32a29c1ff0fe542cc83bc331f1a602a24a15701e8d4e8a0286df18d7ff196b435240c415223513b48f238d5915a1bafdf2df8de6255e8501127c24cb3727a6e5335557b71fd007826e4457eb5c07e4fa11b8544a7af74fa493e7ee54c60fc177ad77413199020a81861e3bffc22da0a8e6f8acadf47586c9de52115fdfc7181c4f8f4c2aaca831bac39368a0d642f20fdb152545eef202dde8d8794f57b19f0560de4da1075c4424c5e61b6f0bc129e623aea37f93d9a4b5e24b562c219b419cbedfb66163c96e5fa03ba3f24e5c7c149f5fc2c6705cb3b3141e904bf2f9f9b354ba71f90db70ef1bacbcbe68ab9b7035e3e5c67aca3db6e7e18e5a77e334fc1af2137e4f16a9649bdab026ddb0981873ef0e4a9aafb66239d25b01a168a1bf192994e3b779bf6191e91b7444db846e3b350b7dafef688a193f592fb92aa1dfa34402df6a5be6fd9c6cb6c6fa6f4764bcc1f15d14d154c308f5f21aa5e8bd7e59cab82268711647c60b9d3a69b8877e568c82b4e9515298775a9c3b7098199751e4c8269f8450b3db49c66f0bc6d92f397484054f35d0ab3af1070e1963c536b72054865dd609f435d686ee9c73d849e7f8963156f2f5f02643d4bcd462175d4e1913e41bb4c85eaaef08e1479fa47f98770f61739a6e47941a776032f87282a1fd75e1f1c08be7d68aae760a648c7c3f129ce423a74062fa704f958ee7f48668a0ead07a842e9e9f828c2da453bbdbe90b80c451cc8cdfb1936d79324c8c364147d3d48502b33959235515c054ccf8b6cadefbb56fb8825d97ad545126d5e9abb8d106bbc3e97a1ec9809a17b85561ab97e93e1dc6ad061642a597a17cc1e1ef375c34a7ef526b5df0350a6f2666e64fd7f2e891e3e399a6d00ff1d9f785dc74d7436dd80b052685e3ab41bd5fb85c7ee9cd1ed1ea5698dee9745accb32799281faf6b151b6217a735f7fbb26d614f39afdf99cc914fee21f9dd4a3265e309a7d675e659a6e86632dfe2b2677b786a93fd75c798c1d179d46a6d2596b1cb8af89b3f48cc8d842c361501d30cef34b3f74eee9f95e3358823f95053534e085cc8283b93566c6b3a2686a203918d67f7e11d1e1853dd55e2e92be294b9ef90889f42e44501bb3ccf23d18104ffb66f2a1befcf76dd85239b7f5255ddf103d29ba561f53c606e58976681e7a298c9f7c9a0bf53f66ad2bcfed76d087313566dce83f1b4a9f1e8f1edb3d15b5fe2a24713649d4cda31fa2f49167153d98c0f846ca8f4c21620fc9b3935d48ca8cc2ecf1fdc3543092995bc1bd998be591d46d444d09509c20baed3c8c2235cd116065425c696a6b52a452e3210badf7653cea111327cf5abf11856c0bb414285e8e12eaca95fda9385ccde49f1aa1519d202c04c9d07b71b050e9f8810d3f65897e5021de1e4b806e152de0c98309891075dea8184ec07102f92f1e8d76340a57547064547181f2a6ad7cf137f44ea23c6d1a75ca4d8e265eb737a6f0656c6467d9f332052f98fa2deca65ee232e1ec554dae572f4f0d82c1940464b5dcb4fdca35a2b928113ac87584e6c351db00c06495e7668c61d7fea3c7d59a6d4b3ea51caeab3a918e85ea3461cee5cfeddb2dcd38a69205b2763ce43d0adc49fc343016f272ab45099840adc92f9a55723c72fe49470f2e92340a9020b5efd851d4da9ed38e6f9c30bbc508f384a984764333bf0b4c74eb17a312548c9d579e597d0e29001b5028a930303d7a80e2740888771b9d3495c74145ff7481405cb5b4a23414fdfc16b90f52d66a1666636b63892c0d55ac75af33b9d611da28a7733e53a09d88255d2a9cad33c0ad56c73a78156e2df0a477b67b4fab62fc45da38be3b10dc6ec77ffc8a47cd1cbc2f753a10c1a55eb376821edcb657114a50b31e747bd58f48cd9338bf49fb2bfa929802064c5b0686fb438a075be2b7bfcb2ad128d2ab1d01894480ee3832c72f96e50cba0b135801233cd1f32827f73bc639f7f762f832e06b0fc2f3d6551abee1fe8540f5beb18f83569cdc3ae1f8d77ae4b3fc401d854c326ae54509ac8549b9b4cb7d63353e99fdcb6aafb1560a5d4a24a66d92e68bd80f17e75ab41374da8b59ef58415f89b8a8f1facfd7aec19e8e8da197c672417335eaeaf756ec6f2a3fc558927c1123fc823b9970496140793da7a21b9a0ae249f0d7e897afd6d1ced4b25f6459a73ce22667ac1c77071b7eca2c46fbd2b38ff7652b172c049e8a1e60e8594fc14f41965687dcb351d39900f1e46f89729a06f22bc27a4dc6f8b3f569c8d60f8e3ba6e0d45a4c51af332b3a76fdbf7c94e99f9665b2c54c7024f163babd0f32f52ca9539950265a1507c112e5f8cb5c461d5cbc6a833e5132891d87f5edd2e008c78f6a0ce2a846fcab49934a50939e7f353a29f41f3e5996c343f00dae847a6aaa3fa73e2bb76925f69c1cc2c9b11635ed3847394b5c715548c72124d87a7ba6d7c5e1d5c784b33076b7ea114d6978397e5adce72590e3ab9a4a123d1e13f9d733b229fb41ad6c1b7626f2116c0945d77f67528624084cd5cf44e970f714655d2ca8385fb44dcc2720399f4aa3bb4f8e812eaf87ccd1f571a704f530fd12035ad26a66c7577e6fb99d3d4170d18ce60abd03f6ef5e67aa7696551370f80b1cf8fb5b54d2828ea02378688cb01e0d00dca7fd8f3048c7c42f27af3dad5ad837834a269d7f277de7c2c886986f018aa392910369391d3225e4da631ef3b5ed1593348d0f1cd0c97799bd52b828eca29103dbc8e99e6f50c4583d8470d3b4847e73225d53c5a7ba648ede09c26463dd1cf165125028ab60e644f733a6db718037daa947c693157cba697b3dc2cb6302f38d7cdb6f42bc765e7cf15cef54bb2a3d60e0e5cbab004d455e3ea7cc16bb0872771c566d18cfb27fcf52e41392245e15ccf1aaae1c0c0f0d830faa309ab99a5be494b2ece4160f9ee58234c3d9c8cc837ab3b9ce2496699fb69d4b887c4ea0c7f30dc254c2532a2be81c8d003014f8560c36d5716116988792d426b403670b2519a68dd7184b2ca63f510da865f18718de3e7908664efa1ac63bd65734814424dc2c987e52233781c1125ce34c4fc05c11127ae7dcbdf1158fb731eebf548851ed196f2c6e97959b8f8d12543a500cdfcfb1c33bed38dfe19a42ecbe299dc90b433e2b60804107d5144f2139126cf905c4591e5aae9590f30216d99f3d6f6fec84d7c42a30782ae403729920f529ce6b45be361d78a596f8020ee8a299edf10d4ad3439397ebbd244459c76153f068b6c69bfa2e12cbca6486e24589ea400d2ee6bbd9ac7f133227defd27845c6fe54cfd287bdb381878f5565c42ca70d4202dfda4f06ab6b897bd559faf5a1485d48c2a3cd130c94d05a998953753837e19913cc3221fdca5f47ada74b6d4e0e94cd0a4593df17612413924ff2a627a54ea9370058e4ea630f315cb0dbf167cedd099f48def29649d82bd4ba94bd9d619a2e74c19d987390ccf275b6c776baa1a09c066c904859a4d9a9a2aeaaa34ebae66fd07c99f4305b9b7235d9206b7d8b17cd480fb5189d3f851f312f53fcb2b2049b37fae18c3cc174cd1e556b8e828f64b3025faac57ffc1fb7ff8ff310b81fe5b23654cee38cea9c838629aa69c96268e22966a34c29bd2cbd3ad8f2551c56e5735edc9d6ee74c7986b9ccf471da974f511beaf14dcd5016a7337c04921dd47b89ecb44a98b6c0dd090a52ed2705fac639fb4bf5b2a13dffc6b9c45521d9a78018e790d8eaf0a31a184a5d6187f9eda3f330dcbf51080a08e33f579e09ff20c8d28d79e022dcaf76aba9bdf2aa8fabbbf03de3f42f0ddbd6b53eb888256de31451f8f359da0f35bb3a82abe75cd1f6befb4673ecc73dca4f1f2c5d6bd83e256ce4f90235cec41ab1dc0d96e3fd15dc8077d5760ff4f713e64cd907141c40d7c5a9d2021e1b006ff6e4c944b172e306a4f59dfed9a9fdcdf806bc11a8d2cbf8bc7634d2c0a6d6b60b06027cb12b301e72b2a726ef8b201c83d2dfb0ace0105e8772fe7c6e28bdf17b9300d766b01fe113d64d2e6c95df0a3f06eba5bf78bd404393b035f0b82cba3658d537924aed50673148d740cf9db37fe05f60c37a033110c3f4e5bebd5bf299068672a6de0fa6860015e50b312c3291e5f3329e78d1fbf3ad6a0fa9f584b9ca3bab5467ce9cc597e7407969aaaabf7a8ba2099b50fa5d3e489f92c8e3bf2867da2ef9497e0ab79f2b6b3d1ff32caeb1e9ba16534e0ccd25eca238cb6cb3e70e95527fe25d01a1c055e7badbc801042a019942b2a408470df3b42d2336d027e4d1e6898a9d60c27842dbcd42b0177a48289704bb50a4c4eed5c35913ee764f5b57064467303e355e2189e9ca8eecf7de1f37829962b0ddcb29c254e07f6dc093857ff979bcfd371bc85c65de1a1d644481af8ab3850b5ec026da9b8e8276bbb207f514a045b6afc588ea740d57866269dd9adb6e74db668713b902bb40c0168e3033d10e4be61d256324605da5d73fc1b04052c4b30d62aa9be279726bf99f6729d32f304ab0a6810f87d2b6e2418639d81d5cad67141a759a300c5b8e505c00448fb6dafcf8aa4b073ee43cf2b1eb9998d74f7007168cc7b34391ff697bfe9da2f7aa6116c627bba5f3f359ac840d2e2d3afadcb635ee8cfba55dc5869e62eb14b3594446a5afb95302634fa8b22c59995d1cc2be63682155864853d876f4dbc8b2398dfeb5c1f2396f5f280e6d83712bd2eaee1922e812b52b6ef4071bdc5dd2c33fb378407b27b4dc961585657c741f365ac4574257684a19ab6a4e675971868f8c1239fb9478623c3dcf317c9ad974cf667268f50661f47c9b5c85897968541a82792e84bf2f0f5adc50588f0e4018c7b3cc110828bf07e49471e30085cef11d6dc63cc967765a511bb5d61f51d7f3f51f6e10dbe18e640ffc0ea2f431b8ad67abb9d79c17f784ffe0fd9a76d5bd0dcd774dee6505d6a3c87e24d24edc6205b84706f1ddb388026d84f915c32dea116ad04935f597b79878758947c506661de080cad047d9d100ae317ea284093614a65c15a0bd3d1c784acf372ad77c37af66fe44092b98841cd3aee255ccd265a5e9cc47c7790a12ce9e17c8efb7e646295bfc625955c7eeb8e6b7ea8add777b82a730da8843709ce1ac088b5b09aaacca232ac965aaa7d7de86e29faf5774764bd8c863d8bf88dba7be1719562b85c4990171a613c19132fc6ce18f5b8d7a4c3a832c6212a15572decc31c2e974da15c292f0814adc659b0d4efd987549e517902cb9ef4586215de31fab56aeea2d16a249b1516dcb3540e1ad876caea789bc8e335b39898ea739495c629af12bb8fc4a24f54bfd3f1e6de9c00433b55688dceec90a39580d1d084981bb4864972a82e0ecfc5bbea656a1453a17c4d734e45002a13efa0c865b6f6f57b9928e552487fc73ed643577a4baa0961d0d439d4fdbdc1a6984b80a7ec3bfee653f14cb586fb3ce4ee970fd8ec4ef0582b26176a0fa9d79bfd6d068cd71dcfa2d2982a076adb5f67bd205c57ea84e0edd06de0cbfe669740b181eb1aa7e00a40494b4167ffe4aa3dbdf4acb153ce585d612c535163b8dda19922aad3526d52e1ed1ff35c3c2cf61a5469ad99933b7c2b1366fa3680faa8565af95b4058709c3026baf1f8b2411b8c129a615b658133b8060dd773d1c516eab49a7587dbf84386eae0283d87eaae32f067d7a6884ab18aa9a232e278face109db27c65270c30dd23b7044bb17c161e166cecfdb83e7fac000ba12b853b76b9b28badfdfbec67a5dbc2a0717c1760e6f716c436a557736e52c9a700246d57a05a82fc12eb9ef755668ead91ec1da40e262f3b0e5d1adac2c9700084e3fb45e557f68e66c3a0a8428ba0a6adac6f1bd229a708eb7626b1055ac03c89cfe669d98802d85556ecddf334e7cc63442eb27b027bf062ff9d4927d912125aa391ea31a481911b0e77bfcedf18ab5fc8f261d07579fb945bf00f2ade12120ef3df908542680b924f3be23339034de8b287b6756cc46c84a5ea4cbda963486d43844f8a25f7eb62d0e1c6ac63e6318aa74b0229e92f1a9f6fc67f9cdcb0f971397e8ded4c0ce2de8d7f08665be41a8fe91a62265e61d049a3a3d3ad3c35c23627ddf53c7a22bab754eda1ec415fa34ebe44a1b93dd99b39ff65ac93c1ebd46d7d64fbcea4bc138868ce44a7cea03d588b727bb3a2a47362c1525f0b7df48ec8976a95c17f01b06352017f38b38998174931b0b87bb5d71c632ff48bdeab7f5d3b4a7af964ca398d803c6583eb6e0a2528d96163ecdcdbc06a47e8539cae881617bad35748ba6968a65357b006c224fdf6e5eb7ba5d821f56924b853e0c6739dc18e0cf72385066f35ac0eb60107a46f03be23ef49cb419056810d8932309cd4714662e49544c5e101e15fe45b20fbaaee50ffcccb56252ec20725a049b604b79691045a4560cfa27036aa92384a24b5757028a84a5f27792f51317298140224ea94a7eef92e784c5183dace1d0b91e6d3778460f66a9260d189a6ed810f7cf598ef9dbd8b41d39f8d9433fcb6da729039a89247586baf998e66ff1f9659a49108f0de9f0fce407172bc09ad6571ed60be7e815fdbbfe126729c37297d8551dccb5ed164309f31d258d867dd2d9b379ea2aa68b91ca6218ae6647f3051aa9f513220a2823060ce5f490adeb9a098dc16e4645f4f634b6ffea00c46c6fd16e8b6f866d1c1124c30214fbd769fb0a7df5836ec09c35bca3977b2cb8b2e317b59f83af63f129b7c577db453bd2f9dea6d75e596f6169ef431c03eebb3a8977fd22d55f2fd51ba5577c8867cf61b9c79b98e8d212181518bdf77fcff5450737da9b745092715398924fdc59408d0a626550a1881f6992134c720277d898bc000bffb90e3aa01a4d1b53144476e27a6807bdbaf5ff2346c8381ebb51a32a98dbe17f0b4b50ebb75a5a78b3745622ca9ab304de22c268c9be1abdde1b025064d46c3cc838cc867b48bcda57c88050cf9d06aef3eacb9e0a635844bfd0febdfbc5b5ce92d434a48315e4acf0ae545e23d2d7ece2039bdfe400be00bfc4c4527fb242c5fc28221e18767d8325bc796cf436c273bd918a1d1a3ad020ff332424acf19afc0e60ea9715de1c6cfd36295bcce7a1076443e0523e6a1ed030e2a689630e6a9633ee814781cc9733bb282f78db4cb7b200c1c097ad12e8f3390f7d88cf71324827dca6ea1d98ef3363f08af443aab6567bf4cd8cb350317cbde0d18a1ab77bf67b9edd389c5c0070cafc5702e27fd6f1e414a67a88a1ef388caacb29cba3e4b659c42a713056ffd2d8f0ad7bc233178a3514795b435a6bda7e616d68056f3d762c74462ebb0548adf62eb2ddce0b30fc3e62a72d9b2fce43b60269872a790bae2b4013dd44295e859f6f7ee5835d531b0b9f96640bda799a070c3f77f50356b908fee00a3992d50751346aa3851dc442c51864c9662884010ac60e8a2ea9721bf81a4fa2deb36d4b8c59c43b323393e796bcb26547b9b337f6d9fc3cbbeb6808c86a816a7207700b01c6f17dd64180e89d549ee6e7230d3a0f85a18829c0639a08b0da473c3a085a36f7fa79f158f6107ee8022c73a63d86e7a06170a0a8dc999902ac6c5ff5d0adfca7dd30b1009c36b223435d8c18c801a5bb4249823313288421b07c0333688d9c6d23bc4e031689a9380c5afcc11912bc001bcbaad00877176b3bcf398e0622c7144b994c57ff3ec3df92f3d8a8694d921744249fe1cd844404eabaf476ff3b7735afb4fbfffd31e4c9e8b8a32a54709bbc532bf080dfdb86e57ca438116c6d76e844fb51c928187ffcaede7f1aa6c1f39a05cb14fc5c6a90f261a378fea81a75a7e98142c36ad963fa157917eac3355172c8d3a1a96fb72a1f37bc155241d14347fbec11af463a3c0aa86c0a01dac8ec7be0fb85e8d624bfac5db8a386a1d8f80e03f495d2c41a4280b7829d49d4c154a44fddd25c6c70f723be00c68f494de826adea3d83b986a356306ac5b952481133c7f45a14cb2c45031dc4c7a914ded76439c53bc8e01be973bd3aafd9643f981cc29e4432d624dc5168a3f073c39399963e72230f24743ea4addfe53b248ff25a00ea5534990bea7bca238fa8c737851903ded5af3ba8dc73a7d728f665df7abcc22f28aa6f6e97cba8dfad881b0483635e6dbb283fdea45a641b7137d167f817f1395fea4675f05e27397506f1b3434144ce915f12dbaee9cb37d05d71a6cd3a3c5beec818b34e77865d33e47c47e9171aa40a4b64b3192ca0e1f0c15c50098c2baa1c5b204cfc8c4c8179985548015ea471c96d9b71df333911ed1c84f63360cf7703a708fede735f95b33cc3c6bea74efe5a0e8754749fb520351b1d541f6226d02ae9205874a1ac321fdf3ca110fe1734386ffcb7f614943022144a3cc991727cf7556103ead353f7907016b0fd127d9a7acee43c6d64bb8a86df9e7d01b32370d72ee3889c6ab37623af923e4eb55bc759f0a9f80d1d3f744e82cce8e1ab80a01a0009c54910e1541098f19e52aae3d5df28648059561392ede1f283b04b0b922c2f4a9f2efecd6c833ad3e21bad1e5f8a9ee2fc21934ec7c2d1e1a390034f172d32f2cecaf5839b5d40aa8fb74db49edaa81478573ed05fc686caba8a86aa878e3fcf80228fc4f6875b5c0698ce88f185293b63c1265dcd68068325cfabe9ca173300b4af6bdd9427fc70ef3391f85cd21d9e0c63a24a1e29d1780e4eb3a35fcf7e92fc37dea0ba8417fac64d82357085ffdce2758016065f3bca253aaa190bcfd580571819722e09f84bb9fc0023165ed810a34ab14ca581f440f09de635c459e3cb6e5a430daa976fa7b978fa60b88e4c61ddd2c8b9cd58b51535f54dce859df63cd71581b1bdd9cf57d1d3e28fafd711d544ffecea07558048340f4aad97137dfdc154f0b99d070fa161955430e7d1168d55face445518df6345608d335b7dc364d9a4b8557fc63174cc5265a3e851790bb1b788101c54ac851155a791508f3dc6344a98893b0a0a690f3971f846dbbe576debfd3a9aa542d73ffd605df747ac2737731197d31a6f17722587b028658709ed39acce8ab03787e817c1c3b9b9c03d46a68a385c17dd2e6d159cbc815629eee2c30d57a9f1971e195c1f8eb18ad9eaea1244d76b709a57cccec92e44c5ed851ce0190dfc8ede7b32672fde535ba9f86ee7cedd3f61c0aefc35cb56dcec9bdbee7ecebfa4a5aa09789dfc325b39e43e413a871a3063658fc44f2d01bb1362956a13ee47bcb37c644da7047f0fc4ecde981f890ebaea5760473722b90a629515f0d00490e25f5e018a50f893228444a8c97156bdba4921cec03b6567db4de2e420910cc97db442adf58417eff6715c55e768677b1c8cffa8778613ece09c159a25b0f35197f79e3ab7a9393da26cd7e9002b78c33e7dc87b832c873b69d8ebbb1afd996e09927e0836091d283820dfcd8285fe1969741c550ac2ae0b4270b03d2b87238e44386638b30249351ad554df87a9a00d905b32420b316c04319b9888effcec8a6523665031e404c2272d28477abdd5766f7f839a719b1e03cc501d71ca3b969b01d04c0c8b348275cb54f6af586ed4161b3eff3dc115887d93cf64398b75f17f1d5f93d5a59b05ee3db98d6f62ac5ffc2e9e35bf1d48f7de72399b068789b5daa66f88055d007dc39b70914317c06220d5fce5b161dc4be2e7ce3494d56c9f2af16838162d791fa8170ac4f3e24b19a0dbe2ce12516d809937bc3e751f48c368217415c53183ebe3b82417f29d4199efb873b703a9b5ef6fc689af9ec45b3396bdd9a1989e538092f58c99520e6a4145317d28b2255f780361cf39574af794240bd7f566fed43fc8c4775359ec109adf661acd2b3be19cc4deeda9b2711d44b3acb8a92e30c8d6fd6e87371f58b1da3cfe676e104a3a6621f4aef8332425d8ced354bfa70d1a729c4f943c994b97c942b138f18acc555a7ba6da0e901bcce338b747ba4556087026b8ffaf23ff8c4fd991ec0349fb03f47bc996f09c8c7e62cc123a84d417eb5f7ee60d5f4260111816d6cab77cbe73a3bfaddd0c6738baafccf1e0a19b8a4380a29f90409e795011fd4b0c0732300f525b57374b6fa01989401a36576b6fb0c0dd1fdd501c9762999e4e88704cf66f3b1473634eeb191a635d268d2fcd2c9ba712b8a365b7d340d9a4c21e20d883e921cffee95985683e69b7f6e9ebe3725a44d73435bcb983c546c9cdf28648cdb31b756bfb6441f763f0f5ed3d8fca544727b7ff00b4bead770c4582b736966b2d469f675a5a4f73641741f65a1bddac1ae590b23ca8cc2c5491d8982068d7616057b561f902b431a0b21e53ab1b0c988304111ac9a7f17c115272d939e8a4b2a28d461ec3078d6df35a3214b58a08e0f83242ae429e00323551ea2eb0679286859ce2f42d9e88ec4e495b8c8c1a94828a5b8310d4aae419c39c437f8e535f80fbe004b40803f0a5cc2959f34f008815eed3bf4922067e2e242b2ab7914f12591e1bc32985b7f8dda1e84dd493b9c2c2d7a135f8416b9499ab4ed094b8b236ce6b3f264c2719199c97740b43fdffd9cd999a83017d39ff84edd3842a7ba3aac5996054d7f2bbab6e17835ee382ad107ead9639ed6b334575a16fcbc0da772dc7b8683fb720c03f3f0ea2523af0ab8d542b26a8337e7fddbb1687f57e2fe3dc87ad5b15ef99430b04a1efbf497db1fa79537e894e8da0b8c081cbfb6fe3fa3398b3badc4ab4d95485a701b91852e1cc096a76533bda84e58d6c0d8b3c27bf31b8d8f062bc831c0312d003e5616fa0653792b35ed4338829d4dd119a8d397ff796c6dc74f5b577c8bc2de136e98f4b2cef594dfb35868e1411e5a1e088a73849abcd7e0c6fdf580b90c13934f592d6c58b3855dfdf3a5594854298c3e7b057e33f438f706c288d6439dae464a54dbf6caf01df6d30fc0dac906c62bcbfc5c939ce987edd62a697778aef181eb7229e3091c6bd45a41f68ce0a77eb8b7149c213e0846f09b998819841867639d746ffc61b46b9f2dd25b959645cfaee98805f9f6506be2f7f7995ee699801e780ef46945ece1f4437ee843ec250b67cf0891dd2b11f3c27477e8c1d3d5cf975a43f63e6b5849d0df8736f948f26227c29353c307dd77d83c0f08da3b3dea253e75b33c49447e8efedf11cb6967d8a84c3d53bce815b68507261208ebaa39738e5b17b5df4c13675c504d5d9cfcbd6cd5f2f489dce6eceb8f8f4cdeb6811bf3c92b56fb403fb34c0922b550debf6d49cf3229965624ffecfca22e8ae3bcdcd5815fef1792ae132a6506d3b0a11881a5e635741cb4a55de9d37fa123ccd9be281532b266052f1cf6154a2fb619b42d3053dc853c9b85d9ad7f9d6f34adee088ce13891bb154e153af369e727a0a8e639f80700691acd85f48ca9923579898d7e4a1d5abdd1d5119b7e270e42e396ce7e680a7bc48cc91e23e6c6cb8f54ec38737e4684620532f810a2964c9f8aa016ecdcb11051afe1485be56ca7c81b733c7c610bcfb62982270bc91b828f74d0ff971ccc068862ce79f21c1f853b74c4d4e7f518d98463bce0dfcd9feba625803469553e9cd8a3094d99b99af1280d678a0c07b93c84ebab21cb7de9527cd7491a71906b6bb21a909d01a998f0f7fca4ff59073283ee46e538b05d40448c3deb8474d3974f1880e0d8bc02a8c2f6011327df17b21ff38db5134c3e5ae5bff3fb67f083be6f3a2797321c4af68a9734a1fcc0ae23c1e21e7c3eac14540159c1a5269a2cceacd14c00d447867f9b0be67ded5856db7549f36058e5be9e56d037169d000dc9bc0a8c437dbbf4a10f3ef2107f49bb472154297b08645b7282003b72337ef85c7891b6374bba39ebbbd0db24bcc6ae42bb20f8fdbfb073ff031e201f32ce02f754a3353b7e9ee8cd68d18c00311ee39abf252d95ed1f3765875ecad51dab9b8b9bb0f1a51fde59766515ebabb6c46bd455e852c9fa898e3abc70d216700d266c240999bda3146f7d4623873dd751c6d84a44e8bf85be8ddc97424ea1c07ac0b86d6e2dc1e1dbe9224048454b17d9451696a4eca53e6a99a48aa15b3e6eda781ab2c0ce982fd858fe2b40b61a1e552fa419baceb100cae6481de1d522b60382f8bb2e67e8667293e533544321a513325e14551e4015df9cc2aa7ebe13e946a38c35effdf37fcf656ad3a94f806dfb98ab9c28ad2fdf813b8fa56744a43a8df818cb3bfe732d685b08e64de0893c6c4279caf8e7ac2169ef9d91082701995432bd5a113a7d6288765b968bcb79113eb08e934238c74715311fefb017c3c73b279b2fb7501ba6afb19d2c34d01e3798c6d795ce456a174efec546ede2ef1ca35f33f1f8385ca52ab623fce7e3c2be466cc64e2b16d7ff8d8b428dd057dd2f6b5dc87f9c0107bfa0709b59d9865e762740959a16ec7c68065ee2ae8d7a550937ae2ee681f94ae803af03de064ac417398a36bb125457ae4005a4decf7e83a9ae12828a240ca4a64a5515ff9311645514deab3fe5ffbb0b4860e79ef28d04b5d477d2833b2ec622745a6adb2abf9bbad1d60ed554b80d560f2ab00a28525c1c509db827523f78bf3117f4d763d4b8e5984ad48fd8d954cf6abc72ba059ab0ec8b9e3408d006fa1b77ebbe875299856479adaf30411dd905b9e53b8c32dc1bf449e980ae93e93fba004508b830c0fe5080bf07c51ec18071f861249666b611e7a96394d5118bb821d9221746eb272759a4727b1e2571f0bf72ee114049e936ebe5898dcc25b64053f09913d544a16d3e5e88cd0972f9190ced5277d71ee71e627c7888bbdacc6d73a3bba76f504ae7e776d5d2a17a5ccbec5315faffa82c0ecb6d0087b4120cd6dc50406b2fe89f37f17e13962847a6990632b37d8215380922318f21240a1725e820677b18b51464ea66e95fd1899a17e684e9ec056035b2ec17241b214ac01a445596a8a3500209aa8483385c8441667431882d9d850640484bd9cf35c569aba297a690c4e9caa40d84c14dac6b6f5b947c3d669f044ed912d57a74b78daf9dd918efac5aec8b50feca49a068b1dfb71e27c31ca83fce6d1d88a44c91bbb75f1c232ccf17814c16b6a00cdb5c2bc19f0e14c53b6c3fdada070eadafed0cc91e171ca9916aa000d1db6324eee57b0ae70fd1152f12a950696d02de726155ba55660174a039d2c06d42e77f6f38b994c3783ea1edc672b39a1c32e428f4a7d89ad15150b223dd0e15d2301a1d943cbce880677504e55246d07d25f1ff842ff99c61047d0c381de2017ee718493df1042feafe5b6e828790d89f4e835c60c33f01fe5aab4096ca2c0909e34787d5b47517fe6b1b174e1d6ce6ae0e3f9295a6686a5b3fa489bf1524d8c5878f8303f492443616108f27dca0c9508c93b0ffde1502819a3173d984bb677ccf939fbf562967126b2ab4ee0e0e472d282bbc30d480c0e781917864829805f2d8a5e8da89201ef1d8686d758264ee2304473f498deb69842bd03d81437c4b421ccd4de14f614a7086607cc0e41b4c75a2260d5aab94987d12957f968b04ea2c7d26328fabc95dfb349ac067282878c358f4b7a36cbbc9391be0557d551a6853c2880b40178a2604868e91c619f35b2a99eab2272a7a4e65af6481893e7c85b78421c2eec80d07610ef97daac30165282c712bf665ad0c9a0ff90f7c085ea502c0fee3fe70e49b731323c1c130ce48e7f16e3444c056e7520bd7a97685e09a6798658cece155845d29936b7ccc77377cb31976e31f1368fde0b01581fa55c1929397c08839c2e66aa104d5674e82c6306efcc88e9487ae12d7e1afa7ff8fa7edf5b94aef5b9e24c290c5ccd774a610c0749d68d9c359f088306a641aa7c55f787ae90977e8b4f1ea637b38a6b72bb1be43ab915daa1f53a02991788a1ce172cf7aa0371a8592a3c7c2b6404c12dd0d09535d2fb119f825b63862e6934dc1307fede6933a1b11656dc45c652f806dd1ed43821abaeb0eef5e8ffa86f4f56d01428fcde27f396284fab1cb978f7c510d7735426232e8775fe4160c62de7bbb3607922b7281408d21abc1ebf22be684fe72f26acee6a39d5d0fc6353357ed8100b87021b051649b40d31de97c948be9104382348b6edb7ee90fa834b78d8e277a4345b02d64882023d5ba988b98315e1d591b312d31949324c59d161fb3c89d029adaa4dc09a5b60d369ce79eff0f732252dca280687cbb42d06ef62e8c0c9427fc79b0a8f38594bc62daaab68a7341f7926d3ada634faa88fdf22af98b69ca2fae7928631ef9e131bc4d7c7b7fb99efad5077e9b362a6defc3493d8de42a509d8b7d07b8400ae0ce347563d80708fa835eadd1ff3b802194f0f53e044142000039a2f7891f2eb83676e3a9bf25d586e5795a91985fe888269ef7ea1d45de9a07142f157155607e5e827ea50d7eca87da76ae8792fa8b699c532d0a4d505adb5bc1e3fef4a6177e9c8016e4b1ced32ec290a36b57d4ef2c9fd735c0b319026338cae1aeac25322b40d7a5251e062094e09063437a7d12d948ddb7f3753ab2ffd17282a33d39772995bb26d0aa1d9338355df9bea7b40bffe007f418977237b5c3b47e03b9d4bf3125478f570b7839372140f63f32cb0d5c3c271771099bdaf6bf29c2209a6b01a7ff4a328e8278dc9c8e13d111f463da864940254a202a3c43f7a6ec9dc51d8c0f778c01aba0461ea8ba044d076627045cba36e54669a1813944b9951b0bfe74f98f4cf4d294140354e499f310b7b07b718321ff7272a8c80f730ba50fa4d2b0a90a4aa26695ce9a52873944746e79b0043e0d86ceb0f3b72edbde10d1224807d080d5142a481d8dc8fbff5587062f755ce064e8920c331e2321ced3ea37cc5f18c9e407cb861a48de46ec216a594482e0a20e8e163f5b09dfabd971d033bff0d14e1c35564fddd80eb986462247d0b3411cdcd5e1a3c7c56bfe0a5b2454408d04a03c3e325364d90c8297ecf604f8bdd217d6f90be157bb9c63f37c73ba07e42b0bb521e91878ef5fae583467933a3fc90179f4405f9cfcb967e4cc6933c5462bfaae1502e5e3ad72b163f8d9028967caedf73846c514b5de5764ee2e2d2604169a9a75ef5ad173ad584effdaebcbc7b46c07d790ca83923ccbd1098b3ada35aad2bb6efd3fc099f17c8637d2350df8a3736050a55e35af5909108c5d47359bbe7f3a0042c04023d1381ba426a129cb3a685ae82da7b693901c89dad34109219be071808848ac3035d36fd102564343865a8e860564c5702355ca3a78e37aa512535c5db1ecfcf4e298d7df5f46a3ccb44584583dee33d3b73e3e0afd66699ab1ae30921c40f0ba8737f5a43d427eb1ebf816c5fe6d94ef9f5ee556652b7d3f585b37964bd8a9eaba6c6612ab7f8d0e0c10545d9591834ca6b1c74e20716fd1c33dadb00cdadc185975e3aea0ce8913bd34d43392e2008a7460aa5cf3b14e856e12e4f2923d72ea9a9ac86844d45799bead39e1cdcbe53d4e97a103306865970b01cfe7925384d43f98663b5a1156bc608d32f3566962d05432345b28db5bcdbc189033f85d349ddf9f4cc8c2736d7a377428d9c406ce167881b71da54f03a27a56463485f1c40ddea711742dae412bb9b83872557a1ade8664af66304aa5ec457571bf15c01f0720f18ef6b21a05a421c28e7800c248f8e89e3bcfe05da9eea95121105ecd476a370f75d5e1b942771d63d58851f03dae9af79fc9d2178407ab8cf4560ea8413c4e5279e62a61fd6f9fefc76008fc16576b5c537cb7d4e714396455de716da421548eb3e54d29dfd182f7cf92ead82dd2e6122eac4427d5ebf97d66d7084acb54938696e903372b6044df9d237c7db427d83f39342d1da2615df8e13d8c7266718cd1674c26e72f8ad476acb7d8708b0325124eb9a4af871fe9d02d8c7815b8bdc0f1b36e175ef882eac4340815fd11052ec9ce99b921e9e7ca58a8de5397363f07d890dcd9b5cf4f24760f610c2949e955ea0005696d76795b32ae4240b43ad417997a194507559243415216e3ecf5f52912938cbdab6942d5164e692ad443c05d5b388f1f302f2af49ebe4decaea81f4a1f09669dfa9c017ce2e78b821f30d2d7e9c8bf824c4e5321766f06c0741477d43223ef900f383660a68944b522b04cb1db51aaa271e42d16959ba06a8fc52b793aa79d0e6e4aa3eb90e640308e88fae566696d9c5e9d4f1a2398ec968b8cd86b441ed59de60121ecf1f1aa3b80ebbc68639073f5101e802d61826c9ff883dbacab9b58335616203dff05ea955c29ae45c27dc4d886c92ba1e31172d62568ee04c0cc9b5d301bc5252ea98853a8c3d219e162e0344982527f1dc50bfb244189112e28285253b3c45be312a9f99936b907ef693dbe5574858d99beab0749835f938bffcea37466bc99783b1f23df5b81317ffde19272be745d1f86ec4cdc5284fe48f15f0b3df37c26f09bff31bc8aea5a4200740a73f8fa0aeb9a41d6c2fb5ac777131ac1443a62c1fb364fcfe013337c9a8f48a7844657dec6a3a09829caadf0aee88188fd5c07d811b9206efff711195c6a7e25920cecfa9cb180d9943116a8b319e968785ae198b981669b42ae0999bb68575c8a97cbf83930c557d800355d3cf8db92f7d4ef286e9c14a8ea94b79664f7081f763d9d000a46edcfb9e63e6c78588f66a210f1ca4733a8ca34326f2e4674ac0d6d1d6b362c884ea48c7ad6d2e293091e6ff0cad7952911e3d45ae839f4c5f1136dbc88804d258e324da58f1898360844548aa26c22780f9c9e08a07735ded0acde73cffe96cd712483c65a58663da79061e85fe3b8d0ce84d102557645f9fedfc5294816dbccf87993ccb71ab64d1cb3fc70b13c848887afcd74985811f6d111d119400574c1f780d5df777b917e7978bafe2b3b525952ee5f45334671bd0b8b1e579e4ff9d1d20a112cbdc404ec80ff7d46cae56e8a322c47eb89043cb9f3cd7cea3e01d1339967274cf1190bde6157db1ae59ea7c889635a916bd1538ebb2c553b8027be3ba3dcee9969c507800acd8e2b99f39a9e7bfb5c09965291bcfe75e8f1d991fba49da25c733c0dc7f0e94f669589373811cdf17a0133a6d64c45407dcd8c35dfa001b8555c45719fd9d96c1ef8ad8a4996c4244de5a4995d974077fff7425592bb4b50512914e270db09689c1f9d53d538b33ea7ebf24aebf2bf2f7f914d6ac5b482d7d08589669444a26aca94d5632d014b72c9e1ca990da9d3e84517abd6d641a0de0e6b03c5b6ab47cb12a0279ec0ad377aae6c96120a3dcc099e88f28f63540b7502fecc07e8d1baeeb8b9c23df592f9c19f364488fbf90685ee2eb6f49a83d95e220676e369ad29a08575ab8367b57fa6a9d118b2052f101adf995f8edb05fa4c06b042e497decf26124baa0fbb79790b02f1c9cfd7e2dbf163f760bc1bf567ce0371b2d9b788a8126ce8151859b920513586d3c09128a13b7c9611905f5e612a1586cfb8f04d0f76a687ff27884b201cf29178e5977950afa36567b202aebd72542fc9d77c92dbfcbd89a383a0352cdb1e92cf9b6d4c5984f0e358396f7cc56ce4e12e9b0ab36efd2fad79dd715f7f101314c3ea7c8b06049e799449992f5845ea92b707d7f5f54d67a165f5ba2689305b3c167c06541ab105e6aae9516baf2d9c44e13c9212e1e57e852e2d22c55d5d4cc356f7043d2dbc697a0bd660187bb5103b64928f6e53051c2b07839a9cf0eafd41808f69f03ae9600851be0178bfcc7af1711a082a98dc7258f028bdd004d3cb2a6996058d7ba5d122896a49cc8be490481af80f5aa5079d882326273ac03b54e04296fae3118c099611c0c58aeccd028e482b810ba2ccca74899d3f6b7b93d21f75ade0ab46cd10bc3f1b242a2da611dcc6114469b243ed0bb57791a2afa6be647b8c6fd8dcc6ad6e60be61d66ee0cc5d466a6a6350e0b94bdc4a3d4da857c21c37339ec87b263465eab3b18a9580f91497446a31e5d87455d4f581f204b0729dd7f49e85ec314ea902bc0481be78d9da4d88227e43e39199ecf804c68a19badea3f3ae5aafa99fea32c05da8fef6868634c4bec5da9819fb876ac04e7ec15adf79c84810fbb26b39bc622b6c5ad6e8682c7f144af7034fcef7860bb1fb67c52021f1b73f268ed66e27c9137964c1950d297a673d08b73cccc5c9c373dc4d8c8071b56444147fb3c9124b95aee8cadadb9ef4af6ebb33102e3cfd0ad511dfaa4806b30bb22a1fa57cda03b66e5ee4fd7737e2a4cd72df7ee8bbdbe3fca1701239f845712e2c9daf2347e74fd7261494ecab65707dedd9555667860fc4417f37b25ed374a79fe25fc790e09a634fad254b9ad0d65873a7ca7759b682a3d449e5c7941a01dafef4e29dc29a0fba16db4d2486f97e9ca4e20a9026b70386dce1a7229d4ba432061b67b4f45c230b2c29d00c4f1c7abdc30d2dcf7999e30cf950941ca3e1f1b622f05060c8750869a6a5ce260376a3340d900dbe8111ce456b9af4dcc01666360055b6746024a29314f99c4ef7c0a43ea440edaa00808201e36304524ae09977bc9076c6385542d712defa645a0d27fa5372f822b94d2afe97ab051872f07ed794c0080724a2fbf13cd06949c43125a091e24da17b7c48784a610e984d2044dead93ce11ffc214dc44121912b14f758ec7e9f46971f6b032d7f2b8f9d2a6d222984a060ed18487940cf4322b67eaba29c7fdcda243349ba61706dedaa2560ca1dc38ff284c831dd53cb9913bdf28409581d19fd098c82cd1f35b598d3d3a0599d279ed89ed1975dde7622cfcaf649dc93f462571afaeb0fabc83772c44f2198892a057c9ab0dd7a14938fe54e3c73e34cd9363054cfbb8e41895690a49115cd40f2664cf4c74da279c9b44e9d6d1eca28bc4213f8cf3c9072b3adf82e7a3b6214d760d4745039982b0fde1aa0268a3ac31a621a7935f1329941213e2a9e5eb8d8163fe14615cf62649c51b3fa2f415c5208c3cf1546f72d338dea5ae54ac6f22be8a1feb252b0fe0ddcdf43ef5bb7ff0132f516b1c6cd13c00e87701010ce47acc27be09a8be9219917db30cc4592d1c61c56c5c4675313c7e02ed532e372964b73d5f963c21b765433cc81e402b5dbafa215a05b9ecc2065a58102f5b8529bbf6188adc7ce7ead3ccccdc1fe09f96564e839840ffc76374032078739102feadbd0cd7d0e80553e7dd4e1f6a070722a095f984949a58a7241c07e097dee679195ea7d8ba446f3b715b91549c14f5901f550ea5aab8a78aaf3d84ac940c1bee4a3262336f6d1a59509820adf332156bce902824510cee60d35d86bcca98fc3f8278c4f271ab6e1a4bf445463ee5ba035414753743fd0d93646d2906d5e9d9db1cde339505baaa02055aa5b6331b3d5c139609e18b51afbc7260c14f4fd2a309cdf673a1f0f35d29a7a80563f9f50279e86db92ecd3d057a7a0704e69e10b307ad9edf4ca3d3c3f823be4acb5942e2c961875033e2a906970832c28699f9188e244fe598714aa82d0faaf287ceae2bc5250932465f14a2d3d2752355447fa919818b5ac7d071a4b0e342194104f7132ed1c711aa351ab5469535d50b284fca4ba3957a9fa931308e23c6eed43119c531ac763d3fa9d903d2f23396ba094b161d29dc2fe96267d651e6cb0e64ba31c714b8cc70a963b25b9b336a3f88862af2e49db66e427e097d75f478a22df7727d803c255bca13ad826d97af5826126875ac1aa849c55d66ebf4c54e46e05b3010137a4dd2c0b7646003f64b226582dcebac18840eab6e96ddf765a8dfd6c16c92847ec3f338fbc54e7e7f543c2a9196591410d5d9a4cf0a49d302d98c80e4bedabfb5adfeac6bc66451781ebaa10793680b30d9719a8386c057871939a6dac2ac2f04bc9bff045c649afd9607221b5223ad2d6bbc52a0f6bccf099aca126e85a8bb8e1e98a29384ad32537d6869bf3aabfa750ba674c7e6da7a980bdb648fd9da29da740bf8f7612c74a7d2b08e74532bb88d6d7f296c9acd1b303c8ac586579f7d7e4e0069adb831ae55a38f89d903cadecf6c220b2d7495f8459c65366c80a206b6566e72320c9eb91456505358a661ebe827fac359dcf4f46979d0eb8c1ee62babf9c566d647041eb97178a443898decc3e5f6b54708e7ad46c2ae714c3af0c127b619f938bd6f2f9a44a3cba7417091a128c4b8ece30a026968512c9cffb6ba693244d6364dbe6e0ff2b80e33011d0f3bbc820cd24d8cbb92c95cb6c730b73a6be734c56cbd021bef8ea6f46e89da7b26f03c09b21aa24196b1aea7681c80a6d78135f97a8ce54472b8c9af7ee6dcbd4e5a32f1ca73f44f2c91f2f7ef0ceb39c9ebb8fd8b8db8d8a5fb67d19b16c1469320e96c55342548f880cc5055cb8cce50a55be87aa29e9ffd95f1313c904d084a726db0a76c75aee25b14366d350e0c5f76cdc41b36a34f64abdc76b15ded5b306edd9a37ea246f1e5fcda693ac16ff67980f0d47eb70de273b19123da248115e6bccb8001ce70c59e9a768430ee2e42214f224e21fa771d74ce89274520c47375bb8fcf209ee29bd2e7a24acac950d74e2e8c4298185a147e82168cb31f4fac45733ae599a924605c57cf2357d00dd43e787daca3d6cf45d219b1a27ffa83fd506cbf159eb49b4dae6af5afaf093b4e65226cd6a6a39fca0224f6a401bf33456009c85ebfec07dfcae6684e57be4e38f39884964089df65b3ec9e7cec12bf02c7ec82ec3406c93c624f049f3eba6a024a40d9bf22381dd95c7694f234fc5b82b7577e8d13d5ce88c1dd22dd5925d94732d65e6563796dd9631f4bd636956cd6e412a9617a0e543199f9419141ef3a268b481bc858c7daae589cc8a4bdc27a138a3a70c63dfc318ff7ea220e9fb744f2d8c1932a20a5fbcc91df722c984d7001c16b6309471c973d27e5d8eba88f6797e76e2acec8f7718f99b9a6aa73570013b26baf82e1d3bec99f8c5d5e103323402d15031d0e38392de3f200413472bb22950906f381ade0dfce40cb818789ba26aa52c59e5360c27748e9e6c1738ed23a5b71b964eecd9069bea8e30c9513b7f28788af56c66b624818cadf8c3be1d2976939d06906b56c151d9581f29e9ba1cc5031d97200922dceac59e29a1597987d909e2caa34cfcb341a80c6a4d51690cc0f6f0bc25f3a31d1b63bba6a9f1e511afab2e51132b9051753a0b52383cd21f7cded66107ce6e90fa3e7410ffef8619eb6ba33bccb81787ed40d0682c7b16877e8838d66e7f914dd3edc4dca15585207e8ce9bbe7b335b83859dd4c98fde1bbcc1c66d95a9151c569c2cd94bf46fef2f83e9678b3458c24a590bf028ccf824c8714607e8d671fca67d3aae2a422c566cdff17f5fbd59307a8198f7644f44c9071e8d34ebeff9022177e1fe7ede2335f90718fb7e45d78a786d6e968aee6d22b6fb299a9b967e96e6ae5edfb9f4e10752c12d55d18ab9af39026e543ef8a9bf386da01c1669e9cd6f440b4ad8c91bbb0dc662aeded87225bf1907df5963cb64387ec2d2630fa4fe4997dcd0e7c5f39bf998e6055852ef3df5e1fdfa3a7dcf60a757feb25c2adf288a05f2e06bab315719544ecf0209583849226f853cbd7bb7302e6c0b509b529ffa845474e4a55c00d369f29fc56cab61630a663bbb83cd3673fa56adb1e9533acf5fc751d00d8621518bedd6833a162ca3636be86b724b11bb7bf6340d3f7496c8b52da3b212c56a626f37e35a55fb5cb507c14566cc96faf2f8fe918d7e9e9c78b152a1f6d0b01a0628253ac3c748b45a07574c9f36dd25f258f1ba4bfa3be25aa965c00dda7e0b57ff1fb7d075eafb2ae9e5f72ac8a5a1d7bd70a114f0a2406aa5925179f6c56a0286515954f653dce3483941c7042c5dc2d8337410f27bbd31c6d566f6052be87d7c24bd3b1cc3b3b906ea5841d27759cfea0da487d6afdcb08bdb56c3055376adbc97cbc44e7e934b5d855cca5a5ab11e9c5e62647a91794395a14c41d31ce4f2f4715de4702aff73118309be55658541e3058936aeebad3d38f104da67f2728638690eb78d53cc9f3724c74e377e14a50e61e0cffbbcb97ce04e1f455cb800519862558d02ddfa14a0dd037296353d99dafb2bf787c61f08508306fd57a550d11300e03f39345aa634047656d08afb0615fe66fdeb73571dc65eae7d0615cfbd35382b62ecc518330d93a36e2e603fd22f8b7079e01900cd9934ee24b3fd4749676fe78463153104a865ae859a81d05c52e6d3ee46ece78bca1ba2ad9eea52f9a4f6265203996c7eedb0cdc2afb9057acf9670a61efe53ab9f22f79529206c176dbbd870a8a2dc47235b4ada343578524874c6a4e681adc3c5f56894a9ed01b829d66e359e0b64fb3f121c98f5ca25e6351c582853b85205aafd574dfb75a9a47e5139f39aa5ef29e106342fff5680b61a76debbddd9bbf453028ca261cd7140ae88dee30856d687ac7efa37c8a65ea1d9194673556008294cd4874c6de7cee482ba8ca28c3b714da0eae0bb50e2e3da5a3f0f6c2465cff3cd2c8eef6b2017857c2bb55792aba8a9bdcdfad750d70dfbad86e09f6d1d34c66ed5b1493c7b2a72204ef943cb8f8096a777006fb5945586bed28bb3eb268d6bffc58c4ee141287a10672f198073bc938562dd27c40f228307a8fd164c81d16fb40e8559d1ffb8bfdaf4d94f2c9691a70883ed9b8c0347b0b7e21855386f0ee89e70e9bcdfa4c5fa24a2872b17104ee77339f945c42d4cb6c1f0225083f5ab9b9a803fe89088d9101a5bcb0524501b7dd5f2502e99bbf9ffc65c6c02f7c80541d353384a22842c2e04c7edba6eec2fd99f9d0d545c9f2b426f52b93074a4dae450e1b15a393f56ce436593f62db33e4d981301770d4c134518a05fc38fe94489d3fa5264f4b61dac18b381d732cbf8f36ddf810d9561a4a134da40d0071c898a36090b784ab8440d375c6409009bee09b9f699fc4116961c5d3c65db6819e4c2494d9e90b5ffa09f79adf117a4d25e408bc543bfe6538e81d1e3e49d415c28b1700a8b5ebde1949eb7169021148c884c0844a38265d7c93ca4a0fb4717224b3e444c9d5714cfeb8a06e33d8f08afb6675372a6e95db141c046c056edd7884094a679ed3ac7558ce0258655b96a0f83e06b2356ad73f81db8505b5a7a1631b4a562eead8922d6048bce168b10be8227a8d4983a1b1ceccc9f776b9435b6256e82b9848bbddce0d76082561ac5cad239986966ae8d21f39fb87a7bb78fb67ab09525f457c4203e3b9ab252f063f3da011f175680458276168c2076e5197f6af2ceb8aea73ce2668a56f0ef48ab42511e97cac2edbe95d9317dffbef3ee0977ec287d51bf15d601571ab8f54ae0811f708bd95080bf523c667960792cb2757e817240d5d4846c8ca80b593a9bfa24e3f68bf940738bdc733b4574caa208a3edafb05204430713a67970a07f02febe4a4c68f9e82f6233d164e6078b2006ceceb34c3c29fe7c25f4d5d59d19ef4b11fb41fa559003b23342af4a4c0fff143082e74fe98c5df130ed0c6db7faf29d5fa992d49c9251d41cec891dc389b3a27ace42a6cf7bbcdb0fb43ef5d03deb5e5f5eee6ef05f6da3a06a2eae5778aa8bc76edf099a0644b51a07d1207e7f09b89654d57ce1693d5c658588f562be132648b5c7a709945143049297ef7c3a230beaa1a22ffe222f97187849e9f289c6042d85b0cf530492802363715e072e263f8dbb9bb07a0cceb7f26d9043cabc8f1a6aad9f88822fcda940f446959598352e1a9042e940b7fb0bd4e9cd57cf982cbc777d05ef1d19b8b797da008297522feafb199a2e2ce2f0b5720675a72296a3ab83d8595c4e719d54217cadc657d3de5f47a78d219eb8779d1784cb5ebb244e7d46e6245cef99c26d15ca7eaf29c90c68f5dd5ec02659ab8acf33f95008903085251d01acb93a72aac80cb60097e403c40b9d90f74d921c3a87d45866ec6f02a49670128ea2b879e6b67756f43cb9aee28e5a26ed249f59c1300bc54cafc81bdde8fbf53a26da61444a95686244f7e9b7badc32911287fd5357ea364e516f51fcefb7ce609d42c865ed58d3f88d89a16c6ead76562656b25f47601b49bb649437c592651a125b73d794aa2e0ad8162cbd4bca34e94d2aa8bf5e0fc7a805d53120fffbb129fe3e334feeba468229a89e66fcb534e934b8c13f0812069633b1ca94942164bbebf4affd946579180c5ce33444c7026bccafd0c88634fd9a165cf54c696d28a9743288d749607ec06e0aaef3f19f4a096c0567a8514dd0868eece5aebe04d7332d0a1b89ffdc773496de856383d5aea00097f91852e5226ae454d91e9f56d111a8d8da7ee082f00b54938f17ab203d129138aaf3a08cdc76382d34b457b5e906ff1015b4c8cdf2eb406f6a4308d044e91d8f956aa4ddccaf8df936f3979af4004c625afe06f22688b58a4a1401928aa616b6f97c3d863217e6d8930c8f196971a2955284030044b1acfbe218973fb9a77221862b7df34cd0c6114474e4f1da50e43a56de8d6dd4ec5357c72a004c1f4279d0b68732e7667d0cca6c6461048161a5653b98853357819e4ca4c8d1e6cbc36ef7bc687e0dc7ea30f8be4e9abfa1b61e6368c14f539a8e80a94f955be88c581ab417527f9609ff7626f6769b214fa5aed53c9bf7e0b879e58d85b99e1833a18bb7821954017c33e962ae1f67ae95d0c31170dbf2696c0937c9bcaac07033b79518cd8ddf2ecd4d2b54a2b89fbfc4c622eb5cc61d6dad9bb376ee6394ebefee2e5d80a930e10eab06660cc1a6859f505af2c600be3747acf9c9132d7639e9ea2506666f476b176e6e28f4c03444e961005e7710dd9d8ddf6f8373027e3c9854509fbbe579017cc86b699c81bcf7f6db8bce4b122b03b2982d03de325280a6e015179fbd7f19476570cba7b73210f8a815d83d9d23a91c03ed63677d1d594471e5facba228cacd09eb2ceace8e9b454bb9c756a72a7b7a46f3705dd1867c395bbd6961505f8bede3518a2bf6f0f7744d06f17b58968b790dd08d89a621c0de4cdc51d51aa2ff363edf4a820389ae42d2397742ca646d6b0ff19db7c3c3903d4e435a519e5b48546fd24ff440aa12b08f574a4c880cd6c2c0c8d2d5b0189af107a5a546b4bdc6aacae9664dabf63b4c8f25cfce5639e47f6b62c5d83900c7d7998843f31e20c9c95f36b9b95e4d031ac2c422fad6d1363e25a5e7f87b6abdfc51776f92920bacbbbc90f58fa66c4b463a0ac8c51c9634a56749ba20fc3a0beba0c8520d7042840f5a95f2a8d1dd0b0bcc852de43e2ce087bdfd28e8a2727f167b6fe1c246e9b83ed0a711678e57331eec50f9369f0cb5aa11c0da0c2d30d342be54a6770c06d5c43d9c67f6c981c17307c0964f256339c5bdd9fb9738bfe4a32955c17771f78f10c490ebdad319c0a0162b36e20684c677e1a9e8529ea4555a21f0531e92a326613ac34821d8fbc9c1e43b7511973de34b8ab9b48e549a3a4d2e90362f8b0ae849214b563f886cf2590e4a4c58d445f8c8690e2fd838fcc371c8fce65bb191e1400e6c6858f8048d988ff69d923b0f7136f3723da16c832b3ee96786e4fa1ccdc03b7ce2a364dfd67f2c4442ef4ca164024239371f8042bb58b87071346a4bd1058af74bbbe841a0fea025b70dcee652cecdcf0621335ea46cb01ef4f99af95e2cd3716280c868f85c382130abc4e7720a128e7b2d31752de873e2d86613f5621327e2c3dec1650bd711cd943497321567b8f80dacb4e62dc8c51aa9dae9e7d893000ee2a855d83e71f7ce921f7d28e2f70a9c708f0d19ea188e397ffcf970da506a01fbc8f684b8dea2bd45c241ee197db088f5ab6fff81592f2049be03b442e5f6e71cc12232e8712eebf1391ba49dd605f43f0943081c3f0bf9876541ede8974ed28da77d748403690f4b78f01d3074aeb60f0c2a5367162a74e139740a86efc7777458d5228c3008a381a60f51c212c84d31366467553477d1f97254e10933901e3287eb10fcbb6c174552a4d9da2d744aea489e8a31ae2eebb44654797b8dc04e52ffc90a8ded61400df103813ee13d834673053df9f08eefd9af4b9fffb376a9e63012491a75329af55839b797826ffbcb328f63764e41f55033549b1224eb6981af121f42646906a8d7aaaa605362b674fd28362feb666d018c58f0c14dfb142b25ec60ce1370b75e8b84205c7c282ec425fe5584d710ed5fed4e15361ef905afa2ae94ae1fa70cc2ef39ab7f0fcf56b60b9be610cfe7137c0807ebfe1085a657cee2b19f60dad38c5d98da2af75a89fdb49b978d5f5392e1a3d36c6ba4d4991fd3a89f0f88427745607f14d323ec4ba9d022e8d48c664bafbb9dbe42085a23351531ab97cffa8648a117c467e195af9c894d2e7e6706786b49158a7620861cd78be720fe5ff0b44d87aa95b137bf003967350916a13dd9488543c56be7869b5d28c94b8b55a2ceba3420424c092dbd9ea3d6792fc730316b80ab50c8ac5b9c3fd5f3a19aba35ff00b9385d6e6e64a300d94e87adae95fa232398fa52a871c9a5cd72c0ca1984aac35a1b173636dfbcb30f7c74fc9e2729247735446556ddba8429b4b0e11df695786a7b14a398fabf5a22dc8b0ce7ef0d8b8d9d4d15d297ba0a9d496f9f84e2f09715471f9aa6208d63332fd0b80ae869bd9e129a113925a49c94a98aeb409a40f0081dffbb16f67e365f82b6ecc7b0e2c38eea1a3c2d205fefff7504067e62088fdde4244c1ce3003e044818442bbda9dbea1ac2fcfadee64c3f8ac517ed99ae29f32ceedac128761047d6a2f3dbacf5bdb4736f75b2aeeaf2e63e581b44222d8be58492574c07e65465dba32796edd13ae77cb00fd9909365f0a60941a3a68bdb4f050c5b7ddf0118875da59d6151228ad899d44fc015671aae20dac241a453be7f326219fdcaba687fff159af37ce3875ff7d3b9ff30130ad63b64be505e1fa36cfc6dadabaee1458e96a5c7e5dcee6cac8c671d087d6d5cdee5ad92c5507efc4aacf7ab701007f2b289a7b4c4e1617547eae298df3bf5ff67021a9a53200337e40bdcf7332ddadf484b646f7ff4f1b0034698351310af268c2e4d00dae762a85dfecaee963e807c08514ffc6a0336983ac347d2aa573aa843ba1ee2f152fbf8b92f20d8d21991781a2daae46f0e2541c0981e08fed9da5a099445751d5263f0ef22010f0d731f1e252b416e327e0fc9b7d970bbf09f5fe36a3df77ee823f25db8a6ce49092c1117b9f0d51cff49fcef9eeeae7dd24f319de2f8fe417e26b2751056cf73341438c4665b26c810ea53e6e382a8cfdb9e630b3c4cf7891fb557bff9cbbb3530f9472d7c8cada4c14d6fdafe2e3932997abbd6883f3522cb2f95a6820c646bad85adea792e46542502cfaeda24301d06e791eec7d8c5a149f7ca06dbd795c64b514852a33493febd0f992f2bc619d57c11089ab58c8c40903e94d1a95fa88fbed5b060c841f237fca18bb5a594a6021c16588b42f61cf513e2f1b8e4d6eb940ee06fb032f74b777abfa51c233c3319649c36fd09d04e8be92fab4f858cd75e6cdda958734909eb825a4bcaddf4b152c270159b6747762e22616c0832d6bb8ce19184cf0eb89b5889f5d1b41b9122a5d5a3d19ff0faa2ff56379a70a2b504e254405c02e90b806c4f6523b52c966ee3365cf33fda928bde2fb1f8a765b779907b41649f0de5cd2f94ac03bd5b7dc0a5d549bc3bb1d9a0b700f8e812862d9ef0075216526879746d01b6cd0331f61ea40832e1e05174b7423988110362cc01280443c378e4e7d9d11ef99ba0bceb08f8e2eb720838d6394bb437e098c5065e8ddbd2fa59028fd2dcc7f02c2ce5976fad8dbf35d0a34df24996ad62a29aa494dd774b5968cff5732ec46c5d1a50d3c0022406b8e9a7a1e294ce5044242d1fc697dd537cd03f5707a4dc50152500419ac25707a35fb0d7512adc0648ffe273628bbc893c39f2a4af8736cc05f1637f015cb199671d5d276f5de5ef4249b94e87b5e8cf70104e65ac8b34c36ea3049d4d782035e1b429012b80b6df77fc101018ec938879b72c82d85e8c86b24bda0f1e716a47fb4510f89c0d04b89f1db492a3f355e5a7b3b45d682c33c3a067bfa3fc4b1bd8a4aa648b2f79372a17a9d9f13858a73db96da00917142508953ad2444b9f2020b4786bb5ddd24b05fc2e69e2a4b5241ef21eee375f68abe8638b77a5a7de78c4506911de10c4e98a189fbf206fe9a050257e320c98b0b8bf98083273262f3234d5948ccd74ea989ab188e2636e10c00124dd59ec47ae92dd587dd0604b702a95daea4c684b823203d7005c6f8cf37c244cb2053ff2baa4b23d8fd51274c1bdf6a64ebcc49d084eb0cdde280f75bc5006b9456a437a60210017abc8557dfefdbc5419ae196654e235e64ce74871f52e6d249172c6e6d1aecfa68bd60512f1009aee4d84a2f5166cbb03f38364b380c208ab516b086f9131b228f77ab6f01c6b02a143999cfd464ba2c490c0e4e900eafa74c395c1018201e4e7000edec1b7a27675dbd913b79c173e0cd5fff8b25d33012ae2f95159ec02a38c11d1704cab79ba491a546c50e1f082763505da3d662bb7c412fb2c816b498301adc553b56a87f4833d089277dc5f3b78247f1de9ede57eb4e726d119b480fa31b47d2d588c86ef6cdcd71ba184e4381449f3dba48e8c3375738387c5befd7945ea24054e056bf51426d777ce32b65aa53934acda47568201d0f7cb338ba3ebd74427b5cd63ae188ffbd71c63600256e497685d74a517cdca96f5a9769c4c6959837b43d53eddbeb875b59578559a482bb00860c1a738d290b183a9a4897f601544fab31bfff2c8c3e4d9f7a31898965192e20eb7f773fdb1a6b4b68a1ab930157bdb4a4735404253d74fe42e264e6942b61abf3a6935195593b64f423d24861bdd38db64e403777c617af7a41764184515bfb01191cbe53ed95d45aaaa25fd85945b6d0c3a9d1d523200a0c994dab9db3a88f549006d86b449bafb6aeedb273beb5be7ee81554db60fe274e2c8d63fdca68c7f5d35600f92ae30c4fc3f05494d9b964d350a973ac228282310d2b032322aa915b5452bb4710a4747fddeb76b6e84a71f943f0c8e7b9564695dca9910d2aaa2180ee5f97716b3eab634ae1a269ad78137ef711c07d7628c94a470d13aa1d1fbd3d0f30311de19f32f04b44d0fa0ff3ddc48d58117296b38bc9ec390139a7731f0d5047be5c6386629b87e829e814ba4cc031d3ed533031c891855ee6591aaffdd4a3ddd37d6189253c2861b037a1b600b205a41d55344bd576f8dcc7d4a879c39208dac781c4acf6e564cc0529d3d9dfe413ec94ff06eb8802f025de1ad3453d8dc43cc8f8484fab9ed0fefef00d2775a4d6cf2097300ff474b6833b2878d4c670888f7c2f114d2b96cd25bc9bb8a7c1d7e18e9fa16751aa640d0b6831665b59da378fc05295e0ba20332889a8854a933144cb24d59207aee54530a5c125ec3b579e5cdde96145f30a2a17b98d4063cefae29bcbec4d702b66b03c621d031b8c00b78352527b26b8f3b62f30a1c92d14e881b8217692744f7659a8f7748d984a3726fd0d4478836e9be68dbab1598c212f3ac155507c70fff1e840e15bf534352b5c867ef20672333f8ffc8cedfb712b32452eb1898205e58f1a24e6b28ecb09ef6d6280955967f48c8b1c1d91193dd105de5a123c9030d62b392f6f09e4aa19377eeaad4166408784ca86972631661195523da2045c08cdd34c724fd9ac7e259cae2816ec734a290c424fee64a20894ff5591699e5ca881dcedfa3cce4ad706ca04ec641cb5a60e0bbf46abbfa0f758dc14bce117513b6dcae98c70ab7bc67a61f1e22a6b6d142c58a9a73f7f8f3a8ee66d8d32cfd8524ea35d3d5669eb0db39ac834c0563cb6e977c0e56c6dc90a7bd8e8ef2771d82b9e2250f8ad19eac6920d004cd9568ad492ea908cf3f6e810774a5ea61162a91d9f3cf992ae9f749236fdf0500a4ccb583df0101a810da9bf6870d3a9e7d9a8b85ac221ae60e57c1fb94d32335371cae7af6160f8f596a50576d6101248a2d1cafe3b82beb8d8cbf69f15b8e5c2eda3eb8e84515b6e9f6944a2a07258aea2293a14de48c112cf1d100a6082dd67e73141c22313ef3df979ce087cd292e3997dc9bcde8ea93c415eabd82833aa640dc63c8f839815c45403c556fdd78afbea3923ba8d4222c3b7813d33e368437bae3cb909a1be0f493c19c4caa7ed536bdb982b47fa43825a4f8f632eb551b312c1f02c04fdcc37ea07c09964c5de7b802da93d09bf8e4c492d761215ccf7b975cfb5d55919854209b64f01ef1d16a7ead43fd1bb585a1f04d301212ef66703033a944ef51f53a22950abe0be2b12a201c89e3803547298fc6de06b4919398cab91ae39f53a28535b020d13138bc845362c5a08f22ff823ac31db026436563e8b50177ec4606e68b688586779452e12100ac88dfc6ee38f895e25ec6776b380f84b5b98a566624d2b5fdc47975edc536499cb9f41359e2fd560af3e9db85e708c76fc2f0bf3e30f4074e38eab15aee0b3f4b20524eaca358ae4d906c5ee58fb4aa1014f24df797376561ad0585f02d209f9662bb179c9e827fc5341b1cd5d652c9fe282503549e0e81e6833969d537fd542850931a7b38bafd99a515e2453c5a4301c4e7dcd410108816935b8ca3777c4b7368daaf9512aff7d00e69298c93ed0ad2cc72a182503e2be3ceff32b6b96383ca739b460cb2ccbd6408c8acc39d9c7c2c024d223d1eb77742f3eb8dfe6eb1c18dc961145b43aa84145ce8b97b43436b90a92f37dc9f8b237da87f8ef3f8a8cd6c294abe38c2ff072bb03c5fdd1cf5a066b27e26feb08a0046183a8fe592a299f7fd80add2a4da476c71065d58163b5ba51636b799a1849a5e3cbcfeb5d8de7deda9fced72e2fada83b08d700059932140a54b3b8f05c6c5c3d8737079a1707e95e9df18597b4e86d3562b178fb560c5b1857cd0b4fa744be4da50747a1646a512fe2a21e16374d5649376787622ac01ee8a88e4c6301ad48bfce78b6dbabdb59556007ac4d9232f61f6b49a8f6b9337de41ca10f892994348972b4f89edc1bd2d83fcdc849cc4b8f64641870f453295519db92c4edae1ddd7c70d801c8111b08402ff19b571d6da68d8a38ff000218168d06b541f4b4df1f278085811b519eacf68f8583d28ac357743297c46c9843dd41c3130b6adb773b1789cef39de48722b5038cb3097201c04ed27ac447cdf2ca17f0e04ebb033ca576bb2cdae3546a587a9169daf4e0ee7d30f61d4c2c0c5537265bc75eddd509771edd257b04e5689c2efbe34fc5142c1d6f8caf55c0d0296e7e0f24ef2facc033d11bb5658268d00a519954ce95a49a1f3aedd96f48e28b982719aefddcfe0e8b557aef5fcb9ba38297d9651d93587f495ed24afbeba2c98b6ef9980a3a22ac4a85e1690df986718dfcb8befd8d85ee5b08220611c89436c25e1ab6bb72a58b47ecefe0436f2f191cc8a4d7607e8275f7842aac7a3ee323090d43fa1cfc3172e9af570c8b0e26bb8740e0c06598ed47deca2025feb89a0f26faa7edddb04ea5af698f44807568f1c0ded7a011fd149fff7d3198464d156dba229598a77b67cf612649dae66d3b6e7d0b1a8edf20cc0a9b663ceb884b0f2479d5d6fc094a2b6c0067d487d3153b0834df096eff272c3df1e601208a38dd1dee34cd57a6e1ba43cbb0a737f766e6fe71aefc52ee26bf7b69d6048853278d32c58a1e30014ee50e1ff3d7ba8f0f6f882728449b45055033848bfad40a4af828a5ea9b58a5ca4bfb6e27b2637c4d9556824e1376085f18265c03cc73f1f824c74a4630e22333af3a082aa9b015521b7cc850aaf9f3c94f49ab29b55af1c202c8087a22d4e68482fce06c8e4de4fcc80d85884d0431d79c5eb840a067a82a7943940ccb5f5d30ee3d6ec305b3cdbf63d5f74a94d0d8e47272bcee4e453b0ebb57235d3caebdb24c9ff9911b8af98c7fdfe94114a54cddf1bf7cf2ca13504e652bf496c29dc92945b5d4f9674848aea55da4355e9b0f0807c8f92743fe824ade15b2ea80d51a36676f59f3fe022cd3e9058f62f4deaa80740a8dce0d7f1495e7465ad9fc8a39c1f83e551f7f40bf13e2ea707cffbfa22fc4628f974ae763eb1a12c760572e4aa6b754fd49a3ae5f4d4566ec09da0a5390ec0c04fa13fc1aca3c6b7722fd756da4951a778fb38d3154df19d8daa018102a45cb7c74be4b9c63b9b9a9e780910962b0b0e89da2492a2bb2e39e1fb5a4fe0dcda6060212e42eed15aa54356338c7c489f5af14e52c625fd39783a87804f52890ba34f32f0e35be66d9a8eacbbf94552892740ccd18ee8dfd1e227d51f7749251ccfd6976a81dffea0e73bda2f8c88b83109c8b25c38b259a94b04d77f401a82a4538bcacbd8bc4e6883ffafe71850fca24d752c61739d3a730d949e28f74141a6dadfc63ccf4610909ca955268c8836c7ac563c6cc58cfa96513dc3230ac464f6c9ae052f10fa74b3c2287e309215b28ef14012e7045b1d8ad5314e90ff85495f3c008e8e122658ee9aeb19b83e9f9edf3388f40ba2f85688a276b6f1e377b74e011605d7585ce65ff8c0ef07cdba9dfd37adfb27edeb354ea16c6692d82337bd4e8a40b432a661a5a2c8964698aa24d0db39ac01cbd41ae0bdb9ad607636ee8f09a94702a41bf9f87b7ff2c04d96c301fb5a0cc6eff69e844c1facea7a63defff95f02636877f26a4ec470872f9ab89ad4fa741154349e0208978757fbe16ca91107077147f6498fcfaf153ab2d0757d1ac9dcdd663c5a012c7187e390c90f3d62cd0a3eb7947027e51e228d5279c0b62e3ef8c8515d6a06f8c282f3608e2c3a7720055e57ca63b6253b6e8061e353e685b87ee5edd0cf03a045469a6d6739db478974a4c6d2389e10568f302a89961963d592c97021a7a1cbaa66cf15240f3b84e8431c16b22d345a5f20a32304701378964471079eed62924cc93df60fa791f1de370a5cd282de2030fde4b070a209a93f336611f0f046470c273dd358087d99606f04b29f3be3ad30a0de3c71749cab8e7118577b81e9c74cf0a6d36a212bb544b6be857af0baf73779d8e86f1d0f1a9db13bbf92a6b88c83f78d6fa7b8935e252bfe1b96297d1bd7cb978a70a26dd3c359bf83aa3d863b27914af9c77fc3abdad2b85b50a9954c658ed1ab52f0312f911e88ce3b18b33b93bec7f768fa2c7b9d9a0489c3ad5f6fb279d2481a8cfbd063e696f1a4097a1d127ef1dfd37483c0a7aa7d6ec7739854be97e2ad6177b1b5b418f3f3627757ea15d77896873677a7016b49a3e841805a3e296b3ed8c0e70b04195637a050da7023c3829ccf741f9758e15c2e39299c559c448c2edbbb6f7254391859ced3895734a3c066bd8125083a93642df53b6f94c466358ea3fbce46cb6e73d0ed4fe5126ad1d3d8d401415c2e68e8ddddde5b41deedb2a56ae3f94c57a08710f928c0bc682262cb71c72336aa229f0f4523ca471546a9a39b7dcd390f1b8931acc07abf464da8195f502b73c1768fe916549c0c290883459128eeab3afe914ed64015fcdc0a8d1bae777d717bf39279f1a394d2c898967f8b76dbb6d681e95b6ce81a9ea62139252b8ad00513c3f112244b90e260391869007cdcc3bdb1a180e59bfdca042cab40be6abb5ac05c27e4847ca2b8899b979c47dbb07adb83e848432c9cec2df1d8cb168d9d5e03e968f3ddcbd664074524ebaaa4db8a2c4654da7406ad3d1599966a082692183fb6b4523767226347804b0f0057f3228f6205ebfa0a3f065b4fda47b067c8baf8afe72c33c574ba6fa3922ddfcc85beb243e272092927de14c60bc33c4dfaf45ac03af3243c367f225aef975601e733fbc8dab5835935db9ac2ff4940890e9142c7cf988bc9b3583a4752f59ce9a8791684f3a7d4c5552dde5b254a11b33bb59cbcabedd10834e9cd9a85a82b15d4f5a4a2e6f09c17b4f4c43cf068b854fa8a2efa68a7204d8b18905f8e48da4c8b1d57444028f7958e39099f1d1c407c5e8bb4d523be757e0beaa6be5e5e872dc2e5a3a23028f78802dd4277d756a135bc396f78d6e4fee772d94d09d27343344855a8327492c4cf95db366f5b30a50835e2054d9d8179bea947ed81a19114b93aa4d3187ca146a84cfef741acd11adfb11fdb43944868a1dde34c42c0342321dffdf3d5fe3dfaf3521b217dfc91338812e7b752ab7348ce1c2067c5f5f48536cfb4f6204d09b3290021a5122b7443c850bc0d2bf3db8e4f7332e09de0d9835d3c95de2e6d0cef3af440567ac5f42c36107ae3285fae5efb510950bbbbcb2adb74e3a74800eb7c639c1d4188179d0fbf0cb605d4fee23155fa6e7e8e753c95e3ac719a1eb2d90c12625ad773c9d4493bad6e70433468756a1d0db7fa52624371e2c813494b5895b3937dee4bd6075a079278b33320f57f77ab711d7c53d196a79ffa5f333541a360235890d1ca5451f36de417dd9db79c0f148f40fface7c7efa4200873de2009d1283896f22307bd47930d358deb3ba78f6b24c3fc523fe864c6cc3c926ea0437e0e6c05a2a57dc79382b42cdde44a8f9049a567475660f87e967aa668e900097937d1275ab08f7c5dfb87d015b5622cb2658773e70dcac4ef5ecdb5b5ee42ad5efc8b772f9aca5f3669ed4c4f4a2f50ad3e9e0435f54546927a98d20bf88ad93b628397bed82593cf4936ff434398226fed23429a24c043e2e8f2f9a8feaffcf66eaaa94a6b68035575c768f6988a944fa4ad67f7f339b1d2f4eb015229e2dfc567c8e91117e791b07482701dd2b9453dc15cf66394225a735b4e4f48bdfc7467f7a06778145c665225d67b9dfe3969fadd141b6e791b45611037fa75ba4056dd87c887ae9f57ddfa55f44adabadf37b4adcdc3d92dd6eff0b995ca596d125a3e9929928726f12b79d2cd4704d2777a5e8f72d598eea781b072ede686ef6fae81a9d122c011c7c3d66884486c4e6acd10a2ba05a48ee50009f671ad5b4c39b4d8b7f6dfe48a1ad897490f9c4eda47aaffb64cd68377325ceff8560b301a7c92a0a3684e3fa2765a4524e02a8b24eaa1086371efad3dcce458d23146d61ef2a4eb55f417ce0a429e178a9f1ec7bf63852bf033bf1b4739114f9f8883483e31ddf85500691b154bc0e69e260e51bb780b06319cbfca12292b7eea6e491eaaee4074d5ab303ac1c8e06dc838ef2e0bb1eb32a739abc0937664fba62484d5f62e21aa593ce8a675dca5c36b62e2abf234380134393b18eb3b00e1c0e3083257a10fde9ae30010290d7f475cf928ae2efb15d291ad670b2984e0f11abfc8153b30562f2743e09dd0cf7f755d6bc23ab12e29ea7017daf11b615a4673170cfab534a04fba4991207433932a1fcdddbbf33dacf1c9c87aee5e6cbf3fbe3b240cee5b8ce4d05a679946ebfc44481868f85925d25fccaa009b59993cbd5d77ce0159970b0447898edf1979ea633e43cbf1b5ecaca6d931e2e4c10c4e96bb01c310263165b34843b7377e449574b11a8b4060334f64288d864947d2328008acfc42c89f1e0358b36e552d9da6950565b78ceff946899b87cfc27418f8fee22aa7fef9838071c7011859334140398561798db9ec391bef30c88654cca62e0894c245bd489ec4d4abdce08e87b7ae4577d7ec222187804adb01011d5447348b937df004db2f7132df1ae297ad29d26b03b2e52b9a6fa5f9b5aaac72461f55ccd7e568f655a49be08fd5435b63e02c0deb99748a33ae464de87372eeba52c52e7e4b2e42d0a76f60b85db6ca1a33115a3df749a81d1632ca41b07b02f4e4a64e5643018b696a7a3a4194627ce8907b3afe24eeba770031cb82ce29aecab8f5c2569f349569d40e4e00ca282a6fd531f0c59d61b28456fbc09d8d28eee3bf8a0f2d98c5507c98b6db108b1d66457627c2ec924ceaacc2171bba7b91948f70857bf300c2b2200ae11d55b7db37456d1b6191629d8d3c5e3dec29d349d7f372e226fd9b119d625d0b91cb6c81bf9186294884de64a63a915ea606f28b8f12aa6e26b8241f2f6b8f8dfbbb4981cf1952e8962a701b9fb1905796c4a19866604db4d67b7244647a451430ba94623dd57fa1d43a0ae5570bf83f58feb336a4aa350c880a3c5ba66d87eeec084309986b898079aa7d32223e6fe859edffecff90b79e300819677ba4d87e9b5d6f91b384cc41fa516053412f8a48fd4b927e3e35e8fc8b61648f0200b7ad1a0a16ed1d9abab41422f5de4877c48eb7d9ffe60a46ffbca5d85211d762eab7e806c2a29b3f5d02c3e76afe8ac51f276379b8443b85f7fc2d59d5869bba2a61078f4edba39542bf60113812fbeb9f5c3eae7037f86d0da50654b9de746c0cb39f94e4b2a4a7b0ccaddb9a40116b114f28a8e0c1cb316f31c17e18e291306baa061c718f3e1a1d6a44372b585175b04735c28d7b7418e1468bff5e40c4772d9dbc4683b19fe320675d6c39b762afa5bcfdcc1b2034da2e6ea0ab50ad61a06aea5714bb70d5960b2e556cce3ec4a69653b52e4854a96dd9f475d2c8881ae6181e53fc7137022113795e33787286b193d4b9446bd83b187297b4f6633de23dee83620762931f0004f7bc4fca151a33f9224533c1ced0b54649ff4f90f2f4f3b1562af77fae48669b2022f26bbfb9430cc69dec23b1f2931ba125c05e27e9341f54452b4e93b6a5c2ba16f2d4af94bede89ad6d44d135b3eafb3381f5b23aa9b3a684d7d3e16ac2e8af1856c81ab01ad8b822e8ea4c5beb491195505efa06178334c545ebd86b519752230d87695801a3a68dfca8c4667458791cec199289e9875370506bf2ce3bce4a3f3533a49eca43f9e7a15087c5e6408544fbc455434dc0ac70ee61a1c0caa394055f7e82fb028724c7afb623fc81a0c916d7f4e9e41a8c96e54085879a01c2c283240389ee49de96ac9ac08b2f5f889c3d35d24dad50df46f6e8a308631d448f35ccd1a175779153382e7a7c5d35075a1a82114ecd03ad8421453e6a49bedf98eacf8f8747214418e4e1fc4bcd1681dfe082b77ed9980107bc2355c2bf76f1c19c491406550ecca16cd0fb677e73a6ef417f4575a5e784435ec4a8f9e6fd4cd19a23d12bd21055158ae63388ec4bb61294251506ada492b8f4ab4f4f56147836240dee776ddab40676304e6216e0855473261ec898c40f65affd3e61492f4e331f37d043c32d43a28a498798d67910d18594f2198157c5ecedf5bc702babeca2702bdfc1ce41e0ee1f081875fc6cf01d128880a56cc0946f7334f3ac3c0e2b609f2fb1b08cfa903208257b99c6aa3df7c08c0fc6bc8d5e7e4b5d3837503c1b336b741fc760bafb10c30d962f422355991e763dacb3f11e90cd4b4256021301a82d5526ff569a5317c1b78633e7d3ad2c0af85a804575533d4e65e618dc8b642a1667373756d5076ae083f1e692b0f74f032ef9b9234735162d9fbf98f10956caa0f80b71bcfe6739c4914ca5c87b448b4536c370750a552ae4d2e45323589e2cfad7a4ab8136476ca70ca2d012c867dbe94311555cee5ec2d6190e972a04bc370eb575abf0eb40873cdf971bffd450aa326b7d5008c3d3c363e0edd9a7814fe906e892462a35465d7c7b81417600c7751eaecd53483109488a8b0213470394d46956b386f8d40548d93c120b1ea4de5493a3883d9eabc032607df5b3bee37a9bd12fac17d4453a0f77225ef7cd54a9b187fed2c73869d90008e0569ea85e7f7c44793c32d7742de94e4fb0ad8f99922e136e6337ffa9d4bd93a4b5b74c1ce6b79c60a74a43dbca2a4b1f907e90e2e1c3f2629e073a0b03b7f84f3f2275100de72d9a8dc4426bad6f82a4c6b0a816a39e03c9a52119b4b8050192c747d7fe11e99e403fdd5c8525bafdc17cccd28d9869a1cc405f1897fd63308778fc1ca164fb271bde40c418e2354e8e06faab90bf9cc2e40467dbcc2829e204e143b615dad4c916f4cfdfcad949e36df8387c7b2d4fe3043e26700e299f59eb3c670538c14d22d09a5236deb8b1db4d875f424cb170f365f89d92f738ddda777f13497dfca0208f205695c93b2cd023f8a1f526b64c026937a8f32c7e4a8a0ecc7390f47832bbacef0bfa609f969dfab1183a51e76edfc2122d4087e2a56a6935fe9bff9b74a53c0ffced70107a34844f68789ad0e4c53f35f1ff220dbd1d5d4b9bba6805dfc143c0bc1f3eda2a29d6114799547b3666122115754b8589c1e31a679afe9afb111ee836740391b440154fccde62b5f76e3dbabc5a38cb9fecb7f9149c868bb180cc546608756b4476f2b5b90856b6bf3f012eeb8f289149760823482a231f04b6367eeb95b3b157d92053a5b6c8cfe8b5faa5a9746f5a3c6172e18a222a61152cabee1bbdf3c5a8681f59dce05c1507de3b75f850c38630e911069fa47f8ad9246fe62729f5707aa4d72fd07f50ad01f74b541ba1d494d8453de304434e6e9207b406fe1603cb6a623a08dadaf5d267614db81e35d5c571eb8c3152e6fb3445d83395ad64f2082170c3fdd3d15afd86afb95037990a2bacfb466a5e2d22df57d54cce737ae4df3f7a23409a4e0728220ad37d1638a42a0ce329c0f2ceed8edde5d5ec8bc6078cf173a97f974965d30852a4185a2ade787baddab8f1fabb9ea9a37f2c8e7f9b684a827639170b65724bd8f6989c19681977dfdd27fd26479bc9add95c8a28a8ef16c9d289ed6009835a7f911e5dfb4d58c1a15bd3448794885966468a731c3f5df0698ca2f49d25ac9a302440694eca1338ac73b150fd871643067590128961bf92318cd6b2ea4e9b0885924c6c5fef345e9ed687de5014374ff1944cf3b16623835b07052446311dd10f0709718a08de3c4c1c939f18659664ebf27eeffe0cc13b366a72a21f1943d9744ac3487ce873d4a641fc8dc3d8b0663e35d924b87eb2ed396d7d79e671ddc9db4894d7f0899a3453f3f47b62589fe924cc0bd0c0ec938b2850788c5578c013ab949942ffc1733b3671ca2857520631fdb817a5a4a5c24885d91c3d23e7320f47f526b2688b05b3b1a3434a66090986dd019ba4ce654e116e2f486b74ccb93a1909636fcf29552c2774090a34113518c6012dd31022e33aef1e7fd58c720c2aae04b572df203fc180035124982dfb920d8e5822d0ca312a185bfedb012fd4c9e05ce55881a82fd27f2eb7e02c67da0faa207f87daf2ca5b51fc37c26849d91e9541516baae6b7a23a758d097ccf870c9166e240349233ce416b02f04da249d44fe1f66aaad310337bbb6f0dd1565fadd46d073c10a208a461f8832dde047b38446ff7c3fbcc99d530b8f4d38748819d27a76bfb2c84dc93defca1ca6f47ff5f2d74ac7fe07f66b8c455c020f7d9bcd9e4e101fe5e96fe31de1bc0c59d776a8d96ee2bfabbf5df5695f16f5913436380c3d3fb0bbda38ca0ef7795a28a62d12a0ecb57c984447129d364015145ce19f8120adec3ddb9ba3be9c81d0ba93a52f17e2a5ab8cf8bec905b2087f39e4ae57de4f826746a3b3b01efa300024151e82eb170aba9819032be23bdb5e798740805b578d973c86797bda5b2ff6c7d04f25161619679ad1ed0792dcfd13a714345e758fa5d0448aeffcffa3ba90b96237ddb53fdff45c84a5d3df49efbc757681b2c2824b81acc1cc67fc8457fc4b314b7149d5915cdd23bd8c616df43e167a77c06f18e8006d4bf46481dda5464b320029d1d46990510822224e7cca99abb3c876c453f602d2928f1d075018e1f3d8d24856b984123d0336e4e6d304a2a5f0cade51cea99b9e0a04ad868122ca9d986e65810aacc99a8b3f6f68f6f1f2df1990ac7e9fdd5c882b49eea99eb41b1d2ae114bc9c5ea8ac68f1c895257edfaa659e9d9cf771dd80ee2860a2542ceec595604f220ccd9a9d2de41f856f69a702967f2ad04908ae64ea8c59df4d2dd1bf534a5b8cc3cb303e0c9899807625a1de10d675e594366650617cf6ba52936ac5a75b81129d53de2d4aa9b983c8a13e1a2cfc28e016973fd58bb46afe84d17c71a398b1a5c78bc411c72287f7b0ef30a86943bfb40253deaffa8bc222e74f2055e7e4d8ac54311474675fcca3b37a3bed2e39c7bc55c5339b2fdcc667c560fa9ac46b2ffddaf10a57822a54e8e3ac333573bc8da53765411ed0558c6c27c80280da2c70f795657a3bf950b381245c761b08d48134adb6c045ddede70a4e7421e9755574be59d45afa04bfa6e6d3855bb1c42d37af2edbf389850842124b4fcae869ff0319bd774cb556537c1a9ae33977c7fa3ae47cc2dc6d0e291769a97eb629aca90d2330dd6bc4c7f44609910d1e692f5d89e0ad4b93900107caf5c23e7d4403b998bd444838c2781e1392a9e2e5794ab844e2c5cf96361739adab4641001a5c4ccfde93256f643022e5eb9749b1fc648d7a5510a6317b0cdb65919031fd6718f79cacbc13ecf06b3b48a5f222ad5f63793ec738fa4da3a90a0ef8136995f6713af71ebe41918cc9b78c717d4863341ed5418dd6ebe84cf280b50c27a0efe1cb4018f0a340a14747647cbbd46227c4374d853c1fd847c7aa46a745c81f6ed7b1b5b645d5db441ad5a8c49dd95133db6713233e7f14a25142d8fc83a1579b03da9baa2ade067cde21c84f2e5018ea95c9ea76fd472edd2e2cbd4886217c65511a154d78dcb8291802e8603442402ce6f026d187e05c6244de8e55226289cd8e674fb1dc6257988738a0bed0c18c40502d73b2b4d222922206bf05bc08d7c1794a88ccb2b1a35bb4a6328557ff6c72c5c8c76710d415661e525108c5c3e8e599cdc31895750dee6800a8907cbd660ceb4a979030498f85133680dc08a8991190bedda4777db91495a690c240faa50474bb538005ebec6698a921e2b6889c8a259e8c940243ec3a608cc7bfdbbb08c7610e1a9a93d29ee60f0d70b50489d9a9dcafb8619591c25712a5af04e22635eb8b1f5bbef93ff9775bdd3f0af8e71d6f6d7077bcfdaaa8ff8736987f80ca64a286c1170916ea4858e475cfd84606965699d98c643d24293dea0718f73731affe86dcd84fa678864e66461f9bd73d07185b49b4a71be450cc393383573a0aabcdd6c87a209a27e7bc1f2e7fca9cb43d1cd37e7c41079fb413b414d7f68a39850976c4a7c8f1c244e0872e203611d1c335d6c35a78e7845cb38ce9cf7de9e194a4912e2824db616bc6a0ecee48eee7da89af579f22b8ec4d95b4ae49abd56502af63c34a28e4feab7b9df4cb20143c2f76b869f41367d5eee2db2d3c9a2faa5980b5f482628d860c683d6886dfd443cec3f9bc8cfe3730102690ff3bb681b90e9bd9d6b4505597fa1fb6d6a75e62c13bc3aaa4016ee9d3bdffaa4c476e20e3e19cae18469be3c9bc672d6146cb7bbf700cc4ab133e4f63c8a6e2a0062f93a302d89d4b5e72d8c543aff58ef5c6c6fd77fca0fe9c818f37242efe46a3c16b1041477f7ee87a9a70e468f8a222796ea6fea21c84a3e4ee96a6ea2c0f117742ce37592a9495f7f600196b8f4f07f7df0f6c554c4eb185f4b3d123257ed58c3b0ea4c58d0e916073a78c56381e049ad057567cda89c7e53eba23d4a90dca9b5fe39e7d8897f3185b12ef20c48ce911c53d5bad3f91ddbd71cab79441f9003c2d09c2382b72d8746a52c7daf670bd3d1b2d25f000d212d4e8a506013f536772e71409bb79210ec204eebda3be849c9fcf95f0fd7acea94d8d774429bb492e1750ff029be4b991f647c97f995d124e19ee0f0ea6edb662e3592125a6d31f86f621aabb7418a0ee57de209b8e902874c8334fa4548a772a76038adb24f1eff081f108b83819f85c2430955cb8f8eb2e416b0877141f8111dd1defb56b5ce35946c22470c81b7e9f442896d4ab1f46f88e87aaddc8b65d82fa3d8b589126f9465f0607d902a4d4fbfd9db8f817d59d4ebcdb19a40ad3c3971bbaab8948b582f9b148055fcc339387b00acd4f8182da8c375dfa36bb78462816db49fe9a6ee9d3b16d17bec9c80be8929f3af3bdb78204e482281d2946fe6098c49aabb166f8ce4f7cb1c0e32b9351395cc7517450d6ca19067e9ab87ae7e8cd2e39e8b4793846894be85f1432ef506a6e7222d9edc634788ed059631239bee3a36c39ce5f433d5f47c34dc7a3f71d3117cfee9ce30b10c0890166742ccaf648735a15fc5fb6c5db2df7b14d0d90605f21f55661d567e75a953f2b9d8dc67729c575ea5daa599e6f5f9e60366ff9ff1b5ff8df4a44d1eed517b5ac2e488a7678d41d9aa418e7e041883fe808b2e776c08546d780c6a1145a2179c7f42f705ef97616a7f7e3f2bbce1f1e55e39b312c8763a2cad6321a90b7615e1a040b69326135ddcd8812a54ba2faabf0090ecb28d793ada362cb8754e0939e60a5ff01c0a4e6e707ce688ab6bc7bce2b154da551e016ee4566a75439645da918db4c91d0cea1d6bbe88d06dea65de7c89cedf1126fc5fca2148a477d51e5c8b5298a82910d23bcc86aae1a42f846bafbfa267bb3c84eebed385d4729482630632e5aa4f75b9bfab194e68773fb3eacd6f228b332fb6f9945f0c49377cac88d3f60c78854d31a97e53dcb6ffa6d23f5e00448dc583beb55be5b4be9ba0526e00dc92110be8a8be2dda806f943370d91a4c976c5d371805712fe91c092a2182cf2aeb86b51d071333d450baecadc0bf46bf2651d2b5f9f2f3dadbfc348ae9e33d4349d0a5299149539d2891b5ca30393e0c1def79c21621b4eb621429258b956d2d884099993bc4347030b11305067bee483998ebe78dcdbc04c3b11149a7ec8e33c8537b6578bf4217729a4cd1257f969bc7b5d983726844124eddcc568275be89f50f5ded4ff4819bf7ebd8764a14b31b1b8f2359bd095504b5eba196bb2567e721e2fbcececac38f109a50273613b5cefc27aa2c044b2d7cabbb046595fe32e51313e3ea3888c4179fb6903a9666770c3e2010d659f04290a9aa758d9e8fd70a531ba3f31dd5e0c709aded9ddf5d86a6f3eca152e451faa2ab7433219ec1cf6be0d172fa41780c6769952ef5d305cc27383fafe186fd2a207a3992fe5ea3958674c26ddb45e8a00817a40c8e8d51f87b6fe1cf16140630351c05a0c89907c08984fe989f6507c7b1a97ce92e153231fe978fb424c77d4ce502b14dcbe299e16d4c0a1ae1efad2c50607cfbfc317689993cdf52b234ac7de7b2d08cc1f89dbec2689cd218dc9a9bd488c137d93b362b93f0c1f4ed81e15f5fde1265b7df15752510dc7e83e219642089e19e5dda88964c4bfd6958adc2cb742b8abf00e94428609b6e15e6464613d857daab84e029c73d9bf774d5d08f52621367b48dff61bedd85eba223bb3a726a076eeac21113988af6ea73aaa860c618bbc03c2c49ea3737878717ed4c3d9c67716c116e7a44b0be29f9812ba3ee03fb99b5ecf8ad5a775479c52c131db831fceeabdcd520fd99f89e375a3ec929e0bf121b60d5b30c40560ee911e17ff97b09e8d84b8a2da86f5f73d6df0c3bed9baa74121b7a618550adfaa9c75385d69409eef0f787e44076c8148e01660159282fb8b55cb8bc0cfd180d76e67c70f3b8b7a17f44a452dc702e336fac1bf0413b8b206d9915f93ce1dc49af1158b8da86590ff77aa7fb1d8aaa40f956eb1967ca9534ffe578a4c5410c698fcf0df442a033311c3ba8b966926bae766d227aa7cd6616b3697740919c2845a23a26a20d207320b2aa61e769b98b093528650c89883b5e53e4dcfc319033149ca94c0a8b1676c77a414fa3f3052faf9be04928d44454f018074b4c1508d60e6559f781ed688f0304e971433b1646c01dcbe675e7b04048c28c74aa9915a95d69eb830d7753a6616ef6088101acea2a240171f7245836b7af081e640010f1998cb83d565912732df7d39c8afb1d847621128608fe55899b58e075967299c77d77348dfdb2284614e770f5a0624820609db4ab746e0ace4b028c7f7796643f0ba46b2cb9201d70ac32b6b57aa22e3fd2aaa648d72a234ed851bdbcf4b0e04ba476c73a176fbdad567326597969d06596a3cfb29553a9ef6363c9f818c712cb58e9f8962311ca2f7d79ed78add1dfc8876a39be5ac95dfe650b9280b5cd5706a3cdbd4fa457f5d65d433eabdcc5f52b6c61f01cd92df3528f34b8a77c47c6817ce608454855ac8ad4d39e25cd7bb1d68b3ebc194f20dd41590c7f650adbda7bafc72472a840a0529a8767b29501fa29ad1e51418a98a90fa4191e8e8808389986a0548e491a58851e2ee750aaaeb8cbc274e275c333440ac1c1499f236f0060f2ac16a3d2abffb8514a8c4751c634edcfa9b0592c5c250ed8fae7989c1c263a009a3dc2f23d6dfad6c72a699158aaff0f738b9ce01d5c7a787602965188546501c8b179accbcc7b93862eb7cf6e80694eee3743e180a4ef5e9107e80b135b95b3b172a4f8688b4174fa0bb5322a1e222e2937a0579c7808601a964563e718ed710ec1e7dd13604c7e513e5cd90a68f3efc64aef24839ad5c279e10eabaa791b9d1e57a705cc05a315727d34e6391f316fc2bb4b158abc4e9326258b16896b705bdf85138c7bc325285d0e27f969f3887a0d4a64f8843b0cfe994769957de01eca3ccfc03163964622ef494834cd7ae583d22a775374d23aab2fda7844b9518066838d8cbca16785a4393b8dfdc13f526b43bf7ebf7a1e8c456ade2ea2ff641de8fe35db00239805e77965383e0ee54bbe3e439b1e3f13660e7121a05a1a2fa8a79407a38d589649df518dbad94db5c7f09bf768c0eeccbd7993f21d6f0bbcd4385842140d25e0b4995c1e8e40c53e2c82b314dea25a35182e8fcc5a26a325f59cc31387459344fb9813780d1caa5d91f413d2b85b42d18a4ba66be73cfe04ba8f36fd7dda8f3ee1f3d03e3e7d2cbb21dfb079fc486554bcc8d5a26fe82eb2ab94a2f1c1d9c46debefd1322dd6f9fa4f68ffd6528f63b366cebcad4c3545a6fef0c545013fc400752c8a07217cc4098635b665e3b797e756b48bc388324e07665a714fcd5a1bfe95cd701f804c2e84eb172c031aabb4d06cd9b7aa290aa5b6dfa5b43e49a256ee8ff19ef5778318ba3ce321565355791a2b92562f4572893e04f457384473345386ac2bc34e37312f2c7d895c182e4ad13f4e157f1053bef117951bd1829c308f731b438cc77bf4ee28122a7f42562952518ae97f548139fffa1cd8be1bd15f2da292508c43544438e6140d7a6964b7f8f8933a347613a36add47f6203301173094fe782c12b72bd1ec3669b087e5b39a5492941f54e7c7d634e0066402a04b10ab5c0f1b0a5a061be00cbf618c04c6ed31c16523fa0e74f722620cf402616c6b0654430cb9c0e7b59f1c5698518b124964c9b106525bdee1c64a6a5f05e9cbd01fcf1259d4401eea3bab0b01832b19929461e9db6201ed6f5dbe486abe930cd49168c8eb74c853921beda7af6da41da750f3f230bc7292c67cc9d8330b2e10071e9e5cac4eb175944a993c3aaa3a2939ef1e843dca0f2f12d6705b0c42a1e9c07c6245009cf2ed2090d5caf3bbe2286363f680969f330f3458cfd1f82e8869af5234db2e40036a9cee0161bea477cd0b7fb1fa00e171b29e9ec0ef8a3c2168f2a96003971173064e0a843e6ce5005e4c202fa88ab1a41156ab5d3e25e063144cbf384b2d4b8a3125f92975e2af5c16193fb7e4fc9ffb1583f107bd0cdbd205b4eb47566aab80bd72a70630b7b4c538f766a8d2b8dae0b8702655dd6c215db5e797b1d7d182f918f1a050d298509eccb1f1cada557409029a5e1006092e8a860c90bfb27821689fc7d3b6f949328388dc8e04028f2702c3c264b0358c42e8758182a128d5795bcb4d1193b601a8dca91e29b203968b0f9dc9dfea3c761222ea855105d90da0802b2806831f9098df4dc18843f1c52912ae689fa63cf13083275a4f9d85c1eef8ee80876fe5ed4f05c6c1ccdae273f221f6fed31760520126b7e678cf77405e0c8c7e93c61dfb86554aead69990fc7d850750e5f25614c83f597210d309e6380ea3af0ca1cb5591c1e1f24df78771cc6b1d85a4dc23ba1e93782f21380656bb812064dffd54e4a64618f68397fa478da71b0ba62db121377da0628e79703d7530667ad0a2116f25d29f027cf675d0e08056b97d949b85884a6342b0f9bc03c5c5c0283f2ace5b40638fe54a1009215d7833839256b063ee7d4dfde9cbcafa60a1e45c584c270a88ca5fa10e17687e687e55793dcee4078babff101105e838346703a1d089bf6c4811e51d20cbfb810002467920b5c49cc7a6e7a407c54ef9e171300972101adff9b8ebe8d973beed075d206e2b510bb7de88cb2afcd07e1c6d261ca02107f1f8dd94017c3122f2d269b3eff723012b70a2930fee53ebbbeb9da57a5d9b00db0c6dac75cb5595e7462746a5669195c552d087df0cea97a1b63aaf779ccaa9065c6f64b18d7c1b0825cdaa164c1f367ae91832631da4f755090652bdfe11ac867adbb70eef080e818570e5509a921435f46f5c67a4a9c0326135706567df5ef22e7308616157d802df65f7547d16f1d5009dd2e8d9e449812f56895711cf8a6eb67df5d1fae02dc23af256e2eeaf4d9f9bee19ee374b72f0cbfc2ecd9d343a5dae496adfa704c596df71f6ba49f0e536936470fe2b4b02b5f2f59f08681673038de54a9c1d77e4785cd31f69d4de0bb73521595ca314364bf31f381f5a9a1059a64d500e4eb78749db45f55429dab0069bf7cde8e1214d8cc13739185aff675a3e4366fe3b8f81f0c3941ec22705ab3604ff513648596ced6efe8cfc3f24446f742496610c44a8a3030b8ab4fb2a7b1799b9018a697bcc752cc9d047614420c9a439d3dda7c5b8240c9dc66f58a4cd1e771c624e1e6c0e4a29122da54feb74f44c775059aa81ea3e91ebca0ee4f6931e32cd82269832269cc29df55a2efdd3277f8478c44b08bc7b17fad5bc63d0c6bd0b925823e33d015cc63062e275b906a4534c4f4662448a8f4e4833f054c6e5f91ec13c57ab7ee654fe51a18be5ec4f7adc14c498de14a7c98a7c7963eed8273117bac2155f1e4aacd6cf78602176320cff36197a544944b3f1d4cf3775a1b423fd7dae0328fa423c0839b8cd1796c04203ee6fbbf1ba72efd5191680d414387e23fde9cd09c362242b041c078c0bf0ac086b65ebfc1dadc2161538f3e5b29b19cade93eb8a90023080b17f5545be3f5127f21d5ac7b4808af5cc11900259ada0bd95151dc47be8bb4fcb6120d484ed3251421cd3f91273d22e134ee33cbbd5b053f833f963254423654d1f67f1374b2157692defd58226f8f2d6f37c919aa4638a5176ba8638c9bbf65ad135debe43735789c2a0bb1ac7dbbecc866233085dde3226eff1eebdcdeacfa50c64fa51a84616594e5035b0047fa62b1eae40fdb81b0cd030e5d04d80a0d56e2cbec156e6f3a93c1f00a6cfb4d4c7ce3441aae1dded060fe1058945129e3550a301e334acca1db333abaa645b53bd3c629244e4a665ea23d9e90c0ad6171ea8f1ada607e287de5767150793002c8a7640ac6644977847cd3fa4dcdc5fb1f25b9d2f9e795dd96bc1e70346437220a190f5995d209178b6e5fe8f044b5b88cc661970797791968a0771c5ea442381b8d2fa9bdd58eaf20429f4d7d929131a89807507098c335ccacbf41b3118afc1815f4807da4af0f03afa1fa9c85c1e49cc61b2213fc105e8e6fad1e3eb5f98d67d315409183903907978c95faeb5928eb0391a2251a095bd09b2e5508a0f62b327d303ae30dc2dfdc0c042112203e84f29d1986f95bdb38f1c3f10919da1350007969d7f4277327b777376c02beee950c23ef04fb564c9d4e1dee0ae402eda02a58bbc85b75343f7af23b5271568da2c01873ea0450075001a52d7ee88feb1f6e7653a9de0a2f736c7544880267f8f81e5f2af40445df2efc702fa826b33183b789f64547b755dae3597b53b63748a60503e64a2965ef53ed7b27dd5cc139d4f1bfe533e2b9387749f6785acd907cbf23200501631b8717b23b67692ed8232e5f8eb7252939cfd5c8db0ec5931001b1611ba6bde83842bd54519ab7d05a7b8a7240c86be51c79da1cd503419fb5b0a53f9ac14ca913437b37bd01d7f0a65e239095ec55d284350c6455c418b990915a088dabefa8a1f0b92c5b611ee16fcd03d08ead96aee0a6b45469a7a0011225d0130761e2be3304561cd6356cc7a6157c94695cac69b3e80fa36fcfa46886b833184da7d2559ff4ea8ed213db4fd6f718f1edeb40311ba1a515162b274d3e8db702a159816e9fe78a76ccad034e17ed483d3ab5dfd736e739d5a583abb0af0bd70aa35afcea12341fd3a26e215c9b1996fb8be2e4a185297fd14b16d82a9a4e1efa2dc09564e7aec8deed72f42384af1bf1d679b7e7b768d207edf144623a8a100a1d642beff307fa9771d32b929a2b78196db603b99b75c59510c6e6e27f22bf03786729560c308f81edfe4abf1be8e2c691a155798b6a135674a169f07a4f8deb5cb29e9039c1d7eb05e0b5d3c4b5003f9f1369b9dfc989add1bf5abc7f275c6d06130d561b8fd7d55b1ed7aa9b1f53ff539adfc220f6fbe8b95472ecbfbf22f939e715bad73d7393e823806046c941a408b1ac2d7b79908c45844ac55056986496a6a6d4d598284cd40ca99c0997cf70c943fca0e320d917267582e4480981905b4be21f2febfd61fce3960740943c490c8f47686bfa5c9d29f7cac19ea362805a76d8d220195c4e4e2692005d2ef0750a40f43a57bd700baf33c58e1a2cb8dcf7bdc5b92b544f1c71b2579d8e99979a9e23b0542b22326994c5113110426de7d6a92eeb9165374800f2a3fd0eaa51a8207c8877a842ae22aa2c48f14ea52e4f7aa05d8c42e58fee1a3b20a487f1a9e74ce94dd1f1dfc7342d08df8d1533e822a530d6011b31742a3bcb9960df55c294690d721ba4520335f1378de88f81dad8ba7ab9b9fceb0bd3fd16125112b9604cf3594b59dcee3c082088933142958eeaae274b90f0c08ce745661c3ebaeea67900cdc7049cf4f9caa96e7b0156d148d336823804ebc8d5636ef0b695ff61452f679c67799ea0d485b87ceda8c84ad3b616d5cb775fce005016136e852e5d87f3fb8cb16492923906c4a17c9db948b3d65532eaa64f4c40dfb995c30358e0ce094efa90b78475fe4e4e909169b53e20e6bb862d154a8bb42f63810bb681d65d237a320c77bb3d7fff5f7effdfffe07f578ba53ebcfa593d9d5e057ecf8fd415ca9440da0336789fba9e3aa84646ea7596316bd9b0d9ce2b4002758cb949348324733edb92b5358f5e8346629ae762ea9d8b29274905975bc0c51f617a5accd5e33ef2fc0b5073464e1610ebb1e8388a0d97d2280972cf8e7b2abc67bcb642137f8d4534154ffe66da005639242f83c11d4d57a6a59435bea5229c0035fa98d4998d528f154dd39b5d58ee82e41d2e8a665b78a29481d2eb59c4b3315b95feefd3a71b6714d3d2253e9a25bfebff3b5a6af950b820c9984672c0f937852dcb267e0d2edc28884bbe99e920fb854463f4654c8ce2f1ff4270618653afc6a911e7022e012f77b4f67f5b9d5760bab112a89ad180d1c2d7cfa3104f3ecd9134a70563032212e772ae0966bafbabc95c0ace2e4b697d6db5bfa26b81a7d32b891b6d5501ca2d8c6ad3e9027211db4a282b396c387a9276def290d87d0805fc25306436d6e8ffb2a0f4e6d5e0105c3d81e8c27b54b6ee2437013fddeb3241f553e9e9c29176172ab4c26851c1ed7fbcef97356b99d53bbbee7e356b2f23fd2648c18f48175afcd7c3157bb64d8a1a927f356d90ef8130c240e4316665ff055c7288ee74dfbb12abf9f65425b00049daa4b8022620c3da50fd30d336d06af47b2886c063fbdbfbefe35d054f741e5c20bcfc116591260af24fa1be47ced40c7831654b9800124fb79abf2d7684ab5395249d7ac2beda95c490fd8c07d8720bcf00d463452c494714219eebaaa7c955b1a1a94b805eb43203290ebf548fcb2d6c2edc6d08dfab55194718a1ecc0bd153c3d91d1dcd34b584871f3d5bf4b200d680cfc0465f78ec9800d775574ea79c234a94479987e8b9212ce07ca1ec21742175938929d0d446d9f371f238a6565841e09717b78d0cb6a0ee74414e7a751f9b57f2b38fe2062ddc73aeccb51ad3df9b04a06cf830aa93b19f5d35b68c0606ef09eae5252ce9c874a774f62ac849d40e00f726828187ee1967419dde5528e41b2182ce484738561c90be9270d074ab00bfcb2f9951fc19e64a96c0476ef5b4b14d3a8948c75f9f27f6984051a81085b06a2ae1a66dbb6c125ffc7011064bd2a1d5fb891c35a90676f50383284f9cd8d0d7501d12e7b732d60bbc0bf1aa2a747351528a4d26f41d678db577bd7b0e622e7b1955e71ae4db6c9b7134c91ea11b1668bc7a5acc04bc4ccedf6d945a6fb78ca1fc4678ee618362b56b8885b3ec30debfef6dd12b186566c5ef3eabbf23e1719b0e69b9f7b6a358af8edb562c19afe4a8d1952bb0bfb549820a6649fe1d2a7a4679413629edbfa025d2da7a7ddc6720280cbde53335843100d4e49077f475d6b059a475dfd7a7a4bcd121f0a939dd01dab2b1e924ee82a145b4755aa0dd380b97acdcfcbf4fece6587bdfd7309d21fccace2a7e1fdbd778275232a3c0f9e37d98cc7ee6f0f62756b5b0851b85db26a8af4459108fdef9ba0eea3f6129abc3689b14eeab9e7922573f7f07834de90c6df1d07ab7405590095597461913786681b6706ab85ec98814b339ab39167b2a380125d90bc0c82f6060fd1bd06abbfa41ec7d9aaceb06bc4b28e4339cb92d18d84a52a20d616b6bed3c1ce66b37f1a29f8f700120f025893e8bf32a7e4c8f2671a76b80ee251e22da6244b4f966c1cc6e090724fefdae078bd9f9ea9e792ddbaa2738bbc9c8dbf33169957efd36dd099e262b6bc6bdecba6f77c41767ac5b78f51bcbd7a48a89cc16ff1e69326fa35f60870b8d5361b290b3389ce3dd2870f051dbc3eb3fc40afdfe0a42915cc6e254ab2972f419109d6ad856165ae4f1e3cd0ba6c4395a8aea5572ae7f5245d5bd4297437e03f225c6b43282f8caba7942a4d806bbdbb35064e426d27f78c8a7faf7a44fcc18326e8da20cfd7ebd24fa11a82eb2466bd11a72aac2a0e064c84ca2e2bbcbfef0855e71074537a8f0b0ba44a1b56bf12231bcaa38ae76ee81b661c4e880ea38fb29c84c0dd576af93aec67cf4a29c91ce44ebf3c8049c7f22ba546c26a1e074fd81a4452376f71c189d3afa39673be0e85c403dddc8b0dea08920f99d38c8724e16e575c5b0244be0b1a3d6bf5f704a2e133d32fd1514d9b67537767f948b6eaefb23555692be8d8439906c77d22546a27e3823f5b66617c7ce93d5320936c2c7bc83668793eec3867ea02b71df6729d75bfd465cb8fcefd3e2e11979f42db5d4c5a50c3dfc3441cc46e71a4ad689049734665867323180b427d6e2fa24e5f1aa7d82febdffa299ef7bd8b4d8b2ddc179c66bde05e7ccb6d775dad5a13e92cef2ff6c08b8e55039c7db1b8eb66c4be8e658c619822b26ba548d3959e729da9964baae8b37d5a6531442c9d3e96828c2365193cbc123c3d36963e6a0f4d37298e172dc47e700ff06dbe0506b622d28e4d586a2cac05f160452ece53ae4b38d57c8cd10deac7d84d87dfac8ba6f27eadae117cbb6e64a51379ba938b3208471a9f15324c3c1a335846c901d2f4c581f57ada6dd2a093f16ca92879972cc516dad9fe00c6ded5293aaa09bb37aea89214e2cbe6b5596d5fb13d3a87db45573ecaa12d4af643eecd7f041cf9241f9e7e209b220494360080b1ab5f224f81f18ed23aebe14f8e6d380f4221eaef993b2e6fbf5469d975f3ef8369a7ca422742a091807e234b14ab1a81714a50264e9fa4599db91c5b589042cf655051114ce01f86c314b5b89540d102d345a76a473eeeb0510d18f660a7975430794ce012815da2ed09417cab01e261e6ecfc784cfef866b0421bc2ed7b8bc6626213f6a26e9fd731a039f9bf179bb38d4fbb9a79599d47cdea8162242bb6d640b1f33fdc50eee7e595c76ad24f7070a75df8e5f4e3db8f0f31763324f20a5e3ddad25ba6ea81b1d54d3612b9f9cb020b7ef4c0c868a16b5fb3af168948f003fc31bafea4a9397ca125f3e5878fc1280436da1537b5a1680a58d891002245fba9c13d09859d458b9dd180b388aaf3049ff5eeadc921546d66b814e3b15b6cda47e85699023570a536e54cc4c1b382a0a36d845618c5107bd8f16d4169f6da80ef0ede40906d87829dbf1b6db1f561d8817c2a1d7b276958f0413d65ffcd58c14b3fcfe913c01f4c0aec8fe70666481a405ecdff5e6a40b438cf704426dbef231feceee0f6af564698ac15f1543716ffec8c1425614fbb8a4a2767780c15f689dce501b64886ea988e23648956526b51b223c2f1bc9dadced0beb64f0804c4861ccf4a65522cc735e2a726a400ae56863fad5c1addecd13db2ee1978667c1a5cd1e8804ebc2d24b7200c4845d332e22b798470bd1f3c3378fb5b5b89354cefde0601c86240a05d1868f0f7b5ebfd58b0e5c88d22c499954cb551d85eeb2f181acb372b0bfc3440f48eac22e360e308df9449e2c344b1b4307003e5615ce2b4c0c675a15dda1c177aad2eac24e2f47fd2c6cfa1da67370706feeb42fbd23d38daf6d195dc4b770bfb943bfd37e1735e21ecb49bc3ebc2d91be6cb71af89562f91bcfa63ed4a6eb4a3bf0a6b49727c906bd226b1028b23e5408fe68824631c257f09dbe478d5391147403f82bcdaac82b7191c87abfd3a259d31684409b69de7520e03e1d0875c5a8bbe3f0fb3e86435c54d96463aa699a21b8adcd50e92a9ffad625b24321378e68b8b4176c2050e49e9f691a4575169ad5d0a56222c7017a1c0065fd1a5dcf18f770f3486ad2ab07322a57ee2e80920bdaa5685b856c1112cb19c90a826b3e5ff7c8fe7465e945545fd11af9df22be1afc8a748be5ebcb7bec7b89cff0cf5a74b3b13a33d113a44aad6ced2f3540432fa168d8912eb2300fe9e75817136563cfe9b82283aa528db7e4f3d12a7e5f21ffafb0013295691d163b5bbd8110c45ad0dd40fa44a5ef180c04a21dbcbc505b00ed91c9d3860ff4c346e575d8545b7bce0cf3b8a32eda2290a78261cbdceae808a3d1bd0b0cff30d537e14642f85231dd61e9a21eaf4ddb0002f7bb97b308927cc043625137c865b35471a61d9569c4e7dfcfcbcccc290bc60292b69870fcff010392ffa29d0a81db3380ae1d46ecd3b04c3b82386d11e5d58f30ca63de76684259f9009de51485aa975103ab2965f259630bc0ec6feb0a228571a08e768304543b3e28949ccad82e1f0afa8f123ecd881376d50099d5ff0a186682ade11f4ecf50f811ee0baf4744246fffc392545915690ead574d2b087ba3adb257197f17a3aa23a6afe23a8b535326d31c688ab8bdd84f4d5b25b3afa40e9a37d7f9ed12a425d62f57b82f0c18b8ce0aa82a91cbb6afa828a8a3200a06eacdafc30f13e669aecbbce9836e67146f891187a1e9cb583a93cefa9fdfc5fbfd56eaf4248eb835ec6506c5c4cb620e55c4e920fe2043db4443459a5f99c56a7f1d9de3c64b36e3e0825ab4454acae1b4644d5e0019682e552f7e9a64f927e8e8da96fadd9d590aa01ae9b6f2f2e86ad7b6f96e001e6090998e012a887ac458113b2cf20d1d6ed07b0702a35090381a4e4e6e8fd50b044060f55802e1f0185e8ce0d92e9a4822e057187c3e85e34abb741efc004efec992db7cb82df8f6c0970ab6ea3b8751423e05e37a09e9c61d6b2a4d6d16b08fb79b1dc2087364b9b87eaf26b208c2b1013c37db0a75b40abe1adb9fd3d5a146f38a88818d1cf2fc02400e334d93ca74287c7925bc7f6b76df007cdc7bef86ce4decb4618f57823c0c5315a416984d4a8458f1ee8bb8b5471527558c81c7846e49b7a2203ea5718416ba409e6a70531f5f53a0dea196e3f3a9d24e43694a4e74b6fe7327c271b6b4bb3c1a9863e0bcf640cc3d26d18ba8958c0bf61e8dfdcc69dffec845023369f32ed9feff8a337deb60efb11c649d3451beb816ac6938815a8f5188d1a2994e9e9af20a427e7032c51424df27958d17aa8a49947fb66e87ceb0629c770dde6c298b4ff99624f495ed822951311d20813aa0aa2ff03bffc7dfb4cce65647998754cc9bb7817a9fcd03345d9ddb063dc988cd7f29656afe8d7bcd992d692e6c188c24db50d19463bc35c4bcb520603922b9fbacc89b7d6d187513a9f97f1120bafb65eaf5cd7c928dbc91cef3dab0d4d9243278aceb3312ccd36d1e0a20be0980ade50402388c78976f80ebae3076c9546aa52f54dfe1088e11487ddb9941773ba322386bded52100769669fd45e173f390bd8a02e9bd6e0cebd9a9ce9a86da5071d7354fbfffa4e372be5848d08cb91b2001fc0f02c65a636bbc7544303284ddf03b35be1cc80542b794d26cb2e176c4ddbac176bc0434141dd2649280c62917b7eab79505ac2727ba353ef70ec6556cc47fb2008660d8afa79762d7e8744d8d50539a15f9a0922b643429f50aa3f696d1b1c95300109b5a27e7f363c97bdf034e32f9bee42a25803bb706ceb047baea0111c5c10d4c0fb20a140e871ff4a002640fccd5e4551af4f4b65c435c930613d460afa41ea2f922e80108da28a725f5bfea52c28cc0875353358eaaba094c81decf9446fd560fcdee37f732d02873563a43ba6a0b1cdb90361c00a75194f0dd26db6d1b21ddd08eae78c8adef603b0dfd7298caa380093c32752172614a716a839d234d08a7f914d1ac878c54ced7177b34fa751999e2499afa306e329e18b2dce365b6b1b1fa1e5a4352868b5b15041abaf329e8d2e6aa627d08ed9b773ef840b52782cf401e9f04df42e375dce046cc1d062b3f7b730567d9c49a636aceb04d9577a45590b01799b45749e8f564065c5b3852c8d135ec5e06a2cf51dd5923ea13d453f786aca3c86530e9b8087abe60f5e94a9ee195c334cf9546d4b56d1059599f60d113f53e0772513ed6dbad8eceaf3051e22b4ab24d63841d0ff7287493b961af95b561656a716ab308545ae53cf16509accffd522cc7046b0ace97fed197bb7c18cc0fd404f5995638ad00de1dc0a9dab5228eaccdc6d3a58687d61d4b169f2e9a3d2f300f6e6e64ef1a30b842516da5bbcbe0a796909610468bf30778f27e3ebeaccd8a69efda8a1bfaf1c540fe97d09a432f2cb194cf75979dcddf3f04f8317b9385e8e01d8bcad52744bc607bb071973567b07cdbd5027281026c1070c1d665e1b186846f341fb1808024ed18563398b85f6867e889d2e1c1e5c7f3a939ab4779c62c932a95b0e001f784d23511c71f10f9adf25fd2b915ec6926af4d5a070008e3d2d6029f5c438cd12b4fed56b1abe42ce4aa8cedaf174c03976315ea81fea6551c698def6d3fa741f5f20b146a3414df872ab8bacd25c7d18ce5e3637daea5bf331f90aecf34fc9e28b09b92211b93a63d4cc30608ac392a462e97e74922ec1ec7d90c056b1485fa29484fbe06e30339cb2cf431f8ebb10a2e14c91b66908565d8446366e2c589ad9df3101ad964ee4f45d0d890c0fdefa80f5321c0710e50a7244f13f409df7aecb23cd83d7fee5389dba032ed95d7f8458af860242e16d6bad2bb79e254c08042761462a98b5a4106e36272014e9450c70a3bf219273e2bc865e8cd4471810bec7c429fed9d895bcce15118f698536606cec5f6f0f3a6bbaf910692bcc0dd448b664a718e07e3e47ac1f9bde9cef4f49ed01b9c4fd95f07a6bc50451ddd08ca17692166acc45129335e3a17949d03bbfc36143040b3398dac14ff0c1d635389d5b5171a21d81a8b9381dddc90fc8ce8731d473efec7b3f31032f1c6432b68575694b03cbe2c3ca9822b9d9c122bf6553210a3bfddc8fff29fd4b1b5132316126fffd1cbd51240a15a5c6e62fdefd1a1fd2ae8ed4d84c393a198b3de118b9a4f26525d0e519cb5cb96130b55069874d6803d55097b99ecd879be77377dfcfb2e087ce0830bc31f8e16511213decc9d0c30d439f7550a52f88b8b7064650c9c812fc15e66e43ca1cf3b40853727eee875267069cf4e0b922627db9c0b9cc8f417d91047d8083da3c90f868543b2c8a2cda4937f432272492b58a6cfc2fc0ead6aa30be0aa8c7d4e0f2fba275c2c569405a038b6f8140ae5c94907ff222115fd65dba8b24e68e29b2886cfe4eae26d99e6e03ec801e49e8e0cfa61cb243e48422afe721e356b97e20c79f8ddd958ca83ccfd9d2068c45a079ff964f4586e4a94816c6d2aa0b2369d052423c908699ea217f93b1ff639ef4b402029ccdc9e13affe29f2731e4cfd50c71b18a055229cd72d5fca9a9d3ff47a6bfadc698c5c5ad02a308aea4b6b336ba03cc02b0529e8896d9cea98a18bba159efb5bd387c4fde1a57fdda0c07b80f70886b866bd59a3f6f62f5214c604c27d0fa28eb337c63c31d307d4ec5ab0eda4581e9399678028f07fa971eb823add2d2c7a0efb9f64d25b53a9ecdfd74327c0005f380d9e1ab47674aab018a02de65b6f6177e2ff5b7dde21798ffe101207929d42fd692658de7c10d4cbb59b001e9b5d4b8401126c79cb1fa9584bd6d97a84782dd0e84c550a28a09610c6c173b61e6d66c34b4044a7b9d38056df8d8f7276b0aa793acaa8954cedd7ee05b86b628981fc884cc09141772c7b83bbcaeeec4ada67c5121973bcfd0817beb0cce8b026b3bb1d089ef1070dd38d22262d737d254695837378942af42a7429382733d9075d931dc1ea32a06144e1981aea5f66d484026ce7d91aea785e484154d7b7f3f694bbe8ea6eca0d31394d41642a9464f5016872699d96aedf9751bd655a70c9aab26fb3f6c4e6afa5744ea4bfa9cb684c08f4cc263ca821d6b366d2f1289ad20e722d1acd311127b6621b564045d6a35fd873962b73f5b89b7b428ff713aea2607682a1ed43e398964fa60c70557eb6db3244f1d354f666b4f4a977d84852fea70598f5acf213bd119ed2c071f627a4a6b492cc6121c527110de7d63f7c32b8be04c94b04b1e7f4feab9bb0c537444df0ff7be6efe943fd775319fa6204b173c0fcbb332444bb7b352e5365b463956cbe1a029fa342ca36571484fe8ed129cc11baeaf47227c353d0b6dfe129d7b74a33b3c2243740f2c87547717c0fa40ac5161eeff00bd02c4f4313b0e879772b46d2bd61fc52a17d4c666048370ef5e23507a2222e28ba1dc837c468df2235e6a7da4848c0f7583fce6ce23e40147d545dcc595ceb9ee7d9d18b36d15cd700a0c859335316681c98e7c054d659c998f644be21e41ce66801eef48f67d6637313fe00c0fdbf363e57b5686fc5e33962bbeaa66736f0ec1cc398d79472e50be5c378c3142e3bc625c728201a3bd2185c2b6f449f30cdd2b808fc9df7ddcf90be82c21e452540a5d77b1bf878b77e658e16355f3f1c933c0be1f90279e9bab86486a413cb88f071a8cdcab3257428a887ea0441a0f3a32778a1dd20dcbe5e5d35d43d03ef2a654e4566d24dfa269753817f4c8487277949a0f2490ef48ec544cb98e34ed7bf7a9a23b6509029d6535ba5f6774ee2f58305d524b59ecea48bf831ab4c96237873e72d78d1ad4a5d985034e2ee3fe747f351e4e5b95a6abd617be435dea5cd5ba24a783915aa1506199df2c13802f710201d0af7138d3fb237d8b08abe32ab6e52cd72a903f4d49bced04fff0de0e6fa8acb93d74c594cf9629f470f411a142316542c00b2f4bc9c850533bacea5716bbdcba0926b71da2f0bed596861f84e2189eab59744789bc2e867eb6ac71ec971881941683d29fa3f93a5456acaf0d951ab1f972e1dba340a5db46784eb7a3c9afcbd480e02b63023e1fc0771c97b1a752def20a53ad0bb9d40a2300f2e1551d6337209139cbc91cccea2fd6608dbd1876b0ae80f1c2a3641bdd164ebadf995c6f4f3269cd183e7f6eaeaf1ede3570ca7dffa20c646b10dff817a14e8c40fc494640830eff9065b17de401814487b42a1c7a4cfd1208a9cb86346c475b1c40c7c887ac1e6c97fe2c98653b7f22dd767be3edd49a464eebc0532e50170d23ff47b370b487087c386136580dc552c28f095a3d11038d6a4671862121af6bd515ee6a056946fad65f71c02c2d5a6679f163e00da2dab075d7d45b9c95f9729a262bdc64fd27a3e5ad8797a73e1357cd7c62bba446d31177742133a41028b09ec3f85198f471a47d96b849e27fa11114c40a82bc09a00ee988cdd05b910da33c288abb244319511cd20e3c75a449239fd336dce7383cd63cfe92b063a40edacbe90634715db54e3228016de8d0b215a4014ca52c00e3e83d886fbc7a6b6fa4a8d152b8adb857bee2a998f015f85115237380b286266da8f42c0ced40368e7cb9d2961363db992c1618d10f771c93d4506efd4cf4f3add4ce9fb23ccbe764b4c3d76717cf0f37d77b47e99bbcf91ab8f6c45092b7970b3e07651be8611ebf903be0e136b8af29eb36e6f3b867ad128b7564a50d61b4ef87b50b8f885ed48b14553caf52e99448ee65c420e538732418d0b9a1171044c53ace9b41262d6231e19db320c19c0ee15bae12f96869dbbc0ed6c3426afcbf8d29823a5ff068fde62b92ca4c0cd226b48fe1e9b8e2620c9240a5c7b270fc1e16021231ecb1510f034d81d5dc532cb36b58825a708e1974c7881de27be80b65225376df0a17008d5b6b4406667086265215bd1bbb275e21c91df4be5754cae1fcb1a33488227d011a4e978623478aeb2dcf2e712816a4386976ebd383183335dbb43abd840b5c877102b876f66372249a6c2bb18453712acc201ac931b3a63019421f86310801fff6f9ca5e478d1c217fe100928d3b28b481fe9a0ef0619b4fa46d63a99342e59412cc7478f2956a0e1a0183471e1ffd1d502960ef9439fd23ceb63b3b33310791911de36814b78251838189fec39992842fe7fc8f947133cb124fa71597b327e08d43e43043865137d6606fdac5cc4cb228a167d023c068271578c9f66c64917326cc131e2ec2af4008b636aa40442a233c6178a390a297f0d7aa992611b51f1dac5fb14ece75565952c73262c470af2dcce2641c3d248c760cc2405fab8f2c04785fcdd3f10706616e450a8af21b87c94ff27f5e65192eba64de14cc5009153e713e164801bfc1a855d7ceb63eb31279ba1d32d3d84b75444e057dbbab040317c942dfa26994e3c444bf0880977679b3387a63ab54808aa4202b0d72be16dca3c6c2b0b5a56e78c2e6af29077dba0f88c4b8cf4e08983ed4b9c29a2c8527ce86f04769d8c5a8f36b988d0c5fa6cbe18372cc2f9c0291fbdf0df34457809749521a106d9c8ebe1af8e6c70d108e67cabe267292dd220285395bbb48b03369f5b17ff159d3e9db76606adddd2916f2b3c217e702098306a483d2b8b26380bf11af6cf23d3a3958f5ddd2143091163846818121a0146aa8bd524e9d871b043bf3e07951a231574f35250643540b6af3df48b9d957af393800d27adb5d503c73063b69205189e3e23897ef865d07e0a0e1adcb177b879f569309177fde9abcea147a25897ecf992ceb452979e689ec3081fd9ca4b615d0ebbf5cba32cad08dc351828a5f37b71932bfc8ece46258060016fc659147e6b70c6e699266dc35e54ecc21f3c34484f76e159ad7ad4117120faf7d6b6ce4c46e47484a80f6b10ba70e8f5d37f2cb6768cc7f69c9334ef0315e084a381965182334bdcc11bf9299bc858cdfe9a09109c3b63163f2f115e2dc8a3def017a8b0304eea49338eaefccef5156a33600e7ff26127ad8619d93e30a95de7fc55ea072339d70903382b266c6b02e2e08bd8698e1f72dd6a4ddf38f3a7c76ee8dc7608bb9a4b8de34d4453e462f8b37ceb10897a1897bf66f156dfcc7522c3997cfebc85458c63df0109229949418ada08593957583582012242b5adde3083d648c721c0a273b72a94711d1b03f48394038fd4cb559a5358947ea3c474f0735742223497ce97ad370df592409443e510c3da4673909b585ffb75fb19a5a8cafdf38369709604b9c4d8441fcfc96edc1f5388d02774f4ae4e2a0f20eaedd2d9edcb9a10a79559cc375cb155cd0cf6afd72cde7b15668ed205ad3a36f3d0ffdc36e96526db840c725ccddba1b56d1dcf08353362756d5e37731f932c36506fcd9fd47f7353058ef295da643a9fcb3ec5f31fb23c7c4242b05bd139e4df9d04d802ff9a950d71883c321687b88973ffc7979accec85de49567e221fe2f69288b78e232ad9cb8a03b2eb9bf4360c0894a264e0c1baa4ef32fae33018718a4d5e9fea0db60ab08ac226a37907884285fb8827f18b832f72298407038906a9de384d86223deecc74379f8fc60ddb2c3772bdd1d93329af88d0321e7a8e7cb8775cfad87f71f2eac5057ba79ee2dbbe400af937dc615070ed08f41c352af0c2e5d35bc1ed459c14716a0ff435fad97b642d15c81f3876ab37c824b536f0b3d2072e8394fd99f34e3527a8e148cb13d514cff751e47f4383f948786345c819655c17b0e36e078874406b3d21b14bb090030760e6efa41de0ec6ab5d80273475510619828bc2284b96c719f2f76fe809718ec8bce8cf8d02336f520ae1f9f2b43eb798b522a24837a62265a28f69074cfd7df08254d13f326aafca810087e82426dda65e09f7beba9e5a5b288247ffea9bcd1dcfec779c93594f13b3d07a41494274a0770eb64f18f25df9e32519a729e9b3c1c5de44d75d1adf882a9974d9547d12aa6f3528bb0e6d5ca13f99103d6fc4b7cc888645791562f04680e45bf30786a6f53477dced6d65866eaaf8335d27a3e2ff2f3b218f9c5a6c57a431213e4b5ecae69215129ad8195712e1aaeab9a71d58de4e39b3614477e3fde7bc45d844e43d2c6785a828e3a049fbd21ffd2150a094ed8d560f41fc6399aaca06791f1b791c9818deaa0dfe5f0ed967c5dc66c7a64123d96f97d3e6f529048ba659932d485f50e45817a7ff0e344737cafbf143bc1357cae5a2b9cbcf2735ebafb4f6dd2f4f6a8262799522024ae6e83143cc6572939d88f7ad067155bf09a1c7fdd7f3a19e22908211ee706a264137fd46d0a84ce93b9479c413ae2f2e7a73577f57c8cd9ebd6f3500632b48f87702c5a09931b0e46ee098bbdc041ee5355b969c7a7bca5e14a091cdd6bedbd0f6936999a43c960ba08c6bf453686d16f298ceaa0028f2270bd3cbbdb7edf6c89d6e175c2ee06c30290bc2559cda4fabf71e29b072fdbdaddb5c72bedcefed1b3cb354a9921977e140f5efe0259916f28e98ff9ad6f913837dd70493a4b7a45605c8b8bb9dccd6b2456d9b6b7071949d405d8f8d11c225c692a2a7c2a6080abd39a9a506cff13d77f0123a455b10023531aebfafa015cd1d1d113498ac8a1c280a5d8c2c4bf9faf82fe1dee8b9b0ce0a5fc15d4f05ce76c9518c0404265e4f51f9b2722589870ad8193796ca56bc972c937d58b1a877ae3c3530138691a71c0c6a967552d9eca7b39e777fcd9f17af3c214dce527c47eb805c48135253777b32f66915cdf9d14446520f00c1275ed6c77e5e17ebda591b3a23682cd177f536afcb71b38e1785212201b8d8dc58e40211efccc85920e2788ad12c91793fefa05fbc9cc8cb8d0acadb4a192373fba51c2b6af3d45f00614ba0919b8723194ea9ab7e6549a4b2293f35f7a26e6bfb53781f5af90aee661ac643442c034214dd1eb0aeb173895c96a1a657fb223bc8e714231f5558b3523ceb433402bb6dc8979dcb9f88a1eb3c9b7de728259bdc983f18d6de12e8f945a249fb107bae2fd57f185cabfb5da6a6ac09b718f297434d20903c0d57ff491b7d805febfbde008f37d39994ab0beaa67cadac14d37a520d68f9d3a1d2330a05dfd8e628f1295e35d5fab8a26faa1c110ed93ba2511027cd18870fc09b1eb00d82f5168a5f68e987635577c354b57267b1cb496d9b5783b092d3d76d4d9f6e01a01b33a63b0f07435027c9a6d778b5e4a9c2457d343e9a0f715ec5703f29bb7fb367fa4ec46461624d9b2105d908f63f0fd60b9fafa4231470c8518979df96c0547d349613668a4b2b17e065a563a523b737c9133b3e1404b9981af3c55a917edc1af527330dff37f87a93e0e50cf95efb3aa8831c58c12aa99280b45e43090ce53d915dd6627f64bb09630bac691121ceeb97f326283706f941798d304a94bbdd5c531735724359ec83959b78a371417abbcf13293425b80cf6c7cfe300e63fbaf04adbd39d700f4ebc143cfbe829b1914dbe3276d44df4d83bd1991f7cd13ae3455f122f3a173fe327617b80c057f65ad138fa435734302b60f82cb1c05ec914e203d5647ee88e028a004b1b43afc54ca7127ba55fa57d9ec5198cced752e112d5564616525fc0a329d76c18b8b0456d7520c48cbc6a3ed720cc96d97579361d6ce8d426b2b5586266f1fabd6d0c143c7004130fbd17c52001b2e464cfe24156fb2538dcd721d428e3119351df370ad3da1fafe5a5d0e4f6c1cfc81cac9236c307226c314243d228defbca64a3cbeb6e3d8ed17f21996b7ac7b3af7b6f181d8e8fadb7d3808fad1f88a508e7ef74c9efcbb2bb63a32726fb89113d0163e6e18d90f8d6b389a494165b2b0d834cfe528bf161899a182829a20f02fedeffe98bfd97841903a50aea4c98d622f4b72568de60547120c8b9fa0f67b72e252af2198cbf1df359dbfad137f70669686eb4f65f646ae14abfa2fc5645057dc14380f6afa53c1cc24845668e7a91d31c73075ed37a5e4229ac743e81983de7c3bcd4d917cbd77b909aafa7e441438c3536d4a411860d56d91e3875d57092da1ca0614a436ad11b6701c76328b035b758da5c4a377d3865e951f0c5d7f805b9d3b83228a9e80e10e55a25119f24454e3918fe2afb86c6abf7c793d0a14dc908352fba9f882e04798521d2c24f94dcf5bea42de1fe52fa91ebf0d2ea6b8646b67a40d3f60c9b9efa3a2d26e3e238591a4242bf82e2b73bcaf3ad69413d10f038b2b1a22749e5fdd117727a2b71b7820bbedea0727a4f8256a52306f6cfc784ec6b407f733de40267de82a3dd986645209f9b2d9a82fe21a296c984057ebe99f4c5d14913a13de5487245e91069046e86af7a1a36be80d80d807b393cacf0202adf140f4d391111271c4431620ffbdd9a214df0f100550526fae18b1c7da17477e7a69cf813df32f81642f43fe65a13a6f3b5102ba07ef0ab57320fa3824e33457da9a7ad4ad73798d30430dc2c79349bd24a215d8e6316c98045145751684bb1bae8152dd72bc313fa02c79fbc2f5d9e9df56ee607e2c6fb2206f1afa2373d7b9424d3a7f672fcf73a108ff71cb1a625dc71b89ac0691fc15bf7c295cd82157f33f707d064098c97f8b9c42d5b2ce7057f51ba915ee2ebb955613329d0152a28acf4c87f17608f478fe5675db06247805b01f04c02c2068abd8f207ae432a44a9a5a6709be4bd8c4569af7d8102e168005bb1acf290219ff7f22997e6bbc76540f0ca547eb75fa913b13b027cd04ec1cf7b127f7a1b504b5a3490181d3c7cd1eed27c9048bc27f667c5175f537e3871c9a799b53670da13522bd773de23efdae1af2d43b469f9778ed7dae019b8515c7a213b570183f1eaaa4ff3fb50068f6e317e7d70693b98ed1d665845c875950f402875035d189f2f03b5a34d344494a14d41a36e279ed6d9dffe7d942b0950828760851d3a5befd7fec290292acad522d43b605352b674baa9fdb711c8d6964134bbea7232a1f4baf5e12c3a8ca47cccd7167e4fc2e9d5ebf33e97ae7c1f8347451dce37eec9d57a81a795bd3d27eea7c961192305c1b2912ead154abaa6d58e6079f715c1380d52db7c6b0ccc93fb7a3794e7950920635e70c041c6709a9b9d0de5d2f6d166aa87e4b66def9143e288d0d3ee415c16a9f252a28916b0c3bbcacde75d03b901882db4a13142937b646908f68e71e61c3083aba33a956b5fd9fbb70478faa86c4cd23011b42215331f9eacb3947efd33dee54e35509180ab6525ded9ec39296f51de4c9fa93b1d3ca392e63e600b97dc1d781349937c69f779af36638c35fda4332e700e4279a5d39363230616432cd6df409d56a3483914c802b674f77252407b423ea13fcdb21a97181351550b2bd36efbb2fdbe69bf94ab72cdf13abafda0d96bd6a66a35e6fb55e2e4931fd25d6731f92e79def3a3d9016ef02f270fcc4613d4aea47ecd7e54eb2a251f85f8004097e5901b2951646fd93717372b5486ce8ee6e850b6186c1fda58c62b3d3e1e8b391a6251655fd514b77d137753ec9eb413b814035104d57302ed1d7649c0e1db3341dfa08f3fd8b1b9dd0f76a34d57454e4a14a7ec8e057578319da9534e0381ea0a598475b2c99e5898840ccb24e102000f223bcecbdb7de792f6b32c52ebcfe9df50beeca63caf273fbc89b385709639abca81f2b0d1a020187f95dacf5863b211b8a63be3960db0a8459243b5806c563be9ac65ce5b6f8d5df8a5e1809125e6a610be35c5d9e085e705683fc6a69debb84ca0f88c4608705ee3af048b10155390520deee79b29b42e5f195aaab78a112949f2c42c083f92af08672aa8386da0dd34ac3f1c03a31bec06f013fe07c7337622a5967ae195d2c8b02e5890995748ac2a875a130259bbe1b7d8b4a748ab685f65c463b29a561b88a81192a5b8521c14521aaa1a6a5f0bf64d7b5c873338a66deeedbfe9e8293a944438f4182755cb48496a4cb04c0a50f1b252c260c570d442007f6c93fd98a447ea3c2c3e7b4f255fa4a30b2128ec61e60140dcb54db4dcdc970eb444dd0b216cd353c609a646b38e351e1dbfe5ac7fb102749bd208621feb70a54e71352b3c0829824d9a6ebb42215bcef6a75c03bfe8b6eba05cacc125f9053a3e4e4f9419fd18ab2fc414aa624a57ca5c2ffe0be01260fd6c4d0cff2edfcc76d4639ba373bf6db6ef6196a52eac58b095899d7370fc578d01ce6ea686e34f2303520eae1820bd6fd2f2878a40b9396f94cea264b2dd2bdc68b39633de71e32d8a1998644e70284b4fcb83c9647094d1409cbfee83603d69538e9aedd4fa82fc07796b5fa276de9f4b6377fba396b30f801424f2eceaee8bac846e6659886353ae1e4faffa8c65699d1ae6d2bc2d051a3b7223d0e22ef13c7b4276112d8d32f1b334dd20b856b6560dec15bd4566ae014fd3bb1108489ba1db322856d792064c2b3f307fd98d9f7e6c4482e4af53746cdfbefebd38d1baaf371ae64a09bf75ff0c27df92f44330a4943da935c5a3fd7dee5e22cae348d0582eb7da34ef010d21805757560da04a739cf323e27ebe1c922239353f2df250dc3027c0d7ad38a649a83989a3721795157e8beb6cccb738a5341b1ae7e110af49ec3084c5844955dadf3887505f077b4b71f4c71be14e329cbba137162c639ee576d19ff72b22370be8fcc0a20e6f834a74100ccadd511a0b7c57043d6e61892a8b599089737685d2448e8539f4144d480b27d49a2477cfafcf17a82b9142f54b2ca9dcdf4bc7f6da97fb343a190198a2e731f3ec225f89602d96dde3665246124594cda20b987b9326c5e85b008a92191e88f447cb9d852924550cc383f737662f4baa55d2dc7c474d6572c53a6307d7000a965029348d5d2e016ce9d2f5c28acf53d40d6394ca706da47bc80350dc8148e90b2778d93b0085cfc510e05f6de9b1e16d466f100649fe5a36421cdb4b83d41994996d8f42f339e69a7c78acb6a2d51c9760e99d56d6776d87e95883d4c5509484efbc5e8d9c67ade141dc7f023fd20abf3d230543b82c368c65693806af1a57c4b5048038abf6c025cacfd0fd65241b0581562ed8fe293e09f50f8296b9b9eac7fdb6a7beacf01312d12b2bfb7b5f6dd9629b58d0a9d4e6e7254f316bb857e928d4978c126c2c90e40f147a491447a54aa766ec5517bc4662aa383ac54f5c9ffd02efe3a198a009e974fa2b2a14487a2de5c557f25599cd18a1758e84dfbcde36c20373b765eae0e5d2a46a8ab7c3f9edbb65c570fc9b4fe94ec146d38dc08c0e82deb378515091fee1cb6ca30840c91ee84b2dd5e61218f8839dc0b4647b9781f561d1e4e03d7ea0030ca3292ef6081391195316b1e081d7118e1be99a4b8a2ac07318b79c9d6d11df2f38e34724ba6a195a6534b63352102832772e485a75a0e442d41de2c0e65d414a43cee11f9727b157d254830a462931a1e6fdf18b72f5bd3248182ed95e29be9b6d5f418f1cb89e32d779bebc31f371564ca66ea72faf14f269ed2708d6d7b4ac07ca6213f550fed229c200a731a5cbdeae5c49117371af4bd60d0c7a1aef802115fb2bd0e4d653b3d3cac640885a2f1d56bbc4ca9cfabe537e68ffccc444478888cc213d680e492b60baae79d6006e63781d2d90909907a5c26c80a310485a7f532a49486c4437bb70d1d3df57495928bba1837f8256c9838ff426e5717bea4b35f3f7deb671abc306d6621d45da994eee29cd9817703518c87755ab86bfac522cad15991d14640414f3cd9ba8ee5ed19db577b378f37ceac0bbf00f7803c1029b9e8b392edd0448ec6f6809d9c5d930a53563c3b5bb9bc0e9bd665b0ed0e9e146fb853e89a6b9e5b1a29c5a8272752113ae27a373d8d1ae4598c3be85cfcc885ba47a68081a99018613957fdbde605f8fa8855cd63f671dcde6206aeefccda14165814236ae5b2cdf37dccaaca39a20a6bab93882df0879131d96210d01179fd84a782814fc2c7ed00eb6342d901d57e050dc76ffeabcd3eac95a8f9e63e3226049d2b930b415793f8f2e8b40810c43900ce7c83f44a678f5f0fe573817eb8bb0ebdccbbc5bcf89e3c320d401ec8df96d7a9f1a386b898f919efd974ee51d401588b3963c5c4d379c5480a91bf461999d9bcafcfe69b883fa5bea1d9e700243e6968d776f75638b6c401a82078863c9ecc4949929e1b0b2351a6c712f64198a0b5e140ced6a85fad0e9898fa5cc7579f07aba15bdde6d7e1720c26c33cc863e98de3dc399b2e0edd15865c00f18d3dd3ddbf7b552d06edc8d8232b5e4c06e5859eecc3dc05d60de5d1a0a68af37ca84643800f9b21057c72e07e4fa3502285c3666eb20ebb912ecfc7bb0d0c7b8a68098119866faab777de98795b631f34db919215b58b0be868d5d5abb6f4bc6e3ed7184a6ba01a9bec144d3d86cd9ed79a60d2c6411fd454750e1d0cd9bfb870347b42d96fb7743df668bcfa7ffaa62d45cec4f1b5506b30e50bc26c8b23db8669149cba0a01eb864bec88cd8f5cd37b377d1c1a598a0e906f8316d6c1054255cd15531e610dca6c22675976eeb3ec11636b23227ff8f6664461f6be0d17d4a9746ba4b9e00286a44efcee8517d1b9a54ef27b999edec05b13fb54056b4f53484e78764c4ab694845223091c5f746d965f58a0b61a270b17c2d02f4dcbd161fb7aaae32ff0d73421447454e0611be86614fdef4e4cd1052d36084132ab1d66f83a47861e736011a33b2477e821491d0ac9a40c06cd8b228a9f76bf71792c3a6a6cd01d347684e8f9fb87d93bdb076965bbc54b72fece249042b8a7159c48e71b1ec45c29f4da3bf5b5fdb1ca4f09efe9c3d2f6901fe143d7a8c2cfbc2a023947fe49001b97ef35831a9b0b7a9166f36a9fafeb73ab320092fd45b9a1c09fc88cb9cdd8197da0ce5fe49e3e32d06750fdee1e1b8aa717a6e7768f3303960856460df7bc71d9b75cd76b73ed89fc46c31bd332a1016191e7a2ba914ef70cc39318cb2bbe5f5790534b16992ed741ca9d0f5e35e3f8f125f699de79a3922be7a15bf847740fc7d65935250177636b58be392375a5f733ee85d9419bd71c64bde80696745412dcc8f21d5765e01154e35ec0cf12404a2e5c992b2dbdd8e41589e089128fdbfb9f4d9c872921b7a2dafa6effad096dcca72fa27370a19a6891159e6ea088bbf92531f1a2cc69b5c522fe91486f49d9bd6dd1209d5decf4c69eeec8d6f23f50715821a97136ac1fde76f0f928dbb230b66c2ca8e5a6ddc89bf813896bcca7a7cfda78c1826b5822239bb282773c920afbe10d94a3155dcc58ede10fd76c8bfb3282a654bd27f4b74cb4ad1efcf39b6612947cc393dcdc1128c0f22884a76ada4601f1e8af175c7c086c19345c527472a1d9eac8bee6aabcc025c9088132fe8658f7a0cc143279d86ca84e41c81f922f4241b49eb970663b84b7da9c56080f63cb88147c03ec22de0d62d89e1a6e7d11992970bc29cc9cdea08456558374661e6e078682de497f7d8c8635621be1c4077dc0bc286a06b2d96b8e5c56f2523309a812ccd24511dc3a38c5566439037dc06db8293b3828b6d34513d46cacb501661bbc6b07c3d3ec4e5d40c458c7d9096d7c2e7464b78f2ad13be5b781867bb8f9945b07fb2e62193cf85c01801a12d689df562cccee6f35a3855b0a2f291da88d417708458aad95a1eca02f50053b2afc286d935c63e6ad2cc89c08b7c62c01f4662e40f139fb84c68c3904912156be7ff43bf5d3903381a8bbc7709c2a0634e981fcc33b2a418156ffa8ffe100144c8c40b4c6f43c7a96b8c7e00e86bc231fd45218ccdda556327725096cf5140ec041e940a819bb07a61444621512b0e0cf8d243b71afc6ed1bc9a1758b0dbf71e8e68c4e119c631a38d03eea88c55f95945627c1bda09729eec2c15b56bebf8345d03f3b8f23bc4c0e644aa0e25fbc85766ecf18fb995f25d35c37bf2bfeb0bc28cff8d24995379b9ede98be699da184de0fb73a05fb620bb93204fbfc88b058e08ccb48f4b9e42f1a6b95207db7022a9f39d34b85f59098dc1e3e958178eeabb3e7cfa5426393986ed2c2a2c79d3e033328a77ba025f3d6a0cc1e3c5ad049925c01d0f3cb92f3150878e8872610d3b675ab90847b5c16de7a0ef6d28711565708f89f5c6f542191a323cf71881b87e62fb49d29e7288f38f7922550e3e2b4d9db3a5a0609b5fbf59e62ba8072062a9128cfab9b5440aa67d1ac6e722130ab64f433d2de9ac87657cf2b4687201b2f071b2a48ceb743a8bef5c4e971c0c89d1675f4c2c41ac81d99d5c6af3d7fc1055cc0e5a865be393250c4189c5fe25a0bf99241e2e3cb3b6fab910dd36d06918de1fc41b6184f4c5724a3147c6c9757e706857070c4eb68d26d37eabde97b8d243742a0e260322be71acc1f984638d958b27b63e05a9578a5b660b348eba9da487de553832867930726ee07a621bbf75cb9a233198b1e680dab526655cb13ca51786a7c8a0522434be9194bb60b5e7fb3d2a21aed9e0fc47fcfe21d009c2ab311040fe21e6e489ba5c9962ac645ec753fb10113234d9dda95bda25d8d004ab5bc88c7d0040bd3a6b32716c0c293298a6ca678cbbda60d8933a45145557f71ca1a9f151dadf4082a422e2b8bacd5451465b54808fae8e73b392528a2abe580208245188a68e7808831122f924597bf132133e8b8621636d791abbac3b5d3dc7e00e2e4eb05dfa3949d2e817fd57a6158bf6734195814b98a79ddd10c3e5cb7537632b060c5ab5f5783c43d228414b83baeed02984fe36b11507e347ef27ff5c6df89f40b4e559ab261d8336d9aaad39ed9088d1168915d969489d32079d558d2efb0e11c7fdfe3ab3ea615f3f341adbe79c63a18f0ea995fb57093b5c9a947bbd80b6f76e9280957295554e3b1db483d853b015db577d02587fc373e0622d61bb05a7c73d52bb43c79e4e28bc272dd67d5acddbef25133aa2ab8f9a2d4073d827a888dd2b0ea65e7060653c316ee69b7a44780fcefdaa2a401eeb51e1fe300e5de89c69e5bbc239d2c8d3d9c65d207f4bac11d9028442f029cb09bf44f9c50bcd88e39b8d0305870e7c477b4d0e3269bc400d419af9a06166dc80f6e1bb06f45eb2a2f65a6291d936c0302a7d9f1d2da66c10b60c217a695fd397fe0790acfd17635f2ac0b512345041b95cb450093d20e077108f753fe94efd3e7d257bb5f12db50b559d017b8da5fa60ebe9f0f0df460284df6362fac0a2d30866e66095523dcec8a1e2340a71bb3188369f0190ad4a1b710605b56d96ac60a4595672dfa520edd523acca869a6ebbd117c230ededa4be490c3558b3fcc47b3c3608fff1535c0e188f9873a0cba3d19c8a21573ff70fc7bada5c82526b88a33df74194b471998bf8364708c792b510bf70b046c929ae5b66e9b9be1f94345357cb6e666e6cf8ffaf63f76bfb51b15b41a41b3fa70d6302734bdc7b926e5b996b73df5a9df89c5a62ad2da3edec39d1c9125a99736a714e375536edeaf6c84c0d063b9e1196b9ee1a7f5458f0f477eaa4d38cf746130d1f118f56074afcd6e84b53d9263fd4a86bd328baa18c270ff0d83407f5fc1ad7fcef883462498b26360bf78f6b5ed2b8b799ab8825061e48779652cf480b20eaa07f960dd8d12643c702374a5d9ddead252ae76596daddaae8be1de2f1de4af8619c504259266b3be0132ad89661ce90d6b75033f170b00a64b9ac024909b32bccf732522188ef3e7a6eb2283b4a88ee2bca89badd716b6333478fb4c38330231b23c425b4060e4b10967f10e15ebb404c5d2ad7150a18510e502da8019a4d91e6ac4b4b1f9db5738a9b4283622c25f95cb03add08cc063820ba291129ceea5dbf8f11cf2863083349b57fd4d2001745d1643b16819616fdb4a895963163b26c391dca68c08bbdacd127c80792aa0397823155af600ac9495a4352c8669601a9cb7939774710f5faeffde5d5df0a00dbe85cc0288275973805d05ca13a822c653bef695f66a708da5309f2544fb7c9ca3e229c044aa7c198db7689a869da38d9fa9c2ea0b8699e3cb23a533f9d594d4dafe41c3baec6b1e7a41a04197dcd9ff13d914a11276bc29f3831d6d8e59ad1aa067c38d1431f90202046ec50790c43873fc927a86a6c7dcc864ccfe9b49def5f4c0da3cdff0334bf5679a05ca349ef7fc60b056da95593782302f5f82f013247259762366e22a0e8309b26791bac3448527390b41c43fc60feaa4f89bd9411843eac18e50b2c33439a202402e141e9fc5be3611115d09a832e74c35d85da2e588a657d9f1994e7e3b3854951471f291fe045b5ee20b331eb5c69b66edb3efd27004f8f38bcfc5bd036a7c796244d63bd27949f432dbd93707e5a33c8d175fe53f3dd13bc37c8f14e49c80e0c2ff53e146d677ceb87e151a7fbe386a583877dc08faa6bfccf0ed2ab8d03d394601ed2b567da75ec1ea3ebacaed6bd2f9489b328389fb05d5edaee741bf09eae3ab893cd3c2ffe0f9551176a249dabc0880188ced5ae3cb2ae0395586a8522517a6af330ba2c2d63d3fa0a0a53d8c3d63f31e95f2f9d97d41ce3bf13139034081b1224c82935e4204efdb07f64e5ce6e67be2f0c6c406a8143e3c873c1f4226ec5737cd826f53ad3f52b66a689e3a7c4d64998fc86a9b68f17a99eb2ccb416ad3bdbcb961e4434bbf60da277434b93bff0bcac7159025f4216de86a3c7cb82b8d3929cbba7e0f9e17c2229066f697635c009dc519fb9d3ed8a5252065f09c186e67d06c0aba77b38861b05ed905bacda5606c1382571fe3d026a858405781ffc463b7dee4aa7c014397cbedb0b432d5900cae514d0fdb82f144eb0a7606d13d03967ba32a0f22582ecf7fb00eecf578b57eed82488dc130566cf2257e90e8a182725f28099b0809de1c318a0e17dc58198a7ab3f5a143f898f3aef0774000d988623950082c48193cc3f2d3845284443eafb5344e5d7b62f6925694c412f4904fb40180b81b4507668affdbbb51379d546138d63d5948e29fe43a89a7d2089aa2fbc768a5410f82386dd846f704aa5f37d2c90bb85331dcc010197cee05b942334f8c3b4f41b52410265fc1af3fe5558f06011575a3f001d869e528c10f7cdd861b28c56e8a3c11213ed74f38381b0b680cad6926336f6bb7d4196f335614b776345096c8e058c12eaa91d7a55951cf7886ab25680bfe4b9fe0ee0a6f7caa60824a527fdb6214d337ab0a2f8e75204a5cef977ff22c84b44e03809bb8e1d021f15499bac7be62fda835ccd07a9e8344ec3cb56c236a82ea049a3a219acb2c7387e484a9736915415f89ace91684a012d66b0cde8c228f59d4518b189b34414fd8ff0ec9bee2c31816efd38588f28fe0e715ed1c4e70ca49ee61cfb4acd68c13f9457a9d0f6c46d7453eee3a369a51e43252dadd4fe642f2bcbfd7f1cf9f090db6afe7b9ba55655542fcbdeecc27120e076f5355db9f81199ffb72f62f2afcfe06147d82442418bc3a9e187fee082dabc10cc98ba5bb30a0892354328665516c11457fd76db9472f03d3ed6f6aa0af49405007635d9647cba4e7b5a5aad98b9d2ced3a1c225fc552bbeefad00d1cc775a2545ec194c364157ef12c905cf3512bc2e3cbbca31f06651b1fbf116bc5683fc9ba460b9d4d4d01f14dd668265652228aab8e7476bc5e3b72e3c167697c6bc041adb422de106dd3b10245560b6c960a952d38c7a26ea18c3900f4da5b0f954936ce10920fcd506881cec5b10b2e06f7a627c3cd8125a7891300f47b80168a62d4a4c66af6a887735c1b602dfbda19ddcf806f9e7bb542ca16a7546e2f3a21b21f305b2b65da505fecfd98a3cc640d00f7c17fbff77ac324ca33d60856a1f2b6dcb1326d5a06c9109e3440b843f955276ea06b89cc1d3a6221a1dd2ba77219147ae36a0c4473bd8b277e877e338b21cfc8cbf230b587b0a326727c75d9ac84d14b1704399d2b3fdc0854c6c3decde2d9075277f4bc23dabbf921ae8be6d83308a12848b213a869bd2593f2ddcaf92cec57529c04997cef84fbceeedd9b1025e3aed00ec2da7c59ea0acae274fc9d1150a555c4b2cd05cd81747dd7f503ee84c636c90e376e244dca757bddb611e643cf248e901c5dc143dfc862ff20cc5a1ffe605f8986af6584acc53122e82fe99a69708b2aadff5f72a105f28b78cc9890c31df039d8ae699a30258052fefbdb32ce22dd32269b6a4d0aef9a6418cd2bf5c5b5d872a84655a583c5f868642dc73618f59b6e66ca93f29f8e0ae4f4d7a521e822ae0a715b4328c7cf868dfb395a67a4a1e5e8bc683a336879c6ec0f7dd9a986a2533023419edc41100e40ba152a37f983e0ec19279374beef644119a227f2fbbf15465e8fdd41caf20b5380ba25d9c2d73f4864b51bb192cdfcfdd5320cd66a344f80c0bf04e7abaa44efd48b4d8c846ea6ddcf60581315996b36c400aa6b45ab6952e92c71dc86c12eeca270dad9253797f74415ccbf77675acdd377e1a4a86fa7b37c1336656777b481a1921f4a76d0fae9036e71c33b29c34bc6613ae5d96aa2f5b75574c84680eaf3b0bce8034306824eb98186a668b27d7642b5a6645b8275a08c00ecde50354b0c85b3dc06208be80e3600cc389af68bd7ce3ee587ec71d129f164b2603b9eeec1dca988ae86751d661b8c4de726831561e463892650f9abce6b27686c20c713d28e716b51535c43f6b81aae990301ccf89266bf7dcdfedbcb67e1742c9523518aa63a1ef9543c2795084f7758a83ce1a8bbd1b97f2e77f180b726fdfaf4d047330d887c0c339678b31bba9775156fa7a31f3e1fbde8fd88898b8366c9716cf9b198a22005d68a2e229315ed6e00e65ba0c9a507c8281dcec7aeaf8b6ce8649b2f88658115609590d7c2bedb6ae606d9e687a718008e3fc45a4661e444a4d62e677140a809c0ab1dda8385e849450c285b5271838ce6b8626099a6ee20482722505ea06b499b7ea6aa28654b44a1c7b20a11aa5034b7eeeb7893a1ec2bfd1e1cbb2b0de83ff8c1983e6f7b4d52c5d67d4741085088c2b5065bfbef936ae6b20178403d0c55529abfc73c67e14f2866e37cf159f81798e763a3c12b7f711bf0e7c5bb505eb22501babb499661b01d3ed902b141d7c717ffd170cba1e0f7b02c234d812404ebc0720b27db952748b83b919a1381f01ba6336a338d59104fa6c589179e802fb57bcf21a7775aeceb73ed81c43c848e67abf85360fd7ea821e5198dac0ce667f2a98403e2d46d0e0fb504fe3b35915b7942fa9fead99cef247c4e4cc377fca660a5bf488723c2dddda2d4fb2d98238e713063ba60d1fbe099fdcda302b81d618145d846c95adb97c9de996b62dbacc9cff9d210f6f890248ad1d69519a4819c83ab9998f6c7ab5bc995c1186c37d4f416c73829cdaae1744e1049a3bd07e96873081e99102f5c84473d2b47f60b11ce43eeb0e346709e1a3c25ceaa0d671a10f01ca171959f18703cf05a1fb81f48f64302d2479cc4d1606c47c8a1829d8082f4910c8ca973068acde788ef5472ac5e16c66fbeb3d866a7e7b46413589e3046b40b6f3769979b05b5295a1b656c2b3da1a63dfba1ea66a0bb9e1fbf13fdd9a91f1943ca1321cfa19526c4b9806b8ff23fc83a33125ed8fd418dd0d3a044b8312d592268aa1a436d86db47246ae32a3447b4c29d41dad1ace9d648ccef915f824dbcadf3cf782d3a1bfb62438f4d3f30fa2073e34608e3217d2b63b526c8f9e0d3e11f9911d4080be129098caa60b46be78ce5e3a15a97f265303fe180d6e045f1c30d851966c1c95ae947b78de3a9bad90fab1308e5874e1c109b42e36249dff3758bd9a5cd6a2acfe21f99b38b7a5474345c64fbe8573543fd08f6c595f46d025b743c17b41d067f6e44852a11817692c6b3c02797af30e7e9e411bccfb55863cbbde9b2ffce1b57365ec9b91658339535cc4b3b98f6703aac5fae83778dcfaa1878858dbf00e05fedba439583ff7d0dd9e361b343b652a6d7be525d5817822718e09bf6d86ff01ef9a801875468032e76fde4a14bc9dd637c20a88aee6bf18b5aad4ccdb701df62566f2a14cac987706fa640a9fcd2c44c6818e817f8192d5de6decaa0bcc326d06c581f598ae091516b6f953668cedac4dfe4f275ed5e3f7ed691996cd2c263a84a7aef1c8d19777c889da6295712b9d13a56c6d7f18f6e0e73516126592ab7a20b975c640eb707ab2110840a2a31b77ed20b56427146f3bed12b7ffd4b3ed7a50e7e06ef6406b4f949e9cebf9d5cb0a82f8fb243c6969e507d73a9db6aecb3de6a5dc44545944e36e3aa570d45bdc466795084d2d950d1f990821e046e9c77d4fd78742e093c4c8d94ccd1ac9bf3b1829cab06eabc9dbc9e01ef4589659db784dea6557cf2cd1dd0ff10a1c54df0d6a98fe4733f4ee8736b1032efd4846224eac825d94721de3e5d5ed32de6d5e28ebe6e7119a4a934b39ca58017ec6c4aaec93a9a599e877198fbd9edfe801de34a304edc0c6f5884e2fe2b30d0afa97976951e05c8f5b76485defcf25d42fbdccce984b226c7cac9161002b26de7cdedf407849761690fcfd862c363e69bddd46626fd408d85d1e2911bc06cb3edb722f4f9eceebc613b78469c3ae05730f1de759e9378d3938f7e5d7539174cc853a2de2a2519d70a1fca3cb0340954d5d98966771be70bd5f43eb3ca27dd52e8dc5e3d278d84a5df2ebd1e8fad055ac59fd6645450d7ef48f9b6ef1665ca64ae51822c770d9bef860f7d2560ca15775656fcd903c2bf627f6aeb9e00310f493e9c93c19f8e44dd6a0a8051328efedbe16accb7d082aa15c5232c376e19ae94a500eb71f582e12fe0bf8d8df20d95145e2d313134dbc15804c22a2cca5d61d682aeba3d2db44b9305e2b484e36e2eb22c553826dedd90fd98509f8348e7f69775ec795d1caad73ee2bd4d7a2031eeb0dbae04c355fb286d4c4564ddb0336a38f5e8bfc727838a6f027b5aac4e9e461e84122fb30985a00d71838ccd09d5bb4a6fccc44f877d9815758fa0da66357811abde808df9430eb057656e83b82b1b2507875aed35dd9cab7ae61ed9a9bb7de1a8c290f9689186d59df1f250e4f0f82ef45a21d3f85811ab84d7bdc570f9b408ce85425ed842ec3ce2a8efa8dd15b35f1f5d10622b40cb3103717d72bfc87abffc5d87069c35014c0f3381e96a641833e522bd6831fcab10e5d19e872847506e2d2d631e9119480a9cd447e0cc78efe82b5f2a40571883283c09ce09bc82048044fa94c03914d85c9079750627cb4ffc4d238affc20e6f15c06ea7d9fb89f2b2539d8316a5746001a6d931f8ab19883a38b18ee7fcefa52f88a6276ad32e475af44d3ac3656cb976b354cb6464405cb752eeb49fb5eca3a892f90da1750053f35d868fc3fa8928ce7ee76b23c9f22ca3af7d6f810d8c74dc8aacf35c8b90b960451dc2aef491325b0ae6710c3fe1de97fc10b148c0c0572c36300df3f03294fbd246937f6f7ec24d21d407015b63dbacbc9c31dda0cd0c008935dd52d5643500e95ae9e021fdeb549b4e51277230eb558b8e4d81a3f88408d9e6e393362004980226eb10409518b5425fb3d3d6b0d56c9f0434b55f354bfd7d794c6c0bf55d47d3985269d2272d65ce3b3e7b23bcb7efa26ca4dfdfcb09f50f0bc22d5dc5d3c482c1e53a713dc4309c91fbc38765d470868cbebeef82c61f61e34d4759857436e638f1f7f456a55a05e00871578f0bf5c9efd585a620637a0d8c1f6c38ffc46f91518a177c12f8d69a005658c2614bd283b3bab18830785871cd9926e2d04351b34b0ee2817c676683d927f5f17684dcb34f9b10557ddcbd4f3dcbb4e09d089b4b3f5c85576a73e4a3d5f4422b441e94bf442c1662720368854cd9f0096430347951e4678286ac7e34540f9e6ce714857aea401b6c664ba82b0560cdd90b71dff2248732db06258ff9577b15c18902c4ae617d87c024770f29c583629cd1fd00a1870a9973dac5ab378e1836401230ca42d385a566f6254fd66fd809b3c2db51792bde780689408ad14047562b5013d58b73f0c5d7aaa96d5731e847f50c7660b587f74778bca30c37c2c1038e94cfc2abe470cf3c95fb3bf8bce0eacb57c940f9e580bcb055cb83b7f8648c4ea59b3446230be20dd775c6b76f14e28102c190b065b6cb18c384f4e368432461aa718b3fe0bf1cab7a334b5a51199af027034624129bb22f9095615ec71d36a92c6a1e6de0c9cb621a72c1dacf590d71ab849876f386e49e9898e916e52ba388e1657fca4350df2a0a7666d6453734a5355b6e77c976496b8a0f63992afbac5011f5d2e6347a633a587da668ff1834cea878734685a0c37e02e84e8a8ffc06af67014e60627e6fdc91fa5115a335fd6a99be1a1736954be0e776c035553064f468e4b6015a2f893e05b22dfcab372b558cf7366e607e66e7a213a36d90f01713ec9e1c06a44ecb55c67ac753704993b34032602de9b435f8665ce425779f34df990c297ed66face1b39aa42002f8615ec35ff7eea65fe189a0203590ff5b2e867a0419a69a55ee2b83cb9f84d8100b14b5bda8de18c4e22eeecb8c01258fdd124fa1803ebcec1d789ed8bdda3d814dd2bcf4b070c74fc9e5570be145c9279e35213d59b75909d6881329eab912bde34021f8de3f3c9b9be5ecf18b65d0df5ffc5e5c13e8eab58a1b7ac147790e214041a94d0b451f326368a6bfa24f64a0abf157b74a33c4cd22d9a6ad033a640db53088202f4086022dd43ed42e38a9155beded61e82ef0ba232882c83962e0fd42d500e8dde23ca9f3274b59c3f0a52794f90d6e63cd5249e897791541ada26c09953b65c2b68741d45e49f80eefdd1cc151d937bad71f6dec5223e4003fcf5a8e37ffc38b0a8b1c054d43d2e9918c71bda85f7f3efb5ec8a72c65ba1df1590da8cc6f38276e9fa1705b86a58905987d6e91417f68737b2ab2ece56e8ac63eb85fef713821b0d6c2fd90c10af0ab3a54a37555ac2829c9f0f372ff51f68df4baece2dff1f67ecf7fbf948f6276a7fdde5e798d0b225511dc0ba2d919a7b334e5d5eaa6b147870cb67b530089e9b80655ca484f852f786e7bfd6eb04b1488cc4d0393048486030d50068f806d44ff49b33124819a47df320b839e157bd65b461b9e1c2a4b53898e8180e4e3366f85f08817414add34f197f8abb4f1e4ccce76f89b8e50df6973f09dfe25a33c17a88fe063c693011d3042d8d5812636711c23741b06145121340c6c3bc9d210c9a9495fad56d5dcdf9c15a51cc1058f86906711fc6a37af01caf6dfe4a411505f8434c7c8a12ecd86f4441adae9f95a2d4a590a4fd609c5ebc8ecf2b4e5b19e3ad074982ef1e2c4237ab0b9368132c979dfe596e93c13cfe9e030544f0c40be4c7ba7c2b33b73d5d3c10bd3dbf292750d997179113b6d97fb1bc7d1bd4ea96e87980196864713280a8d3c3454ec5e4233181687b8682ffd00c4e91159bf029ffd51c2be032ea78ba4c250ed2cdeac848c78e4492394bd356f3d6c727c6b3e48dff638db51eb620d2060054a06119c13c5d908dfd34b37dd6ff9ad04091b95e4ace7528318481dc21fe4e7c198fa454176a33016f29c65d77f7f34f6408bddc602ce1f99b336141565728731623a9ca4d32db136bfc17a904e9afb85a7d4bd7480edae9e7bbd5b75650fcde307be47830bae91417331d1e9f43458c663dc3a8877598be777af5e14ea14ae4466e6f8047bca69252d27e02b3b9dd8adcbb947a5ddde54a82a3b054fba718f1a74c267dbd30ce2dc1adc7a08b3c820d12e65b56dafa8d7c51870bd003a33658f131b3f405ded2112a7648d93f0c1b9c019d52615a3ef540b580e190c444254c8d861356eb68a6eeed27c74d788fe36a767bb0198d0c7decfc8bee1195540bdcf241e5967940a3fe7d895caee1c0a7923e95d3dbd5d032a57bc75ea074681fd4bdc20073caeb6c3f2b9808a9b592110a0289d16d30421cf4dcaf20ce639175226c240435f2e325100750dcdc064d629620109ee55b0985f4dd3a151d7d327d72d26f439fb8feed6c56261dcb2c8ae057c80a918cca85c509cffbcbab63e5e3fac16be4ceefc398f8d5bf21ab575ba6d4883b53c3a0c04e2faac312201e3be1755400aa63faf02419b63296766bfc5bec4c721ef1246edd7bc5d32942ae6e75e0d9ff737158c94e754af91cd3c4bbb7ab64a2e70138c61cf40c0206862f035723b972dc2495067442fffdd65790f6eedce06314569c7d1603777ee4dc0c15f491d0d9451fbfb5f735d944332d844c5f17a70b4a1bbc2bb48b1dbbdf169c194f95f073be38d8a1facee35c045076c28d69461c633305d8644d02473cdc6838f787d10411e9fe232a574a18efe29a38ee6198597a682172ef28543d23c20e0afb8d3c64d02c26a8009dcbb253c61e17b7d184d1e3fe146987a9ff3edfa1d1c9789d5891e4e367c05fc826c38dc28149b2d6a7f36e3b621bef6afc573c335ae84816208074d2fe1459a564536ea5bd77950012b7c5cf5a776e548c71e254f4a800201d5462b792310464ed69ea3610e50465eece9811a6d770ad9f71f257a1372d04b38212558acfa4ae68d86574f64b0900a9bac41a099ffc1cb187a066bcd2699ad9ad85e757d7caf1726a8f561cfbc6c852dcdc23a66c31c7d35e7b2a9f2c8e317fb803cfdd537f95837c18a3ee1d24cb5ffe0cffe5467c320bf8d5d989889b1f2e3f85d4e08183024a9bd7430625ca8f0fc2ba99dfd455731ae3a9b65a0f10f75d3081e5c17379bcec0cc98a37bbbdf92445ae09f9487687614d67cdddf88feb20bb736d1f02566e9eba14d42cbc408089fdd1d3e5d590ab662333d0150b00a1447380da10828012661cc52afbfcc2de7ffcb078a4fee1bf74b30f0f160f2e99642b008be80726ece82d55b1f0eaafc1764af636f619f6f0b28acd1404cd9847a30acfa2c67166b361ff953f45864cdf187c910deea13899d14a4531b7393d3e6b2568bcfe948a5e7f9efa27b0697941ec54c0f6b4e26ad1d4cf730e57c501a3d9ecd2a9ee06125a1e2b8d9a3f5d8cec3c5ab4f586db6a2cf3d8d3558b5b0ddfe9705851ac484e00ed18cae7e4fb0f5748666d89d0970e4d23e00cfa9c5f44ee0b745a90efcf6447a7bfd9617e72ae2879cf86bfa050686cbd96b73fce20b16f001e34b3cbdda53f86f2dd19812d7d12884b01d0126e3c4592b69791f81dccef2b580108eae9a37a6ed914f4f354adca7c33bf87bc6ee6a7d645e323b6bb4957109cfeb93ac25c35ebbb877d1a7da444fadbccd9b1672c38a428a3567fb88791d4b121974ace4babd3f36cf0e32710c81945bbb0deea851932fa58f4926f3f6a9ea203f31968972384977606a802fd8647a0f6410d0dbeb399c2831b152b8753f51c1c19b9f78224d4267f8a9cafcc1935f43cdfc4265944008151f9201e989de102e7d262960104a1245a800f780b17a45c44fadb6bf8455834afeefd647d72c054005aaed74d61c1817f5f1cae8bb0b8f501ba54fecd16f11e9b2a468b49cbcf857a8193466bbd7f9e2d3c2031f45c669f54f12f08cdb12698a8bac4ce3ef5d6312aba07648b58dd1ec3bd659d48f612acf69bc7b2caf1eed7aaa23cd357c36b82e4b255a9f2b1a33d4b4b4cc0149cc97e54b6539681b3a07a9eee11ceed81b0431c7cb083d249b5822e6cf152badf2db96ff9f776773f6eadc22a1d45dc60934301ae9f3c3d3ee111ef8743421ab16e0da2a63374201189a9cf23a1fcb1433bfa2f372655aeea070258d9e0af8a6bda7fb7521bb044e8c3e5a739fa62bc7e48c2bdcf567d97205c9077b5a74c14b27c0e649e97efe66cfa8277c727678a2a1a3115538305fa1c5c7bb50e992a64db67f2cb8a965a13a23775afc58bba3c6014c3ff55f4d95ed2aa45f714c1f8b44483c02a933b886a296515a52bb7bb5d9daaff6ea4278ec236e58fe0405d12ff5527fc4ef91034cb92b9925f9cef50d509af996ccef67e7291aced836833cda063bbb85f3fbf134dd71b8bab009eaa1f97d17ac253c3bf79c587b059096c156239ffc742e45ebe1500287e924f743f1f189f3302a01ef5315be725dd835bff380e64c5145625e473ec82538de72f055f767cfc0e2eaa26e95ea9dd14481b63df54ac858a3a97685ed4d7d754b1d91bc677253fa62cca07eb76b3e9ed0d9cdc2fd324638e06909ff0e821c92d6a391b1d90f086fe931b53c437948124526db915c5ca85aa2a07ccd52f5843d07f998d2656068541cb1a494eaba250f269bb137cd26ebd6d3f176abd4b0efa35bd7ab804a3f9a13866a0124738b3c520e4ab2df346822d109cf2de96cf2754a02f568353495b6a8dd636a69ad18b2b5b401b01b1ddfc7bdd8bd6dec3019fe6d2238ee2c56c166ee3063256ca5549fe5efd54171d5196c4413841afa5676e117c652af7747432cef77175764a090567200568cea192ee33c58468e9924f1929789673722c4343a85191cae616572b11891edf74ba102dd0131840416b8f1b2b10a9b3d1e7ce7e181168e7ff42b56b99bad17f38465b8f06da59723825002a4860bbfafda2ef4f573539d739f4567da46db1459c8e4292660bae531b122e590e990a7f143a2721501951cd3256d273ebd24511a23aec912d996ccfd60623c648a9bf20f2d43493a49da485b7a363782a37f0577d2b5f38b45accfb7f4469a97cd1d0284f2b631b4f08418f6f73cdddb138fd4b90da2bd2c88aaaaafb9a90158a0ffd18c16d9a97960b52ec94e8410912e85100b24de044f8559dc401aa924a686b6c03f3b055dec37fb1dd78cc8f12907d3855bbc1e0e29d349a40639431e4733b7b3314194e34ab24ef44fbea49e7df87f197b3ed1cfe4d64e3b0d8f58bd3711bcefef6a15f1407863d2d12c16933a2dd06e8bd57af65ee4f45ff0ee333d434245e33824d0edba880a3f998ccf4cbf06807f85586931793622442ff65acfffe4539eaf51c7ad55f99318b5b473e52910fae05372af3e9d2098579399a5f9d7a1fa27001b98b1ba0ed87cf6d38091d2fb2a3abaadf6c9149017dc2bd59c741da2e0fc065092e364c17cdbfec17a2c5e6466c6c6e695eae9bec3ca6081000760f02cc804cf648218f845834c0298d5e3a8d5a40b9679814ea645f78ec434b2f7cf40d110acfc1d1ab7967991be65f9adeafafedecd3b20dfe338bf5034ff2ee06897496ccb9f390f5e85d3a8bc4ee2f28f4df8ae6864f4b6ecb76bb2d272805fba6cfa9c50c8c1de3ec37b8476e9d516ee76df9f1c4d5312196d9a77aa17ac0c0fc26588b8d42514a170098f73f5a80f1793197d6ddb375ed6e471bfecb75489863aa4eceb7150d5a8237513a62ebc389f26d46c87aa7b0807cbbb3975ff55343c52b6fd3281d8cb94f8b3c6008828601ceb401e31391e203d5e5206810bbdeb2b2c20018e4234e208273b2559b74ecc62b91afe40baa8aec50de165d58a775c40c16392c1ba1442e70e9f6250c354f29e2468e84d30775ca9915351c6ad1e1565965f562aacded2ba90f72f828a187d273e88ef7e4135aa55533f7457e31463ffac83f3b959291391ceb645e5e317c028e7f2b696ec0f4466c1f8e7c085a2e8d818c2bf702eb053cc6e214fa9a1a984b425fb4408c4fd0afdcd7b0109ddcf539771b673367c2d0585a48cecd81d469bb0a1bf54b04ee1ce8af5bfb966491edbaa329d14977f6634f3436e3cd5652ae5635d7ea083e26fc040b6e3127361d98eb700d8c36e6a05e7e3a03705d87f7c56d7a0fccfaca9feefe8830d5bc0f78eebba394ffa828bc27106ca5c03f7cfa673a7f97a43dac90cc8a481d315fcd500fba8c63b151c40afd74eb1c2b0dc2758b6fcb575560a6401896380cb8bb7c3cd481db83bfd7b3b0f945968a5e0521c9700997b6335ee4b5e32ff80444558568327cacf975b550c455c2213d9a41471a451025b831f13a28567942f5e958502f1ac115e9c60a5b1333557c1527ec91c18c84f07b255694947cc1c74478af169e7875c9f1a690bf8725bc00725ba6344d8a09750386e8857b619662060a252050e18b97e1119e2b1285c86528a3ed401a70e1215af77da0205d15e52679cc305f8bf6ca0f888ff80e199090e37015b1afc02e025281218765c0de74b724d7368c7d8aae1238cbdf51a0f90ddf2cadf226349c685fb79a6674b387945e3d9720258d7d5f5f7eeab5ec58e0bc76d37d1f1193cd319c07fba95886a1b6a71053c76d5b2101eaae259a5b52750e38e0f54dddb399df5046b185be6f34b483dfc57878a8e19ec067e1e023dec515b1ea4ac38e31e0ee3d78d6a856f5b7ded32961c30054ce0cd44f7fc860b7718f73760191a874258085a48f200ea48ce7d10c973971c32d7c20a0ddf6db56d057289bdc5da8c5a2eaa3128d41f76202871f056085e86d4691a1e7524a85cb6deb3709c67d4da03f41473df7f471ad1bbf31d3edf85412974c4975ed9c318af0db882d1c62b472118ef48df65f641413259b0d4c90225764c64005bd47df89b3d37c373e45e9d96e1e2a5ab6530493eecac506b8e9666e8bbbfd699beaef8a20a067be691cb12fef828074ab6fb5baef76584c385249a20aa46f1a452fb1f4380d9462b866f4e3bcc6537b7e114440371f8518b2b242c9d95d019378c183a688228da286262b4c3218fbe831973a829d8542769c0425a1773ef6c2a8a21e7945b6b0460481ba6d7455de2410d998fd32f7c1f4a2e0f297013efc52e023aa0f87a3762f3fb37acd094f37a2fd21f2f794c182c43309c409800e419491b8548825c6f48cd848cd911133eefb68f256f05d9c86f62a2c612388beedce75ab11c90c051a1d5be1bc5a36fb5911b8cc0c39647991e1649c6a3dcad0886a50e37026f5bf57c1d57cc64753ee8d67433e2f892a54bcdedf779e6b567774ba2426b497822ecfbce20bb5af82e9b415cc8ea26d6751fd3439b709f387ba4f07cd1242cc00003c1b37ee169ae422be292741c22acb78db58ed9cf2cd2e871919d23a1733be1bd8bdeaf43b44df5d54d61c75de8d9b898b18a2e263b7d39bcf94223333e4d848dbd4020925365dda1e661a3284e971f74e3fe806f826e9b49f5365347215a0793aac36e859a0b911498e2241367416f7e1d6e0cb5d5cb1a27799857055ee5671d9f019db511588432b980674a8fa17e1ccd01942d147284802ebbc2c7dce1e1eb3c91d6584b912c9cec3e1b4ce5c8bbba17773fc186186dd70cc63e48af3d0d242a120a7c9e9a458bd5800e96c95b59720f565fc9f928d4d427e88abf8514d5c8932a4ee4bb138bdafe4c626557c598ea230ce56219e756f49dbf0b59a2ffe8d347451c4dbecc80de01fc88537094188c19551f2b93c8f5a2f73638796e89e9ff99ded4288576ac277b8d2bd1ffabcab471af3d3cae4b41cb8895056a071eb73d08303df6372ba216f8eee0a4f78072de1fc8423bf568ea731c5aae4ad342f601975b2d763271d39933db7e36bc8af3e43dc4d04c1546cea7fcf33181e6cd5b74715b53ba67db35cbbba6691808650dab07fc40fb170122fd495ccf06e8b6f3abc13c32f7daad0f821fd6fdac681f22bdf5f28a1f4ac5196ede23b53a082dcd511338100ab105e552e416fb8065affa96f49ed34d67f963e6728677b554be9c1eb519de955f0078e56746e452b4477e3bef0151585c166ff2e770235175d93e5588ec2057ef9e8e830b71baad6125ac1552651b79c8322f50806c318b500740e76d6502e7333155d04fa59b53610a6c9edb9ea852c592d417446552c8de9afecf5bd301d9746bea9880c376cce25217ac5093978921ca5ea3d8e81264b35bb6acb0d6dc98151bd8c23c0c86a841bdfa2b4064ff63e730e8a74c01d498293f0b7eeaf24e0fcb4cbe4f91337922fdddc5141999890cf2e43f17ff1d8125f1abb5b98bfefdfdaabb78e21a73f68a006911cefbd6fb7ccb32f23fabc658a57786a7b1ff6a99115a1bde1225bbcd2016132663421b389fea190095f4f893ea983050d9dfff911baaa3162edf22b569a9914d75a4892d8b737ba967de432649665c7e34eab6232f5758c77821ee8f2ec816316c22350112c4aa4d99d0c4a108ab05b0656464af3af3d2597d778c29ced5c2c0753cdf14300f68710eb68d846d4429ee2cd1402b51db8aa2afc5e1a79c75e4631a2a121878810ac441cab9e6ca8632d16c9e0f5c0892d9846ecaaf7776b058b2494c00c15e9c62c9e8c348025a18675f30dc8381f738df10688a41439fd2e6dd52110ceb23ec34fed1f77ac44270b1b439c0aae58426a3ec483d445338e3eef4abac3e245ef9e49b89ea1f140b56aa605573985e0809c365326478df51ab3a647352435ec2e5ed80739d494ac15f474979d6822bb34c37aedf7faef9612e17df44861fddbe3df6ccd173d9822d0de6718c1c27d3eeb85ccfce28e786bae4c19a69dc7cd518b1bb9e2e95d0e5e1d6c6524deb6cf18f5bac1e5fe855c1be312db28d4245c92168d2f912fb77fe6c0e714aa5bfbce55b5c0d3a78b4edf99e12b582581634da090383a5762cfcddc940e1b5208a6b338e22d9fd186d7504d2d1be504be9f2716c0f161f14d37a6816b0db3786a89319a840518103c3013945d2347d1f2669241579f96d228887ecb5d16339d32e2a42e002b661e201d78cbd8eb54af9aaad1f900189aea4517d67c646ad62d54598eb8a50930feeabc5072254c781df81de0d076683f0702673922934e94de2068f816acde0628386e6464b815b6c6c70d8ffa0fc06b12a88ef01b861415f57e71a276a2198f8341240b44a58ae17c538c712f347f00a28c9477d08f671608c6b6c1d991e4ce0ceb4a5d546ce0b0cf7126d6d8b8a389f6367b1fca305e6cfe311917d8740de3a99eba5c5dd35d236295d38e6d4bff48f7413702dbdddafaded5d500d2cc220a01328f1566f927750f95cc35f17d39e2f0bd24c000ac1716a2daa716ec1888cfddf156e1417c5825775f96aadd71082fcc914883fe2c77631d7407bb8d156d5c8bd2d4e682be25c86ef47003126865b00059c8def9acc8fcce658ef84287029e9dfce43a178eedf03dad7e1a620be56ab5534f01b2f7d313dc086f79fdbb55d1c8fa4211402bb89aec34305ef059f3491bd34ec38ffbb4574f5d802235fbd334a63d05719b4742609b8e6a33c174b5ea591d783fa93807e86ec8d7cb83196f4a939e225a275a954d27f8fc72742898a2c5eff53e926de8e2bcb4239b5fc9f6e9bc6a56a87a3cf101c52769a26d23f7c9462f0b6b858c63363394239d483ec11db8e84b87b1cb654fa00539f02a42f1af2a1879f73f63f85f32e5fc9a81e1f99495a82f2c69285b293db69bb93b911bb5d831b0ec6d00edccce785a0c299770319e1d3bf0f9c7096bd9287a3e9ea66e8191fa86459e7afcdd87f5a031f28af768fcf72f1b5255356e105c825faeadf5c343e8b8d6528f692af35732dc2bb2d2b848945b21ee902656d4e39e87d6d7f1c9c92f1ce4c2b68da962bc77cd30d040aba09ad1a8705e1be559f93dfd85180f02829f090f13a04f9c244255af3a03c56147d3fbeb7e83a2cde98d64760a95612ec5ebe63c5bb3a7d251cb12a842c4681a539d7526a47e420809ee63084f73cb51136ea8a6bb37f5b30113f0140825515fde24135726413003060c04c926b0b6e5e5cfbbfc26f4092587c9f4c432d7bd8812cb6e216234fc0f4924226dea08ac700ba9afc727eb8130b2febbbf13f815f33dbd2fe928263e37513de15ff94950db7eaafeb5f25ae79df057c585b74d7c58e769e2e4fb8948a9c7e706ed8e768496ea408a24afce69ad6d5d9b7e052673f3a141c3ab6e5bbe4209b9b882625629d930c15010be29fb3236f8647abc4aaf544025af9256fc90e53c0d37dbcea83ff2080f171421b13e7f37a144b7f999a19233c61bbbbca1b03b60b75ab922652889a10c5de91aa9d04d6ae586a9da7c79f002240aee44cec63416fc683d1fa7a1375ce8ad673cee17d5df0c9591a7bbf2567729a4f8b98c70e994f67825b9edcbe8774e1cb32fdbcfa4b2b41a3aac2b77f269aacbc268afaddf83cb849615afa88bf0b6a77a8d10460a7564d5bf0a79dd617e610132bcef086f4966e6717d98e8ab67ee153b5d24cd3b8d28c4f0239724b117519d2f8af2fa754a549367518022172ce43e8652fed64e68be5e1441c4dc0a2be4d1942ecb23b887d0ba1889312b0d77bc65f2797f591b1aaea623d8ea19d731a3bd31605b1b92a78fedb09c21495d090f0a57fb3a931aad1bf3d25527a2f14f203ee5e4e7c8332c36136cf8ad00d8b268b459942c041b875ce945ea71a6d5547309e4fa943789fc137a0325eb26b17fdaccdd7ed4972b99ac8d3d22255ae0b44dcc899d12e22f84d0d10f565844169b62bd612e2ea7730492195873a82354fe43d5c1842048f1af136b6b27d556d74acacfe01639d7754bc78b713c5288d239ef4b7c86ba011eaf817ba4479bcff98612e42ea9d617f96cd2d1bb12a43548f2804919fba880aa512427bc04056236de78effcdd0e0232bf21fdf89692bb716cf104aa11646ea10a86aaca2e9d9b77571bf57e625b91601dc0d50238d078614e8f3f7973056119f279e586b553f45181896f5d26e857b7d54edc42b4f770215016dd2f3ff48164b52da87670478ffff5cbb21bc728d654dcaaf12cb76715e750d4967d05d612543f276ac85957f3894eb2e518b35e0640cde6ae54d68d229fabadfd979a62e0c7bc598640d9b68ef65da3cbcafee515c1052b7bb4e94a6e965a29cfbb82fa2228063b2e602997723e47481f08c50654c0c5bcd777f9757ebc688e6a11ef18c7e7871d817871a760618fb323b4b323bcfd126df8edf5d04294978dd6febd3123c2c681a25082665ce1d5324aaaf893cd7ad16a5384ec7a75587a2aedb1a7ee7078a4dc2be35c79271b3fa3c909857f37422004f0c802de6791b1babea8362ebada7ea25d690e309d1ca650eded22de8ab2e060cef309e0ad12a39945b06143713155e0fbd624b696a78a5b6e02efff7a8e0c7641d8e66e77a9b4fb357fa43bdd50c807bf291d3e15387d4a03d060c60607098066caf98db1a81a056b9f3ad894149dc3bec085182e08b692b04b98b7e71d3b466b91352b9c2368f0c394445b40beca3075d4e322f863fdf2716594884f0f3e6c23766ce51d0c96aebbd44121f631293fab622d621ccc4798d33c4acacf34d70fbf07b278909fc5c3f96471d396cf1cadec20d11cf7052b652186a81aa39771895a423c50b15ec2cace4e744a619ff41bc951fb7c4fbf5567f596ca2088cf4a46c764b7a058d02845737691e0ebb28932da00f6d8efd59167e505603b980c01b29d5a00308d6747e8c14fa615405e8ef2a5bc356d2497db2f1d674bf6e9ad5ad014c9e800266170c73891fa5cdb7c0fdafc7def2c194f3b55b7e2a4a77263085ddf108f7a00fcd922ddd5f7eef46864e3e54e3bacef0ad3bd6fc5f8b6f441bbb83c9c528b16629cbc630ad06d165cb6b5fe27d48874e5b839f2229d61136208e074c5e49455a0c17882ca5cb02710461f463fc94f6d71fd1b97d82c2e269f8649df2cc3cefc1b48113d2f6a1b1619306e8910df8e3972091a23f4225d9ffae25b55f86f468c0c845587dc4d10e3e05b394a8a1a367830adb4bdf25b229cd3d6cb26f125b6b1455ea4ee63368110f8d40e6509b0019b397a671e813102a14e79462bbf75e70ad4757d6331e74767fbefafdf7247b1db284939f075b09da402e0a53c0f9b75e3b31fcbeb0edbb71372b3b9b00fae804fa00dc7084571de050b6c2e384250e87f30b99916910a6c69953764a2743f6170a2f2fdfe1cc2ecca473446ad31c7a0ce910cf14876a52c8eb774c58c2179d7b1851357ab58b6bcf3f80815ea68e726d84ccc944932218e2fe8bf51a46abdd03d95a793fb99c34d9307926e6fe1e7415818af4d50235f88b5a4a68dd70c6a054d0d6cdb6972092116b8982e1c1f3fb201edcff07b0a5a943335403d5fa8bf3020bfbb3549780c0474c726dda3a7a49f434893e2bb2d4d28bb4a3b493841f47daebac3a49d9a4112835cd7f2fd58cf409be4679ee6c65dd6e7ae70066d72e50bf96ebbd5076799cf4e789c527b103cddc38b6357b6ec8568b056c66e96a5a7f5f9b2d7fe7e30836d49c13c3d0e18ae25ed904feb06c4726708c8f57b75c35350eeab3a52ec43b3c95624c1cddf9745454ae2dad29053ff20fe055e69017490cff4f92b4afbbef7076d916f74b40041bce9f5870c129a815fd1e72b75da7f25ed8472c493f9f9b392b1c9abd905c3dc926a740bdcf584db6ba51f839dff6ba4ead86df2a8b9379b0fd9fc71a16daf996e30bef83bb690c5981e3d3d5611a172bcbc44b0410160c01371bfef3bea0dee2ca711c54368cbe3151713e80aa6e8f67bf57031681205748311b5f071008fea5a0c2c81ffeabdd78603de9146193587c87e89ad6af45921ec137aadcac42fd1af6db9cc150f9fc22fdd7522e36e3fb5b18f8f727e0ea12699f20bab4cef5b1c0d5934cfb3ecf4be09c21fea6f0cb4b8a0382f3b08e90f3ca89bb15ec5901a3b92328d62480aabea6462c2f5b1269725e9dfd1442cc12715cab386219b55596049bbe9745e2c62cf60a2d81cd395af6f4ff3d5fc937a10c3412b88cb2f630cc70d850ecbcce2c98f27cde799dd03f7393a471df3e856e45a58fea272fe8d0d1e83fdfeb80872d66c67096752e4ed6308d2ab40203db095ac5df77275f3bb96d9eaa6edb924c7c456f6a4ac931d515705464e3e083804bd86a83ce38e7c86ce76a278d00fab3b3e7ccbc21c4fbe2df0837298d461665c37fce02869f94cbc92acba00b78994edde4442f8d427ac4890b8e0b6ffc42e89934841d92c4e172f365f38382dd830a8c16bfc2e73d397fbb43c031c86c2ec64e4f1fcdb30134e997d5d937cd6c85ea13eec609c90e017ccd26be61154e22db6c1ba92073122520a2cd21958a064e405f21c377499949c4dca187e415638ec780a76d155c53dbc1f83bf57362cad58cd3b3bb17537f65733087abdea93b8d48cf6655b920e85ec83016113dd4e4bdecd6990ffbad2cc19c2ddffbe62ef17987f050bc158944de3ebd3bf8f555d32f3715baaa2425e7cf21f3c7192f8c715fa3b4a0bc172e600b2e2838c6dcd8f064c8c9d5a8527c607e6c3212663868c6c8bbc007e7a660aa96b03ed21ccc1b42b784097930a6d0e27073717f8eacdfe8b78d6b7c7f51262a0bc0f7fb68264f483f254874a41a68359f32d3d54752c3bb114b6e54769533feefcac4ac5e4d22d70750633bdc40137f9dfa2edc2ef7cfde068f3d3af08a3c20d64c87e44ee48495246de224e67314f7eb8739a36051bda22efaf2b1dc3f05d583a92be0db40c0741dee8b607280daee62a7833d65f13bf7227bab151fc994c6e64ae320ab8e497ac1ea9df05b0c1273b81f883da2eb220cc4e371576e336f9ee12e7640748a55caeec82baf5dad5cb7b0266fb04442f808850168be7b15b329abb1ff751e48c2e42a9d07a9f6b892a2b0426950de1fee755075a0df601cf863fe5cdff1e336231d039cb0f6b5ceffda18bcb02c6b6404ec4d6230fa677fd45b5222da74a2668e51d18a8e7db354f946eaec39fba55dbf185872672fbfc794895603735e77539aec14d59def915a93a915dac0909098a2c99e4d8e96127698522a921c1ad12b08e66399f06a999843d5e64b4bd1e8c470503c41a4b0ede2676e5f664d2734ea02451ffb6b2500e1b5cc49592260e7271deab8d701aa2ed5ca0828cc0a8c9e544649677143a9e38b3e2f108a8f5647d32e30e13b085a55f00e210e4d4c85379655b45d466d90d8ed165a45ce5898bcbb74d3c91418a4f4bd0cff656e6454a3e8ecd231b257046c4814f50cc285bdd4a3bd4b7b456a24332ca438182f70f9b659db9bf96992c308bce28275919b2a452a16914b2f7ca8cbb294227a9341905bd46e4331ab05504ae2149208f8463d14952a803661e5a49e5538742b5cc94983679295d55b5781ee97807cbd2264d13fbe627f2e2f1bf181c36e70f1dc9dd5f342a655eb6e6d6a188fbfb0ea9bd9702cf088c486054707572ee8c58536fb30a392b9ab4a09caed9e24eebabfa06297d66c49517a4eca091122032cd23d195b2c7a3c6b20b5d47c809c28dcd289a604a4904cdc84f7cb8bc2875dbcef33bf8b1cec0de2ac48e468f424be2720cde984fe7b49fc144d5ba248131989c94f967f11a91e6639191c81fbe088ff5b8c91ae9ce2873b29b1077766461c7f0960cfc930cda659fc3a593b2103ebc16322b4f91e36ca1577b1880837b2b1ca0a44d2e0b0f976f60e861a56f4a69eb4da3b8c9eb3b4e6f83245e6b27a643508d38f7ea55bd2c55b4b95ab301c37d23690456f65645a6e4d527dde5a374e7421bcec3ed587d9ecbfa03f8e79a49cd6da520be3b8b73bc5476ee8d7f87225c2e2133151e7fd0090cb088407e0aeac4aec63cae6cf9697abbacef61994d32456abfdb5d9fdc74e08b6ae47a16bfdf2b7e0052ae886e44a376476dc537956a7a303c40f0bf5a31f987e86b3be92b54f842245f5ec16e1ec41e79ca9721f08e40994f2f9f628f458164cd76a9ea234613598ede2716a7e30724b894bcb8f5dbf056e6d139bc9b5f6a0473e3ab134a6d141ff7c4f27fb37f6a7c7ee0bc5b63cc704ad3ae55eb347d37a54b198405157ecbd118ebe94dcb062ee9bf2c0f54ce9161cec6e1f7d434aec06fb50148d144dd1ea20bd41744ff5073f619c8169975ffaa8fd8de480498ca920d356816c1dce86e857abd9ef0bcb66aec8bc6c4322efc90e0557eb37e8f00050c3fcc22e568b510cfae1c31dff3a00ac2d352d4702e66213fecb073bd9a615777ee503f6594a11835b498ee11e3558eb50804f3b89b5950e7e489e8a5984cabc5630aa5b9ce31650da1e771497739c9c7cf90267d35a2c72097ac9541ecc9145189cad076e95fad2ea7044a367a8d0aa237702faae4ac5824cdba21e851a9d43f6f1382a2dc6fe778b261cf04413b68c9f8ad001c77b1026d01edfad79b77af3692a7b090971bcb3e1067d3c9cf420b2ce7dcae0b1c6bf145437597bbe693beede742281ffeb6279c59de12134f8170aa9977aedb52d047c542b0b61bde9d46f98dd7f0858b52c1761de44b669e3d49e6d065bbb5b906829d529e52dad24d7a7511636f194cb3e693d3e8834a2454f34dff9e053a1f2754fe526d9b25dbd27a6355508721d10f29b80b7f1c87e1ba4110886d31a9c42303ee4e495148ce58bcaa2d7c4f55ed4be4e90f0278aaa4299d29fb93d80bc4ae8194627a5c537a4a6985abfe18710c1597a7aac5a8525bc782511313aa7e202d3054cb6f627f27eff9616937f7f4fd703b44cdff0f83564e9fc7576d3502abf3d88a7ed5c57796320eff75967ecacf78f7d684c6a634b6146e284b873ab518b1e31dab27bee669053c3176cfcd4421969a8d9a7abf6edf5604ad0241f0fd3d5ed956ee0e72f79ac7d4d8a8fa3db0162049f5453678c309459a3ae6fbed0aa300b43b476f9b5313938e70b61f398b9b5f48873edc0f4c4f4ebc73bebe124942552a567b9e7d3b9ea5718ba63feb585596e3e7355060862077c4a0b6fa58169f3728a00ef6a40a8e782f29d298f9187ba9a29064de192340d5e8e8745fc971e578635ebfadc11963bdbedcc79c4a616773aed48ce946273cc1af082393b40f42c1828567cce7cf4425aab57435cd1e7837c00b8bc66dff1e031cd61871f36aec259d33144ffcd83d819f6afaea33bae82bc5ba8f1fe7c5a6c188b032846e37df6336fe4cc3f51e49b16cec1bbe04b28153ad9fb5c03533d48ed849c2a5799523281dc76947c058cbd69665ac342c9b4493b57a9837af926394001dd272ddfabfc3133544a5dc63a1ddb692ba89976d51757473c5ff3756396e4ab46743f55edc8a3f80a65433f7cbaab2f627f234b44403517855a43dc84eb1a0dcae869b26aa5639b2933e94b46c4be1e1bb08f6f62ca057dbd6f1e3ab762f4eb58a2c857449f537ef67a09f34086e467fadbb5202cb178102995da63aa6ce59887ba04454b6d08f04bf86469aa05982cf41d34a3d55d7afa06164c366abcb9fc703beecdd9b228ee242077efed57c4e650f9e520c67fde9f59f01cd1793e526d9acb5707aa237b4ca667968b7661d45ac99a0758975dddb383a827681a7ef179bf86c95295eddb3c6ff2775678926fbab0afbb9eb0bd81804d6516e838b3800e78f6b205277a51fbbf1dd128bd8e991407a29041526893c351a556a7abfa04bc0b74f204c8d417184cb3c6532e2f80becd93eb7cb471de8e1a7933323f379eb38b58881ab02f41b84ae551b1853c289911c75970bcf552f5fc450fe017301fb92764d3e4af3cf169ccbc1343c741696f376cfa689d5e03db27486c8042febd25efd24c7539cf173653452f8e4c7e11ad24dae2b6b831591846c46ab7610d04aff36efad7fff27fbd3c45053b93c9431e5e144f744d120e7dec0c9856ea081bd8e056e5ebad05ac7adae01f003fc1f648b64526d89243c0fea0cb668b3671fffeef8bd71642191a4c6606ebdaf220683dda7e0a8543e1aad7bdc9e2917e5d5f112cdfd34a95f9742ed4488a62e9f48b887a78a7563cde517c7127724ae238dbf73c3cd7ae78ad0bb1e846777bcb0d31dad98d30754ef19cdf0b73fcfe0e9208438b6005125ad73c27ea09d49e770b24b7e98e22930d50af6e3d5657cdf6eb7c96729287c2c7a28bd06ee84285612b7b0f33207d6b707484922ed0b49d700a94b1ce2e5c5844ac8c06b868ead3646bb806ca630e1dd4ae879a5d899144f1f2f7659684e15dc5d1bfdc3f783b267632a872be1d4bfdc165f6d5ce8c605d88b3ce32cb13bd18341fa840fda992d4cec468089a2b58dedf181f6dff44cb120ed584274049610618a00a3b4e69e0d36dbb1d15b527588e1947e66bfa91609f49403246da1e7df65493264851cf6aa879d75412178f392c5293d9786223ca3ba0e1de347bf70891e6adc099246f95dc16c544a7269a524cb600c5c0318799f7af81f9cf19265a64bddf33c170eea9ae61f7522866f746428f973b934b250570b4b2deb14d67792090d7bc84858af1b7c659db4349d1efd9b226b0a002275d3b4fee0c031a1aa5cfd003b4e7fd283437b26c28c34b38df4dfa8d7686031cb791349f06a9dcb57a44ac3025b38a32879e7040278ff6ad766a3d66665a55d0c5e7da8d0d42285dfb8c4435b0433f7af48f06f2ca89f4070d1fbde4c0f5eed5058b973edad77ae9db70f4dc0024428f221a0cb8d38c22c190dd42439fc1fe97148abaa3af565c81efb92e1853c0a15cba26347f1ded26c4be244a7f2132ccc215bbcf5b6b50310f6c5efb0e305fd385d2e0a708dfad1cd7cde0ee264ead738a1d751ab3b3e5db107315df1439b8597b881ed679e3c6709c6c5f20b68bb993b1aa1483714788cea43c39198c3e88fbf8dba9b59e478c26b9b23922bdfc663ca6eaed234b5ef7d37c19d5a0ab756045d49f1f243c099f7bc33e9653eb0dc10941ad00c430d82a773e367f6e078b5ca5ee9d6eb112cd939f35907aeab29a7692484f2c5b0fa1756e8e83d7301b50b5b655258250fecfb05aa7f82ce76ddc4fdd30114b71c3c1e837ff526d959f1bf65e4cdd62ca499a6ebed738d44265835d975f387123aa7e6d3f117f83a9c1b63fa4dddfa9a84e29380918d47cee1c805f3a99863aca54c9819ef34dfee795c69a74e3e5e0ebc47e237ee2eeb4cf368b098d8a4f6de23d58e6ea294b3d05e0b17310ed64ec9f1b414a9b7ce29b59cc208ebbe972fa66731b5c931387298b6ee163a1abee92b0288285cb5d8e8dbbe7802f4501c6e06a892765dc1e33f87c12568b9dd65a84f6cb86c1c86c8ee1c1929602361a33c780e4ba6037b33f8e0aee0453b8a3cda1b0b471add5c17d10f20dc2b25b9b26b96983bf98f6b5dc188695c80a05ebec4799e057bcbfb01a9848f53c0262f21e182c4339f8d07373a8fe5c523d41b194f9875525c2f20f3fd3fb1d158010c00d6c785deb86b7ecd0b3e63336e6f1df68966490f82186ee1c1c2174e92e8e55e519a2218e3854182a6a78b873a1a5d648b09fc331542355b0a1ce4b3f994ab18b0d15d75de014f859aa734764f7966755a7e148aefbf0cacd11a8e0bfd7974fecf3f0876c988aa221f5ea52dff1549da8746488aae39beecd7b4bab464eb1b5f08f57b6bb9a933875b991581df9c912217e6aec220501cf327e29b4f292d2ef4ccfa524989c4626f3b872dbee577d2115a465ebc680ca725b088666cfe9f084233afb823b403d524bf7a02af8c904dc28f6e0d3566595e995e2a32cb7f50d60aa56ed10ac8aba661ab04e13486e8f4ece0e7e20b71d88b60f30fef38beb4da788285d7589814d3c84a425213417dcba0f8d2f7cd8d314d2c1b3c7f00979c18842c9669b234097845110efaed7ace092fa147717f6842b750d30ff0b5ac79c6a4ff07246f5bf69c3c6727e0e675974bf70a192bff4affeb11b975e50a013079955a99ba31e563085ee27db8b8c73d1f22a9c66494c4230c5c6c77bf399342da230f542ab9d3b31828a1ee4cd7ca3823b4af238e819525c2c66fde5915d8b5ee0fa08f1bb42ec00da8b95360843e798ca3045a74e36dc3e16a395f3650211bebdea75341d5f729249491774c379e17649368ba5e46a4efaf779b5b021e8ab9b2791a7675d6aa2ef6b36fd5da114e452aa811af0d93a959baa3c6758beb72f9c21ecb5b0d281d3316bb6fb9393d872448af6247cb175878d3b77e3163d9f926554a708c963a3920e71b0d2adf543915129ac021e911a902457ee17ba8e76d7bdf4bbeaf3b002f9cf9833f919588acf8873d1b5e3f57c4e103f2113f959448767c91a880be9367e51f243822a5d3c2a8a14147287e47d8f3b53fb8e69f84d0719484bf8d3f71b3af711c011e7d4a176ac22b4d3dc9865120f06167261782180763d3d962a549a79ed06f68b168cf2b2e46f87af8dcf414baa6bb43973a186f4a59a807e386099141cf881694938c64666d463e1a529adb3fa6615f45eea38fc752dd211cd3ea85d94b3928199478ca650260f717b6ff379b0024fbe30f5bc6d4c9c29a78287992c6a3a16dd9c1ae0198a9c039e1d567b84e03b7fda2eac245be30faa1951eeae6aca1645d1e8fce85e2b011654de54d432238eaa1e280a5390a53ec8c3d10f04d37705c5f5ae0357efd0884846b80600685accd66090fdd5785fed4d8bd12ef9a1d94619f93963da4fdc36bd7ea277b480a3662782c79618b228802b7a2e335e24718abad8b679049bdbc3970fb4a73d45bae6361674d92b42c2da2460f8e6164e9753b0168444a08ddc58d60b4bb8c3a005bc3ec690a11eb418209f33b08fb765fb150c18b8f41addd629236bb0564815f824e45c0d4fb58ffa29e8f26032145afc9d3c26b19274a106dc561e4b3a75326030f12e3068f607c4d8bd95fcaf12a9e9dd882b3588a322d9412048ba7cdbaec2c55cd16bbb4f70c5aa2b2defff4979ff922d392f25a34633070c5984d866a72a2393eb3b72e8d3bdca7fc9076855032efc6aecfa370d8cc3e3e024151f26b0b8710973ea74526bc8bf42813009739951426a1caf538ac36e57c15e29113a98e71ff93b99cd3d760ed6c48df86bfc57ab7e09c500058bac42dadfcee11ca2f98eb72ec823f6d825781df2b7842ecb57c24b3f5522026886db16397d8e4dc2d311e4ac3ef26fc9c7dff3e1f9139cb71b97eb142a915c6f5a3897a758714f37a770c7dbfc015f5473242b295e0eea176161bdf0acc50727376eee9e573d4ad3854689562dee23c73bfa09b677929106f90146965f2d83ca40b779188ed9dd4d951787e9cc01082d40ee3575c777d4b8a70b07542b1e0ef6a2d2f0717a5dba459fd5cef6d985244e5ac72eedd4ec338fc2bc826c5dd20f117246ffb00f109793ed4e715a59c4da81f6b917ed946b37765db682a2eadf2655c07daf548f7f490ff92c346eee7938e707355765b83c19c0ff6b1c102039783404761e19a42184a22e07c375fc7a87c99396bb559a02a7644ff30236e4d42f78c756d2abc54cfe403e2c9c013817e7694486f23d40a9afa7a4aa1a4ffce2e14de922791937444a368dcec6fef5773ed14e30fc12becd4d6bc6df9da7c08ff2567d33fd716168458c56a299aa83fa11228c4aaff2a4c111b0523d1db92da0cec82ca81ea68c370b61625155d12fb20aa2785131454311e7c25df6909bf874675ba223675181e7525630a858c71b06e5f444d395093c2a2d0664d39b35ffc57b69c59d408f8c20bf4166f65776e7bad54e88a459314e1f395b213dcdedb5b9bf84c772803f73df15e87d9dc74e3e69c7a37b7e43a6f832ea7d5665430465dd2a3159603ae27d50d1625e196c5965460c8f255cdb0f2d200ef062e4bb1c693fc2e2e9f9331738c5db2ecdfb585aa93961b72163aa70f26258b3481cfdc37a56990c3b428a08ccb87ef49e6ef3a7beeca4e024a130dd566a98ca9dc6ef9773994fcfce3464deff39415b88b05af6d4701771873dc0b122669ac2ae32a9db876e431ff2081a8304da36e7aed33d40425d05c453597e6f6d93d05f466948295b5311be80fd0ca1e765551c55ac26ddf534c576cf341c61624c09d4ce568b53a7072045b90c87335e16a12adf5aa4587e3e6b5c5ef07d0ce5e5fd00094fa63166f1e46d90826ba6d0af0c30e682e9442d7c0c10d45f6dc03c3ea9d32491f82fecebe9c06d57cb33c020465f8fc9dc73f9d310b94183ae1653e2ff145845622f071405fb46967498687bd2443fe90e95da7457fb16e8aa0d75fa34f0a27c283807aca94d998d5f6d51a9d6be10fc897097c9db51370257eee37632b26a35d4e8c0249ec43e4ac39efac09b087c31823880eaf89a2fee9b8b4764e302cf4860a19d032672bd8e225c3fd60fab09cbcceea6fe2a62d8fbe91c15d75569ba991bbfe53d3c113e3537e1821ece3f92c8b6a2f917cd3a7c2cc1ee4d1d90511027b936f4dfe5c2f8443534004db7f6c43b10966425757af3af97b068580984c8a9dd35ea9ce53ff75d0e22b66480da4f2a926db011d9f9e6ae9ba8f2f59b0f2177ec0ba2fe436d83e34cbe409a0cac3c8c273eb5d550a0d572b79e5fcf080bb690afbc3923671809453667d66bec6fc7f9df7b8d8a78029b063af8777ff3ec1b069b80dd4db2b0862cc305fe6f15d1572ffeaa9e369ff72ed5ee0a79ced0d2ac7bf101f7a41328510d66981e200a1bfd93f7163c1c11ef5e4778a92748ef784fadd7ea2bfb7922b0643a2d9c8a56c589b417fe65f52c3d2e27ebe43886fdb3c24c35f135e567ac462c6f38be488113d618eeb85871e36426f2f14afde8cb9cbc55ff57088da3103d955c1d7515f986a0db1f6e78871a3facb90fe5ca150287466a604f1178becb73eb968034568c194d66968aa0f80f624ef6a95096870c7bef496474f4a692b44619b29134d83a2f8d81af198973c6bbac6a38ffff37a0661dc1befcf8b03eda02975656d467f3b99b356fae14ce7ac510d1f56100f74d5a240e42c8322cd2fd5850b034283bcbaf0afede7d43d8e636a68807f35735be05b13a3428b3e7e2e5952c2d07a49928e5318efb51e58ec63dae414456ffc11adb0b8a1bd354343a0c36196fa86466071d9106fe446683d3cd1079c526fb0c841cdbd96c99428bb990f75aeee6eda8e392c038a18a85223654f37013e3f8ed9823bab80e29e142aa78bd09324a82f4dd96c61c911955149ad0662ef58ee9d36f93b3d81c575cf716ec62067460a91250937b8f0fa9e45785bbd7771b96a14511529267bd39ca9095ba3f57491e3668724d02cfe27d0db5ba33526f8b735d5e00784c77ad62998c76b530c38b27911934a8a1fce3ecf2b669b99465c1ffe475b3e32d4b26f1d10fdb95c65843b0dfc94f53c3a377e3261df55a14edfcfb33f0599a998ee4780672044e75887ef89a77ebc837b1c2d46b7efa1d8328a5ed51e9eacc8a929e84848543d339861f04a43380df273b024f0e04682c99d981b437ac7668db75cc62c13d84306b6440bf501dc9f477dd19902cc6287d62291de490a584112b1360b7e5e29f5320b31513e5c4e86d81be5a71538c949074ee8ddff277b1e6dc5824842ef770f785517046dc18668d6141c4ea6b8be808d5fc6b5e9f675e4b2c644c2bf81617225ad5b6f5250e9d5290e1046d281d61a7b3dd51a660d453d47b856b93035542a0b3b6b3cab77e07f65a8281f38162e0996d5e0acb66fd99f4de04fc28f2ff2071142c9e894e765d08ced351a9313e5fc83c6c61a1bdfaf5dcf5b5d4409e83e141df11cddd260cee32ad58c2b7558e36954c61a186b558b4d22ef8f3b1e9f5e4d4a39a512c08421b80579462ac340a29ee6b02eb7595b4669ef733b3f1a2f67c440661c1c55c3d6f6c97663aea3ca9b8949c1f06bba2b10c15fe092f944cf15c3c542b68c1af6e4bec4934ef5b23fc97f9a04fbb7be3f03340b42c3bb3daa942c1c15ba897ed824c3308ee940b20fe786868da4bfc2aedafd4ba87bcee5d0abb758b2dd504eb7987ed0a1faf6046809f3a4e322540374b6405d1ed363629758ca45831bff84a398680995d0b81b527bee825a7ba8fc293db0ad875239e18641244b0892c986aa8939a2887b96063e6c7ebddc3847e8aead5c828a1f4d4c8a79c9e08fbea2aea52c0f3c6d9c583474a4ec9a12dadf24eabf8d1cae0de263ca7ca573cae929c3c2d1884f24e23b3f847a3b14db4f0ff64e0277de5a0f5bd54c5ce4f7fe09e4d4128aed8fd039e882d6db814f72a3bbe95c0f58bff39e122ee40161b615e642b20fdafdc373bae6542707ce66cb1e8f3a27109dd07bef4644fac967db2805fb1b9d298ec05778f0c76b2fc75c82f8f44abfe37e03d1b6dbdab8e9f3648ecea7b86b055cea2f3365cebd08254d9a0a7ba258ee2df0618f8488f17b1fbe1bdce230fa7328ed55cf63d839dff4c1391023f2ed769440613352a765d61a1d12195ab7a83b09b519f38dd4f37c0f776f039fb588f95da8cb081848dce37ac1242159c2164d0fe23ef70390298dbe50b3776f995ba35215bc7ee2b4e5b782bf7cc922be809da1aa5ca4c0557fef298fd3effcf51c1c4de41c459d1ae86f9855a72c6ba23d499f8ee63ffbd1d2703824d49f15d880176dbde61e6c3708285a24b989489f63b47d375769bd9d011080f3dd5286caa4b7e291adc23e725385037b5491ecf57988a38ee7dd763ee8229124fd1c81b01bbf264d5a42696b008a2c16c2e2606f5c282659495e465e7209a1cf2717ab615d248a0a8149e4a040973cddb89b53efa5e16a0b7e5b262aa6dba78ca3bbe5d7a11888604987377a0a06989f25c3a468a321f6dd2622fe3086fa2f96f5ffa5390efd754cd7778ea0afe803eede959191ca94676affdf812b348ae29194b421563c780dbb946fd9f5460bd4af854f19568bf01b93b2fdb6b883a62aeccf449459a9c794b0ee2d9226433fa7ad2922192d116deba3561d2203cc4bd03c0d555c241026cace2d3b73670430bdb3fa56191766c39c270281673702fd0c5f419177832a196fa5bf75816eb4176c1e9280f837b18d68c821a570aaacd2abe9e27db9ce4c7f79347ce87f7f58fb876423621d247adce472e6d4eef0d5b983621b2169c70ac7c7faad7b771b07d14f930bcd0843f641afe9a0d7c6559fef995a97dd065aca429f6bea070e2cac15acc27e6126a601be988250965e0fdbc224249c0285f5ae905e524a9d3309d01a43fd19693dd0acd43a22e6911b36e9b8d87402acc5c5330b5c3cfe2bdeb94ecc6149957abb8dccf4e4a107ba7ed1cf8686d9a3da76c5c4cb60140562c07a272aa41042927df8d0ff6b0fd7a9a77141b243f6b8218f8d71bfe94deb5c21ab60e8fa40ccaa5fb1a8a67ed9592602a19e40916d8e2ea8b98b6aaa8258327db84654e169b6481323578f3734d29c614d6fe72982add7ded2dec9f3325cc787f65fa008853d9457190a7b7e643e9e83d5d6210cbdd26dfc26ff663993a045deaa25d9f7f22f27f0311d7a720687e6f1b0d1f264b3dc855ffcc0fd94949954e5bd62e2b9275b97a996dca09aba7051a70f3a680c12ad156508160d528e86ec198ca374308d9b000176dc49f4819871f9b5ceceaa8898879205f96be8fd0ff4bd9719d581bbd82ad229490400c51a5c3f71ea5d76882c9f34320b25347d68870950d8399221de5b0c9afd602744b2142130684fdc27b381be3a9947082c34aeb135b32a57e49d5f61ad7d58532a515c9fd14902abaa756d3d666dcf9c031ca6cc42dfde370de2ce54d860626bebf6f396200647c95e16cdc4102193948bdbbfa3e5f0a82f6332aaa5b515de7ba6b304bf71eae0abcd038e62668a52b7f5cb2432dac48bf16c9356d52cffaf76488ec4cc8aa95d2b3495226670df6b0f2b8a37cbbcc8577176a6c04e3bfbcd6b6b99d722d478ac87642958126a13a5b7bde7f1b99757d7f57e49751a6bae20954603301674aeb080dedd0b67f2302d4e9dbd7b66157600a7554c358e6296f112a51d64a679ffb4325178292f15e716c3a1d90e1836b8ca6c57cd98d634e6ff7236f724a1bd6bdba59762ff7d9850770faa48592269ba6fcf77d23b06233efa2291029d53c11f844af88127ca360950e798a1747bf186f38a8c6d4b9ec366a42b1ab69205c5662f1232105023b737f0d0225d23b39ed4bad65c3cd7140981e5613676a56c26e575573129a39b83bb9a44e107cba8e7962d2eb79e4136a7214dbbfe222bac260306da30d817433ae734c9cb731d0800a43130baa2bd49d44746a1b1b6e383a2dde55249b164254a32364a25c840005a9daff4d53ad4406175690825f5afa43570a62993281366b5387e139e460d57f1f258ab7b03c6304a12929f40bbc83711773a880db9e473ea983aae11e2f8156664aaf366a05f51116ab7f07e7420ed306524bf0ecadcc2d055d96a5035bd4fbb2ea3484e4fd720121e05083862eff3dccc023a67afdc1be0a14b0fcaca397f3938cba0be2a2a91c99ea8698243bb12c180a304cb0d1a63ce7585c8c5342615457d9884a676000cc7c1a348a6ecf4cecda8dcb994319b91877ff3739d6f3bed0f88e83205f4b3d528e0df6a13022e90b5234100720e5104c251ec652b254b1487e763e87bda9789eb1f7763cdbc0c1d69da12af018918cc376a9e0ac4c0adce111f7cd1dfe7b2f422e7ca1081e9398b801359467549c7864dbdefbba9e331a12ed832a6bdf1cd87edc00a0677439299b140892448c20bbb8ffb3f7b86e376cbfc58b7d4e142bc57a1cdf59c0460aa53724597d34b13e5490eaaa3add03160882df29677ef84b1abf66330a6cc6e81aa0c2633c13a4dc8dc7de3feedef30421c88f5c07462299904a8791c25581ff32e822f76c36b6447c288ab507baec1381719d1632f5b3beae550d19a8874e416ef56365f3a3ce640e75793b8ea40a3c5e4c9b5340c2ee7fc54db64794e6cbc428d536c225785759ac49d2e59b1b36c9914580f544e23428e09999eb4e27ec7f422fac2eb9030fcbf79c58a865b38624fc3d9e87267c56b760b93162f3924b5cd9e69322ebe76e9c0656d3911753ea9e58e4c4a2f61238f0d85a7314f5a7e034fd2cb0b22d56ca3012be76b0ca1e5e6b967cc4184cf15b53d75a3be38fba69ae154bc5eb933e87c1f0e9aa91e876b4ede719bc74e3f470b141b472f3a13a4b5e879195a8711203bd9c7bf8a88d2da33780dadad833245871890e04ff062a69e8f63784d22ea56ce5b4584481a6d1572790d7a450eae4057ac2579f41e89b6152d2ceb8551482e22a6841a526fff885761aca8214a3d301d2701c567f6c0b86cfc68beb64df5f2c709f82739af8c15527c3b6e5ad3afe415f4e813dfbbfb2ad06be9b3d255de4a38f83cb5c7807e41a16aeb69b17d6b9afc4a55fa6b5e6bee55e8f3029a5cb3fa4100d86543e73a2bf954974c5594ff1f626e6737762faf41ae7bef759102427a0d845e97f794cf9e141212a5ec8dfe2fbb58b752cd97be58b4f55f9abaa28156d987ac05aa42c0844a9f59d53146133f9262a2af45184c706bf2fc177a77fb3b77470a7ee5f6197f0053708f3f43411046ac43bcd4b8948f184d3565fb1bf7ba650e652f08e3deb25aab293119c431bcbfc69ee1c522ce751cbdf06302074ad4860e216e4788c19476846bada8eef8b7932ac1bcb106bed2c41ddffb3b0bfad27bb009d03f5657306f45cd241fef5c7ae09080390e2820fb3076d855bae4a29596480bfee669a20558d304dc14c55bbfec95f607d460d51d8003c1e3188e12249942ac62f28a0b28360599f45ce8b34b3e3aff77c99db987e777e6f87ab40b42da233e014596e3c1b77895619712c31fe7dd65d716fac7de9f9a60fc23d20a2da655b7d7646c258ca592766ce1298593317782cf4a87c61aa86b6fa69c6e64b40e3a0951616868a3c04e443cf6c5ce7d4796453808e51b12b74012dfe474e33e224e3917edcad2ed9dd4b63bdcc186d406a3feb06348481f809ec8a6525e3faf13c8e25f82d8d1fdf99bbac325b63ac3f47e39211162b61969d6f835d41941639869e1d450883938c6470162ea50ca953a801d0101ab3f79e1a563a4b875a80223e2330ca83d6ebbd8cf5d8d7b03395f049f8ad6d876b88da15a0018762c773574a77236f21565edb4bde2148d3b37b5e22028b85243dc3c6743f078e7a60630f30f1bd17e08c09484bb25c0f66668aedf4df8d4600b0c0c36e35ee1e2732e4e4cca84f013307b1a8293cc0f75c24dd6f0617cff9f3ee3a3b8dc93816b943f421771e5583fa0205a453d472e33300daa031ff56b2398ad57d20576f9f71eed1620d91ab82c7b2ca24579f95cd81aec8b675b16ea482c41867d2f792934b771bbba8a4d078f2c613cfb878b9cd661891b0bf9f280cff7da1c50eebe4c754f16411909545ba2a734ff4cd7655ee25a13679ce07adf290cd8217947fba0add06262c09125867e11e037ad43e2ef06d705352db4685ee0a5fa15ecf5d17755829bd3820cffc4773e02065b130799de6f0f6e8247c22bed88f10e06069ad1bb7731b25bbfd9a259c4360fa2b35581b6f6ab0b9760b6e385087736c18db053671675e5263368b04d7f5661e380bb3fd309909ce8a928fb76842b2ee024f80fe34b55f3fd28269b9a8e6aa520bcb04c75465c89c0e51cbb33d7cbbf311f79792093e4e67c81b05a055d58b3360180f6c4a02fffb829b1fd997cc7c7cfdc38770acbb8fbebd23599cba02384839b9da2ba1240dcb2e0448584329b75f5ec3655d41e8f1134838a7614bf75c882654ca9212b405e8b80fa38e5e181dfbe2043dd885cbfc7f2f6ebd47348ca416d466c03e4e8307945b0b4710463b0b7acc3d9b3770dc31d5f0144faa8a68fe25d906237a6428869cfabafdd4c6adf253cc9e744442cb295242f808f1860a5c2fb6edc8f261fdddb3ae8e9b53e8cce0d154d3d143bd5aa6c07975ea73c1c1b5177ea1b2dd2c80c5759d59979ea36e11b92e0dbb67d820db761288bf4f7c06fd150fc2e9c58d655e02a5443a1fce293653b3d1d0ffea0cb119facf656e65cb3c73d4835a6bef162c95c69d714ffde722a3443aa6b03dc75a41e16608b6cc68bc6b28ca03e5a5798a71433dbcc5670a12e13048081eba7b9f43653e25846621a83883851a13bc228f46fcc8b558134a72b9d0b9647032e3f8b7371c68d3b84bf69f9120d283481c53fa2b34acdd5fc96ca5f503c29f63f8140c05b354abdc470482ae713a779e64809673bcecb58674e63b1e8e4c05f9010b01de9183abe83f55012af191d7ed9538757214524ac878536462b17afb002a62a37dde87def60f91f07dc983973c69eefab9e8cfd8275d4b523cdffdda959618512e675e2dbd61d92a663d8e73cf9d3208d53793cc1bc392b708786f9c52f11205d580b46333fa373767545183f9bb6b67bdf7accec9b0444c2597aab81e0f9080b62ad65bc85e15f1e5b026ff7f43ba0b247d42dfd550fdd2e961ca1f42abb6041126914c8d018b11d5a9acdaca39966e2f268c3dd512fcd688c1c651ac76b02e1893b20350079659607b616721a3aebb80d9ebb32be8cf01bcbb4bc234b226115ae71adb97036c4b3e731c002ee025fd1011b9cbf11b8d46c73bedb6bf568db8777b29e7088527d48170e8f7fbde9cc9eff9ae2617f5bf54a951f23a624858537fa062b30da6b0bd8c00807d168f72ff865a8f79dd5e6d7300221ede878fa206a5ce9c4b2ba6de07af43ba01d1a78eaf69e3a2c362cabe3877002190993168c7ad1432319d2f4a3839a7df913cb7ba6b1b1cf29af4e85cb16bafe59bf94bd7659f657cee7122abcf7b873bbdfd241a9032365d56c00772a3a2ab5446b4c2ddd5172e4d12d5ea54d5082a39ebb9ba1409bbc68bccb2c347fa2161356dd883609cace0263a4d8ab47c58751ed8620bd198f765c7859be9434314a7fec8a91e056648a3853738839443dd2a14876966620d04352eb05e7c0f3209fcfb903d2330c5870779acf4e6aae82b4aba2c6e4137c9177a2e260c439aac262a04e03ec9ae784471bf34135baf57d65769d8a394f237e6fd2debd0b4461bc8227e8ee5e857e0b243e46e4582e5dde827cd694bd98ba878bdb2a2935d70a380ffad7b5c4fd2ea35fcfaae9344034cd10d84ff9327cc4eea0b07f32d41cd128d0eee74a262952d80ea590ba26a8a2df4331f95a0610f6adbedfae1b4e7c40f0a1a5a348230767d5836b60cf4697bee33d39d4c4dcee3263db2e08ade89da32d9f18faa6080dfbf8f050f61562f109ebcb25e8befda58475c28e4a12b92a4f72affea0479765950de16cd0f367dacd99068e0579b9fe5c51de9db0db7420006fe92331cb349160270ffb5b09afee5955613dc2b44f5e304a57b92af5607e8eeb90a1aedf3c419343f43f48734d4809720a995eb127116dc4172466753517006bebc01f70b91b685f603daedbf1acb6152d78b47ec302be30b0ff2c8a13cb9d9d3a5692b80ebb1e6915c53e27235b2cf2fdfbb1d7fceec35f20b24bfd4645bc4620a9fdac9c3ff3c8fd6eeb61bd6ba4a994e3088af67c848a9f72b4e8213a4066c15d14d0dde2294f29835371862bcee96398173039425dfdc3c44ff6cc48cfc8b613fbbe3f9a8e23ffccfac6f2bb0ee2156b4651b9afd3b8f842c531def8c8b6b52c24aec216a6da90432becfbfb92ae1383060b079ae200721b16b93888ef67962209bddc8fc36e30560b8945ceeef49be18cdb2c3ab129526e30ba1276c0427668ef6958541f50d0cf2d3a19036f9c144aedaa23d5d82d440e09a3e958c99106a16843210214680425d335011a8765348e2f7ca56872c1bde416280d3e2aa841a98898c0a64e796ad0b89bdb09dd9c9743ca5285b788ab0c09242dbd91c85145262bcf3e206151c48078d41315ccc586bd7ecf4cdec5ef5583630f6baf1112121a4d0bce1a58343c6470f60990bc47f45d7f711ec9054e18a6e00c1e4ebad39fd515ff140a97aee62a5d849cb0bf5b0c48b5acf209a733fd90c36689986cda8e80dad2b877295c57e547d9351638f607e5879a6d942b9a5aa224cea76b0758b08e978503f8afa55f4f6acc6c1c239edbc6280f3dcf87239d60d96dfb72c6239a1c1b173bf2bc3e440772e21fb70422b20a590fac967969cad91ef6b56bca90e95c4bd3c45659ed7d546cae2ac75f62286cabf6b93c437825ba111442c84526bdcffac9fe50268abdec943d51d5fd33de7d7fc37d4726f625e05a96618e1b77938d63cfe06e061495364faf3aef2be3e131d1d43d7c9b17454e55d321107d61a11a7979a2671dc99d72293551d43d1eec03881bc153b22ea2268c8caa912247f7486b9df6c8aad4badedd0c9f2cdef8f7a0f55eea113760a9d6b8fa2a47357fdf395b4950476c29a09716c1a2d36106faa2c528e7947e9d66f67d3b9f012e9533d5dc113a9414e368e00c9be8cd69c189ac11b9ec2cde27008c8ac45623d1a6246409e7e1cd36f36bf6dae0ac77651af25c34b454cb2283ca3032b9a9203a8baae0ace6cb863aecea3618b9fc543ea5867ddcaf9d19b6599c63e1935f0d88f6f9c603f0980b142f9743858239d2f6b8238ac759e87afd8aea4c010e559cc320173dd64ee355f39088435ff09717d573648512381f1917ead67dc4694c2474a1133e734032068d3e5dc70671cc268d4eb17efb01c50b944e4cd614bf10cfef41554ec5aa054cf074ad77e84669c40d3b46e00d09ef5afd083552962ae8acbad34abc05409fad33e9425f207c0c76954f82ff54f8c450c0b16157f8d9f97d88c68d2422dbc08c3479657af3aa55a9d55fe7ff44353814c3c8088b7dc353662d98ab6768184369bd4cce3546625add58e35ada83bbed04418ff107c3d7a3e2e94021b7fac4ac87e8fc59b2b404a97bd6d8e9d1f9f210fd9e589b042e23107172b938f909c0668c54377b6b030dd847a9fbf5d3a8a995dde58db5bd968981d16a3d393f515e007f432039a456186644218671f32141d5ff9ff3dcb6896ad14c664c2af9495c718f2063aadb2175963b348a7cfa1e6b88d2a639f943f601e6dc8804045ab5eccc8d742c3adac5e4a144abe74e4ec7c861e93e59617a6fac3eb2ef4668b419d0804f131c1b93dd24b484dcdb787ec088f34235f8e2ac823b5352b6c8a944e60728c1c4b18bca064481e65b2f5491e75a2798c658a92cd01ebfcc5020d7899806f8bfe7419a8d2150e71bc647711ec9e78d74550747f2f48eff8a9959c034bc90a26214525ee1a16e3a6ec9e8353fbdbb8bbd55c9356c927c4fb4382149b35c8e13cb2be15aa64f924534c4276194223277c28fc04c34f819513ec604575f1ff1fa6f354216569e8aec7583d0a49845230648a4bd3063617015e3b9505c86d5d290164a6cee5d69693f8264641344cc8b9efa188620d672f332558dc454ba0446dfc33d19a7bb329caea708cb97cd492ba3da437b873a634bfa44542de761aa06a6f360123d427c59a761f65064c5cebba6b9fe5334a5409d6e7a8b643dd7ad5408fa79953b1c648fd6b4a7ad81454b71d8392f864481313dfb467698ee6e4ee9a39f3afa1976b5c805d9ce513348d2013ec99e0b240d967eb7a6725103aa9d82a77d40bdccced9b056375c8fff2e0a4db17e9940b67e942a4cf884a91d0b6d58fcc1dbc7511533bcc4cfbb55ea6b00c813e03c6e72c37531465f69397bc4d751ed8e7f020be9d8e2dc9ccd9db75858d41b6d1919a12986424863503ea8524745cb6ca4cdeda2767481eea6755bf0d29ddd3274c145ed03ec4647c21ccfcdf911481ef9c91b85fa2c30cb8df3df2bf82b85631694bbe4a614e7cd7d536135d650163ee266740baa5a0db4960ec8ed492426959ca7cd44efe11d379ade4e85c201a5ce36e5a071e4ebf8ca49ae86d14ac04e28fd0e612c955ac2f247604dcca00e697b9b9be90186d985d1c579c96e05c51cdf4de0d4b68481a6fe648c0528aac541ccc23bf49910281f94e572f6364a511ba2ad6c1eab209a179c895c030a9d86b878e7b6553751407c0c33d8d66cedbcc701492cefc48270fb45d8e3eb5f2872f2291e866a21d5bff80d9aa226b1b2436c2901a8a544987483435d48d5c041ec2184c315c64a7ca72bd91d4cd9112fb73b571db8f98a576637406580b6c9f26606694a9e9b62b13ccf8b63c370fe39c66906c2fbfe6a451087773bb1d8c87ac7665e0f7f9084e8bf46402ea104c4c52b7eeabe55f4db4f92274cd8197c96d992d1483379b26d84f5b5add35aacca032be807a63403f6065ab447169db49c87756a6ba01ae3493eb306e1fb2b563f4b07bb0b7c22e4eb41b6251cbe96bc86177350a198ab9bd99e18893ecf1ae93a3d1aeb824d4a39c7337a27057502557955a30d64b7cbfd5421abb9d68a4b4c705e0c125319e815b12ec986810e02585841e24bc6af83460d73ce80a175e551eb03ff90a939273566badffca945b474461e0b9256754b4cab6551fedc67ae0892c06ca8a4e8d4740ab67b1114471fdd3fadcf82ffd1229cdc4216816f84eedae075047115a693e8c8a62b32b4001ed6534b339096ad725d4ea595f2ce816510fbb34fb48d05afc69cd03ba605f849a946fd302fce5e964736b767ba6e3e06b8c6390fda901f82bfd3e6dc17d6aa99c05da547703c45a02f113d932481e41e30d85bd6f8607ea8c8667d7f9d65a31a6e8ae3ce8bb6b6b80b24ab0317d1a1124d98d7cda812366932e23f9a7de7cb482543987956d8e043efcda47090af2247233841f2f155ba86ff9521fbf5c6f56285de90bbe3e6062d8a863e0980541fbbe0aef5dcc90d21e8246b45f93758bc76273ed733d0aee410cce5ac8ba6fabe859fa19f6a6bb7e5b47efa38cfa04ce589938e2782069a0d8784d69e9027886233a91bb47ceb1c0f4228b6a2ca61d4ce72d06ade15bdfff5943021eae67f692a6b82556580eff1c868154eafed70f2f7014b9c2f65dc651912dc77e01f404ae24c972468b5e9e25dbd924870f50561ba064800b1d84e2db2e37b3a9e49b819da774543cae33c0716d9325f368ff4be86e175ec52192a6f0cbb0162ce66dd1b7275639004bc5db45b488d3c097f477ecfa15db82a3d8983077587f8861c01421ffbd8fb9d951e333ef01becff54c2bc40f0269415a938579436be5f1073e1f4b4f4c0cf6dc4584929a9a09fb6e56d7356f636dd81a525fa2a8f38e71e9e19e2e2d4dc158df308a22c6a44aa0d49b6c8f87dbb4ecab1d6ec322603eca114241d3dd62ba5c2a80cfee00f8127f50dbf8617167e12e4a0c1c98b2924855bd9b90c4e4e7d4ad1a576628a4092c6eab840e16349bf264b32fd52267d4009424c328871241c41977448bd0473bc34a5e76713209f7573770ff027cabeb3aaecd2a8b48f634fb9ea42334a2a03272925d25700d62be8571bd8c45d8a84caf3015240e1accf4203a45f54df7425f68426205f6439433239497e093144569913b64aa97eccc7ecafe2930910a978a413ecc961575c1f08df2a467ab060eabca53a36bbbcbfdd263b4949d0ff4e2fe68e187976bc9c1707a7558f45fe36258a170171ee1553b3cdb984fe9cee00a5afa1b3299a1d91365d0752f2c6c9c56df1754db455fae8d01fffff1d3fa1978f5ea7342a1f2913e424a43d2d008bcaca4ec3f76ad06cb049201618a0cd2adc8fce3ee3ad567653ea2bf6ae5ba9711c077778ca6edca21a9d9f0014a964e5ea9e5c352253375d07dc82ac84e4def7367c5f8b6e355334814bd93322867d1fe5c44a2f24fed35e8d0f4abf25264d960d541f06e2d263ac1c520211fb6c8cef33091af29d046e5c3face6885b2a6fd86db2e7634b4491fb21917fa4a19273a7aef5298a999ea46c5c269f275f404490168ca85b7ae7cb4127d2117a82cddac0b2d5ed37d8b40c2c81dc166ea9cc034acba075b0fb2d1e6e8e8a4fd4a19cbdce14c4baa039801ead51f821f2841773cf3681445f4f628aaaef8b7b6ccc1c4e9d2360302fcf9524ffa50369622f4b4891524443211ff3e48938264937f37ed5500fb9f683bf380db0d2434492ae1ca3d058efaaa97e5b6e986542ce2afbe2a9b138dfbfe2b1921fab4239128cdb8f945a267a118c4c0ff4c64ff633d07ddca5b8533867581445f7d3def4b2d032dde8a2ae05de898dfac40e808b1bda36332140d4c85f4523b3ade47a6722eb7b6af010bc6baa73581e7a756ed16840e08a3bf8dcd9807819f83713524c48647883e40266a63c366332f1e9b0de085aa3401264fcb876ead5b1f4aef6055fc3fb830f0abb3530a41ea9528d31238e96845053c745f51d71c73ff304ae3386339a9cc77056f395c64e495404f1ad5c46db288fb0a1f7c090e96480ea3ac5ed6dc69a8dc4e490ce827e304de22e153552f81d982060855cb3940a21134fa9f4d404ad91b4889e678d163b2f5a4e0649db178d3aa6a820b2c091a4cb9b25635a23392af040f59febf19c90c8266a4c4764ca04fac09c97eb9ec3c30727d673a1693fbd395b54244295addc851c27b81bc1d98ca4102c6914005c079d062f26426ef71a0113714cb885bb85e4ca265bb7b8cf561ac8802e95a8a2d55485ca1ca3053afaaafecb051830e23b432ae81cc939055137ce389f437f1d3413e03b57d7bbe3ea27a407efa74e2fbbd53de46147ac10ee512a1386a7681dc1430712c4ded41d43f6d2c8900df2e14f717df06eed03cb5cb67989444ff51bad8ad7e83c1519f0c392b788a4bc94d03b11824a836f99e5dcc0065468a31aa1a86a4fd7ecc527824e2e1879d995c4a937c1dd929db944f6f89ed5197c8beb76abda8e95192188a5bb3c3bcc5341ee841a79a7e7b8ca1e59f68f6271599e20b50812eef7f525c45f84981fec818e2ff09310ce233709d3afbd5ba86fca37bc647acb24a6bb7dbac1f60ccf6a744a0fcb195cf909aab7c3e9bb40b10f253ba6461050c4a219a895783be148cdf59099fabc0742086882f31eeae6b1edd44a34e921af0db658c787e9ee51e39c7102833a849aaacd74ab38f9f1412e745a1c0dd5fb54798496386db4765af9886efd58355f8d8ebeccfc483db42c5b2022b557e9b5c2dc937d1a6d9951991fd1d0684d5f8eb43c199d935f920d9fa2d6329b2324e4f741a828d63beb1f5885b15e3f70cbd71ee86cd7dfaa7a50d81829a611d2130bbbe188dfec0211348c86abf96d82f24c74869b217cdac15aab1448bfbab1c9824edca4f7836c7d689be4dbf7a11a06a1fa6f66493d860e326be03bf02a0d7e5c9854ff9472c2cf80d1a3ee847dab19def400d69d342a9ce1b5373fa791c576feb8fc1753c298dedf147ff8332491fd38426a0a2a318f692fa2b2e67aa84b6518962d497ae5198cb33fe98e60b31314f10b824348ca286dfc881f5815131bbcfd0ab5154a0d5b5b108f9be17ecab8aeea8c551c8abc4ffac5e70b3638e378873ea4e7848e55646ce49c2ec799ec1f1f34b6097d8d3e391bb198b1bf7d417e865dca13a2077935db9e1e852232df0f6a62b42e77b915e490f1987a14f7147caa87f633353f356c0bb10b637cfc874f4debefa59d488c5ac6638acf5ab9f41517e0d40a4a37c4b981f4a975392010bdb20c808c7d53ec5d931504d4478c22ca24e252d9f4391416bba54c4c7cd06b332c38ab178d8cfa51bde9f05de7f2e11a888dabe363ecdea144256c0e341a7a2d26ac89150505c77c2cf88d461180d829db11116560212eb112279191fb11620696f5e9baf8376ad893bf5274823903c62c221381934925bbe19782099e55c39ea2b202d80bfc0833c91a861f6f1ec829b8a37ec1d5aa79b88d72597bdc460d4c98b1cf2a6fda95388a9562f6c260a913f427d11cd3ddad54666462122cfceb7a3608d6368676bfedfedb965c72c253b00a815d580031ab2637485441e43dec778f7266a510d7e39caa25a15bd5ac8f88df810a84a1da53297cae9ca509e292a48bdd378111f5f96341a10bf0ebd08d05496a5ab0341d736568774a9f8cb0dee3ebdb9b6fd7da5f97841cbda202ff2eb207d0405fa155eaa0ae6583d78540aead8e225822856660dbafb23eb94daf13d7744c2f6c9616a28b5d6e4deacadf68863b70bd626b8d4678bb27d856f6535da173ef057450bed8aa851e41f1ed251852a03e48b1e15cae61589cfd2d5669117a2ae3c93232871beeedd411b026949fae28a9984f2deed2dd669cd253628811661d427fe257d2cff4c422b81e76eca84915f4b8501c857890a6e756850c3b1e83436f8b191746ff9028aeab294936fb3af607e964f260a1b597c4a9958f10afc21dcf0377e23a16fb2bd9e942dda49dd246040c26b411e8c07817818957b4aa3b2d4a691f9c7d89522de6ed85ade1a398339a991ade303352cc420dbe953e372b641716f496fffd398db63bebfd5ff976bc1d2ceb552935a05b1f5c6b279ace1266795aa8a653c70e3673186894403aac5db833ab00964148c94008d0559b1a02da8d66d1d63e7c33cce14f0b955572ccc0cb6f5bca067355b15c33be948323a2be0f46f8a9539c341ae60172bbe8fe7be60f0ec2acc1dd18b71aa7aac197645b708f70f7ce338c8d012367876a421e3fbe2ca5c4e2ae534ac267464e4b445b212506ce94cf7cb0628a25b1c779c992ee5d857bab5a76bf2480684a1b72021e13e2aefece1950660af4b9dcecd07a0871c91719a6b3f5a74d1e9523c16053705bd8cfb7e8a106ccd5af02e42dd6273814fbeedabd6cf23cb494f044a17aea90f712ef2e47940aead33f405d79b1195fde2ac242fca5a9dadc43ed569353fb47094b252259d80a67ebaf7ac95e01d4d94cda137e583fe860d7945197d2b78fad3f2427805ae8c0bd897fadf1fc2a6eed7d6ff758a6a498e0e118ee3b2970c2a07890973ecec8870b2d63412350bd96a079d4a3e5b64a2b461e1b2e17ceaab9fbe5024083783542c339840211d4c7bc1865d47ffa0ee5293566a76db942c70086058894495e3eb4451224a9644876426154e2ce7c919b08f453864d9e98c2b8b60711ffcd5c567b714c39f43f7460d44fa1cbced085240f4093023621a83e3c33a4e4ee2bc7bc84e04bded417f0b5fa77e79d9915660a3960f22fa74c958ac4c70584e23adc3de4b744baf8356ae1e445e8a54654ee657d1e0a1d9858a53f6d5f5f16f227c0a0f3f2e8a8687359a6c4970df6f885ee364c2253e358489fd96ac740e7a7166b71481aa30f63911595cc49287d81875cb70eb0a14121204e536e8028da5124f41b4ea5af6067e7d4be16b58d4b7628886fd6eee4e4651404b1da0b09a623e9e9a6f55057816236a208b60d63457f3824ed8fc6f327212ffd77b48f8af16aa5fcb7e973424315514315be531d8cf2ef990d8ef5ae704d20bac5e11f55fdbfb682335042fca50e7bb6bef0a8f82024e38cd7fd0a4b051e836b0c3ee9792feb7e04fabfa98b5319c07dca9fc35e6ebd9e9ca84a5dca8f5949fa203e7c3743e97f4f63a62da724620cfdbb15e273dbccf1a88f249691b73a6134ed8302725f24a968505b6283379e9872c5d2ef624d455c83a1147b96a01a66f747bcdff84f623cee50bbeba9cfe3a9a92c7fb2de11150fd6de019b79b05edd6345c4c7ac2d3f08bbfe2146f5c9558e8e3998403276306489ad5b7fff67e91bafd49ec8400cfed14fe0c12e93bd93d3adf4bbd6d21cd5d793c19f6ead0be166426d00a8a27230b90e6b7754d032bc62034613a2770057fde86f73795436f7ad5e081effb180369fdae49385c7e8f9d0b034d68ce2dd88c5e4fc6f363e592008f35c8b7a1d25a7aba3657d831a597a7f659be6c3e4f68bfc786ce2fcc36ad1937baf062e516e1aa5b489883c7576475c8a4b97dfb471a559edb132ccbb39f5156dc0b8b23fe4f48a22d4577a77ec0dca3a9214dc92e6cbb485500b1f8e7da64e4d93bb4de1cfbe7ca6236754ae8e0ff7ff29f21661892c19b67e31ff2fb422b4434e11390f2b580c328acc4f2fab7bc33bc81b8f04d60bf2ebe5d4e05d74ec0844170ebf29cd80f2d7ea7b44cfd7fa3e363dfb1d35013c2c8c5c4047bad090868945cdf4a58dd3e2cf94e0d887f1ae2ab9dc6c760cfef6d19dace0f70c3a4208fe95315ba55977d670c502871d675a955d848c06d292df7c95bf9590671de27673f7837515c9976a2b89b07c9b8390c9f33badfe8b729af9dd320712daed167c70ad76152391aceedb91d7faeb713892bf31ec8fc4a9db90e619d7bd78852252d4dd4588328b4fba3e3a8e319f3495c2ca0d92ce0909300f88928a1017719ebceaabb59767b390ef477e1e99f10433c76a859ed84d2bfa653be103271c2482979b1f8e678f5f05060c784cca2a51e1546acfe54a6db2e64a1b3f262689cab420f70ca439d6f329ec1a72005dffda4b4c8bbb5c70c9a63d23428ffe378c3974c7865cfb118f127e0beba876d87b25394d907c61a888535926b651a2d2d820562a60880b93bb5ce49920f995f01cde9afe6dd0fc823f7b6342f3674ee32dbc532860cef0423fd96de70f1a79fbb7b72f0372f22cd7d151d770d5157fec17437c8cd8a3b1928a8556e62420d5a3fe7cf42876af12caa1bc7c04197e5c1d3fd902ba48a13ad89dcdc757c2c6965dda77ded54c4a2743dcd3d20626532d8bda78f16e0ad81dba094e43ccb0522d19ab322dbdc692c0d0e66de7c4993aeb6910730a0eec7c8307bc5ab1896143ee8dcd2614f9db0c8cce7a474249badb56391bb5654c1a754d8b427fa73cba0b39c4c9397f3d57f2284b44e63732ec8f23fa9782322ba03bcd9388de7dc46081f1f139266a444d79d9135a2bc8e4fa1257dd8a5ee333a153260ff57420ffe48708f95044debdf48d86c53cda928a431313910f6eb6dbf7b604717575cc0c5de4395f447af37343605a00f51c439f5044728cbd8de91c8f7d5f6249bf4aaef7c02753d5516a1bf250331c945c8c982c706825a9bf3d3c6b38c5e067b0ba8f4ead835471a79de67b5358736fa5b909a9048768b30e5348ec72aa757722611e831152c330ad10f0d287f53e77fc0c6ab6f8131d8f44cbadf65e2d7d4718206740cb1d1192e81b4dbb214f7ec7e66d56db095af7230c6a8950f6152ac23b4b1a265e15d1794f680f2ebfb55128febb490385947b00b3f41b0a5f686f9bdb0393bf317e16e1401ebdf5faa96caa223ebc8e3b79ed8d432bce4b9f73f55e07d1ad3adb1747ceb1f563f225049e16c86e4f70222c352b971430bd92dc5924d48d002c13e9f0ca4604926f4b0df435ed8bc1b0ec2b64dfba9ce4250f0a1640c29161bc5bb45da2833defb6c7d12f7c6f33e6236da16d5c058f8d532d0f1544acce5686973d8b27941dec163df442c5ebd02c4d5315b7aa033c72901f720933cfad94ed1df566cb7fb8326764e70ecc2d52b9d8a2728f9f5e1e30c0e1575c31a0895713a0526e3577e675027da05e6311a84e430d93c85570962b76c1722666b791ab185a27f20b692edcb7c7c24ce0fd9f93d99bfac7b3b11c4fdad19aa58bbf5cc48ad0f253760ba8723798ba012195adeec0c822c1b824e8f28944ca2505cc01a308e76fbe4391df3944e932b2545971762073cf91e209e92155a1d592b7916e987f778b000ea658dd1da22172525af63fc9880bad0d54827cad2bdae4da7a8a78b246b33e915c22c9df1a5493ee1558bb9ffa38efe31e4c0c4ce071d1142314f8a1278385e01d226b530d70d77599fcbf4dedaacd4c0304a336bc8bc6817bba54d1869b6e5a54541160de0919209ddf050784aba0a4ffc0b82cd07777aad98ae660cf01918249fee48730cbc355894f63e38b7ed9d15c62988155d2807f68b36a911bbe701117043e44607a68ffed516261cfb16aecc196ee313340005000aa6eeb7fd911157657235897e4c50d7ef850e182cd53616f43eccfe867ed2b2af0fa0da2eb91b6536816159a3e93f449d7ef7547dad97baf19e722e76fa202a351186ab32866b34958801c699b19a690f57d63817bcb6000d62d89a0c9d596eec4a58bbf3edde66b9a6d35325442dc0f4dec21aca62a462ffefbeb1d036d572da4c6194a8ad65c2785371e6d6885f024a2c9e026b4446572f9f03302afcdb0756686074359c020ca7148d372565754913a127f87cf13dfcc27e0143a247cef305c68e897596ed65da865fededed0fa495afb5abedcaec85e605c828cd97c7ba4ea92b051efef9c1911d56c6187f87160da79ff3d3cd5fb1d4cfd985a715e7e194d432842a2907f1038f3bb37e14bf0b34d832c0848fd03092127341a66ce9674eb01e44c6d5550d4dddaa913ae15a58d2d4c609443e79c3cb500d7bf1a379925e618468f84a87a2b118ec3ebe6abf504f88054bbf01db881dcd332c50aa5db0061a254475a5470b4a1012bbffd1f4004445d869a2a76cb2bbc15b807ffcd7b31692f7848b752b480e260c9edd0ea18e1fc51e6b6dbec38b248a6548f85aa41660439ee6b6c625248ee5306e036d905474245f14d01a1cf140732f1f7812b459796a9a3ecff1159967178602fe2e996ea6b6791cf89c798c8ff36cc35241dd5bd2e5011eed773765e2901289f6e8a7ac9946275c950c39365cf7831e583f05017c70acbbe1504e8a4eb6703866263ca1f3cf516e8d4f05e477e7851447e9a7749c02f36d9d6e8a226ee1c2b515de6ba9e397574313b47673555768193fa62c2b874f8420da683b04e39d7602a00b200130fe26a7a22c25e8d0a8388ea14f5f7e4e0626b311b5b260ca0593f113306b2b27194b4777386f1f97f57f976a6d770bcea7df829186ba61a56fc961f588c108b8484f7b1519baa76bd583f20af4363687c75ea4082194db715b5469961eac9ded065a7aa7e11fc08e2ead1445a7e2f4b96f882767a9a9fd98f74ee4e0e8cec91ff4ce6682ecfb00b77f5a7fb3374c469f8d9fb05961863b93c10317764cb4f7e27f38cd2ed07f3706dfbd86e515e41699441833079351514cd4ef481fa6f6435e179b1c8a84328f4c0a5a574b2a0fc694dd7188362de8dd8a5fc32ea9d2675a39f16675256306efe9e556a89f3c9bdfa52168187e88499df30fbf14335f53e10ffd6206419fbc880346fea40f524da90474a3be9c1717a11baf170f358f38cb0ff44caf09397a48896456fb6f2a98a2f539c4bf5268d23f777b340e3da17f5dcfd6ba187a9fd4eaf0aa14c9f8fdfaf8a14964a6620abf8c9b27b3638b2c7d61f873358ee0e61370bd3f1b4f42fecab64aa341cc7f7434e565eae81c98b556861846884210ba40d279861e6862df3bd6c2bb6d8ca5f5894c552108a1c654446998705e392f73ba4f56efd733503812c68cc9b2067251c299ecc9f0c0c7d5614d084d812ecc2bb77e8b6598380c2e2032017b62f8b37e38e5ec55c9bb7f3d4791da75ce1ffba49b2742bb6a39dc49087085a353a6ce2fa99ac5e7cc1129c1578b597033f25d496e5522bd3c4658b48117faedc84af21cc425333ff92b4b8ec58f150e19558cced9d478ba5018045d50f97bb1c3e229b44765752eea331ec6e63c890d3156cb5000f81d9dd5a297b773d900656b435e6a09511554bfbf768eae12249e79139c3c2b541d2f198af0801c09c16f9506a2afafc0147dab5500f65322c96c5c1700fa93f280590a38bc543dac05212677a271fce59813b94e168e8dd1806cfc06918deb49d07059c097a2f0ad3716ee7fba20570a6e62ce989ed7de5ee7476b3189bc80a09549b8be750cb7f18799515307b06915bfe2673d998784aba9e7f3d1860c03dba5d06531c8ba07e243ca0f3f0228f9db0920cc87bf009e4f1125c338dafbbe20f4bf8fea48d502e361cb415141b1b1bccd7f9ef9d2bded4837f2e098002a99a59869c8aa3a988ce8b253545136f2dbddc42dc8f19a9d43a5eaa8f86f89a38fa811b737d8601434243b123f153bc3aef92eff753e273729c10b959b048ff10dba8ef5becc224d834da83547d5e6e8fddce2634699761a8b48cf2544ba28b4fc3b5dbb7533af25c878767626c948914b45222df34bbabceb283625e839f62684a39e9ab0bc149a86855cf288a1aff4cb9781976827966af5278abda7240232a8860d1195734dfdae8943df4a2206784b7c4a98cd5de513ccab8ea980e1a780685f341b6e1c6d5d2e5e794a9f041dfdd727ee814f39d8505f16bec74bbb3fa327c5c8f0699f7516aa3d691896afd0f3ff800f8766b684e6f124e346899be0fca76b39bf701298a84bec6d71dcff25b110c0916c109147091e43231ddd941d7cb60fda9c7de2eb4b56c464864f9a82cb8a36cc4bf4defd2c91db343779b81efe86b8d00ecd1129e575f858a1e7000cdda359c7c5555ddfe6f64a57edfc2116b165345d36e20c255197807ca25eb33d5f819e0ee3935666168fa8b6d4788dfb14cc05a5d7bc3e660d3149cbf0f0d75b485cf79e332128f6f2fe596e742fd2d6813c8c54fe595e3b7bbd205931241292ee8ed980d293975c3289874e0319be391fc27f24c4c037aeea5bb6224e6d4a6784f0ece337415f22991f68c94a14df4c41bec540f10381b1b7b6a7b8441ad61d70139e652034804a3d5106fa96a67e5cec2930cdc4b8921b72b6aae0675fd413a6ce3216cbb2e8ec0838b8f7921c0883053f6b107edd3c76ca5f074f49ef093d98b09e283dd65c7ed9d29ab5528193453e530e3f914aa1e8ea08762380e12cf52ce0a2e88f91517a7f5c713ca7e26927a85e7535903b288e6e1f91591e5c391eb0eef74f8361fbbd8cf7b53a975ebb1dd834f8688c2927f8e4d102373e66d41505de46661aedaef1c96970ae5817b6fc1c9e2a762e11e7ca0475e7a5e2af362da6f107a85cb4ad8564079a230aa61358bbdfc0ffcb221f32e848c27202adf49babd0db8713dda05f89727ff2631df5dfd19ca030f4ac358878bb864b17f16218226bc39f76009c1f76affa00ec5d966b351a48f5960bd72b972d15e50e4dfd954179c1604d586204770f21bc0b99ff5b54c13f33afc35d8fba1a20abf322713bd31eba3172b0751a044273df0960228f3a4a49cbd72d1d210b230bd34a88b93db6b12e646dda021322bba9c194577f5009084759aa9e30aee02bd2d41c2b04952911afa4222631653119d736ab25279e7fd3f0ce5bebf0349dd32aa02a1cf5526d277a738266cde036f465716e0cb82cf17027beb57b28bd13b031f60e1e8cc6481ad6a1533b451f0067b0eb186d74b80e7f63bdc0ffac032a104cb23951ea1de7aa5fdee50c58b13da78c11f30eb7b4becae3942955765c109ecd21fca534e33bce9e47836a115c72f21b16c6c0b0522eda5e1c136c8f0f695be6097a499d021a8b7c59de8ea4857d433997bc3cab2395918724966b8b39adbb9b342891d7e88b91d475af0589f548aea4d015ef7d45a73664b4712a57c6c994088f83ae36cc378a73c7912d6fb72c429a1d24a4bc77a0c14546b0b1f7f04ab6d9e3d6f2b7ee0cd975587cc3b8f38ef6d6fcfd8fb722e02860a82c97cf19dc04a944216c374887585fc889c83bc1564547cdca751be9acea1c9cfaf5d14b131204cf0226fb8d19e9ee9cbc5a466116d2f30f6d6ee8b111b04a21b858523d525a3fe96b04f67cd91fd5429fa695336c2d6ca85e36c7ea46bef5fd4c8d87cc9b65d4c3b431e133509ae50a487d7fced284a29adc447f9b285ec4706c9330c73c3414607b972373208ce0cb1a15ba077a70961ce00c89f5e6bb2ae3bb016261532ae67f2539d921483485ac698091044f0b106f697f1099a6712e29335410dcd6b55ef20ffb3f3a642b5a9d2239c92a4edcdb67ed1e45f6eda919b6ed444f8d9263b3ff396a5136d2a9237bd5aa556c185645af9cee397c7673001594a7798734e027911e134d0c80f8d0dc58bc7a48ed76636bcfcc28751abaa65d16909cf7494c0837e1d9fe8b6bea3eb5a4568181b3ca5071fa22508829080b1bbd84b9a2199a7b72fe69802c30677cf4a3f3a17ddc24fee74842d3c628fca26cf62637a838dd901843d168a378a5020b710a3bcf05717e4db24a3557925fc9e0ab245a79c1c000802357b296b373cad8fb3f4afe850f261b48c054bad2f5605d1f9edf063d336b1d0606a4e1c50c50e5097c1b006014280840fc07fa84611093989ecbd1983d8388287267912cc7e3d98a34eb0c7a9a3f5a374dbd9423c8ddcd808f23dc3fe6c06895eaa3f37ed2ed5c8adc63c1aa96d80fac59fcc396e6f06bca16699b9b04d54fff7aa7b2eb584470a2c78ac20d3868c5d19832c7de666999894d9a077b058be8ca2cdcaf657caeb6131705b6bd510daa69cf274aaaedf5ac1e16fa210d87cabe3edc4adbc2f08c6b2e69e72fdf785f855fe60d50e8c9d62f648fb523520e4f8cf0e85789be69e58070fa5eef2d1b6b0ee163ff95df02bd079b4ad72364d9c68e85544881a826d7eed6736e1561c82d7579292c676e13cfd964a5417d0bdb1b1921812fa39aff47b4554cd4d945a6d76e5ec097f4b8c2f36880c6b5161cd9eea4d8b49875bb8a871d8129f160e01d56f75a1456a162774b8e56ab6b74ad4ae9933fa70ece3d9a988d9c08a775177bcc00e0fa928e61efb4ec4b622318f56488f4f7cf074dd910a1501eca847d622a60dcadb4298a1db310ce37e7c7c764ab662c83fc8ee6f167473ce18acc4e9f086d28f465f53945b74a6c8d2d7fb23b50f86a036399664cda74daf2821d92518781e7e2ed70faa9bc79ac45d9b37e7aa9ecff67fb9d76c5ee83281db3472bd32bff2d44a4dfdd64938e6624d10779dfa012efb35547624def939de942e9c40888576bc93ce8a2b39b8653a783a21ee449b6696abb6fc8001524b9a84518536996abde47f4e8209daf87af3c5ebb0ac847a9f0c856f72a0d2926edbcebbd4f04a14d6289b6683647c0d6b00fd70a990e7409a0a3b5d8ad5c786e36db4022792cd71d7418996fa876ba1708c2523b366d1276291bc5cd0fdbd8ac39b0b9b07651f5e65ff07db683b18aa0d6e17d0c4904500822836af8a0e6e3ec177f3257d2cb2d321037b0c9e36ad340147a5e8b14eb824d0f92e1a1cdc18c8246e457d2050428e92df1b8952e917dee09db1b9483ad75af9805dde58f48826416a8de7b68161654ee38f3f7768acac2bbc7fc29bc0d264fe2cdff43d0c7c44244cbc7a223ffa1e4bdc6105841f044fad4f8c214a817e1e9f4ac93c6369f27fdce3be70f185343547436f6e12f6a348f00fb8e85f76e9cf51d74200e1923d81bcb2d00bef1c964a7af04fb40d0780b9fb8557c45358e722cc93465765ecf44aa8ef0faf024372ac60bb80e6ac67f94b8e2e9ba26448a1e34f6ef267d7e9b74f26a27c1d64c2655d747050a73a55cbb7b08c40e057ff59ebd048b56333960d953c288c98dcad6f82244eb9565a8765578a9f189a6ffe33658d239317e5dec5fd64e2a58f4927a87b0f09281e9e069965eed865e663739815451cf1bc8e886f51ea42cf1a2a3c8ba843bc0adedd622abc79370940ea0b0506d20f19a11bbf8e5d8e3f257e68eea096900a281f824ec4c0f7257b89e899d6f1d8d479ac0f28ba4fa53a6c70f2822f66c5cbebd39413a8a18d3d8fa88bd22ce3ee5efa0f15abc2ffbcb8392486f869b1cfac05b75a571ace2cad47cf877e07eee30786f4a3d5111c6bd5410a7c02dfce8edf41145275579bee2ff7923a0ce75665435c02e9a136d2c4721a6e7b56c8c2599c830cb9ebcddef595d5a1f31fcf2f276f841516df216d438392d238ccab33494aa105ffe5cbf656415bae84dc53d0b6b23c1679f44f7c3b036dfa51a19950c716a0b3c7f8c61dcaa50166dc31d544edad8466ef07c9505b1afddc41eb65d20ea0d4019dc2b90db9825ad155f387ce6a6ccb3eda6c872bc6c52fe58b30676e6e0e868d0d3d99d0dac53e65c67b201ccdff882beae5e6ef462aaad3e7322280fc8303a092e00a0b33dd70954fafa7b5f4d8b4a25d06aae2b4482416a66cf2c645eda75bf538d62093d496918f1f4337811d2b5051828afce2883aa7cebda5631b66f833e5b942873c162211e74d91ba93f18e01a9ae2a1256abded2c187c594357068b80f7fcc5d9dfce27d6dcba10c15158f44955468ccd4b4d35b28582aee5f39524325239842d9587ec868853a33a49bac7fddc91e6ad15fa0441fd30ffc597bef80855eeef83e80f83962b5d0866bfd62c4d666b520ab51f0495e1abe954645407308c4b2a9979f8f2bb4d4df505edc29d63d310ffe0a68b9616578ad044d8c9d27fbd38fb131e68a2557484595739f82dbd9a8c1a1ef61dbdd3c7f87ed7c9ef64148303ccd807ac59ad0fc05c66a13f1fbf0146f59f59a1b1f04967e5b63b61d41d68f26a6e9072fe19e44592ea2c0a656fc36d9a4e7d844101b10fcb47ffb02453852e14856652095d4c46023a9921f780e52eb6d81219357e698c33fa6c7b8ed4c97f9c0ef45b24046b744c3392fe533b5e8968598a683a8c85ac40f4dba576266720a446069a4eb369f087daa26d14d1d328476b56645ac7604bb48673a6bad4d4f710dd63bb09363947d9132cea673e384a5d4c0b13b2ef66e061b6cc8bd603c082275488776f1f15ecca1f254ba81e4975f3bcb5b064c96d5062e5033b3126bc3b0c9ff1fdad5400b30d67eb5f66a704f9f7413a715618b87726da32cccf0d997a8a0bf0c9dca0fc6297db88c0f02faf061ca34ec70af66efcfec09443a64f0a659950f43699236f12005411822b21bcd0f1ba0719115109a4a36051323c47c9c61fcce4f1e1a8cf10dd2c6f6468bcfab05ce2d35edfd5713a4f5877de8b4e89415f585fd6212733d5b31d2c05be3943676ea3262ceb9f6c7dcb7e106d5d9bd13e28cd5bece29784ae3bec90418e22ed19675da22e06d657ad0707cd3119fefd7b19d226ba7b14bdcc38711f18086a64709f7e9dd177cd24fad45982d3dc9d2ffa9904fac3c85b4559b86ef189f52e3dea1786e2d2547916ac0d3c3c05a2a87e4bdc9f6be017de99a3c789c6d9b9769da0319b7e4902f1cb4c6fb7205cbcae6192a722171711677ed4bd6daf1879e803b5d6c19ede24db189a430d8e683a73cf0d42186fc455905c94d50d914910a643ebbc8ececbeafbf6cb42741a97b407b8fa6fef9ed2aba34c16d651473d18ec028b65e07e0bda152fe520fe60fc0e5a3515c9e45bf5c2816a1aeabe5a65f412a6125d7084549025906f948953bc4b0de443d34022d563ca7df3d5e26b552e4ded0f4e090484e05b12d58e697028c6fcd1ccb0a54e51473763d5b18893e52941a83af4624ea16deba4a86d001e2004367addfbc3923a4812a73701bad0e1bd5c1c0ef5b858a3e8cdb12d4f31c5575d4e198cf22e745d544abb2c2b2a58b26719c77e0eccde942effc71f5b933e70448026dfd842b74eb6a2a9ee7b06e3bd96050c5b3da83c004ec10464015a4248e7446ba0d398acf403d81a67561065d21e8397ea7f8126b785aaaa6f056baf8021cd94eb7775fc929c5172bec234dfa134c8c82ef6ede3f6ecf4926695fdd0639f319769c07b30d75e3fb2b453f22087c4721559a57a419e4a17af616c5c7c7202417f59d7bd3ba812458eefa34f1078fb3f9ff89e3be3e1ba01f7830671e549e641dd21a76fa589a590a003ba41edb82661674b5375564ae169ff2b871c43014e8c872c99b6ae10da83d69d40286b3ea604a95fa1d92a130e415f56e2cbbbaacee7b1dd37d3625d538b24cfc96903472b7b6aa7c29036bb129bc9c85824ef35f3fba233c1eaa83d34d3d7901d2e21b75c520bcd80d420d272ccfbf6df94fe6e62fbc8231d4cd55c6953b3898a3eca130c521d1eba0934f4aac8f7be07a0d5ee7e5052e1d31af3867218c179cbe359146576c01e312933c84e1aab84126dc59168301816f595d88b21ec51e589bd68c179daa4bcd7430b2bfea4c9920d169a49a1b59724fd60008574c353942cc11ab1a9de95d34181723d95ff8fdb4873a0ea3f011b626c6884a1c6fb78c796fdf59d87b5fdd981facf15b07d56e6dbf0364ad02b98669602bf3ccef36e0d3757f610e2b35fa88fcdfc659d1d9935f2d2e091b2cf7aa4956b2f925bf1e366faa480513ccc52c42a5f0bb863a17da300b77f3f40a17af9e5b40962f536f5e2ba82774f1057e2209273b4801e5406b7e079a59f80dee616dc6684458a0b66a7d9068cb52381a82c970b5961b8f4e0e805a0d5d9919ead90060dc562188ed59666fadd02c64baaeb6d09f486a820bf6b653abd80e424b3e44125a1e118ec20a100668dc5f36bfa4d425dbe5d9ab644ddb51953e80b4cf6b73dfca81e1b7261b35ff8738d6e484e9be619f0c69701d05aa11e9189fe0302be50b44175b440aafcef3b91645a3f0365ebe712d3343f324f0ca43d1eeba086e8db5406f743f0c12a6ab1cb65072d104a8287ab4427f31f31373834373236313830343232 diff --git a/jaychouqq/tvbox/file2.json b/jaychouqq/tvbox/file2.json index 99c74276..8e91c952 100644 --- a/jaychouqq/tvbox/file2.json +++ b/jaychouqq/tvbox/file2.json @@ -1 +1 @@ -24233132333435362324bf253e7e69d4583bfa32fd71d5d52a24e96b90398873f1b5c6cdc500d82e35ccc582a73eaefc2dc99173c53a4a6bdb5ed40d34a6478050a9075173381d675e3c04e4de98b07395816a96268b77c14905c53e5d3ef4f38330e2d47725c958ddfe4bca4c50d020d03a732106428b2fcc85479bf6eb2cde81ca222c6f69163555131098dc09b9b58ac0845afd139e5b2fcf489d9257e73a06562a5e67fb517f0eefc9d381987973785e858b9306d69e51cb1683acd71755949acdfcb296614c917b99338a83f8df6f07a5267322db1cbe18ae9a60e5e85c546d66246069f61904c26076987be730ba92d45d97f5fb38221b825312fe83eedd308786ec07b7bebd4042c57c6489821486ae5e0f39d2aa09c230a753ba7078fae2b46b07c31fc1a43765e785c3b701f26ca016767b658c032f6050c2175198cc685a680bd65adb44ac09544cce0e1e890e4d0cbbb918d3062dbf83b29c3b1c3cb9c279a022d63944adc9aaccd4b63e226c57f6a9ccfecb9edab9281465e6e32e64b6c3e944c4312426af24ee239bbe7a39735a811523b278176c7e2aa3231595d6c4abcdc0b75cb8fab0f348ac46395230a7e43ff59a29da5c7bf93383868e0e30b2d40c6f65012b41df310d00d0940735f10a651d78881041866e150422e302f44de7ac4e9970f26e1cc29b382027fcd7285305ab6cc4d0d4ef3612ccdfdb35d1695fdc4a1b59619a749650d88b3f00f201bb503b49467612c0c6ca0a1413f5ac24d4251e6168ee4f755f6717be07860f68d604e4b890152b9fbb05b3fe7041f0dcfb15dc506d25544b9672b2035f748bd0d658851431b2391e11aa1ff21dd8e0db8fe8fad69978f9d056bb82a2c46c75d1d14a7fa2dbecde88573bd3602f8b5e1e9a3fbb9abdb502dc15e8bc4c76466236a01fb129224608eb8f48177289d17a5a1d649f203199ea590c6c74a20c272e4c600da34877529054de3e189e800e7b96ddabe56b070b4c7ab3446bc440a66c7a1f8d7b6509e8cbe2a7a733ac07b56fab9445e689cf29d319e7884108597535939194e85f300341c0b88cd2c791294684eb023a4e895f52081a04c3a1e84a57232c4d516b0f8e262c827cb1b475b806da91707aa551b7b5402c1f82a8cce1c0ba2df0d2767d684710524c363b4a4d7ea2991eafb82cbd893a0eb2c826397643c7f1a8f406181f7f18d440cf6013cc1b9b5c7c7913bb4e905a1b147ea73bd39ab8c8769c81241e4108175066d36f643d2caa0f39131f5d4aad21a117e0976d62d3b54d80bf641e4ab22766b449654467cb211cfc7ea9d9c9fc75871a473082e17810da9cecea6e8447e68c324cd7e65029cd29b81ecc51558394a7f88a87896326859fd3f3b98dadb7019135917987e2129add01bcedf592e5d914c5f3911a9c4f44a880704a7563c7b2edcb32a19e4c9dac618e87ce9fdf697897c885a7f39b2aae7cb23b87cc4766ea30ff71c27b2f15c999eef5bd1bfed5c7650dfff7b9e5828cd1180a8a5ae20bee1d76e2dba961e7218e22042e3342c10b307b7ca2e29a5f35f297063efb767950f8477874027f48434e5fe27ce1b4a72c1ee45719492ea56411d5fb1d77605dc2a772862842ff62e5b42b997b6d4c6d311f5db54f34837541b48c4ac95e3d5e950c942baa2af2b14983c2ee91abfb50712d720370490818132c997b48b6d4b00fdc92ae718c9519d2761abb2ea4094e0a316caeca82c94078226067faf63605b60af7414531a4cd69393b7b3bcfe9806570cb1453eda96044a81b111f45dde85d5dde8f7c40593d2a455b7a0492baf6502311e8ca692dc04ae2a4b0fdbfbcffd94b666892922113f9cad153d78ec3ab4bd482571056b82a0928c84eca692e83c921cc45537612d0ef1e5724e621b9e56b6f124b2a6d5e6dc0a13f36417885f54db7476be9e71d62e96c0ee60441ceac7dcc12a926e07b77cd0397f1036181d77bf5d1c800b54251dacd7626c45fa0b98b106b605ef44f79e7a53475e4985265f79e48c636cabcb9319779c0a7ee753e61f6a8625d1182946f590f9bbd5e04178b1f604cada884d1dedb5f3fee5d20b0e648d5ad18149cf9f8f9215cf30ac6759a13f98c198dcf714c9083ec23c760da42394e95201e31d025a7e90ec434e0f8ed79902b213e72c0336d825fceb4b736a11610f5f150687db798c013a1d47e4f21884a9805032a06c7d7c57dde3a7bd55bb00d6b8311bf0ecb8605ed7302fb74f298ba21cca411a934e855de04daf0b28ddb32d79449217871d8100bee5997a8fd43f0cd5d1d2008e1de1ce320781802414f8737e9195224ea73b855ef24f574ac10c530d3b4fc73cf1a3cda9f034123771f14c27b3f53a4afc1ad8b8264c34692bee75afd39f816745d52fcf7042022d73eac844d58bc3325ad9c98e633666b5fc606705478258de2386bb0889a8868b72c4c91d27b4d7dc2b4977d25ea352e5641b210e9ecca57eee6106cc29f232d54e2507a9de15cdfd52ba2234c837798d88466f8ee13bf96c6891c97356553218f97323f1b760c448a2ea81eb49435b94142f72fe97c7de6873cab2d8ac3db57e1582157dc38bcbd2f4176d9327c14c64ac50807be961668a19d797a466936a57757ccaf5c19cffa99bfd64fd3e768605a828d1e731c4485f0283406e0f8232934b835ec4ad53521faa7c0beef21ba2f2f6866669b4bfd217bb22990bedd2e6a449afad7792c6d959ffc20d1f37e072f6366d716cf237a09e90c28fcd3cd6278504307fa1ba02cdc188005c260ee3afd14b0fb01d4aa35b2dc5fc62d1519e46c3020558e40d810cf3b5a03b4f60ede0a367dfe36e158aec2501b90bd7e6c468de5ef3225a33d4a79bb8bbd025e08b0d988a9dbd07f23a9cfebf11c8ef3d3cc8a80b032d65166e2ca8811af993debb38ffd0d5e66b95de83d106e3d0914eb49c8c62690bfaf713f3f192b9b86b2efe8e034cc5936c74e9074e04f3714d75fc170c5a809e7040d6f1683c15070452c336704837957bff4fee27970d2ce4ea3e1a424ec7d925f254db3c755948ba17263dcf3881d9c93dc408cfd7c59c84acba39a6a5bc05151fa8f8ffbf13fefc96dada8fd38cfdb5a24c4562ff7b256ab8e9cd87a7dc0c6fc21c13417140264dccd026bf05f631b7872d747e08eb104eec2e755766fefcab8305d58e1d4b5d41e456f3689a3de3baead2f4c5e76a017d8d2bf43b5909c2dae8bf6a20f00e031c43cb2b1d7f4f147151ca0ad95b6fe1529f0ad9e9cbeb29536b2ea965b537b547f5fa2174d126c553638fbfe65b9854b2f421b4b28d8455656b84d3f3e9f10d269c9696b74f15e938e2fa87d45bc37726d5f5536abaf463f71f82c3f0cf54b9e55ba64103c79c4cf461a7930ff9d9546412e0b49475416960befcee1c9795fb4fa3e5e88756c20f650fb4d8711ad4e3a20a1b6b030157dd10e2ec0b75c8e9e3dc215441519b9eed90d1431739b13bfbf79a91d5df10f83713fffdf07a34dd598dc81b204b35aa456fb7870cdf1531ba71d666cef95453e665f264b2727b1ef234d8f9f5bcef7efccaa8957da1ad087ba2c31337a2d4daac42cba32e8979c23cb31a2d0e9d845d22b952a00938310ca2836cd56cd736abcd9c0ef953c197397693b6ef8bbc08384b31d6453bbf82a95e139f51b71c9309527d8e5d3f4cb3dd4e99143e90150efd0d11a08cd9e64b1f274f0f4e1ebd797eb5b9f1ec3ce6093b145ff0f4527825d2303e78a73dac4c910e95aefb868b1709613e550b620600976393ab22c1c95a093a514b289aee6e2d29a8324af5f636c3aaa0f3c9d8fb65fa439f54f47208ecbb610bc68449f8d1c0cc0ac68fe14765c85b84c2fb9706e868e8972d4f510f3ede66b27ca4c7341fb488eb614feacd83f854c98eb4143d03e6a35f46ebe71226f21ea78fc01f5a7f631f99dfbfa1762872e80d9656610a4657afe2b9301b47c981c63002e32649e15a4139e144d138d18a0e6755576c8c8befae8caf4b270bb96fadf641eed486726af6e9e483ed052cafd77f82b84246e3872e2d0463798fab326b7d8e39a86f1536ccf2572c6ae17439c591565d9690cee4cbd75912bb4fae8c0f164767dace029704a4a67a3ef2fbe1560d96cafcc17693f937814049b1cb3f449073d6a55612e0f6029e3e1e646d4168553ad9b8d453784988ea812fc3d2ab5d5cfe54e016d09e1a00525efa47ee2e377a9e3ac20dcbdd4f110bf48449be60a363fb4c0c2ed4469faad46047a69d07b1dfab2b519987fecf8c9733c5c5a6666c3d7f7a33420b03e64815faf3e970a6251851c3409d143d7a55afc865c28f88252f6b59ae0f9ec1ee4f0180c0b790610e2338c51a2848ae019d3ba9f4df6a6729b73ba43aba5fe50d0a497c57c9db0f8e7e096c82d75e980691def0e9025c6a1baa3f6739dd42cf367313457e574598908db3252714f7900d57ef229d9ec1c513eb6c91ff7817b6fa4fb0d58255af233f0fc0f6ea0b138aa5af3a0e13b4c97b5901a6374385062b870dd8902b230dd7f6052f6fef4fab44cb3607badb710564b80d316073c6555cc548c41b8bef58adb373e5e5baa835528da16eee4125c263d65b56c34c7a47d3134d97a9aca6c5763009485b20424138383b9ca21e1742c9131ec950957669f2e3aa7cac8dbd3ada31ab2b7dfcbb7f6002f6094f6a7dd9b4118b3d5e70d4d1ce839047740caee902ee5d06b63f6f031c76a9f13c6434f4d7f64ae83fc2fe18afa7f250e56ae4fc48a90bb9290269d3a13a0a23a9a3951ffca0bb3ea94cb80109ced647193fb6bde7b27939fe4b2d5a25d581a2c43ca7313c18967a2ce76ded6b28b585ff0af46c188f2a17c6ad207c472a4b6767314851462bc591106091194084a37fdc6649d0b8407b19f733ba8b6f71cb78b2bff38fed612d5f8480959be367bac614db27696c9ad142c421b5fd329808727e536b9510a2b41f3c0804e5b92f6aff51299e24e3255de77315fb0790810d3797499f119e7a538f69e309b3c4655dcad41491b7d67a0227ba6c6b2dcd0a8b8898e868ac99468eb9b5116f1cca00a293fc3cac866ad02167394dc57ccec39843d9ce233b2c5ea7af45411c8f12483bdec39b4d5c2e0cdbb9a22c292f3c94782cf014aee957b33f0456e6896b64f4bb4588ad9b03e54d39d1eb32b1fd09688d776cbd29af540c433ce8ee139e91d8cba0a40e68df2ddc876af5b74915337c32dc286c64c4f2bdbecfb47a955ee803e7d10f32f0bf805654eb2990ad3ce9b5c708fcba747b94b42a3dd91bd7bfb018c15e484e50d7b318d17b3a392446df4963025f6d4296f3c76bb10df2a290c60c95913ae84cb0c9d016e00d3073875d258e139ab078684516953bd394241029822d684eb77ea09d15b54843b32e74947b3ac38a73aaf04ff868fcb8beebd3d5a6535e285da709f57ec94a1066714252a5610cf696ab5da1d44fba4c99ecc98b569a8cb534e835b5252083275e29558ebb5c69762961020f29bfccc2b85052a00e9eb5499b1455d9494c806079c94454c783990daf5c762ce233a2b1cda1e226c930f5bc9f1223d44721f159dea5e72c207f71b2b22fa1cb8c2b67011a4c1308e95fc9db30bdadc9cfbcb3bf8ec7cc7159451cf033c9b72a024f98e134796868c3c55e400a4e2d491acc7b83900903a9a3eb1f7674054f42561c8e4e7d51cf7095202d4991fa498fb59ccabdca96e524531ac75fe895c9cc54a47fae4e5f2a376a08a1b9f9faa7a56c268ac989f5547810aaac6e5611e5a399f7814a9cf4a9aa88e966d76f1051f6144c0f39ae401297c85c4bb95ae21bed588e8781237b116cbbf32ba6b4fc685fb6007310e49c3db92091d8f5112bd03ace340ca8a09d4e8d51c4ced8a82023f772807e96ffeee6205e972b294cf3b5070b39f0ccc107b64e3f6417aaac437b315b9d2e1d2fefd5b6eab945a9597f8bcbfcb4363359b9143f0337397da0a4a3012c3d0c9a462feefeff43a5aef98c6ef2869ed63928b67aeee2071dd9678da59127896958619672bcae9aa322efc9021be2aa2336640fe7d515a986deecd44478ee047d307d30469cff27703995e8d26ecfc7e0e8c8ea9f99ca9578576b215b2fe2b77a41429cf0310247556ff9b1dcfaa4c512c54a97981d221a2cec6997088ee9d60ab2a54f4518f5c2ff11ae9af1e9979fc596c8e453c1d85c70663714bd0bce204248481f013a31de92fc77315e8c43a7af1cba923a15eca913924ff338c622448f06a11d024908d262ac54ae7bb8f45471a22563994bb15014cfa8bfa042a676fc9e6653dda0b86e61ade361eafaa6311b4d42b2ec007a91e58312520ce109134367528d47610209f063cc5bab03a80b137d6493815f9bdb29387254584b111d1af53d48c5fea7d3bc8a3e05c813cfccedd259c4faedd8e0d3cf8f1db99dd5d53ae8fd9a1cf2bfe7ae2cdaa8d0a77c2d05751b55442c7e678fd0c99250f3f70e66831765ca6ccb902d665132d20faec99cafad9ee65dad3d5c1fde356221acbafb26483db2a29036dcddacfb21e6a357977b0ad4047dc432c57b1d2ce46646fc9c497ee08ef81d957be454d0f99247d8e62098fea06cf1a94dcf3305cb4fe5434fc094a4b6d5f090996dd27cf809e1b09eedd1d2f327eddb3a0d3202da5d9601a71513ecbf0157721bfad6f668e6d00463f73d2066bfbaa922de17c471ee25c3a937893fc84655ee1dd6208b1f5383d74efda3862e6a3522f6fc44c6a29eb74d160aab79561f6325fd05fc989ac9285a471f4d063beee056fb5f6c796528243fec490334f807ba9bb9144b8dd4cc4ca2431ba14cc8b010f8a9e3ca8e09e9bfa5bf81ef36319d83519d426596133142d7d026485a929715ba09bb03ac73bc150e876e1231b8a64372930d3fde97ce14a6adcde974574c48cf25027a2f5de1c4e6fe57d1396fc54520eec5171d34f065c7739f381060727206b2159981ec891203edd6f494bf393d67eb252f270be889d1271d14cd74a1256beb4244ced81732189d2e5ab4b575a295f83921e30f9ee89a020d9c600b8ed23bc862df09a2c72e4d5a4211fa1a8ae23960173c27ebd5e15ea400aaf51d89c1467402dd2d9f4e2e212ed1dcbcac735d5cd4218ef088bfb5c2d36aa34a112eeaf6a453ba2a3be88854dac5ba27157bfae505f4870a42edeb6b0d3a582c970db28cfca850ed643ebfe42348753d94bd4b662f0505279ec3f7fa19d75f8f1bf37d56ccc93fc6c4ef0ef280e5737fb2db00d979e0601f6e677787102922b02f7691cfb89aa00afc5c8d366002751a5763c4899e0409c520581576bc9b719e3944809366ead5099c1ae7c08c02983d74daa4bbfc8a08b860d0632ceaaa6321e1468c2a8b949fef6fe7039faecd56bd55652c11698be2c565226cd951e31320002c5f0dcbc3b3d0c14a745c62b66e4dad408e29e8f9b99d78fc576026cac2c49b01afbb61839233a4a0995e43bcb7b7124723e602490769fca13f49bcd03bcf924b3d5af445d8914883a72534f5ad3c044ffcc885c6dec2781bcf30cd63dade20af8c14c095f5d36c232f88cc22e127cfc7bab6e55cc281382652c652f7eb6b371602f89fbb31567b6de006223c8649e41af218a0d505adfc4dc9da03acbb386620de59b2b7b31d32b4501f7b0428d8a5ffcb47a9191fafe8f626c07025b17741faa43fde56c26f3b035a8a9462107d81a60ad6448511a7c4ffbb00b4e34b941ba4d203e9fc0eeaa9f3e7f9e0ce554e1d76a9101e42c9a7694a568968c781d7752589c4d2dad49ff836227d246ecd930f4971d273bd67928547e82e1d9630d99ef501a72e9088ce72dcef3e6601c77a4c5dda078dbe8706706e8bf3fd2ff35a1e551cc5c34b9d1d71d0d04e6d686a77cd8f40d8e0a954d0d60aa4d0f54f4686c3b896174afb33d220281cbc66b5af0a48094e6c212d84b27e46fde27f574e47b5a96bbecaa3c3d7d85ff2150e8979947ece9367e53f1f3ee27e0f4a91460c97f8b8fdf6556e237514f73b59f128e1fb0056c41708a633472d334d7af677457255f3bb9e54464fe51ca9c0a46f7df789e0815e64bfcaac4f69d439baf60febb2ab81f9d56e2d37a13c52c346ea85b74fc93c0b769d289f0d671d2d219d42214d7413c0ccbf5d1438b3ff0e32a727639cab65a148026195f524fc9914bdf457b142194045b0fe7176d5e8d25258fd1704ee95a0ec8d37dcb6e77badcb8db2a343679aae1a4df92547bdde1d4c2ec0cbfa2b3805f2f2ba7ac18c828c6f04a0241b25cdbe64e7ebff0b891ad83f1490f608e51dfb5c7520c82162730b1c8a3f3fefabc567a1a03600107b6727c9efd34d204565021dd6cb44377d847a8613492f6228f3189abb6363b5eb3f685ca2ccc5aa3cbb77bd4328e14b157f7200dfc4658bfcba21127934fc07a327ace264ae2ff98065924ec990b8645ee8c4ac9464f31d9ff2f6cf3bd8b36dce6a64327421a36997605949a7245f3071307f58fd0b9dc5e017770ee66e89217e9f50ad35debcd7c6bc1b8df2d8626ab1d97b091a3cb414d48db8b086e90e23290afaf15258576fbabb43db167f8da653878d1ea58f44f673a68913a6863ac6ff8e10675ddb5d30fb4a53b89edf423537f814173c18a7c5ee0cb58eaa2fc61695a8f48c512a01e1c720983aa3f9591e8d64b9611fd194041729077aba07bcf1a15b764443ad0cdd4fea14e9c337dd2250d8f5587eb1684b63f1ebbd5e04c79065d4859398d3d34af7eb6c525e0c97b645fbb187da0f30a0f553f3f9343d58add2a173b0526757bef788ed3ff2e9378e93faf4ca53ac1a19507cf9d3b8ee56c6b56f1eef1d75b8e0790c040f8fc49af167db134592dc1e47f89183be2b4edcb2cb75be67e07450c39c7a84a328a7ec2f8b877680d397aad7c01ca5be6b0e6a834f99defe513db1cdeb36eebdfe07689ae55e0571d30eaef0d710c51a3db69527fda235ec94e04b1af6d0bbfabefcb8084bf72f829ce58fb7eff4bca322ebfb55ce0e67aafefc6b47a889db08cfd86dd46133843eec905b4180221d3ef714b83aa5652f03e30f028d38b687138642f6ae8a98ec31da121141524414dcedc8ff5c14ff7a9942ae6d50b53245317ecb1dc010326503b79aeb71bb3a0bec89724202ef5299d584527587d5882f23b7e1fa0c64c9a4a966e7855807978f6de4750d56dd321b11d4c7aadb69cfea842c2e7ec3579f521b482614de937f843b28e176390f95d9c09439bd1c8b3aaacb0e933dc3faacb84190cb6a4404f981d1bd69918a2c41e23630b377b3d83d0935a93265a3c676d5d62d9dbf3999702e5b4e35e78d4ebf5672dcdbb926686de2d931cd71c16ca5f23d3dcfbf7b52e2e33773e1b79facddc3f3838fe0281cc4689784a036e9ace3de6d32cc0ff5da9cc448c16ead51974caa254aeed11a0f0db48fa87d754bb4da1a88b37251d17939ab463ff0969f010d0cd784040eb88e49a00a50659ad972b23b8b2be82c76f7ebb4a7867432bddc172a34ad0c8f89bef7c0e25f997204aadd98b6c69ccc56f0480a474faa93f3e4f29b8f308e737aaefd1ab6f567ca945f0b444a2f1877bfbe4f029d686f441b2f51e529531723e15df249aba932210124d15fe211d29570afccd7f5cfcc4e533756752a65d59349d0eb374e50542302ef15c837da733836b5bc4e9311cf3b8ad2000e121b48ca7127838abdc8db4d464b979368972dd1779345aee90aabb17060d95c15d95e2c2dd4a3d14bd864abb96f5da12798798075a0608ec60b488080cfff803f26fdfd116eeca609d6c2b9651c29b46b53c4f322e30933d85ca3db46b3a7a4a6e029adb97a655b3fbc0e880670003ace0c8ec0b04e2b6abf02984e3cc178989168d7310a6760340212ca0819c7ee8677e2bc75e8f54ed747b75b764d24d8432ac81546337886764b6d2ed5f540ba4abe5d5910100a09b70f003538fba0c1b0d7d7d6d74c4a314414b7e535836242490973ff78323709acfcca0f716bbacd5161fa6ac5027ceecf60bec813c2940f5306b693896d162922f473eae4e0c46b5bd048a7d3f17f30bbcb9528651c97919565c518b81cfe27fdf714c02a2581ac7128bd0125249c7a24cce61a14bffc6878254c8dedbdbe48180b2a25dd1fcf4dbdc3ecd1a4b343605ead6eeaf6bf7c3adc35503f5624d040af7e1c1b5328421c00f260b81b3087e444d1d8279b3f60f3c6176739a64d5307ccf16516bcf561d79411e907bf0e5292bc01400b17fcfbba3e0c021efcb5dbfd852d09def4234bdc1ec31a15a8075cb06b88d0cb59166bf1dd4585f184735ba685c014ed117b40ad78c757936b3863b3838558d6926d26d6200c9b35850a6dc931cd165ac87b64e221fe0c0b2681a75b440aeca41bbb3360fdcfe5a075f63cfbcb1357ee484ef016c8d3ee1cd8be0b0ed5f04fc39d35d5284f70a2ca8aa8d7b15fd666e80b66c0c32f1c099a7d9713aedb9d407a8c89fe8bad8928cfd16b5b6f4cc77a76cd734089cac13746e7c7d2bf3913515a5b456958ee25aa3d0bf6fbbb6efa95ee0983c348916c6c9748263e021c2e906f693df50f0d59568b9266da41ad1aaee4c44d5130465787aec1201aca005b5fc494d0385b45fb1e903e9670266f4e0da48919122066a7631101062bb3a03a79416ca9fddede5c2a3bf01be75564a93daaa63fcbd02dd3cb7964706fda893e3b09a1333c161d7c0595b3f9d6eecf926596a6d129038205bc0b6bc343d42802e046c541cd118dbb9e5d7927a022e08579319626ff57034e49f50fcf608fc3e1252f24d10c75ce17be3ad02b1525e08e0188f7c342e98ee71432a1d3d327c06d67c1819139f0112304142c8ec5db8b31f53a1b9c1266beb09758f05847b0d4d904702de66f3eb0617eb7b48965eb0e43a4f11b2b6aaf761aacbee4829e424e47aa6aa98d0d94813776c8ce4c60b12584dd158b19ac831e8b16abc056508ec1150210d0a38c092dafbb758b89176d4826a33c26132de7bd824aecfdb10cfaa682680c4af59f32c5aec2cb132bda28fed679335303273ec0e3ee1c865234fb9090bfc2cdaecb59ccfbe5c428aade1f3f8b3e9a582bb16ce07a35d5c98de1d56fa6a8aba0018d00fc392daf21b3cad523cad60726b276d29854fa2d713123318fcc369672c10789abec45f5d620d2f198b350aa0bdee1f7f5b9ae022173834c5d8634222ce6ec9862b2cb15ddd879b04cab1ace415274de03de2e8c0d0b9d7b553f4a17620fec097f2b8218441767dd3d72b033d004d50635abbfed1a7edaf53379b98ca131f28745659ad72394d36ab5955718bd9565cabef32a7abb465ff221fa26079f798247fa20b71e50701805b8e1341d8376bf3b595dd3314ec3aede01b3d1f540cc28ba6bf184d59ae7934eabc9b54bb084d27582571b4e11d569e2ad312e87f2acf3afe28a1d417954b676ead67a714deaa1f9dfa4749641006294301e18aa074673181608a0484528129e291445351532649ebaad50265bddd95553d2167bf781200cb694a8228e6a601ec0d8dde4cc555a2f09741a745c202837f35daca99ad39911ac7d342259ad754d9da150783bc4a8da2ccea055d6e4834342d580d7025c6eb3521f8a6a1e7f9c51b5f1802cf6350e3e6d18068298693db2675e201f78728beae4537d85340b3ab1dda73d8413bf70810c0d80c9020ac34bdf2093040187c905a287f06332b1242784f88d5115263c904191f769e715944af1b332d08cff2db296b9af5a6e0abc07a91145305563ee3e330c04ba839a60dad896c2c5dac933d31a8e310edd5433172469ba0d8b496e08a396fea5f5338af01a658725edaac68a99a538fe2d778e2a90e79772e37a8e4c75a43c9f791e62795c31d7b3006c00d72e4a62d9dae655fad83b033ba2d5d6e82813bc10b437d1fb55e97fb479ff93e2080663b8c4945f9f09782aedd5ce7d174fd20dfac4ccc1c93b7743382dee2129c955a38e5851d3d9cfd5c2914d0b12bc08650c472380617becf466cf83c1eea54b15051e1f921af0b3df21acf04c11ca22917ac883620efbe30570670198e2bd33048f9e667ad6708b9a59f552526a4da6741a381ac2156c7dd93639d23c59eec6c50ce567b710bc1ac13099e3e8668aae6a42e73560a210e206c520b4d96cceec05ff7812c8f2426e8691016f075a84d6bf23f13c6565b673fb94065189652c8a0aa3270bdd21b05b67b2d28eebe70dc3c42fc341352ae4c49855a40156dbc00f723be6c8f6a742a394daa6318e6ee2f28afc0608279b10fc022c46ef63ed3e9de009c9c00c952dda1cbc96f8ea9593be1e8e00b4310b24a6e79b504ea323c7cdb8c61c8a55f1bd00f60d9cc9a03d29818a8fecd071dbaa3e82282b2439a410a7cb22c76efb33d8c3e1a1ae8ab289522478e33349409e428182bd39699dce28e6ababa1df62d610acc46c21a79bfd2cb736102abdce24ff4ced7e74e3cee4276067549832d7615806cf3b34212bef6a73b49350065d544b21ce5336eecc9d6d435dcc3b64372ed7adfa947342cc1f270e6e09e592a5d4acc03192f984cef8807c224caa6b576b24de5ec8f0ee33917ca63dfd47c1f6242ccf223888e6193a5bbaac47e7935972f63c1cf70d24a0acd016f1dbbf5a67e3327b64588235fc617160e5d7bd973ab18200c8df8b45997118cb61c89533df616e338314f7a4df7bea796d74ecedf84305ca42cf723acf58b8c4d74d7a0ab090a4737cf5c31792393e23e806058ef2afe6682e686c3492b92ee6c83817855a735cda5f20e959c7640e13b939fc24c7650643bb77625c3d84a5b8d2687302b50f86b8e53dc96dfd18dcae199bb316104ec24be334ae1ca930277db08cc911ffb861324ebeeda5f2c1c50fddaa3ee30b1efd3877f8cac4e16e760443b63a5804d6a41583235eac8710cc2eb5c181aba88c29c6ae4c25c9ffaa985fbd0c3899f582f562bb94395e98d297e3413e7427d38cb5966abca2726ef636e48c62eea3d03da88bb1ad408b911f7583cacd338c4f45135865ff5822f8c49cffc87a19c24518c3a8d622a1c5abc93cfa0275375fabb3706d1c9fbd17875f35769bdc196177bb59f3c85a42a054db678ceadf9354022e116f250f2fd7fc0b5dff58e09b4bf07f31796836c5a44589c64b39b5dd50271a997eacf740e74160e2e3229bda681fd13fbffa7856f1153fdb7636ffef998b417f4390bfabb7dee1eea3595d73f139b45d753e01966c65f8eac1122b3f45616b120da48ca44d28722a97bc823c2f0f9592b5bc70a315b1136a44d6acd7df26722b1df865e0c817bf29ac4810141493022180d5708d4a25733ab965507451c0d0ab6d243e856228c72f21ce2ad43ef9913f682b592419c837fb8c2df76ab99363c951d4279a2f11a6f0dc9c24bb5ad78406085db22fd70d90cfdef44096ae3271ee219a4ba19e2f7e7617b0229ac5d7c02abea1bc53a964a2fd92742ae506f67fdc64e3c27a3a4346f899769e8ffd88733721a18addb9ddafb6066e7c2b5052f8d0a896a52cbc6ff70c8b553a810e96e01168954ce7b1ec74d54851a3e3d1fe6891742acae40c6d7e8d5be77f002b4d3291e9c26e427f05b72701893dbb39f48c7520592a6e42d79bca936f34094f0745a544ad4b243306ced3c16b8cd86c3e20b058e87267302684b63c368b18ba455dc136ddeb4dba1ad83cc3f409e8f523651c5430e7f12a77609ee5eac18a6fc7cedf60a3c51653b485942b08acea9e06fcc2b5a2d4ab2a7188d158e21c6f371bac9bee86136204fa2493b5bce64e5f53fd02e630eea0510a49fc9c7ef33f51fbb56693a03460f3c62827aa56fc721f4594528a9bebd21a47f251e0076494b0f3f8579b0dcb3086e9dc5f2dcc94da1559b360994e45d7cefec9bbb06c77dcf5ff23166edb0d6057d6492124c89fbc0c73f1a1b37c0b7ff7ca5cf60bdb1fbc33b059503eabecfe96b26f136cc916e9f80c55a15e8aa6feb891b52f023d20fa9ae67887cb1053035b71faabc111f6be11993d73dd11bba6f4b9a8ea6ee4bad88c6dc6685f2fe085ecbdbfabee0fcb6b2498041c52e1c31fede53a45feb83121034ac93148b4dd5ae267ab7c9ee7eb4fdbce77b3bfb0c268283f33ac66b2b8883e6a5764bba83cafe64f13d6c439bded033883ebc3d22cda65902a2f6966accc6086cbd62dcdf7252478dea650485169b4ca97fafa60881d9f06c7d07556d603ed21183a4a173cacc8c5b6c8467f90dc7d757330243f5f48ecf186fbd7e032408a0741d54d128e54bd03392c2d2f92878c295d27bd7235aaacca9dbb4a2de6b22ac96fabeda45dee59a2fcae641e021716f9f537232f02d517502f2d8244bb571fda5f061fde77408fa25a3b1ab23fa6dbb8a0138d43a0e4770e7001ad3ea95fcda89192819d754601f15c078a3e1601d2b05e0426ec1acd68b814a636491a198e2250a81621dab47bd55e6f9c358496ba4f47467d3d248891aea530ec884b0a8aa505944be27b6ac8e83b004991869d3bfb7f29145928372d9ea118dd5dd7956843355c023493090b028c1d1b36070832304a858312db4426cdd768fe21cc0a85c521a74b137d7a472fd6fd9347033c252a0e284839e50033bbf453db7de01451e1d9b12936ad25cdaebcd97bd21652a399bdff36e316cbc24edf7a513b684def4b15a19150e665e6211adf8090a0df417b3aaecc8d719b3d8e4cabf50d133dfea8f2391bb487ea8978a2d4ac56e8563b7247526ed566710ad26879599a37ea687112d78eea61dede4ebbed5fe263312cabe561400de18051853edf5250a6c60a28328a05edba1cd8ee668cbd1bff99d26ada14634880f69e92a9373c22793cd51821224bfbb614da9310930d1704e799f74bed8e7972b4d71d33b5b687da8b0eb5a27928c4542d7f64e5c693fd259c291d03c8bfef55aa77fd64a0253aeddb8612b677af5a7b840c1c173f93fff108b2c4c2855991e15604082eee30a07276120a92869f2302215a36ae4e7a355edf1d353b79eb47d665effe82754939a8b6fe5649b3c382b98e189af6bb580c2b2e7ddfedcbbbc605292565cfd7f7f568621589629b17e94bffd86efaf25f9d36aedfe04fe5f6f58e6b0e7112e28abbe2f275931eb554bd2440babfe7bf01a79cad2d4c8bb06850d672e3e0cd4eb461f3cb8bfde9594523f761629a8e56ffd49db8a38f9d51b9a2b64d19f611391460f21bb1ff35669f3886fbdcaa04c179ccbc490156db7056ac467d1382b3de4f14031dfbb279182fe5561f8ab84e5b81116e5945338d990659484611437e8b6ddf3788804a43d7151562079904e000f7a256c87b7eb6e676bc1c82ce7c4fd79be73789beaee9205f305650454c711a98f1bd938ace5574f5c7d3cd9d5a9b17296eb365b160759b84a12dc8e6916ed81f82fde4aacb71e366faf3f9b9c663e29d3bbb3729769c0374ba5a87d55ca0e7f80f06f554bfadd0784674738c932f303d24afb161cf5294cb6fe5517659e1015c29bb7f5b3900e942aa3f9d6da5288f01c9607c6075e743cd538d1f0a6572b2b71a516fce6837878026ab6c7822f2a88508f05b3007fa8ee93614e360e27884098076760d8a66030e6b19af5bf012979dbbdb892e8ccec2d629a4e55c5d6d9f56ee5ccd6ebe66be9d5e0a964cf768f326879645a48f00b2eec4fc1ffcf725028919621437ccf6e13c093519f325c3aef4dc8e8c21475276d3e2f8b532919ae490a1f1936e67d769f1dfa2294ba71e926629b7319509c70c6b974b2039a65187a1a7eff4f0e1c616abc918622b5d5051a2c753730255e0056d636c51ec9e81dfb8ffc7bc4471b69c99798582d38406464c09932a9e3f438782c32501c99ed9f5a70aab288f1883575368e48b469cfc184ef98bf5ffb01aec340961bac58a42172ffc5f4641c00957ae95bb7f56d06d20cb87447d3124842fe6d7706acf1b656f3825f16baefa3475241ab47c8efafee74688079db32039865cd35f4f5f29761375279972e769c464720198a4b927cd1b7cf0facd319c0d9baf29941ffd8227a452da9e403f0b0f56d93abc8ca89117b776dc81188248940ee8729c77e428d585b60d5f33e6b6fb578f1d7217af9abf881fba6e67485e6f67dac2224fce2ab87c78b9a6bdbfe218bd9561f96b5fd901595e0a72789019517a417f46838cdaf3ab4786a67465b461bcd28daee66c6a4ab7b6c37c73b4e85cac0cbfab7428377762c7771b1e59664112a2aa901739e151fd6a04a75fb6935197f56abf6b1b1860b75f9a869ae78cd8d5de6ad22d72625fd61c79ccfdb30b3ebe8516db2474c16a689c8fd796c4eca92f269697bc9346dc88579b8b85e821adcc169574dac6b23ac67d972ea6674f4a37a23a9149e629d7b37056040ed855b109d92d5c8a9ac15533f9e4ade89ef90ee716eb0e82acd519bf93fec81f5368aafbbd753e2052c6ef4f6fba513e695863a6c179a59448a1f9b36953bbdbd50bea202273c31437ceced609e609cc9c6adf4fda5592f3d2af025ffa17e9594cab9e177b6a80f6aca7c1fb34665a1e2aca61365310d7ce57f482ae1eb83ddd70eb92ce843796303bbfc4c21826e4417a2e00e63e05f465876a74a214ed67d032ae3cc5b506bbb9bdf873dfd2fc4cd6676ce9323bc4bfa13401c911014cc15a0e9e1a4e3c5a8b77fb64f059702b20b5a4edb2a789703ee21946890b87d855f81e9146aae831c7357ef2674bb71cf5ff33d38e4fc07eea4c2b2e94334288467c4d4d912c2d8e0c6b7ab5714e1baba182394aea7c0befd3ed36913da7ec0aca4d94c8eaae29b9437f83ccfe2709bfa14eed124ffcfd83906ce6ca37b6f477affd79f82a3ec75d31dfbcd8b6a447fb154d0710e0cbb94dc4d7f5fd96f16a2e8f7b5df221a9497bfb31269a56c8e9e94dffe9a5cad931a53615ea15db941dc12e756f82c6c8e41bec3d571a6e1c17f4332ead7b976aa5aefca2006aa800a240691f65b7bfa7970e712ef66e47e0e4c40c5e715e3c6c6eed387f429d36d243239bdbe8c6fd1f30ae92a9dffb7f3ed4dc8e8a9688e21f8982f624bad2c545a787e59a2ee432821722755405429c029f057ed4da1a9146050b404bc5cb4e8984c346ccc0431659b3542371d7a25ec0c93600cab8b396042769dae41f28fe51be1c2176cb46f9069ef06cfb8430e48afdcb1939a5729ab45173a06acd7dadffac5dd57ab5797ee7220863548300fb6eddef9ce39c6711f4803a0efd4cfde7c7e5683d646052859b87a116845f2f67ba9eba22e6cb3512481d1012a058248b7c91d00de886db91d11ca63b016249e81fd687f8168a5b3adc830e55d9da101e8e3e71668d0c03ac82679f9915a9157b05102d2af9c9f9e1eb91bf6eecde25cf3672689e21b2825a1bd9b5941cca3de59a74fd8bcea2e28aad84e3e542c9c321fa40179862bc1ec0f8f65ffe0852ef3f4c0ab3753c59c3f618f358a7f8824791bc9fb99dae69c907c87092ae4e490a339a7150319bfbce11e9ae5306030c2b5ff7ed9ddf0c40de68320246d3dd305f503e7035b66d426f722592882e913b79aead031ad7051d309ef25f2fba4470e739c776bdc6ede4c18783ac0ea95f470f34fb74fc110cff99e168f972f8fe188e2838bfdfe1c13c7e86bcf7143cf18c2223557983471811ef98fafd0fb124f4ff4f3473e9329a9be2651a3addf2e21faf60dbc524f6f9141bb84145d1d76ae8c5cc81be2be3468abdd3095d80cc8e9c7601e247b4f9f3d46567f58ef7221d9747365ee6721fae4fb854fe23045f07f1e31f13ea9a84a8b761d2bdaa8c66633042650c645498b58f7b239d86650a16b1d408fac02ae13df8be77f7873e0a115fab6c50599532187bf9333691ee7ab36a019d55042bd8edf9cbc9690d243a5f9249fbdc626870fec803aeb5f8c0a194923e51028e5a3ce02d5f8d6700e45f89740bbe14096f47958cb7efcf064b9d5de55e373a130f7c0a2a79761b11403986d4d8f936a41c46275308c287165e461b60b26ac4001b43957f67e4cef11d1f2fe1f592bce2688a6808e781adbc59e41946a30a933df4dea7b1379f46a86eed0561f78ee79cbfbceaf34dc48c285c5dcd6cb114bb89441e9ffeb663e0ea97f8269134bca4d4a551b6f49611b672f0c203fb852973333f60f5e91cd72f5b027fd1166cbfb205fe066f8adca624ee21281f2f1e7812c39e2732bcdfde2766541ffe31e8f1483f06e433a9122d3adebedcab29bc4fd5727d01a9e9bae7f9f31d0019819de5fa10a667331fe3a15a304f0f6d2ba93fa03ce33a82c3508cd8c395c7f2dddfd0865277a67c6553edbbd0907c80298ee980a596e8d013402f8fb250954eb2c684fe2381ffd514254f226d2690d751da7fa1d64fe4625c843d6635465b2ffe430183d619e7a620d8987ebf812592cfc9c2f4655d865436f8d456271d9f033ef70f919a98550ebd93e8b8c048db7050481062d6419188e764d932a764b8a5d075f1b1605d15b4c0b9fdc6b122ca67f09033e48e0fda01476929339c62ac133f298588f15267b5785a417b465b7e6b8804b0930544750d3814a41d75342f34e9e52ae8e6ad243b1e84e105eabca90cbbab5e740bf1b165f8c81103854586d3b00f3431039ca9812524c00ad7611494cee5fcc8fd20ae568f3045fbf42677c92018375c614420d228c71e8ba036ec004ef6db31092db85d8fe5570f4b7161886d25c162969c3bcd0e709eefdb2c199976671f55b2b4c31177b9b00e3ca0307394fd0907f9d5d37882a141d7c839ef4f88c1a214018c40fb97b0c1cb98b743bf3bc3460d7196f11aaf48b4d77b8df25a040dc030cc7f3b804564ab3e1234796a2b674e178eca5d60f2ccae090a48d4789042d5f4261941bf840d1debabd205fc737233f1dd3ce500ce57a23541e80d991e0525b16350fd9e15655f96fdc7dce833d6a794047b3cd17bd6bfd55af34b737ea1cf3fababa629d529124283a7bdaf333a451bedb5a2644536f698d846586946f41428bfb1a8344d808d8ad336246e07cba3198dbbe8bd4486fd0515633644c6c4a7fe187df316cf9e185f121661b4d0193e36324e27fa5b59a0556b6cc09f5a96aa18d651cd4f8e7eb3b9f6c8b5a83116c1a1538dde6827ab8481648184ba642907d4f8631f0f43576ca0eb78bc2d5d4718b9ad3d95c6b5b605facb926601f7391188b75b5adaf0e5656ab8d7699f0884927f1ba3357dc453889c3805eed402b6b38aae53220ca3435b8ee299d73897ffffed0deb8801473bf992d4b019f698c811c24dce942bbcab169e1142c16d7829ede4dcf0d1c55ad43ad38d25b8fb38e34a2313f01462199c5640711957647c086874f065967968580ea22f6528496ed65fa556eced1f9cc20f32ad6c0e3250f31ca29c9e6a0a6dd4d1f100ca03c70f147d47e134f09976ecf40f609ee2d360956bbac78a7a75d8ae934fe881bf47964a46455a757cfe8224f202caaf47aa6a64690eac66c89b9a57c36ee6b62063c618473d860f57ec16746cd927553ebdb5ccf192e3a3377101321a88ebb3f1771ed512f9f522735d52af9354f153a625d45d0880bd12b788dcf250e455c30988a74017091cd2065bbbe663a9bea3d26f1be8b2bfea1f67940a49ef5c528aef24c435630e178c7884625b36cfeef5936a2a4c011daa055be4b1c5a864966a81a593eba1f1e0b9a1ef88c9a7625d2695f801c9a17337069cc2c44776b4f052ee098089778fd6efb75d2983789edc332626d61dcafac8c4816ea71da347b66ca51a0105465ac79962b1e6e36baede0e3f02cfe0e4f4d7a2835f40b7537fe6d45a5997c03f124b9cd9f736deed9d7093c57cefc44ae7585df615068f1e11b9ccb3b6c5bad65e80568d78c3f65dc847369e7ddfc35c08252ba509f5d224fd952d6a97fb335727857293083004406eaa926e79601c9408530cd6428ca4d681fa4c2e7ae49c4eed5b189d4b686122bb7e2404e0d7ccbb691f2c07a2bd216fccedfc4dd2b036971ef051b453dee4bded6bb52e6a3d041415ade7b26418f77a8dda9df9ab7b65fcc0802288d693c20c6ccd9a444941b41cc861c00f3f29d5915b6ec679f96adaeb846b0d8eefd868f23d3fd12dfd8e170b21b56b6b092979588c583e8a1d8c33d06e470e2169da58914272182d30281c7bd19738011deb7a6e52d65cff30794707daca07a566736d70ac5b8841183678bf0bc76433423c5bf5fdc520533bd26d93bfc179355f6f4bbc1ff30830f2b8301861d99aaf426a62a778f42275195540975e3442af467fb5e1b2cb0492f36228c444830eae791959ca109c2a3f510fe13c92929ec62dc1ee177b9c22cf8f55972af31d1f1f04c5f8d009ebee1b41240e0ebfa83e4599028e32ccb40412d6514c6505c1ea42ebad923b9a048714f3949805f73a827d05bf9f12ab92dbc33b9659e1b0c3ff25798955203a360c2681e194ffed29988b8a60fffcd3a850d359e34c34bb6395bd01b4227cb106b21d6d628b2cb7bdd880ccebe72b6eac166511fb939c96f369577652f382339ff1de6d4cc0c44618e8a223d4fd8d94a26695198c00ab965f132d882f79652c30675e43b2fe3e145bd9fa572df297a2f0b73bcfe44a3de54b2b942425f4e2acab7fa2b8a7ea0e5ad053b363a97437d419c6c0f5ba0e205b4ebcf50953199b492c158f3d684f42de8c583eae261d6b5cc2264918071189bfd6f032d89d08a4cd37f03550780620256a6ad765b3cdedb54e61c57ba854a4d3452b60bfc508e4e48b1f014f92fd4eea013b533c812cdedd764cf2238697c690e66e56b67e477525e68c318e10406f802018a6ebbaa882d5a5cda2da74730ca9584f36f13ff954bf9c4fb3fc38fb60b46898119e213594d0c3eda4cdfde577e441a61523259a969bf9f3bed2da78f613702c6545a52ab85a3305b2994902a3a6e85c58ccfe58f94f6d6cd0dac83e5e5960f81f712f1a2463ca886ec2ca6bee6629d7416a945e87dbf7ade2374e33795db35f2c3a30589437c739bc61cc355c46a8c99e512d916117c40ea1593b70fa2cc1d4a42aa088818b86345bc143e44db7e27aee16ae9799badb567e0ddeb2d21a0f9adab4336fd3f310c529d8317394407e259ed214b90153728914e22bec249e15674831a3dd06b6e8afa559b22805cb92ac6f192b2cf03e4cc25e0fdc09b762a951e9115a3244b46e576dcc45e64908941f7a79ec0099cc38f0fdc49ea41c1b6498d93fa4146a6248309f1d18c731856381b578a4b21f3e0b0f317efdf8159f16f0838cf69ca06cee748d721a85cf66e715fa9d40f4c47cc1df145b8a54368cb2fca042f92103745545549963a4552f09d7628862431478db1b4f95fe4ccd4cc6e2e9d4068d38b8aa3dc4a53baf6c45953e76bb6b26803a1b5367b2032fc5797c901d38c1a2ec1fb6b7e2a78a27e557cb90ecb746a4f6c7d6a09d0b27b9e1ae1b905baefa87206559b3fa05e666efe59c7f8bef53f984fd438a239477e89100c6be3f7e19b623ae1347a3f6aca81fa9100ca2b8cf47db98c5dac13fbb6abf508ff83bda563a5ba2fe930825426e1669b8a682a3626edd3e1e370093642da44fc0226999e62ef427f9ac48b314b781e36c03aca57df6f82c5132b85b354c80ca2573428b772ea9cba95e12069ae21350d7dfbd283168d3ca79b73cef604d76976646f1cd4d1725c1bcd11a809171ebe5a87cb4cb998f38789a2bf0c3c32ea95b3af85a019a1e6c6b40ac5367d6e8c439bfccb71437d19e7baa0208e1ca3517ee3919bd7895bfc0cecdf52359824ecf4158837628aa4f94ec656fb273d5c46b1ef69df44f6e8ba08f6a12ed8c32feeeb8a7674e3ba43b8b4b589dee407946858b0bda689edddbd8343b293860855447226df6e34f4f7f40843f174a4392b338469a31a06ccc9af5b42f62e564501ce951e28521eaa5c85b17003dc551db2631f3e8f13626cd091e5ba3c31be2c67f5b94acf33c0fe3a6316395a94e1f7f122ad9d31bcc601e6a4cd7921ab35972f5287a1e9e79e0e9c785f0b5e704893045122cfa32551a7aad97a790640ca2ba5e017277337903032410194f1fd16b074c2fed3fcc6746b7c3bde4081d47c04a9c0a073da1cd1a96b7e5ee3a0cc36709f922d10251f3b60d213e6f3c812f3cc3ee59ea5e561156a468ec83d5b77de21f9f077c2daddf13768e30020422a3e74278f86274b63c9b022920e772209afb72a5d052d01b81f9be0e12c8dceee0f6a169ecce6b8d122b7f63b77b1eab0faca2b0edf55b6bf35e2710aca28b3457ba35c1fbdb502da579d08a9d6fb39913be76825f2bf78381dba5522e5d9749dfc55560118971c12d277d746a5203193f81e945927ba03d12c5effa23021a6c412e27aebe4d4c771cbbc5e75a349fd63e09c5709d28cddaf8513f080a0c5a364384fbe110be0acefdb8ae19d0d1b639860fe80a198dded2db7dd4f6701c428541ddfdd561fb17adc63ffe937493255bc4a35616989fb0460a97829680f25667d287abc941c5b1169d2fbaa4a9c0fa6486ea0f1db1422cd3c7de99edbc6c94bd366bd099bd2143744c1f7e37eba614e6d274e29a8cf418f89e44b180a4c1c78d38248ba09233f8f3bc9cf4ea49b9fe03eb78e148e4a4a75605c43f0c4c8497dad3218d4a12fe77df2fc38e6c5231385e6849b8df3c8b1faa4212c2858dd041420498a1d83f10223c0afde65059072ad2042cccfad0c16128da5904b882b61132eda1a60455748fde4f981a93431af8b123219a357c85e2045dbf35c4685812913002f92612461c8ef6ce8042775223d8893cebfec201413037d8e4835d3d3abd120dd69e274563ff9bcd6026e3961a003d65e73d81a5cedbdfb22be0e567bc9e0ebcc3bafccb6ec3e8eb5a7d9c95a2d7c8709f4f193abff73846e46112d6027d5d7618add556950841fcd7bfc2b8d9bb0715d9fd5d9edd2bad4ae80c7251b924f65b17dccc81e6561ef470ece912b72b16d101e60236f5812fd849fb471b4f685fc62ea74be9e28c594523d37644fa1beed4679f77bba91869753c4545f0260c5dddb8154e0a81136533d7b9bf0be612e0e74a26f71d5e73305a7712dfd910d7ddc21030276e8554e4a9f1ab4ad3dc6aab846325d1dcb5619b02605f5b77dcb10b329f2b71a9be851a20caee9f4e300a665c4a4a24ff816732edecc912dca42c3363b006182841f1e2f502d4fd394570776bc8c9a03d3babfaa73b9d39be8c191e2e5a432eb58d80f010191069ad081f37e86b394a34c39716c70b553b794016dcbf8e53090c5d768fee17e6212dae077ad436484f85fa03571bc7fe30cffa2e2384e8a21a14c3bda235dc84139e3f2a1c00f1668bf5264e3f2a00f040616fb065cacbd140c753dd63201da29365e14d944ca414cd8c39f197a4b6397a751a1a54b4486828756ca356bb949b40959f994d0d5bbd975dd595460d68786826215e21f5517d718ae8893fdbc03d1cf22856bd8b4ceaf10f2326bb6642dff31e77349cc54cdd76e6a8c91aadb566174536644979ae9dc27f4bdbbc3c71ed83e752b4f0ecbd3c2e734af36aeb818bc8918e7336584cff095ccc9f813a1ebb55afcb4817a6f33a1f011f133616abbff6d4c6b91be037f903e145fd538a256870ebae3a233966c892de369dd6bfe7a20d9a21c7964b74abdc430427ccaccf32b732951bff8865fed4625fee659f938933796e09c15bf43366e5dba3a46ac1bc7df7a949006159b2e354863dafb749cd22f61c5b501205f997e16966591f6f076d14264be373487f89cf90522ac8099806c10eac4a4c7a4a07963a459a3a6d5723b6ca842d3e0dfceb1d8a154f77743004a072c916cef838d0474550f8c05b5331cb1fb232eb2276ca95968a178cf7706001db5a3e0d8133ccd257b56fe608f895484837c4d39ac9825bc5093024308a9d0d6202922d46e9e96271cf58f18f89a3cd526a7f3e4386153c755026b565533bee115059a9a9c1512fc96b2a7914c9dfd28784062d3974b0d9c4634cae1f88dea03852f4667d49134e3926a358eb80f89cba6f82e445630f8a63e0cf036313ea5242542467202bdecfecb065314bf5db221d01662e3b38cd4a7cc6a2ecb0552beed13fdeaac76b63d468951f50f78aee918091030d0cfd4deb123a323ef8818b4a59e16abc47f005341097894b738c2af81153e7d77f36d4c79fedaf6a6c3aea1052b605b8e3b5e438665a9e15b4cb09064894625b28d4a44183a1e05e851cc1e187abc1f7959e02cbcacd391cb48330234030bca89f639139c0f6634f814036e18e19a68b5bdbe3e3a32bad19fa034966e3067bbdbc7031cae932923828bd9af9dc6f9ab539162f77dbd8637f66573b6960165b9fb9f8bff6855633d84eed8657b297ddd4e4ea0914b9a1c49f924eb953eb8dda7b2f9ce2dc36311514c2c5e7d7f182793ace51ef58f73fc5eb5229701ce72dba9f1afb754af0006fdea450d2a5f35013c7f089c088add6e4cf331f412cd5f0cf79911dda9d181ac4e47d148196dcf0ec55ed1a353b204f07a1635bfaa85d1dd231ce6d26c87152ceb6e2e16693e00991b51ef1b8e94c5768e09219892af4d85cc18fc9867c5fdc23d47606d52047a1b0d615941a1c6fc394de64cf9552f80ec9fd9e2d3231decebd73519e498348f72ea066a69e3dec12923c337cb52db1382b288e32d526c1cb3299a4bf7e3d88e3f1bbcd1b44f943aee40f7e0a6c33cc8e50620b8b455684794c9e87ecb7fa0cc4cd1d3c19ea9628562834d7aed82b75ecc25385e19b5b8cc70948f9ada618cefeff5c585350d26b5fc73a1fff1dc75a1225c0937565eef68de30fa4afe5a730d2aba2cfd905529cc7fdecaf7d7da81abea4755d2030b10a305c46b11cbbcfc98fa055053f0697e20f9a4292fca6d3e87d79e45087961941f43d38f28afa9dc07027b3dccdad68f7edfa2c1950691c56edfb5656f4ece3d3051088012f36075b406457d54497574c98f22fae8c3d0301c8f3e02fb6ea4eee7762491480266608b9b56f3b50ac9a951440942ce5689a8b047be69e21a6db2735fedb7b348365d78a6f43470e86c8d771c7bff874e2f92a11d6139b00ef92170511b5f656e058561540d80d1f1b62fc0ba54896c5f467bb92cbd901c28364df055ace330454cb192db3457b3835b3f5b7adf68eb4e4bbf5856f33a4407db9355f2289609998acb2447cb6aae4a01b04b07e346ac85843997010e4e218f16d2725aa5aa630dbfce2f48b4f17b97668b7a789fc44c84566683734aa9c8fb43df4da342406e4894c9736a9578a0af1b8c64c00619e6d8d42361f7287fa048018e6feae2366247aca42081cb43cb0c04f96d4a9883257a5e68a7ff39d6321d0f03d090e11f58ea2756dd8492c79127ff3859aaee5b087dff35e92bcfb169b65543b1ffa626edc0405b81c735e7bd5093b57161139c79e93e36744f5b90f0efd143da4ea905406729be20db023ef06fa0cd046f20a1b250fbed75096ac18ba532d3e3b4e3046f7ec6147c86926ef61dde9cd70e9c07894516d67a6268d3d5f0fa87b62ee2d472aed107efb73e6d7419022d536359ee6b7f9ea65637a4e73fd29f6d01d1ce1ab96fc940696963612f338d346b2e83f2bb9aafe0b9b88ffb1cbb8a2b414b172f7782f10397e6f8e82d9441d9e239118f8f22059fac69455ab5a08d0a8398bc3edf2e7b7a122ec66b112bceab15dfeb1970400523f0c92e7eb53fbf0a8d7db832af387cda46adf75746d325ffe882c6efb1712bba33c2fe63282e411aa7fec2a363c8acc297ffc770d21ebfed806389143d304f89e4d2cfa563f2fa3dd96111ef0d506a8c8ddc822a363ea4d59e69bb8883aafe0000c135776a702c376007533fea45650b7efcea3f0bd6c62b94ea310797a8d864fb432ac790c0108662f9239c6204c56d4580ac5b34f5a72354a93f8fc55323574b1fd0f2f81fdc97b39d2ae9ffafce11e4b0adc61e979dc38203a746fc01d160e62e855ff014cc4ad4625ed40e973d51e1e4c31f7c80376068e535bdd0bb72002cb6e62a18ce0c8b1b1691a4ba86019f3fe160145c26e74969feb358f6c68150b2d3364338f2eee343726c1e7f823953bcc834d991d61bd0aee33eb8c55fc6f8316120b4603dea6420c80a2257aab885b256a3d212923132490fe8ffd08b1f21a064d277cc126e4906b39be904a979feec058ee3b643a8b3d5121387cf6dbec99a7dd8bfd05330669fba0123eeaf0696cf9e2c6515f4b8fc9e86a64b8c727cc0a4e029cf613090f5e31bb138d8d36f41eb123168dd0dd53ffb60a040818cd98009809514ab7f56e9a3287e20827642ff57ae59d729b992e0e5d61718ff5f0b1b46baa55dd3ef5b58d30b15b3b4b0e83f5ebef92b0c2244e2dcbd1c12c0a9106a09e82e38c0422ee28fa8a4bed46148a53b49dec91a4457fb4e8b8826230b1f7e20963470ffe9de7fec18891ca1a4aee38d14ff529492af5820e3b918c4c9ea3135d8853eca47425503016b344f8fe008a4e720e9a6cbd12c8c407980216385ffe95e263f21183814554201ca7d7c12164009219152381c6c01cf0384883c8081b3f4c1ae21719a6493e161e5c1a9bdc8604be1db0d75b98c52cc16afea166db5f16756a23e8569fc7f12426e52bcc0714bc1ceb3d2ae806d6b9ad07a4693c866d373831c983285fd611c40449409c2059c05a2a4bfab574018ff8ed0d8eeb6644427e1301671434dec580be33a5f527b4b630d6635e627f1e6dc315165f5f3ed9bc8d6820f974a98cd59d2d5fc8c03a3f13b73de818d47deb11fbdcbc8e8cdc7cc0882a0391df28d77205d78707435d6e665b4008d6559038e4c0c3f9534e47157d4dc4eb9335f7f85250822b1839bc36d3ae5ef70034e7cbbf22eb8b7947b664b46a3c9927dd3acb388a40a9ea96c3272c032f69ce3e62a9541d30da105706ae63b4775315044f91edc7ec07bba78ab44badc8c14980f455efa792baefa8b518d5fcfc312c6f08eafd1315bfea111082cdddac6a0a3745e2601b0bf8889f15e708f12b5412d7b54eec57f75f24cb65db656a14db00c80f586d3dbeccb264275a57d165453b2d75d5f886adec1e4d3a25e4492f32dd43ad7a2c4e61bbee08d6ea965d916ac7e7fb497cd91b9aba015fca2f3da13437575e5062266b48c3c120f750c33949bacf418135e1ac4af32fe0b71a0ca33d82adc90bf783091a49aeb61c8f1c8de1837d8a99a1089a65de758919ae66ec280bfd2c1e4ca83ac82b1b6ea845283470f0f6817e54915c005ba1619f23485d81ffd5e5033b81b9bd2d41fb7e4d068ddce7029df7099d90a59cffbe88c86204f5d76c0b69c8a8b4a7b2a8d8250857ce53fe6802b2cf1c15fc96b60ff71e48c6277aa5f8b0250718a2b317c7a779f7524b3a5c010a0b8bd3739a194e79356653a9cc23905ebdf55dcf3a91d6faa5bfefe0e7ceff279fb997ad36cef51aee8c085b6dd228c4a6eb11c6c4b96713da5cc427a9ca4670d7e66b77e53cae004355b716e27e16191f8cd31bfba346ab0b0c251f3e3067cb23e84e045d981f8cfd9d85c339358130d3e1c95bd5e3204696dd0d2ff1502924d96a462c5f980b9995ae23225038c1e17c632a77e68b0f8a59ef50625f9244e6937090ff466a3c2a26295c05843d985b2c584af30535862e49a954c9b6c6290c4d0e159704e268b3a2ea8f829fbd67076e9ec0afe94ff15be6ce0cd8894117a4f4b19c295f5ac059dd2a9604a6c182c4260ac665777bcf60b69306a1074e58e563d7ad5a06c0145f2a965cae2dc6dfbaf33ad3543dcbb962dfdc19b8f76cce476c406a71f8e84a73d99574d73742678f8377b89d44f8169c6faa004020293e3ec25c04f0f6d918a23660c95b76cb93bf2c6df7fc71ce3ebf2cbd100e4526cea1a983ac5683615ddd4362e8f05800f1deef04875f42a064fdef3cdaed48a6aa991e2e6177d55695aada6970c551c6150149021f409182253902b2b70559488e3293822633b2eb5f8222e3e89a993c29a80b3831f5f9022b796a26d844a5781993bffb3bf8ce856d6b0aa17a43e3bb16e9cf52fa03ad9478b764af8e8e25abb6e84f54bd7f370a0eb1b5513bbc69fca95fae4885cc9d67af0b9dc9bbce8e4ea604eb0975b42b1065f1b80b1d233cb83d1143dc0d64a9a87aabb270ae792afe23eef78edc990936a2a2619c052173a1412b273a0a118922dad682fb10d6ec684b2c66f95953e6cd4abaa616b56678051a2d082d9bb660d6c3c563ad78b5da90907841cf3ad12764f43c269f4643c5394792fbd2c3ffd4aaedf9f3fe977ebb12da08f1e77346cb38cfd5b09b8a19ce42a70c9268a810d21b5b86493af920e884780f6354ac4f30709d470407a27d31c10c6f53d42436e84ed167f03a38abf47095732442fcbce9fd14898f9813fce980d8c5c306be63f559fcc6fded852f9463031fc140925683371dbb03b3e3286824ed3f81aa2819267daf5dbe1a56da98931e1d02c562bc88ac8eee057817a5784f88b8cda08efe5e5439420ee2b5b04e43da88b746d46c7a4891050eddf6b05245a7095dab19943f0706916632434937d78da5b92a24cb33f307586d8fa40f6ef5dfbf17a482ba593cd0e199390f0dc59cfe6319463282f444c61024916c47da24394b6d54c93bdf4cef952359619204da9bfa05bd830e070b687e15e6c07a04642895bf05dd6205c72f3d61a8a5df0cbe819a965ba186c8fdd62bc6b2db42ce40233652d17aa284e7b156fb03d8c792502475e6172574265f8d0bcb93b87fd2a551009647ccfb11e1053b16f56737f244a5b0337fbe348d31dd7c896b5def02674f14de4b062841b576320d45188a61c452d806d40276b9fd00c02092c508892f41b5a7fbc584d41dc20ee2c25412be20a6611094101197f82aca02a83647fab376a1f063303d2f957b81c094adb94220fa6c14b59655e6b706f46e77e34550f752e93d0d485d15a4711cc0145e3b250bdcfae5ec435f2ae9161809669f34f83f4140a58517d0358f041594b2ddfa40805dfdb838ae449692279d059305619c9142724b5db3ed582da297c6bb31bce47bbb0e4dbc47fb26f0b691d784a3f6a22b3debc3b457b10701a7040f53bd6dcd516cba819491f23a101323a67228ed25a29264881068fb217a21e95a4a1744eba63d0cdffd28009c826eff3f575d1ca6774f658f19995f7c791c11f9ab750ce2b0d0014458341593370f2a2b977d6c93c8f30985f73f52c6193429e339dbf1bb4ea7a91dea866cb686a32aebaa958e142efda491865f56d6591b6c895d1d2b3fc09b90fdcb73ce3f8eacee9532322eb8a70a3eb8c9909f2a3fd839699d1a7b41e64cc757ac0e9f0a7fe12b2cb18dfe6e5d6f40a71082f6bb7a70e7b1073f3d7de32c5897fa364bf17f528d729addac481715c956745012ac641f5bb9f4daa113e2e19b57b4b84401c53cc0a49674f6864c8a8438baae83c707a5cbfb4d616155d9f46fcb8a4d8ce4d35e3e16a7266de2563f006fea0d54307d68396fc36778a8567fee189cda3b844c221c334713bab1504da80ae504e27a2483f3839bf8f258876afe30f532bc1d65a20ebcc7b3696a5ddd120a7a163c42e1a47b1acead64695a69e212bd4dd81b88bfec8aaee9a33087d939e65b426d668194993869b3398ada4f836f80ba0796bea958bec7f208fa4448c7307e1c2a1487bd2b2cc78c0c50e97344889c3264b90f8662176571dc275cf0d3f4a745a3a21e765aa4745582fbcf66059fdf897ea1183057a611fc026366586ebba62faa6931dad823a08d83738ef210f326c1fd2ae8652416351c0c165133b541d3833f2744216ab443cf27f6c9dddd55970bb9b10ea37aaa502b7ff4eec5b687ce202993022b87809441bd4e6341824b33943e24d166df9262a4feea6bcbf97f05ad904623afefad9fdfc0ffe5da0666077ee355e880937ea2b98bec2126a4596c0ce1662dd99bb1436f374721d9ab8756b6abb6c7c51063ce8be65d74b11f8850a5291bb1a8cff32676253077846367c821648d050730a2a930813f4c5da302a5eee12830ec8eaa60e0edbf101b2684225eb84817991d8980844ad73187dd00435584ee17f020721108e02c290d7007e5a807dcec65fbcc12ebaecba3f8c164128bb411d2258b8cfbcd7ebc37d00d0391727ee644aaf875e0c703d5498c98ecce2222470005d42930f9c5982642489a24fe2f4dfe752d8daed2e81fd00c7372f16fe613732cbd48f8a57afde61b239463c0892349ae482c1ffee9268216948c5edd941474a496e32f71c555d6faffb8266b3f0fe9a3c21a148a0ae324871cc4273d9bbf991867b16353735267cb1d29623480c6a070e09f7cdba1c45fd9ecb114807bf28feb4b8d9f32f56c8a744fd905443a8bb71f3ff24e289ecf43b111dc9d49bd6e1517b5653ce4d9f388f7b7d6b34938e4050bbaecede8fc3c940cad17f94826750efe2c802c0e904d1505c1b1f8986ef1b08a50ab2938c22d37245e5d2f530eae96df2b87e3ea1657d6adf1c6dacabd6b323a9308b4527bc88395ae2478fe12ae05f440c373d2589872c4acd9c269fca8b938f5f8c33a2933ca3354b31b32650badd66977022ff5ffd2fd975295089a40f8a4ef7e6c9b348f038a1dd8a3ef4b496e1385d4c929e2c9143d2b5c0516235d1e4c34ed35d1c2ae8281d63a3b6b882a15d8ea297b605fbd66a4f8ac0ff65fc10699b38953d4fba1f4c673ba99197fdd18d7b0b6844cb354ce506b463070a8e2940e7b6ef47e769768730e5e0d5cec7441ff79a4906aeb33fc2853282ef0f0a16f100b357f9c48518bbb2f5bee26ce1646d183c2d17239bf6f324858e208f33f01a646644389ad5216713901ffc83b88fc3c20942119752809c2fdc89f4f9cfc3ba3b7df22ed54064061626ca4954e53139b3d4ab91b09dd119539625e2e0bf6eed879d4c661cac3eb1107137745e113209636f3eea22490cc0fb4fbf09fccffc09af46a1ac091a2c7f0e07f0af67733e47650a2c70eeb18bf80a116efbdcdd966cb0682e1205767f7563db8952b3b5e016655e9e1c927b405af3ebb9df56d6bf7710e3cfd4681bf629602b3fceb5516efedefd208efc761e3d8be4d72cabd0062299469804fffbd65ca213d5f9cffdc3ab18b960b64b895dfa29ad515ddc7fd6b591f3dd0fdfbd311b617244306c649abee03849582b56214232156ee4ea211a4ce2be192af2a564083a6ee2f715bc67b67916bb64c1ed2be8f4bfc710ae8257b0c4655ed25cdade107a431ef5b914247b0e46a155d522e9cd8d7cc5632c281b94cdeb2771a1553c99baff632ec8ff66e722c298d38cffe8171ea3eb6536ce92b12f5cf2f2ee4e77b5c8288ed04c61d5927232887bbd5c2e1430b6a4ecd3b7289d9a782eced7b6a87c4c0888e1d47513db316ac92afe8c96ee44b2275292a1588348be8ca36d962d0bb19e0877bf89a09f88c33252d265caa94b03055ce65bbe22e4e8e410dfe576d63d6d067f9ea6ed5ae47de8194126513040b5bffe402201f778bf6c7df38803898cceef9d879597f159870e5dd9f7afc619d23c706cbe427fe65fa7270f6a47c7a6dbb7e1ff2d4147fde76b2fb5f00df3d1ff1ee193ede335731b23e2e7adedeb7d15d7a723660cb9905f46bedab962a023d84418c375998231bf86996b57e7fa120fe87cbea48225de72d2fc9e2218126a17fbc1f6799b4810f47830edfc9dec108f8bc73ead86d07a5597466246012a4839cdf81db80d23c75f09bbb062e77c42f63ef3cc0ca2931b527a78e8b7df434d495d40d5b205c65841b7f4e0e0b12b781c9bae2c4f954db399f765620f7b61676cdf80ddbe6098ec07aa3f1850a2214f5c0e1d429bde9859e75959100975eca71ab040dbecb0af4b69e30d2feb0b0fd0c63dc6888d6470b55c470962664cca4934f596479e240a800f8c70d2aedebf55fc74403625a4c3b2eb45fecd0b9accb673e02c8673c0cc4f507d9ff4eb586e8bc579854e5157d4fe914f3a541c2c8184643d085beae72e8c60a1f2e1e20b206c52c92987fb87b579d07020f767bcdeff62dff476332b9c87d2465dee89efb0c0cb8ab3889d3109ac38d1bb742ba1a54bd22322fe444229c56f0b1861358f7227e4ef123c549fb08ef449728e41b75e2f03169203d7e0dc4ad826f489fd0446441c2fc7e38a8ce5e6cc00c4a64b3cf22927f9a27598f4b1d6b80b593858a48c0777d134aabbd6d3022239132e7453a8b1ded8c5ba6722b41ae3f292cb0d5dbc094cf5abf0c475f7b85d038d6da95adc838bb18de87094d566de96edffe06f825400b1739b1bd4ed25bea666505d6170616ac5d41e434e891c3f3ef1b520e2a12064485ea47cfc4439e4eda737b247ea7886283d7fd8b1da1733db7e15a842dc735139ad45815bf4a24bbc57cda2937a1dbc07ec090179634b05b69d6d2530e492dece8c1ce9292d622d85f93226b6d8c5d8ad3aabcea6f18e1cf90ab5aa647c093ff8ab2b9952f58ecfe589347945e31b00e75d330b6c742b95ac718ddceb33d8f0d7a4da7bdb27ff992a1de86dc7ca14a81ca304e4c126e289f5507537e57322d9d86de7b92f7a19a325c27c31e20a21191d72b3691b03eb1b3ab4a596f31233464094bd03e1f30e330b7244fdacd11c94321737b6b73b65d7099380a12a4002b57989187c1002808472bb9de47ecc72aa3521e777d12f93902d4eaf8aa943f85d14bece3cd5a034e8337175677a64778974b58cac84b3c5fb27ea64608f05a190340ac80172de5f562216014119d29709b88d47adad9fe0ecdac4bf1325e514479af017b779da42a5a30d1f8c447905db02f09ecfd3775e0a40ee947ff69a1ac06b6d7ac665c10313d6fd4ff0b7ce7b05ce90f92cf34f73afd7af902623d20f1a461ed168bb3917aea1d2cf682674aab420c77bc8bd6f3334702c9b20d3be0f6496fdb464f691b95f44d2262b41c4721b936d9b516daa0b059eb3e81adcd6423a3264fd53beba642c51fb8102b61d9f58e1f170f0f560a51d33c221fe8b3258edb3c5e1a9925af6f108c714d880acb46c33bd4619bd7eda507ae76a77bef0976ea5aeff8cfc3910b62d72562da7a76c6a87dc544d2bba4b6f91a3c3277039429a504b9fc191902fdc0bf216130b519749219168be4a9b54e5d193a70357638281356f1eef2b7f0ba039116679133a862893bd1dd1ce6cb40582cd4a177c656a035b92e09a7ebddf52d87dbe0696b11b1e5a7be6a16602d005b0bd45b94fd254e24145b2486c66b172db1c702b593bcd60afa261773e842238263ff9c127d037696cb48a2757e68f3b7c34d8295c826a341e3bb3032e99a85b816d433b480502b5e9e358b09151f4a428ba0f3d13fd7124049ca5d30ae95c4242481acd0dcad2374bd7b3abb2c7bb64379355520d805edb9c9f7a2bf2264d6482431a7884463b702ce805cd547e07d871a565db79e073a1e606caf51c84a5bc10d66bb29bd138116a74c960ba1256660673d17884586aca26bf181474117dd3aa6f0cbbcda5a46b0e826f079671afb00e6518dada0bd2f788f8a27adfea893facefc11d3f093a9265fc8ec71318faaed53c50d8ac38f1358eba6422e13556acb21c5bf70b6ee8596b845049ab8e051405ce249e7ff29901e0c8bb66ae40527743e296fdda7056f30b8056ae53cde5988d9b26bde2b4416c709d56102807f142fd273ebaa579c2abb9713cd8a9171ac58845ff5ea2526fab2e1da8996e987ad96313be9247f464512c11ce9be5ae269c235b2c365087afe411dddca2be623d289b6c18a5853678fc5fe70f24cb634ce848761e924ea9ca2642f2f2eb774428ba6d2eb46ab677665d99e3486de7d2306c520fc941f17c9d309bfc6a7fbd0a6eb77fb084f714fa107c2892f246f8c35d3c6cfb589f6724a154581b31a1d672d83b0eeb1e1aa92efc726e8d0de0509af4a0a71cac302d7b9d711b24cc1086150f5e7f5cf3889b9dd328c4398b7d525e46d2b33791129a5500c6399bc88def397131952dca129eaf6a51fd0b857837efacb27a3261929445ce19d9b79878a5b584040c616d60fe6a567d9d537245e4e6a254efedb68d876382766d91c081cd70b09f9ecdc2c04da3070f5c18fcbba4bfc03558be491edb01fc35a0fcc854b5c41009b06ef5ef548f0b24eed797e87d61e0ff3608ef977b17725a4d753acddce21977c7117767f35ad197ab7a7ca47bb008b0fd61cda899b2166d197e937d85dd5f4ab2b148d425027cc119a3abd31e71e3b89323ffa8ed505c9f6f0ddb9dab9ea2b42735771df322968044367d12c3b20ad2eb756bb9face1a3e4c4e00e17098bbd95e606e8f52bea74b995bae091d796c6a7f16fffd2b34e6b0aea60ca36fc96579d29cfd4b76ce6eb50cccad770a3bc4681d3907ea1a6a7230c06091bf0c852071ebcdfcdce2b72551ac19ebf2d69364a864ee02e2304d9f1da13478db0218504653992062fa670e4ed94bb650d02fd884c5b51d0a6cde953b96ea6cf3eae18127875698fa4609188b361a93184c73407e5544ec58e2665de58af3547ff189794fbbf285e66b77009f91f8984e179ab0f4345e159e4470806f1e0bcb35e1881afdb552997b92a31a08f3ad5adf946ba29387ac2c24a23ee427508052576591e609f056e8881a229e4f7863f3ac50973b1d186f904c52aed5d83bc5e79f4ccf5d3208df4f08b1df7738a22b5ffa4bd414902dd6163072a8ec224e5d0d35e270b4d68b4a7c21fbc1a54c0cc6b6847fc62dfcdf60bb3b119b3b793644b586132761079b6962be4e737c466efd4b5837aefe9585f5ce9ea8fe88e1cc8e7687ea2c4a682cc8e7e414a60e1b2050a833cba38dcb084106d0f8e8828488fbf667a078fc97220878293e187d780061c84559e1d2edd8fc9936a25a65abbd1f73f6bdb61ce0e414544eb7191d28d5161c2eb9e6d60ed76bda16442d5ac05c8f9bdd991c90f35bc157ed73c147c4620d81bc8a9a53521ae853e0da8c087ff29a43f2c5eb5c5a47429a406bc230e8c3e2c4099daae9230a4d89472b37b6dddb350c7983f506834ccdcc816d702d4e456f11792f941ad8757798f5b8c449e84f83f129e116e588f2a8a2e0d79e46286995d89d8b3307a078b4bdd94ac2d747fcaf9f168f47b18756d1b0966c727cda779d092cbb7919dfb02d83fe272b7124156078deaa6fbbe75ece1bf6c5dfcf54993c46ea3ed259b6a8e62e6d53c15daf0749839d7fd36f826693b6e5de8e0631bdf882e1c8ffc4746982522932cc52616c1377a0c7d9a086aa7b34cdea980a275b9d62a639a1afc876186c9d0cabf3fd8446933cdd8ea89f504bfe3c26727279ed83f4e4d7f2964f8cf3ddaba95f6cc891d3b0757c1701dbe399a3572cac4e8bd92eee7723b8578f6755c8eeca16179eaf97a104dc8a6954007370e5b50d98347fdd0c9fb96cf4a28da7dc47757807768031e96b5a05f37b9918ff99a9ddcd908b1ba605e2ed55219970a9f0e6ad5e07875fc243df4aa9aeba8574dc7b56ccc20e58a4478c558d63b2bfa74b7028ca207c4dec926706748851a964ac651b3431846e88ac2988ceda092ce3ffb3f2785844d5724b78bddae3cc88144f98f07acaae9dbca4ebcd9565226785f8bab1d3e88d559b5d7657326527e6de15fd7119137449e2efa1a0a421ed628126d65e2ffc567d1b34a5af01db5086450e0d8651e6d8e9dcfcbda4101e66f1eb70944b4444dbeb121eebfb439c1c4ffefd2a5de2040f33bbae4031d10069536612aa81a9e4d558a24b01437d07c7fc623895fb4c9573c91b407b542b5bc2bc61d9aa1f6db23a1e408bb1db1cf4097e7c2cfa2a6e80e85febe6250425ef35872e17176828ac876044eb7ea3fe27b1c07483be0ced97ac386d689a9044ba872bca4f217040fb870e87f9ec7ca232e56fb66a029a090726a19e80e83d4af19a9184a294c41a61855c849ecf037f4aa574bd070e9dd62e875ff35b44a8b946de41fa5ee134b0d014ffddb19ce2d6fe894104ae13d6721f4427807188ce4de010b0ed172b1ec4031d46d7470e5210eb52910a47fc50372c27b4b8ec71b4833ea28b57da9e0b7ead7b42bde64337619e4d5dc816f935892e7612381160660e8c932f6c474ad354287dcdc1ff641db76fd5fdc26725c248e0fa63b32731b5583a00ede25127658848a9d4ca79ce3ace34bd7a1a906056a9d6c91a95419d6d68bc55ed13c4cb9baeb69dd716d3300166c9ffa94ba375c5c79693cedaa1e5160dfd0ac1327b656303441fbd6dcfddc775a7d37522d230a077ac7033d2c8039555e9c10c06ce5fa6317f4df82c6213711d63862b2f78e9ad1b77b30692a4915ffadc0874555a094c8fa259eae1035ebf4f6f602a480986dac2726fef5efffee405a5de456abf1356cf265b50630b1e644387c6958ab50113f94a26531506c7ede22e8dd4a52f5b94da76535517c0633634da0b1579fa72b559e77b9500bd9db492bd7750c9df286b2a80f8890a7c617bd9dd092ca77b5a5e069cea1073a399ac5cf3c821c511b4f8db8acc0001d7a4669e50b433b963fcc1e9f5b76a76a96508b4801e11a4c13d2a6c6f881f06d5ae57136b1d581b72c83ece0f912a72ade3a0b584fb9a55cc8171684cc7277018cd191d2ba562f64071e49acaa326c77e95468bc5b98eac15ef42395e3452b4ff0163786dfe78f391032dea6d87a92f47d648800b63777a1cc262a5f709c513bdb0da738899cf2c62171450373a46fe2254f314e01a6fc9da9b78638946a1f6119449abcd664e0f83d9a2d97e9a55f8bae89e2143c1a5641277b9a6085e4960c9117d91429bd6e815fa422bb9a103528da50905a25345ae8d8a62e609002fc22e7a4451a064febd8e0bd39b8a46e8ae45810e27309c0cc704523182f3d471961accec97146c07f6cfd583f50832b334ead75a5dfbb271f796baae00de442580d90293b86747c2ed70bba8fe680cd3895e4ffe1f470d9ce02e8d79f61c98eba83a02e48b2d42002e65e890fbf4351e721b5eb770ce7efccb22b0917e79f9d2de2d5b07f26d2c9bc6fe768de2f7909b342b7c8ec052a74e57287c3a7117cb46e189ac0975c90bf6fc881f78e692ecee8f946fdd36a4c42bab9ffefa7a946a2a672227ec1257d47bc36213001db7462748eb0119b6fcdece261513c2f4f313184352bc05bb0c23b02cb1ff398cecf4f69823a076c68d92011a9750da5489678c92d5c49ceec5df0158eb3c785e429e234020ebbd425e1a65982795cb94ed99fe52cc39822863f96b4b87065202f1d20027d6aaaceacc08227c0326deb57f400166f2a9a79f441c1a57799f94ba0209b77e8467a3a2a7c87160f1f84b106ef978e6f3368391466a31e2aecaac118f38908b43cb90f0668ad2b92e87f29669e2e6732991e434c09c132787710af2c78ed7a5231d243f26a215f20288ffb11768c548047ba21ff4b1495d0ed603271b5c211710c081f9425c7668324e711b27d597570752316be3f67dd478509e3e95ed4881307ea04c39dde6f2f9a5e864625315f3e2acaa5ce86c83e7c440cdba61ad67e15fede2580220c682ef10be52a01323d20ec47e2c08db88cd9945334ac7b707b967b461d10703dc097222b115c718ba92af9c87074f530d3a7dfc6fcac7b9255b9f9851e267d9b723811626ff05ee51863ba9bb89a3256388910de807aaa8944d04097aeb48c1b405c77d355dbfcd55e4896ed65ba3006f54145b4fa6e103ae0fbde31765de30b36e0d299138e40a234d8668e5c48b02b238e6dbfb406e9074fa3389cbe416b0562c9162dc41e07f72f05cd7911a5dd0e22c3b345b3a2ae06b9950c8b64f23b4b1f821a711a304e3f0d862bb631890423a661fdcbedcafe1e6ca8a094612487d83f6426c8e4cc20802a0ca0b022fc838c707afd1ab8b4d74946a146982462a31a69decc48ad3db8cf08960264462832a2b6dfef6b3bd7fe44ebabbf95556e1f516445c6322ce76dab3125b80f6a44d7a0a891662a7452041b655c247e7326d62a0f5423d84c85933267e1eb7fa38275ec7f2fb0de58f97d5f3a3a87a302abe1a1f3b354ae4aa01dac0a266817203a840c4ce225bb6c079a5971db005b7d50ca542e968006f98c1e84477c9bf8cb732542a20a4bcfb273a1a19f6cb3ddfaa69999aabc94250075245618ef409c7a2dd2efe647209eef1d323fca14dcf940baa7ef1e626eac1d70968e6d562c6fa7a46117d2a91dc4770fbb959c00fae3a40f97dd093b15a418a99d09d79fc3d3e8788149a540beb1df982c170b83489e12a7fb855fed61fadd6fb56bc8425090928c592fc69b3cee29599fa5bbdc971d58be367dbe3ec97b5236775f42f8942c6bcbc185308588bb162202ca041a811fff76e037bf0504ef27d35515674769bde4fc16111f0af40e585ea290e44bbc9c7ea7545cf3f423f5c7aecd21efb4ddcf22129b319ec68dd509f0e9bdfb84e2464a8a97ecfd4e8c3884b7be179c4bde1d1345dba058e5681554e600a47272e71389e1cd0e096d1c6c750e6d0d8d8f1069a5f94b043f4b0a000d31c2652dcb97d266f46397e78d3e8b19e71c0ab07c1d98f40d89dcf3fc881cc363d2ebd4471b13c77739b4f31c897b93b81e464d404683ed19cf284525310f0cb1d7614dad2507a4c8384baf3b6f89269ff21c088b65959d12463cc2358001f046e94bc574c1534ea89ee934eed17e8dc8747c29f53fc08a71e64ca0b9104a60ab99e3c400f328fc6ec1bb688ab9a535a45d5e3fd21f6d679e364532cd2bab129b3b38bfd656bc0135ef572da9f7358547aaeca417277ad3d049678dee3bba30df401faa83557dbfc7cff20944ede24e3a7ffe78da8234f2d9e6092c120d67c8828c9c9f935a29f4686c6f4de658720193a16d1928f695c5a0f8bedf55380f0068b52279ea6f3572c95a918c137c173e01808d0924047888ca93a0e0fc05e51bb4afe73f252ce16385e55ade8e894974bb8cfe1a7de571e932a41e6d80e2b316a053e9a98da3e5fb9a1a46c3b06fdcb3f98cd0db22ada643c0effa9628bd2d9cdcbcb5cedc5b264e1f8a19a4f4d5fef3abd265c0b72d0d86e304cd788d4d2d752fba1bad184c141ae726dbefacb8cfa07fb1675855b1f051c406d71545cfa1598c3f04ea5ad2cc5a8bac5d74fd1cfa52353de073d83d5db19cd4740bc79da47a52772fcd2ffb63b02b5e5f1647042450d01850f5792e09149e1be3ca0c726c73961dc8808933ad91aa7b752c5c5bc390d66ea821266d52308edaf34da69ad3e28faae79b5e447df09b3e21caac0cad89eb544cd33493d1f357f391208870098edc86d75c47c693571192ee8217d8e65391b577c62adfb617ba0f96dd7897141b13b5316bf65fb78f61332b7a5752fd9e5156b2706b425f884508f5e39c025db6e111cbb49cecdccd9ca2178662a3d4aadfc3acc0f417babe86ff349476930129b6507e3d0247baeaa5f99edaefbeb300dd34b0452e0b45ac60ecd42adb4215b23b1de57685db7cc7019ba187063ce8b2c43ac47a44cd2c6744a63ee7377f9a4da6a61d98e790b0022d94afe996adf0e627f45b32f0f87358d1cf20ca39740f5a9fad558163fe1fe705fd5cb2aa87a4e0eec1dac2e385f58100af54c3576997356969c4d50c886c056fda3c99e5cfe4d6215dd2921a25d8c8b60f135141d301217798af53c0db23b6ec031033eb70442e4a6e68f42f25a42d1e73f00e12685e8dab1701060125b5728422904934414a3c42d3dd5c38ee894defe48409314665f69ea00e9489ac5abf2e1f86c061b6ccff888371d8e19f62b2dbcfc7ddbf7260bb0725e04228274b77e2e2ed4d7b8c0f24dfe28417e8b4212954978a393b07c3059e7633cd47314acfb4c2e777027996ddbcae01343c5c231c7a318a5efc3e5af6cdd2b7b81250f17a140cbdf8c69106435267f617f1652160fe8e20886f726351cc560dbb21b820a0e8645256908d234cc91b04ca6b7c0634a62300491d0c93f0fbe07269ad4ff5d5f1aa122b44e1c8d55c2783a37229555adfee75a75591bdf5e2ca3108fc33df91faa7ae86c7b8414c5da179e5e3023193c372618a474bc7354043d97e4dcc2d20b5985740b7814ab81418f2c1e62cbee4f63367992f6714560f233603d12d6973c28ef98e17bd3e4cefad41e1e80c236e11077b6a43c64a0fdb630222cf7c58869a6f79b5440c753fe0f2fee9d5949fe26d8ed581e95c8c193b327159e03baf8b7419481fd72f385b5616feaa800c8503c58eb70b734dfec4076c3ef5dc2e6623c3db429727c140642c9878ff24667f7bf3ffcc2e08a8a0a124dd11d73e8a3f23604e5088f4613bfaacb9514bac33741ee7040c21ac089f35236e700f6087798a4dee9a2daff2b6aa15c5a8fb22267cf41eb9f292f90fe020f02d6c6e0521628858373801fef4b4688108f52023403fb03af56beb2f57440ceeaa66e40daa19ff0f80b03ad48f159442dfb6f2ca6056ee83e91ca64af5e16f88eac0f1d96d5c807aa79980bb6f529113c37cb4a923f3d834bbebb26aadfbc9a76315ca08d61c22d8d823d46020de6042cc636292241013d7fa605ebd38feab45408d8036c37422aeae6ee5a8bd6b5e3eca31ae08f5ec6bda8f4c879c44a1f6e1d8b28d4f7142ac5a41d9b2851f4a689af91aa867afb2aa7e7181d2d5ffed61e88310b49b786949374d961790634c360ec306a8cc3d2b4c9f0bb621c4aff58f7835f57fe2abf2286d91fa63acbcb77080c4f6979ad505cc55095257b9d3def9fc96a946e3f19d8b4d9419eaf766c11861c62f28371419a7c266f0d30fc7aea488f7842fca30c1c7fe59185ef5951a05354cfda4a1bd56b627257143fd546cf66e9dabd8e256cddf5575c2a1e9c0295a1c5ba0492ce80ae3e605780d50a144dd8ae562e70784d4f241d94739a049018255115dd00f4620f12785e3d1a2fc59e2a87518f2bf2efbc19b3f4b50a09d102544523f06447e51839b6717c406fa79f3a475d4d977eb5182e619830a7102c4cba44825a3678acb3bad4a86dbcb35a30aca75546a375916410c6e5cce5adb5a6548e3f624f3eba12b0891e071b80c6b754543887f8c41fa795a6f41439634c4ae670e64701a862a1175df0008067c5070e128687f1eafc432ee98d1df1ce8cc6f44af485ccbf7595086c80074901d8dfb20aec05d8dc0b98b0e5859e3b146e19f08948beb4be913037ee4b98dba4c1381a1bb76617ca935448ecd6597f72b77aa4de562159e42e3150ca631d58e7fe0c7e8d1035766726b300a1738781ac5ef32f4f40281363f026eb212ca7fe6687e2a14f925e394fe709572e5ba0a8b786a9c6c22f428ae1e453824c10e7242849f9124384a1908f3d73ca0dcfe9164f78c884c1680e472c8c95abd2a4e5e903a586a732c58639af8818bdbec0259b1a6cbfa9b1a3265dec2f9c8323e3d744c53f009e3715953ad999b9c42449607c88c724411856f9d8d33a6d159a5c378ba60ccad78f36737cd995c1e6cd68349a1ae64b768d1261cfce33ea453dafbfd7448dbf6aa298480ab9a6ab73e4d8ed082266762cbab9b697ef85153ee4e901e9bdd3731176609bc99f8d530da8b6f7afd43cab543678409df894b448cf4cc7089cebb0392ca7d7fcc006f4d9562bf1a952e921163ac614a32dc4ae8b310c2ea1545644c75d25a8a4136d0f2d05eca9e98ea0352f8b7c2ce1a537829b62f6c95e7ae159103aac511c75ad15ccea9448cff76cbd5b035753b1870326ca8b902959ed653c10b118530722e69b47eb61adf1cfc12a9b21fe68453bc9253fa88054b0a1d21c8b718ab746dd51ff423ff3b02e997c9e4a61389ad56975fcbd7876da6cd20f35b763a94f867812b06593bdb648175952e8f19b655ffc369af21d3cb34d359d51875baefab9de49a9f66192077eb04b75a7325e002969836cf7e296fdd4b951d56c9fd245f459134dab120bb5394e7410481dba45b0931a92c75dfb6376631b81cc0932656618a4d697a24d68b393d617fa82bb41618ba144a5f2deda9cf16f2d1f80bdfe8f402008daa7a07fce3b5b928978faa6bf332ba5fdc80667f0b0dc3015d1f6ccb76587af4bdcb1a7a98d8295cc25afba464fc0d89042392a5b2058969981f537ad406042d47e68d6fa3953a6ecefb563b4e18132b213e341ae4352948fe677d0f6bc40a988f3e33235b0ddbc721d5662d0187a14204521b06559a6398ea4b0315259dc172cf5329bdaf4840d5e5723a9387bf5fd85319d0385e163dd36a8d4b5434eca5b227a8c1025f5cf03077545f450fca3b1942a7ed5660cddbdb4498d8337c7ac1f7bbbb19b24e9fee1f709c18d6d9b1acfebd57a5aab061ddfeadd27c7b7684974c9374a9bcc4e77c0718ce6aedc35e10862f56b7ca8fe4981f1d10d09c4e05f6bad18e3932e4ebdfdacafd2872a66befd82a2d42edb6bc20db2d977a494860c19e8c712370dbd25b8f28c1bc5914a3bf1daf92e6d5de80b94f71f23249804531827df4ae89b5422c32f74935f84e24e648d274b112542233c8c5d871097328af81c6d227f0c27092721b70e7e5e0302adfa6bbc5729a23821ed7c6e7080b175b05c59349274ba7e6497b0c56a7575a019e19a7df6f3b98bf4b24a14db7b6528e3fd4b421cb9fd8ffd2e117af02bf6b0d33cd8e78f59d1b0796f647e01bf6af3838ba2fb827724539c173ef993f342721703a75e5308dbc99d536c859ce71e4898b243249b17fdcce658cf0e6dbc826b6958576901c8a2ad279e98e51ecdf2f06c98644e5c800a1a70b7c687c0c8599bde23a596fc33679482637cc216b4ec034dae9ec59ca8777c249b28e166e147e1f5cb56cae2d1e865edae7495152cbdc7a543fe6301b928a4e6fbdfdb8a2338962296db73b629de9f8bb2106180651f77ce98cc74588e8c8ddc05e849eeb839d2a8b527b3f826568f47d9fb502fbd8ce95443f1d087b1a0b6c8d6d9ee5bb0bdd0d63e22c87bab651a60341ce5e0cf1e195f9fecdeee6854a333ed5ac9ec2b8d16e5c11267d9fb770004b141fdee4537a5c888a69aa30c43b4b3cff0737c2bdf4769d5c8e5822fec84fbb96a392c3f650f6d971c081f039aa600040e6793d2e12a56226c3b46513649279a394644896c070b10640b692fc146b88cb7ecee0f749dace14ddf0de25b197d833e95cc376509bb1ec52fda583b2dceac2c090a4d43c2c7678088ee858cbc2699a82b4a39124044490e282dcd4635b3ea731d89f0dd587974e980580fd2ee3e286c8bebebf33f4e0e17aa17dd2b9f59c596d6f30d4f2f5506894407613f70472b9e1b0f76695dfa372368393c83af0b2bf5b031f498c82aad5a20493ef8879044fbdc91d5a091a14c55a42cd1a34621bb535e72ef199d8af672a3321972b1a23d26adc0db07ed79ee4099de46ed403ed690d03ef1e8c485dd226caae0a2d3d1b11f375573656bba3d378e2dabd7fa63a1fa05e88ca31101b00bf63d188695dcf6f75317fcd09cd3dbfaf54e244756d6338e823b444576daad72154494900691171a67f3de2d12f9f6e97558cc52a42bc7f9ce6dd7c2a3b1161e911dcf4fdc213be74d61192fd254303ad9c328c952763ee6f42185ccf3f687756e94e74a314b7a3de91f37c86b2263fe3d26a6f74a936d3bee8716e63d0531993692f1a1e366be9d1b5060f7ae45b3181ba5e3a3d625444e397840c363a94b35cabda8988282afa684e413a6e893d3a5b73f36d6734f9a8e986976f861c4ed915f0410a3ceeb629833ff45ef4a6d09ce131094349af00c5c8999fe056d97dd74d683773124472a0548684c76377bfef3042914e32c1bf51b33bcecd4b09209900bbf4896140bbb8aed12b33217df9da7e185a5a2559a2ee74e5c296bce38320527153251221197cc7d196f580313a1ecd00da1ff7c9d622832bb2569c9abcd23d8e7580784b59499c311dc9c30ae8e0d65d7dcec633c10b6331466fc55a987df59ddf7356f994de0929e8aa7e56d9f9255ceae709a8e53a96fc0f76c9e53058f227692b48b2849289ec5900a16ba93f2c00524710e22f07609061ffd1062394853a9777f8e0caa413546a273e86a6ce1e4277afc12288bcd60716fb28e63719a88debfba2a69d1f0e554a050d1ab07ec16310de83fcf392c6436131e166a8d91ceffdda178b147ed05e760650c80f50f8d58e721f9522136c80dc96f6b95549b8725b65edf55b0b75f2765687605768c9fb007190165e33659e2fba162ce2fec5602f261364aeff92b125b872a18d6112eddf9c549676b20f2e4fab3786a53f0069a9410fd8087d520ba87437d20b21bd3d8e00bb638398f8108808223e24c072723486941d99c6b08222a857b7943fc25ef4125818f9720de8b1bef9ea7ea66842864465192a231767eee9b7d9eb97580b4dd4996970f0a00f04787de3f44f8f00fd43d7e9beca3d69d809c83a571a205a725d75ecdb5b51c6ce0d984586e9b00f80b2f534f398038df4fe54b5064a4b150e1880d2c114d2cdedbe620470579c3aa583b07e9ed472f233e92adec4dea9ada2addf5812d70cb2918eae6ce7f295e566bf2a5305b95400dea4cae2c26d7b4ebe03d77acd43776a24a48437cf8fd9b75ef66cfbe907243c596a996ce941a8338b2f004d5910f13ebdce790ff305c76f4e0a94a3ed29f8acb00f54e4f673b6eb2ec7d54f80fd61f481df9bf2a10c2834dc218c5ef8b5142bc6870501387e04edc2de583f2f5b41bcf9d2b12cf3c0b417e07ba06168e5a21445c2606b9ef67971853aa1e49a49c2f54b1b522bcfb50d0a8b0ed6c3593aacf3d2b91e6f695fe4dbaa60ee8d2376207ef34ba7118410fe35c364b094981a0b1426418aa8cf3aff968e23180faa2a6fd659d986dcb3c311abb6afc741d89af505e4dde6a3ef8db058d86a1071a9c8d498c36a03cf9b8337c29a158b22505375e37f529d3103023de35e4202accd13fc4d9794e3a979d65ddd1bf6ef2cd91d89187274c65e7222ee5fd528e858a0ad2226ce4a425d286a7a084b15c316021281c0fb6dfea1dde78ac87083df4d732e98b6185209c5a0f3ad374a3356d971c80981001e067510797172e7127c26f42a125e1a40bc78ab83d724b7c57f1536e469825f73343fed4d2aa816d598ec7874d5257b8a16816fbe16bf4c3a4d6cebae0b5231d075002cf7c23909db16b7ffe748c42c4b9ab6fbe5da2aa7faa1cd87638a39e5a9a3d0585e6b64d59cd28cf89b84027a1bef75a82ccfd9a7a9cee06acfeb8357942fa73d12cabddf2bbc9cc3deeebdace7276472c364f0d12c9719d91577da43c12ea4783377272cd1a442f950a3295c3c8c3a52255dda35210134dd655a3fd698d31df5925dd5f73eacf30eb737701ee15e638632f405593767e1e1a1091f73eb58a431b54a51796aadc051e57b16cae1955a2433428a7e305b1c5e362e7059bfceac090ead6c3617bc25efa3f89d113f4f19c0b03e91c6b9be88321f995bb7086031361b9e818f24aad1d89d0d742915bf7436161425428e84fbf27d905917be402b8e1cfe784c85dea79c8d28176fbbb2d6ed289f2b0386cf5fb81917a2a884e20a099d2f35507441555fe683cb3a375fb8f2bea59ad39cf62b342cca880ca06bc8eeac018dc6f10d49aa05f941084182955880d644c37750f074184fd22eb5715a6cd0e667681a24799b64c1a2d7b39c73260cf653db3c948ea84366146f6402b9b43d41cbbda2dae525ffab4d8e278eab7fc0b349c9932a264d5c5107c4227e4786b5e09b53c97b903f5031c75a0faeb74234bea1b362f8611066e67a66ff4948dd483c6fd0f641fb15dde1a234505a0110ee3a423a89915880abf01b577e21a547e6b3e8a77a22c04880600542f1fdbd4e2383b002d596198dd03e5fd37bc1e0a048e4f6c71b5fb0ea6f8569b8be71df2a844d332cadc80e220990d4b2f356cea3b8254f6f46fafb5b0c2fb4037469679260fb0c0d8f8aee96fd8b4b1b3fbf56ec86ad051089c13cdc64ec1e96286d369fb3e55179be2c862947230a666b9c3550daf276d6e11dde2323f2245747777a07ae33c950e2c5cc39821c6d0ee9b6500a8cd8ded96e890d16a406e1b03e51494f3d373d72867ed2b3302981828dae44e64ba616335b5995859f0ac27992022f1d889fca5e63359f00fe7aff22dc6e06522f7831952a12da47fc8454badba9b6a6dd087c259cd6977b6b6dd057bee58e64fe4b0b6aad49df61635fbda6abd546d7a3683975c2a1413e50fca0a7c52fb514f49400d4a3fbd58f2eb9874bebc0e75f69975ef9d081a750e2eb38ea1e9bd29fb8d7216e6d7ef3be938be33ffdfa0b27b3fd32ce23b138489c32c0077ecbb3dea6c458386beb5aa1cfa7aada2438a8a8c326403176a8b9f50281f97441c7c2a58d58adfa5754ad50cb18faad4c792838a485d6076ddb8e825ffb7634b50271ee404d4bec757919c3d3b7aaede03b22253d3cb06bc3d92525cce662c07977f9fbdc408c5e295bfd7e4a93f4409c55bb5034945b6011de8fd52eabf37a96fff0e7df01595bb962cdf995f13131e425e582bf986915f0d881c24ba2eeecfc60d0793d0d757e92d491738bf5d62b4cafb691a64dc43b2461a4724f1a3d01172918dfe9ffae2fe03b6eedd389009953ae2ddff3c106b5887fc6b8f5a1b8441a7b4f87dffdf2daba775f8537c680bcde15b47a6daae53956dfd3f41343537474886dfedcc811212ee2b4d1c5a58266fd6a440e53664832c63e310b23c5c72a354a9561d8394187844d7ae26ed39045b3f3a998c87fa553a7830eaea57122c4831303ded16dedcee2acf0d2e6dad9d14b1cd75a39d6877a14c7939827b062cef49534fd6b3d71e510128782d809c33c2a391de8b1fb0771354c3973ce2f3fbcd64e1abe8e5afc56a38f763d43776f34bdfd01dfccc89b91ec8023abb942a127563df06e94fd958356a7f0bfc94d0cf370d88052925dfcb05f615ad2029b1d33a560ae051f52dbf5d2ab7f8484bb7448e95d24605accdd1d25c3bab68c721dc64818df22118db5408b84670f93bd9dbd73cc490e59cf7d66bf5d1f09691c3804f383607e1841795511332beb3c06c6d07227687e22d140019bec2035e56e0c6cfac14cb5f15afbcad353425b4f6fd3167f0d80d5f5a05b05dab2f7545625333213c6e00ce551bc7de8100c760065d9db38496f61f8ebd2138d9e107cfa5e02877451a4fdb6e9e26458a0f87551c19ecfae0ee608f092397a2af2c1b66bc49348eae90a0d64eb5b3f1a15f5bc51ce9a412dd1c298159974dfb3e57abb1edf893e3efa32eba90423af52d2ae05c47204095a1d09b88df34804a540ebd16536d7e979c40cb3a7b69b29bfc650eec3211b0f7f78d248dcbbc92f674cce24824f258cd567ddd8f9edd69bdfe7b01ff7450adc1ec25547228f35bb359a426185442227e884497d4eaa436f33814f3ea78ad8dfeb6a806ed94580ed37d772508e1c840b5fadfc823ca7993dc78116e80cbaed32a096807f45b6d3dc216b6d727c3adf2cbb3ad399e90138e88e28c3245b0244bf98a81cdabb1ca127ec1cf5f4eaeb72188ace7ef031fe82c60d9df93cc66e1da098db7cd87a366905c364f863e0b08a060d834a89dafcbc3fbc4608f592708a1a09a4b50b46e017bd2e7ea032939dc40ac9db2f2fab2374b9768177dafc7643488f982e4d8e7ade6d6d70b04950e5ef844b7a25f835504155c66ef6d1faee03c8d3fed2c35661e08469eb72af4ecebeb579b0fd3a1e92bdd7e821321c09c6a606528a57e9ddd2e650f739c394310b648d8bfbc3c7a0fd206abe582572cbfe71dfa1e1e002960e8716169186a2886e9859b5e173bc8482fa5f11ab9b71b8107bcbe373411101e55aba62eaed6ea5b14b279c204f8e22d0ff40f70eb93f3243e6f795a90bc1f0fcc1ad4b51db147ef9859bbc1c17a80bb7c8657d9226786e6d7335d54467d9c0bffb45b4527b6da6752ffdd3cc56da5a5a53b97cbbbb34b5186585491a0e539d89771e9d1ec3db0ec88b8ae243c078fe6115912334317a713a477e5081ccbbc48054b57143c6364f05e90896308881bc48083ef8bf1721893f401d0b34d61260fce6363c908a7898ee6e2a6366d56500ad06716582ed1ddd7dd5fabba06e415fb381bf493c6a90a1d2869e8c9594d229dee05aea38cea0d8ad81b0cce16162e70fd0f6e73fd4cd1d6a6df4db10d2c886713939faa698a52e0696c1139034d9856a754b49a11aafd8822592632589b4431877b108099a8be9624231b3ef6a20f0e6c7cd10b7ef15b61755c93ce37c4a3209e23d82255274f00f896b4d78332208209ab53cf7118c69d31dbc27b207942202547e1991e8ac4f2e6a24ecada98f68d17508d123d5c70af3ea06091e5a8f2ce9127ad495b7df4c56c47225f301a6f402c191e0b7fcfeb0710ad4ccfb604607c5c80831139a7fa3399ef69f1cd564c4cdec4dd87e5e035afe55c7115524879d9fcc90490bcedb61a9012829e764c89def8dea59e029c85e007b3f7a1b9bef6b76c3d0b8011e1e478fc29ea92e7d9ee8afa87bbc2bbc04f3e15890fccbe02f204b987d9fc46c6b7476c7a7fca94d4ca476554cd8f885b90cffd831168ff57eae00f6c58d9afde12134d8d141418eca5797c4ec12eb6c73031c77505c21e5529732459ec6d701a77660c755f14529b66582755631e2427f7e0721a3c1f9bcdf640efa65b454517d8471dcb8b636a021fa9ca4185b3f64be120dbab86d745f276f50d5c2576f74aeb04f0a94aca9c8f3bcc124b11c0b9bcad9cec09abaf710f8d05597c52dce46ff548c7fe5ac9ab60dacc24b4ca44650f8db2685674901c877daef2c27d4a0428df7fe4f093ab06c656cc7b41565c0ca32c7d9945051155292fe2660cb2061346c2e869077be43ad9f6f63ab4ce46506c26807a3ff9d4e93fdc8589b6459e73ba8f440be2051b32b9e87457e9b2a5a849ad39890d3894bc634e0063dd26cf94f1bbd6fe90f0f9d8a7658ec38d64f3bee3c6b153976887eca0c0920302641470f92a71cf96cdf64798a623d6ae4e78550add501a1fae5c554fff1c399e42b41ce616390eb2e6b47fc400e557da11979c8ac1e178c551747194c00a689fd62ad4e229dd5616aa4c1708e15278c1fd0fc4306328d5719fcdf61f342e4780e202f98a764b8b37425da7fe520a9e07d77f2bf3ad6a516943a7fe9e90d8e0b65cfa6ddda9f2a4a6e0e57767ab08765321967dd48981708583b6f99c269e27c9f9c8b71fc7b7011981b89d7c5dd97c3b23155cf8f2d8a5634174355ee869951172b72a360d6548ba6211e4ff178f1cb6d52919078c07f9a97bcc710658d9b94e8fe6380bb78b99515d45ed98d74455384ff971a694ecfac611ee1221eb3bda7bcf910b09a9f3cbde1bf6c18daa5068d29b6a35c79831ab427769f29bdc2010fc96870828c04b0d333fb23a7991e3a666001c2050ea4e00a66d6ab157858aea76b12b2ed185d5586f0efaca85d0203c19fdc6553c27aba3f9e93cdeedc05e11ff757d37da1acfcc91c63deef671f496c37fabefbbecb2fed1645e5e1e2a5414fbc84b279b61a07f6a6e542307893c44353a7c77981abee4336d84cb0b374faf7f80ae4f39b0fdc5c1b1dae8a398b6f1fdc57839657fc967893496dd842d3f2b87cfd51aad158803c5548aec326a3800518e4105395bbb75ddbb9aa7c96000a054025577e54a0291ea7df42c53f017fea889b08ec160661049ddc6e15d85f82754302e690ec5089bdd08904bd7bfec3b8f23af7989dda51ae7f600f7055ec53645b37af9b350c1e0c3c204d75a3e92777b3ba0053dd960734eebb05baafacbfacc34cccbea02fba73b31767663e00d264a703ea39364c19d3ab1efa4782231be49d8671d08a5ab22d9ac811b798d7dc09008de7b0a4d0083d7d1c18b49b47b62da20d09c4506859f9e17567c80c9bb8bb3e4446ebc0011d1c45f5de3805f00754029580e00a399883d11b1dbc9150068fa5db6326f6f856be9362092c0375070d1cdf0626483ca5867fc229b5f7f73cfebe25b6403f317315840ffdd56b50aeef3e085d7169bbb59bf09f0d23ce2d11634cb54c73f19b89dc5a7db73ff87f3691d8bbfb8b11d9b53be0cfcdf9992c149fe63d3e433decc715203284b7b5689adfc0372148a4d731512a26f8f1331d03a07b4256bb0831e51fd6ee5614c02e93049054c5689dcd2799ce87502a7365c9f85d3ff50467da459580b744d231b1cae1e29e60c6975bad0374a270eeb93d3f7bc6489562e74b6e1ee449733ef31b4f5a9638df48fc7d8e6c39f8b4926751e96b3b5a41c9b3e4cc2ce33cdd531cddc728b094092e9ca7ae3da263b63d10e2e441408039def114f50c75c6763a5862e7023013b6f4f05dc9e712543058561e3b0b105fe5cd610301f51e7160db411568d6391a5d658f94603ffad3bf98af36b05df8e2f4838345fabc1aa5c6de29087f679513f524accd88e375f7c521f6558e4a37ee583bba784e786ec91bf6f1efd06c835dce414be7d586cddfe884c9782b381d66530a086630f0582f69c4c905b6ca177f883afe8d8f527e02a320927cd4956826ca5f1e11b7a5303749ab16f382302d03fb5b8cfe4c5a868e99e4fd6492d955484e93b06ff392279df1b8324ffd90af5972d6f968585714bc9f7aa971bafdf3ef727b8d0d949c680779dcc1c2f275002159e8181537c975bf887704899bf7a4ac854d45f36da1cc0e5c69ee856e2362536856afa5fd68b24ef8cf0f06fdc9af11c91d8011ae0cc70dc72d11bf5e25eb6ef0ab553cfcd8cdcd03ac22f7d8bd8489e8e0ad67b4aa49047452928dde46f91c1d847b4afeeeda4232c437f8bf9deac889fdb231b3620d3488b1c549b010a89d267fc67796ea5bc5ab5119e0ad1b71f03fdc5588e6ed146f0513943782050e151d83485c28967484eb137f2a43aecaca8e666bc06447756e9c14fc5536257589f6acec23bcbdf3874eb688597b13850b09c98c1fb2edee8c65244d6829cfabe34f0a7c9d7da8d589e3848bca196b9b84ea717d7e4cb42edf0ab54f5a53f55ebc026bfdd20790f2a5517fb1c230ef7fb0cf3e2b78f6627ae29f9210dd8376a880611af2d74a875efd25b4ba46931fe7d03be61908de2d114a39e6a4d8c42cd8c4801b2494e9c9ae124bdc6fb9e7340e08bf8694041ae8e22074929567ccc7c860b26e8e2bc2b07cd0354fd05b4cfcdc0a0859f880f3b31d37f561d8bd7a87785a9d629d96dd79069ef3152a8167e8fd627e3bac08c6310f9bd55ad1344dad67096c68d5ed7a4710b03f8b342423efba59ab0ba2f89b9e67364de0764dffb8d733278b9c7c2a8bba2185574ffce9c9ea44422d5b6e1ffee34ac92d89ffdab549d2395ef39b9708bf652e271dafb59a586aad80cc21f01dcb1c9c6afcc0fb46a4ab71c61660e3384a9e1027f7f886c86b1b732a48487013e8bcd4918feffb2cc78bac13d2beaff7f5ff4d31b6dab6043ca2e3aaebcdcdeeaf5dc0976408d86b5fa53ebbf18f416fe25823cd319f60883476ff605efcb76883c615bc68b091ee4c8ac100147eecfbba604088155630bc50e62eff3d9d961516cbd022cd94d42d247cd0cd7a7ac00d8393a2df599c2f52431757965e58f49c6c1e55de854b648ee16f980c45f4e217279eb69201a1126a047b4561b978d3f3c5a5438edd57eeaff6ce3571f57f41ff7d039eaec6a588e7ebcca6a8b313ee859627182adbeca7391184bd241af4c9396ed19da435c0e3a8a3baaf3742d172cc4dd33a8f0b99879e75930d5d2dc74ff6fe01483f01b789d400864954b2ec84ab39a539f8043975d028fe45f76d9d94d81cf16cada78dcf490f1856b5c8cfd5d916cd8ff0db0907ef0681ddd5452c6921e4644a13d008a5f7402ffc0dac81c9d571e532c17d2c7916e7c7828ad9d82d07fc7e43f492b598e5d85d39e688a9909d1f0b4d80adbf34a68e530694eb2722e0458c2203c32b26feeffb477eef9fea0a309483f5186648e60104b062232c99742e1ecee5bd07848d06b231915056e70c778438b48d28a59cf749969275b4f7e12bb5583acc6afdcc2a0d4ac971328dbe1049d82b001a436459aef6ca6221588415f6b050efa01d97267eeba145ad6bb6059bc3048955608152791c72c26ae6a579c05d4b41dac982843d42ebc60e13d254a5eba99b056af97ffe7144caaf5e22d8f76177d795cbc93417f1541e3aea100e20e2f3693750002dbc63b119267d1a655d1175abc2eefd4888b06c5f74ca4f39f849c23524c684b63c5e241b27cd1c45c38ead6480ae11c6dd89e03c6d8154bd68916b48f0a66caa47714ab97099718507224218d1ab946dc12f60b13b182b6a295fac560a88558d62a15e0995860355cc048c999ab886dbf7c3a571e3b52489723b23b5113968704cd1e62059599674a5a6c69f78f4056cb521d2bdb91f7f7afc24eaf084cf5667792e0a64cd115926c30c4489cbdf2b705106fe99a2a519788cc82771ee86af0d99ee149b0f54b4aa430f0888c4be556c718200ac1dfc365532d75b8c67cdc2e65e6384966915c458e619f24f7e196b31203f5caa265d4b951c532d44eaa93957dbeed01a948891db1e5423efa291c0cbcd1168837dfc7bcaa042c8f6d4a17b4cf2941e70ee8fc9a8621a28fb84e97d591880923e47b4f971ba5c8b63a942178326b9fd2988c9b9e503519c5895d2a6aae925288cd56ff6a78c9af3a2e272d5ae015462c633e858f7953471a51a672b497dc80876a991f58ea068152742c714293efdcb8ae9111a72a45082355e14ef91a6ff9883cd9ba98b7d5e94ebac07cd5d210e2566bf61a197598bd6861c52e655e28e361a843f360fed323002fd59188595707d54c85895de53b9401c78a4c9b77e14711b3a419895e2f74357bec0246877903525ff6946591a6bc3aa357bc5614a24245657734af16fb073a622d36df63f49ed3ccc1a3e66e399e074925c9f0299aaf8b64d62dd9388e435a4e8891cac61688ea5c5760d0dce08e3e9ec911cb507c16cca222cf9e50117c7e8779350e1f6259e3250bc6bd58869d341e3705b52910e82ebf1a01c3a7220d9173e5dcc500cb246d1333544d3408fc45e08872a418832eb642dc7f42729b04aa89d6fcc4143cf19df291343acc1659613eb3fec50ccda603845becadaa4d0e48f988b108e34751af231109a60f26d62a31cc14ef0bc239a2329c849634236a8d85b4796cb67feaf6fff55578c6ab4d8028cbdc7c6acaa8157500196864b12c7ae169c86ab33a5756b6435fe7d62ac783ded80b039a00a063e6f3ae614454e80106e4df1d3321082985291a4a8bd21cf751854fe7fdfa69e4f849f640d978b2a2252fb44a22c82cbe42418b5169bd0395672e0bfcaee10d62cadfd57e6f6f02962e0c2816c5ef0df3c11bab6c2de7e97a8c1521c6de4a8c715a6a78db267457c5c3deab1a0b3951591e3fd4dc82a47f9d8cbb090c016cda0a181eb5dda838c6ec00c9771b7a39839eab392f62967916cc2b3d9df5e43c2f79a98e08e0906eb3d944c2381c713135e30666285471c3f6b1652d6cbfd843e09fa1c3b0241723a75fd260bed86b981a7b22638832191279e0c16c2522975de9aa7bc3ac1569297b61ef92022b21b4c58fbd50a9750358e4b48292287e3d6abc96c00dca579434eacacdfe057e7d5bbe96f069572c339ddae98720da3ed63adaf69541a4f26e82415f178e9b75bb9e2c4609215ca9866900832e9bc227a61c0dc58bb895fe94a6cc577a7c68c31c712c7cbbd230beecb059dabaed08b400cb29257deddf0a3eb06c2aa0c7ad72a892b955fe8dbd91ee2c5c2398bd02bf343ad7d49bbbefd460e9ced3f173c0160674416c3eeaf91d18c1574359427b4ff0669a15fd8ed5bf610ea5c5faa59b2cd6730b6596fb3786de05102d7d4caa8a9abfbbc56e77d0ff4051f56ab631de97b11970b6e447118898b8503c04257506ef3dd1b52f4157750db4b8056abe2bfa5a7b98884f924246321dd29c9b42f9082de3bb76dfcf607c11f3c6c3760c0485518a9a792ec8a99d49ac58b72b110e6fd97ab625240af10e89fcd8d5b87b6abb4dcea58cd810e742876b9d6a36bee96c57070c70eb95b42ddfe354f10ad615b6a08b944aa00d06705fda7875ea211b35eb9671829f6b9fa126efc29159ed27b812dbe42eecde8d9b265aa1dac5bcc622a7b9bc55e6056de4dc2e5a7351873645b3c8474e710be75269dc8679d468997a184e9e63585cfb7431b87de2575e2b0d64b8cbe2f0c18abf7f00dee273a2260847627747fdfb06aa6e6c55bcdbdc1bfea0d257b0b9ee5c6f6398483196a7324fb9b150fdd0ca1ac68f0f1ca108108d92bae79db77f7668114037b094ff97ffa2ce132f87b5889305352640aafcf0526bcb09a00342a58af89c7a66e8d6de9c1b3dc74ea164db52f767fb8c341c54adfc6a8fbdd6762cff085d4f33a99c9cd988a3254bee97cb732429ae5c4227275c7d28d92e61778ceedbfb30e0ad6e2cb46844c04758b4e33d3f63449171198bb6f47e5f3e2be399f253218bcc2b410301c6603f0a046bd7284dd3cbd7fe7f7dc80df7ecd7a80eec5ca7c28e3cdcc92b478161a02411f58943947e5326dc065f12b81d2ceba2a5fb52b4a00dad1841655b454aa79fd5bbaa9f946816bf1ec3a83a783d05096c7607c038e11c5ef8c077db590103f07e662608fb36e5f512c1254156b935c9f93bd96edd0f419b3b011616a44b02fbdfccb66713cb0e7875105f59e71fbec09971142dc45e28f74b3bc6b8feec8a0cca31d49e0c2acdb81ffd034e07f9afe22f214dcd2f467f88afe961fdc26ca28c502eb38dee66c7701ff3c1cb6b22ceae8206a42937d7bf69a525d5430ddd963db3a98f5d827afec36d27efce26ba3561db6069a05c758a7859a029425ae152716224ad52303575e4ba61c2dc6d469e5da2499d13cd08096b565fb6e106452259a6079245146396e0b9943e6648614b0f07dd57c357042cf9a36bcf7b66a72056ede08631b4af6304f777c0f251bbf40a53c646d89465f6b7c92a62c6d4cb530fdc1129cfd4dc23c71f1c7d9aaaedd3fffbbc4eb6cf3dd1ea21d30d68559561e520a899f21bc3b8fc480575c0109407e1cd04b884f9ece45c3455524f7bf8c8dd99cad804d8485e8fad4e6dbaafa01a45d533f1009102b2eef645c3e85b5415206b80fdac307507c3152a65fa37cf609268c40089aac2bd0583796cd4f21448d0f8ea70f826e3907ec4058a525078e931bb119be3d143f3c9659fe9385ea69ba220b934fb164667e349e01aa503447d10463034649f547e2f1ea0d61c5a69d3eb718512786ba574c0d23a068a6c2f2622d095053a5c946b4c8f84db1ca27b5cc35fde11847e0bec116b7b6d89d49841f6d80df9997c43bc208a87f11ef3c35b73c8dd545333000258c6cc2504d3a628e19cd99875dbc66a63f1cd1b829250a7a7f0e53e418f84d7e4ba703f4b26e818648ffb7319a2dcfad634c2a9bbb1d616925b9a07bf21f00f8902fc007ea02bb60c200d23474cba2f8f919980d618a148461e7eb6fc51e2e3149d41a7d234416305025cb1bb8e9f66354696cc78d7213d582b735a72c3ab69d0c75656100dee320ffdfd5dc12a36951f12512d7e03f119aaa4f497510b520280c825606c8d080213145d0017a09523f4e672dfa338bee55ab78d499fec9ec4e164553d2de333bd76a7805e2eaa92665be5273e71f8f6bea828f8fdfcb4d75d2044e9c4abd114fd2090da5c1944a4787a7b0be0c43b94f53867fa5a2fc72cee3376c2a90483523835f1502955342a0ac80730053e1988306ed4e6d5f8e24a1d8019a0e344ba4671eab33bbb7350c97ec7b5ef94bf257ce3abfda6e2115d98a329c5aa86afc17a7cc77729da3e85af80b8ff15492f4e8bd16443fba9db248c0d8a3af0b2588db9e9f3014062d40740c065fb4401613a29d18c001e103b410b888fb38816d459a1be017cca384fc2a8a45b8fa99d8590d31d0a891a2c35091a1b6f26d1c88b1bb723fccdd9da9171597f8279221775f45af2a84cada733a308e0a4d18c98493916529fdad372065d54b96a8055a0b8d4f4f1bddd2c7d82527954ad5a8c363813c8da841271ec6422eefa1f9666ca795dfa30dd19de28bfc60f9c6f2b2730c2c3591aa8be6c973e4c6c0600e8bbd3f30c5c2d75c9891c23d1aa98140bb3287b121f032b5484f6b17746409a2910bd9fd167f1cc8e6df140ea13ca581508802b09602583182d528823d64a2c3d4aedd78822b2054ebca9b4c5f1fee60129d849ad28920197483bede2e39cbb11769b22df960936835bc7a1da120fc1849acdd92f0e2ad28e97e333d7ad3c30fdd00e0d8b21d575f2feee4c23ad7cc6d4c3650e2f7160c15c0f4c87474cb17b9836d67481e435fe2a9bb9a20ef279767bbb633f9b4fa432c63cf2ae7f67710d8d80a4651ff6eb4e3be04a22fee108a65fe102253254e4deb2e4bd963cfbe4ce4cee2265b3481bade6eb9ed060fb1db869300b6df542f36093ab6fe69aad6859b331d7c53d95927ec3df8df41a752130d0c972421c4ffc989f37e8a055f1f75a0c3ab18ab2655c972276e95ba5b9d1283d19ed3517fbc66cd8ca27ff703a12b50b1fe6c5394dd4186e27c25f3bb215e1db26e1e39dc14f0da513939f4ae01540faac279bd38f461729b240b2b6041348e9e02a66fa6a4afecc17346b126737b65f289c6ffd291dc41f940e3366266ff348a205a5e7b3dcdc7c9ead289c13d492bb25c372b841bb2f5fc125c39c11d0eb614929a9447583472234ea3d1e1439103e1a68e11bc24695e20bfd06039bd83c7db9659e3e35395b934469352ba8843edf32bd51594758e449bea9aacab451e4521dc39313a86af167098ae7813e8f423e213c99a2ee4dccb9500cf89d77df49cd2b6b1c79e72e4552c9233c46fb6ff58d0984a89880fbb95372b8feb62fb45789c39ba02dad220f96d86a5166d130c6a521f2d8cde7f2a25481233e39d797efec60da4f12f0a80143f3ca4cd16aa7c2abbc69610cb8bd7c3d890cc790e9419b78a4c4dd5421c3952a7d436e94eb8605bd026cf4e167314df74a89f0be0c4fb89ad558365c98166ffeed4d085036bd857d9a7e2f7819a363a696412021491c8f464f435c325e27c41948e489b272f209be6dd6e9874b4b6914ac2a582f650ec0fa3046c9fe0a47622249e7b2763c1b43aad8a7825b04d9c740b071a2ce69684b65b3fa9125f09e82244b37356682f33c4b77c07dbacf0c05593027e1b49513a6f0b452b688355cac0b1e7ebb21f1e0040b6dbf98fd191184e8e751210e293ccaeda73a23ab7f3e142ec5c4141a43727b73f0c4ff8d0916d6240bf37b614a90380120e8c8fe69878dc110f4f6b1c76bcc72d2475be816fbf68875de2cca5d865c38f900e58c011e66f5f4225a3ea6934fa9302f6b6142b4f7cb41ba05a9b1377b0a9f67e247a2a25b7ebd02d5b8af8e99b34937e51112924fe220f4d532b2276831444936ab5a3bfa0357d3ee9080ad6cbd6319083d85b76fb0f48b23e4e5fb537037f85b88fda23003ffcb783155532cf1ff57a389b706eeffd5c04e9f771de6da62c9fe5403c81d6ccc5258501b8e6f580e71592daffd100c48bd7cfe86f9ef948a35e62ede4ad51dc005972bd52832616a2758c40490183e54b0ca33db5636712595fe411828c573670fda52f9928309105fb5d4a52d5ebe7725507d5447b5c9f28976fd4e6c4a4fc24d38aa1a443ec7e02e060a5f82083563476cd67dd174527b1e06334dc0f51f1eee453fc394bce9c8fb020fd81912a355b3b3b20dc80b62906a87152608e2de96f67923f6339cd7c6c6117a9b03e7222738e5a787ab56267ea807de1169676d1684aa02b802b95abaa8d75bcea995de3a3002e35cc4d8b7629e38c3d48b0c23262d09d0e50e0073cba81c34dc6f8c8bdb50061c85e3ab2211ef9f7800fa74259ce3c16892bccd01d9f527fa302ff4fcff5f3dbff06d3d9bb9214edf330ee813bb5340ae1b55f749a060e0e72e3450aa329ea3d84e615f717a331bc54bced7a22532f08939b613d542f239635a22f196d3ce200ec98ebdf8501aebd99a69b259d392d838552caaa9e04309d065c52679eed471e7f342a69a81f3d0ecdbc019b1ef713acc62c9e1e4ab42c3ab5928ad474c4ae54217ff956eaa0a9a629292152a635c02022f9da71db93143310928c1a26a6a259a1fd95bbebb75631b5a85eaee42b3b88f9ecd5a4036622798453082f66c9ccbbd06027757db6191a7abde772164e399c195a5c184377d9beaa4456cc45e6b17e9768ba671f7a535b2548acd5d272b9f63cb4a34b600dbb58e94dfba9f572090841a8d995ef386437aeee0f657d1f8498f4b8ef953b90d5d834c09c2618b01ae65b697673250c5090caef8f569ce5c83d3b3ea46e05d7138517f39a17e1324ce65e398edcc861677de4c7060a09bc8f8f60479b5cc1ac880421d7574cb0217270b828e34d42f6b63c61c879a69aa6475d1078b07045359a02868206d8dcd09305e18a22ce0ac99ffcdea19703e014479698baf7a7e9f3a43d067d30cf84742af8a3de804a50c9fd472218bad3c32b3708ab6764a66390b96c05c9632ff40acfaab76a29fe539eaa4b8b7e627bbc3524d9b16ad25f3b5aaa347b44f4d0d127d75937b06125c89f0d2232a795880000378ac920699fbc97d3b77fb0e2fe0131b2202bf2c3db645953b636fa7100d3b5329792af08342d9a995ac2bdc86d5f800f1fbe218ef2a8fd99870bb044190f1bd5a77aba7b5dac9aa5a31b9925ea386771b187d2369ed643ef5d6b1436b359cea389016708b312267329ec3ba741fb2ecaca136f4ff707c07166e757da73e551ed5d4b90d447c1a65eebb3c244748a5a4fc33f024c5b0e55957ecb159e6b454f0b62d753326f1a7dc4a89fef78102a0d61d453d357abfd776731e74024b10fdfe1745517f89bfdd88c915b9c874b5cce42b6b3e98cc218c59bb5f9fa68bcdd396812cd75681155534553a16b5f004ffb819e001158015c301e640e384eab467001c8cb89be166df8adf2b852a8104def85b583ac5861b4c9bd4744c644da44819717d53122793b8d5724f1b97f3c1924302450efac47373d2e974242858b3e717115d2076a2dc1a0f0e29c8e90981360cb3dfd77e97c04b2a43b2c29a74eff116d1c72db762449c67d16a687ca816c5189223a3cfb0da72c4d9a87aa6ce7e34d3d5d7bcf40c59bb37471909641ef894d8e72d76964d13e72104ce45ef52caddf5b7c8da37a0da7a744bd67d152a0272461dd9af3dec2e94d71e08f95fe8944efc2a9130c5a5570527b9945dfd46978780695eef26b6944abaf70b93dc564e50d48f8922df8bbdd5e26fd3bc6afe3deed040a817d62e2337c75557a78c3db0568b27558dec7b0ec10ef2f5b9791c5dfaa405eb44c3ef8e9c085c533d6a94440f17f0eebda7c2bfc05556fac9ea7e4a6d30af181693c16165cd166dc73567887a16e5751ae841bbb30a6a930100e9e46d9b43a6d443a9db1408c21d73eb99ccb5c305af361e7abcb9e751491953b6d81faf5a39a13f9f1d5337d2f178b0dcb4a4bef7575a8fa6830fbc92463fb570413dcdc285e5ee9acb204752752a6020b344e68ed41a4a9e9da25cc2e5d84e2e5c959e1e5cc9a1ed3a12cf4c37d04e25df9d5e34f775a2652ff8b7f1dc4dd3e90b965631aff5d6ca651615240184ac9cb4897de363df0f0185ef9c44e6ddbeee4a626119fb5e3f345c0dd88315e9abc88bf77cb24e47c2946c9ab94f9944ece8916f03baa577f163828aa149cb584c2f88f4ade5219d5a67c4ea4fefcd5c6b81eedc064b8063ba734432529e09043d0933bacfcb439ba7dfdf339a003473129460478d717720a2b748e5caad3f70701db188a1b3ffc1ac61dc20c7d619acdbb60af909318ea2042718f86f5db864643bf9d4489d25b8a756aa84019f8722a645d84ace92bbfb006fd1cf5006346f3662b2b04e719d78c8db880476cc657375183a2aafb599b0cd585cc209752a90fc876dd5eaca9fff7d850f48604fbaf06c191dbba9a3c6e35309fcb9b012c00afbb3089cb4215318e7311ee7299bdab3814892035865cb1755ccf07878710114b6c0752a162db66546db7affc3d295eb377fbdf6f88b118e0ba889d2b012bf62f703caf8be12a87364b4561f67627cdacba72c18aad3d5af5fe423654867f085d5779cf26e6d644a4d206c9a397b5d0a85308e1755961d9a53676bab65f04a5bf429fd6243586c57a61907435e447a553db277f21b8d39e28c8f421b369b96a3dd2505c5afff2325a02f26d78ac7d65233a5888d0f5bc9ccec7dad58c79327e2c9d7b3560f20ff37c81db6d5ffd5ce13bc21bad1630a0d6a8610fe6d1afc2c602c65bd83250c657df100f25c572fb937194153df03559e5db5b0df92373b39e3d5fef2ba240ef623c48d45324eea77026c3f4794196173375f314e15e8547312b9ae6e5b12d9d9450205c9c072eb605a67ad152d895e9f3447e04a382e2915aedb04c2e51682833ebc6c4241fb6c7a23920278273c980e99b32f555fe52d32797a8e9013758c0dce58308f8171fcc9bf8bdb24391e2af680131ccf27a75fc95de56476e3b7877a3d1e0ba09a1f1a85f9e60543d9f6d3150ee2ae56d22732eb6848243775d46c0bc24c8e23bf69e4a04d786a9d1aa6e81a05e81ed20815023d4a0805f51adb02f7c03a8b8c041124d6f6a5652bc740da4e9804e788d4881d3d1986f60e3eab379f72a751b89a0688af2b18ff99e0dd9fc7718bca71752fbba7bacebbd1d1c94b7397c1f693662ed73af017a8ba86a34378f949a3767f9369b75a2b1e36b58402bfbe31df796a0e7f8344ca312802220e4f48ceb9deff3db6e4a9d04a44f2e3ba90b8ab49b4d2964d4c92e19f8f849c5cbae47dbf9c4f5a02526d2a43b324d00d1b9071995412a4eab7241ddb8e67adfd186d1733d1f96268d0bb21b14ead2f058ab36feeb4d8f18d81f83743e1fc9a83924e3cf7cfc0c657dbc43b9650c69d69670285d4be4084d756448fe84a840b307e8b903992630f9acbae0a4d96cecb8ee798a0b05a720a95b74801a5ee679c9f403c55bc8245123dfc766f648d5d5b1d04be3fb704137a935dac8c1e2f496a55a5dacfab271669ad5190cfca1b9f53300dfc3e5b711f5f30b309fa15bd41b89d2122f68604e4a03b4e760e68353fc1e698c43826d28a455b60957f35d634f55bbf156026e7a4695c3d374d8ec74030609b24b77f7d5df8c4f87e0679a1178b353e3d86b8d8ce3b32e7507292889f144eaa8be0c1e070bdaee937f0025815ce40d356937de46a763cb06c8c588d7ab5b31efcdb709d03f39a46748495e1065f3dfa4bb79910a25156ea201d7b63687a1a1efb2f998c9d3710c05ce445d3f30c9ebb444dff35e2405904bfe83badf5d2819aae728339ba439a0e0e41e27bd4d918d2cb0736a4c9ae43e26de281d94440ae7858f86533cd8d0d158f0ae9df1d48b24fbb21b49d67f37af9c94477a39db66c6af2f44e346ce25cfb31cf95d665f648dafb4fb4d0f9b45f7656b622d08b797da1f36f79b653a845e6b716b2b2c9d6ebb7b8cc3197ea3e3bb9dd337cce1f2d8419c959899ac0a6cad26d135138de74378a44898dc1e998deb5863e00b9230df867e920be16580996f5a38e808d222cb154dce0f7119bc6d65fbf0fccd9e98065b7b66a37ead7df83d53160c07cd9aa312712af008abf92777ddddfb07e22f7f9cfa1dacf7e23a831d0d819ff74b63319459722a911efa33643ae87aea6f325dd3ce0366adbab65db617550569409b42f6c30a812b676e9f8459ed92cbdabf35f01f9008a4fe5fa923b5067ac40540384dc2b8f74ade0e7011573615e426fc283b6b62cebf156d3ffea28359fc8de80c35596031940546e48f871ae87eb97f8b59f47ddc21971bc147929c03bcc9645962a5e6568e1396141a1805a66a3fd8cbb75be883b15718cbb2b4bd5db3f0de248cef3a10b922751f3b48db699f44dce05feeade0af796ca6de79c019d0b1e20ce2b1743c5c2dfaf44d0bc696b045f9152e871baa63fdc9bf5ab599f64d49e8fcc44016532c0a4a7d9dfee8b51582c0efd6c5ab8cbeeb07920852265987e1203d1219d6904b71222a0bc41bd95c9ff2d5047b2c00c1db82c3b2917fbf3bd77e8a7e865a7d512b496bef268c487e2d5909723e44ad0a0016e3afeff5684ef095fef7777f908f16fb479b165436ab460f4cb68917bdbbb057791455d893173d69d583fcdcf3eee11ab52112618f9833b00aaa1c0246439979e269f7bdc15ea752f8ed33a185677d4c7aaa44fb7b4f23ffcd821d22407af5930654b59ac2ec21a1acbc50d2cec1d722d87e25a4fb1c4f4da5d63301572e0aa72cf5df996fc5842e81e500022d7f1342042b95468cfe35112678a14f7de145bc743d3c1d793f72fe53996d7635d6c439d792113d5669d795a278438b4e14928336d6c78a089d2372ab601a777ec3bfd4548665a003f92641c482d412774d839677a265a0f86044957085d66f4db6951c50d48c94af95efd3dc7949edd6c0fcabaed8b2dd239471992486d4ba822167ee9862ea74f542a64e3ae1c8138498280eee38762ad04fee8aaa9b2681c309ffa5b4027daa2f37941857a50c4f35eebaa313f986727637f9ce06120cda13b3fa6719dde125c154fb5bc2bf90c46daf63be3dce99a256b533a4477bdb13c578c52d192c14e8c8e3bd0e0cf611fcf7650e914a4b79fe12b8988aa362ce25007bb73c99cc7101c8bf9d7f4cdd4ac4ba5b651b3d3181d13ec3295b07e13354f385854765606ba3e4c0def90c9468ff9ee35d34b3c3e39f7c519e692c3c0f56daf8e53d8c47242a78c39154ee104578cd1ad25688c430bbeac97d1d041324e4c5ad98b53325a54d32f0ca3d920f2e7e62ac48fc378f4ba3f2274e2d4d0dfabe5edcaea4f3452de810be3f1fa8a4a18b9a1167ebf3968e4306a816e408973c46c49198f7b60f883b74ab04e64b96bc54c2b6a8cc6e5827478be369fb22d9b062e19cbbfd0228f28b4cf503a0e2d63e912ab660f0c3b621a833e4654cf5e5dc29f721443af9ca4fccfc891f8c0f98e9ff01492a54eafbd37da9451d4130d1f2e5bf26d48c07ac1fa92cd36bc79d4867f3d73a6fd875133bc167331511a5707b0e8a3ffd890d9675e45685eedf25d15097e9ee8f9041e521ac466d37226abaed595c1fd62ce5176875a1767765f2163f27c38bdc7c7a9f5a5bb0871b6fdd11379a157648daef1ec0b8de6dd04dc2845ee3677b6e659c6d34b7facb0346e7229a6467982f970c981843d6ee6494ef9075f54bce4679d8de523db7b8c0aede5fe9a794ba83a36e7e11dab930c7b68ab09324731fbacc506690c50ab1e6031f68ea605593152f33b62ebc7b9b05e84d8701605edd072f74bce4bb0f12faf6140cd9e2347f0857a7d84f6c672ffee07fde31421d414d9cb5987982d3d4831f9ecdedc130d059a3b9c79d33d589a9cace8459b263da79b2e374a41f3238c15d731e87a318015d55c1b3a04d95028ef21a4e4fe88cca651d17b400270f7a8d7911339cb88bef28fc971e571c756d3a233e54b31693ad615a1dbbe5df1558f1047c148f0458fd87a31c5c3588d0a1cc215111482743ecaa90673874efbf233ef0364ba60fc93d6e6a470f6da3ea0f4ff581888185fd827698cb52ee402a8076ec80a1c57c1ed95dcaece588ed4fd181a469e8eb01606b28864e5b2d8e98c248f4536b9dfa7f4ed316a17c097b63fcc045dc667d81cde27b0cbb7d28aec7b2a0350788e3e38d71bc54423eb0d33a723b0a34c8fd23c38039ba2aa6bb6a8ed2b26bf9ac33769df44664d221667fb7c4ca239081e2f6b2d55d2db19dc464bb1ca7fbf7d8d77c07bf3afee63717e762197aced8af15877cc37ba48763d8b257f4f86b7d0d69d2285ac4717bc40404f22e1c53ccb55646308a220eb2f078166459f7530904ef6f598025cedf68a2738ce83cea9c6cbbcb6317b7f0db2f3d6e22dfbe60d1f3828b9e037e78a2cfc0f2f7f733d58ac37b90fe322ae08069f030984b50db8838dc6cba7d10f86f23aa9cf941d079db68ef2123bb7dde86d3976e1b9dc0136045e7656fe61b78a3b27ff71727ee91bb733d27f0fdaab15dddc2126ebda4622f0f2c78ff9a7153cea2db4e3b791e839b27552823e268c08033e8c23700192344b114b47cac99a94897fc2b943dccc966ee054696401aac394c5837c15dc51be0264b9f447dbba34075eccad220ec08e96176df3f72ee615c681670911f41dd9bbf9137fbab3f15aa577fa2f19e1b039614d141080aac67aeb5aefa5c40fe59a9833b66001f60090438742a000b8f851f85602f36c7aadb5a1fbc0c0de58cae84eeece5436521d1d0081f256fbb3790baa582332f097e753d238e6b1ae0b48557f3142971572f6d717828a0fa3fc3b0e8cf3269c9a94f7ea5c0471b2813796f458da219ea4b21ea892fe2006e00bdfa58bcada14106e13313b9ae7d35598b92234c7f323cd0e25b3867d886c0de8299d57a5d786898413d83425df27503473fb186f60d252f8f90c3a6d742a58035a7466af61e4cf7415223e00df7d93e3c87e1f704c8c35dbf2113b73d6ae4f1b212d67ff44666f6401241b081c8974e8364057159323afde2f6987e74e5bba5da1e6ee2c418da72d0a1a64206ccbcd8263151ec9b3b318390fb5231d12be9e016f36dba95d72b5f29a19eff29216e36fc6fe1ae11a6a8ec8a5350de5cde09a0fded0eaf37b47d303897d88258aa81935812bfb45e90983145e7d7794a4ab301e2953d93b0bc212124fccaed8b62314e471ccbab59fdbe751a0c425c3f9e22ceed1657b851e580fecd4789fb3c324e85dc0e34509578fed5d45865e5b2ff646b0185d962b12b4779ac6843542e41b122ee99824eb7c5b7023af093927e05dfe6353154e53198229f6911a1a38baebb6a591acec284a4639b4546aef89dccfffa7a66e99dc8479ac56713ca6ad2d0cf6070ea26dd80241f7e7681121babe9a5cc606d54b5cefd16de52ffebcd0c7dc8148ecefec55ce716539010a090db1d580e96fc1779d9cdc53018b79bfc613b76cd0c5c3cc3695ab0e95db32a3b9d5fbbc590ada0cb01866228d149a1ccc6609433a03e2d247bec85815d65e295eefc321c72cc0acf283aa3df9bbdb26914bbf8588a4903a010e43fa818c3e8a18b50825bc26636fd2f4c6db5633aaf3047937024659e375ba3f487f9f7ea4adbfdad73c45afda3fccfc567bed21a43366dd6972ea27f6ba96cfffd4248b7d0c324b0eb082e1628547a53017ce385cf624e73becfbc8bbe13c2f36be8bcc39c376fc714ed262a1662d70a1b023f663b52042d8519cc82bbb5e2df9c78b7db6e9daf4965ba5d9ec4983cfe9a3d60669103e564cac5a1b09fd1552a1db8e2f71321100b7839bfe6d965f264a13903cfb653632e9a23547ae481acf85c18eb18fb854d5529b9dd9c0b9ba6cdefeba9c178025979315471856a565659decc6375617c8ab65f10eb5b0d6ab02673b985922004c45fa5b8885dfa96941bdbf0efefcaaa0ae1c89b38e8c74ea0ea4f356efb14dbb9c70b3923f93513a11ff76b460ec6d94ba93033c513bc8428d30289a0e60f9ae80379b611347a13a5ac201b69b0009bbd980cb112102a20515898e06bac88b89f5e776aa779266db7c86029df7b6b1ed51a2fa2242c033ce0d559b197fbb0327e37bcfb52ed4ec9a097097259c7353319ffca6c110283e8c14c09a7f01e84ac50f2494a1667ff3abbf9407f10a966b681ecaa80d9067fdc73e8f6c5ca7806cdd368412ad454e9c69c299a4d54b7981df79714849a7d497ab5e5814d1a9403c65b994324d2b5c39bf26961c9d4861644e0f760836b84cd64dfce5db9a5ff0ccabd062b1f1cec9463cadb8d100d56dfccef29f090b17e298a7c8b31e772762d76c961e7c4c3682eb8bd7ab03f674c94f1d05ac5d543d33293e920bd1e6a1795d54d30e1ad4ebb249d9615c9249a2388bcd573acb578d3b002aa4ffb5db8a59c0dda05590c200171c5d8924878c568f9b69b8b9b1d34d2a9ee28de925ed4d2fc832c6ae0dfa3eafdb53b0951ba3767cb80e3dfb2b9ed571cf2224a8b8d4d8a572401a0d7a82499ed8bcb7f783c8c1b5c3d7fab10c82ba345ce3eef5a260714b408654b08b37e7c615446c01e30147a2834edc87e0bb27507c69043f61880c3ec63fa7c36395fd2af5623062d494882187f722c274b1a4e6565eced3f19d2a1f554620b3695437e12ac6deb979c3ccccb70685c97571873e3ab39af740e53b04b45fa9149b8b99fc332cb984741394710de4f135f3dc26f2789a78ce069eb28937a660b8fc01404108ec105a0ccce7889325ff00ec8caf05cf9affd79125f28b22101daa5646b1982e3ac92ce17a759fe4dfad5ae90568aedf771ac32a80bd668dfa435378c48185c54ba181703f163dffcf858300978b542305d60a677e4ef59732289279198c9da9fc4dac141d6b1841f44d8e463622bca79dcab260534e66a0d9d67aef811af5bc704afaa41b198748006838d61247b24af4e80a131b6924b25f73974de98ec5401fb168387543c3e6dd805d47335e0ada8b00f2ede9980027532eb34a7d047df5cecb5fbed8eaad8cdb597938d42de5ec696bddc1108438d28dc1fe2c97776ad2d7ca7cdba3c75dab33c756444b830011ecd1a7f357cada49ed9fe64e6149b00450403f691e84761c40333b337d496bc590c8af3ffaea4d10f1aac08d4edb1240cb8eaa4bc476e196fdd7803d92a107fdd0b76f037512a6fb4e05775c82c2745d66adee9ddfc4f588eadab4e4a551988d26082022453a49ac5cb532bf09a951633e5f476027c68a32ec478146d97222a3ad9b01dc8c0b5ac355ac292fb02248d7c3cffaa09bf3c699a5b03be3b4495ba10d9c4536701aac547144149c5df303d206c477b3e617b040d69e074ede3249fabc7beb49ab943141bad3cce703516dc47a24606246eb1e5e2e5bd84e5059472d19338c7e8b1682431d07d78360dd1ddc087a93f387b8fdebc32e8f65bbb220e98e4ec60068ebfb02cdac7fb087b697c7172d4a74df9e3867bb24788965a4140e4f89c9cde9ba25ef58bd72b21e1d9221b5776bda51a0dc0df37eb1d1d0481c77f098fee2d6820788576fe43908f48d5c911849ae1db2daccee6e450890b2b754e0ffc236a42db709fca136c2bb462b03a53657e334606518757c7b76345278432e7892e3a357475de82fbae61774a4a478339481436451b729a927549a024da7bcd29b11acff37bcbc34805abe45fe0f4c463f622c8e66cf9ef58d45d0515a954d8b98e88d529420d09d996196715922b7f3efacb53348214f7d56ec05b63c2591a287f8b9e19ac1e5272b75dce354c9047f6c94f084c5bdeae41f44d53fff34f0edf885db43d77e2b07fa6cc206581c6ffee8388925fdabed704cd4f3ea0d0eaa2917f5fc8eb42721b43be86cff3fc939dc6f25a7c3495a4e6e05dc6f3318aa49c1973f0705cf35bf4dc592c8264cd54cb1a707244fd9e7cdd6a234b628acac16fc9127b5a892aa4eb51e5c2d53a3b041557581993ded21a6daa1f8f1c09ffab852106d035f39d1d18972e0f4ec01f1e729d843f84445b06234b573403f88c168c2daf77a36de69c3118eaff3d17b6bff6890f94d4c7bde05fdb443bb53b3b23984d8c8867c872227ff78eed4ff0641796b47324f77717fa5ab8edf025119cab7070dfaa397af2d4ce269bd61e2792520d6b4ab5764a142194756637249c9622bd7ff172e243d0f082a0af51423df59aa9d24db7b159e9db8c22227005e47db6088b2822c7f0cd0cfc40ca28c804beb8661be8ec8f96e7de3bc7879156af6159df5bfdf1058b4f8bee925cf5b7b4027e77c69e0594e705d2c33dd5d380648642c6e8259567f163c0a082935e7d09b1d4c78b77a2393e7eebfcfc93f38e91fa289223589525c89a84b2ef8f2eb2be27f88d8b2710512a1f06184cbbea7de060f9fb158f789e2df607cd08b5bbb28d1484f82cc1d407baff564db381428389861da191078f2c23e35f1d2d1ee373e9081bca9574fa3384add6c89b0d79afefcfcb23fd2400e60aea6c98c93b1795eea35727cf3e8003de2848ea8744e0760552dbbd19062b1e1ed7122b26bb5432e02298bb0960b99a110ba5e9a942da6fd944f05f819467038fcc5848d4c28393c75e046fc5b85c448a78cdcce2d7ce5cce7ef91526e42d6f9a96c3cdea05d273b6fa1d026f5dfc1cb65c201aad2b4543f3b1b1eacfbfab735e412cdeee7057ce65f3ce9af3765618ac6a93990876e738173fbf2a035290c83dbe4c02097440c671e22b884aa1bc54a98c416225c49c777f640a9091e163fa5d6d6d9aa5bac64c562ecd97b25a2d751aa4e4cbe7acae3c91b679200cd65bc1979efc95bcbb720fa301ab62b704b7ca210acb4add769e1cd1103566f6e8dd97c83faac6efda64cc2c94ed66501fe2560380d5182d555f93d054e04e9c219d7c687e0f0992e6e0ecedac7b55c24c7a1b4755fa19575a6707f2aa48b40bac0cdd04a91730d8fe4815dbb2b2f323b80b3058a2351061098608ea7f6d31cbc17d4dfbbbd3c6e4ee7cffc9652874bf511dadb8e84eeed52e5924d92b6b03707814af07dda878d054070067b339236323525b980fb7df661d5c83fe20e29d9e0ce24af3920caf1ba482625bf4011b4bdd1361d41fc6a57deb9fda965e8a3784b08442ed271237996788f4d0125ac1ba43411737a0b0fe4431d6005485ba62fb7e47707afc1413cd05a94a2f7315e8a17d31517a274d8ebd205af344afbe6e88ba2c410e4a586370c8635f75fe7f606224aac1aa18fb2af5081a214036009f78611e3cb0ede958a1d811ff5dec6c27330edbfbcff50e2d1fc8f13f2d75663aaac497dd9d720dc4e55589684171a547d7992a132bf195007f83c968d10afe5ef30514e778751cd72c9a6d0a109206cc6e5089414588119a21758d4888a17d0161e973da9fd8fad269efe537a00c01b59ea499b9d6fb4f7fbc6d6860a6d469701fc0a7643f916969d7b0c737bc5f44d3bc10228de3114b5357cdf08acd755a5b08e73d7809b59271d6d70aeff098097c942676ed94546957889b1239e7f66f319e08797c81304aea44af0f79bae066a88c331777bb55136eb9f6d3d05e81caf2a76c7eb95e488244ad77cd0b2c1e91d675a6c8c6bb6abcf2abffdb3347831562f0f5e1a6b59ac677fa8179747f982276b22db9088bfd218d1c80bf85507fb8364538e5ce906f14f2c8201b6e3e841a63f4f823c7b33c2e9b6f20e9a995c3a38575c6569555fdcf75c8257619beb8c8e9b0d49e15d1f5287dc2e94599f21af161e9a35e1711fb107d43121862d1c070d786e4066562c87019129e9a6aef9ffcfdc7bf6e9add362f8399821c2aafbabed2ddf3a63e671d827ee3c5997d09b10b1652f0deecd6125acc0a3098d0e3369372228a88577beb8c0f0a9303aaf1333c1638f62eca7ae015943b8a4aade55afecba98719900e70b436d8ef0d670b0a02346c2dea371492e1635de094acf7efbf5b3a85225cd4755bfa59449080b2ae348be47e0deeca10f17d1b565ba3be24786f0956773afb67159e84c94c487327165f70e40378ecbfe115c6b51f574a09be6ef6cc850dab8ba58f10c9ef0b3a60a08bda59fdf19cfaf405d1ea064c0df26802e1d9da809f8c802112403e9480f97dde91e7ac0d5338f7221a0de44fddfcf1ccb07aa64d0bc8d830c73ea10ff27e200ca366158f8f23952308a3fb962a0ce910cbf1730b15904f6e8a7792ae858652885e3e4544164685f21ff7fa0d5afe1b25e4b4c96cc034d0679ca68a28c0e7e830fd5dd45e768882354af835cad092357de7e0d6f5d73b1a33c0a8639446fa49b4fc2c08640e291837bf3cab7933b4ef2f59084309195f8ed5fd5ed4dfa447c5171774559146124d930949cde26e933212b09266c1730420e8a2d40bfcfbc897d18cb2d4e1af1d6df1a7c111260b14f2dce65090bc98b6cf8c2fc2412233c9cec21a81c325b16dbc6c281b283bae0342f374087d0988fba97273bc1e8145d5adac6ce4288adb9eab7728104b40ecae863d8c6b9af4f86ed301c9ba9baa3f89cc8b47a8e0449a3013600abd5bf5f79b3476684d045247c8029ea638c196d28581fca0af5f703492d167a340bdb72ff787ff6a308bced16708ea8a2e8635c6a91b5092afc1d5e89255543d3ca60e9836b374255b30095142c676a99ebb1f27bbef2e8d7771cdb7bc4d2fbe9c985ec52cd60abc7c86822bf714a9c529a9cfa0f6418562affc934aa4323e1453de7c8fd3faae74548ea96e7a1ca4ecffdd3a1632441cfc32b88175ccef07ccb762d591e6e16a8140efd207850dc68da78368ce79cc0cf891f946f7d674e1e19cf7e6af7f0225f15d83f6e46f3ddf6263c419a5679a0cb06e3c92f9f04506ffb9e17d999615689973b9b38d7dbe5314a7d883c519d877a75d5b01d8e54dd4001cf3ed1ae710beb73ba34f73d9fd337e62e20065cf482cec5226ae50ad36239e3f15a43a5db1112ffd677de9633e1e0fc17f7ed20653fbfcef9f152ea02a5bd3d2bc0fe1543bd65eec8e847a9b14ea886dbdf7f2fcaadaae181dce3ac37c7f7fbfd38a01c4b13493dc1c130346c7d7a5003db4d506b1a44a416289348dd119eed9790b5e6883dd3ee1647db967518c73cdff81af99366f9bc5a670bdc71cb6ef363fae44fc49f379952ad33dd6ca7ab5f77bdb3de80815f7152611b6bcd4e2d13eaa8a9abda06bc68f5477ccbe6bb0727979c31fc04e6fb3cf8a446ada1b695ecad5621fcb012f16dea85fc475aafc48985f9a13f313988add42952d21110c1faa66423e938eca1beb777a5fa02eaec9a779e41eada6b4f325b6e85ade83f59a17dcc09a02e209c74395a75cc954175b4ab62de1d8b2dfac00e37e1149227b442f503bd077b320bc0fca93f780a501e481aadf6ed49fd1764612d3ec84761c99378755fb296fb7b1443d766eb7d3561e906d8fa042e5a607510df1ec42c9995341c5deb1b4eca0f725a307d2bbeb7971b400a543f947b76ef55ba3a8510595ecdb922c894185332ff7cbb9d5d1c00e65ed2f758aa2e6217807fa13f4f291c89b97337991f98c4a62ec24d3e1d082e5a33976104d6d203d573b36cf46ed7c9bc105b41e7bbb8feb8691e3ed8b11903b2a7b9cc9d88c44923ecf1026b15c01808aad4d9cd36f7de6d7b396e64a7c499954968ee14a2af2bf56a1c5a199f3947492f8fb21430d11acc4c7d05284bfb2ab8a9ce4e880679dfd30f361a02581dc75b5886931374c4140ce5aa188e1a98ae3d5214d13c459a195f28f6ce02294ceb5e26eb6de30087be6ff7415c337f6cc21fa22d3e1c1ce6541d228dc56606eb602178e1ee2dfdd59f7062172c053f7d09f9df08814fb5a9974143188f18206542bfce2c315b3ba9bc546e7dc46564c0003ba25f66b72c197b2dbda4991016fbd38449c364635173639d30352fd7a83260a5943a6868ba1c244898732a5ee1853504dda095b3385375c497cd6c129b924b3efcf5070eeac739ce0741048dbcdcacf0e8384910074b18c5ffdabecccc6838f7237c5d9cb67741750883042dd81bdb160341529f2c23aa012a6a3ad9def20d09593cfd6490023d825cf2c3b0685a2b16972bd92cdc4a57a53414c3dcf09712392065660d02a47be89dc9f97cff3e73b8d6944595a47289d96c20872925bc220260c5ac029e2662a2b816bcd9f24aa6b416633c45f9085bc2f226767fa904429e778441adbe5651ec75e79afa29b6e3682684004b63fb40ee04cf9e79d05c93adcc65cc2ddcbdc88f80809dca80576fb64ffee6fc41dc19f168d645b029ae08514f6fef2e0ad0652332f006a5bd4b250fa363f31256e3c1e1535a7f5c5b90ec815cf726021c12b6aa1832d6c0ae8080b7c5665db43661360e00da85a64872ba1ebde6a3141fa1164760224fd41720000cec0162f3fdef4fee9052b4d992b031dba50d469daba27aad6ac002ee302a55ef53bcfb4264febb7d3fd980e9b22946f49dc0b5f0622c5aef26b88db8e2469561994d35259e3fd234586cc13fb9efc28bf8c6a53de750522e1746d000a0d5638ae31dedb0205a06ce36efcd35204ec11885bbfd26e46f0e42f2d3c8d80160ef5ba65083db50517d1fb04aa56f1cd7cd1260cb8e6213ec5c713f8d6262c0a595c8a27b9a2af9cfbccb9251f23bacb5c2f7baaba07f6b7c73c3425f56954f8d80f55cced4ddba828276a7768e3c692d4adb2d5f2fb466874211360735a3cdef6dafaf501a36282f703e54c1175291005da94c02cfaae4c9b13d6f690d911f97d502b542315e05e11e86006efe7b31f587bfa01552596aa61d3f0d8dd6eab1e252594634e730d3fd04ba06b891a4d2ea5f970297073a4fa875ce3b43311f33118d9dcb9512d970a2fadfbd8162d712df7bb1e57cf0d4ac4bd57182f24b0e92a08506ee7a2ae388afff3b6e452eebd4e8856d65ccc7861a64f67ea84e0a6ea4682d4d777707ae1c09257e0eade74a8073b6f1f9979d9327bdfb175d26bfa65fa665a4642d87ba536139218deb675810ddb96725ab5c2170e69d1c2f7a56eb772f790312208a7d21c41d7f0cf3d350b18214e2de4f186f84f8c49d23f4ff6f9c2a56c88cd396422001b80f7c38490b24230fa4eba37d958699502b841eb98465e75a566641cf4fce296a8444057d01f043252d03fdcfbf6346e00bb73c781eb4e3a3789c328143d4ae6dfdf57918760a3112840540fe8ec4afce2ca8897c1e4d9403b68c2f386f40bb8090f8c58b9456a1e9c8658f5d89dd23dc0023d640a9237b20eb226398c1b9ba6156cfb56c9ab634de8f04d4a0c4116ef99ae7a976a721ccc225fbfa1862bd0a50c59d70dda392faca646ff5f50874150fd811a7c05d1213b9d8949deec44eea7579a66bea4b36da3b33a66d5d21da205a004a16a82d0f151b79c86874b91489b234048bd245cc2db2def7156c1391077af5a91ad7067dbad16be894ae256e4fdaa280e732a31e84faf6273e57ae9bb5c8db2764caad1180255714fd52c63b048b6e52c09d628601428fc3ac7333c3f5dc90569b1d245422862c08ac9035b740809c607d7cfef7f5ae11924872e7bb4cebfa4188142eea168f3e0f10531ac3cb78e4dd9f8fff7a8600bc6b1df82ae07a246fceead8081c1cee00427faafd97ede58513603c6ba599ea5efd0d1f945092cd44776cb4a37872ca4e35a10fbc808108769b508a52d51265b2aeae14249641a99e4f0e10257ca25b487fe1119c2db1a44df8cc06702e09afc0b907849224580e2417c1a73c3c6cc3738bce40411db99a74b99119fea30f8ccd0825660e7b88fe3453b11d21fbd8207fd138ebff70a30d43a7133c124042a6379b7dc9eb2d89be6e6ef817245f6394d3b42726c05e1400a529f872b14485d335028bd61d550fab576a86072408c50f21ce16a707025f663e777a6e790235394773115e22f66f3177bfa6646f3de6e8b8a743c2357c99b5a67d8e409bcc93553687846ec8f262934a27660936995a02c8b45390031ac1bd470a55e8320acc0ed90570f41244c6cd1352f82d307569aac256a699da6d996d175f8b0ec61c996e25c09ca7dc0ec187923610cce3527a629bd5dd4dc5123e0e6f550b5cec2bf11882e6850d8bcc7e5d4e617f98952032f3aec118d4fbb9563000b1446985347a4cfe7385394b7f4d5aeb905801c120563962fdf023ab5ba79432a82ef0720f1a6ef2f183f57eda60e2fb4132feca0fe3f82d929e090ee4a3176a5b07346d0a8c49429e3196fcda45b0aaa29d567ce5b923592e4f0ea6816f875f71e505dafef830d7230513c3812e18a063115288666cfee6eaa58218ebf9bfec4e351c437ac2ba349211aebbd5f9180da8f452ae5d496a8ac06c8920890e85605785d459bf03f132a64ceb62dd000a8b4400171b3dc650f1016cd402b7d15b071f5198a0fbf6eec757a4f070f7710ed9bdee635b82e824c80855e2d5174d69a5efdbf77ada3dc3c8abe827d6c0b013f8644090ce24c52ed015824fa6bd1216d19e7645aa8378ff2a19b3b150551db2a4feb908f7d99b7434379ea44221aed4711c192fc8682c5ce701af36dec80896d0060663f54c8a38acb16b5097048f4ef90d4411fd1ae72851396cb5f6df83988acccea2f49a313497d24eb24e47de50d094dd5aec5662192ef7f6c5632c9b0601e5d9f88d8b259ef25c275bf32f905a0e9c7020905fc0dfbdd1bdbdf7cee66399cf09848a4b03914be9b38b3bc83a7a940e095760d92a4a8505bfbb1065a3f86132f9a4652efc3710127bd1ca75f677e07bf2153df545abf83e98f839693614c9ed73241e1ed25e96cc9b9af60e83c01492f9739d44838dbba52ad207bc27dc12c0e66042909988b2699eace1815a2e4372ee3394e3e4a3c1f4287814e5e1c8b1e7263cbab7fb428fb4008221474e5c5d1aefd88ef38285af8ad355478a9fb3039f9d4d9b7f662a5231fce4b321117e858e9799d5df5708735e19178c5a21d9f8662c34ccb91549a9af417ed7fb15313da4b2581460e76817dccd22237b43d9558ea81e6e6de5768b7c15c661cd42096439c429d588bf1377bedd173d5b63c34f08bd058879443b1d3a89f080290275d5d538dee105d326bfb14f74c8d72ad7602a1602b5f6145cfa3b2ea4ec5520d17277dcffc6e7b7a7b1b8f7f30eae9b3e3a4a7a81dd724ab75b7fbc47ee1ddb0a0aae14ebe63b1c67b406217e024b0db25a5e18f32dccac7a3b067d0e1e0edfa57d80a80061b69737c69398cef47844744a46b105b340dfdb84561b279a5cb096252b43b1d9ebf3064909b0bc0a5ef6d64adb4031be5de45c0b2edc7da1126f54c8dc216c922328a77f6ed77b1f6815272f7a98440cc337ae71c3f396c016cd1bcec1533ac94d5eb9cdf79b518f39e4d0058ea4792b173f4f8618a4c791e296948c41b0e15b90f9f7b25b31ec705742cbee8695e5c60546df1a2043ba6528ab7d3bd708fc3630c119e2e317c37051149bf6326d5bb4596a6404d23e363fa95472bf7148b1919292be9d03b95be7994856b5b241da1bdfd4ec32f741815989ceb4cf5ebd5ea153c3b2797f3b41bbfd33cfa968ad11e1e6b4694e25e5c98cef62c4c96a4101dfced5cc2e411a8b3e86a77d8fb1fc55ad5518f78a717797bc60aea14ba54daee6cc2410c11a04dd13c79d9c275115a20c711ce99d4f0e35f4b04ba2775dac5bdff58dd889ba00a3c2faeddbb69012d9a9fb1cbae7ba5f9971ad32d6b8b77eda046a396a1b614cd847de028fb07c79046561f69787d263ab891c88b37a80d345c1d476eb91b3f6ff2369291e4334a61b12060870d733de102ccd2d0abdc5a31ac3d1eccad5f77968850d523006e2e7dabd335605af04417328a20c72ac5d9d39331005f92400e6bef9f027742a97711536e9c7c51f54ef4d72f850dd547f8501765b8d11598311ff4a600c6cf22d33a59d0c36166f2d70804974661ca0ba13dcc55ead67dfa3f4d7cb48e93d47a766e8ad399d33f276647ea38009776ea8624ce6ba64a6b9e0b56f48babbfa3be051b7160d02e309c638275470129c34793ba9db6b4946dfb2e6ec5ab030715143fb94cdae2bd989d081070342314800a3ea330ac5a5489590cbce4972432c0cc86a1d3fa302c6e91722cb9b6c61f6b5477dda22d945cad02470f4af12927751072e10580bd85344bfd698dc427530f0a380ab276e0a6107d610de134f1c0d083dbeb315c0b320b25188db0873f145e8f2f857f867ff9fd3434a9646897162757f6100db18cc16b327814260ab0de234a51f9ea8b34979a0c343e164750d30165f1bdff73391d48ae663386d8a3d403f88e2bae6da3a120797677dcda55bd2459512fc72bc49964031979cf9b39eb8b47928756eb8b1fd83b0ee16c545f66bb6e6fc3c87c6ef92bc0691a44a51f9ed42b55bba0b628273e963b5690c10a6b7aefc1223458ae2cf21024adc95cc3b64fb0ed3642f6d562e4c12fd36ed014128aef2c82d03e61a7bb26885d54896b2d1894e62e9391224ff08f4a67754b5af976f7ed56e4cc5c299c10b61c6206d8f249f06f2f8ceedcb5bcbc90af558eba7601d119aecaf5227ecb82950f248defa65fcfb4649b8c8233ef0ea0c1f23edcb049ab7d4a700a184767b5b51413f9e91892eef78d2217f975986e10ccb337767f34e43be4457f78efc7e1cf0b26185db5b7601ed5568f21f330ee0be0935216efa97b8375349f904a8e87a47187d6b0904c42368e1ce9797b3163f119af936a92cca0e60adfa38958eeb291f1d2f7a8b2ce13050fe2dd132cc557232136b96dacc738d346d58080c363afc561dc17837b62376b0ddcc43d06b8fce46f589fa4b48e52767ec1d0c1abe72713ceaa545d0ae64ca5fa47dd21f230ff7e9613230d8907ad62688ae9a42a35fd34fcfdbb465f1141491e40e83196114b8ee99d743f934c36a85a6c526fd3b70943853861ce9778119aebcea249d2d4875dd4accf14b07ba6105d1f300e181503ce5f35d536a50b9a45e3c1f5427b22c6b487a6fff32d34e44596d62173f2e3639fa1a214f0d7a5f4ceeb19386545c1647cc916fa60f59fff1dd701f1a50af55a8b609445349f0fd1780b4b6591c078a849379a93a39c60d0688f6740e90eade1e54f423c4ee102d63c523524e5542378ceb01bc76d0b12c2de7dbd5503a178d1d4620ed319edf34bc6631fcec4c4cf36f346196c622eb6b9874c058d73bc7316b32453e8d869de060c1dc89cd87b2da65e78bf360847efa1e46686c8d94cf9a52fa7022cde930e1664ee01f6da060ac5dcb1d4db9bf2bb37ab85680506db354967b049cb3ed10e7639dbd5ca9c59e1796c425b4612b358981bb845cd50578be4277ec06b485f902013408f4e0b07137a57d2ffc2613cefb657f69fbbdaaba76441c069b048f6ba9825b933fd7c15cc559afa12298797a868978510a2db964aafed28b75540c1c89315296dae6a8211f616bc2c92a4cf94d76dd071256a5717e97dda1125f8829695246d8a5042700e4867869cd4ff2bb6a7cd6aa88411f5f9020c774981d0e4ae9c43d0b0d68f8a6e6176b0c9cc25f771810e9f8f2bf0058493291b4d1b35f8dcb534236f5affdc1b39a616388f309522de0e0f3895f22698b764d27e9c6ef22c9afab8ac083b61e63d26c21df5054a9915b46c749474cb122bcd83a6b465a1cc10e68ea3f88b0c1654483ef1ff43cb8e805fc2c3eee706c99b1cfb9b86d2b817a48afabdfbcdfcad7341db1cb347020a6dcce1f3555bc520e9d02de592436dfa78be85e555175c0564f596debab45da6bde289cda9a730a4cfe80e764b17d50b9e2111c77f736227e68992784d23fb5e572944558d4352b6ee0495e94f96eb914e7e5a8ee0e9b1108f1f2381a67e65ec65d64346c05b94e59910e0f03eeb96dfdd520afc798738f11f69c1a1fbeabdc6077ba53d0f5e2c0bae5e6cf109cc875af0ee78c7da46b57cd8a971d62462a6624b115b5a46389d435fd0d2d4aecd3fd7d40c82a0e95dab153147b158afcba7276a3999570688b85736a0e1e1a77fd4dcbb2eefe5188deeb3188d1365b1ebd0b271f5123193882565af84212d061da9173550abd43597f4fea20a2d26ef999abf18070b1cbdb3772f84cf9cccda83fc103f0cdd569a61d0e40d5b732f9e23d7931fea5b43feacc3fb14b86e111de2516150ae0c9ca24232b596570dafe73422cc8f17eb4e8f8e2f4a57475a099072c579b3ede8a8ebe103db964986bb9fb442d6dd690c8a67cac68dc17c20346d24a260a2e961d5edaab94607a36811e88a392be3ff45ab586e00143fb9aeed0f69a02a9b4ddddb2e47be8d4060190888bbde8262f70cf8cf75d3a67ee128441623e237a3d740c304cb3056a1b4de5d4e93708bb179fa0b65035bf2f08f757a1d0da20758a383e92c9f6ea07764e271fd8a932e5b962eee885ad1fb92774fe0a6e800b5da321f16043aab5ab67d79c8258ea210903c60a3006874ca313a9e791284307a3e71821237996ec4aa8c001ef4613e282a6a3eb2d6aa059e71285e3943f52232c746e9ec2dbd7402a3cb8fcb5d60769369c8cfe939bbba92224b893b022fd23df7a3def948d7a0984f31f3fe152fe035245e5be06ef93f0e67dac62b97b455dbf9b780cf85ec0383e25b15a32533fe1c55abc86ca4681d9ead9411fdd1ed398ff74e08c84d1c737fd9163e06fc642f4a8825aa1fd7bc0ba8a2db2bc2f6218ddd406d662f6b3033ed5106d315a3c00330ab0462716e2b19eeaccbcdaca89f30f7d59c12ae4f045fbb61330d177540eb73f8189b7b213d5e094397fab2e694c7703477d4c2ddf49d3d9bebebb5925c3cd49d5c08df2cb8f1844846466459f033f12f737cfb15f381a3095d0c37cc9ddd6bdf4ee3a5a959b9d74724811219d1455af4a9bf1c712fb85700970c919e5c8651e9426429b4c58aa322e67d8bfbd1126fb99913b49da64c557c227ff96d3e40d32790d6de2eb4dcc85c0ae69bca3fcb8293163c2cdc305b23e95e4075729aa57c7c1251507b51669faeb31db29faba1d4f1f569f3ab635f1ce18fb1f0857d2df3e7f4f04dba75e086fff77eb28303961eefbbeb222454c729826d2a6c3252d47eaa8f4b36533654f36d637776fc547b78e7e4093c3ad137093e973f61a62695726d361d0c8a8b9936aec43b3ed4bc7df63cdd815f0db315282fe8b5057bd4935c962acb27aba1c25274f14c25845d38e17970153657c00384847f2fb31067356b7299b9769de7f1f32211283d97385fe72e184490f4af2faab6c74e3c9cf9064a4e4158364301ff3126e24c8a2a5c2d4d3901706b83404710278155be0bc9c12aca687547512a1bcfd6fcdcfc386c2908864cf7ef05db599163349346bfe6d0ae272e3019654c7e754000519e69d970cf28515dc2542bfc48fd98ad9165fb714fdd47b57084a11537efac96501a03e5eb1437c8c8a51160147829c74166ce4a8214927775d76786af478031f96a313f74c4bb7f958c651aec3f871ac6d256c4298d87fef85d99d49cc31e67fe929c55d32df2af0c2df0da39d7c44c0cd5f1a36ed371fb3a734ec36fe384784adba5a672af38dd93090e18f866346370971638a8f8744b7eb72b2589e4cf555140f417af616ff34b839a02c0e9df23d50567d1cd1e714e1550be5d512da0492bb9f1d703335c68fd6adfd0c674d42bd9e44b2da5b51ed7dfcab61fda019e2dab1da9d34195acc45752e19bdb02a5c99d1d0fffe5be3f63a944a179e20e5e787791988511172de2042439b4135267bc83de8f77e63b1dbdc344b0f79562d4725256328c70d4ea8169d86943c44f34ea475106b971a762b61df99cd1952b221b99447be72c8026db97a27e806e91f48024780209271fa24531ee15b432bc901480d48e63a9b3098a4cbe35ad9e4710665165a92de947ffa0972a9c99c652a0f67ed3717cbe00dfaeb353474fc165dbdfd687f58af1177688399e91c275c8695072336aee0e282a52c1456d76fdef148b7a0e4902d973cb249199e797d89fa86c4c502b5e88527e09610ce77c496869664b139c731539000b183edd3864ac8dfd199033469762f3915a9c3fc81f4e015e208eab181f2e7a57ae2e3481613a846e33382e81c06c0ff2ddb571e251a9bac32801cbcac3fac71542ecbf031cdf2557333f0a6378c9843cbbf0829ea00e054da407aeb6f1c66f53994dd32888a1c921cb06958cd92febefd57b3d2986d3bc753fcf195b97accfc886a6fe50127b241fbc1c008025cc595ad0feeb0023c9041a94693d250f23a94c2353573d5fba166276f1992fb01f3179dc4613a52fe2136c9bf67e27163c942bb2120946bf5fcdfe7a6a9d9a66241f3fdc7bb0ba159ec6e2dc684cf2fc82f68865ef03455c016c9a00bc89bddc7c1dce03e38778163bb7732854e73b5a761218f4c3e4a371628ca2a89888e36fdbdf3d8f50a8afd05a4b80ea70975417d3f7393826dbc540d08eb77f07a2da3db30c1fbb3245496a9b0d8e59ecfe6d066f4cf287d46b9fce2898ac60359286eb5b340910b48a9994f7bbf81d7b4d6b18bc095b36abb7506f88eb52714663e9ed50ce9d92d9ce786de86d19ba277d20492e038572bdb3252886c1ede0ee22a9d7653b3ea0a7c24ffbaa2e2e8d22d1493d5bff78932df4d0e4ddc5684d24fbfb63085d002e29da7f84bf0d38ce014049767f5503b03c5f98ae6ea8ef367d5ecd7382225c113b2e5030956c8cf83200e34699e1816516a8eda9dc436709c0564d08880583d407c0f19454b922bd7674d2b0ac2211b9707bc6d737eb6a5daa43f53b32e52784ab74032297a149407d68d468e51d98f700bb431afe2889d08ecfe277a1a0520ba97f6ffa4cd6259195b55e3c9c297175293b461d7257fe0d84e8bf80653de6f012b238532674aab5f0f33dcf5104ca83f4d57edf951261fbbcd07f6e7889b156aa695c9d5fb9154b26b5d1e38a0619ee6931e25ca8e3aef0b18b6e9051e99f1480b767065bd849f67d35e7433090d3fd22ea042dc71408f87f2647b312a0be82182c4383a3777c26f7d553bec27290d39387d43fbe1bf130b84914911df6963a9009c454072f734857e47aef0eeb88b71e37a3cae42a94fc94fed517ce6ca2d57f3374d1fd6ff33714632e7a59a84a6e83908b1348f411f6171e6df435251443df8025adafca4d5f789ca4a9fa7bcba1b9f534a6c6f340fb287c5e7ad5cf13d1634ee182f1d202beb1e7dc038c1d652de7e66e35520cabbcb1847d76b849aa0de2bcddfa90edac3881173648cb1bf116b028eb0149c9d49cb2ef742af9f46b747c57e0e9969035813623c949155b012e0977cf5c53f9e95a489b756dacf97ee597e5221c95bcf5f1ba041b9d4448068695bcb0112343e1ff532588f83d076bb90e707ecd0870eb6c94e20c665a0959688e41324d4088b2bdd2765caa5bf436818c6c6d851df07ad34b994087be93e9c59e9a58183442567cb8904c7dc0569cd6ba90868e5fbc90c619782004ba6d644c1913a820050393ff7aee2528a6b72b30869b99321ee27148962334329470931a41a997a663029e079527bab8bb027a67d97d8ba7c62d0e303e6ea224bde698407d2078fcc77e93fc687a7122513ca1950066881c43cba05c1b5d3cd799aba1488a9a20cf7be7640b06e66383dd5b828be3a4ade25f7e586c5781ff65f87247589420d1ebd7b1538c8c18b8553b7d38f8c0460f73443b8486f759a0854b686f5d166ba28c9cdae039ae123ad22d6f09f095dcb6f4b86886a20921dd6b6df55e4fb08f580807118dff9a03118547b0583d2ed2564f26181e9c281d7557f54f6ce1d01bb3c58dbd620955aa7ffc17a5af81e35e0a6e275fdbbc44fae3b7e7be07874c09883a9e1f652961fc90c32f402f09f3202b0c77047357d09ed55b5b3bf14c579fb7d9e4aa87d50e0611159785605c735b82aa39cf76e5ab3b6f7f4e8788e83fe2e38508dc810d5d81ab2a41b394c68d2293989848fe0f153495663c124980821c2ab3a9888857ab8df8947dab9db2525dff1874295385acf2ce0cb44e0787f505e07ffb1e7711e5b3733fc5c94db2e975d680f6e037b9b798d28caacd04ed90d039d590e3285847919467bd6138502f757adf6c9f032cf7fb0ce3b1288154347b86ea0d3febbfbe184788c36b1873776d903c833effe4570745790606f152a1e964b427d20013420730fe263657273f04be0a2f7c9238733fb76c6fc6ba5b3035bb0fcc68d5638c80f7b77a5ff79e60d57a02bfe7ec3bc897f6cdaabef4a6ec1340e487a15a7c8b5dc5bd6b1d3d58a86eabd503a9a5e568b7b982ae4c0457c1becbafad13919b5a1ebbc00e794d74566766601b19419420dae0f235cea60e14ac0a1e2a047c936a9d2b2a9490aa37460473eb1a86bb6ccf2768a414db2ba1aed17972933b3e8e04cd56c1e7e2405e276e9133dcf8626ddf91f000e7f3dbb96f777c4504e5c41398f032c748ce1a600e39f130793dc09e04b6ec1289e71a5a3c21edb6093e16a7c0b15ad85075c724f22f32e6208d9a87b3f50c34c0435e4fc85c4198a86d405ed6e7c83790286b889e23767e2c0e94afb088b1668b4805c2eb684f54cfec8e0ca9a53b013bfb60ff528e5b50095d6e5c0003a977a8d25bbb068f2fc4375f30323467acf92be30ce5810ea3ff35edd54581728baf84ae2193783736e42650aa6dabb538cb6a22d9f5efb74ee430ba0a37e7b742b89f79224c60efe163699d4ccea2e8ce2605ec9a6c5143b683dfcda23c0cfcf849c7d3a497a98a22a68d9688612f19d46271f01619693cd62047fa867318fa17add575c624e68b36c29b2b1aa00c17730c9159ba0da86e68687a67cd3143be5920ae7a1ac602a00f7b0bda292ea958241e11238fb40e46c26e653da7099b19d9268017d2971705c86dbf71e23a1395f16c72a5466d35c4fc2c95e6f6205df62c43f9887e98ed65310a946a25477a4439fe559ab12b6aa4448812f120d6c2801a0e4c1ade09d68aea505a71b94413ac6e7a96c5d875c21bb4e881abaf169fd6da4c8223105c5e26902f83458851ea0c23be27920b3857bbb60abd13492ec5f1c292538670b1ff549a2eb5331e49508948527005fbede7a962887e6c3b2fa5a096c49bc8b87f3e250a24d4d3f422cd442e8f675e3540af8cd8f43a23290a62149ab1ef018d36f85127eb6fb469c3180819bbede1372e17f86459919ef8ea2d6fedc1baa504e6a107f810b442b95144dfe48ee868d053d467ceafb7214b8d15a1c35bd238dd3f7a03c4ffb218a183ccc477ddb4f73d387691d3530f60c7572b2656ea29cd65656c9b5c144a3326c24ad4ed4a1392bbeb38acbc3d462f90cc411286e4fd3bb03e72c105eb303d6ef9c83ba1ae1ba9c395bac64f945e76272451559aa1159be8eb1fd419f6d60c832fb589d2605b18bf5b2ab036c007c7ed60f2557d716886d3725411308ef607e29ddbc021de36588519bd972f871c8aa7fd343c9383a44d4a719d8c39d47ef3b6b93e05f2b540b4701a14d5ec1ac78a308fd082fdebb1a9377a3ce60798646c9acde1992e665c44aa29a2265890da83faa3f7016826fb2e6578188dbcb2ff470e426430204b65995683d6730c1ceeceeb7d5e81233f999a4ad074f0c7b2b27f2a2ec64eadcf252e30490c3cb7f9fe631d15c687b1a10cc60f3d9833697e90523a0fa1d7df8e1f919665643f53840f0ed4dbc5fd251e5965a3391cf577d7793914babb005abe07fff499036a6ba6e866d1546968310969d7ff900583fa87c679e408a604e2146a428981b1f42f54b63b54ee5d3ad00c63632fd10524235150e53c21979951685a4eabc4ad0177c3e07f2803f2b097c38f5ebd2b1ec6bf0237d7486c8ad7c9a0d9ea478de95d14de096ed9cd43168f0c3a98af932fe60e7f0850b8cab88a710ca09aca9ce4105f30dbecb3fcf58f5653089138188a4d9889731bc10eab8c47a56c6233c1135ed1911fd4088325e95b624169efce3faaabf89d79252446cda52d2629d38dc3509fd8f6cfdd4f25d530e9f28bd728d269a7614715362fa658122227654ba2c232d0ab03e4a1e741597eb1fc920f6364b07bca44a68b901146cbe38dbb8d41ff46a256a6e9e5b4bab3fd75f90a255c51d1fe659516dc24fae3f1e203bbbdbf09c2dc80e8170638a9f383f423804883491ad99026e010cc0898b1ab8e76d0217ea0bf119e1e159c18234603ccee74433e4f31fd318cae5c2a99cd99d471e890d6f1569a32ada0df518b47dcada4bdb4bb4e5046f4bf6dddd8923e68bd7502446f680c7b6682bef672e3c52c373af1aa65ed1982e29e54df234be2b117f5a1e7d6f09d9dc72bc8fee57304af962518ca10a2dbb4e921d85b4386747a3bdd198a21735b0c44cd44e3323f0a35abfb65c7488e71aea878a801450381e6323e1a10ba13338cb1c98ff7f1d39875817b1f3fd4aed6517b251d1680f609be6ce5320737c6643678e6e5722e8c304579ae8cb372d5f9a3f1c301b76b3190d8abe2653a2233585d9dc3c4f04a96155db15b5124a297cc329bfb4d1134974e525c50335ff3a3a8c24c4cbe1c58b30d2ebf52217103a4bffa48a996ffe911c360d9e43c64d052bd1bcc12d7171e529ba5d97716b5831acbea7fe2a1e3e41239b68e25a27e6ea00132a0d4b1a2d481d9aff2f49a6487c9254059db61cc935a8d0b7dcb7555e593cf5737f0f570c7ca5b550d9312d6f749a5d7158033c60a3162226650ce328538f8db5d340e02688548de4e77ea33532dc6cceeb89d4c2566db1deec2dc735f9ea8670bad99c483527241a063bcf3abc55cd8c7d644eb6a9517fabd835780ac09e62578ffaa5a55816746e00a3b3989050b24965ca57bc17a74c63ae77a2459cf4bc7d6ddc77547238d179fde8ed3d5e21d95d28d775e8255c58687970105b1ee37abf36cc78002f2ec2e1ea09059b3ad917b82c86c8b4084c2bc021b8491e11f692232317fad966fbb87e168631451f9b3c556a68fb785fd9c0818c605952680d57700d963fba8f0b24cd6a33420afac640dc719706d47a78bb9b7d9b0d2bd126890eed73354dc2096314f01f726f41adbfe24a9fb7b0b370dd50bfe2c566bc0dc91c2f89c4fb71503320f044a52e3a5435eb67b4f6be7641d1f4817de5d846a1edd8abb8f8aa4117e86d768d87674de2d553bc0b80bba174e7e08cc2631f270cb900976e0522353bf8f6fe05c9763a7e6f66a6ce026654cfd2315a5a71ee085014b823cfc5ae024e953319c45948f0d2c35c15bdf713b8ad654577ef4626e3803a0c30dea7543133dd965c05b0f1275fb22a37ded1c9b54c3c776f0e59bfc54613dde321c207a7b3ef52e0d11ba16b98b6760f58cc08ea32b5d499648194b3d8c3df65aaa14388f12d2ffa19e8447e12625416b6049cacd5f2a673984fbf60341ed8015852e00539ad4118b7075c67e2b0bfe4f49724802638fd7b8430dd1afa30f1e8b96dee69849dba37060a4650cefee357a7f750efed379e954ebf1207055701d52bff7a307227f126b544ed5978ea8d2f0d5f1f564f49ad7f8c1b06d84a1ed070801f1b0b88dfd17eb3f6fdc3c7f9d55d45e0db0553a13caa94210f2bf20d365deacaab96bf009585f257b7ab0b187d19ff3fe9a50fa6c76a0020eabd38c68c82fffbabc07221fcb2343cfb84841513fd533a0aa4e89087a8124929bec55046d1b6306b79c7fc2819a024f10af699c9a849c7901d81f44f94754960d6eb46093946095b12af2f5486fc2f2ba1b689bed263e01f0cf83e485c7c77f347962f0c0cf5570b9163ad8bca1e121c31f9d3550a2a888a11618964d99400b2eddbd1928a31eb87630957090233927b67f663c42af57a925d2a675669d7beec1b0ebe05097792848c19966a0a95210277ffdba6e03a09c599006b02c049fff4dd91823b2c68919b664c6bb8ad98549cb51a0b164dd7502699d93eae0767886ededc3bf3cf0385603f68d2aedce6514712c4b7f4862ece6db840a1e8cb82274d4dd47c8f7e8c2a2512f3a3d0e0b0f547926464080f5056effd268b82a528064418d7b50002b2d81f0a1fa8de8e9d1b2c6b0b4da873c89ec19c1ca62ca430c330fd78c2a49b2c9d816656960708a9af6958c3c234eecc7775d2b3fce6bd8bacb3e12015373483b772e7212667cb309ab4a604e993d788f7e0a9e7347f84adb131e421537c275428dd18dfcd06cad452816fe5ccbbd6ce42793d2474989c0adbbed0dc53e2ba04bfcc71e4634cf65487a86f8f339c3eca471c7e500ef1ed5975f7ae185a395ac44d06be38c8b9b0e85e95b9d4692fd34a314db1f27e5f0706adf94ac2fd2a6ba5e207d69dfa9dffd12a2348928d009c82a64bfc3c9f6c9f86c05313804674fb9aacfdfaf179662df654c16e16a694ccd1e1caf5c402b9a3a7753bf57202d7e68632342b4af95a31bf894743f4705a33a4cbc71fd5b9854b295f76798250a2128786322be05d5691a59eb2892425952bc15ebaf67abd57e96a5a86a8220cda68d0b267fb5873ec971b44418c3e568cd6cb0d7bb7747ae336c9aa0706250ff32bd60b2b53cf59d255bb57309e0823706c3c165d45e8215f3f209ccea6c5e5e0ba5a39f31d90f18ec666fec4c2ffa849aed173bb1efc181bd26f68d5f2b6117430a18016c16d6159cdf830c931146300eeb5f2816e6e52ce9c92317f1c983af44ecd8b4f778643e7c5c4a2d94da479ed8b42e319bf90bf01269ea83d56e0b16751880aec8bf51f6f10853abdeb839f1ce2dcf53001868505ff0928acc0c02f43c008098e243ffa8b00db238530c8593e202e1dc051472974709c603f0a79f8abfff235aede64f5af612c097a3429ff2acfa287f6488b5b41da970faa1a54b2007eb0db13866aeebf5d68028dcafd319845f114cb10c6cb63d7717a3996d85536edfa7d47942321d59501e5719e93b30242164fec4276dec3ae825aacac0162eea82e790472a4f860d97b4c3b999876a14c4ddfbefc9f74a48ea5ac75a4dbeaf631a3d032323f0451630cc177055ff2db33fbe6d37302832e46aca47ed9eab3b2cae281a90dac8d03ca94a7157dac83b4af1f7368232d944df072acd328f759aa180896ebe7bf727b525bc83717c7e4e23997deae2a6ece223fb932ff6c211122db08d2ac447067306d9d85a32078c5e48a919c9423beb7ced12f762510e92507e14e3dcf880e0e4943e354acbb0f6ece5ac39cb8f1da64c24995d4092d9121dc40eeed6650767ff2dba7174fdb75bdc46d00d30a4075b4e80cd28114783b442acaea93ea6eacb084ee6a5c7639a430a23ddaac40d47c2ffc7cf8698ff458afaf5767ddb41861913f1be7e06aa00ef68b1cbde9c0699c728b5e954c44f0cb1133828477cda331a908da2e28bdc77a453b418d714bd80b0affd09067971132c025cc79b43ba80392070e7a9d2575d4756021b0e52754ff04ed004e44b5075f54a90573f994c1c0640532c027e029f30babbad6d28cf695aa4b68af7976aa1fb02c90dbbfb176e19d3fa4088458fad2b8a522efeb385c7a3c99559b0827760407044ed9e7054981c9dc5b4345766987bb4a58ebf5e04484640b1a8f6d1a7347f7c40d4eed99f5471cc9e89673579e38a8884bbf974483c7590ffc37a211b8df3561f81d9181b70f50514aeaf97a2568f7f490e10340453947cf5d7466ae38ec90218306f571400c27879e616e822e3697a04bd6ec46955c9d9e28affb403095ceaa6e3417608141da126cc4d9291892c00939040c665ef7f6b4afec84800fd38f30048cb8bb52972b0832e0e3e0fee45aff68226f1d02609d8023df7f446a8939e3d8959c9e275a27e48fc3f61f84d98c09683fa20114ec578d338a19fb7e1173eaa54a4c1a17242956b7a7974187a7452500daf8cac50f5fe841f89b9a2a1e246b456a1d2cb0d3cc25ff2d22cdfef90ec78df8a95979253610594cc321a8cba7a346b40f37e1f163d44f6ccda5ca9ee54f169705c3cc137331d487e667d622e41db7f1f8b3eb9e869c5ea07505604c5760840ea74e405caa94b9d6216c4bc8df6339f998db1db62d538335344dee4edd2c53712a17c242c986557679464dc66916e28e2bbd0df2f91f3a1d264d101c59df0f710d43fb61e0f7b08ffbd8ae46c9b335e891b254b607ac0159685152f69efbce9bc87575701f48006496ef16dcece4fc2d57366076166f4dec95d57deb9f29fa991522ab906de635451e3548a5f44d8ddaa8af105ef64275fa2c3ffb8731b164ebf3343a62324392a27ebe45740fbb0a821420ee21aa78d2ddb8187daddef1731896a620cc47961e7398a7f3dac576682dbda17c2d9b46d4f72ee079b10c95632394bb8002bc664ab29aac06a1932b6ead0df2daf10dcc430129266c97e9c30d5b7a7014b14fb717672c8c3477ef9f68eb82e07c2d1a816c6cc1153f5aef3bea6f050afac7b6a4e64389741cc8d73853b7df3b565a733feb6d975297c6e05e46c85a63931f0b1ee2e8c43fa8fd3df4c167311b49505cdaa237c8d0ddfc18ccb04f1904a454e969987321b5d41da685b9264f20187b05bf201892bf4a10c3448e0e851c01706d7bfee8c8b150e8ec1db68653ca7079db6c9eb905c10a9edd6ff47dd709c85f003f74f3b86df38b77b7ddf88d4742e7c0ed465275ea330e216499e4761fba314b94074717293844fc35a80b446e8271e3900214ba39f8090cc4e6d6656cfed29d0eab160b74b9ea6f582d8fe2b0f88ec1341ba68f2d54f8128571a610493590a23b4885b57f32173d4e09eab509f73028696ebeec6dee7148d1568b9a05876f8dab370ec6a88b47de6a372d972f96c45ea24803d5046c20955bd29410ba3cd3875cdc9f4e59de84a6f7bfcd212cd51a3b4fa7b19c5d8dc754e8839664681e681db0d3e982f14c0ab3a8e3d18e374430e87963975f444a6b34f755f96ad94c13643d321946047e6876a73d2d18de664b6f6db3091f112f5e072c2e2268712a7bd9fdc3b5ff87b2f6e9f7932243bf66c6091f0437a8305fc818a51f7329dfe365c702a530f169e792d5e3c327bfd29e6c7cd3f3dd3eefd7b5092628901cbf6bb50d9e15b109ff6ef3e322350a26451dd2e68b6c47a19cedf5eef70224db6951195ba9dd414b9dd13f57337189b1f746807a3972b5d222456237f62450c839f9a438ea388155345f643d1cd4ea4fd9a29dae98d5f32a2b44041a3cdcb00ef253d0f86eed1050dec0dd27d20168c0ebb09e6f61e3b9a44157bc373c1931cb4447f29ba929bf8b9a0946b4cff9a47b764c329c173a7981e6aa1d7fc2229e95741147fd085688502514a4e50f7b5da247a87f3b9c0fba3409b0d8a1be10bb39df8247d3642ee5d4c35c311a486b1fd86db414f9f84f758892f583702b0e6e1f766c541011d45f0740429a9edb2ce25db9cc822e4833bf174f0ec0310c4c0cf11537dce7f817e5b4d6f95698b8477a02f5fede90a9981ab07b0bf91c35a3942d57f6ef558b9cbc8d81666057cf6cca48525a7ed4ade9c590b20ed4674c0fffc8e2b5a00d41a01b4a28065df6029a33c63f1d0e23dd9456ca05aabfaaad505b90b33469c5c0f3bd98a8444b1143e62e4f84b1a732d69a34b02e9306b95dedf3162b96e861b53dce8d13fdc1e2b9eda7af1d8fc8592783a0ff93eb5e01783239650dcd692b173ba4bfc0d83f43b426db2463076311780c528486a0db66d9ef5270c2760df676c224dcf1b3fd96442ea2b195119a24ea49a633493b3aafa3dcfccc5534584c932116315361708e34f6d91375d93b3dc776e508000125468833ee2c2740dd180c90d7f4a6ba9ce4ffd1a8821efdce90cf1b9cc29f24c6112205b22a686dcabe47adff461b63b344dcada9457ee6b6d78f019950a0f269e36e9655fc563a4bf19ad0f81b72c5d9abd121bf6050cd994320a88b07da0a330be2c8af420f68aa2ce8d9cdfc59bebd5aab0fc0c5ec3451fd72a7ad1a7e05824ce75714c975057d919d59f337db8b8440085c9cfeb35050942c9da0923a62ca25566d0097520279fbd4066bb061044ed3a91b6702e61378fbcb6053adc41866760cea48a606bd568b55a5e8690b379e269684344e20db4aab8aa29b9c723e03a0963934d1466bba49ee8b574dba198a7067dbecf624049f55185c2095175c5eb83f47aa4739ced12b787937b194dafb6c25c4a092f9af43068dd4e5f70ca4cd008b12e2e0f862d571f04526a50860cce58b4fa37610b0549a7dcf5610b3f11eda83f49f8a6dc90dde81b4a5c41c08830217a189af7aad7b629b4a709c2bded07c4af991380766bbdbe444ce11594ddb38908a4323b711689726ace186390e87c1dca8d2b54d2670d1d4616549c0d2896d272f739418bf1cbfaa3ed1aad3d0e014cb566bd36a4a9da2a30615ca34ff34a7018792f7061691973406f66fafb5206eb2871c9982ac7a5d2aae25d21660b282ef90706f8445d4c14bf0f050683ff6ef13dd4df3f1ac2ba574b6c6acc32107da997490e134003caab46dd6e3cd31b46e2d9b38aebfdeef120e80a9a5862e43ebd4cbedcc759c408491310982b1115616a8c44fb38d4eb94759d1d77887d2cf62ac67dda3e92fd0907d826542028c7b4cf57583fe7140f8bd61865617934a17ac686e2080bab340cebe9ac4e4a1e0a2421e671ba489b69f9cb80b5cda559f50948e5ab715509bba578c229655143cfea7466977f591979685dc9496a8e7c083f4bead9e3efafa8db7aebac83a6406a0b0180c603e3b20fb10f58d265b2fc4f2676791dc5cae8795cbb8e798f77c0a845fb9d48dceb566cc381e825ff0edd9783bb5a9ba2b637b8e76339dbf1b28f3d5dfde01371e64e1e9ca585453c8476b994f4d39c4484810e3fde3481ce2012e6db4be817ceb9136fcc25feb6a72f9482be65e956954802c41fb65324fbee8f49de0829bb8900a4aa8e19b3673950af3b57e37ecb313f6a23760974a44b7e7048470fbd2e00084a5c6d03b092db803169f8f837a434640b53a3b28ba887861f16d0bbb94ca561c00efd1d4bb6304cdb7769eb1e03aa72bd70294de70e773912a7302b3341fc066c76362812bc844568d33877a032026333027b328fab22731dcc639b1166e5479941666b2d37c63297438a274dc3496044d0b814316e6f7c2781797bb051bec37180baf16fe531f9cb955b5280845996a3f7ff4626126af253917859a67c1b1a925a85372035ac091a82d9aa77cd3a094128ca618bc35b40c0911bbf4341c8815e2c07b601fa8bbd3be321232464318b3781081c31b08411de8fa0d77c95db16fcba2d1b14c97f3c13d5f766a3517369bfa3906a22e9127c98a2427e0f13f330c3206c9ffb89dc27a2222360503d44e708992c5a5ee4e663612992f557c00ce5f364d7e47c3d1e29756f7933e550c8e9805fdfb80e52d16d51b03be18f2ca07e6e64ffdb929cc7dc73fc37249d1b9a12a7498324583f8c8d8830571b84a92d913f6abdc45c7ab27b2eaedb3382a3a81128b6281c199cb737bf17c09f77e4e9eb6080f34f268109eb9863b4d2a4de274140e1e1b8501e30f1784afdd46fd3b4ab89fd0fdb5097b0113d3b8cdc3cadfcba1f4fd33a0466d4aea11afd2f5d713ee6cdd55cb274d2817798ecfbcbf9fb92bb81caf20dff4dda9ad912c06b74282a098551ee15454102055d0c6e9417fe2565458ee00e96549d1ee117f775a2162aa5330c1157394bd1edb2c4bd005e3497a33b64dddc18b43d91cd25f6fc65047b85948a466916447df0b348262d5a910093410f915a612242bc44f29f52f86f2536d1969ca387ac19b3a7cc9bd30d4126d1ca7c774ec802c01a3b776124dfe34be83d47b07ef1eb7c959bfa92632cc3af076291cdbb279438191b9461adc1dd5cb4ecfab1c5de2ef7fe2d5d6063ed464183f8cd898305db4bf03ec3c7b461080e73d00463577077f81b6c0ad3ce7fbced65885018e02ef76be558da7b39ad802c77101ebc7ad01e18d219434d5b48368624fa4138f170bb4762fb7ca873395f142d3e6502591adf04708ac443b5da9df915a8ee0f018dbad6eec380ca37e665a1bd1ef6dc5a94122bd0469fff702769ad79494af71cc6445aa15fbf4ff1fa14af772b80e1201d72c083c6ea59b44d97b193cc135698987277a211894dba621e86b096a18a53c7af161b962f93d3ca830e76d0a92b8615d92f8cfa0f445e3149547f5252b12f3d5bbe50b415239fd851e274fdc8b1fd80039e9ac468eb2fe0e3ee3a4ca179dcde6736a1e894f093bf73e384a03f00db307cb6c006757e89aea74c37d0e0fb4de853ade177b3ecbc66e72d6088054eafd69fcb7f3223b1f20a318465b7501552d0a135ea84fa46954d681678053fa7bd2e2a102e3cd0c940f021f8ce8647df14f25d7d3954d9be329a6161718ae0c757173126b186ed7939a5cacfb358a3c56842dd785e665747abe132589b8b1c3928936d13b41de3e2effa0fb64204f7b398f6fec3205641944be1add248bc54925f96b4156dfb6af6b8b6bb4cbe957f8aadd8cee7a777d8cc68cb92c33dac483b27409c374589d742e87b51ee6f1de42d3e444df8cade6a3ab1e28a8241723c017fd6cda0e0e20819c305b4ae901c964157e5764d90661a1c03668fc529808aa3df639485e4e25983986942643387cbc0949778d4402b944a36d01ce8b38aed752b35f4dc768f253801a5b8396bb63a9a7f446d6face86d5c7414ed43ef21667eba68e72c11469a9f2f8653bb3c8d29e3fd72363878dbefd6eca865fddf1c10489b7299486561b14865165a65d16c698914bf211e0e9efd86a89c648d1377195fd7822ea617db58a471b354b4d35912da2e06a67bc1816d5e0250ec4eadeac40da6a4e4a171d21a3cf87c455ed1a373b306f50dff3161fb6baa5709f718a095e584d076bfb2e6829ecfa6b8baa37a1d9873aec623cd65b18129ee925adb18ba30bdb03557cb0980b616241f9a63ea0df6addb7c7244422a0c06b555f82a6fb79eb2d30684fc2ed9b8f21f5716af0575483ea298ff708a32c455ebe285d9e4d2f1ace3b3609632e61d50a1ee8c61031f11d7ea05d328d28924053fd619edbcc51516152c1d6dea2fbdf2a85dae45ecfac67b5cb2d0b35ce8a342609dfca337696c4ecb391f75ed450edf65c709c16d4906605f3988c9a074963608ba243e417514a182dc9b495de92012af085cc660c86c673d81a6a64fc37c72e9e2502ee3985194aff598810c7198735a543b5e8a28b44b2d78ad6c958a42c720414d275ada00d4077ff6b994d4af9f936a89dc4916ed8c32501e4cd122fc6163bb3a65e93f4e906b41f707acf41a5a62d6090b35c4a177a72f0f169c9cbac3a3106672e5e64563647fb8ee2407b16765c8544966325d933910298bdf21c5195512f3e2ff40fd542ce1e55ee566b2580ebac4ac9d62f02beb2ea2b84fdda035571c1048009c6fc2d7ddf80c552450360e0c9f88586c25271a4637a6e3f8153fd0483e964222023aa9d60a35db59a35097b043c89fcca2d7ae93bd327fe8c0bbfe386d1829d9e32eb4996dcd19f6359047c4bd39f328c57f444704f85390edefcf9f4309d2d7e528312ae1d6cb1ab42f216d2f53bd678d7ec3c8c0938c438b9af2a6bbd67365329ab8502d11c4063ab173a884f01e2e2b6d34e4a2e3ac96e57ec5d6b35e2954133b680e8cab85b55f717fd0c6b6d12430e9d32b5264937dbd7cd4fbdf667e0fa205f6c33f29002af1ed0d098426078619f53d14761f1f9275cd5a5511533fb62242a30dc3db4db2bac34f14d18cfaab75e7d66086f43dfe7924ac441b376ecad797ad61d6b22250309de12c63200498e6a5d9a53175440eaf37e89753694753bdfb8e1659e895e1977c1f5d9f59bf502569658f34193969ae4e390d3b3f60b3634e3a26a6a64454ace79bf03a1663d96d0cfd8de5f9cc24e3f86fcd4d163788bcd62ab32385e890b431c8d58efbddb80c8010b9f2a1f2426e2a4b29be5abc32d2cbcbb1eeeaeae07680c062e79dbb590bb205ad65746ae134a735718f1c7b39e81b9ab004b5ce3d6d7814a927accde8d1887bbb1ce657e020d9ff86cebbd9d63989383f201694a44686e12860bc1eb5ed3bc316c372a7df112d087e385579f9f2ddf2f847cc5654a3cb60c4e078025049dc1e82dfcab1f21898d401566a149aa96e5a9d1eca44e5a75d476e03d103fbd85d72893ad1178769c36b492f5130bac6c21be985a9e613f50b70cf37a8f49ffbd322e1ec814d82d05f0ded286ecc65b5433bef6e4f5c0d7b0d0a8dba1041946c0639592f6845cdc0e21ed595dde6c149ffc781c299d0efba2f222c31ef106fc7c80495c331bbac9e72a2d210133d4b7b8de7347b05f4d19d7c11bac17e6d50af44156045fb775173b4c5b871bbba15c556b821a4f481731cf322c1ef3f9be86718e964d02ca73b2ee1f74ba3ff73e4b5f1ddca883bbedf73f0f6ac798cb360408f22ffe50e5ea58101bdfa8287f866f923e31254d373c694bb0f506375af5ee639536bf7c06bb8b0edbf3e69d2b173d8e447ac24326b02bcc9634cef067d41a3dc79b2d8914376891d2b74f6473cad859a8e79956dfe87abfb86257b0b4644c5333fb399a3286a7a93dba701c5d5ab9b28e543958c1d879df1dbf9ce80c221900f9eb20443cb427046fb23e709b6fb940610607de1be8ef93dd38b617e328f44711cc9f8b84360732bc1ce8c13e8ccd7e23bb07626f78c130bed9105880bd7388e4c002038404ffc159376fc6691428cf13fbcae0361c093fdb69385fca4fa3ebabe4c0056879cf84332eac5ff5490c0fad6d20e4e53bf70d6f86a77ee6cc4d838eb9649f698c47020de7fb120a8fc7d065712e1c59ccae9ecc11999357897e25dc7753e32170949aeb61b455a25cc0f7c146c9afa84d3c216c9eff29c120815e7a5571c5095e08cf4cfc5bdad750568506611bc9aae5de0a286f38d353910d21fb67458c45a390c156c4c36461e058a3323f5ea5afed07a2d2b7d617ed92f76d561f3a2c90de82ba421e782379261b4ce4462fad518d5c2da511154c8af434b7cdd254f83b042b3882fac446f896f2222422cb1a6d5bf3766947071f223d682844676d5003a7068bed19b79ed37a922e7b445965f6fcb094ac05b6be0221f6f08cad5a872019fcfc8de756ae29c54b826b9f2d5f0e91bced4e855f88a8114d4d9314cbab57fb46d3ce3b2d8815788bc1313d1dcdd49479ca76fba25ced447e7bc731b01e73a0c808e1a9720bbc3ba16ac2d1003d049254c330940164ae1953150ce227007b9831da18b3ba2b931f1a234d1da6a9f23933f3c75d781dea8780c9c6bfc976a99493d28be0019bf13c21c2797a4bb627faef12a4d764ddc48c4582afc22dd22f582f3838b9569f7707b15edd6b67c3197ff71db30185091bda2148d5d120cb217ba527971b8eeaf0bcdd6c7cb07d1598e337a76fdabb9127d5b671719867771f654736dd0ba54573d8c6c232bd3bde8c0ac98447f023a915b410c4219b02ce234d5d98cc4b7a0f26aad4223594274bbd76022487f222588b441bb1614cf7d29a310f7677924c5c10544e8b5a0b87c4f54f896ac573839e3ae74b3856c8ff2d4e77591e633f8aa0b88e228af34632c5b5b5e7895bba884826b93a15867aaeec7b0bd99b05903639a8c868320f1f64653542ae9dc9acf3bd8afe677ae44479d7bd6f018c4e4a519cfb788f1eb94d8198893c3b41502c15cc3bf3620729022f9c004a5dcf4238b97329ae27af347b0530a0a5ffa1bc325f34a20327010e1c260a35dc5fd130316374eb5a4cc245ffe4304e54a48658654bb9e5936aef86049e14afacce6f00526515d2a1a162b1bc1774066b65e8682c206483b2bc4346ddbbbeb8c8ed43f7bffddeb8eb395c2836fcef2558ed4e2f916ff19cb77795bca82fb522752fc050f56c80b19daef0a8339347c47a311b746daa3479e7a8a8c3b6b242f465afc3ebc10301276debe90f4775569a5467c756675a08a70bb49bb544f878b722b01cc88525efca7746dba3431ee2d0830523dded89b6a0fbb694549532b7ebf7db5553358a91d0e8d72d609c026a8d4a27a279f2d9b2014527023b63d58de6d91a4bb69ff804451e9d895eb19b0d766c21ce02193c58b86a903802a510644b3b9d8fc0a7d07efb3d88f0c10ba7a188e6a87a9a7fa742988c88555e5738d360362e626623cd98888f0e4c0b5eb5069991e320163f349f357d9520999a40152e954ad8c4e16fc1bc311e63528019acfde6070a78c87bfc9a9b648f19785fbc5438f92582dbe3dbffc71b770139875d9885502ba9c081985cf72898bc1b8b98aebee7d0f9349fd8d4d4645f4b8bfd381c9a05bbcb14a391634f86946c32ca836d903aac7a1fb23a0cc6afe6548d3af379e4554b70740b9ea9253feae79b6502c1f360161187b3e32f9a11638c165d04e4310284f386852273214ca28ca57095acdfa6b32840c644f05d65d4d0ed691bf59f41c43a97a26d6f917f679834e7083c9ce0141f8640fbd046057ff7d2f5eafc82279a80fbe5f1aeadcf5aab802571e76c0c8df12799112a3d2f7a9f296f56bb09154311dd37f208c7d295beaec575ed216cd5c369691d756cc397dc4d329131146ef24e3ae7b56a2415f69a36bbeef67fbc5096d88531740f1746591c138d55cc22afecf3671827541bb2b88b58fe29eb9a10d7039ff50f83d20d752f0f7dfa701b47b9f532aaaecfcf80f0f5394237251c5292ae263824acfd4dddc46eee2ebad8338995b9d2b1a3d1a2ce299cb9f48ae9c7f008d19eae64c33449fb1b62884d0e88025ab5c85078b797076a3c9de969160ed90889d9374d9be1444f1ed5577ee04d43804442c9ce5f848bcb7b64dc18c0c443c3643a64be40ac29ec4bc767e3ba02dd47afa25ec172c93acccdf08d3804c08ece9886cb09458dd924d3c13cf16fcb32cbb2b4eba0a9ccba9a7d556cba5e87dfa61d384176f86ba4fe19c287845e9646adf4891ca2638e9be0af347e34d9329eec151922573ea05f0ce7c0465f3fbba011f4143e47b25789a10fd90282cf14e7b36ffcea8033991d05362bd12ddcb83f43d0653ff62debb640048e18930dab03688b3b6899c7b980c877c1c9c4888dd8b7eaaa80a95c2fd4c85f881bf1290d0ed7052eee0fb468b6243e5041d63526b4330465d24f3c5f77768c11fb267a9f86dd2c42d27f91074d5a030e4c43528749b53c2da202a971f286d492481843268d293d6cae1dcff8b71423866a1f47d68367e4b1c711aa5dcb42a818000e233e5d9975dd52bc3ec35206cbd9883d83291cc47f4400df8ecffe7622abc38889e0a860c4e3470bb0304ef19cc2dc8653e14fb81de2e99854adb5878b1a5e1c0a6ba20572a7e9f0a5eaa088a9d121cb019eced68db6d96cc16907cba638e27416b8fc5e9b50644820e7f6cf279c97bc9e0f0b72aa4d01adb9425eb552d784d9e82b643cd494463897c1ace64cec5fec85d515491b17a0866df9e575f1b5082847d442f4f3cf2ce5ba2cd171c33e338232cae9b18f53aace72c518cf8db5e270c38d86e205c7e1ff988e7940488c0890155efe124c51b73da2902474bae1dd16428da57386e90803cf8fad6319d6104760c949c5e192a769b8cdccdf336e70680b5da9b9e0c283997c884a079849e597f31ef0050837db6ee93345bfefe9e4ef897910232970534aa9c5620b390e9861d23ee2bcd27a6deb8d2f83b72ac4dae27ede26f6c36c23dca5f9c15bb2ae935da6b5aff67f7e4dbb493b21f33a0fe8394f9cf95c02a11367be3018c1a0adfe6f0d4bece139e8b0b3ab953b1fe35b4654f13252e36640f75076d3b21f3a5d556c279c694badb591b5c2f1437fdfaabfa266fffa7c7c2841d4d35e6cb04e28d8a15506771e16b08dd58a9395554869c61e8bbebeab0800eae884e624edcb50ccf66c7831874c2500b697da1990c0096eca21dd295d013a87505a1253fc6c06a26cbd6b497dd396d1dcd79caab3fffe38bb58a82cef924050d90679de8ae6bc2de5ac8371bfe4ddba54ab442e190a467f26d1589fc73f8a0cb3f7ab7bb2f9fbc77ee9f7c5f02311965a444d612b6212d78a09e3d1a408663d309000fdb2ebb1e218b921b398200f032fc856661ad80f07b55c60b367eab61520601c3f4f9a007eeb554d180b574b1f7355dc9106c5bfd37514d2971d9d41917e7a703fbdadef17b645d40478247d06fab2f8a8b0a6f017ebff907c50c705c9c8ad50e19f028ed79ea2c61cd28bbbc7df4f35e10c30206c894525453caacaa9d3ed7394892ad8cca1bd878051d9e6b830c180e60d0cd697bb74ad1e809cf408e797640709a952f2a6641a6b36a2fa2a878e88aa387523356578d0a467039474ebfa8e978e879de4f61049cb59f768c1bf84ef78b02d95e59941a6564c28aa7356b46d87c460dfe42401fe28b307901dbd7f6a3d71e464d8d2f016d4339df1b49c5367534e81e9602fb939afa4615e068eb109b66a20b0d86d180d97d53bb49f64833c6712c38c26062eb8fa976844904fb8b817b706c82c140b23264a43ddee5efa1aa2d3c9207c8713a23984b7b6639e0d303add0f7557f78182e02f8371dc38c75bf072aace412fcd9a5728b89e6acba99c18252edf8efa9127685141a3c5e77ac2fa6d11b353be284aa92a266b1eebb5c4939979e253cab0110854ca772f9c8acf96cba0c486ca8bbbaa679a8b4b0418a864feb1552129996e40cd1b8f7b1a3f693ba51f2ad8b9c6fe450561a98471e36c4bfc136d8af1467a1f7d08eef1c91570947bbc24a162ab2e6d4b771047342b0e2665f63bfb87903e22a511d49bc0f217bb62ef5db6657077b24136f1597a92bd95a46a545cd6af657cb24b869acf9201f986b3fd752ca2c3785aec19db5d34342348c37ff44a69138951d0260a10558bd02c976868a76fb4f94d15995c47fb985876b495e753352e51effa3a6fd03217c27d780e5b28a5f381a8eaa5b6876d8a0652a607a19e31bd99e23567a6556b48919b52cf22ea50132edfe2f81d5f3f150b87b503fcfd52bcb8c0904ffd240a34fc0918114c829b810deb2635d5fca5b5a608c09d18de59dc346393fd7d49684dbbaf21d734a05fb57bc6b1f83c7602bec9d3f60dcbf9094c49c57f8c6ccb6f42c158fadaca5df76a9e1889fd1aa67a2139b8061e061ceb2ff09ca7829bcb538ea0d405d793ad50d827ded6950c6ca4713146324b293c188c4c9d4644a80b00b567626057390f926df64fcc7a208724bccfb674a139a5b8761a602569e66aa15f5f3d62668d8a1480ac57b0b8b89d7cbbadb9c580e97f12efa95a1518e5fd7f30da3126cba4023c0f4ac27524c63db40c8f83799c7ddf0f44484d8a538294c2e6e6043be15bbae83bcad09c0450b125bcc0b17ec2d77fa9da1a9913d91d296d84bd108239df3c70e74e24a9505bfbaf7b342b5755446b777ce52899eabee64275f84ec745bee7c0c2ac72c86794c0d202cdf5ea6dc08b58bea263e3f94fdb63353f941cfe47399f9b95c61d6ad5e021ac3b9794baa2e09d59e21224415e94e31b76a039a6e43d441bb3c59a0390f6e9fcabbca02e26f1cb4fb71830a7ba21f002a6cbf3139184c3df37971407d870ab88f5328b506cf5390f842eaee06b26835fa63ef5d64488cf32726a6d3814706caaea5cccf7edddf8a0a3a69b1c2aef08196ab4e01ea81c6e0d7746ccec6e09849585f3bd990437002299deb31dfd619773b35fdfeffdbe897ea208197616d244e9aad0e4f4bc2a30d7d000b4c633283d417559d79a2e6c508bdef610bdadb785b1d9e24ace3ce5427de9abddea73b0f964fa92a451ab7faaed16e4f7f1bf4dee85b36226e5383bbb6836f2c9fbd4b23992e54d1f3334cd131b125d2494239e05b8de24395351eca5e2ecc60d5ba7ca8631f2b802f39eb7ea4968f5f7a8c2ffa6648dc1b47533c2491bb3cffe7a64e8cdc95d2ab5cd897ce2c1a075a11cbcfbcf756f914ed4b4fa87e0c73eb0d899fc2b720aa989329f471c4db5a4342ba56de8a4312b7ce0e94718e59ee054f442d90e9b2c5b7a7146085ce0ab2ca82763b8973e4eeaf9f5b0e64a55a277073c2a59da50d8097e610dd6a594f6fee17d064a650b2a51611ae53c9e79f498ed88b9f7c23a5991e6facd4cf758f0a88eec53de0fe5081a935fa5b3603c04104930a6931d23b3d24eb6c6790a4726cdeb42490522bddda150c153515f87eb1bc1d881481ab1897594558e9a66add743f335152b0884dfdccf668a0f6b8edab92071ecd42f55192888999acad5eb42d9c72fd094ba384598a863e6209aebe8e804f5c3bcac36afea5839990f7d26871a2d6acc81952feb247be599ab91b169c26ca98e1d572f84ff5996c0a288d5a016a7d4c753ac0c91ad397ed0c0680d24a1d385adf2d1b75bd4d76eff0aed77abf16f40cfb4d1f93151e0670b2fc64efab7fb5145347d34b858b1879bb3afff17daa2a7337e32aabdabcaf3ac71c43b718c5845f9ae555952dade47baecf5076d3745efc75f06f1a3321b5d7643fa61fc7e4e73f2da1033793f7af97c227e63e92ba7c7462251b062c0b189c7df34d8a979b1e739c23480ed1c7bd91e9d0ff2aeec39fcf3e1747e4969b1f96907b69a47a351975da6396b9d3db06bc8dc5ec5cb5f0b500d9cd22fe2f04c3236e346a89bf827f62207a4adfbf60ad29b3336bf2cd93b5505009f57a7f0ede28e4b902a528348894e53927da8134edac56348458d61c6d3b2a2126dc4d2aa26024027fe7b874d009b65d4e76d59dd101dce86a2f2611a6e3c95df5016633bac2fc34bb5cc1c0121f85effa8ef34ba4e5b231d34957abc3b17fc16d39e08a68226372dbfcbe60cb7022a013bc4ae274529471ffd554291ec92f7d4dfe798b94d85b651d57e3914aa3a5c59fceccc3feb6725bc392521211e1c03d5c7adfe36f04d16bd4d7ecd0b327642ab1117bbd705d126810137f54a51e80ecd1297bd1c28cff9ca15ae18be2e499bd4a764857a4b034cf1d16b9f4a931f78ec0d2818bd70733c1f9ea8db7a2e157ee9b9bd945f521c600d490bd1dda7a4a9766d96c79f7302cd9426050ab95cbf9050ec0e6e09d408c639876a12d5e2543a89e383d070a741c0fe8e56fdd3c1d52f6e22f70ba1c20298eeaaed3d3f8ec7a00f3ea313bb26ecc922fe3f7deaee2b8508a00ee73a2cbabd61265a1d7d9b790fde54b610d8e8ed38f26f5ee1c621b2d324a4acdb5725b8748ef6cb5f9246ce9a429918b61f526f3901d534e5c4b989b62f18d28e8c369a6bbde3c2b4e112fa31f74afcd52412eebbae12d88e034ab540a46a58b09e41d26604f7a104aa73dbcef230563ccddef359b7c251c795f7c9ecd8350b1de6070d3ce7f2b54f5894ea95849df8a203780564d1be982aa3255355c86072324f43b18637b24d188d4d46a6d7e490eee2947a3b54093e61227b8fae6939e41746c530b9571d1f9cb1e6e61e72fe4b071168f11ced5c149c56eac6746c86f78754f0787f8d7ef6c39a2f906a8377ac104709544e7c38577da459e680a0eeafa662248e35da75fbd1bd8c58eec9a49f1c0a1f4a0389cff5f81bed342ae5fe7c796be55e7b095465e74a1a49e80ca4655caa8bf35649ef948bc3812735a71e84b6c678cfe5320d9cc0b59f4d6db3854279158b662da7f5bc8b2f64d0c7602c22830eb461f266cf87826a9c61171ab1524ea960c4bab345ac6afde0cc62ff35d2a361c2fdfb4aeb88e527b22f30f9143262b87ae67c1f829f210b7467a75d56448c113b331e0c7cf1546c45478ec4f77c53e721aa7678e7e06e7377acf6c32951ab15f6f906d419a8d0c9e9d312702a9e55f807544c4810842efd1fbdb6b47c00ce0e2d41303270a36b9d3ffe8ad7567d0b807a4537b13bfd1e6922ec37c1d0eca51bfba88922c9ce04c50e6e3c13ba906c92df8389ee02a44b0f43ccaf81b7d455ad764993a2aeb4a5fd04e6a1dd345cf2da2f4df2b871ec57a0bcc037858696cbdc3d88ebba73455ddbcfc1dc62a35f49c1e7d5059c2b9b962974703a0015f292c339fc43fbaed18ec42848b0dc93d9e55538414577cf62ed690ad3c129463b461ab15c8251c0a9a695a04f9ea84300c1d5f37187e86be37baa238666de10259697571c5c5bd1eb8372e6f073c0a65ff4ce568fd6215aec7adc3a515650afeae49c45043d4c97b08ee50e0228b35aed4b44bbff911fc653769e980a6c5896d138bd173bfd723d26641a2c258f2340a0a4de212d48e1fab93d944f545253afbabceb64bcf736acbe21c5690eeb26b29828783fb7c34d202a1719c92ee0f45dd8a1f7fca5da47b9d7377111c011decec7f83d6bb7881206b97047c73ff89390b2c7f1fec865e6f425270de93a379fc0dd5d12f113e0f9cfbc8781db9d470ef93061d62b0e024d918e0f3472a7f566faa30c771038ba164dee4e7a160a38a9b652e49e23fc8fde9714a340b329022e06696ac6168202e4535e4801f3c5dcd2d50b1b28beaf22bff4393b074df57b44e314a5df7f4cc1fd07444f6c7a4fca7e0adcc1b790c3e7d93c98697b0f0103cd752b007354b279d21ce9ca57161c889e77684f57009a23d0198d5744ef93018c1a737ea71034714a8e4b60b509240aa2528fb180fadf1747d4f78b1fc6a41445a2eabf709d1851f9f955deadfdb9a38fbb6f3fd3ea93c4250a0a407f004154111ed7dda0b2d87651a9f4447863c7083698e8f171d9d88067042318399ed7afb7cbfb59746bf55450767a9c01d7055821b1dbeb10c7433653ebf58ae6f39efb2ed0d6d1bd336a69b58b8ad7706e32da94ef51563f8f3fb80e3c38b5a75366f2768a9f7dbaafb6797db140dfe41a5b4bdef2946916d5e3e9e8cdbd56fa6ae34d7c5c17e7577d5e276c448a6f2e0929c25c1087e12a83c75841d7d06618671809619deaee272bdda29a202a8868fe0f207daa6bdd69d12b421e87c043fcd8c54e2c5c52889ac3e2fe659ea056e8e5d96a492132b527cc0f2b2e8dd5e4a4f0d56332fc7a152ed89b72a10afa7f3cc94e2c4da10ed1411e3a53f5bf6bb85bea8419570590b0ffe2ca5cc25107cc3be64298aeae95da3dec35143dbd228eee46835bb345b49b6d50a433d4bcb68f4058e10236aaee4505f906354a1c3e7d633f7c2ef8f1cdfa2beea8be6190525fa027e1a62c1b2364bec8556a8a48df1edb81fdfed7ccfff6e1f7eb6d4a381336f84193431043a8ec63fc27c1828149969b77564e86fd80860609a78e0e624c4b55081574ddb4773502eba5bbedd59c938fa9ea5bd41ab569ab9aeb4083dfaee7c5b001cd8fb2cbbff105a36573a613777c0b1f42fd3856ebcc63a84f142b51fa4393594b0e5c75e8b8b1fee002a2dda625fa5c264021e1bf61f1bb9bd545ccc6bea67e10551995cbfbb18e75e8865589df4373bc38709111226599d6cf8e72276a7ff3b59d6b4862743a2db2633313c4ed9088f4ce55bdcf21aaebb42eb2a228b9bf44bd2d097977cdf71914229f6a1635dd5962cc9a7e7fd911f7e5dbab02b9f6e8230495b74c91695098be76a29d758f2c63b696572fcd52c1ec34c761b485bfd006f29445d53651ffecce79909dc10bb6119cf22e7e9a0fe01f69a5b1abfcea878bd1a195072a2d6eec08f64d58bb8de45288bc0a4f9fe9f821482ec1104d961f1bac2feff443c13e4a2f6d87cb7d6833cb36ae0134b42223046b1d0fac73f5326555e8ae6c8512e666e0f9a7ed4c16d9dfecc98917c432c61b66b64c611af24f63c906f3b2733a311a93e3970085ee84042854a9819df4ef920442128f8601c52db9022a38a93f1695bbc6fc4ff2add9839565a6f7cb4914e15cec5911a15ced400fb59e515a355bb098c861b66b23b8b6af64199e936cc108676bd13ca67b9878dc294f498e495a64e34d44a2734b718dd8895f88aa3549b0105661508552e42eef508cae08e974f79efc77d2103be0e9a89d37b544c0e88c20d540b781d80670a9600d5b102c17eababd1459c52f8aaa2fda6d66d7b8f21fb6cba0c9268c6e3a9671ef25512529636610dace5ab63d8e066374c6c8ab68ab348508d81f8c5a655f8fd8aeed2599edaa626ba5c264d98a4d9640c338d1685b4df9f07a652bc67366a2485c49cc4ff6289d86463dc237345b199faf2d565c4be0bf62a975f005fa01424677e22df069b2378fa396dab0f039e90f038c9a0a27df172dcd84e9be406ee36117748c3bcc2c6e0815b5311324f6a446d0131c2ec5b220ac0fb3d7da5ae7435e8e44412332603e7d1552a7bc51b75df19e67ff2f3e9de2c00938544e06c0ecf476b5d23c5f14046f7d59db5c4745a02c708fb37083cdddc1b6a6e4ba25576914a2441bb395062e9e48c9ce4999363d6e658377801c38d138c46e362dfda825d54183a2fec51432fb3a8af5d6d990ace456bf80680d18b5d2fd8493ca6dafd8663d2ef236c3f13bf730f6417239ac5fe0f3a49aea5bb3c59c9de4f46e37e1d2786fff5ba3b05eff0f5da975946c5de7bd64000c224a42dd6b2060d2a8ffa23549d878884292f4da87141c7ae901462923c98fa8654a7a50354f68b1dfec1015c96c95b9e681c75ebd583b6be0b20c6fcf140ec957e786bd8890e934a84669ad6e497bf1fb77e2d8c0de8369f8d5cfccb0bcdee227808360d1dc1d07cae79177143546470042e3b22f2cc7c3d3f473a90083038b502b1e82811d1038152abe2680c34b5d26d64ec6979b53c727c95dc499d132d5b4a3555e2bd44e147ac4419ac5488b677f2c2ecda34276aee3a2c5537ccd367d1da5d07ea18f96dcdc5b0c4809d7bc9f12587d90a2c749b924005eecb2f96aeed435cac46f202eff0cf9b4b7a6a73daeafafd3937a819cb600029747a3a6de60c090bf281845c02ee0955976191d7d166c48242918411fb327e0582a4d648b1da7fb27ad0396742d5a4618d773b39e29b80d5f1d744528a178ee046af66731c5ad029eca8e16e309186c18ae93bf25f9d50beb08c87b24c6407f04c7261c1c9b8e1e67edc92dd0b9ea277090b62f4a1393140f1c4152933f528ea1b357148c7281ca2b6e5a08702a5d367fec7bd7b953a79a109d63c0e77060e23447f90ec5a2ee4399b2352ff69c3c9cd509ddf9ad9e3cbea51c0d3c79456808a9be1ec74841b88cdf658d47b7dd405ab02f60e983e031cafc0749e5f9a40e204f7c9a7fde434ec5795729420823b384454f5ea4419bb8852ecbe7b00da9fa3ee7727e8b2633acb5ebf3586b432ce13a3e9f4fedb65e75b603c215760c4520e6a3a0ea32050215d3789dace23ecb49383f6e5d0e11fa8460390f0bd995c4ff343278f6af5438c12c0d66a1b814503db79ee232aca95bc305a4453fbf6befe6351824ebf323b1358e6eb46235e14d614438b04f093bcd8961da01628df4948b7f74ea2976dc898ff5cefdcb2c9971b426cae4cb06fdb2b4346b7c2847f2c07261c14e79fcf3da2f37dac728cc559941bc0fa322e32e9bb8edd558fe16ea1a9f2a3933c84dffe5cf2a0447a28ba6c1ea833c373ed4f02e33b90f56d5c800c620d067e6cd4e18e452ae9a032d5907e8700a79d4e207f911cf91b41ae6f864c0b5ea192b1019a31c8468647eace0cb8d5654f46200da7666e9664107c4da3eff04364c0a8daab339e88de43276765927361150eb64fd8811953414d06b73fd9787a410d60675e0a1930a069273a78a2731ffac7021b4d50faf66b03aa5bbf55efbb2e2e96e25a2c91b73c5485befe72f7f718b773695b044ee50d761cb7fcfc7584805a9e1e3973506aa372c6215806eec2c9a06096775e746596feb95a2a2d259f360a07255f2fd99be8ba1d34373dd6bdee46284f9c35bac2fa87cd3dd7f47121c81a8165a1eb0a60d357b1735c1dc8990c2e45e30bffb2617856c0e26a983a01eebafc6a2b7b3e8a9ff9e8de94b7ef560a87fdca94f4dce8dd2d0452d9f914818c5e251992b6cf679fd7c4e81610e19f43cbe5c1951174023b88f11df0afa4602eff346ef95d3cab20a595e1b8c50c3e0a399fc751b132a353766a278dc5e32da97b542da0256c05d9db2bc4208b447429bd2725608002c2360a3134175fd1cfe36986a3cd5a277d76eeb38c2919470d9209f3e4e6dbf3d0c95d7f22f8997f4f43e4ca107b23e400d7ebc6d1d6408b45f450e77eac36cdbf3032c2ed96bb0871a9814d2c561aa4ac13699981b03bc0c17a64b61c22ccef950bde8cff9f17349d2e5b19bf6f049a02bc70d4da289a466333cb0228a98e051336d2fac24d93b63d5e1205aaa111b01675545b9b3941407e620e219e559714443fdd8d6eb3a91935c695fa395c8c4d889d163beed4b6293a900904e8c85b2878c9e3609f771b70a70752707ef3e5d8f7a61cefc830495e0d979cd4c75a17b8c98994cd0fb26fb00a7ccb017aeda986ddb5f48897f2de1dc53c6ea4c123cadc2b965c4a960d44246ae63c391ad3e9c316985a1045d976099ed0b8fa90f5efe35c9c1477582b7e7b9cb4632de18cb5cc93c76816d83887d80c26d597a590414f01bb7a93cc64fa3e1ab4d8798ecbc93f3f0f5f75fc3f8bc1ed9c688a3cf2732316f80205d94503b2d1d8153918ee2cf4442366304d54de6d85a1e627f2ab89f69778477f7f1b1467d9ae2df2c5acab164f93784dd41d71e52fd5e56ce396d7542661b334b21daf736307adeb5f7504de0939aee324d94d11944a23c6d3a5306b58a65665164089dba923725df2058b69d759f1e3949b281dcfaefb0ed734cd7890232a25876a351cce1cbf4a06972fc74a9c6c3294fde985ba5a3e135933da98c43cbec307fa3a998e0542696ff6c6c24643730f7960d70435364ab6d554b84cdcce04ea50b56299a99031ef4d27dd0d56d1e16f280e4cc546704edb2fe8c2e85223a8312f49f6168809d9496e91faa43c2309f73408e40bf8ef63080b83780b5f49ef10a144039ee5ff869b38f2437b9a542e0389f9693389a4e925cd1983856df3c1a6765977d97980449a58de4322fc7ccb5a52f9081eec9152a1271d7a11ee543176557b9f040209b4a87a69b5859017b28277287dce03b6e1dc006df2afa5f9cfaee08fc3ec4a5dce826b26ea2bc110be3d70023a6a1182353886f2824a23d181a5cdaa834b1130b12f88724894ed35d5ca2b93d4dca4ccf44d97d13f8e816a0f5086315966c20084690ea4003545ad90be9537f81954255b3c15288b170e31ba4a260d4e2f107154a172be1951b31344d29dbdba6c063a79d99e2c4c8969e3d53b6e510fae05ad39a96c670ae212b81cac8f1f860ac8e9e3ae4825da5d36eff95d941e22fde65ade5adc0700f5625be53c35065d008c08f25bd78072972d975e428a9f26241ee27c521b19f853626a806ed185799fcc0ba679fe426e0b41ad306ad0dad542faf26a507545458f701cba111d2946ec04c885079db22e7c5a857062cb7f5768e6ac486a5f8c1d7da9f7ea894f938f0cae55c8591dea7cfd15ad900a933d87e8f9159969b63c28eb1b04d6a28d5f7b7d4be3eff8517f447ff6de59277088d8e08ed2ff525d4b47ebfa50535d4080491bfc37b5af18686b34c63b93929ceb30888badbec3f2e480cf97d325a9ec42db1ec4697855d06a3e53bf5d3fd47b5041f0ddb45b7137143f9a9b358ae2de6764d13046a81c0d459e6afa6881f26bb7e3570ba9606a6cad33320f41f4cbf8c7cfb52f9c88abe18ae3f7b8a3a85b4d85a75708cc53db0e9e939f2164beacd9794d35ae816aa1e626cae36128f3e3faf491255e7d206b69851bf3694766711bc23caa9cfe3c0644b2c258dadfe5efdcd12025dd5169eca4e996ebab27339d5b04b76ddc82ab23202da4ce3ed040e41dad616cf01021c5b3059ea8e7469adf291d23e02abfe1806fe3dc712023b7028cb2b733018b10a12f7f2d88f33f8561935b230a7005cfdee60f853b3f71d81d107d969edb7bafd1ead0cae481f51a45188ad6b674c5dd5aa8a248bb810939803193c0df26a7ef06ef3f0d3773504d80de930d7a6b6e0452b0ca6c7cbc6cda1c931f9b72602ff512854e5a914beeb0b781446b7a9fb6d5e7b9e082916075b060b8ec38e3007a10a74c933197de64d834c8e55108835cc372850fffe40ffe2064ffe2a063af26b4f1b8413d8da805aaf70be9a940fdee8689dad9538b8f9f4fa2fb1a6d4f3d364c776f873372c50394704d6349247728c939ba9c6bbce55f19e6e0c4427ba3c83950835d07695cf60130d258124ca327cb7383f316bf0ddc287b0740f0ef3fd45a4b3d4281b93501235595bba91f195a1d3b7e24d0d57780f281262dc8163372dad4b9fb30bb08a69b24dc8232774cfc3130cc05bdcd349528383d626b2cd2d1662c65966b4a46aedd86c9089dfc593baa3aa0fe0f021d04205aa5d83f6d2cffcccd1d4b87b4bc6e8c55ec47b2f9081e70de749fdf3255a8e22adb052adee2e4ae6650d82dd7076a222b75300dc4eb155e8a69c9a61d36dc0efec6d7cfaf912b18574eae09c7c5e2ea7ee5fdfc4ca75ef66bbc9817e69e88d0a714599e7206f390d485a8da38bae58ae512014a2d6329706e5d7a307e0d1b076641f4c458ce497bea17286b38a7784019767630573d66c07cfcced709c37bbd54cc0c3ec31323f14b11409cb7a96646a1b0abd6e3110cb32810b39a8cdb7cec264088ea4a546be5867246c6d6565fb9c6c80f6a4fee32e43ecf975cffec3ee1e57c4132323cc65df76d73a78e80d2853e06e0f7a150492790e1979262867feb23603c40b4bcc6f89ec68e268e09178a88c2918cb69ab9cc8206990e4dc05d59b5f9a99aabae8af8ab04c0c2e1942e9f9db8785ab9250735933e11ad67b0df859c8cf78206a2c4c75d6213108b3061eafc93514dc23e889d4e2345b030b7de54110427481596edc942b92dc63377c0bdf5eecbeaec5f6fd4319f3217d98ce294dad3ae70393df6576a2c27e5b15c4aff8c2374fce4c5a256171b368ebe144b4360bc31d9172ea05caa824ae40974b0a40175aa97eb444edb25e9b22d3e666db21acc05130dcf7b5587014bee461b0bd7b111daa0a03b8a4fbb8b08d18015a7714db6ead4455672de12ad9650d02f005cf48d779e3220d1046330746e1cc72ce739c26e0536dd57c4d0075d580a296049413f052dcbfdf0643945140ce43e4d6f5b905a64394b3698120c270a8e28fb9d8b0145539b6c5bb6faed02e836de6a848aea43acb04ab1bfc7932148eee3287045d80a2b1867b2aeb3da4de6927eb723894933676f03241950a5dbc9da2d634e833cc56226c8c29b296abd5c3d0b8d0da1c96eba3e0bbbf68ff90261cb7dfc58a9d15ec56b263e92078912a2621c96d23ad07d0e1ef53bba4a2a8835384b806812cd411b66265bcded44ccb7c9d3f4323eeba99b92763e591baa1534717399e98333025b93695c6940175cb4ec31dfb3a7161ae1ccdc6b07e2c79ef4b86ce326d47a85bd43909116c41c493beb977771a43eba0b477bd76a8a43b62d9b25b9f38c272ee5ace8db7e51ee4f0d932d6da5880385dc314aba01c78747f85ef396082a7e766397121153cfd7ffc23f4fc9e3fbe376872ca251130790bbcf837fa29fb52b69d23e032ac4b1945c4d62455aa8a7d40b6d5840b2dccac864b9e598d8ee66a6aa6e2e4283ccd5a2ae87a62a4dac787f730164e8e09b23d2b93efcd7179db3aaff970477170c1e80880e29eda2c96440ef37e4763028d91398ff2151773bdb98e01a48dddecc2eaf1537a130ccaa5734ba06f37372a45f62107f1b6614bcdc4d85a4abdcc2776fab186d88ebaa166b2589e16b3c0461d28d9f8bfaeb1fd424f4b26bb3f5a0b09a9d5227e778df5e37a82d86db088b917cb6b0edb875c04b41715105d08225f571e8c4945f04001eeba63ebf660c7c1491382edd46aac588a4b19a946d77513ee8e3fbbee7e51cae8f41b0ac94cac9fd6769a3694e3d5ad5d7b793881729509ee8423f86c6c0d6edd6d229842429d2d84acf476767586fecf82daa2d2f858163df742e317046acfa0f513ed92eb734dbd77dff89b9262aa1491722e809181e4650c018dc2a9d8cc8dbccf89796a2c54e4193b1a70f908f9994a5ded684963f390a5831b40c0214f702aff76149bfbd0555e2994dfc017f9e3f01929bd15b580ef92b153176bb60ff1b4bf612bf2a9f452b2206bbc388182efc9c07e1d67f049d65da5a93e2f2cb6899f2cc86643390fec5cbf11fef152d9f18770346cf7349a82320df643a537c0b6fe5e51fc6eb483de4056f27e9a9e82785cf582fadad0a1312789712913cdba4f83c5f4e030a71c139b48941a6dcfa7556ea7300b314e1880deb87f67868cb8063c67e5751e087a33476dc1bb682884aa8ad49ef5f5329c42c804a4a740df0d97875733e077ef079c93d878d852f67b5756be1c976a23facd010b5a1772a68da86ca2575bd59be0e01f26f1f5bfc65a83454abcb9c85ca1021bfaac663fd4492c44a85469c15268dc9fafb135e0e83734520a69e336744a591111b723f243e5fb82f3c2f6f17123d63f19c475077d2915ed538ac4f4f71bfd5ca73f6b33c5c3394f44b3bb343c96a4093a69fc6c1d8fd95425af480ef526f6a73458f93bf780248d3e691e989e2b5205b0c8d92e7128605c445cb99ee01530280797b0356319b66dc35d8f354789cb25c85367e1df53421edba59fe10c9212e1ffd6e6780a8c2db695c5b45c8f46a3e088c2b6ade19ba9f9f0241bab8621511cfdbb50617a9cc22a01dafa87e6fd9f4d7cf12f4e50ad5bb92a7fb46cc19daa7b44dc36dfc2c519250b7ae8ef54e0caf4678f153ab102f11619293ff66210e0f19547523f271d382227990ea98b56081e75b90c6ee1f43a4473a178583c1a2c2cdf3dc78c2b09ae3e8ffea3067441fdd29e97e059419da7ba8ce63700b227e9ca06f82880969d8be1c55d43ef20a080a953e945707f625a2cf6006cc44597a5721925c2bf1a8eabf6df3969fc02f610fbe82fb9b3607e7ee61e38a4dc8e4dab7005a22a1d498d5d0ebc59593ce5d564822174a8dd24fc8525bb56f378ac47a71545669d513536137e8fa401db5341c31536826a9103f466d2b6cae2073f1daa57e771cf988386632b0aa7069076ac03f4df61a657691d018f08da5e663818b03aa3ecf0cdea925648c01e48a226faa2313ff083a8f36efa41301443875d264f7b15089f65efbfa0d13cb6e1cc204e549643b2060dcf4e3d52cf81ee7aa76dab90bf43735c70235c92574637fbd5398d07beb77187a0a577f966a826074aded2b56a21365030c746b8c8a6ceeb6ece503da8f98c77ab66d44cd52ebf90c3f1d20c9b83c24667dbe72db00dd21549539e527c588c7b2992eac8738db2ef8a014d630279c656f981bd181791a45607c3d8af33c2b8db92b2f62245fdd282785a642dda45746c8744feade28a61bfeed850fcee5aba40855ad1e27e46c2d54550e0ae2d7f96e9d920f8f0e344d1edcf320d2a11598caee0db0bd4d2a3d807e6904de73bf0996a738f3704dd99e5b2701749c61d8b47394211a533cc212522b10f320e1c11fe6daf758e30a0d56df349b1aa5ece13a98c6b5fa7f6f4e39729edc2ed7e4d3301fb05abf80b633cffc301f6b2cf3665b4708c14afb22e2b5ce1849ca495ef9c16f39760a9dd40c0d86167a79af8abdf032b891e2ab5ec832c523b14c3ef2d0fa917d85d1c7c4f4c2208af5956f230348265462cee84701890540571b3cb490f47dce0d6be98a727d86a69574c0d439dd7a838956b40dd7d0553516da8dbc689f63d8494397271006ca5769b6d864716529f496a34cec97a86733406b8ad24451d1e1fcec2520d9defe85d2e5e4c1651e0c37e9319101213a176564e56059af2c9bfddd304a084f024f0c0de96494cf8b08d8f661860c664e68ad393ba23f2236111de27797a30091f5425db6eac2ff3f12d4ae3e9e6269e2414f277119e8c67c7bfb88397f04c613b195ca26e9eae34f07f570fa7dbf731ea48b6b673ecda4ee8ec36ea99dc919552ce2b6b2cdbf033b2d8e67d4fb13c4058b69a93d7182245f79a7b65cd0e8404df5251d05dca6399b09010ed644283f3bcd161534c501dd8cbde68344d6a47ed4b46d0f6218a43b45a8df0571ac1d1c745449c812f273a5f9819e9b27c2338bb1eff5dc5e0a21a173bbb55b158dd886f98fbf186e903bedb47327cea4fdcbc307f7f71c0e110099f5c9aca2a328df97c83b529036a7ce02fc76e0c19c4b336a9671c66a6703c716e87b91408a180d8bd79c0a3bcb4c7a9caea0514f9eec02b22d131ed20ec76a743bfc6521eb48e710a2818838af24fe0e3f5f51e44961aa7075f729e2dac8e21ae613aca225aa951908bca75a51c394d4fe286b420cb46aeb85bb0a92d3c4b7dd39f564bc3c72e9eca4852f938313681bc1a3c7905718fbdbd0a62c22838374e6475173685cb48e7a51c30ec54ebb6c1a3ec208da3b38eb509293af597e7467962f3b2162b8c55854f370f7c21b8184064fa3b6694f9df55e760d52eaef715afe78cadca53556d63694665b0abfdb760a2d1139dca558851869d488ea14314510fec9cc26e839a6fa5cb9d590d73cef33dc9071cc61a0f20de57a1b50bebf9188530a8e8463576acd8743984389f581cc39b89a6ecfb6f8baf619395a63df31076c6029ebf33126a838eed276467f87b88571db4e95fd58dfa7fa1dc72b5fd50be6140db267caf19d0829c8f19076037a0e62f2c68b999204a250f21cbb7f872299aed439722c2e013d233b4fe911961e018e6c7d17026a23c6c7c54afc7daa27ccd9d3b94d5b0b73bb15a597fe28bb7f1cde0df7091779c5daaabb19b25f8df1067a5a8183b35bd889978f620d19c5449ff53f9fe38ec9abee001ae8bcc4dcae60370e76eab4af32fe0a35279d1a047034934c65c690c899f6a24a524ccabddfa89c5ab412940343382b71a5ab9474650ee7ce165a39534365f2e12fca84744479b67801245b7842643491942473c38dd72a84c43f89597f82bb04617b147043b3c4b20ee4eab6446466c2afc1e89ceaefaa09f702c0ad0dad1a7558f709ce993210abe010cae136dba8d4b603b1bf1efe5c6ecbda814ec3748dd5eb0dc7250d8992af7510d68d9a9c65ad6fe7819fc990943d1c67b50fcd46db78dc7b34d9af864320f9060d1427fa87f1bfb097b89da395a71038dd0e8bbc8556e071101624d99645261a680ad37b622a59373351f2a88a118f81051ec3f97cb93f45302f3c1ebc61084cadc662193f49c04061be28b87b44f7290a5b266c4a7e83d2aef9b0adb41adc395ed6643cdf6ef7fba33d49ac8f9facc42c7c9fa08eb408e55f4f97295a8c3b2cc823695518fe6e61906932f25880603e315ef7818776f9ba64fdbf96a4433238152e3339ef2a846b1134ca38fcc20833cd44368d438c88d06da9f4911f761ece4b57dc579a4c476e15fef9936fc6778bd7f97f431125f264fbfee7d4be5e27a46891ce45be7d52a5e9cd83e5650427ec5bfcc2f33633afd6caaa1912200396a40401b7def417f995818b186d811c1d4c1fb8641445fdc554b79bd8157f74e0edeac5f424a9f340bd5398013821f503e12e34122bd329771dd68335008f37e5fb889182d1d58d56d318cf3a692a3534ce8c7fa88cd97b8a05c8e1f11f530c85dfcfad055ac62dccfeb058d4894998cd3f46d229f350440f54136a887fbc5817643acbcfa29063dbc09b2ed990bff2bc9d6ece5515a824f7a2775491301f05c6370056db8bfb55eebf2f28887bef176c723b2f8498dd04865614a34dc884df577428829b04b3d2638b6d1f506966033a1e3fb2676f41479c5740c146387df7a6d12aede815d4db9d2012d372ee44ac8e4a7461552f951db5b1209d9e95541307a35c617c07a3fc124e5b26f7f239a12e344d898e4693852f1dd48c95c9c1c91911b47a1b9bbae672bceb523123fdff1ee98e325cff3e54ec5d72482bb1b16e14bf1fb1fbf834ffcf62ba14293d540f524ee05676b48a890f32251c5ae6fa14446924f162b216b531e5b5327117d963deafde4cb6a7e1161ce7749414546a97412cbc750bef805d90ddffa3a5dda0db90e72d5ae9be673573eba76e3c45a1d7d0c27f389c3720acd23cb7c333896077ff884373e7faeeef2e7bd2bf12c772f6216a0f9445ff5ee64971e2da56eb449e88de976d7a98c6450739cdf6a3c156851bb06851d558c998303a98a1176e84d43fa1d0dbad9f6d16852f353b441d7f496134804b3421bd8519c5410fbfa25960585917090de5d6f77e52891e2c7a3f72443ca93e7c22562d3d42bbccf1c1657dddcfd34e98a7df427a792e4917262f8a77bfa1892c8456d6f0f435b41884aa14287bd93efe2867473dd8c45da90452e24b6038200b573f0d8298c459972863fd7fe351dc540313d99d40b903a21a8d5625043b5a971b54ca5a9a7892794307eee0f70db2ac94602db35e27ba84600bffed444cbfcaf96ed6fcdeccf5e6645eb19b569da9a646429ae187625258981c2ac5c6b8cd463c59c0582e51b52bad4299291731d7908c2881aa31ec84c6f6fc6b2a8a31012c0191c467cb1864bdf5e4725cae932622f446437f2241205d0f1f009ef4e956ef0c6c52292d5467b6510f12400278fbb8f88cecbfdaf35291b19109295922acf4d1d1bd39aae98dca6434a3ae58eccc88441ceb84fe548524f1cbabea95876adcd7a2b6262942edeadb12b88d881e91311ca066041a2e1c0c7375c40668bcdb41be2623c26b423bc93f25c01965b3e0e5e4cee84c2e242778e0668cddf4e0f85193c6b2140c31d9e0db78d61eec87960ce5c6d79c534e53e5fedcdc224a81dd53c86db259b489c97500ab47fb62fa91c44c3e91b9973a483b55ff920b769e61a95b4869089e8434320a81d1e877191a67ba7537b86cb71a73948fae3b0592e2c036a5829f288e02221f9997843022cc893be3e303571fd55b23200bdbe4857a1e6c759a6d29854538668bf11708392cec8097b2d87922c57e5372cdada39e14011997a42ab527eed26fe23a385f67b13bc6d0afe6d8d705cf72093ca8e9efc393e8a37ccf4ed91e5e429618a65e94b17cdd2ce9bf203b736ef7afa9b9e6180dc2130cc8d9945eb79aa11d1c45cb8fa6db599fadc8b0c442d39e81a90f07a0fe44db3b84b14278c17a7cdf2986df1ff8126be2be7932838ce5488bb12773f6c9f7c6ebd6b52d8c621d291cfc3ab80c4d4e4efe624eeb6440ee43ea5a14efe8b8a8c50ba52da3c6c6981607fbcb3766d7ab449626cba10ebc80d27d7aeb4cd51564d57332e9f8da66e55cbfd9c4d1797388c6ffa474d7e5c5b8f8279c48e3f5fb4664b319fb63400c296ab859b23870da70f7fb8285e3171cf305e23fa822e26975ca67f9bb12dfcdaa1f1c4c4a3bea69f6e249c92a1341b8a6eb134fe5f425763e2ab21575dbe4592b144b6afebc95f51b4eb1981bda7a92c894eef1976d0c7abdc2ec3efda8865c2200cd71d714d39be1b8ada6ecbff2d5c0d72c528ab023b51c52ab4eafaef685a703af0d81c0956e72a85ab92f5d7369ccb6747ddedc9c0a6f001405d8d36d80100662bda732faaea648c39aa8f92b6eac749d12d2b662ddc7abb93d340d3cdc8b6c790aa4cebcaad478fd739b3d838971630a8f982df70aa6d462e757b7063b40ae0b27f6d32b3df906637d2744ee54bd227fa7eff516c26ad4ff6f9671de55d6b01c7bf27ec152fb6d6a0a76ba4ff352a7684ae7b2a2fb23c8500bb5e5feb57929ae6e15bdf29405f4812141165fc74469f68367c3cdfdf80c3d9bc815cdbf1ac20dc8d92c262504e8e950e9c1a5cb8508a4a4c854be26dff99012da9bf3271d49fee4cb01e0d056403fe0461aa2829a7bdfd558c1a472a3fcae81a2208fa491d02320d5ecbd5ac3417be0feacec265915a50ad5e0a9f9a614547a741699eb16339c8b6a62c529392b66a8330916b9c67baf63d101cfd72db9bad3478ec2ac36fecd17f398cb0dfecdc32af0eb31cf7e3a6eb316732ff0f20fded107e0d897f065c6caed291d5168f6b6088540b456a1082efa8ea2558f2ba3517151f8c9ae8093627ebd5aa68452e489f447d5bce56a93d8c7ea04b929ead02b7dd1673fce2a32aa32b5ba8442dde2d6e24ebaea7ac04a110c19927180890ae9e306a768ce517b4f8b5eb3a410f87ddb495c40322e511cc5ec7ac40eb1502a4dd2d1289e4fe1e02d1c73fc975ae4b758573140009d89fd67b52eab10add8022a408e4ee04453cc5e3ad4444855732957a4a8682a9c557e8d64558770eab2aff3c8ba04875fc28c45a1cdffc7d44c528c42a19cbf7839338fcfef735da68557973a9fbf0d4d76cb0c789b57c46f4b81c37163300d19a7b4738f8ae9262620aa1058b0dd30e3151d7253985e3d1df976e25b879c5fd02d18da574ad6ddb2b914dfd893cc652706da756959b904b402681065cb4502f74ab145680c90c9b410a6d447fddd64df2b88552496295441a6ff6b586769672c349cbb701aa67c993862381c3ce124c762140914dc641fe8757c22b8a6ce48df7598f14d91236b4221b5d698e15b82c76dbe8a4133639d217f35321f84ea3fead0b01d5a2874fb34dd93de1c8e01290a6616ed39b5a0782cff8e3682cde4beee3026c086c686df60e08f28ad8c34d816f512d5388aa953befbf4cc3a5bdb5c4758e6dde168836206b3678fbf109172162979494bcbeccb97b97a79b934a509e82bc48cfd71fb948a36ab603ccd16982b2b591ba669332a77edb66a7900da7496ff995110dd7acbbab709997badc159699bfead5665d8f8377ce717f1ddfa6ac192976964c7465370955bab846d6b867407a7e142a7b509a48515e3503f4585bd238997dd3a2d91176b41726083f8a41c4a593f77d31c3fb078ad96e4e84cc0e74ea39f0380ca055b5713e0a628ecf4b2baa8906cebe19843bf6f3ce33e736c82c2ccb37c6637cfb41f654e1cd51b117fd3c2218a757f5f43fbd5aa11243d2095a09ec28df02ebb176e490b34bc14fa12268ad349876a61baac8331fd38381a834fffc7860b084de97b8e111eee674214720fd88d91441a98044540ae0125cf562377d05cc150f8b93abc413af5039a42175887266fb02d53e76fb41131bb1f0d738c6916cd8fa0f9ec4c4b6e6fe64e09fd7b71635b9dc7660b5aa860a676bb72c8ebe05532b88d362550ef27bb3f25df520e7d1775cc3c28a14efa83b73a11068c90a3de054815abbc8a491af1f13fc1f8df5641deecd0e0bf37b0bf80626b350842fff51bb630db0e0a644a727a0632e22de48091ae76772c6b8ed27e75bc28a0c4d23167efceadab8f5d0b793cce82e8d4492edff2f810931d0f575fa9dd6c02aaadac39e8bafb012356b5c42aed59ca43c14b09eb5810792880a40ea0421e07d37f67ff5042f8d8a9ce32f8110037e430d0126a1d73dac0f2b4cba95f125487baa465fb6332c84e337a332452881f40b1514886e111be5c8507918d1fbd9233430845fa68297705bd945a58fcd411ffa9ec20241bb1199d40a82ebc7657e891f720a61584b7db57f3b7e9fa33aa2527476c94cb2b4958f46bd1931458f35a1467675ebdc3965c3044df6a46a139be23068eec551a8e1b03e7c40e9fc48376c7aef3999fc13e43b0af6f86ca97fc9cb4d490b042ee99fcc42ff964b195ff2892c4f0dd57efc3f8fad1bd620c6d0a3e8acba359ca8ebdf12249d3eba6dbab2d8f23c448c6d92835f8d0f438b65ed36a75df30de71efdd7bfa4ddbbf69c5dc57ec0cebca3588b21638f0adcf4b62de16c41c3bdaec64b75e13dc2517baa0d9ae09fee9ea08ba5d6e4e4a409e3e4d9a95302e476204aa0d2fc8005e57adb09cff424e4d2d8c95e29587fae0ae37fb2e5dca3766a6175eae6dc936be6ad9eabb242b860dddeed079d19247ef9b0fd218ea096686614499f3113fd2d2d89e33dc4b174099e9f081a5aa66569c7c998e68f614853363aee56d945b175fb735fccd4678493b858b3caa2aa3581e03fd61018f8987a19aeb210f2bd2dad0b01486341d90110859acc0d1c2db98bc4597179038d623189ecfb8da207d751631ee5d13a9b277f625de4aeb05f5aa7adbeb2295e8a927239818551db32af59284b88eee7e84a80133cb44a7e95ccdd485a909c11fcea84094bca08a6682c003556a0b6126d133c6110108ce3fb40ff957f0757ec2a874f417951623a9d0dbe1d47285ef95fbe430524bf983efd4eae44f3d94e1af1b58a053ee3c20e0a223f90a74014d768ee0c2826189880198fe8503757565e0fb9a675cb4e038dd84e8e6743ab7ad2a7c8f6983e2f8ffdac9882dbd3557cef6c220708521d6334ac587208abfc24cbb866d7d8e127ac4918ad7162cdadc56f8ec6ba75a99422bf4bdf6eade12e15510dfd06e4d0045097ede250a1fee57cb47c3a5eb9ea5bef2f238c8dcd59d1d6828532d4cc45628eda2f69d5c53f4038f5b0829a7a069e9d8031c180169d9739b7c845e5ac64a35092080f042c842e1d96f29372000719e9002dd66d12a5ccd861b0f6ea2042655f7a35f7ab23e7bffaafff9a47c2232cd095b6f718fb89864f135be8df296c7c7bc4971855b1c787d3410d86ffb5039148b229ec122a15a6fe746f56924f13cec5f60f2c0e9a3c190466316286b98c17935ae9783e1d50b3380c44fc4ba4b6c2ac9fd1063b210c0ad36a0a4ed1d7e4a8b95713648262ec358f0b085e866c433a512aa8bb1bd1272d9d3ed5eb75a9f43391339e0b46b9b01c8e949bb6badfddb08d0f2a8aeb3b396c9568981710d298bab4d84a55be4e7239246833c2a703f9a5062c3b87099addce1a5d909ceeb13360d4c5a9c3072d42c8db4ec2c4e44c453dd025349054c4e2608442db753c473ae7d2da0918992719b7a86b6e9cf334e4052e482c2094b255c013691549d6f93b749f392259345788422144d6ba85276cbeff1065cebbd7de35290cefb21116888ca790b3c05b432069c7df3c8aa6d5040277b9d373f7e79704e2fcb0f7bd03c5be4df364ddbf8a5079220529cf2c73cb528fde767e23a1b496896118709e412eda1596b2780a7dfc642695baeaab750517803116cceb8fe54c64fbe40e6be906ea0fa92722d4aa0c53281d6ee0fdcc9ed1d056921f80064bea4ae85e11c3870e2e2898198df54e6fd6163cb7d89b3928c7f38dc9c90e241b3a94835cb143f43cbae1970f40442f9aa539530de3969edfd3f3e4279fe1ebf5d780ea2bd7c9e4475ca20eb56fc25ecfd6446fb9d7cba9dad1a463805adedfea2126fa262dcc4228fafc825fb79347425f85a91231b1848764b1ff6c6b7f3a37e649dec4e328fd6d999356a291b8266cdb10f299370dbeccf20af9041229f4bf3a1a084915b52da69029d8075f375df41369e9e8b59105c91a1587bfb5d9265c028e65ec671eab57404b1bf110fd5410b9af53d227c23e9f1da0ad14ff5aef2eb6ddcb9ed55d3c55aef0f3f0deeb6cc8ed056e654991730763b683ef4eab2776764f44d23f7847ef7693042f0e53b2b73954816c58a4266b1cb3c178b16b6ab8d95ddd7ee79ede5d16fd72f406d54f0bf475d08f58fe06b6f5bfaa4f3f2898507528419b453fef2c89639ee3783dd3e3dc693cef2f0bf8032ff2344d32f70ff212066b346d44e071dfaaf82994f90898b9a84c9559fbc0522ef806234684aa10da69806c93cf50fe9131aca0481608fb00a3db730aff20105eb2a9d4c4f8c965342acd1a1c8f4e37a293ee0efe34d4d62b57c261847e20a3711c2ae32e2709ca6fae4b7b3e368436632cd82c6b9dacabde79214e9e5427d91373d3be36e9cb47ed8dab9d38cfa8eedd47b159386d6881d7b24b034b33b5160fff4a3249574e8c473e9048570a02d91fec1c32ad27180f59f5f4ebc5328a5b9dce4c49c1bcc9a566fa37150724d3859a09647a953f1d6e2b71d33bc1059ad4bf565f366d9790a61fd5595c91b101f09fd20dfb2d0f68fe8a79b81c563f2ab2bf3ec420e041d88fabdc8d1eda99eb4352500006232d1f4c0461a1a3f9a863bf6c393771b9b6aea6bd7458b160ce761d6d427b6c0b242536f954bf27146a5d1f949f0f9679cbe2e84512cdaff7237d101fb729759fb4e5ea0a43680108e93d22b7f7c84033c103eb9b75912f1011df46223ea84936ae747b313c2e19d4c08429b5c92e639e87a1bf4baea79d1be54b4a6d873ce1313a9d44a13bf42dc5195b712c96a2262756254d07ded3c86ca1d6cfb57685e3b94ed5cdd9f6fb1b4c7c2523511baf87684eb2f9722b41d504f99afb886a8629eb0e17ac21d429ccadbcd71b0e6f0ad0eb560e7b7e0550cf71662c643d0a3c7f82bcda4fe6064a5e3a36943b74fa1ddfd1350a2aaa6d24bdbdfb3210c7ef0662a45675d1ef51b87418f229df03260ff49b0badc998c4d4f5b25290574dc6771144547622117c902454db8f87d75c0c3fca31b9c2ab889d29afe23bd0034a9d917ac3f0e127fd8969de54663182321c2dc547f806cd07b945009f84495301079e834e7d3fbd5d4b36d94ddc1416497f93d643672e0ad2ad74965c98a69acef0e85ebcef3098843ae86afb89cf1856bccb01de179fc98d1df768c065d3eff5253fad47a6cf3652d29a5db08ed3c3277640a9f55facb0608a061fd889fc681350674b6b2e748520d681a16979b9c43d21ef543bddb45b40e131ef3e1841616f080f58ccdec4e75dd3713b59522bdf610ad62e301b8d7b0efbd35d7f262d79da83f75e95a5330b56ee00ece40c9d44308eb5dec52bfd5eb33652f4cdf54cced8b636f895565ddcdd5f0be0537c9c5ac3cdbfafec792ac7094c02129a8adb656d3e5371783330935e5a342572af5ebd533d33cdf9737d01e3f39ccabda15d698241ddcdefd7a3032c708289b937a006affde598e1f529efd11d1893b013eec78188fbf55a579082fbf37ce9878fd00c9d3b1fc3c90dab95ff679670f6e5538c815e64225b785a28841151c187573cc9d198895454bf8769509fba9149ba8873f8208ab8baf0836efd83e102c8d678c0ab663371fae2f68e67d38a085fc238b35cab63c759eb8be855b4be0d7c0121454a53bc235687512ee179e043211e26ab3d8f453fd5fa4198ff33facfb5ace57d29898266e99d55a36764e2a1968b566305b1cd7158b3d4e08a8cf0134201273ccc98bf28131396c4e3d1dd71477304bdfe613d44997d8959009af93d01f4d81b820cbb08049593253f3cdd1284f5e373a39a98764ae950e2b2626d9f355b5bad8ef7402a3471386523914fd7d33c86b9e4671562a4da855fbaa0612f23692fc1802848acb0ab27b8cf2faf63f0dfbeb4333e019501f9aac010313de5b6b14f73a1d26a5956355c49cca8da40527e48da66050f832881aa6c1f3b85bc97f3d67c4450581c78f8c62ff60712cdf0ac60a53aeca9ab35cc9726ca931e075846b1c1b24f9a56004d4b3322fa039e26f04c1f2d580319bb4d386fa5a760bac1e1d548bae39984c673e53fd3888ccad17877eedd8164e6ce3e72a619ccf18df7e07aefec2d5091d533ccfb9b4f5009edce845be460f66e35dff79499efa1cd1fd0e8aaea5a92765026dbc2f947d5fd5328ed255ba0eda0d90ea8877ce52070f485780b6e1e60f1cadb00a1eb94f90883e6a3a302ad37b367967be7d3a3b9922d4148992b9929e3522f0e1d7ee8894c1761439eeac6669310072fd53ac9459dd8c282ac43a7a87ad28898c24a86d6168a10704c2c31eaf5d7d0eb1a2607120e0b2f2dc56668baa17354eff5da099c17aaabdd888ada6bc3aab7f7c02b0ede6e40e3f4c35f05412d816dd43c828ac4f3ca3d3b66a8537a5da720542e31318dea8443f47786baad27bb1ec3d35364b575d17df0953471578418f4b164be311028fabd874cb0f9b77b6f1161dc45b328af251336a777c796d43e59a5199fd1632313e5e3cd51ab986a06711ae31157710756bb180f170e64e4ba4c026fcb90a6bee45e9652725e3b8d6a19fd6da0e7d87e18eb3b84276559346fb96c1bd249ced55447ce14a38e6881abadc0d7d8a188eb7d6dab76bd5ab189e84f893a56ffb988a957fcb535a9fcac7899425dac33a03731fcce303cc51c2169c29cc0501b2061f257009033d0191d18f61a710564449995d7822ca27ba066e988a8c0c6f58f1c9ee71ff26f13c80a19f62dccf6aac9c0e81ef24f2b9cc170bef053db3a5dd3bb0e40945e722ddf45fbe3552cfa32f01591a75afa54461e595601e3dd2a92e5c839acd5cdae3482fa654ff3acbaa05ac62c77e77a0365bb7dc5256c1c11445e2c99c610ae143c94bd60ce486c0f2a863dce159ecdf781dccd9e2dbce440c5729f4b78adbc91f2a83438832c63c6fac86dfaefb0d58adafe7ec8fa93e1860af29c850edd8f7efd6647e5953855e55ec2ccae687e75368ba14429ca33614251e6867a11004d84853ae660558165528fc87d8acb2dfdaa86e1c59831143043efdeef189d92b864dae9eee075a8d4228472c89b3ceb0d34a831f5c2d118957b50bc7d6a01e3ac8a15b6dcadc4485d237438c5526f85715f558996b666c0b17e680a881cfa1e6bd1b4207b43163f0e9163ba2782b79e6d733f946cfe9d2c7f5be41228b2c95fae6b04775a667b1309f05219608fe1d2158f28d426b660a1d0e3e7570ef6614e11f9d329fcab4319aea172248cfcc3244aa698439e43eb2867d64d801dabd188836cf98984556ac02d1496bafefccc8bc629272e9383458cca92d07014909af74ac95936c963f78787b0241651923d031ccb4638723da50ddba670e164ca14b8462f49130d9e237fba84d722bb288c3fa5e4a34d39cd35de813056a5d4ece4064c6d96d99c27e9a8dedbf9801ea58c01883a7f1ba6f8bd9a5bee9544bc7ae18a64370311ced5e5f727ec4b3fc28a6b2bbd12c86affbcfaf086f68954271d4bf0e1d7eb3f1ef7fd11c4d0d041607609d817790b5685ae6fbe7d4888d4096c4bf75dfeed4112970a72ac32bf58ccf9945b7659cc738df624ee03ecb4674c6a5e0a70ccc503ad947262a88c2aa3699d050b52565743a7efb8cde15fce9389eca211c485136ff1c933523333c9e967044edfee7c8c791e8d068b4798ec380c7c8a14a2f55e513462dc65e6e7cf4d0cf79323be2656253154de766b6dc503a68439260ee808c38bf6d0833a107b1ca833d1a9aa4b8abd35f39543ca6c4431e2202dd4fa01a121cc3ca40a12588fe2c33cb2fcb3e7efff6856c4891ac64b69d35ece82967892f4226b06532bc15476eb0ffc9a8c2c63ed3dfb87fdac053dcdd49460f6e0e45b9ed7d13665fc5c0c0d42c01d2ebe9c87a5fb11bc797b678ce35ffb8680abf52ea96386a23d1f488f6610d06bc7c46dbd50039fb179528d590e3de03d3cd5970fbda257e6bf1ff1dd847311a719a8c1e015a3bb69c41b1f14b4ba8c801dd54ca9f3867aecca624746ad976923fd86e9a41de3dffd0a7631de6f2bdc09309ccdabd14ca752587ef95047c916a6e2e5c4f184d943f3e749603b7914ea763966d6d6c07d73d855de731cc3c037833268c02b6866edba2209552a4c6bb9c637c6b3bd63b3a4c5626573d4d671181193fe618b63b14192bcfaafe14228e0c10fb2cb407cb38f747755be7d87145212073c58ff5445d15d468af1ee310423d56fb49b89b8c70d8bfe6592a6f9d71232ccb949208369ff43b2f774500959bde0752e06e712f43ab340c7c2260c811c09c142043565c133a8878457259375830a800513bedc09ed1fde450a3868a75daf44f513f24374af619070bc1e7b110e0671820598850dc552b2145b18e1ac67d770be6b16d87301f5413d79dcea217a499f19150d05db53fc1664422102752a4cafe8243b74113dcfdbcb4f1b85b8b15a2cd52b135bf5e3f301c647d879413bf0e5bc40790b0cce87000bd060fca1fde02ae9a6cff10006d7915f9dcaacb265f18acc981e8b214d92b8c875ef7cecc04dc1b60714fb26b257c64f9dff16a1aa99869bc985cec20e02dad98048f0df9c8f151cf439583ce1481aa7c655f19f9e806f5e4e070b13d46a44a1b9628685701b32cc1fba8a08fe2cf5e001820927188b1a9cedb8d300e09378da58bbe584760ec706f0f16f0dd3701d66453d7dbc62a26d6baa9f4778922957c9dafadd2af8efb0ffac9583763d33cdef44ac77cdc06373a0bd4596297ca22b9e9a7b2630e502f9aa61a78f5875c17ed7338c5159473041693e1b9c476ef225b09417e6063b8808cd8eb0f76544b8211922c0aaa70edaec43133f1b293bbd9ca58d8fa222afd4ac1f27f06eb0695e6aa2a675548acd8866b7d98b7386238377d09318c6a0fad51c409b17a84fcd6b1088484fee1dc511fcb1755d5844fe88f3a5a36b0501a5cb82ecfc792be306f4c97d65f23e54001c63554f3cb06bc0290117ee681de749f3f35427d766d01f76a78ad97224ed8628ed477ef46842d0025d1a74fe62dcbf1b67704382d1e07fd38d641173c2c1031f2af20f96a5b30c6beaccbd14aaaefb5499ecb3c7dd50b3e147cedc9e0764b0db8111f73a0d62fa4efeaec76bd308ee3c3d4d0ed48b665def6ea0e681f43cc3847fd9094ea8706cb1edb13a16868a9720009e8d35cfd22bdeb5540cfc88762c08149452c7e9c7affe356003f4b0d34c75ecbf1afbeab5f8c7c1851c7c5755c3f6e830cdbc38629d6021a3b9f3b3e7bbdcb99d0d531fd1d9fb36422b164ea3c61546a679c8cb6be6eb85e4cc71c0d78b8923651cc0617b7be2e4c736d85f0a9262a22729f6a9577ba17b3d261582a81deeccd97654fa5dfada125f5d878489efe0773128e02a331e4133fb41cd3522e6c7f62173977e3e8e02de017a9340fcfd97561123def586a07969ef3b7a0688ef4ab55c56180c7d2e19eae235680e1f550e5cba26986e769e33b85759e60aeda0deafb84eb21b42c228b83d16de7c31105bed2c761a9c4ed27fbe9aba2ca4a17b0e0c9dfd0d457c201cb14b4a364380ce832f8d3dbaa470feef861642bdb5853d4a2083e7cae4ee88149f88b783d0737b4079f3a3ccfee951c33b348aa15d3982f332c9314167277a052badae78c694751638d07e3840f45dc6ec07706426d374dfe478ee54f0c286efeea51ee19eb05a0036523872ed69530bf34c3304d24007d64ae762faadea490a77c439d4fa739bf4f280174208cf094b1e989510dfcca635d36740c634caccbd319fdb91a8a2583e33fe0b90d52d1ae32f12a3d929cd0c6cd305e749ff89b132d0ac7ba0aa2893575db2ec43c70eb9c67448b96c9f5ee0ff687aa9c384a2d0052af2318b4d1aaf7c9d54a1748af9bb30365c656ae4afef0bc64a08d09cd759104f8d1b135ff43a463ef672cda3fa6dd6e5e2828ff0a39eb5e7f6c2fc6bbe7f2356b0be78b069f4ebd12f41a6801883790c6be776c1421fbf128c905786c208932c4eca7898b809c482ba99c70dd5bb92dfcb8147c2df0bf67b13cb69d42b31d78fdbe650abc15669549a59ec70682b200dc04ae14c099b3057e9c0c8fc2691868b45f0511530fcc33ed171fcac3ada197c94bb50a4643def4eaa441ef4886aa7164bd2cc610b467066b80071ccf03e18182161a97f9ebd966ecbb3d40f5acb61d6a1b3e8ec5a1dcfaf1b082ad34d206e192d0a1e80f62134aca99ac2e34aef7f651ae030e1255efabeb3a228d5de2f3f8401686bf19c62c1b30583b4350fc649500ecff617b08712fcdc4f68336594a1f340a63eaf167fec79c31e316a0fdeb421559b399d9633ec5ed268787f928bb9f1baeb1c0d42743ca8d9834a32c34a24dc8d513c6acfeb9eedc83d72f2e001fa9712e340475d58123905359f8a7674d4a2736325769170f32bef110a1277cdeebe9fdfeef5230d180502ae2804197f037dc5d92182023c793388820dd1c25f7f3e1924946e10973fd1b2760c6123d911e17976af47dd51535fa14c0da4d72562cff8c0a052c7961fa8b8ffa9d39676e73fb098a86a001c00dd7282198786b16f9aeedab39a63764c6f39f9074c729d74b71a83d28c4ad065413979daa4623d7f3b8cb5cfb58f28db5da0c3a90e233db88519b053741c426f1c442f9ae33abee4c4e3cc0b1a80cb970cfded6b2f9f587c0c572d5601e4914fdc0638c569efdc49ac0ceeae104df20bda87ca81068e4d9be94327d4514d708fe5a60bef7eadb507f533a8175b444a8cfea50838f49d3a6d1a8ec98f3e70f24155e30141c541efa26922d06468d5cd53b09b811b5565bd57f4cac695e18806fbed8a7d855a0a8b5526cae3c3dad6ff03c163095c4605a2ac32bc5b77abfa1755d30e9b41219e8ca581f79e38cd18bb84f28a0441e9ab048b184be4f48c381d4a167f6c30fca7f33cf2694b820cd7b3e90f5c605ef17ea094a63c81090e5f9f9667b80bf3dc3530f4dd5c78b96095a85e08e11a62b2b618551b7825d5dd367df031bf3e21200b4b1fe8777b7b72675554737691a170a79036857b62d66e7098abb16f0a629fa44c0556ba40fb9fbb51c74f8fcda1bbf1c465ed05571eb4c6152849c66454bd64184784a6f653a96b875e70fcf0bae2bbd7611fda6f1a20543ad3ea017916d8de8f6fa523073d95e310a5591ba7673a32867adc303712ebf9a7218bfe8264a1808a481ad7b39a9ccbe557570b252a9d604d8e5ddabb7efffaaa16d7b3f35d0f61ca4d40cdb115d0a9cc58e98128da1ecd5a288dc169f267cadeb4394a58667d88e7951695adadd165136a3aca532d011da8624db67c884805acd7897dbd8b938f80ffd9525f5df7f33aa3ed83f7bab22883f681f00501e57acc350b3e7e014967557ef9a979db4f255f31c71c51f1104c5376ddaa348f703fbeaec0e76bc28b92cf3fdec1421c9ac51e56d06082facf8946fadb4255c66bbfd6798d195afec55096c5e0d3c90b69f18913596ceb81ff1e1e633cba655b4c8fe14e11cc986659839cea018ec43f64d57f5e17db7e6ef50d1b381a5bb2d58821f3f1e70f8b9643112caed525cbff85af8616eb389275d43dfcafd8f6b8b55d42d533f8e4a68fbdc5c22397a104cbae81f35256ac92e386db49512b575083b551c6f2887c72bf62fce01f062b280899cbd70310ffe6801386e819f56a11cfa31f7af38b67990fd628108dc13e2f11bd9ea199fdbf9a835b8aa983db1f1870dddd349b783e9bf201a5d817f5b6b599a37e2e71772483af0ff7066b72bf99d5eb4daa20a95b9586222ffca3093b8763eb2815ffe352683842ca69960aabcaf1a62facb30f3587ec154d95ed323fede4cf0a479e8ebc24c652f77550243b3d07109007c849202463d045ff75bece74701e917575880558160c18704972e8b0ed242520bbe0bc716b5b726ee686afe6d412fcf5f60f01b60ac2bdd92bc1ce4e7b3557b162c7dd369de1e57604e3c10e8f37566a286817996f6a38e61b9c606c90373cb853c183cefae8a81591f528b91ff0e6f77a0b85d49ab9fb9a25beafbfde7908e24509e28d34c12e2deeb8fd971989b12a6d51521b5264c2e9ba570df47dcb0c81f530764f47f8f707e086a5ca670b16347435406d7f36c49b7fda2e309132959950a4a453663ab997d78b91b423e4c35e2474b0eb6e22a94335411e419c122c36a69b832a9b2070901768cfba1f973c638c442f817afee52941c4f8800b2a07ea3f696c93016e329432870eb57806fb2a616a65f2fb5a31f9f36314b2c3b26aff24aa62d19e065ce644e94a3f24f8fd2c12d99af6fe71ade95adb6b71a8709627cfd0977fb3504f015b58f5c32d7bfbb5a4c072953e8afb605b6c24e9d143552154d55951b07993853fd04c2bf94ccc50091e7abdb9d6b731fcc963f60ba0980c284efb5aaa1eeb352ad9608b05cc420914fad0a35801843ce798b94020968e78a5ef8ec62db8d80c855e4ac25cd83c72adf641fa67c95ed4bcb28c8084da7fa229949487b5bfea49a7a7907da116d3a79a23f64a7b160ef088b1f9dbc2fb5300db6575bee42e17dcc0e59f9f9c04044bef5a025ccabfb82a809f952ba70eb55cf9659a7b9d26b656f59028092b4afdd7a7607cba9a3c082072ec49eb49fb8ae4586c963624caae8f97519e8d3af7825ef16f524262980662eb04f01062cf37d8138e6966eb3c8fc8d0043b460f0dc018d7e28f312c5fd233043a8bb2cc7aaa880f3033f3e9cf72be315192b48db5122429f2e3d577b6940b5fa640a4b4b75bf10f1d02f99a9584065d454b05efe42eae36f5fce855bf9fd62c06b906cb8cffaade7811c11017bfc520c546df709dc00b908bd90fafee3e2dbe8e915850d9b30f6e1aff682f6502da18be970f912e13896823653ffe0ddeb02482d3e307fd29c92ecb3fd345c9ed2db290b1c28af3ece92259e8ae87bfe9412b39d0c10ffab6fed4fc71b119539b7d3b1f7adbab3a0dda069dabb4218c578b27af2d4f0469e6323ff86061326d2de32a57869637dd81a4387f60f577dfb97ccd26adf6a06f6b3c36616a472ff1a5914b3a9d8e1b44f72e5a3f4fe784407e850fec5a09fffa81b80da30c394415d75acdbd71d4cc2824fefe881041a899e54eb37d1d04e95bb1482799052519c453e6a2a9f34ffb37f4ff1979a969f45ad25f2ab253a3bd07b057681e9ee91776a100cdb4f54fb94a8a97f43ec0a2fb1e0ef706e558ea8ec3c5ea1a3d6c84832fd43128ab7b5618efe7dc7d28e7852583b22ab2278595d7f5822f0b50a2f3168c8497fc0e748a1863f587ee0be9bbf04a5bb37f5d03f401e28aaa64bd39a28b302fa81806e0551a95a3290edd3b2bc8e1b291db1d14a9d76138b414548f48abe7a6768e17460c341de442424217a7f2a8c4e67118cdd80f63b0ae9c8401ae0f3b120f7808effc191599c53d72253fd87213ab859c7640df91155af518b888c3dc71a15f7b4c74cdcb53dc42f8d7f2813bcb3d81c064afcd88a46d79b33aa989a272fb6a3c5011f21fd1713bb03df40dc00d83ade99a18fe47ec0c5c36050cad82187b73c71fa63c7327216492374460a9da5b1ff3bdbdb68590632491e85e2bf9faa13a89dcf7a762dbfeaef82fa86cac6a79e84424adb1dee150f64a6d56012aad5a2c6eae2374a3ecf150e241315b2254ef0459f61e3989fc0cc34daeb23fb2c2146b468e0214de1c07494fbc3534e586a52a6bc38129cc80c53ad472eb34e560aebebea7ee3878c1aad8e2a74843f95b5a1941e0cb96dd450a985627e044425d6df3ed05d084432192d88ebeffb4e937dfca8f44c0335ef2e09c35d89659e71be36cfabe807f7ed5b03653a5ccc8236827587e29aa3bbb51d86b6cd67598575cfa8ddb0f8f517922af567847cdb9fa721f2266fbffe3609a1b62a3e7fa00c9683337992b4f17772bbe9516bd44760aadc025b2f5d94260f56695bb68942ad63e5b078efe66f0ef1e5677da742a338f3dc05df01d53964048ce99ea48f972acc6bfca1623eab70e337477260d2a19984a9647e3d6878871d2109b920fa21310cfa71c364b80263e4cb70a4bf220d1306a69ef25e1c8cdfbff419200975d8295727bf692166e35c4d6e0eb1186cf9d04ae684feb563bd5dc845965a1fc3fced003c9e17b3f5c671fb28ddebc21963d18c4733f5c311dee933858c743e06fd69d51a509e26f7542f6fbba886fc6a3857463398b1a6f87489e9768d336d5c99f218ffa93fb31dc9b86753ddd47c9f500bbd3a0437922bcb15a1fcf19be619d801fe3e1b8d7edb70d85d6b9fae650e5dcea5ac6ab160df818a3aafd0b926c186f2ca03a6ea0b7e5dcd67ee8b32f5418f3275459157c45f7d9ddc73050a86864fa415f6471e45c7c4ca98caf07e7023c3c7ea2e2f1cf2b2dccd83732adcdb1cf64198227ba1f0bfb6f81f704df971e09ce813e36a9d5d15591199d63e2a8e42b03fd07f0a73207567b03c26e369396dee18b75716129926f8c41a3c9e6c7582a3253f6dea2c85c4d6c2ec2d082a3049ee5cb1dff9df4b3c6d4e7d1b56aa4323df92cbfcc41a2cf6de24b9ea3070d05efae4bfef9571abf9df937e460318c3a809595088c7f164a75f2f76ccd6edcf7b5cc0ee74f4fa5fd8a111cd10b458de8bb7d2b9c6a05709408f89714b79c5c45a6c8f7f4f2d2e17acf158543e0c9939cfb8f9449a15822c31fd5ce77c3882d2de5cf97ae9369841f574e026c917ce0ab8c27020e5ea3def0cd66a18b6be7f56a8ed985915e907a35648d9b0edaf788880d55c9e40628853e9589d1bfc100aac23038ce3428e207580fd908e6568a7e38a03a4bd6b29d2aa48195f742fc7521d0a08ee359dbb328facaa571d3a2ac1898876eb40cb4dd4b8f1f2e4f86f96603890b854ddb02010af14b44a95a3ed15c6a34c0ff8972efbfb1f972ae9f76fdc4bb743e2d37422837ea7f03ff7ca9008928bad84f2cda39e2614f112d243bfb1e366ee49d6ad48f3a0139a01311905da356c17ef63499193d04bc473fcf249c782b5af10b310ab0667d6c4434450412dcf5d49436fffbd32fe4e81bf5fe2d76da85a0f0b26b3ecf3041b9aa75ce6a0a58cec1cd27ad0d0d9f15a11978ae0c5c1001cfa1ba4f0d32674dbe6f405215071a00f73948d467dd3998c93f32fb54b6576e567da18d979d7459c8bd8954954583b0ca3ef4f12837903840dfb7c772b9a9a6f7ad87d9db028f367bc5bbe1fe25bb01e3790f040a32c1192c87adeeafca9c7b2aa8a929e0d623fcc3a23e50da3906ccd3b437f413c56299de9c2edc73804d0e9e1ab8f056013fcb3d62014be6ae6b9878ff3751b21c924a4d7f2b65c2e77f23e49432ea3f509136db5d38feb5c2376087a6ce11e0a886d92c11ec895d72f1e3ec08b41d098c40dae8a0ef3f6fd69ef9a5693fe24d1b4af0c278ae4cbf6f6e96c07b247de6fde7af2f38857e5f377da70a05bda5f7d73fcc8e32e713f44a5a1fe9f9820db2f54a20e850d0ded096a876802892af66da724004ee3bdf0c9d622f45e37ab2d916612c334b8d0dcda3e29beb8a568ee9dd77ee9542ee1e2a4018990813a5cd1f4991af972970db978596bccc7e03a104389775600a5f3643e4142806fecde45b4adb1219452e661aaaf63250632c6270e98ed1ccd4f38e9c067b239ae9793c051f395255a12cc1396e88634e61b36b9c4495d6708b8e2613477a64cea0802c00e516677e7b665ad4f29fc749b3eff1882f6285eececf25cbb0d6746424a04c39d8349f73d5cc3a75655358e0830e59f4eca83178de33460102aa591a5b4fe6e9a09cc5aa66d07c4390eff28d5a3613082d120555af4d89ad5dde67917cf09d103594acde68d94a3d23dcb2d1dc5fc017f60fad81b701a5845a900fb5efee186ba5290c0611da8cc9ad782d76d6a995dff87767dae45b6ba2610a57cbd0439fca47cccf3f123379c77f558bf5634445227a4f7c96438f0ecac0ee0641c238183e0037ae4259a550c16be8630115a501ee323fdf8a226bf7f2583e0af98b8887eafac48fc2e54ec0c1ec8684f79014901854824023f4ec3f93fb729418475a3a757b6909df7e1fb8f109338d1e0983f6452b7851f200df48c1703cd65ce77dce9333594b669a57c9d80aa6cf05e63ac6cc8ccf68c80750e30fe9d81f6cb1fc4eebd597dd7c4e3fa166e87d3f38cb7a13ed6139e4fd0830975f5f3983810a93d47f03f502e3b50c89f6b2a68f2d2168804da89b88e5c93c9f1c9bba2a9b21ff703c28a196b870e9b883c7a6f82ecbe7654668cea9925d1268c14f96a122e4c0337f221406e6789fdecdba4f600db8dc1bb41dad2c908e80b565da4cd52de7de4661bf292516bab6da0331a98ac385da754b561ee51a2586efca3a2863843f591742a7858c2176262b7498f4d4b1777ced80db474d240966da722755425f3532780dc05a3a1b63527d3ae4fc072aca1ebe29f4afd1071abcbed4a31909347bea00aab8da01ac6157209348dba6b92560b407cd06b52d49d76595d54c6c13d3433b483c0d0e48cade7dd6fa74298f2911e9f274820f99ed9920d7627172878dc7ce2d28a191b984ef5e2e01fd61bba635ede3e5cef45fae3a2d77db487a718766b258d9d7a9778aeef799f6c615b1fbe7683bb7139d257d6829b653e6a61e42ded5a364aa7618201faae9ea5c642476bd1cf1b6e1856bae1d98769978806ba21eb8556cd0a977403682e545b544b4a5d3994dd0ad7b38f7a92c9b9de009df17309b1c33a30a03531a02a071f3932de81147228bcc51f87c325f363d0dba6d4eac5edad1b40c80b2b8adc01eb63eb2da71124e74d46e9819a9363b8292d69cf09dfa3c487b6431021e7d068b492fc07ae9399ba25a7717fe254f75645f811d7706496d9639261efb66a32cacdd7ad3907b0cf20d870f7abda3c319dd76c0cd346b6c975a0ba50cf3cfee104a93f59f573c1b169e71ec2fd029ee540c9c624ddef3337d10f2008ad5b4fd71cc2b80f5dc3620a984d010bbc2191a721b4ef5c11fac017b3765d8b5d023b51f0c8f6d765239598dfe118c299124ef8d498608a7b6722e4ac860ecae4ddc0026003f2755c63b3f409c3394eab7abc02abdd2920ac9421d5e25ac69328fe1c61c392cac4309040e023b8be2778f0a7fad8c457b7b915cff5f1eeccc149105036f5b59ab3dc29ebd338a7867e0b3a0c7a0f53ad1e93e104e0091b4276d5be1e1b227be31a5261353b45f6e0ff736ac06e6a83b79783c0f27ed8f4701e0c47adebd9e1319d0ee436fc1c6466f575a88d62a66eb54a62c3de0cd93a933200fec6c7937d2ec812218314190bf5a270f4eed81875e1d07c604412fca5b0106bc232cf59fc052a491a3bbf530ed81896ff6ca44d079118d8fdcce008f034133cf179e1cd6bada8c46391a176455f3879c66770e97da195ea975fa97efccc77bb7cc39e3eec935cc15e22ca4174e688c292700550768a5892dfd16539c1f3880a4461400eaf9f26a3302b7d3971b83e8c323763ddc2b01ad445b7ffd56bb3afc5b475eb9d6aa0c287ce98212d4b9916915b30bf3891c9f555036bebc277fce8231b37d86c36b6e9843a603b6422ddcf89e4787b2cbe7ba4a2e51b1e8251f928cf7025f1a7ae41bf123cd04874c0c5876c7fb1dcc4d550045a9810cbff86dc280451ea866effcdca6f8d72b9e6bf4f0a801c2dae6ef0439ea3a10d3621b34bd5632bf3bcf5787f9150f7aa92b837670ecffe676f74ace6d34aa81fcd669544b36e792b546c702d18a80338b40463494ea66363c0ceb73df2dbcdcdbd0c0ec7165da288953767233524951afbb4928545ed9ecdc8914811815563da9374c692cff0207d1e4c395c2d0014f8c72d3e796102fae9678fdc3dc5466f1be83d5c8f6d58f8fb6971390c375102f7b31a2e84eff54fe92cdff9806e9388c788a096a4a86cc88923e43b8f0c1572cabab805e56d7ccb87d7a81c27f59ebcb90ea4b1fde72c56f1dfc76173140269abb7dbf195625113b883d2385c909d850e16ec0b5cb3d28d7109b25e61a99a1159a34fc085477c1ef96ccb3535ba245a438eab813c915e681543d2bde7b543f8b0426ec09afb3c7333ca061795b18c35c14fc3d7b71ef1c4eedbd97c8fc8e1c9ae9f6fdfad5c0890a2b7bd0b2409a88455d9c3e040c60fa411ffaad01cafa2978893ecdd61940172a6aaf5ab243198dab1629fa07ef6a133d3b68fff4d7c0b8ec76959c700ab1c9651970d606ac8dd28338fc0b51d856bbbedd41e81612b01950a5d0be71736d48fc2e6d6229dce76eeabb6825f2b0130e2d94e7d9d7f5cd1e48e4939ad7259497c427ce80a4402cc53e68644816838ee04d94c830052ade45f5c581a38f1372c751ec42727cc6ef8267f1774d82888488b71d894d38b7e80214d9927a6a314ac137fb00eeaac899ed52f93915d99042a9345df6ee3e38b60d08f25a7a575fcfd1127775d46b4f8ebceb0724ef88a4a01a0532aa9b502c19949de1c079e6d34a9d53e1f8f524cc2ccac41b3ecf341aeebfe4fe7e6f9e29ae08ab16abb1ecb7171a26941ad6dba7f0912768b604cc8c4ca0c72b8a0aaea7a223fb6185229efdb800c784f8ca49c4b58d4fed06f721b3232e578bfd6f0fdbe02b70da2a5682ae60d1fbee6c8a201dfbc3da821234458379a90c13200ca41a3597ae46cbc24da7a7740102b8e01a2d0b4934af3ff5f8490d0b8e9708f802ce4c11b8fbf901d258d767da9bae4be071b149f3da1bdba9d32def84e3fff1744e6f95bd1142865c50de6285de3063f2d351228bd2b760c417c0f5ef5d5d8c8d96ab0e06af745b8ce9a5fcda51fd8dd9654cd7d372117cc544dcf88acbbb95733c5d1d8c38e4eb4c5f1aa5010815a5bf2145ff025005d4d1f4125c4444293287076c3859ad4230f0f1bd997bee000927a3e539c3ed46a7ec780cd1ab0c6e4f29c28892643dc08b14e66f0070f1e2aa25c205222e5ed273dd1b3b00439ce410fcdfb16429a11d597f5200774595b85403b8518c2cbb249311b23e7e1f541a67f0744d9141daab8bc105c9a114363693710ba0c820e1b504d8f6e7a7d584dc651635c3c0ff694cf361bb5325dab35d99d527d2fbf1a2907d8773be24d96e44e737862e3280b86230c7d1f7384e8273aa73e47b0c5b5516181f38046bedbee6995cdd2b2d6bbf4c22999d7653d34c9417e33d27963231069ea2efef569b8b163a4b8927439ba74870a26f7fab5cb83418ce4731f9129a6b26e4148aaede41c5d363dfab985059dc3c117f80529178d9150ae2ba4afef0d70ad2f271b02b9d5559f6ae27f6a135f6d7e75c63e68def855455679fa432c0224ac4a713f10f082e87dae147e98504625a3d0e3bfd9dadf7030b78c67d537f730e777b4bf51737eaf50e3dfb170ad3810581c9b020f0292ab2f81da6ee03502a3edc4a7ba352ae53e8cfc40e3bc207cd911c93dab98924e33f2156a96abd15c398a36cfd747077c2459836a42d682f144dbdbed79eb119820dec383d75ceac77c69cbea0555ff891a99675892b0ef9f091d888c709f1d65783aaf61c8d9cb77bd2b8ec9fa4e77af38bfcf28c23ee9917e275005d43373b47007863fc3043ea94d81cc9e5dd95a00819d16b2cf0352fc20736e37cdeabf9d077cb31079c5eea523d2a296094f9bb0ee946ad1fa7836cd6a6be443ee8355463bed517d9a67c6aa33a7acfde986cb44a40a3fae2ae684ab268209c0eb5a103ab3813a004da9bc5ee2c6a5684c7a8c7f77a7775bf453a66e2d4bbb15bc500f76d7dcd96dce66cfe894b2017d3188c2851aad8e31c5010022f724f60fb9aaf6fa0941c88617ed052fb920608f6a7cc51fb64bf3d829cf2906cdca573f9179d9ea9fd3e1ca880845fec3dd6080e0a1e7e2d7ee863f9459ce6b4a1e3b7e97628cb05aa2ab201e9c6448a27d0db05c4d1d1218ee0c7be9767a937733d8ee717e82444168b32d7b2bc8ba459895c886333bbb71c2c82ede12767de0357c294fdb15d4d280f9e708a53e0c3a8e84472b299e43a77fc4f8070fac024982ff26a60f1e6f91a0184512225cee709c3ed1df80dff3b2d1efb118b20597bc3d4e0719350f30860329f9f19f06703b9b4d3221a421f854f4278d92a0cda894cd2f68c221a5e953cdc37cd628f761ee8c420937d03c638f79a34ad0c1e5ba8506d5334f2b9064fcebb3a0cc71708526fff56ac1453f63560f5e4af05a5138d1378d6544d36661b1efb255b5f636a264992563323b2ba926e425c204d61d7488359ed1d68dc65d5d9129a762aacd22543f80ae91f2ee524900c77c64e75865b094c5b2e0097712e4ea538d7c7da30d6083e568e7babee9ba89e4363be81e9cc5c8990c6cca8c52be7be5d1243ed14c4d8eca6c1e609ca1332930850fcbc3a7db1ca31feadb60f075eb28771262018fd72868366949f4ff8387915ca8c622bb7f487f9b4497a4ee7407e681d3ddd5ce4b271c48a5cdc70b5e30a460eb7283be484b45b841f59c31e8f4fe47c360d7ac479e4bda0e9ed48aa597f3685c0dfcd07d671e0ee040100bc8bb4122a9f15174e5577120cfd3ee09459401e1cff6b47a38ca7b90366428c13557617c60cbec0547ca8d76c3abadf604ecc1c597590bb512af4d145a3a59619b70dc80b59dec3987fa42cc2b1467f70a37bd48f6d752e5ade76005dfffd74ba3e1d0a14e38d1f50efcfae39905823a7db5d22541fa25919a83465593f263c7615dd78fbfca44ac85a7a4620a8d972ee048d1aa6e0fdc7500e1187a2e8ab0c9a43a71999b35a1779f0fd83f16b573640c87653d967258fb18f9d5d5389f845f87acb953bf456cff609dae6c801ccbce378ad1cc03b17f9095fe84f5e033eacb5637e5c92cd02eabb5ca3afbe13b71aeccfbb0e7dd811fc0fb61f7ac973e524802989ad2a4d9803c18fbad57d98576a4003e2705e548082acb0e821c5bd84c51feb9a3f473c9fba7a2a569f6ccb05d07e2ecbf9f61a87b644d243eb20836a3c50d87412075c5dc9ed71f09afb69ef32c7ea936d328bc3d83a059da5b0b62df8ca4947bb31973092785dbd18c37092ab1f0195477cf31c7867b71057a4419a730093b3f575f30a4a1f3ab8cac2c0ea013baceb2bea4fcfc12c592bf610d9f202f92413527e02304388bf7ce529e576daa6774ab9230f463262692b4b36f472ea63089be48101111026aed045f0326138c3e3b7ade7eb36f839b8b624d46229610c5ac93dd9ca89b323ff698f901a31ec4ebc69aca0638353b6c50fbf7ea36c5f63d1a6d324892419695fa8fcee0c657a97238bdb528ef5b1e34d9041f7df657daa77932ba144f4d6985a43a2359c612d07c907102d94eee0b14db3b3f50142adfe3bf9f45cfe20046895547827029f3be09d7f1a8e99776e959f18912cb3b2aa1bb3994175d55a1156570dbcca1204eb4e41d5bb35f04b2574aeb1669b7327af30e992ed0d9b0d02347d87d96ff4483f43ef61b03c1fbddd550df35376dce922ad27abf86ed084f0dc7c7cfb2a1e2871064d0d053bdf8acaf718f4e3284a6835af49bce5cb08a3583b609fa9086c5c3345706fb0624be36aa15512646ed8a37efd38db6e61dc04dd929a3272d148162a74adfc809aee8d0f232d8a8ceebd7267eb4c7330ed09d1f4c529a436665dc5618d945880356b5423e1b37b090875145ca04107b08de80321a99e04882e319c1508f0a8f82df7a87167d8af806e9d7e5fd3c5752ab0290f3fdcc4dab9295e58dda4cd81c9dceb9fe6a4cc9633bee42c1b335a54d0288a0c8d0ffebf0e27e1ea118ebf45bee607d7058a2624be663881d56c9c2842fc9856bea6861b117d3cfe137abe8fae998db6313ccf49ebd0635809dde180cf71b37e21b666f52c2a031a76ef564bcc6795280b14e2c1a25553095fddea4a5c53cc2ee79b2eea72e434bdd42abed41597ea2c1616cb6c96be22fabebc0ca02d8a4bb06a70e753f3f372fb99ab621dca2753116fb44017dc7b56d1b699281988f715ccdcbdf3b17b98b4255d91fcbc53015f4c40459f870825cd326cda38cd835b08621079bc7c5c6dc7933fac75bbfe9b79f1c001f629dac3230bb0819b4039f208a4ff3f4eb3b2b1493ac59fef545a85d0a359eb4bd2bbd0d180b0c7d03d57acb22edca7d3fbc02fcd63238089b58592cac2073aebe88959d3acaadd4bce5311827d0722df85798fb103e798b1bfb4b49d9f871a9ad743fd64a57898523260c35413267abc0cb79156bbb51f345e5dd02ef7d080e8194eac13582a6550d8f96b9870b125ee8191544e199ff60950195720b89e996a937c32372093e5fa24f1bf951e2cce2090b82cf8d5cb570a6789d8955fe827da3898fbff519241d29e93611935ca8d34afe4b4d54018d1638da6c463741a8f6060c950d9c082af12555f8520e694116c1f58df7f4b0fb042d7c4bcbd8d100e7e0f05964efccf8e10f9c9e6c68af5f348a6cce025864ab866351fad0e2fa1d8d6eae53715ac727d10b179f6d032d8f474c65e2bf1302c4d2dffb086dd381750bc3b707eee406547862cd30ab9b57973aed57c9db8c37778b42d33eac5b335b88dc9ab9712800f4f02f3e40b1641a1cba57a527188112b78c9d506ef4128ba7e93498c91c5561c1159188a482ae5edb2bda1103eef96e4e548ad0af61c4be474a413bc245cec62d1adcddb2df2a3393e87103017f76e14c6e1c13d4ac4913afe36fe20f71dcf9fea49c7ae9bec9562699458ed3d35904c601fe3478809c968f769692a84bf6ec2869faa6752282a8a8c769e71cb3428ef1fa827915304f8724c9d017327001efd100c26fe08956ed784621f182b2995a37ab58412d4d1495355a541d3ead4b0e6ce76a0bad1966c5202e81a63d1e82649251842264fe977a1dc237c6709718fb02a00536e3398569f32ed0a65896dfac0520c365f2bee8df31c4ff97a984ec5ed48afa444117f8fb51e8bfcf19d9c8d6063efa2863c9518729542fafe26e3d53851ed54293575ccb4601d98b5b402f27d7cf5b4217adb95b657cb75159b61491ecb1be9bd1555b54c425d9b934ddf0d8e54578fa096448b9a7c320a15859c8863838f1530324a83fbb58b4a30d4ad3e247b299c507b652e08448786cfd4d6b34d38a84c4c03640eccc897220108215daaaa4526fe8d1a3ad3f68b1981331e2cd54c2b36e894bbc8e8b7d5869d119b25be3a6d16bf08262727626f3c597a801694db9a43f7c7edb48acb89378ab8ebc2a3d987331749a0d63c76611b5f407f2b9c9192a73b51aa7573617f996c3d3152e63b26a707cd3ba8279b7e24fb8effcfc86c0d3630ca0ff3451d4359c40ad9210dbfb8f6361e21f8dbc290ee6c2ebb372cf259e6bc63a568b2ba0552b9e9844edf2e28fd46d9a59912fa169cccf5808aab66fbb9cbc15dd6608262089477803a207cc90e0b68c46b77f4ba4d59c1aa31435b9156bfbfb411fce6be3cbe45cdbcc35e2c0f2be95ffb301a5bd3a5da2bf31bd7d5c099d4e2ea7a3cc6328b2be6612fab8180fcf15279635e1a08af09af9a584a35e895cd64621a17a6d76508ec1175d1f380285685d8d3251ae4be7d707cd98b76ab04f0899ea3e99f6cd439650b9719bcced356927c84c0a05fb38eda346211602ebaff0f4119f34807a88f178d0b158d537dfe5c7428345092a80d8311526264aabbdf51c57410fadf51be7e910e3844cb475a8681239215c3d1ccbfaf9af15cf7785623ddb1d80019d8afa069f19e6e143a202a55017e9e54a382b9c77c9c8abc8ec24a395d9739c8614aef98a1c9d703360bdeaf9aac05c673252d861d5da00eaddad8d8579aca7a6b8a19c6226658af341c9f54835c683ec4f4400b223d04003f3c68081f47a4326148f1febf97cc2e8fbd97acdfb90d4c0871f97859866e3e42123423f3ba888688a7ba1114c60ef50db7a59d8dc2bf18774fdc74c038bf95cd8778bfff855b989b4aa443e1da7cc5303f4f3cb4cf7726adafcf97117212f339776efac41b63d79aa0f0dc7d84059b4f9739768c09b95c7124d71fedc3ce2bec2edb5c5cafe24b2ca18685cdc99f582e90edecea7b7822023629bbecd92a7b3247a2560a246b79f650b0876d98fd7b8892fc5e40d6d65f1538d2cf3c8898b1a3fbbb9bb912fec864447aa3832bbe3b92fbc3adf106b0d5b3850ad577a23fda95627af2a809fe251fa397b2cd5e3b3f9354abeb79a8ad06e3c699d024c3a363db02b0aefbf7959af9ecd222328a78de24dc21031c010363e274795cd16fb438423e0d5a6cc9e06d35206b9b975ec1da421b076ea131d1134c7370f8f365077ed491cd85fa3949ad2ee9deca134fa7a7ce09e4022ff0e01014a42adb84399cfbcb5b454ae65060267119696dab39034926ebf55b065df240ef00726ab56ae83ee64d43fcc4205fc02a2c613a65b0643d733ccbca4833b15ec5ac313a17b4075aae44b1cfe61486f848914712bf2784ab4435d222dc77955bc508b74cbf76356110991b6e40bb9a3f6fb1e5a3e72184d9a2eea86c023880af9c65c2471390c18020c605ed1b6fca62a523307f357a1c4e3ee36bdd5059ca511d2fb47057fa1a38b6a36f90a061db42386cc7618195bf275e754a8dd921b33d08123fce25ffb44843c1f8ddaf1a4ecb9dfd0b88d8bc12fb50ab6951712e35cc2a36549188a21ea4386b4fe77a8da55711abdc37205a87bec21721907eca419baaa23d13a7355b64e7cd9b562fb406b037f67cb91cc23a21f4757009fc106312468a776bbdaff1d67294e3d9edf04b281e972fa4d890dba2a246c880b02f6a6b320e55a9282e0af7b428701e058df03e9fda6b765432727d6dc0ede7849441f4592c5f967a264c44fdb65ea17b8ec918b2400acce798fb95b985c835e4d862a77ba6a60f5a3865d69a612ae063ae88bd4fe87fcc1985da7f5876f5574b37fd56ebfb3c523fb967e7672cc6264d00d5abde7987da934356a7ee64b003a7f4f15a5ec86daba2d159d0772ff85cf8576efcc605befb02158f7e74ce2af4573d4907aae9571df50326eacd9e67d9f976832912b8d2d9e91f28af23cef5ad0172030913a89661d087ce5199bdddd921bfa8eff7416108c423694cd7036d677869d1b7c50167048b8c61bd05f9d4d950fb368c453397bf02d8e049d23211749a5962c0ba75a34e1578006da3ff01cb87f67835a94588ee8750d5011752ea7a79b268af2e4125a319f75d20ae983bd8fbba6a5d5dac394890b9da828386dabf620ab8b48c35a3d2e667cdf2115f65453c62d1133304d1027fcfbae64e384c40c491ae62327578e4e7097a845e3fd88a271d896dfd3ba78953958827e321f6158022434ab4f012fed6da54b2a17412c9392770e764fee4fbd8e7ca15406271e05e54c2d2624f9a07032e33495b500026bdaa9036c608905cb38078618367af3c4f8654d5399b98ebc48cd610ee807a8453577c9e5cb3ea92fbe652dd7b3b10fb7f8d09a2c124b2ba89f02936d979b02a7e3a063bcd8d070a26faecfdd05305b60ef06497b1d3446edde683dd180765731b0036cad9d04c1b01f366fb7d615501d0bfbe3224c9e00ca5c34a55ddc65fdd634f2be4ebff9b10330021b33b33f8afd1b13d1e173f7182e26f2fac074674fd5ccf415920edae33b56f9dfb671ce7ff3019fd3781862f10ae080979a02724d3fc9d799023a8d1677b3dff445b51474a08495c77db435a2842b2f1e74cd5b5ba6b1be5a5dea76dbdf38b00418edd30ec613edec156166ebf3070eb3ce43a319e141fa50aaa84436da94e7b1b1db1dc6ef71c82647bec582f0d8b57be2daab8f267a04004e27e0b24461a3222dc405a35230392dade02490f6ef35c3cb9178626b8358698c4cf0e97d7b783e1114f8f96c3fe88b57d62f1a3451354721d196954406710c4b0eee7bf4a7c33fe29bf27131f2704bfcc8209882fc05484457b311fb821177f4a6049eeae7dd9056ef4c27d7425477f9cd86f114b6f94ecd32c65c5468b9aab00b9818416493ce04b078b2332318dc659392021de12015198def62ceb891af2e24a1859e852bc977a7cc4cb131b884eed78afbd626d3c44269098a40f12c6dec86499b74c110d56259a60b60b6e92001f94a14c34c825d3a077d09ae54f90a645de24c96c2c58216f4c44d961703a2844a02bf93c8914c4398fa52bacc3e247efc54fac060f462fbab10f34aa4f84a9059befec51cfabfba07136b10f7fe7cefabe76932f346ec3659c321ce0f48331080b06dba9209fa9f653b69b23d819d8de1d23e6560f3bd28edcdc4d0c7124c33c3f0f9c9708a2bfa2137e284f27e4ca3052e0643bd21b892c7d578666bcefb26102a9bfef5e154a426f4440ba89aef58299f8cc7b7285809819606a2e0f3460a80d42e68b57bcb6330fb4b37c600d4679953df8901c373d881f2842b040a1ed66f72336486c790de7a11c0ada39037fda8049a4f944d9cc95ceaa8416b95b0d38785b2c6129cae56fd914aeec754ddd0a82608a27ca728b4392c013dc00488a35ae24dfb886733edb797fbc8d6cc2d8a7185fcc560ff50bb7db11148366dd239c95aed13c8e34e964482b42b748dffc4b3fa0e7b1243c9e9f3d2d902fd150a170cdf5c55aa704c79e7c647a94cd5884f40d030d020b37fd1c30bc7a3101e2d6978bdf89a8ab67183e2660b736a1d0330839ac4163098e96fd52e8ae705f6cce880a1519eb58428f8842156db1f85d371782e8f1bdf2b6a5b8b24f757f54c63dfdd2546ad6979f34e733a7b569514ce2d4f81bacb3925c09cee22d9f0e4362ee017882a55e5388eae4179f13a996eb0ebd483da8d1511828bf0e3e778569b3e69e005ee684c27ba094e18eb3b07ef7d29bd7df816a5bbd72155a677d44d7b6c1547f822551fcd79b847939ce99232734ef7cdce63964f865e6d5f296701b54f527e5334699ba4b3a896ba16e8bf7dcf95ce581c8b95458cc84cc131ba5d208ae92c44c452a5452465e1f474dbfb9abbdd0080f79bfb31567a77c03a89376d9b763946c2ea6a3ed50dc6f44fc8094c3c49585a95fa2316d15ef81e987ec30a01a8145063980a7d26afebe00951963602b3fd4c479320a5a622e2e6a4028297b8ebbd4168925f18eed621fa0365689eeb5341b10dda6802b59a8cd61696076a7e77fdf90f8c2da125525a1b804016482ab41964e0efb0c7e448c293fa10147916334aee2a9c70c8cd76ad38c67218d42342c52800f70234637b9d34fd5a224a3333a8f2b766b21423c9250b7320a16a7d16dcd2d2bd797608b1843ca1a0d9457826cd353653355f7d13e1661a75266b1cb1b25c08a02d1c1e57735bd0b0b63111e5ea523af0a13148958b4a38e257fe26f4d89f353f7a8cc8d3d6e397a5037471c05152f0c853e8bdf9d546cfbb76b9fa539ba129eafcdcb47e730b78020e7bbe49f4f0b915c7eff47ffb30e34f646bb10a824de3900a434058eddc8c1dd09a54b656c8470a762fed9f82a89fe319b349096eb739bcb91b6af35b60576c5ce5be290bff3b45038ddf2c2197b807357f8b61dd775cdaad834aefe6ce7f14c9768a1b982a8a6a23c2b92218274430dffe10608a8d476c0ccf51c926d1814dd4aa707dd0e7824439cd3c5f673a56592249cf0e894f3e0dc7b8ee40116c9373f0244fcbd609428fba8306c6d68cd015244368d7d14055795318d2e62ad14fefe95f9417452263159ebf37e13dc6ed92346fd1b7acb77c6a9895b9fa41d8c3ec74fd3b1c4a41991a6accbd5b89e831e1cf5e665db792fda29b489e8e435426c6ca15c89ddc8ef0148c9fa4ee27941c53bfc49adc4158e66a50d74f74b76b372b72fd2b0bfaabc362a22377f5a0e926bcb99b92773cb4df70f138bc79681e54c1254f64774892c61d47a2d1f1ee3ff22c73c01c799f9f03c2a907f13cf399902be1bd35aa418c65678dde49f68f3741700df5dcea2c118c05ca14833640b3a466862baf0fe4f776c474dbd28860e3dce2b9bf1b8b3c1df6582740baaeccc83ed8326e73cc1fa3587776eb3561398d5a1a79d46dd5d07f6c315870587d8ad59e0648b0955cfdb3686ca38dc80e4366719474121ce3c6058cec2cf1fef16acfdf39db520c59c64d5814cae1e0b836c55d935180e471aa17edf82bbd830145a064af0b82ab68e8e423698fc0a9bf9342f7f068bf4e983adf9f39c473af2c7ec911289932b35c8c9f4ab2e62d93cbbfaa7a37ff293ff8a867fc2f447340049ec2f843ba930ee9368fa44c3a3b0eb588973517534aaa857907fffb3735e95a7eb60f28e473d8bab3d8a0c0536615b131a70bd1f5d5f32f3597cd0df4baeb2c5b1a40a2320a459545ab2f948afbe30c25b25db93d159787c1bea2931137f842a6ad553a1f0cdb3205683c6dc4f083767eba72191897ad17a8cc359f7daa25dec72219cdcd10dd88d6d8a6f2590e92b9380b2a9f70f038380efde40ab9e34a14e539fcc5774137cddefbf170624d0b1d6b4b3c3869e3f1e1942edeca8f480786f9cc61997ec715dd1e6782ff7aedbf5b438f97621490498bafaeddb95bef3dc9d3167810d254b2327aafa39dec8552719607f45c838744d412f466c93c72ee7ead378af3d1765ec2ac2d53822e22ddd7220260180a9a130619039e5da694587bb17386e99f4abc842a8fc651543a0e9cf668c702ef33afa0b7e5c6a94f1f059fe83c0effe4f40f0ef531136ec88ce4b6c7f7acaf02654d3c3b40817b2d94c6d7a6ba1cad718675004d50fa8d06912180201f6834f6be30bc389f6b3c8cdd7c57a8596a47cfaf78d7bd6c97c5d9a8599afa6bc6cf7e9e0e37c3cba00c700dcd6e3ff62b53691a582999c4e91917e7147c2a45ac788ecc957fcc5fc624392472adbe4252129448357d3ffe6040c1c4d2e9f93f01c70a29d8c194f8eb4f1cca897b57ffb27612e5e6e3df54ba59139e5425701b67435d1a79162be3cfc59288da2e85b7f1a6966cc2d24b22135a5cca835f62489e190941136404d63404313f2f69ac2b48df27c2cdfd84027c68314a373a844ec0494c3a2a77534870ebf6a8004b586d84f55af472bfede152a5adb097fbee36c5ccd78cc55db1ca4e3961d63069ceefcf55b62ef9db47729231e1f165796cc22f43bdbfb082dd85e48baf7e58afb946da9baa7cb69a0874481a6427282057db9693d94f025d504f76d92ddb9013ec19f5b67940fd5ac1ec7365cf6d3c03b449091632b6990ee6a8f38b32519356107a3f63e6871ea8a1b5d7433cabca07090ef8c21b31f007e45a4388b61b807bb12ad058e9a64cf0f870021bee01f8807900069a89516ca05e8f7b8848cdac43cf48e965b3982a3bbf66f2404b0e7bd3fe4f53f60e702914637c48331f472aed2ee25471cc3c876ea52a834f5c9b00767e03443c721d8aa7a312a877b1cedc82edfde19ab7e3d744a20695104e81c934f1c73eb1b7ecd06367c9baffbf6419d7c25b333d6a4d474e6a8cbb13bb30e5d4e3fec131d232a0b5d3199211c59a48792658d90381e943df92678aec3c297c53fd3dbdc740758348ed618b259c9ed198b2bd2e3d9f222e0809ade0719e1f9d726d62a185ca663fdd5c50807760325fa7405ac537f3362224b59c70a705d3ab1345d05440afa1b62fc38728e434f1e24516ad282efe63a62377ac42f95e53fc52fc54b22e3e03448d6b9ef7a4c9f7c22c3f548cc90cf9dd5d6254e352350e43aa81839a576b13145d1c267cc31306ccf9948f1bb74dab22533e8e655c099c431d4cd9e5e4c77b3667ffbc55653d4785cbecd67747b6f4633071d822fa87af3e3b0333b81759f48b1b75f85be9919fe32e2292687b3e7ff92c15cea36949c3605018dc61abe5f9eed8e46335971f193da54ebde17ea9336537d3a55d40265cee739924e8f7da45f090642b41ac11b841804aa16bf0319595880e846ecfec735fb528b8e2e4da26849855387085c2d08b3f3199d1fbe429587dbf02bcc84629537a7d3e856b4a727e0fcc40f7ea817d016bc8d9d907404dd70fe7bbbc8851b86c2e47ca0f3d6dc4563c38473ca9f975461c822c1498373ed0a5da42c66ce3d5a1e0cffedcda6565deec6d90d73983151e3c19b8293a9594dd24f6549eadd50010610ee11a52909f692b76bcbe407b4d8be7ae360531e62e9c0bf0130e9d72031faefc38e875509f4f994e3656fb9e1bbd18d781fc8559775db1944c33fecf901ae73a1bc38e182a77b10ca443e6bae3bc769656215462a9fc2a654c64453150c4ad3570a73837a3bf8344eb8c84a5ede70b8d4a72b15107a6c5b6bfdca705f5a386778a15258968747e4e7bc25c805cc649c1d2f07136421254e847b7c09becb6f1c9b98821f083acd796d95697d5c4f1c012b89b609e971ddc5bf749cd92e097173b2d86a3abac42fadf5950dede0552b0a166afa75ea32ad153d10efd095e3ba3314698b4671f5f1728ea69b6ab2165d3d7ead99efbe99863856066c6dec58440b08e5613cf1f1ed924ea40fcae22c9bedb616f366ee548f8613df36611670a5ecf7a91ae38ee77e4e6aafce33499eea748ce62e10cfc2b0f70c89e258b4bd59c94cdd9a497b05ecadf30a324d5715226ba266008c580561d79c127629bb29c1fa54bf303c0c938707702ec01508c013c32eb8ff1269ad137db52fcc57c89795ed86ec2714cf6882bd58b15a4251088a6250a7e6393c6b265f613c12515053681dacc01d1711ef9f6d5b88bf993481c6921f12f6cc8b8458f21c0b0f789e36365433ec206803a3b761a2eb2fe94eac8213403595a8b4bf830506fd3af78a618449017f4336d5c25c4bcaf49dabfa5eec3bf3e6549f216e130366b0c0dff3b19d3a9734684bf9d9d6bfb916569dcc023cb10b53738a9cd83c1ea6c5c45f9a552cc8a97935cf9d16c08c8f0866e895abac0e2b99194d297d042154e7aae6252199adf63f250c042a34acc259c939eb86d8f7306cf4299d61fa7b1012f95bf03f7f84d11429856099ac6630ee995442ee06f171a01f576b594c88d084ff241f7ddf08238f099e9885d7ec0f2eb3658d78323632ef9e244883aabd99ddd5bb6dedaa43d97810ae63bece7b67de82b4b0a123368de96d29401ce11d94c439cf99ecf39c593d3e094cbeabf80171bef8d8319c4f9fc2d8ca63f2c104336f66f3091d239ca4497b0181f9bbb695e2027e354204e2e74ae3bf7dc8281dcc924aebcb6d0be8f63535840e3ac8b227c0a1fa665227c9e0e293c7a3156743323849790792a82655aac9f2a3bc5c12c445f6506e708d55c7c3ea504228b973d8c1fef0829f9974c5842a607c46839edb572bb1497b0979777978ba73af1f1ff312a505ee1b29b0569f9615648db59d2a1069d440d088a35c476dc191c4d7885c62e5590185095a1aa3da040686c93461b1810ab7f1787c3234c48d742ffd8d31f1937f9d6271768864e60082476276484b79ed5c2d825bac620a150e0d237b7146f7f4018280cfd267e8db7214cb7e470fe13034448b16cfbe2977cd7dbcf916e7c2010869aaf6dd9fc2417421ed7911f6e7b63aad4718d68e34b63fc312fb45d752db1893c9b92d13c5e30544530d772af7eafc960dfe789725fe68ef106069651abad99be7a7e354de4e40a70d1ec77702bc027be4fbcc45e38e0e3a9d7ff3bb1a06b4f00abdb2bdc330ff243e877716c0e3eb3151936ed62ce72995b51eb3dd40f4c50be1fda7f3f67faa863030318eb51a2494a3f0a2fa6db02f14c776ff94b72086cde62d572344e0dea3535c69e746e139c89d8bf635ec90de9c323b528e941da39895dec4aa3b1318c89c8b52a53e5a6402b26d6482758a429c6c35c4446dd065c8839c45d7312a01aeea6ff7ee579d66bca82068588797e7e1a705de71927328ee79dabda71e9802aa949c83ac05e5f09bd8ed7046b85cb37bbfe552d69c0066c287e3607543eb75e9f03c69d283a3453dd9ff0369e1baa4b9d20cede47f9c131184ff80e559a67e34f1270e1b1eb3bc60234a93b70295239cad53785f2005d04ec3d4ebdb80487f333605a179f71f8a3f73c3920f8689cf0eab3f2a6efb7274cf4b489016c3512507a56ce3377b3b54d3cab77dc96cbe14d535201f7afd4bb95a1a362ee32653d80a5818faaaff3c6acb399cede222321334ade3db7293fadb1cf8ee2de5c6df150d0d1a21c1139b772fd8dcdb89e145cfdd8e6c1aff957c297fdb6ff323e2005e955871ea9c847c465d1ec12913b6c82cc772752ab0413ff7f449102c345f1417ad35e0177393f53bc87460df4b9117d9af72c3640a44c67fee3ba5bce83fd4ce0dc67ae388e362c6de65807e8f5ab7cd636bce69fb854751f9e1259919a4316a95d87aa24eee6ba40173d31b8cba65874b5773081aba1be8ddc6c7dfc4e8c87051606c6ad2552dc299a094494b35bf1bd0334908088b16727d0f462ac3be38e9a51ac0e45793e3d8bfad344399945d56dc1a7728ceb8e8b05fe0d24343b64bd5f33f1c4bbf7eccdccd9d055776dcc3660da51e5793a33903fdbb8184c50d23af0695e029702a27b03608e3eae9665643f29151ba0832d9f68f9b4d1c026ab9ba3c9f2bbaeb20b2442c63a26bda1d73f277e4c05d5045de87fadbbe8f585c658c9b846c9272b3b4a01eee81be6c41bac4b9f5a2440676a21662173cb5be22fcf01ecfabd51431fe45e2a96766e88d466befc8af0f483368ac17ee49a1628890382c2d1d670c2429defac88734121202bbe5bad8ad9f8a390cc20fa9ef55edffbdd5a1ff57c18f63ad32bea33968a14a81db9b5df924b38469e8d226f8d6eed50c4cb57168a723aa586f7bc52fb4859bf415713e199b69f40d119537115703917fded7f891bf5266d58e7bb087f3eb9b41946dbf668c147181da730dd9c97af5fa09ceb1fcafa440163fca807e738a54ae60fe39bf6f1deadf7c9d23328b20c61ead00361c2671bbe2cd6dc548aa7022039b5044c396c93cfa84cda06f8c8335357c3e60151eb48642095c912986d0ee60eac15a309b077ad2fc93b825ff70df345877f3f5b221caeedd107f9df0c11b73018cb78bbc74ba1d94811909685ec74caf394ecc7899f99c69b7ff40069328d112b0db7e76b1d92b612a8f6e332e767ade278285a87d8727f378aa4404334634c333f9100d49317f6986d9330cd37ac69fd884828e0d38586cb4ff4a7148bbb6b00196d8c490deb6ad1b8e3b1b4e91116188aa2162281adaf62f30de652a368c234d6add31b313bcfbad03fbdf5606ff6b39f0d6b1614434740e866918c25069b2495fb138dfb8bd2fbf8032f11e0f8ed504bfd590e9c56110b75722d1b88ee3d93cd441907324e9e7d295f6aa80bc61585911fb43c529838955514d5bcc773e40bdef725eab6bdfd9de72642a87da82a40467d7f0eeb9657cdddb75aa0772d747d649f3b2d9f2331abe7b6f8a7fd0679c52a86edde202cf8e45343a0c39b28838f67b81e357b51f4cee13c9910925ec86cdb50430a096877da1acddd782f5e20df3ff456b9cf62eac14b20ac6d80526fe8bad4881ce7a041d631f2d1b60f4cd4ea6ae8a8000b31e75277c2aa97de2f335f91ba1e6c28b5ff8753052a2d6be33a18d1703f52e57001d99788ca32d408bd2e12066535bfc07d5ee183633e631b9023a86349ee407ed1c009c9a6fd58ba965b260fc7eb5642016f74bbbad44574267e5890cea0306d7e8623fa23f02f1db57ce62c428451e783027f5d998cbd25bc0275bec3c3e6a59c326a50d527e41caa169332b38dfa41feefec1265c43842a3e0f809848c222642d53d7ab0c4c4c743c9a177d1988588889f8f7b1382478d5055a699dbf88e193b652077e06271aedbc4f38b8e3d53a68b160e6474b4a9a2b01cc45280b41db53bb9eecf3c7925d579b8ee646e7896fc12142e8e15524bd41ccca90e3bdae839207aef86aecde0786d66679ea4669901d44b12f4b22ea2035f8ae27f1d448c50e07e9fa783948241be668d597ea66f348df375f6c0e93d7be92b73b21f9ae6e90281abe4ec784f360a412fbcce2ab150afaf620975f89b9877a6bc809717852b403d5effc8dc3e2bed935b0cdcce1c5bf9a6c593f6d2cd42da36b9ae26275d81182dcefe9017e262524fb510997269fed4cf878ff6221d453b9261d8c7d494f7e72ac6680e3e7a4a29a945b1ed2025b1246abd466b69923fff51fea0e4f4221e1d23037efd359da3a120cdcf8cfda7809e01fa3c01ad9e220552434eb354f4be44f03a66d794a8cd6180e8158760c50729c54de2f82bb80803ed72875618579a22f01fd7a012fc14746bea3f6eee9b94778bd1189cd0947e34fe6699aa1f4a20b23e094b1676113bcc5707f40749532872054bbd94149006894ba6d4e5aae01aaaf088528a6627e267bd06596eef8b8e2f9a3dfbc4b07bd97be159e0e2f792de46db77d43100ffa2170be24991ad0dd8a67a66fb5dc1aa617dee352ac8df476610f1b6d3a73253927ee1bae0caae93c73b28412b496792efe62c26269cc882bc55526ce57f3f40412f7a8277499fc78fc24d74fecdceb510eeaa0026daf6e589442d5e9672d2ad3c330718d568e4d943af4318b381e4711273684e0bd99ba6ae11b0d418957ad314042adb9e2de0d7faa7e88463b475320e273d189f4cd8cf46afc6929bf4974daad1dc12bff6aff04e5a759b8196fefa70de474c101dddfb06e476d9789a4f65c5474dd149716584cce64dd0c1cafe6c2ff84231e17a5c38f6aca445087c46ac665ebafdfda97832b94ae0481ca6f9ce52944bf3e6d3bf9835f55162177720f08ae2d792217fff8cb7e4edd74abda69ce9f5ca1ed8a8e5cb08fc832abe97d16f7994f0797288b8f4a3f205b0a6f46bb89c4d84f3ce7b219f3dd7d2d68710f53c56aa114c4848e2f37a73ee6fa9fb17753a73f1a11034f985041084b1c6f206dac3e84ddd56321c5e6ba2e2a04344adad15c413bdc76a550457362e8afd534f404a884888d4cab35c9ac88a68a6c9cf9f4bda17694390b070e53ea09f58e274bc5f9322a447da8b0acdba97c7fe546a93c0d6f608a11efbb47ea0787a497ee267d769f75a9d322bc53580338b99dc514ebed6d2d0b36ed01a75460b883a138d9d3aed5812751c19cc9feaad1a0a23417fafa806e0fc325d50dafef9dc4c641edccb0e9454ffd734e6a20f6668cd6d9901b2f22ac652585d0ed2ae80805c0a55acb41596c49ccde2c251a506e3ab521f21dc4df3d989c8b475015cf172d627640ade8cc28963a6888ba56eaacb8907035eded3e27d9f6676389948a230cfbac14690dc8f723f146e14b69619a44a705da7c3fff79954b9845cd6900107284df977974fa4e7ffba0c1b5b0a8c05db47cddb9545e5b253f64f51efaf9e87f744fffb9cf2dcbf3d4873e8f3708cd7034ee6ebf1e16ad52f0e8275b073dc41c857ef08234e7e430cc677af1e11322610c00be9012b99ff97d146b0b2685189b11dea713017e93ddb7d6fa9bb7bfff48baa1e5ce4a05ec34a1d6e2b4efbddd4b1a599d4ee51c6b9a5efecfdcf7f53eda3f323b1b94bc9636e417068668aa762e3db914483ee7f0f309c4212be302bafa9e4b4a32f2a4e3187a024d64ff1017af0b65d9d587a6f267d3fd8bce3e294a5cd45e955e432ca77302db41472c6ce5e346ca891f7e1c27313e900019167d42fd87ed3477d20ffbf03a9ba01ff1306f7ef36b7cd29905986d2f1489d628af8a7dc651891c508f1820ec38b092471f3642791d917fd4b30b093d8fd17f95a85a10bf11ee824b8eeb4ed2112e1f724ef64a01fdd548a731959f27c1aee51033f907260b72015c20f36e42ea26f75800b657277eb169bb15836ffc85c1cf5995af690c27db92789c3fb6edcb8d3f5e549b8cd06108b659d982da87ac7214e5f73547cd6ad07aee8f2905c30ace6f4fa3a3893d0479f611264e3ca71846bc943d5fca33f8ee013702a08a7d587afb1b41900c1c3cb45c1c9816222307710cd9c9f9afa056b7b9606cbbafe17a9d77fc6de1253770cfb61c7b86eebd23b9772aa5ad00b2a303503b12ed3d51372cb4eba6c744b39f75a4a06a047fbd34320d0dadb65105e5288118c96161d436eb33a18f282b9dd24ad53fb57de52419921495fc180e18d4863c26236504f5e986c14cb54c7ec33cf50cd0af46292632f473cfa03a856bf3f25a2840cbc5a2d6a373aadc677b4fc24a78fa86723208ea3322d111a1a7042f59598d1d97f31a39bd8d0304a9c4f189a0837bdd5d42de70335f25c6098eff57bab3706abec59f586ff8cbdf3d3ec8c490cdea5d3da3353ee44c93ca09f9cea5785ca317f7957dda69ab007fc9f06603fd51c2e9b0f33c3e3465347163ba1fc2139c0a43e9f0b1b9f55b060c8f2c64a9df400200f4c24ba9ec9c021ce48b52883606b24a7d421e8a13529338bc8ea253da6b5d3bbc7d2e641547a5a3083df8a519162d7bee18dba51de4b985660baca7942ca21f1759328b507721c9d2b5d574c38a0203d74e1cb206db541d72656ac0fc4ec19a3d649716fb1e34fbfd4e2facc258ebd63ac4eb83cd437fad6504537f85e4d13c05afc1c87c01e64c4e0fe8746a91d8e3ed4141b705863ce99e108ab03181df0fefab5f43ebdb249a2f268ff2c1d04d418866f4587503f4066f793ecde045d8c2b73dd9c37f1d7cb69967c459ea99e6fc78d3bd4a8a5fb4a7f377362da074b64768fc1d1d83733fa6a04f5ad0e7e70827d3a3ed9eae91a650358e5ae60172e35aefcf8d86093f793e73a774697387ad1bd7099bff33dad479fc92dac4968342b3c4923fa1bd0794634252867c42eff7bb28a7a5af27a09be23a31b22a72ee62820a7d819a674dce06466c641cfcca67e9ddf88504a08ed21fe732bb2ebcd74a1614998b2bc458f3a7098ab4d721491d1d15b2cc2bd62f98552fa672e6c310a01cb4d861a862a2b0b043255b7ee3be8528f264c34eb023a0658fdcb69a2256f346dc0edc9eb63ab038492fb0ee9392fb71d8f5d319a693e21d99179b73118cebe3d788481825c9592010f9148fe08d2d587c25b2aa1894072cbd4e16a8b84c47c20f3df53efee8a3a2d18d34f7f2c803cb20529a97f69a1147dc0b1487ef7be631dcbb0db0939a9e469544996b8f7c92314ac48f5e21dbbd370f1fe5768b701d2dab2486c0b2df02da0015759024dfd5f249a3d5b96898d1a9947a07da51febdc6442c5e8ab1b7027372d8e8ed0d3b2581106bfa3baae859545c4305d6bdea2e26288a6287aa1de7b674bc442ccd486856f2a8cbeeca1de2a52049131e0ac99b374b58d6c56a5b6879d3e14a0a1e62976e12b329980363981d4ff4cff2b67262f42bc01c11444a4734dda8c5f88b13bca4a961ab339c2844ab00d20cc5cecf63c44d46fdc62ccd701c367650f7afa65f87b366d86ea7662482cecb4d4a397fda4600881f1366267ec2bfc03e9ee436037a2058cd5243e1dfc950490074ed93a4eee679f236a5990bb4e3c535d800a0c2b8fef2fa96f3d63487b89adb53596c32454116c5e7d564926c28f11434e393eb8d2538a20f5453d03acc24b4df98910c0509cf58340ffe6295975128335227474ba5e80002ce5d6dba7d42bbe9acbef5f62269df640e867cb039203f63aa83d4ab8d00ba21b5edb3f30e9a315c3df22928508610132b3735f8f8536fe7ef1aa00aa2088007670a5dc8caa74bc78e01b438ef0fd027f2c8cec273fce42cdfc0f8f1f85db9c3ed8397772dbd1a12e5ed1cab5c19d6e0380bd85e677d889e9845c80cb691f2778903f95dd22679d6bcfbe2c3cef3fc3d64a9c81b558ed2c0c5be99195eede71752d41c10bed56bd78653932bdb51c94138f68017eb9a5db405f38c48ce7f8a341e3645a36ba719930b60261507cc7daba4c645535574044fc8859ec32bea121b86d1d253a78007b04c12ebad032cc9873a23882292f0fed620bf0936ff2483fd2f0a17aaf345405c0e02bc0f3873d2e7b1652629b43b1d034b6ed8b4b1a67af0f8f211ca8ce3526e958d417c53a87b92b80ffb5e4c60df5b3fc09ab2ff086b22d5b242bcee0fca8066477809af130053db37b53ef1b7a20649832a4acde845b6c332bd930214b9ab7b7c7c5b4adef1fe2f4722791bc777f3c754bed38c1602938aa54d776cde2d78461af705fe7712f6d447fe124cb377df813ef3c211dc3226eb91a11b2d6eebdeec55d84c81b0e94f3a47ecb02fcddaa22b2435af6eea057579b7aa7353c81f0891f79d311f2aba3136ca56c9672eb6ba32d11a7c61c09a8ddaa67bf0895e4d03a581854d69eaeb9b85f47655919c09d314b138383a874837a4c4dcb52f4764898aaa900bc2f8f390b369666f32a9d6f933e926b1118eac1b3cee0594e1a6dfc6b5848aa161a25dba9647abcad67fb07aeb86d7ce0266dd8e540a8eb9c25979644b714a4edfd5bdc57bfa41a63a4ad7d4e810fc3654921da6c94524910da90adf9eaba86ef461abe9e4473d4e4f598305fd647f634b977abea3ab839b2e5c446434a87201f094c737e6b95c9349b7d8a6905882130fe53a0bf979997a75990e7c40ce756f720d0590101f6dc6e46caaaf1a4a0295dcaa5fbf4e463e19969e3b4793c871a98a5471779813b2f445ff2721b73085c601e13dc0e8edd552ca9356df79f36361e55ff5178b471ba6d69d7bf5c0a2e057b510057b3ecc574921a3b90e0b8dfdefe330656183889e48509d677d1984679df36a1437ab9699c8c1e7ee2a84cd9864501612eeb9ad6d48c8d74e74d4bc191ec70437c63efb7a864d3058271e1f77b8d904d46ffa46a01aee8c9b33ba78fbd5934026ae38205e83885510f5e8cfad4c16c376037768830a2ced7cc710d68efbddc6a6b1aaefdd3e7e810e2bd5203162ae85d9d7f019f6f04c410abedcedbee9023b36e90ec24417ecd043ad7aed6a57119e149918dfda9e97d47112b05a543a5847699d20f95f12028c97547891e3c0ed9ec5bd5454135effc930a7d49bbf7bc406aaa046f0ebd5ca6deb30a5ded79b5059d88b45aecadc55a5542cb3637aa59e8de23bda032f5ba3297f7c34768e0a5a2183d97237421d8392b9dad28108eb23a08b0faf77758cd69d12ef83d7bee869db4a6b66762f5430fb13638432d6d31da649e1880cb71b4b4e8dfb5d21e6376b0d6c03a60357dade7e2d43841e3495614b3212c4b80974ece3cfe0ece282b6f095eed7e9acaea7c5513df8c244b10b5d4fc1accb362950459c01f5615c584e488078059a78f7d375d3533f710cfb95b7036f511376681dc5a372f9d74a43d29b7bcd2bf273e56463dd53cce941e9c14be0f7944d51d5fa7ffb2531067ed67d0b2c157a77bb34e6bec131e648dbce918aa56c8521d850a199ba69ef05354946fad0276143b72e10bf8718c16f4e7da40308f12c7f6e79739d928e2712f6a29e1a797412d18dfce862722433a315cf58e9e47b57ca7301e2bdff1c3d9000bed78880a2d4d28b890ceef9672f1e9b5d03dcd4f9e1c1e0f7d68ee15b021c406610e859b1bf7445a5cb4035d458e078c670051bc381ce3e19d4116a9c596602bca65effcb79a426108dab6f29b2867081b5953b30f74caab3fcada6ff2264da6a739af277a840ed290d173a1c0e1513916dc626c7f4736ef968fe59bf7666ecdb3a6158b332db3c498022f3a1c71c7aa2ec05130a56f9e979691ad879f30065958e947e752830d2017255c4481cbe1e2847f37432e439681e27b4d6dab2c98c42823f93beadee7c2e0af9a014751e565360ab034b3b3f5c36d03d47a11fe7d42cd6ea226d33fccb542274929c859a3c84636fdca21a41e896e91cd3b187b9054619d8b8726e1b8cda5115f9097e551c2d058a56a86e5033029e5bf0011c8a9f71c6fd4044cc6221afe9c7f497bf199cb92c1fd9648ffb0afb7d7fd9a4616da95f10c8cb8810c6439dca8a9838484c1c1739cffb290481fca7a4b83af0135be36ea85aab854cee20e41ac73b4f5fb2cfe4ee7704fa5644e8fc49a9523f8b705fa15fb1c5b7f7480547e68f47e1d4524bed9ee1c56c83272db0e12e661c6bc16092959e6764190c0d4e3ad5b8dbd6187e8b965d6fecda468429c1ea3c8fec5651d42f9f7d089ffd60c33ddd2991713f56dd47b18bc027b865dff88bb62c3d5e48c58150ac7ef56866182c582ad91955b223bf77ffaf90c82308f3540341b489b904c492faf3b12dc3952a3e52c663d1d24470e55fa87adec7e3bae784aa4bc794e0e2c61de43d74e09ca815f885f15d5f69bfb3405fab4a7eadfb507e19eace451cc57ee6fe949e5f538e396cbf092d4e9a6a20752cc0b6ad14769f765d5feffc4fd74e3eac9e952d0dcd286fc09ce0e7a92420dcf29e629d2db1e7329c2048e5ce0748206066707ebb4b32b77ae880a55ad560db372ef69f4bdb0e27b18ba0473edbb12e2495dfeabd031ccc8b24a50aebe0e3924f1b572f1cbc1efe906da36e5720c2b2954c1b65958f35a798e8e4713abd2900de2cdf1936cc5efaea0c3860003295f345a6710991d29cf0c75dd1eca4f861ea76ea1ed8f619bf21721c434bcb8ee64d657e25891c9d12348c955f4f66845ec839b8424763369f326cf1b93cb9cc0330f9aa43a8e768463670f72d58b12e75b446b97b54291e72cae103802f1945b1b5ea9755417487d0274eb8a691f5d0ce6e56d923d4e80a4b5df87a06ade4f9d52cb93c0b5230b663329a9ea417a22bbdad0e78f60d3fe00bf874939fa5fe2e8246a64b99665cece3a16c1025044d72c15699dc8721cf7336d8a5a36e368e33e9ba573499b589c8083f862217cd5ba1fc6000d1ef5b610519308f69db09e89b9feb8a4cf30a403b8f95f7a26791c5df4a61926d709bc9fb422d52208b06f873f589f6895d91551ca0f6ec5d04544743d2df77dd9f45a13fc976e67f56138870be1d3b8c5c798f023127abd0e88288809e306e7b3f63f822706b6c319a9863780ddd7c201605fc1a2977f18a21d9df4b72328317076aa6d7ac41efe68d5b834808422ae0be2a564679230644497e9a0a3815d1a6b611dac37dd0b50a596331e2cb69c9ba90652db93510f21b6ac716f5acf8d80612d15a74b7d091a3b5f74d1d12044601f8a717fcfbbcfb9383fe1ea8b64e1e8211e3fb4edb7a0530e8d2c2444dccde986c670f4c421d4a6c55cd7b3ec4b693d207d71366f3ce13cf46a001b1cc0aaeae6df3b0826beb4f3ddf57d82bcc925cec7cf43e66040362ff51dfbd41580e4e0166a40abbf7ac9a7cd2557b2a58edb196385df0d56004e809fc364a1445d479a60d419a6afcd8d1f673bd5beb95476addda6c6dbc1839264d6367ce049bb9e2ed9cc101e43af9ceac5622d10c578b9129395280822cfb88cecc86125354f4d3b9f466667f8d818418f618587bd813aaf8bc0d59ea7eb66831c96a92b63676fe24472d1334c9a9185eda2ce54699d78ec2023f524bfbafd413591d6ff8ad5974faa75db7ad9642bf7b6cb2382b10f65dab84b6a486ed762da81405934ec37a2943c6c30d5db60f026c7cde86e4095b6a57574ecd3d80121e2342fd63bf1f8ccb22db0697fb8ed933dfbbcf0375ef18f23285714c2b5c3fe90bb97d4574a6255a12bfcd936039197157d09be82156bbb981bce8dd5f166db780b011c24c4929ea6b57b7bc12542f426e3a5b0568d6ebf9dbf8536e1949cd73c98e99c6ab274024468adc16d0f3a955a4e8e225c767162d03fe9b43b80e75f3ae67ddbca3793f24f74517b00a593f3bed0b108be01eeb664b1628a48e3056b9f2c6e174331f878ddcb5ad8af8a96b5518c85a0ba5a437da9dc2bc9a7968b53463f497e362a7bf3266e8d859e895a303998a645e0835b07e4682152acaffdf2a377fef337d48a75d4efb58b5a371df93a7b255ef104c19554991f54b242e55ec48b252857c6211320b7f5c5c0dbd68e213cee9fe53743c9bb6f34673a45f926764b720c4f0fcd4e0f0ca2f363243af7c86a0f2611b77d58429a12e2452a131e3edc528a32123c3375fb030a33b9a21aa52044138bbbf59d3214da839dc8f4be94a95fdb2035c5310c8f6a924fb80ab9f7dccfa8c8344f6e24e195cda40e11d74362a03219377cd78ec2ad580989d120f820bc4a594a722ba8c95d922e6958d4f30b107a2cc5050337edfd27e30fbd64388ae0f206aa6aaf88ac21493627fa3adc68d4e9edc02c896e7eea2c781da156f8a7559ea2132ff3dfa16642fc4f0fa2f92ccf08ed7d966ca07cc95cf40a1877578d0bee3c4053f7bd2c1cc0eb3e299356047cf9664d2bfabb1c6f06bd8e49f24d2a60537300cbd0b458422d9876aac6e1c16e594b9062b15dd980f20551d612b9b72522cf83217363f479f3a611bc3def71b3f386e893c567e5b548ccbdbde7b17ed1df51ba6ac407cef909e094de9d47ef8fc609dedc45bb8cf54d63031761a6049d4bcfb6db759af68d47a2e081a5169ea6bde7b0f785e5ef27a12735ad87b797b658afaccacd4374612ca8957b7b27963e0826461ec3cc54b5c44f1d2e84deb83044d057fa37b20b325ecada1af80fb0d387059cc79070a5a90bc69a5125429e67b3e70092ff23701e36bf27301d270592be969dbe05c041dd40ca3c1393c9f5aa04fc0db54b12639e5493ec0d2a6dd2e352998cd206d24933941cba0d2151da09b633c757f5ff501424d4fc658308b60244bbceda533ddcbedd069fb8d1a7142c2d95f2ab104d81786412d327a98d82c194427c67548edce1d7e70f3df3dec43f52754ab6ef8a298b46af38b65f24f21aa56814270ee23dffb165ac8c60c4af831a6f13432bd253c5f441f1acc09348c795e176e18ace6b41ae9dc209d6b38f47290e1b607bc0f98ddfbfe706b79cf4d933e74a52741219f052c5bbb85f59e1f08e5d35dca21d49edf3052b236390bcbfc642c9454c6fe89aec999c80efce3346ede95be202fdd73b490270029a1894fd527d1f5a051c53b0d71ae184432cea665ff16a347520a1dc0cd6c1721ce5d0c2b4997c49d2a35dbffb69edeebc5cb18818e4d56684d364d4ffc95ebc5d55843cecfa94201656b7b77c5643390198cee0f179d6083dcd975ddd05f354bfdc1f5e29981e3fa87b40e73064dc1f52c40be70a5f775eba65ed5f6b38c4172a0c9dea04902e321b928ce6e304d3c779d259125c1b07e5ff44ccfe954daaaec74c601828a4e16bdb03e91a4b32d20bf698c849a97afe3b54b7d28abc69ceefde2ea73fd48739d58314cfe1ab2ae02e113ae95595527153d2e9fd2c6acce2b4ad8fbd41d4b6c3b3cf0837ef70bea05732138afdd1d70640c5e8d5d24229814026e25b58b24c4bc73c1318b58ff64106cdd6cd8e034d3dff5b977b439546cd3d704a9f23d1c79981f7325773cba9a45d628d60acbd1632eb3bd147d164a8a5ad658e53945add6f205e8b9ad9f0123129c3c5ac9e0e2335ee04c2ab291329be3055a621e39ea205ab804508192bcccc78e0da8b7067ab2ad7a17791f8223a89c6f0e855355b9e01bd0c914aab966d68fd80a8008dffb4e7e14d094997eb46f1fef6a2e7db7c009bc561bcfea51eba60d5ff6f8f468d95c2045d06176c85499440e6210f3078f870ee0b6f55ae77f848284203eec67f5dd41ec6c037f045eb7039b3995eda8ca67c727e0f1c89125d4d00c43a7c65955011d872fd14b441c22119a2dc6085b0cebf9c6c43431bc80eeea92e09b37e29e7325a4f9a7a14d2bc4a9785c364aba579d523ce04ffe7980c2d026e4768260ce98b2e65f302b5e08a0f5da9b07521368e92f9932848a7116e0287132fda289c6d9a0184a214b870cbda820a5789dac089da4fb00292e1c30b27c1001a7366fd7680aa0e062d5b8c7e1b2205dad3bd88c575fbbce0ebbf21144da19aba2abe0d6ef8910c8b6962773488de300a81438eb4f001870d0dc53b3845fb7d75ec94994906c820528bb8b8a6036f9623112dcada043fea71475d50c1bcecb4ed764729c605b45adbc28281379ca02fc79370289322218dd7aceff97346e713656d5091b2c538f55df6db47297c562f9bdfd10e20cd1fe2c0d37ab19722c34a0b47cd9a95d4b10f31b3a5a553cfa25ff2c1899d59bcea994ae3e2f8b8620b5ecc5a876ee2df8c94cab4781aacd3ca82fb3a201cd04c933157dfca00d091a45b84d5792a9aa0a518f42716725fe007c5816fcf7d66a03174e97c6150f7cdf489c8a0271d99902d0510d2bef303883f6450722a0009c84bd4df573863c7af152122e13f88410de8d7a3e9b9feeb7a74e20dfa28cf7efea515674f0389cd6f052f84d8dd719da023dc01f16f9e637266f3965496ece49a74c4e69255a4697cd827a5d6f2f82711eaeb0eba6aa130f5465d8639e1a79ea6ac96945f5e2446aff6fca049c5dd44bb5cbc7b506461416f7f6d3caf8e8174caddac8955ece4ab4e38eb35b6c00ed095483e21c65996d2b88707e504318b35938f00fead633edfb1103fd7d8fefed1c5ed7a6ace9e19ce56652fe5d8322d33cfca8f2ecd592e602eaf2b054cdf64bc5246df35b85095608ab001d456c233151e914680bf621a7632fa71cd78139b9adc6585504624f1779d522318bb31a7ccedea83202881c683c30541275bdd7d902a3e22e31ea054eac5d3d8529ef5c723d84be2bf44d6ede56dffb4235dc548172cb638bd7d446e7f2e51cb5701406a9e19ad77cebd610a8d2b80d4633e8ab5d23ad4cf1315b9d6a1c532d3e5f874194dacfac1ff10a67317ab642ad6a5276de96cc508d854aa4084785712bec4ea7a721e9a5a0e895f803221f5223f1892a33b77eb4a7070ffddd4e900fe23ecaa659b3d8a29716d04ca87514ae5f49a4f95971b4bc9184ad247e1587dd78e42a919ccc6a0d7ca74b22f778a19ee566e24a8bb94ebe1a7930a819b24289f7164133304daee79564419b2ba1131db6ddd231b86e91789a618018b4212bdb49b8597cc07c5323253def2db9fa269b669c812a74a283858d01b770d5c2158047b3257823edff897c0e7686f539d724c5047df20d5c0094e531ccda7a91c9028d5537329c8a8e79b47894291cd5e90555013b3002a36b35378db6ff7024b5ed7d5ddda7eb6ecc30d32355143d57c2f1e00bc81eb0a972ad586c211e1f963b70dc51d71f9c994581000f2dc27d23fc0e2ef4f0decc164a49a639e60d0e49e1986e8c7e8a3749a109179ef870e45966258e16ae1bbf8a274fa7e931d9407ef55a2429ce17f78a88fb8d25df0bd74570e383ca26e938d2e9d0b5ef798d4a42f87a699ae52757901d83085c0a00011ac61c0d2b463576c25be75ad539780a853042b3ac0320b6d2429a997fcee5d981193ce7c0a10b2f25cf85bcb5841dfbe88c82a3bd61df16e11106625e2a95f5c61665dfccc46fa529febb4b3c635530d6b0c7b049b256783d33deffc0896cfb58733d001557d0d4468333f465ea870dbaf633b07b6f58480668aa0ef6dcce92801293a57ef5c32c03f27c3a939e9adf21c53061a63929f7ff59d30ff0801b9505fb21e707f607769622a4539cd8acc00cab3262d09aa2ccb339f2c1660826a06b79840a04c9e72f07fec373b2335b72476464d2a641e9169246e3dd0e3bc3802d16a146cbef7b8b9b6abb70eff6a6db30fa3cf4acb8c214d0d4c73040795a52357308a1b74fe5b28bb5a73b7b2fa28a5109c396053285ff376d53da36e0e776ced194e8cf0f4432f67da5b50496ad2d564ae4f20fb27214fd55bfc99ba3ca2e5bc7ea78029baff727a4989914395566d65fd7cfdf9f3e414489224bed35d373e66bd961cd4e1b2a2b8481387dfdb44c6366256be297697a0a5521f3fcd17ec71d20ec8b96c42f6d5686a74f0eb7343dd9569820f5a075ce2a9b58bab64aecdb03a6961c75d49990f2ed5ba2b09648e35e0bc852c714b802ecda4975e09e3d869edb027a26dd368d2ccd06cf175950843635c908ff6d6ed6b11b2da68262681ac1a68645f9bf824a16b08fca8c4916d29bb2d5604b6d2cce02dfd1841f3a122be9f4802266b8e063bc5797325184abcc38b31871d6b952f5c21d1fe67e7c68a35dfc2091e6121736d6e304dcd380de61d1a39adf35e648fc0281d0aad8d5f38c0014a476689430e2f5d061888de9038b2520ac6cec9e90f4340e29c2a5d316dad0c798b7bd7ef24518bd60e1e24e4e13e699c6ad6d3ddf48eae4eda34b7acc730b0357c5beeaf64074851804d71a0c286efa9fc8947cb6517b2c5e3bdcbec936feffc2fe0350b7ff03719c75e31560e650cae2b71e64a5179f914c51fceac9a2499593fd0e0e2be100b6769ea6a82228461b8ef22d2026706be61fbbc3fc33b21105271ab277a15f177ac28dab181f407e45ab944ea0b65ab35a722ac24012d9d1a6ce965192125ecb34c149b87a02c98df34ee738c7439ec4535009ba6a39d428fde9ec411829f6715450ef87122a284ad918c389abe9caf17d984e26d6230a6e31b60a71910c1ad990baa86d984ee5c9be0922dbe4e506ad8631eef5ec150344697bebba1dce4d1d9ee7df9db585df96b07a5c33d4244974625952312034b55b795ac3708f3897f5cc16cf9a56d9fa6e8c19a84f8355394b74d7e71b9a3f5c8b4e0718fca815f4f585c960a0b65fdef5f64f6e27afbc1398dccb3683b116140f41ae35f1feeb5e128edcb86483d3f693c16c6b9671e760aff207938e85d17f22b0c691477c1095f210c412c4aaea7202ec0e1ca24e7656bc80985e156d94c1d3b513457d97722883f9ba986e14833bec6de447fb67c126c8530ee77ecaa0e16e97e4a446ecec5dd10b5ba5f108bb4428b9457239428d43156f01d220ac3f812bc38da67e5eb2ae22de33f8d53e038f78174534f26fe5b35fb94259b95be0e743b9e85f22717d97641b15f64a8cf0ebdd8a2fa69c5921109e83cc4818e9443c1a835eb775e79903dcbc334cb916b3920aec8c7fc5a5b07255bb99b2c06c8580bdd2506ae8b7978a37b28530e00743b58b13c25903a93cfa34653d372f24dd02773057062dd6820a93656221f7f25bc1c7d9c7e189c64c013cdc6ff2616bfde6aa5df4b804f076e11ce8d13f0b2211614b464020c31cd3ce8b21b0d731a37308a55f062388e5f26793460b90066f131e82d6ca1dbea9b34ee3e96d4fe11de09fb8ac9caadf2ecc0e5a936f46229c04b90fd8e5c2a189feb832aa0428210ce008661799752e6edd44bbdf4bf7eb890545692da2c49fbcbf4109f7d1fe4ec62fce71513019a5b5c85c9a7cb13a3b01012e2d0dcc51de350dd29ba8d2fc3ec22fa51ae60f25da6a73dc1b75f072bd1f03a2b94661f13fd8e1769e464aee6fe45d8f65d65192d59cbadc11ccb52cc14ce001783d7a97c84d51cb3d92e5219cdd2b639f4f089759d951f564b21d77b46c034cad57cf1cdaf2395969a298dfff0cd23093be8e94b9aa4dd854b7683cb9777e7efe034e1083fe572f16d0f07f0400607a42d6b559045afa26c25f942a5e3ad418ee4b9a037639e796218aba679fa025b93f3759ed62149108b16b5988c1c92bdd359f48c29fb7616e1021967674556e4ff2e07172750d8313c51f35bf70e73651f9c0143d0da48a8dae1ef594b5995deabcc70a44b8c21cbb18cfcaf51419ffbb53a7b297a96de77ff70f058438346eb5feffc8ac2cb3b5dba70f66f07afaac3cb36fe7e53230bbfa13a3b890553fc7ae76f2d23da97f0dd0f5c214a159b5563efe545dd295d73ec5606958bf7ec241642062bae7e31940367eae43f7c89746c02af1c9a92f35b51bed9f1511e20f32cf66c7ccf8c3ac2cbe70a387ab7de6a982046e9d986a3123b8001c252eaee273c629a6cfec44132d28235081fa42bde813f3852e1bbc3c5ffac296372123126abc3f94401c53b637ca6428838ac5e060d77d0bc8ea5b89dab66a86f16c1a770d008c89e7b472ed6ce063ce4180601503b25af09ece7e9a0d3603f2d38444cc305798459b1d86b4aa036a9851995665e303e74c52ca43b428a741a378deb3d29ada489cbc8f1923231a28f5ae9b4dc2cb196426fb107cb28552b391915cae154b121ddcd6aae79d14f94210cf636689c19cba70d9e61bff6aae8f0094c03b67715a7430386dc949e20bcc028780c1fcaf4b1c95c5f785c8e29e688549e1096324fc7e3c82f3f145ac504099baf3d524775ecd30c90b88b096d72d24d0ecef830c2c1592ef96f655dd13aa77c291dc8bf81326e282b6b748b7f4597ce544fdfdbb68af044f597c32a6d6cb5ae978059f261e7fda7a5211e297d0ef163c59d1ca81d6d86cc9efb19c502a1e4e2c5dcfb10904b4d1b0aa51154cf50cb354dfd3f942ea359e12d811b3cded31ce94c1f0be85827df10896546c68d5352db6dc6ad9b079c7fd14d221c5f275e85af74583fbfc8f122d8d0c1b3441fb1b18825ede34e8cfe80c28c54863f22f8396d191c4e21453038c6e3607e3fdcf740b51fd235b1825b23553aff021f141f58ed759a97c7576a51853814535d27f5052caa3ce8886097ad2902ace43882e7b6504abfd0dec4bb6aa7633711ca616261305bdcf675603dcb8837283581c8f3320cfe9435cb7daea4d25eedcf899f8004fcd87358e71fffd806fda0477c77df7399a200ca088d864b7625e8f52e1a97a7a4dfc853f9da05f4732b33ab3e60e64f811a05efa4ab902f6cd1c7940136e3be35b80d2d97cbfb78ba7e37eb7cd994eb7a5e331c35e9ad8db55e3bb42136359ca2399b4eb8d92795a958329ca1f47eb1c62d8ff0c33ed9e09704615537dae073531a193640c55cccde19e39cb8fc0920c2f15dc1d370663086fce0e497c037bfd1177ca0a5ee392dc415256825225fca06fa400876da84e265939ef4307924a17139b47a1c5f178a4eb0ff74b16bb57239265396036daf253568c8f38f7003187527c2d125f786f63d093e1a2c2a84e2804206589ca4261d7c6fb5dadeb6017e3a53b503b1578f21e84f4b080b95005378035379e92a740bb645811ab4ac242c7fc91ec51409fa30dacb1ffcf0fd12df233d1097f55272138db41e60bc081a949e10de4501b1d1bb5502163f7922779b0f3d82f973b2b5cf7e98dd8a6ecde7e0501e9768cf9443f6dbc1e0d863bde28cd4f1b81168b90ab66d4858a4d9e333ce2f497116160acfef5f2ce5d92ec8dd3b59c0596247e04a101ebd64f96dba8b47b90e307d5dc43dd88f0ba4220ac279d5a67208f08e027c7cce849b5dd9a39202f39327439cd504d81fea37cac74800ef7f506d120a66ecf7847cbb8af4315d6312dff0bc66d2fa62bf1cb33efed566b629f89e6c586b0a1682dca1189b3c66e86324a30ac4a2a001a6144bca8c12c0e704e49a338f9cf9ec2e3ef2f480fdd8d05d7e46c2742ccba11836d3b5d09c35d779eda40c75ce1e6e92ccd5e7afe8354840f8595b048b860c9530d2733deab3696e704b8e136dbb7a1ee0179d95864c4b8295bf0687ada8e063d1cfffee4e85af30090e3cc8963934acc9860e93f40c204615f8772a857cc95adfc3f7bee022c6de836d7143ad55f6af60dff120a47c6308e7b56013b924ec06f8f9dd3f21e0b0700dcea28b514028e693c175d832a82b8479dd9c744b0aeb063eb57f5112a0e9ecc9770dc81fff494e6dee45fbc0dd46ef67e63e929c727b340f64a68171d40f0462e88522967e4f8ac1c06b7f812b52b392d11bd32da2c9ea3f6fcc302fbc00aaf92ae80dc13858bcc0159c98694c00292a1538a404698288b5551b54342f7481033de28b271d06dfc92fc4e3b922e3b6adfc9b96701b794019aa5f3d687dd7afb3febfffa818cfb0931612cef783e3b31788242d0bf1a548abaa298641b6b7c5839570cab7f70746b5b9532420c379a490a93e5c87161ed6b5d7d4188b60384be9da17c0225bac08981294fd3f76d33f4495ca2a6e41ff8022806a0b5fe6a4c71739f8ec0c7af6164c98cd11baa8432f09aebbd7eef975db5d100e70344d10b81f91822528cf5b0c46b254348374a14e48435999d8801647be346ede91b480c5b9876b7629e84db0a9b4be0c240a7e55aac7a2071da27f7bbf343f20ef91ffc8a8d1aa3f4eff11b6438a2b0938548313dcdc29f19bcfc6ee99869e5790ef594dde13f47cf66e1c9b2b44d84893aafedb1bc5a308bfed26ed65b151f9a48489a71e100fa05f064946779d6f2dcaf534dc1ab5458a609492335dc08b6e96942a90ed5b5d410bbc2424ea48b54f94676fac399a25eba32cfa3dc6202440d926bd3221d9911d5e9b19339a1e3778524ed5e0448f2a37b0ffdc94bcb90dfe68f91d169b937fd1497507750a15540e1f8b3f696d8928a298e4df2a6e9bb19be4bf2cb7f2af41d0b57a443c4486ba57441be21ad096980d9bde88b46706fac403fc45d3b732a3752dfee6817158a1eea36ece7f7cacdd6d4ed9dc197c0c9e73a56eb878dba02b79ae86b9ea920d590074b246607e112a91aaef7afae53935a90e54a5891b8feac2761602e6ba24b94d8006d6be07694563c1d5dcd8009b305380d7929185ceb5a8c6849cdf2c29c87bac1e80a6034469b544fb14582e081e8191757b8fde4bee090d6691f9b8edcc5d8e749b60f57df56c25e9277d0c4fd864a99fdb7dab12795c6c191f2ed59128aa1e825c27b0f74c73c3d7e13f0ed16a3977871405d04a094928c8b6f0f91226539aa1821e6dd46439a48c26f0d9ed4f7a2f24a89ee598f2b3dbbf385413e6bbf7fc4abf6d1b901e372cf3f788a1b7606da43060b380ca32479b5d5b608ad1fa34ee5c8a0f2520fc0cd8e890e087a6a506bd26c4607522da79a65948f03378a9899f84ae98914465ec9fab3c86aa2616838197d80d03e57ae21c02e7e841ab1ed8a90bed13ba4d710b185d548f0a2700741cab12101f3ced4d90fddf50b61d8898b87c0e6c6efd960f1435167123a4b629d49b83b1ec87ea058137543efd571400a5e8783d18eddb5d5fe355c9b25acd19335161b1c2a2823869fbc59ee3e35215ed832d14eb8e3149d72419e7f2f233c8e53932c9e4d56374c089fed5ee53896c1692e1a470c0ad77f52fdc617cf905b7c68630d44784a4ef67285f15d318799d28e66adc0a6e8340cdd3cafcc1ede6a3ed567e7937d8d106a835483b7e3d8bdd02bf2a130be9bbb1acf8042e03f64116cd5fa85b4523e00ee488b2b9e5fc6d78f9f234eb2263e5487c36c7f1cb466a9ad0e76a4cf7ad5211681e841ffd94bd0bdd0d61c06f9830510db752f0e072b028b00e3cda93782080889e18f25de6266edaf30d7199b8c1e61cb3a24962165aa1d5c5453daf324889ef9fbe8a2e97d93ff71798bb79e34d617f1a633de0d0613599600afbefddaece748d41ef9a0abadd9f6c77d8c507547dc503c388dbb655f9c75d5a97cd7877f2bdd73c5ca49954f6682034d1c9da431bb50b9060dce2e68ef0ed02c3b14514eff7530f84f7692a5100870bf8e649b45cc36d7806f6c837cbce5be8b7d2cb9f448c2e013d09231c579dc8042f62a20c5436afd75d011bc31348d5aae6bb4434c14d46fe4b2fa0476cbbe01342aceb11b6df9da82701f9e232c1337993d7bd3418497d96d4c12c06aa89591f6541839ee911b6473cbc015b91ea2757079de6488074c8d02ee7a42a43bf5d4f25e182ae3c573a8a77ccd4418deac99f02a87479ee2bc8f11e33dbe0ab0b003ca1e1ed72b2c4d218d22c3003d12c88a25754df5bccb268a59501f96410bc6aed88dd70e782085b9eca852916d5601ca198131d4586db44a07b689898315d6fe95bc1ec4486def25017ef19ce37de42bc888552f902c2e83247f16c74e87baf433294aed8312f8c328540787e7c9187a31d4d91ec1922426d66cbdd19f8929931b52f0855cc84fc2e2a341be963fbea9d9d45eea3271032d8407f7081f8734626e558b861fd41dab92879e4a853d51b12998f00ffb88308c164d097694c4de7b4a0fdd4c0a743672f38a00fd63c88b07144c106d474631ce855183cc6dfa1be42b99f0a2b139583cb5ce6400dc35a729f051d892515ec78b90d5426258459ef7225112045c8bd1975bdc6599c6cf10b35b8c391c1681223ac5bb105327335722dc78564f84538c791873b9fcf3ac2a4d9d338024f8c93e926ce10fde7cf5ded2436b9adb21c3d6194603f7a31b74b77c794fec831818011ce33a0015d50efaba7a0778c722ebd90c0dd6790e0f32f70d87801a70973e8570254c3e89c92591535965b078fb2db824967728fb04de9c737c40f474d53f08a2ddcf7325d925e21187acbd4d33d9927395866b0db1060e2f81470c41ff3b3524d3b9a021aedc8e4d2c7b997018d4fce1e35eacb14050ee01146d32a091b9a3577da7b649cf4c80110f9bc2f2be086bcb2dff62a8f9a928f4b56d9b7d128adfbf02cc79ecf66985178af014248284fe048f627c9718e253314201484bab796f60169708d5473cb108136f4d91eee56a976c5859519f3d6af03d7a22086bb77acfbba41d3a84437fc8b8b151bd216021e57fe31a245d46d3a69b45309f54fd890b72dc9393cee5da1e98c302dca6b87026885ccdaa5f1e5921f9e45e61898daaec2b3876f50beab54bcd10ae5a31d385990ddf97d52e985a462cb988ec2f1e6af1cb753be76270111d627187ca34528bedf63045a8bfb940ad673054a14740865354cd1779ce50ff23992d084384a78a364507b6cb2d6d1b9f3a1c800240200690516307d0dfbdbe3aabd7b668aecc09221a44ec56d0833fce1404ad3e12b108961a6897d18a2d4bf9e903ba0e29fbff0c80ec6ae66daf54d49fcd1571d3cbe79eef519eb27f1ce4842c71b0315131863992c3d6895ab2d03649cdde5ad25d2652ae80833809b40d0227249cfb9dfc3b0779c8a73a955c7e7938e9b23a4d9bbe9a5088eb1236cc291b1b602175bd4e55aeb1c2c9f8024eed7ac763015a0dfe2299655d821dd831d7118d6d1130d65d6e55df3ce1e10aa372341a2e8da8879259c6c70371907dac88d94c420618ce33ee36ad5ffe56748c2c17cfd58ead69591b9c68450f96ad304f854756d44dc3f93719a4db758a0f1fb0be37f5f8c59cf4bb70a2e0b08151107fd8f2ebe8c7d568a3780dfa357dc077c1bfbcb45c33285336520f4308ac2d1f308b4f1f0e82ec8ae8497f6629d1ab17dec0ec8b5b6f51e3109da4eba4cfe611d5af323892fc9c7f88c4bd9d1411a5d704fdec59fdab48be4e13047b5572f9beb71eff629509a004065aac49bc9772a158a7581d6e4bd6e66b080360a4b8ab4cdf42bef3591fe08bd408f2dba065b95a0cfb6d77e033342153c5dc088ab9c53ab6cf3ea38489a732bfed3dd5cbbd0de04474a0ddd24816d22fb5eb30b44e73e27d22c4bb80fd376a7562bd62cfdd479414ee86cb327644f7a7890ad85c1bae979ff4805c3c2bbf07ae86ead0dd65473e81aa8c766e6e74cd4a36588046473439927028ae6a5b7b6900737189e03b30348ba212454d8c722670936df87cb6658a3394d26cdc665b123ba12f134162f82d31c097cd32b1a95c193aa0a5abf47f14e739e0909c896c36392c2b26971ded51c9e990e5f90dba2cfd1e9a55597f28bd29b90f5e4a1a4750db1aec9b6b8cc66ec96f7436632c9e4665b92b1a37c44b14787e33c16e19ccae972006892f30c7ab0a3a0af73d00b0752082b83a4004dcfc48db29c5fc24ec288b641572306d66c5802189714e69f4e3d5921309503edc80983409a78f3f9173678613f3b4482aa7529282899019e7c939aa9557bb632113bcd17d211a9f49ebacd91c3e92c8af5da8d6884a344f65050e8c30cc54174f62804ce243f3aa96871bc9f93c4d6c44534382d53aa2a90230c61c0ca0dea7385df72d2673a5c939a642a49ccee9c6cd52fa8c012e39eb7ed5c30f822fc21a3b6a443ef1bdf329b0f7b8970e73bc7243215815c870e5c3f658f3dca07dc97844abdb29f9216c91a047f826fe6b010c713a7d0b37f9703cbae5178a94199d761b644f9b5a68510a58ef566bc841d3f5c91f8ed951e3a1385d2ed2c979c3799978b05e05141564f5636cd13111baa398f61dabfa1bb07dc097fcea3c1c092c475d3a57ce1ffcc11e79104a8877743916023e6413828d6ae5c0515ea6f314ee54ca0b001e2d6c6e8c51df4a893dc162de7de6df7e3ab59d401e9b3c5691bd11cb232f711d7706c997f732cfe4358afc9e85831807c87cf812c51a12a869b00a28c91ae2cabb504318229de62e2c6b9e872260b99b8d6609a2f2724f9cb1cf69a75ea544f9438187a1a7e1070235743a3ec09178fa6e766587ba47a686f13f428955a4e846b1d4ddff1bebc121759cfd78a87301ce5b63aedede59a753d1e57cc2e3fae109f4ca13f28f2b706fe4185111b3dae9052ac8bbd4bc8b066f54ca9bb824446c56360fd166b5d3fc605cb1acbc3ae72c6d7c99097ee6abf8bd16fff1f3c6ea47241c51974a98fea696b3f9c7bda6d6e2de7efd3bc406f36315ae11cd8e9cbef946ac627e14e6fa5301ba00f7d9d7510bbf0ea90aa4845d9263f788f5958024679ba9ca6601e3afe20663747b34bef22d66b8b3e5531f2702f9d23e4d73846b94783ea6d52534ba7b38a86b5c7256c99d5264cb9087cd78d36e97ef7cf0d099813b6f70d85d61fd991b74665e2bd4f5741c626f662ea246086e1bda4bda181bf9c6d282957e867b1bfeaa27ef51b5032e2332a63fa6085ee2bc9e646023c495b5d0da064877e9686df9725e3c84b4b07ac09f2dfcf183808cad7b05e3781b53a9cce8a5055b4fa7d6ff6c4735f5d306c46e12b6970cce4fa355c79f2f870b36178bba0b5ab6dba068a0341641ae913f2ae17502dcdd5504f286e12882670faae4d201a16ddcf3037637d76fee670decc885bb5ded8d8e6abb11ab6c5dcd7bbd64359fa91e366b7877d09a3f1e4d70e6886a5d58cec2b96fd834dbc9e5af5a14ec7c6620b13b0316da436c0225c04ddbd8868205c78166586b0e80193ef0674ff0aea551b13669de0dbf0f042a186cae4f95f77ecb64231a0bcbab301c1c2557bca1acfb6210fc88e86ae681b67bef8a1c25e8eaad9f6515fb791a3026a18cea615bbc1f952d82519c61c8bb6afece2aa02771b64ba86baf0110db50f592600fc3321e44f345854dfa75c1f9d5c83aa2095f148afe2ca2ac9e9a98d53302a64283aba7554c61414316a0ddc96080c8d21c37e39abd67bd08821e6ca89c91b638808c9084dfb2fc26c479b95f2759192ffd6a1452352b4311faa6b019118d82746e33a85b7325ab9d125b864862d513742ec7e7ecaf963261a9e8fae497f1d912919412c014f98de9d54856ade0d72963ba81ec6c829952d02ed3b609d77ea08cf2903233ea06e43f4801c5cd8ed5d55d3382af10cd20227df24d8f6c7d152fe9a7928d88b014c19661ea5e92acf1637f1930a560bfee53744d48937b2f41a80c9098a7b7214941dfecc433accba42e95a7bd456f3750adb72d4624e6e0b06ccd8aee749a0e7829fb0a97164abd1f7115158db526056beb7c8b8592c15546bb20d230b279d434fe39a18a180a3260c49877b5702b203edc969ce83cde71905b7978114fac410f5151f4078629a9ff20bbf70aebc63deaa6d5f6d8606a861016b60ab06580d6b8f18c012d9e1029b9007e7c63d632c1ebaec0b4d9d3bdf1ba3117e8395a985c825594bcf17bbff88b666cbb9e251c1eabe6909ec7978841e4fbaeb0a96022cfa0e025964b60b7adc3c6433241d65cb2a6a23fbf323b7561ae70751d9fe0ab89ed7c0ce31ef22939860193a0639afe6d9cbdcc0354ffed3dd66b8709d298c576af902fff090f7da41b1ecfe9e04a1d6ce972fe8051bf1fd61d87cee2fac6b7f85d00dd1462c307ed2c4616964e21837f98b41ea50ad91d6e074dda94a75c859f07c4c4c9dfb7122492e3c0161da05e19f4873ee6368d37f70941e993532a967c3de9d296b0782eff046d32828dcca7f04f64c9481f43c8d5f71b1926181423fa291ce803d8ec50b4bd4b1aeaeb51163503702c927745fcb9eaf8bc8a1d3d7b9bb3d250c4d742f7cd3943e64961b234c255b58b82ac875caa68c71e41ae3f8a9f3b7c94b7f84f1f67f03a2c87d90dbad2795c8aab596511c449ef0ab7cddc8dc833900b611a821e7af4d134c3d326ffc7675afb58574f91884620244904e615d502de6d213ae031ec34983625a9c2b53a321d457eea9415787e5326588296ffae3d206a15de0ccb543b16a47b4b3c73d6b72c9071bb611962d6396800ad0fb584fbfda90860f18b5a192141edbe21b6cd95ebd716cb3925f745c7756ff9f5de44285cd9af46891df78651c3c7cf95ec76758060fdf44aa99421de8ad3ff109cf9b4ead068f86c81490435767a8462ad9d283c28cbd14d33c9169b071e4920441e6c042438281f187346f41f04bd7c6ed0785407433428196e66f3cb2d427c3c5535f9506ee9775dbda2cd3ed31b2e47073d2b63a4004903b54e3eef72e568d9bc1bee9cd239a49e0c9f560c9cbd4bbbfc4a31dff5e42b6887c0280c1a4dcbc7a02bfb780f893842998fdd993b833916a1e61fc056977f8654d723ac361416f3398cba0b5c8e0dbf9d6b69793c84678dc7a48acaf30d72813542fa62c54683322aa1a9499b47e27a7ee1e1a66d128b896f225c0ab9ed23ea4e8a75d7a4a0a0d05ef0c81021f7d8c00d22ccead76ef469308743bbc67d9c474af0bb81d2e1a923a1f11840caa315d8671dad82440c62a5fc450018dc381e89b7bf99d6a997d3db376c356e537c1991e4bf2f400eb2bb250735742656a163871ec982b8e8daa38d43880a1ea7df6f486c310ad65c6ca13619aaece72ccc0f676a98d395d8e2038656141b0df536a6cff0c9b6d9b01a544dca4a7d9de055d481755ac19f63b5a61ca46faae8ca325e708bbdc4a43187feaf3efb8939dea084de98f802d36c91b0de1eb12db2f71d6cdabc146ccc92e6fd31506b64f6e3e1ce687213808461198285a53b6801c10f29d620e76b79801de06c8a3643d9a755c8e64954d73e493859b600248caf0d21d81ab5af729b23ceaa281f27a1ff22917e8edf38f7d388cbe1ea9f9d5f99c8812557d452bd14b5cca90c2d7ed96e05fb68a40fae27adbf70a87a66dfe17e943de1184faed6628d0427f5ad99a3e891eda93c1b280cb6b281a4b14f4976ac4f81c0f28bc53c4a920da56d1d0346ad56bbb86ee6a4bb45538015e4a4446b4b0ebde53d5a1f114e52c64d69f3a4afcd9d51c8ea842b4cf7192fa0833c20336264d5cd2ef325c9b9ef2ceebc3805459b5755ba42a673b546ef0339ed2839db7e31142afaec47abbcb4706730003bf767b740a3761da541ce9a1a7f79f27dba26a0af595fd4489f6f117e7dc854ff19b092efa85947a33ef57179432767c116878fd46fbd7c3cc0642a0cfb7ff01a7ef9eb065fe3aad24276ff30f3bb8e2c1554bca0e039d3596d8be9f6e60ec42dc5906da0fd5a1af89de5e0901c6fe82788048e0cdb6f457bb225e59c4facdbbaedf9aea3e7aea21a41e8fc05a962c4667f4eee785952537fa4dc36b512b0546147763ad61d2886b799815597b20c8bf5c7d1c7bf6ef1f8273f6342e3a74d3cec7d275a629dbd73fbdb9117d4ba99747670e098a23d78a231512e713fbbd3eeee1b9498c676ec49cd9633b0340aa54f7e4469dfd837ef52f43b2c30792c3b9328ccaff7d43b7230fe085bced555f4051aeacb97f16a82d4404d8da0ff8aee829d5ed22c5a1300202ef64cb9ca634b8899798cd90353c1a9550fbbe0d895d0033cd2b29aaf47d42e198411aad1090860568b2711088063923812525f4adcb85eb9d6d0663100f384bb9bb072a2e56558f36bfa3d7cbcc3ea376484c053a73feeb2e83a54ddb5733f4905052d628f2aad5f1e2403bd3b223d0382bb53d7b97f05516e23499eec6da0ccf597dd35a2e250df6ebff4e3bcf85b1806d32a7947d7863c79e6c8c0043d6b6e49a51bedb79884bccfd15602c3dedbe6f0b7b6dcde127b36208b6f9a557828c4e89f0551d49946f2c13f70fb9479b0610754a50876a9e474454e192b9bdfa8ee33c8db3cd86132869cc5079aef68c04702a9ecc2a891db37607c6652a6ca18cdd2bcf684aac9b0d62b0792a179906f97b440ef07d9b09f52ebe040eb6cad6e606c4926824689479ae66a4c99732c12b55ef34985eb4d80015f644ca9b1b4ebfd3987b26d3af2d0d04f753345a79ffecbc5fd93ce80f3ed42ad34c7fcbe01d7fbeef6e9d46c29ca21c9e5e8138d5c07631cf684a1ae3c40bfee26317ab0d61d8e57e3d294506147bee7f89d1349d0a73837ce91965071070080ac53dfacd7994e077e4951e2d29fb6e8aadd3864c3f0b2f556411870b057909ec78706d4a89f4c112ffab4ba8af1342f84822b44c30065cc36ac6413d3b2459e2f69bc3d9fc4a7fa9a1a2930f40d1ab08d5ee87d7627b6c06077b73ca5aa005ce81777fa6ede03c0827832a6b47a19ea58ac1a58895a08a3f29d3cc3be2f26865092379cc9f7fa1d4459aecde4a86f02d3597686cca66f951d1407a6065f20c9f46c17fe4bb207c8410d820696bb48ed1c22a7d9c94cd13194828e012ad21728dbfd29dff10ab4a3847ade83ef08c0b1bf6f22957c9f68070e62dc8a88d51d77a5bd3626b32efdf604f4726551058acfc9ac183f30182fc7933d8fd5e94762862caac133304d6a5c0867ee7d320d02fb3eb0d64a20d25c5bf4de6133a989bd030220c3b62fdd40480543832c7fa5420d8a4a1c229db573cd2d186904cfbd8aede010b6e1a2909c0973538a85e0c97b2d209b8693f3793d528745457c3c1df66f09744a5b7112a6827a7a3bf166cc13a8683540c54826932d842f178570049c27cb61bd513f71403663bf797231330f0dc1663da225fe2e4d1120a27edad7faf467766500253af3a925bb21dd593ae3f8324d288cb776124c39b9ab81e582bd2322138c815aa70610c4f57052bc27b113360c2e9fee82f6ffd3a3ddfd8b71eafe99a47bb807e5a47b83579c04a65a61d585477ed28294e3548c6eabdaf60623a26ae62867d374a286734f83b7476c610ec66576c59897dc05db100dc03b6ba794ec1ad77c5752343103c176fb18a2156b42a6e15249966acfbbe7c8f1f892fe50fca7afa465b712a17735f4146e6a6dd9445ce436e7b123b50ca370ee0c0daa407f3baa1182a746ae03f59a4cadcb80612e988de0497a1295ea9c1dc1e2076b861b3697d8b6319183a6c5db30d04f9ce6865c59515af4f14c1f4e04ca2b397a4e05aa57299ffd90f0b3c0be6e5d3b2c50699cdce0de7add932602b1ec1b004ada66f8d19591b6e420a3e832ff2bba6ae025d4315711b07847968bf63879c56bc3703ed3c6ba4228b0af76c5c9975e7c6bf5a0ab3776753f1fde98095ecfbc7291b3f6fb82b38045596fa2b48d15038cdd1103a4faf8267013432585ab2d171334237e64df7beb8c2c5353b3e2dbda5b5db00e0e89566a8413d4cb20ec08effc9d5b731a5a896d852b0324c8a8882a524e9f82deab02108fcf9fbef811def80b2d0fb3bb42a9c99a6b86e5c7f5407a40ad1cfaf9137421a67fbf9980b5c5c30b1e76195d40c93791113b3bf09969b725c51a8b672ea32ce7b58a131ea400ed36ead7b8886be95db1c7268f9f8c2ee0e56aed3372871221afa5c67ebb8b0c8693c25427008ff1838cb452fe71fd43753392733a3634b74d290aebe34918c13a5934af51e18b86d90fa65673ec604faa5ac4e9f8b28afbb2168fc1f1a37d615efc0dd16a5f7698c1fb563ebda2cf6e953757c75449de1dad962226126355ecbdc6bbb91862e925efae2eadb76520fc01cbb1b0bd4bf922f73bdb73fc45566d50d13447c52f6d772ff92c11506f362269ad59b251ca4f557f0cfe8d00295da79253b467ea2f2ae14b4b901093958c9913720d79a5dba674b8fde070eaf4eac2968437103540a8b6b1d655c691cb290c3b3b085db4507ca0d3982d8cb32571d0b45037f6d58580ac4ec50f6c5b150e48a42a72485434ef54178a826e99420dab3981c8e2386fc1b23eb615adc9db81e9f713cd0961e11a722138da0d09670fc8319d64aaaa2acc3360a6e48ae09bb3b15482ac781ec8e518a8c8b562fd1918726a6ae5be8c0d1eba653d5bf9de53e77355274d227821b663f58e7e056e21e20eb672a681651a33492560aadd4d01c667eb016846e71f3775b25b595015cb1f38c12458c1665d7fe0e84c4ed5be60bfdab189e61407c97f93d8ab2b077dd14db971c768ac665edc0974237e2646a009e38e4b69553bf36f632b68cdbb2d993d0b52ee2c43abdf29ad5d9ea7531dc78089254bea4f4818a8d7509749ef7b8c97530f482508c856bac26ab3e3520b7f6bac5c14e403fa9b6bdd3496fbb68c8e916797fab225bf1de5b8b294afa1fec44b99701ad217418d97122818c2f2b0bc87f56ed3aa46f52ee6f27ffb3a237b92ca7b5ee37cc36d5cc580ce5e7b40bf379646e0382983b375529f227d322b96bd77f5560748617ba1c38195a423ddd09f8fe5776da35899ee208297fabe3095508c6d55f55c5f1c6ab4f092b9dabc6f1e63fa0153cd0ab240c2da8f59fdaeaa675f7c8636b80e7c43f65e21d5a187c064f486ece5593d4fc64576784f4f874fc008da54f1262bad0e75eac80f862047e2b9b18ef22a41c8d89c5cf8a8d3a00d46cf63c34bcc72237fee72ff2a0720465833f8e5b3b25b5855abc16d489d6713a9ea667813ef4b25283771b58adefd3307ae9aa482b3be108af70f374c12f2ff5929e590480bb229d86fbdce8e2dcc2f4ca1e71466d24fee37de61a56c0aa7cbc844c43b94cb659014a91cde1b15a5f04b4e08b44149f80693a770cbef3d7043381ed4951499c80f7c254cee4034643a7dc5353ffc48fb058d2590e795d59f1b9cfe6d8f87e1aeb0f18ba88fef4df82f2193f9140c2069d09df3f2d39ed139f75e6044224332946cbe78929baf76600ea12ca5d85b7bfac1a8567d05831d8835dac774ffe06c4633006c266e2cc0c35acc49281893ecabef9ed88d4ae5a2e8e270bd385e193c83d577d855ddcd82ee367080f6cec22b6f090c5f7640534400cb287eef9799b0979cc2b83c3774e8de38902c892f7f3f3fb2167c5299bc92aa9eba44f3b922a4646e0149a495f02e76f05e0b98d1ca85a4926d3887fc8e9fdfee945afce029ab7532adeb3eb442c719151036bfa10eff99e65c389ad5dba09720d1b090daaa1217a89e2d3ebe0ed447b30af5e76d162861e33ad89d045052fbdb7d744aa05cc69d4549212b1138b2cde7d43fddd4b4492a101ab39e2cb48d19128f23c02f504d5a51e39c90529714469c50ead8737c214024331940cecaf0137cbc4e634d673c2c47e7f48bcb2fe16c5d10d5d63215c41fa6f320ec730c79f52224facef54baa5fc9d634e967e72f82df692f907d821c15e6906a858d96ac538e5b7bc871af959f691ff09da080a6229e2c184324d53e12084ea2a15d67a037d4b65d4b4a0a0ef5b39ec0dfb2dcaeee8f17dcb707e18d922f7f7b3595d2207017d484a160c44ad8ce24c9f95c442a2f2444b545ff33d8f9f75f5f3bf81b8c574a80dac371b9d841394ca2882d56e796a486417845f0ef6124495d34b655a1d8654300aa8560cb712181e271510bbea1b3ff287ae7951817dff95cd883c00ebf6573bc992f6f436b71dc87de5baf705ffc7393edfb3ac14c2845c90268dbf0ccc2453f004023d8da44dba1a09d77a49134aa99dbe36602582615c599ec1e9c649bcab29c3f2b3f72a891990e0fbbcafdf8f8bcfb6d722cf3a5c119616ed8b5bdb43fefd500395568c392f60ec0f04253b404a2862075b2ff22badcacf4d1d01533da119528db099d3144ad95aaf407b145eec5ba3c37af4e89c04341b010288478c82d4546c844f0192ca9004433e5d5d44a1660373548aebb61167910be1dea2a8df4ea62f5a12e9c199e6df824b41b5b5bbec48095aa0ec1ce3acce2fb3092f4251ede10bc3942392cf7668c1b82b5528ce85770aa5f29c4adc60c2214eca5985492b3f9028609fc3ed57ca4b91908cebe5fb82cd9c8484044a3ba03df6aa50c1176c6a4b9a6ca622c1522ccb5792406f24e1a59161d11e18953e7bb2c0a0abbd0fdb682b0fc5923dc886eda1d2f6e00c4123db2cd09360b1fbf89afadfe90bd54480a9a7c09f3cdc4fe17d340cb8a5f02d553f8e386f9d5ac7dcfadc446208589ee07800d7949bb964f59f309d39f53e79770cbd5694259084fe6c689c981b22fb71b6c376460fe593e8a2a6d63af7b802d8eb8116cbed43ae6404ce6057c527ec4438734fe9f76ab688940965dc0fa0a261cfba41d5f04a7a3d23426577d7ca859af93c1ac5260249a8ca5c05899075df494beda9ac0d5fe531a3fbc7d1bb7202348dd959fbadb3c79a0dc1d52be8b8bd4886be6528c528f6c96ee7f723a59a54bd6630ac0b295270e2fd7c6f2a49ce5cf3fb85dbdf81f563962a789e07c307675b040fd0815c42085ba7af47f1d6a26a7d8eea9cd4e52d4b8e72e83f4844ef8201bf81b57870cf3a3da92cb3c2b103e8314ae144b033320c0ee0d9816eecf2f79ba05452ec33edd0a66c2e310af7574a0295fe5fad05646b3a88cf47082e1065299aa25b882e4a565e1fa8cd969947b83ad30f1a469a8659d1521e243cf95cc13e9e6893a02369640ef772fba8d70ee94f07ea008f66ba72876cde835f6aa9d7b793a45d2cf122efc31f6c51f08cf31572d71d42ddc17a19a76629e92f76c9f7988bf8eb554e14ac3b09ebc41b76bc50f1940a831c0026457d3a4186402315d31db1942463a5f0cc930737ff3955335b3322daeb313404510e4a4f1b72194cbe9825c45d65674094dd613e5be6705222564f17a4d1aec6887f00b9b28c8b2c306e59422ae5b450e63cde7d309207b162f238c2a8c69e914002acfab8125fef71950f7257cba44a7bcc267a7f3f1d37eb5a41332a6cfaefde801fceeb7daff59a724b04cc81a25dd230616ba9c4a40769db90f41536266b37c48cc2857832cb94f93e96d4c4f19b806968a3fd0f85159e88a63d5f73716519212cce44765bfd8e14e0fe01900a3826921e2368c9d4f307a14a4131886716118d2ca8edbdbf9b53458f286f2ea27facf7b701e0a6d7018e3d2fbfb3bc5e3f07544227d7e608c0ef4f71a387d59d27e6cb2852b9fbde5c5904bb22b026dbdca3d54ef7f99f4d80da206d38a9e002fd4bcb8b781fa04adf1234df5bcb058c9ab58f254c0427e7c0b08834eed5c031ca3f1f42bd769e05ce4303c0f0e9d155d9dce4bd3995a0b3352839c35f7f280883fc0249638bf776a78ad60def7b164dc8e9dfb2a71d465dcd49f3e31f1d5e6509fd6d43d91383a9ad6c66e758f2d67ac9419a16a0f3c8c8aa82987dc5aad5ec5654f315eac12abe74bbc30d4080760e4920aa9115cfdc1a7bf8edd0aa37fca39450e102a26bb2598c38583cd2590cc0c7745f523f9bdcccdd4a6e78d5e1871d23a83a6607f3b43efe153087d1e242e8f954118ebd0db0ecdbefb3bf87a40bc37816fbb0a524a8879927cec86b653498360ff1b47ad246ce38d12e9f489be932ef57699a2559dbce271fbde47289ece43cc290cd253fc968492a7a4ab4381eb28f4ebf7fb13a0b2904df226d56f98d8c058fb715934b15055041a0f8b124fcb717b4e6de4e4e3a78dc1497606a1a17bff7cdbc6b5392a71a00b661fff1796e32c6e4c3c6eefc2f226647683a0cbd3991586c8dbc965ad97ddcda1c8eb471ecc31994ebc751df6ced1711f7b2892fbb5bcbfd9fff3e68b06d75bc830a76d0ab3513c40a96ba9c9928649a902c9975729af486d5d7065de33747a353f89e73bc0e7aa993c6a2cf8e6f7aec87628243f34b1f5f94085a6171731bd1163feed85aedd4cdeae80038238da82ad29cc4416232176ae9f6efe3a546832c20b07b1b649542d10cef2dcb6df87c7f4a44aee7ac1e62cd6479013385f20fa446e75d5cc16af4a8d9c4f5098dd781a6fe42c37d3e6f3e3dc119ce72b79afb1f3686795f2d9e026ca79b18d7fc2d26d7cf33404f36df8caa40a25698f3bb7869059487ac111f2dec788c9084b42131577640ef9108fdfe74a0f957ee30678d95768f5e3987001e67a1911fb334961170d18b5842935045d822489449df4d1a68915e4e22a72010090f3c2e53980f6db2665bf06bcb8f481f6c9f1fce7ebd7088fb41517abbf90370dfc352e4701825964a5c35863f129694c0385d9abdb31a7e0779d817352fb0319327ade86e63fab81979b99d62cbca451b6172e56f5f5ba475de51f81a4e59aa21a2292f4d1ce92ab18caec3d71471284bb468df702b1d38bf5532c6b12e7c9f647ce7182fa60d6a16987684ac122b6f4390fef37c0bd14ff7950ef249114f4df0c2c71807fc1228be54c3119aeeb11be0a9058fbfb92d1dc2fcad52e98d2550256be1a76e3d32c5d5e83e4e874183b892a9619a3c8096ad33ac1f45ebf8d505192ec8fd1d18ea6720b64611ac9a7506f144372b1d4486592fae93ef9e5a7915f96bc71dc75d07598f4b68b01a623df221315158ecbe6306d75b6f16475db5a573c6e81a6dccd415afe9568afecf90853f4cb465db85e0e7f83107ab084d7f1a90c6445b3a229db02657afbe29dc3f86c15fa75788b6d7a62c3c16aed5fb78c3388d2e1e926b9985d23e8334fad5ce7b873a921ca470deaf27cb59f9cad8303b4fdf96ff90687f46e2d1a8f4b6fe61d0cc4bb0383b7b1ad81b6ceda77c1d2b69290bafbe9583d0a9a0863d056b6a7eedafef94b20f6b8dce120c8bfac445ed3a2d91a2c497f0a22b4c451d63bc32864e650d1dae9e64f67e89b59a36532111cd5016e3d9e71a34cdab4d3bd2f202d8929f8643c67453ba5319a2f8f77bbb7203baf5c2cbc488009789fd9302e316c39754cb32eb2090ab61b4a02a1392ecca439158bb2ea6f9edd093b80f08609952e088565b641d5ac2829d22160f82d04836dca77305de1f8639298a3291801794b7572a1eb8fa45ea95b9107676b048e07ef5ce486809f50f3094fe70b47dfa961ed6b0f8002d85068dcda84ff3d179c418d8762b02a39acd22b850ce33c37d6037718a5245b6495d40f8cd86d64e4a0d0fda09013e34e0833e84e06a04182f237e1d05c3ed48da6ad0c88f6c86426560aef0be043c8c4bc366b8e39d87989836f150df49c68ed63b7a2c7d833eaa5e1456e53f438337e0fbc729847d93df161b839f0686908bc04741e4df7493bfd36fffdbc6fd5231b5b27a5224b9f88a9dd815be9fa50b3d26c8f7d662fd40f81613bcc7e05b32a37166db9ac0a02b30b7d4723e78e6e7d998d51a58ae6008304955a65092c2f073a251d338d1f979471bf9ecaffd6fd6639370439b8197b296d6b17e9d2b5b103b9c80c1c713c2fca3f035fcc2e0a96327f411705d3d60e078ce30326348010830f761e33f8a9d9185f35347f7710cdebacf292e99d6cceec8b3705de1dabea0e718d9912b5dd4f0c21a085c3c783be310db731a4e302d04ec33ac6d5e3123e84d462afffbf3dd7eb1c8329f4237a9c4d631e293deb8078bb460bda87346e4824dc8262ee050ee6dbe74faf733cbd16608cc76b12dd3c376f403c373d3b0ac8c09635fd4d03d01c599a7f0e225e1b5a2b56574f4cbe0831e56445a360e69bee7a58e9296da6b8549f6197d782463f01dbc193531bd6adf3500ebab6e35558fd50c7680e1c01b13b731336cf3fca96d3b98d13e0d4601e229f9f1d18c77d6382db698d471b85bebb612c4f70ca53fdeac01cdc707dc6fae872d99222872df22ffaf3f339ca4a5c2e409950549abc1d3891df8ece1e675eb9f2cfb0b29754b64532741a9546f1bf0d91e221a7e19490ea22b5bf742a24271b9fe398cbfcf2f2a81ddf7f79dc017fb1942da764c30d76a55ec307bef6e8b027309aff19b6a1dfeb0172905ea905bf195dec591c06987b3884187e92fb662ca901dae1bec6027779b67d2b49f0c5bfcf0fd506cc3d7faaad6fa83c88815840721adc7046c8ff400d37d781228e206b4a27b797a048e98b0bdbb8f232bd830b6674a62056805d6d684307de2eab302590ed32b3dd7f12623cb864255813ef9ad7f8c455633583edd08b17edb5c8e9c7b4eebbe01061f42d95b16fbb6f89c701f8809f42930ecf367049ae74c1c2601c140efd8002bf1e286bffffa185072844eb578743e685defab9efb963cf0069395a19f2aa4c06fb21a9e6e89aad1df2087342683f299374d4f02de1fa98dfc378a46726aee159e3c73f38930ad59bd3356433ac7a328b2f57cb2e4100af9a2bea7e245b5d53fa86d2870411a78f51bf2493eb76ebc84abe38f7d90ad7933b25247cbe499832077ed9686b1467656e362e0598e284f76d4b880dd65a23fd5cf0470e77c1f19cacf2130c68f9429c2b634c026f4e8dcd72cb7061ebc5f870b6527641881c05111a8f898fd60948e2883a0d948aa2a67da76ad06250ea816eccdd9d306f68c610cf531178f7caada2f3fc2fe77e43799c7212d2648f416093c99624dfc5380459a3b7554884fd965f499ee15f30c463a38b7636916b6832373f071d7229a2aa59bd453e7c10aa5d1d4493e2b2332a951cc93f3e6e2c3e803c5e942b57415373e79fc01992baad78591087b9df9fb09abe4b1c28ec47d4860d1ff2abebf2f0e78acce0a7653ea33f4aa1e29d80722328de64166fc1b5dd9aa4fc381196c14244ab538fd078a1a67be224bddebe9460ac456b7963e6b88aca01c5af0230082fcba83f18f2d8ce77e04a4568386a451292d35f9196db3aadf9c15a6f58ff124f0e94ef6be8660ba32af8f369ea9a2637e7b2145cca52f8604bd71f16f884f047767f0da62af15bffde370b457d840d3639692705f0002c597dfbc27b54ba408941bdc7a9d400401247933962858767d2d98be2338109b48d06813ab7cdd8402b2ee1a61c7f5c2ae5844d36f6d4e5ad487ed9fea30906e3c4d80a6d1e249f3c1d69a0daa55635003ee3d60adcfc61e056735708f37cc98f6ac6311c4342c23a9baa41d1a129e614a2ca9094cca9b89c7056746d9815bf7ef3f38727a7d9e5d1cf4d98dd88268c3b7549eeee8f08ed7c9748c0b700e3d44199502aa3ad6ef6373f28a5852e0fe8cd359764f90ee669eda06fec70730804af9db0f49ac34d174c64883948f7bb64548040f228d23963a9029ffc445b4318deb7a8199238562ea3574ca5a9dcff524a4be0dea4608b19ab088d9f51ad2eb6dd78c3f1d42a910eff7f780e65d1bd5f58dd273eb0e74be0ed3b1c5ab9cda34cc2a760ccc2fbd7657e1e3af9087c65de0bb9a1644c05a3ea45c75cad631d9f4251a6fecf3aa1fe16524f7a215aa15f543b72d3bd9a8108e2882e21f45683b0a56f8ff60173c56097550275943417522715f349df079d4ab1fd873e9c1576aed445a6288915dfb5f4f2788dd8be8eed9e85f7165c86fc435b9753c734252f6fbe8c36567713b058764a166256a28795d04c27c248c8fb42dc8f4df7351ef153729aff231dcdc8fc95fe036f5b35375891eefe41ee8d65a8f158846cc1f8c5787e22feae2fe971ec66570bbf3ae2caf6801d7ecb405814bc0d1048153c2c75c42f1ef63841e170f4e02857a5fa720c103afb0c3ba973c08a5b9daef89c8c04f20ea48761233171d147db0d84dc3a206b0676c6150f283bcb2bbee2c4fe020879e4934a70930fa0bcd673378be02966bc8a654115adf5e25e213deb831bd60fb525e0330c38496d8ad02408edcb46aac3d81c95f01752348efd7ee7f0f9c43d5c5aa267dfccd2b579f024619bccb8fbd37aa4a8e01df0ae5f549efb8b8e4af02249260065d0d341e77bc9612f84580e02369ac6abfec9068a81ce1cd7012a0101ed44ada2525cd3137dbf66a570dd1e5a929e54bafca88edb59f56a0fb1cc7bb98a854de7b2beacb779a0f741e7e07f92a1507e472231b9d998df34c0219fc705ec15bdfbef48aebda2e1e09ca94ff6e30e6a1af66a24fd15c96a863df5c9a6ef06d0e478cb9490a9edf8dfa7013189830d3f17e83ed25fee1949e89c1fbea88855985419cc3f858afebaa36073e5bc8b787f6e961095823da418dc525ac6258ff263098ee7b086679eee435637696f2e9266b085e03ef35ee9c94e834c1e3f36de833e12b0a32fe37eefff7039b8b1b2ee7bc583ae037d8d0b811b6f9bcac643b497a73e4e9b262dea0baf366bf55c1ff3f8289ef8fb399ab23e8d02a856a8913a7d4ec1056f3a54bc30e5524f8791678c063e28dad292d489f31560bc40fa84c0f016aba50ab436f49894beb04d38df4d6e0ae2b0bcde2977b1345522dcc0f2a0ebdbc5bf1f6d8e6797b7c003246c9e7850edd9552ef7ae3b4c77cefc5d9f5548d6a5f41c303f3e064850de593112587b7e522cbb75c29fb01573dbb12a6463e25ff3f2321ced4d6e6e052e11892eee35f3c35d3e1ff65c75314ec5a56c5f35152db0756c475663d827a6f4813e724af10f92687ff1028b243354ea26f070ccd582fd11a1aad9242b47377aac91ce2512634d8405d468959b0e023aaaff4fce5254f3307fc9d927c25a2b700cf7905e4553a8625dd70fcb0fd2ba13b10c340996513253adea528265597e525629f385c5499ec2be5a538aa71c62b12a750e84d0e0db5e11893a9eb558bcb10cdb4b2357853bbf9599ac7265f70a7a88105ac29fbc67f7ef9bec99e4397870419947301522801e999f223d0c5baa5b4c609e803b2a5f3b56136bd32349168eefa04daa2002cc43a8b5676a43839ee6101fbfc20855c1be4a0d90f5a1b89fe36bfca96d888559f94af1eb7a37871527434f20107120a1302e30d8d20f74cde5ffaf2c79d1f6b990690500f9743d1311aa1288e2dda2c6ceda12378216e6a0397776e5369174c2836eadbafaac9dafe22cf8deb6cfe0c5cbb66f2786c33f2436a2abc955f9345b628d0dfddcc618635211e26243a48b321e1fd734317ae6d5d4ba5fbc38e31aea08d249412bc5eb7af82de9419ee70dc398a96d942634985c623628f4332390c292314d67550771fc9ac673ea0c882413dcd496e70feb585077d01f9ecdb2145ea8b52ac20c566de77dd083a3184e7365d0c2b435c712af8e6fff9494147a6b14080771c4d46ecca3591cbfbac268429637442202bae1e83773a40bf0b728a1e15ed1bbd18321e38b274b8adf3ad84b74f0a51018283efae3cbd249cb1c5318473a067d71bb733b4335161010fbdd135b5a8800ac56639129d1335846df2618e59023d34344fb451c8271d652e99c15b34f685384e1ee8e17b2407acb1b193e293a82da76e7e00348b8f2210960b70ecb80de4a872b6884e20eff9b28fc1e6dabdb1a7dffbc8069a63eda185369cc2405e0de0bde9e9e795236b87299ba60cb13b9eb1bad9f89099cc1650995cfd52f46cf176ddde379f499bf893ca639c4988ec2ea63533ce1857a3ca2d79831a54d435e24db9e9133a4351a297f6d454d5f79f076182d71014d30d47db9f61953327dc1caeddf7573c78c85d14554e3f0ad4aa16b86b1c33961df22a5907953342ac4ed7703a4b6ff6b013398a6a557fee83ffba9d36bf602db1c2608b88c26e3b9d796cb34bf7086b968d4e720b12ab3a34032383bf780c6bf0ba20bf2f7075ebdd7e79442e47a0d83c5e769496f6caab72c46930d3a0d1220d9aa8fbbcf632280c137bdb2490688b7fc26841c21d27265b556d45b9d677615bb022877886fb4e17d69cdf901d09c5a15024d87e80d7cc17bfbffd41a1c7f203ab59ac3140c26c57ac5991b3228c552b69928ae7424932ab0e9d7d2308e2f27e192e7eed43f8436e9327be3daa71b244f90a677eaaa859d67149a6885319092984bf7f255fd549cf05dc694df1ec11aa5581747806b54a22fb4b60826041e231965e5acfa2804460afabb02246195e57d04360a2e64b0de111b29c6947a88a9382874003e54ea6ee9304a13bf6f6c1c1902b4a2e4e3d43f3ef98ff93ea841eadd7f9b4e9b63d5494874d01782f020636c902a474ab2f0ec6f62cd8b867ed66e24d661a76f2ef21fb60d38d02e89304ff5f1b7db4f6dd681a6c0bc3d751c759d74e316954f5346e7f02e97f4f36bbe5588cb2ff9f3ec62b4cc4a5c1e7d3cc193986b9176a7213549b2ecb3df42b399a5c02c102a748c10aacd6bb09be7b9ddfc44a0d0e784495992db9c6c62e46637cb140643ad2c195359321e13f6a8134e095cad591ba0b89d52e4dd4e54cdf268be1eee82faa19119548d96c5a6cb876d47bc63da2285753b6aa472c242588fd2a44dd3d3f75fecb4c589670b7cd85742e95472884033ed136c9cdf5b8807606904582be84562e3a66e8181a69c0f74f8be99baec4aeeabd8ccf6fcf00d2703bb8978743e59be0d21e75a35719c1e976add0c1df82bd012820ac97df2344ce3b2a1c1fed3b77b18b32b618cf797de1291a4e41b0fca1023390a7c15f0858f3f4758d71c2dc055c29ac0b3a7957ebb2eae843dd1255eb7904354bd2c2723a7a0318e052db6b8b5cfc3491909abb1001f61f4730a3568005c37c06fce0a4eb85bb9ced47c1b605c889c20c1f9ca60a2b2cdd80b32200354ca68295c51e060fa2608b0109b48f4f25d3266c760762a7765e0e02b763f218df15a8070f3c8334d256b94e4c01110485604a3044bc193be5f11b42b81d6524919ac8846506a8ebc64dbe96f2c6c4a3e0a4af9933339c89d5f8ba0c4880f660ec6e8934fb651ee7b5e1b3bd7faa646d17583dac7918f30aaa11ffb5dabceb0925817a7fb8e7b83d67a0855a4566b9eb33672e49788c3dfcc533c1940f978248b9473eb3774aa1ca335b3cae304adeada9973a7c15faf2a282d64b2ac56492f2df306a2fc46c0f67daf934bc0212b1e1b2ff09aa2898dd862cf345d681102b9d074582acd4eff345539b40e435445f0f0b176e6a5c1778a1c25dbbb72a90c3d4ae76449850316f486432d722e464540e3a1186f04e898a711dcc0a1a4333f2ded65c24b9b5bb0542bf9132132a953d6bc31b2d840be1dcf1f337cb9f7023aee9216ba8a0370c97104d88078d64529bf81130954baf6dd1d57ba37fc33e4da24ba3d803df9d3edfb0fe785e1b831412362077f238bc48681c8347a1d52e2cdaa5b4cbbfc043ddbb41f96fa332a51236ef35cab1b45c036d25ba25e8a4bf5baabb328f8396659a03e0ecb871c008c4c96eb79ac6e62cf6a19e7aaf6fad544bad46f5b4de88a018ad0193be1d58191b33ebaa5517e3163b77776d4d8fac21c492028096998ba37b2d5f273dfe39a856c595af0b8e4554f59e66c3c190d26845e28e485d8146ec596249ba1bbed7557563112b212f3c6886aaf466c4c8be28e4f8fd18eb22df8b458ae0dc3e4e3f65d0a69ee2e7be5d7ba61c1ac95419c1b8e098e69663a2701ada0f7410294e2627271932e898cb2159c222633f1c9af77064c5229eb77d47a7679e46363b854edae81f3ae3def149b4b7fdb710d5ad19f631cf5bcdfe94c0a2ee96110688c9eeb34e0af1c895a7001ccad21c1099c704f887acbe7eeb82907570d970ff2561a6451a32af1bbf3d1e6bff82e746dc914e167249e56510992faebb9f33e598726daa6f791ff98309805eac0083e344c2f674d4488fe2b8d92cf057d58f5f03ad886bd57e16701ebf0bde719034dfd99e02e416577b2adec235964adfd233d6bf9ab7351a72e8fd27819a777c44c0b8febbf4353ebde9c5bed278dd88f0a6a63f19c2086a8e357b4c3d9682626b3c574b15af56a38ba8810ee86e31fb724986e371352f9e0b04a086b1f0210da84495711bbc12e9cc731340c3fe30afd87ce5d3f9c959de139a2c5ca47fe9fbb7df993b86da006ae3165d49e8d275dcab4ec82c3f498fabba4fbb173a7a20ba07fd4c8190f5f07dae6467a75be19624d287438939ae65cd7938c48fe337b92b2d895355040c827e506d73cce244c8b7cc76ed114ba149f9d2814ea07b7cca579272085a9ca8caa1bbb776e2780012bee5e95ba407ae631ad5b1bb3a9efa236a7f44cd1d6be5b6003308c0753c6e686eaf8dd7595ebcb3dfe2e0240cfb4a5e63cf2d8ae6a536152d7df5e9ec7bd000e8b34d6398b73fdb09b62f0d749447c1d1951c3f39788870b1f97ed298d54e6d38400aa6187f0db6b8556a741c8d563427a8930075bc421726c2133de933a9bf484f8506df1588467bfbb0f0f4f3ac08006e8c760294c87bd3e697cfc6e4040905216bc37b1faeed86e6d0a69e2c2c97cbfb291caba765a721a66d17d9e951347e0196fb62db8a734bc07e9b32ec4a3f9aab0be6ce81527751b5549e278883d0a4a9533cfa7eded07628b33b3649e46bda481ce08688d7e4760b7f938d372a2bd49e655204f206bf4936f8d01a8d8c357b313d4d365c7ececcbbb5c344569ffc49f8110d8f1a9efd8bbbfbcdc11cfaff9cf5c36078fc596eb471148445002bd2d93e405e132f48737be071ccc87cbcc76c1db921cc07175df7c814af46604db61fca47030ad01192c990ebe54dc562926d004cd725b862cd6f1779e2ce8420d893df5cfdf4e0ea8fd8b6ed8f0689311f2b510594bfe134b183a2eb3e38f152fb8bbb91bc2583f660ea7c0482714c50e9381ca56bb03c339a145ce952bc0d0617616e05a804ee71b5b38f65cc6762d1e9ab03946beaebfbc099a95241c13edc7a714a2e140cb4db9bd160e434cf7616cc79e42a3b8e37996bdf1b116b600177ad38d3a72d90eff23fd38a5edec9e155b94f247e38cb4f04fbcaf6525fccc264c900642a09188a1fdb942e53138b6d6fba85fe7771a303bb021f5f75a07e6ee72955d5c1a887d8b4fb8a3264f749b1c4d121559619db868bb8bc062c05917dc317a9af84b81b592ec85163f0d408d71d131b88412f5994df92321981b9d7c3dfc64e04b86718ec2f76c63571689a165f506fd99709ad3c8468eb587a7901212fe442dbc71cc1ef27f64d6cc2fce7fdcd69a0f2cb86f887b8154adff3ae8a0eb66482ba2d07a94f076cf0ae7307d7f0aa622dbdd5842144ec797e47aebaa43a78a9815a4dff5de991b276de0619d263072e9aa1582eccc7df05ff46fd83553435cb997e62f8dc54f24ff2cb9552020c7ddaac30cc86fa70247cdcc6d077bf48d8a6a1cdb211db17dc35e8b977baa8e6f84a6f87f01437e0f960d27c9bd0bd830ac7ca19ff5a4f30e2cc5bebf055371a4b4385e36dbd8157dd7feaa201461f0e0fb14d27c8d7f048736d03212224c5428c000ec8b22af0e07a661456caeb5772c749ffb4bedafd9c9f0ccb00750f3300b074f4ba7fc6fec84994e59ce1ca71242842fa9602939411f7321a8c73e1fd656238cc8bba7b859d7ae9761e8ae49cf5ee4da51e0e6712f3108f2e0a8ad78da54a27f107223b521cdd671fc5b73da3f33f4e8a29015fad62698f86029426e4ea49fdca4909e13bc0f9bb5f492756cfe6a69374a1a7c64dc8f45e40d348a76b40dc038f49193ebad000f443c311a6cc351ee20468abec4d08951e267a790a908d8ba0e3f3c7baff2718c2b35b32971c76806509c92d23bdaf69af0c69db5596125a35f359ff5d291a1fd894c2f619d525406092275c66e0192498e01b27ce09be028efb9e2bb4352762fca3b3e24750953cca900f8922685e698311c41e6dc0f79f8686c139dcd91b5f65d52369aa10d63dc8533574162133f743568797e39d282c5d3d1c5f7892149516c51fba6590714ec569a368aee2e19459b300020c6dea8c53c53752ffde7ab24ae0b76322ebe4f8081ba37c10469354689ca17121f030eda06152ae02fc4788e82b86fb08196c3db22370fb8d9e2136b239471650aeaf62c1556ff160c1f1643b332283dbb835722db9bdaa7b1b9ffba377a478b6633d3e201041c4cee22b3f560d33e2ff4360b2f1d68c7a9a41e42ea538b6faa4308e93a0838a6a1d1b21d58056d98c5becb19e25a3bc95143e519c033aa7f36cc92878c787ef324bc8a638fbb38fb46bf5248c766f64ed658a2e3c328a65891dd82c67c133476147078f6c98913cd35f68c890f82f3873cfb7f5a2f1dc500cee8860551e0f500dbe35c537b57c1b2483c9303f6c66a6dd8887964842086323f5278e78f08e15b190f973e03007df0c2f8cb9b190acecf8901a233e3564fbc41d73a1b9b2f06d19cc4d5e61c9488def54281be7ed7e6becc2f33b2268b917c050cccf10e5532ce9c7cb31f37d0318fb5a326a5f4e6ac8cff37eadf0686301de8842698ec882f3a191757c1a6afc1c0af44bf8052f5b7c4de70e8639c3973d4495e2882856a016ae75dfd47fb4a0130b00f93737b40bc0b768793d42a60561e2c967c97644f917dce00e27e4274ef229a9ca7731e40c591bc61fb6deca4f2d98e2fffe20882cee47ffdf577e29e725273563a2b5e53f052c9411e5aeb790c4b8ad7f5fe8b28fb7ec3caeb9b0c3b8ad7b3cec784b9c38a8404537c76465a7c4b1836af78206866fca27d149265434175a07c7c21c082ed177941e0d0a393ff7a48fbf3d6e1b88cb5fed0a8df4b852c2196a417b921d2b0a88ad5ea184884e396bd97716c0f78c58bcc9dbed5ac02f2f25e4d361dfd8b4f38e406f08cfbdfa497ce74d6db719bc28055a51a9381e40ca1f6f185b8b5dfb2605fe6729309127e40dae2122d106fca0e128b530eed81de862ccdc47737472e0aed2aac91c9eccaf963aa5a36dd368300fa9a788a59ed5b7b6be7a4709da547e92e76ae3052b5e406074cd203a3a66fd097c7ab228f28198ec7b59f1e87f053803c7171963387fc7187a7ed98d072c4b7138c379a7779d2dfd9bdcdc650ab3fd0c40a2a4585bd646f53f50d132e67cad92dd376795c3d302c1cadf326a5100e4f9841f69ee2ccc1f0ef7c25591a5a8a9cd2d3f5f1934830990edb137d60f2c163c23670bfe1ebe6e8ebc3300d9ad02b1bf361de1d63dc79d4992046fbf3d1b9c973908db5a1624646d0cb9bd335344acb7bef12a4304c851b6799be717303c0c53720fb7c121bb07aa06e21e6a35e3069dc07d6832a73bbaec2603523f2bf782025a7685499d7a46a850f42c231418bd34ae6a80f2be908baac53d25228265e0ced9202b38ff8a39c3c6f3ee3e8c492392af86b860804a09d9c98afdbbe01148a86a15fa83464dcd64588a8debe7949143dcbe5562a9e8a30906eeaf79f93492a59874541015c57f7ad6c42a17e2e13f45c94c5edc6755e5afeb27f16a1bbfe72e44cf46cd84b7bc7a76162cc727948dcfa4e80d4f73b0784c461b75e60265bc6fcb5663b6f083759e28e885c3afd0e187e29188e188126e3865b815ab2d0f530115fa489cd78b5da3734542b32a3233eea53339d69c18e79a0f2bf38915e62d66293637ed91855d4f578158a0729cf33e1c90e9af9e45c2fc7e6d63386f17a4aeb989659118388034f8c969c0aa30eddc8ea7d2d93b4219466862d2c9081d65e7899affc3c8548a753a68b6563de9e0e0fa4b0a7af9a63f2ca63692e2c2a87de7b6d7eb756cb9df9c929d9d6aa3c25c1b314038b1319117a64dbbcd6465826f69d0a88403194429af6217fc7874580d292ef2d64b15e151d0911bf12ed18d8a0070abeb99ccbd36a632e7ff1a574fad7d285b8d98199818862eb7acaabc7008382146f8889620ef6492e0a4fa58d3c326a26f5cdc26f7dedc4e782eeb3e7badb3738c48578eed8de41961b4b7f5e7e52f8cc280c5134af5b43be36931cb0c8d7b635143aaf4c04544a17fe456d3c217de231d055e2cb59cf023091a9d75fd767fea17b5a0115b2971b3843bb372f1a7379637f2acbdfb91159706dc17a28eef31faeaa807b114287e9cdd40fac4559334ebe4632572e8206a7a1c457f5626869a2cb893890de3b5431f43a4424e5f17bf28d697b4183de1656ea6dc1963653b7d3396cbf32ddc35693c91a363082d8b7131b80ecb4379cffed50be4e782edd1a1f8d6ce1021ddd4df8237a64d38ad91c4aea6de937671d2af63df4424cb2c19a599e700993426347882cf691fa71bd3e269a70cfa651f8cf4cb1f12fd1f04ec8b80047f1d06e5fb9fd55b56864aa4276dbf099f7e439229e86b44ee19492f5cf81209044e30f8b478ba6bb79226bc7c61ff491a8d5e9c80c1e92565199bd2d7b1dee43d5520d7e818c914c926f09f6e7383d700a9aff976159780248c77ee3f36e527208ddf3df4dc8e4c7a4c2825da5ffc5265ae2ff8a9940582d6d7becdcc5bde3f8c7371173a0364b288e35cf7b8815f4969a4356b36d66876b9810e0729a908b6fd7b2f83f1b40eeb16220141ba0414c7ca0b80fe66efc01e6c1f5b36743e2ad2bd795d4127ce3dba30e29da925de6c7a2c071649e53e0224575f9cabe6d32a1c17cad46f7dc3c602df41cdcc8e151d97eff200aab073122ce2ea3c29e699cd1df631915f3acf629ab6bbf954befc5e9e4baacfdafdf1b8265a118aaec5f614542f7393296c7019c5becf1c5c7e3afe79074b60f0d08f490324b49f6821d471173e13edb9ed2433fdf37fd69175c3b32cb05cd7919517426b67f391b007090fedcbc48f8191a8d92155467cc6233fd1a66daf70bb659e1cde00f1a3718dad090167387021020f450201075a96e74e5f3cd543c73d4b23f095437a57e623fe19502a3629343454a2bee55ddc54eadaa5451ed5f629c998b59a92b43d751c848589f8299433c1ede6b4f6a48a91ed0602b7a2d0f8181a082ee6c67934a725a88a1e0e8cd2e85aeeb17914f5b7508b0979ad9e633dce4d879f9677e2189b56a6f61d13598bf2ec98883a07f636303e3c1f1ff19a74fadffa29a603159728c0dc4d863fe251231e87d983f265b1c014860af04fd0d811133806e2d671e3242f899f11bdd2b7a6f50c23b720d6cea937c19d841349aa3ccc1294b09d52b6028840bfb9b8215d76043cf86612163b2a84399bd80c41e7483d2a9d4467e67f89d53a76bbe52bf74fab4b81152736416b8a01e10faca948a77b539cb60d7dc242108ef9ab8891a32c0c8f88dcaa099e78bd2d421d4f31a746d7a3b19fa00fb7ffb7b8bd91ad94749c1f46b1038b2c2269eb5963661106d095437fcfe94ac4c171e58ecea524cd6f0ad775c6caf12bba9a774eb9a8f45f9d871799cfddc3e89065d51b7f28dfaa8419ea299799247e34a40d3d63de2349c5e0cd04f314710e99879f847ad7fe7ecd6c576ee86576e75658ef216668fae360545b8f6cc0858da23bb11d78ed9b1d507bc0d23f137214ba6a10b93466d8edf37065f3fd12087c18f782fbbaac2f5f03f25ae24f2e3fc42a53f19929d68a26b8f29fd62c9e9a963c74421c0a4a8c3d1448e6938b7725e434b03a0f8ed40833492929bdc9e67dd2639554cc1937ecedc37f7d1942bf62cb5f828113732cf6af5a45f7e16aa44a41590af1e4211fc105a374c069a776a73c328c5f36d4575fa3bdd84dd3caf652e3e0a7109c4f79fd3410c36bfd8681bbd6ba604f1fe6a5751b97aaba0f68edea9859d57d0d29a78819b6193488d37a302c7b25200132367d4a8562755dd4712241e0b8324ef15b3c4cb55ed58550afa636c02b51422700a444c9d60ec35363e21959c8c007ef06bcb0d8f6225009fb6b5ac7a281f85ec5d6e7a084328f4e1cdf52183bac9d2307327f82f683f5602b3e27243877fe13d02ddff18831d4f5388d56f59ef87a47cab6e68ffe9bb87f209659efe181154e21dc2dcbefafa0258050adad8d466feb12e00b266d7c27081f966db2e69ed7c89fdb49678f428e2641c7872d839c378fa04f7a38144bd4af97757660f2d26f6911292bbe0a79ebe6098cad24cbc79269c1b578cf81b5d8f8416242e2ebbec7c78af91bae5ca5abc74d56e3d767ba02ea8ac1333ff84c3528c2f697b6ed8223c7ad3ef10f9861b36dc1ac0e5925522fe4b8bec5ea9956ec94c6beef314fa593d13906cb0c8907089b81ffc054f6259b368619ea3a0c7349cd094b117839a17bf531322bd30d5456ac92e5ace6cd1c69c47f78cd0ede7bb12746ccd2192846106c270c5da8f2145d7ae1e86c3d622357984be6d7f9ec79e95f58d522aede283825bf7a64cbf4a94a909c55a96365ae075ca46131f3aa4c372677e6753cf2c685b7d5eabc1f1b192b3372888c86816fd44a13860a310a710a2cfa18d6608f5fd8fc843fc77f0988d08a9a4fb9bdd74c24f992aee222c0bef92d959172d1724ac04b8853d3ad17715a0d9dd6315e6fd9a5232d10e208a96c84f02464fb8e01b142dd3866b4722c9a893b8d203bc7494c11d53e480a73ddca6aeba4c4337fa1b9e641c17357b0a40d2c25f1c0a37d59e6aea3afecce6966331bab3c97afc8e5102d964d3aec1eb560ba159d18d91fa742f6fdfb9f6088ed8a3aa9992c14c679cb49dcc9607b4ac5cf11d72a5bc5f9a69acb412853ef080287d2e3c1443842cf2d4f3fc140c65921337a8199be536b002b8aece03f5cb79a23c4f8e3c91b31886273046fbe00fc2cd82bd6ba88fd032ad16cd4cf15c4250131237907e921fa97f2b73e55bb1e77a67d8d8751f95067f1dfbe11912b9e4b04b73d0edb3ccbfd559de5ee268f24271d68cc9471924645a6fec06f2f8a2ee6a5a7895c9a9c01c5e912971b6c862f428d02c246535c9e29d8bfae0a4352ecfb9db6af7eded656dc0d890c85c06cc9732ecc1d4f14686e8669ecc349f909fdf67a5b755d609c2fa06aa0b9d6743702f66cc2c9f2ca6c113c6b2ef8a1da88b7ee9a01e6a5b200c5e9a2a0cd3f3ac5641e6303aeb1fd120d26c011fa60dc8521d94a7daba45bca34eaed8ef64e53d835ff3760346f696fff35745867027603903259be001a4dab0e9e679dd376dbcb479423c934c40cec9f981a5c00804f555b7c3da1dfd04d6ba52a2e8d7652a8195396d6ad12a748909216f5fb4099d85f469ac4b98ad7802a04f8f307b8d6e2396f3d996e36c866a9eb0f53247575ef22001e9ab299f880edd6e966640e8e8e29056cd36dd46e4f7bf0be12eacbabfd522ee73f91070e5a60d18b2b50bfd948dea75cc76fff20d087a6a220db6e6c1fe801eca7c94d62ee8cb9abee8123a5870dda4c8d6810ec4ae9bf1a913869e58bf4481fd4175303f37395e6efbb95b815b7c1a9504155212b25409aacab0b8b86e91a4d04acc46f74bf9b2f3d50fac3e76b80d7bb553c4e44e6b93a183af9e9be2a91cb71be2077018bd63225fb12e192ddf8c249fc1bd0c6f6325ea056af8337ba6d61b1fb900407ac688c6c614e903fbf0530a3101f9315e35b3dd31ed8d956ac8b23bacabad779b89f66bac94d2af98563629d8ca0190457846b21ee8b7260a1bf0fb79d58c6b155604f8af4b5ad42e909797fe0dfb689d867aef9aa4acd31984c3773492a7291315059e470f9fa63b9d871abfda48a48867b34fe8430c577394bb9917bda7bf871114bac1c1167468ccfa9a6a4819e73fb2bf78133fa40709f599ec8e953ebfca358c288d0320970933da8f6497652faf4b5aaef4a42d4c3c44de531351d6a35ff268a72d03b3f2d64e39179ff92f2e78f269b24f334feefb75bba2f958bc887ce8c38b378af68a3495b1cf20c74834e7ac44c2c5f43f633f86224c7319f46c57674f36bb87655eabfe2c0f423c502dcbed332dff200919ceffb93bd31de0ccba3912e2f95525728fa6cb358202ebd003bc4d6c5d6a6cec62cd187d9eed9fa6b1f8166c956977ca41550f8dc71e705004cfb1f79f8807590afe13a47945cc1ff7783b701ec46b23f8ef5af9f72e947c2ca5ad0a9137bbb63ed4589beb2c1e37ee6b154c8d367ded12ee13b40b92aae9bbbc433037cfb1ddd6304b80da721e022dc134da66793a1e623335185b5b66ab9ad9630dd944be88d4ec5e235853dda80e56341573482aca04e7760406b425b8314f2d2402ab4ab272f6c84405e935cbc1263d23b53418da40f701ff177868f8bfcc2f844ddfde37cc7281ea11319253b173e280ff3f4d04992c48851932ecf192acb851207d6acbcd00e605b10d7287304eefa7ddc0ae5854984635eb35271f15006548b624524c72cba0326087e2e51dcffe7adb9bd80a7c00f72ae3016f78ac3723f60470857f3f6cf71956919329fcc07c836876e9db5ec8604b00d39be9081e6ed552480dffd531cab5dd660836056c30766961dc75b91f52e5ac12f59d9f97b0b78c57bf28871bceb54b42fc6f672fc9d3a0de427d261a751339140e6626d36b92dfa58b3b744cfd3a1d2c9529ba9ead9da8feb52c50b0e73254783898bf659c88ff652b5769d99b6280f22a3c2370077a97fa00df4cfc0ae6fd0fcf89948668c768d72a7eaf7803273b8453a4234ed878eecb7ff382f58246476a2805d851f00dd5a324517658a1a0b4940262cccb035f7305537a57022e9d56df98c8f63334e7f0d7fe78a77221525c094f23aa02e1ad151889cfed617e79985d94ab8b81d53ebdc71325593e5ff67429f2c1870a0b529abbbee382806421fec0c24a43efdce5a7306a05fba27e4e9a07b6a2946e70c093f82070a7420466b50f1347a7044c75fe9909a73f12cbabb3709bec0ce34dfe21347623dfd4e488feac30dd558adb676bc0ad10f8351e514354a5c0dfaacd5dce7f21c1e2e3f1e2e2576b622eab6032fb6d6bba5ccac9b75bddf75d79777ed65f533dcc8a8e99e84d988bd35f4c2029c9bec61126ab9de6565658f0a2c4d48e8dc6f8025158021301fa26cb7aa982b3e2f571fcc4b014086e48332ce15cf00702b46add0575ba8bfc3388c1c32280f5879627ccba2b46dabc2c2e6a9167f526fe567c21d5e236dafd8fd6130b7ea3e0fefe8a9006f20d45ed2b32bba590473fe9b6c2e36f91e0d4e5360ba95c05bdfd93204a3dc1f6ea6c826c1ecfc1b317b3a468d5615bb76fda74c9872b2f322c2192b45d8b16010b282f184668364263ea8e465c892549ea980e5295fec64fe8f96df52af5b5262cfb76123ebb30e84dd7531508ac668505b7c45c84bc8dcdb4c839cd3b8f12b1b75c4ce6126b647080838997b84b1c2fc3c7e057f7e35466bb3336dee055fe3f643d95243409663c91db6e6852bf0a0b07d343255f0536e09a74e76f6c8f3a6c9667f905a17a3ef480d2b45bc032b615705fe7ccb1831e226e28e9117dc29a6295fe44c2cabb7f83a5f7356654056a635a8a15ced49fd97a1720660292a48e698c567007b6c554c249ff27661b9a111fd6891ee60232a142c1059c1888a10e92dc793fd07a9bc7d43c897b859e0dac4e6f4a22c6c5ee5c758ea9359c6f2817493a1c5f7eb4ca6b9a95cfe4d749989dca09162b5071ab5bb3445a27890fadee9cda827a44c41a6732b53fe4b35054d15ba9189de44cb1547c657ac7b552048de2d3242946a1fc46d214a3406b3cb3a67d373d3bfba6866bc46867726b691afe836595ac573a8e48c90db57e83c555d7eb5657fa2c7539bf1ec648487172bc0aaded1e18aaff5aed8a7d76b4f1e2884f1a9a49329ec469f0ea0bee6d2e66203f7112e9207bc55b05ea450cd44ec1a05c37782e2596031a27ecf71c0c80a717e07b8324bd28d26f7d8e08239dff5075ea88aec2c243605c834e9ad3a7a55d80271c7e614c9fe2512d5bd3b739a7c0cdfbb378482f0524ff9ade20d873d3fc18004b0dbfa8ce57f5ac4dba8dc08b34e3a34929996d2f613a93617980cc19da9e42dc5c5864377499713fa59c6e623201c39926eabc3e82e6ca63b00b1b13348ac7c1707df6ab9e758f478f3c3122475bdc2635a5df48a68c6dc540322f755564be939fbe476ba128a2215fe6b43473bd32e4f9d8f7611aa7316593704677e5db127677ff33fb0d9577e6d6da42f687ca9b7e94d23bed50dc60e4058ff8a42553d0aa064d0513ba0fb06d91833cf816c198553af82ef0818c423589bf4be46122d2e8be7750fbf2fff173849f442d5262072c8a95e36d62f89f29a75635567537d1d444fa8ee4dcda6b67e64ab69b88e59787a8e041042ebe30b08608fd18a2ba2818cc298933a9f150fd86e663b9f04b9110a7ea40a8ba2a707641a07904422f63a6ebe8d183c9cd05c01bef25f1a572041a0becccd1101e8a4f100104980344c44cd4207a98b18ab5b2138c4e40ca04f2ba91468d76bdd9fecf3a1103c3a2022352589155e10cf71dcdee8abd479f7982522f1025852e2dd42b56a41711230bdfcd3bcc9f413ac320e48aab73cf505a7a123ac89eaeed307408050a9e1da97bda421fee39ec93a50f377efee332e4c99f59bbcf4fe380d5c04bd9c781f3be6d9211e014700a557ba3e9209f20590d0e3787a38868f0ab5c7f8c9125594af54511da8a897892a006bf701e5cb2f9d9278966db1966baa85724a2f26ade6bb3137d8e62013220e3b9a5fa2a12dac28f253f77c35be7c85fbbc2f337598c9d82c714e83594c238126fa6dc99fc11433bc8de87f4d8aebb9d878c9465458fdf5cd4627bf93b75e04e60e0da7ebad122ade8fcf20947f7d304a4ffff8f48d19064b52246a3c0698acfafc793b6523cd073a7a0b6d067f3a587bfd2791960d0a0580e546e44b74834667d889df212efc8314dce6f4c6908d5ca5a685f4866fa483f992a0af5b3e4b78d4107c30e00a0c432439a7a0bd857c407163b08382d6aa8dd14551f575888ffc5f9e8759566900c2ac108c3206b37710f1729f66f2857c5e716d6e1de833914a4adbd214acfad82bd97cd0db9d70b58ca1a74fcccc0161148a0723742d7f9058accb70eb6f67138d8be83e8a72d49d038d6252ca12c6d0deef55ceed14fff97096210b1b967abe8e452efb644802dabe4274b878cb5aacfec629b9a647d9000f967168a0e837d64ab19f9ecc22dc28fc7544379ab0eb64eb5e2cd60ebb813b0fc4445eb1b408f3457aa83e0e69316673d55a3c0c3752553f020c974b2fb4911819ad49d5072a3351c85c88fd23eb0ff5e975fee8a2d02ee57ecc41d9aaabe50d87d7af15f631bc5ee2f7dac2707df28ce23ec0446a9b142262fbb218fc349211632eacdddf5da455e4f17f7f34352bce23ed0957a8ac3cd1a3c73b7ef5789dff11ea413030a32daff82f7dc7f31bb6e5df59a3083066ae46eb95359eca24faba44908da632bf718c022e1ec814090117802b80be58e8905142f3bab44eaa23fbb34fecdcc8f73faa9e5238ae0c8c70a3be89fc15df33c4d51466f6c6439af9311494ee5864f7e0a6cfd1fe310b92b0eecd4eee260b094d998219ea3e2efc80379cd08bb9ddbe748cacfea7c0e28c3ac66409cecef257edcf01082ab9417b22b6df62dcfc27ab3408f82ec69cfa9a2dea336313baf33cc837f1a73ea1bc4aa25f6e8fa57a27d3272fb035a82c75ccad263b9af3a8a1047787655adf122ffc5a0677dce757f16bdc927a597ffe5c7551ff449458c0f4685555be8e2d1715fa7b6f60ed3af6e9da9d3fd2bbc30a54fb7241ce5e99d6b318e935ba82b61dea272d942e4281c32697bd7d1a876ba5c8df610345f3914fe5025f2642823d800e66cfac45b03b9d79618d5850700ee8ef5115822d6f30443a6822a298b198fa0985b93b43d2386950c0d5585bce29fe5817c8217f33a6b0359016a7ab015403941e496e5569232edc9842ceec15a637b1f238f1601043b200ad9c911cd47fbeea7eb116ad1b418da4480c99250c39e9c6d0628a43a0102bf996d9700de3681c69d8fcde8a11ccac2769728b7f714724c1aba859200dcaeaa9a2aad88d79a2643ef171e06b4feae71bf312655b487c00b1aa87329acb634dcc6add349a9fce4a14f41c6a2ee24bd032888195a2d0c777456384d58f5c19a57970da0df9bbfdd11d5d0a07120b192f4565ab239ba39f923a1600449a0a9d080e280799d143bec3900e9a65afb6db7a2c6916983788ca3f7035f7f15d87636ba9a01cdc46bc03dcc78a64edbc39ad1fe8a2ca2abbd6179bccd9d61e2e54c139a750904a59b18b3d83e38641c479c1c83b2c6ec151f878495ffac4cdfdb177bdc7f43614560f4acb52fcab2c8ad915f6e46a79e8c8bbe1f716113eb9719799463d133cd19d913bcb619f7b88ce05403a749fa47f8f9fafb2fd62a5c55bfbd7df4757182eff557107f59abee7e00769f37254c421ebd11ee9ddc57a6c3b649ea0848d0459dd60ff2562eaa4d87da4fe49e8e0eeb370eca2f8de53f61b1b54cfbe5bc8951f1f523de9d1bdf809401ff04ae68e28f3d9542ba40a12765bc0db1c9d2755691e90edfa86ea646c4adff3b346c8b2ac8bacbe03584407770ce02ccc7b4c439d1559488d0cc85016bb3d53d9f911b861e3c921d6097d9e4cb4f8345996c475fe38730477cf0652d0850a613fec200677e864ca1d432d7ba665eef0bfb08b6df50509f57357648f8b5600754582397afa25298c460c24e8178fc090069e0f64767ad64768fbc0aef443367ca73ef9adbff9c0a22ae2e461b6a710a256a46f51ac11ffb636b2e5187d35b98e4cdd06b5452d59746cde57ed0edd1cd8cba3b135c2eeb504ac9bb24f6ce4c7091215f49eb0800a726c1dc94e1f1068f8c67e424d9e128a93c6a2c281d3d9cdccc5659aa1cd448e4682f33a6d78fe4830fb89dd0d97ddd9bf162de4a287e3075903522f2871d90880c9a1da615b2bd9c0df4b74112d9a59650865861489607e01e0f60a61c15ecb5adfee930b15427953b00c57ce24ab4adb10adc14e6cbb824f2bb7df738a2f9ad40fb3a91941dbe79b4a777089f614bf5382bf72a58b10863fd3dbd88e7bd1443044763d8500c28c0a4c582ae64ce2bca41e6abf21e18f169a5ac257f207aaa6a828bcb378f6fe7d112117a6f8612d3663dc96f51d600f5dbb4f751b727ca1ecdf7414f47e2f81a49aa3e64ec215dc7a58d6b69535c661415d58e87bb42fb6eaee1c92535c7872d33ec06803b34b1162e58a0de9b2fb0c8d4d07de263ee4c50bb2d2547bb7a012f20f1022f73537ecd507cb0eba761857cfae73de8dc4aaec12ff5919a800184011c86ec6026cbade4b2fb47dabe6120c9de871cfb08489c8d0e6ff74f45d81fa250c2e0cdaedb02ac0cad8683268d1b53fccb3fafc7776ae9d6296cc42b0d4c45218117b1ded154bf6ab01c84e0a8bc38f3a904ae9eac35d915840d7b79e2a54736c01e3fb0d6b5b3d0157c43263566f3a3ffda6de6da4b90a3365e7692ef4d80dcb290b63453e0e058e1f0e22f0c09152abc8057b8edc6bfb7530fcb6dbb89fce0fe76e724991dd8d5040465d0efc6db2c4ece8b1c6b7c2ca5e9e3a7824b82842ee3223d2e491f3500d488d4c5e992e481f07830c258a7b3d764a7fbee52b999af13ae71dde735cf4ed1454db862c7bc22b05cb99efaf218328ba5ebc754f8e18b47262134a70fdae4ca3357b1ac88cf66c2d34d9927499ab6aa46e85c499a5d920b5c0f18b8e4e64283c2dd175455af6c5e4ed50e17ac6bc1e5cc551e8a026e4b01acc7843e3f64e7f23a74433ea4b5230c4e171caa4a910e13cc907f9497bec86d4d302438b10bdc03f0c874897b23f6a0d47d6e1b845692722e3dedc16d29e03f0e9aaa557ded4a4b02edcb5702aa4e1b7cd95ecfef6aa014a8f58ab07748f78399ac0f4f5d84a95991ac2672410e7dc0971c91659daf0548d33921291439db563c556ff3623a01b949bdd4e251a796be03fd65a328add596ec30b0dabac29c593f89e5f45a587be038cdd6fad79d94be3f78e0d356f616cf373b2bf1fa513206e28272227d893405c64526ea9785da0b176681066091b88b2b201e07b671badd7c9200b73828c8d4479043e95111de9dfc9747ee206e1dae8bc7793bbbb5381697992c73791fc528e6a1cf528d4904ad0601ef92401ac1fb883bbe3bd943191fbc6872343dcae130dc6ea9e9106147bd92c6836bd8416d6a0c0e12268cd3fd495ed78d37738859b1f72b16f6d1e6c5c54d1ef682e8bef0f3ec22480c0d5f910c396ad2a412e3aa90e2c1eb96162f5b31ab37632b5e19dd4642d096af8979735179b58d43eb7dc445fdad71362fd0fc4090a50c0f302559ff670b74b333f96132a2895955c2bf487653642c81d4be847f06998e73936fa05fcd5cb0ce007858f1d52a4204289dddfcedc6a2cd87fdaa7ec6bad77d564f098ae3529ef0f3cb50de762fbb5b5c90f156d71f05da6677a4100b70380a3aa865ce6f5d749fb4b91b650f45a5d791beb5172b7c20e8a071c6bab1936ce2a79becc5f7d0eb942726ab9450cc69061446f06574e621e7291a31eeccc7ce94120dad9f8a6161f55b687f2363435956853013be3f8b9194587911ae8571c21a3e18b70129caf6f97175922a0f7419f348b53fe57e41818631fdaa5a8098714960bcbe7fa4b2b5b05f7aba4b21b01ae76c3c599a54cc0dd4a20c24af07cd1e5b31046e0e91f8aa000b0b0266eb907a69818add68d0c72be0cd51bc4457211ed751024314ec812dbb77adbdffbc543539fe6a946cb5707a5b68d0494f8fbdefecc3d67291cd57d89dd2f20d14258f503a8f3fcd31794093041099faadff2e81d3382f221c8d56a2ff66d4203848db63b73086f4556a8f5a0d67535196f0eadaf8b2c73f48d6ad540949762793705d6853c5697c830ecd6c041834ee13d970c4a3ff6daaa182290c26e52dde7bdd57ba559785dc90d6ad69901f1148d5f950eae88f725fd0aac309c8a8a63916aff85308c2a8470855b1f606a9f0c9b6454d7e57f096030f5823f3784ec1f524f4437c273c406f11a2b742f82e6839719c6b78537f8b7b081b9c90076fa4e2a80ca428bc9ef14ccfd465657c838f80a03acadc0d4ddd9ed569e2ef2945fea908ec9f527418511c94857e42d9c985ecd76fda68981967b6f77e6d668e7aaea51bada286e813855a05d89308165ec05fa4981f9e53c980e9361afb5a103ddb7a2222ddce35549e77b41d4b8b9f39ba85466db8feb124558598494ec4ce04c79bec9b62297f05570778ca4c946c20358ef7abe8d87e34e1446f6dda12e7d950270f177b29812eb0078303a1c6ebeff07fa60b511285aa44bd0ae36d6df862721c7dd3aa68ef23f73b612f48c659f4ff9ef4c95869949207993e602e0a800b4759225e10a81606b2ef0551336505f61c04f4b276d2572ebd8f38a2c9a528d678014c4041cfffc36e0211d851685d9f50966750863421977993201b5cacfd0ff982278006ba7de1bc3c2973a2ab20a66c8ca637a646dece85b7cfdcfcea4c10c6452e16a635d756afb63af0b9d1f4171e8a4743ab0f642181a224dd0a757af751cd68ffecf9e056b85575761a538d5f11073c03aed94ea9de46643eb829e380bcd95c77a7e994acd95da8fdfd60c371992b957b343f943cec6828f8558fe395cf279379eb2f6ba5a9c0100e1f334a530cf063a28741bcfdfad34b40fe807e93f55328624003f0e0dcae1fbd25056c0bb76f8bafd20f6f1abc7b5ad282170e050d2c5d48dadc03d076f2786119e4a5f78d9972a375d20f56e710b7ccc7a30bf24c9747b096a5f0d40707ad6288ea7aed2c5b38f128c753b159a32a90b68908e3d414a0471cc71a9c1f120b92160479027cb5e7fa71d35c09ab2453332fef1622e00f7f33d9f1f84c662046e3c431d7c85c9b98b54528f9d0a9a50d881b1e9b26a9cdbe64895aec4c3bc0082e15a841e95ed378522a4192ebe220f113900ea681c96feb017ba4ec2c9c5489b1dcb9bab097ac6e5de2470f5753101b6b14b03b9d37f19189a582fd7fbbf0922f47b884d302324f43f1195074fc57b581e54d4d7ee28656e09ae5b9c8be6ba986332484831c09a07029068d71b8fa6c02673a493d2b0da7b78d398efda0b90f34add70239913a2f2cf5fff9ec872b2d0457a6ff7692088153968e281fe90c8e731df22c380ffa801d2a6c0d1d6789ff28210dd442c8ac6c95268848205faa98c5561b2fa8d57127a3c3341c81ca9c27e226351dfe62c43a05b95ad5fdb97f73861c4a78d996f08a5d3236cff23c9a2bb0e1f6d1340a74c4a7ad5feea4989a8866f90c0d116b97908e8b7e66d6236af0106c03d7f92026a1b4ef9f7dab6543d907b7971424c72add8cde60b3a22dea3eaa8b210ea6face485f9f690a5a27cdfce27c378c9f9968635b07fbd389b78c1cff356b40a56eb3addba40dba4ee04e1b4759f68e821bbe5259ffe888955c477a28455e2efe4b10ae087dc642e219f84b28290c943489dc221c9c7326475150491da92bf3067ce5adc81389e401bd19ffb9f34b80ce7623c2a6092ceabe6e28e663df3ae1fea681bf49a6d9336a3689062bad229dfd226f0e95b3c163ebbb3d0e8cb7a10bdde9cbc9dd2c9ee193867271e428fc2032625495e7778c9bcf51426ddbae4a7ef15d7ad86fa5ed2627017aa20174f2f592913b665ec13fba0b6060990716165b35480eadd37fd528869b7e103d3e3dedbf6db15ebc9a87ae519a23ddd697074ca9e9179cb6e8571ad9e123dd461d90a98f070bcbc6aedb4ab24b3304cee7be5c482897bbfa7e23d7ad9ff379ee9d693827d7362613490d22366596770176534cd140fe58fe84616a1293e7bb1460c5b5eab04b9c38b871a2ba33a21c538c07415e86b494267e4cad96800865dc757fb003adfdbb14219e94c59a8582036251e14bcaa2c7b91669d3680b04ca3c0277a4b4b7b9b7f302e355d457a98d8e077dca2238ddfc25a5c4ca263afcd59207ef1fd63189312c539145dc414d4caffe17eccad5de67a4345053359e648c2819de2bff9de439b494d7507ad58bcfbceee7331911e7a79af1bd4d1f6f0c7971afb9bc8b2dbe8292dfd1711136253eaa64898dc893e16de9208b6e225e1f17a89fcb718b3cea17e69b6dd86dc805112e2cc1c25cf2e4c574602aaeae65c8d22a72ac87dfcaa8e6398bb67f9650ffe84ab850d213b47b3481552e956df57e195f206e353b4ca25c4a4888a12d1549f6bee4d8ed454fcbbac7755582fa6b893863137ee2e52b0be0c3dd286a31098579b8db95e5926b537e29749ffa612f4cd8d1a3600c2bf41e2f698c2f3ad689e692a5b5162c47eef428a32b31b6011061fbddaa6a874df9e3d150de7ac30ccd427c0a57b3b771bec8140f10391b52fb9a5ba649c1be3d7fc1ef4749f296d5d0a977b255ba8cf1c9ecbd6ea8f441754b8127783e039d6828f9221e5911f0bd69bf9190e49133028032ada2cd31213d5d2f23115ecaa8f57079b9c52d5c703994feaed844d7bc57f6b399b185c50e29a5b0d55580c80f2fc0825b0fa4ac703bdf9372824bf15fd9d5bccc3577f0b27955592c0d75271d8403f0273567b9715cb8d9ba58d6d2dc488ce99310d373ce0c80aa36c75ce73f73f285a8686275ed033f17e6d5bdc362a83b356acfe90fd60ec32e8c84516a726a9c792f6d482c827aa363723964ede2b9b4121ff9ffa9637ce8334de7c200c3f4ab53e3a4d88228238a94c6199d5c3507b14e3a267f306ed3c162053a2b684443ef60c6515ce040f24adc3bdbd32353ec52f3d3950f5e9fd5135137333a716b3966e39c2920fc56c640b2ac02438419a192b90a628a36164bddf1c5129f4ed9f1ff9d4859a4ab9054c4f870355f2d7152677daacbd89ed62a7afe2c58a9c24b0c0809833818e26af853f1702e3ad156b1a1d4943c859757df46b45422429ebae4b504dbb330b69da30f10f0ea9a6d747c9d67820a8530b6235209ceb9c8c096d3b42eccb6781f7d729930533cf5dc82ab00a9d5506561b59a3a5fad014c7e785be03f4a81f1cc4b0dc247b04dde771d96c3eade4d2056020ced2a66ad910962bb034d2c0928d9154d91be914229c79a4cf75bf292af46cd0791f1810cd9f5b76c3fe083f525014f77c711b7ef9091dc0a87c25e5b6c829ab5acb7f7775c083fc28c122dc7a4d5707342638f19c1aba0cf68d17e37612a2a21a231901cfec710a6c43ed5b9f376814410ab2d33cccdc57d08dd5b4c8f84f5154cbeb92cba1da39ca85332acb2b7be158dd0884086bd888390d3946a529ac8bab2c4d69bc06eda1564a4e4733565b3726b14fafe6f7f97c56929236814c7327c62c8d1db4284741f323278e18a463db640951a8169d33e594332703eadac16be8834f225d4412b7fb88391b09961d3a146628052a7cac8af2f317da956b14b6e8f0714d3038d0c44916d7bc2eb2103d313fd393cf627086a94d55b7c6f9f3d39a07d40b43135b8c49aaa54f007b1270fa9207582aa5934eed1a2821717716e456a6749a995650e1e75ccc5247f7a60125fac726a82a666f36be189d589abb633cce64200b1ba96947729b0e289fc746f8eaca65009e8268a185bdd5642f16f76165ad8e698230c97b2a5fa50182d5b5874ea9431fb93764947db8dcb569d27c47d4ba2993ed477c78f7cdd82ae358a5166cdf13e1a162b9a357386443643a7e7ea513093eb37543d760de51d83768ae451dd04ca8882e1d3d64915f3b2b19b107bf51a73b53e29b4835cec16065864e95f61fcbf0ac62ef736c555ab1e819c11ad6200ff5e766a8d7b2f72784cb97ca620691d4a23702ecba4d1bbacfd1fe167ecd558962b96b44dc3a4fa9486cd46fb14102603659944f16e835e6510b8a229f7a16021dbb4f6310a68ccbd325d9d10531dae3ee0d91f783eb6773dcaa14e0df967076cb675dcbda1c2874b06a9f2b81b5c5fce13164f3bb65f0b6fee6267f65dc42aada71c7c4e3982c4b0f5a3baa371ac32584407f613ad6a57ba85da280504d79a5dc4f5b0444b2ab8837494d860bb6be037fe24f55cb068fd8518d06d1e13533ff47076a9d12eb2fbcbca6bdf06fb7cf4ad2e85d1211bf13765ee8a3dee8e4becf05e11103e9b9da9bfc449f970cb43eb865cdac8ced2ca2571f6906f9c6636fd5326cafce1373c1da2439191eae8ff6750eda9bd8aaba86af7b11ad6cc6fdfd899d9e347fd5e674eafe170115b20b403dfae9fbaf5883277f9ccccec0805f454942db1c9f5c8bc0bc88d7c58f46905ceb5658f475ed775eaf3d45e982bcae6926d0574d6ae9ca7ffb0ba2f6e1e161de2457914fb86ebc2e055f53946b592b517ba2da7a952a9b819c5e42583b02c177e06a53f7437b06e07a209a848e7a6dd5d18cedc0a28cf2793aa200352b8eb68a5307f9d907160ade7083d3a1778decca5da5337b64e1eefbaac7e5653bd71fabf6437e7348457926a3525d6c8e6a21958ab3d42aa4ee80f52efa2cb447aeea8059ce52bdf2eb37cea0b9077b3d98c90be15576b1132e23a8f985178547c13a350684576824ec1331430d57ce1b459c6f47b9fcd771c46486a1f3290f47f37ce11a656d3297a1df9cbfaa7a897ee84982575f8ca944fe146a17b9d42f9669a5a8faa47ddb15f93cc045d331df0ed2c4f27fe87be1b2dccea120dc5218d74772ab352fbce13fff790ee3b709f341c21360e24b59ec4c402ff7d6273f15b7fab79892435f63c49d21b6c8f0778c86070bd5acf0ece94412ad12d4ba1fc2df1481608833d57837cc5498f8d64548c439a6ae4a60c1743cda02fbacca945a97f95fc014250eb69d82a7edb90d0c6b482be429df361cb793635fc06ea7e4756eed91a82cc753c17098726fafa49c9e54ee00311f66bd17e6d6575e82e97e645560445a3fe467ebf7d80daf2f554a2e8b1209ff517d03997a4a001f2db180e594c45273ec0a45aa69d27adab2e9311f9e6e69ece2bd5a74152eecce2623d37bb19223d514d427be343716058217502d9e9720f0745bbf43b89cf811136ee840e89a088dd5cccc3f6e9912d5de6344c5ed34ee36176d1dd5d6fbfe8482557ad25efd03ed1e87fb48a8c86c31d2ff73fbe116bf9fa91f3935a4342ca8683489217744c4da408b823bd5cd8d49a75ed7b42403525ab69c536caffbcb9c4a49dc7560dffc83ae587b9c5084da494fa14e5aab0cc59611b4c7fad9ed4d1caa9a3752637586a37e874d95a9da2c17087b4fa8ea63e9623057cd5905298e6b85a91c8694782507096e5048f32fe62bad7450a2976bc43b935f866568428959745b188449bcc04be251da272a8c07f82bd6c444c72042b842b35ec4746328c8d8aebec4fa2acc991c8659665feb2ebd17ac55f1ef4724dd372e51b9352a2ce5cae236f49331a4243e6c2c40513462c8da5470a9c44b8f06331eac77bae1363d9d33574040685d046f16660b3e1c10d4c1b08053aa19a1652ece75ae9a4f4c83bb82daa0f3e37d882fd3e8e66e120aa48fece592a7368c2c171fe4bc98ebe8da48de2dded4597bba4d13506bb56b7320fb754b683659736051b32751e3dc70bd65d30e9a4f980dc2a5637cdbe604443701d2d82ca0cc80cc972fc5c9c4395ea729b2751456342c49ecad7289ea7d110a0b3e37a4be3be1f20ab19a4c096e56c256a84c1ae318dcd6c93fb3bd03247cfdecde8ac3827640a97e917935930ba50a6ba8db35374c5fb697c8bb4543c55d6852c4f4fd9bdce32a88a4c3725fa5371df4a1f487aa70c51142df12348ab98af6ea31e614523c76abc7c1e05fdabec9ff14d14393fd6fce4a789b81f3e1f8839e4b5f5359039b80b55a58630d8a8b54e2d4e6e45ac37b6e4f5ad2ab9cfa0ad1d49c6c546934e53341984f6b78ff6f1f8da2e81b38285ac35ada261c25f150d4dce6828fe6dc7c04cd91094de0ac70ce7250420fd5510e4424fa7a45c82d69f1be54807bf4b8f6c3dc3576ef67641afb95e3cf1013ca8914dae33cbde64a8fa375ad6865016d4ef9cf0e3b7b0d3123d86b1c33df05f012d832bcac24040e92c85f47dc15c9eb69a35a24890cd62e7edf6de51f4b439ef133b2e39091f07e57b492134c1f4145846208ec37e6d09852c8940685ee610a604e86e007cb34b9e96dc738792bf221e715d6addb1475a950b563adbe95889b3b7d22245540015372fb306c37e14aa9c138cb8315ae2152bf0c566c854511258f6a3ee211b97f7bde9779599aab15c531f72e346eebedca1e69ae2312a7436e6a1aa9da3383bf6a208ae0a0b3f52ba7a7ecb0c42822c54801bad72620877087da7bed5b432c87e73b6a6f3ed51926e2b0a62aaeeb65dda723b61f4e880d9b8c440d96087d4a7395702b114141901f33874c7721926a98ee3765ba92b3d5671b0b537b62a51208fed97a4d2764eb3f3ff747023191b0badbac04e3592d6701c7642cbb994b6a7a4567ac376051beea3162d88f78e7659c89fb74c4357e7a7ae134ccb5ce09caa341580281798527ce0c8e75f96e66a19e59c9b2cd3012e07e3a2f1c5dad06148cd462b7d324bc201c09e0407363bcb662c1700a1334fb257313c9cc52b0f85330d6f2f7b5ba84ce8a2b370eeee3a5506c0c6aea8c663f30e8494ee851885ecd0f995fa1fa7c5e11ab612fa4398f4d709df1729f7a5aed60c84135960ccd20452d4ec8456aa250c7cc96cf8ca916a510505f081cd9678037d1445f5e9796735492bb2bcf8a82307786f48d75c013440fbfb42d1f9f5385a3224f0a3a7b16de13fd1a6f8a0019e6920cf151212a0f03a5582cb66d84822908926c1d83711faa29ce45905f71f12326ca88d603b830dce3bfc5ba47091d90008c8ffc84df635d797fc6c22da7296408b6ddcca701bb37e87e855c5cdb5f9377a2e31482a2e1c513a9cb315b7ed757a1e85e49a09c6708ab43487ef44e8273139e756593d73a87a939018a6cc96b90afa1c003bfdafd0dd6a7e50ffe9453194d889c26cf9ed893e9fe4cc2f535b40fcd17edc1d630c54217eaef3f1f3c519449fa6fba7709f04171d977e495ad833b9f59ab3817f240ffec712e6210a407f43d9ce140ddf34e936d9e755d4f20af26ad19fcf01638a89bf235aae03ff479a7f20cd3a137576e81b97e9750af3c55daada3912258dd85d16c41ced21bba70875b8e017787218f8e0139b41ad9ba60c4741ad7c4af4fa8df8d07e108f2b7671ed4230e426feb11e41c133c4b7ace7adab7ddfa856ae354a6c33ba03e036c20bd70b514dd563931d0f8a8f9c1d0c1e3e286ae5fe80ab3ea636fe65023e2dc59d422b02d2f75525e3b725328b55b9aa8d8ac282636cf0d8c4e22a974bb296ba5ed6e7df794c032518d53f9b1ffaba48f64dd9dbd50f2286583031e1c7601aad444dd8a9628c3ab18a37f04299da9c169d01d5b1e8d7871b69fa452b4460c2d7262a7da436a665f032e05e71767a27dfe2e14b464c722114f1547b76d6c6952e02e53ed95a997774c5dc2eef15393b2c32bb2a4bfe74eea31dc883b8f42d5ad21c0bf83316c9a7140a170eb45f74a0430f4c81136c7d1d06ffe4fb32d0445245011c66f2a467c669415ee1a9cf3554a1186880b7f6b0a09daabd0f92559b047f0c9d809d34ac9909268c7ae3cbb308864e22c336ae2014aaa78af516413c840690f66eda275309439be0350eec0d9f89dd9958588fac96eb8c74bc69a8cca18bf34694ccd41594aa1ac0048f8dbb16462d93407bcd79016e396c6b41738ec8c22b44b7121a1a3a9c6e73f9275444aec80f2c90855e4b2d21a294c95fc4a292c2f54dbe34488885a437d8239a609c5ac6c7c472854b9569155aeac9656c1269b261efcbd623c16106d154f25f2ff10f974bc2f202efa16be8063f91731c7649150fed9028db097c356d199f055b480da100a60085a405be2bc8edca0c75b428d55237c074eea3c1bb11d4a2e6dd9e4acf87002ceda1147fd5aaf21c53187609380ccb94ea246073f809e8d5f923bded3aecfcd9f6bc706173b99e57da4c0d458c8b9a1922228d6afd4f7504cc70c216a5c8161c7099cdaeb7a42ca7cbcefb8ba5fd0a843686a1c1825f18d793d59f85c7b15825b473b7702fe55b579ff9993db56465c80fa06b7cf9c3b4a7af2fa24a984681e81bc69ecb59fdc13f9751069c2bf6661d270967fdad8e115eb422afe2b201c71e6d0267e9d64fa59c06bfc1131e34fe1770724955dd9390a00af87d74ea6b1aa260de33ebe144630f22bfd936da2d2c350bdb7f5df39e212acc0af693c9e34bbada4f8e658d5ae924d4ea8b3db391f1fe4445b231134be0963f101d1d128af60c132c299983f6c4c98281ff99957aa7bfa849fad178bc598ffca1091ce241f66ec7d302e055795438bbdc30df5a2cad195deaec66ab6ece06d60e54d4c9b3209f401abd549bda3f2f5d1a83aa2029f549309220af9e9a192d26097b842e162fba6c36540fdf772f9063f934726d7035d493ca4152825cd203b28a0bbf6d7e072bf7873060e7e9b5c7e09ec702c385a0ed71b0fa8999adeb079b414abac668d308ed9686ffb6fffbc10a2f62eed2c18379e7aae7982ed593a11ed1535b81c82ad9e3f2c840f4cabf5db3f5e8b0bbdd70d69c6e16be34bb8d58cff162b79ad27db3b59bdd1eb5377188e8da6a7d7d72da882dcf3bcbbd89481733cc8d63884f166f1498fa3f1ab5e171a016b2b4d87a41c6610eee4c85642d5bfb98978a779f3cb25cd60bb001215b27e37218254f16463af4f5c5d95627fa7fa018150eaef607cb5a885d120343eab002a57f7184c441940539f90333a9a98c0ad42da89ee4003015bf89d7c68a1be06a759324ea37b18856b5bf917ab09917a087f4f766e16c2010ba34c7ac6b32cc70d0ed6efb0498ec15995a84885d901e4216d111d4997bd3e3ad6c10d5dcaa9cb7949177d4f235ebf7703feefffc9f9e82e8cc1fc71eae6fc0da9eacabd987e186820e09908ae3cc044d37fc24a44483fbb87f45b09a040628f4015269b781dd7b145da9f31bc7f37e1aa27b686a8b2be27c8017b5d8735edd57f06ee690a5867b9edb6826b807d13aaae763f87b34791d4ff9d55e83c2981a1bc96d1d2ef9d86a073b7cbceda94fdd121159feeb70f6c3f75c7ae17a24defd244b865fef05152d8d681dc2afaf1f39abcbea9f1a3f0c59e2bd10dbce2dd2a9d6220e4e1d4a1cf144d19e197d74bcc913f85f2a4286cde57566fa3048d2651062639dc7092acb92b12e7bd2889ed4b661e2eb7aa001c2acee38d90b656da591b24bb3bedcaab550d73ca227dabc5d95a7f8ea38dd7bfa45b0f017903270fc7559a81034c6d69bfd0ed95f613500441fd3268c8d456f1b567ec6ba6fed2c65e3e8a8521851f52d17a2304bfd7bd140c3444b7f427cfaccf109a90d0de06e31298473bc3252b1e60a6aa5717f03d59a122e7f5f5916ce6bea17f456dd2a8149eef52c81f4d128202c49b73ee961f4938b1af55564efed15f562bbad8ce495dc74d2571e7ace1f0a14b72241aae8f4ca3a3d884a989bc480eee740883f7cec81fb949a0ca6ddceb28ae7332b59ccc8ee3c3fd8f929ae2986bdb66a5aa002e056831af20124fece31ed6c1704565d0d834ecc516ac1027ba5f7b3ae8947f0bd7591a59a7878344661465003a56b50017e4cb85b7bf27dd2d027047fdf9d8b838bd625572fac67df1c830001ce72a23df0ad0342bcd2ff98ff828fdd479bc6d516e182c53886e23c1d7c890ea3eb7ab64677a6b89968c2a29964cf32c2df22893c39b4774747dd08b4a22396a3c14ca6f371f249c4a8468201d8a66caecf436a245beb61147938b949bcc8532b30c77399d76f2f3a6904b723c97cad216f4051f87d5aad0e407e94b60a358f6bf782cc7b948e3936ea23df23d8f82ecc145ad277d9c4f5d947fa4640f5f976ea591d49000bc9f58facf3469beaa2df7c722a4227eeaed080fe3fbca734de585dd0af32867173450c1962bdfe3e0586d67f1ebe7d75c7a4cce32a6cd052219806e796860e8c91110ec4a8a62e26881f034fef0428f297598ce42515c5709ea76305abca08d592e6788155044398db5950d3daf71f71548325a9b64446512fb70cad800c1226d048ad140f9b5ecf9bc42945154698b954073d74482fa002ced539a6040675a8c0dd72425d76ab548d6a1013799baf078dd4f20c5d46a3cc2145b0f769717c01c9f069c2558558e53be48354e5145543f9053ad27485c006c12124224278b67b867b0247135045fcb5d3b63d56281024b399f2d7b0150a0f766533f884a9d3e7e4639f55f1ebadfa6c0d3ff52d7ddfbef1614e2b94d8b2c3cd34459923ff7661f123706566e0f0097ff78be962d177aa4c2b337350ab6673dcc6e34045b06005cef88365e71c9a7032e5e8d956ec1c8c4a16d9ef1774fb0c91f78217d8702bf040445c5b5f4d589f3484991b8b356d75340dbaa1f6a4c753a3cc5c2bc0961c1c328a17e2288f03b56cebbfaf463dcba296a6f082c2e2b53bd3d0b6801584c7daf22c603cd26eb04868f68c50cb557782dc5ae30f46efde415f3b699e17b64b488cdc6dbf6a70fea5618d82bef9cad3a59eaf59eb4ff9f3025b0f2dbab7987c7082a6549689f8410b8e0454a94b3e70235bdcce6342373348118509aed61682d7d0a0c88c94876fbe068e834b87323caa3d73a90fd5d584e0096ae055133ac3a1558d141d6e9ad9c176101f73b4b361a1ceef5ff8f33b312ecf41587d329e1525e333ea9ac3fb4af698043c098f318cae5b68f827f3b5cb048e097969fd8e122e749427b994070688c2da3378abc4fa76b32767150d85e857ee61bd6892d116b2ebf0f078fb1b64ef64eb100f5cba83b2b8acc48190ebfed0e88f449064c3f4a3cc1485ad4921c8f7d969b3cff0623d11dd2d22124ae5e43c2abae5c9dd2b57b41d1812184b6b33a5b5c891b14d6217469d789db1bd3b05a905fd65bd09bcf0613d615fd680357bd20cc51f266b98f19892e875b7df7a8aeb9584ee4780d73670dd2949be1b4a06aef2fa167faafa33479c6d64c5999c0e39c4032e05e78b7fe48ecdc75dc9440d48a99eabfebd1e4ac5bf8f162abb4dee18f067c3c3f1e2e9256d4d8cc802740168f7ec916b09a871b1543d911b0c66e4d121727926cca066269b643549534a4e1400e2c1aded66ef3e45fcd4244fa0c8461b3031bc801a2b30e54e576a0ab92e5d4c34fbd51227ee2b87d467837b0affba3ad69dadd936a38c7e4ff1a30f3ef452f82ada5e23f9056d99e9ef6a7dfc5d3a7742c2ba762848bbb36dc81c92197bc941853a2c10dd19eaa02a163ae6e5e3aaee086b0c2affa812079881f0a84a5e0c936a98ce59af3c7a3e4623d2232103dc3d15bc7cd8257ce79ac484b63b5fdbe1a4d705f457007575a42607818bfa9d857707282856ba058a11db6d43bd76873bb319c75c1cf16de0c7c80d8710cb72cd81a3973842d48620ab7f063994c7993456d08dc08fae6784bf98328d7f95ad5ed3234cbf52c2f533f05ae0a55c5a31bc239b147bdfd77157a2908e27daf2ebaecf8f114e20a2ea50b8b95ab84f482d64ef23136dc76b7cfec8660ee7b150ffdd2104e5f7ab870d1f471f384d522a72460ce13992b7535559e897ac4a84660acae749c51bbe8ea9301d0d6b948261ceaaf96653d34760d2d2a257ae9dcdf9cea222ee6fae5a779a49e8f25d1a596918b6d6dd02140701f14d766e5fa955dd0c582bab70bd165f3353dd0e4ced2dd882e7a776f7bb02336e1a81212a5a46e9192934e5c52beac9093ab44142c1f3fc45f8203c7f7d9934c3efe0d27b9ba0fc98e744cc727816e20f63df118ca9ba5cd3dbacc2229dc1887f2c8dadcdcd0ec5f77f4266c28dc00b2e14eb8b7bb396fdb3c56577af404295a972fcb3fbf5d3047ed31a71aca334dba6eddec6f3ceea3ce22072e9432a704ae0d697df468c3849abae099fe931290e130383310a1fcb927a5bf0737ef1e2c22744b6396cfbfbb8e051fd404add444f7c9bd27faff22be5210064835e8dc9d1b14dbb05696fdd42c9133b6fea4b82f3e640d90a7000dc49d7dc1bfb639d44242fd63eff248079724099c17539b9681d12a465996caebdb7a85894315fb1121673f6df2676a8b869143bd9087b3b2ce71f8f75dafab4cdf4042a37a35a2df6500957b17a5b2a3a83636c7476164d85688c7c446ec006bb097bab1843a98aea5a7ab7699bac8ad9bf1cee30777b0db4d47532c25a43af5e7d04ad323c757c9f39af7a52292a1d30f4ae418cdd05bafd81e1ce24dd5baccdccb01bd4f23017e281316563597f40ae76de20ec5c83c4d3a1c0dea95115897761f4d8c159ceddc8a8418debe4bd09bd4fdd5f969c442b59a293e6a03cb3fbe0e5195b0ce41fada046f69f5e00d505d85a833d753bdb0f6bbefcc0f9151284e0d6bc4059cc711b26c285c9b8ede8f7a59f1c7500da9c4625ff6ece432a00599d0d3e33a57bb7aaae1b6832e613beaa1f5a4a5909e0c40b417c3a41b387814f72a20a950c9ba5e066e86d930e840145f501cd03235059554306c295b9e21a41d9ee167db0ffc51cff6dc5fbc6aa43c58a4cfebc2fcee4077f0e558626095a77397e0f4515fcf79c4923932a1ec59cd28996d79fb85c368d32f2348b03798b61b5102c9a7bdf71d37ffd84b8198533d40966ac0ea39af33ab095b6229029c46d74ca4663afb3d65e0398822276a7314e7989461878fcbc01cc959ee3c4750cf826e155a806396afa7409a0faff9adc0e54c6ee42d0dff78de811feb1d531f3f70e3a55fc55d270853ca5c6b6ae1c94e079908bf78670d5d0fefe1507a0609db0e68811cfa40fe54ea9991f0b5da2de62b25c0e64c7a3f1676570b56158935df277e00aa2d9b28ad3736fd1ee9b90be866fd812bd560316b5c9deb3f5cdc19338b4594c7a162d30f0bb0b455134ca09f14fea34bf9143caaca62a25f270cae46958fc2d5c3df2dff4f8054e694ca655f99e39d971397e9d218332ddd234d9c75d529d7d391e4f23b2bbe33fe787697c6a6630b6934b495288d230471426fba001df5bf576cc6831e905eb0e9b0eb1de2f74935758079954b5acf7bec73f89cf77231d877ccf4e7ef847dcb654e3c7e32131272155f9d296017668bd65fb955a6daca63ad20b79e7b83bde763f8aaeee96bd7993b5936c8ad3d7879d01e2d1c1b5ef8292abfa803b9722ff30745c4f0eac3b8c3dbceed3ebf37a3b36dbed187313cc9980200f12fc10a69421555827e738c91f85b401ab41f54bfb8a6570cdc4f4e1dc244c3687638b40807570df3f2f1257363db9c5fe895698ed06b4fb52ca57ac5f58e15f1cb99cbc20bd5e6c33b51af1c4aeb9dda3057eabf699e5250660f13b33c92fa3d8a65238b81760ffe13ae4d34efaae8cd9aec58024e9d5253d72eec122ad907a2fe6c5dfeea53390a2a4ec125c6f01c273954da3b328ee681842b97625f99b4be5f4ae1844dc76d6373634c838336632a9239aa742671b694026ddac8ee72d7714268ab41235c17c6ba064c6023df4a4e651176e66e65c6807ed9a886c261f2267cf39fed4628b571384fbb05574d06edf17a893664a5244433e7bf4a211cb12199da7494f954f8bf5c351941fc5df40431439739f718d1a820cb8ef78759dc5bf872859abf221eaa689bb111ceb6ccd6dec763069c3e23c7819b8fc927c9d8949cb0b1e332fc07673936859c9ccabc2c0df905d36f5e3f9405b4f8757a24b268b326a6154d94a0116b19ce319f7c102b671aea014d129e4ca93a8205fc109f69735500fc236ba84fed1e12c3784ed1cc8faf739891c72a41d529804cb094b48dca245b5e8bcd43c628837c35116e52c3d41e2c1104484c18e0a89be7d37ed9a94f33bff6fbd18117a3e18ec8b4bdadffad176f529af5abc7c61d15120e936d79af3ecf7cf3621b47ef3e9a9a490a8a9f6080bd9e40b7160a9b4cc90543d65a699deade9c2ad3d3cedc9b0dc145f595db2658cbe2610f0502e6aa0096f837a28ef66333c317d0de358688914350686fdbd0090d41a9269d097e5604be6b3f756c7611a120e243290be3521ef42e08cf8baced93db5337d621b3b0a4f6a38807dfe442b7e49195c46c41ab49db678896c53ff961a9e9a88a8e1190a5be6aa3abd03325f433c17dc2f64e9f11fa36e25ee708b95195bcf75d49f62ed2f4a28c56a073b3ed5c0c0c8fa6b90ec683557a983938d8325ddb373b6fb80cf6b06848d234b01d37d3911b47caf1e7c7d0d537008dc719a5448e1182b23527bf8742fd7cc92eef22e7c7455762dc5ac1703cebc56359b8f41b9079c445def7f833a7c3e839f598f09df1b53467ad915d4f7e1e7f848847c3a11f7017427dbc2583911e96b36b668d89bf8ff52c4ca213f52064977dad124e2e9165955dd28aaee37a56ea00c587ede0627c2474f5244b6687a8664794c26bd5c72647ce7b05b3d2b25ca43743df9386b24a4dac258d1d552cc4d6f44edd4e3363b2c550000b885149c9f23d06df9487e585abc335d502e44b38c50cb050963c18783a61e4e47b56b258a42c356b5c6fa6cae05c0c5f1b334ced474798d31708b2b3e76fd668c03befb9648039a4b71031f427d724d5169ec4d33de23b67a46e1b177ae040bfd7b1b751f8e2334dc1cbf51de34eca99e48864c11358f49822b89cb241047e9519fd2984ed5877049dab63d26128d9b700d382a834e1da9e039772fed097bedd812b34e64b62e839ae96abbfccf2ff527fe01d128b732e04a0ea84ca7d748f0e13a5f544148bdd62e46f723006b3fb307fee2263d569a88167fc1f0735ebaaed30038b715d7ec0bbb3ec785d8913214d82b491d6fdd8fa4da66b326f3de90d6fb2dbb53b55b918da4acca76c67ecda2fdab66d82cd5686e6e376e765d4c71d4c50072d2ac17008289491c93c63ea8768dd455b83059bc1c32b07538d1cc20f3c19bc165a1752de89445eac1651c4f4ead234a56004a61073bca31fa8ed5e10a7ee3d77f6a0109d08b5f0e958f9e3fe961d3349e57efeec466fc5d66635c90cc1e38568c32787b88ce218fcab599a8a01f8324a9ebd07d6d647a61a3a103f9c2cdd236dcd161d9f20b6b6641e6bb449900892ec7b9b745bc84a0e0ac9780700170a21f5b3f69ecf28d01a88b3b373e2aa992eea7790202ca8df244659d18f69ce3bbbd5a8d674ed1799d2fe7fef697ecfc15868a8a42b6914b37026dab724ad5606383abb7aadbb91367bb31d3c77731d3a3ce53bbcbe33137e77dba52186eb0a9636eaea7f7b0a834b718a17a1e0b455b554345ece445a4db00b48a0f0a87a4734155eb4a2f64735e8c3eeb7be1603a166be9fe12f18b5a5f97b1fc069d18eeaa3201e279df542402904cf8fc85acb1a58466f129033605f2956d2244a578582f18f70b45c35d514878f9534a6dbe562403f54c1964bbcd83f486743e79a5a6201dc61c33fd05c079e4819229ba9c4b73a659023b22acf45bb18deb0e9a6b1d7a932d33f533d6103b42f2122a2c4d43cf73ba39c88a769f5b50ea3efbed86167ca94ea369b24ec7907064a75b8ff031807331acb055e08003f3e739bb7714ea34b6153cc162434453a7af580cfca08712ae9ebeb864171be44b9d1e0f3d4a1a1d23a0e0ecae620729935d27cb9a41056c61a13cf013ed309c4410163d68383111aca2778df16013182eb3bdba4fc13db9a130359db0b213e3839338e454a2b35da6c0dce8ea3f04ad03421f72037909bcd804c649c1373aef471fde765049a07ff70fca07949fb706929f0f79c669b30aec0b66553d2af870da2ce405ed6853f6796eaa4c2c59ad0084d27ef3e5fd404524a29c0d5cd57a3fb14e10d9cb4f37e7e53ab00c6f99df00d656ceb37cbf4732a67915660012ddd71b4288abe4d3a9510926b8c9fa52e819aa158b841f6bdf790ea1550cfbe4ee763f3d4bf2eef0909a72f400b02a32385c919cd9dce5d59b8223f99ad41006ee9a99db0b126a5b52f586ef43e7682011f9a68811584e747fb11353b63815778dd9289a9fe3e7108a782012875a14d57463d1dc78338b66d4615b039b8e430a2b0ca5d1e9cbe1d47733e75ef1ee8918d2001badc641fd969870580ccaafde5ca04370f6647fe3ad8aed1865b60d6846aa9fbe540a4250353c20a15e567642d654ac817183ce471082bc57dbd9cf0b4d9299ad60343d46c054ec43e1ae5143fcf3f13fe1bb44b7b56dccd97199045e7bf1f050953dd73544296ffc25a024e1aa0cdcd4f6dd5c4270324af1ee5ff29eae6c3cac1c54c4d61790647bf82cc4feb471361ad6d62406b95cd020df743852bbbf15f5cf51e600e79bd2a13bb660e131cd698fc1978728fcdcaafd0e617e6a5e6ce1b3f44b53b790cd971a20b78afb3d7600a39940e80c2bd9c648d1f568c94e6d62c391a251e5649f9881c64d9a1b009f4eeae19b4f4de1bb37ec5825c3591e4abea2003556d753cd10ac642dd09b1a0228508d707a5323e772ca8072a73ea0061963c90d3358533d6fa46661a21a72d158f3ab605115ecadbf7fdf700ff0f7ca3d118759ce58613a8a4b928041b2093aa4cb020f66e8f96dcb165b5799b88929ebcaee26946fb8d0c6660538b95ad4dac1f4b053f549919d704308cbd723f1f2849c55e86a7a5bb61647d78b23b1af3ee6321c41d21097ed5ba0473258f9efc47f2f51185b66ec5619f413f26edb675999068f307e6e8c4eefe47085c0b2bd3adb14082102c9a28c52df260d22d00d50d41c36c4659c9e299f384a16aa7fbcec8005974e7c0c838c7f9d81b338bff50a56d5d7bcd5251cae9e6b9efb83b5b7aa7076921a67af1e856b34c578d0eedd641f5c4b71f2fc58fa04a3a99c0b611d59e952000a01777a8d2f3a1782ca5d8a44a7189fbfe4ffc4bac174682a5f8dd8b70f72a3d3cc243b713aa0122b3813290dae84d5e0c41f771dfa3ef6892ec8066deca6414bc29617222ea4f76d1b2d103f5ebc9c4e3eb824ab12516cbde8b301454856e017bac0d044fe42326653ddfb81fa72a3db1f8e11a25fb0e067431d261182ebf9e9621106a0743e398d775c5458b4997cccf62e5a7928d27da965d80ca9bd88c94c313753bbd297570a0fc742622d2ab9bfa83b0e90449ff6bbd398bca9846398912c447a3e14695b46274054203affbd9a8c3b022a3c7ff8a41beb0ef7d15872c6323ebc02574bd46be3dcb879febb95eef74cb1f1124d67e5152fffe5bd454f79e8f8d6adaeecac7bf0f768e845d2c1528002e53c84776905501e6c9af0c5c3087455ffd9f5aad9d4d35a270fe162b15d5e2aad90e57e93869b7359b63239fbd828f1dce67390b4d828aa8a3b48cc1eaf73f6c25021a873224fc4381b20fa13ff33c206a072bfb6637e125858e9542fc2a998728cf8bc1f482bb9e7652c7bae0dca8e6f9554314cfe3b2755c4257ed499b3e3a5d115b0bcc99c98df81239fbc17d7b6ffc012f8be36ea3696f045dd8bfe93a011c052a467f886a08804fe65e31b05bd463d6741001068ce03fd87669397f430b993be41fcf414152f1eee7c29b08aa6a5f6bb4e4ec84d3a8c7811c426d980f77dea33c99428f2773b2ed6daa10a0751ff5fd153ed4b71a88d3fa331ebf7387b5f00bfbad0738492ecbbd0b10b6629b02d8901592c499f107f4e5dc5ca79a64542d471535614915f5cce08e47abfe113bd8091a748ef4fc86e787ed5e06d8f5ebf91056605d5b9ee161972946465e099a81aa615bd21ea8bd3c7716143d87b939660ec6f42df5227bc162efdb891d98bc3eb9c5a65af19a1c90aed469223d769574ec5457f0aba01823ce2c5a7e5b70b7f6f5c8c74d91f0a69b18e01da3df3577970f102b7078600dbfd9d93ed7ecd44b6cf72a4cdd5a42818af58bbad682a4f500fe1599aaf61f15a19bee7b73e1f89558d95c84496f8b9a781b45aa99b8d1854d76da96015b233a3f145669e523674bc4d52c32a1cf788a426d44ba5e534864475362fedb3a3ee661bf89f5639deb2bc0f0726ad595369f43bd639f63c3b92d1a9df02be30a43e895c687aa6307a08d53ace1ccf6a165390864371503a1068c5bd1c67d1161df2e4121df201e37d80d1f6c185844a79e757363ff48d5930761dd0f1aa8dc7cb40e043477933fe33f7a105eea23d86263e64ad9be2df5f420e9557139dd50419b2d2befdddd3c11f2f74558287aaf568712fcc035ea38191a5be9411f9d9ae838398ea603b28ad4924a4296e7f1902c00cbbd2e844f207902ba81088ea56ae76096775dca3f58704afa6f9505fd71c7c381d17c604a270c64ecf876daad3f5974cc6bd5b9ebc3244e44de1871942cb14840231aaaec14bccbede91e88846a97086d67444defdf126da9e0b9d57e5c9d5efed862869293b9bfe3ad8ad7c7cbcfd20c84d8e1bba9b3cf317d9831b3ea931646e68975e122a37c5a164b1708a9cdeb92d0f0a2163b0fbb014162c27760abdaf4a04034ea63d42a2d97bba167f7b384bcfdb0c2dc3f79827b7f6ec8f605376cddc44745259b510d8a24c1e4a73213dbd5e8e80836087c4f4ad7bb38b2183bf97948e510de3b50a94520561f4d88f2cf3bdcfccd9f736dd235bfb85be7bdaa342e380039bacd774a6a48c2a7925bfce532c9b3d967c6c0c6ad128b1e0720e876c87f0f67dbed0365de94084f0ce45c4d31ce7628cf38b383db3f2e47e89ec7163389bb900d058892fae9586538504731aa39c8d596c3dfcc0cc54c8e53b6996f5cf4214db14f6452da6bc6bbfa2d07802f3a097883193565e240b6941af7a3298a69d1da3eec663d1f8cbac2a3fffc3243675eae6ede587852e252068f6e3be32488b64825d109f9b65d31856fc16d6fc133a5b29a78bf9b523b444457f94c36b9f6a92f42671070a74f4eed77d1f1515993caf7f986afdf14d3b0ab32be6686ca81c4ae2fee71f51350684cad1ad857a0ab30239b391e345641f90f53be3006b95aa024bf5d290dc8f25b9d4b173375b2105107fdc3f30556d180bda7ddaa5d7c19f52dfaa47d74cf76cea4f5d7f54d00aa02faa796adf75e0c0fdceb89f8ef6d9f9c895f3821ea7209e8828715b49f27afab22f06af7c0075e896f9b1ff76a8e1ed43f9cfc3bf3c23688589f4f1f3dd7473b4958406e8c3ed000ba0aec09499a8ee0a61fd830d02b4bde3964414d86a8b1ab4708bd9c6c905a658476efe782c79ca70b3ff4763638593d07bf634ede1e5255e7eb9aaa6560126880d92a71f9f6862bf9911d6a307ecc008ee69704377bec227b5b992d381f6e78153171764190caec32ebc1a705d0821d1eafe1150aba2138939fcd9adb1723c3ff3bf56face08c964fec8d202ffcc53b54ee13641d17de0e50e8a7a6353c4856a2a0ae66f7c8a28f2ab92f86dfe54ed2686f3cef51ac4fabba44e5dba8b0ee5adfefc7d6d986fe68a4ca8359bef53ce1d08b2eb290fdd2470cbd58522f74223ac97f75ac370730725b989d6c976f80de32d94fe349d80e8e3c73d587320747345b3c16a7265be6a558be4ff059a84758be615e6c89c626675cef651875648b189973305f15503c76c95423930c8791a0708ad354ae8b58dc696274bf856afeec559097c7654a33d95fa02adf1b1a60cbeeeb0545c2fb025a8d8b47ce864fe9dbb00ef977a4205c5fb39c2fe4f0af35daf78a84ef2e08d315f5c72b7a3c4a503d4ac49eab3d599851d999bb48ec4ab1088151c4f96e4dca146b6b85b7a30311c8dd984231dce3c5b35ef32d6ad04a331675aa43f482d1c865c15929d945eea075b0fbdc72af3675e87232c9683b10b183957abff0219f2b6541ec61e6ea2c36c65bf0e712765719ded35f16c7c4a5f77730c4d789187d2ac6301b1404e78fc630c6684aeb55e0dd26f0a63ab27f67bb234cab7bbbe799f8c2a2cd1635a59d9b8e8d9ee9f7929ac005df09bf94603dbf477e0ae016e4456f321a2f4a5e34f7b6075eab0339cca24532855743bd82f0632e4f20f5c771fa701f68076a475c4c5327dfae310b4c3362dcc37ea215678d97d1d61158772fd1f7f75bf48d069db6c6d206d6cea700ac2120058ea7edee6216d34407aa671f81febeed13598cee0e335cee9d50fb1f2a949a0abf343a96b1061c491ee53f29a6745e17ebac8b388688e67702c8139cfbd7f29690c3108eb45057b86ba91f510c2b5e5159f3ac64098cbdf3b6e7a08d173c9c53f3bd274ed70bd04a64f5e549909d5534e0c962209b5bfe8917755994331aed9e0b9aee69ba8893dfb27945044468fa0291cf93833c25d7c5a64bafb3fe235b0d60bf2af12152f73115ea8159df2a45f8aa9ad66c8de59b28e21a725417a7039e1e853d3a2d6d909618d05ea0309d7c8d14a2c99993505b997b8f4f6d931131332f5c23f134c3fa5efb890c0f714b8c01a9bdc2968e8863d72f80eb50d2985ce23fa63e6a171d5a6c1017bee8b3f031159830fa35712682e03909b1f33ee76371e9d646afcddac2547927dbcac2a5be27605cafa3d14364cd1ba636f57213836ab872651918d2ef76ec662940aabb6903b01cfc7213909ee216543e2d5d542b44a0fe08cd02770aeeb88cfc0274cc49f6a8ee1d9604326e75baf6a57c44f67cfbb2fc981403d8bf34525a928d99c8e5e963325120e59ee4824fd85934d92194d055b5d67fad395dd2d77cafe40ead4b41212cebd8edf0c22f6abdd7b2a037751baeb32ccfa64519a49ac09cb49718f08c8fc3bcb8ce16f056f39d49d22d58da241e9f60f81e4668ee76affb46ba25068a98a828ac3984287f95866ac75ffe561dc1b5f8703c414af4b4e2927fea95f4c8a1f4719b9427a8bf4fb09f1a08500f4c05f048346e1ffd2714b36a381152c06b0737937897a608b45acc94aae18935fe808e7dc2493e37e95a0e4717281f38be015f2b3fe9d055a4fff66af58f001f07661529ba17e7fdcef66babab519c3eb092eb7982c1f9ef05743f232975942b9afbf09be93e6868812437df96bf3a5b85c003459ab4bf1d22d27891aa18b60ebdd31bf86bfd1782eb16b68157f29862a94843a81aea001a15b57a9fe117fb7216e2d552699339a83e28c549bc0606497b428aaa0558c9ce7cd4ef1f03837a5f44281924ee0fae128756e70281f0609bd8be197db55bd51cfb539c000cafc4243b252402c2a474b1f6b138162f00ab5d4030216ea83be00812d61b35bb8c00295473a1bbf53085e756e1241c771cdb63a287ec84bb9b03ba786442c80220fd5934748f40470038b50622a525a45c03dc2741420002278b97830889cf095bb8c6ca7ec3327687340a9233e740285933efb0dbcd66726906c3d4ed20fc6d75179264b2ee97dda8071c018fce805193498ebcbde81337f1f56789bd99cf65b7b931f2015d80e673395c4b49760c5d7a32ecc90750a5b745db22e4bce0ac82dcc5f7b9404dfd1f6fe9bf1473aef972641024451894f58eb5760dc91b752fdf530ba6fcaf43047e2e5b03761e8256a7da345fd7b741b7db44ce32269c33a95a55c74e545d9ebe33de58e00d1e06bbd0a6323b79b6d52a495c4331cd37a5ab25abcc0645d0c7bf978d656727eb66b9e69b02d7d1ed88b990914525044f3e0428ca923831dada8a787e56bad917a2180044c78f5cd3641e063f53724002d76ac96e549700ee31ce2144776a415261c772ae86b8160e8b3fab0181b96c2c0cc76bf5ecf2b93d5ea18572e89c7ae5d8923795737304031cef877e17c5b8e3af6c6e7dfcd8cad48bdcd6b10ffcb050574de8f58553074b07ad70f18e73dd680fbd54658641022efd2f21c4a3d18b4d29fe259da5598fde3b293c98de4913ad5e6e431e938b8954d8a55c56a3687b33604cdd51f9572ad40a79d568d4170b4229755da41b6b5291de04ea83c939572c644d6a4c6a7169a05a0986ba57e335247bc0ee70a0e31bee9a4c71da31b8e6c670b7641a6a0363be2847da273ea424c8933723545179cb3224c097aec485d7e82c2000647781e607dc3b041f88812e2f56165c5c005efc90b1c320737aa2224a8422cda504ed8c2e6113db9875f833b49af6eae9719d1ff719e174814591ed3da80f9c70fd3f56871ad0acdcf724e5b72b2f179599244b229b16d8ac2a548d42e5b15a0541d06d34eb2a269042ed4afa39bf80e33df25485f1c7c8a1f43e42156a663246bb183d97aee5d68830017d34bb901180d396dbd958d662700530c601b78d745fc11957d49f4077a8692551f12b85b41f5555d0eecda7a1577ae06907681617a990bdb71b248235d0d613656713e06b7a7ce056751e368de8e50b3b6a6c1964026f4aecad44701a44433f647fa35906cccf4ee56133ec5644ad0c8188010733df17e69cf2bd5968e899f607572aa7c69fd52b538f07452d0d23d2a427acfdad220d89d66faf5787edfac5ae81e9921ab25ca4610d4b08bc6acc72eff2db8c5a7da0e4b71411f0e18dbc4d6d9c57c2988e00012b42be6ab4c8d2b1efa586c2c8fb7b16a43c2c15e8a7dc76369bbdbd2a839d7c578d6ab9979eb4e4fddcb14ed9f036bd34156e9d008e807402a880e28f76aba9137f3d1b2a51c91790585e1bc06feb8a37a038136c190a9a4604b05ad4bfbab51e892833cc466b7d4126c1db428f083ef626f4b08b236d5ffbe3c402e575b7de4656e813121d3df73fd49149a54093ac73b243559f8c0b77aef7a45225b12a21029419ccaf09cdd6ca29f78bc07946051f253a5cf657fc936bfd230b03df1c2475e417678b40d3665998b1aed945a10cda8138a4547b36f4d4d87348725384d17cdb127482958d3a761e5e5023b75e7f2be77aa8951e81d6ab25d5dfba2d5b30f3152b97838b1c13e3dde3feb7a5ba4bb25bdb7e44d2ac97f3a430b6ee6f998c6208e8d6ad75529ee537d4a0778749ba9ae0dbb2dd8c1e9084180c8da24cb02ee20bb734ff6def714215e6379c3dd25211b4fca2e51478b5304065311184d59a8f2e6d62ad24970c838bf8da85e34c91b6e86e0632d989473a59bbb3584baed6ead5d98c2c70465ff861b4086d6fd7b191ec1a13c390025f34c95251e10a88ca9461592082c8b668ca098d63d13e4d408143b5e3f0ebee73beecabb44b9ea1523289024ca25395db2d1187afcd4bff89ee211c084a0e395f403e9afb8d03139ce8c96b98873669934d235ae34ba3ca088542efb5147809299c43a4a20d82a8dd773afe9bd7303297ae6bc279fe7ee19e4d31680fa664b7c6a1a8fdbe8750a3e284fd487ca3c1d6e2075bc14a7dbe6fc0f984c7bdf48f5bfdde97b7d5b3414a3b07b5b296e995a6aabbe968e2f0f8d9e54714c1b448e7522cb6b1b9f810ed2d4eb893ab8b16f88d055ff7e1b84bb004e9a4c3c48dc1348eb1e95fcc4a3a4141523d57153854f175772e53c10d703915fd57c50a69cee505a4db7f814503c8293fa3ba85f526fadb3ae1c3c0391df9848e7a82fe34b780f1fe2fc08cc223864c8ad11fcdbfd8e786baefbfe5fd0c2a9ace7f83a61a9a07a6e1f0051a9de170a7b9b8d847a09d5b37a7f03ca71a66482b7473841ee07764e8ac6e55d8a618bced15381fac3d8e18fb9a06051845dab386fa2e22995dee48f221fb66da96713debf976de6b58c4805399a92d2754db01225acd69b9e755c5f9862e38caf35c846d0e19fcfbabef37fbda3c00a156a9d6e98233a03ea4d4430cd1445f50d090ce67c5a5172edb549fd39e38017438567daa5e8004f180dd8f3e1b12bebdd0fde666557eb0e28fd510f8ee09d23e9eb95ab0df3c0373cecf619b23df4707cf1bb27768dcd2c89d20defc02d72de50d6182dcde27bab282574d74c929725d1850843b73d803ef50169c4664106761e55794125553b6ce16139e26f957feda35643565ec7307a151769e07d087f52b1761b8eeca4b8ecad897759ea7198daeef64c4ad124c47246375a8ae1032f5ebbdd64e38944a76c7543752a96cd8549f4927ddab9bb6a0978d59f08d0c4805615cb0e569ba2fdd24fda95bb752a84c26d60fbfa0d3062862f8a5abb998bcad91dbe75e922352e6da83f7b7dac06d8b79fa81bc5208f7b07c03dc9516f357d23fef093beae2ee1814d65a920d452d19223c18ccb37d53ae25643e51dc9d6c3db6ea930e3b2c010fe4df7b3c2a6b32da1d2e400c325ff84632acb26b2e64948894eed559d50d46d22b36f3ccc4f6e102aa077110bf817a2212758ebd9c5d356ccc3ba1a346e8128199373d1f1a709c94f4a803af981e13a69f1a6f624b75f07caea8cf17fb48cc786ef7f686034db6066638c0c97336819e812f25a9344eba308ecb2b7ae709d1d5b3ba6c3fe0a1cbc2083acc70ceba25974b90d81db7aa75d66a023b6166062ab6d743305f2e573e0d85ac9bb30a30e98db9852b46f4030b37106497e7fa82ad1dc014619dc6f527f9ea1aa1eacb77e15db46285fe11f96fdcced2b8cf75c403157a2ffe9c7a6966d0cede01d764186f27dae35d6d13dd26a52dbc2c3ef9056acf6a94e89fb35a480c3778848ef436ab13987bb8652d7787e4c53cca22c002b2b996282cb006407d534ef8e603762300026e76cee8f2a7f4f2d27d179884fbfae13a645490d6dc17f1759dd0f7be15c978720c07a0496e0e6da2523bcaab459c0710b801b056f822c704e30c7d2ab3ca1290b2d89a83daf8909ebe340903d18c49c6f63f158c55386854fb8787da3600079e47e2772e4886b08b6c30832cc2e1a4b9d3ae90af5d4a9381e6c0f38fd3a2c07d018151e487da70f5ae491e1cce058a836327b7a1b0358db193f6ba45e22e637477cf730db0f71184badb1ba9f4178c74b014b20d30211b9e1985ffadc3818efe942f97c4832ed4548f0ee992622263e7c177d1e9db3d2c444cc17fc7968dbc026a2bdf9650a2bb65692037255bf935bd82f0885a287a5327c4c22cbe3ca4b12ed9f2c645a76eb50de4dcb107731a98808e81c1bdcb2c7e136b9571853e56848fd1b3ede8b97e45b74084b2d8e951b8883882f1b8bc40d716e3b719c113b1a602215cc7a052e6602152c3720a8cb81df2e577d9a951ba397182aa31924b6acca2934d8e017cf861dd5575b67fd0d3659bd8af088541a8072ba8c3df8258ec856aa142c30d043e294084aca1724f38567c9cb3eb41546fc9c9f57e102b93f8f95a46595f4d39ffc48bdf792766380281394c995ef85f2a8c85eb93102f6eff26890ac6c7ae1e1b9a8c6ff885ae0e5207b37d3c34df3ec3cef3760d8912065c3c6b5993edebe2dde4583c80f7cf0b5876abba0a455962e42161479684e63ac56d2a35da5d65d9913303e689fe8864d872e0854f92bd46fb14ae66cc237ba39e6d345b618e4fe0b0e75023151242a2bf1340555f78e350d9040911fd6d93e85ed50ab04efd2b093c81151e3527ff30d0332e8f308dd47efe75aa13a4edd693b7eab517fac07ff1acf0fc1823af1cb894ed5d5c8c31e6e06020aafdeb492b1f5342b69598a90c8df39298d9789c9eed861c5ee732ab7216f6082e3ecaf6ae7bbe316a2d3bd7e48f4ee9dfb3a8ef4e0c18c7539c335a56e018ba4e115c5835fc1c066dff986c49881c413c5aebd8856b3c1a02131f170323bdd041d355b672b8fa363d912a4dbad9da9ae242aebb3bbc3a4bb9b8beda6c61d8b3862273aebd13429584be660b792095bbb25e48db6a48c150ad7141e3e496a051825de3fb4afac54ae5903ba8f333d76daf0ff44459b3c954ef4826adf2a7a89ec267386bba5833011964b3c3e1f7ca847833900539fdf6f6bf423cf02344e474a80d2dce8fe933692029f28b3949a5916dc8f25168f85544f6ff2590485512e66a75472e696f0d1604d2120b730377cc7f60627bafcce5d03788b3eb18320953dfa6babb16b643d3c1b7b3a2f563d77ba55abbde849e8475fb87ff250333af7f5a486b47a918756ba4132a0263e8ae3dbc1abd8fcb05f49a4babef2d9efe8c6af3d34b01706b1add8e17c8256244962380525c854b663e62141389be1a8fab6c9f98100a2fc641e7333547b45af890f1c12cba0c9c690b3b857d6e5cc40926a699ac0f920d91e954cb850d9dde237bd9a1c10bfc63cd75641627de456eb204d95c130d6bf92c98d59d603fb413b0f1e520cd9a2564ac6880a093944c5d4b147411b9f5c3ecf116951b7e740ab9049e10688505eecd6adc6270c6d751d346a3fc368f09cf56a071d1e549644511b42e60357f87fc3b1591f219b28d8f5f8c983bae462b8a418acd3f459d2b2757a993d5b2b19c739a9cdcb110b2fffec3a56f564ca5c4970f425829303238bec5be9cdc83436c68131d5c0db570ee4915348bf89699d295568a52cc58f790b4c0b1a443759095c152fd9657993575307db6cbf7f4b544a12bb31d058c61cae274b01ca102be1a997e687c282e941c0b26baa28f4b6a4708f98d1e841eb63b0a25c054663c7ddf95638dd64b96c6270ea0d3b83d02e224f4b4733075504e835fe34510250241223e6ffdb4b00bbbc64a2d2a3beccad066420a41f0d7cce5e0909da7ed6571402f436456bb23216d9856198f4653ff66df9adb1bca3dc37b5bf942748fcd00c20aacdd00c17d11bb4c70491526332cdd385a66c9ad81a6ac0c3e9692ce2b33ee0834054c8107d5a2a2dc3abbb2289f361aedeebc660cbe7b3529a8a7d93a9e1548492d6b005be8a6e79e105029539a01e2f06f1e9a8d322d0932e60b744fe253adb57b87d3ed2b1ea432d83e52bf07179f59aaf2d217808d6116eb39ce6859e6c1c55552cd62c9a917b4f7d6db4f209b6c97f0ee7637870f503ddfd023da847fb50772d914e285de777935e93ab08e4f745d0de8107fd1d8c72e2d97a15a71c5c2e1ea78b59b906f816085d776952dbc249778b361e24e80158756c226064ae77a185888d3bb58aa3d699a0486437ea6395959895cf0a5b0226a95f247848bb78e6f4fd206ed50b2f6f67a9db264765be9e71422817cf4582beb8acf1dd4e8e8e772152b2b9a7a0b40a3da453edecb8fa4b4572987f0a784b2b3cf2a725af6ed2825c112dfb18b4ce1adf0fc9e02602c01860a97d85d2218c13ef97514163c8d5cd0e58e5c8b61a309d2ca62fa655276296b12df64e0f3277ab4f12a1f76e78bd79247bd66859f5f597fe1fcb9905212a1881fa56584e0f0dd7f3764359c917bed6ba53eef3cf00ebbc81c0ed090b30d398c15d916b64a6bf9605a37ece1115907b0939da1f15151ca11c6a95fba374365baf7179eda7552f2ec534e23dc4ffe81ea8965650d1f7bfc17fff5f38e97cc07edf7e19ccdda62f5d011acd3b48a2f7504bf74b2441452f04f9321aa172a467688a9a01761a7c2c0d0f46a6a3f140e5f9d292699614ee6eaa387481e6c4e2572a084f70d0cf710dea08b63ce939121191201ac2941adb2477db6dda88e821dbc95a85088de71f5635bf9f1d5bf1423c158cf93f0df817e237e395da72eeda0f786e0b1139eba6549c1a673e06773bc2bfbc5d2b380176a8325720b849cde5c251a0dad46e85df1a6754aa781e7aaa7b3171c8e0de6ac25c23c1397fa774802a4f25e89f9707802e80e7d06a6c0ad2d9f8c73f255e2146848ac5fe4c1f2d839a469ac9cfde2e811dc8aba936d525a58248583aeeeb9c60039b3d8b1e8f1a0cb1b723fdc49ddfecf3e52f175d0f948a78246a3c76ee2a6600def4707ff4ab1b9c21c30acd16639c0a568f99807a51516d3830621f05addf96041e15ecccfa180e3f8172691ab54d1aa908b737b9f4933cdbf83813cf54f0d6105fa19decd43847001bdb949ef7f70237d511117897d0d14b08448806c0350e4d2915cb4ecfe2620ac596b28f62a85f5057f7bc586796959465a85a1cee705e4641e792ca57f722017af8e3bb7461f5223d42cc4c5c4c26a3744b981de3e2f035cea017a46bbb878ace8df11ab549783c354dd18f18b92660370d1e2fd240023f925d68beb3436b59721efba3e2edc52905700c057869ff7932d41a616f2a243b0155283b7cd5b2b1c86c53d965547bf063dcbda58c8613bd61e889a3513c6551ed03c73ea529c24c87e3e21b8c43ab665dca6041907fd504ec459a25bf8afc6664ad0bbe426b1b3d7ccfbabf2d58fb88927a1a5c581ec36eea28804f062b386b4abe5ab6468bdb3d6ded1e19d112d2f59bc16f9d58ea7745be1d2bed7db8fb41dd2a4247672b6ac5745b009bc10339dde44800e3918079cfdb1c508412a5d4f63f57aca10425934a769bc17d72f1d808e784382f93da0c4b22f204bc6237168789dcb78405794ed017441fa63ef11bde513f82a9c2d438bdd95c50003de2aa71e96bac4c4fd591e42a86e61e3a67e83f6dbfc87017b11e72f4575bd5c2152d27d3a9f315a13a015e32adc52cebb17d57bc1ee708da2a105742809a95075b9c4c649757e319f967d1e64afcdbe83c9dc3b9948d5469b2cb5fa6bad6f5029ff9f376a5f5b3778f24d64d6b65b8dcf81b763cb35c23cfef25bd414e9b91db42b472d66367b5a00e6e2593390b0a58b5379f3eb813014f7e663ff82bc097a77e79e2ad0bfb9145dd298a502b13c0745cc1581e0a2da66cb46cfa581c6c88a484fd4568dc5c957f6209bd915cc3c68d6bbe6b9c979dc313215a07e4767650d63fc9471117ce69994e276f34b0ab6cecb4f31dde34320fe1b8f86e3c6b19d1a410fa8097c79b106552042f8e7c313c83036a4df27d7846b480f920d4258b050c561b6688eb3f4c33a1d759d621784b22352f6546efcd20066b68dff46e285bca370b831a076ce3ba78c89c3dbaa5c20c087f1c4f8f7fdb896a467a862e02320164145cbe6733507559256b0fad2ab8fa934a8d21a7592b5f003791d4964c87ee40f85d9533932739164c2117addcc59ff8dfa20fcce5f73f8dea9df134ce305942d46e36d21128c20a6ed1dd374b974bb7d550c1b2366c0b7c85ec56846f1d69f708e8eb3c94353b1991e2da1edad2cc47f75052dcbabb657414111c43010059d8b2cda0cb02965390d8d45c60344969680b99dd320262e7a031776851159c0a38ee4224aa7970f7f0b46430031fa174bf8fca04c287c96031203d1526472fc661ed2a7b33d32408232f423f46d7e71c06af6d2b504f3bba3b46b44487c022cb9445bca71e4646b7e340f77d9ea9d9b6f57b31ba0eb57c2fc2aa7519251f5fb9f51a83e6e47b0f6319415b4b9ed384602c3a5cf9d3119192586a1f1ff08a2f925ef6c34506fdb2a9f80c319c587677af0f4a4d0f64eb77c8a750de78a55c31726469c56a0cac12b11eead2151847c36e468eb64662be18a671172e1987e16a702d79832b46ee0a9530181d4a7f97433aaebbb29e4f1ecacb2d07254013a5e41db352a2e1c19ef2f5760367057772dd2bae0f385ecf138e2ddeb6bd49ae8ce2e8f1ce056bf02a9c335af2e19d979a29c9cc8fdea9871f512432336dc3b32138530f4a242a3e7c5a4372cf7e7559d6741b6c21ada9d586d5d7e4f6ef77d22fa0275ad1a6a9c5859404604443e4c0c7b63c5f482f8926de76c2251cc7a4e60a044839eac3d6e7fb2b2cacebae5125661497abad75d434ebca83854842e0bb4d8b179b0bb1358bc44f700fa2f5823fd97330b5ad2e44b4ada3bcd058bb377b5197df163a13b502e0a2eb5b520b58bb66affc9a11dd2f4113b33eddd8cc331d2024bd8faa9edaff30052bf8d15a2f139d9cdf5515adfa15bf80389532f6fc15df8b596e7e58a84be818e6883dec2450c52b7b3f133bb23d8b08a9df2d1f54a6fdd3371dedc4cadd672f4289353495be0ca47a1f101a49894fce55a43d985816cea948aeadb4c1b7e8f19dc8fdaa7ff885330705ad11f51cf619eb6f6e2c33951a697d6d4265f67150dd8f3748de0b321c4f86ae90de534e5da828d774a34b06b9096887c9b38850d8c5a027037bdbd2631df05950a65af32d14dc11fb8e4abbe1e47dece1ae9f6972057560f4422fd67267e0a68a22ce10f8b3bab43fb6944ac6c5e56985832940c80910a1a3e9114f3c5bb378aa39ec59106b0c35595aa22e8f96583adef96bb8ecac95e7d060fae2bee067d744b140b71ed4d196e21360aa27fe7076517aefcafcbb36dbc1abbc1db44eb4548bebe0cc03fcd4799949c418be1c83acd652c2fe60812e6409eafff713e4afb384ed8cd50c0820714b350342c79e31bbd489a218b058876ce9658c6fc0b37c1bac9ea2d77e06c287cf07af3d762c9fd3a7532cec97d07880f6f437ea4adef3bb1695dfc46efbc6ab8b67b66015e07aae572725fbe03c6e091fb04b998187123101ce11b43c0bde99d428bd0b1f15ee93da247982a3b3c42299645baac1b0a4eca9a977c8bb48016f116670a9421587c6e6198269f14f6962949b44ac46d4e9ed376748e9f57da7aa52b35d16232dd4b570ba77cb78fa8248a1dcb29e93cfb28e43afdc931804b02ab04774d5eb49373e6b4aa1e5938a8eacfb9b27fa1165abb5258af08c75b5bc905c64379ecc8e803a437e81f759a55585d8a6944c1b1794e87801fcaa9e2992bc478d400df9b14bb2262a9605afd43f129b21696beb4bab5f14f95c086daafeaad14de46130ae982cdd655fe026dcf4b0548b00eeec189dd1bb35b22113f3b217e7a58c97b3f5d93b143e452d4202b6337e618abab55c942ba8c83f1fb904ec7d6131eebb0f6c0b02021cdc9218cc27c1b83a426f174f739a461154ea02dfbdc656cd223e0de7980e5ca321adc604108f98c0a1d2f9ca685047b5801e6532e06312d024b9a3ad7f58d3fa88dbe23948e952d688845b35b7ff01b8eff4da2d469e185c0a3f180d30a42dec94f536c56e0c2e90f3719819cd1d3c81161409ef2de49313e8259d890e476030163fc5fa4ae5ec5ac8f926e597f62c7ad62d4f62ed2b646aa474e3877f12fa32e876105304717f932e5ac50c1e68a43a8036aa443745203c2b2d71c2eb2ab761d0601e4530c27f2d2bf38e28a402a8ab9240b04cb3ba5dbd712d7b7b416fd95a20297d0c99dd02d9380fb64cd17449389556614ca3ff106b3076595c607b302516315c685d33b978415b29552b2d1d929afa1885865189a1cac4ac84b766813c41b6ac1d2317a9e9190b1d49ba8059ac7b053c97cb0204cb98535e407535b2ac7a818f010e2fb2d5dbc31d97d35b063663f8a8132229eda5526511a59bb83e2a18859dc1305618fede430199f919237ecd2088562be366605a8c6bd86834896feb5ec3575caba71d2b05ea7e435968a63e0d0b758c0d7049074332ab95c2d902413c38e9a29611e9be0a3f08f57b7a1e7aff7a10d1b41543949cb9a15d58f76d4d5179c46c924ae25f0ed29ac274f61ad6db472a3a86937854727b635da29980dfaff6d2deafcdd7409c77e337b934de845cda457c6982b1f1b417c760c44c49822763fecbe193a3d52494f2cc354fbcddbd33aefbcf7454c8f6143c42542142122ef0a71d7bc456c8106b5cae0a4d0cbc84a55adaf865d5c27a632d7f8dd0fd4e8a2da092bcfa586d09046db297e62b86c57625896c5cf90ec79ac87617a8692b310b19afebf0cf6dfe9258fa2b7b7cdb62b288748cd7a5316d4a4b8f9da6ef634f7a45aa9945538884f9d98f30ac749edf33e45f68f0ee4f6e3508f6a6ef8b691a175b576c965f9a2797e6f16c002877aa9623cc8dc9046e81aeebdefbadbbd80e93f39a5185f3871cfc23c85b61ea743a0efccb3b119e4d76058f22b15b0f64c4e3bd90f3e6f1d0c8bfe5cdc57261433b2823ea1addd4248cd56e6c008cf1c9d158154097a6c1a92a5921455de124ca14820ccad1c09b63caa5fe80cfd3890b96d5355eb21fd9516e2768464fea96a54d451c46f17488e2ddb5efa89aeadc9fb7007fb0d70909e0a5536ab73288d20fd65d8390dfc470391d8a04ae7ead1755695592f2a04b8fad59eb043824b051f4c53abc6e65d222d0aa6a45d8d1ec30951f439293e080eb3e82ed482d38fe32d2761ac1863863e280a82b6d1ddaad387ea3b9c2c3480b7965e8ebaf950cf774a248b97ac45dc768a2c8e4fd6b050930447d2bb89c97eac283ff3b5f1fd57e221a5ff7211a43a548c23d85d0d79dd86c0d53d557c7174fcf821af37c1bbb5c633aeb38aa243b9cd9cbc410fc434f5dd30209e6895097a9fd5a50c4390031f918e4095a5fcb05634354dc97cbdcacb2fac56a90942dff31af643a55c3221893c7473ae268fbbb441113fa894229e65dd6cc15d7a44b183c04d9481a872ded1b91c3c079b201ffa7ddb29fe01613139b9a6ff7009cb2eac81f87bfd752b8b7c1f35b9fdfb43f7ac57a3b7a95e07ee206760a02dc0406c9727df2d176be302f5f032e64aee269f8f9cef051ee4f38feb0b244a4afee4b83250948b229d0257c6ff478ee079e59e46b8bee01b9d35bbdff2f43fb128846d3a3997ac70a384b1ebb49c05c5f05b64cdceb69b3928c7764fe9511c447b3e8ae79de1f3e620d6b1fde6b9ba2ca3092b31174c5b94025d8dbf0b1ebc28f23663adfad3e5d68d267e94e32435998779eac9378dda66942260dd532386f02cd6649683f625baf8dcddddacbbb978eccdc4a2715a943fa211041d0342181f98c335824dde3b03917d06ce03eac73e4b84172b94d04977ed18cd94fcce3a25237e2af37a605d375c164171d65f029cf30a5e4ff2faa02c8db09e83336735d4339caea5a539b751c519fb504cf6f01734260f2d62ac0c9c7a9d9708fbf26826b6f2c997d04cfd64b9b7e8d69cebc294d08214ed8906caa98ae668f07c70caf8370bddc0da131f5115805b331ca670f7b5112dec214a14496d13fb9a796ba2375dea139968239592fce2b003ed0ff7a54b0332fd85f4afb545ba4209837bc10b989d9f7ad152547475b34a08f0c4934ae6140630cbf6432c59d50f1d2ac21830878aa77fd3f5e6d02a392ec106ef4b3221d8c308a24642d8880538d9ed8060ef9ab7c12e85c716408762957d775fe020629f5ec4cca8c0762781c5fd7fda551a3c57ae08fe2b49ed25e9fa6f4820c784c273df6b48483e7b0296c1fab6bfaeef54394a92dadec6369af34ae3bfe21902cdff8e8067a1dcfa54464039daa09725edb604224270bb69e4b47fdba0059c2d51450821ee0bde5dd04d4049f131dbda7feaa2086cbfd33e4fadd819b0f5c76f79363084701ee0d14d9f4b958db37bf02a42ccb9d448d821100823fd4803c311d1c6f72affda5025c97d3676db08fe92c2f9ddc28015d2391d5b8dc8e578542cae3f85d999ce429ff63f2916fc2401e17d3b6735ac77f1eed45921f866e94dec10d2bbf08032f8ca0d2cbe83ab882db1cf4d9f81c87ae82f4321ecb92a710d23deb3dfc3273a9d1bf16feca3458f6799c4b300e7cd98815dcf1b2c8859c45afef96d2d31e5a74f7ba2cc665ca7ba432aab2058505393e8e321608a9fbd03697e22b6847bda072f70bed61534839c0190bbce6aed1ce935c20e8591595f86ab34fc2817177eea8ec3a37b09c7762b4f6717b4bd88651af45110c00d929f9cf527a051d6232204153dd472c7fd432f27d998fa80660c01b961aa2af4589590728af50c743501f708bc2dc292648487937a3240056b8e4d1d05bb501f2c14c20bf8b2b49150532a6ada906c845f8e31d864f51ba910e6022f993d3aff68aa557205b4b74d5a84bf1071783240b0b6efe6d4b56d57f2673c51597ab2410aa54ab9883962f1a5ceb6c06e026432ad1f535b5eddb14311ec3431b2ecff277317b5600bd1161320e4cc119d03fcbf59e0ba3b743b3e00d34b7c23412721b20b456a26fe3822c41faa3626774c1090fe36c6795c25ccb0117e7729b15cee2f725cf7530a76cffce387b0a5a8bc58ea9de1ceda1b73ab1f6b76ae4266205e00bc91c879c5d97cbe6df0dcc0b69838b5b097a84b1b90ec28c97ad0ad641f8bd36a735bfd1200a835c95cc0b84dce5060dedb44eaa04b6fd9e96acab872b3b67235827dbd307c8eb947647ee24a109e29ff2d75fc9928c0c32ac8413b9fabdf9fd7708a6ea4137e3c088df3974e204f87ebd090dcf907c5e67e9bca721ea5da1daa4bf23486ef50de40ff3b95f46a539eafe9914bed190d865bbce2239ed4bd975439116972568a6fafdcb2457857ca8c7efe0fe3f40b0b209c8338bda4a0cbbe2d6feca6174b8bfab0f8a8f3faecacf0d638ebb7409ba6c53c4a707c6365df230718c36c55dde80efc09f71fa610d37ccf4bce2282f38d77fb7102e0224b62ee058c50a79ea4247b88d67939719f2a7d80806b9651f7da42c7bbc713c25c908f1212050e9cb460a3c1e41f347c83bb70643456706eb319628bb04b29ce20e60e2c70fc6342aa226ed52c9e8fac6ed602434f22df8afb46f1c56e26a0141dadfa924e009faa3b198a0228ad8d6bdef4c09cb0a6667865457067a6cc2d1990ae500cd109e5dfaab9749b42558fe3bc883e7bba9ec14fb53bfa83ff9a5073c4de87a8b95609d809726df237c0c341d9369b3679284f71cccd5f764f31127d7cde06b83b0bd549c86cfd508632fffb59950540c3b093b0436774a5d884bc374cd377673f8d088fec64c8a443bae9a9511b0c4e1ff9d6e37ccb0ba24848d42b5c558e7e75c219b69ed08d45bb965b8e3093b0c01b66041b139618c5d76732fcd2da54bdd2f452f0f638234f058dbe453a066221e9a9fb0a4b48a4d1f70ee0bea1c56c3df10c33f9fcdfe65b70789ee7d416957bace2e2dd913f4d9f91f7a57348bb9274d120a7409523c01d980c0a0bd2ca1706b189c858c7684f578d7d0db95bc0d7dbaf111deffae64bcd17332b108bfbabed4b84ae7e8f1721c34f0d40e70c0c32685bd95a095fea46de17cdfba62b337864b57aeec2abe577f3d80847e31682c1ef8e82801278b162c2b5fba77e9c09bee1897c80dea5f80fb874662ff61e368a4cb2999a2125ea48d254cba8903727e3e31674c531127215530d51208ee4b60736894b58bc3273ade3b9f81e6b500e93c7d1d45a390f43da9dfaf1550691ffea89be3821c7e43940dc8a161a83c56a354c30ce4bf290a856e0f362fddab61d266a8ccc63e79088c4e6657995821adbe0f3d8bbf87cd12ceaf0ec748597d56599b31f54c5391287a5dac5bc7e4dbdf27e74b6c2d8c99dc3b8bc0bcd29e62ab434a5895e5ff3da57f34441bcc64dc0e221220b9cf00b5fef653e93264ed0cad5fb3624c60b826368eb3b2bc48b314946b7714002cb676de87f2aa5febc038ab5de6874f4dfe7a5f5192cda13c45ab370a587823427df9c0b4021edefd6db775d5edeb41459e3e34a9649838e35538cbe1cf991776b6b440d516d71b7ed046078d504239af36b4bcf632255b1ee2032bba5069792ebc7b16679a901ac2f5d1f88feeca85eb25882b30d6126aa068b90467d2b3e5085980420d02749491c427a14d35ee4c20b62b59d6fe5fb445ba291e1e30198413c64d0c5c2844ad304b63b5fc7e79901fd7a9c48b6de130fbeb48568e16aba181277033935c49687649b99f8eb875b7337040d816a134e459edbe77d70ec8b1e35fdc2bc98a002e56b1439c3d7d0373d05d8cb0d5bd67a95e20fa073b83860e518a42166adf3fe2f658dbbaf00ff7cc34233f1fc45b7676ae64f9f6cb897923499911f4532129d9b8c51290ff6a93756bc8dbfe0a2d8812ea6be736f1638e3fcaea2c6b7783bcbcde1045c0e52fccaf28df5fcd10e7e71a42945248f02ad6bd63acbc939241712a17111869abac629238e0a21902e07cfba7da3ad97b61cac42c1915b899a6639bf51ececb9038ac94b01fd325ba4192d088351c06a4eb11aa77d1b18e42d7670f809f66b6164d29f3006bd97327bfe2bb5e26a64a5fa9148f71155834eb6d4f4c5de063948aebe50c74a419439f68c817df213e288ce6ec7145b56225e2ac5b33e45704921e875d8216a70be981a23216d9f6fefc25d57499484525c8590daf52f5c0719c62c7dffd2b17b0f419f92c10ce0cda21dcb1608e659cc5c04951625451eb900fcb9e19d0a7e5ce6b66eb1a34276c170116e251b29d8af5db5f7bb750f5f1780253dafd627ed86c3887fc662b327572a2aca1623bd2ab2ebf4d2918e735023a61937e153d8cc34b31776fccfc5f56d21c7fe63cb9a6e2585bf10e65780ba54683257a7e2031e2a3932bcaf03eef720ca3c4d2dc30fa04dea1194ef19a15c3ff5f444e341844f493185c4b32fccc748b878db1de751c0312a850cbb660649268db8b67b16d3fca100b72752233245c76dfae2b897a0f6f9e9182f432922c2d126252cbbcaf69d47514162b4b0442bf34d9deb3c52be4e62f4e12deab8c3c828183febe58937172696c0cac09287ee6510f6c791235f4fcce38dad3b1bd41d9c4b9b387802577d390638ad209df5e70c81e9595e670aebc90054786b1c638cab17afbef7c39f039132cea5ff40ca3bb84567b4f854262119db6b54ce60071b88ecaa6da9f807abeb2ef8d99ae7a20e2a98e4b17fdd3d27eb9336d4280e0f148c5f408b340ca38c74e0a1478cf631ee555c9245d5b886d4087b87e3a3f16c9914a7a73263f31c1ef3d3462dcf31d6f45e47161f5d5279b9b9e4ed29194e3eb609665d7d47e8f8ccef61b832a616289b53cfbf501baed28ff81b08a86c4413a4bee479a6df06eb26f9f4354f1a4eaee36b8e532b9517c984bb5bd5a3c311a974a28bfa7e5840afb548e3291682371b0b13e1ed8a3e11e8eda1af8ba1878a19c16e6f0817ee8f9009eb2acf52848fd6442988860201bed28527e3c125f3457334ebae06dda3745d2bbd3e5c3725cf1bc904fd128c2f7bb450e451cd617ad86f7aaf970c2f947f97fe7d5c776453c21e570368a4a5198e296db725096c04b4c286120613424bbad96dbe5e8e5f2da2e68a2f65201ffcfccb4c944c7a506f63b799475d276f362941ed98aab2fe2d80377582e07bd25e6cf8d25c60b0377ff0f027f6e40ca4981ed107088897689a2e3504eec8e313f8e1dd3bd53921ef89679128e0f175e485676aa790205057d5048ee5613612db28451175c34a99e460b968a17e84b0187f424d114623a7dc9bda4718019bab0138862f1a976839c30820d78acc852e1a532bc2d238c355a0244b08d9aee901b1577540a1129dc705b75fc9a6fa9cc3b3a08c5abd2b7d7fc9d03838e22a23c3901640c0459819487341c57bf39dd0bc62923627a0312adb235c28e650a506c99d451a5965ab82794beb4c675ed2af97ac78512aa2c31a086164a9f657fc3a21ed19544e208abedaade7e01bf1d65907b7b6000364130a1d659c2976974efb985ec4b740c894415c2f2f24406a969d72121168d405c68d37b042c972773e166be658dd6ea8ae28f5c7add0b0d92c5b21b14cf4e75fd7962467f254c13a581b4ac449dbbdd3d52d7d215493e85d903ce38b367dceb6a87978427995e1d8f40f0863b63791bab00220fe07b1affcab2d25da4e08fe3bdf54cd492f9374e60bf46140c6fda4928fca15ec1d03b7b3b2710b35a6b049e48243a7282731c3df4382ce2a16f32e5245925ee8e0084be51faa933fc2e9402e98d856160b6910a1ff8756181cbb2847d6e8a513491b201ccd48f83107efdd963e150babbdc84d55e65ddf35e3a267bbcc4878dfe6761106c7e69b6286b71790be11ffb23170292367e85989ef287fc20d1baaab39d1903ae9a4f102920a9b554f2c38499ef5ef0fdeb948b3b0ca00e2f5ceb011df3a240537e8f590a98b1ee43893a4ee0c7e9e41b858e1178b56d1e144161989b9b080b7b572afe9d3a1113049f396e9a5198f28759640387286986965b049af4d415f8d98dca85fc86bbada5f4c81789b783d2eb14918984659d363f2302192c0580d27321f571184fa47be5b376c2dcec745f89d5542f450d5cb5e089ad38c34da0335143e911d8011c5057a7fcfbfa7bd5c15f75028672f464295caee5001f7139d633aa505092e7c40837c2b1955908434b10d679a4ad8c133dc12202e3ee63334b09bc72ddaecd689281144ec7ad44f9560016f5b079fa87a0cb06ef5913c9adfbd6a963fda0ef6eac4e925cf4901b38e039b73b7695ad333d9ee69c6b4198a7ebc90b4e0e4a517dc76a51631691af80b110d0675a034b4863ea5ff7ef3ff95709f2b2aa1dff52e804e584afee64ab2b8fd1e6692b04a0cdff57d2529eba9808d06d958558e9dbea0db9c450255d6076a130e9a124ffdb68a8a442ca5463244ec19f70bde86f685b651396d1149dbc679964944fac81e62d57ad267622d1af98212724e3572fd4efd46ba76eaee703bd07259bb54e1a48f7c60c2550498032e046ae4334cb01ac726dc982b6f552778a0de5bb5708acbf06a6cc616067dd7b9b9ce2744262768214edae1d99b6998df3c237e1bd363f6e52d005e9043ec0765b157cc23cca6323ea25f0b8fa2bcbd50cb300ffc0190a96cdaba855e3b229fd23639c04fd5629a0d53bd9087736fe7ace3aa5332e6c4b779f3cbc2ea1adcd3c02fc6d1bb1af8f8feba523b8b9faf66cab907acfdcf312fa52dd438d13c642caed80f33d1bcd82ff7218c10b5822e5012025cac9c86770c38ec7007b3d1cd48f81d64471a379f91544d1be2c467ea1e6bbac2bd0149a6b68e3b8b73e6183568d38ed874284d7c2be015dac16ad9841adf65c810032bcc3cd38e11fb6a65d098bdbb871c705a5f16a2e039ea511af52c846db2b2c240c86cdf52882dd78dbba505307c5891e7c8eec70828b3f4d047b98a012b98091be01d2fefd7d0496cc3ea3f0b9a736f9927cb7aea7150c31775052c5236ff4742f7387fb907516bbd41d2ee7b2b5dedc3913324773282e343aed3f60abae5d74ab040d3faf12eb856b4f3713d14eb043ba28767b9a36e58b243526eb77bdb1159301b04d1a7231db798af3063660326b02a074bb60f9590e8874e9de9d248d8ab0c6342673331199c461fa9f67cc9db0673f016cd74132f6e91d374582e0261658ea90de70fe1f425d1cae911e4413436589a02b8531f47d092ede2dc0d369fd6867aed107727db71c8993f43c9508bd6bc0df6f696d985dbcbf88fb14c07a35fd364b8d9923f77ff11341e89b53ad24d6684b5f51786fa31cc9c982e07df850df24e92fc6022507c526f4b103c24a1ced17f872634d1849d26db9ee1c68c4a519fee11d93c870439b464424ebffbb3523d26fa5a21a059ba7dd751c2611eabfb3760561138a19226a7378b664b55a58ff327e36c64232bd6bec411cd607d76bced702c879a9e81d882ef8b4fee4f9bad425ad892bfad48195163a933640704c94b18da9098b350da38715f5da3e638eabe09bc11586c6f86a07d22a75b969cf01597b7f0660cad540946383ef5dee0c351ace56255db99e4efd8178b91a2d2498c74a8f862e558598e661a3afe949cf653c16cf7bb1ff4c4a0a4d9df33076ea1f1d92d9bc6d97945c26ac05a434927f27b82566b221f415df5dcfd91db11d946d2ecd8e9b6b518c9cb3e5e1a69b5d25b9abed9fd9802e4418cd079af48918bc3d68015c1fb1450b0b1794ba9150f6bb09d687a5f841cbf74109e8d9f9c5998f9addbc7f847514b7e85d2b6e83cd226bd7364d6eb7e174e394e45970f791d5755a059245c6c4804e2000cc10995c9acd1771dbcf011712cfb59456885829e17024738ef859c48f8ebc0e792d6ae6653d2e3cf112044e86da40add6dd9e79729dd11481972ad09d386edc137bbc222b5a6aafb24c5cf81a25643a89d70411a2bd0f3ab04c7d3e6c56095b45d3b682f2ae2937985b4d4c940faca3ac7998d33fe942493f9253a7dcc06a520bc1b5eda7aa416bb6dfd4d32f44bb9271476b3be3472779221fd2743c6024b69755a4ed8db86b97d758f160b8a678828167370abc9fadd5d24398067ba9e9528c5d2dae5e9cc5bde082d1de829a192cd8df5c99ac297bb478069aa926ed0576fc0365cfb433a5827a8d671a2e1afb491f00d6c0bada09a9298c54c272abb29f8b40fed705a691c762973436f0823776fdbe4524ce4f1fab065e38a7526c8c13604fdc4161bd86e717075bf61f409ac1ce50aec6220e8a13589db620ae9fc88be7cfe75f415b11456469551f0f112d91ab3923ee2df6dc1832c9b6561ffefce1ed6228383de453805fc9098e7703f6987e103aab6b3a32df8630a68e0408b62c2c4d32d46ac2f9897e0307277e7af4cdb7d68fe8efeb0485452d37d2898d8b6b53a0bc2772ca42472422a2b1e34f76d2e0e9d17ef337044d9bf3bdc779d78feee876758fdbeb78457233f1184025db502e339717d4d71948cfd81d4ec8c8843acfc11ce9c1a5b92ed55156e438905931dd26144073b159261cfae3cc69ead078b47c890efb0c138daf645340b82084d8444049caa65a7a6fcbd0c63625f748fccdf12669403e9883fe5babff837aa38f5171f13b15abbc81de7da6302d2f7a9c26d7dc8b50fd5b600fdba20363670a0076731fb752b57c7c31762cfb6be671760b69b76dac3a4913ad8b240b0dc100af1312b5fd9711719ca24356d790f6fb0a86e3a27c354a83bc8ff6ffe674b3cf1af3b7de383ec1583d26db58a626526134eebe4f95d56bb2ec17b4b34c9623195ec1f00fce0db69ef79eeb45c2f36063855c18c4a25fed662d475ec72d296b406b967b80944f28f3cb549aa890423c8a1a0dfe0f621e7dc848fea398ac489d39d86123cadb04f2b370069eb646bbab7dd9fc87fcde9b535c09854eed53b415706ffc8260c83811de48d86c588497ea75f760c9c0e9a41e46cffa443c57e888c2f2a66cca275675af04bf21a348ee27d13051227393b4b3f62725d50435460a4152d3a495a239d2ee634f7752af33ce567c436a0e4f053af7992ef19a397ecb7b798ba287977666ad9c610d5f8853923775a87d12c35af33d994dc76b7361ac639c203bc30669f29469ed9277d7fde6c2ffab991e66d2fb32ab1313b2093db11fb19d143d4578fbe93e65999206edf1fff918d20d1cbe6cdf31c559bf170b8351e1e9dcb8e50033070ec7e86a9c87eee5ff30d81bd9b3386b99a28f1c19468ef26d80d9da2f932388c06c092b2203b06eea6c5100818936fdb020e1a1b2be27c389f747a5fa0b7bdb63bb7eb06ec1475d6b5b43a15e75d19ad374917e7edda3e1cd25c44f3b5626976924511a80e2d667daa4cf44cd070e6298d869e75891f65e7386dcfb519028511b8f1eb54f0fbe2ac92df452673487a3ed33ec5691273846e370376c3baf8c492002e2c48b2a1741de9ecb44025b372923562c44f3762fa1b41a251679f0094d2609619acfcd6267fde98dfed325a75f4d807f51e415fee9f38431f9d65b995de2c68645bb0cdefb927c622706b8700588bbb962e24bf08ea107e1264d0a2cd0b45e2b48040867a52ea83a0b4b0d704653d28de5f9dd042eacffd3599401eecd0de2588c3a2ae0f996e23f2908ed7d67d548a1b1a961277bc734e7f478e8e129e550f29f5e6a44898772f1a9a75ed8fc0f0d1c9b3f0437285f1442c2f12c24b36c5b30009781e26a5f85fb2c78b6a9ec2ed6d7617d9c9bcfd9e0b1cec077e374d71458c6b374028e1b3b094630b6b026b27e37dc441fa111ec7c1487822ba20292a352189a1b073d713fa69f1a120c1d6e1c989baea79ddc490ce5060ee0b282447689947a3d3967583d234d46351fb3ce5c589f8126c14d91401f201e4b1c1a9d996178e4b2e5f2764d3d426ff13e1893b1fc2f1d9c5855c8fcd34811e375dc1924af5d154c47228ec25fa9bc5f52d435a14e7f5f19649b56880daa4b8a6223d36eb1a8cd4de8ef66ebf2d5d3a8d428cd2ad5c65cde83ed9e95b51685fce335646abd8cc9f1c7fbcafdcc4fd9c0cfa535e8e0739b83dd09542e2a34b98fc39caf8d6d7628b53ad8b22c9989655db2237cb3d5a6b47cdb46c7dba9719d0c753c6f75546b818742bf025015eb392d4c4bd17618e9f2876cb39c419e56da7777630b3b5766ad61427849b7d9df2590c1240b8066b1302326c04c874de4e24b7b43cc9b4ee3802e20756c61a5ca087618631533ab06b97719278d3f30f849125a44ca4036a45db40227686a833cfa104c9b3bccfd89bfdf9497f7aebca1bc5391c7d0ae020c289eb45410d4a4f02700f53d62887a13118c3a654f0257459536256d54aa31fd8074ec8de18396745b18ba82be7e8f55fe8a68b4b988d0bad7ba64783ead660519793fe2a7f4f1d3af5f33f44768863e97107da19127fe2876ae000e923ac2aff0dbcf6304147dfa434ba2d2977b205de6746d0605abab37ca12b4ff445a2d98f209c707620fb7d541a4a7893f0c660c9976a41a20c9ed621e5f1fea66c29d9db84335016c3494e57fda1c4c7a302a3524359df119c2dbce868c60effacc70b22e13f1745ddebd8783b003998809358c7dabcc13667322140bf63b655e7a680f378fb4725c4382771ab231763e68cd8c5d776ca2dec6a7dd1f7a13e2dc170a5a2f1154bce92c73ec3fdaf4567393398710535a96cb0af3b0ef1d5882bdfd2c598e75b8e8f28915b9018544f1088ce1e0a90dc898e5dbb0d3d2d36559e98bb256322578d188c8919f71a7d254fafa53ee8e4b2231d7b9dbc0f8a2d096ec9f56eadf8b904fdb8e89a69e899502abe9481885a022114f2d4f7d11aa26d7ae817ef5044f989966dc4e6ab856fbbde507b713718b49beb8068ae7b13153f80e1c2a75143c93cd0cc756e0a3137c64aa1bd2cf33074c869b7b1c55b508d4f86823f58fc9bfecb0b65f68fde51afea40e1f161640df10d4abdb7185f145705a11734bfa112e43cfa456187bf34c57c36e3b4c14cad0c6252a0cac7f65b602d5e13f011c2ae6cb48a99476749b9aa595bc382bb4f521871c0e38b4c3598e6fb6c31032093a07c4ff96abc42a6254b09ba60dec1e2f1cd0c33de630a79af73ca391538e6a2681e2022d39ed0d389795325add11e6de81b6d307d21cc7730b5ce1fc80a18dc89929e6df77cd4aaaeca5baa863c6f14ab4e398c11f52fc2eceac0c11ef3e034db73895798f7d168893c26aa9ddec2651b54764783c5cb7ca1f893293b904360548cfb9654cc110ec926fae7f3e0ccf01932b64a5cd3ebd5560fbee495c92a8c0f2449be2ff75c7fd63d4f64165e72eed56765bf1d5ecbd8ea21ec13f2e357a2aec8b905fb29e5fe1fcce69738c614cf815180e9261495730d469cf684ccd8b6dbc35436a7e9cdb8311af6900a86b46e9300df016d32d95f7f4120133303385fe59343b9308220ca0ce3fc77624bdddd6b5522741b1e2bf4e812c3d24b8640108acac0a888a4d0e995146f66d17fba8ba88b0372c20a97b42621bc0b4d9af02b1bd915453cfaf1d807e8a103c8e7782954eb59d056fef4daf67d8490767ba11ddf05d7c2b79478c972adfeabb5cf5e908c2da268ab47f36870116cc9bf4fd8b913ee2d14c10e62fadbd65680c5f2a33be7f4626edd65767623793c5c7b8981f2fd21cab21e85fdb6eddc71938d534d579ac005a165238fed78518eba0b709399b8a3d246a4f98679723d1fc0da722676b7090a6d9b2140d6631c15e7b0d54687d15a0035a5da0e1baf64f9264932e1af240fb8e5cf98e9a4dc8ffa86cff2137a15b840adc83fcec4b4297735ef4ba266702fbce5297eb94b509cf1f799be85006344d7d6c3362842235b446878a075111ef834fd576ebe2ab8a787773fa4e37f8b7566a43ba5299bb9be9dd227bb6dc3c281eb2be7e678754ede3a14dd84ec40dec78b276941165d6d291a41ba71b4cdb26f4f72ab2d3f00212611c157c72730529ee474701d0b2d501a3afec238e1fd14cd481060ab9573efb966c4418118f3721e07cc9806c8889de25b39cc2ea3ad61d5bc865d04e079354689bc138c6663c3fa572f048cff1db7e8e56698b1c9d3d613a6bc9c88ceb49d06cd1cf7405cc584bc6f68f26bc71b858e04040921352147629ec4ac6064b07677a53bd05191d2fea1d56427ca8516135b4ac17e18d7f92cd788542c6d9d874f12104fc212be1838d8bbb93eca42449ac9506c3c6b38202eac336ff8a15a595443ac1f0108a5f5466d05b073778e5b6c645e5d07ef0c672484a4edabcf1830bfa5bc0fffcb9d879789330d8941c9231939e6df349f62009a2a6e412b400a1b7f0c766acce0da87c43517e83acde2f864e0523abf5cb74c3c946a5f711dfef456537ce9edc80da0557ba8d7c11a57d095d5d2d93b1392fd39fd3c62f7440e02450fff5fb37f079bebb926b4debb895e42b69ff3646afddfd64bde0d7fef005105b91e573603ca25d26264c9ff900d7dd6dee0c863347b4f87174857cd969d7ec70a1dcee0ae640d41743ea18bfff35c31e935ab969c161881d0adc541bbd334d38d638efb8917fc3915afcfea721a4dcf760c900ac2b818269d4fb069a4d47b618a888c1d804e42c48845a564e16c0e62e62f22d8d8c715b9de87c65adbe913e605ed678b79d397d5902a771c6d4370d042519244f0136cb13617b20527b230ab182786376d3d3205c042925a52e31e8e5dc83cfb4d9de7a1d85fb5e7232ce1c9030c4547c1100d9ee533eb3e00a59dc95003a7a25fc915698ccb6de74fbe075c6b4184a21207c64a95710cffd3c11a85dd6e276eb60f1e58457c4d09116e90bd560ced670939f3343192f06adde8e3a3ac1282fc47504911f22c3edcbf4b762e8a0a8a8339957d2e74456a676f9198d682efdfbf40a04648fa3e6cf4b8ad2f152c08711d7be590247d82ecd31a938c337250fdf6be76b223356d6d14e9b427144ac5c6698cf3b6b3e2b94607b6ff7553b2304773e3cc2cbe15fa70beaba72520294e968cfa18ea70e6f5dea45522e172b6cea3dccd01fab491470c3db046bebe677c999fe47991ece46905259547246b01e1b25901b7244d553d04ec2541f5e960b92290e4b51c7025bb1b37558760dc398433ce1e9900d8cc889286fcf76f87ccd3a990f1b9821a80c736f6f1b575e132fd18efde1a7543b0c2d7eca74c966fbb9ec7b2f955587953e9539a8bc044a94eee2ac5b337e06bb19f3c10e46a66de1c1e8db2fc3330ba62cc073740741adebe11ea0b8a8898e94fcb217aaead4560589c383568b4882cea641422445418c866d375df4bf38991cf2573f27047bf09f57303ceafd2217e773cb90636b5e953eb19cd408e39244d0ec72d2d785a64fe05123ee1d1b39cc2bb00f35748c7c840a9a4110163c89eef4a0efb83c00e332d85ca504ebe439c2abf670cb843e3c3420b9359bd25c551f336a245670bc044064ef00ff5ffb25388347a16f9cc72bb566cd3105c688e32b930423d0969728c3f4be8dd036c3187d1d9e7f0e02556db63e68f8eb34a35a93a047e96bde72af4a9256e66c59d0f94b16ea82a352ae8b0941a554964ac0e17ba62b8efb3caac116302a8a63ee3e27d4992982e275feff17d1dfd4156a1f60c507fc368887c000b0b0958ab8e057069511ba145fbbe49500f327d621d7b7a19ca184956aec8f08b017beb4af8df2936aa41b30623791c27f058aaac48696984df145c83b4a8fcb6ddedf405dd1229375a2705f39cfa16c79827724cd7e58105fed3ec64fe993339accd983c36372050ad95e88ef617741a2531b055fe2ee44cd5a66bf25d7d46235744d551f541f5abc042231f0689f9a3a7945a81cd30cd7fa19cd0d61f4591d30013cf4dd8fb0907ea8788397b3fe3f6848df2e5f0d5c6a36b62af526e01b5337fde1f7fc77a85542f0dc3ad0060379657a316c3dc69206fadc98bb92b464129071945c38c0ac78874b1652b3b1a7d9b340935917a6b2009fd370bb7634ba0e39545d46b4b05d87fc89661e6e5f41215054a2bf38f5e7f8ee87bd77ba111c96f0bbe42e791441ced8b7571f1efda1729430e746a9e234efc6107f4391ca4e8a5f4f3e7fd9127c742a5d8015df0607d4e1872f959f88e34029a6e550c8e8092ac3f0c014b63c0970dd64ffc9906201afd93ab755190c6e84474c834b867ec9efe928c61b638a1011c19eb9b92bd39e43d5b2a6f525278a8c69b8993736220789f38aa51382c2e2d8d60157946f3f14372480141af262d13a671e8eecfd9a415d09ead4fce7ab1e3677ca330ec082445246f2bfdd25121916b967267cfe0b0dfb9da08dfcf05282466e20abd0b76440b979dfd4bf951b48a3683d497ba2683a2db24b63d05dc1ba364e532872eaaefd3b87292b281f020624d75301bb8a37161d28222751b791d3dedf84dd8009ec11f8054907f6e4ec7d17d0f65478b7f89f908bfb39c55639c3ee2e272e233777315b1aa85e151982a4be97542ad0b6d0c6fc1d18d91fa09d6b907d86018b21aaa473fcd74d8b5a8079cb3f9661c7c1b4ed8de0a691b6f69d94401b5c4f20dec3fa10c81906cd14c3525a8ad949f271288734f935ffe857624bf339f05c75c5c1cbd22ed0fd07c8a27132ea94144654f048f86d49d5d3b40666491bc20cd2430356c1869ab33116cca6a4c870ef79c33535498be6e78974f1b365e98bb5183159863c491a58dff474ade55115bd87cb90e024ddce37d244303180e21d3c7594faef318778e2709464f28b3eebb2979f6cc2c863d63e024f65a0ccde682a8a385d7b77ea61e0acf319a05b14fc37ecef506476c27f2864d871d2176f7dd9cb19ec196fe86384acf22ced305d236e8952db35cc2703b314c7e3dce0fdcb8b5576beb779418b02955e4086a5ae05d126dc3e9ddd03ae3434ac165f9a20dd63ecad23b35ad1a2143ed8fc3b6604f94abb0755ceea1bfddbb47d5f9db12601ad290585ca1e0b2ec7cd6eb3a3debf6581f7681b64283bf530ec4cc1312006f8501b5e6ae3c58a7eead34bd21b457b39d9551056114687634ced13fa6224ece976526ca4e5f8f5246bb47ef33d502ff82208463399b502f348436079f7cf8344c0d892ebe50a0d8763ef685cb6cc7d3a7b6c55bb0abf4d1094ecd6eec77201453102bdf1179263970a98acc761b999ea9b863501aa23f736ec88213bb94e6ad551b743ce53311d495777673137d4626778d1c683b923259830ee34c617c32046b4f6ae9df238291b7ea5154c348891f20e5136577be76c86c93af1b9121f0d106be72f518ad97f92702e81beac4c0e591bd55702873608ff700ae77295e84597ecdf1bb89fb3c68865c107c0bf4ace0e1c2d28b30c8ebbb9df9c682f30272bc2a4ac75585631d1434703cd78b8e04e54b64fcff49a9855025366e6d222dca5e39f9685648da8d66adcf8876632626bb5c9ab5b3b3ea2e86e4429d6efbbb888ac71439b4fd42786b87133b4d35ab9a7e8b72b4e555fa08f5b74b5a5cb72db263aaff9dc7863d8ab9d940b03b0d3098ed6d42c617c06cb213c7eefa8759c7723bd0b26dd5768d7c955ce8c0658451dbeef40f338ba07d388522bb72c0aca7d68bd2af9351a676a53c8cc8d508f33b462322e1d78d46ce8ec382f426b9b63fb0cb4f7d0ed117a96cae6f8b658e61541b171eac7f30cd45dcd7ebeceab073726779f98bbd32d5e320d8f317bb5b8984cdc5f2d4d8db7af286b7260cd3f3dc98e973024f8141c5a7bc9306e7c6f45bc64d611dbcdf88f3f425c583bb2d669cb6249ff87ada1c1e3aefef931baa5a8ce91f7c34ed5abcd2f9a4be6aecc74549a299c1f351fb3ec7762544b5f97d9cb65cdfe625f811900d2113a516aaac38de98bd7c0face959b79127127d242c3add145b1456c5f5002d5b1b575f6aaa492054c50c33d616d416d328cef77e4753fc490d8162def305f9ca38f33fb56f597258db0439fbf9b9b84294c381c9d0fd27f360bc47ba815bdb37d0a2c5f4c6173192a6d2d2b46fc894892b1d33b73fe3ddf94ab4d9e5b8725c82c78346360c00ffa39a53e845b9fc20573498b2b7bb55e9ef0eaaff42893ceb44f896022a57c6ad4066deb5f05932a74a59ff12d0195d3af0ddac1b0117c41ed592deeb83f9fc69b2585592cd55e52a6017c41e22cea0ec53bb1048eec4f60a4ed73f7c1fe47c5b9672df1a4c33ab670ce66ad4e7e824a40ba470d1c03cc838ae76cda5336ae2bd0c5b637fcd7d3d0a3d4111a5817c9159baa9e0627a7911dbc9a6707d7f04994456873bd11c010baf8dc2119e72e2522d1d013beb1fd7bc13084fef7af27b3307ba912d0a5195a41379ae2576477a9a60c6e5adebf7b5b81bd7b17d82b193bc5c4f487cbdea3ae2eda60c85ac2f458a485ef3224567c289de3ddcc4e2e76bc8ad96d4621c6b8bdb952d497d8d45b227d94a6f03e93a2d76fef3f3390350d43c86d089e1bf0c19d7b4c625abedaea78975faeb066418f1f086a0871e0cb140437309f4256a1706c093f3d43837d6272a5bf7310ea329c50d3c9eca9b4b4a354b1cd734f643298366de1fbbc416c53237d145aa8ca0915b609e409d562d5dd031f34f2573ed7a9e91896c088636c34971900d2dbe630c7ae44da59f93a3e7a68cfdb7e6f2fc5a143db04f6c6281145c8630c1e647339c0d84b68bad63c71fe0f5b89c7fd4f2e1dc02da493bab92391949e52f510dac66f84f7a24a9de59e2680df209ddea6d95d547147d2fdd90af753c5edb27347eb49d3b17e0db24f3b63dbc5ff6358ebcbc245a7c6c32c21163039e63f2ec18a194649629690bf45539c2bc605291a7c7acf4147f77285eff5a21b51445bbd6971401b9628738c49275acaf6bbd4d14fa9c51b4af6ae7b3c5dd56e88867878cf435c2fc7231d3ec787dbb9ed6c013de5459eb96f9c417ac4a261b40381c7889b43525401d15a56383b7c2315029b3e238f0835751a708e0fd377e0d5fe7918cbd8251f8357020cf3a2452efa98c6de52fb453f5c6191db5b826edb0398b4ab36c1ab60ea816aba6e702ddb468dc9b2c53e509c0f2b372470b7e80bd7d182eedfbc3173ae6bb67c9afcb4563c57004e2d58327868c10f3330ddf5c9aa2471f477f38b28739364dea778b3a4cf62eff89a5b13137e11e7f2f3ffa206dc5d4853ffa5eac418079a88bf6df9093e45ace0e0f2d2e6d7be49e424611986979e6aad10171420d8a26676c61be256ef00646e83cf8302355d42677bf654315a17f7b1c74c71d245a4ab25fa4914a490e6d6dfe51be8bff82e0df45abf3af95b26bb9e6b0d69b3cd101d7272cdfb33500aff0322c8e9426dda9284e428dbf3a91ad9aee1ce057c83395c310a67e1259ef8806cdda6a42294501b9771bc89a3920cd6a71946a56859965175ef23d3b2d01ef331cdbb12434dcae4551eb95fdf80504f849cc3c2e509584eaa03b62e892531d7877f8a2141b8714c383be81238f048b5f47dc9c1febcb710f82c76861e39125bf9b60a9c24dd515c18e5c2314dda490d662515e6f390e225c896e7a01ddf15ac5e8de5cd95763aef9ca4b5061c18560c60d93d5604611eba20cd7ad715a7c184389025271c0a4f4e061819748cca806efca4c57e4411b3cef09cd7f0358a2b412564f69dafe605727c054e21bddec523302d4975bb8d634675e8d14aede1dbaf157335323923d6425b1eb1814a033159f32e6fb34663c417cc62718aa8f3a0850cd5f982bf91ebf675145db15b26b1082c95a110909b173275148749f34044a57dbdda6abb61d37057fa9c17541daaa2e67ab8cfe1f1e893c795950f424da1c402c9a223c1a42fdd5dfa6eb3bf35203e195d491462cc2ec770538efe6c37a3d7ddec5368d1f4227534fd19b70e60be8bcbbce98a1a4d80fd8e5664034f29544e274a10299ebd7a543727edf28994d8cd92239b49b296dc12066ca396b3b19acd9cbf0fac6b7d98d41c2c4d8cd9015a7836d2bb71936578f74c895d3927af73a7ca10753030d18d6f1b993ad4763574c7c5074cad1ea710e19d396a115cd5cb9c23d1040841666e82a86923349c1a27df9c170a2309f03546361fa452f8b294c9b3f711891ee516c6eddcd8e1c849771e2eb116f7c0a9a17ea1c079c4c5bb8b2d9a898e637a532850b363e484666fb0fdf8ca6596080befaba617cc7076552d92e8630459d80e108c617404ed5f236c375df26b5f0d4e7037249cca9915b728a2bff670871020fcf0c58dd379ae3a15e85d53938dd81d3054fed17c058d6738de563d2bcba13027a09820647354aa2ce737ede9edec272ff86c43f67c48a962307b79ebadf009252680b9452a4c9feb29437ad442785040a431a49f6bd108a08c984c4334b1e91a6fdb869ba782539f2cefa52eff8ddfebb50d60214952910873a1f11c89878898e241856ce19447f97a10a61a52b08dfed0fd3d8f1666ad70b2bdb7645a743ae8212e9cb7f9a90b0242d6a1cc7075b06d1119d7ef6b7ffc2238a2d99adc76098ae05aea640e49a092725f9117b2195cb9012684da14503b57489dba976f8d79696b6041f644f0cfe0cfa7d75101811d75c0d3616ff18b7eabb0072ca40f97994c20c126791dcd4f3143d0e96f381cc5a926c7b387b336b20ad5b289dd7c425096c27f4b0f9accc81082f1b39a637c1944bf34ab2356ab7192e6d7cebd849695aac1159c01d2549ea3e1d3bc047bdbcd4f8e872d1c068b8c9875b7251a2575a77dd856adc52788c15501bbb9b18c27670808c3a7209f0a1d4f0057b90cb1c032caa8dbd4c412a7c9518e45c63dac7ae4a9aa295c177397a82b39a802eb9a2aa170d16e7ce272bcb5672b0d2eb1b07ce6c7e3bc407b9339f366e0eee5085dbb0262c496ca22cffbd237665c908163c061a3ac756534ccc5c3ca0e310630f9c0c10f8165b93aff5370d1211d8e8c9c3ead021bdc82018a8b2e695ecba1feaa272bbd4461aa60f89bcc7d901aff0900a46102e646839468f871ec142d32745ed68a0cced7326c445353e2aa12511c8caaf6ea1dab4a6eed417fb35772f11503a0e8333470cf5a79ca7fb2ec175ae880758339e28e97acbc834b4fe3d22093c55a32d62f576ec631c74c1eb79c1df4dabd925c64174e0db985cc4e6230521bb879a41737bfe10b9bf5843da542258a0a327450f30da73c69c8d4c599e197fbf150166bf513c14c54812dae2c83b51bd88ee769139f18aa4064c9241de76e4bb458c1be4a3ab0c1e5a6c7532cedacb3839edbcb14b7c79132e8d0d25c187ba6dd2f957f0a2504b84e53c5fe5de28528d35f4be8a537948cadb5c428e00ebf49aa61b290e888778bfaaeaa3bd7afc0234ef78e68aa353e69d7a8cd30debf3c705ca80f7b11334450a13ff7326e8b6bdc0387d7ab8065f705a39e26f6c11f248d928737e2f32c51d80e5ba9dacbd71d9e1eb00dad5c7053ba1d0782c316f512292b168e82972fb32b604ee32bcc72d6e9b774dce0de84e020c06357a72aeaf3872d99180f6c7e9eb4511c741265d0550cf1fd2dc580f87abf7344fbeff55ba8232ef31b3e5b8e8880ccb359218f6f53dc129875731cf2c4a7dc8f159a303a3f293fe0c4b3de43de758463ac449c8b5932a7f3ef6c2d912f31c6d9d94027a549569f3c8e4014db7563218b7f5c68bffb16f6b465a2f88de1c4e6f555875e337e36fae666b04280e911a4ee505d3476f977378235f874422ad860e7ca1cd73c8d8d9c30571bd6b457db2e7e2428179778bedc3194b745fb5663541996ee632c726cd4ac4c907ee04cc25c94a2552475cebb85470c91085f914d82f33ec527573a9e0cdb2c3e4173cb8f71da1bacfcbe712eaa3c3e621165554126118fba62802ac1015b9405f1eaf365513520a66b872e17b9f4febaea4ef6e2673e4dc0901551c36a9cbab49036fb888075cfda71969448dca5dee69d5f3722e1897df86e3fd7e474f4ab25aef741130c61d6c11bac5606fa6c27da9eba1efc69b2b832c6fa6b55672a27fd3eaf17e26859020c1daba67ae142db1afd3087e82ae1a2ab95bb0eaa8860b8df62469f077f50b17b4aab2ba9265023b0561867408252bef56aa00b50448419fbf65c5828496aa0497d4974d53f6a465268ddf8eae2aa9f5db7a88631189fe52aae83ae65b198e4f3dca94d09097fefd78c7129d36efa01910cbd5514dbdd08c8533488960e87d5874d7e076837f844127041f0023ec47d42526e7695f2083ff78bafece7e4aa762f3d87745b7df196e183ab517fc9ea3c5040d6fa0c4e95ed554a8912a5bf24515b2060e30e6377a80a3712e762af4839c4b0a1209f0a7d66c55fa23f18f68961e64eb5d5cefac3589fdf75be22b39790ee5c0feeb168aea29d97a2d6ac6846033da5b3fa84c8168d8329916ed2d0ef186eaabf400cd24e98cbf9a2fea1751e6340a1e42dc968e84f611150972dbb8eb8fb351f6992227334ee098c106aa1307f60b81ec0f35b68db4ad739e247be3b2e9e6ec1815e4e181d05e81dcbd797ffb35b9b4743d2f59565edc2338fc93c80b57de09269833d62a21a988a33aae547e4bee8184d9be526c77c2b63fc0fe2e84a64d147bd7683c3b19994d3b9824be430483e0d0f8ddbbc665fc32b4328d436fbd9a978386cfab72825627d0c443b37b26b2f0b5cfc90fbe962aa19ece2d3eaa0e60a689b44e96850f0ab5839063106393e03fe2fd4eadf3c43196f53243f9afb3058211d17033bf22253d09cbd21021cd6908a2122c7cd20ac9164d0b803466ba15cfea1c75aaec871e748e49e87cbfc8309c05031231649aeb5b5378e1176f7cf3b4ab4ddeee500d75cfb4f018a074c8f54e8689ff4c02a60a00ae02782714ff2f145c67d2b814548ed7025b538ad23faa5d6955977201b1598b7c21a0461e60d657bdd345f6e2db714e43e2cc6fb8cc5cdf3651b7f5c6875fbf20cdb9fc16f0ad49fba36c7ec2353680f18903d528ffa2b8ba1557c2a05af510831dd0fbd5fbc7eaf42fd2bbb36fe84d24c4e149e567ffff97026d20662b9ac34dc6d51145405135c12add0bf1891dee0e0c19917d85629b82708545502646f7f6c0b28edbd8962e76d91c4b9a0082fd5aeb3ef5537b1e24b3e79291f1d73c07f65c39e1aa6163b7639d4c59bfbf7c767f06f72d8e04670d952501048f40001f9349bac831428e17a92c55069b3afe07397a8c28b0d03b30ff149ccceceeb1fa360a110ff11abdcefa874a285620b3276be2f526108777e06899cb09f57f1d92d1641895a7e572a20fa7956e48b92337b41aadeab43da66c24ef893c1b9f2839adf2e59d3c8ee3becd10ad1d1e4926c8d7d214bb61117bcbd96ae11acc3e7e966c1451c846428d2bebb61b6dda169b79de6d5d9fc8d256a9a5ddd0eb40da5b81cde0cd1e6194725586537ca3cd18bab102101a7c2b4883949c848462fa05f231f6bc335ff837afc790484e18b2351f00e84c5d25894e682dfcaab263a10857672edc900e24c8e0768338d67f124371b2c8a61540e48d1816d807cc1d64733b948cb5932ad62854a185bd8ad365585d6260aa161afbe2f44c7ab3287b237f3dfb24fc0aff32bc573ee81c3a8536d0a3780cbdae33f6f2bc250e2dfa222cb9dda9a0788ef9f7d1a2c3af38801b969bab4c4149c38ebdfbcd5f08810e208c85dc20a75568c3fb5a7fac76e6cd3034e357698731bcedd1aaacbe07bfab3e80014b15d92e9edb4bf1f50e3857e2ec4abc1f647edc441407171fe2aec9270cd6ee1fd2da2fa21036df0b5943c81792f9bb66f143adb3b32a787d2a36296b9f9f113e77306102aba5b9fa22697ee6bd2610af3be0d0225bad94aff3d24ea1c83c0e166bc7a322aa51c3b246299c3fe2f4bfd615225df719a4bac201627fd140698d10332f69db2441f7400060df716ac42e9e878e3313de3acc00cfc0944bca3700212b1121974a65b7ba1b0beb590c0092745918878e19e03278e653430b325c10b5749fec6824a00ea810d1a55a30175c8721c7b6995c6ff01888771d00b2fffe3b38f1570ae110231fff70cde2177c749b30603d804f207cbc15b8d86cf49ba5bddae21f18fbdc71cc3dad2a7f5e45e35f6f1364b976444abb23164f04f6af520e6e58efb75a42aeffed7ceb174f4702318bbe1b5feb5293c25d30a8ad5a9400919e9f150d8e2a3d49946124e23492aac2ad3bd7f7d9ac2ebcbee7b53e357abe4b16ab4c454e3a29ecb3aae09260ac952d3f52ec76504fb08884fa3e1fee28b45d8d5ed5d0c00d131c7e4c0d1537102ec08c51215bfc8cfdd057f9d1e42f86a53f84b7255ab8318957b185d27ac5ea52e2bc523bf5f550a63640be8ba4ebbb3f9750f974291d8bd5fb82bdedd39c47c978ce175844d0ffe99768f6d95ec54066f3c4a0b41bd9cdb70a9733ed64d9bd6dcba9214215f6d58bf2ca3d89cac7f7bce4f13101f4570c20f637ce8bcf1a757d7a53391436147b6025b29edbcfdc56c7bb349666f794c366d213970e40e4a0bb934ff6fcf6eb0ae5d8680786b60c3b26d18575cbb52acb1a3b3b4cda633b31153b319496a2027871183a70b932cba874badf541e4acbf62d6707eec10bea01827d03f0b5492f7051848d2eeaf0bccb758d07b6ff94404eaece8dae299ced13c25019f779ca136bc3aeb3414158d1cc73f99f13f4084c3f4d88aebabe1b609a3599681efd826a852cac1945b77167b0fccb6ae296104fcfbc29b5503e4f39f10d4f80a1e16bb51e1536d8df5e1f01d047e66bc79e876f34b9f4993f5bd4ae67f418d5bed6f4d4bbdff84ffe2e55f984be5bde0e6c13194acf4eb870449ea99ac0542660778001063d8f1a9c795ed8897419b5cc6e6b3c42e3879d364c783cf8e323d746f2f1c066139ae4acdb06ce0ff8a65f4e547d827f611be17ac7b063c220d1170c87d415adddddf1cfb6a679f8058c556a34be0bdaa613a83975673fa1c6156a007f47b3ea600bf29e9e5b8335812b22ffb4c733d0a7a5527635e1c71dddbb8b65dbaad9363b6bfa61cfd4a6a6d9442c29c6b35de042feefe61b41fb073ee56ea365473e0a49ae19cf517937fb636f3a95d468795c2ca3237f4cc370008174e626e0251de7fd244d95c4776d2124b631b4823cabee529a3cb7daead9bd723ca0d912bbc469569b5eaf9aaa08f56b8c248c28aa803f95e7ef4e7915b103e7d1dde8cc1b30bb3a864e1397ee86d52c4bd03cbce2ae00dba01d3ea082bc8c5c02365b7d1a503c318960df78be786a929f98ea4bf1c06d8d00c161fd4e2dda6744d28afa35de92253136bce175a2611e64c61357f35b93f8b2ad4568be3e5d605762c1174146a40b71d017941cbb28c711768bcb05b00451bba17ea076f4b7a9aeed19206b48502b16552dd1b89e6a39dd6bd5dbc175317305d0a96103a727114fac29fbc3db6268547eac0ff35dbe62907847e0b52b4a1e01db2c9c526663d9b47c08108654c2a54fe33b451a0f57cb89869a69be405771812c038be415dd50b012dd24dbca0135b80cf5d94c7f1a5f72eb7105491cf0abddce4f2939cd106ce4c103a4664ac792b3a5cd2e6dfb784f54e7e454bcf5d3c8d6f58382e604e79234ef8ad9ed60ee149537f0d87c373a5843929c504902c672e3b968f60a2b314851684d0579c60e764d62c0019488b6e2a8b4c1bc6637728d38915cc55434ef8095bab12d87c97a8efcf33b007d6175a3df3dae9bee3d8f26ec6765cb8e25a35b72b1967e2307820c1c4b507f32a3a3e605df5729eb50c05c68eac15e8e649f06c88abee13bce65dff99f26b55944fb5412a20df657bfa5222a1cbcf69414ea9b39e4a991d94486e395ff4e8cd10dd4f140a65618221ab6fb14217632e9890de8f0d374c8f8a035f6d31d873d624b2f64314b12b480a8454a0ac64923fd12247698b56c9f447da62258732a4f0896762edaef5b3590f7865afe66586fd876f0f25ac4a039f9e6b489d0e297ae23d8b9a2d6378008f57cb7fa4a4721550d2c81d4ccaf127be65c44578a68e2085022b3ed082225a3d535c4e13252cacd009469460872820acc6a0eb39a81097bf77345883d1226fda2987aa9992bae7615e634719de4c32dba8e3fbe70b34395c0894f62fe69330c87d2add2bd090715546a1160e6ecce638c89010a957362c47a5cf75b68a3ea0f64785d38c483011bd0ac9df09bfe9d3ab7d1364fd06fb811080d7ad2e2f99c9fb38f5da7ddf15c5fef5a3c945ffc9c1a58f59f9a76611c221307149f7a830151b90e33da96c4b0c721c0ed576c8f86c43a0a38bce687a63f832808b6bb9f912cbdf9cc0da70d207df70b523eec4d418609427345e3865e2d1983b78b8eb271af0b35daf4c1c97a0cc24a20f36aaf70880b6c6ef65271d1efdf94386676396c6fbbde74105eebe5b082dbfb3cc419a43abf1f97cdc3494c3fdb9031fdb7662966f393fc207a9f172b2b3d9bfd349a1972a6246235476a847ddb61dc5d2dd7fc015ac53b224a28bf3780bb44c2746dc6c8e91c633e609238a29a1408c1181432a98750a442f2dcf8dadb998b3c5985ffbaca7a6ab7bb56af76f991f834ac09905cb84857279bae53bebe1c3815f8f9ce22b017ae0b35113c0d41bccf8a07637a7d08ac23e997a21fc1fbfdd8cf10622915d951df6f93508324b73b328d3bf644fa1d7c061f9f9c6d7d219458cda6e9a09a38a51ad404cfaefbf9f54b24d6a242805b9eaac07f0f6a3afcc5269caaea0c0590d2476f184b78cc8daebd34fcd9b370e035c05ea6bdcc2ec724da31649a9eb1707eca6c3fbf22353f4127281cb7b0b0ef27f286269753001fc8039d9d9811635fd3ea4c47a9e564b0f4b886e33a78ef169d27a62a340cc3f129e2e619b4062d75d514caeb1b3ffebe469f63614cefde46e0bf781d12d0dc99a1749f867263aea89fb7e90adc8c7d90efa26bf651652a63b22429c781196a67bbb0002faa756119c76cf24286466b0d15f0ba24bab1a9101d03097cd050b804e38a52008a1aa881da3ef3e21015b168e526757214979e6c477ff3bbc1230b9fd2b64df2ec64e626bdda74ab9206d7370b3bef5c24ea991cd1adda36df83686ad4489130b2299d871d1ed6bfb233d403d659a337f645fbbb776d93c4b82d6f4e8d33cfa1a0fb8017c1efa58f7561753c21185103a15a74354095254ded8d997f7ce065543b85d59dfc6f9fabd1d2927277801d7814d08abb1a2ceb3c1b1a713ed54f4ca383a747d9b33205e6eae8d1239693645b37c168992aff6f05054fbfc70dd3f36d64325c6de52acc82df6389e4db67ed4d84b3ab8d7a239ace759855a4ac0ce0bbbc7c743753a7fc59c12204518363b3115cd4c15853fd6170fa209c472ee15ce4acd78f24e9e8f1cdda04972033536e0b1dac726ff30ac8946442f01306fa3cc8b4d25adde9cc2ed1108831e5f9b09ffc16cbbab06d408acee68ea17d161f749f262802d557eb6978b6aa49f61496b42a8e097aa1824bde8977693280ae7ef5df756f89d825e67ae294aaf9903227f730ba4ffbe7bd125eae13925144f963655aefd114b26e1c8adc6b2b8ce5c282084d153bccb165934d7d6c749325e748876f1d92783ffa4dab1d87d3401d2ff10d180144eed8677851dc02ca3597aff812bd58f9904c6bcb98a84e1909f928939fd092cae3901f4777496e9cd3a26fcbbfba3763ec18c85c5996e4b630c6aa404ca32ee1a84d89caec2f4b61374f91248f2ada180c57ec5a8d8ef4ca2e59cdad2c60f96146acb7e30c8d33fa2b5ddfa046c3a62b1783e76f00171467eb8da232a03e1abbfa0fbae01f13720afc23979b3d6327975fdfd3ecf7cfc48d1c2c4815817bae7e430e2f439932c7cd4119ffe76d4c58130d12c49e9d695838c1f286633d57a169d1ec53904289b9cf0f9f180faf9d3c0eeefffa21b1477d34d9121723261cc6c7ddf1138fe710337c8ff8bf8e80b2d0eafe2fefc7bb4e0a9da3acb0eb960d1255ea56ede08f4230510977be58b69ba695045bdba870608cee186d59014e56e1c23564e1e9e1b2fb82e5f3430a7a4973c0a21a857a7c3a70e1fc5936d8f6d8b7328066274502a90430f83817aded8c0af63a76fdeb859cdf286b70dfc105fbb1026c83c1e93995f321b036facb9c2f8abd309c65e349d2a49f47a47138263804190fcf3ca6dd49bd6c7fb91b2fc34e1607a7d153c86b422b5c316cbe2c4fb09509cdfdd2df2756b8837650927c48507d60cf574d1f0b53a58c06c939353d5ba2ecb3ffb3800fec377f1f9d9ff7517f277396bf47824e301c7b521a045afbbfabdf5c0b72eff45167875d2e1a8be5d49d450482533d7af772235eb719961f5a9c91ef7c37d90d6caf0d324ca5a0d1b023e909ad3294d6a76d8325ddb4965b18055021e08a3057d0afe2ce797c5847ee756087322586c97a6a52f8fff46e9ace947de36831f0dce63ce8f17b05cf327a5fb37f1a54e6f12095decf9429eb8cdbc4b496d239706e30f69f8531411067f0ee461ec57b74e7789511712d9e1da0383b802b0f0c43ac47eb6e9a4e8bff402a24a231c2615fc4f0bf3629cd01c4d08eb768a1893625b18f664d42f32293b456c8376a544c7e00221f7488b90fc73dfe40fcaacc288ef6504cf11121b6b742492bc22012d8b0df6026d97cfeb577587378af4709b0be1c0d783ec5a782eb4966624f585f08ada8ce6ee81f171fdde173b29a110b50cd0b202e2e9d3486b8d6f5da56d1de274e38ea01014122ffff303d89090b532bee152fefd495524043d89ae0c9a6dc24bf5e8108e97aaafbc7a7c1523a604b7579b4a374460810a8ea247f4fa1a8fe3877097675dce937da1eb077f7f0e00cef5d5a541801017f24a93076b0b25409cd5b1902f10dd876a6db594bc1190aa481d752c197649ef49fa3cdb60f86ea8f1205d2e7f2712ecf3cf532027e3ad3fdd1934f85b673f1a74d60b15a5b4ea49aa0078c1378daa9693b0652475bd3e43b7563f8504ca47817867f35018b34531154b8e0e851eb015927e98325b05eb310019e6155d38f9337ce374a2434ee20c746cf439b5f8542ede6b6990de88a40f62082b04b5a7fedb65a5536e5accad5a36ccd973b5e5cf98d740e1069025ff0bd12a01e05a6059b550592eeeda50f8624acc626592ca11baaafbf37d69e74b75cabe023d6523c58b88e8d7a480b76342c09b5c1bdaece889a5f8ae1fb15072711dc6a68f41501248893ea669a7d6c0b6a2c2bdab976b613abc06e45b80aebfcc09b48b22269d0eb11880d60ca9b7e72987e67d53a5e641c086f70effa3381b562cc1ae6cdf384b4073e83050792920196ca3b46f0fea7d65ebbaaf7f26e6a990cb25c13aa9b26e4dab4fb56df2a8adba8f0a36f34242830de1aa94703512a4c643e6027898e1184d375737198dd44cd6696017fa17bb51ad0397ed3e86bac390abc77fe62dd4ff008f75a35192d2bf692927340a612b2328e9d9b068303648be23145a2e3261093686d2646d22373e601e8f90852f15261cf47649b62dd0ca150f835d3ea04dcf9478e30a386e053645ef1231fd4b18a963f7ac32d6cfd6b17d45c399c0a71785907b00e4e0cbbf280877ba6aa9afdb350be3ff78c799b6fbe9baf27ae3bb7241bb2d90b5eba4adc817df12ddde9ef0ae4f743c21655167ffb3b43640076efbdf897327da536bd7a7782251752545076b606704d01323ceaf385dfe7300e46d7499c943118897225241ac8fe6fad61ba7fac701acc481d8ee0bb764986f72f1f19acc56c70a6669ff5701c610d2711323bec49f159131d50b9bb0d08c467bff3922b49bddee16c9b7eb91262b393d0086f29cf39089aaa973343ccb40a1cc9af26877a1aa9e17808387534eddedbfddb259ad16a38f7fcd6e78ab0d133d7451f7dfadd196db93d8a7bff5c45b5f1402c0c55f88879fc7a4dcf085d79405a0d9bc63383b6abbe92d72eb432892d8f53d340fe53c3a592dc1e2942ea82608cb5a742983280a787f92cc5c24bf5ccdb9dbb163525f088523283645954ca05c1b13d9cc65154aead33bcbe427fc64bf8a8db0e29126c889ddada63b245d799b2bd40a397f8546c918e129b886d35c786396f8f67998d0359433256053ad1fa3c5e7f2e0abbd55050399f561764a1e1c7ce3feeb775240e42f844ff1b042fb9ce6586fea81d858735196297cc93031bd0e2df58f1e37e42f6cad00a311b6c37128ee8094fcaef6464255059a20e11ee6991164dfc912a1a43aefd0d1aa288badc294d706cea70b49091bbb0b8b1faf2fef9245213fade0d81313c0211d44915d94d2db05db4cb8df523ee4ea5013293d329484579ec1ac2149ec4b392de5c58719f520e04a3051bdf03a3d50e14ed9460fa4ad83c90cfa0818fdf29e619f02c2366a699a0f56abd7343d9971f4ab35e499b76e8661b6aab0093b0aade41e413a1c83e0019a3c4bf5458f237f082f8855689057c24f0e50cabb0d6c229e95e5d2490c53c9cd64ed12e83c9e1acfc83af882e5402cef9556eee79c15f1d18af523a0659a8801bd57cc0f488b084dcbb87eda0b31587845cd933c1c2489274dc053101503a7db593b995f17e351b557b5c2ebd59527aa994d698521b2d4ce84caa4ccf240fc4dac108f1d29e504ab9b718ad36a58635aa90643fe93df618facfc00f95d940aa3db3cac1a9fa6249acbf3f2060d131c35906b566502508a70be752b7886e75b4654cc71e85f4c3fcebc5842e7aa73d61972fbcb51ee6821622767367f2787edd53b3cc2fd928361b90a1856c68f9eb593c5a5fd86ce80391de92f6ac0fb443d880455ecb6def8bdb1636e6eda55cb85c66b3ef8d4f08518de074803d27f5f8cdeb3abc7f23b271cdecbb02fb52e9b70253db32a003af54fb4511c9ddea8432fcedd478d88ba57e4fa8ef3d2cc36dfacfe6141bb7b530afde69d2a817b740d7dae8d0f7b8aaea947e50885a52b26d317491f5994b76042a14a38636aefdd27ed5d4bde9ec2eadf6e803fd62711b6608215db2818421442da3b2ee282dda4bb25d1eddf7b8c52eb804fe43be1681a319dc05c8467ce08417b9bbfad305cfd91c3ebe41cf7abd8797a4f9673c99d0ecac2582e02df9842b2f0dadc5a4c5a70890434d02cdfe09e8eaa71d2f52a87103baf14e059fef8eb3b5d73bd8ad981161440b77882cdf05206241327adcbad6e521c934e37fe2f633d215128c865d5ef25afc21b69eb0dbd3596180bf7fe128bf7f03a5c92b381797c2dc143da139b9c4ef038dc8686752f1f4eec30398ac126d3d3fb92746407eb7d6a4713f00be26038fe7886e9ed7f28c0f1c36c17df3dff46f4acd2c70f07925c64985c1085182163a799f91fc7c8a1d3ea5cda9749becc12b66720e86034f6cc37d2a518d339231bf1289c366fd2c24fd2a7705a462b628016ead0fdcd5a76deae60f5c75350003303b82d040d59bff53bb0b03b05e3dd12531be0cd071f9e4dd30e7f51ccd8762b3e8f358041f335fbf6003e7d12a50cb2fc7e949fa34f6da2d6e69ef3f807627c86aefc7f9d2908ae46a67c1b8cdfdd73f21434d6ad2d65346f7000ccbc46cb3f820074a8ae0daf0a4207964f34392d5854385d84395f0a22d4b009b76156a80e0009df5a6bb1a9bc304a72343fcc96247f2be299b53399238c4fcf721414bcd0c738715ede47c49bec6e7616d9c29b2dfbc562a4ee01a6f39f059da1859b8daf216167a6e635559cee28bcd4ab56e8a804e7345a6c7dbb1ff18868fe716e0a24f08c3f3eb2230ae002bd35824cd66b547c9b933214255f90edcbc34cf0a6771bf4ed0afc326415e35bc5dc6dd08433e5646e887086ce5d7f21fd4a2868f32869202c3a5897852b53d7c69738b12bebf469affa1e7481f1679bde139f594596706bbad15fd12e12a80fc7478c7879dfd2e45a300141e190ad8034ff70517973e6b6d6e88e2dfa7383f69cba4001435460088860d09632761f4b3990d05e7c4f85f742035b6072c428a93f95ed0f48ea21e334a7a189afa21fb29e19c666d3a18a3792363c3d52f81594f0435139b2ab38c47c46b9084859c66c617d04c13a13788047d4a7e050ebb84b4880464a80da0e3fa0dfa0987e6df6d627b9cf3252b2b29467174f05512e4824b3508a898e3d20891ed024341a5980e7d44552a55f5f45e79796b45a15e51dae035a6be115f07d9f1e2f6a48420b2474d8b5127acf0ff338c209a0a7b8eb395c6ee5aba8d8ddc9b8f83d879c0665365a612fae858d4457084be77689f7bc2dff13aff8d480f6cce0865b906189927d43db4a9e7ffb3379f1e1d5b19256d852af137d57975ba2455d362bfe7c3ed5da28c32f85d835ee632ad63df3f0c2dbe864360527f6477ea834944c5fe33fbe28cd1a35064d69a64ee9331bf5e6bb7f634981df4831c0812ea9fd4e98719cce05bff714c05d8fa8dbda173cd312ce9384f4ad75a7b42245affdd4e81d31deb631b4dd6048c12217cc705a912624275f02c2375b584651df67037d089349114e6880f71b42ccaee91bdb73ed07eb50c569ff81742c330a721d4872e62d938de7a6057e771a9f9e5ab2de23c5e50ee0bd628958f59ac7f2e88322ba868c93e65d03564968fe03452cb698b445170f94238118f555cd1382a8968c0561600aa016568ab0c31b5ec0e2c7752af13854ed2e28ff4c6ae0a0720228259ac6f956348c31b60f4e005db61c7a2a9e5bced2473d1bd5e9b2855613c681b68d83fa0043cf3a24501810581c6575f4bfb58f9448ebba416b1d9ee33f7b5fd8cb374f176d76fdd30428f1228c1554aaaa406067c46185a74575d2500c065ef8443434f01483bb0bb06e2826ab0dc4aa04049eba9f64a47b5e643f37b26e514554b1d6b3ee6aa8f0046b96233a3eeada3b15a19df540c4785a248b50f68cac14dd5376c65b20b5a01d2a7580518115234a01280ea2f73b6034ad4cc0798619e5892904c7f92a1aa0c15a1890cb56c4c0e7c98d39a60bda4428ada3abe7da454cbe7d2a50a0f5e3d782b23775f5292c7d5ad3b69bbe2186cec853d009f1ba4327c980532e1a23d4eefb2abb89afc8954d4c33785354613266886bee160a7ffaaa96f810445e2aafd6e3c0ea6e771df6f50278f62c482861b2d1c674422ad7dc11faa9069e69e3038ced94300e0b7dbef3cf3db5b57f2cdf8034357f297a4c28a5edfd9c741a882b49e3228403085a8f52125a250e426f7f764a4062af40cbbd4ac4c9e7737a7774f4d874aeeb1f0e463e1724684c63e659d0aa1229d791c597d5ae95f0aa5409442020086ed9063b7f54a3f4ce2f286bd4bb1042057696f19a51c82fbf01f7aeb57405ec4866f4bfac09b47dffda20663891388f8ef1d80928bb0c24592a3444f3eae42c8c5c1a9e38d6500118b6c137f926bbaedf25fc29e789c8aed020bca454fe47bce7c216079df997f8caf6fc3c8865fc6e09b1c414b9e5231188f9a2ba5914d8d4c39fafd696801ee930982efb07b3c2b94eb7c581df9dedb32000fdf846657ac17db1aeb14ce7c295fef68878160901e6cea6afcae7b3c06e54935bd0fe355b25a670735bd71f2b5d098ae4f18eb50cc156dd9cc589badfaa56776b007fda85514499313a13f9cf24b167d0deb568b163605d415c09153d57b6af829f1834ab90efb0a1d147c25b2802a093fb1a036249e867b0f01108b3ee900d3e0cbc55aede27e85755e12e6469974cefce1ba39faf5f054b4d17ac1571c08966179b0a0c81243bdcfcf9bd636f6c589a487706e30d52835ea447f71b003f592ed34963ec3f9c63d75be071dd4612600da062e956641937996677eed3c43ffb7700a8d051a1415ce093c583d7c767290759b19555bbbca4a1c87d33174aeb66fc5a80258a18714281762b6398b4ebb729bae6b6eb9e04537337a7c9d5894139040bbf0b09dc2f54f944dc3342b160df739ac19af6f3aa91f6f5df740cd8fc631f9672c2b416de7aad2acadef7d0a128263622ea427a3ab0267addf82dc549f0a51446cdaf736b1b3f2c0b770280b0dcbeead3a1de8b93d5fba867d1305b1e5a37d3351bd8fcf5839435ae1002b71f7a304d1e400bff97f3d9171c8204df0495890fbbb08df39664b01ca46d273a962e28d66f56d1f8ee535ebc175db2c12b049013b182a4512106ce14e52b39b4881cc9f9fcbe9cff3f856c345b5c02a1d30146017982aa551e777a8189b8fc52c9e94b9a3215061f68914cc90610391e4efa0554e18714f828d6f1d366ac116bbc15f061077f2b1d8f5e1bcdb5a2d0283c98c15acbeeb90878be9592a2fb13e861b0d65cba556c0de22594b78e9edb36b1b6b82cdc8847761d248f421155aa98381f87fa8ae8f084b15aeb61f92710c9eb2622564e4dcf5c0d899b4eaee256ca82c61c5a42e20aa3fe35bc6ead623a0e23c6ddadd1df8dcb37ad71c02de4ef7ee6fe7177b0df609f56f9d7b9241fc6000f5f86ed9aecc29a8e585470567962d32591f7477576ec310c2b2c19765e62a099facb80f7c9e718d118914778f0307eece0287b7f1c7726f3ff8a076eb12ad9edcfa5d1e26875af01c869d8ad429c954f85f3e021be8c1dbd2669cc51bf8e37c2d7e869abd2abf6ce3a53a6bfddd6987b0e63e2b011a21b72eec221105a1aa088e1d4746135ae1fc0f7a8ba442dd9fbe753af91e2174cb5c9e9eed03df4091d1fd0881486f4d3a92e4e0dd33d3068ca66c5dde7c00751ac5161a5ff460db9f05b7ce0dead6df4bdc0aefb4a7d052fc73cce09502efba931b45a100828d1552fcd315539db0992665bc98271f4784426332dec1e8decea8ed9b6cc7297ea7a30af435445f12740011c37373ec5e07a84b0da53b79ebd480c35e1f8ebe5ed0f7f24be3b9d05a4b80852d8234e40298bba70ec36ac10bcf1afde993c2f1e0898704c4bfec1fbe4a0c27667a20737f5385edadee629377135d15451175b745af1b0bf8d2958c1a5619ad863eaf51f31ce5f86c646c187f167c9eb999e5664c2d5bd54286b0c026518b11cf3a1a6313e7a0a947137fbf8a2bef909c469a93c6608a8c5f7e69e25f401cbbba27b9bdb1fad03369ce258acb0e7ffbc23e3d8cc24c167400413a810689c266945e5c63a150c202cbe4d839f3134a3143cfd212a225de12b4ec13cad4c48a8f1a363d43f0fab15bb9e271aa4962a5ace2ba09fb3755f299e937e6371004df5fd8c5092ababee3c90b4b89c42c2a5a236e27999062d41d7d9a4903eff0c84252c3b45b21d80ed4a92c0f2c67627223975750f588dee5bd0bc7c8aa1bfa00f96b0ebdb28173044fe167ce5b0207c3ff3a102bf934b33d486d1a0f5582c67bec07e00cce6b2930d94ca31146d42b3d46bf54526aaa16ce464da3bfa325f1c57a917edeccd274f196f39379fdaad6ea701d483492238de66e23db12417e0436d668867be191d3fc930ef6f89bf46a74059574d32c6e7216cb7aaf108f86913359f6b1695738d88b7e4fd5b6f9651ce7b58da14113b3899449cd8d698de2dfccc64378dcd0d82c96ebc2b2d6f9ca69654d8c23947624294421ea855ee7779f23397416996d704a0d4e4b27ef181ae213167ee83cc5ce4c709d83877d589aae98718dd14e61b64af84491e392f71122cdc85c47ad0dfa99bbea7f07c7fba6c8862542dde67554524549e9a5d36dbc0f467e5c57a79d691af90d49ed83e90ebfe426ef58d6c353912cf36d1a0b8bc7321c7be693ae87d57bf8817181281e5d820edc129e6cae602512df86c6c689c6b163e4df8da7e32ea9210157fac6959acc2fa304df67e9c5a983b618f7b9ee1da34c59de4e798312bf687dcd9beb0427af500353811142e3fa9bc6d77cde2f8da927e408eb4ad892b9e79313d9a1385cfa03e6a43de7b90d84662c715e917e768d21e77332a7bca31a0c37c2740a0b6a52c8515dd25023c61db5f301238ba68eeb5d6240c9e1de66d0aeffb3fbff240ac54eb96c861f2c254eaf14898815bb56dd940838666caf64b6b9330362079b7f1b2c2a02571aa1d1c64de13060557662f06810e2ccc32ce0b686df638814fb53860d183cf4365fdfb9d7194d2968ef50101ff925918a5852ffcab7254229e771c5eb700c8d0f143d1e5655ef28627be59f0f3ce5fdd4e0a74824fcad8d75296951d81753c0913421085c7ff47e199e940b26c8a89230d82c1951d95c543be4bcc4b61e4dc582c18793006eb7ccc500a6a075bf1364e97761e4d5af3e7dbe5ee217705be3ede9de74f3b524086ec374ca5655033e9b055849806c99eee59af84cf677188e2f8d6aabc1eecc79bca907ca63f98de023d69ef3bbb95239154e1fdb317c7e47b08386645d500e24c32364fef41de2d0f13d1f7c6d82987df1773647bd8d4bfb6dbcef8fe7df21a6d69fe26463370b902f51cc16b978a7b5fd21404a538adaeb790aa04cc36035ef1b788cf02595d06269a5678c4b86a0000276065870b86f6cfd4c07ecb5222b96229105081b30a376f04233bf3cfa0c0678fd66b92e41c15d6f193cedadd8ebbc67334b5e57f0c74b10106711c48bb318d9cc8bd4a3b7ad5decd6da139efc3e30de6799246a790444d2c0d139d1d075b90cee8a55c72424f42d2d1101325742d4a9efc0cb3aec6690e2e0003615ed5b768615e6aafef0b78e366222a6973572f97f960d42fa87a14978b8fc717f3eceb5e5a6a998ddd87e79ede665bc9eb95aba86b8090d44ad9726539d328d61a01ddf7044126d046e09a114bf1d882c3545d08e934848b30b2876820aa388c19b2a5626e3491fe12b15d496e917f8958472b648e84fb05af0d2a96f932092744a023e2d27edec90ba88f0582c05e121b2b71dc1eca761564b78dfdbfec9020f5611990ae4a07b4e052072fcd7948e2ad5c389941c6f30b572f1f87c21bbff54b52b2127788533df92da03635b46ef8cb365e7eda710f4b2fb8ffa0c61cb2f69854b9c43d7dca5b580b44ef66a94afec669737a6457bc64d672630866a08cb5e402617df98ceb708daa14f4a63aa0973720bfa1cd5db2c6966c3fb77fd8e4a33945f8b89f6be80442fd2fed72764db1c3d210234207e6912a52d9642da3ac079e9de6d21078806146ee6e59606aec166c61ebcc274e794488d4e7cea1e49e62fff92fc870cba3cba9464a114e1cf842a764140f0f341fbc9b38d315c8ee588e828f14a38872aa12aa1fbc72ef6dd4b27f50d987525f2d3a1436b2d6d696dfb680ad4a3a48af3eced8a750abf915884c54966bd65b6acc4727e6478b25f117f7f39d59e0f7e02eb0796f236d6a1150a8a7f08d6b74b99b2e9857d808625f5bb3c67f951cdd9ebeb65f678807d4e13e3f40a286c7cf2d4ac8823251887a787bc72f21fd736fafe88347265a1e237f57dd8e149c7b518b2ed043f7c823c7e7a33745db1c33f1da5881199ef010d4796ce669026b535849128848ce7e9f5995d2f7b88c62cbfd8d947249c4b4dfdacc6c174e738d78715b393d010ced33c4eb74b3093ea143a7c885e84e795efd138697bd1f5fdc00fd2685eeecd0d982c904c8ef0c1a3bbd9b398db057ecc82df7364e12aa4a7cd79814ddf671f42805c9ae68f812c745fb791894f364a7dd25603c3d822889e0e960b97ecd6548cbd1799b2f55e69fc8dc7aa7b1bcf2d68291e2482dc0e32446f9c68569f03735cd7949758082724a72b21dd9cafc86b052dcd75ba60e6eddd04e3d364a868acc621cf525fc33efb8bb5e1385936e1a296e058cf799e72c8210011876cb9500bcefd856f44be5984bfb9f139100cd3a835d863820cc40493bff1f1fa7306b8fcfaed325d253ddc7b0cc1ca92d6d4dbd1d33d37b1238f9461af58554a1efd2fb81063966289e7a3fc569e105d3314ed67f06bffa6a6e5dfdba7630b99a1ec17fc7d10b6a57cfb426526cfce1489581ef7d28f6c0f390c87f3274d980ea6dbd16c624beb0563ab04f434eff9b85d8b28b8dac93505475aaf4fa921c1995ed18fef51c2bcbf03f3b87824286c125790da49a6d96446c2b0b867239caa5500603ed24ddf8b778c82d49e95f9e275d3d5fc3275865fdb9d6dc8dfe2d277150d9c6e80165407feaf2b34613083269dd2c56958b70d555fb5f20f57e013cdb844eb51b1befbeaa33fa609a4d6756e7c39b3063082683616b82081ca8048b5b81b2c4e3f8c8d18c62110633c4a2e6685b6759f29635e45294a2f6c8ac86e8029fcb5d610e06e3e0cc3904d701de057bc9e68022273dd370d8e85446379bceebb5503b40a020d7ec77d1f6c538a1cc98a1196244085fd406a3af2cbec67e03cc3e1d887009b4908b4c6a6d07781fafc315c55961a8248acafd5fba523131fb9d49e7e0e9b9266687277cadd255662a84999ee7975c22cc8a1b19d116df6453e5344ddcb03f250ab684095c5e0d31f418191028404c2e5801ffb5e5cd65581154774bc221174da33198ab2ed8b66b28e12de32774ac040e4dbfd6075b341ff4c1a75eb44b86d50e76838d3abe541239f0b62d60bd59b3eb02feecc43e079f016da1c72c0d86339e37465c089a4bd525fe01a179e5ed0fcf2c457757317d76cb931db5ebebb2b53ccd351f9caf11553b08463ebfc103f4f0cd35b7f589fefe12073f7a4a063f67fa3586d370f245a62b4dffc636961873c2f2a76a81f3b21de6eeb3aa147007e895e6537311c31061fd2c95bac2497f6c8b5287188e06635e4e200b45f506109522ddf8281c2749bff15014498fcb7017527602dea8eb5495f283e1d5f96698d32250cc185816e03245ed2a44a25b0bdfb54cd58e1f50bc8bd3dc81443604456f4befc5ed1bb4aab67acc7de91c2c2c1ea6251ff9e3a4b96f43c5c21c6bbf76f400c69d78e812f565b89ba4a4ab3f6677d2f62f3a2c97c4440f89ee7545eac794ee39ba7324d2ee2ef3a9efe9e5a6f2f3596d1c6d04aec6b35e780e327b1339c24a970903a24a1c11ad8da26de3df9151ec22928efa6bb912984c9515465916c915770fa3e57e28055ea150b1bbd7dd8133fa7e62422a034ab048ee74cb36aee69ee81455f8abea6af38a4ebc95940afd612415d46184e1df4124a45c77a86e5358be144f1d8f92016682f1e3a2cd144e9fb8c0bed351fc1d56cc704a813de56a7774e7fca7295ef504afc0b4fa54a8e6509f47881831ecc47accf993c83257498ee8a94dc99e5bb5a505dce3be829fb7dfd2c7745ada6f225a3e27891d41af1fc0ebfd0ea79652d717246dfb1c4d852a581843ace21e281e88f9d449de517a6f60a8f94ef4c7a0dea72ca173e86b2b500f117f1619bd7d9f8c2c2beb4f8b6b78bad202bc9ac59820feb440c0523daed04675a459681c564467c8beb5e18ee51886ebd7c30f83b3c9b95cb0f3e454fe7f58eef7f4e9363ad6e4e55889935c817913e848229e1acc1632a7a7202ab2d3fbede1a902f67a1b07ae93bc19dbbb6d1a3baab944c4b7d1b7c90765246eba3278896e008d6a5ecada0aa91924b5e475f9a9fea26aa5548996a949fe9888dcb765861dc17aba5cdb469ed84f8153994d8dffbef53f311b1081a3a4fa7f30650a0bef7ea5c6e265eec6300266ac279a6c21f1ff1aa9a9c4543141d391673ccb8fd75e4ffec2e0f98287064cb6dc859469106bbaeffa20247bba1f6bc3b4b75df4c2db5ea8fe0c7f19f22d598e223b3ea77c14242330d65003d8ea98d9df3efe8c4f87b36c90cd2cbf9706164dc3d2b9651282e60a51a802e864b24f3fe767a79dd29e43b2ca266df32575398fb1fbe790ce41d13214af4fbdc4a0b0b845a899785858fbf918c49cd47fe5ff60ee5cf655cef7092f16e81a491458d36e7054d51f55c81894642cdff4b4253efa0c93cf27d912dcc28bdccda056cc83a126daa3b8ae7f46da9a65936d4f6c33c8ccbabc8f22fee3d632032375ea8d8646531aa19101ea02fce142db5bbe705be82ea0cd03c3aa903c61498b060050dbed40fb7643fd21f278dbbff21afdb5a4e496a81ef019636d9c88319ccb4cc5bfcbed892a0868aef9d0ded518e854f42648c19312ca1d71189c524b8b83052faf83b19d8c5c9feeca0d2b9fd48ce8f17ac7cd8ceaf12ddeac3556d471a244f3e45c2751b5d3b71339a72b4ba5ca8ec6b810b3a9ac2bb5ad30e7d7d606be710ef48540dea5b1618d09058ab0a796e3f0195de7fff461952e3f3cc4e8dd4dc302219c85791129c9475b01a1fded090bf35bf09588cfea8659960fff13f96d6979099a276d2274ba0a8be46f3066f636374cc67c95a45572ffe260920a0c5a18307ec87943ef78b038b7bf84a5a7516c4f59ff5ffbb9bbe8a7f5bb9f55f69887fa6749545d39e448aa6c0c500ceaa9e437026e05ebf7cd54b164c173fbedbe8b2cdf93694a5805364d2a7f1654024b9197d87613e72351d585c815db4adb00a3af61aed4030abbf86a0eef531091597703693cb8cf4e695e2279456d0f233ac72b61171d815efec7b36d85ed59cdc9d0451e3cdeec90fedc102266c46a8c969e11fb9855ec1c2501d4b3161023f1dfccdf2c9d5e9831485cc6437258e701242e00a21f9dcd6bb04f0d72fd066e080452eac632a0b350b1178ccc1da8888619b63be6df1bce863ee3f783054d05302f72f203c7552ec4078434d1fe4c0517b9a42a416c456f56124ce587f2755efdfad5d3d2925007eab662c0bbd01d627c8f8f2a7adeddd6493e18eafbdee53a85fb9d0d87d559bb9752e4056f44bbdab1cf8c6e5a47713b8d5644869b4c4d8f1dd4a5fe126c0561fe2c5bc21601bdae3988c08667bcde71d89e3526014bf00e0562bddf2aee63f984b5928d4de9e097a2feb6f13bd0b3bb9097239b27fd94c4b5d1bf2687f174857eb91ec5153e3bfb218a2b5b73f574ebb1dea0471429d5b8bd7e6a45094bba687696a948ecf20d7450a4885834be4cafefb5a28d92ac7c12760b9f27b9531051b97cffbfdf3743f96fe069b6ee3dde4bcde7e935394f79f472b36bed7c957d70d269f5d83bf34a30ee5fcd80d6d44b9cccf48978675239fcc58f25d58d34d4f2eb58e4df9df6ecfe40f6427c3dbbc4d55df67093604de540696f8249658587ee1a0f6c805f8abe5a8bc9d8158b0a9037f7c0a494a69587cbb1f677682b771dd52ffd0b93ad9d4d7c2d2a1064a847a6be8532952684f665c2dabdcb91b5b307e1d77decfc9b80bc9f4f9bddf0555e5dacd0f403d9ec394f5c38e49377376d4e0c5550c43bc0b8e1ec07809067dfbbb3f9386a4a58e3c136bc99fda77780683f66318047729b8b1cb5923ec9f4230bda5277b2a43f502af35a0c0fe3637ef41d1a2fa199209f8d60ed9a0cd73d0069fbc3a0276714fc92dc3e37ddc7e183cac7f9a6a886b111e8034a5bf587b780a476a00de507efea3291eaa2616595733598dc7622b7b8523de4414902c84f219795fc1ecc13ad5f6ca5f317f887612dfe80db8df415646dc541a4266f63d1283d3d124201ea2b0b254fc172bbea11bba2fb617f138d68abefe37829feadf4bc18925f2d3b18f46d1c9b8243d995feca041c02d60d6427f384b04c42460154b2754b7a91cef24869c2c70ea648d110ddd607f61ad6998c3eb283b5d381784b0c71ecf62bed10b2a0adf53c03ba505087b53997b8e75afb4bb5d8920a3204a9c8fe849f1e389177a55f02d577d78b82eb24c67dee39585545d665f47a2d6c69d0075251da1bf5f900ed2da729872dbe16fabe3fbfbb6e2c0ee95d9dedfa8cf9e0808387395804ac3df1abe0535278d077229406c4e8000ffe0f46165feabe0551b62f6cf5212742ae5aac5a7ab8e20d5e0b52e3f9292aa13582968b82e0b5d029c4bf710da8305cf463b0c3df89c426f2e5a682917af1ed884a25172cc58f8df0b8283c992b217e5dcf31d063da350cf7eb4a2271eed96e5a5981017155c7f2655b0c26921670e061443c9c720ffcd6717afcad3af957ee4948605ea2a9344492277b6e963ed8dad24e73f83f2a92f6051b4d9cdbd94dcba0a2cc6755104c657973d9c9104f018f1fa6635ead6dcb821fd5ad1f3bab91d506e6c56634c8b5b2c7a541d6d53202373e262f0c641b63d7ea94979cbb1f361e530ecc3ecf4cda18db7cb89b842b28afb440e647d50d0025c9ab402d0adc5544de7bd85d12e69fb8d5999a65b3cfec7ea6b598901930f38e5799b9b0f2e11c83496af39d25b8b903e9a65d3a5c4282b04463429c6f3cdd3da0052bcf216474b90ebc65125d33abe08ac4c7f3dd65f4afdbc5ee268dd1f13e4df83f557b36206a3243806e3353018ed399978597145c9fab0ec88d6f4c9288e79589fd8897eae683c2c63f3b607c825eaf88ae0466c4ebdde5292f6bd2740d428822442081ce4a95eb846091eb012c071c7d8a040bbf04d8b0a7138434cc23f41ab1434aa69427075df5fefde8589537e3fb5a33a6f34604735365f28fcbd9c4bc5ee7b2e198886acbe2102227ea1ef161466be663b8654bc931afc018ffd62d2ff761e6362243d3b1b95220acb054f88952677e746c536e39e779f5a895ac4f3f94a414c4e30d6b9e1606b6b842f795bda7cc8ed79a411bb091af425b4ba48b5c321a13f88c2ab9ef3a44591f58de3a3e7d464be3d7358ade4951f06af7b4837c14f11168540de0376bedf39ad7bd8c3ac1d79daf8173f99a929882e9620cd0733704d9804061d4d9900338dbc7ae4ce4eda32c1b218f1f843e0c22b2445086c9798afd4108be6139143d80ee95d4bc7187ca2c4cb7a5d5763f00592058f57bdd1969bdc860e0912dd88d9763c0a2b0fbceb899632a1eec48b54f7baf8f0b3de119cd66c97325fb8415641a87ac85500f6b80f1de63847a083996a2b9226626ea69ef6f46a0d9298e463b48e8764b4def105d843525e61cb978fe954b365afa0f0f2ad35e95db5f8985310645164cd82d129a8d345d10c5f9ec1d8d639aa3058db9ad978891e3d428b7207e8e7398f601b74265301977cd8c80fdd8181060bfcb7dac8e9d50295e3fb4b8fd583c4646a9d053321ca61e0beec6ccb72739e842734a37fb7f7457cc6b850f1514cf5cdd4bc388ba233c3e6124b96226fc33872a0c60d56a975a85f6cedb2c76c39e2508707e7d1777128cd9edaa69e22a9296177eaf27f37490c344a294cb6a332ad3a8681a32cb7a6ff7426c8fa94fad48731bbe00e6f4ca4ecdcd0a40487d79465805d9c1712923af57599b2732e9f0fed1e784672579b5bd1d810aa6b834f1ddbe7bc2f55d6164dae649d1234d2e2944a8ee3b1265c857eba426be410b03ff12846a7f0180bb62e536662fafd8f6136008bc276125289072d38821510b8011a0247566aa016e82902ca87fcde1248b232da19998c83b9c2199a8c79663b49a0789a9265251524bb9a8347f002857b7312f62269a4c68665115311ea8bff717aefa78374b0f19fe95d615c69f3792070b2f93492a1bb208632eba7f095e00cf9a9fe48e3e98e2c4924e5edd51624096a32d0ca60c35bcd74d088e9f4bce2bf01f8030ee3605cdbd3800cde7bc32b4b9747c31c032f918bfb8c01933f7745087d7af42636a2a710182c7e4f6b0cf3272c4443ac18296d3bc459a339476b25bc546ffa10de5e1f7e20fc86e5440a68852abd7d4e312c0ea05eeeda2cfcaeacc98f1d5d4818cc485dc0b4a24251e47d068a971f5df7a147ed44791e250a7fa25a8ff31a6bed089b03f86f7d4e27ebb09cf84414212075f0b36cff46cb4ee302275378ecf145a3f8ead5393739028e722edc7bb906c43aaf1f600aaaa450cbee9ecdac5ce34aa879f17b7e64df07db275183ac9c3ec5d8dbe25417c66d58d608cb6388a1a99315f9613f565f87b1dc1f0661569615ca3fea7a37af5ac832b2515caeb48918f5dbf1ce7531dd32311b1a2de865570d5707655747225371b51a4b83a53954dfbcedf460d31ddf44361c556932df42aa6e8bb5430afeb7a8695347663009afce0408408d1394375cd20a335948c8c3a3460f598d710d1657bf0d888ac4496b7c46226476a4792d1297e6a6932039804554b33587ff402c613025c32e361083d2926070c2a7f38d690d563976c6bec16ae3732846c4615b8a29fcd23020d3b3ac9c260674b018cd55f9cda1263a1b9828768076dff32a3eea628652bf964cf315c2ee39f30cb13f998d0d945293ff5b72001b123490104fbb8cd5dcbeee317c079b23920a2b7c7b43e4b066f986449a805f96a327c7922d60aa7484279980b2ac752b622201718a22835945f9f9493532277633f040b572859bd52c761de3ac7f6d8e44c2357d3f4360a8980ecce047e2d989c73311471f82dba05fe7c63746a5a3654ef6a348c0bde50f073cbf669716f2e64e9c633d156ae631c4c0fe6aef5a4d66fc7540d0c9f39f492bc17ddc470f657808dbe7fde70372d4e1a8fdb881df358c61f2a4e67886eb9fab61b4d9a620595ededd4dabf8448d16f7ab7636e3e921847639673de09cbf6ce17232853fe5b2dff1903afe832a7bfc196e423404e0d28c4e4096fed56ac4e8f94a6d96ed6620304612504aec0af54e0cebfcbcf447f12906972b86e626dc768830ecaca803445ba86e0c0221e702af33d4ca4a943a2daa0813bfce0f29523f88ec9b48a243935a26d2e9a2651a5f5190c56b8f07902e890fafa2a713f7d44ab9c2126ddb6b82d7801efe0687a2d65dc4664d032319f8ade9e204f018dfb4ecd1d14314a3c8fc1070a1eebe4c4fae6a148ad82d3639435e32cbcac20f4567cb3b9f7703225f87cc655fe0f815d83c2670d5fe082f86de13a10e025175e020d61b5626c78a3c92d62b56581ce1c9b7f028cad6f9df2c0181a852859e0284c75eaf50162e887e11c0ddb76cdeffec6811d1751feccdca459ae83b81e9c931fa3a83bf0d41a3c8df627e12dbc58fd0ecaefc480844d57b296d7ef85516a8144713316308889d62dbf4590e7b9fe660aa9f972d2b63105e8f07a1bb305243a9ba4745c786d1cd226f67ec62e9a355f64415a5938fe08cc860fe9ee80fc4fb764819ecb17089713ba66fbd025fdff4cca6949e4b9ded6957a57783d119da22f954ee173f89814a8fa86765988b20755acea8df8c9d73d47c1f2679ef4970126147b8e7ba367fc89ea7237fb8e3d2008011d55b686dab3dcd2c68abe3097d0364862576fc9fadeb8ba768d26b24e3f249308a33771f4a7f6af2213fe0e37cd6938733b2dd8e39ac9ccd29b3ba3f1b3002f1ad3f4674c3b0172d408c83e9ff91063191fd60efa90d0147bebae38fc0f86acea86d462377e537e3ff958bc4f19b7b646cbca4ed6d5b39aa74543fda272eb9cf33777bf589436e870a500567fd5ac6f16f3bf5b03b6191b0593b9d02b420559c3bef96a779de9bd8284669668afb5ceeb56c0bee9aea0c97b01719ae94fc280b77d394bc1d5ce0792595be550510677cf842466a670dba851f95c283606a33a3c86f13a6a6a112dc966360868526896985dbd57da9ec257acfe109171a9f63f677335f05ccc516072ef4acdef0fe5f67195de778c553093f814d4088473e67e4ff9e40294e88de1d1d7222da75a60946e32a33ee2b230432f58a06d51170fdd0a088318b0e61f16767347e665169bd5f30a7424ea433fb67073a6af88c48565096da76904c8148d3f2110b2f43e00c91d99d638707972ef4316c68de16dc42ea55a4fafdcc790a83ebd83e1cf41ead3e31e461256b9151634aeb18eac86163c8bc52f5cfa617128de5f439d8e0effa41c6cce04fffb58c3716de9a7321ec5532cfe5dae579cb59652160747f04168414042f4a57e3d8865a7421233eeb83d549e94396f545c70ca2dfb60bbb1178fdf3f6eb9496a7471d66060a73b43461e8c8cd5119c344935708c51a9cc6b6367dcdde5f1f02fe904cef187dadb59495d7b27563bdb2bd2676c8e1f96dc7fadd5a2495e529d6858aee682f9bd60fdceb2be182815cb63eb0776266cd00528c1260609da931e3d6a02b4456c7066247d8556bc37d0b312cc0503e72bc9e703dcc84566149165dcef7f979236c26c69bce55bad0f9d9da6a3b8df94934e77acaa16adf4f3be1ded73fbe7261994bbcf1c2e871f91173eda767a043de314bd7db3668cb12939c3d76eefcb46871f55ba54a7a03af6b53d5cf65f32015671bef62800fd425bf36babd2d4053175ebb392ab471010dbc17a95803ef83a0cdbf386ef9bc89665c472ae4b8689738ad906e5b6c99ba9df88616fd919ad04d4ab5c786bf40f6a5e8d77199b7a296117fa8e4303138206c26fc74604d91247e35d7f33d0f4b0e464685d3d2093a439b1b2db0f85af35cc9b09c26a04837f20c35d80f89f6178304bd59e73ec18826a0c20de326793375e9dd4a68103d9ea29868f576abdfa19b5a00ece60d42807d308ab9c02343a89275ee650588f27e2b6100128d4e02aa5cb60a6b66a4a577184eb0e5e619d548f5dc336968287175aa040e56c31a595ca50c5608e959c2b877d1e8cce8e22e7e5fadfcd5e6777b36a019d2620c10dafe187d21746583003e36c612f5e0ccbefc9092d04097721cdb0f1cace07b77c2314cb443282c174b4234c4042bf9ebcdcf3ed7c7cd71bedadd6e24e6914e651b61a9fb579ce1a89a05be11a838e8c5512276869fa71cda36e34c301bc3fe57369403dff6d1cbdc20a32d20b5c7c8cd2bd2c48b126ecc9279a72eb6c488a22663c871fb25768c9d0da748d784357e87a88904400b6e355511350cf50f3530575b5f4018d78acecac8600c1124b24d88c596a67848d3b69bb0d768f953003af2afd9e361e2bb535f2bbf580599b4b0cd3f1ea063b3a894c6347c157dc0fd365750de31af2cf8cf07bb5813e5c378783dc4d2da73fb71bfc978a322538bb45275b53c311ab824a4bae53c383bf1b4a280e99a71aa346282bd85767145091a18be2fe9e3fbe49a8b5a94871c1a3fd1c4a96e7591914c13fdbba9d1dacca4dff8a88e2a8bf0de4c109833e482df91514ae07383b696489926c7ac782147d32bc06dcecfb7f6cd74a8aa8a2325335f946757bc26b81c7800ef803bca2cee1389b37505b96f6cef2c83cbaba192068a382894bcfd5b7b8cc94f85c42b2870fb15d66a4c63574998fe3eee810b4d1e22a943cb3e0422c8104e71564e8730c593b6a0a35d04916db8781d7c00a8ca088198aeb32f82fd689211d64cb69e85bd5494a199103a1260f3d182ec9c0fde8a87ebfc014d21f136af49d08ee1ac8fa34b72f20d6c9b845395ec40389a2dd1bd404d03585d0ee2a40ab2ab6f4a53935b84b11bdb750152ddf8a0cdd01e5758373604b33c5d87948e6ec24920d6d9fdebf91f3311ef1ca34847fb7fb70308384872bdb76eabb377374b73e7cdf1086d12962bcc0e4e8bc3e320a49c699e95633d12433e49b68296b74a096bd5961f8147e414681324c79cf995e7db69f3856e92ff9b22876ce97c20d756072dfb5978a2d3536d0339039738767a7b581ac12d37d847fe543434b1e4dda1743e8dc88e1b185c60f61ee315f63f837979a494c57319ef23cd9cafd85fd4cb777f89f6426400041d4b27f4cf81356ea3c2509139318fc38550b954e4d4c166dd0480962d8995be1eae35d8fa6c068842d0a479f955f494ec9f10e56076dff1acc32ab6b89f0d78cc84583e47e58168eb01f306e12633e177542907394cfe9d646baf62500707084477617054838e678d79b01595d9eb5439483a554d1fe9db7fb0c0edbc9fef358f18d257b6b2e5d5fcd8bd90f765501f8da3fc2c24de1099ce68a0e5e8a3a4598ababc9281c29f5b5a2c0a714881af1a308a8d4da459edfe6ef987a00973ea391b51246c9b0f31bd997fcbecbb3eb0bc5370dc09bb00865abe330a20076203a8d5d2549a74182819e533177e695dd5fde963bc1df584aaf38589f5b82ca1c56269507fcebffe308ee1041c74f3d33458fdbd54ab04aa7cb0cc4e95b088808cd5002feac1f13ee02c4c6aa3664f34053d3914bd459b1862d742631b2bf5e049b9f744e0530005350758d5d47e0cf12c084a3445654c34dba7f8dcd5804bc8182ea8d57b95ee3668adaf244137343f5e2a7e6c5f6856149d8223d9ef9982c3af0a9b4b5637bec208830fe62c6a9397b999b475a17fecada84bbbad3e38359b69a1fef9c0b159849b0eb55e3e57deba200e477e10d1a2fa541ddc9297b7846f2c957bff9cbd387a4d6aba480b47c0a830552c46e80625236a650b519197e490d153230390a90355ac08e3afbd43133d696a25e1a1c708e52755d50661cd08370945d4659b555ed95d79b329173c269cf6abc8fb33696bbd80ede57f536ae3019bc7102cbc586f9e1e45791196fa6c525b2824928a32a67ea2d27aadc0a2e7108441d9e44302f9c98c6e6122537a9f35f083f9400533cacdea4cba7b92e7ab221db9a04c7ce65c121d7cf017044dcde706813c2a6eaa2534b2b5426027c135d07723f6738223d707abf43ec7a06268775bf85f6596741564eec5c1f95dcfc8614f532f4ea093a206a01fb15a68195b257e2a0a5f94dc61094ef3093d2831497cefaaa94297c2d3e43994f511bc6b79cc96ca6dd6fa2881ab5d4cbf410b69a27fee51a7ca06c64c8fe966c4fa56cbeacd7ffd660a04b7bca8473647e1b1a4b0f3b5285d4af66303f0101f9075d1733d2bdb0b8bce631e9f3393fa763c3848ee870ae2ac4ecc51b5dd94a9c1c7854f0092a8e4bee8448cdbec9063c374d1f611c5f0a08e73a248ba6cad2cfe3bf680a089a34dbfab1fa5b4cf66a6454fa4b994310b59cff2876a85b24b0e1fb4acf0c0da11cfcaaf39be5b96ed2d1328bbb1ff0a090644977551512454a5a7d5e71b2058e7f07be49880dc170f6e8fc7fb4faf0004ec5c0b1c85d693a1540ab86088f58680d63fda30a374820663b1703857a18c007a7b9803a20194229d848ab325588f34b2c26d925d8856026b6b8c3304abbe518e901985894659a114150569205d938c7672dda5e73485f650f5c0ed5f595f0a18159ae0897a88e664fa8765a33b6d91b3ae90e9da4722e899e8644ad5e4f14e9ff30bfa4330412e21686de62982cbbc679365609a5bc81ac4176ef4c906ad3534d48d49bff5bc6d6e6e6b712947b4edbc5f26bcfde2dbc10bba2ec82fc23a8b926afd467cb1f3f734e3a3db8c757fbffdf755a3f1a96ab60abda2dcc7ca1335e69685e32a1ab1d483ebd36e5239fd6609707d8ef9104c20a62151ac0bae18ebf2cdb3dfd54f829c1ad477a552ff0aef4c80dc63578d54a385df6c2c03b0df664773344b08848380564e66fc8736ad004d182aa689844095642e8dc70e3a9169fd69f5f8b98afe8d8c2cb02951b6ee2c71f22b376b04a1b12cfbe8f5b5fd238dfddd79a8289bfd6947d89314a1062aa699db9433b05d856a4b3edf372c0118b77d2c2561969c0408df3763baf57e912d2802110edc9097d833c49ef3fc8e102d433000ad2155a2b4cec58f2e709d94394cb800685db04988af368ef1b06b85753a2bb8152efba074a31ad02754f6a944076f3b632883db17ebb995adfc68b272d089a2eadae66d9977c90dd5af294be673e31e23340b91cffc534070657c86d65708a2ced4916e0d4a8065fb8b346263930acce699cb6fa27c7b6d0cf52a231a404109ae001895c335f6bfed10ae6b995c5effc8ac385dc08d5a6c45044e524c5ab60ceaebfea372b8cb364540ce9596864ac30163402b400d7b0acd44e6343d53d6fdec90d40ca7663ad42704dcf90dbe8a419f32eeab6d90b3a3afa857afc5a1e98270e57e4b6671437078f3e621d876bab3b3c886c5a07eefe0fcf7f75c7243ac735de125f19cbaff2c82762bb68e2da84190cc0c91c61052c2fc46f6a9bbb3a21a8e26d8088522179c8d5fad172b483dc9e4d1e5371a8224cb2e0751fde8c595275fcbcaa7d42273d5784ac8118e3f01b9e2d474d6c4670fa211a72ca71115080c98583efcce6947f15ea20b3e1b744003d676fdc2f2e9ec61f2f06a4bdcfa98719e344125dfa618426c17265cb9328d31681c18683a103adb0ac4c2e4aa4d6fffba77a666ca64ed5c2978f846be059bfedb707e522486e95d688ae74c53f922c902e8e254bdbed1d905c8a33681808bef896d14d56b473b3031c4022fb4140219419323c421d961019ce6676c42efd51bbaa450c0fce0670cec67a4233a4f8acfe1c9208f145a39317eee94a22b11222226e8078800f2b904b1cc1b489f7c84a470caee645d6734f579fd353737a75d2d6043891375aa5b96e7848019c9080b3492010a4e963e2493720c1403ccb8a4ecff17a32e7baf0412d0c281b1122b3c6bbe7fce5f34a48e3022fe427a1b6cd39f2eaee65e0aad2d107489555604efc4053859edced6f0c70870c54209116134246d727448825bfb44e6d89e8ea699bd03c29f832bcaf01ba9f1610a03a1630ea7410204fb777e353d54bc8466920a72a07fb627b8074f092c63b7ff9c682f633548b92c529ee4870cbdbf6d0a61a6bcb5ec53490ad1ac5bb4662b80e4a1063f75eb7d0ceba93be0025d12dcc050afdbf0f1b706f156fe8efc1c2721f665ad1b5e59dcdd59823c16a1b0f13ff0e3e6397407972801a9ff70f628dc800ea779881eff14546a5705591a0b1aca643dfad178358f8c749f00856ae0b86b79491ebac4d15d8ad2a48ac0f90d866793af5e8091d05ca29817297c5eb6e4128fe90e075474c13d984de06be5396846c9a41319d6d49c7c39b420cd9148937c22ed66d9311691c40b0c926f8de464edc683f34dbbe19b49fabf09eec1ba0b1de6739e19a3f476b66852ce5560dc819d0dd6502fd26bd9743e41f33355f42c855a1a4f34392bbbf50ef2669ec9f7be9a573b7fc241352f8706da9722382d662414d21cab83348e337019960d1b1e19b868b45065d8a239fc79d0b5142afce9ade1f00c58373b48cfb22769a468f9c840d6e37ddc0682637e543fb28ce39d3458628ce4ea2bb8dadea7fc5dbffa88bfb0db140f6070eefba123c7f84bac4e28a182a9fc5903a87d6fa99254df8a25011701527a1fef019b80a450fac110d7b233813ed91111fc8d103753f3075857a47b817099ecf3094a9f6864e1b8055a365caa13c41a5e424609c52d137f47ce9422e661245a38b014ccd230f2dba357ad9148b7b3dd4aa5c1123809428c66836d3b303454c86e48f5aac2fdac59406dc9f0e966eaaa9dc81e1a5996877c62aea2347382ee0ecf5c61d98675398d8a14f3d7e9a3c6922d25c0707e1ba3ef128eb0efa3b11df9b9e2fdda7bd19ad701cff0bc1208875c1235933b010543a6e378a3b5f7f516403d34dfff751622e936dfbd731efbb0ffc7c6ac3bcdc9ac3e96d1479933e2600dd2c68fad31a25a2b34288e6b221a51926b85cac98899f9f02cef7a9244eab9dcad5a670745c318bbdb07d35a00dd01dfecae60bfd27e7b17cc424480d504843553f0ac76da5c476f068538aef93e3a10400476c0189b9b7b62571dd27a8844e74872300b6426f6e958ab47024c82309a6d3b46543f081fb7e6f3b9ae7b67da1a387d1900a999c5c42cb59e1d9f82724f3bbba8084f973f293820cc582c244582a2d801eb0cea379d8fb6e09b5a8d328638d9b9650405c2a121f43d861ad4691f683e8ce76c66d9e54aa4135a0c5b538c1a565b8ab6e531673b171edbecfa0a5040a551649f6bf4172f21a3915007d2d3dc138b70d449b34adefa7cedb1b276f613d86d9f4f0190f42775a0356620076fcaff6faafc9519420117cf5718564f533ad856964536d9d955217127203218f97bb1b86ea11d4ac147365f6742157825dd02126db98cebce8c34bc83eb521336305dc8bea666cd6447c75085813600c3206a522175326c926606f1114b1d0c0f5c6c6322cf43cd730d008abeac2f0073f4cb5e8e8ce3cc3437b14abcf378ed4b868c6c872df7c3136a3f5c92aee4e832ee07072bcd547cfe992c0d77baa607d4e30f6a0f4f2862b21971d984b934ae397f6075c5a96a04d177c0ef4911a4f18d0d873c684ba5ea83fa28a74bc7c92e0ff2064be5042118789e3795f437125d54ab105dc794c04d3c6e75e8194337ec1f47ba35a94765c5c56950d7ee8dc284d35b57eda99eb6e226fe372a3a47eab81987cf54c0be2c3c6ccb42c856e6cd6fde08005e5fbe192690d812914d66abbf0ddda97e250b6198881ea3f9865918cebc5546fb36f93fb82e0ab2e0fe28306070e0463c1d4a3ee11e7c0bf128af083018655e5aee693ce1a8c5165ddefb6808626e345d2d9e9a7b8efc6b18ca54cb74457505c4614a6796cec420981e3632070e758c71168a603caa86d876eee0ea49f4c49e59a1a6161f0cd626cecfd019526b04a685171bf2775fe09bd9037e22381387b3faedf6259f5316de1214a5a88d2d3031e3641067b49280de2bb113d4b014d692adf122d46a81988dd1eaad5d78ee03a80957f8705861f614ade37f688daefbce72e15f98bb34e66347be0334193dc0a302cf2a8eca67e5068f515b5d390b847f35dbfee9e40b748b034b73b81a387202f20e2d95ccde5febd538a83546ac82cdcd9f1c7272e2ad8ed4ecb4fa4c4f37510fda29898c7764aaa255378c2849bf6914c4defa214a3674fa2e9b98443e4b7f90aee36afaa07241360fed9e20b8760568299935765f3d0aa5449ce9c4cc9850e9413d28e2696009e2b5934def0adf5cc56d56f2dc5e1749ca52ab32e68861d127fec9fad480d1a82ff4f44f2b43fd990dfa6ba589cefcb682fd82aece289b5e86491e4e9760b429f74ac1badbe4d91ec8ababcd75971ed20366ba19240df5b3816d6c1628626635a3a005e47ff60f7551f9fcc38f0abda35b9ff56bf6e7dd22ac468757590602bd51404dec2ee99a1ebac888d9b6bcf470ebd6fb909c32d20a0a320a22a69fc222c9ca8afb3c12b889cc58e8fec9682b40b03db185513d2a67c0ab49067900ae982126aa6f91a64a2bed985a6adbee27e0e7ac7af08210669343fd05a6d65d94b94c94f4de38ddee88394c38969be8dd67263315240aa3480ebcde5ded9b322383243551357d324c9acade072805f6c46996d7aaa45ad283e077b591fea90677b0614468afc9b70671da74340f691a15368c6633aa1fb38d1391422447df17aad9368592b91ab85bd554cbf205d89dc897580a16099ccf1c749d6bb705ae432e0db183a16055b80af26d955bb403ed4861ce673719bd4191c5c2e5e8671ab65f4340c1949543e41c8abd908ad4435c6387bf5f66193a5f36ed94464b715597715bbfa97f160184bdad7481a26cdddee01108742160e88d43731d242a84ab6fc1d12a4722fa08186b7ed152d58fba0c6329ab5010e66233c09843bbff529797609e8187678f02ed1e6bd3101b9283786736fc7f8aa99514d1dbbcab26ddc837a54dcf2115daa9fbe3626d87f09f92c45a063f1b560020eb7d35fa964fee7224ce0e73c3a07087cba93bb6ba2187040df537d5053f48c89f53f97afa8a03a36b9bc3a185534aefbea31a9afd3264c6ef9e957d96caed80cba4f3189307b0cef6ea370a92e8a232163b83fe2b20eadace1e8516113426b8cfe5d98030b3bd67bb586285d81ad77253515fe34787db98c0d21b01aab31a94788825f035e2e13bce0a4c6e54c5966c2309ce91cbcd68cc5d79300bea49460e9840e3b345763f251e4d26b395d874c37fb2eda26e4c8f503f62808e501937853e4af71554b7128673ce292a09201ec217aa664b37182fe3e081a80ad57d93e01c32766b71a8d2fba4ba55e9f3638ad77bf5079437ded7eceabcef438b9fab85f0b9ed50d2bbe7178615f04cd6d852aa1853f448da41c0499ec3b013964bae070d971e191c92a7b7f09809409c86fe2a3b572229593e73c96ff36f5e286e193da6e42812943aa9242399852076d15818f7a90d30c31f57df787318d22751556bc91c95b536bacdc3ac57cb154cba0e2fb0df906a11a19921e957816420c977857bb0553fadf6331da85ad902e84c83e5521074e0ecaf2fa2d5bb74820364edd1899cda5a0d046c2f124223f2f79d89c522ad92e6675bed889cb9d04563c11beddae0e709f35301ce11defe71dd4a120f4b17652f4256c84a63d67ca03870b7a9955e1348577fff935032360f24dfa1a367e78cd5f3156bfba1c77fa9a65d34093c7361319041ef67a0293d1002f252357b7fc78201abe13a25b2ed31d44e8134566441b82ad29c3b047c9c17550652da20d18856c05e5ad15f1caf7c842f451af8585c8ffd071b76ded9c9541d8f74016f7dcb08765c439965e2d2d8ddf20e582be096294a792c6f4c80d5700381078216e6965244e8aa4370510f7a56856d6361c78d36916b77decd0c8138a167cede3c81aa40997bc59aa3e3a0c6a942fa880f5aea63d310353d1c457f06f4e59ff88917b9856ec59e95a38b1aea0b636456c6c8ae8d07ad65fbc633c3d143bc0e7d66e5f2880e0e256d7ce74c9c6adb071ee1a13667cf62637d23dd6340d3b4e3500c94b08a5aeccc6e5f5c6221e885595c805087d1c6619c64a769ee922ed6bc52e6a5238751561d5a5df913d249d450e266c20b5ee75592d56d99e9ece4f655f692049915b38d85e39fd7a13c21ea04909be0388efe1de6066cbb104003f5d66f8d8386f70b32364c790ee0c42f1067c1c1a8af7c5ad1d22fad97ddd7f09ae91e5f0f1ca79fec497db843f9b7d5f044157ea55bfe285b07b8c68fce9a64ef006fc2b7761b47f3a83f3d0eb24c1dc702cb6bb2fafd4fd555ee9483266e312d90233d59eb38a783021fe9d19170bec75ec5f907d7b790e37e1bacbc95b5789a0368d86b532c931f6b6dfdac20ec19e52cd956939d353870538147453b1da4831ef7316c4c282f49e3dc8cefdf008fc47ffdbed0c45c5c330371ca6ebc6e3518f8448543d04bc87c5feeff708c60ce9daa1098f889e1344ba11c6d7a99c6d54d8cb1d29bbfb4b5c66c784c29af6a7a1ab447fe321c82c28b20e5137050945393a07cc7d4cb6eab64497b1430a60242cc892660992d0bf73077c82f4a58aef380fa51f47834326709315158a6345a389c0f691d9d7db2497246937e63e8bb8fb0c7c50a65ab8b4dad026766138f256429794e5f8e8ec1e52aa900db45db6670dcad7611d2afb08c3e2db8835055ef9eb14700dcc3d5a21751860ac44becfcaf9b3515a4f6c27ed42d1532ac54d1c0fe6417f818fa608ff3e64a842e130d9b3f9542397bd516e39eb8146d02dfe9aac7f18db93668a0c35c29bc34221db6ca2248faaa243661d1e280ba37f57582dd047d0475f5f416dec879098da803111fec4946119c26b95e4c320793757850425cc27870e8974d928ea170d4d049fde7f6c49ef9dd87b8fc0db954cd7b66eb3ea4f22f56bad90eddaaee378e0b69a523cc9875cb3272e4fea22104503c552de6d882c1e930c5ec17781b8a007babdaee449630eb3a55e49ec7d26b78b26f7fb09910f9043a1c2685e849743fbe214a7c9ba31601d06c0af4d68657d7857c423668e6fa7983d7b234e5fe7c02b79b8a6995a7ec8236b42269df732cefc2f4e4228fe241df87aa29fd354aa8de06286e96f3396c383d351116f0978e3e34ccea4c945464e2c50b95a98d72effddc6100e31f90ca2bc04af4066ddbe81bd601aa57fa0d827b4273468a65bcadd0e7a093f5006dd9676fe96a42b0920f08fead8af72d35dfc5aa0c9b9936a277116b87cb4cea404bb7a817472351e64be7e329bfc59b86d493c9c634352a453da80a3e35c4d39bf27bb5debf5a048afbf91a8b145a8c6dd90892b1351cb30c110158a4f9356837322875fb64d6723d9a89a79c500a41990989ea6d485ba550f489a9cdd6f491e11e1dac9d9d40f46c385a84c92a930ea17282d6e7fe9ae078f7f96d01443d20f11a97869ccf199d47488270108c6054b49688d8279a703d4caa86bfa48a2b36be92f69808790158fe964cb311e27812dca893a2911c7806e5a17fd21d00b02c96464e3aeaabf10bf90445a538e0e59eeef1c553e95b015423a5dc8de75f97848d5ae31e3bf56264da6fc8bae94eba619658b4d64bbe96552aeb69078cd8156ce89a196b221fee754ad711356d55c9e6022cf6897cb8a8b2a5c4430af1a5c03c3cfb3b19c13a549f375cde1411cbb9bfe63383737aeaf0895984964fd62a8ea86fe304b89817807d52fc24b8589cd0f5d7cbf528081d84ba25a92df3972f0ebc090497ca984e148751fb4f1c847eb7b9a5da4d85ebda369592f49c0ae7ff1ceb1cdd6eac14bb3095d2015f9cdd0d6d2806ac842992623b67af4d5cb6bfff64773610cbee42abc7ec3d844bf1393bb6811fbe3b025afd87c22c60f143e26fd1dd279919e9fc2f920032ea61953695825bf26abb7e504ff4348d770d92d73c6fc4bcf3b2e74c6ead68bca8e74add095461ab00a72b40792fb1e2765a7558fe76798aa5c97f088a50861a5899e57b4ad11cb6acbc9ccf843b9535e5cb603657630d94899767a47430a251bb0e7bb5692936e7a2757c734c3f70936461504ba70a697a4771c5fa6ecb8e634f7f826abbc5940b394731c49348646fdaefc3cd175910b390a5f2560910aeb1c9f68dcab4b5b26975809f110ac6684c44893a3cb3b64f636e8e1a6d4f84dee51f451f3559ba081632ebcc9c77ccc7777f85e9639b021de0d41fe4125778a38bb68c564bdf96dd06a925b7c2ef47cab495b9b665b5150ee6b49ac6502174da1c4c51ca1575dcb3d4b6c11181c602befef6254196d77dcfab5e438b64f0ea72143726dca1178922299011108a831653a7fb3f411d942a1f1bdfd4f1c45fd493cce003d29bf5e511940e06aadf1dcccbc4e11d59fc5f3adfa094b01f69467e0fdd5636d2a7bebb7ef6cbff70e5531638ddf44ce24bc8aa79485110f7552f69d9c24328c7193d8a0848382101220693c08d9d036166cb6aeebcd6be54b9a85bcace9d84057ae6b3ccd82c8b1007c733922090749629050e397b8379d007a6f39bd9f5074f73ff9ac3231c4647ec22c06479264f365307f02e69c50b9aeb2fc46d3d2c2f7769f921d50e56717396e8e9f19a4ecbae4f8c9be134709cd7739dfacc6018bddf30c9bf4eeb61a60f0a5b7b2e14d64e5a0e4fd3d1ad478c4bad7a06b0e374e11da6cafa3ea8c8fb26b308d31cb02162591e986eeaeaaec80096fc5c97d7b9fdd797f90b1f774b19fb297d8fae8f40e2ebbab6e49f61f06d01b6798bcbe52f67027fd921f352dcbe9ed5713ed9515e4946a48ec11b86cce1d6dbda30aba43333266d76c3b7d54d137c549197b755eb29724c690a5ae6f3635f7181c0391c829f0a9b2a6c4ed70a51e645768816fe213ff42183ae5a89537b3123f4a82dfe767f9daed583301213daaeaab0e38574f7234325f6ce3120136b47d7ffa560685ad6f8e4207d03b832d4b535d37fa3e3641e0d6f525b887f471d3e61b0196ad861593c205049b5245dc2a6b14fb09d76ec0ab2ecd44db3fd7f5790d212f44fa6d95a2f66cc30c525afd6bc127810201830e1a9d53ffcc327999f3b18f3a53425363c4b6ca920b4d4eb60b8eb44d09b6227e245ad3a5b5ef376db0f32da4c1a21a05126e4443a610aafe0f2306bad39ce52bbf5073b595aaceb5c2609e029c63b0967e19038ad2d5f159abc5958dbed46dc5c87fd3d6a14dea7b51913e610b47d6eafe696c1927519289226a62affecd1ab7d7ace42eaefb8126c0acdac32b4a15c3491b3433b3b67f4cc2359074b9c0d19b5e3308275ab6db24cf56f5eb94c1c4b11f982bb84d67ef9f28f99868ffbf1a06b41adb5794a2bdc44c09f75b0e9662b86c305d1291c87ea461dff582dfa8aa59a13e5a6b584f39a9a915e78c5dd3fd8aed210e286b03de72ff5fd1039b7df6ac58f9713f514fb78c176eaf4631b09f1be67265d79197d2661954b54ecb9f80745839952e457bb59c2ade814384b4399c9111d85f311161a031b3ac457af555aacca2814c6ab562f58506e31fc661087b9b1994817a7f8f96c20bcf992773cdd5a31c2ce880e3fa13d20775ad2ca0bf95b02bf468f81e2f48810560b5ab0ce13220461b8ac5b64ce8df8443a78fdfceff8c036efdaf03a882c6cf632c1a691aca0bfc48f8f3147694447d91d7997fc677168722e22ff82a6b09f8a5f61fa195661778e54e15c95da063323482fa4f0f9bab665ab739bc102d6ba0412ef664243c4abe6e85d55723d3cac4029bcab67731689d251173a3469d5b27d39c5a7ae0c111f5282a9dc2882b29e2ea2d563d86d3baf46e0a36e48770d857ae018edc85da80b791765350495776c8d629b7e6a4d82298b7a4b63e586f4fdac5d9830911c787fa76efd262884db24ff0136fbb0af67e2145dd2c4b9182935b2d45a56455111a2777b57acd9965dddef6268f5808af1ad431e989eeece266df8ada45963a1c010ad0d5a5f00ac69a2156b5f53ceebaa5222cfeaa517a1e3017f5a3ba643f2f1cd60f747dfbe3570a3172fff2f5c141196ebff2cdf2bfcc8152b5813e1c6c655c7b7328e1c413f75fe4e20f70f21ca6d20c53e35d31eaa338cc7545fabbc44d66f659414af08ff3971e481f2c0e03c8208be2fe8199880d37bee8b27a874485a224411dbd271c3eaefef99b98f1f1f13d5590c2cc8efcc3d4c9b1bd8610f647f44d2119707709b81851df18a48e8766fd1830966dc94aaf250e82fb71aee4565d441d9fb0fc70026b80aed86a6c868b44129a962323f657f1c1a1915b23bb04e86b5270264c1363510ef7153d983a2bbc8a9ec1f90f499f9ba1dd0e97a9e74fb6b9106f2e87a9bef588fe9b10ff37b2a6a6b770aefbc4f3bd5718b28f87c405bdc2c185254f6029f96e10308d235995d29c80e0c7917b9467c9af09a96df714ae5aac41ab71ebf12f7483cf483de2fdcc2cd3a8b2026859b4240cdea855e9bc2b922f6a6d4634f9ab21c7e2c51c5daabd53be9b4233bb44b94cbdad76687d222253a62499818c1f791ab2f4897ae86720e85db717acc2d16e6e7d027ea920caff2fc9dad5bc9a82ccdc0f6554d486e3767c8e3ef51f0b27f7af6e7143315118dcc35cc5d8a310758e3ad7d3e04b0ab2f1dd66d6b5a5a58f2f5307fd703fc65821e6265e1d620cbb1959f794b74c4e3878a6ea8beee20be8c67708d339dee347c400dc047efa86dd10d8b227355057da98b572f53d94208a3b284fca929132ef4259b322324d6968b50a6c1e1423fcc269510aaa8a3ad212b28fa8329a8030f91f6ac88ea721c60655224db39bef0c0c91875a41ed97f6dec02a7ad29f0d845ef57798e3ec60ac475680ae1bc0da53a201865a1f9dd08af78d29bb44b6396dc58f4aab124a1f48bd27737166b3b953f054978212332b14a7090d12445c513022ab081858e409c5e300449e936aef8991f0c7854f5ed6dfe0b1c388de58e900c741302f44ac84da7a07e12083242a076484600d60085dbcef0313297c30c3efc49b367902eeb51b2adc691650845b73abc28876340e3c47ad9cbbb6a1b09cb22f7851f24edb00c099019691fc7ea8d5faf819972e17d0bd09f651164a2b291b4ff515d840cadc70d458d670be3bd4b017162f91a01b84441446134f0fefec9b719e34f09d032ea94e42d9d8dccf41cf64417d72827d74c4412fc462638cd77f82720486b82f00d6d847e1d0d1e956def1432237939ecfa0456ae5d047aa0d1080269733ae6fb53a6fee21061de251648c7f5e4b238181741ba36473ad7c5407be654d46999a267fcf2d4ef32106c4dc2b59d7a3312a67773803d5735ca2d1aa79d8831168711e04ddbfba4a091ec233b4edff520e74309be952439f1d754430afdda31c27dd0df1c9d99aa478e908d62378174d2ee4e2301de97863a606a0a616014f93ee38fdb3588fce10478683de3dbbf381d320789a44a1d917ce0272b278d5eb7737063257c07b1971b1158a594d3d853a7c6cb28544f7bda204a21879b7575c6f6e56486912a8f477216c9ea4e29555d2ab3211c251cfb70ce9cb282bbdc49f22785549a86028f7d2f35d603ce4b966cad29545a347eb86c1a1c06bf879aaf3b15e5a416b006040037feb5d54548973f650c445f609f086d996fa6a58e36f20cd9cead3d8d1bf1a1bbe1e8c8b2b88db3bc719396dd6ec7b544ca8a0f238ec7b3f2cf9c43ddd7ef1aaa69a5f4b92c71474a6b2a2f0e6b8c387e2212ce3f67eef52c26ef5f54eb8310b53a6d69680ff9afcca8ec51b4a2d37e8432fe85dccdd076a9cd7dea110243fd82de75572e5868a92c996af7dc0ae119e10a30f6c854b08b4fe8f83a115eb56e864e681e98acbf0cd8f0093017bab1fc4d23449a54b4c230a0f8cd93747c1e8fc25a0f8fae46d855eb55ec072f944acd482c4708a70a95ed6a9dc95582a452c997497a05dc134a6fb9968b2ac628156c2d80da0d5d91e861af243586e3e6c03d999596bbc30cee22f0becd4d04c13acde240ca78994dc654b52ddd6016eda34f5a04ee0ffbe10c4be208c6b08f4db1060cc545a3baa6df59f11c255a03d0820c8ca08d3845d1856a459f6d22653810b771f403d15df262455dba5036785851a60a557bf840acdf0523ba27a2f805a3f65743302de8f2f6900c5dd189817ea6caac1011f4ef57b47cb45ac3a4200a149af274969b338884effdb7ee6bb3ab075df60c2792c0b7dd73dfc01587e6843b9a28ae47d607bfd96ccd5e46519ebaf52a30b4a70ca801ce43c392f7fbad6fb184f38419e5afaef480943083afc1b027648107cf4ddcb1abbe1f114ca1049d9b697e26d182c65ae51359582fd8f1fff29282e2ad9c3a99d9853430eaea4678d7ac2e24c7747116091b8dad1d28e48bde054f5e32993f1302a6b7fbb96fb6f38cc8aae5666cefd76bf918bbffa74e5a2f6bf1484eff50e5edc743c3d8d446659d66048cf74ddda307d36bcb82167d57547973d12830782e36958362d784c58274a3ea14496310696fdf0277f9fadda5f6a53d171345da221011cbd92df57d618d279a885173fe4e626bb454b7de416b556b697d7a3c56f0420c3b6ed2629615f7bf294e030c8047a0aa76cc9b8fdc09224830ca546a92967218b5f216dffc564489d9080689123494f9d06506a2cbbcfabc79460695101fc5da298b1be5a78f18928a9afc103d6a9e93319d8c0148e2b2f3288dda3ef85bce42f71dc9aca5d960e0db34435e92417feb69ddbd868ea329e23ca569b87e5ec76b4c4f959aaa029a9db0e33c3758e19b8ad44bed73cb82a4a1e81122663b3374cc378fa49048e3805d7ee6ae7fef362d234a87755214767aa8caf2044f1a2150d4086ca4ce81d502a1721bee1cc0c9a4e34571ccd360fcd497126954fed5ab25390f42045611b29846c2fb6d41cc9ea0d052b3807118518a30a662011f13787e070917d6767718a6c885e1eeb1118595cd0b72d90bcdce1247b35a2e7b5002069290c227377e892712f5f93fc62492bff78dd681c2d51be94e526fa2a7f20d771d0ff5008d86e56dd70605355b5aa51369400f04ca655a5891c94037e8359fcb1025f7bd1280d98d016b0142a826899b7d44b5a6a930ef2d2771a3eea24d9e7401aae93ddced638f33ac8c3f8a67a53958d9919c9c264b9b7159345d53b28c1a6999d48f32ded66386b87bea44c0d83e0adbe776f4e471ddbb0362b1732a06a5b80b1649421e2a62c7e64e42fd3e7d68c37676b7b26b127683be4eec3370f344bbaa0b215c3db661c58b1cfe103692776a241f38ce4ca79bcb569a0fdda9c120940f7e3d0711ab152b568447562750b5ff7bde00eadbc33808ba49de2b5741f031f8e4ff206bb4ea5567b266b9ec2d5d5825e522bc1b0925c7abca18d3af28ed4657ca532117e571f1f77fa7a74a1827cd2860efdad35f4f2759ba42850c5b1b9eab1daeed34fcfbfa2b06c01c8f7b22703ce1dfc062d0253dd9fbd18a3722cbd80e51a8cdf18bdc3acc407817eafe5fadb6c928944e6506d4d7e129cc3cb462f3b5f22ffb6504def05711f086e1fa62c615fa71e04b655cef5c6bd145f90d8d98d322ac5485f462c61e8dd5cc97b15f870fa2ac0a19ee8bbbab2848fc5555149d00dbb5041b248bf96cadaf300b4b4fb66558ea2d546a600b9db367126e2ea1d3bf2b6bfe208ea75694a9d201261170c7b56bee170a705d1d5256be4553d34aed6e57b19cb20b981ba3d68f5aead2d7180abcfd9b20ede4bcc9565c78e06751a5948681bb6562406edb688c023ccb13c76d42662e34347936364e5a3d18b67d9a47863a88d6b5f086e98ba56963d6f80279a59b8df787e5e5028c07d03b98e17de4c24e69065be79b9f6b74efb050bf47db346b64c94fa74558a7c6384655d8dbe135f069934b40eb34081486de6a816de89d2f769ff5a2b3d0f3a74c5e7c582894bc6b3b5fa144cab2bdcf300fa760c6faad2242a885a42a70934206a74e99c6af5b5538fb981d98902a8ed8a0ae46c79dffb604a37bf0e6124c7a071e4fd4e4fb8f92625eeb1bf44ff5a341bcfcc04c0be49e5c51b62929aac1e2d840662967111b9e4442ea5617406be864605163e54b9d9163fb1dac3b597fb2e6e89b55ff89421893a0deca1cc547a33c30f2de6ac94f78545e54afafe302836809a88320f63b4900db3db1f981858ec8820ca1b8592c0e5209322e369fd450997e2b76e51e21077c3e334dfcd7283a695b778d5d31c32362dfb46cd6d41fe281f45ac89ced7dcd1677dcc37c5eb3150f5296537a203c1c42e42b440b73d3567b5d854cd9628d19b63fea6912c15412d566e66eabe313215a5fec5a7cfd10123c5dffa82e10f7d066f69ec3e5c5a5b557b805396a4bcbc391ab80a016362666588a72e11ef66a7dd259bce60ecda5605acafb799258ca140d9ec9157b0688501c5a34449971d2556c043d837e93992bd519de1142514879b5c58a5e3b84a70e25d5c70533962889fec4359d997bcc80308eacfcf815186bc0d47b1f3f6711c46d131661d6ced6c1d0fe09059b9627a2d5a6fa6809e969a54401f190d477b59804b9c36882f02010f96c5d4bf4278cbbf3eb6ed98a4cf75cd3fa6260855359a37e77659b59bfa865a3027bc908f8e854176e14fb8f2d57b864ada411841d14c40b758b09202ae5052066de4025886e90aaf1ee0da2c56d5407e4ec265212e51fe2a1ecc63fc141f00de2a2f8e9b7cfb3c372324ea8e9336c4cad6de48d56f1b9333e71f7ebfab4b95595ee606258e8585ef14571d95a4bed24deda45d980cea598ecf095629d78bbdb5fd9a915b73038868a29370ad3ae10988bfa305946089a0f92f24df0524739afb7332c34cb9795cdc8768f1103c298d15fd6216c0601cdc2d06c9b573ca5e3aee9e571d63ebf40d873f995e4900e6dc02b3bf453b693c09de6cae29218f2e1c10c72e6da6e24091bb414c543f7c282b68cd28364a9abe843823b861871fa6c906fe90b1a6df8e823b592a7cf30fea6fbb545d5223aea1d7f069577c0f829ca45b2f2c60c19b0eb4da190bb79329629a6c16b6944f5daf4bc3e091abbb218551bccbd3b382ac6ffb761ca3da0adda889ca2f37501338db66b2cf1ed3d2dddc65dfff742277dd3c0958cb1cb16f696a43eb3dfcc8d418a4c7483a0f879bae9bb4a282baee3d3b5d38f1705976bbc71d03793d9e86f67e6cf25aa486132f4c7aa6b3043bace3c0976b6a065cd0063a1a75ac2a0b33c9fe807a22c49b8324a6c054be96767874aa4390beb4939b8bc4bdc3d64d5d6879d480f0cc4b888294b4730e19a756f1225e0aa4bdd84ed83602583bb104b89920d75e1df2e0e2026698c341fbf761e565f9e87621ba3927a4d13a46d7a39758fb40d789f6ece0c355bd1d66cd7d1aa5c146a91bfe9ab7fb0abdbc316824a539f0dcf63c24c81121e0bfd309834cc3fe37495c1b8cebd99ebd721914d791b1309d13984bca27965a5a956e496937ebe84809eed7b37d144b16c88902a65da094093b7689011897627dc223512ec47c9fb69051977f3293e2b383104b5cb8e4d4624a8c3f10d81c87692f7c427a85d7b3330c051b14fec8511a5d4d4d80cb1ac3be3e2f4daa56c2c71f6db4f57a5ed0919ea2cde01b854f6fd0e8962eb6d22304f1260e3c3e250bd343ccd074648e3cf3eaf699e20f12d93e84951b0a0fa8bc2712d14bba341b534dbd63e4fda6809c4cf6aaa436425f99374d3b1f200175f12b73f5e26365b8b8efdaef187cf4ef144f29800069dfa67055c87d04ba34a3439143a0ac6cf9132b3f91dd807ff55d3cec13ee6079ddabb4e5d61d7878381b6ac02061c8796e6c31caf04ebb978497b91d7488c30c0d8f3ea2bde5d4363305657e7824af728379366645838e70f08f7e72a936b7946301a6a8f7d22f840c6a4546526c8762ac7428123ba93afb3e81bca8efeefc89625c36cd1ebea7aebb4e327b58eab2f88dd0e04231c417cdd499675e7bc6511f59292a1edf67e09c42a041cd9676d733013e9678c3e485b0fd085842fb6a8e070c1036b48ea4deda3c15a189932cb4a449c5628b00d22702c2556f2d2e405772b2b2b45b9f608bf9abfe364aa739b5566ae5bed6036aeae31a5cffb3bfd1c4b76209722053293f8e2b5e88c57b529e90b4d7cdbdfd697dd162079dd6e65f6e150b92dd08f394446ad7382200772ac5f315a333af5b599e2c73159d0bd63374fcefd28fa5a637fcfbd3ff2a5c2f5b2bd088d562f3fae901c0db9f93e4faa4bc9b700cd9968bf50dcf1954c2e407d7af24bb4f0f8f5df94b778ce587b7bd2a54f973d8090e2909865e3cfd79324c4b3423701b935620e505c03db0a6b1733e0ac23510e710994b2fc965cc36a73b2f2b24e598ebeaadf437cb1db8fa78adae6dd979da360bdbbf464af7d387f9435234e5db412399f4f58913791d45dabbf37a95d23916ab2d9244d2d289adb84759443692ff83185ddf667453688b72763845b8264ab08fedb52a9cdbe6737599b93de4e2e5dc1ac5261dcd8d2fb52e462b162b6e4ed44033ac2698db0747e0887f0e7669ce2f957587bbbbfd58390cb27280fe02afe7dcb750c32206f770ed97d3f27f62e6bf0e6ca872828c8c82849208ffe4e34e8023766f8732220d28b393110da75b06f7d3644d65ebe01a799f619f6b65a8e84d608e189bd47ff56eb82d0bbc9d17dd4eb698ab06396c3793e795f64cecb39f68663fb43c86d7db013659fdb6e4b0be94d3fbc12a38bfafefcc4526a6fe8a17f74c5c4661f8ed9c13082b2b6fa65de208ff0a093c25b0fe2b7e6d8f97ce361fb9a98e89d7579b731e6540e1a9c1f2b5b62efbe07e562f87c608eb50a003846443b9a30a3b732a8387c4ac5fe8a0d5d392a3036c61fc68f7cf4201372714cedde6c88461745c251ad308c4fde7955ca01eb6df229ad03e372724558f4a717002eb26676981af5a0a5fa4d768075234dfac92289285dc613921382e835cd693e6d6bd158ded42da76dd6ac41a301d76701a81a98f2bc9db581767799a6e89029a1fdf841f5d49fc595622c44822f065c27f8fad4cd1373158ecf6a1524ec9f529f4ac5199521d3f83eb34fdc100eebd92b5327ca20fdeb734b7c24ea210e747d9c916b97c81fa056020138cddc2ecc471ac1f96c85a92a49fb5005f2bd7532cb6cc00c99efd1a2cc819f705bf30e1c93226ae75ebece0d4e685af92e983aa59d2098c800548ab217adf42d72aa5701133bd3eedc970e3d34da2e8e0a3e6f8de3dc540f6f49a0b4180d96a719531f904d81054c2115f0d76d67aa1f033ed151ca15b173141c8e94879e42936fc2e470541a727a10424fe245ad9c22dc1bb03a83dcc8c4f504ea8688a19f410ac073d084747104fd86fdba664d54f680d29d2abc28cd8b8778e1fec3c30a9f157cfb66ffca6baf3875ce90042ca69e26b38633ce0f631097767c1a0e92cc67c404bdb7c907865bf0dcf52e47bda6e65e5bbc7b953184d1490e09243b4cb6ef19949606c48387e2d7e9ea3e89d2c4889768df1421a5470ff564e7702eb48c4ed5b93d64ef465f6f50aa44d9d3a6ef6e13059a3eaa145569ecd31b6e176028543d9aeed4430142cb47cdda16016e6b47356e55fda45d4a506abd0e34fb2df4de421d21537d5ddd79ac04522b076d7bac7533dd6fc4818e724ca93f2d06eb5be5d0caa110d0948ed408c6ee2335347e6894fde4a619b3efcd4ad6f4e5e405876d81f367831ce8f0bb3e99002d0679959b254e41c31bf8a829fcee2c6ef3a157dea281ffde3853546811139cd5b34e1ecec1a6f839c9790dac2a7d0b49004eb1dd4028b31c403ad0bb432ffa3fb16deb8f3c9d89d61889cbe47065d182b03faf0907a79c9d008fecb0c879527ed954456d01ea197e2a7aebb55bf3f3c4a5194b8acb65d0c1638e76dcbec04fe85fb01bc95ce0aa34b0668ef78b8e16e3b4e916aca88f3be5b1ca326d5b6661313b035401f9d324d556dfbd51b3dac77fa227d3275740480667b1f9ce64c0f83af867daea32c5b91f4a95316b8772145e55eec19d84cf8980b327b5ef66063c4c52007f8d2ad6bc3a65ce47b1586c303d88b9adc7bea1a92695ffa251ac6f0ed6fae348aefe625b557b84745efea6f0fc5daf6b99563eb92359a18860be0afd0db816da2b7dcccd3547e597283ea413fe45c038fdb7841d12098a6870ce768d1b620bcc1760ff3f5e5805f9c2fb194496403e2c0e3c2d3625c5ccfd1ecbe2937fb0ddbd7b187469434906ce419a7fc84b6095aea818059da24cf94a2ef5b78156f57744976c6ae7609170a5a747861a555f360927e8586ebb8c02963df53242e6631373834363838303633303638 \ No newline at end of file +2423313233343536232433add89993ce6ca7b059810d7ab49be94b7f84ed6a219f6493576628836fea2039f141f951ea4149b1db4c8eb9be48d4c9c0d34160d11c91d7142c3a02edccc2495225272192f40626e3feb7925ba84ba9a993fa7eaa7efcf60f50f71bccc44187957ac67d5d85676a7faee1e10b920291aedc53448e0a553b9add7373b4c98b8411022f550a842e3f90bd642a595b769adcaf8177547c12b0d056776bf3916e775b2b57df7ab031298f8ea04971b327559192f65fee95e3c94ea1882a372ecdb4609cab67459210eef4edbf9de3c17aa4f096464572c5fcbc9250baaaaaef7609036fff9493e652826ca31045d637f492b9f36acb491c4395672607d84e86dd3fa0a0383b8bf1fc2880aad5841976995f25ff8bbf469f6db6c4a84e30fefa3c1e31095450b16f880811ce32184ade4c957631da9ed4c05f116819ab1e92231c10445dbc0d4a78f2f52116fd24984d6549805f15166c39b459f733efb894ece0f8bfbc2189487b680e818f5bfcd72bc34d23b95e9174d8ca440b33487c1586ac44c1190dcdf30fdac64b441f6be9270483ec2f4e99c38ba6ebc5629f5ce9287d3b38fabb832ae45f3bc9fbfa0eed6a84ee53b57fc63281b86630a63ba008c6414d7701ea2cae4cbe386ad6dc9c3ff2ca6849a8ce28fd4de308100480b3d25be6a7329e7dc2fae1306a9d519aa8a3dc73ffe95082158ab6fe1f5c0a1af9cd7dba402bee2985bbf91e5a3c8294dc01dbf862bb84decddcebe2529494d071ae000acbfb9a97f59c8f316ffd558af5df19e4460676358879ce13b4ba9b4184a913f8b1faf6e0eecd1f7e73495ca8aae9ca3bbed4033a7342535796cdec104871278c4c47d5a33fe384711f5ca8bec5bd86d9031076d6f4b00e71301a235d8ca99372f992f95088d076c6e98c216f1c8c547d69ac967c77fa65858fad53c6ccad9063ec289bcb0c5f78f69171eef3a98f1cf7f1511730ebce9210211ffdbc8c47d6c851b5a3ef2a3a2564c3e03045e7d402123297415cd6721c3956e86f97f3eebac15928ceb433fc4fa3ea6de29d7cbe46f5ee73fd2ca28cf0a9150883fa73e52d525793764c09f7f5051ef068ed33fab0c9753c5eec285f0436e662556758adba8e159fd44a37c93973f5d55e5263c6109478efdd4bb8855cb5c698b8754942765431555502acec2a864d8863b7b743578d58a4186c4f0847ed649a66ce4a4fca3a5233ae9b2ab3494357a61742d783fef8600c9d1bbb046953d4dab11667b242a38881d8d38fb9d6e744fe13dc402e2add059d092ff305cb869a08ec0e26356b04b15e0b5d9ec8f365c6c572740150e7dc7dd5d124ed5b06205430e2430d0f6feb60e101cdd8b30ed001d6717f0a36c1884b73f0f841bafd90ec9c6f2452c66acb3d011327f508aa2896675d63cbf069a3bfd2b858d215d5ab6b266c5ff24853d192471f02651adc575ab9713f94c21392495e692040728f1a9aeb81633fe04bd2a07e6a39270b52d0b7ae959121b5b8742b046b82f6eead6a2f0e7af8b116675c06054be3483880534ffdf159cecd71aa9e00855e298698812711bbfba2bd72b7b9861905ce20beeb77bd3835413f30fc9ef2bea4d35acc614340300f59cea43379f6982ea15aef51f5896af30a147def3b1ab818d68de2d31a726c8af752e91074ab440f8655f2b7c8a754ed22f69c877170c74de16c3cd3575560634df073d09f3936229d02c62ad722b4e653932900e63e508238c612e2e53a1d5992f5602c6549a3777528ac4d8049cf85d263b9e7d8493ea036fe9ff3c0f147a03c4dd1717cc1a96df57aa3f11847743797bb4aca9745abc9467eb613755f0beaaa8cdee87c57073f130c352b96ec5177ad7c638ec4774aa984b200081b208a2688f0cb89c8b012027b0db308b0d8abee4d6b41ea322df5e18d7c6c5774da6d0ef35ec6dc1980c94afd0cad19405028e159883d31f4698e396cbb288bdd9d75f970813742d833a6aa700ceccbcf6e9662289fa9af2ffbef50c4fd6c90daa8c2047f9b9691360e0d3cbef7d38e0b07cb38b3a42b00680b174d548879dc28520835276aec71cc2f2a715b8140e93803b1cf7791fa40ad32d42490ae50bdf2e885d3faf70d2bbe3616b355634d5737608a99e12268237a9d126fbf6970426ea2c686995b53679491682c7156b83f2eb05b156549c0cee64e62036d734e5274a8aef766030053bd8a8c1875c02e5fd7899ab55e70853cd9d91677c291a80751cff208ce750b2f4759be69687bed6a02156e00d5e029b9de6a2d9871384384db73e49c8ada174c01e9b4a383e02aae501045e1ed8ef7fda016d42766d3f63e4c0097820d0342045beb7eaf2e30c6534d38c790cb8a30140bc8cc37879a3e5fd7bfc773d4a5bf36c1d4640d4c60f9b6912eede5cfb0455d866c0ff6a3a85a22dad5d23471bdd7611663d2d88081ffc1453206f630dcd118f45d0a4fff7c006bc8df3b9c54f537d8492e27905cc5ffa0efe1b592081f1a3f4fdb8ef4e52d728a0f5e882a9a86cf6b0aa876610664d549ae837dcf0d64fd6d931d430e20604e41be8f94f688714e8f50df3967ff6f38e07304cd2ada3edb9626a8d9bb1627a4c517938a5e6a8f63c8f7767310d082069b2a63bbad6d3a69a95d1b906b9e816e6b0254477d1ed6c81af5656407b7246ab60e0dd0abbd252884e25ec8cc2a64fca76e0de3fbab9525430a77a2cb6defacf6cfeeb31f73bbeda721c7ecb92e6a487253a6f78180386318b37559e45204cc00f506f95abf971d8868446860ff152db085fe71463b876e367f9ba8d8e0297d6b643791f1896e01bdade3db8ca9a39be28809cf148991ce8993dd9cd1b209d7045f9e7c29651b058c2a633cb3e8d5f0cb1ed17978c3d842f2edecf506610d714f26d9aa7db911001edf8f87524a92ff02e17114283fe926b32f3f620c39ae13b7d200bccbddde2ddb70ed91312c19bb127bd63720c2baf061ef9ccfe5c31c05fef774da90fc16ba4cb0fc19ac97a471038b4ad66b0bdaeea4f3af83e1f2272383e1a2b306d0fec00d44a7cba8aa418cc461a7520c8bd99808e19ff1cccc6008b39f394092752df426ae9f774870fc1d291980d8badd2b5aa201a372a6bc7729e62144647a0bb0cb09ba7effc657f4e234d87235aa31bd747f75d12f2e81f68a4bda1fefdbccc60f839d81dc1f4b804468037bcc9ad6d9b6df724a7c6aafa2709e07048edce44946cfbf2247c3142403d1438fa9f30732715fe1dd594828a7b436fe748d302f1a8f12d8607c1c1adec9d9fc7c21ffeb7bdd259ecc85a112b33be971053ace0ad4cdbd582763d99a16545180100e26e8d95b45ebf6ea70144ba4753c8f6f1a2a90620f56174acf56496f29892ed1d39f47f8703afa24ce51d0770cac0a00b6aa4019de1dae5efab3ff172d5d5cfb019f2e25983300d84be18a0da14be52b0622b0b873ee62fb9977d9a1a4b7f0351b9c1456f6ff3330b38ee592c6dac40a3ea3a51ab05bde0706385e67f21df074eae7db121e6b311e75223fb75651b5d4d1e3bb39961151448cd2748d60b3228f7f889aa504293e6b69c7c98a864d50f10d1d2634d75069660fdeeb34b144fc2611029ec1eda098a9fccba443af83ca81e33b29c970ff0e91a5d8bba778e1c6d06669a18369fa952414243d59afc8f1f8055e9603f65e13ea096df0967bf5a14bf07d8b928a1697a07f040cf251992239434b3f833447b229e442209ef1dbf14ac04732772687317add2afba2456bfe81d0ef2fc7008e540e4e61e38a0d4ee297cf758e00cb1a2a7b260b82f51c1cf3f1377966f67996628f984bee8d15d8777c26c85ed2de726a8f03dc024ed5beb53ef1454e2112607e2b627dad69d6a0e0acfe76d54800df7f4eed1f07276d2089f8befbda384d3fad448bf35c8b9388abef48af57f112d4da773b795d48b0e31e94c60848975da30bc90792cbe5c48b2ae2a3b799784eafcb89f4473da1637e1c1d752eb6bb93ed4267e1561f28a47d8be8521be75fa5969635547df46a37fed953c1e5c4f8b4a6104a500190e6c0e7bc01528b3da3d20426517ad80d2efa4828aea913035a002b7d3f197142dadacd74cff94a4df43eba6fc3c45c5fcd7f60c7da184ff7acc977762d4095ed5da9e4297be090c0d4254c824dc1fa6b836e6f52c14745095307293e77525f4c77a24d74e17ef262d4ebd4af77e385ee68930ffcfc360d74e5170f72bc527367c817e864b4be69b2bda528588723cf25b39a2c3187aec9d60d51481483c9bf0008367a1f806fce46daa999baf0c266ebb46e30b2249d83c51545a7abaf798a54fad03187194547d2c01de51bee87172bd0746417eb00251110a82dbff92b3a909f935ba307a24efea4e12984cc118dc21467855f61d7829792e97e0d4597c479e8a0094472a67698c3808de6a3cd366a900e27b6d7d61fca444520dec37cfb608f7844044312b9261ece3b8464ac8b2bcb5f8ca5352484f6ba6f21fc9a2965e36edeed51982880b3b0577f2d44c9ea13cc72d28c6cddc9d52fb862e4c58ef42c55664ce58c7801415b8961fe79c5d0c12473da387a08d93eb47a9c3613b0eb234e8b1f143d900237b15ef5ec23e547dfb7c94a715d3d36c1a7e7a15478287761ad69a08ef5371f2b0b92c087f7badcb622d0ae98806fc550d76ed4a13dafd6afa12fc5f26763621744d2b04d817e42647d4b649194a8f14520de0117002e6f4fbadbf704e4dc6423f2c6b1bbf890a52620fd4976e85cbc471531a4f0ee846a343f7bc167ffb9789c810e172b1abcba1a7e18a0b09264d9b889a5de1fee03edf48df2ee9baea837856ef7cb1a7e8f50c965cac39c017acd4840c90eb9f9637f0935266ad8ca2e404ee3f57fed620f94ef8b5b01e788e19687a350298cbbb06b6926b9d05f94406d8736f53600610d259f855a57c49fc4056731d05c241bbcfbfae04c01b451917d0366191ab49d9ee0467e6696e4cfe268d6cdae99fcb8d73ceda1fa3fc95c4be2c0b0534f0f3db61b7f05a58c27c71d6b1bc0504a80e4a43cdc7e99e9208c023b8af49c4aa2f949a61f834fe30a4cf10052d6342a2645f203d35e97a812e3ee8a136bd04306c023e18e8fd41ddb5d5e61c9960726f8d3c6ea997565fef0b696249c5b628ac8e0d6b04ca98ff403bb56371c347335d89e4f6b91cb6027ba4e62a841dba21eaed6689441735fbc211461ea74b702d30eb38e2364b33bdf8f9f51f19a3119e4d7dbcbe2322291a2e8a959a07ad1f60aeeb459f6a5e49b3b85fd8ead135fd6adb748f0e402e8d39b60e00112fa70e57dde943e3547d5426dcbc8ec6c92ad9fd58c91385c8bdb947414393881b42865a0dc31686d8e78bb7aa0d8b4b6fa38437df469bb852be7b94b4b857c58e07a5736b521722ae383e79381c7a594ba20513b457e2a06f50193e6c47f71b5b6b104d8b63a5a35c2deeabeddb92d47bdf7cc520f5f9df70d9c801337a5cc5f0294009f4f563117a5075cb358936f5d74f58f1122cef5e686081a2816073c3d6c58ff8f7a6bc58af1b46346f60b61a3258770571d824a42134890bf6b1cdf5ca7573fba7f06a7d0fbc3001283c469b9cff9eb288d9cd71c6f517cbb6795fb679a1f539a3650af2d0ae1e4f303dc053536219e02f6570784b9f0550c0dd0a2b06815f3a7af25500108c5ac6543aed4f3b316c5ab8f592df24800b74870dad88b86c9d51b19820c40dba8ed67f37c5a9be62460ea447298cd60fa3f9ff37f84da8c2147fff5cc136444f0027000d622fb170c660331797ac8ec09d45bad8e7e2700c2d26716d5c9beb48964c6b114aed05d86c10c370bf68c66003ec879272c54595d44181d42c6053c426a794258658c437b0b3b89230ccbe94f812b66d2dd1403d19d397c976bd244c01add738e592ca5b34232460279eeff0e6e4fe96e6837f6d01bb73dd6caa2a55ef962937f270a02b30118c29ddb1b878a99a5129b9bf9d41ef3fce7f602d0bcfbcd1caef5ef41389e0398794dd6b1965e69798f481946c19c303ff4f74fb6289f5563d40a1a7acd1eb1af43a23ea45be9ea4a38d3e785ff167f40ab9a782d386b8644768ec1b352c494dd5d0c437181365db9a7331e75177463e77306c9aab3d849695b2269b71db2720e7d64c8d50a4cb0bd335fedde47834e7e75372cf4d36c08a2d6f4d4eb97c61fc53ff0ea44a5b4bdb26d641ba2d4bae6f026cc263d6b44b9c22f30db74a0163f03ce9e57145823c2f240d2233f8b10a2868e2ee6bfe1725905577ad1b7ee3f168e6cc2482e726a35983b4e36bfeb339687d8cda36bbea11d5f74dcaebe5283147999a7cdadf340140ea68a34aba50d0390514425e80d3e9bdb3caa3cbbdc09d15040ba41cc6e8fef9e21705952211d257c146b689049f835605866e2023e783936723c69679627a13c92cdc4e02294ef95ed5f348e8e4f24646c79cf607a0377d82326bf1133ea497439941bad638240df597dcf81c7668829417d378bc2fb53f7de99454bebe116e795eb13725209aa87ff27792c191bd41c90e0fb5235b0de14b17d58ecfee846383d838197b67720b0cc8dff9637d2d8dab513f746dfaa2ce87c565ce999576c2487bc80a1f3e9996a38a727ce800e1ce7a79a634f66faf9090fce620286781376c2620ac5f41f3568bfae36a1efb30e9e72523bdff2c919c379fe69d0bac5c17b5a356471c11c59b67fd2372f14f838797b77529009172572462461e1803b7fbf49ca0d81c6d00fb5613f0a092e456b15992652fd38d304eee282fb370816f177b2490c7d397c75b1715ad39cffa38ed2238a64ee94456e0433cafac8bf211e58c37049d764fbf42123befbb79d5e790d648d70c3e649329f4edfb2720878f232b1711ea77ef8d24073678be1e36046669c07e06b133fb96c7ef7c390bb4ac057da0aae4b240f9d66cb614652d117db6b8f8ec2c5d25fafffa584be135163c56d5d3ce7f030c0475cb4f70b87e6f4e50d3d3dc5942c6fa8ce96ed66844b20a135ac015a040c6b3b86d9a9dd6f114de3d6e5f79147fc6c235dd349a923720da1b0f554379f38bcba12bf5f987ee0d2e90a6f01ea520f009a593c95bd6b3347e320dd513acf0cd6ea6198334497da304d7fd834786d063f3239bdb07500ce1c23a096d609f3692b90744a86cecf5d302b3e85f4a0172372546eb00c593454f82a22f1b77f8c8830a01283963273d387ac249490959dc5d7fbbca8b42b63380f27e1139bcfc2ff7af110c7658afffba8b8ab836a66c717c4f521ca6db0835db70fd853afc5a2bdfb9672f2b23284ea2df113992dab0ef235e2c33720928791c46471926fe49454a9bbe8db81708e149b275afe17d456385894cdce193109e66ac6426d2e91ce89bc4aae8f49cf34ec5798586fd332367998b3170929edbd514962315d5269c8a862971620bbbcd37fd72881f9507e37aab0338cf8a5659430bb87334ed5a648d75eb83e642bdac824ffbe9cdc8241e3b89e5bff409c483f07c74a50e226a5cafd1f90d182385771cc62341c02222534e52e6ca66a342cc0010ceb2af121f6746519ace61839c805e87e3622cefb472a625a1aa7b4c3f0c4fa5ee34ef178a374d00ab5c166b2f62f880ddfd85f26b6a6d9a5b8e5c3d1c952f07b50fb9077f93fc950de537a7cfa73b28884ed0b9e3237b484c4c2f8cbe0268fd0dc0866e40fdf6cdcfff07ef67cadab9c5161f6b559c3bcce6c902df7ac6eead2adb934d0ebff6ecef3b7b9c3d4ca18ecd731aedf8c07123403682fb0e4d93cd3e51b9a105a5b5cd97e094e4a778157d0d3670d41a848190422bebeb14b8943d999fb6b63ad6c22c6737ff103ecf7f7c850974ac40e3d4f44ab0f04ecdc5230a7b60430cc95ea4c3d40b092c8c88fa7d051707d4724b65139bb131710d8a04b003611643798d5300e77f3ed223aa401d8e608bd7c15226deae8f8b383192dd275eb7c23696a3f8cac4106ceef8c778c1817586922e19f10b9b5083634f50122360ac82025c753b00d5379aee6c2fbc8e9ee5357b3f3bac8fa88d797b9c09b2525f5f09aaf0649f7f5616cc3559a00ad4dcfac660f7018bcb942b023cd1bcb0038a70a09d368f7cc7899e3a257818977fef17044416ed5b10d62c1e2b8f3b201a51ef97e5ca316fca14bdec874679111573f5d2a1735d2d283610e997676a43ed993e74cf7ac45200a2b03f6f7164021d07aa36f3c4b70c4ddeca85486df032746742236bdd7657bfc9d417bcbaef2075d5e8d044bc1ce636eaab987c87e2b4feb503e00f2c22dc944863581c64a1f948d82a120fed9c806118d4abce3478390862908d636ff3cd8b7aa7c3875623cecab0232ae8524fcc4f4d7013ee9248eed0b620cb851a3466bf21ed7aea7f35d912255654249562ce367208b8bbad50921892fde35cf5b9b9221817d3b85c2553db06d407ae10e9c029ca62b6d8bd1307b93ea594f7cd104c301f1094f3f4032ed7d5b160768b87453f28b3e0bb384e6d77fb1f6c55f5c34ada756e1cbfd4af83dc04e0d6c70a0e5666e2076c1804bfcd0004b551c61944e112737943f8524ed061e8034140fbd1f51bcef310260579836a6ed4cf8618b1ccbeee3ae3bc5e1b039c446609adae454e728e97c4ff8d0235392600afd45410f459e74384d4aae9ad8ec90f2b28bc67db58e12bf6fc287cdec608b4e14449e215e2f79152428199b9533f74f12be070d8b211b83eff3e122ec1d2b43865c8cea8e432a4df93847a1ccc143aa51b6396a0ef5fc8d629d6125c90abdc7d1749b90d7b1b7bbf48043183cc4c56fe41c39298aec169b6f1f6bedbc876620efc0a1833ce93d329f53083f4d3565aaaaebb5c05cf9051791a9af097096fe5bdb59dc5423cfa54773a69d27bc0ad30283cccd0afc0858a95caa6d9630b33c1f4c62706555e98c2fd591e63931485fa120e2211545d578a75ee65158510305c4327a0f1966fabde1ce80a727d1bd5162e65fdf394564a85927f40ec02cff6697edc11a4178bdeded8b162171821ecb0cd3f3895d4ac421eecc6d1112f310d71db6aff53e9e1057ec09419b35087145b494eb690968032b5f315a170d94e2169ae3d82955c6cdd6ab6cbfe30a60027cc7fe783ce3d4dfc3b8204755f11962755c5645b904a03f5a42d5507ff540b16fae8737f787b82eebb666e174235783697b2a19c5d8814def67fa1c981fe27b3816e839af6e511b48102cbf8072bb399dcbdc05998fdcfd682a19591fa2593cf10369bfe368d99ec08a8e6ad9c923e6c3b5e1da8358f042ee5ccd3a87742f8e21886cb6fd66379726e81771d933bd1ae66b8b7310a78b74a83f93381611b24f41770fb3c8ec73d3df6563bf427d009902ab2a41809a5ee34a0d61e2aeb32eb1e8b407ed2b3d63fcc35386cd6b0b49d3b2a8d0f38a5e81a391191747f76142e066327cb8550951b8642ecc80479353dfb9e6065df1198448105ae3ba12d8775996b0ff887471069b085896c810d6245b650a3e45564be4c052f9569602a3c7017c8514b95af562334bd463f49f7d39172ee178e47cc8b492f399a5bceec5c887eb977288c797e564dcfd1f40885b62ab70afc6c55891a1764f86b9a72170a5ae728d4dfdf968af7799a341aa968ff882729bcd613b3867f57069239fd08f2b10a9bceca9236096bc00417988b2b85b8b3b73848792793eef55f63c351a438bd5130e700f4692d5f9831d4a193c5c5eb6ff63ebe13b60ef386f75ba4be253114d14603a6002b5acf0a212ad4a35682f40f7b544c89071d6ecc2e8a2de31f1443dbdc4b8ecbc49c60906f5579a68ec9763559b312fb210e345bc2590e1ff03dc76073fb7bd2fe7512fb43372f70c0331c07fa865797fb345a63a60be298241013ab2161798cdcb723522d5b218b8f6ec4e224cc18bef21883921fe0f4974d9644cf1e4a7ae8f5cd1ad5d65b1d29f67392010f072d384673a0f24e65015a6d166b3621b46390e4e05ddc9b1b382089c4e818331dddcf9895fc2cac910683ff2fc0d7fce07cfb76c1602ded38c0709eab0295b3d3840c8500130c869235b7b7b48b9967ac2b06f2416053c28a8fb566fdbe32026c54ada8af75bcf8150e0be84271b36263dafc8bc622df7bdef233603757cc237a0a1d0e571b3d07f3ce958cd025700362363fc919f4189d274a7b4c00971149f771dec1026bd8f5b46dfef283840520b27ac2ee5ee9e5c66d8085de63f0e54ba023f15e900f2c9658761168bf184fbaa88991d0553f0cfb1e3839a603d9f8807eec4ceb115ff7c6b7472339d9609138d9505e377b6e013ba6786bb31622c2af37845e9cfc435c6cae9877f11e67ad7862bf632dac3fd91f0d33fdcf1fb22e77aef5a139a25c021a621f58181bf40986d6e4415f14ce641176637a07f193196230a06ec9887cf736cfe35701fe3c16984bfd81956b65869ff9331cb113eb95f046077055cafc88b77ee233c802e8fe4eb43a3953472bd31cb2731b6f601affe60172b3434cd1e3fa1a06fb14b3b6d09dda5cabef96960fa8c6611fa720384f875338014e7423cee8345c0ba147f8288e7d1cb6aef21093bd42c3d27a3e17a6012e0f1670837080dbca0c7ff9727b37640ef69091ff47eb5b6ac6f092fdb43d6f018448478b363b3ed524b73d490224648c149b0c8c66d7357cbf6a1aad53ffdd7d8b21b21e6a4e1cbaa307bd58f0181b3b7d517421c39da2d3b2bd2fcdee447f0014f1b48781b0ff0dddbd690a503c55b7f37eb75c320fa56befff2b69b5f119bf6f02fe44ee7d9aee77d995a2eacbae0a39f39de11328b9cb477eb887668446834b49884294691c10dfe2606a0c3891fec804f505a79027ce5e02453edc539c3e5998b8ce9d90d653f2cb7f9629624ab392d53ced784b0219fc1aff7385fe7ccc8b22f411f0eb02a7ece116a203d185c1aa8d66464c12c9fd11d85bc9fe787f4e1a933431af2f15323546e335ab6d38dd80689fa17c0f7753c46419aa9ca325b1c7455e1b6e9b6ddf0e345553406600ee5695d95bb23707582fb60973d82dfb8f07ff0261e239f86b32da4674e38e92a412511456a5c4605586648d8ede0ef386ea1e51b871a39450e7ef648fe17cd8c8f7736331fa0c60f0f447ce79ff0899015f34bdb1f7331c35f20dab75686702e263093457fbe8a3337e2d3a82871469cbb78999acdfb18c339e41713548b2ed6d93c7e2a9ba0f1463378b50a24d5b50b1dcf0df6021aa06e07a5c84e6d5486855222830debb9c4ca668e6a5d3d8026172e0145e872d879afee8dd2bcadaf14d8bc220cab16154db327b8c0760fb39348a994ee4fc698b19b9a592527306da5f316149cf61ffb26389e4b44fd72452c3590f229771c6e4d99de2598256a7da683fb25a54f950d213b2329ec564e04711fe5976f125d671fca66b8fedc4c440c72248f508adc50e3b8d67807c99e336d9d96d955ed3a60d068ff38c57a41c4d79e3eeb98e9a4681fab394ed569cb9ce0174f6dad4f62c827c371f27e6d0acf83c877bfd1f520e0e53f700dff752aab43852c4d83ba0e3362cd2f1084f639e1bcfd41c06bbe0775eda20e30581056b403891dd21200974869eadfe56ab57a3c8d9f9d1a9c83e7a95af030cedb70787a74320340d208e3264e0827c69364da97afd07bf43d220d1c4bcfbf03a21108ce4e81e2d218a676da50ecd8b29cb42e13cc04230026046cefe7e00438ec1d43eb2cf9872f70527e95dde558f6325498db9d672325ab90fd4000927c5b32513a066905bce7c4ae3b311d2eb41734fdae9ee06f1c8f940dd0a9746a9916f783a565b6c70e42ed6d1a9f219b6d18648df3e567c9b1c4af3ebcdb595042342ead57acf6ae80558993e18e756f3a50fa1b2376746bb4f0ba6fd59c04d92da20265490f1c971bef45694242c1821dea782ddc7a807fbb3b1444890a87db244777b2d98cfbfd39884724ede9473c8b4f5b564ef2a779621b3bd9e149ebded2c53ec79c1b0705245ec9bcc6e8e669e224019826bf658ce3125b10a1141de7257a5050068219ab178990352ac0fdb80e1b1dbab53457b4ab259db7ed44769ef1e9390d2fb09001450c56b550168834a119c2cc573e6d2440ce95d9cb295ce15f94c2d5565b71f7be13dcade7bbd223507c5dd327bb0b64b6bd52e4c7f58c23422b8e72175fe142c2e6c5e0d3c039f7c9f41cd2d6dfaad2a038d5d9b1207b8f2e83647e61adfa0619ba40c3cc7a463111286517728e873acac1b6c5f58acf6f37996871e2b46fd9c88ab9199b0620e0721997880010c921e4ecfde5c1a26e5b2a116a2dd3e88a46527b560628636df416b45982a588c380a07b0ba0c4ed7eee1b3a29b4bd62bac350483b4c5e527581b9411745d1c24941c9659066f38dad5c398b21704e47fdcc17d74f0b49177df5ab5bf0064c38bc146648e9d487ef0587c3c763ffac771b3a8adcb1817b7bff9c0749934f14ab6238abab00d4225dd6471a92eeb0ac07e0b4ebb2fa5a0dd17f04581b4c9a6a7f0a1feda0298a2029c2d29697c94d7e429cdbe7033e71807ae817dd7b1b921b9397b1774b6be170ae5d0dffd406e6898269a19c92b92852088509941486da07f918c4011f036e27062fbe9e750c4daaca0d0d023cc1f0451923687d4d7313e4d1871b93b9516508ba193b8895c2e53ef3de9728676572d53e0a5cae42274d750caa9375edb0396fe993bdfccec32fe77fbbe712269b8ea12625ebb90311152cbbcccf2ea1bd213be53fdedd09c1fa35fe012b668240a0d04a18fc8757b8d42a3295ef393e6ce58c6ef54f6d4b469319577d47f5efd616cca3f23f312f5d405432a58f82a3cf2902efb099c481bdaabefca1ee63339a0714c671837f4d10940b311f9476f086ffdc83d7a367f55b3c7382bea92bbf89d9968390b558acbb65c1c7ab1e7d9bf93c698e80ec7e7283028051402944c07c13e425e7fc89d279b168fa3c1d235fe29aae3b7fbed3d994608a4b445bdc0f3ef105732e693d5edf8c1dd4ee0fc909d835b337f3e72e99b74765812c571a984a646dea0dd51c5fa34b25f70d2a10dd307a561a4cd761f35b9e5ee24bd7657428aa9c72c79f22bfed06a85e77509171f4c5ac85b431cb20a117d00ae9f8ab927a6d4574faba7dfc0806acb549141b20f000fa4074cb58090c4f89063e06fe27ce659858d431380b391115e0f40fb850d51999a5953c1a082756d86b82c70e6c7cd5f13276903c9b97d070a7c66943690f52cd479ded458ba406d0ae61c19ee87d568f8ff61013ff2a0732da511fd38a33d2eb7bf33c2cbde3f28409b04d2f9338b8458189adbda0952eef67e87e35419919245d81bb6a6485f812d15a09aa4c2f81f50d8cfebc8449189933dbdf72479adaf4e8259228b294d77d36d5518c3c49880d29b1c0e3cab48a2dc4430d50457b9457e2c63dc50378b573a943cd2f7ff708a536c99f0f13ebce46ad7b3a9682eb86bfe8c2a071aef385290a5fb538c80057852f6b68198db337cc33d40969176a7de3c800d28ac22b431568d085d3557c6b8da3cbb7b3b7294a07a0fbe403421ac4b175011538eda3e1460d6a1143add7b46bbdec47edeadecefbc4d78f3e589f62a8ceb0bd502862d64768e8d5c47363ac9afdb65f59f6f7ecb4e4dcd4d6500ad6ec3ce2efaf3712fb3b904d4eb4354402a468c3dd3130f0c8750f352892aca72323752ad900b827d26d7a40685f641952cfb6e6ab04e0317a810bfd5bee8cbfbac3d8c2d6f006ba09e208648758ceb25d080e09194d128ff0626bfc17c2e127793e45b45cbc64bf102e1cd821c040ad260c5a355a5967819172a55dbefa1a6e709511042d7eec91a39f2a4229a2826f9521e689ce5147f063518aef9d836bb42dc4bb93fa1ee735579bf1139079b309cccf3987a0334a7c34bbd97a3c8548f8ee8e85fa27f976888198f1788b3551eb679c6ee7f3d58923c6d90fd779207d95a720f2f42d64760d86e076f58afa1b20e84fc42627afe8e9efd938a1b3254fdcca0b3345ab7e4a66faa9477d92845901ee20578b09d688b00929b495fc74c35e6e8a91cfc6986f74d595525225ad04bd0b2ac6d8065b5a2867bc2f45a25e2ca60abd49e58e45743af5f14890845277449492f5d9bd1cc19e26e25dfb29f97dd343548374e93df2ca6a479ce4a994c4133ac99d63976e4a6d46976f22721f15058912be392ada878432cbc1c4772e3cf98c7697bfdffcda5c5a9200fac69f9c6462de2f3fec3308abfe9a573120193df929a230e13be14178cb8a8a1f99d59b1881f87dca020bedcc5b3b096aa2f73f3a2567ed86bb42daed410c1506afbd52d19d43df9857acfa4df6bd4337aea302e200c0b407f41e214875645b39dc2134ab5635bf8770dd9522ec80f894bf46416f807ac9be006242120172c7be83fa6a49170d7d3f6a38beee5ac8a25768ebcc566729450343365ac1d5b6ee9415f462c32b90bccea3c79cd36ad75aff5224a54f4a331d59633e3b3a367adf15497dc48914f8b6ca7bce9df037c37a002f5f969c6da0a93bd52ec311b15b3b04817e0fb58af8939e70fe9e4c6279b591e9da40cf0c773d2f6be9e90d08817232d8378c1f54f157a0e1a36a18e3b15fb612a40a2690b8cc8109423753a0fd7411097c96c9b2a8576d7ae06cba2a25c08c5c1b41e463cd88306b2cba9067f9f2b4b7f868e59207ae4a5f9bf7660a9ce610a8c42d3f19478bdccce70267b80203ccd82e40e925596af1df370ad972aedf7ad47af32ac8d5783f1408fd3e0d2357b6b281fda9e9744224735b2accd20091b1ce88f10ffa1129ce863311a097af34f13541dab7d90382af372c22e4337dc45a88456fdaf9b7da8f143629b432e1b0cbc48201cda6c85893261f4d1dd7cb117daa1f57e33053efb05a42cea7c83704c1241a40e4922591501b6787ac9a7a5478088e3e56fa7969a7d5993f05b9fdacd656b346fbd0b89069372603c75f7f82a4bcb8801c0a5abbe406f21d02a5c0bc3871fe708d5073dc4b75e7b03be07726af18f8ccf3c87846c742f947e8cf3a58f10c2bc14d92c776c7a954a24b24ad2e3d72d444ba012d9662dc35a964d0bce06807cf23afd4994a967201f97e38e364db38cefbe90e5ec094144aa78a9cda35cac89d5a97a9b2390cf59738aa1402aecef11d2f237966e42a9ae16773e6d3f7c4e74282d002697bb905a9215d8ddb3c60a6a5f5359977a11fb1c87a8f325be6a257543e6a183c2d844787fe232b728db712d4d2c74d9d1ba7c844d17890085a0b9598af48becef89b86693d9ab863bac502e0ca8252b0c6136beb4d7ff0d62edc67d7ffe554d75f967ac66eb245e5cd3d465091c9b311b17a7ad000e86eec364d79996aa9dad92698b9d9b721785d1997f2c47791da9ac1b02da73c0dfbbac0c16c65afac3e105b6a84a6fdf19fa8b7d678027908259ed496a9083729792d83c4d51f07f91388236ac9e46995c5ce56ff0cb635f006a5f6b3eb48ed76911571db8d47ae4bf63079daa6780d0f1f9093b673d35e85e821ddab7149eb4ca4f7edf58723fb0f290983347e81706db1262ae233933974855401d7c6ec5b4074d20e31bbcb8e55e7b74e15370159fa46114e55d98264de019f639cae0113e2c18de04e64d257ddae0cc5ffe6229e8f5014bcabf197085c67ecc1f613fc58c052b9042d405721bdd5c9aff2eaaf2179657a49ef49d2de8c56f3133d82ba06cd5a96fdf0aea78c12d25284077528115a93a9fa3251907519872f5e24598bc74ea00b4dbe39a5a543a1f55429d47adb4f31cf5f9f00a598531051b583c45084e72a548b53dd21adf3ec28b6298d2368a83f1c50da4c31696fc78d3994ff1df43a96a99d1574a08c4988f6054e8ea273586a08084312b5371d6d2a1936f94c9c548c169fa5df9a7224893c452977e13e6398688a5cf3ad4ec47b146c2ec095632f3f439b0c9624776cbe000b1b4f5acce17961d7e024b6296f551c021ea137d169085b44017ddd7fe49438b120fbed4eb551302f0db5372587684cbc2d73c2960a787c1e4f12d21257ec01ef2d8a21515d908c80ed104f5adddda2320c98c631c552fd611b28d4a5e850b14fbc4e5f3a6f6eb5fa3988fca40357bb6efd4f6c6f6edcd2b71c42553ddd60534a16b4bfa681e8b44ff3e8aeab7d0e24ca17a5d903823446ecd56f44759e6c691eaa7499361cf23dc5e99a6dadcbaee124c0eb55e2c41d92b39db3e24fe178d0fd55df7371fd85f00f7f0cb30be1655044ab58b94c44a61ae01534e8fc2fd4659182c1f55b18ddfc82fd150007f89ebd42299b8272d697b64d37f246a99daad90c61fc013004245a3fc1ee56183cfddc4cbbbe3ccbb6af045ef1028e15fba6857b6c79b2b13e6fcb7a8f595db89c7ed251361db667aca4ffb634bd77129be0d3a9138db101a5fa771f685ccea9970a676cec17dc39f59000fe7b18e53618d0386a31b6410438d6cb65e7e08a34aa8abd8a29c6e7d1454f3082a4abc8164a2a7a566656a35967b4b6ec9682168e8bab56b908ecb41945bb9ee415a29f280308cdd5c545b2a1ea3537b568ec2c286c4bc28c504efebac0f31e559b6c68060c5693ba074930c689df390e6c1beb35ebe56bfe5ee112c6a14d76b9eb3cf56ded2921c1ef7494567ab7e6d973202bcdc41404f6274b14e8d79e0960d084ffc41892e3f564978d4c3706673a3c8f435a2933f60f476b65b800e3e8d4c2bdfdbf45452add4a218ef01f1a92f03c8441d28aa1998892159e796fa189daf8e1a5d42141ae32ca3516d5902f4304acd6aca6c7a0b61768659a0e8fe710b8713905e46c6e98705e76ff83732d4f60fa6f8172a4d9b24f20222b072b7c6b5be16fbda2c77b19d1f9c2ea90ca1a16ba814726a3e43669dccefdff7589e072681ead5b6566bba7341b30e5eac9ceda04e5a9e1b545baca9ab2615c50dcc1212673bba28fb2ddba073078864c80a89b631ad22c8d0bf8aa22f83d279c267ccd9e8547e72504e1da3735ecabd235e944dfcdf71705c878aedf13ca78e8e138a174c90b81a9afdb67cc01712262f58c7e24266472604289e829d0ab9a011e0fca7b403d166c037215f51c742f30e796d733518610faddc2bcba99f8193a02841a10e52875c0b7105d8e9706d3e4500ea40f030e3536de9536cde4264f18e378f76a308b28d0d665470c37ffc00458d2015ff5ac401a03a99d374b581bfa6336f3e841a4aa94dc761e2cca37a98ed89a08125c95c1036b48cd1228ed1a6175da6eda698a164ce8ac6a75bca742616adacb0392cb67a858b5658d3596d66476b44bc826199a131e6a6e8a7b1e26856932490630b65fefe1d4a9e73c3bb6bf2d86ef89d78282606a70828d00d2b78dd33129d1ca6b0f1385abd487100807133065a2ea2cad2cbf6a96b935eaae1fe4ea4f178f365230f0e86cd033aa80a61d82c314abd6bf20065dab2de37c5e16e3f4db766eb5c39abe61633e0110a6a85c19ac8be5a9992bb07f0e019db0608cc35fd3556bc0bded522a7021dac984c9ddd4bebe2d1a493fcc7a942036d2fa5b74eb11984afed3d7fda9b283c0ed1ae8ce52c6d1eaa995c3982c56a605f8b6ddd3814bae3d8c8079df1dc99f5367ae7708891a5434c34fa14d0a88483ff90242c178d0b27291f98bf599ffa6dff4a224ae8758be38b4f552a02d5dd9001a626b1da145cd4bf346f6c69848cd1dd797c83d7184a9fefdcc9253c6b7126d9b452e96f5fc339c515cfd06a68293dee0e025f364d9f9a894d54e1bbc1f70455ffa38cac235cebadabb080e530bee4a5fffac3e1b35bf189b361bd1deb914a933e002fb17ca0c46da6cb20e3713ac2728fdbb009e7a21468b69ff221d69f2dab70cfca01abd865e8df33705ce25fcec3ef6ee57b0b1c2449cf818b236d55ed7906738b218301f5d38f1de1d02e3b02b6e449a39ad676c698f9abf20f49b27694d8752b455f3bccd602732fdd39abbb1e2e22630d9a8334aeea042a24ac467dd4be87799003cb0caf51ea46b37c44982fcf2894294722a974506ae54560918d0c3e74abce3df6743be2d3bc3e54d17bb3b3cd92d517d585025777d60224b8e21dbe48ed21be3e934396819899e830670f2a72d5e8b7e665cae4f9635afcd794f0b5a916df2c98fe6b7747955e888ac0a183ac69db6cc956ae3a6b162fd1fb9078d76848db823e515d506d68d4d7669ef67c7b2649964942132a194becba91210ee2d49626ede26f92477c85f560bbe053a121527d6c3e547cb639e4cd6282af9df38647f26bbfaedc9b5d03790b31b1359eedf9675b30af511e5228cfeffec0193003619bf76d9356771113b25be914b0366ad974847707fe69034cd5e282bb88b58fbbb63420539403115e85495f8642f4711c5559886f62d3c5443e7471eb42a8fe24c3912a190140c943ce7172348dbb7ce6d87a6b3ebece8da40b485341e40a745a6ed18076e8877fd5d1fc0ec031f42043dbce3b89c0480edf8fb69c9e338306151c5c57455d186ce95cb90df5016201af7a299361e3969c19c461386f5710d81c6ce08cb843f0e6da6fcd9c1c6af1294a19d3da76bb524afd16192a8bb4e35ffdf619a0349d86e0013c8df293d4681c04eb0aa1714b5203f23ad604411d28fdd5adff22313b6032201a15a90f7a0b76a6d67389abf9c6e315e4bed7201b0ab60935a81e9120af033235c6091c9b1881a909bbc77f7b686df523b4025d69bb634710eec1702ab0fc10ee150e5336cd547792f5aeff5b27014e3cccac52f9b23ef069ae05c2fed8b58f224c604dfd251f35ac22c5b624d7ece8c59987c6301c070b3fa281fd5a38c41173c7de83290e29d1f2ccbda9012c7fbb28477933b7fdab8f67d537622f20d244ee20b5cc90bab6c1d8bcb8dc968ae799e7df176f387f60984295cda583b8f39c81d62928e55f0967ee25ea49924dfac7d420870cbb2067d3984dcf3acc8fe4836c4207e4bd91a7ba45e002432307052568a3fd33d0a59aa26376078cd42a018191a90c6feaced9c9ea98d5f8bc3d320c68a46c68440fc17e73c4c7e675f3f51d8888dfcb8c1f546018f5e5df6adaabf5a89034139e93489fd9308151c2332583f18f28778c7c909f70d2738bb438bcfbbf0999b60c762e21828c27f0402c98219c3f321f4700d17c6380b36fb8a7321cfb807189add0b09d22d2690450ab1980c3f9b9195f9251ced7e05704a9578ef1ecc803c62644686664552c2f3294e470503cf7dd446c909239a54319e0ce04331261fb09b81b79ea54583826f961e8a15d65833f2e32d42d7e07b3905f0f6b2ff850e58d96cf597f43a660fb4e25ac26d74a5286339689b0520d58f8fe35907f5640bce845bb687f28a0daa71febc2534969214c8e7437a40eca1fe72b09c86d58be4b6721f4732c535f2c1f36e8885cb0b0cd1a4349a351e18864db2272619491c3e78846c3a7a8caffe6050f2e2053051daeddc1b60f5003f6c35929c397293fc806152eb3edf1d46daefaa0ca0485b318655c1028d69fe813782170952bf19e14e8181850ca907431a0a6b1701e243ac812f32b08d17cc5a1f20cfe46a3bfcd7e093a228f9e230899876dd421f9b747a059c1d8d38689ccfe2d75ff49956b17284e015d4bed6136090c27da2cb68c75a1233a4d8cbe62c9a7281e0b08c9639baec2ce10f567099a3b9d7ddd10a2accdacfc54c8adfed14fc57547fd54b7cf04b41c6e05d40b85be3699b68ef766fc1d1c98425c694199bab0732e84160350f5ad82ce5b1ae7c3d1cb5eb292a7991fe1759be203fffc74ef94917cc303acf7301790f0bd1df26303d4e755d003e9f06c7ccb9f6d20a66c53fe7aa9eed64a1c489918076f7b15ddeb693813d2bf032c8ded1ea1eeeb14b19f1be4dc67b11db8cc6f5a5524fc2dc5e78eb85f8a3d1e5bcea5743ad8aa7b75b0bf7b7a0142614fa251a90b2f9fdeb6ce8036fcf86a4ceb2981a8344b3982f43531b6b9e259fce2e23517168aa7e394a69ea5e52e4c5c677afb3b8075060e121e05be6a0863c9e81ff741ff81c3e587ef92e37ba4d301383574c59279f6be734831bc05f372b848d55d9e9afe1eadc1994d2d59edc5e85e6413459d16dc1e4b44b77d359423da55a584d4fe5a4c338dcc1cee7cafa15948882deee59bea5bdc7fa362633c17794844b8b8e31425585029360b80ed63ec3c578431f360161751d52db6e3969fe500225656da9fd80e477fc17293e9f02bac62f77f8a10f6247abb9b5d61bb89da437c4353aeeca481445e7391cb159b7003c22e23cae9fdb5afe35131e2bf03d9c67e0373831b2051b28f2264798e5aeec6bb4f82f1888ea63ec024999336cdbfbb730d76ecf34ef0ff363dba52dc7a77944a0c472e5045f13f2b89dc87830a7433ab0727dd99252bc7c985115577fa44279cd23524d19e9caa60b0ea0b4b3b3394dff4c4cb1d2989e374c4505dee42891a2f42aea9e9286e16754ef5398f7eead7cc786c782eea98b065837fcddb6071459ae4ff75de5784f49bcb5b7f85006eb146e012465bc78774ad3a9325c8604fb58b9871dcd994aeb180fe5bd88e37bba1b0e982693838683a984860de55eaf9745d58857d17aad48136a471f5ca434dafba3c490eab0438874f537fc40ab6e255a6015d0786255c7a5729b7415c1b2d6be5fe10fd2503f6af3d7eb275a21b344af5b4f7a1a444b266fc4ca768f5afaaa016617c1248d154785e94ddfcaa4135d6b6e02ec2852eb8d357ffcb448cfe1c290fb10c1b0a23e28629ddfb0ea539aef72c291849cf0fce3377264d4c5a5c31aeacaa846ca5996fe61ccb52169aac8ecaa6a7b850f6734666366448fa4ed7df350e7194947253acbbea4798aaa0c3d5368b9291b7a4758637d71445725dd6a4d64b70d8f96c7860632f57cd7a67f5c2c8db3042ae8229a0307b58e3725506c5c5f88a0d7c095cfca8bffea5c03cbe00d8ac3f3ecc86cb010f120f0a319704da85aeb4bf93b5225ec01e0281ea506810d865eb6006222701b6fd4a687575818ee93fb766430e1f1713d0e19f3418c664f0715277409a0ef7cc9988b8fa739516986e06f1223e522ae818fc7bba763d463bfb23774416cca806eb48303cc19cc6200b1bf7e16d83e9f3a42bb214ab5dc251e6f93620628a2d51e6ee67e56a1fe357d37153fca6f3ad68a024f022238cc469d77c7cda86a16d2b9feedb52a2ac5cd8e9fbf2c97dc18d921a190ae11b9c31dcde069fe837c51a6fa10a7bfe0129c4154be37f0953aaaf39d959a42540adb3d76cc13b04ace1af66b850caf50474369f9a451c223b39a11766f936758eb72f122d7624cb934e51d82fb7ac075c4de0dc5e5fd83ff749fe2007a7efa14b8920c46a6b791caf2929ca50f50c0abb0009cbde508ebf8a4c43fc5ff23615a1c0081a4e0af95586368fbfc25815c8bf53542746b70a0ec451158b440604ebfee1877a485fd3c398ec91547bde37c9635449bbc80e85fd6c52a47916ea466a1487c3f59b5c270efb1fc6dcfc6af51329ce43e8006479a075e82d80eec8a1c753aee8f7f61cf2bd7a49e9dfa6feab184ed73c89b50cd3c593f89170cb0fd9dadfa2f65ad586dd94b906c1c7d56ded6c43e9493d736db697a9b713d47d35017f6ba42c5392d36bc6416d04dea2c9ba3b644d43aba736fe7ed1018c2f946835514bbe8935d9e0dd39ff555aabeda6b5dd336a13114c9072e60aecfb8a16c75b464e313f0d7c82373636aa572c34845c193c47b14e27ac240ef7cd2106ae5ab29c53560a5bfbf69bd54b03921585b8b7f476742c67fa0fb5ebfd42ac873cc25daaaed22a231b0319d8d738416641b2f29d7f5fd81ba64aa1194bbad91c536bbcbffdf6f39d775e65e5afe8c460889de2c58e36a2e1290be62b3fc5aad46ebf6e4692df1d3a784df7f5e55cc1e7ddd8c184b6f339bec7227eacd4dadb8b0c2e649524db29de94ffc6e6a10a3c1b29c6fed19bf93a9fd150ccdde7d611ac7aedad2cab73299f756f1e687534a89cbda0bbe41b88e0af65a52a1d0792219646956c792631aaca5d558d1c02a1431603f24e0082277d9d0e35e3888be6a92e893006fe4139cf394c1f927dc299642c7bfa4279bd3cf08f68a3e65a3851d39461b47fa1a01353be113581082b2cf5c0cd40e4e838fd31b0d371c7b25505d8daa463e54ff75d3ef74ac9c1cc539bf4c0bed913c8929f80ce09feaa0c34f5726ba2a7d774fe52bb766643430dd35c1162078afe4502daa8368178f3da70dd453bce54c329a6e6458bb531453fb4a80fb4033c65c653506c99d58bd87706a0920c2cc3169c9d65ffac29fa6e5110660060011dd689a31942e4ab7b59e594d15cf0cb37cc068413093ca37ced49d772d1a598fc284273d05ed3efd097161e68e5006caba5d7ca010f1fb4db0625f8047cdb57e4bbdb28c33a32234ce41d7a2bbbc6338eff49f863615350228811e108fc5adb077f47c54830dfab13026830d1b39256348531413b424718dba3f70bbaed7d282c0ea75c4d1f597abaf7dbf1071e6c86c3f7133b6059b6b5fd5c1f45ec5c6f8908eb2f2c3af2d7020bfb82582c6854547b1b78004516046e5ab59230ebda2c37d782dcb8c2841171a71e311b9d11c32ccd58f4a0dde68e3d4aad7bf55d3c4681d61a0055b1fd54340ff34dd007ea5c510be658cc4f02088662ca264e34ba66b2d764a7fcd42a68788f26f90bffa03dedfe1e5f0a809c45a6be9b0d18897777f201f80c26280f31aeed135faca3380141e1c110b027c736324f93bb538e8310d9ded24415ac8cb16f057710ae698ef69c2c7e64cef35038096040d2e1ab0a18dafa081b2a839a8dfb031e591e9c66b9e398b68331e40fe92a32c0b1742f2677dff1237933ed6cef10e5d0141fb209a6700c7dac517f5017cfbc45013f619d85df8b6f29cca1818dacc0c9879003fd59b486e3dd1ac5d4a9b6d344af93aa0c371d544787bead1ab8a5afd240d59532fa332f5d6843f50cf71220d99eb0c9d8df2735eea96ece6e7aab04388451b6d46cd90a834add0c8b2318dea665604f791513299fb71a7b44971d71d6bd79ba5b924fd5d0c9c6fc36266e4ecbfeb7a32c2b283214fcca79023344ea40c3d3e54179ede9bd75c583e8f782cf6a4aa66d0c146f3628bac2f1760a468c3b42faacf779a0e3394aac95fdb7e0fe93e1e1cc3f4ce9bed60255efe762e2dac33540204cb653754238f526d4049e1eafd4bdd93ae5e769afa280b11761f8e5d6c4cc9034d84c114e206f00f9aa5fcecf73afea1f237434dc3e2ecc153045b07c8e6d7e343602336dc3389d73f64e06b181bcd686cb97c87ae8ea51d97d61e769ca6a8cd388c30bdfad7b8aeff164e886a8b7f666153a55b95625c205c979ce2474e7c9815f268b6581cbf7abd88b40a07021c4a1364170ca336920b03663b8930f58a8be50d2a469528fa1e8d5afb70dd612b42806f158dceac0a78577891768cb9dbf126926c20b0e276fbf4dcd82a2ebeb53c3ec53220650493074167d1e234700761cdba89f7cb0c6827e90173443b332cbd8dc8c34ceeec08cd9baef496eda152beb84b1dcb3478db2c2a9a74cfb92e22f0ddfefa983c133f9ec595ffc07524c94394f9186595bc0886690283880d9fa86379f360b2b1a875f81855aafa2eccffc272e496b82af4acddd43601d7eb823fe5359e1965765e0ec02ec5406e1e8fa85397fa2fe21a170602fbdda59bdb57ea59746ebc4e63e8b82ed5f3f3ee5f5a570396700e9e237299ed88fe277e653bbe628641029b90490706b2feb7b9b83da474c5426b8c3bfdcb984b476b2c84499088ae879d100b64d79a34db4c64d47437d82c9365819180df052ed9d3df06fe501feaafcce77f37c47e8bb9f8d6533e0eeca68c5c3159c9a4c129767d4919954b7c757a0c14d0e834855ed97345bf5c9a8eaa873dbb171a0f52059a199181b9109e037ce70cf09b6c47fb14c63d0c181a329cafb833476991127f89eda7735ee841e35cea1f1bfbfd55bb46bfa6f29b6304e712fa136d72b3010c9c0add16bd4752f6ab4ac78b6fe56d5684c80acd40d3cc17cc16901e92910c7cb005e852687ebdf3445502f1a9cccbd41c3846cd674cbe859800e74d7182fa823124f53baaadaa92b02cb656c255eac922890b940844b5c5210a652cdd05ee946f43bf25b80f18e251887245ee9f97fa38982d07a52a71fffaf66c3987ae5afe5f651ce1d3f3834d7e50b05e6b434c2eff60559e108a3f3111e3e7e55c17576a1c56204f23d1aa6f1b59ed67e79b2e52edec97fb7d21247275340aee6faaf292b0a707de35b7776f25ebb6f27c811a14cf810fddc681b93cf0b1eb58304a01888c1997ede4b81b288739a03176227df733e0a54a5a69065f8683df7443953c1736fb44529ce076ae9d2b130dc7a14b5ec5292fc1738764a0a67d07cf2bc6ac5bd5ddf6639773cf31d185d103fc0b6a1d2adc8fe5cbf99f62f71bd358c84d464181eeb158d11be35158b5c5712693ab245bd1e197b5b59d1187412945337698dba42fec4ef3a1c2a27dabab913e3303c0150e8727e99e2752d82dd987b135c711f8b184c33bc80c92ce7e4df582b3824aee50a521c6d9c0af740f54dee91dcf415db0946ef29e4d0c9cf53c4cdfa15432e3f7b7dc80df89af9c8b1348f442b7b306c86784036bb38d6932d76b0980834ae6af099b48f5ea8e7c39325e11011b4dfe1b2f9736b13f6c39a12be6ffd2d6f8d769c21bd73d34bec10764892d2743c27a399afeac014e6c69125747989f45248f9c01d7ba6b9dd2930b87742548bafe058262d11e88b58a523e0b7eaf056aa4ab42978ee93c5b5fd11860a5708290563360ff8b838cbaa5b2105b282c91b8b543b2e961bfa6284e70b27d8969354d8910ec9dcd4f42a67a383f5654df6cf49b6721594571f4a61fe237be31e1a2585ea9a1f78771b073487bc92c75329fb6257db035528cd5d1c23dbe3b39d63b43d856ad298e5fa9f31bc225b7c1120e1f71019e02879097ca9256735a34a49b77d8e01dbdcf405639abe1409f021a2101d647f343d5f2bf27af9f6d583b7219f61ef081bf0a5332a8ac3bedab81290ed020cdd724c92de4e8479f57dfe4405765675178b331680273e43164f9dbb224ea5b842d5cf85af1aed8a6f6b6e1c954b66e6f1de4899aeb996430353aaee72f427dda18aab4253c991f61971870614694e87aef6a5dae1cc9b3317c197572cebd0a4dd2fcb5b44a6e06592c3a4ee2bfe1e5d62daef3ff230d66d74220594d0104bc6ae9d85cb7fdb3463581b85e13b94a07dca0e46fc40b1aba3ce518cd381786004270e625b0d770d0c2b1ab8d89123997b6ca1abca1c326014df1c7517f9e293999593a880ba3aabbf1657dad87fc9c8f3b604c96fb2d703ba9b9359966a310e5b66c20608086542798d6ec8bf93d94f5fcb05621f304811cfabb9959a7bcaa2d570d5d1c7a0e0c47d34eb1e8267f55609fb5757eff8690c74bac691c53ddf70fe4af9ddfacc2eea1d77a0b2c6880721df9c57236398c77a4a43b063e2d661826e15802ee3cbfbe7da483d46d02d54a76e7e38a628bff346477c10fb8382d4489e5b9f9238ccfc79f024a7d1fc2e6f303976c2e5d7174b7962001b699e55b30d2ff25ea121f08d8faccac6f35a1707c4a26d47ffec6306c7b8fc7265e29df07d1f0b8b3f380f2d04d1f500d1402d2d7fbca1a3f1ddc42a5e1e22d61b76e9497ff7b033eef8acde2237ec8adced0af416cab1fc181c12139a9dd060abd334c4b5bf67c23f05fa5d24a5add5f1fbc8f17502e1a9b0d36d302338ac138e818b5c9356b073bf1fb8524e212ccbbf5df3c6cfb301228eb57d52b438b79d93844630b5df324571da017cd55672643d5643024da452c759fb4da5361b4a8616b13546261caebb0be3ad629b660232611481245cac1908679911593ddc169f35280cedc6e2a30656f01a31c5a1185c8c256638d95e683a4f1fa372e924ff20f5ca442a096ee95a5c89f7384a8547dc31edf6b15c35e748aa9c8d874ab24779ec82059bc835a6215865eab4cd110cbe409e549fe85d7edd49e05de908b4f329aa013a3053664de3182b7fb7146b2f14db2116caa58e6279b475116f9076fab1b78d783668449add5e93153e5c3383a730efdccd18154ec8851c2df03d457c6ed19422805c48ec4c5658befa79c73c0882f768bf0fc2d45020b4b7527689ae506675df4d4d31fc516df3cbfe080c733260da95840333ff32d402ac087378d791cb49883740fec99f9f0cf5ac214421df081261d772ceab20d802cdb51daec830d77c893a9b14b09fcfc81c8565ebd00e97755b1ae4b789feb37c34a8352cd9082ea0badad23657cf1f90caefdd27faee1b7dde54884e4d5ccbc018d1b6754f8a43007dc006ffdd26045c5234b312f9956983e90643090da144d45b5a8e15e9a37696729abddf9c07f9820aa512b65baace866f44276b972d1ebf096b2671343a3b89731222edcd094d01bbb0a87b9519e32166c492e2a2534d09ae054493ba302be8fdd71d0f4732f5bdd712b312119a5c9c5e1ec3cb305a5d2335cf10ccea9cea9b8b1cfbd5a5b96abe72e9d8a87af814b73882ad495e5301a2e8eec2429ad558124d01f85b7f6f3c2d659b7cf273866ee9f3bfb402a0609e9208cb56a655851fb7466f3e4e0f3bc82d8d1a30469c4e7c64dfb354195eb346d81196898189a8e759e8a9f5ca7c9085676aa07e55d91567c9c98d357dd87088a0394b168f8b39ade09ac0ef6a2f8abe85dfe5304c82b671e84611bce282a9286929a6994a9cb2ca5da72f6db0dde573455460c80cc1e7982b58d1abbd1884cdb456fe4bb9ba4e1e52b5ce2e06a8910618ae4a2e4a403eaef6d8898b557eff280e4dcf5e579b1e2d402a96ea427c02b09a54205c74bb70c52ff285cea899f001bd10bb97da08b2673943a2bf915d09d514e945fc90993897b50403e1d866653fb341823d764aba8224e3fad4839fd49a6187fb8a77c2928b004fbba376e67f4325887da3fe366ad02915dfda3772827134439897ace184f001348a63502071324e31e9a89e18466e44135db3f76751a5843b34b5b5dc5f4007da1bb761484f7e5b683c2aa38bcf8e68fd86d42ff7413d9eff11a8fa4dcae2aeb543de7cc6c9c3849d0b9cb09a330b917d9ece25672ed542450b2174c9322d7dcd71851b14277329cd69e97918f8bd437b41d657684a057ab36123cd407ec09441462da49ca96fcc6d8973d9d3ea173a52a9bcc7c2d6ad28ec7df997485429aeeeccfc08ce7f700f61933ff78a3c18a6ee64b8224f10bca92f4b4416220e13e9c68b0d2049c1261612ae33c6317c37306ccb4a6f4a98704d2c0e3ccff6892b55949f95fe0bb33aea07d9466efb7a78d99e78c14a56681b7e689666062872830124dc4e3a03d54d7cd0ccc7c66b795cd6b81ba77bc768d0b674650a0c52f3ea7ae86ec7fa85a2a4535463cbba902a1c4c49be128d7104621ae72fbb3d7f089c725c034b7fa7181c8187d4b2b6d432fe17a56fe23b8c95789c1baafd63badd116e25034d11707e86c236b9aa80ef84f7ca8d460310aba66e895e6e6daf2255ec72762e02491aed23131091950e805d7c4ec99c4f9e8992ab6872c6b1c48cacfe4a24e4b0737cf54a25a1a7d164eadd039d7dd1f90a59051176d363a698e01b7db10a8c1d52ce0423f9eb9966c30f56693ce6f8ced949b36b353c8b944cc2ef1d7764f9d588013c19bf76faa853e7b7d00582ca48e47139cf1f15e33a0e590a62fc6d78bfc1d985af637cf28416a84e3586bebdad0d07b6ee2455fec2abcf5f4d0dde31a263cf162772a5dd7531b9b80dcc3c81c343a279d97c3f2b9cab69378650c8ce3d63576b3f0224c287d9a9f21e6ee89167a0d6d47ba37f2979a965e004d709ca17e58551b631aa7a915d43aa11d376e0e41fabc0ca750f346f2b6a1e3bb44948278551351fa90fa67a50d80d621c724055ac4af2028e758cdc4605df4aff7cafd73009c41ead208f816808c11252d557cf1f32c1ed60541fe42ee09cf21c23dabde2894a8fd0c71d04fb9a17baea2ca31e49845b4755a49099b8c867eb8c479321c336f9152c6a7a91ee863becfc43f86f63317e0c7dfbbed6429ad526d84d6cb2824d4a3e7f76e3b1aa06018e029ec979f161638d40837fb82232dcfee178c28a7ae972ce65e631e36cac3ae268b05c404fc1d2f9b7ee3a65dbbcb2919b61799eafa377798548e9186a7a587a95fd54e90a0bf14e3b9cd9d14d888b8f02667fe17709ea3c6f7ca5b9adf327d3930b23fdc08405f94320141076042ece35c97935694135b2a005a02661c7d7431321f4bb9e73b7ecf8354de5c6a5020da2169cf83adeaeb90230ae2c97cdd6cdf6e396d4bb89dc4e6537ff9b1a3a490a32363c0ddeebe779a6bc0800f626f35744a6ae6d55312c2013c2774f4f8de33d5d3a5a6d4ad50733eee37508684b623649eaec614104a8556a79f7aa45e79446b08fa00ec2c37cdc00233431d6045ee9aa8e69969e4005957b56406c3d86ee1e6bd7d4741c36de1f6b9952d73e41f38c58832655bb6f228ffd847390fbb292121298888a92b4096bfc7ae083f6657db760a58a75cc3a0ca80606121c1732bb023f8924831dca28dffbdf29c2fd826286dd9623784e298d93e7d839781162ac157d8c615b8beb09a5d006ecc3d1dc63318792c15500572b6bee76f0d136d9345b5d9d8515f700d29be14275c319deb53bef46f5a5263533aa0437a56cbab2cc9f8ca11f6013edc382817e1f37525c567848fa9d8192f5fa74865bf08181824c084ff7931ebef1c164a424d43eef4ba4dece99322a810f34a3ab44153321e118a650d0d31ec4452dde894dda510a6928ac21a636f82b29a8b43512b222ec9f9eb23c8f52f1255c2bfcaf164bc746285bdb927ad1fb647039d42d5b0089fe5e9024bca3589ed886398f3bd8f3eb923d1dbd2f5e1067dbab6fd615d428a70ee5de3495eb84cd8102c6a9ec46a7cd7ad696910273a220a04d6bd2535e00eb0b78b82f9ccca34b8f60f4fb82d6df1394dbbb01ad1a968b4370f75f3ee4bd1c11c27b90e1b238587f09af36c0a5c7557c5d731fe95097864dd958f8684d1035f77da9feea072f7a6a46b222322392e11cf3ade52f7da8bc384a27cc06f5c0195742df43a53af9d92fb94305175d32c2d6968b586244f47e33ff88f08b27514b0fab6b789c8ee7396e7966bd28d2af6d93e05b6bf1b8fde198224c2a9f2f8a7476d7bc141795efa08e6c45e9bbbb555fc4ee24c1f7bde8e8b7ec0c93d27a31d69841374993b79f15b8bffeb615bb6161f04e87c554a1560ba256dd2eff838f37120113bd47223fc9edd5326f34b7b6c5cb84912fca47f278270d60532f4f1b0903a1acf71daf54274143789936717d721b8dcba70db9f73de2d6f035edb1e709d1243af89b24a76d39bebfa5ea2d8f81ad4bda8983f87a2bc0207af5201fc890f194e189c8f3282acfa5e35308dc47aabd753d8548e64cb5f14990325b93c8777baf128ebfd542c9fe516caa468f6c7420848c98bfa5deb939e17861e6ee78fd075e022d326c3cf5355e6e38bcad80a32ba5dcd757909e036f4d11658ca99a69dc5dd73763ec50ec0863cbdfb4622effeaf38517d41ae8c19e41e05f9e8bc5aab92ac32de4e9a6597a320005a57bebe5837a2e37bc635aa82b743364053d910d1cbdd7e1930b3b733c58088caf478221b352c56533c8d3302b63a23c8c782fe78db189679070f170b280884118d7330718ce2f8e51c28131d8858ea42ecdbdb05ad1ac2f194e093de97a2b2b69df4dd29ee104deb59f84f797bff3cbae086344c09801c8c07e2c0991356bb30a1cc297540e0ae5419e561b068bab3a7738f0ac3c7dfc541c4c2d12ee38542ee397676b02e89e08f69ab3ead59c36770f6bd8eb2a631404f0ac4fd2704ba5e4ffda011d0f8beb059187c1a8f8e169338ccba4854842a01f33360a32f70a081d284a8a454d53e4e3d645f38ebcd0d50b1567041b491d3572809cdcf27139ba9ebfac5fac7bbb4037f53ec890f8b75bab599d0796ec963a4a1b463d73f55d5cbce25ed138a10cbb19d2eb7758da22b76da15f5d1c6b306ba5991af751e0eab1928b68f7984cabc6c3f9d6346e615c977d9b37958af44cea22a417104eb478c4a919ea88d47239c3174492402489c66091246511488a24e791bfdcfe0a86984f42094ddf14efc1032b2338e38ad623c6dd9103f6abd8e291ec1f77148737acef3c1f99c8f037796172ce26be7711f439a1438b42f8de8217c8eec3a0a01399a119af803459dd08d549fbc78acb1f3ec7d5b8a7259be0a9997eb897a8ccdcdabb839549d200521af0bf45e6b2ad9a3904fea0b03d49851a75e20888260d5c32049f7a0e8864f16afc348c06dbbcfbe1ea5c96c0a3c251369188206cc49134bcc7133deb3dbd454e2e8ff02f38599a0650acb97eea0703c662a4beefc04d32dc7dda9deb57eddaa0765660cf953b767f84bb6ea48c9ad07c116cec79fb346c11886385d9cbf1a046ad426e1706db59a55ac77d7f26a2f0634caf75beaa0b4e44491f779b6587b15d46bd9ebd3802dec06c80e4d62a0afe4ca10ad56e27b5e07524c6054a1f85ce3f7e0a871f8203cfcba4d4e2f8df77e46f357a70dbc16cba12cb4be30ef6ce75e7fb3dda73a7842d611c7f03227fde77f1e67bf1b4b20c9a6c851e5503ee227e94397c2235e8c7cd9740367975a62beb876a27b7fa8ca20d3583067745c624d32db36284ac929bd1687001731ad18ca0fa73e500b94d79873e7e457e40a653ab246328a6958ce5f87382855a104de2deb8a37eba49ff5ddd47ce09ed7a8747ba4960fdac0cbf47ac87c61169028a7977700c2e9fbf5b49629a8e0b62ccfc1e07d1fdcdcfbd91b3180d93f1b7a53f39852066af07ea4aa9824e505537a914b7bfe6caddb021e8473f4ddb5b563e6a450db57275b89350f29ea6a152469bcc5bb306ef97c112a69448716ec22943fc872753238ca6080ebbba9f0811c7ddcd4c7eabf7dbf6cfede54075053fd33db5fdda8f455f6ff1a12edebde6cfd85d7b1b069a2dc4c124164f00f03c5dd35fd8059aff5437b251e937858e491afda6fcaaed3e89f54d71ce9d94dd03687c3b42d329978c612ad519b2f2849b56810627f6079414a7c1da39238c10f011a045de95dcd94211ea10fc6169479436686a767d359037dcb0a263de52cee44d898c8eb188f9f9264a75062983b86c8dd19e118aad282e4405b0c7f2ae1e0bd18691c003eba0fa57a00ec04615dfcfcd7301972e00fe0cffe3075ed76b1f430d9bec23157c1c717cc95b8fd9ae48b8c915e1cddde7deea0b1ccd7aea5a5a69c134250f16bc789b2e29b32ed918dae7f20ff802c2e223b71df47c74dc17faa00b137e32f870b845a08ca6ad6168a1f7bf7e202a05d9912a77339de504f0f24c2c661a64355dae181877a453f3c16bde2d87a16ccbe17d3b7e0b9c3c2ec7dbc67d0621c4156e50018d6cff976dc4ead3fac3d4a5ce1e2ba707ea7577b69c159a3b6e873fe0aad2dafc6f9e29930521628615d4830dba869cc5ace96a1bf5ca3b7a709126abee0f47b2e469dd70a1dcf4f11f61815ff5e6e7658468378ab020ed0c4190d546e430c1024f0c90d20f9654069d3a258461cc58c7310a3468a20ab4c3cd6a72fb1a86bc4ff5ead26e8420236eb798eb77745e72a242e6c9e36efa3240dfbe0cd24c18515d71ec4b582e2be371ef00e5e40907263323939c40ae85dad7e072969952669792407d53614be2ae474768f5ac2ab2616e6b654a9fede9840f95d80b785c84b67fa62d492fe6325806379ac1e81d32642baf1961a2a2bd83387f8321bd9fa283b02f0dfa7d915982bf36e3410d211851bd336ec3f0419a836c990af00edbd8e6ed71316bdcfdcb77fb47f64c0b0cb502ec5b92a9b0ac11fa8c30b058045d13abe5e97d4cc2e8ea9e6e80259a2e32330b04a6b7f04539ff3f7f5ca59e512c700c52f26e17d7f813a859de9bb288bdfe5eb8b6212e7339c333dfd70f53e98e75d5b4fa578510ce081f91dfa72e178658e07424f4ef3a8b493ebd37b291a75f1ea1e232669a63aa6803e333c3bf652fea943de5340dffd9eae6eb9cc6d04c4ff8da0cd4279a95ad94c16e202825609c6eba2d1519267260302406c8c14aa5226ce695a355617eae0dbf258bf7e3640983e311ff0e7ae8f644a438e94d5578573c6786e3e418e88828a2aff196ce427e851b223c19159885ae819198547d099c32627acd9fbc6b290efd9a744315c82d618ca03489f6ee3510a42c9301f5120a04424a374e048b948c15826a09272ac907c7109804c3a421a7c869d082807dfb514b57566c884b7180b7e4e93c04d9b1855b6b4016244bd581b1633baf95368e946208c45feabc290a3c2df66db6d7a4374d2886e3c85e8daf4393f986bc8e051c8ab9a58d2b30313e73c2a1e6c4c3a7b3a9e829faf8a61e0f5286fc11d5b4ba004576517eff0871c4f3a2a82d38fd1af32ee731622b8549621561b75ee96c1fa3c017e81b8d229c65f15b3d8017ff9af77413585a9f6ef207b47854a4970474ceb691af07f7311f5008526bf301536cb2a94796e75d4816aa73c63b1ab70ddc6b790c4a9667b6826602139ce31fd5bfadb8931ae4ce33415d83614d39a3baf0463feb29c09d1ad88924d1af47560de3d37fe7fa2c337bf3de0a4ebe5cc0d012d403467f10017c20e4a82e43a5003a430d18a4ce20f26d8fa05dcb1a7ca9fa007ff6cf71c1c2012184f30eed318cb4d3a67df18075e67221dd87f281441663a84872f6a4336da80d9eca70cd21a86a4559d0ceaef77b552cbfcc9dffeca09f8fccb3ec6c05e36294466f12bdc81c21850ac0b6b90c2e60a8dbbdf02758d2cfb945952008eeb9f1ee1c99891ab7c72310d008c77a6f6cb42fc725c8d23176e6761af30063a3723fca59c13d36ae12fcc652e4241f3a9daca8302f03add44ad03918ab9581666b9662c267c6cd618ebb242960330e13518273551fb6a7c0723a9ba34e0e3db6b65427531c912ff2c6b9a0a848fe493cc97b220dd35bdc48b83aefc45075b9bbe7bab794542c5b804b107007324809fc0ff221725cd80de98da6e388ab9321266aed29f16abc269225c9c011b60f570a87e859c1066c57e83922c90d7dd12450edf90e290770f7b924e439d2e4101ceda41e176c2a1e04d65968d6e7ce912ace6a838d9c739736293d08f96db3709c59e41cb20dfe6e5dbdfb66cde38c11e030069f97e527aec9669029673c59ccadaf18fa999c8ab152e6932aaaabf4b47f9e7093668caef3fe9769949ffda6181ea15f747f4b7895157dfc4efeb29aa43b444ca66c6dafd6414c1e7b28a7ee9d30b7fce35395047ab7185a51635d68771a98e467bd9127fa884dd26314cb0aa122d0321973314c7db0ff3dfe5b8ca9b6ce8b8929bce0544d21d2045251f870fc9477453666f9c33047bf8f3fbfa36b42ccb661f3797a80e7f9fb077570ce6a182e8d1c78f0331594e49ae5f87aaaa695328cea6405f85ffa98ec4d46f2750e1ef77a29f0246bc602ff4b43eaca1ad7141b92f4f2c807cf971e0f740c6839cbbcbd5d659e0b4ec436ee02390ace130001720bc2ef9e416fe8e2d35f54da6bcd85b609d495530be73dff09265f1bb732dd4bd82acf8f10948aa584d712fc638a07b25accdae293f865e269d895f0d3eecde2e1e92cea4d247b5daa4044f1984b025fe8cb7207fb24d5564119fad01e6a8c9454487883a781b28e5eac19ee0e58fe37b1c04fb08dab3d8d274fb9cc30fa52c180c837ac6bd46fa65584c8c0bab19d27f8bd4727917fef459b33661ace4897c85cda9ba8777a6b58faa45ab213725231c6cbab931bc7817ff9e2dbf742b7db31d673f4f9f7b483e2ee95f6f1b7fa6503ec748b9d7f24bba7f588a34e5e926b5a56cb12f10e328d27e2753aa75a57540d5001c8aeabe62071aa0cad8e73131024338df72f7bb9c2b8abc344b9f38566abf6f89ffaae6aad2f1ab629e9612bc22beff3f544975ba0abb0170496ac2643e230db2700f5549a94ece12d0102a4b6fe8fec88f236d343aa4f9daaef5e0a864033fcc4b04859a656472a347b54b316a7955e0b49af82e135a8c70b777d2250835110a45eea9e93376fd4965a97ee1d823eb2f361ab389c24bf1887700d5f4d57db59d274df3c6d92766c9fb488f1021ce648132f50afb61e6abef950b1460cb557b0704e5e031be218976f580549d9575b98559d3048065341e1efcd75753883503612c1c545539f606e5464c7d0da45fb24d98ae4c8622691826781ee407f2e4b5a3a2162517cbae28485631f9e9aa5d3f3622e1890f7cd48841582ac0dfa5e94ff8f116fa677fc5c3710bc14a8ba4f7e39191b817c56593c48d96bfa53c01835db806e7240603aa642a7d1a8e6b12e3585f10e7254bb8714451fdfde32b3afa01f81b45b35dafde918ed79a3d33e013b1b6041122c68ff551004bbb4a4e7617f05b4a8f1a3eb0a6146e2201f2d3b1311b1ca064ecd2120219cbae698e157f643c5335f7779b7376b970b7522c9f61bfd9a2ab6f235a0001194403f4cd549392a151f8e59f5fbd41279701d5ef56acc6a91a516fe4647b7308063759ee9d5e1291c08bf4e83bdbb7ea7501e29b0621a4e681aba907b2510e2854c80cf4448340c7be368c0238680115d63b3bbc17abdbd1651b4181a3bc13b2639550941edf1c7f9db074a40aaf4a7f410e1f53b7da696d00fad81b124eaaf175ec8ca41ae723b2da954e8a5a38c39f868927b953f2e82ad871a256b6d9133c3bc3537375effb761c01a4babac4635020108fb6dd4562a0409e09cc8c85275e82363df0d360892d38fafdc8497f9dfffca81dad640c053af6b1d4353d3a9916166c8bcde14abe237b7bbf78cfc5a3b5e963a53f508be2ce88685351689e393a73efc006722697d7e20d3d715937e248dcf5ff992d1011601efc32d56cd1e3c2f0d0f7544bebcaea8c721082e0c753bff12594d8fa46ace5a83b7b1b3c562748bc41abe92e39bce86c650c9a7180dbaac8f62e18d007c2b53ace233dbce02be996d104dae8d88d2d07ef1c1360a77f65df8b02f9569e85a5903b414b2c18b687411c909138163147b7d783fadada211d88fc22f960c16c917e31953d1db6641cfefa69982966e8f16650046838e3bce684abbd40877a871315dabe8c45b5e2775861500d258d302672abc3eff82774b5fe7bb0d6f84eb229d3fe1e80c5b424906d23ec95ec927327f14949f149b5abead8ffb85da638c8eb219c507ad2b986af1086f3851da7292d2fecc38928087c4e2a60e22f06243d66f9cac2882b07ee895fd178e9b603761d11a04807ca49a576a0c8936072b6e92eaabf0f455be49e8e4ef1dc5bf62c471f6ed31c272777924eced77baddabed5c6112de07108956a82dcd50cc7cde3a561c9f20147c4ea5e1779555d51400df5bc05a28d6f7c0df22ca20eaae3c85ee0fe8c20da311b4231fe24525ee2b21c20da7aa7997296e954a336bca99d77e5e40cf02d2ef8c8cfdbff967124d148d3459486802e40cc77409265c63c3844e1b5302e654ce19e214bc0ac148d47adb34886cd0368eaa7840c32984a7237094c78090e1200a23f0c1fbb1ba8efecffaec0afbd1ff973e7156e2d00b2ba68340693d2a7eaaa47087ef09dee2f21b4a971bf41c3ce9581f66f6cfd06bdc838a8fd1a1862c72dc7210e706aa6f4f4670cf67fe8469bd3c2047a2de3a7a3c2464094b3dd14d13f290920a4e59f2b4ac51c9b6f80ed330156985881cb3c672e6fad699963bad5f0a38613cd675ad378941b93e7cd29530688c68c58372cc34f0956b86e46ed245d86ed3a0da7ff7d45edfc9e19be4d36e04299455e0252c9da3b14b3cb40011c2ddf74d48b9cb4ec47e063a51e91549e52bce5c062574cc8078f2f45f4d18df6824f9244b487fe6a19a0af4af2b230b4cb665dc0001c4ae198629843f0ed8833af7a0a7815f2972f0fe245a7dcd2cba26396be0321cb53cbc17a3622a54d6cfb7deb4f75c0d60a81d7a1e8d8beaa1f794632ab8679468a1e29a4746afd8db194e09d5a298f83cec4ce509a0bba225a0864363d36c3ba030adb700d28ab0a7b35b3b199a084fbab2860cb9b82e187fdb8e8379d70312e954434456b42cda06eff6ddb22b784992a09f343eba0a69cab5db5eee8f860c834bcfbcff43e95bffad0f1d9613fcac304bd35848998eab99e3d80f5db3d144310095c7649f138a91f52dd1308a0172e0e554197cafaf582b3e2ecc92bc9a2b0645016c0902e768031459468cb13170fe438982bcb61517ea1a177dca0e89d5ccee64cf8ae94f72cc230936629878cc9d26a5529714feb42cf71f657045f87382ac7844bc606cbb4a2395ba48f15f0536503bf07e323ad755c81b6f4b59013b18a81e3d4aba9288384356c030adf574437b1295a03b084cb4048eccc96212c70397d222c6b99d2ae03d9b01f260b93dedd7a215c7be191ba4ef414129f084d7b5ff524bce46be6eda76cb1aad86bb2eaec652ce0ff62140265ccb8b6d3145d0982164aedfb82cca7f15842a35a0ae9aef1089e268e00165f4aaa5de2a42a1523eb5480cf1274d2bed811aeacc6860c5ae8e0f03486a06d0bd287f40975828940ee92027da3697b046e0c75551ff77b804ee2041f1fe8fb067e5a516a9cd00fcb3ca1616bf851bb0a1fb6c6254984cfc41a8b0987e2ae4f21b6935cbefde62dd9cfd2af47e716f054768617d451f70b635667b04fbfa724baab9739d05240df5ab20527c9fe54516dd31f8fa6a62b11166c72d880f7a51cd2b49a4a7e2214b793d17f308f4a22bac1c0e85b8b02f9790d27d95618fa882c57df472ae5d85234aaf23bb6b766aeb99b7f08332ead47a09b6efa42ee1ed048021d56c43e4932fd56a67ade7672b1e032a145ed499a1ba20d17db376c65b5342b6a52191fb05c6e67ae78512147e56f756dd4500b30b86a810c95ea7a57331a5d72c49dfdf454049642c084ad7c9beefebdfbdfb4286cd19279389cfcbd821eca7fe4828aeb3a38943cd7e9f92648290724bccb100452ec4826ea13284f421c2f08126dcfc99119b36d77595ee17cc2cbf04912e163ea7595ba4880b22b2667644cae867d768d5e51de3ece7605d665dd03fdd70af2822d2a4b082c468e66d7ffba4b705ead2b9934a14fb93f615a5bbf69cea7d3ab301b091e0e68446622807c67d0be1848f8d802fd278f6e1d5ae5fc7e3186c2a45a44f14b3332747048cc47fa719b8f66eef70d4a107ae6b616cd24cae5f9ad9d9eccc5b504feeed5e86240e71abbed841c15e0d688de4b26344b4f6c9db0464780b755acc49eef87bd076b17f4942f61c23b6e1afdcb3a0104559e447ce2ae48905bd5e2235b15bbc09981644b7ba9533060ef221ac14dfc8bc92f3306403a14726988d3b335833be447dbf55b58e24fbede2527fe3260041ca32813ef186a272e713d3e09765ddc1ef2e7861a70dcf3bb982d1a3a8c82d2c5a6dd5ba1dde3aa086eaaa5430ac7afad45788ac940c34c939c46ab41eff01e24b7454bae030473215b121e3adabe1a9090c6852662f34a8705ef3813b386fae8394387ec3a5988695971e7a73475f9371eea7cb990fc94e91e27fc9e3d8d7158b35735dbbe98dd4b64ebde8ecfea885cc2819114c3bb53e9c177c32dc18400475f0bfcb74be46ff94686cd2a157c652ae29a7db3acfc86e463c338b983ff72d5e746f1354b36ff086c9786f18554da3d6077479e44fd168e9bc87e65e1d1914553480f6d15e099ca73b20fa80ccf5f7025475b1f8a27650a3d9fe8f6286531ca75d7003cb0d1f51ecdae927eaa405cd8cbb1b412811d5e962cc1e4256cc2809b0e1b9be2cb8a5848a1a0d992e387e9a0f14619c8c1ee942ae18f565038146471fe0d43b5c1a26c7e08dbf30f03af63b369ed1d7f07b36f401bb4d714617fea43111ac757e2f46ca0776f11b410e7a3129d047443d732f10cc1eb45c0ea891e05d3cd09f5d636ca9b639323a938b488eabe111a64d758f71484822c2930d07fbcdeb9bffce9e953a1ef05608810e25e29cb93a86bd1e30d73f438cd3db4ff2fb18da6660faa40baa4911fdff4bb91811e463a321a814d37f76852f9c774ddd324d7e12e89b4b7a22934e0eab09f5ca5b9b3337490deedcf04aa275c502908a0a1a3d24f88c691beadbdb039e7640be81bdf0e395bae1e256c01aa4e67592bf6ed95d65904b05c09cf23a77d477639b9de30d93cf14aeb6508cb8aeee51feab92e3147cdabd5932bb2f49e9eb7d7364fc61d217fb46f79e28794ed7a45bf35c5d8134f5247641b1788d656e821f24d4236b49c4f62acdcfcce49afc02ca4b1b9f6086931f91b88d7968422647c54028bae07fe32b097c9625bd60fe1ac9aa8d0f300a8fe6332b3ae1f3560aab1e5113ff9ced4383f2f50d8e539f61e918dc2f56262e764af2848cd59f8d7d4f407c04c4b8ecd457ea198a08c56feeaa530d7ad929f0ac12f0ec0331d43733586a75f053d9421c0ac18f6c63e834a66a0eb531abe0e54e906ae50536c14ba8033ffc9cdd4adfe2a2d9e595f34bf7940b86d90a7b8b95922a1ffefd2c4be63e1fb8d3674d895c7d2ca4b6f158e03b3df051718bd544cecfd6a1a2445e7321a6a836059bc5c03feac4dbc727d7e433c1f12b9951cc0353a3bcd1bbaf6c540f521dd54a6a9e048030a7475c7654aeb2c97bb488d48591c156602ee2f7424b4f4d5326d6eb9940acbb2effcd05f8397c181738b8ed58f1efbb25ea2808db4d5843ad9bca10cfa62190883a30bb5a4774b99d8f8456712193f8a08c0fdb662ac72d07c851c02f18186f8f06766ef536b87f663db110f28befb9872dc1d0a78ecf523f7fd161ec8d5680f8a0a5f85130f72c5211eabcf1a5080f55ddcd384ac8eb29520a67946a2ad93188e63f399c436ada4644ff8f3d07cf4cb0ee009d32e4a87426e81d84b34b4fb664eef89d0d1b6b3267e31fa01817469d2b9f04d3c4a5f7e01f2ca538a6b91614258b1351d4e1dc6ed3b51ec65316d7aa635c86f9b4ea73bf6e54d86802babb2eb49af596c2312e2288e9c410bf839787b0022de447cd79f277565c86576a045c935221dd0b4ff0f27e14e1704217282854144d1f39e46b6ab73c196bd2c9cbfe31762fce7352be9a3e68ae794c45b9dacf7f1bb09d8166b6b74dca54bebc5f9242a9d1c54ede94e06ed41e0abce843961eb86a7f479a52f748b5d6e7a1ca1411a25b4d87815d407606ed7f9fe15aa7618b437459aa8ca4543e3c6726c230863fc8f19f8d942628218b0ea88efcb875d7912f2ec9a02de53794c7091f3c2734560164be2f900274bd7d80ec6f9c67685e73c46d4c9402d6da4815e2565bba2acb6cfa4d2ff6b503f2c41b6c0c1402408a74010d31f68b2118afe6d30e3c22f562a4fc6a5a11161c9f7aa61e1f358ba1eb6f3a03814d15ebd9639b89685c4bb3c44038fe92791f503cbbee3806d2cf461bdf60c3a7c91c24736d01f7b3be2541704c50a85bbffda53d10279700945609fcff8dcd1d133c91e1ad642deb85d5b6d02b5885a6e21119e09863034f4f1d847f4d308d897fd8ea4f5d665d5b686fb70bf26e28ffc419b6fdf5b42036996bde4be0ef62ec0fd818cadc79ab4a8d6129e6f769156392df3d9997ee5f1bc3167ce7962636abb3313f92f04e03bef02ec5e3d789fdbc319aaab78a77cd9c8572add665279e83bfa41067987818537c6e294f220301d30f61dd7ddb2840524295f207fb0ff4d493d1365b767c46e3a76aa2da33e77e6cf9ace87bee32f818ca6e93fd0556d766f1c621b1e696bee4c84ae498dec4698c808bed16b9bf5e005594c8981e551d1476bfc3e452434845d46ee27758c15e5f9160c15faa24751d6a534baabe57ccbfe25feddca3a8eec6667b32d01c0f3d4cf235661aaf6621edb6d0bed1de6286fee30536cdbb5d9b2d6162f78c2a7e66cf1a07cad2e9379858b877cf1719620f00fcb48dd75c5c00b91d26983efac51d198e303894bc84273cfeaf06f6ec8cbfc7b6c6b83e1032de3e51ae89858dcfa0a0d12100c1a40d97dc2f2c5eb14296a471f86482cb58955d7d522a6a098c4e05c53760720514e36719403cfbf1079e21dd9848f0d8283d5c69a176c8ac6f103db955caf30db817a1f8dfad11c859bdbfbc722590882b8b8f6f28f4221c7eafdafd9c0d72211cfd830f0791e7b1371c9600ea2f49ca4ea61d3a63be81a04f15ab15a221774614116bd76cbb1e74649d61e25cf494c27630648883918f1ee1543aebd8c4dd4235acf3e4ebf05e3f34ba5680fd6987e7dfc64685cf1d595239ca276d8f101713032feede58a4ec8d801ea43e76b578c5fd347ff8d11a2bbd68baf1f210fa40cb9b9e988a5fe7981cd22be61500a4d30ac30bd139aa89e8137102006c8a614d826f8843aea71f25ec4639176456a43e3899ee715951a1f6cfcd4a599760506cc0e9eec590c03371a991643b96539e7ba53a7b704459f4ecdb1a6c98c01b4c78f8755b9a98338644bc7c374c7663989ffb53c6a9eae24c39e9d871d97bb2f11bd5141bd5f6e1c872d303a674dd6e241dc27f67c88485df5dfffd5a678e2f5f612846859afcdeb3d2e46696ad8b2f8ecf2a640197b9bef289db40fcbbc3bc3529f7c9d9412f4f3b80dabdf3d805a9032d59648306ea8790879d9a33dc6730f10c89121f23e5acae8ddca92fef26265cba756612bc9e10c2722831d7d67d0d1cd37d6a595ccdfe43459d7cd43fbb27ec906ad7973072d4ce9ef4b0b1bef229f089e52d4c3359b5bde7c3674430f925f19af4b64ac11f0c0c75b7ec24941d1cb6019506609ce2075708bac70207e47468d6bb619b6a412ef01de44233a03dc7c984448776de967c29823a4ce9d76d5beca80db4d81631f1cac6bbce248c60a8ae7c9d1db687e27f7db2c000176faa6cd14a5daafd9c7dc6442a600796fe3629faed2bd47cda2b11ba52e8efbeb188a585a5f2e7e361d5bff0ad85b1ec4ee629ef323843b7c2767f2c749209264904eecd803153e46915729fd61391ff82595ddae7939072503dcca609afc782a502c7c1c02f8248ebcaa49878b23e90d70c36d18f49fa28ad6af686799cc7e95a4d87971ac864231f1ee8411d2ce2d6289647c073c081579508f158d81b08b561dc4625e9d81eb4ac0f8ca35a4fbc91e776d46148e9ea15eebaafd56e326ad96bbc5db20420330c3ad558ac3ee5264a204808a23a807a1af3c3a3e3f5de427c21b3e47243ec8f1f8ff12f207453d9ea4ff67bd2e4f04521cb65ccf5b64feb169b226ec1a90413a77a77d7f006455006bccf4d4f76295fc380b3724a39f0a95da78d24111b82ad40f10ed775e2d2e1e878e675a8decf5e4941db7ac3b5f720a53779866e3beed2dc1f9ff42ff4c9d635a4cc3a13d81b949f38d0fdbe809f21f902583fb74c8490d9fb1542e9b8a50c3df9e7cb819fed1eb4f47f16b885550458b0ded896f4df7521907ab9625152ff0a13f7afbfcda00f562a83f7dfb84ff09cf4267726974a4a7141edcef18c50b1e14b44b0f44efad9d0b4bd2de94c36916ead36bf4e0ead16236a43b98b4077a475b07f7e2ecfcbee9dd7eeda301972983b309233cebd73231868e8ead1d4d9f5ebff7536da4ad255f9405b07ea62069c502ca16f835e79a556086fb36f84159e5c6ab72c3282d1b4ff3d6d1424729a8059d7689111f1c8112f1a71a1bd4a3b67cf2d222a6549e82f8653d373397afd2475d7f3584bb35977a84f21e497d7ec275827bbe8fcf4e3ccf05edd7ff213498cecd9dc04540827e1ddf83cb122d22bfddb0d09b9893bb845a33e4a548f2c14747fcbdad4dad10d7f9d6713bd6f3d2763a1e0eaccad0ce249c54a4821240f190e99c4bc3626232a87570ecf34ea4d72e793340ea8bf87731208b70b3183e56bf8d580eeef204cfea840b94fdd35c12ebeb43b4aabe4b168a7abf46f3304e9a5b304d6576eb6a842c4489c467e2c34f6c6c7492c9561f1638d24e73820c65682bc4b6af2daa7016dcefbf6453d33e8af4f5efa76351b63e12b54eb4ca669f2c6a29060f0e6f2aaa718df60ebd8eddd89ff9c10a0466be83fcae6c328748409043d25ae8f2071b2f6b0d07c8cc7286355197de5ef05431f3b32d00cf893ac05307598ea14f366e14ee0bb7b20a6aa45f1d6345e382f8b3d23d6fb5005650fbd02c4a1a5ca7c10a5508d61900c0dc1e15a8ba269118d881baa5cb5bada738cc069d95574e815b9c4772a42ab616c3a1783202855783cd720169bd8b1577e0899f71425304a652f5a296b1cf91f29dabf838d51ea569315d658116e5afe48c7cd3775412f02ef5f3455735e0e618e62ea5118b4dfbe7786be77baddf2d8f68738d6e37e109aa4e9a72ce7a1ba22ecbf909ffe3395546c242511567ca79ea3c211ae3858916ab72233b05b6b1992d9b9297a0ed611fbca3eeb5af3f8772f91d285fea8aca3d3cbb949d5036d9ecb10b0bede0ed93b54beda84f9c3b9daa4d85a39474cae037bebab05f0b927fbfe5a01b97166ec9b54ea67995f85abd8d09a238a7163d9cd180bc430ddf5597afa06a12ec5c6457a337e8038acf78845bbe97df76c5acbd72af047b61819ca7e4276e0ac437078b3d91bc737360d7f40996c207fe1baa7437fc7218f4cf9f2e5bccca2ee4c873dd21877d08b26f54fc4a9bc23c7260a3415dced50e9892d72eb2063b91bdd97666d89d5ef9f9a6378d886cb7fb0f0a2c82e5fe90172c3ebfcef60263e4af772378cbf6eb55d015cd730fed2bf96d627cbec7660de0ef1e1ff3541c605cd232085b3361f7aed1c91d025b3cc30caef8cc650c0e368ddc4dcb42c206139a3fc6afda2920209f33e420cbdcaee8e14e5e8d3e48004c0834aa96f238ec13fe2252795a74d1d493ee3b85d12f2dde143a69cc5a8cb0009762c7343ed33fe4084d0a2c2a56926bc0d650c1ebd1ec37a4a12dff4f2fee64df1387a5f990e5b455e2b68bed69b75dce9768af8e2e543214853d11cd04774059e3324b1056286b8e5df29b5532f514ccd915511a8c22494b728ce0d724423b3a62c6a396709a1556d17c54f83f0d6fff0c3b5c0049b0baaf07deb6f9d0968bfecd6cd6290d2b2f8e433c5c3eccc710f842645057b57994771fa7859ca40443ac2efd03cf2eac871bf1e5fd5b82562e4ee007828731644405a1cffb8d0501d2043df21f2c7bdef259d0218278740b4a5350a7e2761e8b5394703c8ae623ce0f0229d5e3488b67f46515b9c2c1ed0430a52a0f495f6dc34402fb2a42234d848c4cf9fb43c9573bd92956c7bec53895680167d9c5030ca45586d9d02a7f919d0d0ed2c52f0e7888bc5be64b725358058ab3fa940b74e0aa72b160c677f57d7c40a85deb126e3fcf8627e0f0791bcad976b394c00f5e66e2f72c95d5568b1e8c2a0fcbb772cecf810a4b4961295b05092aa5da129a45c3947dead48f5f56886c6e27dae080b8b1ab14a2377d01e8c6054942b7552b0172684d3db91de7f0af96b7edee9301f74ea21d7b29171d73582ff014c26c7849cec58af577fa5a72472e1789434e049cfc8972e28b5e3aa565671a938b82fdf0a6835f82d5b57271e5afaeb82cf89e9a2776ede10f2357bfc9e12d313983dc7c9977bf3b08fd912f7677fed5d9396b501b92a1967bd2301b2a62eb127112bec971131f2666c397631dc667585d61bf917e33610ca25d21a5fa0b8d98dc968e262d3e2f2b455974dcdd86ae7fb2d69b3fa9e7bd8e2518c2957b13558d2378aca0990377ad8a5088bb97e34cffc25c4147f4b8851b51251d715ba4c72260ac7b8b00e335ff5ad414c229c8a0b73effffe4dd266d6e0180c275dffd00c297a1eb773bec9f57138e519c8beaca6f817f8d2d59d5418b4a1d5ebc3bd24716e2777a6bc7a9c16b183a49a8232e81f5d77ab7bea6eef5954fed5d4b93e9e15fec93dba21de87458f08cb14620dce71443b00c41110a2d8c08e605b5a072872e24ef4fabd7133fb8727ef90c42baf8d67695e4e15c53edb52457d99bb63c335ad0ea545e54a1c3b73b59d72f5964ea93942512b00b55f7c3369b5d02e8065448fd2ea945f9edfe591c5738c3678ed5e84d38faca44ac4051d47d72878424c188a9bbd4cac2d470d9cc74fc3573c09181a86c3c9a39c116afa6652315aec1e941d535b771cba32a1a98af52940796df95483493e43975e4537470acfc3a1a7c28c614fa867bdaa8c9de7e7aaa54233b2c5cf82675a3019c7504bf1b39dcf054e39f4ab2c0652222065229a528732892278b1c7820bc63005a00ce1f6825e4edf1df2405ed1c5e85cae878a14d9eb3e2e58e3b374e277c574060f0af32d27d5b39f613d6f3e13690b36df1fae758dc7df2b541ab3e70020faa5d59278f18976c2b41aa23936a2f4ac8ecadee5f175eddbbf3fab0cc3e776281223293b0621c5b88a97001d8ce41a1802d959d0a3f3b263c1594062a01986fb39f4d80bf22f67690ec773fa8057fc63c0f4d94fcbad11b70c9a5cebbcce2448868a22e802e5ae2ed286a5ef5b867f63255baabb9350d1d5b4ded105a62c658bab9cd3c6161e61612a6d65cc9f62ed0c34035fb2b5af8dfa96ec63950220955cebbd1f3cb919d46ca7ac034c7858fa9b8acf0015f0fef06230417a370d40840ab94f60f7e7a78d59e4340d297dc5a002f82ef7e7556608bb956749b45586109f18f7ba5475aa30f72f795a71e352e0468d2a5491c936d353559f32553a1ce7bda22d778627fd243d052f60e9aafd27dd9014d4f74831633f29acd3ad4b7a4f2d9e03a477d3f2b728c86620873e75248e9f8f81f0c8e68b6e46319b88b683ce39492a39c841d28ceda789aa23e7e3b600010cee8a92ab325d5401e6a82617ef397e502dc944aabcc9b77e763ed6199c005e770a9033a7dc6e07d4be313a1df964d5984e7c8e2285665820d8b59039f507730e98129ee0eb783805bddf9a443a87f957c05cfc1c4f5e41a49a11d362f49e964996f4c39e163f882b003097481ca93af1395886001f00a067b984497e97b2e57b2822f75715eeda527efb88dfdb422c694cc6452b51b9ed766ebc9381700d4967385ee7350106b2dd8a3b216ecc6558165441adcaad369b36c13d67fe33e7c03bd69089e6c1c912beb497992f24c11dbdca852f63dfb063123cdcc5577419f9092db4d11a2c7076812d993343b909743aa571bc34d2903762ff27cdf9b78d3eb20deed729500f2474a776e3e4357802886bcd98406f2a05eb5636fe1bfc229986ee5768abfd8187d231c72696321e539218e0ab9aa178e0d30403911a760d197cc2f611521781ef0c8a6bf89baca496c36c96859c59f7588d725f777ea656b3f43137a0443a1bde5d86bd97ae7e1e9df7dca3a8582235e5b54cf8cb4b2097070d602ba167822d116b56c0b88d43fe90a05df94ec123d1cddda16e0ad35bb0efd0878e32fe981f6b5215c1fd4f40efba4a9917bd64074f90d39621ffa0183e723176a3cdfe8c642e19d219eca30a9fe25edf3328737f086e6f6158370547b826c31b0dcad4d8439eec2d9feac98fee9b17c4786b05aff028f921acb1e572001efcb1ca0a04de01f4b15bd07e0600377a73cd400771551ddad4d923d68cc8baad2b4f753949ad6999c43378acc9c7db34e1a5802664e6ef61b4f00a78724058fe853880ad22255c38b109700340e8e6462c400189398dd529696fd5c3c3c38faed20be466f3cbfcc2310971234e14644829b911ae3d02fc7459efcf0143647dae9c0d23e67ea28095332f9d95815fbada7caad6591021a31b91a0c637e18f63f6e1d27d5b7b4a05214bd30f1148557d18db444cae7a9ea43bbe5da0e9f953cbe0c0b228737de3b2121cc7982f08b463c9e29e59b6a3ed8c868aa854248f45d022ac3fbeac0f9885dbdbec88b32653050df3d16f229538a13925f911d70697aa707d2e3db494cf40c8beb4d3dcb9004f26c555438ce82c6df2168ed3aa3befb60b146529389f7196786a288f4a93fe3c6cb000e3755ce2b95ae97f437829ff2012fd6169c04d4fa18bab1f50d2f97f69b8cd6a78fa66748a5d48c908e5a54a0601768ad0213368d354719c493f3dd41c64375ef47a343f4b9799e57c3d5330348bab546570223b209a3d79cf44d1255170a156c9d7cdeda064aac1f7ed158ad6ca5c3d0c03637be2fc12f89ea7a8decee42b9155042beaa29fa2b9ab41afac3c6927187d432df147d6d5287588538923bfd4fa6a3167bff0a2f62c793926d2aa5ba0168dc9cfed703d022ecb359f3f6554b4386af4c7d3c82b589dfbc932d875045e432238af4e15d3e1067bf2d18a63527f56899299b48d3722f5a7b49baf5d24f0758cf3dabb8e7c66df7fbb038d6265db621e361981a32ab558df805ccc2d6e5498798aa0598848123ffcd25f409d62f376463610c316ac724f0d3d2c72ec2bffa6cbc3e16b0c15d03e132e883231d2090151fa1b17ea420d0354f2379dfd846e009d14eb3c536e81fa0af1ba41c853993f433aab5191ff04ea71aaba062784265b8095b8d4ce4073bec5c4f2269db855e62debeea5e9c02efa4423fe292850b857ea1237309ac96a1e974725c06eb373aa7a49e7cd4c224a1779c2294266af7f58a6af903df47c7995adf3adab701953544be4a504366c16ecfbd01d9f8be5c15a8dc32f09f298698a445009a4aa5bb3c0f667544f9bebd035f87467cb10af21d58f0ce115749e9a2393ef7bbcc81aca89f06aac55505dd3cce104029357d3719585a9d9ddd913b9c8121896dafa5a0acd2bd4b42d64292e0e4a79343fdaf3e449d2035abf08dd3889924911ea20b03ce4c98c2f00c4ed0c8944069d326a0895ba89539463413272f4e69ff2bd4b8a6fdc426c009dce1a621833faf8e74cf166119a05a4dcaedea19fd98764c5f30ec0e49d5df715e2fa362ce78eae7792f81ba33ad6be7eef1854192f7843067123fde3a185695f81168bd2fd540958d2f08f3868bc37880d386114998986a0154f7afc4dfe9e580d5821d66fb4963f9e4360c21ce97901aaefdc763f962dd5463f2c56348541e78c2d61a17ceed73326bb0dd5cf2b0d39efa0307049a5b146db2974a62c91e10dded1b5664cdd19f02bb434648775efc91ea73bcd1e172a5ad7f01408ec4ff7ae7c7af03984f44b4d183386b527d946d4585d50e2d0286a2145751ba3b9f74c7ba46ffb89e77b4a6bfd95efa7decdc18ed6ef76eb770c94817de01b80f3a0696cfd61fb2e8a0bc34f0c73487892463b4250eb0ac83f00e1eb790b50c05cb8fb11789dde8d42a652e6ac59df9b9f6fe4e239b73510f3c183ea540a3da0fce373ff828f9b9bb46ea6a36f957327cbe6b1a0b4027bbaf3b23e625f737d78d09b949c2a8ea058ae2ff00ad1c174db07ca2a1e4a530ff8b86d506b68edd94b65d215b708c356c671d3bab11aecfaff56ed72f12daaeb34cdc66ee1cba1b3534826bf0f81d7c676ecabccdebb78f3ae9fcdacce867d837e5bfa84cae5eb7dc67c288d94a9b7154e3044408e25975456a3e6a698d40a2b88b2b09e7d3d5fec6c082c3f8614b2600681072ef38c4ec15c9601a46cde9bb167b3e96de84d2310e2445c35b989226626c72a5c01d361471b65a682adfc83df2939ff7efaf328f2d539d378157dbfdb8c02186311934475a76da496a5d0b6a2f2ca53cf73bb49212d5d6c7b2d9f340a8e7f6fd1f045693c7923266e213ceb52911603b65187be6abac0a0e053684caedaf01c4928961372e9e1ca2651df41d3ae4509b83e89128ea5ef48c5ba11dc860c7f1dda82682ff6a457eae74a60d70e361d1593b52f09ebc82e3d5fa5552321639bb9c9c32e53fcf1656529d3cb98590349fecaa4aaa9cb99ffd04b9b7db81e0713f74c65dde35e17bf793ca9c6ef6928c1d34be87ba574a1fe5d316460b58ca6db48b529103967d670fb20e6945dbbaa36ea853df7d30780a865bba2d07375116cecfd025c619892db745193b053c811bbcc8aaf3081af942cc117f4f0efb3bfc4d62d4e0ba4234bb2a25355ac6e661e3b30d19c9c477b00a2ba2135dc0c4cf0643fac97620c1aafc4e1e0b5d5bc1066cebc147ac64c6dcb7ef825ab537b4ecde98c62a341e1b86f1420c56fd03ac29d68bb8fbb1aafc93fa477e2dc05fa3ce5ebaf74ba718684a5dbcdf96fc4467793ff4b30ee569a2ceeced837154ef6bf62cba086a48e476a496390884d71eeea1ae7c3516de5ffc4747d861ce859bce1a1bb9afc6c58094cb075056ee0b51a81b3bd4810025fee6c1241713d356482621e1e98ae97663b214cca8d907054fcdabc49877d077b596eef4956b6948eecf90a880b0b6c9aa0fe4093c6c0bed403e16f2fe5f02c6884ae734bb5f79f31832c6d05aeb6fd5caa524ea6d9502eb13f6710b9b5f1f02a6feba7545a23dd6975050ec46521ab8e36b802f667e3eb3ebd725730e62c2190b0d63dcb29f45cc4c6c928333eb1dd92ad68274232700f303078a083c339666e6f834de49d30c0ae711c63cb7bb24abd6b74ca942945c9e4adc108a12a3f0c967b5995456f18490762455078902f625e5e7e3cddd2a59d04f81c1cad53aaa14cb1642f48b7f2c147080705a33509edaa42c3ea9f34363057ef42754ced72188bc26cacbe6a0491a561ddddbffb0488f9c48c72578ea8cefd16bb3a482e349f11fbff83b76f2e215f07d2ccdf5a3434fdb85a6777dce2beeee4d1275092b170d696fcb6e53c4bfb283ddb74b54be239104ed4ec26e1c8b74f292cc6896f65be84d80f39990f7a31ad734baa221be80379296da0f3fb6888ff040763e120a6cfbf0e11ff345957abff9f6aa421930f20ca93ee20604191524be4b1379d4e48ef2f1ddfea46a5d656bf77c7a288b659a44835162f83bf87e01ea2a14d830883c1c4e794fba31f0637a5d260624bb775137c4ab8ad97bda6ed1eaaafcaf4f2a18020314912ce25b8e4e450ec9a3794718065f7e475a278f2d328ae9696c41aa4417168873af6be4254c3fc9f8436bc720629b062a863a5156f5280c940289f00b4e07271d75134890610024e29b8e28a10ab36c58e061f711d4860bc6b8e657a30dd622a434e9dfc61adb546a070cf6ca7cbc24c6173ee1032e9cf4d6bfb0bcfd22f7dea6023bf55f45259221a9f864d2edff42e3adecee2872f8dd24fff7b20bd418172001d318bde78836c6ba8f3ecc6c0fb144c16769487ba84b9070bb838aa3e359f0c21f297ef8520f5d3a19153ca150e426bd462d990db8e1ca77a53cffceeecfb996c9713497887c8d16cfa51dcbf9c131f42d3453bc8700e513e25add6819bc8bd267b4c2721bd860e941b422660b0a718bede789d85de06287cc6fc3cf5e071bef5494e72781b1aa70e96aad76d487bd5a6fd7de6d0b198b71718691003d40745698eb87040ffb8a2cdb33e958bf030dda541c05b79f155a1582273fd7b2dbbb8989809ec42be5dbfb541490fe6050dda2a843c9b28aceeb0f59b0e0f8dce02d2a1d614709efec74d8cc39e2c8c433eb2de8fee149ab75617933d6fa3fb898c295746a24fd8f2086a20f743acb1584818d324d447d3507e9606fd05ba87dd47a100a0a65dd05b8d7b06d3534185a156220bd643e0fc7a1ddcb7d81b4c5af5399f8b2304b132299e4a305ee1615bb7c3be3a394419b84f697ab59a422ad6f260abd445ac3e781c007dc74c04159547a03f9036d0353c07da3a200dc7ac122da85a2aacc2b41294f1d8b8d02284ec4f1d4cfa1b0eae165739176bd50845866593aa5d71fe298cc13fa8bce6b0781e74b297e97074cc2df19d832b39a29ea94e956934d7506e84a8f11078816372965812cfd6fb5688ee3259cc5318a175886196c9403a24fa6b5a423fef06836ebfc48fd45c856cbf1c68f5596fa939cd79d7f502feb58c2e99b62fdb05a8381c40c671f4e0293c4403d365e823426f3543909dead8f85867b8f5e55c234f9414cad30cc1e272d443dd4f196cd8ab2f8e42e2f8c56bea7316911f88dbb36a8f0b90815154d131eb39e0f65b16018b44bf523cd7feb4492ef3295f065fadeebb3dd8f19f93e522aab76a9845ca334aa01b9835e1138c167a4c9d86cc724c4ad1918dd3829cb5c6c507cc52df9904a282660ba79399eeb69d998ab30335b70fadb57a960d35b41a36fea05e0456796d971a9eeecdc4a32f4c8196ab7c9391de6f4ef3c54ef5dc119683b6897e359d940ae482be7951ef0cf1affb29e3eaa0a2477792c6a960d5447fdb2028522690f553670315e7fadd563d6e616a47ff9454660393fff6403ffec550bf34a11e3d71097d11e5d5a21d439a2cb3a0363b80a4c875aa1c4dacad6dd38952fd4c21f03ca02ee84bd9eb44a95a161d28e8d64f1c7be76c6aa1f65a74929315a37e9625fdebe76a524b2db4a1c4c80414ea3cee36e685515eed4be8c00a3e41d298c60d0aeca513683e5ea4e457fa4a94c062a4b97473937dbc2136c785794a78fa5e35f5ada84393ac2fe0066c0497c4398cf9bc6d36f9aa19a3e59a433a81e78c147d1d4c392273879f7cef210e009aacf77cf56d36491376ff8351b4865c0481045c7247739bd1673d98dfd594882f73cd7e68bec60bf636a80c813b776cb8c0666fb734abd710ce4839a03047261c10b7609c3fb22b0341d8524ee1355616ab6f0260964ae67c57a4cae50e1efdd7620b2656c6a508acaa2b52550ce32edab2d9aa50d444fcce13a8a50e426ccebbcac44dc25d2c7d05c5becde87a964b3733802ce6be660d32e3268290e3f771be6fa67001adacccfb2ae2fc01ae3fd2eba6de4232ef4c6964bfe89f9d3e85a9146e8a14819a399298d15c1a3e9bd2d866aaea5b496f72eb9c1321442c10d533e3678d9ba494f97223f8ba215e8544b1ede1af7a2c87d9b4f8b5f7115b7d06ab1ede001e02d75bb7ba5eae39068b2cbc2c5a87d62a837e18179f0eb554236e379a873b46b6432bc6495addf1e962e6f85eb6a36a2633cc47aa5593ba4db4c8f51eacf891952c09aac684787bccb7c89773e32c4c9fc4e975d8950019e34bee2c4a880a6f79fd24adcf9e5e9292bd89b0c3db97a1fd6b05ce4d5d187c2234d32ac4c40c3bb47674120af1e128cd580127bcd0fb5e6dde87be957c8baa719569e14ad05176c5875525b2110c43ee6bd70af6274c49da0a0073bda0a418f774a79bc614b31b628049be30e19e8d00e5cb481309885764233d8d54b282163092098ea32775111f36675252695e3f79046c442d29047fc214a8e8810206306051a76efc890560674c01f41ad3fa5e550057922d329102e554d5856aeaf6e9181a87358872c0d0e48b6fe2230bb4444e123d8e8e282e6317fcfbe74cc5f71e1190924811f4ac689084cffb899df67e2296087834128d862b95d04c53ab8b82b985443df29815cf767e341e3c983bf1bccc8380ce14df286afcda481c9c04ee536e7d21d9809514328e001586968449ebdd24e94e202f187e1bcfade8d5b374745110e106ee5cf0e718c39d75c7f8df9a4bce3afb73711186fdd6063cc53ded27a20f0f0a83e762ed39fb3ebd6c79bb2f4bd252c6d5c63e3a9fa17a7b8e91aae8e7db5dce1c7fcf778cd3ac4d7fcc0967a73f39e0e1b0e6780a1ecc9f5cdb669a111d542a03d1de54e4bf1970fba8924aa88e92aebc40a76ab1baf99fdd20ba2a8fc3f82d64731d1ca2259d03ce91e2b6b850ed8fd88dc54ea190ccdeb1ba27f8a3c664d370069068deecee2c80099623d3d4dc26e169227015e0015b2bf3cd0427347c2f64b026c1ebb891a94c264c5cb500ae77a1b49ce0980b5714cd5204ca2b91e9590ff50c276b52f6c6e5637e30b2088fd5073717f453112b7e71e787b5a3b0a6d74757636037934f8f92cc444c3e7953e2e476de5ff73d28b84be22b55ecdbf11d097f8ab5e9f83d87472b2149e566390230c6032fb39a5753c9beef2ab3c5869f049ad78c2860020635735d5469da1e8ee55f7c1a916bb84e24ec6a1cc2376201f9c6145ae254c6e8850cb8da7ef432a4330448b8a65a7de2c1b80d80d6424cb1c361efd12acd71103edc703b3ed6838639fd96e9020d9a4b3b076ab810ea86b95b822f345c43f88b0bec4c32335d76ada6df39af2f8f51a0d8e613fea7cd317492ef9338468be1be0cdf7bf521699965dd529a28c3f3b7ad4ac548e061e50eed70276c424745c612cbd965d11fe1ca538f40d851b406b80f48a9d5e864f2f090555a8c5cc198a35bcda5ae536f3d45a6afe747b4cadfdc00065bbd1e54e9915c2d66eb0330cc1266f9cd8bc25ccb078ae5bddee9e8c2d86852d9160548c972647054eb126de58d332bc9b5c22098f78018892f752964bd812e536e2ac64ba2be0bc5d8539f38d08a3496dc2314552bb97b7fb235ac5f16d5c7163a7ae073acc7ad437e56ba988f67457d1adaacd918faf3229f5ef950db2a8e41b91f52d7b55aef216e5420cd4e5281b2f5caae29aea4bb5b5a6a78851ff46671db3539e9fb4981ea74ffc7681362e291cdf423751095d45c5876e5bb09d2777a009b535235011fd33a28b098d74bb50331a27d4dadb93946a9910baa09e6ad140667c3502ace119325eac50b19f707bf5d50efcc099ffa5cc541cbd9f193c21842afbd9017a70ab68bd81f44e605aef303beb76c96361f21f346bab7e8c0dfe85d4e497dd399928214cb57f8de207cc5492ded700fae74f554d06e59926107240e942590aab1417123882fab0e6ea54baa49a8650ca7066bd81a6127baaed7a867caf865faf538353852f1c773ade0c62dc848992e89142dc56922a79ab04423d3460d1baee4e3747cadd96f0fcb13b91a2c98d51834e18b53644312a79516b1cc13cef56ad2954f536b9b231d030f21646b92133e1456177de16eb734aed0f688c6d7b57cd5513b078ea845d9342ef23a7d6c0aefc81406908b5e204a27b86374dc2393c84d3f5d8a3cf241c2b4ca93644c4ca1b8e2cd4142a77a58e748551b96e8820d392dcba3f338725961351500a3a6259ad96167919cba94629b8753c81fc6b752cc6584ec6d1aefcae931f6a3185ed006cef277d6e90f11ab1c89ff904ab9df17e97784756e5dfd3131e1eedab72de24c04ca71bdbc12aab434b9af83c512a72be6b2fc183c1b624afa5d65eb30a42660ad9a3065dff53ceecd76c4b7378ed059abc4aaff4b897be3e024de904c9dd664103342f28f07486a40381a4cc3b0d7b9c0eeaa4986ae021fde5c4d26fe82ca17c935c8d1a4c7f102159ac2342010846642c8dc0a0e2632409b45e5a9bd75a4307b8064effa433861ea8dea57f4db95c5c3f1ab1bc58a18888ff21d7081db732e809fc9a54efd32ef339cc11e4373e003adfbf20532b9757edd8d17540f2d1f7af6bcb957dfa4baefdb8e14f6d4ead55abaa0566811cf8b1b3c5dcc62e69fc89aa9a6a92d41a41c95b5200f712b01766bee1138753e69aeca94e9295695f548822cfd40a8520f7187b17b87d316574d8d6b51bd8282641c2e759e95ed11bc5d780f9a972fcf85e83ec1895e1f80f53a3b846e5d9b439d86ce97195c8b5dc1afd37c5f4223acbe44ab4002c8d3775948c732df40e923733e4ea4326cabfff3184dfe0a37ba227fe9a779ed5d21d4bfe2171c1ca5f6b6ec0d0f8b3960bff37d196355951d16502f951ac04dfd115329d650d4d61ff8f1ee8e2758377208f696a3b629ffbb5b4a20940e5e3497bfc3958941843872184e0a680153a2ef9291a45bdf8fdb34142954bb95d6e09ba021da5f49eaa24de4ace88ad04f96b12a3f158b532b067f53dcdc9199b61762bd31aea5318744638ee9571a3a1de9b195f65e6b912eca226db808840a197058a4e5a97f4d31bfd4f7607bfd015c8cddcdf1343567a6302b4db35233774e815329b247594b5967b756fa0bbe1c77169fa60f4d028f960d48db3406c5e6522c85284c431fd0fa5c74b80b868e0ce2a42b5e6f9daf4782bb860c2b36e6ade4296c55d33e6b4c2a1411e3814d599d7fa9d592ad8bf01bb15e35c68664ab221011f8cace51c410a63080ab26b20b2abd217f957611229c5adf0cf2188eb65050a45dcc7762f04afccd758b22245321714a979da9332976c7ee75b6d3e73ab9a3c632cb80e3d53614cbd745ea5413be093c24627340b951595bd3788cefdcf3df570b283a6b1e8b0f0e232010d9f0eef9f6a50279b444508e97d57d7bb94f3e68a175d33101d3050b78b1e2ed30d776ca04079757298b8a5612d14ebaf1d856c9dd36293fa1564052f41f0981901328042e2246a8ea0e36dc6253cc4c78203bd9a91edde7316dfcb7b26a96dc2254f27b07fe990897d748fa43b41f91fb3e79735c8dc7dc7f9870c0c4feee228d430ff17b03300e20660c860c71d5b0a25466a55e4b11b79d9a721c809917bf6712b8793ec1cdabdd7f66fd02ca6c60d7d529e330a9ae663b466cefc5bb2a5dde33bbb7fda75f62619e3dea005554e2757cc290e94249dfb2ff03c6ec776a9892d80e422c032f0e36be06f4c72cdd1e19508226b3139f60bd05782b01068ba2ff6704b30eb4a0daec7155c24eb1c9ff557498cded3e61f0176cdf6daa109d258a1198403b6dd7f54eb9a8a4af953c2bbc36e8e240ff0783fb11102b63b87cef7bc396f117d8afe993da291750bc36d805407f0f6f560a6636a13e53f3525ff21c8a1cc1c114430a3c35d2477aab57001c436d86e5ee4de784673e1ebf3da71b65cefb81d4d77e963ce1d6ca0bf7f4e632e034b35e3261b597a48c30a5fed60c79e6d8649e25746d853ae97acd52962ac9b4cb1d0b8694449ee98d7221b2b5c4fae4efb03cebb5b226905175069da6a8f8cae11c97135b0cd99830916b5ec2eadf61c6efc5fd2c4ae083d484be1d276133965f8887ba17d620bce3ac541d54c7f0c18a592ca2009166226a9da462d7ed119f6d24bab42d785da9c26bd1816a0aeb64982e40b1cbc455bcbfe501489ba415d7d048effcfa2ddc1f32389b8439bf178f73d789fc1c0cc7154411a991a0ffd9d6f5825d22a66e022bb7a8f0a3fb925cf90efd891cbafe532319c3e3c0b7942f76330e3cfb9cbadbbdfa3c28419f1e8a3e1573e26318ed3bf4ed8912acd9dc790a48395728a92df7a5d64db63bb76f02ce7a26a76cada6a59326f19b6ba2d406087a1d7828160125356ccb68721fb5e0a0d28f8bf1ffdc11a43f38e33c6766ee3a6d348f0f188e52a1078973e885cf6a548768d58304a20bdefbfff6f559e5c6df23e972936c7df284d612890513c0dac557123872db65c97c76aaef87c0a256e919a5b71713b28d9ad6ca0547a6b5f3d427586a3a7a5b24611f5216af1f9014902d360f07dfe873df23e1fb33334da079c856c6c41caf4513fba22cc62371ed05239a77ae940a985bbe325f4c76470dbfcb6a8eb1966d61472b8eaafb8145d203b487bd18f37527d26d9e71e05577bd3d25a175b2baa5c16ec8ee3a34c878e29af5f9b49618c85d310836d48905589ff61683d0e010fa2d71be336dbafae12947de28386bbc5d0f75b5e9d4d461d1d55686b264a1d610dff31eee52e0631ba52270c60ecfbb01d5331ce4a59f1fef0d5347a374b955a0225e2cbdd9e3cecd746bec0476795dcef7aa3b22ef8cfec11e9508cc9c9063f55fe4958945c1249b5853303b487ed5b8f1069ec2e3c01f2c93d4544a8d06b6f3a998bdfa9a7542dd2592c42e23dc7f59679b8e01774c602d664ed96cb3f7295cbf38a529098dd55d6855e3713041d76f006eeccdda8a66b65fd453118b3d91ab5a49cc11b63453a17b0f3eb298b6a372f25a4fbbc273867b7f4ab566932ae930b656056ba329e0ab2c534840ad1adcd76876546557cb0dde0c1cb7d51f89a75852103e742ea42fb3eab7b3dfed1aad782698457c82f7f6fc94af9eeae01744194fe1d45722277366fe7b4a3431588fe0b987a4e03b3ed3b74a7618752f039cd62fdc4702ad68bd04a9abc453633874da793f8af038614e92537e524c73f291a2dd7cc647133b3ed83bbe0bacfd71f72e2c3ce94cfee52983d20263bf0688ebf361c079208135deec15e6a647dff043a333e0b02586d8e4aed146dc508080621ed1dfd6cc96434f71c8344b3f8dae65ca586a746f5a0c28ebf61e12d2f042c28cc2fb7e768d11903ff4e2adc1630cb56f6045d1f52bec2d739ff28059a8f1e20f6121086f5a0facdbf307ebebdf1de2ac9a028227f0eaf6e523a1c19fe5f6a6060140dba08d4722a2e6def1fa0b3c1ada93701ac5b131545943b3fb058f206c84d983eaeb65e31c24ee8f0950c656c44157fa15fdb21c9cb3559503dbcbeddbbefcf605a5aa8e9393b58023a99e09eb4cc053343c8f7a74600696694b20c32804c239fe155f1915bf9ee612d8818c849dbbbebb7e62870597c291391dba62fcc0772a4df98fb1aa1ab3249b1a1c868a5b29ed4be073d4e04c8fe9a5e7658ccc1b8dd3ae68ab4d174d5757ec513509ef4deff7b651d6700cca747474846889d2cb83019642bc6c7d6ba6a110549f4357c33b7b7362338b779e8c7a18c9422194cc4f4c311fe6f077b38cf158c06e8ebb6011e583e4fe0bbb123510194af8c888ba02d5eb8b54e6fe2149e46486116ce91530634ac9524ab62d5fb60ea57f3d5558656fe07a3233d42f60be546bd4e3ad9cbefe27387d52c0584ca015b9b071eae8027df145b289f9a79cdd704aab312660c23a2d952198b71d0bceddf7de6e985425bde0c2a426d11c29f7d5f213bb39763282a3ee16e407c72b9d2ce5bf86b0112d132fc52479f1350b5d3473ea9aaa3190c4dc26a59ab4f27f04f9009d00b52e5b4597e4d70332fc1a54fb5098f2e0a73f8109281c68945978c6da71bccc8cb8d5e816449bf9d0e2f383032d2e66500727a1401d7f3d1f0b0d3266c07219e446f6d2995e0c983b270d197b55495934662d4c1df4e07e58b9132067cd2cec5e45178f54b43082d7c18545eb389d7bc37e98e0003d2fd4cd69b378f9f7c51d3f2ff8f305d8878489e1c1cf42f6e1e17c64fb9b0f502abbdc2f6bc7a09dd065018e4e56444e2309b9590400086cc0f001087f4be0fe9d2825dcbcf09124fb3b232b92193b7413eba1725d6b0e8a2422de48ba553bf54829764236c3fa27a721e91d29d86fc99a871dab3f94b876856d2124d34b2c2861b1258be420816dd39d8cd8173930a4cefd43075a2ad9b8bf0543705ab4a80a4af1c410cc1764ab65ff3cfc30b4a935206f50eb7e625276e86f0ac9c85b67aa2c62f4dc3f005ec267c990ba4132e905b20a4e8378c40269516bd59a31a7153826bab3a67763764689fca6358201539789c1a79053c2aa6cc1699b90de07e213003d8a95803c3afdb676dc02b3841551c3f892b4609e64129234943e224e7e25a143fade159b75ab466e17309c1c562c0812e2fa31cca09289a24f83eeb36622fbb5270214896f220ff89ee25163182c908d9513d147df4c95ae82549e1db53b8ee3509e03da27567ff5091e7f5bc860ddfc885bd10b38efebdbe9643f6df90f061be8733136e22df6a12baa606213cdfd4009e6094efc15f37836d8d542ae799c5746e4f243ec556c9be798edd7a4bc7da87b9217edf87206f15081d442a4b9771188bc241a85b45d42ac7a03915dcc17554b1fe409bd2faf12ffc832727b2cde6dd91cfe6d4fb9645c16a7de758c7e2b728b33fcf8a7d15b0982b9e33f895bf2fd2e44bc5b0e30e1edf53b1f7aecbd0180d36ebfec0abc5aaca2b3434abca2b6557c45b337cd4f93c95ccfbdfbfd85b33c29a47a01a6888fcb79bbd94d7d346be9afe6b16517d284167850d1b24ef411e4bd1de210a28e24ba58535597ca8e2fbed141cb05dd48499ee76da5f553c1afddd470eaadda9052e9f3afb0fe9e2888754bd5addf87bd5123b3ec30ba7c4b48e69c05a6fa06ce333c33533d28a19a5b5c30b7344a5ac108ef1672ceacd54f2a63e83975f65f0d5a012338cfe4e2d3f72902779c4f5cf92264cce19e001cf141f6bbeea56c1b69681a58db4ac96e5b31ebd32e5083b26108b37ca135a3b53e1c5568805b75a5982b4f5d633bdccf412ce8a06804e54e1461f0410dc236e16ba0f2ce5f66902ba094e5caab1646d60bf0298b01944a06fca62f0ae84c359af6557f73abb47b3c9227d967ac2b169ad3e2a320ffe6d162f4375037a4516f7b494eb6010f0c98182f59beaac5cdc204704c564e08b7475f5c335291d75a8ab8687700b0d940c2b7e78f60cecdf6eea05c81b4b1106fbd610e0da40e48bfa97363fd68bcbfe13877e0f37aa153cc26fe66e1cdfb0eee8661933db9ae9bcb763492152f76b70f6ba2bbe12c0a4edbbdf2821dc28a4337efa2f0617ec4b4e7c463f7bec37021a2b13bfce0b89f380c049792ba1669023f17088df6e971240f5247e2eeb151427629181dd5edc8627aeafaf777986f5df08f7289b12f9cfa9cf20696504f5142c524ea032c6080ad9becb5b8f84cdc5ecc404b171170a5252a3bdeb63d0c1f8a6f08dd90224af4c882928c4c185d1105a519626507d2c21911d077a282747c353d7a19f1d24d8dfe6004f220b4a29a990b806c27cbf5de8fabf6c96e4c2a18b5da30ed458aac99431a3725dbd5c828859e7318217c04d7eee135fcb64eba3462f69d45a8a4fa9f26a17d3cefa83bb31567d881c085e5d144109b671b4688417134e468c6cee671d518a70127b0e7729d3d38a3d96d4491dd1c4aeaca85c2f61d3725bf3e6737edf64d3dc0bd2bc4767c8ecaec7cd3d0b4807c653eebe31bb25bf3abfca9bf360118535f11b43bcd93b0b91a493a3b0f093c48ec08f12f70099b4623c760d2cdfd88db8f6d9e3ae0144f007fcc46459e36b015a1fb79c6a284876703deb9b2f076868ff71d633d6414f2ada98d9b0c0d2200b02e0b2b8042e7dea970e59984dd95f3077e2fd949bf46023895473c19379332553108c38ac822bd641c6759f0f95ce84d5dfdaf427e38288bdb61c6454fd1553fa1bdb73afc2516c339c3635201410df50e08ad7fb39b3bae9203e8bffda367db70d29a238f2cdf7cf634623478a846954377a50ff4f746e4ba79c50a0d3a3c068317dd16caacbe71cd89e17d9db60aa46920d7cd5a757116bdf9a3a6e4355f195176d853d510dfb8294a752560c2e4aad5a866b6647ac35751528af34fb12080f2ab1196950db58eaf536a4e9e64b271545cbb5551e9a10c2580195598f5ba40d435f32f187482860ef29b63f8ac88d149ddd113d4f231726024f0cefdc0a48a347ddfb9fa52d93244411edac565e33aac500cae9a2e2a7ccbcf584a6b522be4fc9b7e72041549d24798a27f7101aa4b160cc32798d2f0c233570fd1a69764c078ba367b73a1e765b6237fcac86c3ca75293a0527da396e78cad4e76ba30c1aacdade93d767cb7bc06eb51e3f41f59bac35bfe07e93370e0aa7ba3a5f1be32f68f00d058b32db7cea70bc65f138d32a93c47ddc468a2bfe23e9e188ce5cf4d852aa94a0dceadd8e128fa6f5bff5f221b51cd39bd3e4ace84d0c1a324419799fabcf177130d682bfc266fe70d8bb4f4e007d36670665b095afea58c1841fa3ecdab1329d9919cc008d20170d3be8f0f54596a94233dbad55d02078c703c7b3a922b32a15e977968603291aa8664811c5225b21c960b317d53ca47e1d822d7daacbb78d73d4f77bc25a6462015545478c323be8a69ca1b7708fcfee2fe85ba3fc2684df6f82316c6e2341e5cd8911058a3a31b72cc319a4d53767dcbc9ef45f6ac3e9af6aa1f140cdeb1d3c307dbdb3084fde7c0a1ace23ebd3b3493a6bbc5582ddb5611207c219d585048be2c01b88a5bf3aaa8b61ff69f04c40eed404d62a2a9df395976909846e20197fdab7d01310ddfc7ecc80458d4f726c78263c781cc5a0cf5e450de9b66fb53245484f20df8974397836bc54243942c3d2aaeddc009f445287661440f62a490544e98d486e414ed1e870ac4f6bdb9f6bc4455b21a839128a7e56e85bd50911504d6bc4fcf0cb8934859a017c6e749663ca8dae9df3c4755ced800d747be10f982acaa8f13c04bd9f2f9d37e3c666abb68d44f92f2e8ac6e7eb45acc05349e581cdfce82b42b923cc75ee6a5d34b0a3e12d12daafea794bdee6c8af78d91b7a800cc7ad76ad491e31328dbe881d51c4febce7f61a891b4cd05a99375d2f56e42b6d9441f03d75207fa5906dffd996bab0059d291d237f0682591e7677c8e0d65905ef5e49ece8fb6e5704dfdec60cf95be739be0a55c43412e7a00a440a15a7b799b98603204e81e4ed926c5279494dd6748045ff7c64d10dcec18734aa5824cf702684d198d2ab1f29c33db2ca12287a123e4c6b57fa89b1661ecc146dadff65d032d8fa22172e817909c643031db9de952aec8b8198d5a97627c426787baaae9a5003a6a198ffa937ec9a4cff1f86e73a4352baf3668efcff125db127815f55a5ecaec6b66d8b9b033258415e1db17f5e622e7b38b911d82291a2201f8decc186136ba59f9a0afee80451f4825d949f53144593c187327b6eba8adad03c3e64c0b7a5435773d125ddd729c75e6add66490e5f0ac95bbf8f494603a12440d478cba294b7ea04b8f516d095a1388bca3a2fa6877ef46eb1b19ea2921ebd69ca9ed782e7eadc978834b26da591a715d352a77eee6a101e4a54efcb3b8b190da56cc5aa1a87fd66b0a4aefd1e030a9741bd2230f09c1ccfa78b27380e706168dbdb9178225c0752432a2860816dd58bd8d15a31cf9b3aa3ea950e9f4e8389dbb3b134fbb5b12ba1ea1b9a022aed930b3ce3bc6bfb6297eeb2cbadd3c4cb728b47e64bc1ebfd9001a77a56bfe192168e3547b3be16567fee0abedebc5ef542b0e79ee2c70353eca7f1bfba2bcbd0def75b499dbedc0381a53e7825b60bd368d7d6167c0bc10592be59ebca64d22561b7a4608ddfb5793d6e2f4f9c3cc7c2940a1d622efc2ad7696fb39b1cf8b60eb9c62d40ccaaa4958206c15ac75a3f9aae25d068780d7c07a3fc62e461f59f449e5fb0e674a4c7248ae277c1a4a0083a91920b9ca0d51cc277d6cc18a6bf0129d5140912524505fe16e32128a7d64d03c8efe424125cac2b89ec321d82e607b40cc4cb584caf2eeeba52603705eefb351d9004bf69de91e4a7bce825031235ff464df22a85b929ba1035070be17a1b841d76c7f920bb9e55c3d9b62c8c02b7fafba0dd58f183d64ceafc2a436e757256072c4c2fa93616a5d8f094a04de92ef92bad4b21fcad1174899031acd55fc28d6a14f78645ac41cd1a06e232013936d57b00cda9129d53f1d9bcda2bd689181884b39ccc83f81cd57dc5fb37921350e8b123a97bed3ddcf690d9e339b1c63580712b0872acb2190ecdf4a20a45cfbdd80771f30f4a186d56cbe3c0cf39e7d7cc39b8ce05ef8f5d0b9a62ccde607ad28355cdeb955c0a2d315bebd75442e4565a6d37f525d495429adf45e5adf611ec12ede4e6296bd8d598c8e451a702d98b80f2010ec8ed45021a7cc51ebe3fa9bd7053fc05e12bc1e34dc9b3e7e1e3fc1468079c313080dcec8a1f7fa56a10223e693dd8055ed817a5c0e5cb80c09b9bbd84833b650c1b598437e38ad65a8cf3c9887635f8489935da346514f82a3b6a1fad8d3e47092b0647b35fd9ab218d492aa322c9b4e1d556bea9168ae752aa3b3423f18b1021a297876c97fffdd43fe6d3c7710cb2e7b260d4b667687465da93bb369e1bfa3bb2dc06667d499d9b48dfb17863a30e395e48a0475f69a64393c96ae135ae149728501d8c7224aae423c557c37286897cd34ede4c449870b6205ea42656f035f2a79980986d8adde2052dea51f6565ae1686082bce252c1ef6d302050c259b27d9d8c96912dcc0ff17aae80af5843740a58d625c80f41a9fb8d081b4d17ad87274a1205fd82fe59cf8b840f29b68ec997eb2518c7cdab84cbc24fee0b78fa0aaa33d8f2d1237555ebdbd316fad26877600dcc681a1af2e7f025621560e294af2f01b44d86c410f32c2964694065ee1691a465622e3e23993d4c3021d34f2fbed86e27675f1640160c80ea40693d8cda3bafadd3cc4cdfc5571683feae7ab88de57cc778a6ab23a715c46d9c9629d060ca039de35c06ced825146ffa0c8c4691beb8c712f54f150ed260ff040ac67b950862d4204bf1d6af13be9b060aba85a57871d9e7f78d244300400ef9708fe46fdf3ab8fa7be6c9c659584c4675fbd6a84b777d39d1e02d17cb80933ccc2601daf8636e56115a294561e41a0859c5fc407450e5e96f1db0456b234e56d52af478c9fc5aaf2ca63b3543a1a38d437a21b21c75ca8d17400baa7c9560250e16e146bb19813dc4b92d99d2dba38485f4b195fd0df305db3423522f41b15c447f15f05cf8b2b68b47ad098cfaca3dcf9bdb72fb5a60f1c125af85781887e164842cb063379854a734af0bf959bfcb4164ca1a3cfc17de89c9d19113f99e8f806c4c176d24318abf92145a4bd11b69a296e43cf4dcdcd94a9c4e395f83f75dd942903e332ea865fa5beb21113323e3cb758635b7776e1883dba8fdb7670f64d1306e27bf409a9353209145c8aa7d43db4da13599f1f86648b30219959c25bfb3caf1d8b386b6b4262cf22a255fda478bfabdf08e4ac3e56153301f1ed9e6aca81fddd227863ca1290ea1445a2594fad62c4c97de47c528d7f7c8fc905940dd03004f91ac54d07592ce1a6a5b71ee1f53549c17438c60b5dc69c036a1bba544f664512d27fdb59f09b16bcacba8cad59ebc00c063bb2869bdded97e72bd373016e662c60674447dff5fe9c5c61457b39f7f8d5305a22f709046c4619bc076c2e7a65e6bead0ad9b33db43def5e6666398bfb0902a3da725f360a8d4732a47cf37ff8bb8f4ff31ca41d00284540b59acbd0aafe4b7995e88ba35ff30042518f4525f4dd06b45c5d47a0a872c0f27dbeb5e026c5cb1b1d136dd0693ba5f16efd33c5631aae4cb87df539552ff9dc1d5cdb2c846847190349acdb0cd7614ea3aae9e2bab6774851e298897d24dd33d20eed35ff01ec30e9554c31601789b62c698f500bc91b23ba574abce0df2c566f56ae2fb00495bb798970bc612a5c834686244aaa3bf8ec37fd032cdcdb6c9f82e9d80492e79e499612094eb0fc4d0189398fd318afe13c78230a642b48b08ddb6f3b169dba10fde2231fc85a7ae567db48fba4a2023cf915345451bd034b5517307193b4fd7d90e3cc5e42ea21c6b00b2bfa3b5479ed1f8063df1f1f8470f49f3856b8c0d69f737c7a67f5145c806ba35200267668d3fc0b5dd04285a5486a7b84c7183cc630465b21c8d8d2ad9b31ca89ce7558305ea3b3f809d1d57f07ee4a6e55cadc2dea1e9313de76a7be8981060965dc2ce29de63ba612792a60affac8658610f61142c79fe8ecfc2b4fa11aff28ab8540e1ed8c867577d14918dd0ce164a226b17ab144da5f9caefc57369368f8b86e9aa5f4319987c12a31294720f6e0637d17b4ad6e36f7a9beac092d333e51072ef9c4e3ac0509507bbda88def28351095da3cd1eacaaf243d6c0563e1a6c4e33f042ec84238792445a8d2f5e5f0386bef99e6158f767c0f3344e789c89c420148cca95a486fea5f7ff4d0d36df966500cdec58ce31caed1f173feb1dda281f8ace540857d6083927254a0d37528ff267d7fdbdab8aaa8b38102bd0549bf22a24423070f2cad6188d22b4ff61d084b9183d42a0a211ba9dd60a46f0674317a4b41dc745078f68525f27051294d3bcf1185dfba870258311e4937b69da96b41774cb0cc64cc752dd2ce7926723d68693eeff2fea37ec575f274c487b0db75b9d2bab85cbc46a486fda6ca174dafed248b2387f68c854466efb3f1704648b1b51be37e52ef446596eff7bea35b5c7dc92b2becafb9c91347b1c2c3e8b750187a136694264d9ad7c92158947d908e8890371a5aa2da1d44864e063b8f6e2260918d81995cd538430eea30c21ad3b5c018f1f8e05d93d8c6751c8825a50f58773de702fd83bc98ed1e5f8140f48cf84a653eed6f467fdb7c4d1f39e0e5973f4fadb05382caa60a67887dc2b69c8fea2c3a4e0b63f65c6aff0b3e593bb51e85d7f1c5c9650a86ea9d6e9d3405dab20c22d4a00a304cac05fefd404893c267cbf4064e61c106e100161fcbc4e1a4d7be4fae17f866f652aa584ab9a0e14b0b8b56ad43abab8e8bd1d3b5842ea325843c6fd960d5c98ea0d0173107431fd52ff3143e1643362e4aebf6e7549e7387596316ca855b00cc3d2f7cf348e0a8a962b65258c69a14aac1c9f8df94f851930476fe6fcdd0dc278037176c6c870bf3880590dd765ad6b2ddfd66fc10a7783e53b66f35529ea81bec6a3c81008492390fd989c08e7e9fac715faf5d96ed7fbc75f3dbf68e4e5e37f9d7b8a6b5849c101f626aa3f9ed66e15374eaaa8ab8730725df6f70e6d788144ff968cb035240ecf36046e9d2415e430237e7d5960e58f842bf6f897dd1fb753fed19f19991e6e32f634a549f4316f78aebebce2d0bfc033f1f14c74b59678ec7f2fd9a7c7e6c49d97e955f2dbad4f2dc199d7d407700be8b5e2b38f172f2482ffaff47557e30696d42b132b43aa6c6c80723fa3fbe8f0cc629c293e23cc0e2332ca5ca1569ab1bfbf852963866a23a1f3c6c5eaa9cb5b6aae691390ef328eaaf646725a16db25f14f9490aa3689671d711c9b4a97728da3a9b53bff4eda485d326c455524802530a6a54919ce3f636ef99699b819cf8c93129ab70e5e085b3886e07066761a85e3fa127747254dc121201da3289c942b199225c358e74fdaaefd7fb237675b1862df79b8a6a89f3d3df459ccc19df8f47dbf404d1af48e4442cbea6fe7c93b854944ec176f7410bde23603fd1fea7fb2752498fa73355642f01319d7bb285300a56a523423cd44555a109e01f6105f4c404b8f2804231ce46046d638ec744417984f2d5e625461676817c484f49ea025f054c0eff66469d6ed18258ed8b68afd520c877969ea489dd739a7abf3d10eb16172a2d5c1b785f502402453ab93658eaf32c77332ffecde977cb09d7e3d4bef95ec0bdf4dde3aa37d83635f0a295ff50419374a08bbd305f3dc1860455768df0f1f1a30359394593e0560eea95fb3f80d12227f214c2d5fcd66441ccc293fd04a5a8c27d83ec7a754f23cd2de2cd91d37bdfa61b572217ec1d405f83f6da82511ce3a09b086344282c183a5eb4cd7765f7765506412b4865f2a8708c77e3f71304d029d8bd563de751300c6d14c950cf33a6ccbdc73961a12322e2f466dc7020c715616c1b8c8fa6279ecf90948b85f59b3e11f4ea85ec61cda64f1d34036d8c2fbbd92e6d6241241b3a889b65766079166fb6f3be401efd743db5c4cadff1f3f5b073e953c05ebe8b9eda4d71199f7d8de7fe56c90a7139caeada5132a84b54f3e058320386b9015b4c81080c2ddff42696fe030359c92ce581b2795d21cbc9dc9bb3ba52f0d8640f251c0292d35c0402b943b2515bd7657f7188ca809781ea4611eb2d5d01b9bf92417bb754758603e828934d0bbf5f2e8726cd2ddbd921ee2d606a0ba983397d1fe28313e2e6b6272ec3a6e72b148abaf4008a6d3f57bc7538efd577e3dd13f9e9f38e1e33f8208b837398b8261209d44621fe58ad50ef4bc0d364fb008622e464c0bf78a80aaaa899ae5c1e950ee2b101b09cc88ead42744aefc4e2cd4cd0881486f64e5f64f2e44974aa8bbd89ae548ac8f5244f9209a9ff36dc2aabd23faaa6ff49a2f28ade3babc0d163ff7f042965526404be0914606ff41054c6abda7b345f6ad04ad71c0ef474978c438cb13d26a05fffd962b9f0b55ec486b98dd4627ccec9d24cb82046c4e36590d1564bb221aebeda167f75e1d6090431801761cc5b3b9e96147eca4b074562ec9f8ac29385c400d3029eacefaa2c910c78c66081b2beba024f494d2895ad550f0395444c37e742ffc3b71548ef9cd0fef2bf573bae03d18e2cda5a0ded4df549089ffa5e5127cd8a1e731f1ee6a51de5d1e15cd0179a4237e61d198449a9158ac0c272cb6fdaf4cf7e6e81e62a3d91ba9c58baf6c1d56c91a6ca3dd8aff66645da9d392d4ccaca923ef430b5978d4bd669a3e79f87e3164c9181410a4bbea33269b55f02bced571101861f3b12a684efe1cc2dcccec519b88a16d9143cdfd71200ac2b726383a726f5b8a195518d55316c44aa9e649a475873b62941aada1070f6200c1ef251ea033ab234ab097eceac458b84765be16f7868a6e934ad7bbdb025dacf9448a841632f9d17d2f664b03427592dcdaf7a8f62779000a8b42de38fc61699218d53ca05a71e49db191ec077aee352d56ca13d0bb0f4267d9bc7155577a3355c168397fccec7328b6c9b901256ff273e98ab1d7e1f8e14e625120b276309f605b5f7d5ac682d8f56bea45f5abf5544706b55a043df9ba6f3a6d034c2c4282ff7271abf2cfc2341a739c106d2056c439ee415b4bf3e2fd07cd35c081f22c9d9792afaca2ba7913b21d24043ad08ed9a6a6d016304d1ab6da337167a7bdc4a59a2aa2ae9893ae73f3615124bf47047f68e87abc232328b611a10e1598a46509d1c4cd9ec6cee4b304820f4186d77045bde66793236801fb1311590ac81f62fdc17a3b06553c020f620b43276d95856386e85e246a76297d59189fcce7edf9f88e540bb96047974e1dcd3b6eb75ac8638f143d76c9bf4cf6c0a563dea59df1713ffd85ede1c0186cca8bd4415a2d4e538787dbc11f2cbedd71b3247c53b00ed4111335f90f4f3300d74fdf0242b2dc0d25b7dfc65adccc236e07acfa39959af91d0b1d915bbe952a5fabe5b4221a4dfb46755bb96df6e36b7c16f20f0220f92d13bf3cf2e0c42becbf244c8ca638128e21a47cd3cb53104c9dd857af43a05474f248e6c7ebb3a556a9424af0fc5fbe2c4a76af95c26317a842ee1ed0b176a7184282f6881075c22f4dc4ce00ef896b32677b35af9990f0f84dabeb3451fb2a072f2cde2b138b8c1235a4cfa87f2391986f48449a98205778c005a60529a66330d0301de545917403ce042a0fc00e6b5f4024a6878fbd3491b9b21c1325f68446cc54cafc0cec155a0ab3ea9e0fe6346e97d82f1dcfb3c86b93f91a5334416fcd91e3b420efd0ff81f61301efd0aff512636bc9f238e890c987ad14dbd6a8e9ebbc45085b225e3f0b393d94a1d1e0d6d8ece4d5573b467e5077e1d82f90a395a8929df6cc19e3f0d2b004df12827899a623d5042c8bb2b2d363c5eb44fb65b3fd899e9b989f6aa01ea2b151d78e2736eaafe0b19b408e0e5483328cc1d8f50dc20cecc8147391669b6c7a35cfc92f2db7b2b86fbde07eeed0a87bb0a8e133db282530f459d7580178f4e9b1dbb5a0459ccc60ebb68f0698f356e3134bea4a5fb7c66471e9ab07e8a356964ef7986772e25dec231ebdf00bd33bda0f6fc56c31037fea3230aee776c41d00a34eb83ccf181d8a3a4cb8402b5cc7078204aba90f5ce8b2fc8042f41332b73c46967528bac2791845980b7fc113d57675885c74319a4c8b3581def44aa57e730aaa90b3493ddb79523e1f2dd56df8dfcf93929fab04b81ba08806f55f60cc670ba9eb2309bcaae3e887ac2f70c28b68435f5a211274456902c86e8668c1c6f848ec18229e117583d426c7374bba79f54e24bf271a3fd506c35bae3832e09d7c07b25335a4176c516cd20daa528854571d24b06d288a40a159d0bd47941042246321c3e991cd6473b759d709d048efe417c99384f72cd1267a96920eb1a7f6d5f5317d6ccb090170df5fe71655052d75a3fead84a77c88c71c49f1b2362927c2dfaf879aefa79afd7a46b093b5e01488029554853532e9955bc9d03dadc7d2317764809ffe03e6d9723d188f6ee9498ae29824d7b91fc531370d5f59161f629616162391b6b84ae2c921f035a15e791fa86342fe855899e50e174a7151c2b2f2a191a493508d297b6ea74fe9afe8fc9d7e553aabec3d33d621fd60cd267d98b4bde93a8140c09042b79e94c1f6bb8e169810387246f7d6f8aadcb1c18a080ba3658cbc4071ba2a148c02c16bd6120797872230fd0b42ea74ebac09c56137aa48419975b446b87c97c546c16a21c36fd640ee50e1bfa49b819186ffe68276157fe0857b5d0b1744e4a6ea3e312bbe5a509644fb9d5a5da8ef2471bfa06d0af6e66af541c48414eab2c109802e83384a68968a40e0011a306b8337c29a0e786d47ebb4d2b2a2bac88f3b0d085933e26b08e69858542937b5bf8a4718ab2d80a37e6c5aa0f8e8577c971fbef0ff119a27562d589fae8aa064c296fb0d17fb7b698e910f451feca7539e9b078f3cfdacc48ad7ef6b338d3a582dd5b3032664f0e356e971941920cc29b3f3aadad9297ffd9166baf63c8633fb4aa27a959319845b588b048cd72a7bd91c718933d25d30e8c52def1a133929e5258e4acfdffaa089b970a6239ae64d03c7d52514ae00f1ea4718e2dcd8db0281991a4255ec549f81ecfb8f9a3690e4498a5570fde990d0c8b6b7bffeb4745dfa47d01963ba62af569c3559f01ce686d2e52bffbf7a6cb41c49735099f1adba9bd2f02ef105c734f4f61e351971b36e76a9708cf3c461498d1a2fa899a9a8a85e7895d522f7d506f19bf81602af0d8134d8c1183766572cab38e7930fd023130f87bfd013a9fc150bcbe4747e7cd5da8d490923e5542a1d15db511c99536ecb2b972fa590febc610600e8addafc18ec34961fad3308916ad533406c08a0bf51dd5663d9309da8f3031876557c42fa49b82c1f262e9a14d5226866b7c97aff0510ed7dd43ccc36876deb89a12c7b414232c2c179b34c7ada9d87ace983e938b1845b5154d45ece7058fee1464a91a05beed780300a8fa3e7e364fd3dab4bc97e13ad4f31bc67ca23e8a6671bf4d3ebe53304f5e6359296a1bb5a23d9655ef859088286aa1d12a9a3121c92b1d112cd112827b66440682248ff612b411b2264c347a862c70d131d212cec48bb9173854711954eb85e40b7911a8cb2b911a102afba42596213539e61add493585e9e43e72d80adf9a7da3c28f39e92494b58d0857521fac12a322df358cf4a237aff74d61b5528bd7b256bf92c404f3d940cf8567dfc66771ff96f6672aa6ff6be3931f05e8cfaabd28fc558ede1271eee70815ecb1fb86a91275fda83d9afe6ea5c2a0b2e5b6eaa9ded50203bd7de4d4dfdeeed918bbe8bd6959ab09339d7bb8c184613bbd80b2cf42e0f49fb5e11bbd9c5dd49a41548d698ea6fb900d352127051328f8de8850fca71c5ce126648c1758880b4f3c3f4a328f8433bb425263bc536107ce27bf9276adb6b96abe8bccec94fa60aca17d701322766ecaa3a4c250db10bdd8c97ed91480a50e86d2232933b1427abe7049c14c612b18f45682541cd9193368b118135ac84946c0e0b039684746a8f5706a19fc2bee6a26600652e3ad11709d0a17815a67927ac5539135203dc821732b2befa6a729925a23ef6cce694764788a26a4577dfe26c65a6c49d82ca89cbdc29e32308ec0d08b68d6cd628390174e9e9b3e46aebdd086deec1cf023c6743c4776a6f9868d087beb37dedbcb13900b451c64637681e2fdc76fde9db42a87d27b7b26c0216f6eaf0fddae4c915765e9fcb1843a48c047c0f9af36f283a3a61b52b12649972c16e25d3a5a6bf4976e6665be0a4bc77af56c01c0d70c87d143b37102f24795b93b6ab1009ed31449c2503eb1d96b272fc33a66092e9df72d1f064a83189f4c94f43a168271715b36c0cdd68537bc39720a8443b289d9b318b77d94825d72686769efd971700573c2d5e703eeb84c7168b564cf2dd58ab04fbfaa34d2ce235771af60a2ea38700af6766cf55602d44961733da970285d3dab21505f70ae582a7bc4bbe80a3bb77048844220095411c1f2762b2234818c6c0333ec49a316785804a353a192f01f9fa1800ba4a42076ccedebb4d006c4133548f9a757613f6b470b7d9db2e4254965e7e2072c182e2abe4268c7ac5072f64176f3c8837cce49794b9153f28dbae18eda4c130ab40332c6da0eacf421e507956dad9cd295f2b59769a446399ca716adb9b3679595ec866e67da5c5333800daa0d5bb8b9c636ab219be5ce90e1378d53a345917ef7fedc06337ec2cf9c8b9ff3f5c1b81a3f1137a2fe7bfc74ac69df85e4cf99650f569142d2f3de4b4f56ec3f6e6d379f5baeb76bc2a04bcb8fe82295beca5358a14b21e59e94104b0414013c45d51aeee8f1b59d82c90452da4b789bffffd5ba3195892df6152e693a95aecb4c4d50d5888d6f0a0e9414490c464ee90e90f736397fca76711331a59bfc50eeae3db518ea919982d970715e2135a4a7bb14e0f5a265896c21527e8850999700faec1fe2fa68c2cfdf58c9e6409d0cc60aac234b465612b3b3cb643e17f45b67adef31742fc283413b4cc48920ea6e728151baf97b0110bc924097ee16f66856f4a5a77f54ec351cc6a828920e889dfab0d99dc5936bab80c8f040b943189868c3ec96978d83ded7814f7983df38dda51c2cd3f0d972a2b1992fdf289f36b12d2786670282d8c3cc23d4dad5e0bc4a41edade348967a5dc5adcd2e17559dc9db1536e5d3f2bce6749b52fb411f87980a08090f151bf77d1df8f18128aae1db56b42493904e18227c37f0d34d8d0bde28af4ebd5fa8e797a6027d6844ce36e2f5deb1d9c49b3091ac7a43a815908a4c38ec68e9625355df18e37179236c2f5cc959bf2214e63ee7b879cebd66fb8e716a888f09ce0abfd83351001d8690f1c6d647feac8823edb2b994102ade6244d154af532df4be7cf515b9e06e0d9d16a91849f43ca5812aae6579e367151322ddb152f0000dea70b86dc86558a966296577fc89d188e11287db0bd8333399e19b24781491f0acd934486da45fe60733ba81ef0eb1f8c80e75b4be0ac92c2f0ad830502aa68daded64b4d87ab2193ed27747c76701df24be3908a290a9b5f3d4e817d5e7f29582f8dcbbf59a118184e4d8d75f677c0ecf10fa526fa3895bcfab6db91fbd4fdd9d8590d79c04d516466509ac0530f357549e72b1c115d70cac2d9e5faf72a557f8d4f0d25c4ab3b86c05df8edbe260362604f4db481bf0043dd5e0db317e8f7d94e95190c7fd4a51470c42e608e1dff10c035915e1d4d52408e976622f954d8b2392c0bef56a4a5d766670ebc0ba9d44954459186d37512b5d35b723b8c40e948e35b7e51d4dde3800cacd4f7978f9e0b3f343dcde35aed84467e18663192a86df333a395d93621611c0b4b4965e1248af95046f831473ac308529e757cc6309791341f0ab66af8e99f54f8fe811833c250637dd675a177a6b6935c4f840a221f9aa3c02a405eec23a462f61621fd4721b4e8d9861e518708b4ceb40b61f40f33fe0fc88f03bba8e56581efbb9e7b7b045828dda0ff7ec5c3f4c34b3dd581d6eeefc5c3912685976d1f9bd1ac32ddc414f04a49a474c8d7d59549951355e15f8e39ba5f898d8c9c464415ba6ccfeb93baf07d690e8d50ce91aa4a43ca3f2b1830bf6fe46c65059d083e90bc347e6cf69bf1224d7e29d0eea99620334b4d4efec7d2f98dd2ba25693e2331a37e12321af3d23efdd1582585800c0981dfef061fa082bc40f4833e703dda3e2bac8e0b188dfa8b4d47a4e1758fc8bae9243a0ca12fd924e2c60d8cdbcaf09b0098fa68fa16c7baa36f7a06b7d99d5ea950a7dca33f1adf5cfb8e58656636f41ac8d025acc96896b18a3f1d2239c88a081a8c273fc78b846bb56fa352f8ff9c89eadb94c9d35db7eb2f5f8a2ce59db4c954894f90618f3a58ae5a96d588c7e61e0054363da494ff884ccf0a1599aa64ead0a39042cfcb54f2a033ce7c1058fbda256443dadfc0aa2139d1893d2c66239315569eecf11540df5606f644f96f6e724cb7de5c3fbb710010c20f447bedb8a9bf15930f966bd5a2dafab4567c403db5d07cabc82be527c3dd404d375ff1cf996ca30fb289df6158c70d4d59babf178e582fdc7812de7a5b3f65312bb0e7ac7f5984c1c3773273aac646b004477375babc11354a94ec1ab8fcd6bb2afba72e5b23674a35e13160df8759ede464da21b9a9c5280ea562319dc37d0dc89bf82e603121e2e4ae0e1431f895e82dd6ef43598d0f4026da05c60b50f70d8e67d6b40c4b11bbf4f0ad9488cfd4755c67f4c8d783d8780127457f9a2a4ef907653385fb92b4b93327f01272ba9c245fcdc28978b9643bff986b0a02b641f8f0ae2092f38725f36892e1f9be37db3b9bf6119f84a7db6a05d0869de8463e2eb93777fc0e9f35917e21a7e462f7e7cdf45e19e16d2455b833823bb49753bcb10775e2c45f2136eb1ea9875868a7275ad3f5b6435a66128e027716a170c4405dcbc2774acea918ee16ed639e8a07fbe21d6170b2ab09df5468e4852ff33e4e72c7100658065e82d4004d4c4a3b7b94d365dae5fadb5aafcbadc1b177db31d7f1e40c90040478a4ad346f7bc27fb5dd3420add90b69886f6f0fada606ce8f2c28fe6b17cd9d21c8dd9ac84555e4b662b75c40c72ce19c200e37f5a879f8408b2a9b28457fe110c37660d179b258cddbdf63f11add0cfe0c163fcd5628e9728ca4fb59385e58504ef088298d4407457c434eaae7d82335f23e81bc7e3ec4da93f0a0c42a45854275eda5ae881ccd0dd40e4d0d43d829cc27923a45d23b0c4b07c6a97184593a9ff43eaa2ff167e239de59b68a6a1ed7688e41fac42de280c70311b6cd73847cab846ec500edc587046d56e10cf253e932bea6a0c0fbd7bc19fb53d6b22753256f8d81165786781682b9fb5add526f85faaea1a27c1a24db010c1fee256f4be4839497b7db3323b515b21922d6526881b6d53805205042389b11e0483d8c1b27904048d7175d76b3482c959988a6039e9109b8f5121044ed79cfaa857ad0e786c955931ead29624be419334ceecc803edd1efd2497dff344592d644875c96bedfd7d4ac3290b8f86b19e72093cec005249c3d563bd014150a3de68e7b616f68d8f9fed06be6c1b3ca685f00d2db0acee06ffe561577dac70d790eff2a21cb37dd7d41aba74e8f825cc5dd435051d076aff453f96b2b293c161190de6c69466c6edf58ca1701ca086ded3985847327747389756ce703a6794c6e4d2869dd84715368a935c551f95f88173d87442a0e598473d6a5be08d4c40a4b9e1f2cfe06cdd00497cef08be38e3abeb7a20210260b66bdd1cdde527fb44e5d7936016ec1d844bb75f2d8ce858c3f2ba3dd9e5059b75c8c6d91f12ec27faa901c1e261c6d3a524f272279265fd98d29861964a7f038b99ba1dac7ece178c9f562b48f55ee5da9f4e82b8d624e12a9018565912b4a2f1e07eb43ab7354ed46bd584b148de703131f6609907ca22e7c2fa9ed35b0c118d4979392a23cce78d426ec87d262c0ecdb0fb71b24f36820b5e558d611122e67a38ac921d85154d6a76f4bde187c5487e30a5cee11d53380f919df92c0388570745d1fc7cc1c684282be252d8f7ddd1d0a44ee0f62b8ab0f381afdf754bcc1ecc8929fde12d979e12c38c9301687032785af7c01fc290e6e3dfab9128036072fb3b56844cc78d9c4b8e2b00e2ba5fcb354bb20d5bfb5f784ac086de2c6b762d0359f3bee60c22dd443380dbe3fecf69e42d8732b75b367bd96ca2503129c7165f91c01385c41f9e835833ca2911728a7c056f4084e93eacdf70c205bdd730c6fd688b1a3c20376f5112de1c46e00dde5c92da4532f81ddfc4520175b03480352328ce8661e1844a81bf6e6aeb772a7bd3b43fe0464f6f3eb3dd7a13207f64873270eeba7f2655472f7bf5a0f4adc7bc0b6b0f4ea79c4245ee7ffc8bc7726531b9e12c93fb4c30804030671b84aac7a33bea749abd3ac9398b602e0312912b781b8292df2149635d6641872abea7a541589a5dfe712c5894b1056f28979515afe08dae04d3780949111dab7b915a17a536b124adc28a8db732b17598eafa0a53e60ffb382456455a6dcdf5644b05901718b5393559d76d5ae67fab43ecd87618d55f5f78e4bb2cff9f8826048357f5715fe65ed0bcee7f17c593f859c40b22ccfb547db1fa668f1856c4b5cd3bc5060edc92455ebe75b8ebfac29cbd68eeec75eeaa5e866d28e58a775d34523cb8f1fb1e63074373708cca4151eeb919c91517d219c13ef300db767275289372c776b0115e7651b61221543c1da34ffb9ea1ef08ccf3b7775e6c31a833e5e0ee4af0431b0361028d732c87fbe5ada81ececfa7c5797a6c6c2091746c9c4aed781b4b76aa030f56b7ede3dcf417bf45be996fcafce59d89860334f04be56bcdc28b235f15dc158e8ee782bffe3977e871368d83c4a63bf9b9f65df57df350ed37c0261947b20148bac28f40a20eca1a71afd6dc5c9f987555ac41b50d59fb6cc1b6688f6a7d6f004c00f435c05f68575c4da9891b0105c2c72104f526ece9f684c4ed75261cdec625b0f20ef0ec430604430e3e87b4cf862c02988bc015ada8e9d652a69f81823568c6f7dd3d03e0f43bade3c9e86f174588eedaafc7cd72d28aab7654f0a7cad9f9b121b6fd9c1c54e4b772833771f3dedb2c74bf750837872201c82d2c9204647228179fd31c1925122a3cd27b0b65e6eab1ce22b9fb2d7652edb947118e7eafd18bce25b3d5ed811172b7d3928cc8ee1ab7e3f4c5085be526b2f65f935f2a8b5b14ce479c6e63bde926e4f374051794588c6351ce1e9b48a3485ffaf0fe3d019bb7804ac80a2734ca2b071d4def5d9a6134c980358c94bb4d8d88cc971045c2d65b611d0e40889702f6b23464da5e9c280a3dc1b83524bff91bfe8bf57700969f85ddc3994f597b995c146a9d1bea1431a3d19deba814bd9af144bf2eba7403d490bea1767d0b5ed29955c269f10908abbe1a3781bc5faf5152049552701658d916e3f3da4dfee89ac9cbe700435c1a3bf9cc87a4d35ee5d003a148f84418b715817bfd0a7dbf65f6c17950eaa3b2c1162d1b01dfe6897f52fac54ca71be956b3532826ea3d876f7a0e37b43e65f08a2a1b63a783e2ceb57fb4703d27eb68d4612c5e90b0382201c1728fc98e956dc5977a5ee35fd296a2bba1689afe1cef8668d3a7f3d04d42eca48d8bb422cc88ab702a9bfec93978b502aed8f75fefb2d7aa793b479972afdd789baced8d033efdef44f807be457c809d823fc210fb50acf5c6caa419e6d4731ab87296e8d2777473b2ebef3fdc5404c4263abee6233709edcc431268a1ad83a9cbc9c1baae018df1f35d6cdf8812e89aeeaa85f16ff5b763b3370a6eae8738a7f88f23762769b0f4f17a85992b14b50496455a485f0d85cf508d78c31346030e966cd03cc68334050beaef231296c75b192808d536f044d747a5e65a8269c7d7acfd19aab2ab48186497b08b696290d9d6e6f2543986e344b4632d6bd9fba7e3e7de88c121348865b9ae3acbd739e62cbcb053b42bb90df86f696c188f87b232f9345d5bbfa6fde7b75c16335f64e7ae0a881b837b3b9cf2985d4b3580fecd2e547808247293871d366e36481d944a328ab76d7cdf6aaacc86071862d37ff35ae66706bd9556f5482c8c7a1d51af279394469b4e561ee6f9c5de1161c7534abcf387c5bda94917362697a0547fddc114e8b05459d60470e68655dd524d88d9893d14933dcd6081256698f80761a279f532a21f59cd792117094b8bb07a9339f26b70d3c4da9154bb284775c1e407d3db85a96db97efa9d6551541ca223aae79dd7221d6a8a50679dd1560ab41c3f5729a50125fde4b279ece6bcc3ffda3df19d15ceab2f261c4efed94fde6b438fea123967a3759ba658802c423548d507e7ffc27bf7fdf3299f671191415150621a55f2a5189d0761ca2e4e8d7601feae9b79472cab340141fc60abebcf6c624195aa09ae5ef312c496ddef8abe2ba518cc9d68b8c6e8cb36d618197fb7dbc63b90b8b66de33e97a8e103b6cc1f6fe7a0d51245f36ad81a04f46652fed4c3b33e21e3255f2b0d794584804e5bff17435ef8473c6cc5fb7f37fac33e9597515d95e7e3dae7443190090100f4464c3c98a3b6bf70a63b23440d810b329e487964faa0ed624baee308d7e5703036e0ce357b2668cb3d6df347e6161a52eafad9ac73adbded1a10b275773940cfc59024d3dc4ce829e1648d2b25ab9c6cf675520c7748ac2811f31c042c0a6778f84c12b31bf9ac698852bd8b6769e75d019f47281f5a09f0331783072ce270a0867937c69af92cd77da9d745ef1f32d9ca983c06e01ed41ea003ccac9e279c3df80372d3e75470c72c7e0d1d7040fe117969cae7d35a3a5d3119ebf7f8a219dbc9d69473de80cf387b02f7f7e2bfa80668959cf46561c31a68429cc19068958e88b5fb11b0ca7276791fa772754cc9185ce7974af764a0c7d067c1439c6d65d658ce3b00d2f6016644cada9c94129ef07934886878d901ad27fcdc97c8da28a416d7435a7387a47689c1bacbf20bf0d638332449901ef738fa0ea3e980499c0294fcf44a50991860e8065f962bbd697f787db86bd51647330da9c33b938d8590ba80bbc2123c662a89860e161075b869e148821442bcaece3f483100a975ba76a0be199ccb8fadb35be4818d16d91df325129e5f5aa599070cc3b5d95db7f7cc437433e82bc6cd3248dc437ebd140bf8b72c93127fa641f79c5a4fd858d57dd585be3efa2c004695a14c89dd08a8f7f58ab4bb0120c82c6ecd820d36912d554e45bf4f1179a9efc3b5315d57194565b81822f748da108182dcc758c107b9271de630cde09095b9e5db763be8c231db60ff72561f6b1ba71cc383073f5e068e5fab8801c1e72e2ca7125364c612933c98b2d394383c6e14cd47ed1477193031547592a05f706e168ef5bb79dc2687ac2b49dfa87219cc400bc27ab91dbe54687c16b1540020219433d31e5883d6d37a6554cace1699c7051029b4ef8b4186ab0dd1b9f43d3ade3a1317c3054c76cb80fc8f146475decc7acbe20321f4c6e2cde13927d9d49796ff85069a86cab8340453ad55ff07137635637ab369eec37568dce72db0872e00582ed13acfeef2e0eb3aaddacf7d9bd52a83c061ea5c2fed0198798fb1951e2a965242616544505e0cf4fa92ddae499cdffbb85297d744a2b149de50138c71eaaad5b779f407851c708bd126417ce18c40221e5f2622788e9c07f4baf126daf7a3e55ffbd23ac29fa6c410c3990760f081ab38cb47c317f828bb08f160225731c99acbff6468929967f1fa3977ae335ce82f7d31937f5e3c5ac2c365c83412fe52e8d34bcb03fcda3192646884700df1e450a487e36006043f642598d76e9be9afd4903b701e7916c36d5ccc6eb69fd2fc178d356b41951a3e802837318e8f58d4931a4051d4bead50c860434c3b91ae91934972fd41dd582a1cacdbf34df1fa505c0512604eb6d3ce7d8f65a6337e1a34c73d1ad8ba1b69a7d79a07a0174a7c676ce1b08e8c3db69198d9910467a1532d49ab5250825cf5a0eec080eed2eab332a615b563736e79617d746ef83924e11009abec305143406a65cd22e31e7f6fc5e260eb4cd3d45753c36abb033df3c9431b0aaa724045aede4f5a175a53aebcd13b1dc19463c95d773191221f0cac71eea7c0e3ab288fd525a3484fbccb7ef2314925eb3505300c08aade5a9fe8e597acf892e6f9368ac047a53b2e7151de382264215d8a238c1ee1a339be06dfe1886bd5d82f2db662f809c5a8dffebca248cd3eeae1e880c11e1fd84ff299dd00de2da508e3d330f3c1cf49f7307c2d5dcf796b1b5dacb17fc7f45e5b21cf2c42424d5aee53993b3f44c907da6a264a0d27f85a53cdd019061d1a31b21216c577b7cc3a0d361c8f0b65cdb82672952bc759ccb46ebd9898ae5ffe4995f73ad6558a731cf2cd70b889478f7cabd62d4e562a44bc812ac3a852d1e3912f956b38dfdccd6fafa14b12f734f1d1deb7177fc1188b46836b3f46d51a719ad345507d5c2d7de44866e51fb30bd43bbc715a0bc3d4d19e4ed0e874805c94146dc67a95ca6de0de126baeac0f8a2af9f9f7e93f20dc7a8551f94408041c9e08d3899b078708f4cc84db360077f5aab8773cd511d4cc8e0b42d552e24b7297732a16fcf5a15451df923aa9a15d55f0cca75833a4cd1e80c007a328cd661dc70b560c04a258048059a1694a55f19143262b890b321a14b6d776a782a887fb8e87e0e05c88670fb46879bd9a33812548705a3486681e7b7342cdf5596d5b63f4bb8bc0b14e6378e7881d113403d085a6f48a75d6c0cab3f8376ae65001b9ac8f0da5a93368d189c362902de861b965d5be383e0b5a82de9ee3b1767713502a3e3a0e9e99f310fed677287fe3b021dd622b973af03c66a65bfcf16c0c6c785148c37bad8875641f34cc8bf5a09421921d8650a299aa033684749db37340f27a537efbbf879a9d3b553d0bcb4e9c2059b052ccb889c59e8540f83a95729a96c67ac58b2b0f2c2e26cdd613294a06a51d03a385b88f85b02dcd21906409d785e65827593067f1ab850d04d6a024f9b08efa501ab25aef3b39b720bcaca64b622d8fbdfc4ee5f4e558ba2704b90164b48e8264feb0b5262337a819567eff10e0e30e522ac8767f4c3499dbb24e4973006eb0e619589ccb50639645d0844f55121fedea607a6846241ffc75162e2076e3f4298c3cab48c0e096c7f938d5a0a909b946dc3287b464ef9e146b846dda27560b4f2992a7f2f49641082e96130c4c6eaccb63404666780d0383b7a08999773ec19b5294c537da423b1804348f6d434ee7c9f50c84c46d52c7a7bb79f92d862a58d808e4fa6302fd046136df11412face0779dd3cf99db4f75f6eb0a19a788669a078ad362f022591873ee9a25c09b3f168c8b5503758ed9605d960126152f38e10e1b8f9d98cedb12a01f024f133c98d1c7de8474f77fdee26dbf0eb8aa97e93c2aff98628d745aa7aaabeb00b5997465326628a9b76f33e7307b8466408f246c1817e40ee935d7cf5e06c58df42ee4d04cb8af88388f0b22999432089f3192091cf11e2fc2e71ee82c8b3b772b8a71af0686e8201028ba968b13d752e7d69bbbf476b98bead356607d263de0197b10c5df31cf85534aa6187b3548705ecff219da33cdf33c2bb4410965b4b7fcc34aa3546f37daafc5ecb55abcadd6f2b7de9fa56b6e37ad44217c40d2c8c6eb38500b2539f0153012cc80a01475e6bd11d809829e7b12cf415622e6608cd1863128305c7bcadecc05da72303393665010df615ad19471e4fe0ebae5bf80f32209271f6bc15170d9579de2a3348e871c8645a33e957a083f3369cd92447c22866851ab8570dfdd21166d851cbf0a743d17262776dfc5b1c1b927011ec20ae27b8b165e9b5eddafe7c5d19c6f7b39a7cbb6b23edef75259cbaa1f99874d7d28b3df445041f4f84f9f4ff812be70aca12e0d3820cd0f46d50c4fceb933fb4eb16d04acf534e37ca674a392bb1dc8b1c481092573a9fb4ec8900bead23b735d28b10c9cfd6dd4dfaf3e04da60ccc480b4eba55245e49d808c7e061944e4f16ff609057d68f6ca3b86699ce33be87363342ed936ea078ba2ad1a32dd3556b86f71ff0c8dd7becaf7afc7002dda2df04c916306c15c2857aea18a9c15dfb167cf26ca98803c45d1a9ed0038d9e1a7682cc62761133f662656e6e4c3f1c0ca94ad51598785bba13eac2c60eb862a3ff0c6c97a45257ef83df1b3ad68bdb2a7b30115da6666a4af1802b76adf50124a4f7373024c835b5775b9a4301eca5e86a9ed53af25fe70fdce67f47deb22f9a373cdfc15c2a41f385bb2f0127e92c29173f76209f711dd26f9e6d3f93e5c735ff09c083f2d356f68fa742206bd65ca03d6e241bfa66f726cb8134247dced2f2f27ff81feb7ff5bd4e03798cb9bfdd455dbc5e95fd88967e2a6b362ec2365683f1439159a7f896c1035234dd29c0530db317781ab754bceb4a7fb5f86a7f4193fb2c4920e6de02a7438c561d32cc1af8148fb071a888ad218c1062f3f34ad5bace2dd3001a335860b5168855dbee71d87fd0e452ebae63c47f8ccf0f3e75dde956fc575e308881644f746825cc586fc71ab1d4ada252789048fe4d488975fecd00a0962ce0baee904bced4ac52439d0020912640093107028240367c1146044635dc22d82b701a51431347e6446838abbd13598cfa7aa58085e69def1e9845a20ac24813dcdb8298de67918152ff302e4b7d409a47f811ab3eced872f2c5d5eeaa88814f9ef01beb12ee9b98086bea4a268e1d006863f13f55987deba45d5c5d75621d5623341d597ec32cdb0fcd979cd5c19f94fbbe4a9fff366bb5e7c85ec8b6a74c63f7de30bd5243ab8a6cb4795d3fb770b0744d46452c7b224d8d9d767a28afae95ed0f6b63d7d0a7a8e8dd7cd1cd3e91d437222b849941755e3cc4d5bc5461fe86e3cecb19f9168d1abe32e511acaf450222def4d88903fbc2071557a8d082fa39a0930549fec69ea25ea7d7e451be7ceae6a86656672bcad6bc8117533295805a36fbc1e0f92c770f831d3b00fe9257d61f980181a8dfd3d459736975cd444f2e72e2c8a0b86cbc2412c6815b8fd4f1809847a30583b8170dc1f470e7992e0a96e7238f9eca72d7d876fcbf4f7599fa1700cf91179b05270845c3c70a2824a4482b63b33d149bb974af70151ec4f44792bae5ad33ba3e715b03764e43227e90722e17d1979bf6eabac3b1763f2f93ec2545081f4870532d88f93e172c06fcc44d715a93e8f5c27d89d64268b34303ed89ace2e32a6e70dd1c254db0ea9b980a675c3888ecbc18661fc4eec42a0ae50b01bb196dfbb37862938b6b146ea734b8344a8ba0f70335db8e18ed87f58a1dbdae06f614352f38b6fb7d6bac65d332ff957e95a384a35386137d6a39ca4cf293c29e6d4d5430e4198203f1a45a111e5e69a5154448ef8a59d94f3347f56092da6e800d99afa40088b33f70e0c291580e1c1571539056e62e83ec5e3e6bf1085deed3131c1cc3a320e23bd7b84247febf8ae9a692dedc2b0c447db6e2f6daa98e010cba07c08af1bc7aaf5a6f3ea625ddedd1dc5e0b74216b190698fb0d1e106a1498bfa4db17df07fd0d82e0eda0c06ba8d32f39982bab16453d8b541ade3512f26a41d7ef35e1cec065134201b7de9a9d4ef234057a57c6610428e489df9af1dcffcb2f5f1f3f150b320276de024435a4190a36af9589616cc1d9d937bd0af2a4fe5bc2b221c3afca3e5f381c659c5d93fe63fd702c9aa82ec03340c4a7cc47c0ca2f6ffd44926146e08e76ef9f7bd7a29c882cb235be56d0341cd9cc6568104b4ca2b5bc08057034fe3f1656e0a3d1203fd532fb453e901e23a339d1bdf28ee44787d6c6f1e46de7de1f09500d98fee76b24ee6d20c3e7ec336aea43d4ebb697e974aab8584f9ed072658e9835f8e7e027745a91ed0c5743e2e374f2ba35302e7fe7234a85955f2a48ec36ef4381f101235fb31a66e0d7a11fb529800261a97606d8490726644dee483d471ff8d7fece8f390eba0740ced33905d5576b19b1c63a1163cec1a23ab616b4e6cb17b1c2d153a16aa8d7ed61c2e21824d70c77dd9ebe5a9449abda19145f6ed0167003b2fb0c175bba5ddf3e63cdc0eab1bdbd3ab5f7197df42cc85c8eb51f4f471cc5587bc7a7e6f545e2e46d043ae0e7e789046295b05af51458c25e11aaba1b9f0b347722866a261915cc70b188dc0c36b4b26d8d087b0994cc4b3f1a0f0b04b43ea7c3dff92a0becf4cbdcd7a716c6b8c1121129bf9acaf9039da6c52cd34c08701d83e929c1744a0b8a7a44f77cafc5e537fce8ffe5f774a1b1e09887f67dd9556aa1ddde8ce38d34ca4ac3027d944a33aa7722ebff694a2d7509fda01f6adbf5a433d877e0517d777bda941474c6b1a489f8cd136189df47d55996507268fe7af7f1983323900e70fdf97904802363e5e29b6df2f8d145e9db819df122e1446a59405a02c39f2c33480b9d39d7c16142988ab0323804ae70cbb78c78a7f5a94aa3569d94b8aa8c2eb8b665e093b85c81f0325ad61b466e89b57a733528cbff39b6765ddae46261af84216ecc4ae2c034d3ddacfe6a6ed2003023101a70e3912443578211c4774186a91372344cba930402418e7ab05189e8c7e5e851d204dc2dacdb2591e15846ccb9953d6812e51166217a836f1d4bf91b2ac562b76fb05fe2dfdb0b7b3f88d74dcd226fa96f819578a764de96c98ece7ac3f5d63494f92798b4d91893eadac6388abcf7b95f8544b9b238268d76971f2dc738d26320f4fbbc8410250aac4e42b2b1edd47d1f66e5bfc489065de0a5386af96148780c20a51911abb8675ec937ed40759f04cda706e88950ffb07cbc4ebf37117f119f8547b44373ece4c256f647ae77ede942e369bace6cd197fca04a9db740365a953963b32ddf59da142c8dcf30f26d80ca032dbe97432c40cbd374d7e7dc862bc70b6b8d776d02f248e49810dfc2e41f9a739eefcffdd234307aeadc74ea6e2c7d2d6d63cdc46ea09494d7a4788de3d649210daf9fb3782921eb537f17393444b6c06663504b108323a2cb6cdc6da47a6a1766cdb5449685de2c8d7bbb1d92fe6abc8009a96a567ede946f13198d173c769e08466b26d2e47d32519de8a821f0f0041193621181a0b684efd78a2490d3e87ce030305cf3aff91c0af1e49ceb9a577fe53bfd7b6dca86a688eceef9d82c33f2519d8da1e0592c0da8653365055afdb06609f833f12b5ce08715ea53344838608d330820424629f88c32b9607d04459777090169ccf998f19b2b6c7367f8ceff047f9fb61bc494c31f983ce0a3a125658aeac1236c553c53978718b464a9e80c7a8313998b6e0a8baa7ed0aca852d70bf9b3d26f3b124fc893b5ff3ab21349a02b588649f79d6ff8dc15f3f37206ed10b36b4b85f062aa6a15662ca2267e77d810b45fa55344268b4bec9daf4f4a376d706b508fe669bdd784277b7448b9f27177effe156dd40297c44253495af759107c6a6857ffe7e8f48625abed12bbe2027089a92b10ef20b6eabf271bc91483efc48c1307b2abb263f8dba7112fa1f94d4ec799a1027a0ff3c8b9d0ac483235f8ef7fae0db2605c387c20e25f267fa03b3c7a24717e3fe87cbbabc18ef67da69184988f086a9713b08047f909f3a57aaec6b7cbc719fd6f0746c2cca0702d4939befd137cae9bcd606c3d0e7f3aa5c8d71e34c882878e2c6237215527f4cafcce2934f1374fd692c3e817dbcd09137827e6621a8ab8ad3048171c14fb41888a5338ddffb985cb4822c704878c6d21fbdc8d0e759a9ceaf847f2a6ddd45f22557e604b30ac0e6e779855dea8b6fe663a66ede5e8b775660503a17fc86d85ebbd4710670d26dcae58d80f69dd698faa0537dfffb19745e44767eb381d57193fe5a977e41f413fe4d4cc04d72d2c6b15ea23fbf555b8fceffdadcdefd401e5d8c9c351fd614f5d87b53058676f5080048fc65f245a2a03949921ea7c73d86e98d981323c3db49123991ccf7de9db505ed94a3b1cd022bc1a483a2716e47598f552787541cc09a031b17ee2ff2ae8b5aa8dbc1d4be6da52d67efdda4c42e09053d253e18da1635aecf0a988c0e66e607c3945fa7fa65cb8fe89142d1c130d5a5497512fe2f7db8fe5d6dd82696f38c281e87956a69ee12675313c0cc9970c0724d1165431e1a6c3a5d91b7a36dba758a08e5ea226f113cb03c6a8402891cce1b20892d55e83b2d2298003a4110e31e91789315647e5af579692579ad511c1f10cad6fe4583924d8a1f35b253e787f4d78cd77a9ad300b8a7938c0cfc6d1391b8b5b3fa078c54f53c35425e14e15c20a2e6131a5df0d0701f1b554098eb58ee9842f5afde2b245f80be80061f13d7ac7af8148a5ad4a99770d37ca0f6d7d7e842b5f622d7a2a692c77fe18014edfe5cfb9bcf0e059329f5ac997d956a613b0b4d6cb82f9fd9b52dc8354c68253381dab04db27273deedf78f6096414e552c5ec0166c0b5fc5a6076a2a1851018e952eee543c270f900d4d585b19ac894cd44dd5820e2c1558b248c9957826e1c3bdbb9bed080a228fc51e823464f736633dc7e8f00f76c1d591244bbd7bcdcba7cb8ccf30f82747f70bf675d1aedad71d46f8ed4beac72a9e8c6b943095bcb19905cbcca204e1c4bbe09aa5653d3b9fcd3ce4a6fceda9f9f38d0e53c741e9f1ee06f38cff8d344abd815f2d42e0dd235e26c88e361821e5155abbd6d97d1db29e635dd040882377957a0ce7dafdcd7db48c32a49a8186b94c7655fcaa2d36f9fd71e5426aac2f061492c82bad96f9338dfcfdd5a65ea0e51e885c74d8ebbdb71b549d7dca4a187e812b8a293b752cbf82bf65cdc27c17119cab5c35af1f00b4c435f68f2a69054efb343346af281e55f77d81fc930728f257b4eac50c7f07eeb037a70a4c2965992711946e3a09012ae4a0dbc8347464a5e2108d75750592b43f908f4904605d5e1fbd9173fb95bbdf84b72a2c5f64bc54dc39fbe77659fb4c4b1d95d7e0ac3a364b99d4ac6990f1ad00caaa8fb7e93b09c778600c6994b4c563ae54956fc34ab0d8924ae294a5cb9c17d51b4ed601c1d681e20e8c0179601407772d0e23618e565172de21e29880edf68194563dd9c12d7abca9366c2271c8380ffcbb7eebd1f6b07738d1ab505daec7a1ad8239fd6e2c7db717e8ec186b25efd6e711e2219a3148f4a80d64563d2935bcdbbbbd76a4ccf39028392173722952830421049b3257c64035f0c9500870668accc83aa5b00e4a9b35b8f643b8954ff27beb0c9671b157c5a22080d8cce8dc92a52778c5422847d2d5ace3368a82366f574416b2815d6f3d2beb013698bfcad56e810e736318a3d414233cd5bc721d6bd68e5b9d49f0f6ceaafa5f6a6cc05ba4269f5e7bdc0630fc5e0f0581d843771657ae3bb1c251f38e7cdedb672c2e290b3294f91a784f248a2fa17acff47dcd2260c616e248712cf2cd18be35dea38d4549f52d6aa5e082d51e1ebd9c607ade7afde83de72cae55f7b4ebcb289d2eab3b3b3acbea6843caa96abce2844919b09cb1c5859fe44b025c67005eaf4ea4690210797f722ad33c3eb11b78cc7f2bf147a1aa0d2a1d2885f9851cbce7da61eeb96cc64a9c8ae23227fa5fa8894ffad2dcd332bf95520d797e89fcdbdb7ca096695a2d456e3f45c1d6cd963153795700659b993772f231669f9e90cb49e62359f52314f59c754d03c2979fc14987961079ff2eb54f75577e8838fc4e11542d0181b5f60433abf30fe529a4bc025651b2ba32704d23ac29047b2d58e735b52ceea36e60436d2bfa5d1f06e5c46c363f50e8050980d682f7cf17b033eb43e380bc3386815eb8d70ad24cf15494853cc2395c4ac77a674f87e9e553d21cc9b617b41f3b83d795ed1c39032fa99e97b2d4bcf1818104d98d1c656e5e2727052466146ded39f593009963749005c84c148d58c16bdcb82a23c87d8af7283aef97300012e7d8a0ce1d594802b96d66e111f98ce2852aac279418fdbc099f5fa7694abc22a703c5bbb0dcb5088b6aed897efd3051e597fbe6a4ec819a45550ccbd382f128e447e7860be25d2b967535ef49858b20e8cb59b2df63e92ab7439f00115d6b1e4f10583b0c7374b1234391e1a49f1c55f961d12d9436032caf0110a796677730505d17d27bd9900ac8a0ff399e88c5468df114d5499364392dbdfc017606f2682b9ff53e7d219d341f8b10284861b11572decc621f49d6323551b6020e0f3152b547196d9158bb6912e4a9119be76a4931466db0a546e4496a620d89c79474b405cdb2a1a9f3ca1759f955a9842a3ebc53f0c1a8dad71dfce8470971a2b4ac4c24e9f4c39b2a59780e607ea77501b22d25c03cc4f6c304b309784e443e5b3e2e4640d13ff981ee5a20c8de3f899f79b6af9cda89d0084e67cf847ef541aeda3b8fe8a5c9ba6ee32e536b9a216bb9e42fa7a4874e96df5013508d15de5ca6f87f0afdfe3fc7bbec157493bd8c1f9097a870c80900114ec4b59d11cff03b742f528354de11f6be70aae36c4aa6866ddb94c97eaa1980d8d09fa042daa1f98fc3d1ad3ce6ec5f6f7e9988c552fc892c04bbd26053652b98b5351d08a8802254cd09fa1ff2918a7df58be70780aa099b001d9db796e3ea5088baf24bbe236b8a8a70838a0dec442b8ea59a7e96396b7f83c8fea5224fc3c366c0ace852f5636da6a05896f7753658a1f5de61a749639004f9dbc606f48ec0d778b0fded05f67c1ece649bda3e667a9894ce1404e4b3d9602b0e89b3116a9ec0ec6261388d2bdab782ef729f0dba308250bcc0eb58b1eb613302eefb6a4c16d06c767de95f31a075ddb1aad38b7535c52c4eba70676d055ae910361b42986afcc169a328d3f0256642e4c683a9819f760cf120a1e2bf1c486911a1ab65619d306207ec99c7f71ae397a9224732419986b5548ebbdd9435ce68cd547e38d9383951a30df6f01981ea21c1d78c19f3c22b4d776f6d48a1c21758283d8dfde4930b7867ce31e1b4841e4c44c8bfb8b482b38d40728c15af4db50da01924700e49d7473a26728ea5f4831e520c8cb0276e3abb0483fdd5a6ae7fd90670744b8d67acf7a988fa9ebdcd17921b2c170504fa51e77d78fc323e8064a2dc3000dd633dfceb9420a6bd8543333b77e7bb0fd0aeffa0ba42fce6b89125a69c3b6707157b8d732b0836efe79d3281a651ff5e6ef0d3ab750ac7c2a6af0d08f397fc34931f3844342807230f475592c8276ba400da68e879ff9978becf3cbe42e1545fc2d9db494b5caf5fed3144f2276db168f4f255eb62893ead24cc8f26f523514dc7bc78b42122a65213eed8b42f856e112081c10622f9f7ca51e7454d55c0eb395e8140b4cb72f04049b6f55e9751785e2f7bd286f81f342519d35c9955eed74dbfb6e64d18ab56510718466c72b2374968f559f165ca81eac2c8d824c5cd728a87e0864b1666e6328c20d78538f0d5d1eaed380c8189e05a22e847898c6c4cf4ed987f8f0f00d3782f87554e4a94665871057303c70ddb745e062c37da01bccd60837a78d2530b3f1c05adcd21bfcbb58369ce9bacf856eea941dd6f9ab78f8ff6a81eb881593b20ab3fc441771f2305efd2103c5fbdc70b5c5e995fadec428a785b353b50dcdfcce15c3852653ba854a0bc653fb25f2a5361a49cb1d64d32c5d2611b8fa1ab34beffc25a641058d3ad588eb86de3a7727e222971c132aafd7771a5f5ae6760c3f11783557995eaaa6666dc62337fe1a2227d7ff9f13f555b23a5230fadd676a8ec7141cb7cd0c09bfed325e2c8a46b9271105ef43ae4cf8b7f216eee2598259ebbf38370ecb7031105ceb8d70ce010e9b82a9795be7fc368aa5a3dc03ea1a0e93e1d01ce6a003e0a90195b8ddac82ce9d480940d3b696cc2156b87d113bbdaa06804e549200ee726c3c5036f1e0039716c2dd4fb5538ce99f33f69f5d588c1cee2be4654ae6e270f5faddaf114e064b4fbb86ef4b0cc48df522c898048900f38e4985997cc813832cf142b3b328035b409756ebd021bbdeaa42e8dc369c98025bd7d209a9ac715256894688f135d9411d8bd78aacd65798a3761988a25bf98ce5f0ed96c431c61dfa5cfbc13f6389a5d8e19b153f4f04c0e4f49bf79cf16c15a765801f16351c2fa8fd3be6e503e4ebb5b2f0f335e7e13836f74671c12ef2a2f775b5a97f636c3dd767e4dd320bd2d899f2da62055a2ed4e0f997ebd4905ca7020d470527c0f85e2076d5dc38deeb540d1866d0e2efda15bb43efd9aa87e82f3ecbb250c37e4a396243652761906506db8d020d973c5dfb876dda4e661b76fd16c9387dbc55b88c0d6bc32830520ef3dce078ec575ade14d20410b8d23b34269f7952e6d6d3f089470c2aab665c21818346bc3d0822e4ca3e2309a6499a6f8c51b3bc3be95c8d68b74dd88b2fa21f82215ac8762b7b1f9310ce2dd3de699b91d354641843210d60823d353e147ff570a266042e7c443220845121baa36c272dc5a59a29772ba4dade23f3bc953127fb33f5d5094254b96e72aae7a93d723a7386ba3ff6559c26b7125d93c416561ef438e5c3b3b0c0ee9c3a080c2a38d64f3c1c47f6eaa58978fe73879f253a00e43fcef665fede81f80715300285e3f75f364aecd9a6ff7cd5faca019e74e9be4babe73df668dd23816fd8e08fc38238b8d3e9f09de39545e8a3cb6a2b565008d5d37b55d5742fae29389c86d77ed636412b1835bccb71fd1cb3c3589db4c13c0f8b645bcf3d31490c0aea529cb8d1fed456d5d884094cbed0394d3ada0316071431463de7591843fd6f9bd603a1a92dcea035a70d2cd85e8439e226a9cdfe441797e695794b5989eaff002b52d9beeafc47e1a5d7e659ae2d336c1ebb928da546e5fb9383e8a1d6a7101b5926b4bb72334c626e8ebeb774a04fd83766954989d3fee1b0083d69bf61d4117a51d2438e5a2bb3fedf2c2b037d72119105c05078b0a9b4a27f9d28688f2c67093377cb8eeb0370e448247137d6a16926e842b2eb1aceea6feff4609971cc5767d800257bd25365998857fb3bea0216d1a866c33e3a3d77e005d562db3bbb3e13ec22b9acd428c66f4ed72c7dca6e4a9c7d22fd561e69136930162e966d3b43c70e135f4fb612f9b653e722e556f711350cc7d7eb07444a86d3d1b64fc4f30f430542b179d27b3c57a168454dd17747b1c590e10654a91c0c88d13faabf0a4e889f66f62ecfcbe77b8c9dd1fcb61642cf6dd4505d9f9f815e3ad5264976278739fc9db5d36cebf8b212f6f1f00739b2a799c3d51b87eed1bc06c75b610d61c89213197aa2c1046d6bb8f9cb323e6ee492d0c67b08f2b583e9068113664a32756c56b1190b5b9a78c68ae7aaf990f041280e752277bf465b777fff495edbebf097610685378064c005208080743e03e5890b934ef25a9761481a558ef8bd25ee90bf208a49c5a187fae0b8a7ac5c3f723abf49197bc166047ebc3267e61bde32a485e4fdfdc7bd3424ba1155ec60389b30e7651c3fabd7e6d0f57bfd3e0384a1310eaed2b5ba1b446008019c0e771cc0bc9598774ff6a7aa4e4493dbfd76299718bd8fab4607d778d056820051de0dac540079d89ff181dd740648fb79846235ae7cea7261f6d83d330ef21d52ba65f8bb803625750212dc8c23abf8a29d5f67c4254e7b41f1e50e88d2db9e8de5fb385b45d6837d66075e8f079505ed861f2442a7fc82842edb0a7f326467cad550bbf0e8b4a4844f95a3b55f53fbfc66c8b67f1389ecb13c5666569b9feff3732b22e044366967b9c38d3a59dc1d6cf940e7710077a2790ed6fcd641980a79a9ef476c02b946f54be20e88fdc7fe34b1117f920ae0e5bb440f0561eaf1f4a28bbb290e253f5fed23513e5411a82ec36d9af8c29f30d2e44919abab63ded32992d986465767f127901140da66938a9ed73bfb2f27dc4f92398da424718b6d451ab9a9add3717f086027772d41c93016617344808b0f238a22a799b2529552a51217281364f4895d7cef0ca07165b97ca73912c5b5e04a3a027677cd102efa64f784e998689e4dbc444a7a05dc8cc326ca288a4520a1fe841e36e0b7538e66ee5282847585840a0f6ca8ce9dcd4e7d4b3ae533560af75a8e634b6d697f4387a4b4443402a572dff844b5afdf24cb83219f60abfb3365f9f507060d295e899756e0423f33c17f618993b4b6442ae66f9024ed9865eee5494cf8267cb279dfb87a7a8ff9a08a25240dc8e3b55cc1bac6af9401adb2c513d7db3d43c08b5d2950cbe11b18bbfb06d5957560df188ed7eb2edd98f642a212cd7b158923662bb71195cc980a799fb3a565c1345a58235efc685c09cd3b6c7461d8b96344e3698da73b1dc84664114382c62aa8f009ae41bfc1d7b39dbb820577800e72a53ce794713073a8a97f5313b591901f51fc5679608a6b6cff84c032c9854160648586d7595995012667ba8a6f56eca29433b6a78bdb6bc3cdac81060039679b2cc19195d75a8978528a25bcb9aecbda393bb4c2411330caf1aeccff89b4b4713b8250ccf3b0cdd6f561f84984a2a680573077e39071a21a63a120fd69942897a0591ef8d7bb7099af2ba3ce4ace7aeac8889e74653dcccbecc9eb9ae9493a75e6ef01c78a968a0489d473d2f21511799c1725a1a5f40e293c3398be5b1b81c1ae78d4c9c23ea17998948e0d2f5f9f40e90230ad9f8a878da44f885dcf5975aefd5cc7e555c297fba9c621e475d27c2284d2652dcd0c2826dabe4a84d5380390a8039bcaab7ac845420f068b3d54564c6665d12a393e9369d5a0bda6748bf58687f1874720f0ecf4a0cf836ad93003d21482649b49ea4f48cb1003dfa046cffaa9cbb5d9859b602854ef4e976aa51a6e1ddb23bae4b0423de029eb1ee9691b00053530f2dcc6ee10ab622d45c62096aeb07ea321f17d0b4ef0aeef3f1a22ba3466af089ae4acc0ce95c5aa8c9abb8055206daccbd4a48b0ccde5771d7a2aa22b0420aaeeb5bc237d1a2b5bc38fbc699b3035e84cc3e7d19a9c4a339a195471266125b27831ad9e2a2888b174145df2609c8ad4acae1f2112b428ccea2a04825a5069d132c177543a4d7146c4c329f054878a597dbf2db9aa981117a754f6695767aeb9c77fcc7f2ade7ea6c02b1fbdb7f048192be669c5d4b3eeff68db1164cdc8763d57fec69429d5760068df6a6dc820208ba00b677a6c447fa16f7a4399bd3f2ccea8fb5133d0f8a67b0041c74ef70144340b275e930373614c306059d22650a88b19523a5496bc89cdbd2400b475820a05040f7705c86f6cfbb07cf389e988df02c5ea607fb9a7e90385ad413933e9a7ef5d2f6b460cd663a0ab8c9451440d3e154426fc56d2fe791ccd3a2936f994bf8c3e21841887ceacada2837a5709a38bdda2271cc32245eaa104ccbd5a2ea40e0f77aadd54fe467d24b328806a9d3277276015624deaf1438b91c53e5487ba5a9a062805b4f6fbb5b8abe1fa2fc9140f286d34864cf8e5f05522096a77e57b9332c8aea02a585d50496e9575fd783407249b210bad1497a46b798f5d4ff53e1e66344446cafde652cca02c5cfae99948f1ea6876164d42b3c1da68bfac1a11a447045c2a3c876cce269571cd07371bc7e097ca8ca2dd5412574e677e8229d471daf39e4e9aa5a13e7977ab5e4190158e33b0d010d9f22108b59a7d8f25f35e34e421861104a9637724a89712cf8740e05726a7deafbb869f376b020ec3c5df4189856da9314f8322701e1016ed8bc36eaf6d382a01f62a11f1435e8bf6048f32496ade34b2ed8f609b67168c7a99486d05f5de68bb1fa3db7d79bb99b0e19a9e6981ac531afd9d103f4c452a9ddfbd60a590b964aad87ae07564d7bad4bb9ff84350029b832659ac9ec1cee7353c5d427c405bcd3b356f62c71fb47dac2b68e4e681d3fde4ef92f19a8f68926a00bd2198e89867ce28b01a1b6540c00d99376f4cba7f0c47e739d533c311f4a24f98fcdc1aac94dd92964cbb3aa824aca5a8993ca696a8de19356fb8b046eb3f99847780c518cb78dc5f5895e8571dbf692fc88999ef7abbfa235dba91e41e62919c1402a5d338ce87e31ae97f7c0671db0b0cd86005306ad5bc2c536ebfa480f4082477db25677d1ee918ee2bdfbd6b9aae3f4321eccb14c0b94aa8133200ff56a78006750e84b4071d893ea36d025f32fb7d149a8eb81724bad59e30bf836c35b2a2393351a873240fa491f527e77fc6a3f72967dbe7dc957c4833ef49925c8ab361d6f6562fe458c0435d23015ee8464c4c3122bfb74f4136850d41ff79919d8bd899815e44a7925f0a36543e950a48609bc53ffcc108c79b7f383c31b01ab9fa9fd55b083bd9ceef29f9da86073dc6c019bca59503dd0c76d4a75ebc621c89453c1448ff8eb0f70e6b27007759c16a2bd2fddf714ca604cf774b608a556f8c3995d412bea969ea0d7b0d0ebeae8edbe0ca6b640602c3f942ee60dc8a1df2cd3723b0618b1ac07b173cd91c5f6610dd83965b56e3914f95d7c03cf0f6219131d0fe9c1603016057a52f7ab92cd4e14c9d6da0741591d9e6dbebc60b5590c208ddb47007ccabbd2e149a2738b66d1ecd39a45ee1438cf8d54867141522d85fad7f552de402d074356c8d7344645d64b7f49c4b4e6e30020a591345e1d8f5352965fbf8b2a84e8042536c5d58c6cfb7a32d3d14a70091121c3bb1315d0b07c75917635f03fb6b6111beb8c8e839309268197d6bfd79eb1c1cd18cfa2f37a7212ad9150b3bc4af8c819cb59441ef8b17a5ee1afcb84b14874b2bd9085661fdf92e49521e88123076ece327127ea34d73143f9200a265823d6ac94f7b519d9cb0c2b4a48cb748e73b13c79f9726cd9c945ffe6931b0b73f37ceaac819bc02c1e3be38fcfc1fd64968955d21eedcfbe8cae1e3d6d8c169e2be69224d499d4d55408f0f182d552938b9550cdbd9c53d22b8f441f72d01f41e6558d7f187d05706c5eb02dda20e34812b918262946d4a795407281b55ee819dd7b7253e9ec9c7b50f0530a6f18bd150c805b494d2d71f2bba4c1c30c4004b0eee291f335b0c711af0a49b3c1fa49aaa614a6d9444cb83a0ff0d45f3f9b1e64e2d6c568f5221241c8ce6690a3164ca76d04c88a9e6797d41f3a58c9a9c1aed0f3ae9337af15db57d890c684268557828f97f0780308d0236aeff53cb4c6c74f57eee96a798e6911a2a6cb4416a5e11c44c2184b5064e8edd4a5e07d719e67b2f47c9e61d29f4d327563c319b896d73cc3136ab1a9953392c4315ab7e8bab361faa301f39c79ccd325a825b89efd585f3ad8127d4be65241e305fb3e186258ad207ab841d20632aa6d0a394cf82042036e40923c549ca458c6deb980839542c1b14c7563e2df2e3fda3255a4756c7184302d21c0b0ddf82cd71c4a344f8d88fcc3457b988e436aee24be571ffb6fc0ef0ebb627b80a9b9e435677aed22a72b0a5385815acd467f51eb9ab9766913a25aa46fdf9e86c7aa83072d8d5a7aa42a134da2873aa95e2c91b77e9eefdaade8f46b66ae58aca3163a44fd0679899858afcc285295365cce408fa1003152c4c1801870a9832e07485dfb5fee6602b56fa298ef6cfef46ba3f06aefd574ade5da96bc62195f01221b5a2072853a0129c41eedc6aa608ec8d6dc13b8212170ef79b33e0f02893f55167910e106edde7ce475cf2e29e6bbe657aaa0153e8c53f49639efaaaeb27b1ae988c9bf687c7926693dd532fd15c964c1c2f682e4bc64e0a3829a17c6d9cc15a4690ddd99f5a781e6d57daf5e3fa22ef4a53120cb7e5003a1b6e7585b6a0d6b7c549e0e870bc88586a098c208dc7c0a5b8ca19b70c42c86fa0df01106b76c3630c05248a56ba2c58c29bb6a69a61c7be8375d609a836975ae2e9a76952c880f8bf5415ee86d5b8637ff20d355bfa82fd06e69ed43128cf84fa0b07f75c57fc596a8a3da2064ef7dcf079159a2bf38628f6f15a4c08f241a558347e370ad8cb84fde8e739b7707995e751d97989fce76387711c35bbfd1d9a98ec1534a8d29e1666c968b2183eebf4c86f3845021d3f716fab5458a80344c6d8fec49a9a18ad639dd56aa3543713f045e4fb452048aa00587dc7acd4676658c943737a96ffca56f3ac9eb305465ad19b126eddedfd481fd13ddb7f860757ae20ce53a00c6d82ac53e28a39e5dc496c2d9a8b5768a4a771b582be70adc23343a9851ba94b07c9bb9f5ef8c0ec454099b12f6df8e0f536cd6ab528567d73a75d28404272f44c99e26b956944a991e54884ef2855f62b18402a5a8fb47f3dcb3de69ee13fc1ddea8475a4926dac5e53f99b4da50fcc92a1ce82c48ca4e9fd36a4e232b32eedb5717af535877d81a90a52a1a35dc4300f94dc87a4a43157e0d0d394d8f533379c7be7c4dfd6beb43542683324f9c2bd82eb3dd2cf654d8e5a765818b1f210ba64769194dc0d7d1b2d1a0f35c41be2c3e87b07c4725c17963da11c2809bda57aebfd307a76411b1f51a347ceffe83939633d15fd42e665b4a4d4fa0386c5cb724009cafc57eac486dd614efeda4f434a6d1f2c09730c234751ebc39cbbb0bf6166e39bfce636fe162040ff0659c4730340d8aa9a07f791d8724dae8906555b758991019f7c84c40cc84afee2f12e06c05e04ede0554be2ab8fb352c60c670d60e80071b6d678d02450c88f19fffc37a1668a51bebf5550cef2303a3a880b06ca9193912d0e4d768328958b02e69f739c0de3d7af71e95add660a4b3e6568922ec8b6579b1d600af83bb4c8233d7d248fc7d7b91495b5323a8bfb6fcb8db35eaff8a9bfae79134044d2f736d1409552453200c6fbd987a1ee8a825d333775bedafca9dba44991ca8e9d539e34cbf8b6e6ec61ad54576dd3e79c013d78cf6e1097cfc954128fa8f8bdd7aca9be4b057029f4662f2ec344c3d5fea640103cb00b7412f0887ea122bf078476f2a7f2541cbc89717f1ae00ab48e4662f2cffc8cbfb20311cd9b5d204cd8f6022cd8fa0fa7f9551d2a83393f54d10e5283188ca7bbfa5f804932fe3e2edf43f868ee38467bce4229609ee4c7c8d5dbd25d9670a60f7f2b6f676319ca98b2d171dddac162f9f62c5c9f0cdd38ee7d167166e6eb5d4cbbf911dbcdc4f3582f921d83651fedfbc22c5bbc89f7331fb8124bbea446f065e9c0a7628cce7e4bbb2f82a1dc0ca97a70c0aa6298f17017288f88dadef5a59be5a560f1a6bb868ea4436178a5ccfa3f131d80df8b19dd381ef384317194a7b2400b5c347f10b777cd60ef24fd02c4dcc242397e822755ba2c49f4c606366d62dc9a2258c6f7aaa49ae55aa5bc227c3a0185898df623fa164057957292ef5699ae41c5623446c8956e32c3d8c3051bae76e8b9db07dbc67f35d6bb888366cd3d722c91b4b1ea4dca98442611fd862948e847f3eaebfbd9f9046660a2bda436e04a51936e2b5ffc43665e414537a6b71e1816ca214cf917306b620e08a6be7525e110bd33b97c87e30a8fad860ba9def45cd6f72768d1a7c025a126457f5ac445ea70679ed17a8c5652dd60f93a59d98bd217683c20dc0661ac79b206d0e777a67b277a5f09cf3a1e56a27e830b5730cef43197525ae18fd435551d75c10fe00577115a6bd3d9d486765048b027190094e74212ed4da9cfe21b9fad9c04dd891b4c56c7ba0d5af2f75bdaf7431e8895e4739df09ce02a64bba58872d50ec1814615a23525c7f329d8abf3c945107ee514fd84d75e0f1df4e71ba855ad22b628f27095bf501b2292e3c1495c5f6203ecb688e5656897cda39c95a0ca81ff2eb18d2435800a7167237cfba4fbfebd35ca09600c2e2fe389eaf2c0e83448c4c05b6fe2edab288a2206fb93b35cd391b282f2fcff029470fb646bb2491344343bac637fdd314260d6e80375fdfa45da884758aec0a436c98b247715bbe1117e18ff3d80eff661f45e11a6cbc51287946345604a76c68331fb66a2e4b6cbca5b1a72d20fe538ad935bbbadc996caed3fe49573a8b02719a3def7cab608fb8801a9198f85bec2ea88eaa0933dd816475fda615e87de3f19e67f15ea4f8adc35cbdf9f1ef73a0a467661d3f66344c83319bd30bb95c9c5250e7c24f55cd4dd3f5b571804037227c1e79b579857544110c77742bf19c3829e220ffc50c152152f0e48596a982631eebf5304740d1d05826aca4cb328a669a33e230ee3c992f4c697df5f3bdfc685904740fafae9a78c3d03ce1f7b79d4be39ccf935aad1dcd6e1e342b1d323dbcfe63e3423bbaf2da5a32bbae1adbe90eeda5763081550312d44c3d46157092849f9220c1420364cf3425250ca8c80b348f5bb39878d7549e63c54d7c1b127521c215352b397aac828c835e28ea7cb5c066fbcb940502883d35afbb90cc8234bdead07f86f2b8fa0095fa15b795708aaf7dc31cc1b086d6043555a50e2fe90c01dd9b9e828449abe4735a7d65c5003f98f83a0982237327d580f22d96e9e1152e288b22430963c0cc3fdad431b0590db3dff0abbc8f9d5636082073916b1cb460bd1f15ac848993cc716f5c2821f864da8f8073434c22a28f3f6ad86820bd36f5d65d9b612d1465e65ec6c78877c8751c8c55cdd02f7f416ca1bcbf9bfe3bc4376ea09d3f9a36488058b3f58dca985c5ebb87191b797934cfdec1460e32503fc5f28239d97a391bda13defe1d068403f5d5d1347f21848a0def404ddda223d89f7879d88f4a3b457bf4cdca9f9b7a6e2824f2689ccd8d2c43d2d0087c8f44c7c443fcf5f3fc45fb35e236cf5f58c3dc03589e649e242ecd3b0823e877c2620cc27c12c9d94a628a81bc23102f7606b8fc9eb81eaa4133c18b5d9b80817ccb43ec0b745a691ca2cbf7786c5e19c5eb959abd2a957aedd4ddb45afd5340c3ace217ef129a93173313e00685f7c1f39eb2194574c620022df974897e599def333ff1892085950de8f6cd7ecb62edb6513f927574fe40daa7d7e1c441fdca9e50ccd3ad04b6bedf4d6aecfa3b37c8fbae7f2d7b76900ced55d9cd261432f4d3b744ee9c4dfbe9ce1c59b2ea75e9d2e29afee24cfe184f93fc83fc0808cff3cab045e983c4eaf80323bc6fa82027c2317741fed91786ca5ba971dd9389feddd448bb5d01be4c3d5c1710597f375c1427abeeb6636966af8c6e80eb383ba224c07fa98864406788bfecc0747ddfe01a2bfc5cb42c32f8fd6cd921ceac3d21f5753947a03fe8e3e63c2cec6e20cc5f83ef1f572dac1325c43a5633801b1c079e2ff9425e150ea75719e3eb2b37f0bc0fea322f6009005ccfa90f8cf78d4236cbeb99fc8d4978ed419a18c301b8f807ccb9e751426aa60db3a286aa93f21eb548a33a77be763aaeb046a6520754e776696786d65aaca445f683b4105982cfe8dfef6911af8b02c35ffd1d5633ba67d23795568228e15408949b9ad36e9356b5c0fae7e04ee118776ea9377064d330a7aba121303cd8feef2c3228313eef24f260f10158a7aea3c9080ab31fda68158c9174c5c2f7207b43053d717b7bb717003404ded65e2bc9dcfee40e009886421aae65f484fec97ee9d0764fd2e6ccedca7c3452ebef30dc2ba0b463c393fe022832c3d62229ff5fb0c9a53a64412c9be5fc3b24859a5915d7d366a0051f042d8978fa5334881e2bcdeaadd780f57792b4f282b19ee4f68ccba4d743015273399799f446a3e06044c6fbffb6b9a0779933a0b03664db5755c7ce0e1d53ebd3249d1866df044c40d3a716063d7b48df7ce0156b17329244b1402d33815bd40f52a98a4f485f46940458e07da822f0ca543b75ea11e217a949d9368448c14e75a21f22192e916d437f8149ab26ce8f55f726304c08bae58f145f407fc83f3409ae81235491b4e29e55a83acca4bf498ed4842f3a12e9e9921a40ded405485af116f8e8c83814749863bec9602b4bbb2f4a84ffec9445fb2e37058d0e07af34f637cc2d49ada5cc4d7f0333dc292d3274da7e9de96a7647d1fdbc53bc5c3b8bb98cf8226c6bf0c0999d7aed1ae76e82611614815a6f455e89922e149e8d2bd21d8a201804662e58339e7fd5b46fa40972fad98640054b9c20fef297e433f11cf51a7d82b7cc7f58c87d2bd34c2dd0f5746ea897e5f2a7d7e6440ce8fb00174975a1541f128d74fdb5243d51bf5f9bf81eefd5bbebac4685561e14c7b1cd71ecce8afe7d133398376a9563f75743ea8b72201a13303a12f5d3e0aa7b66657d8844124d33023e8a78039fbdbaf5009954c85faa893e09042b6dc26296b1411f754b9c784a60d10f9a35797f42eeed9a9eb23dc0446e457381758b4c4d6049d9bb167ae037c25aa2359be9e0e36d17d0a3cae0d9fdf3fe7c10a66a560bacaae1641fabc37a0f32975c44fa2ad64395e856fa2daf34f95bbe417c5732a3844f66d760692839284550c7988dbef3c9181c37660c6e3e0a69adde8c546fbee2043bf7f98a2323c60ea3ceb79b6d9c8f912b81de3b29281898cabb7c61b6a563c7a68191188964b0c2ef2571d203436092c604a80c2849f9a7d8b6ba29717e079198b0d6c799dadc32529cbb31a5ab63762876e06185a3cc8f76a179b97bb7945206cad3f710d2badaf2dfa867d6e307e3a94f71388ec77a144af841cae2535503d0692f45f412eb66464b10b0337a86fe35d27c90e18436f22f84b9730f37946de59fe319dcf82417f24663f9d1127e4d49cac2c342a6637df5f4cc765dfe4eab237447eb0347adf4253cf5b6b3123b9f5b61b0f5539b822d972ab3cae1946abd2ac12af5451cb05f1abda8ed288dd4f1ea3f040ec63bcdb52e5f7be762c06eba7d2e9ce437f3e508ee9f8c4e3cfedee63baf019f855db91ef6a135f1c837b3a053ec24792a3f76e43f2150e9a38efb026085d303c8534a41d6352c4e3a5cf3f8d5f4c7b07cab5b95d7f1672b1d6180e2c85a45a01f6dfd812c1fe040e5755f4438e31cd102b587973a12e4c363895a84bb9d141b8722c1bcde381659e51900df06f9316980253c7a186e7bb1f994a3ebac293a0d21953fa50e174dcf45fbc4e8c35fa1c37cdd3bc6c52ce53b28f679b14355ff57fa3c960c63f095b83016778c5d4de0514677c844cb3cff49db091a8b0bd9d7ac91787e756f4ec6348040f9f0acac19a10070a2f5159bb6494471e4b71c6ec5fea031cfe6f5282e9e30fb0f4e43351b8326820f6e7d0ad57810a3d2e29a6105870686cb9fce0ca1b6ceb39b038393f693c98d7be4c93705b07bfea04a8c4d63a12764d43bf9c57197b5dc9b230b62953643983a7b770cc4c5746ea93e89e8530cd174f7a44b5d96586603f50694f782affb5281a7c4c4c5463593b0298a463e4e148322dae95b508d51792f606fc4e5bfd0a5620c528f8d627ace673043b12441d6ac3ce4f8250ca0aeff458fd1030a15705f87023d3ed928806ebb6b5916ada723521d00e6c85f9f2124e44df5f21fb5b574e40dab28a6240ba54281568290ef0221b96695926366e33e4aed87ae72334e2e706608ffa2a7c863d0342225fd98a79ce5396d9c06d19f93bcada9a14b194f172cc26e64aed75970edaa0297370c157d0ca193631232222a208eb1490b05b97af052cae5e318ca48009f256c7d2e153d7d350e9270a21c457930b3ff4e586a07634c2fa186b88813491be39cfd9a3f11c2029bd98c7b1f704c135d717bac316ec5fe8215a56b45e52476cff1f2ffa77ba5ac57d69184f683ba63d8a400391d0f39cc96f79cf75d27b47c29240976e167ba69d43971b55e7b12aa6e58783dcc115704493c3745ff4f7a8d8801c282e984630f821dd53c0b80da0e6866ebb9e03fee20ef68ee0c6d3afdda36e485e34e5fd39d8169b0c004272e9381cbea49aacd3e5322e0942a7112de162cf8adecfdce32be3b870049165fc9510fafb1cbe0f2ce13b449eac28dae9b4945a36593f600262e216fbca5edfe6bb385a4359c984c8ec99659773a8669dcfd7ab044109ec9dd2836df3bbcb78ff23e24cb224c6585e752dc8d7aa734bc4484565ba28160af4e32028dec01212d6351f59255cc44e08934aff86f8d084d649c6f70adc70d71fafc3e8a8ae0ab347d242d524efc27867633a89dbb838066cb6f7a18a29beaa7dfbae3067666fdf494d0669f540223487e9e5e724b3ecade733a9a6d72ad7fd18a9402e0c672cbcdca4f5bb208f654e6849da30a8a24eecd81425052a7e318ddaa22085bddb8315a14cd1c49a6592db6483a307102a0a5aab465e9b5c35ab876a19e7aa696ac86d65a8c58e057f62be9ac792ee88cd2363783d612f6c086b278b829fb5603bfa9a00f612c6b680799564a6fe639d1bd91a1a4268809e6e2cd26e0932f0e19e6fc7c857adde5ca95658837a7fcf72de789c16f58a2b067d70ad991992d23a9cf0c0214eba3bae3f665cbd71714551294e0bb7f1b270b4683cbdb6c00dd6c1ca160ef1d248213c4d39edb4cd75ebe04f5080404253704bbed96f83e4abb0c70600a57e9b1c3070c8c3670ef95294192add3ad5fb701bd94589816bdc42ee1b98e3235bdcc3e0929d72868a8e1c1422f21373b765d8556e9f96e34b9cbbd564bee30a165363694a36ca504d890e6563606b82127a9c9142df67f9a1d269c7acf47b0b9d625c1602c97d6f3cde0b34527392d9bfa4fb15849a786863e3096ec8a6783d44ba29b13cf71d952b7fbce4e778a06d2cf21f4ea86a3fe0f2aa46c412f117344d0e6d70f51ecaa7c9ea87cda1b48505bd501c8010b344ac5e4973d9ef9b7a6270170e1dc7a4fe9b5882b1cab3d64e2889ff0a12a3f7ddc3e8ecee469490bbd8ab10a23ebac0ea9723d7135821f739417f7e64f475dfc8cc80dd073143a56c3916d152794b4a9a30ff99e9611647ce59018ee4138650bacd9a3685febcd7f0dcd5c46b0ae59512712b1e58205bff9aa795593881cd0eb234885bb5e2017a5935b935bdc91b1538c1a2b3619ec6daff3cec220a0379ca3b5831257c7593c2228c2c88ebf79819ef42d26ae02f74735c7e2831ab60ea5162906c641775d6d8a029c0fd25b0d62efcd695f487ab37927acaff8e58ae4dfcdcbdce1d31be9cf1c69f54e3b14b2045bd844e4aed702d9b418ad3373ea0ae2ae48c44ca2808c65be3f56703f2e56117177f08cf6db8997ce0741fd5248f15481e21921a20a1e630c6ac65c5a153c519115c2677733827067542496c8924764e85af537a983bcc249a03da915ec65ec6946ce9bbae09b6ac028392659dbc76feda273ebd34a3bc6710af7c5e7790d545e6c50d833df55fbe4834146de2907ad7dff527de9acc8af368c0039e7140f00cc8fc8d721d294d6388a3d6d8937802e5a36e18d18229152a14c26ee745065bdbb61f64bfa240956a7f0fa7faae942360f456e37e4cbc22f85c388fe210cb0b9fdd4a78d9faf1a0f2450644f91b61d8abc3659977fcf03a08a6684bf525719d8106fe2b77ab53bc286865940cfb66394e61deff3e4c05fb4086f1136e6e6f461b2b47858d07d9d3c8beb1f0b0bcd9dacf040c2b0961ab29d6d5de9de74267a010987921539489e3db0a574c18e81bac27570fa5140cdeac2689e1f15a1672d6acfcc7b4acbe416e02af1209333483a4e58be53a8bbd32c584f7ea1d5dbfe7a01e1a6f49fd20ba5fbce8a15fcbd80cefe3eb9ee154371ec45a40a9038ea6c295a89fae6556cdf10755c4ec5944c4484a3aa7a3071d713df65d3a0a0eef5a3f34acc7939318c5eecfb1030eead8e64b180025172e60c225da29486e4610deceeed62d774b7ee03b9ede1e14ffb864c3ec2fabaa7a9c7e566efb6fdd43602575807aeb25b53826f8e745d57a11e2c9fe8d79e733131766bdb75d9a74803d07a609c8dfc3ba7e3b332fffa75d93c8f33fe43601e6a649dda95d810f46141f4832a14018b9ade026af136153ca54b5c3be785b2829af5ef267b5c88e81a7a288d2f8b7b7d582cc2e961a17bd7ba6ba6250611307128f236ebaec786058d1b6b2bcd0e63eb0ab81c1bff5698831f2f846049c392e74be1a1412a1936b6410d3eb1d3133b53cd7c2620896b2a7bfdd315fef057cb5e6c23a91014b8090cd6a0aee0fc0cdfa9a284c62d48a8a1cbfbb5cb267c817169f66efec6e9d713b9d099fdbf6d5316b0cec8ec8c0e845d72d3e601225b0b56d3c5ade0eed3f9b302135d95be1c7248228070e745806d05161bd06718bb9bf8a90fba223a4a820dd247fabd9d46764968d2600dfbae671917e937715cab8173efcd45c4c432774f9ed4e4030b873dccaa9e91b11d6067c16cf4c04a964fcbbdeff1d8d09a59fb51bad5dd001e60d063eeed5e37ec3bf62442322becc2406b96de659f7bdb3aebb326ff431910f92e6be7237dda0c6881fc525f28562b4b4e9d186a48af8d298623b024faebc530bc08eb1564787027fa4f9d76687489dc0c88b20cb3b4e811a3360becad9652b21ec771c51f9868f3b86746b361c08dae662a2688c3b4db18ae5cb8d79549859e06e64281f2d101880ce048ddca5e67fdd78def244457385d75c475e335f78bf99486387de9f69d540a526acdc42b15dcd07b464bdc6e7ef071684116ce5a33f5bdc5382b2870270067e4a520e2ae8d37866b1cdadba4570d540f76faec627bc02b764251b0e17105518fd544fd7b995728f77df44427e236d556f095b434e7b9e283695d5d6e77ebaae7d138ddba8ed4aec57b4c828c710cd1bd751a5047d7d208e295dc05a5f1cc972ef0d91a77a26128378a0d9886fcf18fbdfea5ed5640017677179c1868380f023541985d8242c2d43bf9b3a10410dd5fa007ab356e3bd2a61a9d22cb4565c629a4edd2077e7683f5e81189a6c10044c8c5c1543f3d0f8fd01bcf1ca6c4e64673970bfdc732db6692310a5813496476a8e96b0d3a9ad1904d551131dcde50ae9ceac449b6a686edd4a7cf744e6d3c3e56c3c035d5d43cf27f0a7d8c7e124fff9103c6b62406a9a8feadde110749cd5aca4447829c2c01b3de298d7200f3977fcdd89c3f917d9230b702b432f8125c39f86e5bac7f4268488b346b7c88ce9aef824adac7bca7926d1895b4f2303ccb7d5027efdc65ca4d3b201452b16cf7085e221fed8def0f2bb04e27114309d9ade58f9261fabaf67eb0bcf6ce529b1bc8db1b4ecd2c9eb7a559d33bd43caa84cda2655f53e88ec618ad94c11b2bb8983cc223a09c11bec342541079857833e7ad5a3512144cf99b93c1a06a6d9c2785b0250938f8a51af98c23683f7d9594542aa572ca0ebd7a6ccfbc995a8bc4c757c6e0e53d9b823e07b8da4fe487536266ec85a3234beeb6a0b353cdfdd4e2e6dbd4c2ce78396c5c30b1b5d2883a802b392b8955f54724d431d1e5564aa30b247a5e88a6700c3b4644f7d8b0cdf2dd8766d73b0a0101441e41a73a21c26d56192615a48c6f421b31c84fca36eb6bf64cd5f3cca6024ffe32d5daa398b2d6eb1db9582164053a1386feb4ffd97ef19e621e4dabfeaf4a4ebe7f49d51002183a36185410e672fbd59b6f8639ac862f196be20540f7777216cbf3a13fb58c54311441ffbcc2fa9c5c9c76737cae5f1bb2a1cbadf8ae9a5bacbb2c2f7a714e9f23943e5b494a8a6bde2a1cedfe12d3303f288200be258858494b16c6f2fdfe83e48e821d4d1e386d2d131a013d78c8e29a16733d4a24acfb35ced4fa4465c6761ef7c02a5a389d959384598f136f1735c644df4332b3f68e23a1666ade3e678a79b8a33a93a95847351cdc04ea9555c06a62ba494982f7b821ca7bad8366029d1ed5d3d8d8ae068f849377c95829926b47188b1938ede64d070bfe335819de0737449518bf3251d07fa5f5bcc2dad3b680be5404b3f24ffcd1bbd07aa1abec31f78f8e2adf6a354f09e7127185bb3d8e49e78742d72c7df11a2650bc98573284a0672a5758b24ff10a582002690419f3f793b545b2f2455aaa7f67a2887a97e5d8be77d026a154dbbd3f9d7fc03c6811cc98626de691ccb6b6df1676a6dabfe484fdcc191358628829d3eb491bc65c7cd61140459b4e1aaa2ecf31837b83f2263237568ce3fefaa0be6ccbef1739bfb0fba0fc3f82dd19c5e8c320d5ad781325acf6d5eabf45d4e8fb9ba953718a24980f98f8cc6894356181a79eb55c666288beb48243d0bbbef0739c8e4cd706d899ceba8b9e9ece9711f52232481480013eb172f766bc154986d223abf437e5157145f1d9f7d302393369109cb16af33eeaa405dd01422ffa36459fa2e7f9b9ca33696789a759430037d3667c67aafa53dd798169c5dae7d21912773b93b900cc9bae754e7ae7b5aec59fc674495111fb7d90f759a313055fad9039945662a6e683b746a413806bcc184d8074310984620dad823ef3f5257d5ba158e5145a7ce7a2cc10d20372d7a09968434330e595e6235724cc57b21bcd16318ecfdf7a97196b534b846c3cc947370645251762c3eed33dc166fa86e47bccfdf01983b9a313a2a8a5058513a4ed57a7a0eb4c1b5fc18c844982a8c7b6a29a4b90b88374b46de21c2ab6f011a96dec1d47daea12ebde79a73054dc7dc337e8d8baa51cd935644ac6f67c50cee002429e96fafb4cedc12dc13f6e31eda5e43ee38677401555cdc108d0e8279a6cde70c3ef46dd3041dbea9fe5fa8de1e0224a722d8695219f1d69c7a599da3bab7a4df1aa3c27a5057540d68cae7f09327e4b546f06ad27c83fd2c7457e161719adb603918ca2f580a8c5f6ab156c2885ecbb0a78c25455828465fe6b7cb0a37d0cbf787cae97b40b50e766323f2bbe122356ca223d9a8b1225fabaeab00b52f859613caa9681b14b5858e5d44554755bdc72860b486f878ab22153fb9e8b32cbdcd1dc11c7247d395833b0b598b62137525526ad226d9723e4544632598f9491673d72f0df87cb8f2545b54b8fc2f5f287dde155bfae34ddc92b8ea9ed1dd9923a9eac65bf47c2db170a3cd0341174a2896f9ae48114f3b6512e53f532a23387c2108fffb3ce50174544301bae7c3e15919f5a300537e26188647017ae83f61f364935fe86b45e537d6b1854f7c885363027d6f483bac1e83b685655c14f47d975de7ed17ba2f45c118ec9139330909f83833216db3b5ac8224ad4f17beb6d7b9957106610320d505aea1d5ace0cf2296013a5312d7d99d834abc0f2e8a56c38e628cef8eb37a0bce78ee8bfb7a74ea7bb31f0a75824904e70557e9e8d159176721145496e07961cb3e4682ca181469c6cbce2797b6dc9e33893db32ecef23a180ee4ce3bc7eb047464306dc6b24f309f19c4747657ff792dd726f574cced9c90df31386b01f3f4a371feca1ad170a9b1fadf4f6b9644da998fd06ce9dcd557d263327ddc5dc4ba7a6f36528ecd6f0d0ebfe25f04c74ac02d2e143594efcdafb0ae94876df8d56e45c5da6bc0e63a62db6d61d25f17f5d4c5925e26f367578a28c824bcee4c9ae124b6b8b2f049689baf77be2b45ce78f9eb1fc292dc6714ddfe81a848bcc15172e9363b8c3a02cda916a528754f333571b18c7b8a9b77f5064678b3bfff829af6d15ff640506fcacfa57b119b45b73ea851029972730b6554583461a464f5731e474bddb171d780f076f868abd69d8d0d8a30fd00d1e6ccd31dbe8b29ee45d57277601d8f343789cce10f6aa7234091df00263bf9c912da75ff44552520ee9507730538e9de9a00db9d56fb2f52ac54acd322d0e0110ec43b891ba9e657f59d8e34f610c32715d4e1b1beb55ba987b3fbf2708f7d8acb7e84393e63158dda61610dbc101ae439dcea6fa4c2195955740fa861fffadde5e9d7b6f1ad3b6781ce83809e97890e3996fe27776c42b93fc6297dab9ab402c517cd75d13a79e38695101ff1e05ba2f983c3338bfd3b983b9846731a5bac144ab864cab4aceb3c89da3b1f779e09a7c5f1e3e1a2138758b9d5b560db266efc112e723ff9b39b163e5f57735a3edf71efa9dbd994c8cc7a26ae000bc17a2f10768580dfe642ead6d9c706176bda0450269b22e8bbeb3a3ba729020e2cf749103495cde6f93fe02cd3fe971d09798e05dd00448e285e11cf35f8c742ca6a5adda03d8c5589f9137cfcfaf1b7e5150663b7644a05bf2e880173560d17f06758288fedd6156a4662011789631e7469cebe094d5e42e8508ff1279f77b908fa880f249403e05998115e642864cd0b1200adea6dca5969bc0efb0efd36b8f0272b5160aadb522168935742dc769b32de2a55101597fd9188a525a446d648f62fd06186048de0f168f00609d609a978759532a3fbab1c38744f561db4c6e283f4eb9d1db744c49a9786e89d23040c6f8b428488a0d8973736eb3366125b049d2bd5f8fcd9446d806c6662ef29ceb55380a4c79be39374722bd4c9d01160cc7c6c27f0871a4f34856d0b6bbf586db57233e7d77fbb945719d4981799b1670efafcabf6a826d6e5be429d2e77f6dd61c14f5b7d486c799940e11750b949979cfecccffb7518899f29f973ab5989b8ff3be02c76269851f67da4fda91f8e13e973935104b34d2662678cf8d06a6e9a1170aaf4310759f99d882ab94417bc4ed79f45d472ff2e2cd8948979a87517162a186dbbff798c286271c21bf48ea903c4ef80816bfecd6522707eff3b0c1094515a8d23ef6d5d0f6dd19697b09472703a607adae99a57878013a3aaf312a3ce6b89d6adbbc50fde9ba7fde75bc78fa780e983877b8161202eff6fbf87edf7b2ad412fd125d54f4117073c2b5dceaa92d80f38113d77b6e24e0b32fd5a4a04b949decab62fb898ae0810bd200e561a472fd2b6c9ebc16748224ecc7f84a32f7d66bd4346f3160ba8f12f827a233fc3940ee424b94a52bcbe4e5d1de6f66dd755db5fd4329292b1a51e9a7c0bf99c3d29ac252fb6c10db91ab4392d54287df42f5c4bf61240c96bf11e163f3936421caaadd7d8aa2d13570d60a9bf9f4144707912b9f6e3c4e4aa5b0562ba30e9e86eb8d99185dc7c064f4fa5752b56ba3a47a9d4b5f98b87f79269ace0e1bd1babe4a01a402d9df61298dd4c9fcefed6c7b45776f011a46dd9e904e3c589b23404bef04b308f0ac0b5270ee2d2b12605f07adb8ab1523e8810adc7604a69ff735a67a95adbb172be662bb6102598c8c0d87439c3a4111f93e084ec655abf2e9e0659c888ce0f4df44c8e24ce2193929ef5c74207268082fb5f69abc34b41c29981e89886a16f1439c0069eb1c088462960ae835526d48b3907a36bcc0873311ba433b9eb6693092abc70ac285e9e51896ad3db1395d3da33208f0803a78cc34fbad373a9b556320d6a59c066cabf96b3f2ab7ba5f228b2b025cb3d01370049c1a06e6e1a3544c7e4539762dfc42c5b84950058add975ec53f892f38db87b477d6bc1bfeaa5183acd0f3134cd628d06019a653ddf878c5acb0b2fbc370bbf8850ec2ce5103eae0129ace7ab39f4e22d35ea6f8ededd1db75f30386726bc415a5754ad0b667663806c6d2950241dac94d8ac79865ada78245ab767049b632c6d2d1c0bc60d5e3ea3c08f2c171b58c748df85806b867de94303764e1c62c3de83d662c49758d88b279d87ef70f5025077a1343383f57a2142e506502593d6f5f0b7679ad2fd16b999adc53ef0b1d41eeb7b8cec667c013be979585b97d628090c74438b0da7513c60413d720f006eb5c2298aec5059ba542c537824b3d16ee119ed05edb4c2f015c8e15e33808203493b72692f9b4c0b8c3d6bd31769c80d4a11380ada4fdafcc62f2230cd445f33f535a4070deeb438fc2f520c3c9cb455829a77ae6268971fe6c05f22f85db73071fd011fbaedd606b0f81b0120794856e68e5b263204e5deb839fbba3c1f6c8459ae4f00a31a677509636da845f98423069491971801ad92601585d22f0d251b193363f8193760d9c5c54c14480cad74ee1c16a715f7323298a127675c14e322efb30cfb4bb08b52eef9fb63c01bf8f8b6fe2928ffab697dde59df203cd88df9b1bc91bfa08af05a3661087c69971324d197d03b10cf10ee1523ec02f1f7236cbe43836f739f13abdb554fac791effb0ea048075084a0439ffa7349c2b15bc125fce7f99a123388637c8c6aa50c78a09f2b5cb45c2850c6e6f786d8b6fb6be8f9ff75d9b557b99e7ee705fea22ee862b017f20b039cae5df735265f20f23d0e92caaedd86dc1135b4c97141c1062e607b5c0f1aba252e2ca9d186fa70909797d61b0582c1f426f89487e1addaecb5616ab648e3871433f0f286d714c9e484e28bc0fb6d766c590102a9c92604e0d8f3b72012006c6aaedeb3d81a78332e876e3f7ad09b62ec2b0275a87337dded9195534a0f5dd052ca659e5e025cb6da691d5ed20c0d2566e091ce364e919fd4d62c92c99c0982be5157e7cacfec7ab32ec58301e99424a04fa6215c4ffd469b0137861b7587fc5c3b801072aba3ba71cfd2676d9efe16fc2a8a7a316b6aacfca7112cd8653d89187796f6609263ba75014c6e2fb05a50a1eefee8ab764d75a0425a63c463c45d969946f0ff8e587537a79feed154c9395c44b755fe47c5db4d277e562e8408c4558ebfefd74d2e652b495e77ae729e464276fe33432dc34e996693ea30e1240d361924d175146609b2c77e6717d08cb5a197c9416c522cc2e69177389890f193014aee241653c9be052082d677b71fe4b25cdf55c9c92b765d5f91053b2f110bbd28c54eed8ee46a9cefddb33acf556397c446854eac520c95fa8fa9ffe276e5c9195dd9f6729bd6753b8f303b7f34c6cf17c4df7641eed7daa1fdfb3b1b133d0379c335c92ae5464c758a47ea53e01b509e5bb3038b7aa36af562bed1aa96b73a9c82b49eb0a6f8135c905d24051e3f3d57d75db47e5e4b724f896f548f31cf302ea0f1910ba2506457b114e0aa2befa8f1352d50faf307ab8929454bc54c17278da9ea2936673a264f092b68c1c82af1f7eaeeda8e31f67acba25a969dcdd919e814706fb86ab0eb4c877501ff491ed5d06fcd2df7402fedc0ed9952a030c17ca74f6966f172ac8fabe7fea4e353126fe8f6af99b3255d9daa496245f7e5f45979727c96bf27680132241b1db46f496e605f0a9991a6bfdd47a2e6ed9c4479580f4da30d4915c6b563553fa1021af49e0f16bd9f4cdaab31a32b68c22559e46962d2910f4b1d240cc52c4bbc5f7baadae1cd792ef312dcb74b11a6732c4ef3aacf54765f5a05241b4cb0e23878957c8a6ce4acf019d599ead0853562131ad711c4c2e5b23d09dad462e6df646c593c0e654cecb33b1de8ffe4ef6720436e682957843522b56f91740fc79fb623d6c04cb9c62b961b9151570a2793e255062ded99122cd4467f6582b250ce16228c627ca5dfd318f76c01b2dd4996b315f65b3fd2f520b7f053fb30c945c2b739cb14e2efe67a39aa5ac31e2cbfcc6335aeba7df9cf5e1821d156eb354acc192d2e366527023bdc3b49749ce59601d60aa17a47a2471ae15b87119c0399cee099b84ef75d7c2e1285271ec4083f62deecd6e461a51ce4cb94de087bedf5c040bdad2daf19ba5fc189c9f97f76ee47a52d9322181edb7d0e354bfc19184cafc9608180767a29cb9d5e31228cb64d49162e3a3af19e09c987b4e3ef74ab15d3b13e0032c6393ec142ad934df72a5c44a7c9a7183f94854cc62d659a04fafd336d4af6887a7be373f6a668b822a62a80b3ad1e78c88d2c0fa0870aaf1b9ce6a8447f6f2dea06fe8a0d7e5503eadd72186bdf803147ad14af80d6c637e5af3a36efaf0e780d97ad70f622c20f4d8151081ed0dc4ec0c57708f9df809d336a8e2c05f1269ddacaffc085113020e69cb97e95f4443cb3102af4d6636e5b9127e58dd46438bc69889e8be4263e67240efae7e4a2e2c5787c9ef337d75b5f3fdab7c3fba7713c0f5a889cc2b92d3f3a60169d8e8289759cd2969786f4957d4aa665e1a0de0a4594c094f1ae981d969b3b2afcf61588b5b22dc102ee24f9dde8b5eedd0b090981e1a1075cdfe1f639bdd65813f153b6f051a37976146289b79f8dbbc09b6c6595920a670d3545279ee25cd3f5fecca8778af21744e8cc49304376ec1cc05fad4974cbeb3c199979873c391e882f60e3deb24de4ebbdaa35a543cd6d25bdacccd29e9c7437b9b4c9d8124bab37bf9bd8e5959055d8d8fc3b8452ca25488a44e17b425aa4c1d829c66e7a8786eec442d725fdb2004bf1236995625af757278c4d391bd0315e7287841c618e77260d5368a6a6fd037549a4735cf1b480dbd486d7ac1ead09990c64a966be28a80471e09b91d4408f29ebf6a62851562831f30b786922b71891d717dce027c12fc57ce91bf8bbc95d9c67ccaf5f6d1a7b2fa747780b1adcece680e6bbc6098fce221788cd6722863f767098cd7af2903b655e6f0e47750d044a0aca1b2c345e0c24ce1f880179bdbdffb1d3269458220ba8c8cfc57370374ea57e35ba39eea5f02cafd42d4014e139bc62860eb327d0083cdca20570a06cd8419f53d6a2ed12daddfd18f0934b5d8fd235828497016fcaa05bdbe8f397540de2e77ea14d07e50c5551f4ada1e4330023f524c6a6a8b3723098ed7a735a4c7874f5b21cf14a238b9132db8216c4f2fb6ba162db0dd6677fd9b94cc4813a35298dc0dd3cfbc92310802afd289fedd2cc2af7db8b5c7c67e3043b83c7a2b2ca7ec07c9f799f9726f7a9bd47b60ea57ef20b029fbe2cec09895267bdeef2505daaa34aaa302ca3abc8afb1aff6506be23e8d91b7a7eb4f8fef08b1420184fe4334355e1dc8eec987680c749f953c6821e7bcb8df6093bc0b780f2d1b4ab6c30928167dc39e00fe077deb28f2df6bdb1608f7b116e4e3addc620ad8d98622bd05c837f1e06cd80da0f8f5929f758c30e3afd989ebb51f676a8ca56e2090a94ee006907661b8f2869a2371c6af6469a837f01e3bb2753d5dff7bbb8e0bf46c66afd0e7602810cb3d36680adaefa90c0fca43e743a8e6c0f6db52eb4b518ef5624ba517267d682becf7c0a9a50c56cc946623cd20f3e8befa38d14bb79a411f84e2ad2972bffc5960f98ca6daef7101660f1931f196b1c9bca1bffacca5b87973e9f794a879b7f9cb9ba41f3b949a11eb1f2b42abb7f9a9135e85ac79c027292f6e566fd7f2c04aea6165a3e4b5ee1c726025189f9ddd8d24d2661777b03d24999164091e7a390f62085e35c35877812608f408343421ef8e718f48d7eaee93926508cd8d7264b152bed527b2267c878c17f1a21e049064b0cb481ce9adf3dd7108a61cf3cfd44906ee18b4c7eb9d1595620130dfbb9fbb14ebb804e80b544ca3d7b5c46e7e96e56cffe360c45660b342c3d930443ef55fc26ee876e24c83a3b1efe10d1831367030e018948dd282d0d9aebbf5552fad594f2831f7f3602c0d0ca330ae366329d1e1353a6227d58de0918cd304237d6e2b356da824559c988c0b28116c0d672012c3c19b456b39bb540cf2f41fd37f8b9948dc3a811c3ed890c6f54c1e023ded9f77bd72032e011df34f027113aad264aa8dfe15f8ee19b53de6254718de511e3a67d940c1769bf1f6dc058fef498216034a9b4d2ba63507c6c2fc97251f551da0481dfc721b01dce3548e6e5bbb79fbf99aec5aca03acf17d5d92d0b4cb35f693cd78ecf5721a59db3208de2177e181b15145ffa8e575dc6286ba3e11f6f28cde5da8b21b7f82c2fefcd8c5bf6a01debfd46eb793bd930001d469c5d0054d94736c211547f4414f5f6fc4519cedf65002d5c55676e9fd5be4f43447395f4ecebc6d85b6c056e666ec4158be166487eddc86d2c233475d55921611a38883a4977502fa77474ed2bd3fb5c668d9cd5f9774d893ba6df888a8cf0006dd20d9be8c324c9535207a3f50bd835a433b1b628c655358596206262ac51835f946fff3b46f04f254e2507d6a256aa9507046704bd77518aab663eb15995fa95c94ab30ddde6cfd2477d91dcafc6d3ea7d7fce273aa596d6b5f5781d429a38f06399845fc140fcc69ebdce5071dd75f2b17951bc23ded0153f7ee6e06d1362f4119c6b32084a1eef98e4ab671f696f7bd9a92f00ad8e946b3d802221193d59511498e9aa91325324adf80c478970bbf553b3132731f1cf26f674e12f48db21980292fb2a292a2076947fda385fcb9933f54dbac22460a51edfe632afb8de5547d88a85d41ce28ac7ce7cd82d81907af4a695106add571a5a7342ae56e657b78ef6258df46a77a9db6558214902dfb982dbdb9c5e776b185d5d5c281b35012d172ced1fd4dcb9f5c9ebf2b4b6b58417ae65e65f8b30ee4742f52901fda7ca1b1349ae57d43eab4328207fe7cf1afe6f63db1cad9e557bcec0a59200a939f4fc787cbcebe089bfaa127946c4bf10a5c7f0aa85783ae077d6ca903ec75b87b53551d3a21f2a1276dfae426538dc213b67a6f66d5b07fe0d3bbf44eb8c4412afd0a46f3b61b9343f7b4e52e127d5687fdcc4dd80e4f7ad06fa053f202938fb1cb9e919fff4a3dd6f8619c1c65312fa159c0ff1da240e942375273ffd0f42c7d173ff1f8705bfbe59ad1b12caa09ef4da5a73b78f19078d684754b35bb206f28e1dfc6f5f5adc2155bcaad6ab234001feb7458f41b5e1a13fa33e2a7211985b9f39f863d92e2026dd7fac2afe5601c299eea3b0a61c95646452de24e1ce811df978fdb79509354adca70d04cd9f71103aa36222bda117ea0954e318e0e686f1edbe9cc7e2718ed1ca2c646068915665e2c7a2107f8dfed56ec03bfe8aa49ee1990c792b35f56ea18ea4024e861f0f70aff616786cee68f97f04ba1006c633a2a94656951ad8edc51271979f6117bae7848847aab17343cbff14d1f3842d179b5ddd63e0fb39f6d108601d5bd5e11733c575ba60acd57e7adc18f4646af5f1d86ba20181140ea09fafaca1bfd83d73dde31c6ca93085d831f9776d1f34513b7bd042f25f94c2af4a399cbe97d61eb7e2e0bf186ee111df40a3e8743439e65cb5c21c2b03e7da527a4b7357da8d7f6b24a18ecaa7e26d6ae04539dee0a9662e181442befba3377fbb3130bb95a935eddd14822fe6ace5ed951314f67ba23c9e68945650c2b6acec5360308a8334c9a82d32c981f0e4436234e4621e80fd679e561454292626344484c29667dffee912e51927ef583b9f1cd9be3c6d5efd0be7e0cc8104f44c6fb7fba8abe89a8b0396108a8d28bd93e1d9535f91afe8dd2ef9e8f76ca931ef3908c5d3160db30e515e606a8da5c6e7ee4f4846c9d4493a095586f4fa9f17cdddfe9dec8d3fd15f9cd5c5e62ce5ec13261a6a4680064e7f2744db0370bffa59f932bd5e85ccb5a75fef1cae7825c1154198c0603a20426c43a5754045d50e07d63a05eacb087165aa3bbef10584e0c2b4c84bd726f5e8c4eb71d87493fd63c06f431d9a69411d985a7114bbd617a2c5577f5e9cc0892d30ff606f7e5a4cce7c3658eb1d3ad0542f394b3455a953a26ad0dc4d3554c4f86e036df2f4be9b9f7d43defb0cccbd16acc8069c4fe8a0671c534205db59a6d61f0ce174484cdecc2b8264fe11bf796f63531ba915db813ad43dc1a52da198bc6c89ba3af212638545eee533fa69519b00b640af7dbded315c832ac2ecd5b8868f457e3bb4dcdaa86399a9c4ba074157349c18b9599bb885df70b0bd046445ee0bc8c46428c9293a56fa73b8d038d89bbb512985284d97303ef13436fe89967c2340f440f880098ddfb79a4d783e069c9e4f5d7cf9b03804cb34c1ad8d5dcfb6b0d54678c2fcf0505f3cb7bdb75d297a45f3d92d258b2fd04873dda2d6c623584047852d857781e98c74a111f56074843ae07aeb2805fbd90e055bfdc99752641eca8e70f64ecabc283916c994eaf756fe9a6e4facb20f8f4688891642f1f49a50ed068e7f209cf29944b8e4ad9b948531917201f38158a7fd948ef5b44e32b1cd478150ea0cab1479dccf4e20e629a244ba943493d9bc7d7aaa060f14b8c275d490dda815ceacdc3df5d0bd42cbb177d103f5db307239a9b81493eef14667d865849ff346e6c38f8476b6777fd8f4e42d6212cbc90cd8e916af1ddef948bb6f9bf2d735f192718892fcc79ecf6a312380136315c0633d43d5c8b128792d1ba7eb8f06c8b9213f61f6f2e6eae3b22018efe8f2904339ee672b92aac416b2952bcee5c921e28f7c9e9105a4212c317824f7e0899da33025802637e0983ee2f7d8142d016f7a266ecbdba6d7062d980df9393555a0eceee973dd3dbdd047774cd32d2375b67a1a89347afa64c9b7f80d94c1e08895368e07166de1a0e5fd82f1bc9c59d0e35c824ea95fb7db8c1d0323e864fe57d981f38e6e4291d1db6df4889149fbe24b0fc3d06afcb49ee5ba80db41085666affb1aec023d405fbffe437b28d1220b3f601bf9aee3d580764b2d029a31e8b91073bf44de21ddf5b5b3962058d895b95c53d0887aa27858204b7314aad21072b1bf278d6b9b8812475ee88748f194270b9c56b85620b0bb420bd402b228b9710c115638ef45536fddaf35008e4476d89e293dd8ade9ad9008dc6bb1108769b639189e6bd5090433252a7241fb3f6fb8ca5402b631bf9e1fb4e65ea1cf7ac7b882443ce6f85fc41358e637d33d41639ef92c5136542b6480d5c9c6b96a4399f916febfc835b09c0b433581996e216f663927dcd48bb13652bff99739b95bb4f06783886a52605f347e1fe80d1f7ac644c9243729738f31efe8a569b6d4e12b2f1eba83aa5f36a2f7a586a4f2d5afacdc6f9a174e44fdbd33ab3e65031c0f988fcc4517f8ac452cc5734fb62dc03a5417b36e728e9b849e37b37473841d1ca13935708e8dd7b96b1d2a4aa6fda3404f85cbb52f36079aef845f176c6cdff0d13dce941a85a59ccee731838b3b684f6fdb8ffe2f22dc020454ab0fc83ffc11db72a558455921a3d4658844ebfb1cfa35fb7112a47296a77341433aa29eafb32aeea3db390f83a6ae306ea089f59c05123ab7ea1881fcc6be6489a09451456090f85a145fae99b79692f0b3afeb7c0655f30084e68bdd97ba6cf8cc4139140555bb1e8b7164f4885dbf081d45fef04cd00e61946ffcdfd373b7a6bb31ace76705041e2b61f316deec1f9a3f14a463dcb699002d1d56fc5a34f6fbdca6c3e240e96331cf099a402e425bd658fe1843150715ffd5d1e78a9741e4454f6da2d8667a75881e143699f53db5f36210ffaed7ee7826b6b8f62932110b3fbb66cd041e1e81e960e35d943224b26a54793a9215fc34c2cdf1d3825fbd89dc7bd01d97925837e80cf0049196bf3d0595c0fd7f42531976081eb1ef10b0b8d7afe216ebca6fb05d8dc2a63203f05b72fc26e7fcb0386b44e018683797a93ad57e97ce9d653b031007d77b252bd4b74f36b191d39911ac0a5a0d9dc2707e1e12f1791348923c90b6e03e999ffc3a2ff845afab144afc992997ea43dbaafd6cc3b8e59fad365702156a718c06479ed824cda289c731dadc9b59ebc73e37e7e2319637fb41a28fb29d688e3b4379bbfd4d689f04222740924fef4b4354cb8877b716f2fad5caeb89966410b74f530d65e74e813f35158bbfdf72fb23feadf1cc0583f072305494545ee1c6e6ef8d4343c5f4b8780af2f103352f4a8c773f3e540d4de53942bd387abd605f73729846ca82740ae4fd0da00f78232584b32fdb8c821dd86cf934bfd87b2a7624fedccba0209583de0cbb7d4d78a3bbfc359924e575827b739fd25bf92cf2d1da01dedf9384eb0fa39c8391c49721a2831b2a890db124ca89dd8cf650550a42a600d2c59b6bb60bbbdff2c2dd0bb6d4ea26060cef7c3e37b36cbac92701e2b71de44626fc74d2373e9139b53bb2d4e4b3d6988fa58f742c62a2bad8f772298d7bbec450eaa87f78ab19dde0d8624e65fe54a79c14201770facde55c354c6df2b85743ca081e44606310e5d283a9c3a0267e11e86ed780dfa196ec96357cb28b5a5be61c0c394fcfc0bc3ad5e4fc66ed03b0cab72eea04ef9cb968611b664dab456a692db5eba7e93d91eb461c5f60e22b20bb391148a8615aa1a0e651cbd77649f31e3e870320bace35e7a44eacb7a7dc30400810ffa638acc5736b26c862e0cddc3aaab34fa927b4603f0a5b29de31587478ace0e088f70b8811c081b0ce151b235db977dcc55b846a34559cb000ce8f94ff1f56501349b25591cffb2e244b8e79c98e383a9b00f4729bbc519f1fd26996393f59991a4e443f6e4960fd0f9b8a1321f0f202a05664903e60c853277225db84f052e899d2a589b79a87f45ead192250cc00e17598da4b046e8a70decb3a670ba8087ac597bcc6f7af2265c83f849c5a6591d607681e60ed030689ecd24e23b400816648835a5c6681f3dd23a6a7b637dd444ab56215d7f8277a0a43a2042bfa847f9de0715e42de789778f661bb7e689a492a9c5bf635c89d60e1ee3560d0e538f9b5c0823efc5967e018fc8ba3691a8443a7771592b2ebff1a88dabe6bf16e71223563d25aabd3558c3b2099458404b89abae7e78c4889cce75668298cab3e931451adf9308aebdb60f7b3617acc959f1a2738973af3cfb696fff4d8b2702ab891540a63ed12276d8c4abf66348c09640482eadd097bed5ab658b98fd0e52150f602843d3eaeb6ab4744dbbb351d31952e57d2de17555eaff9cc44d724a797d7ec5630119f7dc3c377cb5190270a85c4fb639371219adf2654f73c84e5ae23d5ba7cde72504f14132d7e10f6acd419452cae7811ec25335aefa5fe91c45082938ce2e4ffc0cab7bd8392beb9ae812e98399d75b87c0a1b713ff9a0a9b052620005c35da4d90abb1c2e5002751ffcd1ebfb9612c6cee4242b160ad8ccbc6388552c1b3e6a7bc66d929bf840706b49c64fbf67af555b1d99f6892b353d608369b80186c290ec86f8a71d05073cc315896db20fb4fa94cffbf35a7688909bca72d608f95631b8e08e12a27d947cdd7e3d529514692700291681750cb6044c5841e31f1c6b8c08713332c0334b95e6c96bc17377be6fcc7bb0765ee62858b11a45a2a982f6cd619eacc1775156632a85297ce73db4d387b21c0ecdb30780500235973584d532e89343db850a1f46505acc1cfa69b77b7c5ad8ef4f8fc601ce5a21539e61f79e8b5cc1ba26921b4016cb31051c83ced5865c99d1526424e7381a69f58743f554a21adacb87327a591ebfd4c08418cedc550f353d52611cc37dd884884932c0a004ee69610a24b0afdf005cb34bb178af59062d1575bbbc5f98607b2fcc93f24f5067934b39ece47d7df04e4c8548f52e668ee9e53e3a5cbd3f0e7166ce9a635695b75e4fba27528305f6c6c0c94566d96c49495650187e333ecc8e2d02163c4399a9c74543adee8a6c652e023db0fa6c33ef9efa12afef158927e7a0e792039d41d53fe0416f3b92f833eca208fd833c953925bfd833df097b3904e3e4a07911ab62a3730a4f4873dd06dc55226e4ff8d69c51c66dd0a388bfd46f3ce3946a321d4eb74df12f07e642aee120a65fa5dd2a5b40851f586c63d97f7e8ec90f6794281b1cd0b786ba6698a35518e624ac311e3bff8907283b5403589c5bfc9bf1a3cc60b748a2cfbd650011620fb3698f7f424a9d2f7289e3ca8f90b07c92aaf70a5ad43a250802046d32641ebe3f2b8a208e6345b634bcbfc244a444ea761ba2879c7a0a97901c5342ceb64ac582749e6c4ae6c0e9ad6085625d2cb0df04d5ede9c998fc298ac869abc8e68eb82f610fd6ad038be5dfd08790b54716598d9f3530005512bc2a669bbf9228b6d3724b88bb78b8d139bbac950ab794f0ffcfcf8359485dc181b50388073d8dbef551717dd97e9b2d9be821f750864561d3dbddb7f2cdf04aba5ebcd4bfd2b16b555a0d9c33a6282924ca0514e0023741f51ec7dd380aece120f0eb5630f73f8003069ead74d29e837a428379f4a330ac8ec9433745ef6456d97e0d2db4bf620ee2b04007be29f23530fc7db13c59e03bce81abc795f034d170c620d733baf7b8333d0c7c900df341badfeda0201b6b07b07fd73b9c056326547431c909a159e9815086ca52af7659ded0359cd9e820c18f2fa2b793daba1472eb34ca9122e4432147198236f28b8a9cdd65bf6b206207d4799b9e728e8a235e25826abaae2c0d139a4ff1058d6141d51bdc22052cdce6fd4214e03dda05a990706e257a8b4dce6c596205e957a9540d718bec5ac63840261369aef6e4690349f71ec7f456c7d2353eedf028ba215d059131eaf8e64ebe74bcdca876e844f5c85fe41d344bb8ef8c9217bb241f36bb2708da1eb2459a9602f96674d249c72a3ac63e81c10d83e0658f3671fb90993ea9c5e72c682f1023e370df9cd42bee040322c0588183441856fae45b773e37cdc3f8ef11e7e0f860771f073590090e694aa403d7ce9aafa79b76367a52a61ca09ea5808db07be84b03ec02b591787aaa1e7dc97cab4ad118b5d7a0abdcab246edd29ffe6c1788492f9b0b01fc39ce9e17dfcf80f90771d1eb752580fe6e86ba1d54e9d085a58acad996a1df63a46a21f918ad22da33ee26cf8f541b147cfd048f85bb6f17fc1b46627b6e17f889c12b3df07b3a7fa749b5d1b17639dec86733e361636e007da7d93ac2d122ebbfae32af3d3977e3e125fe5544fd93d09538fcd57cfcf6ff96eb91aea9e68fed6fb99926c283c712c9cab1994cb85c4312e232bcc79fc36ca204756c47980726c70cd6f6b8e8edc7dc5aacf7f5d8be53fba264f0835ceee1c947fcba437ead361c92431a607bf6e6b858cd6fd6dc1354e1e2e5822a42e144737c241a533b1263db60e1339bc4f4235fc461f7e4cf68a0b0c79893cc60f65b33fa4de8d82cd9c3942af2525f6bebbb551f3bbae2fa80df95c9273eb38c8aeed696014976ac67b62e5f8728bf00537089b50a97147b8df2a5a49216ec272541ba1dd81769370a239d8ffd4263a19b8539539c74c95ad89853d06d17d66f5336c51e57d0a55c58db841ea69ff6a08da5dc08f59dd0c16a2c441178639871c086b47935c167fceca874a613a2d5730dc1758f9207918e374492408a138b1b11dccd152f185402372dcc4625a166892f49b2b77dfa432377c60a15f1eb002b0907d0eda1e32ffee0a6d6ab9cb0fc10f080fa8f0d90b9846793118686bd4005ec57511c558348dd0a1555e072b1faad39daff1ce98d0d057e5d88345ea4038b5c645a9110f566b6040856defb9d8b1960d493e4a0cb05fc841879ff0e16b1b77bed2a974d8eb0f841e12babe0eecc0015b8016dfa54036a4bfb92aa05f5a032cadacf7f20cf0bfade10362ff046fe4a3df92e60d3001c7ffddf13f4a2893dd3a580cc45404280d5b64f142d29cc3f6b9c46a6e52f3ce41dc3bc119586ab1d53787d2e7327cb437b344e13459c3fc2e347c6fda29d2a2aee7976b20e92010d056732e3cc12dcab90e8061ad533971e13d3ff5b3e4eba50080f2c9ab4bbc6eba25f8fbfe97603e43ed40e3fb003dfd156425393daef7b7ace7f7c101c3f44b492932982e2a04d23ef41b250c44f5e9d9587c1fac5fc0fcd0e84bdac655a31246a9043e74b838410301e8e91b27c35e2679f0eb4048404d398273ef5172b2454efdfea3cfac164f0db28c9976d405a02bd96c8724da2a691f1b150f39077f80052f997e88d8c9881cc584ad1f906be3a3b89468f2ea6ade38e2cbf48592c8e939a455130d5c28309b1950405948130ca23a6f20c84b09be02f0bb020cdbfbc81aa849b2d239fd68f556b13543772742d33fbbbbb9a6ec4e2f21f682013fe7260ef0885e8b45ceeddaaade445077e0b770eed9594f82d86daf41b4c607bde26151bb576eca679723cc407e6882f1df5fa24c7132f240fd6305b268c4660c167f8a032585c027b71878b9143230be66c38f5fbc211f59d1cff46c86ed206202c63ec6bc559237bea27bcb3eb1bff1e8479adc0a342f34bed77ad03715a396284e5d9ea1c05bfc1e1684a936f6bfc54abf64ac861f1cdf5c9c24babfe7b7c04f7db4057931fc5bf61d7927941bdaddd1986873ae2db8edf46ce5e34a94790d53a7019a1749b5b481e8f5232e340aaf504f2bce43ca5a213bf5590f6682bc4c7f29d930c3cea1fb5aba120674581598b978b24dffdced867a16255dcb7b75a1075295a9b5ebe00e7993180e752d79eee9bdb093b7b06543ff53ae9285ca74937630a5ac709cdeee0787560a48c07badc01d0c25dd15deb120ea238c79fe0424962d3ed72862790ac271397fc236f835a4e684f568b5f5637b5ea2af9885332c208af856ef5bdcf195486b279cc2e88a24a048cd04356ee02002306b27da627059316d591dabda867025ca136a38cb721209279f8ce1d6d4f32837d8febb026cb12d9d893789c36a7cdac4e23d69ce47db39946fab44fb880630953b00cdc5568c4da65f62fc6da72b3412232b693be6ccec4bf8f5fe2798560d70518c0e918fcc42ccb180261d408c3691a40b47c4a827258087b8ae9bb599150803ef9955a4a958321ae1bab065ccb5d2dd0eac60f393ef238614dfa2fed077e6e821561728468ceee6c8807ae73a377cfc10aaa3cf836705d878d4ebdd48116519917670f5467b71088951bf55467efda45326aa94e26d72d597bbe12ab0f1690f03833b5a542349df884fb0f3345e5c275b71460408b596e942064fdd23dc7d09b39063c0e78d19e1c5a446b298c80b66d31f20564c126515a49ab1448b32e4b6af3bb56cbf9cb8a9efea8fbebbdc7e06d9bb091c67e2804db1efa616feb914f33828599a14797a446b32f46862b4d8dd6e721c3ea74fa17bb7a442507f6157bc08347a38afd44fd74d6124cc7f97dc16603b66bc1bfad2112ca7ed02d8ff7b0ed694fb209626a45bf92117432e3d1beef44fe87edb26644191fcdbdd6cc62ed2bc8dc4273709ae6a5ed4be37c4e5f0814b65330a8f3077047960cdd2ae48091b05d6fa95e8d98d646664e27cc1b5da4d401a9d0650f2f680d398325ec8e823e30c59e63aa9954399efd61032f8622ada9159ce3a2be970b61ef5afc10e5fe05405fae33c1cc940556de76df8908bff517af418b0c9855a93113f9daff60f3c8bec490520dec06190d2bce910fbda588b4a6937354f5901327b4a88a32ef428c4c0aecbd19bff897eec1e74ee4da97b0b5881fa44fd6ceed511457e83449cc4d3e2152c6f5210f7e90dfc72b3bb1f2929d85571ab362722064e8ad24444e8f1ad031687f32ab9f32ec6a16dd5a4d26db26db8354f28da326c9e29a63dc2ba72ff1d5c173dfb894bc26652462f8c90416d4626d76d1404956af6212eedab7a2cda67adfe0c07b6e1b867addb8a6963599f1f2932750ee5e6d1f9d400983faffd53f6562770f28abc1053f092842463541d9b31838476a9e5ec84e00d864047aba28188065464de8b97cc5c4ecf3805529ac6a7a80fc9370ab90250134fb0d85d5f47ae837aff520c0cd18fab2467a16af14d8bc6f3ac3f942d8b4628802dbd5a37f90b6bee3074ce2207590b304140e0817ed8370400059bc5212facc621af2bc59c4f6a205e58a3c359ae8e5e125cee494f1fbe8ee9b18a5dd0966955ab6cf9dcd4f2adc5af65417dc99463e70d1a5e6f7993b49b33c1cc384ca4cd670ac592e186b2aaa3b2acc684294a0a20ac80e9c6fea3a16f3eb2c566e0030560e2520c235ca2ea1f4add23840ed7536d56ba0fc7c89677152f52d92163207ccf35f093b0156bfed7f8c63a72d32eb82328043a1d8d09e8593bae2f2974bf9741abb10383de534aa8123a8f77c9be5af67c4a50ed52badd0a7a6c7309b1cc09693d565b8ab3a341ed464d935b0712527cb6ec71576c3d4fc0d3e92391362a9a640fabf2d6246ec3b6107366238fe72f654a8026dcd2e5c7d99437b914fbda39a7fa45bef2f55b8f9d0b35ad2aa61ff66e93b0d1af52b445509f477c98e980bce8e6f24fd016d4542de8f1a6096b2323a802710ebc590f2e1ebbf9074fe909052231203ff6bd856d94315548d1c89b48c98a90e9a452ad7677ffc7f1953297096b481d84f1e3d3c6de38f906efa21d899cb6e3ffc71c5b80ccfe2f01d60a16755c70dcc6ac1a07332a6a79c2e7fa9f46f2032662ab3fcc76ffe791d976b11425896eed4b4e52adf69d54cc7722bf5b042ed0084cc941225836f74e437f191368c4c243fa23a146803b0b10e999e6154b61d70cd7201604cca55eb131fd7aebbd049d676e7719e08b307ca55770c90802307dbeb5a56c0b8a2cafeed9b729209c7dae6031da29d4c5ba47900a9836153b02b6fadcfeb2afcabd6a34f927cf20c1b83f981da7870073b9b66c80af165ec9d4e4ea3416d82bf40c5c5824ed135f2f73826b396284b49ea9ca43446c8ae6007a1a60fb2ef94b9fe459b541493661eed56cff20edc9ba60c8461b5fcd3f8f7d426c3d8cbccb6bba4f13f5e1c24c4925c2861e76b94acc3f53b7aeb2604e1ea5d8dfe77fe63065ba8aba7344b3240f06e25ba8ed6c34ff06891aa39618cfa1d0ff045fd29436aef9127aee5141e405a98d5b0e0766594391218caf2c75c01b866212f788d3ad0c90fe3fb61ac064d339a259480bc51eeb38040b7746d159a0494de6f8176f950ca746056a6ca0457ce4ad9206075dbcbc3ec0598a3ce99a90969ef9d1cc13c9c8ed71f705bc6c9c537baf96bdc4bd0650a3172bc6ebd95662e54586022ace5c9559bd48d920400e7decb961366e0d29f6f518ff054b99281f4a902b93099de1c81d54abc7c7d708b03b3191e02809e115fd0a2ebf866ee5f5cad6b30feeb729b8caf2918ad983f0e12fefe6f88ed8747f00e8944335cc5e8a7499c54dd7ad1fd785a43cdec9760fb9b6ad2ab3baaba3adc54aeb7fd5232ca09279119a91dfdc1be6168cce4b6a073b8b0ed9bfc5ac0ab2864ee19bad0b53a6c2da9e5580b88c9c4c1dce452804895d26e60efecbdb8c7dff686b56b0e8cbe5567c84c3f4d9841df0e93b412419ff94f9b307f087ecd06428863fae54aac2bd2cc63ca8063bba1a5536e11820e3138e1417b176807a5dfed4e93076f3ac3557493642a9d875d2d8b275234d5141ebc04849331bfb0a4a735221a86bd29cdc6672152a5c366062daa71627afbea7c8e4add090fa2d9ae845b09e7a6b8fcaa7978aed0aa5f7cb16c57dbb441869f43db87768571ec47fa39aaee63e5b0a9386b9acab7ef7b98ac6d29a4617071fe7151673e5a9508b42057968aee18170db9ad7458956b2b81472e9fa3752fff2d86cdaf3252448a4a698bba60ce3628d0bea4864c6b2e405925c9ba548147c7776fc2fc161475d468434d191b23fada4ecfad0382c05f6bae6327911a6982ee4e389822beeb2332c8c5c40e6e6c6bf586f2a8f648de94cfd881314ff4010621e7f4ad05617cb3f5a684fa62869b04373c274a754a030fdd8f12e327e8b421480bbdbc16531810311805c2e140e6646a36f8e7776c80d8f4d591750e7d95924dd52592784eea44359e7fc6b4618410607a783f6612476c8e1e81ee393f6cf5c914b8e45e8da7ac43ccdfb03e4ddd9ddfe5b8f163cf5e06ff7d92750bc768cbf2b3b091f2f58a64e0ed6a955d8d0d5f328e09487d0da7e43de4284638c43a229d9b11b82e6df6dd1e8b4b84f8b476586e56c94c6cbb44afe40c233dadc802bbeb8b189fd5d54b51f3e2de4c7dd9a3d34057bf9ad4505bfd339c514e4a647610d5843c51b4c46f379a2813454cc1d18b5787127860fc2bb513ee359db60fc54f7b5d7f03b3111501daa4a8c234c9595a734cc0d4e6578c070651ddae3d9b134ce32c6d78a8379c7880b0c027e782098ed8607a91264068dd4a7a3f57ce884350cd3d7e8a6e548dcc20b39923cd22f0faf369382ad1efb4963b05324cf28f7c60a386709c0f921ed79f6320c62b809a157d0c8aa6d708e17645da562dc74f6350e29b49d623605764fbda9b262f9f2763f980d17fa7ef29e74f1a93003bc8023d7a307a69b663a595d08d4c217d38f68479fd1fddd2ba95595e7b6d773c032021cea4de44f071458db87acce8fe30dcb8e4ace331d17511600053c483e66fb69012c319856bd317e432ba3c5d9c62e7cbc65afa3c36e4b7c84daf2c850ac37e85714ef42990f1fd8bdcdac6d3083503c442239479b4efbef048a9e10f15279aae5509c8c688d845573d3bda12ae25efdc3a03c56987cbc27fe59244f3003ef9f97d13f16807183d89d2e435a033bb3814c718d6f61ff8f14b79de9d136a6faeed3e074026ce5017616d98e091073f57a35ca7869f3f3cbeaed179d8f1d5233446e0bc2dd50fcaf187d514dd3c6383beb455b5eba722fcc8c7c4ced3335221de0491981e8c5a09a98fe7e434e1a417ba0149ed1f7c0888b7a85c3d1fe9c8662c97e53c17ae53ae6758688a6fd824d99a1a967c7ae5027b47b1df0f5979927cc5a4cf336b8f2a8140e246e78b75be5725e7f92e86e6568fbaa786eae9cf70a6b7fcb437e8ea977df0a674d298667708ed845577fbe1896ec7cd07376f17ed137890f25cf7d4c139c19fb0bc80d3d2f7b214fa336d189d30b8199299405167a85340ab71624787b06ad0f5ae5a5d049f8f7c7f37ccc83e6ab88c1b96e22a53b9429f3068a6c0473b6249978340752d214e2238b34f9b5a79fb339cf0c10e98c7784dc4511cdbba424b3f1aebf70dcd9a09abaf4bdb78965e2fd1cb8eae49b378317b738b22967adfe20691bc925802806637bbbbf0ffc3fc0b324779c26eac136e386cbdd6d82de129e09708a4e92d82ef4ff7aad05f8f00be9fdc5f7857d6fbc24dfbdea20c1418659d58ddbe653311ae2106df2bbc40e75750cc73ed603a058cdb91912f010ca900fff7052afed27ec9778917d471a480fca0ae5fbbf2263acb45eb9e9a7f845807ca6bb063f6e12e7da1d837bbf888daa5f0658ff7541b1978d348fd54d2ceb226fd6ed0a23afe86b534c0878bc72a934471c4765bad3f435ce29a77a8698af92bda87d351aa44c1fd7b222937e8b2a765b0bbc18f2b213c0318c73997b8f78bd3b4b48f41307dc119b1b67a3cae8197ec0ce4c0c63a4a73b4d7af107f65fc31753623c8b9272231bdd7ae13bd3e0efa6f1216acd6b1712744ab0727ba51a1c8b92a56af58bed5cff8950bf321e88f6b3f5ce9543db04da1050d525a00950fe3d7a1656986cc4341e8643bee320f3ee954cef670c1063215db80e3aeafaaa7988e3152bb9f92e8bf2f178c41378f25ab375ca6e33c95cc0f71f9eea57bc5083331883969c2c6d31374db2665180f7859c7f67442d509d2e6b8e52afcb0e4a29453737ee22b2477e5e451873e8713aea243f18afc8d32f768b7748247c325bbc1c944e9a2399116865e97531b92005914193fcf1c4de2e01d2479024901a7e46783c9fe6cd2adb179f2940ae77af6a785c4f076a9820a002657426d3001501f3bfe94979e9bdd022225a89b96657f4083f0e0ecf66877b447ccb7da8554f93e3be50ffd69bc7f12f855e267e2b011f7df1d4187852952b7f77c3c0aaf0e32c95931abd66143bb6df8b09dad685954da65d50e176fb13cdd3e50e22d0d1cb93c26c73a7f9b188affa38fd965aba39853a1728f7bebe8f7c32157a82fe42fdde08e9f56427e07a2deff91f1fcf503c92c6c2231be2f71a211fc019b8bb28371170f49ee4859b23ef0429f64d7bc7885437745c2568e8e5602726fdb7b41d9f723fd741edff5632d8d8a4bfa6d2eb81856c7ddd14a39747c4a8acbeb2102e980eb054d1eabb0234c16db60e1a72841a8102783f20b945145f9621d5c9ba13ed5d9898c5d1cbd5e515167f1058d641e3dba4d6774255e78bbe5c62117acaca69d55603de2004f4bc4a683b823593eb8c21b8c17699c17981a2ea77823dd163ed9474e25c67e01a96f90d4041076f33dc13afb38c76438c746892e322999d6406aa951ae83b296f869c16be2f74dcdc7723e16499015e2521b82f102afddc41788090a377ab1a7d49d4d9e0a295618a81740472b6fae150e09c9aac02b63b85a648f4a9246f57bb92ab233c8433483bbbda495d0c3346666ea824bb6f386dc10e7a7702020bd9678de22825352699f2dd498d61d9a6e170f29c903f684dc0bc99ffce22a5fd88ecee06cf7cc1d8009a193a3d76a6563710ed73a18c6f020d4772b6c1b05be1040f38b7de5efdcfcada2c22b864201738e5fa2f978db5c4888c346ce04d4e723d7540a9e8149da21d3a6e3dd2b2cb04cf5f31fb1de25a2eee715790bbe6719dca8021037a198bd69301389c3ecf109f9595b7c243a8871829a08d58c71c9a77596cd84f4fc2edea64e5215aa317582228d6576c8023be4ca18f4fb002c48a6e4ac99e6a8bb80681c01859018f016c384e0b8d39c8c848ee024549afd6fdaa3e3da4d18e24c5bf2f1b435d37624b86f3958d1face1580713d2520349f094eb0c75cf157693ca9e6630e474b01c16490f15f5e3cf7adca67fa5ac850dae64bfdd25777cc6cb161537ab6c1a50904d84f28fea7728801586aa1a9403af9660ab32c11636fe2deca608c062a3fe5012222c8fa64881c8aea020fbda014abfa4fda9974e4afb31991f06b6a5d700fd12dbf91b8f54a409214dd841091891483e0c9d52267798c76f1fbf44d6cb689a08c5cd874d53d92ab4e4ad2953dfe6b367023649ac9082951b2fc019024d868c395b7124078e1dd4192d71fda45be327823d972b5e1c459a49501c1c5ef8a58341db7f2913b9f87a5e77d2921064abe1a43dfa85cba8644340d0d671e556a3cc59bc086f6ff59309ca4036e5e714a99be76f20853f06500ee3f9a34e66fddd9aa4c945a1cc2fd7fb0109a79a3ccac62dcff00b0b1c34c5a17a09597ade5d8ab7c84bec2ce7c55b50e7b93b4e70dd57a038ad53aee731ac0e30d935069a9f62c46cb93e221149c90f8f7ee66e2eb7ada5e562e743c10660e72a5accb82a22f6e7d96fdcf6c6dafe6b48ca71e236792c73500e7f8aae7dc99f0f8c29469cdc637d9acc083e41b2c5ee37e0bc5f3b96933708ea8f9c7e44942e89ab5fce12df7e7eda38520811570bb6695886f3ebc2cba7154a8b838f03479f73fbbb1f0a45063badb31c8b6ab1ae802de4e3d6d505ddde666429ba51ea49b21455deb18ef88d5db7bbe449009d925ca62665a27568c319915029d0b6b8d554befd7c2dbab528629fbaa4c20dcc33b21e0fe50fb99fe42a68db7f9c0516cfb0ee8de5576d0763b9dba2abf0535a43e7201799e694a19ab67f99b660970b690899efc1b99bf2b065b2604d2ad596d7c25ad1331caefd982838b2deb2c0ac543c3ab18971e43bd3883fd4f71ccad7da966fa433172c6fa7279e0f467613bb588135b3afd6a6c8a4bfd63bcb1beafe67125437cd698a79fb2186d13baca699f223b8e875d9551b22cf23d8cdc218fb0b6f87b17de81b4525da0aa3de91e70fcfb1e460fc193599d8da3984de7893702c0b6a763f745d6826f2bd3a5ab5f103836d23cf270b5f4d74003ff16bb4c31a99c31ffc0e84412223202e4562a22c91a691d8ac8f7cb8717b693d648aab0f8b97c29beabdd17f9b402764974ae2e52707ee6471f69fa3226da619352b63cc6ca348c4e93d9016429e829b78e7d4af739ffb9918b8418a74f35e6578bfda861f4d36f89899b5035e753c455a1b51abce0e37f98c142d2c8879c3ebcfa77ccb759f4c97c79bfed5ba989b0ad635b66346fd775e7e75e92a1ac5cf5c099ec43f618321c896fcbbd33a7e349c51cc876ff1078ae34e57aea91dd22c04b256d88e181ac5376cc537cd473c7cd6ca2c53c1eef75508e2f8a026cb04031af098eb940e6130c1237f7f514fdfaa3f2e8717aa3289fe48c57594db2fb672136e2fbc8a025ed641a175e42d4c1d18f15d42cdd02aa0724a41bc757f6d95afa3a843b86366459d105b7da0ca5b1a41041284880eb618d1cc377f490222d9b11ad3210c21ca9d5243dad2f8858cf30378c96b176710005d62962cc52784464902648cd10d777fa1744852bb039331fe4342030c6459d74d45d927bfe9a3dd56511079680fb3802929f64e1937030bc854da027cc21005af39ec6a2af34d7efb8d8bcf2752577eb35dc06edce4b3b2550b0cd78d4539804d82dd1578efe145c869656c81b682c7f540efca09562eae4f36cd5a8964ead85ebad75c98c996aa0da05875f54bdb12eccb43b830b93faddbfe8f9b7229da19054e2d2da8db5efbeb069ce9f5bdd533ecabb229840eba31a63a4908a23915bc653915788b72adf7851ef788f4046b26a95fed89987876557cc079adaaf12dc417bceabab545405d237bd0316a0d1fe813ed0850ae9da241baf014b090acf603bddac847b90060e90e8781794928d82009eee50e5f260c47235c7166be7f4dbbdc59dfcc81149aac903d8590900be2c08a8891ab20c03c6f86a16d290e4c0d50133f49b6ec16f86b47d65d9070cb8f72112ca0336d10470781af5d6bda16ee1fe3773924deecf4c065f8a2390054742cfbebef247225448c1884ba6e33a44d04bd8ebf177f76439ba6aae82d01243305311c24eed811413d6222bdf896924f8b186f330450d87e4f726f06612450d64a308a20deb08ee7e7ae6a5c8b88a0045aed82fbcbaf70c278d882540aa7f6822a462e52f5777f697282fbdfed02c68aac553a672d70b3c957bc7d64a74f02f14c199cfb3234e8492ba484b7b5696adc2a09ebc1a0b941995240f4d6dc16480468bc8ccc4ca287854116b33d1ac38824b469848188aa166999f0a9f60d162cd5dda2bac3a37c0c1b67cd5275022694f5ff940bef421df7cb5935d702ec90e6615c7a45f3f3e4149031f20a026ca30ecc7d28ed8baa41fa9bb0801c6b71ee3000538a514153909765b871d896f471e791d2be1d9c8f09b14b85caeee25875229dba3366fb6011482da7eb29fc4393af152f8365d08c5ebfb2cc505391ee4276fb370799c9ab87a4188e5e70b621d1e34e6f9170cc3c6436010cdd3e9d9d0bef018e09a49c994818e97766bf84d27d9213826239f7ea34ba60163ce1c8345f542fd2fc1acfb5db308524b46095164b601a3805b91d35c95559f1d69f6920b15a124fca31470becef2d7c6ebf21ff58cb48f36fdc7d6ef9f03712be75a845247619d3358cf9c49e348600853b15670303114bd5125ca8b35d3933d2c17b34914a617482b11b5cb0a7a26c1844d47cdecbfe9d1d69bf31be89ed4827a47bd2b37f35a539f5e905c721e5df143564f516bf70e583365ab5297d5a2701e1c1162f8ca172e8538d36b97c7ed055085034174e2b2622141148c1999c01c73ad97d51bb9c2e5a3564c325d197895bc6be642ca1eb830700bf06254ae5725cb9f2b65994ca898077650e8cf75c06bb861cf2dc5aafb9b8bf1778ea00503b5f5fd4d69dd93cdd8c9a9260cf441ce6932ff3a54a0b87bb496761710010968daa73736c64f25754eca012209f00617bd7e95e52ad78c3f96e5d2b5446fac696aae661440d11399b92afcda03e3b59c034437d0c321f0b0da5a51b1849fd21c1836f0723860b8d2bb893398f7eb1f6bc3a1c036f3fff6abd17f1238a0565415c82a72cf09b1e8e97f1ef2811a3a684563ce169c0e592327505e708345088c87c408e8e076de30e09cdf058e38c7b5facb70a60e2dbdb74e21ba85f2327e2f6fcabd844a375b661819b51256bc3317d6173297b64c92d767067965487548c0828f8cd0f6604d01d38057dc146b936b85b10f57d07e12d37073d0fb9511c40803f7be3ee47d806967aceb697474b6f210bf6b6cfcafe0e26f8dfd6c6a2d459ad93f2c15c9973561f0c1fae9eaedac619eda47b00434d16ac0c2c58ff59b32bcc3984d5890616520a107e1f7df927a72001ed73953829437b04b8588c2ddced1df3d9a9e58fecb3ff0a346b2ff81205d757963557e8d16b8fe96b6025e1d132944c223ce927a88e3d0430380ed074e5fedefa7cb98502f3fd28ad981c01f3b19810cea8ea561ab662856cf6724fdd0813d2003ed3ed7069c97d13a9547253fedddbcd9cf66623bab9ae5941225f6ce797223ce6d436417ddca0fc4a9f82cab2b9922293fda2a4f845a4506d2e89fd65441471c569835696a47101e9708003377c6db8563c67e0f89aa8a5f38495f69836f390dec8054052f04d2752383dc9825ecf5e6e4c8b3f57b0f3eb019e95ddb3ed424b79f91ddfeec62a08d596703aab8d2e1830e6c5617ce62657dfbff9f94a9803df1b9b8edc164a4bcff25f67fa8a8f40a75e67b186330c369e9aec99336cc6f769fe12d2d3f222b680e95b8cc02c002a3ec7fb126c498a4c316612d12fc0db50ba833dfa1cc3b629515e18f4231fb6357994d33f33ee9a899bb8a2f525f946ff47e854882561f8570334516aacddc22ab7a0ef454b748bfc32a6ae2541cf99cc2a0008871b6eeb0910f7daa6893269f94a6a9cb67ec68efd79b8d40629b9c850826177007255d05dd9e9bdcc99df340ed4779b805273806fce36cb207bb42727026cc04e9138b38fc6a8ee6e1578945ce0d7781af5474b47d78ac66f2da19265465be098503610e256d26f71fe2a6b3cc45b528f2a095a897895de1201693b085a704a5c6cbde3daab72791a1a5ae2d4d43361de33e4cc37f7474f02b915ba71443e31c739eb7d1af0b355632b396f39dc18f8f2d5765264ab033da2bb5fddb9900f8a94df645bbf7ee97e621df87b41a3eb1ddc7fb5d6ad6f985995adb6e934b9fb0d2b8c87346c6ab2dc8d5418b088ecea5d94d2582dd249061c924fd86095e7a653538dd581e58dddf8560bb8d932cdacb40ea78f7a7acb995307be66da996811a071d5d3fcfe8bf44b72235ddcc63cb718b48691e395f25e435e453b871d6d659eedd1051321fc7e580925673e91e5ec5527ce0f625d80c5d4b962122e769c3098291cc89211fb25f13b30bd6813561360eee86ddf38f88db202e4399210bc8105df83efbdfb17e063d50fc4ef7b4fbd384e3573e0aacc636160dcfa2f48262674b1d568fbc7fb84a6c838f74b554310fd57a1a4edbe33089d763b7e685eac61e703f3358b156922e74f56e31565b5d099bb843a01855819f7159ce1af5dce3c60f6b57ed7ee1c0ff70aa58140ee16008f8253ca32ba45e4aa2e1c73c32a13241be2e3e66f9649df7949223afb00e4d20201c3322c000592b05c82158d795b8f42b61ea9987d82aae7c203265f1a38f9c4f8fa60a4c71da0dbfa69e59d2ba50d05fcf3251621c2ad139186a9fb2e5a67031430900385b6b66744e701d1f52fbe6041684f8cd9c441f446a0a366734deec582f2ecd07f998a6d04b3056a807b017720402b9dac4f12622878cddd1eb86da5a04d949bc5d7efdcc49bc19b8d4a27365bc7ab102e236bc926191f1a902dc48f77686521b8f5ee1048bea474e1b035979f90e202730c11a9559767b0ef29bb77f36d16c94bc5460a5abe27bbce6a25740f6dd6ff667f56e4b9347c1168e5251e7117e05d538b6ff86333cee6fbf3e2564f85b87877e58a1a2c883f85d9c9c23ea114166c03265eec001069d60f32ff93f6cf759fddf6c58888ed9ee94dd97505e6270ca14cbb37ddad650cc606a6b707cbbe184ea5808f26cac7496176cd3e9fafabc5a0bcc41efc41624ea679dc2feeb08b1c4b1a02cba81e6c5fb7e5efd3359730a0ca0bf75f015f75b8fc9e9b78aef8d51035347472ca9f6027ed794ff11b911213c7e3dfa74bc46e83fd57c73278bca720b6fe4fa431282cc6d96eb6dc1291f837981a5edf59dfc416dd1a762438a247179e6c4df1d9c24649a7fb6a1d7634ab5a2c99745f5c061f81e71f991ea9d6d70c2019a5e6a01aa6984611a453e6164b4e86837b346fa0ad5499ececfefa3ff80c4fb9b25dfd52084e1711c687a687ec1ea60657d5b73aa88f821f282b272b5312f6fda719f8ae24262a1b1d53c3851fb28595fcb2b3e05ccf8aee098cba64d9ab9590e7ddb5403e8dfc0957b2dd5eae014a8ca18e8ccb60d126f8a74b08ec76306082173172eb9ba68a166ec1ab99046675567d8d559d707971c4176ad8d4949a3167b845fbf3521524de41e9b4a5e6ee69aae1fb1e9b1acb26d3c1770970bca88edca9a180e71ee239801a9d5e0379ecc4d53da91f710d722e483ee19193bb844c6b585d5c9856ada988ddf244671b4f5bdb26260a8bdf27a69f06e5021cf02170cce1e791c02e6a6e5a855f866f2ac103951acdb10716f65a99045083761840eba54f36580b8d091c220688e3b82b2d55417dc361095a0a6a238da8341d2d30f372b5f862c0a041da1b3888b876cb8b87a7a32ededae8310e32c135ca48e5701c5741befb88901ccef62b00f1599453f4b52b9cb3b4e22248edf18be941c46c55123f51f1cb19ed3bdb892a9d97b7c426ecfca0c0037f626bd868c91d43c940191c1a47e222bcd994624a8535ec757105e18e94b97f2abca5bbffab06fa9aca666c9739a564ea5ee057715efca29941f4760d53a5347c62b86884c1896bc74c6c6913ce79beba0325d10e5a554a146d5d3b437467b73929828c604f6e72928772b95b80600530e4a74e73d0ef2a6461a19cde0d3e72c4b0281d9f9e2ddc5017662dc6259f2a5569b404a58979281e7567bd127267c933bebac575b266dbac4af7aaa4ec87cdaf6f79ca3c0830dfaf2f8f1ea5c7c7368b04ae9998720efa1f57f6e762f821fff469474ec6db904c830c24eb15abe909d7be38c8810c533bd9aabc7ef4834571e9f51e5553d5f446752d37e27f1d85ef67454108cbc2a6bbaab84a3e4a072232c46fbbb74eb9baa5162f88375f3fa607a606df7a0ef38be8cd6bbffede1353c8d0250f48cc9009a747cd106721bda8987a9696651dffbc835b9163dc47a118a1cd1d6ef748e95403bb7e6a24c3cfd9e549c651898f11bacb48838e19a03ab1a2a121e7896a96eb3cfce8d21b90939cafcc6496c0c8a7824f268c1a293947a0d519e733a34285cc5373f413bbb7d356feabd044a943f59de7365b3cfd7b3d088e1db5208be20cdc06e304f06eac9a5131c05fa3b1094c09aee0edf35110f70b93fced9bfc5b76ee237c48cd4ea55256b4c862d2d9bcc39db2a05e95d54b115e59e8ecb1b77cfec29dc81ef3d4a04c30c0f1bc65be1c90fb6ba06614fe68916493355837882c0b74b44e5592b0ab3422ae8015a29e1e3e9d7c3d2da607520b5d51075081f0e0beb4d42c6bef9fbb1897afc5ea6c8fee63c8ab68959e91b123921774021210c2dec4734abf66c6c2e04ce2547b2a697fa457313490c10d5074109a46bb3f9fc66c2b51aeb8a8dabe643673b4398c1d079b8903de1e2e759e1df0a88caa22e90746d64057b7aa8d43432de32e24175178d0fb8dce3c0ae85acad08be2d68ee879de008f87a050714b55058afb2ced8a4a6a7b0d1f651984f261c2f79508717cbb893186b8f1037ffbc73889c55043aa4cc714738f43b5759f9ec50a7f749197412e584311f32e4b8b1954eb54675ea1da86d5c88b674d334736197ce30088af4ea7eb9160c0b943848150d0be0e31acf9b3d012085f5de8a795ad7a77682adbce97570a4e54ad517deea15129a35c40f45d645f791f76e7c83779182e8528eb05b9172ba6e74867b69eed183ba20ed8da1574891d9026f718c2719d44ee44b01214cb0ca11223d6c284f2a06f54d5787da8f13d75000ea5de28e34c97d046b64098fd99259d7e03604bc6e244be584cd5e866689b9aca9c901acb98d13fc3afb3b6ab1c9fc1ce4b662bf047255e909a601a4813daefae3cf21a3d8520b31e08251a85f33a450dfd893b22f41abb45182cdab12733f2047e82b68d7debf534cd10a4f7b5aeb8becc326f876a59ee069780add9d6228e9df69c86830f3a68701ab831383a1a5a247a68295f1b084cbbc5d6599f7a0f792dafdb30548687e135c17f94b79b43c1b1c54434589e573e9edf75747f2ce9036f539bed5dc21941f621e44bf4df677af13a87119027a28a0bc8ae108730fefef96d1f5dd93d1e980d8605f7ae85bf95a793aba3ac30325b3bb59fc39ef364a2ae61c86e184957f2d3cd9a24183334ffdde10426158a1c33b1bbeb58d3d222b85f399f8020232805c874f2c3bae2346c2b39df61c21d25402d88ddc20e9bbd5e1147eab189bcbae2e69624e39a7bef8cbc5741f57cbc3e4d1ac6c0fa9fe7e64d43e0a4ccec895a1491038ff4881f878064633abe5fd1248010f2cf65fec2d4d25fafda402542a7a705ed15a6b5fcdb7d4b134c681ae0b0af87c403d65af91ceb9e69bcf4a8b56af9c411389d62b875ddb4fdead783f4c3c2bc27337b338f936be56b832631bf79497e2dd4e9c8fc813d692437e37cdb84c706dbecdc65a399c471e7e6c005f600264f07b654015ef13bfc9c1bef905a0acb2722660cb25c234967a0a62cd2c4e890342847a0926c600760c53c632ed0285dc5040a55f3384e9d15fd1416312fbbd645470183ad234dbfb4b305e23eec3418fba6344b86dfccd02f6252c8417cf956c9480d3166b5fb6b8541dc9b1bc7e5f2da63d3a780fe0e9f90b426dbfe7fd56905b787b7443f22b05393e19e475824e1ec484b34251af921037fe8a36012e75a908d2c86789ed46871f07bee879df01deb95a71ed99fea24354333b64d0b4244330841ef8bdb163f5e5fb69ce9ee65f798504bf98ea49474cae6b8ac410c0e17a1d0dc905fc6a9eb425df6a0413f6ebeb8a6ec4f6a4fb30ed19b40cfdc13fb8c85d2bc7e499c3c528ae6c00ab2bb8a83ed143f7c17ae419809a06b7c7e550d5c7585d57220b3a3bf58ef2c225f870e55fd7c0499091a972ad93e270e3403961210f9e809dca3f080ffb46db1060eda156167ed5dddd18efd3a13569dd4ba14d6929ae1b784bab171f7f0780decb0390d98f864ba86e8e219cfb03588825f03c914d721a186e8184abd51d0ee38910a27b30b3c6fe0007333f31b4fc87eeb412bb94ef33caca3260a9d279a4e91cbdb95a8988fa90b36f6c58477b228e52d140a8955b3188f266cae6a98a988dea1bcac3fdbc0993574036ad08287fa9bfa55693412b28c4d40770a0cc9da935192232420512c0dc7bd4e2dbcf01da10eb8d4b467ca5b6b8f52d12d5254d4ef87130aa5484008c2412756c92d61e3058a612fdba96374aa92e7f21b8c8beb0653ad946d0cbfae2a0a44c603e55cdba5e92f7cb8bee7660f6f619e70490c488bc759b8cb20b774f0d28dd0f653d21551a011f2109c680fa661db90028f382cf4d4bc2b3712c85ed24038857297773d04849aec1cf81658e649a8b1b2b1dcfee0abd340a064d4a55c6b60707416aa5929541c45e1adf7663249b7462b9f74151c9323627e21b8dbc2f88f0c4f828582f0e7d4a9b4d16172f8d53c8f6ea7eeb3584ae301d8d3a00bacbefca905b3d167775ec410d8a993db0c7d5a9028b024bf2f1de57d2fa423678da23b98b2317154116267e1944483754b7722ef9e43e227b5b39736b90936b4a9873a6c0a4f3dd0e61e7d8a6faeb3b5f08a500090b99debb25adba6329f1bbcc7dd56e2f6668ad0c9c66b18972688c64b457ec99eaa7a7e01cbf8bffbf641207d245a41f00217d0ede3c68ccc9fcdf07c5e39f532861ca001c366ecbc69cebd1d2ab7756285ec0b4f58dd64b2dce6e56c62d302f43a7e03b5aa71e20120b2343f6c4d452452677747b270fcb4becb9fabd0b647515e78dac54cb64d0b5f1dcabddcaed5f1fbe8af21c1bd1c743a7f03ee4094e2fdae92a9afa55433d5b9532373f7557c4757f6afb1a3961a22b698e250b722ea8045401d9b517a1fd63a5f030e43235c739fadb85faf703d5809172e8f109b92bdecb44b46df1400e1e37a17849d1d011fddf2f3071d071c7337098c6ef953fe3fae91d593bccd6c95d526a36b72a5faa71f1b236d562dfc3bc7eb495054b6ec064e28a66f229a42de2a47d4a8e862a989ae49d88cd29590970dd14507d17858f42ce9fc1c120235507d45db9d58233ca331c91eeca242694f5c5a705f14f2fada956ab13424934281e62774146c7f02931d600b4cfd58ed8cec81591f517a8330acfc012f820ca3d1d4140d034971e203a7eb23c12ad7031a3454d21120145511e5f0f74ef7a80366ef5fa88164deeed093b0851c636816840f3d62cf8ca1fd5c24b88897710fd46282f75225f2389cf002f88106667c21192f22ee85eda6414baadbd4d7f23ef8cadb7fa61c5e8a0c18b9744b19706eb42c1c56a2bc62f103e53e4c781347bf81ef24fa866dfb385d5ea9a104bba0d25b279e0d3b12061e33149d9e3c35db439a002b65144b5bec62e88e9560890f85a26371ecb1076f259b3acae3ba36f665478340e4dca2c78524b6e9332aa65d81572b6829ef03ae6274061cf6a85df0cd68f6e2407d0a9aa35b66d88b539cb60c1d629021e3955aca9a477c37924580dbe130208b1f4c97cb4602fb16cfe080226e211000a10959e4ef799a52ede8ab5e79893435734cd2b82ccbe698eb3cfb9ec1991c025e010cb225cf817dd891bf88be309596626d0e38518b6afe0a2bf6d69214c7c61497c76eae5d43a62dc42b33e9c41e48907574087e54d84ff10b3e1599b5dd4a79736e85927c5e1b3bd48725851e06cec6cc08a228dcbef07629996849e588af9371b32010ecc20b05c9b41729af74cc76f0dda6f0ad7096e908541e21b86a4c47af0029184cc497c3e4f28d20aa01dc1d869be21a7a3340ad25278228bae28873307c8be3d60369a1eea415dd9ec3d1b99b393727abb728950020f502f68eff2ae772795af6a936d5dc9680d46b873123fe91adaba9cc8274f265611c4844949c0adfa06680be841b66d297a69b89b925b5ff514988df5cff49fd59295a2bfe24db73c1617c9ed7d799082162e49e2f1dbe66a22e2d9ae9ca6fb96c64a1b5a83062420a097ceb8e4eec1bb083205f0d66b2d219d44b2be18905a314bc72f5d62bb25ebe6affc88bff06f427317c72ae80c1c043549838b3c4331ff3564cb9443e268c9af28ebd2c0c9854bdb83dcd3e4b7534322adc00d396050cf4645fea85200219d17f24556d08773fe3896fc3531eb882b0ace748cc45187a0e11d05f6e3a2a1d865c17244e74f2564b43c7e65f0b667cfabd15e0c91d753c9b9904718b3cf11d1dc597fef31a2cea9c8aae109bb6b9c7cdb7a2a747e6f62d5348a304f5de6aff0d7ff7c0e85068161f4d1167cc17d84f7ebade27c6bf85edf2202dcb1a19b39597c9a6ea2ffb32763860cdaa13521cd8a31ca93921bc59cc0cd817ce4821d9d0e22b9636bb4bda3d4eb9ffbecd479b769e7d4e29754d69d55df069d92bd18b2490f126c020204372acbbea2b2ee0be32fd1e4155d8867aa7deb0f6638baf011fa8fca62331b4c276822ef36c9d00bd50f088d2eda72ce19c521a0ad4fcb32be652d3e18e196f10988f328809734c9601686caf46330ead21070d54e0bb7f981a30759d93ae0363ccacef31e43e545140e3a22582c932cfe00581634bdc5a3bfc1bef79ed141803d52c52cbf4ef32b32a7094ebd8387d02f58f488b47f5e42b4c66c3031e35c431f8a2e2bcefa5e30b0af094f432b57bfe814afae807ab9eba75180a511c0c19174cf9a995f480ebe35a2b92df0d0335209b822a7351ab4de085ebb5068cb0c956ffc274437c11c967927f2767fdfe7c6b6cce3b893c1c1002c4fafafaf1f2295fdfa2fe0641ccd73b0d69456ebcdb46604bc9cfc854f0155c18af3b3c140126d57359d121e8de99dac3afa4e3558735defb8aeb6b9e27c5c02739f4fd61f28c8e30525f6c8431e9ef606a9926e29245fb9c13bab357aa75f3d4b58eb6f2743962f90a786aaf4cc2c1a1bfa209d390467969175d2d074a5dfd19c6a4cfe699739e48abc124cc0b54e71c6674d445b1852f76bf69a3bac9d553a88382e130ea569ba21d78e732bc25480baa6d6ca3a6cc7747e0de1cd6d4e674031a1909b7929201ced3bf9e82b8c06ba562b766c508d8d4b93b9f0494128b8fef589168f01496d2953a7127b1e0ff8dcb54855cf75d3e03cdeb4b73264fd0ce3e7de99ba5c7d28815dcb6e581bcbc3a8191d9a7ed05f24d993f4fedceea14d14011c23bb21bfedb0176f6c4e40e370b7a10d60044556938a649c1473485c98c21434b4f66c505836b96b506e35b223ccdd81b39551372742b6bae899a74c4aace583603879fc2059a179edc3d427b41acff5cc5c32fd500db6470010cb15edb9685893027cf988b15d8d6b1726ff8f2767286595792ce93e59a8868533a70b987796bc5fb7ecf38ac8cd45a33052338dd924c01eac2b832936a3fd01dbd98ccf9689ef7f4d0f5baf00968afef46badc2e4fd58d4c1c76f31c69c8ff9bcfbe33530abb4c4865e6b70488c3579be46a6506e060a76d269f63f471943e6f42d745953aac7e0bd6e91e40ca198c1581e756c0db53ff1caa32264e431035a73cca2ab9cfb406fcedd44dbb5b68ffe8c56b24be7c2b86bc8ff516a73c0b496a7312765de34021e6da9b657e3c030e363b0088730530210965e684f4bf07e0ba26847ac7a031638cf85e413980ab122cc227a6091c5a2038f9d56d029e1b63b753f615753960ab421bb53955f687cb6262f05b7d17a81b99e0e534da1da6e64fad515c2205ecbbf9903fe4a73216c111e669d338b7a37980283c38719a81bbfbdd9a72eba83951b37f19f6f3f4d9f1ead1ad4a2a4f2f2dabcce1bd94bf9d826486f7e8da4f52c90b70cb13317bb7d951a8b5e605ee971f3cfe2f555aacbab17374acf817922f31e5fd233733ce2deb808eca8d79106ee2de7ff97aa5ba873474c1d1fc8ef63bb442c675aaf361eae3da914f035c09059acdf2d398053b832ab06bb5cb6a6b6489ec8a66fd413306c803bdf75d2e51374a2d45cd6af2e890f7d55286a6d7062f07dd5b5b3c21355c188f2af9a28f47e7894421ec3c913382ed5f963405014d355e32bbf70215c0bfee143202cbc30655f4b9d554b3bdf1a5d3e145a2efb68e9022deb15003fec5b2ac2cb94375f933a27f46ab6a5987e1be9ad4cf5e631206e7ffcb68ce4d4c3d4ebe5345aa7fb804bf6c1dc24ebdcbbc0956264471f3aa6633834b186812c8577e774050d89f2979de2d642dbdb399a931844c6e7a1dfbd0dca65b91c8abbec2833f63029175eef1e984677f9d86a7f6aec0bcdf54a22f1b3f32522b66547a2dedd60486cea07fcd1091dfbc923ec751940e33ef485c57ebe2beb8f3b395edb8ea5cf3bb00200db16c825249f51c19a483a560572d841c162a15ad45e646cbcb94816fac901e78840eeac3caa7a9a67b2a160ee823970fcb0f7447152117819c00a7b7081567fb4421a84f6e3495b0e57b264c1979779345b50706990133e6d522a4abc153f5d39961305529075f1fa9f9df55a6887b44bd781215a6af5fcf37dabe3ab29be0940df335070bbfa02a28d17c5f4d190335bf0d7561d7e7df0f8dc45083f73cfee8556e5cab943b51ba12a6dfd291244a7386b999468d4fa7cb47fa7510bda9a6187b152a55d5ef7ef52f0e90d08ca3cf6b9dbe627d88912ccd619760f6ab3275c45f96561afa3e1b6f252c79d2b595780ac3169146c207d738c585acbb3f54f5feab76e1ea0cbc7109979599a6828b1e2780404053835a8e6cda1ebc25534af7dd2d9be90964c7a8f9cb840ad782436d163aea4bf19996aa07f7b1e42c5333ed48cbddfaa5bdc31d217b2bd10801b39e12650340290e34a7ee5e4ffb277b3d68869013232868eb8367deedba93b69132ca325d31e5963f38edbe7dbe2d01ab979fa1b7f5c1908f0ee8bcf319c95fa227d9bd3b9d4ae18e60b2797bdc3564e83541c0c6314ea5a32c87ac8ecd99e96ba68ba4713922b6ea33e04b9ac217620b36c47790319a1dcf7fcde0702bc1642ce8bdfc2370f838da55b283e039b3175b27e78532d1348c1f46295c59c430308ef2254c8d7d61f9d8e5775c0356fc02bfa9eedaaf3757c5a2173c8311175d64d4ae56e970ad58be222da64d022549ebf6f5e81bfa1f1ddaf91379a6697aab23859f5264342055a3da2e60e8919db21f3a5fc5b67384f01057819515783c67586cff8daf4d1d24ee93113f639f15f2dd61ee5d37cd7290c977fdbb919f15eae6a955e877eb11af093b599f8cbd4eec33c1075ec01d21095ebe73ffaea06ddc2ab316044e535f952de05d903af67a79d43d762b14f0a6fdaf13a9e45e3818925b41e7603c75a3b4a5a8aae2dc5a15fa857b3a243f6751ec0faa7e568bf7b9677320cca78b20ba1c892b4b5dcfe19e0abefd06a14e2f8e7ee0ecac2e65ac8ca1c121b14f79f76116b7352b17f7ad50e0f4bf596737a27ea621121b1ba1e6494c866bde25263fc4230168ba3e3384983585e1cdb6c21b83d5e9fc58e5a1496523892c2778198ad9035fd97587a0cc3e1394479187a1333525072a6c1893a4ab3cb92c72859450aea9acbd5854ceb35f50db9112adc79a794cb3cdca61b5c0bc4ff6c60241b81abe3f4f6137f4ea81caf56b6cfd3980716e5b3b807709b72464313d17b5ff6d7f90fc75bcfcce3309899d54a5bb27164fab20a6594adecfb830d01b6a172cb9ca823a6045d4c429374a34290c33f9fffd1a45ba81f167e503b6a830640758795982bee2e78b441aaa8c81c053d5c67d994ca629434c50d7f98c38f4040f5d0edac3fd102461cf7708714b3bd3fd93f677443ef5fa552b03398558694ddac20905de7b0649cd9991755297b68260250e189f6a7d09a9014701fded9fa3f8f92296fb22c96ff88f0b58afad8a4783fa01b7246be4db48f2da4e630a5051ca8b3565cf951307cf10871a0f4d42afaf1d2563bc3456ecffcda82504a5342a78bfec7aa26ad9b550854f90c479072c75cfd51a07a5c8c0482bb890b6ca29b30153e77f58ec20c856b882f8342ebf9ce4a36364aedd27a0ea13993cf2fe126ed8884ea91e48dd91bbd218c46cb975e8252fb608afb88497a09bd1581076e64ae0bf921410398a839e680e25398a59b769dac891b399e41794a52225e9bb57e2deecdf5964c5f09ce7a4e1340c16a460c423e4b15a16de566aed72d35840155dbe09d3400bcd625b1a0c322296ac3d2e6c0333cf2bbfd47c9d38bf0977e4552960cac2ae7c7579d8b34bbbe372a645e585c59772724b2e8896c7c318aebdc3d8b991c43cf343efeb00475cda4b53cef55fae98adcc6a49802ccaacc69b6469320a278996a5b60daf3e69f7cc811b94156577e5853ef046f63a2e3ddd9acda6057d54e7fbcd703fbae1d21d448da2ba80e177a8133326f88d6aac93c59833c3902ffa922ffee6cb5bb0be542f2318655eec8fea457850942c3183be307082cad6bc1dced83c0c754914b3f16203d84bc495275de1acdb7c4c5bd9e8b1caa6004f6af036721de2c5fe726cee4a955fabb8fc631bd59734fe866c8d8e8f6d342691b3091369f927e012174e998f5414ebb0550ef12268676538d443ceff6b732b95ad85a4737630c639b6bf54fc5efcacac9c0fcbfd7e65acb3ef890999cfdc709a4931e72950964bfd57c503743c1abb88571feecd01481a44e95e906d0e51be671456d88549fd45cf065ea8035238f18b91e0a5700d8df8a89fe17a8becc35cf329d2d750b3fec9bf74260ca7fc0dd90102fcda199bebae30a3a6041069084b54fb6454fd1bc589f70eee90b8671202d7377e5af04061c69661091eca14251927c4a07b618453fa2c7a7ad65989218d97c949ef1f81849510476a16314a5e0f3d1e6882f188a644834e00d24a7830df9e9dfbaacbfca761949e47f3d47ea8c883f73f400d534e77039eb6c79982f764a612d6aa540434bf87945684e7854ff147c0418732f77da1190ce9fc0c48ef1230cbba5281b3d68e9e22caf294f755ddaa97206bb957b5e38298fe2975f18cab82d4759b2643afba22c5bfba732f0bb4645ca9f87bdd05ff8a093fd5c7ebe33dfa556ce7676f685ab9bfee34b21a9a3e434d5ae5fe0626b02d6133ff5294eca1b8818cd715c5de1ac1f783c3a87d1305651abbb319ea4297b4bb8c6dfd259ba799fdef9ae86b8c4ceca0afef84e4d92dbb3a9e50d57132d9cda92707c4a7d57c00cdca2265c9137c3e6b8e4d80bfff74f3254327e6719d9c28b9094a5c5aca96f3df3d60ae8b70f79cfb5902c96bc5ff97a05ab86bf0b20704065809b1ddf5e116af0467770b220d77bc8d48989b30ff1705f83c917743ab6e8d9022d8a2e9b6c818007c41a891d9414373ff3dadf8ea73dbfa321858df8024b3c15972265f1d5e778b4925c0bcf25d2b208b49bf521fab1691b3506b0359c626f8424555ad8689b8ae191534c57e4c9fa830327417f7b482739b0750a8e58daae9124fa5d19ddf570693780303f8bcfe60f5bfc835693e300f3c67a979c2a2d88baa6f8082712399329bdff5b899e724094b5dedf4eeb9ee6984a525c0aa2d8f9247889ed138ff900dc2da3f57dbfa7941c4a614d7405aa8930d5d5c36743697e1cb67da195575fa5de1733e0359fa0aea9e57d9f1e3fc1ea9495519bfd10ea31aa9acb2bf7d123bad7870037441e450092091a4c27b1741c6fe9415a8a530e5017df5bf184eaac7ba2a9aeeb24987bdcff6e7bc6c880601f36078963940d1e074bf4620a55150a5a9f51c5e4e1b0c7daac9bcde2bb8db55e3dc2cd389306292ac9e4c3d070453f6b614e52ace2248f6fb0c20f83874b701e930dc517af17f4afdbf3b8185ce1f6271627632db0267aec69dd8d08e408bc41221403b067309bb34a64667c3aeb4f4408d30bc50667cd235454656f7e732328f04979b7405a00e912d0dc2bfb2bdae793b46f3bed65d66a2265bc7e293220e9d6633f2b70294333d961575de71bd748cd9708a2b2c01a5bda60fef4377fd9e2433d7dec8083ad4708f4ac1547bef6b0b681923bc7b72e1ddd471371e95927d21f2a09615ad1d86f7212354f1aa03a2845192c41e3e5e387cb260c88deebad1f7c1a94c378cb631ed4e07124f8f76e4475353fccbc299f6387505e704c21f68591e96a1db56eb5fcf0b05f07e864c68acc300b4aa166424db7968a3904ce571d43014baaf4fa9b85e32aa7a9356205c5c2beb9f6119b53b6e896e9d5c20701a71f738fc35177b5fabd819a70023b1474852a66a60692526e86f21338639cf44866d999baf6022d816bb990c0bd37087a79858e402cfababcc1c7450805b40d9ca6f205c2ad76d40976c8f8517b82dfde601ae0515c21dd2e0a4ed1a9063395ccaef89faee41b21ec19ee7ca8a016faf2de20c22d13de4769800571b6df5e856ba98d0ec932126dd44ca908e0cc0d4b2ca9f7c71f74bd9dffa901ff9233069c4eeb64a62ad41d42b8c2dddeeb046a97ca6b1441f387fea5cc6d865838d345f09829557e0b326c0dc684b2901267faa8f1bce5ec658e91c8c36d0f9aca001f1ae7fb2546c4d388cd1e54d2333214e2f22b0ed21f511d225e0937662d9cc4fc2ba19bea986d12cc7f0a11310d8da6d17475565e11ba7dcf72fff63dda4718fea4662f57a12ff16f0ad55fc69b7ef38a64ece5250f87f3200ffcac7f0160f2c7bebcfcf865ddd82ac012e86e9e8d27297984dd0c04a24e9c7b650ea7984089ec48ac703f1c378f71b1dd33346a2e1b63cd37c017cc07a921322a704e1cb27f040402c7acfd445d179c80956b6828a7b64565bb2a4a62da2a1a771e2b1c1bf8bf8efd8a34d0041fe1e79d8f48b253ed20f1f50f1e6cd112615dcfc8c476d4cf5d61137bc48353df84f2a785b3809c95013f6aa13dec67653dfac85dd91b895b48d7376c303bb5f8e12211883580dd8d25017b601d36dd9f2a36806c2353c9967df27edb02e0e7659b3f28a057166e8e998094d2d6636051a44f25a173bd818b67c2af1663c53f0484a58f004fcb9bfd3247d0fd3ed8bc5bbad566fc87d0ea51eb72247491cc9659b77a7f10ec43acba3609237fe5ec53c1058fbce9fb9b7b37edaa45366d8c3f3c93bc040db35ce51d02de8c59daa0bfe208ecde2c68ef103e63a917ca13077dcfcb0756b3600f39c41e88130e038679bab8acdc716ccfffcad045da36dcddff3702ce3a1250f72a15884707325817b23dfdc2b3b278dd4998b053b6cef9a551b817a38cc680de950e0993e6f3a2c8dda5a928a7d5d865571a10cb8e7b51f6f7e9c291b532a7e3a77c2131a20a1c0e00ccf572f8bea2a5f4e4ef00a0077820d8e9f07fcca169984b4e91af5f5028d9bf56d148f8872be919bc3bd860abd2ab05780bd1e0471cda510c6e86a77f48ec253ea6781210c52a9311c769dec341749bd2f67153aa339fca8a0b5ed0eb1a1acb3c5160b2709333a69e6513e9bff48322fc726edec755adb4a1d66fc027d90f0b8dc696ca084621ef40ca2c14f8ad5c9008c5ff755e02a988229b360f0f968c62b9ee234f8ca7adaffd5a32cf1f4abe8eac37df20ca1713b4570cbe9e0606b816161646b841e57236053fe5357244101b88688a2296115ab46623160fa8a658c8601afc0ec997febbee2f9f4d856429f7c6867ada3cf4af49668866384d21bfd2c8f38667cbb1e513aecf1c0f3f10210eae561a3a9702d919704519747cc907f9227604740693ab8e031e7402f85207b0ad1eee0df288bad058a87c2c546e0e6a8c70fe0869e58046819155cb70608726fcd1ac7d68276f266f7e5dda71295ae2546ee5bf3486b68fab9d0b0d17c87a4b108fa92cb9abefa75d1d59d5c315b95cb46c8856409a2eed8b22540b900ef6a2fb1dfab1404e1afd9540b3e030fd57f01ad2aea8eb3ed41262b0a51adcf28cf793602526a8a8dc0256927986359ea2a96053e51f7cef787c6703379e1caf767f7370b5392c38d5dcb46aa265e57f87c785105efa43dfa2c2b913ccb8cb313415e17a3e151447114fb89a9f9f44da73f7cd2095481bd4d214af781244cf8d609dfbec657ce3de513e5c8c71eb58ae2408b88c21e1e60b9677e9af87418329b9bfa58ac95086599e59e0089fe9f562a0897ce60d2a7c52781558d4793f6b9025df2e38bbfdc9e040ed2d2f0bd8e4eba061c831d7e94a89c85de37bec0bd9f386d7fd19c1dc1ab4ce7ac0959feac6d57a73ff60ea887b5075e982e9379726818ee6a938f7164e7e808bc5ed8c094522aea96f32f55cc352f9466b58efe4380fb45fdb7e5b3971906f231d844e8ac96a31322be9e5f2f9b09bad28405e87d4db1fc493351d288b76dfc809a6e96a964be53253da03e37dfcda1a144a3c6a80a91db002ce26237a155e78ae4ca0c2edc3d6d5fc97ef819bae5aa958c5236621efba52e069735b596fecace0ca065f57e71c40eb169c51427de3c6bfbf598efca17d944005cc73e6f4e3b0135cf8346c605fb90c974de8dccd0cfcc501ff8f80782ca5712bb37eaa3c1d1637b46506bacb2b7f3c3083d644bf6035b1e4159bc15cb5f22110956c793070c39ea3ab3ca057e2f7ee6d3ca0ad28c23eee3e7a86c1d99b51df90e2f5cc8bd24caf18ac0e569c202f33eb5465fe0ffec7247f5ab290a234e71e5c1a8ce0880104d98666739e6d12d013e2a207f3dedc85f4cd8c55cce0795019b6f14114fb39254137858dbb9535495b4c7fce698caca065945f55fcc8785f909278e2ff54cefe7c0d3d06d6f4cee28751f7d66f18de70f0c231709dd1ef6ea6883ef7d79a298962c73f42a052d79e927cff443b9bca4c64bb8190674d73d610eb8695de405adae151f6049919cad177e480207913fe1d50d74831e55861110348f60318651d45590b73737bdaec04c992bbe8203a10cffca952b16639fd7e2aab4a1a0b0f34bbfa6dab244eb56028b322f51490bf46f360a683893a67fc4c840a7e496bb6b79301bff3945e26a0121760524d118ab9f3efafd52e6c1b56a73a6d2b9f15c26292370b49d616312c6bfa78f0cf064eb0631180ff23ab83d145e287fcca55b5b1c988a627a1ff2ba34abb347b93c8d28ac7705b41b2de3b3dd323cb7793535893a7a5e5b1aa18c7f4fb025aa5547873a3b0fb4d75e452c9c2d09bb1a97c16474f12af6f31caedcda7ac93fcb337c86ac67e065d3b9d169d7a5eabe15f9a9e480413c5dde9b8056fd14807d5c36abda7f776be8f2f4edc1ccb64c111f54fcfef1064acd5db9597963612479852e1b5902ad7078220ae8e6feb229ec65006ff422b7bd9c54eb8e8104f092603fca5070099cae621dc6125eef63410f232c4581338c766a075390364f5ccff4d631113375251c24d92022649bf4707365390a221d7992b8eab39435fb7ac7c5bc90bef10741d02551d0f25474f5ca38f8843923889c2368f27da59bacf217207309b1d1538cf3a3aaf8baa4c41bda83b0ff30ef7303b1177c025419a12bee5452de441d0ff63a2c4d1b5968d083e58529d2a6a3e56e88ea72e840d34dde077618567b5f91f851bf94510f759d094045eb88cd922f071eda5590d412ed507a9a35aabda413662e11038ec20824fdb4e13fc4bb57df8e0cf6fa76286a5fa7f3a18de05c5a27fefc9f780089f2783daa91338e32159a669946386e28f0163d098d3531749fa9fdb8c9a6e7c3e14f52444c9395ff0accaa9225ca1bd388dd389ce9818f908ce14e5a037d0226e2ec36b6e9e2913c545b55eb0c658ef1a49616e7aba1fd1055d11bfca27fe032e860c1757c610cdcecc44fc6e948c7234dc0a3305df4a0173cd7184b824548cdc0203c9d87c3312706123fa9a37651a735273fcd5d60c90ded165934767e29e7cadf7b9361d935521d4b1a3de2e391cf0a5384db4772f3763049ce26ecaf6ac72744f2afb2e8af840a8ba79692c6d5609d31a166baab033784a434f0e42017655a0514705b5bc524f51a148983eead04d9df136a3c02600aa7dff450d15f728cf4f71101380ed867623b7303dd98796e0539d651c2360239e8355602982085f68d193956d919a90c7bbf7b2827ba2720dbe1f5a675727abda08d120b088ef758d15fe3824941b024fd8263a2ba885929c88c0f85fa24168a7efaa0681ea0e1418c524ca1a905c7dabd836bac73de50221da258e51529db1c889fb86697ec663926c4264b453ef7b769157129bb0df089690c0b8c6ad94baf75faa73b3b031621259dfa7453ba0d8bdad2a5e6c52647290795fcb83ef7846680d0ef598347168f71479eee186d250d482d72f5ac21bcd861eb9a26e0f3bf2f304b76865798b399d2da677c13d02fc981fbb6ebb06cdc6b14c4a57e16ec1e0a45622a19a9199f40fcba3582a47f4826deb8922966ebbcfde4ff371a580f00c0a7ac37b34e3043cc156eca3ccfbe99a31424d4e00469f44f0c088a8ede9ff7412f5894583e3bce8c47826ef80be180a84877e57470f61abdc365943e8b2a927a1816b2c1559b2bf3a16776ee879c6d588a3d016a52432a029dd926acee8c892cc2b08544febee8d6bbbc5432dfc8bd6b169502d7e63124b66fc76a86da11cbbc8854b1e892416f481106f298424455cd57e9a243872b7a15cfcf0a2fcb2861d39346b68139f21e2148f5c213922054e988ce9a83341fc0d00b534d54611273769792619f377644865ebf2477270ec1bc9845900f7123e32ccfde999b199d84a77e2a957a47d950ce39fd7d6e8f53e858445bd64afb139eb20a147c187427581d902c6a1b0be88f35cc0075582a15bc57cc88b4aa91abdef8dc29673f7872d52c9e69d33c985b5c2bf9aed1ac250efb10c4c02bcf21f6d59eea45d29f7137357534793b506b1bb3b34d1927ab6678cf4ffbe9615f1c0a93ec01803be50edb79fba199523ad023edfd7142366c4fbd060211aa218e75bea5f736fc6e6cd1f450281d0d6d606094b518d65ddd4544ea857139a1ef4a65547926eb95068e33a6874bb6469d50dc6b8b872a34b1ae0ca969bf52b201b39e586124124567ab2da9602b503cfbf5159ba04e4530b1aa131f6bd18badc972fec6b7fee49073de3ad51d5f92673f9eaf3085d72a09a16f13b5420af6bf09adcb0dfaee7b8c898e8e4d2c51d56722c518a11b088d88146383ece2f87aad28b7cacaeb3b72a7c7875b1ea2f2beec31e70dc5b9d92d6877b9dae4a7dcf217d7002984dab249f5462c49281072ec15a884f93df9f1ecb17503847156ca6789e33013ea9979956c90d5854196992ae393062aace7932e4456292d79fefe42263f5576eb150e8f82566e0f9d7dbac447136775d094a7d91c35689bef159294bd65007d66367cc075b54160d66293f673dcbfb8bab5c619a3e7ceab55969054311782c442a5c65e6f1e9e132bd98e0bf8ea8aba8586aaa9f69facfb97d4654644760ecc43319a51fbd9293d1cce1cddfdb9aa105d868d6cd70b7e5a2a31d9c7b54d50b113830dc3738b7905c1e285118f3a4b9f26273aa02c3aec9fcc3688fb94bb6a2f814d71a292e5131b0bce5231ec0acde99c2b0c4d22c8c07e4333d8eaaf92ca7ca7813a9103e00f54e3151d611958ec43e00f70dc997f56ad3a0b5f83d6a1bb52024b82ed949196f379d6137b29c3e30cc68aeed59a05b993a4e027012082ec36b0061bf5b36858547df7e3cda5e0f7e43e305f82d826f5c5a05fcee0cff9bec9aff7fa387d3aa89bc4c75331dc63dc56ba276c2844bb0a86f1dfd9d453a8e134fe7c7cebff8b5d27b63449078a44bbc153b022dce399aad36538607486dea946efaebdbce7b323795edfe6f243c5f130d4237617692c6da594468d09c08d3fefe3e02be86fc3ca28912e45a2be590d0e1bdb422273e00e61103039465974189ef6d15111ac6f887884853eea951d93f67214a473710f20c70778cdd0558a918767e49b9247f0cd0a5f633e599242a66e4130a8354756c3a6762e90447a7f19787c754b2db2a533806d43d5359fec6f5e9105a97ddf79a6bf2fa4391c97d6273586e29438d7296c2df0a1d64d490e9134677827a29a4b718fab61438b1155dc2dfb84f43f589e0aa31c488b1527a5c1666348ed75375833e87b78fa43994b3df0f6e8463973240aa712500a0799eae205906703c03ffb4d4cc21d07d010f4aa84033c0b71ac6a003dc464c00892c30a633836e08e7fd754a1d5db228e6919e7ef5d40eb7c0958464989d4c948d5d5736205a3e3157c59c0fa50e77d3a3fa1a26cd73c656b9b84c08e228abe5b3f6faa423c5f56edc867880b6222b4c32561284bb08361f353eb8d6c7987f6f01e4bfd869d9488890c3465353bcaa261e6802d8959e56c4f5bcfcd0379ef845543346feb507ec34bdce10f60a58d4125afc93a87f69349bb3c6e08806d267c05b48d29dc807f3cdb7a0fb82fc872330d7c2ead69dbe3dc19e32d4db146081a8d61a1eb5b895f318550d363511576a974c290d9d5126a8645e384061769646c14caada42b93200eb0d3b4b7b9c7e9780bf4d7190fcd502808bee2ef62fa5df2a5c0e7cf0afcbe42b448b9a7580a90e701682a66933abd3caccb258ff408ca741a6a661c1be89ff1e8adf66af47164da19e75df1385c103113902a579ae2686b0b93e8dfd65c3113279142d7248f588e0ca7126f9fd0660a7b5fcfc5dbdab217b68692522bac864f6fa0ddb446852a990a0cec7595672889478b231ccc38275da7546b25629ca54d3e5a5afeb667421715bbb81843f5e064c21547eb3aa52f71b8c1b31fa5fd61b48f19e7bb0ee6fa4f93669603ec2636660be874d7c5221e31ba2d12154e64d757d7495cb7f17ad3d139f84e525697cf3a485686210d235d2cd1baa9dd9281adf4ad6096676c465ecfdc7b7418ec2d0acc24b5f642db71a00a513cae1301b79893c3374827776dd8804207600248da08d8a7e735b91166a67f596babdb239712396db3fadfda3c043e881d76c4ecf50f59a3b0eddf9aaa90590704ed14699c722f7740daf738be7aa31665ee33672ce4118ef680ac989f47bffdd37acfd36f1f446566e8c697834206504dfec18d5763bdf7868c67510ac499b4f44fe400ea8da7486c3e25382c9f3e45ff976261e59a9dc583196c8e09a58f1c80df3be897aec7d4cea63d010a1568a8d1f196b5db8bed9227ac45f3d6ad30e5b7d4a055e10fb89c9be4936c085fc4c5f66fc5d4ad3679be178b3a1b2f93878a3af1918020aad3bdb64e9ee2a3a69046daccc6e3f9065cb649a0aa64ab8c00cf0fd2cf82a1ba18a7e4a82cc5271d331f91ae77084d994de17c0cad1424e30a1c027fc97d6f950358a1fed8505565e4232ef80a6c65557b29fb9b3af7a208b3dcdd27ff03064affca566ad788f2d6da60333d49e249c0255ebcdb3d02364d1cfa298ec1f7c885508ca5b6a10df13e70f7a97fbec0ea44ae0071f782cb4efacea449d3c834fd7dc61cd3871c26885f8df660225854178166872cd24d98cf68da0f70701b5a82c96dd70f135350ac7e83ade483649984ecaa80e41fc584c7e30a1791abf45bc47610dc1feb5e77559663ed16eff97524b67031e49f8d5cb0dbe763c2b172223d64ec57dddd963e734e77a2be1865161f4b7b32aa2ab30846822eef2fa11d3718576d381a186ec8d1b288a9c8ee00ef2f42920a6a8cfdf8411651581192c3a2cdcfb523b7e3a4937c5d3027d2f8283f8b21882603000f964d9bc34812d443c4ee040aa0c27a9f2b6a690c11e697225a92af6c4bded0f5782949b059cb398a5f7397dce422be71de3a5b944d043106c0f292253f18f4aa90d007e283c8b4a1ac86ff604a0a0e722aa22af7882aca0bc131006414a522ce70fedbb3265fdffddebc9adf8731bda94078b14693df8e56e993430fe30ba66df8ef845b0edcb5c9ead3d2f75a3bf2436abc5e5fb1380fea698d8ba732a9348267f6362a1f60eae666f0cd5d15fbed43a76435d6ed6ec99d93582231bd3b3eef3ff9f0de8ebb30f561cae094b72b4780c94be60905917f0de71414c82f80df964059a463d55cb110b53c845874a8d00a93277104438a1ed43bde9d595e958c9377666319e41290541fa1a10f36bf68ee0be09e7fe39269ae9689626223e63c607f1f50044699d4dc8e915f230d26cdc6123a4381843a8ef7712e5336c80fd94ef550fd1c7f19d6595a6ce3a2bfabe6df588c85ce2251cbf2e953d149f112f9d69343be25da932098933856ec51394e6452e04b16e9d398a75638247c464a396b1917e3885599841a0bf1df67d928f4b766fa558181dc990515a460e5b893d423bff249e299bf38d9f7440d60ea5e8f81ed2b8934187d75fbcdb67d67071ecc599e79f710826ccbaeed819339b827ab1c72da74e4f9b3c71f7c7573f90620010467295f2557dbc70846d747df359cec0b4803e7bdea2342a652ca4f92caadb21d31b84e0c2564e3f0cc989afef437ccd1aec8c816540cc91bc311e605b54ee5dc1f5729275a4bf0511484bed2a550269a2c52c4674970b4f8db807ef00cb220d8efc1164f86d677c549d63f9145c4a72e8d206cde1455b04a0962e4f5a2930c1e6a9c59ba40aba1761170fc0d8ed5d20cae8fd911cc34c2b0a6ea610df6ddbd10271a29d30c714ef8cf0d4a843d81fe23d1f364489b5914060b82c06d85c0053d66b00a56588a191255beeb018a5c4c6f4152ad8065b72fa5928d6e6bcac96cc60c356cd8529fcd13b26df3f515f00cdba44e508e985cf9836a946f3453d1bdcc4d043ad60b36a8e1f9bb8ab9546c244d030c4d3a1cda2efee073dbb35416a3040530cd9a072a4b7d942a1b6223094fdd9a2eecf9075bab06bd999b379bbf8ac961a994b0e496256d89fc496cc5b39345a3c420f2c3e0d6c9529e7f739029d2bf4ffc460d5fdd8b694b6736c045dcf0f70790d7d41b5283e2a251b38935ce3921748931d25dbb9a5b264d864074b525c6042887bedd7cd203108cf0022b340ce9bfe8ec78857b820c90daadf51a61e5420cfa6cdc3e173be26e3d50f757402dabbf6b1537986117f839419dfb7a54449103ba58721c0901b27ffbd90db3e29e4c3356d208bb0596c8adebe7f1bcd5c26ffb5a0c13e60d06f63e25c594d4d439893af9a80cf732c67f48241c7e94306c0bd90ad2dc0da1bda68bed7a46f632ad04fbe23592af5e29b84fdd684af6826aa91c8b815a45bca73e1539c82ee9418b731d40b4c19a8f14f8e3b0842ac109adf794e17cfe3d9157243bb4bd6602cf5f8ba9dcdda163cf3e8efdf7d9066fec868aea64453d0cb082c4df9c551111c5c4f27c0aab181ee260a423d8250b309319a076cbd8bf774a9287f8de50416ba0eb0cb7a2026b4f32400de4147661c21428ba6879b03d4a62d703a5af9dd92dbbbb8ffbd354a2dc84906b6b069facefd74dadf255c27ecd8c14bc2ed3fd0768ffb3aa852f17b3b6d2e90df7ed9d93b7b88f1ac11e5a64e1026d09991c70c1456deff2b6c9ce6f8ea01efd1911ef50aeefde2e18b537e8fe98b32ddead1a36f5402dffb7bff379388512e0dd173d557affe376b0f280cc31fd7d5cc31d1010f7f08433646a4c2116e6938f725c085397972f850e602b79cd342c48e94730a48b52fea0ff563cc7ada9f5a1c8abfeb1596ff9555a9b7a7abb14e70f4df6042a697772551e9bae0396ddd60808ec628eed71bf4dc8e199f0121fa30a272bbcf11d97b7d3bd2c062c2247632f2c8015a5b61b9677544e566806d6bbc642953065e28b493fdc1c67a8f59fa8b9661716205d8eab64bb7049e610a308e113327331714ca64c06afed4d124d463548f201bbb9ebb0fd81d1ceab97d05e489eeb6787e3c24931acdf867c127b1721fe8e8ab438d96bf0873eec183df1b2b555edc76e420f56cf021b66317fae388bb7b4e5afaad4f42cbb6be3876bb7aa819254341e7b62890ead00b73c5088a4ab438f309a0c666a799216d70d749bbbf6e75e3b3c237aa65081a923ced1cb7c1e1477c3acc6c098f03db9db6aed4c59071cafb39ce246a784f352e95446bdf384a7ef7243723844cc82201fa46ddf156694df6105620ecb57d30edfa3dc39f7158be96d1614078ac7d3c10b1ff4dbccaca02c0948af6b06737686b76728704656268e006d070426218ce96b23ec5f446b97bbec60657b74cc30a9a74b19da90821b72b9d9d50aed23142172d04c58cc6730356f542f6ca52ba23ef7c62904616b4a5c752f0237323e4de5bbf32e4b98d01e20915a0b3e5c912d62bedd00a3345fe3de41cfd663acb0e38b328dfe65904b5d2af3aee4447e35560042b71335b23eb142ca70f0e71506e7c6de82e48ac7b38fd9a9d8c99df0e5205001c7a1f396f515b16da19db0a9eb539ce0e8b0a6e08b49ac21021114663ee3bf4f3368442adfe19b7e137874863d6de1e94d26d3c6bf65b7357ad035cb2635d5f0718677087834d9a8ee5f7469989c33161a17aeb9838d961a6977cfbfe92dd0e2661571ccc2fd48f29585c00cb1bead58688a9bb6e7ea77ddf9038feb1bf9f9f6df20357ef282790c7fc2d4bd6d4ecd288b8062c12ccb6713f56b897a725756d4f1a4d990ebccb89dcc49f63bda2914ed57740ba4755dfa4ce2d940f2b165bef79e811ef4a5bdda68aecd032ed29890c3129ebd06eb2bc135a447a3ae12e5d10a02fdaceffaf32c6ffcda50235ec2c6c75be641eb89eb39f6fb6829ad577828472dccb0b4354c9a4e44c09651e9dc828d46de78954184dec1c33a8afdd73a4cda7213cc6330ef586124886fe3670aac7e8db836806d772bbdf18fb0bc23d7f26ea0966f0d18ca5193b43829023e758ae63b201b195bfc4fab6b5799637140689b1d8d9873ea8012f52c289074e296c1a54b2261e27d2506bc335d43f17fb15c9848ada73abf5fba4de68a75385268593af674e2ea3d4d2b4fd0de05b8935c4088819554492db07d940cce145a5b85949d1010b87a02f4f4a82fd3a4e524925d193246bba648bbaabe8747506d0c9ce6f8a8d4728e41401c2061113912980807fae1ede57314e9f8536e5c6c12d6904e1ede73425c12c2a9c0b8f3e8cf39339283a5419baf9fcfd820f69a33e5c6290769508726f76916ba657f932556e9104d1828719a1755fbc9d1e255dcf7924468da0561f8b20ccd6a781ee2f9122946ef394b8349ce4d27efdf3e14eb7d2f4dc01f23944e27ee0d724d50803feac1bded75f63024b9dc7603e0f92a946845199b566c0bcaca3a4dc3c476a71e856622a2441346ca4ced64c429e94420b9d9c19392d9aa3918b6a8ba5c3ba0f2b91dde5e2b2519e20aed67366c93ee8f342f16ca680b407d5105b5e0ba36fb4801f4ae77e960fbbf694aed60dc3570aaa6164dc5246065ded7f06e9f2b385e5612cc5cee5f7331d011d10447f8e2553643c0039c0ccde818d22bc18c124e436a0f541bc17eb3953c46a45c9925162308552b19701ee2ce9b3670b071ef5ef1a3ac6f78f726d368b81aa95c0f839f8ee1724cfb66d65e0d8f0dee2a519df41991ad75ed21c6d1ded4a82eb46795d47d801bdb24c6aa0298e192c149ac7291bd51c7cc3086ae34684c9352d4e449c454d8c6aed7d85732c346368790845be2e421a33f6567a811bfe35fa1268d745a98d743eae88fc1123f7e4ab1748dff13b3e26657fff112029110ddfd585591c8368ad65358a3820044a40e2eb9bc4aaec32ba6b6861b5378bc453732e2a1800f6238e6451136da10190e55ca81323a543608a66f3e6f75485771f8d932981cf5bda3a90613e33f3986509aa75f18435b9983fcc8747b5ab92b8154fcf851b7a1fbef31ed3ada1b9e4b6de9ffa1881cba4dbbe6ed6c3b4e6c05fa6d184261a3f94ecda0e907439b4669590e46023036a313e3425fe73752b59c5b1659abba83a002b03e922746a7f5df91e36972a0d898619cf2fe847530d428fd9797ec7b8da0b7ed0a56e684c3d92ac41ba8823531eb5bba6911089a810447a6a3bd9e692b4b89e8431786df3b26d78b5860d53bb582ee1f954de82d2e0ef95fe8bfb6f776dfc868970c35df32e2fc0bb7f01149a7f6adcc36d6434e47d55638df30e642207d1048b4852177d81108b9fdee2b96a653b8fd129e7a4d66d2adc271b99511d6db173590b22dd790f357c35f45536c975378719e7f018d3d1b05d8e662b5297a95f3e7183f19ef476fd39e595793f5e1eb9f8405a2c5546678a90a1c9a4ca107ab52d7a20a88daacdabc5e098f2a231b6a07b12ea75ecb126d1b00f3b9fdeafb9527c9494cc621c72a6a6aa7722dfbc227ca03f2dc8c78211c16878e1d02ec3f91b69ce5fb0f5c7459968d9e49ba3cd4093a310cd15be6a140a6f01c5afd76ba5c06fe55a042bc250a8409f9589fc1c0255e47596202842bbb2593aadf11fc433a0986f0386b0140770957056f929b2e043b12287b1c8aff8b9508e2474fea75ae8623cf0f0e8743106fbbd7dac2f12017d437b47aaaef38bce97a6bf0f86914509d61f802f157d18ebae2be21a00e4a9ee37ada0673e59700c269101830553465477a1c5d5a835a78636ed7fc76bb9c82bb465a094c54a3ac54ca80a0358a5957d1011e593768426a5b31a25fbaccc3fda45cc5bdbe735676ee105159403a6f59fa330d49fc26b94f128a30d90f1997963b04157d3930f0a4c674da71c03cddc20988ff5b11d88f3a4976e4350564b073875c6a4880008a6a723aac70ac40394611bd7c4f94e5322c11e171d858494146943c2d20d8dad06e888f7d59fb31f26e8672090ee7857a13c11e099d654612cc900a7df37fdf12c80d99fbdcb4f3b61c187269ff45b20374ed18c6e5cb64d8fafc2b253e84d400255ae28b2ddd2077bb8b488cefcc1a41fecfab0294d79b29724d32aed9e2dd3b0b43d738f664e693eb49c28a66855b9fa7e72c32b2dc32070faac3823b621862dca283cb3965a4d5826a97f35b7a8989f193be62990b77e777d996d6def53602faad0e757d1d606a6dce96ac9f90bc4f3d0e68d680889594d0a84ea95cdbc99a52cfe7fd9924eaf9f668dab6994caf653680ba3fdc18f9776d82e262d5943e4f0869a395bded9065544ddd237e6b90dc82bedd98091f1b656b1727be18ee3bfe09f3edf747da0e85e859797e7563b5865d05af4e0654056c8469ddeb0e61037bcf4aaa78b89e2c6ba828f989809fa138546be6ffcfac9c875d17bf943560a1f3bb02121dfcb025b8da68da5c8766478ef0b0920e8691423c9daaf802e4abf0a4880fb36b1e6f343340d8dea1850e670a4f7bd8228128282c6c84a7f6a7af20005f0fb310f9db0c8aa99c5def11aa4ceb7cb07ca9c5f07075522b44e093644fe6bd25cc0f4357cb147f7581c4ff17516cb42aae09701cad05a70a8bae042c753659eff68479c9ccb7506b1e18757b7c716c27ac56b76b8b68d67c89689bf3be065f5ca18b8838585939d24cacceee633150d99dc37b0d05580a0f94735b2ebb72fe66728445ac27c5ccc984ba5f40008273eb98f8bf831855d59a14ecb98e5260d6163c08a1b394ed362fbde7988ee71a5d0932fb757776c99b350053a49b70d7cdcd481887e8206b87103f006302c7a11c8b98a3dad4e7dc3bd883593c530e97306b3286fb5c53cef35d2d75b34fcf4739c7d6491ab3a9f6a13bfc7b476921f13862e1251ef8ed970bc5c5a9901f04b0977dabed1c5a1ad7a82fef92d77f48854f901d3e49c7a3c0bcf4691114e1e048d3b2c00b624a6b28bb632d140f54d370e67801eb22c1ae3869d87ab85fbdb867221d2dced16404820f4111332975c8ce17c29023b9b3259a76197070bfc8475c4d3ceb1ca2bbba929f73a08a139f1c685612e64003ed95dd09e8db650a50f44b75f2af70add89d0cd694e071f5a85bbb7827d73492d7e23b4379f366c182b83d348765494d0dc8b660d88e3c5d1b3744ed06f6975a2d02b5a05fefb64c7c15471461b545457a9b75f71648a05e308cfeb9097b0327b25611fb25b8a2824d48f6b18bf06cd50672155f40e241a9bac6e3ec78db7f77b932b210aed87bacc12730fb093d1828e9c6521681724b5a4041cd38307e80a39381785e46ca4cddf3b3d24b7c916c8c74b2ea4cd8929ae96623ec59ca0999983a80a4d57edbec8b9d2e0f8dc69b180f454af7a5c13b700bd44d1b164cbc8648216c97be8234151eae7d4e27cc644c1a6ca12a047096b5882344c33779170b2c1bde45d4dedf6ac737c4233efbc3f8427a2bc58f2414ceb23811936670031cbdda84f44368fc4b4628ecc4340ad7539b3b3a777345b75d520930885464d04da098969d4a77705896348c70a03e55e49d20fc0c2c1ebb4d10f7047595227fb59df0f46dbb55e33d0b68a85ec1abb9a569347ffa83871a542c28364049a710a394cc67db5def05256f616956be97fac71b470a57ceb7dcb843824aafea0617baf82a855bd01d78677e3483577d3f58f9879c7ea426193e0dfbfd685096a68a308e4d21f9562bd500d406c08b7609458aca6924e93a3cdf5ec6c854dfb46d10d0fa9b89b84d68b0c48bc7aa517ac146b28af32ce1c1941898e2a91887cf8b0e4a90a60e61162919188894716eb3344c4bfc68bf983d5e0b1fccc27ad5b404f42431da2565f0aed099ea10f3807ab9d29295a63f556a8b5820e3dc283db7b5d3d4163822d5eece700e42c4f442490befe7e493a19963e4012b4f02060be1ab368ababab144970cd64a4180dd19ac766613b81bfbd4e0f1eea56bc931f2782f19dc994863123f5af2da03190e18e076d81859005ffb9247b37bc1206738901e1b18d3948989b65d70eea5825cf43b4604947fc710f6a65d5ddc9ae0bf6ead2a59294ca3464bdc862dfb9e69bb876671a70df466216dc9ed89a9dbf50655ac591b1ecbab4dc05b215f7ccc208ee29a0ed9ba8ba2e6184dc1b05b495eb6e7d127e64b374d5b6283bb42d687ef49d0d7e782fc7d5e17a56bb9234934f1d98e4c69dcde27e71f3b229d5c8523cb2ef7a815d86fe079f0f26837eea5c2ee72aa0b4f5d7a0069a8078b698477cb0b7c4f37b076fa1bbf923474073f183571a90e074d1102226178c546d285b16b5b4229e11ed772e72807bf1749193082aab906aa42dabc8a2557e22776ff305dd6859f7ffa11eccbd27214034c946932c83bb8471aa629680d045e2879cc12e0136e74672e2f513ad12b5cff248baa93b8d1cdae6eb4ec0fe09719eb08763e224f0a8d4aaa4a519fb67d189c3462a74bec7768d2afd8c82bc8ae06636275b6456be33cfbde3931ca0e6c79e5b82f532d33d8cdb1acc0de550b7dc29c8ad3113998f5ed30ab251e44187e67d9c09f9e4256b8a31b0ab8e208358e5258c260a7e62060842c86065e1a1bfded04ce3d4b56cab72c8a11183f900894c483330866d29b0cb94b549230ca7ae5d641319b675d5024d5d93790a98fac058e6f10c7ccc40a7614f5ee38252fe6f2494c91081374ce213baf0dd0f0f29da276d81c984af6a13338d97f1662672a929b696a9c322156d6c6100a4854f29aff19592060f4c25e755d97627800691dc0d08e887ef9cd1de8af1d844ad93e05b60d63a15a6893081dfd36c4bda8f51768e1a3956483401ef8a968ec2a40bcca51b6002bce944357007edbfb2750a6d8dc73b391e03e5d88bb7d5eb92caf883f8a5ea67572f7fd76301b5a4fb47f1e5c8b71d070d7bc2314986a07ba3104e6badf3a2c118b7048bc81c83ed967758e0240b722fe678029959054598ab70ea2eff167037794cddeb4c125e45ad81a7eefafeb7c3827f3334b6876153a1701e667a506ca27b9c6a05d46f865321ed8af84b0d78f8cf7f8699cef53dde44358243dc55d3e37382341b8d5b435cdfffdd5dc1bfede0e762ff9613eabeeaa8a27c3ed207a997d4f0b82cbe840ce1489628883c8905a0fbec291f574b47d00ea4b505d7b6942e008f0c85daddb1bd0d55f6c6bb2a541047529f5fe620158707e1dec860c7cb178012884ad0430784b44aa9cb1fc3bbf6eb6ad1410b6441bed3f5f3808f41de8d67a90792558112e57932ae4c956100090467f51bcc73d130ca8220270a6216ba729b778615b7937ece2dfa9a164e0287e7f30fa8a332b19a31952c8b9d53be704f9847cd0de170ffd296daee2e202581218a3cc07dc3f818a26cb24e94bed9ba43507a989de04b5eb103abcbc014ce55b1fef3262dac66eef2c98cdc802d44bda420d9bb1fd40523625982f59e213e86af1c79453afe0cef695910aa76d1811241846164f1a5aab4bddcd25a279960543ef7263d3c219bf25a0a5f024186ca1d1d64d53c82f9bc0ea7c18bd525d2922fab3499c1c1eb2d41d8b489cd26bccdc71cb83035b2a7736c815c1e7bd5d0d6a9e612f6c24fa21f59833262f6fd3b9966dd7d0d496b76d3bea370b6105854b756f591271b6af910a8e3a7bfd2c89bd0708ee879b0f23ee6132ff2a00eb2e5cb9c575eb6dae01f7e38a74620d0bccb1377c387d931ac34859c544488ae1d956e8bac0083ae910cc8e06dcb385fe99ada167b270f5b7b915fd334a4eda6e21c9d59b2956c9b0362396dc81c1708bc9967fff6492166f366886b903210005d148809c18bd9f8feabd410a4eedaa5cfc3694bb8d30022f2ab781537d7ef0f06eb44c748d11f57f787756381c86ccdb82a4a9ac2dd48acc017803ff9af6fc9ea6ada52357042474c36f73bd379b3c90aa0c3ec9f3db418acd4a7a0112f44e2d53fb33cb68449be561e950ae17fbf7b9a969eed0e3cfe3a326e39d51cda2f92f1f16ccce7402d9c300eaad98a3663d78aa3c4144404529e8d598a57c6df18b4d3e88f80b08277af80a1bb805c23267c8b98c83c7adf28e504cd8dfd1e42da75674b5d94b17d4dbbd392403bb63acf4cea99ecf52efae771f8347f2a32a2949d2a81ffa723cd252b55737e41debea70d44d2a1da36772fcd5386e2fda8f2c53e96a30b0e8edc8090ba14e025a2107932d7390eff1d4dacab132f8814fb4848b6c74562c8038a8162056d9b607cd75ab8a1064aa7d9e4742074ea1c7f753c2a113ab1e9fd41e35fc9d7d6a64898179a46a370b24455d23906683252284898ec0ffc04a8bdbf390c14c54cbe689cdc1134005837e14225c260be4edc90d9071e0210be4a5af66ac12206ddd9fb8e2f15ff3de5b13280143c608d986b0ca4e72730876ee8ca006bb08b3c1c04b1074ccf5581231ba7661e8f22c2fe5a01e260340e253336e98a62437dfcf770b31d1f5b4c6004d9536c77cec05fa34b63087345fb536fc0fd3424a5829174f8a2d0e23f86c22b8d863d1a518e8454a17e50e4bd8adbaedeebda6a1a363b9722677db71d64f20701ba1edbf2c6c4b3863b321898b23b6270b51d74cee2a498180f9188bf74c54fc6de4d71e99b19dc555f6f5ee4860fe08d9e9bb61912fbdb90ccfd36410b8f834e1545d171555bccb01853cc55f0ef1f025f3454c30b93e012ac5153cb64186a0fa84eb5145173b11be8c40db73c38d0ad3c61f704eb0ae3c68ea6d63c440750e8e624b8e1a3e908971f47d63ba684e01932e7636a5af8f3099a20cdff03d1b1c76d4b1ee1bfdb0bebbcfb09ec93c1de4b4bc0a6d8dc1cf79968b63fc8cd9d76a568ecb22ba71cba47d9027d0d99639bb5d2e50d011990a8abc0a11cc7b4d16af6c49a8cc74730987f86ed6a8b643cabe99c17a8114b12518ef9aabb419c9934fcb699048a3fe361aeb8e77fc0061c755af147639a2512eaf0dacc76a7152e4b07954f377e10acf44e0a0e0eac2acf4e8794376f6d059255669be8738def12f1162b87d11303864fd2a4996b728537c05d03b78e055d82b98f1592c9f125f2a17b517bd045ae2e39463183235e1e8cfceed86fa2a2054cc0554d4fe739e73be1d3665d5b407f0185711afe2a3eb3bbd56cd395eed13880af182ae61af5f23af3951ac83344a6f6305720e742b818537dfae30aa28ea814488ef66a6fca89352d2f29d7e9441c3a8e663c84306270ecccfcd0e16c5c66fc2351237009757a88384aa81632d5f7d0cb391acdda2bd3fa643e9524a8227fa20ac5c8289630fc5840bd70a03b43654dea4f693dc1b0e661214564ebd20403ffc45ff7fc6fff7004a64daf15351049d872b18a979b947686f2e4fdf91c3d8476d576cb7e809fc161c5e9626251d5e3f2080385d3f4a278ce13706ad4c70571181c13b71e5b497d1c9fe93d6787582390a2c3f80004f040cf005c4e7a153b63e314c7ccda5e7e326ff0c2a724da11ca988614fc328d73d40016d7ddd9b31390dfdfddf04550eac7a5bacad3b66e6f2e41ddd542aa4f8958266961cd0736506a3fc0f4ea79ac016d26baa214103c40fcd42f43627d8a835e793dbe6f654e6f2602228842a6926d8a334f5700532b593a728e1a478d69d0a7707ae12abfe8342fa3fca90c3203bd83449e085b66250a20fed52fcbccdd69e3beee03919438a86a5e7fd9a7a652b044c35a5530f38f16be241ba67be98a3fdf1415bffea9db92f2a0a63325e9242c1c95da9333a5f080618df9f1b62e6140bcba386d9d03f078e5473bdba219b10def2f7238e120e96e5fb28bea371ad27af0446f43e49040757c6dcfee6e2c7a061bfcf779e9afa4207c89a5ddb31a0f1454ec60450bcbc3a9b2a7790fac19fdc95084ee912c83ed0c6351ac43bbe6a64e08bc48cc78c6a8f4049e6f9c65eca72c6d9f6a8262e63b114577e071b58cbc332beb47161492e1d0d54bf937dc599d89498598674b42c12b49cf81f1129ce2391e3d20808605cf42330d4180dfc7bcb0b2728f1e2e8ba32e8576163dacfd843a9b7340ea577ae6e6849ddb92608e6a9873a5fe7dfaf2240910768494051b681a9cbfbdde8ed2553a78e56d0f9b1ced7783f5f9c0027e511505cda66fda3ecc2ea9d2fc13338961f8349d1e0fb1833a77a614eb67ecf0fcc23f8f80255d341ce7b6c271e2fd1cbf8b66871415b08526f06bbd9aa7c4853f887e23fd126af8ed54f38df657c145eff6349dd7d27736fd9d915a743de5b55018958134c41690ae839c0b251eeb4a2f2dafb976e8b3e07e1967ee45dbc808692e9d63c5bc08e74fc63ca4fcfae0894303c965aa0117e61ff7dd07a5a8f3eeaf6e2ce3bdf4306cbb7fae88e0adbab84778ca57308fd7f0f3fc33b23df19b03e2f7014fde86040d84351c692e58937818de54a79cbd32ece21eb1313598d369454599a6e041d6c30c263fea288c549fb5d2d441f2343eae0cba2be487b8c35b658ae4981dce7dcfa1dc6869bd8fdda10c3fa904a4dba878eb9ed789d37ab4986eab890481db6613ddb5e461aabde6c95e584bdabe891d516ec39c720a113ac3dffe5e23d3aac4a7945abbc5574a42a1fd66c248d0be345da85675f124f06afc279577a5a4834326f63aadc4b2e0bbd5f14fadbcc834d4b4c90521ff03b4b15326ce94699a46e920695807b2a0c7b072131851e898a31fcde786c1ceee7bdc9ee31b3ccb507ed46a4dd1f0bb6748afbb12e955da18cb1259c2f81f454364d59d98bf468819af49eae2c6325dc5e5f0a5a4f7180b818c742f22e205eb4697d7cd408426d5b951ed85fe27656a4685d43b507dec5720ce4d6d2d451808b822c9d8cec4d3018d7cb7341ea27e2c5303e39cc811727c189cd8caf885772626e83726b9f9265a7284f3d384a5c9f64bf1ba2bf52e3e3a8bead16846065bcc0569d1fde47da94b5ec41a315fcdcc1f816270f0e80f022bb36c90539244cf1c92e04f497feba1597d90f0da442f9a7dcae9438e7dbe2bd6179b0bbd0502651290f18bd31960e3d2fc76273eb6f05736a38f343a313d0cf1fa6628b31420893d34fb4db1746e9ae37c367268d34811fa1186ab1648140686532c0ec53f055b7606a2f139bee3e59965a19eeddc18e01cb5a2896a6d1ad087e7e4e473e16dcbe8f0a09d261cc6b7b81872be9cef092cfac1dc4d19eb0e4098478b2b1cc244d3f6feb214de374caffc14c149ee6eed3a2664a9da7323a72b347788cd3fa0b7e86a33c2c449f7621d6416745ff763be10ec59cdeda36afa2462b33842566742c253e0b19959029bca25f16817a8aadff68ebdc9d16dff4d5b9a9d0624292d514f85dbe0e0e3145042ae5cf66a12a1f4bde8452bc06f01095c89f8408386beff99439a17e70e4d7d193f33610c34a0c973d200ff2ac03238d2a059ac767b8ab55fc853da47687a61166610a0897e9da933916904052c0b41b53939eac085f81d3987cce4b8ca2680b4eaeb02f6c2889966394ba28d77c9a2b42a42b00e35a8b45eedeb2823dfda86be7ccbff9f20cd26005a0032c01b4525ba2126c91639c4d78115f2ba3efff766c171ea38aa963e4458a66220e90aff8bf707be7c941c416c02e2067ee28c5938ffe34a85d0e37c3737f8c7227d8e1bc7a4d085bdda397dd817dfa03965ef4e758044c28a2417eee1208bbc6d2b318f53e02f18c6d212fdc2e7de9ffbd0a6428ffd3a48c748d221b97565109c9203c31d39839a0d24a6570e187b87f257a5f2597718aaf8c6f9e727f97348e866ba10b51d6f51f93fa08717358bcb3d334f2ed2310cd93355d2e578384e82908f0b2132ff847f47653ccdb608db987194006c97167ced48181d31bf7342bc2671885980cbe04736b8b6f800347d2aab570d78cfa4ad37437c7f7864e5560d96fb834beb66072ac724f99bb82a753874980caec378c17d121185973a589a0d6bb738a49879b57f5550bfe6044fb671d49b4ad55ee08426d0121715a99761366164fe61824422f0738f50dae41884440c832ca42054b46bc048703aaff2337b8a8b8380f7a81d5c70fa674b6617104362846aaa1c338090c8ab8ce63c1e6c885420b0cea4ef3aef17ecbe30848a47328fb096bd97609693aea04272e44cd62b1f55dfb20f7a3e449e41dc661d25be07cbe43492c71c44eb6cf71b47db7c1d396cfe2b4ade31a7e1e5f2b24daa4e26d24c5ea164a1061b2a69d591da63ed2c712a2fd9d6c6ecb5348579f5fd1adcd1fd94714a4e49f10e3aac5fa14c36dc9fc058a3f80937fede5f6158e38551f60fa79b12ad6851fc1a53023dd1a1fac689c6b89491efc519c25db050f0faf75756ae6318cae7cfce94536cb68197a5e52be3a057af44201f7147ad7410dc735ec82917e319beef9ad2bedf78745129aea42f6428df697fdbfbe8968eae31aadb93d25e81d3d710dfcd5b76e75eb31254916e580223d3ad380ca7530a9db82cf984f38c584d6d474a0fe23e48a19e80dc8f0f7f684ec632dfaeeb45d31ae2b378a87ddb4c074fdde758c816a7ab489d8d0284e37bd872290568746cf34e4794f417a2274a0542d5660f9853f630fa8342a3fece34f31fcdd380e90abe7e877b208e909c03ed602a28b1ae1c2e6675560f74e86264730e7515e0aed117becf73fb4cb372b3db31ef8e2140d754eb70cd979ec08a35371ec0b8ac60501f0b98908bf26124076467be1116eb3eb5dc4f65cddcc1da92f8843639234ee1c8f43b6699e9ad49e6575b21b20bac860f8b9ba0a0b0d9865e3e81e736c23e544c2597a93faa3b8f52f6b0fef3c349c03d7e1578f75a304fe63e9a8ae5758cd80d15dd5e13dac96a5d0c281b5e107a5ab87476b265a1fd1d0bb9b5f36564f65cf2fc211e59514fbe408aa3046c9d3549b4eb670f3a8f00ff9899351c4871aedb983b69a9b6ccde7657255e151ab544f8f8d31c2c0b941a95c5ca0c0cef8603bf1f3a4a52e7ef32869dcf385939ed9ae78c5f56d4948686a4e5e8308ade2fa454bc26795f07889afa75b6c168ec8622a3fb4b9372e890f08b9a8153020232a4b7b791fc42321a27b35d1635b451a300e66a90929447b37935c3d55aeef0872deb75eb0a1e6eb57aaa0b14f99c45505fc04d7b5c02e53c81cb4908fe0e0e1ae45a4c2f5c73650bd6bf94ef1775f2ffb52ef18ebe493ce87a9ea61c4fd34287ae5810d50844a4ff430399657a861f1b355e66ee7e40dc12381cc3548beb7801702fe1103dfdfad74c40531557f23ae1f0c65e28dfb5f9d5d2b5e964b10125fe33f063f5250f781a71c6ba7e5c37629c5aa71f80a8e70adb3bfaa2e545c3f6bc9f1f2fd9e484738313a350134412a3558a7af1085af295778478d866ed7dea09a0e4e585dfbf206cda8cd535134530141a0cdbd58f464cf7b639d3c392bcbacb02f65a54949db161fe3885e40cb4a0e2290030a6700240cebecada63f3a54d213cd4e5d7ff8885fad67d8ca92fc5b5a21b376bae514de744e107e54dc9719803c3a7a9858da1417f3a7311cc9702eab8ee3d8d7f109bb5db9c74a2c5967b95b5342cb9f9a5f3c0c49c6fafb6a6747ed3f8739ed7963e5ef793a22317bc6a789bafb06d720b9bab61edcff8a9da8fac4e37e7b1bc29f6748e259e3131fd16779e76efc62dcbf37da5fd71d480752604bd7bca8c681cb4cb5a671c7fd248b1df06b1f6142c8c1778413f27997b640e7fec1af77c74c426fcb0fbe263cb434bf9328315fa861b4fb25ab46af2944224f9b3fbc7ddcf9fe681acbef2edb7f2cb5c0173999c0280956ca419a71ff168ab73007168a9b9bf60f2d2a9980666a4288c81cb402a496fd6a58548c5c8ddaf7fa06a436e85890c469916c939ed1640d07c940bc918ed55bb71cf25dc73c7533c9b16844d4288fe4d5f37ca563155db80e15307316979869af57113c988cbeb0c9dad4fd0fb535a9c30940fa02dc5afac01f499f9e3bef7c5ff9a69878e2c8b02337718ed3f28c2e0e1ecaaefa4d517e5a961481ad4c508317c880485ff35fc9f094d58df9ba34a38ab89b4fbade2d1e5596ba36e7ddfa755af5b4ff74cb5330f58201db77b824bb7cc874257d96df2096c9ba017d9af5fa43d75905496806a32f53a6acae7e34c197748e28745b3328f41b0d8ac4f482953c5deef42f219ce012fa1d7d3af985dbf463ebeade7d632dd0d1b09624edf1d44ccd42129ab0a6c2e6201a923105c65cd57803245d4d07f0ffebed7c6595b4a34831fedecd7fb8fe5780dc63dad030f71eeabbe5e2d757e781ea4e0ed626fa5ae432a94e0da26f75b9f5b86327f93818b8671f2f1700bee27cfb02efd4d7ae9e9d25876f61f0fa9359c8973987e2a5e6161fb8958005490c07463f933f34d506df43c34d1362692789e5b13a020fe625e274d1752c1e95ba49b255ab3da5a3aa7f0cd5c90a0573808fd7cf53f33631ec80701158bb742876a708f67b23fff080eb34e692e89337c0d5abae093f76d8ee628cd37e9743b309fb6aabd0b52cd466bece4f2e9e92c34579d2e04a9bf02450fb10f503f590ef8d0f1a6c2cf38f92f0a485d2852a0514d6705c973abb9f3b5c52ed73cb00a578cb0997111514bda215ef99327483947a936e3906d2d6eeed498a714f342701d4ecdcf09ae22f283847cdf2dac7ca6c1b9edda2529f050dc63062d22c6bb38706920a3a8ee237ef022c425953a64594a8d9e7666afda07be9db03bbb05d6c58323f177b188d6313c48d5f2a385e1ff068de497bf8552a5dc6a042a4604c28a36f85c5d77a2443f62cd290e8f2e4294cd8e40a59e66b8f89609a3ee23878ded752306a44dd42d52aec467e6848c019481b813bf410fd0e588940a6b8ded1e8987bd46c4e0d3e7fc460f1830751855a7388e04db30bc92a32e4c153229b81de930f90bea26671ffa2860feceb149408716e3b449259d423b01fae62809baa08ab5f98cba26e872816f73594dca5c7788e2dc487aaf9cf2429e4edcf5e3d30bef005705845fd0682c34ce7e6ec5559260fd3201e85ee0bfa9ea5b8f6fc588a242c4148913d1a7824108785245bc8d032440f812b41aa689d766651f2a2212f921e1d13aa527772f00cee65825926f8dc4bd43899f761fb1b0dcfa6fe114f93f07c4339dc49c4998b4c06998331b2e85be1d864ae22e6fbdb4fdfb7abaf8e02edb9bd9fad48b41a2bac83e41a67a6febf21a38d38f93c177ad5ca4d96739623e4f8b11fe6adb9195f2305680cdedb1eec3a6aac594fa035b01e3fcbd52d3de0ef3b7bfca55af7689fd19246f87e7f50ac73c2f520d8a2dd2a294e39787023f05c8c59af75ec4661e86e07fd3e637adc519e86209904544ddc862dbc721d982a5f9d675071059f6a1728837a733a954553b97700277d0bab5e1c0811121f138c8695dcbc24a1c62f92fcb7f01766c320d6cc1ac148b61fddd2feb76a14a922bb703ba75f42d5fa9415aabbd638225f3e159843ffb643a1f5e53a7a6bf5c4e858179dec82420a369e5eb03ed297daa9f445be9e31262e43351536c29244dc068686fb0f0557ecfd6e336c285860c61d862e96d90b864e795b6bd0fc821cb5b7fe6282108cb72f752c4d25d3feceb7fdc7a418c7b7da19a2deb9e0ef85d5ae3c013656fcee745aefb85a7dcce81660703e1982fdbf9276d69a6ba80a92400d1d725936c093aca93b9e5122df7f1b862a59398d6f63c1627ad275434bb50430b188aeeac54b4c5cc90da9c8aa8eced81f1b5b2084d4afc08752af68b482d90b602590c7d46b5584e27e8289b20e066c05ebde7b7d7064307aa746feed1e26e124d4bceec70568d3c238ae21ad17d263e129116ef594ec13cc42045bb48e8e0ce65718297e4e9a4d8819187db77f786b54d43f2b22f6d66cb9fd75ad12dfde177043f10fbd115ef58698ef2565979e36982ba255cdc8b7746092c4928f63820dc9ee5f371355a5de5cb31394cc8da2f3f6f2696cfdd19b01901fae455493510e867c9c06a01f8f1e0c20985557dad5d7ba75d509bd72d767bcec3f129f97685ba1e6044549a168395f2cd4d522d1c132dadf584c66b7302fc7799f4d2b8edcdb3357b33b245fabadccd3fd7cbb0a62dc33f3f93a9bbe4ffe6532acc3c0bec1c1e7f4b01c02fe31455b1db5ed7930602df9d87be2f613ee4a4a80110724a4b6ac7d3e59c6a96c63df7263432fcfcd1149e569d61031713da20dceeaf8efe7f68ad7fa16f72b67e43ecc1f6d30732b3cbaee6b69da1d1bc4957f135505cc0c2481f8a7f7c06eddbddbc28d924a74fc7e5cf927a8f0c7b63bcf42a52d86054f17a19a28647e4b66303efbb57aa6d7a9b12f7ae7ebc126e4079e7dea7fe62154ad916035fb55cb12bc49709482b41294887f52417555d2622d943bc14d3a7efbb6704fe0cb1f60e5b73f17ae649643e4bcea735c2c3fbd2b1d3bebc4256872e547530b5a082eb5a86d9fbe5a8023f97a1042f415cffcdb96d7006c093365ef8a00d0cbdee65dc22148036d250ac4807ab2f721ebe554b2c37a53cfcf51473626454aecf6bfc9e0af7aeb56ec5362f291ad4ab24315157f4e70d4c8c997f0faeed171013d47c6b459450309df22f4b0a50bdfb5b5482407254bef8ccedf587b04c635f5c3355bf71fc140fb2eff60c1640c1ab309f13857cea010c88f54c2794c8bd4d14ff2f590c6dd6dacb9fb60e4adc7dc0c72bfb1cbfdb8f8c4214142c3d6721efa9f35266c62a8af906d669c494f74e738b83f936ad4c1d428b1ea7ba06a129373e6c073b48a95b8f73406065285924b1807135fccf298e3ec718d60829519c98150ec3ac90530d72aa98dd5554fe619e9c760c56a37ecc38267be039a1577a177c4a84e0482e8e17786782b22be5746e152445f11b64cbf18a5fb2b5a0991f6f138dfe10cfda12563ef939e4a15aaec1520338273720c18c627ed223049042650205a4f64262d56fea2ab09aa834fa583d504fb32dd9e4653bc3b9173a8dd4f140ec6f98c01229e2a976685fd0238ca0cd50c6c1ed1fe9f824ae20954543b2a39dc203aeba3fc76a32a2a2c9cc6e050226c8743237fcc1bffc72e889e070fa2eebe04d8b633d3dc40d65b3d8706a870f2945dd79fdd39f27a18278405be2e206e2e3c10def0c12fcc06c4d7e38c9f63d1f767be500e4c263be282bad92df9a3f4ad01460753f13e33b3a71daae4a4f326722145e442c70e46c6391130b8a80e2e308866311cdff97349e4b6482820b7216fe0cf3046655b8fca01b7912ac1f7db85b49c5b9c557388925e4771b7e4d12c346e79e41a38e3cb333b8e231361754ed92f1a4fdf1f3f8bd0b90ffcfa4034b896a850f19e12d8a9bc5a691a5847379cd687727f70cf0f6d888372c131296019aa86f7b347046323afd169458f9e1cfa3bc706982d35b3eb8b19bd037e7a88470b9ac8241039614a0025fae95022f9ceed9ef30397bc0b7cea11aad969622fc1d9f070ad1a835d0c47ca6ebb998a9bd5ebd17158dfa9e79bcb67e62bb9852de08825d736c5572b02db43b338e6e2b86fea6325364b6ebbb11a2358d7d219476b30eb04347ff85dd004e16bb65c5d38f989eb184643823a965c33e0ad1fecda749767ffd0a9dc69fc648888ebd4ffbc01993cf37cd97944884e4a468bb02e1961a007a10c2e7a7bc9588e5ce5a0b21325ac4a1b0b5751a0b9d26be667c2b3ba464b3a5298b3f8d9bf6ab173e87d18ee3f39421db37d9074f8e43cb9c3a1e84c29283b7d97570986eb88a6db83b5f725d381e24fd353cf34060d4b0235357f4a7d4e37a73f4b5ce4b361dd80f2013428e0d4f51912978410ce3bb00b898f461b49f1525bd1c9bfbac4c26a9e732b578a051376220e50b4ecacf4275d91d800ee5805bcb994af5bd00309bcbe168eb8597405dd37889cac624410b4fb4b7cb0569fc432608c9235460da30958151b175ca6e609b600632dc9efbe8c652638a888376ef6015eadbe1ac1c96a7fb4ac56ad356e51e73e51dd0c337b77f3f198588e027fd5c01efdb29757dcd13619d8c86ed726e0934a567a96a4b222095228e286872a74dbcd8cb9bcbc1df20c0e09ba9753c1dadce32e2e24ff28636cf7ccebd18eafaf521405be386b77f07f199076c03f3e6c04094f1647f79725a0ed9e090a64c66393783dc44d4efc67864968cc18f7536812c30d2c9e90a4d5a09ca089b6c5cb06317923c866b55c3c4a943d4ed169ea4946945fd15d417d8e983442a97983a1cd0b696f121f32acb8d449aed96ea50737c5eca6b52c37bc13d87a0a8ac3c9c981fb0bce59bab5ca1c2682dd2b9dce37a32ddc1283cdd7cf75b7886da5c8dac8d2e8ed7fbc234aed15a553b480154e75785fe65b70ee8ef5e71904038949a1b303c54daed8cd34c2ef5284e8874e909237c19e14560157176a42fc874ad6c9a809ca34fabc8f6ff766c1c042eb2319e6b5a3a4e05524083239459662a654525b160ea7185bb8182314edc84c84874bfd12588f1863e1c954800bba63d086f1d9e0ca543ce879c2296348f4cdf03832ee13adad37bc8393df698d4c3c242a77e6639987a54405aa5ebf5472951d0f2e0b553d32a3d8d04f36833c7f46e26513c000a4dbb6fb52fa87bbe7d2a05f8210e92124bb3a244f8ae14632e2be3f57bcd1577751d31834b5f8d095a9c36f823f55c49fc8673857a1a2eb924b9a2f4e028521aec0987a80a2aa8e8e845c47ba7b19aadf5c257dc0320755191e15a5f97a810c4ab41fc854b8d187508f26167a102692ad88c82771c2d2e903ae46d9744211390d0b4849df40947b0ceac38dc85b843073fbe19e8b94e88f3567d11a903e3863d008d1e7e0c42e0f1304fb96a02254dede8085026271f7430b1c4ca9bee05d13c4cbb1ccfd4c6fe859d07a7fec47049832b4876882d2347ef249adf52d787e6acaf96bb8b6332185b5a6d9962be9afdd28807d1f4efe0c40dbb5001e042510b27187e957cba0c197ea5815c95149aa8c7ebf6f1db77f27e8a77e0249e0f5e892fedcd939b12f37efd405f0879426dcdc31afb8470d8a4f32b8497d4a0dc24b3c66cd61ad5b6b5763201c29d66af0e763b96e75d5d32c80238a13084a94c6f5b2bd2ba9f7fa9c825db5f3769644fd67314028391bef0b813e502cf92b3ca62481d3219a8fd281e2bf52f3eee9e00789e45f1025f0a70a7ce7250b4ba465659f387bbe7946f580c910df7558969ae452ce49708fceafef01de9d28eb398e3d2e139a52700e9ab04d2f911e0c457009292d7f10c418a33ba780215c71531132e3364831aa8d3e1cb40efc8eee31a4e3ca2670321d28d0624a734b605e1fc71f3a7cee095c8b89c65eb9e007cac6c450e555e2189b5945d28fe592f7b3ca3d8cb4e56bffe732c235cc5090d75297087bb9d1a62a40cb406037c92ba483d269edfb992d20ad9eb7b7500b96345a61f54e85834af3901109cd1a62eaf910f875591d5e2c9b9e9b6f1472052fc22e4ee71dc66ae9a45f794a741f4f3f8ee278a105e27d791073d0a98d61db83a3bb049091b2dade0b9d11ec7ce42f6abe72ed20bcf3f0525950f4762077699e73992669dba308026ed6ee85242e853aa95fe6c462314128d7da8ee97adf72fffa346f5e7ce03f58b2671766bc842995cbd3a88d0224fa02b43dc64dcd289f655556ae75efa6faa5674c38069fc7252e16a1d639eb5b0c0000b9fc03b8da66f586897691d4f8f202a86f81f73d996f41de67f08107d52078b5b66d8815e4c462b458df6ee15900a63a0c6086af4144d386ed2f7f2dfd62180172ed88e9404183355780c67ecec6f84fa878d7cb2d912677ad018c3d82bca23629e559d623cceec4f0e01021bb35f9d641b8d5ebcf298f607c6005b2a711eb72fa48048b7307819aa657588f2bb3936c07af0f902ba4e994c8910fd266ba9cc8c9ca8b10c04001dcc34ac44c7ebd813aa9aac50b86e962cff6886bfc65298a5ad33f4c844b0671ceba01388d7cc87bcb059deeb509e9bf2e5f681777e042ed59bb1209aafaad59303761115bacf1062de85b29a800035e911b25c8a088cbaaef25093213f562b82d4357bcd8dd94b6eb70e366e0720fc96ff8c95fe9c1897af95b1d4465b8025bb58b13582a31a40062239d26f9b0d65ed3b1e285cb5ab0e870169445a2d4e1b3c7bca00aaacbb63b1b3f93d298817094e9b20467593d219a1aee79c869f5642e9530d8bac6ad8037b8c33e6830e661552a64c58e1faa9cc77284f1be1777e814257f9093468c7923daced5798dba43542d655b97c450f8c1fc9255365674b64c4eef7ee8fab295ecb1fb5f3e4368410d1dee2dfc2ad504d0f9b05b71d91c8d26179c6d2f65a2fde3e94b13cc9b66cd53d7059b8c75dc04f8e93c84e5ea30fa9b750f6b998104dbe37e876512b5fa7ff87dc46788ac67b39ac0eebb10b9bd0465c41bc75b775c37f8b709c8180e7732b345fc396e5162b89d85b25aa705e115a1e5b6620aea91afeaeacfc5de5270fcb2d0645b35a0eece0e678ddc7d3ee797cfe5bdc02ea23113757d863c1823faf0df74c73f1d1c80da2dafdbf25c8ddcec3a0b57a0402a79b32ffdf3c6c885a07ca811569a05a38a921abfc2d1d248ec29db501d5203aeb0c2c5412bac72ff16442136ff53d0ad75c5b21750713ad154083bfbb5ea6d3c4ebf343d86a5e5ef3aa56e9a155f2be67e2429eb0c59a776111ea438240785e12d7867b11c8e4008d333f68b52d06f6105afc1aeb9c5c751c8a73c3dd47cbaa01b87f2c6076d9b6df54dc2b1ebc2c8191a2b03a2f38b4141f7660be99ae84f13c1d388e7f2200019baf9f269144dfd531127d13ae97b47b30aab378d3846de90fd4e4effc797c904db6eb77b29b66ba7e37bc506f5d3d2443137080443d4bea08f4a0b4b1a8415e7b3a75daffac7fc404e8d481b8177cdcec55cbb0153039db7d950b3f23e45cffcd3a38e30fdcff3e76c146f1ba148b2be91e519b012b0e058fd6cf8bfdaa655336b5c13c38abf840254b6e7a22a705c8690d56de5133c07025510aaa02c97b1935770aa4f43bc8a96d8e417320a73ae442149d254b15df4aa5451aa09f7a01b273e1396b9b010958879a914baeb7a0a0c1072504dfcc897dbf0e9544428e1cc21e41e74ca7c0cc6ed7daba1f16fb4f6f02b497f5b4796ebc3a088ee54fd515f18e194a8f5feb5fb76d5f5f98c7ab40d341f9564abbadc9355de502cfadfec7b0027f9cc2fd59df05fffadfe9bbe1ca96f7dc9e0c5e9d622fbf749f6ea1ea81f9eebf77b48f126879c75a6143dd75d77575d94ae665d267dd7d9f84110df547cf5728866db21c9a71d3a2ef09f5c4e584b8805606a70146ba7b1af05ed42f4fc84d0025e2293e12e873dc78c11675c6cbf1e75664c02e2d2225c343c30d3d0ac74b3f02f7eeb416edbc682e63d72be91364a2eda57b26ba0a6f41190bb565fe68c73e6405dada061bc4d1ba03a66b99b059521794e82890e24d8062eb8f168743f5852a77f34b6c0aaab79570dda7a712a66d5f24060f0d363f2f03f561a5a3e4968a25ed65e05070b4c627c8e6e6496e0a7e1ced4ffcb79ad763b482551087d4153fbb151e92ab144a4c14612570c3bb10d33bd37ae8c537ecbf23f41ec1fddb4af41e03dcf2fc51a9c94088bfb0faabb1bce7196fb856dcb4ec2c42c4a9d84520645fa81c8e31ea57020b57065df3e238ee77b27a59b40eccae763e5a1141a6a8a48bed7209423553751042563cc036da7364d4d8b59caa8b86a6c0726fd5908664833c9afadc6df4cc3ea1aaae9f2379fe9ca34c5a781b67f72264d78b09ba599df50f7858fc7224c5d080c79116d8129c59386c481cab76a53dda686a2a5f2ff41695b830002f36eefc6c7ab63e01eb14bb34c2f6e1be1543b889f1b1afa9be462e8d3d07e1d5cd2c43269c9228394659e71236c4cf3ba5f0111d7a9aea3029ae79c6cfa9d66b48d8d419e5b1f602617a53172d5dd6ad26ae285aacfb4cc7430e16985b130d0067a5a6010ee71d6a377be527664971ec5a4cdf1bbc245154ef8ba34428d583769e933cff8a32ba97f50660b3dc3a15c0831756cd45f0681d38e8d308d94875b14d2f6601808bfc00c2bef1e798c2bcca2543b4c12e1bdbd5d00ce3a9d8a789abf60c15441b3529cdd03dec52d464bba6ff1b252a2294010b521913e512df64bf4eaa03937bbf03e69ca3c662c341af2efb9e2b646d178db97f3051f3a9655fb40fb1b8c061fbb077dea665a6a456ccadab8692f851bd20cf49c1b6b9b10ad4d16f8533f86df4b0b384302aef0ea16e1287d560b518109eeb371d153e674c279256981c777275a155b29dba82c6da403d7ca9adc130cc12ced3afead01f60d70fee5de941ce258debe783102e9ce3e984b6f9a656d5ce4f5023b42e883b9d1cd05936116b90b10158b957aecbbf183833502e751a412439aa0d843f66075a1608fc01b2193df5d7e24d100e2c9131b1b3b0030f89d437202ff9d5fab4a84ef4a52163f11b6b41b7180a79a9d4bade848b0b83e42a9d8a47e334bf66082ec56a2a832a73cd6960be74743f1feda7cbf22aebdd703c614f15a0ad70b2b6f9971086f956ee45f7c89d51ca630f3080d5d461cc399d079c3cc76281ab1ae77c240c45e132094c30c3e04ac5115fc63dfe1157312299d8e3ebee3f0d929d033ccfc6f5e35bf89c194e6b403153018307126322be7ff54d8655a41dfb0b03c3b1101de299075ec9e3b6c0c42e0e59a5cc3a71034d9ee75aa338c5e05f5e571921acff04171af58b8bb5182e9bf0dde2850edd8eb38c5395fea270182a5000fd6762ef64b648c5ee291f821d77a53716bf79285bf0e9d788fd6811c00d7e5ab3a364cfa8f773678578566c85c3a9d1f544fa86fe11bc028499d10dc7d1584d8e0916a774031be2b27888b7fe09a52f3b24a59f44288b2ea5008dad4bc088604233d2d6bc9439b185fa9318d411ce7031664e9672d3355b04dcd3dd2d66903e3a14d712273857b47b479da242e980004d5cc57c76e219bf1d644b8d78ee9ec4fe09e39c23cc4708724ffb67ce24d4adeeeef7a535813394547d273f4285444da998082bff8647936b0def81010ae30c6dae0ad140c6da255f03359ed7f557f141a5088c65a8bd240ccd51f49cca0674ea926f37d84bf87330d955a574687b798cbc6025d888a24e07f17e55885240442f76fc5fe25b37d583e6f03fa0a492be321e509cea8ce9e7f2455c892e36395b8f9bfd48770483f2062bcc366c9c2dad6ec61334477999fb5e834c704fb401c9be1ba2fc4f68eb5c7e7bfd7eec4b46654bfdb230c13ade91e085bd7135e8398ca2d37059b7d7db253f7b1dbf4fdc20cdd067dfae6b1746fdcb5d9b9793ffcdd574c62626ccf6ae2e9841e056daa094881d143338d8957540777b3e3ce4d1d665bf380c2255b9eae045a8d322d4a707ac984bf95bd3403b6d9f1fc215156f1aada332a6b29e522939e3afc408a43089fccc2f52907dd3991d3c5a42eae8b02c98cac7d54c760b3abd4c6ff48f30b7c970aca4f8f570a7789f494a49add1f0dcb1067f4af01f248df7ca8f4132e0741fddc8ff93f90e81635f44705bdeb935887fda108250d63d22f6bd3246228d0b22d8aff5f56386216cab10dae1a2d47a0dbcc0ab00a77d8595a06749027b2d6c8916c478d5cb875bfe6635a608d69c277e08ab49ad5201ae778c9d4b67f208d0ff72918d395b79d443c3435ed1afb5c53ab3cdead4d7947427cd82287ed813c10fb52f123daad04581e58cef73648e8ee02656e11060dc4454c0f521645a007ea3c0ab520758983135a52cd78a3c0a6ca2cc957055438bd9d2a57b35645ba6877c060f255a8949ed62304efe37878c4cc4457178c8b48b3d9759e1796f96cc16fd97714d110a0cb76dcd70024806d3dd84859c0674b1de4c6e525700c7dea16faf695300c83609567bdedc1a610d185e7e2a7422ff6abe54c80d88244f22d4233a5f107372afbff0645cdb7d62836bf2841f230454269123934096987a7511f34d8b698e993e8499b3cccfec71bcc5441894d98685f4c8a51e9a4f340eeab893a9884dc4d0aaf209b0919e8523e344fed0cb1946da3c03fd2227f664f711392fa583baf14d54dcc41a1be8ded59593e3ad10afef5f522b019ab43e07bdafee499a0a0e9bb24aba2e1cd13b2da611aecff694ca52931c1f39799a628d1005d554fdd43d0742c184d526d4d4a68c13d3a2c0c3cfaa84603736ce97c58489a556012b5b90b6e7de6d4d5db3e9ce6140d50f6841d820d96d6e379e63299f0ac4c8e1cbbca20f24aab2523c13aa6df3ae1622b036cc6de3f6969a64be8115f203bb3216a3e58b046aad96561b13d131ead4bc9836eb70bd597174f2ff47fe1f4c872c63ac3b8e9f29ecb5326db2651652d6d4a64ee70c46e3020914624b756362da662773f2b131d2519d261edd71b23758c29c446e7930bd0cb72fb355428506babf5bf92f0a0a80f98ee8626e78a5811a89b20c79d75af786f904fef39e73905c418c4c1ea1e39ff55743c08a7505046a2ec6703cc1208f18de75926b43a534c4a1ba1e8651b678f77d498f7e9c87e6e0d8c71073120e1778df2ac70987176ffcb3294c6d921d6430de3e92fd0eec0dde0b1412ae52fb8bd3033d82cb9932ce3167662b81649e3444ca9af9a0f6ed5835f03b2288387ff06f2862f67a19912cd349644dcb013393f3462c98c1614b372d95212dd218d67c04d0158775ef632232c70513816e95770be4e25e549df1aa7366c1e6289356d7e10d6b66f56a47d899faf7355df6fe852c7df61997e682010f6e61afe8d1de91458727dac1899e370d5b22c28d0eb7cbe0501aecb6eee9b19f25e9ab3fa7d9dcf12a77b7dd02f4ef57f23d75d875f142ad53062b62c22899ba79d64406e09861e75d463c7bc49f85602e863d628fcfb359c2f0185860b03ce2f26aeb3417ac08395eb08974f9c55e1ec1855881dac58be53ce9a5f92b47cc8d19c6f955d0836363cd1ff37d254298a3cdd042628e582374ffb14ecf06c39b8bb2555e7296b03863e2456c5b7e297ada6096454add8ef0a36ad7ae0744d42a80451335939c5243386349ee846fc4431934952771d82a075277e6c2d938f55d68cef5b5cd4dc0044f257b5535ba239b9f43863483b41be959558e9edc55611e1f02b0007cea95304ac03218fcceb3e3c7745e590edf131ff6fa60cd00766f238efa773f326afb2f139ae7d1dd46fd4d531e4789d41627e491b7ef244f2e6b678200ce2a8af7c5375ba5872c23c0b6531accb2c3f91aba0d6479c217a2bcd7874f7df171d805c01543cf2a0c93f489d14491afe4314b4aa36b66039670f6360f74160adc4b4327af17bc2ac6d7d5f6a34a198d1fffacda1d3935c2bcfae5fb45dd108c6af03bb06488db26828a3a7862dbc1f527a2137ec994bef854cf80c3cf39555bb3b7c4a0ee3bc7a0d358f7ef36b719e426e8a4bcf03b188ec24a5c6220ebdaecfb1bab7cc91e774e7fdcb708d5e35d3bf91c0ed8d73db143eb0bdc03b6c3037352188c03ce1194f7b8ab68a4b71684820a2e5e9cc9cfb011d700af6b7c42bc982c1ad7ea5689af741137a7c8a938716ec6a544e7b00562308923515b86bf7e1316f9b69e6c29fd328b700f7d1570e912c4bf069210ceddcd21b95e4005ae41539a58ac1e9741c8fdec9b164d52f1b3b6bfe52e9b830c67eb3844aa9707bbe26dbaab02c2defd1387ca34cda1047a2bc5ab2ba04242b3f74e5dcb1799cdbcb7872e6152efd52a3c38667947f67d634849863eb8ad595165490c069eaa133302d3e4e983772b9565212aa6fe28dce272ea14d4c8e4b6451acf4cb6e5738f5c5c76d62b11ee5272154197705102c5dd19164d16625d9a7d9fdf5f30b9429b52c254b32fded613843bafcbb2d602b4d3962050db54932f136c04b357889c8dcb914548836336f905910a5a479a38c6d3e9ef4467f759de116e1a940d5d2732368d75e1c38b8ac95718fa73d9f7f90d75126744643b3680bc70e75267773ebbb1216ff051362a12f81b1ce5da0a126c1462dbe0fcc06f7bbc331310e4f94981e920ed4f3479ec79e21693fa3a706e77bea4ae79d9d0d347144aec1efac65fea8b014774eae2a7959517d69519aa5a66a4ca16cc77ba8d2ddf8bb09c79e54f40eeb13216f23c3b5f404a4610f8666eefcadba8a8d5fcd8b563fa0765b125b16ddfa03e1bc79d4d9741dd23b4ca04bf8508a2ae458a0e3a1592a977b89946f32a32c7531b3781e6d53a8e8d81b71d3f1e2b569d9f1194941446f593d33b30f2017985d4174ef96e4076f3114bb1bf2d3c72586fcbfe786f844ecea902c831bd94e643bf90f30ed81554f400a44515b8ec3fcb1e3fb7ad547cd2dcee7d86cd638cd555d68a5e0cd95129b04faaf522d6d758fb6ac1f0c7849587a0b238db66d03c64a0dd4458e1503eeed2f2855ca1da426e0bb4d5c6445501e3a327bc346a7d6d8062af80536430449ced4348d9ada589903ba4e72c1644a840bcf1acc5e75b190687cc88c90779b15ffa4e8de5f656193b88a08c676252174a999803dec1c05ecff6e08e0c8d0b4f37f5f970eb80ac8f9835fc36e848cbfd853bf6297b07a30423e3aac34c9a8d10d00e45f75753055df2984593812cb0de622be3f74277b0b1ee339e7d59097cb08e04aef0d8607dc9a336c0688f406d3e2098a92f51de4795d61dae46a8e95e8f6ca6b0f0cf709fa8c26c90fd46f846f777be04f8712d310560e0ef7b5735652fa8691784eb9ad1e8bced38b7047a586cb73953f92834d705a969db20651ca079cd092d37d7f5d3c35248d7ac11298caf2d393a786b439dc7733fec9321d67b88fb4facfc1a3374c0c7c7f59f5a47aeab50f4deecc1b84373f4c0e3a219c80db1b8ca193bb5c053effe73c784bb10598f279d105a6eace9b45497836f9fc8442db8a262bcb5475bba7b17b42229d28fa0f65efb302bc70c8e41f942445e34548b21ab83b1f29cbb9d11a4eaf819fff1246b7de8e7b0488a3427cee8f9931527c3616a2f8ceb891ee8ce7f8b6ae5f920ec342e3b3bc453833e4a9b0d0c78fd34b3ac9b87c1da271eaf6c107db14ede48b4248bf6317c70e90f8037ffa4e61ab99a1414e7ab498afa1d908d878d65e68406544b075c0b9393b3c13722fcbc5c3ed330543ca1007667e5c70304f7a35d9a2e8a512fbd812b2974573ff317b81847f209fa1b70c512ffaf3fab664ab4f4521598f1857cc64b85801476fbf826083f60f1907b7f2bca44caa88a36693840d904704ef08b741518856f3fd24385e39e38db630386eb4cd436114e925dcfeedadc3559b3af1d00a2ddb2e3b65d8de879bfc2e6b4c6eace5d5afdfaa6fac5b605a70284a3693e9d83d1da2ed1d09a1ea65756fe5f18ce22570612425f468358ad4417bc004dda8ba231352282698abf25b713c65c02605ea2068edc71de121570677c46787d2453c28386addd2ac431a524d671c3380c3f2188919ad72434061d2c0cede347b6b17591d50b7ec9e88ede2c74ab1092f0b910c6dcad2328fa3c0c3fc9be7cbee32e5e0fa1473f10168e010351b797a08d6b0701500f5b441b30e7aa98b12a3e25e6a7faa5f6d3cd2c3d4423b2c69c13744c48f227afc0ac6621594fb4fbd1cebfaab50760d9c65aedd0d01096d0a98be85268db2d6fe2567893a8e2064f2a8c5cc43b907ed9b76cddb934d52d2cf89f00383e2b2a4d8adb647ad9c2b4e6fc03eb85e6c447d8c72273ada912706416a1acc8e9e4745a2547d58ae05bbd2d18170cb4f31687af7acf894243a6db2e4d044b5db6ad8d7f64940b200ef3abcbd5965e5a546ce76bc738ad7ec5f76ec741fc11bb74f272f5c8ff5a5cdeef135b803104c65d2c156282572c4a66726c2be4dd7855653d3ab90359c632f6e95f54cc6feb832cf11528726f3c9e6065d0c80a2c55651fdd7613739e2ce90fff9d972e1ac16f2d52ae659ffc9c74b891da441e35d6a743dfbc00dad79f4bc7cae4b60fa088487fb952723cc25867aec8728421750eb9f926972f8737240828db9e19fb50ab221a0b6eb4b79b2f7355fa00f8ca49ff593892d82384fa0a9b87a00059989963baa02ad08ceacc7ed019f2c5190d2a3069472e62e1cc3617db4a80213a6308ac56f7a886c10d8389f2a0bba83df2f68b52445366bde1d4d8e135ffa21b749dd0d1f33c382a293f0c1be732605dfcaefa6693fb567cce52b16e3713f889c33150f338ac1470e064cf4706e355953d7667b2dc74c08e96f9cbe03426dad5d93fd665f1cfa4b73655adf3cdf899cb6f1751d1d5ba2c1cc597703487ba78b53484e32ca5bc88f72068c1ee1078c4c46187de8d6333e1a62966eb9d31e4012454b71a4d61d7d2368adc346e7bbf6916c5efed000be86458e5e654a169f6bbdd74de8ed48e5caeb39a7b2faf94f001c1100935756a2548e4b1ed4e38c0eb53e82cffc3532bcaed1577c0a8d0ae805a3b7bd44dea0148fc5cb02ee28fc9abbcbd0e0bbff41d32a0383ca8914d4b15be171f08f01b8d742e9634efb5e6a770b6c981ed1ae0c66c3342b93c2d099dc9bcf3462c5572be9bfaa8ac5e6b549eb6e321712e6d937bfb9f4419295978f189f0e4117aabd85c640d38bd2b6785c1a4d4f8fed1fa33174999030844afea645f14b540c6b75d1a05802ae33fae5dac56e41abe7cc84a5aafbcf4e8c22ae6d53433aa14b74519a3c4aa28818a71f89a354940fd4eed40a50239de766e682da968af73798d2b02f06949d588ccca6c0effb97d113a39d9a9302dfd7d9506cc45bf48f1c60dffc9e87bc51be50e1bb223a0e4ec0feed4c26e24858b3cdca005bae6939d9256ee06fd00a6980a10c4e3796a88b52448077f5eb5caccddb700fcc4bb6f7d20da1033954a3e6af5bdc1d954d74cf0c51afe0989b1edadcb8ba63014b3c08f9719d9454f2e668d1a7833254ff8969edf8098fd2ffc9f67e12d7e740ed65c3377d644780ad7ad7693f9c6527e30ba4ef168d01bc54360ee75b36a07a6f71005991b3437886989a106fd518a1c64e18234eb6f96a6f8be01d7adacd942bae4e24fbb400ce5791f39ad5f7f1bb4f9b46e6161209957de8132ba90e79654a49b2d228545b895b494936d0d6766f3aff4d51c963cacb43076220ad93265e0a5e7d87750820e29e5a5ddc58915e8be1eab2df8d3c74a49b1c93285d850d0b535da159c5d952b51d8a8d20a31f9970a2c9080cf45565f7726a9dae6c192b3e67b5b5b82af6a34981770516b9a0cd925f2565816e045c25206461f71e95b33e880eaf8e0caea111cdea29e9d50b126a3db07abc23773495cda5751f1e94d49cf114d6ae415b10a03a442bd10543d9dbb9985ec27cc6f3c4f93d3c8c1c3a461d470e0c5a52c4c299f33e72ed41f68babfd39f3b34491e56a9980491a9f47b5036c39150381169ac48e0b428fb87ec18258edb8b0969e614236636a13da10e44da79f25c1eb8cad136d3927db0422bf23524c99d6bb42c476db9f27c2f85a4b3094a8f0b64fab7c136c9d011e861470e29432727837de1cb157368c3ea94424d2b71c541930b6745aee65692254dba4f0a12412210fdeddbc270a9940f3a77f144ceb206a4e76abd417cbf0c1bce577ce288f5ec7c1c2fdfb9ea42457c3a6b85968a7e6982639fb5c2d6eda0888b54a13364ee88f2dffb6f0b725f0e673ee5c271d4388878c25700b38d71e6a1cb4d03bf2d7234ddbe34c3086e51df27d688897f79b2c3a090940300b51e1a361d28bd09420282a66e3f2553409b09b44b11eb5335454a929a709c3a48dd6e61919f13c5741c623287307c3c6e95cc3012fbc896d73febeea214ff1074aca7275169a4abd79b7220266617f82f09c01f5d66d4335d64c5d2318d0c6da4316f85d46c9c5320bb375ea68a71ae8e8e44c896f8a0ac3d37caab346706cf7f84b9b3bc189b9e1baeec5b521662c6aee2ba72a25cbe9b76ba8f8e27d781585baebb623df0e197893217e4f19036a5df739f62f2388593f88f09dd731a113b0f429537e5eea953a923d2845871c46d4c2d3d1d47d2f51f4821694b06f7827351543c2b55df03885976d5f85800fa6fcf0ee16fcf290fb4540d18699e741fa1645eb3b6ed61370f4bb01533651342bedf2e4b596a6585a04054d128fc20cbb796aec5dcf04738e99e7450a9ba1c3aac715e784a73fd187bb26564c3d75f200462a03c6d2bfb68b3676ceabd65f0fa2f8e3946e64d18b12b976676c4f849aa48b6d5837d78a0214606ba63c196b8fa8557b9011711922b5426a2b687a182e9f4de3c3b9f8515f2a50927f20081c729badf505464d6c3721c1b09b7f77afdad136075efb92d31ca191959f2bb4f5376edc9194121b1455cdc34a13bc63bc731694ea12a0eb60216d6fe82a061fc33c2c962fccdf5588d3a67c776129955eb6945354f9aa3b79da3b58c3aaf76223fc6c7e95fea3e5571eb087fab14f21c7e6ca64c2c2e9d5e4eaf122f82e296b9353a7c6425d393ca40c9b2f2c4075351871e662c1a42d54efad2f0949b829e88f5838d495b5ccebb69e6ee03779d76e44aa8be00cddb912945b01149dbf994f2ad712acdb8cec0cdaa3ca4d6b29e0b37bb77064dc3425accfbcb6e7c8f639b2bc3c9d8a2bceac96eadae1381499d11c5c133c709ecbfbc3c7623fa6fcdd9827dd516e2588515947527b56bf4a4cbc4aa2ac165bde618e294443e6b1405992fa4768c57fbd71fcbccd0efbdee8a8c84b70dc6e20af249fcb462827cf1b4b1dd523758aeac9761e04e6505441302c12913fc4e79da790652d29fb745f18c305360ebdc09751ab906d2ed1bbe4bd068ad5b0961748218f9559400a1b55615872d6fc50c7c8c97b48ff0ceb481db961f49aefe3ea42ef3c5388657b17abe7f560c780e2874327f096a2e733409daf182cf25b8d88a13a44ef32d5b4a763200482dcb9501de10ccf6bf1380fd59044964224decb94a601152e8599a9a789fe3c016f3d0056f60962d10adbf74c651fa049cd2f255339dc44da94fd4768f405f91791a2287831648e86072872738ef73041ca1dd5d81a930085c4674ec5ff078f6984a4dde894981513a58bd4cb5091b064a59cd13011af16b0f75e9ce2c8e411917556506510a996d82d8f009e7aa35d01468e508f087b335205e42ec2f21fe58ddf775862b6bde977c3213f950a8cb11945f4e3001cbfbc9da3804f9adbdad92fc67e5f94a7d2cc7efb9f4b4d713d2a33c389daa841cd99a5e26afe4e9b8d09d308b9647466fa452e24eb7de6ba4bab3b99acc16c5fc2aca4e31487ccb15b362d2727fc360d46cba1935bff970f46cbda51197e4b7f920e5a6f84095b0cfd33a8e9302f3090c0d2e8c165bd88db218e291ac16941537aa8077d2da07ced9bdcadc14c2cc98b8a37a0cda96726df5b54bcb2d28d179759e69d8511d17efc1939b1ea62b21459e22d448657bd56ee48e566f5f6466719354da9c504f6fa350f6d821713311d8b3556614dcfa8f7c6410360abb16a0c2b26a626f530faffa64dfb7ddd055e192245da23052e242104a8ba2edd4667e8455f69e8e2124eb775ab04b55ca0f02adfbba5e7280c9255d9d58eb06b1a4794b9172616d86c0c51fa45a451af2a730903f6541c3b1fdcaee32421100a3c44354f92759dee781f87355c587d7b1a6b949e15cde1c15dc36fd883ad241a3459d47dc117bbf8fd356dccfbc2d3f314f4e08310e4a935917b1348b68d5db062d2e2451203d8b75754abb87eaf3f7dff85a77b1f77a00a6c7db7b551447d4530af765939f8b97d3a27772f1e438956b5be5d97e9a2001f2d68b6658f2d7714954912d23fcbe6464589d12304ff1f8ed015a2534053dd109b728c9d4179da3f1f4798884726208af5635ade3fe9698435bedcdfaaedd078c6adc91f1e6c6f322efb7574ca7472032b92e0a6b1de98a9fe49671b6a11beb56fb57491bdc693def1ee3d58303191c486349223aa79eba566604499f5120fc78929f7da7578bcfa2328af1c681b04abc5910bf0a31b8671f03d3df02b80caea05a0a08c22e926bc6c2a77b44225ca8c36d93cf7359233b845d67a96cf5630de9cd8eed6379a6eda5f6ec2e191de286943b2462d9ae3fc7807091827556d9461714a6e97a7c61899c0ec0261c77366957b36a3d5d4cbeb4ecf5bce258e18ccd76b0e81d3cd4a05782cd6bf4a0faf617ce4d1a19ab0379278c0f8b19bba01dc8740f52ce850d32591dfec7f91f7bdf4772e5ef89828f2c5498de97b2c0631c85186b685796c376e9f1b0b4101f32814824a2c207e904f10805dc5f61ebd15bef9cd17da02cd382462333643eaedfe38037055ea38602f1f298b9ef0f857141b59ad843a3e23fb9c0cea917ab7d687c6b70b1d0ca436d127a355366cf73b85b406a963faea9e43ac052d1084867d1b8ab5240015fc54acae5e33b0d0631a9367f03116bb28632da8c5a017d5568a60ac5be2165d3c7b7a9242c0b2d1ccdda8fdc8abab1c32a8e708900cb8800fbc357db946d791ffc3d5854adeeee69b8a8aab8ca8c7e4ac17f1028187710eab17b2d04e71f22873437cfb45781389a4aded3e8c592758819766f29a399feb31bc0e127e8654090b33d8324669531655daca194a9f84a5e0fd065b64a4e2e5169f6f64f02233e4ffb4e6b9b32919ba84c91d18389154312a45991198c254ecaa8a9148c09647b0639809500459a2b93b1c0e16f0d144b76cc7cab99a7e0d7bc39ced9f1dd960a3af633fb8e25ab9254d5b626b2c0c7b78493eb0fad06084a68eb8e65eac784895177954c049c47347b3b37586a2141dd9b68f401884ca10d6e79d121b32ec843a8f7ed56541fcdaa659f6657477db6f92c1739c6db44c8e270926ad68d7d15e1a9a213d6af56edcbd87e35b4e5d54b3c6a42373afce6094ce54574892ebcc360a10f93aa705020b66fd97fef77539086dcce5ddbff2877e37399fb20ff99286a90b4ddc17fd9dbebbdea412e7af767d3c9b819bf04cfae67d1f74a322f1647b6dde18f61a420caa820b22fbbf46d736e7659c0c37cc068495c05a13b8599f5f2607fb1425e8d9cacee9c78baf5fcaaf4c73d092cbe9ffbb935bee702ab245b48a9db7f2f9dd5297e2e4a04442d36ec709da0f605680d784bf50e402fc11111e71885a8021b9637d98e3e52b2b18bed28f2a228814a91c3fd5cf6a3e29045a0c87101ef9f35b72f32d95ae009e4e4decec20a2457a27c3e8c5a232b2ef6cd9ec10ce97d820761e18350a6d3937c54566e5599bce130687631eb4e3ae72a8c17463778051b9f993c3c9a1a05ad78049ebc74786943c2eb95acee6ad5671d677857876bcff679d224a4c2a3d1e5e794b4bf8ded4124b0b8ec75df8214f0a582eac4fad336102e1c66bb42b39ae574901c3f1b200e8db29f924344fcc31fd0b0306a1e0feb3254f1fdbcd7dac4e938e24a3438ba5d068955eb32ee11556ab7a380066135ff27d82519e87c7789cdd7e3b1db4708ba2fb3aab648e632154327790d148a06800ff30ac0f35ca526b59903f1d26bdc7eb56b794ce5ba0c409e83a9711f885821390584f41f6f6332b863980befc5f2da3e16d986b62c381786880f1ca78044bcd6491c8a37bb7e0dd718a2226c2770ab9a57e9927db19f306d634a2c2cf6244f7af6cbef6986db7810d9444f7566b2ad4dd9ff3ae2d0be24356af6bc7380082de9bcba7dbe40b3a53857a345c17b8f1fa5855e4329759b573aa498c6bd2958c92472411948922ef15fc51c755baf03c74ba7e25446225d3baf01ac8f26d47fb23e755ef3aced90ae6d32e8f7011addc0c8878ce1f3e283540e65f7a89066ee4ba914fb97ff7547ef7808e38acdecf75d5da79fcb656789a37000db2f5feb91740dab5f80d56093d0f58dfbac1b93d018bca4c707b5b0578ac7c2dbde106668e1f56450416b4b8378df159c1869704646dd86d972384c3c83bd33621c9a4c5adf07b995c529d51dab88d1cc9e45b734753c21f0f3be12d0eb86718bbebd63ba464a93834b55568656e02104ecbf64fd66db23c0398fa94e70704447c580ddd9c3cce2c9021fce0c75ff8762576fc23068b407be695649a614ab2e5b394b15e17708dc9b3923f1b8fcccf8002b7edf30eee12ee34f04512c65b1b7eeb29455c86094e9b236ceaf8e130d7d2a1f29d329ccfd0a69ae9bd234e5b92b58b415730f0a4908c48c4a662793c6c07c26d7b4482064c1210ed839aef952e835f7f2cb65fb851024ca6b15a48d1c03b6f7500e256a584284dec5aeec5adaae23166d2a5adb78a28f6986a05cc27398cbea8e7d95ae70a4134c6cb3f63ccf99b35f6c1cb3afadd601fc30bffae93b97c75428c9f0675e79f0b3d47afb374eb491a9b0148edbb69f3712d7f74c14b68777945f5ab8024af4ce87747d8105d48718b1ecdea87d1596bc8f4850f02ebd1a8faf4c12f9e1985b541b9dc3d42d3fb9f7ced401f98fd721cd29facf30e58790cfd5192062f309833fddd75542d1f51c0da1ea6dd4f18ff651e9e8bb6e34b95a22e8b30fe051215c0d0bb9100c080ffd34d555e339830b1f5c1b78b294b5232db045a34e8527ecfeec00921f399e096b4015f81cb4c8ed087466ee11b4b30ad22f7027b867453cfb3ccc68bd8f5d159acce1dd6cf9757b68aa9ed2fa90b02be26c09e29ea41012941cbbdc3b800299dc6f087e9635072989c56550cb95b290c6cdec11f906ab575a44225d9262f01594c8c531f6a745a8ae34c81dc4e31c1edf0cea152408382d0395dd401dffbaaefb4330b09e961f534cde01c2f49fe0621a649f9073db3b282d7abb8e8196a52049326332a8ab4b5b174d05f078038bb81a0006759e88987016fdf97b06d38635edc2ea692a8d43e8b0edfdc0ce88a8ceb04bb4318614e82a1535ad8c504966d695914363cd8f81b51d155e95f0b8e0494c23e7cb10ba72617be2122adf477aed1cb1d61ffe43e965b681f338a140e4a7781d62132fa393512025bcd8b20abd33e47c867aab21e29f9f8b8668580b291b1ab6919f5fca6ab2fdfdb84fd1b1211e6814e4fc2011302201bb8e53a49b5cb510b3f07d82e3d9064216069f9af2441e090a05d6b5c81340b12d535af92f59c6db6be64aee38dad50f2b6456058971c57214c0de3681719bf9ad1aa0adfe6a62630bd9fec79dd2f8a6fa918c5b199b759c83ed97d3db0ea8e6a07f3e72f456b186e1264ad287c980ea5a8ecea43dccae430eec27fc903f84892ef953eb0fe9ae8e7f01a4b8f182ea1d609a40874ece570d4b1ae34f026836eb691dc3ae856fe300717dbd8d46d65e681badff9fb12d3b810cf6ec473ed00b5ba2bd4085385f61c0924872c087987d90d7a7a1866ad7d453a9546699177aedf580ab2061140da4fb2029d6305899009aff4683eb19768f09f9b9e2f4fff993d9b9146865a8215097fe89d4d341759072ec0ced090632c2c0d301c5163cc1ecc8f9479f94dc8d650f8e8ae50887a9b28764e8b3e75bf2af43a91210acbba1ae9d4aec6865774b4a2526e031bf1a08428ca7913ce3d3f4f78fa5a438d12ab36c34c56bdbed1e43023ecf994f879b1a7a9a3bce12fc11fbef7d75d416ccb92e359afd3baed252a1b0409d00371b7366fe7bf44e9c6f083d5fe90cfb21e8370e3e04f88437ff4e50b301aada6c97e840d4052a2e129e5b429bc358b35dab8fcb72f5e0ad27e8bdef824068a4224e4e10925f3c52f580018e502d16377bc561df5c8b0c0cfdc429fa480c1194e4d8795fa978ab8933e49699838491c559600acba99718c988ad39e6f575404050e1ce8e10dfe2416ee05a7e97e60f493e0c34aea6c2d1e9ddf63b189305aa3c50330ff84b0330e7317e3670b9195d9827c4cbfbf21c44c9262add2b38729c048d8b197af54a385a434b9665c77f30561dfc2bb36427839e41ca3e23aece7baa44d158823522762f87754e0fc8ed99abd76cb399f64fe76c0ee1760423467d7d33d3db73feacb4e0fc59a1f2724feb11ee4b2606802a7eacb04122fef9981a3a7c7710dcf84d196deff00c3736941bf35da6b64f3051612162781e274a9438b5a1a6e787b06cd2749668335a2b0f2176f2ddb2538dca08efd862ce2bb8055f73b3dce64d8cbdd9bad316280edd3f058bd75658ceb1ef14f6e23d9864cc169b40a6a5fc15f5f99eb9bffbfcb5bca81124a697604fd8fc702c91180137faa92ca5cfd6fcd5a1d99c0ad7c83bd401058ad22dce85da29a8cb1c49e8ff5a80448298e5d73515e8acec76c465a031616ca17dc7e48ffb128c7340b7c2e6a85f06ec98137c89e3270045a27f2ecdd0ab0eeb0e96e433fa53bed63d866965263ee8c09d233e9d7b1fa1e0948e5d44311410806cd64343b35a206a049279a1904b82e6cbbceb18c95d52bed4abb33e2783f06956d5af5294fb52e7d711d9c6f5db7a15b13ddeffe19f0154709db041e485af43fc186bfdf64e539ad55ebcbafdca04130562cde5921282e42ef2e63fc15a5bd843bffb46514bb446f30a9d4b16a985b8d2c427bdd4b9ee2d3d1959e0e4ba518e83c8ea90f53c369f3f5ac4c839fa010294ebfea3abb3972f9d80b0152fe353eba9b5feef8c198201ec1f9596b8da2bc9ec6f2ad3f1820e9143da81da3a02cce22928a1adc6577d28f1ec4efea3334831aefa65cc54cacad7e766a6e66409d8bbc1000afab8aed1fff38cf84dbf625a3e7c2958cc31c17223614faa2a9cfa862796310106bacca00bbf808a74a6b0a4283e14f46cba42d474bd87e8780ab6eba5237f32737a39ea76a238facd9c7d53c08177b741fbe4c7b424f3b949b87e8cda06d3085be57dedc80683dba265f61693b45b630046d49406de4afd49e398c37c900b3c0ca6b0e147fcb9c1fda51c35b9d9ad371c5b9bcd9f30250356cacb5e4ac8f46d76670e545423df2c2a153dbd4cff5379383b6e5e4d0608f445d77c170c921568048e43433a51564f822100f26a5f410a50acd8bd27840da38e930ae32cca0bedf45c13e1989daebe7053ef2ec089e61dc57c38175cbbc4f740f82f934022899ab7e6135657e8ccd4d82d23fccaced8753d4ba0e2fb0704b8d800aff91af0cd6b37a1e647bdbba85b401666ec6b670b5914fb0ab0e095fdd7bf7b7633949e23827dbf56cb9147345e9ca57ef51796d3789b6178b565246fccfcb895423d51abe0e17c135d0231bbb335a30bd0d799628dd9e446189c563b567ffb4ee4e80cf9484a5fdcf5494b858cd1364cc1e129078964b2e9edd3653e4c360dfdace254fff1705e47dce447804a2f38ff73664f93d91f31162f93a5dd310519269e7c05dd2f9302487dec4995aee371fbf8fc90fda243b1858060548b08471697f991e30e8495901adb907b124a5fa12ee77987f54b8f617117f7af902454be35a0ffa2c9673d6855026ebbe174b679b51276ac591996ef48b208820a555d650f517e698ca54d1e7c5865df247a108b639c194e8774038022eb4ec68e10295ccf68e0d71646583ed0fbaa4830f590626a0f9df5d97eaa2734b09adf35f6ac5c906ac26f32b8dda70382009f75df353abeafdcce97c3f164c0e43aeebe6b6f7627675caa1be79937560585c4b7f35a05c06f31f09b19c25127b2fec09badb329b6c45a8849ab9b19204ed23dd0712d150b4e4782f985ebc22d636657eb6e89c009bfa9d3665567fd3b27e83e8be18cd3161dfdf211befee629c365ca59085b694030f510400640fa564f7942f9bc012c3a6109b8ff35c6ce5f63039e7e6cc7999e95c2c6c6c9deef69e9aa30d50a3a33a67f9af6d08b7eee7de6c36d9724478394596ec744302a26d8a26a65e2adf60147b33d1acd8dc009b24869992b47c27b9d2bbceab8234cb4c8ab17ab601d77bf4a2410d8106104e2e18b119b736126144deb551722496991aec3a66dd8727391d8011b98589f7574d634df896aaec4d4a5c1e89f569fda60e885b5da4d9b5940ac4033082ed6e172a48e92dc00bbfeb0f6bff0c7ffe8f9eababdf58363b20ba17a9704d039446465c5984301184aafc7cae264e2b3223221ac717f3e2ce40d5026fed31164690585a1b07ff327d5b599e8452d023a9e3aeca6819e61a2c5f1170093e9488720f376307f40f1ae8c93d5ee8760f585fc2cec9302445d9b15a303060b41003a35622195f927734c7574210f269418baadbc76e3981b220fe249b34ba8dbe5dd3a8d08b7daaa71b69eda3263e8a820208a93e470f3ab86259989ffc84062533db7efdc24e488c7f368606187bf140c0673e3c7395419e781c23e904aa7c3074cea83de93eab290f83ed423bde696729403d5ed2ec698070c30a03afe3aa2f54c4cbe54bc94f0e632a3994a0e4701efdfe9aebe692830be36a70af01527ffd321eadb8a82473d3fb6f5956e4d444ff2cd16a71b2b65af771b063662fc09347ad9a447bb15eba9bd851b22dc8501c828272618210722bcb56d183da294c7d282c9346f1b802e73da005ce102164cec57cbbdd5bfdc44583a901c5fc8d4047d0386c789fa2dd7bc40b3481d03b61d566f7b98d80b17759551a4edc7b57467e25651881b4f131e48ede8119e78adb3addc79676042ab078b2cb15e713cec206f7c409c5081b7a81bbdb144bd871ffef131fd0f1c12d5d6bf7b74d4dcf386b2ecbfc0a3cd7f84fc33d72da33dc4e4be1ccd05181148d58e7a3ebd238573ef32bad3fbe20ef4fbaca547ab7b0fe82180151b0fe0a27146730c9e8e4f03d12b4ef97b215a11c2d8dbdf7018017a66f44d38ef7af32941a6264cdc945b9aa9d1c9bd619198c9c3464c3093382a31f49889059c36d97c7cf8323af374fa1545fa0c7ad0f56dd1f992fe557f48a096f2a846eff5610009eff02e5b47f5f2c9a145f01ac3ffa5d2e0208e255eaf289705a411613da955fedc2e3d1029806bce64cee7af078cedf0639bc3fea92d08054a6b469d22c3c11b1f5d101765f02ad327fc7cab4429c2efca1daf6bc92662acca90f0c112b13a90e9cabaf1528adf565fbd349464fdae03ecbe65d47d2fccd101021bddb6e2ee2fb445c1737a7379341a898b2950abdc787800f15dec70658f9894c25439d566da0e43170656480079db90e683c71b723f119feb391a2ccb2e614dbc57d4d775087ecd46ba697eb9b8a68328596ad0e082c8f699016804276ef7c6ccfe559189526b0fc6d042b57c54f3ffa5acca9a6e516f66d9aa67cd3f797da229fe73360643ef07dfd73c028d8bb57af32d51ee125c14f0d801267a9e85961b09b6e8aeb0a5282b9c12bfb9d064c9be55fcb1756b19ea3188bf7c9ed9308959fe9ca817f7dcb5fafc492c30aab93e40354820c7d02b0aff94097dbe489dab050911ae0199a7949eaa3718746120664fab30432d02b09f6cbf7f78d3f00170202969c416f6477294153d29b49ce9431ec539207f6f5e39bfcd3ce772484f0207bbe6a806d88af9695db2f91f7dc2342c11b17f840f6b32d0a399c80ac1b727ea6e4090a1c22a31cb1ff6f8eeb506f09158d4b7174ec48290903ae8c4c21d3e0846582f65608b235e705f97053938f0de8ccfaa7b29c00cbc039f07dc42aeea0d14f45d5c19a8e085972065ce728866e6db097abe0c2562790f860966123eebbdfb4535f567d003ea0dc32aee2b9c340eca16d1333859fe8537701cddaca12bf32ff9b03e22ce574beced3947a76136c99bed1d36433d2908ac2a5d9c87a562a3aca243b047b60130bed846793577516876a202a1639b984860339309d045372939bc8f0a81b410260ebe1090d0fe09120bf89b1f85d46a1b68b2e0cdcdd906d247a4692aed5b13d3331a69e9f0bb254224094214f12bccec2a950b12baf3805eeafb88c071b6c0ede80fb1c67a6d8f3fb89e9293fc6473668ad25b028ebc65f37f0a7376896db7958c1f0a6f75ca780dde8a3a777b7a3cf1b7f230655c16b368dd6acf4858a087e516e1b2a98985d9f505e81d8c00aa7c51498e3b9771ac591d78006241c9c3a5d141ae582a681e6f77ee7f4121cfe44f90c18914eafd35ad040174dadb2c8a49dc4caef6009b033c1d2e1be1402ed4c58f7fc1609c64f1a84ea7793fa6f24ae8fa51f6a88263f7c981031e7015047ed909936c7a7b147a062866cfdd430fdb542c548dc4dd88f4525a75e07375a4c2d7eac7aa027c75d8fd283dcaccf96b735b7308b5d5563bbade43ff1230c7949d70251f788d681f45a39525808fcf308d936506b08c4838ae85ad96000923bde1701154c9c873848c9a93b22bc0f034bd9211c187535c34f79c72f455625b95946ecab2fdac296567abd2e0a81da0d7662cd6161c11f454b4d41964bcc84c349c55fda3b8314f731eda5d7f37337268b72fd3ef7ea043a38265843683769eb0efdeb412a172d60a296a599f806980f09f6d93cf12773ac3246989896e570b965247cdcb7e3937bf49874fd199567bdb15c67ee4deeaaecedcc282e8b50641555b155e40926783865a83c1ddf88bdbf5921e7c66667ddcb693b46805f9e4129bfc1a221363a3be897850e9565a975c8318b2871aeae64c9fd1268dfa5704fc7dadc61b19ddb0af2982c60c8f0716232231ffa4664ac950f427cdec8bf81528c8c1bacef40506a36e4fd60736b787766aff81ea39e38fa08d13b2d80185a63bfa84c0b70d37885b26521045c9623f91b448af7953ba90ce376fc8bd9faca9925181f594ad9b22111889e1291a596980f9b04d3318557a0e4768b0dcb110f45d10b5c941e1ef7fdec8112aa8483a754958633ca05934ac12f9a8168f116ac08372f1672cdd599e287d8f77a7aae072d35b8caf848d5394cd834b8ecd46fa03c1d239fa65ce504aa90b314576afa22cd9a95c7fc50125ac6bedb1836e9005bf63fa84956cedc9fbe8496a6a1e0c8509f2d6725175f880af7c297191d68c3ec99522477aadec5c0a48be2b7db05a47618e701f8c2d6f4917371ba38eecdf86fd155f3e708d1941bf21fdedcf7e0057ab571a99df61733a669de6da98e5d4f5556ceb7b6fecba9fd27bbef1582765b4562bf2cc4b670ac168868a17cd9bea163d539aa5ee9e23eae7fb9caa257eb679ccb13e2d71d9ab91809156cee74b92084a55c200487bb18b1701ae6fa04b4173ed514af586d95b084cd354f70ead8d9984d6abeec49664e7e074e719c7897a00657b27d59e5a26d3550bc2b03d98192471d8112238e8d735b93e80cffc7ee8eefbe9ff4f00fb1ade6d3d3b360dcae2740d2ffecda8032e270df7880b8f7525f29bde656eab036189f97d9e94a0f1786c6aa05530e976662a9585dd8532ccdbbb8769022282b6cdaa573ae4460bc95df22f87eb5613c2c65d3136f1b7c7e7fbda87bdd11890bcc7d69b7d7d869b25d6f8705f899f8c626b5deb2ce705ef4698025cb468cd51bf1728cb0032ceb00c102a0d01763cdc8992f608551b6403beba5c9e4fec555d44d3843cf826d9a7cd4572416f80ae9f453f9440df8de6f24b4c6b95f7effa191a4715bd129fe9a8393d93143768b5f44ecd026b37584e63d7d15647eb316c3803da66369ced2483bcac87796f0174babb45317b96058a78a13353b78c543807dcf379bbeb87dbfd12d1304e7b046fc1142578c58b216309b3801ea536f3b6c77475796b09e7a866a2b3d1dade70318bd55d52df5f62e0e02ee1ff4950c382be2c27dff21cff0c334722a918711659803bb641d731a54a5b819a92f23b5192f0a548422295b4614b315c94c90e071809ffaf2ea6127bd4c0c5fc559c289cd7f557338a76e0380f9598af77749a4dfdf9e1b508c93a56bedf82786e4e3e2064026b824ee6e335fd3b9b3f42ca92efc90e5dcefb86f9e004f6b2504ec7942e291bdf8af59a755170d83d3566c1ac056b1f91a65ad259aeab18632b761e13df0e94b419d51b681eb2e35e373076cca6b38fce2831b1951628cbc7d6be806b677e2c55eef3511f450db03f90f04ed64ea361ae96c13be6044822faca55bb593f703fc5b1c64dd26d1b86a649cb41b7bd47b0c7b3e5ac31419c98acdf98dad9ad610bb4fb103176d004760256a05af789b8b0ee3c6c1e148e95f346c3223e490378621573fbe54637f72acc42632e0b1e430256433725134d2b7093819799ae15bd3ad0e05697c8f4232bee8d142b9f1704f0d01fb2c694ab44ea0d74ac1fe3b6268fe8ac858a1e9a50e1dd9be4c1001532c2a429a2430b001bbf0b139ba2ff4b6c59e4a3cbb7c38815fbf7204ee23accaea5750e24d7e32f8fd56ebcb9d406c0fcd6e4f9e6ef62bc820353ff59e8879f1bfc3ed81322c33cc75cd9ad73516fe2f5105f1b83f8998d74e14236d5b42367ee6c9c9d1d6a24cf2fb8231f1d8361152edc95832fc3595528975245ac425741a08d20f75ad6525789c7746a871c51ff42ab174d91955cb05e83199bfaddc01063dfba92b59853cd70e2a28846dd89b4f3fa9ab336b476de7eaa009c9fd0a20cce1dab9b47cfa031c0ad1c91ec6fb54297c0ca41189cc4b0c89ecc92e267a7dabf6efb3fb77c61d39172880eedafdc88c7558d3cb162bc5b75b0e9b0dea544eb3abf9ae3c4f347bcd2f164af80f8fe747fb15184f46cdf5776a2513e171448b8b0d16788b645e3d64f0ae9ddd7ec472550b29801e8ee68651aec5024ac0979fb878072d505430f627228aac4c4e1f9491b50469b45abc3b86ab1962ce6ca43079fd926271f00d8ad9c77b9601cbebb644ce8235b5039b01ceaac7d7e9f5d8c9b518e3c85ffde64062043f72524edfb8cd887cae24c5b86fc4e3974526d4cdfe661b709d8f7f3a9e8d756a3fed347af4737c7588ea67c79f6222fc45dc521cca5803c73a4f9c8a0b5fb2547c0d47924ff507495304a34a6e3836b83734212f4985b8b7b4a8a4d5cf66d6bda3715e8aaaee1dafd8e62b1214ac33c46ba99794b5f59714f35862a0e83b97c6158d09db5fa29e078449126dd294e26cb76d26889a13a4e0ae4fb51488c1446dd9d7a37a55889fd76a3f99fb7cc4bfb1cbfe6d4b958a9e371b9ac82502999e84dcd9bade1caa49a59919b79e77ff2320847cec04d1aca7df09d6c11d783ffae068f99ba2000707c669a0526cfac1ce2aecaf52912952954078ccc22d4d9b39be9d04de10b72f0b2c09595bad48b38625173b4c075166a9ade726c5869612cbb92a376644420468de4e1f701b5819d19c7fa612c32a1d35d5df4e7f691879e698df1d4f5607d85248c6ed7690095cab7e292d58dab62da5cad1df94526bf7e5b4666c25a1e099032d9b3dc4d71005e0d2d83ec126cba52daabee393d988528271d94819e6d489c2a846a2181d10ddf5c47da2e047d0ecd4260dc50b6208f8c820a70914e34486d9709444bfb9cc4129bd995bfa1ac8efdb09e833e251be3c3230d55e0f8d7f79e1dd92540d7f4f66fcc7a37def34eb4a1de8c402adc3c46d5a531fc5b13de696a7c287d4e015bb438ccf29482cd60f1311a7452b52a2f32897fa4f78a9a1832152afb6022c896db9177ef9a9511b175394f1bb441f2a8127b677c58ecbd1cafc4cc6de77d03abf5579da5626d8e4c9682f5b97615e7ff3a8203dbc0957414720ad0e048e5ad6fbe98b30c779fc9f608fa8c3d0c083028c5342bb238bfa3516f427f9d5bd55bc85d82630e72aa6460818c9adcb94cc82dedbbc80186d29d812ed05beeeba3d459cea8a81cadfceb5d691fb49ce4a935adf1ae3f4165c27d6e5bdc18155f6772c96bb5ae074999619bd56e418200a4f5506fa2c9d49f00f65bdad2a48e4caaba620e33379694b5421540ae92826bba9bf268df3f805b643a94ecf2214dc79216f5af26ae0302cb96e0428b50f7b17a0fa109527f707b873e051372a0003e5c659b9fc61aa01ed43e517e1adc05bd42e563a380fb1d8152a2c5e51557cc63140c286333a5b076d0860de41f2da20801c4d2eed6575d5ae2660158b87a0803d60690138a3a94cfdf4376e91e4ceefa7733f85dfe669e07d0ca72907b188dfea3f64b1904c1849c6436d7d804049e060750700056d43dbca6476ebee985c7a29f22129567a5db0c73ac67f4fb3d144c43243b5e2c0a26b9df3b75b248c7a2096aea23acf7d9465644b5e53a4024b9bcec119291e03616d5d4c7d4400595d355cdb4e1f85a94ff932255de52458bc9c0fd146cf777ee602e73921db66000be5a771474e31ae03a829039763438cb7014e81b4cc7fc532d8128b58c9d13bbefe0215c98dfabd4df5b2ec0104b0258364595f1525b4bb15cea8fa5b827261e5091eb1cefdb58e4119ac8d9fd79046ef9c0f81c962bcb35b149fb3e291046ec3eebf1ebc35530ef200b69c8e184ede31e6c7b50ef6a6642e6a941d8eef9f5e0e73caa37b422b909502b588faa604f08a4e846a283567e347c308ce51b0da007a9bfbaf028d6e0c9b5bd89481cd0673b8ea4863c94865a4399f3bfaa86291e9a15507625abce67c1419f5b8da9d875fa4f5454f51ce7080a7745cc6ffea040d01374f92767d311778a8a03624894cffbca4353d300daf85d36098e6a4e05bf94d786cf28fb07bdc6e26db2e8de0b59bb83eb1e408c790a52aa18cc74453a2f9436304dfd405ca7613b9b0e6087241b684b5eaec7da15c581b2a0631b1420aa3852a866601b6bae606dfdf0bee404fdd3dea0b14225d7f8f7e88167c8ca7377baa3e9338236f51c9bcc9db1c24267a247d3bd4d2263a97b368167393680e5ca6c39d344b9ab6dad04b2f4aff6c7226d08076161b7db2ce00f294d18ef6653c9718e16be884e37fa314d39d59ec8a50788848e395af4dfddc90ada40d115f64a63fe78773665539275d45c91ec2d1ab5a82d2329b762e68f81a04b865977c4e851239891a32b680b48a6c498edd9227c1ecc834196f4e0451913d4eb461a8f12af65e9d726704241ea188105eec176fb8a19ad2a46779b939505e69676371a081b07be6c8d7110a6f1b353e18feb96f5d648d078a49278cbd095054a4d71321a27af7acad43956a1b16fa1ec8910b92e45e6dd5bee25e55de74e1215564ff65aa7a1633ddec96fbbbdf8322e35dbae97410610a435f478f1608188fee29c783844afd8199ee3efcbc11c78acfc0e95c806af80ede977dd5034fa9dce917e0a0e4876bbd6fc0dd43f10fbaf387cc83329da006965ea7d6851c74fda161009ce79f86952368b9d4eb522418b00abdf688ec46912cd261342dd72721c53b1cbb6c1f2a7b53b6d8b7e0c8b8ff81aa621479054b31d76e33558adb3d687adbbb77af3e4dc028dda0fa14fe102639840ec571092def5b5c7b2d9cae3bb251d6d1cb84fc31a86901afa410b6abfee640b60de6c5ffe64739e35de058fbd510110ac2d72db9eee0c4915558cca163c104d57c0b1ff8201edcd38ffec38ba666bc1388ef44366149794a53f79aa1dd2f7ac66eebb1a18b8952aa8e46dae4df126af15412c6533f561504fd54e9d1daeb9a50b65a481d1aa1edcbc097f91d7f42b332e6a04f8b37737d0617736eec0dd92f785a68c7f6eba443f4e9e8d1b79348e60f73560d5ccb16307889b9e50a4c72d3aed01e1cc5262909519cef69a61ca00428698cd306c88ffafbc6ae60d4d85fa3e368510fc0a1e067f3b04b60b0f3f727c4ea51c290a160eee0d501b6d7c061c7add0232ee33eb0632bb53fd5ba02bf65dbc11422782ad0c1cc7871cd8eb7b9e7e5cca0464a8b4db342c2d055b4eb262f41de625b25cc99e292c069385dd0e0d4dcc36bff932d07ec10a4b00d782f872d6fe4bca295e29c7c5ed97d7ecc9eb7ae0c6626f355ad9ca569901e59a8f4efc2ce0dd893673d566e6fcaab76c13db7ba6559ae618bb739a839dd842856ca187d93ebf8d553fcd43b8ec6f1a0e608d3a89f6d13650ff562e778d4246885b2473af6b82971b170e4be5ca6b106a0c8b87a721df29be013d2a3506ce0df06837edb3208c85c773a19f23cef382c2172700686b07234bf052110da390d3cdfbf78ba9ff89a33fc9df644237d6c308606456f6c26de5b60a9f288e6ee3d1c3bf837685029e69c08c61a42859adc2dd3850b552cbba40ab357a04f73e317605c0f3440c831135e14c63b4f36c54f20ef9a73f2a43ee95248bf5a1cf34ee83ae9a98b847e3f37b59c09abda19b7c3269395c035e48fe83afdf8e041cf8499ce17801d9fb327f7ebc31306c515931ea0f80ea9a5249dee5fd1ce021f1362c6e61efdb7e7ebc879e3ed78cef69720c6488d15a7a3e1a2e70085417b8e47e579bba52d0004ada17117581ae6f35eb5c30b975b230573b54b821c4ba6a221d6340a6eb57781b063aadb3ece343695c86186cb3034ad0c8d121063fac6a04abfd97dba60435f5621a0677725acfa23e7778854be174d1f988fcccb7a5517f9ca67bdbc29e77005960804a51548105d47784387c62959420cd8543a2a5bcf5f9ae52249592d3f37f42da889dd2683d3ddfd25903a2368fd4d0348f3fbc80199080cfabe7733ed22cc7e016c06dd9609801820a486735e479a2f0814edebacc96fca87e7a37d55efb6ab321810c7256177ba74a58acc8643f17fdb52280a6aa3245d52bead6715e1f10dcef8a0d1ede6bd3c02ab379b7e3945c148fb9066ef65298899474776db9775fce86b3d544dedf675274f33fd6d09ef1b33591308e8d618dc6856d584d02bc46ac30f6d36d512bdbd28e51acf0fc48f0cc2a713a7d15ba7d5614ff28af2a38ba647a1f85fdc56f40e0865d723a5d83d840dfaa5b9a3af0d13678dcd341b9e7af3ec57c8857d34d68e7e1eb413c6be0c2ab6f0b65b11572ac31eaaef378d8ac38bd76643e2dffefcc0b4dee92c605ada8f9a8b044c6059bc8259217dbe239c0e7ee021569f429a85beea6635b0764a3318fab4f4623bb2a84680439210f64a800804e8a655bd8c58b30fa9c65c25e55e3a792c9de447b835a3a64632435116d71f733f2205bb6198218a9cebb593a22c55c0a29e6e39c10ca9576f53b7be2b35ce6ca5569d0ff15a9833b997829940abb68ae170d4d62829765e302c96e9ccd5b7407b96a0f06bd423bdde6cf3f79cdc42b483976c296049ad1d96907f82bc1d3751bce439e62ef27afc6c937145494bfb0f78ae7dcceab3800181a43b1854ca016568de8e25c7e34aa7179d179d0bc7fb10ecc0f423fec356ba3c983aee3a5339db938d67af0b694ea225f97e3a2b0b438004c323c5eda86d39be3bbb72c0004b13f29bf3afdfd014a4b93d64bb2bdd522432b6c68d32bb56c92285e0abc79219b7237ac880c63a6e79204eae783fe9bd68251a0b9bdbfa68f722bddc2a550443800c8fb0ffea949f2233ea6d16a2f7fbde6416bc5257087a9a42c0aa4c781da59907774af313a98695051276900604ec0f7769a5a18b46196c04dd3f4b1b4f3267f62f4c54d895d6ba0bd3dae166a8145fbf3310eb925a65c2de9efafea97b9c5bd1c64a9b91ddc65d01a95ccd066a5186619c780150ec552df93a47670505e9061a21dc4bd367f05da079024af0c6dfb265d36c16a1cb7e204c93789a91128a04dff99d054722796e768384ad34e51aba6124fb2e30cc63e5e9385a236648c3d831a1c12df6f05037dd26a5c4b7a7b22b9a484f96fa2f9186f47aeec76e432e1482107ef114ea376ae507bca1132d4a51790aa8fb2ea80bb935eda65f6d8d13647c8353520615807817749a60ebcecb57c649abaa9fbf718008a1ee42dc522ea9835f1ec179ee7f725c62438124b8fc4f99894edcfd6ed89ff410a4192e36791686491c1356da57547acfe489f4860fe32de68c4f519dc89b977bda7dad4a60dbaee3ad386084206fba428f884fed3aa3e6ae7040063f59e7917324c54f9ddeee230316fc324a79e52b77e3816042357f992e5b8f149bc29c11bf9b3833b7f1d1b395167c896ba1d81c652b8701902fe9e3faa7dbd978b97489d83d35a20bf44811bc291b2309c9c30d8a2a267f87e2e4ea3f198b93e9799cd832aa3ea75dcdb17c4f6aed1ea70db7799bf09668b7f1a987d6bb11fe4bb1a981d49a34230298a61cab3cf9537f0e44f455caa76e9b760a9b33e1b502731784a8ecdbbbb3e0024efce92440138502d90eb1e00a69baab273a096cf363bebb3e2a40c8d0052caaa1aa286e8e5fb3bbb84605f6839bf62ed31a6eba3ba6ce25529ebd4f2167b9efe50d9568eae450170ef605f66e059ce39962705254b0195b48723b92801cfd1cc6eb3a555fe2f464b7f3c181dff9d3cf3d906e209424d025c14d135a71d3471ffe094ce02f93945f4cbbc8dafc123fbc20f32a8a7e92889d4020e4378bfd4807179663409e7817d00467e39e96a696ab0c385cb3305b083a1afb55cb2be6221ad61ddadedc6c124ffc0223240bc695b820bccfef74c66dfc681b6ad893dae42941b9e7c4b1c560940cf8b9ed918981956cfdb07c48cf6ff8a0564f5994346d537482e10811ad2519f763ae590489ee6679fbb6297219a9f44eb2b3b60a492142a9e5184246864045a36c281df14be0878efc3544ebe5f93052bc7dbbd87fb3f2031de638166c7f45d1f98b51719e4c7092acf819217b0c1f640cf1b5515cfb9d37a0bed4dcba50a19fcd259736b6bfdd5b84e0fdf98b178ea71415e46c327e07778ddc58b45afc738d431a9e3420a0e130350d724ff9023c7e32c6f901f1bf24450c4e3a915952563a62c0dcdb1db199c5d7c72cdff441ffa7d2fc46253bce07445bdd1032c8be4d07860fdfcb8201c26794658aedc9f6b0185503ee61355035425ade7e22b40ee188e478571b6d6427c8af303c6db7a46b6155a496e0d06ff0c7a4a1bddb60eddda0c60eea269f22b3acf73f6b41e1e67ad6ba82b4eb30454d7f6c1d1312f645a1afcc1d3859010b418e5d4a22f863733254f232f56871897700658e6ba6b97e1a9e9fcf5145af7a58fb13585a8e82f2e2eaa07bbca5640389e4f670d41e6db9b6a42b2a724a397e37a2be6c3fc35155cc66f5e5de333549b4eb017bb4b8607b9001bc1ccf0addf0c558e6c564c945408fc94517efd1711edcc9904d9d0f062d7089c987c450a53df48de097ee51b0b6b2da0614ce55c8589de740e55d15037555efef0b0244d53d5f180a8f4a7e96a7bf478811eab827848e7edf202c42317ac42da07be4d7b467acb7148c7e758275fa8640e5837323db11604d7389780a3af93d3492144dc00a66541ea26d27306c71c1b3bdff6220c3aa9367a40223890214359822e58868f1196b8350a03849390a3161cc8b60c0dfb10a8c60067ee94d4856fc948ee2f619863d781a20394fefbc1afb68299611b38e99a35aef1257dc7a15ea91889440da182c5f730927960304cbc84f16ca619e1c382f62dc82313b8edf3afb624ccd93b58eec2048b4d5872a7fd12bba4ee3e18a47879f74544c9573e6a2b2d59020d8f81b8e8ddae9110d59ec8e324361ebd7e7927e1d5c0d9806209c81075a23ea5a6cd3b132dfc053477496ac4c98196d655cc2f7b233cf5122b02fd9bb739ed43b02a41f0fbdc2b05a2dc1d6a09313963ef35a69298cdabf6750ccb2ae9a26723b36c238061124e1a61918dcce5d6aedc342fa37def897a45b8239eb464e0db82057c615979e8350e2453d59cdf09683dec16e0fb3f97318c8726f2595fe22435a1437fba171866b30ff0636f1ed27902ac730531cad272d9cf70b1a04e0b1653d37b2358346c7f8107dcdf967612604d8775c0415d0149a938836a6fc9fbf48aab8f90eeff59b67a940eca6271657006a6c80564226c3473a1632c0233a3bc7fbca67a4ccaed7933a5d83fc71e80aff69c386240279f971b9de4d41f8f53dbe49952f4d92e93d0436aa69aa9b31d62c6f57a34b8fdc1f83bb1bb0d36a4fbc2519c5ce162bce4f37273a9594fc566879697a203b97becd071d17325927430584f1f29abdcabc5d602f2c9dc57d09a4d2183d64b6998230c5bf12f78746ebea957dd775783253188c0b5c839cd7fa5c69c6639f7f27486daa76aab49860a746bde459b3237cc505a88af367eb5322554cbe0e775c64a8ebd696411912b82798808ae4a69eace0fc3517866b09d925f970baef0bb3f41c7e6d57fbc1bd91c8d7c47269b17b550c066e99c497320276f3ef5bafa6aab1bcfe1b6b7aed7729d633fa1cd4821886f5810793fff805b99b68cbd16cfbd0e6bb067cfcba7effd434a285fdb517e8fe1333e2e75ef4c121ca18d2da55b62c91f6994cd069f3db3bdb9526257f773b81ac3119e10b6f1fc5ae32e0815a7b710541056c971d7c60f745e5c22337ded2f7880305c15bc52c790a493ed7bb202e0dcc5898ee5a74a5da7b728b96ff9ad605eba172e8bc09d79ad5c0e52e3c1b17f27727943d74935418b67ab9a65dea4f2bd0d431d8fd1e0e49114ac9c3a3861131d1a2e157333afd6415e1a9afdb1bd50cf8dfcf6a4fd938df13ba8bad047007be36d870f3e9191399f435884c7e8004e8334b437eb073d9e8b0f776f2ec324bcaa9ccbb4b030b351ea6a0a2e60a1206e65e1f0261b928c91db281beca3437224f987011c08cb5f2ba23151e440a14cbcd5dc41164b8decea46c10b1e892f9b839ce7551483c7a3a280488be3e4f7f6f83d5543e0137c9b6c2932d76a01399d934f8b04ba6740ddb4a92a6a05113ad473731f3ec6c175edbfc98956557d96fd5efff5fc3edb5de7228e38e79f4aba2c034e12e3bfe02ea1f07478b78e641d5e60c1cac601651d83d92403816df84c8cc4d61d3928d1b2bd16f710e292282d8ff491ee9b6ee1966902af76304b9face85780f01ed8e35d04d5e4562305e7578926b702a2a3b24a6dfc1702c36876adf3df99809ec667166ec6f81d24d8d49f31c24c7700604a85d810b83dacaa7a6e8442ac780830c9ebea01a46f04bf8365cd847d54f99a4b1b220ab21608eac127fe59f870c4c69d343168f31e4979f0e9fc3e9235712e9b94ecf661d97023d6cf66b4f48652f916bd88779e416276563ecfc320c3da61a021d1c7d2c1eb81f4a5962d1e3cb90a039a6e7ba1bd1bbf16300e3d620d6e18094f063a1e2c44dcf1b4bb80f1adab5b2b47d7461b4bfeae3b22a38a2721782d19058245f42aa8b2bb70284db74f58a46cbc608cc3f1694d91e40b494835d926f38ca79f68815fa56c031d30e9daaa3c89eca1b6c3ce633be4a4163df27ac0ad200ae89869f512710c8872f10ee165cc7a33312ced7ae47e3d16306033172ac8b4b856059f476e8ed2f2ce91fea02a4ddd4476d0dacc1637840accbefb328a157a8f0a23515ce9045479bca0cb789a643393e1b1438bc921bebb1cf6cdba2b5785b79bdcb0e67c648bc8741e38d953195dbfbc95123508531d9c18038176c2ffbca6190943bac428d6087810f2d086f68a53f517ba4c6ea5697020f15f14bd3b517077c69a844febc44ef68c132354c3a217fc5b2bd729ed71100d46894405b9e44c11549b235f9031cc66a19cefca9c067b43cac4d99f3091a322da748b0a7acea58f45c1749c47838d2cf527108614b1212dbd8e57c5933156c75bb54dd52b2843c5faeabaee0ff3761198e8c2e455ff23d8ca77184d792c7593588ab0ce3820037ff5a41e520b9eda9982e70326359feaa2ed7b7797a8b45938aff5685f25faf90dd71cd49601ca356fea6a6c819dd36f9df1e80d0f7b8fdcf1117b7e52fc3aba056e76651564ac8ec1fe850b4bc13dc14f6824c774ac7fcf3098ed4ce67e6623295463a39199cfa164f4bacd767c488c5bbb420714abc5e3eaa13e0873a1918d9056cec610ab536993eb0ffcb591f16eaf7d4744d3ff91439fe9dc2b4ea97386dc3237d57b40ad4f3b383543d5cc4daaf61ced985a90e1d58e8ef5091df7a309949cab4e6191886e0c7892afc2567290acdcdf3a8b3aef19d15f4be23ee0c3da1f5db3e3ff7a35d94bcc73ab1440679be1bd3dcedb2fbed0c41861f9719fae5fc81339a0a520fb7bffe7463cc7897aa7b76bc9ff181e9b3fac8060d31997404000e75df059a6bc8cf1f754d5eca7841f5f701672d6b6173978b93a2151acbe840db2bfbe8b84adfed1d325decbcdd184bc3e1a7588a574a0a437f955dded7c9a3fff23e686a5ec69653c24df83df405ae19411c7ce37349aab7722a5ff19b66b1ecf6a99d6f6396829ec88a5f730055158d26c2cbe44cdefe7cbfd776d604615590458555432b22db16b7dcc964303a153af4830d1c6bc4d0f65cfe17dd6f34d993bd53fb6d96263c003ede4b496bfaaa0ff68f9ebcfda629a0f08fa03ba602d68dd4f89d669925d0ea89287065383afd0847cc25a3753252e1b347d541b5538a2aa76c70f72ed77cddc424e4e22a2249530ba8c174ce0996356b7ccc9b991a4edef243a14d470a61585548d6ef828a49cc8e9119e8a42b243887007455bcadddcbbc9c235ecccd82970fcc7d36f53f1f395ccff8afee0ff59dca9d604d177aa1c56a18482056037107ea42b28809944924ed2d63e67c83a5e61b51694b475ff6939baa51193f5775c4b5f0f5ddb45f03fa4ea3c3ba41b5ccff145fec3dc586f9ee5ff320aadb136efe38d74f5f6d43e2c79f0eb7b39bdbbf7ba846d6abdaf82dea0ffad98d07d0545a63dee41ade838e0ac1d3fb7dce0c5f5aa388d0dc2d175ca161a0c56c364c16e814fbfaf8b91196b545998a9a064c3870fd6aabb0c713f305aaeea56fa6ea739128d450a4f01c0a5273de9b9f15cbf57f7de0cb84f268c9a8a4c2ee30dc9eeb2f71cfe68f5ec8cb5f67c281d31a18d1a5267bbad3aba2e47c30804e4986490044de19a3906e261b62ba3f21b519b267a17120d1046119e74c2ed1d250af2591e521291a1c17df49ed977de6a2f0cd569d9aa73dca1611e45e667c85f6680bf959bd0d870a38993fc734c1ff8ef869146141c23698e75e0103d99ac9a686a88299d12a68dd8834bf18b1e0477ef08ebff49a8f05021144efb50a9465b514be43aaf2ef8938506df86cb2a16fc7512ec4e5ea36339b81bd884c6149a4eb54e9ee8cd567e26006859582e2330247af7d50dba3c2fec4a542039339b619c67efa1b26a6a756ad0eb395893bef14561635300f432ba2bcf985fc3c4340922a2356fbc1d69fd2bd7a077b95bd33da32e3cbc554f983f5038efd5f2021882ad4aff5367b8b178e80dbbae8eb439f242ae78cdd65da0609d3d2f65aa9a3bacffc5c075eb9e7ffa1b1fbd67d2e70ba8704f0673fcdf5ca896235b221d823bf797b15b600f7c2e454bc0fec72d1b5e6f29335bfdf99164692f55964b7c17770757383f9511fc3bf6744ce1d705cda61389e2ff303e1598c7ec90a2591642d3040bc128688067d63e54414255bb7f3572672528a1b1d2a9e5baa5235687252dde37f1cbe432a1b640b28005b06edfb8ed44d06a6b05e04d55078b8a153b376955c3d8256e6f9d5408d6a549185c1f8e4a1be18b4545f2b36d8018981ba1b75f38b1ef0d426d5cd1fe4d76d35b90c530b862ba40646fda851a9087cebb2153c2873ac366d2eee6567d972d148325eb895f1c6f6b1ba1ff7e45886ad43f45208849e4c0035e484ae4cddcbc412773323e28ebdc71e23514d2541237d252ffe302ac03619bbaf87654641a354c5fb9f7023469fe6c2f2a71fa01b30f5b21081b299e4a16542d3c81c61e97fdb3f9a153917096620668ec1e477b78784c2e872f5e29c25fd577d1163de9662b817ac3e27d41d99beb66cecef7ba748c821c1bdc7e38e230720a47527d0cc167ff63173f09768935ffaf62a30d53159313ad84f9a5a2edb7f5c2f089f73887a9c1ea5fe2f40115b4a6198c69ab4da98ba3e3069925e8eaa271dca87f864331500f531ea2c5d8dd3dc9e5a4e952dde99c6db133db06a5a45adb9e6f06214e3f0cf04c69402593fe69d412d1d5565d2a8f8a7c0a3a2dd50bce11dcd50ead3d1ef0f74d204e7a2414e68930a5c821f7c445fa098e10b82c859d6b8c377cd9b9af13851f642e7a7942de0f6f9505766d3da70098d9ecfac76c121dbb2137a0eb1c71cb97940dd12008d74d15fbd38773f779014ae02ba04c20f12ed5bc07893a344fcf50a3d4096763726930eb13e01f1b968edd228586c67c254a378ac4bf87115cb2acb02e1444e1dc62a3b0a6fe206fb83a41d276207705dd40adbfbd8d60ffd2041fced2c079dbb459e509702b7c73bdd9459a656d98e8f38d54066250b998f213219c1659e8a343d4037c6d2d61056811a3b439ec1f80240a3ae8fd226f0e34d38de4dd4e362a3d64a2ed5ce044834c84ce125a59569db6cf153d9560286fccc6fe3477b238f593b92f799c3727b495b96eccec6e471f0d600b4efa4d2a8f06ac6d428ce7387f342b3f77e8863356e00907c15cba58942c59b2ae1afe1284ba4cbc5d4e776ca1c0b4d5173257a85f1cd9b4464ccaccf5e880b0b89b33ef91ffbd1cca080c9cb164bdbc5b5dc9edfeea50409bbbaa722e633b3392d29a361e2510389b30498eddb3074ea885ddaa6f36833e36507fa1e0fe41f714c4acf92c15b9757f3bc9206e08893c038425a0ad08447ddf3d46c7cd742bcd97fe889f73a8b03b61929581f459d0a0b6b3f5630c9f736a6c82ba70f3a615ae026df9f761396e60bacace9854abf97e861b9e66d546605bd1d07879a12baab99bc7638c4e114cde39d72a5d198c73a385da2d81fcc8eebf346e3d4ce6209a8f5ddd1145cd5d9b96b45ee5e89e5896db313d5d775910435c14790b37233d185f5c2e00afc7ad545cd9e1b240a217a0e2be60068266d2da55d14cb891d66cfa40789275bed6c7357e17f62c9a11820547ce656e50240ace7ee7d7118bf8fdf4faebb7f4d7126bb448d9c7ec9b4489aa4da70824f025bd0dd07c6f492935ad3bb8e7761d51910a1b6f891425c3f062dfee1da3a59d9202ba3675a79cf3d1423a3785af03649ef6a81649668b17bb4e4ab399b1f3ae3ceec4cb1a2bea7ff1923bdfd49fa7bdd3d900d3e90339d4eee2732a2dbd4cc22dd30effdb314886a1d9dd913107971f144d48bd88b153a433e9dfbf1e872910acb813e79c1b398b454692fa38411c5e11626c9cf950b6090c8eb3df68acd56a114fe6baa803aa0bb1aa1acbaaa412d129fda0f36f3548a07cf652162d99a741e64071d691c08d7f2848a80864be8130a3cc71047e8f8bc3d768d6892b1691cd2669c5b38a55a2092bbc2abdcb0b43fe025e77b2b1f304d45336559e39c3af70a3bc70806edeaef7caea189d8b9b4cb5399cec2e7dae7d1fa72603750c954fd54db3d4df35a2b4d66628f533c26508a6574fddbb8e57eb6e3d3223c2bc883d9d156819404e951cf8fd4f4b565192ffebc01b426a4967cb09ee899c5c547f958be3583a27ff1c0b4ac73020afbb20e92991ab9940224d48226332c864ed9895b3c924f2b0f925cce89de9604d92282283ab2f7b12a515ddcfefe565afc6b2aa3a62fe0fe8615df1f4c8829d610efab9db459089d655552eed959a18d6fd5d3e5bc623ec44ccbc029cf261d62d28ae81db708fc7b2ca662dce5b50e0281d715c8515b9293467ebcfdb5a2b4eb0693e296417d850b003d4208c6f72c51a34a79361521567275670e8cba7ee86b7567c5ee721e61b586c1d85ef4a692408a03488b02abf161736fa3ca0cb05762befb1ce552f5b82d054b05aab40c52d28a1447a2343fe030c6e4cdd292a1c02eb90d74428b6cb2d9dfa114e5674f3c632fe20a00f15df2caeadc86a465c5f692694a61731e1d1bb63569a81919e434782654346c8de28704a269ce0346c5463b38c9606a174f2dc5243f59bf56adbcaf587f1a5473dc4a74e3a66b709ef0a3a87ed7826edee8c50d74d2b52b7cf3f4c4a1f805808d9af7cb1476e05815365e52cd242a54a5f331c9ce085cb081b24c50473d36ac9fc8a6f110bb9f89e4bb491e0621e9ada23c86572c3039ac0dd80b9203015e3518bc807a1d453d6469e457bbea332a407ef4a915aa9f26dfc04eca01605a4994b773f5ba1a4f8501c3c6fb3ea566537a606e796d1b740eea305fd4eeb82187d9def88a3555967f6a6f908f4d0eb31f31486469085cbd7962ff783a83e08e264ae60ad2bf9647538997f9a5ddfb306cdddfcd9619e35f56843b828a8b86b2004e02df146adfd90c6cba2fd43c87325e5cea654411dfef040833a546ca3c96c28ad766f6ad3da617ce0e8d7c37c1902140a3d42d708744e67f90d096a606dd8665e70d309c9b76c3a9cf4667316146d50afdc8709cc2b8814edeed0565f20a136d278fa28fd992a9bd6e83e98978ec199dbec75ce1b1ed5a083cb1fb68080b24503bb220342c41c47c06604dfa7fef66b68e16f0f284b99719cf9719460fd283a9a3bfb0561fd034142a3645d92645cc227c43d15017159fcd78908139e0b9ebaaf7366c27a36ff09303b63084437f78b3b54a53ba229624e468abfae8f8dd9ec54fb796aed6b12c934460d6d7c762c14b880255e164c7f95b37c6ad0d550a4ffa8d54653727acddc3bd325fd595dae714af46e9dbb7bf9ce5dd33c3dd1dabc88444dd2d6105230ba09e207fce07414befdfb1bffcf28d3575d91925d1643b0075492610e1c0b7887b6266226f1c9a9ea10ec9256852fed4b74864993b490672045c6e5450502d4142bee2470592dc15b2ae478d65dbb7ef222b9b284d2f06ab99a3eb72e914ef1cac3773334aeacfd31331785a76790360bf61eadb8b7a0508f1b9818819f29b1d229f70d05af00eed2fa4f484ab5c3861a5755b3ba85e7fa449907ec833f9dc818e1e04e369c91ab5e1c41b527abfea393bf8ce42943ec2824a4eb79668b9517dc99dc35177d4a755cff98e0e06d758d5e996042dcf07b5bd73e9c99f64968c9a26e39bccf279bb2a4e832e4e919ab5c0552deaa1524b1a31e420f1cf1deae20bba6ded588a4e31ad97d0058f3e39af7a41d5b8e7e88fcc86f0fcde75a286fff4c51119a1e7104a96e25a37e6e1059011dd583695615db674989b79e9a8c2a86fb1191279138d925aba7b0791cfedba07cbb6e53731f31b24d15a9ebeec62930c7820eeb0995cfa5ce3c7bb00683a55e81cdcfa811d93dc390d8112c0f1e2265a3b19610f662e4e8dd123f67cb8f152b6549a56fe2f6e4da96693186efb685fb9ac80d2256cf0c78caa9fd1dce43870978b2d425137f7ec9381d81787ffb7be57327892ab362e1b5889d528a9bdaee0d88e3ee19376a5a5cd8b15beeec4416cf6f146cd25600bd11fab75ba97df96f090873ccd0238774907c774f87f8c96f1fbf5accdf3d4c3ceba717fd3895079ad897663febb930b2bdfa1b0fa08dac778cd971f8e0256dcd0e2e670f4f0427c3abea03c44e1106473d88e963ae51545918b9a5ed35aa4f52a94486d2d608f65cc45134cd86e0d357a3d250023d55e2fa13617de89ec92cd7c2c5eb28cd5eb010a6a7244f50a65be8bafe99bf6821410decba6af30744019d1d22b3dbf669fdf5e3f48a69f18b6d4b1a2b45ccdb23a7e91dd9240f4f3833dd2d2318ea4e140bd13829eb6a7816791a58870c25397235e1533ecb5f8d33d17aff7939cd87dce29d03a23ecb997091bd6292f2ed66b7072c2057b9a999caa7ca584a70cc99e433179ac55fdd3c3301bc474496940d50d837859026200b06bdb847c91e450c95df7398e9101fa7b41c062a330ddea310eff4ba4ce936c1ea56f776552cb1edfbb058c49836aff30f39283526b8bd137c9692a40d492b250a280bae855a4547d1bfc0c74937f3cf8b6ea5df73df564f9c210bc870868899acce5e38f88635953c8d5b6a75aa935e3506a2ddbd0c1885a9773f6ba8d2417cc59d6d6ddc198c47407700b4f680ee8085492db54dc185c54f6716686a41da927eac513a79dec4ac7f38f03b6d4a88e0096f3b6662e9a0f8faa7601963ec477299df3bbeace695e8b1515a61dbec5dce9d042bd21b62f8c78cd90ee930b118e5d2fe03149270238b54b271690ea50fa9b5b003dfb3d6c0b60aaa4046f93bfdfaf7931dabce9125910eb8cb98deef40ca26f07d357fc245438982748cb31868aaca461b98688fccc3907bf8a27a1670d0c067688016deac77c56a13168f3815613c3f955122d2db5bacfafafeffefaa7d1961b87569687b595e0ca51b4e0378fee82de140809f8205372bf628c8ab03d51ae2bb39d5292d1cf0705f939265e14dad25a23ad2a763b7d60aa8d5909e916f81659bc3b9f08f0df411645a50da95425706278475af5089eb9fdc27180281454f3c4c2f22353744fa9d3a82259ae6f919bdd39267314abd509c46de8372d3e0e9c04900d38299d43b9328f4b45af067af91f41a63645f6e0c527be0bb2f1c1e982570735c956093f0b107713f6fe3b2faf2bf6b20ca8a5c3fc3ec710ed53f3a4316fa505df5a19212fc70326acfe7df67080a3c0ac711928dfbfdf8103edf0a337ee15774929464df71f308c7f30757418cbd4e44887180b7802033425ff69a21c0a08294c862a7e4b0def3aaff53e0ce739d5f9ca9ed4067eae8df14a60474ce67a4921bf77f2b01091bcc9d15ee408324ed9f8d666e2fc925373a482c6f50f21bb7565c47da52a59a4c56fc0f1115319ff5c033becc6b38fb1a94ba2cf3de297a47a95581f0cfa1eadab6333b41e5ce4187d3b036f9b3437d71a7ae76d45e7ec1f8ecd90ec47609394a55907d897388326f0bb4fd95d5100ebb28f51960a728c7776f6da5360f715ed9250277830990624d94cb757b7c63bf05a1ef3fa0c20b5b22a565b303f7c5a66493498f0fd3505ba5d30c265edcf732b394ee4941ed2a7765d138a51b510041b335d8a9ee7bc518bb98d7ddf28c1657b35031caf2ac473321d425a96e0b040f8b53ccda3cddbe77322fc3b4bf7950d1ebc5ac4683cd905a51cbda88ed809f748eb3e76171ecf5405ae8de02fa49bf3f6ee80017f16b186be632922298a88e19f5b7c34f6e0277bc04114828a67d3e0dd82d7f5d1643b129580302c844494ecfa147a1f47b08c0fc0e2ab6ecea08bcfe2cd0d7b043b119aaa1ddea440befa16ca185cb088da7f830532e618b8ebb1564aca66dc8bbd28107e3a9450686ca2aacad7d3ce83c8d49185deb9590e74c0807b91cf5d35b4b0e28ce3da51983a3ba5aad5906e83ea468e8b96cbcd00473ed398a492fb482f28724c743d9858993d619c2d72ba2dd8a1d3a896c7749083a1d55375141eb54521aacd4122d3a8e8e28176910bab7223bc5a1138bb8921572403a4242a5e598f558c677fc32bf9ff2590d7d920ad724d27fc4f3e9237ab803c5abdfdcd5e441783ff8c361bfb3e530141f92ab56aea36e3283ded3649b86e37f5e6e1d2f3c80d83f7eb572e7d701ca2f4ae3a86c5669b68c9a35951d0912c0845f106a63541c7f50a5ef7f02419fc3a525470f93b5638b5ca493708114fafd638a18c64464169e79c2424bced495433d7a918260f317decfaa0755abacbdfe51ca9a003365fa08d9596e3375606c9e257a686f8e19bd40b438c160d2bba598cc4853c9ace3e4c056d96567585d16f86d29483ac4618c96987cba40aae9e1fcdae44627e6fe45a321e981aac5c49abd99578a4a39f402face981c8b751d802e8a8a4de3c280f356bb666942d9a9284362bc0014be3dfe69ae07f49a9cf248b6b7fdbb5f4d04c42ae74dbb60e242f88a4790f4202ae06bfc094240acbd60b904c016d45801514e0a78d87db0d49e078932242e60b91194896b7c43139eb4ccb4c02271922486ec4809b4bf1e72bc675cefb08be6c9fe458e1f644b273830aef638bfd597f35cd22674085c7c0c6b0eee3faed405f9edf053cdbfe9152d932c6c04e89b9158862e1ad75620eb12ff92e3ea86c91c3f40c139b1fca3b1a7e5a89c50eb6d7c1143c6cec7a6648c96a1462851c96903d8e2a0be97844d6e7c267836ecb43f660390697ef7bd49dbfcbd0450badb04ada13e8b6ff6e57a58f265696e9217b017a168ac2d0658496f487e71d3365ad270a5945ace1fb9a2d1d2d6957fc1786fef36b3158329a2cd5d4eaff4e95f8a4253ac6c0a13c76c0b58c8d464c5875d9320ba77d8cd4638b53670faaa0b5bc2d723790701f0e788878bc8edad02e68a18059448a22a0cfccf66bfbdd0368331c19ea850161dd20b2d27531954b1c0a923906b50e32b32671f13c2a84f1e97f055e91201e3c37def17b5f6a999534b8bc675b734a8aecc611df617145d264c72d71d9e30f2e31c6b8db2fc225579e7c70f1550772bec388825efa5e61caaae4b857875192edb1eff5f8e352d7a824b88fa7bb8b38f8e218df9dfaa5f477383619aee6e127de9f6844f30a20d432a672b258507f4fb945b80df04ac4684ea0a8c0abc21ba278863576ea42113ce4b787776dc67b999a8d265d7e796c022a268aa441c18055350727ff559f7641e7f3d0b75a8a8d9352f19491030b4e6de193a720cb641a1a5fa74d038c1d12686a49902b5c74aab5427f451b5a49132163752d224595cf100b1514710baf5e5678c9487fe14df9278f2093fc80c4683cf71c76b9c550c6347304cfa8838831f8eee6b30d8dfcfb72ae26b4001cd9a5b2119452dbb82beeb44de0e5f65d24b0d2033c12c18614e61e74a0f227400b9830580e0b739f8ba4b3187aa19f11e2f2e2056126604b92318334ec554d61b0b56db47e7c90979053dd636b84e762c8e9ad786112598b44ffd6281168003ae9dc0877256d09e1eb1e24cde1eaaf478b335e64ee3a6612bf0db783fc6eab96075c629693dfb69c4f3262bf397971cc91f68d73898bc947e850cc81934389cb50eaa445ca50897087fdcb62dc337fec8caae9d58958b4fa8cd4feec88ddf525b45be918559c7d5eae222a4eb026543e4d18d98a2d71d2fb01dee318c37fdd620ec1f6a51a865cdcc456d1d128f61dbd182c58f00e855605f2c822c44e9709ce7a05aa57e9ef7953606b80971f9b2122a5194dc9d97f8f7706b950c966bc6ce4bb32ab4aa4f2a951a588a85f0c7d0b43cc1e837e166848be6d85bd61726799e0869b19505b9bcfe91ba09a7ecdb339fad38c37c83580f892364139932415a9e57619bd42e106fa48d528efdc2ab7a1555c2b7e0ee0186744b0ec8db17ef1f97ba9171d6b3272966fb21498e88087d884fff0125f1ac259fe61fde5d7c63f1b2c9147ded690ecb17354d2464e1b4ac4cb47fa7123755a31adb9269c13c44433e56bf06ee15cd06229a7bd59d0a41c05c0f682b736376bc8c144cd65b86c84e3eb3399c7d3aa2f6266f7f8b0163bbbd9382ed9ba8d226f205b86d46068c5bbffba122111ca555dbc674944b2b1606ccf26441426555c73c4769ba77fe8a507ca1f57bd496c0afe7e3f9186308dc65d8e22778867442910a4611a83f740750f59279557bf06f56c5f1f25cd35e38c9f1b9f9490edbf44d60cb685e7efb4c5c7a0b88b612b863c1c960ce1c6bd50a28f65bd56173fd69463bb4a19bc44dd9c2b95e5edc5219a84e59cb38ae77e56e6b54d0748e1fd49fef9b5310ace9b3e028be0299ae587df55839416fdc0bd1707e0afbd7f1e2f121217aaf75337d323e582a9331aa9cf872ab6791fd028fe4060f1c0951b15cd7f1c9adbcb9ace5464b37700764e7fec4e996a17d6c0e8cab3f96f99dcf8641631720f85565cd7fe5aa4dfd57a367749930c2e034834c596efa1a5417b136ba89f01753ea4fa52a929fb9d5980a6671c1fa5337dcede8a661e3c8aacc7f90216572b2145f90b31d0e56c46053292f1896d3302c0e630f87b9bf6ffe9b07cc494ea8efc6105a526c747ca7112d01247af0ad4178e15cf37b98da3e07c4bbf6384f8656d2ef259ac32ab60856b02e6d5dfe99a2adffb63408aafcda3eeeeb0056ee6562616c1994fa0af96dd5caaa505269f14bf7855747b1c4c2a731c89ede7d8b64c9ba5ac905cfdf48f076c41345a06331a41991ba59891effe7bc0ea3953ac06f562c81fa5edf46e7a3fc4d3892f74500e8a120ccc0631581aa4aac22010d707bc0d727d266956f457466d57303c9b4ac6b0e9e7a9d4f1161cf219df8b494c4fda74644210177a6a6fd31d4e916ecd3d862d62ed9f758d2c8fa061f9346fe5ceb7a1dfd26082d57920b84f2f83506c47902080e84ba62df949e97d654758ea411834c8d49075b6213fa762d1c1a190f9de35038294b34cecf73f428566ae1833cd079b751e11c1ef8e00f809f16d5a49fa4fe0bbb04915eb3bd2e6f44937c2b07828e02176750c97d881266f229c10a73311487ebb90f4beaec6c80e31aae03a3c9c92ca685ce94f46714a24f6ad6ec024aa3eef094c27901388a0269fadaa40216ab8ce4b3ffc7f741769ae7cb90e7690354c1e55c169c3a4d6af32fae331cb8fd6e340f5c0624a7c8eaa82d5804d33887f1be0bd6dd5f38e0ee3c4b79d40a6151c49229156134d2b683bfe15628b0bf37615ea83b481b26da00efac3b92089e96429c5ad642502ce9f6fe914d24e53c9a1b072cf697da3f426f0ed65b561573dd0f2b3dbdcc896f2a630ef2866faf61755fe68ed2adc3012b5cf9a1ff89c2024bd4e841053008343a5b009e4fd12bb602553bbc0ab902f50eaebc48028d6d95b4f91e3700ed0ef4ed59ff0644a6480920f32051ce8e45eb17825375c35fc70be11fcb5be7f6dc4adb69d23a445dbe06330a25f3fb41235d606c5e6373f536342dd2c84d63c78287d003dde40e1b1898f287f30dc0df5441a39bebafd1d2988671c0bc740370966eb22b463b6f07323660ff1676f7e746cede877071998ca6c20925ec69d772a2c36e275dd8de102d29b8e6e0a05f423f60e1131a5b5626fa5e5b1e0128d69fd1cbc7de513da70442d8a363b99eb5065816ccfaadc485f77b3e6a51690f5f83be46b8677f4922ba59dbbeefb08843b4b37d7fe4e1e556d550b7681f53ebfa5bfa64170fdf9c309bf48db48ec1f4619c01d3ae8b6cc89a9f17428377582fcce9121f4f5855ffb7ef4169e2f42d9fecaa682b7ce9c8858e1ebc6bd425ab5bccb7b2ab0df970c6e2fb0f12d7dbe258b843bc4f2324e931d87211392a889c776c8773b872901c6a51e2c9dc33466b64d90fe7e13f8d29d5fa1e0868d3077041575a4dc8d7e130e493ec2a9e017627d16c0b9ec247c0f76ae207019a2f5df16f60a2a83981dab90ec076ff2599d5806d676dd9aee557afc52526651cb30c3c9cdae0984960e17dbd4900efc1b1802e49505b2df0f8bdc97ebc279e92f2a9374e9374a8a607f9fb0ff821a48b6f1ec651b505112d0cdd6892fe262c5dc6323755616ca1777ce3211835f18e658bccf186e4c1d1dfed241628889dbdf2c48829c6cf8a2bf571c0b7f2dbe6184489a00cd2f6d6caeabfee5619bcd17c3447786be4ecada16bb747c0f59cf85c44d39594e0e677d411b128114c991391429b02a909fb541c7f25780a46f4fe2226c2f32d8a74c836f2d99193c3ec2500f9dfd6600c369d9f5f730a5bc2e3458725756f835dc326f8b0323b17c56d160e192ca0297f4c65f403b72ae1a242a529434a2b1cd02fb66ab5fee4ab21672307cf494e4bf2f8b1382f121c042c948933bd546f911f0d5f804ac5e6ac541534edec6f1ca71eabb526258beb13f427cab96156e5f10d818da09bb216038d4ceaf77a0a8fb9b5a75f976ababeb0e3aef2a0da2753e94b15f3a61f960d909e78bb69b7220151f01c4b136b487854d66aba3c3b44e20dbdd0525718d4c53cca40a6756135f07342d829ebcaf99f524fa9e67061a6fdfed1511c4a9d47b346e36cf56e08b1f96abc8143912942fc3aae99dacf3fbb44bb6d4eaa5e5be09034475736b3a965a245c73ec3cfcdb3daae8ad2469265b868af91b240e59461e7afef06517f5c4069c0b941e42c1fda80531ce271852b84a573ad899b6b6cb8bc57fbd164364ebf3e647c179f50a4455702fe4add83065fad3893da38ef44f5fa3b34aef9a3abbff8aae241b807d416e0a703b279e08f716c0c6335ec319c49dcb899fcd5bfa9bbe9eb806cc2e9264373a77dd26233c92d573e1b06395746b294ba2f719b02f2f6c42496bc815fa82da6e6f17901afb0277e90943fcad7d4d3778be0c29988331e51ddafc43a2ab43f22fdc4e9a51fc9c3abc247cf5bb842778a57988c8af623c17f0556a69103d3a126bda7353d5ee0b37f35d13ef94ccb10190fe6a20415968d1870365110c3a7b0bc3181557000d0c661e07220d68c5ca3ae56b062fef45262b05efbb4662959d3c04e43d8b6008c2d241119e2e206dbaedc8f75876e3fe1f8afb9e887e1bcd0d9056739a35ed7462d5ed6166280bfbec89632c3b64723ec891a04ee238eae8d5ad3348a2e75009bbc81494a26fcc93ef29806b58929a863f7ba2d0fb93045562495a5fd1e1d6674a59a8e65422879ef307f20fefdce597e5658c7c3195d47aa0f725b3f45056fe77587c6ba57d3873527a729d88f465ba897b57ed43b137b3f7423b1ac4cd1be07fcc27fa176b4e188d00d5013805d9dad3687a9eadea9ac8d6b29ef84b09d1a1266e11e0fe77ac988d230dd003cb70ef4541281d1cd43c8ed53564b00558725df44df00028a67233de9b762c7284200343748b287ab7f5851117fdc49119dabb92ae3f1eb1fb3a138afd85cd60cc8297d061b493535cd1020b443c1df58a5de7ed8c8f23b3cc8737d4be03cd03595fb5db5c292594d06b6253960bc3fbfa2c41e4b3586a62a3801e6f31d7ca63de5f3391d90269a7f3a13ee944b7265fa6582058277c53657313179629cb451adbef395b9639bb427957b969c80089114a65f0812b2d947681089e628ef8bbb8474d1445b437f15d36dfcb6763b056a0c23649aaac446c3f3eacaaa786ca091fbacc6fb9dde5a7a12f5c5f24fe13105e7d0a0879df1241bb1256d66721879bc4163353a944fe218d400f13a3b46ba1553872647c1c77ca274680d2d14e11f3a71a361628b3f313e9ec1ce5f79d1ffeeed6fddfb9c4a68e0aba411d8679b7a38199117f4fc77ed23b433b8cd706d712c5316ad581dc04b39f03c60bb92e8b87ca3c0d96a2715697f3e15a52aaf4bf17a446c8bdbc948b830c1dc2ae95a29fee0f4be8495ada7c549dcfe7bf9ed54cd0544a2eb171022492bdf7d7c46dc087aa40b752b5bf936f3ab8782467016d82aac4b953d01a258739b0aa7bc9d879c9bdc967c8cb3bd45125514b176e98a1379cbcd6ea8ca99dfd26ab881492675424652fa793003a392ff9e843afcebefa2a3204bbd11a68734b54dadfaffbeb366dbf6680f1000c9e1a9934c50b5984ce7dfc4e3de18751505600bf29ea95eb95efd1d781907dced9ba10a76b8a5187c100df94c8808c097464f5ccfcb3167d6df935993d4cb39489a026693af115b9449ed8f861c06b57c66439e1f0312ab9af55f65d441d3ea8fe15808ee56ba1ceb6184c1e194a8146c7e481f6fee29b87156c7cdc78e8ef50ff972ff61296b5c83cd772bd58a05a684f08d7aaa333b188defe31c91a7cee421658066cf67f1d5eb14f251e3a726ce2f8cb081d1b548970a878eb7b73296f48f826790d61f1ba7b84c860dab80c092b883a5346c49676d129757503b3f214358a98f490a68fb755901ce0d0ebf9c20855c37ce2f373a83c49bf369ef3d9242961c3320f71a5ae2c260c91f38a7379d15faf5d6b78e8edae15bb9fde2bab488a122cd65152ca071e53ae888a84c88af2b45ef744093aedfbf8a3600881d06ef4358d82993e9c4cf38289fa4c1f7d62c096a6b5a2de82639b34ac9a1c638556865ba77c1ddfb094c60fa166e9c8cdde9b18f7b0db499624eac65ecafcf0a7a0195b047702466c8a2ec945dc7dadf1eefbfb367cfe5380137ae751a0387ffb47770326c092d98f488c19cd3a8b4b156552a58ed1310dcf83c5dc5333145aa87dc6d2189ef71f1e106137e71272136a74257293eaee12a2a6120a46360118af91fced915352d9446d90105e6d345a42e235a6ec498691d2b4a97ae4b5ad2040cbae0a0d4a7d589a837382d4e803f4c451220b56d1724200df81e7db3f5efe8dcdacb4278317dae5ef79a95872ab3d4a5b20c9c5415dc533b4beec326ab14943e2bc93b2cebef06e9d3d18c952fcd6c5657a3fd8debef526c2c17a3d90507411810f21a0a28c92cab496240572cc2d035ce2a8397e7281df53b0e7cde9a85524de99d24867e64bf83b0869078178cd6a3836c9f6338af6591b7b31732decd1a47e255fbe5e65d6f92c0c7bc62e5acdd49cbd9c9be61ab2cb0d15cac7de412aef657cf026bd23113a5f22e60cac64612673d1511b93b0f4d8960558fbf56d633f9d9845669296cf2a4b480b9e12735ae35328aafd0af86f45271ee3cae4ce4d46c40e4ede9bfcce690e74b09947474f2d397c5fdd7f922f7f9ddbaabb17410045612f7bf7cdc9c2c72e78056b364117f665a0fad34e77068e0ca79cfc608ec95395067f9198a96f7b72ed39146b98e12425181fce5089748914235be629f165234bd52d0156d5f21ec6497321570924cbb55e2708d49e18f1e82f3fdc6d91267054fd873abd83067bc49b16b89464b372a2c754f4c1b31dd344561f1949ca7e87103fb40a4b766f1df97372ec7bd5e6fe92d2d0924d7efd2933ab2e63ab95919f4c6bc6202aa2e276e3d59f9647631ac7420c2007ba299a4736533972354762932ce679321faff2038a897f90ddac3c7ce9eab645980d6a63eecb87ad8e76f285e6cb5628e3c69b17dc31f41bdd797034aa02a9a9fd999840cd4dbe0f22c9e48ab223d0074aeacd33205a0cf175ca55d4dddf098fa1eb09bd7c61774ff8c75feed5d84f17f8672eb1edb262c557f9a25a981105cafb14441c238e879e301ae30b66ede4fdd7fd703c87e7a360f4bd37b9f2189f4f5dafab5e71e6243d36c56e538304e6ed305f835c44c2f704a398cbd9a6b3f7acf033d33e66db855a613beccc847b8cd20bdd29b2ecbe978830199dfc1bc14cb3c7923b2b199242f77d36b606d131f718a596bd88f42c585af2d61a25401981002b01f65e109a92971c90de1c74f33c5ff1d60d9a8fee8d812fda5916b525b22edc8a82a615f632e3a21672eade8a8a30a3d311a11e61f8e1a215c825e661e72f56b8c4e4465d7118b710caaf69c6451ee8f39c143039a58f7062154586d4d832d688d8450fd8bd5ab33573324f91da47576dfc1dacf8555c6560ff30d846f22830d7ff9e9bd1a17c359f197773b3e498d6f7a73ae0059b61ee937c3bb7d126ccd9aa0553b5a52894fec7acff2c41cfce11cb5f5a8e1317058d57cdf47216c0caea42660f2923f066874b6fd5ac78aa5fc58aec35fbfd6dca1f9a847ac2e08cec72c624b08d8aa4ce140d60ef57c996055ad64e8abf312a41e93de65adb3be1f55bf3955f390d69b8854f98aad270b905805d0ee0468cd063b635d327ebb9a2c71d6276426aff158af4650e62f136d3f65a542db625b90f5b302c58a3792c37719e4452fb9ae74c2854b3b54e1a1bf4c933f818de6c5a5ecd5ab90caa9906170d38f1ee4a282eeac5d6a56796758f81e912e170b7cd8d44963c96360669d0ccb18f97d636a1fb8acc95d26ef93e27c332e67d1bca6832603066bed227b6d5c3636faab25dd18011912c50f24fce464b34cb3d6157528e059dd1e729617ccb3493faf9f9b0f3ae08235c91906c7b2a7f1a720284c264af5b154c0fd7ef83968df972bfd2cb033bb8166f513225d5f8912839322baeab752693a57a04b1b6a3f8a7092fcc0ca387b679b8a3f472c7c26a40f0002e52a28d7c3420dd48bec7bad1a3f9a5068e8ecf4609d6651a34dad28a79edce5f4c74011f9cc5c209b16013b7b41e2f361dc129c0ed11a91b5f320e4835cc5decec8f59211544011a0e90c0cd1f15a3b9f04d6c4104a8b9aa5a44e450cdf90bbd265fc4a48ce7ade7096ff1dd4a7a11f72e8d1e7392746ec5d1e056e6e52376634acacb1d0f1d929ccdd0cdad7f6b75ec086a88ad34843545f758470a4c4a1e1711c3c35f593f6c52f04052b26ed7a2facb8405dc05c80398fcf82a7afc51682f6783eac23e828fa790d954bd0ade95b3ba86ca0df4585262fa41c0f3fd6286ea0b8af2fac3525dcbd90132e1a311f5d91d9078086cfd0fed8645619d80a47c1dabb75fdfa7c500d118a9e297d00cdcf3782003e7db0e5bb764433e9d5e599e4f7be3dad5a181915f8a99244d8cc41323e0ce8d54a6e1590aa8b1f8ea71a0744d1ae02ae5fd20a9570e279c81f8844c00b2881700d385f26f71716bad58938cbf65a9b08db7a1c5773bf46a1cc628844d6073fbf26a59d324efbbeeb64b0b38b2fed3437ddd451688ee2e3633ca87322a95555e82395e381a8e27bb7c93625a619d70241f7b03934bf0f398d6a76486afbf44eb78192bff946f8a9aa8eee3238160113afeb82ad0b0a6fab40d46edd0d0abe7d04a0960a65c0349d9282e34a9258297d7ad6bdec640640854757ce4a5dc044e8bca1d5afdeae14d1737472cc6e646f9e3e38ffc6abc8a78b4cc3c70b26596477b355bcf6eed10695ee5853f455cf1438bac4abd1a5e6a04edf3d0b3c289147369608718a6c3d6f5e3caf5320bd616c61e51b66673c1cfcfc3ae25930fafa99e9c34364b6b5e7080d071f108bc93471d52659f13a1acec079bc08331c4c6f97ac944e8796997ea3d37ffd5c53b36aad4621c90d316942291badcd7c3b6f038766d00ccd10cd89322686a20fa38a523bc1cf0620fab55170afb96813ca3f20488e5ab2887622ecf25aaf73692f6130793327043b2063ba8144a7fea4b5089eef3e6ed8605c2cbd5c580ea0f0ea2f2faab1c4a94abc92b1f40b353bd366a89f2e735823cf828c50ae1145d09fd24effc1df8c60963223a82d6789b466872aff3ff986c3aa4dd079f24b585d0b782d7b9902e6c1ebe522e5e8b40783ac50cbea72035b9b698570ac1cafb0bc8970869a1c4f7b22be96d8fa6de711946ec8230d2543218bccd722f4f2f448ab7e421c9f148c376f0c9daaa1bf1aa977d37d28aba80ae7484f4b4e0d75ce9ba97842fa0a664a0d2fbcdc81747f0f18db0be9b2fefeb420de363d6ced39898a1b59368f663a2383ea223c26e94edbb4cd722bd28a1dd5ac5f2cedd3bdbd42cef75f156f7f0392062eb8fd8d6fe7d3f91a2d418174bb8bd647bb9074fcab661efb1a5d54cafdd751bb7937370b23f01e831bef8e8cf3a5221e64a660358753d0605c0f084491982ccb79f4588ade2cb85ed5694a8127e564bfb5949fe6e7d1bf64c17321852049c48366e47077067f663c82602dbcd4c9825921d45955582a9c94dc77fd4eb7d7457fa40e95a41053b4a1ca8bc8ab7c0a8c56ef954ae0b90ba6053366418b9a46854c1cfaae11fc9265452bd07eb074de1f86b527eb871b3f2b03f33f57258c61c4194b2a99636ae9fcf4f73390c055e1ca314c227df6b4a57ed64e780da60d7916c41b1753a0ae5769767a264c3c62c3ed819b07ac586a70b43a1f7fe04e69f016399e81185562791f2a9ad2a6e0f56456dba3ac52c6dfa123830012dd2b42ea69f0794a4f51a97e3e41a41bb5b826b6360b642ae051ba0d64357304daad9930556dace838bd9167e755bcccba0d0a78e571cc88d0705798aef5f0ee643a84d271aa3df58c80a4a17b97e7188c57bca19293ccf9574a52cdbc065bd581c941dcccc9c6c4b74839e5a64a4cfdee5835a9fe72f6ce74ef22a9e18e56e04f82094f7ea2deba8c9d51e26560970eddeeb5d33fe65ebc2f9b41a2ebb38177a1118c691203023390c473713f018402a3ac8403378a08ec716e7b496144102bb9b8a39e44ce239b820ae37eac99171dd7e14abf165bdeb6005e58d25ea42d2afcd89c81089bb50e891a81f33037b5d552416c1fcd2d09009ac4cc7da88a2726b8c5b332de577f7586633ea621fcda2e1a1376844d8526a3dea3b5441fe557b8194ed8f3a084f3ef98bd79664c7a67b8f03e32b25e416740a1adf41a7a884eb796eec526dacebb89bac1200e70aad61b9a5cc078b60c842b024a7ec3279ffa9b28f399825295c46b8b1319a80a00f1ab95c3ae2b66be38839c028f9e78be2872bc9c337978b5000f57f13ac2066b3dcbfc8a4bc1689434a1875e4c1941dccfcf8ddfc526a2fe8ffc02708542ca3534b96483a01e2a4f614fa7b94d30e74614930698d7c5c2fb02d5b0c850b45480ae19274f689daf159e56b87848a93747923e482270beff501642fec6b576ee4ab5d402f4125c0e749be1b1fc2d858f1a8c3d20aeab1b8adfd291106a56a6ebaed08ff2f57373edbb2b066ef9223c8cdac6e65ec2be5192455d9e669daa6ebb68a0f0cc6dfe21f8933c6da1c1184f41e72746547f9d6631dd9677b09d527fa987d2fba504136349707f3dc0112c23fc007f0ea0ab272dbadf661a0842ec83ba671d3cdeb2fabde542a140bb7dcc0cb322acc10d6ab51e8f8e3053c4e57ff57e6303a592c7c6322f4e7fe5a73a40e38007aae62e029d7a0f1ded60b0bac508ead529019ec43e24a34ff760df360710d76ebabd0fb53b8854a69ab69c826572882136f18fdf57003cb353029f3cd33093b7873f4251b761448045b45e90ab9e074af28ccc695bc4985e56fa9d3ffdc41eb3f098a09b289069c8004c1d238a512588298c15c72a1c9de20d3010572a661f861374888cc7c640c82eb53964656e942398c56308454544ff892518a274600a06f00abbf3bfd75a692c9968f089392b7c89cf84c0cb74b3f2667e98b3b459dd31f8ab61397b9ca03accf95099271de009c7262c04c307ea69dfca00101df8d70f26794606c8c592a22f6c5ddcfa30e379f8767e4a02ebc1a7c8e10388fa200cba6e149302104e7f2e57f1011aa4cedb7751a0fb8ca8d565eb5abcb82e436a0df6f07e1a604312da16ff212114b6e308736fd5e5bfe1044c2265cc2a8dfd1d3977e3b37ef86751daa895be6a15c7240af7bf0dd03ce38af77b156a77be490c5d8128d6ac3ca64b8aff5e1ebe44394a386c611f9a43f706c6794f80c7a6c9b5dc8c621033381016be3d77830c126d55aa0ef82675d77da7b3a283cfd76cc5cddd129671d3c8fdcbc4d9318e32efd5464d1a6b9a4c8412898f77d39ffadc6d204e68fbcc45ed08b86f3ad803d4a6a21b79b6072768132e19dbdccd9754f9636cbf85e43171481c8759056a1d9d1598407d650d3c83c5b968ee6d300a785217fdfae8d5cd4753a995df874855bd8b8277db89ec7ab3801ce43a6f435b937801a6b350ee2a0307cbb79d54a6b2de499b0c72245fd68dfee2a7d2deecca953a8a6066080a69581051f5ad25aaf61bfd8a172db375454fb4491b14fb5fa91d1b5660f59561729ab0d6514a9207f544e2a9197ab9d14515106f7b7159f158b8134787194f23aa1aa9a1feebbd80889ebc2a1c83a6f877e1b0bdbcd9d484a244077b69cfa434a92adcc0a0f5e4965be147c7d6fb97056c8a1fb593cf9e54689634bce4c6449a3da95928607ff0c29b9d01a288d5f82511ad6a4e11513cdc20bb8f89bd3e733738c5aca2d4567ae48c1c6eda5fe198a43c76d4655327994e863f3b5c5c31cde7bd0ad2a1a40f1ea5fb491551805fe27bd9130392759405d0d5e4724f177635b27a95947fd487b06643a2d67f6b4052f32c8b7389cdaf75fe8e12e640afd6c1374bd55e0beaf6af5d3125ca853687bf4cf7d2e5b0d5fabe29c6e19dc3ed05245cfcc6a2faac52514d8d70c4037443448defb339b958dfc8fc3e4a102ed6102646f5784e81f906d30a01de69c9cc80a938311cfbf6e541767e0aaadc17a962c12ac8cd3aca2aa7b68adef32061f618c2620ccad72b68a84dba5ea226dcc44849121602552b059e5ce1b1f64bf3a4149663d7361f6b0cbe9e3d6b621037e306afa1133b4fa4e84da401c63a9b60923a5a7b476d7e2e7f46ad746332e791384de25bb544f26452b9efdb7663a3f81e7fa1d1e1cd56706b8d2ad032955cb9829cb84a51a2da95f48044889e516d3c9fc1c18b66a55059d743d1b8faeba77bbd812f02fb8a3542ed794230250e0327c21047fc6d367ba617b70705417913eb995a21b715d9cf3bf6ff8bd73bdcee2b7b232a6971dfb97a871df53d8d5fb616d505736d89ac5f10a921abdd90d7aa38ddc80d61110395a6dd1084d952127260facf901571aa47a32d581b2baa1d5357fc20882faae94d523f226f1ed806df521bb1c9f088e54ab5f743d8db2eca193ef86b4915c4f329a698e989e64963318f1627e17763ba1a31edc738963b420cc3cceb1d6ccc501ea6dc99c40815100fab8b152b4d35b3f515beca3743732b63509a4a92c08777dd14f2556b0ed9e16f4f4835b099a10db7c76161c8337d26b0740d22eb0b196c66497cc53954a9da6e1291c60e88fd81aaab3c8e2d652ae8d68c5ee7807d523f5c027386f068876e7980b0ff6c1c5656c96fa8b977336edf59f2c8adf6d8b16883ae600e4416c3a11cf3569966b4c7e8c84b829399205610493eb00d00e5d19d8fde77084ba020d1cef50b6275de59e439bf29d7055df3688379a0ad535a40e2ffc7104b873bed14aa26173af9914fc74634b1c5573fd9423e8b5387cba7d96f7dd38588005102966da8866cd45512e2b94f330943af88c3b5c60cf5127b830f1bcbdc9965d7f212c2a6137cc7098e9447fbc9cfa8c93a2d7f5bdc7b05bdd51ee06a61a46bf4e27f77f87ea922892622b3868cc10df24043cc5882b8b5809e97be18b37ab6f0aa3bdcb0081a542564a61b3fa9f995bdf6997e88620d84cdab2fe8820148767406094b1e13df1bc627aa5b4970c061b1900903e394cf27701c4a042a40b1c2f6905476bdcec738485d48161a2986f4a9a5a6b5c799b48fd3e5da5f59a6bf37add506cb9845cce0ac14c0ac3f34f41efeb4868351da319c1c808afb624de177444f4cb178a8b9b955a6e39129903b6b1281caf4e733e35330916c2ed168554cc2b1cbac1790141be2d82eab66a9e253905e7b470c5225c23846c9c735f7e9b96c18630173ea97fadf38cebaed61485cdd1c7f73ae6afd23ea184456bf4e2e2064e667629b19b09cd5b426914d0e3613e2aec9bd85c2159aec13114012778c3e4671e50e881fb76ca1def166964e73073ee16c0d4a6d713bf68c3ccbea497d4b095b6621d4f6f8c37d4eb1f907c1128a42973cc337ac01cee0064ff2edfd16d7c181cbe2aeb11a90e7acbd16baa8d5371df1094424baabb9e19f34eb74ccc5ed6b14011c197aa7b6f7c8a51c9d93800f094fbbc2e9a8455f2728157b1b24fd261027602b1f776eb568d29bc4d080941949efcf792d4c76ce86a79262af0762afd8b71cf11760532f295a73487710fbaffaf59aa258167f0b62f492294da0faae5b424a0df06733b3c8c59ce3666cfc302a5c7aefc21ad08d6f3542a6756b4d1f41ef515867846baf9b7bc2dccbd55e78b78c1e88b4e451c7259aa428e4b53b50c870b45c8125160b2ee8802d7338cec56e7a73ab0a8d48efd986365fb0cb9aea47e2e4fc5b72d96ff6b6bd5f0ef684d88cf17b8a5a3dc7fa849172b781844292ab664cd3bf076a2e275dbcb18161dea909ce5e8f69d35ca9b2e20ba3553370c892e56a7b529228f20b87ecaf90bd3581e566cc7e278a927a64457d184748a2d2974eeb7f884211f436aa3793098c8e8026fc3c40491f456b3b510dbb49afbbdd59f99e06648f7bac5192daff6076a9dbe779b765eeff5f1bfcb026aba3e9132dfc35cda8e5e5cd3272d4ac97ede06d783b02210b5ed5960851ea09c4d090ef026e568d0199cc9f2da82b5e7484b4e930689b465e9c0ea83ac16d806f0e9c2b41ea79c6c4c4569fbc209ce3c6e84666c583087e52cebb9a3658441c4b0ac7678ef7ec0eaa49aaa0471ab60d555c45f09e46b1459b135353f775bebda51d8de1e524eb6326f02e5ccade29a626721c06f9dc47988b170719e273140cbf8ad656f7b91f9e7d48d46606cd9025b4395aec570bb4b95d44af0e6087f689e2360afb00060729fc0be0317b45887f38fdc558e34a8f7bbe1b3fd3b982d8cc7ef13dc1efb9304ad5f6e8cb3dbd24cb93af9684d60d070eaa08ef79b94adc76bc2b9e70244971ea1102aa22c5a1cecd4e0490f88ba555780629b52754f13e1fab68d06f8b17e24a123c4872e421f666fd2ca89dc424e807b632cb2749bc345c9b27ca9c98ba4cfe7e86b950465207a237baf8a92adbd420f14cfa5026e5dea29057b2a24e76f0d6772be237a4bc45bdf247636118a6beb5a0c03084d633a2cf8410563c94b410cf5389d8a4d3976062e7833051f3cc69476a9dc9a972c928ce35cb4ceffee752127d0d1108c4337319643f3024b3127be754448e92b1bf5e97b299cde75be512e7275325a1619d212acff8a209311f4fb485e640c5f7b7823c88ac849c4f1fc3900509716e66ebfe0425eddab35636de08d30b7977cc80b91157f78aaaee0fb73ec9b97b7d6b924c4f8f8722d9b5e9221ab8b502ff7f93b10c8a5e9552553f25de1e1bde02534d8e87463eb138bdabe67d6f880f20563b2a50f13e5d0420c3c4338dc99848dad0f5e81b80e60e75fc479aa54f0f9f09d36c7a18dec66221dc2d9acff219162f839ddc9fb268a79d30ff53b28c87090bc2a0795d6dd8f3bbdfb87344ebca8270b60f13a13cff501e78f732a823deb227350e1ffe1c4ffe35dbecfc313dce6a820662be852a28477baac08c28896f02dc1cf334959df01d67a3053121b1ce50983b44933aeb5623b8bfff536d8c4c09699ca498bfbd8f3a96c0d8cf3fc7f1faa8e9a09488f578281324904ff43dc8b44ae0d14750e1dcaf391caa37133089d3d946f9f7a6aba8ec12aa10660816eb6ab2dba6924c248bf05a914c675079c5b954c1aeb11cb0e558b6d37900e690ad860312b04f183d2c6bb0ec3c5f33c5b9a1282d3600fe17094b4d01a6e92b1eaf3c8c5be46f515e91008acaa6ea0716cb08d30c41e3637e313ea158f40cec63712692a098692f689bc3a8862c83cc948dd23cf8d9cb2327129d102df2362a3a38e7378907be049895700879c9c3d3c5fda4411db35988c9ebeff299f124f1f3106be6e079584b663b35f6769d9a0aaaf6d0fc93b7259b8fd352b03a199eec363e31016ae89fa2ab63b5a48331fbb2cb2173fc0206ee7fee159aa7e451a4f32531dbc0aa618d998503f330c34f6d721627886737875268b335d860aeff9f5a07c2248708c652baadbba02d651f46105f344fe395cf795de43e4022855504f982236463478167abe3fc1c0b76290dad3134df9020aa289a84f88f884b1559317633f590039c00a1dcab580d189f1841b0a7e8a4eb5ea6b635597c570823052bef9b4a8c1f1de412dde1c6e440a19a7fd9a5758520bce12b2998bea640a2bd0cea65be36b1198ec52a7c785efc0db38794cb465daeb9888bc84eff82e5fdc5f97cca2156de9adacdd0a6eecde3876e647fa283b67b941355e4a2aeec8668cf54aab0a75f2186f2896f85d8a4966be60d9f4cb0c06c9c4f36422bf0e80f9ae786f5fd09d64c4b5fb53813b366b68093285abfa081c99ea8f25c66e40377e0722bf098b83e83fb65b2cdb0f0d5e10946c7645f9e1507bb4bc74388d8fcbc530fb0be077ca042b5f0b0dc55f9838efdcd341a13a4b87377d415906c3912375a25862e688ea24ce8712d2dfb1f641b957a84cca22ef39aeca4cd20f414a45738e7de75927b68b1f5736555698e8726ee4d970aed0d74bf97360be307bf2065a87f79f77e475fd045ec42090f49c265ac6d074fd1124dc001d66b1a7d7500602ff97f68ce1131400eb3b9f47df8d747de6b8229daa30dd3bfcf0fa6bbfa5b8056c633eba96f2a50ebfb91ca0f13b21da6ffa9535f5404579c5deff4b60588d975d86424fa34385d7cddd0a604258b33458b80c7830a27913716721d97bb948afe81e7b37d00784aca227a40affdee88f12438eb141c65939251b6630242496cc33e2d1282c81bdeae8ab0f8155dcd77f23d2c9630416f8955b07d4ac6d9a0aeef7fd427a63e0ead0145f6c326f87bd8c1de5012dc24d5ec0e68ce2a3ffddb9f62d8d01e2583c3db105d5956fbe0f1902eee831a67c7c9434aacecbc4f4aa90860ac3ac1709fccb058cc5205546a028595e4ac63f5ecf8625922931c91ad68327ca00cc04ad5ecc722c9f48422567e0be224969b23b4fcd5c87ee2402cd5fa4084af16f3b98d694ea9761d202dc1dd7699c6101a7308e9f370a6f112cf4170f49d4ea63e4e0d41604c7b2c0f929d1a7323b0cfb4a9b8c09196d726b00a15558f9dc614f18e59bce71df148d83ccb84db8a181f8f7cdd61c09d669b4b329173b88e911b814f6bbb0d1999576ed36e6f895ccd496a0a9e36d9c1a6ca21196e50c781eeebc11ac43186f0c6a1205fb044c083046762e64f597d54fc75509198c9ad6b214cfcb9562d2effd28c6c39d52abe327618ee427779784040670074d55ff55366926bf5bf4d8ad2faec76e33e7bc50daf07739ef962b4820a5913081c89baa4af4188aff187c2578ecd6c4ebe2ceeb9bca3bafb8e5289beb42585c5c7bde7dabc24b8712fafdaf86413ad816767a6cdcdb044f5f99d687be1323fd9f567aebfb20322eccccc180256a44445fe212e088caf42ca52c0a89caac99c5dec19e957342c4d72a67a8cb3cf26496dc84c29e27b178dbfefc1650cc59c2431addd41cee7a340d58e13fa1c9e466316e95b0fd17be6d9e14d081d6b241bc1e6b4317f1f0f013a19844960ba46f45935fc43a49bfa98994e6ad6a7311ff3d8854e5356410675862bf00a0386b41af4e5d26fff89a1788bed1490bba2a79bf5370663a35ab8fa6cfda953a384373eb491abd22b7d7cafe8ff5cc9c9ed359a2d639a5d2c80f0fc6319212b98dccc542c75cbc7cd4b2f5d6f97a652fdb914f081efdb6c9a6053c155c685b9cab5d7b21231eaf0da1e1847f4962260599ddb02b41f565e971530a5d7ba2bf40383f4fb8e75d27fa3424a6103a6f9410590c4e2dda20ff7cb93ef88c4cb435e2aefae6d804443c635e6d342c186e5f0f530e78dfcfaa33486d93369674ae025452ed4bac0f75205c1d984d5955cfbfbc9f0724bddd19c4a4e45c03165d8f336000142243b9a4e8aca29f0d7093926a48df71488504c663a4a7b0465581a37b5d105ef6f4d66580f743059fbe76568c677280a5819d48355ab6a30660711da20c49b99a69d2d80466983bd7a8214432c5c6df9eed8dcaf8466bccfdf7eaa24f6c05dd66521aed0580517d7efd0c7e0d34bb72bdc9e9fafa88de5364003537d2d5ca3bb13d884b805707466675e3a96ed1ea85ef646e8cbcece77bdbcb1a91374d1f9d274353b561275e8ef7699a55e201b40b168a7dd233fff3082ad93aab85da9507b9a14d5bf92c0484463f81a3938805cf77d05839d4c9ce8206bb85163e9ede1763dbfdb61dc7ec3bf9f3bccec7b81201818d9844c1557321485417328934a874739261e8b4c9fb3cda0c40359ec666422bf7d881d53b3d116f102add46759fa463f99a71bf06298d6fbfc395d066ab42d6a08eed3a24d72ae234c5ef609bc886ec5d6b79faed64d455e2aca5439bf6510c3dfad82f0b54b1031c4c2583561c95522bdeba7db2103e196aa124f89531ed6ef142a1ff813d4311c21ef83a24fc4066a6947e983f1fb8f861c70f2bb89b3eb0ad522f5c7f1c767e302eb3cacc492f1d86084eb5bcb9aa05c73d0a376c4fc445c9ff33ca229817e8044ce89149b6b747a6d8ba99a0d7bcf659c744ae35170e6a502736bc5f104386e0b07ee566e02482dd6521ddbfd34c73585b9a562b4b2d896848fba33ffff7c8eec7ebc7f563054bc38021373746894f52d9b582457b3e80536451b4e8cf4a4456e9572896c19c41ffe35ce5bb033a6a44d812429789a1aaf043526ed81c3deee544f3c3823028340960652c2fa94ed99d0ad72a3072e7ddfe2602106024e0bd9374a58d3c563d422da8d037e314a06ab3705def5567c378a1f44ef4d3ec7b56e8c1cd296b51f317eec9a1bf195d6426d8507028bcb422f8ba6d2a1a301c3feb8f6aee20c9099bdbf36ebf8f876164b0cf56f46ea8b581190a3628071884ff30767da78e2a42bf600af93fce0c02fbee5326d52d1cfe006730b280e4077d32c1d3d33dd9eb25d2c0e03f55a8de1039b8725eb821acae8b6a1152b4e2823be69e77a525de4459cde504770696bd09e8d967ecdd8f88554c3f8447a0e4635a747cffd4b257ff96e73d78d864ed12af14eb6b9bf4f1d224bac1758cd520d101d2117d2acfc8490a033853f26265e9f2a1d4e8c7fe7356e0fb5a2806ad53852210c23a90ea532447378098673a791a8925aca3434700f09b999fb2fe8bbd09dee6d497e6a92ac188afab26d60bfd6d4c1422a601f98d721ce8d8642e500e6f0f08b7688a374a3ecb23c8b0c257e8b4e8f7631149c9f70321b19efc2131992cfed75b05c7a2486d0bdc3acf34783e05077b2a5411e14eebfc5e2c67589d11c66bdf24985cae3c7f526f67061a856d47684614f696386daa3c9400ddfc4c3e99dff1a8ed5166fbada969c2ef0a65bf85d8ef7867ff4aa7426ad0fdb77b5c9a3efc63d5fbd140e846ea146958bcc3d0af93a74588afb618f24b5ef6f02844d42bad55b8d8f21c8020517670de16d7951d33b21b45afca6ef5dffc5b1bb29f7fa4a1c7f005dab43ff7b47e742c3d78ccf3d12d14c283fc5fc980f90641acef6e99b1c69fad53df5cdca25daec2fd188da33360b95fb03538591b8cf5595496cc198fabdc9780f0828a8474c7eb390f33a8ebe5721cdc47b4c38eb8f304d5c31c4e913ec7ecd70e4352710418b6d2942670c8767b47f95adf05df45fb20d3a6bb303aaac570191c694faf2bbd6f6a8606a61090575a8bdb6faa387a4026aa8c7366a4fa8540bd20198035cf6f9e535b07abe7f93cf5d75ef5524702cca190bd99e023b14eb383053a9e532a291e9b0b2c928517624d0377c05ef86ea607aaaa2a91886befd1d68805bcdfb7ed593e6f41459d84820c30649d11f85941d952ea16b3ab15c27ccca30bc522aad5939124264fe26e9ffa136c782fa5c0eda8e34a1355d1dbe7daa6351fe9b90ba6234ab84782337fde429ff80fb38eee66fa3a8fc84a68e15d94fa4030f58ccdc50a3aec59c60df101fe845d2407dd1527cad52375c81034cb4ded777cee83328820b8c2bd5a4ece67264697a66aecec9617fbadd66625894a83a2ac83f3dd3294a0e10652dff23404fb9b2b95c6d1c0d721d68b3c589c61d5e6fbe06faf5363a6a11d2d05ca8400dcbbe515bcc5ae5e8888ad05fc588f51718f5692a87dc905d733141e27817263b61b0fdc7aceedd477a865480e584d863f609eb6ef7b0de52c5a91e29b5ee626b1617e09204618f5bd4382f0146e903ce4dcda0589459d36be4e5b553160c0e967f028ed16e4aaac7661355a4c9427adad749ac205c1ff2e69b3348f141d7f66f3b2e89d5dc76f45361f023e99db74177792e6f18aade7dfdc405f1604032e6fe9679faf6763e61aaa290f48dc66000029767c56786a0eea262de43946c2054fddeab5fd481e39368bfe84b398bc86c30bd7100f738ae1cf50beee7d8dcc0cc45bbb45050a9c4dba786116d33026b531d51d9fa0954353f5c51462b2b290a47d559bf53fa00e2c3bf97947c75a0ba70aed946330e46d50627f770e5a798312dd45463d2bab74bb23e74deff61b677cd90c36d93ce6a36637dbe12614f69ba9414be9f3f911d55b3d86b54db9592503eab1bfb5dbf0ddd861716b010d0f73650ed2f8d1e561720bb0533aea6defb7301cf7d53435dc4f91ac8c18fd74aad6687f0223e2d3fde3f6d02385a792bc5270dde59108bdd820998b7603b909d840c2949682d4090f93bea638be2eefe8ab014056ea6b96ca0874e62166493bbb844feefc8745b3d3ead1e8f182badd7d0a40e8cbe42890b5d220eb8db97405aa24eeafa99e3a961399b67d6980c8fae31af93b82be42a634ba5f8426f7f0b892e189191a230c749b75877d1c7d41393a85f56cfaba9af8410cc72e416ff4bc0c7e2e733d69170d951a64745d1f830ac1af328e2486ed48bd51039b4d8234e0d20435b15abfeb8c89e5e6f44edee459bcc8b68d05fb985fdad075f5a7b47cb09eedc25ab77725ca810989b811ecaa7e292a17fbd57fd6c0d28067352d04f9e744d218817245eca8a28e22a7dca23daf25e6e9456ce497673aabe12c51929a78b0c0b0e4602bae4ea540e32fe43a96e45618128449952b51917ca2542b4d6783a9a37d7e3d621e9c2d5dbf7639b4554663b471893b85a9cd770b7f86f71aef36c2b05c8f4fe39f9905d053cbb4901bce9bc351fc3924523c6f50715a0a24e7d5414fd7b03e5237b8fbe0b1f9e9520cfe42ba641c034c396181553a63490aa67a688431f7374c96065090e42f4eaadbc9333ccd24c85cf7bf2fe482ecd1a77918ae119b3e7b45a574658e26201a745520e99d7cee33aca8b0877f7064878888752e4292fe49806fe0385c537c756e8625488a5d7fafc2a5c5a0648c188b8a829223e7699e3bc40a8cd3f5926c1fb8aa5d4ac5291222a84ea04a207636e94825badf626db24646dcac41ae588b764dc714ac417952d6aa29b5b590ee7f286048349c955b9bb4eaa8b64a2ad26d5c277645431939942ef8f19e10df698ff69bc6cf16bbabc08ddff21f9addc5b0364a4f8d41c3865beea519c46756bc5620c2a074fce205ffb1a22c22f5e6e02dc89d703bcf159eca86e7a6fcd0d947ee629902bc45e79962c45fbe646f9d1db9175da0322619b5f8a7041d957021bdc709abb11394863630d0e1bf05d1a6ab1c4fe2d1236dd54ce2e6a23eed23f482c98891ee7dfbbe20e6e34aa9fd7f79413881cea88c6ac6e41ff62f06a606e6038dd4d85e892d505ab78b79dcfcb5f85a1724084a1e19f9fd3c82a5bae9e8c22201d28fd52f14228a45c065fcb05e6239c0d2048b13779d33a4822a97fa4646012623cd2331da1cf45069c17f31a23c755c58c3b263c93d0cd535ffc5c1274d8b4fba45eb6f877ea5c0173be9a6739975998eefa0cda2a10d69be2899c6b7ca85f181d22d5adfa998904a257ebfe4e5db48c8d7e06467fc15ddc3a0926bf21034b9f63cea992204ed3f6f837dff7c5637ed88116f5a5074d3946813e6e148482e49531be500645713df68cb269d3cfe493bf7c7bae3248dc5439387b5653ef8560af969bfce0e87764aa1c90a8c9abcbd08a27d45b69f690e2c45917f7ee852a6892ba28aad6920e92d9ac92eee7ec67e7ecb807dff1783e207b12cf040eaefae098bac8d9a6da39429dd4082c81ea5fea41df9906b3a26cccf834dff4ff9528298462066190bca995042b36bcff3e8c1c0ff68d0c43d7f18e04e4aaf17ca17a9ad8203b0986197665e22672829a6c373e1ea48b744e5762c2530ee6a528b680a479fbbbdeed331a0e5c8887b642205d80ba101b722301b4b7b6502c1d0569941701fd4eed72a15c8c8e244f6d861fb1ad168eb2382e09440187d7e2402e7f0834706c6a4a6cce05d59ee9a9aa12a12db579a5d8cb07174c5b8d58568887fbe1af5e710c9c95a70f34155ced2b48cfe5d66a4e7c863432c0d669b540bd800e76755d0ce722f29ac2877f3649f2855f32bee2e63c6e3b23eabb1c0856a0d801d7220aa9091af23180c78f2c7eed0c25e822d1462ede348b5b7e84417f391992c06aad771dd7d0507c7c6619079d3636dd101df4d86831e850eb105961faf1223dc023b988c1f9ba5992d23a8329fcdd89074399d3645244cd9cb268be6d0dc0cf0a088c1eadf3b3adb53471808223211d9a09a3b959971b8d691588eab104842a2ce380a9f269f61512dec93ca1e395cd5fbbcd49026152f66db7d53af6d205d2870b85e0184ece1c1d8de4730c6d06b1421d83ffc52885d4d2cc551832c47949f145d6f19112e63be9370a4f1e27e32de28e9a867760618382f19c1f1ca93e0d937f62ee827f6f82ae0b15ee8f733f0715fbb9d87ce46ebaf71e1589ad707bff86c6733989decc33d08b738e623acfce18f672cf7627733e21deeadd1dca5b0cfe32d3e7fb4c335a314c1f48cba265b7cb7488352783ee586a0c1fbe14d074624459a19f52d07cc70efa4b33dfa455af8b84f7f4192ac7bf9ab01db9470f850c15d595996d8d0e0dc573da62200e765251d4cc5b437300bd4dce164e6dd8867aaa5de2f85f84c214aa4367472ebd2c1f48f2a31c1b8996c68a4849d1482201f14e0bd8c51b038c65d1e1a096ee53f0c008670818e482cb6d4575169850b3c134ff3e8a74e038457ed83373b8df3be4c7d2da26496a8a81e60ce4af929b2be1895f3d7ccb021dbc610226ac9dd9e6071016ae55d501402221742e0455c2b2de2cc230859528c7946c9b51370512f110028c649ea083cdb6dfc2eb16556227e116b51f4029e57e3a223df594ee97dfa74b084021e9dac7ae19e4501a30a7c10fa0f9ccea3023044fc6d7d13d1e9aa01b1a507ba58836931f391574393fc802266dce4786b37273577a45976e9dd2c907a0069c665ac1a1123cccd06f5f1cea63f4d5a26cf44e7926cff969ef0c4db6d44ef1ad23d0e03e43ecc893f9c71f13b34b4194d737621b40e49a3f6a3c45b96ea30d3b620911e86afb1612ae196f63159478fa00b9a08263a193bbf0788f22f423ebb1d28bddecfe6b797ecdc5c815491b4923fdc397bfaa8f23e4dd5334372ad5cdaa1582af63364becbba05ab16a3209150d81b021ed9d299603fe7e9eff5bea27ba962c25658c198dfcf546b6242198edcd88a50d03583733da4707020e9af54bfe560ba3854816d77192dd9cf5dc444cfda0f4085012293d1ee94cbd709332b4b72d0c6f3e87fc4742518d5c70f943f1f8c9cd6d3adc2c400e4c009685e2b8d71f3d0ed871c9a2ed2dec69bd1e3defd6bf9deb2207bc632856fa41530bbd829290e9c589130b813f17e52acc1c0ced4f10773ac9d8c7643f6fa145cdd4cd960eee0bfa615f6a45e32566d23aacf0b770450c359867d28d3dc4a66bb9223b83668d9cc79586523f8112ad159f32b38f9d7da7c478d67255fb968be39cf22c3034fe3a40724e9896a68f8cf4d683f2aeec5684faa807b8bcecd8d392094782b66326d3f763e86a1a1bfc8a2c0bdce3a6d90046436b14ab632eef681fabfaea4ffa7bc2d551e0194f1ab64e3f441bb78e7f32c5fbf79256bc242619c68d76b022d90e334212916d55131512ba256c03b03764cb1d4015c5bfa169a14c723fc6c62b5c1986ebcdbad723e17f4ca9630a3f27619d1f217e0705e9ca6750c13c95ff32893373ee6925203c93a90e8d6331e8b93709de49721b64293cfbfabe6ad2b538aa4bb752d41062f95c1b679431ea38c3618c1f93a2b72c34d9912bac06bc85e82675a335954f55ab961dfa9885442d85a8297135b95b50d2c0e6771c92f65faec7208c6aa58e5ddba608aaf06cc9bc3511d72c140ab49490a074ade866ebc20988df2baefb4945ad4a6034a5eabf11ad2d4be48981f053cd5a5ae953f57a137283496a6227332946d3708a1c92aca3368e553183a071ab32b1d56915cdfef626fd23344e0645378a145fc71350ce9192c5815f3cbed3d6f7daa2f5ff701c68133335dbedca85b2fd28d20f8ec8e06e5e89b2ed6bb68d8239f8ee6bd2a517f0358c24307d703c848088ac78fd40d00a9286b34be9b1748eb3709865def09a39f8b544d81f61fb642b5a06e901e3564ff4d349c441871eb818bdf7104fac4c2a815a2e32577d5e01159b8b2e9739f92099e09161940b1d280b17c7557bd10392359f11a6455471e804206081c94080eaca388e6146126537750070dae5d7ee9e9d73fcfc8af4778909440ed25fbe8eae3b0c70bc8c6b109450663b6410b3eb2478fc08af2369af42648869bda9720b5a8816307da4ab43cf96181d874ec7dea08b7962fedaf48e013c6e64232133e9138f5c3a5a448738f211e2e57c27fd117a6a65d3e413a681b03fd363e41231423341abbb8ec253cee72a5ed9952a85c9b9530aeb0718671909f8f0e63b0a3c5a44299c34fd36252f1edd1f02eb0b8d81f5bf1520aa9b898dd828ecb8879778a3453980adeaf3b9517b517b7397ca9e50f12f05bb81e9077c455375c9a6bf144c68cb78ca42260454b98ba00fd5a17ecf1b9593644026d0300957542d33cb42e49e306a7a31a73a6b52958667dc3a498aa7e7a0dc19f6fe185bbccb4a0bd0931eb4f71adb11f8bbc6247b0558032457073c6a65b670178a104fa0e90508f382a604474595e1de7dc1f6564e04b928f52a83df0188e4311b68e6d449d9ab3e498106f192a4d48ca9a0c548d6b686f1f2407e4d2d3e05b403000d40b7d7dbba34e479551a652ee01b3f44ca098d378b4951049aa57fadefefaabd77f1ff3912bdce0915736a1925d5dcd32a7d6501aa379ebe0c27147b760072f5189ebfd44d97dcf19fd15577ae0afc7c73c3ed0f2006e1d6a0bd4410253ac5c2c517ba986e4f927752ce7a7b1c149fc28227684ea5780e2cd50ec3359b6df883ce8100cfb9f34003756e6716cfc84e45288f713178d338c2c63a5a9e504098ed6dd36000b6637166da471b8212240613546fed618f0d6850c16b63d85c727e30076886203a00d368facc24ccb1f8f5e9d3d7abe5748714ae6708d0fdf4b375f07ccded5551f57dfeeee12d7a215115bc17ed8702d48f63de80b58e6eb37d0bf5f84b4d9253d8be187afb13a05b0c0b34040c2b0f2f3f55302e6a66a98cbd9a1b612099f6b4520aae664c017f5635c2148dec390ff5a6f6699220c3c7689cac26fdc9eeed41c8891b5b6b61cf3191c3dbba843077d9c205a0014577a78bb65d8db97222e91ef7a76a3da3ca423eac1e9168993e47ae4c94b4942fdf0d76afe8d17b90951a5a173086463f09a80058c28ab7dc18fd7417e74a061836bb48e1071be1950c9ef2ab5daf51f7c085918e2fed4e039a195e0dcd2842fba0b4c15af34b1a6dc0be74134b20478aff6c865bb6ec4cd7b10fc8bc5c3bc70708227e74314c493d7bf452e521672658f75f14a6a654c291f9f5cbb20d596e4e1adce5ed11d5a52739a678f139edc24754330e00d3065ea1a95f0d4bac87bc4a97ed5944e86dccbf4916e51a6a15000536556c019b39c6da63fc8586f1c3f4424f09ba8ff237e87130f7c8c36ddfaaa0c0ed1cf02d54ca9d97a3619905566c86892bf5b93f76c51ef08b0eec2c8db98c04542f6d02d24404b60c408db79ab68bd77779f3dd26ca7c4615310b5a9efd58760ac7030968ee70fda6390f5325c689a407f018db5c6f45f779522443824c912d2ddc582e741622b63aecf208d4b7bebdfcd721798d96dffbaddb1d6cb68e4bee6293a806322f2d3af7388dffe7976280c65de9a4c7a4e61de904a07cb592cda9cd4edaed6998595c73b81e1dad537fd080e644e848a898378235a366242b68d51e5e0fbbf8ff9a9fc0ff05c1e2a392703345a7f7aacb6ecd7aa059fb21fed67c2aa914a91830fbd210b57a40bc257c421c754469d737c3206784bb60d3dc49d36f69483008f8e830a4c4c57c299ed595689c74630392d5ac9d9aafe6717d2a5417f666836d87b41a3d63c26ad733576f40fbb3371f67f780fa5a3f9af4ce47ba72c6652a7dd954eef34eddde318dcfee87230ebb7e8b28e361c2797fa43a7d3a04c298200333ff20a1399d74c93f6e6a7bfa195dabe7baace017d6f171b26e675130747507104d69cc90fa97e335d795ef8541fba5bf9a86a3a7164bd0d6e2b603832cb375059386dba6b3fc7322d15aa1fe29e74c6decf8e830c22c5ed2d373fd3fb79df4db7ad19b7744b65faa78838cb975d745c58c8ee4db5b8c30438957febe5ac8c73f19c69d767e73d2adf352bbea53d2364bb27a134e791e225bc5cf8a427c66a44f24ef0c28aa1302989132bd78d8ad3180d02f343f757b2ce218969b4c20e634d00829f9a2f6d7630f540290b3e35bfd2423af8913daa996f7503f6047870a2e0a2cf1d0f5e4c68be48c8a6e262f388216f12ebaf83b252205de40abafb21ea0e1209349e5674b79b7d607ac59b8c8d49193d117f5598b1ed480724bddf0ebe8221fabc63d6c1a56918f38577f8ea090574ebf222ee090814c26622e1be609f6ba9e2d3f25a771434345fdc8cb975b858f4606478dffd698f5e305286f8098b4d7a0da27497c3823bdce7178c7d9400125f22b47fde65109f3ddea48f0aaa28423b9a655fe061aa06a4b36b707cb490957e4f9f2a4dedf476a4b2c86721dde0d8b054201c2d8033e4b9ec1c28c96e4488e85aa5348883c7d9ef36c6c98000b2b987152ede8511e6e15d5bb96f9ebd01eec7b3763aa42ad768f0d435d45bfef44eb37bde131c238b52fee63be70bcb0e73ce93a67fe160a2fefc1931c18994dabb8fd80acfbc16e7f8b0a708bc03de017f05cc460702e8105f8b6a90eaee84100b48cbf2302e5bd4e5ccd7ff9a7567e87085b7ba1f07ce098b28e012be53fdb6b29456796d7c5f04ac1684dc7ef899bf04c36f062b1925e8057d9632883a5b2d50207794f9f9012e6d2bef5b1b1d839d0387b9815cfaa9f4caea90592ca7d24b9f7a6832c20c8e673f082d95a998ae64cc3bf8698fa266aca3a05ffcb2ad4c795287c9f8f5a6feb482a5592e1c50df8283905964245a58b8b84235067f5b42300ac017c4e794dbc3f7ae4162b3a59f7e7943b39ea43f7a2c1095225aaabfe88ebf80cd44676a3f65fcb33e0d9fc46a60d8f9dc51f59ec023a2a483737abea7a20c911dcb1c293cae2e33d9d8ce4431402986d7a3642730986ec5b8b83a57c1c3f02b6eed65cc9c8d0bec630de811233636d3c7c321ffd946f36f86272ff23d43535e4801007505664600028fc95d6dc5cb3db6809b44e025041e40de189ae016168b392f2dd23129eeb14c6d9990faa9f62dbcd468cbb6e250be04c88f89d348e1205d78401157c3d3d57455bf1f4c068b0eecaf8bcaa0e837fa6e4e769521153c7fa235463d065dc84ae100bfa7755bbd9fbbaabbaa8b00de6d6e849c3c5a976b0530569422c1dceaa07a38d3a8072c6cdc3b0700fadcf06a1eaf1fe553fa0e3f9b702e622966307afb4656aa611fe0973a3a8ac5aef21cee69bb5beb157f677d5c693fcc9f5030fd45b5b1c3222e74fd70a446e5ecaaf81e99951864af6812b9a11c99a9e2a5e2c869ddb9ba8715030c6b19bf20be84beaedcedcc093470cb356022c52580fc8f52d312adce3e72cc4e11a1019f0c89c3da09bf37490f8cdf37ab9682f1a685b5656ef7a1325e09a1f5029b3ba3f09ce034a6ab6c2922ebe7717f495e1a832021008f02dc9676621ae39dbda702766d547d6f9c1ae1afb3f1d951783fdbe83c0af52f08f0c6cad683cdd26c51d6dc2ca4ba7cd73f8421d71331bca0f7043971caef1fc48bf7d8a2ad373828f8f8189bc7388d339eb6df78fd5e4fbb66e1ef4cfa89b46f59445e6ada5566d6d094aa4685a387c790347ee5bafcf19d06be77808c69e48a1c5a44cc6748264df332420468ef4ca51188ffeb9f6050299982348934b84cd28255f299bd73f35dd4bb548b2e1937e385c96af1937f116f10513cd71fb97be597d906b6bb04641728d0bc0787e7399a7bf82a4d77f32a1ab3404799c418d671b7605f775aa925cf7d2f0c9c0b0d1814bf6960b4235cfdcf3463a04d6b15993ae3f6ab15c61fdf05dd23b0c46a5a73fe013f3c5ad84c01798c1f234e3a91636e36fc0d01d3e1569863b5326b09a2ea17baa08d51fd8c5676c987036758e1e6586355cfaf51fdfb31b7223715927d3041741fd0e6b907aff3a5c9fd8e6a2df0242517299a31b7153c92a7cd6b42779727758eda42faa1949d40c16071ddcead886b0a19f6d89b94f7cb25f2867ce884085f74e7da6b31f90d465285b004ada318e5794fafe2565c7dea33b34c8e04de09f138bd24c219acc165fa0282b50c20aba7ef4dc9df77418ba4fb04ee51e1fbfc45bb0f1371899b248b5b9f17627bed338b6f5632d5ae762e25ceec00db98ca251b8f1f7e668bb1bf6c2c8a104b395c7512a4031914eec2c45972b604141f5d2973d7d4d4051155a66dcbb82f781b3c0a13725f2ae836c179675e5a826e6feb727acbef1348d0fba06bb7548b8150c0a916777c4dca7e7c6ff2b4e0190aa714db516b2a45f57e153672ab7d0d52f966a081633cca23e9f261a5acf7b0b8f945b3ab2f66f270c4c4cbc2cbd07564961fdb6af88751a53147fb73801e48ec4cf58fe4f210540f522486c2ec28e257b4c4a4e5de18b2775a83968e943e99b989ac378e078c094d7bc69cfbee89fb5d5267b6c4991abf01518410158ec9614b8bcf72696c2ba9a90aecaf11fe52bd3c98de647adeea65a3a512c1eea134ff418520762a7ba81612e87494fd1085a0556ef8d9173aff2e31f24dfb5b9cc4a948f2c49e6694a125496b24b66e48a2bc0f8218a4649a49c4a385b3e104dbe0009de422990a59741248243435a0048678af1825edc0e367c34224b518d79eaa2041c6ac5932c5d9def61e5b7c1c53524fbec01daac9c03b89819d03a2c2945486878f24744484d75194eb5025bacc1d0386534573d44b8883728bef9e3a827204fc05806f7c08aae9e9b90c8e4ebae71858c205353fbaa3f57200a0caddab35252f5b1a96dc8c4b8b6c80c40f36a02bfa6e4ac4c7c37eaa33b9c2160b7aa79e87e43362e1baf72f7090951d5e5890d20cbdedb03fafa3d21d382e48d1d75090a601f4706bc2c3e52f9bde3eb15739d759175dd5adf10884f5db73e6ed0c31395243446d547d2696cbd4363f3944bad089841261b3a83d443c502d36ff6e81bdc77bfd33d56aeb3564c484713c72f4089ef3402eb6a731682dffd220310c566d2c8d341dd2f976699267a09fc99d65a59cb438b6c5496848d8a9628fdaca27a16f4e6a50b0634a37c7d853bde754adaecf4ab4555742d0f613369cd6d641820109c00e0aaa9f394f4c69c8b7fc77e6d703ca74513d74073cf62858ee3e40fb3fc1b4617d5375b8abc9387bf91368785064ed36df6687fc31144ad57eee9bd6b342e5829d1e664c52f7d1e6129382495a69a88be58b77015737e220ead41888d4fcc66b7b03ceb1589f778e16a4e5d8798a8c5a724dc34611954f18397b2821e008ee10fc970ac93eb5683d54b55472afe1f0fb64005eb17ec228c43693dfeae4e4e5ea98dd8dfdb84635cd43d99968dddf74b4acbadeec6320812f4c33169e19e779bcb76383d82ac2bdb546d116186118635da9eacab602b9c832b08945ca6afddc2b332fa07856a02b81300e813d8121e4d74711498325e508452937fd570a93646a2d3e99ce34a602f42c48d90b37576c148a4234de21de230547c74e9840600d1a6cae5ae2c29a2617dc9960c488b87bb1ee82a107804d7b2282339fd9be6aaa5b7e05d7200684939ca850ca6ea77fc735bc801baba558cd2069e7c89648c9910019214455cfce58d913fedba0fdf0b6c77c77ed7cf64505c97a68e783cf74b80afcdeed6e163939899105404b32da25c69d221a8b62d706e515358c09ee667d0e499bf1ad6c0aef5fbd6a657706faa04031acbe9ae19fab06014d81aaa90355824714606c755e921305afcfc8b3bcb9bcbea5b3b0f6a266e896b0fbfbeccb744426d421cd84b260932aefb3a1d3a3bf81bce5bba21be781b4c4c6b9ec3be5df4a3363718343c32cf13a4880b82d68ca65ac5eae1a380842794a67fe8e4993594bf6c863ac95bea0ae9f6dd06834b25781436f5461e1bc83c4ef632fed9aedb91f57306414f24574c25dc02339507ec7d1dea31116cbf5d719ae81856ff19fc1003b7aacf942cd3bda83473795170083627fda2ce76ec8b5e507df0288e1bd4d46d01fdfc0a5954830f65ae0100f0b997b1c78319d05e475d858d8c18c6bf2fdb35138046810ed7a21b8032d0ebd179ac7df65fc2f469485726327277f5d570bb9487dedea2823f0e6c221a89e62652aeee1814bae2a0691427d6757e6489be92300319136499dfd98942235266c4507c2445746fed57c66740885c3f65284154f29b89d2e40099a244f40b3dae6072fd8fdd61afed79aabe3669d4221320d2d4b7ba0f17cc4f76b760773ed36f6e53b3674eed2f57562b309cbae54491850756c415d9245bde8b9a0bc1f448bd4fe65496fdcc531c1bc114df54b6eceda806b60eb6f3c369c02b4b968c0c3c0dab1140a3348a711572b0091f6fd8cd95d85d62f6a7708d971646b693785a5381629fee29932c611514051c642ee705068486f356a32bb471811ab3e340837fc7bc2b888dea313e140d2ad64106385630b4144cba15e8b5175690e90df43affb3d76bdaea716f9cd4c69ff044562cb914d8f772c0278a90c590ef06219051bf076f913af998fae64b905b741baff92e80de3c81230777723e505abb9e52e4f4b23417be2f5abec5a6af9e7bbf3ebd64e3cf039272364218c4bcd2d83b71c6a5ee7dab94554e2242705b0c88c86664a4c33f2d2dd517aec1054d5fd1c64fdb11065ef5f64496708f4df037ed7a5adb3ef9944020648c249bc3df0aa731e2103b7555d6f2d60fdbc1f70e26a91835ff7e026e00e642d15d217fca1c7c5eecbaff1a5c53358be40b70789cd22375858082781f7aab7ef87e340eaf697f53a31f499a517e53d7522903cf2e752a2e26e18f4051f4487f3ead2c582f64faab12dac4651ffd447646b8ee28423d5636bf3ed58b8846842ac6c03ca0127668ee4ea985332dd8ab76db297ec1aeb971470104e1f1e025a8921e40e019e576cdb0ca4c8651ebb8a09bd630f321cee19f9e916adb0a914047db7af0f78e6819266ab6c725ff1c2c0d5c50aa2c7ed3fa7de520340ef17639f8ccd6ed1e4e0510ed2b7603bde1ac9196371802b6c9f6a2dc6e4a317543790aab0a047d6f7ed4dafc498fb1d28d00c6c83e932d213808502e7e2f6cfc07e5472737cf09e659aa2534b66585d2529d20b35983f44d64c61a2e0e13f2f2e6e95c1cae0948bb3462e7375647279c230001a22402dcbd862867dc36d671b54eb15bd8b4eba486a5855ba89c4e55c0aef774b4eb225d6ccd97e031cf5ccde9feb9766b06cd29df5138d07696c9c47fffef4d585d5c79695327e6eb5d1ba098b309def433eb2fa1fcd114d267ea4ec3954091b783a235c7fbc10674d74b1307f375572d527db893b20dce5887b1000bbeb5e1ac3d5beed8ccbf5f509e0a5cc78be64567c2bf29f89f7a6187e4040dcb2b4527220487261abf9417d001e53cba6eae3ce7af3327f8e2be2ce1be3a0794ba7ec9b58b55d4e1a0052be6fe92ac844b1d775e64c238968c3beef12b42cb072f468e0c4fc9b530f3b6ffa846dbd2d06416f9ffffbffe5e13d39e14c178ef4b1f6fe902f3e322883c679cb8ade175c3a40939e37c60cca4bc1b7b8bfe1d81e84c352380ed95809635bd00cd392ef9ed5b5cd135db3d5cebea9a67cb6cca6d00794d8224fe1ea6a7f1fa7c13763142c182effde8c45ae385b21a0565ffb747be6459e1cc1cb08bed6b8020e732628c27a95ebb300195e3fa9ffcd656f94f57720a520c438263a1e909dc4a1314bd740b9f4a88fb96336dcca40565240bf685f2d6a6bd7e43c61bcf41c66ad9902acbaebcf9d188584ff579cc1085fe92546c99268224e25a53f22f2676e0285255c921489c7c81ee5f3e0ac3aa8406ced1e20b19fe284a8446d4d1e5a792145f896fb8b7b405aa51191b9c7f004dc9895ffa6d1de3b85a9a487023e8bb722c362a18c8d2de388b0b10c18d2ced190aca80d3dc4f4f99e0c87f75393213159b28c6cb7bed386c10aa27512d079408f440983afb22ff0dccb81bb40fc409bd90f181f28ecf6ea47d17e12012a4e3312f774953d533e94687a2dcc1bbc3956c7404684da6f6a0e26be95078c6a7dd6e6f3a188e734d5c357192d7a007691b0ae639f9b0f615430c7f5edd48a1ee59f606d596efcc51bcdfb99fa27a105b78d63ec147e55882150b9c81be12f4affdc62fe4758eb7fac3737a1b07648888e14e4ae36e9989719b63fa0ec69ed024fd712697062e55ab6f266f8f353b9295c27cb37fad0359da23a6e22e7edf192242f0c3009298389110ec464b506412e1f416c91a6f39a3f7e450dcbdc091d1c392139164de2884829e4a1d6150794bd299cba1fc0b2230f727326ae6bfa8b000e00a5825b6701817922afb2637893eec8c4df871f107a7103aa6d1bfca43be4c6e34983a10a64636db80c67a9450a73948472e42aa35fa85014f69adfdf86786739769e072991979ff3cfab524fd4cbcb958378b0b3d0d91b76448ce3b98aaabce7ea817e13995d94d0a37415ba5744b1b2b3d6ff5297df4790a1d77e96c24c6d7de2b8272cd92616433bec6000d065384910f1c46b262c86a7477eae2d347934044abb2c997232b986297716b804ea3fe32be534b9727007774964c16875743d8aac977d3f036bff2bdc547b9e414ef54fe999c4891f375aac176aef50ab561913c91a7be5ffe55d8c460c0fe1809989f6ea2704c63cb2d9fa87ecab4f990a3728cdd8a3f03fa65dc592419e6d243554912458f9778e2ad9efd07867228af34f1f72148a628c66d8cde517868ad903fa1e691399124cb85c5969a461a00be67afbc8dbbb5b43aa95c65ae9ab9a4d90f59f3c50a4eb742f346756dd4bb33177d12f29ae885390e280f7ff22c7d823f64312fca654c3900a0b062a218b435982a4b322b7f10a3339ff1235ab943c8d588b45bb3a1123c5f250f6d6278f656797138ef370decee182a47863abd6d39df6e4193d5cec2b597367a3d5782c2a9150596e5ff021b341972eefef05bb668d1f8ea48b8ad84fabdad90d31620e2c662dae1a4701ec839aaf293460a501cc87ae64aaee334f05fc339c39fa86b53be102dae31d366041ae51a91f6646283fea6a71f0a45f171e3c63e36c3722c1b8033e7c71a1b743c9671904110ffa05e94e7a37230173357b34e736e54fc6e7bc0ea112ea3d6501f33c1bb5d14bc7c439d6d7c99ec6d2bc5996db34d3e52451ec1489023b182183d5c62d8debe435e71f27c59d0bef1045dc2df3e9cdacec0e91d470d4f13d2ab60f8524132cfe56f68c65f92eeae7b89dcccbcb0b09ac54a9dcd51f9cc336d240ba535c48c0545df01b827f29ba38c1ae80e8643384ea015a7eb94502c17b76d3946a3262358f3457e03f8356eda905eee1fabbdae2b9fa8933cae427552054848f57610765c3839238d9d2dbb70ef00f7188b799df6357a59a75d1905de20f560e8849032f6bad5b5d1448ff00c11220b72b0c816a5a0b703013c88c9f8c1cd618a4d9e3a33742cf74a1e254fa59c6a5260aceee3486cded3c802e6e05ed04cb6161b567bc817d860cfcc93d260126461a3c24c07a08dafd1cffa9a7538ab2a1e14e07106f2b76aae540141da72e522faef00623c1d1c14f70bec3d3d4c710f5c46fcd7a95c3f21d36ea4e29218b02798310c8e8f1603d6c158c76f28fde88cd32708c7965f136c7aaad3502dd50a3cfcb807c1b86150f36038bd5106c69adcd8adb2e2bd52ba40c2336c9383c45ce1475f1911f84d5ed8e2d16d726bf83738f259403d20d8a234556c1dfe3dce3e3d3eaee01e16ebcf22d21d334eb042667cf2db56539ce8d47bc5b14b599a9ca817284f8e24ed189b2d4f7c6177da288e4ed23429d5b5897f930db672d7d9028e06777e5e8f1e09a9b10e169da893b3f773aec32af45316d953de231d16911926efb830bcf6a8a315eb5b8594d1c20842ab9202e6f3c43bf5aa00cf26e73662e458b3c9086d4458f594250d958e1178c06e7ffbaa9124bb116d2e12effc489b06baf69710020cc4c19ea3105678b9e29f401e9ed79db8d0e8e70c1d85bc708cbf84a232c230a71b0ff16df7dead11724fc1a540531b9476a38c86a2e46a974ad8268e5625d3b83088bf133ebfdd857825992c6710c3d12f413e38a3d16e750807eaae82174fab609d043dde5fe854fdab9f3f642612a54919f97a725f8ca3ce4b09b30701ed9d1a1d8618f83cafaeb815fab91136b0b29b3f68fa3e05086b2ad88e36950d38ef1076ddb891a28f770025f6afc9f12b9a52d2b212c4b0f46a57bc7b51114685cc6b34f2c5c00e34e0a67b65c6cd597459e641ea323e345552a3781878b378a85705ac867aadb7ebdbbc3917789953ec0302ab4e048633d06263313bee89371f03e4dc7d78ea981731b399cece8d38a4a13151183427c9ed0719eaab614045d3041578323c10ca1bc35607fee011b5333dfb6cfbcebe33b0f0330cd8a9e8730f319bc69b1537f1450068dd2760f4b336db77e6f00afd5a3510ded2ea33ad943bfdd3fb4377d82927939c07e49a7e19c97b6783d4cb0253d8abd21b2828279233b66ab97770ad7a5de2b70b81116c38c65331001eb5f3d78481f6affa0191e2045630785ca9c686fa49c5db41bbb3add6afd81faab9d7b77b24791bb2bab96f66e222883ee2335253957fa95898456d45f2ee4398613b3bef282cc9c822f63f34d527014fa4c0df422abcef378f5beb315b1b98bf49875bfd8d655161b9b49fe7150abe02671580ecda271a63933b4257a0e59cac4bf082a76c3135a8b9e5d06d0069a8431d683bc1e1c018914968a3c8a3f05f7b0e1617cd071a11e5a38569310a299e1fceea2493075ed27a93778a476b6f88a1ca48881c4e4798a74b6bdb697c25e0155e87e12279ee65606d416383610c94eb61bd721e07ae76e5fcaea5250e0323b012ed9551155599fbd5e4d4aa8afa7c58c97e38537bed64f83a82f765869cc35eb0b74070b8f6c2be2189ccc281f343a920ff30f3f56d0b36d659a8062299d4125b0e571f3ee624a5a3c1f3b4814cf8e8fe00ece530c8cf9bc41e12a0582462d027672aa8a8bc00310ed3269f506cf724e3c2ae4684fff49debaab1a69af7edab539d4794fd014ea3cccd24105b7a7023c2b60e4b32977f7f9e14c2fb2cfb0668a1e1fc23ea35f23772007741e5cc35e59de1862a842e3827fce8fd11051b0e3050a80a0eaa726dc4a8054525e8bd74cad90abc33a76adccd14c0bc376d1d08fa6a858e31256f9a9b94616d818746b74a116b921e674cb7a74f07a973aabcc20339a9cb8c5f6fdc00da44125eb02b0d3201b42dc497dcfe20bba544035428ee0b375faf40a511852607aafd5a3713a4b5cd320dcee12a5553cf530280e56d11131f64173085eb17d4a99bcab5135f481293728e5861b794bfcf6cf08f18ef67cd7e5fe7813d631a3fbe009eb57aed8529c6d18a52f42dce1de51ca916077abe04ba3f33ea73edf8e3809c250ba7c3c87fb138da029a7db44d2b80d2f1412f63365a77e360c326ec400f914525fa976a963f811d5f2731d98643831b7c644087be51f21272d1cbecf1b3f765ffe6e5b024fee2d76c87e54ea3802164b5bc67ad6aa82f12bf6d34f15d750901472ebe57ad6ee98a0c19a0a37c2edcf518be58026dddc1fc48f048bfa7a01f78bce5c73156fc2b0e76927af9bf18d00dfef18ea053df58a5379c7332e60718a2c4028ae20d237db74d3dc41257ad89106e5baa456f96257eae5098f8a2ab323d65b5b889bfc6fffe39994b9ba6bb8af6c01e89d6a8943d2f1bdd19fe23bca660ebbfd0c096010efc4cd21a488977d49fa44e5eb59183be3765c2907ce2289b1378f431bd1afb68332a67e13fa420ee53d84463207cdf38af0c5c54250abbf0e458a8830bcf797915ff979976a0ff3234357b5abe9c6fc5c8696a2ad8ce382dcddee213a44cc4fab0d0fd3dab63140558d40ae8ecee2edd82e273fbd0327c6220794a258fe461e1b03ba1644eee8fd06fec1b2e93701c1d0f1b9b362e173735320d3c0374c30cfb6d0ad0a6ced21c978bb82c876beab18154453fec0c77ecddba9e9ee193396aa369f70558e7769483c746ee887a97ad246ac033abf20cb28b4e1cd3924123454668ee0fd1501fa655e854844ffe3c2bd4dc9272f29f6a1427eb76fe94e70641db5cc6263934940fe0dd383ef282490217b45d0fb53cd25bb9e8fd23817c51df6c43d8863e1266acf8cce39edba0fff1e74109ca9bf6e5f799799d9604d04d294c9a8b30c86fb6e969bc65e66ff2eae0fc1db8e38110d1cc30597d331fec0e0089054a7b610dfc0cec44d8848b1d83148fc0a9669ba49e6ac50df3ee462b5f985e0515d25d088dfc14ba1d510c974f5e2e444a1957dd4499cd49f7a97328bf23df59f99b226949ac4cd078e084c66cfb0ed927218e6fc755946e24dc5d4749626a4743bcf7bbd30103c57529bc82870bd87d8eb4701c5d342e4aff765b7bf5837a888027cb1c6f0325f30ff702c60c55ff3f5b4cab5e6a9fc4a037064f7f15d2e5fe12653252f21f5acba3f148b3974779605f0aab87b67e9ebcc8116b56a4acda4c444df839491d7908eff2a0c3f542bba813b993c829ec4e4963e1300a752a86ab2b8fdc0bc65b920e188816bdb388647936e97ce806f5233531c24831134fda5c065e587a9bb625e0dcdc1513123de0008782f6941eb533d08fc25cbcb04da7a98a853095b4598e10ccdd84de05f5c5b8d30399dd3b97901b3cb99e5bdbfecd61ce72a1f0a89717b6a04b4deed646ae9003ba96b9295de6f5c38bd613ae221ab0de24b58f2f477c808a8f65d9c8c6169d0216358eb7fc9fd9e5a8bb409d718313442b81027d0024c2572dd0cca12252ab6d9e7b9acc9ade757e3770ce49ecd024ce4d51f1b2049d7e9ca554ead50e732ab28a337ed08e39f969199e46d06541a502bfc444e23d86f2be6ab0027f8b69e721783668a162b121b5005040a350a6b435932453676ab2f5de31ff48e1ad29bfe424118c76468acf30ff4a3a752be86f5497a32ee5d9c0a231dbb3e82da6e18554c571cd4f81c77c7f4d8a2f46d6603a80368c052b5c0684b2f1329caa08ca38dc656f9ce2ccb3e8795b625f12d8fb50e9d535a36ed85966bc3855e51a33aacd5d45c3aa17a5d26e7bdf9ff93995f5898eb75641f1779f036a91dbad7a8d482273a5980e7850c93188498bd088981767891bb7824821389023945d391207ed910f3cabb46f34bbfe19d139072888a173370e46a5271b25a4ffa92b1ff6ac51316624f7e26004ba2e2ccc2f817ca78b66179f0b1f34005299fa48f5c30e1de0eebec963e778411f5c5a8afa8983d8a0ac3731d8da20590e74ea49e35f68819b3555e35cd28f8611fe1863ac20cb29056a5da3041d700ebcf3cc6600a97f808eaa6d9dd122e96c33b96842d74447ded3415d353fb3176a11a9260c3162e22976a724c7dbe9c92ddfc824f6a4d163ff519af29980c39f15bc31ff4a7c90cd66d3caded47acbefc1825348977461650334e92dc7e17fb0f84ab6ba5e9a439d9e1403a72e63feb910d3765e2254e9edb4328e263fb28f40a67c976b42c7666e1f952a7525ab6dcdc99044486d602d681874956931db0c79a4c4e31cf1f04d95d62b94ad3ef55b14e6716d1088d4ed9902ffb0cec28431588b949fcd11df687ce677badde9bdb31385de6b3ddad1fb6325856218213cffca36f0d364c37423f0fe21b5c830cc56fc8b66ef684daa740664c01bc7da48398f0661429d8198350c4e221fd8ee0dfb8c3f9b9d7885026daf38614c6913e14e929c5db62b5f7a8d6173f3a11e4a8bed7ce67573c72be8f5f0cc7baa1bf4f239510d92147191e0a2fc243d02e0f8f61ef7dd65356d5130a1a0bac38d12aa5c79ae290e38c2b7560992d201a046864a6175eb531792636082861589921b926dec1ea58863aa9d9ae411b1b54f984233e0bd2bd0af90b66faf351325fafe13dd740f462ee262b0f1688b529ffe6e899c1cee589d61f2b0d5bd0eaa758e7a73468162d9a4da078adafc4f8f6415723b3a3894eac3bf5461d53645bde87788a2d8a2777df173736c9c414453c89334f63614afcd768d47bde55babae7df93e085e7ba243af5e01c8064385952edd566682e8fc9f203d69347c45bdbb1dc6d4170ee852ee86657f4cfcbbcb378105e96989eb22a2bd086fa06d7aa730a549ecf7f55321502894de77a2fb367a766513b4c935d9920d244988c591d5c00575c843b090fdfef58f8724b72f242e9805946ee4efc677265977c6019770f5be9eb5b60aadec0b4099f4d79bf796e8ba8cc3765e73fe4789560d2ef34379760d8e529c7542e0ebbeabca6e4c1a62259c62fef267d845453ef6398d4d33c7b966dd263b3ddba3945447e848a007f229e142b449e821640cb10729b00153e278a8990ddff60cbb8c00db72cf7f499bdf42e71fcc8759b10059997b65b45194ec3fd5d81aa4d57009b98f1c4e9c6bf9b91978d9ac71ab04e66940209f0624a213bce6823229d5801782c82af8fdb685b2f8c32339e5d96a7c49986f592bd9e62c61965e6a252490bb216b0a8159ab88f719270f876a34f35a686440850db50622ee1a702d4509095f95048d1efd8b6eb4c38091a92dfef03a5b26f73b6af13addded6f76f3db230f61aac9aeed796f348f82ecc7c496527e670761a3891acaa47afb369c782f4213b24a5b21431674f4b493daf5d0483ac26e8de91162127148668d15ccddb2d38756a22005d04a242ebbf43865061c12d587683e222477eee51d3946d374702658ad249dc32cec593aefcc6a48d12a7e0cbfe54e514e9e1dea3add61ea237fca71ed4ee9d90adcced38a0f84ec7108ff0eb6da3d8e57326266edea7d4db0ec313ee927a4a74f7be04031d33ac315b4d2a06e02a7499e2abeeb87c145a52b81e487be46976edec099952cf4bedb469d6c5ef9d715ddf946302519f72b0081ab887b7a66526e26479870effa5701749f11e382a1630ff3904ea496861293cb02f543f89aa5bf4fe9bd2ac985ac95655ec61f5bb888e255a66bf6f25e18c7a86f0931ea505bf90042f53bb5e34081d3343d7933f82097a63ae4139365393c228b338859f9bdfb6776fce36ff859e012713d1c5e3e4f8be567499b5b6dd02598b29f6315ec73e7ecd1f4acb2894e3ba5bf63c975ec7ec8b72f769f9c19b9de83387bcb1dce429fd8f1c1d6906c79ca2fbddca51ab87f6593553a459dbbcfb0fa1105def788cff37c07504f749b8df0ab19c8c1df2ce7a7e25ea0f9bbf1b257b21714649ee81383e48fe9f0eb5a2710bc682f6d416e81cd489ed89121ad081a4dd26b2f3645a8d108efb5bfcee9a7ae442b4e0372e5f1500727d0ab3e8c971579343415b8f46b3b83e915f92efac076763a769ae8c20f75f50a83432ca32c2d68a632a92f5e46fbc54819af63fa4174ea28ae8b515a91cdf989bbb9d9c49e00540e1f7552fd120fc1b68851378027886c5232dff117d54c8c1b6b71d6260a405148144372e166e66998713e7967c9fd290498cb2fb9ff6c3296339e3968eac6b99e8549288a8654f982b901019b77b443b19e4a1a9ea0266e15ba3e5f77dd0da246a7bcb9f51e1537bc07373e9135b1ac8cecfb4ea6a66d63f28b74d2590775d3c91056d102c5ef400471c670b6ed9773899fef92cf30be27d03f0e41f6bca3197412aebb3c280a2f0c1582d4cc752cc429677a7f7a8a9c3cb0fef7b5f2b41ae148d46e79b9c398f7b43002aa1bae2135e65bb8a0a231d6eeb2b54bd4061e07beb299dd0750578259bdcfd20cfd9b9a3e77f24b4baf9acfec7f0de1d7ee9a70ab4cf31fae7234fa24b0dc0d4841d7e420cf6f9edf5a42a74667a0bd2643989de5423d39ecdaae55a52d38bec8474571749e4ecbadd1692673a7d4f4564457cfa3778f0b921be3b201562ad22d6a7d3359feb7181eaac3f033b4ea3fe6adf277b95ab27bacecf1c1386a0a6228e145af28bf49873cdf4dd8dfdc5baa573f2f08775c867281e86ba51afc430d622a613e3ea353e7636456d777406c0098b3b4b94ac24018f397cac75f9a27283459edda31b28acd4acec4ff738373900f722f7c2084a26226a42490f817ecba01aa72f3206c6753a969a3b6d6683b912f633985ff7e2abcd9815d95c19bbf7b65983f346d9f1f9736b0a94ba90a347d55f633952fe6ab478af35ac881df0b876f09217d6a322ff769c3a491743e0881990a5738c01054c7b07f93598ca9eef4a7b54fddf5f604ae0b4af6d25c21de528ca77aea7ad9465df51ead563397ac4061702ea132030a6199756ed9d87fe05b71ea960a8faf1ad4b8c714be66af016a7db81a0ce5a2c2e7b7bc322f96c929c96ce44659e4bb58c6e5994559ed44bf7514ef3f290491ae56c5ec9961f1d110ed74e067ce3b57bd412ed5df4c518de182874c8ed4def293e6aba01fc32fc720f2b04a3c0f9abb726a34fd2c433ec167c4e422ba11c08700beeadbbd34c508b0c8e8c080359a97fbab5286f6d1d757f40423b74bb49bea04889da6fec28c61888c1be0a462a709b5890de59c8727e8b5c96ec8a1432024e9d09c530561fab5fb61ae15d284eaaabc28ca032f94784e89c90a7e0f95c3601f3b55316f8c28c79f2dcf8c5626b6035d001ed4f9d52203aa13344708d41ac11561f62f755bbc75fe9b510bafc68d1971289aa7c04be888afc885a2a93c8a9edce5f526882674b53438b98f7f878c46affd5183be807e883bf3338ed9034e913c0b37939d9a544d5ea853fbe09da2780903c58bc92f898a4ce2bcca976aec90555ec8d5032544a0a502dec8a3edd14f913b111afbb13016dc2bdb9637def0bb0dd583276b8a19b0d6d7423552a2f9ec42b88fc461dc0421a83dc36248f671b61a51e1eacac97fc5ef618e87aa9a6f3874ac0881387a5fd0c737fc49e18f0940256d4e1b7410bb040067c03e5beb76928a17777db3363c266f2462fbee47c99edc3df53a245e8a441ac01bb92b050e66d3f66d65bd7788f491047aaec4dae48e060fd614df594ca9009e82e62deacffd411e4403d5f368173c47e35a4f213d0cfd38af361865a9d5869dc230b60b34c1b7a7a5a8c38ddf0e02e36cfac4d1f18cca86177b55d176a09ea4b21573fe5c7b867d393276fa5ad6965401d0292b4566afc4de654b69aaa73a924e36bd70fe70c9615366bb1b8f8616717a20b84e63be392b29b492d8ed298124f8ee85f97daaca968beba0428d98287480278bf2bdc64fdff5e73dc08bb799830d675094a1093bd6acd33f58b6a589be0b0b0358c8f6bfa1a9aa5f890ab5a6106045c5fe71a5ee91c17c98124c30e90fc95be7d461f08897cc9dd65782c936ce24ee40e5e4bf6f588c55704edd84ed48c6f9312b746818667c2d2f6dddf3206a5b6a9e1d628826126bd695d6dda7ca6799d69f1fabb6b3ab8a834081faa18a7b52bfc527bd379d571d30e84ea357219fd2c62942b1be2e61e8f713aedb7521fbff7a67cc47a3b6083adb2e12112aa1679b31decf5abaf7259b31e2babf6a507f9abf73b323ac000dc040387a05df5a0460674c4afb78eed17ab529c3d99f9010fa62a131db8c986d3ce7a17ad5d2dd13d2d4b5855ce2244e9e1810159d308db7fd1e5f838ff5ea36f655f26a0b04d6b9d59ca8b1e9152e80a56f409ee0bb805522d661813b831fae807bf065152aa1cc9480e5ff6dbc394d32641ca08e6a7fe387b55875e4c64dea5f13f7bafd0d478c628c7625990b383465a6d16e42cde576a3ee648bbf97f944863213ca1e4d4fcc6a52b03e757f664546e7893e5fc39be73865b3808cb83204e3cd00815d50d02ef1aec87f63e8595d1ca12cd79e41b1bf433711635b5742fdc0729eeaaab8601ee379167884bfa8e446abc1aa7e003f06e5213b748a3f26bf1f5596c3a36d8ef98e8f9ef917733df9e33d524118921fa22e8502f7820369d4d36805167d70a47e4e4fcfe2ee0ffb224d85f12da3fd3b41bd93984fefefce3c9e23c6f85ee2661e53f7c2b8000a8bc84541393ee9e53d33067b53656ada28115eac1c0e62132f5793bef2bfb0ae900ad255f07aaaf3968c8b5a635464d31aae9aa1f4410c55a45a54c734321ab9f6076176304a01c8e270e810482d342076d363e7071b1cfc97a7b1040ee4a5ba1e7012818db0088501545c99a1e94da2c9c8202dea6a938fda5429a71b5a9c296bbd5ee1629aef2e5c81782a88e63995e53a56e18cdd9d1278bdb4d669a2a02d95e69db5f2f452588ebfca003d827f20a3e8fdc167d825bb8ef2da5b71a09060eacdfd5aebcf92af768476ad0f656deb804b5157db3697ea5ce7f71da8405bca43ba9d6e2ce66f892531bdc60e3daaa104bcc837d56443a0eb54c593fa8b3f77b3025660a5fe6d376eedc0fb8a64475f67c6942a0d1d0672fecff367f444e88fee21ec0a200b1b0075c285f0aaa704524e061be7ac6e014a30007908fdea9214c8030f9d2c37229d87f33a44604e200008d8beb6dc40193a3954715cb7673d7c75fa154e10b35214dd840c0d925b14036ab73e79937586fedd2f4d56aeac51f39a01283bdac46a9bbf04c6a477e7cf022455764177e55318b271144ca43076ea1ac5afcda121ad7dad7c96e788b78c2afd1097bdea3ad0cee5b1c4ac55b7398beed492474456e831709aa1abf02b55649df61efc181124ee44def15d56959dd220576feaf4e75ff26e597037d0fb8834df0ab139908d16b2e85af23b14a831e20868ac15a300112e505ad88741e7ad06d8f43b960c2607db94e766726bcc3bb17e79cbad30e9be92d4aea2d9895152203eaa001a691cb54535b004b3e39638f97377cf8013b81f3de1fe2705260adc5d390a5e8b8efbcb55d7e2284750fdaffc4f026d43861c9fb9ad790dbe17faba296625a91c16d469ccce5628712765fe6125d571918d7375cabc2d40113ef35d43007edecf3055f5295508c0cb47f330863cd223aff310a6d2a76dc1dffba495627399474d77947d9e7525fca18a66e627acf3a63ac2183780bcb6c83e4d40470be4b3700ec7cd9186a635bf080bec44999e167331c4c595ec4cea1b4afd3439a56d9f1eae2d6a79f53047714e11e9676a3f1ea4c8de062dc0b8d0dd70cab60f728e5aeb4e67935363d1a061e5a801c6a8e061a4a85892e0b96468e8b91fbfcee7dc5d6925bc97dec06f9ff9c7355bb69dc0a711b4e6f07d49743df5f4b56e7c2ef88eac222bd7c59d3401031c14ed6e4837f37ba6d63bd793411623c0a812eba9605a82a0132eae1d4e8596618008f8cfe63c910adf558d774b014e5b3339c402e0519bce21c0ccbf22b06f1b6f5cacf31563849f2ca87d94b5135ead8877bab2004599fb5859014273b291c115d6c59c030222bf6e8758d095213db07fc115e40a013b714911f36a1cbca80b444f9aef65797482fcfa50b9d8b5ededa4b6feff322b777bc87d7e2caa1ab4026c58f5bf35853bba43578700d00239fb224039ea3f44dc0afa08b4237126fa48d94c56d9e9a0cf4136b3c98c065c3c7c220fa679288dee2584f281937c87716477c7bffa74a111421dc9f3ec8d922ab0e1518a7f20104addfdf426e6334e7fa74ffda0547a60dbfea8ab7eba13dab5f1fef9eba6fff1d0a0753f16bacd0726d903806a0b9b01b955e1e08acd29575d810a9e2051f5fa97ec9d94569e77915fd7fa43361aad9d58922143c4d3fd8b2daa0d03c844131f2801d2c0e9eeb7918b2610de952f1db37a35262ab18787db557e094ceb8df1df8aabb27077e6360620339889d75d9abc0f8931f8e21e3dc9dde77aeb2143ce0cc07e20cd604e3e76aac59892a11dc5fa9107ef481d4187fd8f2e42b40ac587a5eeaaa0232f0508c56cc83c88732af0897925d2071aeeb1331b2ba254aa073df5b802fd9dc20eeec7af7481821075fc982baa29b9557e1f00a09c4e5bde8f21ce6af2e88497656deaecce83062c528626a80a588d6c6f3e661cccb8baed4c3f55f78f511a38cc5ef7f6d4a05e02a91a904c2ed91a17ce3fc847a5007d58647c941f9d2296ba5f008f197c35360d92af95dacb475e562de7bb65e9893f2d41809231757fe18e2982544bbf5b68055e1dc91fec7f15b3318414bfb4a67c02e01415ca253949ca49fbe1a7eee4c49721855a69db96ee12ff7b951ad2d4b397504bea3452479667cba7926187dc854af44fb46b229de6af3f6f2ebf5190535938dba98db73c9943d85043c92a74513a80e0c6e48e19aec5febbc9dae377451bea16459c881c94638f8f0cd617b16ad86715c7a7fa143da0d9b9354a3ee4b86b01ad4ea812b451f1824b8990cb317aa5070a6d38ca99878a5ca9d4e2a6221d901b7bd0d07c216c8640c062433b00ed682b2a29791f4f2687d589d8e75a76156a6558ac649a25dcf438981a2e96de3101ae4aec3f2e3cede69c5fc2a09fed5350c5e6fa58090148a74fed31d83a307158ad13f663164032e6b61ab87209f0ceda3be715d9b9dca11ce3832a7d0514e4266c3fe516df34bf10d6c801f1ccf14e5742c871bd1cbc9204f424bb163d2ed2bd3ad2c042ca6e1fd751cc04b690714a8a8da0c30aad14ce048323e363197fa718482296c37a55c071b2af3d446419bae0d1755b2bf2cc1f3aa96d080ea64acf2a80389d5627421df97531c81455dd045b0af6dbeeb0e0b3a0b11b740ab0630b10aa1ecd4d17ea38f639d4c4a5de0b69b1e1e3f61ce5707bac7f84b7b8cc78ff94985ea36089e94969f63fbcd78747e18664dc75a889f900281ddf150335c3465f66fdd8bfb389463334930b946e3008eb25629ddb8b693ea3b43f60645fc8fc5ae2b4502b54c97e20a1da75ce5c92786fbe125ad89cc403dda4d5438abd42b9364b2a86c1765c7dc727eed0d2fa115f3bb256f19e579c68def02a14132cfd15c9a84eb4e46847a3df5b1574b297d7d651c708f431ab8b1459b2c443ea7a6613eff6c147ed4ecdf23d173a8c110ea233215d9139195b1d6b0ed21bb46034e82db918d2de4ad6fc791405c83ca2db622c2636aabf317cac066137fe5f6b8698440ff1edb167a3a74a9a4867c31f936c9e5b0b0a841273904867aaf6dab103222afd7d10a47b9f0a3237070116f97a5ad582f1e5983082b1232fe8700cc8945416b9b939a597f9ffc4c2f9ecdadb51e28d234ea839b43863c504b7e5cd4670488458a2d678be96597e5dea8803361deb545ea005dacd29ecce30ceb2588c912691c62747c42e783a65d63814dd4ce2fbabbd27c2112ce162701ba7b626bfcab7531e08b186353304ef97cab1516896c51d7ed79adb514543390b93715a105cae5a7ac3938961c7eaa7a5c692b0002ef66ae54a3c6c05f6eef019cc40e0ab72e6776111e7cfc5842792eed5b610c84df384975771a9ee1e8ec904e51a7df06d30c245450c139cc4f5a8e3ada4b371894a154d654fc36091b6aa21f6ea7f58cd777d398be2978cc3a4595952b429459ac223f7e71b1f4ea24ecba63299e298f66485df3873eb369d0462e5be5ee06a3a89c9e729ad83e6cc9b00f896a37b0b3a99c4f71aa1de0b655549490dff1181b22c16fe19b9e738547bc50d50aa4b9f73043e033965dd415b2ac4c7e882ae49cdd947c8bb27c479b408e18ebfa0a8f14333bfe9e5f8271d813648e532f916c6197425c2e7b1caac65297e98518847027d6675fef5bd7527dc7160852c0912a84f87e523e9d48df5a514295afe5eccb2361256beb3091c63ea41c79ad005ed6f7f99066b1e9ee69565efa68968b0f3a483eab21576a8a47261db3e78efc14a038589da38e27c650e4299b559c7f672335bb7b07382e0227d45df447aaccff566542602ab4a48bc39cac13dfdfc08add976bd63f17fc7e460d4e9b61d135e857f73f0a67240b780cebf3a0425cd61e809cc6e2a50e02c82204671438b5fbf8b9b36a60d888cc51ef1874b274b6c166bba32a4503ce27818eb73f4332351303f6e92c8e23edb9d0c379f755dbd1eb619abe80f86042982a4e25590ed1d4938c261821a394a63e086bf908fb8f0d0c3743f01518128f5010e295d3d6be0e35bd8fdf5ccee3e7b6e7b281b0e3029c535782bc43ced531f5b56b21bd673ba2c59bfa97833156543cee2a7bc04c638e731b6b3814e12f39e15bb5c591086baa11a35ba5f1476e6809cf0c227f32ed6abc8f16fe38d3354e827fc249aa1fb352ba3cfed733d31a3755dee4385fddab93aa324857e552f5b335cf718a60ac49ff46a872f08b808f74dd8c9bd1cdafb0cb855ee07f01afa71ccbe38d10c2a5749c062c2b9884580dd3f2f0c554bb0fe8420040546bbf16d447c608691c13e0d2e325e39341fb4d88544cb12c618ed529d4f8bf22db89cc940473dd4123400a4bccd16149aeb263632ccc25b9f9258487b6c9c80ee327d9b988e01176b639b4f1e48aa9fcd5ffcdb8fd157f64a9940ea054d09eb8d19f08038db4786b67fb39e6dc1800cf20c7097ff76fe669af7dcf215aee2b43cc273ef0ccce95b94f8e718ec80e16a5d5ea8be8116d38a02ac0ca5691f2545a77812f5a0f1ea62a5f9330463f2d04c4c15dac3463db5203b6794c95ee79b0d9b2f3f76edc74321e282ee95afc57b8c072a2c31266ed16119484a6698f0f5ce803bbd0a178effea945a51788f0e24806380a577d7cf3cb427b587bcfef0fe9a894608044b322c527619f97c31aa4283765e18abae59aadb0d6abca6c85302ab0c00077cf377b06a9e8abc7bddf419181f00dcf1466eb79e287bf579527157421534512d3112ff4efa44db8feb1793a99395f6fa19e6e8d4895ff23a0bcb79475ddf5dff2228d6313f730c23e9f552120c10b24e84c29b3b8ea96d905c452d7bc1920a4adae50da477cb6716d79dc9c9578d42002589d29eca1565d7dc2272a1830d7d86db1895c6e16d08615894c5ee81bbf001f931d61400bc8eb82bb13e7fc377d94b2672759aec843e550ebf1591563df0dcde54562f5b2bc977b81d038e91bff585b7e59c4bd0a598d27babf1cc5a5e23d18d37d9463889c34ef2ed19dfdb791759ad50d2e3419ffa3fc78ebb4223d56c25064a78b8bdb69de2877f1265efd4058baa11e9a341032d13683945e67f862bf0648e1e868a0f23770f0ae4044fa891950078703f268cdfc3ade91a8b1b44b5f41af507ea74a3453e60ca0767841e832cd10501b545a184e798f6c5935d33cb2187774c0d2eeb057c68ab28ea5567dda2fa720bfdb46ca751d8f88b0614c8cc53d99ef99dd99f50f9902919ad75d9d1f6e71ce4fd6c3cde251dbb54f607d82754e5a9b846cd67495d3b464916a4822e50eace5ad37a0b21787381c67ea8be798d977b2a57e0ca103abcec69124b90d2adc405af11c2eff394485a9d6a2229246b482b628fda890b6d4d3539ed898a2df3940513d00c096bd2fe0cc8b8a1b381cb961f120ec9dabc4e6694b1f04d8c2262ab6ced0fead05c8d3e39ad8c7229687e1d9574cd1add8d5f1ba3520fa608d089ac47988e655806044fa7472098b46db98dbb1fc4ce0138b3448fc836c6b3164275105c8a5ea8fcdd82762bf99918373dcee6ac84ca3f0c4b7e4dbd8ee0db3b95c2c717b6719d4b86cdb7fea4b1c6a9c6ee7bea319b05ee77bc6d9f3a8c3416720243c9270d4166393ef588d8c03f5cdcb7e79a00d68a1b97a6a67e6b74408a7248150b21dc621aa4e92dcaac7b22b7047d0c6f7940184aaa11f8ffddec975cb788cc2282c349677d36074b8abe14ee0c63b4358d136219f107ea28ede8169430c323d346dd3ac477422f4a9d64206297f1f0fa69025de41c0d5fd5ddcae538a08073f10d6e20fe48e009fa4a239d092e03f272befe78c3574c1250fa9fb0ca9e982b6b1eab49e50afa160c9999ef8908a60fde06055172701f72a8d1c12d43fae69197980d147a65a8e3ed57b3c77b2b5ca13ff30eef5a34a9f4329d9d3fd1f91bf5d55a21e2f209af39b1974f2d8b553de2a48692190dcf83cc5e7305f679b3e9713171cbba81f61bd58be6aafd7e76250f3687e6215a6c16eb9dee3235c1a3d09134504db988ae1dd8fbcd53a275fced9a17deae5d83e05102a9d111a40b51e726d7e0473fd0070407f224230ae8ef46f15538cf2bd7021c64c176bedc0f1c67a765c8189a1acb3a9bd68604ad0cb6763d16b15af7d98104df3658624172a80ba2ab196bbe665be780876722a9e8924ea26ebf01e8ae3de866eb1d946301e6dbd96a7fb5f0df2d59b0506789c8e6f312a09ec119441084f8c591bf252c3bbc439b02efdf3398156527546bbc130d4bf898684233e93d7a83c7cad290b06fdc81f3c89fc7b154c677fd957e4495093827f65e91e79889808d564017829df93bee9839123e613d8578b5b8e91b0281edcbd7d149fb5c9746e804c3a1a755195f0dd0fdaac82898260764b94af51c4afe5912ef67f562321499fd91b988368f67f9176a11753e3fbd43214c882813d845a24cda73018435b0a6a0fd19fadbfa7369a2a12a0f9bab3c04c92f43451feb32e83a082c6f05e991aec3bff7d2a6a778207b022d873f640322db7ef1668e248ecb3cf4993b240e089c2b8b92a4bc90a2842adc5f8ef155775c545f03942e28b4cc971e80d8a62dd99552f47b9b925f51649530ff8310211858f73a6532aeb26cbdb166268834ed6391553b2988bcca12e8d3ca58034fd5bfa501dc08dcda2f0d9c222b43ad46b32cc12725d365f122864681c52b49eaa56b5fff15cf09bf7f2b1b51a194df65fb9ae502f55b69baf96b0d56c90b890a7d83de2dbe3e93ce800d6f654ead6665db095262f051539321fbfebe5e891d7a917b3c36f7ce8498f654dca50deef22e65840a372a56791baabaed4fe2931b20d2a1f95cff51cbec364f0b558a7c108bf40ef8dd12c09da7465b8e90552614a64b819795d9cce501987dcc18ca0851d3cdd5670544594b8bb77a71fa382d9f48f83f416998b7bcdddc239ffc6784baa619024bf8650733916dca5ff424d300883beeb8bc9b7ff4c31da050326c501604f361f10b8f0b58bc5538f1e5065e04ea1cfd7810db663c1476d45f27874d667dec9efbacbee5d6aff9cc094c69483497b14fe780fe6c05b3492e9029956b368f98da5aad81663682bd6e728cc0a41136ff5c3ec3b164513f12cae4ad77ebfb4b19715dbdd538a4e7c2f2ff4ef2d45fe3693fce904e4b0e334aa2b2fc57e4577d72962733da4759bbc851dd2fe9cdfff9d09059af809f87f72d304078e133edcbfd8ffaae1681c6921234f3ba554b4d9025a774e923d1634a0cba793dfea99c098c01f469637b224f81bcb8c86b05f3adb4a726698ca8242ce84a2c0aafd8cb9d84d3685d8ee3afeea7b37fdf3434814b8eada0dbac0f044aa01b0def766dab921d63c97a5c0fa498bbafd644abed1921209baf5f07d0584f5eba6b452a59afb65c9446a45859d5dc78f304d711043445933d98e313c41ab47d0448fc0d9cf846104289eaf2af803999739f646cfa5b02aa18cbea71b8b5795a448f159b97a2a56851386716f71bbb321d7228d4e76103dcbd9a24c5f8d41f7818b3215426124c01d8532526a5bfae98cca3a72b977b7076cc3e48991bfe6a20640b47d14a77faa524eb11a585f5adfe26d7626132c01f27f450dc7da2a8e399cfbd4b3681b131c3baac9a7dd68d0064c084ccda0abf57e1017d875af53567594e1667e6af8f4b8e90c41c4a45fcaefb14591145e8fd47a933c4aa7121843693762a45615928b0f09e4d82e751a0ad26c21194e6d51830daa12acca864d82a7f2a44aa661a7434fe986b0ba1a071eba81a9dfed6b0ceaf124ff309cb240d23bbf79e0c66dfd9cfb654d2a3dcd179bd3c902097fc98541d589424b7f19fec8b43095762b429bc66e812f911ba8bb4c9c3cb92203c1d2439faeebbb1672bcb6e620d8883c2dbafc51fd25aa10667e7297407c1cef3b0f4a604b5b8547454affb108bbdbcfcf02c49c588ab175d3cbb49e0c724acb4754abbb3c67b8556f55d90f38e326a39ed08535eebbbabe3307648032fc1a8b2ed900b5f2a9aabb5c3e749fce10631e3c47b044c2f64226c64397a95d072edcb7db265e44b24111554c60a5d9a641531d10d8f4a09a2d0b2f0ca05af3bc790933298139a6990e6473f899ce115c3a72951da5c7f7f317250d9df1a04d3defbb0a49b07269fab5f87e170e1acbf4c71a39906eeba0664e3fab606ce2e44b72eabb21370a37842206b59a5bd629bb263991a1dde7e40d1e80aeee3253ab56d0d92ca5efee921977ce6d91d8c9ef582a41c7135a4ba1330187489c2d9889824691115b52b877198617f94919c34864466b0fa82b54e49e58d8350fc1574c559eb9c8c8cb3d505ee334529b55507c51ea0ddf3090d65de332c40ffb1310456e679a11917cfe69af05e56aa61f2fcff54bb39b6f89f1ab83c735d558be1a668d7afbe18826bdb8fca2938d9fad01ba7cb51c6a6f036da7954cf280121011c03eb7254879992103c06c182d7bd560d31663075aaef633e8137000c5cb43a149c03d1be6bc78207c8f2ed4366886d92de9a6f97deec04f1059f00c9af01486be8e390b8750d526536149240f7a9d7b157f692386d5cfef39d6b441c23d38aba97fc95fb42dc7f61227683a05e514b090ebffdc61c34ecdbb68a4c5edf0c0f4142c839efd9a0527dea2e3138ca00186ab8625d9aa513dad30153c19264d17424231d06327de02698b6adbc0b217793ac71d6edad39078c1985a8fdde4b470f953f1318c015614db40602bfef8fac788c363f25f331d7d6ea49f814e5d34832308eabcc1e801682e3339f14baedf6d8323b3282fc152cd5d8aaec4f78b4c6d20c44fc14de42f1ea767cbc73af2442406ca452e148224a9510d699a812d2f5087da79f955d9f7cd3d06f0b7a3d214dbfeb17a6e754188d20bf213978d3035e93988fadde71c55acc6379fb39dafcc788a53bba8eb0ee71ca1d0acb76f6619ad9047e6e247750329b14d089052b40e45a3828952c214ab6f39db91acc125cd5a196742fda8e77365bb12b54d80a9646aaa2d74737540bb0c43714aafbfefddbeae9c1b1d5debc5aef61e3ea2accead678681ac58c7c6e738e6cf36673d81d6af6c3614e60eaf5d9ef69c67a228fbdbda507a97909aa24fc4517b55d9ce4a6278fb0ecede39ad1d0fd4aa5b96c39053f6c260077c4f9de17a3840e78c8cd11d4bae437f3039fda45aab9a9a8ffd468ae133d2dea0d6d0e376d73ded2ad066cb9e58d515de3f5033f7e7f240a9063ff407cc5e4faf9563f7fb5920fad466d7ca6bf034297dc2b5f287bc98ec859a2c62e0dfea4ec969282d1822e856535ef2ddde23cde781a292e1e5f7b046550284f1ab7ca2a412d672b31e281a442f6714d830daf1b12f06ea0f034bf2367ee4b9eb6fb4e51af4b4830805b84e48ac814fa09edf0aba96406b352023042ff1a6ff801c6ac33fcb80e84e78cad4bc01f6b8fbcfcab08289ee591f05932196ae755025942949acadbd3ae7d42f36d5db327eab41dcea382a4aef2e86289fb7046c470675c3e7c64fd36b102e95a5e97064a6e85b4c2f3001a5bcce6a50a8c9eadcc2730067b4eb7f369612fe4f19a254162fd8cb9bd4db4b104a964a764e4b8010fdf468ca4b894b3cb64baa8fbf7d25d70fe0ca0f14bc87ef5b7bc294067d8c79ef5d30d41f64a8593a14409ac748aaa7eae13103cc43d83f7ba6721bbe3ef38873f0e2b10f89c4e464c362b70c40c860cd5d0295b92e05cbf9ee9172768d177719f9840624187c43acb6459e36117dd9c1aef581341715f88f4f6026f90e3ed042e32932de3267362f9ec6b023986a8aef26dde7e71ab7fe1e82cce48202f5a075324b6ea4f31bb3e759d2ac4a4840ac8c643ffd9b5367e1118e378ec162e8d5c17834fc2d92521ed436dc618262cbbef634fc127dbf9ad92689754ac2e5fb3ee19a16b9db4b3bd334ecd0d2bdee35d8e24582efb533a92be5a6deacd7edd684c6fb309f25aa44094f9293f0f57087c5dc5fc01da019ff9c9e6160d36df26f905e5b9279162301de2251b11241b7ac98ec3137cf16574ff8d88f2992d9d28c50ec568ebeb2bffd2ac687b609d52a06bfb16da84573803e096567485a90e545e2611b78b15e230b0ac029cb9dcac274bf6561bea0c9f3cba30cc1e00d9cb2e358067b4ba4efcd57b03b1f708707ed16a3718b5aaed7777a120b0a7bd253af1483f5c02b436acf31f9d522db7a54d01c62c9d6591a6d056703d095df0d2b2f0bf47b147d0527dd6a70b58381cff426e1fd0bd7d8029cb097e5d137560e52a84ac46316e45392270c70f8c1b0904c3bf7962c89a174237579cd2dd950ab731a939c32c2c9d81dc257284edf7810701979d792b567784e6dc3d13131d73d9c0d03d370b2c7a14534d36cfd4825699bc41556ba9951adaf94be1563e55520cd07edcb9b29a3539ca0403910fe627965bd414a7857bf96859a30c4f9e3207b7225fe45e9f7b96fa4f112d339a981b8c94442235a27a408856c31850442b6ff95d250328bd87526fc8cfdc928d4804812072e410d7e9f1bac34de4c1bdf6a07eaa521e1f12bcbd927c839e5533cf1f8923142e4b1dd16f47654818dbf2902e945e04d200fa9de1d601ed917cd1a73b9990e8d9b6ee591cffbd4819717a1d22b1023096b81ca57d183e5669a5f2b55abdf27a7462124483ab782e98ccb06b02bd8a08f810b25e9f76093f79a090659ff25a0e7e609946db5f67c48e6abd6b400442496c3149bda16f44ce02ca0f45f4202e2e89fe8924769efa86b70584d57cfa46277a62ce431d8565a99fc84ab9b51ed3959d4c0e818424b89711da87597115e2d0656642fc72dca3f9538d7afa7cfe5a1d9deffd6ec00c8a19cbe24c7ff28d870ced57f3af86080972ecc99990a8bed52c494fe6a8ac2171d87886ab3319ad115025b687d32203d5b163503b5baf649189c40ec2338a93af4d458907c5d0128deac74d6f12629816d06a29f088d5e08ea007be26a21d58538c732c070869e7162841fbcb6ee30261fda630ce91da81ffb918140cac13e9f34260552fb972d379b7340ec9e8bdcafcac6b7fe45b04a3941236d44a3355546425940f28534092c5f583e00af5cab87ae92a42539f65d24a68df59ebbf847adbd866c23dd5e65a26a9d8902a056973dcc504c24803b7ea7277e7a8afc20da2ba20d8576f440ce9f549015db4122da3945a09e2bf0322b313ca553c2c94e4ed5f0ff3b38e7c1278fc89768280f00bc415014e68b9f4bb9da216418995fb64d4a6551aa6a87bba55c834b1905c91cfa52778bfdc7854f4458c74f1f3afdc4c651e799207f6a43e439c38033c2e4cba63b8ee0db96b84a4a14e514ac14d289bf583a8842a9d06060001ec4b092b0e0c28ba266a70068d468b6e7f6c2782a41660c536c182eea837189731b3e71912762982f047f7a2fd076e3c3889d7d7b9b289423df86220b0b1c404edfdbaa01f89a3667c6d351ce8e19a9302e3f0b0574272d11051b79d3cd8bb9f675087cd399a9b7aa90750a5731ba1f4a7bf0ce802227fee3acc37673b2dad4af49da1220efe9c594dcc0dad262449fb372bb40d7c22594f0000303e06696f55c721d1e1619a22ea3ad6b3fd9492ff562926f5b512a475a59cf1a82ded733948bc75a6f573b8939366c47fa43152fa02c651d12fb0fedc7b555087a5f740ba8264671dd55eb57fa2228a209a7d18ab018d6791a55db809fbfd6e71f356bb544dbd558df5e314fd249cc2ade4ded8e5fad08f96ffeebb272c0511b07bf14e7a39873be56f42a21754e5e76ae6cf83eb8da5b2bd86a5c8b60f1ab52c71502360b0f3a4645adec0c08d28eb0ea7a96d9b7c846c0a4d37be4a16276a4f13fce3c0003885379308991c4077fc7f505c5e731772afdfc725be2dd68bda18bbc2cfcb4eaccb373715dcccb3d63ce593ad582add87a39a8b38e2f1fcbee8bb3d4349113fb4c0642291257a501395efca93e83d159174053025b64753fa792aec3c023726710f58817e819088acb8d0858227ecd777b902f2ee427630c469d68639f8db2d1df6103a5c86dba88bb18f12c623a343e9aafc09a333ae3ae4d3bb99d44d684652a9c17fe34671880e5459f01adf6c44e456efa873dd901ebad8851805e3f5dcf27146179eac2acd278978a2728ed1a69903070844d3bae0c1dd09c202e9976c14d50468bfba3dd4b15f29983d217e6971b92a7ffb5834481b4992b77cdb3acf85eb907c206ddd23ada2b4dd74f2d9f6099b84fd2edbfe44e1c17de94053dc773656537f15b9dec5a5dac9095eafdc08c85b9eaa21846a8f6f4d78f1edf7a7287f0e82bd28cd7f59e40345ac078e0212c208881b3f2bc34ec8a9ba360ac1230dc7a7404d4c0cdadd13121a7c9937b8a191e6eb4b90ddc1daaf9c02a84b7a93f0370b8de5e36b2e4cdd1a93852a3dcae9c6f3d0acdc98ac95815af075e7b9796e086bbae4875f9b36074857289e227f398b4b3280b1b2a3101cc44bdce38bcbfff70a5544b99bcd3e8ed2cd3b8b59729ec6b98be8cacc4d3a4fe53c6dd2f767a60d016704b74378622ae2bf4a0a64745069193821938401d6b73b0dbba213ecbbd83fa7aaaf64a3a419217bde148a5ec8f7cce902ef9eb2080c3ebe5a84f32d6b9447b1717dcdfb1766ddd870c80f65b84a3b34f17173cf168596249bad81a66460b901225d68dffe593cad05948fca70d3994ab0e1de6ec8c951d32879de5ef2ddd24d14d90f4e6215bf07f669d80d03950bfc28ff7d7d07e833d123206275cc36fa165e8693f3a1c11db653f1024f7e6bbe58155b8d357a943e3d4d83da7b197b807ae374bf928a66f7011d22cb58b23fb899200406530d4dd16b6a2f137f446c6e870e4e221ea7b94f22e8cd868a1faf33bb3b9d5200622397a759c1f6c5f8a29e946e201a591d36e459d42b8a8b45b57a832f2b7596444fe835efbea379459ce23413859a4255f7fcfce6c428a9750c978af685b0dba1a2adee2cd65f629963d512c2ccaae572a935f42329460f5bd5865a789ea3821698b2f9357b63ac56bcb737959a75b3c00ef3f08dc5dda39c2e9e54ff9c6430d66a8558cd56dbd0b5600a649d28eb94ddd2dc378ae807f0eb9d61f635fb7e21a4fd4d0978cb02e4370ce5792f7447e3a3b54b7917a14fc4e40a3cff7662024ecf6a2c802935c8fd0c53215f8bcccc407a7b8cbc0eb8f5707fcdd1d158bd7dbcbdafb891f17f829f4fda808978c5319bff1045713d99d98597e9c1b9c6aae10580a07d4c737b70b5f8158538d5383ec5893f02f275792793c202e3faa13ba6e814314212d2ec3ac4dbe95848b4a7cfa2d69654ac863908c8b71217bc47c33d4d3c0a1e0bd563e26970a849d10094f824dcba9053bc2b8c1272b82e5fb7667e8fdd1f3eedd4feab5af783e539bd64bfe3d73dc7fb53d9b8a5c8c31d8015faff7f751ca1e37caf1224fb91eac5d5da361de1e851c37de4d28e389735c015913e44a90bad1160cbfaf10c094fd31222aee84d693e4c9cba88709630b2d1f15b2b37aeb16bc1785970b46794bd67c529ab6b48b3aaeb942fb5fe560f21fab196719b9534bdd0ec292ded8c46c0b4991c7d589c4a1e7202b0ad5068e6af61faafb771fb1bd4dca4e417f3669be397c3bf4e5523166046da8881f69a7593347b90cdc55b4be5346665745c253d8b0cb379d5963828b338961e42bb9aa7cccf059bffff6d97c47deda73bf2869f2b4a573d7bd3896b6536e2f95830ce3ea539ae4c92f49478acf4361494e9b59177a0d86f185f44b9e9ef5317ea7a5066e466d43e655018a3dbd42b70a6f2da5eb7e17acd800914931cb7abfe1e91a4a016fdf2086b83ac24fb0f5d4da9a975dce8f04cac0537bb3158fd9073c4fffd72f0966453923c603929e9610cecd2a0e75baa4b6d1806908ce9f550d3d9cb779af9e102a4ec0822dcda31d5ec3607965b9da92f5d4396885bed5318c201c64a31fa834d43198591fbb0ecfd0dfb7a86565a3d1cfa2da444cfe697edb5d2c25649ea539240109d05f5cbf427138b6c3a22a365c24968ac6dd0cd74abad02a9dfe558a9add7c52d30df515eb0afeb9b740139e5a4cd09ccda98d0d3f8c13568d9d868dcd30cd81fe144a100fb81221dfe3af4b1d6f7197b1ff28a2e892f827c6f919339fb320fcf05bc1e4d7cf9ae5541a3355e18b85f26c4d085c203e8100dfbd95647854336a07ccfbae32af9fe6e8c9778597a55a48c96904aab42ac94e6299ba5d4033f22915b05b710e3042763f59f6c2db1e65a777afbf4bbac8a8369a88ca58867c0b920bc357a8d298fa84a8a319a04e3d1df495b2185306a68a23a2cf75eebfd7c6387bf0f59c1d868f635dff4af6f566174203088b783140cc4bf8b163501de3f6fe10b46a73c84bed139d87b73ca77621d1ba74f679c46cffa367122ede1b47708e01ce2d9dcf589924965a733b8d1505887279f6e28b2a70cb836f68d21b84329efab5cce0a19fc985e4ed8b1908c1bdc64c834d83bf0291611c5e1d284c069f79bd45b651fc5feb938911b08416af44d0ae7717ea598be9169367480f4627d7d43e8e804c4141320072575b7a86ba9a0b9b0de4fd29aa48f6e5493a5d4d065e3e6b4b97b2301181a6dc66fbbbaa684748a4e379d7b3e5b375c20d297196b1d19d3190cffbe84ae52acfe1cfc91050a66aedc073cf480875f316cc0f62c1b57336ace22740bf4aa967cefdddbd4e34e856a786dc2fccee4e44895ec3136ce50116a27a2b1f0fa60022562233a77aa36ff0f45771978323143b7027271ad5da6737df977862668e28621a08bc27912d387382cd4cc5e0dcc09c49b95767dd52a8a71b10dbdfd73b769cf57823ca64e5834ffbcfceeed500ed761bf649c86c7c43e51533ac23edbc5b5d51e554633facbd23327fc9ea2d56647973dfd34719277d977e58e6ffb8a9ab14146c9b354ea59e5f4a3cd954a7ab09b58e0496b3b0b46c5281e5632790e4b12fc7f7ba8c1027c27d6c778cf86ef1d122c2a0d2f8dd7aed1c20228524eae5f50adcda381e89a30b52d38ca51efac2caf720c412a9eeab17f9d7f0576e9e1f1bce6f3db16d5c988f1917917fdfa1e512f53e8b98283481f13ce797482dd646f7ed5754deb53aa4a34fcb7b2cbbe77843454e157b062bee9039129a9e222134488b7845849120734f72bbc36e3b55d130e0971a37d91faac01f84c81f1388adb246d4a52a7bc0e8f9098f4ca2b162f7f066a6a0f1fff23592e69ba2dae6e61ecf5c5759ad1dcf50a70ca0804267a95f11b6147f05aee45ae35956e56ec70addcbfe152ed79914ed09f4ed6295b897864d059fce52bd2220da6d36e94ecd3c43136f8f91a52a0660b79c22cc4b235a4e0ecec57e54bf4efde2879f50ca162ff8f3b78778af6e53a255a2dcf4886548c5dcad3f4d974a1259e33b02d44bfad1d9f724883b9784326de02002c3d1b2597622ca21cc8b22726f871dcb01ead6d752d8415e318b1db9a7ee77f41c9cf8504e9c1d4909ef69a370546fb09f864a4ee25a42b30a2fbfb275c5aeef1d366c5a8b9c3c13297874f15929a86f199bc697b2c5131e303b3d27289d94cc9fdbe2db163f2824cdab8508ed7dc2c14a088695c9daf677fd230ecd435e41f2ead85fb59c6e5b4007ca1001fe61862a562162f3ec6ecea5a47543084c93c857346e82b867f52e3a0cd54e6d0021750365ca155f26ad79497daf9a81278afcd89348cc03e3a2fa94049549eae1a54ac9122b193da5d840df6b49299983f4179750597059c31f2dbb3b33a83f54cbd069c9ed779a69a9e5204715ddb167d243e702fa2d9d80b4ae117e9e6853d60f69f5bf612249e9afc0a35d37a473fecfb94b99e8db8ced6857232336804b87b19af83dfdbada31df2e59affaec45d059c1e7c8d1f1e1531e3a644e30391e20974ffc4bc841ebfe072204cc7eb1c3923e0145991e5d502b9b4103cb4973d528f69a0b4cf3a088f095fe5e86310b56ee68cd89632e5ef12898572b4f05e2169a8272a28cd92a147413400e2969371eb85f11afb489bf7ea5f262f97db6f4d5d51099df8e249ad0bda3704b86ae948a767eee742353b34663e41c93388c2ace04181bf89c80e5533f871557d695c368c79234f30ad3dd8a226199d7127e19e0f54bb78158d8be6a28184994994dd350346016d78b4a752e0d36efb18f5cd382f4915a8fe563a32b9006b3a08c3fe32e6056c5d9047b65740032100ca161d913c5ac6708cc5da385b9de05ecaaeebffc76adaace3b581ade3d668803237adf5337854f7fcf6b8b20865cff1ff5985dd149dca96578cddf321a6ec180a41188ad402f68c23334b0437efc6c9b3c23d8a2d17228db4939a0c23e488e53e766f192a8dcdc9c4e0b8c5bcc69f1ee8595e7ba08265663c334ffba091d1e8c7ebf4344211f53ff3756b5219395b528166113241deb064461343e9d8eed10845eceb5f37a271e4837e2cbc6e5690b41d56a658ab8c841d5bbf16c39d271f13b96d3b2f6a8761461c7ec2db704fe9dbdd7082c572e7b40e427b78cf0ac87ce7db3d95f97f531cb5b21ba5e59d24b482de4baa68b9eba3760c9307b2a1984e0514a91cde80bfa30d76c38bd1412bdc22d54e24cb0f6bce23998bfea7599d131b8b1fc120d04c7e48b4ded214649f18995a12e801be135c338fc6b36f19c58b31577842e0391e9fdd1c4057e25daf88362e58f7eb3e581b3fd92c7bc38200d600c3e2e3ca63da682dc6c8a013826d57f46f6695a0df7a3122c450fc4e684ad0a8733607b362409b5932ffc084fdb90a9ee33942b5070e6a767d75e144abdd30ed72dc44a0d3c245c86ad475ed07062ff9c1178b0289cc0f0e4b02994f40a4d3c4c2fe545692c01a929b0af4c12fae76b136526f1cbccafdf76f59fab7215bd62e6222079eca870bbd9bc05f2fc6bd96ddaef64b6965bc8d3178990abef617e8dda0ec7a8e2abbffd8fc0048cad32b58c16a54180e4a599f7bf45313ad3a7fe1ce5cb4d3eef65ae9e979cad1027b471535382c74c53ffd806a0aea55e8dc52ef887356e40febc77af7abf488ac283029535c7904ecea8a12c5d9f92c13330a26f78fd94d0a1e0bbb0383f0086de67a3041e5c38ea53dd945769c40ffb348db566d78a2cbe7655e55b8088307608fb461c764d223874bfe24669a05cc91126278c7bac984b70fd8f3c241400e13c1236d3bcb7549d57dced5bfcbba48a363b00f2ef5cfd342c61dc4fcbee41c6205cd64ccafa7fb484b3181b784fa947035d9b9e0fc16bbeceeb554e5f97038c801b9c4595c209467709402859f150798c12efdb9aff65c8594647942602b204995baa667ce9c7f4bfed75cc1b5086ad0cf906af4c8dcf212b7b903a1a9ab47ca4d577cb9a50091ff5f1f7d0de5c221eb00e028b1b2efd48857fdb0f9908b5a8df35554071ba2cf12d582744d49b9bea2faf5ed383d6c8140c257f504b4b32370fb1b5ca88523f3a734510ea981cddbce36c3591f60fdf40b926f166540fcfb2dcf5445450e1ae7629d8d8a919b71f14a0186ff684c115300557b26baf30837c416d086482ae0a7c3e50b9751dd9504047cff95f3e538f2cf3341a2054df6bb0364c4043ec809ad3e4cd6888c9589c084e41fadabf76433c3f98a0d22fa38d6ed2e823e9750749dbcfd68354000288e9bc495eee2ace689f693252176782105446a3bca900ca8eef59755263c60b405928b2fdeaa867f80cf49163c9638ad2744fdf3169154de6206f9006895970f9ea1e95061126ba33efa3672ed3be8d23ac46d695f09f83912459edb37a46ade101bfaeebe5624bc6c0148b72ff44225ff2eae178cfe4b2dbdc4f6c1b9148089fe822d0b25e24e5110e75f430a5e6e05c29e19152ed424a23f40f288a2bd87df0ceb0ef4a37adb8b2df4116c1143fd59cf00af3d52ed76529b5bfb49bd2e5b1eeea5af21e4cbdee1bfb68c1e9ea78d3bb69fa5e1ef8f9fea6e42fcb1e4964ef2df91553827a25641b94dd7a512ff3bcd739e6f242f3681d6a5c694daf3e89240676a3052b6fe6644372ef94a37a9afcba4aecf36880a199b9b730cb209f0b76e77e9971b964869293c80466171422f0a404dd26a0d43a93a93ea830fdc825f638e07163015d869eccdb86bf369cc71ecb6981bc20fbffd9a90f76a03f8c215a5b846078f0d278b998e259d8447c30637e85e9651551159f9774071878bcf1e77ee092691d38f7142e8f23b77a03aa3a327f58823327d4bd511103f3f60ac79015cc8ba28309dcf9f38959ebb096f9058a90713dcc26b1520226439633e87e1e15379bd9576c3d3113b0028bd3807272e9d4ef33d9d754a71e8a63f3fc025fa62341bc0d9c2936e88655da0f9cee2b164ec17411837bf8aa8e168e535ef09b2f449da051a67fcab6350e1218ea8635cd6f4c8a29e59e0292a4e67f31d36cbc73bc269490771118a72b3c0a142b1e9495bb976432e758565516e83868ab10836fa0fe909f7148917ea8d0599bf3703955caa1f4141f4f02aa70f7251cc80a0fa841c6ed3b1ed14011fea7d445c3236fbb4da9d800b53f38654574d22247a257c76938186f190c0e25a8435bc9dc2ee37a0f05e1f632221b67ab9fbd7e4c3d86aac91714e7cee329522a32bf21e58b6958c954a7b31a52508c47c6bb859c05264b1f253d723d28335ef5394fc7c41bd8202cf21ed1f21db2a81cfd61e97ae92c2a954f3fd509bef6f48008d040e261d548a11e19ae9fd243f83d4ecfecad3815c593b7e493e4d832d53ed6f26482886231633407c774447cbf7fabb1ef36e44c0a3cc1c47e0093188112945b5d7e91877ff14f28aa2cd0995c488f480ad13ee09088fbebeccd05514cbb6318c80b312f09242597d7f1531f774a36cba60c0148e550fdd513f625e69a43142130a5a4e2ca66fa72e856414a41ca00d6c417bcbae72f6d192a271cf528debeaaf99f5021efdacee0ac1a2bec4d8102188d76e876ac8335e424b45d6584f4b350691477adf170aa6211b33440bbf70768b0023a18040612c9732a677a6cbbf0155fcadf4d4f8e4e19e151ad938c937bdf8e828f8c4f9cc5567f89b7592c154dd77659bbc75d8436ebfc6f52abe022fde582f07904300c7c8b749fa8cf3c422b9bfeb5a58c6014d1857f76f592130eac0aeddddf51b9592d74d3588b9eae0888d2cc41935319546c0602c503194a623fbfb4a412e78ee947d8cfed5b4ba60493182f4c9716a1c1f332dedacfbbf9ce36ed02ae3c72aba59f54a9f0546165598f8f53727cef8523ba8e18614a62878e7e1932dd32eef9a0dcba62afa9bd9b5083e22353cb00cfb224c1d19f9c53851c59b6dc2e2fe250656966d1337e627cef67fc52d4327cd9798e10e46f4506dd840de97b1ea56d2534761e13e1ddf1cf8d73880e6d8696637184512a78f9456212743f30f91e4ee9475493f49bec644b710289df7ec923219cdc1ba9e24b2fe5c0cc4e75400d8b2b4bb84a6ed4b2cd40f5364accc1260c8e9cc8a737db457dc8e92130cc5984ee7c2b023bcfa7d68fa96cd6c7b225ad2f9bc1f450d760474755a227c7d3e301151a5c5426687ff25a31e958ab358530f571e06ff0caae1a782dcfa4a26b8d1155cae90c3167883ec656fce3d8ee1bb041a37c6fc8ac238c6ff95c4c3bbe4ad879543721c8d55f98506ce3b9d30ff3067637864a8e15a59a93a9743a902a0c3711fe07eef39191c7439adf76d74b27223e5cd3e2aca26b3a2d287877e4f096e656cb6ffbccbf1b8a86e1324234835f4066f726786dfe77c939d299b13149b13458f8942a7ef8f8dc5296dd474322b2334a921cbf565e3814672ff6fa4662abfae9b882a8c37aa2fc8474e915f82495127d2d9d132ac697ecb83ca4725def1da5a4562a743cbcb03b3cb79feaf86c3683d5e7defcee683dfd76c180051db505f4cf78d45538671c5afd05115718488714322423f42e6effbaa54b0f675db72d25561e5c9ced948f4505f6dd49770576ebba586d8f36274e0d5653787ca9da42b84bc26ccf5afafc5d4191029b242192ffc7a6dbe6a8dc884e7cccee4daae3d67f467ffc97c5e3e125d43e7eb0a9fab97727119cb780ddb2113bd29f145b3769ddf41dfb72bd2cdd5da00437a7042a8520a54067a76546180aac40845ef99a4ef716ca4c1368b445d3d64b0fa42f81904b35f5da6bad141267c3bca709c3d7883fa336777013f02f1e8562ef9fa6313cc8006121d0809c4b1d171605c18e1cddf0fe3b78b590885bc880c1065d2442d0093888eeb4c03ea6acac6b9ef4ee23461e8be96344aaa425c16925d4b21df9bb30b32c9ca1be1af9cc74a9d93f64e514fe5e732bb5203a410f07f64a2a0851b15748e2e2d7e88455aa3e28e9b6aa488d03ec60d7c11f12e95800e04beac4776c730a483f7eb9e19a61f97b3974727e038d31c8cb5547faef3a636abac3ad4bacae9bedbc60c9fd7799de4f5bfbe314bae9bf78ac4d1379236467e788e2ca6a2487804063b932fa7964ecb416352732d244d4ff604d0805f4ddb0192012132f768096731cf6aae833c9c4de45868bdf0a953ddd5bd5e8c5abbaa388b3c4cc6c22d1219117dd676bdf63b65e8b6e841b44d2e0a58ae96577671c8d93541ee08b0545a4c69cfdb44dadc3e08f10b377d3d4d2aeaa26b5093ea2eb77ae8620280be1d82f1d73d8d7f18ad4db0931c9005ddc2e4e31f354a10c27e2f758522a83bba23334a2938026e1b9f0afd8b2e45a118dc9fb735b3ba000061fbb2360b0254fac2dfb34a36d97654a1eef1b80864ce8d47ecb2c20182a68ba055cd2fa9e3a1f16e3cb4ce5cb3cb79f6db9d2ee61eda24e6e2f0751787bd11c97671adc5f72e6d6829ad06b90bb7bf7947c19ca758ae291a37fa5ebee4041e7504bad383341d4cb9b81433b0ca1603f5c23078a3b185b480f95bf35a82b293ef5aad890c92e4963f566af0bfadaeaf71d4b8b7d48e37992678abe3da388298d160cf157139348f3980f285d5330a16d149ed61d4688d746b9b9bca2cdd8e866499b057f73dadacd51fbc0953ea42d51fa2ce8f75ed5fe9f89f16d72d95c988d9f11a6592ee4c9eabda40842cc5b72200c730c9caf7d18b37dafd73b97799bbc07fe147e09c10e268bd7635fb552fee7198229e376ee67a0d2f062d6b5eb8ecbedfdd5c301721ef55f84b8d02be0717a9303fa9ca01850807fa173dae4bd4f2313cb0abe85bf9f621d99d72cf8ff3ad8f9014ad1b2a464a0cffad738846c9ffbc3a92e3790492bd9698f9d59b7ea30d6de20ff9018324f84a46abd5eca5cf5129ceba89fcaf65d32ed11f3505c2527aff8c132c24a310d02eed68e7dabb17a313c03ee57a064a6666e9ed35e8b56818c14bbe3e5215b37d507f4fcb18fa699fe39b07444fc9cfffc6b108d523197150d147001a6e4da7b171202385999314474cc048a6eb018c5108148439874825db01a05e143995052fde62c6852aac7720a8d17f30342729adff6c9ca3957dfb66d6ba4d23a2baa1980a40e234dd959f9d8cbf461c318a7db1b215f5a9e6a3195441e5056df05452c5c1b460e9c1ce985c11add0cb7ab69364fdece34f84235f272b72297a44c2ee0e4ced1500a079c6e35f823bb2db3af9ccda3ba54f8a83bbc2aba261662d66de1fcd3356755df0aa51b475a126ebde9acc0c3fe0d9ca186ddc9bf9a5cdeecf18133d2ff78cbf5ed80141fe75640eea7eda1b16b77186c7dbddc91b965004e7f3089d1a5cc2cdd023fe968f33bb54fedd34c093063470512b51e8b24956ed9fb72a837b0b9659ec4fe829e95b97ae91ed9883bdb8cbb0b30880d3dc5f27833adf16d58925eb0cac6ec3d764c74bc0cdecb2036f2806c4287d35696e2e4eb62ae0d781b1a3985d3c5dea26d8ed1cfc24eeb328c85263e7d13d6682104d2a91bda2f9fd4fd453b316b98275067e46ec2383a44e46630a14db52306dcaec48c661d291dcd12cff917fea93303c66374b33d52d0ba52d259fa94a24cf176ea47ae5c4cd6efb67ad648aaeb1f04d8af146b1d4bd7db0f0c49dcc1c25038dc27d33fb6def0368e012cca40f32ae2d7fc7a9220ea89823e03a8c88de9259976bd817e1effc9072d67c9b3351dd715b654bf6f09bf0ffb4cb31db611e5888e74190c03e0a1b5b7298b330cd762c207199f51848272292af730aa6842671df8daf00d4be3649b82e7ba462d84b863fe210d9453b9c949f8dfd7f2d599431030e90de5b392fcb014f4e9a3e09b75568de9fb7daff7747b181c2d6712f4a234689b91ba35baf89d58c12802e56bec33f7e2586fc9a1bbaa3a79e709705fcd70ae1d1fe190dc783f6dc85a4251ef3d29b6718f56d27ba605c227a5a1718f4a3f557c8d09858b92b66de64ce7b1bb3a089c7d8e112e3ac4f02b0d2564c266055f7c1bc329b3c6693ab6ca72e127a875f27316a9fd5985e688bb37f9cf10b237320a5214e6a823cf171f1d47684cc1c647eb6325d4504062f45faff08a050a5bb6de1e245611e6904afb1afa91b54f1456ee62c1dbb36b248d371f321bcbff3edaccfc3bd7b2a5a7b5ca08527c1775aa8c0546566dda5407dbd6fb2427719028ab20205975d6c026d6c4c9130f9fd63a5d3383ea1590f3c779f9d6e9c1f1ac4df15dc283058dd70428ec764df35c08d1b5b854bac5d0055e46b0cd15fea49b20b197c8389dabb1be7a94cce17e86202730d96033770a11745a9853f4e23b10b07233560c2b2bb66ef2bf19a41b082c4ae72341f4728dd86041572cb3f7e1fe330b893e3d8964749e2232fc71921e82d7fb75f11f260a3bd3a49b2c3a56bfaacbd7f97f26d86f5ecd3ce4fe60404be2713ccf9f9fa2319578c2fd9768ff64e888d4e72ad2a0dba2d5725506611069377af8cb683f4febb55d31c46b852b9de907fda3ae9135fdd905eade22d6a0a51c8cd1c19f450a2146944c40d9742daddefb2697835683407ccff67c7628352cc88af73d6635ea9549692857d11f7aef044f539c12144b5293d1eafc62499b8c44e2a2170df79db7f4d2794730a8734ac2a9536065a65f0c52b25c4ea0f6ad357eac4c4a2bd49ee048439d1ceabcedf4ebc55cb327a3c7a8ad145023dc298cd76727215277853384547ddf42fdc0cb47161cccd345b583ac5ee283a3b6f211a6e86902e30877c9b986f550e8f7edaec6d4b2c947a50b1ee60f2ad25dfea7a23a42bc2c4ab4aae2759e2e82d9302b4b90f39cbe6d951640b1cbd208c0836f5b5324f3fedf16e94f11210d702c7e269cfeefed5bfed40709eac3a80585ca7ab3fb474cc7a70d56ed6e76ab8fab016c59fb9f3e85b546c9dc5a7ea4d9ded48ea44911b1436a6f311d455569ed59de547c809ab18cc356415589ee4f65bcf543eed478fd8d8fa3b3c2638fc2490b68505bbbf48a35e33bc40663e5df89ed593b50aff6c41ae22f46b22a078d9b09f252cf05c4b80657d82273c4c686adec1a68fb99661498d1c9436c803dbdfbc42def1ccb22f9ad3c0b60749fee2fd5a42b9f5ed7da3baf7b3b3926bc8930352bd9ecfaca3adf8f3fc144b97705cb02f481667fd1a5f3300acafb197890298be31accb76063f8ea765916f133b5beaaaae7cfa12c19caad0da5f05ada6fa8074a28c3b8fcb48c5813d29b8733123aba09a1bf285e792e0e360a67e1ed1d0611cb635ff74b528058e53e77a521f652303f961e069a65f77165c98616452506eb40a7be751955f855450171a7de0911bce72fb308e03ba18e1bc3981bad06b8593f2826b0acee52923632e7ae70d34863c8f3f3f86ad7e9bdbe8efb24cc73ddee4ec5faf9e9d85ab33ef8c0e86caf38d61778ad7f2f1ec058f4d474c334195f0fdf462e5c1383e1f0e942318be227c38e799bf6fc83023bf299f7ff6c2eaa89132ef6faa969698219cd1904da0c2308449989473b0ea6d217047fa648827d06d8a1cc72f3316c133c08cd93ab84e2af8cbba4232fd80cb4696b3244b9e13b116b19a0be0756f9d1121193320171d3b282f34f1cd0bbf2e44d2cbcca147cac926d6cc5f3912f1143d3dcc91f6c747e7eacca7a02d965359ff0498492a547a06510b50e498efe8ece1d41d749bba8ad6c0f6f383a80a47c06e6cd8a6a71e6585fe6b79b007c39006e9b6a81b510ff36f9b2c510219b1eafa470d49db4ddb5dd7b93c4d434bc8ab33ca591f41175c7dc4b9b78a8225f4f3d491461f8d867c4789907dfefec00ed7d88acdab70adf49195e71d1ff7287a0583650de632370b4c53942491d9c78a1faa29935ae4489de50d6073084d21682d0241f7aa458d9aad87a1902c035df2776defefe7fcf75b8303ab3d77bce07d69deb8566dec8cc98ed99227d1f263aef8ca6ab267ee52397c9349bec31c302e7e0f7c6957ca9fb76def875e7dc1f1e5ee76094fe417a664e2d88fafee44de9f8cd1212ac83a91a950f72fc0e50d20e684e6c7580b941469fcdc1a06920045246b3245160c70cf973c6b1243041215038c1c5e36b2cd9af3c604be9588b229062c17b608f6456af2dbb2b1ac99fcf5f27af968a52903efe302d31917e84ce41487b3bc7ef7de162caaf3d19f0fd2d546296635c5c9d962845dcb86fe37f4d89ca7e05eb8893ef7d7fb696a05c5afaf2796e63be3aeee8f33e53d014e5084126894c87c95a796b35cf0859294f8f7699c7d4864d0bf3b34f13b38818a23aa606fb2033cf1ecfc549870979aa33e154d3158736ef52292e10e111a246d587ebded6a8e7b7ad3532146caa1c63e58316310cab79a9e036e63c1b32ed0c98e709f44d7b7d1b16b33e901fb68649868a63555b0380282e5844ac345a1fae26278c729d4f96e7eaed1fe2ca2f6798b124e01a53ce8b478a3f90dc25584a40a7c15581251fbef1012eb168c0dbbf6c3f7c12298134489e15cbebb3f292e4360f7e65aba14b18d78566a1794d3d663830dcb079e7d7c7fd9354c507c17853d18b26b0d51cc9a0769adc628d7a288777d396d4ccd76454c5432faf74975ea0eff64a98bb32ed8c9ae8cb3a07482a727c5b14a54c7c13e88dc40829478941fc483c4d37797cd31a7afae96c8d6ac798e70d633b099f2dff4dea4e87ae3a8d58d5d3853a53582694c2fe210bb93f9e37638ef4e0744bf4e74e4734c282b29ba75ce0d1f5b2fd9693dae0eb28e98d8a68a393dca58eadb5456a573e80bb2ea2a45717ca59f671bf88e14a581d30b304a2b94d8101c35515186190870a1bffdfaa2703c999122c3547c6b361cbdb9238c3865b0cc76a31358f5a50e0becff32f874da8b6deed588efe788ef24785a70541129c9f3c20bf24cf245222fd48d31aa0e6e981deddac95bbafb7514746b2f3fd89f28cffe346d10687c7ee709da990a9b62cca3f4c7c44905315896ded05ae0f7c917a25ea83894dc533885a07579017a4b1675871ab04354bf82d04e301e31672c743552111056ad356b29d5b74738aa858d646d8ec80b455383014cbf3dc4a1a27bf549caa0cb8aae10c37e1dbe1389b71a8712855966f7a73aac39ddc67fbc79a920583ff3ef728aa6684ae88ff3637b4b127e1f565eab86b36f456cb697f000bfd670d7be3a0466cb27e659a1906e72c497ec99619a37c4c21b177abf1195dd638180e509fb1191b8b2fa8872782c06709c72d573c23fd73be4a40c2f11ec9a6144e44c36351a0ae90ac90bb22009440dd593619ff9006b7da7c3410e0c278dafd833a47c302f63459fdfae1a3ce6cbbdc2e81744f33d4d5fc6d5a8e3cba40601fb5ed493af313a20b9e6b89c3a32fa9a22a6b50e28c6f6aa449f4f484c81e874015af5574386461c48cd7546eb4ca49b8a116c635a241aa4ddaa1b806993526a319d406d72132e7429f46112ae022e6df239731cf717bf1ca4de121792aad0f043ae2f2708e9f581b2820c1ca62e02cf9a89aa4f3041554a6433c35dcc9b2502651d5477940f5309a2d7b7b25ef51db93cd5f5acfd7818f4374f070e10861d1bdd923cbe8135834e133b40228b19a1f71e38d2285114b3f26e4659b457296abbacb104f5f147a0741d7c24af35e75511c16100c2cf9ab2803af0ca3d2f02958d6ae608737e9fdc468ba42c2b8093c78a94a69533f7541e1ddd20ed80e3564031f3b28628c686b3d14a519d39f9cf3a568a425a484f96d0057163f3ec238105f3fa7895fbc38a3ec73a99ea246833d54da00225a0e13b9eca5f8f882f06825ac57d072a03337f4001f94301045e6976a2cb0b206136ae77618e869c89e09b5e7aceea30e6eb04181195e00eed57696dae638ee302c28874684a8639af63e02a8c03a957efefba803d2a13233da91da8aa34b0c9d311327468972e899901c26fd7ea1c3ece0e062d0e6294346923e7c06d78ffd4b0fb950ce2e16f8e569fc42d58502c3041d8df5c11e4734c6697ec575a3474f34af53ea17555dbafdf4080951aee59079d1814cb7cfbaa7c5195b31e1d6d315330458af2d1ae84845a295b21bdcc7df182d6fa0fd33cb749dd7e67a0a9fbd25964447b10ad97e6ff70afe44bc0af3a77af0080d96309a43b231d0633da959a672389d6655ecd65a938c1a6f8838983e6a9a1b8eefdd52ec19fe3e76be500d28ed19454aa4062a8c009f59c34d44654e1b4a2dbbbb170fa8be8980136310d304989a57bde8872a2916c6ca13cca302b5a9ae1bb54111ddcd05ec9a7727d5dd5fdb1081d7753807be19446264f64ebe728501a688696573826d4bb39b99e0aaff4df91f18cefa3c31971963e1261b0d248e4bf908d5b6146f93888bde6ed9a7a944b428222d0b19139448a0558e2128f34db4a70a38af4f9a747cb4467d3b78a12ef39359e12f19d8e3fc241d40e7fc1dc7797085716e898ce0876a9cc7aede9acb5caea004a72353dfa626679b19fc0db0a22bc4134403d9745714090ee0435639779ee3105c66ccfbb30ee6d11eba277abda517fe614affc6f0b1eb22cb5c1d09bcb31e7bca4e4996e4774e9a05bc8a84401ddd65cd6f369bca0963c61eb67298fbb6e14f8a98be4857140db90a94e7556395224f6a4375d71bf73e5e342dfdcb9d4c574342d516716c897288df88f77a42c27a24818d2388aa4bea0e37db930d48e2cb4424f530187df18f9b9b4ab6f57ebca74ecb1b50eeab956fbfeefe0792ebc637c22c8e9ad7bf80b03363f0b69eba27bed7aca518849b52803c070d7b8559a477929d0d403c996ceba82628ecd7592f77f001d9f340205f143e5b42db5370b578c4ab5a9ae9abd241c97f57848da8291d7674881d687e4377d950b4c272385e90e85d5a9f21677f9b35dde3ceac46d5b1866ff107c863f0322d90108c63bd8aa1f991c1b7fb7829b820c01769e899de4591978db590e8f7147cb743dee07b63b0ef3973a96804f9b155385fadfd44f3a949176af5260f5fdc31e0c6a1ce8edc61cb5ced3d730c35d488314ddd9f5a3f37cf724a268c5afb09196399d2b33b06209ce3321ab4654cd161919449ed9c07517d08568abfb54d96fe094ca1996e47abb7ac9ec1302599b0a917fa1852d2c66a0fce015219851b6923469cc2b57c681156e065a6686d7a58fae74dd0648710670d1e86aac372ed98989fc31aba7ac3ff9f566cc0413dfb6eb66dc5e4e310c9f602b0bcb677805d163e9e84532ac9ca4fca2ef0aa521b93ad7f9501907e415919f497eb6d7bd526f3178b6ff12105b044284d3186ea7a7a15d6aca70114b7b5f2c9f5622e9c883a84af13a3fff41e8cc6522d712eee2593b4c9d9132b54b0a00b09d98dc25f582cc1c5f0f2b9fd64fadc3c1cba9e1dd7c2e4819b13ae419e37270feb2802d4fb1af04d9f5b9e86921dfd23ee7e6de50ee20d431a5906da1a9dd3f5e4c2c2005cc9a07fc93789a7163584762057609b629c7acdb56bb650a6e4325033436070f81cc333c105fa83ea1fe99203a021628a77aca4894e483f9b9a0ee1b8dfe53e0a068d9c3a04e2ef17dec741535e8825b86bf8dd9c15755cacb6cce3e3180f54d176b84235dddd23d7ea0aa1637d6f6a6225a58fcb9ffaaebd97c94ef18e97170d39f14ffcb07775ff9c19ab36bf7d3fb85156ab0b62e9f9cd36b19d417d4087e66fbba27b8ed3e3581a3e0b46ebc6790859b1576e30c548a53282f5208dfedfc4dcc966f34996a594844aec15ebcfa5078a9e57308acfaef6a0f1f970ab0a18d607824148609c92ccc98af0e877b144313cb63cb3c256b6637462b9e2ad9f3c2cb236f3ae70cd613395d4d80f609a57fb1aba27596366641c4b7cb77478562998e1dfda788d11f91d79de938286294fba594bbe122e3ea4fd9e80d40f8562ec58b5d0c28da9927044b5593d9e67f50b758ddbbfd477ca4f0ec62869124f921c0bc8af7dddced5971b15486488992d1e33f2ce95982dfce2d5925e1a15d80ef52726c7ada0e5d4292b8b1df920d9954d1298d0121f6f61129050169225e48c2929cdce42e9478a43f17e72f38893bdf6a1c1ae6ac1c17d80adf942e53c9574c4eaccaea7f5a8fa22c12a5a955ceaab61b1f21f1833e91daf92aa9ee8c07b0a623cda57d6f090ef8ece4405c4852ad3d4f15a733347b49f4cbdadf9f1252c153c39e0225f37a2a7fb78c662805f3e1759037a6ddf385b0db25c19d5d0e8785ecf005d11cdb3dd1ebd8fdd5da83b579fd4cfa9619a01d099c8dce9370d8833be2049118a4364aeec225971b851d554615729e19c5e6bbeea0817a9b528afa3276602ad8060b661fb7ca9b249ed595de2769e40b1d0019c64839e80e0f6485ba450e598698c2eb45655a77ac0863a631acb75b2db75ae5226b11a220864203aa817a2efd4da8433249561d67781800bdca8b81ec75d7f332ed3d4e483c57812ee0ee894c8c3b31b042a2ac8a434e970bb93043418b7b0c6351f8f913035282cee0d4cbcf15e2573bebf30de26d498c322860224ab06956f58bbb0a171394e311815be7a08d47f57d12993a36c9969ba89a3cbbc282226310f2edc4aff5f08b12fe75b0522f5ab1c00a886746f4916254fc2feac2e6d1f652178798c0b911368335684591e35f45c709a5187d7b7a25e73c1c46fb2a4a932d6676b252db155e6cda532c9d88257f3ea34127bd54a532a815058840a854692d40f04cdacf34e4e8469b2d8b537c4cb1c5833948eeb49f83b5c4cb2a9f39e30698ef5266c020d6e120e94a7be9f6056d10bedd0a42ede61e9ec0ba19de34231865bbccbeb999b7464f2370b466994b3e0f8cccbc0b2f4e8d0c55e111c98cb50e6b16da8e6aa6a64808a25a1f9cbe321a4eea1b364c4319d706e937d8561c1ffa444695b2ef887f35dd8bf0a951127d0681298d1aa6c050e2f05f07b1f05d30ab292897506a2b1eddb2ac0957130c9c634057a7f41fc01fc396ccf8ccc5c93cf088b19608e14623f6e064555a1964ab08ddcdf45d18ba37900f5da005dff57641aa08c97f4bb352db8e4c18c5e74cb83932ea329364727cae0e297b79995645f3ae9382c847e72436d6df0a76ffc340d8f217336d6cf6b7b4c972ed600bb2acd3152a5bd54fca8583a790a2718ddb59ee73560253be17df851bd932470d7a80275606f162f64a30486d27b52084ae7dcc65f6847ddce27e34fd639b50285e397ee0172296a5af4b21312d48178b6e23e6f340f85764dd3820e4c2af917921c1bb12390e37eb0ed2613960833bdd47d47f680391af33b30537b9bc09943c339686d84e8945efd4f5ea938eee0058e140a7752f2a6f4914cd3d2074e564606586f4106bbd8c9a346ab77332e888c267a47335210727a6622f90a7d6c8842229798af7a67beacd7801d4cf21b79d8630a2f5f20e47cc84555453f0bc7691e0624b8158c42308aacf7da4cfc31929a9da7243d244a4f3c51bcb28221b8389f42dfed089fbf28b8841219308fc9d9c091d35a8aac3ba8492e03c1630748f1473633b65af3e455c8b834f1681e414e1e27b8d513545bf044c07020a0468106dc98ea72155d95bc9c9ee8d040b87f3a23ee0899472b54a4375727c9fbaf5adc6be31ad41408fb4f539d04943ebde937270624c3f75bb249eb982fc83c945f3671702ced3cae3d1a819cda6d509ef9009d55a6d860c0a514e499121f7ebc1c73b9a44647b2f831865a32c0edd16e144cdb1e76913b3eb87ef7b35f129eea2b4a2354463a2fe5e075e2e7a40565980bfd79d1511faf0245e895d5eeb8ad2b2b68dbcf3785b97b1667661e73d2fab4e70218fbada760d93999ec1acdaaa864a6a368ee51f45a850c99845d1cf84c10d5b0d826e7e5bdcedc912d72698d0f94f12b15512357079dda547d06557c7423872063a086388ded083598afb30ddf48c9b6a31360ed05474584eae200dc5108af07361f38d8be4b229e18538a6964f9ca41abd233ecbd8b283865dad378437d7aa1ec442cfc15d6ed52fa792d13668157c3b37341cb35d5402fa4f77efef1606f3fe5fec07f2afb1378bf50fe664a44f9a06e2d516d6dad18d5988ba39187e51f280dad37400b8a64a56a24970883ea7cdb06f754e9db1f3620b4b77c26e746d322e51a3fcd2ebcd3051461a1c051ffab4f6bbd31056b53a0876a41a1fb0cdc306c03b781b6349b84adea8dca5c51a5e647e7bf6de79f3e3db0d8bf1e291d5deee6a2a2cf196c5a3d155c3e8c2f20b2bfc9a19a8e32f302817cee8aba1cd94015ec71ae925b81842b97460f71c7f451a6b701a1f3bc928662bbd5c3c0ebfc25538e9895e44ccec0c8a173bb0439ca801cf92c7d6ab78501a823b51e99758a9645479e327a4682d1e7eb20892c45958ba94bd7b36ac9a02677a83dd7545c5f94503041e3d16860af23361e2ade9cff2d04206c96e7a161eb6fe1c0d3304fdd5bd4f08f6ea342112e73593199ab8da8449b88dc6fcefdae200fd31f3ef393f698ba3906d97b3c409f090d9cbf0601e498ffc0ed8f0001481c7d4438cf8ef3ecf8ba15d339d555a8ad59e28eae82279e7246a8b46427b7d5b9e59cd240a1459313266139dddf84db6866bff92c73f3544cc025d9f924e7bf05631a3650de36c70da08550cc054bd2f450f328e73fe1b80784a1142370af723d9b30e881b54c1a958e0bc303bbaf82718ebaedd8ef86ef99e1c0f8f0583866d10f5b216651cdc9f4d605ca8355c065975a0782fa506f645c8d45a402716a13f8090a3a28077fb7a198374b35d8b1a936e6f602d84a87ad9643287b951086893f86c9970795737f0705f03675cc5026680cf18a7028333bc0d27733974eda34892ddc37627287281d7e89c94a184d58b93b7ba5f78dce99da59ee1571954d5965d50266991c305e43f8ff7bbae2cea8acc16056ba693eb07e7028fa2ce704b0b8b2f07952d424537a0a4d29df8b0fb0bce0767cfc3e7c1f313b649a91718ba39aceb1865e7db2b86e729e5a892940beb6a5550a33550462e2e5ddc09e43a0d5880634a2e7386563cc37b2919e76218f022883390dc4cbca5ac3545ae1b679da4d9cf367ba8b0358f0a35531049c2fd78fbc418727e396ba87ed9b41d8b34665f118a5387fd5f6f21d659c63727938159f3482a0af02af07e44aad13fa1acc44ca75722f2050b87b2913f840848391cdc84737541749e02d438ad8b613e3466cb6808b63f46fc8e833b667eec5fe5c49cfa587edb3b2295c0106766a70c8bd0223ba4486a73307fa3d7bd145768450276096febfae5af7238047ba02fa6858567f18b527998ec426053d0249094c146348a6a9260ca15091c8cca9c5d99ca2c832a01661d875078d862760ca469fdcc35202000fa9f13ab7030fa0b0974e1870eee8cf142af760cb05142211f12ef5a68e97455a00ab08ea891ca76f8c6fd03efb7058e2ebfaad07e072c8ff21bb5c41b8d3bc19a09efb15432b6e9e7de3b83d941a815c215a225c96a71649bca593771d5aa59e0332c370dc3bc5e0a61ff3072b652f19211d731febf2477d32afe4770d49542ffccbef3e9a196db66bf26b9274fea95f574e13417dbd5b96f68c9b59c5990614c62e0adff7e6a4a51f5e60f3400841c7b47a4a6684b464697a59e4c32a2c2d762fa2d436db49caa0f403ae8174a10c8d85fc730e7747c91d5c0baeb9380eb101cbc88ad29359db3b7154e1ce2b8be55584c29d662d5cfb5da4628bb6eec49f58ffd056c796723c13389d988df97eb456e29df21de39ac091aff854d00e1de579fabfce8d21d83a4846abd8823e5127b1e4598bd308f1db675686def08bd4695de8db684da0a25783f12dd34d4ae76435069d3996f1ea072287795dcd33461647e3903cb82ec3b745de1faaf7b2a5b35bc6a2169b39c9604de761265d0992fb18869f56cae60ecd3f4ce9aa634690f30c286fef72298fbe7a13ced59bc8775720403cfcbc923f26d6020284205d6e8f7e616592b653125705c13da9f6885ed0ad56adef16ef98af9bc03a97636a4575b9c980aa3c97de986ba355f71bf5e85864baeb726992cc89dafa267ef6719645fc122787727f9b341f0682878cf135bdfbc59321a211209d23940907d23d5e0823223f9c621e551d3e2b4473cadf162aca55dca0d9e109ac8de8e55af8f797c69cae38fc0a3a77e159c8118ab64b63f271d02799b2801d18ddbd15bc8a278051e6ea761e351f72e60bd94a95401f9dd491d19aa41403b8b0c6420591c9d0442e67ff680095a9e8795b4868c995e89719f3586f59a095b6df3c021e20d335be7b7095573e9732dd68b175e888413c9dc36f0c11f803a60ca57a6c4192de4e6ce0fe63a3c0a4d9d1b5df2476a6b65ae565ff858c3fc813da397f13ae003ccb1c02203d3a95bfd4cf239770166881245ae84257ebfd296b150379b9b9bb778c4732703f3d9e2e0f2ad3330301546a39958b2b9d52b00d57b37e5a609e3ce0e480082c1dc76c25f266247796303acce00be7e88d1ee6ebe36598d169556ab8910134e0fb230465203404e0e7629b9c26366b29ecf9d585508e0e6cf4cdbfb6bd490fbffe7e0ec1ac33fba0e8bc87c674fc004c75b008fd53be4cdbf3c879fe6db6941de793190bf5db93a7b4ad0b1d7917bb8ce20db4e4df1b75ac82595f313aefe15f945e2d74d05e2247634f33a990b51f0b78e304935c10e7bb477942183e4ae036dad15a3ddfa069aae2e2bbaba0dd868a6954e5a6be4180d735643e784a42dd14f19904edb49ce0cbd202640911b3cdbf2ebb37c81c0b3da22f04f22bbbdf93c799d0e33072e41598b6672f08ee95e2f1605c7f9179f54baa99126f0246963f520615ab05098d846b33b5efe4176ba43934c4c0e8b4e2f23b6ddb602fea7c42ca86af62a8de28914c5aa569e9465e4288fbfa4775cf68e53c61a099cf4ef4daed3e9ab6d3b500230a437371dc90c70522d8eb5f15bc397a17583eca957f035e487d68a4eaefcb778ae8ba0a87629f023c682c1b2e2d595885bec9ddb2a71aff03b1cce78970558658934c55df8c5562d5e6298242bdc20e256a9562c7a770d735da282925741b5eeb135ec1defec1c9afddc8b17fe6abc04074797a9d92129bac9667739a72ed3d18763862a252976316957bd6e0984d866a5b15d37982a922ca482c6b4ade7c444792a2c1d4ed385e3f1b8bdeac12cb8a19c5bea85bd0255cd7ddc04e1681c3371016e7ecd99185d0bc2f66fc2d2554b84d52fabfdc0e63cf655b217d6554b0ce8c3bab46c49286def5b32597efdfb6d8c085141ff7210163fcc75529f7f112828489b550426e01d7e9b9cfb7db7071a8fba5ae0d9a8cd6bdb26b7aa5280df406e5cb51c99e3c6d3807117f919abfea876c39dac34c0437ef936f0242328d4ce4a0d35cbdd43c0665dcd917a71c5b9165ac1d5cbe5d2955313d59cffd6f5505eea965f9cbdecaacf8c3af05fd3a61eb02d4a4ef69ad9e097536664329d9099eefcde231bd41b55d86e80e8e9bc7f3e939587c399d3306ceda590140cc7b10e32a72ad48839d322f594db1fbb155b66281a18e41d8a9004883171b155d07231e41da0af511c589c1f19e826234352aa37787588ab237660e309831a5ec6a4dc53bd5ede0b0ac2b9836d1f62343fe5aedd17c12617303596fd34d102730044e0e538a619dd05b67d4a40405695af093e3361cefcaa9b05a42c483c35c25fe1fb14614527a43ca4847048e73d3571908c40fcb6551012dd6a9859894e70c010118027938759932ff076871c390108c14c9fd8a88b00b13c019178dea2cd361fececb14ec7d6fa2349c14fff3d58d2215e6382300504ecbdccb0628cdce8b5418cd5d42bc36df1d3a34b7d2994161480575bd9aff18cbf5cd2312842110318fac6b0473d2fdbef14ec20e2e9a58b123f923aa576d1aed86bd6c8436f491993c9bcbedfe71469584f4e5dba70c644f7b4dc51fcda473603080a377487adce44bc9f46aa07f3dac767389fabfd89bef30500921a0c5fb5a8a46476a6854d9c5b7d859eb464843218c07a2016d599c139e0b965181cd3e5e20fa266bf37184452ca447559e4a6f37e1f28cc9f9589d1d24d66d3cc6fa84dcd77329aea81cace30a84ada42ddbc9d4c3b45a09446eb5c4e82c40a581923a093dc7fd33be507c0986a061c86a0d8e668dedaec534f8ff3dab954c63836b99d66feaa2724476f37ba7105a42377971c1e34909410a33d5c8ede2c2a7beadd1fc8180ccd623e8717ceba1550cfbd273dae57d4c78ff2f5353f80211e654329f04993016b7e622cacbd6daf3b17b06b99c75bc0fb2a4a94be01ecece08ad20797dcee03950c75b4d0048619c83341fb19dbbe660d164750bd533bab3c57831611f35a4aea086cb86fcd9bb76e243bceb6cadaba5b6731b71182d0d9f2094a0a8d849ae9a726ef8932d0c4ea6ff567f694f9a806b75777dc19eeb1ee481e7e3ffe95d06e690962312fb01d2a3f856d6fb9ee09cf282d1cf994190759b0d0613e659965b7114c23089d49c3cc7f3cfd24af7eb98dc73959be66269da0a3d42a37bd3e7a6620ad6e728696303b64df8e1555db9eba4db34395493080223338bf17a5f3e75d9ef579e9d6ca063e834607e38721c2745af1e446090fce7f1f5ffe512c66ecd87cf36d6a5f7c2db2318188336af3de3a496773178e46b52ce33233c0fb6129a48d2aa8440a12c1c6bbb213768c6e05e7f8ef86bb1a10b1371f1a794835b6490eb4f760635cbf9518b07f4f76fb155767eabc2d05c84a416cebbddcaf2172a432b7cc8c3e01368d29684818966d5ff14c5c3453dbd704fc6415416b0cfff721dbba1483bc96248cf56fafccb8b11cc0939a3076d344409d232771edded56383fb1a29088c288785670e67d8adf809274030449323997ee69c9273e7867d8fb0e5cd8fb00d73289721d7df0e28924ed73592b97ff17b00c66b7ee368ee5cd1e6e54f884ba9192271261e291b2191f58e97a0e62c6be347e696b01113c2900191af8ffc63f5de64b1ffc5997a1eae11c113172fe698207a9ae6f617d4ef42eccfcf40281741643063949ee6bc72f95fa6a20ccbd55f1088e25eca7e83cfb60531abc69d3a70d2f743607d969e7406b03f13f0cb43c18c51faabc0636769c0b7856568eacdf265b505b723e014170ada07be89c8212155e8ad13c0dcc54520948470fdaa65437b0ac5dfcd84a0203f8425f37d5e4fa08ff8350e347dcf08f951714610c88c0ba10e62179868c242dcaedd4dcc4c714bef2353b0047b589a53def269369dcfe2597e117b567354ceec44573fbee21e20121c52b0f998736045883e91e664781aed976a7aa5e69200d5e3b3f6d84e90ac27b3d46361762df3a0f41a7c91a8cbcb29b26ab6745cae893915eef6d3c5afb0a6dd5cfc856135624093ffe08f77847c7e13f838bf6ca8fffd782b61c382a08e43766a5b2361238341730c39c42c1ee410023ee5ac47a4f6ce0d1360a9064c70b453c6da15038a96f717ff40c2c681cfc1baf43c57f2c701f765d506ecf48b3ff8a5b0d0c245b672cbb76e010f98b7a3431775839d20c53bca999736d2772320f2cdcbb0675c53cacffe05666af98af1063b4c364e3fe3c0014e6014dffe143ca7729e85aac6c8d8f0c4cc517c72ca9eb3a85aabcdc67c4c8b67a5963bb7ea59fb76696db0d5ac512b19ab090cb8792483fe6f9c7972f43b09ad7305e1ec753cf9582b678072b36dec81095ddbf4ad85af7939e0798e7af3bb1b0049a546dcb138a228e7368d126ba9c4302089769e1bcf11f86db4c09e896f6612f01ab5ae71e51405477af9d4b45a6fce3c948bf9e28213ebe2290cc295ee54377ec268f9ea8ab1db4d50b11dcdeac2a99ff9b587f1c044463b2a1d93a5749e886684a465f2d11a02589e32c5aa86f14bcfb86af03617d2694ad0a2218bf75ecf21f1a9a137f81435ef14cb493cbc28c8ea6528e28e55929a029217490ba565007b8c5dcb2b09533f43fc74423ffea282670e8dcf820f15ba0eb1524624bd7c8085de7f99085c764bb2f57abda764f344f6a0c72495833cc882d06383d3de2a986a0af31113a44a3ad09558af53877c054a1db495e2b425cb5dcfec58e4042c6faf6ca106bfba5617f782a49c576a38b68cabaf6b101eba64cbe7463e8f9de0694d4fd02bf010efdd8a87014c96dcc96c270092644897f776d817fc32f0077d80d025294b9565094f34044703b899ee56dfa57151797ae477e65fb5e5910d770a8eeabcca90a0959bded5bc4bba7ad5ada38c16eeb18762e5b41f6229d817b8d2dd15fcddfd7bcd2b54df6a1e889e7c865f043862b83c7ca642b2fade0fed3c9f33c84e689e9f954ca54a08e73313ec562e811ef6e34cf61089cf3cbe94c64a783f0e330e75d76756598b91c719d8716f0b559f75e7b76ab3d62c998b02ba3fb0ea460298bcf80aa3fe273199ee6816581f1411c9d9f41afa604631bf19c78228f3dd7aaacd1091d176b51d95daedf9e8367613bdba5252218cc3463b7f68256e2e3b1f86da5003ffa6be1d782198d73957632837b532d8190ff7fecc8735403cfa7c27cfdcc74e29184098e578780babb602ff33306967ca3b000f851c2b978c09cdddcfd4e0970fcd81f815c5382e88361a94840a834412031ab0be9dd218bb96bdd1dc78aa4d7dcdbc38ef05c6f795715e213bbd81f5abc770da558f9b2e06aeff208e2a999f38b2097a5220efad95a70779ee980038416db061a5acb8995bc98b169a0fb21085e6508a85a1365fad27d754bd1f3d93e0392f8a45fd4fb27bdd7a7938b6adc8730a572cffe09ec18d5c63651cf54b556badbf4b35c97cd4c27aa2836bf634530a230613723bd35dc102b95f056b635b382d8219bda4b129642d37e00bd23d5d5900b0cb007f3474906e0c5c75825b153abff2f14917781167ac70a00ac707c8c93a79060cd45dedc284b59a92594eb9725feec4fe65cdb13acf420a7f890573c7ce0239ca285cb474019d1fac86efe63e33f62a3f79e25df12e37376b58fc1681513c0fba920052cb336e8f2bc8354144396c24b71e58ff7c2abca273cff82a4dc30136ee92c703668ea19503c42f2254ff20fca507028944706c14e1e1715f2ca9d3093fdd10f889ffa74243ffb598aa93cb8ca8232a88df49e805e57107cd391c2033daf03249bf415cdddbda3f52c9605c63f0379e9442e9b77552fee0e8c2643da096f5a39f8b25c7b43ba0fd8520f507779ab50ffa13d99a94edcb6461d897935bec520fafc06013ac7edf59550a61964b6fdae7b7cfbc2eb00540493f825a2417ce5be2877bf1c1aa1e1c50c512b9154f5291d7471e0eb1a926a43ce54489663ceecc35588b45ccd5aba2e78d36d44b7c69cdfb19540c7a723df50ac259903816d712afe7b74a8a261662764f9a1a5055a4fbe3b92c4a00fc0762c87d944a095586c3343682e9d81ea65710f7ef6d00094831e020d6a9e61ceb942ca5fa6be22b0f448549f2256ac00e9f2cc05fa76cdc01f41074f7c06ae6cc7dad69e631fec678eb93dd9d2529d9d1837f5bd37de83c320c348d438196ee4abda93798755fb417fe469e360a004b65c143265a0f5110da3861be37fcf426b513c64c41a9ead737f23699175a66f230e33718ae66a1de16a32b3890a2967957ac2d37ace5f333c92317b963e38c18a7f9e950a18ec6bcba3406644a69057d8d8973ddf9dd2d8418830976c0ce8c1970f719563a54d9227d3abe5dd8871bfb2211737cb81e8063c4ede422e259d5d8311ec3b57f0883de62511806b713301e68f4a54ebb6199d75c55ceea8a3b8efb805884b8dc490c9505f74c535c130fbd76f88aa8f12e3f213ab6d03b43ee2dd86291ab9793922bd43d7fab9aa1643560210a68baf7952c80ffd9bb7657cad203f0fad0c10a055e18090131196fdfd5eb2ce28ee8658ace4fab66a57ca96ca4e1c2183f7f167956b1e83c70b0f31734e4fa3491d022d562c4bf0ded9c0aef6809e11b91a4732bd206c30fd80d1626506171d46fa4772354a30abc31e735d50a6583b0e7d6cf5af5af58d54e46d0ba217ba323f916e8cf4ca73e9ea420b938208d2a3c65e09ef973d42a8298f8fa3aed5e9078fc02b795138d58758d90446c23e7a0f006b11d7aaaa9011f479e0ae7b9e79f732f905491d7e9ce3f7dbbd1f60c807b53d0b444e2546b3e9d9ba4a32baba722e4bbcf8b58cfaed4d2c573233176f688cf84cef73d5c7e7a8551a0ab0b65ef7cf9ae56f1051e40b7ca6fe3e38c03d52635df18e0615686aaa7b084b71b81e2c8e067eaef2c35fa83a1e24c7d02ea00a6f16575617cade79c70c4e5f00310967c282592a9b228a5be37f84e86e2bc6dd12979ec3c24dd93db13aa6b4a89f4a610d2d060302c6fc5d4cc69ba211176a5ed7bbcaf4749251d4b0f549fa3680f9164e8cd77d41f7ac12f57a5cbf566204455256bf868e4e8003bf2ac680927e52b9a77d1a233bdfeca0c394006ea6d1b72a327e813611b2191c9eae975b2c1b897a94e23c90200969d6b26e3cf15ff7686cbffab71adebcd2c7e470e6b871f04afe3a8e88aeb89b8576570948650d1e3da7b89619bf7e792ee88980f9283f97cb33b0d9e570da01a2d06f2522770d1fab354d08af911d7b2c99bfc50331debc38c37563934e5b130de66a09fe86049b39647abe37a40bed3e1e248dba83adb265f95c1b9c9e3506407d871a63130b3097b6bf141917819f54bd5ecd7eed811f090e92759924fa9ed8a5b65e6fe8a31ae7c1e801f5aa6e4cdd9d07e6c918434e40b867a86640bf2bde1e7dadf45905c1d676067fc1125a9eba009d4708ebde00a105c7ea6d3adbb6cd94da533e25a0999c4c0bd0a4c3f057f574de348125400b61177cafdfb91e0da88fed8cfa741a6d27998dfd3fff681ec01d9bb31b9384512b01b667bfe30f8d83a1a94fae7856ff9865b060f80933b477297568529e8722f2b42299dae1414067987c087491ae199f1f88068d4f44c27003f169a0269c2542df6a4cbe3705a1c8f0306b8098fe16ee6464c1b6ce6ae46c6c3f84e6ef3211585f45fd15696a6033fb4ea1862be5c4f1bdcd986799c045eccbcfe880398b1b184901d135d8c90841a25779a6b3e9c9a8ef6b93fd47ae1447071190963eb11af569584b50f7756bc76a71d30722684c04c674158bbfcbde0c9878eb9c42110dca61d471e78bd0eeead63781a4ff6a1548e9ab32a0231fcb93bc0b8fd576c8475a27cdd2d2894308492568c24bce756db338694a2ddcef77b6e37797d92b83d7756e03a0281959fbfeefe8d343ad26c5929d9b8d69ad4f093eaf1dedf86b8015437633d94e28ed226b9ab0a36b78f6010729ed4149cceeb214f74317c621ddfbd11ca22345d99c9a9fdb9406d03c7969a60476c134e20d92e9b06ce7f660212e8ba7a63589aacc6c28d1fd7f04576aefeaf68d374d89bbf027da0ae880e7413346b6c23b82f1d3c22bacb53fad93868dda0823c6069b82cc422490e4771bf87b2baa7c68eddb17044862c89a942797e01b57959063c509065b57511311d2556fbb3079c268af59efdc2954cd76419e9a47f07f6ef475feeff0808d151526361c6a5d36d9585b70bfdb3678a3f52578e7088e796231cd077e661078b911252711065785cf7f0705d531d7bf6810febc95b7059eef413b9daa18ca6ec32380fd576f37ea3d4238932209f9adb1308f6f841af59d54aa58bb781b9b95263dc7f3624f627e7691281042db58b9ef85f879eb03f35fd89fdf43ef4fa71ce1e105f669a1567dd9d82ce7f1493eb377288c47c7f16b1306b34892b55244daf95217355cbabfd0d23d24aa934c9a2fa5c25941a1822a7b4dd31cec2a0c4e61e2f2f6fe85846e3580fb220b3627157f9c9c79bb57cfe4ad443b4d5eb9c04a6bd67124a036dba867c93bfaacd3d937829656d499b340d8f33f67fb9994e0ce69c52275d87d3f723dfbaef85eb7a617310019a5b48ea480184aa1ef1191f6fb2ba309f8b59c8e2862fcb389738cabd269f782db7ae20523b80e92ca7c4135fe1c5c0805804b199ed1b9429e1cfd54110e7de3dcd1f9f7f4e14c9e697e649eb5a62cc34225e22060b6af325be64678965d4d8b011c501bbccc0babf7f082aadf311e85831c55335e3998565e1b0dd55811024dbdf9dbbc8cc65b4e26fd348105d79b6ae88d1939e874c2e9e1d787691c6af00d0a0090b0fdb0d01e8cfaae5ff2bc37d3dc70fb30b2c2d66f9cb23a470d4905df1b63928b7a70fb39b956aec9ee3ad5c388db9d8251f1b41fa0e11359d3245a8e2d45c15603caa3df25e321c25734281636c7d9af119e71aa9e0c04c9ab67823e87a0d1ae96eec3927f7f6c619fdb907b15b33d17c534660abfcaef3960b06b564bccdf04fac7e10a437fc5d1e028dbd6de6766611e587c12bbf5fb7ab8652ad216d21184146b0c70f5608bb5f68e5ee855ffc8316c7eb6ec6dc41ddd316cb6e399d4340f1b90163779e2af15a99d7f71ef3476322f675ed5ca00fd3b7afd9475a9224608ad8564390828e5c3e4091c17d21321081910edbf0e2605ce515d6cf1ba835582b580d0ee3ce5172b5f445eb876119e8398a426558654cbd2fe7f69bf4e4b71d113b8c889e82dd6d3097667b9c818938a750b9d5568d1d043a223ed1e0aedb532f27c40979aec38374d42d7e6474abb125135b968684f1c33fa1128b3e098be2a796a3235e38c8e274e2a1534836e5914ee101f88adca18ebab065fdc1cbb2844b2edd435f749d228d0439b6eaf9f0310713b2c39a65f89d3b6ce32db300e8f024574d268512ff41ac44cbfd55fee45358216dbf3eb4ff577a34763706b1fa5819dc63c57d102580768a2b6c45c07150496e6053a7371b65182acca1091387f96816c41c78fcebd27ac80e6c6896c8a3e60df63db8ec8e56b0644073efdb8f0696e1d38dea83e1d5f82670ec3158e477f4e0ea41d6042c49f68cf2100c67290e21517003966654e0232379b2e964457f223d0aafe2d4a1ba97450bd5a75081f2fc1a87b8ba5736af47a27fa11ff97804c0f03927b4aa21a82d3ab915a80acd9ac0257a90a49b8a29f0f5836cab63bb5940d88fac2349895034e46909ff4506fe25dd28fa7b93e04276a9fda86ec5fbef014a24ec13292da128f51ec09242f21ccfe2ff415d6a2bdf354dd414c4032e176c8afabdbbba655123432f458c46e830414db75c656aef624b341adb22e9b724f59622ac5ec400743fd73d428b7f9e371a1ebf90173e3011b74b193dac964656aac48c82736a075a961d67738f45caea795e24c50d82f2203784ccdd9ac0503dc73455408621b68a118667cb26a8fb89651bb6d2e8af4fe3ce0a938a231b9bbe8436d164a8b319f4f5db21cac6e54212def30ebcc587ed3620c42a3fdc2a4f89b3ff9a039dea61acc695adac0f95d117cd692716174ea27ca857dabcaf7bb5b4fea4b89f8dedcf927fe106fe89f3ddfa75560c9de926c4178fad532642c6f051b0a467036de9444d94d4008843d8de53a0ff6e2201afd998020855a31903158c614e61755d414ca4c1958288e10c4a9f482d7c96d7334df81ef9e5ef0e8cce77d093174a4323082da7b8ea5d95902647057d2755102762ed3b4de6d56df2abb3e06a97c0f97bcf3b2a47aa4bd46bf18a831b2f4cc1099be235e209f637101cc1c6b72b56c0ca0ea9659081ca8c341351d6fa15ade1f818cf90f3f864d3f297bcb527e3373e5037fb647cec6676ab7e25459149c15f0c220cb606c1529c16e2dca44c25c13d4323e67c01aa33d35f8a8ed1bbed16070babe73da6d78cd2b85e2cfdcf726c65af5cda08a9cef7352d2983ab3d1b52686cc39bf09dc0e59fdfa3f30247093d1cc4110bcdf66b9cf438f6c21edd8201bd92325cbe7286d66f7075d87544559d3049020cf10c5b9e3971ef135aa119314625cfca39b41d4d06cdb843a745cccd558e9b10128a2a880606697efcf7d2bf5199a5f9d342e498f3a594ff45e156649a02f81f82b160a7e47349d24959015f067cf15a3d692ec387ff8118b371d15cc550d737a53ecefc01e3a2c113553b54185d8bd3d83a98edd850acb147a646088bdd69f8ebb106a9fb8d66eda4c475b47d1fdc9a3f50b5cd741e7cd561cdf7199269dd28f70755bf472fdd38ccaeff61f7adc1e2d0b4db5e65a0d2c4b6001d608ee1ae4f10bed3d51e352d1b073a0087add1a61e4c76eb6286898c91400c596cb67945913c78567d562f2a5e94fda6349d50dff10811a3927c0995d8945ba07b7079a87a4dbf71b9231fa74e15d60cf3637bb6c88f8ecfe20dcc31c2bc3a861734c6bad6af0e8e125472583475550df191985e91a04dd8a3bcbc1049c1814a8ee6c7af1cdda90a641f0335392254968dada19d3b93d130fdeb568c97487ab28e0a2becf23cdb81cf8e6fa881e9f9a73e99c401f6684f18f7ec52aa49a3700f819f17a45542bfc17f2c4e0d0360da05ea89c781183f3197353d31cef568142c478f88fdcfb5cfcb8ce9530df27ad0d299514f05291b44d1ccef3eae7bec21cc1a004e7f77f02f927f4926d48a5a82c71181af4f1dc35e75ad1014323517fcee13ffbfd3b604c57c259acd27bd6ed6603c708b4d46a7ad3e88ff8d295a9847ead82a5d43cbd08f4956a91e7f7d6203d56cddaf0b41f8d8a67f1f7f79077a670efd9e52932465bff5add2fb5bb0540e10626b329f22ad1c894f195fae82b7c792bebe4087188b6f7a0a816979ade494cad1d5f83454d3ba900187a69d2967d73a38f1c049d95807d9188ba3bf626f970311f8cde346b936d41f1e375543c278d9884411958b1b23d32e913504bb1cc4629355350640c26a5d9c1c1d0d4d23880ba2a1c888b528334b21c847476b3c9eb165a2c0c2990a7dacccdaceb14971936bb84384596b0650716ad0fed4b93fb139fd0fd07f70d834c6372ab09455bf0d324a7f6dff5c426dfbb489ec6a5bbace78f1a6650b85338cf342b016bba44908368a282f8adda950d5fb793d06b67e1c9922f93ba502d1fc0def04abfd315d714c2339b32949cf10581c686f6e9a1488752826e4e2106d2b558d9c5692e9b85d7b37162e2cdf3da5acb96c469dff476b742aca5f9d35f037d40b9d65cdcc9bebff895f14606666cd514824627a95673645885fcd55248d1a66ed5a7e952053cb999e4688faac302e4cc86e28562828678f13a2dcab432335e9340b0d3333a82feaee18767b40c28edc4a5c7e07e9a8bf96f460932f2e34c4c2f1dc3f9b5f2f596a924d4444414ce582c74f35508a3c9531e7d84ea950453c86a46559edbe5d17abf5546654cae3f6b93dc5bd90745ee83f5be2041c5f9d348e5bfa5c9e031cd3470ab0678eec6a2e038edf572ba7012f5b05fee4e6203db0f71e63eaa1f3e7dc62d8c72477314dfe2e6db497d51f62554b7c8f8578c0b8d6dab495e492636cc1ca0bd80bf10837326578b3fd0b100cf2abbd311e5a90d049939b8e9388f7d0c7ba9f220cf978eaafb8fb6b0bdb04425e6c203a1263912b01ae64ac4a21ac3c3370d969b88c4ca05ba9220f60cda3ed49e33f3627eada82d60c55648617b72aa0a744f5bcc167d34cab699f9653d869548e42af197681806ffdc2827dbbd8619f5cba6847071c1937f4f4e65c8fde29c3e0326be37803d675db31f6a904447874607160edc61267800d0e73cad1bc27917329660cda5708e39e6eae31107400d8c5234ec1eb7a5f04005702bdf7610c28d494a49ef463d47ab3504833c66a58a5db951829f03b261766bbb57924f402c24e2b390b1f49cf278e8c85798984281a82c2f816f8cf4528b51849128df58937bdf36897d8cd24016fcd302004c2cd8e5febf50db13a2f1915b7ff125e238140451c7d2f0f8739435ab0793e12bed8777b10bd5307cea0d49193f9528f6c715f6cdf030e1b5000cb3de2148be9042f27bb94a96ed0e9e929be3b275824d589e48de0370702fd1dce95d92519d392cd296a3fc01c0696c1f5736777ac4bd48b2efa16bdb350f0f2ec9882e51f202a20609823bd9035bc4663329c96c47add8ef2bc92fabdfa374fa4c50caa24814f61ee5ea61796cb5db09753ed6e07b4451c2c736ceb9489ede7aeb95ee5541857f84121afbf2634cef55f0c524f624d8211a1f9033f1e8e1a8df5bed68d615e0554feb4faea89fc7dd8689f406537fb33fb3f162b5fc88eb09178a6ab3ab12d758dc2166bc131f358195d625385d661bf784edca05c0341103a44b348820089ccb9781be600700c17eb7f411e5bbe26864bf006ba3d7d67e39e6b6bfc5a1ff388a2ebe8144bf9b9b837b43d873f4b9b4ecff3e907a2092e478bd0b74fe6836cead9675344ebcd6c20526a36e26c33646ba2a58c59119e7dc4ab8dc71cd2fbc483b8eea38d4f6808dcc04ed4edf643619d58ccaaa961b6f2718c745c96bc439dff98f66dc86d4bbf6a658b91f4b4025792f7e493864c2c70f69b5a54b28976b353cdbafd8d3acaea20a15b3279f503d173bfecad961ff266fff50269ae9c19de84e1c207363dc055bebc2bc230b284ffd007c50fc4ddd713b69b1edfd7e1bd4963c1ee6c988f84408826c312916d26ba4ed2bb3107289202b3b70111e4e7b95050028b7b3b779555b5aca8e8b8c09bd4ff310fd8197e5ab31a429c1ce032e0cf143824253ea427f7a37af17068af6646d801b4960ab3754a62ee9cadf98e8fb198e1bfdabf3acaf75c402a7396cdca336a9a4f4a69bf8beaf70ce3de30753a74a091b8395d5847908781f51d0ef8a0b9d3f5841e540adb3711aef91a7a0a306d171213e62336a3b27ba22fecb2c92f724cf987d43b030fd03fb37d740a57617c6b86416f46f3f7a2c2add32d7c231e55d0c39c11e8d0c9953a1e3a02f30c059dfd09eca8ad4f76c286e92a0bd2b31be0a1a677ff2e0e3baad0f8913fad6b8a39f787ede1019dd9518424ac69a06aa0270bde7e2e3f9b2efdaa15e043a5470309749f6071d281afefbdd1f20196181385a805b5fdbf2d412f6f60ec28994cf9aa9a8c64a06ce2b0c149bef32c0eb152d6a2e9fb4b365fab926fad1c0fe7d84d4a462db8456aaa0a9a253bee303b7e466efc973848b58888e7a0631c99be667de7b9ada1970589019e2b5277c2b771515c20a19b5964831b6488163febae676aafd524322e7ca099bcd7d1a75f6c385361e8d1da64731ae95d737c41bf7f30dbf8e46200b6d32eb5ef83686d67f96eed176d1627fc76dbf8f17f4437df08cf27f684101174b0b6010599462b5379229611b5c48898ba37f91ac037381263def4f69363da312e2bf82b405e215583d65b4ad342924751a3b0e156ab720ea846cf0f926e7de38e627610c9aabc2f98a987a262f2718e42a7cc8a7a7788dc081b0c91359f583b25ceb5da7c43071aa6b243724b1b455944a682b4d62f9b750d37623e8c1924e61e3e93611128d44a3a0415541c7b07992fc5848ac36dcca20f0a8ebad0fc2066f49515712a9ce9254bf7c9d1486aa0d82175cc92ed5e1e49a87d9fe590562f7a4f0a20946642a5c47faa1dbc77b52eee4bb8fc66164d3a559c2477807b2cd16eec463d22ff051e3f97924ebc68f9f0ee531b0f597c1e551e02e78ec63792c089426bdaf91e0ed7439f95a323648b3fd293f63e3a2a73cf0dae7ef91e203bfb1db36fa7f479c1dc882a36f4f413dbc23992c9267d6c9b212e4df86acbd85bd9f1f32080e899b0d3731373834373236313830343232 \ No newline at end of file diff --git a/jaychouqq/yingshi/py9/18av[密].py b/jaychouqq/yingshi/py9/18av[密].py new file mode 100644 index 00000000..c6222bd0 --- /dev/null +++ b/jaychouqq/yingshi/py9/18av[密].py @@ -0,0 +1,724 @@ +# -*- coding: utf-8 -*- +import sys +import re +import json +import base64 +import threading +import requests +import urllib3 +from http.server import HTTPServer, BaseHTTPRequestHandler +from socketserver import ThreadingMixIn +from urllib.parse import unquote, quote + +urllib3.disable_warnings() +sys.path.append('..') +from base.spider import Spider + +# ===== 纯 Python AES-128 工具 ===== +_sbox = bytes([ + 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76, + 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0,0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0, + 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc,0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15, + 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a,0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75, + 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0,0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84, + 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b,0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf, + 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85,0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8, + 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5,0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2, + 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17,0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73, + 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88,0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb, + 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c,0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79, + 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9,0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08, + 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6,0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a, + 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e,0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e, + 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94,0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf, + 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68,0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16]) + +_inv_sbox = bytes([ + 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38,0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb, + 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87,0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb, + 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d,0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e, + 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2,0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25, + 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16,0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92, + 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda,0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84, + 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a,0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06, + 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02,0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b, + 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea,0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73, + 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85,0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e, + 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89,0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b, + 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20,0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4, + 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31,0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f, + 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d,0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef, + 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0,0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61, + 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26,0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d]) + +_rcon = [0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x1b,0x36] + +def _xtime(a): + return ((a << 1) ^ 0x1b) & 0xff if a & 0x80 else (a << 1) & 0xff + +def _gf_mul(a, b): + r = 0 + for _ in range(8): + if b & 1: r ^= a + a = _xtime(a) + b >>= 1 + return r + +_mul_e = bytes(_gf_mul(0x0e, i) for i in range(256)) +_mul_b = bytes(_gf_mul(0x0b, i) for i in range(256)) +_mul_d = bytes(_gf_mul(0x0d, i) for i in range(256)) +_mul_9 = bytes(_gf_mul(0x09, i) for i in range(256)) + +_key_schedules = {} + +def _key_schedule(key): + k = bytes(key) + if k in _key_schedules: return _key_schedules[k] + w = [] + for i in range(4): + w.append([key[4*i], key[4*i+1], key[4*i+2], key[4*i+3]]) + for i in range(4, 44): + temp = w[i-1][:] + if i % 4 == 0: + temp = temp[1:] + temp[:1] + temp = [_sbox[b] for b in temp] + temp[0] ^= _rcon[i//4 - 1] + w.append([w[i-4][j] ^ temp[j] for j in range(4)]) + _key_schedules[k] = w + return w + +def _dec_block(block, w): + s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15 = block + s0 ^= w[40][0]; s1 ^= w[40][1]; s2 ^= w[40][2]; s3 ^= w[40][3] + s4 ^= w[41][0]; s5 ^= w[41][1]; s6 ^= w[41][2]; s7 ^= w[41][3] + s8 ^= w[42][0]; s9 ^= w[42][1]; s10^= w[42][2]; s11^= w[42][3] + s12^= w[43][0]; s13^= w[43][1]; s14^= w[43][2]; s15^= w[43][3] + box = _inv_sbox + for rnd in range(9, 0, -1): + t0=box[s0]; t1=box[s13]; t2=box[s10]; t3=box[s7] + t4=box[s4]; t5=box[s1]; t6=box[s14]; t7=box[s11] + t8=box[s8]; t9=box[s5]; t10=box[s2]; t11=box[s15] + t12=box[s12]; t13=box[s9]; t14=box[s6]; t15=box[s3] + rk=w[rnd*4]; t0^=rk[0]; t1^=rk[1]; t2^=rk[2]; t3^=rk[3] + rk=w[rnd*4+1]; t4^=rk[0]; t5^=rk[1]; t6^=rk[2]; t7^=rk[3] + rk=w[rnd*4+2]; t8^=rk[0]; t9^=rk[1]; t10^=rk[2]; t11^=rk[3] + rk=w[rnd*4+3]; t12^=rk[0]; t13^=rk[1]; t14^=rk[2]; t15^=rk[3] + s0 =_mul_e[t0]^_mul_b[t1]^_mul_d[t2]^_mul_9[t3] + s1 =_mul_9[t0]^_mul_e[t1]^_mul_b[t2]^_mul_d[t3] + s2 =_mul_d[t0]^_mul_9[t1]^_mul_e[t2]^_mul_b[t3] + s3 =_mul_b[t0]^_mul_d[t1]^_mul_9[t2]^_mul_e[t3] + s4 =_mul_e[t4]^_mul_b[t5]^_mul_d[t6]^_mul_9[t7] + s5 =_mul_9[t4]^_mul_e[t5]^_mul_b[t6]^_mul_d[t7] + s6 =_mul_d[t4]^_mul_9[t5]^_mul_e[t6]^_mul_b[t7] + s7 =_mul_b[t4]^_mul_d[t5]^_mul_9[t6]^_mul_e[t7] + s8 =_mul_e[t8]^_mul_b[t9]^_mul_d[t10]^_mul_9[t11] + s9 =_mul_9[t8]^_mul_e[t9]^_mul_b[t10]^_mul_d[t11] + s10=_mul_d[t8]^_mul_9[t9]^_mul_e[t10]^_mul_b[t11] + s11=_mul_b[t8]^_mul_d[t9]^_mul_9[t10]^_mul_e[t11] + s12=_mul_e[t12]^_mul_b[t13]^_mul_d[t14]^_mul_9[t15] + s13=_mul_9[t12]^_mul_e[t13]^_mul_b[t14]^_mul_d[t15] + s14=_mul_d[t12]^_mul_9[t13]^_mul_e[t14]^_mul_b[t15] + s15=_mul_b[t12]^_mul_d[t13]^_mul_9[t14]^_mul_e[t15] + t0=box[s0]; t1=box[s13]; t2=box[s10]; t3=box[s7] + t4=box[s4]; t5=box[s1]; t6=box[s14]; t7=box[s11] + t8=box[s8]; t9=box[s5]; t10=box[s2]; t11=box[s15] + t12=box[s12]; t13=box[s9]; t14=box[s6]; t15=box[s3] + rk=w[0]; t0^=rk[0]; t1^=rk[1]; t2^=rk[2]; t3^=rk[3] + rk=w[1]; t4^=rk[0]; t5^=rk[1]; t6^=rk[2]; t7^=rk[3] + rk=w[2]; t8^=rk[0]; t9^=rk[1]; t10^=rk[2]; t11^=rk[3] + rk=w[3]; t12^=rk[0]; t13^=rk[1]; t14^=rk[2]; t15^=rk[3] + return bytes([t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15]) + +def _aes_cbc_decrypt(data, key, iv): + if not data or len(data) % 16: return data + n = len(data) // 16 + w = _key_schedule(key) + out = bytearray(len(data)) + prev = iv + for i in range(n): + block = data[i*16:(i+1)*16] + dec = _dec_block(block, w) + for j in range(16): + out[i*16+j] = dec[j] ^ prev[j] + prev = block + pad = out[-1] + if 1 <= pad <= 16: + return bytes(out[:-pad]) + return bytes(out) + + +# ===== 全局代理服务(封面图走代理绕过 SSL) ===== +_proxy_port = 0 +_proxy_started = False +_proxy_session = requests.Session() +_proxy_session.verify = False +_proxy_headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Referer': 'https://mjv011.com/', +} + +class _ThreadedHTTPServer(ThreadingMixIn, HTTPServer): + daemon_threads = True + +class _ProxyHandler(BaseHTTPRequestHandler): + def do_GET(self): + try: + real_url = unquote(self.path[1:]) + if not real_url or not real_url.startswith('http'): + self.send_response(404); self.end_headers(); return + r = _proxy_session.get(real_url, headers=_proxy_headers, timeout=20, verify=False) + ct = r.headers.get('Content-Type', 'image/jpeg') + self.send_response(200) + self.send_header('Content-Type', ct) + self.send_header('Content-Length', len(r.content)) + self.send_header('Access-Control-Allow-Origin', '*') + self.end_headers() + self.wfile.write(r.content) + except BrokenPipeError: + pass + except Exception: + self.send_response(404); self.end_headers() + def log_message(self, format, *args): pass + +def _find_free_port(): + import socket + sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sk.bind(('127.0.0.1', 0)) + port = sk.getsockname()[1] + sk.close() + return port + +def _start_proxy(): + global _proxy_port, _proxy_started + if _proxy_started: return + _proxy_port = _find_free_port() + server = _ThreadedHTTPServer(('127.0.0.1', _proxy_port), _ProxyHandler) + threading.Thread(target=server.serve_forever, daemon=True).start() + _proxy_started = True + + +# ===== 内容类型判断 ===== +def _is_novel(tid_or_vid): + if not tid_or_vid: return False + return tid_or_vid.startswith('novel') + +def _is_image(tid_or_vid): + if not tid_or_vid: return False + return any(tid_or_vid.startswith(p) for p in ['18H', 'doujin', 'cg', 'cwp']) + + +# ===== Spider ===== +class Spider(Spider): + session = requests.Session() + host = 'https://mjv011.com' + headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Language': 'zh-CN,zh;q=0.9', + 'Referer': 'https://mjv011.com/', + } + + def getName(self): return "mjv011" + + def isVideoFormat(self, url): + if not url: return False + return '.m3u8' in url or '.mp4' in url or '.ts' in url + + def manualVideoCheck(self): return False + def destroy(self): pass + + def localProxy(self, param): + return [404, 'text/plain', ''] + + def init(self, extend=""): + self.session.verify = False + _start_proxy() + try: + self.session.get( + f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html', + headers=self.headers, timeout=15, verify=False) + except Exception: + pass + + def _proxy_url(self, url): + if not url: return '' + if url.startswith('http://127.0.0.1'): + return url + return f'http://127.0.0.1:{_proxy_port}/{quote(url, safe="")}' + + def _fetch(self, url): + try: + r = self.session.get(url, headers=self.headers, timeout=20, verify=False) + r.encoding = 'utf-8' + if r.status_code == 200: + text = r.text + # 年龄验证页检测:自动绕过 + if len(text) < 3000 and ('同意(enter)' in text or 'IamOverEighteenYearsOld' in text): + self.session.get( + f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html', + headers=self.headers, timeout=20, verify=False) + r = self.session.get(url, headers=self.headers, timeout=20, verify=False) + r.encoding = 'utf-8' + if r.status_code == 200: + return r.text + return '' + return text + return '' + except Exception: + return '' + + # ===== 列表解析 ===== + def _parse_text_posts(self, text): + """小说列表(无图)""" + items = [] + for m in re.finditer(r"<div class='post'>\s*<div class='con'>\s*<h3[^>]*><a[^>]*href=\"([^\"]+)\"[^>]*>([^<]+)</a></h3>", text): + href, title = m.groups() + mm = re.search(r'/([^/]+)_content/(\d+)/([^/]+)\.html', href) + if not mm: continue + ctype, vid, slug = mm.group(1), mm.group(2), mm.group(3) + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title.strip(), + 'vod_pic': '', + 'vod_remarks': '', + }) + return items + + def _parse_posts(self, text, tid=''): + """根据分类解析列表:小说单独处理,其他统一按带图 post 处理""" + if _is_novel(tid): + return self._parse_text_posts(text) + + items = [] + for m in re.finditer(r"<div class='post'>\s*<a[^>]*href=\"([^\"]+)\"[^>]*><img[^>]*src='([^']+)'[^>]*>\s*</a>\s*<div class='con'>\s*<h3[^>]*><a[^>]*>([^<]+)</a></h3>(?:\s*<div class='meta'>([^<]*)</div>)?", text): + href, pic, title, date = m.groups() + date = date or '' + mm = re.search(r'/([^/]+)_content/(\d+)/([^/]+)\.html', href) + if not mm: continue + ctype, vid, slug = mm.group(1), mm.group(2), mm.group(3) + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title.strip(), + 'vod_pic': self._proxy_url(pic), + 'vod_remarks': date.strip(), + }) + return items + + def _build_cat_url(self, tid, page, extend=None): + if extend and extend.get('sub'): + sub = quote(unquote(extend['sub']), safe='/()') + return f'{self.host}/zh/{sub}/{page}.html' + if tid.startswith('search_'): + kw = tid[7:] + return f'{self.host}/zh/chinese_search/all/{kw}/{page}.html' + # TVBox 可能截断 type_id,自动补全 + if tid.endswith('_random'): + tid = tid + '/all' + elif '/' not in tid: + tid = tid + '_random/all' + if page == 1: + return f'{self.host}/zh/{tid}/index.html' + return f'{self.host}/zh/{tid}/index_{page}.html' + + # ===== 接口 ===== + def homeContent(self, filter): + classes = [ + {'type_id': 'chinese_random/all', 'type_name': '中文字幕'}, + {'type_id': 'censored_random/all', 'type_name': '有码'}, + {'type_id': 'uncensored_random/all', 'type_name': '无码'}, + {'type_id': 'reducing-mosaic_random/all', 'type_name': '无码破解'}, + {'type_id': 'amateurjav_random/all', 'type_name': '素人'}, + {'type_id': 'animation_random/all', 'type_name': 'H动画'}, + {'type_id': 'dt_random/all', 'type_name': '国产自拍'}, + {'type_id': '18H_random/all', 'type_name': '18H漫画'}, + {'type_id': 'cg_random/all', 'type_name': '写真图集'}, + {'type_id': 'cwp_random/all', 'type_name': '国产写真'}, + {'type_id': 'novel_random/all', 'type_name': '小说'}, + ] + + filter = self._build_filters() + return {'class': classes, 'filters': filter, 'type': '影视'} + + def _build_filters(self): + """构造 TVBox filter 格式(网站左侧导航真实子分类)""" + filters = {} + chinese_opts = [ + {'n': '全部', 'v': ''}, + {'n': '随机', 'v': 'chinese_randomall/all'}, + {'n': '类别清单', 'v': 'chinese_categorylist/list'}, + ] + filters['chinese_random/all'] = [{'key': 'sub', 'name': '中文字幕', 'value': chinese_opts}] + uncensored_opts: list[dict[str, str]] = [ + {'n': '全部', 'v': ''}, + {'n': '一本道(1pondo)', 'v': 'uncensored_makersr/32/一本道(1pondo)'}, + {'n': 'カリビアンコム(Caribbeancom)', 'v': 'uncensored_makersr/30/カリビアンコム(Caribbeancom)'}, + {'n': 'カリビアンコムPPV', 'v': 'uncensored_makersr/40/カリビアンコムPPV(Caribbeancompr)'}, + {'n': '天然むすめ(10musume)', 'v': 'uncensored_makersr/31/天然むすめ(10musume)'}, + {'n': 'HEYZO', 'v': 'uncensored_makersr/17/HEYZO'}, + {'n': '東京熱(Tokyo Hot)', 'v': 'uncensored_makersr/29/東京熱(Tokyo Hot)'}, + {'n': 'ガチん娘!(Gachinco)', 'v': 'uncensored_makersr/35/ガチん娘!(Gachinco)'}, + {'n': 'パコパコママ(pacopacomama)', 'v': 'uncensored_makersr/36/パコパコママ(pacopacomama)'}, + {'n': 'エッチな4610', 'v': 'uncensored_makersr/34/エッチな4610'}, + {'n': '人妻斬り0930', 'v': 'uncensored_makersr/38/人妻斬り0930'}, + {'n': 'エッチな0930', 'v': 'uncensored_makersr/39/エッチな0930'}, + {'n': 'トリプルエックス(XXX-AV)', 'v': 'uncensored_makersr/126/トリプルエックス (XXX-AV)'}, + ] + filters['uncensored_random/all'] = [{'key': 'sub', 'name': '厂商', 'value': uncensored_opts}] + + animation_opts = [ + {'n': '全部', 'v': ''}, + {'n': 'H有码动画', 'v': 'CensoredAnimation_random/all'}, + {'n': 'H无码动画', 'v': 'UncensoredAnimation_random/all'}, + {'n': 'H_3D动画', 'v': 'tdAnimation_random/all'}, + ] + filters['animation_random/all'] = [{'key': 'sub', 'name': '动漫', 'value': animation_opts}] + + comic_opts = [ + {'n': '全部', 'v': ''}, + {'n': '短篇同人', 'v': 'doujin_random/all'}, + ] + filters['18H_random/all'] = [{'key': 'sub', 'name': '漫画', 'value': comic_opts}] + + cg_opts = [ + {'n': '全部', 'v': ''}, + {'n': 'Bejean On Line', 'v': 'cg_search/all/Bejean On Line'}, + {'n': 'Bomb.tv', 'v': 'cg_search/all/Bomb.tv'}, + {'n': 'DGC', 'v': 'cg_search/all/DGC'}, + {'n': 'Graphis Gals', 'v': 'cg_search/all/Graphis Gals'}, + {'n': 'Graphis Hatsunugi', 'v': 'cg_search/all/Graphis Hatsunugi'}, + {'n': 'image.tv', 'v': 'cg_search/all/image.tv'}, + {'n': 'Sabra.net', 'v': 'cg_search/all/Sabra.net'}, + {'n': 'S-Cute', 'v': 'cg_search/all/S-Cute'}, + {'n': 'X-City', 'v': 'cg_search/all/X-City'}, + {'n': 'YS Web', 'v': 'cg_search/all/YS Web'}, + ] + filters['cg_random/all'] = [{'key': 'sub', 'name': '系列', 'value': cg_opts}] + + cwp_opts = [ + {'n': '全部', 'v': ''}, + {'n': '3AGirl AAA女郎', 'v': 'cwp_search/all/3AGirl AAA女郎'}, + {'n': 'ROSI寫真', 'v': 'cwp_search/all/ROSI寫真'}, + {'n': 'RU1MM 如壹寫真', 'v': 'cwp_search/all/RU1MM 如壹寫真'}, + {'n': 'DISI第四印象', 'v': 'cwp_search/all/DISI第四印象'}, + ] + filters['cwp_random/all'] = [{'key': 'sub', 'name': '系列', 'value': cwp_opts}] + + novel_opts = [ + {'n': '全部', 'v': ''}, + {'n': '學生校園', 'v': 'novel_search/all/學生校園'}, + {'n': '職場激情', 'v': 'novel_search/all/職場激情'}, + {'n': '經驗故事', 'v': 'novel_search/all/經驗故事'}, + {'n': '暴力虐待', 'v': 'novel_search/all/暴力虐待'}, + {'n': '不倫戀情', 'v': 'novel_search/all/不倫戀情'}, + {'n': '群體換伴', 'v': 'novel_search/all/群體換伴'}, + {'n': '人妻熟女', 'v': 'novel_search/all/人妻熟女'}, + {'n': '科學幻想', 'v': 'novel_search/all/科學幻想'}, + {'n': '其他故事', 'v': 'novel_search/all/其他故事'}, + {'n': '玄幻仙俠', 'v': 'novel_search/all/玄幻仙俠'}, + {'n': '動漫修改', 'v': 'novel_search/all/動漫修改'}, + {'n': '長篇連載', 'v': 'novel_search/all/長篇連載'}, + ] + filters['novel_random/all'] = [{'key': 'sub', 'name': '主题', 'value': novel_opts}] + return filters + + def homeVideoContent(self): + text = self._fetch(f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html') + items = self._parse_posts(text, 'content_news/all') + return {'list': items} + + def categoryContent(self, tid, pg, filter, extend): + try: + return self._categoryContent_inner(tid, pg, filter, extend) + except Exception: + return {'list': [], 'page': int(pg) if pg else 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _categoryContent_inner(self, tid, pg, filter, extend): + if isinstance(extend, str): + try: + extend = json.loads(extend) + except Exception: + extend = {} + if not extend: + extend = {} + page = int(pg) if pg else 1 + # ===== 类别清单(中文字幕的子分类): 文件夹形式(仿 18av) ===== + if extend.get('sub') == 'chinese_categorylist/list': + return self._category_folder(page) + if '@' in str(tid): + return self._folder_detail(tid, page) + url = self._build_cat_url(tid, page, extend) + # 子分类筛选时按子分类内容类型解析 + parse_tid = tid + if parse_tid.endswith('_random'): + parse_tid = parse_tid + '/all' + elif '/' not in parse_tid: + parse_tid = parse_tid + '_random/all' + if extend and extend.get('sub'): + sub = extend['sub'] + if _is_novel(sub): + parse_tid = 'novel_random/all' + elif _is_image(sub): + parse_tid = sub.split('_')[0] + '_random/all' if '_' in sub else 'cg_random/all' + text = self._fetch(url) + items = self._parse_posts(text, parse_tid) + return {'list': items, 'page': page, 'pagecount': page + 1, + 'limit': len(items), 'total': page * len(items) + 1} + + # ===== 类别清单(文件夹形式,仿 18av) ===== + def _category_folder(self, pg): + """类别清单: 抓取子分类索引页,以 folder 形式返回,点文件夹进入视频列表""" + html = self._fetch(f'{self.host}/zh/chinese_categorylist/list/index.html') + lst = [] + for m in re.finditer( + r"<a[^>]+href=[\"']([^\"']*chinese_category/(\d+)/([^\"'/]+)/[^\"']*)[\"'][^>]*>([^<]+)</a>", + html, re.I): + category_url = m.group(1).strip() + category_name = m.group(4).strip() + if category_url.startswith(self.host): + category_url = category_url[len(self.host):] + lst.append({ + 'vod_id': category_url + '@', + 'vod_name': category_name, + 'vod_pic': self.host.rstrip('/') + '/images/1v.jpg', + 'vod_tag': 'folder', + 'vod_remarks': '分类', + }) + return {'list': lst, 'page': 1, 'pagecount': 1, + 'limit': len(lst), 'total': len(lst)} + + def _folder_detail(self, tid, pg): + """@ 文件夹: 去掉 @, 把子分类链接当作真实 URL 拉取视频列表(支持翻页)""" + tid = str(tid).replace('@', '') + url = self.host.rstrip('/') + tid + if re.search(r'/\d+\.html$', url): + url = re.sub(r'/\d+\.html$', '/' + str(pg) + '.html', url) + else: + base = url.rstrip('/') + url = base + ('/index.html' if pg <= 1 else f'/index_{pg}.html') + html = self._fetch(url) + lst = self._parse_posts(html, 'chinese_category') + return {'list': lst, 'page': pg, 'pagecount': 9999, + 'limit': len(lst), 'total': 9999} + + def detailContent(self, ids): + try: + return self._detailContent_inner(ids) + except Exception: + return {'list': []} + + def _detailContent_inner(self, ids): + vid = str(ids[0] if isinstance(ids, list) else ids) + ctype, num, slug = vid.split('#', 2) + if _is_novel(ctype): + return self._novel_detail(vid, ctype, num, slug) + elif _is_image(ctype): + return self._image_detail(vid, ctype, num, slug) + else: + return self._video_detail(vid, ctype, num, slug) + + def _video_detail(self, vid, ctype, num, slug): + """视频详情(有播放器解密)""" + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + + title = '' + m = re.search(r'<h1[^>]*>(.*?)</h1>', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + if not title: + m = re.search(r'<title>([^<]+)', text) + if m: title = m.group(1).strip() + + cover = '' + m = re.search(r'"thumbnailUrl"\s*:\s*"([^"]+)"', text) + if m: cover = m.group(1) + if not cover: + m = re.search(r"]*property=\"og:image\"[^>]*content=\"([^\"]+)\"", text) + if m: cover = m.group(1) + if not cover: + m = re.search(r"
    .*?]*src='([^']+)'", text, re.S) + if m: cover = m.group(1) + + m = re.search(r'hadeedg252=(\d+)', text) + if not m: return {'list': []} + hadeedg252 = int(m.group(1)) + m = re.search(r'hcdeedg252=(\d+)', text) + if not m: return {'list': []} + hcdeedg252 = int(m.group(1)) + m = re.search(r"var argdeqweqweqwe = '([^']+)'", text) + if not m: return {'list': []} + aes_key = m.group(1) + m = re.search(r"var hdddedg252 = '([^']+)'", text) + if not m: return {'list': []} + aes_iv = m.group(1) + + mm = re.search(r"mvarr\['10_1'\]=(\[.*?\]);", text, re.S) + if not mm: return {'list': []} + mvarr_str = mm.group(1) + items = re.findall(r"\['([^']*)','([^']*)','([^']*)','([^']*)','([^']*)','([^']*)'\]", mvarr_str) + if not items: return {'list': []} + + urls = [] + for iframe_id, enc, html, prefix, empty, label in items: + if not enc or not prefix: continue + pid = self._decrypt_id(enc, hadeedg252, hcdeedg252, aes_key, aes_iv) + if not pid: continue + for res, label_name in [('1080', '1080P'), ('720', '720P'), ('480', '480P')]: + urls.append(f'{label_name}${num}|{slug}|{pid}|{res}') + + if not urls: return {'list': []} + + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': self._proxy_url(cover), + 'vod_content': '', + 'vod_remarks': '', + 'vod_play_from': 'mjv011', + 'vod_play_url': '#'.join(urls), + } + return {'list': [vod]} + + def _novel_detail(self, vid, ctype, num, slug): + """小说详情""" + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + + title = '' + m = re.search(r']*>(.*?)

    ', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + + content = '' + m = re.search(r"id=['\"]novel_content_txtsize['\"][^>]*>(.*?)
    ", text, re.S) + if m: + raw = m.group(1) + content = re.sub(r'<[^>]+>', '', raw) + content = re.sub(r' ', ' ', content) + content = re.sub(r'\s+', ' ', content).strip() + if not content: + m = re.search(r"([\s\S]*?)\s*
    ]+>', '', raw) + content = re.sub(r' ', ' ', content) + content = re.sub(r'\s+', ' ', content).strip() + + if len(content) > 3000: + content = content[:3000] + '...' + + novel_json = json.dumps({'title': title, 'content': content}, ensure_ascii=False) + play_url = f'阅读$novel://{novel_json}' + + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': '', + 'vod_content': '', + 'vod_remarks': '', + 'vod_play_from': '小说', + 'vod_play_url': play_url, + 'vod_tag': 'text', + 'vod_player': '书', + } + return {'list': [vod]} + + def _image_detail(self, vid, ctype, num, slug): + """图片详情(写真/漫画)""" + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + + title = '' + m = re.search(r']*>(.*?)

    ', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + + cover = '' + m = re.search(r'"thumbnailUrl"\s*:\s*"([^"]+)"', text) + if m: cover = m.group(1) + + # 提取详情页所有大图(第一页已包含全部) + all_imgs = re.findall(r"src=['\"]([^'\"]*eemmhh02\.com/[^'\"]+\.(?:jpg|png|webp))['\"]", text, re.I) + big_imgs = [] + seen = set() + for img in all_imgs: + if img in seen: + continue + seen.add(img) + big_imgs.append(self._proxy_url(img)) + + if not big_imgs: + return {'list': []} + + pics = '&&'.join(big_imgs) + play_url = f'查看$pics://{pics}' + + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': self._proxy_url(cover), + 'vod_content': f'共 {len(big_imgs)} 张图片', + 'vod_remarks': str(len(big_imgs)) + 'P', + 'vod_play_from': '图片', + 'vod_play_url': play_url, + 'vod_tag': 'image', + 'vod_player': '画', + } + return {'list': [vod]} + + def _decrypt_id(self, enc, xor_key, base, aes_key, aes_iv): + try: + sep = chr(base + 97) + parts = enc.split(sep) + s1 = ''.join(chr(int(p, base) ^ xor_key) for p in parts if p) + data = base64.b64decode(s1) + plain = _aes_cbc_decrypt(data, aes_key.encode(), aes_iv.encode()) + return plain.decode('utf-8') + except Exception: + return '' + + def searchContent(self, key, quick, pg="1"): + try: + return self._searchContent_inner(key, quick, pg) + except Exception: + return {'list': [], 'page': int(pg) if pg else 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _searchContent_inner(self, key, quick, pg="1"): + page = int(pg) if pg else 1 + return self._categoryContent_inner(f'search_{key}', page, False, {}) + + def playerContent(self, flag, id, vipFlags=None): + try: + return self._playerContent_inner(flag, id, vipFlags) + except Exception: + return {'parse': 0, 'url': '', 'header': {}, 'position': '0'} + + def _playerContent_inner(self, flag, id, vipFlags=None): + # 小说 + if id.startswith('novel://'): + return {'parse': 0, 'url': id, 'header': '', 'vod_player': '书'} + # 图片 + if id.startswith('pics://'): + return {'parse': 0, 'playUrl': '', 'url': id, 'header': self.headers} + # 视频播放 + num, slug, pid, res = id.split('|', 3) + url = f'{self.host}/js/player/play.php?numresolution={res}&lo=on&id={pid}' + text = self._fetch(url) + m3u8 = '' + if text: + mm = re.search(r'videoSources\s*=\s*(\[.*?\]);', text, re.S) + if mm: + arr = mm.group(1) + sources = re.findall(r"src:\s*'([^']+)'[^}]*?size:\s*(\d+)", arr, re.S) + if sources: + target = int(res) if str(res).isdigit() else 0 + for u, s in sources: + if int(s) == target: + m3u8 = u + break + if not m3u8: + m3u8 = sources[0][0] + if not m3u8: + mm = re.search(r'https?://[^\s"<>\']+?\.m3u8', text) + if mm: m3u8 = mm.group(0) + return {'parse': 0, 'url': m3u8, 'header': {'Referer': self.host + '/'}, 'position': '0'} \ No newline at end of file diff --git a/jaychouqq/yingshi/py9/58影视.py b/jaychouqq/yingshi/py9/58影视.py new file mode 100644 index 00000000..6d39fbf3 --- /dev/null +++ b/jaychouqq/yingshi/py9/58影视.py @@ -0,0 +1,385 @@ +# -*- coding: utf-8 -*- +import sys +import re +import json +from urllib.parse import urljoin, quote, unquote, urlparse +from concurrent.futures import ThreadPoolExecutor, as_completed + +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + import requests as rq + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +HOST = "https://www.58hu.com" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 封面URL中这些域名已失效,对应影片会被过滤掉 +DEAD_IMG_HOSTS = {"image.caiji.cyou", "wim.xrc888.com"} + +CATEGORIES = { + "1": "电影", "2": "电视剧", "3": "综艺", + "4": "动漫", "21": "体育", +} + +# 子分类: {父分类ID: {子分类ID: 名称}} +SUB_CATS = { + "1": {"6": "动作片", "7": "喜剧片", "8": "爱情片", "9": "科幻片", "10": "恐怖片", + "11": "剧情片", "12": "战争片", "22": "纪录片"}, + "2": {"13": "国产剧", "14": "港台剧", "15": "日韩剧", "16": "欧美剧", "24": "海外剧", + "29": "BI番剧", "30": "BI国创", "31": "BI电影"}, + "3": {"28": "最新综艺"}, + "4": {"27": "最新动漫"}, + "21": {"26": "体育赛事"}, +} + +class Spider(Spider): + def init(self, extend=""): + global HOST + try: + r = self.fetch(HOST, headers={"User-Agent": UA}, timeout=15000) + if hasattr(r, 'url') and r.url and r.url != HOST.rstrip("/"): + HOST = r.url.rstrip("/") + except: + pass + + def homeContent(self, filter=False): + r = {"class": [], "list": []} + for k, v in CATEGORIES.items(): + r["class"].append({"type_id": k, "type_name": v}) + return r + + def homeVideoContent(self): + try: + r = self.fetch(HOST, headers={"User-Agent": UA}, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + return {"list": self._items(html)} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=""): + pn = 1 + try: pn = max(int(str(pg)), 1) + except: pass + cat = str(tid) + try: + url = self._build_category_url(cat, pn, extend) + r = self.fetch(url, headers={"User-Agent": UA}, timeout=30000) + html = r.text if hasattr(r, 'text') else str(r) + cat_name = CATEGORIES.get(cat, "") + items = self._items(html, cat_filter=cat_name) + # 过滤掉没有封面或没有可播放线路的影片(并发检查) + items = self._filter_items(items) + pc = self._pagecount(html, pn) + return {"page": pn, "pagecount": pc, "limit": 30, "total": len(items), "list": items} + except: + return {"page": pn, "pagecount": 1, "limit": 30, "total": 0, "list": []} + + def _build_category_url(self, cat, pn, extend=""): + """构建分类URL,支持筛选参数""" + # 解析extend中的筛选条件 + ext = {} + if extend and isinstance(extend, str) and extend.strip(): + try: + ext = json.loads(extend) + except: + pass + + # 判断是否为子分类(在SUB_CATS中) + is_sub = False + for parent, subs in SUB_CATS.items(): + if cat in subs: + is_sub = True + break + + # 所有分类用 vod/show 模式 + parts = [] + # class/类型 + cls = ext.get("class") or "" + if cls and cls != "全部": + parts.append(f"class/{quote(cls)}") + # area/地区 + area = ext.get("area") or "" + if area and area != "全部": + parts.append(f"area/{quote(area)}") + # year/年代 + year = ext.get("year") or "" + if year and year != "全部": + parts.append(f"year/{quote(year)}") + # letter/字母 + letter = ext.get("letter") or "" + if letter and letter != "全部": + parts.append(f"letter/{quote(letter)}") + # sort/排序 + sort = ext.get("sort") or "" + if sort: + parts.append(f"by/{quote(sort)}") + # page + if pn > 1: + parts.append(f"page/{pn}") + filters = "/".join(parts) + if filters: + return f"{HOST}/index.php/vod/show/{filters}/id/{cat}.html" + else: + return f"{HOST}/index.php/vod/show/id/{cat}.html" + + def detailContent(self, ids): + if isinstance(ids, list): + vid = ids[0] if ids else "" + else: + vid = str(ids) if ids else "" + m = re.search(r'(\d+)', str(vid)) + vid = m.group(1) if m else "" + if not vid: + return {"list": []} + try: + r = self.fetch(f"{HOST}/index.php/vod/detail/id/{vid}.html", headers={"User-Agent": UA}, timeout=30000) + h = r.text if hasattr(r, 'text') else str(r) + except: + return {"list": []} + d = {"vod_id": vid, "vod_name": "", "vod_pic": "", "vod_year": "", + "vod_area": "", "vod_class": "", "vod_director": "", "vod_actor": "", + "vod_content": "", "vod_remarks": "", "vod_play_from": "", "vod_play_url": ""} + # 标题 + tn = re.search(r']*>(.*?)

    ', h) + if tn: + d["vod_name"] = re.sub(r'<[^>]+>', '', tn.group(1)).strip() + if not d["vod_name"]: + tn = re.search(r'(.*?)', h) + if tn: + d["vod_name"] = tn.group(1).split("-")[0].strip() + # 封面: 优先 class="pic-img video-pic" 里的img + p = re.search(r'class="pic-img video-pic"[\s\S]{0,100}?]*src="(https?://[^"]+)"', h, re.I) + if not p: + p = re.search(r'data-src="(https?://[^"]+)"', h) + if not p: + p = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', h, re.I) + if p: + pic_url = p.group(1) + if pic_url.startswith("http://"): + pic_url = pic_url.replace("http://", "https://", 1) + d["vod_pic"] = pic_url + # 简介 + desc_m = re.search(r'简介[\s\S]{0,30}?>([\s\S]*?)
    ', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + if not d["vod_content"]: + desc_m = re.search(r'class="[^"]*desc[^"]*"[^>]*>([\s\S]*?)
    ', h) + if desc_m: + d["vod_content"] = re.sub(r'\s+', ' ', re.sub(r'<[^>]+>', '', desc_m.group(1))).strip()[:500] + # 年份 + ym = re.search(r'(\d{4})', d.get("vod_name", "")) + if ym: d["vod_year"] = ym.group(1) + # 地区/分类/导演/主演等 + info_items = re.findall(r']*class="[^"]*data[^"]*"[^>]*>([\s\S]*?)', h) + for item in info_items: + clean = re.sub(r'<[^>]+>', '', item).strip() + if '导演' in item and not d["vod_director"]: + d["vod_director"] = clean.replace('导演', '').strip().rstrip(',').strip() + elif '主演' in item and not d["vod_actor"]: + d["vod_actor"] = clean.replace('主演', '').strip().rstrip(',').strip() + elif '类型' in item and not d["vod_class"]: + d["vod_class"] = clean.replace('类型', '').strip() + elif '地区' in item and not d["vod_area"]: + d["vod_area"] = clean.replace('地区', '').strip() + # 备注 + rm = re.search(r'class="[^"]*remarks?[^"]*"[^>]*>([^<]+)<', h) + if rm: d["vod_remarks"] = rm.group(1).strip() + # 播放源(只保留m3u8直链线路) + try: + pf, pu = [], [] + line_map = {} + for sid, name in re.findall(r'id="#con_playlist_(\d+)"[^>]*class="gico[^"]*"[^>]*>([^<]+)', h): + line_map[sid] = name.strip() + for m in re.finditer(r']*id="con_playlist_(\d+)"[^>]*>([\s\S]*?)', h): + sid = m.group(1) + content = m.group(2) + eps = re.findall(r'href="(/index\.php/vod/play/id/\d+/sid/\d+/nid/\d+\.html)"[^>]*>([\s\S]*?)', content) + if not eps: + continue + line_name = line_map.get(sid, f"线路{sid}") + # 预检第1集:只保留返回m3u8直链的线路 + first_url = urljoin(HOST, eps[0][0]) + try: + rp = self.fetch(first_url, headers={"User-Agent": UA}, timeout=10000) + hp = rp.text if hasattr(rp, 'text') else str(rp) + pd = re.search(r'player_data\s*=\s*(\{[\s\S]*?\})\s*[;<]', hp) + if not pd: + continue + pdata = json.loads(pd.group(1)) + purl = pdata.get("url", "") + if not purl or not purl.startswith("http") or ".m3u8" not in purl: + continue + except: + continue + ep_list = [] + for url, name in eps: + clean_name = re.sub(r'<[^>]+>', '', name).strip() + ep_list.append(f"{clean_name}${urljoin(HOST, url)}") + if ep_list: + pf.append(line_name) + pu.append("#".join(ep_list)) + if pf: + d["vod_play_from"] = "$$$".join(pf) + d["vod_play_url"] = "$$$".join(pu) + except: + pass + return {"list": [d]} + + def searchContent(self, key, quick=False, pg="1"): + try: + pn = 1 + try: pn = int(str(pg)) + except: pass + url = f"{HOST}/index.php/vod/search/wd/{quote(key)}" + if pn > 1: + url += f"/page/{pn}" + url += ".html" + r = self.fetch(url, headers={"User-Agent": UA}, timeout=30000) + html = r.text if hasattr(r, 'text') else str(r) + items = self._items(html) + return {"list": items, "page": pn} + except: + return {"list": []} + + def playerContent(self, flag, id, vipFlags=None): + url = str(id) if id else str(flag) + if url.startswith("http") and ".m3u8" in url: + return {"url": url} + if url.startswith("http"): + full_url = url + else: + if not url.startswith("/"): + url = "/" + url + full_url = urljoin(HOST, url) + try: + r = self.fetch(full_url, headers={"User-Agent": UA}, timeout=30000) + h = r.text if hasattr(r, 'text') else str(r) + except: + return {"url": ""} + pd = re.search(r'player_data\s*=\s*(\{[\s\S]*?\})\s*[;<]', h) + if pd: + try: + data = json.loads(pd.group(1)) + play_url = data.get("url", "") + if play_url: + return {"url": play_url} + except: + pass + m3u8 = re.search(r'(https?://[^\s"\'<>]+\.m3u8)', h) + if m3u8: + return {"url": m3u8.group(1)} + return {"url": ""} + + def localProxy(self, param): + pass + + def _filter_items(self, items): + """过滤:去掉没封面的 + 并发检查线路,去掉没有LZ/YZ的""" + if not items: + return items + # 先去掉没封面的 + items = [it for it in items if it.get("vod_pic")] + if not items: + return items + # 并发检查每个影片是否有LZ/YZ线路 + playable_ids = set() + def check(it): + return it["vod_id"], self._check_playable(it["vod_id"]) + with ThreadPoolExecutor(max_workers=10) as executor: + futures = {executor.submit(check, it): it for it in items} + for future in as_completed(futures): + try: + vid, ok = future.result() + if ok: + playable_ids.add(vid) + except: + pass + return [it for it in items if it["vod_id"] in playable_ids] + + def _check_playable(self, vid): + """检查详情页是否有LZ或YZ线路名""" + try: + r = self.fetch(f"{HOST}/index.php/vod/detail/id/{vid}.html", headers={"User-Agent": UA}, timeout=5000) + h = r.text if hasattr(r, 'text') else str(r) + lines = re.findall(r'id="#con_playlist_\d+"[^>]*class="gico[^"]*"[^>]*>([^<]+)', h) + for name in lines: + if "LZ" in name or "YZ" in name: + return True + return False + except: + return False + + def _pagecount(self, html, current_page=1): + # 匹配分页链接: /index.php/vod/show/.../page/2/... + pages = re.findall(r'/page/(\d+)/', html) + max_page = current_page + for p in pages: + try: + n = int(p) + if n > max_page: + max_page = n + except: + pass + # 如果当前页是最大且还有下一页 + has_next = re.search(r'>下一页<', html) + if has_next and max_page <= current_page + 5: + max_page = current_page + 5 + return max_page + + def _items(self, html, cat_filter=""): + items, seen = [], set() + # 分类过滤关键词映射 + ANIME_KEYWORDS = {'动漫', '动画', '卡通', '番剧', '番'} + TV_KEYWORDS = {'电视剧', '国产剧', '港台剧', '日韩剧', '欧美剧', '海外剧'} + MOVIE_KEYWORDS = {'电影', '动作片', '喜剧片', '爱情片', '科幻片', '恐怖片', '剧情片', '战争片', '纪录片'} + for m in re.finditer(r'href="(/index\.php/vod/detail/id/(\d+)\.html)"[^>]*title="([^"]*)"', html): + vid = m.group(2) + if vid in seen: + continue + name = m.group(3).strip() + if not name or len(name) > 100: + continue + after = html[m.end():m.end()+2000] + # 封面: 优先 data-original,再 data-src,再 src。HTTP升级为HTTPS + cover = re.search(r'data-original="(https?://[^"]+)"', after) + if not cover: + cover = re.search(r'data-src="(https?://[^"]+)"', after) + if not cover: + cover = re.search(r'src="(https?://[^"]+\.(?:jpg|jpeg|png|webp))"', after, re.I) + pic_url = cover.group(1) if cover else "" + if pic_url.startswith("http://"): + pic_url = pic_url.replace("http://", "https://", 1) + # 过滤失效图床域名 + if pic_url: + host = urlparse(pic_url).hostname or "" + if host in DEAD_IMG_HOSTS: + pic_url = "" + # 备注 + remark = re.search(r'class="titles"[^>]*>([^<]+)<', after) + if not remark: + remark = re.search(r'class="[^"]*prb[^"]*"[^>]*>([^<]+)<', after) + # 分类过滤: 从 mcat 提取分类标签(注意span内可能有换行) + mcat_raw = re.search(r'class="mcat">([\s\S]*?)
    ', after) + if mcat_raw and cat_filter: + mcat_text = re.sub(r'<[^>]+>', '', mcat_raw.group(1)).strip() + if cat_filter == "电视剧": + if any(k in mcat_text for k in ANIME_KEYWORDS): + continue + elif cat_filter == "动漫": + if any(k in mcat_text for k in TV_KEYWORDS): + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": name[:50], + "vod_pic": pic_url, + "vod_remarks": remark.group(1).strip() if remark else "", + }) + return items diff --git a/jaychouqq/yingshi/py9/mjv011四百个个分类.py b/jaychouqq/yingshi/py9/mjv011四百个个分类.py new file mode 100644 index 00000000..157bfda9 --- /dev/null +++ b/jaychouqq/yingshi/py9/mjv011四百个个分类.py @@ -0,0 +1,1196 @@ +# -*- coding: utf-8 -*- +import sys +import re +import json +import base64 +import threading +import requests +import urllib3 +from datetime import datetime +from http.server import HTTPServer, BaseHTTPRequestHandler +from socketserver import ThreadingMixIn +from urllib.parse import unquote, quote + +urllib3.disable_warnings() +sys.path.append('..') +from base.spider import Spider + +# ===== 纯 Python AES-128 工具(保留原有) ===== +_sbox = bytes([ + 0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,0x01,0x67,0x2b,0xfe,0xd7,0xab,0x76, + 0xca,0x82,0xc9,0x7d,0xfa,0x59,0x47,0xf0,0xad,0xd4,0xa2,0xaf,0x9c,0xa4,0x72,0xc0, + 0xb7,0xfd,0x93,0x26,0x36,0x3f,0xf7,0xcc,0x34,0xa5,0xe5,0xf1,0x71,0xd8,0x31,0x15, + 0x04,0xc7,0x23,0xc3,0x18,0x96,0x05,0x9a,0x07,0x12,0x80,0xe2,0xeb,0x27,0xb2,0x75, + 0x09,0x83,0x2c,0x1a,0x1b,0x6e,0x5a,0xa0,0x52,0x3b,0xd6,0xb3,0x29,0xe3,0x2f,0x84, + 0x53,0xd1,0x00,0xed,0x20,0xfc,0xb1,0x5b,0x6a,0xcb,0xbe,0x39,0x4a,0x4c,0x58,0xcf, + 0xd0,0xef,0xaa,0xfb,0x43,0x4d,0x33,0x85,0x45,0xf9,0x02,0x7f,0x50,0x3c,0x9f,0xa8, + 0x51,0xa3,0x40,0x8f,0x92,0x9d,0x38,0xf5,0xbc,0xb6,0xda,0x21,0x10,0xff,0xf3,0xd2, + 0xcd,0x0c,0x13,0xec,0x5f,0x97,0x44,0x17,0xc4,0xa7,0x7e,0x3d,0x64,0x5d,0x19,0x73, + 0x60,0x81,0x4f,0xdc,0x22,0x2a,0x90,0x88,0x46,0xee,0xb8,0x14,0xde,0x5e,0x0b,0xdb, + 0xe0,0x32,0x3a,0x0a,0x49,0x06,0x24,0x5c,0xc2,0xd3,0xac,0x62,0x91,0x95,0xe4,0x79, + 0xe7,0xc8,0x37,0x6d,0x8d,0xd5,0x4e,0xa9,0x6c,0x56,0xf4,0xea,0x65,0x7a,0xae,0x08, + 0xba,0x78,0x25,0x2e,0x1c,0xa6,0xb4,0xc6,0xe8,0xdd,0x74,0x1f,0x4b,0xbd,0x8b,0x8a, + 0x70,0x3e,0xb5,0x66,0x48,0x03,0xf6,0x0e,0x61,0x35,0x57,0xb9,0x86,0xc1,0x1d,0x9e, + 0xe1,0xf8,0x98,0x11,0x69,0xd9,0x8e,0x94,0x9b,0x1e,0x87,0xe9,0xce,0x55,0x28,0xdf, + 0x8c,0xa1,0x89,0x0d,0xbf,0xe6,0x42,0x68,0x41,0x99,0x2d,0x0f,0xb0,0x54,0xbb,0x16]) +_inv_sbox = bytes([ + 0x52,0x09,0x6a,0xd5,0x30,0x36,0xa5,0x38,0xbf,0x40,0xa3,0x9e,0x81,0xf3,0xd7,0xfb, + 0x7c,0xe3,0x39,0x82,0x9b,0x2f,0xff,0x87,0x34,0x8e,0x43,0x44,0xc4,0xde,0xe9,0xcb, + 0x54,0x7b,0x94,0x32,0xa6,0xc2,0x23,0x3d,0xee,0x4c,0x95,0x0b,0x42,0xfa,0xc3,0x4e, + 0x08,0x2e,0xa1,0x66,0x28,0xd9,0x24,0xb2,0x76,0x5b,0xa2,0x49,0x6d,0x8b,0xd1,0x25, + 0x72,0xf8,0xf6,0x64,0x86,0x68,0x98,0x16,0xd4,0xa4,0x5c,0xcc,0x5d,0x65,0xb6,0x92, + 0x6c,0x70,0x48,0x50,0xfd,0xed,0xb9,0xda,0x5e,0x15,0x46,0x57,0xa7,0x8d,0x9d,0x84, + 0x90,0xd8,0xab,0x00,0x8c,0xbc,0xd3,0x0a,0xf7,0xe4,0x58,0x05,0xb8,0xb3,0x45,0x06, + 0xd0,0x2c,0x1e,0x8f,0xca,0x3f,0x0f,0x02,0xc1,0xaf,0xbd,0x03,0x01,0x13,0x8a,0x6b, + 0x3a,0x91,0x11,0x41,0x4f,0x67,0xdc,0xea,0x97,0xf2,0xcf,0xce,0xf0,0xb4,0xe6,0x73, + 0x96,0xac,0x74,0x22,0xe7,0xad,0x35,0x85,0xe2,0xf9,0x37,0xe8,0x1c,0x75,0xdf,0x6e, + 0x47,0xf1,0x1a,0x71,0x1d,0x29,0xc5,0x89,0x6f,0xb7,0x62,0x0e,0xaa,0x18,0xbe,0x1b, + 0xfc,0x56,0x3e,0x4b,0xc6,0xd2,0x79,0x20,0x9a,0xdb,0xc0,0xfe,0x78,0xcd,0x5a,0xf4, + 0x1f,0xdd,0xa8,0x33,0x88,0x07,0xc7,0x31,0xb1,0x12,0x10,0x59,0x27,0x80,0xec,0x5f, + 0x60,0x51,0x7f,0xa9,0x19,0xb5,0x4a,0x0d,0x2d,0xe5,0x7a,0x9f,0x93,0xc9,0x9c,0xef, + 0xa0,0xe0,0x3b,0x4d,0xae,0x2a,0xf5,0xb0,0xc8,0xeb,0xbb,0x3c,0x83,0x53,0x99,0x61, + 0x17,0x2b,0x04,0x7e,0xba,0x77,0xd6,0x26,0xe1,0x69,0x14,0x63,0x55,0x21,0x0c,0x7d]) +_rcon = [0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x1b,0x36] +def _xtime(a): + return ((a << 1) ^ 0x1b) & 0xff if a & 0x80 else (a << 1) & 0xff +def _gf_mul(a, b): + r = 0 + for _ in range(8): + if b & 1: r ^= a + a = _xtime(a) + b >>= 1 + return r +_mul_e = bytes(_gf_mul(0x0e, i) for i in range(256)) +_mul_b = bytes(_gf_mul(0x0b, i) for i in range(256)) +_mul_d = bytes(_gf_mul(0x0d, i) for i in range(256)) +_mul_9 = bytes(_gf_mul(0x09, i) for i in range(256)) +_key_schedules = {} +def _key_schedule(key): + k = bytes(key) + if k in _key_schedules: return _key_schedules[k] + w = [] + for i in range(4): + w.append([key[4*i], key[4*i+1], key[4*i+2], key[4*i+3]]) + for i in range(4, 44): + temp = w[i-1][:] + if i % 4 == 0: + temp = temp[1:] + temp[:1] + temp = [_sbox[b] for b in temp] + temp[0] ^= _rcon[i//4 - 1] + w.append([w[i-4][j] ^ temp[j] for j in range(4)]) + _key_schedules[k] = w + return w +def _dec_block(block, w): + s0,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15 = block + s0 ^= w[40][0]; s1 ^= w[40][1]; s2 ^= w[40][2]; s3 ^= w[40][3] + s4 ^= w[41][0]; s5 ^= w[41][1]; s6 ^= w[41][2]; s7 ^= w[41][3] + s8 ^= w[42][0]; s9 ^= w[42][1]; s10^= w[42][2]; s11^= w[42][3] + s12^= w[43][0]; s13^= w[43][1]; s14^= w[43][2]; s15^= w[43][3] + box = _inv_sbox + for rnd in range(9, 0, -1): + t0=box[s0]; t1=box[s13]; t2=box[s10]; t3=box[s7] + t4=box[s4]; t5=box[s1]; t6=box[s14]; t7=box[s11] + t8=box[s8]; t9=box[s5]; t10=box[s2]; t11=box[s15] + t12=box[s12]; t13=box[s9]; t14=box[s6]; t15=box[s3] + rk=w[rnd*4]; t0^=rk[0]; t1^=rk[1]; t2^=rk[2]; t3^=rk[3] + rk=w[rnd*4+1]; t4^=rk[0]; t5^=rk[1]; t6^=rk[2]; t7^=rk[3] + rk=w[rnd*4+2]; t8^=rk[0]; t9^=rk[1]; t10^=rk[2]; t11^=rk[3] + rk=w[rnd*4+3]; t12^=rk[0]; t13^=rk[1]; t14^=rk[2]; t15^=rk[3] + s0 =_mul_e[t0]^_mul_b[t1]^_mul_d[t2]^_mul_9[t3] + s1 =_mul_9[t0]^_mul_e[t1]^_mul_b[t2]^_mul_d[t3] + s2 =_mul_d[t0]^_mul_9[t1]^_mul_e[t2]^_mul_b[t3] + s3 =_mul_b[t0]^_mul_d[t1]^_mul_9[t2]^_mul_e[t3] + s4 =_mul_e[t4]^_mul_b[t5]^_mul_d[t6]^_mul_9[t7] + s5 =_mul_9[t4]^_mul_e[t5]^_mul_b[t6]^_mul_d[t7] + s6 =_mul_d[t4]^_mul_9[t5]^_mul_e[t6]^_mul_b[t7] + s7 =_mul_b[t4]^_mul_d[t5]^_mul_9[t6]^_mul_e[t7] + s8 =_mul_e[t8]^_mul_b[t9]^_mul_d[t10]^_mul_9[t11] + s9 =_mul_9[t8]^_mul_e[t9]^_mul_b[t10]^_mul_d[t11] + s10=_mul_d[t8]^_mul_9[t9]^_mul_e[t10]^_mul_b[t11] + s11=_mul_b[t8]^_mul_d[t9]^_mul_9[t10]^_mul_e[t11] + s12=_mul_e[t12]^_mul_b[t13]^_mul_d[t14]^_mul_9[t15] + s13=_mul_9[t12]^_mul_e[t13]^_mul_b[t14]^_mul_d[t15] + s14=_mul_d[t12]^_mul_9[t13]^_mul_e[t14]^_mul_b[t15] + s15=_mul_b[t12]^_mul_d[t13]^_mul_9[t14]^_mul_e[t15] + t0=box[s0]; t1=box[s13]; t2=box[s10]; t3=box[s7] + t4=box[s4]; t5=box[s1]; t6=box[s14]; t7=box[s11] + t8=box[s8]; t9=box[s5]; t10=box[s2]; t11=box[s15] + t12=box[s12]; t13=box[s9]; t14=box[s6]; t15=box[s3] + rk=w[0]; t0^=rk[0]; t1^=rk[1]; t2^=rk[2]; t3^=rk[3] + rk=w[1]; t4^=rk[0]; t5^=rk[1]; t6^=rk[2]; t7^=rk[3] + rk=w[2]; t8^=rk[0]; t9^=rk[1]; t10^=rk[2]; t11^=rk[3] + rk=w[3]; t12^=rk[0]; t13^=rk[1]; t14^=rk[2]; t15^=rk[3] + return bytes([t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15]) +def _aes_cbc_decrypt(data, key, iv): + if not data or len(data) % 16: return data + n = len(data) // 16 + w = _key_schedule(key) + out = bytearray(len(data)) + prev = iv + for i in range(n): + block = data[i*16:(i+1)*16] + dec = _dec_block(block, w) + for j in range(16): + out[i*16+j] = dec[j] ^ prev[j] + prev = block + pad = out[-1] + if 1 <= pad <= 16: + return bytes(out[:-pad]) + return bytes(out) + +# ===== 全局代理服务(封面图走代理绕过 SSL) ===== +_proxy_port = 0 +_proxy_started = False +_proxy_session = requests.Session() +_proxy_session.verify = False +_proxy_headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Referer': 'https://mjv011.com/', +} +class _ThreadedHTTPServer(ThreadingMixIn, HTTPServer): + daemon_threads = True +class _ProxyHandler(BaseHTTPRequestHandler): + def do_GET(self): + try: + real_url = unquote(self.path[1:]) + if not real_url or not real_url.startswith('http'): + self.send_response(404); self.end_headers(); return + r = _proxy_session.get(real_url, headers=_proxy_headers, timeout=20, verify=False) + ct = r.headers.get('Content-Type', 'image/jpeg') + self.send_response(200) + self.send_header('Content-Type', ct) + self.send_header('Content-Length', len(r.content)) + self.send_header('Access-Control-Allow-Origin', '*') + self.end_headers() + self.wfile.write(r.content) + except BrokenPipeError: + pass + except Exception: + self.send_response(404); self.end_headers() + def log_message(self, format, *args): pass +def _find_free_port(): + import socket + sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sk.bind(('127.0.0.1', 0)) + port = sk.getsockname()[1] + sk.close() + return port +def _start_proxy(): + global _proxy_port, _proxy_started + if _proxy_started: return + _proxy_port = _find_free_port() + server = _ThreadedHTTPServer(('127.0.0.1', _proxy_port), _ProxyHandler) + threading.Thread(target=server.serve_forever, daemon=True).start() + _proxy_started = True + +# ===== 内容类型判断 ===== +def _is_novel(tid_or_vid): + if not tid_or_vid: return False + return tid_or_vid.startswith('novel') +def _is_image(tid_or_vid): + if not tid_or_vid: return False + return any(tid_or_vid.startswith(p) for p in ['18H', 'doujin', 'cg', 'cwp']) + +# ===== 静态中文类别清单(硬编码) ===== +_CHINESE_CATEGORIES = [ + {'n': '企畫', 'v': 'chinese_category/1/企畫'}, + {'n': '女同性戀', 'v': 'chinese_category/2/女同性戀'}, + {'n': '獵豔、搭訕', 'v': 'chinese_category/3/獵豔、搭訕'}, + {'n': '野外・露出', 'v': 'chinese_category/4/野外・露出'}, + {'n': '偶像藝人', 'v': 'chinese_category/5/偶像藝人'}, + {'n': '其他戀物癖', 'v': 'chinese_category/6/其他戀物癖'}, + {'n': '近親相姦', 'v': 'chinese_category/7/近親相姦'}, + {'n': '巨乳癖', 'v': 'chinese_category/8/巨乳癖'}, + {'n': '情侶', 'v': 'chinese_category/9/情侶'}, + {'n': '男同性恋', 'v': 'chinese_category/10/男同性恋'}, + {'n': '花癡', 'v': 'chinese_category/11/花癡'}, + {'n': '偷窥', 'v': 'chinese_category/12/偷窥'}, + {'n': '戀腿癖', 'v': 'chinese_category/13/戀腿癖'}, + {'n': '其他', 'v': 'chinese_category/14/其他'}, + {'n': '癡漢', 'v': 'chinese_category/15/癡漢'}, + {'n': '倒追', 'v': 'chinese_category/16/倒追'}, + {'n': '奴隷', 'v': 'chinese_category/17/奴隷'}, + {'n': '跳舞', 'v': 'chinese_category/18/跳舞'}, + {'n': '雙性人', 'v': 'chinese_category/19/雙性人'}, + {'n': '姐妹', 'v': 'chinese_category/20/姐妹'}, + {'n': '通姦', 'v': 'chinese_category/21/通姦'}, + {'n': '鬼畜', 'v': 'chinese_category/22/鬼畜'}, + {'n': '學校作品', 'v': 'chinese_category/23/學校作品'}, + {'n': '惡作劇', 'v': 'chinese_category/24/惡作劇'}, + {'n': '妄想', 'v': 'chinese_category/25/妄想'}, + {'n': '殘忍畫面', 'v': 'chinese_category/26/殘忍畫面'}, + {'n': '爛醉如泥的', 'v': 'chinese_category/27/爛醉如泥的'}, + {'n': '處女', 'v': 'chinese_category/28/處女'}, + {'n': '美容院', 'v': 'chinese_category/29/美容院'}, + {'n': '性感的', 'v': 'chinese_category/30/性感的'}, + {'n': '女同接吻', 'v': 'chinese_category/31/女同接吻'}, + {'n': '運動', 'v': 'chinese_category/32/運動'}, + {'n': '瘙癢', 'v': 'chinese_category/33/瘙癢'}, + {'n': '出軌', 'v': 'chinese_category/34/出軌'}, + {'n': '正太控', 'v': 'chinese_category/35/正太控'}, + {'n': '處男', 'v': 'chinese_category/36/處男'}, + {'n': '蠻橫嬌羞', 'v': 'chinese_category/37/蠻橫嬌羞'}, + {'n': '觸手', 'v': 'chinese_category/38/觸手'}, + {'n': '嘔吐', 'v': 'chinese_category/39/嘔吐'}, + {'n': '拷問', 'v': 'chinese_category/40/拷問'}, + {'n': '10枚組', 'v': 'chinese_category/41/10枚組'}, + {'n': '女優合集', 'v': 'chinese_category/42/女優合集'}, + {'n': '温泉', 'v': 'chinese_category/43/温泉'}, + {'n': 'M男', 'v': 'chinese_category/44/M男'}, + {'n': '原作コラボ', 'v': 'chinese_category/45/原作コラボ'}, + {'n': '16時間以上作品', 'v': 'chinese_category/46/16時間以上作品'}, + {'n': 'デカチン・巨根', 'v': 'chinese_category/47/デカチン・巨根'}, + {'n': 'ファン感謝・訪問', 'v': 'chinese_category/48/ファン感謝・訪問'}, + {'n': '動画', 'v': 'chinese_category/49/動画'}, + {'n': '巨尻', 'v': 'chinese_category/50/巨尻'}, + {'n': 'ハーレム', 'v': 'chinese_category/51/ハーレム'}, + {'n': '日焼け', 'v': 'chinese_category/52/日焼け'}, + {'n': '早漏', 'v': 'chinese_category/53/早漏'}, + {'n': 'キス・接吻', 'v': 'chinese_category/54/キス・接吻'}, + {'n': '汗だく', 'v': 'chinese_category/55/汗だく'}, + {'n': '服務生', 'v': 'chinese_category/56/服務生'}, + {'n': '高中女生', 'v': 'chinese_category/57/高中女生'}, + {'n': '女主播', 'v': 'chinese_category/58/女主播'}, + {'n': '女生', 'v': 'chinese_category/59/女生'}, + {'n': '黑人演員', 'v': 'chinese_category/60/黑人演員'}, + {'n': '痴女', 'v': 'chinese_category/61/痴女'}, + {'n': '護士', 'v': 'chinese_category/62/護士'}, + {'n': '家庭教師', 'v': 'chinese_category/63/家庭教師'}, + {'n': '母親', 'v': 'chinese_category/64/母親'}, + {'n': '女教師', 'v': 'chinese_category/65/女教師'}, + {'n': '展場女孩', 'v': 'chinese_category/66/展場女孩'}, + {'n': '女大學生', 'v': 'chinese_category/67/女大學生'}, + {'n': '賽車女郎', 'v': 'chinese_category/68/賽車女郎'}, + {'n': '妓女', 'v': 'chinese_category/69/妓女'}, + {'n': '各種職業', 'v': 'chinese_category/70/各種職業'}, + {'n': '女醫生', 'v': 'chinese_category/71/女醫生'}, + {'n': '人妻', 'v': 'chinese_category/72/人妻'}, + {'n': '白人', 'v': 'chinese_category/73/白人'}, + {'n': '千金小姐', 'v': 'chinese_category/74/千金小姐'}, + {'n': '寡婦', 'v': 'chinese_category/75/寡婦'}, + {'n': '車掌小姐', 'v': 'chinese_category/76/車掌小姐'}, + {'n': '格鬥家', 'v': 'chinese_category/77/格鬥家'}, + {'n': '姐姐', 'v': 'chinese_category/78/姐姐'}, + {'n': '新娘、嫩妻', 'v': 'chinese_category/79/新娘、嫩妻'}, + {'n': '美少女', 'v': 'chinese_category/80/美少女'}, + {'n': '秘書', 'v': 'chinese_category/81/秘書'}, + {'n': '模特兒', 'v': 'chinese_category/82/模特兒'}, + {'n': '女主人、女老板', 'v': 'chinese_category/83/女主人、女老板'}, + {'n': '明星臉', 'v': 'chinese_category/84/明星臉'}, + {'n': '女檢察官', 'v': 'chinese_category/85/女檢察官'}, + {'n': '格鬥家', 'v': 'chinese_category/86/格鬥家'}, + {'n': '義母', 'v': 'chinese_category/87/義母'}, + {'n': '教練', 'v': 'chinese_category/88/教練'}, + {'n': '伴侶', 'v': 'chinese_category/89/伴侶'}, + {'n': '亞洲女演員', 'v': 'chinese_category/90/亞洲女演員'}, + {'n': '公主', 'v': 'chinese_category/91/公主'}, + {'n': '童年朋友', 'v': 'chinese_category/92/童年朋友'}, + {'n': '黑幫成員', 'v': 'chinese_category/93/黑幫成員'}, + {'n': '角色扮演', 'v': 'chinese_category/94/角色扮演'}, + {'n': '眼鏡', 'v': 'chinese_category/95/眼鏡'}, + {'n': '泳裝', 'v': 'chinese_category/96/泳裝'}, + {'n': '校服', 'v': 'chinese_category/97/校服'}, + {'n': '迷你裙', 'v': 'chinese_category/98/迷你裙'}, + {'n': '女僕', 'v': 'chinese_category/99/女僕'}, + {'n': '旗袍', 'v': 'chinese_category/100/旗袍'}, + {'n': '學校泳裝', 'v': 'chinese_category/101/學校泳裝'}, + {'n': '水手服', 'v': 'chinese_category/102/水手服'}, + {'n': '內衣', 'v': 'chinese_category/103/內衣'}, + {'n': '體育服', 'v': 'chinese_category/104/體育服'}, + {'n': '和服・喪服', 'v': 'chinese_category/105/和服・喪服'}, + {'n': 'OL', 'v': 'chinese_category/106/OL'}, + {'n': '身體意識', 'v': 'chinese_category/107/身體意識'}, + {'n': '連褲襪', 'v': 'chinese_category/108/連褲襪'}, + {'n': '空姐', 'v': 'chinese_category/109/空姐'}, + {'n': '迷你裙警察', 'v': 'chinese_category/110/迷你裙警察'}, + {'n': '裸體圍裙', 'v': 'chinese_category/111/裸體圍裙'}, + {'n': '緊身衣', 'v': 'chinese_category/112/緊身衣'}, + {'n': '制服', 'v': 'chinese_category/113/制服'}, + {'n': '泡泡襪', 'v': 'chinese_category/114/泡泡襪'}, + {'n': '女祭司', 'v': 'chinese_category/115/女祭司'}, + {'n': '貓耳女', 'v': 'chinese_category/116/貓耳女'}, + {'n': '兔女郎', 'v': 'chinese_category/117/兔女郎'}, + {'n': '猥褻穿著', 'v': 'chinese_category/118/猥褻穿著'}, + {'n': '偷看內褲', 'v': 'chinese_category/119/偷看內褲'}, + {'n': '女裝人妖', 'v': 'chinese_category/120/女裝人妖'}, + {'n': '女忍者', 'v': 'chinese_category/121/女忍者'}, + {'n': '娃娃', 'v': 'chinese_category/122/娃娃'}, + {'n': '及膝襪', 'v': 'chinese_category/123/及膝襪'}, + {'n': '女戰士', 'v': 'chinese_category/124/女戰士'}, + {'n': '巨乳', 'v': 'chinese_category/127/巨乳'}, + {'n': '貧乳・微乳', 'v': 'chinese_category/128/貧乳・微乳'}, + {'n': '蘿莉塔', 'v': 'chinese_category/129/蘿莉塔'}, + {'n': '熟女', 'v': 'chinese_category/130/熟女'}, + {'n': '孕婦', 'v': 'chinese_category/131/孕婦'}, + {'n': '苗條', 'v': 'chinese_category/132/苗條'}, + {'n': '胖女人', 'v': 'chinese_category/133/胖女人'}, + {'n': '無毛', 'v': 'chinese_category/134/無毛'}, + {'n': '變性者', 'v': 'chinese_category/135/變性者'}, + {'n': '高', 'v': 'chinese_category/136/高'}, + {'n': '屁股', 'v': 'chinese_category/137/屁股'}, + {'n': '嬌小的', 'v': 'chinese_category/138/嬌小的'}, + {'n': '乳房', 'v': 'chinese_category/139/乳房'}, + {'n': '肌肉', 'v': 'chinese_category/140/肌肉'}, + {'n': '超乳', 'v': 'chinese_category/141/超乳'}, + {'n': '中出', 'v': 'chinese_category/142/中出'}, + {'n': '顏射', 'v': 'chinese_category/143/顏射'}, + {'n': '自慰', 'v': 'chinese_category/144/自慰'}, + {'n': '顏射', 'v': 'chinese_category/145/顏射'}, + {'n': '肛交', 'v': 'chinese_category/146/肛交'}, + {'n': '吞精', 'v': 'chinese_category/147/吞精'}, + {'n': '打手槍', 'v': 'chinese_category/148/打手槍'}, + {'n': '放尿', 'v': 'chinese_category/149/放尿'}, + {'n': '亂交', 'v': 'chinese_category/150/亂交'}, + {'n': '口交', 'v': 'chinese_category/151/口交'}, + {'n': '飲尿', 'v': 'chinese_category/152/飲尿'}, + {'n': '排便', 'v': 'chinese_category/153/排便'}, + {'n': '乳交', 'v': 'chinese_category/154/乳交'}, + {'n': '潮吹', 'v': 'chinese_category/155/潮吹'}, + {'n': '淫語', 'v': 'chinese_category/156/淫語'}, + {'n': '69', 'v': 'chinese_category/157/69'}, + {'n': '深喉', 'v': 'chinese_category/158/深喉'}, + {'n': '拳交', 'v': 'chinese_category/159/拳交'}, + {'n': '舔陰', 'v': 'chinese_category/160/舔陰'}, + {'n': '騎乗位', 'v': 'chinese_category/161/騎乗位'}, + {'n': '按摩', 'v': 'chinese_category/162/按摩'}, + {'n': '手指插入', 'v': 'chinese_category/163/手指插入'}, + {'n': '母乳', 'v': 'chinese_category/164/母乳'}, + {'n': '足交', 'v': 'chinese_category/165/足交'}, + {'n': '食糞', 'v': 'chinese_category/166/食糞'}, + {'n': '顏面騎乘', 'v': 'chinese_category/167/顏面騎乘'}, + {'n': '肛内中出', 'v': 'chinese_category/168/肛内中出'}, + {'n': '多P', 'v': 'chinese_category/169/多P'}, + {'n': '按摩棒', 'v': 'chinese_category/170/按摩棒'}, + {'n': '緊縛', 'v': 'chinese_category/171/緊縛'}, + {'n': '跳蛋', 'v': 'chinese_category/172/跳蛋'}, + {'n': '玩具', 'v': 'chinese_category/173/玩具'}, + {'n': '糞便', 'v': 'chinese_category/174/糞便'}, + {'n': 'SM', 'v': 'chinese_category/175/SM'}, + {'n': '車震', 'v': 'chinese_category/176/車震'}, + {'n': '藥物', 'v': 'chinese_category/177/藥物'}, + {'n': '強姦', 'v': 'chinese_category/178/強姦'}, + {'n': '緊縛', 'v': 'chinese_category/179/緊縛'}, + {'n': '監禁', 'v': 'chinese_category/180/監禁'}, + {'n': '灌腸', 'v': 'chinese_category/181/灌腸'}, + {'n': '鴨嘴', 'v': 'chinese_category/182/鴨嘴'}, + {'n': '插入異物', 'v': 'chinese_category/183/插入異物'}, + {'n': '輪姦', 'v': 'chinese_category/184/輪姦'}, + {'n': '拘束', 'v': 'chinese_category/185/拘束'}, + {'n': '凌辱', 'v': 'chinese_category/186/凌辱'}, + {'n': '羞恥', 'v': 'chinese_category/187/羞恥'}, + {'n': '乳液', 'v': 'chinese_category/188/乳液'}, + {'n': '催眠', 'v': 'chinese_category/189/催眠'}, + {'n': '子宮頸', 'v': 'chinese_category/190/子宮頸'}, + {'n': '女優按摩棒', 'v': 'chinese_category/191/女優按摩棒'}, + {'n': '立即口交', 'v': 'chinese_category/192/立即口交'}, + {'n': '合集', 'v': 'chinese_category/193/合集'}, + {'n': '單體作品', 'v': 'chinese_category/194/單體作品'}, + {'n': 'DMM獨家', 'v': 'chinese_category/195/DMM獨家'}, + {'n': '獨立製作', 'v': 'chinese_category/196/獨立製作'}, + {'n': '局部特寫', 'v': 'chinese_category/197/局部特寫'}, + {'n': '素人', 'v': 'chinese_category/198/素人'}, + {'n': '第一人稱攝影', 'v': 'chinese_category/199/第一人稱攝影'}, + {'n': '國外進口', 'v': 'chinese_category/200/國外進口'}, + {'n': '纪录片', 'v': 'chinese_category/201/纪录片'}, + {'n': '投稿', 'v': 'chinese_category/202/投稿'}, + {'n': '數位馬賽克', 'v': 'chinese_category/203/數位馬賽克'}, + {'n': '首次亮相', 'v': 'chinese_category/204/首次亮相'}, + {'n': '經典', 'v': 'chinese_category/205/經典'}, + {'n': '薄馬賽克', 'v': 'chinese_category/206/薄馬賽克'}, + {'n': '4小時以上作品', 'v': 'chinese_category/207/4小時以上作品'}, + {'n': '介紹影片', 'v': 'chinese_category/208/介紹影片'}, + {'n': '主觀視角', 'v': 'chinese_category/209/主觀視角'}, + {'n': '高畫質', 'v': 'chinese_category/210/高畫質'}, + {'n': '戀愛', 'v': 'chinese_category/211/戀愛'}, + {'n': '戲劇', 'v': 'chinese_category/212/戲劇'}, + {'n': '複刻版', 'v': 'chinese_category/213/複刻版'}, + {'n': '限時降價', 'v': 'chinese_category/214/限時降價'}, + {'n': '故事集', 'v': 'chinese_category/215/故事集'}, + {'n': '特效', 'v': 'chinese_category/216/特效'}, + {'n': '3D', 'v': 'chinese_category/217/3D'}, + {'n': 'R-18', 'v': 'chinese_category/219/R-18'}, + {'n': 'R-15', 'v': 'chinese_category/220/R-15'}, + {'n': 'DMM專屬', 'v': 'chinese_category/221/DMM專屬'}, + {'n': '教學', 'v': 'chinese_category/222/教學'}, + {'n': '給女性觀眾', 'v': 'chinese_category/223/給女性觀眾'}, + {'n': '恐怖', 'v': 'chinese_category/224/恐怖'}, + {'n': '合作作品', 'v': 'chinese_category/225/合作作品'}, + {'n': 'パラダイスTV', 'v': 'chinese_category/226/パラダイスTV'}, + {'n': 'DVDトースター', 'v': 'chinese_category/227/DVDトースター'}, + {'n': '魔法少女', 'v': 'chinese_category/228/魔法少女'}, + {'n': '假陽具', 'v': 'chinese_category/229/假陽具'}, + {'n': '順豐', 'v': 'chinese_category/230/順豐'}, + {'n': '圖片視頻(男)', 'v': 'chinese_category/231/圖片視頻(男)'}, + {'n': 'AV OPEN 2014 中量級', 'v': 'chinese_category/232/AV OPEN 2014 中量級'}, + {'n': 'AV OPEN 2014 超重量級', 'v': 'chinese_category/233/AV OPEN 2014 超重量級'}, + {'n': '遊戲實況', 'v': 'chinese_category/234/遊戲實況'}, + {'n': 'AV OPEN 2014 ヘビー級', 'v': 'chinese_category/235/AV OPEN 2014 ヘビー級'}, + {'n': '變身女主角', 'v': 'chinese_category/236/變身女主角'}, + {'n': 'AV OPEN 2015 SM/ハード部門', 'v': 'chinese_category/237/AV OPEN 2015 SM/ハード部門'}, + {'n': 'AV OPEN 2015 企画部門', 'v': 'chinese_category/238/AV OPEN 2015 企画部門'}, + {'n': 'AV OPEN 2015 女優部門', 'v': 'chinese_category/239/AV OPEN 2015 女優部門'}, + {'n': 'AV OPEN 2015 素人部門', 'v': 'chinese_category/240/AV OPEN 2015 素人部門'}, + {'n': 'AV OPEN 2015 乙女部門', 'v': 'chinese_category/241/AV OPEN 2015 乙女部門'}, + {'n': 'AV OPEN 2015 熟女部門', 'v': 'chinese_category/242/AV OPEN 2015 熟女部門'}, + {'n': 'AV OPEN 2015 瘋狂/戀物癖部', 'v': 'chinese_category/243/AV OPEN 2015 瘋狂/戀物癖部'}, + {'n': '推薦用於智能手機的垂直視頻', 'v': 'chinese_category/244/推薦用於智能手機的垂直視頻'}, + {'n': 'V影院', 'v': 'chinese_category/245/V影院'}, + {'n': '動畫', 'v': 'chinese_category/246/動畫'}, + {'n': '行動', 'v': 'chinese_category/247/行動'}, + {'n': '黑暗系統', 'v': 'chinese_category/248/黑暗系統'}, + {'n': '迷你係列', 'v': 'chinese_category/249/迷你係列'}, + {'n': '嬌小的', 'v': 'chinese_category/250/嬌小的'}, + {'n': '浸漬', 'v': 'chinese_category/251/浸漬'}, + {'n': 'AV OPEN 2016 女優部門', 'v': 'chinese_category/252/AV OPEN 2016 女優部門'}, + {'n': 'AV OPEN 2016 素人部門', 'v': 'chinese_category/253/AV OPEN 2016 素人部門'}, + {'n': 'AV OPEN 2016 バラエティ部門', 'v': 'chinese_category/254/AV OPEN 2016 バラエティ部門'}, + {'n': 'AV OPEN 2016 劇情/紀錄片部門', 'v': 'chinese_category/255/AV OPEN 2016 劇情/紀錄片部門'}, + {'n': 'AV OPEN 2016 ハード部門', 'v': 'chinese_category/256/AV OPEN 2016 ハード部門'}, + {'n': 'AV OPEN 2016 瘋狂/戀物癖部門', 'v': 'chinese_category/257/AV OPEN 2016 瘋狂/戀物癖部門'}, + {'n': 'AV OPEN 2016 乙女部門', 'v': 'chinese_category/258/AV OPEN 2016 乙女部門'}, + {'n': 'AV OPEN 2016 企画部門', 'v': 'chinese_category/259/AV OPEN 2016 企画部門'}, + {'n': 'AV OPEN 2016 人妻・熟女部門', 'v': 'chinese_category/260/AV OPEN 2016 人妻・熟女部門'}, + {'n': '婊子', 'v': 'chinese_category/261/婊子'}, + {'n': '僅限虛擬現實', 'v': 'chinese_category/262/僅限虛擬現實'}, + {'n': 'AV 棒球福利', 'v': 'chinese_category/263/AV 棒球福利'}, + {'n': '時間停止', 'v': 'chinese_category/264/時間停止'}, + {'n': '漫畫雜誌', 'v': 'chinese_category/265/漫畫雜誌'}, + {'n': '搞笑喜劇', 'v': 'chinese_category/266/搞笑喜劇'}, + {'n': '男子的愛', 'v': 'chinese_category/267/男子的愛'}, + {'n': '幻想', 'v': 'chinese_category/268/幻想'}, + {'n': 'AV OPEN 2017 女優部門', 'v': 'chinese_category/269/AV OPEN 2017 女優部門'}, + {'n': 'AV OPEN 2017紀錄片部', 'v': 'chinese_category/270/AV OPEN 2017紀錄片部'}, + {'n': 'AV OPEN 2017 フェチ部門', 'v': 'chinese_category/271/AV OPEN 2017 フェチ部門'}, + {'n': 'AV OPEN 2017 乙女部門', 'v': 'chinese_category/272/AV OPEN 2017 乙女部門'}, + {'n': 'AV OPEN 2017 人妻・熟女部門', 'v': 'chinese_category/273/AV OPEN 2017 人妻・熟女部門'}, + {'n': 'AV OPEN 2017 マニア部門', 'v': 'chinese_category/274/AV OPEN 2017 マニア部門'}, + {'n': 'AV OPEN 2017 企画部門', 'v': 'chinese_category/275/AV OPEN 2017 企画部門'}, + {'n': 'AV OPEN 2017 ハード部門', 'v': 'chinese_category/276/AV OPEN 2017 ハード部門'}, + {'n': 'AV OPEN 2017 素人部門', 'v': 'chinese_category/277/AV OPEN 2017 素人部門'}, + {'n': 'AV OPEN 2017 ドラマ部門', 'v': 'chinese_category/278/AV OPEN 2017 ドラマ部門'}, + {'n': '經歷的告白', 'v': 'chinese_category/279/經歷的告白'}, + {'n': '變性/女性化', 'v': 'chinese_category/280/變性/女性化'}, + {'n': '集產品', 'v': 'chinese_category/281/集產品'}, + {'n': '反向強姦', 'v': 'chinese_category/282/反向強姦'}, + {'n': '反向強姦', 'v': 'chinese_category/283/反向強姦'}, + {'n': '名人朋友【特典C】合格作品', 'v': 'chinese_category/284/名人朋友【特典C】合格作品'}, + {'n': '名人朋友【特典A】合格作品', 'v': 'chinese_category/285/名人朋友【特典A】合格作品'}, + {'n': '愛情喜劇', 'v': 'chinese_category/286/愛情喜劇'}, + {'n': '僅限 FANZA 發行', 'v': 'chinese_category/287/僅限 FANZA 發行'}, + {'n': '有資格參加名人朋友活動的作品', 'v': 'chinese_category/288/有資格參加名人朋友活動的作品'}, + {'n': '愛欲', 'v': 'chinese_category/289/愛欲'}, + {'n': '高品質虛擬現實', 'v': 'chinese_category/290/高品質虛擬現實'}, + {'n': '同性戀', 'v': 'chinese_category/291/同性戀'}, + {'n': 'AV OPEN 2018 女優部門', 'v': 'chinese_category/292/AV OPEN 2018 女優部門'}, + {'n': 'AV OPEN 2018 企画部門', 'v': 'chinese_category/293/AV OPEN 2018 企画部門'}, + {'n': 'AV OPEN 2018 素人部門', 'v': 'chinese_category/294/AV OPEN 2018 素人部門'}, + {'n': 'AV OPEN 2018 瘋狂/戀物癖部門', 'v': 'chinese_category/295/AV OPEN 2018 瘋狂/戀物癖部門'}, + {'n': 'AV OPEN 2018 人妻・熟女部門', 'v': 'chinese_category/296/AV OPEN 2018 人妻・熟女部門'}, + {'n': 'AV OPEN 2018 ハード部門', 'v': 'chinese_category/297/AV OPEN 2018 ハード部門'}, + {'n': 'AV OPEN 2018 乙女部門', 'v': 'chinese_category/298/AV OPEN 2018 乙女部門'}, + {'n': '已婚婦女/家庭主婦', 'v': 'chinese_category/299/已婚婦女/家庭主婦'}, + {'n': '連褲襪', 'v': 'chinese_category/300/連褲襪'}, + {'n': '按摩/茶點', 'v': 'chinese_category/301/按摩/茶點'}, + {'n': '乳液油', 'v': 'chinese_category/302/乳液油'}, + {'n': '年輕的妻子', 'v': 'chinese_category/303/年輕的妻子'}, + {'n': '小便/洩漏', 'v': 'chinese_category/304/小便/洩漏'}, + {'n': '保健皂', 'v': 'chinese_category/305/保健皂'}, + {'n': '極致高潮', 'v': 'chinese_category/306/極致高潮'}, + {'n': '虐待', 'v': 'chinese_category/307/虐待'}, + {'n': 'M女', 'v': 'chinese_category/308/M女'}, + {'n': '職業裝', 'v': 'chinese_category/309/職業裝'}, + {'n': '背部', 'v': 'chinese_category/310/背部'}, + {'n': '不戴胸罩', 'v': 'chinese_category/311/不戴胸罩'}, + {'n': '女上司', 'v': 'chinese_category/312/女上司'}, + {'n': '洗澡', 'v': 'chinese_category/313/洗澡'}, + {'n': '乳頭滑落', 'v': 'chinese_category/314/乳頭滑落'}, + {'n': '旅行', 'v': 'chinese_category/315/旅行'}, + {'n': '奧納薩波', 'v': 'chinese_category/316/奧納薩波'}, + {'n': '蠟燭', 'v': 'chinese_category/317/蠟燭'}, + {'n': '男人噴', 'v': 'chinese_category/318/男人噴'}, + {'n': '娘・養女', 'v': 'chinese_category/319/娘・養女'}, + {'n': '面具,面具', 'v': 'chinese_category/320/面具,面具'}, + {'n': '軟體', 'v': 'chinese_category/321/軟體'}, + {'n': '面試', 'v': 'chinese_category/322/面試'}, + {'n': '宅男', 'v': 'chinese_category/323/宅男'}, + {'n': '接待員', 'v': 'chinese_category/324/接待員'}, + {'n': '沒有內褲', 'v': 'chinese_category/325/沒有內褲'}, + {'n': '酒會', 'v': 'chinese_category/326/酒會'}, + {'n': '部下・同僚', 'v': 'chinese_category/327/部下・同僚'}, + {'n': '名人', 'v': 'chinese_category/328/名人'}, + {'n': '戴綠帽子 / 戴綠帽子 / NTR', 'v': 'chinese_category/329/戴綠帽子 / 戴綠帽子 / NTR'}, + {'n': '戴綠帽子 / 戴綠帽子 / NTR', 'v': 'chinese_category/330/戴綠帽子 / 戴綠帽子 / NTR'}, + {'n': '約會', 'v': 'chinese_category/331/約會'}, + {'n': '花嫁', 'v': 'chinese_category/332/花嫁'}, + {'n': '交換/情侶交換', 'v': 'chinese_category/333/交換/情侶交換'}, + {'n': '祖父', 'v': 'chinese_category/334/祖父'}, + {'n': '姨', 'v': 'chinese_category/335/姨'}, + {'n': '鼻鉤', 'v': 'chinese_category/336/鼻鉤'}, + {'n': '運動員', 'v': 'chinese_category/337/運動員'}, + {'n': '醫院/診所', 'v': 'chinese_category/338/醫院/診所'}, + {'n': '打屁股', 'v': 'chinese_category/339/打屁股'}, + {'n': '酒店', 'v': 'chinese_category/340/酒店'}, + {'n': '女王', 'v': 'chinese_category/341/女王'}, + {'n': '瑜伽', 'v': 'chinese_category/342/瑜伽'}, + {'n': '新人陸續登場', 'v': 'chinese_category/343/新人陸續登場'}, + {'n': '白目・失神', 'v': 'chinese_category/344/白目・失神'}, + {'n': '媽媽朋友', 'v': 'chinese_category/345/媽媽朋友'}, + {'n': '啦啦隊長', 'v': 'chinese_category/346/啦啦隊長'}, + {'n': '奶奶', 'v': 'chinese_category/347/奶奶'}, + {'n': '社團活動經理', 'v': 'chinese_category/348/社團活動經理'}, + {'n': '妄想族', 'v': 'chinese_category/349/妄想族'}, + {'n': '艾曼紐', 'v': 'chinese_category/350/艾曼紐'}, + {'n': '艾曼紐', 'v': 'chinese_category/351/艾曼紐'}, + {'n': '放置', 'v': 'chinese_category/352/放置'}, + {'n': '心理驚悚片', 'v': 'chinese_category/353/心理驚悚片'}, + {'n': '切卡', 'v': 'chinese_category/354/切卡'}, + {'n': '福袋', 'v': 'chinese_category/355/福袋'}, + {'n': '最好的,綜合性的', 'v': 'chinese_category/356/最好的,綜合性的'}, + {'n': '3P、4P', 'v': 'chinese_category/357/3P、4P'}, + {'n': '女優', 'v': 'chinese_category/358/女優'}, + {'n': '藝人', 'v': 'chinese_category/359/藝人'}, + {'n': '強姦', 'v': 'chinese_category/360/強姦'}, + {'n': '湯', 'v': 'chinese_category/361/湯'}, + {'n': '凌辱', 'v': 'chinese_category/362/凌辱'}, + {'n': '偶像', 'v': 'chinese_category/363/偶像'}, + {'n': '看護師', 'v': 'chinese_category/364/看護師'}, + {'n': '奴隸', 'v': 'chinese_category/365/奴隸'}, + {'n': '風俗', 'v': 'chinese_category/366/風俗'}, + {'n': '處女之物', 'v': 'chinese_category/367/處女之物'}, + {'n': '小乳房', 'v': 'chinese_category/368/小乳房'}, + {'n': '大公雞', 'v': 'chinese_category/369/大公雞'}, + {'n': '妹', 'v': 'chinese_category/370/妹'}, + {'n': '戀物癖', 'v': 'chinese_category/371/戀物癖'}, + {'n': '示例視頻', 'v': 'chinese_category/372/示例視頻'}, + {'n': '秋季大甩賣', 'v': 'chinese_category/373/秋季大甩賣'}, + {'n': '藍光', 'v': 'chinese_category/374/藍光'}, + {'n': '出口', 'v': 'chinese_category/375/出口'}, + {'n': '動漫人物', 'v': 'chinese_category/376/動漫人物'}, + {'n': 'DOD 秋季促銷第 2 部分', 'v': 'chinese_category/377/DOD 秋季促銷第 2 部分'}, + {'n': '2010年代前半(DOD)', 'v': 'chinese_category/378/2010年代前半(DOD)'}, + {'n': '光盤點播銷售', 'v': 'chinese_category/379/光盤點播銷售'}, + {'n': 'AV女優', 'v': 'chinese_category/380/AV女優'}, + {'n': '設置有好處的產品', 'v': 'chinese_category/381/設置有好處的產品'}, + {'n': 'Triple HAPPY 活動', 'v': 'chinese_category/382/Triple HAPPY 活動'}, + {'n': 'Rena 桃園 JOKER 禮品活動', 'v': 'chinese_category/383/Rena 桃園 JOKER 禮品活動'}, + {'n': '時代劇', 'v': 'chinese_category/384/時代劇'}, + {'n': '全球媒體 40% 折扣銷售', 'v': 'chinese_category/385/全球媒體 40% 折扣銷售'}, + {'n': 'Mousozoku 2021上半年進入TOP 100', 'v': 'chinese_category/386/Mousozoku 2021上半年進入TOP 100'}, + {'n': 'レズビアン', 'v': 'chinese_category/387/レズビアン'}, + {'n': 'BL(ボーイズラブ)', 'v': 'chinese_category/388/BL(ボーイズラブ)'}, + {'n': '8KVR', 'v': 'chinese_category/389/8KVR'}, + {'n': '妄想族30%OFF第1弾', 'v': 'chinese_category/390/妄想族30%OFF第1弾'}, + {'n': 'ブランドストア30%OFF☆', 'v': 'chinese_category/391/ブランドストア30%OFF☆'}, + {'n': 'ながえスタイル30%OFF', 'v': 'chinese_category/392/ながえスタイル30%OFF'}, + {'n': 'MERCURY(マーキュリー)他30%OFF', 'v': 'chinese_category/393/MERCURY(マーキュリー)他30%OFF'}, + {'n': 'ブランドストア30%OFF!', 'v': 'chinese_category/394/ブランドストア30%OFF!'}, + {'n': '妄想族30%OFF', 'v': 'chinese_category/395/妄想族30%OFF'}, + {'n': 'BALTAN<バルタン>他30%OFF', 'v': 'chinese_category/396/BALTAN<バルタン>他30%OFF'}, + {'n': 'ながえスタイル他30%OFF', 'v': 'chinese_category/397/ながえスタイル他30%OFF'}, + {'n': '台湾モデル', 'v': 'chinese_category/398/台湾モデル'}, + {'n': 'AI生成作品', 'v': 'chinese_category/399/AI生成作品'}, + {'n': 'アナルセックス(男の娘)', 'v': 'chinese_category/400/アナルセックス(男の娘)'}, +] + +# ===== Spider ===== +class Spider(Spider): + session = requests.Session() + host = 'https://mjv011.com' + headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', + 'Accept-Language': 'zh-CN,zh;q=0.9', + 'Referer': 'https://mjv011.com/', + } + + _tag_cache = {} + + def getName(self): return "mjv011" + def isVideoFormat(self, url): + if not url: return False + return '.m3u8' in url or '.mp4' in url or '.ts' in url + def manualVideoCheck(self): return False + def destroy(self): pass + + def localProxy(self, param): + return [404, 'text/plain', ''] + + def init(self, extend=""): + self.session.verify = False + _start_proxy() + try: + self.session.get( + f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html', + headers=self.headers, timeout=15, verify=False) + except Exception: + pass + + def _proxy_url(self, url): + if not url: return '' + if url.startswith('http://127.0.0.1'): + return url + return f'http://127.0.0.1:{_proxy_port}/{quote(url, safe="")}' + + def _fetch(self, url): + try: + r = self.session.get(url, headers=self.headers, timeout=20, verify=False) + r.encoding = 'utf-8' + if r.status_code == 200: + text = r.text + if len(text) < 3000 and ('同意(enter)' in text or 'IamOverEighteenYearsOld' in text): + self.session.get( + f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html', + headers=self.headers, timeout=20, verify=False) + r = self.session.get(url, headers=self.headers, timeout=20, verify=False) + r.encoding = 'utf-8' + if r.status_code == 200: + return r.text + return '' + return text + return '' + except Exception: + return '' + + def _parse_posts(self, text, tid=''): + if _is_novel(tid): + return self._parse_text_posts(text) + + items = [] + pattern1 = r"
    \s*]*href=\"([^\"]+)\"[^>]*>]*src='([^']+)'[^>]*>\s*\s*
    \s*]*>]*>([^<]+)(?:\s*
    ([^<]*)
    )?" + matches = re.findall(pattern1, text, re.S) + if matches: + for href, pic, title, date in matches: + if href.startswith(self.host): + href = href[len(self.host):] + if not href or not href.startswith('/'): + continue + mm = re.search(r'/([^/]+)_content/(\d+)/([^/]+)\.html', href) + if not mm: + continue + ctype, vid, slug = mm.group(1), mm.group(2), mm.group(3) + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title.strip(), + 'vod_pic': self._proxy_url(pic), + 'vod_remarks': date.strip() if date else '', + }) + return items + + pattern2 = r']+href="([^"]*zh/[^"]*_content/[^"]*)"[^>]*>.*?]+src="([^"]+)"[^>]*>.*?<(?:h3|h2|h4|div\s+class="title")[^>]*>(.*?)]+>', '', title).strip() + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title, + 'vod_pic': self._proxy_url(pic), + 'vod_remarks': '', + }) + return items + + def _parse_text_posts(self, text): + items = [] + for m in re.finditer(r"
    \s*
    \s*]*>]*href=\"([^\"]+)\"[^>]*>([^<]+)", text): + href, title = m.groups() + mm = re.search(r'/([^/]+)_content/(\d+)/([^/]+)\.html', href) + if not mm: continue + ctype, vid, slug = mm.group(1), mm.group(2), mm.group(3) + items.append({ + 'vod_id': f'{ctype}#{vid}#{slug}', + 'vod_name': title.strip(), + 'vod_pic': '', + 'vod_remarks': '', + }) + return items + + def _get_chinese_categories(self): + return _CHINESE_CATEGORIES + + def _get_category_tags(self, tid): + if tid in self._tag_cache: + return self._tag_cache[tid] + if _is_novel(tid) or _is_image(tid): + return [] + base_tid = tid + if base_tid.endswith('_random/all'): + base_tid = base_tid[:-11] + elif base_tid.endswith('_random'): + base_tid = base_tid[:-7] + urls_to_try = [ + f'{self.host}/zh/{base_tid}_random/all/index.html', + f'{self.host}/zh/{base_tid}_list/all/index.html', + f'{self.host}/zh/{base_tid}/index.html', + ] + text = None + for u in urls_to_try: + text = self._fetch(u) + if text: + break + if not text: + self._tag_cache[tid] = [] + return [] + tags = [] + seen = set() + for match in re.finditer(r'href=[\'"](/zh/((?:' + re.escape(base_tid) + r')_(?:search|tag)/all/[^/\'"]+)/)[\'"]', text, re.I): + path = match.group(1) + label = path.rsplit('/', 2)[0].split('/')[-1] + label = unquote(label) + if not label or label in seen: + continue + seen.add(label) + tags.append({'n': label, 'v': path}) + self._tag_cache[tid] = tags + return tags + + def _build_filters(self): + filters = {} + + chinese_tags = self._get_chinese_categories() + dynamic_chinese = self._get_category_tags('chinese_random/all') + all_chinese_opts = [{'n': '全部', 'v': ''}] + seen_names = set() + for t in dynamic_chinese: + if t['n'] not in seen_names: + seen_names.add(t['n']) + all_chinese_opts.append(t) + for t in chinese_tags: + if t['n'] not in seen_names: + seen_names.add(t['n']) + all_chinese_opts.append(t) + filters['chinese_random/all'] = [{'key': 'sub', 'name': '分类', 'value': all_chinese_opts}] + + video_tids = [ + 'censored_random/all', + 'uncensored_random/all', + 'amateurjav_random/all', + 'reducing-mosaic_random/all', + ] + for tid in video_tids: + dynamic = self._get_category_tags(tid) + if tid == 'uncensored_random/all': + static_opts = [ + {'n': '一本道(1pondo)', 'v': 'uncensored_makersr/32/一本道(1pondo)'}, + {'n': 'カリビアンコム(Caribbeancom)', 'v': 'uncensored_makersr/30/カリビアンコム(Caribbeancom)'}, + {'n': 'カリビアンコムPPV', 'v': 'uncensored_makersr/40/カリビアンコムPPV(Caribbeancompr)'}, + {'n': '天然むすめ(10musume)', 'v': 'uncensored_makersr/31/天然むすめ(10musume)'}, + {'n': 'HEYZO', 'v': 'uncensored_makersr/17/HEYZO'}, + {'n': '東京熱(Tokyo Hot)', 'v': 'uncensored_makersr/29/東京熱(Tokyo Hot)'}, + {'n': 'ガチん娘!(Gachinco)', 'v': 'uncensored_makersr/35/ガチん娘!(Gachinco)'}, + {'n': 'パコパコママ(pacopacomama)', 'v': 'uncensored_makersr/36/パコパコママ(pacopacomama)'}, + {'n': 'エッチな4610', 'v': 'uncensored_makersr/34/エッチな4610'}, + {'n': '人妻斬り0930', 'v': 'uncensored_makersr/38/人妻斬り0930'}, + {'n': 'エッチな0930', 'v': 'uncensored_makersr/39/エッチな0930'}, + {'n': 'トリプルエックス(XXX-AV)', 'v': 'uncensored_makersr/126/トリプルエックス (XXX-AV)'}, + ] + opts = [{'n': '全部', 'v': ''}] + opts.extend(dynamic) + opts.append({'n': '——厂商筛选——', 'v': ''}) + opts.extend(static_opts) + filters[tid] = [{'key': 'sub', 'name': '筛选', 'value': opts}] + else: + if dynamic: + opts = [{'n': '全部', 'v': ''}] + opts.extend(dynamic) + filters[tid] = [{'key': 'sub', 'name': '标签', 'value': opts}] + + cg_opts = [ + {'n': '全部', 'v': ''}, + {'n': 'Bejean On Line', 'v': 'cg_search/all/Bejean On Line'}, + {'n': 'Bomb.tv', 'v': 'cg_search/all/Bomb.tv'}, + {'n': 'DGC', 'v': 'cg_search/all/DGC'}, + {'n': 'Graphis Gals', 'v': 'cg_search/all/Graphis Gals'}, + {'n': 'Graphis Hatsunugi', 'v': 'cg_search/all/Graphis Hatsunugi'}, + {'n': 'image.tv', 'v': 'cg_search/all/image.tv'}, + {'n': 'Sabra.net', 'v': 'cg_search/all/Sabra.net'}, + {'n': 'S-Cute', 'v': 'cg_search/all/S-Cute'}, + {'n': 'X-City', 'v': 'cg_search/all/X-City'}, + {'n': 'YS Web', 'v': 'cg_search/all/YS Web'}, + ] + filters['cg_random/all'] = [{'key': 'sub', 'name': '系列', 'value': cg_opts}] + cwp_opts = [ + {'n': '全部', 'v': ''}, + {'n': '3AGirl AAA女郎', 'v': 'cwp_search/all/3AGirl AAA女郎'}, + {'n': 'ROSI寫真', 'v': 'cwp_search/all/ROSI寫真'}, + {'n': 'RU1MM 如壹寫真', 'v': 'cwp_search/all/RU1MM 如壹寫真'}, + {'n': 'DISI第四印象', 'v': 'cwp_search/all/DISI第四印象'}, + ] + filters['cwp_random/all'] = [{'key': 'sub', 'name': '系列', 'value': cwp_opts}] + novel_opts = [ + {'n': '全部', 'v': ''}, + {'n': '學生校園', 'v': 'novel_search/all/學生校園'}, + {'n': '職場激情', 'v': 'novel_search/all/職場激情'}, + {'n': '經驗故事', 'v': 'novel_search/all/經驗故事'}, + {'n': '暴力虐待', 'v': 'novel_search/all/暴力虐待'}, + {'n': '不倫戀情', 'v': 'novel_search/all/不倫戀情'}, + {'n': '群體換伴', 'v': 'novel_search/all/群體換伴'}, + {'n': '人妻熟女', 'v': 'novel_search/all/人妻熟女'}, + {'n': '科學幻想', 'v': 'novel_search/all/科學幻想'}, + {'n': '其他故事', 'v': 'novel_search/all/其他故事'}, + {'n': '玄幻仙俠', 'v': 'novel_search/all/玄幻仙俠'}, + {'n': '動漫修改', 'v': 'novel_search/all/動漫修改'}, + {'n': '長篇連載', 'v': 'novel_search/all/長篇連載'}, + ] + filters['novel_random/all'] = [{'key': 'sub', 'name': '主题', 'value': novel_opts}] + return filters + + def homeContent(self, filter): + try: + return self._homeContent_inner(filter) + except Exception: + return {'class': [], 'filters': {}, 'type': '影视', 'list': [], + 'page': 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _load_classes(self, text): + classes = [] + seen = set() + for href, key, name in re.findall(r'href=[\'\"](https://mjv011\.com/zh/([^\'\"/_]+)_random/all/index\.html)[\'\"][^>]*>([^<]+)', text): + name = re.sub(r'\s*\(\d+\)\s*$', '', name.strip()) + if any(x in name for x in ['random', '隨機', '随机', '近作']): + continue + tid = f'{key}_random/all' + if tid in seen: + continue + seen.add(tid) + classes.append({'type_id': tid, 'type_name': name}) + return classes + + def _homeContent_inner(self, filter): + text = self._fetch(f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html') + classes = self._load_classes(text) + if not classes: + classes = [ + {'type_id': 'chinese_random/all', 'type_name': '中文字幕'}, + {'type_id': 'censored_random/all', 'type_name': '有码'}, + {'type_id': 'uncensored_random/all', 'type_name': '无码'}, + {'type_id': 'amateurjav_random/all', 'type_name': '素人'}, + {'type_id': 'reducing-mosaic_random/all', 'type_name': '无码破解'}, + {'type_id': 'animation_random/all', 'type_name': 'H动画'}, + {'type_id': 'CensoredAnimation_random/all', 'type_name': 'H有码动画'}, + {'type_id': 'UncensoredAnimation_random/all', 'type_name': 'H无码动画'}, + {'type_id': 'tdAnimation_random/all', 'type_name': 'H_3D动画'}, + {'type_id': 'dt_random/all', 'type_name': '国产自拍'}, + {'type_id': '18H_random/all', 'type_name': '18H漫画'}, + {'type_id': 'doujin_random/all', 'type_name': '18H短篇同人'}, + {'type_id': 'cg_random/all', 'type_name': '写真图集'}, + {'type_id': 'cwp_random/all', 'type_name': '国产写真'}, + {'type_id': 'novel_random/all', 'type_name': '小说'}, + ] + new_classes = [] + new_classes.append({'type_id': 'home', 'type_name': '首页'}) + new_classes.append({'type_id': 'content_news/all', 'type_name': '每日更新'}) + for c in classes: + if c['type_id'] not in ['home', 'content_news/all']: + new_classes.append(c) + classes = new_classes + items = self._parse_posts(text, 'chinese_random/all') + filters = self._build_filters() + return {'class': classes, 'filters': filters, 'type': '影视', 'list': items, + 'page': 1, 'pagecount': 1, 'limit': len(items), 'total': len(items)} + + def homeVideoContent(self): + try: + text = self._fetch(f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html') + return {'list': self._parse_posts(text, 'chinese_random/all')} + except Exception: + return {'list': []} + + def categoryContent(self, tid, pg, filter, extend): + try: + return self._categoryContent_inner(tid, pg, filter, extend) + except Exception as e: + return {'list': [], 'page': int(pg) if pg else 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _categoryContent_inner(self, tid, pg, filter, extend): + if isinstance(extend, str): + try: + extend = json.loads(extend) + except Exception: + extend = {} + if not extend: + extend = {} + page = int(pg) if pg else 1 + + if tid == 'home': + text = self._fetch(f'{self.host}/zh/chinese_IamOverEighteenYearsOld/19/index.html') + if text: + items = self._parse_posts(text, 'chinese_random/all') + per_page = 20 + total = len(items) + start = (page - 1) * per_page + end = start + per_page + page_items = items[start:end] + return {'list': page_items, 'page': page, + 'pagecount': (total + per_page - 1) // per_page, + 'limit': len(page_items), 'total': total} + return {'list': [], 'page': 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + if tid == 'content_news/all': + today = datetime.now().strftime('%Y-%m-%d') + url = f'{self.host}/zh/content_news/all/{today}.html' + text = self._fetch(url) + if text: + items = self._parse_posts(text, tid) + if items: + return {'list': items, 'page': 1, 'pagecount': 1, 'limit': len(items), 'total': len(items)} + return {'list': [], 'page': 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + candidates = [] + if extend and extend.get('sub'): + sub = quote(unquote(extend['sub']), safe='/()') + candidates.append(f'{self.host}/zh/{sub}/{page}.html') + if tid.startswith('search_'): + kw = tid[7:] + candidates.append(f'{self.host}/zh/chinese_search/all/{kw}/{page}.html') + else: + base_tid = tid + if base_tid.endswith('_random/all'): + base_tid = base_tid[:-11] + elif base_tid.endswith('_random'): + base_tid = base_tid[:-7] + elif base_tid.endswith('_list/all'): + base_tid = base_tid[:-10] + if page == 1: + candidates.append(f'{self.host}/zh/{base_tid}_list/all/index.html') + candidates.append(f'{self.host}/zh/{base_tid}_random/all/index.html') + candidates.append(f'{self.host}/zh/{base_tid}_list/all/{page}.html') + candidates.append(f'{self.host}/zh/{base_tid}_list/index_{page}.html') + candidates.append(f'{self.host}/zh/{base_tid}/{page}.html') + candidates.append(f'{self.host}/zh/{base_tid}/page/{page}.html') + candidates.append(f'{self.host}/zh/{base_tid}_random/all/{page}.html') + if page > 1: + candidates.append(f'{self.host}/zh/{base_tid}_list/index_{page}.html') + + items = [] + for url in candidates: + text = self._fetch(url) + if text: + parse_tid = tid + if extend and extend.get('sub'): + sub = extend['sub'] + if _is_novel(sub): + parse_tid = 'novel_random/all' + elif _is_image(sub): + parse_tid = sub.split('_')[0] + '_random/all' if '_' in sub else 'cg_random/all' + items = self._parse_posts(text, parse_tid) + if items: + break + + return {'list': items, 'page': page, 'pagecount': page + 1, + 'limit': len(items), 'total': page * len(items) + 1} + + # ===== 详情接口 ===== + def detailContent(self, ids): + try: + return self._detailContent_inner(ids) + except Exception: + return {'list': []} + + def _detailContent_inner(self, ids): + vid = str(ids[0] if isinstance(ids, list) else ids) + ctype, num, slug = vid.split('#', 2) + if _is_novel(ctype): + return self._novel_detail(vid, ctype, num, slug) + elif _is_image(ctype): + return self._image_detail(vid, ctype, num, slug) + else: + return self._video_detail(vid, ctype, num, slug) + + def _video_detail(self, vid, ctype, num, slug): + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + title = '' + m = re.search(r']*>(.*?)', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + if not title: + m = re.search(r'([^<]+)', text) + if m: title = m.group(1).strip() + cover = '' + m = re.search(r'"thumbnailUrl"\s*:\s*"([^"]+)"', text) + if m: cover = m.group(1) + if not cover: + m = re.search(r"]*property=\"og:image\"[^>]*content=\"([^\"]+)\"", text) + if m: cover = m.group(1) + if not cover: + m = re.search(r"
    .*?]*src='([^']+)'", text, re.S) + if m: cover = m.group(1) + + m = re.search(r'hadeedg252=(\d+)', text) + if not m: return {'list': []} + hadeedg252 = int(m.group(1)) + m = re.search(r'hcdeedg252=(\d+)', text) + if not m: return {'list': []} + hcdeedg252 = int(m.group(1)) + m = re.search(r"var argdeqweqweqwe = '([^']+)'", text) + if not m: return {'list': []} + aes_key = m.group(1) + m = re.search(r"var hdddedg252 = '([^']+)'", text) + if not m: return {'list': []} + aes_iv = m.group(1) + + mm = re.search(r"mvarr\['10_1'\]=(\[.*?\]);", text, re.S) + if not mm: return {'list': []} + mvarr_str = mm.group(1) + items = re.findall(r"\['([^']*)','([^']*)','([^']*)','([^']*)','([^']*)','([^']*)'\]", mvarr_str) + if not items: return {'list': []} + + urls = [] + for iframe_id, enc, html, prefix, empty, label in items: + if not enc or not prefix: continue + pid = self._decrypt_id(enc, hadeedg252, hcdeedg252, aes_key, aes_iv) + if not pid: continue + for res, label_name in [('480', '480P'), ('720', '720P'), ('1080', '1080P')]: + urls.append(f'{label_name}${num}|{slug}|{pid}|{res}') + + if not urls: return {'list': []} + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': self._proxy_url(cover), + 'vod_content': '', + 'vod_remarks': '', + 'vod_play_from': 'mjv011', + 'vod_play_url': '#'.join(urls), + } + return {'list': [vod]} + + def _novel_detail(self, vid, ctype, num, slug): + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + title = '' + m = re.search(r']*>(.*?)', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + content = '' + m = re.search(r"id=['\"]novel_content_txtsize['\"][^>]*>(.*?)
    ", text, re.S) + if m: + raw = m.group(1) + content = re.sub(r'<[^>]+>', '', raw) + content = re.sub(r' ', ' ', content) + content = re.sub(r'\s+', ' ', content).strip() + if not content: + m = re.search(r"([\s\S]*?)\s*
    ]+>', '', raw) + content = re.sub(r' ', ' ', content) + content = re.sub(r'\s+', ' ', content).strip() + if len(content) > 3000: + content = content[:3000] + '...' + novel_json = json.dumps({'title': title, 'content': content}, ensure_ascii=False) + play_url = f'阅读$novel://{novel_json}' + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': '', + 'vod_content': '', + 'vod_remarks': '', + 'vod_play_from': '小说', + 'vod_play_url': play_url, + 'vod_tag': 'text', + 'vod_player': '书', + } + return {'list': [vod]} + + def _image_detail(self, vid, ctype, num, slug): + url = f'{self.host}/zh/{ctype}_content/{num}/{slug}.html' + text = self._fetch(url) + if not text: return {'list': []} + title = '' + m = re.search(r']*>(.*?)', text, re.S) + if m: title = re.sub(r'<[^>]+>', '', m.group(1)).strip() + cover = '' + m = re.search(r'"thumbnailUrl"\s*:\s*"([^"]+)"', text) + if m: cover = m.group(1) + all_imgs = re.findall(r"src=['\"]([^'\"]*eemmhh02\.com/[^'\"]+\.(?:jpg|png|webp))['\"]", text, re.I) + big_imgs = [] + seen = set() + for img in all_imgs: + if img in seen: + continue + seen.add(img) + big_imgs.append(self._proxy_url(img)) + if not big_imgs: + return {'list': []} + pics = '&&'.join(big_imgs) + play_url = f'查看$pics://{pics}' + vod = { + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': self._proxy_url(cover), + 'vod_content': f'共 {len(big_imgs)} 张图片', + 'vod_remarks': str(len(big_imgs)) + 'P', + 'vod_play_from': '图片', + 'vod_play_url': play_url, + 'vod_tag': 'image', + 'vod_player': '画', + } + return {'list': [vod]} + + def _decrypt_id(self, enc, xor_key, base, aes_key, aes_iv): + try: + sep = chr(base + 97) + parts = enc.split(sep) + s1 = ''.join(chr(int(p, base) ^ xor_key) for p in parts if p) + data = base64.b64decode(s1) + plain = _aes_cbc_decrypt(data, aes_key.encode(), aes_iv.encode()) + return plain.decode('utf-8') + except Exception: + return '' + + def searchContent(self, key, quick, pg="1"): + try: + return self._searchContent_inner(key, quick, pg) + except Exception: + return {'list': [], 'page': int(pg) if pg else 1, 'pagecount': 1, 'limit': 0, 'total': 0} + + def _searchContent_inner(self, key, quick, pg="1"): + page = int(pg) if pg else 1 + return self._categoryContent_inner(f'search_{key}', page, False, {}) + + def playerContent(self, flag, id, vipFlags=None): + try: + return self._playerContent_inner(flag, id, vipFlags) + except Exception: + return {'parse': 0, 'url': '', 'header': {}, 'position': '0'} + + def _playerContent_inner(self, flag, id, vipFlags=None): + if id.startswith('novel://'): + return {'parse': 0, 'url': id, 'header': '', 'vod_player': '书'} + if id.startswith('pics://'): + return {'parse': 0, 'playUrl': '', 'url': id, 'header': self.headers} + try: + num, slug, pid, res = id.split('|', 3) + except ValueError: + return {'parse': 1, 'url': id, 'header': self.headers} + url = f'{self.host}/js/player/play.php?numresolution={res}&lo=on&id={pid}' + text = self._fetch(url) + m3u8 = '' + if text: + mm = re.search(r'videoSources\s*=\s*(\[.*?\]);', text, re.S) + if mm: + arr = mm.group(1) + sources = re.findall(r"src:\s*'([^']+)'[^}]*?size:\s*(\d+)", arr, re.S) + if sources: + target = int(res) if str(res).isdigit() else 0 + for u, s in sources: + if int(s) == target: + m3u8 = u + break + if not m3u8: + m3u8 = sources[0][0] + if not m3u8: + mm = re.search(r'https?://[^\s"<>\']+?\.m3u8', text) + if mm: m3u8 = mm.group(0) + if m3u8: + return {'parse': 0, 'url': m3u8, 'header': {'Referer': self.host + '/'}, 'position': '0'} + else: + return {'parse': 1, 'url': id, 'header': self.headers} \ No newline at end of file diff --git a/jaychouqq/yingshi/py9/剧OK.py b/jaychouqq/yingshi/py9/剧OK.py new file mode 100644 index 00000000..7c1a9a2c --- /dev/null +++ b/jaychouqq/yingshi/py9/剧OK.py @@ -0,0 +1,507 @@ +# -*- coding: utf-8 -*- +""" +juok3.top (剧OK) 爬虫 +- 首页: /api/filter API 获取推荐 +- 分类: /api/filter?catId= /type= API +- 详情: /api/detail?cat=&id= API +- 搜索: /api/search?q=关键词 +- 播放: 官源链接 + 解析线路, 需要WebView解析 +""" +import sys +import re +import json +from urllib.parse import urljoin, quote + +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + import requests as rq + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +def _(x): return x + +HOST = "https://juok3.top" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 分类映射: type_id -> (catId, type参数, 中文名) +CLASS_MAP = { + "movie": (1, None, "电影"), + "tv": (2, None, "电视剧"), + "variety": (3, None, "综艺"), + "anime": (4, None, "动漫"), + "short": (2, "短剧", "短剧"), # type=短剧, cat用2 +} + +# 外部解析线路 (拼接URL) - 从 mojiez.net 提取的38个解析接口 +PARSE_APIS = [ + {"name": "默认接口", "url": "https://jx.xmflv.com/?url="}, + {"name": "我看VIP", "url": "https://a.wkvip.net/?url="}, + {"name": "8090", "url": "https://www.8090g.cn/?url="}, + {"name": "极速解析", "url": "https://jx.2s0.cn/player/?url="}, + {"name": "super", "url": "https://super.playr.top/?url="}, + {"name": "fongmi", "url": "https://json.fongmi.cc/web?url="}, + {"name": "8090备用", "url": "https://www.8090g.cn/jiexi/?url="}, + {"name": "M3U8解析", "url": "https://jx.m3u8.tv/jx/jx.php?url="}, + {"name": "Jn1解析", "url": "https://yparse.jn1.cc/index.php?url="}, + {"name": "CK解析", "url": "https://www.ckplayer.vip/jiexi/?url="}, + {"name": "Player-JY", "url": "https://jx.playerjy.com/?url="}, + {"name": "789解析1", "url": "https://jiexi.789jiexi.icu:4433/?url="}, + {"name": "789解析2", "url": "https://jiexi.789jiexi.com/?url="}, + {"name": "HLS解析", "url": "https://jx.hls.one/?url="}, + {"name": "冰豆解析", "url": "https://bd.jx.cn/?url="}, + {"name": "剖元解析", "url": "https://www.pouyun.com/?url="}, + {"name": "973解析", "url": "https://jx.973973.xyz/?url="}, + {"name": "七哥解析", "url": "https://jx.nnxv.cn/tv.php?url="}, + {"name": "PlayM3U8", "url": "https://www.playm3u8.cn/jiexi.php?url="}, + {"name": "937解析", "url": "https://bfq.937auth.vip?url="}, + {"name": "芒果TV专线", "url": "https://video.isyour.love/player/getplayer?url="}, + {"name": "M1907", "url": "https://im1907.top/?jx="}, + {"name": "夜幕解析", "url": "https://www.yemu.xyz/?url="}, + {"name": "盘古解析", "url": "https://www.pangujiexi.com/jiexi/?url="}, + {"name": "Yparse", "url": "https://jx.yparse.com/index.php?url="}, + {"name": "搜影片名称", "url": "https://z1.m1907.top/?jx="}, + {"name": "超清VIP", "url": "https://jx.xmflv.cc/?url="}, + {"name": "vip视频解析1", "url": "https://www.8090.la/8090/?url="}, + {"name": "vip接口2", "url": "http://jiexi44.qmbo.cn/jiexi/?url="}, + {"name": "vip视频解析3", "url": "https://jx.parwix.com:4433/player/?url="}, + {"name": "全能VIP解析", "url": "http://api.apii.top/?v="}, + {"name": "备用线路1", "url": "https://svip.bljiex.cc/?v="}, + {"name": "备用线路2", "url": "https://yparse.ik9.cc/index.php?url="}, + {"name": "爱豆", "url": "https://jx.aidouer.net/?url="}, + {"name": "YT", "url": "https://jx.yangtu.top/?url="}, + {"name": "qianqi", "url": "https://api.qianqi.net/vip/?url="}, + {"name": "花旗解析", "url": "https://www.huaqi.live/?url="}, +] + +# 平台名称映射 +PLATFORM_NAMES = { + "qiyi": "爱奇艺", "iqiyi": "爱奇艺", + "imgo": "芒果TV", "mgtv": "芒果TV", + "qq": "腾讯视频", "v.qq": "腾讯视频", + "youku": "优酷", + "leshi": "乐视", "le": "乐视", + "sohu": "搜狐", + "bilibili": "B站", + "1905": "1905", + "pptv": "PPTV", + "xigua": "西瓜视频", + "douyin": "抖音", + "kuaishou": "快手", +} + +# 搜索缓存: 用于保存苹果CMS搜索结果的播放信息 +_search_cache = {} + + +class Spider(Spider): + + def init(self, extend=""): + self._load_config() + + def _load_config(self): + """从 /api/config 加载解析线路等配置 (已禁用, 使用固定配置)""" + pass + + def getName(self): + return "juok3" + + def isVideoFormat(self, url): + return ".m3u8" in url or ".mp4" in url or ".flv" in url + + def manualVideoCheck(self): + return True + + def _cover(self, raw): + """统一封面URL""" + if not raw: + return "" + if raw.startswith("//"): + return "https:" + raw + return raw + + def _year(self, pubdate): + """从pubdate提取年份""" + if pubdate and len(pubdate) >= 4: + return pubdate[:4] + return "" + + def _build_filter_url(self, tid, pg=1): + """构建分类API URL""" + info = CLASS_MAP.get(tid) + if not info: + return None + cat_id, type_name, _ = info + params = [] + if cat_id is not None: + params.append(f"catId={cat_id}") + if type_name: + params.append(f"type={quote(type_name)}") + params.append(f"page={pg}") + params.append("size=24") + return f"{HOST}/api/filter?{'&'.join(params)}" + + def _items_from_filter(self, data, cat_id=None): + """从 /api/filter 返回的JSON中提取影片列表""" + items = [] + movies = data.get("movies", []) + for m in movies: + vid = f"detail:{cat_id or 2}:{m.get('id', '')}" + cover = self._cover(m.get("cdncover") or m.get("cover", "")) + # 构建备注信息 + remarks = "" + if m.get("upinfo"): + remarks = str(m["upinfo"]) + elif m.get("total"): + remarks = f"{m['total']}集" + # 电影等没有upinfo时, 用年份+地区 + if not remarks: + year = self._year(m.get("pubdate", "")) + area = "" + if m.get("area"): + if isinstance(m["area"], list) and m["area"]: + area = m["area"][0] + else: + area = str(m["area"]) + parts = [p for p in [year, area] if p] + if parts: + remarks = " ".join(parts) + items.append({ + "vod_id": vid, + "vod_name": m.get("title", "").strip(), + "vod_pic": cover, + "vod_remarks": remarks, + "vod_year": self._year(m.get("pubdate", "")), + }) + return items + + def _extract_items_from_search_api(self, data): + """从搜索API返回的JSON中提取影片列表""" + global _search_cache + items = [] + results = data.get("results", []) + for item in results: + if "vod_name" in item: + # 苹果CMS格式 (外部源) + vod_id = str(item.get("vod_id", "")) + if not vod_id: + continue + source_key = item.get("sourceKey", "") + vid = f"search:{vod_id}:{source_key}" + pic = item.get("vod_pic", "") + if pic and pic.startswith("//"): + pic = "https:" + pic + # 缓存播放信息用于详情页 + _search_cache[vid] = { + "vod_name": item.get("vod_name", "").strip(), + "vod_pic": pic, + "vod_remarks": item.get("vod_remarks", ""), + "vod_year": item.get("vod_year", ""), + "vod_play_url": item.get("vod_play_url", ""), + "vod_play_from": item.get("vod_play_from", ""), + } + items.append({ + "vod_id": vid, + "vod_name": item.get("vod_name", "").strip(), + "vod_pic": pic, + "vod_remarks": item.get("vod_remarks", ""), + "vod_year": item.get("vod_year", ""), + }) + elif "title" in item: + # 360kan格式 + title = item.get("title", "").replace("", "").replace("", "").strip() + cat_id = item.get("cat_id", "") + en_id = item.get("en_id", "") + if not cat_id or not en_id: + continue + vid = f"detail:{cat_id}:{en_id}" + pic = item.get("cover", "") + if pic and pic.startswith("//"): + pic = "https:" + pic + items.append({ + "vod_id": vid, + "vod_name": title, + "vod_pic": pic, + "vod_remarks": item.get("cat_name", ""), + }) + return items + + def homeContent(self, filter=False): + classes = [] + for k, v in CLASS_MAP.items(): + classes.append({"type_id": k, "type_name": v[2]}) + return {"class": classes} + + def homeVideoContent(self): + try: + # 首页推荐: 从多个分类各取一些, 凑够50部左右 + all_items = [] + # 电影20条 + for cat_id, size in [(1, 20), (2, 15), (3, 8), (4, 7)]: + url = f"{HOST}/api/filter?catId={cat_id}&page=1&size={size}" + r = self.fetch(url, headers={"User-Agent": UA}, timeout=15000) + text = r.text if hasattr(r, 'text') else str(r) + data = json.loads(text) + items = self._items_from_filter(data, cat_id=cat_id) + all_items.extend(items) + return {"list": all_items} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=None): + """分类内容 - 调用 /api/filter API""" + try: + pn = 1 + try: + pn = max(int(str(pg)), 1) + except: + pass + + api_url = self._build_filter_url(tid, pn) + if not api_url: + return {"list": [], "page": pn, "pagecount": 1, "limit": 24, "total": 0} + + r = self.fetch(api_url, headers={"User-Agent": UA}, timeout=30000) + text = r.text if hasattr(r, 'text') else str(r) + data = json.loads(text) + + cat_id = CLASS_MAP.get(tid, (None, None, None))[0] + items = self._items_from_filter(data, cat_id=cat_id) + + total = data.get("total", 0) + # 估算总页数 + pagecount = (total // 24) + (1 if total % 24 else 0) if total else 1 + + return { + "list": items, + "page": pn, + "pagecount": max(pagecount, pn), + "limit": 24, + "total": total, + } + except Exception: + return {"list": [], "page": pg, "pagecount": 1, "limit": 24, "total": 0} + + def detailContent(self, ids): + """详情页 - 调用 /api/detail API""" + try: + vid = str(ids[0]) if ids else "" + if not vid: + return {"list": []} + + # 苹果CMS搜索结果的直接播放 + if vid.startswith("search:"): + return self._detail_from_search(vid) + + if not vid.startswith("detail:"): + return {"list": []} + + parts = vid.split(":", 2) + if len(parts) != 3: + return {"list": []} + + cat_id, hash_id = parts[1], parts[2] + if not cat_id or not hash_id: + return {"list": []} + + # 调用详情API + detail_url = f"{HOST}/api/detail?cat={cat_id}&id={hash_id}" + r = self.fetch(detail_url, headers={"User-Agent": UA, "Referer": HOST}, timeout=30000) + text = r.text if hasattr(r, 'text') else str(r) + data = json.loads(text) + + if data.get("errno") != 0 or not data.get("data"): + return {"list": []} + + d = data["data"] + + # 基本信息 + title = d.get("title", "") + cover = self._cover(d.get("cdncover") or d.get("cover", "")) + year = self._year(d.get("pubdate", "")) + area = ", ".join(d.get("area", [])) if isinstance(d.get("area"), list) else str(d.get("area", "")) + type_name = ", ".join(d.get("moviecategory", [])) if isinstance(d.get("moviecategory"), list) else str(d.get("moviecategory", "")) + director = ", ".join(d.get("director", [])) if isinstance(d.get("director"), list) else str(d.get("director", "")) + actor = ", ".join(d.get("actor", [])) if isinstance(d.get("actor"), list) else str(d.get("actor", "")) + content = d.get("description", "") + total = d.get("total", 0) + upinfo = d.get("upinfo", "") + remarks = str(upinfo) if upinfo else (f"{total}集" if total else "") + + # 收集所有平台的播放信息 + allepi = d.get("allepidetail", {}) + pld = d.get("playlinksdetail", {}) + + # 平台名称映射辅助函数 + def _platform_name(site): + return PLATFORM_NAMES.get(site, site) + + # 处理多集剧集 (TV series) - 有allepidetail时取第一个平台 + if allepi: + first_site = list(allepi.keys())[0] + episodes = allepi[first_site] + pf_list = [] + pu_list = [] + for api in PARSE_APIS: + ep_list = [] + for ep in episodes: + ep_num = ep.get("playlink_num", "") + ep_url = ep.get("url", "") + if not ep_url: + continue + parse_url = api["url"] + ep_url + ep_list.append(f"第{ep_num}集${parse_url}") + if ep_list: + pf_list.append(api["name"]) + pu_list.append("#".join(ep_list)) + + # 处理单集电影/短剧 - 列出所有平台的default_url + elif pld: + pf_list = [] + pu_list = [] + # 收集所有有default_url的平台 + platforms = [] + for site, info in pld.items(): + default_url = info.get("default_url", "") + if default_url: + platforms.append((site, default_url)) + if not platforms: + return {"list": []} + + for api in PARSE_APIS: + ep_list = [] + for site, url in platforms: + if not url: + continue + parse_url = api["url"] + url + ep_list.append(f"{_platform_name(site)}${parse_url}") + if ep_list: + pf_list.append(api["name"]) + pu_list.append("#".join(ep_list)) + + else: + return {"list": []} + + vod = { + "vod_id": vid, + "vod_name": title, + "vod_pic": cover, + "vod_year": year, + "vod_area": area, + "vod_class": type_name, + "vod_director": director, + "vod_actor": actor, + "vod_content": content, + "vod_remarks": remarks, + "vod_play_from": "$$$".join(pf_list), + "vod_play_url": "$$$".join(pu_list), + } + return {"list": [vod]} + except Exception: + return {"list": []} + + def _detail_from_search(self, vid): + """处理搜索结果的直接播放(苹果CMS格式)""" + global _search_cache + try: + cached = _search_cache.get(vid, {}) + if not cached or not cached.get("vod_play_url"): + return {"list": []} + # 从缓存构造详情 + return { + "list": [{ + "vod_id": vid, + "vod_name": cached.get("vod_name", ""), + "vod_pic": cached.get("vod_pic", ""), + "vod_remarks": cached.get("vod_remarks", ""), + "vod_year": cached.get("vod_year", ""), + "vod_play_from": cached.get("vod_play_from", "播放"), + "vod_play_url": cached.get("vod_play_url", ""), + }] + } + except: + return {"list": []} + + def searchContent(self, key, quick=False, pg=1): + """搜索 - 调用API""" + try: + pn = 1 + try: + pn = int(str(pg)) + except: + pass + url = f"{HOST}/api/search?q={quote(key)}" + if pn > 1: + url += f"&page={pn}" + r = self.fetch(url, headers={ + "User-Agent": UA, + "Accept": "application/json, text/plain, */*", + "Referer": HOST + "/", + }, timeout=30000) + text = r.text if hasattr(r, 'text') else str(r) + data = json.loads(text) + items = self._extract_items_from_search_api(data) + return {"list": items, "page": pn} + except: + return {"list": [], "page": 1} + + def playerContent(self, flag, id, vipFlags=None): + """播放 - 官源返回原始URL让壳子解析, 解析线路返回拼接URL""" + url = str(id) if id else str(flag) + if not url: + return {"url": ""} + # 去掉名称前缀 + if "$" in url: + parts = url.split("$", 1) + url = parts[1] + + # 如果是搜索结果的vod_id + if url.startswith("search:"): + return self._player_from_search(url) + + # m3u8直链直接播 + if url.startswith("http") and self.isVideoFormat(url): + return {"url": url} + + # 视频站链接 + if url.startswith("http"): + return { + "url": url, + "parse": 1, + "header": {"User-Agent": UA} + } + return {"url": url, "parse": 1, "header": {"User-Agent": UA}} + + def _player_from_search(self, vid): + """从搜索结果恢复播放链接""" + global _search_cache + try: + cached = _search_cache.get(vid, {}) + play_url = cached.get("vod_play_url", "") + if not play_url: + return {"url": ""} + # vod_play_url 格式: 第1集$URL#第2集$URL + # playerContent 传入的 id 已经是单集URL (带$前缀) + # 如果 vid 中没有 $ , 返回第一集 + if "$" in vid: + # 这种情况不应该发生, playerContent 已经处理了 $ + return {"url": ""} + # 返回第一集URL + first_ep = play_url.split("#")[0] + if "$" in first_ep: + url = first_ep.split("$")[1] + else: + url = first_ep + if url.startswith("http"): + return {"url": url, "parse": 0 if self.isVideoFormat(url) else 1} + return {"url": url} + except: + return {"url": ""} + + def localProxy(self, param): + pass diff --git a/jaychouqq/yingshi/py9/爱看机器人.py b/jaychouqq/yingshi/py9/爱看机器人.py new file mode 100644 index 00000000..f4b97c51 --- /dev/null +++ b/jaychouqq/yingshi/py9/爱看机器人.py @@ -0,0 +1,326 @@ +# -*- coding: utf-8 -*- +""" +ikanbot.com (我爱看播) 爬虫 +- 首页: 从 /hot/index-movie-热门.html 和 /hot/index-tv-热门.html 获取推荐 +- 分类: 按 movie/tv/anime/variety/documentary + 子筛选(热门/最新/华语/动作等) +- 搜索: /search?q={keyword} +- 播放: /api/getResN API获取m3u8直链 (无需解析线路) +""" +import sys +import re +import json +import requests as rq +from urllib.parse import quote + +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +def _(x): return x + +HOST = "https://www.ikanbot.com" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 分类配置 +# type_id -> {name, url_type, tag} +# url_type: 'hot' 用 /hot/index-{type}-{tag}.html +# 'category' 用 /category/{id}?p={page} +CLASS_MAP = { + # === 电影 === + "movie_hot": {"name": "电影·热门", "url_type": "hot", "cat": "movie", "tag": "热门"}, + "movie_new": {"name": "电影·最新", "url_type": "hot", "cat": "movie", "tag": "最新"}, + "movie_classic": {"name": "电影·经典", "url_type": "hot", "cat": "movie", "tag": "经典"}, + "movie_douban": {"name": "电影·豆瓣高分", "url_type": "hot", "cat": "movie", "tag": "豆瓣高分"}, + "movie_hidden": {"name": "电影·冷门佳片", "url_type": "hot", "cat": "movie", "tag": "冷门佳片"}, + "movie_cn": {"name": "电影·华语", "url_type": "hot", "cat": "movie", "tag": "华语"}, + "movie_us": {"name": "电影·欧美", "url_type": "hot", "cat": "movie", "tag": "欧美"}, + "movie_kr": {"name": "电影·韩国", "url_type": "hot", "cat": "movie", "tag": "韩国"}, + "movie_jp": {"name": "电影·日本", "url_type": "hot", "cat": "movie", "tag": "日本"}, + "movie_action": {"name": "电影·动作", "url_type": "hot", "cat": "movie", "tag": "动作"}, + "movie_comedy": {"name": "电影·喜剧", "url_type": "hot", "cat": "movie", "tag": "喜剧"}, + "movie_love": {"name": "电影·爱情", "url_type": "hot", "cat": "movie", "tag": "爱情"}, + "movie_scifi": {"name": "电影·科幻", "url_type": "hot", "cat": "movie", "tag": "科幻"}, + "movie_susp": {"name": "电影·悬疑", "url_type": "hot", "cat": "movie", "tag": "悬疑"}, + "movie_horror": {"name": "电影·恐怖", "url_type": "hot", "cat": "movie", "tag": "恐怖"}, + "movie_grow": {"name": "电影·成长", "url_type": "hot", "cat": "movie", "tag": "成长"}, + "movie_top250": {"name": "豆瓣top250", "url_type": "hot", "cat": "movie", "tag": "豆瓣top250"}, + # === 剧集 === + "tv_hot": {"name": "剧集·热门", "url_type": "hot", "cat": "tv", "tag": "热门"}, + "tv_new": {"name": "剧集·最新", "url_type": "hot", "cat": "tv", "tag": "最新"}, + "tv_us": {"name": "美剧", "url_type": "hot", "cat": "tv", "tag": "美剧"}, + "tv_uk": {"name": "英剧", "url_type": "hot", "cat": "tv", "tag": "英剧"}, + "tv_kr": {"name": "韩剧", "url_type": "hot", "cat": "tv", "tag": "韩剧"}, + "tv_jp": {"name": "日剧", "url_type": "hot", "cat": "tv", "tag": "日剧"}, + "tv_cn": {"name": "国产剧", "url_type": "hot", "cat": "tv", "tag": "国产剧"}, + "tv_hk": {"name": "港剧", "url_type": "hot", "cat": "tv", "tag": "港剧"}, + "tv_classic": {"name": "剧集·经典", "url_type": "hot", "cat": "tv", "tag": "经典"}, + "tv_douban": {"name": "剧集·豆瓣高分", "url_type": "hot", "cat": "tv", "tag": "豆瓣高分"}, + # === 动漫/综艺/纪录片 (用category保证内容准确) === + "anime": {"name": "动漫", "url_type": "category", "cat_id": 18}, + "variety": {"name": "综艺", "url_type": "category", "cat_id": 19}, + "documentary": {"name": "纪录片", "url_type": "category", "cat_id": 20}, +} + + +class Spider(Spider): + + def init(self, extend=""): + self._session = rq.Session() + self._session.headers.update({"User-Agent": UA}) + try: + self._session.get(HOST, timeout=10) + except: + pass + + def getName(self): + return "ikanbot" + + def isVideoFormat(self, url): + return ".m3u8" in url or ".mp4" in url or ".flv" in url + + def manualVideoCheck(self): + return False + + def homeContent(self, filter=False): + classes = [] + for tid, info in CLASS_MAP.items(): + classes.append({"type_id": tid, "type_name": info["name"]}) + return {"class": classes} + + def homeVideoContent(self): + try: + all_items = [] + # 电影热门 + items = self._fetch_hot_list("movie", "热门", 1, 24) + all_items.extend(items) + # 剧集热门 + items = self._fetch_hot_list("tv", "热门", 1, 24) + all_items.extend(items) + return {"list": all_items} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=None): + try: + pn = max(int(str(pg)), 1) + info = CLASS_MAP.get(tid) + if not info: + return {"list": [], "page": pn, "pagecount": 1, "limit": 24, "total": 0} + + url_type = info.get("url_type", "category") + if url_type == "hot": + cat = info["cat"] + tag = info["tag"] + items = self._fetch_hot_list(cat, tag, pn, 24) + else: + cat_id = info.get("cat_id", 1) + items = self._fetch_category_list(cat_id, pn, 48) + + return {"list": items, "page": pn, "pagecount": pn + 10, "limit": 24, "total": 0} + except: + return {"list": [], "page": pg, "pagecount": 1, "limit": 24, "total": 0} + + def detailContent(self, ids): + try: + vid = str(ids[0]) if ids else "" + if not vid: + return {"list": []} + + detail_url = f"{HOST}/play/{vid}" + r = self._get(detail_url, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + + etoken = self._extract(html, r'id="e_token"\s+value="([^"]+)"') + cid = self._extract(html, r'id="current_id"\s+value="([^"]+)"') + mtype = self._extract(html, r'id="mtype"\s+value="([^"]+)"') or "1" + title = self._extract(html, r']*>([^<]+)') or "" + # 封面: 从第一个data-src取 + cover = self._extract(html, r'data-src="([^"]+\.(?:jpg|png|webp))"') or "" + + if not cid or not etoken: + return {"list": []} + + token = self._gen_token(cid, etoken) + + api_url = f"{HOST}/api/getResN?videoId={cid}&mtype={mtype}&token={token}" + r2 = self._get(api_url, timeout=15000) + text = r2.text if hasattr(r2, 'text') else str(r2) + data = json.loads(text) + + if data.get("state") != 1: + return {"list": []} + + source_list = data.get("data", {}).get("list", []) + + pf_list = [] + pu_list = [] + for src in source_list: + site_id = src.get("siteId", "") + res_data = src.get("resData", "[]") + try: + episodes = json.loads(res_data) + except: + episodes = [] + + if not episodes: + continue + + ep_list = [] + for ep in episodes: + flag = ep.get("flag", f"线路{site_id}") + ep_url = ep.get("url", "") + if "$" in ep_url: + ep_name, ep_play_url = ep_url.split("$", 1) + else: + ep_name = ep_url[:30] + ep_play_url = ep_url + + if ep_play_url: + ep_list.append(f"{ep_name}${ep_play_url}") + + if ep_list: + pf_list.append(flag) + pu_list.append("#".join(ep_list)) + + vod = { + "vod_id": vid, + "vod_name": title, + "vod_pic": cover, + "vod_play_from": "$$$".join(pf_list), + "vod_play_url": "$$$".join(pu_list), + } + return {"list": [vod]} + except: + return {"list": []} + + def searchContent(self, key, quick=False, pg=1): + try: + url = f"{HOST}/search?q={quote(key)}" + items = self._fetch_search(url) + return {"list": items, "page": 1} + except: + return {"list": [], "page": 1} + + def playerContent(self, flag, id, vipFlags=None): + url = str(id) if id else str(flag) + if not url: + return {"url": ""} + if "$" in url: + parts = url.split("$", 1) + url = parts[1] + + if url.startswith("http"): + return {"url": url} + return {"url": url} + + def _get(self, url, timeout=15): + r = self._session.get(url, timeout=timeout) + r.encoding = 'utf-8' + return r + + def _extract(self, text, pattern): + m = re.search(pattern, text) + return m.group(1) if m else "" + + def _gen_token(self, current_id, e_token): + last4 = current_id[-4:] + parts = [] + tk = e_token + for ch in last4: + mod = int(ch) % 3 + 1 + part = tk[mod:mod + 8] + parts.append(part) + tk = tk[mod + 8:] + return "".join(parts) + + def _fetch_category_list(self, cat_id, page, limit): + """从 /category/{cat_id}?p={page} 抓取影片列表""" + url = f"{HOST}/category/{cat_id}?p={page}" + + r = self._get(url, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + + items = [] + pattern = re.compile( + r'' + r'[\s\S]*?' + r']+id="\d+"[^>]+alt="([^"]+)"' + r'(?:[^>]+data-src="([^"]+)")?' + ) + matches = pattern.findall(html) + for href, vid, title, cover in matches[:limit]: + # 没封面的在分类列表中隐藏 + if not cover or cover.startswith("data:"): + continue + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + return items + + def _fetch_hot_list(self, cat, tag, page, limit): + """从 /hot/index-{cat}-{tag}-p-{page}.html 抓取影片列表""" + if page > 1: + url = f"{HOST}/hot/index-{cat}-{tag}-p-{page}.html" + else: + url = f"{HOST}/hot/index-{cat}-{tag}.html" + + r = self._get(url, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + + items = [] + pattern = re.compile( + r'' + r'[\s\S]*?' + r']+id="\d+"[^>]+alt="([^"]+)"' + r'(?:[^>]+data-src="([^"]+)")?' + ) + matches = pattern.findall(html) + for href, vid, title, cover in matches[:limit]: + # 没封面的在分类列表中隐藏 + if not cover or cover.startswith("data:"): + continue + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + return items + + def _fetch_search(self, url): + r = self._get(url, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + + items = [] + seen = set() + pattern = re.compile( + r']+href="(/play/(\d+))"[^>]*>' + r'[\s\S]*?' + r']+id="\d+"[^>]+alt="([^"]+)"' + r'(?:[^>]+data-src="([^"]+)")?' + ) + matches = pattern.findall(html) + for href, vid, title, cover in matches: + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover or "", + "vod_remarks": "", + }) + return items + + def localProxy(self, param): + pass diff --git a/jaychouqq/yingshi/py9/网络直播.py b/jaychouqq/yingshi/py9/网络直播.py new file mode 100644 index 00000000..26029ef1 --- /dev/null +++ b/jaychouqq/yingshi/py9/网络直播.py @@ -0,0 +1,1260 @@ +# -*- coding: utf-8 -*- +# by @星河 +# 修复版本 - 参考最新三合一.js重构虎牙、斗鱼、B站直播逻辑 +# 修复:虎牙清晰度选择,确保ratio参数正确传递码率值 +# 修复:斗鱼切换分辨率只能播放1秒的问题(每次重新获取安全密钥和签名) +# 修复:B站使用特殊UA和WBI签名绕过-352风控 [^90^][^30^] +import json +import re +import sys +import time +import hashlib +import random +import urllib.parse +from base64 import b64decode, b64encode +from urllib.parse import parse_qs +import requests +from pyquery import PyQuery as pq +sys.path.append('..') +from base.spider import Spider +from concurrent.futures import ThreadPoolExecutor + + +class Spider(Spider): + + def init(self, extend=""): + # 初始化B站WBI密钥 + self.bili_wbi_keys = None + self.bili_wbi_expire = 0 + pass + + def getName(self): + return "直播" + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + headers = [ + { + # 特殊UA绕过B站风控 [^90^] + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0" + }, + { + "User-Agent": "Dart/3.4 (dart:io)" + } + ] + + excepturl = 'https://www.baidu.com' + + hosts = { + "huya": ["https://www.huya.com", "https://mp.huya.com"], + "douyu": "https://www.douyu.com", + "wangyi": "https://cc.163.com", + "bili": ["https://api.live.bilibili.com", "https://api.bilibili.com"] + } + + referers = { + "huya": "https://live.cdn.huya.com", + "douyu": "https://m.douyu.com", + "bili": "https://live.bilibili.com" + } + + playheaders = { + "wangyi": { + "User-Agent": "ExoPlayer", + "Connection": "Keep-Alive", + "Icy-MetaData": "1" + }, + "bili": { + 'Accept': '*/*', + 'Icy-MetaData': '1', + 'referer': 'https://live.bilibili.com', + 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36' + }, + 'huya': { + 'User-Agent': 'ExoPlayer', + 'Connection': 'Keep-Alive', + 'Icy-MetaData': '1' + }, + 'douyu': { + 'User-Agent': 'libmpv', + 'Icy-MetaData': '1' + } + } + + # WBI签名相关常量 [^30^] + MIXIN_KEY_ENC_TAB = [ + 46, 47, 18, 2, 53, 8, 23, 32, 15, 50, 10, 31, 58, 3, 45, 35, 27, 43, 5, 49, + 33, 9, 42, 19, 29, 28, 14, 39, 12, 38, 41, 13, 37, 48, 7, 16, 24, 55, 40, + 61, 26, 17, 0, 1, 60, 51, 30, 4, 22, 25, 54, 21, 56, 59, 6, 63, 57, 62, 11, + 36, 20, 34, 44, 52 + ] + + def _get_bili_wbi_keys(self): + """获取B站WBI密钥 [^30^]""" + try: + # 检查缓存 + if self.bili_wbi_keys and time.time() < self.bili_wbi_expire: + return self.bili_wbi_keys + + # 从导航接口获取 - 使用特殊UA [^90^] + resp = self.fetch( + 'https://api.bilibili.com/x/web-interface/nav', + headers={ + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36', + 'Referer': 'https://www.bilibili.com/' + } + ).json() + + if resp.get('code') != 0: + return None + + img_url = resp['data']['wbi_img']['img_url'] + sub_url = resp['data']['wbi_img']['sub_url'] + + # 提取文件名作为key + img_key = img_url.rsplit('/', 1)[1].split('.')[0] + sub_key = sub_url.rsplit('/', 1)[1].split('.')[0] + + self.bili_wbi_keys = (img_key, sub_key) + self.bili_wbi_expire = time.time() + 86400 # 24小时过期 + + return self.bili_wbi_keys + except Exception as e: + print(f"获取B站WBI密钥失败: {e}") + return None + + def _get_mixin_key(self, orig: str): + """生成mixin_key [^30^]""" + return ''.join([orig[i] for i in self.MIXIN_KEY_ENC_TAB])[:32] + + def _enc_wbi(self, params: dict): + """WBI签名 [^30^]""" + keys = self._get_bili_wbi_keys() + if not keys: + return params + + img_key, sub_key = keys + mixin_key = self._get_mixin_key(img_key + sub_key) + + # 添加时间戳 + params['wts'] = round(time.time()) + + # 排序参数 + params = dict(sorted(params.items())) + + # 过滤特殊字符 + params = { + k: ''.join(filter(lambda c: c not in "!'()*", str(v))) + for k, v in params.items() + } + + # 计算签名 + query = urllib.parse.urlencode(params) + w_rid = hashlib.md5((query + mixin_key).encode()).hexdigest() + + params['w_rid'] = w_rid + return params + + def process_bili(self): + """获取B站分类列表 - 使用WBI签名 [^30^]""" + try: + # 尝试获取分类列表 - 使用特殊UA和WBI签名 + params = {'need_entrance': 1, 'parent_id': 0} + signed_params = self._enc_wbi(params) + + data = self.fetch( + f'{self.hosts["bili"][0]}/room/v1/Area/getList', + params=signed_params, + headers=self.headers[0] + ).json() + + if data.get('code') == 0 and data.get('data'): + # 保存分类数据供后续使用 + self.bili_areas = data['data'] + return ('bili', [{'key': 'cate', 'name': '分类', + 'value': [{'n': i['name'], 'v': str(i['id'])} + for i in data['data']]}]) + return 'bili', None + except Exception as e: + print(f"bili处理错误: {e}") + # 使用默认分类 + return 'bili', [{'key': 'cate', 'name': '分类', + 'value': [{'n': '网游', 'v': '2'}, {'n': '手游', 'v': '3'}, + {'n': '单机', 'v': '6'}, {'n': '娱乐', 'v': '1'}, + {'n': '电台', 'v': '5'}, {'n': '虚拟主播', 'v': '9'}, + {'n': '生活', 'v': '10'}, {'n': '知识', 'v': '11'}, + {'n': '赛事', 'v': '13'}]}] + + def process_douyu(self): + try: + self.dyufdata = self.fetch( + f'{self.referers["douyu"]}/api/cate/list', + headers=self.headers[1] + ).json() + return ('douyu', [{'key': 'cate', 'name': '分类', + 'value': [{'n': i['cate1Name'], 'v': str(i['cate1Id'])} + for i in self.dyufdata['data']['cate1Info']]}]) + except Exception as e: + print(f"douyu错误: {e}") + return 'douyu', None + + def homeContent(self, filter): + result = {} + cateManual = { + "虎牙": "huya", + "斗鱼": "douyu", + "网易": "wangyi", + "B站": "bili" + } + classes = [] + filters = { + 'huya': [{'key': 'cate', 'name': '分类', + 'value': [{'n': '网游', 'v': '1'}, {'n': '单机', 'v': '2'}, + {'n': '娱乐', 'v': '8'}, {'n': '手游', 'v': '3'}]}] + } + + with ThreadPoolExecutor(max_workers=2) as executor: + futures = { + executor.submit(self.process_bili): 'bili', + executor.submit(self.process_douyu): 'douyu' + } + + for future in futures: + platform, filter_data = future.result() + if filter_data: + filters[platform] = filter_data + + for k in cateManual: + classes.append({ + 'type_name': k, + 'type_id': cateManual[k] + }) + + result['class'] = classes + result['filters'] = filters + return result + + def homeVideoContent(self): + pass + + def categoryContent(self, tid, pg, filter, extend): + vdata = [] + result = {} + pagecount = 9999 + result['page'] = pg + result['limit'] = 90 + result['total'] = 999999 + if tid == 'wangyi': + vdata, pagecount = self.wyccContent(tid, pg, filter, extend, vdata) + elif 'bili' in tid: + vdata, pagecount = self.biliContent(tid, pg, filter, extend, vdata) + elif 'huya' in tid: + vdata, pagecount = self.huyaContent(tid, pg, filter, extend, vdata) + elif 'douyu' in tid: + vdata, pagecount = self.douyuContent(tid, pg, filter, extend, vdata) + result['list'] = vdata + result['pagecount'] = pagecount + return result + + def wyccContent(self, tid, pg, filter, extend, vdata): + params = { + 'format': 'json', + 'start': (int(pg) - 1) * 20, + 'size': '20', + } + response = self.fetch(f'{self.hosts[tid]}/api/category/live/', params=params, headers=self.headers[0]).json() + for i in response['lives']: + if i.get('cuteid'): + bvdata = self.buildvod( + vod_id=f"{tid}@@{i['cuteid']}", + vod_name=i.get('title'), + vod_pic=i.get('cover'), + vod_remarks=i.get('nickname'), + style={"type": "rect", "ratio": 1.33} + ) + vdata.append(bvdata) + return vdata, 9999 + + def biliContent(self, tid, pg, filter, extend, vdata): + """B站分类内容 - 使用WBI签名绕过风控 [^30^][^90^]""" + try: + # 分类列表 - 显示子分类 + if extend.get('cate') and pg == '1' and 'click' not in tid: + # 从已保存的分类数据中找到对应分类的子分类 + if hasattr(self, 'bili_areas'): + for area in self.bili_areas: + if str(area['id']) == extend['cate']: + for sub_area in area.get('list', []): + v = self.buildvod( + vod_id=f"click_{tid}@@{extend['cate']}@@{sub_area['id']}", + vod_name=sub_area.get('name'), + vod_pic=sub_area.get('pic'), + vod_tag=1, + style={"type": "oval", "ratio": 1} + ) + vdata.append(v) + return vdata, 1 + # 如果没有找到子分类,直接返回空,让用户进入房间列表 + return vdata, 1 + + # 房间列表 - 使用getList接口并添加WBI签名 [^30^] + if 'click' in tid: + # 子分类房间 + ids = tid.split('_')[1].split('@@') + tid = ids[0] + parent_area_id = ids[1] + area_id = ids[2] + else: + # 默认使用分类ID作为parent_area_id,area_id为0表示该分类下所有 + parent_area_id = extend.get('cate', '2') # 默认网游 + area_id = 0 + + # 构建请求参数并添加WBI签名 [^30^] + params = { + 'parent_area_id': parent_area_id, + 'area_id': area_id, + 'page': pg, + 'platform': 'web', + 'sort_type': 'online' # 按热度排序 + } + signed_params = self._enc_wbi(params) + + # 调用getList接口 + api_url = f'{self.hosts[tid][0]}/xlive/web-interface/v1/second/getList' + data = self.fetch(api_url, params=signed_params, headers=self.headers[0]).json() + + # 如果WBI签名失败,尝试不带签名 + if data.get('code') == -352: + print("WBI签名失败,尝试无签名请求...") + params = { + 'parent_area_id': parent_area_id, + 'area_id': area_id, + 'page': pg, + 'platform': 'web', + 'sort_type': 'online' + } + data = self.fetch(api_url, params=params, headers=self.headers[0]).json() + + if data.get('code') == 0: + room_list = data.get('data', {}).get('list', []) + for room in room_list: + if room.get('roomid'): + # 处理在线人数显示 + online = room.get('online', 0) + if online > 10000: + online_str = f"{online / 10000:.1f}万" + else: + online_str = str(online) + + v = self.buildvod( + f"{tid}@@{room['roomid']}", + room.get('title', '未知标题'), + room.get('cover') or room.get('system_cover'), + f"{online_str}人", + 0, + room.get('uname', ''), + style={"type": "rect", "ratio": 1.33} + ) + vdata.append(v) + + # 检查是否有更多数据 + has_more = data.get('data', {}).get('has_more', 0) + if not has_more: + pagecount = int(pg) + else: + pagecount = 9999 + else: + print(f"B站API返回错误: {data.get('message', '未知错误')} (code: {data.get('code')})") + pagecount = 1 + + return vdata, pagecount + + except Exception as e: + print(f"B站内容获取错误: {e}") + return vdata, 1 + + def huyaContent(self, tid, pg, filter, extend, vdata): + if extend.get('cate') and pg == '1' and 'click' not in tid: + id = extend.get('cate') + data = self.fetch(f'{self.referers[tid]}/liveconfig/game/bussLive?bussType={id}', + headers=self.headers[1]).json() + for i in data['data']: + v = self.buildvod( + vod_id=f"click_{tid}@@{int(i['gid'])}", + vod_name=i.get('gameFullName'), + vod_pic=f'https://huyaimg.msstatic.com/cdnimage/game/{int(i["gid"])}-MS.jpg', + vod_tag=1, + style={"type": "oval", "ratio": 1} + ) + vdata.append(v) + return vdata, 1 + else: + gid = '' + if 'click' in tid: + ids = tid.split('_')[1].split('@@') + tid = ids[0] + gid = f'&gameId={ids[1]}' + data = self.fetch(f'{self.hosts[tid][0]}/cache.php?m=LiveList&do=getLiveListByPage&tagAll=0{gid}&page={pg}', + headers=self.headers[1]).json() + for i in data['data']['datas']: + if i.get('profileRoom'): + v = self.buildvod( + f"{tid}@@{i['profileRoom']}", + i.get('introduction'), + i.get('screenshot'), + str(int(i.get('totalCount', '1')) / 10000) + '万', + 0, + i.get('nick'), + style={"type": "rect", "ratio": 1.33} + + ) + vdata.append(v) + return vdata, 9999 + + def douyuContent(self, tid, pg, filter, extend, vdata): + if extend.get('cate') and pg == '1' and 'click' not in tid: + for i in self.dyufdata['data']['cate2Info']: + if str(i['cate1Id']) == extend['cate']: + v = self.buildvod( + vod_id=f"click_{tid}@@{i['cate2Id']}", + vod_name=i.get('cate2Name'), + vod_pic=i.get('icon'), + vod_remarks=i.get('count'), + vod_tag=1, + style={"type": "oval", "ratio": 1} + ) + vdata.append(v) + return vdata, 1 + else: + path = f'/japi/weblist/apinc/allpage/6/{pg}' + if 'click' in tid: + ids = tid.split('_')[1].split('@@') + tid = ids[0] + path = f'/gapi/rkc/directory/mixList/2_{ids[1]}/{pg}' + url = f'{self.hosts[tid]}{path}' + data = self.fetch(url, headers=self.headers[1]).json() + for i in data['data']['rl']: + v = self.buildvod( + vod_id=f"{tid}@@{i['rid']}", + vod_name=i.get('rn'), + vod_pic=i.get('rs16'), + vod_year=str(int(i.get('ol', 1)) / 10000) + '万', + vod_remarks=i.get('nn'), + style={"type": "rect", "ratio": 1.33} + ) + vdata.append(v) + return vdata, 9999 + + def detailContent(self, ids): + ids = ids[0].split('@@') + if ids[0] == 'wangyi': + vod = self.wyccDetail(ids) + elif ids[0] == 'bili': + vod = self.biliDetail(ids) + elif ids[0] == 'huya': + vod = self.huyaDetail(ids) + elif ids[0] == 'douyu': + vod = self.douyuDetail(ids) + return {'list': [vod]} + + def wyccDetail(self, ids): + try: + vdata = self.getpq(f'{self.hosts[ids[0]]}/{ids[1]}', self.headers[0])('script').eq(-1).text() + + def get_quality_name(vbr): + if vbr <= 600: + return "标清" + elif vbr <= 1000: + return "高清" + elif vbr <= 2000: + return "超清" + else: + return "蓝光" + + data = json.loads(vdata)['props']['pageProps']['roomInfoInitData'] + name = data['live'].get('title', ids[0]) + vod = self.buildvod(vod_name=data.get('keywords_suffix'), vod_remarks=data['live'].get('title'), + vod_content=data.get('description_suffix')) + resolution_data = data['live']['quickplay']['resolution'] + all_streams = {} + sorted_qualities = sorted(resolution_data.items(), + key=lambda x: x[1]['vbr'], + reverse=True) + for quality, data in sorted_qualities: + vbr = data['vbr'] + quality_name = get_quality_name(vbr) + for cdn_name, url in data['cdn'].items(): + if cdn_name not in all_streams and type(url) == str and url.startswith('http'): + all_streams[cdn_name] = [] + if isinstance(url, str) and url.startswith('http'): + all_streams[cdn_name].extend([quality_name, url]) + plists = [] + names = [] + for i, (cdn_name, stream_list) in enumerate(all_streams.items(), 1): + names.append(f'线路{i}') + pstr = f"{name}${ids[0]}@@{self.e64(json.dumps(stream_list))}" + plists.append(pstr) + vod['vod_play_from'] = "$$$".join(names) + vod['vod_play_url'] = "$$$".join(plists) + return vod + except Exception as e: + return self.handle_exception(e) + + def biliDetail(self, ids): + """ + B站直播详情 - 使用playUrl接口获取多清晰度 + """ + try: + room_id = ids[1] + + # 获取房间信息 + info_res = self.fetch( + f'{self.hosts["bili"][0]}/room/v1/Room/get_info?room_id={room_id}', + headers=self.headers[0] + ).json() + + if info_res.get('code') != 0: + return self.handle_exception(Exception("获取房间信息失败")) + + room_info = info_res['data'] + title = room_info.get('title', 'B站直播') + + vod = self.buildvod( + vod_name=title, + type_name=f"{room_info.get('parent_area_name', '')}/{room_info.get('area_name', '')}", + vod_director=room_info.get('uname', ''), + vod_remarks=f"在线{room_info.get('online', 0)}人" + ) + + # 获取播放地址信息 + play_res = self.fetch( + f'{self.hosts["bili"][0]}/room/v1/Room/playUrl?cid={room_id}&qn=10000&platform=web', + headers={ + **self.headers[0], + 'Referer': 'https://live.bilibili.com/', + 'Origin': 'https://live.bilibili.com' + } + ).json() + + if play_res.get('code') != 0: + return self.handle_exception(Exception("获取播放地址失败")) + + play_data = play_res['data'] + accept_quality = play_data.get('accept_quality', ['10000', '400', '250', '150']) + quality_desc = {item['qn']: item['desc'] for item in play_data.get('quality_description', [])} + + # 构建清晰度列表 + qualities = [] + for qn in sorted([int(q) for q in accept_quality], reverse=True): + desc = quality_desc.get(qn, f'清晰度{qn}') + qualities.append(f"{desc}$bili@@{room_id}@@{qn}") + + vod['vod_play_from'] = 'B站直播' + vod['vod_play_url'] = '#'.join(qualities) + return vod + + except Exception as e: + print(f"B站详情错误: {e}") + return self.handle_exception(e) + + def huyaDetail(self, ids): + """ + 虎牙播放详情 - 参考最新三合一.js重构 + 支持多线路多清晰度选择 + 核心算法:通过房间信息API获取uid、streamName和rateArray,为每个清晰度生成签名URL + 清晰度说明: + - 蓝光8M/6M/4M/10M = 8000/6000/4000/10000 kbps = 1080P+ + - 蓝光 = 3000 kbps = 1080P + - 超清 = 2000 kbps = 1080P (官方标准) + - 高清 = 1200 kbps = 720P + - 标清/流畅 = 500-800 kbps = 480P/540P + """ + try: + room_id = ids[1] + + # 1. 获取房间信息 + api_url = f'{self.hosts[ids[0]][1]}/cache.php?m=Live&do=profileRoom&roomid={room_id}' + res = self.fetch(api_url, headers=self.headers[0]) + + if res.status_code != 200: + return self.handle_exception(Exception(f"API请求失败: {res.status_code}")) + + data = res.json() + if not data or not data.get('data'): + return self.handle_exception(Exception("房间数据为空")) + + room_data = data['data'] + + # 2. 提取关键信息 + uid = room_data.get('profileInfo', {}).get('uid') + stream_info = room_data.get('stream', {}) + live_data = room_data.get('liveData', {}) + + if not uid: + return self.handle_exception(Exception("缺少uid")) + + # 3. 获取streamName和码率信息 + base_stream_list = stream_info.get('baseSteamInfoList', []) + if not base_stream_list: + return self.handle_exception(Exception("无直播流信息")) + + # 获取第一个CDN的streamName作为基准 + base_stream = base_stream_list[0] + stream_name = base_stream.get('sStreamName') + if not stream_name: + return self.handle_exception(Exception("无法获取streamName")) + + # 4. 构建VOD对象 + vod = self.buildvod( + vod_name=live_data.get('introduction', '虎牙直播'), + type_name=live_data.get('gameFullName', ''), + vod_director=live_data.get('nick', ''), + vod_remarks=live_data.get('contentIntro', ''), + ) + + # 5. 获取所有CDN线路 + cdn_list = [] + for stream in base_stream_list: + cdn_type = stream.get('sCdnType', 'AL') + flv_url = stream.get('sFlvUrl', '') + hls_url = stream.get('sHlsUrl', '') + stream_name_cdn = stream.get('sStreamName', stream_name) + + if flv_url: + cdn_list.append({ + 'cdn': cdn_type, + 'flv_base': flv_url, + 'hls_base': hls_url, + 'stream_name': stream_name_cdn, + 'priority': stream.get('iWebPriorityRate', 0) + }) + + # 按优先级排序 + cdn_list.sort(key=lambda x: x['priority'], reverse=True) + + # 6. 获取清晰度列表 (rateArray) + rate_array = stream_info.get('rateArray', []) + + # 如果没有rateArray,尝试从vMultiStreamInfo获取 + if not rate_array and 'vMultiStreamInfo' in room_data: + rate_array = room_data['vMultiStreamInfo'] + + # 如果仍然没有,使用默认清晰度(按虎牙官方标准) + if not rate_array: + rate_array = [ + {'sDisplayName': '蓝光4M', 'iBitRate': 4000}, + {'sDisplayName': '蓝光', 'iBitRate': 3000}, + {'sDisplayName': '超清', 'iBitRate': 2000}, # 2000kbps = 1080P + {'sDisplayName': '高清', 'iBitRate': 1200}, # 1200kbps = 720P + {'sDisplayName': '流畅', 'iBitRate': 500} + ] + + # 过滤和排序清晰度 + # 虎牙的rateArray中,iBitRate就是码率值,sDisplayName是显示名称 + # 需要确保:超清=2000kbps(1080P),高清=1200kbps(720P) + filtered_rates = [] + seen_bitrates = set() + + for rate in rate_array: + bit_rate = rate.get('iBitRate', 0) + name = rate.get('sDisplayName', '') + + # 跳过重复的码率 + if bit_rate in seen_bitrates: + continue + + # 修正清晰度名称,确保符合虎牙标准 + # 2000kbps应该是超清(1080P),不是高清 + if bit_rate == 2000 and ('高清' in name or '720' in name): + name = '超清' # 强制修正为超清 + elif bit_rate == 1200 and ('标清' in name or '480' in name): + name = '高清' # 1200kbps对应高清 + elif bit_rate == 2000 and name == '原画': + name = '超清' # 修正原画为超清 + + seen_bitrates.add(bit_rate) + filtered_rates.append({ + 'sDisplayName': name, + 'iBitRate': bit_rate + }) + + # 按码率从高到低排序 + sorted_rates = sorted(filtered_rates, key=lambda x: x['iBitRate'], reverse=True) + + # 7. 为每个CDN生成各清晰度的播放URL + play_lines = [] + line_names = [] + + for cdn_idx, cdn in enumerate(cdn_list[:3]): # 最多取3个CDN + cdn_name = cdn['cdn'] + line_names.append(f"线路{cdn_idx + 1}({cdn_name})") + + qualities = [] + for rate in sorted_rates: + quality_name = rate['sDisplayName'] + bit_rate = rate['iBitRate'] + + # 生成该清晰度的URL + quality_url = self._generate_huya_play_url( + cdn, uid, stream_name, bit_rate + ) + + qualities.extend([quality_name, quality_url]) + + # 编码该线路的所有清晰度 + encoded_qualities = self.e64(json.dumps(qualities)) + play_lines.append(f"{live_data.get('introduction', '直播')}${ids[0]}@@{encoded_qualities}") + + # 8. 构建播放数据 + vod['vod_play_from'] = "$$$".join(line_names) + vod['vod_play_url'] = "$$$".join(play_lines) + + return vod + + except Exception as e: + return self.handle_exception(e) + + def _generate_huya_play_url(self, cdn, uid, stream_name, bit_rate): + """ + 生成虎牙播放URL,参考最新三合一.js算法 + 关键:ratio参数必须正确设置为iBitRate值(如2000、4000等) + """ + # 基础URL构建 + flv_base = cdn['flv_base'] + stream = cdn['stream_name'] + + # 生成时间戳和签名参数 + timestamp = int(time.time()) + seqid = f"{uid}{timestamp}" + ss = hashlib.md5(f"{seqid}|huya_adr|102".encode()).hexdigest() + ws_time = hex(timestamp + 21600)[2:] # 16进制,有效期6小时 + + # 计算wsSecret + ws_secret = hashlib.md5( + f"DWq8BcJ3h6DJt6TY_{uid}_{stream_name}_{ss}_{ws_time}".encode() + ).hexdigest() + + # 构建基础URL + base_url = f"{flv_base}/{stream}.flv" + + # 关键修复:ratio参数直接使用iBitRate值 + # 超清=2000,高清=1200,蓝光=3000/4000/6000/8000 + if bit_rate > 0: + ratio_param = f"ratio={bit_rate}" + else: + # 原画/0码率时,使用默认2000或从URL推断 + ratio_param = "ratio=2000" + + # 构建完整URL + play_url = ( + f"{base_url}?{ratio_param}&wsSecret={ws_secret}&wsTime={ws_time}" + f"&ctype=huya_adr&seqid={seqid}&uid={uid}" + f"&fs=bgct&ver=1&t=102" + ) + + return play_url + + def douyuDetail(self, ids): + """ + 斗鱼播放详情 - 参考最新三合一.js重构 + 核心算法:设备ID生成 -> 获取加密密钥 -> 计算签名 -> 获取播放地址 + 修复:切换分辨率只能播放1秒的问题 + 方案:存储房间号和码率信息,在playerContent中实时获取对应码率的URL + """ + try: + channel = ids[1] + headers = self.gethr(0, zr=f'{self.hosts[ids[0]]}/{channel}') + + # 1. 初始化会话和设备ID (参考JS中的initialize和setupDeviceId) + session = {} + + # 请求首页获取Cookie + try: + home_res = self.fetch(f'{self.hosts[ids[0]]}/{channel}', headers=headers) + if home_res.headers.get('Set-Cookie'): + cookie_str = home_res.headers.get('Set-Cookie') + # 解析dy_did + did_match = re.search(r'dy_did=([a-f0-9]{32})', cookie_str) + if did_match: + device_id = did_match.group(1) + else: + device_id = self._generate_random_hex(32) + else: + device_id = self._generate_random_hex(32) + except: + device_id = self._generate_random_hex(32) + + session['dy_did'] = device_id + session['mantine-color-scheme-value'] = 'light' + + # 2. 获取房间基本信息 + betard_res = self.fetch(f'{self.hosts[ids[0]]}/betard/{channel}', headers=headers).json() + if not betard_res or not betard_res.get('room'): + return self.handle_exception(Exception("获取房间信息失败")) + + room_info = betard_res['room'] + vname = room_info.get('room_name', '斗鱼直播') + + vod = self.buildvod( + vod_name=vname, + vod_remarks=room_info.get('second_lvl_name', ''), + vod_director=room_info.get('nickname', ''), + ) + + # 3. 获取安全密钥 (参考JS中的getSecurityKey) + sec_url = f"{self.hosts[ids[0]]}/wgapi/livenc/liveweb/websec/getEncryption?did={device_id}" + sec_res = self.fetch(sec_url, headers=headers).json() + + if not sec_res or sec_res.get('error') != 0: + return self.handle_exception(Exception("获取加密密钥失败")) + + security_data = sec_res['data'] + secret_key = security_data.get('key') + random_str = security_data.get('rand_str') + enc_time = security_data.get('enc_time', 1) + enc_data = security_data.get('enc_data') + + # 4. 计算签名 (参考JS中的computeSignature) + current_time = int(time.time()) + + # 迭代计算MD5 + current = random_str + for _ in range(enc_time): + current = hashlib.md5(f"{current}{secret_key}".encode()).hexdigest() + + signature = hashlib.md5(f"{current}{secret_key}{channel}{current_time}".encode()).hexdigest() + + # 5. 请求播放地址 (参考JS中的requestStreamData) + play_payload = { + 'enc_data': enc_data, + 'tt': str(current_time), + 'did': device_id, + 'auth': signature, + 'cdn': '', + 'rate': '', + 'hevc': '0', + 'fa': '0', + 'ive': '0' + } + + play_api = f"{self.hosts[ids[0]]}/lapi/live/getH5PlayV1/{channel}" + + # 构建请求头带Cookie + play_headers = headers.copy() + cookie_str = '; '.join([f"{k}={v}" for k, v in session.items()]) + play_headers['Cookie'] = cookie_str + play_headers['Content-Type'] = 'application/x-www-form-urlencoded' + + play_res = requests.post(play_api, data=play_payload, headers=play_headers, timeout=10).json() + + if not play_res or play_res.get('error') != 0: + # 尝试旧版API + play_res = self._try_legacy_douyu_api(channel, device_id, signature, current_time, play_headers) + if not play_res: + return self.handle_exception(Exception("获取播放地址失败")) + + stream_info = play_res.get('data', {}) + + # 6. 检查并更新设备ID (参考JS中的checkAndUpdateDeviceId) + rtmp_live = stream_info.get('rtmp_live', '') + if rtmp_live: + did_match = re.search(r'did=([a-f0-9]{32})', rtmp_live) + if did_match and did_match.group(1) != device_id: + device_id = did_match.group(1) + session['dy_did'] = device_id + # 重新请求 + play_payload['did'] = device_id + play_res = requests.post(play_api, data=play_payload, headers=play_headers, timeout=10).json() + if play_res and play_res.get('error') == 0: + stream_info = play_res.get('data', {}) + + # 7. 提取播放URL和多码率信息 + stream_url = None + if stream_info.get('rtmp_url') and stream_info.get('rtmp_live'): + stream_url = f"{stream_info['rtmp_url']}/{stream_info['rtmp_live']}" + elif stream_info.get('hls_url'): + stream_url = stream_info['hls_url'] + + if not stream_url: + return self.handle_exception(Exception("无法获取播放地址")) + + # 8. 构建多码率选项 + multirates = stream_info.get('multirates', []) + + # 关键修复:存储房间号和码率信息,而不是直接存储URL + # 这样在切换清晰度时可以重新获取对应码率的签名URL + qualities = [] + + if multirates: + # 按码率排序 + sorted_rates = sorted(multirates, key=lambda x: x.get('bit', 0), reverse=True) + for rate in sorted_rates: + bit_rate = rate.get('rate', -1) + name = rate.get('name', f"{bit_rate}P") + + # 存储格式:码率值,用于playerContent中重新获取URL + # 使用特殊标记#来区分这是码率值而不是URL + qualities.extend([name, f"#{bit_rate}"]) + else: + # 只有原画 + qualities = ['原画', '#-1'] + + # 同时存储房间号和设备信息,用于重新获取URL + # 格式:房间号|设备ID|签名信息(base64编码) + session_info = { + 'channel': channel, + 'device_id': device_id, + 'secret_key': secret_key, + 'random_str': random_str, + 'enc_time': enc_time, + 'enc_data': enc_data + } + encoded_session = self.e64(json.dumps(session_info)) + + # 9. 构建播放数据 + # vod_play_url格式:房间名$平台@@base64(清晰度列表)@@base64(会话信息) + encoded_qualities = self.e64(json.dumps(qualities)) + vod['vod_play_from'] = '斗鱼直播' + vod['vod_play_url'] = f"{vname}${ids[0]}@@{encoded_qualities}@@{encoded_session}" + + return vod + + except Exception as e: + return self.handle_exception(e) + + def _generate_random_hex(self, length): + """生成随机十六进制字符串""" + hex_chars = '0123456789abcdef' + return ''.join(random.choice(hex_chars) for _ in range(length)) + + def _try_legacy_douyu_api(self, channel, device_id, signature, timestamp, headers): + """尝试使用旧版API获取播放地址""" + try: + legacy_payload = { + 'did': device_id, + 'tt': str(timestamp), + 'sign': signature, + 'cdn': '', + 'rate': '-1', + 'ver': 'Douyu_223061205', + 'iar': '1', + 'ive': '1', + 'hevc': '0', + 'fa': '0' + } + legacy_api = f"https://www.douyu.com/lapi/live/getH5Play/{channel}" + res = requests.post(legacy_api, data=legacy_payload, headers=headers, timeout=10) + return res.json() if res.status_code == 200 else None + except: + return None + + def _get_douyu_play_url(self, channel, device_id, secret_key, random_str, enc_time, enc_data, rate): + """ + 获取斗鱼指定码率的播放URL(带签名) + 用于切换清晰度时重新获取URL + """ + try: + current_time = int(time.time()) + + # 重新计算签名 + current = random_str + for _ in range(enc_time): + current = hashlib.md5(f"{current}{secret_key}".encode()).hexdigest() + + signature = hashlib.md5(f"{current}{secret_key}{channel}{current_time}".encode()).hexdigest() + + # 构建请求 + play_payload = { + 'enc_data': enc_data, + 'tt': str(current_time), + 'did': device_id, + 'auth': signature, + 'cdn': '', + 'rate': str(rate) if rate > 0 else '', + 'hevc': '0', + 'fa': '0', + 'ive': '0' + } + + play_api = f"https://www.douyu.com/lapi/live/getH5PlayV1/{channel}" + + headers = { + 'User-Agent': self.headers[0]['User-Agent'], + 'Referer': f'https://www.douyu.com/{channel}', + 'Origin': 'https://www.douyu.com', + 'Cookie': f'dy_did={device_id}; mantine-color-scheme-value=light', + 'Content-Type': 'application/x-www-form-urlencoded' + } + + play_res = requests.post(play_api, data=play_payload, headers=headers, timeout=10).json() + + if not play_res or play_res.get('error') != 0: + # 尝试旧版API + return self._get_douyu_play_url_legacy(channel, device_id, signature, current_time, rate) + + stream_info = play_res.get('data', {}) + + # 检查设备ID是否匹配 + if stream_info.get('rtmp_live'): + did_match = re.search(r'did=([a-f0-9]{32})', stream_info['rtmp_live']) + if did_match and did_match.group(1) != device_id: + # 设备ID不匹配,使用新设备ID重新获取 + return self._get_douyu_play_url(channel, did_match.group(1), secret_key, random_str, enc_time, enc_data, rate) + + if stream_info.get('rtmp_url') and stream_info.get('rtmp_live'): + return f"{stream_info['rtmp_url']}/{stream_info['rtmp_live']}" + elif stream_info.get('hls_url'): + return stream_info['hls_url'] + + return None + except Exception as e: + print(f"获取斗鱼播放URL失败: {e}") + return None + + def _get_douyu_play_url_legacy(self, channel, device_id, signature, timestamp, rate): + """使用旧版API获取斗鱼播放URL""" + try: + legacy_payload = { + 'did': device_id, + 'tt': str(timestamp), + 'sign': signature, + 'cdn': '', + 'rate': str(rate) if rate > 0 else '-1', + 'ver': 'Douyu_223061205', + 'iar': '1', + 'ive': '1', + 'hevc': '0', + 'fa': '0' + } + legacy_api = f"https://www.douyu.com/lapi/live/getH5Play/{channel}" + + headers = { + 'User-Agent': self.headers[0]['User-Agent'], + 'Referer': f'https://www.douyu.com/{channel}', + 'Cookie': f'dy_did={device_id}', + 'Content-Type': 'application/x-www-form-urlencoded' + } + + res = requests.post(legacy_api, data=legacy_payload, headers=headers, timeout=10) + if res.status_code == 200: + data = res.json() + if data.get('error') == 0: + stream_info = data.get('data', {}) + if stream_info.get('rtmp_url') and stream_info.get('rtmp_live'): + return f"{stream_info['rtmp_url']}/{stream_info['rtmp_live']}" + return None + except: + return None + + def searchContent(self, key, quick, pg="1"): + pass + + def playerContent(self, flag, id, vipFlags): + try: + ids = id.split('@@') + p = 1 + if ids[0] in ['wangyi']: + p, url = 0, json.loads(self.d64(ids[1])) + elif ids[0] == 'bili': + p, url = self.biliplay(ids) + elif ids[0] == 'huya': + p, url = self.huyaplay(ids) + elif ids[0] == 'douyu': + p, url = self.douyuplay(ids) + return {'parse': p, 'url': url, 'header': self.playheaders[ids[0]]} + except Exception as e: + return {'parse': 1, 'url': self.excepturl, 'header': self.headers[0]} + + def biliplay(self, ids): + """ + B站播放解析 - 使用playUrl接口获取指定清晰度直播流 + ids: [平台, 房间号, 清晰度qn] + 支持多线路返回 + """ + try: + room_id = ids[1] + qn = ids[2] if len(ids) > 2 else '10000' + + # 使用playUrl接口获取直播流 + play_url = f'{self.hosts["bili"][0]}/room/v1/Room/playUrl?cid={room_id}&qn={qn}&platform=web' + data = self.fetch(play_url, headers={ + **self.headers[0], + 'Referer': 'https://live.bilibili.com/', + 'Origin': 'https://live.bilibili.com' + }).json() + + if data.get('code') != 0: + return 1, self.excepturl + + play_data = data['data'] + durl_list = play_data.get('durl', []) + + if not durl_list: + return 1, self.excepturl + + # 构建多线路结果 [线路1, URL1, 线路2, URL2, ...] + urls = [] + for idx, item in enumerate(durl_list, 1): + url = item.get('url') + if url: + urls.extend([f'线路{idx}', url]) + + # 如果只有一条线路,直接返回URL + if len(urls) == 2: + return 0, urls[1] # 直接返回URL字符串 + + return 0, urls + + except Exception as e: + print(f"B站播放错误: {e}") + return 1, self.excepturl + + def huyaplay(self, ids): + """ + 虎牙播放解析 - 返回所有清晰度选项供用户选择 + ids[1] 格式: base64编码的 [清晰度名称1, URL1, 清晰度名称2, URL2, ...] + """ + try: + # ids[1] 是编码后的播放地址列表 [名称1, URL1, 名称2, URL2, ...] + decoded = json.loads(self.d64(ids[1])) + # decoded 是一个列表,奇数索引是名称,偶数索引是URL + return 0, decoded + except Exception as e: + print(f"虎牙播放解析错误: {e}") + return 1, self.excepturl + + def douyuplay(self, ids): + """ + 斗鱼播放解析 - 实时获取对应码率的播放URL + ids格式: [平台, base64(清晰度列表), base64(会话信息)] + 清晰度列表: [名称1, #码率1, 名称2, #码率2, ...] + #表示这是码率值,需要重新获取URL + """ + try: + if len(ids) < 3: + # 兼容旧格式 + decoded = json.loads(self.d64(ids[1])) + return 0, decoded + + # 解析清晰度列表和会话信息 + qualities = json.loads(self.d64(ids[1])) + session_info = json.loads(self.d64(ids[2])) + + channel = session_info['channel'] + device_id = session_info['device_id'] + secret_key = session_info['secret_key'] + random_str = session_info['random_str'] + enc_time = session_info['enc_time'] + enc_data = session_info['enc_data'] + + # 为每个清晰度实时获取播放URL + result = [] + for i in range(0, len(qualities), 2): + name = qualities[i] + rate_marker = qualities[i + 1] + + # 解析码率值(去掉#前缀) + if rate_marker.startswith('#'): + rate = int(rate_marker[1:]) + else: + rate = -1 + + # 实时获取对应码率的URL + play_url = self._get_douyu_play_url( + channel, device_id, secret_key, random_str, + enc_time, enc_data, rate + ) + + if play_url: + result.extend([name, play_url]) + + if not result: + return 1, self.excepturl + + return 0, result + except Exception as e: + print(f"斗鱼播放解析错误: {e}") + return 1, self.excepturl + + def localProxy(self, param): + pass + + def e64(self, text): + try: + text_bytes = text.encode('utf-8') + encoded_bytes = b64encode(text_bytes) + return encoded_bytes.decode('utf-8') + except Exception as e: + print(f"Base64编码错误: {str(e)}") + return "" + + def d64(self, encoded_text): + try: + encoded_bytes = encoded_text.encode('utf-8') + decoded_bytes = b64decode(encoded_bytes) + return decoded_bytes.decode('utf-8') + except Exception as e: + print(f"Base64解码错误: {str(e)}") + return "" + + def josn_to_params(self, params, skip_empty=False): + query = [] + for k, v in params.items(): + if skip_empty and not v: + continue + query.append(f"{k}={v}") + return "&".join(query) + + def params_to_json(self, query_string): + parsed_data = parse_qs(query_string) + result = {key: value[0] for key, value in parsed_data.items()} + return result + + def buildvod(self, vod_id='', vod_name='', vod_pic='', vod_year='', vod_tag='', vod_remarks='', style='', + type_name='', vod_area='', vod_actor='', vod_director='', + vod_content='', vod_play_from='', vod_play_url=''): + vod = { + 'vod_id': vod_id, + 'vod_name': vod_name, + 'vod_pic': vod_pic, + 'vod_year': vod_year, + 'vod_tag': 'folder' if vod_tag else '', + 'vod_remarks': vod_remarks, + 'style': style, + 'type_name': type_name, + 'vod_area': vod_area, + 'vod_actor': vod_actor, + 'vod_director': vod_director, + 'vod_content': vod_content, + 'vod_play_from': vod_play_from, + 'vod_play_url': vod_play_url + } + vod = {key: value for key, value in vod.items() if value} + return vod + + def getpq(self, url, headers=None, cookies=None): + data = self.fetch(url, headers=headers, cookies=cookies).text + try: + return pq(data) + except Exception as e: + print(f"解析页面错误: {str(e)}") + return pq(data.encode('utf-8')) + + def gethr(self, index, rf='', zr=''): + headers = self.headers[index] + if zr: + headers['referer'] = zr + else: + headers['referer'] = f"{self.referers[rf]}/" + return headers + + def handle_exception(self, e): + print(f"报错: {str(e)}") + return {'vod_play_from': '哎呀翻车啦', 'vod_play_url': f'翻车啦${self.excepturl}'} \ No newline at end of file diff --git a/jaychouqq/yingshi/py9/追光影视.py b/jaychouqq/yingshi/py9/追光影视.py new file mode 100644 index 00000000..bafee8ad --- /dev/null +++ b/jaychouqq/yingshi/py9/追光影视.py @@ -0,0 +1,440 @@ +# -*- coding: utf-8 -*- +""" +top3.zgtv.online (追光影视) 爬虫 +- MX Pro CMS模板 +- 分类: /vodshow/{catId}---{area}--{letter}----{page}---.html +- 详情: /voddetail/{id}.html +- 播放: /vodplay/{id}-{sid}-{nid}.html -> player_aaaa JS变量 +- 搜索: /vodsearch/{keyword}-------------.html +- 播放链接是视频站原始URL(芒果/爱奇艺等), 需要解析线路 +""" +import sys +import re +import json +from collections import defaultdict +import requests as rq +from urllib.parse import quote + +sys.path.append('..') +try: + from base.spider import Spider +except ImportError: + class Spider: + def fetch(self, url, headers=None, **kw): + kw.pop('timeout', None) + r = rq.get(url, headers=headers, timeout=15, **kw) + r.encoding = 'utf-8' + return r + +def _(x): return x + +HOST = "https://top3.zgtv.online" +UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" + +# 播放源 -> 解析接口映射 (from playerconfig.js) - 仅供参考, 当前不使用 +_PARSE_MAP = { + "wsym3u8": "https://wsyzy.vip/m3u8/?url=", + "bfzym3u8": "https://free.maccms.xyz/?url=", + "360zy": "https://free.maccms.xyz/?url=", + "mtm3u8": "https://free.maccms.xyz/?url=", + "qq": "https://z01.zgtv.online/player/?url=", + "qiyi": "https://z01.zgtv.online/player/?url=", + "youku": "https://z01.zgtv.online/player/?url=", + "mgtv": "https://z01.zgtv.online/player/?url=", + "bilibili": "https://z01.zgtv.online/player/?url=", + "mjzy": "https://svip.qlplayer.cyou/?url=", +} + +# 备用解析接口 (仅保留供参考) +_BACKUP_PARSERS = [ + ("极速", "https://jx.2s0.cn/player/?url="), + ("super", "https://super.playr.top/?url="), + ("fongmi", "https://json.fongmi.cc/web?url="), + ("Jn1", "https://yparse.jn1.cc/index.php?url="), + ("PlayerJY", "https://jx.playerjy.com/?url="), + ("冰豆", "https://bd.jx.cn/?url="), + ("剖元", "https://www.pouyun.com/?url="), + ("七哥", "https://jx.nnxv.cn/tv.php?url="), + ("夜幕", "https://www.yemu.xyz/?url="), + ("Yparse", "https://jx.yparse.com/index.php?url="), + ("ik9", "https://yparse.ik9.cc/index.php?url="), + ("花旗", "https://www.huaqi.live/?url="), + ("网站z01", "https://z01.zgtv.online/player/?url="), + ("svip2", "https://svip.qlplayer.cyou/?url="), + ("maccms", "https://free.maccms.xyz/?url="), + ("wsyzy", "https://wsyzy.vip/m3u8/?url="), +] + +# from字段 -> 中文显示名 +FROM_NAMES = { + "qq": "腾讯", + "qiyi": "奇艺", + "youku": "优酷", + "mgtv": "芒果", + "bilibili": "B站", + "wsym3u8": "自营线路", + "bfzym3u8": "暴风资源", + "360zy": "无广告", + "mtm3u8": "芒果资源", + "mjzy": "自营蓝光", + "dplayer": "DPlayer", + "videojs": "VideoJS", +} + +# 需要解析的from类型 (视频站链接, 需要通过第三方解析接口) +NEED_PARSE_FROM = {"qq", "qiyi", "youku", "mgtv", "bilibili"} + +# 主分类 +CLASS_MAP = { + "20": "电影", + "37": "连续剧", + "43": "动漫", + "45": "综艺", +} + + +class Spider(Spider): + + def init(self, extend=""): + self._session = rq.Session() + self._session.headers.update({"User-Agent": UA}) + try: + self._session.get(HOST, timeout=10) + except: + pass + + def getName(self): + return "zgtv" + + def isVideoFormat(self, url): + return ".m3u8" in url or ".mp4" in url + + def manualVideoCheck(self): + return False + + def homeContent(self, filter=False): + classes = [] + for tid, name in CLASS_MAP.items(): + classes.append({"type_id": tid, "type_name": name}) + return {"class": classes} + + def homeVideoContent(self): + try: + items = self._fetch_list(f"{HOST}/vodtype/20.html") + return {"list": items} + except: + return {"list": []} + + def categoryContent(self, tid, pg=1, filter=False, extend=None): + try: + pn = max(int(str(pg)), 1) + # /vodshow/{catId}--------{page}---.html + url = f"{HOST}/vodshow/{tid}--------{pn}---.html" + items = self._fetch_list(url) + return {"list": items, "page": pn, "pagecount": pn + 10, "limit": 24, "total": 0} + except: + return {"list": [], "page": pg, "pagecount": 1, "limit": 24, "total": 0} + + def detailContent(self, ids): + try: + vid = str(ids[0]) if ids else "" + if not vid: + return {"list": []} + + url = f"{HOST}/voddetail/{vid}.html" + r = self._get(url, timeout=15000) + html = r.text + + # 标题 + title = self._extract(html, r']*class="page-title"[^>]*>([^<]+)') or "" + if not title: + title = self._extract(html, r']*>([^<]+)') or "" + + # 封面 + cover = self._extract(html, r'data-original="([^"]+\.(?:jpg|png|webp))"') or "" + + if not title: + return {"list": []} + + # 播放列表 - 只匹配剧集链接(module-play-list-link类) + all_links = re.findall( + r'class="module-play-list-link"[^>]+href="(/vodplay/(\d+)-(\d+)-(\d+)\.html)"[^>]*>[\s\S]*?([^<]+)', + html + ) + # Fallback: 宽松匹配 + if not all_links: + all_links = re.findall( + r'href="(/vodplay/(\d+)-(\d+)-(\d+)\.html)"[^>]*>[\s\S]*?([^<]+)', + html + ) + + # 按sid分组 (同一播放源) + by_sid = defaultdict(list) + for match in all_links: + if len(match) == 5: + href, v, sid, nid, name = match + if v == vid: + by_sid[sid].append((int(nid), name.strip(), href)) + + # 播放源标签 + heading = re.search( + r'id="y-playList"[^>]*>([\s\S]*?)
    \s*
    \s*
    ', html + ) + source_names = [] + if heading: + source_names = re.findall(r'data-dropdown-value="([^"]+)">\s*([^<]+)', heading.group(1)) + + pf_list = [] + pu_list = [] + src_idx = 0 + + for sid in sorted(by_sid.keys()): + eps = sorted(by_sid[sid]) + src_idx += 1 + + # 获取该源的from字段(只请求第一集) + sid_from = self._get_from_source(vid, sid) + + # 跳过需要解析的视频站源 (qq/qiyi/youku/mgtv/bilibili) + if sid_from in NEED_PARSE_FROM: + continue + + # 直链源: 优先用网站的source_names, 否则用from映射名 + if src_idx - 1 < len(source_names): + friendly_name = source_names[src_idx - 1][1] + else: + friendly_name = FROM_NAMES.get(sid_from, f"线路{src_idx}") + + # 直链源 + ep_list = [] + for nid, name, href in eps: + ep_list.append(f"{name}${href}|{sid_from}") + if ep_list: + pf_list.append(friendly_name) + pu_list.append("#".join(ep_list)) + + if not pf_list: + return {"list": []} + + vod = { + "vod_id": vid, + "vod_name": title, + "vod_pic": cover, + "vod_play_from": "$$$".join(pf_list), + "vod_play_url": "$$$".join(pu_list), + } + return {"list": [vod]} + except: + return {"list": []} + + def searchContent(self, key, quick=False, pg=1): + try: + pn = max(int(str(pg)), 1) + url = f"{HOST}/vodsearch/{quote(key)}-------------.html" + items = self._fetch_list(url) + return {"list": items, "page": pn} + except: + return {"list": [], "page": 1} + + def playerContent(self, flag, id, vipFlags=None): + url = str(id) if id else str(flag) + if not url: + return {"url": ""} + if "$" in url: + parts = url.split("$", 1) + url = parts[1] + + # m3u8/mp4直链直接播 + if url.startswith("http") and (".m3u8" in url or ".mp4" in url): + return {"url": url} + + # 播放页路径 /vodplay/{vid}-{sid}-{nid}.html|from + from_src = "" + parts = url.split("|") + if len(parts) == 2: + url = parts[0] + from_src = parts[1] + + if url.startswith("/vodplay/"): + play_data = self._extract_player_data(url) + if play_data: + raw_url = play_data.get("url", "") + + # 如果已经是m3u8/mp4直链, 直接播放 + if raw_url and (".m3u8" in raw_url or ".mp4" in raw_url): + return {"url": raw_url} + + # 如果是视频站链接(qq/youku等), 返回原始URL让壳子解析 + if raw_url and raw_url.startswith("http"): + return {"url": raw_url, "parse": 1, "header": {"User-Agent": UA}} + return {"url": ""} + + return {"url": url} + + def _get(self, url, timeout=20): + r = self._session.get(url, timeout=timeout) + # MX Pro CMS可能返回不同编码 + if r.apparent_encoding: + r.encoding = r.apparent_encoding + return r + + def _extract(self, text, pattern): + m = re.search(pattern, text) + return m.group(1) if m else "" + + def _fetch_list(self, url): + """从HTML抓取影片列表""" + r = self._get(url, timeout=15000) + html = r.text if hasattr(r, 'text') else str(r) + + items = [] + seen = set() + + # Pattern1: MX Pro - ... + pattern1 = re.compile( + r']+title="([^"]+)"' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for vid, title, cover in pattern1.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern1b: 搜索结果 - data-original在alt前面 + if not items: + pattern1b = re.compile( + r']*>' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"[^>]+alt="([^"]+)"' + ) + for vid, cover, title in pattern1b.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern1c: alt在data-original前面 + if not items: + pattern1c = re.compile( + r']*>' + r'[\s\S]*?' + r']+alt="([^"]+)"[^>]+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for vid, title, cover in pattern1c.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern2: 首页/推荐页 - ... + if not items: + pattern2 = re.compile( + r']+title="([^"]+)"' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for vid, title, cover in pattern2.findall(html): + if vid in seen: + continue + seen.add(vid) + items.append({ + "vod_id": vid, + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + + # Pattern3: 备用 - 任何含title和data-original的a标签 + if not items: + pattern3 = re.compile( + r']+title="([^"]+)"[^>]*>' + r'[\s\S]*?' + r']+data-original="([^"]+\.(?:jpg|png|webp))"' + ) + for title, cover in pattern3.findall(html): + items.append({ + "vod_id": "", + "vod_name": title.strip(), + "vod_pic": cover, + "vod_remarks": "", + }) + return items + + def _extract_player_url_from_path(self, path): + """从播放页路径提取真实m3u8 URL""" + try: + url = f"{HOST}{path}" + r = self._get(url, timeout=15000) + html = r.text + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html) + if m: + data = json.loads(m.group(1)) + return data.get("url", "") + except: + pass + return "" + + def _extract_player_data(self, path): + """从播放页路径提取完整播放数据(url, from等)""" + try: + url = f"{HOST}{path}" + r = self._get(url, timeout=15000) + html = r.text + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html) + if m: + data = json.loads(m.group(1)) + return data + except: + pass + return None + + def _get_from_source(self, vid, sid): + """获取某播放源的from字段(播放源类型)""" + try: + url = f"{HOST}/vodplay/{vid}-{sid}-1.html" + r = self._get(url, timeout=10000) + html = r.text + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html) + if m: + data = json.loads(m.group(1)) + return data.get("from", "") + except: + pass + return "" + + def _extract_player_url(self, vid, sid, nid): + """从播放页提取player_aaaa中的URL""" + try: + url = f"{HOST}/vodplay/{vid}-{sid}-{nid}.html" + r = self._get(url, timeout=15000) + html = r.text + + # 匹配 player_aaaa={"url":"..."} + m = re.search(r'player_aaaa\s*=\s*(\{[^}]+\})', html, re.DOTALL) + if m: + data = json.loads(m.group(1)) + play_url = data.get("url", "") + return play_url + except: + pass + return "" + + def localProxy(self, param): + pass diff --git a/jaychouqq/yingshi/py9/黄豆短剧(有魔改).py b/jaychouqq/yingshi/py9/黄豆短剧(有魔改).py new file mode 100644 index 00000000..b3a3129f --- /dev/null +++ b/jaychouqq/yingshi/py9/黄豆短剧(有魔改).py @@ -0,0 +1,446 @@ +# -*- coding: utf-8 -*- +""" +黄豆短剧爬虫 +站点: https://www.hdmgdj.com +""" + +import json +import urllib.parse + +import requests + +try: + from base.spider import Spider as BaseSpider +except ImportError: + class BaseSpider: + pass + + +class Spider(BaseSpider): + """黄豆短剧爬虫""" + + BASE_URL = 'https://www.hdmgdj.com' + API_BASE = 'https://hdmgdj.com/api' + + HEADERS = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Accept': 'application/json, text/plain, */*', + 'Referer': 'https://www.hdmgdj.com/', + 'Origin': 'https://www.hdmgdj.com', + } + + _filter_cache = {} # 分类筛选缓存 + + def __init__(self): + super().__init__() + self.name = "" + self.error_play_url = "https://kjjsaas-sh.oss-cn-shanghai.aliyuncs.com/u/3401405881/20240818-936952-fc31b16575e80a7562cdb1f81a39c6b0.mp4" + self.session = requests.Session() + self.session.headers.update(self.HEADERS) + + # ==================== 标准接口 ==================== + + def init(self, extend="{}"): + """初始化""" + if extend: + try: + self.extend = json.loads(extend) + if 'name' in self.extend: + self.name = self.extend['name'] + if 'base_url' in self.extend: + self.BASE_URL = self.extend['base_url'] + self.API_BASE = self.extend['base_url'] + '/api' + except Exception as e: + print(e) + return None + + def getName(self): + """获取爬虫名称""" + return "黄豆短剧" + + def homeContent(self, filter): + """首页""" + result = { + "class": [], + "filters": {}, + "list": [], + "parse": 0, + "jx": 0, + } + + try: + # 获取分类 + genres_data = self._get('/genres') + if genres_data and isinstance(genres_data, list): + for g in genres_data: + gid = str(g.get('id', '')) + if not gid: + continue + result["class"].append({ + "type_id": gid, + "type_name": g.get('name', ''), + }) + + # 获取首页推荐 + home_data = self._get('/home') + if home_data and isinstance(home_data, dict): + # guess 猜你喜欢 + guess_list = home_data.get('guess', []) + if isinstance(guess_list, list): + for item in guess_list: + result["list"].append(self._parse_vod(item)) + + # feature 精选 + feature_list = home_data.get('feature', []) + if isinstance(feature_list, list): + for item in feature_list: + result["list"].append(self._parse_vod(item)) + + # 如果列表为空,用首页第一页数据 + if not result["list"]: + dramas_data = self._get('/dramas?page=1&size=20') + if dramas_data and isinstance(dramas_data, dict): + for item in dramas_data.get('list', []): + result["list"].append(self._parse_vod(item)) + + except Exception as e: + print(e) + + return result + + def categoryContent(self, tid, pg, filter, extend): + """分类页""" + result = { + "page": pg, + "pagecount": 999, + "limit": 20, + "total": 99999, + "list": [], + "parse": 0, + "jx": 0, + } + + try: + # 分类ID是genre id + data = self._get(f'/dramas?genreId={tid}&page={pg}&size=20') + if data and isinstance(data, dict): + lst = data.get('list', []) + total = data.get('total', 0) + result["total"] = total + result["pagecount"] = (total + 19) // 20 if total else 999 + for item in lst: + result["list"].append(self._parse_vod(item)) + + except Exception as e: + print(e) + + return result + + def detailContent(self, ids): + """详情页""" + result = { + "list": [], + "parse": 0, + "jx": 0, + } + + try: + vid = ids[0] + data = self._get(f'/dramas/{vid}') + + if data and isinstance(data, dict): + episodes = data.get('episodes', []) + + # 组装播放地址 + play_url_parts = [] + for ep in episodes: + ep_title = ep.get('title', f"第{ep.get('ep', 0)}集") + play_url = ep.get('playUrl', '') + if play_url: + play_url_parts.append(f"{ep_title}${play_url}") + + cover = data.get('cover', '') + # 加密海报走本地代理解密 + if cover and ('encryptimages' in cover or '.bng' in cover): + try: + cover = f"{self.getProxyUrl()}&url={urllib.parse.quote(cover)}" + except Exception: + pass + + vod = { + "vod_id": str(data['id']), + "vod_name": data.get('t', ''), + "vod_pic": cover, + "type_name": data.get('sub', ''), + "vod_year": '', + "vod_area": '', + "vod_remarks": f"{data.get('serial', '')}·{data.get('plays', '')}播放", + "vod_actor": '', + "vod_director": '嗷呜 / 唐三', + "vod_content": data.get('summary', '') or data.get('t', ''), + "vod_play_from": '黄豆短剧', + "vod_play_url": '#'.join(play_url_parts), + } + result["list"].append(vod) + + except Exception as e: + print(e) + + return result + + def searchContent(self, key, quick, pg="1"): + """搜索""" + result = { + "page": pg, + "pagecount": 999, + "limit": 20, + "total": 99999, + "list": [], + "parse": 0, + "jx": 0, + } + + try: + data = self._get(f'/search?kw={urllib.parse.quote(key)}&page={pg}&size=20') + if data and isinstance(data, dict): + lst = data.get('list', []) + total = data.get('total', 0) + result["total"] = total + result["pagecount"] = (total + 19) // 20 if total else 0 + for item in lst: + result["list"].append(self._parse_vod(item)) + + except Exception as e: + print(e) + + return result + + def playerContent(self, flag, id, vipFlags): + """播放页 - 直接返回 m3u8 data URI""" + result = { + "parse": 0, + "playUrl": "", + "url": self.error_play_url, + "jx": 0, + "header": "", + } + + if id: + # 直接在 playerContent 里生成解密后的 m3u8,用 data URI 返回 + # 这样播放地址就不是 127.0.0.1 代理了 + m3u8_content = self._build_m3u8_with_key(id) + if m3u8_content: + import base64 + m3u8_b64 = base64.b64encode(m3u8_content.encode('utf-8')).decode('ascii') + result["url"] = "data:application/vnd.apple.mpegurl;base64," + m3u8_b64 + result["parse"] = 0 + + return result + + def _build_m3u8_with_key(self, url): + """构建 m3u8 内容(key 内嵌为 base64 data URI,ts 用原始绝对地址)""" + import hashlib + import re + import base64 + if not url: + return None + + try: + r = self.session.get(url, timeout=15, verify=False) + content = r.text + + # 计算 key + key_bytes = self._get_key_bytes(url) + if key_bytes: + key_b64 = base64.b64encode(key_bytes).decode('ascii') + key_data_uri = "data:text/plain;base64," + key_b64 + content = re.sub( + r'(#EXT-X-KEY:.*?URI=")[^"]*(")', + r'\1' + key_data_uri + r'\2', + content + ) + + # 把相对路径的 ts 改成绝对路径 + base_url = url.rsplit('/', 1)[0] + '/' + lines = content.split('\n') + new_lines = [] + for line in lines: + line = line.strip() + if line and not line.startswith('#'): + if line.startswith('http'): + new_lines.append(line) + else: + new_lines.append(base_url + line) + else: + new_lines.append(line) + content = '\n'.join(new_lines) + return content + except Exception as e: + print(f"_build_m3u8_with_key error: {e}") + return None + + def _get_key_bytes(self, url): + """从 m3u8 URL 计算解密 key""" + import hashlib + import re + m = re.search(r'/hls/([0-9a-f]{64})/', url) + if not m: + return None + video_id = m.group(1) + ver_match = re.search(r'[?&]version=([^&#]+)', url) + version = ver_match.group(1) if ver_match else 'v1' + prefix = "xnaichanping" + key_str = prefix + video_id + version + return hashlib.md5(key_str.encode()).digest() + + def localProxy(self, param): + """本地代理 - 解密海报图片""" + try: + url = param['url'] + r = self.session.get(url, timeout=15, verify=False) + decrypted = self._aes_decrypt_img(r.content, url) + # 确定图片类型 + content_type = "image/jpeg" + if decrypted[:8] == b'\x89PNG\r\n\x1a\n': + content_type = "image/png" + elif decrypted[:6] in (b'GIF87a', b'GIF89a'): + content_type = "image/gif" + elif decrypted[:4] == b'RIFF' and decrypted[8:12] == b'WEBP': + content_type = "image/webp" + return [200, content_type, decrypted] + except Exception as e: + print(f"localProxy error: {e}") + return [500, 'text/html', b''] + + def _aes_decrypt_img(self, encrypted, url): + """AES 解密图片 - 网站自定义 CBC 算法""" + import hashlib + import re + from Crypto.Cipher import AES + + # 提取 imageId (64位哈希) + m = re.search(r'([0-9a-f]{64})', url) + if not m: + return encrypted + image_id = m.group(1) + + # 提取 version + ver_match = re.search(r'[?&]version=([^&#]+)', url) + version = ver_match.group(1) if ver_match else 'v1' + + # 计算解密 key + prefix = "xnaichanping" + key_str = prefix + image_id + version + key_bytes = hashlib.md5(key_str.encode()).digest() + + # 网站自定义 CBC 解密 (mC 函数) + t = len(encrypted) // 16 + if t < 1: + return encrypted + + iv = bytes(16) # IV=0 + + # 取最后一块 XOR 16 + last_block = encrypted[(t - 1) * 16:t * 16] + a = bytes([b ^ 16 for b in last_block]) + + # 加密 a + cipher_enc = AES.new(key_bytes, AES.MODE_CBC, iv) + o = cipher_enc.encrypt(a)[:16] + + # 扩展密文并解密 + extended = encrypted + o + cipher_dec = AES.new(key_bytes, AES.MODE_CBC, iv) + c = cipher_dec.decrypt(extended) + + # 自定义 CBC:每块 XOR 前一块密文 + u = bytearray(len(c)) + u[:16] = c[:16] + for f in range(1, t): + for h in range(16): + u[f * 16 + h] = c[f * 16 + h] ^ encrypted[(f - 1) * 16 + h] + + # 去掉 padding + d = u[-1] + if 1 <= d <= 16: + u = u[:-d] + + return bytes(u) + + # ==================== 内部方法 ==================== + + def _parse_vod(self, item): + """解析视频条目 - 海报用 getProxyUrl 代理解密""" + cover = item.get('cover', '') + # 加密海报走本地代理解密 + if cover and ('encryptimages' in cover or '.bng' in cover): + try: + cover = f"{self.getProxyUrl()}&url={urllib.parse.quote(cover)}" + except Exception: + pass + return { + "vod_id": str(item['id']), + "vod_name": item.get('t', ''), + "vod_pic": cover, + "vod_remarks": f"{item.get('serial', '')}·{item.get('eps', 0)}集", + } + + def _get(self, path): + """发送 GET 请求""" + url = self.API_BASE + path + try: + r = self.session.get(url, timeout=15, verify=False) + resp = r.json() + if resp.get('code') == 0 and resp.get('data') is not None: + return resp['data'] + return None + except Exception as e: + print(e) + return None + + +# 调试用 +if __name__ == '__main__': + import urllib3 + urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) + + s = Spider() + s.init() + + print('=== 首页 ===') + home = s.homeContent(True) + print(f'分类: {len(home["class"])}个') + for c in home['class']: + print(f' {c["type_id"]}: {c["type_name"]}') + print(f'推荐: {len(home["list"])}个') + for v in home['list'][:5]: + print(f' {v["vod_id"]}: {v["vod_name"]} - {v["vod_remarks"]}') + print() + + print('=== 分类1(都市)第1页 ===') + cr = s.categoryContent('1', 1, True, {}) + print(f'总数: {cr["total"]}, 本页: {len(cr["list"])}个') + for v in cr['list'][:5]: + print(f' {v["vod_id"]}: {v["vod_name"]}') + print() + + print('=== 搜索 穿越 ===') + sr = s.searchContent('穿越', False, '1') + print(f'结果: {len(sr["list"])}个, 总数: {sr["total"]}') + for v in sr['list'][:5]: + print(f' {v["vod_id"]}: {v["vod_name"]}') + print() + + if sr['list']: + vid = sr['list'][0]['vod_id'] + print(f'=== 详情 {vid} ===') + dr = s.detailContent([vid]) + if dr['list']: + v = dr['list'][0] + print(f'标题: {v["vod_name"]}') + print(f'分类: {v["type_name"]}') + print(f'备注: {v["vod_remarks"]}') + print(f'播放源: {v["vod_play_from"]}') + play_urls = v["vod_play_url"].split('#') + print(f'集数: {len(play_urls)}集') + print(f'第一集: {play_urls[0][:80]}...') diff --git a/tbapi1/PG/pg.jar b/tbapi1/PG/pg.jar index 44138584..f798a0a8 100644 Binary files a/tbapi1/PG/pg.jar and b/tbapi1/PG/pg.jar differ diff --git a/tbapi1/PG/pg.jar.md5 b/tbapi1/PG/pg.jar.md5 index e70b482c..6b5e5f6d 100644 --- a/tbapi1/PG/pg.jar.md5 +++ b/tbapi1/PG/pg.jar.md5 @@ -1 +1 @@ -54517fd62c0a86c2221afacc04cbf73a \ No newline at end of file +7cb7b406d397d1bda4cd5d92d360fc81 \ No newline at end of file diff --git a/tbapi1/XS/api.json b/tbapi1/XS/api.json index e47c799e..b1acf0f3 100644 --- a/tbapi1/XS/api.json +++ b/tbapi1/XS/api.json @@ -68,23 +68,6 @@ "api": "csp_Hxq", "ext": "http://www.小不点.com/api/2026/fishhxq.php" }, - { - "key": "无极99", - "name": "无极 • APP", - "type": 3, - "api": "csp_App99", - "ext": { - "host": "http://111.170.140.70:19987/app/bn", - "LoginPath": "/app/log", - "version": "", - "appkey": "c403317c2a2946659b0bcbabdd5de43a", - "versionName": "1.0.1", - "name": "无极影视", - "package": "com.wujiys.app", - "buildNumber": "2001", - "buildSignature": "A0859BDC35AD3E81D4051E2A4678C77C62773EDB3423DDF1DEFF94CB331D398E" - } - }, { "key": "橙子99", "name": "橙子 • APP", diff --git a/tbapi1/XS/spider.jar b/tbapi1/XS/spider.jar index e583905d..dd8447a3 100644 Binary files a/tbapi1/XS/spider.jar and b/tbapi1/XS/spider.jar differ diff --git a/tbapi2/oldwex/api.json b/tbapi2/oldwex/api.json deleted file mode 100644 index 61cc9fd9..00000000 --- a/tbapi2/oldwex/api.json +++ /dev/null @@ -1,1067 +0,0 @@ -{ - "spider": "./spider.jar", - "wallpaper": "http://王二小放牛娃牛逼.999888987.xyz", - "logo": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaFile/3CEAE9E_773_wexfnw_20250911190012684newMediaFile.gif", - "sites": [ - { - "key": "NewDouBan", - "name": "🐮【王二小放牛娃】🐮", - "type": 3, - "api": "csp_NewDouBanGuard", - "indexs": 1, - "searchable": 0, - "quickSearch": 0, - "filterable": 0, - "ext": "./txt/20260414181247-ae51abfbfe.txt" - }, - { - "key": "Doubana", - "name": "🐮【更新日期:20260717】🐮", - "type": 3, - "api": "csp_NewDouBanGuard", - "indexs": 1, - "searchable": 0, - "quickSearch": 0, - "filterable": 0, - "ext": "./txt/20260414181247-ae51abfbfe.txt" - }, - { - "key": "Doubana", - "name": "⬇️【网盘类先扫码】⬇️", - "type": 3, - "api": "csp_NewDouBanGuard", - "searchable": 0, - "quickSearch": 0, - "filterable": 0, - "ext": "./txt/20260414181247-ae51abfbfe.txt" - }, - { - "key": "Wexconfig", - "name": "🐮配置┃中心🐮", - "type": 3, - "api": "csp_WexConfigGuard", - "searchable": 0, - "changeable": 0, - "indexs": 0, - "style": { - "type": "list" - } - }, - { - "key": "二小", - "name": "💓‍指南┃4K💓‍", - "type": 3, - "api": "csp_NewErXiaoGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "玩偶", - "name": "💓‍玩偶┃4K💓‍", - "type": 3, - "api": "csp_NewWoggGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "NewZhiZhen", - "name": "💓至臻┃4K💓", - "type": 3, - "api": "csp_NewZhiZhenGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "NewGuanYing", - "name": "💓观影┃4K💓", - "type": 3, - "api": "csp_NewGuanYingGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0, - "timeout": 120 - }, - { - "key": "NewJuTou", - "name": "💓剧透┃4K💓", - "type": 3, - "api": "csp_NewJuTouGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "NewHuBan", - "name": "💓虎斑┃4K💓", - "type": 3, - "api": "csp_NewHuBanGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "NewMuOu", - "name": "💓木偶┃4K💓", - "type": 3, - "api": "csp_NewMuOuGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "NewDuoDuo", - "name": "💓多多┃4K💓", - "type": 3, - "api": "csp_NewDuoDuoGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0, - "timeout": 120 - }, - { - "key": "原盘", - "name": "💓‍原盘┃4K💓‍", - "type": 3, - "api": "csp_New4KZnGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "NewPanMe123", - "name": "💓123┃4K💓", - "type": 3, - "api": "csp_NewPanMe123Guard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexHanXiaoQuan", - "name": "💥韩剧┃秒播💥", - "type": 3, - "api": "csp_WexHanXiaoQuanGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexGuaZi", - "name": "💥瓜子┃秒播💥", - "type": 3, - "api": "csp_WexGuaZiGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "賤賤", - "name": "💥贱片┃秒播💥", - "type": 3, - "api": "csp_WexJianPianGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexWenCai", - "name": "💥文才┃秒播💥", - "type": 3, - "api": "csp_WexWenCaiGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexDuBoKu", - "name": "💥独播┃秒播💥", - "type": 3, - "api": "csp_WexDuBoKuGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexYueYue", - "name": "💥闪电┃秒播💥", - "type": 3, - "api": "csp_WexYueYueGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexV6DaShiXiong", - "name": "💥师兄┃秒播💥", - "type": 3, - "api": "csp_WexV6DaShiXiongGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexV6TeGou", - "name": "💥太狗┃秒播💥", - "type": 3, - "api": "csp_WexV6TeGouGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexYiYs", - "name": "💥伊影┃秒播💥", - "type": 3, - "api": "csp_WexYiYsGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexReBo", - "name": "💥热播┃秒播💥", - "type": 3, - "api": "csp_WexReBoGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexBoBo", - "name": "🎇伯伯┃秒播🎇", - "type": 3, - "api": "csp_WexBoBoGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "新6V", - "name": "🎇新6V┃磁力🎇", - "type": 3, - "api": "csp_WexXb6vGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "WexIkanBot", - "name": "🎇爱看┃采集🎇", - "type": 3, - "api": "csp_WexIkanBotGuard", - "searchable": 1, - "quickSearch": 1, - "changeable": 0 - }, - { - "key": "LiveHuYa", - "name": "🐯‍虎牙┃直播🐯‍", - "type": 3, - "api": "csp_LiveHuYaGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "LiveDouYu", - "name": "🐳斗鱼┃直播🐳", - "type": 3, - "api": "csp_LiveDouYuGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "LiveBiLi", - "name": "🅱️哔哩┃直播🅱️", - "type": 3, - "api": "csp_LiveBiLiGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "ManJuHongGuo", - "name": "🍉漫短┃小红🍉", - "type": 3, - "类型": "短剧", - "api": "csp_ManJuHongGuoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "ManJuHuoLong", - "name": "🍉漫剧┃小龙🍉", - "type": 3, - "类型": "短剧", - "api": "csp_ManJuHuoLongGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "ManJuQiMao", - "name": "🍉漫剧┃小猫🍉", - "type": 3, - "类型": "短剧", - "api": "csp_ManJuQiMaoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "ManJuXiFan", - "name": "🍉漫短┃小喜🍉", - "type": 3, - "类型": "短剧", - "api": "csp_ManJuXiFanGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "ManJuAiHeMa", - "name": "🍉漫短┃小马🍉", - "type": 3, - "类型": "短剧", - "api": "csp_DuanJuHeMaGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "DuanJuHaoKan", - "name": "🍉短剧┃好看🍉", - "type": 3, - "类型": "短剧", - "api": "csp_DuanJuHaoKanGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "DuanJuQiMiao", - "name": "🍉短剧┃小猫🍉", - "type": 3, - "类型": "短剧", - "api": "csp_DuanJuQiMiaoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "DuanJuXingYa", - "name": "🍉短剧┃星星🍉", - "type": 3, - "类型": "短剧", - "api": "csp_DuanJuXingYaGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "DuanJuWeiGuan", - "name": "🍉短剧┃小薇🍉", - "type": 3, - "类型": "短剧", - "api": "csp_DuanJuWeiGuanGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "AnimeFanShu", - "name": "🤡番薯┃动漫🤡", - "type": 3, - "api": "csp_AnimeFanShuGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "AnimeMiaoWuGuard", - "name": "🤡喵呜┃动漫🤡", - "type": 3, - "api": "csp_AnimeMiaoWuGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "AnimeHuaziGuard", - "name": "🤡花海┃动漫🤡", - "type": 3, - "api": "csp_AnimeHuaziGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "AnimeMoDu", - "name": "🤡魔都┃动漫🤡", - "type": 3, - "api": "csp_AnimeMoDuGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "BookShiJie", - "name": "🎃‍极品┃听书🎃", - "type": 3, - "api": "csp_BookShiJieGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "BookYueTing", - "name": "🎃‍悦庭┃听书🎃", - "type": 3, - "api": "csp_BookYueTingGuard", - "searchable": 1, - "changeable": 0, - "timeout": 120 - }, - { - "key": "Book23TingShu", - "name": "🎃‍爱上┃听书🎃", - "type": 3, - "api": "csp_Book23TingShuGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "ChildrenDuoDuo", - "name": "👼多多┃儿歌👼", - "type": 3, - "api": "csp_ChildrenDuoDuoGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 2 - } - }, - { - "key": "ChildrenBaoBao", - "name": "👼宝宝┃儿歌👼", - "type": 3, - "api": "csp_ChildrenBaoBaoGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 2 - } - }, - { - "key": "ChildrenBeiWa", - "name": "👼贝贝┃儿歌👼", - "type": 3, - "api": "csp_ChildrenBeiWaGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 2 - } - }, - { - "key": "ChildrenTuTu", - "name": "👼兔兔┃儿歌👼", - "type": 3, - "api": "csp_ChildrenTuTuGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 2 - } - }, - { - "key": "WexTangDou", - "name": "💃跳舞┃教学💃", - "type": 3, - "api": "csp_WexTangDouGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 2 - } - }, - { - "key": "MusicLiYuan", - "name": "🎎戏曲┃秒播🎎", - "type": 3, - "api": "csp_MusicLiYuanGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 2 - } - }, - { - "key": "MusicQingTing", - "name": "🎼蜻蜓┃电台🎼", - "type": 3, - "api": "csp_MusicQingTingGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "MusicIKtv", - "name": "🎼KTV┃音乐🎼", - "type": 3, - "api": "csp_MusicIKtvGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "Music163", - "name": "🎼易听┃音乐🎼", - "type": 3, - "api": "csp_Music163Guard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "MusicKuWo", - "name": "🎼酷听┃音乐🎼", - "type": 3, - "api": "csp_MusicKuWoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "MusicLunHui", - "name": "🎼轮回┃舞曲🎼", - "type": 3, - "api": "csp_MusicLunHuiGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "bilibiliys", - "name": " 🅱‍哔哩┃影视🅱‍", - "type": 3, - "api": "csp_NewBiLiYSGuard", - "searchable": 1, - "quickSearch": 1, - "filterable": 1, - "changeable": 0, - "ext": "./txt/bilisong.txt" - }, - { - "key": "bilibili", - "name": " 🅱‍哔哩┃合集🅱‍", - "type": 3, - "api": "csp_BiliGuard", - "searchable": 1, - "quickSearch": 1, - "filterable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 1.433 - }, - "ext": { - "json": "https://support-chat.rongcloud.cn/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBYkE9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--47a8ff0e68559a89a9a75b37d09a2b0854dc5a8a/bili001.txt" - } - }, - { - "key": "bilixiqu", - "name": " 🅱‍哔哩┃戏曲🅱‍", - "type": 3, - "api": "csp_BiliGuard", - "searchable": 1, - "quickSearch": 1, - "filterable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 1.433 - }, - "ext": { - "json": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaImage/183E562_773_xiqu_20251130182006749newMediaImage.txt" - } - }, - { - "key": "biliych", - "name": " 🅱‍哔哩┃歌曲🅱‍", - "type": 3, - "api": "csp_BiliGuard", - "searchable": 1, - "quickSearch": 1, - "filterable": 1, - "changeable": 0, - "style": { - "type": "rect", - "ratio": 1.433 - }, - "ext": { - "json": "https://support-chat.rongcloud.cn/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBYkU9IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--3083f43a14e6b59f4bfe248478a3a8765b34bfdd/bilisong.txt" - } - }, - { - "key": "少儿教育", - "name": "📚少儿┃教育📚", - "type": 3, - "api": "csp_BiliGuard", - "style": { - "type": "rect", - "ratio": 1.597 - }, - "searchable": 0, - "quickSearch": 0, - "changeable": 0, - "ext": { - "json": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaImage/3C3AB7A_773_ertong_20250828171550247newMediaImage.txt" - } - }, - { - "key": "小学课堂", - "name": "📚小学┃课堂📚", - "type": 3, - "api": "csp_BiliGuard", - "style": { - "type": "rect", - "ratio": 1.597 - }, - "searchable": 0, - "quickSearch": 0, - "changeable": 0, - "ext": { - "json": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaImage/4A3AA71_773_xiaoxue_20250828171535645newMediaImage.txt" - } - }, - { - "key": "初中课堂", - "name": "📚初中┃课堂📚", - "type": 3, - "api": "csp_BiliGuard", - "style": { - "type": "rect", - "ratio": 1.597 - }, - "searchable": 0, - "quickSearch": 0, - "changeable": 0, - "ext": { - "json": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaImage/19B1839_773_chuzhong_20250828171521929newMediaImage.txt" - } - }, - { - "key": "高中教育", - "name": "📚高中┃课堂📚", - "type": 3, - "api": "csp_BiliGuard", - "style": { - "type": "rect", - "ratio": 1.597 - }, - "searchable": 0, - "quickSearch": 0, - "changeable": 0, - "ext": { - "json": "https://storage.7x24cc.com/storage-server/presigned/ss1/a6-online-fileupload/newMediaImage/345A587_773_gaozhong_20250828171449997newMediaImage.txt" - } - }, - { - "key": "SportFeiQiu", - "name": "🌐飞球┃体育🌐", - "type": 3, - "api": "csp_SportFeiQiuGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "list" - } - }, - { - "key": "SportGuaZi", - "name": "🌐瓜子┃体育🌐", - "type": 3, - "api": "csp_SportGuaZiGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "list" - } - }, - { - "key": "SportKanQiuTong", - "name": "🌐球通┃体育🌐", - "type": 3, - "api": "csp_SportKanQiuTongGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "list" - } - }, - { - "key": "SportKanqiu", - "name": "🌐八八┃体育🌐", - "type": 3, - "api": "csp_SportKanqiuGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "SportKaFei", - "name": "🌐咖啡┃体育🌐", - "type": 3, - "api": "csp_SportKaFeiGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "list" - } - }, - { - "key": "SportWwe", - "name": "🌐WWE┃体育🌐", - "type": 3, - "api": "csp_SportWweGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "list" - } - }, - { - "key": "emby", - "name": "🀄️emby┃4K🀄️", - "type": 3, - "api": "csp_EmbyGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "AList", - "name": "👁️Alist┃DIY👁️", - "type": 3, - "api": "csp_AListGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "webdav", - "name": "👁️WebDav┃DIY👁️", - "type": 3, - "api": "csp_WebDAVGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "DiyVod", - "name": "👁Vod┃DIY👁️", - "type": 3, - "api": "csp_DiyVodGuard", - "searchable": 1, - "changeable": 0, - "style": { - "type": "list" - } - }, - { - "key": "MyQuark", - "name": "💓我的┃夸克💓‍", - "type": 3, - "api": "csp_MyQuarkGuard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "MyBaiDu", - "name": "💓我的┃百度💓‍", - "type": 3, - "api": "csp_MyBaiDuGuard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "MyUcPan", - "name": "💓我的┃UC💓‍", - "type": 3, - "api": "csp_MyUcPanGuard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "MyGuangYa", - "name": "💓我的┃光鸭💓‍", - "type": 3, - "api": "csp_MyGuangYaGuard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "MyPan189", - "name": "💓我的┃天翼💓‍", - "type": 3, - "api": "csp_MyPan189Guard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "MyPan115", - "name": "💓我的┃115💓‍", - "type": 3, - "api": "csp_MyPan115Guard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "Fake115Share", - "name": "💓115┃分享💓‍", - "type": 3, - "api": "csp_Fake115ShareGuard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "MyPan123", - "name": "💓我的┃123💓‍", - "type": 3, - "api": "csp_MyPan123Guard", - "searchable": 1, - "changeable": 0, - "timeout": 50, - "style": { - "type": "list" - } - }, - { - "key": "SoTySo", - "name": "🎠给力┃天逸🎠", - "type": 3, - "api": "csp_SoTySoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "SoBaiDuSo", - "name": "🎠给力┃百度🎠", - "type": 3, - "api": "csp_SoBaiDuSoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "SoHaiYin", - "name": "🎠海音┃综合🎠", - "type": 3, - "api": "csp_SoHaiYinGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "So97So", - "name": "🎠九七┃综合🎠", - "type": 3, - "api": "csp_So97SoGuard", - "searchable": 1, - "changeable": 0 - }, - { - "key": "push_agent", - "name": "推送", - "type": 3, - "api": "csp_PushGuard", - "searchable": 1, - "changeable": 0 - } - ], - "doh": [ - { - "name": "Google", - "url": "https://dns.google/dns-query", - "ips": [ - "8.8.4.4", - "8.8.8.8" - ] - }, - { - "name": "Cloudflare", - "url": "https://cloudflare-dns.com/dns-query", - "ips": [ - "1.1.1.1", - "1.0.0.1", - "2606:4700:4700::1111", - "2606:4700:4700::1001" - ] - }, - { - "name": "AdGuard", - "url": "https://dns.adguard.com/dns-query", - "ips": [ - "94.140.14.140", - "94.140.14.141" - ] - }, - { - "name": "DNSWatch", - "url": "https://resolver2.dns.watch/dns-query", - "ips": [ - "84.200.69.80", - "84.200.70.40" - ] - }, - { - "name": "Quad9", - "url": "https://dns.quad9.net/dns-quer", - "ips": [ - "9.9.9.9", - "149.112.112.112" - ] - } - ], - "rules": [ - { - "name": "proxy", - "hosts": [ - "hlsztemgsplive.miguvideo.com=hlsztemgsplive.188766.xyz", - "cache.ott.fifalive.itv.cmvideo.cn=fifalive.188766.xyz", - "iptv.huuc.edu.cn=huucv6.188766.xyz", - "raw.githubusercontent.com", - "googlevideo.com", - "cdn.v82u1l.com", - "cdn.iz8qkg.com", - "cdn.kin6c1.com", - "c.biggggg.com", - "c.olddddd.com", - "haiwaikan.com", - "www.histar.tv", - "youtube.com", - "uhibo.com", - ".*boku.*", - ".*nivod.*", - ".*ulivetv.*" - ] - }, - { - "name": "海外看", - "hosts": [ - "haiwaikan" - ], - "regex": [ - "10.0099", - "10.3333", - "16.0599", - "8.1748", - "12.33", - "10.85" - ] - }, - { - "name": "火山嗅探", - "hosts": [ - "huoshan.com" - ], - "regex": [ - "item_id=" - ] - }, - { - "name": "抖音嗅探", - "hosts": [ - "douyin.com" - ], - "regex": [ - "is_play_url=" - ] - }, - { - "name": "農民嗅探", - "hosts": [ - "toutiaovod.com" - ], - "regex": [ - "video/tos/cn" - ] - }, - { - "name": "新视觉嗅探", - "hosts": [ - "muzhi-video.bj.bcebos.com" - ], - "regex": [ - "202403/" - ] - }, - { - "name": "七新嗅探", - "hosts": [ - "api.52wyb.com" - ], - "regex": [ - "m3u8?pt=m3u8" - ] - }, - { - "name": "夜市點擊", - "hosts": [ - "yeslivetv.com" - ], - "script": [ - "document.getElementsByClassName('vjs-big-play-button')[0].click()" - ] - }, - { - "name": "毛驢點擊", - "hosts": [ - "www.maolvys.com" - ], - "script": [ - "document.getElementsByClassName('swal-button swal-button--confirm')[0].click()" - ] - } - ], - "ads": [ - "mozai.4gtv.tv", - "pv.vipwm.cc", - "static-mozai.4gtv.tv" - ], - "lives": [ - { - "name": "Kimentanm", - "type": 0, - "url": "https://ghfast.top/https://raw.githubusercontent.com/Kimentanm/aptv/master/m3u/iptv.m3u", - "playerType": 2 - }, - { - "name": "综合直播", - "type": 0, - "playerType": 2, - "url": "https://ghfast.top/https://raw.githubusercontent.com/develop202/migu_video/refs/heads/main/interface.txt", - "ua": "bingcha/1.1 (mianfeifenxiang) " - } - ], - "headers": [ - { - "host": "hlsztemgsplive.miguvideo.com", - "header": { - "User-Agent": "bingcha/1.1 (mianfeifenxiang) " - } - } - ] -} \ No newline at end of file diff --git a/tbapi2/oldwex/spider.jar b/tbapi2/oldwex/spider.jar deleted file mode 100644 index c52c164a..00000000 Binary files a/tbapi2/oldwex/spider.jar and /dev/null differ diff --git a/tbapi2/oldwex/txt/20260414181247-ae51abfbfe.txt b/tbapi2/oldwex/txt/20260414181247-ae51abfbfe.txt deleted file mode 100644 index 1926e507..00000000 --- a/tbapi2/oldwex/txt/20260414181247-ae51abfbfe.txt +++ /dev/null @@ -1 +0,0 @@ -{"hot_gaia":[{"key":"sort","name":"排序","value":[{"n":"热度","v":"recommend"},{"n":"最新","v":"time"},{"n":"评分","v":"rank"}]},{"key":"area","name":"地区","value":[{"n":"全部","v":"全部"},{"n":"华语","v":"华语"},{"n":"欧美","v":"欧美"},{"n":"韩国","v":"韩国"},{"n":"日本","v":"日本"}]}],"tv_hot":[{"key":"type","name":"分类","value":[{"n":"综合","v":"tv_hot"},{"n":"国产剧","v":"tv_domestic"},{"n":"欧美剧","v":"tv_american"},{"n":"日剧","v":"tv_japanese"},{"n":"韩剧","v":"tv_korean"},{"n":"动画","v":"tv_animation"}]}],"show_hot":[{"key":"type","name":"分类","value":[{"n":"综合","v":"show_hot"},{"n":"国内","v":"show_domestic"},{"n":"国外","v":"show_foreign"}]}],"movie":[{"key":"类型","name":"类型","value":[{"n":"全部类型","v":""},{"n":"喜剧","v":"喜剧"},{"n":"爱情","v":"爱情"},{"n":"动作","v":"动作"},{"n":"科幻","v":"科幻"},{"n":"动画","v":"动画"},{"n":"悬疑","v":"悬疑"},{"n":"犯罪","v":"犯罪"},{"n":"惊悚","v":"惊悚"},{"n":"冒险","v":"冒险"},{"n":"音乐","v":"音乐"},{"n":"历史","v":"历史"},{"n":"奇幻","v":"奇幻"},{"n":"恐怖","v":"恐怖"},{"n":"战争","v":"战争"},{"n":"传记","v":"传记"},{"n":"歌舞","v":"歌舞"},{"n":"武侠","v":"武侠"},{"n":"情色","v":"情色"},{"n":"灾难","v":"灾难"},{"n":"西部","v":"西部"},{"n":"纪录片","v":"纪录片"},{"n":"短片","v":"短片"}]},{"key":"地区","name":"地区","value":[{"n":"全部地区","v":""},{"n":"华语","v":"华语"},{"n":"欧美","v":"欧美"},{"n":"韩国","v":"韩国"},{"n":"日本","v":"日本"},{"n":"中国大陆","v":"中国大陆"},{"n":"美国","v":"美国"},{"n":"中国香港","v":"中国香港"},{"n":"中国台湾","v":"中国台湾"},{"n":"英国","v":"英国"},{"n":"法国","v":"法国"},{"n":"德国","v":"德国"},{"n":"意大利","v":"意大利"},{"n":"西班牙","v":"西班牙"},{"n":"印度","v":"印度"},{"n":"泰国","v":"泰国"},{"n":"俄罗斯","v":"俄罗斯"},{"n":"加拿大","v":"加拿大"},{"n":"澳大利亚","v":"澳大利亚"},{"n":"爱尔兰","v":"爱尔兰"},{"n":"瑞典","v":"瑞典"},{"n":"巴西","v":"巴西"},{"n":"丹麦","v":"丹麦"}]},{"key":"sort","name":"排序","value":[{"n":"近期热度","v":"T"},{"n":"首映时间","v":"R"},{"n":"高分优先","v":"S"}]},{"key":"年代","name":"年代","value":[{"n":"全部年代","v":""},{"n":"2026","v":"2026"},{"n":"2025","v":"2025"},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2010年代","v":"2010年代"},{"n":"2000年代","v":"2000年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"},{"n":"70年代","v":"70年代"},{"n":"60年代","v":"60年代"},{"n":"更早","v":"更早"}]}],"tv":[{"key":"类型","name":"类型","value":[{"n":"不限","v":""},{"n":"电视剧","v":"电视剧"},{"n":"综艺","v":"综艺"}]},{"key":"电视剧形式","name":"电视剧形式","value":[{"n":"不限","v":""},{"n":"喜剧","v":"喜剧"},{"n":"爱情","v":"爱情"},{"n":"悬疑","v":"悬疑"},{"n":"动画","v":"动画"},{"n":"武侠","v":"武侠"},{"n":"古装","v":"古装"},{"n":"家庭","v":"家庭"},{"n":"犯罪","v":"犯罪"},{"n":"科幻","v":"科幻"},{"n":"恐怖","v":"恐怖"},{"n":"历史","v":"历史"},{"n":"战争","v":"战争"},{"n":"动作","v":"动作"},{"n":"冒险","v":"冒险"},{"n":"传记","v":"传记"},{"n":"剧情","v":"剧情"},{"n":"奇幻","v":"奇幻"},{"n":"惊悚","v":"惊悚"},{"n":"灾难","v":"灾难"},{"n":"歌舞","v":"歌舞"},{"n":"音乐","v":"音乐"}]},{"key":"综艺形式","name":"综艺形式","value":[{"n":"不限","v":""},{"n":"真人秀","v":"真人秀"},{"n":"脱口秀","v":"脱口秀"},{"n":"音乐","v":"音乐"},{"n":"歌舞","v":"歌舞"}]},{"key":"地区","name":"地区","value":[{"n":"全部地区","v":""},{"n":"华语","v":"华语"},{"n":"欧美","v":"欧美"},{"n":"国外","v":"国外"},{"n":"韩国","v":"韩国"},{"n":"日本","v":"日本"},{"n":"中国大陆","v":"中国大陆"},{"n":"中国香港","v":"中国香港"},{"n":"美国","v":"美国"},{"n":"英国","v":"英国"},{"n":"泰国","v":"泰国"},{"n":"中国台湾","v":"中国台湾"},{"n":"意大利","v":"意大利"},{"n":"法国","v":"法国"},{"n":"德国","v":"德国"},{"n":"西班牙","v":"西班牙"},{"n":"俄罗斯","v":"俄罗斯"},{"n":"瑞典","v":"瑞典"},{"n":"巴西","v":"巴西"},{"n":"丹麦","v":"丹麦"},{"n":"印度","v":"印度"},{"n":"加拿大","v":"加拿大"},{"n":"爱尔兰","v":"爱尔兰"},{"n":"澳大利亚","v":"澳大利亚"}]},{"key":"sort","name":"排序","value":[{"n":"近期热度","v":"T"},{"n":"首播时间","v":"R"},{"n":"高分优先","v":"S"}]},{"key":"年代","name":"年代","value":[{"n":"全部","v":""},{"n":"2026","v":"2026"},{"n":"2025","v":"2025"},{"n":"2024","v":"2024"},{"n":"2023","v":"2023"},{"n":"2022","v":"2022"},{"n":"2021","v":"2021"},{"n":"2020","v":"2020"},{"n":"2019","v":"2019"},{"n":"2010年代","v":"2010年代"},{"n":"2000年代","v":"2000年代"},{"n":"90年代","v":"90年代"},{"n":"80年代","v":"80年代"},{"n":"70年代","v":"70年代"},{"n":"60年代","v":"60年代"},{"n":"更早","v":"更早"}]},{"key":"平台","name":"平台","value":[{"n":"全部","v":""},{"n":"腾讯视频","v":"腾讯视频"},{"n":"爱奇艺","v":"爱奇艺"},{"n":"优酷","v":"优酷"},{"n":"湖南卫视","v":"湖南卫视"},{"n":"Netflix","v":"Netflix"},{"n":"HBO","v":"HBO"},{"n":"BBC","v":"BBC"},{"n":"NHK","v":"NHK"},{"n":"CBS","v":"CBS"},{"n":"NBC","v":"NBC"},{"n":"tvN","v":"tvN"}]}],"rank_list_movie":[{"key":"榜单","name":"榜单","value":[{"n":"实时热门电影","v":"movie_real_time_hotest"},{"n":"一周口碑电影榜","v":"movie_weekly_best"},{"n":"豆瓣电影Top250","v":"movie_top250"}]}],"rank_list_tv":[{"key":"榜单","name":"榜单","value":[{"n":"实时热门电视","v":"tv_real_time_hotest"},{"n":"华语口碑剧集榜","v":"tv_chinese_best_weekly"},{"n":"全球口碑剧集榜","v":"tv_global_best_weekly"},{"n":"国内口碑综艺榜","v":"show_chinese_best_weekly"},{"n":"国外口碑综艺榜","v":"show_global_best_weekly"}]}]} \ No newline at end of file diff --git a/tbapi2/oldwex/txt/bilisong.txt b/tbapi2/oldwex/txt/bilisong.txt deleted file mode 100644 index d56f28f7..00000000 --- a/tbapi2/oldwex/txt/bilisong.txt +++ /dev/null @@ -1,702 +0,0 @@ -{ - "class": [ - { - "type_name": "演唱会筛选", - "type_id": "演唱会超清" - }, - { - "type_name": "粤语", - "type_id": "粤语歌曲超清" - }, - { - "type_name": "热榜", - "type_id": "2022年热们歌曲超清" - }, - { - "type_name": "抖音神曲", - "type_id": "抖音神曲超清" - }, - { - "type_name": "经典老歌", - "type_id": "经典老歌超清" - }, - { - "type_name": "DJ", - "type_id": "DJ歌曲超清" - }, - { - "type_name": "网红翻唱", - "type_id": "网红翻唱歌曲超清" - }, - { - "type_name": "韩国女团", - "type_id": "韩国女团演唱会超清" - } - ], - "filters": { - "演唱会超清": [ - { - "key": "order", - "name": "排序", - "value": [ - { - "n": "综合排序", - "v": "0" - }, - { - "n": "最多点击", - "v": "click" - }, - { - "n": "最新发布", - "v": "pubdate" - }, - { - "n": "最多弹幕", - "v": "dm" - }, - { - "n": "最多收藏", - "v": "stow" - } - ] - }, - { - "key": "tid", - "name": "分类", - "value": [ - { - "n": "全部", - "v": "演唱会超清" - }, - { - "n": "A阿杜", - "v": "阿杜演唱会超清" - }, - { - "n": "A阿黛尔", - "v": "阿黛尔演唱会超清" - }, - { - "n": "BBeyond", - "v": "Beyond演唱会超清" - }, - { - "n": "BBy2", - "v": "By2演唱会超清" - }, - { - "n": "BBIGBANG", - "v": "BIGBANG演唱会超清" - }, - { - "n": "B布兰妮", - "v": "布兰妮演唱会超清" - }, - { - "n": "B坂井泉水", - "v": "坂井泉水演唱会超清" - }, - { - "n": "C陈奕迅", - "v": "陈奕迅演唱会超清" - }, - { - "n": "C蔡依林", - "v": "蔡依林演唱会超清" - }, - { - "n": "C初音未来", - "v": "初音未来演唱会超清" - }, - { - "n": "C蔡健雅", - "v": "蔡健雅演唱会超清" - }, - { - "n": "C陈小春", - "v": "陈小春演唱会超清" - }, - { - "n": "C草蜢", - "v": "草蜢演唱会超清" - }, - { - "n": "C陈慧娴", - "v": "陈慧娴演唱会超清" - }, - { - "n": "C崔健", - "v": "崔健演唱会超清" - }, - { - "n": "C仓木麻衣", - "v": "仓木麻衣演唱会超清" - }, - { - "n": "D戴荃", - "v": "戴荃演唱会超清" - }, - { - "n": "D动力火车", - "v": "动力火车演唱会超清" - }, - { - "n": "D邓丽君", - "v": "邓丽君演唱会超清" - }, - { - "n": "D丁当", - "v": "丁当演唱会超清" - }, - { - "n": "D刀郎", - "v": "刀郎演唱会超清" - }, - { - "n": "D邓紫棋", - "v": "邓紫棋演唱会超清" - }, - { - "n": "D戴佩妮", - "v": "戴佩妮演唱会超清" - }, - { - "n": "D邓丽君", - "v": "邓丽君演唱会超清" - }, - { - "n": "F飞儿乐队", - "v": "飞儿乐队演唱会超清" - }, - { - "n": "F费玉清", - "v": "费玉清演唱会超清" - }, - { - "n": "F费翔", - "v": "费翔演唱会超清" - }, - { - "n": "F方大同", - "v": "方大同演唱会超清" - }, - { - "n": "F房东的猫", - "v": "房东的猫演唱会超清" - }, - { - "n": "F凤飞飞", - "v": "凤飞飞演唱会超清" - }, - { - "n": "F凤凰传奇", - "v": "凤凰传奇演唱会超清" - }, - { - "n": "G郭采洁", - "v": "郭采洁演唱会超清" - }, - { - "n": "G光良", - "v": "光良演唱会超清" - }, - { - "n": "G郭静", - "v": "郭静演唱会超清" - }, - { - "n": "G郭富城", - "v": "郭富城演唱会超清" - }, - { - "n": "H胡彦斌", - "v": "胡彦斌演唱会超清" - }, - { - "n": "H胡夏", - "v": "胡夏演唱会超清" - }, - { - "n": "H韩红", - "v": "韩红演唱会超清" - }, - { - "n": "H黄品源", - "v": "黄品源演唱会超清" - }, - { - "n": "H黄小琥", - "v": "黄小琥演唱会超清" - }, - { - "n": "H花儿乐队", - "v": "花儿乐队演唱会超清" - }, - { - "n": "H黄家强", - "v": "黄家强演唱会超清" - }, - { - "n": "H后街男孩", - "v": "后街男孩演唱会超清" - }, - { - "n": "J经典老歌", - "v": "经典老歌演唱会超清" - }, - { - "n": "J贾斯丁比伯", - "v": "贾斯丁比伯演唱会超清" - }, - { - "n": "J金池", - "v": "金池演唱会超清" - }, - { - "n": "J金志文", - "v": "金志文演唱会超清" - }, - { - "n": "J焦迈奇", - "v": "焦迈奇演唱会超清" - }, - { - "n": "K筷子兄弟", - "v": "筷子兄弟演唱会超清" - }, - { - "n": "L李玟", - "v": "李玟演唱会超清" - }, - { - "n": "L林忆莲", - "v": "林忆莲演唱会超清" - }, - { - "n": "L李克勤", - "v": "李克勤演唱会超清" - }, - { - "n": "L刘宪华", - "v": "刘宪华演唱会超清" - }, - { - "n": "L李圣杰", - "v": "李圣杰演唱会超清" - }, - { - "n": "L林宥嘉", - "v": "林宥嘉演唱会超清" - }, - { - "n": "L梁静茹", - "v": "梁静茹演唱会超清" - }, - { - "n": "L李健", - "v": "李健演唱会超清" - }, - { - "n": "L林俊杰", - "v": "林俊杰演唱会超清" - }, - { - "n": "L李玉刚", - "v": "李玉刚演唱会超清" - }, - { - "n": "L林志炫", - "v": "林志炫演唱会超清" - }, - { - "n": "L李荣浩", - "v": "李荣浩演唱会超清" - }, - { - "n": "L李宇春", - "v": "李宇春演唱会超清" - }, - { - "n": "L洛天依", - "v": "洛天依演唱会超清" - }, - { - "n": "L林子祥", - "v": "林子祥演唱会超清" - }, - { - "n": "L李宗盛", - "v": "李宗盛演唱会超清" - }, - { - "n": "L黎明", - "v": "黎明演唱会超清" - }, - { - "n": "L刘德华", - "v": "刘德华演唱会超清" - }, - { - "n": "L罗大佑", - "v": "罗大佑演唱会超清" - }, - { - "n": "L林肯公园", - "v": "林肯公园演唱会超清" - }, - { - "n": "LLadyGaga", - "v": "LadyGaga演唱会超清" - }, - { - "n": "L旅行团乐队", - "v": "旅行团乐队演唱会超清" - }, - { - "n": "M莫文蔚", - "v": "莫文蔚演唱会超清" - }, - { - "n": "M毛不易", - "v": "毛不易演唱会超清" - }, - { - "n": "M梅艳芳", - "v": "梅艳芳演唱会超清" - }, - { - "n": "M迈克尔杰克逊", - "v": "迈克尔杰克逊演唱会超清" - }, - { - "n": "N南拳妈妈", - "v": "南拳妈妈演唱会超清" - }, - { - "n": "P朴树", - "v": "朴树演唱会超清" - }, - { - "n": "Q齐秦", - "v": "齐秦演唱会超清" - }, - { - "n": "Q青鸟飞鱼", - "v": "青鸟飞鱼演唱会超清" - }, - { - "n": "R容祖儿", - "v": "容祖儿演唱会超清" - }, - { - "n": "R任贤齐", - "v": "任贤齐演唱会超清" - }, - { - "n": "S水木年华", - "v": "水木年华演唱会超清" - }, - { - "n": "S孙燕姿", - "v": "孙燕姿演唱会超清" - }, - { - "n": "S苏打绿", - "v": "苏打绿演唱会超清" - }, - { - "n": "SSHE", - "v": "SHE演唱会超清" - }, - { - "n": "S孙楠", - "v": "孙楠演唱会超清" - }, - { - "n": "T陶喆", - "v": "陶喆演唱会超清" - }, - { - "n": "T谭咏麟", - "v": "谭咏麟演唱会超清" - }, - { - "n": "T田馥甄", - "v": "田馥甄演唱会超清" - }, - { - "n": "T谭维维", - "v": "谭维维演唱会超清" - }, - { - "n": "T逃跑计划", - "v": "逃跑计划演唱会超清" - }, - { - "n": "T田震", - "v": "田震演唱会超清" - }, - { - "n": "T谭晶", - "v": "谭晶演唱会超清" - }, - { - "n": "T屠洪刚", - "v": "屠洪刚演唱会超清" - }, - { - "n": "T泰勒·斯威夫特", - "v": "泰勒·斯威夫特演唱会超清" - }, - { - "n": "W王力宏", - "v": "王力宏演唱会超清" - }, - { - "n": "W王杰", - "v": "王杰演唱会超清" - }, - { - "n": "W吴克群", - "v": "吴克群演唱会超清" - }, - { - "n": "W王心凌", - "v": "王心凌演唱会超清" - }, - { - "n": "W王靖雯", - "v": "好声音王靖雯演唱会超清" - }, - { - "n": "W汪峰", - "v": "汪峰演唱会超清" - }, - { - "n": "W伍佰", - "v": "伍佰演唱会超清" - }, - { - "n": "W王菲", - "v": "王菲演唱会超清" - }, - { - "n": "W五月天", - "v": "五月天演唱会超清" - }, - { - "n": "W汪苏泷", - "v": "汪苏泷演唱会超清" - }, - { - "n": "X徐佳莹", - "v": "徐佳莹演唱会超清" - }, - { - "n": "X弦子", - "v": "弦子演唱会超清" - }, - { - "n": "X萧亚轩", - "v": "萧亚轩演唱会超清" - }, - { - "n": "X许巍", - "v": "许巍演唱会超清" - }, - { - "n": "X薛之谦", - "v": "薛之谦演唱会超清" - }, - { - "n": "X许嵩", - "v": "许嵩演唱会超清" - }, - { - "n": "X小虎队", - "v": "小虎队演唱会超清" - }, - { - "n": "X萧敬腾", - "v": "萧敬腾演唱会超清" - }, - { - "n": "X谢霆锋", - "v": "谢霆锋演唱会超清" - }, - { - "n": "X徐小凤", - "v": "徐小凤演唱会超清" - }, - { - "n": "X信乐队", - "v": "信乐队演唱会超清" - }, - { - "n": "Y夜愿乐队", - "v": "夜愿乐队演唱会超清" - }, - { - "n": "Y羽泉", - "v": "羽泉演唱会超清" - }, - { - "n": "Y郁可唯", - "v": "郁可唯演唱会超清" - }, - { - "n": "Y叶倩文", - "v": "叶倩文演唱会超清" - }, - { - "n": "Y杨坤", - "v": "杨坤演唱会超清" - }, - { - "n": "Y庾澄庆", - "v": "庾澄庆演唱会超清" - }, - { - "n": "Y尤长靖", - "v": "尤长靖演唱会超清" - }, - { - "n": "Y易烊千玺", - "v": "易烊千玺演唱会超清" - }, - { - "n": "Y袁娅维", - "v": "袁娅维演唱会超清" - }, - { - "n": "Y杨丞琳", - "v": "杨丞琳演唱会超清" - }, - { - "n": "Y杨千嬅", - "v": "杨千嬅演唱会超清" - }, - { - "n": "Y杨宗纬", - "v": "杨宗纬演唱会超清" - }, - { - "n": "Z郑秀文", - "v": "郑秀文演唱会超清" - }, - { - "n": "Z周杰伦", - "v": "周杰伦演唱会超清" - }, - { - "n": "Z张学友", - "v": "张学友演唱会超清" - }, - { - "n": "Z张信哲", - "v": "张信哲演唱会超清" - }, - { - "n": "Z张宇", - "v": "张宇演唱会超清" - }, - { - "n": "Z周华健", - "v": "周华健演唱会超清" - }, - { - "n": "Z张韶涵", - "v": "张韶涵演唱会超清" - }, - { - "n": "Z周深", - "v": "周深演唱会超清" - }, - { - "n": "Z纵贯线", - "v": "纵贯线演唱会超清" - }, - { - "n": "Z赵雷", - "v": "赵雷演唱会超清" - }, - { - "n": "Z周传雄", - "v": "周传雄演唱会超清" - }, - { - "n": "Z张国荣", - "v": "张国荣演唱会超清" - }, - { - "n": "Z周慧敏", - "v": "周慧敏演唱会超清" - }, - { - "n": "Z张惠妹", - "v": "张惠妹演唱会超清" - }, - { - "n": "Z周笔畅", - "v": "周笔畅演唱会超清" - }, - { - "n": "Z郑中基", - "v": "郑中基演唱会超清" - }, - { - "n": "Z张艺兴", - "v": "张艺兴演唱会超清" - }, - { - "n": "Z张震岳", - "v": "张震岳演唱会超清" - }, - { - "n": "Z张雨生", - "v": "张雨生演唱会超清" - }, - { - "n": "Z郑智化", - "v": "郑智化演唱会超清" - }, - { - "n": "Z卓依婷", - "v": "卓依婷演唱会超清" - }, - { - "n": "Z中岛美雪", - "v": "中岛美雪演唱会超清" - } - ] - }, - { - "key": "duration", - "name": "时长", - "value": [ - { - "n": "全部", - "v": "0" - }, - { - "n": "60分钟以上", - "v": "4" - }, - { - "n": "30~60分钟", - "v": "3" - }, - { - "n": "10~30分钟", - "v": "2" - }, - { - "n": "10分钟以下", - "v": "1" - } - ] - } - ] - } -} \ No newline at end of file diff --git a/tbapi2/xiaosa/api.json b/tbapi2/xiaosa/api.json index e47c799e..b1acf0f3 100644 --- a/tbapi2/xiaosa/api.json +++ b/tbapi2/xiaosa/api.json @@ -68,23 +68,6 @@ "api": "csp_Hxq", "ext": "http://www.小不点.com/api/2026/fishhxq.php" }, - { - "key": "无极99", - "name": "无极 • APP", - "type": 3, - "api": "csp_App99", - "ext": { - "host": "http://111.170.140.70:19987/app/bn", - "LoginPath": "/app/log", - "version": "", - "appkey": "c403317c2a2946659b0bcbabdd5de43a", - "versionName": "1.0.1", - "name": "无极影视", - "package": "com.wujiys.app", - "buildNumber": "2001", - "buildSignature": "A0859BDC35AD3E81D4051E2A4678C77C62773EDB3423DDF1DEFF94CB331D398E" - } - }, { "key": "橙子99", "name": "橙子 • APP", diff --git a/tbapi2/xiaosa/spider.jar b/tbapi2/xiaosa/spider.jar index e583905d..dd8447a3 100644 Binary files a/tbapi2/xiaosa/spider.jar and b/tbapi2/xiaosa/spider.jar differ diff --git a/tbapi2/xiaosac/云盘/spider.jar b/tbapi2/xiaosac/云盘/spider.jar index e583905d..dd8447a3 100644 Binary files a/tbapi2/xiaosac/云盘/spider.jar and b/tbapi2/xiaosac/云盘/spider.jar differ diff --git a/tbapi2/xiaosac/动漫/spider.jar b/tbapi2/xiaosac/动漫/spider.jar index e583905d..dd8447a3 100644 Binary files a/tbapi2/xiaosac/动漫/spider.jar and b/tbapi2/xiaosac/动漫/spider.jar differ diff --git a/tbapi2/xiaosac/影视/api.json b/tbapi2/xiaosac/影视/api.json index 6ff19984..7c98ba27 100644 --- a/tbapi2/xiaosac/影视/api.json +++ b/tbapi2/xiaosac/影视/api.json @@ -68,23 +68,6 @@ "api": "csp_Hxq", "ext": "http://www.小不点.com/api/2026/fishhxq.php" }, - { - "key": "无极99", - "name": "无极 • APP", - "type": 3, - "api": "csp_App99", - "ext": { - "host": "http://111.170.140.70:19987/app/bn", - "LoginPath": "/app/log", - "version": "", - "appkey": "c403317c2a2946659b0bcbabdd5de43a", - "versionName": "1.0.1", - "name": "无极影视", - "package": "com.wujiys.app", - "buildNumber": "2001", - "buildSignature": "A0859BDC35AD3E81D4051E2A4678C77C62773EDB3423DDF1DEFF94CB331D398E" - } - }, { "key": "橙子99", "name": "橙子 • APP", diff --git a/tbapi2/xiaosac/影视/js/聚合短剧.js b/tbapi2/xiaosac/影视/js/聚合短剧.js new file mode 100644 index 00000000..f9b4180a --- /dev/null +++ b/tbapi2/xiaosac/影视/js/聚合短剧.js @@ -0,0 +1,567 @@ +/* +@header({ + searchable: 1, + filterable: 1, + quickSearch: 1, + title: '短剧聚合1[DRPY]', + author: 'Gemini', + '类型': '短剧', + lang: 'ds' +}) +*/ + +globalThis.aggConfig = { + keys: 'd3dGiJc651gSQ8w1', + charMap: { + '+': 'P', '/': 'X', '0': 'M', '1': 'U', '2': 'l', '3': 'E', '4': 'r', '5': 'Y', '6': 'W', '7': 'b', '8': 'd', '9': 'J', + 'A': '9', 'B': 's', 'C': 'a', 'D': 'I', 'E': '0', 'F': 'o', 'G': 'y', 'H': '_', 'I': 'H', 'J': 'G', 'K': 'i', 'L': 't', + 'M': 'g', 'N': 'N', 'O': 'A', 'P': '8', 'Q': 'F', 'R': 'k', 'S': '3', 'T': 'h', 'U': 'f', 'V': 'R', 'W': 'q', 'X': 'C', + 'Y': '4', 'Z': 'p', 'a': 'm', 'b': 'B', 'c': 'O', 'd': 'u', 'e': 'c', 'f': '6', 'g': 'K', 'h': 'x', 'i': '5', 'j': 'T', + 'k': '-', 'l': '2', 'm': 'z', 'n': 'S', 'o': 'Z', 'p': '1', 'q': 'V', 'r': 'v', 's': 'j', 't': 'Q', 'u': '7', 'v': 'D', + 'w': 'w', 'x': 'n', 'y': 'L', 'z': 'e' + }, + headers: { + default: { 'User-Agent': 'okhttp/3.12.11', 'content-type': 'application/json; charset=utf-8' } + }, + platform: { + 星芽: { host: 'https://app.whjzjx.cn', url1: '/cloud/v2/theater/home_page?theater_class_id', url2: '/v2/theater_parent/detail', search: '/v3/search', classes: '/cloud/v2/theater/classes', rankDetail: '/cloud/v1/first_level_ranking/detail', loginUrl: 'https://u.shytkjgs.com/user/v1/account/login' }, + 西饭: { host: 'https://xifan-api-cn.youlishipin.com', url1: '/xifan/drama/portalPage', url2: '/xifan/drama/getDuanjuInfo', search: '/xifan/search/getSearchList' }, + 七猫: { host: 'https://api-store.qmplaylet.com', url1: '/api/v1/playlet/index', url2: 'https://api-read.qmplaylet.com/player/api/v1/playlet/info', search: '/api/v1/playlet/search' }, + 围观: { host: 'https://api.drama.9ddm.com', url1: '/drama/home/shortVideoTags', url2: '/drama/home/shortVideoDetail', search: '/drama/home/search' }, + 河马: { host: 'https://www.kuaikaw.cn', search: '/seo/video/6007' } + }, + platformList: [ + { name: '七猫短剧', id: '七猫' }, + { name: '星芽短剧', id: '星芽' }, + { name: '西饭短剧', id: '西饭' }, + { name: '围观短剧', id: '围观' }, + { name: '河马短剧', id: '河马' } + ], + search: { limit: 30, timeout: 6000 } +}; + +// ==================== 工具辅助函数 ==================== +async function md5(str) { + return CryptoJS.MD5(str).toString(CryptoJS.enc.Hex).toLowerCase(); +} +function base64Encode(text) { + return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(text)); +} +function base64Decode(text) { + return CryptoJS.enc.Utf8.stringify(CryptoJS.enc.Base64.parse(text)); +} +function stripHtml(text) { + return String(text || '').replace(/<[^>]+>/g, '').replace(/\s+/g, ' ').trim(); +} +function joinTags(tags) { + if (Array.isArray(tags)) { + return tags.map(tag => { + if (!tag) return ''; + if (typeof tag === 'string') return tag; + return tag.name || tag.title || tag.label || tag.text || ''; + }).filter(Boolean).join(' '); + } + return String(tags || ''); +} +function buildSearchRemark(platform, episodeText = '', extra = '') { + const parts = [platform]; + const ep = String(episodeText || '').trim(); + if (ep) parts.push(/集|期|完结|更新/.test(ep) ? ep : `${ep}集`); + const suffix = String(extra || '').trim(); + return suffix ? `${parts.join('|')} ${suffix}` : parts.join('|'); +} +function parseNextData(html) { + try { + const match = String(html || '').match(/